From c5734d09f8260671eed7693ec448dde48b7947ed Mon Sep 17 00:00:00 2001 From: Daniil Wins Date: Thu, 5 Feb 2026 14:35:19 +0100 Subject: [PATCH 01/19] feat: added initial ui for violation summaries --- frontend/webEditor/src/index.ts | 2 + .../webEditor/src/violationUi/di.config.ts | 10 ++++ .../webEditor/src/violationUi/violationUi.css | 36 +++++++++++ .../webEditor/src/violationUi/violationUi.ts | 60 +++++++++++++++++++ 4 files changed, 108 insertions(+) create mode 100644 frontend/webEditor/src/violationUi/di.config.ts create mode 100644 frontend/webEditor/src/violationUi/violationUi.css create mode 100644 frontend/webEditor/src/violationUi/violationUi.ts diff --git a/frontend/webEditor/src/index.ts b/frontend/webEditor/src/index.ts index 17c67cc1..794450a2 100644 --- a/frontend/webEditor/src/index.ts +++ b/frontend/webEditor/src/index.ts @@ -26,6 +26,7 @@ import { assignmentModule } from "./assignment/di.config"; import { editorModeOverwritesModule } from "./editModeOverwrites/di.config"; import { loadingIndicatorModule } from "./loadingIndicator/di.config"; import { keyListenerModule } from "./keyListeners/di.config"; +import { violationUiModule } from "./violationUi/di.config"; const container = new Container(); @@ -55,6 +56,7 @@ container.load( editorModeOverwritesModule, loadingIndicatorModule, keyListenerModule, + violationUiModule, ); const startUpAgents = container.getAll(StartUpAgent); diff --git a/frontend/webEditor/src/violationUi/di.config.ts b/frontend/webEditor/src/violationUi/di.config.ts new file mode 100644 index 00000000..35428b2e --- /dev/null +++ b/frontend/webEditor/src/violationUi/di.config.ts @@ -0,0 +1,10 @@ +import { ContainerModule } from "inversify"; +import { TYPES } from "sprotty"; +import { ViolationUI } from "./violationUi"; +import { EDITOR_TYPES } from "../editorTypes"; + +export const violationUiModule = new ContainerModule((bind) => { + bind(ViolationUI).toSelf().inSingletonScope(); + bind(TYPES.IUIExtension).toService(ViolationUI); + bind(EDITOR_TYPES.DefaultUIElement).toService(ViolationUI); +}); diff --git a/frontend/webEditor/src/violationUi/violationUi.css b/frontend/webEditor/src/violationUi/violationUi.css new file mode 100644 index 00000000..15f48e07 --- /dev/null +++ b/frontend/webEditor/src/violationUi/violationUi.css @@ -0,0 +1,36 @@ +.violation-ui { + right: 20px; + bottom: 70px; + padding: 10px 10px; + + .violation-tabs { + display: flex; + border-bottom: 1px solid #ccc; + margin-bottom: 10px; + } + + .tab-btn { + flex: 1; + padding: 5px; + cursor: pointer; + border: none; + background: none; + font-size: 12px; + color: var(--sprotty-label-color); + } + + .tab-btn.active { + border-bottom: 2px solid #007acc; + font-weight: bold; + } + + .tab-pane { + display: none; + font-size: 13px; + padding: 5px; + } + + .tab-pane.active { + display: block; + } +} diff --git a/frontend/webEditor/src/violationUi/violationUi.ts b/frontend/webEditor/src/violationUi/violationUi.ts new file mode 100644 index 00000000..40963148 --- /dev/null +++ b/frontend/webEditor/src/violationUi/violationUi.ts @@ -0,0 +1,60 @@ +import { injectable } from "inversify"; +import "./violationUi.css"; +import { AccordionUiExtension } from "../accordionUiExtension"; + +@injectable() +export class ViolationUI extends AccordionUiExtension { + static readonly ID = "violation-ui"; + + constructor() { + super("left", "up"); + } + + id() { + return ViolationUI.ID; + } + + containerClass() { + return ViolationUI.ID; + } + + protected initializeHeaderContent(headerElement: HTMLElement) { + headerElement.innerText = "Violation Summary"; + } + + protected initializeHidableContent(contentElement: HTMLElement) { + contentElement.innerHTML = ` +
+ + +
+
+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore.

+
+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut enim ad minim veniam.

+
+
+ `; + + this.setupTabLogic(contentElement); + } + + private setupTabLogic(container: HTMLElement) { + const buttons = container.querySelectorAll(".tab-btn"); + const panes = container.querySelectorAll(".tab-pane"); + + buttons.forEach((btn) => { + btn.addEventListener("click", () => { + const target = btn.getAttribute("data-tab"); + + buttons.forEach((b) => b.classList.remove("active")); + panes.forEach((p) => p.classList.remove("active")); + + btn.classList.add("active"); + container.querySelector(`#${target}-summary`)?.classList.add("active"); + }); + }); + } +} From 5a62ceb8504f95323748f24a3586447ef0dac27a Mon Sep 17 00:00:00 2001 From: Daniil Wins Date: Thu, 5 Feb 2026 17:57:56 +0100 Subject: [PATCH 02/19] fix(ui): wrap long violation summaries --- .../webEditor/src/violationUi/violationUi.css | 74 +++++++++++++++++-- .../webEditor/src/violationUi/violationUi.ts | 35 ++++++++- 2 files changed, 102 insertions(+), 7 deletions(-) diff --git a/frontend/webEditor/src/violationUi/violationUi.css b/frontend/webEditor/src/violationUi/violationUi.css index 15f48e07..fd49c10f 100644 --- a/frontend/webEditor/src/violationUi/violationUi.css +++ b/frontend/webEditor/src/violationUi/violationUi.css @@ -3,6 +3,37 @@ bottom: 70px; padding: 10px 10px; + max-width: 30vw; + + .summary-text { + white-space: normal !important; + word-wrap: break-word; + overflow-wrap: break-word; + + max-height: 200px; + overflow-y: auto; + margin-top: 10px; + margin-bottom: 10px; + line-height: 1.4; + } + + .summary-text p { + margin: 0; + display: block; + width: 100%; + white-space: normal; + } + + .tab-pane { + display: none; + font-size: 13px; + max-width: 100%; + } + + .tab-pane.active { + display: block; + } + .violation-tabs { display: flex; border-bottom: 1px solid #ccc; @@ -24,13 +55,46 @@ font-weight: bold; } - .tab-pane { - display: none; - font-size: 13px; + #ai-api-key { + background-color: var(--color-background); + color: var(--color-foreground); + border: 1px solid var(--color-foreground); + border-radius: 6px; + } + + .api-key-container { + display: grid; + grid-template-columns: auto 1fr; + align-items: center; + gap: 10px; + margin-bottom: 15px; padding: 5px; + + label { + font-size: 11px; + font-weight: bold; + white-space: nowrap; + } + + input { + width: 100%; + padding: 4px 8px; + font-size: 12px; + border: 1px solid var(--color-foreground); + border-radius: 3px; + background: var(--sprotty-input-background, var(--color-background)); + color: var(--sprotty-label-color); + box-sizing: border-box; + } } - .tab-pane.active { - display: block; + .primary-btn { + background-color: var(--sprotty-button-background, #007acc); + color: var(--sprotty-button-foreground, #ffffff); + border: none; + padding: 6px 12px; + font-size: 12px; + border-radius: 4px; + cursor: pointer; } } diff --git a/frontend/webEditor/src/violationUi/violationUi.ts b/frontend/webEditor/src/violationUi/violationUi.ts index 40963148..1dfdd4fd 100644 --- a/frontend/webEditor/src/violationUi/violationUi.ts +++ b/frontend/webEditor/src/violationUi/violationUi.ts @@ -30,15 +30,46 @@ export class ViolationUI extends AccordionUiExtension {
-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore.

+
+

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

+
+
-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut enim ad minim veniam.

+
+ + +
+
+

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

+
+ +
+ +
`; this.setupTabLogic(contentElement); + this.setupGenerateLogic(contentElement); + } + + private setupGenerateLogic(container: HTMLElement) { + const generateBtn = container.querySelector("#generate-btn") as HTMLButtonElement; + + generateBtn.addEventListener("click", () => { + const activeTab = container.querySelector(".tab-btn.active")?.getAttribute("data-tab"); + + if (activeTab === "ai") { + // Hier Logik für AI Call + // const apiKey = (container.querySelector("#ai-api-key") as HTMLInputElement)?.value; + } else { + // Hier Logik für Simple Summary + } + }); } private setupTabLogic(container: HTMLElement) { From e2f9c900125aa07bb03848d6d866f38eb3022312 Mon Sep 17 00:00:00 2001 From: Daniil Wins Date: Mon, 9 Feb 2026 19:32:43 +0100 Subject: [PATCH 03/19] fix: added service for updating violation summary and populated with dummy violations --- .../org/dataflowanalysis/standalone/Main.java | 2 + .../webEditor/src/serialize/SavedDiagram.ts | 6 ++ frontend/webEditor/src/serialize/analyze.ts | 33 +++++++++- .../webEditor/src/violationUi/di.config.ts | 2 + .../src/violationUi/violationService.ts | 21 ++++++ .../webEditor/src/violationUi/violationUi.css | 64 ++++++++++++------ .../webEditor/src/violationUi/violationUi.ts | 66 +++++++++++++------ 7 files changed, 151 insertions(+), 43 deletions(-) create mode 100644 frontend/webEditor/src/violationUi/violationService.ts diff --git a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/Main.java b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/Main.java index 4e95de49..7eae8b20 100644 --- a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/Main.java +++ b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/Main.java @@ -1,11 +1,13 @@ package org.dataflowanalysis.standalone; import org.dataflowanalysis.standalone.websocket.WebSocketServerUtils; +import org.dataflowanalysis.analysis.DataFlowConfidentialityAnalysis; public class Main { public static void main(String[] args) { try { Thread webSocketServer = WebSocketServerUtils.startWebSocketServer(); + DataFlowConfidentialityAnalysis.logVersion(); while(webSocketServer.isAlive()); diff --git a/frontend/webEditor/src/serialize/SavedDiagram.ts b/frontend/webEditor/src/serialize/SavedDiagram.ts index 623b8752..36aea538 100644 --- a/frontend/webEditor/src/serialize/SavedDiagram.ts +++ b/frontend/webEditor/src/serialize/SavedDiagram.ts @@ -9,5 +9,11 @@ export interface SavedDiagram { constraints?: Constraint[]; mode?: EditorMode; version: number; + violations?: Violation[]; } export const CURRENT_VERSION = 1; + +export interface Violation { + constraint: string; // Der verletzte Constraint + violationCauseGraph: string[]; // Pfad der Verletzung +} diff --git a/frontend/webEditor/src/serialize/analyze.ts b/frontend/webEditor/src/serialize/analyze.ts index 6b949abe..165f4b7c 100644 --- a/frontend/webEditor/src/serialize/analyze.ts +++ b/frontend/webEditor/src/serialize/analyze.ts @@ -1,6 +1,6 @@ import { ActionDispatcher, CommandExecutionContext, ILogger, TYPES } from "sprotty"; import { FileData, LoadJsonCommand } from "./loadJson"; -import { CURRENT_VERSION, SavedDiagram } from "./SavedDiagram"; +import { CURRENT_VERSION, SavedDiagram, Violation } from "./SavedDiagram"; import { LabelTypeRegistry } from "../labels/LabelTypeRegistry"; import { SETTINGS } from "../settings/Settings"; import { FileName } from "../fileName/fileName"; @@ -10,6 +10,7 @@ import { EditorModeController } from "../settings/editorMode"; import { Action } from "sprotty-protocol"; import { ConstraintRegistry } from "../constraint/constraintRegistry"; import { LoadingIndicator } from "../loadingIndicator/loadingIndicator"; +import { ViolationService } from "../violationUi/violationService"; export namespace AnalyzeAction { export const KIND = "analyze"; @@ -31,6 +32,7 @@ export class AnalyzeCommand extends LoadJsonCommand { @inject(DfdWebSocket) private readonly dfdWebSocket: DfdWebSocket, @inject(TYPES.IActionDispatcher) actionDispatcher: ActionDispatcher, @inject(LoadingIndicator) loadingIndicator: LoadingIndicator, + @inject(ViolationService) private violationService: ViolationService, ) { super( logger, @@ -44,13 +46,38 @@ export class AnalyzeCommand extends LoadJsonCommand { } protected async getFile(context: CommandExecutionContext): Promise | undefined> { - const savedDiagram = { + const savedDiagram: SavedDiagram = { model: context.modelFactory.createSchema(context.root), labelTypes: this.labelTypeRegistry.getLabelTypes(), constraints: this.constraintRegistry.getConstraintList(), mode: this.editorModeController.get(), version: CURRENT_VERSION, }; - return await this.dfdWebSocket.requestDiagram("Json:" + JSON.stringify(savedDiagram)); + + const response = await this.dfdWebSocket.requestDiagram("Json:" + JSON.stringify(savedDiagram)); + + // Temporäre Dummy-Daten für die Verletzungen, um die Funktionalität der ViolationUI zu demonstrieren + if (response && response.content) { + const dummyViolations: Violation[] = [ + { + constraint: "Constraint A", + violationCauseGraph: ["Vertex_A", "Vertex_B"], + }, + { + constraint: "Constraint B", + violationCauseGraph: ["Vertex_C", "Vertex_D"], + }, + { + constraint: "Constraint C", + violationCauseGraph: ["Vertex_E", "Vertex_F"], + }, + ]; + + response.content.violations = dummyViolations; + + this.violationService.updateViolations(response.content.violations); + } + + return response; } } diff --git a/frontend/webEditor/src/violationUi/di.config.ts b/frontend/webEditor/src/violationUi/di.config.ts index 35428b2e..8dca8fb7 100644 --- a/frontend/webEditor/src/violationUi/di.config.ts +++ b/frontend/webEditor/src/violationUi/di.config.ts @@ -2,9 +2,11 @@ import { ContainerModule } from "inversify"; import { TYPES } from "sprotty"; import { ViolationUI } from "./violationUi"; import { EDITOR_TYPES } from "../editorTypes"; +import { ViolationService } from "./violationService"; export const violationUiModule = new ContainerModule((bind) => { bind(ViolationUI).toSelf().inSingletonScope(); bind(TYPES.IUIExtension).toService(ViolationUI); bind(EDITOR_TYPES.DefaultUIElement).toService(ViolationUI); + bind(ViolationService).toSelf().inSingletonScope(); }); diff --git a/frontend/webEditor/src/violationUi/violationService.ts b/frontend/webEditor/src/violationUi/violationService.ts new file mode 100644 index 00000000..4b8c878a --- /dev/null +++ b/frontend/webEditor/src/violationUi/violationService.ts @@ -0,0 +1,21 @@ +import { injectable } from "inversify"; +import { Violation } from "./SavedDiagram"; + +@injectable() +export class ViolationService { + private violations: Violation[] = []; + private listeners: ((violations: Violation[]) => void)[] = []; + + updateViolations(newViolations: Violation[]) { + this.violations = newViolations; + this.listeners.forEach((callback) => callback(this.violations)); + } + + onViolationsChanged(callback: (violations: Violation[]) => void) { + this.listeners.push(callback); + } + + getViolations() { + return this.violations; + } +} diff --git a/frontend/webEditor/src/violationUi/violationUi.css b/frontend/webEditor/src/violationUi/violationUi.css index fd49c10f..03878114 100644 --- a/frontend/webEditor/src/violationUi/violationUi.css +++ b/frontend/webEditor/src/violationUi/violationUi.css @@ -5,25 +5,6 @@ max-width: 30vw; - .summary-text { - white-space: normal !important; - word-wrap: break-word; - overflow-wrap: break-word; - - max-height: 200px; - overflow-y: auto; - margin-top: 10px; - margin-bottom: 10px; - line-height: 1.4; - } - - .summary-text p { - margin: 0; - display: block; - width: 100%; - white-space: normal; - } - .tab-pane { display: none; font-size: 13px; @@ -36,7 +17,6 @@ .violation-tabs { display: flex; - border-bottom: 1px solid #ccc; margin-bottom: 10px; } @@ -88,7 +68,13 @@ } } - .primary-btn { + .button-container { + display: flex; + justify-content: flex-end; + margin-bottom: 20px; + } + + .generate-btn { background-color: var(--sprotty-button-background, #007acc); color: var(--sprotty-button-foreground, #ffffff); border: none; @@ -97,4 +83,40 @@ border-radius: 4px; cursor: pointer; } + + .summary-text { + width: 100%; + display: block; + white-space: normal; + word-wrap: break-word; + overflow-wrap: anywhere; + max-height: 250px; + overflow-y: auto; + } + + .summary-text p { + margin: 0; + display: block; + width: 100%; + white-space: normal; + } + + .status-info { + display: block; + width: 100%; + color: #636e72; + font-style: italic; + font-size: 0.9em; + line-height: 1.4; + text-align: center; + padding: 20px 10px; + box-sizing: border-box; + margin: 0 auto; + } + + .violation-item { + padding: 8px 0; + border-bottom: 1px solid rgba(255, 255, 255, 0.1); + text-align: left; /* Die Items selbst wieder linksbündig */ + } } diff --git a/frontend/webEditor/src/violationUi/violationUi.ts b/frontend/webEditor/src/violationUi/violationUi.ts index 1dfdd4fd..aeb54e9b 100644 --- a/frontend/webEditor/src/violationUi/violationUi.ts +++ b/frontend/webEditor/src/violationUi/violationUi.ts @@ -1,12 +1,14 @@ -import { injectable } from "inversify"; +import { injectable, inject } from "inversify"; +import { ViolationService } from "./violationService"; import "./violationUi.css"; import { AccordionUiExtension } from "../accordionUiExtension"; +import { Violation } from "../serialize/SavedDiagram"; @injectable() export class ViolationUI extends AccordionUiExtension { static readonly ID = "violation-ui"; - constructor() { + constructor(@inject(ViolationService) private violationService: ViolationService) { super("left", "up"); } @@ -31,28 +33,35 @@ export class ViolationUI extends AccordionUiExtension {
-

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

+

+ No violation data found. Run a Analysis first. +

+
+

+ No violation data found. Run a Analysis first, then enter your API key to generate an AI summary. +

+
-
-

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

+
+
- -
- -
`; + this.violationService.onViolationsChanged((violations) => { + this.updateSimpleTab(contentElement, violations); + }); + this.setupTabLogic(contentElement); this.setupGenerateLogic(contentElement); } @@ -61,14 +70,7 @@ export class ViolationUI extends AccordionUiExtension { const generateBtn = container.querySelector("#generate-btn") as HTMLButtonElement; generateBtn.addEventListener("click", () => { - const activeTab = container.querySelector(".tab-btn.active")?.getAttribute("data-tab"); - - if (activeTab === "ai") { - // Hier Logik für AI Call - // const apiKey = (container.querySelector("#ai-api-key") as HTMLInputElement)?.value; - } else { - // Hier Logik für Simple Summary - } + // Hier Logik für AI Call }); } @@ -88,4 +90,30 @@ export class ViolationUI extends AccordionUiExtension { }); }); } + + private updateSimpleTab(container: HTMLElement, violations: Violation[]) { + const simplePane = container.querySelector("#simple-summary .summary-text"); + if (!simplePane) return; + + if (violations.length === 0) { + simplePane.innerHTML = `

No violations found. Everything looks good!

`; + return; + } + + const listItems = violations + .map( + (v) => ` +
+ Violated constraint: ${v.constraint}
+ Flow of violation cause : ${v.violationCauseGraph.join(", ")} +
+ `, + ) + .join(""); + + simplePane.innerHTML = ` +
Found ${violations.length} issues:
+
${listItems}
+ `; + } } From cead1ea5126ed350b45aa3e638be84c4a8dbcb83 Mon Sep 17 00:00:00 2001 From: Daniil Wins Date: Mon, 9 Feb 2026 19:39:30 +0100 Subject: [PATCH 04/19] fix: listen to localhost's websocket --- frontend/webEditor/src/webSocket/webSocket.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/webEditor/src/webSocket/webSocket.ts b/frontend/webEditor/src/webSocket/webSocket.ts index 8811c528..2fc4e5d1 100644 --- a/frontend/webEditor/src/webSocket/webSocket.ts +++ b/frontend/webEditor/src/webSocket/webSocket.ts @@ -10,7 +10,7 @@ export class DfdWebSocket { resolve?: (v: string) => void; reject?: (e: Error) => void; } = {}; - private static readonly WS_URL = "wss://websocket.dataflowanalysis.org/events/"; + private static readonly WS_URL = "ws://localhost:3000/events/"; constructor( @inject(TYPES.ILogger) private readonly logger: ILogger, From aa95fff08d1259413e3c4309c87649d6723dc46e Mon Sep 17 00:00:00 2001 From: Daniil Wins Date: Tue, 10 Feb 2026 02:50:21 +0100 Subject: [PATCH 05/19] feat: ui now shows real violation summaries under "simple"-tab --- .../standalone/analysis/Converter.java | 7 +++--- frontend/webEditor/src/serialize/analyze.ts | 24 ++++--------------- 2 files changed, 8 insertions(+), 23 deletions(-) diff --git a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/analysis/Converter.java b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/analysis/Converter.java index 76f3c130..026566d0 100644 --- a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/analysis/Converter.java +++ b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/analysis/Converter.java @@ -89,7 +89,7 @@ public static WebEditorDfd analyzeAnnotate(WebEditorDfd webEditorDfd) { dfdConverter.setConstraints(constraints); } var newJson = dfdConverter.convert(dd).getModel(); - + for (var child : newJson.model().children()) { if (child.type().startsWith("node") && child.annotations() != null) { var oldNode = webEditorDfd.model().children().stream().filter(node -> node.id().equals(child.id())).findAny().orElseThrow(); @@ -98,8 +98,9 @@ public static WebEditorDfd analyzeAnnotate(WebEditorDfd webEditorDfd) { oldNode.annotations().removeAll(annotationsToRemove); oldNode.annotations().addAll(child.annotations()); } - } - return webEditorDfd; + } + + return webEditorDfd.withViolations(newJson.violations()); } /** diff --git a/frontend/webEditor/src/serialize/analyze.ts b/frontend/webEditor/src/serialize/analyze.ts index 165f4b7c..951f0264 100644 --- a/frontend/webEditor/src/serialize/analyze.ts +++ b/frontend/webEditor/src/serialize/analyze.ts @@ -1,6 +1,6 @@ import { ActionDispatcher, CommandExecutionContext, ILogger, TYPES } from "sprotty"; import { FileData, LoadJsonCommand } from "./loadJson"; -import { CURRENT_VERSION, SavedDiagram, Violation } from "./SavedDiagram"; +import { CURRENT_VERSION, SavedDiagram } from "./SavedDiagram"; import { LabelTypeRegistry } from "../labels/LabelTypeRegistry"; import { SETTINGS } from "../settings/Settings"; import { FileName } from "../fileName/fileName"; @@ -56,26 +56,10 @@ export class AnalyzeCommand extends LoadJsonCommand { const response = await this.dfdWebSocket.requestDiagram("Json:" + JSON.stringify(savedDiagram)); - // Temporäre Dummy-Daten für die Verletzungen, um die Funktionalität der ViolationUI zu demonstrieren if (response && response.content) { - const dummyViolations: Violation[] = [ - { - constraint: "Constraint A", - violationCauseGraph: ["Vertex_A", "Vertex_B"], - }, - { - constraint: "Constraint B", - violationCauseGraph: ["Vertex_C", "Vertex_D"], - }, - { - constraint: "Constraint C", - violationCauseGraph: ["Vertex_E", "Vertex_F"], - }, - ]; - - response.content.violations = dummyViolations; - - this.violationService.updateViolations(response.content.violations); + const violations = response.content.violations || []; + this.violationService.updateViolations(violations); + response.content.violations = violations; } return response; From 5368ad9b6c91414ad93d488f41bb38bd8eb33a49 Mon Sep 17 00:00:00 2001 From: Daniil Wins Date: Tue, 10 Feb 2026 02:52:06 +0100 Subject: [PATCH 06/19] fix: update classpath to contain local plugins --- .../.classpath | 47 ++++++++++++++----- 1 file changed, 36 insertions(+), 11 deletions(-) diff --git a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/.classpath b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/.classpath index cef1abac..998a9737 100644 --- a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/.classpath +++ b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/.classpath @@ -1,11 +1,36 @@ - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 0c4087a2ade4b238222af521037e3d6e69d79513 Mon Sep 17 00:00:00 2001 From: Daniil Wins Date: Mon, 23 Feb 2026 22:08:55 +0100 Subject: [PATCH 07/19] fix: add second diagram and use as new default diagram --- .../webEditor/src/diagrams/dacDiagram.json | 883 ++++++++++++++++++ .../shopDiagram.json} | 0 .../src/serialize/loadDefaultDiagram.ts | 18 +- .../src/violationUi/violationService.ts | 2 +- 4 files changed, 899 insertions(+), 4 deletions(-) create mode 100644 frontend/webEditor/src/diagrams/dacDiagram.json rename frontend/webEditor/src/{serialize/defaultDiagram.json => diagrams/shopDiagram.json} (100%) diff --git a/frontend/webEditor/src/diagrams/dacDiagram.json b/frontend/webEditor/src/diagrams/dacDiagram.json new file mode 100644 index 00000000..19f4fe7a --- /dev/null +++ b/frontend/webEditor/src/diagrams/dacDiagram.json @@ -0,0 +1,883 @@ +{ + "model": { + "canvasBounds": { + "x": 0, + "y": 0, + "width": 2333.75, + "height": 1168.75 + }, + "scroll": { + "x": -105.89197860962565, + "y": -63 + }, + "zoom": 3.0837730870712403, + "position": { + "x": 0, + "y": 0 + }, + "size": { + "width": -1, + "height": -1 + }, + "features": {}, + "type": "graph", + "id": "root", + "children": [ + { + "position": { + "x": 222, + "y": 75 + }, + "size": { + "width": 71, + "height": 42 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "Mother", + "labels": [ + { + "labelTypeId": "vljvh", + "labelTypeValueId": "z2vuaa" + } + ], + "ports": [ + { + "position": { + "x": -3.5, + "y": 17.5 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "features": {}, + "id": "6bvsh7", + "type": "port:dfd-input", + "children": [] + }, + { + "position": { + "x": 67.5, + "y": 17.5 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "behavior": "set TraversedNodes.mother", + "features": {}, + "id": "pzv6hg", + "type": "port:dfd-output", + "children": [] + } + ], + "hideLabels": false, + "minimumWidth": 50, + "features": {}, + "id": "3lqxlo", + "type": "node:input-output", + "children": [] + }, + { + "position": { + "x": 226.5, + "y": 199 + }, + "size": { + "width": 62, + "height": 42 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "Dad", + "labels": [ + { + "labelTypeId": "vljvh", + "labelTypeValueId": "oqq2r" + } + ], + "ports": [ + { + "position": { + "x": -3.5, + "y": 17.5 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "features": {}, + "id": "rva68j", + "type": "port:dfd-input", + "children": [] + }, + { + "position": { + "x": 58.5, + "y": 17.5 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "behavior": "forward picture\nset TraversedNodes.dad", + "features": {}, + "id": "f6wz2q", + "type": "port:dfd-output", + "children": [] + } + ], + "hideLabels": false, + "minimumWidth": 50, + "features": {}, + "id": "wocqg", + "type": "node:input-output", + "children": [] + }, + { + "position": { + "x": 211, + "y": 137 + }, + "size": { + "width": 63, + "height": 42 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "Aunt", + "labels": [ + { + "labelTypeId": "vljvh", + "labelTypeValueId": "vb0xw" + } + ], + "ports": [ + { + "position": { + "x": -3.5, + "y": 17.5 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "features": {}, + "id": "j6a32", + "type": "port:dfd-input", + "children": [] + } + ], + "hideLabels": false, + "minimumWidth": 50, + "features": {}, + "id": "mhu9ma", + "type": "node:input-output", + "children": [] + }, + { + "position": { + "x": 570, + "y": 99.41666666666666 + }, + "size": { + "width": 125, + "height": 78 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "Family Pictures", + "labels": [ + { + "labelTypeId": "9jr84l", + "labelTypeValueId": "01mazd" + }, + { + "labelTypeId": "6drw8l", + "labelTypeValueId": "dhfohg" + }, + { + "labelTypeId": "6drw8l", + "labelTypeValueId": "qsj85" + }, + { + "labelTypeId": "6drw8l", + "labelTypeValueId": "7p1lcu" + } + ], + "ports": [ + { + "position": { + "x": -3.5, + "y": 49.66666666666667 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "features": {}, + "id": "efr68k", + "type": "port:dfd-input", + "children": [] + }, + { + "position": { + "x": -3.5, + "y": 21.333333333333336 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "behavior": "forward picture\nset TraversedNodes.pictureStorage\nset Read.Aunt", + "features": {}, + "id": "l7yqhg", + "type": "port:dfd-output", + "children": [] + } + ], + "hideLabels": false, + "minimumWidth": 50, + "features": {}, + "id": "050esr", + "type": "node:storage", + "children": [] + }, + { + "position": { + "x": 211, + "y": 12 + }, + "size": { + "width": 100, + "height": 42 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "Indexing Bot", + "labels": [ + { + "labelTypeId": "vljvh", + "labelTypeValueId": "1cnzie" + } + ], + "ports": [ + { + "position": { + "x": -3.5, + "y": 17.5 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "features": {}, + "id": "h5c7l", + "type": "port:dfd-input", + "children": [] + } + ], + "hideLabels": false, + "minimumWidth": 50, + "features": {}, + "id": "fagty", + "type": "node:input-output", + "children": [] + }, + { + "position": { + "x": 12, + "y": 78 + }, + "size": { + "width": 105, + "height": 36 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "Read Pictures", + "labels": [], + "ports": [ + { + "position": { + "x": 101.5, + "y": 7.333333333333332 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "features": {}, + "id": "hmhlg5", + "type": "port:dfd-input", + "children": [] + }, + { + "position": { + "x": 101.5, + "y": 14.499999999999998 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "behavior": "forward picture\nset TraversedNodes.readPicture", + "features": {}, + "id": "9fv3si", + "type": "port:dfd-output", + "children": [] + }, + { + "position": { + "x": 101.5, + "y": 21.666666666666664 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "behavior": "forward picture\nset TraversedNodes.readPicture", + "features": {}, + "id": "b4g3ml", + "type": "port:dfd-output", + "children": [] + }, + { + "position": { + "x": 101.5, + "y": 28.83333333333333 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "behavior": "forward picture\nset TraversedNodes.readPicture", + "features": {}, + "id": "tj9ox", + "type": "port:dfd-output", + "children": [] + }, + { + "position": { + "x": 101.5, + "y": 0.16666666666666607 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "behavior": "forward picture\nset TraversedNodes.readPicture", + "features": {}, + "id": "j4hq8ov", + "type": "port:dfd-output", + "children": [] + } + ], + "hideLabels": false, + "minimumWidth": 50, + "features": {}, + "id": "2ksl0i", + "type": "node:function", + "children": [] + }, + { + "routingPoints": [ + { + "x": 563, + "y": 124.25 + }, + { + "x": 543, + "y": 124.25 + }, + { + "x": 543, + "y": 64 + }, + { + "x": 154, + "y": 64 + }, + { + "x": 154, + "y": 88.83333333333333 + }, + { + "x": 124, + "y": 88.83333333333333 + } + ], + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "picture", + "features": {}, + "id": "xw3tf", + "type": "edge:arrow", + "sourceId": "l7yqhg", + "targetId": "hmhlg5", + "labels": null, + "ports": null, + "children": [] + }, + { + "routingPoints": [ + { + "x": 124, + "y": 96 + }, + { + "x": 215, + "y": 96 + } + ], + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "picture", + "features": {}, + "id": "wr13pw", + "type": "edge:arrow", + "sourceId": "9fv3si", + "targetId": "6bvsh7", + "labels": null, + "ports": null, + "children": [] + }, + { + "routingPoints": [ + { + "x": 124, + "y": 103.16666666666666 + }, + { + "x": 154, + "y": 103.16666666666666 + }, + { + "x": 154, + "y": 158 + }, + { + "x": 204, + "y": 158 + } + ], + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "picture", + "features": {}, + "id": "osynnp", + "type": "edge:arrow", + "sourceId": "b4g3ml", + "targetId": "j6a32", + "labels": null, + "ports": null, + "children": [] + }, + { + "routingPoints": [ + { + "x": 124, + "y": 110.33333333333333 + }, + { + "x": 144, + "y": 110.33333333333333 + }, + { + "x": 144, + "y": 220 + }, + { + "x": 219.5, + "y": 220 + } + ], + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "picture", + "features": {}, + "id": "ymvkcs", + "type": "edge:arrow", + "sourceId": "tj9ox", + "targetId": "rva68j", + "labels": null, + "ports": null, + "children": [] + }, + { + "routingPoints": [ + { + "x": 124, + "y": 81.66666666666667 + }, + { + "x": 144, + "y": 81.66666666666667 + }, + { + "x": 144, + "y": 33 + }, + { + "x": 204, + "y": 33 + } + ], + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "picture", + "features": {}, + "id": "ryd2n", + "type": "edge:arrow", + "sourceId": "j4hq8ov", + "targetId": "h5c7l", + "labels": null, + "ports": null, + "children": [] + }, + { + "position": { + "x": 388, + "y": 140 + }, + "size": { + "width": 98, + "height": 36 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "Add Pictures", + "labels": [], + "ports": [ + { + "position": { + "x": 94.5, + "y": 14.5 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "behavior": "forward mother_picture\nset TraversedNodes.addPicture", + "features": {}, + "id": "i75rub", + "type": "port:dfd-output", + "children": [] + }, + { + "position": { + "x": -3.5, + "y": 21.666666666666668 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "features": {}, + "id": "q9uoh2", + "type": "port:dfd-input", + "children": [] + }, + { + "position": { + "x": -3.5, + "y": 7.333333333333334 + }, + "size": { + "width": 7, + "height": 7 + }, + "strokeWidth": 0, + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "features": {}, + "id": "y7wy2c", + "type": "port:dfd-input", + "children": [] + } + ], + "hideLabels": false, + "minimumWidth": 50, + "features": {}, + "id": "d2erj", + "type": "node:function", + "children": [] + }, + { + "routingPoints": [ + { + "x": 493, + "y": 158 + }, + { + "x": 543, + "y": 158 + }, + { + "x": 543, + "y": 152.58333333333331 + }, + { + "x": 563, + "y": 152.58333333333331 + } + ], + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "picture", + "features": {}, + "id": "c9na5t", + "type": "edge:arrow", + "sourceId": "i75rub", + "targetId": "efr68k", + "labels": null, + "ports": null, + "children": [] + }, + { + "routingPoints": [ + { + "x": 295.5, + "y": 220 + }, + { + "x": 361, + "y": 220 + }, + { + "x": 361, + "y": 165.16666666666666 + }, + { + "x": 381, + "y": 165.16666666666666 + } + ], + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "dad_picture", + "features": {}, + "id": "pd8t5y", + "type": "edge:arrow", + "sourceId": "f6wz2q", + "targetId": "q9uoh2", + "labels": null, + "ports": null, + "children": [] + }, + { + "routingPoints": [ + { + "x": 300, + "y": 96 + }, + { + "x": 361, + "y": 96 + }, + { + "x": 361, + "y": 150.83333333333334 + }, + { + "x": 381, + "y": 150.83333333333334 + } + ], + "selected": false, + "hoverFeedback": false, + "opacity": 1, + "text": "mother_picture", + "features": {}, + "id": "ekx5wq", + "type": "edge:arrow", + "sourceId": "pzv6hg", + "targetId": "y7wy2c", + "labels": null, + "ports": null, + "children": [] + } + ] + }, + "labelTypes": [ + { + "id": "vljvh", + "name": "Identity", + "values": [ + { + "id": "z2vuaa", + "text": "Mother" + }, + { + "id": "oqq2r", + "text": "Dad" + }, + { + "id": "vb0xw", + "text": "Aunt" + }, + { + "id": "1cnzie", + "text": "IndexingBot" + } + ] + }, + { + "id": "6drw8l", + "name": "Read", + "values": [ + { + "id": "7p1lcu", + "text": "Mother" + }, + { + "id": "qsj85", + "text": "Dad" + }, + { + "id": "dhfohg", + "text": "Aunt" + }, + { + "id": "e8kf57", + "text": "IndexingBot" + } + ] + }, + { + "id": "9jr84l", + "name": "Owner", + "values": [ + { + "id": "01mazd", + "text": "Mother" + } + ] + }, + { + "id": "4qmig", + "name": "TraversedNodes", + "values": [ + { + "id": "6p4cbg", + "text": "addPicture" + }, + { + "id": "igu1hs", + "text": "pictureStorage" + }, + { + "id": "yqu7nt", + "text": "readPicture" + }, + { + "id": "huqgc6", + "text": "mother" + }, + { + "id": "as8h9i", + "text": "dad" + }, + { + "id": "0noedq", + "text": "aunt" + }, + { + "id": "33ryia", + "text": "indexingBot" + } + ] + } + ], + "constraints": [ + { + "name": "Isolation", + "constraint": "data !Read.IndexingBot neverFlows vertex Identity.IndexingBot" + } + ], + "mode": "edit", + "version": 1 +} diff --git a/frontend/webEditor/src/serialize/defaultDiagram.json b/frontend/webEditor/src/diagrams/shopDiagram.json similarity index 100% rename from frontend/webEditor/src/serialize/defaultDiagram.json rename to frontend/webEditor/src/diagrams/shopDiagram.json diff --git a/frontend/webEditor/src/serialize/loadDefaultDiagram.ts b/frontend/webEditor/src/serialize/loadDefaultDiagram.ts index 3e5c889b..83672cda 100644 --- a/frontend/webEditor/src/serialize/loadDefaultDiagram.ts +++ b/frontend/webEditor/src/serialize/loadDefaultDiagram.ts @@ -1,5 +1,6 @@ import { FileData, LoadJsonCommand } from "./loadJson"; -import defaultDiagram from "./defaultDiagram.json"; +import shopDiagram from "../diagrams/shopDiagram.json"; +import dacDiagram from "../diagrams/dacDiagram.json"; import { SavedDiagram } from "./SavedDiagram"; import { Action } from "sprotty-protocol"; import { inject } from "inversify"; @@ -44,9 +45,20 @@ export class LoadDefaultDiagramCommand extends LoadJsonCommand { } protected async getFile(): Promise | undefined> { + return this.loadDAC(); + } + + protected async loadOnlineShop() { + return { + fileName: "online-shop", + content: shopDiagram as SavedDiagram, + }; + } + + protected async loadDAC() { return { - fileName: "diagram.json", - content: defaultDiagram as SavedDiagram, + fileName: "dac", + content: dacDiagram as SavedDiagram, }; } } diff --git a/frontend/webEditor/src/violationUi/violationService.ts b/frontend/webEditor/src/violationUi/violationService.ts index 4b8c878a..83f4e605 100644 --- a/frontend/webEditor/src/violationUi/violationService.ts +++ b/frontend/webEditor/src/violationUi/violationService.ts @@ -1,5 +1,5 @@ import { injectable } from "inversify"; -import { Violation } from "./SavedDiagram"; +import { Violation } from "../serialize/SavedDiagram"; @injectable() export class ViolationService { From f0dfba0238eafcdc3d0a1cac3cd1df70552ad19e Mon Sep 17 00:00:00 2001 From: Daniil Wins Date: Mon, 23 Feb 2026 22:29:50 +0100 Subject: [PATCH 08/19] added build files for easy deploy on server --- deploy/dac/assets/codicon-BYm2YbZ6.ttf | Bin 0 -> 123192 bytes deploy/dac/assets/codicon-DCmgc-ay.ttf | Bin 0 -> 80340 bytes .../dac/assets/fa-brands-400-BfBXV7Mm.woff2 | Bin 0 -> 101224 bytes .../dac/assets/fa-regular-400-BVHPE7da.woff2 | Bin 0 -> 18988 bytes deploy/dac/assets/fa-solid-900-8GirhLYJ.woff2 | Bin 0 -> 113152 bytes deploy/dac/assets/index-CX3bR72r.css | 1 + deploy/dac/assets/index-jxDt6WCR.js | 120 ++++ deploy/dac/assets/monaco-editor-B8Nwu8CH.css | 1 + deploy/dac/assets/monaco-editor-BSmz0_Ko.js | 676 ++++++++++++++++++ deploy/dac/index.html | 21 + .../online-shop/assets/codicon-BYm2YbZ6.ttf | Bin 0 -> 123192 bytes .../online-shop/assets/codicon-DCmgc-ay.ttf | Bin 0 -> 80340 bytes .../assets/fa-brands-400-BfBXV7Mm.woff2 | Bin 0 -> 101224 bytes .../assets/fa-regular-400-BVHPE7da.woff2 | Bin 0 -> 18988 bytes .../assets/fa-solid-900-8GirhLYJ.woff2 | Bin 0 -> 113152 bytes deploy/online-shop/assets/index-BshKduTm.js | 120 ++++ deploy/online-shop/assets/index-CX3bR72r.css | 1 + .../assets/monaco-editor-B8Nwu8CH.css | 1 + .../assets/monaco-editor-BSmz0_Ko.js | 676 ++++++++++++++++++ deploy/online-shop/index.html | 21 + .../src/serialize/loadDefaultDiagram.ts | 2 +- 21 files changed, 1639 insertions(+), 1 deletion(-) create mode 100644 deploy/dac/assets/codicon-BYm2YbZ6.ttf create mode 100644 deploy/dac/assets/codicon-DCmgc-ay.ttf create mode 100644 deploy/dac/assets/fa-brands-400-BfBXV7Mm.woff2 create mode 100644 deploy/dac/assets/fa-regular-400-BVHPE7da.woff2 create mode 100644 deploy/dac/assets/fa-solid-900-8GirhLYJ.woff2 create mode 100644 deploy/dac/assets/index-CX3bR72r.css create mode 100644 deploy/dac/assets/index-jxDt6WCR.js create mode 100644 deploy/dac/assets/monaco-editor-B8Nwu8CH.css create mode 100644 deploy/dac/assets/monaco-editor-BSmz0_Ko.js create mode 100644 deploy/dac/index.html create mode 100644 deploy/online-shop/assets/codicon-BYm2YbZ6.ttf create mode 100644 deploy/online-shop/assets/codicon-DCmgc-ay.ttf create mode 100644 deploy/online-shop/assets/fa-brands-400-BfBXV7Mm.woff2 create mode 100644 deploy/online-shop/assets/fa-regular-400-BVHPE7da.woff2 create mode 100644 deploy/online-shop/assets/fa-solid-900-8GirhLYJ.woff2 create mode 100644 deploy/online-shop/assets/index-BshKduTm.js create mode 100644 deploy/online-shop/assets/index-CX3bR72r.css create mode 100644 deploy/online-shop/assets/monaco-editor-B8Nwu8CH.css create mode 100644 deploy/online-shop/assets/monaco-editor-BSmz0_Ko.js create mode 100644 deploy/online-shop/index.html diff --git a/deploy/dac/assets/codicon-BYm2YbZ6.ttf b/deploy/dac/assets/codicon-BYm2YbZ6.ttf new file mode 100644 index 0000000000000000000000000000000000000000..6fdfc3fa0b4e45dd90a3022f55e7137b88e47efa GIT binary patch literal 123192 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 literal 0 HcmV?d00001 diff --git a/deploy/dac/assets/codicon-DCmgc-ay.ttf b/deploy/dac/assets/codicon-DCmgc-ay.ttf new file mode 100644 index 0000000000000000000000000000000000000000..27ee4c68caef1cd22342f481420d6dbda1648012 GIT binary patch literal 80340 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%0DOF`LEiy*`&i@0 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 UoXQ~{PVi#Rf4#j20|Nj60P(lx`2YX_ literal 0 HcmV?d00001 diff --git a/deploy/dac/assets/fa-regular-400-BVHPE7da.woff2 b/deploy/dac/assets/fa-regular-400-BVHPE7da.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..2eca12b0e7b540394a3349830e5d722ed53d2992 GIT binary patch literal 18988 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

;chMGNtQX7BwzxTo9ZPoT_>&Uj+b8J` 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

{})IQs7PWypp>^u_v9 z*x}57xJw65ZWm)lz~m(Wa8}6jzw$uwC1dT2lz*N^M(+CitiupOx3Dz~&Dr@usd;A% zlWLAUrvt34q_L;uWf{HdJ6)w`UZEu7g@a8cJ(XwJ%gR| zyORyy%qdfP|>!T^^mP4WZ{3E*CG zedKw*Z&}8%T+^E7SvZ$z4L+2c&&7HI4&@m-{8Mc1lNld7jtUuimKRZy9+r{Lrx^}!WzwQX{>g_fOkS@BofB1eT*FmTLME23@ zq@x(52d5%-;@+>Gdq$@ibhvSt5}pyOiMq}sbp?N`9}J4}94(4h`ej0Rkf3(YRmtA^ z)%?s);w%qGZ3HN}GyGw0bv$26&QYV#3_5HR z;q-~6cfgSbIJd&<45?E%HAbflP^I8X59c{La+tzl*+mt$sd$5zE8WE`x;PS8E{`vW zRpmyPTwcSfBY1rl%u|T*Xlx9HkH}l<;v3fUWT;usNjY|W$BPQdPLHUQPeC|NKd_Tp zCVItc0yp<)J!2F7QvO;_>Jn>lM}gHVBLLOw>P+9I}z6D;zoOPx9hOZq+&NEVYD^Wzw>IQKEq%= zue2gL8UjA4Z*a9PgHs1uTd?P{E4~4y%vE~=P%`^4D1I0}O?TqZ!f!7AKox~AT?suo zaZUZQ@`W#e5C~s>q!0hW#Wce=Zg$H9<64^e8#>cq8Fh}>nu8Ryc5)a}+aL(!y8U_r zauC-jIEFp%E+MWXf5KcQSzCaaqDdlNyZ(~L#aE-gJfA$!ddipC~SPS;HQjX_=wzgF05U>tg9aZ>8Guyz^z)$whlIjHnA}qN~MKJ4h-Dg7Ny8R118vmy%Pv%Mq(+D z8^%BC*?qHH9`G&c9}VrwnRn9*)(II4D13%>`$sOx>cX3m5`6iUK~UmxFzpJrUyZ>tZ3jHY zOy${Y-ei#+Yc1^Im-dd3&e-~#3%-<*L7%2T{!m({C0Sc5vAkyILh+A&!)oW&;LRV{ z_~eN$stVqE0AA~;i{pGl745n97RLppDUwvF zH0i!nZ*S4Bt-fJj&yZ$?gSrgz?BT;a4oaX+%?c3x)kLRK9saXviFjvRVZncYaQ zdGaLzNWZ!(y<4xe?(%5Yx%py~v0WtJ$|9pXY~6%H2_@=ns1ftG(xwiQ@8HX1@n0Mf zo+dIu7DpGDbUGCk-O-_Qk}O=GVrKmH+Jy=EdAz#U=XZVWsT9kjM0W}c8Qlq)KxO6p z!a#333vO0;diRwBUgu8>)|5DjL|6;h`;ScOD4>2&L8!P+9y(D#Gg%0DJ!II7O(Spz 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 literal 0 HcmV?d00001 diff --git a/deploy/dac/assets/index-CX3bR72r.css b/deploy/dac/assets/index-CX3bR72r.css new file mode 100644 index 00000000..1817db48 --- /dev/null +++ b/deploy/dac/assets/index-CX3bR72r.css @@ -0,0 +1 @@ +.sprotty{padding:0;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.sprotty-root{position:relative}.sprotty-hidden{display:block;position:absolute;width:0px;height:0px}.sprotty-popup{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;position:absolute;background:#fff;border-radius:5px;border:1px solid;max-width:400px;min-width:100px}.sprotty-popup>div{margin:10px}.sprotty-popup-closed{display:none}.sprotty-projection-bar.horizontal{position:absolute;width:100%;height:20px;left:0;bottom:0}.sprotty-projection-bar.vertical{position:absolute;width:20px;height:100%;right:0;top:0}.sprotty-viewport{z-index:1;border-style:solid;border-width:2px}.sprotty-projection-bar.horizontal .sprotty-projection,.sprotty-projection-bar.horizontal .sprotty-viewport{position:absolute;height:100%;top:0}.sprotty-projection-bar.vertical .sprotty-projection,.sprotty-projection-bar.vertical .sprotty-viewport{position:absolute;width:100%;left:0}@keyframes spin{to{transform:rotate(360deg)}}.animation-spin{animation:spin 1.5s linear infinite}.sprotty-missing{stroke-width:1;stroke:red;fill:red;font-size:14pt;text-anchor:start}.sprotty-junction{stroke:#000;stroke-width:1;fill:#fff}.ui-float{position:absolute;border-radius:10px;background-color:var(--color-primary)}kbd{background-color:var(--color-primary);color:var(--color-foreground);border-radius:3px;border:1px solid var(--color-foreground);box-shadow:0 1px 1px var(--color-foreground),0 2px 0 0 var(--color-background) inset;display:inline-block;font-size:.85em;font-weight:700;line-height:1;padding:2px 4px;white-space:nowrap}body{background-color:var(--color-background);color:var(--color-foreground);padding:0;margin:0;overflow:hidden}#sprotty{position:relative;height:100vh;width:100vw;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:0}svg.sprotty-graph{width:100%;height:100%;outline:none}.sprotty-hidden{display:none}:root{--color-foreground: #000;--color-background: #fff;--color-primary: #dfdfdf;--color-spacer: #e5e5e5;--color-error: #f00;--color-valid: #00b600;--color-highlighted: #77777a;--color-tool-palette-hover: #ccc;--color-tool-palette-selected: #bbb;--dark-mode: 0}:root[data-theme=dark]{--color-foreground: #fff;--color-background: #1d1c22;--color-spacer: var(--color-background);--color-primary: #302e38;--color-valid: #0f0;--color-tool-palette-hover: #f00;--color-tool-palette-selected: #f00;--dark-mode: 1}#sprotty[data-theme=dark] div{color-scheme:dark}@font-face{font-family:codicon;font-display:block;src:url(./codicon-BYm2YbZ6.ttf?c7330ef9199d97dc5b8aae3449a5dc27) format("truetype")}.codicon[class*=codicon-]{font: 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none;-ms-user-select:none}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:.5}.codicon-modifier-hidden{opacity:0}.codicon-loading{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.codicon-add:before{content:""}.codicon-plus:before{content:""}.codicon-gist-new:before{content:""}.codicon-repo-create:before{content:""}.codicon-lightbulb:before{content:""}.codicon-light-bulb:before{content:""}.codicon-repo:before{content:""}.codicon-repo-delete:before{content:""}.codicon-gist-fork:before{content:""}.codicon-repo-forked:before{content:""}.codicon-git-pull-request:before{content:""}.codicon-git-pull-request-abandoned:before{content:""}.codicon-record-keys:before{content:""}.codicon-keyboard:before{content:""}.codicon-tag:before{content:""}.codicon-git-pull-request-label:before{content:""}.codicon-tag-add:before{content:""}.codicon-tag-remove:before{content:""}.codicon-person:before{content:""}.codicon-person-follow:before{content:""}.codicon-person-outline:before{content:""}.codicon-person-filled:before{content:""}.codicon-source-control:before{content:""}.codicon-mirror:before{content:""}.codicon-mirror-public:before{content:""}.codicon-star:before{content:""}.codicon-star-add:before{content:""}.codicon-star-delete:before{content:""}.codicon-star-empty:before{content:""}.codicon-comment:before{content:""}.codicon-comment-add:before{content:""}.codicon-alert:before{content:""}.codicon-warning:before{content:""}.codicon-search:before{content:""}.codicon-search-save:before{content:""}.codicon-log-out:before{content:""}.codicon-sign-out:before{content:""}.codicon-log-in:before{content:""}.codicon-sign-in:before{content:""}.codicon-eye:before{content:""}.codicon-eye-unwatch:before{content:""}.codicon-eye-watch:before{content:""}.codicon-circle-filled:before{content:""}.codicon-primitive-dot:before{content:""}.codicon-close-dirty:before{content:""}.codicon-debug-breakpoint:before{content:""}.codicon-debug-breakpoint-disabled:before{content:""}.codicon-debug-hint:before{content:""}.codicon-terminal-decoration-success:before{content:""}.codicon-primitive-square:before{content:""}.codicon-edit:before{content:""}.codicon-pencil:before{content:""}.codicon-info:before{content:""}.codicon-issue-opened:before{content:""}.codicon-gist-private:before{content:""}.codicon-git-fork-private:before{content:""}.codicon-lock:before{content:""}.codicon-mirror-private:before{content:""}.codicon-close:before{content:""}.codicon-remove-close:before{content:""}.codicon-x:before{content:""}.codicon-repo-sync:before{content:""}.codicon-sync:before{content:""}.codicon-clone:before{content:""}.codicon-desktop-download:before{content:""}.codicon-beaker:before{content:""}.codicon-microscope:before{content:""}.codicon-vm:before{content:""}.codicon-device-desktop:before{content:""}.codicon-file:before{content:""}.codicon-more:before{content:""}.codicon-ellipsis:before{content:""}.codicon-kebab-horizontal:before{content:""}.codicon-mail-reply:before{content:""}.codicon-reply:before{content:""}.codicon-organization:before{content:""}.codicon-organization-filled:before{content:""}.codicon-organization-outline:before{content:""}.codicon-new-file:before{content:""}.codicon-file-add:before{content:""}.codicon-new-folder:before{content:""}.codicon-file-directory-create:before{content:""}.codicon-trash:before{content:""}.codicon-trashcan:before{content:""}.codicon-history:before{content:""}.codicon-clock:before{content:""}.codicon-folder:before{content:""}.codicon-file-directory:before{content:""}.codicon-symbol-folder:before{content:""}.codicon-logo-github:before{content:""}.codicon-mark-github:before{content:""}.codicon-github:before{content:""}.codicon-terminal:before{content:""}.codicon-console:before{content:""}.codicon-repl:before{content:""}.codicon-zap:before{content:""}.codicon-symbol-event:before{content:""}.codicon-error:before{content:""}.codicon-stop:before{content:""}.codicon-variable:before{content:""}.codicon-symbol-variable:before{content:""}.codicon-array:before{content:""}.codicon-symbol-array:before{content:""}.codicon-symbol-module:before{content:""}.codicon-symbol-package:before{content:""}.codicon-symbol-namespace:before{content:""}.codicon-symbol-object:before{content:""}.codicon-symbol-method:before{content:""}.codicon-symbol-function:before{content:""}.codicon-symbol-constructor:before{content:""}.codicon-symbol-boolean:before{content:""}.codicon-symbol-null:before{content:""}.codicon-symbol-numeric:before{content:""}.codicon-symbol-number:before{content:""}.codicon-symbol-structure:before{content:""}.codicon-symbol-struct:before{content:""}.codicon-symbol-parameter:before{content:""}.codicon-symbol-type-parameter:before{content:""}.codicon-symbol-key:before{content:""}.codicon-symbol-text:before{content:""}.codicon-symbol-reference:before{content:""}.codicon-go-to-file:before{content:""}.codicon-symbol-enum:before{content:""}.codicon-symbol-value:before{content:""}.codicon-symbol-ruler:before{content:""}.codicon-symbol-unit:before{content:""}.codicon-activate-breakpoints:before{content:""}.codicon-archive:before{content:""}.codicon-arrow-both:before{content:""}.codicon-arrow-down:before{content:""}.codicon-arrow-left:before{content:""}.codicon-arrow-right:before{content:""}.codicon-arrow-small-down:before{content:""}.codicon-arrow-small-left:before{content:""}.codicon-arrow-small-right:before{content:""}.codicon-arrow-small-up:before{content:""}.codicon-arrow-up:before{content:""}.codicon-bell:before{content:""}.codicon-bold:before{content:""}.codicon-book:before{content:""}.codicon-bookmark:before{content:""}.codicon-debug-breakpoint-conditional-unverified:before{content:""}.codicon-debug-breakpoint-conditional:before{content:""}.codicon-debug-breakpoint-conditional-disabled:before{content:""}.codicon-debug-breakpoint-data-unverified:before{content:""}.codicon-debug-breakpoint-data:before{content:""}.codicon-debug-breakpoint-data-disabled:before{content:""}.codicon-debug-breakpoint-log-unverified:before{content:""}.codicon-debug-breakpoint-log:before{content:""}.codicon-debug-breakpoint-log-disabled:before{content:""}.codicon-briefcase:before{content:""}.codicon-broadcast:before{content:""}.codicon-browser:before{content:""}.codicon-bug:before{content:""}.codicon-calendar:before{content:""}.codicon-case-sensitive:before{content:""}.codicon-check:before{content:""}.codicon-checklist:before{content:""}.codicon-chevron-down:before{content:""}.codicon-chevron-left:before{content:""}.codicon-chevron-right:before{content:""}.codicon-chevron-up:before{content:""}.codicon-chrome-close:before{content:""}.codicon-chrome-maximize:before{content:""}.codicon-chrome-minimize:before{content:""}.codicon-chrome-restore:before{content:""}.codicon-circle-outline:before{content:""}.codicon-circle:before{content:""}.codicon-debug-breakpoint-unverified:before{content:""}.codicon-terminal-decoration-incomplete:before{content:""}.codicon-circle-slash:before{content:""}.codicon-circuit-board:before{content:""}.codicon-clear-all:before{content:""}.codicon-clippy:before{content:""}.codicon-close-all:before{content:""}.codicon-cloud-download:before{content:""}.codicon-cloud-upload:before{content:""}.codicon-code:before{content:""}.codicon-collapse-all:before{content:""}.codicon-color-mode:before{content:""}.codicon-comment-discussion:before{content:""}.codicon-credit-card:before{content:""}.codicon-dash:before{content:""}.codicon-dashboard:before{content:""}.codicon-database:before{content:""}.codicon-debug-continue:before{content:""}.codicon-debug-disconnect:before{content:""}.codicon-debug-pause:before{content:""}.codicon-debug-restart:before{content:""}.codicon-debug-start:before{content:""}.codicon-debug-step-into:before{content:""}.codicon-debug-step-out:before{content:""}.codicon-debug-step-over:before{content:""}.codicon-debug-stop:before{content:""}.codicon-debug:before{content:""}.codicon-device-camera-video:before{content:""}.codicon-device-camera:before{content:""}.codicon-device-mobile:before{content:""}.codicon-diff-added:before{content:""}.codicon-diff-ignored:before{content:""}.codicon-diff-modified:before{content:""}.codicon-diff-removed:before{content:""}.codicon-diff-renamed:before{content:""}.codicon-diff:before{content:""}.codicon-diff-sidebyside:before{content:""}.codicon-discard:before{content:""}.codicon-editor-layout:before{content:""}.codicon-empty-window:before{content:""}.codicon-exclude:before{content:""}.codicon-extensions:before{content:""}.codicon-eye-closed:before{content:""}.codicon-file-binary:before{content:""}.codicon-file-code:before{content:""}.codicon-file-media:before{content:""}.codicon-file-pdf:before{content:""}.codicon-file-submodule:before{content:""}.codicon-file-symlink-directory:before{content:""}.codicon-file-symlink-file:before{content:""}.codicon-file-zip:before{content:""}.codicon-files:before{content:""}.codicon-filter:before{content:""}.codicon-flame:before{content:""}.codicon-fold-down:before{content:""}.codicon-fold-up:before{content:""}.codicon-fold:before{content:""}.codicon-folder-active:before{content:""}.codicon-folder-opened:before{content:""}.codicon-gear:before{content:""}.codicon-gift:before{content:""}.codicon-gist-secret:before{content:""}.codicon-gist:before{content:""}.codicon-git-commit:before{content:""}.codicon-git-compare:before{content:""}.codicon-compare-changes:before{content:""}.codicon-git-merge:before{content:""}.codicon-github-action:before{content:""}.codicon-github-alt:before{content:""}.codicon-globe:before{content:""}.codicon-grabber:before{content:""}.codicon-graph:before{content:""}.codicon-gripper:before{content:""}.codicon-heart:before{content:""}.codicon-home:before{content:""}.codicon-horizontal-rule:before{content:""}.codicon-hubot:before{content:""}.codicon-inbox:before{content:""}.codicon-issue-reopened:before{content:""}.codicon-issues:before{content:""}.codicon-italic:before{content:""}.codicon-jersey:before{content:""}.codicon-json:before{content:""}.codicon-bracket:before{content:""}.codicon-kebab-vertical:before{content:""}.codicon-key:before{content:""}.codicon-law:before{content:""}.codicon-lightbulb-autofix:before{content:""}.codicon-link-external:before{content:""}.codicon-link:before{content:""}.codicon-list-ordered:before{content:""}.codicon-list-unordered:before{content:""}.codicon-live-share:before{content:""}.codicon-loading:before{content:""}.codicon-location:before{content:""}.codicon-mail-read:before{content:""}.codicon-mail:before{content:""}.codicon-markdown:before{content:""}.codicon-megaphone:before{content:""}.codicon-mention:before{content:""}.codicon-milestone:before{content:""}.codicon-git-pull-request-milestone:before{content:""}.codicon-mortar-board:before{content:""}.codicon-move:before{content:""}.codicon-multiple-windows:before{content:""}.codicon-mute:before{content:""}.codicon-no-newline:before{content:""}.codicon-note:before{content:""}.codicon-octoface:before{content:""}.codicon-open-preview:before{content:""}.codicon-package:before{content:""}.codicon-paintcan:before{content:""}.codicon-pin:before{content:""}.codicon-play:before{content:""}.codicon-run:before{content:""}.codicon-plug:before{content:""}.codicon-preserve-case:before{content:""}.codicon-preview:before{content:""}.codicon-project:before{content:""}.codicon-pulse:before{content:""}.codicon-question:before{content:""}.codicon-quote:before{content:""}.codicon-radio-tower:before{content:""}.codicon-reactions:before{content:""}.codicon-references:before{content:""}.codicon-refresh:before{content:""}.codicon-regex:before{content:""}.codicon-remote-explorer:before{content:""}.codicon-remote:before{content:""}.codicon-remove:before{content:""}.codicon-replace-all:before{content:""}.codicon-replace:before{content:""}.codicon-repo-clone:before{content:""}.codicon-repo-force-push:before{content:""}.codicon-repo-pull:before{content:""}.codicon-repo-push:before{content:""}.codicon-report:before{content:""}.codicon-request-changes:before{content:""}.codicon-rocket:before{content:""}.codicon-root-folder-opened:before{content:""}.codicon-root-folder:before{content:""}.codicon-rss:before{content:""}.codicon-ruby:before{content:""}.codicon-save-all:before{content:""}.codicon-save-as:before{content:""}.codicon-save:before{content:""}.codicon-screen-full:before{content:""}.codicon-screen-normal:before{content:""}.codicon-search-stop:before{content:""}.codicon-server:before{content:""}.codicon-settings-gear:before{content:""}.codicon-settings:before{content:""}.codicon-shield:before{content:""}.codicon-smiley:before{content:""}.codicon-sort-precedence:before{content:""}.codicon-split-horizontal:before{content:""}.codicon-split-vertical:before{content:""}.codicon-squirrel:before{content:""}.codicon-star-full:before{content:""}.codicon-star-half:before{content:""}.codicon-symbol-class:before{content:""}.codicon-symbol-color:before{content:""}.codicon-symbol-constant:before{content:""}.codicon-symbol-enum-member:before{content:""}.codicon-symbol-field:before{content:""}.codicon-symbol-file:before{content:""}.codicon-symbol-interface:before{content:""}.codicon-symbol-keyword:before{content:""}.codicon-symbol-misc:before{content:""}.codicon-symbol-operator:before{content:""}.codicon-symbol-property:before{content:""}.codicon-wrench:before{content:""}.codicon-wrench-subaction:before{content:""}.codicon-symbol-snippet:before{content:""}.codicon-tasklist:before{content:""}.codicon-telescope:before{content:""}.codicon-text-size:before{content:""}.codicon-three-bars:before{content:""}.codicon-thumbsdown:before{content:""}.codicon-thumbsup:before{content:""}.codicon-tools:before{content:""}.codicon-triangle-down:before{content:""}.codicon-triangle-left:before{content:""}.codicon-triangle-right:before{content:""}.codicon-triangle-up:before{content:""}.codicon-twitter:before{content:""}.codicon-unfold:before{content:""}.codicon-unlock:before{content:""}.codicon-unmute:before{content:""}.codicon-unverified:before{content:""}.codicon-verified:before{content:""}.codicon-versions:before{content:""}.codicon-vm-active:before{content:""}.codicon-vm-outline:before{content:""}.codicon-vm-running:before{content:""}.codicon-watch:before{content:""}.codicon-whitespace:before{content:""}.codicon-whole-word:before{content:""}.codicon-window:before{content:""}.codicon-word-wrap:before{content:""}.codicon-zoom-in:before{content:""}.codicon-zoom-out:before{content:""}.codicon-list-filter:before{content:""}.codicon-list-flat:before{content:""}.codicon-list-selection:before{content:""}.codicon-selection:before{content:""}.codicon-list-tree:before{content:""}.codicon-debug-breakpoint-function-unverified:before{content:""}.codicon-debug-breakpoint-function:before{content:""}.codicon-debug-breakpoint-function-disabled:before{content:""}.codicon-debug-stackframe-active:before{content:""}.codicon-circle-small-filled:before{content:""}.codicon-debug-stackframe-dot:before{content:""}.codicon-terminal-decoration-mark:before{content:""}.codicon-debug-stackframe:before{content:""}.codicon-debug-stackframe-focused:before{content:""}.codicon-debug-breakpoint-unsupported:before{content:""}.codicon-symbol-string:before{content:""}.codicon-debug-reverse-continue:before{content:""}.codicon-debug-step-back:before{content:""}.codicon-debug-restart-frame:before{content:""}.codicon-debug-alt:before{content:""}.codicon-call-incoming:before{content:""}.codicon-call-outgoing:before{content:""}.codicon-menu:before{content:""}.codicon-expand-all:before{content:""}.codicon-feedback:before{content:""}.codicon-git-pull-request-reviewer:before{content:""}.codicon-group-by-ref-type:before{content:""}.codicon-ungroup-by-ref-type:before{content:""}.codicon-account:before{content:""}.codicon-git-pull-request-assignee:before{content:""}.codicon-bell-dot:before{content:""}.codicon-debug-console:before{content:""}.codicon-library:before{content:""}.codicon-output:before{content:""}.codicon-run-all:before{content:""}.codicon-sync-ignored:before{content:""}.codicon-pinned:before{content:""}.codicon-github-inverted:before{content:""}.codicon-server-process:before{content:""}.codicon-server-environment:before{content:""}.codicon-pass:before{content:""}.codicon-issue-closed:before{content:""}.codicon-stop-circle:before{content:""}.codicon-play-circle:before{content:""}.codicon-record:before{content:""}.codicon-debug-alt-small:before{content:""}.codicon-vm-connect:before{content:""}.codicon-cloud:before{content:""}.codicon-merge:before{content:""}.codicon-export:before{content:""}.codicon-graph-left:before{content:""}.codicon-magnet:before{content:""}.codicon-notebook:before{content:""}.codicon-redo:before{content:""}.codicon-check-all:before{content:""}.codicon-pinned-dirty:before{content:""}.codicon-pass-filled:before{content:""}.codicon-circle-large-filled:before{content:""}.codicon-circle-large:before{content:""}.codicon-circle-large-outline:before{content:""}.codicon-combine:before{content:""}.codicon-gather:before{content:""}.codicon-table:before{content:""}.codicon-variable-group:before{content:""}.codicon-type-hierarchy:before{content:""}.codicon-type-hierarchy-sub:before{content:""}.codicon-type-hierarchy-super:before{content:""}.codicon-git-pull-request-create:before{content:""}.codicon-run-above:before{content:""}.codicon-run-below:before{content:""}.codicon-notebook-template:before{content:""}.codicon-debug-rerun:before{content:""}.codicon-workspace-trusted:before{content:""}.codicon-workspace-untrusted:before{content:""}.codicon-workspace-unknown:before{content:""}.codicon-terminal-cmd:before{content:""}.codicon-terminal-debian:before{content:""}.codicon-terminal-linux:before{content:""}.codicon-terminal-powershell:before{content:""}.codicon-terminal-tmux:before{content:""}.codicon-terminal-ubuntu:before{content:""}.codicon-terminal-bash:before{content:""}.codicon-arrow-swap:before{content:""}.codicon-copy:before{content:""}.codicon-person-add:before{content:""}.codicon-filter-filled:before{content:""}.codicon-wand:before{content:""}.codicon-debug-line-by-line:before{content:""}.codicon-inspect:before{content:""}.codicon-layers:before{content:""}.codicon-layers-dot:before{content:""}.codicon-layers-active:before{content:""}.codicon-compass:before{content:""}.codicon-compass-dot:before{content:""}.codicon-compass-active:before{content:""}.codicon-azure:before{content:""}.codicon-issue-draft:before{content:""}.codicon-git-pull-request-closed:before{content:""}.codicon-git-pull-request-draft:before{content:""}.codicon-debug-all:before{content:""}.codicon-debug-coverage:before{content:""}.codicon-run-errors:before{content:""}.codicon-folder-library:before{content:""}.codicon-debug-continue-small:before{content:""}.codicon-beaker-stop:before{content:""}.codicon-graph-line:before{content:""}.codicon-graph-scatter:before{content:""}.codicon-pie-chart:before{content:""}.codicon-bracket-dot:before{content:""}.codicon-bracket-error:before{content:""}.codicon-lock-small:before{content:""}.codicon-azure-devops:before{content:""}.codicon-verified-filled:before{content:""}.codicon-newline:before{content:""}.codicon-layout:before{content:""}.codicon-layout-activitybar-left:before{content:""}.codicon-layout-activitybar-right:before{content:""}.codicon-layout-panel-left:before{content:""}.codicon-layout-panel-center:before{content:""}.codicon-layout-panel-justify:before{content:""}.codicon-layout-panel-right:before{content:""}.codicon-layout-panel:before{content:""}.codicon-layout-sidebar-left:before{content:""}.codicon-layout-sidebar-right:before{content:""}.codicon-layout-statusbar:before{content:""}.codicon-layout-menubar:before{content:""}.codicon-layout-centered:before{content:""}.codicon-target:before{content:""}.codicon-indent:before{content:""}.codicon-record-small:before{content:""}.codicon-error-small:before{content:""}.codicon-terminal-decoration-error:before{content:""}.codicon-arrow-circle-down:before{content:""}.codicon-arrow-circle-left:before{content:""}.codicon-arrow-circle-right:before{content:""}.codicon-arrow-circle-up:before{content:""}.codicon-layout-sidebar-right-off:before{content:""}.codicon-layout-panel-off:before{content:""}.codicon-layout-sidebar-left-off:before{content:""}.codicon-blank:before{content:""}.codicon-heart-filled:before{content:""}.codicon-map:before{content:""}.codicon-map-horizontal:before{content:""}.codicon-fold-horizontal:before{content:""}.codicon-map-filled:before{content:""}.codicon-map-horizontal-filled:before{content:""}.codicon-fold-horizontal-filled:before{content:""}.codicon-circle-small:before{content:""}.codicon-bell-slash:before{content:""}.codicon-bell-slash-dot:before{content:""}.codicon-comment-unresolved:before{content:""}.codicon-git-pull-request-go-to-changes:before{content:""}.codicon-git-pull-request-new-changes:before{content:""}.codicon-search-fuzzy:before{content:""}.codicon-comment-draft:before{content:""}.codicon-send:before{content:""}.codicon-sparkle:before{content:""}.codicon-insert:before{content:""}.codicon-mic:before{content:""}.codicon-thumbsdown-filled:before{content:""}.codicon-thumbsup-filled:before{content:""}.codicon-coffee:before{content:""}.codicon-snake:before{content:""}.codicon-game:before{content:""}.codicon-vr:before{content:""}.codicon-chip:before{content:""}.codicon-piano:before{content:""}.codicon-music:before{content:""}.codicon-mic-filled:before{content:""}.codicon-repo-fetch:before{content:""}.codicon-copilot:before{content:""}.codicon-lightbulb-sparkle:before{content:""}.codicon-robot:before{content:""}.codicon-sparkle-filled:before{content:""}.codicon-diff-single:before{content:""}.codicon-diff-multiple:before{content:""}.codicon-surround-with:before{content:""}.codicon-share:before{content:""}.codicon-git-stash:before{content:""}.codicon-git-stash-apply:before{content:""}.codicon-git-stash-pop:before{content:""}.codicon-vscode:before{content:""}.codicon-vscode-insiders:before{content:""}.codicon-code-oss:before{content:""}.codicon-run-coverage:before{content:""}.codicon-run-all-coverage:before{content:""}.codicon-coverage:before{content:""}.codicon-github-project:before{content:""}.codicon-map-vertical:before{content:""}.codicon-fold-vertical:before{content:""}.codicon-map-vertical-filled:before{content:""}.codicon-fold-vertical-filled:before{content:""}.codicon-go-to-search:before{content:""}.codicon-percentage:before{content:""}.codicon-sort-percentage:before{content:""}.codicon-attach:before{content:""}.codicon-go-to-editing-session:before{content:""}.codicon-edit-session:before{content:""}.codicon-code-review:before{content:""}.codicon-copilot-warning:before{content:""}.codicon-python:before{content:""}.codicon-copilot-large:before{content:""}.codicon-copilot-warning-large:before{content:""}.codicon-keyboard-tab:before{content:""}.codicon-copilot-blocked:before{content:""}.codicon-copilot-not-connected:before{content:""}.codicon-flag:before{content:""}.codicon-lightbulb-empty:before{content:""}.codicon-symbol-method-arrow:before{content:""}.codicon-copilot-unavailable:before{content:""}.codicon-repo-pinned:before{content:""}.codicon-keyboard-tab-above:before{content:""}.codicon-keyboard-tab-below:before{content:""}.codicon-git-pull-request-done:before{content:""}.codicon-mcp:before{content:""}.codicon-extensions-large:before{content:""}.codicon-layout-panel-dock:before{content:""}.codicon-layout-sidebar-left-dock:before{content:""}.codicon-layout-sidebar-right-dock:before{content:""}.codicon-copilot-in-progress:before{content:""}.codicon-copilot-error:before{content:""}.codicon-copilot-success:before{content:""}.codicon-chat-sparkle:before{content:""}.codicon-search-sparkle:before{content:""}.codicon-edit-sparkle:before{content:""}.codicon-copilot-snooze:before{content:""}.codicon-send-to-remote-agent:before{content:""}.codicon-comment-discussion-sparkle:before{content:""}.codicon-chat-sparkle-warning:before{content:""}.codicon-chat-sparkle-error:before{content:""}.codicon-collection:before{content:""}.codicon-new-collection:before{content:""}.codicon-thinking:before{content:""}.codicon-build:before{content:""}.codicon-comment-discussion-quote:before{content:""}.codicon-cursor:before{content:""}.codicon-eraser:before{content:""}.codicon-file-text:before{content:""}.codicon-quotes:before{content:""}.codicon-rename:before{content:""}.codicon-run-with-deps:before{content:""}.codicon-debug-connected:before{content:""}.codicon-strikethrough:before{content:""}.codicon-open-in-product:before{content:""}.codicon-index-zero:before{content:""}.codicon-agent:before{content:""}.codicon-edit-code:before{content:""}.codicon-repo-selected:before{content:""}.codicon-skip:before{content:""}.codicon-merge-into:before{content:""}.codicon-git-branch-changes:before{content:""}.codicon-git-branch-staged-changes:before{content:""}.codicon-git-branch-conflicts:before{content:""}.codicon-git-branch:before{content:""}.codicon-git-branch-create:before{content:""}.codicon-git-branch-delete:before{content:""}.codicon-search-large:before{content:""}.codicon-terminal-git-bash:before{content:""}.codicon-window-active:before{content:""}.codicon-forward:before{content:""}.codicon-download:before{content:""}.codicon-clockface:before{content:""}.codicon-unarchive:before{content:""}.codicon-session-in-progress:before{content:""}.codicon-collection-small:before{content:""}.codicon-vm-small:before{content:""}.codicon-cloud-small:before{content:""}.codicon-git-fetch:before{content:""}.codicon-vm-pending:before{content:""}.fa,.fa-brands,.fa-classic,.fa-regular,.fa-solid,.fab,.far,.fas{--_fa-family:var(--fa-family,var(--fa-style-family,"Font Awesome 7 Free"));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:var(--fa-display,inline-block);font-family:var(--_fa-family);font-feature-settings:normal;font-style:normal;font-synthesis:none;font-variant:normal;font-weight:var(--fa-style,900);line-height:1;text-align:center;text-rendering:auto;width:var(--fa-width,1.25em)}:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before{content:var(--fa)/""}@supports not (content:""/""){:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before{content:var(--fa)}}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-ul{list-style-type:none;margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0}.fa-ul>li{position:relative}.fa-li{inset-inline-start:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.0625em) var(--fa-border-style,solid) var(--fa-border-color,#eee);box-sizing:var(--fa-border-box-sizing,content-box);padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.fa-pull-end,.fa-pull-right{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media(prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation:none!important;transition:none!important}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{--fa-width:100%;inset:0;position:absolute;text-align:center;width:var(--fa-width);z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-0{--fa:"0"}.fa-1{--fa:"1"}.fa-2{--fa:"2"}.fa-3{--fa:"3"}.fa-4{--fa:"4"}.fa-5{--fa:"5"}.fa-6{--fa:"6"}.fa-7{--fa:"7"}.fa-8{--fa:"8"}.fa-9{--fa:"9"}.fa-exclamation{--fa:"!"}.fa-hashtag{--fa:"#"}.fa-dollar,.fa-dollar-sign,.fa-usd{--fa:"$"}.fa-percent,.fa-percentage{--fa:"%"}.fa-asterisk{--fa:"*"}.fa-add,.fa-plus{--fa:"+"}.fa-less-than{--fa:"<"}.fa-equals{--fa:"="}.fa-greater-than{--fa:">"}.fa-question{--fa:"?"}.fa-at{--fa:"@"}.fa-a{--fa:"A"}.fa-b{--fa:"B"}.fa-c{--fa:"C"}.fa-d{--fa:"D"}.fa-e{--fa:"E"}.fa-f{--fa:"F"}.fa-g{--fa:"G"}.fa-h{--fa:"H"}.fa-i{--fa:"I"}.fa-j{--fa:"J"}.fa-k{--fa:"K"}.fa-l{--fa:"L"}.fa-m{--fa:"M"}.fa-n{--fa:"N"}.fa-o{--fa:"O"}.fa-p{--fa:"P"}.fa-q{--fa:"Q"}.fa-r{--fa:"R"}.fa-s{--fa:"S"}.fa-t{--fa:"T"}.fa-u{--fa:"U"}.fa-v{--fa:"V"}.fa-w{--fa:"W"}.fa-x{--fa:"X"}.fa-y{--fa:"Y"}.fa-z{--fa:"Z"}.fa-faucet{--fa:""}.fa-faucet-drip{--fa:""}.fa-house-chimney-window{--fa:""}.fa-house-signal{--fa:""}.fa-temperature-arrow-down,.fa-temperature-down{--fa:""}.fa-temperature-arrow-up,.fa-temperature-up{--fa:""}.fa-trailer{--fa:""}.fa-bacteria{--fa:""}.fa-bacterium{--fa:""}.fa-box-tissue{--fa:""}.fa-hand-holding-medical{--fa:""}.fa-hand-sparkles{--fa:""}.fa-hands-bubbles,.fa-hands-wash{--fa:""}.fa-handshake-alt-slash,.fa-handshake-simple-slash,.fa-handshake-slash{--fa:""}.fa-head-side-cough{--fa:""}.fa-head-side-cough-slash{--fa:""}.fa-head-side-mask{--fa:""}.fa-head-side-virus{--fa:""}.fa-house-chimney-user{--fa:""}.fa-house-laptop,.fa-laptop-house{--fa:""}.fa-lungs-virus{--fa:""}.fa-people-arrows,.fa-people-arrows-left-right{--fa:""}.fa-plane-slash{--fa:""}.fa-pump-medical{--fa:""}.fa-pump-soap{--fa:""}.fa-shield-virus{--fa:""}.fa-sink{--fa:""}.fa-soap{--fa:""}.fa-stopwatch-20{--fa:""}.fa-shop-slash,.fa-store-alt-slash{--fa:""}.fa-store-slash{--fa:""}.fa-toilet-paper-slash{--fa:""}.fa-users-slash{--fa:""}.fa-virus{--fa:""}.fa-virus-slash{--fa:""}.fa-viruses{--fa:""}.fa-vest{--fa:""}.fa-vest-patches{--fa:""}.fa-arrow-trend-down{--fa:""}.fa-arrow-trend-up{--fa:""}.fa-arrow-up-from-bracket{--fa:""}.fa-austral-sign{--fa:""}.fa-baht-sign{--fa:""}.fa-bitcoin-sign{--fa:""}.fa-bolt-lightning{--fa:""}.fa-book-bookmark{--fa:""}.fa-camera-rotate{--fa:""}.fa-cedi-sign{--fa:""}.fa-chart-column{--fa:""}.fa-chart-gantt{--fa:""}.fa-clapperboard{--fa:""}.fa-clover{--fa:""}.fa-code-compare{--fa:""}.fa-code-fork{--fa:""}.fa-code-pull-request{--fa:""}.fa-colon-sign{--fa:""}.fa-cruzeiro-sign{--fa:""}.fa-display{--fa:""}.fa-dong-sign{--fa:""}.fa-elevator{--fa:""}.fa-filter-circle-xmark{--fa:""}.fa-florin-sign{--fa:""}.fa-folder-closed{--fa:""}.fa-franc-sign{--fa:""}.fa-guarani-sign{--fa:""}.fa-gun{--fa:""}.fa-hands-clapping{--fa:""}.fa-home-user,.fa-house-user{--fa:""}.fa-indian-rupee,.fa-indian-rupee-sign,.fa-inr{--fa:""}.fa-kip-sign{--fa:""}.fa-lari-sign{--fa:""}.fa-litecoin-sign{--fa:""}.fa-manat-sign{--fa:""}.fa-mask-face{--fa:""}.fa-mill-sign{--fa:""}.fa-money-bills{--fa:""}.fa-naira-sign{--fa:""}.fa-notdef{--fa:""}.fa-panorama{--fa:""}.fa-peseta-sign{--fa:""}.fa-peso-sign{--fa:""}.fa-plane-up{--fa:""}.fa-rupiah-sign{--fa:""}.fa-stairs{--fa:""}.fa-timeline{--fa:""}.fa-truck-front{--fa:""}.fa-try,.fa-turkish-lira,.fa-turkish-lira-sign{--fa:""}.fa-vault{--fa:""}.fa-magic-wand-sparkles,.fa-wand-magic-sparkles{--fa:""}.fa-wheat-alt,.fa-wheat-awn{--fa:""}.fa-wheelchair-alt,.fa-wheelchair-move{--fa:""}.fa-bangladeshi-taka-sign{--fa:""}.fa-bowl-rice{--fa:""}.fa-person-pregnant{--fa:""}.fa-home-lg,.fa-house-chimney{--fa:""}.fa-house-crack{--fa:""}.fa-house-medical{--fa:""}.fa-cent-sign{--fa:""}.fa-plus-minus{--fa:""}.fa-sailboat{--fa:""}.fa-section{--fa:""}.fa-shrimp{--fa:""}.fa-brazilian-real-sign{--fa:""}.fa-chart-simple{--fa:""}.fa-diagram-next{--fa:""}.fa-diagram-predecessor{--fa:""}.fa-diagram-successor{--fa:""}.fa-earth-oceania,.fa-globe-oceania{--fa:""}.fa-bug-slash{--fa:""}.fa-file-circle-plus{--fa:""}.fa-shop-lock{--fa:""}.fa-virus-covid{--fa:""}.fa-virus-covid-slash{--fa:""}.fa-anchor-circle-check{--fa:""}.fa-anchor-circle-exclamation{--fa:""}.fa-anchor-circle-xmark{--fa:""}.fa-anchor-lock{--fa:""}.fa-arrow-down-up-across-line{--fa:""}.fa-arrow-down-up-lock{--fa:""}.fa-arrow-right-to-city{--fa:""}.fa-arrow-up-from-ground-water{--fa:""}.fa-arrow-up-from-water-pump{--fa:""}.fa-arrow-up-right-dots{--fa:""}.fa-arrows-down-to-line{--fa:""}.fa-arrows-down-to-people{--fa:""}.fa-arrows-left-right-to-line{--fa:""}.fa-arrows-spin{--fa:""}.fa-arrows-split-up-and-left{--fa:""}.fa-arrows-to-circle{--fa:""}.fa-arrows-to-dot{--fa:""}.fa-arrows-to-eye{--fa:""}.fa-arrows-turn-right{--fa:""}.fa-arrows-turn-to-dots{--fa:""}.fa-arrows-up-to-line{--fa:""}.fa-bore-hole{--fa:""}.fa-bottle-droplet{--fa:""}.fa-bottle-water{--fa:""}.fa-bowl-food{--fa:""}.fa-boxes-packing{--fa:""}.fa-bridge{--fa:""}.fa-bridge-circle-check{--fa:""}.fa-bridge-circle-exclamation{--fa:""}.fa-bridge-circle-xmark{--fa:""}.fa-bridge-lock{--fa:""}.fa-bridge-water{--fa:""}.fa-bucket{--fa:""}.fa-bugs{--fa:""}.fa-building-circle-arrow-right{--fa:""}.fa-building-circle-check{--fa:""}.fa-building-circle-exclamation{--fa:""}.fa-building-circle-xmark{--fa:""}.fa-building-flag{--fa:""}.fa-building-lock{--fa:""}.fa-building-ngo{--fa:""}.fa-building-shield{--fa:""}.fa-building-un{--fa:""}.fa-building-user{--fa:""}.fa-building-wheat{--fa:""}.fa-burst{--fa:""}.fa-car-on{--fa:""}.fa-car-tunnel{--fa:""}.fa-child-combatant,.fa-child-rifle{--fa:""}.fa-children{--fa:""}.fa-circle-nodes{--fa:""}.fa-clipboard-question{--fa:""}.fa-cloud-showers-water{--fa:""}.fa-computer{--fa:""}.fa-cubes-stacked{--fa:""}.fa-envelope-circle-check{--fa:""}.fa-explosion{--fa:""}.fa-ferry{--fa:""}.fa-file-circle-exclamation{--fa:""}.fa-file-circle-minus{--fa:""}.fa-file-circle-question{--fa:""}.fa-file-shield{--fa:""}.fa-fire-burner{--fa:""}.fa-fish-fins{--fa:""}.fa-flask-vial{--fa:""}.fa-glass-water{--fa:""}.fa-glass-water-droplet{--fa:""}.fa-group-arrows-rotate{--fa:""}.fa-hand-holding-hand{--fa:""}.fa-handcuffs{--fa:""}.fa-hands-bound{--fa:""}.fa-hands-holding-child{--fa:""}.fa-hands-holding-circle{--fa:""}.fa-heart-circle-bolt{--fa:""}.fa-heart-circle-check{--fa:""}.fa-heart-circle-exclamation{--fa:""}.fa-heart-circle-minus{--fa:""}.fa-heart-circle-plus{--fa:""}.fa-heart-circle-xmark{--fa:""}.fa-helicopter-symbol{--fa:""}.fa-helmet-un{--fa:""}.fa-hill-avalanche{--fa:""}.fa-hill-rockslide{--fa:""}.fa-house-circle-check{--fa:""}.fa-house-circle-exclamation{--fa:""}.fa-house-circle-xmark{--fa:""}.fa-house-fire{--fa:""}.fa-house-flag{--fa:""}.fa-house-flood-water{--fa:""}.fa-house-flood-water-circle-arrow-right{--fa:""}.fa-house-lock{--fa:""}.fa-house-medical-circle-check{--fa:""}.fa-house-medical-circle-exclamation{--fa:""}.fa-house-medical-circle-xmark{--fa:""}.fa-house-medical-flag{--fa:""}.fa-house-tsunami{--fa:""}.fa-jar{--fa:""}.fa-jar-wheat{--fa:""}.fa-jet-fighter-up{--fa:""}.fa-jug-detergent{--fa:""}.fa-kitchen-set{--fa:""}.fa-land-mine-on{--fa:""}.fa-landmark-flag{--fa:""}.fa-laptop-file{--fa:""}.fa-lines-leaning{--fa:""}.fa-location-pin-lock{--fa:""}.fa-locust{--fa:""}.fa-magnifying-glass-arrow-right{--fa:""}.fa-magnifying-glass-chart{--fa:""}.fa-mars-and-venus-burst{--fa:""}.fa-mask-ventilator{--fa:""}.fa-mattress-pillow{--fa:""}.fa-mobile-retro{--fa:""}.fa-money-bill-transfer{--fa:""}.fa-money-bill-trend-up{--fa:""}.fa-money-bill-wheat{--fa:""}.fa-mosquito{--fa:""}.fa-mosquito-net{--fa:""}.fa-mound{--fa:""}.fa-mountain-city{--fa:""}.fa-mountain-sun{--fa:""}.fa-oil-well{--fa:""}.fa-people-group{--fa:""}.fa-people-line{--fa:""}.fa-people-pulling{--fa:""}.fa-people-robbery{--fa:""}.fa-people-roof{--fa:""}.fa-person-arrow-down-to-line{--fa:""}.fa-person-arrow-up-from-line{--fa:""}.fa-person-breastfeeding{--fa:""}.fa-person-burst{--fa:""}.fa-person-cane{--fa:""}.fa-person-chalkboard{--fa:""}.fa-person-circle-check{--fa:""}.fa-person-circle-exclamation{--fa:""}.fa-person-circle-minus{--fa:""}.fa-person-circle-plus{--fa:""}.fa-person-circle-question{--fa:""}.fa-person-circle-xmark{--fa:""}.fa-person-dress-burst{--fa:""}.fa-person-drowning{--fa:""}.fa-person-falling{--fa:""}.fa-person-falling-burst{--fa:""}.fa-person-half-dress{--fa:""}.fa-person-harassing{--fa:""}.fa-person-military-pointing{--fa:""}.fa-person-military-rifle{--fa:""}.fa-person-military-to-person{--fa:""}.fa-person-rays{--fa:""}.fa-person-rifle{--fa:""}.fa-person-shelter{--fa:""}.fa-person-walking-arrow-loop-left{--fa:""}.fa-person-walking-arrow-right{--fa:""}.fa-person-walking-dashed-line-arrow-right{--fa:""}.fa-person-walking-luggage{--fa:""}.fa-plane-circle-check{--fa:""}.fa-plane-circle-exclamation{--fa:""}.fa-plane-circle-xmark{--fa:""}.fa-plane-lock{--fa:""}.fa-plate-wheat{--fa:""}.fa-plug-circle-bolt{--fa:""}.fa-plug-circle-check{--fa:""}.fa-plug-circle-exclamation{--fa:""}.fa-plug-circle-minus{--fa:""}.fa-plug-circle-plus{--fa:""}.fa-plug-circle-xmark{--fa:""}.fa-ranking-star{--fa:""}.fa-road-barrier{--fa:""}.fa-road-bridge{--fa:""}.fa-road-circle-check{--fa:""}.fa-road-circle-exclamation{--fa:""}.fa-road-circle-xmark{--fa:""}.fa-road-lock{--fa:""}.fa-road-spikes{--fa:""}.fa-rug{--fa:""}.fa-sack-xmark{--fa:""}.fa-school-circle-check{--fa:""}.fa-school-circle-exclamation{--fa:""}.fa-school-circle-xmark{--fa:""}.fa-school-flag{--fa:""}.fa-school-lock{--fa:""}.fa-sheet-plastic{--fa:""}.fa-shield-cat{--fa:""}.fa-shield-dog{--fa:""}.fa-shield-heart{--fa:""}.fa-square-nfi{--fa:""}.fa-square-person-confined{--fa:""}.fa-square-virus{--fa:""}.fa-rod-asclepius,.fa-rod-snake,.fa-staff-aesculapius,.fa-staff-snake{--fa:""}.fa-sun-plant-wilt{--fa:""}.fa-tarp{--fa:""}.fa-tarp-droplet{--fa:""}.fa-tent{--fa:""}.fa-tent-arrow-down-to-line{--fa:""}.fa-tent-arrow-left-right{--fa:""}.fa-tent-arrow-turn-left{--fa:""}.fa-tent-arrows-down{--fa:""}.fa-tents{--fa:""}.fa-toilet-portable{--fa:""}.fa-toilets-portable{--fa:""}.fa-tower-cell{--fa:""}.fa-tower-observation{--fa:""}.fa-tree-city{--fa:""}.fa-trowel{--fa:""}.fa-trowel-bricks{--fa:""}.fa-truck-arrow-right{--fa:""}.fa-truck-droplet{--fa:""}.fa-truck-field{--fa:""}.fa-truck-field-un{--fa:""}.fa-truck-plane{--fa:""}.fa-users-between-lines{--fa:""}.fa-users-line{--fa:""}.fa-users-rays{--fa:""}.fa-users-rectangle{--fa:""}.fa-users-viewfinder{--fa:""}.fa-vial-circle-check{--fa:""}.fa-vial-virus{--fa:""}.fa-wheat-awn-circle-exclamation{--fa:""}.fa-worm{--fa:""}.fa-xmarks-lines{--fa:""}.fa-child-dress{--fa:""}.fa-child-reaching{--fa:""}.fa-file-circle-check{--fa:""}.fa-file-circle-xmark{--fa:""}.fa-person-through-window{--fa:""}.fa-plant-wilt{--fa:""}.fa-stapler{--fa:""}.fa-train-tram{--fa:""}.fa-table-cells-column-lock{--fa:""}.fa-table-cells-row-lock{--fa:""}.fa-thumb-tack-slash,.fa-thumbtack-slash{--fa:""}.fa-table-cells-row-unlock{--fa:""}.fa-chart-diagram{--fa:""}.fa-comment-nodes{--fa:""}.fa-file-fragment{--fa:""}.fa-file-half-dashed{--fa:""}.fa-hexagon-nodes{--fa:""}.fa-hexagon-nodes-bolt{--fa:""}.fa-square-binary{--fa:""}.fa-pentagon{--fa:""}.fa-non-binary{--fa:""}.fa-spiral{--fa:""}.fa-mobile-vibrate{--fa:""}.fa-single-quote-left{--fa:""}.fa-single-quote-right{--fa:""}.fa-bus-side{--fa:""}.fa-heptagon,.fa-septagon{--fa:""}.fa-glass-martini,.fa-martini-glass-empty{--fa:""}.fa-music{--fa:""}.fa-magnifying-glass,.fa-search{--fa:""}.fa-heart{--fa:""}.fa-star{--fa:""}.fa-user,.fa-user-alt,.fa-user-large{--fa:""}.fa-film,.fa-film-alt,.fa-film-simple{--fa:""}.fa-table-cells-large,.fa-th-large{--fa:""}.fa-table-cells,.fa-th{--fa:""}.fa-table-list,.fa-th-list{--fa:""}.fa-check{--fa:""}.fa-close,.fa-multiply,.fa-remove,.fa-times,.fa-xmark{--fa:""}.fa-magnifying-glass-plus,.fa-search-plus{--fa:""}.fa-magnifying-glass-minus,.fa-search-minus{--fa:""}.fa-power-off{--fa:""}.fa-signal,.fa-signal-5,.fa-signal-perfect{--fa:""}.fa-cog,.fa-gear{--fa:""}.fa-home,.fa-home-alt,.fa-home-lg-alt,.fa-house{--fa:""}.fa-clock,.fa-clock-four{--fa:""}.fa-road{--fa:""}.fa-download{--fa:""}.fa-inbox{--fa:""}.fa-arrow-right-rotate,.fa-arrow-rotate-forward,.fa-arrow-rotate-right,.fa-redo{--fa:""}.fa-arrows-rotate,.fa-refresh,.fa-sync{--fa:""}.fa-list-alt,.fa-rectangle-list{--fa:""}.fa-lock{--fa:""}.fa-flag{--fa:""}.fa-headphones,.fa-headphones-alt,.fa-headphones-simple{--fa:""}.fa-volume-off{--fa:""}.fa-volume-down,.fa-volume-low{--fa:""}.fa-volume-high,.fa-volume-up{--fa:""}.fa-qrcode{--fa:""}.fa-barcode{--fa:""}.fa-tag{--fa:""}.fa-tags{--fa:""}.fa-book{--fa:""}.fa-bookmark{--fa:""}.fa-print{--fa:""}.fa-camera,.fa-camera-alt{--fa:""}.fa-font{--fa:""}.fa-bold{--fa:""}.fa-italic{--fa:""}.fa-text-height{--fa:""}.fa-text-width{--fa:""}.fa-align-left{--fa:""}.fa-align-center{--fa:""}.fa-align-right{--fa:""}.fa-align-justify{--fa:""}.fa-list,.fa-list-squares{--fa:""}.fa-dedent,.fa-outdent{--fa:""}.fa-indent{--fa:""}.fa-video,.fa-video-camera{--fa:""}.fa-image{--fa:""}.fa-location-pin,.fa-map-marker{--fa:""}.fa-adjust,.fa-circle-half-stroke{--fa:""}.fa-droplet,.fa-tint{--fa:""}.fa-edit,.fa-pen-to-square{--fa:""}.fa-arrows,.fa-arrows-up-down-left-right{--fa:""}.fa-backward-step,.fa-step-backward{--fa:""}.fa-backward-fast,.fa-fast-backward{--fa:""}.fa-backward{--fa:""}.fa-play{--fa:""}.fa-pause{--fa:""}.fa-stop{--fa:""}.fa-forward{--fa:""}.fa-fast-forward,.fa-forward-fast{--fa:""}.fa-forward-step,.fa-step-forward{--fa:""}.fa-eject{--fa:""}.fa-chevron-left{--fa:""}.fa-chevron-right{--fa:""}.fa-circle-plus,.fa-plus-circle{--fa:""}.fa-circle-minus,.fa-minus-circle{--fa:""}.fa-circle-xmark,.fa-times-circle,.fa-xmark-circle{--fa:""}.fa-check-circle,.fa-circle-check{--fa:""}.fa-circle-question,.fa-question-circle{--fa:""}.fa-circle-info,.fa-info-circle{--fa:""}.fa-crosshairs{--fa:""}.fa-ban,.fa-cancel{--fa:""}.fa-arrow-left{--fa:""}.fa-arrow-right{--fa:""}.fa-arrow-up{--fa:""}.fa-arrow-down{--fa:""}.fa-mail-forward,.fa-share{--fa:""}.fa-expand{--fa:""}.fa-compress{--fa:""}.fa-minus,.fa-subtract{--fa:""}.fa-circle-exclamation,.fa-exclamation-circle{--fa:""}.fa-gift{--fa:""}.fa-leaf{--fa:""}.fa-fire{--fa:""}.fa-eye{--fa:""}.fa-eye-slash{--fa:""}.fa-exclamation-triangle,.fa-triangle-exclamation,.fa-warning{--fa:""}.fa-plane{--fa:""}.fa-calendar-alt,.fa-calendar-days{--fa:""}.fa-random,.fa-shuffle{--fa:""}.fa-comment{--fa:""}.fa-magnet{--fa:""}.fa-chevron-up{--fa:""}.fa-chevron-down{--fa:""}.fa-retweet{--fa:""}.fa-cart-shopping,.fa-shopping-cart{--fa:""}.fa-folder,.fa-folder-blank{--fa:""}.fa-folder-open{--fa:""}.fa-arrows-up-down,.fa-arrows-v{--fa:""}.fa-arrows-h,.fa-arrows-left-right{--fa:""}.fa-bar-chart,.fa-chart-bar{--fa:""}.fa-camera-retro{--fa:""}.fa-key{--fa:""}.fa-cogs,.fa-gears{--fa:""}.fa-comments{--fa:""}.fa-star-half{--fa:""}.fa-arrow-right-from-bracket,.fa-sign-out{--fa:""}.fa-thumb-tack,.fa-thumbtack{--fa:""}.fa-arrow-up-right-from-square,.fa-external-link{--fa:""}.fa-arrow-right-to-bracket,.fa-sign-in{--fa:""}.fa-trophy{--fa:""}.fa-upload{--fa:""}.fa-lemon{--fa:""}.fa-phone{--fa:""}.fa-phone-square,.fa-square-phone{--fa:""}.fa-unlock{--fa:""}.fa-credit-card,.fa-credit-card-alt{--fa:""}.fa-feed,.fa-rss{--fa:""}.fa-hard-drive,.fa-hdd{--fa:""}.fa-bullhorn{--fa:""}.fa-certificate{--fa:""}.fa-hand-point-right{--fa:""}.fa-hand-point-left{--fa:""}.fa-hand-point-up{--fa:""}.fa-hand-point-down{--fa:""}.fa-arrow-circle-left,.fa-circle-arrow-left{--fa:""}.fa-arrow-circle-right,.fa-circle-arrow-right{--fa:""}.fa-arrow-circle-up,.fa-circle-arrow-up{--fa:""}.fa-arrow-circle-down,.fa-circle-arrow-down{--fa:""}.fa-globe{--fa:""}.fa-wrench{--fa:""}.fa-list-check,.fa-tasks{--fa:""}.fa-filter{--fa:""}.fa-briefcase{--fa:""}.fa-arrows-alt,.fa-up-down-left-right{--fa:""}.fa-users{--fa:""}.fa-chain,.fa-link{--fa:""}.fa-cloud{--fa:""}.fa-flask{--fa:""}.fa-cut,.fa-scissors{--fa:""}.fa-copy{--fa:""}.fa-paperclip{--fa:""}.fa-floppy-disk,.fa-save{--fa:""}.fa-square{--fa:""}.fa-bars,.fa-navicon{--fa:""}.fa-list-dots,.fa-list-ul{--fa:""}.fa-list-1-2,.fa-list-numeric,.fa-list-ol{--fa:""}.fa-strikethrough{--fa:""}.fa-underline{--fa:""}.fa-table{--fa:""}.fa-magic,.fa-wand-magic{--fa:""}.fa-truck{--fa:""}.fa-money-bill{--fa:""}.fa-caret-down{--fa:""}.fa-caret-up{--fa:""}.fa-caret-left{--fa:""}.fa-caret-right{--fa:""}.fa-columns,.fa-table-columns{--fa:""}.fa-sort,.fa-unsorted{--fa:""}.fa-sort-desc,.fa-sort-down{--fa:""}.fa-sort-asc,.fa-sort-up{--fa:""}.fa-envelope{--fa:""}.fa-arrow-left-rotate,.fa-arrow-rotate-back,.fa-arrow-rotate-backward,.fa-arrow-rotate-left,.fa-undo{--fa:""}.fa-gavel,.fa-legal{--fa:""}.fa-bolt,.fa-zap{--fa:""}.fa-sitemap{--fa:""}.fa-umbrella{--fa:""}.fa-file-clipboard,.fa-paste{--fa:""}.fa-lightbulb{--fa:""}.fa-arrow-right-arrow-left,.fa-exchange{--fa:""}.fa-cloud-arrow-down,.fa-cloud-download,.fa-cloud-download-alt{--fa:""}.fa-cloud-arrow-up,.fa-cloud-upload,.fa-cloud-upload-alt{--fa:""}.fa-user-doctor,.fa-user-md{--fa:""}.fa-stethoscope{--fa:""}.fa-suitcase{--fa:""}.fa-bell{--fa:""}.fa-coffee,.fa-mug-saucer{--fa:""}.fa-hospital,.fa-hospital-alt,.fa-hospital-wide{--fa:""}.fa-ambulance,.fa-truck-medical{--fa:""}.fa-medkit,.fa-suitcase-medical{--fa:""}.fa-fighter-jet,.fa-jet-fighter{--fa:""}.fa-beer,.fa-beer-mug-empty{--fa:""}.fa-h-square,.fa-square-h{--fa:""}.fa-plus-square,.fa-square-plus{--fa:""}.fa-angle-double-left,.fa-angles-left{--fa:""}.fa-angle-double-right,.fa-angles-right{--fa:""}.fa-angle-double-up,.fa-angles-up{--fa:""}.fa-angle-double-down,.fa-angles-down{--fa:""}.fa-angle-left{--fa:""}.fa-angle-right{--fa:""}.fa-angle-up{--fa:""}.fa-angle-down{--fa:""}.fa-laptop{--fa:""}.fa-tablet-button{--fa:""}.fa-mobile-button{--fa:""}.fa-quote-left,.fa-quote-left-alt{--fa:""}.fa-quote-right,.fa-quote-right-alt{--fa:""}.fa-spinner{--fa:""}.fa-circle{--fa:""}.fa-face-smile,.fa-smile{--fa:""}.fa-face-frown,.fa-frown{--fa:""}.fa-face-meh,.fa-meh{--fa:""}.fa-gamepad{--fa:""}.fa-keyboard{--fa:""}.fa-flag-checkered{--fa:""}.fa-terminal{--fa:""}.fa-code{--fa:""}.fa-mail-reply-all,.fa-reply-all{--fa:""}.fa-location-arrow{--fa:""}.fa-crop{--fa:""}.fa-code-branch{--fa:""}.fa-chain-broken,.fa-chain-slash,.fa-link-slash,.fa-unlink{--fa:""}.fa-info{--fa:""}.fa-superscript{--fa:""}.fa-subscript{--fa:""}.fa-eraser{--fa:""}.fa-puzzle-piece{--fa:""}.fa-microphone{--fa:""}.fa-microphone-slash{--fa:""}.fa-shield,.fa-shield-blank{--fa:""}.fa-calendar{--fa:""}.fa-fire-extinguisher{--fa:""}.fa-rocket{--fa:""}.fa-chevron-circle-left,.fa-circle-chevron-left{--fa:""}.fa-chevron-circle-right,.fa-circle-chevron-right{--fa:""}.fa-chevron-circle-up,.fa-circle-chevron-up{--fa:""}.fa-chevron-circle-down,.fa-circle-chevron-down{--fa:""}.fa-anchor{--fa:""}.fa-unlock-alt,.fa-unlock-keyhole{--fa:""}.fa-bullseye{--fa:""}.fa-ellipsis,.fa-ellipsis-h{--fa:""}.fa-ellipsis-v,.fa-ellipsis-vertical{--fa:""}.fa-rss-square,.fa-square-rss{--fa:""}.fa-circle-play,.fa-play-circle{--fa:""}.fa-ticket{--fa:""}.fa-minus-square,.fa-square-minus{--fa:""}.fa-arrow-turn-up,.fa-level-up{--fa:""}.fa-arrow-turn-down,.fa-level-down{--fa:""}.fa-check-square,.fa-square-check{--fa:""}.fa-pen-square,.fa-pencil-square,.fa-square-pen{--fa:""}.fa-external-link-square,.fa-square-arrow-up-right{--fa:""}.fa-share-from-square,.fa-share-square{--fa:""}.fa-compass{--fa:""}.fa-caret-square-down,.fa-square-caret-down{--fa:""}.fa-caret-square-up,.fa-square-caret-up{--fa:""}.fa-caret-square-right,.fa-square-caret-right{--fa:""}.fa-eur,.fa-euro,.fa-euro-sign{--fa:""}.fa-gbp,.fa-pound-sign,.fa-sterling-sign{--fa:""}.fa-rupee,.fa-rupee-sign{--fa:""}.fa-cny,.fa-jpy,.fa-rmb,.fa-yen,.fa-yen-sign{--fa:""}.fa-rouble,.fa-rub,.fa-ruble,.fa-ruble-sign{--fa:""}.fa-krw,.fa-won,.fa-won-sign{--fa:""}.fa-file{--fa:""}.fa-file-alt,.fa-file-lines,.fa-file-text{--fa:""}.fa-arrow-down-a-z,.fa-sort-alpha-asc,.fa-sort-alpha-down{--fa:""}.fa-arrow-up-a-z,.fa-sort-alpha-up{--fa:""}.fa-arrow-down-wide-short,.fa-sort-amount-asc,.fa-sort-amount-down{--fa:""}.fa-arrow-up-wide-short,.fa-sort-amount-up{--fa:""}.fa-arrow-down-1-9,.fa-sort-numeric-asc,.fa-sort-numeric-down{--fa:""}.fa-arrow-up-1-9,.fa-sort-numeric-up{--fa:""}.fa-thumbs-up{--fa:""}.fa-thumbs-down{--fa:""}.fa-arrow-down-long,.fa-long-arrow-down{--fa:""}.fa-arrow-up-long,.fa-long-arrow-up{--fa:""}.fa-arrow-left-long,.fa-long-arrow-left{--fa:""}.fa-arrow-right-long,.fa-long-arrow-right{--fa:""}.fa-female,.fa-person-dress{--fa:""}.fa-male,.fa-person{--fa:""}.fa-sun{--fa:""}.fa-moon{--fa:""}.fa-archive,.fa-box-archive{--fa:""}.fa-bug{--fa:""}.fa-caret-square-left,.fa-square-caret-left{--fa:""}.fa-circle-dot,.fa-dot-circle{--fa:""}.fa-wheelchair{--fa:""}.fa-lira-sign{--fa:""}.fa-shuttle-space,.fa-space-shuttle{--fa:""}.fa-envelope-square,.fa-square-envelope{--fa:""}.fa-bank,.fa-building-columns,.fa-institution,.fa-museum,.fa-university{--fa:""}.fa-graduation-cap,.fa-mortar-board{--fa:""}.fa-language{--fa:""}.fa-fax{--fa:""}.fa-building{--fa:""}.fa-child{--fa:""}.fa-paw{--fa:""}.fa-cube{--fa:""}.fa-cubes{--fa:""}.fa-recycle{--fa:""}.fa-automobile,.fa-car{--fa:""}.fa-cab,.fa-taxi{--fa:""}.fa-tree{--fa:""}.fa-database{--fa:""}.fa-file-pdf{--fa:""}.fa-file-word{--fa:""}.fa-file-excel{--fa:""}.fa-file-powerpoint{--fa:""}.fa-file-image{--fa:""}.fa-file-archive,.fa-file-zipper{--fa:""}.fa-file-audio{--fa:""}.fa-file-video{--fa:""}.fa-file-code{--fa:""}.fa-life-ring{--fa:""}.fa-circle-notch{--fa:""}.fa-paper-plane{--fa:""}.fa-clock-rotate-left,.fa-history{--fa:""}.fa-header,.fa-heading{--fa:""}.fa-paragraph{--fa:""}.fa-sliders,.fa-sliders-h{--fa:""}.fa-share-alt,.fa-share-nodes{--fa:""}.fa-share-alt-square,.fa-square-share-nodes{--fa:""}.fa-bomb{--fa:""}.fa-futbol,.fa-futbol-ball,.fa-soccer-ball{--fa:""}.fa-teletype,.fa-tty{--fa:""}.fa-binoculars{--fa:""}.fa-plug{--fa:""}.fa-newspaper{--fa:""}.fa-wifi,.fa-wifi-3,.fa-wifi-strong{--fa:""}.fa-calculator{--fa:""}.fa-bell-slash{--fa:""}.fa-trash{--fa:""}.fa-copyright{--fa:""}.fa-eye-dropper,.fa-eye-dropper-empty,.fa-eyedropper{--fa:""}.fa-paint-brush,.fa-paintbrush{--fa:""}.fa-birthday-cake,.fa-cake,.fa-cake-candles{--fa:""}.fa-area-chart,.fa-chart-area{--fa:""}.fa-chart-pie,.fa-pie-chart{--fa:""}.fa-chart-line,.fa-line-chart{--fa:""}.fa-toggle-off{--fa:""}.fa-toggle-on{--fa:""}.fa-bicycle{--fa:""}.fa-bus{--fa:""}.fa-closed-captioning{--fa:""}.fa-ils,.fa-shekel,.fa-shekel-sign,.fa-sheqel,.fa-sheqel-sign{--fa:""}.fa-cart-plus{--fa:""}.fa-cart-arrow-down{--fa:""}.fa-diamond{--fa:""}.fa-ship{--fa:""}.fa-user-secret{--fa:""}.fa-motorcycle{--fa:""}.fa-street-view{--fa:""}.fa-heart-pulse,.fa-heartbeat{--fa:""}.fa-venus{--fa:""}.fa-mars{--fa:""}.fa-mercury{--fa:""}.fa-mars-and-venus{--fa:""}.fa-transgender,.fa-transgender-alt{--fa:""}.fa-venus-double{--fa:""}.fa-mars-double{--fa:""}.fa-venus-mars{--fa:""}.fa-mars-stroke{--fa:""}.fa-mars-stroke-up,.fa-mars-stroke-v{--fa:""}.fa-mars-stroke-h,.fa-mars-stroke-right{--fa:""}.fa-neuter{--fa:""}.fa-genderless{--fa:""}.fa-server{--fa:""}.fa-user-plus{--fa:""}.fa-user-times,.fa-user-xmark{--fa:""}.fa-bed{--fa:""}.fa-train{--fa:""}.fa-subway,.fa-train-subway{--fa:""}.fa-battery,.fa-battery-5,.fa-battery-full{--fa:""}.fa-battery-4,.fa-battery-three-quarters{--fa:""}.fa-battery-3,.fa-battery-half{--fa:""}.fa-battery-2,.fa-battery-quarter{--fa:""}.fa-battery-0,.fa-battery-empty{--fa:""}.fa-arrow-pointer,.fa-mouse-pointer{--fa:""}.fa-i-cursor{--fa:""}.fa-object-group{--fa:""}.fa-object-ungroup{--fa:""}.fa-note-sticky,.fa-sticky-note{--fa:""}.fa-clone{--fa:""}.fa-balance-scale,.fa-scale-balanced{--fa:""}.fa-hourglass-1,.fa-hourglass-start{--fa:""}.fa-hourglass-2,.fa-hourglass-half{--fa:""}.fa-hourglass-3,.fa-hourglass-end{--fa:""}.fa-hourglass,.fa-hourglass-empty{--fa:""}.fa-hand-back-fist,.fa-hand-rock{--fa:""}.fa-hand,.fa-hand-paper{--fa:""}.fa-hand-scissors{--fa:""}.fa-hand-lizard{--fa:""}.fa-hand-spock{--fa:""}.fa-hand-pointer{--fa:""}.fa-hand-peace{--fa:""}.fa-trademark{--fa:""}.fa-registered{--fa:""}.fa-television,.fa-tv,.fa-tv-alt{--fa:""}.fa-calendar-plus{--fa:""}.fa-calendar-minus{--fa:""}.fa-calendar-times,.fa-calendar-xmark{--fa:""}.fa-calendar-check{--fa:""}.fa-industry{--fa:""}.fa-map-pin{--fa:""}.fa-map-signs,.fa-signs-post{--fa:""}.fa-map{--fa:""}.fa-comment-alt,.fa-message{--fa:""}.fa-circle-pause,.fa-pause-circle{--fa:""}.fa-circle-stop,.fa-stop-circle{--fa:""}.fa-bag-shopping,.fa-shopping-bag{--fa:""}.fa-basket-shopping,.fa-shopping-basket{--fa:""}.fa-universal-access{--fa:""}.fa-blind,.fa-person-walking-with-cane{--fa:""}.fa-audio-description{--fa:""}.fa-phone-volume,.fa-volume-control-phone{--fa:""}.fa-braille{--fa:""}.fa-assistive-listening-systems,.fa-ear-listen{--fa:""}.fa-american-sign-language-interpreting,.fa-asl-interpreting,.fa-hands-american-sign-language-interpreting,.fa-hands-asl-interpreting{--fa:""}.fa-deaf,.fa-deafness,.fa-ear-deaf,.fa-hard-of-hearing{--fa:""}.fa-hands,.fa-sign-language,.fa-signing{--fa:""}.fa-eye-low-vision,.fa-low-vision{--fa:""}.fa-handshake,.fa-handshake-alt,.fa-handshake-simple{--fa:""}.fa-envelope-open{--fa:""}.fa-address-book,.fa-contact-book{--fa:""}.fa-address-card,.fa-contact-card,.fa-vcard{--fa:""}.fa-circle-user,.fa-user-circle{--fa:""}.fa-id-badge{--fa:""}.fa-drivers-license,.fa-id-card{--fa:""}.fa-temperature-4,.fa-temperature-full,.fa-thermometer-4,.fa-thermometer-full{--fa:""}.fa-temperature-3,.fa-temperature-three-quarters,.fa-thermometer-3,.fa-thermometer-three-quarters{--fa:""}.fa-temperature-2,.fa-temperature-half,.fa-thermometer-2,.fa-thermometer-half{--fa:""}.fa-temperature-1,.fa-temperature-quarter,.fa-thermometer-1,.fa-thermometer-quarter{--fa:""}.fa-temperature-0,.fa-temperature-empty,.fa-thermometer-0,.fa-thermometer-empty{--fa:""}.fa-shower{--fa:""}.fa-bath,.fa-bathtub{--fa:""}.fa-podcast{--fa:""}.fa-window-maximize{--fa:""}.fa-window-minimize{--fa:""}.fa-window-restore{--fa:""}.fa-square-xmark,.fa-times-square,.fa-xmark-square{--fa:""}.fa-microchip{--fa:""}.fa-snowflake{--fa:""}.fa-spoon,.fa-utensil-spoon{--fa:""}.fa-cutlery,.fa-utensils{--fa:""}.fa-rotate-back,.fa-rotate-backward,.fa-rotate-left,.fa-undo-alt{--fa:""}.fa-trash-alt,.fa-trash-can{--fa:""}.fa-rotate,.fa-sync-alt{--fa:""}.fa-stopwatch{--fa:""}.fa-right-from-bracket,.fa-sign-out-alt{--fa:""}.fa-right-to-bracket,.fa-sign-in-alt{--fa:""}.fa-redo-alt,.fa-rotate-forward,.fa-rotate-right{--fa:""}.fa-poo{--fa:""}.fa-images{--fa:""}.fa-pencil,.fa-pencil-alt{--fa:""}.fa-pen{--fa:""}.fa-pen-alt,.fa-pen-clip{--fa:""}.fa-octagon{--fa:""}.fa-down-long,.fa-long-arrow-alt-down{--fa:""}.fa-left-long,.fa-long-arrow-alt-left{--fa:""}.fa-long-arrow-alt-right,.fa-right-long{--fa:""}.fa-long-arrow-alt-up,.fa-up-long{--fa:""}.fa-hexagon{--fa:""}.fa-file-edit,.fa-file-pen{--fa:""}.fa-expand-arrows-alt,.fa-maximize{--fa:""}.fa-clipboard{--fa:""}.fa-arrows-alt-h,.fa-left-right{--fa:""}.fa-arrows-alt-v,.fa-up-down{--fa:""}.fa-alarm-clock{--fa:""}.fa-arrow-alt-circle-down,.fa-circle-down{--fa:""}.fa-arrow-alt-circle-left,.fa-circle-left{--fa:""}.fa-arrow-alt-circle-right,.fa-circle-right{--fa:""}.fa-arrow-alt-circle-up,.fa-circle-up{--fa:""}.fa-external-link-alt,.fa-up-right-from-square{--fa:""}.fa-external-link-square-alt,.fa-square-up-right{--fa:""}.fa-exchange-alt,.fa-right-left{--fa:""}.fa-repeat{--fa:""}.fa-code-commit{--fa:""}.fa-code-merge{--fa:""}.fa-desktop,.fa-desktop-alt{--fa:""}.fa-gem{--fa:""}.fa-level-down-alt,.fa-turn-down{--fa:""}.fa-level-up-alt,.fa-turn-up{--fa:""}.fa-lock-open{--fa:""}.fa-location-dot,.fa-map-marker-alt{--fa:""}.fa-microphone-alt,.fa-microphone-lines{--fa:""}.fa-mobile-alt,.fa-mobile-screen-button{--fa:""}.fa-mobile,.fa-mobile-android,.fa-mobile-phone{--fa:""}.fa-mobile-android-alt,.fa-mobile-screen{--fa:""}.fa-money-bill-1,.fa-money-bill-alt{--fa:""}.fa-phone-slash{--fa:""}.fa-image-portrait,.fa-portrait{--fa:""}.fa-mail-reply,.fa-reply{--fa:""}.fa-shield-alt,.fa-shield-halved{--fa:""}.fa-tablet-alt,.fa-tablet-screen-button{--fa:""}.fa-tablet,.fa-tablet-android{--fa:""}.fa-ticket-alt,.fa-ticket-simple{--fa:""}.fa-rectangle-times,.fa-rectangle-xmark,.fa-times-rectangle,.fa-window-close{--fa:""}.fa-compress-alt,.fa-down-left-and-up-right-to-center{--fa:""}.fa-expand-alt,.fa-up-right-and-down-left-from-center{--fa:""}.fa-baseball-bat-ball{--fa:""}.fa-baseball,.fa-baseball-ball{--fa:""}.fa-basketball,.fa-basketball-ball{--fa:""}.fa-bowling-ball{--fa:""}.fa-chess{--fa:""}.fa-chess-bishop{--fa:""}.fa-chess-board{--fa:""}.fa-chess-king{--fa:""}.fa-chess-knight{--fa:""}.fa-chess-pawn{--fa:""}.fa-chess-queen{--fa:""}.fa-chess-rook{--fa:""}.fa-dumbbell{--fa:""}.fa-football,.fa-football-ball{--fa:""}.fa-golf-ball,.fa-golf-ball-tee{--fa:""}.fa-hockey-puck{--fa:""}.fa-broom-ball,.fa-quidditch,.fa-quidditch-broom-ball{--fa:""}.fa-square-full{--fa:""}.fa-ping-pong-paddle-ball,.fa-table-tennis,.fa-table-tennis-paddle-ball{--fa:""}.fa-volleyball,.fa-volleyball-ball{--fa:""}.fa-allergies,.fa-hand-dots{--fa:""}.fa-band-aid,.fa-bandage{--fa:""}.fa-box{--fa:""}.fa-boxes,.fa-boxes-alt,.fa-boxes-stacked{--fa:""}.fa-briefcase-medical{--fa:""}.fa-burn,.fa-fire-flame-simple{--fa:""}.fa-capsules{--fa:""}.fa-clipboard-check{--fa:""}.fa-clipboard-list{--fa:""}.fa-diagnoses,.fa-person-dots-from-line{--fa:""}.fa-dna{--fa:""}.fa-dolly,.fa-dolly-box{--fa:""}.fa-cart-flatbed,.fa-dolly-flatbed{--fa:""}.fa-file-medical{--fa:""}.fa-file-medical-alt,.fa-file-waveform{--fa:""}.fa-first-aid,.fa-kit-medical{--fa:""}.fa-circle-h,.fa-hospital-symbol{--fa:""}.fa-id-card-alt,.fa-id-card-clip{--fa:""}.fa-notes-medical{--fa:""}.fa-pallet{--fa:""}.fa-pills{--fa:""}.fa-prescription-bottle{--fa:""}.fa-prescription-bottle-alt,.fa-prescription-bottle-medical{--fa:""}.fa-bed-pulse,.fa-procedures{--fa:""}.fa-shipping-fast,.fa-truck-fast{--fa:""}.fa-smoking{--fa:""}.fa-syringe{--fa:""}.fa-tablets{--fa:""}.fa-thermometer{--fa:""}.fa-vial{--fa:""}.fa-vials{--fa:""}.fa-warehouse{--fa:""}.fa-weight,.fa-weight-scale{--fa:""}.fa-x-ray{--fa:""}.fa-box-open{--fa:""}.fa-comment-dots,.fa-commenting{--fa:""}.fa-comment-slash{--fa:""}.fa-couch{--fa:""}.fa-circle-dollar-to-slot,.fa-donate{--fa:""}.fa-dove{--fa:""}.fa-hand-holding{--fa:""}.fa-hand-holding-heart{--fa:""}.fa-hand-holding-dollar,.fa-hand-holding-usd{--fa:""}.fa-hand-holding-droplet,.fa-hand-holding-water{--fa:""}.fa-hands-holding{--fa:""}.fa-hands-helping,.fa-handshake-angle{--fa:""}.fa-parachute-box{--fa:""}.fa-people-carry,.fa-people-carry-box{--fa:""}.fa-piggy-bank{--fa:""}.fa-ribbon{--fa:""}.fa-route{--fa:""}.fa-seedling,.fa-sprout{--fa:""}.fa-sign,.fa-sign-hanging{--fa:""}.fa-face-smile-wink,.fa-smile-wink{--fa:""}.fa-tape{--fa:""}.fa-truck-loading,.fa-truck-ramp-box{--fa:""}.fa-truck-moving{--fa:""}.fa-video-slash{--fa:""}.fa-wine-glass{--fa:""}.fa-user-astronaut{--fa:""}.fa-user-check{--fa:""}.fa-user-clock{--fa:""}.fa-user-cog,.fa-user-gear{--fa:""}.fa-user-edit,.fa-user-pen{--fa:""}.fa-user-friends,.fa-user-group{--fa:""}.fa-user-graduate{--fa:""}.fa-user-lock{--fa:""}.fa-user-minus{--fa:""}.fa-user-ninja{--fa:""}.fa-user-shield{--fa:""}.fa-user-alt-slash,.fa-user-large-slash,.fa-user-slash{--fa:""}.fa-user-tag{--fa:""}.fa-user-tie{--fa:""}.fa-users-cog,.fa-users-gear{--fa:""}.fa-balance-scale-left,.fa-scale-unbalanced{--fa:""}.fa-balance-scale-right,.fa-scale-unbalanced-flip{--fa:""}.fa-blender{--fa:""}.fa-book-open{--fa:""}.fa-broadcast-tower,.fa-tower-broadcast{--fa:""}.fa-broom{--fa:""}.fa-blackboard,.fa-chalkboard{--fa:""}.fa-chalkboard-teacher,.fa-chalkboard-user{--fa:""}.fa-church{--fa:""}.fa-coins{--fa:""}.fa-compact-disc{--fa:""}.fa-crow{--fa:""}.fa-crown{--fa:""}.fa-dice{--fa:""}.fa-dice-five{--fa:""}.fa-dice-four{--fa:""}.fa-dice-one{--fa:""}.fa-dice-six{--fa:""}.fa-dice-three{--fa:""}.fa-dice-two{--fa:""}.fa-divide{--fa:""}.fa-door-closed{--fa:""}.fa-door-open{--fa:""}.fa-feather{--fa:""}.fa-frog{--fa:""}.fa-gas-pump{--fa:""}.fa-glasses{--fa:""}.fa-greater-than-equal{--fa:""}.fa-helicopter{--fa:""}.fa-infinity{--fa:""}.fa-kiwi-bird{--fa:""}.fa-less-than-equal{--fa:""}.fa-memory{--fa:""}.fa-microphone-alt-slash,.fa-microphone-lines-slash{--fa:""}.fa-money-bill-wave{--fa:""}.fa-money-bill-1-wave,.fa-money-bill-wave-alt{--fa:""}.fa-money-check{--fa:""}.fa-money-check-alt,.fa-money-check-dollar{--fa:""}.fa-not-equal{--fa:""}.fa-palette{--fa:""}.fa-parking,.fa-square-parking{--fa:""}.fa-diagram-project,.fa-project-diagram{--fa:""}.fa-receipt{--fa:""}.fa-robot{--fa:""}.fa-ruler{--fa:""}.fa-ruler-combined{--fa:""}.fa-ruler-horizontal{--fa:""}.fa-ruler-vertical{--fa:""}.fa-school{--fa:""}.fa-screwdriver{--fa:""}.fa-shoe-prints{--fa:""}.fa-skull{--fa:""}.fa-ban-smoking,.fa-smoking-ban{--fa:""}.fa-store{--fa:""}.fa-shop,.fa-store-alt{--fa:""}.fa-bars-staggered,.fa-reorder,.fa-stream{--fa:""}.fa-stroopwafel{--fa:""}.fa-toolbox{--fa:""}.fa-shirt,.fa-t-shirt,.fa-tshirt{--fa:""}.fa-person-walking,.fa-walking{--fa:""}.fa-wallet{--fa:""}.fa-angry,.fa-face-angry{--fa:""}.fa-archway{--fa:""}.fa-atlas,.fa-book-atlas{--fa:""}.fa-award{--fa:""}.fa-backspace,.fa-delete-left{--fa:""}.fa-bezier-curve{--fa:""}.fa-bong{--fa:""}.fa-brush{--fa:""}.fa-bus-alt,.fa-bus-simple{--fa:""}.fa-cannabis{--fa:""}.fa-check-double{--fa:""}.fa-cocktail,.fa-martini-glass-citrus{--fa:""}.fa-bell-concierge,.fa-concierge-bell{--fa:""}.fa-cookie{--fa:""}.fa-cookie-bite{--fa:""}.fa-crop-alt,.fa-crop-simple{--fa:""}.fa-digital-tachograph,.fa-tachograph-digital{--fa:""}.fa-dizzy,.fa-face-dizzy{--fa:""}.fa-compass-drafting,.fa-drafting-compass{--fa:""}.fa-drum{--fa:""}.fa-drum-steelpan{--fa:""}.fa-feather-alt,.fa-feather-pointed{--fa:""}.fa-file-contract{--fa:""}.fa-file-arrow-down,.fa-file-download{--fa:""}.fa-arrow-right-from-file,.fa-file-export{--fa:""}.fa-arrow-right-to-file,.fa-file-import{--fa:""}.fa-file-invoice{--fa:""}.fa-file-invoice-dollar{--fa:""}.fa-file-prescription{--fa:""}.fa-file-signature{--fa:""}.fa-file-arrow-up,.fa-file-upload{--fa:""}.fa-fill{--fa:""}.fa-fill-drip{--fa:""}.fa-fingerprint{--fa:""}.fa-fish{--fa:""}.fa-face-flushed,.fa-flushed{--fa:""}.fa-face-frown-open,.fa-frown-open{--fa:""}.fa-glass-martini-alt,.fa-martini-glass{--fa:""}.fa-earth-africa,.fa-globe-africa{--fa:""}.fa-earth,.fa-earth-america,.fa-earth-americas,.fa-globe-americas{--fa:""}.fa-earth-asia,.fa-globe-asia{--fa:""}.fa-face-grimace,.fa-grimace{--fa:""}.fa-face-grin,.fa-grin{--fa:""}.fa-face-grin-wide,.fa-grin-alt{--fa:""}.fa-face-grin-beam,.fa-grin-beam{--fa:""}.fa-face-grin-beam-sweat,.fa-grin-beam-sweat{--fa:""}.fa-face-grin-hearts,.fa-grin-hearts{--fa:""}.fa-face-grin-squint,.fa-grin-squint{--fa:""}.fa-face-grin-squint-tears,.fa-grin-squint-tears{--fa:""}.fa-face-grin-stars,.fa-grin-stars{--fa:""}.fa-face-grin-tears,.fa-grin-tears{--fa:""}.fa-face-grin-tongue,.fa-grin-tongue{--fa:""}.fa-face-grin-tongue-squint,.fa-grin-tongue-squint{--fa:""}.fa-face-grin-tongue-wink,.fa-grin-tongue-wink{--fa:""}.fa-face-grin-wink,.fa-grin-wink{--fa:""}.fa-grid-horizontal,.fa-grip,.fa-grip-horizontal{--fa:""}.fa-grid-vertical,.fa-grip-vertical{--fa:""}.fa-headset{--fa:""}.fa-highlighter{--fa:""}.fa-hot-tub,.fa-hot-tub-person{--fa:""}.fa-hotel{--fa:""}.fa-joint{--fa:""}.fa-face-kiss,.fa-kiss{--fa:""}.fa-face-kiss-beam,.fa-kiss-beam{--fa:""}.fa-face-kiss-wink-heart,.fa-kiss-wink-heart{--fa:""}.fa-face-laugh,.fa-laugh{--fa:""}.fa-face-laugh-beam,.fa-laugh-beam{--fa:""}.fa-face-laugh-squint,.fa-laugh-squint{--fa:""}.fa-face-laugh-wink,.fa-laugh-wink{--fa:""}.fa-cart-flatbed-suitcase,.fa-luggage-cart{--fa:""}.fa-map-location,.fa-map-marked{--fa:""}.fa-map-location-dot,.fa-map-marked-alt{--fa:""}.fa-marker{--fa:""}.fa-medal{--fa:""}.fa-face-meh-blank,.fa-meh-blank{--fa:""}.fa-face-rolling-eyes,.fa-meh-rolling-eyes{--fa:""}.fa-monument{--fa:""}.fa-mortar-pestle{--fa:""}.fa-paint-roller{--fa:""}.fa-passport{--fa:""}.fa-pen-fancy{--fa:""}.fa-pen-nib{--fa:""}.fa-pen-ruler,.fa-pencil-ruler{--fa:""}.fa-plane-arrival{--fa:""}.fa-plane-departure{--fa:""}.fa-prescription{--fa:""}.fa-face-sad-cry,.fa-sad-cry{--fa:""}.fa-face-sad-tear,.fa-sad-tear{--fa:""}.fa-shuttle-van,.fa-van-shuttle{--fa:""}.fa-signature{--fa:""}.fa-face-smile-beam,.fa-smile-beam{--fa:""}.fa-solar-panel{--fa:""}.fa-spa{--fa:""}.fa-splotch{--fa:""}.fa-spray-can{--fa:""}.fa-stamp{--fa:""}.fa-star-half-alt,.fa-star-half-stroke{--fa:""}.fa-suitcase-rolling{--fa:""}.fa-face-surprise,.fa-surprise{--fa:""}.fa-swatchbook{--fa:""}.fa-person-swimming,.fa-swimmer{--fa:""}.fa-ladder-water,.fa-swimming-pool,.fa-water-ladder{--fa:""}.fa-droplet-slash,.fa-tint-slash{--fa:""}.fa-face-tired,.fa-tired{--fa:""}.fa-tooth{--fa:""}.fa-umbrella-beach{--fa:""}.fa-weight-hanging{--fa:""}.fa-wine-glass-alt,.fa-wine-glass-empty{--fa:""}.fa-air-freshener,.fa-spray-can-sparkles{--fa:""}.fa-apple-alt,.fa-apple-whole{--fa:""}.fa-atom{--fa:""}.fa-bone{--fa:""}.fa-book-open-reader,.fa-book-reader{--fa:""}.fa-brain{--fa:""}.fa-car-alt,.fa-car-rear{--fa:""}.fa-battery-car,.fa-car-battery{--fa:""}.fa-car-burst,.fa-car-crash{--fa:""}.fa-car-side{--fa:""}.fa-charging-station{--fa:""}.fa-diamond-turn-right,.fa-directions{--fa:""}.fa-draw-polygon,.fa-vector-polygon{--fa:""}.fa-laptop-code{--fa:""}.fa-layer-group{--fa:""}.fa-location,.fa-location-crosshairs{--fa:""}.fa-lungs{--fa:""}.fa-microscope{--fa:""}.fa-oil-can{--fa:""}.fa-poop{--fa:""}.fa-shapes,.fa-triangle-circle-square{--fa:""}.fa-star-of-life{--fa:""}.fa-dashboard,.fa-gauge,.fa-gauge-med,.fa-tachometer-alt-average{--fa:""}.fa-gauge-high,.fa-tachometer-alt,.fa-tachometer-alt-fast{--fa:""}.fa-gauge-simple,.fa-gauge-simple-med,.fa-tachometer-average{--fa:""}.fa-gauge-simple-high,.fa-tachometer,.fa-tachometer-fast{--fa:""}.fa-teeth{--fa:""}.fa-teeth-open{--fa:""}.fa-masks-theater,.fa-theater-masks{--fa:""}.fa-traffic-light{--fa:""}.fa-truck-monster{--fa:""}.fa-truck-pickup{--fa:""}.fa-ad,.fa-rectangle-ad{--fa:""}.fa-ankh{--fa:""}.fa-bible,.fa-book-bible{--fa:""}.fa-briefcase-clock,.fa-business-time{--fa:""}.fa-city{--fa:""}.fa-comment-dollar{--fa:""}.fa-comments-dollar{--fa:""}.fa-cross{--fa:""}.fa-dharmachakra{--fa:""}.fa-envelope-open-text{--fa:""}.fa-folder-minus{--fa:""}.fa-folder-plus{--fa:""}.fa-filter-circle-dollar,.fa-funnel-dollar{--fa:""}.fa-gopuram{--fa:""}.fa-hamsa{--fa:""}.fa-bahai,.fa-haykal{--fa:""}.fa-jedi{--fa:""}.fa-book-journal-whills,.fa-journal-whills{--fa:""}.fa-kaaba{--fa:""}.fa-khanda{--fa:""}.fa-landmark{--fa:""}.fa-envelopes-bulk,.fa-mail-bulk{--fa:""}.fa-menorah{--fa:""}.fa-mosque{--fa:""}.fa-om{--fa:""}.fa-pastafarianism,.fa-spaghetti-monster-flying{--fa:""}.fa-peace{--fa:""}.fa-place-of-worship{--fa:""}.fa-poll,.fa-square-poll-vertical{--fa:""}.fa-poll-h,.fa-square-poll-horizontal{--fa:""}.fa-person-praying,.fa-pray{--fa:""}.fa-hands-praying,.fa-praying-hands{--fa:""}.fa-book-quran,.fa-quran{--fa:""}.fa-magnifying-glass-dollar,.fa-search-dollar{--fa:""}.fa-magnifying-glass-location,.fa-search-location{--fa:""}.fa-socks{--fa:""}.fa-square-root-alt,.fa-square-root-variable{--fa:""}.fa-star-and-crescent{--fa:""}.fa-star-of-david{--fa:""}.fa-synagogue{--fa:""}.fa-scroll-torah,.fa-torah{--fa:""}.fa-torii-gate{--fa:""}.fa-vihara{--fa:""}.fa-volume-mute,.fa-volume-times,.fa-volume-xmark{--fa:""}.fa-yin-yang{--fa:""}.fa-blender-phone{--fa:""}.fa-book-dead,.fa-book-skull{--fa:""}.fa-campground{--fa:""}.fa-cat{--fa:""}.fa-chair{--fa:""}.fa-cloud-moon{--fa:""}.fa-cloud-sun{--fa:""}.fa-cow{--fa:""}.fa-dice-d20{--fa:""}.fa-dice-d6{--fa:""}.fa-dog{--fa:""}.fa-dragon{--fa:""}.fa-drumstick-bite{--fa:""}.fa-dungeon{--fa:""}.fa-file-csv{--fa:""}.fa-fist-raised,.fa-hand-fist{--fa:""}.fa-ghost{--fa:""}.fa-hammer{--fa:""}.fa-hanukiah{--fa:""}.fa-hat-wizard{--fa:""}.fa-hiking,.fa-person-hiking{--fa:""}.fa-hippo{--fa:""}.fa-horse{--fa:""}.fa-house-chimney-crack,.fa-house-damage{--fa:""}.fa-hryvnia,.fa-hryvnia-sign{--fa:""}.fa-mask{--fa:""}.fa-mountain{--fa:""}.fa-network-wired{--fa:""}.fa-otter{--fa:""}.fa-ring{--fa:""}.fa-person-running,.fa-running{--fa:""}.fa-scroll{--fa:""}.fa-skull-crossbones{--fa:""}.fa-slash{--fa:""}.fa-spider{--fa:""}.fa-toilet-paper,.fa-toilet-paper-alt,.fa-toilet-paper-blank{--fa:""}.fa-tractor{--fa:""}.fa-user-injured{--fa:""}.fa-vr-cardboard{--fa:""}.fa-wand-sparkles{--fa:""}.fa-wind{--fa:""}.fa-wine-bottle{--fa:""}.fa-cloud-meatball{--fa:""}.fa-cloud-moon-rain{--fa:""}.fa-cloud-rain{--fa:""}.fa-cloud-showers-heavy{--fa:""}.fa-cloud-sun-rain{--fa:""}.fa-democrat{--fa:""}.fa-flag-usa{--fa:""}.fa-hurricane{--fa:""}.fa-landmark-alt,.fa-landmark-dome{--fa:""}.fa-meteor{--fa:""}.fa-person-booth{--fa:""}.fa-poo-bolt,.fa-poo-storm{--fa:""}.fa-rainbow{--fa:""}.fa-republican{--fa:""}.fa-smog{--fa:""}.fa-temperature-high{--fa:""}.fa-temperature-low{--fa:""}.fa-cloud-bolt,.fa-thunderstorm{--fa:""}.fa-tornado{--fa:""}.fa-volcano{--fa:""}.fa-check-to-slot,.fa-vote-yea{--fa:""}.fa-water{--fa:""}.fa-baby{--fa:""}.fa-baby-carriage,.fa-carriage-baby{--fa:""}.fa-biohazard{--fa:""}.fa-blog{--fa:""}.fa-calendar-day{--fa:""}.fa-calendar-week{--fa:""}.fa-candy-cane{--fa:""}.fa-carrot{--fa:""}.fa-cash-register{--fa:""}.fa-compress-arrows-alt,.fa-minimize{--fa:""}.fa-dumpster{--fa:""}.fa-dumpster-fire{--fa:""}.fa-ethernet{--fa:""}.fa-gifts{--fa:""}.fa-champagne-glasses,.fa-glass-cheers{--fa:""}.fa-glass-whiskey,.fa-whiskey-glass{--fa:""}.fa-earth-europe,.fa-globe-europe{--fa:""}.fa-grip-lines{--fa:""}.fa-grip-lines-vertical{--fa:""}.fa-guitar{--fa:""}.fa-heart-broken,.fa-heart-crack{--fa:""}.fa-holly-berry{--fa:""}.fa-horse-head{--fa:""}.fa-icicles{--fa:""}.fa-igloo{--fa:""}.fa-mitten{--fa:""}.fa-mug-hot{--fa:""}.fa-radiation{--fa:""}.fa-circle-radiation,.fa-radiation-alt{--fa:""}.fa-restroom{--fa:""}.fa-satellite{--fa:""}.fa-satellite-dish{--fa:""}.fa-sd-card{--fa:""}.fa-sim-card{--fa:""}.fa-person-skating,.fa-skating{--fa:""}.fa-person-skiing,.fa-skiing{--fa:""}.fa-person-skiing-nordic,.fa-skiing-nordic{--fa:""}.fa-sleigh{--fa:""}.fa-comment-sms,.fa-sms{--fa:""}.fa-person-snowboarding,.fa-snowboarding{--fa:""}.fa-snowman{--fa:""}.fa-snowplow{--fa:""}.fa-tenge,.fa-tenge-sign{--fa:""}.fa-toilet{--fa:""}.fa-screwdriver-wrench,.fa-tools{--fa:""}.fa-cable-car,.fa-tram{--fa:""}.fa-fire-alt,.fa-fire-flame-curved{--fa:""}.fa-bacon{--fa:""}.fa-book-medical{--fa:""}.fa-bread-slice{--fa:""}.fa-cheese{--fa:""}.fa-clinic-medical,.fa-house-chimney-medical{--fa:""}.fa-clipboard-user{--fa:""}.fa-comment-medical{--fa:""}.fa-crutch{--fa:""}.fa-disease{--fa:""}.fa-egg{--fa:""}.fa-folder-tree{--fa:""}.fa-burger,.fa-hamburger{--fa:""}.fa-hand-middle-finger{--fa:""}.fa-hard-hat,.fa-hat-hard,.fa-helmet-safety{--fa:""}.fa-hospital-user{--fa:""}.fa-hotdog{--fa:""}.fa-ice-cream{--fa:""}.fa-laptop-medical{--fa:""}.fa-pager{--fa:""}.fa-pepper-hot{--fa:""}.fa-pizza-slice{--fa:""}.fa-sack-dollar{--fa:""}.fa-book-tanakh,.fa-tanakh{--fa:""}.fa-bars-progress,.fa-tasks-alt{--fa:""}.fa-trash-arrow-up,.fa-trash-restore{--fa:""}.fa-trash-can-arrow-up,.fa-trash-restore-alt{--fa:""}.fa-user-nurse{--fa:""}.fa-wave-square{--fa:""}.fa-biking,.fa-person-biking{--fa:""}.fa-border-all{--fa:""}.fa-border-none{--fa:""}.fa-border-style,.fa-border-top-left{--fa:""}.fa-digging,.fa-person-digging{--fa:""}.fa-fan{--fa:""}.fa-heart-music-camera-bolt,.fa-icons{--fa:""}.fa-phone-alt,.fa-phone-flip{--fa:""}.fa-phone-square-alt,.fa-square-phone-flip{--fa:""}.fa-photo-film,.fa-photo-video{--fa:""}.fa-remove-format,.fa-text-slash{--fa:""}.fa-arrow-down-z-a,.fa-sort-alpha-desc,.fa-sort-alpha-down-alt{--fa:""}.fa-arrow-up-z-a,.fa-sort-alpha-up-alt{--fa:""}.fa-arrow-down-short-wide,.fa-sort-amount-desc,.fa-sort-amount-down-alt{--fa:""}.fa-arrow-up-short-wide,.fa-sort-amount-up-alt{--fa:""}.fa-arrow-down-9-1,.fa-sort-numeric-desc,.fa-sort-numeric-down-alt{--fa:""}.fa-arrow-up-9-1,.fa-sort-numeric-up-alt{--fa:""}.fa-spell-check{--fa:""}.fa-voicemail{--fa:""}.fa-hat-cowboy{--fa:""}.fa-hat-cowboy-side{--fa:""}.fa-computer-mouse,.fa-mouse{--fa:""}.fa-radio{--fa:""}.fa-record-vinyl{--fa:""}.fa-walkie-talkie{--fa:""}.fa-caravan{--fa:""}:host,:root{--fa-family-brands:"Font Awesome 7 Brands";--fa-font-brands:normal 400 1em/1 var(--fa-family-brands)}@font-face{font-family:"Font Awesome 7 Brands";font-style:normal;font-weight:400;font-display:block;src:url(./fa-brands-400-BfBXV7Mm.woff2)}.fa-brands,.fa-classic.fa-brands,.fab{--fa-family:var(--fa-family-brands);--fa-style:400}.fa-firefox-browser{--fa:""}.fa-ideal{--fa:""}.fa-microblog{--fa:""}.fa-pied-piper-square,.fa-square-pied-piper{--fa:""}.fa-unity{--fa:""}.fa-dailymotion{--fa:""}.fa-instagram-square,.fa-square-instagram{--fa:""}.fa-mixer{--fa:""}.fa-shopify{--fa:""}.fa-deezer{--fa:""}.fa-edge-legacy{--fa:""}.fa-google-pay{--fa:""}.fa-rust{--fa:""}.fa-tiktok{--fa:""}.fa-unsplash{--fa:""}.fa-cloudflare{--fa:""}.fa-guilded{--fa:""}.fa-hive{--fa:""}.fa-42-group,.fa-innosoft{--fa:""}.fa-instalod{--fa:""}.fa-octopus-deploy{--fa:""}.fa-perbyte{--fa:""}.fa-uncharted{--fa:""}.fa-watchman-monitoring{--fa:""}.fa-wodu{--fa:""}.fa-wirsindhandwerk,.fa-wsh{--fa:""}.fa-bots{--fa:""}.fa-cmplid{--fa:""}.fa-bilibili{--fa:""}.fa-golang{--fa:""}.fa-pix{--fa:""}.fa-sitrox{--fa:""}.fa-hashnode{--fa:""}.fa-meta{--fa:""}.fa-padlet{--fa:""}.fa-nfc-directional{--fa:""}.fa-nfc-symbol{--fa:""}.fa-screenpal{--fa:""}.fa-space-awesome{--fa:""}.fa-square-font-awesome{--fa:""}.fa-gitlab-square,.fa-square-gitlab{--fa:""}.fa-odysee{--fa:""}.fa-stubber{--fa:""}.fa-debian{--fa:""}.fa-shoelace{--fa:""}.fa-threads{--fa:""}.fa-square-threads{--fa:""}.fa-square-x-twitter{--fa:""}.fa-x-twitter{--fa:""}.fa-opensuse{--fa:""}.fa-letterboxd{--fa:""}.fa-square-letterboxd{--fa:""}.fa-mintbit{--fa:""}.fa-google-scholar{--fa:""}.fa-brave{--fa:""}.fa-brave-reverse{--fa:""}.fa-pixiv{--fa:""}.fa-upwork{--fa:""}.fa-webflow{--fa:""}.fa-signal-messenger{--fa:""}.fa-bluesky{--fa:""}.fa-jxl{--fa:""}.fa-square-upwork{--fa:""}.fa-web-awesome{--fa:""}.fa-square-web-awesome{--fa:""}.fa-square-web-awesome-stroke{--fa:""}.fa-dart-lang{--fa:""}.fa-flutter{--fa:""}.fa-files-pinwheel{--fa:""}.fa-css{--fa:""}.fa-square-bluesky{--fa:""}.fa-openai{--fa:""}.fa-square-linkedin{--fa:""}.fa-cash-app{--fa:""}.fa-disqus{--fa:""}.fa-11ty,.fa-eleventy{--fa:""}.fa-kakao-talk{--fa:""}.fa-linktree{--fa:""}.fa-notion{--fa:""}.fa-pandora{--fa:""}.fa-pixelfed{--fa:""}.fa-tidal{--fa:""}.fa-vsco{--fa:""}.fa-w3c{--fa:""}.fa-lumon{--fa:""}.fa-lumon-drop{--fa:""}.fa-square-figma{--fa:""}.fa-tex{--fa:""}.fa-duolingo{--fa:""}.fa-square-twitter,.fa-twitter-square{--fa:""}.fa-facebook-square,.fa-square-facebook{--fa:""}.fa-linkedin{--fa:""}.fa-github-square,.fa-square-github{--fa:""}.fa-twitter{--fa:""}.fa-facebook{--fa:""}.fa-github{--fa:""}.fa-pinterest{--fa:""}.fa-pinterest-square,.fa-square-pinterest{--fa:""}.fa-google-plus-square,.fa-square-google-plus{--fa:""}.fa-google-plus-g{--fa:""}.fa-linkedin-in{--fa:""}.fa-github-alt{--fa:""}.fa-maxcdn{--fa:""}.fa-html5{--fa:""}.fa-css3{--fa:""}.fa-btc{--fa:""}.fa-youtube{--fa:""}.fa-xing{--fa:""}.fa-square-xing,.fa-xing-square{--fa:""}.fa-dropbox{--fa:""}.fa-stack-overflow{--fa:""}.fa-instagram{--fa:""}.fa-flickr{--fa:""}.fa-adn{--fa:""}.fa-bitbucket{--fa:""}.fa-tumblr{--fa:""}.fa-square-tumblr,.fa-tumblr-square{--fa:""}.fa-apple{--fa:""}.fa-windows{--fa:""}.fa-android{--fa:""}.fa-linux{--fa:""}.fa-dribbble{--fa:""}.fa-skype{--fa:""}.fa-foursquare{--fa:""}.fa-trello{--fa:""}.fa-gratipay{--fa:""}.fa-vk{--fa:""}.fa-weibo{--fa:""}.fa-renren{--fa:""}.fa-pagelines{--fa:""}.fa-stack-exchange{--fa:""}.fa-square-vimeo,.fa-vimeo-square{--fa:""}.fa-slack,.fa-slack-hash{--fa:""}.fa-wordpress{--fa:""}.fa-openid{--fa:""}.fa-yahoo{--fa:""}.fa-google{--fa:""}.fa-reddit{--fa:""}.fa-reddit-square,.fa-square-reddit{--fa:""}.fa-stumbleupon-circle{--fa:""}.fa-stumbleupon{--fa:""}.fa-delicious{--fa:""}.fa-digg{--fa:""}.fa-pied-piper-pp{--fa:""}.fa-pied-piper-alt{--fa:""}.fa-drupal{--fa:""}.fa-joomla{--fa:""}.fa-behance{--fa:""}.fa-behance-square,.fa-square-behance{--fa:""}.fa-steam{--fa:""}.fa-square-steam,.fa-steam-square{--fa:""}.fa-spotify{--fa:""}.fa-deviantart{--fa:""}.fa-soundcloud{--fa:""}.fa-vine{--fa:""}.fa-codepen{--fa:""}.fa-jsfiddle{--fa:""}.fa-rebel{--fa:""}.fa-empire{--fa:""}.fa-git-square,.fa-square-git{--fa:""}.fa-git{--fa:""}.fa-hacker-news{--fa:""}.fa-tencent-weibo{--fa:""}.fa-qq{--fa:""}.fa-weixin{--fa:""}.fa-slideshare{--fa:""}.fa-twitch{--fa:""}.fa-yelp{--fa:""}.fa-paypal{--fa:""}.fa-google-wallet{--fa:""}.fa-cc-visa{--fa:""}.fa-cc-mastercard{--fa:""}.fa-cc-discover{--fa:""}.fa-cc-amex{--fa:""}.fa-cc-paypal{--fa:""}.fa-cc-stripe{--fa:""}.fa-lastfm{--fa:""}.fa-lastfm-square,.fa-square-lastfm{--fa:""}.fa-ioxhost{--fa:""}.fa-angellist{--fa:""}.fa-buysellads{--fa:""}.fa-connectdevelop{--fa:""}.fa-dashcube{--fa:""}.fa-forumbee{--fa:""}.fa-leanpub{--fa:""}.fa-sellsy{--fa:""}.fa-shirtsinbulk{--fa:""}.fa-simplybuilt{--fa:""}.fa-skyatlas{--fa:""}.fa-pinterest-p{--fa:""}.fa-whatsapp{--fa:""}.fa-viacoin{--fa:""}.fa-medium,.fa-medium-m{--fa:""}.fa-y-combinator{--fa:""}.fa-optin-monster{--fa:""}.fa-opencart{--fa:""}.fa-expeditedssl{--fa:""}.fa-cc-jcb{--fa:""}.fa-cc-diners-club{--fa:""}.fa-creative-commons{--fa:""}.fa-gg{--fa:""}.fa-gg-circle{--fa:""}.fa-odnoklassniki{--fa:""}.fa-odnoklassniki-square,.fa-square-odnoklassniki{--fa:""}.fa-get-pocket{--fa:""}.fa-wikipedia-w{--fa:""}.fa-safari{--fa:""}.fa-chrome{--fa:""}.fa-firefox{--fa:""}.fa-opera{--fa:""}.fa-internet-explorer{--fa:""}.fa-contao{--fa:""}.fa-500px{--fa:""}.fa-amazon{--fa:""}.fa-houzz{--fa:""}.fa-vimeo-v{--fa:""}.fa-black-tie{--fa:""}.fa-fonticons{--fa:""}.fa-reddit-alien{--fa:""}.fa-edge{--fa:""}.fa-codiepie{--fa:""}.fa-modx{--fa:""}.fa-fort-awesome{--fa:""}.fa-usb{--fa:""}.fa-product-hunt{--fa:""}.fa-mixcloud{--fa:""}.fa-scribd{--fa:""}.fa-bluetooth{--fa:""}.fa-bluetooth-b{--fa:""}.fa-gitlab{--fa:""}.fa-wpbeginner{--fa:""}.fa-wpforms{--fa:""}.fa-envira{--fa:""}.fa-glide{--fa:""}.fa-glide-g{--fa:""}.fa-viadeo{--fa:""}.fa-square-viadeo,.fa-viadeo-square{--fa:""}.fa-snapchat,.fa-snapchat-ghost{--fa:""}.fa-snapchat-square,.fa-square-snapchat{--fa:""}.fa-pied-piper{--fa:""}.fa-first-order{--fa:""}.fa-yoast{--fa:""}.fa-themeisle{--fa:""}.fa-google-plus{--fa:""}.fa-font-awesome,.fa-font-awesome-flag,.fa-font-awesome-logo-full{--fa:""}.fa-linode{--fa:""}.fa-quora{--fa:""}.fa-free-code-camp{--fa:""}.fa-telegram,.fa-telegram-plane{--fa:""}.fa-bandcamp{--fa:""}.fa-grav{--fa:""}.fa-etsy{--fa:""}.fa-imdb{--fa:""}.fa-ravelry{--fa:""}.fa-sellcast{--fa:""}.fa-superpowers{--fa:""}.fa-wpexplorer{--fa:""}.fa-meetup{--fa:""}.fa-font-awesome-alt,.fa-square-font-awesome-stroke{--fa:""}.fa-accessible-icon{--fa:""}.fa-accusoft{--fa:""}.fa-adversal{--fa:""}.fa-affiliatetheme{--fa:""}.fa-algolia{--fa:""}.fa-amilia{--fa:""}.fa-angrycreative{--fa:""}.fa-app-store{--fa:""}.fa-app-store-ios{--fa:""}.fa-apper{--fa:""}.fa-asymmetrik{--fa:""}.fa-audible{--fa:""}.fa-avianex{--fa:""}.fa-aws{--fa:""}.fa-bimobject{--fa:""}.fa-bitcoin{--fa:""}.fa-bity{--fa:""}.fa-blackberry{--fa:""}.fa-blogger{--fa:""}.fa-blogger-b{--fa:""}.fa-buromobelexperte{--fa:""}.fa-centercode{--fa:""}.fa-cloudscale{--fa:""}.fa-cloudsmith{--fa:""}.fa-cloudversify{--fa:""}.fa-cpanel{--fa:""}.fa-css3-alt{--fa:""}.fa-cuttlefish{--fa:""}.fa-d-and-d{--fa:""}.fa-deploydog{--fa:""}.fa-deskpro{--fa:""}.fa-digital-ocean{--fa:""}.fa-discord{--fa:""}.fa-discourse{--fa:""}.fa-dochub{--fa:""}.fa-docker{--fa:""}.fa-draft2digital{--fa:""}.fa-dribbble-square,.fa-square-dribbble{--fa:""}.fa-dyalog{--fa:""}.fa-earlybirds{--fa:""}.fa-erlang{--fa:""}.fa-facebook-f{--fa:""}.fa-facebook-messenger{--fa:""}.fa-firstdraft{--fa:""}.fa-fonticons-fi{--fa:""}.fa-fort-awesome-alt{--fa:""}.fa-freebsd{--fa:""}.fa-gitkraken{--fa:""}.fa-gofore{--fa:""}.fa-goodreads{--fa:""}.fa-goodreads-g{--fa:""}.fa-google-drive{--fa:""}.fa-google-play{--fa:""}.fa-gripfire{--fa:""}.fa-grunt{--fa:""}.fa-gulp{--fa:""}.fa-hacker-news-square,.fa-square-hacker-news{--fa:""}.fa-hire-a-helper{--fa:""}.fa-hotjar{--fa:""}.fa-hubspot{--fa:""}.fa-itunes{--fa:""}.fa-itunes-note{--fa:""}.fa-jenkins{--fa:""}.fa-joget{--fa:""}.fa-js{--fa:""}.fa-js-square,.fa-square-js{--fa:""}.fa-keycdn{--fa:""}.fa-kickstarter,.fa-square-kickstarter{--fa:""}.fa-kickstarter-k{--fa:""}.fa-laravel{--fa:""}.fa-line{--fa:""}.fa-lyft{--fa:""}.fa-magento{--fa:""}.fa-medapps{--fa:""}.fa-medrt{--fa:""}.fa-microsoft{--fa:""}.fa-mix{--fa:""}.fa-mizuni{--fa:""}.fa-monero{--fa:""}.fa-napster{--fa:""}.fa-node-js{--fa:""}.fa-npm{--fa:""}.fa-ns8{--fa:""}.fa-nutritionix{--fa:""}.fa-page4{--fa:""}.fa-palfed{--fa:""}.fa-patreon{--fa:""}.fa-periscope{--fa:""}.fa-phabricator{--fa:""}.fa-phoenix-framework{--fa:""}.fa-playstation{--fa:""}.fa-pushed{--fa:""}.fa-python{--fa:""}.fa-red-river{--fa:""}.fa-rendact,.fa-wpressr{--fa:""}.fa-replyd{--fa:""}.fa-resolving{--fa:""}.fa-rocketchat{--fa:""}.fa-rockrms{--fa:""}.fa-schlix{--fa:""}.fa-searchengin{--fa:""}.fa-servicestack{--fa:""}.fa-sistrix{--fa:""}.fa-speakap{--fa:""}.fa-staylinked{--fa:""}.fa-steam-symbol{--fa:""}.fa-sticker-mule{--fa:""}.fa-studiovinari{--fa:""}.fa-supple{--fa:""}.fa-uber{--fa:""}.fa-uikit{--fa:""}.fa-uniregistry{--fa:""}.fa-untappd{--fa:""}.fa-ussunnah{--fa:""}.fa-vaadin{--fa:""}.fa-viber{--fa:""}.fa-vimeo{--fa:""}.fa-vnv{--fa:""}.fa-square-whatsapp,.fa-whatsapp-square{--fa:""}.fa-whmcs{--fa:""}.fa-wordpress-simple{--fa:""}.fa-xbox{--fa:""}.fa-yandex{--fa:""}.fa-yandex-international{--fa:""}.fa-apple-pay{--fa:""}.fa-cc-apple-pay{--fa:""}.fa-fly{--fa:""}.fa-node{--fa:""}.fa-osi{--fa:""}.fa-react{--fa:""}.fa-autoprefixer{--fa:""}.fa-less{--fa:""}.fa-sass{--fa:""}.fa-vuejs{--fa:""}.fa-angular{--fa:""}.fa-aviato{--fa:""}.fa-ember{--fa:""}.fa-gitter{--fa:""}.fa-hooli{--fa:""}.fa-strava{--fa:""}.fa-stripe{--fa:""}.fa-stripe-s{--fa:""}.fa-typo3{--fa:""}.fa-amazon-pay{--fa:""}.fa-cc-amazon-pay{--fa:""}.fa-ethereum{--fa:""}.fa-korvue{--fa:""}.fa-elementor{--fa:""}.fa-square-youtube,.fa-youtube-square{--fa:""}.fa-flipboard{--fa:""}.fa-hips{--fa:""}.fa-php{--fa:""}.fa-quinscape{--fa:""}.fa-readme{--fa:""}.fa-java{--fa:""}.fa-pied-piper-hat{--fa:""}.fa-creative-commons-by{--fa:""}.fa-creative-commons-nc{--fa:""}.fa-creative-commons-nc-eu{--fa:""}.fa-creative-commons-nc-jp{--fa:""}.fa-creative-commons-nd{--fa:""}.fa-creative-commons-pd{--fa:""}.fa-creative-commons-pd-alt{--fa:""}.fa-creative-commons-remix{--fa:""}.fa-creative-commons-sa{--fa:""}.fa-creative-commons-sampling{--fa:""}.fa-creative-commons-sampling-plus{--fa:""}.fa-creative-commons-share{--fa:""}.fa-creative-commons-zero{--fa:""}.fa-ebay{--fa:""}.fa-keybase{--fa:""}.fa-mastodon{--fa:""}.fa-r-project{--fa:""}.fa-researchgate{--fa:""}.fa-teamspeak{--fa:""}.fa-first-order-alt{--fa:""}.fa-fulcrum{--fa:""}.fa-galactic-republic{--fa:""}.fa-galactic-senate{--fa:""}.fa-jedi-order{--fa:""}.fa-mandalorian{--fa:""}.fa-old-republic{--fa:""}.fa-phoenix-squadron{--fa:""}.fa-sith{--fa:""}.fa-trade-federation{--fa:""}.fa-wolf-pack-battalion{--fa:""}.fa-hornbill{--fa:""}.fa-mailchimp{--fa:""}.fa-megaport{--fa:""}.fa-nimblr{--fa:""}.fa-rev{--fa:""}.fa-shopware{--fa:""}.fa-squarespace{--fa:""}.fa-themeco{--fa:""}.fa-weebly{--fa:""}.fa-wix{--fa:""}.fa-ello{--fa:""}.fa-hackerrank{--fa:""}.fa-kaggle{--fa:""}.fa-markdown{--fa:""}.fa-neos{--fa:""}.fa-zhihu{--fa:""}.fa-alipay{--fa:""}.fa-the-red-yeti{--fa:""}.fa-critical-role{--fa:""}.fa-d-and-d-beyond{--fa:""}.fa-dev{--fa:""}.fa-fantasy-flight-games{--fa:""}.fa-wizards-of-the-coast{--fa:""}.fa-think-peaks{--fa:""}.fa-reacteurope{--fa:""}.fa-artstation{--fa:""}.fa-atlassian{--fa:""}.fa-canadian-maple-leaf{--fa:""}.fa-centos{--fa:""}.fa-confluence{--fa:""}.fa-dhl{--fa:""}.fa-diaspora{--fa:""}.fa-fedex{--fa:""}.fa-fedora{--fa:""}.fa-figma{--fa:""}.fa-intercom{--fa:""}.fa-invision{--fa:""}.fa-jira{--fa:""}.fa-mendeley{--fa:""}.fa-raspberry-pi{--fa:""}.fa-redhat{--fa:""}.fa-sketch{--fa:""}.fa-sourcetree{--fa:""}.fa-suse{--fa:""}.fa-ubuntu{--fa:""}.fa-ups{--fa:""}.fa-usps{--fa:""}.fa-yarn{--fa:""}.fa-airbnb{--fa:""}.fa-battle-net{--fa:""}.fa-bootstrap{--fa:""}.fa-buffer{--fa:""}.fa-chromecast{--fa:""}.fa-evernote{--fa:""}.fa-itch-io{--fa:""}.fa-salesforce{--fa:""}.fa-speaker-deck{--fa:""}.fa-symfony{--fa:""}.fa-waze{--fa:""}.fa-yammer{--fa:""}.fa-git-alt{--fa:""}.fa-stackpath{--fa:""}.fa-cotton-bureau{--fa:""}.fa-buy-n-large{--fa:""}.fa-mdb{--fa:""}.fa-orcid{--fa:""}.fa-swift{--fa:""}.fa-umbraco{--fa:""}:host,:root{--fa-font-regular:normal 400 1em/1 var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:400;font-display:block;src:url(./fa-regular-400-BVHPE7da.woff2)}.far{--fa-family:var(--fa-family-classic)}.fa-regular,.far{--fa-style:400}:host,:root{--fa-family-classic:"Font Awesome 7 Free";--fa-font-solid:normal 900 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:900;font-display:block;src:url(./fa-solid-900-8GirhLYJ.woff2)}.fas{--fa-style:900}.fa-classic,.fas{--fa-family:var(--fa-family-classic)}.fa-solid{--fa-style:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(./fa-brands-400-BfBXV7Mm.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(./fa-solid-900-8GirhLYJ.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(./fa-regular-400-BVHPE7da.woff2) format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(./fa-solid-900-8GirhLYJ.woff2) format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(./fa-brands-400-BfBXV7Mm.woff2) format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(./fa-regular-400-BVHPE7da.woff2) format("woff2");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:FontAwesome;font-display:block;src:url(data:font/woff2;base64,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) format("woff2");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a}.help-ui{left:20px;bottom:20px;padding:10px}.help-ui .help-accordion-icon:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M464%20256a208%20208%200%201%200%20-416%200%20208%20208%200%201%200%20416%200zM0%20256a256%20256%200%201%201%20512%200%20256%20256%200%201%201%20-512%200zm256-80c-17.7%200-32%2014.3-32%2032%200%2013.3-10.7%2024-24%2024s-24-10.7-24-24c0-44.2%2035.8-80%2080-80s80%2035.8%2080%2080c0%2047.2-36%2067.2-56%2074.5l0%203.8c0%2013.3-10.7%2024-24%2024s-24-10.7-24-24l0-8.1c0-20.5%2014.8-35.2%2030.1-40.2%206.4-2.1%2013.2-5.5%2018.2-10.3%204.3-4.2%207.7-10%207.7-19.6%200-17.7-14.3-32-32-32zM224%20368a32%2032%200%201%201%2064%200%2032%2032%200%201%201%20-64%200z'/%3e%3c/svg%3e");display:inline-block;filter:invert(var(--dark-mode));height:16px;width:16px;background-size:16px 16px;vertical-align:text-top;margin-right:4px}.help-ui #hashHolder{font-size:small;margin-top:4px;display:flex;gap:2px}.accordion-content{display:grid;transition:grid-template-rows .3s ease,grid-template-columns .3s cubic-bezier(.7,0,1,.6),padding-top .3s ease;grid-template-rows:0fr;grid-template-columns:0fr;padding-top:0}.accordion-state:checked~.accordion-content{grid-template-rows:1fr;grid-template-columns:1fr;transition:grid-template-rows .3s ease,grid-template-columns .3s cubic-bezier(0,.7,.4,1),padding-top .3s ease;padding-top:8px}.accordion-content *{overflow:hidden;white-space:nowrap;text-overflow:clip}.accordion-button{-webkit-user-select:none;user-select:none;--chevron-scale: 1}.accordion-button.flip-chevron{--chevron-scale: -1}.accordion-button.chevron-right{padding-right:2em}.accordion-button.chevron-left{padding-left:2em}.accordion-button.chevron-right:after{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20448%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M201.4%20406.6c12.5%2012.5%2032.8%2012.5%2045.3%200l192-192c12.5-12.5%2012.5-32.8%200-45.3s-32.8-12.5-45.3%200L224%20338.7%2054.6%20169.4c-12.5-12.5-32.8-12.5-45.3%200s-12.5%2032.8%200%2045.3l192%20192z'/%3e%3c/svg%3e");right:1em;position:absolute;display:inline-block;filter:invert(var(--dark-mode));width:16px;height:16px;background-size:16px 16px;vertical-align:text-top;transition:transform .5s ease;transform:scaleY(var(--chevron-scale))}.accordion-button.chevron-left:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20448%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M201.4%20406.6c12.5%2012.5%2032.8%2012.5%2045.3%200l192-192c12.5-12.5%2012.5-32.8%200-45.3s-32.8-12.5-45.3%200L224%20338.7%2054.6%20169.4c-12.5-12.5-32.8-12.5-45.3%200s-12.5%2032.8%200%2045.3l192%20192z'/%3e%3c/svg%3e");left:1em;position:absolute;display:inline-block;filter:invert(var(--dark-mode));width:16px;height:16px;background-size:16px 16px;vertical-align:text-top;transition:transform .5s ease;transform:scaleY(var(--chevron-scale))}.accordion-state:checked~label .accordion-button:after{transform:scaleY(calc(var(--chevron-scale) * -1))}.accordion-state:checked~label .accordion-button:before{transform:scaleY(calc(var(--chevron-scale) * -1))}#loading-indicator-wrapper{position:fixed;inset:0;z-index:9999;width:100vw;height:100vh;flex-direction:column;justify-content:center;align-items:center;gap:20px;font-size:xx-large;font-weight:700;color:#fff;background-color:#000c}#turning-circle{border:20px solid white;border-top:20px solid #3498db;border-radius:9999px;width:100px;height:100px;animation:spin 2s linear infinite}button.delete-button,button.add-button{background-color:transparent;border:none;cursor:pointer;padding:0}.label-type-editor-ui{padding:10px;top:150px;right:40px;max-height:calc(100vh - 210px);overflow:auto}.label-type-editor-ui *{color:var(--color-foreground)}.label-type-editor-ui .codicon{vertical-align:middle}.label-type-editor-ui hr{height:1px;border:0;background-color:var(--color-foreground)}.label-type-editor-ui input{background-color:transparent;outline:none;border:none}.label-type-editor-ui .label-type-name{font-size:12pt}.label-type-editor-ui .label-type-values,.label-type-editor-ui .label-type-value-add{margin-left:10px}.label-type-value input{background-color:var(--color-background);text-align:center;border:1px solid var(--color-foreground);border-radius:15px;padding:3px;margin:4px}.sprotty-node rect,.sprotty-node line,.sprotty-node circle{stroke:var(--color-foreground);stroke-width:1;fill:color-mix(in srgb,var(--color-primary),var(--color, transparent) 40%)}.sprotty-node .node-label text{font-size:5pt}.sprotty-node .node-label rect,.sprotty-node .node-label .label-delete circle{fill:var(--color-primary);stroke:var(--color-foreground);stroke-width:.5}.sprotty-node .node-label .label-delete text{fill:var(--color-foreground);font-size:5px}.sprotty-edge{stroke:var(--color-foreground);fill:none;stroke-width:1}.sprotty-edge .sprotty-edge path.select-path{stroke:transparent;stroke-width:8}.sprotty-edge .arrow{fill:var(--color-foreground);stroke:none}.sprotty-edge .label-background rect{fill:var(--color-background);stroke-width:0}.sprotty-edge>.sprotty-routing-handle{fill:var(--color-foreground);stroke:none}.sprotty-port rect{stroke:var(--port-border, var(--color-foreground));fill:color-mix(in srgb,var(--port-color, var(--color-primary)),var(--color-background) 25%);stroke-width:.5}.sprotty-port .port-text{font-size:4pt}.sprotty-node.selected circle,.sprotty-node.selected rect,.sprotty-node.selected line,.sprotty-edge.selected{stroke-width:2}.sprotty-port.selected rect{stroke-width:1}text{stroke-width:0;fill:var(--color-foreground);font-family:Arial,sans-serif;font-size:11pt;text-anchor:middle;dominant-baseline:central;-webkit-user-select:none;user-select:none}.sprotty-missing{stroke-width:1;stroke:var(--color-error);fill:var(--color-error)}.label-edit .label-validation-results{position:absolute;background-color:var(--color-primary);padding:8px;border-radius:5px}.label-edit .label-validation-results:before{width:16px;height:16px;background-size:16px 16px;margin-right:4px;content:"";display:inline-block;vertical-align:middle;background-color:var(--color-error);-webkit-mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M256%20512a256%20256%200%201%201%200-512%20256%20256%200%201%201%200%20512zm0-192a32%2032%200%201%200%200%2064%2032%2032%200%201%200%200-64zm0-192c-18.2%200-32.7%2015.5-31.4%2033.7l7.4%20104c.9%2012.6%2011.4%2022.3%2023.9%2022.3%2012.6%200%2023-9.7%2023.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z'/%3e%3c/svg%3e");mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M256%20512a256%20256%200%201%201%200-512%20256%20256%200%201%201%200%20512zm0-192a32%2032%200%201%200%200%2064%2032%2032%200%201%200%200-64zm0-192c-18.2%200-32.7%2015.5-31.4%2033.7l7.4%20104c.9%2012.6%2011.4%2022.3%2023.9%2022.3%2012.6%200%2023-9.7%2023.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z'/%3e%3c/svg%3e")}.dfd-node-annotation-ui{white-space:nowrap}.dfd-node-annotation-ui p{margin:12px}.dfd-node-annotation-ui i.fa{margin-right:5px}.command-palette{transition:opacity .2s ease-in-out;display:flex;flex-direction:column;row-gap:4px;width:350px}.command-palette input{color:var(--color-foreground);background:var(--color-primary)}.command-palette-suggestions-holder{width:100%}.command-palette-suggestion{display:grid;grid-template-columns:24px 1fr 24px 0px;background:var(--color-primary);overflow:visible;height:20px;min-width:100%;white-space:nowrap;width:100%;cursor:pointer}.command-palette-suggestion:hover,.command-palette-suggestion.selected{background:var(--color-background)}.command-palette-suggestion-children{position:relative;top:0;right:0;display:none;background:var(--color-primary);width:fit-content;height:fit-content;border-left:4px solid var(--color-spacer);box-shadow:0 4px 8px #0003,0 6px 20px #00000030}.command-palette-suggestion:hover>.command-palette-suggestion-children,.command-palette-suggestion.expanded>.command-palette-suggestion-children{display:block}.command-palette .fa-solid{text-align:center}.command-palette{transition:opacity .3s linear;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;display:flex;align-items:center}.command-palette input{width:100%;display:flex}.command-palette span.loading{position:absolute;right:5px}.command-palette-suggestions{background:#fff;z-index:1000;overflow:auto;box-sizing:border-box;border:1px solid rgba(60,60,60,.6);box-shadow:0 4px 8px #0003,0 6px 20px #00000030}.command-palette-suggestions .icon{padding-right:.3em;display:flex;align-self:center}.command-palette-suggestions em{font-weight:700;font-style:normal}.command-palette-suggestions>div{padding:0 4px;display:flex}.command-palette-suggestions .group{background:#eee}.command-palette-suggestions>div:hover:not(.group),.command-palette-suggestions>div.selected{cursor:pointer}.command-palette-suggestions>div:hover:not(.group){background:#e0e0e0}.command-palette-suggestions>div.selected{background:#bbdefb}div.settings-ui{left:20px;bottom:70px;padding:10px}.settings-accordion-icon:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M195.1%209.5C198.1-5.3%20211.2-16%20226.4-16l59.8%200c15.2%200%2028.3%2010.7%2031.3%2025.5L332%2079.5c14.1%206%2027.3%2013.7%2039.3%2022.8l67.8-22.5c14.4-4.8%2030.2%201.2%2037.8%2014.4l29.9%2051.8c7.6%2013.2%204.9%2029.8-6.5%2039.9L447%20233.3c.9%207.4%201.3%2015%201.3%2022.7s-.5%2015.3-1.3%2022.7l53.4%2047.5c11.4%2010.1%2014%2026.8%206.5%2039.9l-29.9%2051.8c-7.6%2013.1-23.4%2019.2-37.8%2014.4l-67.8-22.5c-12.1%209.1-25.3%2016.7-39.3%2022.8l-14.4%2069.9c-3.1%2014.9-16.2%2025.5-31.3%2025.5l-59.8%200c-15.2%200-28.3-10.7-31.3-25.5l-14.4-69.9c-14.1-6-27.2-13.7-39.3-22.8L73.5%20432.3c-14.4%204.8-30.2-1.2-37.8-14.4L5.8%20366.1c-7.6-13.2-4.9-29.8%206.5-39.9l53.4-47.5c-.9-7.4-1.3-15-1.3-22.7s.5-15.3%201.3-22.7L12.3%20185.8c-11.4-10.1-14-26.8-6.5-39.9L35.7%2094.1c7.6-13.2%2023.4-19.2%2037.8-14.4l67.8%2022.5c12.1-9.1%2025.3-16.7%2039.3-22.8L195.1%209.5zM256.3%20336a80%2080%200%201%200%20-.6-160%2080%2080%200%201%200%20.6%20160z'/%3e%3c/svg%3e");display:inline-block;filter:invert(var(--dark-mode));height:16px;width:16px;background-size:16px 16px;vertical-align:text-top;margin-right:4px}#settings-content{display:grid;gap:8px 6px;align-items:center}#settings-content>label{grid-column-start:1}#settings-content>input,#settings-content>select,#settings-content>label.switch{grid-column-start:2}#settings-content select{background-color:var(--color-background);color:var(--color-foreground);border:1px solid var(--color-foreground);border-radius:6px}.switch input:disabled+.slider{background-color:color-mix(in srgb,var(--color-primary) 50%,#555 50%)}.switch input:disabled+.slider:before{background-color:color-mix(in srgb,var(--color-background) 50%,#555 50%)}.switch{position:relative;display:inline-block;width:30px;height:17px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-background);-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:"";height:13px;width:13px;left:2px;bottom:2px;background-color:var(--color-primary);-webkit-transition:.3s;transition:.3s}input:checked+.slider{background-color:var(--color-background)}input:checked+.slider:before{-webkit-transform:translateX(13px);-ms-transform:translateX(13px);transform:translate(13px);background-color:var(--color-foreground)}.slider.round{border-radius:17px}.slider.round:before{border-radius:50%}.tool-palette{top:40px;padding:3px;right:40px;-webkit-user-select:none;user-select:none;display:grid;grid-template-columns:1fr 1fr 1fr}.tool-palette .tool{width:32px;height:32px;border-radius:5px;padding:2px;margin:2px}.tool-palette .tool svg line,.tool-palette .tool svg path,.tool-palette .tool svg rect,.tool-palette .tool svg circle{stroke:var(--color-foreground);fill:transparent}.tool-palette .tool svg .fill{fill:var(--color-foreground)}.tool-palette .tool svg text{fill:var(--color-foreground);font-size:10px;font-family:sans-serif;text-anchor:middle;dominant-baseline:central}.tool-palette .tool:hover{cursor:pointer;background-color:var(--color-tool-palette-hover)}.tool-palette .tool.active{background-color:var(--color-tool-palette-selected)}.tool-palette .tool .shortcut{position:relative;bottom:16px;left:-4px;font-size:.75em;transition:opacity .3s ease-in-out;opacity:0}body.help-enabled .tool-palette .tool .shortcut{opacity:1}div.constraint-menu{right:20px;bottom:20px;padding:10px}.accordion-content:has(.monaco-editor.focused) *{overflow:visible}#constraint-menu-expand-title{padding-right:85px}#run-button-container{position:absolute;right:6px;bottom:6px;width:80px;z-index:50}#run-button{background-color:green;color:#fff;border:none;border-radius:8px;padding:5px 10px;text-align:center;text-decoration:none;display:inline-block;width:100%;cursor:pointer}#run-button:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20448%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M91.2%2036.9c-12.4-6.8-27.4-6.5-39.6%20.7S32%2057.9%2032%2072l0%20368c0%2014.1%207.5%2027.2%2019.6%2034.4s27.2%207.5%2039.6%20.7l336-184c12.8-7%2020.8-20.5%2020.8-35.1s-8-28.1-20.8-35.1l-336-184z'/%3e%3c/svg%3e");display:inline-block;filter:invert(1);height:16px;width:16px;background-size:16px 16px;vertical-align:text-top}#constraint-menu-input{min-width:300px}#constraint-menu-input *{overflow:visible}#constraint-menu-input .overflow-guard{overflow:hidden}#validation-label{height:1rem;color:var(--color-error)}#validation-label.valid{color:var(--color-valid)}#constraint-menu-list{grid-row-start:1;grid-row-end:2;grid-column-start:2;overflow:scroll;max-height:210px}#constraint-menu-list *{color:var(--color-foreground)}.constrain-label input{background-color:var(--color-background);text-align:center;border:1px solid var(--color-foreground);border-radius:15px;padding:3px;margin:4px}.constrain-label.selected input{border:2px solid var(--color-foreground)}.constrain-label button{background-color:transparent;border:none;cursor:pointer;padding:0}.constraint-add{padding:0;border:none;background-color:transparent;cursor:pointer;display:flex;align-items:center;gap:5px}#constraint-options-button{position:absolute;top:6px;right:6px;background:transparent;border:none;font-size:1.2em;cursor:pointer;color:var(--color-foreground);padding:2px}#constraint-options-menu{position:absolute;top:30px;right:6px;background:var(--color-background);border:1px solid var(--color-foreground);border-radius:4px;padding:8px;z-index:100;box-shadow:0 2px 6px #0003}#constraint-options-menu .options-item{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:.9em;color:var(--color-foreground)}#constraint-options-menu .options-item:last-child{margin-bottom:0}.assignment-edit-ui{position:absolute;padding:10px;-webkit-user-select:none;user-select:none;background:var(--color-primary)}.assignment-edit-ui div.unavailable-inputs{padding-bottom:5px}.assignment-edit-ui div.validation-label.validation-error{color:var(--color-error)}.assignment-edit-ui div.validation-label.validation-success{color:var(--color-valid)}.violation-ui{right:20px;bottom:70px;padding:10px;max-width:30vw}.violation-ui .tab-pane{display:none;font-size:13px;max-width:100%}.violation-ui .tab-pane.active{display:block}.violation-ui .violation-tabs{display:flex;margin-bottom:10px}.violation-ui .tab-btn{flex:1;padding:5px;cursor:pointer;border:none;background:none;font-size:12px;color:var(--sprotty-label-color)}.violation-ui .tab-btn.active{border-bottom:2px solid #007acc;font-weight:700}.violation-ui #ai-api-key{background-color:var(--color-background);color:var(--color-foreground);border:1px solid var(--color-foreground);border-radius:6px}.violation-ui .api-key-container{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;margin-bottom:15px;padding:5px}.violation-ui .api-key-container label{font-size:11px;font-weight:700;white-space:nowrap}.violation-ui .api-key-container input{width:100%;padding:4px 8px;font-size:12px;border:1px solid var(--color-foreground);border-radius:3px;background:var(--sprotty-input-background, var(--color-background));color:var(--sprotty-label-color);box-sizing:border-box}.violation-ui .button-container{display:flex;justify-content:flex-end;margin-bottom:20px}.violation-ui .generate-btn{background-color:var(--sprotty-button-background, #007acc);color:var(--sprotty-button-foreground, #ffffff);border:none;padding:6px 12px;font-size:12px;border-radius:4px;cursor:pointer}.violation-ui .summary-text{width:100%;display:block;white-space:normal;word-wrap:break-word;overflow-wrap:anywhere;max-height:250px;overflow-y:auto}.violation-ui .summary-text p{margin:0;display:block;width:100%;white-space:normal}.violation-ui .status-info{display:block;width:100%;color:#636e72;font-style:italic;font-size:.9em;line-height:1.4;text-align:center;padding:20px 10px;box-sizing:border-box;margin:0 auto}.violation-ui .violation-item{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1);text-align:left} diff --git a/deploy/dac/assets/index-jxDt6WCR.js b/deploy/dac/assets/index-jxDt6WCR.js new file mode 100644 index 00000000..4a5b9eb7 --- /dev/null +++ b/deploy/dac/assets/index-jxDt6WCR.js @@ -0,0 +1,120 @@ +import{l as wh,R as Kzt,e as RX,M as z0t}from"./monaco-editor-BSmz0_Ko.js";(function(){const h=document.createElement("link").relList;if(h&&h.supports&&h.supports("modulepreload"))return;for(const m of document.querySelectorAll('link[rel="modulepreload"]'))w(m);new MutationObserver(m=>{for(const P of m)if(P.type==="childList")for(const g of P.addedNodes)g.tagName==="LINK"&&g.rel==="modulepreload"&&w(g)}).observe(document,{childList:!0,subtree:!0});function b(m){const P={};return m.integrity&&(P.integrity=m.integrity),m.referrerPolicy&&(P.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?P.credentials="include":m.crossOrigin==="anonymous"?P.credentials="omit":P.credentials="same-origin",P}function w(m){if(m.ep)return;m.ep=!0;const P=b(m);fetch(m.href,P)}})();var fS=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function qzt(f){return f&&f.__esModule&&Object.prototype.hasOwnProperty.call(f,"default")?f.default:f}function V0t(f){if(Object.prototype.hasOwnProperty.call(f,"__esModule"))return f;var h=f.default;if(typeof h=="function"){var b=function w(){var m=!1;try{m=this instanceof w}catch{}return m?Reflect.construct(h,arguments,this.constructor):h.apply(this,arguments)};b.prototype=h.prototype}else b={};return Object.defineProperty(b,"__esModule",{value:!0}),Object.keys(f).forEach(function(w){var m=Object.getOwnPropertyDescriptor(f,w);Object.defineProperty(b,w,m.get?m:{enumerable:!0,get:function(){return f[w]}})}),b}var _ht={};var Eht;function vye(){if(Eht)return _ht;Eht=1;var f;return(function(h){(function(b){var w=typeof globalThis=="object"?globalThis:typeof fS=="object"?fS:typeof self=="object"?self:typeof this=="object"?this:C(),m=P(h);typeof w.Reflect<"u"&&(m=P(w.Reflect,m)),b(m,w),typeof w.Reflect>"u"&&(w.Reflect=h);function P(T,M){return function(_,I){Object.defineProperty(T,_,{configurable:!0,writable:!0,value:I}),M&&M(_,I)}}function g(){try{return Function("return this;")()}catch{}}function E(){try{return(0,eval)("(function() { return this; })()")}catch{}}function C(){return g()||E()}})(function(b,w){var m=Object.prototype.hasOwnProperty,P=typeof Symbol=="function",g=P&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",E=P&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",C=typeof Object.create=="function",T={__proto__:[]}instanceof Array,M=!C&&!T,_={create:C?function(){return FM(Object.create(null))}:T?function(){return FM({__proto__:null})}:function(){return FM({})},has:M?function(ft,It){return m.call(ft,It)}:function(ft,It){return It in ft},get:M?function(ft,It){return m.call(ft,It)?ft[It]:void 0}:function(ft,It){return ft[It]}},I=Object.getPrototypeOf(Function),O=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:lN(),j=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:MJ(),k=typeof WeakMap=="function"?WeakMap:NM(),x=P?Symbol.for("@reflect-metadata:registry"):void 0,R=IA(),H=vh(R);function F(ft,It,zt,zn){if(Gn(zt)){if(!Ml(ft))throw new TypeError;if(!Si(It))throw new TypeError;return me(ft,It)}else{if(!Ml(ft))throw new TypeError;if(!Lr(It))throw new TypeError;if(!Lr(zn)&&!Gn(zn)&&!pc(zn))throw new TypeError;return pc(zn)&&(zn=void 0),zt=Er(zt),ke(ft,It,zt,zn)}}b("decorate",F);function $(ft,It){function zt(zn,or){if(!Lr(zn))throw new TypeError;if(!Gn(or)&&!_o(or))throw new TypeError;Nt(ft,It,zn,or)}return zt}b("metadata",$);function W(ft,It,zt,zn){if(!Lr(zt))throw new TypeError;return Gn(zn)||(zn=Er(zn)),Nt(ft,It,zt,zn)}b("defineMetadata",W);function re(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),tt(ft,It,zt)}b("hasMetadata",re);function ae(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),De(ft,It,zt)}b("hasOwnMetadata",ae);function ce(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),ct(ft,It,zt)}b("getMetadata",ce);function J(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),Z(ft,It,zt)}b("getOwnMetadata",J);function te(ft,It){if(!Lr(ft))throw new TypeError;return Gn(It)||(It=Er(It)),ii(ft,It)}b("getMetadataKeys",te);function fe(ft,It){if(!Lr(ft))throw new TypeError;return Gn(It)||(It=Er(It)),kr(ft,It)}b("getOwnMetadataKeys",fe);function ve(ft,It,zt){if(!Lr(It))throw new TypeError;if(Gn(zt)||(zt=Er(zt)),!Lr(It))throw new TypeError;Gn(zt)||(zt=Er(zt));var zn=ed(It,zt,!1);return Gn(zn)?!1:zn.OrdinaryDeleteMetadata(ft,It,zt)}b("deleteMetadata",ve);function me(ft,It){for(var zt=ft.length-1;zt>=0;--zt){var zn=ft[zt],or=zn(It);if(!Gn(or)&&!pc(or)){if(!Si(or))throw new TypeError;It=or}}return It}function ke(ft,It,zt,zn){for(var or=ft.length-1;or>=0;--or){var uu=ft[or],Qu=uu(It,zt,zn);if(!Gn(Qu)&&!pc(Qu)){if(!Lr(Qu))throw new TypeError;zn=Qu}}return zn}function tt(ft,It,zt){var zn=De(ft,It,zt);if(zn)return!0;var or=Ia(It);return pc(or)?!1:tt(ft,or,zt)}function De(ft,It,zt){var zn=ed(It,zt,!1);return Gn(zn)?!1:jn(zn.OrdinaryHasOwnMetadata(ft,It,zt))}function ct(ft,It,zt){var zn=De(ft,It,zt);if(zn)return Z(ft,It,zt);var or=Ia(It);if(!pc(or))return ct(ft,or,zt)}function Z(ft,It,zt){var zn=ed(It,zt,!1);if(!Gn(zn))return zn.OrdinaryGetOwnMetadata(ft,It,zt)}function Nt(ft,It,zt,zn){var or=ed(zt,zn,!0);or.OrdinaryDefineOwnMetadata(ft,It,zt,zn)}function ii(ft,It){var zt=kr(ft,It),zn=Ia(ft);if(zn===null)return zt;var or=ii(zn,It);if(or.length<=0)return zt;if(zt.length<=0)return or;for(var uu=new j,Qu=[],fo=0,ni=zt;fo=0&&ni=this._keys.length?(this._index=-1,this._keys=It,this._values=It):this._index++,{value:li,done:!1}}return{value:void 0,done:!0}},fo.prototype.throw=function(ni){throw this._index>=0&&(this._index=-1,this._keys=It,this._values=It),ni},fo.prototype.return=function(ni){return this._index>=0&&(this._index=-1,this._keys=It,this._values=It),{value:ni,done:!0}},fo})(),zn=(function(){function fo(){this._keys=[],this._values=[],this._cacheKey=ft,this._cacheIndex=-2}return Object.defineProperty(fo.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),fo.prototype.has=function(ni){return this._find(ni,!1)>=0},fo.prototype.get=function(ni){var li=this._find(ni,!1);return li>=0?this._values[li]:void 0},fo.prototype.set=function(ni,li){var bi=this._find(ni,!0);return this._values[bi]=li,this},fo.prototype.delete=function(ni){var li=this._find(ni,!1);if(li>=0){for(var bi=this._keys.length,Pi=li+1;Pi0)throw new kM(F3.missingInjectionDecorator,`Found unexpected missing metadata on type "${f.name}" at constructor indexes "${b.join('", "')}". + +Are you using @inject, @multiInject or @unmanaged decorators at those indexes? + +If you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}function X0t(f){return{kind:wg.singleInjection,name:void 0,optional:!1,tags:new Map,targetName:void 0,value:f}}function oJ(f){const h=f.find((g=>g.key===Sye)),b=f.find((g=>g.key===Pye));if(f.find((g=>g.key===_ye))!==void 0)return(function(g,E){if(E!==void 0||g!==void 0)throw new kM(F3.missingInjectionDecorator,"Expected a single @inject, @multiInject or @unmanaged metadata");return{kind:wg.unmanaged}})(h,b);if(b===void 0&&h===void 0)throw new kM(F3.missingInjectionDecorator,"Expected @inject, @multiInject or @unmanaged metadata");const w=f.find((g=>g.key===rJ)),m=f.find((g=>g.key===Eye)),P=f.find((g=>g.key===yye));return{kind:h===void 0?wg.multipleInjection:wg.singleInjection,name:w?.value,optional:m!==void 0,tags:new Map(f.filter((g=>zzt.every((E=>g.key!==E)))).map((g=>[g.key,g.value]))),targetName:P?.value,value:h===void 0?b?.value:h.value}}function J0t(f,h,b){try{return oJ(b)}catch(w){throw kM.isErrorOfKind(w,F3.missingInjectionDecorator)?new kM(F3.missingInjectionDecorator,`Expected a single @inject, @multiInject or @unmanaged decorator at type "${f.name}" at constructor arguments at index "${h.toString()}"`,{cause:w}):w}}function Vzt(f){const h=N3(f,"design:paramtypes"),b=N3(f,"inversify:tagged"),w=[];if(b!==void 0)for(const[m,P]of Object.entries(b)){const g=parseInt(m);w[g]=J0t(f,g,P)}if(h!==void 0){for(let m=0;mNumber.MIN_SAFE_INTEGER)):Sht(Object,Kme,m,(P=>P+1)),m})(),this.#i=h,this.#t=void 0,this.#e=b,this.#r=new Jzt(typeof h=="string"?h:h.toString().slice(7,-1)),this.#o=w}get id(){return this.#n}get identifier(){return this.#i}get metadata(){return this.#t===void 0&&(this.#t=Yzt(this.#e)),this.#t}get name(){return this.#r}get type(){return this.#o}get serviceIdentifier(){return Hzt.is(this.#e.value)?this.#e.value.unwrap():this.#e.value}getCustomTags(){return[...this.#e.tags.entries()].map((([h,b])=>({key:h,value:b})))}getNamedTag(){return this.#e.name===void 0?null:{key:rJ,value:this.#e.name}}hasTag(h){return this.metadata.some((b=>b.key===h))}isArray(){return this.#e.kind===wg.multipleInjection}isNamed(){return this.#e.name!==void 0}isOptional(){return this.#e.optional}isTagged(){return this.#e.tags.size>0}matchesArray(h){return this.isArray()&&this.#e.value===h}matchesNamedTag(h){return this.#e.name===h}matchesTag(h){return b=>this.metadata.some((w=>w.key===h&&w.value===b))}};const tpt=f=>(function(h,b){return function(w){const m=h(w);let P=Pht(w);for(;P!==void 0&&P!==Object;){const E=b(P);for(const[C,T]of E)m.properties.has(C)||m.properties.set(C,T);P=Pht(P)}const g=[];for(const E of m.constructorArguments)if(E.kind!==wg.unmanaged){const C=E.targetName??"";g.push(new xX(C,E,"ConstructorArgument"))}for(const[E,C]of m.properties)if(C.kind!==wg.unmanaged){const T=C.targetName??E;g.push(new xX(T,C,"ClassProperty"))}return g}})(f===void 0?Gzt:h=>Wzt(h,f),f===void 0?Z0t:h=>ept(h,f)),wm="named",Qzt="unmanaged",npt="optional",ipt="inject",rpt="multi_inject",opt="inversify:tagged",cpt="inversify:tagged_props",Mht="inversify:paramtypes",spt="design:paramtypes",Cht="post_construct",jve="pre_destroy",nl={Request:"Request",Singleton:"Singleton",Transient:"Transient"},Ys={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"},upt={ConstructorArgument:"ConstructorArgument",Variable:"Variable"};let Zzt=0;function XL(){return Zzt++}class Mye{id;moduleId;activated;serviceIdentifier;implementationType;cache;dynamicValue;scope;type;factory;provider;constraint;onActivation;onDeactivation;constructor(h,b){this.id=XL(),this.activated=!1,this.serviceIdentifier=h,this.scope=b,this.type=Ys.Invalid,this.constraint=w=>!0,this.implementationType=null,this.cache=null,this.factory=null,this.provider=null,this.onActivation=null,this.onDeactivation=null,this.dynamicValue=null}clone(){const h=new Mye(this.serviceIdentifier,this.scope);return h.activated=h.scope===nl.Singleton&&this.activated,h.implementationType=this.implementationType,h.dynamicValue=this.dynamicValue,h.scope=this.scope,h.type=this.type,h.factory=this.factory,h.provider=this.provider,h.constraint=this.constraint,h.onActivation=this.onActivation,h.onDeactivation=this.onDeactivation,h.cache=this.cache,h}}const apt="Metadata key was used more than once in a parameter:",Iht="NULL argument",Tht="Key Not Found",eVt="Ambiguous match found for serviceIdentifier:",tVt="No matching bindings found for serviceIdentifier:",lpt="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.",Ave=(f,h)=>`onDeactivation() error in class ${f}: ${h}`;class nVt{getConstructorMetadata(h){return{compilerGeneratedMetadata:Reflect.getMetadata(spt,h)??[],userGeneratedMetadata:Reflect.getMetadata(opt,h)??{}}}getPropertiesMetadata(h){return Reflect.getMetadata(cpt,h)??{}}}var aA;function fpt(f){return f instanceof RangeError||f.message==="Maximum call stack size exceeded"}(function(f){f[f.MultipleBindingsAvailable=2]="MultipleBindingsAvailable",f[f.NoBindingsAvailable=0]="NoBindingsAvailable",f[f.OnlyOneBindingAvailable=1]="OnlyOneBindingAvailable"})(aA||(aA={}));function bS(f){return typeof f=="function"?f.name:typeof f=="symbol"?f.toString():f}function jht(f,h,b){let w="";const m=b(f,h);return m.length!==0&&(w=` +Registered bindings:`,m.forEach((P=>{let g="Object";P.implementationType!==null&&(g=gpt(P.implementationType)),w=`${w} + ${g}`,P.constraint.metaData&&(w=`${w} - ${P.constraint.metaData}`)}))),w}function hpt(f,h){return f.parentRequest!==null&&(f.parentRequest.serviceIdentifier===h||hpt(f.parentRequest,h))}function dpt(f){f.childRequests.forEach((h=>{if(hpt(f,h.serviceIdentifier)){const b=(function(w){return(function P(g,E=[]){const C=bS(g.serviceIdentifier);return E.push(C),g.parentRequest!==null?P(g.parentRequest,E):E})(w).reverse().join(" --> ")})(h);throw new Error(`Circular dependency found: ${b}`)}dpt(h)}))}function gpt(f){if(f.name!=null&&f.name!=="")return f.name;{const h=f.toString(),b=h.match(/^function\s*([^\s(]+)/);return b===null?`Anonymous function: ${h}`:b[1]}}function Aht(f){return`{"key":"${f.key.toString()}","value":"${f.value.toString()}"}`}class bpt{id;container;plan;currentRequest;constructor(h){this.id=XL(),this.container=h}addPlan(h){this.plan=h}setCurrentRequest(h){this.currentRequest=h}}class lA{key;value;constructor(h,b){this.key=h,this.value=b}toString(){return this.key===wm?`named: ${String(this.value).toString()} `:`tagged: { key:${this.key.toString()}, value: ${String(this.value)} }`}}class iVt{parentContext;rootRequest;constructor(h,b){this.parentContext=h,this.rootRequest=b}}function ppt(f,h){const b=(function(E){return Object.getPrototypeOf(E.prototype)?.constructor})(h);if(b===void 0||b===Object)return 0;const w=tpt(f)(b),m=w.map((E=>E.metadata.filter((C=>C.key===Qzt)))),P=[].concat.apply([],m).length,g=w.length-P;return g>0?g:ppt(f,b)}class JL{id;serviceIdentifier;parentContext;parentRequest;bindings;childRequests;target;requestScope;constructor(h,b,w,m,P){this.id=XL(),this.serviceIdentifier=h,this.parentContext=b,this.parentRequest=w,this.target=P,this.childRequests=[],this.bindings=Array.isArray(m)?m:[m],this.requestScope=w===null?new Map:null}addChildRequest(h,b,w){const m=new JL(h,this.parentContext,this,b,w);return this.childRequests.push(m),m}}function LX(f){return f._bindingDictionary}function Oht(f,h,b,w,m){let P=jL(b.container,m.serviceIdentifier),g=[];return P.length===aA.NoBindingsAvailable&&b.container.options.autoBindInjectable===!0&&typeof m.serviceIdentifier=="function"&&f.getConstructorMetadata(m.serviceIdentifier).compilerGeneratedMetadata&&(b.container.bind(m.serviceIdentifier).toSelf(),P=jL(b.container,m.serviceIdentifier)),g=h?P:P.filter((E=>{const C=new JL(E.serviceIdentifier,b,w,E,m);return E.constraint(C)})),(function(E,C,T,M,_){switch(C.length){case aA.NoBindingsAvailable:if(M.isOptional())return C;{const I=bS(E);let O=tVt;throw O+=(function(j,k){if(k.isTagged()||k.isNamed()){let x="";const R=k.getNamedTag(),H=k.getCustomTags();return R!==null&&(x+=Aht(R)+` +`),H!==null&&H.forEach((F=>{x+=Aht(F)+` +`})),` ${j} + ${j} - ${x}`}return` ${j}`})(I,M),O+=jht(_,I,jL),T!==null&&(O+=` +Trying to resolve bindings for "${bS(T.serviceIdentifier)}"`),new Error(O)}case aA.OnlyOneBindingAvailable:return C;case aA.MultipleBindingsAvailable:default:if(M.isArray())return C;{const I=bS(E);let O=`${eVt} ${I}`;throw O+=jht(_,I,jL),new Error(O)}}})(m.serviceIdentifier,g,w,m,b.container),g}function wpt(f,h){const b=h.isMultiInject?rpt:ipt,w=[new lA(b,f)];return h.customTag!==void 0&&w.push(new lA(h.customTag.key,h.customTag.value)),h.isOptional===!0&&w.push(new lA(npt,!0)),w}function mpt(f,h,b,w,m,P){let g,E;if(m===null){g=Oht(f,h,w,null,P),E=new JL(b,w,null,g,P);const C=new iVt(w,E);w.addPlan(C)}else g=Oht(f,h,w,m,P),E=m.addChildRequest(P.serviceIdentifier,g,P);g.forEach((C=>{let T=null;if(P.isArray())T=E.addChildRequest(C.serviceIdentifier,C,P);else{if(C.cache!==null)return;T=E}if(C.type===Ys.Instance&&C.implementationType!==null){const M=(function(_,I){return tpt(_)(I)})(f,C.implementationType);if(w.container.options.skipBaseClassChecks!==!0){const _=ppt(f,C.implementationType);if(M.length<_){const I=`The number of constructor arguments in the derived class ${gpt(C.implementationType)} must be >= than the number of constructor arguments of its base class.`;throw new Error(I)}}M.forEach((_=>{mpt(f,!1,_.serviceIdentifier,w,T,_)}))}}))}function jL(f,h){let b=[];const w=LX(f);return w.hasKey(h)?b=w.get(h):f.parent!==null&&(b=jL(f.parent,h)),b}function rVt(f,h,b,w,m,P=!1){const g=new bpt(h),E=(function(C,T,M){const _=wpt(T,M),I=oJ(_);if(I.kind===wg.unmanaged)throw new Error("Unexpected metadata when creating target");return new xX("",I,C)})(b,w,m);try{return mpt(f,P,w,g,null,E),g}catch(C){throw fpt(C)&&dpt(g.plan.rootRequest),C}}function bg(f){return(typeof f=="object"&&f!==null||typeof f=="function")&&typeof f.then=="function"}function vpt(f){return!!bg(f)||Array.isArray(f)&&f.some(bg)}const oVt=(f,h,b)=>{f.has(h.id)||f.set(h.id,b)},cVt=(f,h)=>{f.cache=h,f.activated=!0,bg(h)&&sVt(f,h)},sVt=async(f,h)=>{try{const b=await h;f.cache=b}catch(b){throw f.cache=null,f.activated=!1,b}};var kL;(function(f){f.DynamicValue="toDynamicValue",f.Factory="toFactory",f.Provider="toProvider"})(kL||(kL={}));function uVt(f,h,b){let w;if(h.length>0){const m=(function(g,E){return g.reduce(((C,T)=>{const M=E(T);return T.target.type===upt.ConstructorArgument?C.constructorInjections.push(M):(C.propertyRequests.push(T),C.propertyInjections.push(M)),C.isAsync||(C.isAsync=vpt(M)),C}),{constructorInjections:[],isAsync:!1,propertyInjections:[],propertyRequests:[]})})(h,b),P={...m,constr:f};w=m.isAsync?(async function(g){const E=await kht(g.constructorInjections),C=await kht(g.propertyInjections);return Dht({...g,constructorInjections:E,propertyInjections:C})})(P):Dht(P)}else w=new f;return w}function Dht(f){const h=new f.constr(...f.constructorInjections);return f.propertyRequests.forEach(((b,w)=>{const m=b.target.identifier,P=f.propertyInjections[w];b.target.isOptional()&&P===void 0||(h[m]=P)})),h}async function kht(f){const h=[];for(const b of f)Array.isArray(b)?h.push(Promise.all(b)):h.push(b);return Promise.all(h)}function Rht(f,h){const b=(function(w,m){if(Reflect.hasMetadata(Cht,w)){const E=Reflect.getMetadata(Cht,w);try{return m[E.value]?.()}catch(C){if(C instanceof Error)throw new Error((P=w.name,g=C.message,`@postConstruct error in class ${P}: ${g}`))}}var P,g})(f,h);return bg(b)?b.then((()=>h)):h}function aVt(f,h){f.scope!==nl.Singleton&&(function(b,w){const m=`Class cannot be instantiated in ${b.scope===nl.Request?"request":"transient"} scope.`;if(typeof b.onDeactivation=="function")throw new Error(Ave(w.name,m));if(Reflect.hasMetadata(jve,w))throw new Error(`@preDestroy error in class ${w.name}: ${m}`)})(f,h)}const Cye=f=>h=>{h.parentContext.setCurrentRequest(h);const b=h.bindings,w=h.childRequests,m=h.target&&h.target.isArray(),P=!(h.parentRequest&&h.parentRequest.target&&h.target&&h.parentRequest.target.matchesArray(h.target.serviceIdentifier));if(m&&P)return w.map((g=>Cye(f)(g)));{if(h.target.isOptional()&&b.length===0)return;const g=b[0];return dVt(f,h,g)}},lVt=(f,h)=>{const b=(w=>{switch(w.type){case Ys.Factory:return{factory:w.factory,factoryType:kL.Factory};case Ys.Provider:return{factory:w.provider,factoryType:kL.Provider};case Ys.DynamicValue:return{factory:w.dynamicValue,factoryType:kL.DynamicValue};default:throw new Error(`Unexpected factory type ${w.type}`)}})(f);return((w,m)=>{try{return w()}catch(P){throw fpt(P)?m():P}})((()=>b.factory.bind(f)(h)),(()=>{return new Error((w=b.factoryType,m=h.currentRequest.serviceIdentifier.toString(),`It looks like there is a circular dependency in one of the '${w}' bindings. Please investigate bindings with service identifier '${m}'.`));var w,m}))},fVt=(f,h,b)=>{let w;const m=h.childRequests;switch((P=>{let g=null;switch(P.type){case Ys.ConstantValue:case Ys.Function:g=P.cache;break;case Ys.Constructor:case Ys.Instance:g=P.implementationType;break;case Ys.DynamicValue:g=P.dynamicValue;break;case Ys.Provider:g=P.provider;break;case Ys.Factory:g=P.factory}if(g===null){const E=bS(P.serviceIdentifier);throw new Error(`Invalid binding type: ${E}`)}})(b),b.type){case Ys.ConstantValue:case Ys.Function:w=b.cache;break;case Ys.Constructor:w=b.implementationType;break;case Ys.Instance:w=(function(P,g,E,C){aVt(P,g);const T=uVt(g,E,C);return bg(T)?T.then((M=>Rht(g,M))):Rht(g,T)})(b,b.implementationType,m,Cye(f));break;default:w=lVt(b,h.parentContext)}return w},hVt=(f,h,b)=>{let w=((m,P)=>P.scope===nl.Singleton&&P.activated?P.cache:P.scope===nl.Request&&m.has(P.id)?m.get(P.id):null)(f,h);return w!==null||(w=b(),((m,P,g)=>{P.scope===nl.Singleton&&cVt(P,g),P.scope===nl.Request&&oVt(m,P,g)})(f,h,w)),w},dVt=(f,h,b)=>hVt(f,b,(()=>{let w=fVt(f,h,b);return w=bg(w)?w.then((m=>xht(h,b,m))):xht(h,b,w),w}));function xht(f,h,b){let w=gVt(f.parentContext,h,b);const m=wVt(f.parentContext.container);let P,g=m.next();do{P=g.value;const E=f.parentContext,C=f.serviceIdentifier,T=pVt(P,C);w=bg(w)?ypt(T,E,w):bVt(T,E,w),g=m.next()}while(g.done!==!0&&!LX(P).hasKey(f.serviceIdentifier));return w}const gVt=(f,h,b)=>{let w;return w=typeof h.onActivation=="function"?h.onActivation(f,b):b,w},bVt=(f,h,b)=>{let w=f.next();for(;w.done!==!0;){if(bg(b=w.value(h,b)))return ypt(f,h,b);w=f.next()}return b},ypt=async(f,h,b)=>{let w=await b,m=f.next();for(;m.done!==!0;)w=await m.value(h,w),m=f.next();return w},pVt=(f,h)=>{const b=f._activations;return b.hasKey(h)?b.get(h).values():[].values()},wVt=f=>{const h=[f];let b=f.parent;for(;b!==null;)h.push(b),b=b.parent;return{next:()=>{const w=h.pop();return w!==void 0?{done:!1,value:w}:{done:!0,value:void 0}}}},I3=(f,h)=>{const b=f.parentRequest;return b!==null&&(!!h(b)||I3(b,h))},AL=f=>h=>{const b=w=>w!==null&&w.target!==null&&w.target.matchesTag(f)(h);return b.metaData=new lA(f,h),b},IY=AL(wm),qme=f=>h=>{let b=null;if(h!==null){if(b=h.bindings[0],typeof f=="string")return b.serviceIdentifier===f;{const w=h.bindings[0].implementationType;return f===w}}return!1};class NX{_binding;constructor(h){this._binding=h}when(h){return this._binding.constraint=h,new ph(this._binding)}whenTargetNamed(h){return this._binding.constraint=IY(h),new ph(this._binding)}whenTargetIsDefault(){return this._binding.constraint=h=>h===null?!1:h.target!==null&&!h.target.isNamed()&&!h.target.isTagged(),new ph(this._binding)}whenTargetTagged(h,b){return this._binding.constraint=AL(h)(b),new ph(this._binding)}whenInjectedInto(h){return this._binding.constraint=b=>b!==null&&qme(h)(b.parentRequest),new ph(this._binding)}whenParentNamed(h){return this._binding.constraint=b=>b!==null&&IY(h)(b.parentRequest),new ph(this._binding)}whenParentTagged(h,b){return this._binding.constraint=w=>w!==null&&AL(h)(b)(w.parentRequest),new ph(this._binding)}whenAnyAncestorIs(h){return this._binding.constraint=b=>b!==null&&I3(b,qme(h)),new ph(this._binding)}whenNoAncestorIs(h){return this._binding.constraint=b=>b!==null&&!I3(b,qme(h)),new ph(this._binding)}whenAnyAncestorNamed(h){return this._binding.constraint=b=>b!==null&&I3(b,IY(h)),new ph(this._binding)}whenNoAncestorNamed(h){return this._binding.constraint=b=>b!==null&&!I3(b,IY(h)),new ph(this._binding)}whenAnyAncestorTagged(h,b){return this._binding.constraint=w=>w!==null&&I3(w,AL(h)(b)),new ph(this._binding)}whenNoAncestorTagged(h,b){return this._binding.constraint=w=>w!==null&&!I3(w,AL(h)(b)),new ph(this._binding)}whenAnyAncestorMatches(h){return this._binding.constraint=b=>b!==null&&I3(b,h),new ph(this._binding)}whenNoAncestorMatches(h){return this._binding.constraint=b=>b!==null&&!I3(b,h),new ph(this._binding)}}class ph{_binding;constructor(h){this._binding=h}onActivation(h){return this._binding.onActivation=h,new NX(this._binding)}onDeactivation(h){return this._binding.onDeactivation=h,new NX(this._binding)}}class T3{_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(h){this._binding=h,this._bindingWhenSyntax=new NX(this._binding),this._bindingOnSyntax=new ph(this._binding)}when(h){return this._bindingWhenSyntax.when(h)}whenTargetNamed(h){return this._bindingWhenSyntax.whenTargetNamed(h)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(h,b){return this._bindingWhenSyntax.whenTargetTagged(h,b)}whenInjectedInto(h){return this._bindingWhenSyntax.whenInjectedInto(h)}whenParentNamed(h){return this._bindingWhenSyntax.whenParentNamed(h)}whenParentTagged(h,b){return this._bindingWhenSyntax.whenParentTagged(h,b)}whenAnyAncestorIs(h){return this._bindingWhenSyntax.whenAnyAncestorIs(h)}whenNoAncestorIs(h){return this._bindingWhenSyntax.whenNoAncestorIs(h)}whenAnyAncestorNamed(h){return this._bindingWhenSyntax.whenAnyAncestorNamed(h)}whenAnyAncestorTagged(h,b){return this._bindingWhenSyntax.whenAnyAncestorTagged(h,b)}whenNoAncestorNamed(h){return this._bindingWhenSyntax.whenNoAncestorNamed(h)}whenNoAncestorTagged(h,b){return this._bindingWhenSyntax.whenNoAncestorTagged(h,b)}whenAnyAncestorMatches(h){return this._bindingWhenSyntax.whenAnyAncestorMatches(h)}whenNoAncestorMatches(h){return this._bindingWhenSyntax.whenNoAncestorMatches(h)}onActivation(h){return this._bindingOnSyntax.onActivation(h)}onDeactivation(h){return this._bindingOnSyntax.onDeactivation(h)}}class mVt{_binding;constructor(h){this._binding=h}inRequestScope(){return this._binding.scope=nl.Request,new T3(this._binding)}inSingletonScope(){return this._binding.scope=nl.Singleton,new T3(this._binding)}inTransientScope(){return this._binding.scope=nl.Transient,new T3(this._binding)}}class Lht{_bindingInSyntax;_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(h){this._binding=h,this._bindingWhenSyntax=new NX(this._binding),this._bindingOnSyntax=new ph(this._binding),this._bindingInSyntax=new mVt(h)}inRequestScope(){return this._bindingInSyntax.inRequestScope()}inSingletonScope(){return this._bindingInSyntax.inSingletonScope()}inTransientScope(){return this._bindingInSyntax.inTransientScope()}when(h){return this._bindingWhenSyntax.when(h)}whenTargetNamed(h){return this._bindingWhenSyntax.whenTargetNamed(h)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(h,b){return this._bindingWhenSyntax.whenTargetTagged(h,b)}whenInjectedInto(h){return this._bindingWhenSyntax.whenInjectedInto(h)}whenParentNamed(h){return this._bindingWhenSyntax.whenParentNamed(h)}whenParentTagged(h,b){return this._bindingWhenSyntax.whenParentTagged(h,b)}whenAnyAncestorIs(h){return this._bindingWhenSyntax.whenAnyAncestorIs(h)}whenNoAncestorIs(h){return this._bindingWhenSyntax.whenNoAncestorIs(h)}whenAnyAncestorNamed(h){return this._bindingWhenSyntax.whenAnyAncestorNamed(h)}whenAnyAncestorTagged(h,b){return this._bindingWhenSyntax.whenAnyAncestorTagged(h,b)}whenNoAncestorNamed(h){return this._bindingWhenSyntax.whenNoAncestorNamed(h)}whenNoAncestorTagged(h,b){return this._bindingWhenSyntax.whenNoAncestorTagged(h,b)}whenAnyAncestorMatches(h){return this._bindingWhenSyntax.whenAnyAncestorMatches(h)}whenNoAncestorMatches(h){return this._bindingWhenSyntax.whenNoAncestorMatches(h)}onActivation(h){return this._bindingOnSyntax.onActivation(h)}onDeactivation(h){return this._bindingOnSyntax.onDeactivation(h)}}class vVt{_binding;constructor(h){this._binding=h}to(h){return this._binding.type=Ys.Instance,this._binding.implementationType=h,new Lht(this._binding)}toSelf(){if(typeof this._binding.serviceIdentifier!="function")throw new Error("The toSelf function can only be applied when a constructor is used as service identifier");const h=this._binding.serviceIdentifier;return this.to(h)}toConstantValue(h){return this._binding.type=Ys.ConstantValue,this._binding.cache=h,this._binding.dynamicValue=null,this._binding.implementationType=null,this._binding.scope=nl.Singleton,new T3(this._binding)}toDynamicValue(h){return this._binding.type=Ys.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=h,this._binding.implementationType=null,new Lht(this._binding)}toConstructor(h){return this._binding.type=Ys.Constructor,this._binding.implementationType=h,this._binding.scope=nl.Singleton,new T3(this._binding)}toFactory(h){return this._binding.type=Ys.Factory,this._binding.factory=h,this._binding.scope=nl.Singleton,new T3(this._binding)}toFunction(h){if(typeof h!="function")throw new Error("Value provided to function binding must be a function!");const b=this.toConstantValue(h);return this._binding.type=Ys.Function,this._binding.scope=nl.Singleton,b}toAutoFactory(h){return this._binding.type=Ys.Factory,this._binding.factory=b=>()=>b.container.get(h),this._binding.scope=nl.Singleton,new T3(this._binding)}toAutoNamedFactory(h){return this._binding.type=Ys.Factory,this._binding.factory=b=>w=>b.container.getNamed(h,w),new T3(this._binding)}toProvider(h){return this._binding.type=Ys.Provider,this._binding.provider=h,this._binding.scope=nl.Singleton,new T3(this._binding)}toService(h){this._binding.type=Ys.DynamicValue,Object.defineProperty(this._binding,"cache",{configurable:!0,enumerable:!0,get:()=>null,set(b){}}),this._binding.dynamicValue=b=>{try{return b.container.get(h)}catch{return b.container.getAsync(h)}},this._binding.implementationType=null}}class Iye{bindings;activations;deactivations;middleware;moduleActivationStore;static of(h,b,w,m,P){const g=new Iye;return g.bindings=h,g.middleware=b,g.deactivations=m,g.activations=w,g.moduleActivationStore=P,g}}class j3{_map;constructor(){this._map=new Map}getMap(){return this._map}add(h,b){if(this._checkNonNulish(h),b==null)throw new Error(Iht);const w=this._map.get(h);w!==void 0?w.push(b):this._map.set(h,[b])}get(h){this._checkNonNulish(h);const b=this._map.get(h);if(b!==void 0)return b;throw new Error(Tht)}remove(h){if(this._checkNonNulish(h),!this._map.delete(h))throw new Error(Tht)}removeIntersection(h){this.traverse(((b,w)=>{const m=h.hasKey(b)?h.get(b):void 0;if(m!==void 0){const P=w.filter((g=>!m.some((E=>g===E))));this._setValue(b,P)}}))}removeByCondition(h){const b=[];return this._map.forEach(((w,m)=>{const P=[];for(const g of w)h(g)?b.push(g):P.push(g);this._setValue(m,P)})),b}hasKey(h){return this._checkNonNulish(h),this._map.has(h)}clone(){const h=new j3;return this._map.forEach(((b,w)=>{b.forEach((m=>{var P;h.add(w,typeof(P=m)=="object"&&P!==null&&"clone"in P&&typeof P.clone=="function"?m.clone():m)}))})),h}traverse(h){this._map.forEach(((b,w)=>{h(w,b)}))}_checkNonNulish(h){if(h==null)throw new Error(Iht)}_setValue(h,b){b.length>0?this._map.set(h,b):this._map.delete(h)}}class Tye{_map=new Map;remove(h){const b=this._map.get(h);return b===void 0?this._getEmptyHandlersStore():(this._map.delete(h),b)}addDeactivation(h,b,w){this._getModuleActivationHandlers(h).onDeactivations.add(b,w)}addActivation(h,b,w){this._getModuleActivationHandlers(h).onActivations.add(b,w)}clone(){const h=new Tye;return this._map.forEach(((b,w)=>{h._map.set(w,{onActivations:b.onActivations.clone(),onDeactivations:b.onDeactivations.clone()})})),h}_getModuleActivationHandlers(h){let b=this._map.get(h);return b===void 0&&(b=this._getEmptyHandlersStore(),this._map.set(h,b)),b}_getEmptyHandlersStore(){return{onActivations:new j3,onDeactivations:new j3}}}class FX{id;parent;options;_middleware;_bindingDictionary;_activations;_deactivations;_snapshots;_metadataReader;_moduleActivationStore;constructor(h){const b=h||{};if(typeof b!="object")throw new Error("Invalid Container constructor argument. Container options must be an object.");if(b.defaultScope===void 0)b.defaultScope=nl.Transient;else if(b.defaultScope!==nl.Singleton&&b.defaultScope!==nl.Transient&&b.defaultScope!==nl.Request)throw new Error('Invalid Container option. Default scope must be a string ("singleton" or "transient").');if(b.autoBindInjectable===void 0)b.autoBindInjectable=!1;else if(typeof b.autoBindInjectable!="boolean")throw new Error("Invalid Container option. Auto bind injectable must be a boolean");if(b.skipBaseClassChecks===void 0)b.skipBaseClassChecks=!1;else if(typeof b.skipBaseClassChecks!="boolean")throw new Error("Invalid Container option. Skip base check must be a boolean");this.options={autoBindInjectable:b.autoBindInjectable,defaultScope:b.defaultScope,skipBaseClassChecks:b.skipBaseClassChecks},this.id=XL(),this._bindingDictionary=new j3,this._snapshots=[],this._middleware=null,this._activations=new j3,this._deactivations=new j3,this.parent=null,this._metadataReader=new nVt,this._moduleActivationStore=new Tye}static merge(h,b,...w){const m=new FX,P=[h,b,...w].map((E=>LX(E))),g=LX(m);return P.forEach((E=>{var C;C=g,E.traverse(((T,M)=>{M.forEach((_=>{C.add(_.serviceIdentifier,_.clone())}))}))})),m}load(...h){const b=this._getContainerModuleHelpersFactory();for(const w of h){const m=b(w.id);w.registry(m.bindFunction,m.unbindFunction,m.isboundFunction,m.rebindFunction,m.unbindAsyncFunction,m.onActivationFunction,m.onDeactivationFunction)}}async loadAsync(...h){const b=this._getContainerModuleHelpersFactory();for(const w of h){const m=b(w.id);await w.registry(m.bindFunction,m.unbindFunction,m.isboundFunction,m.rebindFunction,m.unbindAsyncFunction,m.onActivationFunction,m.onDeactivationFunction)}}unload(...h){h.forEach((b=>{const w=this._removeModuleBindings(b.id);this._deactivateSingletons(w),this._removeModuleHandlers(b.id)}))}async unloadAsync(...h){for(const b of h){const w=this._removeModuleBindings(b.id);await this._deactivateSingletonsAsync(w),this._removeModuleHandlers(b.id)}}bind(h){return this._bind(this._buildBinding(h))}rebind(h){return this.unbind(h),this.bind(h)}async rebindAsync(h){return await this.unbindAsync(h),this.bind(h)}unbind(h){if(this._bindingDictionary.hasKey(h)){const b=this._bindingDictionary.get(h);this._deactivateSingletons(b)}this._removeServiceFromDictionary(h)}async unbindAsync(h){if(this._bindingDictionary.hasKey(h)){const b=this._bindingDictionary.get(h);await this._deactivateSingletonsAsync(b)}this._removeServiceFromDictionary(h)}unbindAll(){this._bindingDictionary.traverse(((h,b)=>{this._deactivateSingletons(b)})),this._bindingDictionary=new j3}async unbindAllAsync(){const h=[];this._bindingDictionary.traverse(((b,w)=>{h.push(this._deactivateSingletonsAsync(w))})),await Promise.all(h),this._bindingDictionary=new j3}onActivation(h,b){this._activations.add(h,b)}onDeactivation(h,b){this._deactivations.add(h,b)}isBound(h){let b=this._bindingDictionary.hasKey(h);return!b&&this.parent&&(b=this.parent.isBound(h)),b}isCurrentBound(h){return this._bindingDictionary.hasKey(h)}isBoundNamed(h,b){return this.isBoundTagged(h,wm,b)}isBoundTagged(h,b,w){let m=!1;if(this._bindingDictionary.hasKey(h)){const P=this._bindingDictionary.get(h),g=(function(E,C,T){const M=wpt(C,T),_=oJ(M);if(_.kind===wg.unmanaged)throw new Error("Unexpected metadata when creating target");const I=new xX("",_,"Variable"),O=new bpt(E);return new JL(C,O,null,[],I)})(this,h,{customTag:{key:b,value:w},isMultiInject:!1});m=P.some((E=>E.constraint(g)))}return!m&&this.parent&&(m=this.parent.isBoundTagged(h,b,w)),m}snapshot(){this._snapshots.push(Iye.of(this._bindingDictionary.clone(),this._middleware,this._activations.clone(),this._deactivations.clone(),this._moduleActivationStore.clone()))}restore(){const h=this._snapshots.pop();if(h===void 0)throw new Error("No snapshot available to restore.");this._bindingDictionary=h.bindings,this._activations=h.activations,this._deactivations=h.deactivations,this._middleware=h.middleware,this._moduleActivationStore=h.moduleActivationStore}createChild(h){const b=new FX(h||this.options);return b.parent=this,b}applyMiddleware(...h){const b=this._middleware?this._middleware:this._planAndResolve();this._middleware=h.reduce(((w,m)=>m(w)),b)}applyCustomMetadataReader(h){this._metadataReader=h}get(h){const b=this._getNotAllArgs(h,!1,!1);return this._getButThrowIfAsync(b)}async getAsync(h){const b=this._getNotAllArgs(h,!1,!1);return this._get(b)}getTagged(h,b,w){const m=this._getNotAllArgs(h,!1,!1,b,w);return this._getButThrowIfAsync(m)}async getTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!1,!1,b,w);return this._get(m)}getNamed(h,b){return this.getTagged(h,wm,b)}async getNamedAsync(h,b){return this.getTaggedAsync(h,wm,b)}getAll(h,b){const w=this._getAllArgs(h,b,!1);return this._getButThrowIfAsync(w)}async getAllAsync(h,b){const w=this._getAllArgs(h,b,!1);return this._getAll(w)}getAllTagged(h,b,w){const m=this._getNotAllArgs(h,!0,!1,b,w);return this._getButThrowIfAsync(m)}async getAllTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!0,!1,b,w);return this._getAll(m)}getAllNamed(h,b){return this.getAllTagged(h,wm,b)}async getAllNamedAsync(h,b){return this.getAllTaggedAsync(h,wm,b)}resolve(h){const b=this.isBound(h);b||this.bind(h).toSelf();const w=this.get(h);return b||this.unbind(h),w}tryGet(h){const b=this._getNotAllArgs(h,!1,!0);return this._getButThrowIfAsync(b)}async tryGetAsync(h){const b=this._getNotAllArgs(h,!1,!0);return this._get(b)}tryGetTagged(h,b,w){const m=this._getNotAllArgs(h,!1,!0,b,w);return this._getButThrowIfAsync(m)}async tryGetTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!1,!0,b,w);return this._get(m)}tryGetNamed(h,b){return this.tryGetTagged(h,wm,b)}async tryGetNamedAsync(h,b){return this.tryGetTaggedAsync(h,wm,b)}tryGetAll(h,b){const w=this._getAllArgs(h,b,!0);return this._getButThrowIfAsync(w)}async tryGetAllAsync(h,b){const w=this._getAllArgs(h,b,!0);return this._getAll(w)}tryGetAllTagged(h,b,w){const m=this._getNotAllArgs(h,!0,!0,b,w);return this._getButThrowIfAsync(m)}async tryGetAllTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!0,!0,b,w);return this._getAll(m)}tryGetAllNamed(h,b){return this.tryGetAllTagged(h,wm,b)}async tryGetAllNamedAsync(h,b){return this.tryGetAllTaggedAsync(h,wm,b)}_preDestroy(h,b){if(h!==void 0&&Reflect.hasMetadata(jve,h)){const w=Reflect.getMetadata(jve,h);return b[w.value]?.()}}_removeModuleHandlers(h){const b=this._moduleActivationStore.remove(h);this._activations.removeIntersection(b.onActivations),this._deactivations.removeIntersection(b.onDeactivations)}_removeModuleBindings(h){return this._bindingDictionary.removeByCondition((b=>b.moduleId===h))}_deactivate(h,b){const w=b==null?void 0:Object.getPrototypeOf(b).constructor;try{if(this._deactivations.hasKey(h.serviceIdentifier)){const P=this._deactivateContainer(b,this._deactivations.get(h.serviceIdentifier).values());if(bg(P))return this._handleDeactivationError(P.then((async()=>this._propagateContainerDeactivationThenBindingAndPreDestroyAsync(h,b,w))),h.serviceIdentifier)}const m=this._propagateContainerDeactivationThenBindingAndPreDestroy(h,b,w);if(bg(m))return this._handleDeactivationError(m,h.serviceIdentifier)}catch(m){if(m instanceof Error)throw new Error(Ave(bS(h.serviceIdentifier),m.message))}}async _handleDeactivationError(h,b){try{await h}catch(w){if(w instanceof Error)throw new Error(Ave(bS(b),w.message))}}_deactivateContainer(h,b){let w=b.next();for(;typeof w.value=="function";){const m=w.value(h);if(bg(m))return m.then((async()=>this._deactivateContainerAsync(h,b)));w=b.next()}}async _deactivateContainerAsync(h,b){let w=b.next();for(;typeof w.value=="function";)await w.value(h),w=b.next()}_getContainerModuleHelpersFactory(){const h=C=>T=>{const M=this._buildBinding(T);return M.moduleId=C,this._bind(M)},b=()=>C=>{this.unbind(C)},w=()=>async C=>this.unbindAsync(C),m=()=>C=>this.isBound(C),P=C=>{const T=h(C);return M=>(this.unbind(M),T(M))},g=C=>(T,M)=>{this._moduleActivationStore.addActivation(C,T,M),this.onActivation(T,M)},E=C=>(T,M)=>{this._moduleActivationStore.addDeactivation(C,T,M),this.onDeactivation(T,M)};return C=>({bindFunction:h(C),isboundFunction:m(),onActivationFunction:g(C),onDeactivationFunction:E(C),rebindFunction:P(C),unbindAsyncFunction:w(),unbindFunction:b()})}_bind(h){return this._bindingDictionary.add(h.serviceIdentifier,h),new vVt(h)}_buildBinding(h){const b=this.options.defaultScope||nl.Transient;return new Mye(h,b)}async _getAll(h){return Promise.all(this._get(h))}_get(h){const b={...h,contextInterceptor:w=>w,targetType:upt.Variable};if(this._middleware){const w=this._middleware(b);if(w==null)throw new Error("Invalid return type in middleware. Middleware must return!");return w}return this._planAndResolve()(b)}_getButThrowIfAsync(h){const b=this._get(h);if(vpt(b))throw new Error(`You are attempting to construct ${(function(w){return typeof w=="function"?`[function/class ${w.name||""}]`:typeof w=="symbol"?w.toString():`'${w}'`})(h.serviceIdentifier)} in a synchronous way but it has asynchronous dependencies.`);return b}_getAllArgs(h,b,w){return{avoidConstraints:!b?.enforceBindingConstraints,isMultiInject:!0,isOptional:w,serviceIdentifier:h}}_getNotAllArgs(h,b,w,m,P){return{avoidConstraints:!1,isMultiInject:b,isOptional:w,key:m,serviceIdentifier:h,value:P}}_getPlanMetadataFromNextArgs(h){const b={isMultiInject:h.isMultiInject};return h.key!==void 0&&(b.customTag={key:h.key,value:h.value}),h.isOptional===!0&&(b.isOptional=!0),b}_planAndResolve(){return h=>{let b=rVt(this._metadataReader,this,h.targetType,h.serviceIdentifier,this._getPlanMetadataFromNextArgs(h),h.avoidConstraints);return b=h.contextInterceptor(b),(function(m){return Cye(m.plan.rootRequest.requestScope)(m.plan.rootRequest)})(b)}}_deactivateIfSingleton(h){if(h.activated)return bg(h.cache)?h.cache.then((b=>this._deactivate(h,b))):this._deactivate(h,h.cache)}_deactivateSingletons(h){for(const b of h)if(bg(this._deactivateIfSingleton(b)))throw new Error("Attempting to unbind dependency with asynchronous destruction (@preDestroy or onDeactivation)")}async _deactivateSingletonsAsync(h){await Promise.all(h.map((async b=>this._deactivateIfSingleton(b))))}_propagateContainerDeactivationThenBindingAndPreDestroy(h,b,w){return this.parent?this._deactivate.bind(this.parent)(h,b):this._bindingDeactivationAndPreDestroy(h,b,w)}async _propagateContainerDeactivationThenBindingAndPreDestroyAsync(h,b,w){this.parent?await this._deactivate.bind(this.parent)(h,b):await this._bindingDeactivationAndPreDestroyAsync(h,b,w)}_removeServiceFromDictionary(h){try{this._bindingDictionary.remove(h)}catch{throw new Error(`Could not unbind serviceIdentifier: ${bS(h)}`)}}_bindingDeactivationAndPreDestroy(h,b,w){if(typeof h.onDeactivation=="function"){const m=h.onDeactivation(b);if(bg(m))return m.then((()=>this._preDestroy(w,b)))}return this._preDestroy(w,b)}async _bindingDeactivationAndPreDestroyAsync(h,b,w){typeof h.onDeactivation=="function"&&await h.onDeactivation(b),await this._preDestroy(w,b)}}class xf{id;registry;constructor(h){this.id=XL(),this.registry=h}}function yVt(f,h,b,w){(function(m){if(m!==void 0)throw new Error(lpt)})(h),_pt(opt,f,b.toString(),w)}function _Vt(f){let h=[];if(Array.isArray(f)){h=f;const b=(function(w){const m=new Set;for(const P of w){if(m.has(P))return P;m.add(P)}})(h.map((w=>w.key)));if(b!==void 0)throw new Error(`${apt} ${b.toString()}`)}else h=[f];return h}function _pt(f,h,b,w){const m=_Vt(w);let P={};Reflect.hasOwnMetadata(f,h)&&(P=Reflect.getMetadata(f,h));let g=P[b];if(g===void 0)g=[];else for(const E of g)if(m.some((C=>C.key===E.key)))throw new Error(`${apt} ${E.key.toString()}`);g.push(...m),P[b]=g,Reflect.defineMetadata(f,P,h)}function Ept(f){return(h,b,w)=>{typeof w=="number"?yVt(h,b,w,f):(function(m,P,g){if(m.prototype!==void 0)throw new Error(lpt);_pt(cpt,m.constructor,P,g)})(h,b,f)}}function vr(){return function(f){if(Reflect.hasOwnMetadata(Mht,f))throw new Error("Cannot apply @injectable decorator multiple times.");const h=Reflect.getMetadata(spt,f)||[];return Reflect.defineMetadata(Mht,h,f),f}}function Spt(f){return h=>(b,w,m)=>{if(h===void 0){const P=typeof b=="function"?b.name:b.constructor.name;throw new Error(`@inject called with undefined this could mean that the class ${P} has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation.`)}Ept(new lA(f,h))(b,w,m)}}const Et=Spt(ipt);function EVt(){return Ept(new lA(npt,!0))}const cJ=Spt(rpt);var d3={},vM={},Nht;function jye(){if(Nht)return vM;Nht=1,Object.defineProperty(vM,"__esModule",{value:!0}),vM.isLabeledAction=vM.LabeledAction=void 0;class f{constructor(w,m,P){this.label=w,this.actions=m,this.icon=P}}vM.LabeledAction=f;function h(b){return b!==void 0&&b.label!==void 0&&b.actions!==void 0}return vM.isLabeledAction=h,vM}var Qv={},g3={},Hme={},TY={},Fht;function SVt(){if(Fht)return TY;Fht=1,Object.defineProperty(TY,"__esModule",{value:!0}),TY.stringifyServiceIdentifier=f;function f(h){switch(typeof h){case"string":case"symbol":return h.toString();case"function":return h.name;default:throw new Error(`Unexpected ${typeof h} service id type`)}}return TY}var zme={},Bht;function PVt(){return Bht||(Bht=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.LazyServiceIdentifier=f.islazyServiceIdentifierSymbol=void 0,f.islazyServiceIdentifierSymbol=Symbol.for("@inversifyjs/common/islazyServiceIdentifier");class h{[f.islazyServiceIdentifierSymbol];#e;constructor(w){this.#e=w,this[f.islazyServiceIdentifierSymbol]=!0}static is(w){return typeof w=="object"&&w!==null&&w[f.islazyServiceIdentifierSymbol]===!0}unwrap(){return this.#e()}}f.LazyServiceIdentifier=h})(zme)),zme}var $ht;function Ove(){return $ht||($ht=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.stringifyServiceIdentifier=f.LazyServiceIdentifier=void 0;const h=SVt();Object.defineProperty(f,"stringifyServiceIdentifier",{enumerable:!0,get:function(){return h.stringifyServiceIdentifier}});const b=PVt();Object.defineProperty(f,"LazyServiceIdentifier",{enumerable:!0,get:function(){return b.LazyServiceIdentifier}})})(Hme)),Hme}var Vme={},Kht;function Lf(){return Kht||(Kht=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.NON_CUSTOM_TAG_KEYS=f.PRE_DESTROY=f.POST_CONSTRUCT=f.DESIGN_PARAM_TYPES=f.PARAM_TYPES=f.TAGGED_PROP=f.TAGGED=f.MULTI_INJECT_TAG=f.INJECT_TAG=f.OPTIONAL_TAG=f.UNMANAGED_TAG=f.NAME_TAG=f.NAMED_TAG=void 0,f.NAMED_TAG="named",f.NAME_TAG="name",f.UNMANAGED_TAG="unmanaged",f.OPTIONAL_TAG="optional",f.INJECT_TAG="inject",f.MULTI_INJECT_TAG="multi_inject",f.TAGGED="inversify:tagged",f.TAGGED_PROP="inversify:tagged_props",f.PARAM_TYPES="inversify:paramtypes",f.DESIGN_PARAM_TYPES="design:paramtypes",f.POST_CONSTRUCT="post_construct",f.PRE_DESTROY="pre_destroy";function h(){return[f.INJECT_TAG,f.MULTI_INJECT_TAG,f.NAME_TAG,f.UNMANAGED_TAG,f.NAMED_TAG,f.OPTIONAL_TAG]}f.NON_CUSTOM_TAG_KEYS=h()})(Vme)),Vme}var rm={},Wx={},b3={},qht;function Py(){if(qht)return b3;qht=1,Object.defineProperty(b3,"__esModule",{value:!0}),b3.TargetTypeEnum=b3.BindingTypeEnum=b3.BindingScopeEnum=void 0;const f={Request:"Request",Singleton:"Singleton",Transient:"Transient"};b3.BindingScopeEnum=f;const h={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"};b3.BindingTypeEnum=h;const b={ClassProperty:"ClassProperty",ConstructorArgument:"ConstructorArgument",Variable:"Variable"};return b3.TargetTypeEnum=b,b3}var jY={},Hht;function vA(){if(Hht)return jY;Hht=1,Object.defineProperty(jY,"__esModule",{value:!0}),jY.id=h;let f=0;function h(){return f++}return jY}var zht;function MVt(){if(zht)return Wx;zht=1,Object.defineProperty(Wx,"__esModule",{value:!0}),Wx.Binding=void 0;const f=Py(),h=vA();class b{id;moduleId;activated;serviceIdentifier;implementationType;cache;dynamicValue;scope;type;factory;provider;constraint;onActivation;onDeactivation;constructor(m,P){this.id=(0,h.id)(),this.activated=!1,this.serviceIdentifier=m,this.scope=P,this.type=f.BindingTypeEnum.Invalid,this.constraint=g=>!0,this.implementationType=null,this.cache=null,this.factory=null,this.provider=null,this.onActivation=null,this.onDeactivation=null,this.dynamicValue=null}clone(){const m=new b(this.serviceIdentifier,this.scope);return m.activated=m.scope===f.BindingScopeEnum.Singleton?this.activated:!1,m.implementationType=this.implementationType,m.dynamicValue=this.dynamicValue,m.scope=this.scope,m.type=this.type,m.factory=this.factory,m.provider=this.provider,m.constraint=this.constraint,m.onActivation=this.onActivation,m.onDeactivation=this.onDeactivation,m.cache=this.cache,m}}return Wx.Binding=b,Wx}var Oi={},Vht;function vg(){if(Vht)return Oi;Vht=1,Object.defineProperty(Oi,"__esModule",{value:!0}),Oi.STACK_OVERFLOW=Oi.CIRCULAR_DEPENDENCY_IN_FACTORY=Oi.ON_DEACTIVATION_ERROR=Oi.PRE_DESTROY_ERROR=Oi.POST_CONSTRUCT_ERROR=Oi.ASYNC_UNBIND_REQUIRED=Oi.MULTIPLE_POST_CONSTRUCT_METHODS=Oi.MULTIPLE_PRE_DESTROY_METHODS=Oi.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK=Oi.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE=Oi.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE=Oi.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT=Oi.ARGUMENTS_LENGTH_MISMATCH=Oi.INVALID_DECORATOR_OPERATION=Oi.INVALID_TO_SELF_VALUE=Oi.LAZY_IN_SYNC=Oi.INVALID_FUNCTION_BINDING=Oi.INVALID_MIDDLEWARE_RETURN=Oi.NO_MORE_SNAPSHOTS_AVAILABLE=Oi.INVALID_BINDING_TYPE=Oi.CIRCULAR_DEPENDENCY=Oi.UNDEFINED_INJECT_ANNOTATION=Oi.TRYING_TO_RESOLVE_BINDINGS=Oi.NOT_REGISTERED=Oi.CANNOT_UNBIND=Oi.AMBIGUOUS_MATCH=Oi.KEY_NOT_FOUND=Oi.NULL_ARGUMENT=Oi.DUPLICATED_METADATA=Oi.DUPLICATED_INJECTABLE_DECORATOR=void 0,Oi.DUPLICATED_INJECTABLE_DECORATOR="Cannot apply @injectable decorator multiple times.",Oi.DUPLICATED_METADATA="Metadata key was used more than once in a parameter:",Oi.NULL_ARGUMENT="NULL argument",Oi.KEY_NOT_FOUND="Key Not Found",Oi.AMBIGUOUS_MATCH="Ambiguous match found for serviceIdentifier:",Oi.CANNOT_UNBIND="Could not unbind serviceIdentifier:",Oi.NOT_REGISTERED="No matching bindings found for serviceIdentifier:";const f=T=>`Trying to resolve bindings for "${T}"`;Oi.TRYING_TO_RESOLVE_BINDINGS=f;const h=T=>`@inject called with undefined this could mean that the class ${T} has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation.`;Oi.UNDEFINED_INJECT_ANNOTATION=h,Oi.CIRCULAR_DEPENDENCY="Circular dependency found:",Oi.INVALID_BINDING_TYPE="Invalid binding type:",Oi.NO_MORE_SNAPSHOTS_AVAILABLE="No snapshot available to restore.",Oi.INVALID_MIDDLEWARE_RETURN="Invalid return type in middleware. Middleware must return!",Oi.INVALID_FUNCTION_BINDING="Value provided to function binding must be a function!";const b=T=>`You are attempting to construct ${C(T)} in a synchronous way but it has asynchronous dependencies.`;Oi.LAZY_IN_SYNC=b,Oi.INVALID_TO_SELF_VALUE="The toSelf function can only be applied when a constructor is used as service identifier",Oi.INVALID_DECORATOR_OPERATION="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.";const w=T=>`The number of constructor arguments in the derived class ${T} must be >= than the number of constructor arguments of its base class.`;Oi.ARGUMENTS_LENGTH_MISMATCH=w,Oi.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT="Invalid Container constructor argument. Container options must be an object.",Oi.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE='Invalid Container option. Default scope must be a string ("singleton" or "transient").',Oi.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE="Invalid Container option. Auto bind injectable must be a boolean",Oi.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK="Invalid Container option. Skip base check must be a boolean",Oi.MULTIPLE_PRE_DESTROY_METHODS="Cannot apply @preDestroy decorator multiple times in the same class",Oi.MULTIPLE_POST_CONSTRUCT_METHODS="Cannot apply @postConstruct decorator multiple times in the same class",Oi.ASYNC_UNBIND_REQUIRED="Attempting to unbind dependency with asynchronous destruction (@preDestroy or onDeactivation)";const m=(T,M)=>`@postConstruct error in class ${T}: ${M}`;Oi.POST_CONSTRUCT_ERROR=m;const P=(T,M)=>`@preDestroy error in class ${T}: ${M}`;Oi.PRE_DESTROY_ERROR=P;const g=(T,M)=>`onDeactivation() error in class ${T}: ${M}`;Oi.ON_DEACTIVATION_ERROR=g;const E=(T,M)=>`It looks like there is a circular dependency in one of the '${T}' bindings. Please investigate bindings with service identifier '${M}'.`;Oi.CIRCULAR_DEPENDENCY_IN_FACTORY=E,Oi.STACK_OVERFLOW="Maximum call stack size exceeded";function C(T){return typeof T=="function"?`[function/class ${T.name||""}]`:typeof T=="symbol"?T.toString():`'${T}'`}return Oi}var om={},Ght;function Ppt(){if(Ght)return om;Ght=1;var f=om&&om.__createBinding||(Object.create?(function(P,g,E,C){C===void 0&&(C=E);var T=Object.getOwnPropertyDescriptor(g,E);(!T||("get"in T?!g.__esModule:T.writable||T.configurable))&&(T={enumerable:!0,get:function(){return g[E]}}),Object.defineProperty(P,C,T)}):(function(P,g,E,C){C===void 0&&(C=E),P[C]=g[E]})),h=om&&om.__setModuleDefault||(Object.create?(function(P,g){Object.defineProperty(P,"default",{enumerable:!0,value:g})}):function(P,g){P.default=g}),b=om&&om.__importStar||(function(){var P=function(g){return P=Object.getOwnPropertyNames||function(E){var C=[];for(var T in E)Object.prototype.hasOwnProperty.call(E,T)&&(C[C.length]=T);return C},P(g)};return function(g){if(g&&g.__esModule)return g;var E={};if(g!=null)for(var C=P(g),T=0;T0)throw new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,`Found unexpected missing metadata on type "${w.name}" at constructor indexes "${P.join('", "')}". + +Are you using @inject, @multiInject or @unmanaged decorators at those indexes? + +If you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}return RY}var xY={},Jx={},edt;function yA(){if(edt)return Jx;edt=1,Object.defineProperty(Jx,"__esModule",{value:!0}),Jx.ClassElementMetadataKind=void 0;var f;return(function(h){h[h.multipleInjection=0]="multipleInjection",h[h.singleInjection=1]="singleInjection",h[h.unmanaged=2]="unmanaged"})(f||(Jx.ClassElementMetadataKind=f={})),Jx}var tdt;function Ipt(){if(tdt)return xY;tdt=1,Object.defineProperty(xY,"__esModule",{value:!0}),xY.getClassElementMetadataFromNewable=h;const f=yA();function h(b){return{kind:f.ClassElementMetadataKind.singleInjection,name:void 0,optional:!1,tags:new Map,targetName:void 0,value:b}}return xY}var LY={},NY={},ndt;function Aye(){if(ndt)return NY;ndt=1,Object.defineProperty(NY,"__esModule",{value:!0}),NY.getClassElementMetadataFromLegacyMetadata=m;const f=sJ(),h=uJ(),b=xM(),w=yA();function m(g){const E=g.find(j=>j.key===b.INJECT_TAG),C=g.find(j=>j.key===b.MULTI_INJECT_TAG);if(g.find(j=>j.key===b.UNMANAGED_TAG)!==void 0)return P(E,C);if(C===void 0&&E===void 0)throw new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,"Expected @inject, @multiInject or @unmanaged metadata");const M=g.find(j=>j.key===b.NAMED_TAG),_=g.find(j=>j.key===b.OPTIONAL_TAG),I=g.find(j=>j.key===b.NAME_TAG);return{kind:E===void 0?w.ClassElementMetadataKind.multipleInjection:w.ClassElementMetadataKind.singleInjection,name:M?.value,optional:_!==void 0,tags:new Map(g.filter(j=>b.NON_CUSTOM_TAG_KEYS.every(k=>j.key!==k)).map(j=>[j.key,j.value])),targetName:I?.value,value:E===void 0?C?.value:E.value}}function P(g,E){if(E!==void 0||g!==void 0)throw new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,"Expected a single @inject, @multiInject or @unmanaged metadata");return{kind:w.ClassElementMetadataKind.unmanaged}}return NY}var idt;function Tpt(){if(idt)return LY;idt=1,Object.defineProperty(LY,"__esModule",{value:!0}),LY.getConstructorArgumentMetadataFromLegacyMetadata=w;const f=sJ(),h=uJ(),b=Aye();function w(m,P,g){try{return(0,b.getClassElementMetadataFromLegacyMetadata)(g)}catch(E){throw f.InversifyCoreError.isErrorOfKind(E,h.InversifyCoreErrorKind.missingInjectionDecorator)?new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,`Expected a single @inject, @multiInject or @unmanaged decorator at type "${m.name}" at constructor arguments at index "${P.toString()}"`,{cause:E}):E}}return LY}var rdt;function IVt(){if(rdt)return kY;rdt=1,Object.defineProperty(kY,"__esModule",{value:!0}),kY.getClassMetadataConstructorArguments=P;const f=QL(),h=xM(),b=Cpt(),w=Ipt(),m=Tpt();function P(g){const E=(0,f.getReflectMetadata)(g,h.DESIGN_PARAM_TYPES),C=(0,f.getReflectMetadata)(g,h.TAGGED),T=[];if(C!==void 0)for(const[M,_]of Object.entries(C)){const I=parseInt(M);T[I]=(0,m.getConstructorArgumentMetadataFromLegacyMetadata)(g,I,_)}if(E!==void 0){for(let M=0;MNumber.MIN_SAFE_INTEGER):(0,f.updateReflectMetadata)(Object,h,w,m=>m+1),w}return UY}var pdt;function Rpt(){if(pdt)return Qx;pdt=1,Object.defineProperty(Qx,"__esModule",{value:!0}),Qx.LegacyTargetImpl=void 0;const f=Ove(),h=AVt(),b=yA(),w=xM(),m=OVt(),P=DVt(),g=kVt();let E=class{#e;#n;#i;#t;#r;#o;constructor(T,M,_){this.#n=(0,g.getTargetId)(),this.#i=T,this.#t=void 0,this.#e=M,this.#r=new m.LegacyQueryableStringImpl(typeof T=="string"?T:(0,P.getDescription)(T)),this.#o=_}get id(){return this.#n}get identifier(){return this.#i}get metadata(){return this.#t===void 0&&(this.#t=(0,h.getLegacyMetadata)(this.#e)),this.#t}get name(){return this.#r}get type(){return this.#o}get serviceIdentifier(){return f.LazyServiceIdentifier.is(this.#e.value)?this.#e.value.unwrap():this.#e.value}getCustomTags(){return[...this.#e.tags.entries()].map(([T,M])=>({key:T,value:M}))}getNamedTag(){return this.#e.name===void 0?null:{key:w.NAMED_TAG,value:this.#e.name}}hasTag(T){return this.metadata.some(M=>M.key===T)}isArray(){return this.#e.kind===b.ClassElementMetadataKind.multipleInjection}isNamed(){return this.#e.name!==void 0}isOptional(){return this.#e.optional}isTagged(){return this.#e.tags.size>0}matchesArray(T){return this.isArray()&&this.#e.value===T}matchesNamedTag(T){return this.#e.name===T}matchesTag(T){return M=>this.metadata.some(_=>_.key===T&&_.value===M)}};return Qx.LegacyTargetImpl=E,Qx}var wdt;function RVt(){if(wdt)return HY;wdt=1,Object.defineProperty(HY,"__esModule",{value:!0}),HY.getTargetsFromMetadataProviders=w;const f=yA(),h=jVt(),b=Rpt();function w(m,P){return function(E){const C=m(E);let T=(0,h.getBaseType)(E);for(;T!==void 0&&T!==Object;){const _=P(T);for(const[I,O]of _)C.properties.has(I)||C.properties.set(I,O);T=(0,h.getBaseType)(T)}const M=[];for(const _ of C.constructorArguments)if(_.kind!==f.ClassElementMetadataKind.unmanaged){const I=_.targetName??"";M.push(new b.LegacyTargetImpl(I,_,"ConstructorArgument"))}for(const[_,I]of C.properties)if(I.kind!==f.ClassElementMetadataKind.unmanaged){const O=I.targetName??_;M.push(new b.LegacyTargetImpl(O,I,"ClassProperty"))}return M}}return HY}var mdt;function xVt(){if(mdt)return Yx;mdt=1,Object.defineProperty(Yx,"__esModule",{value:!0}),Yx.getTargets=void 0;const f=Opt(),h=kpt(),b=Apt(),w=Dpt(),m=RVt(),P=g=>{const E=g===void 0?f.getClassMetadata:T=>(0,h.getClassMetadataFromMetadataReader)(T,g),C=g===void 0?b.getClassMetadataProperties:T=>(0,w.getClassMetadataPropertiesFromMetadataReader)(T,g);return(0,m.getTargetsFromMetadataProviders)(E,C)};return Yx.getTargets=P,Yx}var vdt;function xpt(){return vdt||(vdt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.LegacyTargetImpl=f.getTargets=f.getClassMetadataFromMetadataReader=f.getClassMetadata=f.getClassElementMetadataFromLegacyMetadata=f.ClassElementMetadataKind=void 0;const h=xVt();Object.defineProperty(f,"getTargets",{enumerable:!0,get:function(){return h.getTargets}});const b=Rpt();Object.defineProperty(f,"LegacyTargetImpl",{enumerable:!0,get:function(){return b.LegacyTargetImpl}});const w=Aye();Object.defineProperty(f,"getClassElementMetadataFromLegacyMetadata",{enumerable:!0,get:function(){return w.getClassElementMetadataFromLegacyMetadata}});const m=Opt();Object.defineProperty(f,"getClassMetadata",{enumerable:!0,get:function(){return m.getClassMetadata}});const P=kpt();Object.defineProperty(f,"getClassMetadataFromMetadataReader",{enumerable:!0,get:function(){return P.getClassMetadataFromMetadataReader}});const g=yA();Object.defineProperty(f,"ClassElementMetadataKind",{enumerable:!0,get:function(){return g.ClassElementMetadataKind}})})(Gme)),Gme}var eL={},ydt;function LVt(){if(ydt)return eL;ydt=1,Object.defineProperty(eL,"__esModule",{value:!0}),eL.BindingCount=void 0;var f;return(function(h){h[h.MultipleBindingsAvailable=2]="MultipleBindingsAvailable",h[h.NoBindingsAvailable=0]="NoBindingsAvailable",h[h.OnlyOneBindingAvailable=1]="OnlyOneBindingAvailable"})(f||(eL.BindingCount=f={})),eL}var dp={},_dt;function Lpt(){if(_dt)return dp;_dt=1;var f=dp&&dp.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=dp&&dp.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=dp&&dp.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M{try{return g()}catch(C){throw m(C)?E():C}};return dp.tryAndThrowErrorIfStackOverflow=P,dp}var $d={},Edt;function ZL(){if(Edt)return $d;Edt=1;var f=$d&&$d.__createBinding||(Object.create?(function(O,j,k,x){x===void 0&&(x=k);var R=Object.getOwnPropertyDescriptor(j,k);(!R||("get"in R?!j.__esModule:R.writable||R.configurable))&&(R={enumerable:!0,get:function(){return j[k]}}),Object.defineProperty(O,x,R)}):(function(O,j,k,x){x===void 0&&(x=k),O[x]=j[k]})),h=$d&&$d.__setModuleDefault||(Object.create?(function(O,j){Object.defineProperty(O,"default",{enumerable:!0,value:j})}):function(O,j){O.default=j}),b=$d&&$d.__importStar||(function(){var O=function(j){return O=Object.getOwnPropertyNames||function(k){var x=[];for(var R in k)Object.prototype.hasOwnProperty.call(k,R)&&(x[x.length]=R);return x},O(j)};return function(j){if(j&&j.__esModule)return j;var k={};if(j!=null)for(var x=O(j),R=0;R{let F="Object";H.implementationType!==null&&(F=M(H.implementationType)),x=`${x} + ${F}`,H.constraint.metaData&&(x=`${x} - ${H.constraint.metaData}`)})),x}function g(O,j){return O.parentRequest===null?!1:O.parentRequest.serviceIdentifier===j?!0:g(O.parentRequest,j)}function E(O){function j(x,R=[]){const H=m(x.serviceIdentifier);return R.push(H),x.parentRequest!==null?j(x.parentRequest,R):R}return j(O).reverse().join(" --> ")}function C(O){O.childRequests.forEach(j=>{if(g(O,j.serviceIdentifier)){const k=E(j);throw new Error(`${w.CIRCULAR_DEPENDENCY} ${k}`)}else C(j)})}function T(O,j){if(j.isTagged()||j.isNamed()){let k="";const x=j.getNamedTag(),R=j.getCustomTags();return x!==null&&(k+=I(x)+` +`),R!==null&&R.forEach(H=>{k+=I(H)+` +`}),` ${O} + ${O} - ${k}`}else return` ${O}`}function M(O){if(O.name!=null&&O.name!=="")return O.name;{const j=O.toString(),k=j.match(/^function\s*([^\s(]+)/);return k===null?`Anonymous function: ${j}`:k[1]}}function _(O){return O.toString().slice(7,-1)}function I(O){return`{"key":"${O.key.toString()}","value":"${O.value.toString()}"}`}return $d}var tL={},Sdt;function NVt(){if(Sdt)return tL;Sdt=1,Object.defineProperty(tL,"__esModule",{value:!0}),tL.Context=void 0;const f=vA();class h{id;container;plan;currentRequest;constructor(w){this.id=(0,f.id)(),this.container=w}addPlan(w){this.plan=w}setCurrentRequest(w){this.currentRequest=w}}return tL.Context=h,tL}var cm={},Pdt;function K3(){if(Pdt)return cm;Pdt=1;var f=cm&&cm.__createBinding||(Object.create?(function(P,g,E,C){C===void 0&&(C=E);var T=Object.getOwnPropertyDescriptor(g,E);(!T||("get"in T?!g.__esModule:T.writable||T.configurable))&&(T={enumerable:!0,get:function(){return g[E]}}),Object.defineProperty(P,C,T)}):(function(P,g,E,C){C===void 0&&(C=E),P[C]=g[E]})),h=cm&&cm.__setModuleDefault||(Object.create?(function(P,g){Object.defineProperty(P,"default",{enumerable:!0,value:g})}):function(P,g){P.default=g}),b=cm&&cm.__importStar||(function(){var P=function(g){return P=Object.getOwnPropertyNames||function(E){var C=[];for(var T in E)Object.prototype.hasOwnProperty.call(E,T)&&(C[C.length]=T);return C},P(g)};return function(g){if(g&&g.__esModule)return g;var E={};if(g!=null)for(var C=P(g),T=0;TR.metadata.filter(H=>H.key===P.UNMANAGED_TAG)),k=[].concat.apply([],j).length,x=O.length-k;return x>0?x:T(M,I)}})(p3)),p3}var iL={},Tdt;function KVt(){if(Tdt)return iL;Tdt=1,Object.defineProperty(iL,"__esModule",{value:!0}),iL.Request=void 0;const f=vA();class h{id;serviceIdentifier;parentContext;parentRequest;bindings;childRequests;target;requestScope;constructor(w,m,P,g,E){this.id=(0,f.id)(),this.serviceIdentifier=w,this.parentContext=m,this.parentRequest=P,this.target=E,this.childRequests=[],this.bindings=Array.isArray(g)?g:[g],this.requestScope=P===null?new Map:null}addChildRequest(w,m,P){const g=new h(w,this.parentContext,this,m,P);return this.childRequests.push(g),g}}return iL.Request=h,iL}var jdt;function Npt(){if(jdt)return hp;jdt=1;var f=hp&&hp.__createBinding||(Object.create?(function(ce,J,te,fe){fe===void 0&&(fe=te);var ve=Object.getOwnPropertyDescriptor(J,te);(!ve||("get"in ve?!J.__esModule:ve.writable||ve.configurable))&&(ve={enumerable:!0,get:function(){return J[te]}}),Object.defineProperty(ce,fe,ve)}):(function(ce,J,te,fe){fe===void 0&&(fe=te),ce[fe]=J[te]})),h=hp&&hp.__setModuleDefault||(Object.create?(function(ce,J){Object.defineProperty(ce,"default",{enumerable:!0,value:J})}):function(ce,J){ce.default=J}),b=hp&&hp.__importStar||(function(){var ce=function(J){return ce=Object.getOwnPropertyNames||function(te){var fe=[];for(var ve in te)Object.prototype.hasOwnProperty.call(te,ve)&&(fe[fe.length]=ve);return fe},ce(J)};return function(J){if(J&&J.__esModule)return J;var te={};if(J!=null)for(var fe=ce(J),ve=0;ve{const De=new j.Request(tt.serviceIdentifier,te,fe,tt,ve);return tt.constraint(De)}),F(ve.serviceIdentifier,ke,fe,ve,te.container),ke}function H(ce,J){const te=J.isMultiInject?E.MULTI_INJECT_TAG:E.INJECT_TAG,fe=[new _.Metadata(te,ce)];return J.customTag!==void 0&&fe.push(new _.Metadata(J.customTag.key,J.customTag.value)),J.isOptional===!0&&fe.push(new _.Metadata(E.OPTIONAL_TAG,!0)),fe}function F(ce,J,te,fe,ve){switch(J.length){case m.BindingCount.NoBindingsAvailable:if(fe.isOptional())return J;{const me=(0,T.getServiceIdentifierAsString)(ce);let ke=P.NOT_REGISTERED;throw ke+=(0,T.listMetadataForTarget)(me,fe),ke+=(0,T.listRegisteredBindingsForServiceIdentifier)(ve,me,W),te!==null&&(ke+=` +${P.TRYING_TO_RESOLVE_BINDINGS((0,T.getServiceIdentifierAsString)(te.serviceIdentifier))}`),new Error(ke)}case m.BindingCount.OnlyOneBindingAvailable:return J;case m.BindingCount.MultipleBindingsAvailable:default:if(fe.isArray())return J;{const me=(0,T.getServiceIdentifierAsString)(ce);let ke=`${P.AMBIGUOUS_MATCH} ${me}`;throw ke+=(0,T.listRegisteredBindingsForServiceIdentifier)(ve,me,W),new Error(ke)}}}function $(ce,J,te,fe,ve,me){let ke,tt;if(ve===null){ke=R(ce,J,fe,null,me),tt=new j.Request(te,fe,null,ke,me);const De=new I.Plan(fe,tt);fe.addPlan(De)}else ke=R(ce,J,fe,ve,me),tt=ve.addChildRequest(me.serviceIdentifier,ke,me);ke.forEach(De=>{let ct=null;if(me.isArray())ct=tt.addChildRequest(De.serviceIdentifier,De,me);else{if(De.cache!==null)return;ct=tt}if(De.type===g.BindingTypeEnum.Instance&&De.implementationType!==null){const Z=(0,O.getDependencies)(ce,De.implementationType);if(fe.container.options.skipBaseClassChecks!==!0){const Nt=(0,O.getBaseClassDependencyCount)(ce,De.implementationType);if(Z.length{$(ce,!1,Nt.serviceIdentifier,fe,ct,Nt)})}})}function W(ce,J){let te=[];const fe=k(ce);return fe.hasKey(J)?te=fe.get(J):ce.parent!==null&&(te=W(ce.parent,J)),te}function re(ce,J,te,fe,ve,me=!1){const ke=new M.Context(J),tt=x(te,fe,ve);try{return $(ce,me,fe,ke,null,tt),ke}catch(De){throw(0,C.isStackOverflowException)(De)&&(0,T.circularDependencyToException)(ke.plan.rootRequest),De}}function ae(ce,J,te){const fe=H(J,te),ve=(0,w.getClassElementMetadataFromLegacyMetadata)(fe);if(ve.kind===w.ClassElementMetadataKind.unmanaged)throw new Error("Unexpected metadata when creating target");const me=new w.LegacyTargetImpl("",ve,"Variable"),ke=new M.Context(ce);return new j.Request(J,ke,null,[],me)}return hp}var Zv={},yM={},rL={},Adt;function aJ(){if(Adt)return rL;Adt=1,Object.defineProperty(rL,"__esModule",{value:!0}),rL.isPromise=f,rL.isPromiseOrContainsPromise=h;function f(b){return(typeof b=="object"&&b!==null||typeof b=="function")&&typeof b.then=="function"}function h(b){return f(b)?!0:Array.isArray(b)&&b.some(f)}return rL}var Odt;function qVt(){if(Odt)return yM;Odt=1,Object.defineProperty(yM,"__esModule",{value:!0}),yM.saveToScope=yM.tryGetFromScope=void 0;const f=Py(),h=aJ(),b=(E,C)=>C.scope===f.BindingScopeEnum.Singleton&&C.activated?C.cache:C.scope===f.BindingScopeEnum.Request&&E.has(C.id)?E.get(C.id):null;yM.tryGetFromScope=b;const w=(E,C,T)=>{C.scope===f.BindingScopeEnum.Singleton&&P(C,T),C.scope===f.BindingScopeEnum.Request&&m(E,C,T)};yM.saveToScope=w;const m=(E,C,T)=>{E.has(C.id)||E.set(C.id,T)},P=(E,C)=>{E.cache=C,E.activated=!0,(0,h.isPromise)(C)&&g(E,C)},g=async(E,C)=>{try{const T=await C;E.cache=T}catch(T){throw E.cache=null,E.activated=!1,T}};return yM}var Kd={},oL={},Ddt;function HVt(){if(Ddt)return oL;Ddt=1,Object.defineProperty(oL,"__esModule",{value:!0}),oL.FactoryType=void 0;var f;return(function(h){h.DynamicValue="toDynamicValue",h.Factory="toFactory",h.Provider="toProvider"})(f||(oL.FactoryType=f={})),oL}var kdt;function Fpt(){if(kdt)return Kd;kdt=1;var f=Kd&&Kd.__createBinding||(Object.create?(function(M,_,I,O){O===void 0&&(O=I);var j=Object.getOwnPropertyDescriptor(_,I);(!j||("get"in j?!_.__esModule:j.writable||j.configurable))&&(j={enumerable:!0,get:function(){return _[I]}}),Object.defineProperty(M,O,j)}):(function(M,_,I,O){O===void 0&&(O=I),M[O]=_[I]})),h=Kd&&Kd.__setModuleDefault||(Object.create?(function(M,_){Object.defineProperty(M,"default",{enumerable:!0,value:_})}):function(M,_){M.default=_}),b=Kd&&Kd.__importStar||(function(){var M=function(_){return M=Object.getOwnPropertyNames||function(I){var O=[];for(var j in I)Object.prototype.hasOwnProperty.call(I,j)&&(O[O.length]=j);return O},M(_)};return function(_){if(_&&_.__esModule)return _;var I={};if(_!=null)for(var O=M(_),j=0;j_=>(...I)=>{I.forEach(O=>{M.bind(O).toService(_)})};Kd.multiBindToService=E;const C=M=>{let _=null;switch(M.type){case m.BindingTypeEnum.ConstantValue:case m.BindingTypeEnum.Function:_=M.cache;break;case m.BindingTypeEnum.Constructor:case m.BindingTypeEnum.Instance:_=M.implementationType;break;case m.BindingTypeEnum.DynamicValue:_=M.dynamicValue;break;case m.BindingTypeEnum.Provider:_=M.provider;break;case m.BindingTypeEnum.Factory:_=M.factory;break}if(_===null){const I=(0,P.getServiceIdentifierAsString)(M.serviceIdentifier);throw new Error(`${w.INVALID_BINDING_TYPE} ${I}`)}};Kd.ensureFullyBound=C;const T=M=>{switch(M.type){case m.BindingTypeEnum.Factory:return{factory:M.factory,factoryType:g.FactoryType.Factory};case m.BindingTypeEnum.Provider:return{factory:M.provider,factoryType:g.FactoryType.Provider};case m.BindingTypeEnum.DynamicValue:return{factory:M.dynamicValue,factoryType:g.FactoryType.DynamicValue};default:throw new Error(`Unexpected factory type ${M.type}`)}};return Kd.getFactoryDetails=T,Kd}var ey={},Rdt;function zVt(){if(Rdt)return ey;Rdt=1;var f=ey&&ey.__createBinding||(Object.create?(function(R,H,F,$){$===void 0&&($=F);var W=Object.getOwnPropertyDescriptor(H,F);(!W||("get"in W?!H.__esModule:W.writable||W.configurable))&&(W={enumerable:!0,get:function(){return H[F]}}),Object.defineProperty(R,$,W)}):(function(R,H,F,$){$===void 0&&($=F),R[$]=H[F]})),h=ey&&ey.__setModuleDefault||(Object.create?(function(R,H){Object.defineProperty(R,"default",{enumerable:!0,value:H})}):function(R,H){R.default=H}),b=ey&&ey.__importStar||(function(){var R=function(H){return R=Object.getOwnPropertyNames||function(F){var $=[];for(var W in F)Object.prototype.hasOwnProperty.call(F,W)&&($[$.length]=W);return $},R(H)};return function(H){if(H&&H.__esModule)return H;var F={};if(H!=null)for(var $=R(H),W=0;W<$.length;W++)$[W]!=="default"&&f(F,H,$[W]);return h(F,H),F}})();Object.defineProperty(ey,"__esModule",{value:!0}),ey.resolveInstance=x;const w=vg(),m=Py(),P=b(Lf()),g=aJ();function E(R,H){return R.reduce((F,$)=>{const W=H($);return $.target.type===m.TargetTypeEnum.ConstructorArgument?F.constructorInjections.push(W):(F.propertyRequests.push($),F.propertyInjections.push(W)),F.isAsync||(F.isAsync=(0,g.isPromiseOrContainsPromise)(W)),F},{constructorInjections:[],isAsync:!1,propertyInjections:[],propertyRequests:[]})}function C(R,H,F){let $;if(H.length>0){const W=E(H,F),re={...W,constr:R};W.isAsync?$=M(re):$=T(re)}else $=new R;return $}function T(R){const H=new R.constr(...R.constructorInjections);return R.propertyRequests.forEach((F,$)=>{const W=F.target.identifier,re=R.propertyInjections[$];(!F.target.isOptional()||re!==void 0)&&(H[W]=re)}),H}async function M(R){const H=await _(R.constructorInjections),F=await _(R.propertyInjections);return T({...R,constructorInjections:H,propertyInjections:F})}async function _(R){const H=[];for(const F of R)Array.isArray(F)?H.push(Promise.all(F)):H.push(F);return Promise.all(H)}function I(R,H){const F=O(R,H);return(0,g.isPromise)(F)?F.then(()=>H):H}function O(R,H){if(Reflect.hasMetadata(P.POST_CONSTRUCT,R)){const F=Reflect.getMetadata(P.POST_CONSTRUCT,R);try{return H[F.value]?.()}catch($){if($ instanceof Error)throw new Error((0,w.POST_CONSTRUCT_ERROR)(R.name,$.message))}}}function j(R,H){R.scope!==m.BindingScopeEnum.Singleton&&k(R,H)}function k(R,H){const F=`Class cannot be instantiated in ${R.scope===m.BindingScopeEnum.Request?"request":"transient"} scope.`;if(typeof R.onDeactivation=="function")throw new Error((0,w.ON_DEACTIVATION_ERROR)(H.name,F));if(Reflect.hasMetadata(P.PRE_DESTROY,H))throw new Error((0,w.PRE_DESTROY_ERROR)(H.name,F))}function x(R,H,F,$){j(R,H);const W=C(H,F,$);return(0,g.isPromise)(W)?W.then(re=>I(H,re)):I(H,W)}return ey}var xdt;function VVt(){if(xdt)return Zv;xdt=1;var f=Zv&&Zv.__createBinding||(Object.create?(function(ae,ce,J,te){te===void 0&&(te=J);var fe=Object.getOwnPropertyDescriptor(ce,J);(!fe||("get"in fe?!ce.__esModule:fe.writable||fe.configurable))&&(fe={enumerable:!0,get:function(){return ce[J]}}),Object.defineProperty(ae,te,fe)}):(function(ae,ce,J,te){te===void 0&&(te=J),ae[te]=ce[J]})),h=Zv&&Zv.__setModuleDefault||(Object.create?(function(ae,ce){Object.defineProperty(ae,"default",{enumerable:!0,value:ce})}):function(ae,ce){ae.default=ce}),b=Zv&&Zv.__importStar||(function(){var ae=function(ce){return ae=Object.getOwnPropertyNames||function(J){var te=[];for(var fe in J)Object.prototype.hasOwnProperty.call(J,fe)&&(te[te.length]=fe);return te},ae(ce)};return function(ce){if(ce&&ce.__esModule)return ce;var J={};if(ce!=null)for(var te=ae(ce),fe=0;fece=>{ce.parentContext.setCurrentRequest(ce);const J=ce.bindings,te=ce.childRequests,fe=ce.target&&ce.target.isArray(),ve=!ce.parentRequest||!ce.parentRequest.target||!ce.target||!ce.parentRequest.target.matchesArray(ce.target.serviceIdentifier);if(fe&&ve)return te.map(me=>_(ae)(me));{if(ce.target.isOptional()&&J.length===0)return;const me=J[0];return k(ae,ce,me)}},I=(ae,ce)=>{const J=(0,C.getFactoryDetails)(ae);return(0,T.tryAndThrowErrorIfStackOverflow)(()=>J.factory.bind(ae)(ce),()=>new Error(w.CIRCULAR_DEPENDENCY_IN_FACTORY(J.factoryType,ce.currentRequest.serviceIdentifier.toString())))},O=(ae,ce,J)=>{let te;const fe=ce.childRequests;switch((0,C.ensureFullyBound)(J),J.type){case m.BindingTypeEnum.ConstantValue:case m.BindingTypeEnum.Function:te=J.cache;break;case m.BindingTypeEnum.Constructor:te=J.implementationType;break;case m.BindingTypeEnum.Instance:te=(0,M.resolveInstance)(J,J.implementationType,fe,_(ae));break;default:te=I(J,ce.parentContext)}return te},j=(ae,ce,J)=>{let te=(0,g.tryGetFromScope)(ae,ce);return te!==null||(te=J(),(0,g.saveToScope)(ae,ce,te)),te},k=(ae,ce,J)=>j(ae,J,()=>{let te=O(ae,ce,J);return(0,E.isPromise)(te)?te=te.then(fe=>x(ce,J,fe)):te=x(ce,J,te),te});function x(ae,ce,J){let te=R(ae.parentContext,ce,J);const fe=W(ae.parentContext.container);let ve,me=fe.next();do{ve=me.value;const ke=ae.parentContext,tt=ae.serviceIdentifier,De=$(ve,tt);(0,E.isPromise)(te)?te=F(De,ke,te):te=H(De,ke,te),me=fe.next()}while(me.done!==!0&&!(0,P.getBindingDictionary)(ve).hasKey(ae.serviceIdentifier));return te}const R=(ae,ce,J)=>{let te;return typeof ce.onActivation=="function"?te=ce.onActivation(ae,J):te=J,te},H=(ae,ce,J)=>{let te=ae.next();for(;te.done!==!0;){if(J=te.value(ce,J),(0,E.isPromise)(J))return F(ae,ce,J);te=ae.next()}return J},F=async(ae,ce,J)=>{let te=await J,fe=ae.next();for(;fe.done!==!0;)te=await fe.value(ce,te),fe=ae.next();return te},$=(ae,ce)=>{const J=ae._activations;return J.hasKey(ce)?J.get(ce).values():[].values()},W=ae=>{const ce=[ae];let J=ae.parent;for(;J!==null;)ce.push(J),J=J.parent;return{next:()=>{const ve=ce.pop();return ve!==void 0?{done:!1,value:ve}:{done:!0,value:void 0}}}};function re(ae){return _(ae.plan.rootRequest.requestScope)(ae.plan.rootRequest)}return Zv}var sm={},cL={},sL={},uL={},aL={},lL={},uh={},Ldt;function Bpt(){if(Ldt)return uh;Ldt=1;var f=uh&&uh.__createBinding||(Object.create?(function(T,M,_,I){I===void 0&&(I=_);var O=Object.getOwnPropertyDescriptor(M,_);(!O||("get"in O?!M.__esModule:O.writable||O.configurable))&&(O={enumerable:!0,get:function(){return M[_]}}),Object.defineProperty(T,I,O)}):(function(T,M,_,I){I===void 0&&(I=_),T[I]=M[_]})),h=uh&&uh.__setModuleDefault||(Object.create?(function(T,M){Object.defineProperty(T,"default",{enumerable:!0,value:M})}):function(T,M){T.default=M}),b=uh&&uh.__importStar||(function(){var T=function(M){return T=Object.getOwnPropertyNames||function(_){var I=[];for(var O in _)Object.prototype.hasOwnProperty.call(_,O)&&(I[I.length]=O);return I},T(M)};return function(M){if(M&&M.__esModule)return M;var _={};if(M!=null)for(var I=T(M),O=0;O{const _=T.parentRequest;return _!==null?M(_)?!0:P(_,M):!1};uh.traverseAncerstors=P;const g=T=>M=>{const _=I=>I!==null&&I.target!==null&&I.target.matchesTag(T)(M);return _.metaData=new m.Metadata(T,M),_};uh.taggedConstraint=g;const E=g(w.NAMED_TAG);uh.namedConstraint=E;const C=T=>M=>{let _=null;if(M!==null){if(_=M.bindings[0],typeof T=="string")return _.serviceIdentifier===T;{const I=M.bindings[0].implementationType;return T===I}}return!1};return uh.typeConstraint=C,uh}var Ndt;function Oye(){if(Ndt)return lL;Ndt=1,Object.defineProperty(lL,"__esModule",{value:!0}),lL.BindingWhenSyntax=void 0;const f=Dye(),h=Bpt();class b{_binding;constructor(m){this._binding=m}when(m){return this._binding.constraint=m,new f.BindingOnSyntax(this._binding)}whenTargetNamed(m){return this._binding.constraint=(0,h.namedConstraint)(m),new f.BindingOnSyntax(this._binding)}whenTargetIsDefault(){return this._binding.constraint=m=>m===null?!1:m.target!==null&&!m.target.isNamed()&&!m.target.isTagged(),new f.BindingOnSyntax(this._binding)}whenTargetTagged(m,P){return this._binding.constraint=(0,h.taggedConstraint)(m)(P),new f.BindingOnSyntax(this._binding)}whenInjectedInto(m){return this._binding.constraint=P=>P!==null&&(0,h.typeConstraint)(m)(P.parentRequest),new f.BindingOnSyntax(this._binding)}whenParentNamed(m){return this._binding.constraint=P=>P!==null&&(0,h.namedConstraint)(m)(P.parentRequest),new f.BindingOnSyntax(this._binding)}whenParentTagged(m,P){return this._binding.constraint=g=>g!==null&&(0,h.taggedConstraint)(m)(P)(g.parentRequest),new f.BindingOnSyntax(this._binding)}whenAnyAncestorIs(m){return this._binding.constraint=P=>P!==null&&(0,h.traverseAncerstors)(P,(0,h.typeConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenNoAncestorIs(m){return this._binding.constraint=P=>P!==null&&!(0,h.traverseAncerstors)(P,(0,h.typeConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenAnyAncestorNamed(m){return this._binding.constraint=P=>P!==null&&(0,h.traverseAncerstors)(P,(0,h.namedConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenNoAncestorNamed(m){return this._binding.constraint=P=>P!==null&&!(0,h.traverseAncerstors)(P,(0,h.namedConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenAnyAncestorTagged(m,P){return this._binding.constraint=g=>g!==null&&(0,h.traverseAncerstors)(g,(0,h.taggedConstraint)(m)(P)),new f.BindingOnSyntax(this._binding)}whenNoAncestorTagged(m,P){return this._binding.constraint=g=>g!==null&&!(0,h.traverseAncerstors)(g,(0,h.taggedConstraint)(m)(P)),new f.BindingOnSyntax(this._binding)}whenAnyAncestorMatches(m){return this._binding.constraint=P=>P!==null&&(0,h.traverseAncerstors)(P,m),new f.BindingOnSyntax(this._binding)}whenNoAncestorMatches(m){return this._binding.constraint=P=>P!==null&&!(0,h.traverseAncerstors)(P,m),new f.BindingOnSyntax(this._binding)}}return lL.BindingWhenSyntax=b,lL}var Fdt;function Dye(){if(Fdt)return aL;Fdt=1,Object.defineProperty(aL,"__esModule",{value:!0}),aL.BindingOnSyntax=void 0;const f=Oye();class h{_binding;constructor(w){this._binding=w}onActivation(w){return this._binding.onActivation=w,new f.BindingWhenSyntax(this._binding)}onDeactivation(w){return this._binding.onDeactivation=w,new f.BindingWhenSyntax(this._binding)}}return aL.BindingOnSyntax=h,aL}var Bdt;function $pt(){if(Bdt)return uL;Bdt=1,Object.defineProperty(uL,"__esModule",{value:!0}),uL.BindingWhenOnSyntax=void 0;const f=Dye(),h=Oye();class b{_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(m){this._binding=m,this._bindingWhenSyntax=new h.BindingWhenSyntax(this._binding),this._bindingOnSyntax=new f.BindingOnSyntax(this._binding)}when(m){return this._bindingWhenSyntax.when(m)}whenTargetNamed(m){return this._bindingWhenSyntax.whenTargetNamed(m)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(m,P){return this._bindingWhenSyntax.whenTargetTagged(m,P)}whenInjectedInto(m){return this._bindingWhenSyntax.whenInjectedInto(m)}whenParentNamed(m){return this._bindingWhenSyntax.whenParentNamed(m)}whenParentTagged(m,P){return this._bindingWhenSyntax.whenParentTagged(m,P)}whenAnyAncestorIs(m){return this._bindingWhenSyntax.whenAnyAncestorIs(m)}whenNoAncestorIs(m){return this._bindingWhenSyntax.whenNoAncestorIs(m)}whenAnyAncestorNamed(m){return this._bindingWhenSyntax.whenAnyAncestorNamed(m)}whenAnyAncestorTagged(m,P){return this._bindingWhenSyntax.whenAnyAncestorTagged(m,P)}whenNoAncestorNamed(m){return this._bindingWhenSyntax.whenNoAncestorNamed(m)}whenNoAncestorTagged(m,P){return this._bindingWhenSyntax.whenNoAncestorTagged(m,P)}whenAnyAncestorMatches(m){return this._bindingWhenSyntax.whenAnyAncestorMatches(m)}whenNoAncestorMatches(m){return this._bindingWhenSyntax.whenNoAncestorMatches(m)}onActivation(m){return this._bindingOnSyntax.onActivation(m)}onDeactivation(m){return this._bindingOnSyntax.onDeactivation(m)}}return uL.BindingWhenOnSyntax=b,uL}var $dt;function GVt(){if($dt)return sL;$dt=1,Object.defineProperty(sL,"__esModule",{value:!0}),sL.BindingInSyntax=void 0;const f=Py(),h=$pt();class b{_binding;constructor(m){this._binding=m}inRequestScope(){return this._binding.scope=f.BindingScopeEnum.Request,new h.BindingWhenOnSyntax(this._binding)}inSingletonScope(){return this._binding.scope=f.BindingScopeEnum.Singleton,new h.BindingWhenOnSyntax(this._binding)}inTransientScope(){return this._binding.scope=f.BindingScopeEnum.Transient,new h.BindingWhenOnSyntax(this._binding)}}return sL.BindingInSyntax=b,sL}var Kdt;function UVt(){if(Kdt)return cL;Kdt=1,Object.defineProperty(cL,"__esModule",{value:!0}),cL.BindingInWhenOnSyntax=void 0;const f=GVt(),h=Dye(),b=Oye();class w{_bindingInSyntax;_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(P){this._binding=P,this._bindingWhenSyntax=new b.BindingWhenSyntax(this._binding),this._bindingOnSyntax=new h.BindingOnSyntax(this._binding),this._bindingInSyntax=new f.BindingInSyntax(P)}inRequestScope(){return this._bindingInSyntax.inRequestScope()}inSingletonScope(){return this._bindingInSyntax.inSingletonScope()}inTransientScope(){return this._bindingInSyntax.inTransientScope()}when(P){return this._bindingWhenSyntax.when(P)}whenTargetNamed(P){return this._bindingWhenSyntax.whenTargetNamed(P)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(P,g){return this._bindingWhenSyntax.whenTargetTagged(P,g)}whenInjectedInto(P){return this._bindingWhenSyntax.whenInjectedInto(P)}whenParentNamed(P){return this._bindingWhenSyntax.whenParentNamed(P)}whenParentTagged(P,g){return this._bindingWhenSyntax.whenParentTagged(P,g)}whenAnyAncestorIs(P){return this._bindingWhenSyntax.whenAnyAncestorIs(P)}whenNoAncestorIs(P){return this._bindingWhenSyntax.whenNoAncestorIs(P)}whenAnyAncestorNamed(P){return this._bindingWhenSyntax.whenAnyAncestorNamed(P)}whenAnyAncestorTagged(P,g){return this._bindingWhenSyntax.whenAnyAncestorTagged(P,g)}whenNoAncestorNamed(P){return this._bindingWhenSyntax.whenNoAncestorNamed(P)}whenNoAncestorTagged(P,g){return this._bindingWhenSyntax.whenNoAncestorTagged(P,g)}whenAnyAncestorMatches(P){return this._bindingWhenSyntax.whenAnyAncestorMatches(P)}whenNoAncestorMatches(P){return this._bindingWhenSyntax.whenNoAncestorMatches(P)}onActivation(P){return this._bindingOnSyntax.onActivation(P)}onDeactivation(P){return this._bindingOnSyntax.onDeactivation(P)}}return cL.BindingInWhenOnSyntax=w,cL}var qdt;function WVt(){if(qdt)return sm;qdt=1;var f=sm&&sm.__createBinding||(Object.create?(function(C,T,M,_){_===void 0&&(_=M);var I=Object.getOwnPropertyDescriptor(T,M);(!I||("get"in I?!T.__esModule:I.writable||I.configurable))&&(I={enumerable:!0,get:function(){return T[M]}}),Object.defineProperty(C,_,I)}):(function(C,T,M,_){_===void 0&&(_=M),C[_]=T[M]})),h=sm&&sm.__setModuleDefault||(Object.create?(function(C,T){Object.defineProperty(C,"default",{enumerable:!0,value:T})}):function(C,T){C.default=T}),b=sm&&sm.__importStar||(function(){var C=function(T){return C=Object.getOwnPropertyNames||function(M){var _=[];for(var I in M)Object.prototype.hasOwnProperty.call(M,I)&&(_[_.length]=I);return _},C(T)};return function(T){if(T&&T.__esModule)return T;var M={};if(T!=null)for(var _=C(T),I=0;I<_.length;I++)_[I]!=="default"&&f(M,T,_[I]);return h(M,T),M}})();Object.defineProperty(sm,"__esModule",{value:!0}),sm.BindingToSyntax=void 0;const w=b(vg()),m=Py(),P=UVt(),g=$pt();class E{_binding;constructor(T){this._binding=T}to(T){return this._binding.type=m.BindingTypeEnum.Instance,this._binding.implementationType=T,new P.BindingInWhenOnSyntax(this._binding)}toSelf(){if(typeof this._binding.serviceIdentifier!="function")throw new Error(w.INVALID_TO_SELF_VALUE);const T=this._binding.serviceIdentifier;return this.to(T)}toConstantValue(T){return this._binding.type=m.BindingTypeEnum.ConstantValue,this._binding.cache=T,this._binding.dynamicValue=null,this._binding.implementationType=null,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toDynamicValue(T){return this._binding.type=m.BindingTypeEnum.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=T,this._binding.implementationType=null,new P.BindingInWhenOnSyntax(this._binding)}toConstructor(T){return this._binding.type=m.BindingTypeEnum.Constructor,this._binding.implementationType=T,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toFactory(T){return this._binding.type=m.BindingTypeEnum.Factory,this._binding.factory=T,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toFunction(T){if(typeof T!="function")throw new Error(w.INVALID_FUNCTION_BINDING);const M=this.toConstantValue(T);return this._binding.type=m.BindingTypeEnum.Function,this._binding.scope=m.BindingScopeEnum.Singleton,M}toAutoFactory(T){return this._binding.type=m.BindingTypeEnum.Factory,this._binding.factory=M=>()=>M.container.get(T),this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toAutoNamedFactory(T){return this._binding.type=m.BindingTypeEnum.Factory,this._binding.factory=M=>_=>M.container.getNamed(T,_),new g.BindingWhenOnSyntax(this._binding)}toProvider(T){return this._binding.type=m.BindingTypeEnum.Provider,this._binding.provider=T,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toService(T){this._binding.type=m.BindingTypeEnum.DynamicValue,Object.defineProperty(this._binding,"cache",{configurable:!0,enumerable:!0,get(){return null},set(M){}}),this._binding.dynamicValue=M=>{try{return M.container.get(T)}catch{return M.container.getAsync(T)}},this._binding.implementationType=null}}return sm.BindingToSyntax=E,sm}var fL={},Hdt;function YVt(){if(Hdt)return fL;Hdt=1,Object.defineProperty(fL,"__esModule",{value:!0}),fL.ContainerSnapshot=void 0;class f{bindings;activations;deactivations;middleware;moduleActivationStore;static of(b,w,m,P,g){const E=new f;return E.bindings=b,E.middleware=w,E.deactivations=P,E.activations=m,E.moduleActivationStore=g,E}}return fL.ContainerSnapshot=f,fL}var um={},YY={},zdt;function XVt(){if(zdt)return YY;zdt=1,Object.defineProperty(YY,"__esModule",{value:!0}),YY.isClonable=f;function f(h){return typeof h=="object"&&h!==null&&"clone"in h&&typeof h.clone=="function"}return YY}var Vdt;function Kpt(){if(Vdt)return um;Vdt=1;var f=um&&um.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=um&&um.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=um&&um.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M{const M=E.hasKey(C)?E.get(C):void 0;if(M!==void 0){const _=T.filter(I=>!M.some(O=>I===O));this._setValue(C,_)}})}removeByCondition(E){const C=[];return this._map.forEach((T,M)=>{const _=[];for(const I of T)E(I)?C.push(I):_.push(I);this._setValue(M,_)}),C}hasKey(E){return this._checkNonNulish(E),this._map.has(E)}clone(){const E=new P;return this._map.forEach((C,T)=>{C.forEach(M=>{E.add(T,(0,m.isClonable)(M)?M.clone():M)})}),E}traverse(E){this._map.forEach((C,T)=>{E(T,C)})}_checkNonNulish(E){if(E==null)throw new Error(w.NULL_ARGUMENT)}_setValue(E,C){C.length>0?this._map.set(E,C):this._map.delete(E)}}return um.Lookup=P,um}var hL={},Gdt;function JVt(){if(Gdt)return hL;Gdt=1,Object.defineProperty(hL,"__esModule",{value:!0}),hL.ModuleActivationStore=void 0;const f=Kpt();class h{_map=new Map;remove(w){const m=this._map.get(w);return m===void 0?this._getEmptyHandlersStore():(this._map.delete(w),m)}addDeactivation(w,m,P){this._getModuleActivationHandlers(w).onDeactivations.add(m,P)}addActivation(w,m,P){this._getModuleActivationHandlers(w).onActivations.add(m,P)}clone(){const w=new h;return this._map.forEach((m,P)=>{w._map.set(P,{onActivations:m.onActivations.clone(),onDeactivations:m.onDeactivations.clone()})}),w}_getModuleActivationHandlers(w){let m=this._map.get(w);return m===void 0&&(m=this._getEmptyHandlersStore(),this._map.set(w,m)),m}_getEmptyHandlersStore(){return{onActivations:new f.Lookup,onDeactivations:new f.Lookup}}}return hL.ModuleActivationStore=h,hL}var Udt;function QVt(){if(Udt)return rm;Udt=1;var f=rm&&rm.__createBinding||(Object.create?(function(H,F,$,W){W===void 0&&(W=$);var re=Object.getOwnPropertyDescriptor(F,$);(!re||("get"in re?!F.__esModule:re.writable||re.configurable))&&(re={enumerable:!0,get:function(){return F[$]}}),Object.defineProperty(H,W,re)}):(function(H,F,$,W){W===void 0&&(W=$),H[W]=F[$]})),h=rm&&rm.__setModuleDefault||(Object.create?(function(H,F){Object.defineProperty(H,"default",{enumerable:!0,value:F})}):function(H,F){H.default=F}),b=rm&&rm.__importStar||(function(){var H=function(F){return H=Object.getOwnPropertyNames||function($){var W=[];for(var re in $)Object.prototype.hasOwnProperty.call($,re)&&(W[W.length]=re);return W},H(F)};return function(F){if(F&&F.__esModule)return F;var $={};if(F!=null)for(var W=H(F),re=0;re(0,C.getBindingDictionary)(te)),ce=(0,C.getBindingDictionary)(re);function J(te,fe){te.traverse((ve,me)=>{me.forEach(ke=>{fe.add(ke.serviceIdentifier,ke.clone())})})}return ae.forEach(te=>{J(te,ce)}),re}load(...F){const $=this._getContainerModuleHelpersFactory();for(const W of F){const re=$(W.id);W.registry(re.bindFunction,re.unbindFunction,re.isboundFunction,re.rebindFunction,re.unbindAsyncFunction,re.onActivationFunction,re.onDeactivationFunction)}}async loadAsync(...F){const $=this._getContainerModuleHelpersFactory();for(const W of F){const re=$(W.id);await W.registry(re.bindFunction,re.unbindFunction,re.isboundFunction,re.rebindFunction,re.unbindAsyncFunction,re.onActivationFunction,re.onDeactivationFunction)}}unload(...F){F.forEach($=>{const W=this._removeModuleBindings($.id);this._deactivateSingletons(W),this._removeModuleHandlers($.id)})}async unloadAsync(...F){for(const $ of F){const W=this._removeModuleBindings($.id);await this._deactivateSingletonsAsync(W),this._removeModuleHandlers($.id)}}bind(F){return this._bind(this._buildBinding(F))}rebind(F){return this.unbind(F),this.bind(F)}async rebindAsync(F){return await this.unbindAsync(F),this.bind(F)}unbind(F){if(this._bindingDictionary.hasKey(F)){const $=this._bindingDictionary.get(F);this._deactivateSingletons($)}this._removeServiceFromDictionary(F)}async unbindAsync(F){if(this._bindingDictionary.hasKey(F)){const $=this._bindingDictionary.get(F);await this._deactivateSingletonsAsync($)}this._removeServiceFromDictionary(F)}unbindAll(){this._bindingDictionary.traverse((F,$)=>{this._deactivateSingletons($)}),this._bindingDictionary=new k.Lookup}async unbindAllAsync(){const F=[];this._bindingDictionary.traverse(($,W)=>{F.push(this._deactivateSingletonsAsync(W))}),await Promise.all(F),this._bindingDictionary=new k.Lookup}onActivation(F,$){this._activations.add(F,$)}onDeactivation(F,$){this._deactivations.add(F,$)}isBound(F){let $=this._bindingDictionary.hasKey(F);return!$&&this.parent&&($=this.parent.isBound(F)),$}isCurrentBound(F){return this._bindingDictionary.hasKey(F)}isBoundNamed(F,$){return this.isBoundTagged(F,g.NAMED_TAG,$)}isBoundTagged(F,$,W){let re=!1;if(this._bindingDictionary.hasKey(F)){const ae=this._bindingDictionary.get(F),ce=(0,C.createMockRequest)(this,F,{customTag:{key:$,value:W},isMultiInject:!1});re=ae.some(J=>J.constraint(ce))}return!re&&this.parent&&(re=this.parent.isBoundTagged(F,$,W)),re}snapshot(){this._snapshots.push(j.ContainerSnapshot.of(this._bindingDictionary.clone(),this._middleware,this._activations.clone(),this._deactivations.clone(),this._moduleActivationStore.clone()))}restore(){const F=this._snapshots.pop();if(F===void 0)throw new Error(m.NO_MORE_SNAPSHOTS_AVAILABLE);this._bindingDictionary=F.bindings,this._activations=F.activations,this._deactivations=F.deactivations,this._middleware=F.middleware,this._moduleActivationStore=F.moduleActivationStore}createChild(F){const $=new R(F||this.options);return $.parent=this,$}applyMiddleware(...F){const $=this._middleware?this._middleware:this._planAndResolve();this._middleware=F.reduce((W,re)=>re(W),$)}applyCustomMetadataReader(F){this._metadataReader=F}get(F){const $=this._getNotAllArgs(F,!1,!1);return this._getButThrowIfAsync($)}async getAsync(F){const $=this._getNotAllArgs(F,!1,!1);return this._get($)}getTagged(F,$,W){const re=this._getNotAllArgs(F,!1,!1,$,W);return this._getButThrowIfAsync(re)}async getTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!1,!1,$,W);return this._get(re)}getNamed(F,$){return this.getTagged(F,g.NAMED_TAG,$)}async getNamedAsync(F,$){return this.getTaggedAsync(F,g.NAMED_TAG,$)}getAll(F,$){const W=this._getAllArgs(F,$,!1);return this._getButThrowIfAsync(W)}async getAllAsync(F,$){const W=this._getAllArgs(F,$,!1);return this._getAll(W)}getAllTagged(F,$,W){const re=this._getNotAllArgs(F,!0,!1,$,W);return this._getButThrowIfAsync(re)}async getAllTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!0,!1,$,W);return this._getAll(re)}getAllNamed(F,$){return this.getAllTagged(F,g.NAMED_TAG,$)}async getAllNamedAsync(F,$){return this.getAllTaggedAsync(F,g.NAMED_TAG,$)}resolve(F){const $=this.isBound(F);$||this.bind(F).toSelf();const W=this.get(F);return $||this.unbind(F),W}tryGet(F){const $=this._getNotAllArgs(F,!1,!0);return this._getButThrowIfAsync($)}async tryGetAsync(F){const $=this._getNotAllArgs(F,!1,!0);return this._get($)}tryGetTagged(F,$,W){const re=this._getNotAllArgs(F,!1,!0,$,W);return this._getButThrowIfAsync(re)}async tryGetTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!1,!0,$,W);return this._get(re)}tryGetNamed(F,$){return this.tryGetTagged(F,g.NAMED_TAG,$)}async tryGetNamedAsync(F,$){return this.tryGetTaggedAsync(F,g.NAMED_TAG,$)}tryGetAll(F,$){const W=this._getAllArgs(F,$,!0);return this._getButThrowIfAsync(W)}async tryGetAllAsync(F,$){const W=this._getAllArgs(F,$,!0);return this._getAll(W)}tryGetAllTagged(F,$,W){const re=this._getNotAllArgs(F,!0,!0,$,W);return this._getButThrowIfAsync(re)}async tryGetAllTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!0,!0,$,W);return this._getAll(re)}tryGetAllNamed(F,$){return this.tryGetAllTagged(F,g.NAMED_TAG,$)}async tryGetAllNamedAsync(F,$){return this.tryGetAllTaggedAsync(F,g.NAMED_TAG,$)}_preDestroy(F,$){if(F!==void 0&&Reflect.hasMetadata(g.PRE_DESTROY,F)){const W=Reflect.getMetadata(g.PRE_DESTROY,F);return $[W.value]?.()}}_removeModuleHandlers(F){const $=this._moduleActivationStore.remove(F);this._activations.removeIntersection($.onActivations),this._deactivations.removeIntersection($.onDeactivations)}_removeModuleBindings(F){return this._bindingDictionary.removeByCondition($=>$.moduleId===F)}_deactivate(F,$){const W=$==null?void 0:Object.getPrototypeOf($).constructor;try{if(this._deactivations.hasKey(F.serviceIdentifier)){const ae=this._deactivateContainer($,this._deactivations.get(F.serviceIdentifier).values());if((0,_.isPromise)(ae))return this._handleDeactivationError(ae.then(async()=>this._propagateContainerDeactivationThenBindingAndPreDestroyAsync(F,$,W)),F.serviceIdentifier)}const re=this._propagateContainerDeactivationThenBindingAndPreDestroy(F,$,W);if((0,_.isPromise)(re))return this._handleDeactivationError(re,F.serviceIdentifier)}catch(re){if(re instanceof Error)throw new Error(m.ON_DEACTIVATION_ERROR((0,O.getServiceIdentifierAsString)(F.serviceIdentifier),re.message))}}async _handleDeactivationError(F,$){try{await F}catch(W){if(W instanceof Error)throw new Error(m.ON_DEACTIVATION_ERROR((0,O.getServiceIdentifierAsString)($),W.message))}}_deactivateContainer(F,$){let W=$.next();for(;typeof W.value=="function";){const re=W.value(F);if((0,_.isPromise)(re))return re.then(async()=>this._deactivateContainerAsync(F,$));W=$.next()}}async _deactivateContainerAsync(F,$){let W=$.next();for(;typeof W.value=="function";)await W.value(F),W=$.next()}_getContainerModuleHelpersFactory(){const F=te=>fe=>{const ve=this._buildBinding(fe);return ve.moduleId=te,this._bind(ve)},$=()=>te=>{this.unbind(te)},W=()=>async te=>this.unbindAsync(te),re=()=>te=>this.isBound(te),ae=te=>{const fe=F(te);return ve=>(this.unbind(ve),fe(ve))},ce=te=>(fe,ve)=>{this._moduleActivationStore.addActivation(te,fe,ve),this.onActivation(fe,ve)},J=te=>(fe,ve)=>{this._moduleActivationStore.addDeactivation(te,fe,ve),this.onDeactivation(fe,ve)};return te=>({bindFunction:F(te),isboundFunction:re(),onActivationFunction:ce(te),onDeactivationFunction:J(te),rebindFunction:ae(te),unbindAsyncFunction:W(),unbindFunction:$()})}_bind(F){return this._bindingDictionary.add(F.serviceIdentifier,F),new M.BindingToSyntax(F)}_buildBinding(F){const $=this.options.defaultScope||P.BindingScopeEnum.Transient;return new w.Binding(F,$)}async _getAll(F){return Promise.all(this._get(F))}_get(F){const $={...F,contextInterceptor:W=>W,targetType:P.TargetTypeEnum.Variable};if(this._middleware){const W=this._middleware($);if(W==null)throw new Error(m.INVALID_MIDDLEWARE_RETURN);return W}return this._planAndResolve()($)}_getButThrowIfAsync(F){const $=this._get(F);if((0,_.isPromiseOrContainsPromise)($))throw new Error(m.LAZY_IN_SYNC(F.serviceIdentifier));return $}_getAllArgs(F,$,W){return{avoidConstraints:!($?.enforceBindingConstraints??!1),isMultiInject:!0,isOptional:W,serviceIdentifier:F}}_getNotAllArgs(F,$,W,re,ae){return{avoidConstraints:!1,isMultiInject:$,isOptional:W,key:re,serviceIdentifier:F,value:ae}}_getPlanMetadataFromNextArgs(F){const $={isMultiInject:F.isMultiInject};return F.key!==void 0&&($.customTag={key:F.key,value:F.value}),F.isOptional===!0&&($.isOptional=!0),$}_planAndResolve(){return F=>{let $=(0,C.plan)(this._metadataReader,this,F.targetType,F.serviceIdentifier,this._getPlanMetadataFromNextArgs(F),F.avoidConstraints);return $=F.contextInterceptor($),(0,T.resolve)($)}}_deactivateIfSingleton(F){if(F.activated)return(0,_.isPromise)(F.cache)?F.cache.then($=>this._deactivate(F,$)):this._deactivate(F,F.cache)}_deactivateSingletons(F){for(const $ of F){const W=this._deactivateIfSingleton($);if((0,_.isPromise)(W))throw new Error(m.ASYNC_UNBIND_REQUIRED)}}async _deactivateSingletonsAsync(F){await Promise.all(F.map(async $=>this._deactivateIfSingleton($)))}_propagateContainerDeactivationThenBindingAndPreDestroy(F,$,W){return this.parent?this._deactivate.bind(this.parent)(F,$):this._bindingDeactivationAndPreDestroy(F,$,W)}async _propagateContainerDeactivationThenBindingAndPreDestroyAsync(F,$,W){this.parent?await this._deactivate.bind(this.parent)(F,$):await this._bindingDeactivationAndPreDestroyAsync(F,$,W)}_removeServiceFromDictionary(F){try{this._bindingDictionary.remove(F)}catch{throw new Error(`${m.CANNOT_UNBIND} ${(0,O.getServiceIdentifierAsString)(F)}`)}}_bindingDeactivationAndPreDestroy(F,$,W){if(typeof F.onDeactivation=="function"){const re=F.onDeactivation($);if((0,_.isPromise)(re))return re.then(()=>this._preDestroy(W,$))}return this._preDestroy(W,$)}async _bindingDeactivationAndPreDestroyAsync(F,$,W){typeof F.onDeactivation=="function"&&await F.onDeactivation($),await this._preDestroy(W,$)}}return rm.Container=R,rm}var _M={},Wdt;function ZVt(){if(Wdt)return _M;Wdt=1,Object.defineProperty(_M,"__esModule",{value:!0}),_M.AsyncContainerModule=_M.ContainerModule=void 0;const f=vA();class h{id;registry;constructor(m){this.id=(0,f.id)(),this.registry=m}}_M.ContainerModule=h;class b{id;registry;constructor(m){this.id=(0,f.id)(),this.registry=m}}return _M.AsyncContainerModule=b,_M}var Tb={},XY={},Ydt;function eGt(){if(Ydt)return XY;Ydt=1,Object.defineProperty(XY,"__esModule",{value:!0}),XY.getFirstArrayDuplicate=f;function f(h){const b=new Set;for(const w of h){if(b.has(w))return w;b.add(w)}}return XY}var Xdt;function vS(){if(Xdt)return Tb;Xdt=1;var f=Tb&&Tb.__createBinding||(Object.create?(function(x,R,H,F){F===void 0&&(F=H);var $=Object.getOwnPropertyDescriptor(R,H);(!$||("get"in $?!R.__esModule:$.writable||$.configurable))&&($={enumerable:!0,get:function(){return R[H]}}),Object.defineProperty(x,F,$)}):(function(x,R,H,F){F===void 0&&(F=H),x[F]=R[H]})),h=Tb&&Tb.__setModuleDefault||(Object.create?(function(x,R){Object.defineProperty(x,"default",{enumerable:!0,value:R})}):function(x,R){x.default=R}),b=Tb&&Tb.__importStar||(function(){var x=function(R){return x=Object.getOwnPropertyNames||function(H){var F=[];for(var $ in H)Object.prototype.hasOwnProperty.call(H,$)&&(F[F.length]=$);return F},x(R)};return function(R){if(R&&R.__esModule)return R;var H={};if(R!=null)for(var F=x(R),$=0;$F.key));if(H!==void 0)throw new Error(`${w.DUPLICATED_METADATA} ${H.toString()}`)}else R=[x];return R}function _(x,R,H,F){const $=M(F);let W={};Reflect.hasOwnMetadata(x,R)&&(W=Reflect.getMetadata(x,R));let re=W[H];if(re===void 0)re=[];else for(const ae of re)if($.some(ce=>ce.key===ae.key))throw new Error(`${w.DUPLICATED_METADATA} ${ae.key.toString()}`);re.push(...$),W[H]=re,Reflect.defineMetadata(x,W,R)}function I(x){return(R,H,F)=>{typeof F=="number"?C(R,H,F,x):T(R,H,x)}}function O(x,R){Reflect.decorate(x,R)}function j(x,R){return function(H,F){R(H,F,x)}}function k(x,R,H){typeof H=="number"?O([j(H,x)],R):typeof H=="string"?Reflect.decorate([x],R,H):O([x],R)}return Tb}var ty={},Jdt;function tGt(){if(Jdt)return ty;Jdt=1;var f=ty&&ty.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=ty&&ty.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=ty&&ty.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M(g,E,C)=>{if(P===void 0){const T=typeof g=="function"?g.name:g.constructor.name;throw new Error((0,f.UNDEFINED_INJECT_ANNOTATION)(T))}(0,b.createTaggedDecorator)(new h.Metadata(m,P))(g,E,C)}}return QY}var t1t;function rGt(){if(t1t)return am;t1t=1;var f=am&&am.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=am&&am.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=am&&am.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M(m,P)=>{const g=new f.Metadata(b,P);if(Reflect.hasOwnMetadata(b,m.constructor))throw new Error(w);Reflect.defineMetadata(b,g,m.constructor)}}return ZY}var s1t;function aGt(){if(s1t)return fm;s1t=1;var f=fm&&fm.__createBinding||(Object.create?(function(E,C,T,M){M===void 0&&(M=T);var _=Object.getOwnPropertyDescriptor(C,T);(!_||("get"in _?!C.__esModule:_.writable||_.configurable))&&(_={enumerable:!0,get:function(){return C[T]}}),Object.defineProperty(E,M,_)}):(function(E,C,T,M){M===void 0&&(M=T),E[M]=C[T]})),h=fm&&fm.__setModuleDefault||(Object.create?(function(E,C){Object.defineProperty(E,"default",{enumerable:!0,value:C})}):function(E,C){E.default=C}),b=fm&&fm.__importStar||(function(){var E=function(C){return E=Object.getOwnPropertyNames||function(T){var M=[];for(var _ in T)Object.prototype.hasOwnProperty.call(T,_)&&(M[M.length]=_);return M},E(C)};return function(C){if(C&&C.__esModule)return C;var T={};if(C!=null)for(var M=E(C),_=0;_{this.resolve=b,this.reject=w}),this.promise.then(b=>this._state="resolved",b=>this._state="rejected")}set state(b){this._state==="unresolved"&&(this._state=b)}get state(){return this._state}}return dL.Deferred=f,dL}var gL={},d1t;function Qn(){return d1t||(d1t=1,Object.defineProperty(gL,"__esModule",{value:!0}),gL.TYPES=void 0,gL.TYPES={Action:Symbol("Action"),IActionDispatcher:Symbol("IActionDispatcher"),IActionDispatcherProvider:Symbol("IActionDispatcherProvider"),IActionHandlerInitializer:Symbol("IActionHandlerInitializer"),ActionHandlerRegistration:Symbol("ActionHandlerRegistration"),ActionHandlerRegistryProvider:Symbol("ActionHandlerRegistryProvider"),IAnchorComputer:Symbol("IAnchor"),AnimationFrameSyncer:Symbol("AnimationFrameSyncer"),IButtonHandlerRegistration:Symbol("IButtonHandlerRegistration"),ICommandPaletteActionProvider:Symbol("ICommandPaletteActionProvider"),ICommandPaletteActionProviderRegistry:Symbol("ICommandPaletteActionProviderRegistry"),CommandRegistration:Symbol("CommandRegistration"),ICommandStack:Symbol("ICommandStack"),CommandStackOptions:Symbol("CommandStackOptions"),ICommandStackProvider:Symbol("ICommandStackProvider"),IContextMenuItemProvider:Symbol.for("IContextMenuProvider"),IContextMenuProviderRegistry:Symbol.for("IContextMenuProviderRegistry"),IContextMenuService:Symbol.for("IContextMenuService"),IContextMenuServiceProvider:Symbol.for("IContextMenuServiceProvider"),DOMHelper:Symbol("DOMHelper"),IDiagramLocker:Symbol("IDiagramLocker"),IEdgeRouter:Symbol("IEdgeRouter"),IEdgeRoutePostprocessor:Symbol("IEdgeRoutePostprocessor"),IEditLabelValidationDecorator:Symbol("IEditLabelValidationDecorator"),IEditLabelValidator:Symbol("IEditLabelValidator"),HiddenModelViewer:Symbol("HiddenModelViewer"),HiddenVNodePostprocessor:Symbol("HiddenVNodeDecorator"),HoverState:Symbol("HoverState"),KeyListener:Symbol("KeyListener"),LayoutRegistration:Symbol("LayoutRegistration"),LayoutRegistry:Symbol("LayoutRegistry"),Layouter:Symbol("Layouter"),LogLevel:Symbol("LogLevel"),ILogger:Symbol("ILogger"),IModelFactory:Symbol("IModelFactory"),IModelLayoutEngine:Symbol("IModelLayoutEngine"),ModelRendererFactory:Symbol("ModelRendererFactory"),ModelSource:Symbol("ModelSource"),ModelSourceProvider:Symbol("ModelSourceProvider"),ModelViewer:Symbol("ModelViewer"),MouseListener:Symbol("MouseListener"),PatcherProvider:Symbol("PatcherProvider"),IPopupModelProvider:Symbol("IPopupModelProvider"),PopupModelViewer:Symbol("PopupModelViewer"),PopupMouseListener:Symbol("PopupMouseListener"),PopupVNodePostprocessor:Symbol("PopupVNodeDecorator"),SModelElementRegistration:Symbol("SModelElementRegistration"),SModelRegistry:Symbol("SModelRegistry"),ISnapper:Symbol("ISnapper"),SvgExporter:Symbol("SvgExporter"),ISvgExportPostprocessor:Symbol("ISvgExportPostprocessor"),IUIExtension:Symbol("IUIExtension"),UIExtensionRegistry:Symbol("UIExtensionRegistry"),IVNodePostprocessor:Symbol("IVNodePostprocessor"),ViewRegistration:Symbol("ViewRegistration"),ViewRegistry:Symbol("ViewRegistry"),IViewer:Symbol("IViewer"),ViewerOptions:Symbol("ViewerOptions"),IViewerProvider:Symbol("IViewerProvider")}),gL}var tf={},ah={},g1t;function q3(){if(g1t)return ah;g1t=1;var f=ah&&ah.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(ah,"__esModule",{value:!0}),ah.MultiInstanceRegistry=ah.InstanceRegistry=ah.FactoryRegistry=ah.ProviderRegistry=void 0;const h=Zt();let b=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");if(this.hasKey(E))throw new Error("Key is already registered: "+E);this.elements.set(E,C)}deregister(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}hasKey(E){return this.elements.has(E)}get(E,C){const T=this.elements.get(E);return T?new T(C):this.missing(E,C)}missing(E,C){throw new Error("Unknown registry key: "+E)}};ah.ProviderRegistry=b,ah.ProviderRegistry=b=f([(0,h.injectable)()],b);let w=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");if(this.hasKey(E))throw new Error(`Key is already registered: ${E}. Use \`overrideModelElement\` instead.`);this.elements.set(E,C)}override(E,C){if(E===void 0)throw new Error("Key is undefined");if(!this.hasKey(E))throw new Error(`Key is not registered: ${E}. Use \`configureModelElement\` instead.`);this.elements.set(E,C)}deregister(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}hasKey(E){return this.elements.has(E)}get(E,C){const T=this.elements.get(E);return T?T(C):this.missing(E,C)}missing(E,C){throw new Error("Unknown registry key: "+E)}};ah.FactoryRegistry=w,ah.FactoryRegistry=w=f([(0,h.injectable)()],w);let m=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");if(this.hasKey(E))throw new Error(`Key is already registered: ${E}. Use \`overrideModelElement\` instead.`);this.elements.set(E,C)}override(E,C){if(E===void 0)throw new Error("Key is undefined");if(!this.hasKey(E))throw new Error(`Key is not registered: ${E}. Use \`configureModelElement\` instead.`);this.elements.set(E,C)}deregister(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}hasKey(E){return this.elements.has(E)}get(E){const C=this.elements.get(E);return C||this.missing(E)}missing(E){throw new Error("Unknown registry key: "+E)}};ah.InstanceRegistry=m,ah.InstanceRegistry=m=f([(0,h.injectable)()],m);let P=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");const T=this.elements.get(E);T!==void 0?T.push(C):this.elements.set(E,[C])}deregisterAll(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}get(E){const C=this.elements.get(E);return C!==void 0?C:[]}};return ah.MultiInstanceRegistry=P,ah.MultiInstanceRegistry=P=f([(0,h.injectable)()],P),ah}var lh={},Xu={},b1t;function Ac(){if(b1t)return Xu;b1t=1,Object.defineProperty(Xu,"__esModule",{value:!0}),Xu.almostEquals=Xu.toRadians=Xu.toDegrees=Xu.Bounds=Xu.isBounds=Xu.Dimension=Xu.centerOfLine=Xu.angleBetweenPoints=Xu.angleOfPoint=Xu.Point=void 0;const f=_S();var h;(function(_){_.ORIGIN=Object.freeze({x:0,y:0});function I(ae,ce){return{x:ae.x+ce.x,y:ae.y+ce.y}}_.add=I;function O(ae,ce){return{x:ae.x-ce.x,y:ae.y-ce.y}}_.subtract=O;function j(ae,ce){return ae.x===ce.x&&ae.y===ce.y}_.equals=j;function k(ae,ce,J){const te=O(ce,ae),fe=x(te),ve={x:fe.x*J,y:fe.y*J};return I(ae,ve)}_.shiftTowards=k;function x(ae){const ce=R(ae);return ce===0||ce===1?_.ORIGIN:{x:ae.x/ce,y:ae.y/ce}}_.normalize=x;function R(ae){return Math.sqrt(Math.pow(ae.x,2)+Math.pow(ae.y,2))}_.magnitude=R;function H(ae,ce,J){return{x:(1-J)*ae.x+J*ce.x,y:(1-J)*ae.y+J*ce.y}}_.linear=H;function F(ae,ce){const J=ce.x-ae.x,te=ce.y-ae.y;return Math.sqrt(J*J+te*te)}_.euclideanDistance=F;function $(ae,ce){return Math.abs(ce.x-ae.x)+Math.abs(ce.y-ae.y)}_.manhattanDistance=$;function W(ae,ce){return Math.max(Math.abs(ce.x-ae.x),Math.abs(ce.y-ae.y))}_.maxDistance=W;function re(ae,ce){return ae.x*ce.x+ae.y*ce.y}_.dotProduct=re})(h||(Xu.Point=h={}));function b(_){return Math.atan2(_.y,_.x)}Xu.angleOfPoint=b;function w(_,I){const O=Math.sqrt((_.x*_.x+_.y*_.y)*(I.x*I.x+I.y*I.y));if(isNaN(O)||O===0)return NaN;const j=_.x*I.x+_.y*I.y;return Math.acos(j/O)}Xu.angleBetweenPoints=w;function m(_,I){const O={x:_.x>I.x?I.x:_.x,y:_.y>I.y?I.y:_.y,width:Math.abs(I.x-_.x),height:Math.abs(I.y-_.y)};return E.center(O)}Xu.centerOfLine=m;var P;(function(_){_.EMPTY=Object.freeze({width:-1,height:-1});function I(O){return O.width>=0&&O.height>=0}_.isValid=I})(P||(Xu.Dimension=P={}));function g(_){return(0,f.hasOwnProperty)(_,["x","y","width","height"])}Xu.isBounds=g;var E;(function(_){_.EMPTY=Object.freeze({x:0,y:0,width:-1,height:-1});function I(x,R){if(!P.isValid(x))return P.isValid(R)?R:_.EMPTY;if(!P.isValid(R))return x;const H=Math.min(x.x,R.x),F=Math.min(x.y,R.y),$=Math.max(x.x+(x.width>=0?x.width:0),R.x+(R.width>=0?R.width:0)),W=Math.max(x.y+(x.height>=0?x.height:0),R.y+(R.height>=0?R.height:0));return{x:H,y:F,width:$-H,height:W-F}}_.combine=I;function O(x,R){return{x:x.x+R.x,y:x.y+R.y,width:x.width,height:x.height}}_.translate=O;function j(x){return{x:x.x+(x.width>=0?.5*x.width:0),y:x.y+(x.height>=0?.5*x.height:0)}}_.center=j;function k(x,R){return R.x>=x.x&&R.x<=x.x+x.width&&R.y>=x.y&&R.y<=x.y+x.height}_.includes=k})(E||(Xu.Bounds=E={}));function C(_){return _*180/Math.PI}Xu.toDegrees=C;function T(_){return _*Math.PI/180}Xu.toRadians=T;function M(_,I){return Math.abs(_-I)<.001}return Xu.almostEquals=M,Xu}var Xme={},p1t;function _A(){return p1t||(p1t=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.mapIterable=f.filterIterable=f.DONE_RESULT=f.toArray=f.FluentIterableImpl=void 0;class h{constructor(C,T){this.startFn=C,this.nextFn=T}[Symbol.iterator](){const C={state:this.startFn(),next:()=>this.nextFn(C.state),[Symbol.iterator]:()=>C};return C}filter(C){return w(this,C)}map(C){return m(this,C)}forEach(C){const T=this[Symbol.iterator]();let M=0,_;do _=T.next(),_.value!==void 0&&C(_.value,M),M++;while(!_.done)}indexOf(C){const T=this[Symbol.iterator]();let M=0,_;do{if(_=T.next(),_.value===C)return M;M++}while(!_.done);return-1}}f.FluentIterableImpl=h;function b(E){if(E.constructor===Array)return E;const C=[];return E.forEach(T=>C.push(T)),C}f.toArray=b,f.DONE_RESULT=Object.freeze({done:!0,value:void 0});function w(E,C){return new h(()=>P(E),T=>{let M;do M=T.next();while(!M.done&&!C(M.value));return M})}f.filterIterable=w;function m(E,C){return new h(()=>P(E),T=>{const{done:M,value:_}=T.next();return M?f.DONE_RESULT:{done:!1,value:C(_)}})}f.mapIterable=m;function P(E){const C=E[Symbol.iterator];if(typeof C=="function")return C.call(E);const T=E.length;return typeof T=="number"&&T>=0?new g(E):{next:()=>f.DONE_RESULT}}class g{constructor(C){this.array=C,this.index=0}next(){return this.indexthis.children.length)throw new Error(`Child index ${I} out of bounds (0..${O.length})`);O.splice(I,0,_)}_.parent=this,this.index.add(_)}remove(_){const I=this.children,O=I.indexOf(_);if(O<0)throw new Error(`No such child ${_.id}`);I.splice(O,1),this.index.remove(_)}removeAll(_){const I=this.children;if(_!==void 0){for(let O=I.length-1;O>=0;O--)if(_(I[O])){const j=I.splice(O,1)[0];this.index.remove(j)}}else I.forEach(O=>{this.index.remove(O)}),I.splice(0,I.length)}move(_,I){const O=this.children,j=O.indexOf(_);if(j===-1)throw new Error(`No such child ${_.id}`);if(I<0||I>O.length-1)throw new Error(`Child index ${I} out of bounds (0..${O.length})`);O.splice(j,1),O.splice(I,0,_)}localToParent(_){return(0,f.isBounds)(_)?_:{x:_.x,y:_.y,width:-1,height:-1}}parentToLocal(_){return(0,f.isBounds)(_)?_:{x:_.x,y:_.y,width:-1,height:-1}}}lh.SParentElementImpl=m;class P extends m{}lh.SChildElementImpl=P;class g extends m{constructor(_=new T){super(),this.canvasBounds=f.Bounds.EMPTY,Object.defineProperty(this,"index",{value:_,writable:!1})}}lh.SModelRootImpl=g;const E="0123456789abcdefghijklmnopqrstuvwxyz";function C(M=8){let _="";for(let I=0;II)}}return lh.ModelIndexImpl=T,lh}var m1t;function ES(){if(m1t)return tf;m1t=1;var f=tf&&tf.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=tf&&tf.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=tf&&tf.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(tf,"__esModule",{value:!0}),tf.createFeatureSet=tf.EMPTY_ROOT=tf.SModelFactory=tf.SModelRegistry=void 0;const w=Zt(),m=Qn(),P=q3(),g=Oc();let E=class extends P.FactoryRegistry{constructor(_){super(),_.forEach(I=>{let O=this.getDefaultFeatures(I.constr);if(!O&&I.features&&I.features.enable&&(O=[]),O){const j=T(O,I.features);I.isOverride?this.override(I.type,()=>{const k=new I.constr;return k.features=j,k}):this.register(I.type,()=>{const k=new I.constr;return k.features=j,k})}else I.isOverride?this.override(I.type,()=>new I.constr):this.register(I.type,()=>new I.constr)})}getDefaultFeatures(_){let I=_;do{const O=I.DEFAULT_FEATURES;if(O)return O;I=Object.getPrototypeOf(I)}while(I)}};tf.SModelRegistry=E,tf.SModelRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.SModelElementRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);let C=class{createElement(_,I){let O;if(this.registry.hasKey(_.type)){const j=this.registry.get(_.type,void 0);if(!(j instanceof g.SChildElementImpl))throw new Error(`Element with type ${_.type} was expected to be an SChildElement.`);O=j}else O=new g.SChildElementImpl;return this.initializeChild(O,_,I)}createRoot(_){let I;if(this.registry.hasKey(_.type)){const O=this.registry.get(_.type,void 0);if(!(O instanceof g.SModelRootImpl))throw new Error(`Element with type ${_.type} was expected to be an SModelRoot.`);I=O}else I=new g.SModelRootImpl;return this.initializeRoot(I,_)}createSchema(_){const I={};for(const O in _)if(!this.isReserved(_,O)){const j=_[O];typeof j!="function"&&(I[O]=j)}return _ instanceof g.SParentElementImpl&&(I.children=_.children.map(O=>this.createSchema(O))),I}initializeElement(_,I){for(const O in I)if(!this.isReserved(_,O)){const j=I[O];typeof j!="function"&&(_[O]=j)}return _}isReserved(_,I){if(["children","parent","index"].indexOf(I)>=0)return!0;let O=_;do{const j=Object.getOwnPropertyDescriptor(O,I);if(j!==void 0)return j.get!==void 0;O=Object.getPrototypeOf(O)}while(O);return!1}initializeParent(_,I){return this.initializeElement(_,I),(0,g.isParent)(I)&&(_.children=I.children.map(O=>this.createElement(O,_))),_}initializeChild(_,I,O){return this.initializeParent(_,I),O!==void 0&&(_.parent=O),_}initializeRoot(_,I){return this.initializeParent(_,I),_.index.add(_),_}};tf.SModelFactory=C,f([(0,w.inject)(m.TYPES.SModelRegistry),h("design:type",E)],C.prototype,"registry",void 0),tf.SModelFactory=C=f([(0,w.injectable)()],C),tf.EMPTY_ROOT=Object.freeze({type:"NONE",id:"EMPTY"});function T(M,_){const I=new Set(M);if(_&&_.enable)for(const O of _.enable)I.add(O);if(_&&_.disable)for(const O of _.disable)I.delete(O);return I}return tf.createFeatureSet=T,tf}var K4={},v1t;function eN(){if(v1t)return K4;v1t=1;var f=K4&&K4.__decorate||function(w,m,P,g){var E=arguments.length,C=E<3?m:g===null?g=Object.getOwnPropertyDescriptor(m,P):g,T;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(w,m,P,g);else for(var M=w.length-1;M>=0;M--)(T=w[M])&&(C=(E<3?T(C):E>3?T(m,P,C):T(m,P))||C);return E>3&&C&&Object.defineProperty(m,P,C),C};Object.defineProperty(K4,"__esModule",{value:!0}),K4.AnimationFrameSyncer=void 0;const h=Zt();let b=class{constructor(){this.tasks=[],this.endTasks=[],this.triggered=!1}isAvailable(){return typeof requestAnimationFrame=="function"}onNextFrame(m){this.tasks.push(m),this.trigger()}onEndOfNextFrame(m){this.endTasks.push(m),this.trigger()}trigger(){this.triggered||(this.triggered=!0,this.isAvailable()?requestAnimationFrame(m=>this.run(m)):setTimeout(m=>this.run(m)))}run(m){const P=this.tasks,g=this.endTasks;this.triggered=!1,this.tasks=[],this.endTasks=[],P.forEach(E=>E.call(void 0,m)),g.forEach(E=>E.call(void 0,m))}};return K4.AnimationFrameSyncer=b,K4.AnimationFrameSyncer=b=f([(0,h.injectable)()],b),K4}var y1t;function Rye(){if(y1t)return Qv;y1t=1;var f=Qv&&Qv.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=Qv&&Qv.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)};Object.defineProperty(Qv,"__esModule",{value:!0}),Qv.ActionDispatcher=void 0;const b=Zt(),w=jc(),m=kye(),P=Qn(),g=ES(),E=eN();(0,w.setRequestContext)("client");let C=class{constructor(){this.postponedActions=[],this.requests=new Map}initialize(){return this.initialized||(this.initialized=this.actionHandlerRegistryProvider().then(M=>{this.actionHandlerRegistry=M,this.handleAction(w.SetModelAction.create(g.EMPTY_ROOT)).catch(()=>{})})),this.initialized}dispatch(M){return this.initialize().then(()=>{if(this.blockUntil!==void 0)return this.handleBlocked(M,this.blockUntil);if(this.diagramLocker.isAllowed(M))return this.handleAction(M)})}dispatchAll(M){return Promise.all(M.map(_=>this.dispatch(_)))}request(M){if(!M.requestId)return Promise.reject(new Error("Request without requestId"));const _=new m.Deferred;return this.requests.set(M.requestId,_),this.dispatch(M).catch(()=>{}),_.promise}handleAction(M){if(M.kind===w.UndoAction.KIND)return this.commandStack.undo().then(()=>{});if(M.kind===w.RedoAction.KIND)return this.commandStack.redo().then(()=>{});if((0,w.isResponseAction)(M)){const O=this.requests.get(M.responseId);if(O!==void 0){if(this.requests.delete(M.responseId),M.kind===w.RejectAction.KIND){const j=M;O.reject(new Error(j.message)),this.logger.warn(this,`Request with id ${M.responseId} failed.`,j.message,j.detail)}else O.resolve(M);return Promise.resolve()}this.logger.log(this,"No matching request for response",M)}const _=this.actionHandlerRegistry.get(M.kind);if(_.length===0){this.logger.warn(this,"Missing handler for action",M);const O=new Error(`Missing handler for action '${M.kind}'`);if((0,w.isRequestAction)(M)){const j=this.requests.get(M.requestId);j!==void 0&&(this.requests.delete(M.requestId),j.reject(O))}return Promise.reject(O)}this.logger.log(this,"Handle",M);const I=[];for(const O of _){const j=O.handle(M);(0,w.isAction)(j)?I.push(this.dispatch(j)):j!==void 0&&(I.push(this.commandStack.execute(j)),this.blockUntil=j.blockUntil)}return Promise.all(I)}handleBlocked(M,_){if(_(M)){this.blockUntil=void 0;const I=this.handleAction(M),O=this.postponedActions;this.postponedActions=[];for(const j of O)this.dispatch(j.action).then(j.resolve,j.reject);return I}else return this.logger.log(this,"Action is postponed due to block condition",M),new Promise((I,O)=>{this.postponedActions.push({action:M,resolve:I,reject:O})})}};return Qv.ActionDispatcher=C,f([(0,b.inject)(P.TYPES.ActionHandlerRegistryProvider),h("design:type",Function)],C.prototype,"actionHandlerRegistryProvider",void 0),f([(0,b.inject)(P.TYPES.ICommandStack),h("design:type",Object)],C.prototype,"commandStack",void 0),f([(0,b.inject)(P.TYPES.ILogger),h("design:type",Object)],C.prototype,"logger",void 0),f([(0,b.inject)(P.TYPES.AnimationFrameSyncer),h("design:type",E.AnimationFrameSyncer)],C.prototype,"syncer",void 0),f([(0,b.inject)(P.TYPES.IDiagramLocker),h("design:type",Object)],C.prototype,"diagramLocker",void 0),Qv.ActionDispatcher=C=f([(0,b.injectable)()],C),Qv}var Xh={},bL={},_1t;function EA(){if(_1t)return bL;_1t=1,Object.defineProperty(bL,"__esModule",{value:!0}),bL.isInjectable=void 0;function f(h){return Reflect.getMetadata("inversify:paramtypes",h)!==void 0}return bL.isInjectable=f,bL}var E1t;function lJ(){if(E1t)return Xh;E1t=1;var f=Xh&&Xh.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Xh&&Xh.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=Xh&&Xh.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(Xh,"__esModule",{value:!0}),Xh.onAction=Xh.configureActionHandler=Xh.ActionHandlerRegistry=void 0;const w=Zt(),m=Qn(),P=q3(),g=EA();let E=class extends P.MultiInstanceRegistry{constructor(_,I){super(),_.forEach(O=>this.register(O.actionKind,O.factory())),I.forEach(O=>this.initializeActionHandler(O))}initializeActionHandler(_){_.initialize(this)}};Xh.ActionHandlerRegistry=E,Xh.ActionHandlerRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.ActionHandlerRegistration)),b(0,(0,w.optional)()),b(1,(0,w.multiInject)(m.TYPES.IActionHandlerInitializer)),b(1,(0,w.optional)()),h("design:paramtypes",[Array,Array])],E);function C(M,_,I){if(typeof I=="function"){if(!(0,g.isInjectable)(I))throw new Error(`Action handlers should be @injectable: ${I.name}`);M.isBound(I)||M.bind(I).toSelf()}M.bind(m.TYPES.ActionHandlerRegistration).toDynamicValue(O=>({actionKind:_,factory:()=>O.container.get(I)}))}Xh.configureActionHandler=C;function T(M,_,I){M.bind(m.TYPES.ActionHandlerRegistration).toConstantValue({actionKind:_,factory:()=>({handle:I})})}return Xh.onAction=T,Xh}var q4={},S1t;function zpt(){if(S1t)return q4;S1t=1;var f=q4&&q4.__decorate||function(w,m,P,g){var E=arguments.length,C=E<3?m:g===null?g=Object.getOwnPropertyDescriptor(m,P):g,T;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(w,m,P,g);else for(var M=w.length-1;M>=0;M--)(T=w[M])&&(C=(E<3?T(C):E>3?T(m,P,C):T(m,P))||C);return E>3&&C&&Object.defineProperty(m,P,C),C};Object.defineProperty(q4,"__esModule",{value:!0}),q4.DefaultDiagramLocker=void 0;const h=Zt();let b=class{isAllowed(m){return!0}};return q4.DefaultDiagramLocker=b,q4.DefaultDiagramLocker=b=f([(0,h.injectable)()],b),q4}var EM={},pL={},P1t;function Vpt(){if(P1t)return pL;P1t=1,Object.defineProperty(pL,"__esModule",{value:!0}),pL.easeInOut=void 0;function f(h){return h<.5?h*h*2:1-(1-h)*(1-h)*2}return pL.easeInOut=f,pL}var M1t;function SA(){if(M1t)return EM;M1t=1,Object.defineProperty(EM,"__esModule",{value:!0}),EM.CompoundAnimation=EM.Animation=void 0;const f=Vpt();class h{constructor(m,P=f.easeInOut){this.context=m,this.ease=P,this.stopped=!1}start(){return this.stopped=!1,new Promise((m,P)=>{let g,E=0;const C=T=>{E++;let M;g===void 0?(g=T,M=0):M=T-g;const _=Math.min(1,M/this.context.duration),I=this.tween(this.ease(_),this.context);this.context.modelChanged.update(I),_===1?(this.context.logger.log(this,E*1e3/this.context.duration+" fps"),m(I)):this.stopped?(this.context.logger.log(this,"Animation stopped at "+_*100+"%"),m(I)):this.context.syncer.onNextFrame(C)};if(this.context.syncer.isAvailable())this.context.syncer.onNextFrame(C);else{const T=this.tween(1,this.context);m(T)}})}stop(){this.stopped=!0}}EM.Animation=h;class b extends h{constructor(m,P,g=[],E=f.easeInOut){super(P,E),this.model=m,this.context=P,this.components=g,this.ease=E}include(m){return this.components.push(m),this}tween(m,P){for(const g of this.components)g.tween(m,P);return this.model}}return EM.CompoundAnimation=b,EM}var su={},SM={},wL={},C1t;function fGt(){if(C1t)return wL;C1t=1,Object.defineProperty(wL,"__esModule",{value:!0}),wL.ServerActionHandlerRegistry=void 0;class f{constructor(){this.handlers=new Map}getHandler(b){return this.handlers.get(b)}onAction(b,w){this.handlers.has(b)?this.handlers.get(b).push(w):this.handlers.set(b,[w])}removeActionHandler(b,w){const m=this.handlers.get(b);if(m){const P=m.indexOf(w);P>=0&&m.splice(P,1)}}}return wL.ServerActionHandlerRegistry=f,wL}var mL={},qd={},I1t;function LM(){if(I1t)return qd;I1t=1,Object.defineProperty(qd,"__esModule",{value:!0}),qd.SModelIndex=qd.findElement=qd.getSubType=qd.getBasicType=qd.applyBounds=qd.cloneModel=void 0;function f(g){return JSON.parse(JSON.stringify(g))}qd.cloneModel=f;function h(g,E){const C=new P;C.add(g);for(const T of E.bounds){const M=C.getById(T.elementId);if(M){const _=M;T.newPosition&&(_.position={x:T.newPosition.x,y:T.newPosition.y}),T.newSize&&(_.size={width:T.newSize.width,height:T.newSize.height})}}if(E.alignments)for(const T of E.alignments){const M=C.getById(T.elementId);if(M){const _=M;_.alignment={x:T.newAlignment.x,y:T.newAlignment.y}}}}qd.applyBounds=h;function b(g){if(!g.type)return"";const E=g.type.indexOf(":");return E>=0?g.type.substring(0,E):g.type}qd.getBasicType=b;function w(g){if(!g.type)return"";const E=g.type.indexOf(":");return E>=0?g.type.substring(E+1):g.type}qd.getSubType=w;function m(g,E){if(g.id===E)return g;if(g.children)for(const C of g.children){const T=m(C,E);if(T!==void 0)return T}}qd.findElement=m;class P{constructor(){this.id2element=new Map,this.id2parent=new Map}add(E){if(E.id){if(this.contains(E))throw new Error("Duplicate ID in model: "+E.id)}else throw new Error("Model element has no ID.");if(this.id2element.set(E.id,E),Array.isArray(E.children))for(const C of E.children)this.add(C),this.id2parent.set(C.id,E);return this}remove(E){if(this.id2element.delete(E.id),Array.isArray(E.children))for(const C of E.children)this.id2parent.delete(C.id),this.remove(C);return this}contains(E){return this.id2element.has(E.id)}getById(E){return this.id2element.get(E)}getParent(E){return this.id2parent.get(E)}getRoot(E){let C=E;for(;C;){const T=this.id2parent.get(C.id);if(T===void 0)return C;C=T}throw new Error("Element has no root")}}return qd.SModelIndex=P,qd}var T1t;function hGt(){if(T1t)return mL;T1t=1,Object.defineProperty(mL,"__esModule",{value:!0}),mL.DiagramServer=void 0;const f=jc(),h=kye(),b=LM();class w{constructor(P,g){this.state={currentRoot:{type:"NONE",id:"ROOT"},revision:0},this.requests=new Map,this.dispatch=P,this.diagramGenerator=g.DiagramGenerator,this.layoutEngine=g.ModelLayoutEngine,this.actionHandlerRegistry=g.ServerActionHandlerRegistry}setModel(P){return P.revision=++this.state.revision,this.state.currentRoot=P,this.submitModel(P,!1)}updateModel(P){return P.revision=++this.state.revision,this.state.currentRoot=P,this.submitModel(P,!0)}get needsClientLayout(){return this.state.options&&this.state.options.needsClientLayout!==void 0?!!this.state.options.needsClientLayout:!0}get needsServerLayout(){return this.state.options&&this.state.options.needsServerLayout!==void 0?!!this.state.options.needsServerLayout:!1}accept(P){if((0,f.isResponseAction)(P)){const g=P.responseId,E=this.requests.get(g);if(E){if(this.requests.delete(g),P.kind===f.RejectAction.KIND){const C=P;E.reject(new Error(C.message)),console.warn(`Request with id ${P.responseId} failed: ${C.message}`,C.detail)}else E.resolve(P);return Promise.resolve()}console.info("No matching request for response:",P)}return this.handleAction(P)}request(P){P.requestId||(P.requestId="server_"+(0,f.generateRequestId)());const g=new h.Deferred;return this.requests.set(P.requestId,g),this.dispatch(P).catch(E=>{this.requests.delete(P.requestId),g.reject(E)}),g.promise}rejectRemoteRequest(P,g){P&&(0,f.isRequestAction)(P)&&this.dispatch({kind:f.RejectAction.KIND,responseId:P.requestId,message:g.message,detail:g.stack})}handleAction(P){var g,E;const C=(g=this.actionHandlerRegistry)===null||g===void 0?void 0:g.getHandler(P.kind);if(C&&C.length===1)return(E=C[0](P,this.state,this))!==null&&E!==void 0?E:Promise.resolve();if(C&&C.length>1)return Promise.all(C.map(T=>{var M;return(M=T(P,this.state,this))!==null&&M!==void 0?M:Promise.resolve()}));switch(P.kind){case f.RequestModelAction.KIND:return this.handleRequestModel(P);case f.ComputedBoundsAction.KIND:return this.handleComputedBounds(P);case f.LayoutAction.KIND:return this.handleLayout(P)}return console.warn(`Unhandled action from client: ${P.kind}`),Promise.resolve()}async handleRequestModel(P){var g;this.state.options=P.options;try{const E=await this.diagramGenerator.generate({options:(g=this.state.options)!==null&&g!==void 0?g:{},state:this.state});E.revision=++this.state.revision,this.state.currentRoot=E,await this.submitModel(this.state.currentRoot,!1,P)}catch(E){this.rejectRemoteRequest(P,E),console.error("Failed to generate diagram:",E)}}async submitModel(P,g,E){if(this.needsClientLayout)if(!this.needsServerLayout)this.dispatch({kind:f.RequestBoundsAction.KIND,newRoot:P});else{const C=f.RequestBoundsAction.create(P),T=await this.request(C),M=this.state.currentRoot;T.revision===M.revision?((0,b.applyBounds)(M,T),await this.doSubmitModel(M,g,E)):this.rejectRemoteRequest(E,new Error(`Model revision does not match: ${T.revision}`))}else await this.doSubmitModel(P,g,E)}async doSubmitModel(P,g,E){if(P.revision!==this.state.revision)return;this.needsServerLayout&&this.layoutEngine&&(P=await this.layoutEngine.layout(P));const C=P.type;if(E&&E.kind===f.RequestModelAction.KIND){const T=E.requestId,M=f.SetModelAction.create(P,T);await this.dispatch(M)}else g&&C===this.state.lastSubmittedModelType?await this.dispatch({kind:f.UpdateModelAction.KIND,newRoot:P,cause:E}):await this.dispatch({kind:f.SetModelAction.KIND,newRoot:P});this.state.lastSubmittedModelType=C}handleComputedBounds(P){return P.revision!==this.state.currentRoot.revision?Promise.reject():((0,b.applyBounds)(this.state.currentRoot,P),Promise.resolve())}async handleLayout(P){if(this.layoutEngine){if(!this.needsServerLayout){let g=(0,b.cloneModel)(this.state.currentRoot);g=await this.layoutEngine.layout(g),g.revision=++this.state.revision,this.state.currentRoot=g}await this.doSubmitModel(this.state.currentRoot,!0,P)}}}return mL.DiagramServer=w,mL}var Jme={},j1t;function dGt(){return j1t||(j1t=1,Object.defineProperty(Jme,"__esModule",{value:!0})),Jme}var PM={},A1t;function gGt(){if(A1t)return PM;A1t=1,Object.defineProperty(PM,"__esModule",{value:!0}),PM.isZoomable=PM.isScrollable=void 0;const f=_S();function h(w){return(0,f.hasOwnProperty)(w,"scroll")}PM.isScrollable=h;function b(w){return(0,f.hasOwnProperty)(w,"zoom")}return PM.isZoomable=b,PM}var Qme={},O1t;function bGt(){return O1t||(O1t=1,Object.defineProperty(Qme,"__esModule",{value:!0})),Qme}var D1t;function Sp(){return D1t||(D1t=1,(function(f){var h=SM&&SM.__createBinding||(Object.create?(function(w,m,P,g){g===void 0&&(g=P);var E=Object.getOwnPropertyDescriptor(m,P);(!E||("get"in E?!m.__esModule:E.writable||E.configurable))&&(E={enumerable:!0,get:function(){return m[P]}}),Object.defineProperty(w,g,E)}):(function(w,m,P,g){g===void 0&&(g=P),w[g]=m[P]})),b=SM&&SM.__exportStar||function(w,m){for(var P in w)P!=="default"&&!Object.prototype.hasOwnProperty.call(m,P)&&h(m,w,P)};Object.defineProperty(f,"__esModule",{value:!0}),b(fGt(),f),b(jc(),f),b(hGt(),f),b(dGt(),f),b(gGt(),f),b(kye(),f),b(Ac(),f),b(bGt(),f),b(LM(),f),b(_S(),f)})(SM)),SM}var k1t;function Ca(){if(k1t)return su;k1t=1;var f=su&&su.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k};Object.defineProperty(su,"__esModule",{value:!0}),su.ResetCommand=su.SystemCommand=su.PopupCommand=su.HiddenCommand=su.MergeableCommand=su.Command=su.isStoppableCommand=void 0,vye();const h=Zt(),b=Sp();function w(M){return M&&(0,b.hasOwnProperty)(M,"stoppableCommandKey")&&"stopExecution"in M&&typeof M.stopExecution=="function"}su.isStoppableCommand=w;let m=class{};su.Command=m,su.Command=m=f([(0,h.injectable)()],m);let P=class extends m{merge(_,I){return!1}};su.MergeableCommand=P,su.MergeableCommand=P=f([(0,h.injectable)()],P);let g=class extends m{undo(_){return _.logger.error(this,"Cannot undo a hidden command"),_.root}redo(_){return _.logger.error(this,"Cannot redo a hidden command"),_.root}};su.HiddenCommand=g,su.HiddenCommand=g=f([(0,h.injectable)()],g);let E=class extends m{};su.PopupCommand=E,su.PopupCommand=E=f([(0,h.injectable)()],E);let C=class extends m{};su.SystemCommand=C,su.SystemCommand=C=f([(0,h.injectable)()],C);let T=class extends m{};return su.ResetCommand=T,su.ResetCommand=T=f([(0,h.injectable)()],T),su}var Jh={},R1t;function kb(){if(R1t)return Jh;R1t=1;var f=Jh&&Jh.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=Jh&&Jh.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=Jh&&Jh.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(Jh,"__esModule",{value:!0}),Jh.configureCommand=Jh.CommandActionHandlerInitializer=Jh.CommandActionHandler=void 0;const w=Zt(),m=EA(),P=Qn();class g{constructor(M){this.commandRegistration=M}handle(M){return this.commandRegistration.factory(M)}}Jh.CommandActionHandler=g;let E=class{constructor(M){this.registrations=M}initialize(M){this.registrations.forEach(_=>M.register(_.kind,new g(_)))}};Jh.CommandActionHandlerInitializer=E,Jh.CommandActionHandlerInitializer=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.CommandRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);function C(T,M){if(!(0,m.isInjectable)(M))throw new Error(`Commands should be @injectable: ${M.name}`);T.isBound(M)||T.bind(M).toSelf(),T.bind(P.TYPES.CommandRegistration).toDynamicValue(_=>({kind:M.KIND,factory:I=>{const O=new w.Container;return O.parent=_.container,O.bind(P.TYPES.Action).toConstantValue(I),O.get(M)}}))}return Jh.configureCommand=C,Jh}var Zme={},x1t;function Gpt(){return x1t||(x1t=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.overrideCommandStackOptions=f.configureCommandStackOptions=f.defaultCommandStackOptions=void 0;const h=_S(),b=Qn(),w=()=>({defaultDuration:250,undoHistoryLimit:50});f.defaultCommandStackOptions=w;function m(g,E){const C=Object.assign(Object.assign({},(0,f.defaultCommandStackOptions)()),E);g.isBound(b.TYPES.CommandStackOptions)?g.rebind(b.TYPES.CommandStackOptions).toConstantValue(C):g.bind(b.TYPES.CommandStackOptions).toConstantValue(C)}f.configureCommandStackOptions=m;function P(g,E){const C=g.get(b.TYPES.CommandStackOptions);return(0,h.safeAssign)(C,E),C}f.overrideCommandStackOptions=P})(Zme)),Zme}var cy={},L1t;function Upt(){if(L1t)return cy;L1t=1;var f=cy&&cy.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=cy&&cy.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)};Object.defineProperty(cy,"__esModule",{value:!0}),cy.CommandStack=void 0;const b=Zt(),w=Qn(),m=ES(),P=Oc(),g=eN(),E=Ca();let C=class{constructor(){this.undoStack=[],this.redoStack=[],this.stoppableCommands=new Map,this.offStack=[]}initialize(){this.currentPromise=Promise.resolve({main:{model:this.modelFactory.createRoot(m.EMPTY_ROOT),modelChanged:!1},hidden:{model:this.modelFactory.createRoot(m.EMPTY_ROOT),modelChanged:!1},popup:{model:this.modelFactory.createRoot(m.EMPTY_ROOT),modelChanged:!1}})}get currentModel(){return this.currentPromise.then(_=>_.main.model)}executeAll(_){return _.forEach(I=>{this.logger.log(this,"Executing",I),this.handleCommand(I,I.execute,this.mergeOrPush)}),this.thenUpdate()}execute(_){return this.logger.log(this,"Executing",_),this.handleCommand(_,_.execute,this.mergeOrPush),this.thenUpdate()}undo(){this.undoOffStackSystemCommands(),this.undoPreceedingSystemCommands();const _=this.undoStack[this.undoStack.length-1];return _!==void 0&&!this.isBlockUndo(_)&&(this.undoStack.pop(),this.logger.log(this,"Undoing",_),this.handleCommand(_,_.undo,(I,O)=>{this.redoStack.push(I)})),this.thenUpdate()}redo(){this.undoOffStackSystemCommands();const _=this.redoStack.pop();return _!==void 0&&(this.logger.log(this,"Redoing",_),this.handleCommand(_,_.redo,(I,O)=>{this.pushToUndoStack(I)})),this.redoFollowingSystemCommands(),this.thenUpdate()}handleCommand(_,I,O){if((0,E.isStoppableCommand)(_)){const j=this.stoppableCommands.get(_.stoppableCommandKey);j&&j.stopExecution(),this.stoppableCommands.set(_.stoppableCommandKey,_)}this.currentPromise=this.currentPromise.then(j=>new Promise(k=>{let x;_ instanceof E.HiddenCommand?x="hidden":_ instanceof E.PopupCommand?x="popup":x="main";const R=this.createContext(j.main.model);let H;try{H=I.call(_,R)}catch($){this.logger.error(this,"Failed to execute command:",$),H=j[x].model}const F=T(j);H instanceof Promise?H.then($=>{x==="main"&&O.call(this,_,R),F[x]={model:$,modelChanged:!0},k(F)}):H instanceof P.SModelRootImpl?(x==="main"&&O.call(this,_,R),F[x]={model:H,modelChanged:!0},k(F)):(x==="main"&&O.call(this,_,R),F[x]={model:H.model,modelChanged:j[x].modelChanged||H.modelChanged,cause:H.cause},k(F))}))}pushToUndoStack(_){this.undoStack.push(_),this.options.undoHistoryLimit>=0&&this.undoStack.length>this.options.undoHistoryLimit&&this.undoStack.splice(0,this.undoStack.length-this.options.undoHistoryLimit)}thenUpdate(){return this.currentPromise=this.currentPromise.then(_=>{const I=T(_);return _.hidden.modelChanged&&(this.updateHidden(_.hidden.model,_.hidden.cause),I.hidden.modelChanged=!1,I.hidden.cause=void 0),_.main.modelChanged&&(this.update(_.main.model,_.main.cause),I.main.modelChanged=!1,I.main.cause=void 0),_.popup.modelChanged&&(this.updatePopup(_.popup.model,_.popup.cause),I.popup.modelChanged=!1,I.popup.cause=void 0),I}),this.currentModel}update(_,I){this.modelViewer===void 0&&(this.modelViewer=this.viewerProvider.modelViewer),this.modelViewer.update(_,I)}updateHidden(_,I){this.hiddenModelViewer===void 0&&(this.hiddenModelViewer=this.viewerProvider.hiddenModelViewer),this.hiddenModelViewer.update(_,I)}updatePopup(_,I){this.popupModelViewer===void 0&&(this.popupModelViewer=this.viewerProvider.popupModelViewer),this.popupModelViewer.update(_,I)}mergeOrPush(_,I){if(this.isBlockUndo(_)){this.undoStack=[],this.redoStack=[],this.offStack=[],this.pushToUndoStack(_);return}if(this.isPushToOffStack(_)&&this.redoStack.length>0){if(this.offStack.length>0){const O=this.offStack[this.offStack.length-1];if(O instanceof E.MergeableCommand&&O.merge(_,I))return}this.offStack.push(_);return}if(this.isPushToUndoStack(_)){if(this.offStack.forEach(O=>this.undoStack.push(O)),this.offStack=[],this.redoStack=[],this.undoStack.length>0){const O=this.undoStack[this.undoStack.length-1];if(O instanceof E.MergeableCommand&&O.merge(_,I))return}this.pushToUndoStack(_)}}undoOffStackSystemCommands(){let _=this.offStack.pop();for(;_!==void 0;)this.logger.log(this,"Undoing off-stack",_),this.handleCommand(_,_.undo,()=>{}),_=this.offStack.pop()}undoPreceedingSystemCommands(){let _=this.undoStack[this.undoStack.length-1];for(;_!==void 0&&this.isPushToOffStack(_);)this.undoStack.pop(),this.logger.log(this,"Undoing",_),this.handleCommand(_,_.undo,(I,O)=>{this.redoStack.push(I)}),_=this.undoStack[this.undoStack.length-1]}redoFollowingSystemCommands(){let _=this.redoStack[this.redoStack.length-1];for(;_!==void 0&&this.isPushToOffStack(_);)this.redoStack.pop(),this.logger.log(this,"Redoing ",_),this.handleCommand(_,_.redo,(I,O)=>{this.pushToUndoStack(I)}),_=this.redoStack[this.redoStack.length-1]}createContext(_){return{root:_,modelChanged:this,modelFactory:this.modelFactory,duration:this.options.defaultDuration,logger:this.logger,syncer:this.syncer}}isPushToOffStack(_){return _ instanceof E.SystemCommand}isPushToUndoStack(_){return!(_ instanceof E.HiddenCommand)}isBlockUndo(_){return _ instanceof E.ResetCommand}};cy.CommandStack=C,f([(0,b.inject)(w.TYPES.IModelFactory),h("design:type",Object)],C.prototype,"modelFactory",void 0),f([(0,b.inject)(w.TYPES.IViewerProvider),h("design:type",Object)],C.prototype,"viewerProvider",void 0),f([(0,b.inject)(w.TYPES.ILogger),h("design:type",Object)],C.prototype,"logger",void 0),f([(0,b.inject)(w.TYPES.AnimationFrameSyncer),h("design:type",g.AnimationFrameSyncer)],C.prototype,"syncer",void 0),f([(0,b.inject)(w.TYPES.CommandStackOptions),h("design:type",Object)],C.prototype,"options",void 0),f([(0,b.postConstruct)(),h("design:type",Function),h("design:paramtypes",[]),h("design:returntype",void 0)],C.prototype,"initialize",null),cy.CommandStack=C=f([(0,b.injectable)()],C);function T(M){return{main:Object.assign({},M.main),hidden:Object.assign({},M.hidden),popup:Object.assign({},M.popup)}}return cy}var fh={},Hd={},N1t;function My(){if(N1t)return Hd;N1t=1,Object.defineProperty(Hd,"__esModule",{value:!0}),Hd.isSVGGraphicsElement=Hd.hitsMouseEvent=Hd.getWindowScroll=Hd.isCrossSite=Hd.isMac=Hd.isCtrlOrCmd=void 0;const f=Sp();function h(E){return b()?E.metaKey:E.ctrlKey}Hd.isCtrlOrCmd=h;function b(){return window.navigator.userAgent.indexOf("Mac")!==-1}Hd.isMac=b;function w(E){if(E&&typeof window<"u"&&window.location){let C="";return window.location.protocol&&(C+=window.location.protocol+"//"),window.location.host&&(C+=window.location.host),C.length>0&&!E.startsWith(C)}return!1}Hd.isCrossSite=w;function m(){return typeof window>"u"?f.Point.ORIGIN:{x:window.pageXOffset,y:window.pageYOffset}}Hd.getWindowScroll=m;function P(E,C){const T=E.getBoundingClientRect();return C.clientX>=T.left&&C.clientX<=T.right&&C.clientY>=T.top&&C.clientY<=T.bottom}Hd.hitsMouseEvent=P;function g(E){return typeof E.getBBox=="function"}return Hd.isSVGGraphicsElement=g,Hd}var F1t;function fJ(){if(F1t)return fh;F1t=1;var f=fh&&fh.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h=fh&&fh.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)},b=fh&&fh.__param||function(I,O){return function(j,k){O(j,k,I)}};Object.defineProperty(fh,"__esModule",{value:!0}),fh.InitializeCanvasBoundsCommand=fh.InitializeCanvasBoundsAction=fh.CanvasBoundsInitializer=void 0;const w=Zt(),m=Ac(),P=Qn(),g=Oc(),E=Ca(),C=My();let T=class{decorate(O,j){return j instanceof g.SModelRootImpl&&!m.Dimension.isValid(j.canvasBounds)&&(this.rootAndVnode=[j,O]),O}postUpdate(){if(this.rootAndVnode!==void 0){const O=this.rootAndVnode[1].elm,j=this.rootAndVnode[0].canvasBounds;if(O!==void 0){const k=this.getBoundsInPage(O);(0,m.almostEquals)(k.x,j.x)&&(0,m.almostEquals)(k.y,j.y)&&(0,m.almostEquals)(k.width,j.width)&&(0,m.almostEquals)(k.height,j.width)||this.actionDispatcher.dispatch(M.create(k))}this.rootAndVnode=void 0}}getBoundsInPage(O){const j=O.getBoundingClientRect(),k=(0,C.getWindowScroll)();return{x:j.left+k.x,y:j.top+k.y,width:j.width,height:j.height}}};fh.CanvasBoundsInitializer=T,f([(0,w.inject)(P.TYPES.IActionDispatcher),h("design:type",Object)],T.prototype,"actionDispatcher",void 0),fh.CanvasBoundsInitializer=T=f([(0,w.injectable)()],T);var M;(function(I){I.KIND="initializeCanvasBounds";function O(j){return{kind:I.KIND,newCanvasBounds:j}}I.create=O})(M||(fh.InitializeCanvasBoundsAction=M={}));let _=class extends E.SystemCommand{constructor(O){super(),this.action=O}execute(O){return this.newCanvasBounds=this.action.newCanvasBounds,O.root.canvasBounds=this.newCanvasBounds,O.root}undo(O){return O.root}redo(O){return O.root}};return fh.InitializeCanvasBoundsCommand=_,_.KIND=M.KIND,fh.InitializeCanvasBoundsCommand=_=f([(0,w.injectable)(),b(0,(0,w.inject)(P.TYPES.Action)),h("design:paramtypes",[Object])],_),fh}var gp={},B1t;function xye(){if(B1t)return gp;B1t=1;var f=gp&&gp.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=gp&&gp.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=gp&&gp.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(gp,"__esModule",{value:!0}),gp.SetModelCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=fJ();let C=class extends P.ResetCommand{constructor(M){super(),this.action=M}execute(M){return this.oldRoot=M.modelFactory.createRoot(M.root),this.newRoot=M.modelFactory.createRoot(this.action.newRoot),this.newRoot}undo(M){return this.oldRoot}redo(M){return this.newRoot}get blockUntil(){return M=>M.kind===E.InitializeCanvasBoundsCommand.KIND}};return gp.SetModelCommand=C,C.KIND=m.SetModelAction.KIND,gp.SetModelCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],C),gp}var hh={},$1t;function Qh(){if($1t)return hh;$1t=1,Object.defineProperty(hh,"__esModule",{value:!0}),hh.transformToRootBounds=hh.containsSome=hh.translateBounds=hh.translatePoint=hh.findParentByFeature=hh.findParent=hh.registerModelElement=void 0;const f=Qn(),h=Oc();function b(T,M,_,I,O){T.bind(f.TYPES.SModelElementRegistration).toConstantValue({type:M,constr:_,features:I,isOverride:O})}hh.registerModelElement=b;function w(T,M){let _=T;for(;_!==void 0;){if(M(_))return _;_ instanceof h.SChildElementImpl?_=_.parent:_=void 0}return _}hh.findParent=w;function m(T,M){let _=T;for(;_!==void 0;){if(M(_))return _;_ instanceof h.SChildElementImpl?_=_.parent:_=void 0}return _}hh.findParentByFeature=m;function P(T,M,_){if(M!==_){for(;M instanceof h.SChildElementImpl;)if(T=M.localToParent(T),M=M.parent,M===_)return T;const I=[];for(;_ instanceof h.SChildElementImpl;)I.push(_),_=_.parent;if(M!==_)throw new Error("Incompatible source and target: "+M.id+", "+_.id);for(let O=I.length-1;O>=0;O--)T=I[O].parentToLocal(T)}return T}hh.translatePoint=P;function g(T,M,_){const I=P(T,M,_),O=P({x:T.x+T.width,y:T.y+T.height},M,_);return{x:I.x,y:I.y,width:O.x-I.x,height:O.y-I.y}}hh.translateBounds=g;function E(T,M){const _=O=>T.index.getById(O.id)!==void 0,I=O=>O.some(j=>_(j)||I(j.children));return I([M])}hh.containsSome=E;function C(T,M){for(;T instanceof h.SChildElementImpl;)M=T.localToParent(M),T=T.parent;return M}return hh.transformToRootBounds=C,hh}var dh={},K1t;function hJ(){if(K1t)return dh;K1t=1;var f=dh&&dh.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=dh&&dh.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=dh&&dh.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(dh,"__esModule",{value:!0}),dh.SetUIExtensionVisibilityCommand=dh.SetUIExtensionVisibilityAction=dh.UIExtensionRegistry=void 0;const w=Zt(),m=q3(),P=Ca(),g=Qn();let E=class extends m.InstanceRegistry{constructor(_=[]){super(),_.forEach(I=>this.register(I.id(),I))}};dh.UIExtensionRegistry=E,dh.UIExtensionRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.IUIExtension)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);var C;(function(M){M.KIND="setUIExtensionVisibility";function _(I){var O;return{kind:M.KIND,extensionId:I.extensionId,visible:I.visible,contextElementsId:(O=I.contextElementsId)!==null&&O!==void 0?O:[]}}M.create=_})(C||(dh.SetUIExtensionVisibilityAction=C={}));let T=class extends P.SystemCommand{constructor(_){super(),this.action=_}execute(_){const I=this.registry.get(this.action.extensionId);return I&&(this.action.visible?I.show(_.root,...this.action.contextElementsId):I.hide()),{model:_.root,modelChanged:!1}}undo(_){return{model:_.root,modelChanged:!1}}redo(_){return{model:_.root,modelChanged:!1}}};return dh.SetUIExtensionVisibilityCommand=T,T.KIND=C.KIND,f([(0,w.inject)(g.TYPES.UIExtensionRegistry),h("design:type",E)],T.prototype,"registry",void 0),dh.SetUIExtensionVisibilityCommand=T=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],T),dh}var bp={},q1t;function Lye(){if(q1t)return bp;q1t=1;var f=bp&&bp.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=bp&&bp.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(bp,"__esModule",{value:!0}),bp.AbstractUIExtension=bp.isUIExtension=void 0;const b=Zt(),w=Sp(),m=Qn();function P(E){return(0,w.hasOwnProperty)(E,"id","function")&&(0,w.hasOwnProperty)(E,"show","function")&&(0,w.hasOwnProperty)(E,"hide","function")}bp.isUIExtension=P;let g=class{show(C,...T){this.activeElement=document.activeElement,!(!this.containerElement&&!this.initialize())&&(this.onBeforeShow(this.containerElement,C,...T),this.setContainerVisible(!0))}hide(){this.setContainerVisible(!1),this.restoreFocus(),this.activeElement=null}restoreFocus(){const C=this.activeElement;C&&C.focus()}initialize(){const C=document.getElementById(this.options.baseDiv);return C?(this.containerElement=this.getOrCreateContainer(C.id),this.initializeContents(this.containerElement),C&&C.insertBefore(this.containerElement,C.firstChild),!0):(this.logger.warn(this,`Could not obtain sprotty base container for initializing UI extension ${this.id}`,this),!1)}getOrCreateContainer(C){let T=document.getElementById(this.id());return T===null&&(T=document.createElement("div"),T.id=C+"_"+this.id(),T.classList.add(this.containerClass())),T}setContainerVisible(C){this.containerElement&&(C?(this.containerElement.style.visibility="visible",this.containerElement.style.opacity="1"):(this.containerElement.style.visibility="hidden",this.containerElement.style.opacity="0"))}onBeforeShow(C,T,...M){}};return bp.AbstractUIExtension=g,f([(0,b.inject)(m.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"options",void 0),f([(0,b.inject)(m.TYPES.ILogger),h("design:type",Object)],g.prototype,"logger",void 0),bp.AbstractUIExtension=g=f([(0,b.injectable)()],g),bp}var zd={},nf={},H1t;function mh(){if(H1t)return nf;H1t=1,Object.defineProperty(nf,"__esModule",{value:!0}),nf.getAttrs=nf.on=nf.mergeStyle=nf.copyClassesFromElement=nf.copyClassesFromVNode=nf.setNamespace=nf.setClass=nf.setAttr=void 0;function f(_,I,O){E(_)[I]=O}nf.setAttr=f;function h(_,I,O){T(_)[I]=O}nf.setClass=h;function b(_,I){_.data===void 0&&(_.data={}),_.data.ns=I;const O=_.children;if(O!==void 0)for(let j=0;jh(I,j,!0))}nf.copyClassesFromVNode=w;function m(_,I){const O=_.classList;for(let j=0;j=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=zd&&zd.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=zd&&zd.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(zd,"__esModule",{value:!0}),zd.KeyListener=zd.KeyTool=void 0;const w=Zt(),m=Qn(),P=Oc(),g=mh();let E=class{constructor(M=[]){this.keyListeners=M}register(M){this.keyListeners.push(M)}deregister(M){const _=this.keyListeners.indexOf(M);_>=0&&this.keyListeners.splice(_,1)}handleEvent(M,_,I){const O=this.keyListeners.map(j=>j[M].apply(j,[_,I])).reduce((j,k)=>j.concat(k));O.length>0&&(I.preventDefault(),this.actionDispatcher.dispatchAll(O))}keyDown(M,_){this.handleEvent("keyDown",M,_)}keyUp(M,_){this.handleEvent("keyUp",M,_)}focus(){}decorate(M,_){return _ instanceof P.SModelRootImpl&&((0,g.on)(M,"focus",this.focus.bind(this,_)),(0,g.on)(M,"keydown",this.keyDown.bind(this,_)),(0,g.on)(M,"keyup",this.keyUp.bind(this,_))),M}postUpdate(){}};zd.KeyTool=E,f([(0,w.inject)(m.TYPES.IActionDispatcher),h("design:type",Object)],E.prototype,"actionDispatcher",void 0),zd.KeyTool=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.KeyListener)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);let C=class{keyDown(M,_){return[]}keyUp(M,_){return[]}};return zd.KeyListener=C,zd.KeyListener=C=f([(0,w.injectable)()],C),zd}var Qa={},sy={},V1t;function tN(){if(V1t)return sy;V1t=1;var f=sy&&sy.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M},h=sy&&sy.__metadata||function(P,g){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(P,g)};Object.defineProperty(sy,"__esModule",{value:!0}),sy.DOMHelper=void 0;const b=Zt(),w=Qn();let m=class{getPrefix(){return this.viewerOptions!==void 0&&this.viewerOptions.baseDiv!==void 0?this.viewerOptions.baseDiv+"_":""}createUniqueDOMElementId(g){return this.getPrefix()+g.id}findSModelIdByDOMElement(g){return g.id.replace(this.getPrefix(),"")}};return sy.DOMHelper=m,f([(0,b.inject)(w.TYPES.ViewerOptions),h("design:type",Object)],m.prototype,"viewerOptions",void 0),sy.DOMHelper=m=f([(0,b.injectable)()],m),sy}var G1t;function Pp(){if(G1t)return Qa;G1t=1;var f=Qa&&Qa.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=Qa&&Qa.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)},b=Qa&&Qa.__param||function(O,j){return function(k,x){j(k,x,O)}};Object.defineProperty(Qa,"__esModule",{value:!0}),Qa.MousePositionTracker=Qa.MouseListener=Qa.PopupMouseTool=Qa.MouseTool=void 0;const w=Zt(),m=jc(),P=Oc(),g=Qn(),E=tN(),C=mh();let T=class{constructor(j=[]){this.mouseListeners=j}register(j){this.mouseListeners.push(j)}deregister(j){const k=this.mouseListeners.indexOf(j);k>=0&&this.mouseListeners.splice(k,1)}getTargetElement(j,k){let x=k.target;const R=j.index;for(;x;){if(x.id){const H=R.getById(this.domHelper.findSModelIdByDOMElement(x));if(H!==void 0)return H}x=x.parentNode}}handleEvent(j,k,x){this.focusOnMouseEvent(j,k);const R=this.getTargetElement(k,x);if(!R)return;const H=this.mouseListeners.map(F=>F[j](R,x)).reduce((F,$)=>F.concat($));if(H.length>0){x.preventDefault();for(const F of H)(0,m.isAction)(F)?this.actionDispatcher.dispatch(F):F.then($=>{this.actionDispatcher.dispatch($)})}}focusOnMouseEvent(j,k){if(document&&j==="mouseDown"){const x=document.getElementById(this.domHelper.createUniqueDOMElementId(k));x!==null&&typeof x.focus=="function"&&x.focus()}}mouseOver(j,k){this.handleEvent("mouseOver",j,k)}mouseOut(j,k){this.handleEvent("mouseOut",j,k)}mouseEnter(j,k){this.handleEvent("mouseEnter",j,k)}mouseLeave(j,k){this.handleEvent("mouseLeave",j,k)}mouseDown(j,k){this.handleEvent("mouseDown",j,k)}mouseMove(j,k){this.handleEvent("mouseMove",j,k)}mouseUp(j,k){this.handleEvent("mouseUp",j,k)}wheel(j,k){this.handleEvent("wheel",j,k)}contextMenu(j,k){k.preventDefault(),this.handleEvent("contextMenu",j,k)}doubleClick(j,k){this.handleEvent("doubleClick",j,k)}decorate(j,k){return k instanceof P.SModelRootImpl&&((0,C.on)(j,"mouseover",this.mouseOver.bind(this,k)),(0,C.on)(j,"mouseout",this.mouseOut.bind(this,k)),(0,C.on)(j,"mouseenter",this.mouseEnter.bind(this,k)),(0,C.on)(j,"mouseleave",this.mouseLeave.bind(this,k)),(0,C.on)(j,"mousedown",this.mouseDown.bind(this,k)),(0,C.on)(j,"mouseup",this.mouseUp.bind(this,k)),(0,C.on)(j,"mousemove",this.mouseMove.bind(this,k)),(0,C.on)(j,"wheel",this.wheel.bind(this,k)),(0,C.on)(j,"contextmenu",this.contextMenu.bind(this,k)),(0,C.on)(j,"dblclick",this.doubleClick.bind(this,k)),(0,C.on)(j,"dragover",x=>this.handleEvent("dragOver",k,x)),(0,C.on)(j,"drop",x=>this.handleEvent("drop",k,x))),j=this.mouseListeners.reduce((x,R)=>R.decorate(x,k),j),j}postUpdate(){}};Qa.MouseTool=T,f([(0,w.inject)(g.TYPES.IActionDispatcher),h("design:type",Object)],T.prototype,"actionDispatcher",void 0),f([(0,w.inject)(g.TYPES.DOMHelper),h("design:type",E.DOMHelper)],T.prototype,"domHelper",void 0),Qa.MouseTool=T=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.MouseListener)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],T);let M=class extends T{constructor(j=[]){super(j),this.mouseListeners=j}};Qa.PopupMouseTool=M,Qa.PopupMouseTool=M=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.PopupMouseListener)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],M);let _=class{mouseOver(j,k){return[]}mouseOut(j,k){return[]}mouseEnter(j,k){return[]}mouseLeave(j,k){return[]}mouseDown(j,k){return[]}mouseMove(j,k){return[]}mouseUp(j,k){return[]}wheel(j,k){return[]}doubleClick(j,k){return[]}contextMenu(j,k){return[]}dragOver(j,k){return[]}drop(j,k){return[]}decorate(j,k){return j}};Qa.MouseListener=_,Qa.MouseListener=_=f([(0,w.injectable)()],_);let I=class extends _{mouseMove(j,k){return this.lastPosition=j.root.parentToLocal({x:k.offsetX,y:k.offsetY}),[]}get lastPositionOnDiagram(){return this.lastPosition}};return Qa.MousePositionTracker=I,Qa.MousePositionTracker=I=f([(0,w.injectable)()],I),Qa}var uy={};function pGt(f,h){return document.createElement(f,h)}function wGt(f,h,b){return document.createElementNS(f,h,b)}function mGt(){return AM(document.createDocumentFragment())}function vGt(f){return document.createTextNode(f)}function yGt(f){return document.createComment(f)}function _Gt(f,h,b){if(O3(f)){let w=f;for(;w&&O3(w);)w=AM(w).parent;f=w??f}O3(h)&&(h=AM(h,f)),b&&O3(b)&&(b=AM(b).firstChildNode),f.insertBefore(h,b)}function EGt(f,h){f.removeChild(h)}function SGt(f,h){O3(h)&&(h=AM(h,f)),f.appendChild(h)}function Wpt(f){if(O3(f)){for(;f&&O3(f);)f=AM(f).parent;return f??null}return f.parentNode}function PGt(f){var h;if(O3(f)){const b=AM(f),w=Wpt(b);if(w&&b.lastChildNode){const m=Array.from(w.childNodes),P=m.indexOf(b.lastChildNode);return(h=m[P+1])!==null&&h!==void 0?h:null}return null}return f.nextSibling}function MGt(f){return f.tagName}function CGt(f,h){f.textContent=h}function IGt(f){return f.textContent}function TGt(f){return f.nodeType===1}function jGt(f){return f.nodeType===3}function AGt(f){return f.nodeType===8}function O3(f){return f.nodeType===11}function AM(f,h){var b,w,m;const P=f;return(b=P.parent)!==null&&b!==void 0||(P.parent=h??null),(w=P.firstChildNode)!==null&&w!==void 0||(P.firstChildNode=f.firstChild),(m=P.lastChildNode)!==null&&m!==void 0||(P.lastChildNode=f.lastChild),P}const Nye={createElement:pGt,createElementNS:wGt,createTextNode:vGt,createDocumentFragment:mGt,createComment:yGt,insertBefore:_Gt,removeChild:EGt,appendChild:SGt,parentNode:Wpt,nextSibling:PGt,tagName:MGt,setTextContent:CGt,getTextContent:IGt,isElement:TGt,isText:jGt,isComment:AGt,isDocumentFragment:O3};function Yd(f,h,b,w,m){const P=h===void 0?void 0:h.key;return{sel:f,data:h,children:b,text:w,elm:m,key:P}}const RL=Array.isArray;function OM(f){return typeof f=="string"||typeof f=="number"||f instanceof String||f instanceof Number}function eve(f){return f===void 0}function og(f){return f!==void 0}const tve=Yd("",{},[],void 0,void 0);function vL(f,h){var b,w;const m=f.key===h.key,P=((b=f.data)===null||b===void 0?void 0:b.is)===((w=h.data)===null||w===void 0?void 0:w.is),g=f.sel===h.sel,E=!f.sel&&f.sel===h.sel?typeof f.text==typeof h.text:!0;return g&&m&&P&&E}function OGt(){throw new Error("The document fragment is not supported on this platform.")}function DGt(f,h){return f.isElement(h)}function kGt(f,h){return f.isDocumentFragment(h)}function RGt(f,h,b){var w;const m={};for(let P=h;P<=b;++P){const g=(w=f[P])===null||w===void 0?void 0:w.key;g!==void 0&&(m[g]=P)}return m}const xGt=["create","update","remove","destroy","pre","post"];function LGt(f,h,b){const w={create:[],update:[],remove:[],destroy:[],pre:[],post:[]},m=h!==void 0?h:Nye;for(const j of xGt)for(const k of f){const x=k[j];x!==void 0&&w[j].push(x)}function P(j){const k=j.id?"#"+j.id:"",x=j.getAttribute("class"),R=x?"."+x.split(" ").join("."):"";return Yd(m.tagName(j).toLowerCase()+k+R,{},[],void 0,j)}function g(j){return Yd(void 0,{},[],void 0,j)}function E(j,k){return function(){if(--k===0){const R=m.parentNode(j);m.removeChild(R,j)}}}function C(j,k){var x,R,H,F;let $,W=j.data;if(W!==void 0){const ce=(x=W.hook)===null||x===void 0?void 0:x.init;og(ce)&&(ce(j),W=j.data)}const re=j.children,ae=j.sel;if(ae==="!")eve(j.text)&&(j.text=""),j.elm=m.createComment(j.text);else if(ae!==void 0){const ce=ae.indexOf("#"),J=ae.indexOf(".",ce),te=ce>0?ce:ae.length,fe=J>0?J:ae.length,ve=ce!==-1||J!==-1?ae.slice(0,Math.min(te,fe)):ae,me=j.elm=og(W)&&og($=W.ns)?m.createElementNS($,ve,W):m.createElement(ve,W);for(te0&&me.setAttribute("class",ae.slice(fe+1).replace(/\./g," ")),$=0;$0&&(M.attrs=C),Object.keys(T).length>0&&(M.dataset=T),E[0]==="s"&&E[1]==="v"&&E[2]==="g"&&(E.length===3||E[3]==="."||E[3]==="#")&&dJ(M,_,E),Yd(E,M,_,void 0,f)}else return b.isText(f)?(w=b.getTextContent(f),Yd(void 0,void 0,void 0,w,f)):b.isComment(f)?(w=b.getTextContent(f),Yd("!",{},[],w,f)):Yd("",{},[],void 0,f)}const GGt="http://www.w3.org/1999/xlink",UGt="http://www.w3.org/XML/1998/namespace",U1t=58,WGt=120;function W1t(f,h){let b;const w=h.elm;let m=f.data.attrs,P=h.data.attrs;if(!(!m&&!P)&&m!==P){m=m||{},P=P||{};for(b in P){const g=P[b];m[b]!==g&&(g===!0?w.setAttribute(b,""):g===!1?w.removeAttribute(b):b.charCodeAt(0)!==WGt?w.setAttribute(b,g):b.charCodeAt(3)===U1t?w.setAttributeNS(UGt,b,g):b.charCodeAt(5)===U1t?w.setAttributeNS(GGt,b,g):w.setAttribute(b,g))}for(b in m)b in P||w.removeAttribute(b)}}const YGt={create:W1t,update:W1t};function Y1t(f,h){let b,w;const m=h.elm;let P=f.data.class,g=h.data.class;if(!(!P&&!g)&&P!==g){P=P||{},g=g||{};for(w in P)P[w]&&!Object.prototype.hasOwnProperty.call(g,w)&&m.classList.remove(w);for(w in g)b=g[w],b!==P[w]&&m.classList[b?"add":"remove"](w)}}const XGt={create:Y1t,update:Y1t},X1t=/[A-Z]/g;function J1t(f,h){const b=h.elm;let w=f.data.dataset,m=h.data.dataset,P;if(!w&&!m||w===m)return;w=w||{},m=m||{};const g=b.dataset;for(P in w)m[P]||(g?P in g&&delete g[P]:b.removeAttribute("data-"+P.replace(X1t,"-$&").toLowerCase()));for(P in m)w[P]!==m[P]&&(g?g[P]=m[P]:b.setAttribute("data-"+P.replace(X1t,"-$&").toLowerCase(),m[P]))}const JGt={create:J1t,update:J1t};function Xpt(f,h,b){if(typeof f=="function")f.call(h,b,h);else if(typeof f=="object")for(let w=0;w=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(uy,"__esModule",{value:!0}),uy.isThunk=uy.ThunkView=void 0;const h=nN,b=Zt();let w=class{render(g,E){return(0,h.h)(this.selector(g),{key:g.id,hook:{init:this.init.bind(this),prepatch:this.prepatch.bind(this)},fn:()=>this.renderAndDecorate(g,E),args:this.watchedArgs(g),thunk:!0})}renderAndDecorate(g,E){const C=this.doRender(g,E);return E.decorate(C,g),C}copyToThunk(g,E){E.elm=g.elm,g.data.fn=E.data.fn,g.data.args=E.data.args,E.data=g.data,E.children=g.children,E.text=g.text,E.elm=g.elm}init(g){const E=g.data,C=E.fn.apply(void 0,E.args);this.copyToThunk(C,g)}prepatch(g,E){const C=g.data,T=E.data;this.equals(C.args,T.args)?this.copyToThunk(g,E):this.copyToThunk(T.fn.apply(void 0,T.args),E)}equals(g,E){if(Array.isArray(g)&&Array.isArray(E)){if(g.length!==E.length)return!1;for(let C=0;C{E[I]&&(M[I]=E[I])}),Object.keys(E).forEach(I=>{if(I==="key"||I==="classNames"||I==="selector")return;const O=I.indexOf("-");if(O>0){const j=I.slice(0,O);h.includes(j)?_(j,I.slice(O+1),E[I]):_(C,I,E[I])}else M[I]||_(C,I,E[I])}),M;function _(I,O,j){const k=M[I]||(M[I]={});k[O]=j}}function m(E,C="props"){return(T,M,..._)=>{const I=typeof T=="function";return(0,f.jsx)(T,I?M:w(M,C,E),_)}}m3.JSX=m;const P=m();m3.html=P;const g=m(b,"attrs");return m3.svg=g,m3}var igt;function iN(){if(igt)return Us;igt=1;var f=Us&&Us.__decorate||function(F,$,W,re){var ae=arguments.length,ce=ae<3?$:re===null?re=Object.getOwnPropertyDescriptor($,W):re,J;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(F,$,W,re);else for(var te=F.length-1;te>=0;te--)(J=F[te])&&(ce=(ae<3?J(ce):ae>3?J($,W,ce):J($,W))||ce);return ae>3&&ce&&Object.defineProperty($,W,ce),ce},h=Us&&Us.__metadata||function(F,$){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(F,$)},b=Us&&Us.__param||function(F,$){return function(W,re){$(W,re,F)}},w;Object.defineProperty(Us,"__esModule",{value:!0}),Us.MissingView=Us.EmptyView=Us.configureView=Us.overrideModelElement=Us.configureModelElement=Us.ViewRegistry=Us.findArgValue=void 0;const m=Cy(),P=Zt(),g=Qn(),E=q3(),C=EA(),T=ES(),M=Qh(),_=Sp();function I(F,$){for(;F!==void 0&&!($ in F)&&F.parentArgs;)F=F.parentArgs;return F?F[$]:void 0}Us.findArgValue=I;let O=class extends E.InstanceRegistry{constructor($){super(),this.registerDefaults(),$.forEach(W=>{W.isOverride?this.override(W.type,W.factory()):this.register(W.type,W.factory())})}registerDefaults(){this.register(T.EMPTY_ROOT.type,new R)}missing($){return this.logger.warn(this,`no registered view for type '${$}', please configure a view in the ContainerModule`),new H}};Us.ViewRegistry=O,f([(0,P.inject)(g.TYPES.ILogger),h("design:type",Object)],O.prototype,"logger",void 0),Us.ViewRegistry=O=f([(0,P.injectable)(),b(0,(0,P.multiInject)(g.TYPES.ViewRegistration)),b(0,(0,P.optional)()),h("design:paramtypes",[Array])],O);function j(F,$,W,re,ae){(0,M.registerModelElement)(F,$,W,ae),x(F,$,re)}Us.configureModelElement=j;function k(F,$,W,re,ae){(0,M.registerModelElement)(F,$,W,ae,!0),x(F,$,re,!0)}Us.overrideModelElement=k;function x(F,$,W,re){if(typeof W=="function"){if(!(0,C.isInjectable)(W))throw new Error(`Views should be @injectable: ${W.name}`);F.isBound(W)||F.bind(W).toSelf()}F.bind(g.TYPES.ViewRegistration).toDynamicValue(ae=>({type:$,factory:()=>ae.container.get(W),isOverride:re}))}Us.configureView=x;let R=class{render($,W){return(0,m.svg)("svg",{"class-sprotty-empty":!0})}};Us.EmptyView=R,Us.EmptyView=R=f([(0,P.injectable)()],R);let H=w=class{render($,W){const re=$.position||this.getPostion($.type);return(0,m.svg)("text",{"class-sprotty-missing":!0,x:re.x,y:re.y},'missing "',$.type,'" view')}getPostion($){let W=w.positionMap.get($);return W||(W=_.Point.ORIGIN,w.positionMap.forEach(re=>W=re.y>=W.y?{x:0,y:re.y+20}:W),w.positionMap.set($,W)),W}};return Us.MissingView=H,H.positionMap=new Map,Us.MissingView=H=w=f([(0,P.injectable)()],H),Us}var ay={},rgt;function Qpt(){if(rgt)return ay;rgt=1;var f=ay&&ay.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_},h=ay&&ay.__metadata||function(g,E){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(g,E)};Object.defineProperty(ay,"__esModule",{value:!0}),ay.ViewerCache=void 0;const b=Zt(),w=Qn(),m=eN();let P=class{update(E,C){if(C!==void 0)this.delegate.update(E,C),this.cachedModel=void 0;else{const T=this.cachedModel===void 0;this.cachedModel=E,T&&this.scheduleUpdate()}}scheduleUpdate(){this.syncer.onEndOfNextFrame(()=>{this.cachedModel&&(this.delegate.update(this.cachedModel),this.cachedModel=void 0)})}};return ay.ViewerCache=P,f([(0,b.inject)(w.TYPES.IViewer),h("design:type",Object)],P.prototype,"delegate",void 0),f([(0,b.inject)(w.TYPES.AnimationFrameSyncer),h("design:type",m.AnimationFrameSyncer)],P.prototype,"syncer",void 0),ay.ViewerCache=P=f([(0,b.injectable)()],P),ay}var ive={},ogt;function Zpt(){return ogt||(ogt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.overrideViewerOptions=f.configureViewerOptions=f.defaultViewerOptions=void 0;const h=_S(),b=Qn(),w=()=>({baseDiv:"sprotty",baseClass:"sprotty",hiddenDiv:"sprotty-hidden",hiddenClass:"sprotty-hidden",popupDiv:"sprotty-popup",popupClass:"sprotty-popup",popupClosedClass:"sprotty-popup-closed",needsClientLayout:!0,needsServerLayout:!1,popupOpenDelay:1e3,popupCloseDelay:300,zoomLimits:{min:.01,max:10},horizontalScrollLimits:{min:-1e5,max:1e5},verticalScrollLimits:{min:-1e5,max:1e5}});f.defaultViewerOptions=w;function m(g,E){const C=Object.assign(Object.assign({},(0,f.defaultViewerOptions)()),E);g.isBound(b.TYPES.ViewerOptions)?g.rebind(b.TYPES.ViewerOptions).toConstantValue(C):g.bind(b.TYPES.ViewerOptions).toConstantValue(C)}f.configureViewerOptions=m;function P(g,E){const C=g.get(b.TYPES.ViewerOptions);return(0,h.safeAssign)(C,E),C}f.overrideViewerOptions=P})(ive)),ive}var Ju={},cgt;function ewt(){if(cgt)return Ju;cgt=1;var f=Ju&&Ju.__decorate||function(R,H,F,$){var W=arguments.length,re=W<3?H:$===null?$=Object.getOwnPropertyDescriptor(H,F):$,ae;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")re=Reflect.decorate(R,H,F,$);else for(var ce=R.length-1;ce>=0;ce--)(ae=R[ce])&&(re=(W<3?ae(re):W>3?ae(H,F,re):ae(H,F))||re);return W>3&&re&&Object.defineProperty(H,F,re),re},h=Ju&&Ju.__metadata||function(R,H){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(R,H)},b=Ju&&Ju.__param||function(R,H){return function(F,$){H(F,$,R)}};Object.defineProperty(Ju,"__esModule",{value:!0}),Ju.PopupModelViewer=Ju.HiddenModelViewer=Ju.ModelViewer=Ju.PatcherProvider=Ju.ModelRenderer=void 0;const w=Zt(),m=nN,P=Cy(),g=My(),E=fJ(),C=ES(),T=Qn(),M=Jpt(),_=mh();class I{constructor(H,F,$,W={}){this.viewRegistry=H,this.targetKind=F,this.postprocessors=$,this.args=W}decorate(H,F){return(0,M.isThunk)(H)?H:this.postprocessors.reduce(($,W)=>W.decorate($,F),H)}renderElement(H){const $=this.viewRegistry.get(H.type).render(H,this,this.args);if($)return this.decorate($,H)}renderChildren(H,F){const $=F?new I(this.viewRegistry,this.targetKind,this.postprocessors,Object.assign(Object.assign({},F),{parentArgs:this.args})):this;return H.children.map(W=>$.renderElement(W)).filter(W=>W!==void 0)}postUpdate(H){this.postprocessors.forEach(F=>F.postUpdate(H))}}Ju.ModelRenderer=I;let O=class{constructor(){this.patcher=(0,m.init)(this.createModules())}createModules(){return[m.propsModule,m.attributesModule,m.classModule,m.styleModule,m.eventListenersModule]}};Ju.PatcherProvider=O,Ju.PatcherProvider=O=f([(0,w.injectable)(),h("design:paramtypes",[])],O);let j=class{constructor(H,F,$){this.renderer=H("main",$),this.patcher=F.patcher}update(H,F){var $;this.logger.log(this,"rendering",H);const W=(0,P.html)("div",{id:this.options.baseDiv},this.renderer.renderElement(H));if(this.lastVDOM!==void 0){const re=this.hasFocus();(0,_.copyClassesFromVNode)(this.lastVDOM,W),this.lastVDOM=this.patcher.call(this,this.lastVDOM,W),this.restoreFocus(re)}else if(typeof document<"u"){let re=null;if(this.options.shadowRoot){const ae=($=document.getElementById(this.options.shadowRoot))===null||$===void 0?void 0:$.shadowRoot;ae&&(re=ae.getElementById(this.options.baseDiv))}else re=document.getElementById(this.options.baseDiv);re!==null?(typeof window<"u"&&window.addEventListener("resize",()=>{this.onWindowResize(W)}),(0,_.copyClassesFromElement)(re,W),(0,_.setClass)(W,this.options.baseClass,!0),this.lastVDOM=this.patcher.call(this,re,W)):this.logger.error(this,"element not in DOM:",this.options.baseDiv)}this.renderer.postUpdate(F)}hasFocus(){if(typeof document<"u"&&document.activeElement&&this.lastVDOM.children&&this.lastVDOM.children.length>0){const H=this.lastVDOM.children[0];if(typeof H=="object"){const F=H.elm;return document.activeElement===F}}return!1}restoreFocus(H){if(H&&this.lastVDOM.children&&this.lastVDOM.children.length>0){const F=this.lastVDOM.children[0];if(typeof F=="object"){const $=F.elm;$&&typeof $.focus=="function"&&$.focus()}}}onWindowResize(H){const F=document.getElementById(this.options.baseDiv);if(F!==null){const $=this.getBoundsInPage(F);this.actiondispatcher.dispatch(E.InitializeCanvasBoundsAction.create($))}}getBoundsInPage(H){const F=H.getBoundingClientRect(),$=(0,g.getWindowScroll)();return{x:F.left+$.x,y:F.top+$.y,width:F.width,height:F.height}}};Ju.ModelViewer=j,f([(0,w.inject)(T.TYPES.ViewerOptions),h("design:type",Object)],j.prototype,"options",void 0),f([(0,w.inject)(T.TYPES.ILogger),h("design:type",Object)],j.prototype,"logger",void 0),f([(0,w.inject)(T.TYPES.IActionDispatcher),h("design:type",Object)],j.prototype,"actiondispatcher",void 0),Ju.ModelViewer=j=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.ModelRendererFactory)),b(1,(0,w.inject)(T.TYPES.PatcherProvider)),b(2,(0,w.multiInject)(T.TYPES.IVNodePostprocessor)),b(2,(0,w.optional)()),h("design:paramtypes",[Function,O,Array])],j);let k=class{constructor(H,F,$){this.hiddenRenderer=H("hidden",$),this.patcher=F.patcher}update(H,F){this.logger.log(this,"rendering hidden");let $;if(H.type===C.EMPTY_ROOT.type)$=(0,P.html)("div",{id:this.options.hiddenDiv});else{const W=this.hiddenRenderer.renderElement(H);W&&(0,_.setAttr)(W,"opacity",0),$=(0,P.html)("div",{id:this.options.hiddenDiv},W)}if(this.lastHiddenVDOM!==void 0)(0,_.copyClassesFromVNode)(this.lastHiddenVDOM,$),this.lastHiddenVDOM=this.patcher.call(this,this.lastHiddenVDOM,$);else{let W=document.getElementById(this.options.hiddenDiv);W===null?(W=document.createElement("div"),document.body.appendChild(W)):(0,_.copyClassesFromElement)(W,$),(0,_.setClass)($,this.options.baseClass,!0),(0,_.setClass)($,this.options.hiddenClass,!0),this.lastHiddenVDOM=this.patcher.call(this,W,$)}this.hiddenRenderer.postUpdate(F)}};Ju.HiddenModelViewer=k,f([(0,w.inject)(T.TYPES.ViewerOptions),h("design:type",Object)],k.prototype,"options",void 0),f([(0,w.inject)(T.TYPES.ILogger),h("design:type",Object)],k.prototype,"logger",void 0),Ju.HiddenModelViewer=k=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.ModelRendererFactory)),b(1,(0,w.inject)(T.TYPES.PatcherProvider)),b(2,(0,w.multiInject)(T.TYPES.HiddenVNodePostprocessor)),b(2,(0,w.optional)()),h("design:paramtypes",[Function,O,Array])],k);let x=class{constructor(H,F,$){this.modelRendererFactory=H,this.popupRenderer=this.modelRendererFactory("popup",$),this.patcher=F.patcher}update(H,F){this.logger.log(this,"rendering popup",H);const $=H.type===C.EMPTY_ROOT.type;let W;if($)W=(0,P.html)("div",{id:this.options.popupDiv});else{const re=H.canvasBounds,ae={top:re.y+"px",left:re.x+"px"};W=(0,P.html)("div",{id:this.options.popupDiv,style:ae},this.popupRenderer.renderElement(H))}if(this.lastPopupVDOM!==void 0)(0,_.copyClassesFromVNode)(this.lastPopupVDOM,W),(0,_.setClass)(W,this.options.popupClosedClass,$),this.lastPopupVDOM=this.patcher.call(this,this.lastPopupVDOM,W);else if(typeof document<"u"){let re=document.getElementById(this.options.popupDiv);re===null?(re=document.createElement("div"),document.body.appendChild(re)):(0,_.copyClassesFromElement)(re,W),(0,_.setClass)(W,this.options.popupClass,!0),(0,_.setClass)(W,this.options.popupClosedClass,$),this.lastPopupVDOM=this.patcher.call(this,re,W)}this.popupRenderer.postUpdate(F)}};return Ju.PopupModelViewer=x,f([(0,w.inject)(T.TYPES.ViewerOptions),h("design:type",Object)],x.prototype,"options",void 0),f([(0,w.inject)(T.TYPES.ILogger),h("design:type",Object)],x.prototype,"logger",void 0),Ju.PopupModelViewer=x=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.ModelRendererFactory)),b(1,(0,w.inject)(T.TYPES.PatcherProvider)),b(2,(0,w.multiInject)(T.TYPES.PopupVNodePostprocessor)),b(2,(0,w.optional)()),h("design:paramtypes",[Function,O,Array])],x),Ju}var H4={},sgt;function twt(){if(sgt)return H4;sgt=1;var f=H4&&H4.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(H4,"__esModule",{value:!0}),H4.FocusFixPostprocessor=void 0;const h=Zt(),b=mh();let w=class{decorate(P,g){return P.sel&&P.sel.startsWith("svg")&&(0,b.setAttr)(P,"tabindex",0),P}postUpdate(){}};return H4.FocusFixPostprocessor=w,H4.FocusFixPostprocessor=w=f([(0,h.injectable)()],w),H4}var eX={},Vd={},ugt;function Bye(){if(ugt)return Vd;ugt=1;var f=Vd&&Vd.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=Vd&&Vd.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(Vd,"__esModule",{value:!0}),Vd.ConsoleLogger=Vd.NullLogger=Vd.LogLevel=void 0;const b=Zt(),w=Qn();var m;(function(E){E[E.none=0]="none",E[E.error=1]="error",E[E.warn=2]="warn",E[E.info=3]="info",E[E.log=4]="log"})(m||(Vd.LogLevel=m={}));let P=class{constructor(){this.logLevel=m.none}error(C,T,...M){}warn(C,T,...M){}info(C,T,...M){}log(C,T,...M){}};Vd.NullLogger=P,Vd.NullLogger=P=f([(0,b.injectable)()],P);let g=class{constructor(){this.logLevel=m.log,this.viewOptions={baseDiv:""}}error(C,T,...M){if(this.logLevel>=m.error)try{console.error.apply(C,this.consoleArguments(C,T,M))}catch{}}warn(C,T,...M){if(this.logLevel>=m.warn)try{console.warn.apply(C,this.consoleArguments(C,T,M))}catch{}}info(C,T,...M){if(this.logLevel>=m.info)try{console.info.apply(C,this.consoleArguments(C,T,M))}catch{}}log(C,T,...M){if(this.logLevel>=m.log)try{console.log.apply(C,this.consoleArguments(C,T,M))}catch{}}consoleArguments(C,T,M){let _;return typeof C=="object"?_=C.constructor.name:_=C,[new Date().toLocaleTimeString()+" "+this.viewOptions.baseDiv+" "+_+": "+T,...M]}};return Vd.ConsoleLogger=g,f([(0,b.inject)(w.TYPES.LogLevel),h("design:type",Number)],g.prototype,"logLevel",void 0),f([(0,b.inject)(w.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"viewOptions",void 0),Vd.ConsoleLogger=g=f([(0,b.injectable)()],g),Vd}var ly={},agt;function lUt(){if(agt)return ly;agt=1;var f=ly&&ly.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=ly&&ly.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(ly,"__esModule",{value:!0}),ly.IdPostprocessor=void 0;const b=Zt(),w=Qn(),m=tN(),P=mh();let g=class{decorate(C,T){const M=(0,P.getAttrs)(C);return M.id!==void 0&&this.logger.warn(C,"Overriding id of vnode ("+M.id+"). Make sure not to set it manually in view."),M.id=this.domHelper.createUniqueDOMElementId(T),C.key||(C.key=T.id),C}postUpdate(){}};return ly.IdPostprocessor=g,f([(0,b.inject)(w.TYPES.ILogger),h("design:type",Object)],g.prototype,"logger",void 0),f([(0,b.inject)(w.TYPES.DOMHelper),h("design:type",m.DOMHelper)],g.prototype,"domHelper",void 0),ly.IdPostprocessor=g=f([(0,b.injectable)()],g),ly}var z4={},lgt;function fUt(){if(lgt)return z4;lgt=1;var f=z4&&z4.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(z4,"__esModule",{value:!0}),z4.CssClassPostprocessor=void 0;const h=LM(),b=mh(),w=Zt();let m=class{decorate(g,E){if(E.cssClasses)for(const T of E.cssClasses)(0,b.setClass)(g,T,!0);const C=(0,h.getSubType)(E);return C&&C!==E.type&&(0,b.setClass)(g,C,!0),g}postUpdate(){}};return z4.CssClassPostprocessor=m,z4.CssClassPostprocessor=m=f([(0,w.injectable)()],m),z4}var fgt;function nwt(){if(fgt)return eX;fgt=1,Object.defineProperty(eX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=fJ(),w=Bye(),m=Rye(),P=lJ(),g=Upt(),E=Gpt(),C=ES(),T=eN(),M=ewt(),_=Zpt(),I=Pp(),O=H3(),j=twt(),k=iN(),x=Qpt(),R=tN(),H=lUt(),F=kb(),$=fUt(),W=xye(),re=hJ(),ae=zpt(),ce=new f.ContainerModule((J,te,fe)=>{J(h.TYPES.ILogger).to(w.NullLogger).inSingletonScope(),J(h.TYPES.LogLevel).toConstantValue(w.LogLevel.warn),J(h.TYPES.SModelRegistry).to(C.SModelRegistry).inSingletonScope(),J(P.ActionHandlerRegistry).toSelf().inSingletonScope(),J(h.TYPES.ActionHandlerRegistryProvider).toProvider(me=>()=>new Promise(ke=>{ke(me.container.get(P.ActionHandlerRegistry))})),J(h.TYPES.ViewRegistry).to(k.ViewRegistry).inSingletonScope(),J(h.TYPES.IModelFactory).to(C.SModelFactory).inSingletonScope(),J(h.TYPES.IActionDispatcher).to(m.ActionDispatcher).inSingletonScope(),J(h.TYPES.IActionDispatcherProvider).toProvider(me=>()=>new Promise(ke=>{ke(me.container.get(h.TYPES.IActionDispatcher))})),J(h.TYPES.IDiagramLocker).to(ae.DefaultDiagramLocker).inSingletonScope(),J(F.CommandActionHandlerInitializer).toSelf().inSingletonScope(),J(h.TYPES.IActionHandlerInitializer).toService(F.CommandActionHandlerInitializer),J(h.TYPES.ICommandStack).to(g.CommandStack).inSingletonScope(),J(h.TYPES.ICommandStackProvider).toProvider(me=>()=>new Promise(ke=>{ke(me.container.get(h.TYPES.ICommandStack))})),J(h.TYPES.CommandStackOptions).toConstantValue((0,E.defaultCommandStackOptions)()),J(M.ModelViewer).toSelf().inSingletonScope(),J(M.HiddenModelViewer).toSelf().inSingletonScope(),J(M.PopupModelViewer).toSelf().inSingletonScope(),J(h.TYPES.ModelViewer).toDynamicValue(me=>{const ke=me.container.createChild();return ke.bind(h.TYPES.IViewer).toService(M.ModelViewer),ke.bind(x.ViewerCache).toSelf(),ke.get(x.ViewerCache)}).inSingletonScope(),J(h.TYPES.PopupModelViewer).toDynamicValue(me=>{const ke=me.container.createChild();return ke.bind(h.TYPES.IViewer).toService(M.PopupModelViewer),ke.bind(x.ViewerCache).toSelf(),ke.get(x.ViewerCache)}).inSingletonScope(),J(h.TYPES.HiddenModelViewer).toService(M.HiddenModelViewer),J(h.TYPES.IViewerProvider).toDynamicValue(me=>({get modelViewer(){return me.container.get(h.TYPES.ModelViewer)},get hiddenModelViewer(){return me.container.get(h.TYPES.HiddenModelViewer)},get popupModelViewer(){return me.container.get(h.TYPES.PopupModelViewer)}})),J(h.TYPES.ViewerOptions).toConstantValue((0,_.defaultViewerOptions)()),J(h.TYPES.PatcherProvider).to(M.PatcherProvider).inSingletonScope(),J(h.TYPES.DOMHelper).to(R.DOMHelper).inSingletonScope(),J(h.TYPES.ModelRendererFactory).toFactory(me=>(ke,tt,De={})=>{const ct=me.container.get(h.TYPES.ViewRegistry);return new M.ModelRenderer(ct,ke,tt,De)}),J(H.IdPostprocessor).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(H.IdPostprocessor),J(h.TYPES.HiddenVNodePostprocessor).toService(H.IdPostprocessor),J($.CssClassPostprocessor).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService($.CssClassPostprocessor),J(h.TYPES.HiddenVNodePostprocessor).toService($.CssClassPostprocessor),J(I.MouseTool).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(I.MouseTool),J(O.KeyTool).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(O.KeyTool),J(j.FocusFixPostprocessor).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(j.FocusFixPostprocessor),J(h.TYPES.PopupVNodePostprocessor).toService(H.IdPostprocessor),J(I.PopupMouseTool).toSelf().inSingletonScope(),J(h.TYPES.PopupVNodePostprocessor).toService(I.PopupMouseTool),J(h.TYPES.AnimationFrameSyncer).to(T.AnimationFrameSyncer).inSingletonScope();const ve={bind:J,isBound:fe};(0,F.configureCommand)(ve,b.InitializeCanvasBoundsCommand),J(b.CanvasBoundsInitializer).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(b.CanvasBoundsInitializer),(0,F.configureCommand)(ve,W.SetModelCommand),J(h.TYPES.UIExtensionRegistry).to(re.UIExtensionRegistry).inSingletonScope(),(0,F.configureCommand)(ve,re.SetUIExtensionVisibilityCommand),J(I.MousePositionTracker).toSelf().inSingletonScope(),J(h.TYPES.MouseListener).toService(I.MousePositionTracker)});return eX.default=ce,eX}var Gd={},rve={},hgt;function Xs(){return hgt||(hgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.SShapeElementImpl=f.findChildrenAtPosition=f.getAbsoluteClientBounds=f.getAbsoluteBounds=f.isAlignable=f.isSizeable=f.isLayoutableChild=f.isLayoutContainer=f.isBoundsAware=f.alignFeature=f.layoutableChildFeature=f.layoutContainerFeature=f.boundsFeature=void 0;const h=Ac(),b=Oc(),w=Qh(),m=My();f.boundsFeature=Symbol("boundsFeature"),f.layoutContainerFeature=Symbol("layoutContainerFeature"),f.layoutableChildFeature=Symbol("layoutableChildFeature"),f.alignFeature=Symbol("alignFeature");function P(k){return"bounds"in k}f.isBoundsAware=P;function g(k){return P(k)&&k.hasFeature(f.layoutContainerFeature)&&"layout"in k}f.isLayoutContainer=g;function E(k){return P(k)&&k.hasFeature(f.layoutableChildFeature)}f.isLayoutableChild=E;function C(k){return k.hasFeature(f.boundsFeature)&&P(k)}f.isSizeable=C;function T(k){return k.hasFeature(f.alignFeature)&&"alignment"in k}f.isAlignable=T;function M(k){const x=(0,w.findParentByFeature)(k,P);if(x!==void 0){let R=x.bounds,H=x;for(;H instanceof b.SChildElementImpl;){const F=H.parent;R=F.localToParent(R),H=F}return R}else if(k instanceof b.SModelRootImpl){const R=k.canvasBounds;return{x:0,y:0,width:R.width,height:R.height}}else return h.Bounds.EMPTY}f.getAbsoluteBounds=M;function _(k,x,R){let H=0,F=0,$=0,W=0;const re=x.createUniqueDOMElementId(k),ae=document.getElementById(re);if(ae){const J=ae.getBoundingClientRect(),te=(0,m.getWindowScroll)();H=J.left+te.x,F=J.top+te.y,$=J.width,W=J.height}let ce=document.getElementById(R.baseDiv);if(ce)for(;ce.offsetParent instanceof HTMLElement&&(ce=ce.offsetParent);)H-=ce.offsetLeft,F-=ce.offsetTop;return{x:H,y:F,width:$,height:W}}f.getAbsoluteClientBounds=_;function I(k,x){const R=[];return O(k,x,R),R}f.findChildrenAtPosition=I;function O(k,x,R){k.children.forEach(H=>{if(P(H)&&h.Bounds.includes(H.bounds,x)&&R.push(H),H instanceof b.SParentElementImpl){const F=H.parentToLocal(x);O(H,F,R)}})}class j extends b.SChildElementImpl{constructor(){super(...arguments),this.position=h.Point.ORIGIN,this.size=h.Dimension.EMPTY}get bounds(){return{x:this.position.x,y:this.position.y,width:this.size.width,height:this.size.height}}set bounds(x){this.position={x:x.x,y:x.y},this.size={width:x.width,height:x.height}}localToParent(x){const R={x:x.x+this.position.x,y:x.y+this.position.y,width:-1,height:-1};return(0,h.isBounds)(x)&&(R.width=x.width,R.height=x.height),R}parentToLocal(x){const R={x:x.x-this.position.x,y:x.y-this.position.y,width:-1,height:-1};return(0,h.isBounds)(x)&&(R.width=x.width,R.height=x.height),R}}f.SShapeElementImpl=j})(rve)),rve}var dgt;function $ye(){if(dgt)return Gd;dgt=1;var f=Gd&&Gd.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Gd&&Gd.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=Gd&&Gd.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(Gd,"__esModule",{value:!0}),Gd.RequestBoundsCommand=Gd.SetBoundsCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=Xs();let C=class extends P.SystemCommand{constructor(_){super(),this.action=_,this.bounds=[]}execute(_){return this.action.bounds.forEach(I=>{const O=_.root.index.getById(I.elementId);O&&(0,E.isBoundsAware)(O)&&this.bounds.push({element:O,oldBounds:O.bounds,newPosition:I.newPosition,newSize:I.newSize})}),this.redo(_)}undo(_){return this.bounds.forEach(I=>I.element.bounds=I.oldBounds),_.root}redo(_){return this.bounds.forEach(I=>{I.newPosition?I.element.bounds=Object.assign(Object.assign({},I.newPosition),I.newSize):I.element.bounds=Object.assign({x:I.element.bounds.x,y:I.element.bounds.y},I.newSize)}),_.root}};Gd.SetBoundsCommand=C,C.KIND=m.SetBoundsAction.KIND,Gd.SetBoundsCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],C);let T=class extends P.HiddenCommand{constructor(_){super(),this.action=_}execute(_){return{model:_.modelFactory.createRoot(this.action.newRoot),modelChanged:!0,cause:this.action}}get blockUntil(){return _=>_.kind===m.ComputedBoundsAction.KIND}};return Gd.RequestBoundsCommand=T,T.KIND=m.RequestBoundsAction.KIND,Gd.RequestBoundsCommand=T=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],T),Gd}var MM={},rf={},ggt;function Kye(){if(ggt)return rf;ggt=1;var f=rf&&rf.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=rf&&rf.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)},b=rf&&rf.__param||function(O,j){return function(k,x){j(k,x,O)}};Object.defineProperty(rf,"__esModule",{value:!0}),rf.configureLayout=rf.StatefulLayouter=rf.Layouter=rf.LayoutRegistry=void 0;const w=Zt(),m=Ac(),P=Qn(),g=q3(),E=Xs(),C=EA();let T=class extends g.InstanceRegistry{constructor(j=[]){super(),j.forEach(k=>{this.hasKey(k.layoutKind)?this.logger.warn("Layout kind is already defined: ",k.layoutKind):this.register(k.layoutKind,k.factory())})}};rf.LayoutRegistry=T,f([(0,w.inject)(P.TYPES.ILogger),h("design:type",Object)],T.prototype,"logger",void 0),rf.LayoutRegistry=T=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.LayoutRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],T);let M=class{layout(j){new _(j,this.layoutRegistry,this.logger).layout()}};rf.Layouter=M,f([(0,w.inject)(P.TYPES.LayoutRegistry),h("design:type",T)],M.prototype,"layoutRegistry",void 0),f([(0,w.inject)(P.TYPES.ILogger),h("design:type",Object)],M.prototype,"logger",void 0),rf.Layouter=M=f([(0,w.injectable)()],M);class _{constructor(j,k,x){this.element2boundsData=j,this.layoutRegistry=k,this.log=x,this.toBeLayouted=[],j.forEach((R,H)=>{(0,E.isLayoutContainer)(H)&&this.toBeLayouted.push(H)})}getBoundsData(j){let k=this.element2boundsData.get(j),x=j.bounds;return(0,E.isLayoutContainer)(j)&&this.toBeLayouted.indexOf(j)>=0&&(x=this.doLayout(j)),k||(k={bounds:x,boundsChanged:!1,alignmentChanged:!1},this.element2boundsData.set(j,k)),k}layout(){for(;this.toBeLayouted.length>0;){const j=this.toBeLayouted[0];this.doLayout(j)}}doLayout(j){const k=this.toBeLayouted.indexOf(j);k>=0&&this.toBeLayouted.splice(k,1);const x=this.layoutRegistry.get(j.layout);x&&x.layout(j,this);const R=this.element2boundsData.get(j);return R!==void 0&&R.bounds!==void 0?R.bounds:(this.log.error(j,"Layout failed"),m.Bounds.EMPTY)}}rf.StatefulLayouter=_;function I(O,j,k){if(typeof k=="function"){if(!(0,C.isInjectable)(k))throw new Error(`Layouts be @injectable: ${k.name}`);O.isBound(k)||O.bind(k).toSelf()}O.bind(P.TYPES.LayoutRegistration).toDynamicValue(x=>({layoutKind:j,factory:()=>x.container.get(k)}))}return rf.configureLayout=I,rf}var bgt;function iwt(){return bgt||(bgt=1,(function(f){var h=MM&&MM.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},b=MM&&MM.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(f,"__esModule",{value:!0}),f.ATTR_BBOX_ELEMENT=f.HiddenBoundsUpdater=f.BoundsData=void 0;const w=Zt(),m=jc(),P=Ac(),g=My(),E=Oc(),C=Qn(),T=Kye(),M=Xs();class _{}f.BoundsData=_;let I=class{constructor(){this.element2boundsData=new Map}decorate(j,k){return((0,M.isSizeable)(k)||(0,M.isLayoutContainer)(k))&&this.element2boundsData.set(k,{vnode:j,bounds:k.bounds,boundsChanged:!1,alignmentChanged:!1}),k instanceof E.SModelRootImpl&&(this.root=k),j}postUpdate(j){if(j===void 0||j.kind!==m.RequestBoundsAction.KIND)return;const k=j;this.getBoundsFromDOM(),this.layouter.layout(this.element2boundsData);const x=[],R=[];this.element2boundsData.forEach((F,$)=>{if(F.boundsChanged&&F.bounds!==void 0){const W={elementId:$.id,newSize:{width:F.bounds.width,height:F.bounds.height}};$ instanceof E.SChildElementImpl&&(0,M.isLayoutContainer)($.parent)&&(W.newPosition={x:F.bounds.x,y:F.bounds.y}),x.push(W)}F.alignmentChanged&&F.alignment!==void 0&&R.push({elementId:$.id,newAlignment:F.alignment})});const H=this.root!==void 0?this.root.revision:void 0;this.actionDispatcher.dispatch(m.ComputedBoundsAction.create(x,{revision:H,alignments:R,requestId:k.requestId})),this.element2boundsData.clear()}getBoundsFromDOM(){this.element2boundsData.forEach((j,k)=>{if(j.bounds&&(0,M.isSizeable)(k)){const x=j.vnode;if(x&&x.elm){const R=this.getBounds(x.elm,k);(0,M.isAlignable)(k)&&!((0,P.almostEquals)(R.x,0)&&(0,P.almostEquals)(R.y,0))&&(j.alignment={x:-R.x,y:-R.y},j.alignmentChanged=!0);const H={x:k.bounds.x,y:k.bounds.y,width:R.width,height:R.height};(0,P.almostEquals)(H.x,k.bounds.x)&&(0,P.almostEquals)(H.y,k.bounds.y)&&(0,P.almostEquals)(H.width,k.bounds.width)&&(0,P.almostEquals)(H.height,k.bounds.height)||(j.bounds=H,j.boundsChanged=!0)}}})}getBounds(j,k){if(!(0,g.isSVGGraphicsElement)(j))return this.logger.error(this,"Not an SVG element:",j),P.Bounds.EMPTY;if(j.tagName==="g"){for(const R of Array.from(j.children))if(R.getAttribute(f.ATTR_BBOX_ELEMENT)!==null)return this.getBounds(R,k)}const x=j.getBBox();return{x:x.x,y:x.y,width:x.width,height:x.height}}};f.HiddenBoundsUpdater=I,h([(0,w.inject)(C.TYPES.ILogger),b("design:type",Object)],I.prototype,"logger",void 0),h([(0,w.inject)(C.TYPES.IActionDispatcher),b("design:type",Object)],I.prototype,"actionDispatcher",void 0),h([(0,w.inject)(C.TYPES.Layouter),b("design:type",T.Layouter)],I.prototype,"layouter",void 0),f.HiddenBoundsUpdater=I=h([(0,w.injectable)()],I),f.ATTR_BBOX_ELEMENT="bboxElement"})(MM)),MM}var V4={},G4={},pgt;function qye(){if(pgt)return G4;pgt=1;var f=G4&&G4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(G4,"__esModule",{value:!0}),G4.AbstractLayout=void 0;const h=Ac(),b=Oc(),w=Xs(),m=Zt();let P=class{layout(E,C){const T=C.getBoundsData(E),M=this.getLayoutOptions(E),_=this.getChildrenSize(E,M,C),I=M.paddingFactor*(M.resizeContainer?Math.max(_.width,M.minWidth):Math.max(0,this.getFixedContainerBounds(E,M,C).width)-M.paddingLeft-M.paddingRight),O=M.paddingFactor*(M.resizeContainer?Math.max(_.height,M.minHeight):Math.max(0,this.getFixedContainerBounds(E,M,C).height)-M.paddingTop-M.paddingBottom);if(I>0&&O>0){const j=this.layoutChildren(E,C,M,I,O);T.bounds=this.getFinalContainerBounds(E,j,M,I,O),T.boundsChanged=!0}}getFinalContainerBounds(E,C,T,M,_){return{x:E.bounds.x,y:E.bounds.y,width:Math.max(T.minWidth,M+T.paddingLeft+T.paddingRight),height:Math.max(T.minHeight,_+T.paddingTop+T.paddingBottom)}}getFixedContainerBounds(E,C,T){let M=E;for(;;){if((0,w.isBoundsAware)(M)){const _=M.bounds;if((0,w.isLayoutContainer)(M)&&C.resizeContainer&&T.log.error(M,"Resizable container found while detecting fixed bounds"),h.Dimension.isValid(_))return _}if(M instanceof b.SChildElementImpl)M=M.parent;else return T.log.error(M,"Cannot detect fixed bounds"),h.Bounds.EMPTY}}layoutChildren(E,C,T,M,_){let I={x:T.paddingLeft+.5*(M-M/T.paddingFactor),y:T.paddingTop+.5*(_-_/T.paddingFactor)};return E.children.forEach(O=>{if((0,w.isLayoutableChild)(O)){const j=C.getBoundsData(O),k=j.bounds,x=this.getChildLayoutOptions(O,T);k!==void 0&&h.Dimension.isValid(k)&&(I=this.layoutChild(O,j,k,x,T,I,M,_))}}),I}getDx(E,C,T){switch(E){case"left":return 0;case"center":return .5*(T-C.width);case"right":return T-C.width}}getDy(E,C,T){switch(E){case"top":return 0;case"center":return .5*(T-C.height);case"bottom":return T-C.height}}getChildLayoutOptions(E,C){const T=E.layoutOptions;return T===void 0?C:this.spread(C,T)}getLayoutOptions(E){let C=E;const T=[];for(;C!==void 0;){const M=C.layoutOptions;if(M!==void 0&&T.push(M),C instanceof b.SChildElementImpl)C=C.parent;else break}return T.reverse().reduce((M,_)=>this.spread(M,_),this.getDefaultLayoutOptions())}};return G4.AbstractLayout=P,G4.AbstractLayout=P=f([(0,m.injectable)()],P),G4}var wgt;function rwt(){if(wgt)return V4;wgt=1;var f=V4&&V4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(V4,"__esModule",{value:!0}),V4.VBoxLayouter=void 0;const h=Zt(),b=Ac(),w=qye(),m=Xs();let P=class extends w.AbstractLayout{getChildrenSize(E,C,T){let M=-1,_=0,I=!0;return E.children.forEach(O=>{if((0,m.isLayoutableChild)(O)){const j=T.getBoundsData(O).bounds;j!==void 0&&b.Dimension.isValid(j)&&(_+=j.height,I?I=!1:_+=C.vGap,M=Math.max(M,j.width))}}),{width:M,height:_}}layoutChild(E,C,T,M,_,I,O,j){const k=this.getDx(M.hAlign,T,O);return C.bounds={x:_.paddingLeft+E.bounds.x-T.x+k,y:I.y+E.bounds.y-T.y,width:T.width,height:T.height},C.boundsChanged=!0,{x:I.x,y:I.y+T.height+_.vGap}}getDefaultLayoutOptions(){return{resizeContainer:!0,paddingTop:5,paddingBottom:5,paddingLeft:5,paddingRight:5,paddingFactor:1,vGap:1,hAlign:"center",minWidth:0,minHeight:0}}spread(E,C){return Object.assign(Object.assign({},E),C)}};return V4.VBoxLayouter=P,P.KIND="vbox",V4.VBoxLayouter=P=f([(0,h.injectable)()],P),V4}var U4={},mgt;function owt(){if(mgt)return U4;mgt=1;var f=U4&&U4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(U4,"__esModule",{value:!0}),U4.HBoxLayouter=void 0;const h=Zt(),b=Ac(),w=qye(),m=Xs();let P=class extends w.AbstractLayout{getChildrenSize(E,C,T){let M=0,_=-1,I=!0;return E.children.forEach(O=>{if((0,m.isLayoutableChild)(O)){const j=T.getBoundsData(O).bounds;j!==void 0&&b.Dimension.isValid(j)&&(I?I=!1:M+=C.hGap,M+=j.width,_=Math.max(_,j.height))}}),{width:M,height:_}}layoutChild(E,C,T,M,_,I,O,j){const k=this.getDy(M.vAlign,T,j);return C.bounds={x:I.x+E.bounds.x-T.x,y:_.paddingTop+E.bounds.y-T.y+k,width:T.width,height:T.height},C.boundsChanged=!0,{x:I.x+T.width+_.hGap,y:I.y}}getDefaultLayoutOptions(){return{resizeContainer:!0,paddingTop:5,paddingBottom:5,paddingLeft:5,paddingRight:5,paddingFactor:1,hGap:1,vAlign:"center",minWidth:0,minHeight:0}}spread(E,C){return Object.assign(Object.assign({},E),C)}};return U4.HBoxLayouter=P,P.KIND="hbox",U4.HBoxLayouter=P=f([(0,h.injectable)()],P),U4}var W4={},vgt;function cwt(){if(vgt)return W4;vgt=1;var f=W4&&W4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(W4,"__esModule",{value:!0}),W4.StackLayouter=void 0;const h=Zt(),b=Ac(),w=qye(),m=Xs();let P=class extends w.AbstractLayout{getChildrenSize(E,C,T){let M=-1,_=-1;return E.children.forEach(I=>{if((0,m.isLayoutableChild)(I)){const O=T.getBoundsData(I).bounds;O!==void 0&&b.Dimension.isValid(O)&&(M=Math.max(M,O.width),_=Math.max(_,O.height))}}),{width:M,height:_}}layoutChild(E,C,T,M,_,I,O,j){const k=this.getDx(M.hAlign,T,O),x=this.getDy(M.vAlign,T,j);return C.bounds={x:_.paddingLeft+E.bounds.x-T.x+k,y:_.paddingTop+E.bounds.y-T.y+x,width:T.width,height:T.height},C.boundsChanged=!0,I}getDefaultLayoutOptions(){return{resizeContainer:!0,paddingTop:5,paddingBottom:5,paddingLeft:5,paddingRight:5,paddingFactor:1,hAlign:"center",vAlign:"center",minWidth:0,minHeight:0}}spread(E,C){return Object.assign(Object.assign({},E),C)}};return W4.StackLayouter=P,P.KIND="stack",W4.StackLayouter=P=f([(0,h.injectable)()],P),W4}var Y4={},ygt;function gJ(){if(ygt)return Y4;ygt=1;var f=Y4&&Y4.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(Y4,"__esModule",{value:!0}),Y4.ShapeView=void 0;const h=Zt(),b=Ac(),w=Xs();let m=class{isVisible(g,E){if(E.targetKind==="hidden"||!b.Dimension.isValid(g.bounds))return!0;const C=(0,w.getAbsoluteBounds)(g),T=g.root.canvasBounds;return C.x<=T.width&&C.x+C.width>=0&&C.y<=T.height&&C.y+C.height>=0}};return Y4.ShapeView=m,Y4.ShapeView=m=f([(0,h.injectable)()],m),Y4}var cg={},_gt;function bJ(){if(_gt)return cg;_gt=1;var f=cg&&cg.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=cg&&cg.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=cg&&cg.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(cg,"__esModule",{value:!0}),cg.configureButtonHandler=cg.ButtonHandlerRegistry=void 0;const w=Zt(),m=q3(),P=Qn(),g=EA();let E=class extends m.InstanceRegistry{constructor(M){super(),M.forEach(_=>this.register(_.TYPE,_.factory()))}};cg.ButtonHandlerRegistry=E,cg.ButtonHandlerRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.IButtonHandlerRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);function C(T,M,_){if(typeof _=="function"){if(!(0,g.isInjectable)(_))throw new Error(`Button handlers should be @injectable: ${_.name}`);T.isBound(_)||T.bind(_).toSelf()}T.bind(P.TYPES.IButtonHandlerRegistration).toDynamicValue(I=>({TYPE:M,factory:()=>I.container.get(_)}))}return cg.configureButtonHandler=C,cg}var yL={},ove={},Egt;function rN(){return Egt||(Egt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isFadeable=f.fadeFeature=void 0,f.fadeFeature=Symbol("fadeFeature");function h(b){return b.hasFeature(f.fadeFeature)&&b.opacity!==void 0}f.isFadeable=h})(ove)),ove}var Sgt;function swt(){if(Sgt)return yL;Sgt=1,Object.defineProperty(yL,"__esModule",{value:!0}),yL.SButtonImpl=void 0;const f=Xs(),h=rN();class b extends f.SShapeElementImpl{constructor(){super(...arguments),this.enabled=!0}}return yL.SButtonImpl=b,b.DEFAULT_FEATURES=[f.boundsFeature,f.layoutableChildFeature,h.fadeFeature],yL}var Ud={},cve={},Pgt;function uwt(){return Pgt||(Pgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.name=f.isNameable=f.nameFeature=void 0,f.nameFeature=Symbol("nameableFeature");function h(w){return w.hasFeature(f.nameFeature)}f.isNameable=h;function b(w){if(h(w))return w.name}f.name=b})(cve)),cve}var Mgt;function Hye(){if(Mgt)return Ud;Mgt=1;var f=Ud&&Ud.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=Ud&&Ud.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)},b=Ud&&Ud.__param||function(_,I){return function(O,j){I(O,j,_)}};Object.defineProperty(Ud,"__esModule",{value:!0}),Ud.RevealNamedElementActionProvider=Ud.CommandPaletteActionProviderRegistry=void 0;const w=Zt(),m=jc(),P=jye(),g=Qn(),E=_A(),C=uwt();let T=class{constructor(I=[]){this.actionProviders=I}getActions(I,O,j,k){const x=this.actionProviders.map(R=>R.getActions(I,O,j,k));return Promise.all(x).then(R=>R.reduce((H,F)=>F!==void 0?H.concat(F):H))}};Ud.CommandPaletteActionProviderRegistry=T,Ud.CommandPaletteActionProviderRegistry=T=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.ICommandPaletteActionProvider)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],T);let M=class{constructor(I){this.logger=I}getActions(I,O,j,k){return k!==void 0&&k%2===0?Promise.resolve(this.createSelectActions(I)):Promise.resolve([new P.LabeledAction("Select all",[m.SelectAllAction.create()])])}createSelectActions(I){return(0,E.toArray)(I.index.all().filter(j=>(0,C.isNameable)(j))).map(j=>new P.LabeledAction(`Reveal ${(0,C.name)(j)}`,[m.SelectAction.create({selectedElementsIDs:[j.id]}),m.CenterAction.create([j.id])],"eye"))}};return Ud.RevealNamedElementActionProvider=M,Ud.RevealNamedElementActionProvider=M=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.ILogger)),h("design:paramtypes",[Object])],M),Ud}var sg={},sve={},Cgt;function awt(){return Cgt||(Cgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.codiconCSSClasses=f.codiconCSSString=f.ANIMATION_SPIN=f.ACTION_ITEM=void 0,f.ACTION_ITEM="action-item",f.ANIMATION_SPIN="animation-spin";function h(w,m=!1,P=!1,g=[]){return b(w,m,P,g).join(" ")}f.codiconCSSString=h;function b(w,m=!1,P=!1,g=[]){const E=["codicon",`codicon-${w}`];return m&&E.push(f.ACTION_ITEM),P&&E.push(f.ANIMATION_SPIN),g.length>0&&E.push(...g),E}f.codiconCSSClasses=b})(sve)),sve}var CM={},Igt;function z3(){if(Igt)return CM;Igt=1,Object.defineProperty(CM,"__esModule",{value:!0}),CM.getActualCode=CM.matchesKeystroke=void 0;const f=My();function h(m,P,...g){if(b(m)!==P)return!1;if((0,f.isMac)()){if(m.ctrlKey!==g.findIndex(E=>E==="ctrl")>=0||m.metaKey!==g.findIndex(E=>E==="meta"||E==="ctrlCmd")>=0)return!1}else if(m.ctrlKey!==g.findIndex(E=>E==="ctrl"||E==="ctrlCmd")>=0||m.metaKey!==g.findIndex(E=>E==="meta")>=0)return!1;return!(m.altKey!==g.findIndex(E=>E==="alt")>=0||m.shiftKey!==g.findIndex(E=>E==="shift")>=0)}CM.matchesKeystroke=h;function b(m){if(m.keyCode){const P=w[m.keyCode];if(P!==void 0)return P}return m.code}CM.getActualCode=b;const w=new Array(256);return(()=>{function m(P,g){w[g]===void 0&&(w[g]=P)}m("Pause",3),m("Backspace",8),m("Tab",9),m("Enter",13),m("ShiftLeft",16),m("ShiftRight",16),m("ControlLeft",17),m("ControlRight",17),m("AltLeft",18),m("AltRight",18),m("CapsLock",20),m("Escape",27),m("Space",32),m("PageUp",33),m("PageDown",34),m("End",35),m("Home",36),m("ArrowLeft",37),m("ArrowUp",38),m("ArrowRight",39),m("ArrowDown",40),m("Insert",45),m("Delete",46),m("Digit1",49),m("Digit2",50),m("Digit3",51),m("Digit4",52),m("Digit5",53),m("Digit6",54),m("Digit7",55),m("Digit8",56),m("Digit9",57),m("Digit0",48),m("KeyA",65),m("KeyB",66),m("KeyC",67),m("KeyD",68),m("KeyE",69),m("KeyF",70),m("KeyG",71),m("KeyH",72),m("KeyI",73),m("KeyJ",74),m("KeyK",75),m("KeyL",76),m("KeyM",77),m("KeyN",78),m("KeyO",79),m("KeyP",80),m("KeyQ",81),m("KeyR",82),m("KeyS",83),m("KeyT",84),m("KeyU",85),m("KeyV",86),m("KeyW",87),m("KeyX",88),m("KeyY",89),m("KeyZ",90),m("OSLeft",91),m("MetaLeft",91),m("OSRight",92),m("MetaRight",92),m("ContextMenu",93),m("Numpad0",96),m("Numpad1",97),m("Numpad2",98),m("Numpad3",99),m("Numpad4",100),m("Numpad5",101),m("Numpad6",102),m("Numpad7",103),m("Numpad8",104),m("Numpad9",105),m("NumpadMultiply",106),m("NumpadAdd",107),m("NumpadSeparator",108),m("NumpadSubtract",109),m("NumpadDecimal",110),m("NumpadDivide",111),m("F1",112),m("F2",113),m("F3",114),m("F4",115),m("F5",116),m("F6",117),m("F7",118),m("F8",119),m("F9",120),m("F10",121),m("F11",122),m("F12",123),m("F13",124),m("F14",125),m("F15",126),m("F16",127),m("F17",128),m("F18",129),m("F19",130),m("F20",131),m("F21",132),m("F22",133),m("F23",134),m("F24",135),m("NumLock",144),m("ScrollLock",145),m("Semicolon",186),m("Equal",187),m("Comma",188),m("Minus",189),m("Period",190),m("Slash",191),m("Backquote",192),m("IntlRo",193),m("BracketLeft",219),m("Backslash",220),m("BracketRight",221),m("Quote",222),m("IntlYen",255)})(),CM}var uve={},Tgt;function Rb(){return Tgt||(Tgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isSelected=f.isSelectable=f.selectFeature=void 0,f.selectFeature=Symbol("selectFeature");function h(w){return w.hasFeature(f.selectFeature)}f.isSelectable=h;function b(w){return w!==void 0&&h(w)&&w.selected}f.isSelected=b})(uve)),uve}var OX={exports:{}},hUt=OX.exports,jgt;function dUt(){return jgt||(jgt=1,(function(f,h){(function(b,w){f.exports=w()})(hUt,(function(){function b(w){var m=document,P=w.container||m.createElement("div"),g=w.preventSubmit||0;P.id=P.id||"autocomplete-"+W();var E=P.style,C=w.debounceWaitMs||0,T=w.disableAutoSelect||!1,M=P.parentElement,_=[],I="",O=2,j=w.showOnFocus,k,x=0,R,H=!1,F=!1;if(w.minLength!==void 0&&(O=w.minLength),!w.input)throw new Error("input undefined");var $=w.input;P.className=[P.className,"autocomplete",w.className||""].join(" ").trim(),P.setAttribute("role","listbox"),$.setAttribute("role","combobox"),$.setAttribute("aria-expanded","false"),$.setAttribute("aria-autocomplete","list"),$.setAttribute("aria-controls",P.id),$.setAttribute("aria-owns",P.id),$.setAttribute("aria-activedescendant",""),$.setAttribute("aria-haspopup","listbox"),E.position="absolute";function W(){return Date.now().toString(36)+Math.random().toString(36).substring(2)}function re(){var Si=P.parentNode;Si&&Si.removeChild(P)}function ae(){R&&window.clearTimeout(R)}function ce(){P.parentNode||(M||m.body).appendChild(P)}function J(){return!!P.parentNode}function te(){x++,_=[],I="",k=void 0,$.setAttribute("aria-activedescendant",""),$.setAttribute("aria-expanded","false"),re()}function fe(){if(!J())return;$.setAttribute("aria-expanded","true"),E.height="auto",E.width=$.offsetWidth+"px";var Si=0,_o;function Au(){var cf=m.documentElement,Rs=cf.clientTop||m.body.clientTop||0,xs=cf.clientLeft||m.body.clientLeft||0,xb=window.pageYOffset||cf.scrollTop,Zh=window.pageXOffset||cf.scrollLeft;_o=$.getBoundingClientRect();var Ia=_o.top+$.offsetHeight+xb-Rs,mm=_o.left+Zh-xs;E.top=Ia+"px",E.left=mm+"px",Si=window.innerHeight-(_o.top+$.offsetHeight),Si<0&&(Si=0),E.top=Ia+"px",E.bottom="",E.left=mm+"px",E.maxHeight=Si+"px"}Au(),Au(),w.customize&&_o&&w.customize($,_o,P,Si)}function ve(){P.textContent="",$.setAttribute("aria-activedescendant","");var Si=function(xs,xb,Zh){var Ia=m.createElement("div");return Ia.textContent=xs.label||"",Ia};w.render&&(Si=w.render);var _o=function(xs,xb){var Zh=m.createElement("div");return Zh.textContent=xs,Zh};w.renderGroup&&(_o=w.renderGroup);var Au=m.createDocumentFragment(),cf=W();if(_.forEach(function(xs,xb){if(xs.group&&xs.group!==cf){cf=xs.group;var Zh=_o(xs.group,I);Zh&&(Zh.className+=" group",Au.appendChild(Zh))}var Ia=Si(xs,I,xb);Ia&&(Ia.id=P.id+"_"+xb,Ia.setAttribute("role","option"),Ia.addEventListener("click",function(mm){F=!0;try{w.onSelect(xs,$)}finally{F=!1}te(),mm.preventDefault(),mm.stopPropagation()}),xs===k&&(Ia.className+=" selected",Ia.setAttribute("aria-selected","true"),$.setAttribute("aria-activedescendant",Ia.id)),Au.appendChild(Ia))}),P.appendChild(Au),_.length<1)if(w.emptyMsg){var Rs=m.createElement("div");Rs.id=P.id+"_"+W(),Rs.className="empty",Rs.textContent=w.emptyMsg,P.appendChild(Rs),$.setAttribute("aria-activedescendant",Rs.id)}else{te();return}ce(),fe(),ct()}function me(){J()&&ve()}function ke(){me()}function tt(Si){Si.target!==P?me():Si.preventDefault()}function De(){F||gt(0)}function ct(){var Si=P.getElementsByClassName("selected");if(Si.length>0){var _o=Si[0],Au=_o.previousElementSibling;if(Au&&Au.className.indexOf("group")!==-1&&!Au.previousElementSibling&&(_o=Au),_o.offsetTopRs&&(P.scrollTop+=cf-Rs)}}}function Z(){var Si=_.indexOf(k);k=Si===-1?void 0:_[(Si+_.length-1)%_.length],ii(Si)}function Nt(){var Si=_.indexOf(k);k=_.length<1?void 0:Si===-1?_[0]:_[(Si+1)%_.length],ii(Si)}function ii(Si){_.length>0&&(jo(Si),kr(_.indexOf(k)),ct())}function kr(Si){var _o=m.getElementById(P.id+"_"+Si);_o&&(_o.classList.add("selected"),_o.setAttribute("aria-selected","true"),$.setAttribute("aria-activedescendant",_o.id))}function jo(Si){var _o=m.getElementById(P.id+"_"+Si);_o&&(_o.classList.remove("selected"),_o.removeAttribute("aria-selected"),$.removeAttribute("aria-activedescendant"))}function Gn(Si,_o){var Au=J();if(_o==="Escape")te();else{if(!Au||_.length<1)return;_o==="ArrowUp"?Z():Nt()}Si.preventDefault(),Au&&Si.stopPropagation()}function pc(Si){if(k){g===2&&Si.preventDefault(),F=!0;try{w.onSelect(k,$)}finally{F=!1}te()}g===1&&Si.preventDefault()}function ls(Si){var _o=Si.key;switch(_o){case"ArrowUp":case"ArrowDown":case"Escape":Gn(Si,_o);break;case"Enter":pc(Si);break}}function Lr(){j&>(1)}function gt(Si){$.value.length>=O||Si===1?(ae(),R=window.setTimeout(function(){return Xn($.value,Si,$.selectionStart||0)},Si===0||Si===2?C:0)):te()}function Xn(Si,_o,Au){if(!H){var cf=++x;w.fetch(Si,function(Rs){x===cf&&Rs&&(_=Rs,I=Si,k=_.length<1||T?void 0:_[0],ve())},_o,Au)}}function jn(Si){if(w.keyup){w.keyup({event:Si,fetch:function(){return gt(0)}});return}!J()&&Si.key==="ArrowDown"&>(0)}function ri(Si){w.click&&w.click({event:Si,fetch:function(){return gt(2)}})}function Er(){setTimeout(function(){m.activeElement!==$&&te()},200)}function Ml(){Xn($.value,3,$.selectionStart||0)}P.addEventListener("mousedown",function(Si){Si.stopPropagation(),Si.preventDefault()}),P.addEventListener("focus",function(){return $.focus()}),re();function yg(){$.removeEventListener("focus",Lr),$.removeEventListener("keyup",jn),$.removeEventListener("click",ri),$.removeEventListener("keydown",ls),$.removeEventListener("input",De),$.removeEventListener("blur",Er),window.removeEventListener("resize",ke),m.removeEventListener("scroll",tt,!0),$.removeAttribute("role"),$.removeAttribute("aria-expanded"),$.removeAttribute("aria-autocomplete"),$.removeAttribute("aria-controls"),$.removeAttribute("aria-activedescendant"),$.removeAttribute("aria-owns"),$.removeAttribute("aria-haspopup"),ae(),te(),H=!0}return $.addEventListener("keyup",jn),$.addEventListener("click",ri),$.addEventListener("keydown",ls),$.addEventListener("input",De),$.addEventListener("blur",Er),$.addEventListener("focus",Lr),window.addEventListener("resize",ke),m.addEventListener("scroll",tt,!0),{destroy:yg,fetch:Ml}}return b}))})(OX)),OX.exports}var Agt;function lwt(){if(Agt)return sg;Agt=1;var f=sg&&sg.__decorate||function(ce,J,te,fe){var ve=arguments.length,me=ve<3?J:fe===null?fe=Object.getOwnPropertyDescriptor(J,te):fe,ke;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")me=Reflect.decorate(ce,J,te,fe);else for(var tt=ce.length-1;tt>=0;tt--)(ke=ce[tt])&&(me=(ve<3?ke(me):ve>3?ke(J,te,me):ke(J,te))||me);return ve>3&&me&&Object.defineProperty(J,te,me),me},h=sg&&sg.__metadata||function(ce,J){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ce,J)},b=sg&&sg.__importDefault||function(ce){return ce&&ce.__esModule?ce:{default:ce}},w;Object.defineProperty(sg,"__esModule",{value:!0}),sg.CommandPaletteKeyListener=sg.CommandPalette=void 0;const m=Zt(),P=jc(),g=jye(),E=Qn(),C=Lye(),T=hJ(),M=tN(),_=H3(),I=awt(),O=_A(),j=z3(),k=Xs(),x=Rb(),R=Hye(),H=Pp(),F=b(dUt());let $=w=class extends C.AbstractUIExtension{constructor(){super(...arguments),this.loadingIndicatorClasses=(0,I.codiconCSSClasses)("loading",!1,!0,["loading"]),this.xOffset=20,this.yOffset=20,this.defaultWidth=400,this.debounceWaitMs=100,this.noCommandsMsg="No commands available",this.paletteIndex=0}id(){return w.ID}containerClass(){return"command-palette"}show(J,...te){super.show(J,...te),this.paletteIndex=0,this.contextActions=void 0,this.inputElement.value="",this.autoCompleteResult=(0,F.default)(this.autocompleteSettings(J)),this.inputElement.focus()}initializeContents(J){J.style.position="absolute",this.inputElement=document.createElement("input"),this.inputElement.style.width="100%",this.inputElement.addEventListener("keydown",te=>this.hideIfEscapeEvent(te)),this.inputElement.addEventListener("keydown",te=>this.cylceIfInvokePaletteKey(te)),this.inputElement.onblur=()=>window.setTimeout(()=>this.hide(),200),J.appendChild(this.inputElement)}hideIfEscapeEvent(J){(0,j.matchesKeystroke)(J,"Escape")&&this.hide()}cylceIfInvokePaletteKey(J){w.isInvokePaletteKey(J)&&this.cycle()}cycle(){this.contextActions=void 0,this.paletteIndex++}onBeforeShow(J,te,...fe){let ve=this.xOffset,me=this.yOffset;const ke=(0,O.toArray)(te.index.all().filter(tt=>(0,x.isSelectable)(tt)&&tt.selected));if(ke.length===1){const tt=(0,k.getAbsoluteClientBounds)(ke[0],this.domHelper,this.viewerOptions);ve+=tt.x+tt.width,me+=tt.y}else{const tt=(0,k.getAbsoluteClientBounds)(te,this.domHelper,this.viewerOptions);ve+=tt.x,me+=tt.y}J.style.left=`${ve}px`,J.style.top=`${me}px`,J.style.width=`${this.defaultWidth}px`}autocompleteSettings(J){return{input:this.inputElement,emptyMsg:this.noCommandsMsg,className:"command-palette-suggestions",debounceWaitMs:this.debounceWaitMs,showOnFocus:!0,minLength:-1,fetch:(te,fe)=>this.updateAutoCompleteActions(fe,te,J),onSelect:te=>this.onSelect(te),render:(te,fe)=>this.renderLabeledActionSuggestion(te,fe),customize:(te,fe,ve,me)=>{this.customizeSuggestionContainer(ve,fe,me)}}}onSelect(J){this.executeAction(J),this.hide()}updateAutoCompleteActions(J,te,fe){this.onLoading(),this.contextActions?(J(this.filterActions(te,this.contextActions)),this.onLoaded("success")):this.actionProviderRegistry.getActions(fe,te,this.mousePositionTracker.lastPositionOnDiagram,this.paletteIndex).then(ve=>{this.contextActions=ve,J(this.filterActions(te,ve)),this.onLoaded("success")}).catch(ve=>{this.logger.error(this,"Failed to obtain actions from command palette action providers",ve),this.onLoaded("error")})}onLoading(){this.loadingIndicator&&this.containerElement.contains(this.loadingIndicator)||(this.loadingIndicator=document.createElement("span"),this.loadingIndicator.classList.add(...this.loadingIndicatorClasses),this.containerElement.appendChild(this.loadingIndicator))}onLoaded(J){this.containerElement.contains(this.loadingIndicator)&&this.containerElement.removeChild(this.loadingIndicator)}renderLabeledActionSuggestion(J,te){const fe=document.createElement("div"),ve=re(te).split(" ").join("|"),me=new RegExp(ve,"gi");return J.icon&&this.renderIcon(fe,J.icon),te.length>0?fe.innerHTML+=J.label.replace(me,ke=>""+ke+"").replace(/ /g," "):fe.innerHTML+=J.label.replace(/ /g," "),fe}renderIcon(J,te){J.innerHTML+=``}getFontAwesomeIcon(J){return`fa fa-${J}`}getCodicon(J){return(0,I.codiconCSSString)(J)}filterActions(J,te){return(0,O.toArray)(te.filter(fe=>{const ve=fe.label.toLowerCase();return J.split(" ").every(ke=>ve.indexOf(ke.toLowerCase())!==-1)}))}customizeSuggestionContainer(J,te,fe){J.style.position="fixed",this.containerElement&&this.containerElement.appendChild(J)}hide(){super.hide(),this.autoCompleteResult&&this.autoCompleteResult.destroy()}executeAction(J){this.actionDispatcherProvider().then(te=>te.dispatchAll(W(J))).catch(te=>this.logger.error(this,"No action dispatcher available to execute command palette action",te))}};sg.CommandPalette=$,$.ID="command-palette",$.isInvokePaletteKey=ce=>(0,j.matchesKeystroke)(ce,"Space","ctrl"),f([(0,m.inject)(E.TYPES.IActionDispatcherProvider),h("design:type",Function)],$.prototype,"actionDispatcherProvider",void 0),f([(0,m.inject)(E.TYPES.ICommandPaletteActionProviderRegistry),h("design:type",R.CommandPaletteActionProviderRegistry)],$.prototype,"actionProviderRegistry",void 0),f([(0,m.inject)(E.TYPES.ViewerOptions),h("design:type",Object)],$.prototype,"viewerOptions",void 0),f([(0,m.inject)(E.TYPES.DOMHelper),h("design:type",M.DOMHelper)],$.prototype,"domHelper",void 0),f([(0,m.inject)(H.MousePositionTracker),h("design:type",H.MousePositionTracker)],$.prototype,"mousePositionTracker",void 0),sg.CommandPalette=$=w=f([(0,m.injectable)()],$);function W(ce){return(0,g.isLabeledAction)(ce)?ce.actions:(0,P.isAction)(ce)?[ce]:[]}function re(ce){return ce.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}class ae extends _.KeyListener{keyDown(J,te){if((0,j.matchesKeystroke)(te,"Escape"))return[T.SetUIExtensionVisibilityAction.create({extensionId:$.ID,visible:!1,contextElementsId:[]})];if($.isInvokePaletteKey(te)){const fe=(0,O.toArray)(J.index.all().filter(ve=>(0,x.isSelectable)(ve)&&ve.selected).map(ve=>ve.id));return[T.SetUIExtensionVisibilityAction.create({extensionId:$.ID,visible:!0,contextElementsId:fe})]}return[]}}return sg.CommandPaletteKeyListener=ae,sg}var _L={},Ogt;function gUt(){if(Ogt)return _L;Ogt=1,Object.defineProperty(_L,"__esModule",{value:!0}),_L.toAnchor=void 0;function f(h){return h instanceof HTMLElement?{x:h.offsetLeft,y:h.offsetTop}:h}return _L.toAnchor=f,_L}var Wd={},v3={},Dgt;function oN(){return Dgt||(Dgt=1,(function(f){var h=v3&&v3.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},b=v3&&v3.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)},w=v3&&v3.__param||function(I,O){return function(j,k){O(j,k,I)}};Object.defineProperty(f,"__esModule",{value:!0}),f.DeleteElementCommand=f.ResolvedDelete=f.isDeletable=f.deletableFeature=void 0;const m=Zt(),P=jc(),g=Ca(),E=Oc(),C=Qn();f.deletableFeature=Symbol("deletableFeature");function T(I){return I instanceof E.SChildElementImpl&&I.hasFeature(f.deletableFeature)}f.isDeletable=T;class M{}f.ResolvedDelete=M;let _=class extends g.Command{constructor(O){super(),this.action=O,this.resolvedDeletes=[]}execute(O){const j=O.root.index;for(const k of this.action.elementIds){const x=j.getById(k);x&&T(x)&&(this.resolvedDeletes.push({child:x,parent:x.parent}),x.parent.remove(x))}return O.root}undo(O){for(const j of this.resolvedDeletes)j.parent.add(j.child);return O.root}redo(O){for(const j of this.resolvedDeletes)j.parent.remove(j.child);return O.root}};f.DeleteElementCommand=_,_.KIND=P.DeleteElementAction.KIND,f.DeleteElementCommand=_=h([(0,m.injectable)(),w(0,(0,m.inject)(C.TYPES.Action)),b("design:paramtypes",[Object])],_)})(v3)),v3}var kgt;function zye(){if(kgt)return Wd;kgt=1;var f=Wd&&Wd.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Wd&&Wd.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=Wd&&Wd.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(Wd,"__esModule",{value:!0}),Wd.DeleteContextMenuItemProvider=Wd.ContextMenuProviderRegistry=void 0;const w=Zt(),m=Qn(),P=oN(),g=Rb(),E=Sp();let C=class{constructor(_=[]){this.menuProviders=_}getItems(_,I){const O=this.menuProviders.map(j=>j.getItems(_,I));return Promise.all(O).then(this.flattenAndRestructure)}flattenAndRestructure(_){let I=_.reduce((j,k)=>k!==void 0?j.concat(k):j,[]);const O=I.filter(j=>j.parentId);for(const j of O)if(j.parentId){const k=j.parentId.split(".");let x,R=I;for(const H of k)x=R.find(F=>H===F.id),x&&x.children&&(R=x.children);x&&(x.children?x.children.push(j):x.children=[j],I=I.filter(H=>H!==j))}return I}};Wd.ContextMenuProviderRegistry=C,Wd.ContextMenuProviderRegistry=C=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.IContextMenuItemProvider)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],C);let T=class{getItems(_,I){const O=Array.from(_.index.all().filter(g.isSelected).filter(P.isDeletable));return Promise.resolve([{id:"delete",label:"Delete",sortString:"d",group:"edit",actions:[E.DeleteElementAction.create(O.map(j=>j.id))],isEnabled:()=>O.length>0}])}};return Wd.DeleteContextMenuItemProvider=T,Wd.DeleteContextMenuItemProvider=T=f([(0,w.injectable)()],T),Wd}var pp={},Rgt;function fwt(){if(Rgt)return pp;Rgt=1;var f=pp&&pp.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=pp&&pp.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)},b=pp&&pp.__param||function(_,I){return function(O,j){I(O,j,_)}};Object.defineProperty(pp,"__esModule",{value:!0}),pp.ContextMenuMouseListener=void 0;const w=Zt(),m=jc(),P=Qh(),g=Qn(),E=Pp(),C=Rb(),T=zye();let M=class extends E.MouseListener{constructor(I,O){super(),this.contextMenuService=I,this.menuProvider=O}contextMenu(I,O){return this.showContextMenu(I,O),[]}async showContextMenu(I,O){let j;try{j=await this.contextMenuService()}catch{return}let k=!1;const x=(0,P.findParentByFeature)(I,C.isSelectable);x&&(k=x.selected,x.selected=!0);const R=I.root,H={x:O.x,y:O.y};if(I.id===R.id||(0,C.isSelected)(x)){const F=await this.menuProvider.getItems(R,H),$=()=>{x&&(x.selected=k)};j.show(F,H,$)}else{if((0,C.isSelectable)(I)){const $={selectedElementsIDs:[I.id],deselectedElementsIDs:Array.from(R.index.all().filter(C.isSelected),W=>W.id)};await this.actionDispatcher.dispatch(m.SelectAction.create($))}const F=await this.menuProvider.getItems(R,H);j.show(F,H)}}};return pp.ContextMenuMouseListener=M,f([(0,w.inject)(g.TYPES.IActionDispatcher),h("design:type",Object)],M.prototype,"actionDispatcher",void 0),pp.ContextMenuMouseListener=M=f([b(0,(0,w.inject)(g.TYPES.IContextMenuServiceProvider)),b(1,(0,w.inject)(g.TYPES.IContextMenuProviderRegistry)),h("design:paramtypes",[Function,T.ContextMenuProviderRegistry])],M),pp}var tX={},fy={},gh={},ave={},lve={},fve={},xgt;function PA(){return xgt||(xgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.hasPopupFeature=f.popupFeature=f.isHoverable=f.hoverFeedbackFeature=void 0,f.hoverFeedbackFeature=Symbol("hoverFeedbackFeature");function h(w){return w.hasFeature(f.hoverFeedbackFeature)}f.isHoverable=h,f.popupFeature=Symbol("popupFeature");function b(w){return w.hasFeature(f.popupFeature)}f.hasPopupFeature=b})(fve)),fve}var hve={},Lgt;function SS(){return Lgt||(Lgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isMoveable=f.isLocateable=f.moveFeature=void 0;const h=_S();f.moveFeature=Symbol("moveFeature");function b(m){return(0,h.hasOwnProperty)(m,"position")}f.isLocateable=b;function w(m){return m.hasFeature(f.moveFeature)&&b(m)}f.isMoveable=w})(hve)),hve}var Ngt;function Ma(){return Ngt||(Ngt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.edgeInProgressTargetHandleID=f.edgeInProgressID=f.SDanglingAnchorImpl=f.SRoutingHandleImpl=f.SConnectableElementImpl=f.getRouteBounds=f.getAbsoluteRouteBounds=f.isConnectable=f.connectableFeature=f.SRoutableElementImpl=void 0;const h=Ac(),b=Oc(),w=Xs(),m=oN(),P=Rb(),g=PA(),E=SS();class C extends b.SChildElementImpl{constructor(){super(...arguments),this.routingPoints=[]}get source(){return this.index.getById(this.sourceId)}get target(){return this.index.getById(this.targetId)}get bounds(){return this.routingPoints.reduce((x,R)=>h.Bounds.combine(x,{x:R.x,y:R.y,width:0,height:0}),h.Bounds.EMPTY)}}f.SRoutableElementImpl=C,f.connectableFeature=Symbol("connectableFeature");function T(k){return k.hasFeature(f.connectableFeature)&&k.canConnect}f.isConnectable=T;function M(k,x=k.routingPoints){let R=_(x),H=k;for(;H instanceof b.SChildElementImpl;){const F=H.parent;R=F.localToParent(R),H=F}return R}f.getAbsoluteRouteBounds=M;function _(k){const x={x:NaN,y:NaN,width:0,height:0};for(const R of k)isNaN(x.x)?(x.x=R.x,x.y=R.y):(R.xx.x+x.width&&(x.width=R.x-x.x),R.yx.y+x.height&&(x.height=R.y-x.y));return x}f.getRouteBounds=_;class I extends w.SShapeElementImpl{constructor(){super(...arguments),this.strokeWidth=0}get anchorKind(){}get incomingEdges(){return this.index.all().filter(R=>R instanceof C).filter(R=>R.targetId===this.id)}get outgoingEdges(){return this.index.all().filter(R=>R instanceof C).filter(R=>R.sourceId===this.id)}canConnect(x,R){return!0}}f.SConnectableElementImpl=I;class O extends b.SChildElementImpl{constructor(){super(...arguments),this.editMode=!1,this.hoverFeedback=!1,this.selected=!1}hasFeature(x){return O.DEFAULT_FEATURES.indexOf(x)!==-1}}f.SRoutingHandleImpl=O,O.DEFAULT_FEATURES=[P.selectFeature,E.moveFeature,g.hoverFeedbackFeature];class j extends I{constructor(){super(),this.type="dangling-anchor",this.size={width:0,height:0}}}f.SDanglingAnchorImpl=j,j.DEFAULT_FEATURES=[m.deletableFeature],f.edgeInProgressID="edge-in-progress",f.edgeInProgressTargetHandleID=f.edgeInProgressID+"-target-anchor"})(lve)),lve}var Fgt;function cN(){return Fgt||(Fgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.DEFAULT_EDGE_PLACEMENT=f.EdgePlacement=f.checkEdgePlacement=f.isEdgeLayoutable=f.edgeLayoutFeature=void 0;const h=Oc(),b=Xs(),w=Ma();f.edgeLayoutFeature=Symbol("edgeLayout");function m(E){return E instanceof h.SChildElementImpl&&E.parent instanceof w.SRoutableElementImpl&&(0,b.isBoundsAware)(E)&&E.hasFeature(f.edgeLayoutFeature)}f.isEdgeLayoutable=m;function P(E){return"edgePlacement"in E}f.checkEdgePlacement=P;class g extends Object{}f.EdgePlacement=g,f.DEFAULT_EDGE_PLACEMENT={rotate:!0,side:"top",position:.5,offset:7}})(ave)),ave}var dve={},Bgt;function sN(){return Bgt||(Bgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isWithEditableLabel=f.withEditLabelFeature=f.isEditableLabel=f.editLabelFeature=f.canEditRouting=f.editFeature=void 0;const h=Ma();f.editFeature=Symbol("editFeature");function b(P){return P instanceof h.SRoutableElementImpl&&P.hasFeature(f.editFeature)}f.canEditRouting=b,f.editLabelFeature=Symbol("editLabelFeature");function w(P){return"text"in P&&P.hasFeature(f.editLabelFeature)}f.isEditableLabel=w,f.withEditLabelFeature=Symbol("withEditLabelFeature");function m(P){return"editableLabel"in P&&P.hasFeature(f.withEditLabelFeature)}f.isWithEditableLabel=m})(dve)),dve}var EL={},gve={},dm={},$gt;function PS(){if($gt)return dm;$gt=1,Object.defineProperty(dm,"__esModule",{value:!0}),dm.limit=dm.intersection=dm.PointToPointLine=dm.Diamond=void 0;const f=Sp();class h{constructor(g){this.bounds=g}get topPoint(){return{x:this.bounds.x+this.bounds.width/2,y:this.bounds.y}}get rightPoint(){return{x:this.bounds.x+this.bounds.width,y:this.bounds.y+this.bounds.height/2}}get bottomPoint(){return{x:this.bounds.x+this.bounds.width/2,y:this.bounds.y+this.bounds.height}}get leftPoint(){return{x:this.bounds.x,y:this.bounds.y+this.bounds.height/2}}get topRightSideLine(){return new b(this.topPoint,this.rightPoint)}get topLeftSideLine(){return new b(this.topPoint,this.leftPoint)}get bottomRightSideLine(){return new b(this.bottomPoint,this.rightPoint)}get bottomLeftSideLine(){return new b(this.bottomPoint,this.leftPoint)}closestSideLine(g){const E=f.Bounds.center(this.bounds);return g.x>E.x?g.y>E.y?this.bottomRightSideLine:this.topRightSideLine:g.y>E.y?this.bottomLeftSideLine:this.topLeftSideLine}}dm.Diamond=h;class b{constructor(g,E){this.p1=g,this.p2=E}get a(){return this.p1.y-this.p2.y}get b(){return this.p2.x-this.p1.x}get c(){return this.p2.x*this.p1.y-this.p1.x*this.p2.y}get angle(){return Math.atan2(-this.a,this.b)}get slope(){if(this.b!==0)return this.a/this.b}get slopeOrMax(){return this.slope===void 0?Number.MAX_SAFE_INTEGER:this.slope}get direction(){const g=(0,f.toDegrees)(this.angle),E=g<0?360+g:g;if(E===90)return"south";if(E===0||E===360)return"east";if(E===270)return"north";if(E===180)return"west";if(E>0&&E<90)return"south-east";if(E>90&&E<180)return"south-west";if(E>180&&E<270)return"north-west";if(E>270&&E<360)return"north-east";throw new Error(`Cannot determine direction of line (${this.p1.x},${this.p1.y}) to (${this.p2.x},${this.p2.y})`)}intersection(g){if(this.hasIndistinctPoints(g))return;const E=this.p1.x,C=this.p1.y,T=this.p2.x,M=this.p2.y,_=g.p1.x,I=g.p1.y,O=g.p2.x,j=g.p2.y,k=(j-I)*(T-E)-(O-_)*(M-C);if(k===0)return;const x=(O-_)*(C-I)-(j-I)*(E-_),R=(T-E)*(C-I)-(M-C)*(E-_);if(x===0&&R===0)return;const H=x/k,F=R/k;if(H<0||H>1||F<0||F>1)return;const $=E+H*(T-E),W=C+H*(M-C);return{x:$,y:W}}hasIndistinctPoints(g){return f.Point.equals(this.p1,g.p1)||f.Point.equals(this.p1,g.p2)||f.Point.equals(this.p2,g.p1)||f.Point.equals(this.p2,g.p2)}}dm.PointToPointLine=b;function w(P,g){return{x:(P.c*g.b-g.c*P.b)/(P.a*g.b-g.a*P.b),y:(P.a*g.c-g.a*P.c)/(P.a*g.b-g.a*P.b)}}dm.intersection=w;function m(P,g){return Pg.max?g.max:P}return dm.limit=m,dm}var Kgt;function V3(){return Kgt||(Kgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.limitViewport=f.isViewport=f.viewportFeature=void 0;const h=Sp(),b=Oc(),w=PS();f.viewportFeature=Symbol("viewportFeature");function m(g){return g instanceof b.SModelRootImpl&&g.hasFeature(f.viewportFeature)&&"zoom"in g&&"scroll"in g}f.isViewport=m;function P(g,E,C,T,M){E&&!h.Dimension.isValid(E)&&(E=void 0);let _=M?(0,w.limit)(g.zoom,M):g.zoom;if(E&&C){const j=E.width/(C.max-C.min);_ae instanceof k)===void 0}get incomingEdges(){const W=this.index;return W instanceof F?W.getIncomingEdges(this):this.index.all().filter(ae=>ae instanceof x).filter(ae=>ae.targetId===this.id)}get outgoingEdges(){const W=this.index;return W instanceof F?W.getOutgoingEdges(this):this.index.all().filter(ae=>ae instanceof x).filter(ae=>ae.sourceId===this.id)}}gh.SNodeImpl=j,j.DEFAULT_FEATURES=[T.connectableFeature,m.deletableFeature,M.selectFeature,b.boundsFeature,C.moveFeature,b.layoutContainerFeature,g.fadeFeature,E.hoverFeedbackFeature,E.popupFeature];class k extends T.SConnectableElementImpl{constructor(){super(...arguments),this.selected=!1,this.hoverFeedback=!1,this.opacity=1}get incomingEdges(){const W=this.index;return W instanceof F?W.getIncomingEdges(this):super.incomingEdges.filter(re=>re instanceof x)}get outgoingEdges(){const W=this.index;return W instanceof F?W.getOutgoingEdges(this):super.outgoingEdges.filter(re=>re instanceof x)}}gh.SPortImpl=k,k.DEFAULT_FEATURES=[T.connectableFeature,M.selectFeature,b.boundsFeature,g.fadeFeature,E.hoverFeedbackFeature];class x extends T.SRoutableElementImpl{constructor(){super(...arguments),this.selected=!1,this.hoverFeedback=!1,this.opacity=1}}gh.SEdgeImpl=x,x.DEFAULT_FEATURES=[P.editFeature,m.deletableFeature,M.selectFeature,g.fadeFeature,E.hoverFeedbackFeature];class R extends b.SShapeElementImpl{constructor(){super(...arguments),this.selected=!1,this.alignment=f.Point.ORIGIN,this.opacity=1}}gh.SLabelImpl=R,R.DEFAULT_FEATURES=[b.boundsFeature,b.alignFeature,b.layoutableChildFeature,w.edgeLayoutFeature,g.fadeFeature];class H extends b.SShapeElementImpl{constructor(){super(...arguments),this.opacity=1}}gh.SCompartmentImpl=H,H.DEFAULT_FEATURES=[b.boundsFeature,b.layoutContainerFeature,b.layoutableChildFeature,g.fadeFeature];class F extends h.ModelIndexImpl{constructor(){super(...arguments),this.outgoing=new Map,this.incoming=new Map}add(W){if(super.add(W),W instanceof x){if(W.sourceId){const re=this.outgoing.get(W.sourceId);re===void 0?this.outgoing.set(W.sourceId,[W]):re.push(W)}if(W.targetId){const re=this.incoming.get(W.targetId);re===void 0?this.incoming.set(W.targetId,[W]):re.push(W)}}}remove(W){if(super.remove(W),W instanceof x){const re=this.outgoing.get(W.sourceId);if(re!==void 0){const ce=re.indexOf(W);ce>=0&&(re.length===1?this.outgoing.delete(W.sourceId):re.splice(ce,1))}const ae=this.incoming.get(W.targetId);if(ae!==void 0){const ce=ae.indexOf(W);ce>=0&&(ae.length===1?this.incoming.delete(W.targetId):ae.splice(ce,1))}}}getAttachedElements(W){return new I.FluentIterableImpl(()=>({outgoing:this.outgoing.get(W.id),incoming:this.incoming.get(W.id),nextOutgoingIndex:0,nextIncomingIndex:0}),re=>{let ae=re.nextOutgoingIndex;if(re.outgoing!==void 0&&ae=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O},b=y3&&y3.__metadata||function(C,T){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(C,T)},w=y3&&y3.__param||function(C,T){return function(M,_){T(M,_,C)}};Object.defineProperty(f,"__esModule",{value:!0}),f.AnchorComputerRegistry=f.RECTANGULAR_ANCHOR_KIND=f.ELLIPTIC_ANCHOR_KIND=f.DIAMOND_ANCHOR_KIND=void 0;const m=Zt(),P=Qn(),g=q3();f.DIAMOND_ANCHOR_KIND="diamond",f.ELLIPTIC_ANCHOR_KIND="elliptic",f.RECTANGULAR_ANCHOR_KIND="rectangular";let E=class extends g.InstanceRegistry{constructor(T){super(),T.forEach(M=>this.register(M.kind,M))}get defaultAnchorKind(){return f.RECTANGULAR_ANCHOR_KIND}get(T,M){return super.get(`${T}:${M||this.defaultAnchorKind}`)}};f.AnchorComputerRegistry=E,f.AnchorComputerRegistry=E=h([(0,m.injectable)(),w(0,(0,m.multiInject)(P.TYPES.IAnchorComputer)),b("design:paramtypes",[Array])],E)})(y3)),y3}var ag={},Ggt;function pJ(){if(Ggt)return ag;Ggt=1;var f=ag&&ag.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=ag&&ag.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)};Object.defineProperty(ag,"__esModule",{value:!0}),ag.AbstractEdgeRouter=ag.DefaultAnchors=ag.Side=void 0;const b=Zt(),w=Ac(),m=Qh(),P=Ma(),g=MS(),E=Ma();var C;(function(_){_[_.RIGHT=0]="RIGHT",_[_.LEFT=1]="LEFT",_[_.TOP=2]="TOP",_[_.BOTTOM=3]="BOTTOM"})(C||(ag.Side=C={}));class T{constructor(I,O,j){this.element=I,this.kind=j;const k=I.bounds;this.bounds=(0,m.translateBounds)(k,I.parent,O),this.left={x:this.bounds.x,y:this.bounds.y+.5*this.bounds.height,kind:j},this.right={x:this.bounds.x+this.bounds.width,y:this.bounds.y+.5*this.bounds.height,kind:j},this.top={x:this.bounds.x+.5*this.bounds.width,y:this.bounds.y,kind:j},this.bottom={x:this.bounds.x+.5*this.bounds.width,y:this.bounds.y+this.bounds.height,kind:j}}get(I){return this[C[I].toLowerCase()]}getNearestSide(I){const O=w.Point.euclideanDistance(I,this.left),j=w.Point.euclideanDistance(I,this.right),k=w.Point.euclideanDistance(I,this.top),x=w.Point.euclideanDistance(I,this.bottom);let R=C.LEFT,H=O;return j{const W=w.Point.subtract($,F),re=w.Point.subtract(O,F),ae=w.Point.dotProduct(re,W)/w.Point.dotProduct(W,W);return ae>=0&&ae<=1?w.Point.linear(F,$,ae):ae<0?F:$},k=this.route(I);let x=k[0],R=0;for(let F=0;F1)return;const j=this.route(I);if(j.length<2)return;const k=[];let x=0;for(let F=0;F1e-8&&$>=H){const W=Math.max(0,H-R)/k[F];return{segmentStart:j[F],segmentEnd:j[F+1],lambda:W}}R=$}return{segmentEnd:j.pop(),segmentStart:j.pop(),lambda:1}}addHandle(I,O,j,k){const x=new P.SRoutingHandleImpl;return x.kind=O,x.pointIndex=k,x.type=j,O==="target"&&I.id===P.edgeInProgressID&&(x.id=P.edgeInProgressTargetHandleID),I.add(x),x}getHandlePosition(I,O,j){switch(j.kind){case"source":return I.source instanceof P.SDanglingAnchorImpl?I.source.position:O[0];case"target":return I.target instanceof P.SDanglingAnchorImpl?I.target.position:O[O.length-1];default:const k=this.getInnerHandlePosition(I,O,j);if(k!==void 0)return k;if(j.pointIndex>=0&&j.pointIndexH.pointIndex!==void 0?H.pointIndex:H.kind==="target"?I.routingPoints.length:-2;let x,R;for(const H of O){const F=k(H);F<=j&&(x===void 0||F>k(x))&&(x=H),F>j&&(R===void 0||F{const x=k.handle;if(x.kind==="source"&&!(I.source instanceof P.SDanglingAnchorImpl)){const R=new P.SDanglingAnchorImpl;R.id=I.id+"_dangling-source",R.original=I.source,R.position=k.toPosition,x.root.add(R),x.danglingAnchor=R,I.sourceId=R.id}else if(x.kind==="target"&&!(I.target instanceof P.SDanglingAnchorImpl)){const R=new P.SDanglingAnchorImpl;R.id=I.id+"_dangling-target",R.original=I.target,R.position=k.toPosition,x.root.add(R),x.danglingAnchor=R,I.targetId=R.id}x.danglingAnchor&&(x.danglingAnchor.position=k.toPosition,j.splice(j.indexOf(k),1))}),j.length>0&&this.applyInnerHandleMoves(I,j),this.cleanupRoutingPoints(I,I.routingPoints,!0,!0)}cleanupRoutingPoints(I,O,j,k){const x=new T(I.source,I.parent,"source"),R=new T(I.target,I.parent,"target");this.resetRoutingPointsOnReconnect(I,O,j,x,R)}resetRoutingPointsOnReconnect(I,O,j,k,x){if(O.length===0||I.source instanceof P.SDanglingAnchorImpl||I.target instanceof P.SDanglingAnchorImpl){const R=this.getOptions(I),H=this.calculateDefaultCorners(I,k,x,R);if(O.splice(0,O.length,...H),j){let F=-2;I.children.forEach($=>{$ instanceof P.SRoutingHandleImpl&&($.kind==="target"?$.pointIndex=O.length:$.kind==="line"&&$.pointIndex>=O.length?I.remove($):F=Math.max($.pointIndex,F))});for(let $=F;$`${I.sourceId}_to_${I.targetId}_${$}`;let R=0,H=x(R);for(;I.index.getById(H)!==void 0;)H=x(++R);I.id=H;const F=I.children.find($=>$.id===P.edgeInProgressTargetHandleID);F instanceof P.SRoutingHandleImpl&&(I.remove(F),F.danglingAnchor&&F.danglingAnchor.parent.remove(F.danglingAnchor))}I.index.add(I),this.getSelfEdgeIndex(I)>-1&&(I.routingPoints=[],this.cleanupRoutingPoints(I,I.routingPoints,!0,!0))}}takeSnapshot(I){return{routingPoints:I.routingPoints.slice(),routingHandles:I.children.filter(O=>O instanceof P.SRoutingHandleImpl).map(O=>O),routedPoints:this.route(I),router:this,source:I.source,target:I.target}}applySnapshot(I,O){I.routingPoints=O.routingPoints,I.removeAll(j=>j instanceof P.SRoutingHandleImpl),I.routerKind=O.router.kind,O.routingHandles.forEach(j=>I.add(j)),O.source&&(I.sourceId=O.source.id),O.target&&(I.targetId=O.target.id),I.root.index.remove(I),I.root.index.add(I)}calculateDefaultCorners(I,O,j,k){const x=this.getSelfEdgeIndex(I);if(x>=0){const R=k.standardDistance,H=k.selfEdgeOffset*Math.min(O.bounds.width,O.bounds.height);switch(x%4){case 0:return[{x:O.get(C.RIGHT).x+R,y:O.get(C.RIGHT).y+H},{x:O.get(C.RIGHT).x+R,y:O.get(C.BOTTOM).y+R},{x:O.get(C.BOTTOM).x+H,y:O.get(C.BOTTOM).y+R}];case 1:return[{x:O.get(C.BOTTOM).x-H,y:O.get(C.BOTTOM).y+R},{x:O.get(C.LEFT).x-R,y:O.get(C.BOTTOM).y+R},{x:O.get(C.LEFT).x-R,y:O.get(C.LEFT).y+H}];case 2:return[{x:O.get(C.LEFT).x-R,y:O.get(C.LEFT).y-H},{x:O.get(C.LEFT).x-R,y:O.get(C.TOP).y-R},{x:O.get(C.TOP).x-H,y:O.get(C.TOP).y-R}];case 3:return[{x:O.get(C.TOP).x+H,y:O.get(C.TOP).y-R},{x:O.get(C.RIGHT).x+R,y:O.get(C.TOP).y-R},{x:O.get(C.RIGHT).x+R,y:O.get(C.RIGHT).y-H}]}}return[]}getSelfEdgeIndex(I){return!I.source||I.source!==I.target?-1:I.source.outgoingEdges.filter(O=>O.target===I.source).indexOf(I)}commitRoute(I,O){const j=[];for(let k=1;k=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=hy&&hy.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b;Object.defineProperty(hy,"__esModule",{value:!0}),hy.PolylineEdgeRouter=void 0;const w=Zt(),m=Ac(),P=Ma(),g=MS(),E=pJ();let C=b=class extends E.AbstractEdgeRouter{get kind(){return b.KIND}getOptions(M){return{minimalPointDistance:2,removeAngleThreshold:.1,standardDistance:20,selfEdgeOffset:.25}}route(M){const _=M.source,I=M.target;if(_===void 0||I===void 0)return[];let O,j;const k=this.getOptions(M),x=M.routingPoints.length>0?M.routingPoints:[];this.cleanupRoutingPoints(M,x,!1,!1);const R=x!==void 0?x.length:0;if(R===0){const F=m.Bounds.center(I.bounds);O=this.getTranslatedAnchor(_,F,I.parent,M,M.sourceAnchorCorrection);const $=m.Bounds.center(_.bounds);j=this.getTranslatedAnchor(I,$,_.parent,M,M.targetAnchorCorrection)}else{const F=x[0];O=this.getTranslatedAnchor(_,F,M.parent,M,M.sourceAnchorCorrection);const $=x[R-1];j=this.getTranslatedAnchor(I,$,M.parent,M,M.targetAnchorCorrection)}const H=[];H.push({kind:"source",x:O.x,y:O.y});for(let F=0;F0&&F=k.minimalPointDistance+(M.sourceAnchorCorrection||0)||F===R-1&&m.Point.maxDistance($,j)>=k.minimalPointDistance+(M.targetAnchorCorrection||0))&&H.push({kind:"linear",x:$.x,y:$.y,pointIndex:F})}return H.push({kind:"target",x:j.x,y:j.y}),this.filterEditModeHandles(H,M,k)}filterEditModeHandles(M,_,I){if(_.children.length===0)return M;let O=0;for(;Ox instanceof P.SRoutingHandleImpl&&x.kind==="junction"&&x.pointIndex===j.pointIndex);if(k!==void 0&&k.editMode&&O>0&&O{const O=I.handle,j=M.routingPoints;let k=O.pointIndex;O.kind==="line"&&(O.kind="junction",O.type="routing-point",j.splice(k+1,0,I.fromPosition||j[Math.max(k,0)]),M.children.forEach(x=>{x instanceof P.SRoutingHandleImpl&&(x===O||x.pointIndex>k)&&x.pointIndex++}),this.addHandle(M,"line","volatile-routing-point",k),k++,this.addHandle(M,"line","volatile-routing-point",k)),k>=0&&k=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=ug&&ug.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)},b=ug&&ug.__param||function(O,j){return function(k,x){j(k,x,O)}};Object.defineProperty(ug,"__esModule",{value:!0}),ug.EdgeRouting=ug.EdgeRouterRegistry=void 0;const w=Zt(),m=Oc(),P=Qn(),g=iN(),E=q3(),C=Ma(),T=wJ();function M(O){return O.routeAll!==void 0}let _=class extends E.InstanceRegistry{constructor(j){super(),j.forEach(k=>this.register(k.kind,k))}get defaultKind(){return T.PolylineEdgeRouter.KIND}get(j){return super.get(j||this.defaultKind)}routeAllChildren(j){const k=this.doRouteAllChildren(j);for(const x of this.postProcessors)x.apply(k,j);return k}doRouteAllChildren(j){const k=new I,x=new Map,R=[j];for(;R.length>0;){const H=R.shift();for(const F of H.children){if(F instanceof C.SRoutableElementImpl){const $=F.routerKind||this.defaultKind;x.has($)?x.get($).push(F):x.set($,[F])}F instanceof m.SParentElementImpl&&R.push(F)}}return x.forEach((H,F)=>{const $=this.get(F);if(M($))k.setAll($.routeAll(H,j));else for(const W of H)k.set(W.id,this.route(W))}),k}route(j,k){const x=(0,g.findArgValue)(k,"edgeRouting");if(x){const H=x.get(j.id);if(H)return H}return this.get(j.routerKind).route(j)}};ug.EdgeRouterRegistry=_,f([(0,w.multiInject)(P.TYPES.IEdgeRoutePostprocessor),(0,w.optional)(),h("design:type",Array)],_.prototype,"postProcessors",void 0),ug.EdgeRouterRegistry=_=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.IEdgeRouter)),h("design:paramtypes",[Array])],_);class I{constructor(){this.routesMap=new Map}set(j,k){this.routesMap.set(j,k)}setAll(j){j.routes.forEach((k,x)=>this.set(x,k))}get(j){return this.routesMap.get(j)}get routes(){return this.routesMap}}return ug.EdgeRouting=I,ug}var Ygt;function hwt(){if(Ygt)return fy;Ygt=1;var f=fy&&fy.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=fy&&fy.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(fy,"__esModule",{value:!0}),fy.EdgeLayoutPostprocessor=void 0;const b=Zt(),w=Ac(),m=Oc(),P=mh(),g=MA(),E=Xs(),C=cN(),T=Iy(),M=Qn(),_=SS();let I=class{decorate(j,k){var x,R,H,F;if((0,C.isEdgeLayoutable)(k)&&k.parent instanceof g.SEdgeImpl&&k.bounds!==w.Bounds.EMPTY){const $=k.bounds,W=(0,C.checkEdgePlacement)(k),re=this.getEdgePlacement(k),ae=k.parent,ce=Math.min(1,Math.max(0,re.position)),J=this.edgeRouterRegistry.get(ae.routerKind),te=J.pointAt(ae,ce);let fe="",ve=J.derivativeAt(ae,ce);if(te)if(W){switch(re.moveMode){case"edge":const me=J.findOrthogonalIntersection(ae,w.Point.add(te,$));me&&(ve=me.derivative,fe+=`translate(${me.point.x}, ${me.point.y})`);break;case"free":fe+=`translate(${((x=te?.x)!==null&&x!==void 0?x:0)+$.x}, ${((R=te?.y)!==null&&R!==void 0?R:0)+$.y})`;break;case"none":fe+=`translate(${te.x}, ${te.y})`;break;default:this.logger.error({},"No moveMode set for edge label. Skipping edge placement.");break}if(ve){const me=(0,w.toDegrees)(Math.atan2(ve.y,ve.x));if(re.rotate){let ke=me;Math.abs(me)>90&&(me<0?ke+=180:me>0&&(ke-=180)),fe+=` rotate(${ke})`;const tt=this.getRotatedAlignment(k,re,ke!==me);fe+=` translate(${tt.x}, ${tt.y})`}else{const ke=this.getAlignment(k,re,me);fe+=` translate(${ke.x}, ${ke.y})`}}}else(0,_.isMoveable)(k)?fe+=`translate(${((H=te?.x)!==null&&H!==void 0?H:0)+$.x}, ${((F=te?.y)!==null&&F!==void 0?F:0)+$.y})`:fe+=`translate(${te.x}, ${te.y})`;(0,P.setAttr)(j,"transform",fe)}return j}getRotatedAlignment(j,k,x){let R=(0,E.isAlignable)(j)?j.alignment.x:0,H=(0,E.isAlignable)(j)?j.alignment.y:0;const F=j.bounds;if(k.side==="on")return{x:R-.5*F.height,y:H-.5*F.height};if(x)switch(k.position<.3333333?R-=F.width+k.offset:k.position<.6666666?R-=.5*F.width:R+=k.offset,k.side){case"left":case"bottom":H-=k.offset+F.height;break;case"right":case"top":H+=k.offset}else switch(k.position<.3333333?R+=k.offset:k.position<.6666666?R-=.5*F.width:R-=F.width+k.offset,k.side){case"right":case"bottom":H+=-k.offset-F.height;break;case"left":case"top":H+=k.offset}return{x:R,y:H}}getEdgePlacement(j){let k=j;const x=[];for(;k!==void 0;){const H=k.edgePlacement;if(H!==void 0&&x.push(H),k instanceof m.SChildElementImpl)k=k.parent;else break}const R=x.reverse().reduce((H,F)=>Object.assign(Object.assign({},H),F),C.DEFAULT_EDGE_PLACEMENT);return R.moveMode||(R.moveMode=(0,_.isMoveable)(j)?"edge":"none"),R}getAlignment(j,k,x){const R=j.bounds,H=(0,E.isAlignable)(j)?j.alignment.x-R.width:0,F=(0,E.isAlignable)(j)?j.alignment.y-R.height:0;if(k.side==="on")return{x:H+.5*R.width,y:F+.5*R.height};const $=this.getQuadrant(x),W={x:k.offset,y:F+.5*R.height},re={x:k.offset,y:F+R.height+k.offset},ae={x:-R.width-k.offset,y:F+R.height+k.offset},ce={x:-R.width-k.offset,y:F+.5*R.height},J={x:-R.width-k.offset,y:F-k.offset},te={x:k.offset,y:F-k.offset};switch(k.side){case"left":switch($.orientation){case"west":return w.Point.linear(re,ae,$.position);case"north":return w.Point.linear(ae,J,$.position);case"east":return w.Point.linear(J,te,$.position);case"south":return w.Point.linear(te,re,$.position)}break;case"right":switch($.orientation){case"west":return w.Point.linear(J,te,$.position);case"north":return w.Point.linear(te,re,$.position);case"east":return w.Point.linear(re,ae,$.position);case"south":return w.Point.linear(ae,J,$.position)}break;case"top":switch($.orientation){case"west":return w.Point.linear(J,te,$.position);case"north":return this.linearFlip(te,W,ce,J,$.position);case"east":return w.Point.linear(J,te,$.position);case"south":return this.linearFlip(te,W,ce,J,$.position)}break;case"bottom":switch($.orientation){case"west":return w.Point.linear(re,ae,$.position);case"north":return this.linearFlip(ae,ce,W,re,$.position);case"east":return w.Point.linear(re,ae,$.position);case"south":return this.linearFlip(ae,ce,W,re,$.position)}break}return{x:0,y:0}}getQuadrant(j){return Math.abs(j)>135?{orientation:"west",position:(j>0?j-135:j+225)/90}:j<-45?{orientation:"north",position:(j+135)/90}:j<45?{orientation:"east",position:(j+45)/90}:{orientation:"south",position:(j-45)/90}}linearFlip(j,k,x,R,H){return H<.5?w.Point.linear(j,k,2*H):w.Point.linear(x,R,2*H-1)}postUpdate(){}};return fy.EdgeLayoutPostprocessor=I,f([(0,b.inject)(T.EdgeRouterRegistry),h("design:type",T.EdgeRouterRegistry)],I.prototype,"edgeRouterRegistry",void 0),f([(0,b.inject)(M.TYPES.ILogger),h("design:type",Object)],I.prototype,"logger",void 0),fy.EdgeLayoutPostprocessor=I=f([(0,b.injectable)()],I),fy}var Xgt;function Rve(){if(Xgt)return tX;Xgt=1,Object.defineProperty(tX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=hwt(),w=new f.ContainerModule(m=>{m(b.EdgeLayoutPostprocessor).toSelf().inSingletonScope(),m(h.TYPES.IVNodePostprocessor).toService(b.EdgeLayoutPostprocessor),m(h.TYPES.HiddenVNodePostprocessor).toService(b.EdgeLayoutPostprocessor)});return tX.default=w,tX}var wp={},Jgt;function bUt(){if(Jgt)return wp;Jgt=1;var f=wp&&wp.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=wp&&wp.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=wp&&wp.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(wp,"__esModule",{value:!0}),wp.CreateElementCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Oc(),E=Qn();let C=class extends P.Command{constructor(M){super(),this.action=M}execute(M){const _=M.root.index.getById(this.action.containerId);return _ instanceof g.SParentElementImpl&&(this.container=_,this.newElement=M.modelFactory.createElement(this.action.elementSchema),this.container.add(this.newElement)),M.root}undo(M){return this.container.remove(this.newElement),M.root}redo(M){return this.container.add(this.newElement),M.root}};return wp.CreateElementCommand=C,C.KIND=m.CreateElementAction.KIND,wp.CreateElementCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(E.TYPES.Action)),h("design:paramtypes",[Object])],C),wp}var pve={},Qgt;function dwt(){return Qgt||(Qgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isCreatingOnDrag=f.creatingOnDragFeature=void 0,f.creatingOnDragFeature=Symbol("creatingOnDragFeature");function h(b){return b.hasFeature(f.creatingOnDragFeature)&&b.createAction!==void 0}f.isCreatingOnDrag=h})(pve)),pve}var _3={},yl={},Zgt;function gwt(){if(Zgt)return yl;Zgt=1;var f=yl&&yl.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R};Object.defineProperty(yl,"__esModule",{value:!0}),yl.EmptyGroupView=yl.DiamondNodeView=yl.RectangularNodeView=yl.CircularNodeView=yl.SvgViewportView=void 0;const h=Cy(),b=MA(),w=gJ(),m=PS(),P=Zt();let g=class{render(O,j,k){const x=`scale(${O.zoom}) translate(${-O.scroll.x},${-O.scroll.y})`;return(0,h.svg)("svg",null,(0,h.svg)("g",{transform:x},j.renderChildren(O)))}};yl.SvgViewportView=g,yl.SvgViewportView=g=f([(0,P.injectable)()],g);let E=class extends w.ShapeView{render(O,j,k){if(!this.isVisible(O,j))return;const x=this.getRadius(O);return(0,h.svg)("g",null,(0,h.svg)("circle",{"class-sprotty-node":O instanceof b.SNodeImpl,"class-sprotty-port":O instanceof b.SPortImpl,"class-mouseover":O.hoverFeedback,"class-selected":O.selected,r:x,cx:x,cy:x}),j.renderChildren(O))}getRadius(O){const j=Math.min(O.size.width,O.size.height);return j>0?j/2:0}};yl.CircularNodeView=E,yl.CircularNodeView=E=f([(0,P.injectable)()],E);let C=class extends w.ShapeView{render(O,j,k){if(this.isVisible(O,j))return(0,h.svg)("g",null,(0,h.svg)("rect",{"class-sprotty-node":O instanceof b.SNodeImpl,"class-sprotty-port":O instanceof b.SPortImpl,"class-mouseover":O.hoverFeedback,"class-selected":O.selected,x:"0",y:"0",width:Math.max(O.size.width,0),height:Math.max(O.size.height,0)}),j.renderChildren(O))}};yl.RectangularNodeView=C,yl.RectangularNodeView=C=f([(0,P.injectable)()],C);let T=class extends w.ShapeView{render(O,j,k){if(!this.isVisible(O,j))return;const x=new m.Diamond({height:Math.max(O.size.height,0),width:Math.max(O.size.width,0),x:0,y:0}),R=`${M(x.topPoint)} ${M(x.rightPoint)} ${M(x.bottomPoint)} ${M(x.leftPoint)}`;return(0,h.svg)("g",null,(0,h.svg)("polygon",{"class-sprotty-node":O instanceof b.SNodeImpl,"class-sprotty-port":O instanceof b.SPortImpl,"class-mouseover":O.hoverFeedback,"class-selected":O.selected,points:R}),j.renderChildren(O))}};yl.DiamondNodeView=T,yl.DiamondNodeView=T=f([(0,P.injectable)()],T);function M(I){return`${I.x},${I.y}`}let _=class{render(O,j){return(0,h.svg)("g",null)}};return yl.EmptyGroupView=_,yl.EmptyGroupView=_=f([(0,P.injectable)()],_),yl}var Ws={},ebt;function Uye(){if(ebt)return Ws;ebt=1;var f=Ws&&Ws.__decorate||function(W,re,ae,ce){var J=arguments.length,te=J<3?re:ce===null?ce=Object.getOwnPropertyDescriptor(re,ae):ce,fe;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")te=Reflect.decorate(W,re,ae,ce);else for(var ve=W.length-1;ve>=0;ve--)(fe=W[ve])&&(te=(J<3?fe(te):J>3?fe(re,ae,te):fe(re,ae))||te);return J>3&&te&&Object.defineProperty(re,ae,te),te},h=Ws&&Ws.__metadata||function(W,re){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(W,re)},b=Ws&&Ws.__param||function(W,re){return function(ae,ce){re(ae,ce,W)}};Object.defineProperty(Ws,"__esModule",{value:!0}),Ws.getEditableLabel=Ws.EditLabelKeyListener=Ws.EditLabelMouseListener=Ws.ApplyLabelEditCommand=Ws.ResolvedLabelEdit=Ws.isApplyLabelEditAction=Ws.isEditLabelAction=Ws.EditLabelAction=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=Pp(),C=H3(),T=z3(),M=Rb(),_=_A(),I=sN();var O;(function(W){W.KIND="EditLabel";function re(ae){return{kind:W.KIND,labelId:ae}}W.create=re})(O||(Ws.EditLabelAction=O={}));function j(W){return(0,m.isAction)(W)&&W.kind===O.KIND&&"labelId"in W}Ws.isEditLabelAction=j;function k(W){return(0,m.isAction)(W)&&W.kind===m.ApplyLabelEditAction.KIND&&"labelId"in W&&"text"in W}Ws.isApplyLabelEditAction=k;class x{}Ws.ResolvedLabelEdit=x;let R=class extends P.Command{constructor(re){super(),this.action=re}execute(re){const ce=re.root.index.getById(this.action.labelId);return ce&&(0,I.isEditableLabel)(ce)&&(this.resolvedLabelEdit={label:ce,oldLabel:ce.text,newLabel:this.action.text},ce.text=this.action.text),re.root}undo(re){return this.resolvedLabelEdit&&(this.resolvedLabelEdit.label.text=this.resolvedLabelEdit.oldLabel),re.root}redo(re){return this.resolvedLabelEdit&&(this.resolvedLabelEdit.label.text=this.resolvedLabelEdit.newLabel),re.root}};Ws.ApplyLabelEditCommand=R,R.KIND=m.ApplyLabelEditAction.KIND,Ws.ApplyLabelEditCommand=R=f([b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],R);class H extends E.MouseListener{doubleClick(re,ae){const ce=$(re);return ce?[O.create(ce.id)]:[]}}Ws.EditLabelMouseListener=H;class F extends C.KeyListener{keyDown(re,ae){if((0,T.matchesKeystroke)(ae,"F2")){const ce=(0,_.toArray)(re.index.all().filter(J=>(0,M.isSelectable)(J)&&J.selected)).map($).filter(J=>J!==void 0);if(ce.length===1)return[O.create(ce[0].id)]}return[]}}Ws.EditLabelKeyListener=F;function $(W){if((0,I.isEditableLabel)(W))return W;if((0,I.isWithEditableLabel)(W)&&W.editableLabel)return W.editableLabel}return Ws.getEditableLabel=$,Ws}var jb={},lg={},Ab={},tbt;function CA(){if(tbt)return Ab;tbt=1;var f=Ab&&Ab.__decorate||function(C,T,M,_){var I=arguments.length,O=I<3?T:_===null?_=Object.getOwnPropertyDescriptor(T,M):_,j;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")O=Reflect.decorate(C,T,M,_);else for(var k=C.length-1;k>=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O},h=Ab&&Ab.__metadata||function(C,T){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(C,T)};Object.defineProperty(Ab,"__esModule",{value:!0}),Ab.ComputedBoundsApplicator=Ab.ModelSource=void 0;const b=Zt(),w=jc(),m=LM(),P=Qn();let g=class{initialize(T){T.register(w.RequestModelAction.KIND,this),T.register(w.ExportSvgAction.KIND,this)}};Ab.ModelSource=g,f([(0,b.inject)(P.TYPES.IActionDispatcher),h("design:type",Object)],g.prototype,"actionDispatcher",void 0),f([(0,b.inject)(P.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"viewerOptions",void 0),Ab.ModelSource=g=f([(0,b.injectable)()],g);let E=class{apply(T,M){const _=new m.SModelIndex;_.add(T);for(const I of M.bounds){const O=_.getById(I.elementId);O!==void 0&&this.applyBounds(O,I.newPosition,I.newSize)}if(M.alignments!==void 0)for(const I of M.alignments){const O=_.getById(I.elementId);O!==void 0&&this.applyAlignment(O,I.newAlignment)}return _}applyAlignment(T,M){const _=T;_.alignment={x:M.x,y:M.y}}applyBounds(T,M,_){const I=T;M&&(I.position=Object.assign({},M)),I.size=Object.assign({},_)}};return Ab.ComputedBoundsApplicator=E,Ab.ComputedBoundsApplicator=E=f([(0,b.injectable)()],E),Ab}var nbt;function mJ(){if(nbt)return lg;nbt=1;var f=lg&&lg.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=lg&&lg.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=lg&&lg.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(lg,"__esModule",{value:!0}),lg.CommitModelCommand=lg.CommitModelAction=void 0;const w=Zt(),m=Ca(),P=Qn(),g=CA();var E;(function(T){T.KIND="commitModel";function M(){return{kind:T.KIND}}T.create=M})(E||(lg.CommitModelAction=E={}));let C=class extends m.SystemCommand{constructor(M){super(),this.action=M}execute(M){return this.newModel=M.modelFactory.createSchema(M.root),this.doCommit(this.newModel,M.root,!0)}doCommit(M,_,I){const O=this.modelSource.commitModel(M);return O instanceof Promise?O.then(j=>(I&&(this.originalModel=j),_)):(I&&(this.originalModel=O),_)}undo(M){return this.doCommit(this.originalModel,M.root,!1)}redo(M){return this.doCommit(this.newModel,M.root,!1)}};return lg.CommitModelCommand=C,C.KIND=E.KIND,f([(0,w.inject)(P.TYPES.ModelSource),h("design:type",g.ModelSource)],C.prototype,"modelSource",void 0),lg.CommitModelCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(P.TYPES.Action)),h("design:paramtypes",[Object])],C),lg}var gm={},ibt;function Wye(){if(ibt)return gm;ibt=1;var f=gm&&gm.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=gm&&gm.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(gm,"__esModule",{value:!0}),gm.ZoomMouseListener=gm.getZoom=void 0;const b=Zt(),w=jc(),m=Ac(),P=Qh(),g=Qn(),E=Pp(),C=My(),T=V3(),M=PS();function _(O){let j=1;const k=(0,P.findParentByFeature)(O,T.isViewport);return k&&(j=k.zoom),j}gm.getZoom=_;class I extends E.MouseListener{wheel(j,k){const x=(0,P.findParentByFeature)(j,T.isViewport);if(!x)return[];const R=this.isScrollMode(k)?this.processScroll(x,k):this.processZoom(x,j,k);return R?[w.SetViewportAction.create(x.id,R,{animate:!1})]:[]}isScrollMode(j){return j.altKey}processScroll(j,k){return{scroll:{x:j.scroll.x+k.deltaX,y:j.scroll.y+k.deltaY},zoom:j.zoom}}processZoom(j,k,x){const R=this.getZoomFactor(x);if(R>1&&(0,m.almostEquals)(j.zoom,this.viewerOptions.zoomLimits.max)||R<1&&(0,m.almostEquals)(j.zoom,this.viewerOptions.zoomLimits.min))return;const H=(0,M.limit)(j.zoom*R,this.viewerOptions.zoomLimits),F=this.getViewportOffset(k.root,x),$=1/H-1/j.zoom;return{scroll:{x:j.scroll.x-$*F.x,y:j.scroll.y-$*F.y},zoom:H}}getViewportOffset(j,k){const x=j.canvasBounds,R=(0,C.getWindowScroll)();return{x:k.clientX+R.x-x.x,y:k.clientY+R.y-x.y}}getZoomFactor(j){return j.deltaMode===j.DOM_DELTA_PAGE?Math.exp(-j.deltaY*.5):j.deltaMode===j.DOM_DELTA_LINE?Math.exp(-j.deltaY*.05):Math.exp(-j.deltaY*.005)}}return gm.ZoomMouseListener=I,f([(0,b.inject)(g.TYPES.ViewerOptions),h("design:type",Object)],I.prototype,"viewerOptions",void 0),gm}var rbt;function bwt(){if(rbt)return jb;rbt=1;var f=jb&&jb.__decorate||function($,W,re,ae){var ce=arguments.length,J=ce<3?W:ae===null?ae=Object.getOwnPropertyDescriptor(W,re):ae,te;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")J=Reflect.decorate($,W,re,ae);else for(var fe=$.length-1;fe>=0;fe--)(te=$[fe])&&(J=(ce<3?te(J):ce>3?te(W,re,J):te(W,re))||J);return ce>3&&J&&Object.defineProperty(W,re,J),J},h=jb&&jb.__metadata||function($,W){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata($,W)},b;Object.defineProperty(jb,"__esModule",{value:!0}),jb.EditLabelUI=jb.EditLabelActionHandler=void 0;const w=Zt(),m=jc(),P=Qn(),g=Lye(),E=hJ(),C=tN(),T=mJ(),M=z3(),_=Xs(),I=Wye(),O=Uye(),j=sN();let k=class{handle(W){if((0,O.isEditLabelAction)(W))return E.SetUIExtensionVisibilityAction.create({extensionId:x.ID,visible:!0,contextElementsId:[W.labelId]})}};jb.EditLabelActionHandler=k,jb.EditLabelActionHandler=k=f([(0,w.injectable)()],k);let x=b=class extends g.AbstractUIExtension{constructor(){super(...arguments),this.validationTimeout=void 0,this.isActive=!1,this.blockApplyEditOnInvalidInput=!0,this.isCurrentLabelValid=!0}id(){return b.ID}containerClass(){return"label-edit"}get labelId(){return this.label?this.label.id:"unknown"}initializeContents(W){W.style.position="absolute",this.inputElement=document.createElement("input"),this.textAreaElement=document.createElement("textarea"),[this.inputElement,this.textAreaElement].forEach(re=>{re.onkeydown=ae=>this.applyLabelEditOnEvent(ae,"Enter"),this.configureAndAdd(re,W)})}configureAndAdd(W,re){W.style.visibility="hidden",W.style.position="absolute",W.style.top="0px",W.style.left="0px",W.addEventListener("keydown",ae=>this.hideIfEscapeEvent(ae)),W.addEventListener("keyup",ae=>this.validateLabelIfContentChange(ae,W.value)),W.addEventListener("blur",()=>window.setTimeout(()=>this.applyLabelEdit(),200)),re.appendChild(W)}get editControl(){return this.label&&this.label.isMultiLine?this.textAreaElement:this.inputElement}hideIfEscapeEvent(W){(0,M.matchesKeystroke)(W,"Escape")&&this.hide()}applyLabelEditOnEvent(W,re,...ae){(0,M.matchesKeystroke)(W,re||"Enter",...ae)&&(W.preventDefault(),this.applyLabelEdit())}validateLabelIfContentChange(W,re){(this.previousLabelContent===void 0||this.previousLabelContent!==re)&&(this.previousLabelContent=re,this.performLabelValidation(W,this.editControl.value))}async applyLabelEdit(){var W;if(this.isActive){if(((W=this.label)===null||W===void 0?void 0:W.text)===this.editControl.value){this.hide();return}if(this.blockApplyEditOnInvalidInput&&(await this.validateLabel(this.editControl.value)).severity==="error"){this.editControl.focus();return}this.actionDispatcherProvider().then(re=>re.dispatchAll([m.ApplyLabelEditAction.create(this.labelId,this.editControl.value),T.CommitModelAction.create()])).catch(re=>this.logger.error(this,"No action dispatcher available to execute apply label edit action",re)),this.hide()}}performLabelValidation(W,re){this.validationTimeout&&window.clearTimeout(this.validationTimeout),this.validationTimeout=window.setTimeout(()=>this.validateLabel(re),200)}async validateLabel(W){if(this.labelValidator&&this.label)try{const re=await this.labelValidator.validate(W,this.label);return this.isCurrentLabelValid=re.severity!=="error",this.showValidationResult(re),re}catch(re){this.logger.error(this,"Error validating edited label",re)}return this.isCurrentLabelValid=!0,{severity:"ok",message:void 0}}showValidationResult(W){this.clearValidationResult(),this.validationDecorator&&this.validationDecorator.decorate(this.editControl,W)}clearValidationResult(){this.validationDecorator&&this.validationDecorator.dispose(this.editControl)}show(W,...re){!R(re,W)||this.isActive||(super.show(W,...re),this.isActive=!0)}hide(){this.editControl.style.visibility="hidden",super.hide(),this.clearValidationResult(),this.isActive=!1,this.isCurrentLabelValid=!0,this.previousLabelContent=void 0,this.labelElement&&(this.labelElement.style.visibility="visible")}onBeforeShow(W,re,...ae){this.label=H(ae,re)[0],this.previousLabelContent=this.label.text,this.setPosition(W),this.applyTextContents(),this.applyFontStyling(),this.editControl.style.visibility="visible",this.editControl.focus()}setPosition(W){let re=0,ae=0,ce=100,J=20;if(this.label){const te=(0,I.getZoom)(this.label),fe=(0,_.getAbsoluteClientBounds)(this.label,this.domHelper,this.viewerOptions);re=fe.x+(this.label.editControlPositionCorrection?this.label.editControlPositionCorrection.x:0)*te,ae=fe.y+(this.label.editControlPositionCorrection?this.label.editControlPositionCorrection.y:0)*te,J=(this.label.editControlDimension?this.label.editControlDimension.height:J)*te,ce=(this.label.editControlDimension?this.label.editControlDimension.width:ce)*te}W.style.left=`${re}px`,W.style.top=`${ae}px`,W.style.width=`${ce}px`,this.editControl.style.width=`${ce}px`,W.style.height=`${J}px`,this.editControl.style.height=`${J}px`}applyTextContents(){this.label&&(this.editControl.value=this.label.text,this.editControl instanceof HTMLTextAreaElement?(this.editControl.selectionStart=0,this.editControl.selectionEnd=0,this.editControl.scrollTop=0,this.editControl.scrollLeft=0):this.editControl.setSelectionRange(0,this.editControl.value.length))}applyFontStyling(){if(this.label&&(this.labelElement=document.getElementById(this.domHelper.createUniqueDOMElementId(this.label)),this.labelElement)){this.labelElement.style.visibility="hidden";const W=window.getComputedStyle(this.labelElement);this.editControl.style.font=W.font,this.editControl.style.fontStyle=W.fontStyle,this.editControl.style.fontFamily=W.fontFamily,this.editControl.style.fontSize=F(W.fontSize,(0,I.getZoom)(this.label)),this.editControl.style.fontWeight=W.fontWeight,this.editControl.style.lineHeight=W.lineHeight}}};jb.EditLabelUI=x,x.ID="editLabelUi",f([(0,w.inject)(P.TYPES.IActionDispatcherProvider),h("design:type",Function)],x.prototype,"actionDispatcherProvider",void 0),f([(0,w.inject)(P.TYPES.ViewerOptions),h("design:type",Object)],x.prototype,"viewerOptions",void 0),f([(0,w.inject)(P.TYPES.DOMHelper),h("design:type",C.DOMHelper)],x.prototype,"domHelper",void 0),f([(0,w.inject)(P.TYPES.IEditLabelValidator),(0,w.optional)(),h("design:type",Object)],x.prototype,"labelValidator",void 0),f([(0,w.inject)(P.TYPES.IEditLabelValidationDecorator),(0,w.optional)(),h("design:type",Object)],x.prototype,"validationDecorator",void 0),jb.EditLabelUI=x=b=f([(0,w.injectable)()],x);function R($,W){return H($,W).length===1}function H($,W){return $.map(re=>W.index.getById(re)).filter(j.isEditableLabel)}function F($,W){return $.replace(/\d+(\.\d+)?/,re=>String(Number.parseInt(re,10)*W))}return jb}var fg={},obt;function vJ(){if(obt)return fg;obt=1;var f=fg&&fg.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h=fg&&fg.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)},b=fg&&fg.__param||function(I,O){return function(j,k){O(j,k,I)}};Object.defineProperty(fg,"__esModule",{value:!0}),fg.SwitchEditModeCommand=fg.SwitchEditModeAction=void 0;const w=Zt(),m=Ca(),P=Oc(),g=Qn(),E=Ma(),C=Iy(),T=sN();var M;(function(I){I.KIND="switchEditMode";function O(j){var k,x;return{kind:I.KIND,elementsToActivate:(k=j.elementsToActivate)!==null&&k!==void 0?k:[],elementsToDeactivate:(x=j.elementsToDeactivate)!==null&&x!==void 0?x:[]}}I.create=O})(M||(fg.SwitchEditModeAction=M={}));let _=class extends m.Command{constructor(O){super(),this.action=O,this.elementsToActivate=[],this.elementsToDeactivate=[],this.handlesToRemove=[]}execute(O){const j=O.root.index;return this.action.elementsToActivate.forEach(k=>{const x=j.getById(k);x!==void 0&&this.elementsToActivate.push(x)}),this.action.elementsToDeactivate.forEach(k=>{const x=j.getById(k);if(x!==void 0&&this.elementsToDeactivate.push(x),x instanceof E.SRoutingHandleImpl&&x.parent instanceof E.SRoutableElementImpl){const R=x.parent;this.shouldRemoveHandle(x,R)&&(this.handlesToRemove.push({handle:x,parent:R}),this.elementsToDeactivate.push(R),this.elementsToActivate.push(R))}}),this.doExecute(O)}doExecute(O){return this.handlesToRemove.forEach(j=>{j.point=j.parent.routingPoints.splice(j.handle.pointIndex,1)[0]}),this.elementsToDeactivate.forEach(j=>{j instanceof E.SRoutableElementImpl?j.removeAll(k=>k instanceof E.SRoutingHandleImpl):j instanceof E.SRoutingHandleImpl&&(j.editMode=!1,j.danglingAnchor&&j.parent instanceof E.SRoutableElementImpl&&j.danglingAnchor.original&&(j.parent.source===j.danglingAnchor?j.parent.sourceId=j.danglingAnchor.original.id:j.parent.target===j.danglingAnchor&&(j.parent.targetId=j.danglingAnchor.original.id),j.danglingAnchor.parent.remove(j.danglingAnchor),j.danglingAnchor=void 0))}),this.elementsToActivate.forEach(j=>{(0,T.canEditRouting)(j)&&j instanceof P.SParentElementImpl?this.edgeRouterRegistry.get(j.routerKind).createRoutingHandles(j):j instanceof E.SRoutingHandleImpl&&(j.editMode=!0)}),O.root}shouldRemoveHandle(O,j){return O.kind==="junction"?this.edgeRouterRegistry.route(j).find(x=>x.pointIndex===O.pointIndex)===void 0:!1}undo(O){return this.handlesToRemove.forEach(j=>{j.point!==void 0&&j.parent.routingPoints.splice(j.handle.pointIndex,0,j.point)}),this.elementsToActivate.forEach(j=>{j instanceof E.SRoutableElementImpl?j.removeAll(k=>k instanceof E.SRoutingHandleImpl):j instanceof E.SRoutingHandleImpl&&(j.editMode=!1)}),this.elementsToDeactivate.forEach(j=>{(0,T.canEditRouting)(j)?this.edgeRouterRegistry.get(j.routerKind).createRoutingHandles(j):j instanceof E.SRoutingHandleImpl&&(j.editMode=!0)}),O.root}redo(O){return this.doExecute(O)}};return fg.SwitchEditModeCommand=_,_.KIND=M.KIND,f([(0,w.inject)(C.EdgeRouterRegistry),h("design:type",C.EdgeRouterRegistry)],_.prototype,"edgeRouterRegistry",void 0),fg.SwitchEditModeCommand=_=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],_),fg}var mp={},cbt;function Yye(){if(cbt)return mp;cbt=1;var f=mp&&mp.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=mp&&mp.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=mp&&mp.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(mp,"__esModule",{value:!0}),mp.ReconnectCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=Ma(),C=Iy();let T=class extends P.Command{constructor(_){super(),this.action=_}execute(_){return this.doExecute(_),_.root}doExecute(_){const O=_.root.index.getById(this.action.routableId);if(O instanceof E.SRoutableElementImpl){const j=this.edgeRouterRegistry.get(O.routerKind),k=j.takeSnapshot(O);j.applyReconnect(O,this.action.newSourceId,this.action.newTargetId);const x=j.takeSnapshot(O);this.memento={edge:O,before:k,after:x}}}undo(_){return this.memento&&this.edgeRouterRegistry.get(this.memento.edge.routerKind).applySnapshot(this.memento.edge,this.memento.before),_.root}redo(_){return this.memento&&this.edgeRouterRegistry.get(this.memento.edge.routerKind).applySnapshot(this.memento.edge,this.memento.after),_.root}};return mp.ReconnectCommand=T,T.KIND=m.ReconnectAction.KIND,f([(0,w.inject)(C.EdgeRouterRegistry),h("design:type",C.EdgeRouterRegistry)],T.prototype,"edgeRouterRegistry",void 0),mp.ReconnectCommand=T=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],T),mp}var sbt;function pwt(){if(sbt)return _3;sbt=1,Object.defineProperty(_3,"__esModule",{value:!0}),_3.labelEditUiModule=_3.labelEditModule=_3.edgeEditModule=void 0;const f=Zt(),h=Qn(),b=kb(),w=lJ(),m=iN(),P=Ma(),g=gwt(),E=oN(),C=Uye(),T=bwt(),M=vJ(),_=Yye();return _3.edgeEditModule=new f.ContainerModule((I,O,j)=>{const k={bind:I,isBound:j};(0,b.configureCommand)(k,M.SwitchEditModeCommand),(0,b.configureCommand)(k,_.ReconnectCommand),(0,b.configureCommand)(k,E.DeleteElementCommand),(0,m.configureModelElement)(k,"dangling-anchor",P.SDanglingAnchorImpl,g.EmptyGroupView)}),_3.labelEditModule=new f.ContainerModule((I,O,j)=>{I(C.EditLabelMouseListener).toSelf().inSingletonScope(),I(h.TYPES.MouseListener).toService(C.EditLabelMouseListener),I(C.EditLabelKeyListener).toSelf().inSingletonScope(),I(h.TYPES.KeyListener).toService(C.EditLabelKeyListener),(0,b.configureCommand)({bind:I,isBound:j},C.ApplyLabelEditCommand)}),_3.labelEditUiModule=new f.ContainerModule((I,O,j)=>{const k={bind:I,isBound:j};(0,w.configureActionHandler)(k,C.EditLabelAction.KIND,T.EditLabelActionHandler),I(T.EditLabelUI).toSelf().inSingletonScope(),I(h.TYPES.IUIExtension).toService(T.EditLabelUI)}),_3}var X4={},wve={},ubt;function Xye(){return ubt||(ubt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isExpandable=f.expandFeature=void 0,f.expandFeature=Symbol("expandFeature");function h(b){return b.hasFeature(f.expandFeature)&&"expanded"in b}f.isExpandable=h})(wve)),wve}var abt;function wwt(){if(abt)return X4;abt=1;var f=X4&&X4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(X4,"__esModule",{value:!0}),X4.ExpandButtonHandler=void 0;const h=Zt(),b=jc(),w=Qh(),m=Xye();let P=class{buttonPressed(E){const C=(0,w.findParentByFeature)(E,m.isExpandable);return C!==void 0?[b.CollapseExpandAction.create({expandIds:C.expanded?[]:[C.id],collapseIds:C.expanded?[C.id]:[]})]:[]}};return X4.ExpandButtonHandler=P,P.TYPE="button:expand",X4.ExpandButtonHandler=P=f([(0,h.injectable)()],P),X4}var J4={},lbt;function pUt(){if(lbt)return J4;lbt=1;var f=J4&&J4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(J4,"__esModule",{value:!0}),J4.ExpandButtonView=void 0;const h=Cy(),b=Xye(),w=Qh(),m=Zt();let P=class{render(E,C){const T=(0,w.findParentByFeature)(E,b.isExpandable),M=T!==void 0&&T.expanded?"M 1,5 L 8,12 L 15,5 Z":"M 1,8 L 8,15 L 8,1 Z";return(0,h.svg)("g",{"class-sprotty-button":"{true}","class-enabled":"{button.enabled}"},(0,h.svg)("rect",{x:0,y:0,width:16,height:16,opacity:0}),(0,h.svg)("path",{d:M}))}};return J4.ExpandButtonView=P,J4.ExpandButtonView=P=f([(0,m.injectable)()],P),J4}var _l={},vp={},fbt;function Jye(){if(fbt)return vp;fbt=1;var f=vp&&vp.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=vp&&vp.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)};Object.defineProperty(vp,"__esModule",{value:!0}),vp.SvgExporter=vp.ExportSvgAction=void 0;const b=Zt(),w=Ac(),m=Rye(),P=Qn(),g=Xs();var E;(function(T){T.KIND="exportSvg";function M(_,I,O){return{kind:T.KIND,svg:_,responseId:I,options:O}}T.create=M})(E||(vp.ExportSvgAction=E={}));let C=class{constructor(){this.postprocessors=[]}export(M,_){var I;if(typeof document<"u"){const O=document.getElementById(this.options.hiddenDiv);if(O===null){this.log.warn(this,`Element with id ${this.options.hiddenDiv} not found. Nothing to export.`);return}const j=O.querySelector("svg");if(j===null){this.log.warn(this,`No svg element found in ${this.options.hiddenDiv} div. Nothing to export.`);return}const k=this.createSvg(j,M,(I=_?.options)!==null&&I!==void 0?I:{},_);this.actionDispatcher.dispatch(E.create(k,_?_.requestId:"",_?.options))}}createSvg(M,_,I,O){const j=new XMLSerializer,k=j.serializeToString(M),x=document.createElement("iframe");if(document.body.appendChild(x),!x.contentWindow)throw new Error("IFrame has no contentWindow");const R=x.contentWindow.document;R.open(),R.write(k),R.close();const H=R.querySelector("svg");H.removeAttribute("opacity"),I?.skipCopyStyles||this.copyStyles(M,H,["width","height","opacity","inline-size"]),H.setAttribute("version","1.1");const F=this.getBounds(_,R);H.setAttribute("viewBox",`${F.x} ${F.y} ${F.width} ${F.height}`),H.setAttribute("width",`${F.width}`),H.setAttribute("height",`${F.height}`),this.postprocessors.forEach(W=>{W.postUpdate(H,O)});const $=j.serializeToString(H);return document.body.removeChild(x),$}copyStyles(M,_,I){const O=getComputedStyle(M),j=getComputedStyle(_);let k="";for(let x=0;x{(0,g.isBoundsAware)(j)&&O.push(j.bounds)}),O.reduce((j,k)=>w.Bounds.combine(j,k))}};return vp.SvgExporter=C,f([(0,b.inject)(P.TYPES.ViewerOptions),h("design:type",Object)],C.prototype,"options",void 0),f([(0,b.inject)(P.TYPES.IActionDispatcher),h("design:type",m.ActionDispatcher)],C.prototype,"actionDispatcher",void 0),f([(0,b.inject)(P.TYPES.ILogger),h("design:type",Object)],C.prototype,"log",void 0),f([(0,b.multiInject)(P.TYPES.ISvgExportPostprocessor),(0,b.optional)(),h("design:type",Array)],C.prototype,"postprocessors",void 0),vp.SvgExporter=C=f([(0,b.injectable)()],C),vp}var hbt;function mwt(){if(hbt)return _l;hbt=1;var f=_l&&_l.__decorate||function(F,$,W,re){var ae=arguments.length,ce=ae<3?$:re===null?re=Object.getOwnPropertyDescriptor($,W):re,J;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(F,$,W,re);else for(var te=F.length-1;te>=0;te--)(J=F[te])&&(ce=(ae<3?J(ce):ae>3?J($,W,ce):J($,W))||ce);return ae>3&&ce&&Object.defineProperty($,W,ce),ce},h=_l&&_l.__metadata||function(F,$){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(F,$)},b=_l&&_l.__param||function(F,$){return function(W,re){$(W,re,F)}};Object.defineProperty(_l,"__esModule",{value:!0}),_l.ExportSvgPostprocessor=_l.ExportSvgCommand=_l.RequestExportSvgAction=_l.ExportSvgKeyListener=void 0;const w=Zt(),m=jc(),P=Ca(),g=Rb(),E=Oc(),C=H3(),T=z3(),M=Vye(),_=Jye(),I=V3(),O=PA(),j=Qn();let k=class extends C.KeyListener{keyDown($,W){return(0,T.matchesKeystroke)(W,"KeyE","ctrlCmd","shift")?[x.create()]:[]}};_l.ExportSvgKeyListener=k,_l.ExportSvgKeyListener=k=f([(0,w.injectable)()],k);var x;(function(F){F.KIND="requestExportSvg";function $(W={}){return{kind:F.KIND,requestId:(0,m.generateRequestId)(),options:W}}F.create=$})(x||(_l.RequestExportSvgAction=x={}));let R=class extends P.HiddenCommand{constructor($){super(),this.action=$}execute($){if((0,M.isExportable)($.root)){const W=$.modelFactory.createRoot($.root);if((0,M.isExportable)(W))return(0,I.isViewport)(W)&&(W.zoom=1,W.scroll={x:0,y:0}),W.index.all().forEach(re=>{(0,g.isSelectable)(re)&&re.selected&&(re.selected=!1),(0,O.isHoverable)(re)&&re.hoverFeedback&&(re.hoverFeedback=!1)}),{model:W,modelChanged:!0,cause:this.action}}return{model:$.root,modelChanged:!1}}};_l.ExportSvgCommand=R,R.KIND=x.KIND,_l.ExportSvgCommand=R=f([b(0,(0,w.inject)(j.TYPES.Action)),h("design:paramtypes",[Object])],R);let H=class{decorate($,W){return W instanceof E.SModelRootImpl&&(this.root=W),$}postUpdate($){this.root&&$!==void 0&&$.kind===x.KIND&&this.svgExporter.export(this.root,$)}};return _l.ExportSvgPostprocessor=H,f([(0,w.inject)(j.TYPES.SvgExporter),h("design:type",_.SvgExporter)],H.prototype,"svgExporter",void 0),_l.ExportSvgPostprocessor=H=f([(0,w.injectable)()],H),_l}var mve={},dbt;function wUt(){return dbt||(dbt=1,Object.defineProperty(mve,"__esModule",{value:!0})),mve}var dy={},gbt;function Qye(){if(gbt)return dy;gbt=1;var f=dy&&dy.__decorate||function(C,T,M,_){var I=arguments.length,O=I<3?T:_===null?_=Object.getOwnPropertyDescriptor(T,M):_,j;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")O=Reflect.decorate(C,T,M,_);else for(var k=C.length-1;k>=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O};Object.defineProperty(dy,"__esModule",{value:!0}),dy.ElementFader=dy.FadeAnimation=void 0;const h=Zt(),b=SA(),w=Oc(),m=mh(),P=rN();class g extends b.Animation{constructor(T,M,_,I=!1){super(_),this.model=T,this.elementFades=M,this.removeAfterFadeOut=I}tween(T,M){for(const _ of this.elementFades){const I=_.element;_.type==="in"?I.opacity=T:_.type==="out"&&(I.opacity=1-T,T===1&&this.removeAfterFadeOut&&I instanceof w.SChildElementImpl&&I.parent.remove(I))}return this.model}}dy.FadeAnimation=g;let E=class{decorate(T,M){return(0,P.isFadeable)(M)&&M.opacity!==1&&(0,m.setAttr)(T,"opacity",M.opacity),T}postUpdate(){}};return dy.ElementFader=E,dy.ElementFader=E=f([(0,h.injectable)()],E),dy}var Ms={},bbt;function vwt(){if(bbt)return Ms;bbt=1;var f=Ms&&Ms.__decorate||function(ae,ce,J,te){var fe=arguments.length,ve=fe<3?ce:te===null?te=Object.getOwnPropertyDescriptor(ce,J):te,me;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ve=Reflect.decorate(ae,ce,J,te);else for(var ke=ae.length-1;ke>=0;ke--)(me=ae[ke])&&(ve=(fe<3?me(ve):fe>3?me(ce,J,ve):me(ce,J))||ve);return fe>3&&ve&&Object.defineProperty(ce,J,ve),ve},h=Ms&&Ms.__metadata||function(ae,ce){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ae,ce)},b=Ms&&Ms.__param||function(ae,ce){return function(J,te){ce(J,te,ae)}};Object.defineProperty(Ms,"__esModule",{value:!0}),Ms.ClosePopupActionHandler=Ms.HoverKeyListener=Ms.PopupHoverMouseListener=Ms.HoverMouseListener=Ms.AbstractHoverMouseListener=Ms.SetPopupModelCommand=Ms.HoverFeedbackCommand=void 0;const w=Zt(),m=jc(),P=Ac(),g=z3(),E=Qn(),C=Oc(),T=Pp(),M=Ca(),_=ES(),I=H3(),O=Qh(),j=Xs(),k=PA();let x=class extends M.SystemCommand{constructor(ce){super(),this.action=ce}execute(ce){const te=ce.root.index.getById(this.action.mouseoverElement);return te&&(0,k.isHoverable)(te)&&(te.hoverFeedback=this.action.mouseIsOver),this.redo(ce)}undo(ce){return ce.root}redo(ce){return ce.root}};Ms.HoverFeedbackCommand=x,x.KIND=m.HoverFeedbackAction.KIND,Ms.HoverFeedbackCommand=x=f([(0,w.injectable)(),b(0,(0,w.inject)(E.TYPES.Action)),h("design:paramtypes",[Object])],x);let R=class extends M.PopupCommand{constructor(ce){super(),this.action=ce}execute(ce){return this.oldRoot=ce.root,this.newRoot=ce.modelFactory.createRoot(this.action.newRoot),this.newRoot}undo(ce){return this.oldRoot}redo(ce){return this.newRoot}};Ms.SetPopupModelCommand=R,R.KIND=m.SetPopupModelAction.KIND,Ms.SetPopupModelCommand=R=f([(0,w.injectable)(),b(0,(0,w.inject)(E.TYPES.Action)),h("design:paramtypes",[Object])],R);class H extends T.MouseListener{mouseDown(ce,J){return this.mouseIsDown=!0,[]}mouseUp(ce,J){return this.mouseIsDown=!1,[]}stopMouseOutTimer(){this.state.mouseOutTimer!==void 0&&(window.clearTimeout(this.state.mouseOutTimer),this.state.mouseOutTimer=void 0)}startMouseOutTimer(){return this.stopMouseOutTimer(),new Promise(ce=>{this.state.mouseOutTimer=window.setTimeout(()=>{this.state.popupOpen=!1,this.state.previousPopupElement=void 0,ce(m.SetPopupModelAction.create({type:_.EMPTY_ROOT.type,id:_.EMPTY_ROOT.id}))},this.options.popupCloseDelay)})}stopMouseOverTimer(){this.state.mouseOverTimer!==void 0&&(window.clearTimeout(this.state.mouseOverTimer),this.state.mouseOverTimer=void 0)}}Ms.AbstractHoverMouseListener=H,f([(0,w.inject)(E.TYPES.ViewerOptions),h("design:type",Object)],H.prototype,"options",void 0),f([(0,w.inject)(E.TYPES.HoverState),h("design:type",Object)],H.prototype,"state",void 0);let F=class extends H{computePopupBounds(ce,J){let te={x:-5,y:20};const fe=(0,j.getAbsoluteBounds)(ce),ve=ce.root.canvasBounds,me=P.Bounds.translate(fe,ve),ke=me.x+me.width-J.x,tt=me.y+me.height-J.y;tt<=ke&&this.allowSidePosition(ce,"below",tt)?te={x:-5,y:Math.round(tt+5)}:ke<=tt&&this.allowSidePosition(ce,"right",ke)&&(te={x:Math.round(ke+5),y:-5});let De=J.x+te.x;const ct=ve.x+ve.width;De>ct&&(De=ct);let Z=J.y+te.y;const Nt=ve.y+ve.height;return Z>Nt&&(Z=Nt),{x:De,y:Z,width:-1,height:-1}}allowSidePosition(ce,J,te){return!(ce instanceof C.SModelRootImpl)&&te<=150}startMouseOverTimer(ce,J){return this.stopMouseOverTimer(),new Promise(te=>{this.state.mouseOverTimer=window.setTimeout(()=>{const fe=this.computePopupBounds(ce,{x:J.pageX,y:J.pageY});te(m.RequestPopupModelAction.create({elementId:ce.id,bounds:fe})),this.state.popupOpen=!0,this.state.previousPopupElement=ce},this.options.popupOpenDelay)})}mouseOver(ce,J){const te=[];if(!this.mouseIsDown){const fe=(0,O.findParent)(ce,k.hasPopupFeature);this.state.popupOpen&&(fe===void 0||this.state.previousPopupElement!==void 0&&this.state.previousPopupElement.id!==fe.id)?te.push(this.startMouseOutTimer()):(this.stopMouseOverTimer(),this.stopMouseOutTimer()),fe!==void 0&&(this.state.previousPopupElement===void 0||this.state.previousPopupElement.id!==fe.id)&&te.push(this.startMouseOverTimer(fe,J)),this.lastHoverFeedbackElementId&&(te.push(m.HoverFeedbackAction.create({mouseoverElement:this.lastHoverFeedbackElementId,mouseIsOver:!1})),this.lastHoverFeedbackElementId=void 0);const ve=(0,O.findParentByFeature)(ce,k.isHoverable);ve!==void 0&&(te.push(m.HoverFeedbackAction.create({mouseoverElement:ve.id,mouseIsOver:!0})),this.lastHoverFeedbackElementId=ve.id)}return te}mouseOut(ce,J){const te=[];if(!this.mouseIsDown){const fe=this.getElementFromEventPosition(J);if(!this.isSprottyPopup(fe)){if(this.state.popupOpen){const me=(0,O.findParent)(ce,k.hasPopupFeature);this.state.previousPopupElement!==void 0&&me!==void 0&&this.state.previousPopupElement.id===me.id&&te.push(this.startMouseOutTimer())}this.stopMouseOverTimer();const ve=(0,O.findParentByFeature)(ce,k.isHoverable);ve!==void 0&&(te.push(m.HoverFeedbackAction.create({mouseoverElement:ve.id,mouseIsOver:!1})),this.lastHoverFeedbackElementId&&this.lastHoverFeedbackElementId!==ve.id&&te.push(m.HoverFeedbackAction.create({mouseoverElement:this.lastHoverFeedbackElementId,mouseIsOver:!1})),this.lastHoverFeedbackElementId=void 0)}}return te}getElementFromEventPosition(ce){return document.elementFromPoint(ce.x,ce.y)}isSprottyPopup(ce){return ce?ce.id===this.options.popupDiv||!!ce.parentElement&&this.isSprottyPopup(ce.parentElement):!1}mouseMove(ce,J){const te=[];if(!this.mouseIsDown){this.state.previousPopupElement!==void 0&&this.closeOnMouseMove(this.state.previousPopupElement,J)&&te.push(this.startMouseOutTimer());const fe=(0,O.findParent)(ce,k.hasPopupFeature);fe!==void 0&&(this.state.previousPopupElement===void 0||this.state.previousPopupElement.id!==fe.id)&&te.push(this.startMouseOverTimer(fe,J))}return te}closeOnMouseMove(ce,J){return ce instanceof C.SModelRootImpl}};Ms.HoverMouseListener=F,f([(0,w.inject)(E.TYPES.ViewerOptions),h("design:type",Object)],F.prototype,"options",void 0),Ms.HoverMouseListener=F=f([(0,w.injectable)()],F);let $=class extends H{mouseOut(ce,J){return[this.startMouseOutTimer()]}mouseOver(ce,J){return this.stopMouseOutTimer(),this.stopMouseOverTimer(),[]}};Ms.PopupHoverMouseListener=$,Ms.PopupHoverMouseListener=$=f([(0,w.injectable)()],$);class W extends I.KeyListener{keyDown(ce,J){return(0,g.matchesKeystroke)(J,"Escape")?[m.SetPopupModelAction.create({type:_.EMPTY_ROOT.type,id:_.EMPTY_ROOT.id})]:[]}}Ms.HoverKeyListener=W;let re=class{constructor(){this.popupOpen=!1}handle(ce){if(ce.kind===R.KIND)this.popupOpen=ce.newRoot.type!==_.EMPTY_ROOT.type;else if(this.popupOpen)return m.SetPopupModelAction.create({id:_.EMPTY_ROOT.id,type:_.EMPTY_ROOT.type})}};return Ms.ClosePopupActionHandler=re,Ms.ClosePopupActionHandler=re=f([(0,w.injectable)()],re),Ms}var vve={},pbt;function Zye(){return pbt||(pbt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.SIssue=f.SIssueMarker=f.SIssueMarkerImpl=f.SDecoration=f.isDecoration=f.decorationFeature=void 0;const h=Xs(),b=PA();f.decorationFeature=Symbol("decorationFeature");function w(E){return E.hasFeature(f.decorationFeature)}f.isDecoration=w;class m extends h.SShapeElementImpl{}f.SDecoration=m,m.DEFAULT_FEATURES=[f.decorationFeature,h.boundsFeature,b.hoverFeedbackFeature,b.popupFeature];class P extends m{}f.SIssueMarkerImpl=P,f.SIssueMarker=P;class g{}f.SIssue=g})(vve)),vve}var Q4={},wbt;function ywt(){if(wbt)return Q4;wbt=1;var f=Q4&&Q4.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(Q4,"__esModule",{value:!0}),Q4.IssueMarkerView=void 0;const h=Cy(),b=mh(),w=Zt();let m=class{render(g,E){const C=.008928571428571428,T=`scale(${C}, ${C})`,M=this.getMaxSeverity(g),_=(0,h.svg)("g",{"class-sprotty-issue":!0},(0,h.svg)("g",{transform:T},(0,h.svg)("path",{d:this.getPath(M)})));return(0,b.setClass)(_,"sprotty-"+M,!0),_}getMaxSeverity(g){let E="info";for(const C of g.issues.map(T=>T.severity))(C==="error"||C==="warning"&&E==="info")&&(E=C);return E}getPath(g){switch(g){case"error":case"warning":return"M768 128q209 0 385.5 103t279.5 279.5 103 385.5-103 385.5-279.5 279.5-385.5 103-385.5-103-279.5-279.5-103-385.5 103-385.5 279.5-279.5 385.5-103zm128 1247v-190q0-14-9-23.5t-22-9.5h-192q-13 0-23 10t-10 23v190q0 13 10 23t23 10h192q13 0 22-9.5t9-23.5zm-2-344l18-621q0-12-10-18-10-8-24-8h-220q-14 0-24 8-10 6-10 18l17 621q0 10 10 17.5t24 7.5h185q14 0 23.5-7.5t10.5-17.5z";case"info":return"M1024 1376v-160q0-14-9-23t-23-9h-96v-512q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v160q0 14 9 23t23 9h96v320h-96q-14 0-23 9t-9 23v160q0 14 9 23t23 9h448q14 0 23-9t9-23zm-128-896v-160q0-14-9-23t-23-9h-192q-14 0-23 9t-9 23v160q0 14 9 23t23 9h192q14 0 23-9t9-23zm640 416q0 209-103 385.5t-279.5 279.5-385.5 103-385.5-103-279.5-279.5-103-385.5 103-385.5 279.5-279.5 385.5-103 385.5 103 279.5 279.5 103 385.5z"}}};return Q4.IssueMarkerView=m,Q4.IssueMarkerView=m=f([(0,w.injectable)()],m),Q4}var gy={},mbt;function _wt(){if(mbt)return gy;mbt=1;var f=gy&&gy.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=gy&&gy.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)};Object.defineProperty(gy,"__esModule",{value:!0}),gy.DecorationPlacer=void 0;const b=Zt(),w=Oc(),m=Zye(),P=mh(),g=Xs(),E=Ma(),C=Iy(),T=Sp();let M=class{decorate(I,O){if((0,m.isDecoration)(O)){const j=this.getPosition(O),k="translate("+j.x+", "+j.y+")";(0,P.setAttr)(I,"transform",k)}return I}getPosition(I){if(I instanceof w.SChildElementImpl&&I.parent instanceof E.SRoutableElementImpl){const O=this.edgeRouterRegistry.route(I.parent);if(O.length>1){const j=Math.floor(.5*(O.length-1)),k=(0,g.isSizeable)(I)?{x:-.5*I.bounds.width,y:-.5*I.bounds.width}:T.Point.ORIGIN;return{x:.5*(O[j].x+O[j+1].x)+k.x,y:.5*(O[j].y+O[j+1].y)+k.y}}}return(0,g.isSizeable)(I)?{x:-.666*I.bounds.width,y:-.666*I.bounds.height}:T.Point.ORIGIN}postUpdate(){}};return gy.DecorationPlacer=M,f([(0,b.inject)(C.EdgeRouterRegistry),h("design:type",C.EdgeRouterRegistry)],M.prototype,"edgeRouterRegistry",void 0),gy.DecorationPlacer=M=f([(0,b.injectable)()],M),gy}var El={};class mUt{constructor(h=[],b=vUt){if(this.data=h,this.length=this.data.length,this.compare=b,this.length>0)for(let w=(this.length>>1)-1;w>=0;w--)this._down(w)}push(h){this.data.push(h),this.length++,this._up(this.length-1)}pop(){if(this.length===0)return;const h=this.data[0],b=this.data.pop();return this.length--,this.length>0&&(this.data[0]=b,this._down(0)),h}peek(){return this.data[0]}_up(h){const{data:b,compare:w}=this,m=b[h];for(;h>0;){const P=h-1>>1,g=b[P];if(w(m,g)>=0)break;b[h]=g,h=P}b[h]=m}_down(h){const{data:b,compare:w}=this,m=this.length>>1,P=b[h];for(;h=0)break;b[h]=E,h=g}b[h]=P}}function vUt(f,h){return fh?1:0}const yUt=Object.freeze(Object.defineProperty({__proto__:null,default:mUt},Symbol.toStringTag,{value:"Module"})),Ewt=V0t(yUt);var Za={},vbt;function Swt(){if(vbt)return Za;vbt=1;var f=Za&&Za.__importDefault||function(_){return _&&_.__esModule?_:{default:_}};Object.defineProperty(Za,"__esModule",{value:!0}),Za.intersectionOfSegments=Za.getSegmentIndex=Za.checkWhichSegmentHasRightEndpointFirst=Za.runSweep=Za.Segment=Za.SweepEvent=Za.checkWhichEventIsLeft=Za.addRoute=void 0;const h=f(Ewt),b=PS();function w(_,I,O){if(I.length<1)return;let j=I[0],k;for(let x=0;x0?(H.isLeftEndpoint=!0,R.isLeftEndpoint=!1):(R.isLeftEndpoint=!0,H.isLeftEndpoint=!1),O.push(R),O.push(H),j=k}}Za.addRoute=w;function m(_,I){return _.point.x>I.point.x?1:_.point.xI.point.y?1:-1:1}Za.checkWhichEventIsLeft=m;class P{constructor(I,O,j){this.edgeId=I,this.point=O,this.segmentIndex=j}}Za.SweepEvent=P;class g{constructor(I){this.leftSweepEvent=I,this.rightSweepEvent=I.otherEvent}}Za.Segment=g;function E(_){const I=[],O=new h.default([],C);for(;_.length;){const j=_.pop();if(j?.isLeftEndpoint){const k=new g(j);for(let x=0;xI.rightSweepEvent.point.x?1:_.rightSweepEvent.point.x=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=El&&El.__importDefault||function(_){return _&&_.__esModule?_:{default:_}};Object.defineProperty(El,"__esModule",{value:!0}),El.IntersectionFinder=El.BY_DESCENDING_X_THEN_DESCENDING_Y=El.BY_X_THEN_DESCENDING_Y=El.BY_DESCENDING_X_THEN_Y=El.BY_X_THEN_Y=El.isIntersectingRoutedPoint=void 0;const b=Zt(),w=h(Ewt),m=Swt();function P(_){return _!==void 0&&"intersections"in _&&"kind"in _}El.isIntersectingRoutedPoint=P;const g=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?_.intersectionPoint.y-I.intersectionPoint.y:_.intersectionPoint.x-I.intersectionPoint.x;El.BY_X_THEN_Y=g;const E=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?_.intersectionPoint.y-I.intersectionPoint.y:I.intersectionPoint.x-_.intersectionPoint.x;El.BY_DESCENDING_X_THEN_Y=E;const C=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?I.intersectionPoint.y-_.intersectionPoint.y:_.intersectionPoint.x-I.intersectionPoint.x;El.BY_X_THEN_DESCENDING_Y=C;const T=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?I.intersectionPoint.y-_.intersectionPoint.y:I.intersectionPoint.x-_.intersectionPoint.x;El.BY_DESCENDING_X_THEN_DESCENDING_Y=T;let M=class{apply(I){const O=this.find(I);this.addToRouting(O,I)}find(I){const O=new w.default(void 0,m.checkWhichEventIsLeft);return I.routes.forEach((j,k)=>{this.isSupportedRoute(j)&&(0,m.addRoute)(k,j,O)}),(0,m.runSweep)(O)}isSupportedRoute(I){return I.find(O=>O.kind!=="source"&&O.kind!=="target"&&O.kind!=="linear")===void 0}addToRouting(I,O){for(const j of I){const k=O.get(j.routable1),x=O.get(j.routable2);this.addIntersectionToRoutedPoint(j,k,j.segmentIndex1),this.addIntersectionToRoutedPoint(j,x,j.segmentIndex2)}}addIntersectionToRoutedPoint(I,O,j){if(O&&O.length>j){const k=O[j+1];if(P(k))k.intersections.push(I);else{const x=Object.assign(Object.assign({},k),{intersections:[I]});O[j+1]=x}}}};return El.IntersectionFinder=M,El.IntersectionFinder=M=f([(0,b.injectable)()],M),El}var Z4={},_bt;function Pwt(){if(_bt)return Z4;_bt=1;var f=Z4&&Z4.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(Z4,"__esModule",{value:!0}),Z4.JunctionFinder=void 0;const h=Zt(),b=MA();let w=class{constructor(){this.edgesMap=new Map,this.sourcesMap=new Map,this.targetsMap=new Map}apply(P,g){this.findJunctions(P,g)}findJunctions(P,g){Array.from(g.index.all().filter(C=>C instanceof b.SEdgeImpl)).forEach(C=>{this.edgesMap.set(C.id,C);const T=this.sourcesMap.get(C.sourceId);T?T.add(C.id):this.sourcesMap.set(C.sourceId,new Set([C.id]));const M=this.targetsMap.get(C.targetId);M?M.add(C.id):this.targetsMap.set(C.targetId,new Set([C.id]))}),P.routes.forEach((C,T)=>{const M=this.edgesMap.get(T);M&&(this.findJunctionPointsWithSameSource(M,C,P),this.findJunctionPointsWithSameTarget(M,C,P))})}findJunctionPointsWithSameSource(P,g,E){const C=this.sourcesMap.get(P.sourceId);if(!C)return;const M=Array.from(C).filter(_=>_!==P.id).map(_=>E.get(_)).filter(_=>_!==void 0);for(const _ of M){const I=this.getJunctionIndex(g,_);I===-1||I===0||this.setJunctionPoints(g,_,I)}}findJunctionPointsWithSameTarget(P,g,E){const C=this.targetsMap.get(P.targetId);if(!C)return;const M=Array.from(C).filter(_=>_!==P.id).map(_=>E.get(_)).filter(_=>_!==void 0);g.reverse();for(const _ of M){_.reverse();const I=this.getJunctionIndex(g,_);I===-1||I===0||(this.setJunctionPoints(g,_,I),_.reverse())}g.reverse()}setJunctionPoints(P,g,E){const C=this.getSegmentDirection(P[E-1],P[E]),T=this.getSegmentDirection(g[E-1],g[E]);if(C!==T)this.setPreviousPointAsJunction(P,g,E);else if(C==="left"||C==="right"){if(P[E].y!==g[E].y){this.setPreviousPointAsJunction(P,g,E);return}P[E].isJunction=C==="left"?P[E].x>g[E].x:P[E].xP[E].x:g[E].xg[E].y:P[E].yP[E].y:g[E].y0?"right":"left":C>0?"down":"up"}getJunctionIndex(P,g){let E=0;for(;E=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=by&&by.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(by,"__esModule",{value:!0}),by.JunctionPostProcessor=void 0;const b=Zt(),w=Sp(),m=Qn(),P=CA();let g=class{constructor(){this.isFirstRender=!0}decorate(C,T){return C}postUpdate(C){this.currentModel!==this.modelSource.model&&(this.isFirstRender=!0),C?.kind===w.RequestBoundsAction.KIND&&this.isFirstRender&&(document.querySelectorAll(`#${this.viewerOptions.hiddenDiv} > svg > g > g.sprotty-junction`).forEach(O=>O.remove()),document.querySelectorAll(`#${this.viewerOptions.baseDiv} > svg > g > g.sprotty-junction`).forEach(O=>O.remove()));const T=document.querySelector(`#${this.viewerOptions.hiddenDiv} > svg > g`),M=document.querySelector(`#${this.viewerOptions.baseDiv} > svg > g`);if(T){const _=Array.from(document.querySelectorAll(`#${this.viewerOptions.hiddenDiv} > svg > g > g > g.sprotty-junction`));_.forEach(I=>{I.remove()}),T.append(..._)}if(M){const _=Array.from(document.querySelectorAll(`#${this.viewerOptions.baseDiv} > svg > g > g > g.sprotty-junction`));_.forEach(I=>{I.remove()}),M.append(..._)}this.currentModel=this.modelSource.model,this.isFirstRender=!1}};return by.JunctionPostProcessor=g,f([(0,b.inject)(m.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"viewerOptions",void 0),f([(0,b.inject)(m.TYPES.ModelSource),h("design:type",P.ModelSource)],g.prototype,"modelSource",void 0),by.JunctionPostProcessor=g=f([(0,b.injectable)()],g),by}var el={},Sbt;function yJ(){if(Sbt)return el;Sbt=1;var f=el&&el.__decorate||function(tt,De,ct,Z){var Nt=arguments.length,ii=Nt<3?De:Z===null?Z=Object.getOwnPropertyDescriptor(De,ct):Z,kr;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ii=Reflect.decorate(tt,De,ct,Z);else for(var jo=tt.length-1;jo>=0;jo--)(kr=tt[jo])&&(ii=(Nt<3?kr(ii):Nt>3?kr(De,ct,ii):kr(De,ct))||ii);return Nt>3&&ii&&Object.defineProperty(De,ct,ii),ii},h=el&&el.__metadata||function(tt,De){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(tt,De)},b=el&&el.__param||function(tt,De){return function(ct,Z){De(ct,Z,tt)}},w;Object.defineProperty(el,"__esModule",{value:!0}),el.LocationPostprocessor=el.MoveMouseListener=el.MorphEdgesAnimation=el.MoveAnimation=el.MoveCommand=void 0;const m=Zt(),P=Ac(),g=jc(),E=SA(),C=Ca(),T=Oc(),M=Qh(),_=Qn(),I=Pp(),O=mh(),j=MA(),k=mJ(),x=Xs(),R=dwt(),H=vJ(),F=Yye(),$=Ma(),W=Iy(),re=cN(),ae=Rb(),ce=V3(),J=SS();let te=w=class extends C.MergeableCommand{constructor(De){super(),this.action=De,this.resolvedMoves=new Map,this.edgeMementi=[],this.stoppableCommandKey=w.KIND}stopExecution(){this.animation&&(this.animation.stop(),this.animation=void 0)}execute(De){const ct=De.root.index,Z=new Map,Nt=new Map;return this.action.moves.forEach(ii=>{const kr=ct.getById(ii.elementId);if(kr instanceof $.SRoutingHandleImpl&&this.edgeRouterRegistry){const jo=kr.parent;if(jo instanceof $.SRoutableElementImpl){const Gn=this.resolveHandleMove(kr,jo,ii);if(Gn){let pc=Z.get(jo);pc||(pc=[],Z.set(jo,pc)),pc.push(Gn)}}}else if(kr&&(0,J.isLocateable)(kr)){const jo=this.resolveElementMove(kr,ii);if(jo&&(this.resolvedMoves.set(jo.element.id,jo),this.edgeRouterRegistry)){const Gn=ls=>{ct.getAttachedElements(ls).forEach(Lr=>{if(Lr instanceof $.SRoutableElementImpl&&!this.isChildOfMovedElements(Lr)){const gt=Nt.get(Lr),Xn=P.Point.subtract(jo.toPosition,jo.fromPosition),jn=gt?P.Point.linear(gt,Xn,.5):Xn;Nt.set(Lr,jn)}})},pc=ls=>{(0,T.isParent)(ls)&&ls.children.forEach(Lr=>{Lr instanceof T.SModelElementImpl&&(Lr instanceof $.SConnectableElementImpl&&Gn(Lr),pc(Lr))})};pc(kr),Gn(kr)}}}),this.doMove(Z,Nt),this.action.animate?(this.undoMove(),(this.animation=new E.CompoundAnimation(De.root,De,[new fe(De.root,this.resolvedMoves,De,!1),new ve(De.root,this.edgeMementi,De,!1)])).start()):De.root}resolveHandleMove(De,ct,Z){let Nt=Z.fromPosition;if(!Nt){const ii=this.edgeRouterRegistry.get(ct.routerKind);Nt=ii.getHandlePosition(ct,ii.route(ct),De)}if(Nt)return{handle:De,fromPosition:Nt,toPosition:Z.toPosition}}resolveElementMove(De,ct){const Z=ct.fromPosition||{x:De.position.x,y:De.position.y};return{element:De,fromPosition:Z,toPosition:ct.toPosition}}doMove(De,ct){this.resolvedMoves.forEach(Z=>{Z.element.position=Z.toPosition}),De.forEach((Z,Nt)=>{const ii=this.edgeRouterRegistry.get(Nt.routerKind),kr=ii.takeSnapshot(Nt);ii.applyHandleMoves(Nt,Z);const jo=ii.takeSnapshot(Nt);this.edgeMementi.push({edge:Nt,before:kr,after:jo})}),ct.forEach((Z,Nt)=>{if(!De.get(Nt)){const ii=this.edgeRouterRegistry.get(Nt.routerKind),kr=ii.takeSnapshot(Nt);if(this.isAttachedEdge(Nt))Nt.routingPoints=Nt.routingPoints.map(Gn=>P.Point.add(Gn,Z));else{const Gn=(0,ae.isSelectable)(Nt)&&Nt.selected;ii.cleanupRoutingPoints(Nt,Nt.routingPoints,Gn,this.action.finished)}const jo=ii.takeSnapshot(Nt);this.edgeMementi.push({edge:Nt,before:kr,after:jo})}})}isChildOfMovedElements(De){const ct=De.parent;return Array.from(this.resolvedMoves.values()).map(Z=>Z.element.id).includes(ct.id)?!0:ct instanceof T.SChildElementImpl?this.isChildOfMovedElements(ct):!1}isAttachedEdge(De){const ct=De.source,Z=De.target,Nt=ii=>!!this.resolvedMoves.get(ii.id)||this.isChildOfMovedElements(ii);return!!(ct&&Z&&Nt(ct)&&Nt(Z))}undoMove(){this.resolvedMoves.forEach(De=>{De.element.position=De.fromPosition}),this.edgeMementi.forEach(De=>{this.edgeRouterRegistry.get(De.edge.routerKind).applySnapshot(De.edge,De.before)})}undo(De){return new E.CompoundAnimation(De.root,De,[new fe(De.root,this.resolvedMoves,De,!0),new ve(De.root,this.edgeMementi,De,!0)]).start()}redo(De){return new E.CompoundAnimation(De.root,De,[new fe(De.root,this.resolvedMoves,De,!1),new ve(De.root,this.edgeMementi,De,!1)]).start()}merge(De,ct){if(!this.action.animate&&De instanceof w)return De.resolvedMoves.forEach((Z,Nt)=>{const ii=this.resolvedMoves.get(Nt);ii?ii.toPosition=Z.toPosition:this.resolvedMoves.set(Nt,Z)}),De.edgeMementi.forEach(Z=>{const Nt=this.edgeMementi.find(ii=>ii.edge.id===Z.edge.id);Nt?Nt.after=Z.after:this.edgeMementi.push(Z)}),!0;if(De instanceof F.ReconnectCommand){const Z=De.memento;if(Z){const Nt=this.edgeMementi.find(ii=>ii.edge.id===Z.edge.id);Nt?Nt.after=Z.after:this.edgeMementi.push(Z)}return!0}return!1}};el.MoveCommand=te,te.KIND=g.MoveAction.KIND,f([(0,m.inject)(W.EdgeRouterRegistry),(0,m.optional)(),h("design:type",W.EdgeRouterRegistry)],te.prototype,"edgeRouterRegistry",void 0),el.MoveCommand=te=w=f([(0,m.injectable)(),b(0,(0,m.inject)(_.TYPES.Action)),h("design:paramtypes",[Object])],te);class fe extends E.Animation{constructor(De,ct,Z,Nt=!1){super(Z),this.model=De,this.elementMoves=ct,this.reverse=Nt}tween(De){return this.elementMoves.forEach(ct=>{this.reverse?ct.element.position={x:(1-De)*ct.toPosition.x+De*ct.fromPosition.x,y:(1-De)*ct.toPosition.y+De*ct.fromPosition.y}:ct.element.position={x:(1-De)*ct.fromPosition.x+De*ct.toPosition.x,y:(1-De)*ct.fromPosition.y+De*ct.toPosition.y}}),this.model}}el.MoveAnimation=fe;class ve extends E.Animation{constructor(De,ct,Z,Nt=!1){super(Z),this.model=De,this.reverse=Nt,this.expanded=[],ct.forEach(ii=>{const kr=this.reverse?ii.after:ii.before,jo=this.reverse?ii.before:ii.after,Gn=kr.routedPoints,pc=jo.routedPoints,ls=Math.max(Gn.length,pc.length);this.expanded.push({startExpandedRoute:this.growToSize(Gn,ls),endExpandedRoute:this.growToSize(pc,ls),memento:ii})})}midPoint(De){const ct=De.edge,Z=De.edge.source,Nt=De.edge.target;return P.Point.linear((0,M.translatePoint)(P.Bounds.center(Z.bounds),Z.parent,ct.parent),(0,M.translatePoint)(P.Bounds.center(Nt.bounds),Nt.parent,ct.parent),.5)}start(){return this.expanded.forEach(De=>{De.memento.edge.removeAll(ct=>ct instanceof $.SRoutingHandleImpl)}),super.start()}tween(De){return De===1?this.expanded.forEach(ct=>{const Z=ct.memento;this.reverse?Z.before.router.applySnapshot(Z.edge,Z.before):Z.after.router.applySnapshot(Z.edge,Z.after)}):this.expanded.forEach(ct=>{const Z=[];for(let kr=1;kr(jo+ls)*ii;)++ls;jo+=ls;for(let Lr=0;Lr(0,ae.isSelectable)(Z)&&Z.selected));ct.forEach(Z=>{if(!this.isChildOfSelected(ct,Z)){if((0,J.isMoveable)(Z))this.elementId2startPos.set(Z.id,Z.position);else if(Z instanceof $.SRoutingHandleImpl){const Nt=this.getHandlePosition(Z);Nt&&this.elementId2startPos.set(Z.id,Nt)}}})}isChildOfSelected(De,ct){for(;ct instanceof T.SChildElementImpl;)if(ct=ct.parent,(0,J.isMoveable)(ct)&&De.has(ct))return!0;return!1}getElementMoves(De,ct,Z){if(!this.startDragPosition)return;const Nt=[],ii=(0,M.findParentByFeature)(De,ce.isViewport),kr=ii?ii.zoom:1,jo={x:(ct.pageX-this.startDragPosition.x)/kr,y:(ct.pageY-this.startDragPosition.y)/kr};if(this.elementId2startPos.forEach((Gn,pc)=>{const ls=De.root.index.getById(pc);if(ls){const Lr=this.createElementMove(ls,Gn,jo,ct);Lr&&Nt.push(Lr)}}),Nt.length>0)return g.MoveAction.create(Nt,{animate:!1,finished:Z})}createElementMove(De,ct,Z,Nt){const ii=this.snap({x:ct.x+Z.x,y:ct.y+Z.y},De,!Nt.shiftKey);if((0,J.isMoveable)(De))return{elementId:De.id,elementType:De.type,fromPosition:{x:De.position.x,y:De.position.y},toPosition:ii};if(De instanceof $.SRoutingHandleImpl){const kr=this.getHandlePosition(De);if(kr!==void 0)return{elementId:De.id,elementType:De.type,fromPosition:kr,toPosition:ii}}}snap(De,ct,Z){return Z&&this.snapper?this.snapper.snap(De,ct):De}getHandlePosition(De){if(this.edgeRouterRegistry){const ct=De.parent;if(!(ct instanceof $.SRoutableElementImpl))return;const Z=this.edgeRouterRegistry.get(ct.routerKind),Nt=Z.route(ct);return Z.getHandlePosition(ct,Nt,De)}}mouseEnter(De,ct){return De instanceof T.SModelRootImpl&&ct.buttons===0&&!this.startDragPosition&&this.mouseUp(De,ct),[]}mouseUp(De,ct){const Z=[];if(this.startDragPosition){const Nt=this.getElementMoves(De,ct,!0);Nt&&Z.push(Nt),De.root.index.all().forEach(ii=>{ii instanceof $.SRoutingHandleImpl&&Z.push(...this.deactivateRoutingHandle(ii,De,ct))})}if(!Z.some(Nt=>Nt.kind===g.ReconnectAction.KIND)){const Nt=De.root.index.getById($.edgeInProgressID);Nt instanceof T.SChildElementImpl&&Z.push(this.deleteEdgeInProgress(Nt))}return this.hasDragged&&Z.push(k.CommitModelAction.create()),this.hasDragged=!1,this.startDragPosition=void 0,this.elementId2startPos.clear(),Z}deactivateRoutingHandle(De,ct,Z){const Nt=[],ii=De.parent;if(ii instanceof $.SRoutableElementImpl&&De.danglingAnchor){const kr=this.getHandlePosition(De);if(kr){const jo=(0,M.translatePoint)(kr,De.parent,De.root),Gn=(0,x.findChildrenAtPosition)(ct.root,jo).find(pc=>(0,$.isConnectable)(pc)&&pc.canConnect(ii,De.kind));Gn&&this.hasDragged&&Nt.push(g.ReconnectAction.create({routableId:De.parent.id,newSourceId:De.kind==="source"?Gn.id:ii.sourceId,newTargetId:De.kind==="target"?Gn.id:ii.targetId}))}}return De.editMode&&Nt.push(H.SwitchEditModeAction.create({elementsToDeactivate:[De.id]})),Nt}deleteEdgeInProgress(De){const ct=[];return ct.push($.edgeInProgressID),De.children.forEach(Z=>{Z instanceof $.SRoutingHandleImpl&&Z.danglingAnchor&&ct.push(Z.danglingAnchor.id)}),g.DeleteElementAction.create(ct)}decorate(De,ct){return De}}el.MoveMouseListener=me,f([(0,m.inject)(W.EdgeRouterRegistry),(0,m.optional)(),h("design:type",W.EdgeRouterRegistry)],me.prototype,"edgeRouterRegistry",void 0),f([(0,m.inject)(_.TYPES.ISnapper),(0,m.optional)(),h("design:type",Object)],me.prototype,"snapper",void 0);let ke=class{decorate(De,ct){if((0,re.isEdgeLayoutable)(ct)&&ct.parent instanceof j.SEdgeImpl)return De;let Z="";if((0,J.isLocateable)(ct)&&ct instanceof T.SChildElementImpl&&ct.parent!==void 0){const Nt=ct.position;(Nt.x!==0||Nt.y!==0)&&(Z="translate("+Nt.x+", "+Nt.y+")")}if((0,x.isAlignable)(ct)){const Nt=ct.alignment;(Nt.x!==0||Nt.y!==0)&&(Z.length>0&&(Z+=" "),Z+="translate("+Nt.x+", "+Nt.y+")")}return Z.length>0&&(0,O.setAttr)(De,"transform",Z),De}postUpdate(){}};return el.LocationPostprocessor=ke,el.LocationPostprocessor=ke=f([(0,m.injectable)()],ke),el}var eS={},Pbt;function _Ut(){if(Pbt)return eS;Pbt=1;var f=eS&&eS.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(eS,"__esModule",{value:!0}),eS.CenterGridSnapper=void 0;const h=Zt(),b=Xs();let w=class{get gridX(){return 10}get gridY(){return 10}snap(P,g){return g&&(0,b.isBoundsAware)(g)?{x:Math.round((P.x+.5*g.bounds.width)/this.gridX)*this.gridX-.5*g.bounds.width,y:Math.round((P.y+.5*g.bounds.height)/this.gridY)*this.gridY-.5*g.bounds.height}:{x:Math.round(P.x/this.gridX)*this.gridX,y:Math.round(P.y/this.gridY)*this.gridY}}};return eS.CenterGridSnapper=w,eS.CenterGridSnapper=w=f([(0,h.injectable)()],w),eS}var SL={},yve={},Mbt;function Cwt(){return Mbt||(Mbt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isOpenable=f.openFeature=void 0,f.openFeature=Symbol("openFeature");function h(b){return b.hasFeature(f.openFeature)}f.isOpenable=h})(yve)),yve}var Cbt;function Iwt(){if(Cbt)return SL;Cbt=1,Object.defineProperty(SL,"__esModule",{value:!0}),SL.OpenMouseListener=void 0;const f=jc(),h=Pp(),b=Qh(),w=Cwt();class m extends h.MouseListener{doubleClick(g,E){const C=(0,b.findParentByFeature)(g,w.isOpenable);return C!==void 0?[f.OpenAction.create(C.id)]:[]}}return SL.OpenMouseListener=m,SL}var bm={},Ibt;function t2e(){if(Ibt)return bm;Ibt=1,Object.defineProperty(bm,"__esModule",{value:!0}),bm.getModelBounds=bm.getProjectedBounds=bm.getProjections=bm.isProjectable=void 0;const f=Ac(),h=_S(),b=Qh(),w=Xs();function m(T){return(0,h.hasOwnProperty)(T,"projectionCssClasses")}bm.isProjectable=m;function P(T){let M;for(const _ of T.children){if(m(_)&&_.projectionCssClasses.length>0){const I=g(_);if(I){const O={elementId:_.id,projectedBounds:I,cssClasses:_.projectionCssClasses};M?M.push(O):M=[O]}}if(_.children.length>0){const I=P(_);I&&(M?M.push(...I):M=I)}}return M}bm.getProjections=P;function g(T){const M=T.parent;if(T.projectedBounds){let _=T.projectedBounds;return(0,w.isBoundsAware)(M)&&(_=(0,b.transformToRootBounds)(M,_)),_}else if((0,w.isBoundsAware)(T)){let _=T.bounds;return _=(0,b.transformToRootBounds)(M,_),_}}bm.getProjectedBounds=g;const E=1e9;function C(T){let M=E,_=E,I=-E,O=-E;const j=(0,w.isBoundsAware)(T)?T.bounds:void 0;if(j&&f.Dimension.isValid(j))M=j.x,_=j.y,I=M+j.width,O=_+j.height;else for(const k of T.children)if((0,w.isBoundsAware)(k)){const x=k.bounds;M=Math.min(M,x.x),_=Math.min(_,x.y),I=Math.max(I,x.x+x.width),O=Math.max(O,x.y+x.height)}if(M=Math.min(M,T.scroll.x),_=Math.min(_,T.scroll.y),I=Math.max(I,T.scroll.x+T.canvasBounds.width/T.zoom),O=Math.max(O,T.scroll.y+T.canvasBounds.height/T.zoom),M=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I};Object.defineProperty(tS,"__esModule",{value:!0}),tS.ProjectedViewportView=void 0;const h=Cy(),b=Zt(),w=nN,m=mh(),P=t2e();let g=class{render(C,T,M){const _=(0,h.html)("div",{"class-sprotty-root":!0},this.renderSvg(C,T,M),this.renderProjections(C,T,M));return(0,m.setAttr)(_,"tabindex",0),_}renderSvg(C,T,M){const _=`scale(${C.zoom}) translate(${-C.scroll.x},${-C.scroll.y})`,I="http://www.w3.org/2000/svg";return(0,w.h)("svg",{ns:I},(0,w.h)("g",{ns:I,attrs:{transform:_}},T.renderChildren(C)))}renderProjections(C,T,M){var _;if(C.zoom<=0)return[];const I=(0,P.getModelBounds)(C);if(!I)return[];const O=(_=(0,P.getProjections)(C))!==null&&_!==void 0?_:[];return[this.renderProjectionBar(O,C,I,"vertical"),this.renderProjectionBar(O,C,I,"horizontal")]}renderProjectionBar(C,T,M,_){const I={modelBounds:M,orientation:_};return I.factor=_==="horizontal"?T.canvasBounds.width/M.width:T.canvasBounds.height/M.height,I.zoomedFactor=I.factor/T.zoom,(0,h.html)("div",{"class-sprotty-projection-bar":!0,"class-horizontal":_==="horizontal","class-vertical":_==="vertical"},this.renderViewport(T,I),C.map(O=>this.renderProjection(O,T,I)))}renderViewport(C,T){let M,_;T.orientation==="horizontal"?(M=C.canvasBounds.width,_=(C.scroll.x-T.modelBounds.x)*T.factor):(M=C.canvasBounds.height,_=(C.scroll.y-T.modelBounds.y)*T.factor);let I=M*T.zoomedFactor;_<0?(I+=_,_=0):_>M&&(_=M),I<0?I=0:_+I>M&&(I=M-_);const O=T.orientation==="horizontal"?{left:`${_}px`,width:`${I}px`}:{top:`${_}px`,height:`${I}px`};return(0,h.html)("div",{"class-sprotty-viewport":!0,style:O})}renderProjection(C,T,M){let _,I,O;M.orientation==="horizontal"?(_=T.canvasBounds.width,I=(C.projectedBounds.x-M.modelBounds.x)*M.factor,O=C.projectedBounds.width*M.factor):(_=T.canvasBounds.height,I=(C.projectedBounds.y-M.modelBounds.y)*M.factor,O=C.projectedBounds.height*M.factor),I<0?(O+=I,I=0):I>_&&(I=_),O<0?O=0:I+O>_&&(O=_-I);const j=M.orientation==="horizontal"?{left:`${I}px`,width:`${O}px`}:{top:`${I}px`,height:`${O}px`},k=(0,h.html)("div",{id:`${M.orientation}-projection:${C.elementId}`,"class-sprotty-projection":!0,style:j});return C.cssClasses.forEach(x=>(0,m.setClass)(k,x,!0)),k}};return tS.ProjectedViewportView=g,tS.ProjectedViewportView=g=f([(0,b.injectable)()],g),tS}var hg={},dg={},jbt;function n2e(){if(jbt)return dg;jbt=1;var f=dg&&dg.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k};Object.defineProperty(dg,"__esModule",{value:!0}),dg.DiamondAnchor=dg.RectangleAnchor=dg.EllipseAnchor=void 0;const h=MS(),b=PS(),w=Zt(),m=wJ(),P=Ac();let g=class{get kind(){return m.PolylineEdgeRouter.KIND+":"+h.ELLIPTIC_ANCHOR_KIND}getAnchor(_,I,O=0){const j=_.bounds,k=P.Bounds.center(j),x=k.x-I.x,R=k.y-I.y,H=Math.sqrt(x*x+R*R),F=x/H||0,$=R/H||0;return{x:k.x-F*(.5*j.width+O),y:k.y-$*(.5*j.height+O)}}};dg.EllipseAnchor=g,dg.EllipseAnchor=g=f([(0,w.injectable)()],g);let E=class{get kind(){return m.PolylineEdgeRouter.KIND+":"+h.RECTANGULAR_ANCHOR_KIND}getAnchor(_,I,O=0){const j=_.bounds,k=P.Bounds.center(j),x=new C(k,I);if(!(0,P.almostEquals)(k.y,I.y)){const R=this.getXIntersection(j.y,k,I);R>=j.x&&R<=j.x+j.width&&x.addCandidate(R,j.y-O);const H=this.getXIntersection(j.y+j.height,k,I);H>=j.x&&H<=j.x+j.width&&x.addCandidate(H,j.y+j.height+O)}if(!(0,P.almostEquals)(k.x,I.x)){const R=this.getYIntersection(j.x,k,I);R>=j.y&&R<=j.y+j.height&&x.addCandidate(j.x-O,R);const H=this.getYIntersection(j.x+j.width,k,I);H>=j.y&&H<=j.y+j.height&&x.addCandidate(j.x+j.width+O,H)}return x.best}getXIntersection(_,I,O){const j=(_-I.y)/(O.y-I.y);return(O.x-I.x)*j+I.x}getYIntersection(_,I,O){const j=(_-I.x)/(O.x-I.x);return(O.y-I.y)*j+I.y}};dg.RectangleAnchor=E,dg.RectangleAnchor=E=f([(0,w.injectable)()],E);class C{constructor(_,I){this.centerPoint=_,this.refPoint=I,this.currentDist=-1}addCandidate(_,I){const O=this.refPoint.x-_,j=this.refPoint.y-I,k=O*O+j*j;(this.currentDist<0||k=0;ae--)(re=x[ae])&&(W=($<3?re(W):$>3?re(R,H,W):re(R,H))||W);return $>3&&W&&Object.defineProperty(R,H,W),W},h=of&&of.__metadata||function(x,R){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(x,R)},b=of&&of.__param||function(x,R){return function(H,F){R(H,F,x)}},w;Object.defineProperty(of,"__esModule",{value:!0}),of.AddRemoveBezierSegmentCommand=of.AddRemoveBezierSegmentAction=of.BezierMouseListener=of.BezierEdgeRouter=void 0;const m=Zt(),P=Ac(),g=Ma(),E=Iy(),C=pJ(),T=Pp(),M=Ca(),_=Qn();let I=w=class extends C.AbstractEdgeRouter{get kind(){return w.KIND}route(R){if(!R.source||!R.target)return[];const H=R.routingPoints.length,F=R.source,$=R.target,W=[];if(W.push({kind:"source",x:0,y:0}),H===0){const[te,fe]=this.createDefaultBezierHandles(F.position,$.position);W.push({kind:"bezier-control-after",x:te.x,y:te.y,pointIndex:0}),W.push({kind:"bezier-control-before",x:fe.x,y:fe.y,pointIndex:1}),R.routingPoints.push(te),R.routingPoints.push(fe)}else if(H>=2)for(let te=0;te2?R.routingPoints[2]:$.position,ae=H>2?R.routingPoints[R.routingPoints.length-3]:F.position,ce=this.getTranslatedAnchor(F,re,$.parent,R,R.sourceAnchorCorrection),J=this.getTranslatedAnchor($,ae,F.parent,R,R.targetAnchorCorrection);return W[0]={kind:"source",x:ce.x,y:ce.y},W[W.length-1]={kind:"target",x:J.x,y:J.y},W}createDefaultBezierHandles(R,H){const F={x:R.x-w.DEFAULT_BEZIER_HANDLE_OFFSET,y:R.y},$={x:H.x+w.DEFAULT_BEZIER_HANDLE_OFFSET,y:H.y};return[F,$]}createRoutingHandles(R){this.route(R),this.rebuildHandles(R)}rebuildHandles(R){this.addHandle(R,"source","routing-point",-2),this.addHandle(R,"bezier-control-after","bezier-routing-point",0),this.addHandle(R,"bezier-add","bezier-create-routing-point",0);const H=R.routingPoints.length;if(H>2)for(let F=1;F0){for(const W of H)if(W.pointIndex!==void 0&&W.pointIndex===F&&W.kind==="bezier-junction"){$={x:W.x,y:W.y};break}}return $}applyHandleMoves(R,H){H.forEach(F=>{const $=F.handle;let W={x:0,y:0},re,ae,ce;const J=F.toPosition;switch($.kind){case"bezier-control-before":case"bezier-control-after":this.moveBezierControlPair(J,F.handle.pointIndex,R);break;case"bezier-junction":const te=$.pointIndex;te>=0&&teJ instanceof g.SRoutingHandleImpl),this.rebuildHandles(H)}removeBezierSegment(R,H){H.routingPoints.splice(R-1,3),H.removeAll($=>$ instanceof g.SRoutingHandleImpl),this.rebuildHandles(H)}moveBezierControlPair(R,H,F){if(H>=0&&H=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O};Object.defineProperty(hg,"__esModule",{value:!0}),hg.BezierDiamondAnchor=hg.BezierRectangleAnchor=hg.BezierEllipseAnchor=void 0;const h=MS(),b=Zt(),w=n2e(),m=i2e();let P=class extends w.EllipseAnchor{get kind(){return m.BezierEdgeRouter.KIND+":"+h.ELLIPTIC_ANCHOR_KIND}};hg.BezierEllipseAnchor=P,hg.BezierEllipseAnchor=P=f([(0,b.injectable)()],P);let g=class extends w.RectangleAnchor{get kind(){return m.BezierEdgeRouter.KIND+":"+h.RECTANGULAR_ANCHOR_KIND}};hg.BezierRectangleAnchor=g,hg.BezierRectangleAnchor=g=f([(0,b.injectable)()],g);let E=class extends w.DiamondAnchor{get kind(){return m.BezierEdgeRouter.KIND+":"+h.DIAMOND_ANCHOR_KIND}};return hg.BezierDiamondAnchor=E,hg.BezierDiamondAnchor=E=f([(0,b.injectable)()],E),hg}var gg={},PL={},Dbt;function r2e(){if(Dbt)return PL;Dbt=1,Object.defineProperty(PL,"__esModule",{value:!0}),PL.ManhattanEdgeRouter=void 0;const f=Ac(),h=Qh(),b=pJ(),w=Ma();class m extends b.AbstractEdgeRouter{get kind(){return m.KIND}getOptions(g){return{standardDistance:20,minimalPointDistance:3,selfEdgeOffset:.25}}route(g){if(!g.source||!g.target)return[];const E=this.createRoutedCorners(g),C=E[0]||(0,h.translatePoint)(f.Bounds.center(g.target.bounds),g.target.parent,g.parent),T=this.getTranslatedAnchor(g.source,C,g.parent,g,g.sourceAnchorCorrection),M=E[E.length-1]||(0,h.translatePoint)(f.Bounds.center(g.source.bounds),g.source.parent,g.parent),_=this.getTranslatedAnchor(g.target,M,g.parent,g,g.targetAnchorCorrection);if(!T||!_)return[];const I=[];return I.push(Object.assign({kind:"source"},T)),E.forEach(O=>I.push(O)),I.push(Object.assign({kind:"target"},_)),I}createRoutedCorners(g){const E=new b.DefaultAnchors(g.source,g.parent,"source"),C=new b.DefaultAnchors(g.target,g.parent,"target");if(g.routingPoints.length>0){const _=g.routingPoints.slice();if(this.cleanupRoutingPoints(g,_,!1,!0),_.length>0)return _.map((I,O)=>Object.assign({kind:"linear",pointIndex:O},I))}const T=this.getOptions(g);return this.calculateDefaultCorners(g,E,C,T).map(_=>Object.assign({kind:"linear"},_))}createRoutingHandles(g){const E=this.route(g);if(this.commitRoute(g,E),E.length>0){this.addHandle(g,"source","routing-point",-2);for(let C=0;C{const I=_.handle,O=I.pointIndex,j=this.correctX(T,O,_.toPosition.x,M),k=this.correctY(T,O,_.toPosition.y,M);I.kind==="manhattan-50%"&&(O<0?T.length===0?(T.push({x:j,y:k}),I.pointIndex=0):(0,f.almostEquals)(C[0].x,C[1].x)?this.alignX(T,0,j):this.alignY(T,0,k):O0&&Math.abs(C-g[E-1].x)=0&&E0&&Math.abs(C-g[E-1].y)=0&&E=0&&f.Bounds.includes(_.bounds,E[I]);--I)E.splice(I,1),C&&this.removeHandle(g,I);if(E.length>=2){const I=this.getOptions(g);for(let O=E.length-2;O>=0;--O)f.Point.manhattanDistance(E[O],E[O+1]){T instanceof w.SRoutingHandleImpl&&(T.pointIndex>E?--T.pointIndex:T.pointIndex===E&&C.push(T))}),C.forEach(T=>g.remove(T))}addAdditionalCorner(g,E,C,T,M){if(E.length===0)return;const _=C.kind==="source"?E[0]:E[E.length-1],I=C.kind==="source"?0:E.length,O=I-(C.kind==="source"?1:0);let j;if(E.length>1)j=I===0?(0,f.almostEquals)(E[0].x,E[1].x):(0,f.almostEquals)(E[E.length-1].x,E[E.length-2].x);else{const k=T.getNearestSide(_);j=k===b.Side.TOP||k===b.Side.BOTTOM}if(j){if(_.yC.get(b.Side.BOTTOM).y){const k={x:C.get(b.Side.TOP).x,y:_.y};E.splice(I,0,k),M&&(g.children.forEach(x=>{x instanceof w.SRoutingHandleImpl&&x.pointIndex>=O&&++x.pointIndex}),this.addHandle(g,"manhattan-50%","volatile-routing-point",O))}}else if(_.xC.get(b.Side.RIGHT).x){const k={x:_.x,y:C.get(b.Side.LEFT).y};E.splice(I,0,k),M&&(g.children.forEach(x=>{x instanceof w.SRoutingHandleImpl&&x.pointIndex>=O&&++x.pointIndex}),this.addHandle(g,"manhattan-50%","volatile-routing-point",O))}}manhattanify(g,E){for(let C=1;C0)return M;const _=this.getBestConnectionAnchors(g,E,C,T),I=_.source,O=_.target,j=[],k=E.get(I);let x=C.get(O);switch(I){case b.Side.RIGHT:switch(O){case b.Side.BOTTOM:j.push({x:x.x,y:k.y});break;case b.Side.TOP:j.push({x:x.x,y:k.y});break;case b.Side.RIGHT:j.push({x:Math.max(k.x,x.x)+1.5*T.standardDistance,y:k.y}),j.push({x:Math.max(k.x,x.x)+1.5*T.standardDistance,y:x.y});break;case b.Side.LEFT:x.y!==k.y&&(j.push({x:(k.x+x.x)/2,y:k.y}),j.push({x:(k.x+x.x)/2,y:x.y}));break}break;case b.Side.LEFT:switch(O){case b.Side.BOTTOM:j.push({x:x.x,y:k.y});break;case b.Side.TOP:j.push({x:x.x,y:k.y});break;default:x=C.get(b.Side.RIGHT),x.y!==k.y&&(j.push({x:(k.x+x.x)/2,y:k.y}),j.push({x:(k.x+x.x)/2,y:x.y}));break}break;case b.Side.TOP:switch(O){case b.Side.RIGHT:x.x-k.x>0?(j.push({x:k.x,y:k.y-T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:k.y-T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;case b.Side.LEFT:x.x-k.x<0?(j.push({x:k.x,y:k.y-T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:k.y-T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;case b.Side.TOP:j.push({x:k.x,y:Math.min(k.y,x.y)-1.5*T.standardDistance}),j.push({x:x.x,y:Math.min(k.y,x.y)-1.5*T.standardDistance});break;case b.Side.BOTTOM:x.x!==k.x&&(j.push({x:k.x,y:(k.y+x.y)/2}),j.push({x:x.x,y:(k.y+x.y)/2}));break}break;case b.Side.BOTTOM:switch(O){case b.Side.RIGHT:x.x-k.x>0?(j.push({x:k.x,y:k.y+T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:k.y+T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;case b.Side.LEFT:x.x-k.x<0?(j.push({x:k.x,y:k.y+T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:k.y+T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;default:x=C.get(b.Side.TOP),x.x!==k.x&&(j.push({x:k.x,y:(k.y+x.y)/2}),j.push({x:x.x,y:(k.y+x.y)/2}));break}break}return j}getBestConnectionAnchors(g,E,C,T){let M=E.get(b.Side.RIGHT),_=C.get(b.Side.LEFT);if(_.x-M.x>T.standardDistance)return{source:b.Side.RIGHT,target:b.Side.LEFT};if(M=E.get(b.Side.LEFT),_=C.get(b.Side.RIGHT),M.x-_.x>T.standardDistance)return{source:b.Side.LEFT,target:b.Side.RIGHT};if(M=E.get(b.Side.TOP),_=C.get(b.Side.BOTTOM),M.y-_.y>T.standardDistance)return{source:b.Side.TOP,target:b.Side.BOTTOM};if(M=E.get(b.Side.BOTTOM),_=C.get(b.Side.TOP),_.y-M.y>T.standardDistance)return{source:b.Side.BOTTOM,target:b.Side.TOP};if(M=E.get(b.Side.RIGHT),_=C.get(b.Side.TOP),_.x-M.x>.5*T.standardDistance&&_.y-M.y>T.standardDistance)return{source:b.Side.RIGHT,target:b.Side.TOP};if(_=C.get(b.Side.BOTTOM),_.x-M.x>.5*T.standardDistance&&M.y-_.y>T.standardDistance)return{source:b.Side.RIGHT,target:b.Side.BOTTOM};if(M=E.get(b.Side.LEFT),_=C.get(b.Side.BOTTOM),M.x-_.x>.5*T.standardDistance&&M.y-_.y>T.standardDistance)return{source:b.Side.LEFT,target:b.Side.BOTTOM};if(_=C.get(b.Side.TOP),M.x-_.x>.5*T.standardDistance&&_.y-M.y>T.standardDistance)return{source:b.Side.LEFT,target:b.Side.TOP};if(M=E.get(b.Side.TOP),_=C.get(b.Side.RIGHT),M.y-_.y>.5*T.standardDistance&&M.x-_.x>T.standardDistance)return{source:b.Side.TOP,target:b.Side.RIGHT};if(_=C.get(b.Side.LEFT),M.y-_.y>.5*T.standardDistance&&_.x-M.x>T.standardDistance)return{source:b.Side.TOP,target:b.Side.LEFT};if(M=E.get(b.Side.BOTTOM),_=C.get(b.Side.RIGHT),_.y-M.y>.5*T.standardDistance&&M.x-_.x>T.standardDistance)return{source:b.Side.BOTTOM,target:b.Side.RIGHT};if(_=C.get(b.Side.LEFT),_.y-M.y>.5*T.standardDistance&&_.x-M.x>T.standardDistance)return{source:b.Side.BOTTOM,target:b.Side.LEFT};if(M=E.get(b.Side.TOP),_=C.get(b.Side.TOP),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)){if(M.y-_.y<0){if(Math.abs(M.x-_.x)>(E.bounds.width+T.standardDistance)/2)return{source:b.Side.TOP,target:b.Side.TOP}}else if(Math.abs(M.x-_.x)>C.bounds.width/2)return{source:b.Side.TOP,target:b.Side.TOP}}if(M=E.get(b.Side.RIGHT),_=C.get(b.Side.RIGHT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)){if(M.x-_.x>0){if(Math.abs(M.y-_.y)>(E.bounds.height+T.standardDistance)/2)return{source:b.Side.RIGHT,target:b.Side.RIGHT}}else if(Math.abs(M.y-_.y)>C.bounds.height/2)return{source:b.Side.RIGHT,target:b.Side.RIGHT}}return M=E.get(b.Side.TOP),_=C.get(b.Side.RIGHT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.TOP,target:b.Side.RIGHT}:(_=C.get(b.Side.LEFT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.TOP,target:b.Side.LEFT}:(M=E.get(b.Side.BOTTOM),_=C.get(b.Side.RIGHT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.BOTTOM,target:b.Side.RIGHT}:(_=C.get(b.Side.LEFT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.BOTTOM,target:b.Side.LEFT}:{source:b.Side.RIGHT,target:b.Side.BOTTOM})))}}return PL.ManhattanEdgeRouter=m,m.KIND="manhattan",PL}var kbt;function jwt(){if(kbt)return gg;kbt=1;var f=gg&&gg.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h,b,w;Object.defineProperty(gg,"__esModule",{value:!0}),gg.ManhattanEllipticAnchor=gg.ManhattanDiamondAnchor=gg.ManhattanRectangularAnchor=void 0;const m=Ac(),P=PS(),g=MS(),E=r2e(),C=Zt();let T=h=class{get kind(){return h.KIND}getAnchor(O,j,k){const x=O.bounds;if(x.width<=0||x.height<=0)return x;const R={x:x.x-k,y:x.y-k,width:x.width+2*k,height:x.height+2*k};return j.x>=R.x&&R.x+R.width>=j.x?j.y=R.y&&R.y+R.height>=j.y?j.x=R.x&&j.x<=R.x+R.width?R.x+.5*R.width>=j.x?($=new P.PointToPointLine(j,{x:j.x,y:H.y}),j.y=R.y&&j.y<=R.y+R.height&&(R.y+.5*R.height>=j.y?($=new P.PointToPointLine(j,{x:H.x,y:j.y}),j.x=R.x&&R.x+R.width>=j.x){$+=F.x;const re=.5*R.height*Math.sqrt(1-F.x*F.x/(.25*R.width*R.width));F.y<0?W-=re:W+=re}else if(j.y>=R.y&&R.y+R.height>=j.y){W+=F.y;const re=.5*R.width*Math.sqrt(1-F.y*F.y/(.25*R.height*R.height));F.x<0?$-=re:$+=re}return{x:$,y:W}}};return gg.ManhattanEllipticAnchor=_,_.KIND=E.ManhattanEdgeRouter.KIND+":"+g.ELLIPTIC_ANCHOR_KIND,gg.ManhattanEllipticAnchor=_=w=f([(0,C.injectable)()],_),gg}var nS={},Rbt;function Awt(){if(Rbt)return nS;Rbt=1;var f=nS&&nS.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(nS,"__esModule",{value:!0}),nS.RoutableView=void 0;const h=Zt(),b=Ma();let w=class{isVisible(P,g,E){if(E.targetKind==="hidden"||g.length===0)return!0;const C=(0,b.getAbsoluteRouteBounds)(P,g),T=P.root.canvasBounds;return C.x<=T.width&&C.x+C.width>=0&&C.y<=T.height&&C.y+C.height>=0}};return nS.RoutableView=w,nS.RoutableView=w=f([(0,h.injectable)()],w),nS}var Pa={},py={},xbt;function Owt(){if(xbt)return py;xbt=1;var f=py&&py.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_},h=py&&py.__metadata||function(g,E){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(g,E)};Object.defineProperty(py,"__esModule",{value:!0}),py.ModelRequestCommand=void 0;const b=Zt(),w=Qn(),m=Ca();let P=class extends m.SystemCommand{execute(E){const C=this.retrieveResult(E);return this.actionDispatcher.dispatch(C),{model:E.root,modelChanged:!1}}undo(E){return{model:E.root,modelChanged:!1}}redo(E){return{model:E.root,modelChanged:!1}}};return py.ModelRequestCommand=P,f([(0,b.inject)(w.TYPES.IActionDispatcher),h("design:type",Object)],P.prototype,"actionDispatcher",void 0),py.ModelRequestCommand=P=f([(0,b.injectable)()],P),py}var pm={},Lbt;function o2e(){if(Lbt)return pm;Lbt=1;var f=pm&&pm.__decorate||function(x,R,H,F){var $=arguments.length,W=$<3?R:F===null?F=Object.getOwnPropertyDescriptor(R,H):F,re;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")W=Reflect.decorate(x,R,H,F);else for(var ae=x.length-1;ae>=0;ae--)(re=x[ae])&&(W=($<3?re(W):$>3?re(R,H,W):re(R,H))||W);return $>3&&W&&Object.defineProperty(R,H,W),W},h=pm&&pm.__metadata||function(x,R){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(x,R)};Object.defineProperty(pm,"__esModule",{value:!0}),pm.findViewportScrollbar=pm.ScrollMouseListener=void 0;const b=Zt(),w=jc(),m=Ac(),P=Oc(),g=Pp(),E=Qh(),C=V3(),T=SS(),M=Ma(),_=t2e(),I=My(),O=Qn();class j extends g.MouseListener{constructor(){super(...arguments),this.scrollbarMouseDownDelay=200}mouseDown(R,H){if((0,E.findParentByFeature)(R,T.isMoveable)===void 0&&!(R instanceof M.SRoutingHandleImpl)){const $=(0,E.findParentByFeature)(R,C.isViewport);if($){if(this.lastScrollPosition={x:H.pageX,y:H.pageY},this.scrollbar=this.getScrollbar(H),this.scrollbar)return window.clearTimeout(this.scrollbarMouseDownTimeout),this.moveScrollBar($,H,this.scrollbar,!0).map(W=>new Promise(re=>{this.scrollbarMouseDownTimeout=window.setTimeout(()=>re(W),this.scrollbarMouseDownDelay)}))}else this.lastScrollPosition=void 0,this.scrollbar=void 0}return[]}mouseMove(R,H){if(H.buttons===0)return this.mouseUp(R,H);if(this.scrollbar){window.clearTimeout(this.scrollbarMouseDownTimeout);const F=(0,E.findParentByFeature)(R,C.isViewport);if(F)return this.moveScrollBar(F,H,this.scrollbar)}if(this.lastScrollPosition){const F=(0,E.findParentByFeature)(R,C.isViewport);if(F)return this.dragCanvas(F,H,this.lastScrollPosition)}return[]}mouseEnter(R,H){return R instanceof P.SModelRootImpl&&H.buttons===0&&this.mouseUp(R,H),[]}mouseUp(R,H){return this.lastScrollPosition=void 0,this.scrollbar=void 0,[]}doubleClick(R,H){if((0,E.findParentByFeature)(R,C.isViewport)){const $=this.getScrollbar(H);if($){window.clearTimeout(this.scrollbarMouseDownTimeout);const W=this.findClickTarget($,H);let re;if(W&&W.id.startsWith("horizontal-projection:")?re=W.id.substring(22):W&&W.id.startsWith("vertical-projection:")&&(re=W.id.substring(20)),re)return[w.CenterAction.create([re],{animate:!0,retainZoom:!0})]}}return[]}dragCanvas(R,H,F){let $=(H.pageX-F.x)/R.zoom;($>0&&(0,m.almostEquals)(R.scroll.x,this.viewerOptions.horizontalScrollLimits.min)||$<0&&(0,m.almostEquals)(R.scroll.x,this.viewerOptions.horizontalScrollLimits.max-R.canvasBounds.width/R.zoom))&&($=0);let W=(H.pageY-F.y)/R.zoom;if((W>0&&(0,m.almostEquals)(R.scroll.y,this.viewerOptions.verticalScrollLimits.min)||W<0&&(0,m.almostEquals)(R.scroll.y,this.viewerOptions.verticalScrollLimits.max-R.canvasBounds.height/R.zoom))&&(W=0),$===0&&W===0)return[];const re={scroll:{x:R.scroll.x-$,y:R.scroll.y-W},zoom:R.zoom};return this.lastScrollPosition={x:H.pageX,y:H.pageY},[w.SetViewportAction.create(R.id,re,{animate:!1})]}moveScrollBar(R,H,F,$=!1){const W=(0,_.getModelBounds)(R);if(!W||R.zoom<=0)return[];const re=F.getBoundingClientRect();let ae;if(this.getScrollbarOrientation(F)==="horizontal"){if(re.width<=0)return[];const ce=R.canvasBounds.width/(R.zoom*W.width)*re.width;let J=H.clientX-re.x-ce/2;if(J<0?J=0:J>re.width-ce&&(J=re.width-ce),ae={x:W.x+J/re.width*W.width,y:R.scroll.y},ae.xthis.viewerOptions.horizontalScrollLimits.max-R.canvasBounds.width/R.zoom&&(ae.x=this.viewerOptions.horizontalScrollLimits.max-R.canvasBounds.width/R.zoom),(0,m.almostEquals)(ae.x,R.scroll.x))return[]}else{if(re.height<=0)return[];const ce=R.canvasBounds.height/(R.zoom*W.height)*re.height;let J=H.clientY-re.y-ce/2;if(J<0?J=0:J>re.height-ce&&(J=re.height-ce),ae={x:R.scroll.x,y:W.y+J/re.height*W.height},ae.ythis.viewerOptions.verticalScrollLimits.max-R.canvasBounds.height/R.zoom&&(ae.y=this.viewerOptions.verticalScrollLimits.max-R.canvasBounds.height/R.zoom),(0,m.almostEquals)(ae.y,R.scroll.y))return[]}return[w.SetViewportAction.create(R.id,{scroll:ae,zoom:R.zoom},{animate:$})]}getScrollbar(R){return k(R)}getScrollbarOrientation(R){return R.classList.contains("horizontal")?"horizontal":"vertical"}findClickTarget(R,H){const F=Array.from(R.children).filter($=>$.id&&$.classList.contains("sprotty-projection")&&(0,I.hitsMouseEvent)($,H));if(F.length>0)return F[F.length-1]}}pm.ScrollMouseListener=j,f([(0,b.inject)(O.TYPES.ViewerOptions),h("design:type",Object)],j.prototype,"viewerOptions",void 0);function k(x){let R=x.target;for(;R;){if(R.classList&&R.classList.contains("sprotty-projection-bar"))return R;R=R.parentElement}}return pm.findViewportScrollbar=k,pm}var Nbt;function Dwt(){if(Nbt)return Pa;Nbt=1;var f=Pa&&Pa.__decorate||function(ve,me,ke,tt){var De=arguments.length,ct=De<3?me:tt===null?tt=Object.getOwnPropertyDescriptor(me,ke):tt,Z;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ct=Reflect.decorate(ve,me,ke,tt);else for(var Nt=ve.length-1;Nt>=0;Nt--)(Z=ve[Nt])&&(ct=(De<3?Z(ct):De>3?Z(me,ke,ct):Z(me,ke))||ct);return De>3&&ct&&Object.defineProperty(me,ke,ct),ct},h=Pa&&Pa.__metadata||function(ve,me){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ve,me)},b=Pa&&Pa.__param||function(ve,me){return function(ke,tt){me(ke,tt,ve)}};Object.defineProperty(Pa,"__esModule",{value:!0}),Pa.SelectKeyboardListener=Pa.GetSelectionCommand=Pa.SelectMouseListener=Pa.SelectAllCommand=Pa.SelectCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Owt(),E=Oc(),C=Qh(),T=Qn(),M=H3(),_=Pp(),I=mh(),O=My(),j=_A(),k=z3(),x=bJ(),R=swt(),H=vJ(),F=Ma(),$=Ma(),W=o2e(),re=Rb();let ae=class extends P.Command{constructor(me){super(),this.action=me,this.selected=[],this.deselected=[]}execute(me){const ke=me.root;return this.action.selectedElementsIDs.forEach(tt=>{const De=ke.index.getById(tt);De instanceof E.SChildElementImpl&&(0,re.isSelectable)(De)&&this.selected.push(De)}),this.action.deselectedElementsIDs.forEach(tt=>{const De=ke.index.getById(tt);De instanceof E.SChildElementImpl&&(0,re.isSelectable)(De)&&this.deselected.push(De)}),this.redo(me)}undo(me){for(const ke of this.selected)ke.selected=!1;for(const ke of this.deselected)ke.selected=!0;return me.root}redo(me){for(const ke of this.deselected)ke.selected=!1;for(const ke of this.selected)ke.selected=!0;return me.root}};Pa.SelectCommand=ae,ae.KIND=m.SelectAction.KIND,Pa.SelectCommand=ae=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.Action)),h("design:paramtypes",[Object])],ae);let ce=class extends P.Command{constructor(me){super(),this.action=me,this.previousSelection={}}execute(me){return this.selectAll(me.root,this.action.select),me.root}selectAll(me,ke){(0,re.isSelectable)(me)&&(this.previousSelection[me.id]=me.selected,me.selected=ke);for(const tt of me.children)this.selectAll(tt,ke)}undo(me){const ke=me.root.index;return Object.keys(this.previousSelection).forEach(tt=>{const De=ke.getById(tt);De!==void 0&&(0,re.isSelectable)(De)&&(De.selected=this.previousSelection[tt])}),me.root}redo(me){return this.selectAll(me.root,this.action.select),me.root}};Pa.SelectAllCommand=ce,ce.KIND=m.SelectAllAction.KIND,Pa.SelectAllCommand=ce=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.Action)),h("design:paramtypes",[Object])],ce);class J extends _.MouseListener{constructor(){super(...arguments),this.wasSelected=!1,this.hasDragged=!1,this.isMouseDown=!1}mouseDown(me,ke){if(ke.button!==0)return[];this.isMouseDown=!0;const tt=this.handleButton(me,ke);if(tt)return tt;const De=(0,C.findParentByFeature)(me,re.isSelectable);if((De!==void 0||me instanceof E.SModelRootImpl)&&(this.hasDragged=!1),De!==void 0){let ct=[];if((0,O.isCtrlOrCmd)(ke)||(ct=this.collectElementsToDeselect(me,De)),De.selected){if((0,O.isCtrlOrCmd)(ke))return this.wasSelected=!1,this.handleDeselectTarget(De,ke);this.wasSelected=!0}else return this.wasSelected=!1,this.handleSelectTarget(De,ct,ke)}return[]}collectElementsToDeselect(me,ke){return(0,j.toArray)(me.root.index.all().filter(tt=>(0,re.isSelectable)(tt)&&tt.selected&&!(ke instanceof F.SRoutingHandleImpl&&tt===ke.parent)))}handleButton(me,ke){if(this.buttonHandlerRegistry!==void 0&&me instanceof R.SButtonImpl&&me.enabled){const tt=this.buttonHandlerRegistry.get(me.type);if(tt!==void 0)return tt.buttonPressed(me)}}handleSelectTarget(me,ke,tt){const De=[];De.push(m.SelectAction.create({selectedElementsIDs:[me.id],deselectedElementsIDs:ke.map(Z=>Z.id)})),De.push(m.BringToFrontAction.create([me.id]));const ct=ke.filter(Z=>Z instanceof $.SRoutableElementImpl).map(Z=>Z.id);return me instanceof $.SRoutableElementImpl?De.push(H.SwitchEditModeAction.create({elementsToActivate:[me.id],elementsToDeactivate:ct})):ct.length>0&&De.push(H.SwitchEditModeAction.create({elementsToDeactivate:ct})),De}handleDeselectTarget(me,ke){const tt=[];return tt.push(m.SelectAction.create({selectedElementsIDs:[],deselectedElementsIDs:[me.id]})),me instanceof $.SRoutableElementImpl&&tt.push(H.SwitchEditModeAction.create({elementsToDeactivate:[me.id]})),tt}handleDeselectAll(me,ke){const tt=[];tt.push(m.SelectAction.create({selectedElementsIDs:[],deselectedElementsIDs:me.map(ct=>ct.id)}));const De=me.filter(ct=>ct instanceof $.SRoutableElementImpl).map(ct=>ct.id);return De.length>0&&tt.push(H.SwitchEditModeAction.create({elementsToDeactivate:De})),tt}mouseMove(me,ke){return this.hasDragged=this.isMouseDown,[]}mouseUp(me,ke){if(ke.button===0&&!this.hasDragged){const tt=(0,C.findParentByFeature)(me,re.isSelectable);if(tt!==void 0){if(this.wasSelected)return[m.SelectAction.create({selectedElementsIDs:[tt.id],deselectedElementsIDs:[]})]}else if(me instanceof E.SModelRootImpl&&!(0,W.findViewportScrollbar)(ke)||!(me instanceof E.SModelRootImpl))return this.handleDeselectAll(this.collectElementsToDeselect(me,void 0),ke)}return this.isMouseDown=!1,this.hasDragged=!1,[]}decorate(me,ke){const tt=(0,C.findParentByFeature)(ke,re.isSelectable);return tt!==void 0&&(0,I.setClass)(me,"selected",tt.selected),me}}Pa.SelectMouseListener=J,f([(0,w.inject)(x.ButtonHandlerRegistry),(0,w.optional)(),h("design:type",x.ButtonHandlerRegistry)],J.prototype,"buttonHandlerRegistry",void 0);let te=class extends g.ModelRequestCommand{constructor(me){super(),this.action=me,this.previousSelection={}}retrieveResult(me){const ke=me.root.index.all().filter(tt=>(0,re.isSelectable)(tt)&&tt.selected).map(tt=>tt.id);return m.SelectionResult.create((0,j.toArray)(ke),this.action.requestId)}};Pa.GetSelectionCommand=te,te.KIND=m.GetSelectionAction.KIND,Pa.GetSelectionCommand=te=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.Action)),h("design:paramtypes",[Object])],te);class fe extends M.KeyListener{keyDown(me,ke){return(0,k.matchesKeystroke)(ke,"KeyA","ctrlCmd")?[m.SelectAllAction.create()]:[]}}return Pa.SelectKeyboardListener=fe,Pa}var ML={},Fbt;function kwt(){if(Fbt)return ML;Fbt=1,Object.defineProperty(ML,"__esModule",{value:!0}),ML.UndoRedoKeyListener=void 0;const f=jc(),h=z3(),b=H3(),w=My();class m extends b.KeyListener{keyDown(g,E){return(0,h.matchesKeystroke)(E,"KeyZ","ctrlCmd")?[f.UndoAction.create()]:(0,h.matchesKeystroke)(E,"KeyZ","ctrlCmd","shift")||!(0,w.isMac)()&&(0,h.matchesKeystroke)(E,"KeyY","ctrlCmd")?[f.RedoAction.create()]:[]}}return ML.UndoRedoKeyListener=m,ML}var E3={},Bbt;function c2e(){if(Bbt)return E3;Bbt=1,Object.defineProperty(E3,"__esModule",{value:!0}),E3.applyMatches=E3.ModelMatcher=E3.forEachMatch=void 0;const f=Oc(),h=Sp();function b(P,g){Object.keys(P).forEach(E=>g(E,P[E]))}E3.forEachMatch=b;class w{match(g,E){const C={};return this.matchLeft(g,C),this.matchRight(E,C),C}matchLeft(g,E,C){let T=E[g.id];if(T!==void 0?(T.left=g,T.leftParentId=C):(T={left:g,leftParentId:C},E[g.id]=T),(0,f.isParent)(g))for(const M of g.children)this.matchLeft(M,E,g.id)}matchRight(g,E,C){let T=E[g.id];if(T!==void 0?(T.right=g,T.rightParentId=C):(T={right:g,rightParentId:C},E[g.id]=T),(0,f.isParent)(g))for(const M of g.children)this.matchRight(M,E,g.id)}}E3.ModelMatcher=w;function m(P,g,E){P instanceof f.SModelRootImpl?E=P.index:E===void 0&&(E=new h.SModelIndex,E.add(P));for(const C of g){let T=!1;if(C.left!==void 0&&C.leftParentId!==void 0){const M=E.getById(C.leftParentId);if(M!==void 0&&M.children!==void 0){const _=M.children.indexOf(C.left);_>=0&&(C.right!==void 0&&C.leftParentId===C.rightParentId?(M.children.splice(_,1,C.right),T=!0):M.children.splice(_,1)),E.remove(C.left)}}if(!T&&C.right!==void 0&&C.rightParentId!==void 0){const M=E.getById(C.rightParentId);M!==void 0&&(M.children===void 0&&(M.children=[]),M.children.push(C.right))}}}return E3.applyMatches=m,E3}var yp={},CL={},$bt;function SUt(){if($bt)return CL;$bt=1,Object.defineProperty(CL,"__esModule",{value:!0}),CL.ResizeAnimation=void 0;const f=SA();class h extends f.Animation{constructor(w,m,P,g=!1){super(P),this.model=w,this.elementResizes=m,this.reverse=g}tween(w){return this.elementResizes.forEach(m=>{const P=m.element,g=this.reverse?{width:(1-w)*m.toDimension.width+w*m.fromDimension.width,height:(1-w)*m.toDimension.height+w*m.fromDimension.height}:{width:(1-w)*m.fromDimension.width+w*m.toDimension.width,height:(1-w)*m.fromDimension.height+w*m.toDimension.height};P.bounds={x:P.bounds.x,y:P.bounds.y,width:g.width,height:g.height}}),this.model}}return CL.ResizeAnimation=h,CL}var Kbt;function s2e(){if(Kbt)return yp;Kbt=1;var f=yp&&yp.__decorate||function(ce,J,te,fe){var ve=arguments.length,me=ve<3?J:fe===null?fe=Object.getOwnPropertyDescriptor(J,te):fe,ke;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")me=Reflect.decorate(ce,J,te,fe);else for(var tt=ce.length-1;tt>=0;tt--)(ke=ce[tt])&&(me=(ve<3?ke(me):ve>3?ke(J,te,me):ke(J,te))||me);return ve>3&&me&&Object.defineProperty(J,te,me),me},h=yp&&yp.__metadata||function(ce,J){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ce,J)},b=yp&&yp.__param||function(ce,J){return function(te,fe){J(te,fe,ce)}};Object.defineProperty(yp,"__esModule",{value:!0}),yp.UpdateModelCommand=void 0;const w=Zt(),m=jc(),P=Ac(),g=SA(),E=Ca(),C=Qye(),T=Oc(),M=yJ(),_=rN(),I=SS(),O=Xs(),j=Gye(),k=Rb(),x=c2e(),R=SUt(),H=Qn(),F=V3(),$=Iy(),W=Ma(),re=Qh();let ae=class extends E.Command{constructor(J){super(),this.action=J}execute(J){let te;return this.action.newRoot!==void 0?te=J.modelFactory.createRoot(this.action.newRoot):(te=J.modelFactory.createRoot(J.root),this.action.matches!==void 0&&this.applyMatches(te,this.action.matches,J)),this.oldRoot=J.root,this.newRoot=te,this.performUpdate(this.oldRoot,this.newRoot,J)}performUpdate(J,te,fe){if((this.action.animate===void 0||this.action.animate)&&J.id===te.id){let ve;this.action.matches===void 0?ve=new x.ModelMatcher().match(J,te):ve=this.convertToMatchResult(this.action.matches,J,te);const me=this.computeAnimation(te,ve,fe);return me instanceof g.Animation?me.start():me}else return J.type===te.type&&P.Dimension.isValid(J.canvasBounds)&&(te.canvasBounds=J.canvasBounds),(0,F.isViewport)(J)&&(0,F.isViewport)(te)&&(te.zoom=J.zoom,te.scroll=J.scroll),te}applyMatches(J,te,fe){const ve=J.index;for(const me of te)if(me.left!==void 0){const ke=ve.getById(me.left.id);ke instanceof T.SChildElementImpl&&ke.parent.remove(ke)}for(const me of te)if(me.right!==void 0){const ke=fe.modelFactory.createElement(me.right);let tt;me.rightParentId!==void 0&&(tt=ve.getById(me.rightParentId)),tt instanceof T.SParentElementImpl?tt.add(ke):J.add(ke)}}convertToMatchResult(J,te,fe){const ve={};for(const me of J){const ke={};let tt;me.left!==void 0&&(tt=me.left.id,ke.left=te.index.getById(tt),ke.leftParentId=me.leftParentId),me.right!==void 0&&(tt=me.right.id,ke.right=fe.index.getById(tt),ke.rightParentId=me.rightParentId),tt!==void 0&&(ve[tt]=ke)}return ve}computeAnimation(J,te,fe){const ve={fades:[]};(0,x.forEachMatch)(te,(ke,tt)=>{if(tt.left!==void 0&&tt.right!==void 0)this.updateElement(tt.left,tt.right,ve);else if(tt.right!==void 0){const De=tt.right;(0,_.isFadeable)(De)&&(De.opacity=0,ve.fades.push({element:De,type:"in"}))}else if(tt.left instanceof T.SChildElementImpl){const De=tt.left;if((0,_.isFadeable)(De)&&tt.leftParentId!==void 0&&!(0,re.containsSome)(J,De)){const ct=J.index.getById(tt.leftParentId);if(ct instanceof T.SParentElementImpl){const Z=fe.modelFactory.createElement(De);ct.add(Z),ve.fades.push({element:Z,type:"out"})}}}});const me=this.createAnimations(ve,J,fe);return me.length>=2?new g.CompoundAnimation(J,fe,me):me.length===1?me[0]:J}updateElement(J,te,fe){if((0,I.isLocateable)(J)&&(0,I.isLocateable)(te)){const ve=J.position,me=te.position;(!(0,P.almostEquals)(ve.x,me.x)||!(0,P.almostEquals)(ve.y,me.y))&&(fe.moves===void 0&&(fe.moves=[]),fe.moves.push({element:te,fromPosition:ve,toPosition:me}),te.position=ve)}(0,O.isSizeable)(J)&&(0,O.isSizeable)(te)&&(P.Dimension.isValid(te.bounds)?(!(0,P.almostEquals)(J.bounds.width,te.bounds.width)||!(0,P.almostEquals)(J.bounds.height,te.bounds.height))&&(fe.resizes===void 0&&(fe.resizes=[]),fe.resizes.push({element:te,fromDimension:{width:J.bounds.width,height:J.bounds.height},toDimension:{width:te.bounds.width,height:te.bounds.height}})):te.bounds={x:te.bounds.x,y:te.bounds.y,width:J.bounds.width,height:J.bounds.height}),J instanceof W.SRoutableElementImpl&&te instanceof W.SRoutableElementImpl&&this.edgeRouterRegistry&&(fe.edgeMementi===void 0&&(fe.edgeMementi=[]),fe.edgeMementi.push({edge:te,before:this.takeSnapshot(J),after:this.takeSnapshot(te)})),(0,k.isSelectable)(J)&&(0,k.isSelectable)(te)&&(te.selected=J.selected),J instanceof T.SModelRootImpl&&te instanceof T.SModelRootImpl&&(te.canvasBounds=J.canvasBounds),J instanceof j.ViewportRootElementImpl&&te instanceof j.ViewportRootElementImpl&&(te.scroll=J.scroll,te.zoom=J.zoom)}takeSnapshot(J){return this.edgeRouterRegistry.get(J.routerKind).takeSnapshot(J)}createAnimations(J,te,fe){const ve=[];if(J.fades.length>0&&ve.push(new C.FadeAnimation(te,J.fades,fe,!0)),J.moves!==void 0&&J.moves.length>0){const me=new Map;for(const ke of J.moves)me.set(ke.element.id,ke);ve.push(new M.MoveAnimation(te,me,fe,!1))}if(J.resizes!==void 0&&J.resizes.length>0){const me=new Map;for(const ke of J.resizes)me.set(ke.element.id,ke);ve.push(new R.ResizeAnimation(te,me,fe,!1))}return J.edgeMementi!==void 0&&J.edgeMementi.length>0&&ve.push(new M.MorphEdgesAnimation(te,J.edgeMementi,fe,!1)),ve}undo(J){return this.performUpdate(this.newRoot,this.oldRoot,J)}redo(J){return this.performUpdate(this.oldRoot,this.newRoot,J)}};return yp.UpdateModelCommand=ae,ae.KIND=m.UpdateModelAction.KIND,f([(0,w.inject)($.EdgeRouterRegistry),(0,w.optional)(),h("design:type",$.EdgeRouterRegistry)],ae.prototype,"edgeRouterRegistry",void 0),yp.UpdateModelCommand=ae=f([(0,w.injectable)(),b(0,(0,w.inject)(H.TYPES.Action)),h("design:paramtypes",[Object])],ae),yp}var Sl={},bh={},qbt;function _J(){if(qbt)return bh;qbt=1;var f=bh&&bh.__decorate||function(k,x,R,H){var F=arguments.length,$=F<3?x:H===null?H=Object.getOwnPropertyDescriptor(x,R):H,W;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")$=Reflect.decorate(k,x,R,H);else for(var re=k.length-1;re>=0;re--)(W=k[re])&&($=(F<3?W($):F>3?W(x,R,$):W(x,R))||$);return F>3&&$&&Object.defineProperty(x,R,$),$},h=bh&&bh.__metadata||function(k,x){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(k,x)},b=bh&&bh.__param||function(k,x){return function(R,H){x(R,H,k)}},w;Object.defineProperty(bh,"__esModule",{value:!0}),bh.ViewportAnimation=bh.GetViewportCommand=bh.SetViewportCommand=void 0;const m=Zt(),P=jc(),g=Ac(),E=Ca(),C=SA(),T=V3(),M=Qn(),_=Owt();let I=w=class extends E.MergeableCommand{constructor(x){super(),this.action=x,this.newViewport=x.newViewport}execute(x){const R=x.root,H=R.index.getById(this.action.elementId);if(H&&(0,T.isViewport)(H)){this.element=H,this.oldViewport={scroll:this.element.scroll,zoom:this.element.zoom};const{zoomLimits:F,horizontalScrollLimits:$,verticalScrollLimits:W}=this.viewerOptions;return this.newViewport=(0,T.limitViewport)(this.newViewport,R.canvasBounds,$,W,F),this.setViewport(H,this.oldViewport,this.newViewport,x)}return x.root}setViewport(x,R,H,F){if(x&&(0,T.isViewport)(x)){if(this.action.animate)return new j(x,R,H,F).start();x.scroll=H.scroll,x.zoom=H.zoom}return F.root}undo(x){return this.setViewport(this.element,this.newViewport,this.oldViewport,x)}redo(x){return this.setViewport(this.element,this.oldViewport,this.newViewport,x)}merge(x,R){return!this.action.animate&&x instanceof w&&this.element===x.element?(this.newViewport=x.newViewport,!0):!1}};bh.SetViewportCommand=I,I.KIND=P.SetViewportAction.KIND,f([(0,m.inject)(M.TYPES.ViewerOptions),h("design:type",Object)],I.prototype,"viewerOptions",void 0),bh.SetViewportCommand=I=w=f([(0,m.injectable)(),b(0,(0,m.inject)(M.TYPES.Action)),h("design:paramtypes",[Object])],I);let O=class extends _.ModelRequestCommand{constructor(x){super(),this.action=x}retrieveResult(x){const R=x.root;let H;return(0,T.isViewport)(R)?H={scroll:R.scroll,zoom:R.zoom}:H={scroll:g.Point.ORIGIN,zoom:1},P.ViewportResult.create(H,R.canvasBounds,this.action.requestId)}};bh.GetViewportCommand=O,O.KIND=P.GetViewportAction.KIND,bh.GetViewportCommand=O=f([b(0,(0,m.inject)(M.TYPES.Action)),h("design:paramtypes",[Object])],O);class j extends C.Animation{constructor(x,R,H,F){super(F),this.element=x,this.oldViewport=R,this.newViewport=H,this.context=F,this.zoomFactor=Math.log(H.zoom/R.zoom)}tween(x,R){return this.element.scroll={x:(1-x)*this.oldViewport.scroll.x+x*this.newViewport.scroll.x,y:(1-x)*this.oldViewport.scroll.y+x*this.newViewport.scroll.y},this.element.zoom=this.oldViewport.zoom*Math.exp(x*this.zoomFactor),R.root}}return bh.ViewportAnimation=j,bh}var Hbt;function u2e(){if(Hbt)return Sl;Hbt=1;var f=Sl&&Sl.__decorate||function(F,$,W,re){var ae=arguments.length,ce=ae<3?$:re===null?re=Object.getOwnPropertyDescriptor($,W):re,J;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(F,$,W,re);else for(var te=F.length-1;te>=0;te--)(J=F[te])&&(ce=(ae<3?J(ce):ae>3?J($,W,ce):J($,W))||ce);return ae>3&&ce&&Object.defineProperty($,W,ce),ce},h=Sl&&Sl.__metadata||function(F,$){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(F,$)},b=Sl&&Sl.__param||function(F,$){return function(W,re){$(W,re,F)}};Object.defineProperty(Sl,"__esModule",{value:!0}),Sl.CenterKeyboardListener=Sl.FitToScreenCommand=Sl.CenterCommand=Sl.BoundsAwareViewportCommand=void 0;const w=jc(),m=Ac(),P=z3(),g=Oc(),E=Ca(),C=H3(),T=Xs(),M=Rb(),_=_J(),I=V3(),O=Zt(),j=Qn();let k=class extends E.Command{constructor($){super(),this.animate=$}initialize($){if(!(0,I.isViewport)($))return;this.oldViewport={scroll:$.scroll,zoom:$.zoom};const W=[];if(this.getElementIds().forEach(re=>{const ae=$.index.getById(re);ae&&(0,T.isBoundsAware)(ae)&&W.push(this.boundsInViewport(ae,ae.bounds,$))}),W.length===0&&$.index.all().forEach(re=>{(0,M.isSelectable)(re)&&re.selected&&(0,T.isBoundsAware)(re)&&W.push(this.boundsInViewport(re,re.bounds,$))}),W.length===0&&$.index.all().forEach(re=>{(0,T.isBoundsAware)(re)&&W.push(this.boundsInViewport(re,re.bounds,$))}),W.length!==0){const re=W.reduce((ae,ce)=>m.Bounds.combine(ae,ce));if(m.Dimension.isValid(re)){const ae=this.getNewViewport(re,$);if(ae){const{zoomLimits:ce,horizontalScrollLimits:J,verticalScrollLimits:te}=this.viewerOptions;this.newViewport=(0,I.limitViewport)(ae,$.canvasBounds,J,te,ce)}}}}boundsInViewport($,W,re){return $ instanceof g.SChildElementImpl&&$.parent!==re?this.boundsInViewport($.parent,$.parent.localToParent(W),re):W}execute($){return this.initialize($.root),this.redo($)}undo($){const W=$.root;if((0,I.isViewport)(W)&&this.newViewport!==void 0&&!this.equal(this.newViewport,this.oldViewport)){if(this.animate)return new _.ViewportAnimation(W,this.newViewport,this.oldViewport,$).start();W.scroll=this.oldViewport.scroll,W.zoom=this.oldViewport.zoom}return W}redo($){const W=$.root;if((0,I.isViewport)(W)&&this.newViewport!==void 0&&!this.equal(this.newViewport,this.oldViewport)){if(this.animate)return new _.ViewportAnimation(W,this.oldViewport,this.newViewport,$).start();W.scroll=this.newViewport.scroll,W.zoom=this.newViewport.zoom}return W}equal($,W){return(0,m.almostEquals)($.zoom,W.zoom)&&(0,m.almostEquals)($.scroll.x,W.scroll.x)&&(0,m.almostEquals)($.scroll.y,W.scroll.y)}};Sl.BoundsAwareViewportCommand=k,f([(0,O.inject)(j.TYPES.ViewerOptions),h("design:type",Object)],k.prototype,"viewerOptions",void 0),Sl.BoundsAwareViewportCommand=k=f([(0,O.injectable)(),h("design:paramtypes",[Boolean])],k);let x=class extends k{constructor($){super($.animate),this.action=$}getElementIds(){return this.action.elementIds}getNewViewport($,W){if(!m.Dimension.isValid(W.canvasBounds))return;let re=1;this.action.retainZoom&&(0,I.isViewport)(W)?re=W.zoom:this.action.zoomScale&&(re=this.action.zoomScale);const ae=m.Bounds.center($);return{scroll:{x:ae.x-.5*W.canvasBounds.width/re,y:ae.y-.5*W.canvasBounds.height/re},zoom:re}}};Sl.CenterCommand=x,x.KIND=w.CenterAction.KIND,Sl.CenterCommand=x=f([b(0,(0,O.inject)(j.TYPES.Action)),h("design:paramtypes",[Object])],x);let R=class extends k{constructor($){super($.animate),this.action=$}getElementIds(){return this.action.elementIds}getNewViewport($,W){if(!m.Dimension.isValid(W.canvasBounds))return;const re=m.Bounds.center($),ae=this.action.padding===void 0?0:2*this.action.padding;let ce=Math.min(W.canvasBounds.width/($.width+ae),W.canvasBounds.height/($.height+ae));return this.action.maxZoom!==void 0&&(ce=Math.min(ce,this.action.maxZoom)),ce===1/0&&(ce=1),{scroll:{x:re.x-.5*W.canvasBounds.width/ce,y:re.y-.5*W.canvasBounds.height/ce},zoom:ce}}};Sl.FitToScreenCommand=R,R.KIND=w.FitToScreenAction.KIND,Sl.FitToScreenCommand=R=f([b(0,(0,O.inject)(j.TYPES.Action)),h("design:paramtypes",[Object])],R);class H extends C.KeyListener{keyDown($,W){return(0,P.matchesKeystroke)(W,"KeyC","ctrlCmd","shift")?[w.CenterAction.create([])]:(0,P.matchesKeystroke)(W,"KeyF","ctrlCmd","shift")?[w.FitToScreenAction.create([])]:[]}}return Sl.CenterKeyboardListener=H,Sl}var _p={},zbt;function Rwt(){if(zbt)return _p;zbt=1;var f=_p&&_p.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=_p&&_p.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=_p&&_p.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(_p,"__esModule",{value:!0}),_p.BringToFrontCommand=void 0;const w=Zt(),m=jc(),P=Qn(),g=Oc(),E=Ca(),C=Ma();let T=class extends E.Command{constructor(_){super(),this.action=_,this.selected=[]}execute(_){const I=_.root;return this.action.elementIDs.forEach(O=>{const j=I.index.getById(O);j instanceof C.SRoutableElementImpl&&(j.source&&this.addToSelection(j.source),j.target&&this.addToSelection(j.target)),j instanceof g.SChildElementImpl&&this.addToSelection(j),this.includeConnectedEdges(j)}),this.redo(_)}includeConnectedEdges(_){if(_ instanceof C.SConnectableElementImpl&&(_.incomingEdges.forEach(I=>this.addToSelection(I)),_.outgoingEdges.forEach(I=>this.addToSelection(I))),_ instanceof g.SParentElementImpl)for(const I of _.children)this.includeConnectedEdges(I)}addToSelection(_){this.selected.push({element:_,index:_.parent.children.indexOf(_)})}undo(_){for(let I=this.selected.length-1;I>=0;I--){const O=this.selected[I],j=O.element;j.parent.move(j,O.index)}return _.root}redo(_){for(let I=0;I{(0,P.configureCommand)({bind:M,isBound:I},b.SetBoundsCommand),(0,P.configureCommand)({bind:M,isBound:I},b.RequestBoundsCommand),M(w.HiddenBoundsUpdater).toSelf().inSingletonScope(),M(h.TYPES.HiddenVNodePostprocessor).toService(w.HiddenBoundsUpdater),M(h.TYPES.Layouter).to(m.Layouter).inSingletonScope(),M(h.TYPES.LayoutRegistry).to(m.LayoutRegistry).inSingletonScope(),(0,m.configureLayout)({bind:M,isBound:I},E.VBoxLayouter.KIND,E.VBoxLayouter),(0,m.configureLayout)({bind:M,isBound:I},g.HBoxLayouter.KIND,g.HBoxLayouter),(0,m.configureLayout)({bind:M,isBound:I},C.StackLayouter.KIND,C.StackLayouter)});return nX.default=T,nX}var iX={},Gbt;function Lwt(){if(Gbt)return iX;Gbt=1,Object.defineProperty(iX,"__esModule",{value:!0});const f=Zt(),h=bJ(),b=new f.ContainerModule(w=>{w(h.ButtonHandlerRegistry).toSelf().inSingletonScope()});return iX.default=b,iX}var rX={},Ubt;function Nwt(){if(Ubt)return rX;Ubt=1,Object.defineProperty(rX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Hye(),w=lwt(),m=new f.ContainerModule(P=>{P(w.CommandPalette).toSelf().inSingletonScope(),P(h.TYPES.IUIExtension).toService(w.CommandPalette),P(w.CommandPaletteKeyListener).toSelf().inSingletonScope(),P(h.TYPES.KeyListener).toService(w.CommandPaletteKeyListener),P(b.CommandPaletteActionProviderRegistry).toSelf().inSingletonScope(),P(h.TYPES.ICommandPaletteActionProviderRegistry).toService(b.CommandPaletteActionProviderRegistry)});return rX.default=m,rX}var oX={},Wbt;function Fwt(){if(Wbt)return oX;Wbt=1,Object.defineProperty(oX,"__esModule",{value:!0});const f=Zt(),h=zye(),b=fwt(),w=Qn(),m=new f.ContainerModule(P=>{P(w.TYPES.IContextMenuServiceProvider).toProvider(g=>()=>new Promise((E,C)=>{g.container.isBound(w.TYPES.IContextMenuService)?E(g.container.get(w.TYPES.IContextMenuService)):C()})),P(b.ContextMenuMouseListener).toSelf().inSingletonScope(),P(w.TYPES.MouseListener).toService(b.ContextMenuMouseListener),P(w.TYPES.IContextMenuProviderRegistry).to(h.ContextMenuProviderRegistry)});return oX.default=m,oX}var cX={},Ybt;function Bwt(){if(Ybt)return cX;Ybt=1,Object.defineProperty(cX,"__esModule",{value:!0});const f=iN(),h=Zt(),b=Zye(),w=ywt(),m=Qn(),P=_wt(),g=new h.ContainerModule((E,C,T)=>{(0,f.configureModelElement)({bind:E,isBound:T},"marker",b.SIssueMarkerImpl,w.IssueMarkerView),E(P.DecorationPlacer).toSelf().inSingletonScope(),E(m.TYPES.IVNodePostprocessor).toService(P.DecorationPlacer)});return cX.default=g,cX}var sX={},Xbt;function PUt(){if(Xbt)return sX;Xbt=1,Object.defineProperty(sX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=e2e(),w=new f.ContainerModule(m=>{m(b.IntersectionFinder).toSelf().inSingletonScope(),m(h.TYPES.IEdgeRoutePostprocessor).toService(b.IntersectionFinder)});return sX.default=w,sX}var uX={},Jbt;function MUt(){if(Jbt)return uX;Jbt=1,Object.defineProperty(uX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Pwt(),w=Mwt(),m=new f.ContainerModule(P=>{P(b.JunctionFinder).toSelf().inSingletonScope(),P(h.TYPES.IEdgeRoutePostprocessor).toService(b.JunctionFinder),P(w.JunctionPostProcessor).toSelf().inSingletonScope(),P(h.TYPES.IVNodePostprocessor).toService(w.JunctionPostProcessor),P(h.TYPES.HiddenVNodePostprocessor).toService(w.JunctionPostProcessor)});return uX.default=m,uX}var aX={},Qbt;function $wt(){if(Qbt)return aX;Qbt=1,Object.defineProperty(aX,"__esModule",{value:!0});const f=Zt(),h=bJ(),b=wwt(),w=new f.ContainerModule((m,P,g)=>{(0,h.configureButtonHandler)({bind:m,isBound:g},b.ExpandButtonHandler.TYPE,b.ExpandButtonHandler)});return aX.default=w,aX}var lX={},Zbt;function Kwt(){if(Zbt)return lX;Zbt=1,Object.defineProperty(lX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=mwt(),w=Jye(),m=kb(),P=new f.ContainerModule((g,E,C)=>{g(b.ExportSvgKeyListener).toSelf().inSingletonScope(),g(h.TYPES.KeyListener).toService(b.ExportSvgKeyListener),g(b.ExportSvgPostprocessor).toSelf().inSingletonScope(),g(h.TYPES.HiddenVNodePostprocessor).toService(b.ExportSvgPostprocessor),(0,m.configureCommand)({bind:g,isBound:C},b.ExportSvgCommand),g(h.TYPES.SvgExporter).to(w.SvgExporter).inSingletonScope()});return lX.default=P,lX}var fX={},e0t;function qwt(){if(e0t)return fX;e0t=1,Object.defineProperty(fX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Qye(),w=new f.ContainerModule(m=>{m(b.ElementFader).toSelf().inSingletonScope(),m(h.TYPES.IVNodePostprocessor).toService(b.ElementFader)});return fX.default=w,fX}var hX={},wy={},t0t;function CUt(){if(t0t)return wy;t0t=1;var f=wy&&wy.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M},h=wy&&wy.__metadata||function(P,g){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(P,g)};Object.defineProperty(wy,"__esModule",{value:!0}),wy.PopupPositionUpdater=void 0;const b=Zt(),w=Qn();let m=class{decorate(g,E){return g}postUpdate(){const g=document.getElementById(this.options.popupDiv);if(g!==null&&typeof window<"u"){const E=g.getBoundingClientRect();window.innerHeight{M(w.PopupPositionUpdater).toSelf().inSingletonScope(),M(h.TYPES.PopupVNodePostprocessor).toService(w.PopupPositionUpdater),M(b.HoverMouseListener).toSelf().inSingletonScope(),M(h.TYPES.MouseListener).toService(b.HoverMouseListener),M(b.PopupHoverMouseListener).toSelf().inSingletonScope(),M(h.TYPES.PopupMouseListener).toService(b.PopupHoverMouseListener),M(b.HoverKeyListener).toSelf().inSingletonScope(),M(h.TYPES.KeyListener).toService(b.HoverKeyListener),M(h.TYPES.HoverState).toConstantValue({mouseOverTimer:void 0,mouseOutTimer:void 0,popupOpen:!1,previousPopupElement:void 0}),M(b.ClosePopupActionHandler).toSelf().inSingletonScope();const O={bind:M,isBound:I};(0,m.configureCommand)(O,b.HoverFeedbackCommand),(0,m.configureCommand)(O,b.SetPopupModelCommand),(0,P.configureActionHandler)(O,b.SetPopupModelCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,g.FitToScreenCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,g.CenterCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,E.SetViewportCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,C.MoveCommand.KIND,b.ClosePopupActionHandler)});return hX.default=T,hX}var dX={},i0t;function zwt(){if(i0t)return dX;i0t=1,Object.defineProperty(dX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=yJ(),w=kb(),m=new f.ContainerModule((P,g,E)=>{P(b.MoveMouseListener).toSelf().inSingletonScope(),P(h.TYPES.MouseListener).toService(b.MoveMouseListener),(0,w.configureCommand)({bind:P,isBound:E},b.MoveCommand),P(b.LocationPostprocessor).toSelf().inSingletonScope(),P(h.TYPES.IVNodePostprocessor).toService(b.LocationPostprocessor),P(h.TYPES.HiddenVNodePostprocessor).toService(b.LocationPostprocessor)});return dX.default=m,dX}var gX={},r0t;function Vwt(){if(r0t)return gX;r0t=1,Object.defineProperty(gX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Iwt(),w=new f.ContainerModule(m=>{m(b.OpenMouseListener).toSelf().inSingletonScope(),m(h.TYPES.MouseListener).toService(b.OpenMouseListener)});return gX.default=w,gX}var bX={},o0t;function Gwt(){if(o0t)return bX;o0t=1,Object.defineProperty(bX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=r2e(),w=wJ(),m=jwt(),P=n2e(),g=MS(),E=Iy(),C=i2e(),T=Twt(),M=kb(),_=new f.ContainerModule((I,O,j)=>{I(E.EdgeRouterRegistry).toSelf().inSingletonScope(),I(g.AnchorComputerRegistry).toSelf().inSingletonScope(),I(b.ManhattanEdgeRouter).toSelf().inSingletonScope(),I(h.TYPES.IEdgeRouter).toService(b.ManhattanEdgeRouter),I(m.ManhattanEllipticAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(m.ManhattanEllipticAnchor),I(m.ManhattanRectangularAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(m.ManhattanRectangularAnchor),I(m.ManhattanDiamondAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(m.ManhattanDiamondAnchor),I(w.PolylineEdgeRouter).toSelf().inSingletonScope(),I(h.TYPES.IEdgeRouter).toService(w.PolylineEdgeRouter),I(P.EllipseAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(P.EllipseAnchor),I(P.RectangleAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(P.RectangleAnchor),I(P.DiamondAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(P.DiamondAnchor),I(C.BezierEdgeRouter).toSelf().inSingletonScope(),I(h.TYPES.IEdgeRouter).toService(C.BezierEdgeRouter),I(T.BezierEllipseAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(T.BezierEllipseAnchor),I(T.BezierRectangleAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(T.BezierRectangleAnchor),I(T.BezierDiamondAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(T.BezierDiamondAnchor),(0,M.configureCommand)({bind:I,isBound:j},C.AddRemoveBezierSegmentCommand)});return bX.default=_,bX}var pX={},c0t;function Uwt(){if(c0t)return pX;c0t=1,Object.defineProperty(pX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Dwt(),w=kb(),m=new f.ContainerModule((P,g,E)=>{(0,w.configureCommand)({bind:P,isBound:E},b.SelectCommand),(0,w.configureCommand)({bind:P,isBound:E},b.SelectAllCommand),(0,w.configureCommand)({bind:P,isBound:E},b.GetSelectionCommand),P(b.SelectKeyboardListener).toSelf().inSingletonScope(),P(h.TYPES.KeyListener).toService(b.SelectKeyboardListener),P(b.SelectMouseListener).toSelf().inSingletonScope(),P(h.TYPES.MouseListener).toService(b.SelectMouseListener)});return pX.default=m,pX}var wX={},s0t;function Wwt(){if(s0t)return wX;s0t=1,Object.defineProperty(wX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=kwt(),w=new f.ContainerModule(m=>{m(b.UndoRedoKeyListener).toSelf().inSingletonScope(),m(h.TYPES.KeyListener).toService(b.UndoRedoKeyListener)});return wX.default=w,wX}var mX={},u0t;function Ywt(){if(u0t)return mX;u0t=1,Object.defineProperty(mX,"__esModule",{value:!0});const f=Zt(),h=kb(),b=s2e(),w=new f.ContainerModule((m,P,g)=>{(0,h.configureCommand)({bind:m,isBound:g},b.UpdateModelCommand)});return mX.default=w,mX}var vX={},a0t;function Xwt(){if(a0t)return vX;a0t=1,Object.defineProperty(vX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=u2e(),w=_J(),m=o2e(),P=Wye(),g=kb(),E=new f.ContainerModule((C,T,M)=>{(0,g.configureCommand)({bind:C,isBound:M},b.CenterCommand),(0,g.configureCommand)({bind:C,isBound:M},b.FitToScreenCommand),(0,g.configureCommand)({bind:C,isBound:M},w.SetViewportCommand),(0,g.configureCommand)({bind:C,isBound:M},w.GetViewportCommand),C(b.CenterKeyboardListener).toSelf().inSingletonScope(),C(h.TYPES.KeyListener).toService(b.CenterKeyboardListener),C(m.ScrollMouseListener).toSelf().inSingletonScope(),C(P.ZoomMouseListener).toSelf().inSingletonScope(),C(h.TYPES.MouseListener).toService(m.ScrollMouseListener),C(h.TYPES.MouseListener).toService(P.ZoomMouseListener)});return vX.default=E,vX}var yX={},l0t;function Jwt(){if(l0t)return yX;l0t=1,Object.defineProperty(yX,"__esModule",{value:!0});const f=Zt(),h=kb(),b=Rwt(),w=new f.ContainerModule((m,P,g)=>{(0,h.configureCommand)({bind:m,isBound:g},b.BringToFrontCommand)});return yX.default=w,yX}var Go={},f0t;function IUt(){if(f0t)return Go;f0t=1;var f=Go&&Go.__decorate||function(ce,J,te,fe){var ve=arguments.length,me=ve<3?J:fe===null?fe=Object.getOwnPropertyDescriptor(J,te):fe,ke;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")me=Reflect.decorate(ce,J,te,fe);else for(var tt=ce.length-1;tt>=0;tt--)(ke=ce[tt])&&(me=(ve<3?ke(me):ve>3?ke(J,te,me):ke(J,te))||me);return ve>3&&me&&Object.defineProperty(J,te,me),me},h=Go&&Go.__metadata||function(ce,J){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ce,J)};Object.defineProperty(Go,"__esModule",{value:!0}),Go.SBezierControlHandleView=Go.SBezierCreateHandleView=Go.SCompartmentView=Go.SLabelView=Go.SRoutingHandleView=Go.BezierCurveEdgeView=Go.PolylineEdgeViewWithGapsOnIntersections=Go.JumpingPolylineEdgeView=Go.PolylineEdgeView=Go.SGraphView=void 0;const b=Zt(),w=Ac(),m=LM(),P=mh(),g=gJ(),E=e2e(),C=cN(),T=Ma(),M=Iy(),_=Awt(),I=Cy(),O=PS();let j=class{render(J,te){const fe=this.edgeRouterRegistry.routeAllChildren(J),ve=`scale(${J.zoom}) translate(${-J.scroll.x},${-J.scroll.y})`;return(0,I.svg)("svg",{"class-sprotty-graph":!0},(0,I.svg)("g",{transform:ve},te.renderChildren(J,{edgeRouting:fe})))}};Go.SGraphView=j,f([(0,b.inject)(M.EdgeRouterRegistry),h("design:type",M.EdgeRouterRegistry)],j.prototype,"edgeRouterRegistry",void 0),Go.SGraphView=j=f([(0,b.injectable)()],j);let k=class extends _.RoutableView{render(J,te,fe){const ve=this.edgeRouterRegistry.route(J,fe);return ve.length===0?this.renderDanglingEdge("Cannot compute route",J,te):this.isVisible(J,ve,te)?(0,I.svg)("g",{"class-sprotty-edge":!0,"class-mouseover":J.hoverFeedback},this.renderLine(J,ve,te,fe),this.renderAdditionals(J,ve,te),this.renderJunctionPoints(J,ve,te,fe),te.renderChildren(J,{route:ve})):J.children.length===0?void 0:(0,I.svg)("g",null,te.renderChildren(J,{route:ve}))}renderJunctionPoints(J,te,fe,ve){const ke=[];for(let tt=1;tt0)return(0,I.svg)("g",{"class-sprotty-junction":!0},ke)}renderLine(J,te,fe,ve){const me=te[0];let ke=`M ${me.x},${me.y}`;for(let tt=1;tt=Math.abs(te.slopeOrMax)}createGapPath(J,te){const fe=w.Point.shiftTowards(J,te.p1,this.skipOffsetBefore),ve=w.Point.shiftTowards(J,te.p2,this.skipOffsetAfter);return` L ${fe.x},${fe.y} M ${ve.x},${ve.y}`}};Go.PolylineEdgeViewWithGapsOnIntersections=R,Go.PolylineEdgeViewWithGapsOnIntersections=R=f([(0,b.injectable)()],R);let H=class extends _.RoutableView{render(J,te,fe){const ve=this.edgeRouterRegistry.route(J,fe);return ve.length===0?this.renderDanglingEdge("Cannot compute route",J,te):this.isVisible(J,ve,te)?(0,I.svg)("g",{"class-sprotty-edge":!0,"class-mouseover":J.hoverFeedback},this.renderLine(J,ve,te,fe),this.renderAdditionals(J,ve,te),te.renderChildren(J,{route:ve})):J.children.length===0?void 0:(0,I.svg)("g",null,te.renderChildren(J,{route:ve}))}renderLine(J,te,fe,ve){let me="";if(te.length>=4){me+=this.buildMainSegment(te);const ke=te.length-4;if(ke>0&&ke%3===0)for(let tt=4;tt{g(b.TYPES.ModelSourceProvider).toProvider(T=>()=>new Promise(M=>{M(T.container.get(b.TYPES.ModelSource))})),(0,h.configureCommand)({bind:g,isBound:C},w.CommitModelCommand),g(b.TYPES.IActionHandlerInitializer).toService(b.TYPES.ModelSource),g(m.ComputedBoundsApplicator).toSelf().inSingletonScope()});return _X.default=P,_X}var d0t;function TUt(){if(d0t)return IM;d0t=1;var f=IM&&IM.__importDefault||function(ae){return ae&&ae.__esModule?ae:{default:ae}};Object.defineProperty(IM,"__esModule",{value:!0}),IM.loadDefaultModules=void 0;const h=f(nwt()),b=f(Qwt()),w=f(xwt()),m=f(Lwt()),P=f(Nwt()),g=f(Fwt()),E=f(Bwt()),C=f(Rve()),T=pwt(),M=f($wt()),_=f(Kwt()),I=f(qwt()),O=f(Hwt()),j=f(zwt()),k=f(Vwt()),x=f(Gwt()),R=f(Uwt()),H=f(Wwt()),F=f(Ywt()),$=f(Xwt()),W=f(Jwt());function re(ae,ce){const J=[h.default,b.default,w.default,m.default,P.default,g.default,E.default,T.edgeEditModule,C.default,M.default,_.default,I.default,O.default,T.labelEditModule,T.labelEditUiModule,j.default,k.default,x.default,R.default,H.default,F.default,$.default,W.default];if(ce&&ce.exclude)for(const te of ce.exclude){const fe=J.indexOf(te);fe>=0&&J.splice(fe,1)}ae.load(...J)}return IM.loadDefaultModules=re,IM}var Ob={},EX={},g0t;function jUt(){if(g0t)return EX;g0t=1,Object.defineProperty(EX,"__esModule",{value:!0});const f=nN;function h(k){const x={},R=(W,re)=>{if(re!=="style"&&re!=="class"){const ae=E(k[re]);W?W[re]=ae:W={[re]:ae}}return W},H=Object.keys(k).reduce(R,null);H&&(x.attrs=H);const F=b(k);F&&(x.style=F);const $=w(k);return $&&(x.class=$),x}function b(k){const x=(R,H)=>{const F=H.split(":"),$=m(F[0].trim());if($){const W=F[1].replace("!important","").trim();R?R[$]=W:R={[$]:W}}return R};try{return k.style.split(";").reduce(x,null)}catch{return null}}function w(k){const x=(R,H)=>(H=H.trim(),H&&(R?R[H]=!0:R={[H]:!0}),R);try{return k.class.split(" ").reduce(x,null)}catch{return null}}function m(k){return k=k.replace(/-(\w)/g,function(H,F){return F.toUpperCase()}),`${k.charAt(0).toLowerCase()}${k.substring(1)}`}const P=new RegExp("&[a-z0-9#]+;","gi");let g=null;function E(k){return g||(g=document.createElement("div")),k.replace(P,x=>g===null?"":(g.innerHTML=x,g.textContent===null?"":g.textContent))}function C(k,x){let R=k,H=null;const F=[],$=W=>{const re=W.firstChild;re!==null&&(H=W),R=re};for(x(R,H),$(R);;){for(;R;)F.push(R),x(R,H),$(R);const W=F.pop();if(R=W||null,!F.length)break;if(H=F[F.length-1],R){const re=R.nextSibling;re==null&&(H=F[F.length-1]),R=re}}}let T=null;const M=new Map;let _=!1;function I(k,x){let R;switch(x!==null&&(R=M.get(x)),k?.nodeType){case 1:{if(R===void 0)return;R.children=R.children?R.children:[];const H=R.children,F=k.attributes,$={};for(let re=0;re0?F[F.length-1]:null;!_&&typeof $!="string"&&$!==null&&$.sel===void 0?$.text=$.text+H:F.push((0,f.vnode)(void 0,void 0,void 0,H,void 0)),_=!1}break}case 8:{_=!0;break}case 9:{T=(0,f.vnode)(void 0,void 0,[],void 0,void 0),M.set(k,T);break}}}function O(k){const x=k?.children;return typeof x>"u"?null:x.length===1&&typeof x[0]!="string"?x[0]:null}function j(k){var x,R;const H=new window.DOMParser;if(H===void 0||k===void 0||k==="")return null;const F=H.parseFromString(k,"application/xml");if(((x=F?.firstChild)===null||x===void 0?void 0:x.nodeName)==="parsererror"){const $=`${(R=F?.firstChild)===null||R===void 0?void 0:R.textContent}`;return(0,f.h)("parsererror",[$])}return _=!1,T=null,C(F,I),T===null?null:O(T)}return EX.default=j,EX}var as={},b0t;function Zwt(){if(b0t)return as;b0t=1,Object.defineProperty(as,"__esModule",{value:!0}),as.ForeignObjectElement=as.ForeignObjectElementImpl=as.ShapedPreRenderedElement=as.ShapedPreRenderedElementImpl=as.PreRenderedElement=as.PreRenderedElementImpl=as.HtmlRoot=as.HtmlRootImpl=as.RectangularPort=as.CircularPort=as.DiamondNode=as.RectangularNode=as.CircularNode=void 0;const f=Ac(),h=Oc(),b=Xs(),w=SS(),m=Rb(),P=MA(),g=MS();class E extends P.SNodeImpl{get anchorKind(){return g.ELLIPTIC_ANCHOR_KIND}}as.CircularNode=E;class C extends P.SNodeImpl{get anchorKind(){return g.RECTANGULAR_ANCHOR_KIND}}as.RectangularNode=C;class T extends P.SNodeImpl{get anchorKind(){return g.DIAMOND_ANCHOR_KIND}}as.DiamondNode=T;class M extends P.SPortImpl{get anchorKind(){return g.ELLIPTIC_ANCHOR_KIND}}as.CircularPort=M;class _ extends P.SPortImpl{get anchorKind(){return g.RECTANGULAR_ANCHOR_KIND}}as.RectangularPort=_;class I extends h.SModelRootImpl{constructor(){super(...arguments),this.classes=[]}}as.HtmlRootImpl=I,as.HtmlRoot=I;class O extends h.SChildElementImpl{}as.PreRenderedElementImpl=O,as.PreRenderedElement=O;class j extends O{constructor(){super(...arguments),this.position=f.Point.ORIGIN,this.size=f.Dimension.EMPTY,this.selected=!1,this.alignment=f.Point.ORIGIN}get bounds(){return{x:this.position.x,y:this.position.y,width:this.size.width,height:this.size.height}}set bounds(R){this.position={x:R.x,y:R.y},this.size={width:R.width,height:R.height}}}as.ShapedPreRenderedElementImpl=j,j.DEFAULT_FEATURES=[w.moveFeature,b.boundsFeature,m.selectFeature,b.alignFeature],as.ShapedPreRenderedElement=j;class k extends j{get bounds(){return f.Dimension.isValid(this.size)?{x:this.position.x,y:this.position.y,width:this.size.width,height:this.size.height}:(0,b.isBoundsAware)(this.parent)?{x:this.position.x,y:this.position.y,width:this.parent.bounds.width,height:this.parent.bounds.height}:f.Bounds.EMPTY}}return as.ForeignObjectElementImpl=k,as.ForeignObjectElement=k,as}var p0t;function AUt(){if(p0t)return Ob;p0t=1;var f=Ob&&Ob.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Ob&&Ob.__importDefault||function(M){return M&&M.__esModule?M:{default:M}};Object.defineProperty(Ob,"__esModule",{value:!0}),Ob.ForeignObjectView=Ob.PreRenderedView=void 0;const b=Cy(),w=Zt(),m=h(jUt()),P=mh(),g=gJ(),E=Zwt();let C=class extends g.ShapeView{render(_,I){if(_ instanceof E.ShapedPreRenderedElementImpl&&!this.isVisible(_,I))return;const O=(0,m.default)(_.code);if(O!==null)return this.correctNamespace(O),O}correctNamespace(_){(_.sel==="svg"||_.sel==="g")&&(0,P.setNamespace)(_,"http://www.w3.org/2000/svg")}};Ob.PreRenderedView=C,Ob.PreRenderedView=C=f([(0,w.injectable)()],C);let T=class{render(_,I){const O=(0,m.default)(_.code);if(O===null)return;const j=(0,b.svg)("g",null,(0,b.svg)("foreignObject",{requiredFeatures:"http://www.w3.org/TR/SVG11/feature#Extensibility",height:_.bounds.height,width:_.bounds.width,x:0,y:0},O),I.renderChildren(_));return(0,P.setAttr)(j,"class",_.type),(0,P.setNamespace)(O,_.namespace),j}};return Ob.ForeignObjectView=T,Ob.ForeignObjectView=T=f([(0,w.injectable)()],T),Ob}var iS={},w0t;function OUt(){if(w0t)return iS;w0t=1;var f=iS&&iS.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(iS,"__esModule",{value:!0}),iS.HtmlRootView=void 0;const h=Cy(),b=Zt(),w=mh();let m=class{render(g,E){const C=(0,h.html)("div",null,E.renderChildren(g));for(const T of g.classes)(0,w.setClass)(C,T,!0);return C}};return iS.HtmlRootView=m,iS.HtmlRootView=m=f([(0,b.injectable)()],m),iS}var Ep={},DX={exports:{}},DUt=DX.exports,m0t;function emt(){return m0t||(m0t=1,(function(f,h){(function(b,w){w()})(DUt,function(){function b(T,M){return typeof M>"u"?M={autoBom:!1}:typeof M!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),M={autoBom:!M}),M.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(T.type)?new Blob(["\uFEFF",T],{type:T.type}):T}function w(T,M,_){var I=new XMLHttpRequest;I.open("GET",T),I.responseType="blob",I.onload=function(){C(I.response,M,_)},I.onerror=function(){console.error("could not download file")},I.send()}function m(T){var M=new XMLHttpRequest;M.open("HEAD",T,!1);try{M.send()}catch{}return 200<=M.status&&299>=M.status}function P(T){try{T.dispatchEvent(new MouseEvent("click"))}catch{var M=document.createEvent("MouseEvents");M.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),T.dispatchEvent(M)}}var g=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof fS=="object"&&fS.global===fS?fS:void 0,E=g.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),C=g.saveAs||(typeof window!="object"||window!==g?function(){}:"download"in HTMLAnchorElement.prototype&&!E?function(T,M,_){var I=g.URL||g.webkitURL,O=document.createElement("a");M=M||T.name||"download",O.download=M,O.rel="noopener",typeof T=="string"?(O.href=T,O.origin===location.origin?P(O):m(O.href)?w(T,M,_):P(O,O.target="_blank")):(O.href=I.createObjectURL(T),setTimeout(function(){I.revokeObjectURL(O.href)},4e4),setTimeout(function(){P(O)},0))}:"msSaveOrOpenBlob"in navigator?function(T,M,_){if(M=M||T.name||"download",typeof T!="string")navigator.msSaveOrOpenBlob(b(T,_),M);else if(m(T))w(T,M,_);else{var I=document.createElement("a");I.href=T,I.target="_blank",setTimeout(function(){P(I)})}}:function(T,M,_,I){if(I=I||open("","_blank"),I&&(I.document.title=I.document.body.innerText="downloading..."),typeof T=="string")return w(T,M,_);var O=T.type==="application/octet-stream",j=/constructor/i.test(g.HTMLElement)||g.safari,k=/CriOS\/[\d]+/.test(navigator.userAgent);if((k||O&&j||E)&&typeof FileReader<"u"){var x=new FileReader;x.onloadend=function(){var F=x.result;F=k?F:F.replace(/^data:[^;]*;/,"data:attachment/file;"),I?I.location.href=F:location=F,I=null},x.readAsDataURL(T)}else{var R=g.URL||g.webkitURL,H=R.createObjectURL(T);I?I.location=H:location.href=H,I=null,setTimeout(function(){R.revokeObjectURL(H)},4e4)}});g.saveAs=C.saveAs=C,f.exports=C})})(DX)),DX.exports}var v0t;function tmt(){if(v0t)return Ep;v0t=1;var f=Ep&&Ep.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=Ep&&Ep.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(Ep,"__esModule",{value:!0}),Ep.DiagramServerProxy=Ep.ServerStatusAction=void 0;const b=emt(),w=Zt(),m=jc(),P=xye(),g=Qn(),E=$ye(),C=s2e(),T=CA();class M{constructor(){this.kind=M.KIND}}Ep.ServerStatusAction=M,M.KIND="serverStatus";const _="__receivedFromServer";let I=class extends T.ModelSource{constructor(){super(...arguments),this.currentRoot={type:"NONE",id:"ROOT"}}get model(){return this.currentRoot}initialize(j){super.initialize(j),j.register(m.ComputedBoundsAction.KIND,this),j.register(E.RequestBoundsCommand.KIND,this),j.register(m.RequestPopupModelAction.KIND,this),j.register(m.CollapseExpandAction.KIND,this),j.register(m.CollapseExpandAllAction.KIND,this),j.register(m.OpenAction.KIND,this),j.register(M.KIND,this),this.clientId||(this.clientId=this.viewerOptions.baseDiv)}handle(j){this.handleLocally(j)&&this.forwardToServer(j)}forwardToServer(j){const k={clientId:this.clientId,action:j};this.logger.log(this,"sending",k),this.sendMessage(k)}messageReceived(j){const k=typeof j=="string"?JSON.parse(j):j;(0,m.isActionMessage)(k)&&k.action?(!k.clientId||k.clientId===this.clientId)&&(k.action[_]=!0,this.logger.log(this,"receiving",k),this.actionDispatcher.dispatch(k.action).then(()=>{this.storeNewModel(k.action)})):this.logger.error(this,"received data is not an action message",k)}handleLocally(j){switch(this.storeNewModel(j),j.kind){case m.ComputedBoundsAction.KIND:return this.handleComputedBounds(j);case m.RequestModelAction.KIND:return this.handleRequestModel(j);case E.RequestBoundsCommand.KIND:return!1;case m.ExportSvgAction.KIND:return this.handleExportSvgAction(j);case M.KIND:return this.handleServerStateAction(j)}return!j[_]}storeNewModel(j){if(j.kind===P.SetModelCommand.KIND||j.kind===C.UpdateModelCommand.KIND||j.kind===E.RequestBoundsCommand.KIND){const k=j.newRoot;k&&(this.currentRoot=k,(j.kind===P.SetModelCommand.KIND||j.kind===C.UpdateModelCommand.KIND)&&(this.lastSubmittedModelType=k.type))}}handleRequestModel(j){const k=Object.assign({needsClientLayout:this.viewerOptions.needsClientLayout,needsServerLayout:this.viewerOptions.needsServerLayout},j.options),x=Object.assign(Object.assign({},j),{options:k});return this.forwardToServer(x),!1}handleComputedBounds(j){if(this.viewerOptions.needsServerLayout)return!0;{const k=this.currentRoot;return this.computedBoundsApplicator.apply(k,j),k.type===this.lastSubmittedModelType?this.actionDispatcher.dispatch(m.UpdateModelAction.create(k)):this.actionDispatcher.dispatch(m.SetModelAction.create(k)),this.lastSubmittedModelType=k.type,!1}}handleExportSvgAction(j){const k=new Blob([j.svg],{type:"text/plain;charset=utf-8"});return(0,b.saveAs)(k,"diagram.svg"),!1}handleServerStateAction(j){return!1}commitModel(j){const k=this.currentRoot;return this.currentRoot=j,k}};return Ep.DiagramServerProxy=I,f([(0,w.inject)(g.TYPES.ILogger),h("design:type",Object)],I.prototype,"logger",void 0),f([(0,w.inject)(T.ComputedBoundsApplicator),h("design:type",T.ComputedBoundsApplicator)],I.prototype,"computedBoundsApplicator",void 0),Ep.DiagramServerProxy=I=f([(0,w.injectable)()],I),Ep}var my={},y0t;function kUt(){if(y0t)return my;y0t=1;var f=my&&my.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h=my&&my.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)};Object.defineProperty(my,"__esModule",{value:!0}),my.LocalModelSource=void 0;const b=emt(),w=Zt(),m=jc(),P=Sp(),g=LM(),E=Qn(),C=ES(),T=c2e(),M=CA();let _=class extends M.ModelSource{constructor(){super(...arguments),this.currentRoot=C.EMPTY_ROOT}get model(){return this.currentRoot}set model(O){this.setModel(O)}initialize(O){super.initialize(O),O.register(m.ComputedBoundsAction.KIND,this),O.register(m.RequestPopupModelAction.KIND,this)}setModel(O){return this.currentRoot=O,this.submitModel(O,!1)}commitModel(O){const j=this.currentRoot;return this.currentRoot=O,j}updateModel(O){return O===void 0?this.submitModel(this.currentRoot,!0):(this.currentRoot=O,this.submitModel(O,!0))}async getSelection(){const O=await this.actionDispatcher.request(P.GetSelectionAction.create()),j=[];return this.gatherSelectedElements(this.currentRoot,new Set(O.selectedElementsIDs),j),j}gatherSelectedElements(O,j,k){if(j.has(O.id)&&k.push(O),O.children)for(const x of O.children)this.gatherSelectedElements(x,j,k)}async getViewport(){const O=await this.actionDispatcher.request(P.GetViewportAction.create());return{scroll:O.viewport.scroll,zoom:O.viewport.zoom,canvasBounds:O.canvasBounds}}async submitModel(O,j,k){if(this.viewerOptions.needsClientLayout){const x=await this.actionDispatcher.request(m.RequestBoundsAction.create(O)),R=this.computedBoundsApplicator.apply(this.currentRoot,x);await this.doSubmitModel(O,j,k,R)}else await this.doSubmitModel(O,j,k)}async doSubmitModel(O,j,k,x){if(this.layoutEngine!==void 0)try{const H=this.layoutEngine.layout(O,x);H instanceof Promise?O=await H:H!==void 0&&(O=H)}catch(H){this.logger.error(this,H.toString(),H.stack)}const R=this.lastSubmittedModelType;if(this.lastSubmittedModelType=O.type,k&&k.kind===m.RequestModelAction.KIND&&k.requestId){const H=k;await this.actionDispatcher.dispatch(m.SetModelAction.create(O,H.requestId))}else if(j&&O.type===R){const H=Array.isArray(j)?j:O;await this.actionDispatcher.dispatch(m.UpdateModelAction.create(H,{animate:!0,cause:k}))}else await this.actionDispatcher.dispatch(m.SetModelAction.create(O))}applyMatches(O){const j=this.currentRoot;return(0,T.applyMatches)(j,O),this.submitModel(j,O)}addElements(O){const j=[];for(const k of O){const x=k;typeof x.element=="object"&&typeof x.parentId=="string"?j.push({right:x.element,rightParentId:x.parentId}):typeof x.id=="string"&&j.push({right:x,rightParentId:this.currentRoot.id})}return this.applyMatches(j)}removeElements(O){const j=[],k=new g.SModelIndex;k.add(this.currentRoot);for(const x of O){const R=x;if(R.elementId!==void 0&&R.parentId!==void 0){const H=k.getById(R.elementId);H!==void 0&&j.push({left:H,leftParentId:R.parentId})}else{const H=k.getById(R);H!==void 0&&j.push({left:H,leftParentId:this.currentRoot.id})}}return this.applyMatches(j)}handle(O){switch(O.kind){case m.RequestModelAction.KIND:this.handleRequestModel(O);break;case m.ComputedBoundsAction.KIND:this.computedBoundsApplicator.apply(this.currentRoot,O);break;case m.RequestPopupModelAction.KIND:this.handleRequestPopupModel(O);break;case m.ExportSvgAction.KIND:this.handleExportSvgAction(O);break}}handleRequestModel(O){this.submitModel(this.currentRoot,!1,O)}handleRequestPopupModel(O){if(this.popupModelProvider!==void 0){const j=(0,g.findElement)(this.currentRoot,O.elementId),k=this.popupModelProvider.getPopupModel(O,j);k!==void 0&&(k.canvasBounds=O.bounds,this.actionDispatcher.dispatch(m.SetPopupModelAction.create(k,O.requestId)))}}handleExportSvgAction(O){const j=new Blob([O.svg],{type:"text/plain;charset=utf-8"});(0,b.saveAs)(j,"diagram.svg")}};return my.LocalModelSource=_,f([(0,w.inject)(E.TYPES.ILogger),h("design:type",Object)],_.prototype,"logger",void 0),f([(0,w.inject)(M.ComputedBoundsApplicator),h("design:type",M.ComputedBoundsApplicator)],_.prototype,"computedBoundsApplicator",void 0),f([(0,w.inject)(E.TYPES.IPopupModelProvider),(0,w.optional)(),h("design:type",Object)],_.prototype,"popupModelProvider",void 0),f([(0,w.inject)(E.TYPES.IModelLayoutEngine),(0,w.optional)(),h("design:type",Object)],_.prototype,"layoutEngine",void 0),my.LocalModelSource=_=f([(0,w.injectable)()],_),my}var vy={},_0t;function RUt(){if(_0t)return vy;_0t=1;var f=vy&&vy.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=vy&&vy.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(vy,"__esModule",{value:!0}),vy.ForwardingLogger=void 0;const b=Zt(),w=jc(),m=Bye(),P=Qn();let g=class{error(C,T,...M){this.logLevel>=m.LogLevel.error&&this.forward(C,T,m.LogLevel.error,M)}warn(C,T,...M){this.logLevel>=m.LogLevel.warn&&this.forward(C,T,m.LogLevel.warn,M)}info(C,T,...M){this.logLevel>=m.LogLevel.info&&this.forward(C,T,m.LogLevel.info,M)}log(C,T,...M){if(this.logLevel>=m.LogLevel.log)try{const _=typeof C=="object"?C.constructor.name:String(C);console.log.apply(C,[_+": "+T,...M])}catch{}}forward(C,T,M,_){const I=new Date,O=w.LoggingAction.create({message:T,severity:m.LogLevel[M],time:I.toLocaleTimeString(),caller:typeof C=="object"?C.constructor.name:String(C),params:_.map(j=>JSON.stringify(j))});this.modelSourceProvider().then(j=>{try{j.handle(O)}catch(k){try{console.log.apply(C,[T,O,k])}catch{}}})}};return vy.ForwardingLogger=g,f([(0,b.inject)(P.TYPES.ModelSourceProvider),h("design:type",Function)],g.prototype,"modelSourceProvider",void 0),f([(0,b.inject)(P.TYPES.LogLevel),h("design:type",Number)],g.prototype,"logLevel",void 0),vy.ForwardingLogger=g=f([(0,b.injectable)()],g),vy}var rS={},E0t;function xUt(){if(E0t)return rS;E0t=1;var f=rS&&rS.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(rS,"__esModule",{value:!0}),rS.WebSocketDiagramServerProxy=void 0;const h=Zt(),b=tmt();let w=class extends b.DiagramServerProxy{listen(P){P.addEventListener("message",g=>{this.messageReceived(g.data)}),P.addEventListener("error",g=>{this.logger.error(this,"error event received",g)}),this.webSocket=P}disconnect(){this.webSocket&&(this.webSocket.close(),this.webSocket=void 0)}sendMessage(P){if(this.webSocket)this.webSocket.send(JSON.stringify(P));else throw new Error("WebSocket is not connected")}};return rS.WebSocketDiagramServerProxy=w,rS.WebSocketDiagramServerProxy=w=f([(0,h.injectable)()],w),rS}var S3={},S0t;function LUt(){if(S0t)return S3;S0t=1,Object.defineProperty(S3,"__esModule",{value:!0}),S3.ColorMap=S3.toSVG=S3.rgb=void 0;function f(w,m,P){return{red:w,green:m,blue:P}}S3.rgb=f;function h(w){return"rgb("+w.red+","+w.green+","+w.blue+")"}S3.toSVG=h;class b{constructor(m){this.stops=m}getColor(m){m=Math.max(0,Math.min(.99999999,m));const P=Math.floor(m*this.stops.length);return this.stops[P]}}return S3.ColorMap=b,S3}var P0t;function NUt(){return P0t||(P0t=1,(function(f){var h=d3&&d3.__createBinding||(Object.create?(function(te,fe,ve,me){me===void 0&&(me=ve);var ke=Object.getOwnPropertyDescriptor(fe,ve);(!ke||("get"in ke?!fe.__esModule:ke.writable||ke.configurable))&&(ke={enumerable:!0,get:function(){return fe[ve]}}),Object.defineProperty(te,me,ke)}):(function(te,fe,ve,me){me===void 0&&(me=ve),te[me]=fe[ve]})),b=d3&&d3.__exportStar||function(te,fe){for(var ve in te)ve!=="default"&&!Object.prototype.hasOwnProperty.call(fe,ve)&&h(fe,te,ve)},w=d3&&d3.__importDefault||function(te){return te&&te.__esModule?te:{default:te}};Object.defineProperty(f,"__esModule",{value:!0}),f.modelSourceModule=f.zorderModule=f.viewportModule=f.updateModule=f.undoRedoModule=f.selectModule=f.routingModule=f.openModule=f.moveModule=f.hoverModule=f.fadeModule=f.exportModule=f.expandModule=f.edgeLayoutModule=f.edgeJunctionModule=f.edgeIntersectionModule=f.decorationModule=f.contextMenuModule=f.commandPaletteModule=f.buttonModule=f.boundsModule=f.defaultModule=void 0,b(jye(),f),b(Rye(),f),b(lJ(),f),b(zpt(),f),b(eN(),f),b(SA(),f),b(Vpt(),f),b(Ca(),f),b(kb(),f),b(Gpt(),f),b(Upt(),f),b(fJ(),f),b(xye(),f),b(ES(),f),b(Qh(),f),b(Oc(),f),b(hJ(),f),b(Lye(),f),b(H3(),f),b(Pp(),f),b(Jpt(),f),b(iN(),f),b(Qpt(),f),b(Zpt(),f),b(ewt(),f),b(twt(),f),b(mh(),f),b(Qn(),f);const m=w(nwt());f.defaultModule=m.default,b($ye(),f),b(iwt(),f),b(Kye(),f),b(Xs(),f),b(rwt(),f),b(owt(),f),b(cwt(),f),b(gJ(),f),b(bJ(),f),b(swt(),f),b(Hye(),f),b(lwt(),f),b(gUt(),f),b(zye(),f),b(fwt(),f),b(Rve(),f),b(hwt(),f),b(cN(),f),b(bUt(),f),b(dwt(),f),b(pwt(),f),b(oN(),f),b(Uye(),f),b(bwt(),f),b(vJ(),f),b(sN(),f),b(Yye(),f),b(wwt(),f),b(Xye(),f),b(pUt(),f),b(mwt(),f),b(Vye(),f),b(Jye(),f),b(wUt(),f),b(Qye(),f),b(rN(),f),b(vwt(),f),b(PA(),f),b(Zye(),f),b(ywt(),f),b(_wt(),f),b(e2e(),f),b(Swt(),f),b(Pwt(),f),b(Mwt(),f),b(SS(),f),b(yJ(),f),b(_Ut(),f),b(uwt(),f),b(Iwt(),f),b(Cwt(),f),b(t2e(),f),b(EUt(),f),b(MS(),f),b(pJ(),f),b(Twt(),f),b(i2e(),f),b(jwt(),f),b(r2e(),f),b(Ma(),f),b(n2e(),f),b(wJ(),f),b(Iy(),f),b(Awt(),f),b(Rb(),f),b(Dwt(),f),b(kwt(),f),b(c2e(),f),b(s2e(),f),b(u2e(),f),b(V3(),f),b(o2e(),f),b(Gye(),f),b(_J(),f),b(Wye(),f),b(Rwt(),f);const P=w(xwt());f.boundsModule=P.default;const g=w(Lwt());f.buttonModule=g.default;const E=w(Nwt());f.commandPaletteModule=E.default;const C=w(Fwt());f.contextMenuModule=C.default;const T=w(Bwt());f.decorationModule=T.default;const M=w(PUt());f.edgeIntersectionModule=M.default;const _=w(MUt());f.edgeJunctionModule=_.default;const I=w(Rve());f.edgeLayoutModule=I.default;const O=w($wt());f.expandModule=O.default;const j=w(Kwt());f.exportModule=j.default;const k=w(qwt());f.fadeModule=k.default;const x=w(Hwt());f.hoverModule=x.default;const R=w(zwt());f.moveModule=R.default;const H=w(Vwt());f.openModule=H.default;const F=w(Gwt());f.routingModule=F.default;const $=w(Uwt());f.selectModule=$.default;const W=w(Wwt());f.undoRedoModule=W.default;const re=w(Ywt());f.updateModule=re.default;const ae=w(Xwt());f.viewportModule=ae.default;const ce=w(Jwt());f.zorderModule=ce.default,b(MA(),f),b(IUt(),f),b(TUt(),f),b(AUt(),f),b(OUt(),f),b(Cy(),f),b(Zwt(),f),b(gwt(),f),b(mJ(),f),b(tmt(),f),b(kUt(),f),b(RUt(),f),b(CA(),f),b(xUt(),f);const J=w(Qwt());f.modelSourceModule=J.default,b(My(),f),b(awt(),f),b(LUt(),f),b(PS(),f),b(EA(),f),b(Bye(),f),b(q3(),f)})(d3)),d3}var de=NUt(),FUt=Object.getOwnPropertyDescriptor,BUt=(f,h,b,w)=>{for(var m=w>1?void 0:w?FUt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let RM=class extends de.AbstractUIExtension{constructor(f,h){super(),this.chevronPosition=f,this.chevronOrientation=h,this.mainCheckbox=document.createElement("input")}mainCheckbox;initializeContents(f){f.classList.add("ui-float"),this.mainCheckbox.type="checkbox";const h=this.id()+"-checkbox";this.mainCheckbox.id=h,this.mainCheckbox.classList.add("accordion-state"),this.mainCheckbox.hidden=!0;const b=document.createElement("label");b.htmlFor=h;const w=document.createElement("div");w.classList.add(`chevron-${this.chevronPosition}`,"accordion-button"),this.chevronOrientation==="up"&&w.classList.add("flip-chevron"),this.initializeHeaderContent(w),b.appendChild(w);const m=document.createElement("div");m.classList.add("accordion-content");const P=document.createElement("div");this.initializeHidableContent(P),m.appendChild(P),f.appendChild(this.mainCheckbox),f.appendChild(b),f.appendChild(m)}toggleStatus(){this.mainCheckbox.checked=!this.mainCheckbox.checked}};RM=BUt([vr()],RM);const $Ut="0c4087a2ade4b238222af521037e3d6e69d79513",M0t={hash:$Ut};var KUt=Object.defineProperty,qUt=Object.getOwnPropertyDescriptor,HUt=(f,h,b)=>h in f?KUt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,zUt=(f,h,b,w)=>{for(var m=w>1?void 0:w?qUt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},VUt=(f,h,b)=>HUt(f,h+"",b);let pS=class extends RM{constructor(){super("right","up")}id(){return pS.ID}containerClass(){return pS.ID}initializeHidableContent(f){f.innerHTML=` +

CTRL+Space: Command Palette

+

CTRL+Z: Undo

+

CTRL+Shift+Z: Redo

+

Del: Delete selected elements

+

T: Toggle Label Type Edit UI

+

CTRL+O: Load diagram from json

+

CTRL+Shift+O: Open default diagram

+

CTRL+S: Save diagram to json

+

CTRL+L: Automatically layout diagram

+

CTRL+Shift+F: Fit diagram to screen

+

CTRL+C: Copy selected elements

+

CTRL+V: Paste previously copied elements

+

Esc: Disable current creation tool

+

Toggle Creation Tool: Refer to key in the tool palette

+ `,f.appendChild(this.buildCommitHash())}initializeHeaderContent(f){f.classList.add("help-accordion-icon"),f.innerText="Keyboard Shortcuts | Help"}buildCommitHash(){const f=document.createElement("div");f.id="hashHolder",f.innerHTML="Commit:";const h=document.createElement("a");return h.innerHTML=M0t.hash.substring(0,6),h.href=`https://github.com/DataFlowAnalysis/OnlineEditor/tree/${M0t.hash}`,h.id="hash",h.target="_blank",f.appendChild(h),f}};VUt(pS,"ID","help-ui");pS=zUt([vr()],pS);const Db={CreationTool:Symbol("CreationTool"),DefaultUIElement:Symbol("DefaultUIElement")},GUt=new xf(f=>{f(pS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(pS),f(Db.DefaultUIElement).toService(pS)}),OL=Symbol("StartUpAgent");var UUt=Object.getOwnPropertyDescriptor,WUt=(f,h,b,w)=>{for(var m=w>1?void 0:w?UUt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},C0t=(f,h)=>(b,w)=>h(b,w,f);let xve=class{constructor(f,h){this.actionDispatcher=f,this.defaultUiElements=h}run(){const f=this.defaultUiElements.map(h=>de.SetUIExtensionVisibilityAction.create({extensionId:h.id(),visible:!0}));this.actionDispatcher.dispatchAll(f)}};xve=WUt([vr(),C0t(0,Et(de.TYPES.IActionDispatcher)),C0t(1,cJ(Db.DefaultUIElement))],xve);var mg=Sp();const YUt=75;var xL;(f=>{function h(b,w=!0){const m=b.children?.filter(P=>mg.getBasicType(P)==="node").map(P=>P.id)??[];return mg.FitToScreenAction.create(m,{padding:YUt,animate:w})}f.create=h})(xL||(xL={}));function SX(f){throw new Error('Could not dynamically require "'+f+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var _ve={exports:{}},I0t;function XUt(){return I0t||(I0t=1,(function(f,h){(function(b){f.exports=b()})(function(){return(function(){function b(w,m,P){function g(T,M){if(!m[T]){if(!w[T]){var _=typeof SX=="function"&&SX;if(!M&&_)return _(T,!0);if(E)return E(T,!0);var I=new Error("Cannot find module '"+T+"'");throw I.code="MODULE_NOT_FOUND",I}var O=m[T]={exports:{}};w[T][0].call(O.exports,function(j){var k=w[T][1][j];return g(k||j)},O,O.exports,b,w,m,P)}return m[T].exports}for(var E=typeof SX=="function"&&SX,C=0;C0&&arguments[0]!==void 0?arguments[0]:{},I=_.defaultLayoutOptions,O=I===void 0?{}:I,j=_.algorithms,k=j===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:j,x=_.workerFactory,R=_.workerUrl;if(g(this,T),this.defaultLayoutOptions=O,this.initialized=!1,typeof R>"u"&&typeof x>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var H=x;typeof R<"u"&&typeof x>"u"&&(H=function(W){return new Worker(W)});var F=H(R);if(typeof F.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new C(F),this.worker.postMessage({cmd:"register",algorithms:k}).then(function($){return M.initialized=!0}).catch(console.err)}return P(T,[{key:"layout",value:function(_){var I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},O=I.layoutOptions,j=O===void 0?this.defaultLayoutOptions:O,k=I.logging,x=k===void 0?!1:k,R=I.measureExecutionTime,H=R===void 0?!1:R;return _?this.worker.postMessage({cmd:"layout",graph:_,layoutOptions:j,options:{logging:x,measureExecutionTime:H}}):Promise.reject(new Error("Missing mandatory parameter 'graph'."))}},{key:"knownLayoutAlgorithms",value:function(){return this.worker.postMessage({cmd:"algorithms"})}},{key:"knownLayoutOptions",value:function(){return this.worker.postMessage({cmd:"options"})}},{key:"knownLayoutCategories",value:function(){return this.worker.postMessage({cmd:"categories"})}},{key:"terminateWorker",value:function(){this.worker.terminate()}}]),T})();m.default=E;var C=(function(){function T(M){var _=this;if(g(this,T),M===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=M,this.worker.onmessage=function(I){setTimeout(function(){_.receive(_,I)},0)}}return P(T,[{key:"postMessage",value:function(_){var I=this.id||0;this.id=I+1,_.id=I;var O=this;return new Promise(function(j,k){O.resolvers[I]=function(x,R){x?(O.convertGwtStyleError(x),k(x)):j(R)},O.worker.postMessage(_)})}},{key:"receive",value:function(_,I){var O=I.data,j=_.resolvers[O.id];j&&(delete _.resolvers[O.id],O.error?j(O.error):j(null,O.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(_){if(_){var I=_.__java$exception;I&&(I.cause&&I.cause.backingJsObject&&(_.cause=I.cause.backingJsObject,this.convertGwtStyleError(_.cause)),delete _.__java$exception)}}}]),T})()},{}],2:[function(b,w,m){(function(P){(function(){var g;typeof window<"u"?g=window:typeof P<"u"?g=P:typeof self<"u"&&(g=self);var E;function C(){}function T(){}function M(){}function _(){}function I(){}function O(){}function j(){}function k(){}function x(){}function R(){}function H(){}function F(){}function $(){}function W(){}function re(){}function ae(){}function ce(){}function J(){}function te(){}function fe(){}function ve(){}function me(){}function ke(){}function tt(){}function De(){}function ct(){}function Z(){}function Nt(){}function ii(){}function kr(){}function jo(){}function Gn(){}function pc(){}function ls(){}function Lr(){}function gt(){}function Xn(){}function jn(){}function ri(){}function Er(){}function Ml(){}function yg(){}function Si(){}function _o(){}function Au(){}function cf(){}function Rs(){}function xs(){}function xb(){}function Zh(){}function Ia(){}function mm(){}function IA(){}function vh(){}function Mp(){}function ed(){}function lN(){}function MJ(){}function NM(){}function FM(){}function ft(){}function It(){}function zt(){}function zn(){}function or(){}function uu(){}function Qu(){}function fo(){}function ni(){}function li(){}function bi(){}function Pi(){}function Eo(){}function fs(){}function au(){}function e1(){}function TA(){}function fN(){}function hN(){}function w2e(){}function m2e(){}function v2e(){}function y2e(){}function _2e(){}function E2e(){}function S2e(){}function P2e(){}function M2e(){}function C2e(){}function I2e(){}function T2e(){}function j2e(){}function CJ(){}function A2e(){}function O2e(){}function D2e(){}function k2e(){}function dN(){}function gN(){}function jA(){}function R2e(){}function x2e(){}function bN(){}function L2e(){}function N2e(){}function F2e(){}function AA(){}function B2e(){}function $2e(){}function K2e(){}function q2e(){}function H2e(){}function z2e(){}function V2e(){}function G2e(){}function U2e(){}function IJ(){}function W2e(){}function Y2e(){}function X2e(){}function J2e(){}function Q2e(){}function TJ(){}function Z2e(){}function e3e(){}function t3e(){}function n3e(){}function i3e(){}function r3e(){}function o3e(){}function c3e(){}function s3e(){}function u3e(){}function a3e(){}function l3e(){}function f3e(){}function h3e(){}function pN(){}function d3e(){}function g3e(){}function b3e(){}function p3e(){}function w3e(){}function jJ(){}function m3e(){}function v3e(){}function y3e(){}function _3e(){}function E3e(){}function S3e(){}function P3e(){}function M3e(){}function C3e(){}function I3e(){}function T3e(){}function j3e(){}function A3e(){}function O3e(){}function D3e(){}function k3e(){}function R3e(){}function x3e(){}function L3e(){}function N3e(){}function F3e(){}function B3e(){}function $3e(){}function K3e(){}function q3e(){}function H3e(){}function z3e(){}function V3e(){}function G3e(){}function U3e(){}function W3e(){}function Y3e(){}function X3e(){}function J3e(){}function Q3e(){}function Z3e(){}function e_e(){}function t_e(){}function n_e(){}function i_e(){}function r_e(){}function o_e(){}function c_e(){}function s_e(){}function u_e(){}function a_e(){}function l_e(){}function f_e(){}function h_e(){}function d_e(){}function g_e(){}function b_e(){}function p_e(){}function w_e(){}function m_e(){}function v_e(){}function y_e(){}function __e(){}function E_e(){}function S_e(){}function P_e(){}function M_e(){}function C_e(){}function I_e(){}function T_e(){}function j_e(){}function A_e(){}function O_e(){}function D_e(){}function k_e(){}function R_e(){}function x_e(){}function L_e(){}function N_e(){}function F_e(){}function B_e(){}function $_e(){}function K_e(){}function q_e(){}function H_e(){}function z_e(){}function V_e(){}function G_e(){}function U_e(){}function W_e(){}function Y_e(){}function X_e(){}function J_e(){}function Q_e(){}function Z_e(){}function eEe(){}function tEe(){}function nEe(){}function iEe(){}function rEe(){}function oEe(){}function cEe(){}function sEe(){}function uEe(){}function aEe(){}function AJ(){}function lEe(){}function fEe(){}function hEe(){}function dEe(){}function gEe(){}function bEe(){}function pEe(){}function wEe(){}function mEe(){}function vEe(){}function yEe(){}function _Ee(){}function EEe(){}function SEe(){}function PEe(){}function MEe(){}function CEe(){}function IEe(){}function TEe(){}function jEe(){}function AEe(){}function OEe(){}function DEe(){}function kEe(){}function REe(){}function xEe(){}function LEe(){}function NEe(){}function FEe(){}function BEe(){}function $Ee(){}function KEe(){}function qEe(){}function HEe(){}function zEe(){}function VEe(){}function GEe(){}function UEe(){}function WEe(){}function YEe(){}function XEe(){}function JEe(){}function QEe(){}function ZEe(){}function e4e(){}function t4e(){}function n4e(){}function i4e(){}function r4e(){}function o4e(){}function c4e(){}function s4e(){}function u4e(){}function a4e(){}function l4e(){}function f4e(){}function h4e(){}function d4e(){}function g4e(){}function b4e(){}function p4e(){}function w4e(){}function m4e(){}function v4e(){}function y4e(){}function _4e(){}function E4e(){}function OJ(){}function S4e(){}function P4e(){}function M4e(){}function C4e(){}function I4e(){}function T4e(){}function j4e(){}function A4e(){}function O4e(){}function D4e(){}function k4e(){}function R4e(){}function x4e(){}function L4e(){}function N4e(){}function F4e(){}function B4e(){}function $4e(){}function K4e(){}function q4e(){}function DJ(){}function H4e(){}function z4e(){}function V4e(){}function G4e(){}function U4e(){}function W4e(){}function kJ(){}function RJ(){}function Y4e(){}function xJ(){}function LJ(){}function X4e(){}function J4e(){}function Q4e(){}function Z4e(){}function eSe(){}function tSe(){}function nSe(){}function iSe(){}function rSe(){}function NJ(){}function oSe(){}function cSe(){}function sSe(){}function uSe(){}function aSe(){}function lSe(){}function fSe(){}function hSe(){}function dSe(){}function gSe(){}function bSe(){}function pSe(){}function wSe(){}function mSe(){}function vSe(){}function ySe(){}function _Se(){}function ESe(){}function SSe(){}function PSe(){}function MSe(){}function CSe(){}function ISe(){}function TSe(){}function jSe(){}function ASe(){}function OSe(){}function DSe(){}function kSe(){}function RSe(){}function xSe(){}function LSe(){}function NSe(){}function FSe(){}function BSe(){}function $Se(){}function KSe(){}function qSe(){}function HSe(){}function zSe(){}function VSe(){}function GSe(){}function USe(){}function WSe(){}function YSe(){}function XSe(){}function JSe(){}function QSe(){}function ZSe(){}function e5e(){}function t5e(){}function n5e(){}function i5e(){}function r5e(){}function o5e(){}function c5e(){}function s5e(){}function u5e(){}function a5e(){}function l5e(){}function f5e(){}function h5e(){}function d5e(){}function g5e(){}function b5e(){}function p5e(){}function w5e(){}function m5e(){}function wN(){}function mN(){}function vN(){}function v5e(){}function y5e(){}function _5e(){}function E5e(){}function S5e(){}function FJ(){}function P5e(){}function M5e(){}function Smt(){}function C5e(){}function I5e(){}function T5e(){}function j5e(){}function A5e(){}function O5e(){}function D5e(){}function _g(){}function k5e(){}function Ay(){}function BJ(){}function R5e(){}function x5e(){}function L5e(){}function N5e(){}function F5e(){}function B5e(){}function $5e(){}function K5e(){}function q5e(){}function H5e(){}function z5e(){}function V5e(){}function G5e(){}function U5e(){}function W5e(){}function Y5e(){}function X5e(){}function J5e(){}function Q5e(){}function Z5e(){}function e6e(){}function He(){}function t6e(){}function n6e(){}function i6e(){}function r6e(){}function o6e(){}function c6e(){}function s6e(){}function u6e(){}function a6e(){}function l6e(){}function yN(){}function f6e(){}function h6e(){}function d6e(){}function g6e(){}function b6e(){}function $J(){}function OA(){}function DA(){}function p6e(){}function KJ(){}function kA(){}function w6e(){}function m6e(){}function v6e(){}function y6e(){}function _6e(){}function E6e(){}function RA(){}function S6e(){}function P6e(){}function M6e(){}function xA(){}function C6e(){}function qJ(){}function I6e(){}function _N(){}function HJ(){}function T6e(){}function j6e(){}function A6e(){}function O6e(){}function Pmt(){}function D6e(){}function k6e(){}function R6e(){}function x6e(){}function L6e(){}function N6e(){}function F6e(){}function B6e(){}function $6e(){}function K6e(){}function G3(){}function EN(){}function q6e(){}function H6e(){}function z6e(){}function V6e(){}function G6e(){}function U6e(){}function W6e(){}function Y6e(){}function X6e(){}function J6e(){}function Q6e(){}function Z6e(){}function ePe(){}function tPe(){}function nPe(){}function iPe(){}function rPe(){}function oPe(){}function cPe(){}function sPe(){}function uPe(){}function aPe(){}function lPe(){}function fPe(){}function hPe(){}function dPe(){}function gPe(){}function bPe(){}function pPe(){}function wPe(){}function mPe(){}function vPe(){}function yPe(){}function _Pe(){}function EPe(){}function SPe(){}function PPe(){}function MPe(){}function CPe(){}function IPe(){}function TPe(){}function jPe(){}function APe(){}function OPe(){}function DPe(){}function kPe(){}function RPe(){}function xPe(){}function LPe(){}function NPe(){}function FPe(){}function BPe(){}function $Pe(){}function KPe(){}function qPe(){}function HPe(){}function zPe(){}function VPe(){}function GPe(){}function UPe(){}function WPe(){}function YPe(){}function XPe(){}function JPe(){}function QPe(){}function ZPe(){}function eMe(){}function tMe(){}function nMe(){}function iMe(){}function rMe(){}function oMe(){}function cMe(){}function sMe(){}function uMe(){}function aMe(){}function lMe(){}function fMe(){}function hMe(){}function dMe(){}function gMe(){}function bMe(){}function pMe(){}function wMe(){}function mMe(){}function vMe(){}function yMe(){}function _Me(){}function EMe(){}function SMe(){}function PMe(){}function MMe(){}function CMe(){}function IMe(){}function TMe(){}function jMe(){}function AMe(){}function OMe(){}function DMe(){}function kMe(){}function RMe(){}function zJ(){}function xMe(){}function LMe(){}function SN(){DS()}function NMe(){bK()}function FMe(){o6()}function BMe(){A7()}function $Me(){Hce()}function KMe(){dl()}function qMe(){ece()}function HMe(){NI()}function zMe(){nC()}function VMe(){tC()}function GMe(){TC()}function UMe(){Y8e()}function WMe(){h2()}function YMe(){f9()}function XMe(){cBe()}function JMe(){vKe()}function QMe(){FBe()}function ZMe(){tNe()}function eCe(){iE()}function tCe(){I1()}function nCe(){yKe()}function iCe(){WNe()}function rCe(){Lue()}function oCe(){sVe()}function cCe(){nNe()}function sCe(){Oe()}function uCe(){eNe()}function aCe(){_Ke()}function lCe(){Pqe()}function fCe(){rNe()}function hCe(){HBe()}function dCe(){X8e()}function gCe(){Pse()}function bCe(){ow()}function pCe(){WKe()}function wCe(){KI()}function mCe(){zq()}function vCe(){JK()}function yCe(){A0()}function _Ce(){yre()}function ECe(){iNe()}function SCe(){bYe()}function PCe(){_se()}function MCe(){Lq()}function CCe(){bO()}function ICe(){N7()}function VJ(){kn()}function TCe(){QO()}function jCe(){Toe()}function GJ(){nD()}function il(){zke()}function UJ(){Z$()}function ACe(){uue()}function WJ(e){yt(e)}function OCe(e){this.a=e}function LA(e){this.a=e}function DCe(e){this.a=e}function kCe(e){this.a=e}function RCe(e){this.a=e}function xCe(e){this.a=e}function LCe(e){this.a=e}function NCe(e){this.a=e}function YJ(e){this.a=e}function XJ(e){this.a=e}function FCe(e){this.a=e}function PN(e){this.a=e}function BCe(e){this.a=e}function MN(e){this.a=e}function $Ce(e){this.a=e}function CN(e){this.a=e}function KCe(e){this.a=e}function IN(e){this.a=e}function qCe(e){this.a=e}function HCe(e){this.a=e}function zCe(e){this.a=e}function JJ(e){this.b=e}function VCe(e){this.c=e}function GCe(e){this.a=e}function UCe(e){this.a=e}function WCe(e){this.a=e}function YCe(e){this.a=e}function XCe(e){this.a=e}function JCe(e){this.a=e}function QCe(e){this.a=e}function ZCe(e){this.a=e}function eIe(e){this.a=e}function tIe(e){this.a=e}function nIe(e){this.a=e}function iIe(e){this.a=e}function rIe(e){this.a=e}function QJ(e){this.a=e}function ZJ(e){this.a=e}function NA(e){this.a=e}function BM(e){this.a=e}function Eg(){this.a=[]}function oIe(e,t){e.a=t}function Mmt(e,t){e.a=t}function Cmt(e,t){e.b=t}function Imt(e,t){e.b=t}function Tmt(e,t){e.b=t}function eQ(e,t){e.j=t}function jmt(e,t){e.g=t}function Amt(e,t){e.i=t}function Omt(e,t){e.c=t}function Dmt(e,t){e.d=t}function kmt(e,t){e.d=t}function Rmt(e,t){e.c=t}function Sg(e,t){e.k=t}function xmt(e,t){e.c=t}function tQ(e,t){e.c=t}function nQ(e,t){e.a=t}function Lmt(e,t){e.a=t}function Nmt(e,t){e.f=t}function Fmt(e,t){e.a=t}function Bmt(e,t){e.b=t}function TN(e,t){e.d=t}function FA(e,t){e.i=t}function iQ(e,t){e.o=t}function $mt(e,t){e.r=t}function Kmt(e,t){e.a=t}function qmt(e,t){e.b=t}function cIe(e,t){e.e=t}function Hmt(e,t){e.f=t}function rQ(e,t){e.g=t}function zmt(e,t){e.e=t}function Vmt(e,t){e.f=t}function Gmt(e,t){e.f=t}function Umt(e,t){e.n=t}function Wmt(e,t){e.a=t}function Ymt(e,t){e.a=t}function Xmt(e,t){e.c=t}function Jmt(e,t){e.c=t}function Qmt(e,t){e.d=t}function Zmt(e,t){e.e=t}function evt(e,t){e.g=t}function tvt(e,t){e.a=t}function nvt(e,t){e.c=t}function ivt(e,t){e.d=t}function rvt(e,t){e.e=t}function ovt(e,t){e.f=t}function cvt(e,t){e.j=t}function svt(e,t){e.a=t}function uvt(e,t){e.b=t}function avt(e,t){e.a=t}function sIe(e){e.b=e.a}function uIe(e){e.c=e.d.d}function CS(e){this.d=e}function Pg(e){this.a=e}function U3(e){this.a=e}function oQ(e){this.a=e}function yh(e){this.a=e}function $M(e){this.a=e}function aIe(e){this.a=e}function cQ(e){this.a=e}function KM(e){this.a=e}function sQ(e){this.a=e}function uQ(e){this.a=e}function aQ(e){this.a=e}function Cp(e){this.a=e}function qM(e){this.a=e}function HM(e){this.a=e}function lQ(e){this.b=e}function W3(e){this.b=e}function Y3(e){this.b=e}function jN(e){this.a=e}function lIe(e){this.a=e}function fQ(e){this.a=e}function AN(e){this.c=e}function q(e){this.c=e}function fIe(e){this.c=e}function hQ(e){this.a=e}function dQ(e){this.a=e}function gQ(e){this.a=e}function bQ(e){this.a=e}function Un(e){this.a=e}function hIe(e){this.a=e}function pQ(e){this.a=e}function wQ(e){this.a=e}function dIe(e){this.a=e}function gIe(e){this.a=e}function IS(e){this.a=e}function bIe(e){this.a=e}function pIe(e){this.a=e}function wIe(e){this.a=e}function mIe(e){this.a=e}function vIe(e){this.a=e}function yIe(e){this.a=e}function _Ie(e){this.a=e}function EIe(e){this.a=e}function SIe(e){this.a=e}function PIe(e){this.a=e}function MIe(e){this.a=e}function CIe(e){this.a=e}function IIe(e){this.a=e}function TIe(e){this.a=e}function jIe(e){this.a=e}function AIe(e){this.a=e}function OIe(e){this.a=e}function zM(e){this.a=e}function DIe(e){this.a=e}function kIe(e){this.a=e}function BA(e){this.a=e}function RIe(e){this.a=e}function xIe(e){this.a=e}function X3(e){this.a=e}function mQ(e){this.a=e}function LIe(e){this.a=e}function NIe(e){this.a=e}function FIe(e){this.a=e}function BIe(e){this.a=e}function $Ie(e){this.a=e}function vQ(e){this.a=e}function yQ(e){this.a=e}function _Q(e){this.a=e}function $A(e){this.a=e}function KA(e){this.e=e}function J3(e){this.a=e}function KIe(e){this.a=e}function Oy(e){this.a=e}function EQ(e){this.a=e}function qIe(e){this.a=e}function HIe(e){this.a=e}function zIe(e){this.a=e}function VIe(e){this.a=e}function GIe(e){this.a=e}function UIe(e){this.a=e}function WIe(e){this.a=e}function YIe(e){this.a=e}function XIe(e){this.a=e}function JIe(e){this.a=e}function QIe(e){this.a=e}function SQ(e){this.a=e}function ZIe(e){this.a=e}function eTe(e){this.a=e}function tTe(e){this.a=e}function nTe(e){this.a=e}function iTe(e){this.a=e}function rTe(e){this.a=e}function oTe(e){this.a=e}function cTe(e){this.a=e}function sTe(e){this.a=e}function uTe(e){this.a=e}function aTe(e){this.a=e}function lTe(e){this.a=e}function fTe(e){this.a=e}function hTe(e){this.a=e}function dTe(e){this.a=e}function gTe(e){this.a=e}function bTe(e){this.a=e}function pTe(e){this.a=e}function wTe(e){this.a=e}function mTe(e){this.a=e}function vTe(e){this.a=e}function yTe(e){this.a=e}function _Te(e){this.a=e}function ETe(e){this.a=e}function STe(e){this.a=e}function PTe(e){this.a=e}function MTe(e){this.a=e}function CTe(e){this.a=e}function ITe(e){this.a=e}function TTe(e){this.a=e}function jTe(e){this.a=e}function ATe(e){this.a=e}function OTe(e){this.a=e}function DTe(e){this.a=e}function kTe(e){this.a=e}function RTe(e){this.a=e}function xTe(e){this.a=e}function LTe(e){this.c=e}function NTe(e){this.b=e}function FTe(e){this.a=e}function BTe(e){this.a=e}function $Te(e){this.a=e}function KTe(e){this.a=e}function qTe(e){this.a=e}function HTe(e){this.a=e}function zTe(e){this.a=e}function VTe(e){this.a=e}function GTe(e){this.a=e}function UTe(e){this.a=e}function WTe(e){this.a=e}function YTe(e){this.a=e}function XTe(e){this.a=e}function JTe(e){this.a=e}function QTe(e){this.a=e}function ZTe(e){this.a=e}function eje(e){this.a=e}function tje(e){this.a=e}function nje(e){this.a=e}function ije(e){this.a=e}function rje(e){this.a=e}function oje(e){this.a=e}function cje(e){this.a=e}function sje(e){this.a=e}function t1(e){this.a=e}function Dy(e){this.a=e}function uje(e){this.a=e}function aje(e){this.a=e}function lje(e){this.a=e}function fje(e){this.a=e}function hje(e){this.a=e}function dje(e){this.a=e}function gje(e){this.a=e}function bje(e){this.a=e}function pje(e){this.a=e}function wje(e){this.a=e}function mje(e){this.a=e}function vje(e){this.a=e}function yje(e){this.a=e}function _je(e){this.a=e}function Eje(e){this.a=e}function Sje(e){this.a=e}function qA(e){this.a=e}function Pje(e){this.a=e}function Mje(e){this.a=e}function Cje(e){this.a=e}function Ije(e){this.a=e}function Tje(e){this.a=e}function jje(e){this.a=e}function Aje(e){this.a=e}function Oje(e){this.a=e}function Dje(e){this.a=e}function kje(e){this.a=e}function Rje(e){this.a=e}function xje(e){this.a=e}function Lje(e){this.a=e}function Nje(e){this.a=e}function Fje(e){this.a=e}function Bje(e){this.a=e}function $je(e){this.a=e}function Kje(e){this.a=e}function qje(e){this.a=e}function Hje(e){this.a=e}function zje(e){this.a=e}function Vje(e){this.a=e}function Gje(e){this.a=e}function Uje(e){this.a=e}function Wje(e){this.a=e}function Yje(e){this.a=e}function Xje(e){this.a=e}function Jje(e){this.a=e}function PQ(e){this.a=e}function hi(e){this.b=e}function Qje(e){this.f=e}function MQ(e){this.a=e}function Zje(e){this.a=e}function eAe(e){this.a=e}function tAe(e){this.a=e}function nAe(e){this.a=e}function iAe(e){this.a=e}function rAe(e){this.a=e}function oAe(e){this.a=e}function cAe(e){this.a=e}function VM(e){this.a=e}function sAe(e){this.a=e}function uAe(e){this.b=e}function CQ(e){this.c=e}function HA(e){this.e=e}function aAe(e){this.a=e}function zA(e){this.a=e}function VA(e){this.a=e}function ON(e){this.a=e}function lAe(e){this.a=e}function fAe(e){this.d=e}function IQ(e){this.a=e}function TQ(e){this.a=e}function Lb(e){this.e=e}function lvt(){this.a=0}function vm(){z7e(this)}function Se(){NF(this)}function en(){Is(this)}function DN(){Wxe(this)}function hAe(){}function Nb(){this.c=ume}function fvt(e,t){t.Wb(e)}function dAe(e,t){e.b+=t}function gAe(e){e.b=new YN}function V(e){return e.e}function hvt(e){return e.a}function dvt(e){return e.a}function gvt(e){return e.a}function bvt(e){return e.a}function pvt(e){return e.a}function wvt(){return null}function mvt(){return null}function vvt(){gZ(),AHt()}function yvt(e){e.b.tf(e.e)}function TS(e,t){e.b=t-e.b}function jS(e,t){e.a=t-e.a}function bAe(e,t){t.ad(e.a)}function _vt(e,t){Ji(t,e)}function Evt(e,t,n){e.Od(n,t)}function GM(e,t){e.e=t,t.b=e}function jQ(e){hf(),this.a=e}function pAe(e){hf(),this.a=e}function wAe(e){hf(),this.a=e}function AQ(e){Hp(),this.a=e}function mAe(e){T_(),lG.be(e)}function Mg(){IDe.call(this)}function OQ(){IDe.call(this)}function DQ(){Mg.call(this)}function kN(){Mg.call(this)}function vAe(){Mg.call(this)}function UM(){Mg.call(this)}function hs(){Mg.call(this)}function AS(){Mg.call(this)}function sn(){Mg.call(this)}function Ou(){Mg.call(this)}function yAe(){Mg.call(this)}function tc(){Mg.call(this)}function _Ae(){Mg.call(this)}function EAe(){this.a=this}function GA(){this.Bb|=256}function SAe(){this.b=new M7e}function kQ(){kQ=Z,new en}function RQ(){DQ.call(this)}function PAe(e,t){e.length=t}function UA(e,t){Ee(e.a,t)}function Svt(e,t){Vce(e.c,t)}function Pvt(e,t){Yi(e.b,t)}function Mvt(e,t){P7(e.a,t)}function Cvt(e,t){PK(e.a,t)}function Q3(e,t){Bn(e.e,t)}function ky(e){$7(e.c,e.b)}function Ivt(e,t){e.kc().Nb(t)}function xQ(e){this.a=MAt(e)}function er(){this.a=new en}function MAe(){this.a=new en}function WA(){this.a=new Se}function RN(){this.a=new Se}function LQ(){this.a=new Se}function Zu(){this.a=new bi}function Cg(){this.a=new nBe}function NQ(){this.a=new IJ}function FQ(){this.a=new K8e}function CAe(){this.a=new jNe}function BQ(){this.a=new VLe}function $Q(){this.a=new bke}function IAe(){this.a=new Se}function KQ(){this.a=new Se}function TAe(){this.a=new Se}function jAe(){this.a=new Se}function AAe(){this.d=new Se}function OAe(){this.a=new er}function DAe(){this.a=new en}function kAe(){this.b=new en}function RAe(){this.b=new Se}function qQ(){this.e=new Se}function xAe(){this.d=new Se}function LAe(){this.a=new tCe}function NAe(){Se.call(this)}function HQ(){WA.call(this)}function FAe(){i8.call(this)}function BAe(){KQ.call(this)}function xN(){OS.call(this)}function OS(){hAe.call(this)}function Ry(){hAe.call(this)}function zQ(){Ry.call(this)}function $Ae(){ELe.call(this)}function KAe(){ELe.call(this)}function qAe(){JQ.call(this)}function HAe(){JQ.call(this)}function zAe(){JQ.call(this)}function VAe(){QQ.call(this)}function ds(){wi.call(this)}function VQ(){b6e.call(this)}function GQ(){b6e.call(this)}function GAe(){u9e.call(this)}function UAe(){u9e.call(this)}function WAe(){en.call(this)}function YAe(){en.call(this)}function XAe(){en.call(this)}function JAe(){er.call(this)}function LN(){pKe.call(this)}function QAe(){GA.call(this)}function NN(){Eee.call(this)}function FN(){Eee.call(this)}function UQ(){en.call(this)}function BN(){en.call(this)}function ZAe(){en.call(this)}function WQ(){xA.call(this)}function e9e(){xA.call(this)}function t9e(){WQ.call(this)}function n9e(){zJ.call(this)}function i9e(e){K$e.call(this,e)}function r9e(e){K$e.call(this,e)}function YQ(e){YJ.call(this,e)}function XQ(e){O8e.call(this,e)}function Tvt(e){XQ.call(this,e)}function jvt(e){O8e.call(this,e)}function Z3(){this.a=new wi}function JQ(){this.a=new er}function QQ(){this.a=new en}function o9e(){this.a=new Se}function c9e(){this.j=new Se}function ZQ(){this.a=new p5e}function s9e(){this.a=new n8e}function u9e(){this.a=new M6e}function $N(){$N=Z,rG=new C9e}function KN(){KN=Z,iG=new M9e}function DS(){DS=Z,nG=new T}function YA(){YA=Z,sG=new MDe}function Avt(e){XQ.call(this,e)}function Ovt(e){XQ.call(this,e)}function a9e(e){w$.call(this,e)}function l9e(e){w$.call(this,e)}function f9e(e){Nke.call(this,e)}function qN(e){JDt.call(this,e)}function Fb(e){jp.call(this,e)}function kS(e){s9.call(this,e)}function eZ(e){s9.call(this,e)}function h9e(e){s9.call(this,e)}function No(e){JRe.call(this,e)}function d9e(e){No.call(this,e)}function xy(){BM.call(this,{})}function XA(e){d_(),this.a=e}function RS(e){e.b=null,e.c=0}function Dvt(e,t){e.e=t,gWe(e,t)}function kvt(e,t){e.a=t,Nkt(e)}function HN(e,t,n){e.a[t.g]=n}function Rvt(e,t,n){ZOt(n,e,t)}function xvt(e,t){c_t(t.i,e.n)}function g9e(e,t){sjt(e).td(t)}function Lvt(e,t){return e*e/t}function b9e(e,t){return e.g-t.g}function Nvt(e){return new NA(e)}function Fvt(e){return new qp(e)}function JA(e){No.call(this,e)}function ho(e){No.call(this,e)}function p9e(e){No.call(this,e)}function zN(e){JRe.call(this,e)}function VN(e){mre(),this.a=e}function w9e(e){Hke(),this.a=e}function Ip(e){_B(),this.f=e}function GN(e){_B(),this.f=e}function e_(e){No.call(this,e)}function St(e){No.call(this,e)}function Ao(e){No.call(this,e)}function m9e(e){No.call(this,e)}function Ly(e){No.call(this,e)}function Be(e){return yt(e),e}function ge(e){return yt(e),e}function WM(e){return yt(e),e}function tZ(e){return yt(e),e}function Bvt(e){return yt(e),e}function xS(e){return e.b==e.c}function Tp(e){return!!e&&e.b}function $vt(e){return!!e&&e.k}function Kvt(e){return!!e&&e.j}function Js(e){yt(e),this.a=e}function nZ(e){return Vg(e),e}function LS(e){gne(e,e.length)}function td(e){No.call(this,e)}function sf(e){No.call(this,e)}function UN(e){No.call(this,e)}function ym(e){No.call(this,e)}function NS(e){No.call(this,e)}function an(e){No.call(this,e)}function WN(e){$ee.call(this,e,0)}function YN(){Wne.call(this,12,3)}function iZ(){iZ=Z,rhe=new te}function v9e(){v9e=Z,ihe=new C}function QA(){QA=Z,cP=new $}function y9e(){y9e=Z,Jtt=new re}function _9e(){throw V(new sn)}function rZ(){throw V(new sn)}function E9e(){throw V(new sn)}function qvt(){throw V(new sn)}function Hvt(){throw V(new sn)}function zvt(){throw V(new sn)}function XN(){this.a=ln(nn(zr))}function Ny(e){hf(),this.a=nn(e)}function S9e(e,t){e.Td(t),t.Sd(e)}function Vvt(e,t){e.a.ec().Mc(t)}function Gvt(e,t,n){e.c.lf(t,n)}function oZ(e){ho.call(this,e)}function uf(e){St.call(this,e)}function nd(){$M.call(this,"")}function FS(){$M.call(this,"")}function n1(){$M.call(this,"")}function _m(){$M.call(this,"")}function cZ(e){ho.call(this,e)}function t_(e){W3.call(this,e)}function JN(e){W9.call(this,e)}function P9e(e){t_.call(this,e)}function M9e(){MN.call(this,null)}function C9e(){MN.call(this,null)}function ZA(){ZA=Z,T_()}function I9e(){I9e=Z,snt=C7t()}function T9e(e){return e.a?e.b:0}function Uvt(e){return e.a?e.b:0}function Wvt(e,t){return e.a-t.a}function Yvt(e,t){return e.a-t.a}function Xvt(e,t){return e.a-t.a}function e9(e,t){return Fie(e,t)}function G(e,t){return WLe(e,t)}function Jvt(e,t){return t in e.a}function j9e(e,t){return e.f=t,e}function Qvt(e,t){return e.b=t,e}function A9e(e,t){return e.c=t,e}function Zvt(e,t){return e.g=t,e}function sZ(e,t){return e.a=t,e}function uZ(e,t){return e.f=t,e}function eyt(e,t){return e.k=t,e}function aZ(e,t){return e.a=t,e}function tyt(e,t){return e.e=t,e}function lZ(e,t){return e.e=t,e}function nyt(e,t){return e.f=t,e}function iyt(e,t){e.b=!0,e.d=t}function ryt(e,t){e.b=new go(t)}function oyt(e,t,n){t.td(e.a[n])}function cyt(e,t,n){t.we(e.a[n])}function syt(e,t){return e.b-t.b}function uyt(e,t){return e.g-t.g}function ayt(e,t){return e.s-t.s}function lyt(e,t){return e?0:t-1}function O9e(e,t){return e?0:t-1}function fyt(e,t){return e?t-1:0}function hyt(e,t){return t.Yf(e)}function Bb(e,t){return e.b=t,e}function t9(e,t){return e.a=t,e}function $b(e,t){return e.c=t,e}function Kb(e,t){return e.d=t,e}function qb(e,t){return e.e=t,e}function fZ(e,t){return e.f=t,e}function BS(e,t){return e.a=t,e}function n_(e,t){return e.b=t,e}function i_(e,t){return e.c=t,e}function Ge(e,t){return e.c=t,e}function lt(e,t){return e.b=t,e}function Ue(e,t){return e.d=t,e}function We(e,t){return e.e=t,e}function dyt(e,t){return e.f=t,e}function Ye(e,t){return e.g=t,e}function Xe(e,t){return e.a=t,e}function Je(e,t){return e.i=t,e}function Qe(e,t){return e.j=t,e}function D9e(e,t){return e.k=t,e}function gyt(e,t){return e.j=t,e}function byt(e,t){I1(),Bo(t,e)}function pyt(e,t,n){lSt(e.a,t,n)}function k9e(e){Xxe.call(this,e)}function hZ(e){Xxe.call(this,e)}function n9(e){rB.call(this,e)}function R9e(e){kAt.call(this,e)}function i1(e){d0.call(this,e)}function x9e(e){GB.call(this,e)}function L9e(e){GB.call(this,e)}function N9e(){wee.call(this,"")}function Tr(){this.a=0,this.b=0}function F9e(){this.b=0,this.a=0}function B9e(e,t){e.b=0,Zp(e,t)}function wyt(e,t){e.c=t,e.b=!0}function $9e(e,t){return e.c._b(t)}function rl(e){return e.e&&e.e()}function QN(e){return e?e.d:null}function K9e(e,t){return dHe(e.b,t)}function myt(e){return e?e.g:null}function vyt(e){return e?e.i:null}function r1(e){return Sh(e),e.o}function Hb(){Hb=Z,oft=NOt()}function q9e(){q9e=Z,lr=Y7t()}function r_(){r_=Z,sme=BOt()}function H9e(){H9e=Z,Hft=FOt()}function dZ(){dZ=Z,cc=Rkt()}function gZ(){gZ=Z,Z1=V_()}function z9e(){throw V(new sn)}function V9e(){throw V(new sn)}function G9e(){throw V(new sn)}function U9e(){throw V(new sn)}function W9e(){throw V(new sn)}function Y9e(){throw V(new sn)}function i9(e){this.a=new Fy(e)}function bZ(e){zXe(),HHt(this,e)}function o1(e){this.a=new MB(e)}function Em(e,t){for(;e.ye(t););}function pZ(e,t){for(;e.sd(t););}function Sm(e,t){return e.a+=t,e}function ZN(e,t){return e.a+=t,e}function id(e,t){return e.a+=t,e}function zb(e,t){return e.a+=t,e}function $S(e){return b1(e),e.a}function r9(e){return e.b!=e.d.c}function X9e(e){return e.l|e.m<<22}function wZ(e,t){return e.d[t.p]}function J9e(e,t){return SNt(e,t)}function mZ(e,t,n){e.splice(t,n)}function Q9e(e){e.c?xWe(e):LWe(e)}function o9(e){this.a=0,this.b=e}function Z9e(){this.a=new JI(y0e)}function e8e(){this.b=new JI(c0e)}function t8e(){this.b=new JI(jW)}function n8e(){this.b=new JI(jW)}function i8e(){throw V(new sn)}function r8e(){throw V(new sn)}function o8e(){throw V(new sn)}function c8e(){throw V(new sn)}function s8e(){throw V(new sn)}function u8e(){throw V(new sn)}function a8e(){throw V(new sn)}function l8e(){throw V(new sn)}function f8e(){throw V(new sn)}function h8e(){throw V(new sn)}function yyt(){throw V(new tc)}function _yt(){throw V(new tc)}function YM(e){this.a=new d8e(e)}function d8e(e){DIt(this,e,D7t())}function XM(e){return!e||Rxe(e)}function JM(e){return Zl[e]!=-1}function Eyt(){Sk!=0&&(Sk=0),Pk=-1}function g8e(){tG==null&&(tG=[])}function Syt(e,t){Oq(he(e.a),t)}function Pyt(e,t){Oq(he(e.a),t)}function QM(e,t){Dm.call(this,e,t)}function o_(e,t){QM.call(this,e,t)}function vZ(e,t){this.b=e,this.c=t}function b8e(e,t){this.b=e,this.a=t}function p8e(e,t){this.a=e,this.b=t}function w8e(e,t){this.a=e,this.b=t}function m8e(e,t){this.a=e,this.b=t}function v8e(e,t){this.a=e,this.b=t}function y8e(e,t){this.a=e,this.b=t}function _8e(e,t){this.a=e,this.b=t}function E8e(e,t){this.a=e,this.b=t}function S8e(e,t){this.a=e,this.b=t}function P8e(e,t){this.b=e,this.a=t}function M8e(e,t){this.b=e,this.a=t}function C8e(e,t){this.b=e,this.a=t}function I8e(e,t){this.b=e,this.a=t}function pn(e,t){this.f=e,this.g=t}function c_(e,t){this.e=e,this.d=t}function Vb(e,t){this.g=e,this.i=t}function eF(e,t){this.a=e,this.b=t}function T8e(e,t){this.a=e,this.f=t}function j8e(e,t){this.b=e,this.c=t}function Myt(e,t){this.a=e,this.b=t}function A8e(e,t){this.a=e,this.b=t}function tF(e,t){this.a=e,this.b=t}function O8e(e){jee(e.dc()),this.c=e}function c9(e){this.b=c(nn(e),83)}function D8e(e){this.a=c(nn(e),83)}function jp(e){this.a=c(nn(e),15)}function k8e(e){this.a=c(nn(e),15)}function s9(e){this.b=c(nn(e),47)}function u9(){this.q=new g.Date}function Nf(){Nf=Z,vhe=new Nt}function s_(){s_=Z,n4=new tt}function KS(e){return e.f.c+e.g.c}function ZM(e,t){return e.b.Hc(t)}function R8e(e,t){return e.b.Ic(t)}function x8e(e,t){return e.b.Qc(t)}function L8e(e,t){return e.b.Hc(t)}function N8e(e,t){return e.c.uc(t)}function _h(e,t){return e.a._b(t)}function F8e(e,t){return $n(e.c,t)}function B8e(e,t){return tu(e.b,t)}function $8e(e,t){return e>t&&t0}function iF(e,t){return uc(e,t)<0}function US(e,t){return e.a.get(t)}function Fyt(e,t){return t.split(e)}function oOe(e,t){return tu(e.e,t)}function IZ(e){return yt(e),!1}function m9(e){bt.call(this,e,21)}function Byt(e,t){LLe.call(this,e,t)}function v9(e,t){pn.call(this,e,t)}function rF(e,t){pn.call(this,e,t)}function TZ(e){FB(),Nke.call(this,e)}function jZ(e,t){$Re(e,e.length,t)}function rC(e,t){bxe(e,e.length,t)}function $yt(e,t,n){t.ud(e.a.Ge(n))}function Kyt(e,t,n){t.we(e.a.Fe(n))}function qyt(e,t,n){t.td(e.a.Kb(n))}function Hyt(e,t,n){e.Mb(n)&&t.td(n)}function WS(e,t,n){e.splice(t,0,n)}function zyt(e,t){return bs(e.e,t)}function y9(e,t){this.d=e,this.e=t}function cOe(e,t){this.b=e,this.a=t}function sOe(e,t){this.b=e,this.a=t}function AZ(e,t){this.b=e,this.a=t}function uOe(e,t){this.a=e,this.b=t}function aOe(e,t){this.a=e,this.b=t}function lOe(e,t){this.a=e,this.b=t}function fOe(e,t){this.a=e,this.b=t}function $y(e,t){this.a=e,this.b=t}function OZ(e,t){this.b=e,this.a=t}function DZ(e,t){this.b=e,this.a=t}function _9(e,t){pn.call(this,e,t)}function E9(e,t){pn.call(this,e,t)}function kZ(e,t){pn.call(this,e,t)}function RZ(e,t){pn.call(this,e,t)}function Pm(e,t){pn.call(this,e,t)}function oF(e,t){pn.call(this,e,t)}function cF(e,t){pn.call(this,e,t)}function sF(e,t){pn.call(this,e,t)}function S9(e,t){pn.call(this,e,t)}function xZ(e,t){pn.call(this,e,t)}function uF(e,t){pn.call(this,e,t)}function oC(e,t){pn.call(this,e,t)}function P9(e,t){pn.call(this,e,t)}function aF(e,t){pn.call(this,e,t)}function YS(e,t){pn.call(this,e,t)}function LZ(e,t){pn.call(this,e,t)}function Li(e,t){pn.call(this,e,t)}function M9(e,t){pn.call(this,e,t)}function hOe(e,t){this.a=e,this.b=t}function dOe(e,t){this.a=e,this.b=t}function gOe(e,t){this.a=e,this.b=t}function bOe(e,t){this.a=e,this.b=t}function pOe(e,t){this.a=e,this.b=t}function wOe(e,t){this.a=e,this.b=t}function mOe(e,t){this.a=e,this.b=t}function vOe(e,t){this.a=e,this.b=t}function yOe(e,t){this.a=e,this.b=t}function NZ(e,t){this.b=e,this.a=t}function _Oe(e,t){this.b=e,this.a=t}function EOe(e,t){this.b=e,this.a=t}function SOe(e,t){this.b=e,this.a=t}function l_(e,t){this.c=e,this.d=t}function POe(e,t){this.e=e,this.d=t}function MOe(e,t){this.a=e,this.b=t}function COe(e,t){this.b=t,this.c=e}function C9(e,t){pn.call(this,e,t)}function cC(e,t){pn.call(this,e,t)}function lF(e,t){pn.call(this,e,t)}function XS(e,t){pn.call(this,e,t)}function FZ(e,t){pn.call(this,e,t)}function fF(e,t){pn.call(this,e,t)}function hF(e,t){pn.call(this,e,t)}function sC(e,t){pn.call(this,e,t)}function BZ(e,t){pn.call(this,e,t)}function dF(e,t){pn.call(this,e,t)}function JS(e,t){pn.call(this,e,t)}function $Z(e,t){pn.call(this,e,t)}function QS(e,t){pn.call(this,e,t)}function ZS(e,t){pn.call(this,e,t)}function Op(e,t){pn.call(this,e,t)}function gF(e,t){pn.call(this,e,t)}function bF(e,t){pn.call(this,e,t)}function KZ(e,t){pn.call(this,e,t)}function e5(e,t){pn.call(this,e,t)}function pF(e,t){pn.call(this,e,t)}function I9(e,t){pn.call(this,e,t)}function uC(e,t){pn.call(this,e,t)}function aC(e,t){pn.call(this,e,t)}function Ky(e,t){pn.call(this,e,t)}function wF(e,t){pn.call(this,e,t)}function qZ(e,t){pn.call(this,e,t)}function mF(e,t){pn.call(this,e,t)}function vF(e,t){pn.call(this,e,t)}function HZ(e,t){pn.call(this,e,t)}function yF(e,t){pn.call(this,e,t)}function _F(e,t){pn.call(this,e,t)}function EF(e,t){pn.call(this,e,t)}function SF(e,t){pn.call(this,e,t)}function zZ(e,t){pn.call(this,e,t)}function IOe(e,t){this.b=e,this.a=t}function TOe(e,t){this.a=e,this.b=t}function jOe(e,t){this.a=e,this.b=t}function AOe(e,t){this.a=e,this.b=t}function OOe(e,t){this.a=e,this.b=t}function VZ(e,t){pn.call(this,e,t)}function GZ(e,t){pn.call(this,e,t)}function DOe(e,t){this.b=e,this.d=t}function UZ(e,t){pn.call(this,e,t)}function WZ(e,t){pn.call(this,e,t)}function kOe(e,t){this.a=e,this.b=t}function ROe(e,t){this.a=e,this.b=t}function T9(e,t){pn.call(this,e,t)}function t5(e,t){pn.call(this,e,t)}function YZ(e,t){pn.call(this,e,t)}function XZ(e,t){pn.call(this,e,t)}function JZ(e,t){pn.call(this,e,t)}function PF(e,t){pn.call(this,e,t)}function QZ(e,t){pn.call(this,e,t)}function MF(e,t){pn.call(this,e,t)}function j9(e,t){pn.call(this,e,t)}function CF(e,t){pn.call(this,e,t)}function IF(e,t){pn.call(this,e,t)}function lC(e,t){pn.call(this,e,t)}function TF(e,t){pn.call(this,e,t)}function ZZ(e,t){pn.call(this,e,t)}function fC(e,t){pn.call(this,e,t)}function eee(e,t){pn.call(this,e,t)}function Vyt(e,t){return bs(e.c,t)}function Gyt(e,t){return bs(t.b,e)}function Uyt(e,t){return-e.b.Je(t)}function tee(e,t){return bs(e.g,t)}function hC(e,t){pn.call(this,e,t)}function qy(e,t){pn.call(this,e,t)}function xOe(e,t){this.a=e,this.b=t}function LOe(e,t){this.a=e,this.b=t}function $e(e,t){this.a=e,this.b=t}function n5(e,t){pn.call(this,e,t)}function i5(e,t){pn.call(this,e,t)}function dC(e,t){pn.call(this,e,t)}function jF(e,t){pn.call(this,e,t)}function A9(e,t){pn.call(this,e,t)}function r5(e,t){pn.call(this,e,t)}function AF(e,t){pn.call(this,e,t)}function O9(e,t){pn.call(this,e,t)}function Mm(e,t){pn.call(this,e,t)}function gC(e,t){pn.call(this,e,t)}function o5(e,t){pn.call(this,e,t)}function c5(e,t){pn.call(this,e,t)}function bC(e,t){pn.call(this,e,t)}function D9(e,t){pn.call(this,e,t)}function Cm(e,t){pn.call(this,e,t)}function k9(e,t){pn.call(this,e,t)}function NOe(e,t){this.a=e,this.b=t}function FOe(e,t){this.a=e,this.b=t}function BOe(e,t){this.a=e,this.b=t}function $Oe(e,t){this.a=e,this.b=t}function KOe(e,t){this.a=e,this.b=t}function qOe(e,t){this.a=e,this.b=t}function yr(e,t){this.a=e,this.b=t}function R9(e,t){pn.call(this,e,t)}function HOe(e,t){this.a=e,this.b=t}function zOe(e,t){this.a=e,this.b=t}function VOe(e,t){this.a=e,this.b=t}function GOe(e,t){this.a=e,this.b=t}function UOe(e,t){this.a=e,this.b=t}function WOe(e,t){this.a=e,this.b=t}function YOe(e,t){this.b=e,this.a=t}function XOe(e,t){this.b=e,this.a=t}function JOe(e,t){this.b=e,this.a=t}function QOe(e,t){this.b=e,this.a=t}function ZOe(e,t){this.a=e,this.b=t}function e7e(e,t){this.a=e,this.b=t}function Wyt(e,t){PLt(e.a,c(t,56))}function t7e(e,t){LCt(e.a,c(t,11))}function Yyt(e,t){return m_(),t!=e}function n7e(){return I9e(),new snt}function i7e(){i$(),this.b=new er}function r7e(){U7(),this.a=new er}function o7e(){Une(),nne.call(this)}function Hy(e,t){pn.call(this,e,t)}function c7e(e,t){this.a=e,this.b=t}function s7e(e,t){this.a=e,this.b=t}function x9(e,t){this.a=e,this.b=t}function u7e(e,t){this.a=e,this.b=t}function a7e(e,t){this.a=e,this.b=t}function l7e(e,t){this.a=e,this.b=t}function f7e(e,t){this.d=e,this.b=t}function nee(e,t){this.d=e,this.e=t}function h7e(e,t){this.f=e,this.c=t}function pC(e,t){this.b=e,this.c=t}function iee(e,t){this.i=e,this.g=t}function d7e(e,t){this.e=e,this.a=t}function g7e(e,t){this.a=e,this.b=t}function ree(e,t){e.i=null,NO(e,t)}function Xyt(e,t){e&&Kn(Gj,e,t)}function b7e(e,t){return xK(e.a,t)}function L9(e){return jI(e.c,e.b)}function Uo(e){return e?e.dd():null}function le(e){return e??null}function Dp(e){return typeof e===M2}function kp(e){return typeof e===Nue}function fr(e){return typeof e===_H}function u1(e,t){return e.Hd().Xb(t)}function N9(e,t){return hTt(e.Kc(),t)}function Ub(e,t){return uc(e,t)==0}function Jyt(e,t){return uc(e,t)>=0}function s5(e,t){return uc(e,t)!=0}function Qyt(e){return""+(yt(e),e)}function wC(e,t){return e.substr(t)}function p7e(e){return Bs(e),e.d.gc()}function OF(e){return WRt(e,e.c),e}function F9(e){return y5(e==null),e}function u5(e,t){return e.a+=""+t,e}function co(e,t){return e.a+=""+t,e}function a5(e,t){return e.a+=""+t,e}function nc(e,t){return e.a+=""+t,e}function wn(e,t){return e.a+=""+t,e}function oee(e,t){return e.a+=""+t,e}function w7e(e,t){Ri(e,t,e.a,e.a.a)}function Tg(e,t){Ri(e,t,e.c.b,e.c)}function Zyt(e,t,n){CVe(t,Pq(e,n))}function e2t(e,t,n){CVe(t,Pq(e,n))}function t2t(e,t){UCt(new $t(e),t)}function m7e(e,t){e.q.setTime(l0(t))}function v7e(e,t){fne.call(this,e,t)}function y7e(e,t){fne.call(this,e,t)}function DF(e,t){fne.call(this,e,t)}function _7e(e){Is(this),G5(this,e)}function cee(e){return pt(e,0),null}function ol(e){return e.a=0,e.b=0,e}function E7e(e,t){return e.a=t.g+1,e}function n2t(e,t){return e.j[t.p]==2}function see(e){return FSt(c(e,79))}function S7e(){S7e=Z,tit=vn(KK())}function P7e(){P7e=Z,mrt=vn(cWe())}function M7e(){this.b=new Fy(Xp(12))}function C7e(){this.b=0,this.a=!1}function I7e(){this.b=0,this.a=!1}function l5(e){this.a=e,SN.call(this)}function T7e(e){this.a=e,SN.call(this)}function ut(e,t){Wi.call(this,e,t)}function kF(e,t){Fp.call(this,e,t)}function Im(e,t){iee.call(this,e,t)}function RF(e,t){X_.call(this,e,t)}function j7e(e,t){mC.call(this,e,t)}function In(e,t){p9(),Kn(Fx,e,t)}function xF(e,t){return fu(e.a,0,t)}function A7e(e,t){return e.a.a.a.cc(t)}function O7e(e,t){return le(e)===le(t)}function i2t(e,t){return zi(e.a,t.a)}function r2t(e,t){return Uc(e.a,t.a)}function o2t(e,t){return hxe(e.a,t.a)}function af(e,t){return e.indexOf(t)}function Wb(e,t){return e==t?0:e?1:-1}function B9(e){return e<10?"0"+e:""+e}function c2t(e){return nn(e),new l5(e)}function D7e(e){return Bc(e.l,e.m,e.h)}function f_(e){return xi((yt(e),e))}function s2t(e){return xi((yt(e),e))}function k7e(e,t){return Uc(e.g,t.g)}function Oo(e){return typeof e===Nue}function u2t(e){return e==V0||e==Ow}function a2t(e){return e==V0||e==Aw}function uee(e){return Do(e.b.b,e,0)}function R7e(e){this.a=n7e(),this.b=e}function x7e(e){this.a=n7e(),this.b=e}function l2t(e,t){return Ee(e.a,t),t}function f2t(e,t){return Ee(e.c,t),e}function L7e(e,t){return wu(e.a,t),e}function h2t(e,t){return ka(),t.a+=e}function d2t(e,t){return ka(),t.a+=e}function g2t(e,t){return ka(),t.c+=e}function aee(e,t){L_(e,0,e.length,t)}function Eh(){pQ.call(this,new Ng)}function N7e(){m8.call(this,0,0,0,0)}function zy(){Ru.call(this,0,0,0,0)}function go(e){this.a=e.a,this.b=e.b}function a1(e){return e==ga||e==Va}function h_(e){return e==Gh||e==Vh}function F7e(e){return e==Bv||e==Fv}function Tm(e){return e!=Xl&&e!=Y1}function Qs(e){return e.Lg()&&e.Mg()}function B7e(e){return R8(c(e,118))}function $9(e){return wu(new tr,e)}function $7e(e,t){return new X_(t,e)}function b2t(e,t){return new X_(t,e)}function lee(e,t,n){jO(e,t),AO(e,n)}function K9(e,t,n){p0(e,t),b0(e,n)}function Cl(e,t,n){es(e,t),ts(e,n)}function q9(e,t,n){$_(e,t),q_(e,n)}function H9(e,t,n){K_(e,t),H_(e,n)}function LF(e,t){nE(e,t),z_(e,e.D)}function fee(e){h7e.call(this,e,!0)}function K7e(e,t,n){ete.call(this,e,t,n)}function l1(e){T1(),pTt.call(this,e)}function q7e(){v9.call(this,"Head",1)}function H7e(){v9.call(this,"Tail",3)}function NF(e){e.c=oe(xt,xe,1,0,5,1)}function z7e(e){e.a=oe(xt,xe,1,8,5,1)}function V7e(e){Zc(e.xf(),new kIe(e))}function jm(e){return e!=null?fi(e):0}function p2t(e,t){return Jp(t,jl(e))}function w2t(e,t){return Jp(t,jl(e))}function m2t(e,t){return e[e.length]=t}function v2t(e,t){return e[e.length]=t}function hee(e){return m4t(e.b.Kc(),e.a)}function y2t(e,t){return LO(LB(e.d),t)}function _2t(e,t){return LO(LB(e.g),t)}function E2t(e,t){return LO(LB(e.j),t)}function Yr(e,t){Wi.call(this,e.b,t)}function Yb(e){m8.call(this,e,e,e,e)}function dee(e){return e.b&&rH(e),e.a}function gee(e){return e.b&&rH(e),e.c}function S2t(e,t){Vl||(e.b=t)}function FF(e,t,n){return vi(e,t,n),n}function G7e(e,t,n){vi(e.c[t.g],t.g,n)}function P2t(e,t,n){c(e.c,69).Xh(t,n)}function M2t(e,t,n){Cl(n,n.i+e,n.j+t)}function C2t(e,t){on(dc(e.a),cNe(t))}function I2t(e,t){on(Ns(e.a),sNe(t))}function f5(e){Ln(),Lb.call(this,e)}function T2t(e){return e==null?0:fi(e)}function U7e(){U7e=Z,uW=new n6(iY)}function un(){un=Z,new W7e,new Se}function W7e(){new en,new en,new en}function bee(){bee=Z,kQ(),ohe=new en}function Il(){Il=Z,g.Math.log(2)}function Du(){Du=Z,sh=(eOe(),fft)}function j2t(){throw V(new td(Ltt))}function A2t(){throw V(new td(Ltt))}function O2t(){throw V(new td(Ntt))}function D2t(){throw V(new td(Ntt))}function Y7e(e){this.a=e,kte.call(this,e)}function BF(e){this.a=e,c9.call(this,e)}function $F(e){this.a=e,c9.call(this,e)}function cr(e,t){wB(e.c,e.c.length,t)}function Fo(e){return e.at?1:0}function J7e(e,t){return uc(e,t)>0?e:t}function Bc(e,t,n){return{l:e,m:t,h:n}}function k2t(e,t){e.a!=null&&t7e(t,e.a)}function Q7e(e){e.a=new ii,e.c=new ii}function z9(e){this.b=e,this.a=new Se}function Z7e(e){this.b=new F2e,this.a=e}function wee(e){ate.call(this),this.a=e}function eDe(){v9.call(this,"Range",2)}function tDe(){fce(),this.a=new JI(kde)}function R2t(e,t){nn(t),Rm(e).Jc(new R)}function x2t(e,t){return hu(),t.n.b+=e}function L2t(e,t,n){return Kn(e.g,n,t)}function N2t(e,t,n){return Kn(e.k,n,t)}function F2t(e,t){return Kn(e.a,t.a,t)}function Am(e,t,n){return Ooe(t,n,e.c)}function mee(e){return new $e(e.c,e.d)}function B2t(e){return new $e(e.c,e.d)}function Wo(e){return new $e(e.a,e.b)}function nDe(e,t){return uqt(e.a,t,null)}function $2t(e){Rr(e,null),br(e,null)}function iDe(e){o$(e,null),c$(e,null)}function rDe(){mC.call(this,null,null)}function oDe(){Q9.call(this,null,null)}function vee(e){this.a=e,en.call(this)}function K2t(e){this.b=(st(),new AN(e))}function V9(e){e.j=oe(mhe,we,310,0,0,1)}function q2t(e,t,n){e.c.Vc(t,c(n,133))}function H2t(e,t,n){e.c.ji(t,c(n,133))}function cDe(e,t){Xt(e),e.Gc(c(t,15))}function h5(e,t){return PKt(e.c,e.b,t)}function z2t(e,t){return new TDe(e.Kc(),t)}function KF(e,t){return HTt(e.Kc(),t)!=-1}function yee(e,t){return e.a.Bc(t)!=null}function G9(e){return e.Ob()?e.Pb():null}function sDe(e){return pf(e,0,e.length)}function Q(e,t){return e!=null&&VK(e,t)}function V2t(e,t){e.q.setHours(t),_6(e,t)}function uDe(e,t){e.c&&(zte(t),RLe(t))}function G2t(e,t,n){c(e.Kb(n),164).Nb(t)}function U2t(e,t,n){return tqt(e,t,n),n}function aDe(e,t,n){e.a=t^1502,e.b=n^ez}function qF(e,t,n){return e.a[t.g][n.g]}function Tl(e,t){return e.a[t.c.p][t.p]}function W2t(e,t){return e.e[t.c.p][t.p]}function Y2t(e,t){return e.c[t.c.p][t.p]}function X2t(e,t){return e.j[t.p]=oLt(t)}function J2t(e,t){return Sie(e.f,t.tg())}function Q2t(e,t){return Sie(e.b,t.tg())}function Z2t(e,t){return e.a0?t*t/e:t*t*100}function P3t(e,t){return e>0?t/(e*e):t*100}function M3t(e,t,n){return Ee(t,DHe(e,n))}function C3t(e,t,n){bO(),e.Xe(t)&&n.td(e)}function b_(e,t,n){var i;i=e.Zc(t),i.Rb(n)}function xp(e,t,n){return e.a+=t,e.b+=n,e}function I3t(e,t,n){return e.a*=t,e.b*=n,e}function _C(e,t,n){return e.a-=t,e.b-=n,e}function zee(e,t){return e.a=t.a,e.b=t.b,e}function t8(e){return e.a=-e.a,e.b=-e.b,e}function $De(e){this.c=e,this.a=1,this.b=1}function KDe(e){this.c=e,es(e,0),ts(e,0)}function qDe(e){wi.call(this),q5(this,e)}function HDe(e){vH(),gAe(this),this.mf(e)}function zDe(e,t){GS(),mC.call(this,e,t)}function Vee(e,t){rd(),Q9.call(this,e,t)}function VDe(e,t){rd(),Q9.call(this,e,t)}function GDe(e,t){rd(),Vee.call(this,e,t)}function Zs(e,t,n){iu.call(this,e,t,n,2)}function YF(e,t){Du(),w8.call(this,e,t)}function UDe(e,t){Du(),YF.call(this,e,t)}function Gee(e,t){Du(),YF.call(this,e,t)}function WDe(e,t){Du(),Gee.call(this,e,t)}function Uee(e,t){Du(),w8.call(this,e,t)}function YDe(e,t){Du(),Uee.call(this,e,t)}function XDe(e,t){Du(),w8.call(this,e,t)}function T3t(e,t){return e.c.Fc(c(t,133))}function Wee(e,t,n){return oD(iI(e,t),n)}function j3t(e,t,n){return t.Qk(e.e,e.c,n)}function A3t(e,t,n){return t.Rk(e.e,e.c,n)}function XF(e,t){return S1(e.e,c(t,49))}function O3t(e,t,n){e6(Ns(e.a),t,sNe(n))}function D3t(e,t,n){e6(dc(e.a),t,cNe(n))}function Yee(e,t){t.$modCount=e.$modCount}function w5(){w5=Z,KP=new hi("root")}function p_(){p_=Z,Wj=new GAe,new UAe}function JDe(){this.a=new u0,this.b=new u0}function Xee(){pKe.call(this),this.Bb|=Vr}function QDe(){pn.call(this,"GROW_TREE",0)}function k3t(e){return e==null?null:Jqt(e)}function R3t(e){return e==null?null:okt(e)}function x3t(e){return e==null?null:Ro(e)}function L3t(e){return e==null?null:Ro(e)}function Sh(e){e.o==null&&kxt(e)}function Fe(e){return y5(e==null||Dp(e)),e}function Te(e){return y5(e==null||kp(e)),e}function ln(e){return y5(e==null||fr(e)),e}function Jee(e){this.q=new g.Date(l0(e))}function EC(e,t){this.c=e,c_.call(this,e,t)}function n8(e,t){this.a=e,EC.call(this,e,t)}function N3t(e,t){this.d=e,uIe(this),this.b=t}function Qee(e,t){I$.call(this,e),this.a=t}function Zee(e,t){I$.call(this,e),this.a=t}function F3t(e){Coe.call(this,0,0),this.f=e}function ete(e,t,n){dO.call(this,e,t,n,null)}function ZDe(e,t,n){dO.call(this,e,t,n,null)}function B3t(e,t,n){return e.ue(t,n)<=0?n:t}function $3t(e,t,n){return e.ue(t,n)<=0?t:n}function K3t(e,t){return c(h0(e.b,t),149)}function q3t(e,t){return c(h0(e.c,t),229)}function JF(e){return c(Ne(e.a,e.b),287)}function eke(e){return new $e(e.c,e.d+e.a)}function tke(e){return hu(),F7e(c(e,197))}function Lp(){Lp=Z,ude=nt((ou(),Cb))}function H3t(e,t){t.a?TNt(e,t):HF(e.a,t.b)}function nke(e,t){Vl||Ee(e.a,t)}function z3t(e,t){return tC(),Y_(t.d.i,e)}function V3t(e,t){return h2(),new rYe(t,e)}function ff(e,t){return FC(t,iae),e.f=t,e}function tte(e,t,n){return n=yu(e,t,3,n),n}function nte(e,t,n){return n=yu(e,t,6,n),n}function ite(e,t,n){return n=yu(e,t,9,n),n}function SC(e,t,n){++e.j,e.Ki(),M$(e,t,n)}function ike(e,t,n){++e.j,e.Hi(t,e.oi(t,n))}function rke(e,t,n){var i;i=e.Zc(t),i.Rb(n)}function oke(e,t,n){return wue(e.c,e.b,t,n)}function rte(e,t){return(t&Fn)%e.d.length}function Wi(e,t){hi.call(this,e),this.a=t}function ote(e,t){CQ.call(this,e),this.a=t}function QF(e,t){CQ.call(this,e),this.a=t}function cke(e,t){this.c=e,d0.call(this,t)}function ske(e,t){this.a=e,uAe.call(this,t)}function PC(e,t){this.a=e,uAe.call(this,t)}function uke(e){this.a=(pu(e,mw),new Dc(e))}function ake(e){this.a=(pu(e,mw),new Dc(e))}function MC(e){return!e.a&&(e.a=new H),e.a}function lke(e){return e>8?0:e+1}function G3t(e,t){return Pt(),e==t?0:e?1:-1}function cte(e,t,n){return Xy(e,c(t,22),n)}function U3t(e,t,n){return e.apply(t,n)}function fke(e,t,n){return e.a+=pf(t,0,n),e}function ste(e,t){var n;return n=e.e,e.e=t,n}function W3t(e,t){var n;n=e[ZH],n.call(e,t)}function Y3t(e,t){var n;n=e[ZH],n.call(e,t)}function Np(e,t){e.a.Vc(e.b,t),++e.b,e.c=-1}function hke(e){Is(e.e),e.d.b=e.d,e.d.a=e.d}function CC(e){e.b?CC(e.b):e.f.c.zc(e.e,e.d)}function X3t(e,t,n){Ig(),oIe(e,t.Ce(e.a,n))}function J3t(e,t){return QN(WHe(e.a,t,!0))}function Q3t(e,t){return QN(YHe(e.a,t,!0))}function Da(e,t){return e9(new Array(t),e)}function ZF(e){return String.fromCharCode(e)}function Z3t(e){return e==null?null:e.message}function dke(){this.a=new Se,this.b=new Se}function gke(){this.a=new IJ,this.b=new SAe}function bke(){this.b=new Tr,this.c=new Se}function ute(){this.d=new Tr,this.e=new Tr}function ate(){this.n=new Tr,this.o=new Tr}function i8(){this.n=new Ry,this.i=new zy}function pke(){this.a=new YMe,this.b=new L4e}function wke(){this.a=new Se,this.d=new Se}function mke(){this.b=new er,this.a=new er}function vke(){this.b=new en,this.a=new en}function yke(){this.b=new e8e,this.a=new FSe}function _ke(){i8.call(this),this.a=new Tr}function m5(e){PTt.call(this,e,(wO(),pG))}function lte(e,t,n,i){m8.call(this,e,t,n,i)}function e_t(e,t,n){n!=null&&RO(t,nq(e,n))}function t_t(e,t,n){n!=null&&xO(t,nq(e,n))}function fte(e,t,n){return n=yu(e,t,11,n),n}function Wn(e,t){return e.a+=t.a,e.b+=t.b,e}function hr(e,t){return e.a-=t.a,e.b-=t.b,e}function n_t(e,t){return e.n.a=(yt(t),t+10)}function i_t(e,t){return e.n.a=(yt(t),t+10)}function r_t(e,t){return t==e||pE(z7(t),e)}function Eke(e,t){return Kn(e.a,t,"")==null}function o_t(e,t){return tC(),!Y_(t.d.i,e)}function c_t(e,t){a1(e.f)?Sxt(e,t):sDt(e,t)}function s_t(e,t){var n;return n=t.Hh(e.a),n}function Fp(e,t){ho.call(this,J6+e+ub+t)}function Uy(e,t,n,i){Me.call(this,e,t,n,i)}function hte(e,t,n,i){Me.call(this,e,t,n,i)}function Ske(e,t,n,i){hte.call(this,e,t,n,i)}function Pke(e,t,n,i){T8.call(this,e,t,n,i)}function eB(e,t,n,i){T8.call(this,e,t,n,i)}function dte(e,t,n,i){T8.call(this,e,t,n,i)}function Mke(e,t,n,i){eB.call(this,e,t,n,i)}function gte(e,t,n,i){eB.call(this,e,t,n,i)}function dt(e,t,n,i){dte.call(this,e,t,n,i)}function Cke(e,t,n,i){gte.call(this,e,t,n,i)}function Ike(e,t,n,i){hne.call(this,e,t,n,i)}function Tke(e,t,n){this.a=e,$ee.call(this,t,n)}function jke(e,t,n){this.c=t,this.b=n,this.a=e}function u_t(e,t,n){return e.d=c(t.Kb(n),164)}function bte(e,t){return e.Aj().Nh().Kh(e,t)}function pte(e,t){return e.Aj().Nh().Ih(e,t)}function Ake(e,t){return yt(e),le(e)===le(t)}function rt(e,t){return yt(e),le(e)===le(t)}function tB(e,t){return QN(WHe(e.a,t,!1))}function nB(e,t){return QN(YHe(e.a,t,!1))}function a_t(e,t){return e.b.sd(new aOe(e,t))}function l_t(e,t){return e.b.sd(new lOe(e,t))}function Oke(e,t){return e.b.sd(new fOe(e,t))}function wte(e,t,n){return e.lastIndexOf(t,n)}function f_t(e,t,n){return zi(e[t.b],e[n.b])}function h_t(e,t){return pe(t,(Oe(),lj),e)}function d_t(e,t){return Uc(t.a.d.p,e.a.d.p)}function g_t(e,t){return Uc(e.a.d.p,t.a.d.p)}function b_t(e,t){return zi(e.c-e.s,t.c-t.s)}function Dke(e){return e.c?Do(e.c.a,e,0):-1}function p_t(e){return e<100?null:new i1(e)}function Wy(e){return e==Mb||e==ch||e==Ic}function kke(e,t){return Q(t,15)&&BWe(e.c,t)}function w_t(e,t){Vl||t&&(e.d=t)}function iB(e,t){var n;return n=t,!!$re(e,n)}function mte(e,t){this.c=e,AB.call(this,e,t)}function Rke(e){this.c=e,DF.call(this,dD,0)}function xke(e,t){E4t.call(this,e,e.length,t)}function m_t(e,t,n){return c(e.c,69).lk(t,n)}function r8(e,t,n){return c(e.c,69).mk(t,n)}function v_t(e,t,n){return j3t(e,c(t,332),n)}function vte(e,t,n){return A3t(e,c(t,332),n)}function y_t(e,t,n){return kVe(e,c(t,332),n)}function Lke(e,t,n){return mDt(e,c(t,332),n)}function v5(e,t){return t==null?null:tw(e.b,t)}function yte(e){return kp(e)?(yt(e),e):e.ke()}function o8(e){return!isNaN(e)&&!isFinite(e)}function Nke(e){hf(),this.a=(st(),new t_(e))}function IC(e){m_(),this.d=e,this.a=new vm}function ku(e,t,n){this.a=e,this.b=t,this.c=n}function Fke(e,t,n){this.a=e,this.b=t,this.c=n}function Bke(e,t,n){this.d=e,this.b=n,this.a=t}function rB(e){Q7e(this),na(this),qr(this,e)}function ps(e){NF(this),xte(this.c,0,e.Pc())}function $ke(e){nu(e.a),NBe(e.c,e.b),e.b=null}function Kke(e){this.a=e,Nf(),ns(Date.now())}function qke(){qke=Z,Bhe=new C,Ok=new C}function oB(){oB=Z,Ahe=new kr,unt=new jo}function Hke(){Hke=Z,pft=oe(xt,xe,1,0,5,1)}function zke(){zke=Z,Rft=oe(xt,xe,1,0,5,1)}function _te(){_te=Z,xft=oe(xt,xe,1,0,5,1)}function hf(){hf=Z,new jQ((st(),st(),Qr))}function __t(e){return wO(),mn((WBe(),fnt),e)}function E_t(e){return Fl(),mn((dBe(),wnt),e)}function S_t(e){return p7(),mn((yFe(),Snt),e)}function P_t(e){return EO(),mn((_Fe(),Pnt),e)}function M_t(e){return X7(),mn((sqe(),Mnt),e)}function C_t(e){return al(),mn((lBe(),Tnt),e)}function I_t(e){return Ts(),mn((fBe(),Ant),e)}function T_t(e){return Qc(),mn((hBe(),Dnt),e)}function j_t(e){return fD(),mn((S7e(),tit),e)}function A_t(e){return v0(),mn((XBe(),iit),e)}function O_t(e){return m2(),mn((JBe(),oit),e)}function D_t(e){return c6(),mn((QBe(),uit),e)}function k_t(e){return l9(),mn((QNe(),ait),e)}function R_t(e){return SO(),mn((EFe(),Cit),e)}function x_t(e){return $5(),mn((gBe(),Uit),e)}function L_t(e){return Hr(),mn((T$e(),Jit),e)}function N_t(e){return Q_(),mn((YBe(),nrt),e)}function F_t(e){return y0(),mn((bBe(),urt),e)}function Ete(e,t){if(!e)throw V(new St(t))}function B_t(e){return Dt(),mn((Y$e(),hrt),e)}function Ste(e){m8.call(this,e.d,e.c,e.a,e.b)}function cB(e){m8.call(this,e.d,e.c,e.a,e.b)}function Pte(e,t,n){this.b=e,this.c=t,this.a=n}function c8(e,t,n){this.b=e,this.a=t,this.c=n}function Vke(e,t,n){this.a=e,this.b=t,this.c=n}function Mte(e,t,n){this.a=e,this.b=t,this.c=n}function Gke(e,t,n){this.a=e,this.b=t,this.c=n}function Cte(e,t,n){this.a=e,this.b=t,this.c=n}function Uke(e,t,n){this.b=e,this.a=t,this.c=n}function s8(e,t,n){this.e=t,this.b=e,this.d=n}function $_t(e,t,n){return Ig(),e.a.Od(t,n),t}function sB(e){var t;return t=new Pi,t.e=e,t}function Ite(e){var t;return t=new AAe,t.b=e,t}function TC(){TC=Z,zk=new f_e,Vk=new h_e}function ka(){ka=Z,Crt=new WEe,Irt=new YEe}function K_t(e){return YO(),mn((e$e(),_rt),e)}function q_t(e){return Nl(),mn((n$e(),Art),e)}function H_t(e){return W7(),mn((XKe(),Frt),e)}function z_t(e){return y2(),mn((Q$e(),Brt),e)}function V_t(e){return gO(),mn((TFe(),$rt),e)}function G_t(e){return f2(),mn((pBe(),Krt),e)}function U_t(e){return Zm(),mn((S$e(),Drt),e)}function W_t(e){return m0(),mn((vBe(),Nrt),e)}function Y_t(e){return DO(),mn((wBe(),qrt),e)}function X_t(e){return Qg(),mn((_$e(),Hrt),e)}function J_t(e){return uI(),mn((PFe(),zrt),e)}function Q_t(e){return zg(),mn((mBe(),Grt),e)}function Z_t(e){return F7(),mn((nKe(),Urt),e)}function eEt(e){return eI(),mn((MFe(),Wrt),e)}function tEt(e){return $I(),mn((eKe(),Yrt),e)}function nEt(e){return mE(),mn((Z$e(),Xrt),e)}function iEt(e){return to(),mn((Eqe(),Jrt),e)}function rEt(e){return J_(),mn((_Be(),Qrt),e)}function oEt(e){return Oh(),mn((yBe(),eot),e)}function cEt(e){return iO(),mn((jFe(),tot),e)}function sEt(e){return Ku(),mn((P$e(),not),e)}function uEt(e){return R7(),mn((tKe(),wst),e)}function aEt(e){return X5(),mn((EBe(),mst),e)}function lEt(e){return rw(),mn((i$e(),vst),e)}function fEt(e){return Zr(),mn((MBe(),Mst),e)}function hEt(e){return iv(),mn((YKe(),_st),e)}function dEt(e){return kh(),mn((PBe(),Est),e)}function gEt(e){return rI(),mn((IFe(),Sst),e)}function bEt(e){return VO(),mn((SBe(),Cst),e)}function pEt(e){return s6(),mn((E$e(),yst),e)}function wEt(e){return WC(),mn((CFe(),Ist),e)}function mEt(e){return rE(),mn((IBe(),Tst),e)}function vEt(e){return HO(),mn((TBe(),jst),e)}function yEt(e){return XO(),mn((CBe(),Ast),e)}function _Et(e){return w0(),mn((jBe(),Hst),e)}function EEt(e){return F5(),mn((OFe(),Wst),e)}function SEt(e){return gf(),mn((DFe(),tut),e)}function PEt(e){return Al(),mn((kFe(),iut),e)}function MEt(e){return cl(),mn((AFe(),mut),e)}function CEt(e){return s0(),mn((RFe(),Mut),e)}function IEt(e){return dE(),mn((ZBe(),Cut),e)}function TEt(e){return d6(),mn((iKe(),Tut),e)}function jEt(e){return Y8(),mn((NFe(),qut),e)}function AEt(e){return $O(),mn((LFe(),Wut),e)}function OEt(e){return Z8(),mn((xFe(),Hut),e)}function DEt(e){return s7(),mn((ABe(),Xut),e)}function kEt(e){return pO(),mn((FFe(),Jut),e)}function REt(e){return EI(),mn((OBe(),Qut),e)}function xEt(e){return C7(),mn((t$e(),dat),e)}function LEt(e){return zO(),mn((kBe(),gat),e)}function NEt(e){return c7(),mn((DBe(),bat),e)}function FEt(e){return PE(),mn((I$e(),xat),e)}function BEt(e){return TI(),mn((RBe(),Lat),e)}function $Et(e){return h9(),mn((XNe(),Nat),e)}function KEt(e){return d9(),mn((YNe(),Bat),e)}function qEt(e){return YC(),mn(($Fe(),$at),e)}function HEt(e){return qI(),mn((M$e(),Kat),e)}function zEt(e){return zS(),mn((JNe(),ilt),e)}function VEt(e){return mI(),mn((BFe(),rlt),e)}function GEt(e){return fl(),mn((C$e(),llt),e)}function UEt(e){return yd(),mn((JKe(),hlt),e)}function WEt(e){return Gf(),mn((J$e(),dlt),e)}function YEt(e){return sw(),mn((X$e(),vlt),e)}function XEt(e){return Jr(),mn((P7e(),mrt),e)}function JEt(e){return G_(),mn((SFe(),wrt),e)}function QEt(e){return eo(),mn((j$e(),Rlt),e)}function ZEt(e){return xl(),mn((LBe(),xlt),e)}function e4t(e){return Lh(),mn((c$e(),Llt),e)}function t4t(e){return L7(),mn((oKe(),Nlt),e)}function n4t(e){return Rh(),mn((xBe(),Blt),e)}function i4t(e){return mu(),mn((o$e(),Klt),e)}function r4t(e){return fw(),mn((cqe(),qlt),e)}function o4t(e){return Um(),mn((A$e(),Hlt),e)}function c4t(e){return wr(),mn((V$e(),zlt),e)}function s4t(e){return js(),mn((rKe(),Vlt),e)}function u4t(e){return ou(),mn((u$e(),Jlt),e)}function a4t(e){return Ks(),mn((Sqe(),Qlt),e)}function l4t(e){return Ie(),mn((O$e(),Glt),e)}function f4t(e){return l7(),mn((s$e(),Zlt),e)}function h4t(e){return ru(),mn((r$e(),nft),e)}function d4t(e){return _E(),mn((QKe(),bft),e)}function g4t(e,t){return yt(e),e+(yt(t),t)}function b4t(e,t){return Nf(),on(he(e.a),t)}function p4t(e,t){return Nf(),on(he(e.a),t)}function uB(e,t){this.c=e,this.a=t,this.b=t-e}function Wke(e,t,n){this.a=e,this.b=t,this.c=n}function Tte(e,t,n){this.a=e,this.b=t,this.c=n}function jte(e,t,n){this.a=e,this.b=t,this.c=n}function Yke(e,t,n){this.a=e,this.b=t,this.c=n}function Xke(e,t,n){this.a=e,this.b=t,this.c=n}function cd(e,t,n){this.e=e,this.a=t,this.c=n}function Jke(e,t,n){Du(),Kne.call(this,e,t,n)}function aB(e,t,n){Du(),Mne.call(this,e,t,n)}function Ate(e,t,n){Du(),Mne.call(this,e,t,n)}function Ote(e,t,n){Du(),Mne.call(this,e,t,n)}function Qke(e,t,n){Du(),aB.call(this,e,t,n)}function Dte(e,t,n){Du(),aB.call(this,e,t,n)}function Zke(e,t,n){Du(),Dte.call(this,e,t,n)}function eRe(e,t,n){Du(),Ate.call(this,e,t,n)}function tRe(e,t,n){Du(),Ote.call(this,e,t,n)}function jC(e,t){return nn(e),nn(t),new E8e(e,t)}function Yy(e,t){return nn(e),nn(t),new gRe(e,t)}function w4t(e,t){return nn(e),nn(t),new bRe(e,t)}function m4t(e,t){return nn(e),nn(t),new P8e(e,t)}function c(e,t){return y5(e==null||VK(e,t)),e}function w_(e){var t;return t=new Se,F$(t,e),t}function v4t(e){var t;return t=new er,F$(t,e),t}function nRe(e){var t;return t=new FQ,Q$(t,e),t}function AC(e){var t;return t=new wi,Q$(t,e),t}function y4t(e){return!e.e&&(e.e=new Se),e.e}function _4t(e){return!e.c&&(e.c=new G3),e.c}function Ee(e,t){return e.c[e.c.length]=t,!0}function iRe(e,t){this.c=e,this.b=t,this.a=!1}function kte(e){this.d=e,uIe(this),this.b=dSt(e.d)}function rRe(){this.a=";,;",this.b="",this.c=""}function E4t(e,t,n){oxe.call(this,t,n),this.a=e}function oRe(e,t,n){this.b=e,v7e.call(this,t,n)}function Rte(e,t,n){this.c=e,y9.call(this,t,n)}function xte(e,t,n){ise(n,0,e,t,n.length,!1)}function Bf(e,t,n,i,r){e.b=t,e.c=n,e.d=i,e.a=r}function S4t(e,t){t&&(e.b=t,e.a=(b1(t),t.a))}function Lte(e,t,n,i,r){e.d=t,e.c=n,e.a=i,e.b=r}function Nte(e){var t,n;t=e.b,n=e.c,e.b=n,e.c=t}function Fte(e){var t,n;n=e.d,t=e.a,e.d=t,e.a=n}function Bte(e){return y1(jSt(Oo(e)?ia(e):e))}function P4t(e,t){return Uc(_Re(e.d),_Re(t.d))}function M4t(e,t){return t==(Ie(),Mt)?e.c:e.d}function m_(){m_=Z,r0e=(Ie(),Mt),XR=jt}function cRe(){this.b=ge(Te(Le((dl(),kG))))}function sRe(e){return Ig(),oe(xt,xe,1,e,5,1)}function C4t(e){return new $e(e.c+e.b,e.d+e.a)}function I4t(e,t){return f9(),Uc(e.d.p,t.d.p)}function lB(e){return Lt(e.b!=0),Fu(e,e.a.a)}function T4t(e){return Lt(e.b!=0),Fu(e,e.c.b)}function $te(e,t){if(!e)throw V(new p9e(t))}function u8(e,t){if(!e)throw V(new St(t))}function Kte(e,t,n){l_.call(this,e,t),this.b=n}function OC(e,t,n){nee.call(this,e,t),this.c=n}function uRe(e,t,n){B$e.call(this,t,n),this.d=e}function qte(e){_te(),xA.call(this),this.th(e)}function aRe(e,t,n){this.a=e,Im.call(this,t,n)}function lRe(e,t,n){this.a=e,Im.call(this,t,n)}function a8(e,t,n){nee.call(this,e,t),this.c=n}function fRe(){k_(),USt.call(this,(c1(),_a))}function hRe(e){return e!=null&&!OK(e,oM,cM)}function j4t(e,t){return(_He(e)<<4|_He(t))&Ni}function A4t(e,t){return k8(),ZK(e,t),new Bxe(e,t)}function jg(e,t){var n;e.n&&(n=t,Ee(e.f,n))}function v_(e,t,n){var i;i=new qp(n),ul(e,t,i)}function O4t(e,t){var n;return n=e.c,cre(e,t),n}function Hte(e,t){return t<0?e.g=-1:e.g=t,e}function l8(e,t){return bIt(e),e.a*=t,e.b*=t,e}function dRe(e,t,n,i,r){e.c=t,e.d=n,e.b=i,e.a=r}function Cn(e,t){return Ri(e,t,e.c.b,e.c),!0}function zte(e){e.a.b=e.b,e.b.a=e.a,e.a=e.b=null}function fB(e){this.b=e,this.a=e0(this.b.a).Ed()}function gRe(e,t){this.b=e,this.a=t,SN.call(this)}function bRe(e,t){this.a=e,this.b=t,SN.call(this)}function pRe(e,t){oxe.call(this,t,1040),this.a=e}function DC(e){return e==0||isNaN(e)?e:e<0?-1:1}function D4t(e){return t2(),Uf(e)==yi(M1(e))}function k4t(e){return t2(),M1(e)==yi(Uf(e))}function Zb(e,t){return f6(e,new l_(t.a,t.b))}function R4t(e){return!Kr(e)&&e.c.i.c==e.d.i.c}function f8(e){var t;return t=e.n,e.a.b+t.d+t.a}function wRe(e){var t;return t=e.n,e.e.b+t.d+t.a}function Vte(e){var t;return t=e.n,e.e.a+t.b+t.c}function mRe(e){return Ln(),new $f(0,e)}function x4t(e){return e.a?e.a:VB(e)}function y5(e){if(!e)throw V(new e_(null))}function vRe(){vRe=Z,wY=(st(),new jN(GV))}function h8(){h8=Z,new qoe(($N(),rG),(KN(),iG))}function yRe(){yRe=Z,dhe=oe($r,we,19,256,0,1)}function hB(e,t,n,i){woe.call(this,e,t,n,i,0,0)}function L4t(e,t,n){return Kn(e.b,c(n.b,17),t)}function N4t(e,t,n){return Kn(e.b,c(n.b,17),t)}function F4t(e,t){return Ee(e,new $e(t.a,t.b))}function B4t(e,t){return e.c=t)throw V(new RQ)}function _St(e,t,n){return vi(t,0,Yte(t[0],n[0])),t}function ESt(e,t,n){t.Ye(n,ge(Te(Bt(e.b,n)))*e.a)}function rxe(e,t,n){return ov(),U_(e,t)&&U_(e,n)}function M5(e){return js(),!e.Hc(Wh)&&!e.Hc(X1)}function C8(e){return new $e(e.c+e.b/2,e.d+e.a/2)}function PB(e,t){return t.kh()?S1(e.b,c(t,49)):t}function fne(e,t){this.e=e,this.d=(t&64)!=0?t|mf:t}function oxe(e,t){this.c=0,this.d=e,this.b=t|64|mf}function I8(e){this.b=new Dc(11),this.a=(xm(),e)}function MB(e){this.b=null,this.a=(xm(),e||Ihe)}function cxe(e){this.a=jze(e.a),this.b=new ps(e.b)}function sxe(e){this.b=e,Vy.call(this,e),lDe(this)}function uxe(e){this.b=e,vC.call(this,e),fDe(this)}function Kp(e,t,n){this.a=e,Uy.call(this,t,n,5,6)}function hne(e,t,n,i){this.b=e,qi.call(this,t,n,i)}function sr(e,t,n,i,r){A$.call(this,e,t,n,i,r,-1)}function C5(e,t,n,i,r){QC.call(this,e,t,n,i,r,-1)}function Me(e,t,n,i){qi.call(this,e,t,n),this.b=i}function T8(e,t,n,i){OC.call(this,e,t,n),this.b=i}function axe(e){h7e.call(this,e,!1),this.a=!1}function lxe(e,t){this.b=e,VCe.call(this,e.b),this.a=t}function fxe(e,t){Hp(),Myt.call(this,e,n7(new Js(t)))}function j8(e,t){return Ln(),new Cne(e,t,0)}function CB(e,t){return Ln(),new Cne(6,e,t)}function SSt(e,t){return rt(e.substr(0,t.length),t)}function tu(e,t){return fr(t)?WB(e,t):!!Po(e.f,t)}function Sr(e,t){for(yt(t);e.Ob();)t.td(e.Pb())}function km(e,t,n){T1(),this.e=e,this.d=t,this.a=n}function sd(e,t,n,i){var r;r=e.i,r.i=t,r.a=n,r.b=i}function dne(e){var t;for(t=e;t.f;)t=t.f;return t}function Qy(e){var t;return t=Y5(e),Lt(t!=null),t}function PSt(e){var t;return t=aAt(e),Lt(t!=null),t}function __(e,t){var n;return n=e.a.gc(),Pie(t,n),n-t}function gne(e,t){var n;for(n=0;n0?g.Math.log(e/t):-100}function hxe(e,t){return uc(e,t)<0?-1:uc(e,t)>0?1:0}function vne(e,t,n){return iXe(e,c(t,46),c(n,167))}function dxe(e,t){return c(ane(e0(e.a)).Xb(t),42).cd()}function kSt(e,t){return nIt(t,e.length),new pRe(e,t)}function AB(e,t){this.d=e,$t.call(this,e),this.e=t}function t0(e){this.d=(yt(e),e),this.a=0,this.c=dD}function yne(e,t){Lb.call(this,1),this.a=e,this.b=t}function gxe(e,t){return e.c?gxe(e.c,t):Ee(e.b,t),e}function RSt(e,t,n){var i;return i=Yp(e,t),g$(e,t,n),i}function _ne(e,t){var n;return n=e.slice(0,t),Fie(n,e)}function bxe(e,t,n){var i;for(i=0;i=e.g}function BB(e,t,n){var i;return i=X$(e,t,n),Yse(e,i)}function Zy(e,t){var n;n=e.a.length,Yp(e,n),g$(e,n,t)}function Axe(e,t){var n;n=console[e],n.call(console,t)}function Oxe(e,t){var n;++e.j,n=e.Vi(),e.Ii(e.oi(n,t))}function GSt(e,t,n){c(t.b,65),Zc(t.a,new Tte(e,n,t))}function Mne(e,t,n){HA.call(this,t),this.a=e,this.b=n}function Cne(e,t,n){Lb.call(this,e),this.a=t,this.b=n}function Ine(e,t,n){this.a=e,CQ.call(this,t),this.b=n}function Dxe(e,t,n){this.a=e,iie.call(this,8,t,null,n)}function USt(e){this.a=(yt(yn),yn),this.b=e,new UQ}function kxe(e){this.c=e,this.b=this.c.a,this.a=this.c.e}function Tne(e){this.c=e,this.b=e.a.d.a,Yee(e.a.e,this)}function nu(e){Rp(e.c!=-1),e.d.$c(e.c),e.b=e.c,e.c=-1}function j5(e){return g.Math.sqrt(e.a*e.a+e.b*e.b)}function i0(e,t){return y_(t,e.a.c.length),Ne(e.a,t)}function df(e,t){return le(e)===le(t)||e!=null&&$n(e,t)}function WSt(e){return 0>=e?new yZ:RIt(e-1)}function YSt(e){return tm?WB(tm,e):!1}function Rxe(e){return e?e.dc():!e.Kc().Ob()}function Nr(e){return!e.a&&e.c?e.c.b:e.a}function XSt(e){return!e.a&&(e.a=new qi(J1,e,4)),e.a}function r0(e){return!e.d&&(e.d=new qi(oo,e,1)),e.d}function yt(e){if(e==null)throw V(new AS);return e}function A5(e){e.c?e.c.He():(e.d=!0,tNt(e))}function b1(e){e.c?b1(e.c):(Wg(e),e.d=!0)}function xxe(e){Dne(e.a),e.b=oe(xt,xe,1,e.b.length,5,1)}function JSt(e,t){return Uc(t.j.c.length,e.j.c.length)}function QSt(e,t){e.c<0||e.b.b=0?e.Bh(n):ose(e,t)}function Lxe(e){var t,n;return t=e.c.i.c,n=e.d.i.c,t==n}function e5t(e){if(e.p!=4)throw V(new hs);return e.e}function t5t(e){if(e.p!=3)throw V(new hs);return e.e}function n5t(e){if(e.p!=6)throw V(new hs);return e.f}function i5t(e){if(e.p!=6)throw V(new hs);return e.k}function r5t(e){if(e.p!=3)throw V(new hs);return e.j}function o5t(e){if(e.p!=4)throw V(new hs);return e.j}function jne(e){return!e.b&&(e.b=new zA(new BN)),e.b}function o0(e){return e.c==-2&&nvt(e,SDt(e.g,e.b)),e.c}function P_(e,t){var n;return n=RB("",e),n.n=t,n.i=1,n}function c5t(e,t){vB(c(t.b,65),e),Zc(t.a,new mQ(e))}function s5t(e,t){on((!e.a&&(e.a=new PC(e,e)),e.a),t)}function Nxe(e,t){this.b=e,AB.call(this,e,t),lDe(this)}function Fxe(e,t){this.b=e,mte.call(this,e,t),fDe(this)}function Ane(e,t,n,i){Vb.call(this,e,t),this.d=n,this.a=i}function D8(e,t,n,i){Vb.call(this,e,n),this.a=t,this.f=i}function Bxe(e,t){K2t.call(this,xIt(nn(e),nn(t))),this.a=t}function $xe(){Nce.call(this,lb,(H9e(),Hft)),jKt(this)}function Kxe(){Nce.call(this,la,(r_(),sme)),F$t(this)}function qxe(){pn.call(this,"DELAUNAY_TRIANGULATION",0)}function u5t(e){return String.fromCharCode.apply(null,e)}function Kn(e,t,n){return fr(t)?bo(e,t,n):Kc(e.f,t,n)}function One(e){return st(),e?e.ve():(xm(),xm(),jhe)}function a5t(e,t,n){return d2(),n.pg(e,c(t.cd(),146))}function Hxe(e,t){return h8(),new qoe(new PDe(e),new SDe(t))}function l5t(e){return pu(e,MH),PO(xr(xr(5,e),e/10|0))}function k8(){k8=Z,qtt=new qN(U(G(fb,1),gD,42,0,[]))}function zxe(e){return!e.d&&(e.d=new W3(e.c.Cc())),e.d}function M_(e){return!e.a&&(e.a=new P9e(e.c.vc())),e.a}function Vxe(e){return!e.b&&(e.b=new t_(e.c.ec())),e.b}function qf(e,t){for(;t-- >0;)e=e<<1|(e<0?1:0);return e}function wc(e,t){return le(e)===le(t)||e!=null&&$n(e,t)}function f5t(e,t){return Pt(),c(t.b,19).ai&&++i,i}function Mh(e){var t,n;return n=(t=new Nb,t),B_(n,e),n}function zB(e){var t,n;return n=(t=new Nb,t),$ce(n,e),n}function C5t(e,t){var n;return n=Bt(e.f,t),wre(t,n),null}function VB(e){var t;return t=NIt(e),t||null}function tLe(e){return!e.b&&(e.b=new Me(rr,e,12,3)),e.b}function I5t(e){return e!=null&&ZM(Bx,e.toLowerCase())}function T5t(e,t){return zi(ws(e)*eu(e),ws(t)*eu(t))}function j5t(e,t){return zi(ws(e)*eu(e),ws(t)*eu(t))}function A5t(e,t){return zi(e.d.c+e.d.b/2,t.d.c+t.d.b/2)}function O5t(e,t){return zi(e.g.c+e.g.b/2,t.g.c+t.g.b/2)}function nLe(e,t,n){n.a?ts(e,t.b-e.f/2):es(e,t.a-e.g/2)}function iLe(e,t,n,i){this.a=e,this.b=t,this.c=n,this.d=i}function rLe(e,t,n,i){this.a=e,this.b=t,this.c=n,this.d=i}function kg(e,t,n,i){this.e=e,this.a=t,this.c=n,this.d=i}function oLe(e,t,n,i){this.a=e,this.c=t,this.d=n,this.b=i}function cLe(e,t,n,i){Du(),QFe.call(this,t,n,i),this.a=e}function sLe(e,t,n,i){Du(),QFe.call(this,t,n,i),this.a=e}function uLe(e,t){this.a=e,N3t.call(this,e,c(e.d,15).Zc(t))}function GB(e){this.f=e,this.c=this.f.e,e.f>0&&yVe(this)}function aLe(e,t,n,i){this.b=e,this.c=i,DF.call(this,t,n)}function lLe(e){return Lt(e.b=0&&rt(e.substr(n,t.length),t)}function p1(e,t,n,i,r,o,u){return new p$(e.e,t,n,i,r,o,u)}function ILe(e,t,n,i,r,o){this.a=e,H$.call(this,t,n,i,r,o)}function TLe(e,t,n,i,r,o){this.a=e,H$.call(this,t,n,i,r,o)}function jLe(e,t){this.g=e,this.d=U(G(nh,1),Ed,10,0,[t])}function ud(e,t){this.e=e,this.a=xt,this.b=QWe(t),this.c=t}function ALe(e,t){i8.call(this),Gie(this),this.a=e,this.c=t}function BC(e,t,n,i){vi(e.c[t.g],n.g,i),vi(e.c[n.g],t.g,i)}function JB(e,t,n,i){vi(e.c[t.g],t.g,n),vi(e.b[t.g],t.g,i)}function Z5t(){return WC(),U(G(Ybe,1),_e,376,0,[rW,pj])}function e6t(){return eI(),U(G(K1e,1),_e,479,0,[$1e,mR])}function t6t(){return uI(),U(G(F1e,1),_e,419,0,[pR,N1e])}function n6t(){return gO(),U(G(A1e,1),_e,422,0,[j1e,oU])}function i6t(){return iO(),U(G(ege,1),_e,420,0,[yU,Z1e])}function r6t(){return rI(),U(G(Vbe,1),_e,421,0,[tW,nW])}function o6t(){return F5(),U(G(Ust,1),_e,523,0,[xP,RP])}function c6t(){return cl(),U(G(wut,1),_e,520,0,[Vw,z1])}function s6t(){return gf(),U(G(eut,1),_e,516,0,[ip,jd])}function u6t(){return Al(),U(G(nut,1),_e,515,0,[yb,Wl])}function a6t(){return s0(),U(G(Put,1),_e,455,0,[V1,$v])}function l6t(){return Z8(),U(G(v0e,1),_e,425,0,[vW,m0e])}function f6t(){return Y8(),U(G(w0e,1),_e,480,0,[mW,p0e])}function h6t(){return $O(),U(G(y0e,1),_e,495,0,[cx,I4])}function d6t(){return pO(),U(G(E0e,1),_e,426,0,[_0e,SW])}function g6t(){return mI(),U(G(Mpe,1),_e,429,0,[bx,Ppe])}function b6t(){return YC(),U(G(ipe,1),_e,430,0,[DW,dx])}function p6t(){return p7(),U(G(qhe,1),_e,428,0,[vG,Khe])}function w6t(){return EO(),U(G(zhe,1),_e,427,0,[Hhe,yG])}function m6t(){return SO(),U(G(mde,1),_e,424,0,[OG,Bk])}function v6t(){return G_(),U(G(prt,1),_e,511,0,[ZT,zG])}function z8(e,t,n,i){return n>=0?e.jh(t,n,i):e.Sg(null,n,i)}function QB(e){return e.b.b==0?e.a.$e():lB(e.b)}function y6t(e){if(e.p!=5)throw V(new hs);return tn(e.f)}function _6t(e){if(e.p!=5)throw V(new hs);return tn(e.k)}function $ne(e){return le(e.a)===le((Z$(),gY))&&EKt(e),e.a}function OLe(e){this.a=c(nn(e),271),this.b=(st(),new kee(e))}function DLe(e,t){Kmt(this,new $e(e.a,e.b)),qmt(this,AC(t))}function s0(){s0=Z,V1=new WZ(j2,0),$v=new WZ(A2,1)}function gf(){gf=Z,ip=new GZ(A2,0),jd=new GZ(j2,1)}function u0(){Ovt.call(this,new Fy(Xp(12))),jee(!0),this.a=2}function ZB(e,t,n){Ln(),Lb.call(this,e),this.b=t,this.a=n}function Kne(e,t,n){Du(),HA.call(this,t),this.a=e,this.b=n}function kLe(e){i8.call(this),Gie(this),this.a=e,this.c=!0}function RLe(e){var t;t=e.c.d.b,e.b=t,e.a=e.c.d,t.a=e.c.d.b=e}function V8(e){var t;TIt(e.a),V7e(e.a),t=new BA(e.a),poe(t)}function E6t(e,t){HWe(e,!0),Zc(e.e.wf(),new Pte(e,!0,t))}function G8(e,t){return dFe(t),MIt(e,oe(Qt,_n,25,t,15,1),t)}function S6t(e,t){return t2(),e==yi(Uf(t))||e==yi(M1(t))}function mc(e,t){return t==null?Uo(Po(e.f,null)):US(e.g,t)}function P6t(e){return e.b==0?null:(Lt(e.b!=0),Fu(e,e.a.a))}function xi(e){return Math.max(Math.min(e,Fn),-2147483648)|0}function M6t(e,t){var n=aG[e.charCodeAt(0)];return n??e}function U8(e,t){return B8(e,"set1"),B8(t,"set2"),new A8e(e,t)}function C6t(e,t){var n;return n=yIt(e.f,t),Wn(t8(n),e.f.d)}function D5(e,t){var n,i;return n=t,i=new Er,OXe(e,n,i),i.d}function e$(e,t,n,i){var r;r=new _ke,t.a[n.g]=r,Xy(e.b,i,r)}function qne(e,t,n){var i;i=e.Yg(t),i>=0?e.sh(i,n):Ose(e,t,n)}function Lm(e,t,n){X8(),e&&Kn(fY,e,t),e&&Kn(Gj,e,n)}function xLe(e,t,n){this.i=new Se,this.b=e,this.g=t,this.a=n}function W8(e,t,n){this.c=new Se,this.e=e,this.f=t,this.b=n}function Hne(e,t,n){this.a=new Se,this.e=e,this.f=t,this.c=n}function LLe(e,t){V9(this),this.f=t,this.g=e,F8(this),this._d()}function $C(e,t){var n;n=e.q.getHours(),e.q.setDate(t),_6(e,n)}function NLe(e,t){var n;for(nn(t),n=e.a;n;n=n.c)t.Od(n.g,n.i)}function FLe(e){var t;return t=new i9(Xp(e.length)),Rre(t,e),t}function I6t(e){function t(){}return t.prototype=e||{},new t}function T6t(e,t){return dqe(e,t)?(fKe(e),!0):!1}function Ch(e,t){if(t==null)throw V(new AS);return M9t(e,t)}function j6t(e){if(e.qe())return null;var t=e.n;return Ek[t]}function KC(e){return e.Db>>16!=3?null:c(e.Cb,33)}function jl(e){return e.Db>>16!=9?null:c(e.Cb,33)}function BLe(e){return e.Db>>16!=6?null:c(e.Cb,79)}function $Le(e){return e.Db>>16!=7?null:c(e.Cb,235)}function KLe(e){return e.Db>>16!=7?null:c(e.Cb,160)}function yi(e){return e.Db>>16!=11?null:c(e.Cb,33)}function qLe(e,t){var n;return n=e.Yg(t),n>=0?e.lh(n):jq(e,t)}function HLe(e,t){var n;return n=new Wte(t),zVe(n,e),new ps(n)}function zne(e){var t;return t=e.d,t=e.si(e.f),on(e,t),t.Ob()}function zLe(e,t){return e.b+=t.b,e.c+=t.c,e.d+=t.d,e.a+=t.a,e}function t$(e,t){return g.Math.abs(e)0}function VLe(){this.a=new Eh,this.e=new er,this.g=0,this.i=0}function GLe(e){this.a=e,this.b=oe(zst,we,1944,e.e.length,0,2)}function n$(e,t,n){var i;i=kqe(e,t,n),e.b=new BO(i.c.length)}function Al(){Al=Z,yb=new VZ(uz,0),Wl=new VZ("UP",1)}function Y8(){Y8=Z,mW=new YZ(cZe,0),p0e=new YZ("FAN",1)}function X8(){X8=Z,fY=new en,Gj=new en,Xyt(cnt,new E6e)}function O6t(e){if(e.p!=0)throw V(new hs);return s5(e.f,0)}function D6t(e){if(e.p!=0)throw V(new hs);return s5(e.k,0)}function ULe(e){return e.Db>>16!=3?null:c(e.Cb,147)}function j_(e){return e.Db>>16!=6?null:c(e.Cb,235)}function zp(e){return e.Db>>16!=17?null:c(e.Cb,26)}function WLe(e,t){var n=e.a=e.a||[];return n[t]||(n[t]=e.le(t))}function k6t(e,t){var n;return n=e.a.get(t),n??new Array}function R6t(e,t){var n;n=e.q.getHours(),e.q.setMonth(t),_6(e,n)}function bo(e,t,n){return t==null?Kc(e.f,null,n):_0(e.g,t,n)}function k5(e,t,n,i,r,o){return new Ah(e.e,t,e.aj(),n,i,r,o)}function qC(e,t,n){return e.a=fu(e.a,0,t)+(""+n)+wC(e.a,t),e}function x6t(e,t,n){return Ee(e.a,(k8(),ZK(t,n),new Vb(t,n))),e}function Vne(e){return Oee(e.c),e.e=e.a=e.c,e.c=e.c.c,++e.d,e.a.f}function YLe(e){return Oee(e.e),e.c=e.a=e.e,e.e=e.e.e,--e.d,e.a.f}function br(e,t){e.d&&Jc(e.d.e,e),e.d=t,e.d&&Ee(e.d.e,e)}function Rr(e,t){e.c&&Jc(e.c.g,e),e.c=t,e.c&&Ee(e.c.g,e)}function po(e,t){e.c&&Jc(e.c.a,e),e.c=t,e.c&&Ee(e.c.a,e)}function Bo(e,t){e.i&&Jc(e.i.j,e),e.i=t,e.i&&Ee(e.i.j,e)}function XLe(e,t,n){this.a=t,this.c=e,this.b=(nn(n),new ps(n))}function JLe(e,t,n){this.a=t,this.c=e,this.b=(nn(n),new ps(n))}function QLe(e,t){this.a=e,this.c=Wo(this.a),this.b=new H8(t)}function L6t(e){var t;return Wg(e),t=new er,si(e,new CIe(t))}function Vp(e,t){if(e<0||e>t)throw V(new ho(Xue+e+Jue+t))}function Gne(e,t){return qRe(e.a,t)?pne(e,c(t,22).g,null):null}function N6t(e){return vK(),Pt(),c(e.a,81).d.e!=0}function ZLe(){ZLe=Z,Vtt=vn((YA(),U(G(ztt,1),_e,538,0,[sG])))}function eNe(){eNe=Z,Ost=Cs(new tr,(Hr(),Io),(Jr(),ej))}function Une(){Une=Z,Dst=Cs(new tr,(Hr(),Io),(Jr(),ej))}function tNe(){tNe=Z,Rst=Cs(new tr,(Hr(),Io),(Jr(),ej))}function nNe(){nNe=Z,Yst=Nn(new tr,(Hr(),Io),(Jr(),dP))}function hu(){hu=Z,Qst=Nn(new tr,(Hr(),Io),(Jr(),dP))}function iNe(){iNe=Z,Zst=Nn(new tr,(Hr(),Io),(Jr(),dP))}function i$(){i$=Z,rut=Nn(new tr,(Hr(),Io),(Jr(),dP))}function rNe(){rNe=Z,zut=Cs(new tr,(dE(),NP),(d6(),aW))}function xg(e,t,n,i){this.c=e,this.d=i,o$(this,t),c$(this,n)}function i2(e){this.c=new wi,this.b=e.b,this.d=e.c,this.a=e.a}function r$(e){this.a=g.Math.cos(e),this.b=g.Math.sin(e)}function o$(e,t){e.a&&Jc(e.a.k,e),e.a=t,e.a&&Ee(e.a.k,e)}function c$(e,t){e.b&&Jc(e.b.f,e),e.b=t,e.b&&Ee(e.b.f,e)}function oNe(e,t){GSt(e,e.b,e.c),c(e.b.b,65),t&&c(t.b,65).b}function F6t(e,t){aoe(e,t),Q(e.Cb,88)&&lw(Ls(c(e.Cb,88)),2)}function s$(e,t){Q(e.Cb,88)&&lw(Ls(c(e.Cb,88)),4),kc(e,t)}function J8(e,t){Q(e.Cb,179)&&(c(e.Cb,179).tb=null),kc(e,t)}function vc(e,t){return Wr(),N$(t)?new d8(t,e):new pC(t,e)}function B6t(e,t){var n,i;n=t.c,i=n!=null,i&&Zy(e,new qp(t.c))}function cNe(e){var t,n;return n=(r_(),t=new Nb,t),B_(n,e),n}function sNe(e){var t,n;return n=(r_(),t=new Nb,t),B_(n,e),n}function uNe(e,t){var n;return n=new ta(e),t.c[t.c.length]=n,n}function aNe(e,t){var n;return n=c(tw(n2(e.a),t),14),n?n.gc():0}function lNe(e){var t;return Wg(e),t=(xm(),xm(),The),CO(e,t)}function fNe(e){for(var t;;)if(t=e.Pb(),!e.Ob())return t}function Wne(e,t){jvt.call(this,new Fy(Xp(e))),pu(t,PJe),this.a=t}function Hf(e,t,n){mHe(t,n,e.gc()),this.c=e,this.a=t,this.b=n-t}function hNe(e,t,n){var i;mHe(t,n,e.c.length),i=n-t,mZ(e.c,t,i)}function $6t(e,t){aDe(e,tn(Xi(h1(t,24),wD)),tn(Xi(t,wD)))}function pt(e,t){if(e<0||e>=t)throw V(new ho(Xue+e+Jue+t))}function fn(e,t){if(e<0||e>=t)throw V(new cZ(Xue+e+Jue+t))}function bt(e,t){this.b=(yt(e),e),this.a=(t&vw)==0?t|64|mf:t}function dNe(e){z7e(this),PAe(this.a,Dre(g.Math.max(8,e))<<1)}function Ol(e){return Ko(U(G(ir,1),we,8,0,[e.i.n,e.n,e.a]))}function K6t(){return Fl(),U(G(Hs,1),_e,132,0,[Fhe,Su,Tw])}function q6t(){return al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])}function H6t(){return Ts(),U(G(jnt,1),_e,461,0,[jf,N1,qa])}function z6t(){return Qc(),U(G(Ont,1),_e,462,0,[pl,F1,Ha])}function V6t(){return y0(),U(G(Lde,1),_e,423,0,[Mv,xde,KG])}function G6t(){return $5(),U(G(Dde,1),_e,379,0,[xG,RG,LG])}function U6t(){return X5(),U(G(xbe,1),_e,378,0,[YU,Rbe,VR])}function W6t(){return f2(),U(G(D1e,1),_e,314,0,[H2,nj,O1e])}function Y6t(){return DO(),U(G(R1e,1),_e,337,0,[k1e,bR,cU])}function X6t(){return zg(),U(G(Vrt,1),_e,450,0,[aU,d4,jv])}function J6t(){return m0(),U(G(XG,1),_e,361,0,[U0,$1,G0])}function Q6t(){return Oh(),U(G(Zrt,1),_e,303,0,[rj,Ov,z2])}function Z6t(){return J_(),U(G(vU,1),_e,292,0,[wU,mU,ij])}function ePt(){return Zr(),U(G(Pst,1),_e,452,0,[OP,Os,Fc])}function tPt(){return kh(),U(G(zbe,1),_e,339,0,[H1,Hbe,eW])}function nPt(){return VO(),U(G(Wbe,1),_e,375,0,[Gbe,iW,Ube])}function iPt(){return XO(),U(G(t0e,1),_e,377,0,[sW,M4,zw])}function rPt(){return rE(),U(G(Jbe,1),_e,336,0,[oW,Xbe,DP])}function oPt(){return HO(),U(G(e0e,1),_e,338,0,[Zbe,cW,Qbe])}function cPt(){return w0(),U(G(qst,1),_e,454,0,[wj,kP,YR])}function sPt(){return s7(),U(G(Yut,1),_e,442,0,[EW,yW,_W])}function uPt(){return EI(),U(G(M0e,1),_e,380,0,[sx,S0e,P0e])}function aPt(){return c7(),U(G(H0e,1),_e,381,0,[q0e,TW,K0e])}function lPt(){return zO(),U(G(B0e,1),_e,293,0,[IW,F0e,N0e])}function fPt(){return TI(),U(G(jW,1),_e,437,0,[lx,fx,hx])}function hPt(){return Rh(),U(G(Dwe,1),_e,334,0,[Mx,kd,XP])}function dPt(){return xl(),U(G(ywe,1),_e,272,0,[A4,Ww,O4])}function gPt(e,t){return xxt(e,t,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function bPt(e,t,n){var i;return i=P6(e,t,!1),i.b<=t&&i.a<=n}function gNe(e,t,n){var i;i=new TSe,i.b=t,i.a=n,++t.b,Ee(e.d,i)}function pPt(e,t){var n;return n=(yt(e),e).g,Hee(!!n),yt(t),n(t)}function Yne(e,t){var n,i;return i=__(e,t),n=e.a.Zc(i),new j8e(e,n)}function wPt(e){return e.Db>>16!=6?null:c(Dq(e),235)}function mPt(e){if(e.p!=2)throw V(new hs);return tn(e.f)&Ni}function vPt(e){if(e.p!=2)throw V(new hs);return tn(e.k)&Ni}function yPt(e){return e.a==(k_(),Hx)&&tvt(e,Jxt(e.g,e.b)),e.a}function r2(e){return e.d==(k_(),Hx)&&ivt(e,zFt(e.g,e.b)),e.d}function K(e){return Lt(e.ai?1:0}function bNe(e,t){var n,i;return n=D$(t),i=n,c(Bt(e.c,i),19).a}function pNe(e,t){var n;for(n=e+"";n.length0&&e.a[--e.d]==0;);e.a[e.d++]==0&&(e.e=0)}function xNe(e){return e.a?e.e.length==0?e.a.a:e.a.a+(""+e.e):e.c}function OPt(e){return!!e.a&&Ns(e.a.a).i!=0&&!(e.b&&XK(e.b))}function DPt(e){return!!e.u&&dc(e.u.a).i!=0&&!(e.n&&YK(e.n))}function LNe(e){return gB(e.e.Hd().gc()*e.c.Hd().gc(),16,new kCe(e))}function kPt(e,t){return hxe(ns(e.q.getTime()),ns(t.q.getTime()))}function bf(e){return c(Bl(e,oe(qG,Pz,17,e.c.length,0,1)),474)}function HC(e){return c(Bl(e,oe(nh,Ed,10,e.c.length,0,1)),193)}function RPt(e){return hu(),!Kr(e)&&!(!Kr(e)&&e.c.i.c==e.d.i.c)}function NNe(e,t,n){var i;i=(nn(e),new ps(e)),lOt(new XLe(i,t,n))}function zC(e,t,n){var i;i=(nn(e),new ps(e)),fOt(new JLe(i,t,n))}function FNe(e,t){var n;return n=1-t,e.a[n]=FO(e.a[n],n),FO(e,t)}function BNe(e,t){var n;e.e=new ZQ,n=dw(t),cr(n,e.c),DWe(e,n,0)}function pr(e,t,n,i){var r;r=new BJ,r.a=t,r.b=n,r.c=i,Cn(e.a,r)}function je(e,t,n,i){var r;r=new BJ,r.a=t,r.b=n,r.c=i,Cn(e.b,r)}function xa(e){var t,n,i;return t=new vxe,n=Jq(t,e),vqt(t),i=n,i}function tie(){var e,t,n;return t=(n=(e=new Nb,e),n),Ee(wme,t),t}function eO(e){return e.j.c=oe(xt,xe,1,0,5,1),Dne(e.c),g5t(e.a),e}function Nm(e){return HS(),Q(e.g,10)?c(e.g,10):null}function xPt(e){return Rm(e).dc()?!1:(R2t(e,new ae),!0)}function LPt(e){if(!("stack"in e))try{throw e}catch{}return e}function VC(e,t){if(e<0||e>=t)throw V(new ho(Ykt(e,t)));return e}function $Ne(e,t,n){if(e<0||tn)throw V(new ho(ykt(e,t,n)))}function f$(e,t){if(Yi(e.a,t),t.d)throw V(new No(GJe));t.d=e}function h$(e,t){if(t.$modCount!=e.$modCount)throw V(new Ou)}function KNe(e,t){return Q(t,42)?tq(e.a,c(t,42)):!1}function qNe(e,t){return Q(t,42)?tq(e.a,c(t,42)):!1}function HNe(e,t){return Q(t,42)?tq(e.a,c(t,42)):!1}function NPt(e,t){return e.a<=e.b?(t.ud(e.a++),!0):!1}function l0(e){var t;return Oo(e)?(t=e,t==-0?0:t):GCt(e)}function tO(e){var t;return b1(e),t=new Xn,Em(e.a,new PIe(t)),t}function zNe(e){var t;return b1(e),t=new gt,Em(e.a,new SIe(t)),t}function _r(e,t){this.a=e,CS.call(this,e),Vp(t,e.gc()),this.b=t}function nie(e){this.e=e,this.b=this.e.a.entries(),this.a=new Array}function FPt(e){return gB(e.e.Hd().gc()*e.c.Hd().gc(),273,new DCe(e))}function nO(e){return new Dc((pu(e,MH),PO(xr(xr(5,e),e/10|0))))}function VNe(e){return c(Bl(e,oe(drt,SQe,11,e.c.length,0,1)),1943)}function BPt(e,t,n){return n.f.c.length>0?vne(e.a,t,n):vne(e.b,t,n)}function $Pt(e,t,n){e.d&&Jc(e.d.e,e),e.d=t,e.d&&Bp(e.d.e,n,e)}function d$(e,t){kHt(t,e),Fte(e.d),Fte(c(B(e,(Oe(),FR)),207))}function x5(e,t){DHt(t,e),Nte(e.d),Nte(c(B(e,(Oe(),FR)),207))}function f0(e,t){var n,i;return n=Ch(e,t),i=null,n&&(i=n.fe()),i}function A_(e,t){var n,i;return n=Yp(e,t),i=null,n&&(i=n.ie()),i}function L5(e,t){var n,i;return n=Ch(e,t),i=null,n&&(i=n.ie()),i}function Ih(e,t){var n,i;return n=Ch(e,t),i=null,n&&(i=Uce(n)),i}function KPt(e,t,n){var i;return i=fE(n),Z7(e.g,i,t),Z7(e.i,t,n),t}function qPt(e,t,n){var i;i=p9t();try{return U3t(e,t,n)}finally{ZPt(i)}}function GNe(e){var t;t=e.Wg(),this.a=Q(t,69)?c(t,69).Zh():t.Kc()}function tr(){c9e.call(this),this.j.c=oe(xt,xe,1,0,5,1),this.a=-1}function iie(e,t,n,i){this.d=e,this.n=t,this.g=n,this.o=i,this.p=-1}function UNe(e,t,n,i){this.e=i,this.d=null,this.c=e,this.a=t,this.b=n}function rie(e,t,n){this.d=new xTe(this),this.e=e,this.i=t,this.f=n}function iO(){iO=Z,yU=new KZ(FE,0),Z1e=new KZ("TOP_LEFT",1)}function WNe(){WNe=Z,i0e=Hxe(Ce(1),Ce(4)),n0e=Hxe(Ce(1),Ce(2))}function YNe(){YNe=Z,Bat=vn((d9(),U(G(Fat,1),_e,551,0,[OW])))}function XNe(){XNe=Z,Nat=vn((h9(),U(G(npe,1),_e,482,0,[AW])))}function JNe(){JNe=Z,ilt=vn((zS(),U(G(Spe,1),_e,530,0,[Sj])))}function QNe(){QNe=Z,ait=vn((l9(),U(G(fde,1),_e,481,0,[CG])))}function HPt(){return v0(),U(G(nit,1),_e,406,0,[zT,HT,PG,MG])}function zPt(){return wO(),U(G(Ak,1),_e,297,0,[pG,Rhe,xhe,Lhe])}function VPt(){return c6(),U(G(sit,1),_e,394,0,[YT,xk,Lk,XT])}function GPt(){return m2(),U(G(rit,1),_e,323,0,[GT,VT,UT,WT])}function UPt(){return Q_(),U(G(trt,1),_e,405,0,[V0,Ow,Aw,Pv])}function WPt(){return YO(),U(G(yrt,1),_e,360,0,[WG,uR,aR,tj])}function ZNe(e,t,n,i){return Q(n,54)?new BDe(e,t,n,i):new une(e,t,n,i)}function YPt(){return Nl(),U(G(jrt,1),_e,411,0,[q2,u4,a4,YG])}function XPt(e){var t;return e.j==(Ie(),Yt)&&(t=_Ue(e),bs(t,jt))}function JPt(e,t){var n;n=t.a,Rr(n,t.c.d),br(n,t.d.d),Qp(n.a,e.n)}function eFe(e,t){return c(Qb(P8(c(Vn(e.k,t),15).Oc(),Cv)),113)}function tFe(e,t){return c(Qb(M8(c(Vn(e.k,t),15).Oc(),Cv)),113)}function QPt(e){return new bt(YIt(c(e.a.dd(),14).gc(),e.a.cd()),16)}function O_(e){return Q(e,14)?c(e,14).dc():!e.Kc().Ob()}function o2(e){return HS(),Q(e.g,145)?c(e.g,145):null}function nFe(e){if(e.e.g!=e.b)throw V(new Ou);return!!e.c&&e.d>0}function Pn(e){return Lt(e.b!=e.d.c),e.c=e.b,e.b=e.b.a,++e.a,e.c.c}function oie(e,t){yt(t),vi(e.a,e.c,t),e.c=e.c+1&e.a.length-1,iVe(e)}function w1(e,t){yt(t),e.b=e.b-1&e.a.length-1,vi(e.a,e.b,t),iVe(e)}function iFe(e,t){var n;for(n=e.j.c.length;n0&&bc(e.g,0,t,0,e.i),t}function sFe(e,t){p9();var n;return n=c(Bt(Fx,e),55),!n||n.wj(t)}function fMt(e){if(e.p!=1)throw V(new hs);return tn(e.f)<<24>>24}function hMt(e){if(e.p!=1)throw V(new hs);return tn(e.k)<<24>>24}function dMt(e){if(e.p!=7)throw V(new hs);return tn(e.k)<<16>>16}function gMt(e){if(e.p!=7)throw V(new hs);return tn(e.f)<<16>>16}function Th(e){var t;for(t=0;e.Ob();)e.Pb(),t=xr(t,1);return PO(t)}function uFe(e,t){var n;return n=new _m,e.xd(n),n.a+="..",t.yd(n),n.a}function bMt(e,t,n){var i;i=c(Bt(e.g,n),57),Ee(e.a.c,new yr(t,i))}function pMt(e,t,n){return SB(Te(Uo(Po(e.f,t))),Te(Uo(Po(e.f,n))))}function rO(e,t,n){return tD(e,t,n,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function wMt(e,t,n){return IE(e,t,n,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function mMt(e,t,n){return Kxt(e,t,n,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function uie(e,t){return e==(Dt(),Ui)&&t==Ui?4:e==Ui||t==Ui?8:32}function aFe(e,t){return le(t)===le(e)?"(this Map)":t==null?rs:Ro(t)}function vMt(e,t){return c(t==null?Uo(Po(e.f,null)):US(e.g,t),281)}function lFe(e,t,n){var i;return i=fE(n),Kn(e.b,i,t),Kn(e.c,t,n),t}function fFe(e,t){var n;for(n=t;n;)xp(e,n.i,n.j),n=yi(n);return e}function aie(e,t){var n;return n=NC(w_(new k$(e,t))),b8(new k$(e,t)),n}function zf(e,t){Wr();var n;return n=c(e,66).Mj(),ZDt(n,t),n.Ok(t)}function yMt(e,t,n,i,r){var o;o=Gxt(r,n,i),Ee(t,zkt(r,o)),xDt(e,r,t)}function hFe(e,t,n){e.i=0,e.e=0,t!=n&&(Nqe(e,t,n),Lqe(e,t,n))}function lie(e,t){var n;n=e.q.getHours(),e.q.setFullYear(t+O1),_6(e,n)}function _Mt(e,t,n){if(n){var i=n.ee();e.a[t]=i(n)}else delete e.a[t]}function g$(e,t,n){if(n){var i=n.ee();n=i(n)}else n=void 0;e.a[t]=n}function dFe(e){if(e<0)throw V(new m9e("Negative array size: "+e))}function dc(e){return e.n||(Ls(e),e.n=new GRe(e,oo,e),So(e)),e.n}function N5(e){return Lt(e.a=0&&e.a[n]===t[n];n--);return n<0}function mFe(e,t){iE();var n;return n=e.j.g-t.j.g,n!=0?n:0}function vFe(e,t){return yt(t),e.a!=null?cSt(t.Kb(e.a)):jk}function oO(e){var t;return e?new Wte(e):(t=new Eh,Q$(t,e),t)}function gu(e,t){var n;return t.b.Kb(f$e(e,t.c.Ee(),(n=new TIe(t),n)))}function cO(e){Oce(),aDe(this,tn(Xi(h1(e,24),wD)),tn(Xi(e,wD)))}function yFe(){yFe=Z,Snt=vn((p7(),U(G(qhe,1),_e,428,0,[vG,Khe])))}function _Fe(){_Fe=Z,Pnt=vn((EO(),U(G(zhe,1),_e,427,0,[Hhe,yG])))}function EFe(){EFe=Z,Cit=vn((SO(),U(G(mde,1),_e,424,0,[OG,Bk])))}function SFe(){SFe=Z,wrt=vn((G_(),U(G(prt,1),_e,511,0,[ZT,zG])))}function PFe(){PFe=Z,zrt=vn((uI(),U(G(F1e,1),_e,419,0,[pR,N1e])))}function MFe(){MFe=Z,Wrt=vn((eI(),U(G(K1e,1),_e,479,0,[$1e,mR])))}function CFe(){CFe=Z,Ist=vn((WC(),U(G(Ybe,1),_e,376,0,[rW,pj])))}function IFe(){IFe=Z,Sst=vn((rI(),U(G(Vbe,1),_e,421,0,[tW,nW])))}function TFe(){TFe=Z,$rt=vn((gO(),U(G(A1e,1),_e,422,0,[j1e,oU])))}function jFe(){jFe=Z,tot=vn((iO(),U(G(ege,1),_e,420,0,[yU,Z1e])))}function AFe(){AFe=Z,mut=vn((cl(),U(G(wut,1),_e,520,0,[Vw,z1])))}function OFe(){OFe=Z,Wst=vn((F5(),U(G(Ust,1),_e,523,0,[xP,RP])))}function DFe(){DFe=Z,tut=vn((gf(),U(G(eut,1),_e,516,0,[ip,jd])))}function kFe(){kFe=Z,iut=vn((Al(),U(G(nut,1),_e,515,0,[yb,Wl])))}function RFe(){RFe=Z,Mut=vn((s0(),U(G(Put,1),_e,455,0,[V1,$v])))}function xFe(){xFe=Z,Hut=vn((Z8(),U(G(v0e,1),_e,425,0,[vW,m0e])))}function LFe(){LFe=Z,Wut=vn(($O(),U(G(y0e,1),_e,495,0,[cx,I4])))}function NFe(){NFe=Z,qut=vn((Y8(),U(G(w0e,1),_e,480,0,[mW,p0e])))}function FFe(){FFe=Z,Jut=vn((pO(),U(G(E0e,1),_e,426,0,[_0e,SW])))}function BFe(){BFe=Z,rlt=vn((mI(),U(G(Mpe,1),_e,429,0,[bx,Ppe])))}function $Fe(){$Fe=Z,$at=vn((YC(),U(G(ipe,1),_e,430,0,[DW,dx])))}function F5(){F5=Z,xP=new zZ("UPPER",0),RP=new zZ("LOWER",1)}function MMt(e,t){var n;n=new xy,Rg(n,"x",t.a),Rg(n,"y",t.b),Zy(e,n)}function CMt(e,t){var n;n=new xy,Rg(n,"x",t.a),Rg(n,"y",t.b),Zy(e,n)}function IMt(e,t){var n,i;i=!1;do n=Tqe(e,t),i=i|n;while(n);return i}function die(e,t){var n,i;for(n=t,i=0;n>0;)i+=e.a[n],n-=n&-n;return i}function KFe(e,t){var n;for(n=t;n;)xp(e,-n.i,-n.j),n=yi(n);return e}function Mr(e,t){var n,i;for(yt(t),i=e.Kc();i.Ob();)n=i.Pb(),t.td(n)}function qFe(e,t){var n;return n=t.cd(),new Vb(n,e.e.pc(n,c(t.dd(),14)))}function Ri(e,t,n,i){var r;r=new ii,r.c=t,r.b=n,r.a=i,i.b=n.a=r,++e.b}function Lu(e,t,n){var i;return i=(pt(t,e.c.length),e.c[t]),e.c[t]=n,i}function TMt(e,t,n){return c(t==null?Kc(e.f,null,n):_0(e.g,t,n),281)}function m$(e){return e.c&&e.d?Xne(e.c)+"->"+Xne(e.d):"e_"+Xb(e)}function D_(e,t){return(Wg(e),$S(new ht(e,new Nie(t,e.a)))).sd(i4)}function jMt(){return Hr(),U(G(kde,1),_e,356,0,[Af,B1,Hc,Pc,Io])}function AMt(){return Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])}function OMt(e){return ZA(),function(){return qPt(e,this,arguments)}}function DMt(){return Date.now?Date.now():new Date().getTime()}function Kr(e){return!e.c||!e.d?!1:!!e.c.i&&e.c.i==e.d.i}function HFe(e){if(!e.c.Sb())throw V(new tc);return e.a=!0,e.c.Ub()}function GC(e){e.i=0,rC(e.b,null),rC(e.c,null),e.a=null,e.e=null,++e.g}function gie(e){Byt.call(this,e==null?rs:Ro(e),Q(e,78)?c(e,78):null)}function zFe(e){bJe(),gAe(this),this.a=new wi,Kre(this,e),Cn(this.a,e)}function VFe(){NF(this),this.b=new $e(Ii,Ii),this.a=new $e($i,$i)}function GFe(e,t){this.c=0,this.b=t,y7e.call(this,e,17493),this.a=this.c}function v$(e){sO(),!Vl&&(this.c=e,this.e=!0,this.a=new Se)}function sO(){sO=Z,Vl=!0,dnt=!1,gnt=!1,pnt=!1,bnt=!1}function bie(e,t){return Q(t,149)?rt(e.c,c(t,149).c):!1}function pie(e,t){var n;return n=0,e&&(n+=e.f.a/2),t&&(n+=t.f.a/2),n}function y$(e,t){var n;return n=c(h0(e.d,t),23),n||c(h0(e.e,t),23)}function UFe(e){this.b=e,$t.call(this,e),this.a=c(vt(this.b.a,4),126)}function WFe(e){this.b=e,Gy.call(this,e),this.a=c(vt(this.b.a,4),126)}function Ls(e){return e.t||(e.t=new rAe(e),e6(new w9e(e),0,e.t)),e.t}function kMt(){return eo(),U(G(WP,1),_e,103,0,[ih,Va,ga,Vh,Gh])}function RMt(){return Um(),U(G(QP,1),_e,249,0,[W1,Nj,kwe,JP,Rwe])}function xMt(){return fl(),U(G(Dd,1),_e,175,0,[Tt,ar,kf,_b,Od])}function LMt(){return qI(),U(G(spe,1),_e,316,0,[rpe,kW,cpe,RW,ope])}function NMt(){return s6(),U(G(Nbe,1),_e,315,0,[Lbe,QU,ZU,jP,AP])}function FMt(){return Qg(),U(G(L1e,1),_e,335,0,[sU,x1e,uU,pP,bP])}function BMt(){return PE(),U(G(Rat,1),_e,355,0,[Kv,e3,HP,qP,zP])}function $Mt(){return Zm(),U(G(Ort,1),_e,363,0,[fR,dR,gR,hR,lR])}function KMt(){return Ku(),U(G(dge,1),_e,163,0,[aj,_P,K1,EP,xw])}function k_(){k_=Z;var e,t;qx=(r_(),t=new GA,t),Hx=(e=new LN,e)}function YFe(e){var t;return e.c||(t=e.r,Q(t,88)&&(e.c=c(t,26))),e.c}function qMt(e){return e.e=3,e.d=e.Yb(),e.e!=2?(e.e=0,!0):!1}function _$(e){var t,n,i;return t=e&qs,n=e>>22&qs,i=e<0?Kh:0,Bc(t,n,i)}function HMt(e){var t,n,i,r;for(n=e,i=0,r=n.length;i0?UHe(e,t):bWe(e,-t)}function wie(e,t){return t==0||e.e==0?e:t>0?bWe(e,t):UHe(e,-t)}function rn(e){if(dn(e))return e.c=e.a,e.a.Pb();throw V(new tc)}function JFe(e){var t,n;return t=e.c.i,n=e.d.i,t.k==(Dt(),Bi)&&n.k==Bi}function E$(e){var t;return t=new c0,Mo(t,e),pe(t,(Oe(),yo),null),t}function S$(e,t,n){var i;return i=e.Yg(t),i>=0?e._g(i,n,!0):j0(e,t,n)}function mie(e,t,n,i){var r;for(r=0;rt)throw V(new ho(ese(e,t,"index")));return e}function P$(e,t,n,i){var r;return r=oe(Qt,_n,25,t,15,1),nDt(r,e,t,n,i),r}function VMt(e,t){var n;n=e.q.getHours()+(t/60|0),e.q.setMinutes(t),_6(e,n)}function GMt(e,t){return g.Math.min(m1(t.a,e.d.d.c),m1(t.b,e.d.d.c))}function u2(e,t){return fr(t)?t==null?wse(e.f,null):lqe(e.g,t):wse(e.f,t)}function Rl(e){this.c=e,this.a=new q(this.c.a),this.b=new q(this.c.b)}function uO(){this.e=new Se,this.c=new Se,this.d=new Se,this.b=new Se}function nBe(){this.g=new LQ,this.b=new LQ,this.a=new Se,this.k=new Se}function iBe(e,t,n){this.a=e,this.c=t,this.d=n,Ee(t.e,this),Ee(n.b,this)}function rBe(e,t){v7e.call(this,t.rd(),t.qd()&-6),yt(e),this.a=e,this.b=t}function oBe(e,t){y7e.call(this,t.rd(),t.qd()&-6),yt(e),this.a=e,this.b=t}function Mie(e,t){DF.call(this,t.rd(),t.qd()&-6),yt(e),this.a=e,this.b=t}function aO(e,t,n){this.a=e,this.b=t,this.c=n,Ee(e.t,this),Ee(t.i,this)}function lO(){this.b=new wi,this.a=new wi,this.b=new wi,this.a=new wi}function fO(){fO=Z,VP=new hi("org.eclipse.elk.labels.labelManager")}function cBe(){cBe=Z,P1e=new Wi("separateLayerConnections",(YO(),WG))}function cl(){cl=Z,Vw=new UZ("REGULAR",0),z1=new UZ("CRITICAL",1)}function WC(){WC=Z,rW=new HZ("STACKED",0),pj=new HZ("SEQUENCED",1)}function YC(){YC=Z,DW=new ZZ("FIXED",0),dx=new ZZ("CENTER_NODE",1)}function UMt(e,t){var n;return n=JKt(e,t),e.b=new BO(n.c.length),aKt(e,n)}function WMt(e,t,n){var i;return++e.e,--e.f,i=c(e.d[t].$c(n),133),i.dd()}function sBe(e){var t;return e.a||(t=e.r,Q(t,148)&&(e.a=c(t,148))),e.a}function Cie(e){if(e.a){if(e.e)return Cie(e.e)}else return e;return null}function YMt(e,t){return e.pt.p?-1:0}function hO(e,t){return yt(t),e.c=0,"Initial capacity must not be negative")}function lBe(){lBe=Z,Tnt=vn((al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])))}function fBe(){fBe=Z,Ant=vn((Ts(),U(G(jnt,1),_e,461,0,[jf,N1,qa])))}function hBe(){hBe=Z,Dnt=vn((Qc(),U(G(Ont,1),_e,462,0,[pl,F1,Ha])))}function dBe(){dBe=Z,wnt=vn((Fl(),U(G(Hs,1),_e,132,0,[Fhe,Su,Tw])))}function gBe(){gBe=Z,Uit=vn(($5(),U(G(Dde,1),_e,379,0,[xG,RG,LG])))}function bBe(){bBe=Z,urt=vn((y0(),U(G(Lde,1),_e,423,0,[Mv,xde,KG])))}function pBe(){pBe=Z,Krt=vn((f2(),U(G(D1e,1),_e,314,0,[H2,nj,O1e])))}function wBe(){wBe=Z,qrt=vn((DO(),U(G(R1e,1),_e,337,0,[k1e,bR,cU])))}function mBe(){mBe=Z,Grt=vn((zg(),U(G(Vrt,1),_e,450,0,[aU,d4,jv])))}function vBe(){vBe=Z,Nrt=vn((m0(),U(G(XG,1),_e,361,0,[U0,$1,G0])))}function yBe(){yBe=Z,eot=vn((Oh(),U(G(Zrt,1),_e,303,0,[rj,Ov,z2])))}function _Be(){_Be=Z,Qrt=vn((J_(),U(G(vU,1),_e,292,0,[wU,mU,ij])))}function EBe(){EBe=Z,mst=vn((X5(),U(G(xbe,1),_e,378,0,[YU,Rbe,VR])))}function SBe(){SBe=Z,Cst=vn((VO(),U(G(Wbe,1),_e,375,0,[Gbe,iW,Ube])))}function PBe(){PBe=Z,Est=vn((kh(),U(G(zbe,1),_e,339,0,[H1,Hbe,eW])))}function MBe(){MBe=Z,Mst=vn((Zr(),U(G(Pst,1),_e,452,0,[OP,Os,Fc])))}function CBe(){CBe=Z,Ast=vn((XO(),U(G(t0e,1),_e,377,0,[sW,M4,zw])))}function IBe(){IBe=Z,Tst=vn((rE(),U(G(Jbe,1),_e,336,0,[oW,Xbe,DP])))}function TBe(){TBe=Z,jst=vn((HO(),U(G(e0e,1),_e,338,0,[Zbe,cW,Qbe])))}function jBe(){jBe=Z,Hst=vn((w0(),U(G(qst,1),_e,454,0,[wj,kP,YR])))}function ABe(){ABe=Z,Xut=vn((s7(),U(G(Yut,1),_e,442,0,[EW,yW,_W])))}function OBe(){OBe=Z,Qut=vn((EI(),U(G(M0e,1),_e,380,0,[sx,S0e,P0e])))}function DBe(){DBe=Z,bat=vn((c7(),U(G(H0e,1),_e,381,0,[q0e,TW,K0e])))}function kBe(){kBe=Z,gat=vn((zO(),U(G(B0e,1),_e,293,0,[IW,F0e,N0e])))}function RBe(){RBe=Z,Lat=vn((TI(),U(G(jW,1),_e,437,0,[lx,fx,hx])))}function xBe(){xBe=Z,Blt=vn((Rh(),U(G(Dwe,1),_e,334,0,[Mx,kd,XP])))}function LBe(){LBe=Z,xlt=vn((xl(),U(G(ywe,1),_e,272,0,[A4,Ww,O4])))}function nCt(){return wr(),U(G(xwe,1),_e,98,0,[Y1,Xl,k4,Mb,ch,Ic])}function Fg(e,t){return!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),xK(e.o,t)}function iCt(e){return!e.g&&(e.g=new kA),!e.g.d&&(e.g.d=new tAe(e)),e.g.d}function rCt(e){return!e.g&&(e.g=new kA),!e.g.a&&(e.g.a=new nAe(e)),e.g.a}function oCt(e){return!e.g&&(e.g=new kA),!e.g.b&&(e.g.b=new eAe(e)),e.g.b}function XC(e){return!e.g&&(e.g=new kA),!e.g.c&&(e.g.c=new iAe(e)),e.g.c}function cCt(e,t,n){var i,r;for(r=new X_(t,e),i=0;in||t=0?e._g(n,!0,!0):j0(e,t,!0)}function SCt(e,t){return zi(ge(Te(B(e,(ye(),J0)))),ge(Te(B(t,J0))))}function HBe(){HBe=Z,Vut=M0(M0(b9(new tr,(dE(),LP)),(d6(),ex)),lW)}function PCt(e,t,n){var i;return i=kqe(e,t,n),e.b=new BO(i.c.length),qse(e,i)}function MCt(e){if(e.b<=0)throw V(new tc);return--e.b,e.a-=e.c.c,Ce(e.a)}function CCt(e){var t;if(!e.a)throw V(new Uxe);return t=e.a,e.a=yi(e.a),t}function ICt(e){for(;!e.a;)if(!Oke(e.c,new MIe(e)))return!1;return!0}function l2(e){var t;return nn(e),Q(e,198)?(t=c(e,198),t):new zCe(e)}function TCt(e){bO(),c(e.We((kn(),Uw)),174).Fc((js(),Fj)),e.Ye(ZW,null)}function bO(){bO=Z,slt=new O5e,alt=new D5e,ult=hjt((kn(),ZW),slt,G1,alt)}function pO(){pO=Z,_0e=new QZ("LEAF_NUMBER",0),SW=new QZ("NODE_SIZE",1)}function jCt(e,t,n){e.a=t,e.c=n,e.b.a.$b(),na(e.d),e.e.a.c=oe(xt,xe,1,0,5,1)}function O$(e){e.a=oe(Qt,_n,25,e.b+1,15,1),e.c=oe(Qt,_n,25,e.b,15,1),e.d=0}function ACt(e,t){e.a.ue(t.d,e.b)>0&&(Ee(e.c,new Kte(t.c,t.d,e.d)),e.b=t.d)}function Lie(e,t){if(e.g==null||t>=e.i)throw V(new kF(t,e.i));return e.g[t]}function zBe(e,t,n){if(tE(e,n),n!=null&&!e.wj(n))throw V(new kN);return n}function VBe(e){var t;if(e.Ek())for(t=e.i-1;t>=0;--t)ee(e,t);return sie(e)}function OCt(e){var t,n;if(!e.b)return null;for(n=e.b;t=n.a[0];)n=t;return n}function DCt(e,t){var n,i;return dFe(t),n=(i=e.slice(0,t),Fie(i,e)),n.length=t,n}function L_(e,t,n,i){var r;i=(xm(),i||Ihe),r=e.slice(t,n),tse(r,e,t,n,-t,i)}function Nu(e,t,n,i,r){return t<0?j0(e,n,i):c(n,66).Nj().Pj(e,e.yh(),t,i,r)}function kCt(e){return Q(e,172)?""+c(e,172).a:e==null?null:Ro(e)}function RCt(e){return Q(e,172)?""+c(e,172).a:e==null?null:Ro(e)}function GBe(e,t){if(t.a)throw V(new No(GJe));Yi(e.a,t),t.a=e,!e.j&&(e.j=t)}function Nie(e,t){DF.call(this,t.rd(),t.qd()&-16449),yt(e),this.a=e,this.c=t}function UBe(e,t){var n,i;return i=t/e.c.Hd().gc()|0,n=t%e.c.Hd().gc(),a2(e,i,n)}function Ts(){Ts=Z,jf=new cF(j2,0),N1=new cF(FE,1),qa=new cF(A2,2)}function wO(){wO=Z,pG=new v9("All",0),Rhe=new q7e,xhe=new eDe,Lhe=new H7e}function WBe(){WBe=Z,fnt=vn((wO(),U(G(Ak,1),_e,297,0,[pG,Rhe,xhe,Lhe])))}function YBe(){YBe=Z,nrt=vn((Q_(),U(G(trt,1),_e,405,0,[V0,Ow,Aw,Pv])))}function XBe(){XBe=Z,iit=vn((v0(),U(G(nit,1),_e,406,0,[zT,HT,PG,MG])))}function JBe(){JBe=Z,oit=vn((m2(),U(G(rit,1),_e,323,0,[GT,VT,UT,WT])))}function QBe(){QBe=Z,uit=vn((c6(),U(G(sit,1),_e,394,0,[YT,xk,Lk,XT])))}function ZBe(){ZBe=Z,Cut=vn((dE(),U(G(c0e,1),_e,393,0,[ZR,LP,vj,NP])))}function e$e(){e$e=Z,_rt=vn((YO(),U(G(yrt,1),_e,360,0,[WG,uR,aR,tj])))}function t$e(){t$e=Z,dat=vn((C7(),U(G(L0e,1),_e,340,0,[CW,R0e,x0e,k0e])))}function n$e(){n$e=Z,Art=vn((Nl(),U(G(jrt,1),_e,411,0,[q2,u4,a4,YG])))}function i$e(){i$e=Z,vst=vn((rw(),U(G(JU,1),_e,197,0,[GR,XU,Bv,Fv])))}function r$e(){r$e=Z,nft=vn((ru(),U(G(tft,1),_e,396,0,[Tu,Hwe,qwe,zwe])))}function o$e(){o$e=Z,Klt=vn((mu(),U(G($lt,1),_e,285,0,[Lj,rh,U1,xj])))}function c$e(){c$e=Z,Llt=vn((Lh(),U(G(iY,1),_e,218,0,[nY,Rj,D4,o3])))}function s$e(){s$e=Z,Zlt=vn((l7(),U(G(Kwe,1),_e,311,0,[cY,Fwe,$we,Bwe])))}function u$e(){u$e=Z,Jlt=vn((ou(),U(G(tM,1),_e,374,0,[$j,Cb,Bj,Yw])))}function a$e(){a$e=Z,nD(),Mme=Ii,rht=$i,Cme=new KM(Ii),oht=new KM($i)}function eI(){eI=Z,$1e=new $Z(qh,0),mR=new $Z("IMPROVE_STRAIGHTNESS",1)}function xCt(e,t){return m_(),Ee(e,new yr(t,Ce(t.e.c.length+t.g.c.length)))}function LCt(e,t){return m_(),Ee(e,new yr(t,Ce(t.e.c.length+t.g.c.length)))}function Fie(e,t){return oI(t)!=10&&U(Fs(t),t.hm,t.__elementTypeId$,oI(t),e),e}function Jc(e,t){var n;return n=Do(e,t,0),n==-1?!1:(ad(e,n),!0)}function l$e(e,t){var n;return n=c(u2(e.e,t),387),n?(zte(n),n.e):null}function N_(e){var t;return Oo(e)&&(t=0-e,!isNaN(t))?t:y1(Z_(e))}function Do(e,t,n){for(;n=0?_7(e,n,!0,!0):j0(e,t,!0)}function Hie(e,t){HS();var n,i;return n=o2(e),i=o2(t),!!n&&!!i&&!Cze(n.k,i.k)}function BCt(e,t){es(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function $Ct(e,t){ts(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function KCt(e,t){p0(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function qCt(e,t){b0(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function b$e(e){(this.q?this.q:(st(),st(),th)).Ac(e.q?e.q:(st(),st(),th))}function HCt(e,t){return Q(t,99)&&(c(t,18).Bb&Vr)!=0?new RF(t,e):new X_(t,e)}function zCt(e,t){return Q(t,99)&&(c(t,18).Bb&Vr)!=0?new RF(t,e):new X_(t,e)}function p$e(e,t){ade=new AA,cit=t,aP=e,c(aP.b,65),jie(aP,ade,null),aXe(aP)}function L$(e,t,n){var i;return i=e.g[t],d5(e,t,e.oi(t,n)),e.gi(t,n,i),e.ci(),i}function _O(e,t){var n;return n=e.Xc(t),n>=0?(e.$c(n),!0):!1}function N$(e){var t;return e.d!=e.r&&(t=ra(e),e.e=!!t&&t.Cj()==Zet,e.d=t),e.e}function F$(e,t){var n;for(nn(e),nn(t),n=!1;t.Ob();)n=n|e.Fc(t.Pb());return n}function h0(e,t){var n;return n=c(Bt(e.e,t),387),n?(uDe(e,n),n.e):null}function w$e(e){var t,n;return t=e/60|0,n=e%60,n==0?""+t:""+t+":"+(""+n)}function $o(e,t){var n,i;return Wg(e),i=new Mie(t,e.a),n=new Rke(i),new ht(e,n)}function Yp(e,t){var n=e.a[t],i=(iK(),fG)[typeof n];return i?i(n):Ure(typeof n)}function VCt(e){switch(e.g){case 0:return Fn;case 1:return-1;default:return 0}}function GCt(e){return lce(e,(F_(),uhe))<0?-u3t(Z_(e)):e.l+e.m*T2+e.h*nb}function oI(e){return e.__elementTypeCategory$==null?10:e.__elementTypeCategory$}function B$(e){var t;return t=e.b.c.length==0?null:Ne(e.b,0),t!=null&&Y$(e,0),t}function m$e(e,t){for(;t[0]=0;)++t[0]}function cI(e,t){this.e=t,this.a=fqe(e),this.a<54?this.f=l0(e):this.c=DI(e)}function v$e(e,t,n,i){Ln(),Lb.call(this,26),this.c=e,this.a=t,this.d=n,this.b=i}function Vf(e,t,n){var i,r;for(i=10,r=0;re.a[i]&&(i=n);return i}function QCt(e,t){var n;return n=E0(e.e.c,t.e.c),n==0?zi(e.e.d,t.e.d):n}function Fm(e,t){return t.e==0||e.e==0?t4:(yE(),$q(e,t))}function ZCt(e,t){if(!e)throw V(new St(nNt("Enum constant undefined: %s",t)))}function K5(){K5=Z,ort=new o3e,crt=new i3e,irt=new l3e,rrt=new f3e,srt=new h3e}function EO(){EO=Z,Hhe=new RZ("BY_SIZE",0),yG=new RZ("BY_SIZE_AND_SHAPE",1)}function SO(){SO=Z,OG=new xZ("EADES",0),Bk=new xZ("FRUCHTERMAN_REINGOLD",1)}function uI(){uI=Z,pR=new BZ("READING_DIRECTION",0),N1e=new BZ("ROTATION",1)}function _$e(){_$e=Z,Hrt=vn((Qg(),U(G(L1e,1),_e,335,0,[sU,x1e,uU,pP,bP])))}function E$e(){E$e=Z,yst=vn((s6(),U(G(Nbe,1),_e,315,0,[Lbe,QU,ZU,jP,AP])))}function S$e(){S$e=Z,Drt=vn((Zm(),U(G(Ort,1),_e,363,0,[fR,dR,gR,hR,lR])))}function P$e(){P$e=Z,not=vn((Ku(),U(G(dge,1),_e,163,0,[aj,_P,K1,EP,xw])))}function M$e(){M$e=Z,Kat=vn((qI(),U(G(spe,1),_e,316,0,[rpe,kW,cpe,RW,ope])))}function C$e(){C$e=Z,llt=vn((fl(),U(G(Dd,1),_e,175,0,[Tt,ar,kf,_b,Od])))}function I$e(){I$e=Z,xat=vn((PE(),U(G(Rat,1),_e,355,0,[Kv,e3,HP,qP,zP])))}function T$e(){T$e=Z,Jit=vn((Hr(),U(G(kde,1),_e,356,0,[Af,B1,Hc,Pc,Io])))}function j$e(){j$e=Z,Rlt=vn((eo(),U(G(WP,1),_e,103,0,[ih,Va,ga,Vh,Gh])))}function A$e(){A$e=Z,Hlt=vn((Um(),U(G(QP,1),_e,249,0,[W1,Nj,kwe,JP,Rwe])))}function O$e(){O$e=Z,Glt=vn((Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])))}function $$(e,t){var n;return n=c(Bt(e.a,t),134),n||(n=new bN,Kn(e.a,t,n)),n}function D$e(e){var t;return t=c(B(e,(ye(),W0)),305),t?t.a==e:!1}function k$e(e){var t;return t=c(B(e,(ye(),W0)),305),t?t.i==e:!1}function R$e(e,t){return yt(t),lne(e),e.d.Ob()?(t.td(e.d.Pb()),!0):!1}function PO(e){return uc(e,Fn)>0?Fn:uc(e,Ar)<0?Ar:tn(e)}function Xp(e){return e<3?(pu(e,TJe),e+1):e=0&&t=-.01&&e.a<=ql&&(e.a=0),e.b>=-.01&&e.b<=ql&&(e.b=0),e}function L$e(e,t){return t==(oB(),oB(),unt)?e.toLocaleLowerCase():e.toLowerCase()}function Vie(e){return((e.i&2)!=0?"interface ":(e.i&1)!=0?"":"class ")+(Sh(e),e.o)}function mo(e){var t,n;n=(t=new NN,t),on((!e.q&&(e.q=new Me(ya,e,11,10)),e.q),n)}function eIt(e,t){var n;return n=t>0?t-1:t,D9e(gyt(sKe(Hte(new Z3,n),e.n),e.j),e.k)}function tIt(e,t,n,i){var r;e.j=-1,gse(e,Wce(e,t,n),(Wr(),r=c(t,66).Mj(),r.Ok(i)))}function N$e(e){this.g=e,this.f=new Se,this.a=g.Math.min(this.g.c.c,this.g.d.c)}function F$e(e){this.b=new Se,this.a=new Se,this.c=new Se,this.d=new Se,this.e=e}function B$e(e,t){this.a=new en,this.e=new en,this.b=(X5(),VR),this.c=e,this.b=t}function $$e(e,t,n){i8.call(this),Gie(this),this.a=e,this.c=n,this.b=t.d,this.f=t.e}function K$e(e){this.d=e,this.c=e.c.vc().Kc(),this.b=null,this.a=null,this.e=(YA(),sG)}function d0(e){if(e<0)throw V(new St("Illegal Capacity: "+e));this.g=this.ri(e)}function nIt(e,t){if(0>e||e>t)throw V(new oZ("fromIndex: 0, toIndex: "+e+Uue+t))}function iIt(e){var t;if(e.a==e.b.a)throw V(new tc);return t=e.a,e.c=t,e.a=e.a.e,t}function MO(e){var t;Rp(!!e.c),t=e.c.a,Fu(e.d,e.c),e.b==e.c?e.b=t:--e.a,e.c=null}function CO(e,t){var n;return Wg(e),n=new aLe(e,e.a.rd(),e.a.qd()|4,t),new ht(e,n)}function rIt(e,t){var n,i;return n=c(tw(e.d,t),14),n?(i=t,e.e.pc(i,n)):null}function IO(e,t){var n,i;for(i=e.Kc();i.Ob();)n=c(i.Pb(),70),pe(n,(ye(),W2),t)}function oIt(e){var t;return t=ge(Te(B(e,(Oe(),Id)))),t<0&&(t=0,pe(e,Id,t)),t}function cIt(e,t,n){var i;i=g.Math.max(0,e.b/2-.5),a6(n,i,1),Ee(t,new dOe(n,i))}function sIt(e,t,n){var i;return i=e.a.e[c(t.a,10).p]-e.a.e[c(n.a,10).p],xi(DC(i))}function q$e(e,t,n,i,r,o){var u;u=E$(i),Rr(u,r),br(u,o),it(e.a,i,new c8(u,t,n.f))}function H$e(e,t){var n;if(n=QI(e.Tg(),t),!n)throw V(new St(x1+t+PV));return n}function Jp(e,t){var n;for(n=e;yi(n);)if(n=yi(n),n==t)return!0;return!1}function uIt(e,t){var n,i,r;for(i=t.a.cd(),n=c(t.a.dd(),14).gc(),r=0;r0&&(e.a/=t,e.b/=t),e}function bu(e){var t;return e.w?e.w:(t=wPt(e),t&&!t.kh()&&(e.w=t),t)}function pIt(e){var t;return e==null?null:(t=c(e,190),wDt(t,t.length))}function ee(e,t){if(e.g==null||t>=e.i)throw V(new kF(t,e.i));return e.li(t,e.g[t])}function wIt(e){var t,n;for(t=e.a.d.j,n=e.c.d.j;t!=n;)Fa(e.b,t),t=r7(t);Fa(e.b,t)}function mIt(e){var t;for(t=0;t=14&&t<=16))),e}function U$e(e,t,n){var i=function(){return e.apply(i,arguments)};return t.apply(i,n),i}function W$e(e,t,n){var i,r;i=t;do r=ge(e.p[i.p])+n,e.p[i.p]=r,i=e.a[i.p];while(i!=t)}function B_(e,t){var n,i;i=e.a,n=Qjt(e,t,null),i!=t&&!e.e&&(n=AE(e,t,n)),n&&n.Fi()}function Uie(e,t){return Il(),Na(A1),g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)}function Wie(e,t){return Il(),Na(A1),g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)}function _It(e,t){return I1(),Uc(e.b.c.length-e.e.c.length,t.b.c.length-t.e.c.length)}function Bm(e,t){return vyt(z5(e,t,tn(jr(Xf,qf(tn(jr(t==null?0:fi(t),Jf)),15)))))}function Y$e(){Y$e=Z,hrt=vn((Dt(),U(G(HG,1),_e,267,0,[Ui,ur,Bi,Mc,cu,Gl])))}function X$e(){X$e=Z,vlt=vn((sw(),U(G(zW,1),_e,291,0,[HW,jj,Tj,qW,Cj,Ij])))}function J$e(){J$e=Z,dlt=vn((Gf(),U(G(Ape,1),_e,248,0,[$W,Pj,Mj,mx,px,wx])))}function Q$e(){Q$e=Z,Brt=vn((y2(),U(G(h4,1),_e,227,0,[f4,gP,l4,Dw,Tv,Iv])))}function Z$e(){Z$e=Z,Xrt=vn((mE(),U(G(Q1e,1),_e,275,0,[wP,W1e,J1e,X1e,Y1e,U1e])))}function eKe(){eKe=Z,Yrt=vn(($I(),U(G(G1e,1),_e,274,0,[vR,H1e,V1e,q1e,z1e,bU])))}function tKe(){tKe=Z,wst=vn((R7(),U(G(kbe,1),_e,313,0,[WU,Obe,UU,Abe,Dbe,zR])))}function nKe(){nKe=Z,Urt=vn((F7(),U(G(B1e,1),_e,276,0,[fU,lU,dU,hU,gU,wR])))}function iKe(){iKe=Z,Tut=vn((d6(),U(G(Iut,1),_e,327,0,[ex,lW,hW,fW,dW,aW])))}function rKe(){rKe=Z,Vlt=vn((js(),U(G(Cx,1),_e,273,0,[X1,Wh,Fj,eM,ZP,c3])))}function oKe(){oKe=Z,Nlt=vn((L7(),U(G(Cwe,1),_e,312,0,[rY,Swe,Mwe,_we,Pwe,Ewe])))}function EIt(){return fw(),U(G(ro,1),_e,93,0,[Ga,Uh,Ua,Ya,oh,pa,Mu,Wa,ba])}function jO(e,t){var n;n=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,0,n,e.a))}function AO(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,1,n,e.b))}function $_(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,3,n,e.b))}function b0(e,t){var n;n=e.f,e.f=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,3,n,e.f))}function p0(e,t){var n;n=e.g,e.g=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,4,n,e.g))}function es(e,t){var n;n=e.i,e.i=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,5,n,e.i))}function ts(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,6,n,e.j))}function K_(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,1,n,e.j))}function q_(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,4,n,e.c))}function H_(e,t){var n;n=e.k,e.k=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,2,n,e.k))}function q$(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new b$(e,2,n,e.d))}function hd(e,t){var n;n=e.s,e.s=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new b$(e,4,n,e.s))}function Zp(e,t){var n;n=e.t,e.t=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new b$(e,5,n,e.t))}function z_(e,t){var n;n=e.F,e.F=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,5,n,t))}function aI(e,t){var n;return n=c(Bt((p9(),Fx),e),55),n?n.xj(t):oe(xt,xe,1,t,5,1)}function Dh(e,t){var n,i;return n=t in e.a,n&&(i=Ch(e,t).he(),i)?i.a:null}function SIt(e,t){var n,i,r;return n=(i=(Hb(),r=new KJ,r),t&&Lse(i,t),i),ire(n,e),n}function cKe(e,t,n){if(tE(e,n),!e.Bk()&&n!=null&&!e.wj(n))throw V(new kN);return n}function sKe(e,t){return e.n=t,e.n?(e.f=new Se,e.e=new Se):(e.f=null,e.e=null),e}function hn(e,t,n,i,r,o){var u;return u=RB(e,t),aKe(n,u),u.i=r?8:0,u.f=i,u.e=r,u.g=o,u}function Yie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=1,this.c=e,this.a=n}function Xie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=2,this.c=e,this.a=n}function Jie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=6,this.c=e,this.a=n}function Qie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=7,this.c=e,this.a=n}function Zie(e,t,n,i,r){this.d=t,this.j=i,this.e=r,this.o=-1,this.p=4,this.c=e,this.a=n}function uKe(e,t){var n,i,r,o;for(i=t,r=0,o=i.length;r=0),S9t(e.d,e.c)<0&&(e.a=e.a-1&e.d.a.length-1,e.b=e.d.c),e.c=-1}function ere(e){return e.a<54?e.f<0?-1:e.f>0?1:0:(!e.c&&(e.c=SI(e.f)),e.c).e}function Na(e){if(!(e>=0))throw V(new St("tolerance ("+e+") must be >= 0"));return e}function V_(){return FW||(FW=new JWe,zm(FW,U(G(Sv,1),xe,130,0,[new VJ]))),FW}function Zr(){Zr=Z,OP=new mF(R6,0),Os=new mF("INPUT",1),Fc=new mF("OUTPUT",2)}function DO(){DO=Z,k1e=new hF("ARD",0),bR=new hF("MSD",1),cU=new hF("MANUAL",2)}function w0(){w0=Z,wj=new SF("BARYCENTER",0),kP=new SF(xQe,1),YR=new SF(LQe,2)}function lI(e,t){var n;if(n=e.gc(),t<0||t>n)throw V(new Fp(t,n));return new mte(e,t)}function hKe(e,t){var n;return Q(t,42)?e.c.Mc(t):(n=xK(e,t),d7(e,t),n)}function uo(e,t,n){return Ug(e,t),kc(e,n),hd(e,0),Zp(e,1),pd(e,!0),bd(e,!0),e}function pu(e,t){if(e<0)throw V(new St(t+" cannot be negative but was: "+e));return e}function dKe(e,t){var n,i;for(n=0,i=e.gc();n0?c(Ne(n.a,i-1),10):null}function H5(e,t){var n;n=e.k,e.k=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,2,n,e.k))}function RO(e,t){var n;n=e.f,e.f=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,8,n,e.f))}function xO(e,t){var n;n=e.i,e.i=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,7,n,e.i))}function ire(e,t){var n;n=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,8,n,e.a))}function rre(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,0,n,e.b))}function ore(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,0,n,e.b))}function cre(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,1,n,e.c))}function sre(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,1,n,e.c))}function z$(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,4,n,e.c))}function ure(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,1,n,e.d))}function V$(e,t){var n;n=e.D,e.D=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,2,n,e.D))}function G$(e,t){e.r>0&&e.c0&&e.g!=0&&G$(e.i,t/e.r*e.i.d))}function DIt(e,t,n){var i;e.b=t,e.a=n,i=(e.a&512)==512?new n9e:new zJ,e.c=WNt(i,e.b,e.a)}function EKe(e,t){return Bh(e.e,t)?(Wr(),N$(t)?new d8(t,e):new pC(t,e)):new g7e(t,e)}function LO(e,t){return myt(V5(e.a,t,tn(jr(Xf,qf(tn(jr(t==null?0:fi(t),Jf)),15)))))}function kIt(e,t,n){return Wp(e,new vIe(t),new lN,new yIe(n),U(G(Hs,1),_e,132,0,[]))}function RIt(e){var t,n;return 0>e?new yZ:(t=e+1,n=new GFe(t,e),new Zee(null,n))}function xIt(e,t){st();var n;return n=new Fy(1),fr(e)?bo(n,e,t):Kc(n.f,e,t),new AN(n)}function LIt(e,t){var n,i;return n=e.o+e.p,i=t.o+t.p,nt?(t<<=1,t>0?t:j6):t}function U$(e){switch(Aee(e.e!=3),e.e){case 2:return!1;case 0:return!0}return qMt(e)}function PKe(e,t){var n;return Q(t,8)?(n=c(t,8),e.a==n.a&&e.b==n.b):!1}function W$(e,t,n){var i,r,o;return o=t>>5,r=t&31,i=Xi($p(e.n[n][o],tn(Ph(r,1))),3),i}function FIt(e,t){var n,i;for(i=t.vc().Kc();i.Ob();)n=c(i.Pb(),42),O7(e,n.cd(),n.dd())}function BIt(e,t){var n;n=new AA,c(t.b,65),c(t.b,65),c(t.b,65),Zc(t.a,new jte(e,n,t))}function are(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,21,n,e.b))}function lre(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,11,n,e.d))}function NO(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,13,n,e.j))}function MKe(e,t,n){var i,r,o;for(o=e.a.length-1,r=e.b,i=0;i>>31;i!=0&&(e[n]=i)}function YIt(e,t){st();var n,i;for(i=new Se,n=0;n0&&(this.g=this.ri(this.i+(this.i/8|0)+1),e.Qc(this.g))}function Ci(e,t){a8.call(this,Nft,e,t),this.b=this,this.a=qc(e.Tg(),at(this.e.Tg(),this.c))}function G5(e,t){var n,i;for(yt(t),i=t.vc().Kc();i.Ob();)n=c(i.Pb(),42),e.zc(n.cd(),n.dd())}function oTt(e,t,n){var i;for(i=n.Kc();i.Ob();)if(!rO(e,t,i.Pb()))return!1;return!0}function cTt(e,t,n,i,r){var o;return n&&(o=di(t.Tg(),e.c),r=n.gh(t,-1-(o==-1?i:o),null,r)),r}function sTt(e,t,n,i,r){var o;return n&&(o=di(t.Tg(),e.c),r=n.ih(t,-1-(o==-1?i:o),null,r)),r}function zKe(e){var t;if(e.b==-2){if(e.e==0)t=-1;else for(t=0;e.a[t]==0;t++);e.b=t}return e.b}function VKe(e){switch(e.g){case 2:return Ie(),Mt;case 4:return Ie(),jt;default:return e}}function GKe(e){switch(e.g){case 1:return Ie(),Yt;case 3:return Ie(),_t;default:return e}}function uTt(e){var t,n,i;return e.j==(Ie(),_t)&&(t=_Ue(e),n=bs(t,jt),i=bs(t,Mt),i||i&&n)}function aTt(e){var t,n;return t=c(e.e&&e.e(),9),n=c(_ne(t,t.length),9),new ku(t,n,t.length)}function lTt(e,t){Wt(t,RQe,1),poe(Ayt(new BA((qS(),new qB(e,!1,!1,new jJ))))),qt(t)}function fI(e,t){return Pt(),fr(e)?Sie(e,ln(t)):kp(e)?SB(e,Te(t)):Dp(e)?gSt(e,Fe(t)):e.wd(t)}function pre(e,t){t.q=e,e.d=g.Math.max(e.d,t.r),e.b+=t.d+(e.a.c.length==0?0:e.c),Ee(e.a,t)}function U_(e,t){var n,i,r,o;return r=e.c,n=e.c+e.b,o=e.d,i=e.d+e.a,t.a>r&&t.ao&&t.b1||e.Ob())return++e.a,e.g=0,t=e.i,e.Ob(),t;throw V(new tc)}function ETt(e){U7e();var t;return iOe(uW,e)||(t=new ASe,t.a=e,cte(uW,e,t)),c(so(uW,e),635)}function ia(e){var t,n,i,r;return r=e,i=0,r<0&&(r+=nb,i=Kh),n=xi(r/T2),t=xi(r-n*T2),Bc(t,n,i)}function hI(e){var t,n,i;for(i=0,n=new By(e.a);n.a>22),r=e.h+t.h+(i>>22),Bc(n&qs,i&qs,r&Kh)}function hqe(e,t){var n,i,r;return n=e.l-t.l,i=e.m-t.m+(n>>22),r=e.h-t.h+(i>>22),Bc(n&qs,i&qs,r&Kh)}function pI(e){var t;return e<128?(t=(IRe(),hhe)[e],!t&&(t=hhe[e]=new cQ(e)),t):new cQ(e)}function gi(e){var t;return Q(e,78)?e:(t=e&&e.__java$exception,t||(t=new tHe(e),mAe(t)),t)}function wI(e){if(Q(e,186))return c(e,118);if(e)return null;throw V(new Ly(set))}function dqe(e,t){if(t==null)return!1;for(;e.a!=e.b;)if($n(t,t7(e)))return!0;return!1}function Ere(e){return e.a.Ob()?!0:e.a!=e.d?!1:(e.a=new nie(e.e.f),e.a.Ob())}function Hi(e,t){var n,i;return n=t.Pc(),i=n.length,i==0?!1:(xte(e.c,e.c.length,n),!0)}function NTt(e,t,n){var i,r;for(r=t.vc().Kc();r.Ob();)i=c(r.Pb(),42),e.yc(i.cd(),i.dd(),n);return e}function gqe(e,t){var n,i;for(i=new q(e.b);i.a=0,"Negative initial capacity"),u8(t>=0,"Non-positive load factor"),Is(this)}function rK(e,t,n){return e>=128?!1:e<64?s5(Xi(Ph(1,e),n),0):s5(Xi(Ph(1,e-64),t),0)}function GTt(e,t){return!e||!t||e==t?!1:E0(e.b.c,t.b.c+t.b.b)<0&&E0(t.b.c,e.b.c+e.b.b)<0}function Cqe(e){var t,n,i;return n=e.n,i=e.o,t=e.d,new Ru(n.a-t.b,n.b-t.d,i.a+(t.b+t.c),i.b+(t.d+t.a))}function UTt(e){var t,n,i,r;for(n=e.a,i=0,r=n.length;ii)throw V(new Fp(t,i));return e.hi()&&(n=HLe(e,n)),e.Vh(t,n)}function yI(e,t,n){return n==null?(!e.q&&(e.q=new en),u2(e.q,t)):(!e.q&&(e.q=new en),Kn(e.q,t,n)),e}function pe(e,t,n){return n==null?(!e.q&&(e.q=new en),u2(e.q,t)):(!e.q&&(e.q=new en),Kn(e.q,t,n)),e}function Iqe(e){var t,n;return n=new uO,Mo(n,e),pe(n,(v1(),K2),e),t=new en,JBt(e,n,t),Sqt(e,n,t),n}function XTt(e){ov();var t,n,i;for(n=oe(ir,we,8,2,0,1),i=0,t=0;t<2;t++)i+=.5,n[t]=O8t(i,e);return n}function Tqe(e,t){var n,i,r,o;for(n=!1,i=e.a[t].length,o=0;o>=1);return t}function Aqe(e){var t,n;return n=WI(e.h),n==32?(t=WI(e.m),t==32?WI(e.l)+32:t+20-10):n-12}function Y5(e){var t;return t=e.a[e.b],t==null?null:(vi(e.a,e.b,null),e.b=e.b+1&e.a.length-1,t)}function Oqe(e){var t,n;return t=e.t-e.k[e.o.p]*e.d+e.j[e.o.p]>e.f,n=e.u+e.e[e.o.p]*e.d>e.f*e.s*e.d,t||n}function JO(e,t,n){var i,r;return i=new T$(t,n),r=new Er,e.b=EWe(e,e.b,i,r),r.b||++e.c,e.b.b=!1,r.d}function Dqe(e,t,n){var i,r,o,u;for(u=Q5(t,n),o=0,r=u.Kc();r.Ob();)i=c(r.Pb(),11),Kn(e.c,i,Ce(o++))}function _1(e){var t,n;for(n=new q(e.a.b);n.an&&(n=e[t]);return n}function kqe(e,t,n){var i;return i=new Se,Bse(e,t,i,(Ie(),jt),!0,!1),Bse(e,n,i,Mt,!1,!1),i}function cK(e,t,n){var i,r,o,u;return o=null,u=t,r=f0(u,"labels"),i=new ZOe(e,n),o=(bxt(i.a,i.b,r),r),o}function QTt(e,t,n,i){var r;return r=Cse(e,t,n,i),!r&&(r=Zjt(e,n,i),r&&!uv(e,t,r))?null:r}function ZTt(e,t,n,i){var r;return r=Ise(e,t,n,i),!r&&(r=SK(e,n,i),r&&!uv(e,t,r))?null:r}function Rqe(e,t){var n;for(n=0;n1||t>=0&&e.b<3)}function _I(e){var t,n,i;for(t=new ds,i=Mn(e,0);i.b!=i.d.c;)n=c(Pn(i),8),b_(t,0,new go(n));return t}function Vg(e){var t,n;for(n=new q(e.a.b);n.ai?1:0}function Kre(e,t){return rWe(e,t)?(it(e.b,c(B(t,(ye(),kw)),21),t),Cn(e.a,t),!0):!1}function fjt(e){var t,n;t=c(B(e,(ye(),As)),10),t&&(n=t.c,Jc(n.a,t),n.a.c.length==0&&Jc(Nr(t).b,n))}function $qe(e){return Vl?oe(hnt,qJe,572,0,0,1):c(Bl(e.a,oe(hnt,qJe,572,e.a.c.length,0,1)),842)}function hjt(e,t,n,i){return k8(),new qN(U(G(fb,1),gD,42,0,[(ZK(e,t),new Vb(e,t)),(ZK(n,i),new Vb(n,i))]))}function Hm(e,t,n){var i,r;return r=(i=new NN,i),uo(r,t,n),on((!e.q&&(e.q=new Me(ya,e,11,10)),e.q),r),r}function lK(e){var t,n,i,r;for(r=Fyt(hft,e),n=r.length,i=oe(Re,we,2,n,6,1),t=0;t=e.b.c.length||(qre(e,2*t+1),n=2*t+2,n=0&&e[i]===t[i];i--);return i<0?0:iF(Xi(e[i],no),Xi(t[i],no))?-1:1}function djt(e,t){var n,i;for(i=Mn(e,0);i.b!=i.d.c;)n=c(Pn(i),214),n.e.length>0&&(t.td(n),n.i&&sAt(n))}function hK(e,t){var n,i;return i=c(vt(e.a,4),126),n=oe(hY,KV,415,t,0,1),i!=null&&bc(i,0,n,0,i.length),n}function qqe(e,t){var n;return n=new Hq((e.f&256)!=0,e.i,e.a,e.d,(e.f&16)!=0,e.j,e.g,t),e.e!=null||(n.c=e),n}function gjt(e,t){var n,i;for(i=e.Zb().Cc().Kc();i.Ob();)if(n=c(i.Pb(),14),n.Hc(t))return!0;return!1}function dK(e,t,n,i,r){var o,u;for(u=n;u<=r;u++)for(o=t;o<=i;o++)if(Ym(e,o,u))return!0;return!1}function Hqe(e,t,n){var i,r,o,u;for(yt(n),u=!1,o=e.Zc(t),r=n.Kc();r.Ob();)i=r.Pb(),o.Rb(i),u=!0;return u}function bjt(e,t){var n;return e===t?!0:Q(t,83)?(n=c(t,83),zce(e0(e),n.vc())):!1}function zqe(e,t,n){var i,r;for(r=n.Kc();r.Ob();)if(i=c(r.Pb(),42),e.re(t,i.dd()))return!0;return!1}function Vqe(e,t,n){return e.d[t.p][n.p]||(f8t(e,t,n),e.d[t.p][n.p]=!0,e.d[n.p][t.p]=!0),e.a[t.p][n.p]}function tE(e,t){if(!e.ai()&&t==null)throw V(new St("The 'no null' constraint is violated"));return t}function nE(e,t){e.D==null&&e.B!=null&&(e.D=e.B,e.B=null),V$(e,t==null?null:(yt(t),t)),e.C&&e.yk(null)}function pjt(e,t){var n;return!e||e==t||!nr(t,(ye(),X0))?!1:(n=c(B(t,(ye(),X0)),10),n!=e)}function gK(e){switch(e.i){case 2:return!0;case 1:return!1;case-1:++e.c;default:return e.pl()}}function Gqe(e){switch(e.i){case-2:return!0;case-1:return!1;case 1:--e.c;default:return e.ql()}}function Uqe(e){LLe.call(this,"The given string does not match the expected format for individual spacings.",e)}function ru(){ru=Z,Tu=new R9("ELK",0),Hwe=new R9("JSON",1),qwe=new R9("DOT",2),zwe=new R9("SVG",3)}function EI(){EI=Z,sx=new MF(qh,0),S0e=new MF("RADIAL_COMPACTION",1),P0e=new MF("WEDGE_COMPACTION",2)}function Fl(){Fl=Z,Fhe=new rF("CONCURRENT",0),Su=new rF("IDENTITY_FINISH",1),Tw=new rF("UNORDERED",2)}function bK(){bK=Z,dde=(l9(),CG),hde=new ut(uae,dde),lit=new hi(aae),fit=new hi(lae),hit=new hi(fae)}function iE(){iE=Z,C1e=new Z_e,I1e=new eEe,Prt=new tEe,Srt=new nEe,Ert=new iEe,M1e=(yt(Ert),new pc)}function rE(){rE=Z,oW=new yF("CONSERVATIVE",0),Xbe=new yF("CONSERVATIVE_SOFT",1),DP=new yF("SLOPPY",2)}function QO(){QO=Z,Owe=new Yb(15),Flt=new Yr((kn(),Sb),Owe),YP=i3,Iwe=_lt,Twe=Eb,Awe=Vv,jwe=_x}function pK(e,t,n){var i,r,o;for(i=new wi,o=Mn(n,0);o.b!=o.d.c;)r=c(Pn(o),8),Cn(i,new go(r));Hqe(e,t,i)}function wjt(e){var t,n,i;for(t=0,i=oe(ir,we,8,e.b,0,1),n=Mn(e,0);n.b!=n.d.c;)i[t++]=c(Pn(n),8);return i}function zre(e){var t;return t=(!e.a&&(e.a=new Me(Yh,e,9,5)),e.a),t.i!=0?xyt(c(ee(t,0),678)):null}function mjt(e,t){var n;return n=xr(e,t),iF(u$(e,t),0)|Jyt(u$(e,n),0)?n:xr(dD,u$($p(n,63),1))}function vjt(e,t){var n;n=Le((kK(),HR))!=null&&t.wg()!=null?ge(Te(t.wg()))/ge(Te(Le(HR))):1,Kn(e.b,t,n)}function yjt(e,t){var n,i;return n=c(e.d.Bc(t),14),n?(i=e.e.hc(),i.Gc(n),e.e.d-=n.gc(),n.$b(),i):null}function Vre(e,t){var n,i;if(i=e.c[t],i!=0)for(e.c[t]=0,e.d-=i,n=t+1;n0)return y_(t-1,e.a.c.length),ad(e.a,t-1);throw V(new yAe)}function _jt(e,t,n){if(t<0)throw V(new ho(wZe+t));tt)throw V(new St(mD+e+HJe+t));if(e<0||t>n)throw V(new oZ(mD+e+Yue+t+Uue+n))}function Xqe(e){if(!e.a||(e.a.i&8)==0)throw V(new Ao("Enumeration class expected for layout option "+e.f))}function ew(e){var t;++e.j,e.i==0?e.g=null:e.iUD?e-n>UD:n-e>UD}function mK(e,t){return!e||t&&!e.j||Q(e,124)&&c(e,124).a.b==0?0:e.Re()}function e7(e,t){return!e||t&&!e.k||Q(e,124)&&c(e,124).a.a==0?0:e.Se()}function SI(e){return T1(),e<0?e!=-1?new $oe(-1,-e):gG:e<=10?Che[xi(e)]:new $oe(1,e)}function Ure(e){throw iK(),V(new d9e("Unexpected typeof result '"+e+"'; please report this bug to the GWT team"))}function tHe(e){v9e(),V9(this),F8(this),this.e=e,gWe(this,e),this.g=e==null?rs:Ro(e),this.a="",this.b=e,this.a=""}function Wre(){this.a=new y5e,this.f=new uje(this),this.b=new aje(this),this.i=new lje(this),this.e=new fje(this)}function nHe(){Avt.call(this,new Oie(Xp(16))),pu(2,PJe),this.b=2,this.a=new Ane(null,null,0,null),GM(this.a,this.a)}function X5(){X5=Z,YU=new pF("DUMMY_NODE_OVER",0),Rbe=new pF("DUMMY_NODE_UNDER",1),VR=new pF("EQUAL",2)}function vK(){vK=Z,FG=FLe(U(G(WP,1),_e,103,0,[(eo(),ga),Va])),BG=FLe(U(G(WP,1),_e,103,0,[Gh,Vh]))}function yK(e){return(Ie(),cs).Hc(e.j)?ge(Te(B(e,(ye(),m4)))):Ko(U(G(ir,1),we,8,0,[e.i.n,e.n,e.a])).b}function Cjt(e){var t,n,i,r;for(i=e.b.a,n=i.a.ec().Kc();n.Ob();)t=c(n.Pb(),561),r=new WUe(t,e.e,e.f),Ee(e.g,r)}function Ug(e,t){var n,i,r;i=e.nk(t,null),r=null,t&&(r=(r_(),n=new Nb,n),B_(r,e.r)),i=$l(e,r,i),i&&i.Fi()}function Ijt(e,t){var n,i;for(i=$s(e.d,1)!=0,n=!0;n;)n=!1,n=t.c.Tf(t.e,i),n=n|ZI(e,t,i,!1),i=!i;hre(e)}function Yre(e,t){var n,i,r;return i=!1,n=t.q.d,t.dr&&(TVe(t.q,r),i=n!=t.q.d)),i}function iHe(e,t){var n,i,r,o,u,a,l,d;return l=t.i,d=t.j,i=e.f,r=i.i,o=i.j,u=l-r,a=d-o,n=g.Math.sqrt(u*u+a*a),n}function Xre(e,t){var n,i;return i=g7(e),i||(n=(hH(),jGe(t)),i=new fAe(n),on(i.Vk(),e)),i}function PI(e,t){var n,i;return n=c(e.c.Bc(t),14),n?(i=e.hc(),i.Gc(n),e.d-=n.gc(),n.$b(),e.mc(i)):e.jc()}function rHe(e,t){var n;for(n=0;n=e.c.b:e.a<=e.c.b))throw V(new tc);return t=e.a,e.a+=e.c.c,++e.b,Ce(t)}function Ajt(e){var t;return t=new N$e(e),zC(e.a,srt,new Js(U(G(QT,1),xe,369,0,[t]))),t.d&&Ee(t.f,t.d),t.f}function _K(e){var t;return t=new wee(e.a),Mo(t,e),pe(t,(ye(),Hn),e),t.o.a=e.g,t.o.b=e.f,t.n.a=e.i,t.n.b=e.j,t}function Ojt(e,t,n,i){var r,o;for(o=e.Kc();o.Ob();)r=c(o.Pb(),70),r.n.a=t.a+(i.a-r.o.a)/2,r.n.b=t.b,t.b+=r.o.b+n}function Djt(e,t,n){var i,r;for(r=t.a.a.ec().Kc();r.Ob();)if(i=c(r.Pb(),57),wLe(e,i,n))return!0;return!1}function kjt(e){var t,n;for(n=new q(e.r);n.a=0?t:-t;i>0;)i%2==0?(n*=n,i=i/2|0):(r*=n,i-=1);return t<0?1/r:r}function Njt(e,t){var n,i,r;for(r=1,n=e,i=t>=0?t:-t;i>0;)i%2==0?(n*=n,i=i/2|0):(r*=n,i-=1);return t<0?1/r:r}function fHe(e){var t,n;if(e!=null)for(n=0;n0&&(n=c(Ne(e.a,e.a.c.length-1),570),Kre(n,t))||Ee(e.a,new zFe(t))}function qjt(e){ka();var t,n;t=e.d.c-e.e.c,n=c(e.g,145),Zc(n.b,new wTe(t)),Zc(n.c,new mTe(t)),Mr(n.i,new vTe(t))}function bHe(e){var t;return t=new n1,t.a+="VerticalSegment ",nc(t,e.e),t.a+=" ",wn(t,Iee(new XN,new q(e.k))),t.a}function Hjt(e){var t;return t=c(h0(e.c.c,""),229),t||(t=new i2(i_(n_(new Ay,""),"Other")),Xg(e.c.c,"",t)),t}function J5(e){var t;return(e.Db&64)!=0?Ba(e):(t=new ea(Ba(e)),t.a+=" (name: ",co(t,e.zb),t.a+=")",t.a)}function toe(e,t,n){var i,r;return r=e.sb,e.sb=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,4,r,t),n?n.Ei(i):n=i),n}function EK(e,t){var n,i,r;for(n=0,r=qo(e,t).Kc();r.Ob();)i=c(r.Pb(),11),n+=B(i,(ye(),As))!=null?1:0;return n}function Vm(e,t,n){var i,r,o;for(i=0,o=Mn(e,0);o.b!=o.d.c&&(r=ge(Te(Pn(o))),!(r>n));)r>=t&&++i;return i}function zjt(e,t,n){var i,r;return i=new Ah(e.e,3,13,null,(r=t.c,r||(ot(),Ql)),wd(e,t),!1),n?n.Ei(i):n=i,n}function Vjt(e,t,n){var i,r;return i=new Ah(e.e,4,13,(r=t.c,r||(ot(),Ql)),null,wd(e,t),!1),n?n.Ei(i):n=i,n}function noe(e,t,n){var i,r;return r=e.r,e.r=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,8,r,e.r),n?n.Ei(i):n=i),n}function gd(e,t){var n,i;return n=c(t,676),i=n.vk(),!i&&n.wk(i=Q(t,88)?new f7e(e,c(t,26)):new DNe(e,c(t,148))),i}function MI(e,t,n){var i;e.qi(e.i+1),i=e.oi(t,n),t!=e.i&&bc(e.g,t,e.g,t+1,e.i-t),vi(e.g,t,i),++e.i,e.bi(t,n),e.ci()}function Gjt(e,t){var n;return t.a&&(n=t.a.a.length,e.a?wn(e.a,e.b):e.a=new lu(e.d),RNe(e.a,t.a,t.d.length,n)),e}function Ujt(e,t){var n,i,r,o;if(t.vi(e.a),o=c(vt(e.a,8),1936),o!=null)for(n=o,i=0,r=n.length;in)throw V(new ho(mD+e+Yue+t+", size: "+n));if(e>t)throw V(new St(mD+e+HJe+t))}function $u(e,t,n){if(t<0)ose(e,n);else{if(!n.Ij())throw V(new St(x1+n.ne()+W6));c(n,66).Nj().Vj(e,e.yh(),t)}}function Xjt(e,t,n,i,r,o,u,a){var l;for(l=n;o=i||t=65&&e<=70?e-65+10:e>=97&&e<=102?e-97+10:e>=48&&e<=57?e-48:0}function EHe(e){var t;return(e.Db&64)!=0?Ba(e):(t=new ea(Ba(e)),t.a+=" (source: ",co(t,e.d),t.a+=")",t.a)}function Qjt(e,t,n){var i,r;return r=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,5,r,e.a),n?Mce(n,i):n=i),n}function bd(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,2,n,t))}function roe(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,8,n,t))}function i7(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,8,n,t))}function pd(e,t){var n;n=(e.Bb&512)!=0,t?e.Bb|=512:e.Bb&=-513,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,3,n,t))}function ooe(e,t){var n;n=(e.Bb&512)!=0,t?e.Bb|=512:e.Bb&=-513,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,9,n,t))}function Z5(e,t){var n;return e.b==-1&&e.a&&(n=e.a.Gj(),e.b=n?e.c.Xg(e.a.aj(),n):di(e.c.Tg(),e.a)),e.c.Og(e.b,t)}function Ce(e){var t,n;return e>-129&&e<128?(t=e+128,n=(yRe(),dhe)[t],!n&&(n=dhe[t]=new sQ(e)),n):new sQ(e)}function oE(e){var t,n;return e>-129&&e<128?(t=e+128,n=(CRe(),whe)[t],!n&&(n=whe[t]=new aQ(e)),n):new aQ(e)}function coe(e){var t,n;return t=e.k,t==(Dt(),Bi)?(n=c(B(e,(ye(),Zo)),61),n==(Ie(),_t)||n==Yt):!1}function Zjt(e,t,n){var i,r,o;return o=(r=EE(e.b,t),r),o&&(i=c(oD(iI(e,o),""),26),i)?Cse(e,i,t,n):null}function SK(e,t,n){var i,r,o;return o=(r=EE(e.b,t),r),o&&(i=c(oD(iI(e,o),""),26),i)?Ise(e,i,t,n):null}function SHe(e,t){var n,i;for(i=new $t(e);i.e!=i.i.gc();)if(n=c(Vt(i),138),le(t)===le(n))return!0;return!1}function e6(e,t,n){var i;if(i=e.gc(),t>i)throw V(new Fp(t,i));if(e.hi()&&e.Hc(n))throw V(new St(RT));e.Xh(t,n)}function eAt(e,t){var n;if(n=Bm(e.i,t),n==null)throw V(new sf("Node did not exist in input."));return wre(t,n),null}function tAt(e,t){var n;if(n=QI(e,t),Q(n,322))return c(n,34);throw V(new St(x1+t+"' is not a valid attribute"))}function nAt(e,t,n){var i,r;for(r=Q(t,99)&&(c(t,18).Bb&Vr)!=0?new RF(t,e):new X_(t,e),i=0;it?1:e==t?e==0?zi(1/e,1/t):0:isNaN(e)?isNaN(t)?0:1:-1}function fAt(e,t){Wt(t,"Sort end labels",1),Di(si($o(new ht(null,new bt(e.b,16)),new V3e),new G3e),new U3e),qt(t)}function t6(e,t,n){var i,r;return e.ej()?(r=e.fj(),i=Aq(e,t,n),e.$i(e.Zi(7,Ce(n),i,t,r)),i):Aq(e,t,n)}function PK(e,t){var n,i,r;e.d==null?(++e.e,--e.f):(r=t.cd(),n=t.Sh(),i=(n&Fn)%e.d.length,WMt(e,i,KUe(e,i,n,r)))}function cE(e,t){var n;n=(e.Bb&Ka)!=0,t?e.Bb|=Ka:e.Bb&=-1025,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,10,n,t))}function sE(e,t){var n;n=(e.Bb&vw)!=0,t?e.Bb|=vw:e.Bb&=-4097,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,12,n,t))}function uE(e,t){var n;n=(e.Bb&Es)!=0,t?e.Bb|=Es:e.Bb&=-8193,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,15,n,t))}function aE(e,t){var n;n=(e.Bb&Iw)!=0,t?e.Bb|=Iw:e.Bb&=-2049,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,11,n,t))}function hAt(e,t){var n;return n=zi(e.b.c,t.b.c),n!=0||(n=zi(e.a.a,t.a.a),n!=0)?n:zi(e.a.b,t.a.b)}function dAt(e,t){var n;if(n=Bt(e.k,t),n==null)throw V(new sf("Port did not exist in input."));return wre(t,n),null}function gAt(e){var t,n;for(n=GUe(bu(e)).Kc();n.Ob();)if(t=ln(n.Pb()),y6(e,t))return EMt((tOe(),Pft),t);return null}function bAt(e,t){var n,i,r,o,u;for(u=qc(e.e.Tg(),t),o=0,n=c(e.g,119),r=0;r>10)+wT&Ni,t[1]=(e&1023)+56320&Ni,pf(t,0,t.length)}function o7(e){var t,n;return n=c(B(e,(Oe(),Pu)),103),n==(eo(),ih)?(t=ge(Te(B(e,TR))),t>=1?Va:Vh):n}function mAt(e){switch(c(B(e,(Oe(),zh)),218).g){case 1:return new D4e;case 3:return new N4e;default:return new O4e}}function Wg(e){if(e.c)Wg(e.c);else if(e.d)throw V(new Ao("Stream already terminated, can't be modified or used"))}function IK(e){var t;return(e.Db&64)!=0?Ba(e):(t=new ea(Ba(e)),t.a+=" (identifier: ",co(t,e.k),t.a+=")",t.a)}function IHe(e,t,n){var i,r;return i=(Hb(),r=new OA,r),jO(i,t),AO(i,n),e&&on((!e.a&&(e.a=new qi(ma,e,5)),e.a),i),i}function TK(e,t,n,i){var r,o;return yt(i),yt(n),r=e.xc(t),o=r==null?n:q8e(c(r,15),c(n,14)),o==null?e.Bc(t):e.zc(t,o),o}function nt(e){var t,n,i,r;return n=(t=c(rl((i=e.gm,r=i.f,r==bn?i:r)),9),new ku(t,c(Da(t,t.length),9),0)),Fa(n,e),n}function vAt(e,t,n){var i,r;for(r=e.a.ec().Kc();r.Ob();)if(i=c(r.Pb(),10),bI(n,c(Ne(t,i.p),14)))return i;return null}function yAt(e,t,n){var i;try{ejt(e,t,n)}catch(r){throw r=gi(r),Q(r,597)?(i=r,V(new gie(i))):V(r)}return t}function P1(e,t){var n;return Oo(e)&&Oo(t)&&(n=e-t,pT>1,e.k=n-1>>1}function jK(){Oce();var e,t,n;n=pzt+++Date.now(),e=xi(g.Math.floor(n*vT))&wD,t=xi(n-e*Gue),this.a=e^1502,this.b=t^ez}function xh(e){var t,n,i;for(t=new Se,i=new q(e.j);i.a34028234663852886e22?Ii:t<-34028234663852886e22?$i:t}function THe(e){return e-=e>>1&1431655765,e=(e>>2&858993459)+(e&858993459),e=(e>>4)+e&252645135,e+=e>>8,e+=e>>16,e&63}function jHe(e){var t,n,i,r;for(t=new ake(e.Hd().gc()),r=0,i=l2(e.Hd().Kc());i.Ob();)n=i.Pb(),x6t(t,n,Ce(r++));return ckt(t.a)}function CAt(e,t){var n,i,r;for(r=new en,i=t.vc().Kc();i.Ob();)n=c(i.Pb(),42),Kn(r,n.cd(),wTt(e,c(n.dd(),15)));return r}function hoe(e,t){e.n.c.length==0&&Ee(e.n,new W8(e.s,e.t,e.i)),Ee(e.b,t),Woe(c(Ne(e.n,e.n.c.length-1),211),t),BYe(e,t)}function Gm(e){return(e.c!=e.b.b||e.i!=e.g.b)&&(e.a.c=oe(xt,xe,1,0,5,1),Hi(e.a,e.b),Hi(e.a,e.g),e.c=e.b.b,e.i=e.g.b),e.a}function AK(e,t){var n,i,r;for(r=0,i=c(t.Kb(e),20).Kc();i.Ob();)n=c(i.Pb(),17),Be(Fe(B(n,(ye(),Ul))))||++r;return r}function IAt(e,t){var n,i,r;i=Nm(t),r=ge(Te(iw(i,(Oe(),za)))),n=g.Math.max(0,r/2-.5),a6(t,n,1),Ee(e,new _Oe(t,n))}function Ku(){Ku=Z,aj=new aC(qh,0),_P=new aC("FIRST",1),K1=new aC(NQe,2),EP=new aC("LAST",3),xw=new aC(FQe,4)}function Lh(){Lh=Z,nY=new A9(R6,0),Rj=new A9("POLYLINE",1),D4=new A9("ORTHOGONAL",2),o3=new A9("SPLINES",3)}function c7(){c7=Z,q0e=new IF("ASPECT_RATIO_DRIVEN",0),TW=new IF("MAX_SCALE_DRIVEN",1),K0e=new IF("AREA_DRIVEN",2)}function TI(){TI=Z,lx=new TF("P1_STRUCTURE",0),fx=new TF("P2_PROCESSING_ORDER",1),hx=new TF("P3_EXECUTION",2)}function s7(){s7=Z,EW=new PF("OVERLAP_REMOVAL",0),yW=new PF("COMPACTION",1),_W=new PF("GRAPH_SIZE_CALCULATION",2)}function E0(e,t){return Il(),Na(A1),g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t))}function AHe(e,t){var n,i;for(n=Mn(e,0);n.b!=n.d.c;){if(i=WM(Te(Pn(n))),i==t)return;if(i>t){l$(n);break}}RC(n,t)}function Ze(e,t){var n,i,r,o,u;if(n=t.f,Xg(e.c.d,n,t),t.g!=null)for(r=t.g,o=0,u=r.length;ot&&i.ue(e[o-1],e[o])>0;--o)u=e[o],vi(e,o,e[o-1]),vi(e,o-1,u)}function qu(e,t,n,i){if(t<0)Ose(e,n,i);else{if(!n.Ij())throw V(new St(x1+n.ne()+W6));c(n,66).Nj().Tj(e,e.yh(),t,i)}}function u7(e,t){if(t==e.d)return e.e;if(t==e.e)return e.d;throw V(new St("Node "+t+" not part of edge "+e))}function jAt(e,t){switch(t.g){case 2:return e.b;case 1:return e.c;case 4:return e.d;case 3:return e.a;default:return!1}}function OHe(e,t){switch(t.g){case 2:return e.b;case 1:return e.c;case 4:return e.d;case 3:return e.a;default:return!1}}function doe(e,t,n,i){switch(t){case 3:return e.f;case 4:return e.g;case 5:return e.i;case 6:return e.j}return ioe(e,t,n,i)}function AAt(e){return e.k!=(Dt(),Ui)?!1:D_(new ht(null,new t0(new Kt(Ht(Vi(e).a.Kc(),new j)))),new v4e)}function OAt(e){return e.e==null?e:(!e.c&&(e.c=new Hq((e.f&256)!=0,e.i,e.a,e.d,(e.f&16)!=0,e.j,e.g,null)),e.c)}function DAt(e,t){return e.h==bT&&e.m==0&&e.l==0?(t&&(L1=Bc(0,0,0)),D7e((F_(),she))):(t&&(L1=Bc(e.l,e.m,e.h)),Bc(0,0,0))}function Ro(e){var t;return Array.isArray(e)&&e.im===ct?r1(Fs(e))+"@"+(t=fi(e)>>>0,t.toString(16)):e.toString()}function n6(e){var t;this.a=(t=c(e.e&&e.e(),9),new ku(t,c(Da(t,t.length),9),0)),this.b=oe(xt,xe,1,this.a.a.length,5,1)}function kAt(e){var t,n,i;for(this.a=new Eh,i=new q(e);i.a0&&(fn(t-1,e.length),e.charCodeAt(t-1)==58)&&!OK(e,oM,cM))}function OK(e,t,n){var i,r;for(i=0,r=e.length;i=r)return t.c+n;return t.c+t.b.gc()}function FAt(e,t){p_();var n,i,r,o;for(i=VBe(e),r=t,L_(i,0,i.length,r),n=0;n0&&(i+=r,++n);return n>1&&(i+=e.d*(n-1)),i}function boe(e){var t,n,i;for(i=new nd,i.a+="[",t=0,n=e.gc();t0&&this.b>0&&Xte(this.c,this.b,this.a)}function moe(e){kK(),this.c=kl(U(G(Rzt,1),xe,831,0,[bst])),this.b=new en,this.a=e,Kn(this.b,HR,1),Zc(pst,new yje(this))}function DHe(e,t){var n;return e.d?tu(e.b,t)?c(Bt(e.b,t),51):(n=t.Kf(),Kn(e.b,t,n),n):t.Kf()}function voe(e,t){var n;return le(e)===le(t)?!0:Q(t,91)?(n=c(t,91),e.e==n.e&&e.d==n.d&&PMt(e,n.a)):!1}function b2(e){switch(Ie(),e.g){case 4:return _t;case 1:return jt;case 3:return Yt;case 2:return Mt;default:return Vo}}function yoe(e,t){switch(t){case 3:return e.f!=0;case 4:return e.g!=0;case 5:return e.i!=0;case 6:return e.j!=0}return vre(e,t)}function zAt(e){switch(e.g){case 0:return new d5e;case 1:return new g5e;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function kHe(e){switch(e.g){case 0:return new h5e;case 1:return new b5e;default:throw V(new St(Mz+(e.f!=null?e.f:""+e.g)))}}function RHe(e){switch(e.g){case 0:return new QQ;case 1:return new VAe;default:throw V(new St(JD+(e.f!=null?e.f:""+e.g)))}}function VAt(e){switch(e.g){case 1:return new c5e;case 2:return new JDe;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function GAt(e){var t,n;if(e.b)return e.b;for(n=Vl?null:e.d;n;){if(t=Vl?null:n.b,t)return t;n=Vl?null:n.d}return a_(),Nhe}function UAt(e){var t,n,i;return e.e==0?0:(t=e.d<<5,n=e.a[e.d-1],e.e<0&&(i=zKe(e),i==e.d-1&&(--n,n=n|0)),t-=WI(n),t)}function WAt(e){var t,n,i;return e>5,t=e&31,i=oe(Qt,_n,25,n+1,15,1),i[n]=1<3;)r*=10,--o;e=(e+(r>>1))/r|0}return i.i=e,!0}function XAt(e){return vK(),Pt(),!!(OHe(c(e.a,81).j,c(e.b,103))||c(e.a,81).d.e!=0&&OHe(c(e.a,81).j,c(e.b,103)))}function JAt(e){bO(),c(e.We((kn(),G1)),174).Hc((Ks(),jx))&&(c(e.We(Uw),174).Fc((js(),c3)),c(e.We(G1),174).Mc(jx))}function LHe(e,t){var n,i;if(t){for(n=0;n=0;--i)for(t=n[i],r=0;r>1,this.k=t-1>>1}function i9t(e,t){Wt(t,"End label post-processing",1),Di(si($o(new ht(null,new bt(e.b,16)),new N3e),new F3e),new B3e),qt(t)}function r9t(e,t,n){var i,r;return i=ge(e.p[t.i.p])+ge(e.d[t.i.p])+t.n.b+t.a.b,r=ge(e.p[n.i.p])+ge(e.d[n.i.p])+n.n.b+n.a.b,r-i}function o9t(e,t,n){var i,r;for(i=Xi(n,no),r=0;uc(i,0)!=0&&r0&&(fn(0,t.length),t.charCodeAt(0)==43)?t.substr(1):t))}function s9t(e){var t;return e==null?null:new l1((t=Ec(e,!0),t.length>0&&(fn(0,t.length),t.charCodeAt(0)==43)?t.substr(1):t))}function Ioe(e,t){var n;return e.i>0&&(t.lengthe.i&&vi(t,e.i,null),t}function Rc(e,t,n){var i,r,o;return e.ej()?(i=e.i,o=e.fj(),MI(e,i,t),r=e.Zi(3,null,t,i,o),n?n.Ei(r):n=r):MI(e,e.i,t),n}function u9t(e,t,n){var i,r;return i=new Ah(e.e,4,10,(r=t.c,Q(r,88)?c(r,26):(ot(),Ea)),null,wd(e,t),!1),n?n.Ei(i):n=i,n}function a9t(e,t,n){var i,r;return i=new Ah(e.e,3,10,null,(r=t.c,Q(r,88)?c(r,26):(ot(),Ea)),wd(e,t),!1),n?n.Ei(i):n=i,n}function BHe(e){Lp();var t;return t=new go(c(e.e.We((kn(),Vv)),8)),e.B.Hc((Ks(),R4))&&(t.a<=0&&(t.a=20),t.b<=0&&(t.b=20)),t}function $He(e){rw();var t;return(e.q?e.q:(st(),st(),th))._b((Oe(),Z0))?t=c(B(e,Z0),197):t=c(B(Nr(e),CP),197),t}function iw(e,t){var n,i;return i=null,nr(e,(Oe(),KR))&&(n=c(B(e,KR),94),n.Xe(t)&&(i=n.We(t))),i==null&&(i=B(Nr(e),t)),i}function KHe(e,t){var n,i,r;return Q(t,42)?(n=c(t,42),i=n.cd(),r=tw(e.Rc(),i),df(r,n.dd())&&(r!=null||e.Rc()._b(i))):!1}function xK(e,t){var n,i,r;return e.f>0?(e.qj(),i=t==null?0:fi(t),r=(i&Fn)%e.d.length,n=KUe(e,r,i,t),n!=-1):!1}function ll(e,t){var n,i,r;return e.f>0&&(e.qj(),i=t==null?0:fi(t),r=(i&Fn)%e.d.length,n=fse(e,r,i,t),n)?n.dd():null}function jI(e,t){var n,i,r,o;for(o=qc(e.e.Tg(),t),n=c(e.g,119),r=0;r1?Dl(Ph(t.a[1],32),Xi(t.a[0],no)):Xi(t.a[0],no),l0(jr(t.e,n))))}function AI(e,t){var n;return Oo(e)&&Oo(t)&&(n=e%t,pT>5,t&=31,r=e.d+n+(t==0?0:1),i=oe(Qt,_n,25,r,15,1),lDt(i,e.a,n,t),o=new km(e.e,r,i),R5(o),o}function joe(e,t,n){var i,r;i=c(mc(N4,t),117),r=c(mc(hM,t),117),n?(bo(N4,e,i),bo(hM,e,r)):(bo(hM,e,i),bo(N4,e,r))}function WHe(e,t,n){var i,r,o;for(r=null,o=e.b;o;){if(i=e.a.ue(t,o.d),n&&i==0)return o;i>=0?o=o.a[1]:(r=o,o=o.a[0])}return r}function YHe(e,t,n){var i,r,o;for(r=null,o=e.b;o;){if(i=e.a.ue(t,o.d),n&&i==0)return o;i<=0?o=o.a[0]:(r=o,o=o.a[1])}return r}function g9t(e,t,n,i){var r,o,u;return r=!1,YKt(e.f,n,i)&&(B9t(e.f,e.a[t][n],e.a[t][i]),o=e.a[t],u=o[i],o[i]=o[n],o[n]=u,r=!0),r}function Aoe(e,t,n,i,r){var o,u,a;for(u=r;t.b!=t.c;)o=c(Qy(t),10),a=c(qo(o,i).Xb(0),11),e.d[a.p]=u++,n.c[n.c.length]=a;return u}function Ooe(e,t,n){var i,r,o,u,a;return u=e.k,a=t.k,i=n[u.g][a.g],r=Te(iw(e,i)),o=Te(iw(t,i)),g.Math.max((yt(r),r),(yt(o),o))}function b9t(e,t,n){var i,r,o,u;for(i=n/e.c.length,r=0,u=new q(e);u.a2e3&&(Wtt=e,Pk=g.setTimeout(Eyt,10))),Sk++==0?(XCt((iZ(),rhe)),!0):!1}function w9t(e,t){var n,i,r;for(i=new Kt(Ht(Vi(e).a.Kc(),new j));dn(i);)if(n=c(rn(i),17),r=n.d.i,r.c==t)return!1;return!0}function Doe(e,t){var n,i;if(Q(t,245)){i=c(t,245);try{return n=e.vd(i),n==0}catch(r){if(r=gi(r),!Q(r,205))throw V(r)}}return!1}function m9t(){return Error.stackTraceLimit>0?(g.Error.stackTraceLimit=Error.stackTraceLimit=64,!0):"stack"in new Error}function v9t(e,t){return Il(),Il(),Na(A1),(g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t)))>0}function koe(e,t){return Il(),Il(),Na(A1),(g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t)))<0}function QHe(e,t){return Il(),Il(),Na(A1),(g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t)))<=0}function NK(e,t){for(var n=0;!t[n]||t[n]=="";)n++;for(var i=t[n++];nYH)return n.fh();if(i=n.Zg(),i||n==e)break}return i}function Roe(e){return X8(),Q(e,156)?c(Bt(Gj,cnt),288).vg(e):tu(Gj,Fs(e))?c(Bt(Gj,Fs(e)),288).vg(e):null}function _9t(e){if(b7(GE,e))return Pt(),ZE;if(b7(_V,e))return Pt(),hb;throw V(new St("Expecting true or false"))}function E9t(e,t){if(t.c==e)return t.d;if(t.d==e)return t.c;throw V(new St("Input edge is not connected to the input port."))}function rze(e,t){return e.e>t.e?1:e.et.d?e.e:e.d=48&&e<48+g.Math.min(10,10)?e-48:e>=97&&e<97?e-97+10:e>=65&&e<65?e-65+10:-1}function cze(e,t){var n;return le(t)===le(e)?!0:!Q(t,21)||(n=c(t,21),n.gc()!=e.gc())?!1:e.Ic(n)}function S9t(e,t){var n,i,r,o;return i=e.a.length-1,n=t-e.b&i,o=e.c-t&i,r=e.c-e.b&i,LDe(n=o?(Ejt(e,t),-1):(Sjt(e,t),1)}function P9t(e,t){var n,i;for(n=(fn(t,e.length),e.charCodeAt(t)),i=t+1;it.e?1:e.ft.f?1:fi(e)-fi(t)}function b7(e,t){return yt(e),t==null?!1:rt(e,t)?!0:e.length==t.length&&rt(e.toLowerCase(),t.toLowerCase())}function k9t(e,t){var n,i,r,o;for(i=0,r=t.gc();i0&&uc(e,128)<0?(t=tn(e)+128,n=(MRe(),ghe)[t],!n&&(n=ghe[t]=new uQ(e)),n):new uQ(e)}function uze(e,t){var n,i;return n=t.Hh(e.a),n&&(i=ln(ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),Dn)),i!=null)?i:t.ne()}function R9t(e,t){var n,i;return n=t.Hh(e.a),n&&(i=ln(ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),Dn)),i!=null)?i:t.ne()}function x9t(e,t){i$();var n,i;for(i=new Kt(Ht(xh(e).a.Kc(),new j));dn(i);)if(n=c(rn(i),17),n.d.i==t||n.c.i==t)return n;return null}function Noe(e,t,n){this.c=e,this.f=new Se,this.e=new Tr,this.j=new Gte,this.n=new Gte,this.b=t,this.g=new Ru(t.c,t.d,t.b,t.a),this.a=n}function FK(e){var t,n,i,r;for(this.a=new Eh,this.d=new er,this.e=0,n=e,i=0,r=n.length;i0):!1}function fze(e){var t;le(Ke(e,(kn(),qv)))===le((Rh(),Mx))&&(yi(e)?(t=c(Ke(yi(e),qv),334),ao(e,qv,t)):ao(e,qv,XP))}function B9t(e,t,n){var i,r;vq(e.e,t,n,(Ie(),Mt)),vq(e.i,t,n,jt),e.a&&(r=c(B(t,(ye(),Hn)),11),i=c(B(n,Hn),11),a$(e.g,r,i))}function hze(e,t,n){var i,r,o;i=t.c.p,o=t.p,e.b[i][o]=new jLe(e,t),n&&(e.a[i][o]=new LTe(t),r=c(B(t,(ye(),X0)),10),r&&it(e.d,r,t))}function dze(e,t){var n,i,r;if(Ee(Fk,e),t.Fc(e),n=c(Bt(AG,e),21),n)for(r=n.Kc();r.Ob();)i=c(r.Pb(),33),Do(Fk,i,0)!=-1||dze(i,t)}function $9t(e,t,n){var i;(dnt?(GAt(e),!0):gnt||pnt?(a_(),!0):bnt&&(a_(),!1))&&(i=new Kke(t),i.b=n,HDt(e,i))}function BK(e,t){var n;n=!e.A.Hc((ou(),Cb))||e.q==(wr(),Ic),e.u.Hc((js(),Wh))?n?uHt(e,t):HXe(e,t):e.u.Hc(X1)&&(n?Iqt(e,t):iJe(e,t))}function hE(e,t){var n,i;if(++e.j,t!=null&&(n=(i=e.a.Cb,Q(i,97)?c(i,97).Jg():null),xRt(t,n))){p2(e.a,4,n);return}p2(e.a,4,c(t,126))}function gze(e,t,n){return new Ru(g.Math.min(e.a,t.a)-n/2,g.Math.min(e.b,t.b)-n/2,g.Math.abs(e.a-t.a)+n,g.Math.abs(e.b-t.b)+n)}function K9t(e,t){var n,i;return n=Uc(e.a.c.p,t.a.c.p),n!=0?n:(i=Uc(e.a.d.i.p,t.a.d.i.p),i!=0?i:Uc(t.a.d.p,e.a.d.p))}function q9t(e,t,n){var i,r,o,u;return o=t.j,u=n.j,o!=u?o.g-u.g:(i=e.f[t.p],r=e.f[n.p],i==0&&r==0?0:i==0?-1:r==0?1:zi(i,r))}function bze(e,t,n){var i,r,o;if(!n[t.d])for(n[t.d]=!0,r=new q(Gm(t));r.a=r)return r;for(t=t>0?t:0;ti&&vi(t,i,null),t}function wze(e,t){var n,i;for(i=e.a.length,t.lengthi&&vi(t,i,null),t}function Xg(e,t,n){var i,r,o;return r=c(Bt(e.e,t),387),r?(o=ste(r,n),uDe(e,r),o):(i=new Rte(e,t,n),Kn(e.e,t,i),RLe(i),null)}function V9t(e){var t;if(e==null)return null;if(t=Bxt(Ec(e,!0)),t==null)throw V(new UN("Invalid hexBinary value: '"+e+"'"));return t}function DI(e){return T1(),uc(e,0)<0?uc(e,-1)!=0?new Ece(-1,N_(e)):gG:uc(e,10)<=0?Che[tn(e)]:new Ece(1,e)}function KK(){return fD(),U(G(eit,1),_e,159,0,[Qnt,Jnt,Znt,Hnt,qnt,znt,Unt,Gnt,Vnt,Xnt,Ynt,Wnt,$nt,Bnt,Knt,Nnt,Lnt,Fnt,Rnt,knt,xnt,SG])}function mze(e){var t;this.d=new Se,this.j=new Tr,this.g=new Tr,t=e.g.b,this.f=c(B(Nr(t),(Oe(),Pu)),103),this.e=ge(Te(m7(t,Hw)))}function vze(e){this.b=new Se,this.e=new Se,this.d=e,this.a=!$S(si(new ht(null,new t0(new Rl(e.b))),new IS(new y4e))).sd((Ig(),i4))}function fl(){fl=Z,Tt=new hC("PARENTS",0),ar=new hC("NODES",1),kf=new hC("EDGES",2),_b=new hC("PORTS",3),Od=new hC("LABELS",4)}function Um(){Um=Z,W1=new gC("DISTRIBUTED",0),Nj=new gC("JUSTIFIED",1),kwe=new gC("BEGIN",2),JP=new gC(FE,3),Rwe=new gC("END",4)}function G9t(e){var t;switch(t=e.yi(null),t){case 10:return 0;case 15:return 1;case 14:return 2;case 11:return 3;case 21:return 4}return-1}function qK(e){switch(e.g){case 1:return eo(),Gh;case 4:return eo(),ga;case 2:return eo(),Va;case 3:return eo(),Vh}return eo(),ih}function U9t(e,t,n){var i;switch(i=n.q.getFullYear()-O1+O1,i<0&&(i=-i),t){case 1:e.a+=i;break;case 2:Vf(e,i%100,2);break;default:Vf(e,i,t)}}function Mn(e,t){var n,i;if(Vp(t,e.b),t>=e.b>>1)for(i=e.c,n=e.b;n>t;--n)i=i.b;else for(i=e.a.a,n=0;n=64&&t<128&&(r=Dl(r,Ph(1,t-64)));return r}function m7(e,t){var n,i;return i=null,nr(e,(kn(),r3))&&(n=c(B(e,r3),94),n.Xe(t)&&(i=n.We(t))),i==null&&Nr(e)&&(i=B(Nr(e),t)),i}function Eze(e,t){var n,i,r;r=t.d.i,i=r.k,!(i==(Dt(),Ui)||i==Gl)&&(n=new Kt(Ht(Vi(r).a.Kc(),new j)),dn(n)&&Kn(e.k,t,c(rn(n),17)))}function HK(e,t){var n,i,r;return i=at(e.Tg(),t),n=t-e.Ah(),n<0?(r=e.Yg(i),r>=0?e.lh(r):jq(e,i)):n<0?jq(e,i):c(i,66).Nj().Sj(e,e.yh(),n)}function Le(e){var t;if(Q(e.a,4)){if(t=Roe(e.a),t==null)throw V(new Ao(vZe+e.b+"'. "+mZe+(Sh(Uj),Uj.k)+gfe));return t}else return e.a}function X9t(e){var t;if(e==null)return null;if(t=pHt(Ec(e,!0)),t==null)throw V(new UN("Invalid base64Binary value: '"+e+"'"));return t}function Vt(e){var t;try{return t=e.i.Xb(e.e),e.mj(),e.g=e.e++,t}catch(n){throw n=gi(n),Q(n,73)?(e.mj(),V(new tc)):V(n)}}function zK(e){var t;try{return t=e.c.ki(e.e),e.mj(),e.g=e.e++,t}catch(n){throw n=gi(n),Q(n,73)?(e.mj(),V(new tc)):V(n)}}function o6(){o6=Z,pde=(kn(),hwe),TG=zpe,dit=n3,bde=Sb,wit=(A7(),Whe),pit=Ghe,mit=Xhe,bit=Vhe,git=(bK(),hde),IG=lit,gde=fit,Nk=hit}function v7(e){switch(SZ(),this.c=new Se,this.d=e,e.g){case 0:case 2:this.a=One(Rde),this.b=Ii;break;case 3:case 1:this.a=Rde,this.b=$i}}function Sze(e,t,n){var i,r;if(e.c)es(e.c,e.c.i+t),ts(e.c,e.c.j+n);else for(r=new q(e.b);r.a0&&(Ee(e.b,new iRe(t.a,n)),i=t.a.length,0i&&(t.a+=sDe(oe(Yu,vf,25,-i,15,1))))}function Pze(e,t){var n,i,r;for(n=e.o,r=c(c(Vn(e.r,t),21),84).Kc();r.Ob();)i=c(r.Pb(),111),i.e.a=Z8t(i,n.a),i.e.b=n.b*ge(Te(i.b.We(Rk)))}function Q9t(e,t){var n,i,r,o;return r=e.k,n=ge(Te(B(e,(ye(),J0)))),o=t.k,i=ge(Te(B(t,J0))),o!=(Dt(),Bi)?-1:r!=Bi?1:n==i?0:n=0?e.hh(t,n,i):(e.eh()&&(i=(r=e.Vg(),r>=0?e.Qg(i):e.eh().ih(e,-1-r,null,i))),e.Sg(t,n,i))}function Boe(e,t){switch(t){case 7:!e.e&&(e.e=new dt(rr,e,7,4)),Xt(e.e);return;case 8:!e.d&&(e.d=new dt(rr,e,8,5)),Xt(e.d);return}Moe(e,t)}function hl(e,t){var n;n=e.Zc(t);try{return n.Pb()}catch(i){throw i=gi(i),Q(i,109)?V(new ho("Can't get element "+t)):V(i)}}function $oe(e,t){this.e=e,t=0&&(n.d=e.t);break;case 3:e.t>=0&&(n.a=e.t)}e.C&&(n.b=e.C.b,n.c=e.C.c)}function m2(){m2=Z,GT=new E9(yD,0),VT=new E9(az,1),UT=new E9(lz,2),WT=new E9(fz,3),GT.a=!1,VT.a=!0,UT.a=!1,WT.a=!0}function c6(){c6=Z,YT=new _9(yD,0),xk=new _9(az,1),Lk=new _9(lz,2),XT=new _9(fz,3),YT.a=!1,xk.a=!0,Lk.a=!1,XT.a=!0}function i8t(e){var t;t=e.a;do t=c(rn(new Kt(Ht(ko(t).a.Kc(),new j))),17).c.i,t.k==(Dt(),ur)&&e.b.Fc(t);while(t.k==(Dt(),ur));e.b=Kg(e.b)}function r8t(e){var t,n,i;for(i=e.c.a,e.p=(nn(i),new ps(i)),n=new q(i);n.an.b)return!0}return!1}function VK(e,t){return fr(e)?!!Ktt[t]:e.hm?!!e.hm[t]:kp(e)?!!$tt[t]:Dp(e)?!!Btt[t]:!1}function ao(e,t,n){return n==null?(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),d7(e.o,t)):(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),O7(e.o,t,n)),e}function u8t(e,t,n,i){var r,o;o=t.Xe((kn(),zv))?c(t.We(zv),21):e.j,r=Jjt(o),r!=(fD(),SG)&&(n&&!xoe(r)||Vce($xt(e,r,i),t))}function _7(e,t,n,i){var r,o,u;return o=at(e.Tg(),t),r=t-e.Ah(),r<0?(u=e.Yg(o),u>=0?e._g(u,n,!0):j0(e,o,n)):c(o,66).Nj().Pj(e,e.yh(),r,n,i)}function a8t(e,t,n,i){var r,o,u;n.mh(t)&&(Wr(),N$(t)?(r=c(n.ah(t),153),k9t(e,r)):(o=(u=t,u?c(i,49).xh(u):null),o&&fvt(n.ah(t),o)))}function l8t(e){switch(e.g){case 1:return v0(),zT;case 3:return v0(),HT;case 2:return v0(),MG;case 4:return v0(),PG;default:return null}}function Koe(e){switch(typeof e){case _H:return md(e);case Nue:return xi(e);case M2:return Pt(),e?1231:1237;default:return e==null?0:Xb(e)}}function f8t(e,t,n){if(e.e)switch(e.b){case 1:$5t(e.c,t,n);break;case 0:K5t(e.c,t,n)}else hFe(e.c,t,n);e.a[t.p][n.p]=e.c.i,e.a[n.p][t.p]=e.c.e}function jze(e){var t,n;if(e==null)return null;for(n=oe(nh,we,193,e.length,0,2),t=0;t=0)return r;if(e.Fk()){for(i=0;i=r)throw V(new Fp(t,r));if(e.hi()&&(i=e.Xc(n),i>=0&&i!=t))throw V(new St(RT));return e.mi(t,n)}function qoe(e,t){if(this.a=c(nn(e),245),this.b=c(nn(t),245),e.vd(t)>0||e==(KN(),iG)||t==($N(),rG))throw V(new St("Invalid range: "+uFe(e,t)))}function Aze(e){var t,n;for(this.b=new Se,this.c=e,this.a=!1,n=new q(e.a);n.a0),(t&-t)==t)return xi(t*$s(e,31)*4656612873077393e-25);do n=$s(e,31),i=n%t;while(n-i+(t-1)<0);return xi(i)}function md(e){qke();var t,n,i;return n=":"+e,i=Ok[n],i!=null?xi((yt(i),i)):(i=Bhe[n],t=i==null?iNt(e):xi((yt(i),i)),D5t(),Ok[n]=t,t)}function Dze(e,t,n){Wt(n,"Compound graph preprocessor",1),e.a=new u0,FXe(e,t,null),z$t(e,t),CLt(e),pe(t,(ye(),rge),e.a),e.a=null,Is(e.b),qt(n)}function g8t(e,t,n){switch(n.g){case 1:e.a=t.a/2,e.b=0;break;case 2:e.a=t.a,e.b=t.b/2;break;case 3:e.a=t.a/2,e.b=t.b;break;case 4:e.a=0,e.b=t.b/2}}function b8t(e){var t,n,i;for(i=c(Vn(e.a,(Zm(),dR)),15).Kc();i.Ob();)n=c(i.Pb(),101),t=tce(n),E_(e,n,t[0],(m0(),G0),0),E_(e,n,t[1],U0,1)}function p8t(e){var t,n,i;for(i=c(Vn(e.a,(Zm(),gR)),15).Kc();i.Ob();)n=c(i.Pb(),101),t=tce(n),E_(e,n,t[0],(m0(),G0),0),E_(e,n,t[1],U0,1)}function GK(e){switch(e.g){case 0:return null;case 1:return new DKe;case 2:return new ZQ;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function kI(e,t,n){var i,r;for(FTt(e,t-e.s,n-e.t),r=new q(e.n);r.a1&&(o=d8t(e,t)),o}function UK(e){var t;return e.f&&e.f.kh()&&(t=c(e.f,49),e.f=c(S1(e,t),82),e.f!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,8,t,e.f))),e.f}function WK(e){var t;return e.i&&e.i.kh()&&(t=c(e.i,49),e.i=c(S1(e,t),82),e.i!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,7,t,e.i))),e.i}function Xr(e){var t;return e.b&&(e.b.Db&64)!=0&&(t=e.b,e.b=c(S1(e,t),18),e.b!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,21,t,e.b))),e.b}function P7(e,t){var n,i,r;e.d==null?(++e.e,++e.f):(i=t.Sh(),kLt(e,e.f+1),r=(i&Fn)%e.d.length,n=e.d[r],!n&&(n=e.d[r]=e.uj()),n.Fc(t),++e.f)}function Voe(e,t,n){var i;return t.Kj()?!1:t.Zj()!=-2?(i=t.zj(),i==null?n==null:$n(i,n)):t.Hj()==e.e.Tg()&&n==null}function M7(){var e;pu(16,TJe),e=SKe(16),this.b=oe(cG,dT,317,e,0,1),this.c=oe(cG,dT,317,e,0,1),this.a=null,this.e=null,this.i=0,this.f=e-1,this.g=0}function Nh(e){ate.call(this),this.k=(Dt(),Ui),this.j=(pu(6,mw),new Dc(6)),this.b=(pu(2,mw),new Dc(2)),this.d=new xN,this.f=new zQ,this.a=e}function m8t(e){var t,n;e.c.length<=1||(t=AWe(e,(Ie(),Yt)),mGe(e,c(t.a,19).a,c(t.b,19).a),n=AWe(e,Mt),mGe(e,c(n.a,19).a,c(n.b,19).a))}function s6(){s6=Z,Lbe=new uC("SIMPLE",0),QU=new uC(Iz,1),ZU=new uC("LINEAR_SEGMENTS",2),jP=new uC("BRANDES_KOEPF",3),AP=new uC(eZe,4)}function Goe(e,t,n){Wy(c(B(t,(Oe(),ji)),98))||($ie(e,t,vd(t,n)),$ie(e,t,vd(t,(Ie(),Yt))),$ie(e,t,vd(t,_t)),st(),cr(t.j,new RTe(e)))}function kze(e,t,n,i){var r,o,u;for(r=c(Vn(i?e.a:e.b,t),21),u=r.Kc();u.Ob();)if(o=c(u.Pb(),33),Y7(e,n,o))return!0;return!1}function YK(e){var t,n;for(n=new $t(e);n.e!=n.i.gc();)if(t=c(Vt(n),87),t.e||(!t.d&&(t.d=new qi(oo,t,1)),t.d).i!=0)return!0;return!1}function XK(e){var t,n;for(n=new $t(e);n.e!=n.i.gc();)if(t=c(Vt(n),87),t.e||(!t.d&&(t.d=new qi(oo,t,1)),t.d).i!=0)return!0;return!1}function v8t(e){var t,n,i;for(t=0,i=new q(e.c.a);i.a102?-1:e<=57?e-48:e<65?-1:e<=70?e-65+10:e<97?-1:e-97+10}function ZK(e,t){if(e==null)throw V(new Ly("null key in entry: null="+t));if(t==null)throw V(new Ly("null value in entry: "+e+"=null"))}function y8t(e,t){for(var n,i;e.Ob();)if(!t.Ob()||(n=e.Pb(),i=t.Pb(),!(le(n)===le(i)||n!=null&&$n(n,i))))return!1;return!t.Ob()}function xze(e,t){var n;return n=U(G(gr,1),lo,25,15,[mK(e.a[0],t),mK(e.a[1],t),mK(e.a[2],t)]),e.d&&(n[0]=g.Math.max(n[0],n[2]),n[2]=n[0]),n}function Lze(e,t){var n;return n=U(G(gr,1),lo,25,15,[e7(e.a[0],t),e7(e.a[1],t),e7(e.a[2],t)]),e.d&&(n[0]=g.Math.max(n[0],n[2]),n[2]=n[0]),n}function Qg(){Qg=Z,sU=new sC("GREEDY",0),x1e=new sC($Qe,1),uU=new sC(Iz,2),pP=new sC("MODEL_ORDER",3),bP=new sC("GREEDY_MODEL_ORDER",4)}function Nze(e,t){var n,i,r;for(e.b[t.g]=1,i=Mn(t.d,0);i.b!=i.d.c;)n=c(Pn(i),188),r=n.c,e.b[r.g]==1?Cn(e.a,n):e.b[r.g]==2?e.b[r.g]=1:Nze(e,r)}function _8t(e,t){var n,i,r;for(r=new Dc(t.gc()),i=t.Kc();i.Ob();)n=c(i.Pb(),286),n.c==n.f?vE(e,n,n.c):vkt(e,n)||(r.c[r.c.length]=n);return r}function E8t(e,t,n){var i,r,o,u,a;for(a=e.r+t,e.r+=t,e.d+=n,i=n/e.n.c.length,r=0,u=new q(e.n);u.ao&&vi(t,o,null),t}function L8t(e,t){var n,i;if(i=e.gc(),t==null){for(n=0;n0&&(l+=r),d[p]=u,u+=a*(l+i)}function Vze(e){var t,n,i;for(i=e.f,e.n=oe(gr,lo,25,i,15,1),e.d=oe(gr,lo,25,i,15,1),t=0;t0?e.c:0),++r;e.b=i,e.d=o}function H8t(e,t){var n,i,r,o,u;for(i=0,r=0,n=0,u=new q(t);u.a0?e.g:0),++n;e.c=r,e.d=i}function Xze(e,t){var n;return n=U(G(gr,1),lo,25,15,[zoe(e,(al(),Jo),t),zoe(e,Nc,t),zoe(e,Qo,t)]),e.f&&(n[0]=g.Math.max(n[0],n[2]),n[2]=n[0]),n}function z8t(e,t,n){var i;try{Q7(e,t+e.j,n+e.k,!1,!0)}catch(r){throw r=gi(r),Q(r,73)?(i=r,V(new ho(i.g+ED+t+zr+n+")."))):V(r)}}function V8t(e,t,n){var i;try{Q7(e,t+e.j,n+e.k,!0,!1)}catch(r){throw r=gi(r),Q(r,73)?(i=r,V(new ho(i.g+ED+t+zr+n+")."))):V(r)}}function Jze(e){var t;nr(e,(Oe(),Q0))&&(t=c(B(e,Q0),21),t.Hc((fw(),Ga))?(t.Mc(Ga),t.Fc(Ua)):t.Hc(Ua)&&(t.Mc(Ua),t.Fc(Ga)))}function Qze(e){var t;nr(e,(Oe(),Q0))&&(t=c(B(e,Q0),21),t.Hc((fw(),Ya))?(t.Mc(Ya),t.Fc(pa)):t.Hc(pa)&&(t.Mc(pa),t.Fc(Ya)))}function G8t(e,t,n){Wt(n,"Self-Loop ordering",1),Di(Yc(si(si($o(new ht(null,new bt(t.b,16)),new cEe),new sEe),new uEe),new aEe),new uTe(e)),qt(n)}function xI(e,t,n,i){var r,o;for(r=t;r0&&(r.b+=t),r}function T7(e,t){var n,i,r;for(r=new Tr,i=e.Kc();i.Ob();)n=c(i.Pb(),37),v6(n,0,r.b),r.b+=n.f.b+t,r.a=g.Math.max(r.a,n.f.a);return r.a>0&&(r.a+=t),r}function eVe(e){var t,n,i;for(i=Fn,n=new q(e.a);n.a>16==6?e.Cb.ih(e,5,ml,t):(i=Xr(c(at((n=c(vt(e,16),26),n||e.zh()),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function J8t(e){T_();var t=e.e;if(t&&t.stack){var n=t.stack,i=t+` +`;return n.substring(0,i.length)==i&&(n=n.substring(i.length)),n.split(` +`)}return[]}function Q8t(e){var t;return t=(wKe(),Ztt),t[e>>>28]|t[e>>24&15]<<4|t[e>>20&15]<<8|t[e>>16&15]<<12|t[e>>12&15]<<16|t[e>>8&15]<<20|t[e>>4&15]<<24|t[e&15]<<28}function iVe(e){var t,n,i;e.b==e.c&&(i=e.a.length,n=Dre(g.Math.max(8,i))<<1,e.b!=0?(t=Da(e.a,n),MKe(e,t,i),e.a=t,e.b=0):PAe(e.a,n),e.c=i)}function Z8t(e,t){var n;return n=e.b,n.Xe((kn(),zs))?n.Hf()==(Ie(),Mt)?-n.rf().a-ge(Te(n.We(zs))):t+ge(Te(n.We(zs))):n.Hf()==(Ie(),Mt)?-n.rf().a:t}function LI(e){var t;return e.b.c.length!=0&&c(Ne(e.b,0),70).a?c(Ne(e.b,0),70).a:(t=VB(e),t??""+(e.c?Do(e.c.a,e,0):-1))}function j7(e){var t;return e.f.c.length!=0&&c(Ne(e.f,0),70).a?c(Ne(e.f,0),70).a:(t=VB(e),t??""+(e.i?Do(e.i.j,e,0):-1))}function eOt(e,t){var n,i;if(t<0||t>=e.gc())return null;for(n=t;n0?e.c:0),r=g.Math.max(r,t.d),++i;e.e=o,e.b=r}function nOt(e){var t,n;if(!e.b)for(e.b=nO(c(e.f,118).Ag().i),n=new $t(c(e.f,118).Ag());n.e!=n.i.gc();)t=c(Vt(n),137),Ee(e.b,new GN(t));return e.b}function iOt(e,t){var n,i,r;if(t.dc())return p_(),p_(),Wj;for(n=new cke(e,t.gc()),r=new $t(e);r.e!=r.i.gc();)i=Vt(r),t.Hc(i)&&on(n,i);return n}function Zoe(e,t,n,i){return t==0?i?(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),e.o):(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),XC(e.o)):_7(e,t,n,i)}function sq(e){var t,n;if(e.rb)for(t=0,n=e.rb.i;t>22),r+=i>>22,r<0)?!1:(e.l=n&qs,e.m=i&qs,e.h=r&Kh,!0)}function sOt(e,t,n,i,r,o,u){var a,l;return!(t.Ae()&&(l=e.a.ue(n,i),l<0||l==0)||t.Be()&&(a=e.a.ue(n,o),a>0||a==0))}function uOt(e,t){iE();var n;if(n=e.j.g-t.j.g,n!=0)return 0;switch(e.j.g){case 2:return AK(t,I1e)-AK(e,I1e);case 4:return AK(e,C1e)-AK(t,C1e)}return 0}function aOt(e){switch(e.g){case 0:return lU;case 1:return fU;case 2:return hU;case 3:return dU;case 4:return wR;case 5:return gU;default:return null}}function vo(e,t,n){var i,r;return i=(r=new FN,Ug(r,t),kc(r,n),on((!e.c&&(e.c=new Me(cp,e,12,10)),e.c),r),r),hd(i,0),Zp(i,1),pd(i,!0),bd(i,!0),i}function v2(e,t){var n,i;if(t>=e.i)throw V(new kF(t,e.i));return++e.j,n=e.g[t],i=e.i-t-1,i>0&&bc(e.g,t+1,e.g,t,i),vi(e.g,--e.i,null),e.fi(t,n),e.ci(),n}function rVe(e,t){var n,i;return e.Db>>16==17?e.Cb.ih(e,21,va,t):(i=Xr(c(at((n=c(vt(e,16),26),n||e.zh()),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function lOt(e){var t,n,i,r;for(st(),cr(e.c,e.a),r=new q(e.c);r.an.a.c.length))throw V(new St("index must be >= 0 and <= layer node count"));e.c&&Jc(e.c.a,e),e.c=n,n&&Bp(n.a,t,e)}function aVe(e,t){var n,i,r;for(i=new Kt(Ht(xh(e).a.Kc(),new j));dn(i);)return n=c(rn(i),17),r=c(t.Kb(n),10),new LA(nn(r.n.b+r.o.b/2));return DS(),DS(),nG}function lVe(e,t){this.c=new en,this.a=e,this.b=t,this.d=c(B(e,(ye(),Rv)),304),le(B(e,(Oe(),hbe)))===le((eI(),mR))?this.e=new KAe:this.e=new $Ae}function pOt(e,t){var n,i,r,o;for(o=0,i=new q(e);i.a>16==6?e.Cb.ih(e,6,rr,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Ox)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function oce(e,t){var n,i;return e.Db>>16==7?e.Cb.ih(e,1,Hj,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Gwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function cce(e,t){var n,i;return e.Db>>16==9?e.Cb.ih(e,9,Ei,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Wwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function hVe(e,t){var n,i;return e.Db>>16==5?e.Cb.ih(e,9,$x,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),xd)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function sce(e,t){var n,i;return e.Db>>16==3?e.Cb.ih(e,0,Vj,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),Rd)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function dVe(e,t){var n,i;return e.Db>>16==7?e.Cb.ih(e,6,ml,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),Nd)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function gVe(){this.a=new y6e,this.g=new M7,this.j=new M7,this.b=new en,this.d=new M7,this.i=new M7,this.k=new en,this.c=new en,this.e=new en,this.f=new en}function yOt(e,t,n){var i,r,o;for(n<0&&(n=0),o=e.i,r=n;rYH)return gE(e,i);if(i==e)return!0}}return!1}function EOt(e){switch(X9(),e.q.g){case 5:QGe(e,(Ie(),_t)),QGe(e,Yt);break;case 4:UUe(e,(Ie(),_t)),UUe(e,Yt);break;default:UXe(e,(Ie(),_t)),UXe(e,Yt)}}function SOt(e){switch(X9(),e.q.g){case 5:dUe(e,(Ie(),jt)),dUe(e,Mt);break;case 4:Pze(e,(Ie(),jt)),Pze(e,Mt);break;default:WXe(e,(Ie(),jt)),WXe(e,Mt)}}function POt(e){var t,n;t=c(B(e,(dl(),Rit)),19),t?(n=t.a,n==0?pe(e,(v1(),qk),new jK):pe(e,(v1(),qk),new cO(n))):pe(e,(v1(),qk),new cO(1))}function MOt(e,t){var n;switch(n=e.i,t.g){case 1:return-(e.n.b+e.o.b);case 2:return e.n.a-n.o.a;case 3:return e.n.b-n.o.b;case 4:return-(e.n.a+e.o.a)}return 0}function COt(e,t){switch(e.g){case 0:return t==(Ku(),K1)?uR:aR;case 1:return t==(Ku(),K1)?uR:tj;case 2:return t==(Ku(),K1)?tj:aR;default:return tj}}function FI(e,t){var n,i,r;for(Jc(e.a,t),e.e-=t.r+(e.a.c.length==0?0:e.c),r=Ule,i=new q(e.a);i.a>16==3?e.Cb.ih(e,12,Ei,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Vwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function ace(e,t){var n,i;return e.Db>>16==11?e.Cb.ih(e,10,Ei,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Uwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function bVe(e,t){var n,i;return e.Db>>16==10?e.Cb.ih(e,11,va,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),Ld)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function pVe(e,t){var n,i;return e.Db>>16==10?e.Cb.ih(e,12,ya,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),em)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function ra(e){var t;return(e.Bb&1)==0&&e.r&&e.r.kh()&&(t=c(e.r,49),e.r=c(S1(e,t),138),e.r!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,8,t,e.r))),e.r}function aq(e,t,n){var i;return i=U(G(gr,1),lo,25,15,[Rce(e,(al(),Jo),t,n),Rce(e,Nc,t,n),Rce(e,Qo,t,n)]),e.f&&(i[0]=g.Math.max(i[0],i[2]),i[2]=i[0]),i}function IOt(e,t){var n,i,r;if(r=_8t(e,t),r.c.length!=0)for(cr(r,new D_e),n=r.c.length,i=0;i>19,d=t.h>>19,l!=d?d-l:(r=e.h,a=t.h,r!=a?r-a:(i=e.m,u=t.m,i!=u?i-u:(n=e.l,o=t.l,n-o)))}function A7(){A7=Z,Jhe=(X7(),_G),Xhe=new ut(Que,Jhe),Yhe=(EO(),yG),Whe=new ut(Zue,Yhe),Uhe=(p7(),vG),Ghe=new ut(eae,Uhe),Vhe=new ut(tae,(Pt(),!0))}function a6(e,t,n){var i,r;i=t*n,Q(e.g,145)?(r=o2(e),r.f.d?r.f.a||(e.d.a+=i+ql):(e.d.d-=i+ql,e.d.a+=i+ql)):Q(e.g,10)&&(e.d.d-=i,e.d.a+=2*i)}function wVe(e,t,n){var i,r,o,u,a;for(r=e[n.g],a=new q(t.d);a.a0?e.g:0),++n;t.b=i,t.e=r}function mVe(e){var t,n,i;if(i=e.b,$8e(e.i,i.length)){for(n=i.length*2,e.b=oe(cG,dT,317,n,0,1),e.c=oe(cG,dT,317,n,0,1),e.f=n-1,e.i=0,t=e.a;t;t=t.c)VI(e,t,t);++e.g}}function xOt(e,t,n,i){var r,o,u,a;for(r=0;ru&&(a=u/i),r>o&&(l=o/r),lf(e,g.Math.min(a,l)),e}function NOt(){nD();var e,t;try{if(t=c(yce((c1(),_a),WE),2014),t)return t}catch(n){if(n=gi(n),Q(n,102))e=n,sne((un(),e));else throw V(n)}return new p6e}function FOt(){a$e();var e,t;try{if(t=c(yce((c1(),_a),lb),2024),t)return t}catch(n){if(n=gi(n),Q(n,102))e=n,sne((un(),e));else throw V(n)}return new xPe}function BOt(){nD();var e,t;try{if(t=c(yce((c1(),_a),la),1941),t)return t}catch(n){if(n=gi(n),Q(n,102))e=n,sne((un(),e));else throw V(n)}return new q6e}function $Ot(e,t,n){var i,r;return r=e.e,e.e=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,4,r,t),n?n.Ei(i):n=i),r!=t&&(t?n=AE(e,H7(e,t),n):n=AE(e,e.a,n)),n}function vVe(){u9.call(this),this.e=-1,this.a=!1,this.p=Ar,this.k=-1,this.c=-1,this.b=-1,this.g=!1,this.f=-1,this.j=-1,this.n=-1,this.i=-1,this.d=-1,this.o=Ar}function KOt(e,t){var n,i,r;if(i=e.b.d.d,e.a||(i+=e.b.d.a),r=t.b.d.d,t.a||(r+=t.b.d.a),n=zi(i,r),n==0){if(!e.a&&t.a)return-1;if(!t.a&&e.a)return 1}return n}function qOt(e,t){var n,i,r;if(i=e.b.b.d,e.a||(i+=e.b.b.a),r=t.b.b.d,t.a||(r+=t.b.b.a),n=zi(i,r),n==0){if(!e.a&&t.a)return-1;if(!t.a&&e.a)return 1}return n}function HOt(e,t){var n,i,r;if(i=e.b.g.d,e.a||(i+=e.b.g.a),r=t.b.g.d,t.a||(r+=t.b.g.a),n=zi(i,r),n==0){if(!e.a&&t.a)return-1;if(!t.a&&e.a)return 1}return n}function fce(){fce=Z,Wit=Cs(Nn(Nn(Nn(new tr,(Hr(),Pc),(Jr(),h1e)),Pc,d1e),Io,g1e),Io,t1e),Xit=Nn(Nn(new tr,Pc,Wde),Pc,n1e),Yit=Cs(new tr,Io,r1e)}function zOt(e){var t,n,i,r,o;for(t=c(B(e,(ye(),yP)),83),o=e.n,i=t.Cc().Kc();i.Ob();)n=c(i.Pb(),306),r=n.i,r.c+=o.a,r.d+=o.b,n.c?xWe(n):LWe(n);pe(e,yP,null)}function VOt(e,t,n){var i,r;switch(r=e.b,i=r.d,t.g){case 1:return-i.d-n;case 2:return r.o.a+i.c+n;case 3:return r.o.b+i.a+n;case 4:return-i.b-n;default:return-1}}function GOt(e){var t,n,i,r,o;if(i=0,r=$E,e.b)for(t=0;t<360;t++)n=t*.017453292519943295,tue(e,e.d,0,0,pv,n),o=e.b.ig(e.d),o0&&(u=(o&Fn)%e.d.length,r=fse(e,u,o,t),r)?(a=r.ed(n),a):(i=e.tj(o,t,n),e.c.Fc(i),null)}function gce(e,t){var n,i,r,o;switch(gd(e,t)._k()){case 3:case 2:{for(n=sv(t),r=0,o=n.i;r=0;i--)if(rt(e[i].d,t)||rt(e[i].d,n)){e.length>=i+1&&e.splice(0,i+1);break}return e}function BI(e,t){var n;return Oo(e)&&Oo(t)&&(n=e/t,pT0&&(e.b+=2,e.a+=i):(e.b+=1,e.a+=g.Math.min(i,r))}function CVe(e,t){var n,i;if(i=!1,fr(t)&&(i=!0,Zy(e,new qp(ln(t)))),i||Q(t,236)&&(i=!0,Zy(e,(n=yte(c(t,236)),new NA(n)))),!i)throw V(new zN(jfe))}function l7t(e,t,n,i){var r,o,u;return r=new Ah(e.e,1,10,(u=t.c,Q(u,88)?c(u,26):(ot(),Ea)),(o=n.c,Q(o,88)?c(o,26):(ot(),Ea)),wd(e,t),!1),i?i.Ei(r):i=r,i}function wce(e){var t,n;switch(c(B(Nr(e),(Oe(),rbe)),420).g){case 0:return t=e.n,n=e.o,new $e(t.a+n.a/2,t.b+n.b/2);case 1:return new go(e.n);default:return null}}function $I(){$I=Z,vR=new QS(qh,0),H1e=new QS("LEFTUP",1),V1e=new QS("RIGHTUP",2),q1e=new QS("LEFTDOWN",3),z1e=new QS("RIGHTDOWN",4),bU=new QS("BALANCED",5)}function f7t(e,t,n){var i,r,o;if(i=zi(e.a[t.p],e.a[n.p]),i==0){if(r=c(B(t,(ye(),U2)),15),o=c(B(n,U2),15),r.Hc(n))return-1;if(o.Hc(t))return 1}return i}function h7t(e){switch(e.g){case 1:return new u5e;case 2:return new a5e;case 3:return new s5e;case 0:return null;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function mce(e,t,n){switch(t){case 1:!e.n&&(e.n=new Me(Lo,e,1,7)),Xt(e.n),!e.n&&(e.n=new Me(Lo,e,1,7)),Mi(e.n,c(n,14));return;case 2:H5(e,ln(n));return}Fre(e,t,n)}function vce(e,t,n){switch(t){case 3:b0(e,ge(Te(n)));return;case 4:p0(e,ge(Te(n)));return;case 5:es(e,ge(Te(n)));return;case 6:ts(e,ge(Te(n)));return}mce(e,t,n)}function D7(e,t,n){var i,r,o;o=(i=new FN,i),r=$l(o,t,null),r&&r.Fi(),kc(o,n),on((!e.c&&(e.c=new Me(cp,e,12,10)),e.c),o),hd(o,0),Zp(o,1),pd(o,!0),bd(o,!0)}function yce(e,t){var n,i,r;return n=US(e.g,t),Q(n,235)?(r=c(n,235),r.Qh()==null,r.Nh()):Q(n,498)?(i=c(n,1938),r=i.b,r):null}function d7t(e,t,n,i){var r,o;return nn(t),nn(n),o=c(v5(e.d,t),19),g$e(!!o,"Row %s not in %s",t,e.e),r=c(v5(e.b,n),19),g$e(!!r,"Column %s not in %s",n,e.c),vqe(e,o.a,r.a,i)}function IVe(e,t,n,i,r,o,u){var a,l,d,p,v;if(p=r[o],d=o==u-1,a=d?i:0,v=Wze(a,p),i!=10&&U(G(e,u-o),t[o],n[o],a,v),!d)for(++o,l=0;l1||a==-1?(o=c(l,15),r.Wb(y9t(e,o))):r.Wb(Jq(e,c(l,56)))))}function y7t(e,t,n,i){g8e();var r=tG;function o(){for(var u=0;ucV)return n;r>-1e-6&&++n}return n}function Sce(e,t){var n;t!=e.b?(n=null,e.b&&(n=z8(e.b,e,-4,n)),t&&(n=w2(t,e,-4,n)),n=aHe(e,t,n),n&&n.Fi()):(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,t,t))}function AVe(e,t){var n;t!=e.f?(n=null,e.f&&(n=z8(e.f,e,-1,n)),t&&(n=w2(t,e,-1,n)),n=lHe(e,t,n),n&&n.Fi()):(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,0,t,t))}function OVe(e){var t,n,i;if(e==null)return null;if(n=c(e,15),n.dc())return"";for(i=new nd,t=n.Kc();t.Ob();)co(i,(Jn(),ln(t.Pb()))),i.a+=" ";return xF(i,i.a.length-1)}function DVe(e){var t,n,i;if(e==null)return null;if(n=c(e,15),n.dc())return"";for(i=new nd,t=n.Kc();t.Ob();)co(i,(Jn(),ln(t.Pb()))),i.a+=" ";return xF(i,i.a.length-1)}function T7t(e,t,n){var i,r;return i=e.c[t.c.p][t.p],r=e.c[n.c.p][n.p],i.a!=null&&r.a!=null?SB(i.a,r.a):i.a!=null?-1:r.a!=null?1:0}function j7t(e,t){var n,i,r,o,u,a;if(t)for(o=t.a.length,n=new Og(o),a=(n.b-n.a)*n.c<0?(s1(),ig):new f1(n);a.Ob();)u=c(a.Pb(),19),r=A_(t,u.a),i=new kje(e),m5t(i.a,r)}function A7t(e,t){var n,i,r,o,u,a;if(t)for(o=t.a.length,n=new Og(o),a=(n.b-n.a)*n.c<0?(s1(),ig):new f1(n);a.Ob();)u=c(a.Pb(),19),r=A_(t,u.a),i=new Pje(e),w5t(i.a,r)}function O7t(e){var t;if(e!=null&&e.length>0&&Pr(e,e.length-1)==33)try{return t=jGe(fu(e,0,e.length-1)),t.e==null}catch(n){if(n=gi(n),!Q(n,32))throw V(n)}return!1}function kVe(e,t,n){var i,r,o;return i=t.ak(),o=t.dd(),r=i.$j()?p1(e,3,i,null,o,IE(e,i,o,Q(i,99)&&(c(i,18).Bb&Vr)!=0),!0):p1(e,1,i,i.zj(),o,-1,!0),n?n.Ei(r):n=r,n}function D7t(){var e,t,n;for(t=0,e=0;e<1;e++){if(n=bse((fn(e,1),"X".charCodeAt(e))),n==0)throw V(new an("Unknown Option: "+"X".substr(e)));t|=n}return t}function k7t(e,t,n){var i,r,o;switch(i=Nr(t),r=o7(i),o=new gc,Bo(o,t),n.g){case 1:Ji(o,II(b2(r)));break;case 2:Ji(o,b2(r))}return pe(o,(Oe(),$w),Te(B(e,$w))),o}function Pce(e){var t,n;return t=c(rn(new Kt(Ht(ko(e.a).a.Kc(),new j))),17),n=c(rn(new Kt(Ht(Vi(e.a).a.Kc(),new j))),17),Be(Fe(B(t,(ye(),Ul))))||Be(Fe(B(n,Ul)))}function Zm(){Zm=Z,fR=new cC("ONE_SIDE",0),dR=new cC("TWO_SIDES_CORNER",1),gR=new cC("TWO_SIDES_OPPOSING",2),hR=new cC("THREE_SIDES",3),lR=new cC("FOUR_SIDES",4)}function dq(e,t,n,i,r){var o,u;o=c(gu(si(t.Oc(),new T4e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),u=c(qg(e.b,n,i),15),r==0?u.Wc(0,o):u.Gc(o)}function R7t(e,t){var n,i,r,o,u;for(o=new q(t.a);o.a0&&oVe(this,this.c-1,(Ie(),jt)),this.c0&&e[0].length>0&&(this.c=Be(Fe(B(Nr(e[0][0]),(ye(),cge))))),this.a=oe(Fst,we,2018,e.length,0,2),this.b=oe(Bst,we,2019,e.length,0,2),this.d=new nHe}function B7t(e){return e.c.length==0?!1:(pt(0,e.c.length),c(e.c[0],17)).c.i.k==(Dt(),ur)?!0:D_(Yc(new ht(null,new bt(e,16)),new sSe),new uSe)}function $7t(e,t,n){return Wt(n,"Tree layout",1),eO(e.b),Kf(e.b,(dE(),ZR),ZR),Kf(e.b,LP,LP),Kf(e.b,vj,vj),Kf(e.b,NP,NP),e.a=cD(e.b,t),bNt(e,t,yc(n,1)),qt(n),t}function xVe(e,t){var n,i,r,o,u,a,l;for(a=dw(t),o=t.f,l=t.g,u=g.Math.sqrt(o*o+l*l),r=0,i=new q(a);i.a=0?(n=BI(e,pD),i=AI(e,pD)):(t=$p(e,1),n=BI(t,5e8),i=AI(t,5e8),i=xr(Ph(i,1),Xi(e,1))),Dl(Ph(i,32),Xi(n,no))}function FVe(e,t,n){var i,r;switch(i=(Lt(t.b!=0),c(Fu(t,t.a.a),8)),n.g){case 0:i.b=0;break;case 2:i.b=e.f;break;case 3:i.a=0;break;default:i.a=e.g}return r=Mn(t,0),RC(r,i),t}function BVe(e,t,n,i){var r,o,u,a,l;switch(l=e.b,o=t.d,u=o.j,a=Foe(u,l.d[u.g],n),r=Wn(Wo(o.n),o.a),o.j.g){case 1:case 3:a.a+=r.a;break;case 2:case 4:a.b+=r.b}Ri(i,a,i.c.b,i.c)}function Q7t(e,t,n){var i,r,o,u;for(u=Do(e.e,t,0),o=new qQ,o.b=n,i=new _r(e.e,u);i.b1;t>>=1)(t&1)!=0&&(i=Fm(i,n)),n.d==1?n=Fm(n,n):n=new aze(mYe(n.a,n.d,oe(Qt,_n,25,n.d<<1,15,1)));return i=Fm(i,n),i}function Oce(){Oce=Z;var e,t,n,i;for(Dhe=oe(gr,lo,25,25,15,1),khe=oe(gr,lo,25,33,15,1),i=152587890625e-16,t=32;t>=0;t--)khe[t]=i,i*=.5;for(n=1,e=24;e>=0;e--)Dhe[e]=n,n*=.5}function rDt(e){var t,n;if(Be(Fe(Ke(e,(Oe(),Bw))))){for(n=new Kt(Ht(Fh(e).a.Kc(),new j));dn(n);)if(t=c(rn(n),79),T0(t)&&Be(Fe(Ke(t,pb))))return!0}return!1}function $Ve(e,t){var n,i,r;Yi(e.f,t)&&(t.b=e,i=t.c,Do(e.j,i,0)!=-1||Ee(e.j,i),r=t.d,Do(e.j,r,0)!=-1||Ee(e.j,r),n=t.a.b,n.c.length!=0&&(!e.i&&(e.i=new mze(e)),yTt(e.i,n)))}function oDt(e){var t,n,i,r,o;return n=e.c.d,i=n.j,r=e.d.d,o=r.j,i==o?n.p=0&&rt(e.substr(t,3),"GMT")||t>=0&&rt(e.substr(t,3),"UTC"))&&(n[0]=t+3),rue(e,n,i)}function sDt(e,t){var n,i,r,o,u;for(o=e.g.a,u=e.g.b,i=new q(e.d);i.an;o--)e[o]|=t[o-n-1]>>>u,e[o-1]=t[o-n-1]<=e.f)break;o.c[o.c.length]=n}return o}function kce(e){var t,n,i,r;for(t=null,r=new q(e.wf());r.a0&&bc(e.g,t,e.g,t+i,a),u=n.Kc(),e.i+=i,r=0;ro&&SSt(d,L$e(n[a],Ahe))&&(r=a,o=l);return r>=0&&(i[0]=t+o),r}function gDt(e,t){var n;if(n=k7e(e.b.Hf(),t.b.Hf()),n!=0)return n;switch(e.b.Hf().g){case 1:case 2:return Uc(e.b.sf(),t.b.sf());case 3:case 4:return Uc(t.b.sf(),e.b.sf())}return 0}function bDt(e){var t,n,i;for(i=e.e.c.length,e.a=Ag(Qt,[we,_n],[48,25],15,[i,i],2),n=new q(e.c);n.a>4&15,o=e[i]&15,u[r++]=Ywe[n],u[r++]=Ywe[o];return pf(u,0,u.length)}function mDt(e,t,n){var i,r,o;return i=t.ak(),o=t.dd(),r=i.$j()?p1(e,4,i,o,null,IE(e,i,o,Q(i,99)&&(c(i,18).Bb&Vr)!=0),!0):p1(e,i.Kj()?2:1,i,o,i.zj(),-1,!0),n?n.Ei(r):n=r,n}function is(e){var t,n;return e>=Vr?(t=wT+(e-Vr>>10&1023)&Ni,n=56320+(e-Vr&1023)&Ni,String.fromCharCode(t)+(""+String.fromCharCode(n))):String.fromCharCode(e&Ni)}function vDt(e,t){Lp();var n,i,r,o;return r=c(c(Vn(e.r,t),21),84),r.gc()>=2?(i=c(r.Kc().Pb(),111),n=e.u.Hc((js(),eM)),o=e.u.Hc(c3),!i.a&&!n&&(r.gc()==2||o)):!1}function HVe(e,t,n,i,r){var o,u,a;for(o=CWe(e,t,n,i,r),a=!1;!o;)K7(e,r,!0),a=!0,o=CWe(e,t,n,i,r);a&&K7(e,r,!1),u=nK(r),u.c.length!=0&&(e.d&&e.d.lg(u),HVe(e,r,n,i,u))}function L7(){L7=Z,rY=new r5(qh,0),Swe=new r5("DIRECTED",1),Mwe=new r5("UNDIRECTED",2),_we=new r5("ASSOCIATION",3),Pwe=new r5("GENERALIZATION",4),Ewe=new r5("DEPENDENCY",5)}function yDt(e,t){var n;if(!jl(e))throw V(new Ao(FZe));switch(n=jl(e),t.g){case 1:return-(e.j+e.f);case 2:return e.i-n.g;case 3:return e.j-n.f;case 4:return-(e.i+e.g)}return 0}function wE(e,t){var n,i;for(yt(t),i=e.b.c.length,Ee(e.b,t);i>0;){if(n=i,i=(i-1)/2|0,e.a.ue(Ne(e.b,i),t)<=0)return Lu(e.b,n,t),!0;Lu(e.b,n,Ne(e.b,i))}return Lu(e.b,i,t),!0}function Rce(e,t,n,i){var r,o;if(r=0,n)r=e7(e.a[n.g][t.g],i);else for(o=0;o=a)}function xce(e,t,n,i){var r;if(r=!1,fr(i)&&(r=!0,v_(t,n,ln(i))),r||Dp(i)&&(r=!0,xce(e,t,n,i)),r||Q(i,236)&&(r=!0,Rg(t,n,c(i,236))),!r)throw V(new zN(jfe))}function EDt(e,t){var n,i,r;if(n=t.Hh(e.a),n&&(r=ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),aa),r!=null)){for(i=1;i<(vs(),vme).length;++i)if(rt(vme[i],r))return i}return 0}function SDt(e,t){var n,i,r;if(n=t.Hh(e.a),n&&(r=ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),aa),r!=null)){for(i=1;i<(vs(),yme).length;++i)if(rt(yme[i],r))return i}return 0}function zVe(e,t){var n,i,r,o;if(yt(t),o=e.a.gc(),o0?1:0;o.a[r]!=n;)o=o.a[r],r=e.a.ue(n.d,o.d)>0?1:0;o.a[r]=i,i.b=n.b,i.a[0]=n.a[0],i.a[1]=n.a[1],n.a[0]=null,n.a[1]=null}function CDt(e){js();var t,n;return t=ui(Wh,U(G(Cx,1),_e,273,0,[X1])),!(hI(U8(t,e))>1||(n=ui(eM,U(G(Cx,1),_e,273,0,[ZP,c3])),hI(U8(n,e))>1))}function Nce(e,t){var n;n=mc((c1(),_a),e),Q(n,498)?bo(_a,e,new a7e(this,t)):bo(_a,e,this),yq(this,t),t==(r_(),sme)?(this.wb=c(this,1939),c(t,1941)):this.wb=(g1(),wt)}function IDt(e){var t,n,i;if(e==null)return null;for(t=null,n=0;n=_d?"error":i>=900?"warn":i>=800?"info":"log"),Axe(n,e.a),e.b&&Nse(t,n,e.b,"Exception: ",!0))}function B(e,t){var n,i;return i=(!e.q&&(e.q=new en),Bt(e.q,t)),i??(n=t.wg(),Q(n,4)&&(n==null?(!e.q&&(e.q=new en),u2(e.q,t)):(!e.q&&(e.q=new en),Kn(e.q,t,n))),n)}function Hr(){Hr=Z,Af=new oC("P1_CYCLE_BREAKING",0),B1=new oC("P2_LAYERING",1),Hc=new oC("P3_NODE_ORDERING",2),Pc=new oC("P4_NODE_PLACEMENT",3),Io=new oC("P5_EDGE_ROUTING",4)}function WVe(e,t){var n,i,r,o,u;for(r=t==1?BG:FG,i=r.a.ec().Kc();i.Ob();)for(n=c(i.Pb(),103),u=c(Vn(e.f.c,n),21).Kc();u.Ob();)o=c(u.Pb(),46),Jc(e.b.b,o.b),Jc(e.b.a,c(o.b,81).d)}function TDt(e,t){K5();var n;if(e.c==t.c){if(e.b==t.b||ZIt(e.b,t.b)){if(n=u2t(e.b)?1:-1,e.a&&!t.a)return n;if(!e.a&&t.a)return-n}return Uc(e.b.g,t.b.g)}else return zi(e.c,t.c)}function jDt(e,t){var n;Wt(t,"Hierarchical port position processing",1),n=e.b,n.c.length>0&&dYe((pt(0,n.c.length),c(n.c[0],29)),e),n.c.length>1&&dYe(c(Ne(n,n.c.length-1),29),e),qt(t)}function YVe(e,t){var n,i,r;if(Bce(e,t))return!0;for(i=new q(t);i.a=r||t<0)throw V(new ho(xV+t+ub+r));if(n>=r||n<0)throw V(new ho(LV+n+ub+r));return t!=n?i=(o=e.Ti(n),e.Hi(t,o),o):i=e.Oi(n),i}function QVe(e){var t,n,i;if(i=e,e)for(t=0,n=e.Ug();n;n=n.Ug()){if(++t>YH)return QVe(n);if(i=n,n==e)throw V(new Ao("There is a cycle in the containment hierarchy of "+e))}return i}function C1(e){var t,n,i;for(i=new Hg(zr,"[","]"),n=e.Kc();n.Ob();)t=n.Pb(),jh(i,le(t)===le(e)?"(this Collection)":t==null?rs:Ro(t));return i.a?i.e.length==0?i.a.a:i.a.a+(""+i.e):i.c}function Bce(e,t){var n,i;if(i=!1,t.gc()<2)return!1;for(n=0;ni&&(fn(t-1,e.length),e.charCodeAt(t-1)<=32);)--t;return i>0||t1&&(e.j.b+=e.e)):(e.j.a+=n.a,e.j.b=g.Math.max(e.j.b,n.b),e.d.c.length>1&&(e.j.a+=e.e))}function I1(){I1=Z,Rrt=U(G(Gr,1),ac,61,0,[(Ie(),_t),jt,Yt]),krt=U(G(Gr,1),ac,61,0,[jt,Yt,Mt]),xrt=U(G(Gr,1),ac,61,0,[Yt,Mt,_t]),Lrt=U(G(Gr,1),ac,61,0,[Mt,_t,jt])}function ODt(e,t,n,i){var r,o,u,a,l,d,p;if(u=e.c.d,a=e.d.d,u.j!=a.j)for(p=e.b,r=u.j,l=null;r!=a.j;)l=t==0?r7(r):uoe(r),o=Foe(r,p.d[r.g],n),d=Foe(l,p.d[l.g],n),Cn(i,Wn(o,d)),r=l}function DDt(e,t,n,i){var r,o,u,a,l;return u=cVe(e.a,t,n),a=c(u.a,19).a,o=c(u.b,19).a,i&&(l=c(B(t,(ye(),As)),10),r=c(B(n,As),10),l&&r&&(hFe(e.b,l,r),a+=e.b.i,o+=e.b.e)),a>o}function eGe(e){var t,n,i,r,o,u,a,l,d;for(this.a=jze(e),this.b=new Se,n=e,i=0,r=n.length;iJF(e.d).c?(e.i+=e.g.c,LK(e.d)):JF(e.d).c>JF(e.g).c?(e.e+=e.d.c,LK(e.g)):(e.i+=ORe(e.g),e.e+=ORe(e.d),LK(e.g),LK(e.d))}function xDt(e,t,n){var i,r,o,u;for(o=t.q,u=t.r,new xg((cl(),z1),t,o,1),new xg(z1,o,u,1),r=new q(n);r.aa&&(l=a/i),r>o&&(d=o/r),u=g.Math.min(l,d),e.a+=u*(t.a-e.a),e.b+=u*(t.b-e.b)}function BDt(e,t,n,i,r){var o,u;for(u=!1,o=c(Ne(n.b,0),33);e$t(e,t,o,i,r)&&(u=!0,m7t(n,o),n.b.c.length!=0);)o=c(Ne(n.b,0),33);return n.b.c.length==0&&FI(n.j,n),u&&I7(t.q),u}function $Dt(e,t){ov();var n,i,r,o;if(t.b<2)return!1;for(o=Mn(t,0),n=c(Pn(o),8),i=n;o.b!=o.d.c;){if(r=c(Pn(o),8),Bq(e,i,r))return!0;i=r}return!!Bq(e,i,n)}function Kce(e,t,n,i){var r,o;return n==0?(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),r8(e.o,t,i)):(o=c(at((r=c(vt(e,16),26),r||e.zh()),n),66),o.Nj().Rj(e,$c(e),n-Ft(e.zh()),t,i))}function yq(e,t){var n;t!=e.sb?(n=null,e.sb&&(n=c(e.sb,49).ih(e,1,iM,n)),t&&(n=c(t,49).gh(e,1,iM,n)),n=toe(e,t,n),n&&n.Fi()):(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,4,t,t))}function KDt(e,t){var n,i,r,o;if(t)r=Dh(t,"x"),n=new Aje(e),$_(n.a,(yt(r),r)),o=Dh(t,"y"),i=new Oje(e),q_(i.a,(yt(o),o));else throw V(new sf("All edge sections need an end point."))}function qDt(e,t){var n,i,r,o;if(t)r=Dh(t,"x"),n=new Ije(e),K_(n.a,(yt(r),r)),o=Dh(t,"y"),i=new Tje(e),H_(i.a,(yt(o),o));else throw V(new sf("All edge sections need a start point."))}function HDt(e,t){var n,i,r,o,u,a,l;for(i=$qe(e),o=0,a=i.length;o>22-t,r=e.h<>22-t):t<44?(n=0,i=e.l<>44-t):(n=0,i=0,r=e.l<e)throw V(new St("k must be smaller than n"));return t==0||t==e?1:e==0?0:bce(e)/(bce(t)*bce(e-t))}function qce(e,t){var n,i,r,o;for(n=new fee(e);n.g==null&&!n.c?zne(n):n.g==null||n.i!=0&&c(n.g[n.i-1],47).Ob();)if(o=c(q7(n),56),Q(o,160))for(i=c(o,160),r=0;r>4],t[n*2+1]=Vx[o&15];return pf(t,0,t.length)}function ckt(e){k8();var t,n,i;switch(i=e.c.length,i){case 0:return qtt;case 1:return t=c(zGe(new q(e)),42),A4t(t.cd(),t.dd());default:return n=c(Bl(e,oe(fb,gD,42,e.c.length,0,1)),165),new qN(n)}}function skt(e){var t,n,i,r,o,u;for(t=new vm,n=new vm,w1(t,e),w1(n,e);n.b!=n.c;)for(r=c(Qy(n),37),u=new q(r.a);u.a0&&tT(e,n,t),r):HRt(e,t,n)}function uGe(e,t,n){var i,r,o,u;if(t.b!=0){for(i=new wi,u=Mn(t,0);u.b!=u.d.c;)o=c(Pn(u),86),qr(i,Pre(o)),r=o.e,r.a=c(B(o,(ic(),wW)),19).a,r.b=c(B(o,u0e),19).a;uGe(e,i,yc(n,i.b/e.a|0))}}function aGe(e,t){var n,i,r,o,u;if(e.e<=t||bPt(e,e.g,t))return e.g;for(o=e.r,i=e.g,u=e.r,r=(o-i)/2+i;i+11&&(e.e.b+=e.a)):(e.e.a+=n.a,e.e.b=g.Math.max(e.e.b,n.b),e.d.c.length>1&&(e.e.a+=e.a))}function hkt(e){var t,n,i,r;switch(r=e.i,t=r.b,i=r.j,n=r.g,r.a.g){case 0:n.a=(e.g.b.o.a-i.a)/2;break;case 1:n.a=t.d.n.a+t.d.a.a;break;case 2:n.a=t.d.n.a+t.d.a.a-i.a;break;case 3:n.b=t.d.n.b+t.d.a.b}}function lGe(e,t,n,i,r){if(ii&&(e.a=i),e.br&&(e.b=r),e}function dkt(e){if(Q(e,149))return qLt(c(e,149));if(Q(e,229))return BAt(c(e,229));if(Q(e,23))return GDt(c(e,23));throw V(new St(Afe+C1(new Js(U(G(xt,1),xe,1,5,[e])))))}function gkt(e,t,n,i,r){var o,u,a;for(o=!0,u=0;u>>r|n[u+i+1]<>>r,++u}return o}function Gce(e,t,n,i){var r,o,u;if(t.k==(Dt(),ur)){for(o=new Kt(Ht(ko(t).a.Kc(),new j));dn(o);)if(r=c(rn(o),17),u=r.c.i.k,u==ur&&e.c.a[r.c.i.c.p]==i&&e.c.a[t.c.p]==n)return!0}return!1}function bkt(e,t){var n,i,r,o;return t&=63,n=e.h&Kh,t<22?(o=n>>>t,r=e.m>>t|n<<22-t,i=e.l>>t|e.m<<22-t):t<44?(o=0,r=n>>>t-22,i=e.m>>t-22|e.h<<44-t):(o=0,r=0,i=n>>>t-44),Bc(i&qs,r&qs,o&Kh)}function fGe(e,t,n,i){var r;this.b=i,this.e=e==(w0(),kP),r=t[n],this.d=Ag(Gs,[we,Zf],[177,25],16,[r.length,r.length],2),this.a=Ag(Qt,[we,_n],[48,25],15,[r.length,r.length],2),this.c=new Tce(t,n)}function pkt(e){var t,n,i;for(e.k=new Wne((Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])).length,e.j.c.length),i=new q(e.j);i.a=n)return vE(e,t,i.p),!0;return!1}function dGe(e){var t;return(e.Db&64)!=0?_q(e):(t=new lu(vfe),!e.a||wn(wn((t.a+=' "',t),e.a),'"'),wn(zb(wn(zb(wn(zb(wn(zb((t.a+=" (",t),e.i),","),e.j)," | "),e.g),","),e.f),")"),t.a)}function gGe(e,t,n){var i,r,o,u,a;for(a=qc(e.e.Tg(),t),r=c(e.g,119),i=0,u=0;un?ese(e,n,"start index"):t<0||t>n?ese(t,n,"end index"):m6("end index (%s) must not be less than start index (%s)",U(G(xt,1),xe,1,5,[Ce(t),Ce(e)]))}function pGe(e,t){var n,i,r,o;for(i=0,r=e.length;i0&&wGe(e,o,n));t.p=0}function ze(e){var t;this.c=new wi,this.f=e.e,this.e=e.d,this.i=e.g,this.d=e.c,this.b=e.b,this.k=e.j,this.a=e.a,e.i?this.j=e.i:this.j=(t=c(rl(Dd),9),new ku(t,c(Da(t,t.length),9),0)),this.g=e.f}function Ekt(e){var t,n,i,r;for(t=Dg(wn(new lu("Predicates."),"and"),40),n=!0,r=new CS(e);r.b0?a[u-1]:oe(nh,Ed,10,0,0,1),r=a[u],d=u=0?e.Bh(r):ose(e,i);else throw V(new St(x1+i.ne()+W6));else throw V(new St(YZe+t+XZe));else $u(e,n,i)}function Uce(e){var t,n;if(n=null,t=!1,Q(e,204)&&(t=!0,n=c(e,204).a),t||Q(e,258)&&(t=!0,n=""+c(e,258).a),t||Q(e,483)&&(t=!0,n=""+c(e,483).a),!t)throw V(new zN(jfe));return n}function _Ge(e,t){var n,i;if(e.f){for(;t.Ob();)if(n=c(t.Pb(),72),i=n.ak(),Q(i,99)&&(c(i,18).Bb&rc)!=0&&(!e.e||i.Gj()!=x4||i.aj()!=0)&&n.dd()!=null)return t.Ub(),!0;return!1}else return t.Ob()}function EGe(e,t){var n,i;if(e.f){for(;t.Sb();)if(n=c(t.Ub(),72),i=n.ak(),Q(i,99)&&(c(i,18).Bb&rc)!=0&&(!e.e||i.Gj()!=x4||i.aj()!=0)&&n.dd()!=null)return t.Pb(),!0;return!1}else return t.Sb()}function Wce(e,t,n){var i,r,o,u,a,l;for(l=qc(e.e.Tg(),t),i=0,a=e.i,r=c(e.g,119),u=0;u1&&(t.c[t.c.length]=o))}function Ckt(e){var t,n,i,r;for(n=new wi,qr(n,e.o),i=new HQ;n.b!=0;)t=c(n.b==0?null:(Lt(n.b!=0),Fu(n,n.a.a)),508),r=tJe(e,t,!0),r&&Ee(i.a,t);for(;i.a.c.length!=0;)t=c(Wqe(i),508),tJe(e,t,!1)}function yd(){yd=Z,Ipe=new qy(R6,0),Dr=new qy("BOOLEAN",1),oc=new qy("INT",2),T4=new qy("STRING",3),To=new qy("DOUBLE",4),Ai=new qy("ENUM",5),t3=new qy("ENUMSET",6),Yl=new qy("OBJECT",7)}function h6(e,t){var n,i,r,o,u;i=g.Math.min(e.c,t.c),o=g.Math.min(e.d,t.d),r=g.Math.max(e.c+e.b,t.c+t.b),u=g.Math.max(e.d+e.a,t.d+t.a),r=(r/2|0))for(this.e=i?i.c:null,this.d=r;n++0;)Vne(this);this.b=t,this.a=null}function jkt(e,t){var n,i;t.a?QLt(e,t):(n=c(nB(e.b,t.b),57),n&&n==e.a[t.b.f]&&n.a&&n.a!=t.b.a&&n.c.Fc(t.b),i=c(tB(e.b,t.b),57),i&&e.a[i.f]==t.b&&i.a&&i.a!=t.b.a&&t.b.c.Fc(i),HF(e.b,t.b))}function PGe(e,t){var n,i;if(n=c(so(e.b,t),124),c(c(Vn(e.r,t),21),84).dc()){n.n.b=0,n.n.c=0;return}n.n.b=e.C.b,n.n.c=e.C.c,e.A.Hc((ou(),Cb))&&WWe(e,t),i=o8t(e,t),Kq(e,t)==(Um(),W1)&&(i+=2*e.w),n.a.a=i}function MGe(e,t){var n,i;if(n=c(so(e.b,t),124),c(c(Vn(e.r,t),21),84).dc()){n.n.d=0,n.n.a=0;return}n.n.d=e.C.d,n.n.a=e.C.a,e.A.Hc((ou(),Cb))&&YWe(e,t),i=c8t(e,t),Kq(e,t)==(Um(),W1)&&(i+=2*e.w),n.a.b=i}function Akt(e,t){var n,i,r,o;for(o=new Se,i=new q(t);i.an.a&&(i.Hc((sw(),Cj))?r=(t.a-n.a)/2:i.Hc(Ij)&&(r=t.a-n.a)),t.b>n.b&&(i.Hc((sw(),jj))?o=(t.b-n.b)/2:i.Hc(Tj)&&(o=t.b-n.b)),Lce(e,r,o)}function kGe(e,t,n,i,r,o,u,a,l,d,p,v,A){Q(e.Cb,88)&&lw(Ls(c(e.Cb,88)),4),kc(e,n),e.f=u,sE(e,a),aE(e,l),cE(e,d),uE(e,p),pd(e,v),lE(e,A),bd(e,!0),hd(e,r),e.ok(o),Ug(e,t),i!=null&&(e.i=null,NO(e,i))}function RGe(e){var t,n;if(e.f){for(;e.n>0;){if(t=c(e.k.Xb(e.n-1),72),n=t.ak(),Q(n,99)&&(c(n,18).Bb&rc)!=0&&(!e.e||n.Gj()!=x4||n.aj()!=0)&&t.dd()!=null)return!0;--e.n}return!1}else return e.n>0}function ese(e,t,n){if(e<0)return m6(mJe,U(G(xt,1),xe,1,5,[n,Ce(e)]));if(t<0)throw V(new St(vJe+t));return m6("%s (%s) must not be greater than size (%s)",U(G(xt,1),xe,1,5,[n,Ce(e),Ce(t)]))}function tse(e,t,n,i,r,o){var u,a,l,d;if(u=i-n,u<7){TAt(t,n,i,o);return}if(l=n+r,a=i+r,d=l+(a-l>>1),tse(t,e,l,d,-r,o),tse(t,e,d,a,-r,o),o.ue(e[d-1],e[d])<=0){for(;n=0?e.sh(o,n):Ose(e,r,n);else throw V(new St(x1+r.ne()+W6));else throw V(new St(YZe+t+XZe));else qu(e,i,r,n)}function xGe(e){var t,n,i,r;if(n=c(e,49).qh(),n)try{if(i=null,t=EE((c1(),_a),wYe(OAt(n))),t&&(r=t.rh(),r&&(i=r.Wk(Bvt(n.e)))),i&&i!=e)return xGe(i)}catch(o){if(o=gi(o),!Q(o,60))throw V(o)}return e}function Kc(e,t,n){var i,r,o,u;if(u=t==null?0:e.b.se(t),r=(i=e.a.get(u),i??new Array),r.length==0)e.a.set(u,r);else if(o=Jqe(e,t,r),o)return o.ed(n);return vi(r,r.length,new y9(t,n)),++e.c,q8(e.b),null}function LGe(e,t){var n,i;return eO(e.a),Kf(e.a,($O(),cx),cx),Kf(e.a,I4,I4),i=new tr,Nn(i,I4,(s7(),EW)),le(Ke(t,(ow(),MW)))!==le((EI(),sx))&&Nn(i,I4,yW),Nn(i,I4,_W),L7e(e.a,i),n=cD(e.a,t),n}function NGe(e){if(!e)return y9e(),Jtt;var t=e.valueOf?e.valueOf():e;if(t!==e){var n=fG[typeof t];return n?n(t):Ure(typeof t)}else return e instanceof Array||e instanceof g.Array?new QJ(e):new BM(e)}function FGe(e,t,n){var i,r,o;switch(o=e.o,i=c(so(e.p,n),244),r=i.i,r.b=UI(i),r.a=GI(i),r.b=g.Math.max(r.b,o.a),r.b>o.a&&!t&&(r.b=o.a),r.c=-(r.b-o.a)/2,n.g){case 1:r.d=-r.a;break;case 3:r.d=o.b}eH(i),tH(i)}function BGe(e,t,n){var i,r,o;switch(o=e.o,i=c(so(e.p,n),244),r=i.i,r.b=UI(i),r.a=GI(i),r.a=g.Math.max(r.a,o.b),r.a>o.b&&!t&&(r.a=o.b),r.d=-(r.a-o.b)/2,n.g){case 4:r.c=-r.b;break;case 2:r.c=o.a}eH(i),tH(i)}function Vkt(e,t){var n,i,r,o,u;if(!t.dc()){if(r=c(t.Xb(0),128),t.gc()==1){hWe(e,r,r,1,0,t);return}for(n=1;n0)try{r=vu(t,Ar,Fn)}catch(o){throw o=gi(o),Q(o,127)?(i=o,V(new mO(i))):V(o)}return n=(!e.a&&(e.a=new ON(e)),e.a),r=0?c(ee(n,r),56):null}function Ykt(e,t){if(e<0)return m6(mJe,U(G(xt,1),xe,1,5,["index",Ce(e)]));if(t<0)throw V(new St(vJe+t));return m6("%s (%s) must be less than size (%s)",U(G(xt,1),xe,1,5,["index",Ce(e),Ce(t)]))}function Xkt(e){var t,n,i,r,o;if(e==null)return rs;for(o=new Hg(zr,"[","]"),n=e,i=0,r=n.length;i0)for(u=e.c.d,a=e.d.d,r=lf(hr(new $e(a.a,a.b),u),1/(i+1)),o=new $e(u.a,u.b),n=new q(e.a);n.a=0?e._g(n,!0,!0):j0(e,r,!0),153)),c(i,215).ol(t);else throw V(new St(x1+t.ne()+W6))}function cse(e){var t,n;return e>-0x800000000000&&e<0x800000000000?e==0?0:(t=e<0,t&&(e=-e),n=xi(g.Math.floor(g.Math.log(e)/.6931471805599453)),(!t||e!=g.Math.pow(2,n))&&++n,n):fqe(ns(e))}function aRt(e){var t,n,i,r,o,u,a;for(o=new Eh,n=new q(e);n.a2&&a.e.b+a.j.b<=2&&(r=a,i=u),o.a.zc(r,o),r.q=i);return o}function UGe(e,t){var n,i,r;return i=new Nh(e),Mo(i,t),pe(i,(ye(),CR),t),pe(i,(Oe(),ji),(wr(),Ic)),pe(i,Of,(Gf(),wx)),Sg(i,(Dt(),Bi)),n=new gc,Bo(n,i),Ji(n,(Ie(),Mt)),r=new gc,Bo(r,i),Ji(r,jt),i}function WGe(e){switch(e.g){case 0:return new VN((w0(),wj));case 1:return new aCe;case 2:return new pCe;default:throw V(new St("No implementation is available for the crossing minimizer "+(e.f!=null?e.f:""+e.g)))}}function YGe(e,t){var n,i,r,o,u;for(e.c[t.p]=!0,Ee(e.a,t),u=new q(t.j);u.a=o)u.$b();else for(r=u.Kc(),i=0;i0?rZ():u<0&&ZGe(e,t,-u),!0):!1}function GI(e){var t,n,i,r,o,u,a;if(a=0,e.b==0){for(u=xze(e,!0),t=0,i=u,r=0,o=i.length;r0&&(a+=n,++t);t>1&&(a+=e.c*(t-1))}else a=T9e(BKe(x8(si(TB(e.a),new au),new e1)));return a>0?a+e.n.d+e.n.a:0}function UI(e){var t,n,i,r,o,u,a;if(a=0,e.b==0)a=T9e(BKe(x8(si(TB(e.a),new Eo),new fs)));else{for(u=Lze(e,!0),t=0,i=u,r=0,o=i.length;r0&&(a+=n,++t);t>1&&(a+=e.c*(t-1))}return a>0?a+e.n.b+e.n.c:0}function wRt(e,t){var n,i,r,o;for(o=c(so(e.b,t),124),n=o.a,r=c(c(Vn(e.r,t),21),84).Kc();r.Ob();)i=c(r.Pb(),111),i.c&&(n.a=g.Math.max(n.a,Vte(i.c)));if(n.a>0)switch(t.g){case 2:o.n.c=e.s;break;case 4:o.n.b=e.s}}function mRt(e,t){var n,i,r;return n=c(B(t,(dl(),r4)),19).a-c(B(e,r4),19).a,n==0?(i=hr(Wo(c(B(e,(v1(),JT)),8)),c(B(e,fP),8)),r=hr(Wo(c(B(t,JT),8)),c(B(t,fP),8)),zi(i.a*i.b,r.a*r.b)):n}function vRt(e,t){var n,i,r;return n=c(B(t,(A0(),ox)),19).a-c(B(e,ox),19).a,n==0?(i=hr(Wo(c(B(e,(ic(),yj)),8)),c(B(e,FP),8)),r=hr(Wo(c(B(t,yj),8)),c(B(t,FP),8)),zi(i.a*i.b,r.a*r.b)):n}function eUe(e){var t,n;return n=new n1,n.a+="e_",t=TTt(e),t!=null&&(n.a+=""+t),e.c&&e.d&&(wn((n.a+=" ",n),j7(e.c)),wn(nc((n.a+="[",n),e.c.i),"]"),wn((n.a+=Sz,n),j7(e.d)),wn(nc((n.a+="[",n),e.d.i),"]")),n.a}function tUe(e){switch(e.g){case 0:return new fCe;case 1:return new hCe;case 2:return new lCe;case 3:return new dCe;default:throw V(new St("No implementation is available for the layout phase "+(e.f!=null?e.f:""+e.g)))}}function use(e,t,n,i,r){var o;switch(o=0,r.g){case 1:o=g.Math.max(0,t.b+e.b-(n.b+i));break;case 3:o=g.Math.max(0,-e.b-i);break;case 2:o=g.Math.max(0,-e.a-i);break;case 4:o=g.Math.max(0,t.a+e.a-(n.a+i))}return o}function yRt(e,t,n){var i,r,o,u,a;if(n)for(r=n.a.length,i=new Og(r),a=(i.b-i.a)*i.c<0?(s1(),ig):new f1(i);a.Ob();)u=c(a.Pb(),19),o=A_(n,u.a),Sfe in o.a||kV in o.a?OFt(e,o,t):NHt(e,o,t),r3t(c(Bt(e.b,fE(o)),79))}function ase(e){var t,n;switch(e.b){case-1:return!0;case 0:return n=e.t,n>1||n==-1?(e.b=-1,!0):(t=ra(e),t&&(Wr(),t.Cj()==Zet)?(e.b=-1,!0):(e.b=1,!1));default:case 1:return!1}}function _Rt(e,t){var n,i,r,o,u;for(i=(!t.s&&(t.s=new Me(us,t,21,17)),t.s),o=null,r=0,u=i.i;r=0&&i=0?e._g(n,!0,!0):j0(e,r,!0),153)),c(i,215).ll(t);throw V(new St(x1+t.ne()+PV))}function CRt(){MZ();var e;return Fft?c(EE((c1(),_a),la),1939):(In(fb,new IPe),sqt(),e=c(Q(mc((c1(),_a),la),547)?mc(_a,la):new Kxe,547),Fft=!0,izt(e),uzt(e),Kn((PZ(),cme),e,new H6e),bo(_a,la,e),e)}function IRt(e,t){var n,i,r,o;e.j=-1,Qs(e.e)?(n=e.i,o=e.i!=0,UC(e,t),i=new Ah(e.e,3,e.c,null,t,n,o),r=t.Qk(e.e,e.c,null),r=kVe(e,t,r),r?(r.Ei(i),r.Fi()):Bn(e.e,i)):(UC(e,t),r=t.Qk(e.e,e.c,null),r&&r.Fi())}function B7(e,t){var n,i,r;if(r=0,i=t[0],i>=e.length)return-1;for(n=(fn(i,e.length),e.charCodeAt(i));n>=48&&n<=57&&(r=r*10+(n-48),++i,!(i>=e.length));)n=(fn(i,e.length),e.charCodeAt(i));return i>t[0]?t[0]=i:r=-1,r}function TRt(e){var t,n,i,r,o;return r=c(e.a,19).a,o=c(e.b,19).a,n=r,i=o,t=g.Math.max(g.Math.abs(r),g.Math.abs(o)),r<=0&&r==o?(n=0,i=o-1):r==-t&&o!=t?(n=o,i=r,o>=0&&++n):(n=-o,i=r),new yr(Ce(n),Ce(i))}function jRt(e,t,n,i){var r,o,u,a,l,d;for(r=0;r=0&&d>=0&&l=e.i)throw V(new ho(xV+t+ub+e.i));if(n>=e.i)throw V(new ho(LV+n+ub+e.i));return i=e.g[n],t!=n&&(t>16),t=i>>16&16,n=16-t,e=e>>t,i=e-256,t=i>>16&8,n+=t,e<<=t,i=e-vw,t=i>>16&4,n+=t,e<<=t,i=e-mf,t=i>>16&2,n+=t,e<<=t,i=e>>14,t=i&~(i>>1),n+2-t)}function ORt(e){t2();var t,n,i,r;for(Fk=new Se,AG=new en,jG=new Se,t=(!e.a&&(e.a=new Me(Ei,e,10,11)),e.a),aHt(t),r=new $t(t);r.e!=r.i.gc();)i=c(Vt(r),33),Do(Fk,i,0)==-1&&(n=new Se,Ee(jG,n),dze(i,n));return jG}function DRt(e,t,n){var i,r,o,u;e.a=n.b.d,Q(t,352)?(r=rv(c(t,79),!1,!1),o=HI(r),i=new FIe(e),Mr(o,i),rT(o,r),t.We((kn(),Hv))!=null&&Mr(c(t.We(Hv),74),i)):(u=c(t,470),u.Hg(u.Dg()+e.a.a),u.Ig(u.Eg()+e.a.b))}function iUe(e,t){var n,i,r,o,u,a,l,d;for(d=ge(Te(B(t,(Oe(),IP)))),l=e[0].n.a+e[0].o.a+e[0].d.c+d,a=1;a=0?n:(a=j5(hr(new $e(u.c+u.b/2,u.d+u.a/2),new $e(o.c+o.b/2,o.d+o.a/2))),-(MYe(o,u)-1)*a)}function RRt(e,t,n){var i;Di(new ht(null,(!n.a&&(n.a=new Me(mi,n,6,6)),new bt(n.a,16))),new KOe(e,t)),Di(new ht(null,(!n.n&&(n.n=new Me(Lo,n,1,7)),new bt(n.n,16))),new qOe(e,t)),i=c(Ke(n,(kn(),Hv)),74),i&&gre(i,e,t)}function j0(e,t,n){var i,r,o;if(o=uv((vs(),Ir),e.Tg(),t),o)return Wr(),c(o,66).Oj()||(o=r2(wo(Ir,o))),r=(i=e.Yg(o),c(i>=0?e._g(i,!0,!0):j0(e,o,!0),153)),c(r,215).hl(t,n);throw V(new St(x1+t.ne()+PV))}function fse(e,t,n,i){var r,o,u,a,l;if(r=e.d[t],r){if(o=r.g,l=r.i,i!=null){for(a=0;a=n&&(i=t,d=(l.c+l.a)/2,u=d-n,l.c<=d-n&&(r=new uB(l.c,u),Bp(e,i++,r)),a=d+n,a<=l.a&&(o=new uB(a,l.a),Vp(i,e.c.length),WS(e.c,i,o)))}function hse(e){var t;if(!e.c&&e.g==null)e.d=e.si(e.f),on(e,e.d),t=e.d;else{if(e.g==null)return!0;if(e.i==0)return!1;t=c(e.g[e.i-1],47)}return t==e.b&&null.km>=null.jm()?(q7(e),hse(e)):t.Ob()}function FRt(e,t,n){var i,r,o,u,a;if(a=n,!a&&(a=Hte(new Z3,0)),Wt(a,yQe,1),MXe(e.c,t),u=QKt(e.a,t),u.gc()==1)sXe(c(u.Xb(0),37),a);else for(o=1/u.gc(),r=u.Kc();r.Ob();)i=c(r.Pb(),37),sXe(i,yc(a,o));Gvt(e.a,u,t),QNt(t),qt(a)}function cUe(e){if(this.a=e,e.c.i.k==(Dt(),Bi))this.c=e.c,this.d=c(B(e.c.i,(ye(),Zo)),61);else if(e.d.i.k==Bi)this.c=e.d,this.d=c(B(e.d.i,(ye(),Zo)),61);else throw V(new St("Edge "+e+" is not an external edge."))}function sUe(e,t){var n,i,r;r=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,r,e.b)),t?t!=e&&(kc(e,t.zb),q$(e,t.d),n=(i=t.c,i??t.zb),z$(e,n==null||rt(n,t.zb)?null:n)):(kc(e,null),q$(e,0),z$(e,null))}function uUe(e){var t,n;if(e.f){for(;e.n=u)throw V(new Fp(t,u));return r=n[t],u==1?i=null:(i=oe(hY,KV,415,u-1,0,1),bc(n,0,i,0,t),o=u-t-1,o>0&&bc(n,t+1,i,t,o)),hE(e,i),OGe(e,t,r),r}function E2(){E2=Z,a3=c(ee(he((dZ(),cc).qb),6),34),u3=c(ee(he(cc.qb),3),34),mY=c(ee(he(cc.qb),4),34),vY=c(ee(he(cc.qb),5),18),k7(a3),k7(u3),k7(mY),k7(vY),qft=new Js(U(G(us,1),yv,170,0,[a3,u3]))}function hUe(e,t){var n;this.d=new OS,this.b=t,this.e=new go(t.qf()),n=e.u.Hc((js(),Fj)),e.u.Hc(Wh)?e.D?this.a=n&&!t.If():this.a=!0:e.u.Hc(X1)?n?this.a=!(t.zf().Kc().Ob()||t.Bf().Kc().Ob()):this.a=!1:this.a=!1}function dUe(e,t){var n,i,r,o;for(n=e.o.a,o=c(c(Vn(e.r,t),21),84).Kc();o.Ob();)r=c(o.Pb(),111),r.e.a=(i=r.b,i.Xe((kn(),zs))?i.Hf()==(Ie(),Mt)?-i.rf().a-ge(Te(i.We(zs))):n+ge(Te(i.We(zs))):i.Hf()==(Ie(),Mt)?-i.rf().a:n)}function gUe(e,t){var n,i,r,o;n=c(B(e,(Oe(),Pu)),103),o=c(Ke(t,_4),61),r=c(B(e,ji),98),r!=(wr(),Xl)&&r!=Y1?o==(Ie(),Vo)&&(o=lue(t,n),o==Vo&&(o=b2(n))):(i=cXe(t),i>0?o=b2(n):o=II(b2(n))),ao(t,_4,o)}function qRt(e,t){var n,i,r,o,u;for(u=e.j,t.a!=t.b&&cr(u,new E4e),r=u.c.length/2|0,i=0;i0&&tT(e,n,t),o):i.a!=null?(tT(e,t,n),-1):r.a!=null?(tT(e,n,t),1):0}function bUe(e,t){var n,i,r,o;e.ej()?(n=e.Vi(),o=e.fj(),++e.j,e.Hi(n,e.oi(n,t)),i=e.Zi(3,null,t,n,o),e.bj()?(r=e.cj(t,null),r?(r.Ei(i),r.Fi()):e.$i(i)):e.$i(i)):(Oxe(e,t),e.bj()&&(r=e.cj(t,null),r&&r.Fi()))}function $7(e,t){var n,i,r,o,u;for(u=qc(e.e.Tg(),t),r=new RA,n=c(e.g,119),o=e.i;--o>=0;)i=n[o],u.rl(i.ak())&&on(r,i);!rJe(e,r)&&Qs(e.e)&&Q3(e,t.$j()?p1(e,6,t,(st(),Qr),null,-1,!1):p1(e,t.Kj()?2:1,t,null,null,-1,!1))}function yE(){yE=Z;var e,t;for($2=oe(Ev,we,91,32,0,1),uP=oe(Ev,we,91,32,0,1),e=1,t=0;t<=18;t++)$2[t]=DI(e),uP[t]=DI(Ph(e,t)),e=jr(e,5);for(;tu)||t.q&&(i=t.C,u=i.c.c.a-i.o.a/2,r=i.n.a-n,r>u)))}function VRt(e,t){var n;Wt(t,"Partition preprocessing",1),n=c(gu(si($o(si(new ht(null,new bt(e.a,16)),new Y_e),new X_e),new J_e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),Di(n.Oc(),new Q_e),qt(t)}function pUe(e){i$();var t,n,i,r,o,u,a;for(n=new Ng,r=new q(e.e.b);r.a1?e.e*=ge(e.a):e.f/=ge(e.a),Cjt(e),O9t(e),dFt(e),pe(e.b,(o6(),Nk),e.g)}function yUe(e,t,n){var i,r,o,u,a,l;for(i=0,l=n,t||(i=n*(e.c.length-1),l*=-1),o=new q(e);o.a=0?(t||(t=new FS,i>0&&co(t,e.substr(0,i))),t.a+="\\",S_(t,n&Ni)):t&&S_(t,n&Ni);return t?t.a:e}function ext(e){var t;if(!e.a)throw V(new Ao("IDataType class expected for layout option "+e.f));if(t=uMt(e.a),t==null)throw V(new Ao("Couldn't create new instance of property '"+e.f+"'. "+mZe+(Sh(Uj),Uj.k)+gfe));return c(t,414)}function Dq(e){var t,n,i,r,o;return o=e.eh(),o&&o.kh()&&(r=S1(e,o),r!=o)?(n=e.Vg(),i=(t=e.Vg(),t>=0?e.Qg(null):e.eh().ih(e,-1-t,null,null)),e.Rg(c(r,49),n),i&&i.Fi(),e.Lg()&&e.Mg()&&n>-1&&Bn(e,new sr(e,9,n,o,r)),r):o}function MUe(e){var t,n,i,r,o,u,a,l;for(u=0,o=e.f.e,i=0;i>5,r>=e.d)return e.e<0;if(n=e.a[r],t=1<<(t&31),e.e<0){if(i=zKe(e),r>16)),15).Xc(o),a0&&(!(a1(e.a.c)&&t.n.d)&&!(h_(e.a.c)&&t.n.b)&&(t.g.d+=g.Math.max(0,i/2-.5)),!(a1(e.a.c)&&t.n.a)&&!(h_(e.a.c)&&t.n.c)&&(t.g.a-=i-1))}function TUe(e){var t,n,i,r,o;if(r=new Se,o=_Ye(e,r),t=c(B(e,(ye(),As)),10),t)for(i=new q(t.j);i.a>t,o=e.m>>t|n<<22-t,r=e.l>>t|e.m<<22-t):t<44?(u=i?Kh:0,o=n>>t-22,r=e.m>>t-22|n<<44-t):(u=i?Kh:0,o=i?qs:0,r=n>>t-44),Bc(r&qs,o&qs,u&Kh)}function kq(e){var t,n,i,r,o,u;for(this.c=new Se,this.d=e,i=Ii,r=Ii,t=$i,n=$i,u=Mn(e,0);u.b!=u.d.c;)o=c(Pn(u),8),i=g.Math.min(i,o.a),r=g.Math.min(r,o.b),t=g.Math.max(t,o.a),n=g.Math.max(n,o.b);this.a=new Ru(i,r,t-i,n-r)}function OUe(e,t){var n,i,r,o,u,a;for(o=new q(e.b);o.a0&&Q(t,42)&&(e.a.qj(),d=c(t,42),l=d.cd(),o=l==null?0:fi(l),u=rte(e.a,o),n=e.a.d[u],n)){for(i=c(n.g,367),p=n.i,a=0;a=2)for(n=r.Kc(),t=Te(n.Pb());n.Ob();)o=t,t=Te(n.Pb()),i=g.Math.min(i,(yt(t),t-(yt(o),o)));return i}function fxt(e,t){var n,i,r,o,u;i=new wi,Ri(i,t,i.c.b,i.c);do for(n=(Lt(i.b!=0),c(Fu(i,i.a.a),86)),e.b[n.g]=1,o=Mn(n.d,0);o.b!=o.d.c;)r=c(Pn(o),188),u=r.c,e.b[u.g]==1?Cn(e.a,r):e.b[u.g]==2?e.b[u.g]=1:Ri(i,u,i.c.b,i.c);while(i.b!=0)}function hxt(e,t){var n,i,r;if(le(t)===le(nn(e)))return!0;if(!Q(t,15)||(i=c(t,15),r=e.gc(),r!=i.gc()))return!1;if(Q(i,54)){for(n=0;n0&&(r=n),u=new q(e.f.e);u.a0?(t-=1,n-=1):i>=0&&r<0?(t+=1,n+=1):i>0&&r>=0?(t-=1,n+=1):(t+=1,n-=1),new yr(Ce(t),Ce(n))}function Axt(e,t){return e.ct.c?1:e.bt.b?1:e.a!=t.a?fi(e.a)-fi(t.a):e.d==(F5(),xP)&&t.d==RP?-1:e.d==RP&&t.d==xP?1:0}function FUe(e,t){var n,i,r,o,u;return o=t.a,o.c.i==t.b?u=o.d:u=o.c,o.c.i==t.b?i=o.c:i=o.d,r=r9t(e.a,u,i),r>0&&r<$E?(n=wxt(e.a,i.i,r,e.c),W$e(e.a,i.i,-n),n>0):r<0&&-r<$E?(n=mxt(e.a,i.i,-r,e.c),W$e(e.a,i.i,n),n>0):!1}function Oxt(e,t,n,i){var r,o,u,a,l,d,p,v;for(r=(t-e.d)/e.c.c.length,o=0,e.a+=n,e.d=t,v=new q(e.c);v.a>24;return u}function kxt(e){if(e.pe()){var t=e.c;t.qe()?e.o="["+t.n:t.pe()?e.o="["+t.ne():e.o="[L"+t.ne()+";",e.b=t.me()+"[]",e.k=t.oe()+"[]";return}var n=e.j,i=e.d;i=i.split("/"),e.o=NK(".",[n,NK("$",i)]),e.b=NK(".",[n,NK(".",i)]),e.k=i[i.length-1]}function Rxt(e,t){var n,i,r,o,u;for(u=null,o=new q(e.e.a);o.a=0;t-=2)for(n=0;n<=t;n+=2)(e.b[n]>e.b[n+2]||e.b[n]===e.b[n+2]&&e.b[n+1]>e.b[n+3])&&(i=e.b[n+2],e.b[n+2]=e.b[n],e.b[n]=i,i=e.b[n+3],e.b[n+3]=e.b[n+1],e.b[n+1]=i);e.c=!0}}function BUe(e,t){var n,i,r,o,u,a,l,d;for(u=t==1?BG:FG,o=u.a.ec().Kc();o.Ob();)for(r=c(o.Pb(),103),l=c(Vn(e.f.c,r),21).Kc();l.Ob();)switch(a=c(l.Pb(),46),i=c(a.b,81),d=c(a.a,189),n=d.c,r.g){case 2:case 1:i.g.d+=n;break;case 4:case 3:i.g.c+=n}}function Nxt(e,t){var n,i,r,o,u,a,l,d,p;for(d=-1,p=0,u=e,a=0,l=u.length;a0&&++p;++d}return p}function Ba(e){var t,n;return n=new lu(r1(e.gm)),n.a+="@",wn(n,(t=fi(e)>>>0,t.toString(16))),e.kh()?(n.a+=" (eProxyURI: ",nc(n,e.qh()),e.$g()&&(n.a+=" eClass: ",nc(n,e.$g())),n.a+=")"):e.$g()&&(n.a+=" (eClass: ",nc(n,e.$g()),n.a+=")"),n.a}function p6(e){var t,n,i,r;if(e.e)throw V(new Ao((Sh(mG),rz+mG.k+oz)));for(e.d==(eo(),ih)&&uD(e,ga),n=new q(e.a.a);n.a>24}return n}function $xt(e,t,n){var i,r,o;if(r=c(so(e.i,t),306),!r)if(r=new $$e(e.d,t,n),Xy(e.i,t,r),xoe(t))n3t(e.a,t.c,t.b,r);else switch(o=Ikt(t),i=c(so(e.p,o),244),o.g){case 1:case 3:r.j=!0,HN(i,t.b,r);break;case 4:case 2:r.k=!0,HN(i,t.c,r)}return r}function Kxt(e,t,n,i){var r,o,u,a,l,d;if(a=new RA,l=qc(e.e.Tg(),t),r=c(e.g,119),Wr(),c(t,66).Oj())for(u=0;u=0)return r;for(o=1,a=new q(t.j);a.a0&&t.ue((pt(r-1,e.c.length),c(e.c[r-1],10)),o)>0;)Lu(e,r,(pt(r-1,e.c.length),c(e.c[r-1],10))),--r;pt(r,e.c.length),e.c[r]=o}n.a=new en,n.b=new en}function qxt(e,t,n){var i,r,o,u,a,l,d,p;for(p=(i=c(t.e&&t.e(),9),new ku(i,c(Da(i,i.length),9),0)),l=gw(n,"[\\[\\]\\s,]+"),o=l,u=0,a=o.length;u0&&(!(a1(e.a.c)&&t.n.d)&&!(h_(e.a.c)&&t.n.b)&&(t.g.d-=g.Math.max(0,i/2-.5)),!(a1(e.a.c)&&t.n.a)&&!(h_(e.a.c)&&t.n.c)&&(t.g.a+=g.Math.max(0,i-1)))}function zUe(e,t,n){var i,r;if((e.c-e.b&e.a.length-1)==2)t==(Ie(),_t)||t==jt?(IO(c(Y5(e),15),(mu(),rh)),IO(c(Y5(e),15),U1)):(IO(c(Y5(e),15),(mu(),U1)),IO(c(Y5(e),15),rh));else for(r=new O5(e);r.a!=r.b;)i=c(t7(r),15),IO(i,n)}function zxt(e,t){var n,i,r,o,u,a,l;for(r=w_(new MQ(e)),a=new _r(r,r.c.length),o=w_(new MQ(t)),l=new _r(o,o.c.length),u=null;a.b>0&&l.b>0&&(n=(Lt(a.b>0),c(a.a.Xb(a.c=--a.b),33)),i=(Lt(l.b>0),c(l.a.Xb(l.c=--l.b),33)),n==i);)u=n;return u}function $s(e,t){var n,i,r,o,u,a;return o=e.a*ez+e.b*1502,a=e.b*ez+11,n=g.Math.floor(a*vT),o+=n,a-=n*Gue,o%=Gue,e.a=o,e.b=a,t<=24?g.Math.floor(e.a*Dhe[t]):(r=e.a*(1<=2147483648&&(i-=XH),i)}function VUe(e,t,n){var i,r,o,u;bNe(e,t)>bNe(e,n)?(i=qo(n,(Ie(),jt)),e.d=i.dc()?0:dB(c(i.Xb(0),11)),u=qo(t,Mt),e.b=u.dc()?0:dB(c(u.Xb(0),11))):(r=qo(n,(Ie(),Mt)),e.d=r.dc()?0:dB(c(r.Xb(0),11)),o=qo(t,jt),e.b=o.dc()?0:dB(c(o.Xb(0),11)))}function GUe(e){var t,n,i,r,o,u,a;if(e&&(t=e.Hh(la),t&&(u=ln(ll((!t.b&&(t.b=new Zs((ot(),Ur),ec,t)),t.b),"conversionDelegates")),u!=null))){for(a=new Se,i=gw(u,"\\w+"),r=0,o=i.length;re.c));u++)r.a>=e.s&&(o<0&&(o=u),a=u);return l=(e.s+e.c)/2,o>=0&&(i=IFt(e,t,o,a),l=Lyt((pt(i,t.c.length),c(t.c[i],329))),NRt(t,i,n)),l}function Lq(){Lq=Z,Pat=new Yr((kn(),n3),1.3),G0e=Gpe,Z0e=new Yb(15),Oat=new Yr(Sb,Z0e),kat=new Yr(Pb,15),Mat=vx,Tat=Eb,jat=Vv,Aat=G1,Iat=zv,X0e=kj,Dat=Uw,Q0e=(_se(),_at),Y0e=vat,J0e=yat,epe=Eat,U0e=mat,W0e=yx,Cat=Wpe,Ej=wat,V0e=pat,tpe=Sat}function cn(e,t,n){var i,r,o,u,a,l,d;for(u=(o=new qJ,o),ure(u,(yt(t),t)),d=(!u.b&&(u.b=new Zs((ot(),Ur),ec,u)),u.b),l=1;l0&&yKt(this,r)}function Tse(e,t,n,i,r,o){var u,a,l;if(!r[t.b]){for(r[t.b]=!0,u=i,!u&&(u=new uO),Ee(u.e,t),l=o[t.b].Kc();l.Ob();)a=c(l.Pb(),282),!(a.d==n||a.c==n)&&(a.c!=t&&Tse(e,a.c,t,u,r,o),a.d!=t&&Tse(e,a.d,t,u,r,o),Ee(u.c,a),Hi(u.d,a.b));return u}return null}function Uxt(e){var t,n,i,r,o,u,a;for(t=0,r=new q(e.e);r.a=2}function Wxt(e,t){var n,i,r,o;for(Wt(t,"Self-Loop pre-processing",1),i=new q(e.a);i.a1||(t=ui(Ga,U(G(ro,1),_e,93,0,[Uh,Ua])),hI(U8(t,e))>1)||(i=ui(Ya,U(G(ro,1),_e,93,0,[oh,pa])),hI(U8(i,e))>1))}function Jxt(e,t){var n,i,r;return n=t.Hh(e.a),n&&(r=ln(ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),"affiliation")),r!=null)?(i=Y9(r,is(35)),i==-1?SK(e,S5(e,bu(t.Hj())),r):i==0?SK(e,null,r.substr(1)):SK(e,r.substr(0,i),r.substr(i+1))):null}function Qxt(e){var t,n,i;try{return e==null?rs:Ro(e)}catch(r){if(r=gi(r),Q(r,102))return t=r,i=r1(Fs(e))+"@"+(n=(Nf(),Koe(e)>>>0),n.toString(16)),$9t(BTt(),(a_(),"Exception during lenientFormat for "+i),t),"<"+i+" threw "+r1(t.gm)+">";throw V(r)}}function YUe(e){switch(e.g){case 0:return new nCe;case 1:return new JMe;case 2:return new J8e;case 3:return new Z4e;case 4:return new mke;case 5:return new iCe;default:throw V(new St("No implementation is available for the layerer "+(e.f!=null?e.f:""+e.g)))}}function jse(e,t,n){var i,r,o;for(o=new q(e.t);o.a0&&(i.b.n-=i.c,i.b.n<=0&&i.b.u>0&&Cn(t,i.b));for(r=new q(e.i);r.a0&&(i.a.u-=i.c,i.a.u<=0&&i.a.n>0&&Cn(n,i.a))}function q7(e){var t,n,i,r,o;if(e.g==null&&(e.d=e.si(e.f),on(e,e.d),e.c))return o=e.f,o;if(t=c(e.g[e.i-1],47),r=t.Pb(),e.e=t,n=e.si(r),n.Ob())e.d=n,on(e,n);else for(e.d=null;!t.Ob()&&(vi(e.g,--e.i,null),e.i!=0);)i=c(e.g[e.i-1],47),t=i;return r}function Zxt(e,t){var n,i,r,o,u,a;if(i=t,r=i.ak(),Bh(e.e,r)){if(r.hi()&&rO(e,r,i.dd()))return!1}else for(a=qc(e.e.Tg(),r),n=c(e.g,119),o=0;o1||n>1)return 2;return t+n==1?2:0}function JUe(e,t,n){var i,r,o,u,a;for(Wt(n,"ELK Force",1),Be(Fe(Ke(t,(dl(),_de))))||V8((i=new zM((Ap(),new Ip(t))),i)),a=Iqe(t),POt(a),ijt(e,c(B(a,yde),424)),u=$Ye(e.a,a),o=u.Kc();o.Ob();)r=c(o.Pb(),231),BFt(e.b,r,yc(n,1/u.gc()));a=ZXe(u),XXe(a),qt(n)}function cLt(e,t){var n,i,r,o,u;if(Wt(t,"Breaking Point Processor",1),Cqt(e),Be(Fe(B(e,(Oe(),Tbe))))){for(r=new q(e.b);r.a=0?e._g(i,!0,!0):j0(e,o,!0),153)),c(r,215).ml(t,n)}else throw V(new St(x1+t.ne()+W6))}function lLt(e,t){var n,i,r,o,u;for(n=new Se,r=$o(new ht(null,new bt(e,16)),new GSe),o=$o(new ht(null,new bt(e,16)),new USe),u=NCt(QMt(x8(HLt(U(G(vzt,1),xe,833,0,[r,o])),new WSe))),i=1;i=2*t&&Ee(n,new uB(u[i-1]+t,u[i]-t));return n}function fLt(e,t,n){Wt(n,"Eades radial",1),n.n&&t&&Ra(n,xa(t),(ru(),Tu)),e.d=c(Ke(t,(w5(),KP)),33),e.c=ge(Te(Ke(t,(ow(),ax)))),e.e=GK(c(Ke(t,_j),293)),e.a=zAt(c(Ke(t,D0e),426)),e.b=h7t(c(Ke(t,O0e),340)),GOt(e),n.n&&t&&Ra(n,xa(t),(ru(),Tu))}function hLt(e,t,n){var i,r,o,u,a,l,d,p;if(n)for(o=n.a.length,i=new Og(o),a=(i.b-i.a)*i.c<0?(s1(),ig):new f1(i);a.Ob();)u=c(a.Pb(),19),r=A_(n,u.a),r&&(l=lMt(e,(d=(Hb(),p=new GQ,p),t&&Dse(d,t),d),r),H5(l,Ih(r,If)),x7(r,l),nse(r,l),cK(e,r,l))}function z7(e){var t,n,i,r,o,u;if(!e.j){if(u=new O6e,t=sM,o=t.a.zc(e,t),o==null){for(i=new $t(So(e));i.e!=i.i.gc();)n=c(Vt(i),26),r=z7(n),Mi(u,r),on(u,n);t.a.Bc(e)!=null}ew(u),e.j=new Im((c(ee(he((g1(),wt).o),11),18),u.i),u.g),Ls(e).b&=-33}return e.j}function dLt(e){var t,n,i,r;if(e==null)return null;if(i=Ec(e,!0),r=$T.length,rt(i.substr(i.length-r,r),$T)){if(n=i.length,n==4){if(t=(fn(0,i.length),i.charCodeAt(0)),t==43)return Cme;if(t==45)return oht}else if(n==3)return Cme}return new xQ(i)}function gLt(e){var t,n,i;return n=e.l,(n&n-1)!=0||(i=e.m,(i&i-1)!=0)||(t=e.h,(t&t-1)!=0)||t==0&&i==0&&n==0?-1:t==0&&i==0&&n!=0?tre(n):t==0&&i!=0&&n==0?tre(i)+22:t!=0&&i==0&&n==0?tre(t)+44:-1}function bLt(e,t){var n,i,r,o,u;for(Wt(t,"Edge joining",1),n=Be(Fe(B(e,(Oe(),zU)))),r=new q(e.b);r.a1)for(r=new q(e.a);r.a0),o.a.Xb(o.c=--o.b),Np(o,r),Lt(o.b3&&Vf(e,0,t-3))}function vLt(e){var t,n,i,r;return le(B(e,(Oe(),Fw)))===le((Rh(),kd))?!e.e&&le(B(e,lj))!==le((J_(),ij)):(i=c(B(e,DU),292),r=Be(Fe(B(e,kU)))||le(B(e,PP))===le((f2(),nj)),t=c(B(e,Vge),19).a,n=e.a.c.length,!r&&i!=(J_(),ij)&&(t==0||t>n))}function yLt(e){var t,n;for(n=0;n0);n++);if(n>0&&n0);t++);return t>0&&n>16!=6&&t){if(gE(e,t))throw V(new St(Y6+wUe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?rce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,6,i)),i=nte(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,6,t,t))}function Dse(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=9&&t){if(gE(e,t))throw V(new St(Y6+ZWe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?cce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,9,i)),i=ite(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,9,t,t))}function Fq(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=3&&t){if(gE(e,t))throw V(new St(Y6+QYe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?uce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,12,i)),i=tte(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,t,t))}function SE(e){var t,n,i,r,o;if(i=ra(e),o=e.j,o==null&&i)return e.$j()?null:i.zj();if(Q(i,148)){if(n=i.Aj(),n&&(r=n.Nh(),r!=e.i)){if(t=c(i,148),t.Ej())try{e.g=r.Kh(t,o)}catch(u){if(u=gi(u),Q(u,78))e.g=null;else throw V(u)}e.i=r}return e.g}return null}function eWe(e){var t;return t=new Se,Ee(t,new $y(new $e(e.c,e.d),new $e(e.c+e.b,e.d))),Ee(t,new $y(new $e(e.c,e.d),new $e(e.c,e.d+e.a))),Ee(t,new $y(new $e(e.c+e.b,e.d+e.a),new $e(e.c+e.b,e.d))),Ee(t,new $y(new $e(e.c+e.b,e.d+e.a),new $e(e.c,e.d+e.a))),t}function tWe(e,t,n,i){var r,o,u;if(u=pce(t,n),i.c[i.c.length]=t,e.j[u.p]==-1||e.j[u.p]==2||e.a[t.p])return i;for(e.j[u.p]=-1,o=new Kt(Ht(xh(u).a.Kc(),new j));dn(o);)if(r=c(rn(o),17),!(!(!Kr(r)&&!(!Kr(r)&&r.c.i.c==r.d.i.c))||r==t))return tWe(e,r,u,i);return i}function _Lt(e,t,n){var i,r,o;for(o=t.a.ec().Kc();o.Ob();)r=c(o.Pb(),79),i=c(Bt(e.b,r),266),!i&&(yi(Uf(r))==yi(M1(r))?LNt(e,r,n):Uf(r)==yi(M1(r))?Bt(e.c,r)==null&&Bt(e.b,M1(r))!=null&&RXe(e,r,n,!1):Bt(e.d,r)==null&&Bt(e.b,Uf(r))!=null&&RXe(e,r,n,!0))}function ELt(e,t){var n,i,r,o,u,a,l;for(r=e.Kc();r.Ob();)for(i=c(r.Pb(),10),a=new gc,Bo(a,i),Ji(a,(Ie(),jt)),pe(a,(ye(),IR),(Pt(),!0)),u=t.Kc();u.Ob();)o=c(u.Pb(),10),l=new gc,Bo(l,o),Ji(l,Mt),pe(l,IR,!0),n=new c0,pe(n,IR,!0),Rr(n,a),br(n,l)}function SLt(e,t,n,i){var r,o,u,a;r=XHe(e,t,n),o=XHe(e,n,t),u=c(Bt(e.c,t),112),a=c(Bt(e.c,n),112),ri.b.g&&(o.c[o.c.length]=i);return o}function PE(){PE=Z,Kv=new lC("CANDIDATE_POSITION_LAST_PLACED_RIGHT",0),e3=new lC("CANDIDATE_POSITION_LAST_PLACED_BELOW",1),HP=new lC("CANDIDATE_POSITION_WHOLE_DRAWING_RIGHT",2),qP=new lC("CANDIDATE_POSITION_WHOLE_DRAWING_BELOW",3),zP=new lC("WHOLE_DRAWING",4)}function PLt(e,t){if(Q(t,239))return eAt(e,c(t,33));if(Q(t,186))return dAt(e,c(t,118));if(Q(t,354))return C5t(e,c(t,137));if(Q(t,352))return XBt(e,c(t,79));if(t)return null;throw V(new St(Afe+C1(new Js(U(G(xt,1),xe,1,5,[t])))))}function MLt(e){var t,n,i,r,o,u,a;for(o=new wi,r=new q(e.d.a);r.a1)for(t=Jb((n=new Cg,++e.b,n),e.d),a=Mn(o,0);a.b!=a.d.c;)u=c(Pn(a),121),$a(Aa(ja(Oa(Ta(new Zu,1),0),t),u))}function kse(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=11&&t){if(gE(e,t))throw V(new St(Y6+Jse(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?ace(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,10,i)),i=fte(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,11,t,t))}function CLt(e){var t,n,i,r;for(i=new Gg(new Pg(e.b).a);i.b;)n=g0(i),r=c(n.cd(),11),t=c(n.dd(),10),pe(t,(ye(),Hn),r),pe(r,As,t),pe(r,cj,(Pt(),!0)),Ji(r,c(B(t,Zo),61)),B(t,Zo),pe(r.i,(Oe(),ji),(wr(),k4)),c(B(Nr(r.i),Cc),21).Fc((to(),p4))}function ILt(e,t,n){var i,r,o,u,a,l;if(o=0,u=0,e.c)for(l=new q(e.d.i.j);l.ao.a?-1:r.al){for(p=e.d,e.d=oe(Jwe,Bfe,63,2*l+4,0,1),o=0;o=9223372036854776e3?(F_(),che):(r=!1,e<0&&(r=!0,e=-e),i=0,e>=nb&&(i=xi(e/nb),e-=i*nb),n=0,e>=T2&&(n=xi(e/T2),e-=n*T2),t=xi(e),o=Bc(t,n,i),r&&oK(o),o)}function NLt(e,t){var n,i,r,o;for(n=!t||!e.u.Hc((js(),Wh)),o=0,r=new q(e.e.Cf());r.a=-t&&i==t?new yr(Ce(n-1),Ce(i)):new yr(Ce(n),Ce(i-1))}function cWe(){return Jr(),U(G(Izt,1),_e,77,0,[e1e,Jde,hP,VG,v1e,Xk,cR,s4,w1e,u1e,b1e,c4,m1e,o1e,y1e,Vde,eR,GG,Wk,iR,E1e,nR,Gde,p1e,S1e,rR,_1e,Yk,n1e,d1e,h1e,sR,Yde,Uk,Qk,Wde,o4,l1e,c1e,g1e,dP,Qde,Xde,f1e,s1e,Zk,oR,Ude,tR,a1e,Jk,i1e,t1e,ej,Gk,r1e,Zde])}function KLt(e,t,n){e.d=0,e.b=0,t.k==(Dt(),Mc)&&n.k==Mc&&c(B(t,(ye(),Hn)),10)==c(B(n,Hn),10)&&(D$(t).j==(Ie(),_t)?VUe(e,t,n):VUe(e,n,t)),t.k==Mc&&n.k==ur?D$(t).j==(Ie(),_t)?e.d=1:e.b=1:n.k==Mc&&t.k==ur&&(D$(n).j==(Ie(),_t)?e.b=1:e.d=1),T8t(e,t,n)}function qLt(e){var t,n,i,r,o,u,a,l,d,p,v;return v=Dce(e),t=e.a,l=t!=null,l&&v_(v,"category",e.a),r=XM(new U3(e.d)),u=!r,u&&(d=new Eg,ul(v,"knownOptions",d),n=new Wje(d),Mr(new U3(e.d),n)),o=XM(e.g),a=!o,a&&(p=new Eg,ul(v,"supportedFeatures",p),i=new Yje(p),Mr(e.g,i)),v}function HLt(e){var t,n,i,r,o,u,a,l,d;for(i=!1,t=336,n=0,o=new uke(e.length),a=e,l=0,d=a.length;l>16!=7&&t){if(gE(e,t))throw V(new St(Y6+dGe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?oce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=c(t,49).gh(e,1,Hj,i)),i=ine(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,7,t,t))}function sWe(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=3&&t){if(gE(e,t))throw V(new St(Y6+EHe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?sce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=c(t,49).gh(e,0,Vj,i)),i=rne(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,t,t))}function $q(e,t){yE();var n,i,r,o,u,a,l,d,p;return t.d>e.d&&(a=e,e=t,t=a),t.d<63?kNt(e,t):(u=(e.d&-2)<<4,d=wie(e,u),p=wie(t,u),i=nH(e,c2(d,u)),r=nH(t,c2(p,u)),l=$q(d,p),n=$q(i,r),o=$q(nH(d,i),nH(r,p)),o=lH(lH(o,l),n),o=c2(o,u),l=c2(l,u<<1),lH(lH(l,o),n))}function VLt(e,t,n){var i,r,o,u,a;for(u=Q5(e,n),a=oe(nh,Ed,10,t.length,0,1),i=0,o=u.Kc();o.Ob();)r=c(o.Pb(),11),Be(Fe(B(r,(ye(),cj))))&&(a[i++]=c(B(r,As),10));if(i=0;o+=n?1:-1)u=u|t.c.Sf(l,o,n,i&&!Be(Fe(B(t.j,(ye(),Y0))))&&!Be(Fe(B(t.j,(ye(),kv))))),u=u|t.q._f(l,o,n),u=u|GWe(e,l[o],n,i);return Yi(e.c,t),u}function G7(e,t,n){var i,r,o,u,a,l,d,p,v,A;for(p=VNe(e.j),v=0,A=p.length;v1&&(e.a=!0),sSt(c(n.b,65),Wn(Wo(c(t.b,65).c),lf(hr(Wo(c(n.b,65).a),c(t.b,65).a),r))),oNe(e,t),uWe(e,n)}function aWe(e){var t,n,i,r,o,u,a;for(o=new q(e.a.a);o.a0&&o>0?u.p=t++:i>0?u.p=n++:o>0?u.p=r++:u.p=n++}st(),cr(e.j,new z_e)}function XLt(e){var t,n;n=null,t=c(Ne(e.g,0),17);do{if(n=t.d.i,nr(n,(ye(),da)))return c(B(n,da),11).i;if(n.k!=(Dt(),Ui)&&dn(new Kt(Ht(Vi(n).a.Kc(),new j))))t=c(rn(new Kt(Ht(Vi(n).a.Kc(),new j))),17);else if(n.k!=Ui)return null}while(n&&n.k!=(Dt(),Ui));return n}function JLt(e,t){var n,i,r,o,u,a,l,d,p;for(a=t.j,u=t.g,l=c(Ne(a,a.c.length-1),113),p=(pt(0,a.c.length),c(a.c[0],113)),d=oq(e,u,l,p),o=1;od&&(l=n,p=r,d=i);t.a=p,t.c=l}function QLt(e,t){var n,i;if(i=kC(e.b,t.b),!i)throw V(new Ao("Invalid hitboxes for scanline constraint calculation."));(pqe(t.b,c(Q3t(e.b,t.b),57))||pqe(t.b,c(J3t(e.b,t.b),57)))&&(Nf(),t.b+""),e.a[t.b.f]=c(nB(e.b,t.b),57),n=c(tB(e.b,t.b),57),n&&(e.a[n.f]=t.b)}function $a(e){if(!e.a.d||!e.a.e)throw V(new Ao((Sh(Cnt),Cnt.k+" must have a source and target "+(Sh(sde),sde.k)+" specified.")));if(e.a.d==e.a.e)throw V(new Ao("Network simplex does not support self-loops: "+e.a+" "+e.a.d+" "+e.a.e));return J9(e.a.d.g,e.a),J9(e.a.e.b,e.a),e.a}function ZLt(e,t,n){var i,r,o,u,a,l,d;for(d=new o1(new UTe(e)),u=U(G(drt,1),SQe,11,0,[t,n]),a=0,l=u.length;al-e.b&&al-e.a&&a0&&++D;++A}return D}function aNt(e,t){var n,i,r,o,u;for(u=c(B(t,(A0(),g0e)),425),o=Mn(t.b,0);o.b!=o.d.c;)if(r=c(Pn(o),86),e.b[r.g]==0){switch(u.g){case 0:Nze(e,r);break;case 1:fxt(e,r)}e.b[r.g]=2}for(i=Mn(e.a,0);i.b!=i.d.c;)n=c(Pn(i),188),nw(n.b.d,n,!0),nw(n.c.b,n,!0);pe(t,(ic(),s0e),e.a)}function qc(e,t){Wr();var n,i,r,o;return t?t==(Jn(),iht)||(t==Vft||t==Ib||t==zft)&&e!=Pme?new jue(e,t):(i=c(t,677),n=i.pk(),n||(C_(wo((vs(),Ir),t)),n=i.pk()),o=(!n.i&&(n.i=new en),n.i),r=c(Uo(Po(o.f,e)),1942),!r&&Kn(o,e,r=new jue(e,t)),r):Kft}function lNt(e,t){var n,i,r,o,u,a,l,d,p;for(l=c(B(e,(ye(),Hn)),11),d=Ko(U(G(ir,1),we,8,0,[l.i.n,l.n,l.a])).a,p=e.i.n.b,n=bf(e.e),r=n,o=0,u=r.length;o0?o.a?(a=o.b.rf().a,n>a&&(r=(n-a)/2,o.d.b=r,o.d.c=r)):o.d.c=e.s+n:M5(e.u)&&(i=kce(o.b),i.c<0&&(o.d.b=-i.c),i.c+i.b>o.b.rf().a&&(o.d.c=i.c+i.b-o.b.rf().a))}function gNt(e,t){var n,i,r,o;for(Wt(t,"Semi-Interactive Crossing Minimization Processor",1),n=!1,r=new q(e.b);r.a=0){if(t==n)return new yr(Ce(-t-1),Ce(-t-1));if(t==-n)return new yr(Ce(-t),Ce(n+1))}return g.Math.abs(t)>g.Math.abs(n)?t<0?new yr(Ce(-t),Ce(n)):new yr(Ce(-t),Ce(n+1)):new yr(Ce(t+1),Ce(n))}function wNt(e){var t,n;n=c(B(e,(Oe(),zc)),163),t=c(B(e,(ye(),gb)),303),n==(Ku(),K1)?(pe(e,zc,aj),pe(e,gb,(Oh(),Ov))):n==xw?(pe(e,zc,aj),pe(e,gb,(Oh(),z2))):t==(Oh(),Ov)?(pe(e,zc,K1),pe(e,gb,rj)):t==z2&&(pe(e,zc,xw),pe(e,gb,rj))}function U7(){U7=Z,mj=new OSe,hut=Nn(new tr,(Hr(),Hc),(Jr(),Wk)),but=Cs(Nn(new tr,Hc,nR),Io,tR),put=M0(M0(b9(Cs(Nn(new tr,Af,cR),Io,oR),Pc),rR),sR),dut=Cs(Nn(Nn(Nn(new tr,B1,Xk),Pc,Qk),Pc,o4),Io,Jk),gut=Cs(Nn(Nn(new tr,Pc,o4),Pc,Uk),Io,Gk)}function w6(){w6=Z,vut=Nn(Cs(new tr,(Hr(),Io),(Jr(),i1e)),Hc,Wk),Sut=M0(M0(b9(Cs(Nn(new tr,Af,cR),Io,oR),Pc),rR),sR),yut=Cs(Nn(Nn(Nn(new tr,B1,Xk),Pc,Qk),Pc,o4),Io,Jk),Eut=Nn(Nn(new tr,Hc,nR),Io,tR),_ut=Cs(Nn(Nn(new tr,Pc,o4),Pc,Uk),Io,Gk)}function mNt(e,t,n,i,r){var o,u;(!Kr(t)&&t.c.i.c==t.d.i.c||!PKe(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])),n))&&!Kr(t)&&(t.c==r?b_(t.a,0,new go(n)):Cn(t.a,new go(n)),i&&!_h(e.a,n)&&(u=c(B(t,(Oe(),yo)),74),u||(u=new ds,pe(t,yo,u)),o=new go(n),Ri(u,o,u.c.b,u.c),Yi(e.a,o)))}function vNt(e){var t,n;for(n=new Kt(Ht(ko(e).a.Kc(),new j));dn(n);)if(t=c(rn(n),17),t.c.i.k!=(Dt(),cu))throw V(new ym(Cz+LI(e)+"' has its layer constraint set to FIRST, but has at least one incoming edge that does not come from a FIRST_SEPARATE node. That must not happen."))}function yNt(e,t,n){var i,r,o,u,a,l,d;if(r=THe(e.Db&254),r==0)e.Eb=n;else{if(r==1)a=oe(xt,xe,1,2,5,1),o=rq(e,t),o==0?(a[0]=n,a[1]=e.Eb):(a[0]=e.Eb,a[1]=n);else for(a=oe(xt,xe,1,r+1,5,1),u=$g(e.Eb),i=2,l=0,d=0;i<=128;i<<=1)i==t?a[d++]=n:(e.Db&i)!=0&&(a[d++]=u[l++]);e.Eb=a}e.Db|=t}function fWe(e,t,n){var i,r,o,u;for(this.b=new Se,r=0,i=0,u=new q(e);u.a0&&(o=c(Ne(this.b,0),167),r+=o.o,i+=o.p),r*=2,i*=2,t>1?r=xi(g.Math.ceil(r*t)):i=xi(g.Math.ceil(i/t)),this.a=new Coe(r,i)}function hWe(e,t,n,i,r,o){var u,a,l,d,p,v,A,D,L,N,z,Y;for(p=i,t.j&&t.o?(D=c(Bt(e.f,t.A),57),N=D.d.c+D.d.b,--p):N=t.a.c+t.a.b,v=r,n.q&&n.o?(D=c(Bt(e.f,n.C),57),d=D.d.c,++v):d=n.a.c,z=d-N,l=g.Math.max(2,v-p),a=z/l,L=N+a,A=p;A=0;u+=r?1:-1){for(a=t[u],l=i==(Ie(),jt)?r?qo(a,i):Kg(qo(a,i)):r?Kg(qo(a,i)):qo(a,i),o&&(e.c[a.p]=l.gc()),v=l.Kc();v.Ob();)p=c(v.Pb(),11),e.d[p.p]=d++;Hi(n,l)}}function dWe(e,t,n){var i,r,o,u,a,l,d,p;for(o=ge(Te(e.b.Kc().Pb())),d=ge(Te(jTt(t.b))),i=lf(Wo(e.a),d-n),r=lf(Wo(t.a),n-o),p=Wn(i,r),lf(p,1/(d-o)),this.a=p,this.b=new Se,a=!0,u=e.b.Kc(),u.Pb();u.Ob();)l=ge(Te(u.Pb())),a&&l-n>cV&&(this.b.Fc(n),a=!1),this.b.Fc(l);a&&this.b.Fc(n)}function _Nt(e){var t,n,i,r;if(DFt(e,e.n),e.d.c.length>0){for(LS(e.c);mse(e,c(K(new q(e.e.a)),121))>5,t&=31,i>=e.d)return e.e<0?(T1(),gG):(T1(),t4);if(o=e.d-i,r=oe(Qt,_n,25,o+1,15,1),gkt(r,o,e.a,i,t),e.e<0){for(n=0;n0&&e.a[n]<<32-t!=0){for(n=0;n=0?!1:(n=uv((vs(),Ir),r,t),n?(i=n.Zj(),(i>1||i==-1)&&o0(wo(Ir,n))!=3):!0)):!1}function MNt(e,t,n,i){var r,o,u,a,l;return a=Co(c(ee((!t.b&&(t.b=new dt(Ut,t,4,7)),t.b),0),82)),l=Co(c(ee((!t.c&&(t.c=new dt(Ut,t,5,8)),t.c),0),82)),yi(a)==yi(l)||Jp(l,a)?null:(u=KC(t),u==n?i:(o=c(Bt(e.a,u),10),o&&(r=o.e,r)?r:null))}function CNt(e,t){var n;switch(n=c(B(e,(Oe(),RR)),276),Wt(t,"Label side selection ("+n+")",1),n.g){case 0:OUe(e,(mu(),rh));break;case 1:OUe(e,(mu(),U1));break;case 2:GYe(e,(mu(),rh));break;case 3:GYe(e,(mu(),U1));break;case 4:IWe(e,(mu(),rh));break;case 5:IWe(e,(mu(),U1))}qt(t)}function $se(e,t,n){var i,r,o,u,a,l;if(i=fyt(n,e.length),u=e[i],u[0].k==(Dt(),Bi))for(o=O9e(n,u.length),l=t.j,r=0;r0&&(n[0]+=e.d,u-=n[0]),n[2]>0&&(n[2]+=e.d,u-=n[2]),o=g.Math.max(0,u),n[1]=g.Math.max(n[1],u),vie(e,Nc,r.c+i.b+n[0]-(n[1]-u)/2,n),t==Nc&&(e.c.b=o,e.c.c=r.c+i.b+(o-u)/2)}function PWe(){this.c=oe(gr,lo,25,(Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])).length,15,1),this.b=oe(gr,lo,25,U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt]).length,15,1),this.a=oe(gr,lo,25,U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt]).length,15,1),jZ(this.c,Ii),jZ(this.b,$i),jZ(this.a,$i)}function _c(e,t,n){var i,r,o,u;if(t<=n?(r=t,o=n):(r=n,o=t),i=0,e.b==null)e.b=oe(Qt,_n,25,2,15,1),e.b[0]=r,e.b[1]=o,e.c=!0;else{if(i=e.b.length,e.b[i-1]+1==r){e.b[i-1]=o;return}u=oe(Qt,_n,25,i+2,15,1),bc(e.b,0,u,0,i),e.b=u,e.b[i-1]>=r&&(e.c=!1,e.a=!1),e.b[i++]=r,e.b[i]=o,e.c||tv(e)}}function RNt(e,t,n){var i,r,o,u,a,l,d;for(d=t.d,e.a=new Dc(d.c.length),e.c=new en,a=new q(d);a.a=0?e._g(d,!1,!0):j0(e,n,!1),58));e:for(o=v.Kc();o.Ob();){for(r=c(o.Pb(),56),p=0;p1;)hw(r,r.i-1);return i}function BNt(e,t){var n,i,r,o,u,a,l;for(Wt(t,"Comment post-processing",1),o=new q(e.b);o.ae.d[u.p]&&(n+=die(e.b,o),w1(e.a,Ce(o)));for(;!xS(e.a);)zie(e.b,c(Qy(e.a),19).a)}return n}function TWe(e,t,n){var i,r,o,u;for(o=(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i,r=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));r.e!=r.i.gc();)i=c(Vt(r),33),(!i.a&&(i.a=new Me(Ei,i,10,11)),i.a).i==0||(o+=TWe(e,i,!1));if(n)for(u=yi(t);u;)o+=(!u.a&&(u.a=new Me(Ei,u,10,11)),u.a).i,u=yi(u);return o}function hw(e,t){var n,i,r,o;return e.ej()?(i=null,r=e.fj(),e.ij()&&(i=e.kj(e.pi(t),null)),n=e.Zi(4,o=v2(e,t),null,t,r),e.bj()&&o!=null&&(i=e.dj(o,i)),i?(i.Ei(n),i.Fi()):e.$i(n),o):(o=v2(e,t),e.bj()&&o!=null&&(i=e.dj(o,null),i&&i.Fi()),o)}function KNt(e){var t,n,i,r,o,u,a,l,d,p;for(d=e.a,t=new er,l=0,i=new q(e.d);i.aa.d&&(p=a.d+a.a+d));n.c.d=p,t.a.zc(n,t),l=g.Math.max(l,n.c.d+n.c.a)}return l}function to(){to=Z,yR=new Op("COMMENTS",0),Gu=new Op("EXTERNAL_PORTS",1),mP=new Op("HYPEREDGES",2),_R=new Op("HYPERNODES",3),p4=new Op("NON_FREE_PORTS",4),Av=new Op("NORTH_SOUTH_PORTS",5),vP=new Op(qQe,6),g4=new Op("CENTER_LABELS",7),b4=new Op("END_LABELS",8),ER=new Op("PARTITIONS",9)}function dw(e){var t,n,i,r,o;for(r=new Se,t=new _5((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a)),i=new Kt(Ht(Fh(e).a.Kc(),new j));dn(i);)n=c(rn(i),79),Q(ee((!n.b&&(n.b=new dt(Ut,n,4,7)),n.b),0),186)||(o=Co(c(ee((!n.c&&(n.c=new dt(Ut,n,5,8)),n.c),0),82)),t.a._b(o)||(r.c[r.c.length]=o));return r}function qNt(e){var t,n,i,r,o,u;for(o=new er,t=new _5((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a)),r=new Kt(Ht(Fh(e).a.Kc(),new j));dn(r);)i=c(rn(r),79),Q(ee((!i.b&&(i.b=new dt(Ut,i,4,7)),i.b),0),186)||(u=Co(c(ee((!i.c&&(i.c=new dt(Ut,i,5,8)),i.c),0),82)),t.a._b(u)||(n=o.a.zc(u,o),n==null));return o}function HNt(e,t,n,i,r){return i<0?(i=ev(e,r,U(G(Re,1),we,2,6,[TH,jH,AH,OH,C2,DH,kH,RH,xH,LH,NH,FH]),t),i<0&&(i=ev(e,r,U(G(Re,1),we,2,6,["Jan","Feb","Mar","Apr",C2,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),t)),i<0?!1:(n.k=i,!0)):i>0?(n.k=i-1,!0):!1}function zNt(e,t,n,i,r){return i<0?(i=ev(e,r,U(G(Re,1),we,2,6,[TH,jH,AH,OH,C2,DH,kH,RH,xH,LH,NH,FH]),t),i<0&&(i=ev(e,r,U(G(Re,1),we,2,6,["Jan","Feb","Mar","Apr",C2,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),t)),i<0?!1:(n.k=i,!0)):i>0?(n.k=i-1,!0):!1}function VNt(e,t,n,i,r,o){var u,a,l,d;if(a=32,i<0){if(t[0]>=e.length||(a=Pr(e,t[0]),a!=43&&a!=45)||(++t[0],i=B7(e,t),i<0))return!1;a==45&&(i=-i)}return a==32&&t[0]-n==2&&r.b==2&&(l=new u9,d=l.q.getFullYear()-O1+O1-80,u=d%100,o.a=i==u,i+=(d/100|0)*100+(i=d&&(l=i);l&&(p=g.Math.max(p,l.a.o.a)),p>A&&(v=d,A=p)}return v}function WNt(e,t,n){var i,r,o;if(e.e=n,e.d=0,e.b=0,e.f=1,e.i=t,(e.e&16)==16&&(e.i=RFt(e.i)),e.j=e.i.length,xn(e),o=P0(e),e.d!=e.j)throw V(new an(gn((un(),fet))));if(e.g){for(i=0;ifZe?cr(l,e.b):i<=fZe&&i>hZe?cr(l,e.d):i<=hZe&&i>dZe?cr(l,e.c):i<=dZe&&cr(l,e.a),o=DWe(e,l,o);return r}function T1(){T1=Z;var e;for(Ck=new ld(1,1),bG=new ld(1,10),t4=new ld(0,0),gG=new ld(-1,1),Che=U(G(Ev,1),we,91,0,[t4,Ck,new ld(1,2),new ld(1,3),new ld(1,4),new ld(1,5),new ld(1,6),new ld(1,7),new ld(1,8),new ld(1,9),bG]),Ik=oe(Ev,we,91,32,0,1),e=0;e1,a&&(i=new $e(r,n.b),Cn(t.a,i)),q5(t.a,U(G(ir,1),we,8,0,[A,v]))}function NWe(e){Gb(e,new Zg(qb(Bb(Kb($b(new _g,ZD),"ELK Randomizer"),'Distributes the nodes randomly on the plane, leading to very obfuscating layouts. Can be useful to demonstrate the power of "real" layout algorithms.'),new l6e))),je(e,ZD,N0,Lwe),je(e,ZD,_w,15),je(e,ZD,MD,Ce(0)),je(e,ZD,D2,KE)}function Hse(){Hse=Z;var e,t,n,i,r,o;for(fM=oe(Ps,vv,25,255,15,1),Vx=oe(Yu,vf,25,16,15,1),t=0;t<255;t++)fM[t]=-1;for(n=57;n>=48;n--)fM[n]=n-48<<24>>24;for(i=70;i>=65;i--)fM[i]=i-65+10<<24>>24;for(r=102;r>=97;r--)fM[r]=r-97+10<<24>>24;for(o=0;o<10;o++)Vx[o]=48+o&Ni;for(e=10;e<=15;e++)Vx[e]=65+e-10&Ni}function Y7(e,t,n){var i,r,o,u,a,l,d,p;return a=t.i-e.g/2,l=n.i-e.g/2,d=t.j-e.g/2,p=n.j-e.g/2,o=t.g+e.g/2,u=n.g+e.g/2,i=t.f+e.g/2,r=n.f+e.g/2,a>19!=0)return"-"+FWe(Z_(e));for(n=e,i="";!(n.l==0&&n.m==0&&n.h==0);){if(r=_$(pD),n=_ue(n,r,!0),t=""+X9e(L1),!(n.l==0&&n.m==0&&n.h==0))for(o=9-t.length;o>0;o--)t="0"+t;i=t+i}return i}function eFt(){if(!Object.create||!Object.getOwnPropertyNames)return!1;var e="__proto__",t=Object.create(null);if(t[e]!==void 0)return!1;var n=Object.getOwnPropertyNames(t);return!(n.length!=0||(t[e]=42,t[e]!==42)||Object.getOwnPropertyNames(t).length==0)}function tFt(e){var t,n,i,r,o,u,a;for(t=!1,n=0,r=new q(e.d.b);r.a=e.a||!Ace(t,n))return-1;if(O_(c(i.Kb(t),20)))return 1;for(r=0,u=c(i.Kb(t),20).Kc();u.Ob();)if(o=c(u.Pb(),17),l=o.c.i==t?o.d.i:o.c.i,a=Vse(e,l,n,i),a==-1||(r=g.Math.max(r,a),r>e.c-1))return-1;return r+1}function BWe(e,t){var n,i,r,o,u,a;if(le(t)===le(e))return!0;if(!Q(t,15)||(i=c(t,15),a=e.gc(),i.gc()!=a))return!1;if(u=i.Kc(),e.ni()){for(n=0;n0){if(e.qj(),t!=null){for(o=0;o>24;case 97:case 98:case 99:case 100:case 101:case 102:return e-97+10<<24>>24;case 65:case 66:case 67:case 68:case 69:case 70:return e-65+10<<24>>24;default:throw V(new uf("Invalid hexadecimal"))}}function oFt(e,t,n){var i,r,o,u;for(Wt(n,"Processor order nodes",2),e.a=ge(Te(B(t,(A0(),b0e)))),r=new wi,u=Mn(t.b,0);u.b!=u.d.c;)o=c(Pn(u),86),Be(Fe(B(o,(ic(),Gw))))&&Ri(r,o,r.c.b,r.c);i=(Lt(r.b!=0),c(r.a.a.c,86)),oXe(e,i),!n.b&&G$(n,1),Xse(e,i,0-ge(Te(B(i,(ic(),ix))))/2,0),!n.b&&G$(n,1),qt(n)}function X7(){X7=Z,ode=new Pm("SPIRAL",0),tde=new Pm("LINE_BY_LINE",1),nde=new Pm("MANHATTAN",2),ede=new Pm("JITTER",3),_G=new Pm("QUADRANTS_LINE_BY_LINE",4),rde=new Pm("QUADRANTS_MANHATTAN",5),ide=new Pm("QUADRANTS_JITTER",6),Zhe=new Pm("COMBINE_LINE_BY_LINE_MANHATTAN",7),Qhe=new Pm("COMBINE_JITTER_MANHATTAN",8)}function KWe(e,t,n,i){var r,o,u,a,l,d;for(l=lq(e,n),d=lq(t,n),r=!1;l&&d&&(i||tOt(l,d,n));)u=lq(l,n),a=lq(d,n),tI(t),tI(e),o=l.c,gH(l,!1),gH(d,!1),n?(cw(t,d.p,o),t.p=d.p,cw(e,l.p+1,o),e.p=l.p):(cw(e,l.p,o),e.p=l.p,cw(t,d.p+1,o),t.p=d.p),po(l,null),po(d,null),l=u,d=a,r=!0;return r}function cFt(e,t,n,i){var r,o,u,a,l;for(r=!1,o=!1,a=new q(i.j);a.a=t.length)throw V(new ho("Greedy SwitchDecider: Free layer not in graph."));this.c=t[e],this.e=new IC(i),X$(this.e,this.c,(Ie(),Mt)),this.i=new IC(i),X$(this.i,this.c,jt),this.f=new BRe(this.c),this.a=!o&&r.i&&!r.s&&this.c[0].k==(Dt(),Bi),this.a&&Skt(this,e,t.length)}function HWe(e,t){var n,i,r,o,u,a;o=!e.B.Hc((Ks(),Kj)),u=e.B.Hc(oY),e.a=new FHe(u,o,e.c),e.n&&xne(e.a.n,e.n),HN(e.g,(al(),Nc),e.a),t||(i=new r6(1,o,e.c),i.n.a=e.k,Xy(e.p,(Ie(),_t),i),r=new r6(1,o,e.c),r.n.d=e.k,Xy(e.p,Yt,r),a=new r6(0,o,e.c),a.n.c=e.k,Xy(e.p,Mt,a),n=new r6(0,o,e.c),n.n.b=e.k,Xy(e.p,jt,n))}function uFt(e){var t,n,i;switch(t=c(B(e.d,(Oe(),zh)),218),t.g){case 2:n=FHt(e);break;case 3:n=(i=new Se,Di(si(Yc($o($o(new ht(null,new bt(e.d.b,16)),new c4e),new s4e),new u4e),new UEe),new STe(i)),i);break;default:throw V(new Ao("Compaction not supported for "+t+" edges."))}cKt(e,n),Mr(new U3(e.g),new _Te(e))}function aFt(e,t){var n;return n=new bN,t&&Mo(n,c(Bt(e.a,Hj),94)),Q(t,470)&&Mo(n,c(Bt(e.a,zj),94)),Q(t,354)?(Mo(n,c(Bt(e.a,Lo),94)),n):(Q(t,82)&&Mo(n,c(Bt(e.a,Ut),94)),Q(t,239)?(Mo(n,c(Bt(e.a,Ei),94)),n):Q(t,186)?(Mo(n,c(Bt(e.a,Vs),94)),n):(Q(t,352)&&Mo(n,c(Bt(e.a,rr),94)),n))}function dl(){dl=Z,r4=new Yr((kn(),Sx),Ce(1)),Kk=new Yr(Pb,80),Lit=new Yr(dwe,5),Iit=new Yr(n3,KE),Rit=new Yr(eY,Ce(1)),xit=new Yr(tY,(Pt(),!0)),Ede=new Yb(50),Dit=new Yr(Sb,Ede),vde=yx,Sde=UP,Tit=new Yr(VW,!1),_de=kj,Oit=G1,Ait=Eb,jit=zv,kit=Uw,yde=(Hce(),yit),kG=Pit,$k=vit,DG=_it,Pde=Sit}function lFt(e){var t,n,i,r,o,u,a,l;for(l=new VFe,a=new q(e.a);a.a0&&t=0)return!1;if(t.p=n.b,Ee(n.e,t),r==(Dt(),ur)||r==Mc){for(u=new q(t.j);u.a1||u==-1)&&(o|=16),(r.Bb&rc)!=0&&(o|=64)),(n.Bb&Vr)!=0&&(o|=Iw),o|=Ka):Q(t,457)?o|=512:(i=t.Bj(),i&&(i.i&1)!=0&&(o|=256)),(e.Bb&512)!=0&&(o|=128),o}function m6(e,t){var n,i,r,o,u;for(e=e==null?rs:(yt(e),e),r=0;re.d[a.p]&&(n+=die(e.b,o),w1(e.a,Ce(o)))):++u;for(n+=e.b.d*u;!xS(e.a);)zie(e.b,c(Qy(e.a),19).a)}return n}function vFt(e,t){var n;return e.f==wY?(n=o0(wo((vs(),Ir),t)),e.e?n==4&&t!=(E2(),a3)&&t!=(E2(),u3)&&t!=(E2(),mY)&&t!=(E2(),vY):n==2):e.d&&(e.d.Hc(t)||e.d.Hc(r2(wo((vs(),Ir),t)))||e.d.Hc(uv((vs(),Ir),e.b,t)))?!0:e.f&&Rse((vs(),e.f),LC(wo(Ir,t)))?(n=o0(wo(Ir,t)),e.e?n==4:n==2):!1}function yFt(e,t,n,i){var r,o,u,a,l,d,p,v;return u=c(Ke(n,(kn(),i3)),8),l=u.a,p=u.b+e,r=g.Math.atan2(p,l),r<0&&(r+=pv),r+=t,r>pv&&(r-=pv),a=c(Ke(i,i3),8),d=a.a,v=a.b+e,o=g.Math.atan2(v,d),o<0&&(o+=pv),o+=t,o>pv&&(o-=pv),Il(),Na(1e-10),g.Math.abs(r-o)<=1e-10||r==o||isNaN(r)&&isNaN(o)?0:ro?1:Wb(isNaN(r),isNaN(o))}function Vq(e){var t,n,i,r,o,u,a;for(a=new en,i=new q(e.a.b);i.a=e.o)throw V(new RQ);a=t>>5,u=t&31,o=Ph(1,tn(Ph(u,1))),r?e.n[n][a]=Dl(e.n[n][a],o):e.n[n][a]=Xi(e.n[n][a],Bte(o)),o=Ph(o,1),i?e.n[n][a]=Dl(e.n[n][a],o):e.n[n][a]=Xi(e.n[n][a],Bte(o))}catch(l){throw l=gi(l),Q(l,320)?V(new ho(hz+e.o+"*"+e.p+dz+t+zr+n+gz)):V(l)}}function Xse(e,t,n,i){var r,o,u;t&&(o=ge(Te(B(t,(ic(),Ad))))+i,u=n+ge(Te(B(t,ix)))/2,pe(t,wW,Ce(tn(ns(g.Math.round(o))))),pe(t,u0e,Ce(tn(ns(g.Math.round(u))))),t.d.b==0||Xse(e,c(G9((r=Mn(new t1(t).a.d,0),new Dy(r))),86),n+ge(Te(B(t,ix)))+e.a,i+ge(Te(B(t,C4)))),B(t,pW)!=null&&Xse(e,c(B(t,pW),86),n,i))}function EFt(e,t){var n,i,r,o,u,a,l,d,p,v,A;for(l=Nr(t.a),r=ge(Te(B(l,(Oe(),vb))))*2,p=ge(Te(B(l,Nv))),d=g.Math.max(r,p),o=oe(gr,lo,25,t.f-t.c+1,15,1),i=-d,n=0,a=t.b.Kc();a.Ob();)u=c(a.Pb(),10),i+=e.a[u.c.p]+d,o[n++]=i;for(i+=e.a[t.a.c.p]+d,o[n++]=i,A=new q(t.e);A.a0&&(i=(!e.n&&(e.n=new Me(Lo,e,1,7)),c(ee(e.n,0),137)).a,!i||wn(wn((t.a+=' "',t),i),'"'))),wn(zb(wn(zb(wn(zb(wn(zb((t.a+=" (",t),e.i),","),e.j)," | "),e.g),","),e.f),")"),t.a)}function ZWe(e){var t,n,i;return(e.Db&64)!=0?_q(e):(t=new lu(_fe),n=e.k,n?wn(wn((t.a+=' "',t),n),'"'):(!e.n&&(e.n=new Me(Lo,e,1,7)),e.n.i>0&&(i=(!e.n&&(e.n=new Me(Lo,e,1,7)),c(ee(e.n,0),137)).a,!i||wn(wn((t.a+=' "',t),i),'"'))),wn(zb(wn(zb(wn(zb(wn(zb((t.a+=" (",t),e.i),","),e.j)," | "),e.g),","),e.f),")"),t.a)}function Uq(e,t){var n,i,r,o,u,a,l;if(t==null||t.length==0)return null;if(r=c(mc(e.a,t),149),!r){for(i=(a=new yh(e.b).a.vc().Kc(),new Cp(a));i.a.Ob();)if(n=(o=c(i.a.Pb(),42),c(o.dd(),149)),u=n.c,l=t.length,rt(u.substr(u.length-l,l),t)&&(t.length==u.length||Pr(u,u.length-t.length-1)==46)){if(r)return null;r=n}r&&bo(e.a,t,r)}return r}function MFt(e,t){var n,i,r,o;return n=new E2e,i=c(gu(Yc(new ht(null,new bt(e.f,16)),n),Wp(new Rs,new xs,new Mp,new ed,U(G(Hs,1),_e,132,0,[(Fl(),Tw),Su]))),21),r=i.gc(),i=c(gu(Yc(new ht(null,new bt(t.f,16)),n),Wp(new Rs,new xs,new Mp,new ed,U(G(Hs,1),_e,132,0,[Tw,Su]))),21),o=i.gc(),rr.p?(Ji(o,Yt),o.d&&(a=o.o.b,t=o.a.b,o.a.b=a-t)):o.j==Yt&&r.p>e.p&&(Ji(o,_t),o.d&&(a=o.o.b,t=o.a.b,o.a.b=-(a-t)));break}return r}function IFt(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L;if(o=n,n1,a&&(i=new $e(r,n.b),Cn(t.a,i)),q5(t.a,U(G(ir,1),we,8,0,[A,v]))}function Wq(e,t,n){var i,r,o,u,a,l;if(t)if(n<=-1){if(i=at(t.Tg(),-1-n),Q(i,99))return c(i,18);for(u=c(t.ah(i),153),a=0,l=u.gc();a0){for(r=l.length;r>0&&l[r-1]=="";)--r;r=40,u&&FBt(e),q$t(e),_Nt(e),n=PHe(e),i=0;n&&i0&&Cn(e.f,o)):(e.c[u]-=d+1,e.c[u]<=0&&e.a[u]>0&&Cn(e.e,o))))}function ZFt(e){var t,n,i,r,o,u,a,l,d;for(a=new o1(c(nn(new P2e),62)),d=$i,n=new q(e.d);n.a=0&&ln?t:n;d<=v;++d)d==n?a=i++:(o=r[d],p=L.rl(o.ak()),d==t&&(l=d==v&&!p?i-1:i),p&&++i);return A=c(t6(e,t,n),72),a!=l&&Q3(e,new QC(e.e,7,u,Ce(a),D.dd(),l)),A}}else return c(Aq(e,t,n),72);return c(t6(e,t,n),72)}function iBt(e,t){var n,i,r,o,u,a,l;for(Wt(t,"Port order processing",1),l=c(B(e,(Oe(),vbe)),421),i=new q(e.b);i.a=0&&(a=cOt(e,u),!(a&&(d<22?l.l|=1<>>1,u.m=p>>>1|(v&1)<<21,u.l=A>>>1|(p&1)<<21,--d;return n&&oK(l),o&&(i?(L1=Z_(e),r&&(L1=hqe(L1,(F_(),she)))):L1=Bc(e.l,e.m,e.h)),l}function cBt(e,t){var n,i,r,o,u,a,l,d,p,v;for(d=e.e[t.c.p][t.p]+1,l=t.c.a.c.length+1,a=new q(e.a);a.a0&&(fn(0,e.length),e.charCodeAt(0)==45||(fn(0,e.length),e.charCodeAt(0)==43))?1:0,i=u;in)throw V(new uf(L0+e+'"'));return a}function sBt(e){var t,n,i,r,o,u,a;for(u=new wi,o=new q(e.a);o.a1)&&t==1&&c(e.a[e.b],10).k==(Dt(),cu)?P2(c(e.a[e.b],10),(mu(),rh)):i&&(!n||(e.c-e.b&e.a.length-1)>1)&&t==1&&c(e.a[e.c-1&e.a.length-1],10).k==(Dt(),cu)?P2(c(e.a[e.c-1&e.a.length-1],10),(mu(),U1)):(e.c-e.b&e.a.length-1)==2?(P2(c(Y5(e),10),(mu(),rh)),P2(c(Y5(e),10),U1)):tLt(e,r),fie(e)}function lBt(e,t,n){var i,r,o,u,a;for(o=0,r=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));r.e!=r.i.gc();)i=c(Vt(r),33),u="",(!i.n&&(i.n=new Me(Lo,i,1,7)),i.n).i==0||(u=c(ee((!i.n&&(i.n=new Me(Lo,i,1,7)),i.n),0),137).a),a=new uK(o++,t,u),Mo(a,i),pe(a,(ic(),$P),i),a.e.b=i.j+i.f/2,a.f.a=g.Math.max(i.g,1),a.e.a=i.i+i.g/2,a.f.b=g.Math.max(i.f,1),Cn(t.b,a),Kc(n.f,i,a)}function fBt(e){var t,n,i,r,o;i=c(B(e,(ye(),Hn)),33),o=c(Ke(i,(Oe(),wb)),174).Hc((ou(),Cb)),e.e||(r=c(B(e,Cc),21),t=new $e(e.f.a+e.d.b+e.d.c,e.f.b+e.d.d+e.d.a),r.Hc((to(),Gu))?(ao(i,ji,(wr(),Ic)),k0(i,t.a,t.b,!1,!0)):Be(Fe(Ke(i,$U)))||k0(i,t.a,t.b,!0,!0)),o?ao(i,wb,nt(Cb)):ao(i,wb,(n=c(rl(tM),9),new ku(n,c(Da(n,n.length),9),0)))}function rue(e,t,n){var i,r,o,u;if(t[0]>=e.length)return n.o=0,!0;switch(Pr(e,t[0])){case 43:r=1;break;case 45:r=-1;break;default:return n.o=0,!0}if(++t[0],o=t[0],u=B7(e,t),u==0&&t[0]==o)return!1;if(t[0]=0&&a!=n&&(o=new sr(e,1,a,u,null),i?i.Ei(o):i=o),n>=0&&(o=new sr(e,1,n,a==n?u:null,t),i?i.Ei(o):i=o)),i}function wYe(e){var t,n,i;if(e.b==null){if(i=new nd,e.i!=null&&(co(i,e.i),i.a+=":"),(e.f&256)!=0){for((e.f&256)!=0&&e.a!=null&&(I5t(e.i)||(i.a+="//"),co(i,e.a)),e.d!=null&&(i.a+="/",co(i,e.d)),(e.f&16)!=0&&(i.a+="/"),t=0,n=e.j.length;tA?!1:(v=(l=P6(i,A,!1),l.a),p+a+v<=t.b&&(JC(n,o-n.s),n.c=!0,JC(i,o-n.s),kI(i,n.s,n.t+n.d+a),i.k=!0,pre(n.q,i),D=!0,r&&(OO(t,i),i.j=t,e.c.length>u&&(FI((pt(u,e.c.length),c(e.c[u],200)),i),(pt(u,e.c.length),c(e.c[u],200)).a.c.length==0&&ad(e,u)))),D)}function vBt(e,t){var n,i,r,o,u,a;if(Wt(t,"Partition midprocessing",1),r=new u0,Di(si(new ht(null,new bt(e.a,16)),new G_e),new sTe(r)),r.d!=0){for(a=c(gu(lNe((o=r.i,new ht(null,(o||(r.i=new Dm(r,r.c))).Nc()))),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),i=a.Kc(),n=c(i.Pb(),19);i.Ob();)u=c(i.Pb(),19),ELt(c(Vn(r,n),21),c(Vn(r,u),21)),n=u;qt(t)}}function yYe(e,t,n){var i,r,o,u,a,l,d,p;if(t.p==0){for(t.p=1,u=n,u||(r=new Se,o=(i=c(rl(Gr),9),new ku(i,c(Da(i,i.length),9),0)),u=new yr(r,o)),c(u.a,15).Fc(t),t.k==(Dt(),Bi)&&c(u.b,21).Fc(c(B(t,(ye(),Zo)),61)),l=new q(t.j);l.a0){if(r=c(e.Ab.g,1934),t==null){for(o=0;o1)for(i=new q(r);i.an.s&&aa&&(a=r,p.c=oe(xt,xe,1,0,5,1)),r==a&&Ee(p,new yr(n.c.i,n)));st(),cr(p,e.c),Bp(e.b,l.p,p)}}function MBt(e,t){var n,i,r,o,u,a,l,d,p;for(u=new q(t.b);u.aa&&(a=r,p.c=oe(xt,xe,1,0,5,1)),r==a&&Ee(p,new yr(n.d.i,n)));st(),cr(p,e.c),Bp(e.f,l.p,p)}}function EYe(e){Gb(e,new Zg(qb(Bb(Kb($b(new _g,$0),"ELK Box"),"Algorithm for packing of unconnected boxes, i.e. graphs without edges."),new X5e))),je(e,$0,N0,xpe),je(e,$0,_w,15),je(e,$0,ST,Ce(0)),je(e,$0,XD,Le(Dpe)),je(e,$0,gv,Le(blt)),je(e,$0,k2,Le(plt)),je(e,$0,D2,yZe),je(e,$0,PT,Le(kpe)),je(e,$0,R2,Le(Rpe)),je(e,$0,bfe,Le(KW)),je(e,$0,zD,Le(glt))}function SYe(e,t){var n,i,r,o,u,a,l,d,p;if(r=e.i,u=r.o.a,o=r.o.b,u<=0&&o<=0)return Ie(),Vo;switch(d=e.n.a,p=e.n.b,a=e.o.a,n=e.o.b,t.g){case 2:case 1:if(d<0)return Ie(),Mt;if(d+a>u)return Ie(),jt;break;case 4:case 3:if(p<0)return Ie(),_t;if(p+n>o)return Ie(),Yt}return l=(d+a/2)/u,i=(p+n/2)/o,l+i<=1&&l-i<=0?(Ie(),Mt):l+i>=1&&l-i>=0?(Ie(),jt):i<.5?(Ie(),_t):(Ie(),Yt)}function CBt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(n=!1,p=ge(Te(B(t,(Oe(),np)))),L=A1*p,r=new q(t.b);r.al+L&&(N=v.g+A.g,A.a=(A.g*A.a+v.g*v.a)/N,A.g=N,v.f=A,n=!0)),o=a,v=A;return n}function PYe(e,t,n,i,r,o,u){var a,l,d,p,v,A;for(A=new zy,d=t.Kc();d.Ob();)for(a=c(d.Pb(),839),v=new q(a.wf());v.a0?a.a?(d=a.b.rf().b,r>d&&(e.v||a.c.d.c.length==1?(u=(r-d)/2,a.d.d=u,a.d.a=u):(n=c(Ne(a.c.d,0),181).rf().b,i=(n-d)/2,a.d.d=g.Math.max(0,i),a.d.a=r-i-d))):a.d.a=e.t+r:M5(e.u)&&(o=kce(a.b),o.d<0&&(a.d.d=-o.d),o.d+o.a>a.b.rf().b&&(a.d.a=o.d+o.a-a.b.rf().b))}function jBt(e,t){var n;switch(oI(e)){case 6:return fr(t);case 7:return kp(t);case 8:return Dp(t);case 3:return Array.isArray(t)&&(n=oI(t),!(n>=14&&n<=16));case 11:return t!=null&&typeof t===EH;case 12:return t!=null&&(typeof t===aT||typeof t==EH);case 0:return VK(t,e.__elementTypeId$);case 2:return jB(t)&&t.im!==ct;case 1:return jB(t)&&t.im!==ct||VK(t,e.__elementTypeId$);default:return!0}}function MYe(e,t){var n,i,r,o;return i=g.Math.min(g.Math.abs(e.c-(t.c+t.b)),g.Math.abs(e.c+e.b-t.c)),o=g.Math.min(g.Math.abs(e.d-(t.d+t.a)),g.Math.abs(e.d+e.a-t.d)),n=g.Math.abs(e.c+e.b/2-(t.c+t.b/2)),n>e.b/2+t.b/2||(r=g.Math.abs(e.d+e.a/2-(t.d+t.a/2)),r>e.a/2+t.a/2)?1:n==0&&r==0?0:n==0?o/r+1:r==0?i/n+1:g.Math.min(i/n,o/r)+1}function CYe(e,t){var n,i,r,o,u,a;return r=ere(e),a=ere(t),r==a?e.e==t.e&&e.a<54&&t.a<54?e.ft.f?1:0:(i=e.e-t.e,n=(e.d>0?e.d:g.Math.floor((e.a-1)*NJe)+1)-(t.d>0?t.d:g.Math.floor((t.a-1)*NJe)+1),n>i+1?r:n0&&(u=Fm(u,WYe(i))),rze(o,u))):r0&&e.d!=($5(),LG)&&(a+=u*(i.d.a+e.a[t.b][i.b]*(t.d.a-i.d.a)/n)),n>0&&e.d!=($5(),RG)&&(l+=u*(i.d.b+e.a[t.b][i.b]*(t.d.b-i.d.b)/n)));switch(e.d.g){case 1:return new $e(a/o,t.d.b);case 2:return new $e(t.d.a,l/o);default:return new $e(a/o,l/o)}}function IYe(e,t){iE();var n,i,r,o,u;if(u=c(B(e.i,(Oe(),ji)),98),o=e.j.g-t.j.g,o!=0||!(u==(wr(),Mb)||u==ch||u==Ic))return 0;if(u==(wr(),Mb)&&(n=c(B(e,Td),19),i=c(B(t,Td),19),n&&i&&(r=n.a-i.a,r!=0)))return r;switch(e.j.g){case 1:return zi(e.n.a,t.n.a);case 2:return zi(e.n.b,t.n.b);case 3:return zi(t.n.a,e.n.a);case 4:return zi(t.n.b,e.n.b);default:throw V(new Ao(Pae))}}function TYe(e){var t,n,i,r,o,u;for(n=(!e.a&&(e.a=new qi(ma,e,5)),e.a).i+2,u=new Dc(n),Ee(u,new $e(e.j,e.k)),Di(new ht(null,(!e.a&&(e.a=new qi(ma,e,5)),new bt(e.a,16))),new Eje(u)),Ee(u,new $e(e.b,e.c)),t=1;t0&&(vI(l,!1,(eo(),ga)),vI(l,!0,Va)),Zc(t.g,new vOe(e,n)),Kn(e.g,t,n)}function AYe(){AYe=Z;var e;for(bhe=U(G(Qt,1),_n,25,15,[-1,-1,30,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5]),hG=oe(Qt,_n,25,37,15,1),ent=U(G(Qt,1),_n,25,15,[-1,-1,63,40,32,28,25,23,21,20,19,19,18,18,17,17,16,16,16,15,15,15,15,14,14,14,14,14,14,13,13,13,13,13,13,13,13]),phe=oe(rg,WH,25,37,14,1),e=2;e<=36;e++)hG[e]=xi(g.Math.pow(e,bhe[e])),phe[e]=BI(dD,hG[e])}function OBt(e){var t;if((!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i!=1)throw V(new St(BZe+(!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i));return t=new ds,wI(c(ee((!e.b&&(e.b=new dt(Ut,e,4,7)),e.b),0),82))&&qr(t,hJe(e,wI(c(ee((!e.b&&(e.b=new dt(Ut,e,4,7)),e.b),0),82)),!1)),wI(c(ee((!e.c&&(e.c=new dt(Ut,e,5,8)),e.c),0),82))&&qr(t,hJe(e,wI(c(ee((!e.c&&(e.c=new dt(Ut,e,5,8)),e.c),0),82)),!0)),t}function OYe(e,t){var n,i,r,o,u;for(t.d?r=e.a.c==(gf(),ip)?ko(t.b):Vi(t.b):r=e.a.c==(gf(),jd)?ko(t.b):Vi(t.b),o=!1,i=new Kt(Ht(r.a.Kc(),new j));dn(i);)if(n=c(rn(i),17),u=Be(e.a.f[e.a.g[t.b.p].p]),!(!u&&!Kr(n)&&n.c.i.c==n.d.i.c)&&!(Be(e.a.n[e.a.g[t.b.p].p])||Be(e.a.n[e.a.g[t.b.p].p]))&&(o=!0,_h(e.b,e.a.g[K8t(n,t.b).p])))return t.c=!0,t.a=n,t;return t.c=o,t.a=null,t}function DBt(e,t,n,i,r){var o,u,a,l,d,p,v;for(st(),cr(e,new s6e),a=new _r(e,0),v=new Se,o=0;a.bo*2?(p=new TO(v),d=ws(u)/eu(u),l=mH(p,t,new Ry,n,i,r,d),Wn(ol(p.e),l),v.c=oe(xt,xe,1,0,5,1),o=0,v.c[v.c.length]=p,v.c[v.c.length]=u,o=ws(p)*eu(p)+ws(u)*eu(u)):(v.c[v.c.length]=u,o+=ws(u)*eu(u));return v}function cue(e,t,n){var i,r,o,u,a,l,d;if(i=n.gc(),i==0)return!1;if(e.ej())if(l=e.fj(),_oe(e,t,n),u=i==1?e.Zi(3,null,n.Kc().Pb(),t,l):e.Zi(5,null,n,t,l),e.bj()){for(a=i<100?null:new i1(i),o=t+i,r=t;r0){for(u=0;u>16==-15&&e.Cb.nh()&&R$(new A$(e.Cb,9,13,n,e.c,wd(Ns(c(e.Cb,59)),e))):Q(e.Cb,88)&&e.Db>>16==-23&&e.Cb.nh()&&(t=e.c,Q(t,88)||(t=(ot(),Ea)),Q(n,88)||(n=(ot(),Ea)),R$(new A$(e.Cb,9,10,n,t,wd(dc(c(e.Cb,26)),e)))))),e.c}function kBt(e,t){var n,i,r,o,u,a,l,d,p,v;for(Wt(t,"Hypernodes processing",1),r=new q(e.b);r.an);return r}function kYe(e,t){var n,i,r;i=$s(e.d,1)!=0,!Be(Fe(B(t.j,(ye(),Y0))))&&!Be(Fe(B(t.j,kv)))||le(B(t.j,(Oe(),q1)))===le((kh(),H1))?t.c.Tf(t.e,i):i=Be(Fe(B(t.j,Y0))),ZI(e,t,i,!0),Be(Fe(B(t.j,kv)))&&pe(t.j,kv,(Pt(),!1)),Be(Fe(B(t.j,Y0)))&&(pe(t.j,Y0,(Pt(),!1)),pe(t.j,kv,!0)),n=Cq(e,t);do{if(hre(e),n==0)return 0;i=!i,r=n,ZI(e,t,i,!1),n=Cq(e,t)}while(r>n);return r}function RYe(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L;if(t==n)return!0;if(t=pse(e,t),n=pse(e,n),i=QK(t),i){if(p=QK(n),p!=i)return p?(l=i.Dj(),L=p.Dj(),l==L&&l!=null):!1;if(u=(!t.d&&(t.d=new qi(oo,t,1)),t.d),o=u.i,A=(!n.d&&(n.d=new qi(oo,n,1)),n.d),o==A.i){for(d=0;d0,a=u7(t,o),Nee(n?a.b:a.g,t),Gm(a).c.length==1&&Ri(i,a,i.c.b,i.c),r=new yr(o,t),w1(e.o,r),Jc(e.e.a,o))}function FYe(e,t){var n,i,r,o,u,a,l;return i=g.Math.abs(C8(e.b).a-C8(t.b).a),a=g.Math.abs(C8(e.b).b-C8(t.b).b),r=0,l=0,n=1,u=1,i>e.b.b/2+t.b.b/2&&(r=g.Math.min(g.Math.abs(e.b.c-(t.b.c+t.b.b)),g.Math.abs(e.b.c+e.b.b-t.b.c)),n=1-r/i),a>e.b.a/2+t.b.a/2&&(l=g.Math.min(g.Math.abs(e.b.d-(t.b.d+t.b.a)),g.Math.abs(e.b.d+e.b.a-t.b.d)),u=1-l/a),o=g.Math.min(n,u),(1-o)*g.Math.sqrt(i*i+a*a)}function BBt(e){var t,n,i,r;for(wH(e,e.e,e.f,(s0(),V1),!0,e.c,e.i),wH(e,e.e,e.f,V1,!1,e.c,e.i),wH(e,e.e,e.f,$v,!0,e.c,e.i),wH(e,e.e,e.f,$v,!1,e.c,e.i),KBt(e,e.c,e.e,e.f,e.i),i=new _r(e.i,0);i.b=65;n--)Zl[n]=n-65<<24>>24;for(i=122;i>=97;i--)Zl[i]=i-97+26<<24>>24;for(r=57;r>=48;r--)Zl[r]=r-48+52<<24>>24;for(Zl[43]=62,Zl[47]=63,o=0;o<=25;o++)Fd[o]=65+o&Ni;for(u=26,l=0;u<=51;++u,l++)Fd[u]=97+l&Ni;for(e=52,a=0;e<=61;++e,a++)Fd[e]=48+a&Ni;Fd[62]=43,Fd[63]=47}function $Bt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D;if(e.dc())return new Tr;for(d=0,v=0,r=e.Kc();r.Ob();)i=c(r.Pb(),37),o=i.f,d=g.Math.max(d,o.a),v+=o.a*o.b;for(d=g.Math.max(d,g.Math.sqrt(v)*ge(Te(B(c(e.Kc().Pb(),37),(Oe(),TR))))),A=0,D=0,l=0,n=t,a=e.Kc();a.Ob();)u=c(a.Pb(),37),p=u.f,A+p.a>d&&(A=0,D+=l+t,l=0),v6(u,A,D),n=g.Math.max(n,A+p.a),l=g.Math.max(l,p.b),A+=p.a+t;return new $e(n+t,D+l+t)}function KBt(e,t,n,i,r){var o,u,a,l,d,p,v;for(u=new q(t);u.ao)return Ie(),jt;break;case 4:case 3:if(l<0)return Ie(),_t;if(l+e.f>r)return Ie(),Yt}return u=(a+e.g/2)/o,n=(l+e.f/2)/r,u+n<=1&&u-n<=0?(Ie(),Mt):u+n>=1&&u-n>=0?(Ie(),jt):n<.5?(Ie(),_t):(Ie(),Yt)}function qBt(e,t,n,i,r){var o,u;if(o=xr(Xi(t[0],no),Xi(i[0],no)),e[0]=tn(o),o=h1(o,32),n>=r){for(u=1;u0&&(r.b[u++]=0,r.b[u++]=o.b[0]-1),t=1;t0&&(TN(l,l.d-r.d),r.c==(cl(),z1)&&Fmt(l,l.a-r.d),l.d<=0&&l.i>0&&Ri(t,l,t.c.b,t.c)));for(o=new q(e.f);o.a0&&(FA(a,a.i-r.d),r.c==(cl(),z1)&&Bmt(a,a.b-r.d),a.i<=0&&a.d>0&&Ri(n,a,n.c.b,n.c)))}function HBt(e,t,n){var i,r,o,u,a,l,d,p;for(Wt(n,"Processor compute fanout",1),Is(e.b),Is(e.a),a=null,o=Mn(t.b,0);!a&&o.b!=o.d.c;)d=c(Pn(o),86),Be(Fe(B(d,(ic(),Gw))))&&(a=d);for(l=new wi,Ri(l,a,l.c.b,l.c),YXe(e,l),p=Mn(t.b,0);p.b!=p.d.c;)d=c(Pn(p),86),u=ln(B(d,(ic(),BP))),r=mc(e.b,u)!=null?c(mc(e.b,u),19).a:0,pe(d,tx,Ce(r)),i=1+(mc(e.a,u)!=null?c(mc(e.a,u),19).a:0),pe(d,jut,Ce(i));qt(n)}function zBt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L;for(A=I7t(e,n),l=0;l0),i.a.Xb(i.c=--i.b),v>A+l&&nu(i);for(u=new q(D);u.a0),i.a.Xb(i.c=--i.b)}}function VBt(){Ln();var e,t,n,i,r,o;if(_Y)return _Y;for(e=new du(4),pw(e,j1(ZV,!0)),I6(e,j1("M",!0)),I6(e,j1("C",!0)),o=new du(4),i=0;i<11;i++)_c(o,i,i);return t=new du(4),pw(t,j1("M",!0)),_c(t,4448,4607),_c(t,65438,65439),r=new f5(2),eb(r,e),eb(r,dM),n=new f5(2),n.$l(v8(o,j1("L",!0))),n.$l(t),n=new Gp(3,n),n=new yne(r,n),_Y=n,_Y}function GBt(e){var t,n;if(t=ln(Ke(e,(kn(),GP))),!eqe(t,e)&&!Fg(e,j4)&&((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a).i!=0||Be(Fe(Ke(e,Oj)))))if(t==null||uw(t).length==0){if(!eqe(kt,e))throw n=wn(wn(new lu("Unable to load default layout algorithm "),kt)," for unconfigured node "),sD(e,n),V(new ym(n.a))}else throw n=wn(wn(new lu("Layout algorithm '"),t),"' not found for "),sD(e,n),V(new ym(n.a))}function eH(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;if(n=e.i,t=e.n,e.b==0)for(D=n.c+t.b,A=n.b-t.b-t.c,u=e.a,l=0,p=u.length;l0&&(v-=i[0]+e.c,i[0]+=e.c),i[2]>0&&(v-=i[2]+e.c),i[1]=g.Math.max(i[1],v),_8(e.a[1],n.c+t.b+i[0]-(i[1]-v)/2,i[1]);for(o=e.a,a=0,d=o.length;a0?(e.n.c.length-1)*e.i:0,i=new q(e.n);i.a1)for(i=Mn(r,0);i.b!=i.d.c;)for(n=c(Pn(i),231),o=0,l=new q(n.e);l.a0&&(t[0]+=e.c,v-=t[0]),t[2]>0&&(v-=t[2]+e.c),t[1]=g.Math.max(t[1],v),E8(e.a[1],i.d+n.d+t[0]-(t[1]-v)/2,t[1]);else for(L=i.d+n.d,D=i.a-n.d-n.a,u=e.a,l=0,p=u.length;l=0&&o!=n))throw V(new St(RT));for(r=0,l=0;l0||E0(r.b.d,e.b.d+e.b.a)==0&&i.b<0||E0(r.b.d+r.b.a,e.b.d)==0&&i.b>0){a=0;break}}else a=g.Math.min(a,qGe(e,r,i));a=g.Math.min(a,qYe(e,o,a,i))}return a}function rT(e,t){var n,i,r,o,u,a,l;if(e.b<2)throw V(new St("The vector chain must contain at least a source and a target point."));for(r=(Lt(e.b!=0),c(e.a.a.c,8)),H9(t,r.a,r.b),l=new Vy((!t.a&&(t.a=new qi(ma,t,5)),t.a)),u=Mn(e,1);u.age(Tl(u.g,u.d[0]).a)?(Lt(l.b>0),l.a.Xb(l.c=--l.b),Np(l,u),r=!0):a.e&&a.e.gc()>0&&(o=(!a.e&&(a.e=new Se),a.e).Mc(t),d=(!a.e&&(a.e=new Se),a.e).Mc(n),(o||d)&&((!a.e&&(a.e=new Se),a.e).Fc(u),++u.c));r||(i.c[i.c.length]=u)}function VYe(e){var t,n,i;if(Tm(c(B(e,(Oe(),ji)),98)))for(n=new q(e.j);n.a>>0,"0"+t.toString(16)),i="\\x"+fu(n,n.length-2,n.length)):e>=Vr?(n=(t=e>>>0,"0"+t.toString(16)),i="\\v"+fu(n,n.length-6,n.length)):i=""+String.fromCharCode(e&Ni)}return i}function nH(e,t){var n,i,r,o,u,a,l,d,p,v;if(u=e.e,l=t.e,l==0)return e;if(u==0)return t.e==0?t:new km(-t.e,t.d,t.a);if(o=e.d,a=t.d,o+a==2)return n=Xi(e.a[0],no),i=Xi(t.a[0],no),u<0&&(n=N_(n)),l<0&&(i=N_(i)),DI(P1(n,i));if(r=o!=a?o>a?1:-1:Hre(e.a,t.a,o),r==-1)v=-l,p=u==l?P$(t.a,a,e.a,o):C$(t.a,a,e.a,o);else if(v=u,u==l){if(r==0)return T1(),t4;p=P$(e.a,o,t.a,a)}else p=C$(e.a,o,t.a,a);return d=new km(v,p.length,p),R5(d),d}function due(e){var t,n,i,r,o,u;for(this.e=new Se,this.a=new Se,n=e.b-1;n<3;n++)b_(e,0,c(hl(e,0),8));if(e.b<4)throw V(new St("At (least dimension + 1) control points are necessary!"));for(this.b=3,this.d=!0,this.c=!1,Fxt(this,e.b+this.b-1),u=new Se,o=new q(this.e),t=0;t=t.o&&n.f<=t.f||t.a*.5<=n.f&&t.a*1.5>=n.f){if(u=c(Ne(t.n,t.n.c.length-1),211),u.e+u.d+n.g+r<=i&&(o=c(Ne(t.n,t.n.c.length-1),211),o.f-e.f+n.f<=e.b||e.a.c.length==1))return hoe(t,n),!0;if(t.s+n.g<=i&&(t.t+t.d+n.f+r<=e.b||e.a.c.length==1))return Ee(t.b,n),a=c(Ne(t.n,t.n.c.length-1),211),Ee(t.n,new W8(t.s,a.f+a.a+t.i,t.i)),Woe(c(Ne(t.n,t.n.c.length-1),211),n),BYe(t,n),!0}return!1}function UYe(e,t,n){var i,r,o,u;return e.ej()?(r=null,o=e.fj(),i=e.Zi(1,u=L$(e,t,n),n,t,o),e.bj()&&!(e.ni()&&u!=null?$n(u,n):le(u)===le(n))?(u!=null&&(r=e.dj(u,r)),r=e.cj(n,r),e.ij()&&(r=e.lj(u,n,r)),r?(r.Ei(i),r.Fi()):e.$i(i)):(e.ij()&&(r=e.lj(u,n,r)),r?(r.Ei(i),r.Fi()):e.$i(i)),u):(u=L$(e,t,n),e.bj()&&!(e.ni()&&u!=null?$n(u,n):le(u)===le(n))&&(r=null,u!=null&&(r=e.dj(u,null)),r=e.cj(n,r),r&&r.Fi()),u)}function _6(e,t){var n,i,r,o,u,a,l,d;t%=24,e.q.getHours()!=t&&(i=new g.Date(e.q.getTime()),i.setDate(i.getDate()+1),a=e.q.getTimezoneOffset()-i.getTimezoneOffset(),a>0&&(l=a/60|0,d=a%60,r=e.q.getDate(),n=e.q.getHours(),n+l>=24&&++r,o=new g.Date(e.q.getFullYear(),e.q.getMonth(),r,t+l,e.q.getMinutes()+d,e.q.getSeconds(),e.q.getMilliseconds()),e.q.setTime(o.getTime()))),u=e.q.getTime(),e.q.setTime(u+36e5),e.q.getHours()!=t&&e.q.setTime(u)}function t$t(e,t){var n,i,r,o,u;if(Wt(t,"Path-Like Graph Wrapping",1),e.b.c.length==0){qt(t);return}if(r=new yse(e),u=(r.i==null&&(r.i=dre(r,new kJ)),ge(r.i)*r.f),n=u/(r.i==null&&(r.i=dre(r,new kJ)),ge(r.i)),r.b>n){qt(t);return}switch(c(B(e,(Oe(),VU)),337).g){case 2:o=new xJ;break;case 0:o=new DJ;break;default:o=new LJ}if(i=o.Vf(e,r),!o.Wf())switch(c(B(e,qR),338).g){case 2:i=HGe(r,i);break;case 1:i=qVe(r,i)}Q$t(e,r,i),qt(t)}function n$t(e,t){var n,i,r,o;if($6t(e.d,e.e),e.c.a.$b(),ge(Te(B(t.j,(Oe(),OR))))!=0||ge(Te(B(t.j,OR)))!=0)for(n=$E,le(B(t.j,q1))!==le((kh(),H1))&&pe(t.j,(ye(),Y0),(Pt(),!0)),o=c(B(t.j,TP),19).a,r=0;rr&&++d,Ee(u,(pt(a+d,t.c.length),c(t.c[a+d],19))),l+=(pt(a+d,t.c.length),c(t.c[a+d],19)).a-i,++n;n1&&(l>ws(a)*eu(a)/2||u.b==0)&&(v=new TO(A),p=ws(a)/eu(a),d=mH(v,t,new Ry,n,i,r,p),Wn(ol(v.e),d),a=v,D.c[D.c.length]=v,l=0,A.c=oe(xt,xe,1,0,5,1)));return Hi(D,A),D}function o$t(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N;if(n.mh(t)&&(p=(D=t,D?c(i,49).xh(D):null),p))if(N=n.bh(t,e.a),L=t.t,L>1||L==-1)if(v=c(N,69),A=c(p,69),v.dc())A.$b();else for(u=!!Xr(t),o=0,a=e.a?v.Kc():v.Zh();a.Ob();)d=c(a.Pb(),56),r=c(h0(e,d),56),r?(u?(l=A.Xc(r),l==-1?A.Xh(o,r):o!=l&&A.ji(o,r)):A.Xh(o,r),++o):e.b&&!u&&(A.Xh(o,d),++o);else N==null?p.Wb(null):(r=h0(e,N),r==null?e.b&&!Xr(t)&&p.Wb(N):p.Wb(r))}function c$t(e,t){var n,i,r,o,u,a,l,d;for(n=new l_e,r=new Kt(Ht(ko(t).a.Kc(),new j));dn(r);)if(i=c(rn(r),17),!Kr(i)&&(a=i.c.i,Ace(a,Vk))){if(d=Vse(e,a,Vk,zk),d==-1)continue;n.b=g.Math.max(n.b,d),!n.a&&(n.a=new Se),Ee(n.a,a)}for(u=new Kt(Ht(Vi(t).a.Kc(),new j));dn(u);)if(o=c(rn(u),17),!Kr(o)&&(l=o.d.i,Ace(l,zk))){if(d=Vse(e,l,zk,Vk),d==-1)continue;n.d=g.Math.max(n.d,d),!n.c&&(n.c=new Se),Ee(n.c,l)}return n}function WYe(e){yE();var t,n,i,r;if(t=xi(e),e1e6)throw V(new JA("power of ten too big"));if(e<=Fn)return c2(YI($2[1],t),t);for(i=YI($2[1],Fn),r=i,n=ns(e-Fn),t=xi(e%Fn);uc(n,Fn)>0;)r=Fm(r,i),n=P1(n,Fn);for(r=Fm(r,YI($2[1],t)),r=c2(r,Fn),n=ns(e-Fn);uc(n,Fn)>0;)r=c2(r,Fn),n=P1(n,Fn);return r=c2(r,t),r}function s$t(e,t){var n,i,r,o,u,a,l,d,p;for(Wt(t,"Hierarchical port dummy size processing",1),l=new Se,p=new Se,i=ge(Te(B(e,(Oe(),Lv)))),n=i*2,o=new q(e.b);o.ad&&i>d)p=a,d=ge(t.p[a.p])+ge(t.d[a.p])+a.o.b+a.d.a;else{r=!1,n.n&&jg(n,"bk node placement breaks on "+a+" which should have been after "+p);break}if(!r)break}return n.n&&jg(n,t+" is feasible: "+r),r}function h$t(e,t,n,i){var r,o,u,a,l,d,p;for(a=-1,p=new q(e);p.a=z&&e.e[l.p]>L*e.b||ne>=n*z)&&(A.c[A.c.length]=a,a=new Se,qr(u,o),o.a.$b(),d-=p,D=g.Math.max(D,d*e.b+N),d+=ne,ie=ne,ne=0,p=0,N=0);return new yr(D,A)}function p$t(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;for(n=(d=new yh(e.c.b).a.vc().Kc(),new Cp(d));n.a.Ob();)t=(a=c(n.a.Pb(),42),c(a.dd(),149)),r=t.a,r==null&&(r=""),i=q3t(e.c,r),!i&&r.length==0&&(i=Hjt(e)),i&&!nw(i.c,t,!1)&&Cn(i.c,t);for(u=Mn(e.a,0);u.b!=u.d.c;)o=c(Pn(u),478),p=y$(e.c,o.a),D=y$(e.c,o.b),p&&D&&Cn(p.c,new yr(D,o.c));for(na(e.a),A=Mn(e.b,0);A.b!=A.d.c;)v=c(Pn(A),478),t=K3t(e.c,v.a),l=y$(e.c,v.b),t&&l&&Oyt(t,l,v.c);na(e.b)}function w$t(e,t,n){var i,r,o,u,a,l,d,p,v,A,D;o=new BM(e),u=new gVe,r=(GC(u.g),GC(u.j),Is(u.b),GC(u.d),GC(u.i),Is(u.k),Is(u.c),Is(u.e),D=JGe(u,o,null),$Ue(u,o),D),t&&(d=new BM(t),a=I$t(d),qce(r,U(G(Cpe,1),xe,527,0,[a]))),A=!1,v=!1,n&&(d=new BM(n),ik in d.a&&(A=Ch(d,ik).ge().a),aet in d.a&&(v=Ch(d,aet).ge().a)),p=D9e(sKe(new Z3,A),v),lkt(new I5e,r,p),ik in o.a&&ul(o,ik,null),(A||v)&&(l=new xy,zYe(p,l,A,v),ul(o,ik,l)),i=new Bje(u),rjt(new fee(r),i)}function m$t(e,t,n){var i,r,o,u,a,l,d,p,v;for(u=new vVe,d=U(G(Qt,1),_n,25,15,[0]),r=-1,o=0,i=0,l=0;l0){if(r<0&&p.a&&(r=l,o=d[0],i=0),r>=0){if(a=p.b,l==r&&(a-=i++,a==0))return 0;if(!JXe(t,d,p,a,u)){l=r-1,d[0]=o;continue}}else if(r=-1,!JXe(t,d,p,0,u))return 0}else{if(r=-1,Pr(p.c,0)==32){if(v=d[0],m$e(t,d),d[0]>v)continue}else if(Q5t(t,p.c,d[0])){d[0]+=p.c.length;continue}return 0}return Qqt(u,n)?d[0]:0}function S6(e){var t,n,i,r,o,u,a,l;if(!e.f){if(l=new HJ,a=new HJ,t=sM,u=t.a.zc(e,t),u==null){for(o=new $t(So(e));o.e!=o.i.gc();)r=c(Vt(o),26),Mi(l,S6(r));t.a.Bc(e)!=null,t.a.gc()==0}for(i=(!e.s&&(e.s=new Me(us,e,21,17)),new $t(e.s));i.e!=i.i.gc();)n=c(Vt(i),170),Q(n,99)&&on(a,c(n,18));ew(a),e.r=new lRe(e,(c(ee(he((g1(),wt).o),6),18),a.i),a.g),Mi(l,e.r),ew(l),e.f=new Im((c(ee(he(wt.o),5),18),l.i),l.g),Ls(e).b&=-3}return e.f}function v$t(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L;for(u=e.o,i=oe(Qt,_n,25,u,15,1),r=oe(Qt,_n,25,u,15,1),n=e.p,t=oe(Qt,_n,25,n,15,1),o=oe(Qt,_n,25,n,15,1),d=0;d=0&&!Ym(e,p,v);)--v;r[p]=v}for(D=0;D=0&&!Ym(e,a,L);)--a;o[L]=a}for(l=0;lt[A]&&Ai[l]&&Q7(e,l,A,!1,!0)}function gue(e){var t,n,i,r,o,u,a,l;n=Be(Fe(B(e,(dl(),Tit)))),o=e.a.c.d,a=e.a.d.d,n?(u=lf(hr(new $e(a.a,a.b),o),.5),l=lf(Wo(e.e),.5),t=hr(Wn(new $e(o.a,o.b),u),l),zee(e.d,t)):(r=ge(Te(B(e.a,Lit))),i=e.d,o.a>=a.a?o.b>=a.b?(i.a=a.a+(o.a-a.a)/2+r,i.b=a.b+(o.b-a.b)/2-r-e.e.b):(i.a=a.a+(o.a-a.a)/2+r,i.b=o.b+(a.b-o.b)/2+r):o.b>=a.b?(i.a=o.a+(a.a-o.a)/2+r,i.b=a.b+(o.b-a.b)/2+r):(i.a=o.a+(a.a-o.a)/2+r,i.b=o.b+(a.b-o.b)/2-r-e.e.b))}function Ec(e,t){var n,i,r,o,u,a,l;if(e==null)return null;if(o=e.length,o==0)return"";for(l=oe(Yu,vf,25,o,15,1),Aie(0,o,e.length),Aie(0,o,l.length),pxe(e,0,o,l,0),n=null,a=t,r=0,u=0;r0?fu(n.a,0,o-1):""):e.substr(0,o-1):n?n.a:e}function JYe(e){Gb(e,new Zg(qb(Bb(Kb($b(new _g,ob),"ELK DisCo"),"Layouter for arranging unconnected subgraphs. The subgraphs themselves are, by default, not laid out."),new K2e))),je(e,ob,pz,Le(pde)),je(e,ob,wz,Le(TG)),je(e,ob,D2,Le(dit)),je(e,ob,N0,Le(bde)),je(e,ob,Zue,Le(wit)),je(e,ob,eae,Le(pit)),je(e,ob,Que,Le(mit)),je(e,ob,tae,Le(bit)),je(e,ob,uae,Le(git)),je(e,ob,aae,Le(IG)),je(e,ob,lae,Le(gde)),je(e,ob,fae,Le(Nk))}function bue(e,t,n,i){var r,o,u,a,l,d,p,v,A;if(o=new Nh(e),Sg(o,(Dt(),Mc)),pe(o,(Oe(),ji),(wr(),Ic)),r=0,t){for(u=new gc,pe(u,(ye(),Hn),t),pe(o,Hn,t.i),Ji(u,(Ie(),Mt)),Bo(u,o),A=bf(t.e),d=A,p=0,v=d.length;p0)if(n-=i.length-t,n>=0){for(r.a+="0.";n>db.length;n-=db.length)jRe(r,db);fke(r,db,xi(n)),wn(r,i.substr(t))}else n=t-n,wn(r,fu(i,t,xi(n))),r.a+=".",wn(r,wC(i,xi(n)));else{for(wn(r,i.substr(t));n<-db.length;n+=db.length)jRe(r,db);fke(r,db,xi(-n))}return r.a}function pue(e,t,n,i){var r,o,u,a,l,d,p,v,A;return l=hr(new $e(n.a,n.b),e),d=l.a*t.b-l.b*t.a,p=t.a*i.b-t.b*i.a,v=(l.a*i.b-l.b*i.a)/p,A=d/p,p==0?d==0?(r=Wn(new $e(n.a,n.b),lf(new $e(i.a,i.b),.5)),o=m1(e,r),u=m1(Wn(new $e(e.a,e.b),t),r),a=g.Math.sqrt(i.a*i.a+i.b*i.b)*.5,o=0&&v<=1&&A>=0&&A<=1?Wn(new $e(e.a,e.b),lf(new $e(t.a,t.b),v)):null}function _$t(e,t,n){var i,r,o,u,a;if(i=c(B(e,(Oe(),OU)),21),n.a>t.a&&(i.Hc((sw(),Cj))?e.c.a+=(n.a-t.a)/2:i.Hc(Ij)&&(e.c.a+=n.a-t.a)),n.b>t.b&&(i.Hc((sw(),jj))?e.c.b+=(n.b-t.b)/2:i.Hc(Tj)&&(e.c.b+=n.b-t.b)),c(B(e,(ye(),Cc)),21).Hc((to(),Gu))&&(n.a>t.a||n.b>t.b))for(a=new q(e.a);a.at.a&&(i.Hc((sw(),Cj))?e.c.a+=(n.a-t.a)/2:i.Hc(Ij)&&(e.c.a+=n.a-t.a)),n.b>t.b&&(i.Hc((sw(),jj))?e.c.b+=(n.b-t.b)/2:i.Hc(Tj)&&(e.c.b+=n.b-t.b)),c(B(e,(ye(),Cc)),21).Hc((to(),Gu))&&(n.a>t.a||n.b>t.b))for(u=new q(e.a);u.at&&(r=0,o+=p.b+n,v.c[v.c.length]=p,p=new Zne(o,n),i=new aK(0,p.f,p,n),OO(p,i),r=0),i.b.c.length==0||l.f>=i.o&&l.f<=i.f||i.a*.5<=l.f&&i.a*1.5>=l.f?hoe(i,l):(u=new aK(i.s+i.r+n,p.f,p,n),OO(p,u),hoe(u,l)),r=l.i+l.g;return v.c[v.c.length]=p,v}function sv(e){var t,n,i,r,o,u,a,l;if(!e.a){if(e.o=null,l=new oAe(e),t=new T6e,n=sM,a=n.a.zc(e,n),a==null){for(u=new $t(So(e));u.e!=u.i.gc();)o=c(Vt(u),26),Mi(l,sv(o));n.a.Bc(e)!=null,n.a.gc()==0}for(r=(!e.s&&(e.s=new Me(us,e,21,17)),new $t(e.s));r.e!=r.i.gc();)i=c(Vt(r),170),Q(i,322)&&on(t,c(i,34));ew(t),e.k=new aRe(e,(c(ee(he((g1(),wt).o),7),18),t.i),t.g),Mi(l,e.k),ew(l),e.a=new Im((c(ee(he(wt.o),4),18),l.i),l.g),Ls(e).b&=-2}return e.a}function M$t(e,t,n,i,r,o,u){var a,l,d,p,v,A;return v=!1,l=oWe(n.q,t.f+t.b-n.q.f),A=r-(n.q.e+l-u),A=(pt(o,e.c.length),c(e.c[o],200)).e,p=(a=P6(i,A,!1),a.a),p>t.b&&!d)?!1:((d||p<=t.b)&&(d&&p>t.b?(n.d=p,JC(n,aGe(n,p))):(TVe(n.q,l),n.c=!0),JC(i,r-(n.s+n.r)),kI(i,n.q.e+n.q.d,t.f),OO(t,i),e.c.length>o&&(FI((pt(o,e.c.length),c(e.c[o],200)),i),(pt(o,e.c.length),c(e.c[o],200)).a.c.length==0&&ad(e,o)),v=!0),v)}function wue(e,t,n,i){var r,o,u,a,l,d,p;if(p=qc(e.e.Tg(),t),r=0,o=c(e.g,119),l=null,Wr(),c(t,66).Oj()){for(a=0;ae.o.a&&(p=(l-e.o.a)/2,a.b=g.Math.max(a.b,p),a.c=g.Math.max(a.c,p))}}function I$t(e){var t,n,i,r,o,u,a,l;for(o=new ANe,f2t(o,(d2(),olt)),i=(r=J$(e,oe(Re,we,2,0,6,1)),new CS(new Js(new tF(e,r).b)));i.b0?e.i:0)>t&&l>0&&(o=0,u+=l+e.i,r=g.Math.max(r,A),i+=l+e.i,l=0,A=0,n&&(++v,Ee(e.n,new W8(e.s,u,e.i))),a=0),A+=d.g+(a>0?e.i:0),l=g.Math.max(l,d.f),n&&Woe(c(Ne(e.n,v),211),d),o+=d.g+(a>0?e.i:0),++a;return r=g.Math.max(r,A),i+=l,n&&(e.r=r,e.d=i,Qoe(e.j)),new Ru(e.s,e.t,r,i)}function bc(e,t,n,i,r){Nf();var o,u,a,l,d,p,v,A,D;if(wne(e,"src"),wne(n,"dest"),A=Fs(e),l=Fs(n),$te((A.i&4)!=0,"srcType is not an array"),$te((l.i&4)!=0,"destType is not an array"),v=A.c,u=l.c,$te((v.i&1)!=0?v==u:(u.i&1)==0,"Array types don't match"),D=e.length,d=n.length,t<0||i<0||r<0||t+r>D||i+r>d)throw V(new DQ);if((v.i&1)==0&&A!=l)if(p=$g(e),o=$g(n),le(e)===le(n)&&ti;)vi(o,a,p[--t]);else for(a=i+r;i0&&ise(e,t,n,i,r,!0)}function cH(){cH=Z,nnt=U(G(Qt,1),_n,25,15,[Ar,1162261467,j6,1220703125,362797056,1977326743,j6,387420489,pD,214358881,429981696,815730721,1475789056,170859375,268435456,410338673,612220032,893871739,128e7,1801088541,113379904,148035889,191102976,244140625,308915776,387420489,481890304,594823321,729e6,887503681,j6,1291467969,1544804416,1838265625,60466176]),int=U(G(Qt,1),_n,25,15,[-1,-1,31,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5])}function T$t(e){var t,n,i,r,o,u,a,l;for(r=new q(e.b);r.a=e.b.length?(o[r++]=u.b[i++],o[r++]=u.b[i++]):i>=u.b.length?(o[r++]=e.b[n++],o[r++]=e.b[n++]):u.b[i]0?e.i:0)),++t;for($At(e.n,l),e.d=n,e.r=i,e.g=0,e.f=0,e.e=0,e.o=Ii,e.p=Ii,o=new q(e.b);o.a0&&(r=(!e.n&&(e.n=new Me(Lo,e,1,7)),c(ee(e.n,0),137)).a,!r||wn(wn((t.a+=' "',t),r),'"'))),n=(!e.b&&(e.b=new dt(Ut,e,4,7)),!(e.b.i<=1&&(!e.c&&(e.c=new dt(Ut,e,5,8)),e.c.i<=1))),n?t.a+=" [":t.a+=" ",wn(t,Iee(new XN,new $t(e.b))),n&&(t.a+="]"),t.a+=Sz,n&&(t.a+="["),wn(t,Iee(new XN,new $t(e.c))),n&&(t.a+="]"),t.a)}function sH(e,t){var n,i,r,o,u,a,l;if(e.a){if(a=e.a.ne(),l=null,a!=null?t.a+=""+a:(u=e.a.Dj(),u!=null&&(o=af(u,is(91)),o!=-1?(l=u.substr(o),t.a+=""+fu(u==null?rs:(yt(u),u),0,o)):t.a+=""+u)),e.d&&e.d.i!=0){for(r=!0,t.a+="<",i=new $t(e.d);i.e!=i.i.gc();)n=c(Vt(i),87),r?r=!1:t.a+=zr,sH(n,t);t.a+=">"}l!=null&&(t.a+=""+l)}else e.e?(a=e.e.zb,a!=null&&(t.a+=""+a)):(t.a+="?",e.b?(t.a+=" super ",sH(e.b,t)):e.f&&(t.a+=" extends ",sH(e.f,t)))}function O$t(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At;for(be=e.c,Pe=t.c,n=Do(be.a,e,0),i=Do(Pe.a,t,0),ne=c(S0(e,(Zr(),Os)).Kc().Pb(),11),et=c(S0(e,Fc).Kc().Pb(),11),ue=c(S0(t,Os).Kc().Pb(),11),At=c(S0(t,Fc).Kc().Pb(),11),Y=bf(ne.e),Ae=bf(et.g),ie=bf(ue.e),Ve=bf(At.g),cw(e,i,Pe),u=ie,p=0,L=u.length;pp?new xg((cl(),Vw),n,t,d-p):d>0&&p>0&&(new xg((cl(),Vw),t,n,0),new xg(Vw,n,t,0))),u)}function eXe(e,t){var n,i,r,o,u,a;for(u=new Gg(new Pg(e.f.b).a);u.b;){if(o=g0(u),r=c(o.cd(),594),t==1){if(r.gf()!=(eo(),Gh)&&r.gf()!=Vh)continue}else if(r.gf()!=(eo(),ga)&&r.gf()!=Va)continue;switch(i=c(c(o.dd(),46).b,81),a=c(c(o.dd(),46).a,189),n=a.c,r.gf().g){case 2:i.g.c=e.e.a,i.g.b=g.Math.max(1,i.g.b+n);break;case 1:i.g.c=i.g.c+n,i.g.b=g.Math.max(1,i.g.b-n);break;case 4:i.g.d=e.e.b,i.g.a=g.Math.max(1,i.g.a+n);break;case 3:i.g.d=i.g.d+n,i.g.a=g.Math.max(1,i.g.a-n)}}}function D$t(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(a=oe(Qt,_n,25,t.b.c.length,15,1),d=oe(HG,_e,267,t.b.c.length,0,1),l=oe(nh,Ed,10,t.b.c.length,0,1),v=e.a,A=0,D=v.length;A0&&l[i]&&(L=Am(e.b,l[i],r)),N=g.Math.max(N,r.c.c.b+L);for(o=new q(p.e);o.a1)throw V(new St(BT));l||(o=zf(t,i.Kc().Pb()),u.Fc(o))}return Tre(e,Wce(e,t,n),u)}function x$t(e,t){var n,i,r,o;for(mIt(t.b.j),Di(Yc(new ht(null,new bt(t.d,16)),new R4e),new x4e),o=new q(t.d);o.ae.o.b||(n=qo(e,jt),a=t.d+t.a+(n.gc()-1)*u,a>e.o.b)))}function lH(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;if(u=e.e,l=t.e,u==0)return t;if(l==0)return e;if(o=e.d,a=t.d,o+a==2)return n=Xi(e.a[0],no),i=Xi(t.a[0],no),u==l?(p=xr(n,i),L=tn(p),D=tn($p(p,32)),D==0?new ld(u,L):new km(u,2,U(G(Qt,1),_n,25,15,[L,D]))):DI(u<0?P1(i,n):P1(n,i));if(u==l)A=u,v=o>=a?C$(e.a,o,t.a,a):C$(t.a,a,e.a,o);else{if(r=o!=a?o>a?1:-1:Hre(e.a,t.a,o),r==0)return T1(),t4;r==1?(A=u,v=P$(e.a,o,t.a,a)):(A=l,v=P$(t.a,a,e.a,o))}return d=new km(A,v.length,v),R5(d),d}function fH(e,t,n,i,r,o,u){var a,l,d,p,v,A,D;return v=Be(Fe(B(t,(Oe(),fbe)))),A=null,o==(Zr(),Os)&&i.c.i==n?A=i.c:o==Fc&&i.d.i==n&&(A=i.d),d=u,!d||!v||A?(p=(Ie(),Vo),A?p=A.j:Tm(c(B(n,ji),98))&&(p=o==Os?Mt:jt),l=B$t(e,t,n,o,p,i),a=E$((Nr(n),i)),o==Os?(Rr(a,c(Ne(l.j,0),11)),br(a,r)):(Rr(a,r),br(a,c(Ne(l.j,0),11))),d=new vHe(i,a,l,c(B(l,(ye(),Hn)),11),o,!A)):(Ee(d.e,i),D=g.Math.max(ge(Te(B(d.d,Id))),ge(Te(B(i,Id)))),pe(d.d,Id,D)),it(e.a,i,new c8(d.d,t,o)),d}function oD(e,t){var n,i,r,o,u,a,l,d,p,v;if(p=null,e.d&&(p=c(mc(e.d,t),138)),!p){if(o=e.a.Mh(),v=o.i,!e.d||KS(e.d)!=v){for(l=new en,e.d&&G5(l,e.d),d=l.f.c+l.g.c,a=d;a0?(D=(L-1)*n,a&&(D+=i),p&&(D+=i),D=e.b[r+1])r+=2;else if(n0)for(i=new ps(c(Vn(e.a,o),21)),st(),cr(i,new _Q(t)),r=new _r(o.b,0);r.bbe)?(l=2,u=Fn):l==0?(l=1,u=Ae):(l=0,u=Ae)):(D=Ae>=u||u-Ae0?1:Wb(isNaN(i),isNaN(0)))>=0^(Na(Mf),(g.Math.abs(a)<=Mf||a==0||isNaN(a)&&isNaN(0)?0:a<0?-1:a>0?1:Wb(isNaN(a),isNaN(0)))>=0)?g.Math.max(a,i):(Na(Mf),(g.Math.abs(i)<=Mf||i==0||isNaN(i)&&isNaN(0)?0:i<0?-1:i>0?1:Wb(isNaN(i),isNaN(0)))>0?g.Math.sqrt(a*a+i*i):-g.Math.sqrt(a*a+i*i))}function eb(e,t){var n,i,r,o,u,a;if(t){if(!e.a&&(e.a=new WA),e.e==2){UA(e.a,t);return}if(t.e==1){for(r=0;r=Vr?co(n,foe(i)):S_(n,i&Ni),u=new ZB(10,null,0),CSt(e.a,u,a-1)):(n=(u.bm().length+o,new FS),co(n,u.bm())),t.e==0?(i=t._l(),i>=Vr?co(n,foe(i)):S_(n,i&Ni)):co(n,t.bm()),c(u,521).b=n.a}}function uXe(e){var t,n,i,r,o;return e.g!=null?e.g:e.a<32?(e.g=lHt(ns(e.f),xi(e.e)),e.g):(r=yH((!e.c&&(e.c=SI(e.f)),e.c),0),e.e==0?r:(t=(!e.c&&(e.c=SI(e.f)),e.c).e<0?2:1,n=r.length,i=-e.e+n-t,o=new n1,o.a+=""+r,e.e>0&&i>=-6?i>=0?qC(o,n-xi(e.e),"."):(o.a=fu(o.a,0,t-1)+"0."+wC(o.a,t-1),qC(o,t+1,pf(db,0,-xi(i)-1))):(n-t>=1&&(qC(o,t,"."),++n),qC(o,n,"E"),i>0&&qC(o,++n,"+"),qC(o,++n,""+P5(ns(i)))),e.g=o.a,e.g))}function Q$t(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(!n.dc()){for(a=0,A=0,i=n.Kc(),L=c(i.Pb(),19).a;a1&&(l=d.mg(l,e.a,a));return l.c.length==1?c(Ne(l,l.c.length-1),220):l.c.length==2?K$t((pt(0,l.c.length),c(l.c[0],220)),(pt(1,l.c.length),c(l.c[1],220)),u,o):null}function aXe(e){var t,n,i,r,o,u;for(Zc(e.a,new L2e),n=new q(e.a);n.a=g.Math.abs(i.b)?(i.b=0,o.d+o.a>u.d&&o.du.c&&o.c0){if(t=new iee(e.i,e.g),n=e.i,o=n<100?null:new i1(n),e.ij())for(i=0;i0){for(a=e.g,d=e.i,B5(e),o=d<100?null:new i1(d),i=0;i>13|(e.m&15)<<9,r=e.m>>4&8191,o=e.m>>17|(e.h&255)<<5,u=(e.h&1048320)>>8,a=t.l&8191,l=t.l>>13|(t.m&15)<<9,d=t.m>>4&8191,p=t.m>>17|(t.h&255)<<5,v=(t.h&1048320)>>8,Ve=n*a,et=i*a,At=r*a,Ot=o*a,Jt=u*a,l!=0&&(et+=n*l,At+=i*l,Ot+=r*l,Jt+=o*l),d!=0&&(At+=n*d,Ot+=i*d,Jt+=r*d),p!=0&&(Ot+=n*p,Jt+=i*p),v!=0&&(Jt+=n*v),D=Ve&qs,L=(et&511)<<13,A=D+L,z=Ve>>22,Y=et>>9,ie=(At&262143)<<4,ne=(Ot&31)<<17,N=z+Y+ie+ne,be=At>>18,Pe=Ot>>5,Ae=(Jt&4095)<<8,ue=be+Pe+Ae,N+=A>>22,A&=qs,ue+=N>>22,N&=qs,ue&=Kh,Bc(A,N,ue)}function lXe(e){var t,n,i,r,o,u,a;if(a=c(Ne(e.j,0),11),a.g.c.length!=0&&a.e.c.length!=0)throw V(new Ao("Interactive layout does not support NORTH/SOUTH ports with incoming _and_ outgoing edges."));if(a.g.c.length!=0){for(o=Ii,n=new q(a.g);n.a4)if(e.wj(t)){if(e.rk()){if(r=c(t,49),i=r.Ug(),l=i==e.e&&(e.Dk()?r.Og(r.Vg(),e.zk())==e.Ak():-1-r.Vg()==e.aj()),e.Ek()&&!l&&!i&&r.Zg()){for(o=0;o0&&(d=e.n.a/o);break;case 2:case 4:r=e.i.o.b,r>0&&(d=e.n.b/r)}pe(e,(ye(),J0),d)}if(l=e.o,u=e.a,i)u.a=i.a,u.b=i.b,e.d=!0;else if(t!=Xl&&t!=Y1&&a!=Vo)switch(a.g){case 1:u.a=l.a/2;break;case 2:u.a=l.a,u.b=l.b/2;break;case 3:u.a=l.a/2,u.b=l.b;break;case 4:u.b=l.b/2}else u.a=l.a/2,u.b=l.b/2}function C6(e){var t,n,i,r,o,u,a,l,d,p;if(e.ej())if(p=e.Vi(),l=e.fj(),p>0)if(t=new bre(e.Gi()),n=p,o=n<100?null:new i1(n),SC(e,n,t.g),r=n==1?e.Zi(4,ee(t,0),null,0,l):e.Zi(6,t,null,-1,l),e.bj()){for(i=new $t(t);i.e!=i.i.gc();)o=e.dj(Vt(i),o);o?(o.Ei(r),o.Fi()):e.$i(r)}else o?(o.Ei(r),o.Fi()):e.$i(r);else SC(e,e.Vi(),e.Wi()),e.$i(e.Zi(6,(st(),Qr),null,-1,l));else if(e.bj())if(p=e.Vi(),p>0){for(a=e.Wi(),d=p,SC(e,p,a),o=d<100?null:new i1(d),i=0;ie.d[u.p]&&(n+=die(e.b,o)*c(l.b,19).a,w1(e.a,Ce(o)));for(;!xS(e.a);)zie(e.b,c(Qy(e.a),19).a)}return n}function lKt(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;for(v=new go(c(Ke(e,(N7(),Rpe)),8)),v.a=g.Math.max(v.a-n.b-n.c,0),v.b=g.Math.max(v.b-n.d-n.a,0),r=Te(Ke(e,Ope)),(r==null||(yt(r),r<=0))&&(r=1.3),a=new Se,L=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));L.e!=L.i.gc();)D=c(Vt(L),33),u=new KDe(D),a.c[a.c.length]=u;switch(A=c(Ke(e,KW),311),A.g){case 3:z=DBt(a,t,v.a,v.b,(d=i,yt(r),d));break;case 1:z=r$t(a,t,v.a,v.b,(p=i,yt(r),p));break;default:z=dKt(a,t,v.a,v.b,(l=i,yt(r),l))}o=new TO(z),N=mH(o,t,n,v.a,v.b,i,(yt(r),r)),k0(e,N.a,N.b,!1,!0)}function fKt(e,t){var n,i,r,o;n=t.b,o=new ps(n.j),r=0,i=n.j,i.c=oe(xt,xe,1,0,5,1),n0(c(qg(e.b,(Ie(),_t),(m0(),U0)),15),n),r=xI(o,r,new f4e,i),n0(c(qg(e.b,_t,$1),15),n),r=xI(o,r,new l4e,i),n0(c(qg(e.b,_t,G0),15),n),n0(c(qg(e.b,jt,U0),15),n),n0(c(qg(e.b,jt,$1),15),n),r=xI(o,r,new h4e,i),n0(c(qg(e.b,jt,G0),15),n),n0(c(qg(e.b,Yt,U0),15),n),r=xI(o,r,new d4e,i),n0(c(qg(e.b,Yt,$1),15),n),r=xI(o,r,new g4e,i),n0(c(qg(e.b,Yt,G0),15),n),n0(c(qg(e.b,Mt,U0),15),n),r=xI(o,r,new M4e,i),n0(c(qg(e.b,Mt,$1),15),n),n0(c(qg(e.b,Mt,G0),15),n)}function hKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(Wt(t,"Layer size calculation",1),p=Ii,d=$i,r=!1,a=new q(e.b);a.a.5?Y-=u*2*(L-.5):L<.5&&(Y+=o*2*(.5-L)),r=a.d.b,Yz.a-N-p&&(Y=z.a-N-p),a.n.a=t+Y}}function dKt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z;for(a=oe(gr,lo,25,e.c.length,15,1),A=new I8(new c6e),nce(A,e),d=0,N=new Se;A.b.c.length!=0;)if(u=c(A.b.c.length==0?null:Ne(A.b,0),157),d>1&&ws(u)*eu(u)/2>a[0]){for(o=0;oa[o];)++o;L=new Hf(N,0,o+1),v=new TO(L),p=ws(u)/eu(u),l=mH(v,t,new Ry,n,i,r,p),Wn(ol(v.e),l),R_(wE(A,v)),D=new Hf(N,o+1,N.c.length),nce(A,D),N.c=oe(xt,xe,1,0,5,1),d=0,$Re(a,a.length,0)}else z=A.b.c.length==0?null:Ne(A.b,0),z!=null&&Y$(A,0),d>0&&(a[d]=a[d-1]),a[d]+=ws(u)*eu(u),++d,N.c[N.c.length]=u;return N}function gKt(e){var t,n,i,r,o;if(i=c(B(e,(Oe(),zc)),163),i==(Ku(),K1)){for(n=new Kt(Ht(ko(e).a.Kc(),new j));dn(n);)if(t=c(rn(n),17),!JFe(t))throw V(new ym(Cz+LI(e)+"' has its layer constraint set to FIRST_SEPARATE, but has at least one incoming edge. FIRST_SEPARATE nodes must not have incoming edges."))}else if(i==xw){for(o=new Kt(Ht(Vi(e).a.Kc(),new j));dn(o);)if(r=c(rn(o),17),!JFe(r))throw V(new ym(Cz+LI(e)+"' has its layer constraint set to LAST_SEPARATE, but has at least one outgoing edge. LAST_SEPARATE nodes must not have outgoing edges."))}}function bKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;for(Wt(t,"Label dummy removal",1),i=ge(Te(B(e,(Oe(),Z2)))),r=ge(Te(B(e,Hw))),d=c(B(e,Pu),103),l=new q(e.b);l.a0&&wGe(e,a,v);for(r=new q(v);r.a>19!=0&&(t=Z_(t),l=!l),u=gLt(t),o=!1,r=!1,i=!1,e.h==bT&&e.m==0&&e.l==0)if(r=!0,o=!0,u==-1)e=D7e((F_(),che)),i=!0,l=!l;else return a=vse(e,u),l&&oK(a),n&&(L1=Bc(0,0,0)),a;else e.h>>19!=0&&(o=!0,e=Z_(e),i=!0,l=!l);return u!=-1?tjt(e,u,l,o,n):lce(e,t)<0?(n&&(o?L1=Z_(e):L1=Bc(e.l,e.m,e.h)),Bc(0,0,0)):oBt(i?e:Bc(e.l,e.m,e.h),t,l,o,r,n)}function cD(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;if(e.e&&e.c.ct.f||t.g>e.f)){for(n=0,i=0,u=e.w.a.ec().Kc();u.Ob();)r=c(u.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,t.g,t.f)&&++n;for(a=e.r.a.ec().Kc();a.Ob();)r=c(a.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,t.g,t.f)&&--n;for(l=t.w.a.ec().Kc();l.Ob();)r=c(l.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,e.g,e.f)&&++i;for(o=t.r.a.ec().Kc();o.Ob();)r=c(o.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,e.g,e.f)&&--i;n=0)return r=PAt(e,t.substr(1,u-1)),p=t.substr(u+1,l-(u+1)),vHt(e,p,r)}else{if(n=-1,fhe==null&&(fhe=new RegExp("\\d")),fhe.test(String.fromCharCode(a))&&(n=wte(t,is(46),l-1),n>=0)){i=c(S$(e,H$e(e,t.substr(1,n-1)),!1),58),d=0;try{d=vu(t.substr(n+1),Ar,Fn)}catch(A){throw A=gi(A),Q(A,127)?(o=A,V(new mO(o))):V(A)}if(d=0)return n;switch(o0(wo(e,n))){case 2:{if(rt("",gd(e,n.Hj()).ne())){if(l=LC(wo(e,n)),a=C_(wo(e,n)),p=Cse(e,t,l,a),p)return p;for(r=Zse(e,t),u=0,v=r.gc();u1)throw V(new St(BT));for(p=qc(e.e.Tg(),t),i=c(e.g,119),u=0;u1,d=new Rl(A.b);Fo(d.a)||Fo(d.b);)l=c(Fo(d.a)?K(d.a):K(d.b),17),v=l.c==A?l.d:l.c,g.Math.abs(Ko(U(G(ir,1),we,8,0,[v.i.n,v.n,v.a])).b-u.b)>1&&mNt(e,l,u,o,A)}}function IKt(e){var t,n,i,r,o,u;if(r=new _r(e.e,0),i=new _r(e.a,0),e.d)for(n=0;ncV;){for(o=t,u=0;g.Math.abs(t-o)0),r.a.Xb(r.c=--r.b),zBt(e,e.b-u,o,i,r),Lt(r.b0),i.a.Xb(i.c=--i.b)}if(!e.d)for(n=0;n0?(e.f[p.p]=D/(p.e.c.length+p.g.c.length),e.c=g.Math.min(e.c,e.f[p.p]),e.b=g.Math.max(e.b,e.f[p.p])):a&&(e.f[p.p]=D)}}function jKt(e){e.b=null,e.bb=null,e.fb=null,e.qb=null,e.a=null,e.c=null,e.d=null,e.e=null,e.f=null,e.n=null,e.M=null,e.L=null,e.Q=null,e.R=null,e.K=null,e.db=null,e.eb=null,e.g=null,e.i=null,e.j=null,e.k=null,e.gb=null,e.o=null,e.p=null,e.q=null,e.r=null,e.$=null,e.ib=null,e.S=null,e.T=null,e.t=null,e.s=null,e.u=null,e.v=null,e.w=null,e.B=null,e.A=null,e.C=null,e.D=null,e.F=null,e.G=null,e.H=null,e.I=null,e.J=null,e.P=null,e.Z=null,e.U=null,e.V=null,e.W=null,e.X=null,e.Y=null,e._=null,e.ab=null,e.cb=null,e.hb=null,e.nb=null,e.lb=null,e.mb=null,e.ob=null,e.pb=null,e.jb=null,e.kb=null,e.N=!1,e.O=!1}function AKt(e,t,n){var i,r,o,u;for(Wt(n,"Graph transformation ("+e.a+")",1),u=a0(t.a),o=new q(t.b);o.a0&&(e.a=l+(D-1)*o,t.c.b+=e.a,t.f.b+=e.a)),L.a.gc()!=0&&(A=new DB(1,o),D=Mue(A,t,L,N,t.f.b+l-t.c.b),D>0&&(t.f.b+=l+(D-1)*o))}function jE(e,t){var n,i,r,o;o=e.F,t==null?(e.F=null,nE(e,null)):(e.F=(yt(t),t),i=af(t,is(60)),i!=-1?(r=t.substr(0,i),af(t,is(46))==-1&&!rt(r,M2)&&!rt(r,Q6)&&!rt(r,ck)&&!rt(r,Z6)&&!rt(r,eP)&&!rt(r,tP)&&!rt(r,nP)&&!rt(r,iP)&&(r=ett),n=Y9(t,is(62)),n!=-1&&(r+=""+t.substr(n+1)),nE(e,r)):(r=t,af(t,is(46))==-1&&(i=af(t,is(91)),i!=-1&&(r=t.substr(0,i)),!rt(r,M2)&&!rt(r,Q6)&&!rt(r,ck)&&!rt(r,Z6)&&!rt(r,eP)&&!rt(r,tP)&&!rt(r,nP)&&!rt(r,iP)?(r=ett,i!=-1&&(r+=""+t.substr(i))):r=t),nE(e,r),r==t&&(e.F=e.D))),(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,5,o,t))}function DKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;if(N=t.b.c.length,!(N<3)){for(D=oe(Qt,_n,25,N,15,1),v=0,p=new q(t.b);p.au)&&Yi(e.b,c(z.b,17));++a}o=u}}}function Eue(e,t){var n;if(t==null||rt(t,rs)||t.length==0&&e.k!=(yd(),t3))return null;switch(e.k.g){case 1:return b7(t,GE)?(Pt(),ZE):b7(t,_V)?(Pt(),hb):null;case 2:try{return Ce(vu(t,Ar,Fn))}catch(i){if(i=gi(i),Q(i,127))return null;throw V(i)}case 4:try{return aw(t)}catch(i){if(i=gi(i),Q(i,127))return null;throw V(i)}case 3:return t;case 5:return Xqe(e),nUe(e,t);case 6:return Xqe(e),qxt(e,e.a,t);case 7:try{return n=ext(e),n.Jf(t),n}catch(i){if(i=gi(i),Q(i,32))return null;throw V(i)}default:throw V(new Ao("Invalid type set for this layout option."))}}function kKt(e){K5();var t,n,i,r,o,u,a;for(a=new IAe,n=new q(e);n.a=a.b.c)&&(a.b=t),(!a.c||t.c<=a.c.c)&&(a.d=a.c,a.c=t),(!a.e||t.d>=a.e.d)&&(a.e=t),(!a.f||t.d<=a.f.d)&&(a.f=t);return i=new v7((Q_(),V0)),zC(e,crt,new Js(U(G(QT,1),xe,369,0,[i]))),u=new v7(Ow),zC(e,ort,new Js(U(G(QT,1),xe,369,0,[u]))),r=new v7(Aw),zC(e,rrt,new Js(U(G(QT,1),xe,369,0,[r]))),o=new v7(Pv),zC(e,irt,new Js(U(G(QT,1),xe,369,0,[o]))),Nq(i.c,V0),Nq(r.c,Aw),Nq(o.c,Pv),Nq(u.c,Ow),a.a.c=oe(xt,xe,1,0,5,1),Hi(a.a,i.c),Hi(a.a,Kg(r.c)),Hi(a.a,o.c),Hi(a.a,Kg(u.c)),a}function Sue(e){var t;switch(e.d){case 1:{if(e.hj())return e.o!=-2;break}case 2:{if(e.hj())return e.o==-2;break}case 3:case 5:case 4:case 6:case 7:return e.o>-2;default:return!1}switch(t=e.gj(),e.p){case 0:return t!=null&&Be(Fe(t))!=s5(e.k,0);case 1:return t!=null&&c(t,217).a!=tn(e.k)<<24>>24;case 2:return t!=null&&c(t,172).a!=(tn(e.k)&Ni);case 6:return t!=null&&s5(c(t,162).a,e.k);case 5:return t!=null&&c(t,19).a!=tn(e.k);case 7:return t!=null&&c(t,184).a!=tn(e.k)<<16>>16;case 3:return t!=null&&ge(Te(t))!=e.j;case 4:return t!=null&&c(t,155).a!=e.j;default:return t==null?e.n!=null:!$n(t,e.n)}}function sT(e,t,n){var i,r,o,u;return e.Fk()&&e.Ek()&&(u=PB(e,c(n,56)),le(u)!==le(n))?(e.Oi(t),e.Ui(t,zBe(e,t,u)),e.rk()&&(o=(r=c(n,49),e.Dk()?e.Bk()?r.ih(e.b,Xr(c(at(Xc(e.b),e.aj()),18)).n,c(at(Xc(e.b),e.aj()).Yj(),26).Bj(),null):r.ih(e.b,di(r.Tg(),Xr(c(at(Xc(e.b),e.aj()),18))),null,null):r.ih(e.b,-1-e.aj(),null,null)),!c(u,49).eh()&&(o=(i=c(u,49),e.Dk()?e.Bk()?i.gh(e.b,Xr(c(at(Xc(e.b),e.aj()),18)).n,c(at(Xc(e.b),e.aj()).Yj(),26).Bj(),o):i.gh(e.b,di(i.Tg(),Xr(c(at(Xc(e.b),e.aj()),18))),null,o):i.gh(e.b,-1-e.aj(),null,o))),o&&o.Fi()),Qs(e.b)&&e.$i(e.Zi(9,n,u,t,!1)),u):n}function gXe(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;for(p=ge(Te(B(e,(Oe(),tp)))),i=ge(Te(B(e,Ebe))),A=new yN,pe(A,tp,p+i),d=t,Y=d.d,N=d.c.i,ie=d.d.i,z=uee(N.c),ne=uee(ie.c),r=new Se,v=z;v<=ne;v++)a=new Nh(e),Sg(a,(Dt(),ur)),pe(a,(ye(),Hn),d),pe(a,ji,(wr(),Ic)),pe(a,KR,A),D=c(Ne(e.b,v),29),v==z?cw(a,D.a.c.length-n,D):po(a,D),ue=ge(Te(B(d,Id))),ue<0&&(ue=0,pe(d,Id,ue)),a.o.b=ue,L=g.Math.floor(ue/2),u=new gc,Ji(u,(Ie(),Mt)),Bo(u,a),u.n.b=L,l=new gc,Ji(l,jt),Bo(l,a),l.n.b=L,br(d,u),o=new c0,Mo(o,d),pe(o,yo,null),Rr(o,l),br(o,Y),LOt(a,d,o),r.c[r.c.length]=o,d=o;return r}function gH(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;for(l=c(vd(e,(Ie(),Mt)).Kc().Pb(),11).e,D=c(vd(e,jt).Kc().Pb(),11).g,a=l.c.length,ne=Ol(c(Ne(e.j,0),11));a-- >0;){for(N=(pt(0,l.c.length),c(l.c[0],17)),r=(pt(0,D.c.length),c(D.c[0],17)),ie=r.d.e,o=Do(ie,r,0),$Pt(N,r.d,o),Rr(r,null),br(r,null),L=N.a,t&&Cn(L,new go(ne)),i=Mn(r.a,0);i.b!=i.d.c;)n=c(Pn(i),8),Cn(L,new go(n));for(Y=N.b,A=new q(r.b);A.a0&&(u=g.Math.max(u,qKe(e.C.b+i.d.b,r))),p=i,v=r,A=o;e.C&&e.C.c>0&&(D=A+e.C.c,d&&(D+=p.d.c),u=g.Math.max(u,(Il(),Na(ql),g.Math.abs(v-1)<=ql||v==1||isNaN(v)&&isNaN(1)?0:D/(1-v)))),n.n.b=0,n.a.a=u}function pXe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D;if(n=c(so(e.b,t),124),l=c(c(Vn(e.r,t),21),84),l.dc()){n.n.d=0,n.n.a=0;return}for(d=e.u.Hc((js(),Wh)),u=0,e.A.Hc((ou(),Cb))&&YWe(e,t),a=l.Kc(),p=null,A=0,v=0;a.Ob();)i=c(a.Pb(),111),o=ge(Te(i.b.We((X9(),Rk)))),r=i.b.rf().b,p?(D=v+p.d.a+e.w+i.d.d,u=g.Math.max(u,(Il(),Na(ql),g.Math.abs(A-o)<=ql||A==o||isNaN(A)&&isNaN(o)?0:D/(o-A)))):e.C&&e.C.d>0&&(u=g.Math.max(u,qKe(e.C.d+i.d.d,o))),p=i,A=o,v=r;e.C&&e.C.a>0&&(D=v+e.C.a,d&&(D+=p.d.a),u=g.Math.max(u,(Il(),Na(ql),g.Math.abs(A-1)<=ql||A==1||isNaN(A)&&isNaN(1)?0:D/(1-A)))),n.n.d=0,n.a.b=u}function wXe(e,t,n){var i,r,o,u,a,l;for(this.g=e,a=t.d.length,l=n.d.length,this.d=oe(nh,Ed,10,a+l,0,1),u=0;u0?K$(this,this.f/this.a):Tl(t.g,t.d[0]).a!=null&&Tl(n.g,n.d[0]).a!=null?K$(this,(ge(Tl(t.g,t.d[0]).a)+ge(Tl(n.g,n.d[0]).a))/2):Tl(t.g,t.d[0]).a!=null?K$(this,Tl(t.g,t.d[0]).a):Tl(n.g,n.d[0]).a!=null&&K$(this,Tl(n.g,n.d[0]).a)}function RKt(e,t){var n,i,r,o,u,a,l,d,p,v;for(e.a=new Mxe(aTt(WP)),i=new q(t.a);i.a=1&&(z-u>0&&v>=0?(l.n.a+=N,l.n.b+=o*u):z-u<0&&p>=0&&(l.n.a+=N*z,l.n.b+=o));e.o.a=t.a,e.o.b=t.b,pe(e,(Oe(),wb),(ou(),i=c(rl(tM),9),new ku(i,c(Da(i,i.length),9),0)))}function FKt(e,t,n,i,r,o){var u;if(!(t==null||!OK(t,ime,rme)))throw V(new St("invalid scheme: "+t));if(!e&&!(n!=null&&af(n,is(35))==-1&&n.length>0&&(fn(0,n.length),n.charCodeAt(0)!=47)))throw V(new St("invalid opaquePart: "+n));if(e&&!(t!=null&&ZM(Bx,t.toLowerCase()))&&!(n==null||!OK(n,oM,cM)))throw V(new St(Ket+n));if(e&&t!=null&&ZM(Bx,t.toLowerCase())&&!O7t(n))throw V(new St(Ket+n));if(!xAt(i))throw V(new St("invalid device: "+i));if(!Tjt(r))throw u=r==null?"invalid segments: null":"invalid segment: "+Pjt(r),V(new St(u));if(!(o==null||af(o,is(35))==-1))throw V(new St("invalid query: "+o))}function BKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;for(Wt(t,"Calculate Graph Size",1),t.n&&e&&Ra(t,xa(e),(ru(),Tu)),a=$E,l=$E,o=Ule,u=Ule,v=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));v.e!=v.i.gc();)d=c(Vt(v),33),L=d.i,N=d.j,Y=d.g,i=d.f,r=c(Ke(d,(kn(),Dj)),142),a=g.Math.min(a,L-r.b),l=g.Math.min(l,N-r.d),o=g.Math.max(o,L+Y+r.c),u=g.Math.max(u,N+i+r.a);for(D=c(Ke(e,(kn(),Sb)),116),A=new $e(a-D.b,l-D.d),p=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));p.e!=p.i.gc();)d=c(Vt(p),33),es(d,d.i-A.a),ts(d,d.j-A.b);z=o-a+(D.b+D.c),n=u-l+(D.d+D.a),p0(e,z),b0(e,n),t.n&&e&&Ra(t,xa(e),(ru(),Tu))}function yXe(e){var t,n,i,r,o,u,a,l,d,p;for(i=new Se,u=new q(e.e.a);u.a0){y7(e,n,0),n.a+=String.fromCharCode(i),r=P9t(t,o),y7(e,n,r),o+=r-1;continue}i==39?o+11)for(N=oe(Qt,_n,25,e.b.b.c.length,15,1),v=0,d=new q(e.b.b);d.a=a&&r<=l)a<=r&&o<=l?(n[p++]=r,n[p++]=o,i+=2):a<=r?(n[p++]=r,n[p++]=l,e.b[i]=l+1,u+=2):o<=l?(n[p++]=a,n[p++]=o,i+=2):(n[p++]=a,n[p++]=l,e.b[i]=l+1);else if(lA1)&&a<10);lZ(e.c,new n3e),_Xe(e),TSt(e.c),LKt(e.f)}function HKt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(Be(Fe(B(n,(Oe(),Bw)))))for(a=new q(n.j);a.a=2){for(l=Mn(n,0),u=c(Pn(l),8),a=c(Pn(l),8);a.a0&&vI(d,!0,(eo(),Va)),a.k==(Dt(),Bi)&&Wxe(d),Kn(e.f,a,t)}}function UKt(e,t,n){var i,r,o,u,a,l,d,p,v,A;switch(Wt(n,"Node promotion heuristic",1),e.g=t,Zqt(e),e.q=c(B(t,(Oe(),FU)),260),p=c(B(e.g,ube),19).a,o=new K_e,e.q.g){case 2:case 1:TE(e,o);break;case 3:for(e.q=(iv(),WR),TE(e,o),l=0,a=new q(e.a);a.ae.j&&(e.q=gj,TE(e,o));break;case 4:for(e.q=(iv(),WR),TE(e,o),d=0,r=new q(e.b);r.ae.k&&(e.q=bj,TE(e,o));break;case 6:A=xi(g.Math.ceil(e.f.length*p/100)),TE(e,new iTe(A));break;case 5:v=xi(g.Math.ceil(e.d*p/100)),TE(e,new rTe(v));break;default:TE(e,o)}$Nt(e,t),qt(n)}function SXe(e,t,n){var i,r,o,u;this.j=e,this.e=Ice(e),this.o=this.j.e,this.i=!!this.o,this.p=this.i?c(Ne(n,Nr(this.o).p),214):null,r=c(B(e,(ye(),Cc)),21),this.g=r.Hc((to(),Gu)),this.b=new Se,this.d=new VHe(this.e),u=c(B(this.j,Y2),230),this.q=MTt(t,u,this.e),this.k=new GLe(this),o=kl(U(G(Trt,1),xe,225,0,[this,this.d,this.k,this.q])),t==(w0(),wj)&&!Be(Fe(B(e,(Oe(),Lw))))?(i=new jce(this.e),o.c[o.c.length]=i,this.c=new rie(i,u,c(this.q,402))):t==wj&&Be(Fe(B(e,(Oe(),Lw))))?(i=new jce(this.e),o.c[o.c.length]=i,this.c=new TKe(i,u,c(this.q,402))):this.c=new COe(t,this),Ee(o,this.c),rXe(o,this.e),this.s=jHt(this.k)}function WKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;for(v=c(G9((u=Mn(new t1(t).a.d,0),new Dy(u))),86),L=v?c(B(v,(ic(),bW)),86):null,r=1;v&&L;){for(l=0,ue=0,n=v,i=L,a=0;a=e.i?(++e.i,Ee(e.a,Ce(1)),Ee(e.b,p)):(i=e.c[t.p][1],Lu(e.a,d,Ce(c(Ne(e.a,d),19).a+1-i)),Lu(e.b,d,ge(Te(Ne(e.b,d)))+p-i*e.e)),(e.q==(iv(),gj)&&(c(Ne(e.a,d),19).a>e.j||c(Ne(e.a,d-1),19).a>e.j)||e.q==bj&&(ge(Te(Ne(e.b,d)))>e.k||ge(Te(Ne(e.b,d-1)))>e.k))&&(l=!1),u=new Kt(Ht(ko(t).a.Kc(),new j));dn(u);)o=c(rn(u),17),a=o.c.i,e.f[a.p]==d&&(v=PXe(e,a),r=r+c(v.a,19).a,l=l&&Be(Fe(v.b)));return e.f[t.p]=d,r=r+e.c[t.p][0],new yr(Ce(r),(Pt(),!!l))}function Mue(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y;for(v=new en,u=new Se,GGe(e,n,e.d.fg(),u,v),GGe(e,i,e.d.gg(),u,v),e.b=.2*(N=xUe($o(new ht(null,new bt(u,16)),new YSe)),z=xUe($o(new ht(null,new bt(u,16)),new XSe)),g.Math.min(N,z)),o=0,a=0;a=2&&(Y=iWe(u,!0,A),!e.e&&(e.e=new sje(e)),C9t(e.e,Y,u,e.b)),NVe(u,A),lqt(u),D=-1,p=new q(u);p.aa)}function XKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(n=c(B(e,(Oe(),ji)),98),u=e.f,o=e.d,a=u.a+o.b+o.c,l=0-o.d-e.c.b,p=u.b+o.d+o.a-e.c.b,d=new Se,v=new Se,r=new q(t);r.a0),c(p.a.Xb(p.c=--p.b),17));o!=i&&p.b>0;)e.a[o.p]=!0,e.a[i.p]=!0,o=(Lt(p.b>0),c(p.a.Xb(p.c=--p.b),17));p.b>0&&nu(p)}}function TXe(e,t,n){var i,r,o,u,a,l,d,p,v;if(e.a!=t.Aj())throw V(new St(UE+t.ne()+K0));if(i=gd((vs(),Ir),t).$k(),i)return i.Aj().Nh().Ih(i,n);if(u=gd(Ir,t).al(),u){if(n==null)return null;if(a=c(n,15),a.dc())return"";for(v=new nd,o=a.Kc();o.Ob();)r=o.Pb(),co(v,u.Aj().Nh().Ih(u,r)),v.a+=" ";return xF(v,v.a.length-1)}if(p=gd(Ir,t).bl(),!p.dc()){for(d=p.Kc();d.Ob();)if(l=c(d.Pb(),148),l.wj(n))try{if(v=l.Aj().Nh().Ih(l,n),v!=null)return v}catch(A){if(A=gi(A),!Q(A,102))throw V(A)}throw V(new St("Invalid value: '"+n+"' for datatype :"+t.ne()))}return c(t,834).Fj(),n==null?null:Q(n,172)?""+c(n,172).a:Fs(n)==Mk?nDe(rM[0],c(n,199)):Ro(n)}function nqt(e){var t,n,i,r,o,u,a,l,d,p;for(d=new wi,a=new wi,o=new q(e);o.a-1){for(r=Mn(a,0);r.b!=r.d.c;)i=c(Pn(r),128),i.v=u;for(;a.b!=0;)for(i=c(uq(a,0),128),n=new q(i.i);n.a0&&(n+=l.n.a+l.o.a/2,++v),L=new q(l.j);L.a0&&(n/=v),Y=oe(gr,lo,25,i.a.c.length,15,1),a=0,d=new q(i.a);d.a=a&&r<=l)a<=r&&o<=l?i+=2:a<=r?(e.b[i]=l+1,u+=2):o<=l?(n[p++]=r,n[p++]=a-1,i+=2):(n[p++]=r,n[p++]=a-1,e.b[i]=l+1,u+=2);else if(l0?r-=864e5:r+=864e5,l=new Jee(xr(ns(t.q.getTime()),r))),p=new _m,d=e.a.length,o=0;o=97&&i<=122||i>=65&&i<=90){for(u=o+1;u=d)throw V(new St("Missing trailing '"));u+10&&n.c==0&&(!t&&(t=new Se),t.c[t.c.length]=n);if(t)for(;t.c.length!=0;){if(n=c(ad(t,0),233),n.b&&n.b.c.length>0){for(o=(!n.b&&(n.b=new Se),new q(n.b));o.aDo(e,n,0))return new yr(r,n)}else if(ge(Tl(r.g,r.d[0]).a)>ge(Tl(n.g,n.d[0]).a))return new yr(r,n)}for(a=(!n.e&&(n.e=new Se),n.e).Kc();a.Ob();)u=c(a.Pb(),233),l=(!u.b&&(u.b=new Se),u.b),Vp(0,l.c.length),WS(l.c,0,n),u.c==l.c.length&&(t.c[t.c.length]=u)}return null}function kXe(e,t){var n,i,r,o,u,a,l,d,p;if(e==null)return rs;if(l=t.a.zc(e,t),l!=null)return"[...]";for(n=new Hg(zr,"[","]"),r=e,o=0,u=r.length;o=14&&p<=16))?t.a._b(i)?(n.a?wn(n.a,n.b):n.a=new lu(n.d),a5(n.a,"[...]")):(a=$g(i),d=new _5(t),jh(n,kXe(a,d))):Q(i,177)?jh(n,Zkt(c(i,177))):Q(i,190)?jh(n,q7t(c(i,190))):Q(i,195)?jh(n,QDt(c(i,195))):Q(i,2012)?jh(n,H7t(c(i,2012))):Q(i,48)?jh(n,Qkt(c(i,48))):Q(i,364)?jh(n,hRt(c(i,364))):Q(i,832)?jh(n,Jkt(c(i,832))):Q(i,104)&&jh(n,Xkt(c(i,104))):jh(n,i==null?rs:Ro(i));return n.a?n.e.length==0?n.a.a:n.a.a+(""+n.e):n.c}function RXe(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;for(a=rv(t,!1,!1),Y=HI(a),i&&(Y=_I(Y)),ne=ge(Te(Ke(t,(o6(),TG)))),z=(Lt(Y.b!=0),c(Y.a.a.c,8)),v=c(hl(Y,1),8),Y.b>2?(p=new Se,Hi(p,new Hf(Y,1,Y.b)),o=dJe(p,ne+e.a),ie=new kq(o),Mo(ie,t),n.c[n.c.length]=ie):i?ie=c(Bt(e.b,Uf(t)),266):ie=c(Bt(e.b,M1(t)),266),l=Uf(t),i&&(l=M1(t)),u=mkt(z,l),d=ne+e.a,u.a?(d+=g.Math.abs(z.b-v.b),N=new $e(v.a,(v.b+z.b)/2)):(d+=g.Math.abs(z.a-v.a),N=new $e((v.a+z.a)/2,v.b)),i?Kn(e.d,t,new Xoe(ie,u,N,d)):Kn(e.c,t,new Xoe(ie,u,N,d)),Kn(e.b,t,ie),L=(!t.n&&(t.n=new Me(Lo,t,1,7)),t.n),D=new $t(L);D.e!=D.i.gc();)A=c(Vt(D),137),r=eT(e,A,!0,0,0),n.c[n.c.length]=r}function lqt(e){var t,n,i,r,o,u,a,l,d,p;for(d=new Se,a=new Se,u=new q(e);u.a-1){for(o=new q(a);o.a0)&&(iQ(l,g.Math.min(l.o,r.o-1)),FA(l,l.i-1),l.i==0&&(a.c[a.c.length]=l))}}function AE(e,t,n){var i,r,o,u,a,l,d;if(d=e.c,!t&&(t=ume),e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&(l=new sr(e,1,2,d,e.c),n?n.Ei(l):n=l),d!=t){if(Q(e.Cb,284))e.Db>>16==-10?n=c(e.Cb,284).nk(t,n):e.Db>>16==-15&&(!t&&(t=(ot(),Ql)),!d&&(d=(ot(),Ql)),e.Cb.nh()&&(l=new Ah(e.Cb,1,13,d,t,wd(Ns(c(e.Cb,59)),e),!1),n?n.Ei(l):n=l));else if(Q(e.Cb,88))e.Db>>16==-23&&(Q(t,88)||(t=(ot(),Ea)),Q(d,88)||(d=(ot(),Ea)),e.Cb.nh()&&(l=new Ah(e.Cb,1,10,d,t,wd(dc(c(e.Cb,26)),e),!1),n?n.Ei(l):n=l));else if(Q(e.Cb,444))for(a=c(e.Cb,836),u=(!a.b&&(a.b=new zA(new BN)),a.b),o=(i=new Gg(new Pg(u.a).a),new VA(i));o.a.b;)r=c(g0(o.a).cd(),87),n=AE(r,H7(r,a),n)}return n}function fqt(e,t){var n,i,r,o,u,a,l,d,p,v,A;for(u=Be(Fe(Ke(e,(Oe(),Bw)))),A=c(Ke(e,Kw),21),l=!1,d=!1,v=new $t((!e.c&&(e.c=new Me(Vs,e,9,9)),e.c));v.e!=v.i.gc()&&(!l||!d);){for(o=c(Vt(v),118),a=0,r=d1(Ll(U(G(zl,1),xe,20,0,[(!o.d&&(o.d=new dt(rr,o,8,5)),o.d),(!o.e&&(o.e=new dt(rr,o,7,4)),o.e)])));dn(r)&&(i=c(rn(r),79),p=u&&T0(i)&&Be(Fe(Ke(i,pb))),n=fXe((!i.b&&(i.b=new dt(Ut,i,4,7)),i.b),o)?e==yi(Co(c(ee((!i.c&&(i.c=new dt(Ut,i,5,8)),i.c),0),82))):e==yi(Co(c(ee((!i.b&&(i.b=new dt(Ut,i,4,7)),i.b),0),82))),!((p||n)&&(++a,a>1))););(a>0||A.Hc((js(),Wh))&&(!o.n&&(o.n=new Me(Lo,o,1,7)),o.n).i>0)&&(l=!0),a>1&&(d=!0)}l&&t.Fc((to(),Gu)),d&&t.Fc((to(),mP))}function xXe(e){var t,n,i,r,o,u,a,l,d,p,v,A;if(A=c(Ke(e,(kn(),Eb)),21),A.dc())return null;if(a=0,u=0,A.Hc((ou(),$j))){for(p=c(Ke(e,UP),98),i=2,n=2,r=2,o=2,t=yi(e)?c(Ke(yi(e),rp),103):c(Ke(e,rp),103),d=new $t((!e.c&&(e.c=new Me(Vs,e,9,9)),e.c));d.e!=d.i.gc();)if(l=c(Vt(d),118),v=c(Ke(l,Gv),61),v==(Ie(),Vo)&&(v=lue(l,t),ao(l,Gv,v)),p==(wr(),Ic))switch(v.g){case 1:i=g.Math.max(i,l.i+l.g);break;case 2:n=g.Math.max(n,l.j+l.f);break;case 3:r=g.Math.max(r,l.i+l.g);break;case 4:o=g.Math.max(o,l.j+l.f)}else switch(v.g){case 1:i+=l.g+2;break;case 2:n+=l.f+2;break;case 3:r+=l.g+2;break;case 4:o+=l.f+2}a=g.Math.max(i,r),u=g.Math.max(n,o)}return k0(e,a,u,!0,!0)}function bH(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;for(ie=c(gu(CO(si(new ht(null,new bt(t.d,16)),new ITe(n)),new TTe(n)),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),v=Fn,p=Ar,l=new q(t.b.j);l.a0,d?d&&(A=Y.p,u?++A:--A,v=c(Ne(Y.c.a,A),10),i=Cqe(v),D=!(Bq(i,Pe,n[0])||rxe(i,Pe,n[0]))):D=!0),L=!1,be=t.D.i,be&&be.c&&a.e&&(p=u&&be.p>0||!u&&be.p0&&(t.a+=zr),sD(c(Vt(a),160),t);for(t.a+=Sz,l=new Vy((!i.c&&(i.c=new dt(Ut,i,5,8)),i.c));l.e!=l.i.gc();)l.e>0&&(t.a+=zr),sD(c(Vt(l),160),t);t.a+=")"}}function wqt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D;if(o=c(B(e,(ye(),Hn)),79),!!o){for(i=e.a,r=new go(n),Wn(r,s7t(e)),Y_(e.d.i,e.c.i)?(A=e.c,v=Ko(U(G(ir,1),we,8,0,[A.n,A.a])),hr(v,n)):v=Ol(e.c),Ri(i,v,i.a,i.a.a),D=Ol(e.d),B(e,TU)!=null&&Wn(D,c(B(e,TU),8)),Ri(i,D,i.c.b,i.c),Qp(i,r),u=rv(o,!0,!0),RO(u,c(ee((!o.b&&(o.b=new dt(Ut,o,4,7)),o.b),0),82)),xO(u,c(ee((!o.c&&(o.c=new dt(Ut,o,5,8)),o.c),0),82)),rT(i,u),p=new q(e.b);p.a=0){for(l=null,a=new _r(p.a,d+1);a.bu?1:Wb(isNaN(0),isNaN(u)))<0&&(Na(Mf),(g.Math.abs(u-1)<=Mf||u==1||isNaN(u)&&isNaN(1)?0:u<1?-1:u>1?1:Wb(isNaN(u),isNaN(1)))<0)&&(Na(Mf),(g.Math.abs(0-a)<=Mf||a==0||isNaN(0)&&isNaN(a)?0:0a?1:Wb(isNaN(0),isNaN(a)))<0)&&(Na(Mf),(g.Math.abs(a-1)<=Mf||a==1||isNaN(a)&&isNaN(1)?0:a<1?-1:a>1?1:Wb(isNaN(a),isNaN(1)))<0)),o)}function vqt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe;for(v=new Tne(new wQ(e));v.b!=v.c.a.d;)for(p=$Be(v),a=c(p.d,56),t=c(p.e,56),u=a.Tg(),N=0,ue=(u.i==null&&wf(u),u.i).length;N=0&&N=d.c.c.length?p=uie((Dt(),Ui),ur):p=uie((Dt(),ur),ur),p*=2,o=n.a.g,n.a.g=g.Math.max(o,o+(p-o)),u=n.b.g,n.b.g=g.Math.max(u,u+(p-u)),r=t}}function Eqt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be;for(be=nRe(e),p=new Se,a=e.c.length,v=a-1,A=a+1;be.a.c!=0;){for(;n.b!=0;)ne=(Lt(n.b!=0),c(Fu(n,n.a.a),112)),D5(be.a,ne)!=null,ne.g=v--,fue(ne,t,n,i);for(;t.b!=0;)ue=(Lt(t.b!=0),c(Fu(t,t.a.a),112)),D5(be.a,ue)!=null,ue.g=A++,fue(ue,t,n,i);for(d=Ar,Y=(u=new m5(new b5(new qM(be.a).a).b),new HM(u));iC(Y.a.a);){if(z=(o=e8(Y.a),c(o.cd(),112)),!i&&z.b>0&&z.a<=0){p.c=oe(xt,xe,1,0,5,1),p.c[p.c.length]=z;break}N=z.i-z.d,N>=d&&(N>d&&(p.c=oe(xt,xe,1,0,5,1),d=N),p.c[p.c.length]=z)}p.c.length!=0&&(l=c(Ne(p,S7(r,p.c.length)),112),D5(be.a,l)!=null,l.g=A++,fue(l,t,n,i),p.c=oe(xt,xe,1,0,5,1))}for(ie=e.c.length+1,L=new q(e);L.a0&&(A.d+=p.n.d,A.d+=p.d),A.a>0&&(A.a+=p.n.a,A.a+=p.d),A.b>0&&(A.b+=p.n.b,A.b+=p.d),A.c>0&&(A.c+=p.n.c,A.c+=p.d),A}function NXe(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L;for(A=n.d,v=n.c,o=new $e(n.f.a+n.d.b+n.d.c,n.f.b+n.d.d+n.d.a),u=o.b,d=new q(e.a);d.a0&&(e.c[t.c.p][t.p].d+=$s(e.i,24)*vT*.07000000029802322-.03500000014901161,e.c[t.c.p][t.p].a=e.c[t.c.p][t.p].d/e.c[t.c.p][t.p].b)}}function Aqt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;for(L=new q(e);L.ai.d,i.d=g.Math.max(i.d,t),a&&n&&(i.d=g.Math.max(i.d,i.a),i.a=i.d+r);break;case 3:n=t>i.a,i.a=g.Math.max(i.a,t),a&&n&&(i.a=g.Math.max(i.a,i.d),i.d=i.a+r);break;case 2:n=t>i.c,i.c=g.Math.max(i.c,t),a&&n&&(i.c=g.Math.max(i.b,i.c),i.b=i.c+r);break;case 4:n=t>i.b,i.b=g.Math.max(i.b,t),a&&n&&(i.b=g.Math.max(i.b,i.c),i.c=i.b+r)}}}function Rqt(e){var t,n,i,r,o,u,a,l,d,p,v;for(d=new q(e);d.a0||p.j==Mt&&p.e.c.length-p.g.c.length<0)){t=!1;break}for(r=new q(p.g);r.a=d&&be>=z&&(A+=L.n.b+N.n.b+N.a.b-ue,++a));if(n)for(u=new q(ie.e);u.a=d&&be>=z&&(A+=L.n.b+N.n.b+N.a.b-ue,++a))}a>0&&(Pe+=A/a,++D)}D>0?(t.a=r*Pe/D,t.g=D):(t.a=0,t.g=0)}function Lqt(e,t){var n,i,r,o,u,a,l,d,p,v,A;for(r=new q(e.a.b);r.a$i||t.o==yb&&p0&&es(Y,ue*Pe),be>0&&ts(Y,be*Ae);for(U5(e.b,new U2e),t=new Se,a=new Gg(new Pg(e.c).a);a.b;)u=g0(a),i=c(u.cd(),79),n=c(u.dd(),395).a,r=rv(i,!1,!1),v=FVe(Uf(i),HI(r),n),rT(v,r),ne=XVe(i),ne&&Do(t,ne,0)==-1&&(t.c[t.c.length]=ne,nLe(ne,(Lt(v.b!=0),c(v.a.a.c,8)),n));for(z=new Gg(new Pg(e.d).a);z.b;)N=g0(z),i=c(N.cd(),79),n=c(N.dd(),395).a,r=rv(i,!1,!1),v=FVe(M1(i),_I(HI(r)),n),v=_I(v),rT(v,r),ne=JVe(i),ne&&Do(t,ne,0)==-1&&(t.c[t.c.length]=ne,nLe(ne,(Lt(v.b!=0),c(v.c.b.c,8)),n))}function $Xe(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae;if(n.c.length!=0){for(D=new Se,A=new q(n);A.a1)for(D=new vue(L,ne,i),Mr(ne,new kOe(e,D)),u.c[u.c.length]=D,v=ne.a.ec().Kc();v.Ob();)p=c(v.Pb(),46),Jc(o,p.b);if(a.a.gc()>1)for(D=new vue(L,a,i),Mr(a,new ROe(e,D)),u.c[u.c.length]=D,v=a.a.ec().Kc();v.Ob();)p=c(v.Pb(),46),Jc(o,p.b)}}function qXe(e){Gb(e,new Zg(t9(qb(Bb(Kb($b(new _g,Cf),"ELK Radial"),'A radial layout provider which is based on the algorithm of Peter Eades published in "Drawing free trees.", published by International Institute for Advanced Study of Social Information Science, Fujitsu Limited in 1991. The radial layouter takes a tree and places the nodes in radial order around the root. The nodes of the same tree level are placed on the same radius.'),new f5e),Cf))),je(e,Cf,VD,Le(fat)),je(e,Cf,_w,Le(hat)),je(e,Cf,gv,Le(sat)),je(e,Cf,R2,Le(uat)),je(e,Cf,k2,Le(aat)),je(e,Cf,qE,Le(cat)),je(e,Cf,N6,Le(A0e)),je(e,Cf,HE,Le(lat)),je(e,Cf,fV,Le(PW)),je(e,Cf,lV,Le(MW)),je(e,Cf,Zle,Le(O0e)),je(e,Cf,Yle,Le(ux)),je(e,Cf,Xle,Le(ax)),je(e,Cf,Jle,Le(_j)),je(e,Cf,Qle,Le(D0e))}function Tue(e){var t;if(this.r=v5t(new TA,new fN),this.b=new n6(c(nn(Gr),290)),this.p=new n6(c(nn(Gr),290)),this.i=new n6(c(nn(eit),290)),this.e=e,this.o=new go(e.rf()),this.D=e.Df()||Be(Fe(e.We((kn(),Oj)))),this.A=c(e.We((kn(),Eb)),21),this.B=c(e.We(G1),21),this.q=c(e.We(UP),98),this.u=c(e.We(Uw),21),!CDt(this.u))throw V(new ym("Invalid port label placement: "+this.u));if(this.v=Be(Fe(e.We(lwe))),this.j=c(e.We(zv),21),!Xxt(this.j))throw V(new ym("Invalid node label placement: "+this.j));this.n=c(u6(e,Jpe),116),this.k=ge(Te(u6(e,Px))),this.d=ge(Te(u6(e,gwe))),this.w=ge(Te(u6(e,vwe))),this.s=ge(Te(u6(e,bwe))),this.t=ge(Te(u6(e,pwe))),this.C=c(u6(e,wwe),142),this.c=2*this.d,t=!this.B.Hc((Ks(),Kj)),this.f=new r6(0,t,0),this.g=new r6(1,t,0),HN(this.f,(al(),Nc),this.g)}function Vqt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At;for(ne=0,L=0,D=0,A=1,ie=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));ie.e!=ie.i.gc();)z=c(Vt(ie),33),A+=Th(new Kt(Ht(Fh(z).a.Kc(),new j))),Ve=z.g,L=g.Math.max(L,Ve),v=z.f,D=g.Math.max(D,v),ne+=Ve*v;for(N=(!e.a&&(e.a=new Me(Ei,e,10,11)),e.a).i,u=ne+2*i*i*A*N,o=g.Math.sqrt(u),l=g.Math.max(o*n,L),a=g.Math.max(o/n,D),Y=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));Y.e!=Y.i.gc();)z=c(Vt(Y),33),et=r.b+($s(t,26)*A6+$s(t,27)*O6)*(l-z.g),At=r.b+($s(t,26)*A6+$s(t,27)*O6)*(a-z.f),es(z,et),ts(z,At);for(Ae=l+(r.b+r.c),Pe=a+(r.d+r.a),be=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));be.e!=be.i.gc();)for(ue=c(Vt(be),33),p=new Kt(Ht(Fh(ue).a.Kc(),new j));dn(p);)d=c(rn(p),79),b6(d)||GHt(d,t,Ae,Pe);Ae+=r.b+r.c,Pe+=r.d+r.a,k0(e,Ae,Pe,!1,!0)}function aD(e){var t,n,i,r,o,u,a,l,d,p,v;if(e==null)throw V(new uf(rs));if(d=e,o=e.length,l=!1,o>0&&(t=(fn(0,e.length),e.charCodeAt(0)),(t==45||t==43)&&(e=e.substr(1),--o,l=t==45)),o==0)throw V(new uf(L0+d+'"'));for(;e.length>0&&(fn(0,e.length),e.charCodeAt(0)==48);)e=e.substr(1),--o;if(o>(AYe(),ent)[10])throw V(new uf(L0+d+'"'));for(r=0;r0&&(v=-parseInt(e.substr(0,i),10),e=e.substr(i),o-=i,n=!1);o>=u;){if(i=parseInt(e.substr(0,u),10),e=e.substr(u),o-=u,n)n=!1;else{if(uc(v,a)<0)throw V(new uf(L0+d+'"'));v=jr(v,p)}v=P1(v,i)}if(uc(v,0)>0)throw V(new uf(L0+d+'"'));if(!l&&(v=N_(v),uc(v,0)<0))throw V(new uf(L0+d+'"'));return v}function jue(e,t){vRe();var n,i,r,o,u,a,l;if(this.a=new vee(this),this.b=e,this.c=t,this.f=IB(wo((vs(),Ir),t)),this.f.dc())if((a=gce(Ir,e))==t)for(this.e=!0,this.d=new Se,this.f=new v6e,this.f.Fc(lb),c(oD(iI(Ir,bu(e)),""),26)==e&&this.f.Fc(S5(Ir,bu(e))),r=Yq(Ir,e).Kc();r.Ob();)switch(i=c(r.Pb(),170),o0(wo(Ir,i))){case 4:{this.d.Fc(i);break}case 5:{this.f.Gc(IB(wo(Ir,i)));break}}else if(Wr(),c(t,66).Oj())for(this.e=!0,this.f=null,this.d=new Se,u=0,l=(e.i==null&&wf(e),e.i).length;u=0&&u0&&(c(so(e.b,t),124).a.b=n)}function Gqt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;for(Wt(t,"Comment pre-processing",1),n=0,l=new q(e.a);l.a0&&(l=(fn(0,t.length),t.charCodeAt(0)),l!=64)){if(l==37&&(v=t.lastIndexOf("%"),d=!1,v!=0&&(v==A-1||(d=(fn(v+1,t.length),t.charCodeAt(v+1)==46))))){if(u=t.substr(1,v-1),ne=rt("%",u)?null:Oue(u),i=0,d)try{i=vu(t.substr(v+2),Ar,Fn)}catch(ue){throw ue=gi(ue),Q(ue,127)?(a=ue,V(new mO(a))):V(ue)}for(z=fre(e.Wg());z.Ob();)if(L=UO(z),Q(L,510)&&(r=c(L,590),ie=r.d,(ne==null?ie==null:rt(ne,ie))&&i--==0))return r;return null}if(p=t.lastIndexOf("."),D=p==-1?t:t.substr(0,p),n=0,p!=-1)try{n=vu(t.substr(p+1),Ar,Fn)}catch(ue){if(ue=gi(ue),Q(ue,127))D=t;else throw V(ue)}for(D=rt("%",D)?null:Oue(D),N=fre(e.Wg());N.Ob();)if(L=UO(N),Q(L,191)&&(o=c(L,191),Y=o.ne(),(D==null?Y==null:rt(D,Y))&&n--==0))return o;return null}return dXe(e,t)}function Yqt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot;for(Pe=new Se,L=new q(e.b);L.a=t.length)return{done:!0};var r=t[i++];return{value:[r,n.get(r)],done:!1}}}},eFt()||(e.prototype.createObject=function(){return{}},e.prototype.get=function(t){return this.obj[":"+t]},e.prototype.set=function(t,n){this.obj[":"+t]=n},e.prototype[ZH]=function(t){delete this.obj[":"+t]},e.prototype.keys=function(){var t=[];for(var n in this.obj)n.charCodeAt(0)==58&&t.push(n.substring(1));return t}),e}function Jqt(e){aue();var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(e==null)return null;if(v=e.length*8,v==0)return"";for(a=v%24,D=v/24|0,A=a!=0?D+1:D,o=null,o=oe(Yu,vf,25,A*4,15,1),d=0,p=0,t=0,n=0,i=0,u=0,r=0,l=0;l>24,d=(t&3)<<24>>24,L=(t&-128)==0?t>>2<<24>>24:(t>>2^192)<<24>>24,N=(n&-128)==0?n>>4<<24>>24:(n>>4^240)<<24>>24,z=(i&-128)==0?i>>6<<24>>24:(i>>6^252)<<24>>24,o[u++]=Fd[L],o[u++]=Fd[N|d<<4],o[u++]=Fd[p<<2|z],o[u++]=Fd[i&63];return a==8?(t=e[r],d=(t&3)<<24>>24,L=(t&-128)==0?t>>2<<24>>24:(t>>2^192)<<24>>24,o[u++]=Fd[L],o[u++]=Fd[d<<4],o[u++]=61,o[u++]=61):a==16&&(t=e[r],n=e[r+1],p=(n&15)<<24>>24,d=(t&3)<<24>>24,L=(t&-128)==0?t>>2<<24>>24:(t>>2^192)<<24>>24,N=(n&-128)==0?n>>4<<24>>24:(n>>4^240)<<24>>24,o[u++]=Fd[L],o[u++]=Fd[N|d<<4],o[u++]=Fd[p<<2],o[u++]=61),pf(o,0,o.length)}function Qqt(e,t){var n,i,r,o,u,a,l;if(e.e==0&&e.p>0&&(e.p=-(e.p-1)),e.p>Ar&&lie(t,e.p-O1),u=t.q.getDate(),$C(t,1),e.k>=0&&R6t(t,e.k),e.c>=0?$C(t,e.c):e.k>=0?(l=new Ore(t.q.getFullYear()-O1,t.q.getMonth(),35),i=35-l.q.getDate(),$C(t,g.Math.min(i,u))):$C(t,u),e.f<0&&(e.f=t.q.getHours()),e.b>0&&e.f<12&&(e.f+=12),V2t(t,e.f==24&&e.g?0:e.f),e.j>=0&&VMt(t,e.j),e.n>=0&&aCt(t,e.n),e.i>=0&&m7e(t,xr(jr(BI(ns(t.q.getTime()),_d),_d),e.i)),e.a&&(r=new u9,lie(r,r.q.getFullYear()-O1-80),iF(ns(t.q.getTime()),ns(r.q.getTime()))&&lie(t,r.q.getFullYear()-O1+100)),e.d>=0){if(e.c==-1)n=(7+e.d-t.q.getDay())%7,n>3&&(n-=7),a=t.q.getMonth(),$C(t,t.q.getDate()+n),t.q.getMonth()!=a&&$C(t,t.q.getDate()+(n>0?-7:7));else if(t.q.getDay()!=e.d)return!1}return e.o>Ar&&(o=t.q.getTimezoneOffset(),m7e(t,xr(ns(t.q.getTime()),(e.o-o)*60*_d))),!0}function VXe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;if(r=B(t,(ye(),Hn)),!!Q(r,239)){for(L=c(r,33),N=t.e,A=new go(t.c),o=t.d,A.a+=o.b,A.b+=o.d,ue=c(Ke(L,(Oe(),$R)),174),bs(ue,(Ks(),Ix))&&(D=c(Ke(L,gbe),116),Mmt(D,o.a),kmt(D,o.d),Cmt(D,o.b),Rmt(D,o.c)),n=new Se,p=new q(t.a);p.a0&&Ee(e.p,p),Ee(e.o,p);t-=i,D=l+t,d+=t*e.e,Lu(e.a,a,Ce(D)),Lu(e.b,a,d),e.j=g.Math.max(e.j,D),e.k=g.Math.max(e.k,d),e.d+=t,t+=N}}function Ie(){Ie=Z;var e;Vo=new bC(R6,0),_t=new bC(yD,1),jt=new bC(az,2),Yt=new bC(lz,3),Mt=new bC(fz,4),Jl=(st(),new t_((e=c(rl(Gr),9),new ku(e,c(Da(e,e.length),9),0)))),Xa=dd(ui(_t,U(G(Gr,1),ac,61,0,[]))),Uu=dd(ui(jt,U(G(Gr,1),ac,61,0,[]))),Cu=dd(ui(Yt,U(G(Gr,1),ac,61,0,[]))),wa=dd(ui(Mt,U(G(Gr,1),ac,61,0,[]))),cs=dd(ui(_t,U(G(Gr,1),ac,61,0,[Yt]))),Vc=dd(ui(jt,U(G(Gr,1),ac,61,0,[Mt]))),Ja=dd(ui(_t,U(G(Gr,1),ac,61,0,[Mt]))),Ds=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt]))),Iu=dd(ui(Yt,U(G(Gr,1),ac,61,0,[Mt]))),Wu=dd(ui(jt,U(G(Gr,1),ac,61,0,[Yt]))),ks=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt,Mt]))),os=dd(ui(jt,U(G(Gr,1),ac,61,0,[Yt,Mt]))),ss=dd(ui(_t,U(G(Gr,1),ac,61,0,[Yt,Mt]))),Ss=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt,Yt]))),Tc=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt,Yt,Mt])))}function YXe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;if(t.b!=0){for(D=new wi,a=null,L=null,i=xi(g.Math.floor(g.Math.log(t.b)*g.Math.LOG10E)+1),l=0,ne=Mn(t,0);ne.b!=ne.d.c;)for(Y=c(Pn(ne),86),le(L)!==le(B(Y,(ic(),BP)))&&(L=ln(B(Y,BP)),l=0),L!=null?a=L+pNe(l++,i):a=pNe(l++,i),pe(Y,BP,a),z=(r=Mn(new t1(Y).a.d,0),new Dy(r));r9(z.a);)N=c(Pn(z.a),188).c,Ri(D,N,D.c.b,D.c),pe(N,BP,a);for(A=new en,u=0;u=l){Lt(Y.b>0),Y.a.Xb(Y.c=--Y.b);break}else N.a>d&&(r?(Hi(r.b,N.b),r.a=g.Math.max(r.a,N.a),nu(Y)):(Ee(N.b,v),N.c=g.Math.min(N.c,d),N.a=g.Math.max(N.a,l),r=N));r||(r=new RAe,r.c=d,r.a=l,Np(Y,r),Ee(r.b,v))}for(a=t.b,p=0,z=new q(i);z.aa?1:0:(e.b&&(e.b._b(o)&&(r=c(e.b.xc(o),19).a),e.b._b(l)&&(a=c(e.b.xc(l),19).a)),ra?1:0)):t.e.c.length!=0&&n.g.c.length!=0?1:-1}function nHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae;for(Wt(t,BQe,1),N=new Se,Pe=new Se,d=new q(e.b);d.a0&&(ne-=D),yue(u,ne),p=0,A=new q(u.a);A.a0),a.a.Xb(a.c=--a.b)),l=.4*i*p,!o&&a.bt.d.c){if(D=e.c[t.a.d],z=e.c[v.a.d],D==z)continue;$a(Aa(ja(Oa(Ta(new Zu,1),100),D),z))}}}}}function Oue(e){hH();var t,n,i,r,o,u,a,l;if(e==null)return null;if(r=af(e,is(37)),r<0)return e;for(l=new lu(e.substr(0,r)),t=oe(Ps,vv,25,4,15,1),a=0,i=0,u=e.length;rr+2&&rK((fn(r+1,e.length),e.charCodeAt(r+1)),tme,nme)&&rK((fn(r+2,e.length),e.charCodeAt(r+2)),tme,nme))if(n=j4t((fn(r+1,e.length),e.charCodeAt(r+1)),(fn(r+2,e.length),e.charCodeAt(r+2))),r+=2,i>0?(n&192)==128?t[a++]=n<<24>>24:i=0:n>=128&&((n&224)==192?(t[a++]=n<<24>>24,i=2):(n&240)==224?(t[a++]=n<<24>>24,i=3):(n&248)==240&&(t[a++]=n<<24>>24,i=4)),i>0){if(a==i){switch(a){case 2:{Dg(l,((t[0]&31)<<6|t[1]&63)&Ni);break}case 3:{Dg(l,((t[0]&15)<<12|(t[1]&63)<<6|t[2]&63)&Ni);break}}a=0,i=0}}else{for(o=0;o0){if(u+i>e.length)return!1;a=B7(e.substr(0,u+i),t)}else a=B7(e,t);switch(o){case 71:return a=ev(e,u,U(G(Re,1),we,2,6,[OJe,DJe]),t),r.e=a,!0;case 77:return HNt(e,t,r,a,u);case 76:return zNt(e,t,r,a,u);case 69:return xkt(e,t,u,r);case 99:return Lkt(e,t,u,r);case 97:return a=ev(e,u,U(G(Re,1),we,2,6,["AM","PM"]),t),r.b=a,!0;case 121:return VNt(e,t,u,a,n,r);case 100:return a<=0?!1:(r.c=a,!0);case 83:return a<0?!1:YAt(a,u,t[0],r);case 104:a==12&&(a=0);case 75:case 72:return a<0?!1:(r.f=a,r.g=!1,!0);case 107:return a<0?!1:(r.f=a,r.g=!0,!0);case 109:return a<0?!1:(r.j=a,!0);case 115:return a<0?!1:(r.n=a,!0);case 90:if(uPe&&(L.c=Pe-L.b),Ee(u.d,new yB(L,soe(u,L))),ie=t==_t?g.Math.max(ie,N.b+d.b.rf().b):g.Math.min(ie,N.b));for(ie+=t==_t?e.t:-e.t,ne=Soe((u.e=ie,u)),ne>0&&(c(so(e.b,t),124).a.b=ne),p=A.Kc();p.Ob();)d=c(p.Pb(),111),!(!d.c||d.c.d.c.length<=0)&&(L=d.c.i,L.c-=d.e.a,L.d-=d.e.b)}function aHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;for(t=new en,l=new $t(e);l.e!=l.i.gc();){for(a=c(Vt(l),33),n=new er,Kn(AG,a,n),D=new q2e,r=c(gu(new ht(null,new t0(new Kt(Ht(XI(a).a.Kc(),new j)))),KRe(D,Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)])))),83),lKe(n,c(r.xc((Pt(),!0)),14),new H2e),i=c(gu(si(c(r.xc(!1),15).Lc(),new z2e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[Su]))),15),u=i.Kc();u.Ob();)o=c(u.Pb(),79),A=XVe(o),A&&(d=c(Uo(Po(t.f,A)),21),d||(d=pWe(A),Kc(t.f,A,d)),qr(n,d));for(r=c(gu(new ht(null,new t0(new Kt(Ht(Fh(a).a.Kc(),new j)))),KRe(D,Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[Su])))),83),lKe(n,c(r.xc(!0),14),new V2e),i=c(gu(si(c(r.xc(!1),15).Lc(),new G2e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[Su]))),15),v=i.Kc();v.Ob();)p=c(v.Pb(),79),A=JVe(p),A&&(d=c(Uo(Po(t.f,A)),21),d||(d=pWe(A),Kc(t.f,A,d)),qr(n,d))}}function lHt(e,t){cH();var n,i,r,o,u,a,l,d,p,v,A,D,L,N;if(l=uc(e,0)<0,l&&(e=N_(e)),uc(e,0)==0)switch(t){case 0:return"0";case 1:return LE;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return D=new n1,t<0?D.a+="0E+":D.a+="0E",D.a+=t==Ar?"2147483648":""+-t,D.a}p=18,v=oe(Yu,vf,25,p+1,15,1),n=p,N=e;do d=N,N=BI(N,10),v[--n]=tn(xr(48,P1(d,jr(N,10))))&Ni;while(uc(N,0)!=0);if(r=P1(P1(P1(p,n),t),1),t==0)return l&&(v[--n]=45),pf(v,n,p-n);if(t>0&&uc(r,-6)>=0){if(uc(r,0)>=0){for(o=n+tn(r),a=p-1;a>=o;a--)v[a+1]=v[a];return v[++o]=46,l&&(v[--n]=45),pf(v,n,p-n+1)}for(u=2;iF(u,xr(N_(r),1));u++)v[--n]=48;return v[--n]=46,v[--n]=48,l&&(v[--n]=45),pf(v,n,p-n)}return L=n+1,i=p,A=new _m,l&&(A.a+="-"),i-L>=1?(Dg(A,v[n]),A.a+=".",A.a+=pf(v,n+1,p-n-1)):A.a+=pf(v,n,p-n),A.a+="E",uc(r,0)>0&&(A.a+="+"),A.a+=""+P5(r),A.a}function fHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D;if(e.e.a.$b(),e.f.a.$b(),e.c.c=oe(xt,xe,1,0,5,1),e.i.c=oe(xt,xe,1,0,5,1),e.g.a.$b(),t)for(u=new q(t.a);u.a=1&&(be-d>0&&L>=0?(es(v,v.i+ue),ts(v,v.j+l*d)):be-d<0&&D>=0&&(es(v,v.i+ue*be),ts(v,v.j+l)));return ao(e,(kn(),Eb),(ou(),o=c(rl(tM),9),new ku(o,c(Da(o,o.length),9),0))),new $e(Pe,p)}function QXe(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L;if(D=yi(Co(c(ee((!e.b&&(e.b=new dt(Ut,e,4,7)),e.b),0),82))),L=yi(Co(c(ee((!e.c&&(e.c=new dt(Ut,e,5,8)),e.c),0),82))),v=D==L,a=new Tr,t=c(Ke(e,(QO(),Iwe)),74),t&&t.b>=2){if((!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i==0)n=(Hb(),r=new DA,r),on((!e.a&&(e.a=new Me(mi,e,6,6)),e.a),n);else if((!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i>1)for(A=new Vy((!e.a&&(e.a=new Me(mi,e,6,6)),e.a));A.e!=A.i.gc();)l6(A);rT(t,c(ee((!e.a&&(e.a=new Me(mi,e,6,6)),e.a),0),202))}if(v)for(i=new $t((!e.a&&(e.a=new Me(mi,e,6,6)),e.a));i.e!=i.i.gc();)for(n=c(Vt(i),202),d=new $t((!n.a&&(n.a=new qi(ma,n,5)),n.a));d.e!=d.i.gc();)l=c(Vt(d),469),a.a=g.Math.max(a.a,l.a),a.b=g.Math.max(a.b,l.b);for(u=new $t((!e.n&&(e.n=new Me(Lo,e,1,7)),e.n));u.e!=u.i.gc();)o=c(Vt(u),137),p=c(Ke(o,YP),8),p&&Cl(o,p.a,p.b),v&&(a.a=g.Math.max(a.a,o.i+o.g),a.b=g.Math.max(a.b,o.j+o.f));return a}function hHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve;for(ne=t.c.length,r=new cv(e.a,n,null,null),Ve=oe(gr,lo,25,ne,15,1),N=oe(gr,lo,25,ne,15,1),L=oe(gr,lo,25,ne,15,1),z=0,a=0;aVe[l]&&(z=l),v=new q(e.a.b);v.aD&&(o&&(Tg(Pe,A),Tg(Ve,Ce(d.b-1))),ti=n.b,Zi+=A+t,A=0,p=g.Math.max(p,n.b+n.c+Jt)),es(a,ti),ts(a,Zi),p=g.Math.max(p,ti+Jt+n.c),A=g.Math.max(A,v),ti+=Jt+t;if(p=g.Math.max(p,i),Ot=Zi+A+n.a,OtEf,et=g.Math.abs(A.b-L.b)>Ef,(!n&&Ve&&et||n&&(Ve||et))&&Cn(z.a,ue)),qr(z.a,i),i.b==0?A=ue:A=(Lt(i.b!=0),c(i.c.b.c,8)),ATt(D,v,N),KKe(r)==Ae&&(Nr(Ae.i)!=r.a&&(N=new Tr,Yce(N,Nr(Ae.i),ie)),pe(z,TU,N)),ekt(D,z,ie),p.a.zc(D,p);Rr(z,be),br(z,Ae)}for(d=p.a.ec().Kc();d.Ob();)l=c(d.Pb(),17),Rr(l,null),br(l,null);qt(t)}function ZXe(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;if(e.gc()==1)return c(e.Xb(0),231);if(e.gc()<=0)return new uO;for(r=e.Kc();r.Ob();){for(n=c(r.Pb(),231),L=0,p=Fn,v=Fn,l=Ar,d=Ar,D=new q(n.e);D.aa&&(ne=0,ue+=u+Y,u=0),QFt(N,n,ne,ue),t=g.Math.max(t,ne+z.a),u=g.Math.max(u,z.b),ne+=z.a+Y;return N}function eJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;switch(p=new ds,e.a.g){case 3:A=c(B(t.e,(ye(),bb)),15),D=c(B(t.j,bb),15),L=c(B(t.f,bb),15),n=c(B(t.e,xv),15),i=c(B(t.j,xv),15),r=c(B(t.f,xv),15),u=new Se,Hi(u,A),D.Jc(new W4e),Hi(u,Q(D,152)?s2(c(D,152)):Q(D,131)?c(D,131).a:Q(D,54)?new Fb(D):new jp(D)),Hi(u,L),o=new Se,Hi(o,n),Hi(o,Q(i,152)?s2(c(i,152)):Q(i,131)?c(i,131).a:Q(i,54)?new Fb(i):new jp(i)),Hi(o,r),pe(t.f,bb,u),pe(t.f,xv,o),pe(t.f,hge,t.f),pe(t.e,bb,null),pe(t.e,xv,null),pe(t.j,bb,null),pe(t.j,xv,null);break;case 1:qr(p,t.e.a),Cn(p,t.i.n),qr(p,Kg(t.j.a)),Cn(p,t.a.n),qr(p,t.f.a);break;default:qr(p,t.e.a),qr(p,Kg(t.j.a)),qr(p,t.f.a)}na(t.f.a),qr(t.f.a,p),Rr(t.f,t.e.c),a=c(B(t.e,(Oe(),yo)),74),d=c(B(t.j,yo),74),l=c(B(t.f,yo),74),(a||d||l)&&(v=new ds,mne(v,l),mne(v,d),mne(v,a),pe(t.f,yo,v)),Rr(t.j,null),br(t.j,null),Rr(t.e,null),br(t.e,null),po(t.a,null),po(t.i,null),t.g&&eJe(e,t.g)}function pHt(e){aue();var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(e==null||(o=yO(e),L=iAt(o),L%4!=0))return null;if(N=L/4|0,N==0)return oe(Ps,vv,25,0,15,1);for(v=null,t=0,n=0,i=0,r=0,u=0,a=0,l=0,d=0,D=0,A=0,p=0,v=oe(Ps,vv,25,N*3,15,1);D>4)<<24>>24,v[A++]=((n&15)<<4|i>>2&15)<<24>>24,v[A++]=(i<<6|r)<<24>>24}return!JM(u=o[p++])||!JM(a=o[p++])?null:(t=Zl[u],n=Zl[a],l=o[p++],d=o[p++],Zl[l]==-1||Zl[d]==-1?l==61&&d==61?(n&15)!=0?null:(z=oe(Ps,vv,25,D*3+1,15,1),bc(v,0,z,0,D*3),z[A]=(t<<2|n>>4)<<24>>24,z):l!=61&&d==61?(i=Zl[l],(i&3)!=0?null:(z=oe(Ps,vv,25,D*3+2,15,1),bc(v,0,z,0,D*3),z[A++]=(t<<2|n>>4)<<24>>24,z[A]=((n&15)<<4|i>>2&15)<<24>>24,z)):null:(i=Zl[l],r=Zl[d],v[A++]=(t<<2|n>>4)<<24>>24,v[A++]=((n&15)<<4|i>>2&15)<<24>>24,v[A++]=(i<<6|r)<<24>>24,v))}function wHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be;for(Wt(t,BQe,1),L=c(B(e,(Oe(),zh)),218),r=new q(e.b);r.a=2){for(N=!0,A=new q(o.j),n=c(K(A),11),D=null;A.a0&&(r=c(Ne(z.c.a,Pe-1),10),u=e.i[r.p],Ve=g.Math.ceil(Am(e.n,r,z)),o=be.a.e-z.d.d-(u.a.e+r.o.b+r.d.a)-Ve),d=Ii,Pe0&&Ae.a.e.e-Ae.a.a-(Ae.b.e.e-Ae.b.a)<0,L=ne.a.e.e-ne.a.a-(ne.b.e.e-ne.b.a)<0&&Ae.a.e.e-Ae.a.a-(Ae.b.e.e-Ae.b.a)>0,D=ne.a.e.e+ne.b.aAe.b.e.e+Ae.a.a,ue=0,!N&&!L&&(A?o+v>0?ue=v:d-i>0&&(ue=i):D&&(o+a>0?ue=a:d-ie>0&&(ue=ie))),be.a.e+=ue,be.b&&(be.d.e+=ue),!1))}function nJe(e,t,n){var i,r,o,u,a,l,d,p,v,A;if(i=new Ru(t.qf().a,t.qf().b,t.rf().a,t.rf().b),r=new zy,e.c)for(u=new q(t.wf());u.ad&&(i.a+=sDe(oe(Yu,vf,25,-d,15,1))),i.a+="Is",af(l,is(32))>=0)for(r=0;r=i.o.b/2}else ie=!v;ie?(Y=c(B(i,(ye(),X2)),15),Y?A?o=Y:(r=c(B(i,V2),15),r?Y.gc()<=r.gc()?o=Y:o=r:(o=new Se,pe(i,V2,o))):(o=new Se,pe(i,X2,o))):(r=c(B(i,(ye(),V2)),15),r?v?o=r:(Y=c(B(i,X2),15),Y?r.gc()<=Y.gc()?o=r:o=Y:(o=new Se,pe(i,X2,o))):(o=new Se,pe(i,V2,o))),o.Fc(e),pe(e,(ye(),SR),n),t.d==n?(br(t,null),n.e.c.length+n.g.c.length==0&&Bo(n,null),fjt(n)):(Rr(t,null),n.e.c.length+n.g.c.length==0&&Bo(n,null)),na(t.a)}function _Ht(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti;for(ie=new _r(e.b,0),p=t.Kc(),L=0,d=c(p.Pb(),19).a,be=0,n=new er,Ae=new Eh;ie.b=e.a&&(i=c$t(e,ie),p=g.Math.max(p,i.b),ue=g.Math.max(ue,i.d),Ee(a,new yr(ie,i)));for(Ve=new Se,d=0;d0),z.a.Xb(z.c=--z.b),et=new ta(e.b),Np(z,et),Lt(z.b0?(d=0,z&&(d+=a),d+=(et-1)*u,ne&&(d+=a),Ve&&ne&&(d=g.Math.max(d,oNt(ne,u,ie,Ae))),d0){for(A=p<100?null:new i1(p),d=new bre(t),L=d.g,Y=oe(Qt,_n,25,p,15,1),i=0,ue=new d0(p),r=0;r=0;)if(D!=null?$n(D,L[l]):le(D)===le(L[l])){Y.length<=i&&(z=Y,Y=oe(Qt,_n,25,2*Y.length,15,1),bc(z,0,Y,0,i)),Y[i++]=r,on(ue,L[l]);break e}if(D=D,le(D)===le(a))break}}if(d=ue,L=ue.g,p=i,i>Y.length&&(z=Y,Y=oe(Qt,_n,25,i,15,1),bc(z,0,Y,0,i)),i>0){for(ne=!0,o=0;o=0;)v2(e,Y[u]);if(i!=p){for(r=p;--r>=i;)v2(d,r);z=Y,Y=oe(Qt,_n,25,i,15,1),bc(z,0,Y,0,i)}t=d}}}else for(t=iOt(e,t),r=e.i;--r>=0;)t.Hc(e.g[r])&&(v2(e,r),ne=!0);if(ne){if(Y!=null){for(n=t.gc(),v=n==1?k5(e,4,t.Kc().Pb(),null,Y[0],N):k5(e,6,t,Y,Y[0],N),A=n<100?null:new i1(n),r=t.Kc();r.Ob();)D=r.Pb(),A=vte(e,c(D,72),A);A?(A.Ei(v),A.Fi()):Bn(e.e,v)}else{for(A=p_t(t.gc()),r=t.Kc();r.Ob();)D=r.Pb(),A=vte(e,c(D,72),A);A&&A.Fi()}return!0}else return!1}function CHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;for(n=new Aze(t),n.a||aBt(t),d=lFt(t),l=new u0,z=new PWe,N=new q(t.a);N.a0||n.o==Wl&&r0?(v=c(Ne(A.c.a,u-1),10),Ve=Am(e.b,A,v),z=A.n.b-A.d.d-(v.n.b+v.o.b+v.d.a+Ve)):z=A.n.b-A.d.d,d=g.Math.min(z,d),uu?ME(e,t,n):ME(e,n,t),ru?1:0}return i=c(B(t,(ye(),hc)),19).a,o=c(B(n,hc),19).a,i>o?ME(e,t,n):ME(e,n,t),io?1:0}function Due(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie;if(Be(Fe(Ke(t,(kn(),Ex)))))return st(),st(),Qr;if(d=(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i!=0,v=gRt(t),p=!v.dc(),d||p){if(r=c(Ke(t,j4),149),!r)throw V(new ym("Resolved algorithm is not set; apply a LayoutAlgorithmResolver before computing layout."));if(ie=tee(r,(_E(),xx)),fze(t),!d&&p&&!ie)return st(),st(),Qr;if(l=new Se,le(Ke(t,qv))===le((Rh(),kd))&&(tee(r,kx)||tee(r,Dx)))for(D=UWe(e,t),L=new wi,qr(L,(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));L.b!=0;)A=c(L.b==0?null:(Lt(L.b!=0),Fu(L,L.a.a)),33),fze(A),Y=le(Ke(A,qv))===le(XP),Y||Fg(A,GP)&&!bie(r,Ke(A,j4))?(a=Due(e,A,n,i),Hi(l,a),ao(A,qv,XP),lYe(A)):qr(L,(!A.a&&(A.a=new Me(Ei,A,10,11)),A.a));else for(D=(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i,u=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));u.e!=u.i.gc();)o=c(Vt(u),33),a=Due(e,o,n,i),Hi(l,a),lYe(o);for(z=new q(l);z.a=0?D=b2(a):D=II(b2(a)),e.Ye(_4,D)),d=new Tr,A=!1,e.Xe(ep)?(zee(d,c(e.We(ep),8)),A=!0):t3t(d,u.a/2,u.b/2),D.g){case 4:pe(p,zc,(Ku(),K1)),pe(p,MR,(zg(),jv)),p.o.b=u.b,N<0&&(p.o.a=-N),Ji(v,(Ie(),jt)),A||(d.a=u.a),d.a-=u.a;break;case 2:pe(p,zc,(Ku(),xw)),pe(p,MR,(zg(),d4)),p.o.b=u.b,N<0&&(p.o.a=-N),Ji(v,(Ie(),Mt)),A||(d.a=0);break;case 1:pe(p,gb,(Oh(),Ov)),p.o.a=u.a,N<0&&(p.o.b=-N),Ji(v,(Ie(),Yt)),A||(d.b=u.b),d.b-=u.b;break;case 3:pe(p,gb,(Oh(),z2)),p.o.a=u.a,N<0&&(p.o.b=-N),Ji(v,(Ie(),_t)),A||(d.b=0)}if(zee(v.n,d),pe(p,ep,d),t==Mb||t==ch||t==Ic){if(L=0,t==Mb&&e.Xe(Td))switch(D.g){case 1:case 2:L=c(e.We(Td),19).a;break;case 3:case 4:L=-c(e.We(Td),19).a}else switch(D.g){case 4:case 2:L=o.b,t==ch&&(L/=r.b);break;case 1:case 3:L=o.a,t==ch&&(L/=r.a)}pe(p,J0,L)}return pe(p,Zo,D),p}function jHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et;if(n=ge(Te(B(e.a.j,(Oe(),Gge)))),n<-1||!e.a.i||Wy(c(B(e.a.o,ji),98))||qo(e.a.o,(Ie(),jt)).gc()<2&&qo(e.a.o,Mt).gc()<2)return!0;if(e.a.c.Rf())return!1;for(be=0,ue=0,ne=new Se,l=e.a.e,d=0,p=l.length;d=n}function AHt(){gZ();function e(i){var r=this;this.dispatch=function(o){var u=o.data;switch(u.cmd){case"algorithms":var a=Eoe((st(),new W3(new yh(Z1.b))));i.postMessage({id:u.id,data:a});break;case"categories":var l=Eoe((st(),new W3(new yh(Z1.c))));i.postMessage({id:u.id,data:l});break;case"options":var d=Eoe((st(),new W3(new yh(Z1.d))));i.postMessage({id:u.id,data:d});break;case"register":NKt(u.algorithms),i.postMessage({id:u.id});break;case"layout":w$t(u.graph,u.layoutOptions||{},u.options||{}),i.postMessage({id:u.id,data:u.graph});break}},this.saveDispatch=function(o){try{r.dispatch(o)}catch(u){i.postMessage({id:o.data.id,error:u})}}}function t(i){var r=this;this.dispatcher=new e({postMessage:function(o){r.onmessage({data:o})}}),this.postMessage=function(o){setTimeout(function(){r.dispatcher.saveDispatch({data:o})},0)}}if(typeof document===iz&&typeof self!==iz){var n=new e(self);self.onmessage=n.saveDispatch}else typeof w!==iz&&w.exports&&(Object.defineProperty(m,"__esModule",{value:!0}),w.exports={default:t,Worker:t})}function OHt(e){e.N||(e.N=!0,e.b=Xo(e,0),_i(e.b,0),_i(e.b,1),_i(e.b,2),e.bb=Xo(e,1),_i(e.bb,0),_i(e.bb,1),e.fb=Xo(e,2),_i(e.fb,3),_i(e.fb,4),oi(e.fb,5),e.qb=Xo(e,3),_i(e.qb,0),oi(e.qb,1),oi(e.qb,2),_i(e.qb,3),_i(e.qb,4),oi(e.qb,5),_i(e.qb,6),e.a=On(e,4),e.c=On(e,5),e.d=On(e,6),e.e=On(e,7),e.f=On(e,8),e.g=On(e,9),e.i=On(e,10),e.j=On(e,11),e.k=On(e,12),e.n=On(e,13),e.o=On(e,14),e.p=On(e,15),e.q=On(e,16),e.s=On(e,17),e.r=On(e,18),e.t=On(e,19),e.u=On(e,20),e.v=On(e,21),e.w=On(e,22),e.B=On(e,23),e.A=On(e,24),e.C=On(e,25),e.D=On(e,26),e.F=On(e,27),e.G=On(e,28),e.H=On(e,29),e.J=On(e,30),e.I=On(e,31),e.K=On(e,32),e.M=On(e,33),e.L=On(e,34),e.P=On(e,35),e.Q=On(e,36),e.R=On(e,37),e.S=On(e,38),e.T=On(e,39),e.U=On(e,40),e.V=On(e,41),e.X=On(e,42),e.W=On(e,43),e.Y=On(e,44),e.Z=On(e,45),e.$=On(e,46),e._=On(e,47),e.ab=On(e,48),e.cb=On(e,49),e.db=On(e,50),e.eb=On(e,51),e.gb=On(e,52),e.hb=On(e,53),e.ib=On(e,54),e.jb=On(e,55),e.kb=On(e,56),e.lb=On(e,57),e.mb=On(e,58),e.nb=On(e,59),e.ob=On(e,60),e.pb=On(e,61))}function DHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;if(ie=0,t.f.a==0)for(z=new q(e);z.ad&&(pt(d,t.c.length),c(t.c[d],200)).a.c.length==0;)Jc(t,(pt(d,t.c.length),t.c[d]));if(!l){--o;continue}if(mBt(t,p,r,l,A,n,d,i)){v=!0;continue}if(A){if(M$t(t,p,r,l,n,d,i)){v=!0;continue}else if(Yre(p,r)){r.c=!0,v=!0;continue}}else if(Yre(p,r)){r.c=!0,v=!0;continue}if(v)continue}if(Yre(p,r)){r.c=!0,v=!0,l&&(l.k=!1);continue}else I7(r.q)}return v}function mH(e,t,n,i,r,o,u){var a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi;for(N=0,At=0,d=new q(e.b);d.aN&&(o&&(Tg(Pe,D),Tg(Ve,Ce(p.b-1)),Ee(e.d,L),a.c=oe(xt,xe,1,0,5,1)),ti=n.b,Zi+=D+t,D=0,v=g.Math.max(v,n.b+n.c+Jt)),a.c[a.c.length]=l,Sze(l,ti,Zi),v=g.Math.max(v,ti+Jt+n.c),D=g.Math.max(D,A),ti+=Jt+t,L=l;if(Hi(e.a,a),Ee(e.d,c(Ne(a,a.c.length-1),157)),v=g.Math.max(v,i),Ot=Zi+D+n.a,Ot1&&(u=g.Math.min(u,g.Math.abs(c(hl(a.a,1),8).b-p.b)))));else for(N=new q(t.j);N.ar&&(o=A.a-r,u=Fn,i.c=oe(xt,xe,1,0,5,1),r=A.a),A.a>=r&&(i.c[i.c.length]=a,a.a.b>1&&(u=g.Math.min(u,g.Math.abs(c(hl(a.a,a.a.b-2),8).b-A.b)))));if(i.c.length!=0&&o>t.o.a/2&&u>t.o.b/2){for(D=new gc,Bo(D,t),Ji(D,(Ie(),_t)),D.n.a=t.o.a/2,Y=new gc,Bo(Y,t),Ji(Y,Yt),Y.n.a=t.o.a/2,Y.n.b=t.o.b,l=new q(i);l.a=d.b?Rr(a,Y):Rr(a,D)):(d=c(T4t(a.a),8),z=a.a.b==0?Ol(a.c):c(Z9(a.a),8),z.b>=d.b?br(a,Y):br(a,D)),v=c(B(a,(Oe(),yo)),74),v&&nw(v,d,!0);t.n.a=r-t.o.a/2}}function NHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi,ju,Sa;if(At=null,Jt=t,Ot=lFe(e,cFe(n),Jt),H5(Ot,Ih(Jt,If)),ti=c(Bm(e.g,_2(Ch(Jt,IV))),33),A=Ch(Jt,"sourcePort"),i=null,A&&(i=_2(A)),Zi=c(Bm(e.j,i),118),!ti)throw a=fE(Jt),L="An edge must have a source node (edge id: '"+a,N=L+YE,V(new sf(N));if(Zi&&!df(jl(Zi),ti))throw l=Ih(Jt,If),z="The source port of an edge must be a port of the edge's source node (edge id: '"+l,Y=z+YE,V(new sf(Y));if(Ve=(!Ot.b&&(Ot.b=new dt(Ut,Ot,4,7)),Ot.b),o=null,Zi?o=Zi:o=ti,on(Ve,o),ju=c(Bm(e.g,_2(Ch(Jt,Ofe))),33),D=Ch(Jt,"targetPort"),r=null,D&&(r=_2(D)),Sa=c(Bm(e.j,r),118),!ju)throw v=fE(Jt),ie="An edge must have a target node (edge id: '"+v,ne=ie+YE,V(new sf(ne));if(Sa&&!df(jl(Sa),ju))throw d=Ih(Jt,If),ue="The target port of an edge must be a port of the edge's target node (edge id: '"+d,be=ue+YE,V(new sf(be));if(et=(!Ot.c&&(Ot.c=new dt(Ut,Ot,5,8)),Ot.c),u=null,Sa?u=Sa:u=ju,on(et,u),(!Ot.b&&(Ot.b=new dt(Ut,Ot,4,7)),Ot.b).i==0||(!Ot.c&&(Ot.c=new dt(Ut,Ot,5,8)),Ot.c).i==0)throw p=Ih(Jt,If),Pe=net+p,Ae=Pe+YE,V(new sf(Ae));return x7(Jt,Ot),Ixt(Jt,Ot),At=cK(e,Jt,Ot),At}function sJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At;return v=$Bt(Wc(e,(Ie(),Jl)),t),L=Xm(Wc(e,Xa),t),ue=Xm(Wc(e,Cu),t),Ve=T7(Wc(e,wa),t),A=T7(Wc(e,Uu),t),ie=Xm(Wc(e,Ja),t),N=Xm(Wc(e,Ds),t),Pe=Xm(Wc(e,Iu),t),be=Xm(Wc(e,Wu),t),et=T7(Wc(e,Vc),t),Y=Xm(Wc(e,cs),t),ne=Xm(Wc(e,ks),t),Ae=Xm(Wc(e,os),t),At=T7(Wc(e,ss),t),D=T7(Wc(e,Ss),t),z=Xm(Wc(e,Tc),t),n=qm(U(G(gr,1),lo,25,15,[ie.a,Ve.a,Pe.a,At.a])),i=qm(U(G(gr,1),lo,25,15,[L.a,v.a,ue.a,z.a])),r=Y.a,o=qm(U(G(gr,1),lo,25,15,[N.a,A.a,be.a,D.a])),d=qm(U(G(gr,1),lo,25,15,[ie.b,L.b,N.b,ne.b])),l=qm(U(G(gr,1),lo,25,15,[Ve.b,v.b,A.b,z.b])),p=et.b,a=qm(U(G(gr,1),lo,25,15,[Pe.b,ue.b,be.b,Ae.b])),fd(Wc(e,Jl),n+r,d+p),fd(Wc(e,Tc),n+r,d+p),fd(Wc(e,Xa),n+r,0),fd(Wc(e,Cu),n+r,d+p+l),fd(Wc(e,wa),0,d+p),fd(Wc(e,Uu),n+r+i,d+p),fd(Wc(e,Ds),n+r+i,0),fd(Wc(e,Iu),0,d+p+l),fd(Wc(e,Wu),n+r+i,d+p+l),fd(Wc(e,Vc),0,d),fd(Wc(e,cs),n,0),fd(Wc(e,os),0,d+p+l),fd(Wc(e,Ss),n+r+i,0),u=new Tr,u.a=qm(U(G(gr,1),lo,25,15,[n+i+r+o,et.a,ne.a,Ae.a])),u.b=qm(U(G(gr,1),lo,25,15,[d+l+p+a,Y.b,At.b,D.b])),u}function FHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;for(N=new Se,A=new q(e.d.b);A.ar.d.d+r.d.a?p.f.d=!0:(p.f.d=!0,p.f.a=!0))),i.b!=i.d.c&&(t=n);p&&(o=c(Bt(e.f,u.d.i),57),t.bo.d.d+o.d.a?p.f.d=!0:(p.f.d=!0,p.f.a=!0))}for(a=new Kt(Ht(ko(D).a.Kc(),new j));dn(a);)u=c(rn(a),17),u.a.b!=0&&(t=c(Z9(u.a),8),u.d.j==(Ie(),_t)&&(z=new E6(t,new $e(t.a,r.d.d),r,u),z.f.a=!0,z.a=u.d,N.c[N.c.length]=z),u.d.j==Yt&&(z=new E6(t,new $e(t.a,r.d.d+r.d.a),r,u),z.f.d=!0,z.a=u.d,N.c[N.c.length]=z))}return N}function BHt(e,t,n){var i,r,o,u,a,l,d,p,v;if(Wt(n,"Network simplex node placement",1),e.e=t,e.n=c(B(t,(ye(),Rv)),304),nKt(e),L7t(e),Di($o(new ht(null,new bt(e.e.b,16)),new fSe),new eje(e)),Di(si($o(si($o(new ht(null,new bt(e.e.b,16)),new PSe),new MSe),new CSe),new ISe),new ZTe(e)),Be(Fe(B(e.e,(Oe(),MP))))&&(u=yc(n,1),Wt(u,"Straight Edges Pre-Processing",1),_qt(e),qt(u)),w8t(e.f),o=c(B(t,TP),19).a*e.f.a.c.length,Xq(sZ(uZ(sB(e.f),o),!1),yc(n,1)),e.d.a.gc()!=0){for(u=yc(n,1),Wt(u,"Flexible Where Space Processing",1),a=c(Qb(M8(Yc(new ht(null,new bt(e.f.a,16)),new hSe),new oSe)),19).a,l=c(Qb(P8(Yc(new ht(null,new bt(e.f.a,16)),new dSe),new cSe)),19).a,d=l-a,p=Jb(new Cg,e.f),v=Jb(new Cg,e.f),$a(Aa(ja(Ta(Oa(new Zu,2e4),d),p),v)),Di(si(si(TB(e.i),new gSe),new bSe),new Jxe(a,p,d,v)),r=e.d.a.ec().Kc();r.Ob();)i=c(r.Pb(),213),i.g=1;Xq(sZ(uZ(sB(e.f),o),!1),yc(u,1)),qt(u)}Be(Fe(B(t,MP)))&&(u=yc(n,1),Wt(u,"Straight Edges Post-Processing",1),Ckt(e),qt(u)),oqt(e),e.e=null,e.f=null,e.i=null,e.c=null,Is(e.k),e.j=null,e.a=null,e.o=null,e.d.a.$b(),qt(n)}function $Ht(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be;for(a=new q(e.a.b);a.a0)if(i=v.gc(),d=xi(g.Math.floor((i+1)/2))-1,r=xi(g.Math.ceil((i+1)/2))-1,t.o==Wl)for(p=r;p>=d;p--)t.a[ue.p]==ue&&(N=c(v.Xb(p),46),L=c(N.a,10),!_h(n,N.b)&&D>e.b.e[L.p]&&(t.a[L.p]=ue,t.g[ue.p]=t.g[L.p],t.a[ue.p]=t.g[ue.p],t.f[t.g[ue.p].p]=(Pt(),!!(Be(t.f[t.g[ue.p].p])&ue.k==(Dt(),ur))),D=e.b.e[L.p]));else for(p=d;p<=r;p++)t.a[ue.p]==ue&&(Y=c(v.Xb(p),46),z=c(Y.a,10),!_h(n,Y.b)&&D=L&&(ie>L&&(D.c=oe(xt,xe,1,0,5,1),L=ie),D.c[D.c.length]=u);D.c.length!=0&&(A=c(Ne(D,S7(t,D.c.length)),128),Ot.a.Bc(A)!=null,A.s=N++,jse(A,et,Pe),D.c=oe(xt,xe,1,0,5,1))}for(ue=e.c.length+1,a=new q(e);a.aAt.s&&(nu(n),Jc(At.i,i),i.c>0&&(i.a=At,Ee(At.t,i),i.b=Ae,Ee(Ae.i,i)))}function kue(e){var t,n,i,r,o;switch(t=e.c,t){case 11:return e.Ml();case 12:return e.Ol();case 14:return e.Ql();case 15:return e.Tl();case 16:return e.Rl();case 17:return e.Ul();case 21:return xn(e),Ln(),Ln(),dM;case 10:switch(e.a){case 65:return e.yl();case 90:return e.Dl();case 122:return e.Kl();case 98:return e.El();case 66:return e.zl();case 60:return e.Jl();case 62:return e.Hl()}}switch(o=xHt(e),t=e.c,t){case 3:return e.Zl(o);case 4:return e.Xl(o);case 5:return e.Yl(o);case 0:if(e.a==123&&e.d=48&&t<=57){for(i=t-48;r=48&&t<=57;)if(i=i*10+t-48,i<0)throw V(new an(gn((un(),Nfe))))}else throw V(new an(gn((un(),Det))));if(n=i,t==44){if(r>=e.j)throw V(new an(gn((un(),Ret))));if((t=Pr(e.i,r++))>=48&&t<=57){for(n=t-48;r=48&&t<=57;)if(n=n*10+t-48,n<0)throw V(new an(gn((un(),Nfe))));if(i>n)throw V(new an(gn((un(),xet))))}else n=-1}if(t!=125)throw V(new an(gn((un(),ket))));e.sl(r)?(o=(Ln(),Ln(),new Gp(9,o)),e.d=r+1):(o=(Ln(),Ln(),new Gp(3,o)),e.d=r),o.dm(i),o.cm(n),xn(e)}}return o}function uJe(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot;for(N=new Dc(t.b),ue=new Dc(t.b),A=new Dc(t.b),Ve=new Dc(t.b),z=new Dc(t.b),Ae=Mn(t,0);Ae.b!=Ae.d.c;)for(be=c(Pn(Ae),11),a=new q(be.g);a.a0,Y=be.g.c.length>0,d&&Y?A.c[A.c.length]=be:d?N.c[N.c.length]=be:Y&&(ue.c[ue.c.length]=be);for(L=new q(N);L.a1)for(L=new Vy((!e.a&&(e.a=new Me(mi,e,6,6)),e.a));L.e!=L.i.gc();)l6(L);for(u=c(ee((!e.a&&(e.a=new Me(mi,e,6,6)),e.a),0),202),z=ti,ti>be+ue?z=be+ue:tiPe+N?Y=Pe+N:Zibe-ue&&zPe-N&&Yti+Jt?Ve=ti+Jt:beZi+Ae?et=Zi+Ae:Peti-Jt&&VeZi-Ae&&etn&&(A=n-1),D=eA+$s(t,24)*vT*v-v/2,D<0?D=1:D>i&&(D=i-1),r=(Hb(),l=new OA,l),jO(r,A),AO(r,D),on((!u.a&&(u.a=new qi(ma,u,5)),u.a),r)}function Oe(){Oe=Z,KU=(kn(),jlt),_be=Alt,hj=hwe,za=Olt,Z2=dwe,tp=Dlt,Hw=gwe,S4=bwe,P4=pwe,qU=Px,np=Pb,HU=klt,IP=vwe,KR=r3,fj=(Lue(),Cct),Lv=Ict,vb=Tct,Nv=jct,hst=new Yr(Sx,Ce(0)),E4=Sct,ybe=Pct,Q2=Mct,jbe=Jct,Ebe=Dct,Sbe=xct,VU=qct,Pbe=Fct,Mbe=$ct,qR=tst,GU=Qct,Ibe=Uct,Cbe=Vct,Tbe=Yct,Z0=wct,CP=mct,LU=xot,Qge=Not,bbe=new Yb(12),gbe=new Yr(Sb,bbe),Yge=(Lh(),D4),zh=new Yr(qpe,Yge),$w=new Yr(zs,0),dst=new Yr(eY,Ce(1)),TR=new Yr(n3,KE),mb=Ex,ji=UP,_4=Gv,ost=Aj,Of=ylt,Fw=qv,gst=new Yr(tY,(Pt(),!0)),Bw=Oj,pb=UW,wb=Eb,$R=G1,$U=_x,Wge=(eo(),ih),Pu=new Yr(rp,Wge),Q0=zv,FR=Jpe,Kw=Uw,fst=ZW,mbe=lwe,wbe=(Um(),Nj),new Yr(owe,wbe),ust=YW,ast=XW,lst=JW,sst=WW,zU=Oct,abe=oct,FU=rct,TP=Act,zc=Jot,Nw=Iot,PP=Cot,Lw=dot,Vge=got,DU=mot,lj=bot,kU=Pot,lbe=cct,fbe=sct,rbe=Vot,BR=_ct,BU=lct,NU=$ot,dbe=bct,Jge=kot,xU=Rot,OU=vx,hbe=uct,AR=cot,qge=oot,jR=rot,tbe=Hot,ebe=qot,nbe=zot,v4=Vv,yo=Hv,Id=zpe,Df=GW,RU=VW,Gge=yot,Td=QW,SP=Slt,xR=Plt,ep=swe,pbe=Mlt,y4=Clt,cbe=Zot,sbe=tct,qw=i3,jU=iot,ube=ict,RR=Aot,kR=jot,NR=Dj,obe=Wot,MP=hct,dj=wwe,Uge=Tot,vbe=Ect,Xge=Oot,cst=Xot,rst=Eot,ibe=Wpe,LR=Qot,DR=Sot,q1=hot,zge=lot,OR=uot,Hge=aot,AU=fot,J2=sot,Zge=Kot}function yH(e,t){cH();var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae;if(ne=e.e,p=e.d,r=e.a,ne==0)switch(t){case 0:return"0";case 1:return LE;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return Y=new n1,Y.a+="0E",Y.a+=-t,Y.a}if(N=p*10+1+7,z=oe(Yu,vf,25,N+1,15,1),n=N,p==1)if(o=r[0],o<0){Ae=Xi(o,no);do v=Ae,Ae=BI(Ae,10),z[--n]=48+tn(P1(v,jr(Ae,10)))&Ni;while(uc(Ae,0)!=0)}else{Ae=o;do v=Ae,Ae=Ae/10|0,z[--n]=48+(v-Ae*10)&Ni;while(Ae!=0)}else{ue=oe(Qt,_n,25,p,15,1),Pe=p,bc(r,0,ue,0,Pe);e:for(;;){for(ie=0,a=Pe-1;a>=0;a--)be=xr(Ph(ie,32),Xi(ue[a],no)),D=J7t(be),ue[a]=tn(D),ie=tn(h1(D,32));L=tn(ie),A=n;do z[--n]=48+L%10&Ni;while((L=L/10|0)!=0&&n!=0);for(i=9-A+n,u=0;u0;u++)z[--n]=48;for(l=Pe-1;ue[l]==0;l--)if(l==0)break e;Pe=l+1}for(;z[n]==48;)++n}return d=ne<0,d&&(z[--n]=45),pf(z,n,N-n)}function fJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe;switch(e.c=t,e.g=new en,n=(Ap(),new Ip(e.c)),i=new BA(n),poe(i),ne=ln(Ke(e.c,(KI(),fpe))),l=c(Ke(e.c,LW),316),be=c(Ke(e.c,NW),429),u=c(Ke(e.c,upe),482),ue=c(Ke(e.c,xW),430),e.j=ge(Te(Ke(e.c,zat))),a=e.a,l.g){case 0:a=e.a;break;case 1:a=e.b;break;case 2:a=e.i;break;case 3:a=e.e;break;case 4:a=e.f;break;default:throw V(new St(JD+(l.f!=null?l.f:""+l.g)))}if(e.d=new xLe(a,be,u),pe(e.d,(W_(),lP),Fe(Ke(e.c,qat))),e.d.c=Be(Fe(Ke(e.c,ape))),$8(e.c).i==0)return e.d;for(v=new $t($8(e.c));v.e!=v.i.gc();){for(p=c(Vt(v),33),D=p.g/2,A=p.f/2,Pe=new $e(p.i+D,p.j+A);tu(e.g,Pe);)xp(Pe,(g.Math.random()-.5)*Ef,(g.Math.random()-.5)*Ef);N=c(Ke(p,(kn(),Dj)),142),z=new QLe(Pe,new Ru(Pe.a-D-e.j/2-N.b,Pe.b-A-e.j/2-N.d,p.g+e.j+(N.b+N.c),p.f+e.j+(N.d+N.a))),Ee(e.d.i,z),Kn(e.g,Pe,new yr(z,p))}switch(ue.g){case 0:if(ne==null)e.d.d=c(Ne(e.d.i,0),65);else for(ie=new q(e.d.i);ie.a1&&Ri(p,Y,p.c.b,p.c),MO(r)));Y=ie}return p}function UHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi,ju,Sa,ef;for(Wt(n,"Greedy cycle removal",1),ne=t.a,ef=ne.c.length,e.a=oe(Qt,_n,25,ef,15,1),e.c=oe(Qt,_n,25,ef,15,1),e.b=oe(Qt,_n,25,ef,15,1),d=0,Y=new q(ne);Y.a0?Jt+1:1);for(u=new q(Pe.g);u.a0?Jt+1:1)}e.c[d]==0?Cn(e.e,N):e.a[d]==0&&Cn(e.f,N),++d}for(L=-1,D=1,v=new Se,e.d=c(B(t,(ye(),Y2)),230);ef>0;){for(;e.e.b!=0;)Zi=c(lB(e.e),10),e.b[Zi.p]=L--,nue(e,Zi),--ef;for(;e.f.b!=0;)ju=c(lB(e.f),10),e.b[ju.p]=D++,nue(e,ju),--ef;if(ef>0){for(A=Ar,ie=new q(ne);ie.a=A&&(ue>A&&(v.c=oe(xt,xe,1,0,5,1),A=ue),v.c[v.c.length]=N));p=e.Zf(v),e.b[p.p]=D++,nue(e,p),--ef}}for(ti=ne.c.length+1,d=0;de.b[Sa]&&(D0(i,!0),pe(t,oj,(Pt(),!0)));e.a=null,e.c=null,e.b=null,na(e.f),na(e.e),qt(n)}function dJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;for(i=new Se,a=new Se,z=t/2,D=e.gc(),r=c(e.Xb(0),8),Y=c(e.Xb(1),8),L=Rq(r.a,r.b,Y.a,Y.b,z),Ee(i,(pt(0,L.c.length),c(L.c[0],8))),Ee(a,(pt(1,L.c.length),c(L.c[1],8))),d=2;d=0;l--)Cn(n,(pt(l,u.c.length),c(u.c[l],8)));return n}function WHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;if(u=!0,v=null,i=null,r=null,t=!1,D=_ft,d=null,o=null,a=0,l=$K(e,a,ime,rme),l=0&&rt(e.substr(a,2),"//")?(a+=2,l=$K(e,a,oM,cM),i=e.substr(a,l-a),a=l):v!=null&&(a==e.length||(fn(a,e.length),e.charCodeAt(a)!=47))&&(u=!1,l=Ree(e,is(35),a),l==-1&&(l=e.length),i=e.substr(a,l-a),a=l);if(!n&&a0&&Pr(p,p.length-1)==58&&(r=p,a=l)),a=e.j){e.a=-1,e.c=1;return}if(t=Pr(e.i,e.d++),e.a=t,e.b==1){switch(t){case 92:if(i=10,e.d>=e.j)throw V(new an(gn((un(),rk))));e.a=Pr(e.i,e.d++);break;case 45:(e.e&512)==512&&e.d=e.j||Pr(e.i,e.d)!=63)break;if(++e.d>=e.j)throw V(new an(gn((un(),FV))));switch(t=Pr(e.i,e.d++),t){case 58:i=13;break;case 61:i=14;break;case 33:i=15;break;case 91:i=19;break;case 62:i=18;break;case 60:if(e.d>=e.j)throw V(new an(gn((un(),FV))));if(t=Pr(e.i,e.d++),t==61)i=16;else if(t==33)i=17;else throw V(new an(gn((un(),det))));break;case 35:for(;e.d=e.j)throw V(new an(gn((un(),rk))));e.a=Pr(e.i,e.d++);break;default:i=0}e.c=i}function XHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt;if(Ae=c(B(e,(Oe(),ji)),98),Ae!=(wr(),Xl)&&Ae!=Y1){for(L=e.b,D=L.c.length,p=new Dc((pu(D+2,MH),PO(xr(xr(5,D+2),(D+2)/10|0)))),N=new Dc((pu(D+2,MH),PO(xr(xr(5,D+2),(D+2)/10|0)))),Ee(p,new en),Ee(p,new en),Ee(N,new Se),Ee(N,new Se),Pe=new Se,t=0;t=be||!w9t(Y,i))&&(i=uNe(t,p)),po(Y,i),o=new Kt(Ht(ko(Y).a.Kc(),new j));dn(o);)r=c(rn(o),17),!e.a[r.p]&&(N=r.c.i,--e.e[N.p],e.e[N.p]==0&&R_(wE(D,N)));for(d=p.c.length-1;d>=0;--d)Ee(t.b,(pt(d,p.c.length),c(p.c[d],29)));t.a.c=oe(xt,xe,1,0,5,1),qt(n)}function gJe(e){var t,n,i,r,o,u,a,l,d;for(e.b=1,xn(e),t=null,e.c==0&&e.a==94?(xn(e),t=(Ln(),Ln(),new du(4)),_c(t,0,JE),a=new du(4)):a=(Ln(),Ln(),new du(4)),r=!0;(d=e.c)!=1;){if(d==0&&e.a==93&&!r){t&&(I6(t,a),a=t);break}if(n=e.a,i=!1,d==10)switch(n){case 100:case 68:case 119:case 87:case 115:case 83:pw(a,CE(n)),i=!0;break;case 105:case 73:case 99:case 67:n=(pw(a,CE(n)),-1),n<0&&(i=!0);break;case 112:case 80:if(l=lse(e,n),!l)throw V(new an(gn((un(),BV))));pw(a,l),i=!0;break;default:n=zse(e)}else if(d==24&&!r){if(t&&(I6(t,a),a=t),o=gJe(e),I6(a,o),e.c!=0||e.a!=93)throw V(new an(gn((un(),Pet))));break}if(xn(e),!i){if(d==0){if(n==91)throw V(new an(gn((un(),xfe))));if(n==93)throw V(new an(gn((un(),Lfe))));if(n==45&&!r&&e.a!=93)throw V(new an(gn((un(),$V))))}if(e.c!=0||e.a!=45||n==45&&r)_c(a,n,n);else{if(xn(e),(d=e.c)==1)throw V(new an(gn((un(),ok))));if(d==0&&e.a==93)_c(a,n,n),_c(a,45,45);else{if(d==0&&e.a==93||d==24)throw V(new an(gn((un(),$V))));if(u=e.a,d==0){if(u==91)throw V(new an(gn((un(),xfe))));if(u==93)throw V(new an(gn((un(),Lfe))));if(u==45)throw V(new an(gn((un(),$V))))}else d==10&&(u=zse(e));if(xn(e),n>u)throw V(new an(gn((un(),Iet))));_c(a,n,u)}}}r=!1}if(e.c==1)throw V(new an(gn((un(),ok))));return tv(a),M6(a),e.b=0,xn(e),a}function QHt(e){cn(e.c,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#decimal"])),cn(e.d,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#integer"])),cn(e.e,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#boolean"])),cn(e.f,yn,U(G(Re,1),we,2,6,[Or,"EBoolean",Dn,"EBoolean:Object"])),cn(e.i,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#byte"])),cn(e.g,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#hexBinary"])),cn(e.j,yn,U(G(Re,1),we,2,6,[Or,"EByte",Dn,"EByte:Object"])),cn(e.n,yn,U(G(Re,1),we,2,6,[Or,"EChar",Dn,"EChar:Object"])),cn(e.t,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#double"])),cn(e.u,yn,U(G(Re,1),we,2,6,[Or,"EDouble",Dn,"EDouble:Object"])),cn(e.F,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#float"])),cn(e.G,yn,U(G(Re,1),we,2,6,[Or,"EFloat",Dn,"EFloat:Object"])),cn(e.I,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#int"])),cn(e.J,yn,U(G(Re,1),we,2,6,[Or,"EInt",Dn,"EInt:Object"])),cn(e.N,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#long"])),cn(e.O,yn,U(G(Re,1),we,2,6,[Or,"ELong",Dn,"ELong:Object"])),cn(e.Z,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#short"])),cn(e.$,yn,U(G(Re,1),we,2,6,[Or,"EShort",Dn,"EShort:Object"])),cn(e._,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#string"]))}function ZHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt;if(e.c.length==1)return pt(0,e.c.length),c(e.c[0],135);if(e.c.length<=0)return new lO;for(l=new q(e);l.av&&(Ot=0,Jt+=p+Ae,p=0),aLt(be,u,Ot,Jt),t=g.Math.max(t,Ot+Pe.a),p=g.Math.max(p,Pe.b),Ot+=Pe.a+Ae;for(ue=new en,n=new en,et=new q(e);et.axq(o))&&(v=o);for(!v&&(v=(pt(0,z.c.length),c(z.c[0],180))),N=new q(t.b);N.a=-1900?1:0,n>=4?wn(e,U(G(Re,1),we,2,6,[OJe,DJe])[a]):wn(e,U(G(Re,1),we,2,6,["BC","AD"])[a]);break;case 121:U9t(e,n,i);break;case 77:JFt(e,n,i);break;case 107:l=r.q.getHours(),l==0?Vf(e,24,n):Vf(e,l,n);break;case 83:mLt(e,n,r);break;case 69:p=i.q.getDay(),n==5?wn(e,U(G(Re,1),we,2,6,["S","M","T","W","T","F","S"])[p]):n==4?wn(e,U(G(Re,1),we,2,6,[BH,$H,KH,qH,HH,zH,VH])[p]):wn(e,U(G(Re,1),we,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[p]);break;case 97:r.q.getHours()>=12&&r.q.getHours()<24?wn(e,U(G(Re,1),we,2,6,["AM","PM"])[1]):wn(e,U(G(Re,1),we,2,6,["AM","PM"])[0]);break;case 104:v=r.q.getHours()%12,v==0?Vf(e,12,n):Vf(e,v,n);break;case 75:A=r.q.getHours()%12,Vf(e,A,n);break;case 72:D=r.q.getHours(),Vf(e,D,n);break;case 99:L=i.q.getDay(),n==5?wn(e,U(G(Re,1),we,2,6,["S","M","T","W","T","F","S"])[L]):n==4?wn(e,U(G(Re,1),we,2,6,[BH,$H,KH,qH,HH,zH,VH])[L]):n==3?wn(e,U(G(Re,1),we,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[L]):Vf(e,L,1);break;case 76:N=i.q.getMonth(),n==5?wn(e,U(G(Re,1),we,2,6,["J","F","M","A","M","J","J","A","S","O","N","D"])[N]):n==4?wn(e,U(G(Re,1),we,2,6,[TH,jH,AH,OH,C2,DH,kH,RH,xH,LH,NH,FH])[N]):n==3?wn(e,U(G(Re,1),we,2,6,["Jan","Feb","Mar","Apr",C2,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"])[N]):Vf(e,N+1,n);break;case 81:z=i.q.getMonth()/3|0,n<4?wn(e,U(G(Re,1),we,2,6,["Q1","Q2","Q3","Q4"])[z]):wn(e,U(G(Re,1),we,2,6,["1st quarter","2nd quarter","3rd quarter","4th quarter"])[z]);break;case 100:Y=i.q.getDate(),Vf(e,Y,n);break;case 109:d=r.q.getMinutes(),Vf(e,d,n);break;case 115:u=r.q.getSeconds(),Vf(e,u,n);break;case 122:n<4?wn(e,o.c[0]):wn(e,o.c[1]);break;case 118:wn(e,o.b);break;case 90:n<3?wn(e,sRt(o)):n==3?wn(e,lRt(o)):wn(e,fRt(o.a));break;default:return!1}return!0}function xue(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti;if(tYe(t),l=c(ee((!t.b&&(t.b=new dt(Ut,t,4,7)),t.b),0),82),p=c(ee((!t.c&&(t.c=new dt(Ut,t,5,8)),t.c),0),82),a=Co(l),d=Co(p),u=(!t.a&&(t.a=new Me(mi,t,6,6)),t.a).i==0?null:c(ee((!t.a&&(t.a=new Me(mi,t,6,6)),t.a),0),202),Ae=c(Bt(e.a,a),10),Ot=c(Bt(e.a,d),10),Ve=null,Jt=null,Q(l,186)&&(Pe=c(Bt(e.a,l),299),Q(Pe,11)?Ve=c(Pe,11):Q(Pe,10)&&(Ae=c(Pe,10),Ve=c(Ne(Ae.j,0),11))),Q(p,186)&&(At=c(Bt(e.a,p),299),Q(At,11)?Jt=c(At,11):Q(At,10)&&(Ot=c(At,10),Jt=c(Ne(Ot.j,0),11))),!Ae||!Ot)throw V(new NS("The source or the target of edge "+t+" could not be found. This usually happens when an edge connects a node laid out by ELK Layered to a node in another level of hierarchy laid out by either another instance of ELK Layered or another layout algorithm alltogether. The former can be solved by setting the hierarchyHandling option to INCLUDE_CHILDREN."));for(N=new c0,Mo(N,t),pe(N,(ye(),Hn),t),pe(N,(Oe(),yo),null),D=c(B(i,Cc),21),Ae==Ot&&D.Fc((to(),vP)),Ve||(be=(Zr(),Fc),et=null,u&&Tm(c(B(Ae,ji),98))&&(et=new $e(u.j,u.k),fFe(et,KC(t)),KFe(et,n),Jp(d,a)&&(be=Os,Wn(et,Ae.n))),Ve=ZYe(Ae,et,be,i)),Jt||(be=(Zr(),Os),ti=null,u&&Tm(c(B(Ot,ji),98))&&(ti=new $e(u.b,u.c),fFe(ti,KC(t)),KFe(ti,n)),Jt=ZYe(Ot,ti,be,Nr(Ot))),Rr(N,Ve),br(N,Jt),(Ve.e.c.length>1||Ve.g.c.length>1||Jt.e.c.length>1||Jt.g.c.length>1)&&D.Fc((to(),mP)),A=new $t((!t.n&&(t.n=new Me(Lo,t,1,7)),t.n));A.e!=A.i.gc();)if(v=c(Vt(A),137),!Be(Fe(Ke(v,mb)))&&v.a)switch(z=_K(v),Ee(N.b,z),c(B(z,Df),272).g){case 1:case 2:D.Fc((to(),b4));break;case 0:D.Fc((to(),g4)),pe(z,Df,(xl(),A4))}if(o=c(B(i,PP),314),Y=c(B(i,BR),315),r=o==(f2(),nj)||Y==(s6(),QU),u&&(!u.a&&(u.a=new qi(ma,u,5)),u.a).i!=0&&r){for(ie=HI(u),L=new ds,ue=Mn(ie,0);ue.b!=ue.d.c;)ne=c(Pn(ue),8),Cn(L,new go(ne));pe(N,sge,L)}return N}function izt(e){e.gb||(e.gb=!0,e.b=Xo(e,0),_i(e.b,18),oi(e.b,19),e.a=Xo(e,1),_i(e.a,1),oi(e.a,2),oi(e.a,3),oi(e.a,4),oi(e.a,5),e.o=Xo(e,2),_i(e.o,8),_i(e.o,9),oi(e.o,10),oi(e.o,11),oi(e.o,12),oi(e.o,13),oi(e.o,14),oi(e.o,15),oi(e.o,16),oi(e.o,17),oi(e.o,18),oi(e.o,19),oi(e.o,20),oi(e.o,21),oi(e.o,22),oi(e.o,23),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),e.p=Xo(e,3),_i(e.p,2),_i(e.p,3),_i(e.p,4),_i(e.p,5),oi(e.p,6),oi(e.p,7),mo(e.p),mo(e.p),e.q=Xo(e,4),_i(e.q,8),e.v=Xo(e,5),oi(e.v,9),mo(e.v),mo(e.v),mo(e.v),e.w=Xo(e,6),_i(e.w,2),_i(e.w,3),_i(e.w,4),oi(e.w,5),e.B=Xo(e,7),oi(e.B,1),mo(e.B),mo(e.B),mo(e.B),e.Q=Xo(e,8),oi(e.Q,0),mo(e.Q),e.R=Xo(e,9),_i(e.R,1),e.S=Xo(e,10),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),e.T=Xo(e,11),oi(e.T,10),oi(e.T,11),oi(e.T,12),oi(e.T,13),oi(e.T,14),mo(e.T),mo(e.T),e.U=Xo(e,12),_i(e.U,2),_i(e.U,3),oi(e.U,4),oi(e.U,5),oi(e.U,6),oi(e.U,7),mo(e.U),e.V=Xo(e,13),oi(e.V,10),e.W=Xo(e,14),_i(e.W,18),_i(e.W,19),_i(e.W,20),oi(e.W,21),oi(e.W,22),oi(e.W,23),e.bb=Xo(e,15),_i(e.bb,10),_i(e.bb,11),_i(e.bb,12),_i(e.bb,13),_i(e.bb,14),_i(e.bb,15),_i(e.bb,16),oi(e.bb,17),mo(e.bb),mo(e.bb),e.eb=Xo(e,16),_i(e.eb,2),_i(e.eb,3),_i(e.eb,4),_i(e.eb,5),_i(e.eb,6),_i(e.eb,7),oi(e.eb,8),oi(e.eb,9),e.ab=Xo(e,17),_i(e.ab,0),_i(e.ab,1),e.H=Xo(e,18),oi(e.H,0),oi(e.H,1),oi(e.H,2),oi(e.H,3),oi(e.H,4),oi(e.H,5),mo(e.H),e.db=Xo(e,19),oi(e.db,2),e.c=On(e,20),e.d=On(e,21),e.e=On(e,22),e.f=On(e,23),e.i=On(e,24),e.g=On(e,25),e.j=On(e,26),e.k=On(e,27),e.n=On(e,28),e.r=On(e,29),e.s=On(e,30),e.t=On(e,31),e.u=On(e,32),e.fb=On(e,33),e.A=On(e,34),e.C=On(e,35),e.D=On(e,36),e.F=On(e,37),e.G=On(e,38),e.I=On(e,39),e.J=On(e,40),e.L=On(e,41),e.M=On(e,42),e.N=On(e,43),e.O=On(e,44),e.P=On(e,45),e.X=On(e,46),e.Y=On(e,47),e.Z=On(e,48),e.$=On(e,49),e._=On(e,50),e.cb=On(e,51),e.K=On(e,52))}function kn(){kn=Z;var e,t;GP=new hi(_Ze),j4=new hi(EZe),Npe=(Gf(),$W),ylt=new ut(Ele,Npe),n3=new ut(D2,null),_lt=new hi(pfe),Bpe=(sw(),ui(HW,U(G(zW,1),_e,291,0,[qW]))),vx=new ut(zD,Bpe),Aj=new ut(DT,(Pt(),!1)),$pe=(eo(),ih),rp=new ut(Mle,$pe),Hpe=(Lh(),nY),qpe=new ut(AT,Hpe),Gpe=new ut(XD,!1),Upe=(Rh(),Mx),qv=new ut(HD,Upe),iwe=new Yb(12),Sb=new ut(N0,iwe),yx=new ut(PT,!1),Wpe=new ut(iV,!1),kj=new ut(N6,!1),uwe=(wr(),Y1),UP=new ut(Ez,uwe),i3=new hi(VD),Sx=new hi(ST),eY=new hi(MD),tY=new hi(L6),Ype=new ds,Hv=new ut(Rle,Ype),Slt=new ut(Nle,!1),Plt=new ut(Fle,!1),Xpe=new OS,Dj=new ut($le,Xpe),Ex=new ut(yle,!1),Tlt=new ut(SZe,1),new ut(PZe,!0),Ce(0),new ut(MZe,Ce(100)),new ut(CZe,!1),Ce(0),new ut(IZe,Ce(4e3)),Ce(0),new ut(TZe,Ce(400)),new ut(jZe,!1),new ut(AZe,!1),new ut(OZe,!0),new ut(DZe,!1),Fpe=(l7(),cY),Elt=new ut(bfe,Fpe),jlt=new ut(ule,10),Alt=new ut(ale,10),hwe=new ut(pz,20),Olt=new ut(lle,10),dwe=new ut(_z,2),Dlt=new ut(fle,10),gwe=new ut(hle,0),Px=new ut(ble,5),bwe=new ut(dle,1),pwe=new ut(gle,1),Pb=new ut(_w,20),klt=new ut(ple,10),vwe=new ut(wle,10),r3=new hi(mle),mwe=new N7e,wwe=new ut(Kle,mwe),Clt=new hi(nV),rwe=!1,Mlt=new ut(tV,rwe),Qpe=new Yb(5),Jpe=new ut(Cle,Qpe),Zpe=(fw(),t=c(rl(ro),9),new ku(t,c(Da(t,t.length),9),0)),zv=new ut(qE,Zpe),cwe=(Um(),W1),owe=new ut(jle,cwe),YW=new hi(Ale),XW=new hi(Ole),JW=new hi(Dle),WW=new hi(kle),ewe=(e=c(rl(tM),9),new ku(e,c(Da(e,e.length),9),0)),Eb=new ut(gv,ewe),nwe=nt((Ks(),R4)),G1=new ut(k2,nwe),twe=new $e(0,0),Vv=new ut(R2,twe),_x=new ut(eV,!1),Kpe=(xl(),A4),GW=new ut(xle,Kpe),VW=new ut(CD,!1),Ce(1),new ut(kZe,null),swe=new hi(Ble),QW=new hi(Lle),fwe=(Ie(),Vo),Gv=new ut(_le,fwe),zs=new hi(vle),awe=(js(),nt(X1)),Uw=new ut(HE,awe),ZW=new ut(Ile,!1),lwe=new ut(Tle,!0),Oj=new ut(Sle,!1),UW=new ut(Ple,!1),zpe=new ut(wz,1),Vpe=(L7(),rY),new ut(RZe,Vpe),Ilt=!0}function ye(){ye=Z;var e,t;Hn=new hi(mae),ige=new hi("coordinateOrigin"),CU=new hi("processors"),nge=new Wi("compoundNode",(Pt(),!1)),cj=new Wi("insideConnections",!1),sge=new hi("originalBendpoints"),uge=new hi("originalDummyNodePosition"),age=new hi("originalLabelEdge"),uj=new hi("representedLabels"),yP=new hi("endLabels"),G2=new hi("endLabel.origin"),W2=new Wi("labelSide",(mu(),Lj)),Dv=new Wi("maxEdgeThickness",0),Ul=new Wi("reversed",!1),Y2=new hi(pQe),wl=new Wi("longEdgeSource",null),da=new Wi("longEdgeTarget",null),Rw=new Wi("longEdgeHasLabelDummies",!1),sj=new Wi("longEdgeBeforeLabelDummy",!1),MR=new Wi("edgeConstraint",(zg(),aU)),X0=new hi("inLayerLayoutUnit"),gb=new Wi("inLayerConstraint",(Oh(),rj)),U2=new Wi("inLayerSuccessorConstraint",new Se),cge=new Wi("inLayerSuccessorConstraintBetweenNonDummies",!1),As=new hi("portDummy"),PR=new Wi("crossingHint",Ce(0)),Cc=new Wi("graphProperties",(t=c(rl(pU),9),new ku(t,c(Da(t,t.length),9),0))),Zo=new Wi("externalPortSide",(Ie(),Vo)),oge=new Wi("externalPortSize",new Tr),_U=new hi("externalPortReplacedDummies"),CR=new hi("externalPortReplacedDummy"),kw=new Wi("externalPortConnections",(e=c(rl(Gr),9),new ku(e,c(Da(e,e.length),9),0))),J0=new Wi(uQe,0),tge=new hi("barycenterAssociates"),X2=new hi("TopSideComments"),V2=new hi("BottomSideComments"),SR=new hi("CommentConnectionPort"),SU=new Wi("inputCollect",!1),MU=new Wi("outputCollect",!1),oj=new Wi("cyclic",!1),rge=new hi("crossHierarchyMap"),TU=new hi("targetOffset"),new Wi("splineLabelSize",new Tr),Rv=new hi("spacings"),IR=new Wi("partitionConstraint",!1),W0=new hi("breakingPoint.info"),hge=new hi("splines.survivingEdge"),bb=new hi("splines.route.start"),xv=new hi("splines.edgeChain"),fge=new hi("originalPortConstraints"),w4=new hi("selfLoopHolder"),m4=new hi("splines.nsPortY"),hc=new hi("modelOrder"),PU=new hi("longEdgeTargetNode"),Y0=new Wi(HQe,!1),kv=new Wi(HQe,!1),EU=new hi("layerConstraints.hiddenNodes"),lge=new hi("layerConstraints.opposidePort"),IU=new hi("targetNode.modelOrder")}function Lue(){Lue=Z,Sge=(uI(),pR),Tot=new ut(Cae,Sge),$ot=new ut(Iae,(Pt(),!1)),jge=(iO(),yU),Vot=new ut(AD,jge),cct=new ut(Tae,!1),sct=new ut(jae,!0),iot=new ut(Aae,!1),Nge=(rI(),tW),Ect=new ut(Oae,Nge),Ce(1),Act=new ut(Dae,Ce(7)),Oct=new ut(kae,!1),Kot=new ut(Rae,!1),Ege=(Qg(),sU),Iot=new ut(Tz,Ege),Dge=(R7(),WU),oct=new ut(TT,Dge),Age=(Ku(),aj),Jot=new ut(xae,Age),Ce(-1),Xot=new ut(Lae,Ce(-1)),Ce(-1),Qot=new ut(Nae,Ce(-1)),Ce(-1),Zot=new ut(jz,Ce(4)),Ce(-1),tct=new ut(Az,Ce(2)),Oge=(iv(),UR),rct=new ut(Oz,Oge),Ce(0),ict=new ut(Dz,Ce(0)),Wot=new ut(kz,Ce(Fn)),_ge=(f2(),H2),Cot=new ut(K6,_ge),dot=new ut(Fae,!1),yot=new ut(Rz,.1),Pot=new ut(xz,!1),Ce(-1),Eot=new ut(Bae,Ce(-1)),Ce(-1),Sot=new ut($ae,Ce(-1)),Ce(0),got=new ut(Kae,Ce(40)),yge=(J_(),mU),mot=new ut(Lz,yge),vge=ij,bot=new ut(OD,vge),Lge=(s6(),jP),_ct=new ut(bv,Lge),hct=new hi(DD),kge=(eI(),mR),uct=new ut(Nz,kge),Rge=($I(),vR),lct=new ut(Fz,Rge),bct=new ut(Bz,.3),wct=new hi($z),xge=(rw(),GR),mct=new ut(Kz,xge),Cge=(VO(),iW),kot=new ut(qae,Cge),Ige=(WC(),rW),Rot=new ut(Hae,Ige),Tge=(rE(),DP),xot=new ut(kD,Tge),Not=new ut(RD,.2),Oot=new ut(qz,2),Cct=new ut(zae,null),Tct=new ut(Vae,10),Ict=new ut(Gae,10),jct=new ut(Uae,20),Ce(0),Sct=new ut(Wae,Ce(0)),Ce(0),Pct=new ut(Yae,Ce(0)),Ce(0),Mct=new ut(Xae,Ce(0)),rot=new ut(Hz,!1),bge=(mE(),wP),cot=new ut(Jae,bge),gge=(gO(),oU),oot=new ut(Qae,gge),Hot=new ut(xD,!1),Ce(0),qot=new ut(zz,Ce(16)),Ce(0),zot=new ut(Vz,Ce(5)),$ge=(XO(),sW),Jct=new ut(Hh,$ge),Dct=new ut(LD,10),xct=new ut(ND,1),Bge=(DO(),bR),qct=new ut(q6,Bge),Fct=new hi(Gz),Fge=Ce(1),Ce(0),$ct=new ut(Uz,Fge),Kge=(HO(),cW),tst=new ut(FD,Kge),Qct=new hi(BD),Uct=new ut($D,!0),Vct=new ut(KD,2),Yct=new ut(Wz,!0),Mge=(F7(),wR),Aot=new ut(Zae,Mge),Pge=(y2(),f4),jot=new ut(ele,Pge),mge=(kh(),H1),hot=new ut(qD,mge),fot=new ut(tle,!1),pge=(y0(),Mv),sot=new ut(Yz,pge),wge=(X5(),YU),lot=new ut(nle,wge),uot=new ut(Xz,0),aot=new ut(Jz,0),Uot=uU,Got=nj,ect=zR,nct=zR,Yot=UU,_ot=(Rh(),kd),Mot=H2,vot=H2,pot=H2,wot=kd,dct=AP,gct=jP,act=jP,fct=jP,pct=ZU,yct=AP,vct=AP,Lot=(Lh(),o3),Fot=o3,Bot=DP,Dot=Rj,kct=M4,Rct=zw,Lct=M4,Nct=zw,Hct=M4,zct=zw,Bct=cU,Kct=bR,nst=M4,ist=zw,Zct=M4,est=zw,Wct=zw,Gct=zw,Xct=zw}function Jr(){Jr=Z,e1e=new Li("DIRECTION_PREPROCESSOR",0),Jde=new Li("COMMENT_PREPROCESSOR",1),hP=new Li("EDGE_AND_LAYER_CONSTRAINT_EDGE_REVERSER",2),VG=new Li("INTERACTIVE_EXTERNAL_PORT_POSITIONER",3),v1e=new Li("PARTITION_PREPROCESSOR",4),Xk=new Li("LABEL_DUMMY_INSERTER",5),cR=new Li("SELF_LOOP_PREPROCESSOR",6),s4=new Li("LAYER_CONSTRAINT_PREPROCESSOR",7),w1e=new Li("PARTITION_MIDPROCESSOR",8),u1e=new Li("HIGH_DEGREE_NODE_LAYER_PROCESSOR",9),b1e=new Li("NODE_PROMOTION",10),c4=new Li("LAYER_CONSTRAINT_POSTPROCESSOR",11),m1e=new Li("PARTITION_POSTPROCESSOR",12),o1e=new Li("HIERARCHICAL_PORT_CONSTRAINT_PROCESSOR",13),y1e=new Li("SEMI_INTERACTIVE_CROSSMIN_PROCESSOR",14),Vde=new Li("BREAKING_POINT_INSERTER",15),eR=new Li("LONG_EDGE_SPLITTER",16),GG=new Li("PORT_SIDE_PROCESSOR",17),Wk=new Li("INVERTED_PORT_PROCESSOR",18),iR=new Li("PORT_LIST_SORTER",19),E1e=new Li("SORT_BY_INPUT_ORDER_OF_MODEL",20),nR=new Li("NORTH_SOUTH_PORT_PREPROCESSOR",21),Gde=new Li("BREAKING_POINT_PROCESSOR",22),p1e=new Li(xQe,23),S1e=new Li(LQe,24),rR=new Li("SELF_LOOP_PORT_RESTORER",25),_1e=new Li("SINGLE_EDGE_GRAPH_WRAPPER",26),Yk=new Li("IN_LAYER_CONSTRAINT_PROCESSOR",27),n1e=new Li("END_NODE_PORT_LABEL_MANAGEMENT_PROCESSOR",28),d1e=new Li("LABEL_AND_NODE_SIZE_PROCESSOR",29),h1e=new Li("INNERMOST_NODE_MARGIN_CALCULATOR",30),sR=new Li("SELF_LOOP_ROUTER",31),Yde=new Li("COMMENT_NODE_MARGIN_CALCULATOR",32),Uk=new Li("END_LABEL_PREPROCESSOR",33),Qk=new Li("LABEL_DUMMY_SWITCHER",34),Wde=new Li("CENTER_LABEL_MANAGEMENT_PROCESSOR",35),o4=new Li("LABEL_SIDE_SELECTOR",36),l1e=new Li("HYPEREDGE_DUMMY_MERGER",37),c1e=new Li("HIERARCHICAL_PORT_DUMMY_SIZE_PROCESSOR",38),g1e=new Li("LAYER_SIZE_AND_GRAPH_HEIGHT_CALCULATOR",39),dP=new Li("HIERARCHICAL_PORT_POSITION_PROCESSOR",40),Qde=new Li("CONSTRAINTS_POSTPROCESSOR",41),Xde=new Li("COMMENT_POSTPROCESSOR",42),f1e=new Li("HYPERNODE_PROCESSOR",43),s1e=new Li("HIERARCHICAL_PORT_ORTHOGONAL_EDGE_ROUTER",44),Zk=new Li("LONG_EDGE_JOINER",45),oR=new Li("SELF_LOOP_POSTPROCESSOR",46),Ude=new Li("BREAKING_POINT_REMOVER",47),tR=new Li("NORTH_SOUTH_PORT_POSTPROCESSOR",48),a1e=new Li("HORIZONTAL_COMPACTOR",49),Jk=new Li("LABEL_DUMMY_REMOVER",50),i1e=new Li("FINAL_SPLINE_BENDPOINTS_CALCULATOR",51),t1e=new Li("END_LABEL_SORTER",52),ej=new Li("REVERSED_EDGE_RESTORER",53),Gk=new Li("END_LABEL_POSTPROCESSOR",54),r1e=new Li("HIERARCHICAL_NODE_RESIZER",55),Zde=new Li("DIRECTION_POSTPROCESSOR",56)}function rzt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi,ju,Sa,ef,Ux,eA,gM,tA,B4,EY,mht,SY,Bd,lp,$4,nA,iA,f3,PY,bM,vht,Fme,fp,pM,MY,h3,wM,im,mM,CY,yht;for(Fme=0,ti=t,Sa=0,eA=ti.length;Sa0&&(e.a[Bd.p]=Fme++)}for(wM=0,Zi=n,ef=0,gM=Zi.length;ef0;){for(Bd=(Lt(iA.b>0),c(iA.a.Xb(iA.c=--iA.b),11)),nA=0,a=new q(Bd.e);a.a0&&(Bd.j==(Ie(),_t)?(e.a[Bd.p]=wM,++wM):(e.a[Bd.p]=wM+tA+EY,++EY))}wM+=EY}for($4=new en,L=new Eh,Jt=t,ju=0,Ux=Jt.length;jud.b&&(d.b=f3)):Bd.i.c==vht&&(f3d.c&&(d.c=f3));for(L_(N,0,N.length,null),h3=oe(Qt,_n,25,N.length,15,1),i=oe(Qt,_n,25,wM+1,15,1),Y=0;Y0;)Ae%2>0&&(r+=CY[Ae+1]),Ae=(Ae-1)/2|0,++CY[Ae];for(et=oe(Gst,xe,362,N.length*2,0,1),ue=0;ue'?":rt(det,e)?"'(?<' or '(? toIndex: ",Yue=", toIndex: ",Xue="Index: ",Jue=", Size: ",NE="org.eclipse.elk.alg.common",Zn={62:1},zJe="org.eclipse.elk.alg.common.compaction",VJe="Scanline/EventHandler",Qf="org.eclipse.elk.alg.common.compaction.oned",GJe="CNode belongs to another CGroup.",UJe="ISpacingsHandler/1",rz="The ",oz=" instance has been finished already.",WJe="The direction ",YJe=" is not supported by the CGraph instance.",XJe="OneDimensionalCompactor",JJe="OneDimensionalCompactor/lambda$0$Type",QJe="Quadruplet",ZJe="ScanlineConstraintCalculator",eQe="ScanlineConstraintCalculator/ConstraintsScanlineHandler",tQe="ScanlineConstraintCalculator/ConstraintsScanlineHandler/lambda$0$Type",nQe="ScanlineConstraintCalculator/Timestamp",iQe="ScanlineConstraintCalculator/lambda$0$Type",yf={169:1,45:1},cz="org.eclipse.elk.alg.common.compaction.options",zo="org.eclipse.elk.core.data",Que="org.eclipse.elk.polyomino.traversalStrategy",Zue="org.eclipse.elk.polyomino.lowLevelSort",eae="org.eclipse.elk.polyomino.highLevelSort",tae="org.eclipse.elk.polyomino.fill",ca={130:1},sz="polyomino",k6="org.eclipse.elk.alg.common.networksimplex",Zf={177:1,3:1,4:1},rQe="org.eclipse.elk.alg.common.nodespacing",ib="org.eclipse.elk.alg.common.nodespacing.cellsystem",FE="CENTER",oQe={212:1,326:1},nae={3:1,4:1,5:1,595:1},j2="LEFT",A2="RIGHT",iae="Vertical alignment cannot be null",rae="BOTTOM",vD="org.eclipse.elk.alg.common.nodespacing.internal",R6="UNDEFINED",ql=.01,yT="org.eclipse.elk.alg.common.nodespacing.internal.algorithm",cQe="LabelPlacer/lambda$0$Type",sQe="LabelPlacer/lambda$1$Type",uQe="portRatioOrPosition",BE="org.eclipse.elk.alg.common.overlaps",uz="DOWN",_f="org.eclipse.elk.alg.common.polyomino",yD="NORTH",az="EAST",lz="SOUTH",fz="WEST",_D="org.eclipse.elk.alg.common.polyomino.structures",oae="Direction",hz="Grid is only of size ",dz=". Requested point (",gz=") is out of bounds.",ED=" Given center based coordinates were (",_T="org.eclipse.elk.graph.properties",aQe="IPropertyHolder",cae={3:1,94:1,134:1},O2="org.eclipse.elk.alg.common.spore",lQe="org.eclipse.elk.alg.common.utils",rb={209:1},hv="org.eclipse.elk.core",fQe="Connected Components Compaction",hQe="org.eclipse.elk.alg.disco",SD="org.eclipse.elk.alg.disco.graph",bz="org.eclipse.elk.alg.disco.options",sae="CompactionStrategy",uae="org.eclipse.elk.disco.componentCompaction.strategy",aae="org.eclipse.elk.disco.componentCompaction.componentLayoutAlgorithm",lae="org.eclipse.elk.disco.debug.discoGraph",fae="org.eclipse.elk.disco.debug.discoPolys",dQe="componentCompaction",ob="org.eclipse.elk.disco",pz="org.eclipse.elk.spacing.componentComponent",wz="org.eclipse.elk.edge.thickness",D2="org.eclipse.elk.aspectRatio",N0="org.eclipse.elk.padding",dv="org.eclipse.elk.alg.disco.transform",mz=1.5707963267948966,$E=17976931348623157e292,yw={3:1,4:1,5:1,192:1},hae={3:1,6:1,4:1,5:1,106:1,120:1},dae="org.eclipse.elk.alg.force",gae="ComponentsProcessor",gQe="ComponentsProcessor/1",ET="org.eclipse.elk.alg.force.graph",bQe="Component Layout",bae="org.eclipse.elk.alg.force.model",PD="org.eclipse.elk.force.model",pae="org.eclipse.elk.force.iterations",wae="org.eclipse.elk.force.repulsivePower",vz="org.eclipse.elk.force.temperature",Ef=.001,yz="org.eclipse.elk.force.repulsion",x6="org.eclipse.elk.alg.force.options",KE=1.600000023841858,_u="org.eclipse.elk.force",ST="org.eclipse.elk.priority",_w="org.eclipse.elk.spacing.nodeNode",_z="org.eclipse.elk.spacing.edgeLabel",MD="org.eclipse.elk.randomSeed",L6="org.eclipse.elk.separateConnectedComponents",PT="org.eclipse.elk.interactive",Ez="org.eclipse.elk.portConstraints",CD="org.eclipse.elk.edgeLabels.inline",N6="org.eclipse.elk.omitNodeMicroLayout",k2="org.eclipse.elk.nodeSize.options",gv="org.eclipse.elk.nodeSize.constraints",qE="org.eclipse.elk.nodeLabels.placement",HE="org.eclipse.elk.portLabels.placement",mae="origin",pQe="random",wQe="boundingBox.upLeft",mQe="boundingBox.lowRight",vae="org.eclipse.elk.stress.fixed",yae="org.eclipse.elk.stress.desiredEdgeLength",_ae="org.eclipse.elk.stress.dimension",Eae="org.eclipse.elk.stress.epsilon",Sae="org.eclipse.elk.stress.iterationLimit",D1="org.eclipse.elk.stress",vQe="ELK Stress",R2="org.eclipse.elk.nodeSize.minimum",ID="org.eclipse.elk.alg.force.stress",yQe="Layered layout",x2="org.eclipse.elk.alg.layered",MT="org.eclipse.elk.alg.layered.compaction.components",F6="org.eclipse.elk.alg.layered.compaction.oned",TD="org.eclipse.elk.alg.layered.compaction.oned.algs",cb="org.eclipse.elk.alg.layered.compaction.recthull",Sf="org.eclipse.elk.alg.layered.components",qh="NONE",ac={3:1,6:1,4:1,9:1,5:1,122:1},_Qe={3:1,6:1,4:1,5:1,141:1,106:1,120:1},jD="org.eclipse.elk.alg.layered.compound",Ti={51:1},Lc="org.eclipse.elk.alg.layered.graph",Sz=" -> ",EQe="Not supported by LGraph",Pae="Port side is undefined",Pz={3:1,6:1,4:1,5:1,474:1,141:1,106:1,120:1},Ed={3:1,6:1,4:1,5:1,141:1,193:1,203:1,106:1,120:1},SQe={3:1,6:1,4:1,5:1,141:1,1943:1,203:1,106:1,120:1},PQe=`([{"' \r +`,MQe=`)]}"' \r +`,CQe="The given string contains parts that cannot be parsed as numbers.",CT="org.eclipse.elk.core.math",IQe={3:1,4:1,142:1,207:1,414:1},TQe={3:1,4:1,116:1,207:1,414:1},kt="org.eclipse.elk.layered",Sd="org.eclipse.elk.alg.layered.graph.transform",jQe="ElkGraphImporter",AQe="ElkGraphImporter/lambda$0$Type",OQe="ElkGraphImporter/lambda$1$Type",DQe="ElkGraphImporter/lambda$2$Type",kQe="ElkGraphImporter/lambda$4$Type",RQe="Node margin calculation",Ct="org.eclipse.elk.alg.layered.intermediate",xQe="ONE_SIDED_GREEDY_SWITCH",LQe="TWO_SIDED_GREEDY_SWITCH",Mz="No implementation is available for the layout processor ",Mae="IntermediateProcessorStrategy",Cz="Node '",NQe="FIRST_SEPARATE",FQe="LAST_SEPARATE",BQe="Odd port side processing",Ki="org.eclipse.elk.alg.layered.intermediate.compaction",B6="org.eclipse.elk.alg.layered.intermediate.greedyswitch",eh="org.eclipse.elk.alg.layered.p3order.counting",IT={225:1},L2="org.eclipse.elk.alg.layered.intermediate.loops",Eu="org.eclipse.elk.alg.layered.intermediate.loops.ordering",k1="org.eclipse.elk.alg.layered.intermediate.loops.routing",$6="org.eclipse.elk.alg.layered.intermediate.preserveorder",Pf="org.eclipse.elk.alg.layered.intermediate.wrapping",lc="org.eclipse.elk.alg.layered.options",Iz="INTERACTIVE",$Qe="DEPTH_FIRST",KQe="EDGE_LENGTH",qQe="SELF_LOOPS",HQe="firstTryWithInitialOrder",Cae="org.eclipse.elk.layered.directionCongruency",Iae="org.eclipse.elk.layered.feedbackEdges",AD="org.eclipse.elk.layered.interactiveReferencePoint",Tae="org.eclipse.elk.layered.mergeEdges",jae="org.eclipse.elk.layered.mergeHierarchyEdges",Aae="org.eclipse.elk.layered.allowNonFlowPortsToSwitchSides",Oae="org.eclipse.elk.layered.portSortingStrategy",Dae="org.eclipse.elk.layered.thoroughness",kae="org.eclipse.elk.layered.unnecessaryBendpoints",Rae="org.eclipse.elk.layered.generatePositionAndLayerIds",Tz="org.eclipse.elk.layered.cycleBreaking.strategy",TT="org.eclipse.elk.layered.layering.strategy",xae="org.eclipse.elk.layered.layering.layerConstraint",Lae="org.eclipse.elk.layered.layering.layerChoiceConstraint",Nae="org.eclipse.elk.layered.layering.layerId",jz="org.eclipse.elk.layered.layering.minWidth.upperBoundOnWidth",Az="org.eclipse.elk.layered.layering.minWidth.upperLayerEstimationScalingFactor",Oz="org.eclipse.elk.layered.layering.nodePromotion.strategy",Dz="org.eclipse.elk.layered.layering.nodePromotion.maxIterations",kz="org.eclipse.elk.layered.layering.coffmanGraham.layerBound",K6="org.eclipse.elk.layered.crossingMinimization.strategy",Fae="org.eclipse.elk.layered.crossingMinimization.forceNodeModelOrder",Rz="org.eclipse.elk.layered.crossingMinimization.hierarchicalSweepiness",xz="org.eclipse.elk.layered.crossingMinimization.semiInteractive",Bae="org.eclipse.elk.layered.crossingMinimization.positionChoiceConstraint",$ae="org.eclipse.elk.layered.crossingMinimization.positionId",Kae="org.eclipse.elk.layered.crossingMinimization.greedySwitch.activationThreshold",Lz="org.eclipse.elk.layered.crossingMinimization.greedySwitch.type",OD="org.eclipse.elk.layered.crossingMinimization.greedySwitchHierarchical.type",bv="org.eclipse.elk.layered.nodePlacement.strategy",DD="org.eclipse.elk.layered.nodePlacement.favorStraightEdges",Nz="org.eclipse.elk.layered.nodePlacement.bk.edgeStraightening",Fz="org.eclipse.elk.layered.nodePlacement.bk.fixedAlignment",Bz="org.eclipse.elk.layered.nodePlacement.linearSegments.deflectionDampening",$z="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility",Kz="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility.default",qae="org.eclipse.elk.layered.edgeRouting.selfLoopDistribution",Hae="org.eclipse.elk.layered.edgeRouting.selfLoopOrdering",kD="org.eclipse.elk.layered.edgeRouting.splines.mode",RD="org.eclipse.elk.layered.edgeRouting.splines.sloppy.layerSpacingFactor",qz="org.eclipse.elk.layered.edgeRouting.polyline.slopedEdgeZoneWidth",zae="org.eclipse.elk.layered.spacing.baseValue",Vae="org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers",Gae="org.eclipse.elk.layered.spacing.edgeEdgeBetweenLayers",Uae="org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers",Wae="org.eclipse.elk.layered.priority.direction",Yae="org.eclipse.elk.layered.priority.shortness",Xae="org.eclipse.elk.layered.priority.straightness",Hz="org.eclipse.elk.layered.compaction.connectedComponents",Jae="org.eclipse.elk.layered.compaction.postCompaction.strategy",Qae="org.eclipse.elk.layered.compaction.postCompaction.constraints",xD="org.eclipse.elk.layered.highDegreeNodes.treatment",zz="org.eclipse.elk.layered.highDegreeNodes.threshold",Vz="org.eclipse.elk.layered.highDegreeNodes.treeHeight",Hh="org.eclipse.elk.layered.wrapping.strategy",LD="org.eclipse.elk.layered.wrapping.additionalEdgeSpacing",ND="org.eclipse.elk.layered.wrapping.correctionFactor",q6="org.eclipse.elk.layered.wrapping.cutting.strategy",Gz="org.eclipse.elk.layered.wrapping.cutting.cuts",Uz="org.eclipse.elk.layered.wrapping.cutting.msd.freedom",FD="org.eclipse.elk.layered.wrapping.validify.strategy",BD="org.eclipse.elk.layered.wrapping.validify.forbiddenIndices",$D="org.eclipse.elk.layered.wrapping.multiEdge.improveCuts",KD="org.eclipse.elk.layered.wrapping.multiEdge.distancePenalty",Wz="org.eclipse.elk.layered.wrapping.multiEdge.improveWrappedEdges",Zae="org.eclipse.elk.layered.edgeLabels.sideSelection",ele="org.eclipse.elk.layered.edgeLabels.centerLabelPlacementStrategy",qD="org.eclipse.elk.layered.considerModelOrder.strategy",tle="org.eclipse.elk.layered.considerModelOrder.noModelOrder",Yz="org.eclipse.elk.layered.considerModelOrder.components",nle="org.eclipse.elk.layered.considerModelOrder.longEdgeStrategy",Xz="org.eclipse.elk.layered.considerModelOrder.crossingCounterNodeInfluence",Jz="org.eclipse.elk.layered.considerModelOrder.crossingCounterPortInfluence",Qz="layering",zQe="layering.minWidth",VQe="layering.nodePromotion",jT="crossingMinimization",HD="org.eclipse.elk.hierarchyHandling",GQe="crossingMinimization.greedySwitch",UQe="nodePlacement",WQe="nodePlacement.bk",YQe="edgeRouting",AT="org.eclipse.elk.edgeRouting",Hl="spacing",ile="priority",rle="compaction",XQe="compaction.postCompaction",JQe="Specifies whether and how post-process compaction is applied.",ole="highDegreeNodes",cle="wrapping",QQe="wrapping.cutting",ZQe="wrapping.validify",sle="wrapping.multiEdge",Zz="edgeLabels",OT="considerModelOrder",ule="org.eclipse.elk.spacing.commentComment",ale="org.eclipse.elk.spacing.commentNode",lle="org.eclipse.elk.spacing.edgeEdge",fle="org.eclipse.elk.spacing.edgeNode",hle="org.eclipse.elk.spacing.labelLabel",dle="org.eclipse.elk.spacing.labelPortHorizontal",gle="org.eclipse.elk.spacing.labelPortVertical",ble="org.eclipse.elk.spacing.labelNode",ple="org.eclipse.elk.spacing.nodeSelfLoop",wle="org.eclipse.elk.spacing.portPort",mle="org.eclipse.elk.spacing.individual",vle="org.eclipse.elk.port.borderOffset",yle="org.eclipse.elk.noLayout",_le="org.eclipse.elk.port.side",DT="org.eclipse.elk.debugMode",Ele="org.eclipse.elk.alignment",Sle="org.eclipse.elk.insideSelfLoops.activate",Ple="org.eclipse.elk.insideSelfLoops.yo",eV="org.eclipse.elk.nodeSize.fixedGraphSize",Mle="org.eclipse.elk.direction",Cle="org.eclipse.elk.nodeLabels.padding",Ile="org.eclipse.elk.portLabels.nextToPortIfPossible",Tle="org.eclipse.elk.portLabels.treatAsGroup",jle="org.eclipse.elk.portAlignment.default",Ale="org.eclipse.elk.portAlignment.north",Ole="org.eclipse.elk.portAlignment.south",Dle="org.eclipse.elk.portAlignment.west",kle="org.eclipse.elk.portAlignment.east",zD="org.eclipse.elk.contentAlignment",Rle="org.eclipse.elk.junctionPoints",xle="org.eclipse.elk.edgeLabels.placement",Lle="org.eclipse.elk.port.index",Nle="org.eclipse.elk.commentBox",Fle="org.eclipse.elk.hypernode",Ble="org.eclipse.elk.port.anchor",tV="org.eclipse.elk.partitioning.activate",nV="org.eclipse.elk.partitioning.partition",VD="org.eclipse.elk.position",$le="org.eclipse.elk.margins",Kle="org.eclipse.elk.spacing.portsSurrounding",iV="org.eclipse.elk.interactiveLayout",fc="org.eclipse.elk.core.util",qle={3:1,4:1,5:1,593:1},eZe="NETWORK_SIMPLEX",Sc={123:1,51:1},GD="org.eclipse.elk.alg.layered.p1cycles",Ew="org.eclipse.elk.alg.layered.p2layers",Hle={402:1,225:1},tZe={832:1,3:1,4:1},_s="org.eclipse.elk.alg.layered.p3order",io="org.eclipse.elk.alg.layered.p4nodes",nZe={3:1,4:1,5:1,840:1},Mf=1e-5,R1="org.eclipse.elk.alg.layered.p4nodes.bk",rV="org.eclipse.elk.alg.layered.p5edges",gl="org.eclipse.elk.alg.layered.p5edges.orthogonal",oV="org.eclipse.elk.alg.layered.p5edges.orthogonal.direction",cV=1e-6,Sw="org.eclipse.elk.alg.layered.p5edges.splines",sV=.09999999999999998,UD=1e-8,iZe=4.71238898038469,rZe=3.141592653589793,H6="org.eclipse.elk.alg.mrtree",z6="org.eclipse.elk.alg.mrtree.graph",N2="org.eclipse.elk.alg.mrtree.intermediate",oZe="Set neighbors in level",cZe="DESCENDANTS",zle="org.eclipse.elk.mrtree.weighting",Vle="org.eclipse.elk.mrtree.searchOrder",WD="org.eclipse.elk.alg.mrtree.options",Pd="org.eclipse.elk.mrtree",sZe="org.eclipse.elk.tree",Gle="org.eclipse.elk.alg.radial",pv=6.283185307179586,Ule=5e-324,uZe="org.eclipse.elk.alg.radial.intermediate",uV="org.eclipse.elk.alg.radial.intermediate.compaction",aZe={3:1,4:1,5:1,106:1},Wle="org.eclipse.elk.alg.radial.intermediate.optimization",aV="No implementation is available for the layout option ",V6="org.eclipse.elk.alg.radial.options",Yle="org.eclipse.elk.radial.orderId",Xle="org.eclipse.elk.radial.radius",lV="org.eclipse.elk.radial.compactor",fV="org.eclipse.elk.radial.compactionStepSize",Jle="org.eclipse.elk.radial.sorter",Qle="org.eclipse.elk.radial.wedgeCriteria",Zle="org.eclipse.elk.radial.optimizationCriteria",Cf="org.eclipse.elk.radial",lZe="org.eclipse.elk.alg.radial.p1position.wedge",efe="org.eclipse.elk.alg.radial.sorting",fZe=5.497787143782138,hZe=3.9269908169872414,dZe=2.356194490192345,gZe="org.eclipse.elk.alg.rectpacking",YD="org.eclipse.elk.alg.rectpacking.firstiteration",hV="org.eclipse.elk.alg.rectpacking.options",tfe="org.eclipse.elk.rectpacking.optimizationGoal",nfe="org.eclipse.elk.rectpacking.lastPlaceShift",ife="org.eclipse.elk.rectpacking.currentPosition",rfe="org.eclipse.elk.rectpacking.desiredPosition",ofe="org.eclipse.elk.rectpacking.onlyFirstIteration",cfe="org.eclipse.elk.rectpacking.rowCompaction",dV="org.eclipse.elk.rectpacking.expandToAspectRatio",sfe="org.eclipse.elk.rectpacking.targetWidth",XD="org.eclipse.elk.expandNodes",sa="org.eclipse.elk.rectpacking",kT="org.eclipse.elk.alg.rectpacking.util",JD="No implementation available for ",Pw="org.eclipse.elk.alg.spore",Mw="org.eclipse.elk.alg.spore.options",F0="org.eclipse.elk.sporeCompaction",gV="org.eclipse.elk.underlyingLayoutAlgorithm",ufe="org.eclipse.elk.processingOrder.treeConstruction",afe="org.eclipse.elk.processingOrder.spanningTreeCostFunction",bV="org.eclipse.elk.processingOrder.preferredRoot",pV="org.eclipse.elk.processingOrder.rootSelection",wV="org.eclipse.elk.structure.structureExtractionStrategy",lfe="org.eclipse.elk.compaction.compactionStrategy",ffe="org.eclipse.elk.compaction.orthogonal",hfe="org.eclipse.elk.overlapRemoval.maxIterations",dfe="org.eclipse.elk.overlapRemoval.runScanline",mV="processingOrder",bZe="overlapRemoval",zE="org.eclipse.elk.sporeOverlap",pZe="org.eclipse.elk.alg.spore.p1structure",vV="org.eclipse.elk.alg.spore.p2processingorder",yV="org.eclipse.elk.alg.spore.p3execution",wZe="Invalid index: ",VE="org.eclipse.elk.core.alg",wv={331:1},Cw={288:1},mZe="Make sure its type is registered with the ",gfe=" utility class.",GE="true",_V="false",vZe="Couldn't clone property '",B0=.05,ua="org.eclipse.elk.core.options",yZe=1.2999999523162842,$0="org.eclipse.elk.box",bfe="org.eclipse.elk.box.packingMode",_Ze="org.eclipse.elk.algorithm",EZe="org.eclipse.elk.resolvedAlgorithm",pfe="org.eclipse.elk.bendPoints",azt="org.eclipse.elk.labelManager",SZe="org.eclipse.elk.scaleFactor",PZe="org.eclipse.elk.animate",MZe="org.eclipse.elk.animTimeFactor",CZe="org.eclipse.elk.layoutAncestors",IZe="org.eclipse.elk.maxAnimTime",TZe="org.eclipse.elk.minAnimTime",jZe="org.eclipse.elk.progressBar",AZe="org.eclipse.elk.validateGraph",OZe="org.eclipse.elk.validateOptions",DZe="org.eclipse.elk.zoomToFit",lzt="org.eclipse.elk.font.name",kZe="org.eclipse.elk.font.size",RZe="org.eclipse.elk.edge.type",xZe="partitioning",LZe="nodeLabels",QD="portAlignment",EV="nodeSize",SV="port",wfe="portLabels",NZe="insideSelfLoops",G6="org.eclipse.elk.fixed",ZD="org.eclipse.elk.random",FZe="port must have a parent node to calculate the port side",BZe="The edge needs to have exactly one edge section. Found: ",U6="org.eclipse.elk.core.util.adapters",Hu="org.eclipse.emf.ecore",mv="org.eclipse.elk.graph",$Ze="EMapPropertyHolder",KZe="ElkBendPoint",qZe="ElkGraphElement",HZe="ElkConnectableShape",mfe="ElkEdge",zZe="ElkEdgeSection",VZe="EModelElement",GZe="ENamedElement",vfe="ElkLabel",yfe="ElkNode",_fe="ElkPort",UZe={92:1,90:1},F2="org.eclipse.emf.common.notify.impl",x1="The feature '",W6="' is not a valid changeable feature",WZe="Expecting null",PV="' is not a valid feature",YZe="The feature ID",XZe=" is not a valid feature ID",rc=32768,JZe={105:1,92:1,90:1,56:1,49:1,97:1},mt="org.eclipse.emf.ecore.impl",sb="org.eclipse.elk.graph.impl",Y6="Recursive containment not allowed for ",UE="The datatype '",K0="' is not a valid classifier",MV="The value '",vv={190:1,3:1,4:1},CV="The class '",WE="http://www.eclipse.org/elk/ElkGraph",Ka=1024,Efe="property",X6="value",IV="source",QZe="properties",ZZe="identifier",TV="height",jV="width",AV="parent",OV="text",DV="children",eet="hierarchical",Sfe="sources",kV="targets",Pfe="sections",ek="bendPoints",Mfe="outgoingShape",Cfe="incomingShape",Ife="outgoingSections",Tfe="incomingSections",Br="org.eclipse.emf.common.util",jfe="Severe implementation error in the Json to ElkGraph importer.",If="id",Cr="org.eclipse.elk.graph.json",Afe="Unhandled parameter types: ",tet="startPoint",net="An edge must have at least one source and one target (edge id: '",YE="').",iet="Referenced edge section does not exist: ",ret=" (edge id: '",Ofe="target",oet="sourcePoint",cet="targetPoint",tk="group",Dn="name",set="connectableShape cannot be null",uet="edge cannot be null",RV="Passed edge is not 'simple'.",nk="org.eclipse.elk.graph.util",RT="The 'no duplicates' constraint is violated",xV="targetIndex=",ub=", size=",LV="sourceIndex=",Tf={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1},NV={3:1,4:1,20:1,28:1,52:1,14:1,47:1,15:1,54:1,67:1,63:1,58:1,588:1},ik="logging",aet="measureExecutionTime",fet="parser.parse.1",het="parser.parse.2",rk="parser.next.1",FV="parser.next.2",det="parser.next.3",get="parser.next.4",ab="parser.factor.1",Dfe="parser.factor.2",bet="parser.factor.3",pet="parser.factor.4",wet="parser.factor.5",met="parser.factor.6",vet="parser.atom.1",yet="parser.atom.2",_et="parser.atom.3",kfe="parser.atom.4",BV="parser.atom.5",Rfe="parser.cc.1",ok="parser.cc.2",Eet="parser.cc.3",Pet="parser.cc.5",xfe="parser.cc.6",Lfe="parser.cc.7",$V="parser.cc.8",Met="parser.ope.1",Cet="parser.ope.2",Iet="parser.ope.3",Md="parser.descape.1",Tet="parser.descape.2",jet="parser.descape.3",Aet="parser.descape.4",Oet="parser.descape.5",zu="parser.process.1",Det="parser.quantifier.1",ket="parser.quantifier.2",Ret="parser.quantifier.3",xet="parser.quantifier.4",Nfe="parser.quantifier.5",Let="org.eclipse.emf.common.notify",Ffe={415:1,672:1},Net={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1},xT={366:1,143:1},J6="index=",KV={3:1,4:1,5:1,126:1},Fet={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,58:1},Bfe={3:1,6:1,4:1,5:1,192:1},Bet={3:1,4:1,5:1,165:1,367:1},$et=";/?:@&=+$,",Ket="invalid authority: ",qet="EAnnotation",Het="ETypedElement",zet="EStructuralFeature",Vet="EAttribute",Get="EClassifier",Uet="EEnumLiteral",Wet="EGenericType",Yet="EOperation",Xet="EParameter",Jet="EReference",Qet="ETypeParameter",ai="org.eclipse.emf.ecore.util",qV={76:1},$fe={3:1,20:1,14:1,15:1,58:1,589:1,76:1,69:1,95:1},Zet="org.eclipse.emf.ecore.util.FeatureMap$Entry",Es=8192,Iw=2048,Q6="byte",ck="char",Z6="double",eP="float",tP="int",nP="long",iP="short",ett="java.lang.Object",yv={3:1,4:1,5:1,247:1},Kfe={3:1,4:1,5:1,673:1},ttt={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,69:1},xo={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,69:1,95:1},LT="mixed",yn="http:///org/eclipse/emf/ecore/util/ExtendedMetaData",aa="kind",ntt={3:1,4:1,5:1,674:1},qfe={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1,76:1,69:1,95:1},sk={20:1,28:1,52:1,14:1,15:1,58:1,69:1},uk={47:1,125:1,279:1},ak={72:1,332:1},lk="The value of type '",fk="' must be of type '",_v=1316,la="http://www.eclipse.org/emf/2002/Ecore",hk=-32768,q0="constraints",Or="baseType",itt="getEStructuralFeature",rtt="getFeatureID",rP="feature",ott="getOperationID",Hfe="operation",ctt="defaultValue",stt="eTypeParameters",utt="isInstance",att="getEEnumLiteral",ltt="eContainingClass",Tn={55:1},ftt={3:1,4:1,5:1,119:1},htt="org.eclipse.emf.ecore.resource",dtt={92:1,90:1,591:1,1935:1},HV="org.eclipse.emf.ecore.resource.impl",zfe="unspecified",NT="simple",dk="attribute",gtt="attributeWildcard",gk="element",zV="elementWildcard",bl="collapse",VV="itemType",bk="namespace",FT="##targetNamespace",fa="whiteSpace",Vfe="wildcards",lb="http://www.eclipse.org/emf/2003/XMLType",GV="##any",XE="uninitialized",BT="The multiplicity constraint is violated",pk="org.eclipse.emf.ecore.xml.type",btt="ProcessingInstruction",ptt="SimpleAnyType",wtt="XMLTypeDocumentRoot",Fi="org.eclipse.emf.ecore.xml.type.impl",$T="INF",mtt="processing",vtt="ENTITIES_._base",Gfe="minLength",Ufe="ENTITY",wk="NCName",ytt="IDREFS_._base",Wfe="integer",UV="token",WV="pattern",_tt="[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",Yfe="\\i\\c*",Ett="[\\i-[:]][\\c-[:]]*",Stt="nonPositiveInteger",KT="maxInclusive",Xfe="NMTOKEN",Ptt="NMTOKENS_._base",Jfe="nonNegativeInteger",qT="minInclusive",Mtt="normalizedString",Ctt="unsignedByte",Itt="unsignedInt",Ttt="18446744073709551615",jtt="unsignedShort",Att="processingInstruction",Cd="org.eclipse.emf.ecore.xml.type.internal",JE=1114111,Ott="Internal Error: shorthands: \\u",oP="xml:isDigit",YV="xml:isWord",XV="xml:isSpace",JV="xml:isNameChar",QV="xml:isInitialNameChar",Dtt="09٠٩۰۹०९০৯੦੯૦૯୦୯௧௯౦౯೦೯൦൯๐๙໐໙༠༩",ktt="AZazÀÖØöøıĴľŁňŊžƀǃǍǰǴǵǺȗɐʨʻˁΆΆΈΊΌΌΎΡΣώϐϖϚϚϜϜϞϞϠϠϢϳЁЌЎяёќўҁҐӄӇӈӋӌӐӫӮӵӸӹԱՖՙՙաֆאתװײءغفيٱڷںھۀێېۓەەۥۦअहऽऽक़ॡঅঌএঐওনপরললশহড়ঢ়য়ৡৰৱਅਊਏਐਓਨਪਰਲਲ਼ਵਸ਼ਸਹਖ਼ੜਫ਼ਫ਼ੲੴઅઋઍઍએઑઓનપરલળવહઽઽૠૠଅଌଏଐଓନପରଲଳଶହଽଽଡ଼ଢ଼ୟୡஅஊஎஐஒகஙசஜஜஞடணதநபமவஷஹఅఌఎఐఒనపళవహౠౡಅಌಎಐಒನಪಳವಹೞೞೠೡഅഌഎഐഒനപഹൠൡกฮะะาำเๅກຂຄຄງຈຊຊຍຍດທນຟມຣລລວວສຫອຮະະາຳຽຽເໄཀཇཉཀྵႠჅაჶᄀᄀᄂᄃᄅᄇᄉᄉᄋᄌᄎᄒᄼᄼᄾᄾᅀᅀᅌᅌᅎᅎᅐᅐᅔᅕᅙᅙᅟᅡᅣᅣᅥᅥᅧᅧᅩᅩᅭᅮᅲᅳᅵᅵᆞᆞᆨᆨᆫᆫᆮᆯᆷᆸᆺᆺᆼᇂᇫᇫᇰᇰᇹᇹḀẛẠỹἀἕἘἝἠὅὈὍὐὗὙὙὛὛὝὝὟώᾀᾴᾶᾼιιῂῄῆῌῐΐῖΊῠῬῲῴῶῼΩΩKÅ℮℮ↀↂ〇〇〡〩ぁゔァヺㄅㄬ一龥가힣",Rtt="Private Use",ZV="ASSIGNED",eG="\0€ÿĀſƀɏɐʯʰ˿̀ͯͰϿЀӿ԰֏֐׿؀ۿ܀ݏހ޿ऀॿঀ৿਀੿઀૿଀୿஀௿ఀ౿ಀ೿ഀൿ඀෿฀๿຀໿ༀ࿿က႟Ⴀჿᄀᇿሀ፿Ꭰ᏿᐀ᙿ ᚟ᚠ᛿ក៿᠀᢯Ḁỿἀ῿ ⁰₟₠⃏⃐⃿℀⅏⅐↏←⇿∀⋿⌀⏿␀␿⑀⑟①⓿─╿▀▟■◿☀⛿✀➿⠀⣿⺀⻿⼀⿟⿰⿿ 〿぀ゟ゠ヿ㄀ㄯ㄰㆏㆐㆟ㆠㆿ㈀㋿㌀㏿㐀䶵一鿿ꀀ꒏꒐꓏가힣豈﫿ffﭏﭐ﷿︠︯︰﹏﹐﹯ﹰ﻾\uFEFF\uFEFF＀￯",Qfe="UNASSIGNED",QE={3:1,117:1},xtt="org.eclipse.emf.ecore.xml.type.util",mk={3:1,4:1,5:1,368:1},Zfe="org.eclipse.xtext.xbase.lib",Ltt="Cannot add elements to a Range",Ntt="Cannot set elements in a Range",Ftt="Cannot remove elements from a Range",vk="locale",yk="default",_k="user.agent",s,Ek,tG;g.goog=g.goog||{},g.goog.global=g.goog.global||g,LDt(),y(1,null,{},C),s.Fb=function(t){return O7e(this,t)},s.Gb=function(){return this.gm},s.Hb=function(){return Xb(this)},s.Ib=function(){var t;return r1(Fs(this))+"@"+(t=fi(this)>>>0,t.toString(16))},s.equals=function(e){return this.Fb(e)},s.hashCode=function(){return this.Hb()},s.toString=function(){return this.Ib()};var Btt,$tt,Ktt;y(290,1,{290:1,2026:1},Are),s.le=function(t){var n;return n=new Are,n.i=4,t>1?n.c=WLe(this,t-1):n.c=this,n},s.me=function(){return Sh(this),this.b},s.ne=function(){return r1(this)},s.oe=function(){return Sh(this),this.k},s.pe=function(){return(this.i&4)!=0},s.qe=function(){return(this.i&1)!=0},s.Ib=function(){return Vie(this)},s.i=0;var xt=S(Ho,"Object",1),ehe=S(Ho,"Class",290);y(1998,1,lT),S(fT,"Optional",1998),y(1170,1998,lT,T),s.Fb=function(t){return t===this},s.Hb=function(){return 2040732332},s.Ib=function(){return"Optional.absent()"},s.Jb=function(t){return nn(t),DS(),nG};var nG;S(fT,"Absent",1170),y(628,1,{},XN),S(fT,"Joiner",628);var fzt=pi(fT,"Predicate");y(582,1,{169:1,582:1,3:1,45:1},OCe),s.Mb=function(t){return Rqe(this,t)},s.Lb=function(t){return Rqe(this,t)},s.Fb=function(t){var n;return Q(t,582)?(n=c(t,582),Sse(this.a,n.a)):!1},s.Hb=function(){return xre(this.a)+306654252},s.Ib=function(){return Ekt(this.a)},S(fT,"Predicates/AndPredicate",582),y(408,1998,{408:1,3:1},LA),s.Fb=function(t){var n;return Q(t,408)?(n=c(t,408),$n(this.a,n.a)):!1},s.Hb=function(){return 1502476572+fi(this.a)},s.Ib=function(){return yJe+this.a+")"},s.Jb=function(t){return new LA(B8(t.Kb(this.a),"the Function passed to Optional.transform() must not return null."))},S(fT,"Present",408),y(198,1,OE),s.Nb=function(t){Sr(this,t)},s.Qb=function(){_9e()},S(qe,"UnmodifiableIterator",198),y(1978,198,DE),s.Qb=function(){_9e()},s.Rb=function(t){throw V(new sn)},s.Wb=function(t){throw V(new sn)},S(qe,"UnmodifiableListIterator",1978),y(386,1978,DE),s.Ob=function(){return this.c0},s.Pb=function(){if(this.c>=this.d)throw V(new tc);return this.Xb(this.c++)},s.Tb=function(){return this.c},s.Ub=function(){if(this.c<=0)throw V(new tc);return this.Xb(--this.c)},s.Vb=function(){return this.c-1},s.c=0,s.d=0,S(qe,"AbstractIndexedListIterator",386),y(699,198,OE),s.Ob=function(){return U$(this)},s.Pb=function(){return Bie(this)},s.e=1,S(qe,"AbstractIterator",699),y(1986,1,{224:1}),s.Zb=function(){var t;return t=this.f,t||(this.f=this.ac())},s.Fb=function(t){return fK(this,t)},s.Hb=function(){return fi(this.Zb())},s.dc=function(){return this.gc()==0},s.ec=function(){return Jy(this)},s.Ib=function(){return Ro(this.Zb())},S(qe,"AbstractMultimap",1986),y(726,1986,tb),s.$b=function(){kO(this)},s._b=function(t){return $9e(this,t)},s.ac=function(){return new c_(this,this.c)},s.ic=function(t){return this.hc()},s.bc=function(){return new Dm(this,this.c)},s.jc=function(){return this.mc(this.hc())},s.kc=function(){return new r9e(this)},s.lc=function(){return mq(this.c.vc().Nc(),new _,64,this.d)},s.cc=function(t){return Vn(this,t)},s.fc=function(t){return PI(this,t)},s.gc=function(){return this.d},s.mc=function(t){return st(),new W3(t)},s.nc=function(){return new i9e(this)},s.oc=function(){return mq(this.c.Cc().Nc(),new M,64,this.d)},s.pc=function(t,n){return new dO(this,t,n,null)},s.d=0,S(qe,"AbstractMapBasedMultimap",726),y(1631,726,tb),s.hc=function(){return new Dc(this.a)},s.jc=function(){return st(),st(),Qr},s.cc=function(t){return c(Vn(this,t),15)},s.fc=function(t){return c(PI(this,t),15)},s.Zb=function(){return n2(this)},s.Fb=function(t){return fK(this,t)},s.qc=function(t){return c(Vn(this,t),15)},s.rc=function(t){return c(PI(this,t),15)},s.mc=function(t){return NC(c(t,15))},s.pc=function(t,n){return ZNe(this,t,c(n,15),null)},S(qe,"AbstractListMultimap",1631),y(732,1,dr),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.c.Ob()||this.e.Ob()},s.Pb=function(){var t;return this.e.Ob()||(t=c(this.c.Pb(),42),this.b=t.cd(),this.a=c(t.dd(),14),this.e=this.a.Kc()),this.sc(this.b,this.e.Pb())},s.Qb=function(){this.e.Qb(),this.a.dc()&&this.c.Qb(),--this.d.d},S(qe,"AbstractMapBasedMultimap/Itr",732),y(1099,732,dr,i9e),s.sc=function(t,n){return n},S(qe,"AbstractMapBasedMultimap/1",1099),y(1100,1,{},M),s.Kb=function(t){return c(t,14).Nc()},S(qe,"AbstractMapBasedMultimap/1methodref$spliterator$Type",1100),y(1101,732,dr,r9e),s.sc=function(t,n){return new Vb(t,n)},S(qe,"AbstractMapBasedMultimap/2",1101);var the=pi(Gt,"Map");y(1967,1,x0),s.wc=function(t){U5(this,t)},s.yc=function(t,n,i){return TK(this,t,n,i)},s.$b=function(){this.vc().$b()},s.tc=function(t){return tq(this,t)},s._b=function(t){return!!Cce(this,t,!1)},s.uc=function(t){var n,i,r;for(i=this.vc().Kc();i.Ob();)if(n=c(i.Pb(),42),r=n.dd(),le(t)===le(r)||t!=null&&$n(t,r))return!0;return!1},s.Fb=function(t){var n,i,r;if(t===this)return!0;if(!Q(t,83)||(r=c(t,83),this.gc()!=r.gc()))return!1;for(i=r.vc().Kc();i.Ob();)if(n=c(i.Pb(),42),!this.tc(n))return!1;return!0},s.xc=function(t){return Uo(Cce(this,t,!1))},s.Hb=function(){return Mre(this.vc())},s.dc=function(){return this.gc()==0},s.ec=function(){return new U3(this)},s.zc=function(t,n){throw V(new td("Put not supported on this map"))},s.Ac=function(t){G5(this,t)},s.Bc=function(t){return Uo(Cce(this,t,!0))},s.gc=function(){return this.vc().gc()},s.Ib=function(){return LVe(this)},s.Cc=function(){return new yh(this)},S(Gt,"AbstractMap",1967),y(1987,1967,x0),s.bc=function(){return new c9(this)},s.vc=function(){return QRe(this)},s.ec=function(){var t;return t=this.g,t||(this.g=this.bc())},s.Cc=function(){var t;return t=this.i,t||(this.i=new D8e(this))},S(qe,"Maps/ViewCachingAbstractMap",1987),y(389,1987,x0,c_),s.xc=function(t){return rIt(this,t)},s.Bc=function(t){return yjt(this,t)},s.$b=function(){this.d==this.e.c?this.e.$b():b8(new Ute(this))},s._b=function(t){return dHe(this.d,t)},s.Ec=function(){return new xCe(this)},s.Dc=function(){return this.Ec()},s.Fb=function(t){return this===t||$n(this.d,t)},s.Hb=function(){return fi(this.d)},s.ec=function(){return this.e.ec()},s.gc=function(){return this.d.gc()},s.Ib=function(){return Ro(this.d)},S(qe,"AbstractMapBasedMultimap/AsMap",389);var zl=pi(Ho,"Iterable");y(28,1,ww),s.Jc=function(t){Mr(this,t)},s.Lc=function(){return this.Oc()},s.Nc=function(){return new bt(this,0)},s.Oc=function(){return new ht(null,this.Nc())},s.Fc=function(t){throw V(new td("Add not supported on this collection"))},s.Gc=function(t){return qr(this,t)},s.$b=function(){Dne(this)},s.Hc=function(t){return nw(this,t,!1)},s.Ic=function(t){return bI(this,t)},s.dc=function(){return this.gc()==0},s.Mc=function(t){return nw(this,t,!0)},s.Pc=function(){return cne(this)},s.Qc=function(t){return RI(this,t)},s.Ib=function(){return C1(this)},S(Gt,"AbstractCollection",28);var ha=pi(Gt,"Set");y(Kl,28,ys),s.Nc=function(){return new bt(this,1)},s.Fb=function(t){return cze(this,t)},s.Hb=function(){return Mre(this)},S(Gt,"AbstractSet",Kl),y(1970,Kl,ys),S(qe,"Sets/ImprovedAbstractSet",1970),y(1971,1970,ys),s.$b=function(){this.Rc().$b()},s.Hc=function(t){return KHe(this,t)},s.dc=function(){return this.Rc().dc()},s.Mc=function(t){var n;return this.Hc(t)?(n=c(t,42),this.Rc().ec().Mc(n.cd())):!1},s.gc=function(){return this.Rc().gc()},S(qe,"Maps/EntrySet",1971),y(1097,1971,ys,xCe),s.Hc=function(t){return eoe(this.a.d.vc(),t)},s.Kc=function(){return new Ute(this.a)},s.Rc=function(){return this.a},s.Mc=function(t){var n;return eoe(this.a.d.vc(),t)?(n=c(t,42),zMt(this.a.e,n.cd()),!0):!1},s.Nc=function(){return jC(this.a.d.vc().Nc(),new LCe(this.a))},S(qe,"AbstractMapBasedMultimap/AsMap/AsMapEntries",1097),y(1098,1,{},LCe),s.Kb=function(t){return qFe(this.a,c(t,42))},S(qe,"AbstractMapBasedMultimap/AsMap/AsMapEntries/0methodref$wrapEntry$Type",1098),y(730,1,dr,Ute),s.Nb=function(t){Sr(this,t)},s.Pb=function(){var t;return t=c(this.b.Pb(),42),this.a=c(t.dd(),14),qFe(this.c,t)},s.Ob=function(){return this.b.Ob()},s.Qb=function(){Km(!!this.a),this.b.Qb(),this.c.e.d-=this.a.gc(),this.a.$b(),this.a=null},S(qe,"AbstractMapBasedMultimap/AsMap/AsMapIterator",730),y(532,1970,ys,c9),s.$b=function(){this.b.$b()},s.Hc=function(t){return this.b._b(t)},s.Jc=function(t){nn(t),this.b.wc(new ZCe(t))},s.dc=function(){return this.b.dc()},s.Kc=function(){return new kS(this.b.vc().Kc())},s.Mc=function(t){return this.b._b(t)?(this.b.Bc(t),!0):!1},s.gc=function(){return this.b.gc()},S(qe,"Maps/KeySet",532),y(318,532,ys,Dm),s.$b=function(){var t;b8((t=this.b.vc().Kc(),new vZ(this,t)))},s.Ic=function(t){return this.b.ec().Ic(t)},s.Fb=function(t){return this===t||$n(this.b.ec(),t)},s.Hb=function(){return fi(this.b.ec())},s.Kc=function(){var t;return t=this.b.vc().Kc(),new vZ(this,t)},s.Mc=function(t){var n,i;return i=0,n=c(this.b.Bc(t),14),n&&(i=n.gc(),n.$b(),this.a.d-=i),i>0},s.Nc=function(){return this.b.ec().Nc()},S(qe,"AbstractMapBasedMultimap/KeySet",318),y(731,1,dr,vZ),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.c.Ob()},s.Pb=function(){return this.a=c(this.c.Pb(),42),this.a.cd()},s.Qb=function(){var t;Km(!!this.a),t=c(this.a.dd(),14),this.c.Qb(),this.b.a.d-=t.gc(),t.$b(),this.a=null},S(qe,"AbstractMapBasedMultimap/KeySet/1",731),y(491,389,{83:1,161:1},EC),s.bc=function(){return this.Sc()},s.ec=function(){return this.Tc()},s.Sc=function(){return new QM(this.c,this.Uc())},s.Tc=function(){var t;return t=this.b,t||(this.b=this.Sc())},s.Uc=function(){return c(this.d,161)},S(qe,"AbstractMapBasedMultimap/SortedAsMap",491),y(542,491,_Je,n8),s.bc=function(){return new o_(this.a,c(c(this.d,161),171))},s.Sc=function(){return new o_(this.a,c(c(this.d,161),171))},s.ec=function(){var t;return t=this.b,c(t||(this.b=new o_(this.a,c(c(this.d,161),171))),271)},s.Tc=function(){var t;return t=this.b,c(t||(this.b=new o_(this.a,c(c(this.d,161),171))),271)},s.Uc=function(){return c(c(this.d,161),171)},S(qe,"AbstractMapBasedMultimap/NavigableAsMap",542),y(490,318,EJe,QM),s.Nc=function(){return this.b.ec().Nc()},S(qe,"AbstractMapBasedMultimap/SortedKeySet",490),y(388,490,Fue,o_),S(qe,"AbstractMapBasedMultimap/NavigableKeySet",388),y(541,28,ww,dO),s.Fc=function(t){var n,i;return Bs(this),i=this.d.dc(),n=this.d.Fc(t),n&&(++this.f.d,i&&CC(this)),n},s.Gc=function(t){var n,i,r;return t.dc()?!1:(r=(Bs(this),this.d.gc()),n=this.d.Gc(t),n&&(i=this.d.gc(),this.f.d+=i-r,r==0&&CC(this)),n)},s.$b=function(){var t;t=(Bs(this),this.d.gc()),t!=0&&(this.d.$b(),this.f.d-=t,y8(this))},s.Hc=function(t){return Bs(this),this.d.Hc(t)},s.Ic=function(t){return Bs(this),this.d.Ic(t)},s.Fb=function(t){return t===this?!0:(Bs(this),$n(this.d,t))},s.Hb=function(){return Bs(this),fi(this.d)},s.Kc=function(){return Bs(this),new kte(this)},s.Mc=function(t){var n;return Bs(this),n=this.d.Mc(t),n&&(--this.f.d,y8(this)),n},s.gc=function(){return p7e(this)},s.Nc=function(){return Bs(this),this.d.Nc()},s.Ib=function(){return Bs(this),Ro(this.d)},S(qe,"AbstractMapBasedMultimap/WrappedCollection",541);var Vu=pi(Gt,"List");y(728,541,{20:1,28:1,14:1,15:1},une),s.ad=function(t){$m(this,t)},s.Nc=function(){return Bs(this),this.d.Nc()},s.Vc=function(t,n){var i;Bs(this),i=this.d.dc(),c(this.d,15).Vc(t,n),++this.a.d,i&&CC(this)},s.Wc=function(t,n){var i,r,o;return n.dc()?!1:(o=(Bs(this),this.d.gc()),i=c(this.d,15).Wc(t,n),i&&(r=this.d.gc(),this.a.d+=r-o,o==0&&CC(this)),i)},s.Xb=function(t){return Bs(this),c(this.d,15).Xb(t)},s.Xc=function(t){return Bs(this),c(this.d,15).Xc(t)},s.Yc=function(){return Bs(this),new Y7e(this)},s.Zc=function(t){return Bs(this),new uLe(this,t)},s.$c=function(t){var n;return Bs(this),n=c(this.d,15).$c(t),--this.a.d,y8(this),n},s._c=function(t,n){return Bs(this),c(this.d,15)._c(t,n)},s.bd=function(t,n){return Bs(this),ZNe(this.a,this.e,c(this.d,15).bd(t,n),this.b?this.b:this)},S(qe,"AbstractMapBasedMultimap/WrappedList",728),y(1096,728,{20:1,28:1,14:1,15:1,54:1},BDe),S(qe,"AbstractMapBasedMultimap/RandomAccessWrappedList",1096),y(620,1,dr,kte),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return I_(this),this.b.Ob()},s.Pb=function(){return I_(this),this.b.Pb()},s.Qb=function(){EDe(this)},S(qe,"AbstractMapBasedMultimap/WrappedCollection/WrappedIterator",620),y(729,620,Wf,Y7e,uLe),s.Qb=function(){EDe(this)},s.Rb=function(t){var n;n=p7e(this.a)==0,(I_(this),c(this.b,125)).Rb(t),++this.a.a.d,n&&CC(this.a)},s.Sb=function(){return(I_(this),c(this.b,125)).Sb()},s.Tb=function(){return(I_(this),c(this.b,125)).Tb()},s.Ub=function(){return(I_(this),c(this.b,125)).Ub()},s.Vb=function(){return(I_(this),c(this.b,125)).Vb()},s.Wb=function(t){(I_(this),c(this.b,125)).Wb(t)},S(qe,"AbstractMapBasedMultimap/WrappedList/WrappedListIterator",729),y(727,541,EJe,ete),s.Nc=function(){return Bs(this),this.d.Nc()},S(qe,"AbstractMapBasedMultimap/WrappedSortedSet",727),y(1095,727,Fue,K7e),S(qe,"AbstractMapBasedMultimap/WrappedNavigableSet",1095),y(1094,541,ys,ZDe),s.Nc=function(){return Bs(this),this.d.Nc()},S(qe,"AbstractMapBasedMultimap/WrappedSet",1094),y(1103,1,{},_),s.Kb=function(t){return XMt(c(t,42))},S(qe,"AbstractMapBasedMultimap/lambda$1$Type",1103),y(1102,1,{},NCe),s.Kb=function(t){return new Vb(this.a,t)},S(qe,"AbstractMapBasedMultimap/lambda$2$Type",1102);var fb=pi(Gt,"Map/Entry");y(345,1,hD),s.Fb=function(t){var n;return Q(t,42)?(n=c(t,42),df(this.cd(),n.cd())&&df(this.dd(),n.dd())):!1},s.Hb=function(){var t,n;return t=this.cd(),n=this.dd(),(t==null?0:fi(t))^(n==null?0:fi(n))},s.ed=function(t){throw V(new sn)},s.Ib=function(){return this.cd()+"="+this.dd()},S(qe,SJe,345),y(1988,28,ww),s.$b=function(){this.fd().$b()},s.Hc=function(t){var n;return Q(t,42)?(n=c(t,42),APt(this.fd(),n.cd(),n.dd())):!1},s.Mc=function(t){var n;return Q(t,42)?(n=c(t,42),kNe(this.fd(),n.cd(),n.dd())):!1},s.gc=function(){return this.fd().d},S(qe,"Multimaps/Entries",1988),y(733,1988,ww,YJ),s.Kc=function(){return this.a.kc()},s.fd=function(){return this.a},s.Nc=function(){return this.a.lc()},S(qe,"AbstractMultimap/Entries",733),y(734,733,ys,YQ),s.Nc=function(){return this.a.lc()},s.Fb=function(t){return zce(this,t)},s.Hb=function(){return RKe(this)},S(qe,"AbstractMultimap/EntrySet",734),y(735,28,ww,XJ),s.$b=function(){this.a.$b()},s.Hc=function(t){return gjt(this.a,t)},s.Kc=function(){return this.a.nc()},s.gc=function(){return this.a.d},s.Nc=function(){return this.a.oc()},S(qe,"AbstractMultimap/Values",735),y(1989,28,{835:1,20:1,28:1,14:1}),s.Jc=function(t){nn(t),Rm(this).Jc(new QCe(t))},s.Nc=function(){var t;return t=Rm(this).Nc(),mq(t,new ce,64|t.qd()&1296,this.a.d)},s.Fc=function(t){return rZ(),!0},s.Gc=function(t){return nn(this),nn(t),Q(t,543)?xPt(c(t,835)):!t.dc()&&F$(this,t.Kc())},s.Hc=function(t){var n;return n=c(tw(n2(this.a),t),14),(n?n.gc():0)>0},s.Fb=function(t){return Txt(this,t)},s.Hb=function(){return fi(Rm(this))},s.dc=function(){return Rm(this).dc()},s.Mc=function(t){return ZGe(this,t,1)>0},s.Ib=function(){return Ro(Rm(this))},S(qe,"AbstractMultiset",1989),y(1991,1970,ys),s.$b=function(){kO(this.a.a)},s.Hc=function(t){var n,i;return Q(t,492)?(i=c(t,416),c(i.a.dd(),14).gc()<=0?!1:(n=aNe(this.a,i.a.cd()),n==c(i.a.dd(),14).gc())):!1},s.Mc=function(t){var n,i,r,o;return Q(t,492)&&(i=c(t,416),n=i.a.cd(),r=c(i.a.dd(),14).gc(),r!=0)?(o=this.a,pRt(o,n,r)):!1},S(qe,"Multisets/EntrySet",1991),y(1109,1991,ys,FCe),s.Kc=function(){return new h9e(QRe(n2(this.a.a)).Kc())},s.gc=function(){return n2(this.a.a).gc()},S(qe,"AbstractMultiset/EntrySet",1109),y(619,726,tb),s.hc=function(){return this.gd()},s.jc=function(){return this.hd()},s.cc=function(t){return this.jd(t)},s.fc=function(t){return this.kd(t)},s.Zb=function(){var t;return t=this.f,t||(this.f=this.ac())},s.hd=function(){return st(),st(),Tk},s.Fb=function(t){return fK(this,t)},s.jd=function(t){return c(Vn(this,t),21)},s.kd=function(t){return c(PI(this,t),21)},s.mc=function(t){return st(),new t_(c(t,21))},s.pc=function(t,n){return new ZDe(this,t,c(n,21))},S(qe,"AbstractSetMultimap",619),y(1657,619,tb),s.hc=function(){return new o1(this.b)},s.gd=function(){return new o1(this.b)},s.jc=function(){return Sne(new o1(this.b))},s.hd=function(){return Sne(new o1(this.b))},s.cc=function(t){return c(c(Vn(this,t),21),84)},s.jd=function(t){return c(c(Vn(this,t),21),84)},s.fc=function(t){return c(c(PI(this,t),21),84)},s.kd=function(t){return c(c(PI(this,t),21),84)},s.mc=function(t){return Q(t,271)?Sne(c(t,271)):(st(),new kee(c(t,84)))},s.Zb=function(){var t;return t=this.f,t||(this.f=Q(this.c,171)?new n8(this,c(this.c,171)):Q(this.c,161)?new EC(this,c(this.c,161)):new c_(this,this.c))},s.pc=function(t,n){return Q(n,271)?new K7e(this,t,c(n,271)):new ete(this,t,c(n,84))},S(qe,"AbstractSortedSetMultimap",1657),y(1658,1657,tb),s.Zb=function(){var t;return t=this.f,c(c(t||(this.f=Q(this.c,171)?new n8(this,c(this.c,171)):Q(this.c,161)?new EC(this,c(this.c,161)):new c_(this,this.c)),161),171)},s.ec=function(){var t;return t=this.i,c(c(t||(this.i=Q(this.c,171)?new o_(this,c(this.c,171)):Q(this.c,161)?new QM(this,c(this.c,161)):new Dm(this,this.c)),84),271)},s.bc=function(){return Q(this.c,171)?new o_(this,c(this.c,171)):Q(this.c,161)?new QM(this,c(this.c,161)):new Dm(this,this.c)},S(qe,"AbstractSortedKeySortedSetMultimap",1658),y(2010,1,{1947:1}),s.Fb=function(t){return o7t(this,t)},s.Hb=function(){var t;return Mre((t=this.g,t||(this.g=new PN(this))))},s.Ib=function(){var t;return LVe((t=this.f,t||(this.f=new Mee(this))))},S(qe,"AbstractTable",2010),y(665,Kl,ys,PN),s.$b=function(){E9e()},s.Hc=function(t){var n,i;return Q(t,468)?(n=c(t,682),i=c(tw(_xe(this.a),u1(n.c.e,n.b)),83),!!i&&eoe(i.vc(),new Vb(u1(n.c.c,n.a),a2(n.c,n.b,n.a)))):!1},s.Kc=function(){return H5t(this.a)},s.Mc=function(t){var n,i;return Q(t,468)?(n=c(t,682),i=c(tw(_xe(this.a),u1(n.c.e,n.b)),83),!!i&&Kjt(i.vc(),new Vb(u1(n.c.c,n.a),a2(n.c,n.b,n.a)))):!1},s.gc=function(){return kRe(this.a)},s.Nc=function(){return FPt(this.a)},S(qe,"AbstractTable/CellSet",665),y(1928,28,ww,BCe),s.$b=function(){E9e()},s.Hc=function(t){return X7t(this.a,t)},s.Kc=function(){return z5t(this.a)},s.gc=function(){return kRe(this.a)},s.Nc=function(){return LNe(this.a)},S(qe,"AbstractTable/Values",1928),y(1632,1631,tb),S(qe,"ArrayListMultimapGwtSerializationDependencies",1632),y(513,1632,tb,YN,Wne),s.hc=function(){return new Dc(this.a)},s.a=0,S(qe,"ArrayListMultimap",513),y(664,2010,{664:1,1947:1,3:1},aUe),S(qe,"ArrayTable",664),y(1924,386,DE,pDe),s.Xb=function(t){return new jre(this.a,t)},S(qe,"ArrayTable/1",1924),y(1925,1,{},DCe),s.ld=function(t){return new jre(this.a,t)},S(qe,"ArrayTable/1methodref$getCell$Type",1925),y(2011,1,{682:1}),s.Fb=function(t){var n;return t===this?!0:Q(t,468)?(n=c(t,682),df(u1(this.c.e,this.b),u1(n.c.e,n.b))&&df(u1(this.c.c,this.a),u1(n.c.c,n.a))&&df(a2(this.c,this.b,this.a),a2(n.c,n.b,n.a))):!1},s.Hb=function(){return ZO(U(G(xt,1),xe,1,5,[u1(this.c.e,this.b),u1(this.c.c,this.a),a2(this.c,this.b,this.a)]))},s.Ib=function(){return"("+u1(this.c.e,this.b)+","+u1(this.c.c,this.a)+")="+a2(this.c,this.b,this.a)},S(qe,"Tables/AbstractCell",2011),y(468,2011,{468:1,682:1},jre),s.a=0,s.b=0,s.d=0,S(qe,"ArrayTable/2",468),y(1927,1,{},kCe),s.ld=function(t){return UBe(this.a,t)},S(qe,"ArrayTable/2methodref$getValue$Type",1927),y(1926,386,DE,wDe),s.Xb=function(t){return UBe(this.a,t)},S(qe,"ArrayTable/3",1926),y(1979,1967,x0),s.$b=function(){b8(this.kc())},s.vc=function(){return new eIe(this)},s.lc=function(){return new Yxe(this.kc(),this.gc())},S(qe,"Maps/IteratorBasedAbstractMap",1979),y(828,1979,x0),s.$b=function(){throw V(new sn)},s._b=function(t){return K9e(this.c,t)},s.kc=function(){return new mDe(this,this.c.b.c.gc())},s.lc=function(){return gB(this.c.b.c.gc(),16,new RCe(this))},s.xc=function(t){var n;return n=c(v5(this.c,t),19),n?this.nd(n.a):null},s.dc=function(){return this.c.b.c.dc()},s.ec=function(){return EB(this.c)},s.zc=function(t,n){var i;if(i=c(v5(this.c,t),19),!i)throw V(new St(this.md()+" "+t+" not in "+EB(this.c)));return this.od(i.a,n)},s.Bc=function(t){throw V(new sn)},s.gc=function(){return this.c.b.c.gc()},S(qe,"ArrayTable/ArrayMap",828),y(1923,1,{},RCe),s.ld=function(t){return Sxe(this.a,t)},S(qe,"ArrayTable/ArrayMap/0methodref$getEntry$Type",1923),y(1921,345,hD,_8e),s.cd=function(){return o3t(this.a,this.b)},s.dd=function(){return this.a.nd(this.b)},s.ed=function(t){return this.a.od(this.b,t)},s.b=0,S(qe,"ArrayTable/ArrayMap/1",1921),y(1922,386,DE,mDe),s.Xb=function(t){return Sxe(this.a,t)},S(qe,"ArrayTable/ArrayMap/2",1922),y(1920,828,x0,lxe),s.md=function(){return"Column"},s.nd=function(t){return a2(this.b,this.a,t)},s.od=function(t,n){return vqe(this.b,this.a,t,n)},s.a=0,S(qe,"ArrayTable/Row",1920),y(829,828,x0,Mee),s.nd=function(t){return new lxe(this.a,t)},s.zc=function(t,n){return c(n,83),qvt()},s.od=function(t,n){return c(n,83),Hvt()},s.md=function(){return"Row"},S(qe,"ArrayTable/RowMap",829),y(1120,1,oa,E8e),s.qd=function(){return this.a.qd()&-262},s.rd=function(){return this.a.rd()},s.Nb=function(t){this.a.Nb(new w8e(t,this.b))},s.sd=function(t){return this.a.sd(new p8e(t,this.b))},S(qe,"CollectSpliterators/1",1120),y(1121,1,Rt,p8e),s.td=function(t){this.a.td(this.b.Kb(t))},S(qe,"CollectSpliterators/1/lambda$0$Type",1121),y(1122,1,Rt,w8e),s.td=function(t){this.a.td(this.b.Kb(t))},S(qe,"CollectSpliterators/1/lambda$1$Type",1122),y(1123,1,oa,UNe),s.qd=function(){return this.a},s.rd=function(){return this.d&&(this.b=J7e(this.b,this.d.rd())),J7e(this.b,0)},s.Nb=function(t){this.d&&(this.d.Nb(t),this.d=null),this.c.Nb(new b8e(this.e,t)),this.b=0},s.sd=function(t){for(;;){if(this.d&&this.d.sd(t))return s5(this.b,dD)&&(this.b=P1(this.b,1)),!0;if(this.d=null,!this.c.sd(new m8e(this,this.e)))return!1}},s.a=0,s.b=0,S(qe,"CollectSpliterators/1FlatMapSpliterator",1123),y(1124,1,Rt,m8e),s.td=function(t){u_t(this.a,this.b,t)},S(qe,"CollectSpliterators/1FlatMapSpliterator/lambda$0$Type",1124),y(1125,1,Rt,b8e),s.td=function(t){G2t(this.b,this.a,t)},S(qe,"CollectSpliterators/1FlatMapSpliterator/lambda$1$Type",1125),y(1117,1,oa,jke),s.qd=function(){return 16464|this.b},s.rd=function(){return this.a.rd()},s.Nb=function(t){this.a.xe(new y8e(t,this.c))},s.sd=function(t){return this.a.ye(new v8e(t,this.c))},s.b=0,S(qe,"CollectSpliterators/1WithCharacteristics",1117),y(1118,1,hT,v8e),s.ud=function(t){this.a.td(this.b.ld(t))},S(qe,"CollectSpliterators/1WithCharacteristics/lambda$0$Type",1118),y(1119,1,hT,y8e),s.ud=function(t){this.a.td(this.b.ld(t))},S(qe,"CollectSpliterators/1WithCharacteristics/lambda$1$Type",1119),y(245,1,SH),s.wd=function(t){return this.vd(c(t,245))},s.vd=function(t){var n;return t==($N(),rG)?1:t==(KN(),iG)?-1:(n=(h8(),fI(this.a,t.a)),n!=0?n:Q(this,519)==Q(t,519)?0:Q(this,519)?1:-1)},s.zd=function(){return this.a},s.Fb=function(t){return Doe(this,t)},S(qe,"Cut",245),y(1761,245,SH,M9e),s.vd=function(t){return t==this?0:1},s.xd=function(t){throw V(new OQ)},s.yd=function(t){t.a+="+∞)"},s.zd=function(){throw V(new Ao(MJe))},s.Hb=function(){return Nf(),Koe(this)},s.Ad=function(t){return!1},s.Ib=function(){return"+∞"};var iG;S(qe,"Cut/AboveAll",1761),y(519,245,{245:1,519:1,3:1,35:1},SDe),s.xd=function(t){nc((t.a+="(",t),this.a)},s.yd=function(t){Dg(nc(t,this.a),93)},s.Hb=function(){return~fi(this.a)},s.Ad=function(t){return h8(),fI(this.a,t)<0},s.Ib=function(){return"/"+this.a+"\\"},S(qe,"Cut/AboveValue",519),y(1760,245,SH,C9e),s.vd=function(t){return t==this?0:-1},s.xd=function(t){t.a+="(-∞"},s.yd=function(t){throw V(new OQ)},s.zd=function(){throw V(new Ao(MJe))},s.Hb=function(){return Nf(),Koe(this)},s.Ad=function(t){return!0},s.Ib=function(){return"-∞"};var rG;S(qe,"Cut/BelowAll",1760),y(1762,245,SH,PDe),s.xd=function(t){nc((t.a+="[",t),this.a)},s.yd=function(t){Dg(nc(t,this.a),41)},s.Hb=function(){return fi(this.a)},s.Ad=function(t){return h8(),fI(this.a,t)<=0},s.Ib=function(){return"\\"+this.a+"/"},S(qe,"Cut/BelowValue",1762),y(537,1,Yf),s.Jc=function(t){Mr(this,t)},s.Ib=function(){return wAt(c(B8(this,"use Optional.orNull() instead of Optional.or(null)"),20).Kc())},S(qe,"FluentIterable",537),y(433,537,Yf,l5),s.Kc=function(){return new Kt(Ht(this.a.Kc(),new j))},S(qe,"FluentIterable/2",433),y(1046,537,Yf,T7e),s.Kc=function(){return d1(this)},S(qe,"FluentIterable/3",1046),y(708,386,DE,Cee),s.Xb=function(t){return this.a[t].Kc()},S(qe,"FluentIterable/3/1",708),y(1972,1,{}),s.Ib=function(){return Ro(this.Bd().b)},S(qe,"ForwardingObject",1972),y(1973,1972,CJe),s.Bd=function(){return this.Cd()},s.Jc=function(t){Mr(this,t)},s.Lc=function(){return this.Oc()},s.Nc=function(){return new bt(this,0)},s.Oc=function(){return new ht(null,this.Nc())},s.Fc=function(t){return this.Cd(),V9e()},s.Gc=function(t){return this.Cd(),G9e()},s.$b=function(){this.Cd(),U9e()},s.Hc=function(t){return this.Cd().Hc(t)},s.Ic=function(t){return this.Cd().Ic(t)},s.dc=function(){return this.Cd().b.dc()},s.Kc=function(){return this.Cd().Kc()},s.Mc=function(t){return this.Cd(),W9e()},s.gc=function(){return this.Cd().b.gc()},s.Pc=function(){return this.Cd().Pc()},s.Qc=function(t){return this.Cd().Qc(t)},S(qe,"ForwardingCollection",1973),y(1980,28,Bue),s.Kc=function(){return this.Ed()},s.Fc=function(t){throw V(new sn)},s.Gc=function(t){throw V(new sn)},s.$b=function(){throw V(new sn)},s.Hc=function(t){return t!=null&&nw(this,t,!1)},s.Dd=function(){switch(this.gc()){case 0:return Hp(),Hp(),oG;case 1:return Hp(),new bB(nn(this.Ed().Pb()));default:return new fxe(this,this.Pc())}},s.Mc=function(t){throw V(new sn)},S(qe,"ImmutableCollection",1980),y(712,1980,Bue,jQ),s.Kc=function(){return l2(this.a.Kc())},s.Hc=function(t){return t!=null&&this.a.Hc(t)},s.Ic=function(t){return this.a.Ic(t)},s.dc=function(){return this.a.dc()},s.Ed=function(){return l2(this.a.Kc())},s.gc=function(){return this.a.gc()},s.Pc=function(){return this.a.Pc()},s.Qc=function(t){return this.a.Qc(t)},s.Ib=function(){return Ro(this.a)},S(qe,"ForwardingImmutableCollection",712),y(152,1980,T6),s.Kc=function(){return this.Ed()},s.Yc=function(){return this.Fd(0)},s.Zc=function(t){return this.Fd(t)},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.bd=function(t,n){return this.Gd(t,n)},s.Vc=function(t,n){throw V(new sn)},s.Wc=function(t,n){throw V(new sn)},s.Fb=function(t){return hxt(this,t)},s.Hb=function(){return STt(this)},s.Xc=function(t){return t==null?-1:L8t(this,t)},s.Ed=function(){return this.Fd(0)},s.Fd=function(t){return Kee(this,t)},s.$c=function(t){throw V(new sn)},s._c=function(t,n){throw V(new sn)},s.Gd=function(t,n){var i;return n7((i=new k8e(this),new Hf(i,t,n)))};var oG;S(qe,"ImmutableList",152),y(2006,152,T6),s.Kc=function(){return l2(this.Hd().Kc())},s.bd=function(t,n){return n7(this.Hd().bd(t,n))},s.Hc=function(t){return t!=null&&this.Hd().Hc(t)},s.Ic=function(t){return this.Hd().Ic(t)},s.Fb=function(t){return $n(this.Hd(),t)},s.Xb=function(t){return u1(this,t)},s.Hb=function(){return fi(this.Hd())},s.Xc=function(t){return this.Hd().Xc(t)},s.dc=function(){return this.Hd().dc()},s.Ed=function(){return l2(this.Hd().Kc())},s.gc=function(){return this.Hd().gc()},s.Gd=function(t,n){return n7(this.Hd().bd(t,n))},s.Pc=function(){return this.Hd().Qc(oe(xt,xe,1,this.Hd().gc(),5,1))},s.Qc=function(t){return this.Hd().Qc(t)},s.Ib=function(){return Ro(this.Hd())},S(qe,"ForwardingImmutableList",2006),y(714,1,kE),s.vc=function(){return e0(this)},s.wc=function(t){U5(this,t)},s.ec=function(){return EB(this)},s.yc=function(t,n,i){return TK(this,t,n,i)},s.Cc=function(){return this.Ld()},s.$b=function(){throw V(new sn)},s._b=function(t){return this.xc(t)!=null},s.uc=function(t){return this.Ld().Hc(t)},s.Jd=function(){return new pAe(this)},s.Kd=function(){return new wAe(this)},s.Fb=function(t){return bjt(this,t)},s.Hb=function(){return e0(this).Hb()},s.dc=function(){return this.gc()==0},s.zc=function(t,n){return zvt()},s.Bc=function(t){throw V(new sn)},s.Ib=function(){return UDt(this)},s.Ld=function(){return this.e?this.e:this.e=this.Kd()},s.c=null,s.d=null,s.e=null;var qtt;S(qe,"ImmutableMap",714),y(715,714,kE),s._b=function(t){return K9e(this,t)},s.uc=function(t){return N8e(this.b,t)},s.Id=function(){return hHe(new $Ce(this))},s.Jd=function(){return hHe(Vxe(this.b))},s.Kd=function(){return hf(),new jQ(zxe(this.b))},s.Fb=function(t){return F8e(this.b,t)},s.xc=function(t){return v5(this,t)},s.Hb=function(){return fi(this.b.c)},s.dc=function(){return this.b.c.dc()},s.gc=function(){return this.b.c.gc()},s.Ib=function(){return Ro(this.b.c)},S(qe,"ForwardingImmutableMap",715),y(1974,1973,PH),s.Bd=function(){return this.Md()},s.Cd=function(){return this.Md()},s.Nc=function(){return new bt(this,1)},s.Fb=function(t){return t===this||this.Md().Fb(t)},s.Hb=function(){return this.Md().Hb()},S(qe,"ForwardingSet",1974),y(1069,1974,PH,$Ce),s.Bd=function(){return M_(this.a.b)},s.Cd=function(){return M_(this.a.b)},s.Hc=function(t){if(Q(t,42)&&c(t,42).cd()==null)return!1;try{return L8e(M_(this.a.b),t)}catch(n){if(n=gi(n),Q(n,205))return!1;throw V(n)}},s.Md=function(){return M_(this.a.b)},s.Qc=function(t){var n;return n=CLe(M_(this.a.b),t),M_(this.a.b).b.gc()=0?"+":"")+(i/60|0),n=B9(g.Math.abs(i)%60),(GVe(),rnt)[this.q.getDay()]+" "+ont[this.q.getMonth()]+" "+B9(this.q.getDate())+" "+B9(this.q.getHours())+":"+B9(this.q.getMinutes())+":"+B9(this.q.getSeconds())+" GMT"+t+n+" "+this.q.getFullYear()};var Mk=S(Gt,"Date",199);y(1915,199,xJe,vVe),s.a=!1,s.b=0,s.c=0,s.d=0,s.e=0,s.f=0,s.g=!1,s.i=0,s.j=0,s.k=0,s.n=0,s.o=0,s.p=0,S("com.google.gwt.i18n.shared.impl","DateRecord",1915),y(1966,1,{}),s.fe=function(){return null},s.ge=function(){return null},s.he=function(){return null},s.ie=function(){return null},s.je=function(){return null},S(I2,"JSONValue",1966),y(216,1966,{216:1},Eg,QJ),s.Fb=function(t){return Q(t,216)?Jne(this.a,c(t,216).a):!1},s.ee=function(){return hvt},s.Hb=function(){return Fne(this.a)},s.fe=function(){return this},s.Ib=function(){var t,n,i;for(i=new lu("["),n=0,t=this.a.length;n0&&(i.a+=","),nc(i,Yp(this,n));return i.a+="]",i.a},S(I2,"JSONArray",216),y(483,1966,{483:1},ZJ),s.ee=function(){return dvt},s.ge=function(){return this},s.Ib=function(){return Pt(),""+this.a},s.a=!1;var Ytt,Xtt;S(I2,"JSONBoolean",483),y(985,60,$h,d9e),S(I2,"JSONException",985),y(1023,1966,{},re),s.ee=function(){return mvt},s.Ib=function(){return rs};var Jtt;S(I2,"JSONNull",1023),y(258,1966,{258:1},NA),s.Fb=function(t){return Q(t,258)?this.a==c(t,258).a:!1},s.ee=function(){return gvt},s.Hb=function(){return f_(this.a)},s.he=function(){return this},s.Ib=function(){return this.a+""},s.a=0,S(I2,"JSONNumber",258),y(183,1966,{183:1},xy,BM),s.Fb=function(t){return Q(t,183)?Jne(this.a,c(t,183).a):!1},s.ee=function(){return bvt},s.Hb=function(){return Fne(this.a)},s.ie=function(){return this},s.Ib=function(){var t,n,i,r,o,u,a;for(a=new lu("{"),t=!0,u=J$(this,oe(Re,we,2,0,6,1)),i=u,r=0,o=i.length;r=0?":"+this.c:"")+")"},s.c=0;var mhe=S(Ho,"StackTraceElement",310);Ktt={3:1,475:1,35:1,2:1};var Re=S(Ho,$ue,2);y(107,418,{475:1},nd,FS,ea),S(Ho,"StringBuffer",107),y(100,418,{475:1},n1,_m,lu),S(Ho,"StringBuilder",100),y(687,73,UH,cZ),S(Ho,"StringIndexOutOfBoundsException",687),y(2043,1,{});var vhe;y(844,1,{},Gn),s.Kb=function(t){return c(t,78).e},S(Ho,"Throwable/lambda$0$Type",844),y(41,60,{3:1,102:1,60:1,78:1,41:1},sn,td),S(Ho,"UnsupportedOperationException",41),y(240,236,{3:1,35:1,236:1,240:1},cI,bZ),s.wd=function(t){return CYe(this,c(t,240))},s.ke=function(){return aw(uXe(this))},s.Fb=function(t){var n;return this===t?!0:Q(t,240)?(n=c(t,240),this.e==n.e&&CYe(this,n)==0):!1},s.Hb=function(){var t;return this.b!=0?this.b:this.a<54?(t=ns(this.f),this.b=tn(Xi(t,-1)),this.b=33*this.b+tn(Xi(h1(t,32),-1)),this.b=17*this.b+xi(this.e),this.b):(this.b=17*cHe(this.c)+xi(this.e),this.b)},s.Ib=function(){return uXe(this)},s.a=0,s.b=0,s.d=0,s.e=0,s.f=0;var tnt,db,yhe,_he,Ehe,She,Phe,Mhe,dG=S("java.math","BigDecimal",240);y(91,236,{3:1,35:1,236:1,91:1},$oe,ld,km,Ece,aze,l1),s.wd=function(t){return rze(this,c(t,91))},s.ke=function(){return aw(yH(this,0))},s.Fb=function(t){return voe(this,t)},s.Hb=function(){return cHe(this)},s.Ib=function(){return yH(this,0)},s.b=-2,s.c=0,s.d=0,s.e=0;var gG,Ck,Che,bG,Ik,t4,Ev=S("java.math","BigInteger",91),nnt,int,$2,uP;y(488,1967,x0),s.$b=function(){Is(this)},s._b=function(t){return tu(this,t)},s.uc=function(t){return zqe(this,t,this.g)||zqe(this,t,this.f)},s.vc=function(){return new Pg(this)},s.xc=function(t){return Bt(this,t)},s.zc=function(t,n){return Kn(this,t,n)},s.Bc=function(t){return u2(this,t)},s.gc=function(){return KS(this)},S(Gt,"AbstractHashMap",488),y(261,Kl,ys,Pg),s.$b=function(){this.a.$b()},s.Hc=function(t){return qNe(this,t)},s.Kc=function(){return new Gg(this.a)},s.Mc=function(t){var n;return qNe(this,t)?(n=c(t,42).cd(),this.a.Bc(n),!0):!1},s.gc=function(){return this.a.gc()},S(Gt,"AbstractHashMap/EntrySet",261),y(262,1,dr,Gg),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return g0(this)},s.Ob=function(){return this.b},s.Qb=function(){BBe(this)},s.b=!1,S(Gt,"AbstractHashMap/EntrySetIterator",262),y(417,1,dr,CS),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return iC(this)},s.Pb=function(){return lLe(this)},s.Qb=function(){nu(this)},s.b=0,s.c=-1,S(Gt,"AbstractList/IteratorImpl",417),y(96,417,Wf,_r),s.Qb=function(){nu(this)},s.Rb=function(t){Np(this,t)},s.Sb=function(){return this.b>0},s.Tb=function(){return this.b},s.Ub=function(){return Lt(this.b>0),this.a.Xb(this.c=--this.b)},s.Vb=function(){return this.b-1},s.Wb=function(t){Rp(this.c!=-1),this.a._c(this.c,t)},S(Gt,"AbstractList/ListIteratorImpl",96),y(219,52,xE,Hf),s.Vc=function(t,n){Vp(t,this.b),this.c.Vc(this.a+t,n),++this.b},s.Xb=function(t){return pt(t,this.b),this.c.Xb(this.a+t)},s.$c=function(t){var n;return pt(t,this.b),n=this.c.$c(this.a+t),--this.b,n},s._c=function(t,n){return pt(t,this.b),this.c._c(this.a+t,n)},s.gc=function(){return this.b},s.a=0,s.b=0,S(Gt,"AbstractList/SubList",219),y(384,Kl,ys,U3),s.$b=function(){this.a.$b()},s.Hc=function(t){return this.a._b(t)},s.Kc=function(){var t;return t=this.a.vc().Kc(),new oQ(t)},s.Mc=function(t){return this.a._b(t)?(this.a.Bc(t),!0):!1},s.gc=function(){return this.a.gc()},S(Gt,"AbstractMap/1",384),y(691,1,dr,oQ),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.a.Ob()},s.Pb=function(){var t;return t=c(this.a.Pb(),42),t.cd()},s.Qb=function(){this.a.Qb()},S(Gt,"AbstractMap/1/1",691),y(226,28,ww,yh),s.$b=function(){this.a.$b()},s.Hc=function(t){return this.a.uc(t)},s.Kc=function(){var t;return t=this.a.vc().Kc(),new Cp(t)},s.gc=function(){return this.a.gc()},S(Gt,"AbstractMap/2",226),y(294,1,dr,Cp),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.a.Ob()},s.Pb=function(){var t;return t=c(this.a.Pb(),42),t.dd()},s.Qb=function(){this.a.Qb()},S(Gt,"AbstractMap/2/1",294),y(484,1,{484:1,42:1}),s.Fb=function(t){var n;return Q(t,42)?(n=c(t,42),wc(this.d,n.cd())&&wc(this.e,n.dd())):!1},s.cd=function(){return this.d},s.dd=function(){return this.e},s.Hb=function(){return jm(this.d)^jm(this.e)},s.ed=function(t){return ste(this,t)},s.Ib=function(){return this.d+"="+this.e},S(Gt,"AbstractMap/AbstractEntry",484),y(383,484,{484:1,383:1,42:1},y9),S(Gt,"AbstractMap/SimpleEntry",383),y(1984,1,JH),s.Fb=function(t){var n;return Q(t,42)?(n=c(t,42),wc(this.cd(),n.cd())&&wc(this.dd(),n.dd())):!1},s.Hb=function(){return jm(this.cd())^jm(this.dd())},s.Ib=function(){return this.cd()+"="+this.dd()},S(Gt,SJe,1984),y(1992,1967,_Je),s.tc=function(t){return XFe(this,t)},s._b=function(t){return iB(this,t)},s.vc=function(){return new lQ(this)},s.xc=function(t){var n;return n=t,Uo($re(this,n))},s.ec=function(){return new qM(this)},S(Gt,"AbstractNavigableMap",1992),y(739,Kl,ys,lQ),s.Hc=function(t){return Q(t,42)&&XFe(this.b,c(t,42))},s.Kc=function(){return new m5(this.b)},s.Mc=function(t){var n;return Q(t,42)?(n=c(t,42),NBe(this.b,n)):!1},s.gc=function(){return this.b.c},S(Gt,"AbstractNavigableMap/EntrySet",739),y(493,Kl,Fue,qM),s.Nc=function(){return new m9(this)},s.$b=function(){RS(this.a)},s.Hc=function(t){return iB(this.a,t)},s.Kc=function(){var t;return t=new m5(new b5(this.a).b),new HM(t)},s.Mc=function(t){return iB(this.a,t)?(D5(this.a,t),!0):!1},s.gc=function(){return this.a.c},S(Gt,"AbstractNavigableMap/NavigableKeySet",493),y(494,1,dr,HM),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return iC(this.a.a)},s.Pb=function(){var t;return t=e8(this.a),t.cd()},s.Qb=function(){$ke(this.a)},S(Gt,"AbstractNavigableMap/NavigableKeySet/1",494),y(2004,28,ww),s.Fc=function(t){return R_(wE(this,t)),!0},s.Gc=function(t){return yt(t),u8(t!=this,"Can't add a queue to itself"),qr(this,t)},s.$b=function(){for(;B$(this)!=null;);},S(Gt,"AbstractQueue",2004),y(302,28,{4:1,20:1,28:1,14:1},vm,dNe),s.Fc=function(t){return oie(this,t),!0},s.$b=function(){fie(this)},s.Hc=function(t){return dqe(new O5(this),t)},s.dc=function(){return xS(this)},s.Kc=function(){return new O5(this)},s.Mc=function(t){return T6t(new O5(this),t)},s.gc=function(){return this.c-this.b&this.a.length-1},s.Nc=function(){return new bt(this,272)},s.Qc=function(t){var n;return n=this.c-this.b&this.a.length-1,t.lengthn&&vi(t,n,null),t},s.b=0,s.c=0,S(Gt,"ArrayDeque",302),y(446,1,dr,O5),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.a!=this.b},s.Pb=function(){return t7(this)},s.Qb=function(){fKe(this)},s.a=0,s.b=0,s.c=-1,S(Gt,"ArrayDeque/IteratorImpl",446),y(12,52,FJe,Se,Dc,ps),s.Vc=function(t,n){Bp(this,t,n)},s.Fc=function(t){return Ee(this,t)},s.Wc=function(t,n){return Gre(this,t,n)},s.Gc=function(t){return Hi(this,t)},s.$b=function(){this.c=oe(xt,xe,1,0,5,1)},s.Hc=function(t){return Do(this,t,0)!=-1},s.Jc=function(t){Zc(this,t)},s.Xb=function(t){return Ne(this,t)},s.Xc=function(t){return Do(this,t,0)},s.dc=function(){return this.c.length==0},s.Kc=function(){return new q(this)},s.$c=function(t){return ad(this,t)},s.Mc=function(t){return Jc(this,t)},s.Ud=function(t,n){hNe(this,t,n)},s._c=function(t,n){return Lu(this,t,n)},s.gc=function(){return this.c.length},s.ad=function(t){cr(this,t)},s.Pc=function(){return GF(this)},s.Qc=function(t){return Bl(this,t)};var hzt=S(Gt,"ArrayList",12);y(7,1,dr,q),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return Fo(this)},s.Pb=function(){return K(this)},s.Qb=function(){I5(this)},s.a=0,s.b=-1,S(Gt,"ArrayList/1",7),y(2013,g.Function,{},ve),s.te=function(t,n){return zi(t,n)},y(154,52,BJe,Js),s.Hc=function(t){return dKe(this,t)!=-1},s.Jc=function(t){var n,i,r,o;for(yt(t),i=this.a,r=0,o=i.length;r>>0,t.toString(16)))},s.f=0,s.i=$i;var Dk=S(Qf,"CNode",57);y(814,1,{},$Q),S(Qf,"CNode/CNodeBuilder",814);var vnt;y(1525,1,{},or),s.Oe=function(t,n){return 0},s.Pe=function(t,n){return 0},S(Qf,UJe,1525),y(1790,1,{},uu),s.Le=function(t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;for(p=Ii,r=new q(t.a.b);r.ar.d.c||r.d.c==u.d.c&&r.d.b0?t+this.n.d+this.n.a:0},s.Se=function(){var t,n,i,r,o;if(o=0,this.e)this.b?o=this.b.a:this.a[1][1]&&(o=this.a[1][1].Se());else if(this.g)o=goe(this,aq(this,null,!0));else for(n=(al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])),i=0,r=n.length;i0?o+this.n.b+this.n.c:0},s.Te=function(){var t,n,i,r,o;if(this.g)for(t=aq(this,null,!1),i=(al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])),r=0,o=i.length;r0&&(r[0]+=this.d,i-=r[0]),r[2]>0&&(r[2]+=this.d,i-=r[2]),this.c.a=g.Math.max(0,i),this.c.d=n.d+t.d+(this.c.a-i)/2,r[1]=g.Math.max(r[1],i),mie(this,Nc,n.d+t.d+r[0]-(r[1]-i)/2,r)},s.b=null,s.d=0,s.e=!1,s.f=!1,s.g=!1;var EG=0,kk=0;S(ib,"GridContainerCell",1473),y(461,22,{3:1,35:1,22:1,461:1},cF);var N1,jf,qa,jnt=hn(ib,"HorizontalLabelAlignment",461,bn,H6t,I_t),Ant;y(306,212,{212:1,306:1},kLe,$$e,ALe),s.Re=function(){return wRe(this)},s.Se=function(){return Vte(this)},s.a=0,s.c=!1;var Ezt=S(ib,"LabelCell",306);y(244,326,{212:1,326:1,244:1},r6),s.Re=function(){return GI(this)},s.Se=function(){return UI(this)},s.Te=function(){eH(this)},s.Ue=function(){tH(this)},s.b=0,s.c=0,s.d=!1,S(ib,"StripContainerCell",244),y(1626,1,Rn,Eo),s.Mb=function(t){return $vt(c(t,212))},S(ib,"StripContainerCell/lambda$0$Type",1626),y(1627,1,{},fs),s.Fe=function(t){return c(t,212).Se()},S(ib,"StripContainerCell/lambda$1$Type",1627),y(1628,1,Rn,au),s.Mb=function(t){return Kvt(c(t,212))},S(ib,"StripContainerCell/lambda$2$Type",1628),y(1629,1,{},e1),s.Fe=function(t){return c(t,212).Re()},S(ib,"StripContainerCell/lambda$3$Type",1629),y(462,22,{3:1,35:1,22:1,462:1},sF);var Ha,F1,pl,Ont=hn(ib,"VerticalLabelAlignment",462,bn,z6t,T_t),Dnt;y(789,1,{},Tue),s.c=0,s.d=0,s.k=0,s.s=0,s.t=0,s.v=!1,s.w=0,s.D=!1,S(vD,"NodeContext",789),y(1471,1,Zn,TA),s.ue=function(t,n){return k7e(c(t,61),c(n,61))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(vD,"NodeContext/0methodref$comparePortSides$Type",1471),y(1472,1,Zn,fN),s.ue=function(t,n){return gDt(c(t,111),c(n,111))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(vD,"NodeContext/1methodref$comparePortContexts$Type",1472),y(159,22,{3:1,35:1,22:1,159:1},Bu);var knt,Rnt,xnt,Lnt,Nnt,Fnt,Bnt,$nt,Knt,qnt,Hnt,znt,Vnt,Gnt,Unt,Wnt,Ynt,Xnt,Jnt,Qnt,Znt,SG,eit=hn(vD,"NodeLabelLocation",159,bn,KK,j_t),tit;y(111,1,{111:1},hUe),s.a=!1,S(vD,"PortContext",111),y(1476,1,Rt,hN),s.td=function(t){Q9e(c(t,306))},S(yT,cQe,1476),y(1477,1,Rn,w2e),s.Mb=function(t){return!!c(t,111).c},S(yT,sQe,1477),y(1478,1,Rt,m2e),s.td=function(t){Q9e(c(t,111).c)},S(yT,"LabelPlacer/lambda$2$Type",1478);var ude;y(1475,1,Rt,y2e),s.td=function(t){Lp(),yvt(c(t,111))},S(yT,"NodeLabelAndSizeUtilities/lambda$0$Type",1475),y(790,1,Rt,Pte),s.td=function(t){Dyt(this.b,this.c,this.a,c(t,181))},s.a=!1,s.c=!1,S(yT,"NodeLabelCellCreator/lambda$0$Type",790),y(1474,1,Rt,RIe),s.td=function(t){Svt(this.a,c(t,181))},S(yT,"PortContextCreator/lambda$0$Type",1474);var Rk;y(1829,1,{},_2e),S(BE,"GreedyRectangleStripOverlapRemover",1829),y(1830,1,Zn,v2e),s.ue=function(t,n){return l3t(c(t,222),c(n,222))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(BE,"GreedyRectangleStripOverlapRemover/0methodref$compareByYCoordinate$Type",1830),y(1786,1,{},AAe),s.a=5,s.e=0,S(BE,"RectangleStripOverlapRemover",1786),y(1787,1,Zn,S2e),s.ue=function(t,n){return f3t(c(t,222),c(n,222))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(BE,"RectangleStripOverlapRemover/0methodref$compareLeftRectangleBorders$Type",1787),y(1789,1,Zn,P2e),s.ue=function(t,n){return xSt(c(t,222),c(n,222))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(BE,"RectangleStripOverlapRemover/1methodref$compareRightRectangleBorders$Type",1789),y(406,22,{3:1,35:1,22:1,406:1},S9);var HT,PG,MG,zT,nit=hn(BE,"RectangleStripOverlapRemover/OverlapRemovalDirection",406,bn,HPt,A_t),iit;y(222,1,{222:1},yB),S(BE,"RectangleStripOverlapRemover/RectangleNode",222),y(1788,1,Rt,xIe),s.td=function(t){B8t(this.a,c(t,222))},S(BE,"RectangleStripOverlapRemover/lambda$1$Type",1788),y(1304,1,Zn,M2e),s.ue=function(t,n){return V$t(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator",1304),y(1307,1,{},C2e),s.Kb=function(t){return c(t,324).a},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$0$Type",1307),y(1308,1,Rn,I2e),s.Mb=function(t){return c(t,323).a},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$1$Type",1308),y(1309,1,Rn,T2e),s.Mb=function(t){return c(t,323).a},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$2$Type",1309),y(1302,1,Zn,j2e),s.ue=function(t,n){return MFt(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator",1302),y(1305,1,{},E2e),s.Kb=function(t){return c(t,324).a},S(_f,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator/lambda$0$Type",1305),y(767,1,Zn,CJ),s.ue=function(t,n){return ITt(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinNumOfExtensionsComparator",767),y(1300,1,Zn,A2e),s.ue=function(t,n){return LIt(c(t,321),c(n,321))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinPerimeterComparator",1300),y(1301,1,Zn,O2e),s.ue=function(t,n){return h8t(c(t,321),c(n,321))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinPerimeterComparatorWithShape",1301),y(1303,1,Zn,D2e),s.ue=function(t,n){return WFt(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator",1303),y(1306,1,{},k2e),s.Kb=function(t){return c(t,324).a},S(_f,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator/lambda$0$Type",1306),y(777,1,{},OZ),s.Ce=function(t,n){return BPt(this,c(t,46),c(n,167))},S(_f,"SuccessorCombination",777),y(644,1,{},dN),s.Ce=function(t,n){var i;return TRt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorJitter",644),y(643,1,{},gN),s.Ce=function(t,n){var i;return pNt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorLineByLine",643),y(568,1,{},jA),s.Ce=function(t,n){var i;return jxt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorManhattan",568),y(1356,1,{},R2e),s.Ce=function(t,n){var i;return $Lt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorMaxNormWindingInMathPosSense",1356),y(400,1,{},X3),s.Ce=function(t,n){return vne(this,t,n)},s.c=!1,s.d=!1,s.e=!1,s.f=!1,S(_f,"SuccessorQuadrantsGeneric",400),y(1357,1,{},x2e),s.Kb=function(t){return c(t,324).a},S(_f,"SuccessorQuadrantsGeneric/lambda$0$Type",1357),y(323,22,{3:1,35:1,22:1,323:1},E9),s.a=!1;var VT,GT,UT,WT,rit=hn(_D,oae,323,bn,GPt,O_t),oit;y(1298,1,{}),s.Ib=function(){var t,n,i,r,o,u;for(i=" ",t=Ce(0),o=0;o=0?"b"+t+"["+m$(this.a)+"]":"b["+m$(this.a)+"]"):"b_"+Xb(this)},S(ET,"FBendpoint",559),y(282,134,{3:1,282:1,94:1,134:1},dke),s.Ib=function(){return m$(this)},S(ET,"FEdge",282),y(231,134,{3:1,231:1,94:1,134:1},uO);var Pzt=S(ET,"FGraph",231);y(447,357,{3:1,447:1,357:1,94:1,134:1},pFe),s.Ib=function(){return this.b==null||this.b.length==0?"l["+m$(this.a)+"]":"l_"+this.b},S(ET,"FLabel",447),y(144,357,{3:1,144:1,357:1,94:1,134:1},Cxe),s.Ib=function(){return Xne(this)},s.b=0,S(ET,"FNode",144),y(2003,1,{}),s.bf=function(t){sue(this,t)},s.cf=function(){Yze(this)},s.d=0,S(bae,"AbstractForceModel",2003),y(631,2003,{631:1},oqe),s.af=function(t,n){var i,r,o,u,a;return VGe(this.f,t,n),o=hr(Wo(n.d),t.d),a=g.Math.sqrt(o.a*o.a+o.b*o.b),r=g.Math.max(0,a-j5(t.e)/2-j5(n.e)/2),i=xqe(this.e,t,n),i>0?u=-DSt(r,this.c)*i:u=P3t(r,this.b)*c(B(t,(dl(),r4)),19).a,lf(o,u/a),o},s.bf=function(t){sue(this,t),this.a=c(B(t,(dl(),$k)),19).a,this.c=ge(Te(B(t,Kk))),this.b=ge(Te(B(t,DG)))},s.df=function(t){return t0&&(u-=Lvt(r,this.a)*i),lf(o,u*this.b/a),o},s.bf=function(t){var n,i,r,o,u,a,l;for(sue(this,t),this.b=ge(Te(B(t,(dl(),kG)))),this.c=this.b/c(B(t,$k),19).a,r=t.e.c.length,u=0,o=0,l=new q(t.e);l.a0},s.a=0,s.b=0,s.c=0,S(bae,"FruchtermanReingoldModel",632),y(849,1,ca,$Me),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,PD),""),"Force Model"),"Determines the model for force calculation."),wde),(yd(),Ai)),mde),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,pae),""),"Iterations"),"The number of iterations on the force model."),Ce(300)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,wae),""),"Repulsive Power"),"Determines how many bend points are added to the edge; such bend points are regarded as repelling particles in the force model"),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,vz),""),"FR Temperature"),"The temperature is used as a scaling factor for particle displacements."),Ef),To),mr),nt(Tt)))),pr(t,vz,PD,Mit),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,yz),""),"Eades Repulsion"),"Factor for repulsive forces in Eades' model."),5),To),mr),nt(Tt)))),pr(t,yz,PD,Eit),GXe((new KMe,t))};var vit,yit,wde,_it,Eit,Sit,Pit,Mit;S(x6,"ForceMetaDataProvider",849),y(424,22,{3:1,35:1,22:1,424:1},xZ);var OG,Bk,mde=hn(x6,"ForceModelStrategy",424,bn,m6t,R_t),Cit;y(988,1,ca,KMe),s.Qe=function(t){GXe(t)};var Iit,Tit,vde,$k,yde,jit,Ait,Oit,_de,Dit,Ede,Sde,kit,r4,Rit,DG,Pde,xit,Lit,Kk,kG;S(x6,"ForceOptions",988),y(989,1,{},Y2e),s.$e=function(){var t;return t=new NQ,t},s._e=function(t){},S(x6,"ForceOptions/ForceFactory",989);var JT,fP,K2,qk;y(850,1,ca,qMe),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,vae),""),"Fixed Position"),"Prevent that the node is moved by the layout algorithm."),(Pt(),!1)),(yd(),Dr)),Qi),nt((fl(),ar))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,yae),""),"Desired Edge Length"),"Either specified for parent nodes or for individual edges, where the latter takes higher precedence."),100),To),mr),ui(Tt,U(G(Dd,1),_e,175,0,[kf]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_ae),""),"Layout Dimension"),"Dimensions that are permitted to be altered during layout."),Mde),Ai),Dde),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Eae),""),"Stress Epsilon"),"Termination criterion for the iterative process."),Ef),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Sae),""),"Iteration Limit"),"Maximum number of performed iterations. Takes higher precedence than 'epsilon'."),Ce(Fn)),oc),$r),nt(Tt)))),AXe((new HMe,t))};var Nit,Fit,Mde,Bit,$it,Kit;S(x6,"StressMetaDataProvider",850),y(992,1,ca,HMe),s.Qe=function(t){AXe(t)};var Hk,Cde,Ide,Tde,jde,Ade,qit,Hit,zit,Vit,Ode,Git;S(x6,"StressOptions",992),y(993,1,{},X2e),s.$e=function(){var t;return t=new gke,t},s._e=function(t){},S(x6,"StressOptions/StressFactory",993),y(1128,209,rb,gke),s.Ze=function(t,n){var i,r,o,u,a;for(Wt(n,vQe,1),Be(Fe(Ke(t,(NI(),jde))))?Be(Fe(Ke(t,Ode)))||V8((i=new zM((Ap(),new Ip(t))),i)):JUe(new NQ,t,yc(n,1)),o=Iqe(t),r=$Ye(this.a,o),a=r.Kc();a.Ob();)u=c(a.Pb(),231),!(u.e.c.length<=1)&&(H$t(this.b,u),_xt(this.b),Zc(u.d,new J2e));o=ZXe(r),XXe(o),qt(n)},S(ID,"StressLayoutProvider",1128),y(1129,1,Rt,J2e),s.td=function(t){gue(c(t,447))},S(ID,"StressLayoutProvider/lambda$0$Type",1129),y(990,1,{},SAe),s.c=0,s.e=0,s.g=0,S(ID,"StressMajorization",990),y(379,22,{3:1,35:1,22:1,379:1},uF);var RG,xG,LG,Dde=hn(ID,"StressMajorization/Dimension",379,bn,G6t,x_t),Uit;y(991,1,Zn,BIe),s.ue=function(t,n){return f_t(this.a,c(t,144),c(n,144))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(ID,"StressMajorization/lambda$0$Type",991),y(1229,1,{},jNe),S(x2,"ElkLayered",1229),y(1230,1,Rt,Q2e),s.td=function(t){ERt(c(t,37))},S(x2,"ElkLayered/lambda$0$Type",1230),y(1231,1,Rt,$Ie),s.td=function(t){h_t(this.a,c(t,37))},S(x2,"ElkLayered/lambda$1$Type",1231),y(1263,1,{},tDe);var Wit,Yit,Xit;S(x2,"GraphConfigurator",1263),y(759,1,Rt,vQ),s.td=function(t){iGe(this.a,c(t,10))},S(x2,"GraphConfigurator/lambda$0$Type",759),y(760,1,{},TJ),s.Kb=function(t){return fce(),new ht(null,new bt(c(t,29).a,16))},S(x2,"GraphConfigurator/lambda$1$Type",760),y(761,1,Rt,yQ),s.td=function(t){iGe(this.a,c(t,10))},S(x2,"GraphConfigurator/lambda$2$Type",761),y(1127,209,rb,CAe),s.Ze=function(t,n){var i;i=l$t(new DAe,t),le(Ke(t,(Oe(),Fw)))===le((Rh(),kd))?qAt(this.a,i,n):FRt(this.a,i,n),VXe(new VMe,i)},S(x2,"LayeredLayoutProvider",1127),y(356,22,{3:1,35:1,22:1,356:1},oC);var Af,B1,Hc,Pc,Io,kde=hn(x2,"LayeredPhases",356,bn,jMt,L_t),Jit;y(1651,1,{},gKe),s.i=0;var Qit;S(MT,"ComponentsToCGraphTransformer",1651);var Zit;y(1652,1,{},Z2e),s.ef=function(t,n){return g.Math.min(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},s.ff=function(t,n){return g.Math.min(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},S(MT,"ComponentsToCGraphTransformer/1",1652),y(81,1,{81:1}),s.i=0,s.k=!0,s.o=$i;var NG=S(F6,"CNode",81);y(460,81,{460:1,81:1},Lee,Noe),s.Ib=function(){return""},S(MT,"ComponentsToCGraphTransformer/CRectNode",460),y(1623,1,{},e3e);var FG,BG;S(MT,"OneDimensionalComponentsCompaction",1623),y(1624,1,{},t3e),s.Kb=function(t){return N6t(c(t,46))},s.Fb=function(t){return this===t},S(MT,"OneDimensionalComponentsCompaction/lambda$0$Type",1624),y(1625,1,{},n3e),s.Kb=function(t){return XAt(c(t,46))},s.Fb=function(t){return this===t},S(MT,"OneDimensionalComponentsCompaction/lambda$1$Type",1625),y(1654,1,{},Mxe),S(F6,"CGraph",1654),y(189,1,{189:1},FK),s.b=0,s.c=0,s.e=0,s.g=!0,s.i=$i,S(F6,"CGroup",189),y(1653,1,{},c3e),s.ef=function(t,n){return g.Math.max(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},s.ff=function(t,n){return g.Math.max(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},S(F6,UJe,1653),y(1655,1,{},rUe),s.d=!1;var ert,$G=S(F6,XJe,1655);y(1656,1,{},s3e),s.Kb=function(t){return EZ(),Pt(),c(c(t,46).a,81).d.e!=0},s.Fb=function(t){return this===t},S(F6,JJe,1656),y(823,1,{},Gte),s.a=!1,s.b=!1,s.c=!1,s.d=!1,S(F6,QJe,823),y(1825,1,{},HRe),S(TD,ZJe,1825);var QT=pi(cb,VJe);y(1826,1,{369:1},yLe),s.Ke=function(t){ONt(this,c(t,466))},S(TD,eQe,1826),y(1827,1,Zn,u3e),s.ue=function(t,n){return O5t(c(t,81),c(n,81))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(TD,tQe,1827),y(466,1,{466:1},NZ),s.a=!1,S(TD,nQe,466),y(1828,1,Zn,a3e),s.ue=function(t,n){return HOt(c(t,466),c(n,466))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(TD,iQe,1828),y(140,1,{140:1},l_,Kte),s.Fb=function(t){var n;return t==null||Mzt!=Fs(t)?!1:(n=c(t,140),wc(this.c,n.c)&&wc(this.d,n.d))},s.Hb=function(){return ZO(U(G(xt,1),xe,1,5,[this.c,this.d]))},s.Ib=function(){return"("+this.c+zr+this.d+(this.a?"cx":"")+this.b+")"},s.a=!0,s.c=0,s.d=0;var Mzt=S(cb,"Point",140);y(405,22,{3:1,35:1,22:1,405:1},P9);var V0,Aw,Pv,Ow,trt=hn(cb,"Point/Quadrant",405,bn,UPt,N_t),nrt;y(1642,1,{},IAe),s.b=null,s.c=null,s.d=null,s.e=null,s.f=null;var irt,rrt,ort,crt,srt;S(cb,"RectilinearConvexHull",1642),y(574,1,{369:1},v7),s.Ke=function(t){ACt(this,c(t,140))},s.b=0;var Rde;S(cb,"RectilinearConvexHull/MaximalElementsEventHandler",574),y(1644,1,Zn,r3e),s.ue=function(t,n){return y5t(Te(t),Te(n))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/MaximalElementsEventHandler/lambda$0$Type",1644),y(1643,1,{369:1},N$e),s.Ke=function(t){zLt(this,c(t,140))},s.a=0,s.b=null,s.c=null,s.d=null,s.e=null,S(cb,"RectilinearConvexHull/RectangleEventHandler",1643),y(1645,1,Zn,o3e),s.ue=function(t,n){return SPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$0$Type",1645),y(1646,1,Zn,i3e),s.ue=function(t,n){return PPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$1$Type",1646),y(1647,1,Zn,l3e),s.ue=function(t,n){return CPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$2$Type",1647),y(1648,1,Zn,f3e),s.ue=function(t,n){return MPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$3$Type",1648),y(1649,1,Zn,h3e),s.ue=function(t,n){return TDt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$4$Type",1649),y(1650,1,{},JLe),S(cb,"Scanline",1650),y(2005,1,{}),S(Sf,"AbstractGraphPlacer",2005),y(325,1,{325:1},HDe),s.mf=function(t){return this.nf(t)?(it(this.b,c(B(t,(ye(),kw)),21),t),!0):!1},s.nf=function(t){var n,i,r,o;for(n=c(B(t,(ye(),kw)),21),o=c(Vn(ei,n),21),r=o.Kc();r.Ob();)if(i=c(r.Pb(),21),!c(Vn(this.b,i),15).dc())return!1;return!0};var ei;S(Sf,"ComponentGroup",325),y(765,2005,{},KQ),s.of=function(t){var n,i;for(i=new q(this.a);i.aL&&(Pe=0,Ae+=D+o,D=0),Y=a.c,v6(a,Pe+Y.a,Ae+Y.b),ol(Y),i=g.Math.max(i,Pe+ne.a),D=g.Math.max(D,ne.b),Pe+=ne.a+o;if(n.f.a=i,n.f.b=Ae+D,Be(Fe(B(u,jR)))){for(r=new pN,Rue(r,t,o),A=t.Kc();A.Ob();)v=c(A.Pb(),37),Wn(ol(v.c),r.e);Wn(ol(n.f),r.a)}Rie(n,t)},S(Sf,"SimpleRowGraphPlacer",1291),y(1292,1,Zn,b3e),s.ue=function(t,n){return CTt(c(t,37),c(n,37))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Sf,"SimpleRowGraphPlacer/1",1292);var art;y(1262,1,yf,p3e),s.Lb=function(t){var n;return n=c(B(c(t,243).b,(Oe(),yo)),74),!!n&&n.b!=0},s.Fb=function(t){return this===t},s.Mb=function(t){var n;return n=c(B(c(t,243).b,(Oe(),yo)),74),!!n&&n.b!=0},S(jD,"CompoundGraphPostprocessor/1",1262),y(1261,1,Ti,kAe),s.pf=function(t,n){Dze(this,c(t,37),n)},S(jD,"CompoundGraphPreprocessor",1261),y(441,1,{441:1},vHe),s.c=!1,S(jD,"CompoundGraphPreprocessor/ExternalPort",441),y(243,1,{243:1},c8),s.Ib=function(){return UF(this.c)+":"+eUe(this.b)},S(jD,"CrossHierarchyEdge",243),y(763,1,Zn,_Q),s.ue=function(t,n){return bOt(this,c(t,243),c(n,243))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(jD,"CrossHierarchyEdgeComparator",763),y(299,134,{3:1,299:1,94:1,134:1}),s.p=0,S(Lc,"LGraphElement",299),y(17,299,{3:1,17:1,299:1,94:1,134:1},c0),s.Ib=function(){return eUe(this)};var qG=S(Lc,"LEdge",17);y(37,299,{3:1,20:1,37:1,299:1,94:1,134:1},nre),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return new q(this.b)},s.Ib=function(){return this.b.c.length==0?"G-unlayered"+C1(this.a):this.a.c.length==0?"G-layered"+C1(this.b):"G[layerless"+C1(this.a)+", layers"+C1(this.b)+"]"};var lrt=S(Lc,"LGraph",37),frt;y(657,1,{}),s.qf=function(){return this.e.n},s.We=function(t){return B(this.e,t)},s.rf=function(){return this.e.o},s.sf=function(){return this.e.p},s.Xe=function(t){return nr(this.e,t)},s.tf=function(t){this.e.n.a=t.a,this.e.n.b=t.b},s.uf=function(t){this.e.o.a=t.a,this.e.o.b=t.b},s.vf=function(t){this.e.p=t},S(Lc,"LGraphAdapters/AbstractLShapeAdapter",657),y(577,1,{839:1},$A),s.wf=function(){var t,n;if(!this.b)for(this.b=Ff(this.a.b.c.length),n=new q(this.a.b);n.a0&&oHe((fn(n-1,t.length),t.charCodeAt(n-1)),MQe);)--n;if(u> ",t),j7(i)),wn(nc((t.a+="[",t),i.i),"]")),t.a},s.c=!0,s.d=!1;var Bde,$de,Kde,qde,Hde,zde,drt=S(Lc,"LPort",11);y(397,1,Yf,J3),s.Jc=function(t){Mr(this,t)},s.Kc=function(){var t;return t=new q(this.a.e),new KIe(t)},S(Lc,"LPort/1",397),y(1290,1,dr,KIe),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(K(this.a),17).c},s.Ob=function(){return Fo(this.a)},s.Qb=function(){I5(this.a)},S(Lc,"LPort/1/1",1290),y(359,1,Yf,Oy),s.Jc=function(t){Mr(this,t)},s.Kc=function(){var t;return t=new q(this.a.g),new EQ(t)},S(Lc,"LPort/2",359),y(762,1,dr,EQ),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(K(this.a),17).d},s.Ob=function(){return Fo(this.a)},s.Qb=function(){I5(this.a)},S(Lc,"LPort/2/1",762),y(1283,1,Yf,yOe),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return new Rl(this)},S(Lc,"LPort/CombineIter",1283),y(201,1,dr,Rl),s.Nb=function(t){Sr(this,t)},s.Qb=function(){z9e()},s.Ob=function(){return p5(this)},s.Pb=function(){return Fo(this.a)?K(this.a):K(this.b)},S(Lc,"LPort/CombineIter/1",201),y(1285,1,yf,m3e),s.Lb=function(t){return txe(t)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).e.c.length!=0},S(Lc,"LPort/lambda$0$Type",1285),y(1284,1,yf,v3e),s.Lb=function(t){return nxe(t)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).g.c.length!=0},S(Lc,"LPort/lambda$1$Type",1284),y(1286,1,yf,y3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),_t)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),_t)},S(Lc,"LPort/lambda$2$Type",1286),y(1287,1,yf,_3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),jt)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),jt)},S(Lc,"LPort/lambda$3$Type",1287),y(1288,1,yf,E3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),Yt)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),Yt)},S(Lc,"LPort/lambda$4$Type",1288),y(1289,1,yf,S3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),Mt)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),Mt)},S(Lc,"LPort/lambda$5$Type",1289),y(29,299,{3:1,20:1,299:1,29:1,94:1,134:1},ta),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return new q(this.a)},s.Ib=function(){return"L_"+Do(this.b.b,this,0)+C1(this.a)},S(Lc,"Layer",29),y(1342,1,{},DAe),S(Sd,jQe,1342),y(1346,1,{},P3e),s.Kb=function(t){return Co(c(t,82))},S(Sd,"ElkGraphImporter/0methodref$connectableShapeToNode$Type",1346),y(1349,1,{},M3e),s.Kb=function(t){return Co(c(t,82))},S(Sd,"ElkGraphImporter/1methodref$connectableShapeToNode$Type",1349),y(1343,1,Rt,qIe),s.td=function(t){gUe(this.a,c(t,118))},S(Sd,AQe,1343),y(1344,1,Rt,HIe),s.td=function(t){gUe(this.a,c(t,118))},S(Sd,OQe,1344),y(1345,1,{},C3e),s.Kb=function(t){return new ht(null,new bt(b5t(c(t,79)),16))},S(Sd,DQe,1345),y(1347,1,Rn,zIe),s.Mb=function(t){return p2t(this.a,c(t,33))},S(Sd,kQe,1347),y(1348,1,{},I3e),s.Kb=function(t){return new ht(null,new bt(p5t(c(t,79)),16))},S(Sd,"ElkGraphImporter/lambda$5$Type",1348),y(1350,1,Rn,VIe),s.Mb=function(t){return w2t(this.a,c(t,33))},S(Sd,"ElkGraphImporter/lambda$7$Type",1350),y(1351,1,Rn,T3e),s.Mb=function(t){return k5t(c(t,79))},S(Sd,"ElkGraphImporter/lambda$8$Type",1351),y(1278,1,{},VMe);var grt;S(Sd,"ElkGraphLayoutTransferrer",1278),y(1279,1,Rn,GIe),s.Mb=function(t){return o_t(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$0$Type",1279),y(1280,1,Rt,UIe),s.td=function(t){tC(),Ee(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$1$Type",1280),y(1281,1,Rn,WIe),s.Mb=function(t){return z3t(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$2$Type",1281),y(1282,1,Rt,YIe),s.td=function(t){tC(),Ee(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$3$Type",1282),y(1485,1,Ti,j3e),s.pf=function(t,n){GIt(c(t,37),n)},S(Ct,"CommentNodeMarginCalculator",1485),y(1486,1,{},A3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"CommentNodeMarginCalculator/lambda$0$Type",1486),y(1487,1,Rt,O3e),s.td=function(t){C$t(c(t,10))},S(Ct,"CommentNodeMarginCalculator/lambda$1$Type",1487),y(1488,1,Ti,D3e),s.pf=function(t,n){BNt(c(t,37),n)},S(Ct,"CommentPostprocessor",1488),y(1489,1,Ti,k3e),s.pf=function(t,n){Gqt(c(t,37),n)},S(Ct,"CommentPreprocessor",1489),y(1490,1,Ti,R3e),s.pf=function(t,n){uLt(c(t,37),n)},S(Ct,"ConstraintsPostprocessor",1490),y(1491,1,Ti,x3e),s.pf=function(t,n){bTt(c(t,37),n)},S(Ct,"EdgeAndLayerConstraintEdgeReverser",1491),y(1492,1,Ti,L3e),s.pf=function(t,n){i9t(c(t,37),n)},S(Ct,"EndLabelPostprocessor",1492),y(1493,1,{},N3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"EndLabelPostprocessor/lambda$0$Type",1493),y(1494,1,Rn,F3e),s.Mb=function(t){return J5t(c(t,10))},S(Ct,"EndLabelPostprocessor/lambda$1$Type",1494),y(1495,1,Rt,B3e),s.td=function(t){zOt(c(t,10))},S(Ct,"EndLabelPostprocessor/lambda$2$Type",1495),y(1496,1,Ti,$3e),s.pf=function(t,n){kkt(c(t,37),n)},S(Ct,"EndLabelPreprocessor",1496),y(1497,1,{},K3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"EndLabelPreprocessor/lambda$0$Type",1497),y(1498,1,Rt,Gke),s.td=function(t){kyt(this.a,this.b,this.c,c(t,10))},s.a=0,s.b=0,s.c=!1,S(Ct,"EndLabelPreprocessor/lambda$1$Type",1498),y(1499,1,Rn,q3e),s.Mb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),O4))},S(Ct,"EndLabelPreprocessor/lambda$2$Type",1499),y(1500,1,Rt,XIe),s.td=function(t){Cn(this.a,c(t,70))},S(Ct,"EndLabelPreprocessor/lambda$3$Type",1500),y(1501,1,Rn,H3e),s.Mb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),Ww))},S(Ct,"EndLabelPreprocessor/lambda$4$Type",1501),y(1502,1,Rt,JIe),s.td=function(t){Cn(this.a,c(t,70))},S(Ct,"EndLabelPreprocessor/lambda$5$Type",1502),y(1551,1,Ti,zMe),s.pf=function(t,n){fAt(c(t,37),n)};var brt;S(Ct,"EndLabelSorter",1551),y(1552,1,Zn,z3e),s.ue=function(t,n){return K9t(c(t,456),c(n,456))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"EndLabelSorter/1",1552),y(456,1,{456:1},hLe),S(Ct,"EndLabelSorter/LabelGroup",456),y(1553,1,{},V3e),s.Kb=function(t){return nC(),new ht(null,new bt(c(t,29).a,16))},S(Ct,"EndLabelSorter/lambda$0$Type",1553),y(1554,1,Rn,G3e),s.Mb=function(t){return nC(),c(t,10).k==(Dt(),Ui)},S(Ct,"EndLabelSorter/lambda$1$Type",1554),y(1555,1,Rt,U3e),s.td=function(t){zDt(c(t,10))},S(Ct,"EndLabelSorter/lambda$2$Type",1555),y(1556,1,Rn,W3e),s.Mb=function(t){return nC(),le(B(c(t,70),(Oe(),Df)))===le((xl(),Ww))},S(Ct,"EndLabelSorter/lambda$3$Type",1556),y(1557,1,Rn,Y3e),s.Mb=function(t){return nC(),le(B(c(t,70),(Oe(),Df)))===le((xl(),O4))},S(Ct,"EndLabelSorter/lambda$4$Type",1557),y(1503,1,Ti,X3e),s.pf=function(t,n){N$t(this,c(t,37))},s.b=0,s.c=0,S(Ct,"FinalSplineBendpointsCalculator",1503),y(1504,1,{},J3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"FinalSplineBendpointsCalculator/lambda$0$Type",1504),y(1505,1,{},Q3e),s.Kb=function(t){return new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ct,"FinalSplineBendpointsCalculator/lambda$1$Type",1505),y(1506,1,Rn,Z3e),s.Mb=function(t){return!Kr(c(t,17))},S(Ct,"FinalSplineBendpointsCalculator/lambda$2$Type",1506),y(1507,1,Rn,e_e),s.Mb=function(t){return nr(c(t,17),(ye(),bb))},S(Ct,"FinalSplineBendpointsCalculator/lambda$3$Type",1507),y(1508,1,Rt,QIe),s.td=function(t){XFt(this.a,c(t,128))},S(Ct,"FinalSplineBendpointsCalculator/lambda$4$Type",1508),y(1509,1,Rt,t_e),s.td=function(t){Mq(c(t,17).a)},S(Ct,"FinalSplineBendpointsCalculator/lambda$5$Type",1509),y(792,1,Ti,SQ),s.pf=function(t,n){AKt(this,c(t,37),n)},S(Ct,"GraphTransformer",792),y(511,22,{3:1,35:1,22:1,511:1},LZ);var zG,ZT,prt=hn(Ct,"GraphTransformer/Mode",511,bn,v6t,JEt),wrt;y(1510,1,Ti,n_e),s.pf=function(t,n){cNt(c(t,37),n)},S(Ct,"HierarchicalNodeResizingProcessor",1510),y(1511,1,Ti,i_e),s.pf=function(t,n){KIt(c(t,37),n)},S(Ct,"HierarchicalPortConstraintProcessor",1511),y(1512,1,Zn,r_e),s.ue=function(t,n){return Q9t(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"HierarchicalPortConstraintProcessor/NodeComparator",1512),y(1513,1,Ti,o_e),s.pf=function(t,n){s$t(c(t,37),n)},S(Ct,"HierarchicalPortDummySizeProcessor",1513),y(1514,1,Ti,c_e),s.pf=function(t,n){rFt(this,c(t,37),n)},s.a=0,S(Ct,"HierarchicalPortOrthogonalEdgeRouter",1514),y(1515,1,Zn,s_e),s.ue=function(t,n){return a3t(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"HierarchicalPortOrthogonalEdgeRouter/1",1515),y(1516,1,Zn,u_e),s.ue=function(t,n){return SCt(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"HierarchicalPortOrthogonalEdgeRouter/2",1516),y(1517,1,Ti,a_e),s.pf=function(t,n){jDt(c(t,37),n)},S(Ct,"HierarchicalPortPositionProcessor",1517),y(1518,1,Ti,GMe),s.pf=function(t,n){PHt(this,c(t,37))},s.a=0,s.c=0;var zk,Vk;S(Ct,"HighDegreeNodeLayeringProcessor",1518),y(571,1,{571:1},l_e),s.b=-1,s.d=-1,S(Ct,"HighDegreeNodeLayeringProcessor/HighDegreeNodeInformation",571),y(1519,1,{},f_e),s.Kb=function(t){return TC(),ko(c(t,10))},s.Fb=function(t){return this===t},S(Ct,"HighDegreeNodeLayeringProcessor/lambda$0$Type",1519),y(1520,1,{},h_e),s.Kb=function(t){return TC(),Vi(c(t,10))},s.Fb=function(t){return this===t},S(Ct,"HighDegreeNodeLayeringProcessor/lambda$1$Type",1520),y(1526,1,Ti,d_e),s.pf=function(t,n){xBt(this,c(t,37),n)},S(Ct,"HyperedgeDummyMerger",1526),y(793,1,{},Cte),s.a=!1,s.b=!1,s.c=!1,S(Ct,"HyperedgeDummyMerger/MergeState",793),y(1527,1,{},g_e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"HyperedgeDummyMerger/lambda$0$Type",1527),y(1528,1,{},b_e),s.Kb=function(t){return new ht(null,new bt(c(t,10).j,16))},S(Ct,"HyperedgeDummyMerger/lambda$1$Type",1528),y(1529,1,Rt,p_e),s.td=function(t){c(t,11).p=-1},S(Ct,"HyperedgeDummyMerger/lambda$2$Type",1529),y(1530,1,Ti,w_e),s.pf=function(t,n){kBt(c(t,37),n)},S(Ct,"HypernodesProcessor",1530),y(1531,1,Ti,m_e),s.pf=function(t,n){RBt(c(t,37),n)},S(Ct,"InLayerConstraintProcessor",1531),y(1532,1,Ti,v_e),s.pf=function(t,n){lTt(c(t,37),n)},S(Ct,"InnermostNodeMarginCalculator",1532),y(1533,1,Ti,y_e),s.pf=function(t,n){Kqt(this,c(t,37))},s.a=$i,s.b=$i,s.c=Ii,s.d=Ii;var Czt=S(Ct,"InteractiveExternalPortPositioner",1533);y(1534,1,{},__e),s.Kb=function(t){return c(t,17).d.i},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$0$Type",1534),y(1535,1,{},ZIe),s.Kb=function(t){return h3t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$1$Type",1535),y(1536,1,{},E_e),s.Kb=function(t){return c(t,17).c.i},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$2$Type",1536),y(1537,1,{},eTe),s.Kb=function(t){return d3t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$3$Type",1537),y(1538,1,{},tTe),s.Kb=function(t){return n_t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$4$Type",1538),y(1539,1,{},nTe),s.Kb=function(t){return i_t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$5$Type",1539),y(77,22,{3:1,35:1,22:1,77:1,234:1},Li),s.Kf=function(){switch(this.g){case 15:return new H4e;case 22:return new z4e;case 47:return new U4e;case 28:case 35:return new k_e;case 32:return new j3e;case 42:return new D3e;case 1:return new k3e;case 41:return new R3e;case 56:return new SQ((G_(),ZT));case 0:return new SQ((G_(),zG));case 2:return new x3e;case 54:return new L3e;case 33:return new $3e;case 51:return new X3e;case 55:return new n_e;case 13:return new i_e;case 38:return new o_e;case 44:return new c_e;case 40:return new a_e;case 9:return new GMe;case 49:return new DDe;case 37:return new d_e;case 43:return new w_e;case 27:return new m_e;case 30:return new v_e;case 3:return new y_e;case 18:return new P_e;case 29:return new M_e;case 5:return new UMe;case 50:return new S_e;case 34:return new WMe;case 36:return new R_e;case 52:return new zMe;case 11:return new L_e;case 7:return new XMe;case 39:return new N_e;case 45:return new F_e;case 16:return new B_e;case 10:return new $_e;case 48:return new q_e;case 21:return new H_e;case 23:return new VN((w0(),kP));case 8:return new V_e;case 12:return new U_e;case 4:return new W_e;case 19:return new eCe;case 17:return new rEe;case 53:return new oEe;case 6:return new wEe;case 25:return new LAe;case 46:return new lEe;case 31:return new pke;case 14:return new MEe;case 26:return new X4e;case 20:return new AEe;case 24:return new VN((w0(),YR));default:throw V(new St(Mz+(this.f!=null?this.f:""+this.g)))}};var Vde,Gde,Ude,Wde,Yde,Xde,Jde,Qde,Zde,e1e,hP,Gk,Uk,t1e,n1e,i1e,r1e,o1e,c1e,s1e,dP,u1e,a1e,l1e,f1e,h1e,VG,Wk,Yk,d1e,Xk,Jk,Qk,o4,c4,s4,g1e,Zk,eR,b1e,tR,nR,p1e,w1e,m1e,v1e,iR,GG,ej,rR,oR,cR,sR,y1e,_1e,E1e,S1e,Izt=hn(Ct,Mae,77,bn,cWe,XEt),mrt;y(1540,1,Ti,P_e),s.pf=function(t,n){Hqt(c(t,37),n)},S(Ct,"InvertedPortProcessor",1540),y(1541,1,Ti,M_e),s.pf=function(t,n){HFt(c(t,37),n)},S(Ct,"LabelAndNodeSizeProcessor",1541),y(1542,1,Rn,C_e),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"LabelAndNodeSizeProcessor/lambda$0$Type",1542),y(1543,1,Rn,I_e),s.Mb=function(t){return c(t,10).k==(Dt(),Bi)},S(Ct,"LabelAndNodeSizeProcessor/lambda$1$Type",1543),y(1544,1,Rt,Uke),s.td=function(t){Ryt(this.b,this.a,this.c,c(t,10))},s.a=!1,s.c=!1,S(Ct,"LabelAndNodeSizeProcessor/lambda$2$Type",1544),y(1545,1,Ti,UMe),s.pf=function(t,n){dqt(c(t,37),n)};var vrt;S(Ct,"LabelDummyInserter",1545),y(1546,1,yf,T_e),s.Lb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),A4))},s.Fb=function(t){return this===t},s.Mb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),A4))},S(Ct,"LabelDummyInserter/1",1546),y(1547,1,Ti,S_e),s.pf=function(t,n){bKt(c(t,37),n)},S(Ct,"LabelDummyRemover",1547),y(1548,1,Rn,j_e),s.Mb=function(t){return Be(Fe(B(c(t,70),(Oe(),RU))))},S(Ct,"LabelDummyRemover/lambda$0$Type",1548),y(1359,1,Ti,WMe),s.pf=function(t,n){zKt(this,c(t,37),n)},s.a=null;var UG;S(Ct,"LabelDummySwitcher",1359),y(286,1,{286:1},rYe),s.c=0,s.d=null,s.f=0,S(Ct,"LabelDummySwitcher/LabelDummyInfo",286),y(1360,1,{},A_e),s.Kb=function(t){return h2(),new ht(null,new bt(c(t,29).a,16))},S(Ct,"LabelDummySwitcher/lambda$0$Type",1360),y(1361,1,Rn,O_e),s.Mb=function(t){return h2(),c(t,10).k==(Dt(),cu)},S(Ct,"LabelDummySwitcher/lambda$1$Type",1361),y(1362,1,{},oTe),s.Kb=function(t){return V3t(this.a,c(t,10))},S(Ct,"LabelDummySwitcher/lambda$2$Type",1362),y(1363,1,Rt,cTe),s.td=function(t){zSt(this.a,c(t,286))},S(Ct,"LabelDummySwitcher/lambda$3$Type",1363),y(1364,1,Zn,D_e),s.ue=function(t,n){return mSt(c(t,286),c(n,286))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"LabelDummySwitcher/lambda$4$Type",1364),y(791,1,Ti,k_e),s.pf=function(t,n){tCt(c(t,37),n)},S(Ct,"LabelManagementProcessor",791),y(1549,1,Ti,R_e),s.pf=function(t,n){CNt(c(t,37),n)},S(Ct,"LabelSideSelector",1549),y(1550,1,Rn,x_e),s.Mb=function(t){return Be(Fe(B(c(t,70),(Oe(),RU))))},S(Ct,"LabelSideSelector/lambda$0$Type",1550),y(1558,1,Ti,L_e),s.pf=function(t,n){u$t(c(t,37),n)},S(Ct,"LayerConstraintPostprocessor",1558),y(1559,1,Ti,XMe),s.pf=function(t,n){Ext(c(t,37),n)};var P1e;S(Ct,"LayerConstraintPreprocessor",1559),y(360,22,{3:1,35:1,22:1,360:1},M9);var tj,uR,aR,WG,yrt=hn(Ct,"LayerConstraintPreprocessor/HiddenNodeConnections",360,bn,WPt,K_t),_rt;y(1560,1,Ti,N_e),s.pf=function(t,n){hKt(c(t,37),n)},S(Ct,"LayerSizeAndGraphHeightCalculator",1560),y(1561,1,Ti,F_e),s.pf=function(t,n){bLt(c(t,37),n)},S(Ct,"LongEdgeJoiner",1561),y(1562,1,Ti,B_e),s.pf=function(t,n){U$t(c(t,37),n)},S(Ct,"LongEdgeSplitter",1562),y(1563,1,Ti,$_e),s.pf=function(t,n){UKt(this,c(t,37),n)},s.d=0,s.e=0,s.i=0,s.j=0,s.k=0,s.n=0,S(Ct,"NodePromotion",1563),y(1564,1,{},K_e),s.Kb=function(t){return c(t,46),Pt(),!0},s.Fb=function(t){return this===t},S(Ct,"NodePromotion/lambda$0$Type",1564),y(1565,1,{},iTe),s.Kb=function(t){return f5t(this.a,c(t,46))},s.Fb=function(t){return this===t},s.a=0,S(Ct,"NodePromotion/lambda$1$Type",1565),y(1566,1,{},rTe),s.Kb=function(t){return h5t(this.a,c(t,46))},s.Fb=function(t){return this===t},s.a=0,S(Ct,"NodePromotion/lambda$2$Type",1566),y(1567,1,Ti,q_e),s.pf=function(t,n){wHt(c(t,37),n)},S(Ct,"NorthSouthPortPostprocessor",1567),y(1568,1,Ti,H_e),s.pf=function(t,n){nHt(c(t,37),n)},S(Ct,"NorthSouthPortPreprocessor",1568),y(1569,1,Zn,z_e),s.ue=function(t,n){return OTt(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"NorthSouthPortPreprocessor/lambda$0$Type",1569),y(1570,1,Ti,V_e),s.pf=function(t,n){vBt(c(t,37),n)},S(Ct,"PartitionMidprocessor",1570),y(1571,1,Rn,G_e),s.Mb=function(t){return nr(c(t,10),(Oe(),y4))},S(Ct,"PartitionMidprocessor/lambda$0$Type",1571),y(1572,1,Rt,sTe),s.td=function(t){R5t(this.a,c(t,10))},S(Ct,"PartitionMidprocessor/lambda$1$Type",1572),y(1573,1,Ti,U_e),s.pf=function(t,n){xLt(c(t,37),n)},S(Ct,"PartitionPostprocessor",1573),y(1574,1,Ti,W_e),s.pf=function(t,n){VRt(c(t,37),n)},S(Ct,"PartitionPreprocessor",1574),y(1575,1,Rn,Y_e),s.Mb=function(t){return nr(c(t,10),(Oe(),y4))},S(Ct,"PartitionPreprocessor/lambda$0$Type",1575),y(1576,1,{},X_e),s.Kb=function(t){return new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ct,"PartitionPreprocessor/lambda$1$Type",1576),y(1577,1,Rn,J_e),s.Mb=function(t){return F9t(c(t,17))},S(Ct,"PartitionPreprocessor/lambda$2$Type",1577),y(1578,1,Rt,Q_e),s.td=function(t){KTt(c(t,17))},S(Ct,"PartitionPreprocessor/lambda$3$Type",1578),y(1579,1,Ti,eCe),s.pf=function(t,n){iBt(c(t,37),n)};var M1e,Ert,Srt,Prt,C1e,I1e;S(Ct,"PortListSorter",1579),y(1580,1,{},Z_e),s.Kb=function(t){return iE(),c(t,11).e},S(Ct,"PortListSorter/lambda$0$Type",1580),y(1581,1,{},eEe),s.Kb=function(t){return iE(),c(t,11).g},S(Ct,"PortListSorter/lambda$1$Type",1581),y(1582,1,Zn,tEe),s.ue=function(t,n){return mFe(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"PortListSorter/lambda$2$Type",1582),y(1583,1,Zn,nEe),s.ue=function(t,n){return uOt(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"PortListSorter/lambda$3$Type",1583),y(1584,1,Zn,iEe),s.ue=function(t,n){return IYe(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"PortListSorter/lambda$4$Type",1584),y(1585,1,Ti,rEe),s.pf=function(t,n){pxt(c(t,37),n)},S(Ct,"PortSideProcessor",1585),y(1586,1,Ti,oEe),s.pf=function(t,n){wFt(c(t,37),n)},S(Ct,"ReversedEdgeRestorer",1586),y(1591,1,Ti,LAe),s.pf=function(t,n){G8t(this,c(t,37),n)},S(Ct,"SelfLoopPortRestorer",1591),y(1592,1,{},cEe),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"SelfLoopPortRestorer/lambda$0$Type",1592),y(1593,1,Rn,sEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SelfLoopPortRestorer/lambda$1$Type",1593),y(1594,1,Rn,uEe),s.Mb=function(t){return nr(c(t,10),(ye(),w4))},S(Ct,"SelfLoopPortRestorer/lambda$2$Type",1594),y(1595,1,{},aEe),s.Kb=function(t){return c(B(c(t,10),(ye(),w4)),403)},S(Ct,"SelfLoopPortRestorer/lambda$3$Type",1595),y(1596,1,Rt,uTe),s.td=function(t){tkt(this.a,c(t,403))},S(Ct,"SelfLoopPortRestorer/lambda$4$Type",1596),y(794,1,Rt,AJ),s.td=function(t){pkt(c(t,101))},S(Ct,"SelfLoopPortRestorer/lambda$5$Type",794),y(1597,1,Ti,lEe),s.pf=function(t,n){t8t(c(t,37),n)},S(Ct,"SelfLoopPostProcessor",1597),y(1598,1,{},fEe),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"SelfLoopPostProcessor/lambda$0$Type",1598),y(1599,1,Rn,hEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SelfLoopPostProcessor/lambda$1$Type",1599),y(1600,1,Rn,dEe),s.Mb=function(t){return nr(c(t,10),(ye(),w4))},S(Ct,"SelfLoopPostProcessor/lambda$2$Type",1600),y(1601,1,Rt,gEe),s.td=function(t){u7t(c(t,10))},S(Ct,"SelfLoopPostProcessor/lambda$3$Type",1601),y(1602,1,{},bEe),s.Kb=function(t){return new ht(null,new bt(c(t,101).f,1))},S(Ct,"SelfLoopPostProcessor/lambda$4$Type",1602),y(1603,1,Rt,aTe),s.td=function(t){JPt(this.a,c(t,409))},S(Ct,"SelfLoopPostProcessor/lambda$5$Type",1603),y(1604,1,Rn,pEe),s.Mb=function(t){return!!c(t,101).i},S(Ct,"SelfLoopPostProcessor/lambda$6$Type",1604),y(1605,1,Rt,lTe),s.td=function(t){xvt(this.a,c(t,101))},S(Ct,"SelfLoopPostProcessor/lambda$7$Type",1605),y(1587,1,Ti,wEe),s.pf=function(t,n){Wxt(c(t,37),n)},S(Ct,"SelfLoopPreProcessor",1587),y(1588,1,{},mEe),s.Kb=function(t){return new ht(null,new bt(c(t,101).f,1))},S(Ct,"SelfLoopPreProcessor/lambda$0$Type",1588),y(1589,1,{},vEe),s.Kb=function(t){return c(t,409).a},S(Ct,"SelfLoopPreProcessor/lambda$1$Type",1589),y(1590,1,Rt,yEe),s.td=function(t){$2t(c(t,17))},S(Ct,"SelfLoopPreProcessor/lambda$2$Type",1590),y(1606,1,Ti,pke),s.pf=function(t,n){VDt(this,c(t,37),n)},S(Ct,"SelfLoopRouter",1606),y(1607,1,{},_Ee),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"SelfLoopRouter/lambda$0$Type",1607),y(1608,1,Rn,EEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SelfLoopRouter/lambda$1$Type",1608),y(1609,1,Rn,SEe),s.Mb=function(t){return nr(c(t,10),(ye(),w4))},S(Ct,"SelfLoopRouter/lambda$2$Type",1609),y(1610,1,{},PEe),s.Kb=function(t){return c(B(c(t,10),(ye(),w4)),403)},S(Ct,"SelfLoopRouter/lambda$3$Type",1610),y(1611,1,Rt,hOe),s.td=function(t){M5t(this.a,this.b,c(t,403))},S(Ct,"SelfLoopRouter/lambda$4$Type",1611),y(1612,1,Ti,MEe),s.pf=function(t,n){gNt(c(t,37),n)},S(Ct,"SemiInteractiveCrossMinProcessor",1612),y(1613,1,Rn,CEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$0$Type",1613),y(1614,1,Rn,IEe),s.Mb=function(t){return DRe(c(t,10))._b((Oe(),qw))},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$1$Type",1614),y(1615,1,Zn,TEe),s.ue=function(t,n){return HIt(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$2$Type",1615),y(1616,1,{},jEe),s.Ce=function(t,n){return q5t(c(t,10),c(n,10))},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$3$Type",1616),y(1618,1,Ti,AEe),s.pf=function(t,n){a$t(c(t,37),n)},S(Ct,"SortByInputModelProcessor",1618),y(1619,1,Rn,OEe),s.Mb=function(t){return c(t,11).g.c.length!=0},S(Ct,"SortByInputModelProcessor/lambda$0$Type",1619),y(1620,1,Rt,fTe),s.td=function(t){_kt(this.a,c(t,11))},S(Ct,"SortByInputModelProcessor/lambda$1$Type",1620),y(1693,803,{},IKe),s.Me=function(t){var n,i,r,o;switch(this.c=t,this.a.g){case 2:n=new Se,Di(si(new ht(null,new bt(this.c.a.b,16)),new VEe),new wOe(this,n)),zI(this,new REe),Zc(n,new xEe),n.c=oe(xt,xe,1,0,5,1),Di(si(new ht(null,new bt(this.c.a.b,16)),new LEe),new dTe(n)),zI(this,new NEe),Zc(n,new FEe),n.c=oe(xt,xe,1,0,5,1),i=X7e($Ke(x8(new ht(null,new bt(this.c.a.b,16)),new gTe(this))),new BEe),Di(new ht(null,new bt(this.c.a.a,16)),new gOe(i,n)),zI(this,new KEe),Zc(n,new DEe),n.c=oe(xt,xe,1,0,5,1);break;case 3:r=new Se,zI(this,new kEe),o=X7e($Ke(x8(new ht(null,new bt(this.c.a.b,16)),new hTe(this))),new $Ee),Di(si(new ht(null,new bt(this.c.a.b,16)),new qEe),new pOe(o,r)),zI(this,new HEe),Zc(r,new zEe),r.c=oe(xt,xe,1,0,5,1);break;default:throw V(new _Ae)}},s.b=0,S(Ki,"EdgeAwareScanlineConstraintCalculation",1693),y(1694,1,yf,kEe),s.Lb=function(t){return Q(c(t,57).g,145)},s.Fb=function(t){return this===t},s.Mb=function(t){return Q(c(t,57).g,145)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$0$Type",1694),y(1695,1,{},hTe),s.Fe=function(t){return eRt(this.a,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$1$Type",1695),y(1703,1,bD,dOe),s.Vd=function(){a6(this.a,this.b,-1)},s.b=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$10$Type",1703),y(1705,1,yf,REe),s.Lb=function(t){return Q(c(t,57).g,145)},s.Fb=function(t){return this===t},s.Mb=function(t){return Q(c(t,57).g,145)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$11$Type",1705),y(1706,1,Rt,xEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$12$Type",1706),y(1707,1,Rn,LEe),s.Mb=function(t){return Q(c(t,57).g,10)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$13$Type",1707),y(1709,1,Rt,dTe),s.td=function(t){IAt(this.a,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$14$Type",1709),y(1708,1,bD,_Oe),s.Vd=function(){a6(this.b,this.a,-1)},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$15$Type",1708),y(1710,1,yf,NEe),s.Lb=function(t){return Q(c(t,57).g,10)},s.Fb=function(t){return this===t},s.Mb=function(t){return Q(c(t,57).g,10)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$16$Type",1710),y(1711,1,Rt,FEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$17$Type",1711),y(1712,1,{},gTe),s.Fe=function(t){return tRt(this.a,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$18$Type",1712),y(1713,1,{},BEe),s.De=function(){return 0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$19$Type",1713),y(1696,1,{},$Ee),s.De=function(){return 0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$2$Type",1696),y(1715,1,Rt,gOe),s.td=function(t){uSt(this.a,this.b,c(t,307))},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$20$Type",1715),y(1714,1,bD,bOe),s.Vd=function(){NUe(this.a,this.b,-1)},s.b=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$21$Type",1714),y(1716,1,yf,KEe),s.Lb=function(t){return c(t,57),!0},s.Fb=function(t){return this===t},s.Mb=function(t){return c(t,57),!0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$22$Type",1716),y(1717,1,Rt,DEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$23$Type",1717),y(1697,1,Rn,qEe),s.Mb=function(t){return Q(c(t,57).g,10)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$3$Type",1697),y(1699,1,Rt,pOe),s.td=function(t){aSt(this.a,this.b,c(t,57))},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$4$Type",1699),y(1698,1,bD,EOe),s.Vd=function(){a6(this.b,this.a,-1)},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$5$Type",1698),y(1700,1,yf,HEe),s.Lb=function(t){return c(t,57),!0},s.Fb=function(t){return this===t},s.Mb=function(t){return c(t,57),!0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$6$Type",1700),y(1701,1,Rt,zEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$7$Type",1701),y(1702,1,Rn,VEe),s.Mb=function(t){return Q(c(t,57).g,145)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$8$Type",1702),y(1704,1,Rt,wOe),s.td=function(t){cIt(this.a,this.b,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$9$Type",1704),y(1521,1,Ti,DDe),s.pf=function(t,n){eKt(this,c(t,37),n)};var Mrt;S(Ki,"HorizontalGraphCompactor",1521),y(1522,1,{},bTe),s.Oe=function(t,n){var i,r,o;return Hie(t,n)||(i=Nm(t),r=Nm(n),i&&i.k==(Dt(),Bi)||r&&r.k==(Dt(),Bi))?0:(o=c(B(this.a.a,(ye(),Rv)),304),g3t(o,i?i.k:(Dt(),ur),r?r.k:(Dt(),ur)))},s.Pe=function(t,n){var i,r,o;return Hie(t,n)?1:(i=Nm(t),r=Nm(n),o=c(B(this.a.a,(ye(),Rv)),304),Fee(o,i?i.k:(Dt(),ur),r?r.k:(Dt(),ur)))},S(Ki,"HorizontalGraphCompactor/1",1522),y(1523,1,{},GEe),s.Ne=function(t,n){return HS(),t.a.i==0},S(Ki,"HorizontalGraphCompactor/lambda$0$Type",1523),y(1524,1,{},pTe),s.Ne=function(t,n){return F5t(this.a,t,n)},S(Ki,"HorizontalGraphCompactor/lambda$1$Type",1524),y(1664,1,{},h$e);var Crt,Irt;S(Ki,"LGraphToCGraphTransformer",1664),y(1672,1,Rn,UEe),s.Mb=function(t){return t!=null},S(Ki,"LGraphToCGraphTransformer/0methodref$nonNull$Type",1672),y(1665,1,{},WEe),s.Kb=function(t){return ka(),Ro(B(c(c(t,57).g,10),(ye(),Hn)))},S(Ki,"LGraphToCGraphTransformer/lambda$0$Type",1665),y(1666,1,{},YEe),s.Kb=function(t){return ka(),bHe(c(c(t,57).g,145))},S(Ki,"LGraphToCGraphTransformer/lambda$1$Type",1666),y(1675,1,Rn,XEe),s.Mb=function(t){return ka(),Q(c(t,57).g,10)},S(Ki,"LGraphToCGraphTransformer/lambda$10$Type",1675),y(1676,1,Rt,JEe),s.td=function(t){N5t(c(t,57))},S(Ki,"LGraphToCGraphTransformer/lambda$11$Type",1676),y(1677,1,Rn,QEe),s.Mb=function(t){return ka(),Q(c(t,57).g,145)},S(Ki,"LGraphToCGraphTransformer/lambda$12$Type",1677),y(1681,1,Rt,ZEe),s.td=function(t){qjt(c(t,57))},S(Ki,"LGraphToCGraphTransformer/lambda$13$Type",1681),y(1678,1,Rt,wTe),s.td=function(t){h2t(this.a,c(t,8))},s.a=0,S(Ki,"LGraphToCGraphTransformer/lambda$14$Type",1678),y(1679,1,Rt,mTe),s.td=function(t){g2t(this.a,c(t,110))},s.a=0,S(Ki,"LGraphToCGraphTransformer/lambda$15$Type",1679),y(1680,1,Rt,vTe),s.td=function(t){d2t(this.a,c(t,8))},s.a=0,S(Ki,"LGraphToCGraphTransformer/lambda$16$Type",1680),y(1682,1,{},e4e),s.Kb=function(t){return ka(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ki,"LGraphToCGraphTransformer/lambda$17$Type",1682),y(1683,1,Rn,t4e),s.Mb=function(t){return ka(),Kr(c(t,17))},S(Ki,"LGraphToCGraphTransformer/lambda$18$Type",1683),y(1684,1,Rt,yTe),s.td=function(t){WCt(this.a,c(t,17))},S(Ki,"LGraphToCGraphTransformer/lambda$19$Type",1684),y(1668,1,Rt,_Te),s.td=function(t){TPt(this.a,c(t,145))},S(Ki,"LGraphToCGraphTransformer/lambda$2$Type",1668),y(1685,1,{},n4e),s.Kb=function(t){return ka(),new ht(null,new bt(c(t,29).a,16))},S(Ki,"LGraphToCGraphTransformer/lambda$20$Type",1685),y(1686,1,{},i4e),s.Kb=function(t){return ka(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ki,"LGraphToCGraphTransformer/lambda$21$Type",1686),y(1687,1,{},r4e),s.Kb=function(t){return ka(),c(B(c(t,17),(ye(),bb)),15)},S(Ki,"LGraphToCGraphTransformer/lambda$22$Type",1687),y(1688,1,Rn,o4e),s.Mb=function(t){return p3t(c(t,15))},S(Ki,"LGraphToCGraphTransformer/lambda$23$Type",1688),y(1689,1,Rt,ETe),s.td=function(t){Vkt(this.a,c(t,15))},S(Ki,"LGraphToCGraphTransformer/lambda$24$Type",1689),y(1667,1,Rt,mOe),s.td=function(t){bMt(this.a,this.b,c(t,145))},S(Ki,"LGraphToCGraphTransformer/lambda$3$Type",1667),y(1669,1,{},c4e),s.Kb=function(t){return ka(),new ht(null,new bt(c(t,29).a,16))},S(Ki,"LGraphToCGraphTransformer/lambda$4$Type",1669),y(1670,1,{},s4e),s.Kb=function(t){return ka(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ki,"LGraphToCGraphTransformer/lambda$5$Type",1670),y(1671,1,{},u4e),s.Kb=function(t){return ka(),c(B(c(t,17),(ye(),bb)),15)},S(Ki,"LGraphToCGraphTransformer/lambda$6$Type",1671),y(1673,1,Rt,STe),s.td=function(t){SRt(this.a,c(t,15))},S(Ki,"LGraphToCGraphTransformer/lambda$8$Type",1673),y(1674,1,Rt,vOe),s.td=function(t){L2t(this.a,this.b,c(t,145))},S(Ki,"LGraphToCGraphTransformer/lambda$9$Type",1674),y(1663,1,{},a4e),s.Le=function(t){var n,i,r,o,u;for(this.a=t,this.d=new RN,this.c=oe(sde,xe,121,this.a.a.a.c.length,0,1),this.b=0,i=new q(this.a.a.a);i.a=z&&(Ee(u,Ce(v)),ne=g.Math.max(ne,ue[v-1]-A),l+=N,Y+=ue[v-1]-Y,A=ue[v-1],N=d[v]),N=g.Math.max(N,d[v]),++v;l+=N}L=g.Math.min(1/ne,1/n.b/l),L>r&&(r=L,i=u)}return i},s.Wf=function(){return!1},S(Pf,"MSDCutIndexHeuristic",802),y(1617,1,Ti,X4e),s.pf=function(t,n){t$t(c(t,37),n)},S(Pf,"SingleEdgeGraphWrapper",1617),y(227,22,{3:1,35:1,22:1,227:1},XS);var Iv,l4,f4,Dw,gP,Tv,h4=hn(lc,"CenterEdgeLabelPlacementStrategy",227,bn,hCt,z_t),Brt;y(422,22,{3:1,35:1,22:1,422:1},FZ);var j1e,oU,A1e=hn(lc,"ConstraintCalculationStrategy",422,bn,n6t,V_t),$rt;y(314,22,{3:1,35:1,22:1,314:1,246:1,234:1},fF),s.Kf=function(){return WGe(this)},s.Xf=function(){return WGe(this)};var nj,H2,O1e,D1e=hn(lc,"CrossingMinimizationStrategy",314,bn,W6t,G_t),Krt;y(337,22,{3:1,35:1,22:1,337:1},hF);var k1e,cU,bR,R1e=hn(lc,"CuttingStrategy",337,bn,Y6t,Y_t),qrt;y(335,22,{3:1,35:1,22:1,335:1,246:1,234:1},sC),s.Kf=function(){return RUe(this)},s.Xf=function(){return RUe(this)};var x1e,sU,bP,uU,pP,L1e=hn(lc,"CycleBreakingStrategy",335,bn,FMt,X_t),Hrt;y(419,22,{3:1,35:1,22:1,419:1},BZ);var pR,N1e,F1e=hn(lc,"DirectionCongruency",419,bn,t6t,J_t),zrt;y(450,22,{3:1,35:1,22:1,450:1},dF);var d4,aU,jv,Vrt=hn(lc,"EdgeConstraint",450,bn,X6t,Q_t),Grt;y(276,22,{3:1,35:1,22:1,276:1},JS);var lU,fU,hU,dU,wR,gU,B1e=hn(lc,"EdgeLabelSideSelection",276,bn,pCt,Z_t),Urt;y(479,22,{3:1,35:1,22:1,479:1},$Z);var mR,$1e,K1e=hn(lc,"EdgeStraighteningStrategy",479,bn,e6t,eEt),Wrt;y(274,22,{3:1,35:1,22:1,274:1},QS);var bU,q1e,H1e,vR,z1e,V1e,G1e=hn(lc,"FixedAlignment",274,bn,gCt,tEt),Yrt;y(275,22,{3:1,35:1,22:1,275:1},ZS);var U1e,W1e,Y1e,X1e,wP,J1e,Q1e=hn(lc,"GraphCompactionStrategy",275,bn,dCt,nEt),Xrt;y(256,22,{3:1,35:1,22:1,256:1},Op);var g4,yR,b4,Gu,mP,_R,p4,Av,ER,vP,pU=hn(lc,"GraphProperties",256,bn,tTt,iEt),Jrt;y(292,22,{3:1,35:1,22:1,292:1},gF);var ij,wU,mU,vU=hn(lc,"GreedySwitchType",292,bn,Z6t,rEt),Qrt;y(303,22,{3:1,35:1,22:1,303:1},bF);var z2,rj,Ov,Zrt=hn(lc,"InLayerConstraint",303,bn,Q6t,oEt),eot;y(420,22,{3:1,35:1,22:1,420:1},KZ);var yU,Z1e,ege=hn(lc,"InteractiveReferencePoint",420,bn,i6t,cEt),tot,tge,V2,W0,SR,nge,ige,PR,rge,oj,MR,yP,G2,kw,_U,CR,Zo,oge,Y0,Cc,EU,SU,cj,gb,X0,U2,cge,W2,sj,Rw,wl,da,PU,Dv,hc,Hn,sge,uge,age,lge,fge,MU,IR,As,J0,CU,Y2,uj,Ul,kv,w4,Rv,xv,m4,bb,hge,IU,TU,X2;y(163,22,{3:1,35:1,22:1,163:1},aC);var _P,K1,EP,xw,aj,dge=hn(lc,"LayerConstraint",163,bn,KMt,sEt),not;y(848,1,ca,rCe),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Cae),""),"Direction Congruency"),"Specifies how drawings of the same graph with different layout directions compare to each other: either a natural reading direction is preserved or the drawings are rotated versions of each other."),Sge),(yd(),Ai)),F1e),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Iae),""),"Feedback Edges"),"Whether feedback edges should be highlighted by routing around the nodes."),(Pt(),!1)),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,AD),""),"Interactive Reference Point"),"Determines which point of a node is considered by interactive layout phases."),jge),Ai),ege),nt(Tt)))),pr(t,AD,Tz,Uot),pr(t,AD,K6,Got),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Tae),""),"Merge Edges"),"Edges that have no ports are merged so they touch the connected nodes at the same points. When this option is disabled, one port is created for each edge directly connected to a node. When it is enabled, all such incoming edges share an input port, and all outgoing edges share an output port."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jae),""),"Merge Hierarchy-Crossing Edges"),"If hierarchical layout is active, hierarchy-crossing edges use as few hierarchical ports as possible. They are broken by the algorithm, with hierarchical ports inserted as required. Usually, one such port is created for each edge at each hierarchy crossing point. With this option set to true, we try to create as few hierarchical ports as possible in the process. In particular, all edges that form a hyperedge can share a port."),!0),Dr),Qi),nt(Tt)))),Ze(t,new ze(dyt(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Aae),""),"Allow Non-Flow Ports To Switch Sides"),"Specifies whether non-flow ports may switch sides if their node's port constraints are either FIXED_SIDE or FIXED_ORDER. A non-flow port is a port on a side that is not part of the currently configured layout flow. For instance, given a left-to-right layout direction, north and south ports would be considered non-flow ports. Further note that the underlying criterium whether to switch sides or not solely relies on the minimization of edge crossings. Hence, edge length and other aesthetics criteria are not addressed."),!1),Dr),Qi),nt(_b)),U(G(Re,1),we,2,6,["org.eclipse.elk.layered.northOrSouthPort"])))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Oae),""),"Port Sorting Strategy"),"Only relevant for nodes with FIXED_SIDE port constraints. Determines the way a node's ports are distributed on the sides of a node if their order is not prescribed. The option is set on parent nodes."),Nge),Ai),Vbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Dae),""),"Thoroughness"),"How much effort should be spent to produce a nice layout."),Ce(7)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,kae),""),"Add Unnecessary Bendpoints"),"Adds bend points even if an edge does not change direction. If true, each long edge dummy will contribute a bend point to its edges and hierarchy-crossing edges will always get a bend point where they cross hierarchy boundaries. By default, bend points are only added where an edge changes direction."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Rae),""),"Generate Position and Layer IDs"),"If enabled position id and layer id are generated, which are usually only used internally when setting the interactiveLayout option. This option should be specified on the root node."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Tz),"cycleBreaking"),"Cycle Breaking Strategy"),"Strategy for cycle breaking. Cycle breaking looks for cycles in the graph and determines which edges to reverse to break the cycles. Reversed edges will end up pointing to the opposite direction of regular edges (that is, reversed edges will point left if edges usually point right)."),Ege),Ai),L1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,TT),Qz),"Node Layering Strategy"),"Strategy for node layering."),Dge),Ai),kbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xae),Qz),"Layer Constraint"),"Determines a constraint on the placement of the node regarding the layering."),Age),Ai),dge),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Lae),Qz),"Layer Choice Constraint"),"Allows to set a constraint regarding the layer placement of a node. Let i be the value of teh constraint. Assumed the drawing has n layers and i < n. If set to i, it expresses that the node should be placed in i-th layer. Should i>=n be true then the node is placed in the last layer of the drawing. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Nae),Qz),"Layer ID"),"Layer identifier that was calculated by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jz),zQe),"Upper Bound On Width [MinWidth Layerer]"),"Defines a loose upper bound on the width of the MinWidth layerer. If set to '-1' multiple values are tested and the best result is selected."),Ce(4)),oc),$r),nt(Tt)))),pr(t,jz,TT,ect),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Az),zQe),"Upper Layer Estimation Scaling Factor [MinWidth Layerer]"),"Multiplied with Upper Bound On Width for defining an upper bound on the width of layers which haven't been determined yet, but whose maximum width had been (roughly) estimated by the MinWidth algorithm. Compensates for too high estimations. If set to '-1' multiple values are tested and the best result is selected."),Ce(2)),oc),$r),nt(Tt)))),pr(t,Az,TT,nct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Oz),VQe),"Node Promotion Strategy"),"Reduces number of dummy nodes after layering phase (if possible)."),Oge),Ai),qbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Dz),VQe),"Max Node Promotion Iterations"),"Limits the number of iterations for node promotion."),Ce(0)),oc),$r),nt(Tt)))),pr(t,Dz,Oz,null),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,kz),"layering.coffmanGraham"),"Layer Bound"),"The maximum number of nodes allowed per layer."),Ce(Fn)),oc),$r),nt(Tt)))),pr(t,kz,TT,Yot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,K6),jT),"Crossing Minimization Strategy"),"Strategy for crossing minimization."),_ge),Ai),D1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Fae),jT),"Force Node Model Order"),"The node order given by the model does not change to produce a better layout. E.g. if node A is before node B in the model this is not changed during crossing minimization. This assumes that the node model order is already respected before crossing minimization. This can be achieved by setting considerModelOrder.strategy to NODES_AND_EDGES."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Rz),jT),"Hierarchical Sweepiness"),"How likely it is to use cross-hierarchy (1) vs bottom-up (-1)."),.1),To),mr),nt(Tt)))),pr(t,Rz,HD,_ot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xz),jT),"Semi-Interactive Crossing Minimization"),"Preserves the order of nodes within a layer but still minimizes crossings between edges connecting long edge dummies. Derives the desired order from positions specified by the 'org.eclipse.elk.position' layout option. Requires a crossing minimization strategy that is able to process 'in-layer' constraints."),!1),Dr),Qi),nt(Tt)))),pr(t,xz,K6,Mot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Bae),jT),"Position Choice Constraint"),"Allows to set a constraint regarding the position placement of a node in a layer. Assumed the layer in which the node placed includes n other nodes and i < n. If set to i, it expresses that the node should be placed at the i-th position. Should i>=n be true then the node is placed at the last position in the layer. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,$ae),jT),"Position ID"),"Position within a layer that was determined by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Kae),GQe),"Greedy Switch Activation Threshold"),"By default it is decided automatically if the greedy switch is activated or not. The decision is based on whether the size of the input graph (without dummy nodes) is smaller than the value of this option. A '0' enforces the activation."),Ce(40)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Lz),GQe),"Greedy Switch Crossing Minimization"),"Greedy Switch strategy for crossing minimization. The greedy switch heuristic is executed after the regular crossing minimization as a post-processor. Note that if 'hierarchyHandling' is set to 'INCLUDE_CHILDREN', the 'greedySwitchHierarchical.type' option must be used."),yge),Ai),vU),nt(Tt)))),pr(t,Lz,K6,vot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,OD),"crossingMinimization.greedySwitchHierarchical"),"Greedy Switch Crossing Minimization (hierarchical)"),"Activates the greedy switch heuristic in case hierarchical layout is used. The differences to the non-hierarchical case (see 'greedySwitch.type') are: 1) greedy switch is inactive by default, 3) only the option value set on the node at which hierarchical layout starts is relevant, and 2) if it's activated by the user, it properly addresses hierarchy-crossing edges."),vge),Ai),vU),nt(Tt)))),pr(t,OD,K6,pot),pr(t,OD,HD,wot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,bv),UQe),"Node Placement Strategy"),"Strategy for node placement."),Lge),Ai),Nbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,DD),UQe),"Favor Straight Edges Over Balancing"),"Favor straight edges over a balanced node placement. The default behavior is determined automatically based on the used 'edgeRouting'. For an orthogonal style it is set to true, for all other styles to false."),Dr),Qi),nt(Tt)))),pr(t,DD,bv,dct),pr(t,DD,bv,gct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Nz),WQe),"BK Edge Straightening"),"Specifies whether the Brandes Koepf node placer tries to increase the number of straight edges at the expense of diagram size. There is a subtle difference to the 'favorStraightEdges' option, which decides whether a balanced placement of the nodes is desired, or not. In bk terms this means combining the four alignments into a single balanced one, or not. This option on the other hand tries to straighten additional edges during the creation of each of the four alignments."),kge),Ai),K1e),nt(Tt)))),pr(t,Nz,bv,act),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Fz),WQe),"BK Fixed Alignment"),"Tells the BK node placer to use a certain alignment (out of its four) instead of the one producing the smallest height, or the combination of all four."),Rge),Ai),G1e),nt(Tt)))),pr(t,Fz,bv,fct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Bz),"nodePlacement.linearSegments"),"Linear Segments Deflection Dampening"),"Dampens the movement of nodes to keep the diagram from getting too large."),.3),To),mr),nt(Tt)))),pr(t,Bz,bv,pct),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,$z),"nodePlacement.networkSimplex"),"Node Flexibility"),"Aims at shorter and straighter edges. Two configurations are possible: (a) allow ports to move freely on the side they are assigned to (the order is always defined beforehand), (b) additionally allow to enlarge a node wherever it helps. If this option is not configured for a node, the 'nodeFlexibility.default' value is used, which is specified for the node's parent."),Ai),JU),nt(ar)))),pr(t,$z,bv,yct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Kz),"nodePlacement.networkSimplex.nodeFlexibility"),"Node Flexibility Default"),"Default value of the 'nodeFlexibility' option for the children of a hierarchical node."),xge),Ai),JU),nt(Tt)))),pr(t,Kz,bv,vct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qae),YQe),"Self-Loop Distribution"),"Alter the distribution of the loops around the node. It only takes effect for PortConstraints.FREE."),Cge),Ai),Wbe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Hae),YQe),"Self-Loop Ordering"),"Alter the ordering of the loops they can either be stacked or sequenced. It only takes effect for PortConstraints.FREE."),Ige),Ai),Ybe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,kD),"edgeRouting.splines"),"Spline Routing Mode"),"Specifies the way control points are assembled for each individual edge. CONSERVATIVE ensures that edges are properly routed around the nodes but feels rather orthogonal at times. SLOPPY uses fewer control points to obtain curvier edge routes but may result in edges overlapping nodes."),Tge),Ai),Jbe),nt(Tt)))),pr(t,kD,AT,Lot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,RD),"edgeRouting.splines.sloppy"),"Sloppy Spline Layer Spacing Factor"),"Spacing factor for routing area between layers when using sloppy spline routing."),.2),To),mr),nt(Tt)))),pr(t,RD,AT,Fot),pr(t,RD,kD,Bot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qz),"edgeRouting.polyline"),"Sloped Edge Zone Width"),"Width of the strip to the left and to the right of each layer where the polyline edge router is allowed to refrain from ensuring that edges are routed horizontally. This prevents awkward bend points for nodes that extent almost to the edge of their layer."),2),To),mr),nt(Tt)))),pr(t,qz,AT,Dot),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,zae),Hl),"Spacing Base Value"),"An optional base value for all other layout options of the 'spacing' group. It can be used to conveniently alter the overall 'spaciousness' of the drawing. Whenever an explicit value is set for the other layout options, this base value will have no effect. The base value is not inherited, i.e. it must be set for each hierarchical node."),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Vae),Hl),"Edge Node Between Layers Spacing"),"The spacing to be preserved between nodes and edges that are routed next to the node's layer. For the spacing between nodes and edges that cross the node's layer 'spacing.edgeNode' is used."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Gae),Hl),"Edge Edge Between Layer Spacing"),"Spacing to be preserved between pairs of edges that are routed between the same pair of layers. Note that 'spacing.edgeEdge' is used for the spacing between pairs of edges crossing the same layer."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Uae),Hl),"Node Node Between Layers Spacing"),"The spacing to be preserved between any pair of nodes of two adjacent layers. Note that 'spacing.nodeNode' is used for the spacing between nodes within the layer itself."),20),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Wae),ile),"Direction Priority"),"Defines how important it is to have a certain edge point into the direction of the overall layout. This option is evaluated during the cycle breaking phase."),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Yae),ile),"Shortness Priority"),"Defines how important it is to keep an edge as short as possible. This option is evaluated during the layering phase."),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Xae),ile),"Straightness Priority"),"Defines how important it is to keep an edge straight, i.e. aligned with one of the two axes. This option is evaluated during node placement."),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Hz),rle),fQe),"Tries to further compact components (disconnected sub-graphs)."),!1),Dr),Qi),nt(Tt)))),pr(t,Hz,L6,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Jae),XQe),"Post Compaction Strategy"),JQe),bge),Ai),Q1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Qae),XQe),"Post Compaction Constraint Calculation"),JQe),gge),Ai),A1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xD),ole),"High Degree Node Treatment"),"Makes room around high degree nodes to place leafs and trees."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,zz),ole),"High Degree Node Threshold"),"Whether a node is considered to have a high degree."),Ce(16)),oc),$r),nt(Tt)))),pr(t,zz,xD,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Vz),ole),"High Degree Node Maximum Tree Height"),"Maximum height of a subtree connected to a high degree node to be moved to separate layers."),Ce(5)),oc),$r),nt(Tt)))),pr(t,Vz,xD,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Hh),cle),"Graph Wrapping Strategy"),"For certain graphs and certain prescribed drawing areas it may be desirable to split the laid out graph into chunks that are placed side by side. The edges that connect different chunks are 'wrapped' around from the end of one chunk to the start of the other chunk. The points between the chunks are referred to as 'cuts'."),$ge),Ai),t0e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,LD),cle),"Additional Wrapped Edges Spacing"),"To visually separate edges that are wrapped from regularly routed edges an additional spacing value can be specified in form of this layout option. The spacing is added to the regular edgeNode spacing."),10),To),mr),nt(Tt)))),pr(t,LD,Hh,kct),pr(t,LD,Hh,Rct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ND),cle),"Correction Factor for Wrapping"),"At times and for certain types of graphs the executed wrapping may produce results that are consistently biased in the same fashion: either wrapping to often or to rarely. This factor can be used to correct the bias. Internally, it is simply multiplied with the 'aspect ratio' layout option."),1),To),mr),nt(Tt)))),pr(t,ND,Hh,Lct),pr(t,ND,Hh,Nct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,q6),QQe),"Cutting Strategy"),"The strategy by which the layer indexes are determined at which the layering crumbles into chunks."),Bge),Ai),R1e),nt(Tt)))),pr(t,q6,Hh,Hct),pr(t,q6,Hh,zct),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Gz),QQe),"Manually Specified Cuts"),"Allows the user to specify her own cuts for a certain graph."),Yl),Vu),nt(Tt)))),pr(t,Gz,q6,Bct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Uz),"wrapping.cutting.msd"),"MSD Freedom"),"The MSD cutting strategy starts with an initial guess on the number of chunks the graph should be split into. The freedom specifies how much the strategy may deviate from this guess. E.g. if an initial number of 3 is computed, a freedom of 1 allows 2, 3, and 4 cuts."),Fge),oc),$r),nt(Tt)))),pr(t,Uz,q6,Kct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,FD),ZQe),"Validification Strategy"),"When wrapping graphs, one can specify indices that are not allowed as split points. The validification strategy makes sure every computed split point is allowed."),Kge),Ai),e0e),nt(Tt)))),pr(t,FD,Hh,nst),pr(t,FD,Hh,ist),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,BD),ZQe),"Valid Indices for Wrapping"),null),Yl),Vu),nt(Tt)))),pr(t,BD,Hh,Zct),pr(t,BD,Hh,est),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,$D),sle),"Improve Cuts"),"For general graphs it is important that not too many edges wrap backwards. Thus a compromise between evenly-distributed cuts and the total number of cut edges is sought."),!0),Dr),Qi),nt(Tt)))),pr(t,$D,Hh,Wct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,KD),sle),"Distance Penalty When Improving Cuts"),null),2),To),mr),nt(Tt)))),pr(t,KD,Hh,Gct),pr(t,KD,$D,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Wz),sle),"Improve Wrapped Edges"),"The initial wrapping is performed in a very simple way. As a consequence, edges that wrap from one chunk to another may be unnecessarily long. Activating this option tries to shorten such edges."),!0),Dr),Qi),nt(Tt)))),pr(t,Wz,Hh,Xct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Zae),Zz),"Edge Label Side Selection"),"Method to decide on edge label sides."),Mge),Ai),B1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ele),Zz),"Edge Center Label Placement Strategy"),"Determines in which layer center labels of long edges should be placed."),Pge),Ai),h4),ui(Tt,U(G(Dd,1),_e,175,0,[Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qD),OT),"Consider Model Order"),"Preserves the order of nodes and edges in the model file if this does not lead to additional edge crossings. Depending on the strategy this is not always possible since the node and edge order might be conflicting."),mge),Ai),zbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,tle),OT),"No Model Order"),"Set on a node to not set a model order for this node even though it is a real node."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Yz),OT),"Consider Model Order for Components"),"If set to NONE the usual ordering strategy (by cumulative node priority and size of nodes) is used. INSIDE_PORT_SIDES orders the components with external ports only inside the groups with the same port side. FORCE_MODEL_ORDER enforces the mode order on components. This option might produce bad alignments and sub optimal drawings in terms of used area since the ordering should be respected."),pge),Ai),Lde),nt(Tt)))),pr(t,Yz,L6,null),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,nle),OT),"Long Edge Ordering Strategy"),"Indicates whether long edges are sorted under, over, or equal to nodes that have no connection to a previous layer in a left-to-right or right-to-left layout. Under and over changes to right and left in a vertical layout."),wge),Ai),xbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Xz),OT),"Crossing Counter Node Order Influence"),"Indicates with what percentage (1 for 100%) violations of the node model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal node order. Defaults to no influence (0)."),0),To),mr),nt(Tt)))),pr(t,Xz,qD,null),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Jz),OT),"Crossing Counter Port Order Influence"),"Indicates with what percentage (1 for 100%) violations of the port model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal port order. Defaults to no influence (0)."),0),To),mr),nt(Tt)))),pr(t,Jz,qD,null),pJe((new sCe,t))};var iot,rot,oot,gge,cot,bge,sot,pge,uot,aot,lot,wge,fot,hot,mge,dot,got,bot,vge,pot,wot,mot,yge,vot,yot,_ot,Eot,Sot,Pot,Mot,Cot,_ge,Iot,Ege,Tot,Sge,jot,Pge,Aot,Mge,Oot,Dot,kot,Cge,Rot,Ige,xot,Tge,Lot,Not,Fot,Bot,$ot,Kot,qot,Hot,zot,Vot,jge,Got,Uot,Wot,Yot,Xot,Jot,Age,Qot,Zot,ect,tct,nct,ict,rct,Oge,oct,Dge,cct,sct,uct,kge,act,lct,Rge,fct,hct,dct,gct,bct,pct,wct,mct,xge,vct,yct,_ct,Lge,Ect,Nge,Sct,Pct,Mct,Cct,Ict,Tct,jct,Act,Oct,Dct,kct,Rct,xct,Lct,Nct,Fct,Bct,$ct,Fge,Kct,qct,Bge,Hct,zct,Vct,Gct,Uct,Wct,Yct,Xct,Jct,$ge,Qct,Zct,est,tst,Kge,nst,ist;S(lc,"LayeredMetaDataProvider",848),y(986,1,ca,sCe),s.Qe=function(t){pJe(t)};var Of,jU,TR,SP,jR,qge,AR,J2,OR,Hge,zge,AU,q1,OU,Lw,Vge,lj,DU,Gge,rst,DR,kU,PP,Nw,ost,Pu,Uge,Wge,kR,RU,Df,RR,zh,Yge,Xge,Jge,xU,LU,Qge,Id,NU,Zge,Fw,ebe,tbe,nbe,xR,Bw,pb,ibe,rbe,yo,obe,cst,zc,LR,cbe,sbe,ube,FU,abe,NR,lbe,fbe,FR,Q0,hbe,BU,MP,dbe,Z0,CP,BR,wb,$U,v4,$R,mb,gbe,bbe,pbe,y4,wbe,sst,ust,ast,lst,ep,$w,ji,Td,fst,Kw,mbe,_4,vbe,qw,hst,E4,ybe,Q2,dst,gst,fj,KU,_be,hj,za,Lv,Z2,tp,vb,KR,Hw,qU,S4,P4,np,Nv,HU,dj,IP,TP,zU,Ebe,Sbe,Pbe,Mbe,VU,Cbe,Ibe,Tbe,jbe,GU,qR;S(lc,"LayeredOptions",986),y(987,1,{},Q4e),s.$e=function(){var t;return t=new CAe,t},s._e=function(t){},S(lc,"LayeredOptions/LayeredFactory",987),y(1372,1,{}),s.a=0;var bst;S(fc,"ElkSpacings/AbstractSpacingsBuilder",1372),y(779,1372,{},moe);var HR,pst;S(lc,"LayeredSpacings/LayeredSpacingsBuilder",779),y(313,22,{3:1,35:1,22:1,313:1,246:1,234:1},e5),s.Kf=function(){return YUe(this)},s.Xf=function(){return YUe(this)};var UU,Abe,Obe,zR,WU,Dbe,kbe=hn(lc,"LayeringStrategy",313,bn,bCt,uEt),wst;y(378,22,{3:1,35:1,22:1,378:1},pF);var YU,Rbe,VR,xbe=hn(lc,"LongEdgeOrderingStrategy",378,bn,U6t,aEt),mst;y(197,22,{3:1,35:1,22:1,197:1},I9);var Fv,Bv,GR,XU,JU=hn(lc,"NodeFlexibility",197,bn,eMt,lEt),vst;y(315,22,{3:1,35:1,22:1,315:1,246:1,234:1},uC),s.Kf=function(){return kUe(this)},s.Xf=function(){return kUe(this)};var jP,QU,ZU,AP,Lbe,Nbe=hn(lc,"NodePlacementStrategy",315,bn,NMt,pEt),yst;y(260,22,{3:1,35:1,22:1,260:1},Ky);var Fbe,gj,Bbe,$be,bj,Kbe,UR,WR,qbe=hn(lc,"NodePromotionStrategy",260,bn,gIt,hEt),_st;y(339,22,{3:1,35:1,22:1,339:1},wF);var Hbe,H1,eW,zbe=hn(lc,"OrderingStrategy",339,bn,tPt,dEt),Est;y(421,22,{3:1,35:1,22:1,421:1},qZ);var tW,nW,Vbe=hn(lc,"PortSortingStrategy",421,bn,r6t,gEt),Sst;y(452,22,{3:1,35:1,22:1,452:1},mF);var Os,Fc,OP,Pst=hn(lc,"PortType",452,bn,ePt,fEt),Mst;y(375,22,{3:1,35:1,22:1,375:1},vF);var Gbe,iW,Ube,Wbe=hn(lc,"SelfLoopDistributionStrategy",375,bn,nPt,bEt),Cst;y(376,22,{3:1,35:1,22:1,376:1},HZ);var pj,rW,Ybe=hn(lc,"SelfLoopOrderingStrategy",376,bn,Z5t,wEt),Ist;y(304,1,{304:1},mXe),S(lc,"Spacings",304),y(336,22,{3:1,35:1,22:1,336:1},yF);var oW,Xbe,DP,Jbe=hn(lc,"SplineRoutingMode",336,bn,rPt,mEt),Tst;y(338,22,{3:1,35:1,22:1,338:1},_F);var cW,Qbe,Zbe,e0e=hn(lc,"ValidifyStrategy",338,bn,oPt,vEt),jst;y(377,22,{3:1,35:1,22:1,377:1},EF);var zw,sW,M4,t0e=hn(lc,"WrappingStrategy",377,bn,iPt,yEt),Ast;y(1383,1,Sc,uCe),s.Yf=function(t){return c(t,37),Ost},s.pf=function(t,n){Y$t(this,c(t,37),n)};var Ost;S(GD,"DepthFirstCycleBreaker",1383),y(782,1,Sc,nne),s.Yf=function(t){return c(t,37),Dst},s.pf=function(t,n){UHt(this,c(t,37),n)},s.Zf=function(t){return c(Ne(t,S7(this.d,t.c.length)),10)};var Dst;S(GD,"GreedyCycleBreaker",782),y(1386,782,Sc,o7e),s.Zf=function(t){var n,i,r,o;for(o=null,n=Fn,r=new q(t);r.a1&&(Be(Fe(B(Nr((pt(0,t.c.length),c(t.c[0],10))),(Oe(),Lw))))?HUe(t,this.d,c(this,660)):(st(),cr(t,this.d)),aqe(this.e,t))},s.Sf=function(t,n,i,r){var o,u,a,l,d,p,v;for(n!=RRe(i,t.length)&&(u=t[n-(i?1:-1)],Iie(this.f,u,i?(Zr(),Fc):(Zr(),Os))),o=t[n][0],v=!r||o.k==(Dt(),Bi),p=kl(t[n]),this.ag(p,v,!1,i),a=0,d=new q(p);d.a"),t0?n$(this.a,t[n-1],t[n]):!i&&n1&&(Be(Fe(B(Nr((pt(0,t.c.length),c(t.c[0],10))),(Oe(),Lw))))?HUe(t,this.d,this):(st(),cr(t,this.d)),Be(Fe(B(Nr((pt(0,t.c.length),c(t.c[0],10))),Lw)))||aqe(this.e,t))},S(_s,"ModelOrderBarycenterHeuristic",660),y(1803,1,Zn,HTe),s.ue=function(t,n){return akt(this.a,c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_s,"ModelOrderBarycenterHeuristic/lambda$0$Type",1803),y(1403,1,Sc,pCe),s.Yf=function(t){var n;return c(t,37),n=$9(Vst),Nn(n,(Hr(),Hc),(Jr(),iR)),n},s.pf=function(t,n){W5t((c(t,37),n))};var Vst;S(_s,"NoCrossingMinimizer",1403),y(796,402,Hle,hZ),s.$f=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L;switch(A=this.g,i.g){case 1:{for(o=0,u=0,v=new q(t.j);v.a1&&(o.j==(Ie(),jt)?this.b[t]=!0:o.j==Mt&&t>0&&(this.b[t-1]=!0))},s.f=0,S(eh,"AllCrossingsCounter",1798),y(587,1,{},BO),s.b=0,s.d=0,S(eh,"BinaryIndexedTree",587),y(524,1,{},IC);var r0e,XR;S(eh,"CrossingsCounter",524),y(1906,1,Zn,zTe),s.ue=function(t,n){return J4t(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$0$Type",1906),y(1907,1,Zn,VTe),s.ue=function(t,n){return Q4t(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$1$Type",1907),y(1908,1,Zn,GTe),s.ue=function(t,n){return Z4t(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$2$Type",1908),y(1909,1,Zn,UTe),s.ue=function(t,n){return eSt(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$3$Type",1909),y(1910,1,Rt,WTe),s.td=function(t){xCt(this.a,c(t,11))},S(eh,"CrossingsCounter/lambda$4$Type",1910),y(1911,1,Rn,YTe),s.Mb=function(t){return Yyt(this.a,c(t,11))},S(eh,"CrossingsCounter/lambda$5$Type",1911),y(1912,1,Rt,XTe),s.td=function(t){t7e(this,t)},S(eh,"CrossingsCounter/lambda$6$Type",1912),y(1913,1,Rt,IOe),s.td=function(t){var n;m_(),w1(this.b,(n=this.a,c(t,11),n))},S(eh,"CrossingsCounter/lambda$7$Type",1913),y(826,1,yf,NJ),s.Lb=function(t){return m_(),nr(c(t,11),(ye(),As))},s.Fb=function(t){return this===t},s.Mb=function(t){return m_(),nr(c(t,11),(ye(),As))},S(eh,"CrossingsCounter/lambda$8$Type",826),y(1905,1,{},JTe),S(eh,"HyperedgeCrossingsCounter",1905),y(467,1,{35:1,467:1},wke),s.wd=function(t){return D9t(this,c(t,467))},s.b=0,s.c=0,s.e=0,s.f=0;var Tzt=S(eh,"HyperedgeCrossingsCounter/Hyperedge",467);y(362,1,{35:1,362:1},N8),s.wd=function(t){return Axt(this,c(t,362))},s.b=0,s.c=0;var Gst=S(eh,"HyperedgeCrossingsCounter/HyperedgeCorner",362);y(523,22,{3:1,35:1,22:1,523:1},zZ);var RP,xP,Ust=hn(eh,"HyperedgeCrossingsCounter/HyperedgeCorner/Type",523,bn,o6t,EEt),Wst;y(1405,1,Sc,cCe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Yst:null},s.pf=function(t,n){JOt(this,c(t,37),n)};var Yst;S(io,"InteractiveNodePlacer",1405),y(1406,1,Sc,oCe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Xst:null},s.pf=function(t,n){x8t(this,c(t,37),n)};var Xst,JR,QR;S(io,"LinearSegmentsNodePlacer",1406),y(257,1,{35:1,257:1},qQ),s.wd=function(t){return syt(this,c(t,257))},s.Fb=function(t){var n;return Q(t,257)?(n=c(t,257),this.b==n.b):!1},s.Hb=function(){return this.b},s.Ib=function(){return"ls"+C1(this.e)},s.a=0,s.b=0,s.c=-1,s.d=-1,s.g=0;var Jst=S(io,"LinearSegmentsNodePlacer/LinearSegment",257);y(1408,1,Sc,zRe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Qst:null},s.pf=function(t,n){BHt(this,c(t,37),n)},s.b=0,s.g=0;var Qst;S(io,"NetworkSimplexPlacer",1408),y(1427,1,Zn,oSe),s.ue=function(t,n){return Uc(c(t,19).a,c(n,19).a)},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(io,"NetworkSimplexPlacer/0methodref$compare$Type",1427),y(1429,1,Zn,cSe),s.ue=function(t,n){return Uc(c(t,19).a,c(n,19).a)},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(io,"NetworkSimplexPlacer/1methodref$compare$Type",1429),y(649,1,{649:1},TOe);var jzt=S(io,"NetworkSimplexPlacer/EdgeRep",649);y(401,1,{401:1},Rne),s.b=!1;var Azt=S(io,"NetworkSimplexPlacer/NodeRep",401);y(508,12,{3:1,4:1,20:1,28:1,52:1,12:1,14:1,15:1,54:1,508:1},NAe),S(io,"NetworkSimplexPlacer/Path",508),y(1409,1,{},sSe),s.Kb=function(t){return c(t,17).d.i.k},S(io,"NetworkSimplexPlacer/Path/lambda$0$Type",1409),y(1410,1,Rn,uSe),s.Mb=function(t){return c(t,267)==(Dt(),ur)},S(io,"NetworkSimplexPlacer/Path/lambda$1$Type",1410),y(1411,1,{},aSe),s.Kb=function(t){return c(t,17).d.i},S(io,"NetworkSimplexPlacer/Path/lambda$2$Type",1411),y(1412,1,Rn,QTe),s.Mb=function(t){return tke($He(c(t,10)))},S(io,"NetworkSimplexPlacer/Path/lambda$3$Type",1412),y(1413,1,Rn,lSe),s.Mb=function(t){return $4t(c(t,11))},S(io,"NetworkSimplexPlacer/lambda$0$Type",1413),y(1414,1,Rt,jOe),s.td=function(t){N2t(this.a,this.b,c(t,11))},S(io,"NetworkSimplexPlacer/lambda$1$Type",1414),y(1423,1,Rt,ZTe),s.td=function(t){iRt(this.a,c(t,17))},S(io,"NetworkSimplexPlacer/lambda$10$Type",1423),y(1424,1,{},fSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$11$Type",1424),y(1425,1,Rt,eje),s.td=function(t){ZNt(this.a,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$12$Type",1425),y(1426,1,{},hSe),s.Kb=function(t){return hu(),Ce(c(t,121).e)},S(io,"NetworkSimplexPlacer/lambda$13$Type",1426),y(1428,1,{},dSe),s.Kb=function(t){return hu(),Ce(c(t,121).e)},S(io,"NetworkSimplexPlacer/lambda$15$Type",1428),y(1430,1,Rn,gSe),s.Mb=function(t){return hu(),c(t,401).c.k==(Dt(),Ui)},S(io,"NetworkSimplexPlacer/lambda$17$Type",1430),y(1431,1,Rn,bSe),s.Mb=function(t){return hu(),c(t,401).c.j.c.length>1},S(io,"NetworkSimplexPlacer/lambda$18$Type",1431),y(1432,1,Rt,Jxe),s.td=function(t){HAt(this.c,this.b,this.d,this.a,c(t,401))},s.c=0,s.d=0,S(io,"NetworkSimplexPlacer/lambda$19$Type",1432),y(1415,1,{},pSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$2$Type",1415),y(1433,1,Rt,tje),s.td=function(t){x2t(this.a,c(t,11))},s.a=0,S(io,"NetworkSimplexPlacer/lambda$20$Type",1433),y(1434,1,{},wSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$21$Type",1434),y(1435,1,Rt,nje),s.td=function(t){X2t(this.a,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$22$Type",1435),y(1436,1,Rn,mSe),s.Mb=function(t){return tke(t)},S(io,"NetworkSimplexPlacer/lambda$23$Type",1436),y(1437,1,{},vSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$24$Type",1437),y(1438,1,Rn,ije),s.Mb=function(t){return n2t(this.a,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$25$Type",1438),y(1439,1,Rt,AOe),s.td=function(t){Mkt(this.a,this.b,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$26$Type",1439),y(1440,1,Rn,ySe),s.Mb=function(t){return hu(),!Kr(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$27$Type",1440),y(1441,1,Rn,_Se),s.Mb=function(t){return hu(),!Kr(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$28$Type",1441),y(1442,1,{},rje),s.Ce=function(t,n){return U2t(this.a,c(t,29),c(n,29))},S(io,"NetworkSimplexPlacer/lambda$29$Type",1442),y(1416,1,{},ESe),s.Kb=function(t){return hu(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(io,"NetworkSimplexPlacer/lambda$3$Type",1416),y(1417,1,Rn,SSe),s.Mb=function(t){return hu(),RPt(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$4$Type",1417),y(1418,1,Rt,oje),s.td=function(t){QBt(this.a,c(t,17))},S(io,"NetworkSimplexPlacer/lambda$5$Type",1418),y(1419,1,{},PSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$6$Type",1419),y(1420,1,Rn,MSe),s.Mb=function(t){return hu(),c(t,10).k==(Dt(),Ui)},S(io,"NetworkSimplexPlacer/lambda$7$Type",1420),y(1421,1,{},CSe),s.Kb=function(t){return hu(),new ht(null,new t0(new Kt(Ht(xh(c(t,10)).a.Kc(),new j))))},S(io,"NetworkSimplexPlacer/lambda$8$Type",1421),y(1422,1,Rn,ISe),s.Mb=function(t){return hu(),R4t(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$9$Type",1422),y(1404,1,Sc,ECe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Zst:null},s.pf=function(t,n){k$t(c(t,37),n)};var Zst;S(io,"SimpleNodePlacer",1404),y(180,1,{180:1},cv),s.Ib=function(){var t;return t="",this.c==(gf(),ip)?t+=A2:this.c==jd&&(t+=j2),this.o==(Al(),yb)?t+=uz:this.o==Wl?t+="UP":t+="BALANCED",t},S(R1,"BKAlignedLayout",180),y(516,22,{3:1,35:1,22:1,516:1},GZ);var jd,ip,eut=hn(R1,"BKAlignedLayout/HDirection",516,bn,s6t,SEt),tut;y(515,22,{3:1,35:1,22:1,515:1},VZ);var yb,Wl,nut=hn(R1,"BKAlignedLayout/VDirection",515,bn,u6t,PEt),iut;y(1634,1,{},OOe),S(R1,"BKAligner",1634),y(1637,1,{},lVe),S(R1,"BKCompactor",1637),y(654,1,{654:1},TSe),s.a=0,S(R1,"BKCompactor/ClassEdge",654),y(458,1,{458:1},xAe),s.a=null,s.b=0,S(R1,"BKCompactor/ClassNode",458),y(1407,1,Sc,i7e),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?rut:null},s.pf=function(t,n){ezt(this,c(t,37),n)},s.d=!1;var rut;S(R1,"BKNodePlacer",1407),y(1635,1,{},jSe),s.d=0,S(R1,"NeighborhoodInformation",1635),y(1636,1,Zn,cje),s.ue=function(t,n){return sIt(this,c(t,46),c(n,46))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(R1,"NeighborhoodInformation/NeighborComparator",1636),y(808,1,{}),S(R1,"ThresholdStrategy",808),y(1763,808,{},$Ae),s.bg=function(t,n,i){return this.a.o==(Al(),Wl)?Ii:$i},s.cg=function(){},S(R1,"ThresholdStrategy/NullThresholdStrategy",1763),y(579,1,{579:1},DOe),s.c=!1,s.d=!1,S(R1,"ThresholdStrategy/Postprocessable",579),y(1764,808,{},KAe),s.bg=function(t,n,i){var r,o,u;return o=n==i,r=this.a.a[i.p]==n,o||r?(u=t,this.a.c==(gf(),ip)?(o&&(u=uH(this,n,!0)),!isNaN(u)&&!isFinite(u)&&r&&(u=uH(this,i,!1))):(o&&(u=uH(this,n,!0)),!isNaN(u)&&!isFinite(u)&&r&&(u=uH(this,i,!1))),u):t},s.cg=function(){for(var t,n,i,r,o;this.d.b!=0;)o=c(P6t(this.d),579),r=OYe(this,o),r.a&&(t=r.a,i=Be(this.a.f[this.a.g[o.b.p].p]),!(!i&&!Kr(t)&&t.c.i.c==t.d.i.c)&&(n=FUe(this,o),n||l2t(this.e,o)));for(;this.e.a.c.length!=0;)FUe(this,c(Wqe(this.e),579))},S(R1,"ThresholdStrategy/SimpleThresholdStrategy",1764),y(635,1,{635:1,246:1,234:1},ASe),s.Kf=function(){return rqe(this)},s.Xf=function(){return rqe(this)};var uW;S(rV,"EdgeRouterFactory",635),y(1458,1,Sc,SCe),s.Yf=function(t){return DNt(c(t,37))},s.pf=function(t,n){$$t(c(t,37),n)};var out,cut,sut,uut,aut,o0e,lut,fut;S(rV,"OrthogonalEdgeRouter",1458),y(1451,1,Sc,r7e),s.Yf=function(t){return n7t(c(t,37))},s.pf=function(t,n){cHt(this,c(t,37),n)};var hut,dut,gut,but,mj,put;S(rV,"PolylineEdgeRouter",1451),y(1452,1,yf,OSe),s.Lb=function(t){return _re(c(t,10))},s.Fb=function(t){return this===t},s.Mb=function(t){return _re(c(t,10))},S(rV,"PolylineEdgeRouter/1",1452),y(1809,1,Rn,DSe),s.Mb=function(t){return c(t,129).c==(cl(),z1)},S(gl,"HyperEdgeCycleDetector/lambda$0$Type",1809),y(1810,1,{},kSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$1$Type",1810),y(1811,1,Rn,RSe),s.Mb=function(t){return c(t,129).c==(cl(),z1)},S(gl,"HyperEdgeCycleDetector/lambda$2$Type",1811),y(1812,1,{},xSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$3$Type",1812),y(1813,1,{},LSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$4$Type",1813),y(1814,1,{},NSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$5$Type",1814),y(112,1,{35:1,112:1},dI),s.wd=function(t){return uyt(this,c(t,112))},s.Fb=function(t){var n;return Q(t,112)?(n=c(t,112),this.g==n.g):!1},s.Hb=function(){return this.g},s.Ib=function(){var t,n,i,r;for(t=new lu("{"),r=new q(this.n);r.a"+this.b+" ("+v3t(this.c)+")"},s.d=0,S(gl,"HyperEdgeSegmentDependency",129),y(520,22,{3:1,35:1,22:1,520:1},UZ);var z1,Vw,wut=hn(gl,"HyperEdgeSegmentDependency/DependencyType",520,bn,c6t,MEt),mut;y(1815,1,{},sje),S(gl,"HyperEdgeSegmentSplitter",1815),y(1816,1,{},F9e),s.a=0,s.b=0,S(gl,"HyperEdgeSegmentSplitter/AreaRating",1816),y(329,1,{329:1},uB),s.a=0,s.b=0,s.c=0,S(gl,"HyperEdgeSegmentSplitter/FreeArea",329),y(1817,1,Zn,VSe),s.ue=function(t,n){return b_t(c(t,112),c(n,112))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(gl,"HyperEdgeSegmentSplitter/lambda$0$Type",1817),y(1818,1,Rt,Qxe),s.td=function(t){yMt(this.a,this.d,this.c,this.b,c(t,112))},s.b=0,S(gl,"HyperEdgeSegmentSplitter/lambda$1$Type",1818),y(1819,1,{},GSe),s.Kb=function(t){return new ht(null,new bt(c(t,112).e,16))},S(gl,"HyperEdgeSegmentSplitter/lambda$2$Type",1819),y(1820,1,{},USe),s.Kb=function(t){return new ht(null,new bt(c(t,112).j,16))},S(gl,"HyperEdgeSegmentSplitter/lambda$3$Type",1820),y(1821,1,{},WSe),s.Fe=function(t){return ge(Te(t))},S(gl,"HyperEdgeSegmentSplitter/lambda$4$Type",1821),y(655,1,{},DB),s.a=0,s.b=0,s.c=0,S(gl,"OrthogonalRoutingGenerator",655),y(1638,1,{},YSe),s.Kb=function(t){return new ht(null,new bt(c(t,112).e,16))},S(gl,"OrthogonalRoutingGenerator/lambda$0$Type",1638),y(1639,1,{},XSe),s.Kb=function(t){return new ht(null,new bt(c(t,112).j,16))},S(gl,"OrthogonalRoutingGenerator/lambda$1$Type",1639),y(661,1,{}),S(oV,"BaseRoutingDirectionStrategy",661),y(1807,661,{},qAe),s.dg=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;if(!(t.r&&!t.q))for(v=n+t.o*i,p=new q(t.n);p.aEf&&(u=v,o=t,r=new $e(A,u),Cn(a.a,r),O0(this,a,o,r,!1),D=t.r,D&&(L=ge(Te(hl(D.e,0))),r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1),u=n+D.o*i,o=D,r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1)),r=new $e(z,u),Cn(a.a,r),O0(this,a,o,r,!1)))},s.eg=function(t){return t.i.n.a+t.n.a+t.a.a},s.fg=function(){return Ie(),Yt},s.gg=function(){return Ie(),_t},S(oV,"NorthToSouthRoutingStrategy",1807),y(1808,661,{},HAe),s.dg=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;if(!(t.r&&!t.q))for(v=n-t.o*i,p=new q(t.n);p.aEf&&(u=v,o=t,r=new $e(A,u),Cn(a.a,r),O0(this,a,o,r,!1),D=t.r,D&&(L=ge(Te(hl(D.e,0))),r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1),u=n-D.o*i,o=D,r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1)),r=new $e(z,u),Cn(a.a,r),O0(this,a,o,r,!1)))},s.eg=function(t){return t.i.n.a+t.n.a+t.a.a},s.fg=function(){return Ie(),_t},s.gg=function(){return Ie(),Yt},S(oV,"SouthToNorthRoutingStrategy",1808),y(1806,661,{},zAe),s.dg=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;if(!(t.r&&!t.q))for(v=n+t.o*i,p=new q(t.n);p.aEf&&(u=v,o=t,r=new $e(u,A),Cn(a.a,r),O0(this,a,o,r,!0),D=t.r,D&&(L=ge(Te(hl(D.e,0))),r=new $e(u,L),Cn(a.a,r),O0(this,a,o,r,!0),u=n+D.o*i,o=D,r=new $e(u,L),Cn(a.a,r),O0(this,a,o,r,!0)),r=new $e(u,z),Cn(a.a,r),O0(this,a,o,r,!0)))},s.eg=function(t){return t.i.n.b+t.n.b+t.a.b},s.fg=function(){return Ie(),jt},s.gg=function(){return Ie(),Mt},S(oV,"WestToEastRoutingStrategy",1806),y(813,1,{},due),s.Ib=function(){return C1(this.a)},s.b=0,s.c=!1,s.d=!1,s.f=0,S(Sw,"NubSpline",813),y(407,1,{407:1},dWe,DLe),S(Sw,"NubSpline/PolarCP",407),y(1453,1,Sc,nVe),s.Yf=function(t){return V7t(c(t,37))},s.pf=function(t,n){MHt(this,c(t,37),n)};var vut,yut,_ut,Eut,Sut;S(Sw,"SplineEdgeRouter",1453),y(268,1,{268:1},aO),s.Ib=function(){return this.a+" ->("+this.c+") "+this.b},s.c=0,S(Sw,"SplineEdgeRouter/Dependency",268),y(455,22,{3:1,35:1,22:1,455:1},WZ);var V1,$v,Put=hn(Sw,"SplineEdgeRouter/SideToProcess",455,bn,a6t,CEt),Mut;y(1454,1,Rn,HSe),s.Mb=function(t){return w6(),!c(t,128).o},S(Sw,"SplineEdgeRouter/lambda$0$Type",1454),y(1455,1,{},qSe),s.Ge=function(t){return w6(),c(t,128).v+1},S(Sw,"SplineEdgeRouter/lambda$1$Type",1455),y(1456,1,Rt,kOe),s.td=function(t){L4t(this.a,this.b,c(t,46))},S(Sw,"SplineEdgeRouter/lambda$2$Type",1456),y(1457,1,Rt,ROe),s.td=function(t){N4t(this.a,this.b,c(t,46))},S(Sw,"SplineEdgeRouter/lambda$3$Type",1457),y(128,1,{35:1,128:1},AGe,vue),s.wd=function(t){return ayt(this,c(t,128))},s.b=0,s.e=!1,s.f=0,s.g=0,s.j=!1,s.k=!1,s.n=0,s.o=!1,s.p=!1,s.q=!1,s.s=0,s.u=0,s.v=0,s.F=0,S(Sw,"SplineSegment",128),y(459,1,{459:1},zSe),s.a=0,s.b=!1,s.c=!1,s.d=!1,s.e=!1,s.f=0,S(Sw,"SplineSegment/EdgeInformation",459),y(1234,1,{},FSe),S(H6,gae,1234),y(1235,1,Zn,BSe),s.ue=function(t,n){return vRt(c(t,135),c(n,135))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(H6,gQe,1235),y(1233,1,{},e8e),S(H6,"MrTree",1233),y(393,22,{3:1,35:1,22:1,393:1,246:1,234:1},T9),s.Kf=function(){return tUe(this)},s.Xf=function(){return tUe(this)};var ZR,LP,vj,NP,c0e=hn(H6,"TreeLayoutPhases",393,bn,tMt,IEt),Cut;y(1130,209,rb,yke),s.Ze=function(t,n){var i,r,o,u,a,l,d;for(Be(Fe(Ke(t,(A0(),h0e))))||V8((i=new zM((Ap(),new Ip(t))),i)),a=(l=new lO,Mo(l,t),pe(l,(ic(),$P),t),d=new en,lBt(t,l,d),IBt(t,l,d),l),u=yBt(this.a,a),o=new q(u);o.a"+Q8(this.c):"e_"+fi(this)},S(z6,"TEdge",188),y(135,134,{3:1,135:1,94:1,134:1},lO),s.Ib=function(){var t,n,i,r,o;for(o=null,r=Mn(this.b,0);r.b!=r.d.c;)i=c(Pn(r),86),o+=(i.c==null||i.c.length==0?"n_"+i.g:"n_"+i.c)+` +`;for(n=Mn(this.a,0);n.b!=n.d.c;)t=c(Pn(n),188),o+=(t.b&&t.c?Q8(t.b)+"->"+Q8(t.c):"e_"+fi(t))+` +`;return o};var Ozt=S(z6,"TGraph",135);y(633,502,{3:1,502:1,633:1,94:1,134:1}),S(z6,"TShape",633),y(86,633,{3:1,502:1,86:1,633:1,94:1,134:1},uK),s.Ib=function(){return Q8(this)};var Dzt=S(z6,"TNode",86);y(255,1,Yf,t1),s.Jc=function(t){Mr(this,t)},s.Kc=function(){var t;return t=Mn(this.a.d,0),new Dy(t)},S(z6,"TNode/2",255),y(358,1,dr,Dy),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(Pn(this.a),188).c},s.Ob=function(){return r9(this.a)},s.Qb=function(){MO(this.a)},S(z6,"TNode/2/1",358),y(1840,1,Ti,vke),s.pf=function(t,n){HBt(this,c(t,135),n)},S(N2,"FanProcessor",1840),y(327,22,{3:1,35:1,22:1,327:1,234:1},t5),s.Kf=function(){switch(this.g){case 0:return new o9e;case 1:return new vke;case 2:return new ZSe;case 3:return new JSe;case 4:return new t5e;case 5:return new n5e;default:throw V(new St(Mz+(this.f!=null?this.f:""+this.g)))}};var aW,lW,fW,hW,dW,ex,Iut=hn(N2,Mae,327,bn,wCt,TEt),Tut;y(1843,1,Ti,JSe),s.pf=function(t,n){Mxt(this,c(t,135),n)},s.a=0,S(N2,"LevelHeightProcessor",1843),y(1844,1,Yf,QSe),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return st(),s_(),n4},S(N2,"LevelHeightProcessor/1",1844),y(1841,1,Ti,ZSe),s.pf=function(t,n){Dkt(this,c(t,135),n)},s.a=0,S(N2,"NeighborsProcessor",1841),y(1842,1,Yf,e5e),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return st(),s_(),n4},S(N2,"NeighborsProcessor/1",1842),y(1845,1,Ti,t5e),s.pf=function(t,n){Pxt(this,c(t,135),n)},s.a=0,S(N2,"NodePositionProcessor",1845),y(1839,1,Ti,o9e),s.pf=function(t,n){X$t(this,c(t,135))},S(N2,"RootProcessor",1839),y(1846,1,Ti,n5e),s.pf=function(t,n){oAt(c(t,135))},S(N2,"Untreeifyer",1846);var yj,FP,jut,gW,tx,BP,bW,nx,ix,C4,$P,rx,Ad,s0e,Aut,pW,Gw,wW,u0e;y(851,1,ca,_Ce),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,zle),""),"Weighting of Nodes"),"Which weighting to use when computing a node order."),l0e),(yd(),Ai)),w0e),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Vle),""),"Search Order"),"Which search order to use when computing a spanning tree."),a0e),Ai),v0e),nt(Tt)))),IXe((new yCe,t))};var Out,a0e,Dut,l0e;S(WD,"MrTreeMetaDataProvider",851),y(994,1,ca,yCe),s.Qe=function(t){IXe(t)};var kut,f0e,Rut,xut,Lut,Nut,h0e,Fut,d0e,But,ox,g0e,$ut,b0e,Kut;S(WD,"MrTreeOptions",994),y(995,1,{},i5e),s.$e=function(){var t;return t=new yke,t},s._e=function(t){},S(WD,"MrTreeOptions/MrtreeFactory",995),y(480,22,{3:1,35:1,22:1,480:1},YZ);var mW,p0e,w0e=hn(WD,"OrderWeighting",480,bn,f6t,jEt),qut;y(425,22,{3:1,35:1,22:1,425:1},XZ);var m0e,vW,v0e=hn(WD,"TreeifyingOrder",425,bn,l6t,OEt),Hut;y(1459,1,Sc,fCe),s.Yf=function(t){return c(t,135),zut},s.pf=function(t,n){rTt(this,c(t,135),n)};var zut;S("org.eclipse.elk.alg.mrtree.p1treeify","DFSTreeifyer",1459),y(1460,1,Sc,hCe),s.Yf=function(t){return c(t,135),Vut},s.pf=function(t,n){qkt(this,c(t,135),n)};var Vut;S("org.eclipse.elk.alg.mrtree.p2order","NodeOrderer",1460),y(1461,1,Sc,lCe),s.Yf=function(t){return c(t,135),Gut},s.pf=function(t,n){oFt(this,c(t,135),n)},s.a=0;var Gut;S("org.eclipse.elk.alg.mrtree.p3place","NodePlacer",1461),y(1462,1,Sc,dCe),s.Yf=function(t){return c(t,135),Uut},s.pf=function(t,n){OOt(c(t,135),n)};var Uut;S("org.eclipse.elk.alg.mrtree.p4route","EdgeRouter",1462);var KP;y(495,22,{3:1,35:1,22:1,495:1,246:1,234:1},JZ),s.Kf=function(){return kHe(this)},s.Xf=function(){return kHe(this)};var cx,I4,y0e=hn(Gle,"RadialLayoutPhases",495,bn,h6t,AEt),Wut;y(1131,209,rb,Z9e),s.Ze=function(t,n){var i,r,o,u,a,l;if(i=LGe(this,t),Wt(n,"Radial layout",i.c.length),Be(Fe(Ke(t,(ow(),A0e))))||V8((r=new zM((Ap(),new Ip(t))),r)),l=W7t(t),ao(t,(w5(),KP),l),!l)throw V(new St("The given graph is not a tree!"));for(o=ge(Te(Ke(t,ax))),o==0&&(o=XGe(t)),ao(t,ax,o),a=new q(LGe(this,t));a.a0&&rHe((fn(n-1,t.length),t.charCodeAt(n-1)),MQe);)--n;if(r>=n)throw V(new St("The given string does not contain any numbers."));if(o=gw(t.substr(r,n-r),`,|;|\r| +`),o.length!=2)throw V(new St("Exactly two numbers are expected, "+o.length+" were found."));try{this.a=aw(uw(o[0])),this.b=aw(uw(o[1]))}catch(u){throw u=gi(u),Q(u,127)?(i=u,V(new St(CQe+i))):V(u)}},s.Ib=function(){return"("+this.a+","+this.b+")"},s.a=0,s.b=0;var ir=S(CT,"KVector",8);y(74,68,{3:1,4:1,20:1,28:1,52:1,14:1,68:1,15:1,74:1,414:1},ds,n9,qDe),s.Pc=function(){return wjt(this)},s.Jf=function(t){var n,i,r,o,u,a;r=gw(t,`,|;|\\(|\\)|\\[|\\]|\\{|\\}| | | +`),na(this);try{for(i=0,u=0,o=0,a=0;i0&&(u%2==0?o=aw(r[i]):a=aw(r[i]),u>0&&u%2!=0&&Cn(this,new $e(o,a)),++u),++i}catch(l){throw l=gi(l),Q(l,127)?(n=l,V(new St("The given string does not match the expected format for vectors."+n))):V(l)}},s.Ib=function(){var t,n,i;for(t=new lu("("),n=Mn(this,0);n.b!=n.d.c;)i=c(Pn(n),8),wn(t,i.a+","+i.b),n.b!=n.d.c&&(t.a+="; ");return(t.a+=")",t).a};var jpe=S(CT,"KVectorChain",74);y(248,22,{3:1,35:1,22:1,248:1},n5);var $W,px,wx,Pj,Mj,mx,Ape=hn(ua,"Alignment",248,bn,fCt,WEt),dlt;y(979,1,ca,ICe),s.Qe=function(t){EYe(t)};var Ope,KW,glt,Dpe,kpe,blt,Rpe,plt,wlt,xpe,Lpe,mlt;S(ua,"BoxLayouterOptions",979),y(980,1,{},X5e),s.$e=function(){var t;return t=new r6e,t},s._e=function(t){},S(ua,"BoxLayouterOptions/BoxFactory",980),y(291,22,{3:1,35:1,22:1,291:1},i5);var Cj,qW,Ij,Tj,jj,HW,zW=hn(ua,"ContentAlignment",291,bn,lCt,YEt),vlt;y(684,1,ca,VJ),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,_Ze),""),"Layout Algorithm"),"Select a specific layout algorithm."),(yd(),T4)),Re),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,EZe),""),"Resolved Layout Algorithm"),"Meta data associated with the selected algorithm."),Yl),xzt),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ele),""),"Alignment"),"Alignment of the selected node relative to other nodes; the exact meaning depends on the used algorithm."),Npe),Ai),Ape),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,D2),""),"Aspect Ratio"),"The desired aspect ratio of the drawing, that is the quotient of width by height."),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,pfe),""),"Bend Points"),"A fixed list of bend points for the edge. This is used by the 'Fixed Layout' algorithm to specify a pre-defined routing for an edge. The vector chain must include the source point, any bend points, and the target point, so it must have at least two points."),Yl),jpe),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,zD),""),"Content Alignment"),"Specifies how the content of a node are aligned. Each node can individually control the alignment of its contents. I.e. if a node should be aligned top left in its parent node, the parent node should specify that option."),Bpe),t3),zW),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,DT),""),"Debug Mode"),"Whether additional debug information shall be generated."),(Pt(),!1)),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Mle),""),oae),"Overall direction of edges: horizontal (right / left) or vertical (down / up)."),$pe),Ai),WP),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,AT),""),"Edge Routing"),"What kind of edge routing style should be applied for the content of a parent node. Algorithms may also set this option to single edges in order to mark them as splines. The bend point list of edges with this option set to SPLINES must be interpreted as control points for a piecewise cubic spline."),Hpe),Ai),iY),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,XD),""),"Expand Nodes"),"If active, nodes are expanded to fill the area of their parent."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,HD),""),"Hierarchy Handling"),"Determines whether separate layout runs are triggered for different compound nodes in a hierarchical graph. Setting a node's hierarchy handling to `INCLUDE_CHILDREN` will lay out that node and all of its descendants in a single layout run, until a descendant is encountered which has its hierarchy handling set to `SEPARATE_CHILDREN`. In general, `SEPARATE_CHILDREN` will ensure that a new layout run is triggered for a node with that setting. Including multiple levels of hierarchy in a single layout run may allow cross-hierarchical edges to be laid out properly. If the root node is set to `INHERIT` (or not set at all), the default behavior is `SEPARATE_CHILDREN`."),Upe),Ai),Dwe),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,N0),""),"Padding"),"The padding to be left to a parent element's border when placing child elements. This can also serve as an output option of a layout algorithm if node size calculation is setup appropriately."),iwe),Yl),Fde),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,PT),""),"Interactive"),"Whether the algorithm should be run in interactive mode for the content of a parent node. What this means exactly depends on how the specific algorithm interprets this option. Usually in the interactive mode algorithms try to modify the current layout as little as possible."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,iV),""),"interactive Layout"),"Whether the graph should be changeable interactively and by setting constraints"),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,N6),""),"Omit Node Micro Layout"),"Node micro layout comprises the computation of node dimensions (if requested), the placement of ports and their labels, and the placement of node labels. The functionality is implemented independent of any specific layout algorithm and shouldn't have any negative impact on the layout algorithm's performance itself. Yet, if any unforeseen behavior occurs, this option allows to deactivate the micro layout."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ez),""),"Port Constraints"),"Defines constraints of the position of the ports of a node."),uwe),Ai),xwe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,VD),""),"Position"),"The position of a node, port, or label. This is used by the 'Fixed Layout' algorithm to specify a pre-defined position."),Yl),ir),ui(ar,U(G(Dd,1),_e,175,0,[_b,Od]))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,ST),""),"Priority"),"Defines the priority of an object; its meaning depends on the specific layout algorithm and the context where it is used."),oc),$r),ui(ar,U(G(Dd,1),_e,175,0,[kf]))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,MD),""),"Randomization Seed"),"Seed used for pseudo-random number generators to control the layout algorithm. If the value is 0, the seed shall be determined pseudo-randomly (e.g. from the system time)."),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,L6),""),"Separate Connected Components"),"Whether each connected component should be processed separately."),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Rle),""),"Junction Points"),"This option is not used as option, but as output of the layout algorithms. It is attached to edges and determines the points where junction symbols should be drawn in order to represent hyperedges with orthogonal routing. Whether such points are computed depends on the chosen layout algorithm and edge routing style. The points are put into the vector chain with no specific order."),Ype),Yl),jpe),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Nle),""),"Comment Box"),"Whether the node should be regarded as a comment box instead of a regular node. In that case its placement should be similar to how labels are handled. Any edges incident to a comment box specify to which graph elements the comment is related."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Fle),""),"Hypernode"),"Whether the node should be handled as a hypernode."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,azt),""),"Label Manager"),"Label managers can shorten labels upon a layout algorithm's request."),Yl),$zt),ui(Tt,U(G(Dd,1),_e,175,0,[Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,$le),""),"Margins"),"Margins define additional space around the actual bounds of a graph element. For instance, ports or labels being placed on the outside of a node's border might introduce such a margin. The margin is used to guarantee non-overlap of other graph elements with those ports or labels."),Xpe),Yl),Nde),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,yle),""),"No Layout"),"No layout is done for the associated element. This is used to mark parts of a diagram to avoid their inclusion in the layout graph, or to mark parts of the layout graph to prevent layout engines from processing them. If you wish to exclude the contents of a compound node from automatic layout, while the node itself is still considered on its own layer, use the 'Fixed Layout' algorithm for that node."),!1),Dr),Qi),ui(ar,U(G(Dd,1),_e,175,0,[kf,_b,Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,SZe),""),"Scale Factor"),"The scaling factor to be applied to the corresponding node in recursive layout. It causes the corresponding node's size to be adjusted, and its ports and labels to be sized and placed accordingly after the layout of that node has been determined (and before the node itself and its siblings are arranged). The scaling is not reverted afterwards, so the resulting layout graph contains the adjusted size and position data. This option is currently not supported if 'Layout Hierarchy' is set."),1),To),mr),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,PZe),""),"Animate"),"Whether the shift from the old layout to the new computed layout shall be animated."),!0),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,MZe),""),"Animation Time Factor"),"Factor for computation of animation time. The higher the value, the longer the animation time. If the value is 0, the resulting time is always equal to the minimum defined by 'Minimal Animation Time'."),Ce(100)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,CZe),""),"Layout Ancestors"),"Whether the hierarchy levels on the path from the selected element to the root of the diagram shall be included in the layout process."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,IZe),""),"Maximal Animation Time"),"The maximal time for animations, in milliseconds."),Ce(4e3)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,TZe),""),"Minimal Animation Time"),"The minimal time for animations, in milliseconds."),Ce(400)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jZe),""),"Progress Bar"),"Whether a progress bar shall be displayed during layout computations."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,AZe),""),"Validate Graph"),"Whether the graph shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,OZe),""),"Validate Options"),"Whether layout options shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!0),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,DZe),""),"Zoom to Fit"),"Whether the zoom level shall be set to view the whole diagram after layout."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,bfe),"box"),"Box Layout Mode"),"Configures the packing mode used by the {@link BoxLayoutProvider}. If SIMPLE is not required (neither priorities are used nor the interactive mode), GROUP_DEC can improve the packing and decrease the area. GROUP_MIXED and GROUP_INC may, in very specific scenarios, work better."),Fpe),Ai),Kwe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ule),Hl),"Comment Comment Spacing"),"Spacing to be preserved between a comment box and other comment boxes connected to the same node. The space left between comment boxes of different nodes is controlled by the node-node spacing."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ale),Hl),"Comment Node Spacing"),"Spacing to be preserved between a node and its connected comment boxes. The space left between a node and the comments of another node is controlled by the node-node spacing."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,pz),Hl),"Components Spacing"),"Spacing to be preserved between pairs of connected components. This option is only relevant if 'separateConnectedComponents' is activated."),20),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,lle),Hl),"Edge Spacing"),"Spacing to be preserved between any two edges. Note that while this can somewhat easily be satisfied for the segments of orthogonally drawn edges, it is harder for general polylines or splines."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_z),Hl),"Edge Label Spacing"),"The minimal distance to be preserved between a label and the edge it is associated with. Note that the placement of a label is influenced by the 'edgelabels.placement' option."),2),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,fle),Hl),"Edge Node Spacing"),"Spacing to be preserved between nodes and edges."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,hle),Hl),"Label Spacing"),"Determines the amount of space to be left between two labels of the same graph element."),0),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ble),Hl),"Label Node Spacing"),"Spacing to be preserved between labels and the border of node they are associated with. Note that the placement of a label is influenced by the 'nodelabels.placement' option."),5),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,dle),Hl),"Horizontal spacing between Label and Port"),"Horizontal spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,gle),Hl),"Vertical spacing between Label and Port"),"Vertical spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_w),Hl),"Node Spacing"),"The minimal distance to be preserved between each two nodes."),20),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ple),Hl),"Node Self Loop Spacing"),"Spacing to be preserved between a node and its self loops."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,wle),Hl),"Port Spacing"),"Spacing between pairs of ports of the same node."),10),To),mr),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,mle),Hl),"Individual Spacing"),"Allows to specify individual spacing values for graph elements that shall be different from the value specified for the element's parent."),Yl),eft),ui(ar,U(G(Dd,1),_e,175,0,[kf,_b,Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Kle),Hl),"Additional Port Space"),"Additional space around the sets of ports on each node side. For each side of a node, this option can reserve additional space before and after the ports on each side. For example, a top spacing of 20 makes sure that the first port on the western and eastern side is 20 units away from the northern border."),mwe),Yl),Nde),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,nV),xZe),"Layout Partition"),"Partition to which the node belongs. This requires Layout Partitioning to be active. Nodes with lower partition IDs will appear to the left of nodes with higher partition IDs (assuming a left-to-right layout direction)."),oc),$r),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),pr(t,nV,tV,Ilt),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,tV),xZe),"Layout Partitioning"),"Whether to activate partitioned layout. This will allow to group nodes through the Layout Partition option. a pair of nodes with different partition indices is then placed such that the node with lower index is placed to the left of the other node (with left-to-right layout direction). Depending on the layout algorithm, this may only be guaranteed to work if all nodes have a layout partition configured, or at least if edges that cross partitions are not part of a partition-crossing cycle."),rwe),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Cle),LZe),"Node Label Padding"),"Define padding for node labels that are placed inside of a node."),Qpe),Yl),Fde),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qE),LZe),"Node Label Placement"),"Hints for where node labels are to be placed; if empty, the node label's position is not modified."),Zpe),t3),ro),ui(ar,U(G(Dd,1),_e,175,0,[Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jle),QD),"Port Alignment"),"Defines the default port distribution for a node. May be overridden for each side individually."),cwe),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Ale),QD),"Port Alignment (North)"),"Defines how ports on the northern side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Ole),QD),"Port Alignment (South)"),"Defines how ports on the southern side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Dle),QD),"Port Alignment (West)"),"Defines how ports on the western side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,kle),QD),"Port Alignment (East)"),"Defines how ports on the eastern side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,gv),EV),"Node Size Constraints"),"What should be taken into account when calculating a node's size. Empty size constraints specify that a node's size is already fixed and should not be changed."),ewe),t3),tM),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,k2),EV),"Node Size Options"),"Options modifying the behavior of the size constraints set on a node. Each member of the set specifies something that should be taken into account when calculating node sizes. The empty set corresponds to no further modifications."),nwe),t3),Nwe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,R2),EV),"Node Size Minimum"),"The minimal size to which a node can be reduced."),twe),Yl),ir),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,eV),EV),"Fixed Graph Size"),"By default, the fixed layout provider will enlarge a graph until it is large enough to contain its children. If this option is set, it won't do so."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xle),Zz),"Edge Label Placement"),"Gives a hint on where to put edge labels."),Kpe),Ai),ywe),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,CD),Zz),"Inline Edge Labels"),"If true, an edge label is placed directly on its edge. May only apply to center edge labels. This kind of label placement is only advisable if the label's rendering is such that it is not crossed by its edge and thus stays legible."),!1),Dr),Qi),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,lzt),"font"),"Font Name"),"Font name used for a label."),T4),Re),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,kZe),"font"),"Font Size"),"Font size used for a label."),oc),$r),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Ble),SV),"Port Anchor Offset"),"The offset to the port position where connections shall be attached."),Yl),ir),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Lle),SV),"Port Index"),"The index of a port in the fixed order around a node. The order is assumed as clockwise, starting with the leftmost port on the top side. This option must be set if 'Port Constraints' is set to FIXED_ORDER and no specific positions are given for the ports. Additionally, the option 'Port Side' must be defined in this case."),oc),$r),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_le),SV),"Port Side"),"The side of a node on which a port is situated. This option must be set if 'Port Constraints' is set to FIXED_SIDE or FIXED_ORDER and no specific positions are given for the ports."),fwe),Ai),Gr),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,vle),SV),"Port Border Offset"),"The offset of ports on the node border. With a positive offset the port is moved outside of the node, while with a negative offset the port is moved towards the inside. An offset of 0 means that the port is placed directly on the node border, i.e. if the port side is north, the port's south border touches the nodes's north border; if the port side is east, the port's west border touches the nodes's east border; if the port side is south, the port's north border touches the node's south border; if the port side is west, the port's east border touches the node's west border."),To),mr),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,HE),wfe),"Port Label Placement"),"Decides on a placement method for port labels; if empty, the node label's position is not modified."),awe),t3),Cx),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ile),wfe),"Port Labels Next to Port"),"Use 'portLabels.placement': NEXT_TO_PORT_OF_POSSIBLE."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Tle),wfe),"Treat Port Labels as Group"),"If this option is true (default), the labels of a port will be treated as a group when it comes to centering them next to their port. If this option is false, only the first label will be centered next to the port, with the others being placed below. This only applies to labels of eastern and western ports and will have no effect if labels are not placed next to their port."),!0),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Sle),NZe),"Activate Inside Self Loops"),"Whether this node allows to route self loops inside of it instead of around it. If set to true, this will make the node a compound node if it isn't already, and will require the layout algorithm to support compound nodes with hierarchical ports."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ple),NZe),"Inside Self Loop"),"Whether a self loop should be routed inside a node instead of around that node."),!1),Dr),Qi),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,wz),"edge"),"Edge Thickness"),"The thickness of an edge. This is a hint on the line width used to draw an edge, possibly requiring more space to be reserved for it."),1),To),mr),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,RZe),"edge"),"Edge Type"),"The type of an edge. This is usually used for UML class diagrams, where associations must be handled differently from generalizations."),Vpe),Ai),Cwe),nt(kf)))),VS(t,new i2(BS(i_(n_(new Ay,kt),"Layered"),'The layer-based method was introduced by Sugiyama, Tagawa and Toda in 1981. It emphasizes the direction of edges by pointing as many edges as possible into the same direction. The nodes are arranged in layers, which are sometimes called "hierarchies", and then reordered such that the number of edge crossings is minimized. Afterwards, concrete coordinates are computed for the nodes and edge bend points.'))),VS(t,new i2(BS(i_(n_(new Ay,"org.eclipse.elk.orthogonal"),"Orthogonal"),`Orthogonal methods that follow the "topology-shape-metrics" approach by Batini, Nardelli and Tamassia '86. The first phase determines the topology of the drawing by applying a planarization technique, which results in a planar representation of the graph. The orthogonal shape is computed in the second phase, which aims at minimizing the number of edge bends, and is called orthogonalization. The third phase leads to concrete coordinates for nodes and edge bend points by applying a compaction method, thus defining the metrics.`))),VS(t,new i2(BS(i_(n_(new Ay,_u),"Force"),"Layout algorithms that follow physical analogies by simulating a system of attractive and repulsive forces. The first successful method of this kind was proposed by Eades in 1984."))),VS(t,new i2(BS(i_(n_(new Ay,"org.eclipse.elk.circle"),"Circle"),"Circular layout algorithms emphasize cycles or biconnected components of a graph by arranging them in circles. This is useful if a drawing is desired where such components are clearly grouped, or where cycles are shown as prominent OPTIONS of the graph."))),VS(t,new i2(BS(i_(n_(new Ay,sZe),"Tree"),"Specialized layout methods for trees, i.e. acyclic graphs. The regular structure of graphs that have no undirected cycles can be emphasized using an algorithm of this type."))),VS(t,new i2(BS(i_(n_(new Ay,"org.eclipse.elk.planar"),"Planar"),"Algorithms that require a planar or upward planar graph. Most of these algorithms are theoretically interesting, but not practically usable."))),VS(t,new i2(BS(i_(n_(new Ay,Cf),"Radial"),"Radial layout algorithms usually position the nodes of the graph on concentric circles."))),sYe((new TCe,t)),EYe((new ICe,t)),NWe((new jCe,t))};var GP,ylt,Npe,n3,_lt,Elt,Fpe,Slt,vx,Bpe,Aj,rp,$pe,VW,GW,Kpe,qpe,Hpe,zpe,Vpe,Gpe,qv,Upe,Plt,Oj,UW,yx,Wpe,Hv,Ype,Dj,Xpe,Jpe,Qpe,zv,Zpe,Eb,ewe,_x,Vv,twe,G1,nwe,Ex,kj,Sb,iwe,Mlt,rwe,Clt,Ilt,owe,cwe,WW,YW,XW,JW,swe,zs,UP,uwe,QW,ZW,Uw,awe,lwe,Gv,fwe,i3,Sx,eY,j4,Tlt,tY,jlt,Alt,hwe,Olt,dwe,Dlt,r3,gwe,Px,bwe,pwe,Pb,klt,wwe,mwe,vwe;S(ua,"CoreOptions",684),y(103,22,{3:1,35:1,22:1,103:1},dC);var Vh,ga,Va,ih,Gh,WP=hn(ua,oae,103,bn,kMt,QEt),Rlt;y(272,22,{3:1,35:1,22:1,272:1},jF);var A4,Ww,O4,ywe=hn(ua,"EdgeLabelPlacement",272,bn,dPt,ZEt),xlt;y(218,22,{3:1,35:1,22:1,218:1},A9);var D4,Rj,o3,nY,iY=hn(ua,"EdgeRouting",218,bn,oMt,e4t),Llt;y(312,22,{3:1,35:1,22:1,312:1},r5);var _we,Ewe,Swe,Pwe,rY,Mwe,Cwe=hn(ua,"EdgeType",312,bn,vCt,t4t),Nlt;y(977,1,ca,TCe),s.Qe=function(t){sYe(t)};var Iwe,Twe,jwe,Awe,Flt,Owe,YP;S(ua,"FixedLayouterOptions",977),y(978,1,{},a6e),s.$e=function(){var t;return t=new n6e,t},s._e=function(t){},S(ua,"FixedLayouterOptions/FixedFactory",978),y(334,22,{3:1,35:1,22:1,334:1},AF);var kd,Mx,XP,Dwe=hn(ua,"HierarchyHandling",334,bn,hPt,n4t),Blt;y(285,22,{3:1,35:1,22:1,285:1},O9);var rh,U1,xj,Lj,$lt=hn(ua,"LabelSide",285,bn,rMt,i4t),Klt;y(93,22,{3:1,35:1,22:1,93:1},Mm);var Uh,Ga,ba,Ua,Mu,Wa,pa,oh,Ya,ro=hn(ua,"NodeLabelPlacement",93,bn,EIt,r4t),qlt;y(249,22,{3:1,35:1,22:1,249:1},gC);var kwe,JP,W1,Rwe,Nj,QP=hn(ua,"PortAlignment",249,bn,RMt,o4t),Hlt;y(98,22,{3:1,35:1,22:1,98:1},o5);var Mb,Ic,ch,k4,Xl,Y1,xwe=hn(ua,"PortConstraints",98,bn,nCt,c4t),zlt;y(273,22,{3:1,35:1,22:1,273:1},c5);var ZP,eM,Wh,Fj,X1,c3,Cx=hn(ua,"PortLabelPlacement",273,bn,mCt,s4t),Vlt;y(61,22,{3:1,35:1,22:1,61:1},bC);var jt,_t,Uu,Wu,os,Vc,Jl,Xa,Ds,Ss,Tc,ks,cs,ss,Ja,Cu,Iu,wa,Yt,Vo,Mt,Gr=hn(ua,"PortSide",61,bn,AMt,l4t),Glt;y(981,1,ca,jCe),s.Qe=function(t){NWe(t)};var Ult,Wlt,Lwe,Ylt,Xlt;S(ua,"RandomLayouterOptions",981),y(982,1,{},l6e),s.$e=function(){var t;return t=new d6e,t},s._e=function(t){},S(ua,"RandomLayouterOptions/RandomFactory",982),y(374,22,{3:1,35:1,22:1,374:1},D9);var Yw,Bj,$j,Cb,tM=hn(ua,"SizeConstraint",374,bn,iMt,u4t),Jlt;y(259,22,{3:1,35:1,22:1,259:1},Cm);var Kj,Ix,R4,oY,qj,nM,Tx,jx,Ax,Nwe=hn(ua,"SizeOptions",259,bn,jIt,a4t),Qlt;y(370,1,{1949:1},Z3),s.b=!1,s.c=0,s.d=-1,s.e=null,s.f=null,s.g=-1,s.j=!1,s.k=!1,s.n=!1,s.o=0,s.q=0,s.r=0,S(fc,"BasicProgressMonitor",370),y(972,209,rb,r6e),s.Ze=function(t,n){var i,r,o,u,a,l,d,p,v;Wt(n,"Box layout",2),o=WM(Te(Ke(t,(N7(),mlt)))),u=c(Ke(t,wlt),116),i=Be(Fe(Ke(t,Dpe))),r=Be(Fe(Ke(t,kpe))),c(Ke(t,KW),311).g===0?(a=(l=new ps((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a)),st(),cr(l,new vje(r)),l),d=Qce(t),p=Te(Ke(t,Ope)),(p==null||(yt(p),p<=0))&&(p=1.3),v=gHt(a,o,u,d.a,d.b,i,(yt(p),p)),k0(t,v.a,v.b,!1,!0)):lKt(t,o,u,i),qt(n)},S(fc,"BoxLayoutProvider",972),y(973,1,Zn,vje),s.ue=function(t,n){return DLt(this,c(t,33),c(n,33))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},s.a=!1,S(fc,"BoxLayoutProvider/1",973),y(157,1,{157:1},TO,KDe),s.Ib=function(){return this.c?Jse(this.c):C1(this.b)},S(fc,"BoxLayoutProvider/Group",157),y(311,22,{3:1,35:1,22:1,311:1},k9);var Fwe,Bwe,$we,cY,Kwe=hn(fc,"BoxLayoutProvider/PackingMode",311,bn,cMt,f4t),Zlt;y(974,1,Zn,o6e),s.ue=function(t,n){return x5t(c(t,157),c(n,157))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(fc,"BoxLayoutProvider/lambda$0$Type",974),y(975,1,Zn,c6e),s.ue=function(t,n){return T5t(c(t,157),c(n,157))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(fc,"BoxLayoutProvider/lambda$1$Type",975),y(976,1,Zn,s6e),s.ue=function(t,n){return j5t(c(t,157),c(n,157))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(fc,"BoxLayoutProvider/lambda$2$Type",976),y(1365,1,{831:1},u6e),s.qg=function(t,n){return g9(),!Q(n,160)||J9e((d2(),c(t,160)),n)},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$0$Type",1365),y(1366,1,Rt,yje),s.td=function(t){vjt(this.a,c(t,146))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$1$Type",1366),y(1367,1,Rt,i6e),s.td=function(t){c(t,94),g9()},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$2$Type",1367),y(1371,1,Rt,_je),s.td=function(t){zIt(this.a,c(t,94))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$3$Type",1371),y(1369,1,Rn,NOe),s.Mb=function(t){return ojt(this.a,this.b,c(t,146))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$4$Type",1369),y(1368,1,Rn,FOe),s.Mb=function(t){return E3t(this.a,this.b,c(t,831))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$5$Type",1368),y(1370,1,Rt,BOe),s.td=function(t){ESt(this.a,this.b,c(t,146))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$6$Type",1370),y(935,1,{},t6e),s.Kb=function(t){return B7e(t)},s.Fb=function(t){return this===t},S(fc,"ElkUtil/lambda$0$Type",935),y(936,1,Rt,$Oe),s.td=function(t){RRt(this.a,this.b,c(t,79))},s.a=0,s.b=0,S(fc,"ElkUtil/lambda$1$Type",936),y(937,1,Rt,KOe),s.td=function(t){Rvt(this.a,this.b,c(t,202))},s.a=0,s.b=0,S(fc,"ElkUtil/lambda$2$Type",937),y(938,1,Rt,qOe),s.td=function(t){M2t(this.a,this.b,c(t,137))},s.a=0,s.b=0,S(fc,"ElkUtil/lambda$3$Type",938),y(939,1,Rt,Eje),s.td=function(t){F4t(this.a,c(t,469))},S(fc,"ElkUtil/lambda$4$Type",939),y(342,1,{35:1,342:1},lvt),s.wd=function(t){return Z2t(this,c(t,236))},s.Fb=function(t){var n;return Q(t,342)?(n=c(t,342),this.a==n.a):!1},s.Hb=function(){return xi(this.a)},s.Ib=function(){return this.a+" (exclusive)"},s.a=0,S(fc,"ExclusiveBounds/ExclusiveLowerBound",342),y(1138,209,rb,n6e),s.Ze=function(t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et;for(Wt(n,"Fixed Layout",1),u=c(Ke(t,(kn(),qpe)),218),A=0,D=0,ne=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));ne.e!=ne.i.gc();){for(Y=c(Vt(ne),33),et=c(Ke(Y,(QO(),YP)),8),et&&(Cl(Y,et.a,et.b),c(Ke(Y,Twe),174).Hc((ou(),Yw))&&(L=c(Ke(Y,Awe),8),L.a>0&&L.b>0&&k0(Y,L.a,L.b,!0,!0))),A=g.Math.max(A,Y.i+Y.g),D=g.Math.max(D,Y.j+Y.f),p=new $t((!Y.n&&(Y.n=new Me(Lo,Y,1,7)),Y.n));p.e!=p.i.gc();)l=c(Vt(p),137),et=c(Ke(l,YP),8),et&&Cl(l,et.a,et.b),A=g.Math.max(A,Y.i+l.i+l.g),D=g.Math.max(D,Y.j+l.j+l.f);for(Pe=new $t((!Y.c&&(Y.c=new Me(Vs,Y,9,9)),Y.c));Pe.e!=Pe.i.gc();)for(be=c(Vt(Pe),118),et=c(Ke(be,YP),8),et&&Cl(be,et.a,et.b),Ae=Y.i+be.i,Ve=Y.j+be.j,A=g.Math.max(A,Ae+be.g),D=g.Math.max(D,Ve+be.f),d=new $t((!be.n&&(be.n=new Me(Lo,be,1,7)),be.n));d.e!=d.i.gc();)l=c(Vt(d),137),et=c(Ke(l,YP),8),et&&Cl(l,et.a,et.b),A=g.Math.max(A,Ae+l.i+l.g),D=g.Math.max(D,Ve+l.j+l.f);for(o=new Kt(Ht(Fh(Y).a.Kc(),new j));dn(o);)i=c(rn(o),79),v=QXe(i),A=g.Math.max(A,v.a),D=g.Math.max(D,v.b);for(r=new Kt(Ht(XI(Y).a.Kc(),new j));dn(r);)i=c(rn(r),79),yi(Uf(i))!=t&&(v=QXe(i),A=g.Math.max(A,v.a),D=g.Math.max(D,v.b))}if(u==(Lh(),D4))for(ie=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));ie.e!=ie.i.gc();)for(Y=c(Vt(ie),33),r=new Kt(Ht(Fh(Y).a.Kc(),new j));dn(r);)i=c(rn(r),79),a=OBt(i),a.b==0?ao(i,Hv,null):ao(i,Hv,a);Be(Fe(Ke(t,(QO(),jwe))))||(ue=c(Ke(t,Flt),116),z=A+ue.b+ue.c,N=D+ue.d+ue.a,k0(t,z,N,!0,!0)),qt(n)},S(fc,"FixedLayoutProvider",1138),y(373,134,{3:1,414:1,373:1,94:1,134:1},yN,b$e),s.Jf=function(t){var n,i,r,o,u,a,l,d,p;if(t)try{for(d=gw(t,";,;"),u=d,a=0,l=u.length;a>16&Ni|n^r<<16},s.Kc=function(){return new Sje(this)},s.Ib=function(){return this.a==null&&this.b==null?"pair(null,null)":this.a==null?"pair(null,"+Ro(this.b)+")":this.b==null?"pair("+Ro(this.a)+",null)":"pair("+Ro(this.a)+","+Ro(this.b)+")"},S(fc,"Pair",46),y(983,1,dr,Sje),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return!this.c&&(!this.b&&this.a.a!=null||this.a.b!=null)},s.Pb=function(){if(!this.c&&!this.b&&this.a.a!=null)return this.b=!0,this.a.a;if(!this.c&&this.a.b!=null)return this.c=!0,this.a.b;throw V(new tc)},s.Qb=function(){throw this.c&&this.a.b!=null?this.a.b=null:this.b&&this.a.a!=null&&(this.a.a=null),V(new hs)},s.b=!1,s.c=!1,S(fc,"Pair/1",983),y(448,1,{448:1},Zxe),s.Fb=function(t){return wc(this.a,c(t,448).a)&&wc(this.c,c(t,448).c)&&wc(this.d,c(t,448).d)&&wc(this.b,c(t,448).b)},s.Hb=function(){return ZO(U(G(xt,1),xe,1,5,[this.a,this.c,this.d,this.b]))},s.Ib=function(){return"("+this.a+zr+this.c+zr+this.d+zr+this.b+")"},S(fc,"Quadruple",448),y(1126,209,rb,d6e),s.Ze=function(t,n){var i,r,o,u,a;if(Wt(n,"Random Layout",1),(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i==0){qt(n);return}u=c(Ke(t,(Toe(),Ylt)),19),u&&u.a!=0?o=new cO(u.a):o=new jK,i=WM(Te(Ke(t,Ult))),a=WM(Te(Ke(t,Xlt))),r=c(Ke(t,Wlt),116),Vqt(t,o,i,a,r),qt(n)},S(fc,"RandomLayoutProvider",1126);var ift;y(553,1,{}),s.qf=function(){return new $e(this.f.i,this.f.j)},s.We=function(t){return MLe(t,(kn(),zs))?Ke(this.f,rft):Ke(this.f,t)},s.rf=function(){return new $e(this.f.g,this.f.f)},s.sf=function(){return this.g},s.Xe=function(t){return Fg(this.f,t)},s.tf=function(t){es(this.f,t.a),ts(this.f,t.b)},s.uf=function(t){p0(this.f,t.a),b0(this.f,t.b)},s.vf=function(t){this.g=t},s.g=0;var rft;S(U6,"ElkGraphAdapters/AbstractElkGraphElementAdapter",553),y(554,1,{839:1},qA),s.wf=function(){var t,n;if(!this.b)for(this.b=nO(R8(this.a).i),n=new $t(R8(this.a));n.e!=n.i.gc();)t=c(Vt(n),137),Ee(this.b,new GN(t));return this.b},s.b=null,S(U6,"ElkGraphAdapters/ElkEdgeAdapter",554),y(301,553,{},Ip),s.xf=function(){return Zze(this)},s.a=null,S(U6,"ElkGraphAdapters/ElkGraphAdapter",301),y(630,553,{181:1},GN),S(U6,"ElkGraphAdapters/ElkLabelAdapter",630),y(629,553,{680:1},VF),s.wf=function(){return U8t(this)},s.Af=function(){var t;return t=c(Ke(this.f,(kn(),Dj)),142),!t&&(t=new OS),t},s.Cf=function(){return W8t(this)},s.Ef=function(t){var n;n=new cB(t),ao(this.f,(kn(),Dj),n)},s.Ff=function(t){ao(this.f,(kn(),Sb),new Ste(t))},s.yf=function(){return this.d},s.zf=function(){var t,n;if(!this.a)for(this.a=new Se,n=new Kt(Ht(XI(c(this.f,33)).a.Kc(),new j));dn(n);)t=c(rn(n),79),Ee(this.a,new qA(t));return this.a},s.Bf=function(){var t,n;if(!this.c)for(this.c=new Se,n=new Kt(Ht(Fh(c(this.f,33)).a.Kc(),new j));dn(n);)t=c(rn(n),79),Ee(this.c,new qA(t));return this.c},s.Df=function(){return $8(c(this.f,33)).i!=0||Be(Fe(c(this.f,33).We((kn(),Oj))))},s.Gf=function(){FCt(this,(Ap(),ift))},s.a=null,s.b=null,s.c=null,s.d=null,s.e=null,S(U6,"ElkGraphAdapters/ElkNodeAdapter",629),y(1266,553,{838:1},Qje),s.wf=function(){return nOt(this)},s.zf=function(){var t,n;if(!this.a)for(this.a=Ff(c(this.f,118).xg().i),n=new $t(c(this.f,118).xg());n.e!=n.i.gc();)t=c(Vt(n),79),Ee(this.a,new qA(t));return this.a},s.Bf=function(){var t,n;if(!this.c)for(this.c=Ff(c(this.f,118).yg().i),n=new $t(c(this.f,118).yg());n.e!=n.i.gc();)t=c(Vt(n),79),Ee(this.c,new qA(t));return this.c},s.Hf=function(){return c(c(this.f,118).We((kn(),Gv)),61)},s.If=function(){var t,n,i,r,o,u,a,l;for(r=jl(c(this.f,118)),i=new $t(c(this.f,118).yg());i.e!=i.i.gc();)for(t=c(Vt(i),79),l=new $t((!t.c&&(t.c=new dt(Ut,t,5,8)),t.c));l.e!=l.i.gc();){if(a=c(Vt(l),82),Jp(Co(a),r))return!0;if(Co(a)==r&&Be(Fe(Ke(t,(kn(),UW)))))return!0}for(n=new $t(c(this.f,118).xg());n.e!=n.i.gc();)for(t=c(Vt(n),79),u=new $t((!t.b&&(t.b=new dt(Ut,t,4,7)),t.b));u.e!=u.i.gc();)if(o=c(Vt(u),82),Jp(Co(o),r))return!0;return!1},s.a=null,s.b=null,s.c=null,S(U6,"ElkGraphAdapters/ElkPortAdapter",1266),y(1267,1,Zn,g6e),s.ue=function(t,n){return PFt(c(t,118),c(n,118))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(U6,"ElkGraphAdapters/PortComparator",1267);var J1=pi(Hu,"EObject"),x4=pi(mv,$Ze),ma=pi(mv,KZe),Hj=pi(mv,qZe),zj=pi(mv,"ElkShape"),Ut=pi(mv,HZe),rr=pi(mv,mfe),mi=pi(mv,zZe),Vj=pi(Hu,VZe),iM=pi(Hu,"EFactory"),oft,sY=pi(Hu,GZe),ml=pi(Hu,"EPackage"),lr,cft,sft,Vwe,Ox,uft,Gwe,Uwe,Wwe,Q1,aft,lft,Lo=pi(mv,vfe),Ei=pi(mv,yfe),Vs=pi(mv,_fe);y(90,1,UZe),s.Jg=function(){return this.Kg(),null},s.Kg=function(){return null},s.Lg=function(){return this.Kg(),!1},s.Mg=function(){return!1},s.Ng=function(t){Bn(this,t)},S(F2,"BasicNotifierImpl",90),y(97,90,JZe),s.nh=function(){return Qs(this)},s.Og=function(t,n){return t},s.Pg=function(){throw V(new sn)},s.Qg=function(t){var n;return n=Xr(c(at(this.Tg(),this.Vg()),18)),this.eh().ih(this,n.n,n.f,t)},s.Rg=function(t,n){throw V(new sn)},s.Sg=function(t,n,i){return yu(this,t,n,i)},s.Tg=function(){var t;return this.Pg()&&(t=this.Pg().ck(),t)?t:this.zh()},s.Ug=function(){return Dq(this)},s.Vg=function(){throw V(new sn)},s.Wg=function(){var t,n;return n=this.ph().dk(),!n&&this.Pg().ik(n=(GS(),t=$ne(wf(this.Tg())),t==null?bY:new mC(this,t))),n},s.Xg=function(t,n){return t},s.Yg=function(t){var n;return n=t.Gj(),n?t.aj():di(this.Tg(),t)},s.Zg=function(){var t;return t=this.Pg(),t?t.fk():null},s.$g=function(){return this.Pg()?this.Pg().ck():null},s._g=function(t,n,i){return _7(this,t,n,i)},s.ah=function(t){return x_(this,t)},s.bh=function(t,n){return S$(this,t,n)},s.dh=function(){var t;return t=this.Pg(),!!t&&t.gk()},s.eh=function(){throw V(new sn)},s.fh=function(){return g7(this)},s.gh=function(t,n,i,r){return w2(this,t,n,r)},s.hh=function(t,n,i){var r;return r=c(at(this.Tg(),n),66),r.Nj().Qj(this,this.yh(),n-this.Ah(),t,i)},s.ih=function(t,n,i,r){return z8(this,t,n,r)},s.jh=function(t,n,i){var r;return r=c(at(this.Tg(),n),66),r.Nj().Rj(this,this.yh(),n-this.Ah(),t,i)},s.kh=function(){return!!this.Pg()&&!!this.Pg().ek()},s.lh=function(t){return HK(this,t)},s.mh=function(t){return qLe(this,t)},s.oh=function(t){return dXe(this,t)},s.ph=function(){throw V(new sn)},s.qh=function(){return this.Pg()?this.Pg().ek():null},s.rh=function(){return g7(this)},s.sh=function(t,n){Iq(this,t,n)},s.th=function(t){this.ph().hk(t)},s.uh=function(t){this.ph().kk(t)},s.vh=function(t){this.ph().jk(t)},s.wh=function(t,n){var i,r,o,u;return u=this.Zg(),u&&t&&(n=Fr(u.Vk(),this,n),u.Zk(this)),r=this.eh(),r&&((Wq(this,this.eh(),this.Vg()).Bb&Vr)!=0?(o=r.fh(),o&&(t?!u&&o.Zk(this):o.Yk(this))):(n=(i=this.Vg(),i>=0?this.Qg(n):this.eh().ih(this,-1-i,null,n)),n=this.Sg(null,-1,n))),this.uh(t),n},s.xh=function(t){var n,i,r,o,u,a,l,d;if(i=this.Tg(),u=di(i,t),n=this.Ah(),u>=n)return c(t,66).Nj().Uj(this,this.yh(),u-n);if(u<=-1)if(a=uv((vs(),Ir),i,t),a){if(Wr(),c(a,66).Oj()||(a=r2(wo(Ir,a))),o=(r=this.Yg(a),c(r>=0?this._g(r,!0,!0):j0(this,a,!0),153)),d=a.Zj(),d>1||d==-1)return c(c(o,215).hl(t,!1),76)}else throw V(new St(x1+t.ne()+PV));else if(t.$j())return r=this.Yg(t),c(r>=0?this._g(r,!1,!0):j0(this,t,!1),76);return l=new u7e(this,t),l},s.yh=function(){return Kie(this)},s.zh=function(){return(g1(),wt).S},s.Ah=function(){return Ft(this.zh())},s.Bh=function(t){Eq(this,t)},s.Ib=function(){return Ba(this)},S(mt,"BasicEObjectImpl",97);var fft;y(114,97,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1}),s.Ch=function(t){var n;return n=qie(this),n[t]},s.Dh=function(t,n){var i;i=qie(this),vi(i,t,n)},s.Eh=function(t){var n;n=qie(this),vi(n,t,null)},s.Jg=function(){return c(vt(this,4),126)},s.Kg=function(){throw V(new sn)},s.Lg=function(){return(this.Db&4)!=0},s.Pg=function(){throw V(new sn)},s.Fh=function(t){p2(this,2,t)},s.Rg=function(t,n){this.Db=n<<16|this.Db&255,this.Fh(t)},s.Tg=function(){return Xc(this)},s.Vg=function(){return this.Db>>16},s.Wg=function(){var t,n;return GS(),n=$ne(wf((t=c(vt(this,16),26),t||this.zh()))),n==null?bY:new mC(this,n)},s.Mg=function(){return(this.Db&1)==0},s.Zg=function(){return c(vt(this,128),1935)},s.$g=function(){return c(vt(this,16),26)},s.dh=function(){return(this.Db&32)!=0},s.eh=function(){return c(vt(this,2),49)},s.kh=function(){return(this.Db&64)!=0},s.ph=function(){throw V(new sn)},s.qh=function(){return c(vt(this,64),281)},s.th=function(t){p2(this,16,t)},s.uh=function(t){p2(this,128,t)},s.vh=function(t){p2(this,64,t)},s.yh=function(){return $c(this)},s.Db=0,S(mt,"MinimalEObjectImpl",114),y(115,114,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s.Fh=function(t){this.Cb=t},s.eh=function(){return this.Cb},S(mt,"MinimalEObjectImpl/Container",115),y(1985,115,{105:1,413:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return Zoe(this,t,n,i)},s.jh=function(t,n,i){return Kce(this,t,n,i)},s.lh=function(t){return Qne(this,t)},s.sh=function(t,n){Fre(this,t,n)},s.zh=function(){return xc(),lft},s.Bh=function(t){Ire(this,t)},s.Ve=function(){return yze(this)},s.We=function(t){return Ke(this,t)},s.Xe=function(t){return Fg(this,t)},s.Ye=function(t,n){return ao(this,t,n)},S(sb,"EMapPropertyHolderImpl",1985),y(567,115,{105:1,469:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},OA),s._g=function(t,n,i){switch(t){case 0:return this.a;case 1:return this.b}return _7(this,t,n,i)},s.lh=function(t){switch(t){case 0:return this.a!=0;case 1:return this.b!=0}return HK(this,t)},s.sh=function(t,n){switch(t){case 0:jO(this,ge(Te(n)));return;case 1:AO(this,ge(Te(n)));return}Iq(this,t,n)},s.zh=function(){return xc(),cft},s.Bh=function(t){switch(t){case 0:jO(this,0);return;case 1:AO(this,0);return}Eq(this,t)},s.Ib=function(){var t;return(this.Db&64)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (x: ",Sm(t,this.a),t.a+=", y: ",Sm(t,this.b),t.a+=")",t.a)},s.a=0,s.b=0,S(sb,"ElkBendPointImpl",567),y(723,1985,{105:1,413:1,160:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return ioe(this,t,n,i)},s.hh=function(t,n,i){return pq(this,t,n,i)},s.jh=function(t,n,i){return eK(this,t,n,i)},s.lh=function(t){return vre(this,t)},s.sh=function(t,n){mce(this,t,n)},s.zh=function(){return xc(),uft},s.Bh=function(t){Zre(this,t)},s.zg=function(){return this.k},s.Ag=function(){return R8(this)},s.Ib=function(){return IK(this)},s.k=null,S(sb,"ElkGraphElementImpl",723),y(724,723,{105:1,413:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return doe(this,t,n,i)},s.lh=function(t){return yoe(this,t)},s.sh=function(t,n){vce(this,t,n)},s.zh=function(){return xc(),aft},s.Bh=function(t){Moe(this,t)},s.Bg=function(){return this.f},s.Cg=function(){return this.g},s.Dg=function(){return this.i},s.Eg=function(){return this.j},s.Fg=function(t,n){K9(this,t,n)},s.Gg=function(t,n){Cl(this,t,n)},s.Hg=function(t){es(this,t)},s.Ig=function(t){ts(this,t)},s.Ib=function(){return _q(this)},s.f=0,s.g=0,s.i=0,s.j=0,S(sb,"ElkShapeImpl",724),y(725,724,{105:1,413:1,82:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return Uoe(this,t,n,i)},s.hh=function(t,n,i){return hce(this,t,n,i)},s.jh=function(t,n,i){return dce(this,t,n,i)},s.lh=function(t){return Lre(this,t)},s.sh=function(t,n){Ese(this,t,n)},s.zh=function(){return xc(),sft},s.Bh=function(t){Boe(this,t)},s.xg=function(){return!this.d&&(this.d=new dt(rr,this,8,5)),this.d},s.yg=function(){return!this.e&&(this.e=new dt(rr,this,7,4)),this.e},S(sb,"ElkConnectableShapeImpl",725),y(352,723,{105:1,413:1,79:1,160:1,352:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},$J),s.Qg=function(t){return uce(this,t)},s._g=function(t,n,i){switch(t){case 3:return KC(this);case 4:return!this.b&&(this.b=new dt(Ut,this,4,7)),this.b;case 5:return!this.c&&(this.c=new dt(Ut,this,5,8)),this.c;case 6:return!this.a&&(this.a=new Me(mi,this,6,6)),this.a;case 7:return Pt(),!this.b&&(this.b=new dt(Ut,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i<=1));case 8:return Pt(),!!b6(this);case 9:return Pt(),!!T0(this);case 10:return Pt(),!this.b&&(this.b=new dt(Ut,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i!=0)}return ioe(this,t,n,i)},s.hh=function(t,n,i){var r;switch(n){case 3:return this.Cb&&(i=(r=this.Db>>16,r>=0?uce(this,i):this.Cb.ih(this,-1-r,null,i))),tte(this,c(t,33),i);case 4:return!this.b&&(this.b=new dt(Ut,this,4,7)),Rc(this.b,t,i);case 5:return!this.c&&(this.c=new dt(Ut,this,5,8)),Rc(this.c,t,i);case 6:return!this.a&&(this.a=new Me(mi,this,6,6)),Rc(this.a,t,i)}return pq(this,t,n,i)},s.jh=function(t,n,i){switch(n){case 3:return tte(this,null,i);case 4:return!this.b&&(this.b=new dt(Ut,this,4,7)),Fr(this.b,t,i);case 5:return!this.c&&(this.c=new dt(Ut,this,5,8)),Fr(this.c,t,i);case 6:return!this.a&&(this.a=new Me(mi,this,6,6)),Fr(this.a,t,i)}return eK(this,t,n,i)},s.lh=function(t){switch(t){case 3:return!!KC(this);case 4:return!!this.b&&this.b.i!=0;case 5:return!!this.c&&this.c.i!=0;case 6:return!!this.a&&this.a.i!=0;case 7:return!this.b&&(this.b=new dt(Ut,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i<=1));case 8:return b6(this);case 9:return T0(this);case 10:return!this.b&&(this.b=new dt(Ut,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i!=0)}return vre(this,t)},s.sh=function(t,n){switch(t){case 3:Fq(this,c(n,33));return;case 4:!this.b&&(this.b=new dt(Ut,this,4,7)),Xt(this.b),!this.b&&(this.b=new dt(Ut,this,4,7)),Mi(this.b,c(n,14));return;case 5:!this.c&&(this.c=new dt(Ut,this,5,8)),Xt(this.c),!this.c&&(this.c=new dt(Ut,this,5,8)),Mi(this.c,c(n,14));return;case 6:!this.a&&(this.a=new Me(mi,this,6,6)),Xt(this.a),!this.a&&(this.a=new Me(mi,this,6,6)),Mi(this.a,c(n,14));return}mce(this,t,n)},s.zh=function(){return xc(),Vwe},s.Bh=function(t){switch(t){case 3:Fq(this,null);return;case 4:!this.b&&(this.b=new dt(Ut,this,4,7)),Xt(this.b);return;case 5:!this.c&&(this.c=new dt(Ut,this,5,8)),Xt(this.c);return;case 6:!this.a&&(this.a=new Me(mi,this,6,6)),Xt(this.a);return}Zre(this,t)},s.Ib=function(){return QYe(this)},S(sb,"ElkEdgeImpl",352),y(439,1985,{105:1,413:1,202:1,439:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},DA),s.Qg=function(t){return rce(this,t)},s._g=function(t,n,i){switch(t){case 1:return this.j;case 2:return this.k;case 3:return this.b;case 4:return this.c;case 5:return!this.a&&(this.a=new qi(ma,this,5)),this.a;case 6:return BLe(this);case 7:return n?WK(this):this.i;case 8:return n?UK(this):this.f;case 9:return!this.g&&(this.g=new dt(mi,this,9,10)),this.g;case 10:return!this.e&&(this.e=new dt(mi,this,10,9)),this.e;case 11:return this.d}return Zoe(this,t,n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 6:return this.Cb&&(i=(o=this.Db>>16,o>=0?rce(this,i):this.Cb.ih(this,-1-o,null,i))),nte(this,c(t,79),i);case 9:return!this.g&&(this.g=new dt(mi,this,9,10)),Rc(this.g,t,i);case 10:return!this.e&&(this.e=new dt(mi,this,10,9)),Rc(this.e,t,i)}return u=c(at((r=c(vt(this,16),26),r||(xc(),Ox)),n),66),u.Nj().Qj(this,$c(this),n-Ft((xc(),Ox)),t,i)},s.jh=function(t,n,i){switch(n){case 5:return!this.a&&(this.a=new qi(ma,this,5)),Fr(this.a,t,i);case 6:return nte(this,null,i);case 9:return!this.g&&(this.g=new dt(mi,this,9,10)),Fr(this.g,t,i);case 10:return!this.e&&(this.e=new dt(mi,this,10,9)),Fr(this.e,t,i)}return Kce(this,t,n,i)},s.lh=function(t){switch(t){case 1:return this.j!=0;case 2:return this.k!=0;case 3:return this.b!=0;case 4:return this.c!=0;case 5:return!!this.a&&this.a.i!=0;case 6:return!!BLe(this);case 7:return!!this.i;case 8:return!!this.f;case 9:return!!this.g&&this.g.i!=0;case 10:return!!this.e&&this.e.i!=0;case 11:return this.d!=null}return Qne(this,t)},s.sh=function(t,n){switch(t){case 1:K_(this,ge(Te(n)));return;case 2:H_(this,ge(Te(n)));return;case 3:$_(this,ge(Te(n)));return;case 4:q_(this,ge(Te(n)));return;case 5:!this.a&&(this.a=new qi(ma,this,5)),Xt(this.a),!this.a&&(this.a=new qi(ma,this,5)),Mi(this.a,c(n,14));return;case 6:ZUe(this,c(n,79));return;case 7:xO(this,c(n,82));return;case 8:RO(this,c(n,82));return;case 9:!this.g&&(this.g=new dt(mi,this,9,10)),Xt(this.g),!this.g&&(this.g=new dt(mi,this,9,10)),Mi(this.g,c(n,14));return;case 10:!this.e&&(this.e=new dt(mi,this,10,9)),Xt(this.e),!this.e&&(this.e=new dt(mi,this,10,9)),Mi(this.e,c(n,14));return;case 11:lre(this,ln(n));return}Fre(this,t,n)},s.zh=function(){return xc(),Ox},s.Bh=function(t){switch(t){case 1:K_(this,0);return;case 2:H_(this,0);return;case 3:$_(this,0);return;case 4:q_(this,0);return;case 5:!this.a&&(this.a=new qi(ma,this,5)),Xt(this.a);return;case 6:ZUe(this,null);return;case 7:xO(this,null);return;case 8:RO(this,null);return;case 9:!this.g&&(this.g=new dt(mi,this,9,10)),Xt(this.g);return;case 10:!this.e&&(this.e=new dt(mi,this,10,9)),Xt(this.e);return;case 11:lre(this,null);return}Ire(this,t)},s.Ib=function(){return wUe(this)},s.b=0,s.c=0,s.d=null,s.j=0,s.k=0,S(sb,"ElkEdgeSectionImpl",439),y(150,115,{105:1,92:1,90:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),s._g=function(t,n,i){var r;return t==0?(!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab):Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.hh=function(t,n,i){var r,o;return n==0?(!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i)):(o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Qj(this,$c(this),n-Ft(this.zh()),t,i))},s.jh=function(t,n,i){var r,o;return n==0?(!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i)):(o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i))},s.lh=function(t){var n;return t==0?!!this.Ab&&this.Ab.i!=0:xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.oh=function(t){return Aue(this,t)},s.sh=function(t,n){var i;if(t===0){!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.uh=function(t){p2(this,128,t)},s.zh=function(){return ot(),jft},s.Bh=function(t){var n;if(t===0){!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.Gh=function(){this.Bb|=1},s.Hh=function(t){return y6(this,t)},s.Bb=0,S(mt,"EModelElementImpl",150),y(704,150,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},GJ),s.Ih=function(t,n){return TXe(this,t,n)},s.Jh=function(t){var n,i,r,o,u;if(this.a!=bu(t)||(t.Bb&256)!=0)throw V(new St(CV+t.zb+K0));for(r=So(t);dc(r.a).i!=0;){if(i=c(sT(r,0,(n=c(ee(dc(r.a),0),87),u=n.c,Q(u,88)?c(u,26):(ot(),Ea))),26),I0(i))return o=bu(i).Nh().Jh(i),c(o,49).th(t),o;r=So(i)}return(t.D!=null?t.D:t.B)=="java.util.Map$Entry"?new SRe(t):new qte(t)},s.Kh=function(t,n){return R0(this,t,n)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.a}return Nu(this,t-Ft((ot(),ng)),at((r=c(vt(this,16),26),r||ng),t),n,i)},s.hh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 1:return this.a&&(i=c(this.a,49).ih(this,4,ml,i)),Jre(this,c(t,235),i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),ng)),n),66),o.Nj().Qj(this,$c(this),n-Ft((ot(),ng)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 1:return Jre(this,null,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),ng)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),ng)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return!!this.a}return xu(this,t-Ft((ot(),ng)),at((n=c(vt(this,16),26),n||ng),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:ZVe(this,c(n,235));return}qu(this,t-Ft((ot(),ng)),at((i=c(vt(this,16),26),i||ng),t),n)},s.zh=function(){return ot(),ng},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:ZVe(this,null);return}$u(this,t-Ft((ot(),ng)),at((n=c(vt(this,16),26),n||ng),t))};var rM,Ywe,hft;S(mt,"EFactoryImpl",704),y(Ka,704,{105:1,2014:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},p6e),s.Ih=function(t,n){switch(t.yj()){case 12:return c(n,146).tg();case 13:return Ro(n);default:throw V(new St(UE+t.ne()+K0))}},s.Jh=function(t){var n,i,r,o,u,a,l,d;switch(t.G==-1&&(t.G=(n=bu(t),n?wd(n.Mh(),t):-1)),t.G){case 4:return u=new KJ,u;case 6:return a=new VQ,a;case 7:return l=new GQ,l;case 8:return r=new $J,r;case 9:return i=new OA,i;case 10:return o=new DA,o;case 11:return d=new w6e,d;default:throw V(new St(CV+t.zb+K0))}},s.Kh=function(t,n){switch(t.yj()){case 13:case 12:return null;default:throw V(new St(UE+t.ne()+K0))}},S(sb,"ElkGraphFactoryImpl",Ka),y(438,150,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),s.Wg=function(){var t,n;return n=(t=c(vt(this,16),26),$ne(wf(t||this.zh()))),n==null?(GS(),GS(),bY):new zDe(this,n)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.ne()}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:this.Lh(ln(n));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),Aft},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:this.Lh(null);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.ne=function(){return this.zb},s.Lh=function(t){kc(this,t)},s.Ib=function(){return J5(this)},s.zb=null,S(mt,"ENamedElementImpl",438),y(179,438,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},PLe),s.Qg=function(t){return dVe(this,t)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.yb;case 3:return this.xb;case 4:return this.sb;case 5:return!this.rb&&(this.rb=new Kp(this,vl,this)),this.rb;case 6:return!this.vb&&(this.vb=new Uy(ml,this,6,7)),this.vb;case 7:return n?this.Db>>16==7?c(this.Cb,235):null:$Le(this)}return Nu(this,t-Ft((ot(),Nd)),at((r=c(vt(this,16),26),r||Nd),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 4:return this.sb&&(i=c(this.sb,49).ih(this,1,iM,i)),toe(this,c(t,471),i);case 5:return!this.rb&&(this.rb=new Kp(this,vl,this)),Rc(this.rb,t,i);case 6:return!this.vb&&(this.vb=new Uy(ml,this,6,7)),Rc(this.vb,t,i);case 7:return this.Cb&&(i=(o=this.Db>>16,o>=0?dVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,7,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),Nd)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),Nd)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 4:return toe(this,null,i);case 5:return!this.rb&&(this.rb=new Kp(this,vl,this)),Fr(this.rb,t,i);case 6:return!this.vb&&(this.vb=new Uy(ml,this,6,7)),Fr(this.vb,t,i);case 7:return yu(this,null,7,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),Nd)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),Nd)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.yb!=null;case 3:return this.xb!=null;case 4:return!!this.sb;case 5:return!!this.rb&&this.rb.i!=0;case 6:return!!this.vb&&this.vb.i!=0;case 7:return!!$Le(this)}return xu(this,t-Ft((ot(),Nd)),at((n=c(vt(this,16),26),n||Nd),t))},s.oh=function(t){var n;return n=GLt(this,t),n||Aue(this,t)},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:qO(this,ln(n));return;case 3:KO(this,ln(n));return;case 4:yq(this,c(n,471));return;case 5:!this.rb&&(this.rb=new Kp(this,vl,this)),Xt(this.rb),!this.rb&&(this.rb=new Kp(this,vl,this)),Mi(this.rb,c(n,14));return;case 6:!this.vb&&(this.vb=new Uy(ml,this,6,7)),Xt(this.vb),!this.vb&&(this.vb=new Uy(ml,this,6,7)),Mi(this.vb,c(n,14));return}qu(this,t-Ft((ot(),Nd)),at((i=c(vt(this,16),26),i||Nd),t),n)},s.vh=function(t){var n,i;if(t&&this.rb)for(i=new $t(this.rb);i.e!=i.i.gc();)n=Vt(i),Q(n,351)&&(c(n,351).w=null);p2(this,64,t)},s.zh=function(){return ot(),Nd},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:qO(this,null);return;case 3:KO(this,null);return;case 4:yq(this,null);return;case 5:!this.rb&&(this.rb=new Kp(this,vl,this)),Xt(this.rb);return;case 6:!this.vb&&(this.vb=new Uy(ml,this,6,7)),Xt(this.vb);return}$u(this,t-Ft((ot(),Nd)),at((n=c(vt(this,16),26),n||Nd),t))},s.Gh=function(){sq(this)},s.Mh=function(){return!this.rb&&(this.rb=new Kp(this,vl,this)),this.rb},s.Nh=function(){return this.sb},s.Oh=function(){return this.ub},s.Ph=function(){return this.xb},s.Qh=function(){return this.yb},s.Rh=function(t){this.ub=t},s.Ib=function(){var t;return(this.Db&64)!=0?J5(this):(t=new ea(J5(this)),t.a+=" (nsURI: ",co(t,this.yb),t.a+=", nsPrefix: ",co(t,this.xb),t.a+=")",t.a)},s.xb=null,s.yb=null,S(mt,"EPackageImpl",179),y(555,179,{105:1,2016:1,555:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},CUe),s.q=!1,s.r=!1;var dft=!1;S(sb,"ElkGraphPackageImpl",555),y(354,724,{105:1,413:1,160:1,137:1,470:1,354:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},KJ),s.Qg=function(t){return oce(this,t)},s._g=function(t,n,i){switch(t){case 7:return KLe(this);case 8:return this.a}return doe(this,t,n,i)},s.hh=function(t,n,i){var r;return n===7?(this.Cb&&(i=(r=this.Db>>16,r>=0?oce(this,i):this.Cb.ih(this,-1-r,null,i))),ine(this,c(t,160),i)):pq(this,t,n,i)},s.jh=function(t,n,i){return n==7?ine(this,null,i):eK(this,t,n,i)},s.lh=function(t){switch(t){case 7:return!!KLe(this);case 8:return!rt("",this.a)}return yoe(this,t)},s.sh=function(t,n){switch(t){case 7:Lse(this,c(n,160));return;case 8:ire(this,ln(n));return}vce(this,t,n)},s.zh=function(){return xc(),Gwe},s.Bh=function(t){switch(t){case 7:Lse(this,null);return;case 8:ire(this,"");return}Moe(this,t)},s.Ib=function(){return dGe(this)},s.a="",S(sb,"ElkLabelImpl",354),y(239,725,{105:1,413:1,82:1,160:1,33:1,470:1,239:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},VQ),s.Qg=function(t){return ace(this,t)},s._g=function(t,n,i){switch(t){case 9:return!this.c&&(this.c=new Me(Vs,this,9,9)),this.c;case 10:return!this.a&&(this.a=new Me(Ei,this,10,11)),this.a;case 11:return yi(this);case 12:return!this.b&&(this.b=new Me(rr,this,12,3)),this.b;case 13:return Pt(),!this.a&&(this.a=new Me(Ei,this,10,11)),this.a.i>0}return Uoe(this,t,n,i)},s.hh=function(t,n,i){var r;switch(n){case 9:return!this.c&&(this.c=new Me(Vs,this,9,9)),Rc(this.c,t,i);case 10:return!this.a&&(this.a=new Me(Ei,this,10,11)),Rc(this.a,t,i);case 11:return this.Cb&&(i=(r=this.Db>>16,r>=0?ace(this,i):this.Cb.ih(this,-1-r,null,i))),fte(this,c(t,33),i);case 12:return!this.b&&(this.b=new Me(rr,this,12,3)),Rc(this.b,t,i)}return hce(this,t,n,i)},s.jh=function(t,n,i){switch(n){case 9:return!this.c&&(this.c=new Me(Vs,this,9,9)),Fr(this.c,t,i);case 10:return!this.a&&(this.a=new Me(Ei,this,10,11)),Fr(this.a,t,i);case 11:return fte(this,null,i);case 12:return!this.b&&(this.b=new Me(rr,this,12,3)),Fr(this.b,t,i)}return dce(this,t,n,i)},s.lh=function(t){switch(t){case 9:return!!this.c&&this.c.i!=0;case 10:return!!this.a&&this.a.i!=0;case 11:return!!yi(this);case 12:return!!this.b&&this.b.i!=0;case 13:return!this.a&&(this.a=new Me(Ei,this,10,11)),this.a.i>0}return Lre(this,t)},s.sh=function(t,n){switch(t){case 9:!this.c&&(this.c=new Me(Vs,this,9,9)),Xt(this.c),!this.c&&(this.c=new Me(Vs,this,9,9)),Mi(this.c,c(n,14));return;case 10:!this.a&&(this.a=new Me(Ei,this,10,11)),Xt(this.a),!this.a&&(this.a=new Me(Ei,this,10,11)),Mi(this.a,c(n,14));return;case 11:kse(this,c(n,33));return;case 12:!this.b&&(this.b=new Me(rr,this,12,3)),Xt(this.b),!this.b&&(this.b=new Me(rr,this,12,3)),Mi(this.b,c(n,14));return}Ese(this,t,n)},s.zh=function(){return xc(),Uwe},s.Bh=function(t){switch(t){case 9:!this.c&&(this.c=new Me(Vs,this,9,9)),Xt(this.c);return;case 10:!this.a&&(this.a=new Me(Ei,this,10,11)),Xt(this.a);return;case 11:kse(this,null);return;case 12:!this.b&&(this.b=new Me(rr,this,12,3)),Xt(this.b);return}Boe(this,t)},s.Ib=function(){return Jse(this)},S(sb,"ElkNodeImpl",239),y(186,725,{105:1,413:1,82:1,160:1,118:1,470:1,186:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},GQ),s.Qg=function(t){return cce(this,t)},s._g=function(t,n,i){return t==9?jl(this):Uoe(this,t,n,i)},s.hh=function(t,n,i){var r;return n===9?(this.Cb&&(i=(r=this.Db>>16,r>=0?cce(this,i):this.Cb.ih(this,-1-r,null,i))),ite(this,c(t,33),i)):hce(this,t,n,i)},s.jh=function(t,n,i){return n==9?ite(this,null,i):dce(this,t,n,i)},s.lh=function(t){return t==9?!!jl(this):Lre(this,t)},s.sh=function(t,n){if(t===9){Dse(this,c(n,33));return}Ese(this,t,n)},s.zh=function(){return xc(),Wwe},s.Bh=function(t){if(t===9){Dse(this,null);return}Boe(this,t)},s.Ib=function(){return ZWe(this)},S(sb,"ElkPortImpl",186);var gft=pi(Br,"BasicEMap/Entry");y(1092,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,114:1,115:1},w6e),s.Fb=function(t){return this===t},s.cd=function(){return this.b},s.Hb=function(){return Xb(this)},s.Uh=function(t){rre(this,c(t,146))},s._g=function(t,n,i){switch(t){case 0:return this.b;case 1:return this.c}return _7(this,t,n,i)},s.lh=function(t){switch(t){case 0:return!!this.b;case 1:return this.c!=null}return HK(this,t)},s.sh=function(t,n){switch(t){case 0:rre(this,c(n,146));return;case 1:sre(this,n);return}Iq(this,t,n)},s.zh=function(){return xc(),Q1},s.Bh=function(t){switch(t){case 0:rre(this,null);return;case 1:sre(this,null);return}Eq(this,t)},s.Sh=function(){var t;return this.a==-1&&(t=this.b,this.a=t?fi(t):0),this.a},s.dd=function(){return this.c},s.Th=function(t){this.a=t},s.ed=function(t){var n;return n=this.c,sre(this,t),n},s.Ib=function(){var t;return(this.Db&64)!=0?Ba(this):(t=new n1,wn(wn(wn(t,this.b?this.b.tg():rs),Sz),g5(this.c)),t.a)},s.a=-1,s.c=null;var op=S(sb,"ElkPropertyToValueMapEntryImpl",1092);y(984,1,{},y6e),S(Cr,"JsonAdapter",984),y(210,60,$h,sf),S(Cr,"JsonImportException",210),y(857,1,{},gVe),S(Cr,"JsonImporter",857),y(891,1,{},HOe),S(Cr,"JsonImporter/lambda$0$Type",891),y(892,1,{},zOe),S(Cr,"JsonImporter/lambda$1$Type",892),y(900,1,{},Pje),S(Cr,"JsonImporter/lambda$10$Type",900),y(902,1,{},VOe),S(Cr,"JsonImporter/lambda$11$Type",902),y(903,1,{},GOe),S(Cr,"JsonImporter/lambda$12$Type",903),y(909,1,{},rLe),S(Cr,"JsonImporter/lambda$13$Type",909),y(908,1,{},iLe),S(Cr,"JsonImporter/lambda$14$Type",908),y(904,1,{},UOe),S(Cr,"JsonImporter/lambda$15$Type",904),y(905,1,{},WOe),S(Cr,"JsonImporter/lambda$16$Type",905),y(906,1,{},YOe),S(Cr,"JsonImporter/lambda$17$Type",906),y(907,1,{},XOe),S(Cr,"JsonImporter/lambda$18$Type",907),y(912,1,{},Mje),S(Cr,"JsonImporter/lambda$19$Type",912),y(893,1,{},Cje),S(Cr,"JsonImporter/lambda$2$Type",893),y(910,1,{},Ije),S(Cr,"JsonImporter/lambda$20$Type",910),y(911,1,{},Tje),S(Cr,"JsonImporter/lambda$21$Type",911),y(915,1,{},jje),S(Cr,"JsonImporter/lambda$22$Type",915),y(913,1,{},Aje),S(Cr,"JsonImporter/lambda$23$Type",913),y(914,1,{},Oje),S(Cr,"JsonImporter/lambda$24$Type",914),y(917,1,{},Dje),S(Cr,"JsonImporter/lambda$25$Type",917),y(916,1,{},kje),S(Cr,"JsonImporter/lambda$26$Type",916),y(918,1,Rt,JOe),s.td=function(t){_Ct(this.b,this.a,ln(t))},S(Cr,"JsonImporter/lambda$27$Type",918),y(919,1,Rt,QOe),s.td=function(t){ECt(this.b,this.a,ln(t))},S(Cr,"JsonImporter/lambda$28$Type",919),y(920,1,{},ZOe),S(Cr,"JsonImporter/lambda$29$Type",920),y(896,1,{},Rje),S(Cr,"JsonImporter/lambda$3$Type",896),y(921,1,{},e7e),S(Cr,"JsonImporter/lambda$30$Type",921),y(922,1,{},xje),S(Cr,"JsonImporter/lambda$31$Type",922),y(923,1,{},Lje),S(Cr,"JsonImporter/lambda$32$Type",923),y(924,1,{},Nje),S(Cr,"JsonImporter/lambda$33$Type",924),y(925,1,{},Fje),S(Cr,"JsonImporter/lambda$34$Type",925),y(859,1,{},Bje),S(Cr,"JsonImporter/lambda$35$Type",859),y(929,1,{},Yke),S(Cr,"JsonImporter/lambda$36$Type",929),y(926,1,Rt,$je),s.td=function(t){MMt(this.a,c(t,469))},S(Cr,"JsonImporter/lambda$37$Type",926),y(927,1,Rt,c7e),s.td=function(t){Zyt(this.a,this.b,c(t,202))},S(Cr,"JsonImporter/lambda$38$Type",927),y(928,1,Rt,s7e),s.td=function(t){e2t(this.a,this.b,c(t,202))},S(Cr,"JsonImporter/lambda$39$Type",928),y(894,1,{},Kje),S(Cr,"JsonImporter/lambda$4$Type",894),y(930,1,Rt,qje),s.td=function(t){CMt(this.a,c(t,8))},S(Cr,"JsonImporter/lambda$40$Type",930),y(895,1,{},Hje),S(Cr,"JsonImporter/lambda$5$Type",895),y(899,1,{},zje),S(Cr,"JsonImporter/lambda$6$Type",899),y(897,1,{},Vje),S(Cr,"JsonImporter/lambda$7$Type",897),y(898,1,{},Gje),S(Cr,"JsonImporter/lambda$8$Type",898),y(901,1,{},Uje),S(Cr,"JsonImporter/lambda$9$Type",901),y(948,1,Rt,Wje),s.td=function(t){Zy(this.a,new qp(ln(t)))},S(Cr,"JsonMetaDataConverter/lambda$0$Type",948),y(949,1,Rt,Yje),s.td=function(t){qSt(this.a,c(t,237))},S(Cr,"JsonMetaDataConverter/lambda$1$Type",949),y(950,1,Rt,Xje),s.td=function(t){B6t(this.a,c(t,149))},S(Cr,"JsonMetaDataConverter/lambda$2$Type",950),y(951,1,Rt,Jje),s.td=function(t){HSt(this.a,c(t,175))},S(Cr,"JsonMetaDataConverter/lambda$3$Type",951),y(237,22,{3:1,35:1,22:1,237:1},Hy);var Dx,kx,uY,Rx,xx,Lx,aY,lY,Nx=hn(_T,"GraphFeature",237,bn,fIt,d4t),bft;y(13,1,{35:1,146:1},hi,Wi,ut,Yr),s.wd=function(t){return Q2t(this,c(t,146))},s.Fb=function(t){return MLe(this,t)},s.wg=function(){return Le(this)},s.tg=function(){return this.b},s.Hb=function(){return md(this.b)},s.Ib=function(){return this.b},S(_T,"Property",13),y(818,1,Zn,PQ),s.ue=function(t,n){return pAt(this,c(t,94),c(n,94))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_T,"PropertyHolderComparator",818),y(695,1,dr,MQ),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return CCt(this)},s.Qb=function(){z9e()},s.Ob=function(){return!!this.a},S(nk,"ElkGraphUtil/AncestorIterator",695);var Xwe=pi(Br,"EList");y(67,52,{20:1,28:1,52:1,14:1,15:1,67:1,58:1}),s.Vc=function(t,n){e6(this,t,n)},s.Fc=function(t){return on(this,t)},s.Wc=function(t,n){return Tre(this,t,n)},s.Gc=function(t){return Mi(this,t)},s.Zh=function(){return new Gy(this)},s.$h=function(){return new vC(this)},s._h=function(t){return lI(this,t)},s.ai=function(){return!0},s.bi=function(t,n){},s.ci=function(){},s.di=function(t,n){M$(this,t,n)},s.ei=function(t,n,i){},s.fi=function(t,n){},s.gi=function(t,n,i){},s.Fb=function(t){return BWe(this,t)},s.Hb=function(){return Sre(this)},s.hi=function(){return!1},s.Kc=function(){return new $t(this)},s.Yc=function(){return new Vy(this)},s.Zc=function(t){var n;if(n=this.gc(),t<0||t>n)throw V(new Fp(t,n));return new AB(this,t)},s.ji=function(t,n){this.ii(t,this.Xc(n))},s.Mc=function(t){return _O(this,t)},s.li=function(t,n){return n},s._c=function(t,n){return Wm(this,t,n)},s.Ib=function(){return boe(this)},s.ni=function(){return!0},s.oi=function(t,n){return tE(this,n)},S(Br,"AbstractEList",67),y(63,67,Tf,RA,d0,bre),s.Vh=function(t,n){return wq(this,t,n)},s.Wh=function(t){return Kze(this,t)},s.Xh=function(t,n){MI(this,t,n)},s.Yh=function(t){UC(this,t)},s.pi=function(t){return Lie(this,t)},s.$b=function(){B5(this)},s.Hc=function(t){return pE(this,t)},s.Xb=function(t){return ee(this,t)},s.qi=function(t){var n,i,r;++this.j,i=this.g==null?0:this.g.length,t>i&&(r=this.g,n=i+(i/2|0)+4,n=0?(this.$c(n),!0):!1},s.mi=function(t,n){return this.Ui(t,this.oi(t,n))},s.gc=function(){return this.Vi()},s.Pc=function(){return this.Wi()},s.Qc=function(t){return this.Xi(t)},s.Ib=function(){return this.Yi()},S(Br,"DelegatingEList",1995),y(1996,1995,Net),s.Vh=function(t,n){return cue(this,t,n)},s.Wh=function(t){return this.Vh(this.Vi(),t)},s.Xh=function(t,n){PUe(this,t,n)},s.Yh=function(t){bUe(this,t)},s.ai=function(){return!this.bj()},s.$b=function(){C6(this)},s.Zi=function(t,n,i,r,o){return new ILe(this,t,n,i,r,o)},s.$i=function(t){Bn(this.Ai(),t)},s._i=function(){return null},s.aj=function(){return-1},s.Ai=function(){return null},s.bj=function(){return!1},s.cj=function(t,n){return n},s.dj=function(t,n){return n},s.ej=function(){return!1},s.fj=function(){return!this.Ri()},s.ii=function(t,n){var i,r;return this.ej()?(r=this.fj(),i=Fce(this,t,n),this.$i(this.Zi(7,Ce(n),i,t,r)),i):Fce(this,t,n)},s.$c=function(t){var n,i,r,o;return this.ej()?(i=null,r=this.fj(),n=this.Zi(4,o=g8(this,t),null,t,r),this.bj()&&o?(i=this.dj(o,i),i?(i.Ei(n),i.Fi()):this.$i(n)):i?(i.Ei(n),i.Fi()):this.$i(n),o):(o=g8(this,t),this.bj()&&o&&(i=this.dj(o,null),i&&i.Fi()),o)},s.mi=function(t,n){return DYe(this,t,n)},S(F2,"DelegatingNotifyingListImpl",1996),y(143,1,xT),s.Ei=function(t){return Mce(this,t)},s.Fi=function(){R$(this)},s.xi=function(){return this.d},s._i=function(){return null},s.gj=function(){return null},s.yi=function(t){return-1},s.zi=function(){return mWe(this)},s.Ai=function(){return null},s.Bi=function(){return Kse(this)},s.Ci=function(){return this.o<0?this.o<-2?-2-this.o-1:-1:this.o},s.hj=function(){return!1},s.Di=function(t){var n,i,r,o,u,a,l,d,p,v,A;switch(this.d){case 1:case 2:switch(o=t.xi(),o){case 1:case 2:if(u=t.Ai(),le(u)===le(this.Ai())&&this.yi(null)==t.yi(null))return this.g=t.zi(),t.xi()==1&&(this.d=1),!0}case 4:{switch(o=t.xi(),o){case 4:{if(u=t.Ai(),le(u)===le(this.Ai())&&this.yi(null)==t.yi(null))return p=Sue(this),d=this.o<0?this.o<-2?-2-this.o-1:-1:this.o,a=t.Ci(),this.d=6,A=new d0(2),d<=a?(on(A,this.n),on(A,t.Bi()),this.g=U(G(Qt,1),_n,25,15,[this.o=d,a+1])):(on(A,t.Bi()),on(A,this.n),this.g=U(G(Qt,1),_n,25,15,[this.o=a,d])),this.n=A,p||(this.o=-2-this.o-1),!0;break}}break}case 6:{switch(o=t.xi(),o){case 4:{if(u=t.Ai(),le(u)===le(this.Ai())&&this.yi(null)==t.yi(null)){for(p=Sue(this),a=t.Ci(),v=c(this.g,48),r=oe(Qt,_n,25,v.length+1,15,1),n=0;n>>0,n.toString(16))),r.a+=" (eventType: ",this.d){case 1:{r.a+="SET";break}case 2:{r.a+="UNSET";break}case 3:{r.a+="ADD";break}case 5:{r.a+="ADD_MANY";break}case 4:{r.a+="REMOVE";break}case 6:{r.a+="REMOVE_MANY";break}case 7:{r.a+="MOVE";break}case 8:{r.a+="REMOVING_ADAPTER";break}case 9:{r.a+="RESOLVE";break}default:{ZN(r,this.d);break}}if(cYe(this)&&(r.a+=", touch: true"),r.a+=", position: ",ZN(r,this.o<0?this.o<-2?-2-this.o-1:-1:this.o),r.a+=", notifier: ",u5(r,this.Ai()),r.a+=", feature: ",u5(r,this._i()),r.a+=", oldValue: ",u5(r,Kse(this)),r.a+=", newValue: ",this.d==6&&Q(this.g,48)){for(i=c(this.g,48),r.a+="[",t=0;t10?((!this.b||this.c.j!=this.a)&&(this.b=new _5(this),this.a=this.j),_h(this.b,t)):pE(this,t)},s.ni=function(){return!0},s.a=0,S(Br,"AbstractEList/1",953),y(295,73,UH,Fp),S(Br,"AbstractEList/BasicIndexOutOfBoundsException",295),y(40,1,dr,$t),s.Nb=function(t){Sr(this,t)},s.mj=function(){if(this.i.j!=this.f)throw V(new Ou)},s.nj=function(){return Vt(this)},s.Ob=function(){return this.e!=this.i.gc()},s.Pb=function(){return this.nj()},s.Qb=function(){l6(this)},s.e=0,s.f=0,s.g=-1,S(Br,"AbstractEList/EIterator",40),y(278,40,Wf,Vy,AB),s.Qb=function(){l6(this)},s.Rb=function(t){HHe(this,t)},s.oj=function(){var t;try{return t=this.d.Xb(--this.e),this.mj(),this.g=this.e,t}catch(n){throw n=gi(n),Q(n,73)?(this.mj(),V(new tc)):V(n)}},s.pj=function(t){zze(this,t)},s.Sb=function(){return this.e!=0},s.Tb=function(){return this.e},s.Ub=function(){return this.oj()},s.Vb=function(){return this.e-1},s.Wb=function(t){this.pj(t)},S(Br,"AbstractEList/EListIterator",278),y(341,40,dr,Gy),s.nj=function(){return zK(this)},s.Qb=function(){throw V(new sn)},S(Br,"AbstractEList/NonResolvingEIterator",341),y(385,278,Wf,vC,mte),s.Rb=function(t){throw V(new sn)},s.nj=function(){var t;try{return t=this.c.ki(this.e),this.mj(),this.g=this.e++,t}catch(n){throw n=gi(n),Q(n,73)?(this.mj(),V(new tc)):V(n)}},s.oj=function(){var t;try{return t=this.c.ki(--this.e),this.mj(),this.g=this.e,t}catch(n){throw n=gi(n),Q(n,73)?(this.mj(),V(new tc)):V(n)}},s.Qb=function(){throw V(new sn)},s.Wb=function(t){throw V(new sn)},S(Br,"AbstractEList/NonResolvingEListIterator",385),y(1982,67,Fet),s.Vh=function(t,n){var i,r,o,u,a,l,d,p,v,A,D;if(o=n.gc(),o!=0){for(p=c(vt(this.a,4),126),v=p==null?0:p.length,D=v+o,r=hK(this,D),A=v-t,A>0&&bc(p,t,r,t+o,A),d=n.Kc(),a=0;ai)throw V(new Fp(t,i));return new Fxe(this,t)},s.$b=function(){var t,n;++this.j,t=c(vt(this.a,4),126),n=t==null?0:t.length,hE(this,null),M$(this,n,t)},s.Hc=function(t){var n,i,r,o,u;if(n=c(vt(this.a,4),126),n!=null){if(t!=null){for(r=n,o=0,u=r.length;o=i)throw V(new Fp(t,i));return n[t]},s.Xc=function(t){var n,i,r;if(n=c(vt(this.a,4),126),n!=null){if(t!=null){for(i=0,r=n.length;ii)throw V(new Fp(t,i));return new Nxe(this,t)},s.ii=function(t,n){var i,r,o;if(i=JHe(this),o=i==null?0:i.length,t>=o)throw V(new ho(xV+t+ub+o));if(n>=o)throw V(new ho(LV+n+ub+o));return r=i[n],t!=n&&(t0&&bc(t,0,n,0,i),n},s.Qc=function(t){var n,i,r;return n=c(vt(this.a,4),126),r=n==null?0:n.length,r>0&&(t.lengthr&&vi(t,r,null),t};var pft;S(Br,"ArrayDelegatingEList",1982),y(1038,40,dr,UFe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},s.Qb=function(){l6(this),this.a=c(vt(this.b.a,4),126)},S(Br,"ArrayDelegatingEList/EIterator",1038),y(706,278,Wf,sxe,Nxe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},s.pj=function(t){zze(this,t),this.a=c(vt(this.b.a,4),126)},s.Qb=function(){l6(this),this.a=c(vt(this.b.a,4),126)},S(Br,"ArrayDelegatingEList/EListIterator",706),y(1039,341,dr,WFe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},S(Br,"ArrayDelegatingEList/NonResolvingEIterator",1039),y(707,385,Wf,uxe,Fxe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},S(Br,"ArrayDelegatingEList/NonResolvingEListIterator",707),y(606,295,UH,kF),S(Br,"BasicEList/BasicIndexOutOfBoundsException",606),y(696,63,Tf,iee),s.Vc=function(t,n){throw V(new sn)},s.Fc=function(t){throw V(new sn)},s.Wc=function(t,n){throw V(new sn)},s.Gc=function(t){throw V(new sn)},s.$b=function(){throw V(new sn)},s.qi=function(t){throw V(new sn)},s.Kc=function(){return this.Zh()},s.Yc=function(){return this.$h()},s.Zc=function(t){return this._h(t)},s.ii=function(t,n){throw V(new sn)},s.ji=function(t,n){throw V(new sn)},s.$c=function(t){throw V(new sn)},s.Mc=function(t){throw V(new sn)},s._c=function(t,n){throw V(new sn)},S(Br,"BasicEList/UnmodifiableEList",696),y(705,1,{3:1,20:1,14:1,15:1,58:1,589:1}),s.Vc=function(t,n){q2t(this,t,c(n,42))},s.Fc=function(t){return T3t(this,c(t,42))},s.Jc=function(t){Mr(this,t)},s.Xb=function(t){return c(ee(this.c,t),133)},s.ii=function(t,n){return c(this.c.ii(t,n),42)},s.ji=function(t,n){H2t(this,t,c(n,42))},s.Lc=function(){return new ht(null,new bt(this,16))},s.$c=function(t){return c(this.c.$c(t),42)},s._c=function(t,n){return LSt(this,t,c(n,42))},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.Oc=function(){return new ht(null,new bt(this,16))},s.Wc=function(t,n){return this.c.Wc(t,n)},s.Gc=function(t){return this.c.Gc(t)},s.$b=function(){this.c.$b()},s.Hc=function(t){return this.c.Hc(t)},s.Ic=function(t){return bI(this.c,t)},s.qj=function(){var t,n,i;if(this.d==null){for(this.d=oe(Jwe,Bfe,63,2*this.f+1,0,1),i=this.e,this.f=0,n=this.c.Kc();n.e!=n.i.gc();)t=c(n.nj(),133),P7(this,t);this.e=i}},s.Fb=function(t){return kke(this,t)},s.Hb=function(){return Sre(this.c)},s.Xc=function(t){return this.c.Xc(t)},s.rj=function(){this.c=new Zje(this)},s.dc=function(){return this.f==0},s.Kc=function(){return this.c.Kc()},s.Yc=function(){return this.c.Yc()},s.Zc=function(t){return this.c.Zc(t)},s.sj=function(){return XC(this)},s.tj=function(t,n,i){return new Xke(t,n,i)},s.uj=function(){return new P6e},s.Mc=function(t){return hKe(this,t)},s.gc=function(){return this.f},s.bd=function(t,n){return new Hf(this.c,t,n)},s.Pc=function(){return this.c.Pc()},s.Qc=function(t){return this.c.Qc(t)},s.Ib=function(){return boe(this.c)},s.e=0,s.f=0,S(Br,"BasicEMap",705),y(1033,63,Tf,Zje),s.bi=function(t,n){Mvt(this,c(n,133))},s.ei=function(t,n,i){var r;++(r=this,c(n,133),r).a.e},s.fi=function(t,n){Cvt(this,c(n,133))},s.gi=function(t,n,i){b3t(this,c(n,133),c(i,133))},s.di=function(t,n){nqe(this.a)},S(Br,"BasicEMap/1",1033),y(1034,63,Tf,P6e),s.ri=function(t){return oe(Nzt,Bet,612,t,0,1)},S(Br,"BasicEMap/2",1034),y(1035,Kl,ys,eAe),s.$b=function(){this.a.c.$b()},s.Hc=function(t){return xK(this.a,t)},s.Kc=function(){return this.a.f==0?(p_(),Wj.a):new x9e(this.a)},s.Mc=function(t){var n;return n=this.a.f,d7(this.a,t),this.a.f!=n},s.gc=function(){return this.a.f},S(Br,"BasicEMap/3",1035),y(1036,28,ww,tAe),s.$b=function(){this.a.c.$b()},s.Hc=function(t){return $We(this.a,t)},s.Kc=function(){return this.a.f==0?(p_(),Wj.a):new L9e(this.a)},s.gc=function(){return this.a.f},S(Br,"BasicEMap/4",1036),y(1037,Kl,ys,nAe),s.$b=function(){this.a.c.$b()},s.Hc=function(t){var n,i,r,o,u,a,l,d,p;if(this.a.f>0&&Q(t,42)&&(this.a.qj(),d=c(t,42),l=d.cd(),o=l==null?0:fi(l),u=rte(this.a,o),n=this.a.d[u],n)){for(i=c(n.g,367),p=n.i,a=0;a"+this.c},s.a=0;var Nzt=S(Br,"BasicEMap/EntryImpl",612);y(536,1,{},kA),S(Br,"BasicEMap/View",536);var Wj;y(768,1,{}),s.Fb=function(t){return Sse((st(),Qr),t)},s.Hb=function(){return xre((st(),Qr))},s.Ib=function(){return C1((st(),Qr))},S(Br,"ECollections/BasicEmptyUnmodifiableEList",768),y(1312,1,Wf,M6e),s.Nb=function(t){Sr(this,t)},s.Rb=function(t){throw V(new sn)},s.Ob=function(){return!1},s.Sb=function(){return!1},s.Pb=function(){throw V(new tc)},s.Tb=function(){return 0},s.Ub=function(){throw V(new tc)},s.Vb=function(){return-1},s.Qb=function(){throw V(new sn)},s.Wb=function(t){throw V(new sn)},S(Br,"ECollections/BasicEmptyUnmodifiableEList/1",1312),y(1310,768,{20:1,14:1,15:1,58:1},GAe),s.Vc=function(t,n){i8e()},s.Fc=function(t){return r8e()},s.Wc=function(t,n){return o8e()},s.Gc=function(t){return c8e()},s.$b=function(){s8e()},s.Hc=function(t){return!1},s.Ic=function(t){return!1},s.Jc=function(t){Mr(this,t)},s.Xb=function(t){return cee((st(),t)),null},s.Xc=function(t){return-1},s.dc=function(){return!0},s.Kc=function(){return this.a},s.Yc=function(){return this.a},s.Zc=function(t){return this.a},s.ii=function(t,n){return u8e()},s.ji=function(t,n){a8e()},s.Lc=function(){return new ht(null,new bt(this,16))},s.$c=function(t){return l8e()},s.Mc=function(t){return f8e()},s._c=function(t,n){return h8e()},s.gc=function(){return 0},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.Oc=function(){return new ht(null,new bt(this,16))},s.bd=function(t,n){return st(),new Hf(Qr,t,n)},s.Pc=function(){return cne((st(),Qr))},s.Qc=function(t){return st(),RI(Qr,t)},S(Br,"ECollections/EmptyUnmodifiableEList",1310),y(1311,768,{20:1,14:1,15:1,58:1,589:1},UAe),s.Vc=function(t,n){i8e()},s.Fc=function(t){return r8e()},s.Wc=function(t,n){return o8e()},s.Gc=function(t){return c8e()},s.$b=function(){s8e()},s.Hc=function(t){return!1},s.Ic=function(t){return!1},s.Jc=function(t){Mr(this,t)},s.Xb=function(t){return cee((st(),t)),null},s.Xc=function(t){return-1},s.dc=function(){return!0},s.Kc=function(){return this.a},s.Yc=function(){return this.a},s.Zc=function(t){return this.a},s.ii=function(t,n){return u8e()},s.ji=function(t,n){a8e()},s.Lc=function(){return new ht(null,new bt(this,16))},s.$c=function(t){return l8e()},s.Mc=function(t){return f8e()},s._c=function(t,n){return h8e()},s.gc=function(){return 0},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.Oc=function(){return new ht(null,new bt(this,16))},s.bd=function(t,n){return st(),new Hf(Qr,t,n)},s.Pc=function(){return cne((st(),Qr))},s.Qc=function(t){return st(),RI(Qr,t)},s.sj=function(){return st(),st(),th},S(Br,"ECollections/EmptyUnmodifiableEMap",1311);var Zwe=pi(Br,"Enumerator"),Fx;y(281,1,{281:1},Hq),s.Fb=function(t){var n;return this===t?!0:Q(t,281)?(n=c(t,281),this.f==n.f&&iSt(this.i,n.i)&&pB(this.a,(this.f&256)!=0?(n.f&256)!=0?n.a:null:(n.f&256)!=0?null:n.a)&&pB(this.d,n.d)&&pB(this.g,n.g)&&pB(this.e,n.e)&&J9t(this,n)):!1},s.Hb=function(){return this.f},s.Ib=function(){return wYe(this)},s.f=0;var wft=0,mft=0,vft=0,yft=0,eme=0,tme=0,nme=0,ime=0,rme=0,_ft,oM=0,cM=0,Eft=0,Sft=0,Bx,ome;S(Br,"URI",281),y(1091,43,fv,WAe),s.zc=function(t,n){return c(bo(this,ln(t),c(n,281)),281)},S(Br,"URI/URICache",1091),y(497,63,Tf,v6e,p8),s.hi=function(){return!0},S(Br,"UniqueEList",497),y(581,60,$h,mO),S(Br,"WrappedException",581);var Sn=pi(Hu,qet),Xw=pi(Hu,Het),us=pi(Hu,zet),Jw=pi(Hu,Vet),vl=pi(Hu,Get),va=pi(Hu,"EClass"),dY=pi(Hu,"EDataType"),Pft;y(1183,43,fv,YAe),s.xc=function(t){return fr(t)?mc(this,t):Uo(Po(this.f,t))},S(Hu,"EDataType/Internal/ConversionDelegate/Factory/Registry/Impl",1183);var $x=pi(Hu,"EEnum"),Yh=pi(Hu,Uet),oo=pi(Hu,Wet),ya=pi(Hu,Yet),_a,cp=pi(Hu,Xet),Qw=pi(Hu,Jet);y(1029,1,{},m6e),s.Ib=function(){return"NIL"},S(Hu,"EStructuralFeature/Internal/DynamicValueHolder/1",1029);var Mft;y(1028,43,fv,XAe),s.xc=function(t){return fr(t)?mc(this,t):Uo(Po(this.f,t))},S(Hu,"EStructuralFeature/Internal/SettingDelegate/Factory/Registry/Impl",1028);var Gc=pi(Hu,Qet),s3=pi(Hu,"EValidator/PatternMatcher"),cme,sme,wt,Rd,Zw,eg,Cft,Ift,Tft,tg,xd,ng,sp,Ql,jft,Aft,Ea,Ld,Oft,Nd,em,Uv,Ur,Dft,kft,up,Kx=pi(ai,"FeatureMap/Entry");y(535,1,{72:1},x9),s.ak=function(){return this.a},s.dd=function(){return this.b},S(mt,"BasicEObjectImpl/1",535),y(1027,1,qV,u7e),s.Wj=function(t){return S$(this.a,this.b,t)},s.fj=function(){return qLe(this.a,this.b)},s.Wb=function(t){qne(this.a,this.b,t)},s.Xj=function(){ZSt(this.a,this.b)},S(mt,"BasicEObjectImpl/4",1027),y(1983,1,{108:1}),s.bk=function(t){this.e=t==0?Rft:oe(xt,xe,1,t,5,1)},s.Ch=function(t){return this.e[t]},s.Dh=function(t,n){this.e[t]=n},s.Eh=function(t){this.e[t]=null},s.ck=function(){return this.c},s.dk=function(){throw V(new sn)},s.ek=function(){throw V(new sn)},s.fk=function(){return this.d},s.gk=function(){return this.e!=null},s.hk=function(t){this.c=t},s.ik=function(t){throw V(new sn)},s.jk=function(t){throw V(new sn)},s.kk=function(t){this.d=t};var Rft;S(mt,"BasicEObjectImpl/EPropertiesHolderBaseImpl",1983),y(185,1983,{108:1},il),s.dk=function(){return this.a},s.ek=function(){return this.b},s.ik=function(t){this.a=t},s.jk=function(t){this.b=t},S(mt,"BasicEObjectImpl/EPropertiesHolderImpl",185),y(506,97,JZe,xA),s.Kg=function(){return this.f},s.Pg=function(){return this.k},s.Rg=function(t,n){this.g=t,this.i=n},s.Tg=function(){return(this.j&2)==0?this.zh():this.ph().ck()},s.Vg=function(){return this.i},s.Mg=function(){return(this.j&1)!=0},s.eh=function(){return this.g},s.kh=function(){return(this.j&4)!=0},s.ph=function(){return!this.k&&(this.k=new il),this.k},s.th=function(t){this.ph().hk(t),t?this.j|=2:this.j&=-3},s.vh=function(t){this.ph().jk(t),t?this.j|=4:this.j&=-5},s.zh=function(){return(g1(),wt).S},s.i=0,s.j=1,S(mt,"EObjectImpl",506),y(780,506,{105:1,92:1,90:1,56:1,108:1,49:1,97:1},qte),s.Ch=function(t){return this.e[t]},s.Dh=function(t,n){this.e[t]=n},s.Eh=function(t){this.e[t]=null},s.Tg=function(){return this.d},s.Yg=function(t){return di(this.d,t)},s.$g=function(){return this.d},s.dh=function(){return this.e!=null},s.ph=function(){return!this.k&&(this.k=new C6e),this.k},s.th=function(t){this.d=t},s.yh=function(){var t;return this.e==null&&(t=Ft(this.d),this.e=t==0?xft:oe(xt,xe,1,t,5,1)),this},s.Ah=function(){return 0};var xft;S(mt,"DynamicEObjectImpl",780),y(1376,780,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1},SRe),s.Fb=function(t){return this===t},s.Hb=function(){return Xb(this)},s.th=function(t){this.d=t,this.b=QI(t,"key"),this.c=QI(t,X6)},s.Sh=function(){var t;return this.a==-1&&(t=x$(this,this.b),this.a=t==null?0:fi(t)),this.a},s.cd=function(){return x$(this,this.b)},s.dd=function(){return x$(this,this.c)},s.Th=function(t){this.a=t},s.Uh=function(t){qne(this,this.b,t)},s.ed=function(t){var n;return n=x$(this,this.c),qne(this,this.c,t),n},s.a=0,S(mt,"DynamicEObjectImpl/BasicEMapEntry",1376),y(1377,1,{108:1},C6e),s.bk=function(t){throw V(new sn)},s.Ch=function(t){throw V(new sn)},s.Dh=function(t,n){throw V(new sn)},s.Eh=function(t){throw V(new sn)},s.ck=function(){throw V(new sn)},s.dk=function(){return this.a},s.ek=function(){return this.b},s.fk=function(){return this.c},s.gk=function(){throw V(new sn)},s.hk=function(t){throw V(new sn)},s.ik=function(t){this.a=t},s.jk=function(t){this.b=t},s.kk=function(t){this.c=t},S(mt,"DynamicEObjectImpl/DynamicEPropertiesHolderImpl",1377),y(510,150,{105:1,92:1,90:1,590:1,147:1,56:1,108:1,49:1,97:1,510:1,150:1,114:1,115:1},qJ),s.Qg=function(t){return sce(this,t)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.d;case 2:return i?(!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),this.b):(!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),XC(this.b));case 3:return ULe(this);case 4:return!this.a&&(this.a=new qi(J1,this,4)),this.a;case 5:return!this.c&&(this.c=new Om(J1,this,5)),this.c}return Nu(this,t-Ft((ot(),Rd)),at((r=c(vt(this,16),26),r||Rd),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 3:return this.Cb&&(i=(o=this.Db>>16,o>=0?sce(this,i):this.Cb.ih(this,-1-o,null,i))),rne(this,c(t,147),i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),Rd)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),Rd)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 2:return!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),r8(this.b,t,i);case 3:return rne(this,null,i);case 4:return!this.a&&(this.a=new qi(J1,this,4)),Fr(this.a,t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),Rd)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),Rd)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.d!=null;case 2:return!!this.b&&this.b.f!=0;case 3:return!!ULe(this);case 4:return!!this.a&&this.a.i!=0;case 5:return!!this.c&&this.c.i!=0}return xu(this,t-Ft((ot(),Rd)),at((n=c(vt(this,16),26),n||Rd),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:q4t(this,ln(n));return;case 2:!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),GO(this.b,n);return;case 3:sWe(this,c(n,147));return;case 4:!this.a&&(this.a=new qi(J1,this,4)),Xt(this.a),!this.a&&(this.a=new qi(J1,this,4)),Mi(this.a,c(n,14));return;case 5:!this.c&&(this.c=new Om(J1,this,5)),Xt(this.c),!this.c&&(this.c=new Om(J1,this,5)),Mi(this.c,c(n,14));return}qu(this,t-Ft((ot(),Rd)),at((i=c(vt(this,16),26),i||Rd),t),n)},s.zh=function(){return ot(),Rd},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:ure(this,null);return;case 2:!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),this.b.c.$b();return;case 3:sWe(this,null);return;case 4:!this.a&&(this.a=new qi(J1,this,4)),Xt(this.a);return;case 5:!this.c&&(this.c=new Om(J1,this,5)),Xt(this.c);return}$u(this,t-Ft((ot(),Rd)),at((n=c(vt(this,16),26),n||Rd),t))},s.Ib=function(){return EHe(this)},s.d=null,S(mt,"EAnnotationImpl",510),y(151,705,$fe,iu),s.Xh=function(t,n){P2t(this,t,c(n,42))},s.lk=function(t,n){return m_t(this,c(t,42),n)},s.pi=function(t){return c(c(this.c,69).pi(t),133)},s.Zh=function(){return c(this.c,69).Zh()},s.$h=function(){return c(this.c,69).$h()},s._h=function(t){return c(this.c,69)._h(t)},s.mk=function(t,n){return r8(this,t,n)},s.Wj=function(t){return c(this.c,76).Wj(t)},s.rj=function(){},s.fj=function(){return c(this.c,76).fj()},s.tj=function(t,n,i){var r;return r=c(bu(this.b).Nh().Jh(this.b),133),r.Th(t),r.Uh(n),r.ed(i),r},s.uj=function(){return new IQ(this)},s.Wb=function(t){GO(this,t)},s.Xj=function(){c(this.c,76).Xj()},S(ai,"EcoreEMap",151),y(158,151,$fe,Zs),s.qj=function(){var t,n,i,r,o,u;if(this.d==null){for(u=oe(Jwe,Bfe,63,2*this.f+1,0,1),i=this.c.Kc();i.e!=i.i.gc();)n=c(i.nj(),133),r=n.Sh(),o=(r&Fn)%u.length,t=u[o],!t&&(t=u[o]=new IQ(this)),t.Fc(n);this.d=u}},S(mt,"EAnnotationImpl/1",158),y(284,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,472:1,49:1,97:1,150:1,284:1,114:1,115:1}),s._g=function(t,n,i){var r,o;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),!!this.$j();case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i)}return o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i)},s.lh=function(t){var n,i;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0)}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:this.Lh(ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:this.ok(c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),kft},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:this.Lh(null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:this.ok(1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.Gh=function(){ra(this),this.Bb|=1},s.Yj=function(){return ra(this)},s.Zj=function(){return this.t},s.$j=function(){var t;return t=this.t,t>1||t==-1},s.hi=function(){return(this.Bb&512)!=0},s.nk=function(t,n){return noe(this,t,n)},s.ok=function(t){Zp(this,t)},s.Ib=function(){return dse(this)},s.s=0,s.t=1,S(mt,"ETypedElementImpl",284),y(449,284,{105:1,92:1,90:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,449:1,284:1,114:1,115:1,677:1}),s.Qg=function(t){return rVe(this,t)},s._g=function(t,n,i){var r,o;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),!!this.$j();case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return Pt(),(this.Bb&Ka)!=0;case 11:return Pt(),(this.Bb&Iw)!=0;case 12:return Pt(),(this.Bb&vw)!=0;case 13:return this.j;case 14:return SE(this);case 15:return Pt(),(this.Bb&Es)!=0;case 16:return Pt(),(this.Bb&mf)!=0;case 17:return zp(this)}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 17:return this.Cb&&(i=(o=this.Db>>16,o>=0?rVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,17,i)}return u=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),u.Nj().Qj(this,$c(this),n-Ft(this.zh()),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i);case 17:return yu(this,null,17,i)}return o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i)},s.lh=function(t){var n,i;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return(this.Bb&Ka)==0;case 11:return(this.Bb&Iw)!=0;case 12:return(this.Bb&vw)!=0;case 13:return this.j!=null;case 14:return SE(this)!=null;case 15:return(this.Bb&Es)!=0;case 16:return(this.Bb&mf)!=0;case 17:return!!zp(this)}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:s$(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:this.ok(c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 10:cE(this,Be(Fe(n)));return;case 11:aE(this,Be(Fe(n)));return;case 12:sE(this,Be(Fe(n)));return;case 13:ree(this,ln(n));return;case 15:uE(this,Be(Fe(n)));return;case 16:lE(this,Be(Fe(n)));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),Dft},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),4),kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:this.ok(1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 10:cE(this,!0);return;case 11:aE(this,!1);return;case 12:sE(this,!1);return;case 13:this.i=null,NO(this,null);return;case 15:uE(this,!1);return;case 16:lE(this,!1);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.Gh=function(){C_(wo((vs(),Ir),this)),ra(this),this.Bb|=1},s.Gj=function(){return this.f},s.zj=function(){return SE(this)},s.Hj=function(){return zp(this)},s.Lj=function(){return null},s.pk=function(){return this.k},s.aj=function(){return this.n},s.Mj=function(){return k7(this)},s.Nj=function(){var t,n,i,r,o,u,a,l,d;return this.p||(i=zp(this),(i.i==null&&wf(i),i.i).length,r=this.Lj(),r&&Ft(zp(r)),o=ra(this),a=o.Bj(),t=a?(a.i&1)!=0?a==Gs?Qi:a==Qt?$r:a==nm?e4:a==gr?mr:a==rg?H0:a==Jv?z0:a==Ps?B2:sP:a:null,n=SE(this),l=o.zj(),EAt(this),(this.Bb&mf)!=0&&((u=gce((vs(),Ir),i))&&u!=this||(u=r2(wo(Ir,this))))?this.p=new l7e(this,u):this.$j()?this.rk()?r?(this.Bb&Es)!=0?t?this.sk()?this.p=new kg(47,t,this,r):this.p=new kg(5,t,this,r):this.sk()?this.p=new Lg(46,this,r):this.p=new Lg(4,this,r):t?this.sk()?this.p=new kg(49,t,this,r):this.p=new kg(7,t,this,r):this.sk()?this.p=new Lg(48,this,r):this.p=new Lg(6,this,r):(this.Bb&Es)!=0?t?t==fb?this.p=new cd(50,gft,this):this.sk()?this.p=new cd(43,t,this):this.p=new cd(1,t,this):this.sk()?this.p=new ud(42,this):this.p=new ud(0,this):t?t==fb?this.p=new cd(41,gft,this):this.sk()?this.p=new cd(45,t,this):this.p=new cd(3,t,this):this.sk()?this.p=new ud(44,this):this.p=new ud(2,this):Q(o,148)?t==Kx?this.p=new ud(40,this):(this.Bb&512)!=0?(this.Bb&Es)!=0?t?this.p=new cd(9,t,this):this.p=new ud(8,this):t?this.p=new cd(11,t,this):this.p=new ud(10,this):(this.Bb&Es)!=0?t?this.p=new cd(13,t,this):this.p=new ud(12,this):t?this.p=new cd(15,t,this):this.p=new ud(14,this):r?(d=r.t,d>1||d==-1?this.sk()?(this.Bb&Es)!=0?t?this.p=new kg(25,t,this,r):this.p=new Lg(24,this,r):t?this.p=new kg(27,t,this,r):this.p=new Lg(26,this,r):(this.Bb&Es)!=0?t?this.p=new kg(29,t,this,r):this.p=new Lg(28,this,r):t?this.p=new kg(31,t,this,r):this.p=new Lg(30,this,r):this.sk()?(this.Bb&Es)!=0?t?this.p=new kg(33,t,this,r):this.p=new Lg(32,this,r):t?this.p=new kg(35,t,this,r):this.p=new Lg(34,this,r):(this.Bb&Es)!=0?t?this.p=new kg(37,t,this,r):this.p=new Lg(36,this,r):t?this.p=new kg(39,t,this,r):this.p=new Lg(38,this,r)):this.sk()?(this.Bb&Es)!=0?t?this.p=new cd(17,t,this):this.p=new ud(16,this):t?this.p=new cd(19,t,this):this.p=new ud(18,this):(this.Bb&Es)!=0?t?this.p=new cd(21,t,this):this.p=new ud(20,this):t?this.p=new cd(23,t,this):this.p=new ud(22,this):this.qk()?this.sk()?this.p=new Jke(c(o,26),this,r):this.p=new Kne(c(o,26),this,r):Q(o,148)?t==Kx?this.p=new ud(40,this):(this.Bb&Es)!=0?t?this.p=new YRe(n,l,this,(RK(),a==Qt?gme:a==Gs?ame:a==rg?bme:a==nm?dme:a==gr?hme:a==Jv?pme:a==Ps?lme:a==Yu?fme:pY)):this.p=new sLe(c(o,148),n,l,this):t?this.p=new WRe(n,l,this,(RK(),a==Qt?gme:a==Gs?ame:a==rg?bme:a==nm?dme:a==gr?hme:a==Jv?pme:a==Ps?lme:a==Yu?fme:pY)):this.p=new cLe(c(o,148),n,l,this):this.rk()?r?(this.Bb&Es)!=0?this.sk()?this.p=new Zke(c(o,26),this,r):this.p=new Dte(c(o,26),this,r):this.sk()?this.p=new Qke(c(o,26),this,r):this.p=new aB(c(o,26),this,r):(this.Bb&Es)!=0?this.sk()?this.p=new WDe(c(o,26),this):this.p=new Gee(c(o,26),this):this.sk()?this.p=new UDe(c(o,26),this):this.p=new YF(c(o,26),this):this.sk()?r?(this.Bb&Es)!=0?this.p=new eRe(c(o,26),this,r):this.p=new Ate(c(o,26),this,r):(this.Bb&Es)!=0?this.p=new YDe(c(o,26),this):this.p=new Uee(c(o,26),this):r?(this.Bb&Es)!=0?this.p=new tRe(c(o,26),this,r):this.p=new Ote(c(o,26),this,r):(this.Bb&Es)!=0?this.p=new XDe(c(o,26),this):this.p=new w8(c(o,26),this)),this.p},s.Ij=function(){return(this.Bb&Ka)!=0},s.qk=function(){return!1},s.rk=function(){return!1},s.Jj=function(){return(this.Bb&mf)!=0},s.Oj=function(){return N$(this)},s.sk=function(){return!1},s.Kj=function(){return(this.Bb&Es)!=0},s.tk=function(t){this.k=t},s.Lh=function(t){s$(this,t)},s.Ib=function(){return J7(this)},s.e=!1,s.n=0,S(mt,"EStructuralFeatureImpl",449),y(322,449,{105:1,92:1,90:1,34:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,322:1,150:1,449:1,284:1,114:1,115:1,677:1},LN),s._g=function(t,n,i){var r,o;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),!!ase(this);case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return Pt(),(this.Bb&Ka)!=0;case 11:return Pt(),(this.Bb&Iw)!=0;case 12:return Pt(),(this.Bb&vw)!=0;case 13:return this.j;case 14:return SE(this);case 15:return Pt(),(this.Bb&Es)!=0;case 16:return Pt(),(this.Bb&mf)!=0;case 17:return zp(this);case 18:return Pt(),(this.Bb&rc)!=0;case 19:return n?tK(this):sBe(this)}return Nu(this,t-Ft((ot(),Zw)),at((r=c(vt(this,16),26),r||Zw),t),n,i)},s.lh=function(t){var n,i;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return ase(this);case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return(this.Bb&Ka)==0;case 11:return(this.Bb&Iw)!=0;case 12:return(this.Bb&vw)!=0;case 13:return this.j!=null;case 14:return SE(this)!=null;case 15:return(this.Bb&Es)!=0;case 16:return(this.Bb&mf)!=0;case 17:return!!zp(this);case 18:return(this.Bb&rc)!=0;case 19:return!!sBe(this)}return xu(this,t-Ft((ot(),Zw)),at((n=c(vt(this,16),26),n||Zw),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:s$(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:B9e(this,c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 10:cE(this,Be(Fe(n)));return;case 11:aE(this,Be(Fe(n)));return;case 12:sE(this,Be(Fe(n)));return;case 13:ree(this,ln(n));return;case 15:uE(this,Be(Fe(n)));return;case 16:lE(this,Be(Fe(n)));return;case 18:CK(this,Be(Fe(n)));return}qu(this,t-Ft((ot(),Zw)),at((i=c(vt(this,16),26),i||Zw),t),n)},s.zh=function(){return ot(),Zw},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),4),kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:this.b=0,Zp(this,1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 10:cE(this,!0);return;case 11:aE(this,!1);return;case 12:sE(this,!1);return;case 13:this.i=null,NO(this,null);return;case 15:uE(this,!1);return;case 16:lE(this,!1);return;case 18:CK(this,!1);return}$u(this,t-Ft((ot(),Zw)),at((n=c(vt(this,16),26),n||Zw),t))},s.Gh=function(){tK(this),C_(wo((vs(),Ir),this)),ra(this),this.Bb|=1},s.$j=function(){return ase(this)},s.nk=function(t,n){return this.b=0,this.a=null,noe(this,t,n)},s.ok=function(t){B9e(this,t)},s.Ib=function(){var t;return(this.Db&64)!=0?J7(this):(t=new ea(J7(this)),t.a+=" (iD: ",id(t,(this.Bb&rc)!=0),t.a+=")",t.a)},s.b=0,S(mt,"EAttributeImpl",322),y(351,438,{105:1,92:1,90:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,351:1,150:1,114:1,115:1,676:1}),s.uk=function(t){return t.Tg()==this},s.Qg=function(t){return cq(this,t)},s.Rg=function(t,n){this.w=null,this.Db=n<<16|this.Db&255,this.Cb=t},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return I0(this);case 4:return this.zj();case 5:return this.F;case 6:return n?bu(this):j_(this);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),this.A}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 6:return this.Cb&&(i=(o=this.Db>>16,o>=0?cq(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,6,i)}return u=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),u.Nj().Qj(this,$c(this),n-Ft(this.zh()),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 6:return yu(this,null,6,i);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),Fr(this.A,t,i)}return o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!I0(this);case 4:return this.zj()!=null;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!j_(this);case 7:return!!this.A&&this.A.i!=0}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:J8(this,ln(n));return;case 2:LF(this,ln(n));return;case 5:jE(this,ln(n));return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A),!this.A&&(this.A=new gs(Gc,this,7)),Mi(this.A,c(n,14));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),Cft},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,179)&&(c(this.Cb,179).tb=null),kc(this,null);return;case 2:nE(this,null),z_(this,this.D);return;case 5:jE(this,null);return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.yj=function(){var t;return this.G==-1&&(this.G=(t=bu(this),t?wd(t.Mh(),this):-1)),this.G},s.zj=function(){return null},s.Aj=function(){return bu(this)},s.vk=function(){return this.v},s.Bj=function(){return I0(this)},s.Cj=function(){return this.D!=null?this.D:this.B},s.Dj=function(){return this.F},s.wj=function(t){return Qq(this,t)},s.wk=function(t){this.v=t},s.xk=function(t){NKe(this,t)},s.yk=function(t){this.C=t},s.Lh=function(t){J8(this,t)},s.Ib=function(){return a7(this)},s.C=null,s.D=null,s.G=-1,S(mt,"EClassifierImpl",351),y(88,351,{105:1,92:1,90:1,26:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,88:1,351:1,150:1,473:1,114:1,115:1,676:1},UJ),s.uk=function(t){return r_t(this,t.Tg())},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return I0(this);case 4:return null;case 5:return this.F;case 6:return n?bu(this):j_(this);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),this.A;case 8:return Pt(),(this.Bb&256)!=0;case 9:return Pt(),(this.Bb&512)!=0;case 10:return So(this);case 11:return!this.q&&(this.q=new Me(ya,this,11,10)),this.q;case 12:return sv(this);case 13:return S6(this);case 14:return S6(this),this.r;case 15:return sv(this),this.k;case 16:return Zce(this);case 17:return iH(this);case 18:return wf(this);case 19:return z7(this);case 20:return sv(this),this.o;case 21:return!this.s&&(this.s=new Me(us,this,21,17)),this.s;case 22:return dc(this);case 23:return qq(this)}return Nu(this,t-Ft((ot(),eg)),at((r=c(vt(this,16),26),r||eg),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 6:return this.Cb&&(i=(o=this.Db>>16,o>=0?cq(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,6,i);case 11:return!this.q&&(this.q=new Me(ya,this,11,10)),Rc(this.q,t,i);case 21:return!this.s&&(this.s=new Me(us,this,21,17)),Rc(this.s,t,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),eg)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),eg)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 6:return yu(this,null,6,i);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),Fr(this.A,t,i);case 11:return!this.q&&(this.q=new Me(ya,this,11,10)),Fr(this.q,t,i);case 21:return!this.s&&(this.s=new Me(us,this,21,17)),Fr(this.s,t,i);case 22:return Fr(dc(this),t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),eg)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),eg)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!I0(this);case 4:return!1;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!j_(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)!=0;case 9:return(this.Bb&512)!=0;case 10:return!!this.u&&dc(this.u.a).i!=0&&!(this.n&&YK(this.n));case 11:return!!this.q&&this.q.i!=0;case 12:return sv(this).i!=0;case 13:return S6(this).i!=0;case 14:return S6(this),this.r.i!=0;case 15:return sv(this),this.k.i!=0;case 16:return Zce(this).i!=0;case 17:return iH(this).i!=0;case 18:return wf(this).i!=0;case 19:return z7(this).i!=0;case 20:return sv(this),!!this.o;case 21:return!!this.s&&this.s.i!=0;case 22:return!!this.n&&YK(this.n);case 23:return qq(this).i!=0}return xu(this,t-Ft((ot(),eg)),at((n=c(vt(this,16),26),n||eg),t))},s.oh=function(t){var n;return n=this.i==null||this.q&&this.q.i!=0?null:QI(this,t),n||Aue(this,t)},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:J8(this,ln(n));return;case 2:LF(this,ln(n));return;case 5:jE(this,ln(n));return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A),!this.A&&(this.A=new gs(Gc,this,7)),Mi(this.A,c(n,14));return;case 8:roe(this,Be(Fe(n)));return;case 9:ooe(this,Be(Fe(n)));return;case 10:C6(So(this)),Mi(So(this),c(n,14));return;case 11:!this.q&&(this.q=new Me(ya,this,11,10)),Xt(this.q),!this.q&&(this.q=new Me(ya,this,11,10)),Mi(this.q,c(n,14));return;case 21:!this.s&&(this.s=new Me(us,this,21,17)),Xt(this.s),!this.s&&(this.s=new Me(us,this,21,17)),Mi(this.s,c(n,14));return;case 22:Xt(dc(this)),Mi(dc(this),c(n,14));return}qu(this,t-Ft((ot(),eg)),at((i=c(vt(this,16),26),i||eg),t),n)},s.zh=function(){return ot(),eg},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,179)&&(c(this.Cb,179).tb=null),kc(this,null);return;case 2:nE(this,null),z_(this,this.D);return;case 5:jE(this,null);return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A);return;case 8:roe(this,!1);return;case 9:ooe(this,!1);return;case 10:this.u&&C6(this.u);return;case 11:!this.q&&(this.q=new Me(ya,this,11,10)),Xt(this.q);return;case 21:!this.s&&(this.s=new Me(us,this,21,17)),Xt(this.s);return;case 22:this.n&&Xt(this.n);return}$u(this,t-Ft((ot(),eg)),at((n=c(vt(this,16),26),n||eg),t))},s.Gh=function(){var t,n;if(sv(this),S6(this),Zce(this),iH(this),wf(this),z7(this),qq(this),B5(_4t(Ls(this))),this.s)for(t=0,n=this.s.i;t=0;--n)ee(this,n);return Ioe(this,t)},s.Xj=function(){Xt(this)},s.oi=function(t,n){return cKe(this,t,n)},S(ai,"EcoreEList",622),y(496,622,xo,OC),s.ai=function(){return!1},s.aj=function(){return this.c},s.bj=function(){return!1},s.Fk=function(){return!0},s.hi=function(){return!0},s.li=function(t,n){return n},s.ni=function(){return!1},s.c=0,S(ai,"EObjectEList",496),y(85,496,xo,qi),s.bj=function(){return!0},s.Dk=function(){return!1},s.rk=function(){return!0},S(ai,"EObjectContainmentEList",85),y(545,85,xo,U9),s.ci=function(){this.b=!0},s.fj=function(){return this.b},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.b,this.b=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.b=!1},s.b=!1,S(ai,"EObjectContainmentEList/Unsettable",545),y(1140,545,xo,GRe),s.ii=function(t,n){var i,r;return i=c(t6(this,t,n),87),Qs(this.e)&&Q3(this,new QC(this.a,7,(ot(),Ift),Ce(n),(r=i.c,Q(r,88)?c(r,26):Ea),t)),i},s.jj=function(t,n){return a9t(this,c(t,87),n)},s.kj=function(t,n){return u9t(this,c(t,87),n)},s.lj=function(t,n,i){return l7t(this,c(t,87),c(n,87),i)},s.Zi=function(t,n,i,r,o){switch(t){case 3:return k5(this,t,n,i,r,this.i>1);case 5:return k5(this,t,n,i,r,this.i-c(i,15).gc()>0);default:return new Ah(this.e,t,this.c,n,i,r,!0)}},s.ij=function(){return!0},s.fj=function(){return YK(this)},s.Xj=function(){Xt(this)},S(mt,"EClassImpl/1",1140),y(1154,1153,Ffe),s.ui=function(t){var n,i,r,o,u,a,l;if(i=t.xi(),i!=8){if(r=G9t(t),r==0)switch(i){case 1:case 9:{l=t.Bi(),l!=null&&(n=Ls(c(l,473)),!n.c&&(n.c=new G3),_O(n.c,t.Ai())),a=t.zi(),a!=null&&(o=c(a,473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),on(n.c,c(t.Ai(),26))));break}case 3:{a=t.zi(),a!=null&&(o=c(a,473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),on(n.c,c(t.Ai(),26))));break}case 5:{if(a=t.zi(),a!=null)for(u=c(a,14).Kc();u.Ob();)o=c(u.Pb(),473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),on(n.c,c(t.Ai(),26)));break}case 4:{l=t.Bi(),l!=null&&(o=c(l,473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),_O(n.c,t.Ai())));break}case 6:{if(l=t.Bi(),l!=null)for(u=c(l,14).Kc();u.Ob();)o=c(u.Pb(),473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),_O(n.c,t.Ai()));break}}this.Hk(r)}},s.Hk=function(t){VWe(this,t)},s.b=63,S(mt,"ESuperAdapter",1154),y(1155,1154,Ffe,rAe),s.Hk=function(t){lw(this,t)},S(mt,"EClassImpl/10",1155),y(1144,696,xo),s.Vh=function(t,n){return wq(this,t,n)},s.Wh=function(t){return Kze(this,t)},s.Xh=function(t,n){MI(this,t,n)},s.Yh=function(t){UC(this,t)},s.pi=function(t){return Lie(this,t)},s.mi=function(t,n){return L$(this,t,n)},s.lk=function(t,n){throw V(new sn)},s.Zh=function(){return new Gy(this)},s.$h=function(){return new vC(this)},s._h=function(t){return lI(this,t)},s.mk=function(t,n){throw V(new sn)},s.Wj=function(t){return this},s.fj=function(){return this.i!=0},s.Wb=function(t){throw V(new sn)},s.Xj=function(){throw V(new sn)},S(ai,"EcoreEList/UnmodifiableEList",1144),y(319,1144,xo,Im),s.ni=function(){return!1},S(ai,"EcoreEList/UnmodifiableEList/FastCompare",319),y(1147,319,xo,jqe),s.Xc=function(t){var n,i,r;if(Q(t,170)&&(n=c(t,170),i=n.aj(),i!=-1)){for(r=this.i;i4)if(this.wj(t)){if(this.rk()){if(r=c(t,49),i=r.Ug(),l=i==this.b&&(this.Dk()?r.Og(r.Vg(),c(at(Xc(this.b),this.aj()).Yj(),26).Bj())==Xr(c(at(Xc(this.b),this.aj()),18)).n:-1-r.Vg()==this.aj()),this.Ek()&&!l&&!i&&r.Zg()){for(o=0;o1||r==-1)):!1},s.Dk=function(){var t,n,i;return n=at(Xc(this.b),this.aj()),Q(n,99)?(t=c(n,18),i=Xr(t),!!i):!1},s.Ek=function(){var t,n;return n=at(Xc(this.b),this.aj()),Q(n,99)?(t=c(n,18),(t.Bb&Vr)!=0):!1},s.Xc=function(t){var n,i,r,o;if(r=this.Qi(t),r>=0)return r;if(this.Fk()){for(i=0,o=this.Vi();i=0;--t)sT(this,t,this.Oi(t));return this.Wi()},s.Qc=function(t){var n;if(this.Ek())for(n=this.Vi()-1;n>=0;--n)sT(this,n,this.Oi(n));return this.Xi(t)},s.Xj=function(){C6(this)},s.oi=function(t,n){return zBe(this,t,n)},S(ai,"DelegatingEcoreEList",742),y(1150,742,qfe,ske),s.Hi=function(t,n){D3t(this,t,c(n,26))},s.Ii=function(t){C2t(this,c(t,26))},s.Oi=function(t){var n,i;return n=c(ee(dc(this.a),t),87),i=n.c,Q(i,88)?c(i,26):(ot(),Ea)},s.Ti=function(t){var n,i;return n=c(hw(dc(this.a),t),87),i=n.c,Q(i,88)?c(i,26):(ot(),Ea)},s.Ui=function(t,n){return k8t(this,t,c(n,26))},s.ai=function(){return!1},s.Zi=function(t,n,i,r,o){return null},s.Ji=function(){return new cAe(this)},s.Ki=function(){Xt(dc(this.a))},s.Li=function(t){return yHe(this,t)},s.Mi=function(t){var n,i;for(i=t.Kc();i.Ob();)if(n=i.Pb(),!yHe(this,n))return!1;return!0},s.Ni=function(t){var n,i,r;if(Q(t,15)&&(r=c(t,15),r.gc()==dc(this.a).i)){for(n=r.Kc(),i=new $t(this);n.Ob();)if(le(n.Pb())!==le(Vt(i)))return!1;return!0}return!1},s.Pi=function(){var t,n,i,r,o;for(i=1,n=new $t(dc(this.a));n.e!=n.i.gc();)t=c(Vt(n),87),r=(o=t.c,Q(o,88)?c(o,26):(ot(),Ea)),i=31*i+(r?Xb(r):0);return i},s.Qi=function(t){var n,i,r,o;for(r=0,i=new $t(dc(this.a));i.e!=i.i.gc();){if(n=c(Vt(i),87),le(t)===le((o=n.c,Q(o,88)?c(o,26):(ot(),Ea))))return r;++r}return-1},s.Ri=function(){return dc(this.a).i==0},s.Si=function(){return null},s.Vi=function(){return dc(this.a).i},s.Wi=function(){var t,n,i,r,o,u;for(u=dc(this.a).i,o=oe(xt,xe,1,u,5,1),i=0,n=new $t(dc(this.a));n.e!=n.i.gc();)t=c(Vt(n),87),o[i++]=(r=t.c,Q(r,88)?c(r,26):(ot(),Ea));return o},s.Xi=function(t){var n,i,r,o,u,a,l;for(l=dc(this.a).i,t.lengthl&&vi(t,l,null),r=0,i=new $t(dc(this.a));i.e!=i.i.gc();)n=c(Vt(i),87),u=(a=n.c,Q(a,88)?c(a,26):(ot(),Ea)),vi(t,r++,u);return t},s.Yi=function(){var t,n,i,r,o;for(o=new nd,o.a+="[",t=dc(this.a),n=0,r=dc(this.a).i;n>16,o>=0?cq(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,6,i);case 9:return!this.a&&(this.a=new Me(Yh,this,9,5)),Rc(this.a,t,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),tg)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),tg)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 6:return yu(this,null,6,i);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),Fr(this.A,t,i);case 9:return!this.a&&(this.a=new Me(Yh,this,9,5)),Fr(this.a,t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),tg)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),tg)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!I0(this);case 4:return!!zre(this);case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!j_(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)==0;case 9:return!!this.a&&this.a.i!=0}return xu(this,t-Ft((ot(),tg)),at((n=c(vt(this,16),26),n||tg),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:J8(this,ln(n));return;case 2:LF(this,ln(n));return;case 5:jE(this,ln(n));return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A),!this.A&&(this.A=new gs(Gc,this,7)),Mi(this.A,c(n,14));return;case 8:i7(this,Be(Fe(n)));return;case 9:!this.a&&(this.a=new Me(Yh,this,9,5)),Xt(this.a),!this.a&&(this.a=new Me(Yh,this,9,5)),Mi(this.a,c(n,14));return}qu(this,t-Ft((ot(),tg)),at((i=c(vt(this,16),26),i||tg),t),n)},s.zh=function(){return ot(),tg},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,179)&&(c(this.Cb,179).tb=null),kc(this,null);return;case 2:nE(this,null),z_(this,this.D);return;case 5:jE(this,null);return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A);return;case 8:i7(this,!0);return;case 9:!this.a&&(this.a=new Me(Yh,this,9,5)),Xt(this.a);return}$u(this,t-Ft((ot(),tg)),at((n=c(vt(this,16),26),n||tg),t))},s.Gh=function(){var t,n;if(this.a)for(t=0,n=this.a.i;t>16==5?c(this.Cb,671):null}return Nu(this,t-Ft((ot(),xd)),at((r=c(vt(this,16),26),r||xd),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 5:return this.Cb&&(i=(o=this.Db>>16,o>=0?hVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,5,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),xd)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),xd)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 5:return yu(this,null,5,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),xd)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),xd)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.d!=0;case 3:return!!this.b;case 4:return this.c!=null;case 5:return!!(this.Db>>16==5&&c(this.Cb,671))}return xu(this,t-Ft((ot(),xd)),at((n=c(vt(this,16),26),n||xd),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:q$(this,c(n,19).a);return;case 3:sUe(this,c(n,1940));return;case 4:z$(this,ln(n));return}qu(this,t-Ft((ot(),xd)),at((i=c(vt(this,16),26),i||xd),t),n)},s.zh=function(){return ot(),xd},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:q$(this,0);return;case 3:sUe(this,null);return;case 4:z$(this,null);return}$u(this,t-Ft((ot(),xd)),at((n=c(vt(this,16),26),n||xd),t))},s.Ib=function(){var t;return t=this.c,t??this.zb},s.b=null,s.c=null,s.d=0,S(mt,"EEnumLiteralImpl",573);var Fzt=pi(mt,"EFactoryImpl/InternalEDateTimeFormat");y(489,1,{2015:1},VM),S(mt,"EFactoryImpl/1ClientInternalEDateTimeFormat",489),y(241,115,{105:1,92:1,90:1,87:1,56:1,108:1,49:1,97:1,241:1,114:1,115:1},Nb),s.Sg=function(t,n,i){var r;return i=yu(this,t,n,i),this.e&&Q(t,170)&&(r=H7(this,this.e),r!=this.c&&(i=AE(this,r,i))),i},s._g=function(t,n,i){var r;switch(t){case 0:return this.f;case 1:return!this.d&&(this.d=new qi(oo,this,1)),this.d;case 2:return n?eD(this):this.c;case 3:return this.b;case 4:return this.e;case 5:return n?QK(this):this.a}return Nu(this,t-Ft((ot(),sp)),at((r=c(vt(this,16),26),r||sp),t),n,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return lHe(this,null,i);case 1:return!this.d&&(this.d=new qi(oo,this,1)),Fr(this.d,t,i);case 3:return aHe(this,null,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),sp)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),sp)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.f;case 1:return!!this.d&&this.d.i!=0;case 2:return!!this.c;case 3:return!!this.b;case 4:return!!this.e;case 5:return!!this.a}return xu(this,t-Ft((ot(),sp)),at((n=c(vt(this,16),26),n||sp),t))},s.sh=function(t,n){var i;switch(t){case 0:AVe(this,c(n,87));return;case 1:!this.d&&(this.d=new qi(oo,this,1)),Xt(this.d),!this.d&&(this.d=new qi(oo,this,1)),Mi(this.d,c(n,14));return;case 3:Sce(this,c(n,87));return;case 4:$ce(this,c(n,836));return;case 5:B_(this,c(n,138));return}qu(this,t-Ft((ot(),sp)),at((i=c(vt(this,16),26),i||sp),t),n)},s.zh=function(){return ot(),sp},s.Bh=function(t){var n;switch(t){case 0:AVe(this,null);return;case 1:!this.d&&(this.d=new qi(oo,this,1)),Xt(this.d);return;case 3:Sce(this,null);return;case 4:$ce(this,null);return;case 5:B_(this,null);return}$u(this,t-Ft((ot(),sp)),at((n=c(vt(this,16),26),n||sp),t))},s.Ib=function(){var t;return t=new lu(Ba(this)),t.a+=" (expression: ",sH(this,t),t.a+=")",t.a};var ume;S(mt,"EGenericTypeImpl",241),y(1969,1964,sk),s.Xh=function(t,n){rke(this,t,n)},s.lk=function(t,n){return rke(this,this.gc(),t),n},s.pi=function(t){return hl(this.Gi(),t)},s.Zh=function(){return this.$h()},s.Gi=function(){return new lAe(this)},s.$h=function(){return this._h(0)},s._h=function(t){return this.Gi().Zc(t)},s.mk=function(t,n){return nw(this,t,!0),n},s.ii=function(t,n){var i,r;return r=uq(this,n),i=this.Zc(t),i.Rb(r),r},s.ji=function(t,n){var i;nw(this,n,!0),i=this.Zc(t),i.Rb(n)},S(ai,"AbstractSequentialInternalEList",1969),y(486,1969,sk,mC),s.pi=function(t){return hl(this.Gi(),t)},s.Zh=function(){return this.b==null?(rd(),rd(),Yj):this.Jk()},s.Gi=function(){return new j7e(this.a,this.b)},s.$h=function(){return this.b==null?(rd(),rd(),Yj):this.Jk()},s._h=function(t){var n,i;if(this.b==null){if(t<0||t>1)throw V(new ho(J6+t+", size=0"));return rd(),rd(),Yj}for(i=this.Jk(),n=0;n0;)if(n=this.c[--this.d],(!this.e||n.Gj()!=x4||n.aj()!=0)&&(!this.Mk()||this.b.mh(n))){if(u=this.b.bh(n,this.Lk()),this.f=(Wr(),c(n,66).Oj()),this.f||n.$j()){if(this.Lk()?(r=c(u,15),this.k=r):(r=c(u,69),this.k=this.j=r),Q(this.k,54)?(this.o=this.k.gc(),this.n=this.o):this.p=this.j?this.j._h(this.k.gc()):this.k.Zc(this.k.gc()),this.p?EGe(this,this.p):RGe(this))return o=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?(t=c(o,72),t.ak(),i=t.dd(),this.i=i):(i=o,this.i=i),this.g=-3,!0}else if(u!=null)return this.k=null,this.p=null,i=u,this.i=i,this.g=-2,!0}return this.k=null,this.p=null,this.g=-1,!1}else return o=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?(t=c(o,72),t.ak(),i=t.dd(),this.i=i):(i=o,this.i=i),this.g=-3,!0}},s.Pb=function(){return UO(this)},s.Tb=function(){return this.a},s.Ub=function(){var t;if(this.g<-1||this.Sb())return--this.a,this.g=0,t=this.i,this.Sb(),t;throw V(new tc)},s.Vb=function(){return this.a-1},s.Qb=function(){throw V(new sn)},s.Lk=function(){return!1},s.Wb=function(t){throw V(new sn)},s.Mk=function(){return!0},s.a=0,s.d=0,s.f=!1,s.g=0,s.n=0,s.o=0;var Yj;S(ai,"EContentsEList/FeatureIteratorImpl",279),y(697,279,uk,Vee),s.Lk=function(){return!0},S(ai,"EContentsEList/ResolvingFeatureIteratorImpl",697),y(1157,697,uk,GDe),s.Mk=function(){return!1},S(mt,"ENamedElementImpl/1/1",1157),y(1158,279,uk,VDe),s.Mk=function(){return!1},S(mt,"ENamedElementImpl/1/2",1158),y(36,143,xT,Up,b$,sr,A$,Ah,La,Yie,yNe,Xie,_Ne,yie,ENe,Zie,SNe,_ie,PNe,Jie,MNe,C5,QC,UB,Qie,CNe,Eie,INe),s._i=function(){return kie(this)},s.gj=function(){var t;return t=kie(this),t?t.zj():null},s.yi=function(t){return this.b==-1&&this.a&&(this.b=this.c.Xg(this.a.aj(),this.a.Gj())),this.c.Og(this.b,t)},s.Ai=function(){return this.c},s.hj=function(){var t;return t=kie(this),t?t.Kj():!1},s.b=-1,S(mt,"ENotificationImpl",36),y(399,284,{105:1,92:1,90:1,147:1,191:1,56:1,59:1,108:1,472:1,49:1,97:1,150:1,399:1,284:1,114:1,115:1},NN),s.Qg=function(t){return bVe(this,t)},s._g=function(t,n,i){var r,o,u;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),u=this.t,u>1||u==-1;case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?c(this.Cb,26):null;case 11:return!this.d&&(this.d=new gs(Gc,this,11)),this.d;case 12:return!this.c&&(this.c=new Me(cp,this,12,10)),this.c;case 13:return!this.a&&(this.a=new PC(this,this)),this.a;case 14:return Ns(this)}return Nu(this,t-Ft((ot(),Ld)),at((r=c(vt(this,16),26),r||Ld),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 10:return this.Cb&&(i=(o=this.Db>>16,o>=0?bVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,10,i);case 12:return!this.c&&(this.c=new Me(cp,this,12,10)),Rc(this.c,t,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),Ld)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),Ld)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i);case 10:return yu(this,null,10,i);case 11:return!this.d&&(this.d=new gs(Gc,this,11)),Fr(this.d,t,i);case 12:return!this.c&&(this.c=new Me(cp,this,12,10)),Fr(this.c,t,i);case 14:return Fr(Ns(this),t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),Ld)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),Ld)),t,i)},s.lh=function(t){var n,i,r;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return r=this.t,r>1||r==-1;case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return!!(this.Db>>16==10&&c(this.Cb,26));case 11:return!!this.d&&this.d.i!=0;case 12:return!!this.c&&this.c.i!=0;case 13:return!!this.a&&Ns(this.a.a).i!=0&&!(this.b&&XK(this.b));case 14:return!!this.b&&XK(this.b)}return xu(this,t-Ft((ot(),Ld)),at((n=c(vt(this,16),26),n||Ld),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:Zp(this,c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 11:!this.d&&(this.d=new gs(Gc,this,11)),Xt(this.d),!this.d&&(this.d=new gs(Gc,this,11)),Mi(this.d,c(n,14));return;case 12:!this.c&&(this.c=new Me(cp,this,12,10)),Xt(this.c),!this.c&&(this.c=new Me(cp,this,12,10)),Mi(this.c,c(n,14));return;case 13:!this.a&&(this.a=new PC(this,this)),C6(this.a),!this.a&&(this.a=new PC(this,this)),Mi(this.a,c(n,14));return;case 14:Xt(Ns(this)),Mi(Ns(this),c(n,14));return}qu(this,t-Ft((ot(),Ld)),at((i=c(vt(this,16),26),i||Ld),t),n)},s.zh=function(){return ot(),Ld},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:Zp(this,1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 11:!this.d&&(this.d=new gs(Gc,this,11)),Xt(this.d);return;case 12:!this.c&&(this.c=new Me(cp,this,12,10)),Xt(this.c);return;case 13:this.a&&C6(this.a);return;case 14:this.b&&Xt(this.b);return}$u(this,t-Ft((ot(),Ld)),at((n=c(vt(this,16),26),n||Ld),t))},s.Gh=function(){var t,n;if(this.c)for(t=0,n=this.c.i;tl&&vi(t,l,null),r=0,i=new $t(Ns(this.a));i.e!=i.i.gc();)n=c(Vt(i),87),u=(a=n.c,a||(ot(),Ql)),vi(t,r++,u);return t},s.Yi=function(){var t,n,i,r,o;for(o=new nd,o.a+="[",t=Ns(this.a),n=0,r=Ns(this.a).i;n1);case 5:return k5(this,t,n,i,r,this.i-c(i,15).gc()>0);default:return new Ah(this.e,t,this.c,n,i,r,!0)}},s.ij=function(){return!0},s.fj=function(){return XK(this)},s.Xj=function(){Xt(this)},S(mt,"EOperationImpl/2",1341),y(498,1,{1938:1,498:1},a7e),S(mt,"EPackageImpl/1",498),y(16,85,xo,Me),s.zk=function(){return this.d},s.Ak=function(){return this.b},s.Dk=function(){return!0},s.b=0,S(ai,"EObjectContainmentWithInverseEList",16),y(353,16,xo,Uy),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentWithInverseEList/Resolving",353),y(298,353,xo,Kp),s.ci=function(){this.a.tb=null},S(mt,"EPackageImpl/2",298),y(1228,1,{},Pmt),S(mt,"EPackageImpl/3",1228),y(718,43,fv,UQ),s._b=function(t){return fr(t)?WB(this,t):!!Po(this.f,t)},S(mt,"EPackageRegistryImpl",718),y(509,284,{105:1,92:1,90:1,147:1,191:1,56:1,2017:1,108:1,472:1,49:1,97:1,150:1,509:1,284:1,114:1,115:1},FN),s.Qg=function(t){return pVe(this,t)},s._g=function(t,n,i){var r,o,u;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),u=this.t,u>1||u==-1;case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?c(this.Cb,59):null}return Nu(this,t-Ft((ot(),em)),at((r=c(vt(this,16),26),r||em),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 10:return this.Cb&&(i=(o=this.Db>>16,o>=0?pVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,10,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),em)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),em)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i);case 10:return yu(this,null,10,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),em)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),em)),t,i)},s.lh=function(t){var n,i,r;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return r=this.t,r>1||r==-1;case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return!!(this.Db>>16==10&&c(this.Cb,59))}return xu(this,t-Ft((ot(),em)),at((n=c(vt(this,16),26),n||em),t))},s.zh=function(){return ot(),em},S(mt,"EParameterImpl",509),y(99,449,{105:1,92:1,90:1,147:1,191:1,56:1,18:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,99:1,449:1,284:1,114:1,115:1,677:1},Xee),s._g=function(t,n,i){var r,o,u,a;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),a=this.t,a>1||a==-1;case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return Pt(),(this.Bb&Ka)!=0;case 11:return Pt(),(this.Bb&Iw)!=0;case 12:return Pt(),(this.Bb&vw)!=0;case 13:return this.j;case 14:return SE(this);case 15:return Pt(),(this.Bb&Es)!=0;case 16:return Pt(),(this.Bb&mf)!=0;case 17:return zp(this);case 18:return Pt(),(this.Bb&rc)!=0;case 19:return Pt(),u=Xr(this),!!(u&&(u.Bb&rc)!=0);case 20:return Pt(),(this.Bb&Vr)!=0;case 21:return n?Xr(this):this.b;case 22:return n?kre(this):YFe(this);case 23:return!this.a&&(this.a=new Om(Jw,this,23)),this.a}return Nu(this,t-Ft((ot(),Uv)),at((r=c(vt(this,16),26),r||Uv),t),n,i)},s.lh=function(t){var n,i,r,o;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return o=this.t,o>1||o==-1;case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return(this.Bb&Ka)==0;case 11:return(this.Bb&Iw)!=0;case 12:return(this.Bb&vw)!=0;case 13:return this.j!=null;case 14:return SE(this)!=null;case 15:return(this.Bb&Es)!=0;case 16:return(this.Bb&mf)!=0;case 17:return!!zp(this);case 18:return(this.Bb&rc)!=0;case 19:return r=Xr(this),!!r&&(r.Bb&rc)!=0;case 20:return(this.Bb&Vr)==0;case 21:return!!this.b;case 22:return!!YFe(this);case 23:return!!this.a&&this.a.i!=0}return xu(this,t-Ft((ot(),Uv)),at((n=c(vt(this,16),26),n||Uv),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:s$(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:Zp(this,c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 10:cE(this,Be(Fe(n)));return;case 11:aE(this,Be(Fe(n)));return;case 12:sE(this,Be(Fe(n)));return;case 13:ree(this,ln(n));return;case 15:uE(this,Be(Fe(n)));return;case 16:lE(this,Be(Fe(n)));return;case 18:F6t(this,Be(Fe(n)));return;case 20:loe(this,Be(Fe(n)));return;case 21:are(this,c(n,18));return;case 23:!this.a&&(this.a=new Om(Jw,this,23)),Xt(this.a),!this.a&&(this.a=new Om(Jw,this,23)),Mi(this.a,c(n,14));return}qu(this,t-Ft((ot(),Uv)),at((i=c(vt(this,16),26),i||Uv),t),n)},s.zh=function(){return ot(),Uv},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),4),kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:Zp(this,1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 10:cE(this,!0);return;case 11:aE(this,!1);return;case 12:sE(this,!1);return;case 13:this.i=null,NO(this,null);return;case 15:uE(this,!1);return;case 16:lE(this,!1);return;case 18:aoe(this,!1),Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),2);return;case 20:loe(this,!0);return;case 21:are(this,null);return;case 23:!this.a&&(this.a=new Om(Jw,this,23)),Xt(this.a);return}$u(this,t-Ft((ot(),Uv)),at((n=c(vt(this,16),26),n||Uv),t))},s.Gh=function(){kre(this),C_(wo((vs(),Ir),this)),ra(this),this.Bb|=1},s.Lj=function(){return Xr(this)},s.qk=function(){var t;return t=Xr(this),!!t&&(t.Bb&rc)!=0},s.rk=function(){return(this.Bb&rc)!=0},s.sk=function(){return(this.Bb&Vr)!=0},s.nk=function(t,n){return this.c=null,noe(this,t,n)},s.Ib=function(){var t;return(this.Db&64)!=0?J7(this):(t=new ea(J7(this)),t.a+=" (containment: ",id(t,(this.Bb&rc)!=0),t.a+=", resolveProxies: ",id(t,(this.Bb&Vr)!=0),t.a+=")",t.a)},S(mt,"EReferenceImpl",99),y(548,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,548:1,114:1,115:1},D6e),s.Fb=function(t){return this===t},s.cd=function(){return this.b},s.dd=function(){return this.c},s.Hb=function(){return Xb(this)},s.Uh=function(t){H4t(this,ln(t))},s.ed=function(t){return O4t(this,ln(t))},s._g=function(t,n,i){var r;switch(t){case 0:return this.b;case 1:return this.c}return Nu(this,t-Ft((ot(),Ur)),at((r=c(vt(this,16),26),r||Ur),t),n,i)},s.lh=function(t){var n;switch(t){case 0:return this.b!=null;case 1:return this.c!=null}return xu(this,t-Ft((ot(),Ur)),at((n=c(vt(this,16),26),n||Ur),t))},s.sh=function(t,n){var i;switch(t){case 0:z4t(this,ln(n));return;case 1:cre(this,ln(n));return}qu(this,t-Ft((ot(),Ur)),at((i=c(vt(this,16),26),i||Ur),t),n)},s.zh=function(){return ot(),Ur},s.Bh=function(t){var n;switch(t){case 0:ore(this,null);return;case 1:cre(this,null);return}$u(this,t-Ft((ot(),Ur)),at((n=c(vt(this,16),26),n||Ur),t))},s.Sh=function(){var t;return this.a==-1&&(t=this.b,this.a=t==null?0:md(t)),this.a},s.Th=function(t){this.a=t},s.Ib=function(){var t;return(this.Db&64)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (key: ",co(t,this.b),t.a+=", value: ",co(t,this.c),t.a+=")",t.a)},s.a=-1,s.b=null,s.c=null;var ec=S(mt,"EStringToStringMapEntryImpl",548),Nft=pi(ai,"FeatureMap/Entry/Internal");y(565,1,ak),s.Ok=function(t){return this.Pk(c(t,49))},s.Pk=function(t){return this.Ok(t)},s.Fb=function(t){var n,i;return this===t?!0:Q(t,72)?(n=c(t,72),n.ak()==this.c?(i=this.dd(),i==null?n.dd()==null:$n(i,n.dd())):!1):!1},s.ak=function(){return this.c},s.Hb=function(){var t;return t=this.dd(),fi(this.c)^(t==null?0:fi(t))},s.Ib=function(){var t,n;return t=this.c,n=bu(t.Hj()).Ph(),t.ne(),(n!=null&&n.length!=0?n+":"+t.ne():t.ne())+"="+this.dd()},S(mt,"EStructuralFeatureImpl/BasicFeatureMapEntry",565),y(776,565,ak,ote),s.Pk=function(t){return new ote(this.c,t)},s.dd=function(){return this.a},s.Qk=function(t,n,i){return cTt(this,t,this.a,n,i)},s.Rk=function(t,n,i){return sTt(this,t,this.a,n,i)},S(mt,"EStructuralFeatureImpl/ContainmentUpdatingFeatureMapEntry",776),y(1314,1,{},l7e),s.Pj=function(t,n,i,r,o){var u;return u=c(x_(t,this.b),215),u.nl(this.a).Wj(r)},s.Qj=function(t,n,i,r,o){var u;return u=c(x_(t,this.b),215),u.el(this.a,r,o)},s.Rj=function(t,n,i,r,o){var u;return u=c(x_(t,this.b),215),u.fl(this.a,r,o)},s.Sj=function(t,n,i){var r;return r=c(x_(t,this.b),215),r.nl(this.a).fj()},s.Tj=function(t,n,i,r){var o;o=c(x_(t,this.b),215),o.nl(this.a).Wb(r)},s.Uj=function(t,n,i){return c(x_(t,this.b),215).nl(this.a)},s.Vj=function(t,n,i){var r;r=c(x_(t,this.b),215),r.nl(this.a).Xj()},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateFeatureMapDelegator",1314),y(89,1,{},cd,kg,ud,Lg),s.Pj=function(t,n,i,r,o){var u;if(u=n.Ch(i),u==null&&n.Dh(i,u=lD(this,t)),!o)switch(this.e){case 50:case 41:return c(u,589).sj();case 40:return c(u,215).kl()}return u},s.Qj=function(t,n,i,r,o){var u,a;return a=n.Ch(i),a==null&&n.Dh(i,a=lD(this,t)),u=c(a,69).lk(r,o),u},s.Rj=function(t,n,i,r,o){var u;return u=n.Ch(i),u!=null&&(o=c(u,69).mk(r,o)),o},s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null&&c(r,76).fj()},s.Tj=function(t,n,i,r){var o;o=c(n.Ch(i),76),!o&&n.Dh(i,o=lD(this,t)),o.Wb(r)},s.Uj=function(t,n,i){var r,o;return o=n.Ch(i),o==null&&n.Dh(i,o=lD(this,t)),Q(o,76)?c(o,76):(r=c(n.Ch(i),15),new aAe(r))},s.Vj=function(t,n,i){var r;r=c(n.Ch(i),76),!r&&n.Dh(i,r=lD(this,t)),r.Xj()},s.b=0,s.e=0,S(mt,"EStructuralFeatureImpl/InternalSettingDelegateMany",89),y(504,1,{}),s.Qj=function(t,n,i,r,o){throw V(new sn)},s.Rj=function(t,n,i,r,o){throw V(new sn)},s.Uj=function(t,n,i){return new oLe(this,t,n,i)};var sh;S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingle",504),y(1331,1,qV,oLe),s.Wj=function(t){return this.a.Pj(this.c,this.d,this.b,t,!0)},s.fj=function(){return this.a.Sj(this.c,this.d,this.b)},s.Wb=function(t){this.a.Tj(this.c,this.d,this.b,t)},s.Xj=function(){this.a.Vj(this.c,this.d,this.b)},s.b=0,S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingle/1",1331),y(769,504,{},Kne),s.Pj=function(t,n,i,r,o){return Wq(t,t.eh(),t.Vg())==this.b?this.sk()&&r?Dq(t):t.eh():null},s.Qj=function(t,n,i,r,o){var u,a;return t.eh()&&(o=(u=t.Vg(),u>=0?t.Qg(o):t.eh().ih(t,-1-u,null,o))),a=di(t.Tg(),this.e),t.Sg(r,a,o)},s.Rj=function(t,n,i,r,o){var u;return u=di(t.Tg(),this.e),t.Sg(null,u,o)},s.Sj=function(t,n,i){var r;return r=di(t.Tg(),this.e),!!t.eh()&&t.Vg()==r},s.Tj=function(t,n,i,r){var o,u,a,l,d;if(r!=null&&!Qq(this.a,r))throw V(new e_(lk+(Q(r,56)?_ce(c(r,56).Tg()):Vie(Fs(r)))+fk+this.a+"'"));if(o=t.eh(),a=di(t.Tg(),this.e),le(r)!==le(o)||t.Vg()!=a&&r!=null){if(gE(t,c(r,56)))throw V(new St(Y6+t.Ib()));d=null,o&&(d=(u=t.Vg(),u>=0?t.Qg(d):t.eh().ih(t,-1-u,null,d))),l=c(r,49),l&&(d=l.gh(t,di(l.Tg(),this.b),null,d)),d=t.Sg(l,a,d),d&&d.Fi()}else t.Lg()&&t.Mg()&&Bn(t,new sr(t,1,a,r,r))},s.Vj=function(t,n,i){var r,o,u,a;r=t.eh(),r?(a=(o=t.Vg(),o>=0?t.Qg(null):t.eh().ih(t,-1-o,null,null)),u=di(t.Tg(),this.e),a=t.Sg(null,u,a),a&&a.Fi()):t.Lg()&&t.Mg()&&Bn(t,new C5(t,1,this.e,null,null))},s.sk=function(){return!1},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainer",769),y(1315,769,{},Jke),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainerResolving",1315),y(563,504,{}),s.Pj=function(t,n,i,r,o){var u;return u=n.Ch(i),u==null?this.b:le(u)===le(sh)?null:u},s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null&&(le(r)===le(sh)||!$n(r,this.b))},s.Tj=function(t,n,i,r){var o,u;t.Lg()&&t.Mg()?(o=(u=n.Ch(i),u==null?this.b:le(u)===le(sh)?null:u),r==null?this.c!=null?(n.Dh(i,null),r=this.b):this.b!=null?n.Dh(i,sh):n.Dh(i,null):(this.Sk(r),n.Dh(i,r)),Bn(t,this.d.Tk(t,1,this.e,o,r))):r==null?this.c!=null?n.Dh(i,null):this.b!=null?n.Dh(i,sh):n.Dh(i,null):(this.Sk(r),n.Dh(i,r))},s.Vj=function(t,n,i){var r,o;t.Lg()&&t.Mg()?(r=(o=n.Ch(i),o==null?this.b:le(o)===le(sh)?null:o),n.Eh(i),Bn(t,this.d.Tk(t,1,this.e,r,this.b))):n.Eh(i)},s.Sk=function(t){throw V(new vAe)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData",563),y(_v,1,{},k6e),s.Tk=function(t,n,i,r,o){return new C5(t,n,i,r,o)},s.Uk=function(t,n,i,r,o,u){return new UB(t,n,i,r,o,u)};var ame,lme,fme,hme,dme,gme,bme,pY,pme;S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator",_v),y(1332,_v,{},R6e),s.Tk=function(t,n,i,r,o){return new Eie(t,n,i,Be(Fe(r)),Be(Fe(o)))},s.Uk=function(t,n,i,r,o,u){return new INe(t,n,i,Be(Fe(r)),Be(Fe(o)),u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/1",1332),y(1333,_v,{},x6e),s.Tk=function(t,n,i,r,o){return new Yie(t,n,i,c(r,217).a,c(o,217).a)},s.Uk=function(t,n,i,r,o,u){return new yNe(t,n,i,c(r,217).a,c(o,217).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/2",1333),y(1334,_v,{},L6e),s.Tk=function(t,n,i,r,o){return new Xie(t,n,i,c(r,172).a,c(o,172).a)},s.Uk=function(t,n,i,r,o,u){return new _Ne(t,n,i,c(r,172).a,c(o,172).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/3",1334),y(1335,_v,{},N6e),s.Tk=function(t,n,i,r,o){return new yie(t,n,i,ge(Te(r)),ge(Te(o)))},s.Uk=function(t,n,i,r,o,u){return new ENe(t,n,i,ge(Te(r)),ge(Te(o)),u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/4",1335),y(1336,_v,{},F6e),s.Tk=function(t,n,i,r,o){return new Zie(t,n,i,c(r,155).a,c(o,155).a)},s.Uk=function(t,n,i,r,o,u){return new SNe(t,n,i,c(r,155).a,c(o,155).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/5",1336),y(1337,_v,{},B6e),s.Tk=function(t,n,i,r,o){return new _ie(t,n,i,c(r,19).a,c(o,19).a)},s.Uk=function(t,n,i,r,o,u){return new PNe(t,n,i,c(r,19).a,c(o,19).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/6",1337),y(1338,_v,{},$6e),s.Tk=function(t,n,i,r,o){return new Jie(t,n,i,c(r,162).a,c(o,162).a)},s.Uk=function(t,n,i,r,o,u){return new MNe(t,n,i,c(r,162).a,c(o,162).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/7",1338),y(1339,_v,{},K6e),s.Tk=function(t,n,i,r,o){return new Qie(t,n,i,c(r,184).a,c(o,184).a)},s.Uk=function(t,n,i,r,o,u){return new CNe(t,n,i,c(r,184).a,c(o,184).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/8",1339),y(1317,563,{},cLe),s.Sk=function(t){if(!this.a.wj(t))throw V(new e_(lk+Fs(t)+fk+this.a+"'"))},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataDynamic",1317),y(1318,563,{},WRe),s.Sk=function(t){},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataStatic",1318),y(770,563,{}),s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null},s.Tj=function(t,n,i,r){var o,u;t.Lg()&&t.Mg()?(o=!0,u=n.Ch(i),u==null?(o=!1,u=this.b):le(u)===le(sh)&&(u=null),r==null?this.c!=null?(n.Dh(i,null),r=this.b):n.Dh(i,sh):(this.Sk(r),n.Dh(i,r)),Bn(t,this.d.Uk(t,1,this.e,u,r,!o))):r==null?this.c!=null?n.Dh(i,null):n.Dh(i,sh):(this.Sk(r),n.Dh(i,r))},s.Vj=function(t,n,i){var r,o;t.Lg()&&t.Mg()?(r=!0,o=n.Ch(i),o==null?(r=!1,o=this.b):le(o)===le(sh)&&(o=null),n.Eh(i),Bn(t,this.d.Uk(t,2,this.e,o,this.b,r))):n.Eh(i)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettable",770),y(1319,770,{},sLe),s.Sk=function(t){if(!this.a.wj(t))throw V(new e_(lk+Fs(t)+fk+this.a+"'"))},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableDynamic",1319),y(1320,770,{},YRe),s.Sk=function(t){},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableStatic",1320),y(398,504,{},w8),s.Pj=function(t,n,i,r,o){var u,a,l,d,p;if(p=n.Ch(i),this.Kj()&&le(p)===le(sh))return null;if(this.sk()&&r&&p!=null){if(l=c(p,49),l.kh()&&(d=S1(t,l),l!=d)){if(!Qq(this.a,d))throw V(new e_(lk+Fs(d)+fk+this.a+"'"));n.Dh(i,p=d),this.rk()&&(u=c(d,49),a=l.ih(t,this.b?di(l.Tg(),this.b):-1-di(t.Tg(),this.e),null,null),!u.eh()&&(a=u.gh(t,this.b?di(u.Tg(),this.b):-1-di(t.Tg(),this.e),null,a)),a&&a.Fi()),t.Lg()&&t.Mg()&&Bn(t,new C5(t,9,this.e,l,d))}return p}else return p},s.Qj=function(t,n,i,r,o){var u,a;return a=n.Ch(i),le(a)===le(sh)&&(a=null),n.Dh(i,r),this.bj()?le(a)!==le(r)&&a!=null&&(u=c(a,49),o=u.ih(t,di(u.Tg(),this.b),null,o)):this.rk()&&a!=null&&(o=c(a,49).ih(t,-1-di(t.Tg(),this.e),null,o)),t.Lg()&&t.Mg()&&(!o&&(o=new i1(4)),o.Ei(new C5(t,1,this.e,a,r))),o},s.Rj=function(t,n,i,r,o){var u;return u=n.Ch(i),le(u)===le(sh)&&(u=null),n.Eh(i),t.Lg()&&t.Mg()&&(!o&&(o=new i1(4)),this.Kj()?o.Ei(new C5(t,2,this.e,u,null)):o.Ei(new C5(t,1,this.e,u,null))),o},s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null},s.Tj=function(t,n,i,r){var o,u,a,l,d;if(r!=null&&!Qq(this.a,r))throw V(new e_(lk+(Q(r,56)?_ce(c(r,56).Tg()):Vie(Fs(r)))+fk+this.a+"'"));d=n.Ch(i),l=d!=null,this.Kj()&&le(d)===le(sh)&&(d=null),a=null,this.bj()?le(d)!==le(r)&&(d!=null&&(o=c(d,49),a=o.ih(t,di(o.Tg(),this.b),null,a)),r!=null&&(o=c(r,49),a=o.gh(t,di(o.Tg(),this.b),null,a))):this.rk()&&le(d)!==le(r)&&(d!=null&&(a=c(d,49).ih(t,-1-di(t.Tg(),this.e),null,a)),r!=null&&(a=c(r,49).gh(t,-1-di(t.Tg(),this.e),null,a))),r==null&&this.Kj()?n.Dh(i,sh):n.Dh(i,r),t.Lg()&&t.Mg()?(u=new UB(t,1,this.e,d,r,this.Kj()&&!l),a?(a.Ei(u),a.Fi()):Bn(t,u)):a&&a.Fi()},s.Vj=function(t,n,i){var r,o,u,a,l;l=n.Ch(i),a=l!=null,this.Kj()&&le(l)===le(sh)&&(l=null),u=null,l!=null&&(this.bj()?(r=c(l,49),u=r.ih(t,di(r.Tg(),this.b),null,u)):this.rk()&&(u=c(l,49).ih(t,-1-di(t.Tg(),this.e),null,u))),n.Eh(i),t.Lg()&&t.Mg()?(o=new UB(t,this.Kj()?2:1,this.e,l,null,a),u?(u.Ei(o),u.Fi()):Bn(t,o)):u&&u.Fi()},s.bj=function(){return!1},s.rk=function(){return!1},s.sk=function(){return!1},s.Kj=function(){return!1},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObject",398),y(564,398,{},YF),s.rk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainment",564),y(1323,564,{},UDe),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentResolving",1323),y(772,564,{},Gee),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettable",772),y(1325,772,{},WDe),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettableResolving",1325),y(640,564,{},aB),s.bj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverse",640),y(1324,640,{},Qke),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseResolving",1324),y(773,640,{},Dte),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettable",773),y(1326,773,{},Zke),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettableResolving",1326),y(641,398,{},Uee),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolving",641),y(1327,641,{},YDe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingUnsettable",1327),y(774,641,{},Ate),s.bj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverse",774),y(1328,774,{},eRe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverseUnsettable",1328),y(1321,398,{},XDe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectUnsettable",1321),y(771,398,{},Ote),s.bj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverse",771),y(1322,771,{},tRe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverseUnsettable",1322),y(775,565,ak,Ine),s.Pk=function(t){return new Ine(this.a,this.c,t)},s.dd=function(){return this.b},s.Qk=function(t,n,i){return sCt(this,t,this.b,i)},s.Rk=function(t,n,i){return uCt(this,t,this.b,i)},S(mt,"EStructuralFeatureImpl/InverseUpdatingFeatureMapEntry",775),y(1329,1,qV,aAe),s.Wj=function(t){return this.a},s.fj=function(){return Q(this.a,95)?c(this.a,95).fj():!this.a.dc()},s.Wb=function(t){this.a.$b(),this.a.Gc(c(t,15))},s.Xj=function(){Q(this.a,95)?c(this.a,95).Xj():this.a.$b()},S(mt,"EStructuralFeatureImpl/SettingMany",1329),y(1330,565,ak,bFe),s.Ok=function(t){return new QF((Jn(),lM),this.b.Ih(this.a,t))},s.dd=function(){return null},s.Qk=function(t,n,i){return i},s.Rk=function(t,n,i){return i},S(mt,"EStructuralFeatureImpl/SimpleContentFeatureMapEntry",1330),y(642,565,ak,QF),s.Ok=function(t){return new QF(this.c,t)},s.dd=function(){return this.a},s.Qk=function(t,n,i){return i},s.Rk=function(t,n,i){return i},S(mt,"EStructuralFeatureImpl/SimpleFeatureMapEntry",642),y(391,497,Tf,G3),s.ri=function(t){return oe(va,xe,26,t,0,1)},s.ni=function(){return!1},S(mt,"ESuperAdapter/1",391),y(444,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,836:1,49:1,97:1,150:1,444:1,114:1,115:1},EN),s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return!this.a&&(this.a=new E5(this,oo,this)),this.a}return Nu(this,t-Ft((ot(),up)),at((r=c(vt(this,16),26),r||up),t),n,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 2:return!this.a&&(this.a=new E5(this,oo,this)),Fr(this.a,t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),up)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),up)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return!!this.a&&this.a.i!=0}return xu(this,t-Ft((ot(),up)),at((n=c(vt(this,16),26),n||up),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:!this.a&&(this.a=new E5(this,oo,this)),Xt(this.a),!this.a&&(this.a=new E5(this,oo,this)),Mi(this.a,c(n,14));return}qu(this,t-Ft((ot(),up)),at((i=c(vt(this,16),26),i||up),t),n)},s.zh=function(){return ot(),up},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:!this.a&&(this.a=new E5(this,oo,this)),Xt(this.a);return}$u(this,t-Ft((ot(),up)),at((n=c(vt(this,16),26),n||up),t))},S(mt,"ETypeParameterImpl",444),y(445,85,xo,E5),s.cj=function(t,n){return uDt(this,c(t,87),n)},s.dj=function(t,n){return aDt(this,c(t,87),n)},S(mt,"ETypeParameterImpl/1",445),y(634,43,fv,BN),s.ec=function(){return new zA(this)},S(mt,"ETypeParameterImpl/2",634),y(556,Kl,ys,zA),s.Fc=function(t){return Eke(this,c(t,87))},s.Gc=function(t){var n,i,r;for(r=!1,i=t.Kc();i.Ob();)n=c(i.Pb(),87),Kn(this.a,n,"")==null&&(r=!0);return r},s.$b=function(){Is(this.a)},s.Hc=function(t){return tu(this.a,t)},s.Kc=function(){var t;return t=new Gg(new Pg(this.a).a),new VA(t)},s.Mc=function(t){return uBe(this,t)},s.gc=function(){return KS(this.a)},S(mt,"ETypeParameterImpl/2/1",556),y(557,1,dr,VA),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(g0(this.a).cd(),87)},s.Ob=function(){return this.a.b},s.Qb=function(){BBe(this.a)},S(mt,"ETypeParameterImpl/2/1/1",557),y(1276,43,fv,ZAe),s._b=function(t){return fr(t)?WB(this,t):!!Po(this.f,t)},s.xc=function(t){var n,i;return n=fr(t)?mc(this,t):Uo(Po(this.f,t)),Q(n,837)?(i=c(n,837),n=i._j(),Kn(this,c(t,235),n),n):n??(t==null?(nF(),Bft):null)},S(mt,"EValidatorRegistryImpl",1276),y(1313,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,1941:1,49:1,97:1,150:1,114:1,115:1},q6e),s.Ih=function(t,n){switch(t.yj()){case 21:case 22:case 23:case 24:case 26:case 31:case 32:case 37:case 38:case 39:case 40:case 43:case 44:case 48:case 49:case 20:return n==null?null:Ro(n);case 25:return pIt(n);case 27:return kCt(n);case 28:return RCt(n);case 29:return n==null?null:nDe(rM[0],c(n,199));case 41:return n==null?"":r1(c(n,290));case 42:return Ro(n);case 50:return ln(n);default:throw V(new St(UE+t.ne()+K0))}},s.Jh=function(t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;switch(t.G==-1&&(t.G=(D=bu(t),D?wd(D.Mh(),t):-1)),t.G){case 0:return i=new LN,i;case 1:return n=new qJ,n;case 2:return r=new UJ,r;case 4:return o=new GA,o;case 5:return u=new QAe,u;case 6:return a=new EAe,a;case 7:return l=new GJ,l;case 10:return p=new xA,p;case 11:return v=new NN,v;case 12:return A=new PLe,A;case 13:return L=new FN,L;case 14:return N=new Xee,N;case 17:return z=new D6e,z;case 18:return d=new Nb,d;case 19:return Y=new EN,Y;default:throw V(new St(CV+t.zb+K0))}},s.Kh=function(t,n){switch(t.yj()){case 20:return n==null?null:new bZ(n);case 21:return n==null?null:new l1(n);case 23:case 22:return n==null?null:_9t(n);case 26:case 24:return n==null?null:sI(vu(n,-128,127)<<24>>24);case 25:return Dxt(n);case 27:return rOt(n);case 28:return oOt(n);case 29:return IDt(n);case 32:case 31:return n==null?null:aw(n);case 38:case 37:return n==null?null:new xQ(n);case 40:case 39:return n==null?null:Ce(vu(n,Ar,Fn));case 41:return null;case 42:return n==null,null;case 44:case 43:return n==null?null:Yg(aD(n));case 49:case 48:return n==null?null:oE(vu(n,hk,32767)<<16>>16);case 50:return n;default:throw V(new St(UE+t.ne()+K0))}},S(mt,"EcoreFactoryImpl",1313),y(547,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,1939:1,49:1,97:1,150:1,179:1,547:1,114:1,115:1,675:1},Kxe),s.gb=!1,s.hb=!1;var wme,Fft=!1;S(mt,"EcorePackageImpl",547),y(1184,1,{837:1},H6e),s._j=function(){return CDe(),$ft},S(mt,"EcorePackageImpl/1",1184),y(1193,1,Tn,z6e),s.wj=function(t){return Q(t,147)},s.xj=function(t){return oe(Vj,xe,147,t,0,1)},S(mt,"EcorePackageImpl/10",1193),y(1194,1,Tn,V6e),s.wj=function(t){return Q(t,191)},s.xj=function(t){return oe(sY,xe,191,t,0,1)},S(mt,"EcorePackageImpl/11",1194),y(1195,1,Tn,G6e),s.wj=function(t){return Q(t,56)},s.xj=function(t){return oe(J1,xe,56,t,0,1)},S(mt,"EcorePackageImpl/12",1195),y(1196,1,Tn,U6e),s.wj=function(t){return Q(t,399)},s.xj=function(t){return oe(ya,Kfe,59,t,0,1)},S(mt,"EcorePackageImpl/13",1196),y(1197,1,Tn,W6e),s.wj=function(t){return Q(t,235)},s.xj=function(t){return oe(ml,xe,235,t,0,1)},S(mt,"EcorePackageImpl/14",1197),y(1198,1,Tn,Y6e),s.wj=function(t){return Q(t,509)},s.xj=function(t){return oe(cp,xe,2017,t,0,1)},S(mt,"EcorePackageImpl/15",1198),y(1199,1,Tn,X6e),s.wj=function(t){return Q(t,99)},s.xj=function(t){return oe(Qw,yv,18,t,0,1)},S(mt,"EcorePackageImpl/16",1199),y(1200,1,Tn,J6e),s.wj=function(t){return Q(t,170)},s.xj=function(t){return oe(us,yv,170,t,0,1)},S(mt,"EcorePackageImpl/17",1200),y(1201,1,Tn,Q6e),s.wj=function(t){return Q(t,472)},s.xj=function(t){return oe(Xw,xe,472,t,0,1)},S(mt,"EcorePackageImpl/18",1201),y(1202,1,Tn,Z6e),s.wj=function(t){return Q(t,548)},s.xj=function(t){return oe(ec,Bet,548,t,0,1)},S(mt,"EcorePackageImpl/19",1202),y(1185,1,Tn,ePe),s.wj=function(t){return Q(t,322)},s.xj=function(t){return oe(Jw,yv,34,t,0,1)},S(mt,"EcorePackageImpl/2",1185),y(1203,1,Tn,tPe),s.wj=function(t){return Q(t,241)},s.xj=function(t){return oe(oo,ntt,87,t,0,1)},S(mt,"EcorePackageImpl/20",1203),y(1204,1,Tn,nPe),s.wj=function(t){return Q(t,444)},s.xj=function(t){return oe(Gc,xe,836,t,0,1)},S(mt,"EcorePackageImpl/21",1204),y(1205,1,Tn,iPe),s.wj=function(t){return Dp(t)},s.xj=function(t){return oe(Qi,we,476,t,8,1)},S(mt,"EcorePackageImpl/22",1205),y(1206,1,Tn,rPe),s.wj=function(t){return Q(t,190)},s.xj=function(t){return oe(Ps,we,190,t,0,2)},S(mt,"EcorePackageImpl/23",1206),y(1207,1,Tn,oPe),s.wj=function(t){return Q(t,217)},s.xj=function(t){return oe(B2,we,217,t,0,1)},S(mt,"EcorePackageImpl/24",1207),y(1208,1,Tn,cPe),s.wj=function(t){return Q(t,172)},s.xj=function(t){return oe(sP,we,172,t,0,1)},S(mt,"EcorePackageImpl/25",1208),y(1209,1,Tn,sPe),s.wj=function(t){return Q(t,199)},s.xj=function(t){return oe(Mk,we,199,t,0,1)},S(mt,"EcorePackageImpl/26",1209),y(1210,1,Tn,uPe),s.wj=function(t){return!1},s.xj=function(t){return oe(xme,xe,2110,t,0,1)},S(mt,"EcorePackageImpl/27",1210),y(1211,1,Tn,aPe),s.wj=function(t){return kp(t)},s.xj=function(t){return oe(mr,we,333,t,7,1)},S(mt,"EcorePackageImpl/28",1211),y(1212,1,Tn,lPe),s.wj=function(t){return Q(t,58)},s.xj=function(t){return oe(Xwe,yw,58,t,0,1)},S(mt,"EcorePackageImpl/29",1212),y(1186,1,Tn,fPe),s.wj=function(t){return Q(t,510)},s.xj=function(t){return oe(Sn,{3:1,4:1,5:1,1934:1},590,t,0,1)},S(mt,"EcorePackageImpl/3",1186),y(1213,1,Tn,hPe),s.wj=function(t){return Q(t,573)},s.xj=function(t){return oe(Zwe,xe,1940,t,0,1)},S(mt,"EcorePackageImpl/30",1213),y(1214,1,Tn,dPe),s.wj=function(t){return Q(t,153)},s.xj=function(t){return oe(Eme,yw,153,t,0,1)},S(mt,"EcorePackageImpl/31",1214),y(1215,1,Tn,gPe),s.wj=function(t){return Q(t,72)},s.xj=function(t){return oe(Kx,ftt,72,t,0,1)},S(mt,"EcorePackageImpl/32",1215),y(1216,1,Tn,bPe),s.wj=function(t){return Q(t,155)},s.xj=function(t){return oe(e4,we,155,t,0,1)},S(mt,"EcorePackageImpl/33",1216),y(1217,1,Tn,pPe),s.wj=function(t){return Q(t,19)},s.xj=function(t){return oe($r,we,19,t,0,1)},S(mt,"EcorePackageImpl/34",1217),y(1218,1,Tn,wPe),s.wj=function(t){return Q(t,290)},s.xj=function(t){return oe(ehe,xe,290,t,0,1)},S(mt,"EcorePackageImpl/35",1218),y(1219,1,Tn,mPe),s.wj=function(t){return Q(t,162)},s.xj=function(t){return oe(H0,we,162,t,0,1)},S(mt,"EcorePackageImpl/36",1219),y(1220,1,Tn,vPe),s.wj=function(t){return Q(t,83)},s.xj=function(t){return oe(the,xe,83,t,0,1)},S(mt,"EcorePackageImpl/37",1220),y(1221,1,Tn,yPe),s.wj=function(t){return Q(t,591)},s.xj=function(t){return oe(mme,xe,591,t,0,1)},S(mt,"EcorePackageImpl/38",1221),y(1222,1,Tn,_Pe),s.wj=function(t){return!1},s.xj=function(t){return oe(Lme,xe,2111,t,0,1)},S(mt,"EcorePackageImpl/39",1222),y(1187,1,Tn,EPe),s.wj=function(t){return Q(t,88)},s.xj=function(t){return oe(va,xe,26,t,0,1)},S(mt,"EcorePackageImpl/4",1187),y(1223,1,Tn,SPe),s.wj=function(t){return Q(t,184)},s.xj=function(t){return oe(z0,we,184,t,0,1)},S(mt,"EcorePackageImpl/40",1223),y(1224,1,Tn,PPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(mt,"EcorePackageImpl/41",1224),y(1225,1,Tn,MPe),s.wj=function(t){return Q(t,588)},s.xj=function(t){return oe(Qwe,xe,588,t,0,1)},S(mt,"EcorePackageImpl/42",1225),y(1226,1,Tn,CPe),s.wj=function(t){return!1},s.xj=function(t){return oe(Nme,we,2112,t,0,1)},S(mt,"EcorePackageImpl/43",1226),y(1227,1,Tn,IPe),s.wj=function(t){return Q(t,42)},s.xj=function(t){return oe(fb,gD,42,t,0,1)},S(mt,"EcorePackageImpl/44",1227),y(1188,1,Tn,TPe),s.wj=function(t){return Q(t,138)},s.xj=function(t){return oe(vl,xe,138,t,0,1)},S(mt,"EcorePackageImpl/5",1188),y(1189,1,Tn,jPe),s.wj=function(t){return Q(t,148)},s.xj=function(t){return oe(dY,xe,148,t,0,1)},S(mt,"EcorePackageImpl/6",1189),y(1190,1,Tn,APe),s.wj=function(t){return Q(t,457)},s.xj=function(t){return oe($x,xe,671,t,0,1)},S(mt,"EcorePackageImpl/7",1190),y(1191,1,Tn,OPe),s.wj=function(t){return Q(t,573)},s.xj=function(t){return oe(Yh,xe,678,t,0,1)},S(mt,"EcorePackageImpl/8",1191),y(1192,1,Tn,DPe),s.wj=function(t){return Q(t,471)},s.xj=function(t){return oe(iM,xe,471,t,0,1)},S(mt,"EcorePackageImpl/9",1192),y(1025,1982,Fet,w9e),s.bi=function(t,n){Ujt(this,c(n,415))},s.fi=function(t,n){OGe(this,t,c(n,415))},S(mt,"MinimalEObjectImpl/1ArrayDelegatingAdapterList",1025),y(1026,143,xT,Dxe),s.Ai=function(){return this.a.a},S(mt,"MinimalEObjectImpl/1ArrayDelegatingAdapterList/1",1026),y(1053,1052,{},W7e),S("org.eclipse.emf.ecore.plugin","EcorePlugin",1053);var mme=pi(htt,"Resource");y(781,1378,dtt),s.Yk=function(t){},s.Zk=function(t){},s.Vk=function(){return!this.a&&(this.a=new ON(this)),this.a},s.Wk=function(t){var n,i,r,o,u;if(r=t.length,r>0)if(fn(0,t.length),t.charCodeAt(0)==47){for(u=new Dc(4),o=1,n=1;n0&&(t=t.substr(0,i)));return bRt(this,t)},s.Xk=function(){return this.c},s.Ib=function(){var t;return r1(this.gm)+"@"+(t=fi(this)>>>0,t.toString(16))+" uri='"+this.d+"'"},s.b=!1,S(HV,"ResourceImpl",781),y(1379,781,dtt,fAe),S(HV,"BinaryResourceImpl",1379),y(1169,694,NV),s.si=function(t){return Q(t,56)?X5t(this,c(t,56)):Q(t,591)?new $t(c(t,591).Vk()):le(t)===le(this.f)?c(t,14).Kc():(p_(),Wj.a)},s.Ob=function(){return hse(this)},s.a=!1,S(ai,"EcoreUtil/ContentTreeIterator",1169),y(1380,1169,NV,axe),s.si=function(t){return le(t)===le(this.f)?c(t,15).Kc():new GNe(c(t,56))},S(HV,"ResourceImpl/5",1380),y(648,1994,ttt,ON),s.Hc=function(t){return this.i<=4?pE(this,t):Q(t,49)&&c(t,49).Zg()==this.a},s.bi=function(t,n){t==this.i-1&&(this.a.b||(this.a.b=!0))},s.di=function(t,n){t==0?this.a.b||(this.a.b=!0):M$(this,t,n)},s.fi=function(t,n){},s.gi=function(t,n,i){},s.aj=function(){return 2},s.Ai=function(){return this.a},s.bj=function(){return!0},s.cj=function(t,n){var i;return i=c(t,49),n=i.wh(this.a,n),n},s.dj=function(t,n){var i;return i=c(t,49),i.wh(null,n)},s.ej=function(){return!1},s.hi=function(){return!0},s.ri=function(t){return oe(J1,xe,56,t,0,1)},s.ni=function(){return!1},S(HV,"ResourceImpl/ContentsEList",648),y(957,1964,xE,lAe),s.Zc=function(t){return this.a._h(t)},s.gc=function(){return this.a.gc()},S(ai,"AbstractSequentialInternalEList/1",957);var vme,yme,Ir,_me;y(624,1,{},fRe);var qx,Hx;S(ai,"BasicExtendedMetaData",624),y(1160,1,{},f7e),s.$k=function(){return null},s._k=function(){return this.a==-2&&Wmt(this,EDt(this.d,this.b)),this.a},s.al=function(){return null},s.bl=function(){return st(),st(),Qr},s.ne=function(){return this.c==XE&&Xmt(this,uze(this.d,this.b)),this.c},s.cl=function(){return 0},s.a=-2,s.c=XE,S(ai,"BasicExtendedMetaData/EClassExtendedMetaDataImpl",1160),y(1161,1,{},DNe),s.$k=function(){return this.a==(k_(),qx)&&Ymt(this,FLt(this.f,this.b)),this.a},s._k=function(){return 0},s.al=function(){return this.c==(k_(),qx)&&Jmt(this,BLt(this.f,this.b)),this.c},s.bl=function(){return!this.d&&Qmt(this,FFt(this.f,this.b)),this.d},s.ne=function(){return this.e==XE&&Zmt(this,uze(this.f,this.b)),this.e},s.cl=function(){return this.g==-2&&evt(this,K7t(this.f,this.b)),this.g},s.e=XE,s.g=-2,S(ai,"BasicExtendedMetaData/EDataTypeExtendedMetaDataImpl",1161),y(1159,1,{},d7e),s.b=!1,s.c=!1,S(ai,"BasicExtendedMetaData/EPackageExtendedMetaDataImpl",1159),y(1162,1,{},ONe),s.c=-2,s.e=XE,s.f=XE,S(ai,"BasicExtendedMetaData/EStructuralFeatureExtendedMetaDataImpl",1162),y(585,622,xo,a8),s.aj=function(){return this.c},s.Fk=function(){return!1},s.li=function(t,n){return n},s.c=0,S(ai,"EDataTypeEList",585);var Eme=pi(ai,"FeatureMap");y(75,585,{3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},Ci),s.Vc=function(t,n){RLt(this,t,c(n,72))},s.Fc=function(t){return Zxt(this,c(t,72))},s.Yh=function(t){BSt(this,c(t,72))},s.cj=function(t,n){return v_t(this,c(t,72),n)},s.dj=function(t,n){return vte(this,c(t,72),n)},s.ii=function(t,n){return nBt(this,t,n)},s.li=function(t,n){return xKt(this,t,c(n,72))},s._c=function(t,n){return PNt(this,t,c(n,72))},s.jj=function(t,n){return y_t(this,c(t,72),n)},s.kj=function(t,n){return Lke(this,c(t,72),n)},s.lj=function(t,n,i){return P7t(this,c(t,72),c(n,72),i)},s.oi=function(t,n){return bq(this,t,c(n,72))},s.dl=function(t,n){return eue(this,t,n)},s.Wc=function(t,n){var i,r,o,u,a,l,d,p,v;for(p=new d0(n.gc()),o=n.Kc();o.Ob();)if(r=c(o.Pb(),72),u=r.ak(),Bh(this.e,u))(!u.hi()||!rO(this,u,r.dd())&&!pE(p,r))&&on(p,r);else{for(v=qc(this.e.Tg(),u),i=c(this.g,119),a=!0,l=0;l=0;)if(n=t[this.c],this.k.rl(n.ak()))return this.j=this.f?n:n.dd(),this.i=-2,!0;return this.i=-1,this.g=-1,!1},S(ai,"BasicFeatureMap/FeatureEIterator",410),y(662,410,Wf,RF),s.Lk=function(){return!0},S(ai,"BasicFeatureMap/ResolvingFeatureEIterator",662),y(955,486,sk,rDe),s.Gi=function(){return this},S(ai,"EContentsEList/1",955),y(956,486,sk,j7e),s.Lk=function(){return!1},S(ai,"EContentsEList/2",956),y(954,279,uk,oDe),s.Nk=function(t){},s.Ob=function(){return!1},s.Sb=function(){return!1},S(ai,"EContentsEList/FeatureIteratorImpl/1",954),y(825,585,xo,Pee),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EDataTypeEList/Unsettable",825),y(1849,585,xo,dDe),s.hi=function(){return!0},S(ai,"EDataTypeUniqueEList",1849),y(1850,825,xo,gDe),s.hi=function(){return!0},S(ai,"EDataTypeUniqueEList/Unsettable",1850),y(139,85,xo,gs),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentEList/Resolving",139),y(1163,545,xo,hDe),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentEList/Unsettable/Resolving",1163),y(748,16,xo,hte),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EObjectContainmentWithInverseEList/Unsettable",748),y(1173,748,xo,Ske),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentWithInverseEList/Unsettable/Resolving",1173),y(743,496,xo,See),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EObjectEList/Unsettable",743),y(328,496,xo,Om),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectResolvingEList",328),y(1641,743,xo,bDe),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectResolvingEList/Unsettable",1641),y(1381,1,{},kPe);var Bft;S(ai,"EObjectValidator",1381),y(546,496,xo,T8),s.zk=function(){return this.d},s.Ak=function(){return this.b},s.bj=function(){return!0},s.Dk=function(){return!0},s.b=0,S(ai,"EObjectWithInverseEList",546),y(1176,546,xo,Pke),s.Ck=function(){return!0},S(ai,"EObjectWithInverseEList/ManyInverse",1176),y(625,546,xo,eB),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EObjectWithInverseEList/Unsettable",625),y(1175,625,xo,Mke),s.Ck=function(){return!0},S(ai,"EObjectWithInverseEList/Unsettable/ManyInverse",1175),y(749,546,xo,dte),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectWithInverseResolvingEList",749),y(31,749,xo,dt),s.Ck=function(){return!0},S(ai,"EObjectWithInverseResolvingEList/ManyInverse",31),y(750,625,xo,gte),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectWithInverseResolvingEList/Unsettable",750),y(1174,750,xo,Cke),s.Ck=function(){return!0},S(ai,"EObjectWithInverseResolvingEList/Unsettable/ManyInverse",1174),y(1164,622,xo),s.ai=function(){return(this.b&1792)==0},s.ci=function(){this.b|=1},s.Bk=function(){return(this.b&4)!=0},s.bj=function(){return(this.b&40)!=0},s.Ck=function(){return(this.b&16)!=0},s.Dk=function(){return(this.b&8)!=0},s.Ek=function(){return(this.b&Iw)!=0},s.rk=function(){return(this.b&32)!=0},s.Fk=function(){return(this.b&Ka)!=0},s.wj=function(t){return this.d?sFe(this.d,t):this.ak().Yj().wj(t)},s.fj=function(){return(this.b&2)!=0?(this.b&1)!=0:this.i!=0},s.hi=function(){return(this.b&128)!=0},s.Xj=function(){var t;Xt(this),(this.b&2)!=0&&(Qs(this.e)?(t=(this.b&1)!=0,this.b&=-2,Q3(this,new La(this.e,2,di(this.e.Tg(),this.ak()),t,!1))):this.b&=-2)},s.ni=function(){return(this.b&1536)==0},s.b=0,S(ai,"EcoreEList/Generic",1164),y(1165,1164,xo,pLe),s.ak=function(){return this.a},S(ai,"EcoreEList/Dynamic",1165),y(747,63,Tf,IQ),s.ri=function(t){return aI(this.a.a,t)},S(ai,"EcoreEMap/1",747),y(746,85,xo,hne),s.bi=function(t,n){P7(this.b,c(n,133))},s.di=function(t,n){nqe(this.b)},s.ei=function(t,n,i){var r;++(r=this.b,c(n,133),r).e},s.fi=function(t,n){PK(this.b,c(n,133))},s.gi=function(t,n,i){PK(this.b,c(i,133)),le(i)===le(n)&&c(i,133).Th(T2t(c(n,133).cd())),P7(this.b,c(n,133))},S(ai,"EcoreEMap/DelegateEObjectContainmentEList",746),y(1171,151,$fe,bKe),S(ai,"EcoreEMap/Unsettable",1171),y(1172,746,xo,Ike),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EcoreEMap/Unsettable/UnsettableDelegateEObjectContainmentEList",1172),y(1168,228,fv,vxe),s.a=!1,s.b=!1,S(ai,"EcoreUtil/Copier",1168),y(745,1,dr,GNe),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return qHe(this)},s.Pb=function(){var t;return qHe(this),t=this.b,this.b=null,t},s.Qb=function(){this.a.Qb()},S(ai,"EcoreUtil/ProperContentIterator",745),y(1382,1381,{},ACe);var $ft;S(ai,"EcoreValidator",1382);var Kft;pi(ai,"FeatureMapUtil/Validator"),y(1260,1,{1942:1},RPe),s.rl=function(t){return!0},S(ai,"FeatureMapUtil/1",1260),y(757,1,{1942:1},jue),s.rl=function(t){var n;return this.c==t?!0:(n=Fe(Bt(this.a,t)),n==null?vFt(this,t)?(eBe(this.a,t,(Pt(),ZE)),!0):(eBe(this.a,t,(Pt(),hb)),!1):n==(Pt(),ZE))},s.e=!1;var wY;S(ai,"FeatureMapUtil/BasicValidator",757),y(758,43,fv,vee),S(ai,"FeatureMapUtil/BasicValidator/Cache",758),y(501,52,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,69:1,95:1},pC),s.Vc=function(t,n){wWe(this.c,this.b,t,n)},s.Fc=function(t){return eue(this.c,this.b,t)},s.Wc=function(t,n){return R$t(this.c,this.b,t,n)},s.Gc=function(t){return h5(this,t)},s.Xh=function(t,n){tIt(this.c,this.b,t,n)},s.lk=function(t,n){return Wse(this.c,this.b,t,n)},s.pi=function(t){return iD(this.c,this.b,t,!1)},s.Zh=function(){return $7e(this.c,this.b)},s.$h=function(){return b2t(this.c,this.b)},s._h=function(t){return cCt(this.c,this.b,t)},s.mk=function(t,n){return oke(this,t,n)},s.$b=function(){ky(this)},s.Hc=function(t){return rO(this.c,this.b,t)},s.Ic=function(t){return oTt(this.c,this.b,t)},s.Xb=function(t){return iD(this.c,this.b,t,!0)},s.Wj=function(t){return this},s.Xc=function(t){return wMt(this.c,this.b,t)},s.dc=function(){return L9(this)},s.fj=function(){return!jI(this.c,this.b)},s.Kc=function(){return HCt(this.c,this.b)},s.Yc=function(){return zCt(this.c,this.b)},s.Zc=function(t){return nAt(this.c,this.b,t)},s.ii=function(t,n){return xYe(this.c,this.b,t,n)},s.ji=function(t,n){eCt(this.c,this.b,t,n)},s.$c=function(t){return gGe(this.c,this.b,t)},s.Mc=function(t){return $Ft(this.c,this.b,t)},s._c=function(t,n){return KYe(this.c,this.b,t,n)},s.Wb=function(t){$7(this.c,this.b),h5(this,c(t,15))},s.gc=function(){return bAt(this.c,this.b)},s.Pc=function(){return gPt(this.c,this.b)},s.Qc=function(t){return mMt(this.c,this.b,t)},s.Ib=function(){var t,n;for(n=new nd,n.a+="[",t=$7e(this.c,this.b);gK(t);)co(n,g5(E7(t))),gK(t)&&(n.a+=zr);return n.a+="]",n.a},s.Xj=function(){$7(this.c,this.b)},S(ai,"FeatureMapUtil/FeatureEList",501),y(627,36,xT,p$),s.yi=function(t){return Z5(this,t)},s.Di=function(t){var n,i,r,o,u,a,l;switch(this.d){case 1:case 2:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.g=t.zi(),t.xi()==1&&(this.d=1),!0;break}case 3:{switch(o=t.xi(),o){case 3:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.d=5,n=new d0(2),on(n,this.g),on(n,t.zi()),this.g=n,!0;break}}break}case 5:{switch(o=t.xi(),o){case 3:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return i=c(this.g,14),i.Fc(t.zi()),!0;break}}break}case 4:{switch(o=t.xi(),o){case 3:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.d=1,this.g=t.zi(),!0;break}case 4:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.d=6,l=new d0(2),on(l,this.n),on(l,t.Bi()),this.n=l,a=U(G(Qt,1),_n,25,15,[this.o,t.Ci()]),this.g=a,!0;break}}break}case 6:{switch(o=t.xi(),o){case 4:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return i=c(this.n,14),i.Fc(t.Bi()),a=c(this.g,48),r=oe(Qt,_n,25,a.length+1,15,1),bc(a,0,r,0,a.length),r[a.length]=t.Ci(),this.g=r,!0;break}}break}}return!1},S(ai,"FeatureMapUtil/FeatureENotificationImpl",627),y(552,501,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},d8),s.dl=function(t,n){return eue(this.c,t,n)},s.el=function(t,n,i){return Wse(this.c,t,n,i)},s.fl=function(t,n,i){return wue(this.c,t,n,i)},s.gl=function(){return this},s.hl=function(t,n){return cT(this.c,t,n)},s.il=function(t){return c(iD(this.c,this.b,t,!1),72).ak()},s.jl=function(t){return c(iD(this.c,this.b,t,!1),72).dd()},s.kl=function(){return this.a},s.ll=function(t){return!jI(this.c,t)},s.ml=function(t,n){rD(this.c,t,n)},s.nl=function(t){return EKe(this.c,t)},s.ol=function(t){Gze(this.c,t)},S(ai,"FeatureMapUtil/FeatureFeatureMap",552),y(1259,1,qV,g7e),s.Wj=function(t){return iD(this.b,this.a,-1,t)},s.fj=function(){return!jI(this.b,this.a)},s.Wb=function(t){rD(this.b,this.a,t)},s.Xj=function(){$7(this.b,this.a)},S(ai,"FeatureMapUtil/FeatureValue",1259);var u3,mY,vY,a3,qft,Xj=pi(pk,"AnyType");y(666,60,$h,UN),S(pk,"InvalidDatatypeValueException",666);var zx=pi(pk,btt),Jj=pi(pk,ptt),Sme=pi(pk,wtt),Hft,cc,Pme,Ib,zft,Vft,Gft,Uft,Wft,Yft,Xft,Jft,Qft,Zft,eht,Wv,tht,Yv,uM,nht,ap,Qj,Zj,iht,aM,lM;y(830,506,{105:1,92:1,90:1,56:1,49:1,97:1,843:1},WQ),s._g=function(t,n,i){switch(t){case 0:return i?(!this.c&&(this.c=new Ci(this,0)),this.c):(!this.c&&(this.c=new Ci(this,0)),this.c.b);case 1:return i?(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)):(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).kl();case 2:return i?(!this.b&&(this.b=new Ci(this,2)),this.b):(!this.b&&(this.b=new Ci(this,2)),this.b.b)}return Nu(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.jh=function(t,n,i){var r;switch(n){case 0:return!this.c&&(this.c=new Ci(this,0)),nT(this.c,t,i);case 1:return(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),69)).mk(t,i);case 2:return!this.b&&(this.b=new Ci(this,2)),nT(this.b,t,i)}return r=c(at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),n),66),r.Nj().Rj(this,Kie(this),n-Ft(this.zh()),t,i)},s.lh=function(t){switch(t){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).dc();case 2:return!!this.b&&this.b.i!=0}return xu(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),xC(this.c,n);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).Wb(n);return;case 2:!this.b&&(this.b=new Ci(this,2)),xC(this.b,n);return}qu(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),Pme},s.Bh=function(t){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),Xt(this.c);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).$b();return;case 2:!this.b&&(this.b=new Ci(this,2)),Xt(this.b);return}$u(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t))},s.Ib=function(){var t;return(this.j&4)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (mixed: ",u5(t,this.c),t.a+=", anyAttribute: ",u5(t,this.b),t.a+=")",t.a)},S(Fi,"AnyTypeImpl",830),y(667,506,{105:1,92:1,90:1,56:1,49:1,97:1,2021:1,667:1},LPe),s._g=function(t,n,i){switch(t){case 0:return this.a;case 1:return this.b}return Nu(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.lh=function(t){switch(t){case 0:return this.a!=null;case 1:return this.b!=null}return xu(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:svt(this,ln(n));return;case 1:uvt(this,ln(n));return}qu(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),Wv},s.Bh=function(t){switch(t){case 0:this.a=null;return;case 1:this.b=null;return}$u(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t))},s.Ib=function(){var t;return(this.j&4)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (data: ",co(t,this.a),t.a+=", target: ",co(t,this.b),t.a+=")",t.a)},s.a=null,s.b=null,S(Fi,"ProcessingInstructionImpl",667),y(668,830,{105:1,92:1,90:1,56:1,49:1,97:1,843:1,2022:1,668:1},t9e),s._g=function(t,n,i){switch(t){case 0:return i?(!this.c&&(this.c=new Ci(this,0)),this.c):(!this.c&&(this.c=new Ci(this,0)),this.c.b);case 1:return i?(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)):(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).kl();case 2:return i?(!this.b&&(this.b=new Ci(this,2)),this.b):(!this.b&&(this.b=new Ci(this,2)),this.b.b);case 3:return!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0));case 4:return bte(this.a,(!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0))));case 5:return this.a}return Nu(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.lh=function(t){switch(t){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).dc();case 2:return!!this.b&&this.b.i!=0;case 3:return!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0))!=null;case 4:return bte(this.a,(!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0))))!=null;case 5:return!!this.a}return xu(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),xC(this.c,n);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).Wb(n);return;case 2:!this.b&&(this.b=new Ci(this,2)),xC(this.b,n);return;case 3:eie(this,ln(n));return;case 4:eie(this,pte(this.a,n));return;case 5:avt(this,c(n,148));return}qu(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),Yv},s.Bh=function(t){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),Xt(this.c);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).$b();return;case 2:!this.b&&(this.b=new Ci(this,2)),Xt(this.b);return;case 3:!this.c&&(this.c=new Ci(this,0)),rD(this.c,(Jn(),uM),null);return;case 4:eie(this,pte(this.a,null));return;case 5:this.a=null;return}$u(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t))},S(Fi,"SimpleAnyTypeImpl",668),y(669,506,{105:1,92:1,90:1,56:1,49:1,97:1,2023:1,669:1},e9e),s._g=function(t,n,i){switch(t){case 0:return i?(!this.a&&(this.a=new Ci(this,0)),this.a):(!this.a&&(this.a=new Ci(this,0)),this.a.b);case 1:return i?(!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),this.b):(!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),XC(this.b));case 2:return i?(!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),this.c):(!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),XC(this.c));case 3:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),Qj));case 4:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),Zj));case 5:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),aM));case 6:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),lM))}return Nu(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.jh=function(t,n,i){var r;switch(n){case 0:return!this.a&&(this.a=new Ci(this,0)),nT(this.a,t,i);case 1:return!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),r8(this.b,t,i);case 2:return!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),r8(this.c,t,i);case 5:return!this.a&&(this.a=new Ci(this,0)),oke(vc(this.a,(Jn(),aM)),t,i)}return r=c(at((this.j&2)==0?(Jn(),ap):(!this.k&&(this.k=new il),this.k).ck(),n),66),r.Nj().Rj(this,Kie(this),n-Ft((Jn(),ap)),t,i)},s.lh=function(t){switch(t){case 0:return!!this.a&&this.a.i!=0;case 1:return!!this.b&&this.b.f!=0;case 2:return!!this.c&&this.c.f!=0;case 3:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),Qj)));case 4:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),Zj)));case 5:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),aM)));case 6:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),lM)))}return xu(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:!this.a&&(this.a=new Ci(this,0)),xC(this.a,n);return;case 1:!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),GO(this.b,n);return;case 2:!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),GO(this.c,n);return;case 3:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Qj))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,Qj),c(n,14));return;case 4:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Zj))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,Zj),c(n,14));return;case 5:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),aM))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,aM),c(n,14));return;case 6:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),lM))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,lM),c(n,14));return}qu(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),ap},s.Bh=function(t){switch(t){case 0:!this.a&&(this.a=new Ci(this,0)),Xt(this.a);return;case 1:!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),this.b.c.$b();return;case 2:!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),this.c.c.$b();return;case 3:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Qj)));return;case 4:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Zj)));return;case 5:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),aM)));return;case 6:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),lM)));return}$u(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t))},s.Ib=function(){var t;return(this.j&4)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (mixed: ",u5(t,this.a),t.a+=")",t.a)},S(Fi,"XMLTypeDocumentRootImpl",669),y(1919,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1,2024:1},xPe),s.Ih=function(t,n){switch(t.yj()){case 7:case 8:case 9:case 10:case 16:case 22:case 23:case 24:case 25:case 26:case 32:case 33:case 34:case 36:case 37:case 44:case 45:case 50:case 51:case 53:case 55:case 56:case 57:case 58:case 60:case 61:case 4:return n==null?null:Ro(n);case 19:case 28:case 29:case 35:case 38:case 39:case 41:case 46:case 52:case 54:case 5:return ln(n);case 6:return k3t(c(n,190));case 12:case 47:case 49:case 11:return TXe(this,t,n);case 13:return n==null?null:y$t(c(n,240));case 15:case 14:return n==null?null:ASt(ge(Te(n)));case 17:return OVe((Jn(),n));case 18:return OVe(n);case 21:case 20:return n==null?null:OSt(c(n,155).a);case 27:return R3t(c(n,190));case 30:return Uze((Jn(),c(n,15)));case 31:return Uze(c(n,15));case 40:return L3t((Jn(),n));case 42:return DVe((Jn(),n));case 43:return DVe(n);case 59:case 48:return x3t((Jn(),n));default:throw V(new St(UE+t.ne()+K0))}},s.Jh=function(t){var n,i,r,o,u;switch(t.G==-1&&(t.G=(i=bu(t),i?wd(i.Mh(),t):-1)),t.G){case 0:return n=new WQ,n;case 1:return r=new LPe,r;case 2:return o=new t9e,o;case 3:return u=new e9e,u;default:throw V(new St(CV+t.zb+K0))}},s.Kh=function(t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie;switch(t.yj()){case 5:case 52:case 4:return n;case 6:return X9t(n);case 8:case 7:return n==null?null:N7t(n);case 9:return n==null?null:sI(vu((r=Ec(n,!0),r.length>0&&(fn(0,r.length),r.charCodeAt(0)==43)?r.substr(1):r),-128,127)<<24>>24);case 10:return n==null?null:sI(vu((o=Ec(n,!0),o.length>0&&(fn(0,o.length),o.charCodeAt(0)==43)?o.substr(1):o),-128,127)<<24>>24);case 11:return ln(R0(this,(Jn(),Gft),n));case 12:return ln(R0(this,(Jn(),Uft),n));case 13:return n==null?null:new bZ(Ec(n,!0));case 15:case 14:return rLt(n);case 16:return ln(R0(this,(Jn(),Wft),n));case 17:return ZHe((Jn(),n));case 18:return ZHe(n);case 28:case 29:case 35:case 38:case 39:case 41:case 54:case 19:return Ec(n,!0);case 21:case 20:return dLt(n);case 22:return ln(R0(this,(Jn(),Yft),n));case 23:return ln(R0(this,(Jn(),Xft),n));case 24:return ln(R0(this,(Jn(),Jft),n));case 25:return ln(R0(this,(Jn(),Qft),n));case 26:return ln(R0(this,(Jn(),Zft),n));case 27:return V9t(n);case 30:return eze((Jn(),n));case 31:return eze(n);case 32:return n==null?null:Ce(vu((v=Ec(n,!0),v.length>0&&(fn(0,v.length),v.charCodeAt(0)==43)?v.substr(1):v),Ar,Fn));case 33:return n==null?null:new l1((A=Ec(n,!0),A.length>0&&(fn(0,A.length),A.charCodeAt(0)==43)?A.substr(1):A));case 34:return n==null?null:Ce(vu((D=Ec(n,!0),D.length>0&&(fn(0,D.length),D.charCodeAt(0)==43)?D.substr(1):D),Ar,Fn));case 36:return n==null?null:Yg(aD((L=Ec(n,!0),L.length>0&&(fn(0,L.length),L.charCodeAt(0)==43)?L.substr(1):L)));case 37:return n==null?null:Yg(aD((N=Ec(n,!0),N.length>0&&(fn(0,N.length),N.charCodeAt(0)==43)?N.substr(1):N)));case 40:return s9t((Jn(),n));case 42:return tze((Jn(),n));case 43:return tze(n);case 44:return n==null?null:new l1((z=Ec(n,!0),z.length>0&&(fn(0,z.length),z.charCodeAt(0)==43)?z.substr(1):z));case 45:return n==null?null:new l1((Y=Ec(n,!0),Y.length>0&&(fn(0,Y.length),Y.charCodeAt(0)==43)?Y.substr(1):Y));case 46:return Ec(n,!1);case 47:return ln(R0(this,(Jn(),eht),n));case 59:case 48:return c9t((Jn(),n));case 49:return ln(R0(this,(Jn(),tht),n));case 50:return n==null?null:oE(vu((ie=Ec(n,!0),ie.length>0&&(fn(0,ie.length),ie.charCodeAt(0)==43)?ie.substr(1):ie),hk,32767)<<16>>16);case 51:return n==null?null:oE(vu((u=Ec(n,!0),u.length>0&&(fn(0,u.length),u.charCodeAt(0)==43)?u.substr(1):u),hk,32767)<<16>>16);case 53:return ln(R0(this,(Jn(),nht),n));case 55:return n==null?null:oE(vu((a=Ec(n,!0),a.length>0&&(fn(0,a.length),a.charCodeAt(0)==43)?a.substr(1):a),hk,32767)<<16>>16);case 56:return n==null?null:oE(vu((l=Ec(n,!0),l.length>0&&(fn(0,l.length),l.charCodeAt(0)==43)?l.substr(1):l),hk,32767)<<16>>16);case 57:return n==null?null:Yg(aD((d=Ec(n,!0),d.length>0&&(fn(0,d.length),d.charCodeAt(0)==43)?d.substr(1):d)));case 58:return n==null?null:Yg(aD((p=Ec(n,!0),p.length>0&&(fn(0,p.length),p.charCodeAt(0)==43)?p.substr(1):p)));case 60:return n==null?null:Ce(vu((i=Ec(n,!0),i.length>0&&(fn(0,i.length),i.charCodeAt(0)==43)?i.substr(1):i),Ar,Fn));case 61:return n==null?null:Ce(vu(Ec(n,!0),Ar,Fn));default:throw V(new St(UE+t.ne()+K0))}};var rht,Mme,oht,Cme;S(Fi,"XMLTypeFactoryImpl",1919),y(586,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1,1945:1,586:1},$xe),s.N=!1,s.O=!1;var cht=!1;S(Fi,"XMLTypePackageImpl",586),y(1852,1,{837:1},NPe),s._j=function(){return uue(),bht},S(Fi,"XMLTypePackageImpl/1",1852),y(1861,1,Tn,FPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/10",1861),y(1862,1,Tn,BPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/11",1862),y(1863,1,Tn,$Pe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/12",1863),y(1864,1,Tn,KPe),s.wj=function(t){return kp(t)},s.xj=function(t){return oe(mr,we,333,t,7,1)},S(Fi,"XMLTypePackageImpl/13",1864),y(1865,1,Tn,qPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/14",1865),y(1866,1,Tn,HPe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/15",1866),y(1867,1,Tn,zPe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/16",1867),y(1868,1,Tn,VPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/17",1868),y(1869,1,Tn,GPe),s.wj=function(t){return Q(t,155)},s.xj=function(t){return oe(e4,we,155,t,0,1)},S(Fi,"XMLTypePackageImpl/18",1869),y(1870,1,Tn,UPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/19",1870),y(1853,1,Tn,WPe),s.wj=function(t){return Q(t,843)},s.xj=function(t){return oe(Xj,xe,843,t,0,1)},S(Fi,"XMLTypePackageImpl/2",1853),y(1871,1,Tn,YPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/20",1871),y(1872,1,Tn,XPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/21",1872),y(1873,1,Tn,JPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/22",1873),y(1874,1,Tn,QPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/23",1874),y(1875,1,Tn,ZPe),s.wj=function(t){return Q(t,190)},s.xj=function(t){return oe(Ps,we,190,t,0,2)},S(Fi,"XMLTypePackageImpl/24",1875),y(1876,1,Tn,eMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/25",1876),y(1877,1,Tn,tMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/26",1877),y(1878,1,Tn,nMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/27",1878),y(1879,1,Tn,iMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/28",1879),y(1880,1,Tn,rMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/29",1880),y(1854,1,Tn,oMe),s.wj=function(t){return Q(t,667)},s.xj=function(t){return oe(zx,xe,2021,t,0,1)},S(Fi,"XMLTypePackageImpl/3",1854),y(1881,1,Tn,cMe),s.wj=function(t){return Q(t,19)},s.xj=function(t){return oe($r,we,19,t,0,1)},S(Fi,"XMLTypePackageImpl/30",1881),y(1882,1,Tn,sMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/31",1882),y(1883,1,Tn,uMe),s.wj=function(t){return Q(t,162)},s.xj=function(t){return oe(H0,we,162,t,0,1)},S(Fi,"XMLTypePackageImpl/32",1883),y(1884,1,Tn,aMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/33",1884),y(1885,1,Tn,lMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/34",1885),y(1886,1,Tn,fMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/35",1886),y(1887,1,Tn,hMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/36",1887),y(1888,1,Tn,dMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/37",1888),y(1889,1,Tn,gMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/38",1889),y(1890,1,Tn,bMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/39",1890),y(1855,1,Tn,pMe),s.wj=function(t){return Q(t,668)},s.xj=function(t){return oe(Jj,xe,2022,t,0,1)},S(Fi,"XMLTypePackageImpl/4",1855),y(1891,1,Tn,wMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/40",1891),y(1892,1,Tn,mMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/41",1892),y(1893,1,Tn,vMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/42",1893),y(1894,1,Tn,yMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/43",1894),y(1895,1,Tn,_Me),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/44",1895),y(1896,1,Tn,EMe),s.wj=function(t){return Q(t,184)},s.xj=function(t){return oe(z0,we,184,t,0,1)},S(Fi,"XMLTypePackageImpl/45",1896),y(1897,1,Tn,SMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/46",1897),y(1898,1,Tn,PMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/47",1898),y(1899,1,Tn,MMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/48",1899),y(O1,1,Tn,CMe),s.wj=function(t){return Q(t,184)},s.xj=function(t){return oe(z0,we,184,t,0,1)},S(Fi,"XMLTypePackageImpl/49",O1),y(1856,1,Tn,IMe),s.wj=function(t){return Q(t,669)},s.xj=function(t){return oe(Sme,xe,2023,t,0,1)},S(Fi,"XMLTypePackageImpl/5",1856),y(1901,1,Tn,TMe),s.wj=function(t){return Q(t,162)},s.xj=function(t){return oe(H0,we,162,t,0,1)},S(Fi,"XMLTypePackageImpl/50",1901),y(1902,1,Tn,jMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/51",1902),y(1903,1,Tn,AMe),s.wj=function(t){return Q(t,19)},s.xj=function(t){return oe($r,we,19,t,0,1)},S(Fi,"XMLTypePackageImpl/52",1903),y(1857,1,Tn,OMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/6",1857),y(1858,1,Tn,DMe),s.wj=function(t){return Q(t,190)},s.xj=function(t){return oe(Ps,we,190,t,0,2)},S(Fi,"XMLTypePackageImpl/7",1858),y(1859,1,Tn,kMe),s.wj=function(t){return Dp(t)},s.xj=function(t){return oe(Qi,we,476,t,8,1)},S(Fi,"XMLTypePackageImpl/8",1859),y(1860,1,Tn,RMe),s.wj=function(t){return Q(t,217)},s.xj=function(t){return oe(B2,we,217,t,0,1)},S(Fi,"XMLTypePackageImpl/9",1860);var Zl,Fd,fM,Vx,X;y(50,60,$h,an),S(Cd,"RegEx/ParseException",50),y(820,1,{},zJ),s.sl=function(t){return ti*16)throw V(new an(gn((un(),Tet))));i=i*16+o}while(!0);if(this.a!=125)throw V(new an(gn((un(),jet))));if(i>JE)throw V(new an(gn((un(),Aet))));t=i}else{if(o=0,this.c!=0||(o=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(i=o,xn(this),this.c!=0||(o=Jg(this.a))<0)throw V(new an(gn((un(),Md))));i=i*16+o,t=i}break;case 117:if(r=0,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));n=n*16+r,t=n;break;case 118:if(xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,n>JE)throw V(new an(gn((un(),"parser.descappe.4"))));t=n;break;case 65:case 90:case 122:throw V(new an(gn((un(),Oet))))}return t},s.ul=function(t){var n,i;switch(t){case 100:i=(this.e&32)==32?j1("Nd",!0):(Ln(),Gx);break;case 68:i=(this.e&32)==32?j1("Nd",!1):(Ln(),Dme);break;case 119:i=(this.e&32)==32?j1("IsWord",!0):(Ln(),F4);break;case 87:i=(this.e&32)==32?j1("IsWord",!1):(Ln(),Rme);break;case 115:i=(this.e&32)==32?j1("IsSpace",!0):(Ln(),l3);break;case 83:i=(this.e&32)==32?j1("IsSpace",!1):(Ln(),kme);break;default:throw V(new No((n=t,Ott+n.toString(16))))}return i},s.vl=function(t){var n,i,r,o,u,a,l,d,p,v,A,D;for(this.b=1,xn(this),n=null,this.c==0&&this.a==94?(xn(this),t?v=(Ln(),Ln(),new du(5)):(n=(Ln(),Ln(),new du(4)),_c(n,0,JE),v=new du(4))):v=(Ln(),Ln(),new du(4)),o=!0;(D=this.c)!=1&&!(D==0&&this.a==93&&!o);){if(o=!1,i=this.a,r=!1,D==10)switch(i){case 100:case 68:case 119:case 87:case 115:case 83:pw(v,this.ul(i)),r=!0;break;case 105:case 73:case 99:case 67:i=this.Ll(v,i),i<0&&(r=!0);break;case 112:case 80:if(A=lse(this,i),!A)throw V(new an(gn((un(),BV))));pw(v,A),r=!0;break;default:i=this.tl()}else if(D==20){if(a=g_(this.i,58,this.d),a<0)throw V(new an(gn((un(),Rfe))));if(l=!0,Pr(this.i,this.d)==94&&(++this.d,l=!1),u=fu(this.i,this.d,a),d=KBe(u,l,(this.e&512)==512),!d)throw V(new an(gn((un(),Eet))));if(pw(v,d),r=!0,a+1>=this.j||Pr(this.i,a+1)!=93)throw V(new an(gn((un(),Rfe))));this.d=a+2}if(xn(this),!r)if(this.c!=0||this.a!=45)_c(v,i,i);else{if(xn(this),(D=this.c)==1)throw V(new an(gn((un(),ok))));D==0&&this.a==93?(_c(v,i,i),_c(v,45,45)):(p=this.a,D==10&&(p=this.tl()),xn(this),_c(v,i,p))}(this.e&Ka)==Ka&&this.c==0&&this.a==44&&xn(this)}if(this.c==1)throw V(new an(gn((un(),ok))));return n&&(I6(n,v),v=n),tv(v),M6(v),this.b=0,xn(this),v},s.wl=function(){var t,n,i,r;for(i=this.vl(!1);(r=this.c)!=7;)if(t=this.a,r==0&&(t==45||t==38)||r==4){if(xn(this),this.c!=9)throw V(new an(gn((un(),Met))));if(n=this.vl(!1),r==4)pw(i,n);else if(t==45)I6(i,n);else if(t==38)EXe(i,n);else throw V(new No("ASSERT"))}else throw V(new an(gn((un(),Cet))));return xn(this),i},s.xl=function(){var t,n;return t=this.a-48,n=(Ln(),Ln(),new ZB(12,null,t)),!this.g&&(this.g=new WA),UA(this.g,new TQ(t)),xn(this),n},s.yl=function(){return xn(this),Ln(),aht},s.zl=function(){return xn(this),Ln(),uht},s.Al=function(){throw V(new an(gn((un(),zu))))},s.Bl=function(){throw V(new an(gn((un(),zu))))},s.Cl=function(){return xn(this),ujt()},s.Dl=function(){return xn(this),Ln(),fht},s.El=function(){return xn(this),Ln(),dht},s.Fl=function(){var t;if(this.d>=this.j||((t=Pr(this.i,this.d++))&65504)!=64)throw V(new an(gn((un(),vet))));return xn(this),Ln(),Ln(),new $f(0,t-64)},s.Gl=function(){return xn(this),VBt()},s.Hl=function(){return xn(this),Ln(),ght},s.Il=function(){var t;return t=(Ln(),Ln(),new $f(0,105)),xn(this),t},s.Jl=function(){return xn(this),Ln(),hht},s.Kl=function(){return xn(this),Ln(),lht},s.Ll=function(t,n){return this.tl()},s.Ml=function(){return xn(this),Ln(),Ame},s.Nl=function(){var t,n,i,r,o;if(this.d+1>=this.j)throw V(new an(gn((un(),pet))));if(r=-1,n=null,t=Pr(this.i,this.d),49<=t&&t<=57){if(r=t-48,!this.g&&(this.g=new WA),UA(this.g,new TQ(r)),++this.d,Pr(this.i,this.d)!=41)throw V(new an(gn((un(),ab))));++this.d}else switch(t==63&&--this.d,xn(this),n=kue(this),n.e){case 20:case 21:case 22:case 23:break;case 8:if(this.c!=7)throw V(new an(gn((un(),ab))));break;default:throw V(new an(gn((un(),wet))))}if(xn(this),o=P0(this),i=null,o.e==2){if(o.em()!=2)throw V(new an(gn((un(),met))));i=o.am(1),o=o.am(0)}if(this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),Ln(),Ln(),new v$e(r,n,o,i)},s.Ol=function(){return xn(this),Ln(),Ome},s.Pl=function(){var t;if(xn(this),t=j8(24,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Ql=function(){var t;if(xn(this),t=j8(20,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Rl=function(){var t;if(xn(this),t=j8(22,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Sl=function(){var t,n,i,r,o;for(t=0,i=0,n=-1;this.d=this.j)throw V(new an(gn((un(),Dfe))));if(n==45){for(++this.d;this.d=this.j)throw V(new an(gn((un(),Dfe))))}if(n==58){if(++this.d,xn(this),r=Pxe(P0(this),t,i),this.c!=7)throw V(new an(gn((un(),ab))));xn(this)}else if(n==41)++this.d,xn(this),r=Pxe(P0(this),t,i);else throw V(new an(gn((un(),bet))));return r},s.Tl=function(){var t;if(xn(this),t=j8(21,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Ul=function(){var t;if(xn(this),t=j8(23,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Vl=function(){var t,n;if(xn(this),t=this.f++,n=CB(P0(this),t),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),n},s.Wl=function(){var t;if(xn(this),t=CB(P0(this),0),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Xl=function(t){return xn(this),this.c==5?(xn(this),v8(t,(Ln(),Ln(),new Gp(9,t)))):v8(t,(Ln(),Ln(),new Gp(3,t)))},s.Yl=function(t){var n;return xn(this),n=(Ln(),Ln(),new f5(2)),this.c==5?(xn(this),eb(n,dM),eb(n,t)):(eb(n,t),eb(n,dM)),n},s.Zl=function(t){return xn(this),this.c==5?(xn(this),Ln(),Ln(),new Gp(9,t)):(Ln(),Ln(),new Gp(3,t))},s.a=0,s.b=0,s.c=0,s.d=0,s.e=0,s.f=1,s.g=null,s.j=0,S(Cd,"RegEx/RegexParser",820),y(1824,820,{},n9e),s.sl=function(t){return!1},s.tl=function(){return zse(this)},s.ul=function(t){return CE(t)},s.vl=function(t){return gJe(this)},s.wl=function(){throw V(new an(gn((un(),zu))))},s.xl=function(){throw V(new an(gn((un(),zu))))},s.yl=function(){throw V(new an(gn((un(),zu))))},s.zl=function(){throw V(new an(gn((un(),zu))))},s.Al=function(){return xn(this),CE(67)},s.Bl=function(){return xn(this),CE(73)},s.Cl=function(){throw V(new an(gn((un(),zu))))},s.Dl=function(){throw V(new an(gn((un(),zu))))},s.El=function(){throw V(new an(gn((un(),zu))))},s.Fl=function(){return xn(this),CE(99)},s.Gl=function(){throw V(new an(gn((un(),zu))))},s.Hl=function(){throw V(new an(gn((un(),zu))))},s.Il=function(){return xn(this),CE(105)},s.Jl=function(){throw V(new an(gn((un(),zu))))},s.Kl=function(){throw V(new an(gn((un(),zu))))},s.Ll=function(t,n){return pw(t,CE(n)),-1},s.Ml=function(){return xn(this),Ln(),Ln(),new $f(0,94)},s.Nl=function(){throw V(new an(gn((un(),zu))))},s.Ol=function(){return xn(this),Ln(),Ln(),new $f(0,36)},s.Pl=function(){throw V(new an(gn((un(),zu))))},s.Ql=function(){throw V(new an(gn((un(),zu))))},s.Rl=function(){throw V(new an(gn((un(),zu))))},s.Sl=function(){throw V(new an(gn((un(),zu))))},s.Tl=function(){throw V(new an(gn((un(),zu))))},s.Ul=function(){throw V(new an(gn((un(),zu))))},s.Vl=function(){var t;if(xn(this),t=CB(P0(this),0),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Wl=function(){throw V(new an(gn((un(),zu))))},s.Xl=function(t){return xn(this),v8(t,(Ln(),Ln(),new Gp(3,t)))},s.Yl=function(t){var n;return xn(this),n=(Ln(),Ln(),new f5(2)),eb(n,t),eb(n,dM),n},s.Zl=function(t){return xn(this),Ln(),Ln(),new Gp(3,t)};var Xv=null,L4=null;S(Cd,"RegEx/ParserForXMLSchema",1824),y(117,1,QE,Lb),s.$l=function(t){throw V(new No("Not supported."))},s._l=function(){return-1},s.am=function(t){return null},s.bm=function(){return null},s.cm=function(t){},s.dm=function(t){},s.em=function(){return 0},s.Ib=function(){return this.fm(0)},s.fm=function(t){return this.e==11?".":""},s.e=0;var Ime,N4,hM,sht,Tme,tm=null,Gx,yY=null,jme,dM,_Y=null,Ame,Ome,Dme,kme,Rme,uht,l3,aht,lht,fht,hht,F4,dht,ght,Bzt=S(Cd,"RegEx/Token",117);y(136,117,{3:1,136:1,117:1},du),s.fm=function(t){var n,i,r;if(this.e==4)if(this==jme)i=".";else if(this==Gx)i="\\d";else if(this==F4)i="\\w";else if(this==l3)i="\\s";else{for(r=new nd,r.a+="[",n=0;n0&&(r.a+=","),this.b[n]===this.b[n+1]?co(r,oT(this.b[n])):(co(r,oT(this.b[n])),r.a+="-",co(r,oT(this.b[n+1])));r.a+="]",i=r.a}else if(this==Dme)i="\\D";else if(this==Rme)i="\\W";else if(this==kme)i="\\S";else{for(r=new nd,r.a+="[^",n=0;n0&&(r.a+=","),this.b[n]===this.b[n+1]?co(r,oT(this.b[n])):(co(r,oT(this.b[n])),r.a+="-",co(r,oT(this.b[n+1])));r.a+="]",i=r.a}return i},s.a=!1,s.c=!1,S(Cd,"RegEx/RangeToken",136),y(584,1,{584:1},TQ),s.a=0,S(Cd,"RegEx/RegexParser/ReferencePosition",584),y(583,1,{3:1,583:1},d8e),s.Fb=function(t){var n;return t==null||!Q(t,583)?!1:(n=c(t,583),rt(this.b,n.b)&&this.a==n.a)},s.Hb=function(){return md(this.b+"/"+Fse(this.a))},s.Ib=function(){return this.c.fm(this.a)},s.a=0,S(Cd,"RegEx/RegularExpression",583),y(223,117,QE,$f),s._l=function(){return this.a},s.fm=function(t){var n,i,r;switch(this.e){case 0:switch(this.a){case 124:case 42:case 43:case 63:case 40:case 41:case 46:case 91:case 123:case 92:r="\\"+ZF(this.a&Ni);break;case 12:r="\\f";break;case 10:r="\\n";break;case 13:r="\\r";break;case 9:r="\\t";break;case 27:r="\\e";break;default:this.a>=Vr?(i=(n=this.a>>>0,"0"+n.toString(16)),r="\\v"+fu(i,i.length-6,i.length)):r=""+ZF(this.a&Ni)}break;case 8:this==Ame||this==Ome?r=""+ZF(this.a&Ni):r="\\"+ZF(this.a&Ni);break;default:r=null}return r},s.a=0,S(Cd,"RegEx/Token/CharToken",223),y(309,117,QE,Gp),s.am=function(t){return this.a},s.cm=function(t){this.b=t},s.dm=function(t){this.c=t},s.em=function(){return 1},s.fm=function(t){var n;if(this.e==3)if(this.c<0&&this.b<0)n=this.a.fm(t)+"*";else if(this.c==this.b)n=this.a.fm(t)+"{"+this.c+"}";else if(this.c>=0&&this.b>=0)n=this.a.fm(t)+"{"+this.c+","+this.b+"}";else if(this.c>=0&&this.b<0)n=this.a.fm(t)+"{"+this.c+",}";else throw V(new No("Token#toString(): CLOSURE "+this.c+zr+this.b));else if(this.c<0&&this.b<0)n=this.a.fm(t)+"*?";else if(this.c==this.b)n=this.a.fm(t)+"{"+this.c+"}?";else if(this.c>=0&&this.b>=0)n=this.a.fm(t)+"{"+this.c+","+this.b+"}?";else if(this.c>=0&&this.b<0)n=this.a.fm(t)+"{"+this.c+",}?";else throw V(new No("Token#toString(): NONGREEDYCLOSURE "+this.c+zr+this.b));return n},s.b=0,s.c=0,S(Cd,"RegEx/Token/ClosureToken",309),y(821,117,QE,yne),s.am=function(t){return t==0?this.a:this.b},s.em=function(){return 2},s.fm=function(t){var n;return this.b.e==3&&this.b.am(0)==this.a?n=this.a.fm(t)+"+":this.b.e==9&&this.b.am(0)==this.a?n=this.a.fm(t)+"+?":n=this.a.fm(t)+(""+this.b.fm(t)),n},S(Cd,"RegEx/Token/ConcatToken",821),y(1822,117,QE,v$e),s.am=function(t){if(t==0)return this.d;if(t==1)return this.b;throw V(new No("Internal Error: "+t))},s.em=function(){return this.b?2:1},s.fm=function(t){var n;return this.c>0?n="(?("+this.c+")":this.a.e==8?n="(?("+this.a+")":n="(?"+this.a,this.b?n+=this.d+"|"+this.b+")":n+=this.d+")",n},s.c=0,S(Cd,"RegEx/Token/ConditionToken",1822),y(1823,117,QE,vNe),s.am=function(t){return this.b},s.em=function(){return 1},s.fm=function(t){return"(?"+(this.a==0?"":Fse(this.a))+(this.c==0?"":Fse(this.c))+":"+this.b.fm(t)+")"},s.a=0,s.c=0,S(Cd,"RegEx/Token/ModifierToken",1823),y(822,117,QE,Cne),s.am=function(t){return this.a},s.em=function(){return 1},s.fm=function(t){var n;switch(n=null,this.e){case 6:this.b==0?n="(?:"+this.a.fm(t)+")":n="("+this.a.fm(t)+")";break;case 20:n="(?="+this.a.fm(t)+")";break;case 21:n="(?!"+this.a.fm(t)+")";break;case 22:n="(?<="+this.a.fm(t)+")";break;case 23:n="(?"+this.a.fm(t)+")"}return n},s.b=0,S(Cd,"RegEx/Token/ParenToken",822),y(521,117,{3:1,117:1,521:1},ZB),s.bm=function(){return this.b},s.fm=function(t){return this.e==12?"\\"+this.a:ZRt(this.b)},s.a=0,S(Cd,"RegEx/Token/StringToken",521),y(465,117,QE,f5),s.$l=function(t){eb(this,t)},s.am=function(t){return c(i0(this.a,t),117)},s.em=function(){return this.a?this.a.a.c.length:0},s.fm=function(t){var n,i,r,o,u;if(this.e==1){if(this.a.a.c.length==2)n=c(i0(this.a,0),117),i=c(i0(this.a,1),117),i.e==3&&i.am(0)==n?o=n.fm(t)+"+":i.e==9&&i.am(0)==n?o=n.fm(t)+"+?":o=n.fm(t)+(""+i.fm(t));else{for(u=new nd,r=0;r=this.c.b:this.a<=this.c.b},s.Sb=function(){return this.b>0},s.Tb=function(){return this.b},s.Vb=function(){return this.b-1},s.Qb=function(){throw V(new td(Ftt))},s.a=0,s.b=0,S(Zfe,"ExclusiveRange/RangeIterator",254);var Yu=P_(ck,"C"),Qt=P_(tP,"I"),Gs=P_(M2,"Z"),rg=P_(nP,"J"),Ps=P_(Q6,"B"),gr=P_(Z6,"D"),nm=P_(eP,"F"),Jv=P_(iP,"S"),$zt=pi("org.eclipse.elk.core.labels","ILabelManager"),xme=pi(Br,"DiagnosticChain"),Lme=pi(htt,"ResourceSet"),Nme=S(Br,"InvocationTargetException",null),pht=(ZA(),OMt),wht=wht=y7t;CIt(vvt),QIt("permProps",[[[vk,yk],[_k,"gecko1_8"]],[[vk,yk],[_k,"ie10"]],[[vk,yk],[_k,"ie8"]],[[vk,yk],[_k,"ie9"]],[[vk,yk],[_k,"safari"]]]),wht(null,"elk",null)}).call(this)}).call(this,typeof fS<"u"?fS:typeof self<"u"?self:typeof window<"u"?window:{})},{}],3:[function(b,w,m){function P(M,_){if(!(M instanceof _))throw new TypeError("Cannot call a class as a function")}function g(M,_){if(!M)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return _&&(typeof _=="object"||typeof _=="function")?_:M}function E(M,_){if(typeof _!="function"&&_!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof _);M.prototype=Object.create(_&&_.prototype,{constructor:{value:M,enumerable:!1,writable:!0,configurable:!0}}),_&&(Object.setPrototypeOf?Object.setPrototypeOf(M,_):M.__proto__=_)}var C=b("./elk-api.js").default,T=(function(M){E(_,M);function _(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};P(this,_);var O=Object.assign({},I),j=!1;try{b.resolve("web-worker"),j=!0}catch{}if(I.workerUrl)if(j){var k=b("web-worker");O.workerFactory=function(H){return new k(H)}}else console.warn(`Web worker requested but 'web-worker' package not installed. +Consider installing the package or pass your own 'workerFactory' to ELK's constructor. +... Falling back to non-web worker version.`);if(!O.workerFactory){var x=b("./elk-worker.min.js"),R=x.Worker;O.workerFactory=function(H){return new R(H)}}return g(this,(_.__proto__||Object.getPrototypeOf(_)).call(this,O))}return _})(C);Object.defineProperty(w.exports,"__esModule",{value:!0}),w.exports=T,T.default=T},{"./elk-api.js":1,"./elk-worker.min.js":2,"web-worker":4}],4:[function(b,w,m){w.exports=Worker},{}]},{},[3])(3)})})(_ve)),_ve.exports}var JUt=XUt();const QUt=qzt(JUt);var TM={},Eve={},P3={},T0t;function ZUt(){if(T0t)return P3;T0t=1,Object.defineProperty(P3,"__esModule",{value:!0}),P3.DefaultLayoutConfigurator=P3.DefaultElementFilter=P3.ElkLayoutEngine=void 0;const f=LM();class h{constructor(g,E=new w,C=new m,T,M){this.filter=E,this.configurator=C,this.preprocessor=T,this.postprocessor=M,this.elk=g()}layout(g,E){if(this.getBasicType(g)!=="graph")return g;E||(E=new f.SModelIndex,E.add(g));const C=this.transformGraph(g,E);return this.preprocessor&&this.preprocessor.preprocess(C,g,E),this.elk.layout(C).then(T=>(this.postprocessor&&this.postprocessor.postprocess(T,g,E),this.applyLayout(T,E),g))}getBasicType(g){return(0,f.getBasicType)(g)}transformGraph(g,E){const C={id:g.id,layoutOptions:this.configurator.apply(g,E)};return g.children&&(C.children=g.children.filter(T=>this.getBasicType(T)==="node"&&this.filter.apply(T,E)).map(T=>this.transformNode(T,E)),C.edges=g.children.filter(T=>this.getBasicType(T)==="edge"&&this.filter.apply(T,E)).map(T=>this.transformEdge(T,E))),C}transformNode(g,E){var C,T,M;const _={id:g.id,layoutOptions:this.configurator.apply(g,E)};if(g.children){const I={top:0,right:0,bottom:0,left:0};_.children=this.transformCompartment(g,E,I),(I.top!==0||I.right!==0||I.bottom!==0||I.left!==0)&&((C=_.layoutOptions)!==null&&C!==void 0||(_.layoutOptions={}),(T=(M=_.layoutOptions)["org.eclipse.elk.padding"])!==null&&T!==void 0||(M["org.eclipse.elk.padding"]=`[top=${I.top},left=${I.left},bottom=${I.bottom},right=${I.right}]`)),_.edges=g.children.filter(O=>this.getBasicType(O)==="edge"&&this.filter.apply(O,E)).map(O=>this.transformEdge(O,E)),_.labels=g.children.filter(O=>this.getBasicType(O)==="label"&&this.filter.apply(O,E)).map(O=>this.transformLabel(O,E)),_.ports=g.children.filter(O=>this.getBasicType(O)==="port"&&this.filter.apply(O,E)).map(O=>this.transformPort(O,E))}return this.transformShape(_,g),_}transformCompartment(g,E,C){if(!g.children)return;const T=g.children.filter(M=>this.getBasicType(M)==="node"&&this.filter.apply(M,E));if(T.length>0)return T.map(M=>this.transformNode(M,E));for(const M of g.children)if(this.getBasicType(M)==="compartment"&&this.filter.apply(M,E)){const _=M;g.layout&&(_.position&&(C.left+=_.position.x,C.top+=_.position.y),_.size&&g.size&&(C.right+=g.size.width-_.size.width-(_.position?_.position.x:0),C.bottom+=g.size.height-_.size.height-(_.position?_.position.y:0)));const I=this.transformCompartment(_,E,C);if(I)return I}}transformEdge(g,E){const C={id:g.id,sources:[g.sourceId],targets:[g.targetId],layoutOptions:this.configurator.apply(g,E)};g.children&&(C.labels=g.children.filter(M=>this.getBasicType(M)==="label"&&this.filter.apply(M,E)).map(M=>this.transformLabel(M,E)));const T=g.routingPoints;return T&&T.length>=2&&(C.sections=[{id:g.id+":section",startPoint:T[0],bendPoints:T.slice(1,T.length-1),endPoint:T[T.length-1]}]),C}transformLabel(g,E){const C={id:g.id,text:g.text,layoutOptions:this.configurator.apply(g,E)};return this.transformShape(C,g),C}transformPort(g,E){const C={id:g.id,layoutOptions:this.configurator.apply(g,E)};return g.children&&(C.labels=g.children.filter(T=>this.getBasicType(T)==="label"&&this.filter.apply(T,E)).map(T=>this.transformLabel(T,E))),this.transformShape(C,g),C}transformShape(g,E){E.position&&(g.x=E.position.x,g.y=E.position.y),E.size&&(g.width=E.size.width,g.height=E.size.height)}applyLayout(g,E){const C=E.getById(g.id);if(C&&this.getBasicType(C)==="node"&&this.applyShape(C,g,E),g.children)for(const T of g.children)this.applyLayout(T,E);if(g.edges)for(const T of g.edges){const M=E.getById(T.id);M&&this.getBasicType(M)==="edge"&&this.applyEdge(M,T,E)}if(g.ports)for(const T of g.ports){const M=E.getById(T.id);M&&this.getBasicType(M)==="port"&&this.applyShape(M,T,E)}}applyShape(g,E,C){if(E.x!==void 0&&E.y!==void 0&&(g.position={x:E.x,y:E.y}),E.width!==void 0&&E.height!==void 0&&(g.size={width:E.width,height:E.height}),E.labels)for(const T of E.labels){const M=T.id&&C.getById(T.id);M&&this.applyShape(M,T,C)}}applyEdge(g,E,C){const T=[];if(E.sections&&E.sections.length>0){const M=E.sections[0];M.startPoint&&T.push(M.startPoint),M.bendPoints&&T.push(...M.bendPoints),M.endPoint&&T.push(M.endPoint)}else b(E)&&(E.sourcePoint&&T.push(E.sourcePoint),E.bendPoints&&T.push(...E.bendPoints),E.targetPoint&&T.push(E.targetPoint));g.routingPoints=T,E.labels&&E.labels.forEach(M=>{const _=M.id&&C.getById(M.id);_&&this.applyShape(_,M,C)})}}P3.ElkLayoutEngine=h;function b(P){return typeof P.source=="string"&&typeof P.target=="string"}class w{apply(g,E){switch(this.getBasicType(g)){case"node":return this.filterNode(g,E);case"edge":return this.filterEdge(g,E);case"label":return this.filterLabel(g,E);case"port":return this.filterPort(g,E);case"compartment":return this.filterCompartment(g,E);default:return!0}}getBasicType(g){return(0,f.getBasicType)(g)}filterNode(g,E){return!0}filterEdge(g,E){const C=E.getById(g.sourceId);if(!C)return!1;const T=this.getBasicType(C);if(T==="node"&&!this.filterNode(C,E)||T==="port"&&!this.filterPort(C,E))return!1;const M=E.getById(g.targetId);if(!M)return!1;const _=this.getBasicType(M);return!(_==="node"&&!this.filterNode(M,E)||_==="port"&&!this.filterPort(M,E))}filterLabel(g,E){return!0}filterPort(g,E){return!0}filterCompartment(g,E){return!0}}P3.DefaultElementFilter=w;class m{apply(g,E){switch(this.getBasicType(g)){case"graph":return this.graphOptions(g,E);case"node":return this.nodeOptions(g,E);case"edge":return this.edgeOptions(g,E);case"label":return this.labelOptions(g,E);case"port":return this.portOptions(g,E);default:return}}getBasicType(g){return(0,f.getBasicType)(g)}graphOptions(g,E){}nodeOptions(g,E){}edgeOptions(g,E){}labelOptions(g,E){}portOptions(g,E){}}return P3.DefaultLayoutConfigurator=m,P3}var j0t;function eWt(){return j0t||(j0t=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.elkLayoutModule=f.ILayoutPostprocessor=f.ILayoutPreprocessor=f.DefaultLayoutConfigurator=f.ILayoutConfigurator=f.DefaultElementFilter=f.IElementFilter=f.ElkFactory=f.ElkLayoutEngine=void 0;const h=Zt(),b=ZUt();f.ElkLayoutEngine=(0,h.injectable)()(b.ElkLayoutEngine),f.ElkFactory=Symbol("ElkFactory"),f.IElementFilter=Symbol("IElementFilter"),f.DefaultElementFilter=(0,h.injectable)()(b.DefaultElementFilter),f.ILayoutConfigurator=Symbol("ILayoutConfigurator"),f.DefaultLayoutConfigurator=(0,h.injectable)()(b.DefaultLayoutConfigurator),f.ILayoutPreprocessor=Symbol("ILayoutPreprocessor"),f.ILayoutPostprocessor=Symbol("ILayoutPostprocessor"),f.elkLayoutModule=new h.ContainerModule(w=>{w(f.ElkLayoutEngine).toDynamicValue(m=>{const P=m.container.get(f.ElkFactory),g=m.container.get(f.IElementFilter),E=m.container.get(f.ILayoutConfigurator),C=m.container.isBound(f.ILayoutPreprocessor)?m.container.get(f.ILayoutPreprocessor):void 0,T=m.container.isBound(f.ILayoutPostprocessor)?m.container.get(f.ILayoutPostprocessor):void 0;return new f.ElkLayoutEngine(P,g,E,C,T)}).inSingletonScope(),w(f.IElementFilter).to(f.DefaultElementFilter),w(f.ILayoutConfigurator).to(f.DefaultLayoutConfigurator)})})(Eve)),Eve}var A0t;function tWt(){return A0t||(A0t=1,(function(f){var h=TM&&TM.__createBinding||(Object.create?(function(w,m,P,g){g===void 0&&(g=P);var E=Object.getOwnPropertyDescriptor(m,P);(!E||("get"in E?!m.__esModule:E.writable||E.configurable))&&(E={enumerable:!0,get:function(){return m[P]}}),Object.defineProperty(w,g,E)}):(function(w,m,P,g){g===void 0&&(g=P),w[g]=m[P]})),b=TM&&TM.__exportStar||function(w,m){for(var P in w)P!=="default"&&!Object.prototype.hasOwnProperty.call(m,P)&&h(m,w,P)};Object.defineProperty(f,"__esModule",{value:!0}),b(eWt(),f)})(TM)),TM}var R3=tWt(),Xd=(f=>(f.LINES="Lines",f.WRAPPING="Wrapping Lines",f.CIRCLES="Circles",f))(Xd||{});function PX(f){const h=f.value||f.placeholder,{width:b}=uN(h,window.getComputedStyle(f).font),w=f.classList.contains("label-type-name")?2:8,m=b+w;f.style.width=m+"px"}const O0t=new Map;function uN(f,h="11pt sans-serif"){if(!f||f.length===0)return{width:20,height:20};h==""&&(h="11pt sans-serif");let b=O0t.get(h);if(!b){const E=document.createElement("canvas").getContext("2d");if(!E)throw new Error("Could not create canvas context used to measure text width");E.font=h,b={context:E,cache:new Map},O0t.set(h,b)}const{context:w,cache:m}=b,P=m.get(f);if(P)return P;{const g=w.measureText(f),E={width:Math.ceil(g.width),height:Math.ceil(g.actualBoundingBoxAscent+g.actualBoundingBoxDescent)};return m.set(f,E),E}}var nWt=Object.getOwnPropertyDescriptor,nmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?nWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},DL=(f,h)=>(b,w)=>h(b,w,f);class x3 extends R3.DefaultLayoutConfigurator{static _method=Xd.LINES;set method(h){x3._method=h}get method(){return x3._method}graphOptions(){return{[Xd.LINES]:{"org.eclipse.elk.algorithm":"org.eclipse.elk.layered","org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers":"30.0","org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers":"20.0","org.eclipse.elk.port.borderOffset":"14.0","org.eclipse.elk.omitNodeMicroLayout":"true","org.eclipse.elk.layered.nodePlacement.favorStraightEdges":"false"},[Xd.WRAPPING]:{"org.eclipse.elk.algorithm":"org.eclipse.elk.layered","org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers":"10.0","org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers":"5.0","org.eclipse.elk.edgeRouting":"ORTHOGONAL","org.eclipse.elk.layered.layering.strategy":"COFFMAN_GRAHAM","org.eclipse.elk.layered.compaction.postCompaction.strategy":"LEFT_RIGHT_CONSTRAINT_LOCKING","org.eclipse.elk.layered.wrapping.strategy":"MULTI_EDGE","org.eclipse.elk.layered.wrapping.correctionFactor":"2.0","org.eclipse.elk.omitNodeMicroLayout":"true","org.eclipse.elk.port.borderOffset":"14.0"},[Xd.CIRCLES]:{"org.eclipse.elk.algorithm":"org.eclipse.elk.stress","org.eclipse.elk.force.repulsion":"5.0","org.eclipse.elk.force.iterations":"100","org.eclipse.elk.force.repulsivePower":"1","org.eclipse.elk.omitNodeMicroLayout":"true"}}[this.method]}}const iWt=()=>new QUt({algorithms:["layered","stress"]});let $X=class extends R3.ElkLayoutEngine{constructor(f,h,b,w){super(f,h,b,void 0,w),this.configurator=b,this.postprocessor=w}transformShape(f,h){h.position&&(f.x=h.position.x,f.y=h.position.y),"bounds"in h&&(f.width=h.bounds.width??h.size.width,f.height=h.bounds.height??h.size.height)}transformEdge(f,h){const b=super.transformEdge(f,h);return b.sections=[],b}transformLabel(f,h){const b=super.transformLabel(f,h);if(this.configurator.method===Xd.WRAPPING)return b;const w=uN(f.text??"");return b.height=w.height,b.width=w.width,b}applyShape(f,h,b){if(this.getBasicType(f)==="port"&&f instanceof de.SChildElementImpl&&de.isBoundsAware(f.parent)){const P=f.parent;h.x!==void 0&&h.width!==void 0&&h.y!==void 0&&h.height!==void 0&&(this.configurator.method===Xd.CIRCLES?(h.x<=0&&(h.x-=h.width/2),h.y<=0&&(h.y-=h.height/2),h.x>=P.bounds.width&&(h.x-=h.width/2),h.y>=P.bounds.height&&(h.y-=h.height/2)):(h.x<=0&&(h.x+=h.width/2),h.y<=0&&(h.y+=h.height/2),h.x>=P.bounds.width&&(h.x-=h.width/2),h.y>=P.bounds.height&&(h.y-=h.height/2)))}super.applyShape(f,h,b);const w=b.getParent(f.id),m=w?this.getBasicType(w):"unknown";this.getBasicType(f)==="label"&&m=="edge"&&(f.size={width:-1,height:-1})}applyEdge(f,h,b){this.configurator.method===Xd.CIRCLES&&(h.sections=[]),super.applyEdge(f,h,b)}};$X=nmt([vr(),DL(0,Et(R3.ElkFactory)),DL(1,Et(R3.IElementFilter)),DL(2,Et(x3)),DL(3,Et(R3.ILayoutPostprocessor))],$X);let Lve=class{constructor(f){this.configurator=f}portToNodes=new Map;connectedPorts=new Map;nodeSquares=new Map;postprocess(f){if(this.configurator.method===Xd.CIRCLES&&(this.connectedPorts=new Map,!(!f.edges||!f.children))){for(const h of f.edges)for(const b of h.sources){this.connectedPorts.has(b)||this.connectedPorts.set(b,[]);for(const w of h.targets)this.connectedPorts.has(w)||this.connectedPorts.set(w,[]),this.connectedPorts.get(b)?.push(w),this.connectedPorts.get(w)?.push(b)}this.portToNodes=new Map,this.nodeSquares=new Map;for(const h of f.children)if(h.ports){for(const b of h.ports)this.portToNodes.set(b.id,h.id);this.nodeSquares.set(h.id,this.getNodeSquare(h))}for(const[h,b]of this.connectedPorts){if(b.length===0)continue;const w=b.map(x=>{const R=this.getLine(h,x),H=this.portToNodes.get(h);if(!H)return{x:0,y:0};const F=this.nodeSquares.get(H);return F?this.getIntersection(F,R):{x:0,y:0}}),m={x:w.reduce((x,R)=>x+R.x,0)/w.length,y:w.reduce((x,R)=>x+R.y,0)/w.length},P=this.portToNodes.get(h);if(!P)continue;const g=this.nodeSquares.get(P);if(!g)continue;const E={x:m.x,y:m.y},C={x1:g.x,y1:g.y,x2:g.x+g.width,y2:g.y},T={x1:g.x,y1:g.y+g.height,x2:g.x+g.width,y2:g.y+g.height},M={x1:g.x,y1:g.y,x2:g.x,y2:g.y+g.height},_={x1:g.x+g.width,y1:g.y,x2:g.x+g.width,y2:g.y+g.height},I=[{distance:Math.abs(m.y-g.y),dimension:"y",edge:C},{distance:Math.abs(m.y-(g.y+g.height)),dimension:"y",edge:T},{distance:Math.abs(m.x-g.x),dimension:"x",edge:M},{distance:Math.abs(m.x-(g.x+g.width)),dimension:"x",edge:_}];I.sort((x,R)=>x.distance-R.distance);const O=I[0].edge;I[0].dimension==="y"?(E.x=D0t(m.x,O.x1,O.x2),E.y=O.y1):(E.x=O.x1,E.y=D0t(m.y,O.y1,O.y2));const j=f.children.find(x=>x.id===P);if(!j)continue;const k=j.ports?.find(x=>x.id===h);k&&(k.x=E.x-(j.x??0),k.y=E.y-(j.y??0))}}}getNodeSquare(f){return{x:f.x??0,y:f.y??0,width:f.width??0,height:f.height??0}}getCenter(f){return{x:f.x+f.width/2,y:f.y+f.height/2}}getLine(f,h){const b=this.portToNodes.get(f),w=this.portToNodes.get(h);if(!b||!w)return{x1:0,y1:0,x2:0,y2:0};const m=this.nodeSquares.get(b),P=this.nodeSquares.get(w),g=this.getCenter(m),E=this.getCenter(P);return{x1:g.x,y1:g.y,x2:E.x,y2:E.y}}getIntersection(f,h){const b={x:f.x,y:f.y},w={x:f.x+f.width,y:f.y},m={x:f.x,y:f.y+f.height},P={x:f.x+f.width,y:f.y+f.height};return[this.getLineIntersection(h,{x1:b.x,y1:b.y,x2:w.x,y2:w.y}),this.getLineIntersection(h,{x1:w.x,y1:w.y,x2:P.x,y2:P.y}),this.getLineIntersection(h,{x1:P.x,y1:P.y,x2:m.x,y2:m.y}),this.getLineIntersection(h,{x1:m.x,y1:m.y,x2:b.x,y2:b.y})].filter(C=>C.x>=Math.min(h.x1,h.x2)&&C.x<=Math.max(h.x1,h.x2)&&C.y>=Math.min(h.y1,h.y2)&&C.y<=Math.max(h.y1,h.y2))[0]??{x:0,y:0}}getLineIntersection(f,h){const b=f.x1,w=f.y1,m=f.x2,P=f.y2,g=h.x1,E=h.y1,C=h.x2,T=h.y2,M=(b-m)*(E-T)-(w-P)*(g-C);if(M===0)return{x:0,y:0};const _=((b*P-w*m)*(g-C)-(b-m)*(g*T-E*C))/M,I=((b*P-w*m)*(E-T)-(w-P)*(g*T-E*C))/M;return{x:_,y:I}}};Lve=nmt([vr(),DL(0,Et(x3))],Lve);function D0t(f,h,b){const w=Math.min(h,b),m=Math.max(h,b);return Math.max(w,Math.min(m,f))}class Jd extends de.AbstractUIExtension{static ID="loading-indicator";loadingIndicatorWrapper;loadingIndicatorText;waitTimeout;id(){return Jd.ID}containerClass(){return Jd.ID}initializeContents(h){this.loadingIndicatorWrapper=document.createElement("div"),this.loadingIndicatorWrapper.id="loading-indicator-wrapper",this.loadingIndicatorWrapper.style.display="none";const b=document.createElement("div");b.id="turning-circle",this.loadingIndicatorWrapper.appendChild(b),this.loadingIndicatorText=document.createElement("div"),this.loadingIndicatorText.id="loading-indicator-text",this.loadingIndicatorWrapper.appendChild(this.loadingIndicatorText),h.appendChild(this.loadingIndicatorWrapper)}showIndicator(h){this.waitTimeout=setTimeout(()=>{this.waitTimeout&&this.loadingIndicatorWrapper&&(this.loadingIndicatorWrapper.style.display="flex",this.loadingIndicatorText&&(this.loadingIndicatorText.innerText=h||"Loading..."),this.loadingIndicatorWrapper.focus(),this.waitTimeout=void 0)},200)}hideIndicator(){this.waitTimeout&&(clearTimeout(this.waitTimeout),this.waitTimeout=void 0),this.loadingIndicatorWrapper&&(this.loadingIndicatorWrapper.style.display="none")}}var rWt=Object.getOwnPropertyDescriptor,oWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?rWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},MX=(f,h)=>(b,w)=>h(b,w,f),D3;(f=>{f.KIND="layoutModel";function h(b){return{kind:f.KIND,layoutMethod:b}}f.create=h})(D3||(D3={}));let Nve=class extends de.Command{constructor(f,h,b,w){super(),this.action=f,this.layoutEngine=h,this.configurator=b,this.loadingIndicator=w}static KIND=D3.KIND;oldRoot;newModel;async execute(f){this.loadingIndicator.showIndicator("Layouting..."),this.oldRoot=f.root,this.configurator.method=this.action.layoutMethod;const h=await this.layoutEngine.layout(f.root);return this.newModel=h,this.loadingIndicator.hideIndicator(),this.newModel}undo(f){return this.oldRoot??f.root}redo(f){return this.newModel??f.root}};Nve=oWt([MX(0,Et(de.TYPES.Action)),MX(1,Et(de.TYPES.IModelLayoutEngine)),MX(2,Et(x3)),MX(3,Et(Jd))],Nve);class Ey extends de.Command{constructor(h,b,w,m,P,g,E){super(),this.logger=h,this.labelTypeRegistry=b,this.constraintRegistry=w,this.editorModeController=m,this.actionDispatcher=P,this.fileName=g,this.loadingIndicator=E}blockUntil=Ey.loadBlockUntilFn;static loadBlockUntilFn=h=>h.kind==="initializeCanvasBounds";oldRoot;newRoot;oldLabelTypes;oldEditorMode;oldFileName;oldConstrains;file;async execute(h){if(this.loadingIndicator.showIndicator("Loading model..."),this.oldRoot=h.root,this.file=await this.getFile(h).catch(()=>{}),!this.file)return this.loadingIndicator.hide(),this.actionDispatcher.dispatch(de.InitializeCanvasBoundsAction.create(this.oldRoot.canvasBounds)),this.oldRoot;try{const b=Ey.preprocessModelSchema(this.file.content.model);this.newRoot=h.modelFactory.createRoot(b),this.logger.info(this,"Model loaded successfully"),this.oldLabelTypes=this.labelTypeRegistry.getLabelTypes();const w=this.file.content.labelTypes;this.labelTypeRegistry.clearLabelTypes(),w?(this.labelTypeRegistry.setLabelTypes(w),this.logger.info(this,"Label types loaded successfully")):this.labelTypeRegistry.clearLabelTypes(),this.oldEditorMode=this.editorModeController.get();const m=this.file.content.mode;m?this.editorModeController.set(m):this.editorModeController.setDefault(),this.logger.info(this,"Editor mode loaded successfully"),this.oldConstrains=this.constraintRegistry.getConstraintList();const P=this.file.content.constraints;return P?this.constraintRegistry.setConstraintsFromArray(P):this.constraintRegistry.clearConstraints(),this.postLoadActions(),this.oldFileName=this.fileName.getName(),this.fileName.setName(this.file.fileName),this.loadingIndicator.hide(),this.newRoot}catch(b){return this.logger.error(this,"Error loading model",b),this.newRoot=this.oldRoot,this.actionDispatcher.dispatch(de.InitializeCanvasBoundsAction.create(this.oldRoot.canvasBounds)),this.loadingIndicator.hide(),this.oldRoot}}undo(h){return this.loadingIndicator.showIndicator("Reverting model load..."),this.oldLabelTypes?this.labelTypeRegistry.setLabelTypes(this.oldLabelTypes):this.labelTypeRegistry.clearLabelTypes(),this.oldEditorMode?this.editorModeController.set(this.oldEditorMode):this.editorModeController.setDefault(),this.oldEditorMode&&this.editorModeController.set(this.oldEditorMode),this.oldConstrains&&this.constraintRegistry.setConstraintsFromArray(this.oldConstrains),this.fileName.setName(this.oldFileName??"diagram"),this.loadingIndicator.hide(),this.oldRoot??h.modelFactory.createRoot(de.EMPTY_ROOT)}redo(h){this.loadingIndicator.showIndicator("Re-applying model load...");const b=this.file?.content.labelTypes;this.labelTypeRegistry.clearLabelTypes(),b?(this.labelTypeRegistry.setLabelTypes(b),this.logger.info(this,"Label types loaded successfully")):this.labelTypeRegistry.clearLabelTypes();const w=this.file?.content.mode;w?this.editorModeController.set(w):this.editorModeController.setDefault(),this.logger.info(this,"Editor mode loaded successfully");const m=this.file?.content.constraints;return m?this.constraintRegistry.setConstraintsFromArray(m):this.constraintRegistry.clearConstraints(),this.fileName.setName(this.file?.fileName??"diagram"),this.loadingIndicator.hide(),this.newRoot??this.oldRoot??h.modelFactory.createRoot(de.EMPTY_ROOT)}static preprocessModelSchema(h){return"features"in h&&delete h.features,"canvasBounds"in h&&delete h.canvasBounds,h.children&&h.children.forEach(b=>this.preprocessModelSchema(b)),h}async postLoadActions(){return this.newRoot?(this.newRoot.children.filter(b=>b instanceof de.SNodeImpl).some(b=>de.isLocateable(b)&&b.position.x===0&&b.position.y===0)&&await this.actionDispatcher.dispatch(D3.create(Xd.LINES)),this.actionDispatcher.dispatch(xL.create(this.newRoot,!1))):void 0}}const cWt={canvasBounds:{x:0,y:0,width:1278,height:1324},scroll:{x:181.68489464915504,y:-12.838536201820945},zoom:6.057478948161569,position:{x:0,y:0},size:{width:-1,height:-1},features:{},type:"graph",id:"root",children:[{position:{x:84,y:54},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"User",labels:[{labelTypeId:"gvia09",labelTypeValueId:"g10hr"}],ports:[{position:{x:58.5,y:7},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"nhcrad",type:"port:dfd-input",children:[]},{position:{x:31,y:38.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set Sensitivity.Personal",features:{},id:"4wbyft",type:"port:dfd-output",children:[]},{position:{x:58.5,y:25.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set Sensitivity.Public",features:{},id:"wksxi8",type:"port:dfd-output",children:[]}],features:{},id:"7oii5l",type:"node:input-output",children:[]},{position:{x:249,y:67},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"view",labels:[],ports:[{position:{x:-3.5,y:13},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"ti4ri7",type:"port:dfd-input",children:[]},{position:{x:58.5,y:13},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward request",features:{},id:"bsqjm",type:"port:dfd-output",children:[]}],features:{},id:"0bh7yh",type:"node:function",children:[]},{position:{x:249,y:22},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"display",labels:[],ports:[{position:{x:58.5,y:15},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"0hfzu",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:9},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward items",features:{},id:"y1p7qq",type:"port:dfd-output",children:[]}],features:{},id:"4myuyr",type:"node:function",children:[]},{position:{x:364,y:152},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"encrypt",labels:[],ports:[{position:{x:-3.5,y:15.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"kqjy4g",type:"port:dfd-input",children:[]},{position:{x:29,y:-3.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward data +set Encryption.Encrypted`,features:{},id:"3wntc",type:"port:dfd-output",children:[]}],features:{},id:"3n988k",type:"node:function",children:[]},{position:{x:104,y:157},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"buy",labels:[],ports:[{position:{x:19,y:-3.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"2331e8",type:"port:dfd-input",children:[]},{position:{x:58.5,y:10.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward data",features:{},id:"vnkg73",type:"port:dfd-output",children:[]}],features:{},id:"z9v1jp",type:"node:function",children:[]},{position:{x:233.5,y:157},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"process",labels:[],ports:[{position:{x:-3.5,y:10.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"xyepdb",type:"port:dfd-input",children:[]},{position:{x:59.5,y:10.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward data",features:{},id:"eedb56",type:"port:dfd-output",children:[]}],features:{},id:"js61f",type:"node:function",children:[]},{position:{x:422.5,y:59},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Database",labels:[{labelTypeId:"gvia09",labelTypeValueId:"5hnugm"}],ports:[{position:{x:-3.5,y:23},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"scljwi",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set Sensitivity.Public",features:{},id:"1j7bn5",type:"port:dfd-output",children:[]}],features:{},id:"8j2r1g",type:"node:storage",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"vq8g3l",type:"edge:arrow",sourceId:"4wbyft",targetId:"2331e8",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"xrzc19",type:"edge:arrow",sourceId:"vnkg73",targetId:"xyepdb",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"ufflto",type:"edge:arrow",sourceId:"eedb56",targetId:"kqjy4g",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"ojjvtp",type:"edge:arrow",sourceId:"3wntc",targetId:"scljwi",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"c9n88l",type:"edge:arrow",sourceId:"bsqjm",targetId:"scljwi",text:"request",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"uflsc",type:"edge:arrow",sourceId:"wksxi8",targetId:"ti4ri7",text:"request",routerKind:"polyline",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"n81f3b",type:"edge:arrow",sourceId:"1j7bn5",targetId:"0hfzu",text:"items",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"hi397b",type:"edge:arrow",sourceId:"y1p7qq",targetId:"nhcrad",text:"items",children:[]}]},sWt=[{id:"4h3wzk",name:"Sensitivity",values:[{id:"zzvphn",text:"Personal"},{id:"veaan9",text:"Public"}]},{id:"gvia09",name:"Location",values:[{id:"g10hr",text:"EU"},{id:"5hnugm",text:"nonEU"}]},{id:"84rllz",name:"Encryption",values:[{id:"2r6xe6",text:"Encrypted"}]}],uWt=[{name:"Test",constraint:"data Sensitivity.Personal neverFlows vertex Location.nonEU"}],aWt="edit",lWt=1,fWt={model:cWt,labelTypes:sWt,constraints:uWt,mode:aWt,version:lWt},hWt={canvasBounds:{x:0,y:0,width:2333.75,height:1168.75},scroll:{x:-105.89197860962565,y:-63},zoom:3.0837730870712403,position:{x:0,y:0},size:{width:-1,height:-1},features:{},type:"graph",id:"root",children:[{position:{x:222,y:75},size:{width:71,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Mother",labels:[{labelTypeId:"vljvh",labelTypeValueId:"z2vuaa"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"6bvsh7",type:"port:dfd-input",children:[]},{position:{x:67.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set TraversedNodes.mother",features:{},id:"pzv6hg",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"3lqxlo",type:"node:input-output",children:[]},{position:{x:226.5,y:199},size:{width:62,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Dad",labels:[{labelTypeId:"vljvh",labelTypeValueId:"oqq2r"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"rva68j",type:"port:dfd-input",children:[]},{position:{x:58.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture +set TraversedNodes.dad`,features:{},id:"f6wz2q",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"wocqg",type:"node:input-output",children:[]},{position:{x:211,y:137},size:{width:63,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Aunt",labels:[{labelTypeId:"vljvh",labelTypeValueId:"vb0xw"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"j6a32",type:"port:dfd-input",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"mhu9ma",type:"node:input-output",children:[]},{position:{x:570,y:99.41666666666666},size:{width:125,height:78},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Family Pictures",labels:[{labelTypeId:"9jr84l",labelTypeValueId:"01mazd"},{labelTypeId:"6drw8l",labelTypeValueId:"dhfohg"},{labelTypeId:"6drw8l",labelTypeValueId:"qsj85"},{labelTypeId:"6drw8l",labelTypeValueId:"7p1lcu"}],ports:[{position:{x:-3.5,y:49.66666666666667},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"efr68k",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:21.333333333333336},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture +set TraversedNodes.pictureStorage +set Read.Aunt`,features:{},id:"l7yqhg",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"050esr",type:"node:storage",children:[]},{position:{x:211,y:12},size:{width:100,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Indexing Bot",labels:[{labelTypeId:"vljvh",labelTypeValueId:"1cnzie"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"h5c7l",type:"port:dfd-input",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"fagty",type:"node:input-output",children:[]},{position:{x:12,y:78},size:{width:105,height:36},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Read Pictures",labels:[],ports:[{position:{x:101.5,y:7.333333333333332},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"hmhlg5",type:"port:dfd-input",children:[]},{position:{x:101.5,y:14.499999999999998},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture +set TraversedNodes.readPicture`,features:{},id:"9fv3si",type:"port:dfd-output",children:[]},{position:{x:101.5,y:21.666666666666664},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture +set TraversedNodes.readPicture`,features:{},id:"b4g3ml",type:"port:dfd-output",children:[]},{position:{x:101.5,y:28.83333333333333},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture +set TraversedNodes.readPicture`,features:{},id:"tj9ox",type:"port:dfd-output",children:[]},{position:{x:101.5,y:.16666666666666607},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture +set TraversedNodes.readPicture`,features:{},id:"j4hq8ov",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"2ksl0i",type:"node:function",children:[]},{routingPoints:[{x:563,y:124.25},{x:543,y:124.25},{x:543,y:64},{x:154,y:64},{x:154,y:88.83333333333333},{x:124,y:88.83333333333333}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"xw3tf",type:"edge:arrow",sourceId:"l7yqhg",targetId:"hmhlg5",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:96},{x:215,y:96}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"wr13pw",type:"edge:arrow",sourceId:"9fv3si",targetId:"6bvsh7",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:103.16666666666666},{x:154,y:103.16666666666666},{x:154,y:158},{x:204,y:158}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"osynnp",type:"edge:arrow",sourceId:"b4g3ml",targetId:"j6a32",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:110.33333333333333},{x:144,y:110.33333333333333},{x:144,y:220},{x:219.5,y:220}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"ymvkcs",type:"edge:arrow",sourceId:"tj9ox",targetId:"rva68j",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:81.66666666666667},{x:144,y:81.66666666666667},{x:144,y:33},{x:204,y:33}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"ryd2n",type:"edge:arrow",sourceId:"j4hq8ov",targetId:"h5c7l",labels:null,ports:null,children:[]},{position:{x:388,y:140},size:{width:98,height:36},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Add Pictures",labels:[],ports:[{position:{x:94.5,y:14.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward mother_picture +set TraversedNodes.addPicture`,features:{},id:"i75rub",type:"port:dfd-output",children:[]},{position:{x:-3.5,y:21.666666666666668},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"q9uoh2",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:7.333333333333334},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"y7wy2c",type:"port:dfd-input",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"d2erj",type:"node:function",children:[]},{routingPoints:[{x:493,y:158},{x:543,y:158},{x:543,y:152.58333333333331},{x:563,y:152.58333333333331}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"c9na5t",type:"edge:arrow",sourceId:"i75rub",targetId:"efr68k",labels:null,ports:null,children:[]},{routingPoints:[{x:295.5,y:220},{x:361,y:220},{x:361,y:165.16666666666666},{x:381,y:165.16666666666666}],selected:!1,hoverFeedback:!1,opacity:1,text:"dad_picture",features:{},id:"pd8t5y",type:"edge:arrow",sourceId:"f6wz2q",targetId:"q9uoh2",labels:null,ports:null,children:[]},{routingPoints:[{x:300,y:96},{x:361,y:96},{x:361,y:150.83333333333334},{x:381,y:150.83333333333334}],selected:!1,hoverFeedback:!1,opacity:1,text:"mother_picture",features:{},id:"ekx5wq",type:"edge:arrow",sourceId:"pzv6hg",targetId:"y7wy2c",labels:null,ports:null,children:[]}]},dWt=[{id:"vljvh",name:"Identity",values:[{id:"z2vuaa",text:"Mother"},{id:"oqq2r",text:"Dad"},{id:"vb0xw",text:"Aunt"},{id:"1cnzie",text:"IndexingBot"}]},{id:"6drw8l",name:"Read",values:[{id:"7p1lcu",text:"Mother"},{id:"qsj85",text:"Dad"},{id:"dhfohg",text:"Aunt"},{id:"e8kf57",text:"IndexingBot"}]},{id:"9jr84l",name:"Owner",values:[{id:"01mazd",text:"Mother"}]},{id:"4qmig",name:"TraversedNodes",values:[{id:"6p4cbg",text:"addPicture"},{id:"igu1hs",text:"pictureStorage"},{id:"yqu7nt",text:"readPicture"},{id:"huqgc6",text:"mother"},{id:"as8h9i",text:"dad"},{id:"0noedq",text:"aunt"},{id:"33ryia",text:"indexingBot"}]}],gWt=[{name:"Isolation",constraint:"data !Read.IndexingBot neverFlows vertex Identity.IndexingBot"}],bWt="edit",pWt=1,wWt={model:hWt,labelTypes:dWt,constraints:gWt,mode:bWt,version:pWt};function L3(){return Math.random().toString(36).substring(7)}class Zd{labelTypes=[];updateCallbacks=[];registerLabelType(h){const b={id:L3(),name:h,values:[]};return this.labelTypes.push(b),this._registerLabelTypeValue(b.id,"Value",!0),this.labelTypeChanged(),b}unregisterLabelType(h){this.labelTypes=this.labelTypes.filter(b=>b.id!==h),this.labelTypeChanged()}updateLabelTypeName(h,b){const w=this.labelTypes.find(m=>m.id===h);if(!w)throw`No Label Type with id ${h} found`;w.name=b,this.labelTypeChanged()}setLabelTypes(h){this.labelTypes=h,this.labelTypeChanged()}registerLabelTypeValue(h,b){return this._registerLabelTypeValue(h,b)}_registerLabelTypeValue(h,b,w=!1){const m={id:L3(),text:b},P=this.labelTypes.find(g=>g.id===h);if(!P)throw`No Label Type with id ${h} found`;return P.values.push(m),w||this.labelTypeChanged(),m}unregisterLabelTypeValue(h,b){const w=this.labelTypes.find(m=>m.id===h);if(!w)throw`No Label Type with id ${h} found`;w.values=w.values.filter(m=>m.id!==b),this.labelTypeChanged()}updateLabelTypeValueText(h,b,w){const m=this.labelTypes.find(g=>g.id===h);if(!m)throw`No Label Type with id ${h} found`;const P=m.values.find(g=>g.id===b);if(!P)throw`Label Type ${m.name} has no value with id ${b}`;P.text=w,this.labelTypeChanged()}clearLabelTypes(){this.labelTypes=[],this.updateCallbacks.forEach(h=>h())}labelTypeChanged(){this.updateCallbacks.forEach(h=>h())}onUpdate(h){this.updateCallbacks.push(h)}getLabelTypes(){return this.labelTypes}getLabelType(h){return this.labelTypes.find(b=>b.id===h)}}class Ty{name="diagram";getName(){return this.name}setName(h){const b=h.lastIndexOf(".");this.name=b===-1?h:h.substring(0,b),document.title=this.name+".json - DFD WebEditor"}}const sc={Theme:Symbol("Theme"),Mode:Symbol("EditorMode"),HideEdgeNames:Symbol("HideEdgeNames"),SimplifyNodeNames:Symbol("SimplifyNodeNames"),ShownLabels:Symbol("ShownLabels")};var mWt=Object.getOwnPropertyDescriptor,vWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?mWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let Qd=class{constraints=[];updateCallbacks=[];selectedConstraints=this.constraints.map(f=>f.name);setConstraints(f){this.constraints=this.splitIntoConstraintTexts(f).map(h=>this.mapToConstraint(h)),this.constraintListChanged()}setConstraintsFromArray(f){this.constraints=f.map(h=>({name:h.name,constraint:h.constraint})),this.constraintListChanged()}setSelectedConstraints(f){this.selectedConstraints=f}getSelectedConstraints(){return this.selectedConstraints}clearConstraints(){this.constraints=[],this.constraintListChanged()}constraintListChanged(){this.updateCallbacks.forEach(f=>f())}onUpdate(f){this.updateCallbacks.push(f)}getConstraintsAsText(){return this.constraints.map(f=>`- ${f.name}: ${f.constraint}`).join(` +`)}getConstraintList(){return this.constraints}selectedContainsAllConstraints(){return this.getConstraintList().map(f=>f.name).every(f=>this.getSelectedConstraints().includes(f))}setAllConstraintsAsSelected(){this.selectedConstraints=this.constraints.map(f=>f.name)}splitIntoConstraintTexts(f){const h=[];let b="";for(const w of f)w.startsWith("- ")?(b!==""&&h.push(b),b=w):b+=` +${w}`;return b!==""&&h.push(b),h}mapToConstraint(f){const h=f.split(/(\s+)/);if(h.length<3)return{name:"",constraint:""};let b=h[2];b.endsWith(":")&&(b=b.slice(0,-1));let w="";for(let m=4;m{for(var m=w>1?void 0:w?yWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},oS=(f,h)=>(b,w)=>h(b,w,f),dA;(f=>{f.KIND="loadDefaultDiagram";function h(){return{kind:f.KIND}}f.create=h})(dA||(dA={}));let Fve=class extends Ey{static KIND=dA.KIND;constructor(f,h,b,w,m,P,g,E){super(h,b,w,m,P,g,E)}async getFile(){return this.loadDAC()}async loadOnlineShop(){return{fileName:"online-shop",content:fWt}}async loadDAC(){return{fileName:"dac",content:wWt}}};Fve=_Wt([oS(0,Et(de.TYPES.Action)),oS(1,Et(de.TYPES.ILogger)),oS(2,Et(Zd)),oS(3,Et(Qd)),oS(4,Et(sc.Mode)),oS(5,Et(de.TYPES.IActionDispatcher)),oS(6,Et(Ty)),oS(7,Et(Jd))],Fve);var EWt=Object.getOwnPropertyDescriptor,SWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?EWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},cS=(f,h)=>(b,w)=>h(b,w,f),KX;(f=>{f.KIND="loadUrl";function h(b){return{kind:f.KIND,url:b}}f.create=h})(KX||(KX={}));let Bve=class extends Ey{constructor(f,h,b,w,m,P,g,E){super(h,b,w,m,P,g,E),this.action=f}static KIND=KX.KIND;async getFile(){const f=await fetch(this.action.url).then(w=>w.json()),h=this.action.url.split("/"),b=h[h.length-1];return{content:f,fileName:b}}};Bve=SWt([cS(0,Et(de.TYPES.Action)),cS(1,Et(de.TYPES.ILogger)),cS(2,Et(Zd)),cS(3,Et(Qd)),cS(4,Et(sc.Mode)),cS(5,Et(de.TYPES.IActionDispatcher)),cS(6,Et(Ty)),cS(7,Et(Jd))],Bve);var PWt=Object.getOwnPropertyDescriptor,MWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?PWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},CWt=(f,h)=>(b,w)=>h(b,w,f);let $ve=class{constructor(f){this.actionDispatcher=f}run(){const h=new URLSearchParams(window.location.search).get("file");this.actionDispatcher.dispatch(h!=null?KX.create(h):dA.create())}};$ve=MWt([CWt(0,Et(de.TYPES.IActionDispatcher))],$ve);var IWt=Object.defineProperty,TWt=Object.getOwnPropertyDescriptor,jWt=(f,h,b)=>h in f?IWt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,AWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?TWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},k0t=(f,h)=>(b,w)=>h(b,w,f),OWt=(f,h,b)=>jWt(f,h+"",b);let Sy=class{constructor(f,h){this.logger=f,this.fileName=h,this.init()}webSocket;webSocketId=-1;lastRequest={};init(){this.webSocket=new WebSocket(Sy.WS_URL),this.webSocket.onopen=()=>{this.logger.log(this,"WebSocket connection established.")},this.webSocket.onclose=()=>{this.logger.log(this,"WebSocket connection closed. Reconnecting..."),this.reject(new Error("WebSocket connection closed")),this.init()},this.webSocket.onerror=()=>{this.logger.log(this,"WebSocket error occurred."),this.reject(new Error("WebSocket error occurred")),this.init()},this.webSocket.onmessage=f=>{const h=f.data;if(this.logger.log(this,"WebSocket message received: "+h),h.startsWith("Error:")&&this.reject(new Error(h)),h.startsWith("ID assigned:")){const b=h.split(":");this.webSocketId=parseInt(b[1].trim()),this.logger.log(this,"WebSocket ID assigned: "+this.webSocketId);return}this.lastRequest.resolve?(this.lastRequest.resolve(h),this.lastRequest.resolve=void 0,this.lastRequest.reject=void 0):this.logger.log(this,"No pending request to resolve.")}}reject(f){this.lastRequest.reject&&(this.lastRequest.reject(f),this.lastRequest.resolve=void 0,this.lastRequest.reject=void 0)}async requestDiagram(f){const h=await this.sendMessage(f),b=h.split(":")[0],w=h.replace(b+":","");return{fileName:b,content:JSON.parse(w)}}sendMessage(f){const h=new Promise((b,w)=>{this.lastRequest.resolve=b,this.lastRequest.reject=w});return!this.webSocket||this.webSocket.readyState!==WebSocket.OPEN?(this.reject(new Error("WebSocket is not connected")),h):(this.webSocket.send(this.webSocketId+":"+this.fileName.getName()+":"+f),h)}};OWt(Sy,"WS_URL","ws://localhost:3000/events/");Sy=AWt([vr(),k0t(0,Et(de.TYPES.ILogger)),k0t(1,Et(Ty))],Sy);var DWt=Object.getOwnPropertyDescriptor,kWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?DWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},RWt=(f,h)=>(b,w)=>h(b,w,f);let Kve=class{constructor(f){}run(){}};Kve=kWt([RWt(0,Et(Sy))],Kve);var qX;(f=>{f.KIND="hide-edge-names";function h(){return{kind:f.KIND}}f.create=h})(qX||(qX={}));class xWt extends de.Command{static KIND=qX.KIND;execute(h){return h.root}undo(h){return h.root}redo(h){return h.root}}var LWt=Object.getOwnPropertyDescriptor,imt=(f,h,b,w)=>{for(var m=w>1?void 0:w?LWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},NWt=(f,h)=>(b,w)=>h(b,w,f);class a2e extends de.SEdgeImpl{text;get editableLabel(){const h=this.children.find(b=>b.type.startsWith("label"));if(h&&de.isEditableLabel(h))return h}}let qve=class extends de.PolylineEdgeViewWithGapsOnIntersections{constructor(f){super(),this.hideEdgeNames=f}renderAdditionals(f,h,b){const w=super.renderAdditionals(f,h,b),m=h[h.length-2],P=h[h.length-1],g=de.svg("path",{"class-arrow":!0,d:"M 0.5,0 L 10,-4 L 10,4 Z",transform:`rotate(${mg.toDegrees(mg.angleOfPoint({x:m.x-P.x,y:m.y-P.y}))} ${P.x} ${P.y}) translate(${P.x} ${P.y})`,style:{opacity:f.opacity.toString()}});return w.push(g),w}renderLine(f,h){const b=h[0];let w=`M ${b.x},${b.y}`;for(let m=1;m{for(var m=w>1?void 0:w?BWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let gA=class extends rmt{getName(){const f=[];if(this.incomingEdges.forEach(h=>{if(h instanceof a2e){const b=h.editableLabel?.text;b&&f.push(b)}else return}),f.length!==0)return f.sort().join("|")}canConnect(f,h){return h==="target"}};gA=$Wt([vr()],gA);class KWt extends de.ShapeView{render(h,b){if(!this.isVisible(h,b))return;const{width:w,height:m}=h.bounds;return de.svg("g",{"class-sprotty-port":!0,"class-selected":h.selected,style:{opacity:h.opacity.toString()}},de.svg("rect",{x:"0",y:"0",width:w,height:m}),de.svg("text",{x:w/2,y:m/2,"class-port-text":!0},"I"),b.renderChildren(h))}}var omt=Object.defineProperty,qWt=Object.getOwnPropertyDescriptor,HWt=(f,h,b)=>h in f?omt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,l2e=(f,h,b,w)=>{for(var m=w>1?void 0:w?qWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&omt(h,b,m),m},zWt=(f,h)=>(b,w)=>h(b,w,f),VWt=(f,h,b)=>HWt(f,h+"",b);class x0t extends de.CenterGridSnapper{constructor(h){super(),this.gridSize=h}get gridX(){return this.gridSize}get gridY(){return this.gridSize}}let Hve=class{nodeSnapper=new x0t(5);portSnapper=new x0t(2.5);snapPort(f,h){const b=h.parent;if(b instanceof de.SPortImpl||!de.isBoundsAware(b))return f;const w=b.bounds,m=(_,I,O)=>Math.min(Math.max(_,I),O);f=this.portSnapper.snap(f,h);const P=m(f.x,0,w.width),g=m(f.y,0,w.height),C=[{x:P,y:0},{x:0,y:g},{x:w.width,y:g},{x:P,y:w.height}].reduce((_,I)=>Math.hypot(I.x-f.x,I.y-f.y){if(b instanceof de.SPortImpl){const w={...b.position},{width:m,height:P}=b.bounds;w.x+=m/2,w.y+=P/2,b.position=h.snap(w,b)}})}const cmt=Symbol("dfd-label-feature");function smt(f){return f.features?.has(cmt)??!1}var UWt=Object.defineProperty,WWt=Object.getOwnPropertyDescriptor,YWt=(f,h,b)=>h in f?UWt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,XWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?WWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Sve=(f,h)=>(b,w)=>h(b,w,f),JWt=(f,h,b)=>YWt(f,h+"",b),zX;(f=>{function h(b,w){return{kind:bA.KIND,action:"add",labelAssignment:b,element:w}}f.create=h})(zX||(zX={}));var Vve;(f=>{function h(b,w){return{kind:bA.KIND,action:"remove",labelAssignment:b,element:w}}f.create=h})(Vve||(Vve={}));let bA=class{constructor(f,h,b){this.action=f,this.editorModeController=h,this.snapper=b}elements;execute(f){if(this.editorModeController.isReadOnly())return f.root;if(this.action.element)this.elements=[this.action.element];else{const h=umt(f.root.children);this.elements=h.filter(b=>de.isSelected(b)&&smt(b))}return this.action.action=="add"?this.addLabel():this.removeLabel(),f.root}undo(f){return this.editorModeController.isReadOnly()||(this.action.action=="add"?this.removeLabel():this.addLabel()),f.root}redo(f){return this.editorModeController.isReadOnly()||(this.action.action=="add"?this.addLabel():this.removeLabel()),f.root}addLabel(){this.elements?.forEach(f=>{f.labels.find(b=>b.labelTypeId===this.action.labelAssignment.labelTypeId&&b.labelTypeValueId===this.action.labelAssignment.labelTypeValueId)!==void 0||(f.labels.push(this.action.labelAssignment),f instanceof de.SNodeImpl&&zve(f,this.snapper))})}removeLabel(){this.elements?.forEach(f=>{const h=f.labels,b=h.findIndex(w=>w.labelTypeId==this.action.labelAssignment.labelTypeId&&w.labelTypeValueId==this.action.labelAssignment.labelTypeValueId);b>=0&&(h.splice(b,1),f instanceof de.SNodeImpl&&zve(f,this.snapper))})}};JWt(bA,"KIND","labelAction");bA=XWt([vr(),Sve(0,Et(de.TYPES.Action)),Sve(1,Et(sc.Mode)),Sve(2,Et(de.TYPES.ISnapper))],bA);function umt(f){const h=[];for(const b of f)h.push(b),"children"in b&&h.push(...umt(b.children));return h}var QWt=Object.defineProperty,ZWt=Object.getOwnPropertyDescriptor,eYt=(f,h,b)=>h in f?QWt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,tYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?ZWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},L0t=(f,h)=>(b,w)=>h(b,w,f),EJ=(f,h,b)=>eYt(f,typeof h!="symbol"?h+"":h,b);let Rf=class{constructor(f,h){this.actionDispatcher=f,this.labelTypeRegistry=h}getLabel(f){const h=this.labelTypeRegistry.getLabelType(f.labelTypeId),b=h?.values.find(w=>w.id===f.labelTypeValueId);if(!(!h||!b))return{type:h,value:b}}computeLabelContent(f){const h=this.getLabel(f);if(!h)return["",0];const b=`${h.type.name}: ${h.value.text}`,w=uN(b,"5pt sans-serif").width+Rf.LABEL_TEXT_PADDING;return[b,w]}renderSingleNodeLabel(f,h,b,w){const[m,P]=this.computeLabelContent(h),g=b-P/2,E=b+P/2,C=Rf.LABEL_HEIGHT,T=C/2,M=()=>{this.actionDispatcher.dispatch(Vve.create(h,f))};return de.svg("g",{"class-node-label":!0},de.svg("rect",{x:g,y:w,width:P,height:C,rx:T,ry:T}),de.svg("text",{x:b,y:w+C/2},m),f.hoverFeedback?de.svg("g",{"class-label-delete":!0,on:{click:M}},de.svg("circle",{cx:E,cy:w,r:T*.8}),de.svg("text",{x:E,y:w},"X")):void 0)}sortLabels(f){f.sort((h,b)=>{const w=this.getLabel(h),m=this.getLabel(b);return!w||!m?0:w.type.namem.type.name?1:w.value.text.localeCompare(m.value.text)})}renderNodeLabels(f,h,b=0,w=Rf.LABEL_SPACING_HEIGHT){return this.sortLabels(f.labels),de.svg("g",null,f.labels.map((m,P)=>{const g=f.bounds.width/2,E=h+P*w;return this.renderSingleNodeLabel(f,m,g+b,E)}))}};EJ(Rf,"LABEL_HEIGHT",10);EJ(Rf,"LABEL_SPACE_BETWEEN",2);EJ(Rf,"LABEL_SPACING_HEIGHT",Rf.LABEL_HEIGHT+Rf.LABEL_SPACE_BETWEEN);EJ(Rf,"LABEL_TEXT_PADDING",8);Rf=tYt([vr(),L0t(0,Et(de.TYPES.IActionDispatcher)),L0t(1,Et(Zd))],Rf);var nYt=Object.defineProperty,iYt=(f,h,b,w)=>{for(var m=void 0,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(h,b,m)||m);return m&&nYt(h,b,m),m};const amt=class uA extends de.SNodeImpl{static DEFAULT_FEATURES=[...de.SNodeImpl.DEFAULT_FEATURES,de.withEditLabelFeature,cmt];static DEFAULT_WIDTH=50;static WIDTH_PADDING=12;static NODE_COLOR="var(--color-primary)";static HIGHLIGHTED_COLOR="var(--color-highlighted)";dfdNodeLabelRenderer;text="";color;labels=[];ports=[];hideLabels=!1;minimumWidth=uA.DEFAULT_WIDTH;annotations=[];constructor(){super()}get editableLabel(){const h=this.children.find(b=>b.type==="label:positional");if(h&&de.isEditableLabel(h))return h}calculateWidth(){if(this.hideLabels)return this.minimumWidth+uA.WIDTH_PADDING;const h=uN(this.text).width,b=this.labels.map(m=>this.dfdNodeLabelRenderer?.computeLabelContent(m)[1]??0);return Math.max(...b,h,uA.DEFAULT_WIDTH)+uA.WIDTH_PADDING}calculateHeight(){return this.labels.length>0&&!this.hideLabels?this.labelStartHeight()+this.labels.length*Rf.LABEL_SPACING_HEIGHT+Rf.LABEL_SPACE_BETWEEN:this.noLabelHeight()}get bounds(){return{x:this.position.x,y:this.position.y,width:this.calculateWidth(),height:this.calculateHeight()}}getAvailableInputs(){return this.children.filter(h=>h instanceof gA).map(h=>h).map(h=>h.getName())}getEdgeTexts(h){return this.children.filter(w=>w instanceof gA).map(w=>w).flatMap(w=>w.incomingEdges).filter(w=>w instanceof a2e).map(w=>w).filter(h).map(w=>w.editableLabel?.text??"")}geViewStyleObject(){const h={opacity:this.opacity.toString()};return h["--border"]="#FFFFFF",this.color&&(h["--color"]=this.color),h}setColor(h,b=!0){(b||this.color===uA.NODE_COLOR)&&(this.color=h)}};iYt([Et(Rf)],amt.prototype,"dfdNodeLabelRenderer");let jy=amt;var rYt=Object.getOwnPropertyDescriptor,lmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?rYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Pve=(f,h)=>(b,w)=>h(b,w,f);let VX=class{plainNames;anonymousNames;nextNummber=1;constructor(){this.plainNames=new Map,this.anonymousNames=new Map}setPlainName(f){f.editableLabel&&this.plainNames.has(f.id)&&(f.editableLabel.text=this.plainNames.get(f.id))}setAnonymousName(f){f instanceof jy&&f.editableLabel&&this.plainNames.set(f.id,f.editableLabel.text),this.anonymousNames.has(f.id)||(this.anonymousNames.set(f.id,this.nextNummber),this.nextNummber++),f.editableLabel&&(f.editableLabel.text=this.anonymousNames.get(f.id).toString())}};VX=lmt([vr()],VX);var GX;(f=>{f.KIND="simplify-node-names";function h(){return{kind:f.KIND}}f.create=h})(GX||(GX={}));let Gve=class extends de.Command{constructor(f,h,b){super(),this.nodeNameRegistry=h,this.simplifyNodeNames=b}static KIND=GX.KIND;execute(f){return this.iterate(f.root,h=>this.simplifyNodeNames.get()?this.nodeNameRegistry.setAnonymousName(h):this.nodeNameRegistry.setPlainName(h)),f.root}undo(f){return f.root}redo(f){return f.root}iterate(f,h){f instanceof jy&&h(f);for(const b of f.children)this.iterate(b,h)}};Gve=lmt([Pve(0,Et(de.TYPES.Action)),Pve(1,Et(VX)),Pve(2,Et(sc.SimplifyNodeNames))],Gve);function oYt(f,h,b){f.registerListener(()=>{f.isReadOnly()||(h.set(!1),b.set(!1))}),h.registerListener(w=>{w&&f.set("view")}),b.registerListener(w=>{w&&f.set("view")})}function cYt(f,h,b){b.registerListener(()=>f.dispatch(qX.create())),h.registerListener(()=>f.dispatch(GX.create()))}class SJ{value;listeners=[];constructor(h){this.value=h}get(){return this.value}set(h){const b=this.value;this.value=h,b!==h&&this.listeners.forEach(w=>w(h))}registerListener(h){this.listeners.push(h)}}class N0t extends SJ{constructor(h=!1){super(h)}}var DM=(f=>(f.LIGHT="Light",f.DARK="Dark",f.SYSTEM_DEFAULT="System Default",f))(DM||{});class fA extends SJ{static SYSTEM_DEFAULT=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"Dark":"Light";static LOCAL_STORAGE_KEY="dfdwebeditor:theme";constructor(){super(localStorage.getItem(fA.LOCAL_STORAGE_KEY)??fA.SYSTEM_DEFAULT)}getTheme(){const h=this.get();return h==="System Default"?fA.SYSTEM_DEFAULT:h}}const fmt=Symbol("ThemeSwitchable");function sYt(f,h){f.registerListener(()=>{F0t(f,h)}),F0t(f,h)}function F0t(f,h){const b=document.querySelector(":root"),w=document.querySelector("#sprotty"),m=f.getTheme()==="Dark"?"dark":"light";b.setAttribute("data-theme",m),w.setAttribute("data-theme",m),localStorage.setItem(fA.LOCAL_STORAGE_KEY,f.get()),h.forEach(P=>P.switchTheme(f.getTheme()))}var uYt=Object.getOwnPropertyDescriptor,aYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?uYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},rA=(f,h)=>(b,w)=>h(b,w,f);let Uve=class{constructor(f,h,b,w,m,P){this.themeManager=f,this.hideEdgeNames=h,this.simplifyNodeNames=b,this.editorModeController=w,this.switchables=m,this.actionDispatcher=P}run(){oYt(this.editorModeController,this.simplifyNodeNames,this.hideEdgeNames),sYt(this.themeManager,this.switchables),cYt(this.actionDispatcher,this.simplifyNodeNames,this.hideEdgeNames)}};Uve=aYt([rA(0,Et(sc.Theme)),rA(1,Et(sc.HideEdgeNames)),rA(2,Et(sc.SimplifyNodeNames)),rA(3,Et(sc.Mode)),rA(4,cJ(fmt)),rA(5,Et(de.TYPES.IActionDispatcher))],Uve);const lYt=new xf(f=>{f(OL).to(xve),f(OL).to($ve),f(OL).to(Kve),f(OL).to(Uve)}),fYt=new xf((f,h,b,w)=>{f(de.TYPES.ModelSource).to(de.LocalModelSource).inSingletonScope(),w(de.TYPES.ILogger).to(de.ConsoleLogger).inSingletonScope(),w(de.TYPES.LogLevel).toConstantValue(de.LogLevel.log);const m={bind:f,unbind:h,isBound:b,rebind:w};de.configureViewerOptions(m,{zoomLimits:{min:.05,max:20}})});class CX{constructor(){}static buildDeleteButton(){const h=document.createElement("button");h.classList.add("delete-button");const b=document.createElement("span");return b.classList.add("codicon","codicon-trash"),h.appendChild(b),h}static buildAddButton(h){const b=document.createElement("button");b.classList.add("add-button");const w=document.createElement("span");w.classList.add("codicon","codicon-add"),b.appendChild(w);const m=document.createElement("span");return m.innerText=h,b.appendChild(m),b}}var hYt=Object.getOwnPropertyDescriptor,dYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?hYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},gYt=(f,h)=>(b,w)=>h(b,w,f);const hmt="application/x-label-assignment";let Wve=class extends de.MouseListener{constructor(f){super(),this.logger=f}dragOver(f,h){return h.preventDefault(),[]}drop(f,h){const b=h.dataTransfer?.getData(hmt);if(!b)return[];const w=dmt(f);if(!w)return this.logger.info(this,"Aborted drop of label assignment because the target element nor the parent elements have the dfd label feature"),[];if(!(w instanceof de.SNodeImpl))return this.logger.info(this,"Aborted drop of label assignment because the target element is not a node"),[];const m=JSON.parse(b);return this.logger.info(this,"Adding label assignment to element",w,m),[zX.create(m,w),de.CommitModelAction.create()]}};Wve=dYt([vr(),gYt(0,Et(de.TYPES.ILogger))],Wve);function dmt(f){if(smt(f))return f;if("parent"in f)return dmt(f.parent)}function aN(f){if(!f||f.length==0)return[];const h=[];for(const[b,w]of f.entries()){const m=w.split(/(\s+)/);let P=0;for(let g=0;g0&&h.push({text:E,line:b+1,column:P+1}),P+=E.length}(w.match(/\s$/)||w.length==0)&&h.push({text:"",line:b+1,column:P+1})}return h}function B0t(f,h,b){const w=aN(f),m=Yve(w,h,h,0,b);for(let g=0;g=f.length)return[];if(!P&&f[w].column==1&&b.some(C=>C.word.verify(f[w].text).length===0))return Yve(f,b,b,w,m,!0);let g=f[w].text;for(const E of h)E.word.replace&&(g=E.word.replace(g,m));return[{...f[w],newText:g},...Yve(f,h.flatMap(E=>E.children),b,w+1,m)]}function f2e(f,h){return Xve(f,h,0,!1,h,!0)}function Xve(f,h,b,w,m,P=!1){if(b>=f.length)return h.length==0||w?[]:[{message:"Unexpected end of line",line:f[b-1].line,startColumn:f[b-1].column+f[b-1].text.length-1,endColumn:f[b-1].column+f[b-1].text.length}];if(!P&&f[b].column==1&&m.some(T=>T.word.verify(f[b].text).length===0))return Xve(f,m,b,!1,m,!0);const g=[];let E=[];for(const C of h){const T=C.word.verify(f[b].text);if(T.length>0){g.push({message:T[0],startColumn:f[b].column,endColumn:f[b].column+f[b].text.length,line:f[b].line});continue}const M=Xve(f,C.children,b+1,C.canBeFinal||!1,m);if(M.length==0)return[];E=E.concat(M)}return E.length>0?$0t(E):$0t(g)}function $0t(f){const h=new Set;return f.filter(b=>{const w=`${b.line}-${b.startColumn}-${b.endColumn}-${b.message}`;return h.has(w)?!1:(h.add(w),!0)})}class tl{constructor(h){this.word=h}verify(h){return h===this.word?[]:[`Expected keyword "${this.word}"`]}completionOptions(){return[{insertText:this.word,kind:wh.CompletionItemKind.Keyword}]}}class bYt{verify(h){return h.length>0?[]:["Expected a symbol"]}completionOptions(){return[]}}class oA{constructor(h){this.word=h}verify(h){return h.startsWith("!")?this.word.verify(h.substring(1)):this.word.verify(h)}completionOptions(h){return h.startsWith("!")?this.word.completionOptions(h.substring(1)).map(w=>({...w,startOffset:(w.startOffset??0)+1})):this.word.completionOptions(h)}replace(h,b){return this.word.replace?h.startsWith("!")?this.replace(h.substring(1),b):this.word.replace(h,b):h}}class Mve{constructor(h){this.word=h}verify(h){const b=h.split(",");for(const w of b){const m=this.word.verify(w);if(m.length>0)return m}return[]}completionOptions(h){const b=h.split(","),w=b[b.length-1];return this.word.completionOptions(w)}replace(h,b){return this.word.replace?h.split(",").map(m=>this.word.replace(m,b)).join(","):h}}const IX="dfd-assignment-language",pYt=["forward","assign","set","unset"],wYt=[...pYt,"if","from"],mYt=["TRUE","FALSE"],vYt={keywords:[...wYt,...mYt],operators:["=","||","&&","!"],symbols:/[=>{function h(g,E){return[b(E,"set"),b(E,"unset"),w(g),m(E,g)]}f.buildTree=h;function b(g,E){const C={word:new Mve(new Jve(g)),children:[]};return{word:new tl(E),children:[C]}}function w(g){const E={word:new Mve(new Qve(g)),children:[]};return{word:new tl("forward"),children:[E]}}function m(g,E){const C={word:new tl("from"),children:[{word:new Mve(new Qve(E)),children:[]}]},T={word:new tl("if"),children:P(g,C,E)};return{word:new tl("assign"),children:[{word:new Jve(g),children:[T]}]}}function P(g,E,C){const T=["&&","||"].map(_=>({word:new tl(_),children:[]})),M=[new tl("TRUE"),new tl("FALSE"),new _Yt(g,C)].map(_=>({word:_,children:[...T,E],canBeFinal:!0}));return T.forEach(_=>{_.children=M}),M}})(NL||(NL={}));class yYt{constructor(h){this.port=h}getAvailableInputs(){const h=this.port.parent;return h instanceof jy?h.getAvailableInputs().filter(b=>b!==void 0):[]}}class Jve{constructor(h){this.labelTypeRegistry=h}completionOptions(h){const b=h.split(".");if(b.length==1)return this.labelTypeRegistry.getLabelTypes().map(w=>({insertText:w.name,kind:wh.CompletionItemKind.Class}));if(b.length==2){const w=this.labelTypeRegistry.getLabelTypes().find(m=>m.name===b[0]);return w?w.values.map(m=>({insertText:m.text,kind:wh.CompletionItemKind.Enum,startOffset:b[0].length+1})):[]}return[]}verify(h){const b=h.split(".");if(b.length>2)return["Expected at most 2 parts in characteristic selector"];const w=this.labelTypeRegistry.getLabelTypes().find(P=>P.name===b[0]);return w?b.length<2?["Expected characteristic to have value"]:b[1].startsWith("$")&&b[1].length>=2?[]:w.values.find(P=>P.text===b[1])?[]:['Unknown label value "'+b[1]+'" for type "'+b[0]+'"']:['Unknown label type "'+b[0]+'"']}replace(h,b){return b.type=="label"&&h==b.old?b.replacement:h}}class Qve extends yYt{completionOptions(){return this.getAvailableInputs().map(b=>({insertText:b,kind:wh.CompletionItemKind.Variable}))}verify(h){return this.getAvailableInputs().includes(h)?[]:[`Unknown input "${h}"`]}}class _Yt{inputWord;labelWord;constructor(h,b){this.inputWord=new Qve(b),this.labelWord=new Jve(h)}completionOptions(h){const b=this.getParts(h);return b[1]===void 0?this.inputWord.completionOptions().map(w=>({...w,insertText:w.insertText})):b.length>=2?this.labelWord.completionOptions(b[1]).map(w=>({...w,insertText:w.insertText,startOffset:(w.startOffset??0)+b[0].length+1})):[]}verify(h){const b=this.getParts(h),w=this.inputWord.verify(b[0]);if(w.length>0)return w;if(b[1]===void 0)return["Expected input and label separated by a dot"];const m=this.labelWord.verify(b[1]);return[...w,...m]}replaceWord(h,b){const[w,m]=this.getParts(h);return b.type=="label"&&m===b.old?w+"."+b.replacement:h}getParts(h){if(h.includes(".")){const b=h.indexOf("."),w=h.substring(0,b),m=h.substring(b+1);return[w,m]}return[h,void 0]}}var EYt=Object.defineProperty,SYt=Object.getOwnPropertyDescriptor,h2e=(f,h,b,w)=>{for(var m=w>1?void 0:w?SYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&EYt(h,b,m),m};let pA=class extends rmt{behavior="";validBehavior=!0;tree;labelTypeRegistry;constructor(){super()}get editableLabel(){const f=this.children.find(h=>h.type==="label:invisible");if(f&&de.isEditableLabel(f))return f}canConnect(f,h){return h==="source"}geViewStyleObject(){const f={opacity:this.opacity.toString()};return this.validBehavior||(f["--port-border"]="#ff0000",f["--port-color"]="#ff6961"),f}setBehavior(f){if(this.behavior=f,f===""){this.validBehavior=!0;return}if(!this.tree){if(!this.labelTypeRegistry)return;this.tree=NL.buildTree(this,this.labelTypeRegistry)}const h=f2e(aN(this.behavior.split(` +`)),this.tree);this.validBehavior=h.length===0}getBehavior(){return this.behavior}};h2e([Et(Zd)],pA.prototype,"labelTypeRegistry",2);pA=h2e([vr()],pA);let Zve=class extends de.ShapeView{render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds;return de.svg("g",{"class-sprotty-port":!0,"class-selected":f.selected,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w}),de.svg("text",{x:b/2,y:w/2,"class-port-text":!0},"O"),h.renderChildren(f))}};Zve=h2e([vr()],Zve);const TX="dfd-constraint",PYt={keywords:["data","vertex","neverFlows","to","where","named","present","empty","type"],symbols:/[=>{function h(_,I){const O=m(),j={word:new tl("where"),children:O},k=w(_,I);k.forEach(ce=>{b(ce).forEach(J=>{J.canBeFinal=!0,J.children.push(j)})});const x={word:new tl("vertex"),children:k},R={word:new tl("neverFlows"),children:[x,j],canBeFinal:!0},H={word:new tl("data"),children:[]},F=w(_,I);F.forEach(ce=>{b(ce).forEach(J=>{J.children.push(H),J.children.push(R)})});const $={word:new tl("vertex"),children:F},W=w(_,I);W.forEach(ce=>{b(ce).forEach(J=>{J.children.push($),J.children.push(R)})}),H.children=W;const re={word:new C,children:[$,H]};return[{word:new tl("-"),children:[re]}]}f.buildTree=h;function b(_){if(_.children.length==0)return[_];let I=[];for(const O of _.children)I=I.concat(b(O));return I}function w(_,I){const O={word:new tl("type"),children:[new oA(new tl("EXTERNAL")),new oA(new tl("PROCESS")),new oA(new tl("STORE"))].map(R=>({word:R,children:[]}))},j={word:new oA(new E(I)),children:[]},k={word:new oA(new M(I)),children:[]},x={word:new tl("named"),children:[{word:new T(_),children:[]}]};return[O,j,k,x]}function m(){const _={word:new tl("present"),children:[{word:new oA(new g),children:[]}]},I={word:new tl("empty"),children:[{word:new P,children:[]}]};return[_,I]}class P{constraintVariableReference;constructor(){this.constraintVariableReference=new g}completionOptions(I){return I.startsWith("intersection(")?I.substring(13,I.length-1).split(",").length>2?[]:this.constraintVariableReference.completionOptions():"intersection(".includes(I)?[{label:"intersection()",insertText:"intersection($0)",insertTextRules:wh.CompletionItemInsertTextRule.InsertAsSnippet,kind:wh.CompletionItemKind.Function}]:[]}verify(I){if(!I.startsWith("intersection("))return['Expected keyword "intersection"'];const O=I.substring(13,I.length-1).split(",");return O.length>2?['Expected at most 2 attributes in "intersection"']:O.flatMap(j=>this.constraintVariableReference.verify(j))}}class g extends bYt{}class E{constructor(I){this.labelTypeRegistry=I}completionOptions(I){const O=I.split(".");if(O.length==1)return this.labelTypeRegistry.getLabelTypes().map(j=>({insertText:j.name,kind:wh.CompletionItemKind.Class}));if(O.length==2){const j=this.labelTypeRegistry.getLabelTypes().find(x=>x.name===O[0]);if(!j)return[];const k=j.values.map(x=>({insertText:x.text,kind:wh.CompletionItemKind.Enum,startOffset:O[0].length+1}));return k.push({insertText:"$"+j.name,kind:wh.CompletionItemKind.Variable,startOffset:O[0].length+1}),k}return[]}verify(I){const O=I.split(".");if(O.length>2)return["Expected at most 2 parts in characteristic selector"];const j=this.labelTypeRegistry.getLabelTypes().find(x=>x.name===O[0]);return j?O.length<2?["Expected characteristic to have value"]:O[1].startsWith("$")&&O[1].length>=2?[]:j.values.find(x=>x.text===O[1])?[]:['Unknown label value "'+O[1]+'" for type "'+O[0]+'"']:['Unknown label type "'+O[0]+'"']}replace(I,O){return O.type=="label"&&I==O.old?O.replacement:I}}class C{completionOptions(I){return I.length===0?[]:[{insertText:":",kind:wh.CompletionItemKind.Keyword}]}verify(I){return I.split(":")[0].length===0?["Expected a name"]:I.endsWith(":")?[]:['Expected ":" at the end of name']}}class T{constructor(I){this.modelSource=I}completionOptions(){return this.getAllPortNames().map(I=>({insertText:I,kind:wh.CompletionItemKind.Variable}))}verify(I){return this.getAllPortNames().includes(I)?[]:['Unknown variable name "'+I+'"']}getAllPortNames(){const I=new Map,O=this.modelSource.model;if(O.children===void 0)return[];for(const j of O.children){const k=j;if(k.text!==void 0&&k.targetId!==void 0){const x=k.text,R=k.targetId;I.has(R)?I.get(R)?.push(x):I.set(R,[x])}}return Array.from(I.keys()).map(j=>I.get(j).sort().join("|"))}}class M{characteristicSelectorData;constructor(I){this.characteristicSelectorData=new E(I)}completionOptions(I){const O=I.split(","),j=O[O.length-1];return this.characteristicSelectorData.completionOptions(j)}verify(I){const O=I.split(",");for(let j=0;j0)return k}return[]}replace(I,O){return this.characteristicSelectorData.replace?I.split(",").map(k=>this.characteristicSelectorData.replace(k,O)).join(","):I}}})(UX||(UX={}));var MYt=Object.getOwnPropertyDescriptor,CYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?MYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},jX=(f,h)=>(b,w)=>h(b,w,f),FL;(f=>{f.KIND="replace-action";function h(b){return{kind:f.KIND,replacements:b}}f.create=h})(FL||(FL={}));let eye=class extends de.Command{constructor(f,h,b,w){super(),this.action=f,this.constraintRegistry=h,this.labelTypeRegistry=b,this.localModelSource=w}static KIND=FL.KIND;execute(f){this.iterateForPorts(f.root);for(const h of this.action.replacements)this.constraintRegistry.setConstraints(B0t(this.constraintRegistry.getConstraintsAsText().split(` +`),UX.buildTree(this.localModelSource,this.labelTypeRegistry),h));return f.root}undo(f){return f.root}redo(f){return f.root}iterateForPorts(f){if(f instanceof pA)for(const h of this.action.replacements)f.setBehavior(B0t(f.getBehavior().split(` +`),NL.buildTree(f,this.labelTypeRegistry),h).join(` +`));for(const h of f.children)this.iterateForPorts(h)}};eye=CYt([jX(0,Et(de.TYPES.Action)),jX(1,Et(Qd)),jX(2,Et(Zd)),jX(3,Et(de.TYPES.ModelSource))],eye);var Pl=z3(),IYt=Object.getOwnPropertyDescriptor,TYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?IYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Cve=(f,h)=>(b,w)=>h(b,w,f);let hS=class extends RM{constructor(f,h,b){super("left","down"),this.labelTypeRegistry=f,this.actionDispatcher=h,this.editorModeController=b,f.onUpdate(()=>this.renderLabelTypes())}static ID="label-type-editor-ui";labelSectionContainer;id(){return hS.ID}containerClass(){return hS.ID}initializeHidableContent(f){const h=CX.buildAddButton("Label Type");h.onclick=()=>{this.editorModeController.isReadOnly()||this.labelTypeRegistry.registerLabelType("")},this.labelSectionContainer=document.createElement("div"),this.renderLabelTypes(),f.appendChild(this.labelSectionContainer),f.appendChild(h)}initializeHeaderContent(f){f.innerText="Label Types"}renderLabelTypes(){if(!this.labelSectionContainer)return;const f=this.labelSectionContainer.scrollWidth,h=this.labelSectionContainer.scrollHeight;this.labelSectionContainer.style.width=`${f}px`,this.labelSectionContainer.style.height=`${h}px`;const b=document.createDocumentFragment(),w=this.labelTypeRegistry.getLabelTypes();for(let m=0;mthis.onInputHandler(g,b),PX(b),setTimeout(()=>PX(b),0),b.onchange=()=>{if(this.editorModeController.isReadOnly())return;const g=f.values.map(E=>({old:`${f.name}.${E}`,replacement:`${b.value}.${E}`,type:"label"}));this.labelTypeRegistry.updateLabelTypeName(f.id,b.value),this.actionDispatcher.dispatch(FL.create(g))},b.onfocus=()=>{this.editorModeController.isReadOnly()&&b.blur()};for(let g=0;g{this.editorModeController.isReadOnly()||this.labelTypeRegistry.registerLabelTypeValue(f.id,"")},w.onclick=()=>{this.editorModeController.isReadOnly()||this.labelTypeRegistry.unregisterLabelType(f.id)},h.appendChild(b),h.appendChild(w),h.appendChild(m),h.appendChild(P),h}buildLabelTypeValue(f,h){const b=document.createElement("div");b.classList.add("label-type-value");const w=document.createElement("input");w.classList.add("label-type-value-name");const m=CX.buildDeleteButton(),P=f.values[h];return w.value=P.text,w.placeholder="Value",w.oninput=g=>this.onInputHandler(g,w),w.style.width="0px",setTimeout(()=>PX(w),0),w.onchange=()=>{if(this.editorModeController.isReadOnly())return;const g=[{old:`${f.name}.${P.text}`,replacement:`${f.name}.${w.value}`,type:"label"}];this.labelTypeRegistry.updateLabelTypeValueText(f.id,P.id,w.value),this.actionDispatcher.dispatch(FL.create(g))},m.onclick=()=>{this.editorModeController.isReadOnly()||this.labelTypeRegistry.unregisterLabelTypeValue(f.id,P.id)},w.draggable=!0,w.ondragstart=g=>{if(this.editorModeController.isReadOnly())return;const E={labelTypeId:f.id,labelTypeValueId:P.id},C=JSON.stringify(E);g.dataTransfer?.setData(hmt,C)},w.onclick=()=>{this.editorModeController.isReadOnly()||w.getAttribute("clicked")!=="true"&&(w.setAttribute("clicked","true"),setTimeout(()=>{w.getAttribute("clicked")==="true"&&(this.actionDispatcher.dispatch(zX.create({labelTypeId:f.id,labelTypeValueId:P.id})),w.removeAttribute("clicked"))},500))},w.ondblclick=()=>{this.editorModeController.isReadOnly()||(w.removeAttribute("clicked"),w.focus())},w.onfocus=g=>{if(this.editorModeController.isReadOnly()){w.blur();return}w.getAttribute("clicked")!=="true"&&(g.preventDefault(),setTimeout(()=>{w.blur()},0))},b.appendChild(w),b.appendChild(m),b}onInputHandler(f,h){f.data?.match(/^[a-zA-Z0-9]*$/)||f.preventDefault(),PX(h)}keyDown(f,h){return Pl.matchesKeystroke(h,"KeyT")&&this.toggleStatus(),[]}keyUp(){return[]}};hS=TYt([Cve(0,Et(Zd)),Cve(1,Et(de.TYPES.IActionDispatcher)),Cve(2,Et(sc.Mode))],hS);const jYt=new xf((f,h,b)=>{f(Zd).toSelf().inSingletonScope(),f(hS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(hS),f(Db.DefaultUIElement).to(hS),f(de.TYPES.KeyListener).toService(hS),de.configureCommand({bind:f,isBound:b},bA),de.configureCommand({bind:f,isBound:b},eye),f(de.TYPES.MouseListener).to(Wve)});function AYt(f,h){const b=document.createElement("input");b.type="file",b.accept=f.join(","),b.multiple=h>1;const w=new Promise((m,P)=>{b.onchange=()=>{if(!b.files||b.files.length!==h){P("No file selected");return}m(Array.from(b.files))},b.oncancel=()=>{P("Canceled file selection")}});return b.click(),w}function OYt(f){return new Promise((h,b)=>{const w=new FileReader;w.onload=()=>h({fileName:f.name,content:w.result}),w.onerror=()=>b(w.error),w.readAsText(f)})}async function d2e(f,h){const b=await AYt(f,h).catch(()=>[]);return Promise.all(b.map(OYt))}function DYt(f){return d2e(f,1).then(h=>h?h[0]:void 0)}var kYt=Object.getOwnPropertyDescriptor,RYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?kYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},M3=(f,h)=>(b,w)=>h(b,w,f),WX;(f=>{f.KIND="loadDfdAndDdFile";function h(){return{kind:f.KIND}}f.create=h})(WX||(WX={}));let tye=class extends Ey{constructor(f,h,b,w,m,P,g,E,C){super(h,b,w,m,E,P,C),this.dfdWebSocket=g}static KIND=WX.KIND;async getFile(){const f=await d2e([".dataflowdiagram",".datadictionary"],2),h=f.find(m=>m.fileName.endsWith(".dataflowdiagram"))?.content,b=f.find(m=>m.fileName.endsWith(".datadictionary"))?.content;if(!h||!b)return;const w=this.fileName.getName();return this.fileName.setName(f[0].fileName),this.dfdWebSocket.requestDiagram("DFD:"+h+` +:DD: +`+b).catch(m=>{throw this.fileName.setName(w),m})}};tye=RYt([M3(0,Et(de.TYPES.Action)),M3(1,Et(de.TYPES.ILogger)),M3(2,Et(Zd)),M3(3,Et(Qd)),M3(4,Et(sc.Mode)),M3(5,Et(Ty)),M3(6,Et(Sy)),M3(7,Et(de.TYPES.IActionDispatcher)),M3(8,Et(Jd))],tye);var xYt=Object.getOwnPropertyDescriptor,LYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?xYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},sS=(f,h)=>(b,w)=>h(b,w,f),BL;(f=>{f.KIND="loadJsonFile";function h(){return{kind:f.KIND}}f.create=h})(BL||(BL={}));let nye=class extends Ey{static KIND=BL.KIND;constructor(f,h,b,w,m,P,g,E){super(h,b,w,m,P,g,E)}async getFile(){const f=await DYt(["application/json"]);if(f)return this.fileName.setName(f.fileName),{fileName:f.fileName,content:JSON.parse(f.content)}}};nye=LYt([sS(0,Et(de.TYPES.Action)),sS(1,Et(de.TYPES.ILogger)),sS(2,Et(Zd)),sS(3,Et(Qd)),sS(4,Et(sc.Mode)),sS(5,Et(de.TYPES.IActionDispatcher)),sS(6,Et(Ty)),sS(7,Et(Jd))],nye);var NYt=Object.getOwnPropertyDescriptor,FYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?NYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},C3=(f,h)=>(b,w)=>h(b,w,f),YX;(f=>{f.KIND="loadPcmFile";function h(){return{kind:f.KIND}}f.create=h})(YX||(YX={}));let hA=class extends Ey{constructor(f,h,b,w,m,P,g,E,C){super(h,b,w,m,P,g,C),this.dfdWebSocket=E}static KIND=YX.KIND;static FILE_ENDINGS=[".pddc",".allocation",".nodecharacteristics",".repository",".resourceenvironment",".system",".usagemodel"];async getFile(){const f=await d2e(hA.FILE_ENDINGS,hA.FILE_ENDINGS.length);if(hA.FILE_ENDINGS.some(b=>!f.find(w=>w.fileName.endsWith(b))))throw new Error("Please select one file of each required type: .pddc, .allocation, .nodecharacteristics, .repository, .resourceenvironment, .system, .usagemodel");const h=this.fileName.getName();return this.fileName.setName(f[0].fileName),this.dfdWebSocket.requestDiagram(f.map(b=>`${b.fileName}:${b.content}`).join("---FILE---")).catch(b=>{throw this.fileName.setName(h),b})}};hA=FYt([C3(0,Et(de.TYPES.Action)),C3(1,Et(de.TYPES.ILogger)),C3(2,Et(Zd)),C3(3,Et(Qd)),C3(4,Et(sc.Mode)),C3(5,Et(de.TYPES.IActionDispatcher)),C3(6,Et(Ty)),C3(7,Et(Sy)),C3(8,Et(Jd))],hA);var BYt=Object.getOwnPropertyDescriptor,$Yt=(f,h,b,w)=>{for(var m=w>1?void 0:w?BYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let iye=class extends de.SModelFactory{createElement(f,h){if(f instanceof de.SModelElementImpl)return super.createElement(f,h);if(f.type==="node:storage"||f.type==="node:function"||f.type==="node:input-output"){const w=f;f.children=f.children??[];for(const m of w.ports)"features"in m&&delete m.features;f.children.push(...w.ports,{type:"label:positional",text:w.text??"",id:f.id+"-label"})}if(f.type==="edge:arrow"){const w=f;f.children=f.children??[],f.children.push({type:"label:filled-background",text:w.text??"",id:f.id+"-label",edgePlacement:{position:.5,side:"on",rotate:!1}})}"features"in f&&delete f.features;const b=super.createElement(f,h);return b.features===void 0&&(b.features=new Set),b}createSchema(f){const h=super.createSchema(f);if(h.type==="node:storage"||h.type==="node:function"||h.type==="node:input-output"){const b=h,w=b.children?.filter(P=>mg.getBasicType(P)==="port")??[];b.ports=w;const m=h.children?.find(P=>P.type==="label:positional");return m&&(b.text=m.text),b.children=[],b}if(h.type==="edge:arrow"){const b=h,w=h.children?.find(m=>m.type==="label:filled-background");return w&&(b.text=w.text),b.children=[],b}return h}};iye=$Yt([vr()],iye);const gmt=1;class KYt extends de.Command{constructor(h,b,w){super(),this.labelTypeRegistry=h,this.constraintRegistry=b,this.editorModeController=w}createSavedDiagram(h){return{model:h.modelFactory.createSchema(h.root),labelTypes:this.labelTypeRegistry.getLabelTypes(),constraints:this.constraintRegistry.getConstraintList(),mode:this.editorModeController.get(),version:gmt}}}class bmt extends KYt{constructor(h,b,w,m){super(h,b,w),this.loadingIndicator=m}async execute(h){this.loadingIndicator.showIndicator("Saving diagram...");const b=await this.getFiles(h);for(const w of b)this.downloadFile(w);return this.loadingIndicator.hide(),h.root}undo(h){return h.root}redo(h){return h.root}downloadFile(h){const b=document.createElement("a"),w=new Blob([h.content],{type:"application/json"});b.href=URL.createObjectURL(w),b.download=h.fileName,b.click(),URL.revokeObjectURL(b.href),b.remove()}}var qYt=Object.getOwnPropertyDescriptor,HYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?qYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},cA=(f,h)=>(b,w)=>h(b,w,f),$L;(f=>{f.KIND="saveJsonFile";function h(){return{kind:f.KIND}}f.create=h})($L||($L={}));let rye=class extends bmt{constructor(f,h,b,w,m,P){super(h,b,w,P),this.fileName=m}static KIND=$L.KIND;getFiles(f){const h={fileName:this.fileName.getName()+".json",content:JSON.stringify(this.createSavedDiagram(f))};return Promise.resolve([h])}};rye=HYt([cA(0,Et(de.TYPES.Action)),cA(1,Et(Zd)),cA(2,Et(Qd)),cA(3,Et(sc.Mode)),cA(4,Et(Ty)),cA(5,Et(Jd))],rye);var zYt=Object.getOwnPropertyDescriptor,VYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?zYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},jM=(f,h)=>(b,w)=>h(b,w,f),XX;(f=>{f.KIND="saveDfdAndDdFile";function h(){return{kind:f.KIND}}f.create=h})(XX||(XX={}));let KL=class extends bmt{constructor(f,h,b,w,m,P,g){super(h,b,w,g),this.dfdWebSocket=m,this.fileName=P}static KIND=XX.KIND;static CLOSING_TAG="";async getFiles(f){const h=this.createSavedDiagram(f),b=await this.dfdWebSocket.sendMessage("Json2DFD:"+JSON.stringify(h)),w=b.indexOf(KL.CLOSING_TAG)+KL.CLOSING_TAG.length,m=b.substring(0,w).trim(),P=b.substring(w).trim(),g=this.fileName.getName();return Promise.resolve([{fileName:g+".dataflowdiagram",content:m},{fileName:g+".datadictionary",content:P}])}};KL=VYt([jM(0,Et(de.TYPES.Action)),jM(1,Et(Zd)),jM(2,Et(Qd)),jM(3,Et(sc.Mode)),jM(4,Et(Sy)),jM(5,Et(Ty)),jM(6,Et(Jd))],KL);var GYt=Object.getOwnPropertyDescriptor,UYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?GYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let qL=class{violations=[];listeners=[];updateViolations(f){this.violations=f,this.listeners.forEach(h=>h(this.violations))}onViolationsChanged(f){this.listeners.push(f)}getViolations(){return this.violations}};qL=UYt([vr()],qL);var WYt=Object.getOwnPropertyDescriptor,YYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?WYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},yy=(f,h)=>(b,w)=>h(b,w,f),HL;(f=>{f.KIND="analyze";function h(){return{kind:f.KIND}}f.create=h})(HL||(HL={}));let oye=class extends Ey{constructor(f,h,b,w,m,P,g,E,C,T){super(h,b,w,m,E,P,C),this.dfdWebSocket=g,this.violationService=T}static KIND=HL.KIND;async getFile(f){const h={model:f.modelFactory.createSchema(f.root),labelTypes:this.labelTypeRegistry.getLabelTypes(),constraints:this.constraintRegistry.getConstraintList(),mode:this.editorModeController.get(),version:gmt},b=await this.dfdWebSocket.requestDiagram("Json:"+JSON.stringify(h));if(b&&b.content){const w=b.content.violations||[];this.violationService.updateViolations(w),b.content.violations=w}return b}};oye=YYt([yy(0,Et(de.TYPES.Action)),yy(1,Et(de.TYPES.ILogger)),yy(2,Et(Zd)),yy(3,Et(Qd)),yy(4,Et(sc.Mode)),yy(5,Et(Ty)),yy(6,Et(Sy)),yy(7,Et(de.TYPES.IActionDispatcher)),yy(8,Et(Jd)),yy(9,Et(qL))],oye);const XYt=new xf((f,h,b,w)=>{const m={bind:f,unbind:h,isBound:b,rebind:w};de.configureCommand(m,Fve),de.configureCommand(m,nye),de.configureCommand(m,tye),de.configureCommand(m,hA),de.configureCommand(m,Bve),de.configureCommand(m,rye),de.configureCommand(m,KL),de.configureCommand(m,oye),w(de.TYPES.IModelFactory).to(iye)});var JYt=Object.defineProperty,QYt=Object.getOwnPropertyDescriptor,ZYt=(f,h,b)=>h in f?JYt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,pmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?QYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},eXt=(f,h)=>(b,w)=>h(b,w,f),g2e=(f,h,b)=>ZYt(f,typeof h!="symbol"?h+"":h,b);let pg=class extends jy{noLabelHeight(){return pg.TEXT_HEIGHT}labelStartHeight(){return pg.LABEL_START_HEIGHT}calculateWidth(){return super.calculateWidth()+pg.LEFT_PADDING}};g2e(pg,"TEXT_HEIGHT",32);g2e(pg,"LABEL_START_HEIGHT",28);g2e(pg,"LEFT_PADDING",10);pg=pmt([vr()],pg);let cye=class extends de.ShapeView{constructor(f){super(),this.labelRenderer=f}render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds,m=pg.LEFT_PADDING/2;return de.svg("g",{"class-sprotty-node":!0,"class-storage":!0,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w,stroke:"red"}),de.svg("line",{x1:pg.LEFT_PADDING,y1:"0",x2:pg.LEFT_PADDING,y2:w}),h.renderChildren(f,{xPosition:b/2+m,yPosition:pg.TEXT_HEIGHT/2}),this.labelRenderer.renderNodeLabels(f,pg.LABEL_START_HEIGHT,m))}};cye=pmt([vr(),eXt(0,Et(Rf))],cye);var tXt=Object.getOwnPropertyDescriptor,nXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?tXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},iXt=(f,h)=>(b,w)=>h(b,w,f);class _y extends jy{static TEXT_HEIGHT=28;static SEPARATOR_NO_LABEL_PADDING=4;static SEPARATOR_LABEL_PADDING=4;static LABEL_START_HEIGHT=this.TEXT_HEIGHT+this.SEPARATOR_LABEL_PADDING;static BORDER_RADIUS=5;noLabelHeight(){return _y.LABEL_START_HEIGHT+_y.SEPARATOR_NO_LABEL_PADDING}labelStartHeight(){return _y.LABEL_START_HEIGHT}}let sye=class extends de.ShapeView{constructor(f){super(),this.labelRenderer=f}render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds,m=_y.BORDER_RADIUS;return de.svg("g",{"class-sprotty-node":!0,"class-function":!0,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w,rx:m,ry:m}),de.svg("line",{x1:"0",y1:_y.TEXT_HEIGHT,x2:b,y2:_y.TEXT_HEIGHT}),h.renderChildren(f,{xPosition:b/2,yPosition:_y.TEXT_HEIGHT/2}),this.labelRenderer.renderNodeLabels(f,_y.LABEL_START_HEIGHT))}};sye=nXt([vr(),iXt(0,Et(Rf))],sye);var rXt=Object.defineProperty,oXt=Object.getOwnPropertyDescriptor,cXt=(f,h,b)=>h in f?rXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,wmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?oXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},sXt=(f,h)=>(b,w)=>h(b,w,f),mmt=(f,h,b)=>cXt(f,typeof h!="symbol"?h+"":h,b);let B3=class extends jy{noLabelHeight(){return B3.TEXT_HEIGHT}labelStartHeight(){return B3.LABEL_START_HEIGHT}};mmt(B3,"TEXT_HEIGHT",32);mmt(B3,"LABEL_START_HEIGHT",28);B3=wmt([vr()],B3);let uye=class extends de.ShapeView{constructor(f){super(),this.labelRenderer=f}render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds;return de.svg("g",{"class-sprotty-node":!0,"class-io":!0,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w}),h.renderChildren(f,{xPosition:b/2,yPosition:B3.TEXT_HEIGHT/2}),this.labelRenderer.renderNodeLabels(f,B3.LABEL_START_HEIGHT))}};uye=wmt([vr(),sXt(0,Et(Rf))],uye);var uXt=Object.getOwnPropertyDescriptor,aXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?uXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let aye=class extends de.ShapeView{getPosition(f,h){if(h&&"xPosition"in h&&"yPosition"in h)return{x:h.xPosition,y:h.yPosition};{const b=f.parent?.bounds,w=b?.width??0,m=b?.height??0;return{x:w/2,y:m/2}}}render(f,h,b){const w=this.getPosition(f,b);return de.svg("text",{"class-sprotty-label":!0,x:w.x,y:w.y},f.text)}};aye=aXt([vr()],aye);var lXt=Object.defineProperty,fXt=Object.getOwnPropertyDescriptor,hXt=(f,h,b)=>h in f?lXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,dXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?fXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},gXt=(f,h,b)=>hXt(f,h+"",b);let wA=class extends de.ShapeView{render(f,h){if(!this.isVisible(f,h))return;const b=uN(f.text),w=b.width+wA.PADDING,m=b.height+wA.PADDING;return de.svg("g",{"class-label-background":!0},f.text?de.svg("rect",{x:-w/2,y:-m/2,width:w,height:m}):void 0,de.svg("text",{"class-sprotty-label":!0},f.text))}};gXt(wA,"PADDING",5);wA=dXt([vr()],wA);var bXt=Object.getOwnPropertyDescriptor,pXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?bXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let lye=class{cssClass="label-validation-results";decorate(f,h){const b=f.parentElement;if(b&&h.severity!=="ok"){const w=document.createElement("span");w.innerText=h.message??h.severity,w.classList.add(this.cssClass),w.style.top=`${f.clientHeight}px`,b.appendChild(w)}}dispose(f){const h=f.parentElement;h&&h.querySelector(`span.${this.cssClass}`)?.remove()}};lye=pXt([vr()],lye);var wXt=Object.getOwnPropertyDescriptor,mXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?wXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let fye=class{async validate(f,h){if(!(h instanceof de.SChildElementImpl))return{severity:"ok"};const b=h.parent;if(!(b instanceof de.SEdgeImpl))return{severity:"ok"};if(f.includes(" "))return{severity:"error",message:"Input name cannot contain spaces"};if(f.includes(","))return{severity:"error",message:"Input name cannot contain commas"};if(f.length==0)return{severity:"error",message:"Input name cannot be empty"};const w=b,m=w.target;return m instanceof gA?m.parent.getEdgeTexts(C=>C.id!==w.id).find(C=>C.toLowerCase()===f.toLowerCase())?{severity:"error",message:"Input name already used"}:{severity:"ok"}:{severity:"ok"}}};fye=mXt([vr()],fye);class K0t extends de.EditLabelUI{onBeforeShow(h,b,...w){super.onBeforeShow(h,b,...w),(window.scrollX!==0||window.scrollY!==0)&&window.scrollTo(0,0)}}var dS=(f=>(f.INCOMING="Incoming",f.OUTGOING="Outgoing",f.ALL="All",f))(dS||{});class vXt extends SJ{constructor(){super("All")}}var yXt=Object.defineProperty,_Xt=Object.getOwnPropertyDescriptor,EXt=(f,h,b)=>h in f?yXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,vmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?_Xt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},hye=(f,h)=>(b,w)=>h(b,w,f),SXt=(f,h,b)=>EXt(f,h+"",b);let zL=class extends de.MouseListener{constructor(f){super(),this.actionDispatcher=f}stillTimeout;lastTarget;lastPosition={x:0,y:0};mouseMove(f,h){const b=this.findDfdNode(f);return b?(this.lastPosition={x:h.clientX,y:h.clientY},b===this.lastTarget?[]:(this.stillTimeout=setTimeout(()=>{this.stillTimeout=void 0,b.opacity===1&&this.showPopup(b)},500),this.lastTarget!==b?(this.lastTarget=b,this.hidePopup()):[])):(this.stillTimeout&&(clearTimeout(this.stillTimeout),this.stillTimeout=void 0),this.hidePopup())}findDfdNode(f){return f instanceof jy?f:f instanceof de.SChildElementImpl&&f.parent?this.findDfdNode(f.parent):void 0}showPopup(f){f.annotations&&this.actionDispatcher.dispatch(de.SetUIExtensionVisibilityAction.create({extensionId:yS.ID,visible:!0,contextElementsId:[f.id]}))}hidePopup(){return[de.SetUIExtensionVisibilityAction.create({extensionId:yS.ID,visible:!1})]}getMousePosition(){return this.lastPosition}};zL=vmt([hye(0,Et(de.TYPES.IActionDispatcher))],zL);let yS=class extends de.AbstractUIExtension{constructor(f,h){super(),this.mouseListener=f,this.shownLabels=h}annotationParagraph=document.createElement("p");id(){return yS.ID}containerClass(){return this.id()}initializeContents(f){f.classList.add("ui-float"),f.appendChild(this.annotationParagraph)}onBeforeShow(f,h,...b){if(b.length!==1){this.annotationParagraph.innerText="UI Error: Expected exactly one context element id, but got "+b.length;return}const w=h.index.getById(b[0]);if(!(w instanceof jy)){this.annotationParagraph.innerText="UI Error: Expected context element to be a DfdNodeImpl, but got "+w;return}this.annotationParagraph.innerText="";const m=this.mouseListener.getMousePosition(),P={x:m.x-2,y:m.y-2};f.style.left=`${P.x}px`,f.style.top=`${P.y}px`,f.style.overflowY="auto",this.annotationParagraph.style.whiteSpace="normal",this.annotationParagraph.style.wordBreak="break-word";const g=window.innerWidth,E=window.innerHeight;if(f.style.maxWidth=`${Math.max(g-P.x-50,100)}px`,f.style.maxHeight=`${Math.max(E-P.y-50,50)}px`,!w.annotations||w.annotations.length==0){this.annotationParagraph.innerText="No errors";return}this.annotationParagraph.innerHTML="";const C=this.shownLabels.get();w.annotations.forEach(T=>{if((C===dS.INCOMING||C===dS.ALL)&&T.message.trim().startsWith("Incoming")||(C===dS.OUTGOING||C===dS.ALL)&&T.message.trim().startsWith("Propagated")||T.message.startsWith("Constraint")){const M=document.createElement("div");if(M.style.display="flex",M.style.alignItems="center",M.style.gap="6px",T.icon){const I=document.createElement("i");I.classList.add("fa",`fa-${T.icon}`),M.appendChild(I)}const _=document.createElement("span");_.innerText=T.message,M.appendChild(_),this.annotationParagraph.appendChild(M)}})}};SXt(yS,"ID","dfd-node-annotation-ui");yS=vmt([vr(),hye(0,Et(zL)),hye(1,Et(sc.ShownLabels))],yS);const PXt=new xf((f,h,b,w)=>{const m={bind:f,unbind:h,isBound:b,rebind:w};f(de.TYPES.IEditLabelValidator).to(fye).inSingletonScope(),f(de.TYPES.IEditLabelValidationDecorator).to(lye).inSingletonScope(),de.configureActionHandler(m,de.EditLabelAction.KIND,de.EditLabelActionHandler),f(K0t).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(K0t),f(de.TYPES.ISnapper).to(Hve).inSingletonScope(),f(de.TYPES.MouseListener).to(GWt).inSingletonScope(),de.configureCommand(m,LL),f(yS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(yS),f(zL).toSelf().inSingletonScope(),f(de.TYPES.MouseListener).toService(zL),de.configureModelElement(m,"graph",de.SGraphImpl,de.SGraphView),de.configureModelElement(m,"node:storage",pg,cye),de.configureModelElement(m,"node:function",_y,sye),de.configureModelElement(m,"node:input-output",B3,uye),de.configureModelElement(m,"edge:arrow",a2e,qve,{enable:[de.withEditLabelFeature]}),de.configureModelElement(m,"routing-point",de.SRoutingHandleImpl,HX),de.configureModelElement(m,"volatile-routing-point",de.SRoutingHandleImpl,HX),de.configureModelElement(m,"port:dfd-input",gA,KWt),de.configureModelElement(m,"port:dfd-output",pA,Zve),de.configureModelElement(m,"label",de.SLabelImpl,de.SLabelView,{enable:[de.editLabelFeature]}),de.configureModelElement(m,"label:positional",de.SLabelImpl,aye,{enable:[de.editLabelFeature]}),de.configureModelElement(m,"label:filled-background",de.SLabelImpl,wA,{enable:[de.editLabelFeature]}),f(Rf).toSelf().inSingletonScope()}),MXt=new xf(f=>{f(Sy).toSelf().inSingletonScope()});var CXt=Object.getOwnPropertyDescriptor,IXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?CXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let JX=class{async getActions(f){const h=xL.create(f),b=de.CommitModelAction.create();return[new lS("Load",[new de.LabeledAction("Load diagram from JSON",[BL.create(),b],"json"),new de.LabeledAction("Load DFD and DD",[WX.create(),b],"coffee"),new de.LabeledAction("Load Palladio",[YX.create(),b],"fa-puzzle-piece")],"go-to-file"),new lS("Save",[new de.LabeledAction("Save diagram as JSON",[$L.create()],"json"),new de.LabeledAction("Save diagram as DFD and DD",[XX.create()],"coffee")],"save"),new de.LabeledAction("Load default diagram",[dA.create(),b],"clear-all"),new de.LabeledAction("Fit to Screen",[h],"screen-normal"),new lS("Layout diagram (Method: Lines)",[new de.LabeledAction("Layout: Lines",[D3.create(Xd.LINES),b,h],"grabber"),new de.LabeledAction("Layout: Wrapping Lines",[D3.create(Xd.WRAPPING),b,h],"word-wrap"),new de.LabeledAction("Layout: Circles",[D3.create(Xd.CIRCLES),b,h],"circle-large")],"layout",[D3.create(Xd.LINES),b,h])]}};JX=IXt([vr()],JX);class lS extends de.LabeledAction{constructor(h,b,w,m=[]){super(h,m,w),this.children=b}}var TXt=Object.defineProperty,jXt=Object.getOwnPropertyDescriptor,AXt=(f,h,b)=>h in f?TXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,OXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?jXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},DXt=(f,h,b)=>AXt(f,h+"",b);let mA=class extends de.CommandPalette{suggestionElement;index=-1;childIndex=-1;insideChild=!1;actions=[];filteredActions=[];initializeContents(f){f.style.position="absolute",f.style.top="100px",f.style.left="100px",this.inputElement=document.createElement("input"),this.inputElement.style.width="100%",this.inputElement.addEventListener("keydown",h=>this.processKeyStrokeInInput(h)),this.inputElement.addEventListener("input",()=>this.updateSuggestions()),this.inputElement.onblur=()=>window.setTimeout(()=>this.hide(),200),this.suggestionElement=document.createElement("div"),this.suggestionElement.className="command-palette-suggestions-holder",f.appendChild(this.inputElement),f.appendChild(this.suggestionElement)}show(f,...h){super.show(f,...h),this.autoCompleteResult.destroy(),this.index=-1,this.childIndex=-1,this.insideChild=!1,this.filteredActions=[],this.actions=[],this.suggestionElement.innerHTML="",this.inputElement.value="",this.inputElement.focus(),this.actionProviderRegistry.getActions(f,"",this.mousePositionTracker.lastPositionOnDiagram).then(b=>this.actions=b).then(()=>this.updateSuggestions())}updateSuggestions(){if(!this.suggestionElement)return;this.suggestionElement.innerHTML="";const f=this.inputElement.value.toLowerCase();this.filteredActions=[];for(const h of this.actions){if(this.matchFilter(h,f)){this.filteredActions.push(h);continue}if(h instanceof lS){const b=h.children.filter(w=>this.matchFilter(w,f));if(b.length>0){this.filteredActions.push(new lS(h.label,b,h.icon));continue}}}this.index>=this.filteredActions.length&&(this.index=-1);for(const[h,b]of this.filteredActions.entries()){const w=this.renderSuggestion(b);h===this.index&&(w.classList.add("expanded"),this.insideChild||w.classList.add("selected")),this.suggestionElement.appendChild(w)}}renderSuggestion(f){const h=document.createElement("div");h.className="command-palette-suggestion";const b=document.createElement("span");b.className=this.getIconClasses(f.icon),h.appendChild(b);const w=document.createElement("span");w.className="command-palette-suggestion-label",w.innerText=f.label,h.appendChild(w);const m=document.createElement("span");if(h.appendChild(m),f instanceof lS){m.className="codicon codicon-chevron-right",h.appendChild(m);const P=document.createElement("div");P.className="command-palette-suggestion-children";for(const[g,E]of f.children.entries()){const C=this.renderSuggestion(E);this.insideChild&&this.childIndex===g&&C.classList.add("selected"),P.appendChild(C)}h.appendChild(P)}return h.addEventListener("click",()=>{f instanceof lS||this.executeAction(f)}),h}getIconClasses(f){return f?f.startsWith("fa-")?"fa-solid "+f:f.startsWith("codicon-")?"codicon "+f:"codicon codicon-"+f:"codicon codicon-gear"}matchFilter(f,h){return f.label.toLowerCase().includes(h)}id(){return mA.ID}containerClass(){return mA.ID}processKeyStrokeInInput(f){Pl.matchesKeystroke(f,"Escape")&&this.hide(),Pl.matchesKeystroke(f,"ArrowDown")&&(this.insideChild?this.childIndex=(this.childIndex+1)%this.filteredActions[this.index].children.length:this.index===-1?this.index=0:this.index=(this.index+1)%this.suggestionElement.children.length),Pl.matchesKeystroke(f,"ArrowUp")&&(this.insideChild?this.childIndex=(this.childIndex-1+this.filteredActions[this.index].children.length)%this.filteredActions[this.index].children.length:this.index===-1?this.index=this.suggestionElement.children.length-1:this.index=(this.index-1+this.suggestionElement.children.length)%this.suggestionElement.children.length),Pl.matchesKeystroke(f,"ArrowRight")&&!this.insideChild&&this.filteredActions[this.index]instanceof lS&&(f.preventDefault(),this.insideChild=!0,this.childIndex=0),Pl.matchesKeystroke(f,"ArrowLeft")&&this.insideChild&&(f.preventDefault(),this.insideChild=!1,this.childIndex=-1),Pl.matchesKeystroke(f,"Enter")&&(this.insideChild?this.executeAction(this.filteredActions[this.index].children[this.childIndex]):this.index!==-1&&this.executeAction(this.filteredActions[this.index]),this.hide()),this.updateSuggestions()}executeAction(f){this.actionDispatcherProvider().then(h=>h.dispatchAll(f.actions)).catch(h=>this.logger.error(this,"No action dispatcher available to execute command palette action",h))}};DXt(mA,"ID","command-palette");mA=OXt([vr()],mA);class kXt extends de.CommandStack{isPushToUndoStack(h){return!(h instanceof de.HiddenCommand||h instanceof de.SelectCommand||h instanceof de.SetViewportCommand||h instanceof de.BringToFrontCommand||h instanceof de.FitToScreenCommand||h instanceof de.CenterCommand)}}const RXt=new xf((f,h,b,w)=>{w(de.CommandPalette).to(mA).inSingletonScope(),f(JX).toSelf().inSingletonScope(),f(de.TYPES.ICommandPaletteActionProvider).toService(JX),w(de.TYPES.ICommandStack).to(kXt).inSingletonScope()});class xXt extends de.KeyListener{keyDown(h,b){return Pl.matchesKeystroke(b,"KeyL","ctrlCmd")?(b.preventDefault(),[D3.create(Xd.LINES),de.CommitModelAction.create(),xL.create(h.root)]):[]}}const LXt=new xf((f,h,b,w)=>{f($X).toSelf().inSingletonScope(),f(de.TYPES.IModelLayoutEngine).toService($X),f(x3).to(x3),w(R3.ILayoutConfigurator).to(x3),f(R3.ILayoutPostprocessor).to(Lve).inSingletonScope(),f(R3.ElkFactory).toConstantValue(iWt),f(de.TYPES.KeyListener).to(xXt).inSingletonScope();const m={bind:f,unbind:h,isBound:b,rebind:w};de.configureCommand(m,Nve)}),NXt=new xf(f=>{f(Ty).toSelf().inSingletonScope()});var FXt=Object.defineProperty,BXt=Object.getOwnPropertyDescriptor,$Xt=(f,h,b)=>h in f?FXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,KXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?BXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},IL=(f,h)=>(b,w)=>h(b,w,f),qXt=(f,h,b)=>$Xt(f,h+"",b);let wS=class extends RM{constructor(f,h,b,w,m){super("right","up"),this.themeManager=f,this.shownLabels=h,this.hideEdgeNames=b,this.simplifyNodeNames=w,this.editorModeController=m}id(){return wS.ID}containerClass(){return wS.ID}initializeHidableContent(f){const h=document.createElement("div");h.id="settings-content",f.appendChild(h),this.addDropDown(h,"Theme",this.themeManager,[DM.SYSTEM_DEFAULT,DM.LIGHT,DM.DARK]),this.addDropDown(h,"Shown Labels",this.shownLabels,[dS.INCOMING,dS.OUTGOING,dS.ALL]),this.addBooleanSwitch(h,"Hide Edge Names",this.hideEdgeNames),this.addBooleanSwitch(h,"Simplify Node Names",this.simplifyNodeNames),this.addSwitch(h,"Read Only",this.editorModeController,{true:"view",false:"edit"})}initializeHeaderContent(f){f.classList.add("settings-accordion-icon"),f.innerText="Settings"}addBooleanSwitch(f,h,b){this.addSwitch(f,h,b,{true:!0,false:!1})}addSwitch(f,h,b,w){const m={[w.true.toString()]:!0,[w.false.toString()]:!1},P=document.createElement("label");P.textContent=h,P.htmlFor=`setting-${h.toLowerCase().replace(/\s+/g,"-")}`;const g=document.createElement("label");g.classList.add("switch");const E=document.createElement("input");E.type="checkbox",E.id=`setting-${h.toLowerCase().replace(/\s+/g,"-")}`,E.checked=m[b.get().toString()],g.appendChild(E);const C=document.createElement("span");C.classList.add("slider","round"),g.appendChild(C),f.appendChild(P),f.appendChild(g),g.addEventListener("change",()=>{b.set(w[E.checked?"true":"false"])}),b.registerListener(T=>{E.checked=m[T.toString()]})}addDropDown(f,h,b,w){const m=document.createElement("label");m.textContent=h,m.htmlFor=`setting-${h.toLowerCase().replace(/\s+/g,"-")}`;const P=document.createElement("select");for(const g of w){const E=document.createElement("option");E.value=g.toString(),E.innerText=g.toString(),P.appendChild(E)}P.value=b.get().toString(),P.onchange=()=>{const g=w.find(E=>E.toString()===P.value);g&&b.set(g)},f.appendChild(m),f.appendChild(P)}};qXt(wS,"ID","settings-ui");wS=KXt([vr(),IL(0,Et(sc.Theme)),IL(1,Et(sc.ShownLabels)),IL(2,Et(sc.HideEdgeNames)),IL(3,Et(sc.SimplifyNodeNames)),IL(4,Et(sc.Mode))],wS);class HXt extends SJ{constructor(){super("edit")}setDefault(){this.set("edit")}isReadOnly(){return this.get()!=="edit"}}const zXt=new xf((f,h,b)=>{f(wS).toSelf().inSingletonScope(),f(Db.DefaultUIElement).toService(wS),f(de.TYPES.IUIExtension).toService(wS),f(sc.Theme).to(fA).inSingletonScope(),f(sc.HideEdgeNames).to(N0t).inSingletonScope(),f(sc.SimplifyNodeNames).to(N0t).inSingletonScope(),f(sc.Mode).to(HXt).inSingletonScope(),f(sc.ShownLabels).to(vXt).inSingletonScope();const w={bind:f,isBound:b};de.configureCommand(w,xWt),de.configureCommand(w,Gve),f(VX).toSelf().inSingletonScope()});var ymt=Object.defineProperty,VXt=Object.getOwnPropertyDescriptor,GXt=(f,h,b)=>h in f?ymt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,PJ=(f,h,b,w)=>{for(var m=w>1?void 0:w?VXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&ymt(h,b,m),m},aS=(f,h)=>(b,w)=>h(b,w,f),UXt=(f,h,b)=>GXt(f,h+"",b);let VL=class extends de.MouseListener{constructor(f,h,b,w,m,P,g){super(),this.mouseTool=f,this.mousePositionTracker=h,this.modelFactory=b,this.actionDispatcher=w,this.commandStack=m,this.snapper=P,this.logger=g}element;previewOpacity=.5;insertIntoGraphRootAfterCreation=!0;elementType="";async createElement(){const f=this.createElementSchema();f.opacity??=this.previewOpacity;const h=this.modelFactory.createElement(f);return this.insertIntoGraphRootAfterCreation&&(await this.commandStack.executeAll([])).add(h),h}enable(f){this.elementType=f,this.mouseTool.register(this),this.createElement().then(h=>{this.element=h,this.logger.log(this,"Created element",h),this.mousePositionTracker.lastPositionOnDiagram&&this.updateElementPosition(this.mousePositionTracker.lastPositionOnDiagram)}).catch(h=>{this.logger.error(this,"Failed to create element",h)})}disable(){if(this.mouseTool.deregister(this),this.element){let f;try{f=this.element.root}catch{}this.element.parent?.remove(this.element),this.element=void 0,f&&this.commandStack.update(f),this.logger.info(this,"Cancelled element creation")}}finishPlacingElement(){if(this.element){const f=this.element.parent;f.remove(this.element),this.element.opacity=1,this.actionDispatcher.dispatch(QX.create(this.element,f)),this.logger.log(this,"Finalized element creation of element",this.element),this.element=void 0}this.disable()}updateElementPosition(f){if(!this.element)return;const h={...f};if(this.element instanceof de.SEdgeImpl)this.element.targetId&&this.element.target&&(mg.Point.equals(this.element.target.position,h)||(this.element.target.position=h,this.commandStack.update(this.element.root)));else{const b=this.element.position;if(this.element instanceof de.SNodeImpl){const{width:m,height:P}=this.element.bounds;h.x-=m/2,h.y-=P/2}else if(this.element instanceof de.SPortImpl){const m=this.element.parent;m instanceof de.SNodeImpl&&(h.x-=m.position.x,h.y-=m.position.y)}const w=this.snapper.snap(h,this.element);mg.Point.equals(b,w)||(this.element.position=w,this.commandStack.update(this.element.root))}}mouseMove(f,h){const b=this.calculateMousePosition(f,h);return this.updateElementPosition(b),[]}mouseDown(f,h){return h.preventDefault(),this.finishPlacingElement(),[de.CommitModelAction.create()]}calculateMousePosition(f,h){const b=f.root,w=m=>{const P=b.scroll[m],E=(m==="x"?h.offsetX:h.offsetY)/b.zoom;return P+E};return{x:w("x"),y:w("y")}}};VL=PJ([vr(),aS(0,Et(de.MouseTool)),aS(1,Et(de.MousePositionTracker)),aS(2,Et(de.TYPES.IModelFactory)),aS(3,Et(de.TYPES.IActionDispatcher)),aS(4,Et(de.TYPES.ICommandStack)),aS(5,Et(de.TYPES.ISnapper)),aS(6,Et(de.TYPES.ILogger))],VL);var QX;(f=>{f.TYPE="addElementToGraph";function h(b,w){return{kind:f.TYPE,element:b,parent:w}}f.create=h})(QX||(QX={}));let ZX=class{constructor(f){this.action=f}execute(f){return this.action.parent.add(this.action.element),f.root}undo(f){return this.action.element.parent.remove(this.action.element),f.root}redo(f){return this.execute(f)}};UXt(ZX,"KIND",QX.TYPE);ZX=PJ([vr(),aS(0,Et(de.TYPES.Action))],ZX);let GL=class extends de.KeyListener{tools=[];keyDown(f,h){return h.key==="Escape"&&this.disableAllTools(),[]}disableAllTools(){this.tools.forEach(f=>f.disable())}};PJ([cJ(Db.CreationTool)],GL.prototype,"tools",2);GL=PJ([vr()],GL);var WXt=Object.getOwnPropertyDescriptor,YXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?WXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let UL=class extends VL{edgeTargetElement;insertIntoGraphRootAfterCreation=!1;createElementSchema(){return{id:L3(),type:this.elementType,sourceId:"",targetId:""}}disable(){this.edgeTargetElement&&(this.edgeTargetElement.parent?.remove(this.edgeTargetElement),this.edgeTargetElement=void 0),super.disable()}mouseDown(f,h){if(!this.element)return[];const b=this.findConnectable(f);if(!b)return[];if(this.element.sourceId){if(b.canConnect(this.element,"target")){this.element.targetId=b.id;const w=super.mouseDown(b,h);return this.disable(),w}}else if(b.canConnect(this.element,"source")){this.element.sourceId=b.id;const w=f.root;w.add(this.element),this.edgeTargetElement=this.modelFactory.createElement({id:L3(),type:"empty-node",position:this.calculateMousePosition(f,h)}),w.add(this.edgeTargetElement),this.element.targetId=this.edgeTargetElement.id}return[]}findConnectable(f){if(de.isConnectable(f))return f;if("parent"in f&&f.parent)return this.findConnectable(f.parent)}};UL=YXt([vr()],UL);var XXt=Object.getOwnPropertyDescriptor,JXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?XXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let WL=class extends VL{createElementSchema(){const f=this.elementType.replace("node:",""),h=f.charAt(0).toUpperCase()+f.slice(1);return{id:L3(),type:this.elementType,text:h,ports:[],labels:[]}}};WL=JXt([vr()],WL);var QXt=Object.getOwnPropertyDescriptor,ZXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?QXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let YL=class extends VL{createElementSchema(){return{id:L3(),type:this.elementType,opacity:0}}mouseMove(f,h){if(!this.element)return[];const b=this.element.parent,w=this.findNodeElement(f);return w?b!==w&&f instanceof de.SChildElementImpl&&(this.element.opacity=this.previewOpacity,b.remove(this.element),f.add(this.element),this.commandStack.update(this.element.root)):b!==f.root&&(this.element.opacity=0,b.remove(this.element),f.root.add(this.element),this.commandStack.update(this.element.root)),super.mouseMove(f,h)}mouseDown(f,h){return this.element?.parent===f.root?(this.disable(),[de.CommitModelAction.create()]):super.mouseDown(f,h)}findNodeElement(f){if(f.type.startsWith("node"))return f;if(f instanceof de.SChildElementImpl&&f.parent instanceof de.SShapeElementImpl)return this.findNodeElement(f.parent)}};YL=ZXt([vr()],YL);var eJt=Object.defineProperty,tJt=Object.getOwnPropertyDescriptor,nJt=(f,h,b)=>h in f?eJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,iJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?tJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},uS=(f,h)=>(b,w)=>h(b,w,f),rJt=(f,h,b)=>nJt(f,h+"",b);let A3=class extends de.AbstractUIExtension{constructor(f,h,b,w,m,P,g){super(),this.actionDispatcher=f,this.patcherProvider=h,this.nodeCreationTool=b,this.edgeCreationTool=w,this.portCreationTool=m,this.allTools=P,this.editorModeController=g}keyboardShortcuts=new Map;id(){return A3.ID}containerClass(){return"tool-palette"}initializeContents(f){f.classList.add("ui-float"),document.addEventListener("keydown",h=>{Pl.matchesKeystroke(h,"Escape")&&this.disableTools()}),this.addTool(f,this.nodeCreationTool,"Storage node",h=>h.enable("node:storage"),de.svg("g",null,de.svg("rect",{x:"10%",y:"20%",width:"80%",height:"60%","stroke-width":"1"}),de.svg("line",{x1:"25%",y1:"20%",x2:"25%",y2:"80%","stroke-width":"1"}),de.svg("text",{x:"55%",y:"50%"},"Sto")),"Digit1"),this.addTool(f,this.nodeCreationTool,"Input/Output node",h=>h.enable("node:input-output"),de.svg("g",null,de.svg("rect",{x:"10%",y:"20%",width:"80%",height:"60%","stroke-width":"1"}),de.svg("text",{x:"50%",y:"50%"},"IO")),"Digit2"),this.addTool(f,this.nodeCreationTool,"Function node",h=>h.enable("node:function"),de.svg("g",null,de.svg("rect",{x:"10%",y:"20%",width:"80%",height:"60%",rx:"20%",ry:"20%"}),de.svg("line",{x1:"10%",y1:"65%",x2:"90%",y2:"65%"}),de.svg("text",{x:"50%",y:"44%"},"Fun")),"Digit3"),this.addTool(f,this.edgeCreationTool,"Edge",h=>h.enable("edge:arrow"),de.svg("g",null,de.svg("path",{d:"M 4,4 L 22,22","attrs-stroke-width":"2"}),de.svg("path",{d:"M 0,0 L -3,3 L 6,6 L 3,-3 Z",transform:"translate(22,22)","attrs-stroke-width":"2","class-fill":!0})),"Digit4"),this.addTool(f,this.portCreationTool,"Input port",h=>h.enable("port:dfd-input"),de.svg("g",null,de.svg("rect",{x:"25%",y:"25%",width:"50%",height:"50%"}),de.svg("text",{x:"50%",y:"50%"},"I")),"Digit5"),this.addTool(f,this.portCreationTool,"Output port",h=>h.enable("port:dfd-output"),de.svg("g",null,de.svg("rect",{x:"25%",y:"25%",width:"50%",height:"50%"}),de.svg("text",{x:"50%",y:"50%"},"O")),"Digit6"),f.classList.add("tool-palette")}addTool(f,h,b,w,m,P){const g=document.createElement("div");g.classList.add("tool"),g.addEventListener("click",()=>{g.classList.contains("active")||this.editorModeController?.isReadOnly()?(h.disable(),g.classList.remove("active")):(this.disableTools(),w(h),g.classList.add("active"))}),f.appendChild(g);const E=document.createElement("div");g.appendChild(E);const C=de.svg("svg",{width:"32",height:"32"},de.svg("title",null,b),m);this.patcherProvider.patcher(E,C);const T=document.createElement("kbd");T.classList.add("shortcut"),T.textContent=P?.replace("Key","").replace("Digit","")??"",g.appendChild(T),P&&(this.keyboardShortcuts.set(P,()=>{g.click()}),P.startsWith("Digit")&&this.keyboardShortcuts.set(P.replace("Digit","Numpad"),()=>{g.click()}))}disableTools(){this.allTools.forEach(f=>f.disable()),this.markAllToolsInactive()}markAllToolsInactive(){this.containerElement&&this.containerElement.childNodes.forEach(f=>{f instanceof HTMLElement&&f.classList.remove("active")})}handle(f){f.kind===de.CommitModelAction.KIND&&this.markAllToolsInactive()}keyDown(f,h){return this.keyboardShortcuts.forEach((b,w)=>{Pl.matchesKeystroke(h,w)&&b()}),[]}keyUp(){return[]}};rJt(A3,"ID","tool-palette");A3=iJt([vr(),uS(0,Et(de.TYPES.IActionDispatcher)),uS(1,Et(de.TYPES.PatcherProvider)),uS(2,Et(WL)),uS(3,Et(UL)),uS(4,Et(YL)),uS(5,cJ(Db.CreationTool)),uS(6,Et(sc.Mode)),uS(6,EVt())],A3);const oJt=new xf((f,h,b,w)=>{const m={bind:f,unbind:h,isBound:b,rebind:w};f(GL).toSelf().inSingletonScope(),f(de.TYPES.KeyListener).toService(GL),de.configureModelElement(m,"empty-node",de.SNodeImpl,de.EmptyView),de.configureCommand(m,ZX),f(WL).toSelf().inSingletonScope(),f(Db.CreationTool).toService(WL),f(UL).toSelf().inSingletonScope(),f(Db.CreationTool).toService(UL),f(YL).toSelf().inSingletonScope(),f(Db.CreationTool).toService(YL),f(A3).toSelf().inSingletonScope(),de.configureActionHandler(m,de.CommitModelAction.KIND,A3),f(de.TYPES.IUIExtension).toService(A3),f(de.TYPES.KeyListener).toService(A3),f(Db.DefaultUIElement).toService(A3)});function cJt(f,h){return sJt(kX(f,h,0,h),f)}function kX(f,h,b,w,m=!1,P=!1){if(!P&&f[b].column==1){if(w.some(C=>C.word.verify(f[b].text).length===0))return kX(f,w,b,w,m,!0);if(m||h.length==0)return kX(f,[...w,...h],b,w,m,!0)}let g=[];if(b==f.length-1){for(const E of h)g=g.concat(E.word.completionOptions(f[b].text));return g}for(const E of h)E.word.verify(f[b].text).length>0||(g=g.concat(kX(f,E.children,b+1,w,E.canBeFinal||!1)));return g}function sJt(f,h){const b=[],w=f.filter((m,P)=>f.findIndex(g=>g.insertText===m.insertText&&g.kind===m.kind)===P);for(const m of w){const P=uJt(m,h);b.push(P)}return b}function uJt(f,h){const b=h.length==0?1:h[h.length-1].column,w=h.length==0?1:h[h.length-1].line;return{insertText:f.insertText,kind:f.kind,label:f.label??f.insertText,insertTextRules:f.insertTextRules,range:new Kzt(w,b+(f.startOffset??0),w,b+(f.startOffset??0))}}class _mt{constructor(h){this.tree=h}triggerCharacters=[".","("," ",","];provideCompletionItems(h,b){const w=h.getLinesContent(),m=[];for(let C=0;C{for(var m=w>1?void 0:w?aJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let eJ=class{selectedTfgs=new Set;getSelectedTfgs(){return this.selectedTfgs}clearTfgs(){this.selectedTfgs=new Set}addTfg(f){this.selectedTfgs.add(f)}constructor(){}};eJ=lJt([vr()],eJ);var fJt=Object.getOwnPropertyDescriptor,hJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?fJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Ive=(f,h)=>(b,w)=>h(b,w,f);function Tve(f,h,b,w){w.clearTfgs(),b.setSelectedConstraints(f);const m=h.children.filter(P=>mg.getBasicType(P)==="node");return f.length===0?(m.forEach(P=>{P.setColor("var(--color-primary)")}),h):(m.forEach(P=>{const g=P.annotations;let E=!1;b.selectedContainsAllConstraints()&&g.forEach(C=>{C.message.startsWith("Constraint")&&(E=!0,P.setColor(C.color))}),f.forEach(C=>{g.forEach(T=>{T.message.startsWith("Constraint ")&&T.message.split(" ")[1]===C&&(P.setColor(T.color),E=!0,w.addTfg(T.tfg))})}),E||P.setColor("var(--color-primary)")}),m.forEach(P=>{P.annotations.filter(E=>w.getSelectedTfgs().has(E.tfg)).length>0&&P.setColor("var(--color-highlighted)",!1)}),h)}var gS;(f=>{f.KIND="select-constraints";function h(b){return{kind:f.KIND,selectedConstraintNames:b}}f.create=h})(gS||(gS={}));let dye=class extends de.Command{constructor(f,h,b){super(),this.action=f,this.constraintRegistry=h,this.tfgManager=b}static KIND=gS.KIND;oldConstraintSelection;execute(f){return this.oldConstraintSelection=this.constraintRegistry.getSelectedConstraints(),Tve(this.action.selectedConstraintNames,f.root,this.constraintRegistry,this.tfgManager)}undo(f){return Tve(this.oldConstraintSelection??[],f.root,this.constraintRegistry,this.tfgManager)}redo(f){return Tve(this.action.selectedConstraintNames,f.root,this.constraintRegistry,this.tfgManager)}};dye=hJt([Ive(0,Et(de.TYPES.Action)),Ive(1,Et(Qd)),Ive(2,Et(eJ))],dye);var dJt=Object.defineProperty,gJt=Object.getOwnPropertyDescriptor,bJt=(f,h,b)=>h in f?dJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,pJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?gJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},sA=(f,h)=>(b,w)=>h(b,w,f),wJt=(f,h,b)=>bJt(f,h+"",b);let k3=class extends RM{constructor(f,h,b,w,m,P){super("left","up"),this.constraintRegistry=f,this.dispatcher=w,this.editorModeController=m,this.themeManager=P,this.constraintRegistry=f,m.registerListener(()=>{this.editor?.updateOptions({readOnly:m.isReadOnly()})}),f.onUpdate(()=>{this.editor&&this.editor.getValue()!==this.constraintRegistry.getConstraintsAsText()&&this.editor.setValue(this.constraintRegistry.getConstraintsAsText()||"")}),this.tree=UX.buildTree(b,h)}editorContainer=document.createElement("div");validationLabel=document.createElement("div");editor;optionsMenu;ignoreCheckboxChange=!1;tree;id(){return k3.ID}containerClass(){return k3.ID}initializeHeaderContent(f){f.id="constraint-menu-expand-title",f.innerText="Constraints",f.appendChild(this.buildOptionsButton())}initializeHidableContent(f){const h=document.createElement("div");h.id="constraint-menu-content",h.appendChild(this.buildConstraintInputWrapper()),f.appendChild(h)}initializeContents(f){super.initializeContents(f),f.appendChild(this.buildRunButton())}buildConstraintInputWrapper(){const f=document.createElement("div");f.id="constraint-menu-input",f.appendChild(this.editorContainer),this.validationLabel.id="validation-label",this.validationLabel.classList.add("valid"),this.validationLabel.innerText="Valid constraints",f.appendChild(this.validationLabel);const h=document.createElement("div");h.innerHTML="Press CTRL+Space for autocompletion",f.appendChild(h),wh.register({id:TX}),wh.setMonarchTokensProvider(TX,PYt),wh.registerCompletionItemProvider(TX,new _mt(this.tree));const b=this.themeManager.getTheme()===DM.DARK?"vs-dark":"vs";return this.editor=RX.create(this.editorContainer,{minimap:{enabled:!1},folding:!1,wordBasedSuggestions:"off",scrollBeyondLastLine:!1,theme:b,wordWrap:"on",language:TX,scrollBeyondLastColumn:0,scrollbar:{horizontal:"hidden",vertical:"auto",alwaysConsumeMouseWheel:!1},lineNumbers:"on",readOnly:this.editorModeController.isReadOnly()}),this.editor.setValue(this.constraintRegistry.getConstraintsAsText()||""),this.editor.onDidChangeModelContent(()=>{if(!this.editor)return;const w=this.editor?.getModel();if(!w)return;this.constraintRegistry.setConstraints(w.getLinesContent());const m=w.getLinesContent(),P=[];if(!(m.length==0||m.length==1&&m[0]==="")){const E=f2e(aN(m),this.tree);P.push(...E.map(C=>({severity:z0t.Error,startLineNumber:C.line,startColumn:C.startColumn,endLineNumber:C.line,endColumn:C.endColumn,message:C.message})))}this.validationLabel.innerText=P.length==0?"Valid constraints":`Invalid constraints: ${P.length} errors`,this.validationLabel.classList.toggle("valid",P.length==0),RX.setModelMarkers(w,"constraint",P)}),f}buildRunButton(){const f=document.createElement("div");f.id="run-button-container";const h=document.createElement("button");return h.id="run-button",h.innerHTML="Run",h.onclick=()=>{this.dispatcher.dispatchAll([HL.create(),gS.create(this.constraintRegistry.getConstraintList().map(b=>b.name))])},f.appendChild(h),f}onBeforeShow(){this.resizeEditor()}resizeEditor(){const f=this.editor;if(!f)return;const h=f.getContentHeight(),w=100+f.getValue().split(` +`).reduce((T,M)=>Math.max(T,M.length),0)*8,m=(T,M)=>Math.min(M[1],Math.max(M[0],T)),P=[200,200],g=[500,750],E=m(h,P),C=m(w,g);f.layout({height:E,width:C})}switchTheme(f){this.editor?.updateOptions({theme:f==DM.DARK?"vs-dark":"vs"})}buildOptionsButton(){const f=document.createElement("button");return f.id="constraint-options-button",f.title="Filter…",f.innerHTML='',f.onclick=()=>this.toggleOptionsMenu(),f}toggleOptionsMenu(){if(this.optionsMenu!==void 0){this.optionsMenu.remove(),this.optionsMenu=void 0;return}this.optionsMenu=document.createElement("div"),this.optionsMenu.id="constraint-options-menu";const f=document.createElement("label");f.classList.add("options-item");const h=document.createElement("input");h.type="checkbox",h.value="ALL",h.checked=this.constraintRegistry.getConstraintList().map(m=>m.name).every(m=>this.constraintRegistry.getSelectedConstraints().includes(m)),h.onchange=()=>{if(this.optionsMenu){this.ignoreCheckboxChange=!0;try{h.checked?(this.optionsMenu.querySelectorAll("input[type=checkbox]").forEach(m=>{m!==h&&(m.checked=!0)}),this.dispatcher.dispatch(gS.create(this.constraintRegistry.getConstraintList().map(m=>m.name)))):(this.optionsMenu.querySelectorAll("input[type=checkbox]").forEach(m=>{m!==h&&(m.checked=!1)}),this.dispatcher.dispatch(gS.create([])))}finally{this.ignoreCheckboxChange=!1}}},f.appendChild(h),f.appendChild(document.createTextNode("All constraints")),this.optionsMenu.appendChild(f),this.constraintRegistry.getConstraintList().forEach(m=>{const P=document.createElement("label");P.classList.add("options-item");const g=document.createElement("input");g.type="checkbox",g.value=m.name,g.checked=this.constraintRegistry.getSelectedConstraints().includes(g.value),g.onchange=()=>{if(this.ignoreCheckboxChange)return;const E=this.optionsMenu.querySelectorAll("input[type=checkbox]"),C=Array.from(E).filter(M=>M!==h),T=C.filter(M=>M.checked).map(M=>M.value);h.checked=C.every(M=>M.checked),this.dispatcher.dispatch(gS.create(T))},P.appendChild(g),P.appendChild(document.createTextNode(m.name)),this.optionsMenu.appendChild(P)}),this.editorContainer.appendChild(this.optionsMenu);const w=m=>{const P=m.target;if(!this.optionsMenu||this.optionsMenu.contains(P))return;const g=document.getElementById("constraint-options-button");g&&g.contains(P)||(this.optionsMenu.remove(),this.optionsMenu=void 0,document.removeEventListener("click",w))};document.addEventListener("click",w)}};wJt(k3,"ID","constraint-menu");k3=pJt([vr(),sA(0,Et(Qd)),sA(1,Et(Zd)),sA(2,Et(de.TYPES.ModelSource)),sA(3,Et(de.TYPES.IActionDispatcher)),sA(4,Et(sc.Mode)),sA(5,Et(sc.Theme))],k3);const mJt=new xf((f,h,b)=>{f(Qd).toSelf().inSingletonScope(),f(k3).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(k3),f(Db.DefaultUIElement).toService(k3),f(fmt).toService(k3),f(eJ).toSelf().inSingletonScope(),de.configureCommand({bind:f,isBound:b},dye)});var vJt=Object.defineProperty,yJt=Object.getOwnPropertyDescriptor,_Jt=(f,h,b)=>h in f?vJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,EJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?yJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},TL=(f,h)=>(b,w)=>h(b,w,f),SJt=(f,h,b)=>_Jt(f,h+"",b);let $3=class extends de.AbstractUIExtension{constructor(f,h,b,w,m){super(),this.labelTypeRegistry=f,this.editorModeController=h,this.themeManager=b,this.viewerOptions=w,this.domHelper=m,h.registerListener(()=>{this.editor?.updateOptions({readOnly:this.editorModeController.isReadOnly()})})}port;tree;editorContainer=document.createElement("div");validationLabel=document.createElement("div");unavailableInputsLabel=document.createElement("div");editor;id(){return $3.ID}containerClass(){return $3.ID}initializeContents(f){f.classList.add("ui-float"),f.appendChild(this.unavailableInputsLabel),this.unavailableInputsLabel.classList.add("unavailable-inputs"),f.appendChild(this.editorContainer),this.editorContainer.classList.add("monaco-container"),f.appendChild(this.validationLabel),this.validationLabel.classList.add("validation-label");const h=document.createElement("div");h.innerHTML="Press CTRL+Space for autocompletion",f.appendChild(h),wh.register({id:IX}),wh.setMonarchTokensProvider(IX,vYt);const b=this.themeManager.getTheme()===DM.DARK?"vs-dark":"vs";this.editor=RX.create(this.editorContainer,{minimap:{enabled:!1},lineNumbersMinChars:3,folding:!1,wordBasedSuggestions:"off",scrollBeyondLastLine:!1,theme:b,language:IX,readOnly:this.editorModeController.isReadOnly()}),this.editor.onDidChangeModelContent(()=>{this.validate()}),this.editor.onDidContentSizeChange(()=>{this.resizeEditor()}),this.labelTypeRegistry?.onUpdate(()=>{setTimeout(()=>{this.editor&&this.port&&this.editor?.setValue(this.port?.getBehavior())},0)}),f.addEventListener("keydown",w=>{Pl.matchesKeystroke(w,"Escape")&&this.hide()})}onBeforeShow(f,h,...b){if(b.length!==1)throw new Error("Expected exactly one context element id which should be the port that shall be shown in the UI.");this.setPort(h.index.getById(b[0]),f),this.checkForUnavailableInputs(),this.resizeEditor(),this.editor?.focus()}setPort(f,h){this.port=f;const b=de.getAbsoluteClientBounds(this.port,this.domHelper,this.viewerOptions);if(h.style.left=`${b.x}px`,h.style.top=`${b.y}px`,this.tree=NL.buildTree(f,this.labelTypeRegistry),wh.registerCompletionItemProvider(IX,new _mt(this.tree)),!this.editor)throw new Error("Expected editor to be initialized");this.editor.setValue(f.getBehavior())}checkForUnavailableInputs(){if(!this.port)throw new Error("Expected Assignment Edit Ui to be assigned to a port");const f=this.port.parent;if(!(f instanceof jy))throw new Error("Expected parent to be a DfdNodeImpl.");const b=f.getAvailableInputs().filter(w=>w===void 0).length;if(b>0){const w=b>1?`There are ${b} inputs that don't have a named edge and cannot be used`:`There is ${b} input that doesn't have a named edge and cannot be used`;this.unavailableInputsLabel.innerText=w,this.unavailableInputsLabel.style.display="block"}else this.unavailableInputsLabel.innerText="",this.unavailableInputsLabel.style.display="none"}resizeEditor(){if(!this.editor)return;const f=this.editor.getContentHeight(),b=100+this.editor.getValue().split(` +`).reduce((C,T)=>Math.max(C,T.length),0)*8,w=(C,T)=>Math.min(T[1],Math.max(T[0],C)),m=[100,350],P=[275,650],g=w(f,m),E=w(b,P);this.editor.layout({height:g,width:E})}validate(){if(!this.editor||!this.tree)return;const f=this.editor?.getModel();if(!f)return;const h=f.getLinesContent();this.port?.setBehavior(h.join(` +`));const b=[];if(!(h.length==0||h.length==1&&h[0]==="")){const m=f2e(aN(h),this.tree);b.push(...m.map(P=>({severity:z0t.Error,startLineNumber:P.line,startColumn:P.startColumn,endLineNumber:P.line,endColumn:P.endColumn,message:P.message})))}b.length==0?(this.validationLabel.innerText="Assignments are valid",this.validationLabel.classList.remove("validation-error"),this.validationLabel.classList.add("validation-success")):(this.validationLabel.innerText=`Assignments are invalid: ${b.length} error${b.length===1?"":"s"}.`,this.validationLabel.classList.remove("validation-success"),this.validationLabel.classList.add("validation-error")),RX.setModelMarkers(f,"constraint",b)}};SJt($3,"ID","assignment-edit-ui");$3=EJt([vr(),TL(0,Et(Zd)),TL(1,Et(sc.Mode)),TL(2,Et(sc.Theme)),TL(3,Et(de.TYPES.ViewerOptions)),TL(4,Et(de.TYPES.DOMHelper))],$3);var PJt=Object.getOwnPropertyDescriptor,MJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?PJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let gye=class extends de.MouseListener{editUIVisible=!1;mouseDown(f){return this.editUIVisible?(this.editUIVisible=!1,[de.SetUIExtensionVisibilityAction.create({extensionId:$3.ID,visible:!1,contextElementsId:[f.id]})]):[]}doubleClick(f){return f instanceof pA?(this.editUIVisible=!0,[de.SetUIExtensionVisibilityAction.create({extensionId:$3.ID,visible:!0,contextElementsId:[f.id]})]):[]}};gye=MJt([vr()],gye);const CJt=new xf(f=>{f($3).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService($3),f(de.TYPES.MouseListener).to(gye).inSingletonScope()});var IJt=Object.defineProperty,TJt=Object.getOwnPropertyDescriptor,b2e=(f,h,b,w)=>{for(var m=w>1?void 0:w?TJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&IJt(h,b,m),m},jJt=(f,h)=>(b,w)=>h(b,w,f);let bye=class extends de.EditLabelMouseListener{constructor(f){super(),this.editorModeController=f}doubleClick(f,h){return this.editorModeController.isReadOnly()?[]:super.doubleClick(f,h)}};bye=b2e([vr(),jJt(0,Et(sc.Mode))],bye);let tJ=class extends de.DeleteElementCommand{editorModeController;execute(f){return this.editorModeController?.isReadOnly()?f.root:super.execute(f)}undo(f){return this.editorModeController?.isReadOnly()?f.root:super.undo(f)}redo(f){return this.editorModeController?.isReadOnly()?f.root:super.redo(f)}};b2e([Et(sc.Mode)],tJ.prototype,"editorModeController",2);tJ=b2e([vr()],tJ);const AJt=new xf((f,h,b,w)=>{w(de.EditLabelMouseListener).to(bye),w(de.DeleteElementCommand).to(tJ)}),OJt=new xf(f=>{f(Jd).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(Jd),f(Db.DefaultUIElement).toService(Jd)});class q0t extends de.KeyListener{keyDown(h,b){return Pl.matchesKeystroke(b,"Delete")?this.deleteSelectedElements(h):[]}deleteSelectedElements(h){const b=h.root.index,m=Array.from(b.all().filter(P=>de.isDeletable(P)&&de.isSelectable(P)&&P.selected).filter(P=>P.id!==P.root.id)).flatMap(P=>{const g=[P.id];return P instanceof de.SConnectableElementImpl&&g.push(...this.getEdgeIdsOfElement(P)),P instanceof de.SChildElementImpl&&P.children.forEach(E=>{g.push(E.id),E instanceof de.SConnectableElementImpl&&g.push(...this.getEdgeIdsOfElement(E))}),g});if(m.length>0){const P=[...new Set(m)];return[mg.DeleteElementAction.create(P),de.CommitModelAction.create()]}else return[]}getEdgeIdsOfElement(h){return[...h.incomingEdges.map(b=>b.id),...h.outgoingEdges.map(b=>b.id)]}}var DJt=Object.defineProperty,kJt=Object.getOwnPropertyDescriptor,RJt=(f,h,b)=>h in f?DJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,Emt=(f,h,b,w)=>{for(var m=w>1?void 0:w?kJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},pye=(f,h)=>(b,w)=>h(b,w,f),xJt=(f,h,b)=>RJt(f,h+"",b);let wye=class{constructor(f){this.mousePositionTracker=f}copyElements=[];keyUp(){return[]}keyDown(f,h){return Pl.matchesKeystroke(h,"KeyC","ctrl")?this.copy(f.root):Pl.matchesKeystroke(h,"KeyV","ctrl")?this.paste():[]}copy(f){return this.copyElements=[],f.index.all().filter(h=>de.isSelected(h)).forEach(h=>this.copyElements.push(h)),[]}paste(){const f=this.mousePositionTracker.lastPositionOnDiagram??{x:0,y:0};return[nJ.create(this.copyElements,f),de.CommitModelAction.create()]}};wye=Emt([vr(),pye(0,Et(de.MousePositionTracker))],wye);var nJ;(f=>{f.KIND="paste-clipboard-elements";function h(b,w){return{kind:f.KIND,copyElements:b,targetPosition:w}}f.create=h})(nJ||(nJ={}));let iJ=class extends de.Command{constructor(f,h){super(),this.action=f,this.editorModeController=h}newElements=[];copyElementIdMapping={};computeElementOffset(){const f={x:1/0,y:1/0};return this.action.copyElements.forEach(h=>{h instanceof de.SNodeImpl&&(h.position.x{if(!(b instanceof de.SNodeImpl))return;const w=JSON.parse(JSON.stringify(f.modelFactory.createSchema(b)));"features"in w&&(w.features=void 0),w.id=L3(),this.copyElementIdMapping[b.id]=w.id,"position"in w&&(w.position=mg.Point.add(b.position,h)),b instanceof jy&&w.ports.forEach(P=>{const g=P.id;P.id=L3(),this.copyElementIdMapping[g]=P.id});const m=f.modelFactory.createElement(w,f.root);this.newElements.push(m)}),this.action.copyElements.forEach(b=>{if(!(b instanceof de.SEdgeImpl))return;const w=this.copyElementIdMapping[b.sourceId],m=this.copyElementIdMapping[b.targetId];if(!w||!m)return;const P=JSON.parse(JSON.stringify(f.modelFactory.createSchema(b)));Ey.preprocessModelSchema(P),P.id=L3(),this.copyElementIdMapping[b.id]=P.id,P.sourceId=w,P.targetId=m;const g=f.modelFactory.createElement(P);this.newElements.push(g)}),this.newElements.forEach(b=>{f.root.add(b)}),f.root}undo(f){return this.editorModeController?.isReadOnly()||this.newElements.forEach(h=>{f.root.remove(h)}),f.root}redo(f){return this.editorModeController?.isReadOnly()||this.newElements.forEach(h=>{f.root.add(h)}),f.root}};xJt(iJ,"KIND",nJ.KIND);iJ=Emt([vr(),pye(0,Et(de.TYPES.Action)),pye(1,Et(sc.Mode))],iJ);var LJt=Object.getOwnPropertyDescriptor,NJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?LJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},FJt=(f,h)=>(b,w)=>h(b,w,f);let mye=class extends de.KeyListener{constructor(f){super(),this.constraintRegistry=f}keyDown(f,h){return Pl.matchesKeystroke(h,"KeyO","ctrlCmd")?(h.preventDefault(),[BL.create(),de.CommitModelAction.create()]):Pl.matchesKeystroke(h,"KeyO","ctrlCmd","shift")?(h.preventDefault(),[dA.create(),de.CommitModelAction.create()]):Pl.matchesKeystroke(h,"KeyS","ctrlCmd")?(h.preventDefault(),[$L.create()]):Pl.matchesKeystroke(h,"KeyA","ctrlCmd","shift")?(h.preventDefault(),[HL.create(),gS.create(this.constraintRegistry.getConstraintList().map(b=>b.name)),de.CommitModelAction.create()]):[]}};mye=NJt([vr(),FJt(0,Et(Qd))],mye);class H0t extends de.KeyListener{keyDown(h,b){return Pl.matchesKeystroke(b,"KeyC","ctrlCmd","shift")?[mg.CenterAction.create([])]:Pl.matchesKeystroke(b,"KeyF","ctrlCmd","shift")?[mg.FitToScreenAction.create([h.root.id])]:[]}}const BJt=new xf((f,h,b,w)=>{f(q0t).toSelf().inSingletonScope(),f(de.TYPES.KeyListener).toService(q0t);const m={bind:f,unbind:h,isBound:b,rebind:w};f(de.TYPES.KeyListener).to(wye).inSingletonScope(),de.configureCommand(m,iJ),f(de.TYPES.KeyListener).to(mye).inSingletonScope(),f(H0t).toSelf().inSingletonScope(),w(de.CenterKeyboardListener).toService(H0t)});var $Jt=Object.defineProperty,KJt=Object.getOwnPropertyDescriptor,qJt=(f,h,b)=>h in f?$Jt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,HJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?KJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},zJt=(f,h)=>(b,w)=>h(b,w,f),VJt=(f,h,b)=>qJt(f,h+"",b);let mS=class extends RM{constructor(f){super("left","up"),this.violationService=f}id(){return mS.ID}containerClass(){return mS.ID}initializeHeaderContent(f){f.innerText="Violation Summary"}initializeHidableContent(f){f.innerHTML=` +
+ + +
+
+
+
+

+ No violation data found. Run a Analysis first. +

+
+
+ +
+
+

+ No violation data found. Run a Analysis first, then enter your API key to generate an AI summary. +

+
+
+ + +
+
+ +
+
+
+ `,this.violationService.onViolationsChanged(h=>{this.updateSimpleTab(f,h)}),this.setupTabLogic(f),this.setupGenerateLogic(f)}setupGenerateLogic(f){f.querySelector("#generate-btn").addEventListener("click",()=>{})}setupTabLogic(f){const h=f.querySelectorAll(".tab-btn"),b=f.querySelectorAll(".tab-pane");h.forEach(w=>{w.addEventListener("click",()=>{const m=w.getAttribute("data-tab");h.forEach(P=>P.classList.remove("active")),b.forEach(P=>P.classList.remove("active")),w.classList.add("active"),f.querySelector(`#${m}-summary`)?.classList.add("active")})})}updateSimpleTab(f,h){const b=f.querySelector("#simple-summary .summary-text");if(!b)return;if(h.length===0){b.innerHTML='

No violations found. Everything looks good!

';return}const w=h.map(m=>` +
+ Violated constraint: ${m.constraint}
+ Flow of violation cause : ${m.violationCauseGraph.join(", ")} +
+ `).join("");b.innerHTML=` +
Found ${h.length} issues:
+
${w}
+ `}};VJt(mS,"ID","violation-ui");mS=HJt([vr(),zJt(0,Et(qL))],mS);const GJt=new xf(f=>{f(mS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(mS),f(Db.DefaultUIElement).toService(mS),f(qL).toSelf().inSingletonScope()}),p2e=new FX;de.loadDefaultModules(p2e,{exclude:[de.labelEditUiModule]});p2e.load(GUt,fYt,lYt,jYt,PXt,XYt,MXt,RXt,R3.elkLayoutModule,LXt,NXt,zXt,oJt,mJt,CJt,AJt,OJt,BJt,GJt);const UJt=p2e.getAll(OL);for(const f of UJt)f.run(); diff --git a/deploy/dac/assets/monaco-editor-B8Nwu8CH.css b/deploy/dac/assets/monaco-editor-B8Nwu8CH.css new file mode 100644 index 00000000..fa4c03b9 --- /dev/null +++ b/deploy/dac/assets/monaco-editor-B8Nwu8CH.css @@ -0,0 +1 @@ +.monaco-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,system-ui,Ubuntu,Droid Sans,sans-serif;--monaco-monospace-font: "SF Mono", Monaco, Menlo, Consolas, "Ubuntu Mono", "Liberation Mono", "DejaVu Sans Mono", "Courier New", monospace}.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-hover p{margin:0}.monaco-aria-container{position:absolute!important;top:0;height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%)}.monaco-editor,.monaco-diff-editor .synthetic-focus,.monaco-diff-editor [tabindex="0"]:focus,.monaco-diff-editor [tabindex="-1"]:focus,.monaco-diff-editor button:focus,.monaco-diff-editor input[type=button]:focus,.monaco-diff-editor input[type=checkbox]:focus,.monaco-diff-editor input[type=search]:focus,.monaco-diff-editor input[type=text]:focus,.monaco-diff-editor select:focus,.monaco-diff-editor textarea:focus{outline-width:1px;outline-style:solid;outline-offset:-1px;outline-color:var(--vscode-focusBorder);opacity:1}.monaco-workbench .workbench-hover{position:relative;font-size:13px;line-height:19px;z-index:40;overflow:hidden;max-width:700px;background:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px;color:var(--vscode-editorHoverWidget-foreground);box-shadow:0 2px 8px var(--vscode-widget-shadow)}.monaco-workbench .workbench-hover hr{border-bottom:none}.monaco-workbench .workbench-hover:not(.skip-fade-in){animation:fadein .1s linear}.monaco-workbench .workbench-hover.compact{font-size:12px}.monaco-workbench .workbench-hover.compact .hover-contents{padding:2px 8px}.monaco-workbench .workbench-hover-container.locked .workbench-hover{outline:1px solid var(--vscode-editorHoverWidget-border)}.monaco-workbench .workbench-hover-container.locked .workbench-hover:focus,.monaco-workbench .workbench-hover-lock:focus{outline:1px solid var(--vscode-focusBorder)}.monaco-workbench .workbench-hover-container.locked .workbench-hover-lock:hover{background:var(--vscode-toolbar-hoverBackground)}.monaco-workbench .workbench-hover-pointer{position:absolute;z-index:41;pointer-events:none}.monaco-workbench .workbench-hover-pointer:after{content:"";position:absolute;width:5px;height:5px;background-color:var(--vscode-editorHoverWidget-background);border-right:1px solid var(--vscode-editorHoverWidget-border);border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-workbench .locked .workbench-hover-pointer:after{width:4px;height:4px;border-right-width:2px;border-bottom-width:2px}.monaco-workbench .workbench-hover-pointer.left{left:-3px}.monaco-workbench .workbench-hover-pointer.right{right:3px}.monaco-workbench .workbench-hover-pointer.top{top:-3px}.monaco-workbench .workbench-hover-pointer.bottom{bottom:3px}.monaco-workbench .workbench-hover-pointer.left:after{transform:rotate(135deg)}.monaco-workbench .workbench-hover-pointer.right:after{transform:rotate(315deg)}.monaco-workbench .workbench-hover-pointer.top:after{transform:rotate(225deg)}.monaco-workbench .workbench-hover-pointer.bottom:after{transform:rotate(45deg)}.monaco-workbench .workbench-hover a{color:var(--vscode-textLink-foreground)}.monaco-workbench .workbench-hover a:focus{outline:1px solid;outline-offset:-1px;text-decoration:underline;outline-color:var(--vscode-focusBorder)}.monaco-workbench .workbench-hover a:hover,.monaco-workbench .workbench-hover a:active{color:var(--vscode-textLink-activeForeground)}.monaco-workbench .workbench-hover code{background:var(--vscode-textCodeBlock-background)}.monaco-workbench .workbench-hover .hover-row .actions{background:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-workbench .workbench-hover.right-aligned{left:1px}.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions{flex-direction:row-reverse}.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions .action-container{margin-right:0;margin-left:16px}.monaco-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.monaco-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity .8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.scrollbar>.slider{background:var(--vscode-scrollbarSlider-background)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-scrollable-element>.scrollbar>.slider.active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-hover{cursor:default;position:absolute;overflow:hidden;user-select:text;-webkit-user-select:text;box-sizing:border-box;animation:fadein .1s linear;line-height:1.5em;white-space:var(--vscode-hover-whiteSpace, normal)}.monaco-hover.hidden{display:none}.monaco-hover a:hover:not(.disabled){cursor:pointer}.monaco-hover .hover-contents:not(.html-hover-contents){padding:4px 8px}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:var(--vscode-hover-maxWidth, 500px);word-wrap:break-word}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100%}.monaco-hover p,.monaco-hover .code,.monaco-hover ul,.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{margin:8px 0}.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{line-height:1.1}.monaco-hover code{font-family:var(--monaco-monospace-font)}.monaco-hover hr{box-sizing:border-box;border-left:0px;border-right:0px;margin:4px -8px -4px;height:1px}.monaco-hover p:first-child,.monaco-hover .code:first-child,.monaco-hover ul:first-child{margin-top:0}.monaco-hover p:last-child,.monaco-hover .code:last-child,.monaco-hover ul:last-child{margin-bottom:0}.monaco-hover ul,.monaco-hover ol{padding-left:20px}.monaco-hover li>p{margin-bottom:0}.monaco-hover li>ul{margin-top:0}.monaco-hover code{border-radius:3px;padding:0 .4em}.monaco-hover .monaco-tokenized-source{white-space:var(--vscode-hover-sourceWhiteSpace, pre-wrap)}.monaco-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-hover .hover-row.status-bar .info{font-style:italic;padding:0 8px}.monaco-hover .hover-row.status-bar .actions{display:flex;padding:0 8px;width:100%}.monaco-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-hover .hover-row.status-bar .actions .action-container a{color:var(--vscode-textLink-foreground);text-decoration:var(--text-link-decoration)}.monaco-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-hover .hover-contents a.code-link:hover,.monaco-hover .hover-contents a.code-link{color:inherit}.monaco-hover .hover-contents a.code-link:before{content:"("}.monaco-hover .hover-contents a.code-link:after{content:")"}.monaco-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground)}.monaco-hover .hover-contents a.code-link>span:hover{color:var(--vscode-textLink-activeForeground)}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span{margin-bottom:4px;display:inline-block}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span.codicon{margin-bottom:2px}.monaco-hover-content .action-container a{-webkit-user-select:none;user-select:none}.monaco-hover-content .action-container.disabled{pointer-events:none;opacity:.4;cursor:default}.monaco-editor .rendered-markdown kbd{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow);vertical-align:middle;padding:1px 3px}.rendered-markdown li:has(input[type=checkbox]){list-style-type:none}.monaco-aria-container{position:absolute;left:-999em}.context-view{position:absolute}.context-view.fixed{all:initial;font-family:inherit;font-size:13px;position:fixed;color:inherit}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{user-select:none;-webkit-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list .monaco-scrollable-element>.scrollbar.vertical,.monaco-pane-view>.monaco-split-view2.vertical>.monaco-scrollable-element>.scrollbar.vertical{z-index:14}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-single,.monaco-list.selection-multiple{outline:0!important}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute;z-index:1000}.monaco-list-type-filter-message{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-select-box-dropdown-padding{--dropdown-padding-top: 1px;--dropdown-padding-bottom: 1px}.hc-black .monaco-select-box-dropdown-padding,.hc-light .monaco-select-box-dropdown-padding{--dropdown-padding-top: 3px;--dropdown-padding-bottom: 4px}.monaco-select-box-dropdown-container{display:none;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown *{margin:0}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown a:focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown code{line-height:15px;font-family:var(--monaco-monospace-font)}.monaco-select-box-dropdown-container.visible{display:flex;flex-direction:column;text-align:left;width:1px;overflow:hidden;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container{flex:0 0 auto;align-self:flex-start;padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom);padding-left:1px;padding-right:1px;width:100%;overflow:hidden;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane{padding:5px}.hc-black .monaco-select-box-dropdown-container>.select-box-dropdown-list-container{padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom)}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row{cursor:pointer}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-text{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-detail{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left;opacity:.7}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-decorator-right{text-overflow:ellipsis;overflow:hidden;padding-right:10px;white-space:nowrap;float:right}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.visually-hidden{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control{flex:1 1 auto;align-self:flex-start;opacity:0}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div{overflow:hidden;max-height:0px}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div>.option-text-width-control{padding-left:4px;padding-right:8px;white-space:nowrap}.monaco-select-box{width:100%;cursor:pointer;border-radius:2px}.monaco-select-box-dropdown-container{font-size:13px;font-weight:400;text-transform:none}.monaco-action-bar .action-item.select-container{cursor:default}.monaco-action-bar .action-item .monaco-select-box{cursor:pointer;min-width:100px;min-height:18px;padding:2px 23px 2px 8px}.mac .monaco-action-bar .action-item .monaco-select-box{font-size:11px;border-radius:5px}.monaco-action-bar{white-space:nowrap;height:100%}.monaco-action-bar .actions-container{display:flex;margin:0 auto;padding:0;height:100%;width:100%;align-items:center}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar .action-item{display:block;align-items:center;justify-content:center;cursor:pointer;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar .action-item .icon,.monaco-action-bar .action-item .codicon{display:block}.monaco-action-bar .action-item .codicon{display:flex;align-items:center;width:16px;height:16px}.monaco-action-bar .action-label{display:flex;font-size:11px;padding:3px;border-radius:5px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:before,.monaco-action-bar .action-item.disabled .action-label:hover{color:var(--vscode-disabledForeground)}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:.8em;margin-right:.8em}.monaco-action-bar .action-item .action-label.separator{width:1px;height:16px;margin:5px 4px!important;cursor:default;min-width:1px;padding:0;background-color:#bbb}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;flex:1;max-width:170px;min-width:60px;display:flex;align-items:center;justify-content:center;margin-right:10px}.monaco-action-bar .action-item.action-dropdown-item{display:flex}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator{display:flex;align-items:center;cursor:default}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator>div{width:1px}.monaco-dropdown{height:100%;padding:0}.monaco-dropdown>.dropdown-label{cursor:pointer;height:100%;display:flex;align-items:center;justify-content:center}.monaco-dropdown>.dropdown-label>.action-label.disabled{cursor:default}.monaco-dropdown-with-primary{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-primary>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.monaco-action-bar .action-item.menu-entry .action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-action-bar .action-item.menu-entry.text-only .action-label{color:var(--vscode-descriptionForeground);overflow:hidden;border-radius:2px}.monaco-action-bar .action-item.menu-entry.text-only.use-comma:not(:last-of-type) .action-label:after{content:", "}.monaco-action-bar .action-item.menu-entry.text-only+.action-item:not(.text-only)>.monaco-dropdown .action-label{color:var(--vscode-descriptionForeground)}.monaco-dropdown-with-default{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-default>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-default>.action-container.menu-entry>.action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.quick-input-widget{font-size:13px}.quick-input-widget .monaco-highlighted-label .highlight{color:#0066bf}.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight{color:#9dddff}.vs-dark .quick-input-widget .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .quick-input-widget .monaco-highlighted-label .highlight{color:#f38518}.hc-light .quick-input-widget .monaco-highlighted-label .highlight{color:#0f4a85}.monaco-keybinding>.monaco-keybinding-key{background-color:#ddd6;border:solid 1px rgba(204,204,204,.4);border-bottom-color:#bbb6;box-shadow:inset 0 -1px #bbb6;color:#555}.hc-black .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px rgb(111,195,223);box-shadow:none;color:#fff}.hc-light .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px #0F4A85;box-shadow:none;color:#292929}.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:#8080802b;border:solid 1px rgba(51,51,51,.6);border-bottom-color:#4449;box-shadow:inset 0 -1px #4449;color:#ccc}.monaco-custom-toggle{margin-left:2px;float:left;cursor:pointer;overflow:hidden;width:20px;height:20px;border-radius:3px;border:1px solid transparent;padding:1px;box-sizing:border-box;user-select:none;-webkit-user-select:none}.monaco-custom-toggle:hover{background-color:var(--vscode-inputOption-hoverBackground)}.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{border:1px dashed var(--vscode-focusBorder)}.hc-black .monaco-custom-toggle,.hc-light .monaco-custom-toggle,.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{background:none}.monaco-custom-toggle.monaco-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px!important}.monaco-action-bar .checkbox-action-item{display:flex;align-items:center;border-radius:2px;padding-right:2px}.monaco-action-bar .checkbox-action-item:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-action-bar .checkbox-action-item>.monaco-custom-toggle.monaco-checkbox{margin-right:4px}.monaco-action-bar .checkbox-action-item>.checkbox-label{font-size:12px}.monaco-custom-toggle.monaco-checkbox:not(.checked):before{visibility:hidden}.quick-input-widget{position:absolute;width:600px;z-index:2550;left:50%;margin-left:-300px;-webkit-app-region:no-drag;border-radius:6px}.quick-input-titlebar{display:flex;align-items:center;border-top-right-radius:5px;border-top-left-radius:5px}.quick-input-left-action-bar{display:flex;margin-left:4px;flex:1}.quick-input-inline-action-bar{margin:2px 0 0 5px}.quick-input-title{padding:3px 0;text-align:center;text-overflow:ellipsis;overflow:hidden}.quick-input-right-action-bar{display:flex;margin-right:4px;flex:1}.quick-input-right-action-bar>.actions-container{justify-content:flex-end}.quick-input-titlebar .monaco-action-bar .action-label.codicon{background-position:center;background-repeat:no-repeat;padding:2px}.quick-input-description{margin:6px 6px 6px 11px}.quick-input-header .quick-input-description{margin:4px 2px;flex:1}.quick-input-header{display:flex;padding:8px 6px 2px}.quick-input-widget.hidden-input .quick-input-header{padding:0;margin-bottom:0}.quick-input-and-message{display:flex;flex-direction:column;flex-grow:1;min-width:0;position:relative}.quick-input-check-all{align-self:center;margin:0}.quick-input-filter{flex-grow:1;display:flex;position:relative}.quick-input-box{flex-grow:1}.quick-input-widget.show-checkboxes .quick-input-box,.quick-input-widget.show-checkboxes .quick-input-message{margin-left:5px}.quick-input-visible-count{position:absolute;left:-10000px}.quick-input-count{align-self:center;position:absolute;right:4px;display:flex;align-items:center}.quick-input-count .monaco-count-badge{vertical-align:middle;padding:2px 4px;border-radius:2px;min-height:auto;line-height:normal}.quick-input-action{margin-left:6px}.quick-input-action .monaco-text-button{font-size:11px;padding:0 6px;display:flex;height:25px;align-items:center}.quick-input-message{margin-top:-1px;padding:5px;overflow-wrap:break-word}.quick-input-message>.codicon{margin:0 .2em;vertical-align:text-bottom}.quick-input-message a{color:inherit}.quick-input-progress.monaco-progress-container{position:relative}.quick-input-list{line-height:22px}.quick-input-widget.hidden-input .quick-input-list{margin-top:4px;padding-bottom:4px}.quick-input-list .monaco-list{overflow:hidden;max-height:440px;padding-bottom:5px}.quick-input-list .monaco-scrollable-element{padding:0 5px}.quick-input-list .quick-input-list-entry{box-sizing:border-box;overflow:hidden;display:flex;padding:0 6px}.quick-input-list .quick-input-list-entry.quick-input-list-separator-border{border-top-width:1px;border-top-style:solid}.quick-input-list .monaco-list-row{border-radius:3px}.quick-input-list .monaco-list-row[data-index="0"] .quick-input-list-entry.quick-input-list-separator-border{border-top-style:none}.quick-input-list .quick-input-list-label{overflow:hidden;display:flex;height:100%;flex:1}.quick-input-list .quick-input-list-checkbox{align-self:center;margin:0}.quick-input-list .quick-input-list-icon{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;display:flex;align-items:center;justify-content:center}.quick-input-list .quick-input-list-rows{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%;flex:1;margin-left:5px}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-rows{margin-left:10px}.quick-input-widget .quick-input-list .quick-input-list-checkbox{display:none}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-checkbox{display:inline}.quick-input-list .quick-input-list-rows>.quick-input-list-row{display:flex;align-items:center}.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label,.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.quick-input-list .quick-input-list-rows>.quick-input-list-row .codicon[class*=codicon-]{vertical-align:text-bottom}.quick-input-list .quick-input-list-rows .monaco-highlighted-label>span{opacity:1}.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding{margin-right:8px}.quick-input-list .quick-input-list-label-meta{opacity:.7;line-height:normal;text-overflow:ellipsis;overflow:hidden}.quick-input-list .monaco-list .monaco-list-row .monaco-highlighted-label .highlight{font-weight:700;background-color:unset;color:var(--vscode-list-highlightForeground)!important}.quick-input-list .monaco-list .monaco-list-row.focused .monaco-highlighted-label .highlight{color:var(--vscode-list-focusHighlightForeground)!important}.quick-input-list .quick-input-list-entry .quick-input-list-separator{margin-right:4px}.quick-input-list .quick-input-list-entry-action-bar{display:flex;flex:0;overflow:visible}.quick-input-list .quick-input-list-entry-action-bar .action-label{display:none}.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon{margin-right:4px;padding:2px}.quick-input-list .quick-input-list-entry-action-bar{margin-top:1px}.quick-input-list .quick-input-list-entry-action-bar{margin-right:4px}.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label,.quick-input-list .quick-input-list-entry.focus-inside .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.passive-focused .quick-input-list-entry-action-bar .action-label{display:flex}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator{color:inherit}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key{background:none}.quick-input-list .quick-input-list-separator-as-item{padding:4px 6px;font-size:12px}.quick-input-list .quick-input-list-separator-as-item .label-name{font-weight:600}.quick-input-list .quick-input-list-separator-as-item .label-description{opacity:1!important}.quick-input-list .monaco-tree-sticky-row .quick-input-list-entry.quick-input-list-separator-as-item.quick-input-list-separator-border{border-top-style:none}.quick-input-list .monaco-tree-sticky-row{padding:0 5px}.quick-input-list .monaco-tl-twistie{display:none!important}.monaco-text-button{box-sizing:border-box;display:flex;width:100%;padding:4px;border-radius:2px;text-align:center;cursor:pointer;justify-content:center;align-items:center;border:1px solid var(--vscode-button-border, transparent);line-height:18px}.monaco-text-button:focus{outline-offset:2px!important}.monaco-text-button:hover{text-decoration:none!important}.monaco-button.disabled:focus,.monaco-button.disabled{opacity:.4!important;cursor:default}.monaco-text-button .codicon{margin:0 .2em;color:inherit!important}.monaco-text-button.monaco-text-button-with-short-label{flex-direction:row;flex-wrap:wrap;padding:0 4px;overflow:hidden;height:28px}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label{flex-basis:100%}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{flex-grow:1;width:0;overflow:hidden}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label,.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{display:flex;justify-content:center;align-items:center;font-weight:400;font-style:inherit;padding:4px 0}.monaco-button-dropdown{display:flex;cursor:pointer}.monaco-button-dropdown.disabled{cursor:default}.monaco-button-dropdown>.monaco-button:focus{outline-offset:-1px!important}.monaco-button-dropdown.disabled>.monaco-button.disabled,.monaco-button-dropdown.disabled>.monaco-button.disabled:focus,.monaco-button-dropdown.disabled>.monaco-button-dropdown-separator{opacity:.4!important}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-right-width:0!important}.monaco-button-dropdown .monaco-button-dropdown-separator{padding:4px 0;cursor:default}.monaco-button-dropdown .monaco-button-dropdown-separator>div{height:100%;width:1px}.monaco-button-dropdown>.monaco-button.monaco-dropdown-button{border:1px solid var(--vscode-button-border, transparent);border-left-width:0!important;border-radius:0 2px 2px 0;display:flex;align-items:center}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-radius:2px 0 0 2px}.monaco-description-button{display:flex;flex-direction:column;align-items:center;margin:4px 5px}.monaco-description-button .monaco-button-description{font-style:italic;font-size:11px;padding:4px 20px}.monaco-description-button .monaco-button-label,.monaco-description-button .monaco-button-description{display:flex;justify-content:center;align-items:center}.monaco-description-button .monaco-button-label>.codicon,.monaco-description-button .monaco-button-description>.codicon{margin:0 .2em;color:inherit!important}.monaco-button.default-colors,.monaco-button-dropdown.default-colors>.monaco-button{color:var(--vscode-button-foreground);background-color:var(--vscode-button-background)}.monaco-button.default-colors:hover,.monaco-button-dropdown.default-colors>.monaco-button:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-button.default-colors.secondary,.monaco-button-dropdown.default-colors>.monaco-button.secondary{color:var(--vscode-button-secondaryForeground);background-color:var(--vscode-button-secondaryBackground)}.monaco-button.default-colors.secondary:hover,.monaco-button-dropdown.default-colors>.monaco-button.secondary:hover{background-color:var(--vscode-button-secondaryHoverBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator{background-color:var(--vscode-button-background);border-top:1px solid var(--vscode-button-border);border-bottom:1px solid var(--vscode-button-border)}.monaco-button-dropdown.default-colors .monaco-button.secondary+.monaco-button-dropdown-separator{background-color:var(--vscode-button-secondaryBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator>div{background-color:var(--vscode-button-separator)}.monaco-count-badge{padding:3px 6px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;box-sizing:border-box}.monaco-count-badge.long{padding:2px 3px;border-radius:2px;min-height:auto;line-height:normal}.monaco-progress-container{width:100%;height:2px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:2px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;transition:width .1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{animation-name:progress;animation-duration:4s;animation-iteration-count:infinite;transform:translateZ(0);animation-timing-function:linear}.monaco-progress-container.infinite.infinite-long-running .progress-bit{animation-timing-function:steps(100)}@keyframes progress{0%{transform:translate(0) scaleX(1)}50%{transform:translate(2500%) scaleX(3)}to{transform:translate(4900%) scaleX(1)}}.monaco-inputbox{position:relative;display:block;padding:0;box-sizing:border-box;border-radius:2px;font-size:inherit}.monaco-inputbox>.ibwrapper>.input,.monaco-inputbox>.ibwrapper>.mirror{padding:4px 6px}.monaco-inputbox>.ibwrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.ibwrapper>.input{display:inline-block;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.ibwrapper>input{text-overflow:ellipsis}.monaco-inputbox>.ibwrapper>textarea.input{display:block;scrollbar-width:none;outline:none}.monaco-inputbox>.ibwrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.ibwrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.ibwrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;box-sizing:border-box;padding:.4em;font-size:12px;line-height:17px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.monaco-findInput.highlight-0 .controls,.hc-light .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-0 .1s linear 0s}.monaco-findInput.highlight-1 .controls,.hc-light .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-1 .1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-dark-0 .1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-dark-1 .1s linear 0s}@keyframes monaco-findInput-highlight-0{0%{background:#fdff00cc}to{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:#fdff00cc}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:#ffffff70}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:#ffffff70}99%{background:transparent}}:root{--vscode-sash-size: 4px;--vscode-sash-hover-size: 4px}.monaco-sash{position:absolute;z-index:35;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.vertical{cursor:ew-resize;top:0;width:var(--vscode-sash-size);height:100%}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:var(--vscode-sash-size)}.monaco-sash:not(.disabled)>.orthogonal-drag-handle{content:" ";height:calc(var(--vscode-sash-size) * 2);width:calc(var(--vscode-sash-size) * 2);z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.start,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.end{cursor:nwse-resize}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.end,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.start{cursor:nesw-resize}.monaco-sash.vertical>.orthogonal-drag-handle.start{left:calc(var(--vscode-sash-size) * -.5);top:calc(var(--vscode-sash-size) * -1)}.monaco-sash.vertical>.orthogonal-drag-handle.end{left:calc(var(--vscode-sash-size) * -.5);bottom:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.start{top:calc(var(--vscode-sash-size) * -.5);left:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.end{top:calc(var(--vscode-sash-size) * -.5);right:calc(var(--vscode-sash-size) * -1)}.monaco-sash:before{content:"";pointer-events:none;position:absolute;width:100%;height:100%;background:transparent}.monaco-workbench:not(.reduce-motion) .monaco-sash:before{transition:background-color .1s ease-out}.monaco-sash.hover:before,.monaco-sash.active:before{background:var(--vscode-sash-hoverBorder)}.monaco-sash.vertical:before{width:var(--vscode-sash-hover-size);left:calc(50% - (var(--vscode-sash-hover-size) / 2))}.monaco-sash.horizontal:before{height:var(--vscode-sash-hover-size);top:calc(50% - (var(--vscode-sash-hover-size) / 2))}.pointer-events-disabled{pointer-events:none!important}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:#0ff3}.monaco-sash.debug:not(.disabled)>.orthogonal-drag-handle{background:red}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:initial}.monaco-split-view2>.monaco-scrollable-element{width:100%;height:100%}.monaco-split-view2>.monaco-scrollable-element>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view{white-space:initial;position:absolute}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{content:" ";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-table{display:flex;flex-direction:column;position:relative;height:100%;width:100%;white-space:nowrap;overflow:hidden}.monaco-table>.monaco-split-view2{border-bottom:1px solid transparent}.monaco-table>.monaco-list{flex:1}.monaco-table-tr{display:flex;height:100%}.monaco-table-th{width:100%;height:100%;font-weight:700;overflow:hidden;text-overflow:ellipsis}.monaco-table-th,.monaco-table-td{box-sizing:border-box;flex-shrink:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{content:"";position:absolute;left:calc(var(--vscode-sash-size) / 2);width:0;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2,.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{transition:border-color .2s ease-out}.monaco-tl-row{display:flex;height:100%;align-items:center;position:relative}.monaco-tl-row.disabled{cursor:default}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;box-sizing:border-box;height:100%;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-tl-indent>.indent-guide{transition:border-color .1s linear}.monaco-tl-twistie,.monaco-tl-contents{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;flex-shrink:0;width:16px;display:flex!important;align-items:center;justify-content:center;transform:translate(3px)}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie:before{border-radius:20px}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-tree-item-loading:before{animation:codicon-spin 1.25s steps(30) infinite}.monaco-tree-type-filter{position:absolute;top:0;display:flex;padding:3px;max-width:200px;z-index:100;margin:0 6px;border:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-workbench:not(.reduce-motion) .monaco-tree-type-filter{transition:top .3s}.monaco-tree-type-filter.disabled{top:-40px!important}.monaco-tree-type-filter-grab{display:flex!important;align-items:center;justify-content:center;cursor:grab;margin-right:2px}.monaco-tree-type-filter-grab.grabbing{cursor:grabbing}.monaco-tree-type-filter-input{flex:1}.monaco-tree-type-filter-input .monaco-inputbox{height:23px}.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.input,.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.mirror{padding:2px 4px}.monaco-tree-type-filter-input .monaco-findInput>.controls{top:2px}.monaco-tree-type-filter-actionbar{margin-left:4px}.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label{padding:2px}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container{position:absolute;top:0;left:0;width:100%;height:0;z-index:13;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row.monaco-list-row{position:absolute;width:100%;opacity:1!important;overflow:hidden;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row:hover{background-color:var(--vscode-list-hoverBackground)!important;cursor:pointer}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty,.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty .monaco-tree-sticky-container-shadow{display:none}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow{position:absolute;bottom:-3px;left:0;height:0px;width:100%}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container[tabindex="0"]:focus{outline:none}.monaco-icon-label{display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit!important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;flex-shrink:0}.monaco-icon-label-iconpath{width:16px;height:16px;padding-left:2px;margin-top:2px;display:flex}.monaco-icon-label-container.disabled{color:var(--vscode-disabledForeground)}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-suffix-container>.label-suffix{opacity:.7;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;margin-left:.5em;font-size:.9em;white-space:pre}.monaco-icon-label.nowrap>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{white-space:nowrap}.vs .monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.95}.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{font-style:italic}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:.66}.monaco-icon-label.italic:after{font-style:italic}.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{text-decoration:line-through}.monaco-icon-label:after{opacity:.75;font-size:90%;font-weight:600;margin:auto 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description{opacity:.8}.monaco-keybinding{display:flex;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border-style:solid;border-width:1px;border-radius:3px;vertical-align:middle;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%;color:var(--vscode-editor-foreground);background-color:var(--vscode-editor-background);overflow-wrap:initial}.monaco-editor-background{background-color:var(--vscode-editor-background)}.monaco-editor .rangeHighlight{background-color:var(--vscode-editor-rangeHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-rangeHighlightBorder)}.monaco-editor.hc-black .rangeHighlight,.monaco-editor.hc-light .rangeHighlight{border-style:dotted}.monaco-editor .symbolHighlight{background-color:var(--vscode-editor-symbolHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-symbolHighlightBorder)}.monaco-editor.hc-black .symbolHighlight,.monaco-editor.hc-light .symbolHighlight{border-style:dotted}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .view-overlays>div,.monaco-editor .margin-view-overlays>div{position:absolute;width:100%}.monaco-editor .squiggly-error{border-bottom:4px double var(--vscode-editorError-border)}.monaco-editor .squiggly-error:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorError-background)}.monaco-editor .squiggly-warning{border-bottom:4px double var(--vscode-editorWarning-border)}.monaco-editor .squiggly-warning:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorWarning-background)}.monaco-editor .squiggly-info{border-bottom:4px double var(--vscode-editorInfo-border)}.monaco-editor .squiggly-info:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorInfo-background)}.monaco-editor .squiggly-hint{border-bottom:2px dotted var(--vscode-editorHint-border)}.monaco-editor.showUnused .squiggly-unnecessary{border-bottom:2px dashed var(--vscode-editorUnnecessaryCode-border)}.monaco-editor.showDeprecated .squiggly-inline-deprecated{text-decoration:line-through;text-decoration-color:var(--vscode-editor-foreground, inherit)}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent;z-index:-10}.monaco-editor .inputarea.ime-input{z-index:10;caret-color:var(--vscode-editorCursor-foreground);color:var(--vscode-editor-foreground)}.monaco-editor .margin-view-overlays .line-numbers{bottom:0;font-variant-numeric:tabular-nums;position:absolute;text-align:right;display:inline-block;vertical-align:middle;box-sizing:border-box;cursor:default}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .line-numbers{color:var(--vscode-editorLineNumber-foreground)}.monaco-editor .line-numbers.active-line-number{color:var(--vscode-editorLineNumber-activeForeground)}.monaco-editor .margin{background-color:var(--vscode-editorGutter-background)}.monaco-mouse-cursor-text{cursor:text}.monaco-editor .blockDecorations-container{position:absolute;top:0;pointer-events:none}.monaco-editor .blockDecorations-block{position:absolute;box-sizing:border-box}.monaco-editor .view-overlays .current-line,.monaco-editor .margin-view-overlays .current-line{display:block;position:absolute;left:0;top:0;box-sizing:border-box;height:100%}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute;height:100%}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .glyph-margin-widgets .cgmr{position:absolute;display:flex;align-items:center;justify-content:center}.monaco-editor .glyph-margin-widgets .cgmr.codicon-modifier-spin:before{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.monaco-editor .lines-content .core-guide{position:absolute;box-sizing:border-box;height:100%}.mtkcontrol{color:#fff!important;background:#960000!important}.mtkoverflow{background-color:var(--vscode-button-background, var(--vscode-editor-background));color:var(--vscode-button-foreground, var(--vscode-editor-foreground));border-width:1px;border-style:solid;border-color:var(--vscode-contrastBorder);border-radius:2px;padding:4px;cursor:pointer}.mtkoverflow:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{user-select:none;-webkit-user-select:none}.monaco-editor.mac .lines-content:hover,.monaco-editor.mac .view-line:hover,.monaco-editor.mac .view-lines:hover{user-select:text;-webkit-user-select:text;-ms-user-select:text}.monaco-editor.enable-user-select{user-select:initial;-webkit-user-select:initial}.monaco-editor .view-lines{white-space:nowrap}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .lines-content>.view-lines>.view-line>span{top:0;bottom:0;position:absolute}.monaco-editor .mtkw{color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .mtkz{display:inline-block;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover:hover .minimap-slider,.monaco-editor .minimap.slider-mouseover .minimap-slider.active{opacity:1}.monaco-editor .minimap-slider .minimap-slider-horizontal{background:var(--vscode-minimapSlider-background)}.monaco-editor .minimap-slider:hover .minimap-slider-horizontal{background:var(--vscode-minimapSlider-hoverBackground)}.monaco-editor .minimap-slider.active .minimap-slider-horizontal{background:var(--vscode-minimapSlider-activeBackground)}.monaco-editor .minimap-shadow-visible{box-shadow:var(--vscode-scrollbar-shadow) -6px 0 6px -6px inset}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor.no-minimap-shadow .minimap-shadow-visible{position:absolute;left:-1px;width:1px}.minimap.autohide{opacity:0;transition:opacity .5s}.minimap.autohide:hover{opacity:1}.monaco-editor .minimap{z-index:5}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0;box-shadow:1px 0 0 0 var(--vscode-editorRuler-foreground) inset}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .focused .selected-text{background-color:var(--vscode-editor-selectionBackground)}.monaco-editor .selected-text{background-color:var(--vscode-editor-inactiveSelectionBackground)}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor.hc-light .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-light .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-light .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-light .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;overflow:hidden;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{background:transparent!important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent!important}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent!important}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate}.cursor-phase{animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate}.monaco-editor .mwh{position:absolute;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .diff-hidden-lines-widget{width:100%}.monaco-editor .diff-hidden-lines{height:0px;transform:translateY(-10px);font-size:13px;line-height:14px}.monaco-editor .diff-hidden-lines:not(.dragging) .top:hover,.monaco-editor .diff-hidden-lines:not(.dragging) .bottom:hover,.monaco-editor .diff-hidden-lines .top.dragging,.monaco-editor .diff-hidden-lines .bottom.dragging{background-color:var(--vscode-focusBorder)}.monaco-editor .diff-hidden-lines .top,.monaco-editor .diff-hidden-lines .bottom{transition:background-color .1s ease-out;height:4px;background-color:transparent;background-clip:padding-box;border-bottom:2px solid transparent;border-top:4px solid transparent}.monaco-editor.draggingUnchangedRegion.canMoveTop:not(.canMoveBottom) *,.monaco-editor .diff-hidden-lines .top.canMoveTop:not(.canMoveBottom),.monaco-editor .diff-hidden-lines .bottom.canMoveTop:not(.canMoveBottom){cursor:n-resize!important}.monaco-editor.draggingUnchangedRegion:not(.canMoveTop).canMoveBottom *,.monaco-editor .diff-hidden-lines .top:not(.canMoveTop).canMoveBottom,.monaco-editor .diff-hidden-lines .bottom:not(.canMoveTop).canMoveBottom{cursor:s-resize!important}.monaco-editor.draggingUnchangedRegion.canMoveTop.canMoveBottom *,.monaco-editor .diff-hidden-lines .top.canMoveTop.canMoveBottom,.monaco-editor .diff-hidden-lines .bottom.canMoveTop.canMoveBottom{cursor:ns-resize!important}.monaco-editor .diff-hidden-lines .top{transform:translateY(4px)}.monaco-editor .diff-hidden-lines .bottom{transform:translateY(-6px)}.monaco-editor .diff-unchanged-lines{background:var(--vscode-diffEditor-unchangedCodeBackground)}.monaco-editor .noModificationsOverlay{z-index:1;background:var(--vscode-editor-background);display:flex;justify-content:center;align-items:center}.monaco-editor .diff-hidden-lines .center{background:var(--vscode-diffEditor-unchangedRegionBackground);color:var(--vscode-diffEditor-unchangedRegionForeground);overflow:hidden;display:block;text-overflow:ellipsis;white-space:nowrap;height:24px;box-shadow:inset 0 -5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow),inset 0 5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow)}.monaco-editor .diff-hidden-lines .center span.codicon{vertical-align:middle}.monaco-editor .diff-hidden-lines .center a:hover .codicon{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .diff-hidden-lines div.breadcrumb-item{cursor:pointer}.monaco-editor .diff-hidden-lines div.breadcrumb-item:hover{color:var(--vscode-editorLink-activeForeground)}.monaco-editor .movedOriginal,.monaco-editor .movedModified{border:2px solid var(--vscode-diffEditor-move-border)}.monaco-editor .movedOriginal.currentMove,.monaco-editor .movedModified.currentMove{border:2px solid var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path.currentMove{stroke:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path{pointer-events:visiblestroke}.monaco-diff-editor .moved-blocks-lines .arrow{fill:var(--vscode-diffEditor-move-border)}.monaco-diff-editor .moved-blocks-lines .arrow.currentMove{fill:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines .arrow-rectangle{fill:var(--vscode-editor-background)}.monaco-diff-editor .moved-blocks-lines{position:absolute;pointer-events:none}.monaco-diff-editor .moved-blocks-lines path{fill:none;stroke:var(--vscode-diffEditor-move-border);stroke-width:2}.monaco-editor .char-delete.diff-range-empty{margin-left:-1px;border-left:solid var(--vscode-diffEditor-removedTextBackground) 3px}.monaco-editor .char-insert.diff-range-empty{border-left:solid var(--vscode-diffEditor-insertedTextBackground) 3px}.monaco-editor .fold-unchanged{cursor:pointer}.monaco-diff-editor .diff-moved-code-block{display:flex;justify-content:flex-end;margin-top:-4px}.monaco-diff-editor .diff-moved-code-block .action-bar .action-label.codicon{width:12px;height:12px;font-size:12px}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor .diffOverview .diffViewport{z-index:10}.monaco-diff-editor.vs .diffOverview{background:#00000008}.monaco-diff-editor.vs-dark .diffOverview{background:#ffffff03}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar{background:#0000}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:#ababab66}.modified-in-monaco-diff-editor.hc-black .slider.active,.modified-in-monaco-diff-editor.hc-light .slider.active{background:none}.monaco-editor .insert-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-diff-editor .delete-sign{font-size:11px!important;opacity:.7!important;display:flex!important;align-items:center}.monaco-editor.hc-black .insert-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .delete-sign,.monaco-editor.hc-light .insert-sign,.monaco-diff-editor.hc-light .insert-sign,.monaco-editor.hc-light .delete-sign,.monaco-diff-editor.hc-light .delete-sign{opacity:1}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .inline-added-margin-view-zone{text-align:right}.monaco-editor .arrow-revert-change{z-index:10;position:absolute}.monaco-editor .arrow-revert-change:hover{cursor:pointer}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-editor .char-insert,.monaco-diff-editor .char-insert{background-color:var(--vscode-diffEditor-insertedTextBackground)}.monaco-editor .line-insert,.monaco-diff-editor .line-insert{background-color:var(--vscode-diffEditor-insertedLineBackground, var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .line-insert,.monaco-editor .char-insert{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-insertedTextBorder)}.monaco-editor.hc-black .line-insert,.monaco-editor.hc-light .line-insert,.monaco-editor.hc-black .char-insert,.monaco-editor.hc-light .char-insert{border-style:dashed}.monaco-editor .line-delete,.monaco-editor .char-delete{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-removedTextBorder)}.monaco-editor.hc-black .line-delete,.monaco-editor.hc-light .line-delete,.monaco-editor.hc-black .char-delete,.monaco-editor.hc-light .char-delete{border-style:dashed}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .gutter-insert,.monaco-diff-editor .gutter-insert{background-color:var(--vscode-diffEditorGutter-insertedLineBackground, var(--vscode-diffEditor-insertedLineBackground), var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .char-delete,.monaco-diff-editor .char-delete,.monaco-editor .inline-deleted-text{background-color:var(--vscode-diffEditor-removedTextBackground)}.monaco-editor .inline-deleted-text{text-decoration:line-through}.monaco-editor .line-delete,.monaco-diff-editor .line-delete{background-color:var(--vscode-diffEditor-removedLineBackground, var(--vscode-diffEditor-removedTextBackground))}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .gutter-delete,.monaco-diff-editor .gutter-delete{background-color:var(--vscode-diffEditorGutter-removedLineBackground, var(--vscode-diffEditor-removedLineBackground), var(--vscode-diffEditor-removedTextBackground))}.monaco-diff-editor.side-by-side .editor.modified{box-shadow:-6px 0 5px -5px var(--vscode-scrollbar-shadow);border-left:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor.side-by-side .editor.original{box-shadow:6px 0 5px -5px var(--vscode-scrollbar-shadow);border-right:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor .diffViewport{background:var(--vscode-scrollbarSlider-background)}.monaco-diff-editor .diffViewport:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-diff-editor .diffViewport:active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .diagonal-fill{background-image:linear-gradient(-45deg,var(--vscode-diffEditor-diagonalFill) 12.5%,#0000 12.5%,#0000 50%,var(--vscode-diffEditor-diagonalFill) 50%,var(--vscode-diffEditor-diagonalFill) 62.5%,#0000 62.5%,#0000 100%);background-size:8px 8px}.monaco-diff-editor .gutter{position:relative;overflow:hidden;flex-shrink:0;flex-grow:0}.monaco-diff-editor .gutter>div{position:absolute}.monaco-diff-editor .gutter .gutterItem{opacity:0;transition:opacity .7s}.monaco-diff-editor .gutter .gutterItem.showAlways{opacity:1;transition:none}.monaco-diff-editor .gutter .gutterItem.noTransition{transition:none}.monaco-diff-editor .gutter:hover .gutterItem{opacity:1;transition:opacity .1s ease-in-out}.monaco-diff-editor .gutter .gutterItem .background{position:absolute;height:100%;left:50%;width:1px;border-left:2px var(--vscode-menu-border) solid}.monaco-diff-editor .gutter .gutterItem .buttons{position:absolute;width:100%;display:flex;justify-content:center;align-items:center}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar{height:fit-content}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar{line-height:1}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container{width:fit-content;border-radius:4px;background:var(--vscode-editorGutter-commentRangeForeground)}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container .action-item:hover{background:var(--vscode-toolbar-hoverBackground)}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container .action-item .action-label{padding:1px 2px}.monaco-diff-editor .diff-hidden-lines-compact{display:flex;height:11px}.monaco-diff-editor .diff-hidden-lines-compact .line-left,.monaco-diff-editor .diff-hidden-lines-compact .line-right{height:1px;border-top:1px solid;border-color:var(--vscode-editorCodeLens-foreground);opacity:.5;margin:auto;width:100%}.monaco-diff-editor .diff-hidden-lines-compact .line-left{width:20px}.monaco-diff-editor .diff-hidden-lines-compact .text{color:var(--vscode-editorCodeLens-foreground);text-wrap:nowrap;font-size:11px;line-height:11px;margin:0 4px}.monaco-component.diff-review{user-select:none;-webkit-user-select:none;z-index:99}.monaco-diff-editor .diff-review{position:absolute}.monaco-component.diff-review .diff-review-line-number{text-align:right;display:inline-block;color:var(--vscode-editorLineNumber-foreground)}.monaco-component.diff-review .diff-review-summary{padding-left:10px}.monaco-component.diff-review .diff-review-shadow{position:absolute;box-shadow:var(--vscode-scrollbar-shadow) 0 -6px 6px -6px inset}.monaco-component.diff-review .diff-review-row{white-space:pre}.monaco-component.diff-review .diff-review-table{display:table;min-width:100%}.monaco-component.diff-review .diff-review-row{display:table-row;width:100%}.monaco-component.diff-review .diff-review-spacer{display:inline-block;width:10px;vertical-align:middle}.monaco-component.diff-review .diff-review-spacer>.codicon{font-size:9px!important}.monaco-component.diff-review .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px;z-index:100}.monaco-component.diff-review .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-component.diff-review .revertButton{cursor:pointer}.monaco-toolbar{height:100%}.monaco-toolbar .toolbar-toggle-more{display:inline-block;padding:0}.monaco-component.multiDiffEditor{background:var(--vscode-multiDiffEditor-background);position:relative;height:100%;width:100%;overflow-y:hidden}.monaco-component.multiDiffEditor>div{position:absolute;top:0;left:0;height:100%;width:100%}.monaco-component.multiDiffEditor>div.placeholder{visibility:hidden;display:grid;place-items:center;place-content:center}.monaco-component.multiDiffEditor>div.placeholder.visible{visibility:visible}.monaco-component.multiDiffEditor .active{--vscode-multiDiffEditor-border: var(--vscode-focusBorder)}.monaco-component.multiDiffEditor .multiDiffEntry{display:flex;flex-direction:column;flex:1;overflow:hidden}.monaco-component.multiDiffEditor .multiDiffEntry .collapse-button{margin:0 5px;cursor:pointer}.monaco-component.multiDiffEditor .multiDiffEntry .collapse-button a{display:block}.monaco-component.multiDiffEditor .multiDiffEntry .header{z-index:1000;background:var(--vscode-editor-background)}.monaco-component.multiDiffEditor .multiDiffEntry .header:not(.collapsed) .header-content{border-bottom:1px solid var(--vscode-sideBarSectionHeader-border)}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content{margin:8px 0 0;padding:4px 5px;border-top:1px solid var(--vscode-multiDiffEditor-border);display:flex;align-items:center;color:var(--vscode-foreground);background:var(--vscode-multiDiffEditor-headerBackground)}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content.shadow{box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path{display:flex;flex:1;min-width:0}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .title{font-size:14px;line-height:22px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .title.original{flex:1;min-width:0;text-overflow:ellipsis}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .status{font-weight:600;opacity:.75;margin:0 10px;line-height:22px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .actions{padding:0 8px}.monaco-component.multiDiffEditor .multiDiffEntry .editorParent{flex:1;display:flex;flex-direction:column;border-bottom:1px solid var(--vscode-multiDiffEditor-border);overflow:hidden}.monaco-component.multiDiffEditor .multiDiffEntry .editorContainer{flex:1}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .peekview-widget .head{box-sizing:border-box;display:flex;justify-content:space-between;flex-wrap:nowrap}.monaco-editor .peekview-widget .head .peekview-title{display:flex;align-items:baseline;font-size:13px;margin-left:20px;min-width:0;text-overflow:ellipsis;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title.clickable{cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:.9em;margin-left:.5em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monaco-editor .peekview-widget .head .peekview-title .dirname,.monaco-editor .peekview-widget .head .peekview-title .filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px;align-self:center}.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon{color:inherit!important}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px;background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-lineForeground)}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:inline-flex;width:100%;height:100%;color:var(--vscode-peekViewResult-fileForeground)}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground)!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight{background-color:var(--vscode-peekViewResult-matchHighlightBackground)}.monaco-editor .reference-zone-widget .preview .reference-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .reference-zone-widget .preview .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight{border:1px dotted var(--vscode-contrastActiveBorder, transparent);box-sizing:border-box}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px;z-index:10000}.monaco-editor .monaco-editor-overlaymessage.below{padding-bottom:0;padding-top:8px;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{animation:fadeIn .15s ease-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{animation:fadeOut .1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:2px 4px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-inputValidation-infoBorder);border-radius:3px}.monaco-editor .monaco-editor-overlaymessage .message p{margin-block:0px}.monaco-editor .monaco-editor-overlaymessage .message a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-editor-overlaymessage .message a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor.hc-black .monaco-editor-overlaymessage .message,.monaco-editor.hc-light .monaco-editor-overlaymessage .message{border-width:2px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0!important;height:0!important;border-color:transparent;border-style:solid;z-index:1000;border-width:8px;position:absolute;left:2px}.monaco-editor .monaco-editor-overlaymessage .anchor.top{border-bottom-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage .anchor.below{border-top-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top,.monaco-editor .monaco-editor-overlaymessage.below .anchor.below{display:none}.monaco-editor .monaco-editor-overlaymessage.below .anchor.top{display:inherit;top:-8px}.monaco-editor .inlineSuggestionsHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineSuggestionsHints a,.monaco-editor .inlineSuggestionsHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineSuggestionsHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a{display:flex;min-width:19px;justify-content:center}.monaco-editor .inlineSuggestionStatusBarItemLabel{margin-right:2px}.colorpicker-widget{height:190px;user-select:none;-webkit-user-select:none}.colorpicker-color-decoration,.hc-light .colorpicker-color-decoration{border:solid .1em #000;box-sizing:border-box;margin:.1em .2em 0;width:.8em;height:.8em;line-height:.8em;display:inline-block;cursor:pointer}.hc-black .colorpicker-color-decoration,.vs-dark .colorpicker-color-decoration{border:solid .1em #eee}.colorpicker-header{display:flex;height:24px;position:relative;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-header .picked-color{width:240px;display:flex;align-items:center;justify-content:center;line-height:24px;cursor:pointer;color:#fff;flex:1;white-space:nowrap;overflow:hidden}.colorpicker-header .picked-color .picked-color-presentation{white-space:nowrap;margin-left:5px;margin-right:5px}.colorpicker-header .picked-color .codicon{color:inherit;font-size:14px}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.standalone-colorpicker{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header.standalone-colorpicker{border-bottom:none}.colorpicker-header .close-button{cursor:pointer;background-color:var(--vscode-editorHoverWidget-background);border-left:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header .close-button-inner-div{width:100%;height:100%;text-align:center}.colorpicker-header .close-button-inner-div:hover{background-color:var(--vscode-toolbar-hoverBackground)}.colorpicker-header .close-icon{padding:3px}.colorpicker-body{display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid rgb(255,255,255);border-radius:100%;box-shadow:0 0 2px #000c;position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .standalone-strip{width:25px;height:122px}.colorpicker-body .hue-strip{position:relative;margin-left:8px;cursor:grab;background:linear-gradient(to bottom,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:grab;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;box-sizing:border-box;border:1px solid rgba(255,255,255,.71);box-shadow:0 0 1px #000000d9}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.colorpicker-body .standalone-strip .standalone-overlay{height:122px;pointer-events:none}.standalone-colorpicker-body{display:block;border:1px solid transparent;border-bottom:1px solid var(--vscode-editorHoverWidget-border);overflow:hidden}.colorpicker-body .insert-button{position:absolute;height:20px;width:58px;padding:0;right:8px;bottom:8px;background:var(--vscode-button-background);color:var(--vscode-button-foreground);border-radius:2px;border:none;cursor:pointer}.colorpicker-body .insert-button:hover{background:var(--vscode-button-hoverBackground)}.monaco-editor .hoverHighlight{background-color:var(--vscode-editor-hoverHighlightBackground)}.monaco-editor .monaco-hover-content{padding-right:2px;padding-bottom:2px;box-sizing:border-box}.monaco-editor .monaco-hover{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px}.monaco-editor .monaco-hover a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .monaco-hover .hover-row{display:flex}.monaco-editor .monaco-hover .hover-row .hover-row-contents{min-width:0;display:flex;flex-direction:column}.monaco-editor .monaco-hover .hover-row .verbosity-actions{display:flex;flex-direction:column;padding-left:5px;padding-right:5px;justify-content:end;border-right:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon{cursor:pointer;font-size:11px}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon.enabled{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon.disabled{opacity:.6}.monaco-editor .monaco-hover .hover-row .actions{background-color:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-editor .monaco-hover code{background-color:var(--vscode-textCodeBlock-background)}@font-face{font-family:codicon;font-display:block;src:url(./codicon-DCmgc-ay.ttf) format("truetype")}.codicon[class*=codicon-]{font: 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none}.codicon-wrench-subaction{opacity:.5}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin,.codicon-notebook-state-executing.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:.4}.codicon-loading,.codicon-tree-item-loading:before{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.monaco-editor .codicon.codicon-symbol-array,.monaco-workbench .codicon.codicon-symbol-array{color:var(--vscode-symbolIcon-arrayForeground)}.monaco-editor .codicon.codicon-symbol-boolean,.monaco-workbench .codicon.codicon-symbol-boolean{color:var(--vscode-symbolIcon-booleanForeground)}.monaco-editor .codicon.codicon-symbol-class,.monaco-workbench .codicon.codicon-symbol-class{color:var(--vscode-symbolIcon-classForeground)}.monaco-editor .codicon.codicon-symbol-method,.monaco-workbench .codicon.codicon-symbol-method{color:var(--vscode-symbolIcon-methodForeground)}.monaco-editor .codicon.codicon-symbol-color,.monaco-workbench .codicon.codicon-symbol-color{color:var(--vscode-symbolIcon-colorForeground)}.monaco-editor .codicon.codicon-symbol-constant,.monaco-workbench .codicon.codicon-symbol-constant{color:var(--vscode-symbolIcon-constantForeground)}.monaco-editor .codicon.codicon-symbol-constructor,.monaco-workbench .codicon.codicon-symbol-constructor{color:var(--vscode-symbolIcon-constructorForeground)}.monaco-editor .codicon.codicon-symbol-value,.monaco-workbench .codicon.codicon-symbol-value,.monaco-editor .codicon.codicon-symbol-enum,.monaco-workbench .codicon.codicon-symbol-enum{color:var(--vscode-symbolIcon-enumeratorForeground)}.monaco-editor .codicon.codicon-symbol-enum-member,.monaco-workbench .codicon.codicon-symbol-enum-member{color:var(--vscode-symbolIcon-enumeratorMemberForeground)}.monaco-editor .codicon.codicon-symbol-event,.monaco-workbench .codicon.codicon-symbol-event{color:var(--vscode-symbolIcon-eventForeground)}.monaco-editor .codicon.codicon-symbol-field,.monaco-workbench .codicon.codicon-symbol-field{color:var(--vscode-symbolIcon-fieldForeground)}.monaco-editor .codicon.codicon-symbol-file,.monaco-workbench .codicon.codicon-symbol-file{color:var(--vscode-symbolIcon-fileForeground)}.monaco-editor .codicon.codicon-symbol-folder,.monaco-workbench .codicon.codicon-symbol-folder{color:var(--vscode-symbolIcon-folderForeground)}.monaco-editor .codicon.codicon-symbol-function,.monaco-workbench .codicon.codicon-symbol-function{color:var(--vscode-symbolIcon-functionForeground)}.monaco-editor .codicon.codicon-symbol-interface,.monaco-workbench .codicon.codicon-symbol-interface{color:var(--vscode-symbolIcon-interfaceForeground)}.monaco-editor .codicon.codicon-symbol-key,.monaco-workbench .codicon.codicon-symbol-key{color:var(--vscode-symbolIcon-keyForeground)}.monaco-editor .codicon.codicon-symbol-keyword,.monaco-workbench .codicon.codicon-symbol-keyword{color:var(--vscode-symbolIcon-keywordForeground)}.monaco-editor .codicon.codicon-symbol-module,.monaco-workbench .codicon.codicon-symbol-module{color:var(--vscode-symbolIcon-moduleForeground)}.monaco-editor .codicon.codicon-symbol-namespace,.monaco-workbench .codicon.codicon-symbol-namespace{color:var(--vscode-symbolIcon-namespaceForeground)}.monaco-editor .codicon.codicon-symbol-null,.monaco-workbench .codicon.codicon-symbol-null{color:var(--vscode-symbolIcon-nullForeground)}.monaco-editor .codicon.codicon-symbol-number,.monaco-workbench .codicon.codicon-symbol-number{color:var(--vscode-symbolIcon-numberForeground)}.monaco-editor .codicon.codicon-symbol-object,.monaco-workbench .codicon.codicon-symbol-object{color:var(--vscode-symbolIcon-objectForeground)}.monaco-editor .codicon.codicon-symbol-operator,.monaco-workbench .codicon.codicon-symbol-operator{color:var(--vscode-symbolIcon-operatorForeground)}.monaco-editor .codicon.codicon-symbol-package,.monaco-workbench .codicon.codicon-symbol-package{color:var(--vscode-symbolIcon-packageForeground)}.monaco-editor .codicon.codicon-symbol-property,.monaco-workbench .codicon.codicon-symbol-property{color:var(--vscode-symbolIcon-propertyForeground)}.monaco-editor .codicon.codicon-symbol-reference,.monaco-workbench .codicon.codicon-symbol-reference{color:var(--vscode-symbolIcon-referenceForeground)}.monaco-editor .codicon.codicon-symbol-snippet,.monaco-workbench .codicon.codicon-symbol-snippet{color:var(--vscode-symbolIcon-snippetForeground)}.monaco-editor .codicon.codicon-symbol-string,.monaco-workbench .codicon.codicon-symbol-string{color:var(--vscode-symbolIcon-stringForeground)}.monaco-editor .codicon.codicon-symbol-struct,.monaco-workbench .codicon.codicon-symbol-struct{color:var(--vscode-symbolIcon-structForeground)}.monaco-editor .codicon.codicon-symbol-text,.monaco-workbench .codicon.codicon-symbol-text{color:var(--vscode-symbolIcon-textForeground)}.monaco-editor .codicon.codicon-symbol-type-parameter,.monaco-workbench .codicon.codicon-symbol-type-parameter{color:var(--vscode-symbolIcon-typeParameterForeground)}.monaco-editor .codicon.codicon-symbol-unit,.monaco-workbench .codicon.codicon-symbol-unit{color:var(--vscode-symbolIcon-unitForeground)}.monaco-editor .codicon.codicon-symbol-variable,.monaco-workbench .codicon.codicon-symbol-variable{color:var(--vscode-symbolIcon-variableForeground)}.monaco-editor .lightBulbWidget{display:flex;align-items:center;justify-content:center}.monaco-editor .lightBulbWidget:hover{cursor:pointer}.monaco-editor .lightBulbWidget.codicon-light-bulb,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle-autofix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .lightBulbWidget.codicon-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.monaco-editor .lightBulbWidget:before{position:relative;z-index:2}.monaco-editor .lightBulbWidget:after{position:absolute;top:0;left:0;content:"";display:block;width:100%;height:100%;opacity:.3;z-index:1}.monaco-editor .glyph-margin-widgets .cgmr[class*=codicon-gutter-lightbulb]{display:block;cursor:pointer}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb,.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-auto-fix,.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-aifix-auto-fix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.action-widget{font-size:13px;min-width:160px;max-width:80vw;z-index:40;display:block;width:100%;border:1px solid var(--vscode-editorWidget-border)!important;border-radius:5px;background-color:var(--vscode-editorActionList-background);color:var(--vscode-editorActionList-foreground);padding:4px;box-shadow:0 2px 8px var(--vscode-widget-shadow)}.context-view-block{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:-1}.context-view-pointerBlock{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:2}.action-widget .monaco-list{user-select:none;-webkit-user-select:none;border:none!important;border-width:0!important}.action-widget .monaco-list:focus:before{outline:0!important}.action-widget .monaco-list .monaco-scrollable-element{overflow:visible}.action-widget .monaco-list .monaco-list-row{padding:0 10px;white-space:nowrap;cursor:pointer;touch-action:none;width:100%;border-radius:4px}.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled){background-color:var(--vscode-editorActionList-focusBackground)!important;color:var(--vscode-editorActionList-focusForeground);outline:1px solid var(--vscode-menu-selectionBorder, transparent);outline-offset:-1px}.action-widget .monaco-list-row.group-header{color:var(--vscode-descriptionForeground)!important;font-weight:600;font-size:12px}.action-widget .monaco-list-row.group-header:not(:first-of-type){margin-top:2px}.action-widget .monaco-list .group-header,.action-widget .monaco-list .option-disabled,.action-widget .monaco-list .option-disabled:before,.action-widget .monaco-list .option-disabled .focused,.action-widget .monaco-list .option-disabled .focused:before{cursor:default!important;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background-color:transparent!important;outline:0 solid!important}.action-widget .monaco-list-row.action{display:flex;gap:8px;align-items:center}.action-widget .monaco-list-row.action.option-disabled,.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,.action-widget .monaco-list-row.action.option-disabled .codicon,.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled{color:var(--vscode-disabledForeground)}.action-widget .monaco-list-row.action:not(.option-disabled) .codicon{color:inherit}.action-widget .monaco-list-row.action .title{flex:1;overflow:hidden;text-overflow:ellipsis}.action-widget .monaco-list-row.action .monaco-keybinding>.monaco-keybinding-key{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow)}.action-widget .action-widget-action-bar{background-color:var(--vscode-editorActionList-background);border-top:1px solid var(--vscode-editorHoverWidget-border);margin-top:2px}.action-widget .action-widget-action-bar:before{display:block;content:"";width:100%}.action-widget .action-widget-action-bar .actions-container{padding:3px 8px 0}.action-widget-action-bar .action-label{color:var(--vscode-textLink-activeForeground);font-size:12px;line-height:22px;padding:0;pointer-events:all}.action-widget-action-bar .action-item{margin-right:16px;pointer-events:none}.action-widget-action-bar .action-label:hover{background-color:transparent!important}.monaco-action-bar .actions-container.highlight-toggled .action-label.checked{background:var(--vscode-actionBar-toggledBackground)!important}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;user-select:text;-webkit-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:flex;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-activeForeground)}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer;color:var(--vscode-textLink-activeForeground)}.monaco-editor .zone-widget .codicon.codicon-error,.markers-panel .marker-icon.error,.markers-panel .marker-icon .codicon.codicon-error,.text-search-provider-messages .providerMessage .codicon.codicon-error,.extensions-viewlet>.extensions .codicon.codicon-error,.extension-editor .codicon.codicon-error,.preferences-editor .codicon.codicon-error{color:var(--vscode-problemsErrorIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-warning,.markers-panel .marker-icon.warning,.markers-panel .marker-icon .codicon.codicon-warning,.text-search-provider-messages .providerMessage .codicon.codicon-warning,.extensions-viewlet>.extensions .codicon.codicon-warning,.extension-editor .codicon.codicon-warning,.preferences-editor .codicon.codicon-warning{color:var(--vscode-problemsWarningIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-info,.markers-panel .marker-icon.info,.markers-panel .marker-icon .codicon.codicon-info,.text-search-provider-messages .providerMessage .codicon.codicon-info,.extensions-viewlet>.extensions .codicon.codicon-info,.extension-editor .codicon.codicon-info,.preferences-editor .codicon.codicon-info{color:var(--vscode-problemsInfoIcon-foreground)}.monaco-editor .suggest-preview-additional-widget{white-space:nowrap}.monaco-editor .suggest-preview-additional-widget .content-spacer{color:transparent;white-space:pre}.monaco-editor .suggest-preview-additional-widget .button{display:inline-block;cursor:pointer;text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-hidden{opacity:0;font-size:0}.monaco-editor .ghost-text-decoration,.monaco-editor .suggest-preview-text .ghost-text{font-style:italic}.monaco-editor .ghost-text-decoration,.monaco-editor .ghost-text-decoration-preview,.monaco-editor .suggest-preview-text .ghost-text{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.monaco-editor .snippet-placeholder{min-width:2px;outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetTabstopHighlightBorder, transparent)}.monaco-editor .finish-snippet-placeholder{outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetFinalTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetFinalTabstopHighlightBorder, transparent)}.monaco-editor .suggest-widget{width:430px;z-index:40;display:flex;flex-direction:column;border-radius:3px}.monaco-editor .suggest-widget.message{flex-direction:row;align-items:center}.monaco-editor .suggest-widget,.monaco-editor .suggest-details{flex:0 1 auto;width:100%;border-style:solid;border-width:1px;border-color:var(--vscode-editorSuggestWidget-border);background-color:var(--vscode-editorSuggestWidget-background)}.monaco-editor.hc-black .suggest-widget,.monaco-editor.hc-black .suggest-details,.monaco-editor.hc-light .suggest-widget,.monaco-editor.hc-light .suggest-details{border-width:2px}.monaco-editor .suggest-widget .suggest-status-bar{box-sizing:border-box;display:none;flex-flow:row nowrap;justify-content:space-between;width:100%;font-size:80%;padding:0 4px;border-top:1px solid var(--vscode-editorSuggestWidget-border);overflow:hidden}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{display:flex}.monaco-editor .suggest-widget .suggest-status-bar .left{padding-right:8px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label{color:var(--vscode-editorSuggestWidgetStatus-foreground)}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label{margin-right:0}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label:after{content:", ";margin-right:.3em}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%;width:100%}.monaco-editor .suggest-widget .monaco-list{user-select:none;-webkit-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:flex;-mox-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused{color:var(--vscode-editorSuggestWidget-selectedForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon{color:var(--vscode-editorSuggestWidget-selectedIconForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused)>.contents>.main .monaco-icon-label{color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-highlightForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-focusHighlightForeground)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:6px;right:2px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label{overflow:hidden;text-overflow:ellipsis;opacity:.6}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:12px;opacity:.4;font-size:85%;line-height:initial;text-overflow:ellipsis;overflow:hidden;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{font-size:85%;margin-left:1.1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label)>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-shrink:1;flex-grow:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:0}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.left>.monaco-icon-label{max-width:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;flex-shrink:4;max-width:70%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:inline-block}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:flex;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 .3em;border:.1em solid #000;width:.7em;height:.7em;display:inline-block}.monaco-editor .suggest-details-container{z-index:41}.monaco-editor .suggest-details{display:flex;flex-direction:column;cursor:default;color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-details.focused{border-color:var(--vscode-focusBorder)}.monaco-editor .suggest-details a{color:var(--vscode-textLink-foreground)}.monaco-editor .suggest-details a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .suggest-details code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .suggest-details.no-docs{display:none}.monaco-editor .suggest-details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-details>.monaco-scrollable-element>.body{box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type{flex:2;overflow:hidden;text-overflow:ellipsis;opacity:.7;white-space:pre;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type.auto-wrap{white-space:normal;word-break:break-all}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-details.no-type>.monaco-scrollable-element>.body>.docs{margin-right:24px;overflow:hidden}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:initial;min-height:calc(1rem + 8px)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .monaco-tokenized-source{white-space:pre}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .codicon{vertical-align:sub}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-details ul,.monaco-editor .suggest-details ol{padding-left:20px}.monaco-editor .suggest-details p code{font-family:var(--monaco-monospace-font)}.monaco-link{color:var(--vscode-textLink-foreground)}.monaco-link:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .sticky-widget{overflow:hidden}.monaco-editor .sticky-widget-line-numbers{float:left;background-color:inherit}.monaco-editor .sticky-widget-lines-scrollable{display:inline-block;position:absolute;overflow:hidden;width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit}.monaco-editor .sticky-widget-lines{position:absolute;background-color:inherit}.monaco-editor .sticky-line-number,.monaco-editor .sticky-line-content{color:var(--vscode-editorLineNumber-foreground);white-space:nowrap;display:inline-block;position:absolute;background-color:inherit}.monaco-editor .sticky-line-number .codicon-folding-expanded,.monaco-editor .sticky-line-number .codicon-folding-collapsed{float:right;transition:var(--vscode-editorStickyScroll-foldingOpacityTransition)}.monaco-editor .sticky-line-content{width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit;white-space:nowrap}.monaco-editor .sticky-line-number-inner{display:inline-block;text-align:right}.monaco-editor .sticky-widget{border-bottom:1px solid var(--vscode-editorStickyScroll-border)}.monaco-editor .sticky-line-content:hover{background-color:var(--vscode-editorStickyScrollHover-background);cursor:pointer}.monaco-editor .sticky-widget{width:100%;box-shadow:var(--vscode-editorStickyScroll-shadow) 0 4px 2px -2px;z-index:4;background-color:var(--vscode-editorStickyScroll-background);right:initial!important}.monaco-editor .sticky-widget.peek{background-color:var(--vscode-peekViewEditorStickyScroll-background)}.monaco-editor div.inline-edits-widget{--widget-color: var(--vscode-notifications-background)}.monaco-editor div.inline-edits-widget .promptEditor .monaco-editor{--vscode-editor-placeholder-foreground: var(--vscode-editorGhostText-foreground)}.monaco-editor div.inline-edits-widget .toolbar,.monaco-editor div.inline-edits-widget .promptEditor{opacity:0;transition:opacity .2s ease-in-out}:is(.monaco-editor div.inline-edits-widget:hover,.monaco-editor div.inline-edits-widget.focused) .toolbar,:is(.monaco-editor div.inline-edits-widget:hover,.monaco-editor div.inline-edits-widget.focused) .promptEditor{opacity:1}.monaco-editor div.inline-edits-widget .preview .monaco-editor{--vscode-editor-background: var(--widget-color)}.monaco-editor div.inline-edits-widget .preview .monaco-editor .mtk1{color:var(--vscode-editorGhostText-foreground)}.monaco-editor div.inline-edits-widget .preview .monaco-editor .view-overlays .current-line-exact,.monaco-editor div.inline-edits-widget .preview .monaco-editor .current-line-margin{border:none}.monaco-editor div.inline-edits-widget svg .gradient-start{stop-color:var(--vscode-editor-background)}.monaco-editor div.inline-edits-widget svg .gradient-stop{stop-color:var(--widget-color)}.monaco-editor .inlineEditSideBySide{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);white-space:pre}.monaco-editor .inlineEditHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineEditHints a,.monaco-editor .inlineEditHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineEditHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineEditHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineEditStatusBarItemLabel{margin-right:2px}.monaco-editor .inline-edit-remove{background-color:var(--vscode-editorGhostText-background);font-style:italic}.monaco-editor .inline-edit-hidden{opacity:0;font-size:0}.monaco-editor .inline-edit-decoration,.monaco-editor .suggest-preview-text .inline-edit{font-style:italic}.monaco-editor .inline-completion-text-to-replace{text-decoration:underline;text-underline-position:under}.monaco-editor .inline-edit-decoration,.monaco-editor .inline-edit-decoration-preview,.monaco-editor .suggest-preview-text .inline-edit{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.post-edit-widget{box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:1px solid var(--vscode-widget-border, transparent);border-radius:4px;background-color:var(--vscode-editorWidget-background);overflow:hidden}.post-edit-widget .monaco-button{padding:2px;border:none;border-radius:0}.post-edit-widget .monaco-button:hover{background-color:var(--vscode-button-secondaryHoverBackground)!important}.post-edit-widget .monaco-button .codicon{margin:0}.editor-banner{box-sizing:border-box;cursor:default;width:100%;font-size:12px;display:flex;overflow:visible;height:26px;background:var(--vscode-banner-background)}.editor-banner .icon-container{display:flex;flex-shrink:0;align-items:center;padding:0 6px 0 10px}.editor-banner .icon-container.custom-icon{background-repeat:no-repeat;background-position:center center;background-size:16px;width:16px;padding:0;margin:0 6px 0 10px}.editor-banner .message-container{display:flex;align-items:center;line-height:26px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-banner .message-container p{margin-block-start:0;margin-block-end:0}.editor-banner .message-actions-container{flex-grow:1;flex-shrink:0;line-height:26px;margin:0 4px}.editor-banner .message-actions-container a.monaco-button{width:inherit;margin:2px 8px;padding:0 12px}.editor-banner .message-actions-container a{padding:3px;margin-left:12px;text-decoration:underline}.editor-banner .action-container{padding:0 10px 0 6px}.editor-banner{background-color:var(--vscode-banner-background)}.editor-banner,.editor-banner .action-container .codicon,.editor-banner .message-actions-container .monaco-link{color:var(--vscode-banner-foreground)}.editor-banner .icon-container .codicon{color:var(--vscode-banner-iconForeground)}.monaco-editor .rename-box{z-index:100;color:inherit;border-radius:4px}.monaco-editor .rename-box.preview{padding:4px 4px 0}.monaco-editor .rename-box .rename-input-with-button{padding:3px;border-radius:2px;width:calc(100% - 8px)}.monaco-editor .rename-box .rename-input{width:calc(100% - 8px);padding:0}.monaco-editor .rename-box .rename-input:focus{outline:none}.monaco-editor .rename-box .rename-suggestions-button{display:flex;align-items:center;padding:3px;background-color:transparent;border:none;border-radius:5px;cursor:pointer}.monaco-editor .rename-box .rename-suggestions-button:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-editor .rename-box .rename-candidate-list-container .monaco-list-row{border-radius:2px}.monaco-editor .rename-box .rename-label{display:none;opacity:.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .parameter-hints-widget{z-index:39;display:flex;flex-direction:column;line-height:1.5em;cursor:default;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.hc-black .monaco-editor .parameter-hints-widget,.hc-light .monaco-editor .parameter-hints-widget{border-width:2px}.monaco-editor .parameter-hints-widget>.phwrapper{max-width:440px;display:flex;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.multiple .body:before{content:"";display:block;height:100%;position:absolute;opacity:.5;border-left:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .monaco-scrollable-element,.monaco-editor .parameter-hints-widget .body{display:flex;flex:1;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px;position:relative}.monaco-editor .parameter-hints-widget .signature.has-docs:after{content:"";display:block;position:absolute;left:0;width:100%;padding-top:4px;opacity:.5;border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget .code{font-family:var(--vscode-parameterHintsWidget-editorFontFamily),var(--vscode-parameterHintsWidget-editorFontFamilyDefault)}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs a{color:var(--vscode-textLink-foreground)}.monaco-editor .parameter-hints-widget .docs a:hover{color:var(--vscode-textLink-activeForeground);cursor:pointer}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:initial}.monaco-editor .parameter-hints-widget .docs code{font-family:var(--monaco-monospace-font);border-radius:3px;padding:0 .4em;background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source,.monaco-editor .parameter-hints-widget .docs .code{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .controls{display:none;flex-direction:column;align-items:center;min-width:22px;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{color:var(--vscode-editorHoverWidget-highlightForeground);font-weight:700}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:.5em}.monaco-editor .focused .selectionHighlight{background-color:var(--vscode-editor-selectionHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-selectionHighlightBorder)}.monaco-editor.hc-black .focused .selectionHighlight,.monaco-editor.hc-light .focused .selectionHighlight{border-style:dotted}.monaco-editor .wordHighlight{background-color:var(--vscode-editor-wordHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightBorder)}.monaco-editor.hc-black .wordHighlight,.monaco-editor.hc-light .wordHighlight{border-style:dotted}.monaco-editor .wordHighlightStrong{background-color:var(--vscode-editor-wordHighlightStrongBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightStrongBorder)}.monaco-editor.hc-black .wordHighlightStrong,.monaco-editor.hc-light .wordHighlightStrong{border-style:dotted}.monaco-editor .wordHighlightText{background-color:var(--vscode-editor-wordHighlightTextBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightTextBorder)}.monaco-editor.hc-black .wordHighlightText,.monaco-editor.hc-light .wordHighlightText{border-style:dotted}.monaco-editor .find-widget{position:absolute;z-index:35;height:33px;overflow:hidden;line-height:19px;transition:transform .2s linear;padding:0 4px;box-sizing:border-box;transform:translateY(calc(-100% - 10px));box-shadow:0 0 8px 2px var(--vscode-widget-shadow);color:var(--vscode-editorWidget-foreground);border-left:1px solid var(--vscode-widget-border);border-right:1px solid var(--vscode-widget-border);border-bottom:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px;background-color:var(--vscode-editorWidget-background)}.monaco-workbench.reduce-motion .monaco-editor .find-widget{transition:transform 0ms linear}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px;outline-color:var(--vscode-focusBorder)}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:3px 25px 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:flex;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{display:flex;flex:initial;margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button{width:16px;height:16px;padding:3px;border-radius:5px;flex:initial;margin-left:3px;background-position:center center;background-repeat:no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}.monaco-editor .find-widget .codicon-find-selection{width:22px;height:22px;padding:3px;border-radius:5px}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;border-radius:0;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{color:var(--vscode-disabledForeground);cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:flex;vertical-align:middle;flex:auto;flex-grow:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .find-widget.no-results .matchesCount{color:var(--vscode-errorForeground)}.monaco-editor .findMatch{animation-duration:0;animation-name:inherit!important;background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor .currentFindMatch{background-color:var(--vscode-editor-findMatchBackground);border:2px solid var(--vscode-editor-findMatchBorder);padding:1px;box-sizing:border-box}.monaco-editor .findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor .find-widget .monaco-sash{left:0!important;background-color:var(--vscode-editorWidget-resizeBorder, var(--vscode-editorWidget-border))}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-editor .find-widget .button:not(.disabled):hover,.monaco-editor .find-widget .codicon-find-selection:hover{background-color:var(--vscode-toolbar-hoverBackground)!important}.monaco-editor.findMatch{background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor.currentFindMatch{background-color:var(--vscode-editor-findMatchBackground)}.monaco-editor.findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor.findMatch{background-color:var(--vscode-editorWidget-background)}.monaco-editor .find-widget>.button.codicon-widget-close{position:absolute;top:5px;right:4px}.monaco-editor .findOptionsWidget{background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground);box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:2px solid var(--vscode-contrastBorder)}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis;white-space:nowrap;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize);padding-right:calc(var(--vscode-editorCodeLens-fontSize)*.5);font-feature-settings:var(--vscode-editorCodeLens-fontFeatureSettings);font-family:var(--vscode-editorCodeLens-fontFamily),var(--vscode-editorCodeLens-fontFamilyDefault)}.monaco-editor .codelens-decoration>span,.monaco-editor .codelens-decoration>a{user-select:none;-webkit-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration>a:hover .codicon{color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor!important;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize)}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{animation:fadein .1s linear}.monaco-editor .unicode-highlight{border:1px solid var(--vscode-editorUnicodeHighlight-border);background-color:var(--vscode-editorUnicodeHighlight-background);box-sizing:border-box}.monaco-editor{--vscode-editor-placeholder-foreground: var(--vscode-editorGhostText-foreground)}.monaco-editor .editorPlaceholder{top:0;position:absolute;overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap;pointer-events:none;color:var(--vscode-editor-placeholder-foreground)}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .linked-editing-decoration{background-color:var(--vscode-editor-linkedEditingBackground);min-width:1px}.monaco-editor.vs .valueSetReplacement{outline:solid 2px var(--vscode-editorBracketMatch-border)}.inline-editor-progress-decoration{display:inline-block;width:1em;height:1em}.inline-progress-widget{display:flex!important;justify-content:center;align-items:center}.inline-progress-widget .icon{font-size:80%!important}.inline-progress-widget:hover .icon{font-size:90%!important;animation:none}.inline-progress-widget:hover .icon:before{content:var(--vscode-icon-x-content);font-family:var(--vscode-icon-x-font-family)}.monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-editor .margin-view-overlays .codicon-folding-collapsed{cursor:pointer;opacity:0;transition:opacity .5s;display:flex;align-items:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-collapsed{transition:initial}.monaco-editor .margin-view-overlays:hover .codicon,.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon.codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons{opacity:1}.monaco-editor .inline-folded:after{color:var(--vscode-editor-foldPlaceholderForeground);margin:.1em .2em 0;content:"⋯";display:inline;line-height:1em;cursor:pointer}.monaco-editor .folded-background{background-color:var(--vscode-editor-foldBackground)}.monaco-editor .cldr.codicon.codicon-folding-expanded,.monaco-editor .cldr.codicon.codicon-folding-collapsed,.monaco-editor .cldr.codicon.codicon-folding-manual-expanded,.monaco-editor .cldr.codicon.codicon-folding-manual-collapsed{color:var(--vscode-editorGutter-foldingControlForeground)!important}.monaco-editor.vs .dnd-target,.monaco-editor.hc-light .dnd-target{border-right:2px dotted black;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #AEAFAD;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines,.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.hc-light.mac.mouse-default .view-lines{cursor:default}.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines,.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.hc-light.mac.mouse-copy .view-lines{cursor:copy}.monaco-editor .bracket-match{box-sizing:border-box;background-color:var(--vscode-editorBracketMatch-background);border:1px solid var(--vscode-editorBracketMatch-border)}.monaco-editor .selection-anchor{background-color:#007acc;width:2px!important}.monaco-editor .tokens-inspect-widget{z-index:50;user-select:text;-webkit-user-select:text;padding:10px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor.hc-black .tokens-inspect-widget,.monaco-editor.hc-light .tokens-inspect-widget{border-width:2px}.monaco-editor .tokens-inspect-widget .tokens-inspect-separator{height:1px;border:0;background-color:var(--vscode-editorHoverWidget-border)}.monaco-editor .tokens-inspect-widget .tm-token{font-family:var(--monaco-monospace-font)}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:var(--monaco-monospace-font);text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:var(--monaco-monospace-font)}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjNDI0MjQyIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #F6F6F6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjQzVDNUM1Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #252526} diff --git a/deploy/dac/assets/monaco-editor-BSmz0_Ko.js b/deploy/dac/assets/monaco-editor-BSmz0_Ko.js new file mode 100644 index 00000000..6833df7d --- /dev/null +++ b/deploy/dac/assets/monaco-editor-BSmz0_Ko.js @@ -0,0 +1,676 @@ +function Gs(o,e=0){return o[o.length-(1+e)]}function XB(o){if(o.length===0)throw new Error("Invalid tail call");return[o.slice(0,o.length-1),o[o.length-1]]}function li(o,e,t=(i,n)=>i===n){if(o===e)return!0;if(!o||!e||o.length!==e.length)return!1;for(let i=0,n=o.length;it(o[i],e))}function e6(o,e){let t=0,i=o-1;for(;t<=i;){const n=(t+i)/2|0,s=e(n);if(s<0)t=n+1;else if(s>0)i=n-1;else return n}return-(t+1)}function LL(o,e,t){if(o=o|0,o>=e.length)throw new TypeError("invalid index");const i=e[Math.floor(e.length*Math.random())],n=[],s=[],r=[];for(const a of e){const l=t(a,i);l<0?n.push(a):l>0?s.push(a):r.push(a)}return o!!e)}function RM(o){let e=0;for(let t=0;t0}function Eh(o,e=t=>t){const t=new Set;return o.filter(i=>{const n=e(i);return t.has(n)?!1:(t.add(n),!0)})}function xN(o,e){return o.length>0?o[0]:e}function Bn(o,e){let t=typeof e=="number"?o:0;typeof e=="number"?t=o:(t=0,e=o);const i=[];if(t<=e)for(let n=t;ne;n--)i.push(n);return i}function y0(o,e,t){const i=o.slice(0,e),n=o.slice(e);return i.concat(t,n)}function $y(o,e){const t=o.indexOf(e);t>-1&&(o.splice(t,1),o.unshift(e))}function bb(o,e){const t=o.indexOf(e);t>-1&&(o.splice(t,1),o.push(e))}function xL(o,e){for(const t of e)o.push(t)}function T5(o){return Array.isArray(o)?o:[o]}function i6(o,e,t){const i=M5(o,e),n=o.length,s=t.length;o.length=n+s;for(let r=n-1;r>=i;r--)o[r+s]=o[r];for(let r=0;r0}o.isGreaterThan=i;function n(s){return s===0}o.isNeitherLessOrGreaterThan=n,o.greaterThan=1,o.lessThan=-1,o.neitherLessOrGreaterThan=0})(Bp||(Bp={}));function rs(o,e){return(t,i)=>e(o(t),o(i))}function n6(...o){return(e,t)=>{for(const i of o){const n=i(e,t);if(!Bp.isNeitherLessOrGreaterThan(n))return n}return Bp.neitherLessOrGreaterThan}}const ia=(o,e)=>o-e,s6=(o,e)=>ia(o?1:0,e?1:0);function o6(o){return(e,t)=>-o(e,t)}class Ll{constructor(e){this.items=e,this.firstIdx=0,this.lastIdx=this.items.length-1}get length(){return this.lastIdx-this.firstIdx+1}takeWhile(e){let t=this.firstIdx;for(;t=0&&e(this.items[t]);)t--;const i=t===this.lastIdx?null:this.items.slice(t+1,this.lastIdx+1);return this.lastIdx=t,i}peek(){if(this.length!==0)return this.items[this.firstIdx]}dequeue(){const e=this.items[this.firstIdx];return this.firstIdx++,e}takeCount(e){const t=this.items.slice(this.firstIdx,this.firstIdx+e);return this.firstIdx+=e,t}}const pf=class pf{constructor(e){this.iterate=e}toArray(){const e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(e){return new pf(t=>this.iterate(i=>e(i)?t(i):!0))}map(e){return new pf(t=>this.iterate(i=>t(e(i))))}findLast(e){let t;return this.iterate(i=>(e(i)&&(t=i),!0)),t}findLastMaxBy(e){let t,i=!0;return this.iterate(n=>((i||Bp.isGreaterThan(e(n,t)))&&(i=!1,t=n),!0)),t}};pf.empty=new pf(e=>{});let Zd=pf;class eC{constructor(e){this._indexMap=e}static createSortPermutation(e,t){const i=Array.from(e.keys()).sort((n,s)=>t(e[n],e[s]));return new eC(i)}apply(e){return e.map((t,i)=>e[this._indexMap[i]])}inverse(){const e=this._indexMap.slice();for(let t=0;t"u"}function _l(o){return!xs(o)}function xs(o){return Es(o)||o===null}function ai(o,e){if(!o)throw new Error("Unexpected type")}function A5(o){if(xs(o))throw new Error("Assertion Failed: argument is undefined or null");return o}function tC(o){return typeof o=="function"}function a6(o,e){const t=Math.min(o.length,e.length);for(let i=0;i{e[t]=i&&typeof i=="object"?Ya(i):i}),e}function c6(o){if(!o||typeof o!="object")return o;const e=[o];for(;e.length>0;){const t=e.shift();Object.freeze(t);for(const i in t)if(P5.call(t,i)){const n=t[i];typeof n=="object"&&!Object.isFrozen(n)&&!r6(n)&&e.push(n)}}return o}const P5=Object.prototype.hasOwnProperty;function O5(o,e){return kL(o,e,new Set)}function kL(o,e,t){if(xs(o))return o;const i=e(o);if(typeof i<"u")return i;if(Array.isArray(o)){const n=[];for(const s of o)n.push(kL(s,e,t));return n}if(Oi(o)){if(t.has(o))throw new Error("Cannot clone recursive data-structure");t.add(o);const n={};for(const s in o)P5.call(o,s)&&(n[s]=kL(o[s],e,t));return t.delete(o),n}return o}function S0(o,e,t=!0){return Oi(o)?(Oi(e)&&Object.keys(e).forEach(i=>{i in o?t&&(Oi(o[i])&&Oi(e[i])?S0(o[i],e[i],t):o[i]=e[i]):o[i]=e[i]}),o):e}function as(o,e){if(o===e)return!0;if(o==null||e===null||e===void 0||typeof o!=typeof e||typeof o!="object"||Array.isArray(o)!==Array.isArray(e))return!1;let t,i;if(Array.isArray(o)){if(o.length!==e.length)return!1;for(t=0;tfunction(){const s=Array.prototype.slice.call(arguments,0);return e(n,s)},i={};for(const n of o)i[n]=t(n);return i}function F5(){return globalThis._VSCODE_NLS_MESSAGES}function kN(){return globalThis._VSCODE_NLS_LANGUAGE}const u6=kN()==="pseudo"||typeof document<"u"&&document.location&&document.location.hash.indexOf("pseudo=true")>=0;function iC(o,e){let t;return e.length===0?t=o:t=o.replace(/\{(\d+)\}/g,(i,n)=>{const s=n[0],r=e[s];let a=i;return typeof r=="string"?a=r:(typeof r=="number"||typeof r=="boolean"||r===void 0||r===null)&&(a=String(r)),a}),u6&&(t="["+t.replace(/[aouei]/g,"$&$&")+"]"),t}function m(o,e,...t){return iC(typeof o=="number"?B5(o,e):e,t)}function B5(o,e){const t=F5()?.[o];if(typeof t!="string"){if(typeof e=="string")return e;throw new Error(`!!! NLS MISSING: ${o} !!!`)}return t}function di(o,e,...t){let i;typeof o=="number"?i=B5(o,e):i=e;const n=iC(i,t);return{value:n,original:e===i?n:iC(e,t)}}const Gu="en";let nC=!1,sC=!1,v1=!1,W5=!1,DN=!1,IN=!1,H5=!1,Cb,Ky=Gu,OM=Gu,f6,Ba;const bl=globalThis;let Qs;typeof bl.vscode<"u"&&typeof bl.vscode.process<"u"?Qs=bl.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(Qs=process);const g6=typeof Qs?.versions?.electron=="string",m6=g6&&Qs?.type==="renderer";if(typeof Qs=="object"){nC=Qs.platform==="win32",sC=Qs.platform==="darwin",v1=Qs.platform==="linux",v1&&Qs.env.SNAP&&Qs.env.SNAP_REVISION,Qs.env.CI||Qs.env.BUILD_ARTIFACTSTAGINGDIRECTORY,Cb=Gu,Ky=Gu;const o=Qs.env.VSCODE_NLS_CONFIG;if(o)try{const e=JSON.parse(o);Cb=e.userLocale,OM=e.osLocale,Ky=e.resolvedLanguage||Gu,f6=e.languagePack?.translationsConfigFile}catch{}W5=!0}else typeof navigator=="object"&&!m6?(Ba=navigator.userAgent,nC=Ba.indexOf("Windows")>=0,sC=Ba.indexOf("Macintosh")>=0,IN=(Ba.indexOf("Macintosh")>=0||Ba.indexOf("iPad")>=0||Ba.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,v1=Ba.indexOf("Linux")>=0,H5=Ba?.indexOf("Mobi")>=0,DN=!0,Ky=kN()||Gu,Cb=navigator.language.toLowerCase(),OM=Cb):console.error("Unable to resolve platform.");const kn=nC,Ue=sC,Un=v1,oC=W5,Og=DN,p6=DN&&typeof bl.importScripts=="function",_6=p6?bl.origin:void 0,Tc=IN,V5=H5,da=Ba,b6=typeof bl.postMessage=="function"&&!bl.importScripts,z5=(()=>{if(b6){const o=[];bl.addEventListener("message",t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let i=0,n=o.length;i{const i=++e;o.push({id:i,callback:t}),bl.postMessage({vscodeScheduleAsyncWork:i},"*")}}return o=>setTimeout(o)})(),Ns=sC||IN?2:nC?1:3;let FM=!0,BM=!1;function C6(){if(!BM){BM=!0;const o=new Uint8Array(2);o[0]=1,o[1]=2,FM=new Uint16Array(o.buffer)[0]===513}return FM}const U5=!!(da&&da.indexOf("Chrome")>=0),v6=!!(da&&da.indexOf("Firefox")>=0),w6=!!(!U5&&da&&da.indexOf("Safari")>=0),y6=!!(da&&da.indexOf("Edg/")>=0),S6=!!(da&&da.indexOf("Android")>=0),Qi={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0,bracketPairColorizationOptions:{enabled:!0,independentColorPoolPerBracketType:!1}};var st;(function(o){function e(v){return v&&typeof v=="object"&&typeof v[Symbol.iterator]=="function"}o.is=e;const t=Object.freeze([]);function i(){return t}o.empty=i;function*n(v){yield v}o.single=n;function s(v){return e(v)?v:n(v)}o.wrap=s;function r(v){return v||t}o.from=r;function*a(v){for(let y=v.length-1;y>=0;y--)yield v[y]}o.reverse=a;function l(v){return!v||v[Symbol.iterator]().next().done===!0}o.isEmpty=l;function c(v){return v[Symbol.iterator]().next().value}o.first=c;function d(v,y){let x=0;for(const L of v)if(y(L,x++))return!0;return!1}o.some=d;function h(v,y){for(const x of v)if(y(x))return x}o.find=h;function*u(v,y){for(const x of v)y(x)&&(yield x)}o.filter=u;function*f(v,y){let x=0;for(const L of v)yield y(L,x++)}o.map=f;function*g(v,y){let x=0;for(const L of v)yield*y(L,x++)}o.flatMap=g;function*p(...v){for(const y of v)yield*y}o.concat=p;function _(v,y,x){let L=x;for(const E of v)L=y(L,E);return L}o.reduce=_;function*b(v,y,x=v.length){for(y<0&&(y+=v.length),x<0?x+=v.length:x>v.length&&(x=v.length);y{n||(n=!0,this._remove(i))}}shift(){if(this._first!==Ci.Undefined){const e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==Ci.Undefined){const e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==Ci.Undefined&&e.next!==Ci.Undefined){const t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===Ci.Undefined&&e.next===Ci.Undefined?(this._first=Ci.Undefined,this._last=Ci.Undefined):e.next===Ci.Undefined?(this._last=this._last.prev,this._last.next=Ci.Undefined):e.prev===Ci.Undefined&&(this._first=this._first.next,this._first.prev=Ci.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==Ci.Undefined;)yield e.element,e=e.next}}const $5="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";function L6(o=""){let e="(-?\\d*\\.\\d\\w*)|([^";for(const t of $5)o.indexOf(t)>=0||(e+="\\"+t);return e+="\\s]+)",new RegExp(e,"g")}const EN=L6();function NN(o){let e=EN;if(o&&o instanceof RegExp)if(o.global)e=o;else{let t="g";o.ignoreCase&&(t+="i"),o.multiline&&(t+="m"),o.unicode&&(t+="u"),e=new RegExp(o.source,t)}return e.lastIndex=0,e}const K5=new yn;K5.unshift({maxLen:1e3,windowSize:15,timeBudget:150});function Wp(o,e,t,i,n){if(e=NN(e),n||(n=st.first(K5)),t.length>n.maxLen){let c=o-n.maxLen/2;return c<0?c=0:i+=c,t=t.substring(c,o+n.maxLen/2),Wp(o,e,t,i,n)}const s=Date.now(),r=o-1-i;let a=-1,l=null;for(let c=1;!(Date.now()-s>=n.timeBudget);c++){const d=r-n.windowSize*c;e.lastIndex=Math.max(0,d);const h=x6(e,t,r,a);if(!h&&l||(l=h,d<=0))break;a=d}if(l){const c={word:l[0],startColumn:i+1+l.index,endColumn:i+1+l.index+l[0].length};return e.lastIndex=0,c}return null}function x6(o,e,t,i){let n;for(;n=o.exec(e);){const s=n.index||0;if(s<=t&&o.lastIndex>=t)return n;if(i>0&&s>i)return null}return null}const Ar=8;class j5{constructor(e){this._values=e}hasChanged(e){return this._values[e]}}class q5{constructor(){this.stableMinimapLayoutInput=null,this.stableFitMaxMinimapScale=0,this.stableFitRemainingWidth=0}}class Mt{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return L0(e,t)}compute(e,t,i){return i}}class $m{constructor(e,t){this.newValue=e,this.didChange=t}}function L0(o,e){if(typeof o!="object"||typeof e!="object"||!o||!e)return new $m(e,o!==e);if(Array.isArray(o)||Array.isArray(e)){const i=Array.isArray(o)&&Array.isArray(e)&&li(o,e);return new $m(e,!i)}let t=!1;for(const i in e)if(e.hasOwnProperty(i)){const n=L0(o[i],e[i]);n.didChange&&(o[i]=n.newValue,t=!0)}return new $m(o,t)}class B_{constructor(e){this.schema=void 0,this.id=e,this.name="_never_",this.defaultValue=void 0}applyUpdate(e,t){return L0(e,t)}validate(e){return this.defaultValue}}class Fg{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return L0(e,t)}validate(e){return typeof e>"u"?this.defaultValue:e}compute(e,t,i){return i}}function he(o,e){return typeof o>"u"?e:o==="false"?!1:!!o}class Je extends Fg{constructor(e,t,i,n=void 0){typeof n<"u"&&(n.type="boolean",n.default=i),super(e,t,i,n)}validate(e){return he(e,this.defaultValue)}}function dd(o,e,t,i){if(typeof o>"u")return e;let n=parseInt(o,10);return isNaN(n)?e:(n=Math.max(t,n),n=Math.min(i,n),n|0)}class pt extends Fg{static clampedInt(e,t,i,n){return dd(e,t,i,n)}constructor(e,t,i,n,s,r=void 0){typeof r<"u"&&(r.type="integer",r.default=i,r.minimum=n,r.maximum=s),super(e,t,i,r),this.minimum=n,this.maximum=s}validate(e){return pt.clampedInt(e,this.defaultValue,this.minimum,this.maximum)}}function k6(o,e,t,i){if(typeof o>"u")return e;const n=Ts.float(o,e);return Ts.clamp(n,t,i)}class Ts extends Fg{static clamp(e,t,i){return ei?i:e}static float(e,t){if(typeof e=="number")return e;if(typeof e>"u")return t;const i=parseFloat(e);return isNaN(i)?t:i}constructor(e,t,i,n,s){typeof s<"u"&&(s.type="number",s.default=i),super(e,t,i,s),this.validationFn=n}validate(e){return this.validationFn(Ts.float(e,this.defaultValue))}}class dn extends Fg{static string(e,t){return typeof e!="string"?t:e}constructor(e,t,i,n=void 0){typeof n<"u"&&(n.type="string",n.default=i),super(e,t,i,n)}validate(e){return dn.string(e,this.defaultValue)}}function Ht(o,e,t,i){return typeof o!="string"?e:i&&o in i?i[o]:t.indexOf(o)===-1?e:o}class Wt extends Fg{constructor(e,t,i,n,s=void 0){typeof s<"u"&&(s.type="string",s.enum=n,s.default=i),super(e,t,i,s),this._allowedValues=n}validate(e){return Ht(e,this.defaultValue,this._allowedValues)}}class vb extends Mt{constructor(e,t,i,n,s,r,a=void 0){typeof a<"u"&&(a.type="string",a.enum=s,a.default=n),super(e,t,i,a),this._allowedValues=s,this._convert=r}validate(e){return typeof e!="string"?this.defaultValue:this._allowedValues.indexOf(e)===-1?this.defaultValue:this._convert(e)}}function D6(o){switch(o){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}class I6 extends Mt{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[m("accessibilitySupport.auto","Use platform APIs to detect when a Screen Reader is attached."),m("accessibilitySupport.on","Optimize for usage with a Screen Reader."),m("accessibilitySupport.off","Assume a screen reader is not attached.")],default:"auto",tags:["accessibility"],description:m("accessibilitySupport","Controls if the UI should run in a mode where it is optimized for screen readers.")})}validate(e){switch(e){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}compute(e,t,i){return i===0?e.accessibilitySupport:i}}class E6 extends Mt{constructor(){const e={insertSpace:!0,ignoreEmptyLines:!0};super(23,"comments",e,{"editor.comments.insertSpace":{type:"boolean",default:e.insertSpace,description:m("comments.insertSpace","Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:e.ignoreEmptyLines,description:m("comments.ignoreEmptyLines","Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{insertSpace:he(t.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:he(t.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}}function N6(o){switch(o){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}var Ai;(function(o){o[o.Line=1]="Line",o[o.Block=2]="Block",o[o.Underline=3]="Underline",o[o.LineThin=4]="LineThin",o[o.BlockOutline=5]="BlockOutline",o[o.UnderlineThin=6]="UnderlineThin"})(Ai||(Ai={}));function T6(o){switch(o){case"line":return Ai.Line;case"block":return Ai.Block;case"underline":return Ai.Underline;case"line-thin":return Ai.LineThin;case"block-outline":return Ai.BlockOutline;case"underline-thin":return Ai.UnderlineThin}}class M6 extends B_{constructor(){super(143)}compute(e,t,i){const n=["monaco-editor"];return t.get(39)&&n.push(t.get(39)),e.extraEditorClassName&&n.push(e.extraEditorClassName),t.get(74)==="default"?n.push("mouse-default"):t.get(74)==="copy"&&n.push("mouse-copy"),t.get(112)&&n.push("showUnused"),t.get(141)&&n.push("showDeprecated"),n.join(" ")}}class R6 extends Je{constructor(){super(37,"emptySelectionClipboard",!0,{description:m("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})}compute(e,t,i){return i&&e.emptySelectionClipboard}}class A6 extends Mt{constructor(){const e={cursorMoveOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0};super(41,"find",e,{"editor.find.cursorMoveOnType":{type:"boolean",default:e.cursorMoveOnType,description:m("find.cursorMoveOnType","Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:e.seedSearchStringFromSelection,enumDescriptions:[m("editor.find.seedSearchStringFromSelection.never","Never seed search string from the editor selection."),m("editor.find.seedSearchStringFromSelection.always","Always seed search string from the editor selection, including word at cursor position."),m("editor.find.seedSearchStringFromSelection.selection","Only seed search string from the editor selection.")],description:m("find.seedSearchStringFromSelection","Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:e.autoFindInSelection,enumDescriptions:[m("editor.find.autoFindInSelection.never","Never turn on Find in Selection automatically (default)."),m("editor.find.autoFindInSelection.always","Always turn on Find in Selection automatically."),m("editor.find.autoFindInSelection.multiline","Turn on Find in Selection automatically when multiple lines of content are selected.")],description:m("find.autoFindInSelection","Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:e.globalFindClipboard,description:m("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:Ue},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:e.addExtraSpaceOnTop,description:m("find.addExtraSpaceOnTop","Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")},"editor.find.loop":{type:"boolean",default:e.loop,description:m("find.loop","Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{cursorMoveOnType:he(t.cursorMoveOnType,this.defaultValue.cursorMoveOnType),seedSearchStringFromSelection:typeof e.seedSearchStringFromSelection=="boolean"?e.seedSearchStringFromSelection?"always":"never":Ht(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:typeof e.autoFindInSelection=="boolean"?e.autoFindInSelection?"always":"never":Ht(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:he(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:he(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:he(t.loop,this.defaultValue.loop)}}}const Ka=class Ka extends Mt{constructor(){super(51,"fontLigatures",Ka.OFF,{anyOf:[{type:"boolean",description:m("fontLigatures","Enables/Disables font ligatures ('calt' and 'liga' font features). Change this to a string for fine-grained control of the 'font-feature-settings' CSS property.")},{type:"string",description:m("fontFeatureSettings","Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:m("fontLigaturesGeneral","Configures font ligatures or font features. Can be either a boolean to enable/disable ligatures or a string for the value of the CSS 'font-feature-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"||e.length===0?Ka.OFF:e==="true"?Ka.ON:e:e?Ka.ON:Ka.OFF}};Ka.OFF='"liga" off, "calt" off',Ka.ON='"liga" on, "calt" on';let Mc=Ka;const ja=class ja extends Mt{constructor(){super(54,"fontVariations",ja.OFF,{anyOf:[{type:"boolean",description:m("fontVariations","Enables/Disables the translation from font-weight to font-variation-settings. Change this to a string for fine-grained control of the 'font-variation-settings' CSS property.")},{type:"string",description:m("fontVariationSettings","Explicit 'font-variation-settings' CSS property. A boolean can be passed instead if one only needs to translate font-weight to font-variation-settings.")}],description:m("fontVariationsGeneral","Configures font variations. Can be either a boolean to enable/disable the translation from font-weight to font-variation-settings or a string for the value of the CSS 'font-variation-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"?ja.OFF:e==="true"?ja.TRANSLATE:e:e?ja.TRANSLATE:ja.OFF}compute(e,t,i){return e.fontInfo.fontVariationSettings}};ja.OFF="normal",ja.TRANSLATE="translate";let Hp=ja;class P6 extends B_{constructor(){super(50)}compute(e,t,i){return e.fontInfo}}class O6 extends Fg{constructor(){super(52,"fontSize",ls.fontSize,{type:"number",minimum:6,maximum:100,default:ls.fontSize,description:m("fontSize","Controls the font size in pixels.")})}validate(e){const t=Ts.float(e,this.defaultValue);return t===0?ls.fontSize:Ts.clamp(t,6,100)}compute(e,t,i){return e.fontInfo.fontSize}}const Br=class Br extends Mt{constructor(){super(53,"fontWeight",ls.fontWeight,{anyOf:[{type:"number",minimum:Br.MINIMUM_VALUE,maximum:Br.MAXIMUM_VALUE,errorMessage:m("fontWeightErrorMessage",'Only "normal" and "bold" keywords or numbers between 1 and 1000 are allowed.')},{type:"string",pattern:"^(normal|bold|1000|[1-9][0-9]{0,2})$"},{enum:Br.SUGGESTION_VALUES}],default:ls.fontWeight,description:m("fontWeight",'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(e){return e==="normal"||e==="bold"?e:String(pt.clampedInt(e,ls.fontWeight,Br.MINIMUM_VALUE,Br.MAXIMUM_VALUE))}};Br.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"],Br.MINIMUM_VALUE=1,Br.MAXIMUM_VALUE=1e3;let IL=Br;class F6 extends Mt{constructor(){const e={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",multipleTests:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:"",alternativeTestsCommand:""},t={type:"string",enum:["peek","gotoAndPeek","goto"],default:e.multiple,enumDescriptions:[m("editor.gotoLocation.multiple.peek","Show Peek view of the results (default)"),m("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a Peek view"),m("editor.gotoLocation.multiple.goto","Go to the primary result and enable Peek-less navigation to others")]},i=["","editor.action.referenceSearch.trigger","editor.action.goToReferences","editor.action.peekImplementation","editor.action.goToImplementation","editor.action.peekTypeDefinition","editor.action.goToTypeDefinition","editor.action.peekDeclaration","editor.action.revealDeclaration","editor.action.peekDefinition","editor.action.revealDefinitionAside","editor.action.revealDefinition"];super(58,"gotoLocation",e,{"editor.gotoLocation.multiple":{deprecationMessage:m("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":{description:m("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleTypeDefinitions":{description:m("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleDeclarations":{description:m("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleImplementations":{description:m("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleReferences":{description:m("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist."),...t},"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:e.alternativeDefinitionCommand,enum:i,description:m("alternativeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:e.alternativeTypeDefinitionCommand,enum:i,description:m("alternativeTypeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:e.alternativeDeclarationCommand,enum:i,description:m("alternativeDeclarationCommand","Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:e.alternativeImplementationCommand,enum:i,description:m("alternativeImplementationCommand","Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:e.alternativeReferenceCommand,enum:i,description:m("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{multiple:Ht(t.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:t.multipleDefinitions??Ht(t.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:t.multipleTypeDefinitions??Ht(t.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:t.multipleDeclarations??Ht(t.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:t.multipleImplementations??Ht(t.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:t.multipleReferences??Ht(t.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),multipleTests:t.multipleTests??Ht(t.multipleTests,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:dn.string(t.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:dn.string(t.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:dn.string(t.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:dn.string(t.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:dn.string(t.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand),alternativeTestsCommand:dn.string(t.alternativeTestsCommand,this.defaultValue.alternativeTestsCommand)}}}class B6 extends Mt{constructor(){const e={enabled:!0,delay:300,hidingDelay:300,sticky:!0,above:!0};super(60,"hover",e,{"editor.hover.enabled":{type:"boolean",default:e.enabled,description:m("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:e.delay,minimum:0,maximum:1e4,description:m("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:e.sticky,description:m("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.hidingDelay":{type:"integer",minimum:0,default:e.hidingDelay,description:m("hover.hidingDelay","Controls the delay in milliseconds after which the hover is hidden. Requires `editor.hover.sticky` to be enabled.")},"editor.hover.above":{type:"boolean",default:e.above,description:m("hover.above","Prefer showing hovers above the line, if there's space.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),delay:pt.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:he(t.sticky,this.defaultValue.sticky),hidingDelay:pt.clampedInt(t.hidingDelay,this.defaultValue.hidingDelay,0,6e5),above:he(t.above,this.defaultValue.above)}}}class Ef extends B_{constructor(){super(146)}compute(e,t,i){return Ef.computeLayout(t,{memory:e.memory,outerWidth:e.outerWidth,outerHeight:e.outerHeight,isDominatedByLongLines:e.isDominatedByLongLines,lineHeight:e.fontInfo.lineHeight,viewLineCount:e.viewLineCount,lineNumbersDigitCount:e.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:e.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:e.fontInfo.maxDigitWidth,pixelRatio:e.pixelRatio,glyphMarginDecorationLaneCount:e.glyphMarginDecorationLaneCount})}static computeContainedMinimapLineCount(e){const t=e.height/e.lineHeight,i=Math.floor(e.paddingTop/e.lineHeight);let n=Math.floor(e.paddingBottom/e.lineHeight);e.scrollBeyondLastLine&&(n=Math.max(n,t-1));const s=(i+e.viewLineCount+n)/(e.pixelRatio*e.height),r=Math.floor(e.viewLineCount/s);return{typicalViewportLineCount:t,extraLinesBeforeFirstLine:i,extraLinesBeyondLastLine:n,desiredRatio:s,minimapLineCount:r}}static _computeMinimapLayout(e,t){const i=e.outerWidth,n=e.outerHeight,s=e.pixelRatio;if(!e.minimap.enabled)return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(s*n),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:n};const r=t.stableMinimapLayoutInput,a=r&&e.outerHeight===r.outerHeight&&e.lineHeight===r.lineHeight&&e.typicalHalfwidthCharacterWidth===r.typicalHalfwidthCharacterWidth&&e.pixelRatio===r.pixelRatio&&e.scrollBeyondLastLine===r.scrollBeyondLastLine&&e.paddingTop===r.paddingTop&&e.paddingBottom===r.paddingBottom&&e.minimap.enabled===r.minimap.enabled&&e.minimap.side===r.minimap.side&&e.minimap.size===r.minimap.size&&e.minimap.showSlider===r.minimap.showSlider&&e.minimap.renderCharacters===r.minimap.renderCharacters&&e.minimap.maxColumn===r.minimap.maxColumn&&e.minimap.scale===r.minimap.scale&&e.verticalScrollbarWidth===r.verticalScrollbarWidth&&e.isViewportWrapping===r.isViewportWrapping,l=e.lineHeight,c=e.typicalHalfwidthCharacterWidth,d=e.scrollBeyondLastLine,h=e.minimap.renderCharacters;let u=s>=2?Math.round(e.minimap.scale*2):e.minimap.scale;const f=e.minimap.maxColumn,g=e.minimap.size,p=e.minimap.side,_=e.verticalScrollbarWidth,b=e.viewLineCount,C=e.remainingWidth,w=e.isViewportWrapping,v=h?2:3;let y=Math.floor(s*n);const x=y/s;let L=!1,E=!1,N=v*u,H=u/s,F=1;if(g==="fill"||g==="fit"){const{typicalViewportLineCount:de,extraLinesBeforeFirstLine:se,extraLinesBeyondLastLine:be,desiredRatio:we,minimapLineCount:Rt}=Ef.computeContainedMinimapLineCount({viewLineCount:b,scrollBeyondLastLine:d,paddingTop:e.paddingTop,paddingBottom:e.paddingBottom,height:n,lineHeight:l,pixelRatio:s});if(b/Rt>1)L=!0,E=!0,u=1,N=1,H=u/s;else{let Bt=!1,ht=u+1;if(g==="fit"){const ei=Math.ceil((se+b+be)*N);w&&a&&C<=t.stableFitRemainingWidth?(Bt=!0,ht=t.stableFitMaxMinimapScale):Bt=ei>y}if(g==="fill"||Bt){L=!0;const ei=u;N=Math.min(l*s,Math.max(1,Math.floor(1/we))),w&&a&&C<=t.stableFitRemainingWidth&&(ht=t.stableFitMaxMinimapScale),u=Math.min(ht,Math.max(1,Math.floor(N/v))),u>ei&&(F=Math.min(2,u/ei)),H=u/s/F,y=Math.ceil(Math.max(de,se+b+be)*N),w?(t.stableMinimapLayoutInput=e,t.stableFitRemainingWidth=C,t.stableFitMaxMinimapScale=u):(t.stableMinimapLayoutInput=null,t.stableFitRemainingWidth=0)}}}const W=Math.floor(f*H),j=Math.min(W,Math.max(0,Math.floor((C-_-2)*H/(c+H)))+Ar);let B=Math.floor(s*j);const G=B/s;B=Math.floor(B*F);const ne=h?1:2,ae=p==="left"?0:i-j-_;return{renderMinimap:ne,minimapLeft:ae,minimapWidth:j,minimapHeightIsEditorHeight:L,minimapIsSampling:E,minimapScale:u,minimapLineHeight:N,minimapCanvasInnerWidth:B,minimapCanvasInnerHeight:y,minimapCanvasOuterWidth:G,minimapCanvasOuterHeight:x}}static computeLayout(e,t){const i=t.outerWidth|0,n=t.outerHeight|0,s=t.lineHeight|0,r=t.lineNumbersDigitCount|0,a=t.typicalHalfwidthCharacterWidth,l=t.maxDigitWidth,c=t.pixelRatio,d=t.viewLineCount,h=e.get(138),u=h==="inherit"?e.get(137):h,f=u==="inherit"?e.get(133):u,g=e.get(136),p=t.isDominatedByLongLines,_=e.get(57),b=e.get(68).renderType!==0,C=e.get(69),w=e.get(106),v=e.get(84),y=e.get(73),x=e.get(104),L=x.verticalScrollbarSize,E=x.verticalHasArrows,N=x.arrowSize,H=x.horizontalScrollbarSize,F=e.get(43),W=e.get(111)!=="never";let j=e.get(66);F&&W&&(j+=16);let B=0;if(b){const fi=Math.max(r,C);B=Math.round(fi*l)}let G=0;_&&(G=s*t.glyphMarginDecorationLaneCount);let ne=0,ae=ne+G,de=ae+B,se=de+j;const be=i-G-B-j;let we=!1,Rt=!1,ct=-1;u==="inherit"&&p?(we=!0,Rt=!0):f==="on"||f==="bounded"?Rt=!0:f==="wordWrapColumn"&&(ct=g);const Bt=Ef._computeMinimapLayout({outerWidth:i,outerHeight:n,lineHeight:s,typicalHalfwidthCharacterWidth:a,pixelRatio:c,scrollBeyondLastLine:w,paddingTop:v.top,paddingBottom:v.bottom,minimap:y,verticalScrollbarWidth:L,viewLineCount:d,remainingWidth:be,isViewportWrapping:Rt},t.memory||new q5);Bt.renderMinimap!==0&&Bt.minimapLeft===0&&(ne+=Bt.minimapWidth,ae+=Bt.minimapWidth,de+=Bt.minimapWidth,se+=Bt.minimapWidth);const ht=be-Bt.minimapWidth,ei=Math.max(1,Math.floor((ht-L-2)/a)),js=E?N:0;return Rt&&(ct=Math.max(1,ei),f==="bounded"&&(ct=Math.min(ct,g))),{width:i,height:n,glyphMarginLeft:ne,glyphMarginWidth:G,glyphMarginDecorationLaneCount:t.glyphMarginDecorationLaneCount,lineNumbersLeft:ae,lineNumbersWidth:B,decorationsLeft:de,decorationsWidth:j,contentLeft:se,contentWidth:ht,minimap:Bt,viewportColumn:ei,isWordWrapMinified:we,isViewportWrapping:Rt,wrappingColumn:ct,verticalScrollbarWidth:L,horizontalScrollbarHeight:H,overviewRuler:{top:js,width:L,height:n-2*js,right:0}}}}class W6 extends Mt{constructor(){super(140,"wrappingStrategy","simple",{"editor.wrappingStrategy":{enumDescriptions:[m("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),m("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],type:"string",enum:["simple","advanced"],default:"simple",description:m("wrappingStrategy","Controls the algorithm that computes wrapping points. Note that when in accessibility mode, advanced will be used for the best experience.")}})}validate(e){return Ht(e,"simple",["simple","advanced"])}compute(e,t,i){return t.get(2)===2?"advanced":i}}var xo;(function(o){o.Off="off",o.OnCode="onCode",o.On="on"})(xo||(xo={}));class H6 extends Mt{constructor(){const e={enabled:xo.OnCode};super(65,"lightbulb",e,{"editor.lightbulb.enabled":{type:"string",tags:["experimental"],enum:[xo.Off,xo.OnCode,xo.On],default:e.enabled,enumDescriptions:[m("editor.lightbulb.enabled.off","Disable the code action menu."),m("editor.lightbulb.enabled.onCode","Show the code action menu when the cursor is on lines with code."),m("editor.lightbulb.enabled.on","Show the code action menu when the cursor is on lines with code or on empty lines.")],description:m("enabled","Enables the Code Action lightbulb in the editor.")}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{enabled:Ht(e.enabled,this.defaultValue.enabled,[xo.Off,xo.OnCode,xo.On])}}}class V6 extends Mt{constructor(){const e={enabled:!0,maxLineCount:5,defaultModel:"outlineModel",scrollWithEditor:!0};super(116,"stickyScroll",e,{"editor.stickyScroll.enabled":{type:"boolean",default:e.enabled,description:m("editor.stickyScroll.enabled","Shows the nested current scopes during the scroll at the top of the editor."),tags:["experimental"]},"editor.stickyScroll.maxLineCount":{type:"number",default:e.maxLineCount,minimum:1,maximum:20,description:m("editor.stickyScroll.maxLineCount","Defines the maximum number of sticky lines to show.")},"editor.stickyScroll.defaultModel":{type:"string",enum:["outlineModel","foldingProviderModel","indentationModel"],default:e.defaultModel,description:m("editor.stickyScroll.defaultModel","Defines the model to use for determining which lines to stick. If the outline model does not exist, it will fall back on the folding provider model which falls back on the indentation model. This order is respected in all three cases.")},"editor.stickyScroll.scrollWithEditor":{type:"boolean",default:e.scrollWithEditor,description:m("editor.stickyScroll.scrollWithEditor","Enable scrolling of Sticky Scroll with the editor's horizontal scrollbar.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),maxLineCount:pt.clampedInt(t.maxLineCount,this.defaultValue.maxLineCount,1,20),defaultModel:Ht(t.defaultModel,this.defaultValue.defaultModel,["outlineModel","foldingProviderModel","indentationModel"]),scrollWithEditor:he(t.scrollWithEditor,this.defaultValue.scrollWithEditor)}}}class z6 extends Mt{constructor(){const e={enabled:"on",fontSize:0,fontFamily:"",padding:!1};super(142,"inlayHints",e,{"editor.inlayHints.enabled":{type:"string",default:e.enabled,description:m("inlayHints.enable","Enables the inlay hints in the editor."),enum:["on","onUnlessPressed","offUnlessPressed","off"],markdownEnumDescriptions:[m("editor.inlayHints.on","Inlay hints are enabled"),m("editor.inlayHints.onUnlessPressed","Inlay hints are showing by default and hide when holding {0}",Ue?"Ctrl+Option":"Ctrl+Alt"),m("editor.inlayHints.offUnlessPressed","Inlay hints are hidden by default and show when holding {0}",Ue?"Ctrl+Option":"Ctrl+Alt"),m("editor.inlayHints.off","Inlay hints are disabled")]},"editor.inlayHints.fontSize":{type:"number",default:e.fontSize,markdownDescription:m("inlayHints.fontSize","Controls font size of inlay hints in the editor. As default the {0} is used when the configured value is less than {1} or greater than the editor font size.","`#editor.fontSize#`","`5`")},"editor.inlayHints.fontFamily":{type:"string",default:e.fontFamily,markdownDescription:m("inlayHints.fontFamily","Controls font family of inlay hints in the editor. When set to empty, the {0} is used.","`#editor.fontFamily#`")},"editor.inlayHints.padding":{type:"boolean",default:e.padding,description:m("inlayHints.padding","Enables the padding around the inlay hints in the editor.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return typeof t.enabled=="boolean"&&(t.enabled=t.enabled?"on":"off"),{enabled:Ht(t.enabled,this.defaultValue.enabled,["on","off","offUnlessPressed","onUnlessPressed"]),fontSize:pt.clampedInt(t.fontSize,this.defaultValue.fontSize,0,100),fontFamily:dn.string(t.fontFamily,this.defaultValue.fontFamily),padding:he(t.padding,this.defaultValue.padding)}}}class U6 extends Mt{constructor(){super(66,"lineDecorationsWidth",10)}validate(e){return typeof e=="string"&&/^\d+(\.\d+)?ch$/.test(e)?-parseFloat(e.substring(0,e.length-2)):pt.clampedInt(e,this.defaultValue,0,1e3)}compute(e,t,i){return i<0?pt.clampedInt(-i*e.fontInfo.typicalHalfwidthCharacterWidth,this.defaultValue,0,1e3):i}}class $6 extends Ts{constructor(){super(67,"lineHeight",ls.lineHeight,e=>Ts.clamp(e,0,150),{markdownDescription:m("lineHeight",`Controls the line height. + - Use 0 to automatically compute the line height from the font size. + - Values between 0 and 8 will be used as a multiplier with the font size. + - Values greater than or equal to 8 will be used as effective values.`)})}compute(e,t,i){return e.fontInfo.lineHeight}}class K6 extends Mt{constructor(){const e={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",autohide:!1,renderCharacters:!0,maxColumn:120,scale:1,showRegionSectionHeaders:!0,showMarkSectionHeaders:!0,sectionHeaderFontSize:9,sectionHeaderLetterSpacing:1};super(73,"minimap",e,{"editor.minimap.enabled":{type:"boolean",default:e.enabled,description:m("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.autohide":{type:"boolean",default:e.autohide,description:m("minimap.autohide","Controls whether the minimap is hidden automatically.")},"editor.minimap.size":{type:"string",enum:["proportional","fill","fit"],enumDescriptions:[m("minimap.size.proportional","The minimap has the same size as the editor contents (and might scroll)."),m("minimap.size.fill","The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling)."),m("minimap.size.fit","The minimap will shrink as necessary to never be larger than the editor (no scrolling).")],default:e.size,description:m("minimap.size","Controls the size of the minimap.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:e.side,description:m("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:e.showSlider,description:m("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:e.scale,minimum:1,maximum:3,enum:[1,2,3],description:m("minimap.scale","Scale of content drawn in the minimap: 1, 2 or 3.")},"editor.minimap.renderCharacters":{type:"boolean",default:e.renderCharacters,description:m("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:e.maxColumn,description:m("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")},"editor.minimap.showRegionSectionHeaders":{type:"boolean",default:e.showRegionSectionHeaders,description:m("minimap.showRegionSectionHeaders","Controls whether named regions are shown as section headers in the minimap.")},"editor.minimap.showMarkSectionHeaders":{type:"boolean",default:e.showMarkSectionHeaders,description:m("minimap.showMarkSectionHeaders","Controls whether MARK: comments are shown as section headers in the minimap.")},"editor.minimap.sectionHeaderFontSize":{type:"number",default:e.sectionHeaderFontSize,description:m("minimap.sectionHeaderFontSize","Controls the font size of section headers in the minimap.")},"editor.minimap.sectionHeaderLetterSpacing":{type:"number",default:e.sectionHeaderLetterSpacing,description:m("minimap.sectionHeaderLetterSpacing","Controls the amount of space (in pixels) between characters of section header. This helps the readability of the header in small font sizes.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),autohide:he(t.autohide,this.defaultValue.autohide),size:Ht(t.size,this.defaultValue.size,["proportional","fill","fit"]),side:Ht(t.side,this.defaultValue.side,["right","left"]),showSlider:Ht(t.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:he(t.renderCharacters,this.defaultValue.renderCharacters),scale:pt.clampedInt(t.scale,1,1,3),maxColumn:pt.clampedInt(t.maxColumn,this.defaultValue.maxColumn,1,1e4),showRegionSectionHeaders:he(t.showRegionSectionHeaders,this.defaultValue.showRegionSectionHeaders),showMarkSectionHeaders:he(t.showMarkSectionHeaders,this.defaultValue.showMarkSectionHeaders),sectionHeaderFontSize:Ts.clamp(t.sectionHeaderFontSize??this.defaultValue.sectionHeaderFontSize,4,32),sectionHeaderLetterSpacing:Ts.clamp(t.sectionHeaderLetterSpacing??this.defaultValue.sectionHeaderLetterSpacing,0,5)}}}function j6(o){return o==="ctrlCmd"?Ue?"metaKey":"ctrlKey":"altKey"}class q6 extends Mt{constructor(){super(84,"padding",{top:0,bottom:0},{"editor.padding.top":{type:"number",default:0,minimum:0,maximum:1e3,description:m("padding.top","Controls the amount of space between the top edge of the editor and the first line.")},"editor.padding.bottom":{type:"number",default:0,minimum:0,maximum:1e3,description:m("padding.bottom","Controls the amount of space between the bottom edge of the editor and the last line.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{top:pt.clampedInt(t.top,0,0,1e3),bottom:pt.clampedInt(t.bottom,0,0,1e3)}}}class G6 extends Mt{constructor(){const e={enabled:!0,cycle:!0};super(86,"parameterHints",e,{"editor.parameterHints.enabled":{type:"boolean",default:e.enabled,description:m("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:e.cycle,description:m("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),cycle:he(t.cycle,this.defaultValue.cycle)}}}class Z6 extends B_{constructor(){super(144)}compute(e,t,i){return e.pixelRatio}}class Y6 extends Mt{constructor(){super(88,"placeholder",void 0)}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e:this.defaultValue}}class Q6 extends Mt{constructor(){const e={other:"on",comments:"off",strings:"off"},t=[{type:"boolean"},{type:"string",enum:["on","inline","off"],enumDescriptions:[m("on","Quick suggestions show inside the suggest widget"),m("inline","Quick suggestions show as ghost text"),m("off","Quick suggestions are disabled")]}];super(90,"quickSuggestions",e,{type:"object",additionalProperties:!1,properties:{strings:{anyOf:t,default:e.strings,description:m("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{anyOf:t,default:e.comments,description:m("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{anyOf:t,default:e.other,description:m("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}},default:e,markdownDescription:m("quickSuggestions","Controls whether suggestions should automatically show up while typing. This can be controlled for typing in comments, strings, and other code. Quick suggestion can be configured to show as ghost text or with the suggest widget. Also be aware of the {0}-setting which controls if suggestions are triggered by special characters.","`#editor.suggestOnTriggerCharacters#`")}),this.defaultValue=e}validate(e){if(typeof e=="boolean"){const c=e?"on":"off";return{comments:c,strings:c,other:c}}if(!e||typeof e!="object")return this.defaultValue;const{other:t,comments:i,strings:n}=e,s=["on","inline","off"];let r,a,l;return typeof t=="boolean"?r=t?"on":"off":r=Ht(t,this.defaultValue.other,s),typeof i=="boolean"?a=i?"on":"off":a=Ht(i,this.defaultValue.comments,s),typeof n=="boolean"?l=n?"on":"off":l=Ht(n,this.defaultValue.strings,s),{other:r,comments:a,strings:l}}}class X6 extends Mt{constructor(){super(68,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[m("lineNumbers.off","Line numbers are not rendered."),m("lineNumbers.on","Line numbers are rendered as absolute number."),m("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),m("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:m("lineNumbers","Controls the display of line numbers.")})}validate(e){let t=this.defaultValue.renderType,i=this.defaultValue.renderFn;return typeof e<"u"&&(typeof e=="function"?(t=4,i=e):e==="interval"?t=3:e==="relative"?t=2:e==="on"?t=1:t=0),{renderType:t,renderFn:i}}}function rC(o){const e=o.get(99);return e==="editable"?o.get(92):e!=="on"}class J6 extends Mt{constructor(){const e=[],t={type:"number",description:m("rulers.size","Number of monospace characters at which this editor ruler will render.")};super(103,"rulers",e,{type:"array",items:{anyOf:[t,{type:["object"],properties:{column:t,color:{type:"string",description:m("rulers.color","Color of this editor ruler."),format:"color-hex"}}}]},default:e,description:m("rulers","Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.")})}validate(e){if(Array.isArray(e)){const t=[];for(const i of e)if(typeof i=="number")t.push({column:pt.clampedInt(i,0,0,1e4),color:null});else if(i&&typeof i=="object"){const n=i;t.push({column:pt.clampedInt(n.column,0,0,1e4),color:n.color})}return t.sort((i,n)=>i.column-n.column),t}return this.defaultValue}}class eW extends Mt{constructor(){super(93,"readOnlyMessage",void 0)}validate(e){return!e||typeof e!="object"?this.defaultValue:e}}function WM(o,e){if(typeof o!="string")return e;switch(o){case"hidden":return 2;case"visible":return 3;default:return 1}}let tW=class extends Mt{constructor(){const e={vertical:1,horizontal:1,arrowSize:11,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,horizontalScrollbarSize:12,horizontalSliderSize:12,verticalScrollbarSize:14,verticalSliderSize:14,handleMouseWheel:!0,alwaysConsumeMouseWheel:!0,scrollByPage:!1,ignoreHorizontalScrollbarInContentHeight:!1};super(104,"scrollbar",e,{"editor.scrollbar.vertical":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[m("scrollbar.vertical.auto","The vertical scrollbar will be visible only when necessary."),m("scrollbar.vertical.visible","The vertical scrollbar will always be visible."),m("scrollbar.vertical.fit","The vertical scrollbar will always be hidden.")],default:"auto",description:m("scrollbar.vertical","Controls the visibility of the vertical scrollbar.")},"editor.scrollbar.horizontal":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[m("scrollbar.horizontal.auto","The horizontal scrollbar will be visible only when necessary."),m("scrollbar.horizontal.visible","The horizontal scrollbar will always be visible."),m("scrollbar.horizontal.fit","The horizontal scrollbar will always be hidden.")],default:"auto",description:m("scrollbar.horizontal","Controls the visibility of the horizontal scrollbar.")},"editor.scrollbar.verticalScrollbarSize":{type:"number",default:e.verticalScrollbarSize,description:m("scrollbar.verticalScrollbarSize","The width of the vertical scrollbar.")},"editor.scrollbar.horizontalScrollbarSize":{type:"number",default:e.horizontalScrollbarSize,description:m("scrollbar.horizontalScrollbarSize","The height of the horizontal scrollbar.")},"editor.scrollbar.scrollByPage":{type:"boolean",default:e.scrollByPage,description:m("scrollbar.scrollByPage","Controls whether clicks scroll by page or jump to click position.")},"editor.scrollbar.ignoreHorizontalScrollbarInContentHeight":{type:"boolean",default:e.ignoreHorizontalScrollbarInContentHeight,description:m("scrollbar.ignoreHorizontalScrollbarInContentHeight","When set, the horizontal scrollbar will not increase the size of the editor's content.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e,i=pt.clampedInt(t.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),n=pt.clampedInt(t.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:pt.clampedInt(t.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:WM(t.vertical,this.defaultValue.vertical),horizontal:WM(t.horizontal,this.defaultValue.horizontal),useShadows:he(t.useShadows,this.defaultValue.useShadows),verticalHasArrows:he(t.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:he(t.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:he(t.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:he(t.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:i,horizontalSliderSize:pt.clampedInt(t.horizontalSliderSize,i,0,1e3),verticalScrollbarSize:n,verticalSliderSize:pt.clampedInt(t.verticalSliderSize,n,0,1e3),scrollByPage:he(t.scrollByPage,this.defaultValue.scrollByPage),ignoreHorizontalScrollbarInContentHeight:he(t.ignoreHorizontalScrollbarInContentHeight,this.defaultValue.ignoreHorizontalScrollbarInContentHeight)}}};const $o="inUntrustedWorkspace",ed={allowedCharacters:"editor.unicodeHighlight.allowedCharacters",invisibleCharacters:"editor.unicodeHighlight.invisibleCharacters",nonBasicASCII:"editor.unicodeHighlight.nonBasicASCII",ambiguousCharacters:"editor.unicodeHighlight.ambiguousCharacters",includeComments:"editor.unicodeHighlight.includeComments",includeStrings:"editor.unicodeHighlight.includeStrings",allowedLocales:"editor.unicodeHighlight.allowedLocales"};class iW extends Mt{constructor(){const e={nonBasicASCII:$o,invisibleCharacters:!0,ambiguousCharacters:!0,includeComments:$o,includeStrings:!0,allowedCharacters:{},allowedLocales:{_os:!0,_vscode:!0}};super(126,"unicodeHighlight",e,{[ed.nonBasicASCII]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,$o],default:e.nonBasicASCII,description:m("unicodeHighlight.nonBasicASCII","Controls whether all non-basic ASCII characters are highlighted. Only characters between U+0020 and U+007E, tab, line-feed and carriage-return are considered basic ASCII.")},[ed.invisibleCharacters]:{restricted:!0,type:"boolean",default:e.invisibleCharacters,description:m("unicodeHighlight.invisibleCharacters","Controls whether characters that just reserve space or have no width at all are highlighted.")},[ed.ambiguousCharacters]:{restricted:!0,type:"boolean",default:e.ambiguousCharacters,description:m("unicodeHighlight.ambiguousCharacters","Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.")},[ed.includeComments]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,$o],default:e.includeComments,description:m("unicodeHighlight.includeComments","Controls whether characters in comments should also be subject to Unicode highlighting.")},[ed.includeStrings]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,$o],default:e.includeStrings,description:m("unicodeHighlight.includeStrings","Controls whether characters in strings should also be subject to Unicode highlighting.")},[ed.allowedCharacters]:{restricted:!0,type:"object",default:e.allowedCharacters,description:m("unicodeHighlight.allowedCharacters","Defines allowed characters that are not being highlighted."),additionalProperties:{type:"boolean"}},[ed.allowedLocales]:{restricted:!0,type:"object",additionalProperties:{type:"boolean"},default:e.allowedLocales,description:m("unicodeHighlight.allowedLocales","Unicode characters that are common in allowed locales are not being highlighted.")}})}applyUpdate(e,t){let i=!1;t.allowedCharacters&&e&&(as(e.allowedCharacters,t.allowedCharacters)||(e={...e,allowedCharacters:t.allowedCharacters},i=!0)),t.allowedLocales&&e&&(as(e.allowedLocales,t.allowedLocales)||(e={...e,allowedLocales:t.allowedLocales},i=!0));const n=super.applyUpdate(e,t);return i?new $m(n.newValue,!0):n}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{nonBasicASCII:Nf(t.nonBasicASCII,$o,[!0,!1,$o]),invisibleCharacters:he(t.invisibleCharacters,this.defaultValue.invisibleCharacters),ambiguousCharacters:he(t.ambiguousCharacters,this.defaultValue.ambiguousCharacters),includeComments:Nf(t.includeComments,$o,[!0,!1,$o]),includeStrings:Nf(t.includeStrings,$o,[!0,!1,$o]),allowedCharacters:this.validateBooleanMap(e.allowedCharacters,this.defaultValue.allowedCharacters),allowedLocales:this.validateBooleanMap(e.allowedLocales,this.defaultValue.allowedLocales)}}validateBooleanMap(e,t){if(typeof e!="object"||!e)return t;const i={};for(const[n,s]of Object.entries(e))s===!0&&(i[n]=!0);return i}}class nW extends Mt{constructor(){const e={enabled:!0,mode:"subwordSmart",showToolbar:"onHover",suppressSuggestions:!1,keepOnBlur:!1,fontFamily:"default"};super(62,"inlineSuggest",e,{"editor.inlineSuggest.enabled":{type:"boolean",default:e.enabled,description:m("inlineSuggest.enabled","Controls whether to automatically show inline suggestions in the editor.")},"editor.inlineSuggest.showToolbar":{type:"string",default:e.showToolbar,enum:["always","onHover","never"],enumDescriptions:[m("inlineSuggest.showToolbar.always","Show the inline suggestion toolbar whenever an inline suggestion is shown."),m("inlineSuggest.showToolbar.onHover","Show the inline suggestion toolbar when hovering over an inline suggestion."),m("inlineSuggest.showToolbar.never","Never show the inline suggestion toolbar.")],description:m("inlineSuggest.showToolbar","Controls when to show the inline suggestion toolbar.")},"editor.inlineSuggest.suppressSuggestions":{type:"boolean",default:e.suppressSuggestions,description:m("inlineSuggest.suppressSuggestions","Controls how inline suggestions interact with the suggest widget. If enabled, the suggest widget is not shown automatically when inline suggestions are available.")},"editor.inlineSuggest.fontFamily":{type:"string",default:e.fontFamily,description:m("inlineSuggest.fontFamily","Controls the font family of the inline suggestions.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),mode:Ht(t.mode,this.defaultValue.mode,["prefix","subword","subwordSmart"]),showToolbar:Ht(t.showToolbar,this.defaultValue.showToolbar,["always","onHover","never"]),suppressSuggestions:he(t.suppressSuggestions,this.defaultValue.suppressSuggestions),keepOnBlur:he(t.keepOnBlur,this.defaultValue.keepOnBlur),fontFamily:dn.string(t.fontFamily,this.defaultValue.fontFamily)}}}class sW extends Mt{constructor(){const e={enabled:!1,showToolbar:"onHover",fontFamily:"default",keepOnBlur:!1};super(63,"experimentalInlineEdit",e,{"editor.experimentalInlineEdit.enabled":{type:"boolean",default:e.enabled,description:m("inlineEdit.enabled","Controls whether to show inline edits in the editor.")},"editor.experimentalInlineEdit.showToolbar":{type:"string",default:e.showToolbar,enum:["always","onHover","never"],enumDescriptions:[m("inlineEdit.showToolbar.always","Show the inline edit toolbar whenever an inline suggestion is shown."),m("inlineEdit.showToolbar.onHover","Show the inline edit toolbar when hovering over an inline suggestion."),m("inlineEdit.showToolbar.never","Never show the inline edit toolbar.")],description:m("inlineEdit.showToolbar","Controls when to show the inline edit toolbar.")},"editor.experimentalInlineEdit.fontFamily":{type:"string",default:e.fontFamily,description:m("inlineEdit.fontFamily","Controls the font family of the inline edit.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),showToolbar:Ht(t.showToolbar,this.defaultValue.showToolbar,["always","onHover","never"]),fontFamily:dn.string(t.fontFamily,this.defaultValue.fontFamily),keepOnBlur:he(t.keepOnBlur,this.defaultValue.keepOnBlur)}}}class oW extends Mt{constructor(){const e={enabled:Qi.bracketPairColorizationOptions.enabled,independentColorPoolPerBracketType:Qi.bracketPairColorizationOptions.independentColorPoolPerBracketType};super(15,"bracketPairColorization",e,{"editor.bracketPairColorization.enabled":{type:"boolean",default:e.enabled,markdownDescription:m("bracketPairColorization.enabled","Controls whether bracket pair colorization is enabled or not. Use {0} to override the bracket highlight colors.","`#workbench.colorCustomizations#`")},"editor.bracketPairColorization.independentColorPoolPerBracketType":{type:"boolean",default:e.independentColorPoolPerBracketType,description:m("bracketPairColorization.independentColorPoolPerBracketType","Controls whether each bracket type has its own independent color pool.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),independentColorPoolPerBracketType:he(t.independentColorPoolPerBracketType,this.defaultValue.independentColorPoolPerBracketType)}}}class rW extends Mt{constructor(){const e={bracketPairs:!1,bracketPairsHorizontal:"active",highlightActiveBracketPair:!0,indentation:!0,highlightActiveIndentation:!0};super(16,"guides",e,{"editor.guides.bracketPairs":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[m("editor.guides.bracketPairs.true","Enables bracket pair guides."),m("editor.guides.bracketPairs.active","Enables bracket pair guides only for the active bracket pair."),m("editor.guides.bracketPairs.false","Disables bracket pair guides.")],default:e.bracketPairs,description:m("editor.guides.bracketPairs","Controls whether bracket pair guides are enabled or not.")},"editor.guides.bracketPairsHorizontal":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[m("editor.guides.bracketPairsHorizontal.true","Enables horizontal guides as addition to vertical bracket pair guides."),m("editor.guides.bracketPairsHorizontal.active","Enables horizontal guides only for the active bracket pair."),m("editor.guides.bracketPairsHorizontal.false","Disables horizontal bracket pair guides.")],default:e.bracketPairsHorizontal,description:m("editor.guides.bracketPairsHorizontal","Controls whether horizontal bracket pair guides are enabled or not.")},"editor.guides.highlightActiveBracketPair":{type:"boolean",default:e.highlightActiveBracketPair,description:m("editor.guides.highlightActiveBracketPair","Controls whether the editor should highlight the active bracket pair.")},"editor.guides.indentation":{type:"boolean",default:e.indentation,description:m("editor.guides.indentation","Controls whether the editor should render indent guides.")},"editor.guides.highlightActiveIndentation":{type:["boolean","string"],enum:[!0,"always",!1],enumDescriptions:[m("editor.guides.highlightActiveIndentation.true","Highlights the active indent guide."),m("editor.guides.highlightActiveIndentation.always","Highlights the active indent guide even if bracket guides are highlighted."),m("editor.guides.highlightActiveIndentation.false","Do not highlight the active indent guide.")],default:e.highlightActiveIndentation,description:m("editor.guides.highlightActiveIndentation","Controls whether the editor should highlight the active indent guide.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{bracketPairs:Nf(t.bracketPairs,this.defaultValue.bracketPairs,[!0,!1,"active"]),bracketPairsHorizontal:Nf(t.bracketPairsHorizontal,this.defaultValue.bracketPairsHorizontal,[!0,!1,"active"]),highlightActiveBracketPair:he(t.highlightActiveBracketPair,this.defaultValue.highlightActiveBracketPair),indentation:he(t.indentation,this.defaultValue.indentation),highlightActiveIndentation:Nf(t.highlightActiveIndentation,this.defaultValue.highlightActiveIndentation,[!0,!1,"always"])}}}function Nf(o,e,t){const i=t.indexOf(o);return i===-1?e:t[i]}class aW extends Mt{constructor(){const e={insertMode:"insert",filterGraceful:!0,snippetsPreventQuickSuggestions:!1,localityBonus:!1,shareSuggestSelections:!1,selectionMode:"always",showIcons:!0,showStatusBar:!1,preview:!1,previewMode:"subwordSmart",showInlineDetails:!0,showMethods:!0,showFunctions:!0,showConstructors:!0,showDeprecated:!0,matchOnWordStartOnly:!0,showFields:!0,showVariables:!0,showClasses:!0,showStructs:!0,showInterfaces:!0,showModules:!0,showProperties:!0,showEvents:!0,showOperators:!0,showUnits:!0,showValues:!0,showConstants:!0,showEnums:!0,showEnumMembers:!0,showKeywords:!0,showWords:!0,showColors:!0,showFiles:!0,showReferences:!0,showFolders:!0,showTypeParameters:!0,showSnippets:!0,showUsers:!0,showIssues:!0};super(119,"suggest",e,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[m("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),m("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:e.insertMode,description:m("suggest.insertMode","Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.filterGraceful":{type:"boolean",default:e.filterGraceful,description:m("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:e.localityBonus,description:m("suggest.localityBonus","Controls whether sorting favors words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:e.shareSuggestSelections,markdownDescription:m("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.selectionMode":{type:"string",enum:["always","never","whenTriggerCharacter","whenQuickSuggestion"],enumDescriptions:[m("suggest.insertMode.always","Always select a suggestion when automatically triggering IntelliSense."),m("suggest.insertMode.never","Never select a suggestion when automatically triggering IntelliSense."),m("suggest.insertMode.whenTriggerCharacter","Select a suggestion only when triggering IntelliSense from a trigger character."),m("suggest.insertMode.whenQuickSuggestion","Select a suggestion only when triggering IntelliSense as you type.")],default:e.selectionMode,markdownDescription:m("suggest.selectionMode","Controls whether a suggestion is selected when the widget shows. Note that this only applies to automatically triggered suggestions ({0} and {1}) and that a suggestion is always selected when explicitly invoked, e.g via `Ctrl+Space`.","`#editor.quickSuggestions#`","`#editor.suggestOnTriggerCharacters#`")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:e.snippetsPreventQuickSuggestions,description:m("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:e.showIcons,description:m("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.showStatusBar":{type:"boolean",default:e.showStatusBar,description:m("suggest.showStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")},"editor.suggest.preview":{type:"boolean",default:e.preview,description:m("suggest.preview","Controls whether to preview the suggestion outcome in the editor.")},"editor.suggest.showInlineDetails":{type:"boolean",default:e.showInlineDetails,description:m("suggest.showInlineDetails","Controls whether suggest details show inline with the label or only in the details widget.")},"editor.suggest.maxVisibleSuggestions":{type:"number",deprecationMessage:m("suggest.maxVisibleSuggestions.dep","This setting is deprecated. The suggest widget can now be resized.")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:m("deprecated","This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.")},"editor.suggest.showMethods":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showDeprecated":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showDeprecated","When enabled IntelliSense shows `deprecated`-suggestions.")},"editor.suggest.matchOnWordStartOnly":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.matchOnWordStartOnly","When enabled IntelliSense filtering requires that the first character matches on a word start. For example, `c` on `Console` or `WebContext` but _not_ on `description`. When disabled IntelliSense will show more results but still sorts them by match quality.")},"editor.suggest.showFields":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.showUsers":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showUsers","When enabled IntelliSense shows `user`-suggestions.")},"editor.suggest.showIssues":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showIssues","When enabled IntelliSense shows `issues`-suggestions.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{insertMode:Ht(t.insertMode,this.defaultValue.insertMode,["insert","replace"]),filterGraceful:he(t.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:he(t.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:he(t.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:he(t.shareSuggestSelections,this.defaultValue.shareSuggestSelections),selectionMode:Ht(t.selectionMode,this.defaultValue.selectionMode,["always","never","whenQuickSuggestion","whenTriggerCharacter"]),showIcons:he(t.showIcons,this.defaultValue.showIcons),showStatusBar:he(t.showStatusBar,this.defaultValue.showStatusBar),preview:he(t.preview,this.defaultValue.preview),previewMode:Ht(t.previewMode,this.defaultValue.previewMode,["prefix","subword","subwordSmart"]),showInlineDetails:he(t.showInlineDetails,this.defaultValue.showInlineDetails),showMethods:he(t.showMethods,this.defaultValue.showMethods),showFunctions:he(t.showFunctions,this.defaultValue.showFunctions),showConstructors:he(t.showConstructors,this.defaultValue.showConstructors),showDeprecated:he(t.showDeprecated,this.defaultValue.showDeprecated),matchOnWordStartOnly:he(t.matchOnWordStartOnly,this.defaultValue.matchOnWordStartOnly),showFields:he(t.showFields,this.defaultValue.showFields),showVariables:he(t.showVariables,this.defaultValue.showVariables),showClasses:he(t.showClasses,this.defaultValue.showClasses),showStructs:he(t.showStructs,this.defaultValue.showStructs),showInterfaces:he(t.showInterfaces,this.defaultValue.showInterfaces),showModules:he(t.showModules,this.defaultValue.showModules),showProperties:he(t.showProperties,this.defaultValue.showProperties),showEvents:he(t.showEvents,this.defaultValue.showEvents),showOperators:he(t.showOperators,this.defaultValue.showOperators),showUnits:he(t.showUnits,this.defaultValue.showUnits),showValues:he(t.showValues,this.defaultValue.showValues),showConstants:he(t.showConstants,this.defaultValue.showConstants),showEnums:he(t.showEnums,this.defaultValue.showEnums),showEnumMembers:he(t.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:he(t.showKeywords,this.defaultValue.showKeywords),showWords:he(t.showWords,this.defaultValue.showWords),showColors:he(t.showColors,this.defaultValue.showColors),showFiles:he(t.showFiles,this.defaultValue.showFiles),showReferences:he(t.showReferences,this.defaultValue.showReferences),showFolders:he(t.showFolders,this.defaultValue.showFolders),showTypeParameters:he(t.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:he(t.showSnippets,this.defaultValue.showSnippets),showUsers:he(t.showUsers,this.defaultValue.showUsers),showIssues:he(t.showIssues,this.defaultValue.showIssues)}}}class lW extends Mt{constructor(){super(114,"smartSelect",{selectLeadingAndTrailingWhitespace:!0,selectSubwords:!0},{"editor.smartSelect.selectLeadingAndTrailingWhitespace":{description:m("selectLeadingAndTrailingWhitespace","Whether leading and trailing whitespace should always be selected."),default:!0,type:"boolean"},"editor.smartSelect.selectSubwords":{description:m("selectSubwords","Whether subwords (like 'foo' in 'fooBar' or 'foo_bar') should be selected."),default:!0,type:"boolean"}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{selectLeadingAndTrailingWhitespace:he(e.selectLeadingAndTrailingWhitespace,this.defaultValue.selectLeadingAndTrailingWhitespace),selectSubwords:he(e.selectSubwords,this.defaultValue.selectSubwords)}}}class cW extends Mt{constructor(){const e=[];super(131,"wordSegmenterLocales",e,{anyOf:[{description:m("wordSegmenterLocales","Locales to be used for word segmentation when doing word related navigations or operations. Specify the BCP 47 language tag of the word you wish to recognize (e.g., ja, zh-CN, zh-Hant-TW, etc.)."),type:"string"},{description:m("wordSegmenterLocales","Locales to be used for word segmentation when doing word related navigations or operations. Specify the BCP 47 language tag of the word you wish to recognize (e.g., ja, zh-CN, zh-Hant-TW, etc.)."),type:"array",items:{type:"string"}}]})}validate(e){if(typeof e=="string"&&(e=[e]),Array.isArray(e)){const t=[];for(const i of e)if(typeof i=="string")try{Intl.Segmenter.supportedLocalesOf(i).length>0&&t.push(i)}catch{}return t}return this.defaultValue}}class dW extends Mt{constructor(){super(139,"wrappingIndent",1,{"editor.wrappingIndent":{type:"string",enum:["none","same","indent","deepIndent"],enumDescriptions:[m("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),m("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),m("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),m("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:m("wrappingIndent","Controls the indentation of wrapped lines."),default:"same"}})}validate(e){switch(e){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}return 1}compute(e,t,i){return t.get(2)===2?0:i}}class hW extends B_{constructor(){super(147)}compute(e,t,i){const n=t.get(146);return{isDominatedByLongLines:e.isDominatedByLongLines,isWordWrapMinified:n.isWordWrapMinified,isViewportWrapping:n.isViewportWrapping,wrappingColumn:n.wrappingColumn}}}class uW extends Mt{constructor(){const e={enabled:!0,showDropSelector:"afterDrop"};super(36,"dropIntoEditor",e,{"editor.dropIntoEditor.enabled":{type:"boolean",default:e.enabled,markdownDescription:m("dropIntoEditor.enabled","Controls whether you can drag and drop a file into a text editor by holding down the `Shift` key (instead of opening the file in an editor).")},"editor.dropIntoEditor.showDropSelector":{type:"string",markdownDescription:m("dropIntoEditor.showDropSelector","Controls if a widget is shown when dropping files into the editor. This widget lets you control how the file is dropped."),enum:["afterDrop","never"],enumDescriptions:[m("dropIntoEditor.showDropSelector.afterDrop","Show the drop selector widget after a file is dropped into the editor."),m("dropIntoEditor.showDropSelector.never","Never show the drop selector widget. Instead the default drop provider is always used.")],default:"afterDrop"}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),showDropSelector:Ht(t.showDropSelector,this.defaultValue.showDropSelector,["afterDrop","never"])}}}class fW extends Mt{constructor(){const e={enabled:!0,showPasteSelector:"afterPaste"};super(85,"pasteAs",e,{"editor.pasteAs.enabled":{type:"boolean",default:e.enabled,markdownDescription:m("pasteAs.enabled","Controls whether you can paste content in different ways.")},"editor.pasteAs.showPasteSelector":{type:"string",markdownDescription:m("pasteAs.showPasteSelector","Controls if a widget is shown when pasting content in to the editor. This widget lets you control how the file is pasted."),enum:["afterPaste","never"],enumDescriptions:[m("pasteAs.showPasteSelector.afterPaste","Show the paste selector widget after content is pasted into the editor."),m("pasteAs.showPasteSelector.never","Never show the paste selector widget. Instead the default pasting behavior is always used.")],default:"afterPaste"}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),showPasteSelector:Ht(t.showPasteSelector,this.defaultValue.showPasteSelector,["afterPaste","never"])}}}const gW="Consolas, 'Courier New', monospace",mW="Menlo, Monaco, 'Courier New', monospace",pW="'Droid Sans Mono', 'monospace', monospace",ls={fontFamily:Ue?mW:Un?pW:gW,fontWeight:"normal",fontSize:Ue?12:14,lineHeight:0,letterSpacing:0},Zu=[];function Q(o){return Zu[o.id]=o,o}const Xh={acceptSuggestionOnCommitCharacter:Q(new Je(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:m("acceptSuggestionOnCommitCharacter","Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.")})),acceptSuggestionOnEnter:Q(new Wt(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",m("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:m("acceptSuggestionOnEnter","Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:Q(new I6),accessibilityPageSize:Q(new pt(3,"accessibilityPageSize",10,1,1073741824,{description:m("accessibilityPageSize","Controls the number of lines in the editor that can be read out by a screen reader at once. When we detect a screen reader we automatically set the default to be 500. Warning: this has a performance implication for numbers larger than the default."),tags:["accessibility"]})),ariaLabel:Q(new dn(4,"ariaLabel",m("editorViewAccessibleLabel","Editor content"))),ariaRequired:Q(new Je(5,"ariaRequired",!1,void 0)),screenReaderAnnounceInlineSuggestion:Q(new Je(8,"screenReaderAnnounceInlineSuggestion",!0,{description:m("screenReaderAnnounceInlineSuggestion","Control whether inline suggestions are announced by a screen reader."),tags:["accessibility"]})),autoClosingBrackets:Q(new Wt(6,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",m("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),m("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:m("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingComments:Q(new Wt(7,"autoClosingComments","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",m("editor.autoClosingComments.languageDefined","Use language configurations to determine when to autoclose comments."),m("editor.autoClosingComments.beforeWhitespace","Autoclose comments only when the cursor is to the left of whitespace."),""],description:m("autoClosingComments","Controls whether the editor should automatically close comments after the user adds an opening comment.")})),autoClosingDelete:Q(new Wt(9,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",m("editor.autoClosingDelete.auto","Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:m("autoClosingDelete","Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:Q(new Wt(10,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",m("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:m("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:Q(new Wt(11,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",m("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),m("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:m("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:Q(new vb(12,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],D6,{enumDescriptions:[m("editor.autoIndent.none","The editor will not insert indentation automatically."),m("editor.autoIndent.keep","The editor will keep the current line's indentation."),m("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),m("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),m("editor.autoIndent.full","The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.")],description:m("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:Q(new Je(13,"automaticLayout",!1)),autoSurround:Q(new Wt(14,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[m("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),m("editor.autoSurround.quotes","Surround with quotes but not brackets."),m("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:m("autoSurround","Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),bracketPairColorization:Q(new oW),bracketPairGuides:Q(new rW),stickyTabStops:Q(new Je(117,"stickyTabStops",!1,{description:m("stickyTabStops","Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:Q(new Je(17,"codeLens",!0,{description:m("codeLens","Controls whether the editor shows CodeLens.")})),codeLensFontFamily:Q(new dn(18,"codeLensFontFamily","",{description:m("codeLensFontFamily","Controls the font family for CodeLens.")})),codeLensFontSize:Q(new pt(19,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,markdownDescription:m("codeLensFontSize","Controls the font size in pixels for CodeLens. When set to 0, 90% of `#editor.fontSize#` is used.")})),colorDecorators:Q(new Je(20,"colorDecorators",!0,{description:m("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),colorDecoratorActivatedOn:Q(new Wt(149,"colorDecoratorsActivatedOn","clickAndHover",["clickAndHover","hover","click"],{enumDescriptions:[m("editor.colorDecoratorActivatedOn.clickAndHover","Make the color picker appear both on click and hover of the color decorator"),m("editor.colorDecoratorActivatedOn.hover","Make the color picker appear on hover of the color decorator"),m("editor.colorDecoratorActivatedOn.click","Make the color picker appear on click of the color decorator")],description:m("colorDecoratorActivatedOn","Controls the condition to make a color picker appear from a color decorator")})),colorDecoratorsLimit:Q(new pt(21,"colorDecoratorsLimit",500,1,1e6,{markdownDescription:m("colorDecoratorsLimit","Controls the max number of color decorators that can be rendered in an editor at once.")})),columnSelection:Q(new Je(22,"columnSelection",!1,{description:m("columnSelection","Enable that the selection with the mouse and keys is doing column selection.")})),comments:Q(new E6),contextmenu:Q(new Je(24,"contextmenu",!0)),copyWithSyntaxHighlighting:Q(new Je(25,"copyWithSyntaxHighlighting",!0,{description:m("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:Q(new vb(26,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],N6,{description:m("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:Q(new Wt(27,"cursorSmoothCaretAnimation","off",["off","explicit","on"],{enumDescriptions:[m("cursorSmoothCaretAnimation.off","Smooth caret animation is disabled."),m("cursorSmoothCaretAnimation.explicit","Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture."),m("cursorSmoothCaretAnimation.on","Smooth caret animation is always enabled.")],description:m("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:Q(new vb(28,"cursorStyle",Ai.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],T6,{description:m("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:Q(new pt(29,"cursorSurroundingLines",0,0,1073741824,{description:m("cursorSurroundingLines","Controls the minimal number of visible leading lines (minimum 0) and trailing lines (minimum 1) surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.")})),cursorSurroundingLinesStyle:Q(new Wt(30,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[m("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),m("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],markdownDescription:m("cursorSurroundingLinesStyle","Controls when `#editor.cursorSurroundingLines#` should be enforced.")})),cursorWidth:Q(new pt(31,"cursorWidth",0,0,1073741824,{markdownDescription:m("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:Q(new Je(32,"disableLayerHinting",!1)),disableMonospaceOptimizations:Q(new Je(33,"disableMonospaceOptimizations",!1)),domReadOnly:Q(new Je(34,"domReadOnly",!1)),dragAndDrop:Q(new Je(35,"dragAndDrop",!0,{description:m("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:Q(new R6),dropIntoEditor:Q(new uW),stickyScroll:Q(new V6),experimentalWhitespaceRendering:Q(new Wt(38,"experimentalWhitespaceRendering","svg",["svg","font","off"],{enumDescriptions:[m("experimentalWhitespaceRendering.svg","Use a new rendering method with svgs."),m("experimentalWhitespaceRendering.font","Use a new rendering method with font characters."),m("experimentalWhitespaceRendering.off","Use the stable rendering method.")],description:m("experimentalWhitespaceRendering","Controls whether whitespace is rendered with a new, experimental method.")})),extraEditorClassName:Q(new dn(39,"extraEditorClassName","")),fastScrollSensitivity:Q(new Ts(40,"fastScrollSensitivity",5,o=>o<=0?5:o,{markdownDescription:m("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:Q(new A6),fixedOverflowWidgets:Q(new Je(42,"fixedOverflowWidgets",!1)),folding:Q(new Je(43,"folding",!0,{description:m("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:Q(new Wt(44,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[m("foldingStrategy.auto","Use a language-specific folding strategy if available, else the indentation-based one."),m("foldingStrategy.indentation","Use the indentation-based folding strategy.")],description:m("foldingStrategy","Controls the strategy for computing folding ranges.")})),foldingHighlight:Q(new Je(45,"foldingHighlight",!0,{description:m("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),foldingImportsByDefault:Q(new Je(46,"foldingImportsByDefault",!1,{description:m("foldingImportsByDefault","Controls whether the editor automatically collapses import ranges.")})),foldingMaximumRegions:Q(new pt(47,"foldingMaximumRegions",5e3,10,65e3,{description:m("foldingMaximumRegions","The maximum number of foldable regions. Increasing this value may result in the editor becoming less responsive when the current source has a large number of foldable regions.")})),unfoldOnClickAfterEndOfLine:Q(new Je(48,"unfoldOnClickAfterEndOfLine",!1,{description:m("unfoldOnClickAfterEndOfLine","Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:Q(new dn(49,"fontFamily",ls.fontFamily,{description:m("fontFamily","Controls the font family.")})),fontInfo:Q(new P6),fontLigatures2:Q(new Mc),fontSize:Q(new O6),fontWeight:Q(new IL),fontVariations:Q(new Hp),formatOnPaste:Q(new Je(55,"formatOnPaste",!1,{description:m("formatOnPaste","Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.")})),formatOnType:Q(new Je(56,"formatOnType",!1,{description:m("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:Q(new Je(57,"glyphMargin",!0,{description:m("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:Q(new F6),hideCursorInOverviewRuler:Q(new Je(59,"hideCursorInOverviewRuler",!1,{description:m("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),hover:Q(new B6),inDiffEditor:Q(new Je(61,"inDiffEditor",!1)),letterSpacing:Q(new Ts(64,"letterSpacing",ls.letterSpacing,o=>Ts.clamp(o,-5,20),{description:m("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:Q(new H6),lineDecorationsWidth:Q(new U6),lineHeight:Q(new $6),lineNumbers:Q(new X6),lineNumbersMinChars:Q(new pt(69,"lineNumbersMinChars",5,1,300)),linkedEditing:Q(new Je(70,"linkedEditing",!1,{description:m("linkedEditing","Controls whether the editor has linked editing enabled. Depending on the language, related symbols such as HTML tags, are updated while editing.")})),links:Q(new Je(71,"links",!0,{description:m("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:Q(new Wt(72,"matchBrackets","always",["always","near","never"],{description:m("matchBrackets","Highlight matching brackets.")})),minimap:Q(new K6),mouseStyle:Q(new Wt(74,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:Q(new Ts(75,"mouseWheelScrollSensitivity",1,o=>o===0?1:o,{markdownDescription:m("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:Q(new Je(76,"mouseWheelZoom",!1,{markdownDescription:Ue?m("mouseWheelZoom.mac","Zoom the font of the editor when using mouse wheel and holding `Cmd`."):m("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:Q(new Je(77,"multiCursorMergeOverlapping",!0,{description:m("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:Q(new vb(78,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],j6,{markdownEnumDescriptions:[m("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),m("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:m({key:"multiCursorModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add multiple cursors with the mouse. The Go to Definition and Open Link mouse gestures will adapt such that they do not conflict with the [multicursor modifier](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).")})),multiCursorPaste:Q(new Wt(79,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[m("multiCursorPaste.spread","Each cursor pastes a single line of the text."),m("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:m("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),multiCursorLimit:Q(new pt(80,"multiCursorLimit",1e4,1,1e5,{markdownDescription:m("multiCursorLimit","Controls the max number of cursors that can be in an active editor at once.")})),occurrencesHighlight:Q(new Wt(81,"occurrencesHighlight","singleFile",["off","singleFile","multiFile"],{markdownEnumDescriptions:[m("occurrencesHighlight.off","Does not highlight occurrences."),m("occurrencesHighlight.singleFile","Highlights occurrences only in the current file."),m("occurrencesHighlight.multiFile","Experimental: Highlights occurrences across all valid open files.")],markdownDescription:m("occurrencesHighlight","Controls whether occurrences should be highlighted across open files.")})),overviewRulerBorder:Q(new Je(82,"overviewRulerBorder",!0,{description:m("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:Q(new pt(83,"overviewRulerLanes",3,0,3)),padding:Q(new q6),pasteAs:Q(new fW),parameterHints:Q(new G6),peekWidgetDefaultFocus:Q(new Wt(87,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[m("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),m("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:m("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),placeholder:Q(new Y6),definitionLinkOpensInPeek:Q(new Je(89,"definitionLinkOpensInPeek",!1,{description:m("definitionLinkOpensInPeek","Controls whether the Go to Definition mouse gesture always opens the peek widget.")})),quickSuggestions:Q(new Q6),quickSuggestionsDelay:Q(new pt(91,"quickSuggestionsDelay",10,0,1073741824,{description:m("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:Q(new Je(92,"readOnly",!1)),readOnlyMessage:Q(new eW),renameOnType:Q(new Je(94,"renameOnType",!1,{description:m("renameOnType","Controls whether the editor auto renames on type."),markdownDeprecationMessage:m("renameOnTypeDeprecate","Deprecated, use `editor.linkedEditing` instead.")})),renderControlCharacters:Q(new Je(95,"renderControlCharacters",!0,{description:m("renderControlCharacters","Controls whether the editor should render control characters."),restricted:!0})),renderFinalNewline:Q(new Wt(96,"renderFinalNewline",Un?"dimmed":"on",["off","on","dimmed"],{description:m("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:Q(new Wt(97,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",m("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:m("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderLineHighlightOnlyWhenFocus:Q(new Je(98,"renderLineHighlightOnlyWhenFocus",!1,{description:m("renderLineHighlightOnlyWhenFocus","Controls if the editor should render the current line highlight only when the editor is focused.")})),renderValidationDecorations:Q(new Wt(99,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:Q(new Wt(100,"renderWhitespace","selection",["none","boundary","selection","trailing","all"],{enumDescriptions:["",m("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),m("renderWhitespace.selection","Render whitespace characters only on selected text."),m("renderWhitespace.trailing","Render only trailing whitespace characters."),""],description:m("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:Q(new pt(101,"revealHorizontalRightPadding",15,0,1e3)),roundedSelection:Q(new Je(102,"roundedSelection",!0,{description:m("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:Q(new J6),scrollbar:Q(new tW),scrollBeyondLastColumn:Q(new pt(105,"scrollBeyondLastColumn",4,0,1073741824,{description:m("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:Q(new Je(106,"scrollBeyondLastLine",!0,{description:m("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),scrollPredominantAxis:Q(new Je(107,"scrollPredominantAxis",!0,{description:m("scrollPredominantAxis","Scroll only along the predominant axis when scrolling both vertically and horizontally at the same time. Prevents horizontal drift when scrolling vertically on a trackpad.")})),selectionClipboard:Q(new Je(108,"selectionClipboard",!0,{description:m("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:Un})),selectionHighlight:Q(new Je(109,"selectionHighlight",!0,{description:m("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:Q(new Je(110,"selectOnLineNumbers",!0)),showFoldingControls:Q(new Wt(111,"showFoldingControls","mouseover",["always","never","mouseover"],{enumDescriptions:[m("showFoldingControls.always","Always show the folding controls."),m("showFoldingControls.never","Never show the folding controls and reduce the gutter size."),m("showFoldingControls.mouseover","Only show the folding controls when the mouse is over the gutter.")],description:m("showFoldingControls","Controls when the folding controls on the gutter are shown.")})),showUnused:Q(new Je(112,"showUnused",!0,{description:m("showUnused","Controls fading out of unused code.")})),showDeprecated:Q(new Je(141,"showDeprecated",!0,{description:m("showDeprecated","Controls strikethrough deprecated variables.")})),inlayHints:Q(new z6),snippetSuggestions:Q(new Wt(113,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[m("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),m("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),m("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),m("snippetSuggestions.none","Do not show snippet suggestions.")],description:m("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smartSelect:Q(new lW),smoothScrolling:Q(new Je(115,"smoothScrolling",!1,{description:m("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:Q(new pt(118,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:Q(new aW),inlineSuggest:Q(new nW),inlineEdit:Q(new sW),inlineCompletionsAccessibilityVerbose:Q(new Je(150,"inlineCompletionsAccessibilityVerbose",!1,{description:m("inlineCompletionsAccessibilityVerbose","Controls whether the accessibility hint should be provided to screen reader users when an inline completion is shown.")})),suggestFontSize:Q(new pt(120,"suggestFontSize",0,0,1e3,{markdownDescription:m("suggestFontSize","Font size for the suggest widget. When set to {0}, the value of {1} is used.","`0`","`#editor.fontSize#`")})),suggestLineHeight:Q(new pt(121,"suggestLineHeight",0,0,1e3,{markdownDescription:m("suggestLineHeight","Line height for the suggest widget. When set to {0}, the value of {1} is used. The minimum value is 8.","`0`","`#editor.lineHeight#`")})),suggestOnTriggerCharacters:Q(new Je(122,"suggestOnTriggerCharacters",!0,{description:m("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:Q(new Wt(123,"suggestSelection","first",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[m("suggestSelection.first","Always select the first suggestion."),m("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),m("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:m("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:Q(new Wt(124,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[m("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),m("tabCompletion.off","Disable tab completions."),m("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:m("tabCompletion","Enables tab completions.")})),tabIndex:Q(new pt(125,"tabIndex",0,-1,1073741824)),unicodeHighlight:Q(new iW),unusualLineTerminators:Q(new Wt(127,"unusualLineTerminators","prompt",["auto","off","prompt"],{enumDescriptions:[m("unusualLineTerminators.auto","Unusual line terminators are automatically removed."),m("unusualLineTerminators.off","Unusual line terminators are ignored."),m("unusualLineTerminators.prompt","Unusual line terminators prompt to be removed.")],description:m("unusualLineTerminators","Remove unusual line terminators that might cause problems.")})),useShadowDOM:Q(new Je(128,"useShadowDOM",!0)),useTabStops:Q(new Je(129,"useTabStops",!0,{description:m("useTabStops","Spaces and tabs are inserted and deleted in alignment with tab stops.")})),wordBreak:Q(new Wt(130,"wordBreak","normal",["normal","keepAll"],{markdownEnumDescriptions:[m("wordBreak.normal","Use the default line break rule."),m("wordBreak.keepAll","Word breaks should not be used for Chinese/Japanese/Korean (CJK) text. Non-CJK text behavior is the same as for normal.")],description:m("wordBreak","Controls the word break rules used for Chinese/Japanese/Korean (CJK) text.")})),wordSegmenterLocales:Q(new cW),wordSeparators:Q(new dn(132,"wordSeparators",$5,{description:m("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:Q(new Wt(133,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[m("wordWrap.off","Lines will never wrap."),m("wordWrap.on","Lines will wrap at the viewport width."),m({key:"wordWrap.wordWrapColumn",comment:["- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at `#editor.wordWrapColumn#`."),m({key:"wordWrap.bounded",comment:["- viewport means the edge of the visible window size.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:m({key:"wordWrap",comment:["- 'off', 'on', 'wordWrapColumn' and 'bounded' refer to values the setting can take and should not be localized.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:Q(new dn(134,"wordWrapBreakAfterCharacters"," })]?|/&.,;¢°′″‰℃、。。、¢,.:;?!%・・ゝゞヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ァィゥェォャュョッー”〉》」』】〕)]}」")),wordWrapBreakBeforeCharacters:Q(new dn(135,"wordWrapBreakBeforeCharacters","([{‘“〈《「『【〔([{「£¥$£¥++")),wordWrapColumn:Q(new pt(136,"wordWrapColumn",80,1,1073741824,{markdownDescription:m({key:"wordWrapColumn",comment:["- `editor.wordWrap` refers to a different setting and should not be localized.","- 'wordWrapColumn' and 'bounded' refer to values the different setting can take and should not be localized."]},"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapOverride1:Q(new Wt(137,"wordWrapOverride1","inherit",["off","on","inherit"])),wordWrapOverride2:Q(new Wt(138,"wordWrapOverride2","inherit",["off","on","inherit"])),editorClassName:Q(new M6),defaultColorDecorators:Q(new Je(148,"defaultColorDecorators",!1,{markdownDescription:m("defaultColorDecorators","Controls whether inline color decorations should be shown using the default document color provider")})),pixelRatio:Q(new Z6),tabFocusMode:Q(new Je(145,"tabFocusMode",!1,{markdownDescription:m("tabFocusMode","Controls whether the editor receives tabs or defers them to the workbench for navigation.")})),layoutInfo:Q(new Ef),wrappingInfo:Q(new hW),wrappingIndent:Q(new dW),wrappingStrategy:Q(new W6)};class _W{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?ig.isErrorNoTelemetry(e)?new ig(e.message+` + +`+e.stack):new Error(e.message+` + +`+e.stack):e},0)}}emit(e){this.listeners.forEach(t=>{t(e)})}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}}const G5=new _W;function Ze(o){$c(o)||G5.onUnexpectedError(o)}function $n(o){$c(o)||G5.onUnexpectedExternalError(o)}function HM(o){if(o instanceof Error){const{name:e,message:t}=o,i=o.stacktrace||o.stack;return{$isError:!0,name:e,message:t,stack:i,noTelemetry:ig.isErrorNoTelemetry(o)}}return o}const aC="Canceled";function $c(o){return o instanceof ha?!0:o instanceof Error&&o.name===aC&&o.message===aC}class ha extends Error{constructor(){super(aC),this.name=this.message}}function bW(){const o=new Error(aC);return o.name=o.message,o}function na(o){return o?new Error(`Illegal argument: ${o}`):new Error("Illegal argument")}function TN(o){return o?new Error(`Illegal state: ${o}`):new Error("Illegal state")}class CW extends Error{constructor(e){super("NotSupported"),e&&(this.message=e)}}class ig extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof ig)return e;const t=new ig;return t.message=e.message,t.stack=e.stack,t}static isErrorNoTelemetry(e){return e.name==="CodeExpectedError"}}class nt extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,nt.prototype)}}function ng(o,e){const t=this;let i=!1,n;return function(){return i||(i=!0,n=o.apply(t,arguments)),n}}function MN(o){return typeof o=="object"&&o!==null&&typeof o.dispose=="function"&&o.dispose.length===0}function xt(o){if(st.is(o)){const e=[];for(const t of o)if(t)try{t.dispose()}catch(i){e.push(i)}if(e.length===1)throw e[0];if(e.length>1)throw new AggregateError(e,"Encountered errors while disposing of store");return Array.isArray(o)?[]:o}else if(o)return o.dispose(),o}function No(...o){return _e(()=>xt(o))}function _e(o){return{dispose:ng(()=>{o()})}}const bw=class bw{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{xt(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?bw.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e}deleteAndLeak(e){e&&this._toDispose.has(e)&&this._toDispose.delete(e)}};bw.DISABLE_DISPOSED_WARNING=!1;let X=bw;const kM=class kM{constructor(){this._store=new X,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}};kM.None=Object.freeze({dispose(){}});let z=kM;class Dn{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){this._isDisposed||e===this._value||(this._value?.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}}class vW{constructor(e){this.object=e}dispose(){}}class RN{constructor(){this._store=new Map,this._isDisposed=!1}dispose(){this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{xt(this._store.values())}finally{this._store.clear()}}get(e){return this._store.get(e)}set(e,t,i=!1){this._isDisposed&&console.warn(new Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),i||this._store.get(e)?.dispose(),this._store.set(e,t)}deleteAndDispose(e){this._store.get(e)?.dispose(),this._store.delete(e)}[Symbol.iterator](){return this._store[Symbol.iterator]()}}const wW=globalThis.performance&&typeof globalThis.performance.now=="function";class Hs{static create(e){return new Hs(e)}constructor(e){this._now=wW&&e===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}}var J;(function(o){o.None=()=>z.None;function e(j,B){return u(j,()=>{},0,void 0,!0,void 0,B)}o.defer=e;function t(j){return(B,G=null,ne)=>{let ae=!1,de;return de=j(se=>{if(!ae)return de?de.dispose():ae=!0,B.call(G,se)},null,ne),ae&&de.dispose(),de}}o.once=t;function i(j,B){return o.once(o.filter(j,B))}o.onceIf=i;function n(j,B,G){return d((ne,ae=null,de)=>j(se=>ne.call(ae,B(se)),null,de),G)}o.map=n;function s(j,B,G){return d((ne,ae=null,de)=>j(se=>{B(se),ne.call(ae,se)},null,de),G)}o.forEach=s;function r(j,B,G){return d((ne,ae=null,de)=>j(se=>B(se)&&ne.call(ae,se),null,de),G)}o.filter=r;function a(j){return j}o.signal=a;function l(...j){return(B,G=null,ne)=>{const ae=No(...j.map(de=>de(se=>B.call(G,se))));return h(ae,ne)}}o.any=l;function c(j,B,G,ne){let ae=G;return n(j,de=>(ae=B(ae,de),ae),ne)}o.reduce=c;function d(j,B){let G;const ne={onWillAddFirstListener(){G=j(ae.fire,ae)},onDidRemoveLastListener(){G?.dispose()}},ae=new A(ne);return B?.add(ae),ae.event}function h(j,B){return B instanceof Array?B.push(j):B&&B.add(j),j}function u(j,B,G=100,ne=!1,ae=!1,de,se){let be,we,Rt,ct=0,Bt;const ht={leakWarningThreshold:de,onWillAddFirstListener(){be=j(js=>{ct++,we=B(we,js),ne&&!Rt&&(ei.fire(we),we=void 0),Bt=()=>{const fi=we;we=void 0,Rt=void 0,(!ne||ct>1)&&ei.fire(fi),ct=0},typeof G=="number"?(clearTimeout(Rt),Rt=setTimeout(Bt,G)):Rt===void 0&&(Rt=0,queueMicrotask(Bt))})},onWillRemoveListener(){ae&&ct>0&&Bt?.()},onDidRemoveLastListener(){Bt=void 0,be.dispose()}},ei=new A(ht);return se?.add(ei),ei.event}o.debounce=u;function f(j,B=0,G){return o.debounce(j,(ne,ae)=>ne?(ne.push(ae),ne):[ae],B,void 0,!0,void 0,G)}o.accumulate=f;function g(j,B=(ne,ae)=>ne===ae,G){let ne=!0,ae;return r(j,de=>{const se=ne||!B(de,ae);return ne=!1,ae=de,se},G)}o.latch=g;function p(j,B,G){return[o.filter(j,B,G),o.filter(j,ne=>!B(ne),G)]}o.split=p;function _(j,B=!1,G=[],ne){let ae=G.slice(),de=j(we=>{ae?ae.push(we):be.fire(we)});ne&&ne.add(de);const se=()=>{ae?.forEach(we=>be.fire(we)),ae=null},be=new A({onWillAddFirstListener(){de||(de=j(we=>be.fire(we)),ne&&ne.add(de))},onDidAddFirstListener(){ae&&(B?setTimeout(se):se())},onDidRemoveLastListener(){de&&de.dispose(),de=null}});return ne&&ne.add(be),be.event}o.buffer=_;function b(j,B){return(ne,ae,de)=>{const se=B(new w);return j(function(be){const we=se.evaluate(be);we!==C&&ne.call(ae,we)},void 0,de)}}o.chain=b;const C=Symbol("HaltChainable");class w{constructor(){this.steps=[]}map(B){return this.steps.push(B),this}forEach(B){return this.steps.push(G=>(B(G),G)),this}filter(B){return this.steps.push(G=>B(G)?G:C),this}reduce(B,G){let ne=G;return this.steps.push(ae=>(ne=B(ne,ae),ne)),this}latch(B=(G,ne)=>G===ne){let G=!0,ne;return this.steps.push(ae=>{const de=G||!B(ae,ne);return G=!1,ne=ae,de?ae:C}),this}evaluate(B){for(const G of this.steps)if(B=G(B),B===C)break;return B}}function v(j,B,G=ne=>ne){const ne=(...be)=>se.fire(G(...be)),ae=()=>j.on(B,ne),de=()=>j.removeListener(B,ne),se=new A({onWillAddFirstListener:ae,onDidRemoveLastListener:de});return se.event}o.fromNodeEventEmitter=v;function y(j,B,G=ne=>ne){const ne=(...be)=>se.fire(G(...be)),ae=()=>j.addEventListener(B,ne),de=()=>j.removeEventListener(B,ne),se=new A({onWillAddFirstListener:ae,onDidRemoveLastListener:de});return se.event}o.fromDOMEventEmitter=y;function x(j){return new Promise(B=>t(j)(B))}o.toPromise=x;function L(j){const B=new A;return j.then(G=>{B.fire(G)},()=>{B.fire(void 0)}).finally(()=>{B.dispose()}),B.event}o.fromPromise=L;function E(j,B){return j(G=>B.fire(G))}o.forward=E;function N(j,B,G){return B(G),j(ne=>B(ne))}o.runAndSubscribe=N;class H{constructor(B,G){this._observable=B,this._counter=0,this._hasChanged=!1;const ne={onWillAddFirstListener:()=>{B.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{B.removeObserver(this)}};this.emitter=new A(ne),G&&G.add(this.emitter)}beginUpdate(B){this._counter++}handlePossibleChange(B){}handleChange(B,G){this._hasChanged=!0}endUpdate(B){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function F(j,B){return new H(j,B).emitter.event}o.fromObservable=F;function W(j){return(B,G,ne)=>{let ae=0,de=!1;const se={beginUpdate(){ae++},endUpdate(){ae--,ae===0&&(j.reportChanges(),de&&(de=!1,B.call(G)))},handlePossibleChange(){},handleChange(){de=!0}};j.addObserver(se),j.reportChanges();const be={dispose(){j.removeObserver(se)}};return ne instanceof X?ne.add(be):Array.isArray(ne)&&ne.push(be),be}}o.fromObservableLight=W})(J||(J={}));const _f=class _f{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${_f._idPool++}`,_f.all.add(this)}start(e){this._stopWatch=new Hs,this.listenerCount=e}stop(){if(this._stopWatch){const e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}};_f.all=new Set,_f._idPool=0;let EL=_f,yW=-1;const Cw=class Cw{constructor(e,t,i=(Cw._idPool++).toString(16).padStart(3,"0")){this._errorHandler=e,this.threshold=t,this.name=i,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(e,t){const i=this.threshold;if(i<=0||t{const s=this._stacks.get(e.value)||0;this._stacks.set(e.value,s-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,t=0;for(const[i,n]of this._stacks)(!e||t{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){const a=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(a);const l=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],c=new LW(`${a}. HINT: Stack shows most frequent listener (${l[1]}-times)`,l[0]);return(this._options?.onListenerError||Ze)(c),z.None}if(this._disposed)return z.None;t&&(e=e.bind(t));const n=new jy(e);let s;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(n.stack=AN.create(),s=this._leakageMon.check(n.stack,this._size+1)),this._listeners?this._listeners instanceof jy?(this._deliveryQueue??=new Z5,this._listeners=[this._listeners,n]):this._listeners.push(n):(this._options?.onWillAddFirstListener?.(this),this._listeners=n,this._options?.onDidAddFirstListener?.(this)),this._size++;const r=_e(()=>{s?.(),this._removeListener(n)});return i instanceof X?i.add(r):Array.isArray(i)&&i.push(r),r},this._event}_removeListener(e){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(this._size===1){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}const t=this._listeners,i=t.indexOf(e);if(i===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,t[i]=void 0;const n=this._deliveryQueue.current===this;if(this._size*xW<=t.length){let s=0;for(let r=0;r0}}const kW=()=>new Z5;class Z5{constructor(){this.i=-1,this.end=0}enqueue(e,t,i){this.i=0,this.end=i,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}}class Nh extends A{constructor(e){super(e),this._isPaused=0,this._eventQueue=new yn,this._mergeFn=e?.merge}pause(){this._isPaused++}resume(){if(this._isPaused!==0&&--this._isPaused===0)if(this._mergeFn){if(this._eventQueue.size>0){const e=Array.from(this._eventQueue);this._eventQueue.clear(),super.fire(this._mergeFn(e))}}else for(;!this._isPaused&&this._eventQueue.size!==0;)super.fire(this._eventQueue.shift())}fire(e){this._size&&(this._isPaused!==0?this._eventQueue.push(e):super.fire(e))}}class Y5 extends Nh{constructor(e){super(e),this._delay=e.delay??100}fire(e){this._handle||(this.pause(),this._handle=setTimeout(()=>{this._handle=void 0,this.resume()},this._delay)),super.fire(e)}}class DW extends A{constructor(e){super(e),this._queuedEvents=[],this._mergeFn=e?.merge}fire(e){this.hasListeners()&&(this._queuedEvents.push(e),this._queuedEvents.length===1&&queueMicrotask(()=>{this._mergeFn?super.fire(this._mergeFn(this._queuedEvents)):this._queuedEvents.forEach(t=>super.fire(t)),this._queuedEvents=[]}))}}class IW{constructor(){this.hasListeners=!1,this.events=[],this.emitter=new A({onWillAddFirstListener:()=>this.onFirstListenerAdd(),onDidRemoveLastListener:()=>this.onLastListenerRemove()})}get event(){return this.emitter.event}add(e){const t={event:e,listener:null};return this.events.push(t),this.hasListeners&&this.hook(t),_e(ng(()=>{this.hasListeners&&this.unhook(t);const n=this.events.indexOf(t);this.events.splice(n,1)}))}onFirstListenerAdd(){this.hasListeners=!0,this.events.forEach(e=>this.hook(e))}onLastListenerRemove(){this.hasListeners=!1,this.events.forEach(e=>this.unhook(e))}hook(e){e.listener=e.event(t=>this.emitter.fire(t))}unhook(e){e.listener?.dispose(),e.listener=null}dispose(){this.emitter.dispose();for(const e of this.events)e.listener?.dispose();this.events=[]}}class W_{constructor(){this.data=[]}wrapEvent(e,t,i){return(n,s,r)=>e(a=>{const l=this.data[this.data.length-1];if(!t){l?l.buffers.push(()=>n.call(s,a)):n.call(s,a);return}const c=l;if(!c){n.call(s,t(i,a));return}c.items??=[],c.items.push(a),c.buffers.length===0&&l.buffers.push(()=>{c.reducedResult??=i?c.items.reduce(t,i):c.items.reduce(t),n.call(s,c.reducedResult)})},void 0,r)}bufferEvents(e){const t={buffers:new Array};this.data.push(t);const i=e();return this.data.pop(),t.buffers.forEach(n=>n()),i}}class VM{constructor(){this.listening=!1,this.inputEvent=J.None,this.inputEventListener=z.None,this.emitter=new A({onDidAddFirstListener:()=>{this.listening=!0,this.inputEventListener=this.inputEvent(this.emitter.fire,this.emitter)},onDidRemoveLastListener:()=>{this.listening=!1,this.inputEventListener.dispose()}}),this.event=this.emitter.event}set input(e){this.inputEvent=e,this.listening&&(this.inputEventListener.dispose(),this.inputEventListener=e(this.emitter.fire,this.emitter))}dispose(){this.inputEventListener.dispose(),this.emitter.dispose()}}const Q5=Object.freeze(function(o,e){const t=setTimeout(o.bind(e),0);return{dispose(){clearTimeout(t)}}});var ut;(function(o){function e(t){return t===o.None||t===o.Cancelled||t instanceof w1?!0:!t||typeof t!="object"?!1:typeof t.isCancellationRequested=="boolean"&&typeof t.onCancellationRequested=="function"}o.isCancellationToken=e,o.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:J.None}),o.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Q5})})(ut||(ut={}));class w1{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?Q5:(this._emitter||(this._emitter=new A),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class In{constructor(e){this._token=void 0,this._parentListener=void 0,this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new w1),this._token}cancel(){this._token?this._token instanceof w1&&this._token.cancel():this._token=ut.Cancelled}dispose(e=!1){e&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof w1&&this._token.dispose():this._token=ut.None}}function zM(o){const e=new In;return o.add({dispose(){e.cancel()}}),e.token}class PN{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}}const y1=new PN,TL=new PN,ML=new PN,X5=new Array(230),EW=Object.create(null),NW=Object.create(null),ON=[];for(let o=0;o<=193;o++)ON[o]=-1;(function(){const e=[[1,0,"None",0,"unknown",0,"VK_UNKNOWN","",""],[1,1,"Hyper",0,"",0,"","",""],[1,2,"Super",0,"",0,"","",""],[1,3,"Fn",0,"",0,"","",""],[1,4,"FnLock",0,"",0,"","",""],[1,5,"Suspend",0,"",0,"","",""],[1,6,"Resume",0,"",0,"","",""],[1,7,"Turbo",0,"",0,"","",""],[1,8,"Sleep",0,"",0,"VK_SLEEP","",""],[1,9,"WakeUp",0,"",0,"","",""],[0,10,"KeyA",31,"A",65,"VK_A","",""],[0,11,"KeyB",32,"B",66,"VK_B","",""],[0,12,"KeyC",33,"C",67,"VK_C","",""],[0,13,"KeyD",34,"D",68,"VK_D","",""],[0,14,"KeyE",35,"E",69,"VK_E","",""],[0,15,"KeyF",36,"F",70,"VK_F","",""],[0,16,"KeyG",37,"G",71,"VK_G","",""],[0,17,"KeyH",38,"H",72,"VK_H","",""],[0,18,"KeyI",39,"I",73,"VK_I","",""],[0,19,"KeyJ",40,"J",74,"VK_J","",""],[0,20,"KeyK",41,"K",75,"VK_K","",""],[0,21,"KeyL",42,"L",76,"VK_L","",""],[0,22,"KeyM",43,"M",77,"VK_M","",""],[0,23,"KeyN",44,"N",78,"VK_N","",""],[0,24,"KeyO",45,"O",79,"VK_O","",""],[0,25,"KeyP",46,"P",80,"VK_P","",""],[0,26,"KeyQ",47,"Q",81,"VK_Q","",""],[0,27,"KeyR",48,"R",82,"VK_R","",""],[0,28,"KeyS",49,"S",83,"VK_S","",""],[0,29,"KeyT",50,"T",84,"VK_T","",""],[0,30,"KeyU",51,"U",85,"VK_U","",""],[0,31,"KeyV",52,"V",86,"VK_V","",""],[0,32,"KeyW",53,"W",87,"VK_W","",""],[0,33,"KeyX",54,"X",88,"VK_X","",""],[0,34,"KeyY",55,"Y",89,"VK_Y","",""],[0,35,"KeyZ",56,"Z",90,"VK_Z","",""],[0,36,"Digit1",22,"1",49,"VK_1","",""],[0,37,"Digit2",23,"2",50,"VK_2","",""],[0,38,"Digit3",24,"3",51,"VK_3","",""],[0,39,"Digit4",25,"4",52,"VK_4","",""],[0,40,"Digit5",26,"5",53,"VK_5","",""],[0,41,"Digit6",27,"6",54,"VK_6","",""],[0,42,"Digit7",28,"7",55,"VK_7","",""],[0,43,"Digit8",29,"8",56,"VK_8","",""],[0,44,"Digit9",30,"9",57,"VK_9","",""],[0,45,"Digit0",21,"0",48,"VK_0","",""],[1,46,"Enter",3,"Enter",13,"VK_RETURN","",""],[1,47,"Escape",9,"Escape",27,"VK_ESCAPE","",""],[1,48,"Backspace",1,"Backspace",8,"VK_BACK","",""],[1,49,"Tab",2,"Tab",9,"VK_TAB","",""],[1,50,"Space",10,"Space",32,"VK_SPACE","",""],[0,51,"Minus",88,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[0,52,"Equal",86,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[0,53,"BracketLeft",92,"[",219,"VK_OEM_4","[","OEM_4"],[0,54,"BracketRight",94,"]",221,"VK_OEM_6","]","OEM_6"],[0,55,"Backslash",93,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,56,"IntlHash",0,"",0,"","",""],[0,57,"Semicolon",85,";",186,"VK_OEM_1",";","OEM_1"],[0,58,"Quote",95,"'",222,"VK_OEM_7","'","OEM_7"],[0,59,"Backquote",91,"`",192,"VK_OEM_3","`","OEM_3"],[0,60,"Comma",87,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[0,61,"Period",89,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[0,62,"Slash",90,"/",191,"VK_OEM_2","/","OEM_2"],[1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL","",""],[1,64,"F1",59,"F1",112,"VK_F1","",""],[1,65,"F2",60,"F2",113,"VK_F2","",""],[1,66,"F3",61,"F3",114,"VK_F3","",""],[1,67,"F4",62,"F4",115,"VK_F4","",""],[1,68,"F5",63,"F5",116,"VK_F5","",""],[1,69,"F6",64,"F6",117,"VK_F6","",""],[1,70,"F7",65,"F7",118,"VK_F7","",""],[1,71,"F8",66,"F8",119,"VK_F8","",""],[1,72,"F9",67,"F9",120,"VK_F9","",""],[1,73,"F10",68,"F10",121,"VK_F10","",""],[1,74,"F11",69,"F11",122,"VK_F11","",""],[1,75,"F12",70,"F12",123,"VK_F12","",""],[1,76,"PrintScreen",0,"",0,"","",""],[1,77,"ScrollLock",84,"ScrollLock",145,"VK_SCROLL","",""],[1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE","",""],[1,79,"Insert",19,"Insert",45,"VK_INSERT","",""],[1,80,"Home",14,"Home",36,"VK_HOME","",""],[1,81,"PageUp",11,"PageUp",33,"VK_PRIOR","",""],[1,82,"Delete",20,"Delete",46,"VK_DELETE","",""],[1,83,"End",13,"End",35,"VK_END","",""],[1,84,"PageDown",12,"PageDown",34,"VK_NEXT","",""],[1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",""],[1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",""],[1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",""],[1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",""],[1,89,"NumLock",83,"NumLock",144,"VK_NUMLOCK","",""],[1,90,"NumpadDivide",113,"NumPad_Divide",111,"VK_DIVIDE","",""],[1,91,"NumpadMultiply",108,"NumPad_Multiply",106,"VK_MULTIPLY","",""],[1,92,"NumpadSubtract",111,"NumPad_Subtract",109,"VK_SUBTRACT","",""],[1,93,"NumpadAdd",109,"NumPad_Add",107,"VK_ADD","",""],[1,94,"NumpadEnter",3,"",0,"","",""],[1,95,"Numpad1",99,"NumPad1",97,"VK_NUMPAD1","",""],[1,96,"Numpad2",100,"NumPad2",98,"VK_NUMPAD2","",""],[1,97,"Numpad3",101,"NumPad3",99,"VK_NUMPAD3","",""],[1,98,"Numpad4",102,"NumPad4",100,"VK_NUMPAD4","",""],[1,99,"Numpad5",103,"NumPad5",101,"VK_NUMPAD5","",""],[1,100,"Numpad6",104,"NumPad6",102,"VK_NUMPAD6","",""],[1,101,"Numpad7",105,"NumPad7",103,"VK_NUMPAD7","",""],[1,102,"Numpad8",106,"NumPad8",104,"VK_NUMPAD8","",""],[1,103,"Numpad9",107,"NumPad9",105,"VK_NUMPAD9","",""],[1,104,"Numpad0",98,"NumPad0",96,"VK_NUMPAD0","",""],[1,105,"NumpadDecimal",112,"NumPad_Decimal",110,"VK_DECIMAL","",""],[0,106,"IntlBackslash",97,"OEM_102",226,"VK_OEM_102","",""],[1,107,"ContextMenu",58,"ContextMenu",93,"","",""],[1,108,"Power",0,"",0,"","",""],[1,109,"NumpadEqual",0,"",0,"","",""],[1,110,"F13",71,"F13",124,"VK_F13","",""],[1,111,"F14",72,"F14",125,"VK_F14","",""],[1,112,"F15",73,"F15",126,"VK_F15","",""],[1,113,"F16",74,"F16",127,"VK_F16","",""],[1,114,"F17",75,"F17",128,"VK_F17","",""],[1,115,"F18",76,"F18",129,"VK_F18","",""],[1,116,"F19",77,"F19",130,"VK_F19","",""],[1,117,"F20",78,"F20",131,"VK_F20","",""],[1,118,"F21",79,"F21",132,"VK_F21","",""],[1,119,"F22",80,"F22",133,"VK_F22","",""],[1,120,"F23",81,"F23",134,"VK_F23","",""],[1,121,"F24",82,"F24",135,"VK_F24","",""],[1,122,"Open",0,"",0,"","",""],[1,123,"Help",0,"",0,"","",""],[1,124,"Select",0,"",0,"","",""],[1,125,"Again",0,"",0,"","",""],[1,126,"Undo",0,"",0,"","",""],[1,127,"Cut",0,"",0,"","",""],[1,128,"Copy",0,"",0,"","",""],[1,129,"Paste",0,"",0,"","",""],[1,130,"Find",0,"",0,"","",""],[1,131,"AudioVolumeMute",117,"AudioVolumeMute",173,"VK_VOLUME_MUTE","",""],[1,132,"AudioVolumeUp",118,"AudioVolumeUp",175,"VK_VOLUME_UP","",""],[1,133,"AudioVolumeDown",119,"AudioVolumeDown",174,"VK_VOLUME_DOWN","",""],[1,134,"NumpadComma",110,"NumPad_Separator",108,"VK_SEPARATOR","",""],[0,135,"IntlRo",115,"ABNT_C1",193,"VK_ABNT_C1","",""],[1,136,"KanaMode",0,"",0,"","",""],[0,137,"IntlYen",0,"",0,"","",""],[1,138,"Convert",0,"",0,"","",""],[1,139,"NonConvert",0,"",0,"","",""],[1,140,"Lang1",0,"",0,"","",""],[1,141,"Lang2",0,"",0,"","",""],[1,142,"Lang3",0,"",0,"","",""],[1,143,"Lang4",0,"",0,"","",""],[1,144,"Lang5",0,"",0,"","",""],[1,145,"Abort",0,"",0,"","",""],[1,146,"Props",0,"",0,"","",""],[1,147,"NumpadParenLeft",0,"",0,"","",""],[1,148,"NumpadParenRight",0,"",0,"","",""],[1,149,"NumpadBackspace",0,"",0,"","",""],[1,150,"NumpadMemoryStore",0,"",0,"","",""],[1,151,"NumpadMemoryRecall",0,"",0,"","",""],[1,152,"NumpadMemoryClear",0,"",0,"","",""],[1,153,"NumpadMemoryAdd",0,"",0,"","",""],[1,154,"NumpadMemorySubtract",0,"",0,"","",""],[1,155,"NumpadClear",131,"Clear",12,"VK_CLEAR","",""],[1,156,"NumpadClearEntry",0,"",0,"","",""],[1,0,"",5,"Ctrl",17,"VK_CONTROL","",""],[1,0,"",4,"Shift",16,"VK_SHIFT","",""],[1,0,"",6,"Alt",18,"VK_MENU","",""],[1,0,"",57,"Meta",91,"VK_COMMAND","",""],[1,157,"ControlLeft",5,"",0,"VK_LCONTROL","",""],[1,158,"ShiftLeft",4,"",0,"VK_LSHIFT","",""],[1,159,"AltLeft",6,"",0,"VK_LMENU","",""],[1,160,"MetaLeft",57,"",0,"VK_LWIN","",""],[1,161,"ControlRight",5,"",0,"VK_RCONTROL","",""],[1,162,"ShiftRight",4,"",0,"VK_RSHIFT","",""],[1,163,"AltRight",6,"",0,"VK_RMENU","",""],[1,164,"MetaRight",57,"",0,"VK_RWIN","",""],[1,165,"BrightnessUp",0,"",0,"","",""],[1,166,"BrightnessDown",0,"",0,"","",""],[1,167,"MediaPlay",0,"",0,"","",""],[1,168,"MediaRecord",0,"",0,"","",""],[1,169,"MediaFastForward",0,"",0,"","",""],[1,170,"MediaRewind",0,"",0,"","",""],[1,171,"MediaTrackNext",124,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK","",""],[1,172,"MediaTrackPrevious",125,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK","",""],[1,173,"MediaStop",126,"MediaStop",178,"VK_MEDIA_STOP","",""],[1,174,"Eject",0,"",0,"","",""],[1,175,"MediaPlayPause",127,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE","",""],[1,176,"MediaSelect",128,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT","",""],[1,177,"LaunchMail",129,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL","",""],[1,178,"LaunchApp2",130,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2","",""],[1,179,"LaunchApp1",0,"",0,"VK_MEDIA_LAUNCH_APP1","",""],[1,180,"SelectTask",0,"",0,"","",""],[1,181,"LaunchScreenSaver",0,"",0,"","",""],[1,182,"BrowserSearch",120,"BrowserSearch",170,"VK_BROWSER_SEARCH","",""],[1,183,"BrowserHome",121,"BrowserHome",172,"VK_BROWSER_HOME","",""],[1,184,"BrowserBack",122,"BrowserBack",166,"VK_BROWSER_BACK","",""],[1,185,"BrowserForward",123,"BrowserForward",167,"VK_BROWSER_FORWARD","",""],[1,186,"BrowserStop",0,"",0,"VK_BROWSER_STOP","",""],[1,187,"BrowserRefresh",0,"",0,"VK_BROWSER_REFRESH","",""],[1,188,"BrowserFavorites",0,"",0,"VK_BROWSER_FAVORITES","",""],[1,189,"ZoomToggle",0,"",0,"","",""],[1,190,"MailReply",0,"",0,"","",""],[1,191,"MailForward",0,"",0,"","",""],[1,192,"MailSend",0,"",0,"","",""],[1,0,"",114,"KeyInComposition",229,"","",""],[1,0,"",116,"ABNT_C2",194,"VK_ABNT_C2","",""],[1,0,"",96,"OEM_8",223,"VK_OEM_8","",""],[1,0,"",0,"",0,"VK_KANA","",""],[1,0,"",0,"",0,"VK_HANGUL","",""],[1,0,"",0,"",0,"VK_JUNJA","",""],[1,0,"",0,"",0,"VK_FINAL","",""],[1,0,"",0,"",0,"VK_HANJA","",""],[1,0,"",0,"",0,"VK_KANJI","",""],[1,0,"",0,"",0,"VK_CONVERT","",""],[1,0,"",0,"",0,"VK_NONCONVERT","",""],[1,0,"",0,"",0,"VK_ACCEPT","",""],[1,0,"",0,"",0,"VK_MODECHANGE","",""],[1,0,"",0,"",0,"VK_SELECT","",""],[1,0,"",0,"",0,"VK_PRINT","",""],[1,0,"",0,"",0,"VK_EXECUTE","",""],[1,0,"",0,"",0,"VK_SNAPSHOT","",""],[1,0,"",0,"",0,"VK_HELP","",""],[1,0,"",0,"",0,"VK_APPS","",""],[1,0,"",0,"",0,"VK_PROCESSKEY","",""],[1,0,"",0,"",0,"VK_PACKET","",""],[1,0,"",0,"",0,"VK_DBE_SBCSCHAR","",""],[1,0,"",0,"",0,"VK_DBE_DBCSCHAR","",""],[1,0,"",0,"",0,"VK_ATTN","",""],[1,0,"",0,"",0,"VK_CRSEL","",""],[1,0,"",0,"",0,"VK_EXSEL","",""],[1,0,"",0,"",0,"VK_EREOF","",""],[1,0,"",0,"",0,"VK_PLAY","",""],[1,0,"",0,"",0,"VK_ZOOM","",""],[1,0,"",0,"",0,"VK_NONAME","",""],[1,0,"",0,"",0,"VK_PA1","",""],[1,0,"",0,"",0,"VK_OEM_CLEAR","",""]],t=[],i=[];for(const n of e){const[s,r,a,l,c,d,h,u,f]=n;if(i[r]||(i[r]=!0,EW[a]=r,NW[a.toLowerCase()]=r,s&&(ON[r]=l)),!t[l]){if(t[l]=!0,!c)throw new Error(`String representation missing for key code ${l} around scan code ${a}`);y1.define(l,c),TL.define(l,u||c),ML.define(l,f||u||c)}d&&(X5[d]=l)}})();var el;(function(o){function e(a){return y1.keyCodeToStr(a)}o.toString=e;function t(a){return y1.strToKeyCode(a)}o.fromString=t;function i(a){return TL.keyCodeToStr(a)}o.toUserSettingsUS=i;function n(a){return ML.keyCodeToStr(a)}o.toUserSettingsGeneral=n;function s(a){return TL.strToKeyCode(a)||ML.strToKeyCode(a)}o.fromUserSettings=s;function r(a){if(a>=98&&a<=113)return null;switch(a){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return y1.keyCodeToStr(a)}o.toElectronAccelerator=r})(el||(el={}));function Vp(o,e){const t=(e&65535)<<16>>>0;return(o|t)>>>0}var UM={};let Tf;const qy=globalThis.vscode;if(typeof qy<"u"&&typeof qy.process<"u"){const o=qy.process;Tf={get platform(){return o.platform},get arch(){return o.arch},get env(){return o.env},cwd(){return o.cwd()}}}else typeof process<"u"&&typeof process?.versions?.node=="string"?Tf={get platform(){return process.platform},get arch(){return process.arch},get env(){return UM},cwd(){return UM.VSCODE_CWD||process.cwd()}}:Tf={get platform(){return kn?"win32":Ue?"darwin":"linux"},get arch(){},get env(){return{}},cwd(){return"/"}};const lC=Tf.cwd,RL=Tf.env,TW=Tf.platform,MW=65,RW=97,AW=90,PW=122,hc=46,on=47,vs=92,Wl=58,OW=63;class J5 extends Error{constructor(e,t,i){let n;typeof t=="string"&&t.indexOf("not ")===0?(n="must not be",t=t.replace(/^not /,"")):n="must be";const s=e.indexOf(".")!==-1?"property":"argument";let r=`The "${e}" ${s} ${n} of type ${t}`;r+=`. Received type ${typeof i}`,super(r),this.code="ERR_INVALID_ARG_TYPE"}}function FW(o,e){if(o===null||typeof o!="object")throw new J5(e,"Object",o)}function ki(o,e){if(typeof o!="string")throw new J5(e,"string",o)}const Tl=TW==="win32";function at(o){return o===on||o===vs}function AL(o){return o===on}function Hl(o){return o>=MW&&o<=AW||o>=RW&&o<=PW}function cC(o,e,t,i){let n="",s=0,r=-1,a=0,l=0;for(let c=0;c<=o.length;++c){if(c2){const d=n.lastIndexOf(t);d===-1?(n="",s=0):(n=n.slice(0,d),s=n.length-1-n.lastIndexOf(t)),r=c,a=0;continue}else if(n.length!==0){n="",s=0,r=c,a=0;continue}}e&&(n+=n.length>0?`${t}..`:"..",s=2)}else n.length>0?n+=`${t}${o.slice(r+1,c)}`:n=o.slice(r+1,c),s=c-r-1;r=c,a=0}else l===hc&&a!==-1?++a:a=-1}return n}function BW(o){return o?`${o[0]==="."?"":"."}${o}`:""}function eF(o,e){FW(e,"pathObject");const t=e.dir||e.root,i=e.base||`${e.name||""}${BW(e.ext)}`;return t?t===e.root?`${t}${i}`:`${t}${o}${i}`:i}const Vn={resolve(...o){let e="",t="",i=!1;for(let n=o.length-1;n>=-1;n--){let s;if(n>=0){if(s=o[n],ki(s,`paths[${n}]`),s.length===0)continue}else e.length===0?s=lC():(s=RL[`=${e}`]||lC(),(s===void 0||s.slice(0,2).toLowerCase()!==e.toLowerCase()&&s.charCodeAt(2)===vs)&&(s=`${e}\\`));const r=s.length;let a=0,l="",c=!1;const d=s.charCodeAt(0);if(r===1)at(d)&&(a=1,c=!0);else if(at(d))if(c=!0,at(s.charCodeAt(1))){let h=2,u=h;for(;h2&&at(s.charCodeAt(2))&&(c=!0,a=3));if(l.length>0)if(e.length>0){if(l.toLowerCase()!==e.toLowerCase())continue}else e=l;if(i){if(e.length>0)break}else if(t=`${s.slice(a)}\\${t}`,i=c,c&&e.length>0)break}return t=cC(t,!i,"\\",at),i?`${e}\\${t}`:`${e}${t}`||"."},normalize(o){ki(o,"path");const e=o.length;if(e===0)return".";let t=0,i,n=!1;const s=o.charCodeAt(0);if(e===1)return AL(s)?"\\":o;if(at(s))if(n=!0,at(o.charCodeAt(1))){let a=2,l=a;for(;a2&&at(o.charCodeAt(2))&&(n=!0,t=3));let r=t0&&at(o.charCodeAt(e-1))&&(r+="\\"),i===void 0?n?`\\${r}`:r:n?`${i}\\${r}`:`${i}${r}`},isAbsolute(o){ki(o,"path");const e=o.length;if(e===0)return!1;const t=o.charCodeAt(0);return at(t)||e>2&&Hl(t)&&o.charCodeAt(1)===Wl&&at(o.charCodeAt(2))},join(...o){if(o.length===0)return".";let e,t;for(let s=0;s0&&(e===void 0?e=t=r:e+=`\\${r}`)}if(e===void 0)return".";let i=!0,n=0;if(typeof t=="string"&&at(t.charCodeAt(0))){++n;const s=t.length;s>1&&at(t.charCodeAt(1))&&(++n,s>2&&(at(t.charCodeAt(2))?++n:i=!1))}if(i){for(;n=2&&(e=`\\${e.slice(n)}`)}return Vn.normalize(e)},relative(o,e){if(ki(o,"from"),ki(e,"to"),o===e)return"";const t=Vn.resolve(o),i=Vn.resolve(e);if(t===i||(o=t.toLowerCase(),e=i.toLowerCase(),o===e))return"";let n=0;for(;nn&&o.charCodeAt(s-1)===vs;)s--;const r=s-n;let a=0;for(;aa&&e.charCodeAt(l-1)===vs;)l--;const c=l-a,d=rd){if(e.charCodeAt(a+u)===vs)return i.slice(a+u+1);if(u===2)return i.slice(a+u)}r>d&&(o.charCodeAt(n+u)===vs?h=u:u===2&&(h=3)),h===-1&&(h=0)}let f="";for(u=n+h+1;u<=s;++u)(u===s||o.charCodeAt(u)===vs)&&(f+=f.length===0?"..":"\\..");return a+=h,f.length>0?`${f}${i.slice(a,l)}`:(i.charCodeAt(a)===vs&&++a,i.slice(a,l))},toNamespacedPath(o){if(typeof o!="string"||o.length===0)return o;const e=Vn.resolve(o);if(e.length<=2)return o;if(e.charCodeAt(0)===vs){if(e.charCodeAt(1)===vs){const t=e.charCodeAt(2);if(t!==OW&&t!==hc)return`\\\\?\\UNC\\${e.slice(2)}`}}else if(Hl(e.charCodeAt(0))&&e.charCodeAt(1)===Wl&&e.charCodeAt(2)===vs)return`\\\\?\\${e}`;return o},dirname(o){ki(o,"path");const e=o.length;if(e===0)return".";let t=-1,i=0;const n=o.charCodeAt(0);if(e===1)return at(n)?o:".";if(at(n)){if(t=i=1,at(o.charCodeAt(1))){let a=2,l=a;for(;a2&&at(o.charCodeAt(2))?3:2,i=t);let s=-1,r=!0;for(let a=e-1;a>=i;--a)if(at(o.charCodeAt(a))){if(!r){s=a;break}}else r=!1;if(s===-1){if(t===-1)return".";s=t}return o.slice(0,s)},basename(o,e){e!==void 0&&ki(e,"suffix"),ki(o,"path");let t=0,i=-1,n=!0,s;if(o.length>=2&&Hl(o.charCodeAt(0))&&o.charCodeAt(1)===Wl&&(t=2),e!==void 0&&e.length>0&&e.length<=o.length){if(e===o)return"";let r=e.length-1,a=-1;for(s=o.length-1;s>=t;--s){const l=o.charCodeAt(s);if(at(l)){if(!n){t=s+1;break}}else a===-1&&(n=!1,a=s+1),r>=0&&(l===e.charCodeAt(r)?--r===-1&&(i=s):(r=-1,i=a))}return t===i?i=a:i===-1&&(i=o.length),o.slice(t,i)}for(s=o.length-1;s>=t;--s)if(at(o.charCodeAt(s))){if(!n){t=s+1;break}}else i===-1&&(n=!1,i=s+1);return i===-1?"":o.slice(t,i)},extname(o){ki(o,"path");let e=0,t=-1,i=0,n=-1,s=!0,r=0;o.length>=2&&o.charCodeAt(1)===Wl&&Hl(o.charCodeAt(0))&&(e=i=2);for(let a=o.length-1;a>=e;--a){const l=o.charCodeAt(a);if(at(l)){if(!s){i=a+1;break}continue}n===-1&&(s=!1,n=a+1),l===hc?t===-1?t=a:r!==1&&(r=1):t!==-1&&(r=-1)}return t===-1||n===-1||r===0||r===1&&t===n-1&&t===i+1?"":o.slice(t,n)},format:eF.bind(null,"\\"),parse(o){ki(o,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(o.length===0)return e;const t=o.length;let i=0,n=o.charCodeAt(0);if(t===1)return at(n)?(e.root=e.dir=o,e):(e.base=e.name=o,e);if(at(n)){if(i=1,at(o.charCodeAt(1))){let h=2,u=h;for(;h0&&(e.root=o.slice(0,i));let s=-1,r=i,a=-1,l=!0,c=o.length-1,d=0;for(;c>=i;--c){if(n=o.charCodeAt(c),at(n)){if(!l){r=c+1;break}continue}a===-1&&(l=!1,a=c+1),n===hc?s===-1?s=c:d!==1&&(d=1):s!==-1&&(d=-1)}return a!==-1&&(s===-1||d===0||d===1&&s===a-1&&s===r+1?e.base=e.name=o.slice(r,a):(e.name=o.slice(r,s),e.base=o.slice(r,a),e.ext=o.slice(s,a))),r>0&&r!==i?e.dir=o.slice(0,r-1):e.dir=e.root,e},sep:"\\",delimiter:";",win32:null,posix:null},WW=(()=>{if(Tl){const o=/\\/g;return()=>{const e=lC().replace(o,"/");return e.slice(e.indexOf("/"))}}return()=>lC()})(),oi={resolve(...o){let e="",t=!1;for(let i=o.length-1;i>=-1&&!t;i--){const n=i>=0?o[i]:WW();ki(n,`paths[${i}]`),n.length!==0&&(e=`${n}/${e}`,t=n.charCodeAt(0)===on)}return e=cC(e,!t,"/",AL),t?`/${e}`:e.length>0?e:"."},normalize(o){if(ki(o,"path"),o.length===0)return".";const e=o.charCodeAt(0)===on,t=o.charCodeAt(o.length-1)===on;return o=cC(o,!e,"/",AL),o.length===0?e?"/":t?"./":".":(t&&(o+="/"),e?`/${o}`:o)},isAbsolute(o){return ki(o,"path"),o.length>0&&o.charCodeAt(0)===on},join(...o){if(o.length===0)return".";let e;for(let t=0;t0&&(e===void 0?e=i:e+=`/${i}`)}return e===void 0?".":oi.normalize(e)},relative(o,e){if(ki(o,"from"),ki(e,"to"),o===e||(o=oi.resolve(o),e=oi.resolve(e),o===e))return"";const t=1,i=o.length,n=i-t,s=1,r=e.length-s,a=na){if(e.charCodeAt(s+c)===on)return e.slice(s+c+1);if(c===0)return e.slice(s+c)}else n>a&&(o.charCodeAt(t+c)===on?l=c:c===0&&(l=0));let d="";for(c=t+l+1;c<=i;++c)(c===i||o.charCodeAt(c)===on)&&(d+=d.length===0?"..":"/..");return`${d}${e.slice(s+l)}`},toNamespacedPath(o){return o},dirname(o){if(ki(o,"path"),o.length===0)return".";const e=o.charCodeAt(0)===on;let t=-1,i=!0;for(let n=o.length-1;n>=1;--n)if(o.charCodeAt(n)===on){if(!i){t=n;break}}else i=!1;return t===-1?e?"/":".":e&&t===1?"//":o.slice(0,t)},basename(o,e){e!==void 0&&ki(e,"ext"),ki(o,"path");let t=0,i=-1,n=!0,s;if(e!==void 0&&e.length>0&&e.length<=o.length){if(e===o)return"";let r=e.length-1,a=-1;for(s=o.length-1;s>=0;--s){const l=o.charCodeAt(s);if(l===on){if(!n){t=s+1;break}}else a===-1&&(n=!1,a=s+1),r>=0&&(l===e.charCodeAt(r)?--r===-1&&(i=s):(r=-1,i=a))}return t===i?i=a:i===-1&&(i=o.length),o.slice(t,i)}for(s=o.length-1;s>=0;--s)if(o.charCodeAt(s)===on){if(!n){t=s+1;break}}else i===-1&&(n=!1,i=s+1);return i===-1?"":o.slice(t,i)},extname(o){ki(o,"path");let e=-1,t=0,i=-1,n=!0,s=0;for(let r=o.length-1;r>=0;--r){const a=o.charCodeAt(r);if(a===on){if(!n){t=r+1;break}continue}i===-1&&(n=!1,i=r+1),a===hc?e===-1?e=r:s!==1&&(s=1):e!==-1&&(s=-1)}return e===-1||i===-1||s===0||s===1&&e===i-1&&e===t+1?"":o.slice(e,i)},format:eF.bind(null,"/"),parse(o){ki(o,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(o.length===0)return e;const t=o.charCodeAt(0)===on;let i;t?(e.root="/",i=1):i=0;let n=-1,s=0,r=-1,a=!0,l=o.length-1,c=0;for(;l>=i;--l){const d=o.charCodeAt(l);if(d===on){if(!a){s=l+1;break}continue}r===-1&&(a=!1,r=l+1),d===hc?n===-1?n=l:c!==1&&(c=1):n!==-1&&(c=-1)}if(r!==-1){const d=s===0&&t?1:s;n===-1||c===0||c===1&&n===r-1&&n===s+1?e.base=e.name=o.slice(d,r):(e.name=o.slice(d,n),e.base=o.slice(d,r),e.ext=o.slice(n,r))}return s>0?e.dir=o.slice(0,s-1):t&&(e.dir="/"),e},sep:"/",delimiter:":",win32:null,posix:null};oi.win32=Vn.win32=Vn;oi.posix=Vn.posix=oi;const tF=Tl?Vn.normalize:oi.normalize,HW=Tl?Vn.join:oi.join,VW=Tl?Vn.resolve:oi.resolve,zW=Tl?Vn.relative:oi.relative,iF=Tl?Vn.dirname:oi.dirname,uc=Tl?Vn.basename:oi.basename,UW=Tl?Vn.extname:oi.extname,fc=Tl?Vn.sep:oi.sep,$W=/^\w[\w\d+.-]*$/,KW=/^\//,jW=/^\/\//;function qW(o,e){if(!o.scheme&&e)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${o.authority}", path: "${o.path}", query: "${o.query}", fragment: "${o.fragment}"}`);if(o.scheme&&!$W.test(o.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(o.path){if(o.authority){if(!KW.test(o.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(jW.test(o.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}function GW(o,e){return!o&&!e?"file":o}function ZW(o,e){switch(o){case"https":case"http":case"file":e?e[0]!==nr&&(e=nr+e):e=nr;break}return e}const ti="",nr="/",YW=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class ve{static isUri(e){return e instanceof ve?!0:e?typeof e.authority=="string"&&typeof e.fragment=="string"&&typeof e.path=="string"&&typeof e.query=="string"&&typeof e.scheme=="string"&&typeof e.fsPath=="string"&&typeof e.with=="function"&&typeof e.toString=="function":!1}constructor(e,t,i,n,s,r=!1){typeof e=="object"?(this.scheme=e.scheme||ti,this.authority=e.authority||ti,this.path=e.path||ti,this.query=e.query||ti,this.fragment=e.fragment||ti):(this.scheme=GW(e,r),this.authority=t||ti,this.path=ZW(this.scheme,i||ti),this.query=n||ti,this.fragment=s||ti,qW(this,r))}get fsPath(){return dC(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:i,path:n,query:s,fragment:r}=e;return t===void 0?t=this.scheme:t===null&&(t=ti),i===void 0?i=this.authority:i===null&&(i=ti),n===void 0?n=this.path:n===null&&(n=ti),s===void 0?s=this.query:s===null&&(s=ti),r===void 0?r=this.fragment:r===null&&(r=ti),t===this.scheme&&i===this.authority&&n===this.path&&s===this.query&&r===this.fragment?this:new xu(t,i,n,s,r)}static parse(e,t=!1){const i=YW.exec(e);return i?new xu(i[2]||ti,wb(i[4]||ti),wb(i[5]||ti),wb(i[7]||ti),wb(i[9]||ti),t):new xu(ti,ti,ti,ti,ti)}static file(e){let t=ti;if(kn&&(e=e.replace(/\\/g,nr)),e[0]===nr&&e[1]===nr){const i=e.indexOf(nr,2);i===-1?(t=e.substring(2),e=nr):(t=e.substring(2,i),e=e.substring(i)||nr)}return new xu("file",t,e,ti,ti)}static from(e,t){return new xu(e.scheme,e.authority,e.path,e.query,e.fragment,t)}static joinPath(e,...t){if(!e.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let i;return kn&&e.scheme==="file"?i=ve.file(Vn.join(dC(e,!0),...t)).path:i=oi.join(e.path,...t),e.with({path:i})}toString(e=!1){return PL(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof ve)return e;{const t=new xu(e);return t._formatted=e.external??null,t._fsPath=e._sep===nF?e.fsPath??null:null,t}}else return e}}const nF=kn?1:void 0;class xu extends ve{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=dC(this,!1)),this._fsPath}toString(e=!1){return e?PL(this,!0):(this._formatted||(this._formatted=PL(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=nF),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}const sF={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function $M(o,e,t){let i,n=-1;for(let s=0;s=97&&r<=122||r>=65&&r<=90||r>=48&&r<=57||r===45||r===46||r===95||r===126||e&&r===47||t&&r===91||t&&r===93||t&&r===58)n!==-1&&(i+=encodeURIComponent(o.substring(n,s)),n=-1),i!==void 0&&(i+=o.charAt(s));else{i===void 0&&(i=o.substr(0,s));const a=sF[r];a!==void 0?(n!==-1&&(i+=encodeURIComponent(o.substring(n,s)),n=-1),i+=a):n===-1&&(n=s)}}return n!==-1&&(i+=encodeURIComponent(o.substring(n))),i!==void 0?i:o}function QW(o){let e;for(let t=0;t1&&o.scheme==="file"?t=`//${o.authority}${o.path}`:o.path.charCodeAt(0)===47&&(o.path.charCodeAt(1)>=65&&o.path.charCodeAt(1)<=90||o.path.charCodeAt(1)>=97&&o.path.charCodeAt(1)<=122)&&o.path.charCodeAt(2)===58?e?t=o.path.substr(1):t=o.path[1].toLowerCase()+o.path.substr(2):t=o.path,kn&&(t=t.replace(/\//g,"\\")),t}function PL(o,e){const t=e?QW:$M;let i="",{scheme:n,authority:s,path:r,query:a,fragment:l}=o;if(n&&(i+=n,i+=":"),(s||n==="file")&&(i+=nr,i+=nr),s){let c=s.indexOf("@");if(c!==-1){const d=s.substr(0,c);s=s.substr(c+1),c=d.lastIndexOf(":"),c===-1?i+=t(d,!1,!1):(i+=t(d.substr(0,c),!1,!1),i+=":",i+=t(d.substr(c+1),!1,!0)),i+="@"}s=s.toLowerCase(),c=s.lastIndexOf(":"),c===-1?i+=t(s,!1,!0):(i+=t(s.substr(0,c),!1,!0),i+=s.substr(c))}if(r){if(r.length>=3&&r.charCodeAt(0)===47&&r.charCodeAt(2)===58){const c=r.charCodeAt(1);c>=65&&c<=90&&(r=`/${String.fromCharCode(c+32)}:${r.substr(3)}`)}else if(r.length>=2&&r.charCodeAt(1)===58){const c=r.charCodeAt(0);c>=65&&c<=90&&(r=`${String.fromCharCode(c+32)}:${r.substr(2)}`)}i+=t(r,!0,!1)}return a&&(i+="?",i+=t(a,!1,!1)),l&&(i+="#",i+=e?l:$M(l,!1,!1)),i}function oF(o){try{return decodeURIComponent(o)}catch{return o.length>3?o.substr(0,3)+oF(o.substr(3)):o}}const KM=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function wb(o){return o.match(KM)?o.replace(KM,e=>oF(e)):o}class P{constructor(e,t){this.lineNumber=e,this.column=t}with(e=this.lineNumber,t=this.column){return e===this.lineNumber&&t===this.column?this:new P(e,t)}delta(e=0,t=0){return this.with(this.lineNumber+e,this.column+t)}equals(e){return P.equals(this,e)}static equals(e,t){return!e&&!t?!0:!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(e){return P.isBefore(this,e)}static isBefore(e,t){return e.lineNumberi||e===i&&t>n?(this.startLineNumber=i,this.startColumn=n,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=i,this.endColumn=n)}isEmpty(){return Mi.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return Mi.containsPosition(this,e)}static containsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.columne.endColumn)}static strictContainsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.column<=e.startColumn||t.lineNumber===e.endLineNumber&&t.column>=e.endColumn)}containsRange(e){return Mi.containsRange(this,e)}static containsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumne.endColumn)}strictContainsRange(e){return Mi.strictContainsRange(this,e)}static strictContainsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn||t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)}plusRange(e){return Mi.plusRange(this,e)}static plusRange(e,t){let i,n,s,r;return t.startLineNumbere.endLineNumber?(s=t.endLineNumber,r=t.endColumn):t.endLineNumber===e.endLineNumber?(s=t.endLineNumber,r=Math.max(t.endColumn,e.endColumn)):(s=e.endLineNumber,r=e.endColumn),new Mi(i,n,s,r)}intersectRanges(e){return Mi.intersectRanges(this,e)}static intersectRanges(e,t){let i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn;const a=t.startLineNumber,l=t.startColumn,c=t.endLineNumber,d=t.endColumn;return ic?(s=c,r=d):s===c&&(r=Math.min(r,d)),i>s||i===s&&n>r?null:new Mi(i,n,s,r)}equalsRange(e){return Mi.equalsRange(this,e)}static equalsRange(e,t){return!e&&!t?!0:!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn}getEndPosition(){return Mi.getEndPosition(this)}static getEndPosition(e){return new P(e.endLineNumber,e.endColumn)}getStartPosition(){return Mi.getStartPosition(this)}static getStartPosition(e){return new P(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,t){return new Mi(this.startLineNumber,this.startColumn,e,t)}setStartPosition(e,t){return new Mi(e,t,this.endLineNumber,this.endColumn)}collapseToStart(){return Mi.collapseToStart(this)}static collapseToStart(e){return new Mi(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}collapseToEnd(){return Mi.collapseToEnd(this)}static collapseToEnd(e){return new Mi(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn)}delta(e){return new Mi(this.startLineNumber+e,this.startColumn,this.endLineNumber+e,this.endColumn)}static fromPositions(e,t=e){return new Mi(e.lineNumber,e.column,t.lineNumber,t.column)}static lift(e){return e?new Mi(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):null}static isIRange(e){return e&&typeof e.startLineNumber=="number"&&typeof e.startColumn=="number"&&typeof e.endLineNumber=="number"&&typeof e.endColumn=="number"}static areIntersectingOrTouching(e,t){return!(e.endLineNumbere.startLineNumber}toJSON(){return this}};class Fe extends I{constructor(e,t,i,n){super(e,t,i,n),this.selectionStartLineNumber=e,this.selectionStartColumn=t,this.positionLineNumber=i,this.positionColumn=n}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(e){return Fe.selectionsEqual(this,e)}static selectionsEqual(e,t){return e.selectionStartLineNumber===t.selectionStartLineNumber&&e.selectionStartColumn===t.selectionStartColumn&&e.positionLineNumber===t.positionLineNumber&&e.positionColumn===t.positionColumn}getDirection(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1}setEndPosition(e,t){return this.getDirection()===0?new Fe(this.startLineNumber,this.startColumn,e,t):new Fe(e,t,this.startLineNumber,this.startColumn)}getPosition(){return new P(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new P(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(e,t){return this.getDirection()===0?new Fe(e,t,this.endLineNumber,this.endColumn):new Fe(this.endLineNumber,this.endColumn,e,t)}static fromPositions(e,t=e){return new Fe(e.lineNumber,e.column,t.lineNumber,t.column)}static fromRange(e,t){return t===0?new Fe(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new Fe(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn)}static liftSelection(e){return new Fe(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn)}static selectionsArrEqual(e,t){if(e&&!t||!e&&t)return!1;if(!e&&!t)return!0;if(e.length!==t.length)return!1;for(let i=0,n=e.length;i{this._tokenizationSupports.get(e)===t&&(this._tokenizationSupports.delete(e),this.handleChange([e]))})}get(e){return this._tokenizationSupports.get(e)||null}registerFactory(e,t){this._factories.get(e)?.dispose();const i=new eH(this,e,t);return this._factories.set(e,i),_e(()=>{const n=this._factories.get(e);!n||n!==i||(this._factories.delete(e),n.dispose())})}async getOrCreate(e){const t=this.get(e);if(t)return t;const i=this._factories.get(e);return!i||i.isResolved?null:(await i.resolve(),this.get(e))}isResolved(e){if(this.get(e))return!0;const i=this._factories.get(e);return!!(!i||i.isResolved)}setColorMap(e){this._colorMap=e,this._onDidChange.fire({changedLanguages:Array.from(this._tokenizationSupports.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}};class eH extends z{get isResolved(){return this._isResolved}constructor(e,t,i){super(),this._registry=e,this._languageId=t,this._factory=i,this._isDisposed=!1,this._resolvePromise=null,this._isResolved=!1}dispose(){this._isDisposed=!0,super.dispose()}async resolve(){return this._resolvePromise||(this._resolvePromise=this._create()),this._resolvePromise}async _create(){const e=await this._factory.tokenizationSupport;this._isResolved=!0,e&&!this._isDisposed&&this._register(this._registry.register(this._languageId,e))}}let zp=class{constructor(e,t,i){this.offset=e,this.type=t,this.language=i,this._tokenBrand=void 0}toString(){return"("+this.offset+", "+this.type+")"}};class FN{constructor(e,t){this.tokens=e,this.endState=t,this._tokenizationResultBrand=void 0}}class x0{constructor(e,t){this.tokens=e,this.endState=t,this._encodedTokenizationResultBrand=void 0}}var is;(function(o){o[o.Increase=0]="Increase",o[o.Decrease=1]="Decrease"})(is||(is={}));var Up;(function(o){const e=new Map;e.set(0,ie.symbolMethod),e.set(1,ie.symbolFunction),e.set(2,ie.symbolConstructor),e.set(3,ie.symbolField),e.set(4,ie.symbolVariable),e.set(5,ie.symbolClass),e.set(6,ie.symbolStruct),e.set(7,ie.symbolInterface),e.set(8,ie.symbolModule),e.set(9,ie.symbolProperty),e.set(10,ie.symbolEvent),e.set(11,ie.symbolOperator),e.set(12,ie.symbolUnit),e.set(13,ie.symbolValue),e.set(15,ie.symbolEnum),e.set(14,ie.symbolConstant),e.set(15,ie.symbolEnum),e.set(16,ie.symbolEnumMember),e.set(17,ie.symbolKeyword),e.set(27,ie.symbolSnippet),e.set(18,ie.symbolText),e.set(19,ie.symbolColor),e.set(20,ie.symbolFile),e.set(21,ie.symbolReference),e.set(22,ie.symbolCustomColor),e.set(23,ie.symbolFolder),e.set(24,ie.symbolTypeParameter),e.set(25,ie.account),e.set(26,ie.issues);function t(s){let r=e.get(s);return r||(console.info("No codicon found for CompletionItemKind "+s),r=ie.symbolProperty),r}o.toIcon=t;const i=new Map;i.set("method",0),i.set("function",1),i.set("constructor",2),i.set("field",3),i.set("variable",4),i.set("class",5),i.set("struct",6),i.set("interface",7),i.set("module",8),i.set("property",9),i.set("event",10),i.set("operator",11),i.set("unit",12),i.set("value",13),i.set("constant",14),i.set("enum",15),i.set("enum-member",16),i.set("enumMember",16),i.set("keyword",17),i.set("snippet",27),i.set("text",18),i.set("color",19),i.set("file",20),i.set("reference",21),i.set("customcolor",22),i.set("folder",23),i.set("type-parameter",24),i.set("typeParameter",24),i.set("account",25),i.set("issue",26);function n(s,r){let a=i.get(s);return typeof a>"u"&&!r&&(a=9),a}o.fromString=n})(Up||(Up={}));var Cl;(function(o){o[o.Automatic=0]="Automatic",o[o.Explicit=1]="Explicit"})(Cl||(Cl={}));class lF{constructor(e,t,i,n){this.range=e,this.text=t,this.completionKind=i,this.isSnippetText=n}equals(e){return I.lift(this.range).equalsRange(e.range)&&this.text===e.text&&this.completionKind===e.completionKind&&this.isSnippetText===e.isSnippetText}}var jM;(function(o){o[o.Automatic=0]="Automatic",o[o.PasteAs=1]="PasteAs"})(jM||(jM={}));var qM;(function(o){o[o.Invoke=1]="Invoke",o[o.TriggerCharacter=2]="TriggerCharacter",o[o.ContentChange=3]="ContentChange"})(qM||(qM={}));var GM;(function(o){o[o.Text=0]="Text",o[o.Read=1]="Read",o[o.Write=2]="Write"})(GM||(GM={}));function tH(o){return o&&ve.isUri(o.uri)&&I.isIRange(o.range)&&(I.isIRange(o.originSelectionRange)||I.isIRange(o.targetSelectionRange))}m("Array","array"),m("Boolean","boolean"),m("Class","class"),m("Constant","constant"),m("Constructor","constructor"),m("Enum","enumeration"),m("EnumMember","enumeration member"),m("Event","event"),m("Field","field"),m("File","file"),m("Function","function"),m("Interface","interface"),m("Key","key"),m("Method","method"),m("Module","module"),m("Namespace","namespace"),m("Null","null"),m("Number","number"),m("Object","object"),m("Operator","operator"),m("Package","package"),m("Property","property"),m("String","string"),m("Struct","struct"),m("TypeParameter","type parameter"),m("Variable","variable");var FL;(function(o){const e=new Map;e.set(0,ie.symbolFile),e.set(1,ie.symbolModule),e.set(2,ie.symbolNamespace),e.set(3,ie.symbolPackage),e.set(4,ie.symbolClass),e.set(5,ie.symbolMethod),e.set(6,ie.symbolProperty),e.set(7,ie.symbolField),e.set(8,ie.symbolConstructor),e.set(9,ie.symbolEnum),e.set(10,ie.symbolInterface),e.set(11,ie.symbolFunction),e.set(12,ie.symbolVariable),e.set(13,ie.symbolConstant),e.set(14,ie.symbolString),e.set(15,ie.symbolNumber),e.set(16,ie.symbolBoolean),e.set(17,ie.symbolArray),e.set(18,ie.symbolObject),e.set(19,ie.symbolKey),e.set(20,ie.symbolNull),e.set(21,ie.symbolEnumMember),e.set(22,ie.symbolStruct),e.set(23,ie.symbolEvent),e.set(24,ie.symbolOperator),e.set(25,ie.symbolTypeParameter);function t(i){let n=e.get(i);return n||(console.info("No codicon found for SymbolKind "+i),n=ie.symbolProperty),n}o.toIcon=t})(FL||(FL={}));const vo=class vo{static fromValue(e){switch(e){case"comment":return vo.Comment;case"imports":return vo.Imports;case"region":return vo.Region}return new vo(e)}constructor(e){this.value=e}};vo.Comment=new vo("comment"),vo.Imports=new vo("imports"),vo.Region=new vo("region");let BL=vo;var ZM;(function(o){o[o.AIGenerated=1]="AIGenerated"})(ZM||(ZM={}));var YM;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(YM||(YM={}));var WL;(function(o){function e(t){return!t||typeof t!="object"?!1:typeof t.id=="string"&&typeof t.title=="string"}o.is=e})(WL||(WL={}));var hC;(function(o){o[o.Type=1]="Type",o[o.Parameter=2]="Parameter"})(hC||(hC={}));class iH{constructor(e){this.createSupport=e,this._tokenizationSupport=null}dispose(){this._tokenizationSupport&&this._tokenizationSupport.then(e=>{e&&e.dispose()})}get tokenizationSupport(){return this._tokenizationSupport||(this._tokenizationSupport=this.createSupport()),this._tokenizationSupport}}const si=new aF,HL=new aF;var QM;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(QM||(QM={}));var VL;(function(o){o[o.Unknown=0]="Unknown",o[o.Disabled=1]="Disabled",o[o.Enabled=2]="Enabled"})(VL||(VL={}));var zL;(function(o){o[o.Invoke=1]="Invoke",o[o.Auto=2]="Auto"})(zL||(zL={}));var UL;(function(o){o[o.None=0]="None",o[o.KeepWhitespace=1]="KeepWhitespace",o[o.InsertAsSnippet=4]="InsertAsSnippet"})(UL||(UL={}));var $L;(function(o){o[o.Method=0]="Method",o[o.Function=1]="Function",o[o.Constructor=2]="Constructor",o[o.Field=3]="Field",o[o.Variable=4]="Variable",o[o.Class=5]="Class",o[o.Struct=6]="Struct",o[o.Interface=7]="Interface",o[o.Module=8]="Module",o[o.Property=9]="Property",o[o.Event=10]="Event",o[o.Operator=11]="Operator",o[o.Unit=12]="Unit",o[o.Value=13]="Value",o[o.Constant=14]="Constant",o[o.Enum=15]="Enum",o[o.EnumMember=16]="EnumMember",o[o.Keyword=17]="Keyword",o[o.Text=18]="Text",o[o.Color=19]="Color",o[o.File=20]="File",o[o.Reference=21]="Reference",o[o.Customcolor=22]="Customcolor",o[o.Folder=23]="Folder",o[o.TypeParameter=24]="TypeParameter",o[o.User=25]="User",o[o.Issue=26]="Issue",o[o.Snippet=27]="Snippet"})($L||($L={}));var KL;(function(o){o[o.Deprecated=1]="Deprecated"})(KL||(KL={}));var jL;(function(o){o[o.Invoke=0]="Invoke",o[o.TriggerCharacter=1]="TriggerCharacter",o[o.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"})(jL||(jL={}));var qL;(function(o){o[o.EXACT=0]="EXACT",o[o.ABOVE=1]="ABOVE",o[o.BELOW=2]="BELOW"})(qL||(qL={}));var GL;(function(o){o[o.NotSet=0]="NotSet",o[o.ContentFlush=1]="ContentFlush",o[o.RecoverFromMarkers=2]="RecoverFromMarkers",o[o.Explicit=3]="Explicit",o[o.Paste=4]="Paste",o[o.Undo=5]="Undo",o[o.Redo=6]="Redo"})(GL||(GL={}));var ZL;(function(o){o[o.LF=1]="LF",o[o.CRLF=2]="CRLF"})(ZL||(ZL={}));var YL;(function(o){o[o.Text=0]="Text",o[o.Read=1]="Read",o[o.Write=2]="Write"})(YL||(YL={}));var QL;(function(o){o[o.None=0]="None",o[o.Keep=1]="Keep",o[o.Brackets=2]="Brackets",o[o.Advanced=3]="Advanced",o[o.Full=4]="Full"})(QL||(QL={}));var XL;(function(o){o[o.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",o[o.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",o[o.accessibilitySupport=2]="accessibilitySupport",o[o.accessibilityPageSize=3]="accessibilityPageSize",o[o.ariaLabel=4]="ariaLabel",o[o.ariaRequired=5]="ariaRequired",o[o.autoClosingBrackets=6]="autoClosingBrackets",o[o.autoClosingComments=7]="autoClosingComments",o[o.screenReaderAnnounceInlineSuggestion=8]="screenReaderAnnounceInlineSuggestion",o[o.autoClosingDelete=9]="autoClosingDelete",o[o.autoClosingOvertype=10]="autoClosingOvertype",o[o.autoClosingQuotes=11]="autoClosingQuotes",o[o.autoIndent=12]="autoIndent",o[o.automaticLayout=13]="automaticLayout",o[o.autoSurround=14]="autoSurround",o[o.bracketPairColorization=15]="bracketPairColorization",o[o.guides=16]="guides",o[o.codeLens=17]="codeLens",o[o.codeLensFontFamily=18]="codeLensFontFamily",o[o.codeLensFontSize=19]="codeLensFontSize",o[o.colorDecorators=20]="colorDecorators",o[o.colorDecoratorsLimit=21]="colorDecoratorsLimit",o[o.columnSelection=22]="columnSelection",o[o.comments=23]="comments",o[o.contextmenu=24]="contextmenu",o[o.copyWithSyntaxHighlighting=25]="copyWithSyntaxHighlighting",o[o.cursorBlinking=26]="cursorBlinking",o[o.cursorSmoothCaretAnimation=27]="cursorSmoothCaretAnimation",o[o.cursorStyle=28]="cursorStyle",o[o.cursorSurroundingLines=29]="cursorSurroundingLines",o[o.cursorSurroundingLinesStyle=30]="cursorSurroundingLinesStyle",o[o.cursorWidth=31]="cursorWidth",o[o.disableLayerHinting=32]="disableLayerHinting",o[o.disableMonospaceOptimizations=33]="disableMonospaceOptimizations",o[o.domReadOnly=34]="domReadOnly",o[o.dragAndDrop=35]="dragAndDrop",o[o.dropIntoEditor=36]="dropIntoEditor",o[o.emptySelectionClipboard=37]="emptySelectionClipboard",o[o.experimentalWhitespaceRendering=38]="experimentalWhitespaceRendering",o[o.extraEditorClassName=39]="extraEditorClassName",o[o.fastScrollSensitivity=40]="fastScrollSensitivity",o[o.find=41]="find",o[o.fixedOverflowWidgets=42]="fixedOverflowWidgets",o[o.folding=43]="folding",o[o.foldingStrategy=44]="foldingStrategy",o[o.foldingHighlight=45]="foldingHighlight",o[o.foldingImportsByDefault=46]="foldingImportsByDefault",o[o.foldingMaximumRegions=47]="foldingMaximumRegions",o[o.unfoldOnClickAfterEndOfLine=48]="unfoldOnClickAfterEndOfLine",o[o.fontFamily=49]="fontFamily",o[o.fontInfo=50]="fontInfo",o[o.fontLigatures=51]="fontLigatures",o[o.fontSize=52]="fontSize",o[o.fontWeight=53]="fontWeight",o[o.fontVariations=54]="fontVariations",o[o.formatOnPaste=55]="formatOnPaste",o[o.formatOnType=56]="formatOnType",o[o.glyphMargin=57]="glyphMargin",o[o.gotoLocation=58]="gotoLocation",o[o.hideCursorInOverviewRuler=59]="hideCursorInOverviewRuler",o[o.hover=60]="hover",o[o.inDiffEditor=61]="inDiffEditor",o[o.inlineSuggest=62]="inlineSuggest",o[o.inlineEdit=63]="inlineEdit",o[o.letterSpacing=64]="letterSpacing",o[o.lightbulb=65]="lightbulb",o[o.lineDecorationsWidth=66]="lineDecorationsWidth",o[o.lineHeight=67]="lineHeight",o[o.lineNumbers=68]="lineNumbers",o[o.lineNumbersMinChars=69]="lineNumbersMinChars",o[o.linkedEditing=70]="linkedEditing",o[o.links=71]="links",o[o.matchBrackets=72]="matchBrackets",o[o.minimap=73]="minimap",o[o.mouseStyle=74]="mouseStyle",o[o.mouseWheelScrollSensitivity=75]="mouseWheelScrollSensitivity",o[o.mouseWheelZoom=76]="mouseWheelZoom",o[o.multiCursorMergeOverlapping=77]="multiCursorMergeOverlapping",o[o.multiCursorModifier=78]="multiCursorModifier",o[o.multiCursorPaste=79]="multiCursorPaste",o[o.multiCursorLimit=80]="multiCursorLimit",o[o.occurrencesHighlight=81]="occurrencesHighlight",o[o.overviewRulerBorder=82]="overviewRulerBorder",o[o.overviewRulerLanes=83]="overviewRulerLanes",o[o.padding=84]="padding",o[o.pasteAs=85]="pasteAs",o[o.parameterHints=86]="parameterHints",o[o.peekWidgetDefaultFocus=87]="peekWidgetDefaultFocus",o[o.placeholder=88]="placeholder",o[o.definitionLinkOpensInPeek=89]="definitionLinkOpensInPeek",o[o.quickSuggestions=90]="quickSuggestions",o[o.quickSuggestionsDelay=91]="quickSuggestionsDelay",o[o.readOnly=92]="readOnly",o[o.readOnlyMessage=93]="readOnlyMessage",o[o.renameOnType=94]="renameOnType",o[o.renderControlCharacters=95]="renderControlCharacters",o[o.renderFinalNewline=96]="renderFinalNewline",o[o.renderLineHighlight=97]="renderLineHighlight",o[o.renderLineHighlightOnlyWhenFocus=98]="renderLineHighlightOnlyWhenFocus",o[o.renderValidationDecorations=99]="renderValidationDecorations",o[o.renderWhitespace=100]="renderWhitespace",o[o.revealHorizontalRightPadding=101]="revealHorizontalRightPadding",o[o.roundedSelection=102]="roundedSelection",o[o.rulers=103]="rulers",o[o.scrollbar=104]="scrollbar",o[o.scrollBeyondLastColumn=105]="scrollBeyondLastColumn",o[o.scrollBeyondLastLine=106]="scrollBeyondLastLine",o[o.scrollPredominantAxis=107]="scrollPredominantAxis",o[o.selectionClipboard=108]="selectionClipboard",o[o.selectionHighlight=109]="selectionHighlight",o[o.selectOnLineNumbers=110]="selectOnLineNumbers",o[o.showFoldingControls=111]="showFoldingControls",o[o.showUnused=112]="showUnused",o[o.snippetSuggestions=113]="snippetSuggestions",o[o.smartSelect=114]="smartSelect",o[o.smoothScrolling=115]="smoothScrolling",o[o.stickyScroll=116]="stickyScroll",o[o.stickyTabStops=117]="stickyTabStops",o[o.stopRenderingLineAfter=118]="stopRenderingLineAfter",o[o.suggest=119]="suggest",o[o.suggestFontSize=120]="suggestFontSize",o[o.suggestLineHeight=121]="suggestLineHeight",o[o.suggestOnTriggerCharacters=122]="suggestOnTriggerCharacters",o[o.suggestSelection=123]="suggestSelection",o[o.tabCompletion=124]="tabCompletion",o[o.tabIndex=125]="tabIndex",o[o.unicodeHighlighting=126]="unicodeHighlighting",o[o.unusualLineTerminators=127]="unusualLineTerminators",o[o.useShadowDOM=128]="useShadowDOM",o[o.useTabStops=129]="useTabStops",o[o.wordBreak=130]="wordBreak",o[o.wordSegmenterLocales=131]="wordSegmenterLocales",o[o.wordSeparators=132]="wordSeparators",o[o.wordWrap=133]="wordWrap",o[o.wordWrapBreakAfterCharacters=134]="wordWrapBreakAfterCharacters",o[o.wordWrapBreakBeforeCharacters=135]="wordWrapBreakBeforeCharacters",o[o.wordWrapColumn=136]="wordWrapColumn",o[o.wordWrapOverride1=137]="wordWrapOverride1",o[o.wordWrapOverride2=138]="wordWrapOverride2",o[o.wrappingIndent=139]="wrappingIndent",o[o.wrappingStrategy=140]="wrappingStrategy",o[o.showDeprecated=141]="showDeprecated",o[o.inlayHints=142]="inlayHints",o[o.editorClassName=143]="editorClassName",o[o.pixelRatio=144]="pixelRatio",o[o.tabFocusMode=145]="tabFocusMode",o[o.layoutInfo=146]="layoutInfo",o[o.wrappingInfo=147]="wrappingInfo",o[o.defaultColorDecorators=148]="defaultColorDecorators",o[o.colorDecoratorsActivatedOn=149]="colorDecoratorsActivatedOn",o[o.inlineCompletionsAccessibilityVerbose=150]="inlineCompletionsAccessibilityVerbose"})(XL||(XL={}));var JL;(function(o){o[o.TextDefined=0]="TextDefined",o[o.LF=1]="LF",o[o.CRLF=2]="CRLF"})(JL||(JL={}));var ex;(function(o){o[o.LF=0]="LF",o[o.CRLF=1]="CRLF"})(ex||(ex={}));var tx;(function(o){o[o.Left=1]="Left",o[o.Center=2]="Center",o[o.Right=3]="Right"})(tx||(tx={}));var ix;(function(o){o[o.Increase=0]="Increase",o[o.Decrease=1]="Decrease"})(ix||(ix={}));var nx;(function(o){o[o.None=0]="None",o[o.Indent=1]="Indent",o[o.IndentOutdent=2]="IndentOutdent",o[o.Outdent=3]="Outdent"})(nx||(nx={}));var sx;(function(o){o[o.Both=0]="Both",o[o.Right=1]="Right",o[o.Left=2]="Left",o[o.None=3]="None"})(sx||(sx={}));var ox;(function(o){o[o.Type=1]="Type",o[o.Parameter=2]="Parameter"})(ox||(ox={}));var rx;(function(o){o[o.Automatic=0]="Automatic",o[o.Explicit=1]="Explicit"})(rx||(rx={}));var ax;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(ax||(ax={}));var lx;(function(o){o[o.DependsOnKbLayout=-1]="DependsOnKbLayout",o[o.Unknown=0]="Unknown",o[o.Backspace=1]="Backspace",o[o.Tab=2]="Tab",o[o.Enter=3]="Enter",o[o.Shift=4]="Shift",o[o.Ctrl=5]="Ctrl",o[o.Alt=6]="Alt",o[o.PauseBreak=7]="PauseBreak",o[o.CapsLock=8]="CapsLock",o[o.Escape=9]="Escape",o[o.Space=10]="Space",o[o.PageUp=11]="PageUp",o[o.PageDown=12]="PageDown",o[o.End=13]="End",o[o.Home=14]="Home",o[o.LeftArrow=15]="LeftArrow",o[o.UpArrow=16]="UpArrow",o[o.RightArrow=17]="RightArrow",o[o.DownArrow=18]="DownArrow",o[o.Insert=19]="Insert",o[o.Delete=20]="Delete",o[o.Digit0=21]="Digit0",o[o.Digit1=22]="Digit1",o[o.Digit2=23]="Digit2",o[o.Digit3=24]="Digit3",o[o.Digit4=25]="Digit4",o[o.Digit5=26]="Digit5",o[o.Digit6=27]="Digit6",o[o.Digit7=28]="Digit7",o[o.Digit8=29]="Digit8",o[o.Digit9=30]="Digit9",o[o.KeyA=31]="KeyA",o[o.KeyB=32]="KeyB",o[o.KeyC=33]="KeyC",o[o.KeyD=34]="KeyD",o[o.KeyE=35]="KeyE",o[o.KeyF=36]="KeyF",o[o.KeyG=37]="KeyG",o[o.KeyH=38]="KeyH",o[o.KeyI=39]="KeyI",o[o.KeyJ=40]="KeyJ",o[o.KeyK=41]="KeyK",o[o.KeyL=42]="KeyL",o[o.KeyM=43]="KeyM",o[o.KeyN=44]="KeyN",o[o.KeyO=45]="KeyO",o[o.KeyP=46]="KeyP",o[o.KeyQ=47]="KeyQ",o[o.KeyR=48]="KeyR",o[o.KeyS=49]="KeyS",o[o.KeyT=50]="KeyT",o[o.KeyU=51]="KeyU",o[o.KeyV=52]="KeyV",o[o.KeyW=53]="KeyW",o[o.KeyX=54]="KeyX",o[o.KeyY=55]="KeyY",o[o.KeyZ=56]="KeyZ",o[o.Meta=57]="Meta",o[o.ContextMenu=58]="ContextMenu",o[o.F1=59]="F1",o[o.F2=60]="F2",o[o.F3=61]="F3",o[o.F4=62]="F4",o[o.F5=63]="F5",o[o.F6=64]="F6",o[o.F7=65]="F7",o[o.F8=66]="F8",o[o.F9=67]="F9",o[o.F10=68]="F10",o[o.F11=69]="F11",o[o.F12=70]="F12",o[o.F13=71]="F13",o[o.F14=72]="F14",o[o.F15=73]="F15",o[o.F16=74]="F16",o[o.F17=75]="F17",o[o.F18=76]="F18",o[o.F19=77]="F19",o[o.F20=78]="F20",o[o.F21=79]="F21",o[o.F22=80]="F22",o[o.F23=81]="F23",o[o.F24=82]="F24",o[o.NumLock=83]="NumLock",o[o.ScrollLock=84]="ScrollLock",o[o.Semicolon=85]="Semicolon",o[o.Equal=86]="Equal",o[o.Comma=87]="Comma",o[o.Minus=88]="Minus",o[o.Period=89]="Period",o[o.Slash=90]="Slash",o[o.Backquote=91]="Backquote",o[o.BracketLeft=92]="BracketLeft",o[o.Backslash=93]="Backslash",o[o.BracketRight=94]="BracketRight",o[o.Quote=95]="Quote",o[o.OEM_8=96]="OEM_8",o[o.IntlBackslash=97]="IntlBackslash",o[o.Numpad0=98]="Numpad0",o[o.Numpad1=99]="Numpad1",o[o.Numpad2=100]="Numpad2",o[o.Numpad3=101]="Numpad3",o[o.Numpad4=102]="Numpad4",o[o.Numpad5=103]="Numpad5",o[o.Numpad6=104]="Numpad6",o[o.Numpad7=105]="Numpad7",o[o.Numpad8=106]="Numpad8",o[o.Numpad9=107]="Numpad9",o[o.NumpadMultiply=108]="NumpadMultiply",o[o.NumpadAdd=109]="NumpadAdd",o[o.NUMPAD_SEPARATOR=110]="NUMPAD_SEPARATOR",o[o.NumpadSubtract=111]="NumpadSubtract",o[o.NumpadDecimal=112]="NumpadDecimal",o[o.NumpadDivide=113]="NumpadDivide",o[o.KEY_IN_COMPOSITION=114]="KEY_IN_COMPOSITION",o[o.ABNT_C1=115]="ABNT_C1",o[o.ABNT_C2=116]="ABNT_C2",o[o.AudioVolumeMute=117]="AudioVolumeMute",o[o.AudioVolumeUp=118]="AudioVolumeUp",o[o.AudioVolumeDown=119]="AudioVolumeDown",o[o.BrowserSearch=120]="BrowserSearch",o[o.BrowserHome=121]="BrowserHome",o[o.BrowserBack=122]="BrowserBack",o[o.BrowserForward=123]="BrowserForward",o[o.MediaTrackNext=124]="MediaTrackNext",o[o.MediaTrackPrevious=125]="MediaTrackPrevious",o[o.MediaStop=126]="MediaStop",o[o.MediaPlayPause=127]="MediaPlayPause",o[o.LaunchMediaPlayer=128]="LaunchMediaPlayer",o[o.LaunchMail=129]="LaunchMail",o[o.LaunchApp2=130]="LaunchApp2",o[o.Clear=131]="Clear",o[o.MAX_VALUE=132]="MAX_VALUE"})(lx||(lx={}));var cx;(function(o){o[o.Hint=1]="Hint",o[o.Info=2]="Info",o[o.Warning=4]="Warning",o[o.Error=8]="Error"})(cx||(cx={}));var dx;(function(o){o[o.Unnecessary=1]="Unnecessary",o[o.Deprecated=2]="Deprecated"})(dx||(dx={}));var hx;(function(o){o[o.Inline=1]="Inline",o[o.Gutter=2]="Gutter"})(hx||(hx={}));var ux;(function(o){o[o.Normal=1]="Normal",o[o.Underlined=2]="Underlined"})(ux||(ux={}));var fx;(function(o){o[o.UNKNOWN=0]="UNKNOWN",o[o.TEXTAREA=1]="TEXTAREA",o[o.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",o[o.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",o[o.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",o[o.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",o[o.CONTENT_TEXT=6]="CONTENT_TEXT",o[o.CONTENT_EMPTY=7]="CONTENT_EMPTY",o[o.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",o[o.CONTENT_WIDGET=9]="CONTENT_WIDGET",o[o.OVERVIEW_RULER=10]="OVERVIEW_RULER",o[o.SCROLLBAR=11]="SCROLLBAR",o[o.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",o[o.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"})(fx||(fx={}));var gx;(function(o){o[o.AIGenerated=1]="AIGenerated"})(gx||(gx={}));var mx;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(mx||(mx={}));var px;(function(o){o[o.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",o[o.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",o[o.TOP_CENTER=2]="TOP_CENTER"})(px||(px={}));var _x;(function(o){o[o.Left=1]="Left",o[o.Center=2]="Center",o[o.Right=4]="Right",o[o.Full=7]="Full"})(_x||(_x={}));var bx;(function(o){o[o.Word=0]="Word",o[o.Line=1]="Line",o[o.Suggest=2]="Suggest"})(bx||(bx={}));var Cx;(function(o){o[o.Left=0]="Left",o[o.Right=1]="Right",o[o.None=2]="None",o[o.LeftOfInjectedText=3]="LeftOfInjectedText",o[o.RightOfInjectedText=4]="RightOfInjectedText"})(Cx||(Cx={}));var vx;(function(o){o[o.Off=0]="Off",o[o.On=1]="On",o[o.Relative=2]="Relative",o[o.Interval=3]="Interval",o[o.Custom=4]="Custom"})(vx||(vx={}));var wx;(function(o){o[o.None=0]="None",o[o.Text=1]="Text",o[o.Blocks=2]="Blocks"})(wx||(wx={}));var yx;(function(o){o[o.Smooth=0]="Smooth",o[o.Immediate=1]="Immediate"})(yx||(yx={}));var Sx;(function(o){o[o.Auto=1]="Auto",o[o.Hidden=2]="Hidden",o[o.Visible=3]="Visible"})(Sx||(Sx={}));var Lx;(function(o){o[o.LTR=0]="LTR",o[o.RTL=1]="RTL"})(Lx||(Lx={}));var xx;(function(o){o.Off="off",o.OnCode="onCode",o.On="on"})(xx||(xx={}));var kx;(function(o){o[o.Invoke=1]="Invoke",o[o.TriggerCharacter=2]="TriggerCharacter",o[o.ContentChange=3]="ContentChange"})(kx||(kx={}));var Dx;(function(o){o[o.File=0]="File",o[o.Module=1]="Module",o[o.Namespace=2]="Namespace",o[o.Package=3]="Package",o[o.Class=4]="Class",o[o.Method=5]="Method",o[o.Property=6]="Property",o[o.Field=7]="Field",o[o.Constructor=8]="Constructor",o[o.Enum=9]="Enum",o[o.Interface=10]="Interface",o[o.Function=11]="Function",o[o.Variable=12]="Variable",o[o.Constant=13]="Constant",o[o.String=14]="String",o[o.Number=15]="Number",o[o.Boolean=16]="Boolean",o[o.Array=17]="Array",o[o.Object=18]="Object",o[o.Key=19]="Key",o[o.Null=20]="Null",o[o.EnumMember=21]="EnumMember",o[o.Struct=22]="Struct",o[o.Event=23]="Event",o[o.Operator=24]="Operator",o[o.TypeParameter=25]="TypeParameter"})(Dx||(Dx={}));var Ix;(function(o){o[o.Deprecated=1]="Deprecated"})(Ix||(Ix={}));var Ex;(function(o){o[o.Hidden=0]="Hidden",o[o.Blink=1]="Blink",o[o.Smooth=2]="Smooth",o[o.Phase=3]="Phase",o[o.Expand=4]="Expand",o[o.Solid=5]="Solid"})(Ex||(Ex={}));var Nx;(function(o){o[o.Line=1]="Line",o[o.Block=2]="Block",o[o.Underline=3]="Underline",o[o.LineThin=4]="LineThin",o[o.BlockOutline=5]="BlockOutline",o[o.UnderlineThin=6]="UnderlineThin"})(Nx||(Nx={}));var Tx;(function(o){o[o.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",o[o.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",o[o.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",o[o.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"})(Tx||(Tx={}));var Mx;(function(o){o[o.None=0]="None",o[o.Same=1]="Same",o[o.Indent=2]="Indent",o[o.DeepIndent=3]="DeepIndent"})(Mx||(Mx={}));const bf=class bf{static chord(e,t){return Vp(e,t)}};bf.CtrlCmd=2048,bf.Shift=1024,bf.Alt=512,bf.WinCtrl=256;let Rx=bf;function cF(){return{editor:void 0,languages:void 0,CancellationTokenSource:In,Emitter:A,KeyCode:lx,KeyMod:Rx,Position:P,Range:I,Selection:Fe,SelectionDirection:Lx,MarkerSeverity:cx,MarkerTag:dx,Uri:ve,Token:zp}}function nH(o,e){const t=o;typeof t.vscodeWindowId!="number"&&Object.defineProperty(t,"vscodeWindowId",{get:()=>e})}const _t=window;function dF(o){return o}class sH{constructor(e,t){this.lastCache=void 0,this.lastArgKey=void 0,typeof e=="function"?(this._fn=e,this._computeKey=dF):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);return this.lastArgKey!==t&&(this.lastArgKey=t,this.lastCache=this._fn(e)),this.lastCache}}class XM{get cachedValues(){return this._map}constructor(e,t){this._map=new Map,this._map2=new Map,typeof e=="function"?(this._fn=e,this._computeKey=dF):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);if(this._map2.has(t))return this._map2.get(t);const i=this._fn(e);return this._map.set(e,i),this._map2.set(t,i),i}}class ua{constructor(e){this.executor=e,this._didRun=!1}get value(){if(!this._didRun)try{this._value=this.executor()}catch(e){this._error=e}finally{this._didRun=!0}if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}function hF(o){return!o||typeof o!="string"?!0:o.trim().length===0}const oH=/{(\d+)}/g;function $p(o,...e){return e.length===0?o:o.replace(oH,function(t,i){const n=parseInt(i,10);return isNaN(n)||n<0||n>=e.length?t:e[n]})}function rH(o){return o.replace(/[<>"'&]/g,e=>{switch(e){case"<":return"<";case">":return">";case'"':return""";case"'":return"'";case"&":return"&"}return e})}function Km(o){return o.replace(/[<>&]/g,function(e){switch(e){case"<":return"<";case">":return">";case"&":return"&";default:return e}})}function xl(o){return o.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function k0(o,e){if(!o||!e)return o;const t=e.length;if(t===0||o.length===0)return o;let i=0;for(;o.indexOf(e,i)===i;)i=i+t;return o.substring(i)}function aH(o,e){if(!o||!e)return o;const t=e.length,i=o.length;if(t===0||i===0)return o;let n=i,s=-1;for(;s=o.lastIndexOf(e,n-1),!(s===-1||s+t!==n);){if(s===0)return"";n=s}return o.substring(0,n)}function lH(o){return o.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}function uF(o,e,t={}){if(!o)throw new Error("Cannot create regex from empty string");e||(o=xl(o)),t.wholeWord&&(/\B/.test(o.charAt(0))||(o="\\b"+o),/\B/.test(o.charAt(o.length-1))||(o=o+"\\b"));let i="";return t.global&&(i+="g"),t.matchCase||(i+="i"),t.multiline&&(i+="m"),t.unicode&&(i+="u"),new RegExp(o,i)}function cH(o){return o.source==="^"||o.source==="^$"||o.source==="$"||o.source==="^\\s*$"?!1:!!(o.exec("")&&o.lastIndex===0)}function va(o){return o.split(/\r\n|\r|\n/)}function dH(o){const e=[],t=o.split(/(\r\n|\r|\n)/);for(let i=0;i=0;t--){const i=o.charCodeAt(t);if(i!==32&&i!==9)return t}return-1}function Kp(o,e){return oe?1:0}function BN(o,e,t=0,i=o.length,n=0,s=e.length){for(;tc)return 1}const r=i-t,a=s-n;return ra?1:0}function Ax(o,e){return H_(o,e,0,o.length,0,e.length)}function H_(o,e,t=0,i=o.length,n=0,s=e.length){for(;t=128||c>=128)return BN(o.toLowerCase(),e.toLowerCase(),t,i,n,s);Yu(l)&&(l-=32),Yu(c)&&(c-=32);const d=l-c;if(d!==0)return d}const r=i-t,a=s-n;return ra?1:0}function yb(o){return o>=48&&o<=57}function Yu(o){return o>=97&&o<=122}function ql(o){return o>=65&&o<=90}function Qu(o,e){return o.length===e.length&&H_(o,e)===0}function WN(o,e){const t=e.length;return e.length>o.length?!1:H_(o,e,0,t)===0}function Th(o,e){const t=Math.min(o.length,e.length);let i;for(i=0;i1){const i=o.charCodeAt(e-2);if(wi(i))return HN(i,t)}return t}class VN{get offset(){return this._offset}constructor(e,t=0){this._str=e,this._len=e.length,this._offset=t}setOffset(e){this._offset=e}prevCodePoint(){const e=hH(this._str,this._offset);return this._offset-=e>=65536?2:1,e}nextCodePoint(){const e=uC(this._str,this._len,this._offset);return this._offset+=e>=65536?2:1,e}eol(){return this._offset>=this._len}}class fC{get offset(){return this._iterator.offset}constructor(e,t=0){this._iterator=new VN(e,t)}nextGraphemeLength(){const e=gC.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.nextCodePoint());for(;!t.eol();){const s=t.offset,r=e.getGraphemeBreakType(t.nextCodePoint());if(JM(n,r)){t.setOffset(s);break}n=r}return t.offset-i}prevGraphemeLength(){const e=gC.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.prevCodePoint());for(;t.offset>0;){const s=t.offset,r=e.getGraphemeBreakType(t.prevCodePoint());if(JM(r,n)){t.setOffset(s);break}n=r}return i-t.offset}eol(){return this._iterator.eol()}}function zN(o,e){return new fC(o,e).nextGraphemeLength()}function fF(o,e){return new fC(o,e).prevGraphemeLength()}function uH(o,e){e>0&&Mh(o.charCodeAt(e))&&e--;const t=e+zN(o,e);return[t-fF(o,t),t]}let Gy;function fH(){return/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDC7\uFDF0-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE35\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDD23\uDE80-\uDEA9\uDEAD-\uDF45\uDF51-\uDF81\uDF86-\uDFF6]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD4B-\uDFFF]|\uD83B[\uDC00-\uDEBB])/}function sg(o){return Gy||(Gy=fH()),Gy.test(o)}const gH=/^[\t\n\r\x20-\x7E]*$/;function D0(o){return gH.test(o)}const gF=/[\u2028\u2029]/;function mF(o){return gF.test(o)}function Rc(o){return o>=11904&&o<=55215||o>=63744&&o<=64255||o>=65281&&o<=65374}function UN(o){return o>=127462&&o<=127487||o===8986||o===8987||o===9200||o===9203||o>=9728&&o<=10175||o===11088||o===11093||o>=127744&&o<=128591||o>=128640&&o<=128764||o>=128992&&o<=129008||o>=129280&&o<=129535||o>=129648&&o<=129782}const mH="\uFEFF";function $N(o){return!!(o&&o.length>0&&o.charCodeAt(0)===65279)}function pF(o){return o=o%52,o<26?String.fromCharCode(97+o):String.fromCharCode(65+o-26)}function JM(o,e){return o===0?e!==5&&e!==7:o===2&&e===3?!1:o===4||o===2||o===3||e===4||e===2||e===3?!0:!(o===8&&(e===8||e===9||e===11||e===12)||(o===11||o===9)&&(e===9||e===10)||(o===12||o===10)&&e===10||e===5||e===13||e===7||o===1||o===13&&e===14||o===6&&e===6)}const Rd=class Rd{static getInstance(){return Rd._INSTANCE||(Rd._INSTANCE=new Rd),Rd._INSTANCE}constructor(){this._data=pH()}getGraphemeBreakType(e){if(e<32)return e===10?3:e===13?2:4;if(e<127)return 0;const t=this._data,i=t.length/3;let n=1;for(;n<=i;)if(et[3*n+1])n=2*n+1;else return t[3*n+2];return 0}};Rd._INSTANCE=null;let gC=Rd;function pH(){return JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}function _H(o,e){if(o===0)return 0;const t=bH(o,e);if(t!==void 0)return t;const i=new VN(e,o);return i.prevCodePoint(),i.offset}function bH(o,e){const t=new VN(e,o);let i=t.prevCodePoint();for(;CH(i)||i===65039||i===8419;){if(t.offset===0)return;i=t.prevCodePoint()}if(!UN(i))return;let n=t.offset;return n>0&&t.prevCodePoint()===8205&&(n=t.offset),n}function CH(o){return 127995<=o&&o<=127999}const vH=" ",Wr=class Wr{static getInstance(e){return Wr.cache.get(Array.from(e))}static getLocales(){return Wr._locales.value}constructor(e){this.confusableDictionary=e}isAmbiguous(e){return this.confusableDictionary.has(e)}getPrimaryConfusable(e){return this.confusableDictionary.get(e)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}};Wr.ambiguousCharacterData=new ua(()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,8218,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,8242,96,1370,96,1523,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71922,67,71913,67,65315,67,8557,67,8450,67,8493,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71919,87,71910,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,66293,90,71909,90,65338,90,8484,90,8488,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65297,49,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"cs":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"es":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"fr":[65374,126,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"it":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ja":[8211,45,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65292,44,65307,59],"ko":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pt-BR":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ru":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"zh-hans":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41],"zh-hant":[8211,45,65374,126,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65307,59]}')),Wr.cache=new sH({getCacheKey:JSON.stringify},e=>{function t(d){const h=new Map;for(let u=0;u!d.startsWith("_")&&d in s);r.length===0&&(r=["_default"]);let a;for(const d of r){const h=t(s[d]);a=n(a,h)}const l=t(s._common),c=i(l,a);return new Wr(c)}),Wr._locales=new ua(()=>Object.keys(Wr.ambiguousCharacterData.value).filter(e=>!e.startsWith("_")));let jp=Wr;const Cf=class Cf{static getRawData(){return JSON.parse("[9,10,11,12,13,32,127,160,173,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8203,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12288,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999]")}static getData(){return this._data||(this._data=new Set(Cf.getRawData())),this._data}static isInvisibleCharacter(e){return Cf.getData().has(e)}static get codePoints(){return Cf.getData()}};Cf._data=void 0;let jm=Cf;const vw=class vw{constructor(){this.mapWindowIdToZoomFactor=new Map}getZoomFactor(e){return this.mapWindowIdToZoomFactor.get(this.getWindowId(e))??1}getWindowId(e){return e.vscodeWindowId}};vw.INSTANCE=new vw;let Ox=vw;function _F(o,e,t){typeof e=="string"&&(e=o.matchMedia(e)),e.addEventListener("change",t)}function wH(o){return Ox.INSTANCE.getZoomFactor(o)}const Bg=navigator.userAgent,Mo=Bg.indexOf("Firefox")>=0,I0=Bg.indexOf("AppleWebKit")>=0,V_=Bg.indexOf("Chrome")>=0,Ac=!V_&&Bg.indexOf("Safari")>=0,bF=!V_&&!Ac&&I0;Bg.indexOf("Electron/")>=0;const eR=Bg.indexOf("Android")>=0;let Zy=!1;if(typeof _t.matchMedia=="function"){const o=_t.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),e=_t.matchMedia("(display-mode: fullscreen)");Zy=o.matches,_F(_t,o,({matches:t})=>{Zy&&e.matches||(Zy=t)})}const KN={clipboard:{writeText:oC||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:oC||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},pointerEvents:_t.PointerEvent&&("ontouchstart"in _t||navigator.maxTouchPoints>0)};function Fx(o,e){if(typeof o=="number"){if(o===0)return null;const t=(o&65535)>>>0,i=(o&4294901760)>>>16;return i!==0?new Yy([Sb(t,e),Sb(i,e)]):new Yy([Sb(t,e)])}else{const t=[];for(let i=0;i{const r=e.token.onCancellationRequested(()=>{r.dispose(),s(new ha)});Promise.resolve(t).then(a=>{r.dispose(),e.dispose(),n(a)},a=>{r.dispose(),e.dispose(),s(a)})});return new class{cancel(){e.cancel(),e.dispose()}then(n,s){return i.then(n,s)}catch(n){return this.then(void 0,n)}finally(n){return i.finally(n)}}}function TH(o,e,t){return new Promise((i,n)=>{const s=e.onCancellationRequested(()=>{s.dispose(),i(t)});o.then(i,n).finally(()=>s.dispose())})}class MH{constructor(){this.isDisposed=!1,this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null}queue(e){if(this.isDisposed)return Promise.reject(new Error("Throttler is disposed"));if(this.activePromise){if(this.queuedPromiseFactory=e,!this.queuedPromise){const t=()=>{if(this.queuedPromise=null,this.isDisposed)return;const i=this.queue(this.queuedPromiseFactory);return this.queuedPromiseFactory=null,i};this.queuedPromise=new Promise(i=>{this.activePromise.then(t,t).then(i)})}return new Promise((t,i)=>{this.queuedPromise.then(t,i)})}return this.activePromise=e(),new Promise((t,i)=>{this.activePromise.then(n=>{this.activePromise=null,t(n)},n=>{this.activePromise=null,i(n)})})}dispose(){this.isDisposed=!0}}const RH=(o,e)=>{let t=!0;const i=setTimeout(()=>{t=!1,e()},o);return{isTriggered:()=>t,dispose:()=>{clearTimeout(i),t=!1}}},AH=o=>{let e=!0;return queueMicrotask(()=>{e&&(e=!1,o())}),{isTriggered:()=>e,dispose:()=>{e=!1}}};class z_{constructor(e){this.defaultDelay=e,this.deferred=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}trigger(e,t=this.defaultDelay){this.task=e,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise((n,s)=>{this.doResolve=n,this.doReject=s}).then(()=>{if(this.completionPromise=null,this.doResolve=null,this.task){const n=this.task;return this.task=null,n()}}));const i=()=>{this.deferred=null,this.doResolve?.(null)};return this.deferred=t===CF?AH(i):RH(t,i),this.completionPromise}isTriggered(){return!!this.deferred?.isTriggered()}cancel(){this.cancelTimeout(),this.completionPromise&&(this.doReject?.(new ha),this.completionPromise=null)}cancelTimeout(){this.deferred?.dispose(),this.deferred=null}dispose(){this.cancel()}}class vF{constructor(e){this.delayer=new z_(e),this.throttler=new MH}trigger(e,t){return this.delayer.trigger(()=>this.throttler.queue(e),t)}cancel(){this.delayer.cancel()}dispose(){this.delayer.dispose(),this.throttler.dispose()}}function og(o,e){return e?new Promise((t,i)=>{const n=setTimeout(()=>{s.dispose(),t()},o),s=e.onCancellationRequested(()=>{clearTimeout(n),s.dispose(),i(new ha)})}):wa(t=>og(o,t))}function rg(o,e=0,t){const i=setTimeout(()=>{o(),t&&n.dispose()},e),n=_e(()=>{clearTimeout(i),t?.deleteAndLeak(n)});return t?.add(n),n}class wr{constructor(e,t){this._isDisposed=!1,this._token=-1,typeof e=="function"&&typeof t=="number"&&this.setIfNotSet(e,t)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(e,t){if(this._isDisposed)throw new nt("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,e()},t)}setIfNotSet(e,t){if(this._isDisposed)throw new nt("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,e()},t))}}class jN{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(e,t,i=globalThis){if(this.isDisposed)throw new nt("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();const n=i.setInterval(()=>{e()},t);this.disposable=_e(()=>{i.clearInterval(n),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}}class ci{constructor(e,t){this.timeoutToken=-1,this.runner=e,this.timeout=t,this.timeoutHandler=this.onTimeout.bind(this)}dispose(){this.cancel(),this.runner=null}cancel(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=-1)}schedule(e=this.timeout){this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,e)}get delay(){return this.timeout}set delay(e){this.timeout=e}isScheduled(){return this.timeoutToken!==-1}onTimeout(){this.timeoutToken=-1,this.runner&&this.doRun()}doRun(){this.runner?.()}}let wF,qm;(function(){typeof globalThis.requestIdleCallback!="function"||typeof globalThis.cancelIdleCallback!="function"?qm=(o,e)=>{z5(()=>{if(t)return;const i=Date.now()+15;e(Object.freeze({didTimeout:!0,timeRemaining(){return Math.max(0,i-Date.now())}}))});let t=!1;return{dispose(){t||(t=!0)}}}:qm=(o,e,t)=>{const i=o.requestIdleCallback(e,typeof t=="number"?{timeout:t}:void 0);let n=!1;return{dispose(){n||(n=!0,o.cancelIdleCallback(i))}}},wF=o=>qm(globalThis,o)})();class yF{constructor(e,t){this._didRun=!1,this._executor=()=>{try{this._value=t()}catch(i){this._error=i}finally{this._didRun=!0}},this._handle=qm(e,()=>this._executor())}dispose(){this._handle.dispose()}get value(){if(this._didRun||(this._handle.dispose(),this._executor()),this._error)throw this._error;return this._value}get isInitialized(){return this._didRun}}class PH extends yF{constructor(e){super(globalThis,e)}}class qN{get isRejected(){return this.outcome?.outcome===1}get isSettled(){return!!this.outcome}constructor(){this.p=new Promise((e,t)=>{this.completeCallback=e,this.errorCallback=t})}complete(e){return new Promise(t=>{this.completeCallback(e),this.outcome={outcome:0,value:e},t()})}error(e){return new Promise(t=>{this.errorCallback(e),this.outcome={outcome:1,value:e},t()})}cancel(){return this.error(new ha)}}var Wx;(function(o){async function e(i){let n;const s=await Promise.all(i.map(r=>r.then(a=>a,a=>{n||(n=a)})));if(typeof n<"u")throw n;return s}o.settled=e;function t(i){return new Promise(async(n,s)=>{try{await i(n,s)}catch(r){s(r)}})}o.withAsyncBody=t})(Wx||(Wx={}));const es=class es{static fromArray(e){return new es(t=>{t.emitMany(e)})}static fromPromise(e){return new es(async t=>{t.emitMany(await e)})}static fromPromises(e){return new es(async t=>{await Promise.all(e.map(async i=>t.emitOne(await i)))})}static merge(e){return new es(async t=>{await Promise.all(e.map(async i=>{for await(const n of i)t.emitOne(n)}))})}constructor(e,t){this._state=0,this._results=[],this._error=null,this._onReturn=t,this._onStateChanged=new A,queueMicrotask(async()=>{const i={emitOne:n=>this.emitOne(n),emitMany:n=>this.emitMany(n),reject:n=>this.reject(n)};try{await Promise.resolve(e(i)),this.resolve()}catch(n){this.reject(n)}finally{i.emitOne=void 0,i.emitMany=void 0,i.reject=void 0}})}[Symbol.asyncIterator](){let e=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(e(this._onReturn?.(),{done:!0,value:void 0})}}static map(e,t){return new es(async i=>{for await(const n of e)i.emitOne(t(n))})}map(e){return es.map(this,e)}static filter(e,t){return new es(async i=>{for await(const n of e)t(n)&&i.emitOne(n)})}filter(e){return es.filter(this,e)}static coalesce(e){return es.filter(e,t=>!!t)}coalesce(){return es.coalesce(this)}static async toPromise(e){const t=[];for await(const i of e)t.push(i);return t}toPromise(){return es.toPromise(this)}emitOne(e){this._state===0&&(this._results.push(e),this._onStateChanged.fire())}emitMany(e){this._state===0&&(this._results=this._results.concat(e),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(e){this._state===0&&(this._state=2,this._error=e,this._onStateChanged.fire())}};es.EMPTY=es.fromArray([]);let Ms=es;class OH extends Ms{constructor(e,t){super(t),this._source=e}cancel(){this._source.cancel()}}function FH(o){const e=new In,t=o(e.token);return new OH(e,async i=>{const n=e.token.onCancellationRequested(()=>{n.dispose(),e.dispose(),i.reject(new ha)});try{for await(const s of t){if(e.token.isCancellationRequested)return;i.emitOne(s)}n.dispose(),e.dispose()}catch(s){n.dispose(),e.dispose(),i.reject(s)}})}const{entries:SF,setPrototypeOf:iR,isFrozen:BH,getPrototypeOf:WH,getOwnPropertyDescriptor:HH}=Object;let{freeze:us,seal:Ro,create:LF}=Object,{apply:Hx,construct:Vx}=typeof Reflect<"u"&&Reflect;us||(us=function(e){return e});Ro||(Ro=function(e){return e});Hx||(Hx=function(e,t,i){return e.apply(t,i)});Vx||(Vx=function(e,t){return new e(...t)});const Lb=lo(Array.prototype.forEach),nR=lo(Array.prototype.pop),im=lo(Array.prototype.push),S1=lo(String.prototype.toLowerCase),Qy=lo(String.prototype.toString),sR=lo(String.prototype.match),nm=lo(String.prototype.replace),VH=lo(String.prototype.indexOf),zH=lo(String.prototype.trim),Yo=lo(Object.prototype.hasOwnProperty),Qn=lo(RegExp.prototype.test),sm=UH(TypeError);function lo(o){return function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),n=1;n2&&arguments[2]!==void 0?arguments[2]:S1;iR&&iR(o,null);let i=e.length;for(;i--;){let n=e[i];if(typeof n=="string"){const s=t(n);s!==n&&(BH(e)||(e[i]=s),n=s)}o[n]=!0}return o}function $H(o){for(let e=0;e/gm),ZH=Ro(/\${[\w\W]*}/gm),YH=Ro(/^data-[\-\w.\u00B7-\uFFFF]/),QH=Ro(/^aria-[\-\w]+$/),xF=Ro(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),XH=Ro(/^(?:\w+script|data):/i),JH=Ro(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),kF=Ro(/^html$/i),eV=Ro(/^[a-z][.\w]*(-[.\w]+)+$/i);var cR=Object.freeze({__proto__:null,MUSTACHE_EXPR:qH,ERB_EXPR:GH,TMPLIT_EXPR:ZH,DATA_ATTR:YH,ARIA_ATTR:QH,IS_ALLOWED_URI:xF,IS_SCRIPT_OR_DATA:XH,ATTR_WHITESPACE:JH,DOCTYPE_NAME:kF,CUSTOM_ELEMENT:eV});const rm={element:1,text:3,progressingInstruction:7,comment:8,document:9},tV=function(){return typeof window>"u"?null:window},iV=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let i=null;const n="data-tt-policy-suffix";t&&t.hasAttribute(n)&&(i=t.getAttribute(n));const s="dompurify"+(i?"#"+i:"");try{return e.createPolicy(s,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return console.warn("TrustedTypes policy "+s+" could not be created."),null}};function DF(){let o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:tV();const e=Oe=>DF(Oe);if(e.version="3.1.7",e.removed=[],!o||!o.document||o.document.nodeType!==rm.document)return e.isSupported=!1,e;let{document:t}=o;const i=t,n=i.currentScript,{DocumentFragment:s,HTMLTemplateElement:r,Node:a,Element:l,NodeFilter:c,NamedNodeMap:d=o.NamedNodeMap||o.MozNamedAttrMap,HTMLFormElement:h,DOMParser:u,trustedTypes:f}=o,g=l.prototype,p=om(g,"cloneNode"),_=om(g,"remove"),b=om(g,"nextSibling"),C=om(g,"childNodes"),w=om(g,"parentNode");if(typeof r=="function"){const Oe=t.createElement("template");Oe.content&&Oe.content.ownerDocument&&(t=Oe.content.ownerDocument)}let v,y="";const{implementation:x,createNodeIterator:L,createDocumentFragment:E,getElementsByTagName:N}=t,{importNode:H}=i;let F={};e.isSupported=typeof SF=="function"&&typeof w=="function"&&x&&x.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:W,ERB_EXPR:j,TMPLIT_EXPR:B,DATA_ATTR:G,ARIA_ATTR:ne,IS_SCRIPT_OR_DATA:ae,ATTR_WHITESPACE:de,CUSTOM_ELEMENT:se}=cR;let{IS_ALLOWED_URI:be}=cR,we=null;const Rt=mt({},[...oR,...Xy,...Jy,...eS,...rR]);let ct=null;const Bt=mt({},[...aR,...tS,...lR,...xb]);let ht=Object.seal(LF(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ei=null,js=null,fi=!0,po=!0,Al=!1,fb=!0,Pl=!1,Yg=!0,Ia=!1,Qg=!1,Xg=!1,Ol=!1,vu=!1,wu=!1,Yc=!0,gb=!1;const mb="user-content-";let yu=!0,Qc=!1,Dr={},Fl=null;const Su=mt({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let pb=null;const Xc=mt({},["audio","video","img","source","image","track"]);let Ea=null;const bs=mt({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ir="http://www.w3.org/1998/Math/MathML",Na="http://www.w3.org/2000/svg",Ti="http://www.w3.org/1999/xhtml";let _o=Ti,Lu=!1,Uo=null;const Ot=mt({},[Ir,Na,Ti],Qy);let Jc=null;const Vy=["application/xhtml+xml","text/html"],zy="text/html";let Hi=null,Bl=null;const Uy=t.createElement("form"),_b=function($){return $ instanceof RegExp||$ instanceof Function},Jg=function(){let $=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(Bl&&Bl===$)){if((!$||typeof $!="object")&&($={}),$=hd($),Jc=Vy.indexOf($.PARSER_MEDIA_TYPE)===-1?zy:$.PARSER_MEDIA_TYPE,Hi=Jc==="application/xhtml+xml"?Qy:S1,we=Yo($,"ALLOWED_TAGS")?mt({},$.ALLOWED_TAGS,Hi):Rt,ct=Yo($,"ALLOWED_ATTR")?mt({},$.ALLOWED_ATTR,Hi):Bt,Uo=Yo($,"ALLOWED_NAMESPACES")?mt({},$.ALLOWED_NAMESPACES,Qy):Ot,Ea=Yo($,"ADD_URI_SAFE_ATTR")?mt(hd(bs),$.ADD_URI_SAFE_ATTR,Hi):bs,pb=Yo($,"ADD_DATA_URI_TAGS")?mt(hd(Xc),$.ADD_DATA_URI_TAGS,Hi):Xc,Fl=Yo($,"FORBID_CONTENTS")?mt({},$.FORBID_CONTENTS,Hi):Su,ei=Yo($,"FORBID_TAGS")?mt({},$.FORBID_TAGS,Hi):{},js=Yo($,"FORBID_ATTR")?mt({},$.FORBID_ATTR,Hi):{},Dr=Yo($,"USE_PROFILES")?$.USE_PROFILES:!1,fi=$.ALLOW_ARIA_ATTR!==!1,po=$.ALLOW_DATA_ATTR!==!1,Al=$.ALLOW_UNKNOWN_PROTOCOLS||!1,fb=$.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Pl=$.SAFE_FOR_TEMPLATES||!1,Yg=$.SAFE_FOR_XML!==!1,Ia=$.WHOLE_DOCUMENT||!1,Ol=$.RETURN_DOM||!1,vu=$.RETURN_DOM_FRAGMENT||!1,wu=$.RETURN_TRUSTED_TYPE||!1,Xg=$.FORCE_BODY||!1,Yc=$.SANITIZE_DOM!==!1,gb=$.SANITIZE_NAMED_PROPS||!1,yu=$.KEEP_CONTENT!==!1,Qc=$.IN_PLACE||!1,be=$.ALLOWED_URI_REGEXP||xF,_o=$.NAMESPACE||Ti,ht=$.CUSTOM_ELEMENT_HANDLING||{},$.CUSTOM_ELEMENT_HANDLING&&_b($.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(ht.tagNameCheck=$.CUSTOM_ELEMENT_HANDLING.tagNameCheck),$.CUSTOM_ELEMENT_HANDLING&&_b($.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(ht.attributeNameCheck=$.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),$.CUSTOM_ELEMENT_HANDLING&&typeof $.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(ht.allowCustomizedBuiltInElements=$.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Pl&&(po=!1),vu&&(Ol=!0),Dr&&(we=mt({},rR),ct=[],Dr.html===!0&&(mt(we,oR),mt(ct,aR)),Dr.svg===!0&&(mt(we,Xy),mt(ct,tS),mt(ct,xb)),Dr.svgFilters===!0&&(mt(we,Jy),mt(ct,tS),mt(ct,xb)),Dr.mathMl===!0&&(mt(we,eS),mt(ct,lR),mt(ct,xb))),$.ADD_TAGS&&(we===Rt&&(we=hd(we)),mt(we,$.ADD_TAGS,Hi)),$.ADD_ATTR&&(ct===Bt&&(ct=hd(ct)),mt(ct,$.ADD_ATTR,Hi)),$.ADD_URI_SAFE_ATTR&&mt(Ea,$.ADD_URI_SAFE_ATTR,Hi),$.FORBID_CONTENTS&&(Fl===Su&&(Fl=hd(Fl)),mt(Fl,$.FORBID_CONTENTS,Hi)),yu&&(we["#text"]=!0),Ia&&mt(we,["html","head","body"]),we.table&&(mt(we,["tbody"]),delete ei.tbody),$.TRUSTED_TYPES_POLICY){if(typeof $.TRUSTED_TYPES_POLICY.createHTML!="function")throw sm('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof $.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw sm('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');v=$.TRUSTED_TYPES_POLICY,y=v.createHTML("")}else v===void 0&&(v=iV(f,n)),v!==null&&typeof y=="string"&&(y=v.createHTML(""));us&&us($),Bl=$}},Xe=mt({},["mi","mo","mn","ms","mtext"]),T=mt({},["annotation-xml"]),M=mt({},["title","style","font","a","script"]),R=mt({},[...Xy,...Jy,...KH]),O=mt({},[...eS,...jH]),V=function($){let ue=w($);(!ue||!ue.tagName)&&(ue={namespaceURI:_o,tagName:"template"});const Ie=S1($.tagName),ui=S1(ue.tagName);return Uo[$.namespaceURI]?$.namespaceURI===Na?ue.namespaceURI===Ti?Ie==="svg":ue.namespaceURI===Ir?Ie==="svg"&&(ui==="annotation-xml"||Xe[ui]):!!R[Ie]:$.namespaceURI===Ir?ue.namespaceURI===Ti?Ie==="math":ue.namespaceURI===Na?Ie==="math"&&T[ui]:!!O[Ie]:$.namespaceURI===Ti?ue.namespaceURI===Na&&!T[ui]||ue.namespaceURI===Ir&&!Xe[ui]?!1:!O[Ie]&&(M[Ie]||!R[Ie]):!!(Jc==="application/xhtml+xml"&&Uo[$.namespaceURI]):!1},Y=function($){im(e.removed,{element:$});try{w($).removeChild($)}catch{_($)}},te=function($,ue){try{im(e.removed,{attribute:ue.getAttributeNode($),from:ue})}catch{im(e.removed,{attribute:null,from:ue})}if(ue.removeAttribute($),$==="is"&&!ct[$])if(Ol||vu)try{Y(ue)}catch{}else try{ue.setAttribute($,"")}catch{}},me=function($){let ue=null,Ie=null;if(Xg)$=""+$;else{const pn=sR($,/^[\r\n\t ]+/);Ie=pn&&pn[0]}Jc==="application/xhtml+xml"&&_o===Ti&&($=''+$+"");const ui=v?v.createHTML($):$;if(_o===Ti)try{ue=new u().parseFromString(ui,Jc)}catch{}if(!ue||!ue.documentElement){ue=x.createDocument(_o,"template",null);try{ue.documentElement.innerHTML=Lu?y:ui}catch{}}const On=ue.body||ue.documentElement;return $&&Ie&&On.insertBefore(t.createTextNode(Ie),On.childNodes[0]||null),_o===Ti?N.call(ue,Ia?"html":"body")[0]:Ia?ue.documentElement:On},ye=function($){return L.call($.ownerDocument||$,$,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},Ve=function($){return $ instanceof h&&(typeof $.nodeName!="string"||typeof $.textContent!="string"||typeof $.removeChild!="function"||!($.attributes instanceof d)||typeof $.removeAttribute!="function"||typeof $.setAttribute!="function"||typeof $.namespaceURI!="string"||typeof $.insertBefore!="function"||typeof $.hasChildNodes!="function")},ft=function($){return typeof a=="function"&&$ instanceof a},Ct=function($,ue,Ie){F[$]&&Lb(F[$],ui=>{ui.call(e,ue,Ie,Bl)})},Si=function($){let ue=null;if(Ct("beforeSanitizeElements",$,null),Ve($))return Y($),!0;const Ie=Hi($.nodeName);if(Ct("uponSanitizeElement",$,{tagName:Ie,allowedTags:we}),$.hasChildNodes()&&!ft($.firstElementChild)&&Qn(/<[/\w]/g,$.innerHTML)&&Qn(/<[/\w]/g,$.textContent)||$.nodeType===rm.progressingInstruction||Yg&&$.nodeType===rm.comment&&Qn(/<[/\w]/g,$.data))return Y($),!0;if(!we[Ie]||ei[Ie]){if(!ei[Ie]&&Zn(Ie)&&(ht.tagNameCheck instanceof RegExp&&Qn(ht.tagNameCheck,Ie)||ht.tagNameCheck instanceof Function&&ht.tagNameCheck(Ie)))return!1;if(yu&&!Fl[Ie]){const ui=w($)||$.parentNode,On=C($)||$.childNodes;if(On&&ui){const pn=On.length;for(let Cs=pn-1;Cs>=0;--Cs){const Er=p(On[Cs],!0);Er.__removalCount=($.__removalCount||0)+1,ui.insertBefore(Er,b($))}}}return Y($),!0}return $ instanceof l&&!V($)||(Ie==="noscript"||Ie==="noembed"||Ie==="noframes")&&Qn(/<\/no(script|embed|frames)/i,$.innerHTML)?(Y($),!0):(Pl&&$.nodeType===rm.text&&(ue=$.textContent,Lb([W,j,B],ui=>{ue=nm(ue,ui," ")}),$.textContent!==ue&&(im(e.removed,{element:$.cloneNode()}),$.textContent=ue)),Ct("afterSanitizeElements",$,null),!1)},Gt=function($,ue,Ie){if(Yc&&(ue==="id"||ue==="name")&&(Ie in t||Ie in Uy))return!1;if(!(po&&!js[ue]&&Qn(G,ue))){if(!(fi&&Qn(ne,ue))){if(!ct[ue]||js[ue]){if(!(Zn($)&&(ht.tagNameCheck instanceof RegExp&&Qn(ht.tagNameCheck,$)||ht.tagNameCheck instanceof Function&&ht.tagNameCheck($))&&(ht.attributeNameCheck instanceof RegExp&&Qn(ht.attributeNameCheck,ue)||ht.attributeNameCheck instanceof Function&&ht.attributeNameCheck(ue))||ue==="is"&&ht.allowCustomizedBuiltInElements&&(ht.tagNameCheck instanceof RegExp&&Qn(ht.tagNameCheck,Ie)||ht.tagNameCheck instanceof Function&&ht.tagNameCheck(Ie))))return!1}else if(!Ea[ue]){if(!Qn(be,nm(Ie,de,""))){if(!((ue==="src"||ue==="xlink:href"||ue==="href")&&$!=="script"&&VH(Ie,"data:")===0&&pb[$])){if(!(Al&&!Qn(ae,nm(Ie,de,"")))){if(Ie)return!1}}}}}}return!0},Zn=function($){return $!=="annotation-xml"&&sR($,se)},qs=function($){Ct("beforeSanitizeAttributes",$,null);const{attributes:ue}=$;if(!ue)return;const Ie={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ct};let ui=ue.length;for(;ui--;){const On=ue[ui],{name:pn,namespaceURI:Cs,value:Er}=On,tm=Hi(pn);let Yn=pn==="value"?Er:zH(Er);if(Ie.attrName=tm,Ie.attrValue=Yn,Ie.keepAttr=!0,Ie.forceKeepAttr=void 0,Ct("uponSanitizeAttribute",$,Ie),Yn=Ie.attrValue,Ie.forceKeepAttr||(te(pn,$),!Ie.keepAttr))continue;if(!fb&&Qn(/\/>/i,Yn)){te(pn,$);continue}Pl&&Lb([W,j,B],TM=>{Yn=nm(Yn,TM," ")});const NM=Hi($.nodeName);if(Gt(NM,tm,Yn)){if(gb&&(tm==="id"||tm==="name")&&(te(pn,$),Yn=mb+Yn),Yg&&Qn(/((--!?|])>)|<\/(style|title)/i,Yn)){te(pn,$);continue}if(v&&typeof f=="object"&&typeof f.getAttributeType=="function"&&!Cs)switch(f.getAttributeType(NM,tm)){case"TrustedHTML":{Yn=v.createHTML(Yn);break}case"TrustedScriptURL":{Yn=v.createScriptURL(Yn);break}}try{Cs?$.setAttributeNS(Cs,pn,Yn):$.setAttribute(pn,Yn),Ve($)?Y($):nR(e.removed)}catch{}}}Ct("afterSanitizeAttributes",$,null)},em=function Oe($){let ue=null;const Ie=ye($);for(Ct("beforeSanitizeShadowDOM",$,null);ue=Ie.nextNode();)Ct("uponSanitizeShadowNode",ue,null),!Si(ue)&&(ue.content instanceof s&&Oe(ue.content),qs(ue));Ct("afterSanitizeShadowDOM",$,null)};return e.sanitize=function(Oe){let $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ue=null,Ie=null,ui=null,On=null;if(Lu=!Oe,Lu&&(Oe=""),typeof Oe!="string"&&!ft(Oe))if(typeof Oe.toString=="function"){if(Oe=Oe.toString(),typeof Oe!="string")throw sm("dirty is not a string, aborting")}else throw sm("toString is not a function");if(!e.isSupported)return Oe;if(Qg||Jg($),e.removed=[],typeof Oe=="string"&&(Qc=!1),Qc){if(Oe.nodeName){const Er=Hi(Oe.nodeName);if(!we[Er]||ei[Er])throw sm("root node is forbidden and cannot be sanitized in-place")}}else if(Oe instanceof a)ue=me(""),Ie=ue.ownerDocument.importNode(Oe,!0),Ie.nodeType===rm.element&&Ie.nodeName==="BODY"||Ie.nodeName==="HTML"?ue=Ie:ue.appendChild(Ie);else{if(!Ol&&!Pl&&!Ia&&Oe.indexOf("<")===-1)return v&&wu?v.createHTML(Oe):Oe;if(ue=me(Oe),!ue)return Ol?null:wu?y:""}ue&&Xg&&Y(ue.firstChild);const pn=ye(Qc?Oe:ue);for(;ui=pn.nextNode();)Si(ui)||(ui.content instanceof s&&em(ui.content),qs(ui));if(Qc)return Oe;if(Ol){if(vu)for(On=E.call(ue.ownerDocument);ue.firstChild;)On.appendChild(ue.firstChild);else On=ue;return(ct.shadowroot||ct.shadowrootmode)&&(On=H.call(i,On,!0)),On}let Cs=Ia?ue.outerHTML:ue.innerHTML;return Ia&&we["!doctype"]&&ue.ownerDocument&&ue.ownerDocument.doctype&&ue.ownerDocument.doctype.name&&Qn(kF,ue.ownerDocument.doctype.name)&&(Cs=" +`+Cs),Pl&&Lb([W,j,B],Er=>{Cs=nm(Cs,Er," ")}),v&&wu?v.createHTML(Cs):Cs},e.setConfig=function(){let Oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Jg(Oe),Qg=!0},e.clearConfig=function(){Bl=null,Qg=!1},e.isValidAttribute=function(Oe,$,ue){Bl||Jg({});const Ie=Hi(Oe),ui=Hi($);return Gt(Ie,ui,ue)},e.addHook=function(Oe,$){typeof $=="function"&&(F[Oe]=F[Oe]||[],im(F[Oe],$))},e.removeHook=function(Oe){if(F[Oe])return nR(F[Oe])},e.removeHooks=function(Oe){F[Oe]&&(F[Oe]=[])},e.removeAllHooks=function(){F={}},e}var ya=DF();ya.version;ya.isSupported;const IF=ya.sanitize;ya.setConfig;ya.clearConfig;ya.isValidAttribute;const EF=ya.addHook,NF=ya.removeHook;ya.removeHooks;ya.removeAllHooks;var Te;(function(o){o.inMemory="inmemory",o.vscode="vscode",o.internal="private",o.walkThrough="walkThrough",o.walkThroughSnippet="walkThroughSnippet",o.http="http",o.https="https",o.file="file",o.mailto="mailto",o.untitled="untitled",o.data="data",o.command="command",o.vscodeRemote="vscode-remote",o.vscodeRemoteResource="vscode-remote-resource",o.vscodeManagedRemoteResource="vscode-managed-remote-resource",o.vscodeUserData="vscode-userdata",o.vscodeCustomEditor="vscode-custom-editor",o.vscodeNotebookCell="vscode-notebook-cell",o.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",o.vscodeNotebookCellMetadataDiff="vscode-notebook-cell-metadata-diff",o.vscodeNotebookCellOutput="vscode-notebook-cell-output",o.vscodeNotebookCellOutputDiff="vscode-notebook-cell-output-diff",o.vscodeNotebookMetadata="vscode-notebook-metadata",o.vscodeInteractiveInput="vscode-interactive-input",o.vscodeSettings="vscode-settings",o.vscodeWorkspaceTrust="vscode-workspace-trust",o.vscodeTerminal="vscode-terminal",o.vscodeChatCodeBlock="vscode-chat-code-block",o.vscodeChatCodeCompareBlock="vscode-chat-code-compare-block",o.vscodeChatSesssion="vscode-chat-editor",o.webviewPanel="webview-panel",o.vscodeWebview="vscode-webview",o.extension="extension",o.vscodeFileResource="vscode-file",o.tmp="tmp",o.vsls="vsls",o.vscodeSourceControl="vscode-scm",o.commentsInput="comment",o.codeSetting="code-setting",o.outputChannel="output"})(Te||(Te={}));function GN(o,e){return ve.isUri(o)?Qu(o.scheme,e):WN(o,e+":")}function zx(o,...e){return e.some(t=>GN(o,t))}const nV="tkn";class sV{constructor(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null,this._serverRootPath="/"}setPreferredWebSchema(e){this._preferredWebSchema=e}get _remoteResourcesPath(){return oi.join(this._serverRootPath,Te.vscodeRemoteResource)}rewrite(e){if(this._delegate)try{return this._delegate(e)}catch(a){return Ze(a),e}const t=e.authority;let i=this._hosts[t];i&&i.indexOf(":")!==-1&&i.indexOf("[")===-1&&(i=`[${i}]`);const n=this._ports[t],s=this._connectionTokens[t];let r=`path=${encodeURIComponent(e.path)}`;return typeof s=="string"&&(r+=`&${nV}=${encodeURIComponent(s)}`),ve.from({scheme:Og?this._preferredWebSchema:Te.vscodeRemoteResource,authority:`${i}:${n}`,path:this._remoteResourcesPath,query:r})}}const TF=new sV,oV="vscode-app",Lp=class Lp{asBrowserUri(e){const t=this.toUri(e);return this.uriToBrowserUri(t)}uriToBrowserUri(e){return e.scheme===Te.vscodeRemote?TF.rewrite(e):e.scheme===Te.file&&(oC||_6===`${Te.vscodeFileResource}://${Lp.FALLBACK_AUTHORITY}`)?e.with({scheme:Te.vscodeFileResource,authority:e.authority||Lp.FALLBACK_AUTHORITY,query:null,fragment:null}):e}toUri(e,t){if(ve.isUri(e))return e;if(globalThis._VSCODE_FILE_ROOT){const i=globalThis._VSCODE_FILE_ROOT;if(/^\w[\w\d+.-]*:\/\//.test(i))return ve.joinPath(ve.parse(i,!0),e);const n=HW(i,e);return ve.file(n)}return ve.parse(t.toUrl(e))}};Lp.FALLBACK_AUTHORITY=oV;let Ux=Lp;const E0=new Ux;var $x;(function(o){const e=new Map([["1",{"Cross-Origin-Opener-Policy":"same-origin"}],["2",{"Cross-Origin-Embedder-Policy":"require-corp"}],["3",{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}]]);o.CoopAndCoep=Object.freeze(e.get("3"));const t="vscode-coi";function i(s){let r;typeof s=="string"?r=new URL(s).searchParams:s instanceof URL?r=s.searchParams:ve.isUri(s)&&(r=new URL(s.toString(!0)).searchParams);const a=r?.get(t);if(a)return e.get(a)}o.getHeadersFromQuery=i;function n(s,r,a){if(!globalThis.crossOriginIsolated)return;const l=r&&a?"3":a?"2":"1";s instanceof URLSearchParams?s.set(t,l):s[t]=l}o.addSearchParam=n})($x||($x={}));function ZN(o){return N0(o,0)}function N0(o,e){switch(typeof o){case"object":return o===null?ol(349,e):Array.isArray(o)?aV(o,e):lV(o,e);case"string":return YN(o,e);case"boolean":return rV(o,e);case"number":return ol(o,e);case"undefined":return ol(937,e);default:return ol(617,e)}}function ol(o,e){return(e<<5)-e+o|0}function rV(o,e){return ol(o?433:863,e)}function YN(o,e){e=ol(149417,e);for(let t=0,i=o.length;tN0(i,t),e)}function lV(o,e){return e=ol(181387,e),Object.keys(o).sort().reduce((t,i)=>(t=YN(i,t),N0(o[i],t)),e)}function iS(o,e,t=32){const i=t-e,n=~((1<>>i)>>>0}function dR(o,e=0,t=o.byteLength,i=0){for(let n=0;nt.toString(16).padStart(2,"0")).join(""):cV((o>>>0).toString(16),e/4)}const ww=class ww{constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(e){const t=e.length;if(t===0)return;const i=this._buff;let n=this._buffLen,s=this._leftoverHighSurrogate,r,a;for(s!==0?(r=s,a=-1,s=0):(r=e.charCodeAt(0),a=0);;){let l=r;if(wi(r))if(a+1>>6,e[t++]=128|(i&63)>>>0):i<65536?(e[t++]=224|(i&61440)>>>12,e[t++]=128|(i&4032)>>>6,e[t++]=128|(i&63)>>>0):(e[t++]=240|(i&1835008)>>>18,e[t++]=128|(i&258048)>>>12,e[t++]=128|(i&4032)>>>6,e[t++]=128|(i&63)>>>0),t>=64&&(this._step(),t-=64,this._totalLen+=64,e[0]=e[64],e[1]=e[65],e[2]=e[66]),t}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),am(this._h0)+am(this._h1)+am(this._h2)+am(this._h3)+am(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,dR(this._buff,this._buffLen),this._buffLen>56&&(this._step(),dR(this._buff));const e=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(e/4294967296),!1),this._buffDV.setUint32(60,e%4294967296,!1),this._step()}_step(){const e=ww._bigBlock32,t=this._buffDV;for(let h=0;h<64;h+=4)e.setUint32(h,t.getUint32(h,!1),!1);for(let h=64;h<320;h+=4)e.setUint32(h,iS(e.getUint32(h-12,!1)^e.getUint32(h-32,!1)^e.getUint32(h-56,!1)^e.getUint32(h-64,!1),1),!1);let i=this._h0,n=this._h1,s=this._h2,r=this._h3,a=this._h4,l,c,d;for(let h=0;h<80;h++)h<20?(l=n&s|~n&r,c=1518500249):h<40?(l=n^s^r,c=1859775393):h<60?(l=n&s|n&r|s&r,c=2400959708):(l=n^s^r,c=3395469782),d=iS(i,5)+l+a+c+e.getUint32(h*4,!1)&4294967295,a=r,r=s,s=iS(n,30),n=i,i=d;this._h0=this._h0+i&4294967295,this._h1=this._h1+n&4294967295,this._h2=this._h2+s&4294967295,this._h3=this._h3+r&4294967295,this._h4=this._h4+a&4294967295}};ww._bigBlock32=new DataView(new ArrayBuffer(320));let Kx=ww;const{getWindow:fe,getWindows:MF,getWindowsCount:dV,getWindowId:mC,getWindowById:hR,onDidRegisterWindow:T0,onWillUnregisterWindow:hV,onDidUnregisterWindow:uV}=(function(){const o=new Map;nH(_t,1);const e={window:_t,disposables:new X};o.set(_t.vscodeWindowId,e);const t=new A,i=new A,n=new A;function s(r,a){return(typeof r=="number"?o.get(r):void 0)??(a?e:void 0)}return{onDidRegisterWindow:t.event,onWillUnregisterWindow:n.event,onDidUnregisterWindow:i.event,registerWindow(r){if(o.has(r.vscodeWindowId))return z.None;const a=new X,l={window:r,disposables:a.add(new X)};return o.set(r.vscodeWindowId,l),a.add(_e(()=>{o.delete(r.vscodeWindowId),i.fire(r)})),a.add(U(r,ee.BEFORE_UNLOAD,()=>{n.fire(r)})),t.fire(l),a},getWindows(){return o.values()},getWindowsCount(){return o.size},getWindowId(r){return r.vscodeWindowId},hasWindow(r){return o.has(r)},getWindowById:s,getWindow(r){const a=r;if(a?.ownerDocument?.defaultView)return a.ownerDocument.defaultView.window;const l=r;return l?.view?l.view.window:_t},getDocument(r){return fe(r).document}}})();function xn(o){for(;o.firstChild;)o.firstChild.remove()}class fV{constructor(e,t,i,n){this._node=e,this._type=t,this._handler=i,this._options=n||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}}function U(o,e,t,i){return new fV(o,e,t,i)}function RF(o,e){return function(t){return e(new ur(o,t))}}function gV(o){return function(e){return o(new Nt(e))}}const jt=function(e,t,i,n){let s=i;return t==="click"||t==="mousedown"||t==="contextmenu"?s=RF(fe(e),i):(t==="keydown"||t==="keypress"||t==="keyup")&&(s=gV(i)),U(e,t,s,n)},mV=function(e,t,i){const n=RF(fe(e),t);return pV(e,n,i)};function pV(o,e,t){return U(o,Tc&&KN.pointerEvents?ee.POINTER_DOWN:ee.MOUSE_DOWN,e,t)}function kb(o,e,t){return qm(o,e,t)}class nS extends yF{constructor(e,t){super(e,t)}}let pC,fs;class QN extends jN{constructor(e){super(),this.defaultTarget=e&&fe(e)}cancelAndSet(e,t,i){return super.cancelAndSet(e,t,i??this.defaultTarget)}}class sS{constructor(e,t=0){this._runner=e,this.priority=t,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(e){Ze(e)}}static sort(e,t){return t.priority-e.priority}}(function(){const o=new Map,e=new Map,t=new Map,i=new Map,n=s=>{t.set(s,!1);const r=o.get(s)??[];for(e.set(s,r),o.set(s,[]),i.set(s,!0);r.length>0;)r.sort(sS.sort),r.shift().execute();i.set(s,!1)};fs=(s,r,a=0)=>{const l=mC(s),c=new sS(r,a);let d=o.get(l);return d||(d=[],o.set(l,d)),d.push(c),t.get(l)||(t.set(l,!0),s.requestAnimationFrame(()=>n(l))),c},pC=(s,r,a)=>{const l=mC(s);if(i.get(l)){const c=new sS(r,a);let d=e.get(l);return d||(d=[],e.set(l,d)),d.push(c),c}else return fs(s,r,a)}})();function XN(o){return fe(o).getComputedStyle(o,null)}function Ah(o,e){const t=fe(o),i=t.document;if(o!==i.body)return new rt(o.clientWidth,o.clientHeight);if(Tc&&t?.visualViewport)return new rt(t.visualViewport.width,t.visualViewport.height);if(t?.innerWidth&&t.innerHeight)return new rt(t.innerWidth,t.innerHeight);if(i.body&&i.body.clientWidth&&i.body.clientHeight)return new rt(i.body.clientWidth,i.body.clientHeight);if(i.documentElement&&i.documentElement.clientWidth&&i.documentElement.clientHeight)return new rt(i.documentElement.clientWidth,i.documentElement.clientHeight);throw new Error("Unable to figure out browser width and height")}class Yt{static convertToPixels(e,t){return parseFloat(t)||0}static getDimension(e,t,i){const n=XN(e),s=n?n.getPropertyValue(t):"0";return Yt.convertToPixels(e,s)}static getBorderLeftWidth(e){return Yt.getDimension(e,"border-left-width","borderLeftWidth")}static getBorderRightWidth(e){return Yt.getDimension(e,"border-right-width","borderRightWidth")}static getBorderTopWidth(e){return Yt.getDimension(e,"border-top-width","borderTopWidth")}static getBorderBottomWidth(e){return Yt.getDimension(e,"border-bottom-width","borderBottomWidth")}static getPaddingLeft(e){return Yt.getDimension(e,"padding-left","paddingLeft")}static getPaddingRight(e){return Yt.getDimension(e,"padding-right","paddingRight")}static getPaddingTop(e){return Yt.getDimension(e,"padding-top","paddingTop")}static getPaddingBottom(e){return Yt.getDimension(e,"padding-bottom","paddingBottom")}static getMarginLeft(e){return Yt.getDimension(e,"margin-left","marginLeft")}static getMarginTop(e){return Yt.getDimension(e,"margin-top","marginTop")}static getMarginRight(e){return Yt.getDimension(e,"margin-right","marginRight")}static getMarginBottom(e){return Yt.getDimension(e,"margin-bottom","marginBottom")}}const Ad=class Ad{constructor(e,t){this.width=e,this.height=t}with(e=this.width,t=this.height){return e!==this.width||t!==this.height?new Ad(e,t):this}static is(e){return typeof e=="object"&&typeof e.height=="number"&&typeof e.width=="number"}static lift(e){return e instanceof Ad?e:new Ad(e.width,e.height)}static equals(e,t){return e===t?!0:!e||!t?!1:e.width===t.width&&e.height===t.height}};Ad.None=new Ad(0,0);let rt=Ad;function _V(o){let e=o.offsetParent,t=o.offsetTop,i=o.offsetLeft;for(;(o=o.parentNode)!==null&&o!==o.ownerDocument.body&&o!==o.ownerDocument.documentElement;){t-=o.scrollTop;const n=PF(o)?null:XN(o);n&&(i-=n.direction!=="rtl"?o.scrollLeft:-o.scrollLeft),o===e&&(i+=Yt.getBorderLeftWidth(o),t+=Yt.getBorderTopWidth(o),t+=o.offsetTop,i+=o.offsetLeft,e=o.offsetParent)}return{left:i,top:t}}function bV(o,e,t){typeof e=="number"&&(o.style.width=`${e}px`),typeof t=="number"&&(o.style.height=`${t}px`)}function gi(o){const e=o.getBoundingClientRect(),t=fe(o);return{left:e.left+t.scrollX,top:e.top+t.scrollY,width:e.width,height:e.height}}function AF(o){let e=o,t=1;do{const i=XN(e).zoom;i!=null&&i!=="1"&&(t*=i),e=e.parentElement}while(e!==null&&e!==e.ownerDocument.documentElement);return t}function qp(o){const e=Yt.getMarginLeft(o)+Yt.getMarginRight(o);return o.offsetWidth+e}function oS(o){const e=Yt.getBorderLeftWidth(o)+Yt.getBorderRightWidth(o),t=Yt.getPaddingLeft(o)+Yt.getPaddingRight(o);return o.offsetWidth-e-t}function CV(o){const e=Yt.getBorderTopWidth(o)+Yt.getBorderBottomWidth(o),t=Yt.getPaddingTop(o)+Yt.getPaddingBottom(o);return o.offsetHeight-e-t}function Hd(o){const e=Yt.getMarginTop(o)+Yt.getMarginBottom(o);return o.offsetHeight+e}function yi(o,e){return!!e?.contains(o)}function vV(o,e,t){for(;o&&o.nodeType===o.ELEMENT_NODE;){if(o.classList.contains(e))return o;if(t){if(typeof t=="string"){if(o.classList.contains(t))return null}else if(o===t)return null}o=o.parentNode}return null}function rS(o,e,t){return!!vV(o,e,t)}function PF(o){return o&&!!o.host&&!!o.mode}function _C(o){return!!ag(o)}function ag(o){for(;o.parentNode;){if(o===o.ownerDocument?.body)return null;o=o.parentNode}return PF(o)?o:null}function Xi(){let o=JN().activeElement;for(;o?.shadowRoot;)o=o.shadowRoot.activeElement;return o}function M0(o){return Xi()===o}function OF(o){return yi(Xi(),o)}function JN(){return dV()<=1?_t.document:Array.from(MF()).map(({window:e})=>e.document).find(e=>e.hasFocus())??_t.document}function km(){return JN().defaultView?.window??_t}const eT=new Map;function wV(){return new yV}class yV{constructor(){this._currentCssStyle="",this._styleSheet=void 0}setStyle(e){e!==this._currentCssStyle&&(this._currentCssStyle=e,this._styleSheet?this._styleSheet.innerText=e:this._styleSheet=Vs(_t.document.head,t=>t.innerText=e))}dispose(){this._styleSheet&&(this._styleSheet.remove(),this._styleSheet=void 0)}}function Vs(o=_t.document.head,e,t){const i=document.createElement("style");if(i.type="text/css",i.media="screen",e?.(i),o.appendChild(i),t&&t.add(_e(()=>i.remove())),o===_t.document.head){const n=new Set;eT.set(i,n);for(const{window:s,disposables:r}of MF()){if(s===_t)continue;const a=r.add(SV(i,n,s));t?.add(a)}}return i}function SV(o,e,t){const i=new X,n=o.cloneNode(!0);t.document.head.appendChild(n),i.add(_e(()=>n.remove()));for(const s of BF(o))n.sheet?.insertRule(s.cssText,n.sheet?.cssRules.length);return i.add(LV.observe(o,i,{childList:!0})(()=>{n.textContent=o.textContent})),e.add(n),i.add(_e(()=>e.delete(n))),i}const LV=new class{constructor(){this.mutationObservers=new Map}observe(o,e,t){let i=this.mutationObservers.get(o);i||(i=new Map,this.mutationObservers.set(o,i));const n=ZN(t);let s=i.get(n);if(s)s.users+=1;else{const r=new A,a=new MutationObserver(c=>r.fire(c));a.observe(o,t);const l=s={users:1,observer:a,onDidMutate:r.event};e.add(_e(()=>{l.users-=1,l.users===0&&(r.dispose(),a.disconnect(),i?.delete(n),i?.size===0&&this.mutationObservers.delete(o))})),i.set(n,s)}return s.onDidMutate}};let aS=null;function FF(){return aS||(aS=Vs()),aS}function BF(o){return o?.sheet?.rules?o.sheet.rules:o?.sheet?.cssRules?o.sheet.cssRules:[]}function bC(o,e,t=FF()){if(!(!t||!e)){t.sheet?.insertRule(`${o} {${e}}`,0);for(const i of eT.get(t)??[])bC(o,e,i)}}function jx(o,e=FF()){if(!e)return;const t=BF(e),i=[];for(let n=0;n=0;n--)e.sheet?.deleteRule(i[n]);for(const n of eT.get(e)??[])jx(o,n)}function xV(o){return typeof o.selectorText=="string"}function Ei(o){return o instanceof HTMLElement||o instanceof fe(o).HTMLElement}function uR(o){return o instanceof HTMLAnchorElement||o instanceof fe(o).HTMLAnchorElement}function kV(o){return o instanceof SVGElement||o instanceof fe(o).SVGElement}function tT(o){return o instanceof MouseEvent||o instanceof fe(o).MouseEvent}function Qa(o){return o instanceof KeyboardEvent||o instanceof fe(o).KeyboardEvent}const ee={CLICK:"click",AUXCLICK:"auxclick",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",POINTER_LEAVE:"pointerleave",CONTEXT_MENU:"contextmenu",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",CHANGE:"change",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",DRAG_START:"dragstart",DRAG:"drag",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend"};function DV(o){const e=o;return!!(e&&typeof e.preventDefault=="function"&&typeof e.stopPropagation=="function")}const je={stop:(o,e)=>(o.preventDefault(),e&&o.stopPropagation(),o)};function IV(o){const e=[];for(let t=0;o&&o.nodeType===o.ELEMENT_NODE;t++)e[t]=o.scrollTop,o=o.parentNode;return e}function EV(o,e){for(let t=0;o&&o.nodeType===o.ELEMENT_NODE;t++)o.scrollTop!==e[t]&&(o.scrollTop=e[t]),o=o.parentNode}class CC extends z{static hasFocusWithin(e){if(Ei(e)){const t=ag(e),i=t?t.activeElement:e.ownerDocument.activeElement;return yi(i,e)}else{const t=e;return yi(t.document.activeElement,t.document)}}constructor(e){super(),this._onDidFocus=this._register(new A),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new A),this.onDidBlur=this._onDidBlur.event;let t=CC.hasFocusWithin(e),i=!1;const n=()=>{i=!1,t||(t=!0,this._onDidFocus.fire())},s=()=>{t&&(i=!0,(Ei(e)?fe(e):e).setTimeout(()=>{i&&(i=!1,t=!1,this._onDidBlur.fire())},0))};this._refreshStateHandler=()=>{CC.hasFocusWithin(e)!==t&&(t?s():n())},this._register(U(e,ee.FOCUS,n,!0)),this._register(U(e,ee.BLUR,s,!0)),Ei(e)&&(this._register(U(e,ee.FOCUS_IN,()=>this._refreshStateHandler())),this._register(U(e,ee.FOCUS_OUT,()=>this._refreshStateHandler())))}}function Ph(o){return new CC(o)}function NV(o,e){return o.after(e),e}function Z(o,...e){if(o.append(...e),e.length===1&&typeof e[0]!="string")return e[0]}function iT(o,e){return o.insertBefore(e,o.firstChild),e}function un(o,...e){o.innerText="",Z(o,...e)}const TV=/([\w\-]+)?(#([\w\-]+))?((\.([\w\-]+))*)/;var Gp;(function(o){o.HTML="http://www.w3.org/1999/xhtml",o.SVG="http://www.w3.org/2000/svg"})(Gp||(Gp={}));function WF(o,e,t,...i){const n=TV.exec(e);if(!n)throw new Error("Bad use of emmet");const s=n[1]||"div";let r;return o!==Gp.HTML?r=document.createElementNS(o,s):r=document.createElement(s),n[3]&&(r.id=n[3]),n[4]&&(r.className=n[4].replace(/\./g," ").trim()),t&&Object.entries(t).forEach(([a,l])=>{typeof l>"u"||(/^on\w+$/.test(a)?r[a]=l:a==="selected"?l&&r.setAttribute(a,"true"):r.setAttribute(a,l))}),r.append(...i),r}function ce(o,e,...t){return WF(Gp.HTML,o,e,...t)}ce.SVG=function(o,e,...t){return WF(Gp.SVG,o,e,...t)};function MV(o,...e){o?ns(...e):Cn(...e)}function ns(...o){for(const e of o)e.style.display="",e.removeAttribute("aria-hidden")}function Cn(...o){for(const e of o)e.style.display="none",e.setAttribute("aria-hidden","true")}function fR(o,e){const t=o.devicePixelRatio*e;return Math.max(1,Math.floor(t))/o.devicePixelRatio}function HF(o){_t.open(o,"_blank","noopener")}function RV(o,e){const t=()=>{e(),i=fs(o,t)};let i=fs(o,t);return _e(()=>i.dispose())}TF.setPreferredWebSchema(/^https:/.test(_t.location.href)?"https":"http");function Dl(o){return o?`url('${E0.uriToBrowserUri(o).toString(!0).replace(/'/g,"%27")}')`:"url('')"}function lS(o){return`'${o.replace(/'/g,"%27")}'`}function vl(o,e){if(o!==void 0){const t=o.match(/^\s*var\((.+)\)$/);if(t){const i=t[1].split(",",2);return i.length===2&&(e=vl(i[1].trim(),e)),`var(${i[0]}, ${e})`}return o}return e}function AV(o,e=!1){const t=document.createElement("a");return EF("afterSanitizeAttributes",i=>{for(const n of["href","src"])if(i.hasAttribute(n)){const s=i.getAttribute(n);if(n==="href"&&s.startsWith("#"))continue;if(t.href=s,!o.includes(t.protocol.replace(/:$/,""))){if(e&&n==="src"&&t.href.startsWith("data:"))continue;i.removeAttribute(n)}}}),_e(()=>{NF("afterSanitizeAttributes")})}const PV=Object.freeze(["a","abbr","b","bdo","blockquote","br","caption","cite","code","col","colgroup","dd","del","details","dfn","div","dl","dt","em","figcaption","figure","h1","h2","h3","h4","h5","h6","hr","i","img","input","ins","kbd","label","li","mark","ol","p","pre","q","rp","rt","ruby","samp","small","small","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","time","tr","tt","u","ul","var","video","wbr"]);class rl extends A{constructor(){super(),this._subscriptions=new X,this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1},this._subscriptions.add(J.runAndSubscribe(T0,({window:e,disposables:t})=>this.registerListeners(e,t),{window:_t,disposables:this._subscriptions}))}registerListeners(e,t){t.add(U(e,"keydown",i=>{if(i.defaultPrevented)return;const n=new Nt(i);if(!(n.keyCode===6&&i.repeat)){if(i.altKey&&!this._keyStatus.altKey)this._keyStatus.lastKeyPressed="alt";else if(i.ctrlKey&&!this._keyStatus.ctrlKey)this._keyStatus.lastKeyPressed="ctrl";else if(i.metaKey&&!this._keyStatus.metaKey)this._keyStatus.lastKeyPressed="meta";else if(i.shiftKey&&!this._keyStatus.shiftKey)this._keyStatus.lastKeyPressed="shift";else if(n.keyCode!==6)this._keyStatus.lastKeyPressed=void 0;else return;this._keyStatus.altKey=i.altKey,this._keyStatus.ctrlKey=i.ctrlKey,this._keyStatus.metaKey=i.metaKey,this._keyStatus.shiftKey=i.shiftKey,this._keyStatus.lastKeyPressed&&(this._keyStatus.event=i,this.fire(this._keyStatus))}},!0)),t.add(U(e,"keyup",i=>{i.defaultPrevented||(!i.altKey&&this._keyStatus.altKey?this._keyStatus.lastKeyReleased="alt":!i.ctrlKey&&this._keyStatus.ctrlKey?this._keyStatus.lastKeyReleased="ctrl":!i.metaKey&&this._keyStatus.metaKey?this._keyStatus.lastKeyReleased="meta":!i.shiftKey&&this._keyStatus.shiftKey?this._keyStatus.lastKeyReleased="shift":this._keyStatus.lastKeyReleased=void 0,this._keyStatus.lastKeyPressed!==this._keyStatus.lastKeyReleased&&(this._keyStatus.lastKeyPressed=void 0),this._keyStatus.altKey=i.altKey,this._keyStatus.ctrlKey=i.ctrlKey,this._keyStatus.metaKey=i.metaKey,this._keyStatus.shiftKey=i.shiftKey,this._keyStatus.lastKeyReleased&&(this._keyStatus.event=i,this.fire(this._keyStatus)))},!0)),t.add(U(e.document.body,"mousedown",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),t.add(U(e.document.body,"mouseup",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),t.add(U(e.document.body,"mousemove",i=>{i.buttons&&(this._keyStatus.lastKeyPressed=void 0)},!0)),t.add(U(e,"blur",()=>{this.resetKeyStatus()}))}get keyStatus(){return this._keyStatus}resetKeyStatus(){this.doResetKeyStatus(),this.fire(this._keyStatus)}doResetKeyStatus(){this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1}}static getInstance(){return rl.instance||(rl.instance=new rl),rl.instance}dispose(){super.dispose(),this._subscriptions.dispose()}}class OV extends z{constructor(e,t){super(),this.element=e,this.callbacks=t,this.counter=0,this.dragStartTime=0,this.registerListeners()}registerListeners(){this.callbacks.onDragStart&&this._register(U(this.element,ee.DRAG_START,e=>{this.callbacks.onDragStart?.(e)})),this.callbacks.onDrag&&this._register(U(this.element,ee.DRAG,e=>{this.callbacks.onDrag?.(e)})),this._register(U(this.element,ee.DRAG_ENTER,e=>{this.counter++,this.dragStartTime=e.timeStamp,this.callbacks.onDragEnter?.(e)})),this._register(U(this.element,ee.DRAG_OVER,e=>{e.preventDefault(),this.callbacks.onDragOver?.(e,e.timeStamp-this.dragStartTime)})),this._register(U(this.element,ee.DRAG_LEAVE,e=>{this.counter--,this.counter===0&&(this.dragStartTime=0,this.callbacks.onDragLeave?.(e))})),this._register(U(this.element,ee.DRAG_END,e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDragEnd?.(e)})),this._register(U(this.element,ee.DROP,e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDrop?.(e)}))}}const FV=/(?[\w\-]+)?(?:#(?[\w\-]+))?(?(?:\.(?:[\w\-]+))*)(?:@(?(?:[\w\_])+))?/;function tt(o,...e){let t,i;Array.isArray(e[0])?(t={},i=e[0]):(t=e[0]||{},i=e[1]);const n=FV.exec(o);if(!n||!n.groups)throw new Error("Bad use of h");const s=n.groups.tag||"div",r=document.createElement(s);n.groups.id&&(r.id=n.groups.id);const a=[];if(n.groups.class)for(const c of n.groups.class.split("."))c!==""&&a.push(c);if(t.className!==void 0)for(const c of t.className.split("."))c!==""&&a.push(c);a.length>0&&(r.className=a.join(" "));const l={};if(n.groups.name&&(l[n.groups.name]=r),i)for(const c of i)Ei(c)?r.appendChild(c):typeof c=="string"?r.append(c):"root"in c&&(Object.assign(l,c),r.appendChild(c.root));for(const[c,d]of Object.entries(t))if(c!=="className")if(c==="style")for(const[h,u]of Object.entries(d))r.style.setProperty(gR(h),typeof u=="number"?u+"px":""+u);else c==="tabIndex"?r.tabIndex=d:r.setAttribute(gR(c),d.toString());return l.root=r,l}function gR(o){return o.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}class BV extends z{constructor(e){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._listener=()=>this._handleChange(e,!0),this._mediaQueryList=null,this._handleChange(e,!1)}_handleChange(e,t){this._mediaQueryList?.removeEventListener("change",this._listener),this._mediaQueryList=e.matchMedia(`(resolution: ${e.devicePixelRatio}dppx)`),this._mediaQueryList.addEventListener("change",this._listener),t&&this._onDidChange.fire()}}class WV extends z{get value(){return this._value}constructor(e){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._value=this._getPixelRatio(e);const t=this._register(new BV(e));this._register(t.onDidChange(()=>{this._value=this._getPixelRatio(e),this._onDidChange.fire(this._value)}))}_getPixelRatio(e){const t=document.createElement("canvas").getContext("2d"),i=e.devicePixelRatio||1,n=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return i/n}}class HV{constructor(){this.mapWindowIdToPixelRatioMonitor=new Map}_getOrCreatePixelRatioMonitor(e){const t=mC(e);let i=this.mapWindowIdToPixelRatioMonitor.get(t);return i||(i=new WV(e),this.mapWindowIdToPixelRatioMonitor.set(t,i),J.once(uV)(({vscodeWindowId:n})=>{n===t&&(i?.dispose(),this.mapWindowIdToPixelRatioMonitor.delete(t))})),i}getInstance(e){return this._getOrCreatePixelRatioMonitor(e)}}const Zp=new HV;class VF{constructor(e){this.domNode=e,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingLeft="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(e){const t=Ko(e);this._maxWidth!==t&&(this._maxWidth=t,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){const t=Ko(e);this._width!==t&&(this._width=t,this.domNode.style.width=this._width)}setHeight(e){const t=Ko(e);this._height!==t&&(this._height=t,this.domNode.style.height=this._height)}setTop(e){const t=Ko(e);this._top!==t&&(this._top=t,this.domNode.style.top=this._top)}setLeft(e){const t=Ko(e);this._left!==t&&(this._left=t,this.domNode.style.left=this._left)}setBottom(e){const t=Ko(e);this._bottom!==t&&(this._bottom=t,this.domNode.style.bottom=this._bottom)}setRight(e){const t=Ko(e);this._right!==t&&(this._right=t,this.domNode.style.right=this._right)}setPaddingLeft(e){const t=Ko(e);this._paddingLeft!==t&&(this._paddingLeft=t,this.domNode.style.paddingLeft=this._paddingLeft)}setFontFamily(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(e){const t=Ko(e);this._fontSize!==t&&(this._fontSize=t,this.domNode.style.fontSize=this._fontSize)}setFontStyle(e){this._fontStyle!==e&&(this._fontStyle=e,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(e){this._fontVariationSettings!==e&&(this._fontVariationSettings=e,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(e){this._textDecoration!==e&&(this._textDecoration=e,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(e){const t=Ko(e);this._lineHeight!==t&&(this._lineHeight=t,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){const t=Ko(e);this._letterSpacing!==t&&(this._letterSpacing=t,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)}toggleClassName(e,t){this.domNode.classList.toggle(e,t),this._className=this.domNode.className}setDisplay(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)}setPosition(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)}setColor(e){this._color!==e&&(this._color=e,this.domNode.style.color=this._color)}setBackgroundColor(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(e){this._boxShadow!==e&&(this._boxShadow=e,this.domNode.style.boxShadow=e)}setContain(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)}setAttribute(e,t){this.domNode.setAttribute(e,t)}removeAttribute(e){this.domNode.removeAttribute(e)}appendChild(e){this.domNode.appendChild(e.domNode)}removeChild(e){this.domNode.removeChild(e.domNode)}}function Ko(o){return typeof o=="number"?`${o}px`:o}function ot(o){return new VF(o)}function qi(o,e){o instanceof VF?(o.setFontFamily(e.getMassagedFontFamily()),o.setFontWeight(e.fontWeight),o.setFontSize(e.fontSize),o.setFontFeatureSettings(e.fontFeatureSettings),o.setFontVariationSettings(e.fontVariationSettings),o.setLineHeight(e.lineHeight),o.setLetterSpacing(e.letterSpacing)):(o.style.fontFamily=e.getMassagedFontFamily(),o.style.fontWeight=e.fontWeight,o.style.fontSize=e.fontSize+"px",o.style.fontFeatureSettings=e.fontFeatureSettings,o.style.fontVariationSettings=e.fontVariationSettings,o.style.lineHeight=e.lineHeight+"px",o.style.letterSpacing=e.letterSpacing+"px")}class VV{constructor(e,t){this.chr=e,this.type=t,this.width=0}fulfill(e){this.width=e}}class nT{constructor(e,t){this._bareFontInfo=e,this._requests=t,this._container=null,this._testElements=null}read(e){this._createDomElements(),e.document.body.appendChild(this._container),this._readFromDomElements(),this._container?.remove(),this._container=null,this._testElements=null}_createDomElements(){const e=document.createElement("div");e.style.position="absolute",e.style.top="-50000px",e.style.width="50000px";const t=document.createElement("div");qi(t,this._bareFontInfo),e.appendChild(t);const i=document.createElement("div");qi(i,this._bareFontInfo),i.style.fontWeight="bold",e.appendChild(i);const n=document.createElement("div");qi(n,this._bareFontInfo),n.style.fontStyle="italic",e.appendChild(n);const s=[];for(const r of this._requests){let a;r.type===0&&(a=t),r.type===2&&(a=i),r.type===1&&(a=n),a.appendChild(document.createElement("br"));const l=document.createElement("span");nT._render(l,r),a.appendChild(l),s.push(l)}this._container=e,this._testElements=s}static _render(e,t){if(t.chr===" "){let i=" ";for(let n=0;n<8;n++)i+=i;e.innerText=i}else{let i=t.chr;for(let n=0;n<8;n++)i+=i;e.textContent=i}}_readFromDomElements(){for(let e=0,t=this._requests.length;e{this._evictUntrustedReadingsTimeout=-1,this._evictUntrustedReadings(e)},5e3))}_evictUntrustedReadings(e){const t=this._ensureCache(e),i=t.getValues();let n=!1;for(const s of i)s.isTrusted||(n=!0,t.remove(s));n&&this._onDidChange.fire()}readFontInfo(e,t){const i=this._ensureCache(e);if(!i.has(t)){let n=this._actualReadFontInfo(e,t);(n.typicalHalfwidthCharacterWidth<=2||n.typicalFullwidthCharacterWidth<=2||n.spaceWidth<=2||n.maxDigitWidth<=2)&&(n=new qx({pixelRatio:Zp.getInstance(e).value,fontFamily:n.fontFamily,fontWeight:n.fontWeight,fontSize:n.fontSize,fontFeatureSettings:n.fontFeatureSettings,fontVariationSettings:n.fontVariationSettings,lineHeight:n.lineHeight,letterSpacing:n.letterSpacing,isMonospace:n.isMonospace,typicalHalfwidthCharacterWidth:Math.max(n.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(n.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:n.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(n.spaceWidth,5),middotWidth:Math.max(n.middotWidth,5),wsmiddotWidth:Math.max(n.wsmiddotWidth,5),maxDigitWidth:Math.max(n.maxDigitWidth,5)},!1)),this._writeToCache(e,t,n)}return i.get(t)}_createRequest(e,t,i,n){const s=new VV(e,t);return i.push(s),n?.push(s),s}_actualReadFontInfo(e,t){const i=[],n=[],s=this._createRequest("n",0,i,n),r=this._createRequest("m",0,i,null),a=this._createRequest(" ",0,i,n),l=this._createRequest("0",0,i,n),c=this._createRequest("1",0,i,n),d=this._createRequest("2",0,i,n),h=this._createRequest("3",0,i,n),u=this._createRequest("4",0,i,n),f=this._createRequest("5",0,i,n),g=this._createRequest("6",0,i,n),p=this._createRequest("7",0,i,n),_=this._createRequest("8",0,i,n),b=this._createRequest("9",0,i,n),C=this._createRequest("→",0,i,n),w=this._createRequest("→",0,i,null),v=this._createRequest("·",0,i,n),y=this._createRequest("⸱",0,i,null),x="|/-_ilm%";for(let F=0,W=x.length;F.001){E=!1;break}}let H=!0;return E&&w.width!==N&&(H=!1),w.width>C.width&&(H=!1),new qx({pixelRatio:Zp.getInstance(e).value,fontFamily:t.fontFamily,fontWeight:t.fontWeight,fontSize:t.fontSize,fontFeatureSettings:t.fontFeatureSettings,fontVariationSettings:t.fontVariationSettings,lineHeight:t.lineHeight,letterSpacing:t.letterSpacing,isMonospace:E,typicalHalfwidthCharacterWidth:s.width,typicalFullwidthCharacterWidth:r.width,canUseHalfwidthRightwardsArrow:H,spaceWidth:a.width,middotWidth:v.width,wsmiddotWidth:y.width,maxDigitWidth:L},!0)}}class jV{constructor(){this._keys=Object.create(null),this._values=Object.create(null)}has(e){const t=e.getId();return!!this._values[t]}get(e){const t=e.getId();return this._values[t]}put(e,t){const i=e.getId();this._keys[i]=e,this._values[i]=t}remove(e){const t=e.getId();delete this._keys[t],delete this._values[t]}getValues(){return Object.keys(this._keys).map(e=>this._values[e])}}const Gx=new KV;var fr;(function(o){o.serviceIds=new Map,o.DI_TARGET="$di$target",o.DI_DEPENDENCIES="$di$dependencies";function e(t){return t[o.DI_DEPENDENCIES]||[]}o.getServiceDependencies=e})(fr||(fr={}));const ke=He("instantiationService");function qV(o,e,t){e[fr.DI_TARGET]===e?e[fr.DI_DEPENDENCIES].push({id:o,index:t}):(e[fr.DI_DEPENDENCIES]=[{id:o,index:t}],e[fr.DI_TARGET]=e)}function He(o){if(fr.serviceIds.has(o))return fr.serviceIds.get(o);const e=function(t,i,n){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");qV(e,t,n)};return e.toString=()=>o,fr.serviceIds.set(o,e),e}const Pt=He("codeEditorService"),Fi=He("modelService"),fo=He("textModelService");class Fs extends z{constructor(e,t="",i="",n=!0,s){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._enabled=!0,this._id=e,this._label=t,this._cssClass=i,this._enabled=n,this._actionCallback=s}get id(){return this._id}get label(){return this._label}set label(e){this._setLabel(e)}_setLabel(e){this._label!==e&&(this._label=e,this._onDidChange.fire({label:e}))}get tooltip(){return this._tooltip||""}set tooltip(e){this._setTooltip(e)}_setTooltip(e){this._tooltip!==e&&(this._tooltip=e,this._onDidChange.fire({tooltip:e}))}get class(){return this._cssClass}set class(e){this._setClass(e)}_setClass(e){this._cssClass!==e&&(this._cssClass=e,this._onDidChange.fire({class:e}))}get enabled(){return this._enabled}set enabled(e){this._setEnabled(e)}_setEnabled(e){this._enabled!==e&&(this._enabled=e,this._onDidChange.fire({enabled:e}))}get checked(){return this._checked}set checked(e){this._setChecked(e)}_setChecked(e){this._checked!==e&&(this._checked=e,this._onDidChange.fire({checked:e}))}async run(e,t){this._actionCallback&&await this._actionCallback(e)}}class Oh extends z{constructor(){super(...arguments),this._onWillRun=this._register(new A),this.onWillRun=this._onWillRun.event,this._onDidRun=this._register(new A),this.onDidRun=this._onDidRun.event}async run(e,t){if(!e.enabled)return;this._onWillRun.fire({action:e});let i;try{await this.runAction(e,t)}catch(n){i=n}this._onDidRun.fire({action:e,error:i})}async runAction(e,t){await e.run(t)}}const xp=class xp{constructor(){this.id=xp.ID,this.label="",this.tooltip="",this.class="separator",this.enabled=!1,this.checked=!1}static join(...e){let t=[];for(const i of e)i.length&&(t.length?t=[...t,new xp,...i]:t=i);return t}async run(){}};xp.ID="vs.actions.separator";let Gi=xp;class R0{get actions(){return this._actions}constructor(e,t,i,n){this.tooltip="",this.enabled=!0,this.checked=void 0,this.id=e,this.label=t,this.class=n,this._actions=i}async run(){}}const yw=class yw extends Fs{constructor(){super(yw.ID,m("submenu.empty","(empty)"),void 0,!1)}};yw.ID="vs.actions.empty";let Zx=yw;function Mf(o){return{id:o.id,label:o.label,tooltip:o.tooltip??o.label,class:o.class,enabled:o.enabled??!0,checked:o.checked,run:async(...e)=>o.run(...e)}}var Yx;(function(o){function e(t){return t&&typeof t=="object"&&typeof t.id=="string"}o.isThemeColor=e})(Yx||(Yx={}));var Ee;(function(o){o.iconNameSegment="[A-Za-z0-9]+",o.iconNameExpression="[A-Za-z0-9-]+",o.iconModifierExpression="~[A-Za-z]+",o.iconNameCharacter="[A-Za-z0-9~-]";const e=new RegExp(`^(${o.iconNameExpression})(${o.iconModifierExpression})?$`);function t(u){const f=e.exec(u.id);if(!f)return t(ie.error);const[,g,p]=f,_=["codicon","codicon-"+g];return p&&_.push("codicon-modifier-"+p.substring(1)),_}o.asClassNameArray=t;function i(u){return t(u).join(" ")}o.asClassName=i;function n(u){return"."+t(u).join(".")}o.asCSSSelector=n;function s(u){return u&&typeof u=="object"&&typeof u.id=="string"&&(typeof u.color>"u"||Yx.isThemeColor(u.color))}o.isThemeIcon=s;const r=new RegExp(`^\\$\\((${o.iconNameExpression}(?:${o.iconModifierExpression})?)\\)$`);function a(u){const f=r.exec(u);if(!f)return;const[,g]=f;return{id:g}}o.fromString=a;function l(u){return{id:u}}o.fromId=l;function c(u,f){let g=u.id;const p=g.lastIndexOf("~");return p!==-1&&(g=g.substring(0,p)),f&&(g=`${g}~${f}`),{id:g}}o.modify=c;function d(u){const f=u.id.lastIndexOf("~");if(f!==-1)return u.id.substring(f+1)}o.getModifier=d;function h(u,f){return u.id===f.id&&u.color?.id===f.color?.id}o.isEqual=h})(Ee||(Ee={}));const hi=He("commandService"),bt=new class{constructor(){this._commands=new Map,this._onDidRegisterCommand=new A,this.onDidRegisterCommand=this._onDidRegisterCommand.event}registerCommand(o,e){if(!o)throw new Error("invalid command");if(typeof o=="string"){if(!e)throw new Error("invalid command");return this.registerCommand({id:o,handler:e})}if(o.metadata&&Array.isArray(o.metadata.args)){const r=[];for(const l of o.metadata.args)r.push(l.constraint);const a=o.handler;o.handler=function(l,...c){return a6(c,r),a(l,...c)}}const{id:t}=o;let i=this._commands.get(t);i||(i=new yn,this._commands.set(t,i));const n=i.unshift(o),s=_e(()=>{n(),this._commands.get(t)?.isEmpty()&&this._commands.delete(t)});return this._onDidRegisterCommand.fire(t),s}registerCommandAlias(o,e){return bt.registerCommand(o,(t,...i)=>t.get(hi).executeCommand(e,...i))}getCommand(o){const e=this._commands.get(o);if(!(!e||e.isEmpty()))return st.first(e)}getCommands(){const o=new Map;for(const e of this._commands.keys()){const t=this.getCommand(e);t&&o.set(e,t)}return o}};bt.registerCommand("noop",()=>{});function dS(...o){switch(o.length){case 1:return m("contextkey.scanner.hint.didYouMean1","Did you mean {0}?",o[0]);case 2:return m("contextkey.scanner.hint.didYouMean2","Did you mean {0} or {1}?",o[0],o[1]);case 3:return m("contextkey.scanner.hint.didYouMean3","Did you mean {0}, {1} or {2}?",o[0],o[1],o[2]);default:return}}const GV=m("contextkey.scanner.hint.didYouForgetToOpenOrCloseQuote","Did you forget to open or close the quote?"),ZV=m("contextkey.scanner.hint.didYouForgetToEscapeSlash","Did you forget to escape the '/' (slash) character? Put two backslashes before it to escape, e.g., '\\\\/'.");var fl;let lm=(fl=class{constructor(){this._input="",this._start=0,this._current=0,this._tokens=[],this._errors=[],this.stringRe=/[a-zA-Z0-9_<>\-\./\\:\*\?\+\[\]\^,#@;"%\$\p{L}-]+/uy}static getLexeme(e){switch(e.type){case 0:return"(";case 1:return")";case 2:return"!";case 3:return e.isTripleEq?"===":"==";case 4:return e.isTripleEq?"!==":"!=";case 5:return"<";case 6:return"<=";case 7:return">=";case 8:return">=";case 9:return"=~";case 10:return e.lexeme;case 11:return"true";case 12:return"false";case 13:return"in";case 14:return"not";case 15:return"&&";case 16:return"||";case 17:return e.lexeme;case 18:return e.lexeme;case 19:return e.lexeme;case 20:return"EOF";default:throw TN(`unhandled token type: ${JSON.stringify(e)}; have you forgotten to add a case?`)}}reset(e){return this._input=e,this._start=0,this._current=0,this._tokens=[],this._errors=[],this}scan(){for(;!this._isAtEnd();)switch(this._start=this._current,this._advance()){case 40:this._addToken(0);break;case 41:this._addToken(1);break;case 33:if(this._match(61)){const t=this._match(61);this._tokens.push({type:4,offset:this._start,isTripleEq:t})}else this._addToken(2);break;case 39:this._quotedString();break;case 47:this._regex();break;case 61:if(this._match(61)){const t=this._match(61);this._tokens.push({type:3,offset:this._start,isTripleEq:t})}else this._match(126)?this._addToken(9):this._error(dS("==","=~"));break;case 60:this._addToken(this._match(61)?6:5);break;case 62:this._addToken(this._match(61)?8:7);break;case 38:this._match(38)?this._addToken(15):this._error(dS("&&"));break;case 124:this._match(124)?this._addToken(16):this._error(dS("||"));break;case 32:case 13:case 9:case 10:case 160:break;default:this._string()}return this._start=this._current,this._addToken(20),Array.from(this._tokens)}_match(e){return this._isAtEnd()||this._input.charCodeAt(this._current)!==e?!1:(this._current++,!0)}_advance(){return this._input.charCodeAt(this._current++)}_peek(){return this._isAtEnd()?0:this._input.charCodeAt(this._current)}_addToken(e){this._tokens.push({type:e,offset:this._start})}_error(e){const t=this._start,i=this._input.substring(this._start,this._current),n={type:19,offset:this._start,lexeme:i};this._errors.push({offset:t,lexeme:i,additionalInfo:e}),this._tokens.push(n)}_string(){this.stringRe.lastIndex=this._start;const e=this.stringRe.exec(this._input);if(e){this._current=this._start+e[0].length;const t=this._input.substring(this._start,this._current),i=fl._keywords.get(t);i?this._addToken(i):this._tokens.push({type:17,lexeme:t,offset:this._start})}}_quotedString(){for(;this._peek()!==39&&!this._isAtEnd();)this._advance();if(this._isAtEnd()){this._error(GV);return}this._advance(),this._tokens.push({type:18,lexeme:this._input.substring(this._start+1,this._current-1),offset:this._start+1})}_regex(){let e=this._current,t=!1,i=!1;for(;;){if(e>=this._input.length){this._current=e,this._error(ZV);return}const s=this._input.charCodeAt(e);if(t)t=!1;else if(s===47&&!i){e++;break}else s===91?i=!0:s===92?t=!0:s===93&&(i=!1);e++}for(;e=this._input.length}},fl._regexFlags=new Set(["i","g","s","m","y","u"].map(e=>e.charCodeAt(0))),fl._keywords=new Map([["not",14],["in",13],["false",12],["true",11]]),fl);const Ji=new Map;Ji.set("false",!1);Ji.set("true",!0);Ji.set("isMac",Ue);Ji.set("isLinux",Un);Ji.set("isWindows",kn);Ji.set("isWeb",Og);Ji.set("isMacNative",Ue&&!Og);Ji.set("isEdge",y6);Ji.set("isFirefox",v6);Ji.set("isChrome",U5);Ji.set("isSafari",w6);const YV=Object.prototype.hasOwnProperty,QV={regexParsingWithErrorRecovery:!0},XV=m("contextkey.parser.error.emptyString","Empty context key expression"),JV=m("contextkey.parser.error.emptyString.hint","Did you forget to write an expression? You can also put 'false' or 'true' to always evaluate to false or true, respectively."),ez=m("contextkey.parser.error.noInAfterNot","'in' after 'not'."),mR=m("contextkey.parser.error.closingParenthesis","closing parenthesis ')'"),tz=m("contextkey.parser.error.unexpectedToken","Unexpected token"),iz=m("contextkey.parser.error.unexpectedToken.hint","Did you forget to put && or || before the token?"),nz=m("contextkey.parser.error.unexpectedEOF","Unexpected end of expression"),sz=m("contextkey.parser.error.unexpectedEOF.hint","Did you forget to put a context key?");var Xr;let oz=(Xr=class{constructor(e=QV){this._config=e,this._scanner=new lm,this._tokens=[],this._current=0,this._parsingErrors=[],this._flagsGYRe=/g|y/g}parse(e){if(e===""){this._parsingErrors.push({message:XV,offset:0,lexeme:"",additionalInfo:JV});return}this._tokens=this._scanner.reset(e).scan(),this._current=0,this._parsingErrors=[];try{const t=this._expr();if(!this._isAtEnd()){const i=this._peek(),n=i.type===17?iz:void 0;throw this._parsingErrors.push({message:tz,offset:i.offset,lexeme:lm.getLexeme(i),additionalInfo:n}),Xr._parseError}return t}catch(t){if(t!==Xr._parseError)throw t;return}}_expr(){return this._or()}_or(){const e=[this._and()];for(;this._matchOne(16);){const t=this._and();e.push(t)}return e.length===1?e[0]:re.or(...e)}_and(){const e=[this._term()];for(;this._matchOne(15);){const t=this._term();e.push(t)}return e.length===1?e[0]:re.and(...e)}_term(){if(this._matchOne(2)){const e=this._peek();switch(e.type){case 11:return this._advance(),En.INSTANCE;case 12:return this._advance(),Kn.INSTANCE;case 0:{this._advance();const t=this._expr();return this._consume(1,mR),t?.negate()}case 17:return this._advance(),tu.create(e.lexeme);default:throw this._errExpectedButGot("KEY | true | false | '(' expression ')'",e)}}return this._primary()}_primary(){const e=this._peek();switch(e.type){case 11:return this._advance(),re.true();case 12:return this._advance(),re.false();case 0:{this._advance();const t=this._expr();return this._consume(1,mR),t}case 17:{const t=e.lexeme;if(this._advance(),this._matchOne(9)){const n=this._peek();if(!this._config.regexParsingWithErrorRecovery){if(this._advance(),n.type!==10)throw this._errExpectedButGot("REGEX",n);const s=n.lexeme,r=s.lastIndexOf("/"),a=r===s.length-1?void 0:this._removeFlagsGY(s.substring(r+1));let l;try{l=new RegExp(s.substring(1,r),a)}catch{throw this._errExpectedButGot("REGEX",n)}return Yp.create(t,l)}switch(n.type){case 10:case 19:{const s=[n.lexeme];this._advance();let r=this._peek(),a=0;for(let u=0;u=0){const c=s.slice(a+1,l),d=s[l+1]==="i"?"i":"";try{r=new RegExp(c,d)}catch{throw this._errExpectedButGot("REGEX",n)}}}if(r===null)throw this._errExpectedButGot("REGEX",n);return Yp.create(t,r)}default:throw this._errExpectedButGot("REGEX",this._peek())}}if(this._matchOne(14)){this._consume(13,ez);const n=this._value();return re.notIn(t,n)}switch(this._peek().type){case 3:{this._advance();const n=this._value();if(this._previous().type===18)return re.equals(t,n);switch(n){case"true":return re.has(t);case"false":return re.not(t);default:return re.equals(t,n)}}case 4:{this._advance();const n=this._value();if(this._previous().type===18)return re.notEquals(t,n);switch(n){case"true":return re.not(t);case"false":return re.has(t);default:return re.notEquals(t,n)}}case 5:return this._advance(),H0.create(t,this._value());case 6:return this._advance(),V0.create(t,this._value());case 7:return this._advance(),B0.create(t,this._value());case 8:return this._advance(),W0.create(t,this._value());case 13:return this._advance(),re.in(t,this._value());default:return re.has(t)}}case 20:throw this._parsingErrors.push({message:nz,offset:e.offset,lexeme:"",additionalInfo:sz}),Xr._parseError;default:throw this._errExpectedButGot(`true | false | KEY + | KEY '=~' REGEX + | KEY ('==' | '!=' | '<' | '<=' | '>' | '>=' | 'in' | 'not' 'in') value`,this._peek())}}_value(){const e=this._peek();switch(e.type){case 17:case 18:return this._advance(),e.lexeme;case 11:return this._advance(),"true";case 12:return this._advance(),"false";case 13:return this._advance(),"in";default:return""}}_removeFlagsGY(e){return e.replaceAll(this._flagsGYRe,"")}_previous(){return this._tokens[this._current-1]}_matchOne(e){return this._check(e)?(this._advance(),!0):!1}_advance(){return this._isAtEnd()||this._current++,this._previous()}_consume(e,t){if(this._check(e))return this._advance();throw this._errExpectedButGot(t,this._peek())}_errExpectedButGot(e,t,i){const n=m("contextkey.parser.error.expectedButGot",`Expected: {0} +Received: '{1}'.`,e,lm.getLexeme(t)),s=t.offset,r=lm.getLexeme(t);return this._parsingErrors.push({message:n,offset:s,lexeme:r,additionalInfo:i}),Xr._parseError}_check(e){return this._peek().type===e}_peek(){return this._tokens[this._current]}_isAtEnd(){return this._peek().type===20}},Xr._parseError=new Error,Xr);const DM=class DM{static false(){return En.INSTANCE}static true(){return Kn.INSTANCE}static has(e){return eu.create(e)}static equals(e,t){return U_.create(e,t)}static notEquals(e,t){return O0.create(e,t)}static regex(e,t){return Yp.create(e,t)}static in(e,t){return A0.create(e,t)}static notIn(e,t){return P0.create(e,t)}static not(e){return tu.create(e)}static and(...e){return Vd.create(e,null,!0)}static or(...e){return tl.create(e,null,!0)}static deserialize(e){return e==null?void 0:this._parser.parse(e)}};DM._parser=new oz({regexParsingWithErrorRecovery:!1});let re=DM;function rz(o,e){const t=o?o.substituteConstants():void 0,i=e?e.substituteConstants():void 0;return!t&&!i?!0:!t||!i?!1:t.equals(i)}function Gm(o,e){return o.cmp(e)}const Sw=class Sw{constructor(){this.type=0}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!1}serialize(){return"false"}keys(){return[]}negate(){return Kn.INSTANCE}};Sw.INSTANCE=new Sw;let En=Sw;const Lw=class Lw{constructor(){this.type=1}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!0}serialize(){return"true"}keys(){return[]}negate(){return En.INSTANCE}};Lw.INSTANCE=new Lw;let Kn=Lw;class eu{static create(e,t=null){const i=Ji.get(e);return typeof i=="boolean"?i?Kn.INSTANCE:En.INSTANCE:new eu(e,t)}constructor(e,t){this.key=e,this.negated=t,this.type=2}cmp(e){return e.type!==this.type?this.type-e.type:UF(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=Ji.get(this.key);return typeof e=="boolean"?e?Kn.INSTANCE:En.INSTANCE:this}evaluate(e){return!!e.getValue(this.key)}serialize(){return this.key}keys(){return[this.key]}negate(){return this.negated||(this.negated=tu.create(this.key,this)),this.negated}}class U_{static create(e,t,i=null){if(typeof t=="boolean")return t?eu.create(e,i):tu.create(e,i);const n=Ji.get(e);return typeof n=="boolean"?t===(n?"true":"false")?Kn.INSTANCE:En.INSTANCE:new U_(e,t,i)}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=4}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){const e=Ji.get(this.key);if(typeof e=="boolean"){const t=e?"true":"false";return this.value===t?Kn.INSTANCE:En.INSTANCE}return this}evaluate(e){return e.getValue(this.key)==this.value}serialize(){return`${this.key} == '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=O0.create(this.key,this.value,this)),this.negated}}class A0{static create(e,t){return new A0(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=10,this.negated=null}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.valueKey,e.key,e.valueKey)}equals(e){return e.type===this.type?this.key===e.key&&this.valueKey===e.valueKey:!1}substituteConstants(){return this}evaluate(e){const t=e.getValue(this.valueKey),i=e.getValue(this.key);return Array.isArray(t)?t.includes(i):typeof i=="string"&&typeof t=="object"&&t!==null?YV.call(t,i):!1}serialize(){return`${this.key} in '${this.valueKey}'`}keys(){return[this.key,this.valueKey]}negate(){return this.negated||(this.negated=P0.create(this.key,this.valueKey)),this.negated}}class P0{static create(e,t){return new P0(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=11,this._negated=A0.create(e,t)}cmp(e){return e.type!==this.type?this.type-e.type:this._negated.cmp(e._negated)}equals(e){return e.type===this.type?this._negated.equals(e._negated):!1}substituteConstants(){return this}evaluate(e){return!this._negated.evaluate(e)}serialize(){return`${this.key} not in '${this.valueKey}'`}keys(){return this._negated.keys()}negate(){return this._negated}}class O0{static create(e,t,i=null){if(typeof t=="boolean")return t?tu.create(e,i):eu.create(e,i);const n=Ji.get(e);return typeof n=="boolean"?t===(n?"true":"false")?En.INSTANCE:Kn.INSTANCE:new O0(e,t,i)}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=5}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){const e=Ji.get(this.key);if(typeof e=="boolean"){const t=e?"true":"false";return this.value===t?En.INSTANCE:Kn.INSTANCE}return this}evaluate(e){return e.getValue(this.key)!=this.value}serialize(){return`${this.key} != '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=U_.create(this.key,this.value,this)),this.negated}}class tu{static create(e,t=null){const i=Ji.get(e);return typeof i=="boolean"?i?En.INSTANCE:Kn.INSTANCE:new tu(e,t)}constructor(e,t){this.key=e,this.negated=t,this.type=3}cmp(e){return e.type!==this.type?this.type-e.type:UF(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=Ji.get(this.key);return typeof e=="boolean"?e?En.INSTANCE:Kn.INSTANCE:this}evaluate(e){return!e.getValue(this.key)}serialize(){return`!${this.key}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=eu.create(this.key,this)),this.negated}}function F0(o,e){if(typeof o=="string"){const t=parseFloat(o);isNaN(t)||(o=t)}return typeof o=="string"||typeof o=="number"?e(o):En.INSTANCE}class B0{static create(e,t,i=null){return F0(t,n=>new B0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=12}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))>this.value}serialize(){return`${this.key} > ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=V0.create(this.key,this.value,this)),this.negated}}class W0{static create(e,t,i=null){return F0(t,n=>new W0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=13}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))>=this.value}serialize(){return`${this.key} >= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=H0.create(this.key,this.value,this)),this.negated}}class H0{static create(e,t,i=null){return F0(t,n=>new H0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=14}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))new V0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=15}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))<=this.value}serialize(){return`${this.key} <= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=B0.create(this.key,this.value,this)),this.negated}}class Yp{static create(e,t){return new Yp(e,t)}constructor(e,t){this.key=e,this.regexp=t,this.type=7,this.negated=null}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.keye.key)return 1;const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return ti?1:0}equals(e){if(e.type===this.type){const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return this.key===e.key&&t===i}return!1}substituteConstants(){return this}evaluate(e){const t=e.getValue(this.key);return this.regexp?this.regexp.test(t):!1}serialize(){const e=this.regexp?`/${this.regexp.source}/${this.regexp.flags}`:"/invalid/";return`${this.key} =~ ${e}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=sT.create(this)),this.negated}}class sT{static create(e){return new sT(e)}constructor(e){this._actual=e,this.type=8}cmp(e){return e.type!==this.type?this.type-e.type:this._actual.cmp(e._actual)}equals(e){return e.type===this.type?this._actual.equals(e._actual):!1}substituteConstants(){return this}evaluate(e){return!this._actual.evaluate(e)}serialize(){return`!(${this._actual.serialize()})`}keys(){return this._actual.keys()}negate(){return this._actual}}function zF(o){let e=null;for(let t=0,i=o.length;te.expr.length)return 1;for(let t=0,i=this.expr.length;t1;){const r=n[n.length-1];if(r.type!==9)break;n.pop();const a=n.pop(),l=n.length===0,c=tl.create(r.expr.map(d=>Vd.create([d,a],null,i)),null,l);c&&(n.push(c),n.sort(Gm))}if(n.length===1)return n[0];if(i){for(let r=0;re.serialize()).join(" && ")}keys(){const e=[];for(const t of this.expr)e.push(...t.keys());return e}negate(){if(!this.negated){const e=[];for(const t of this.expr)e.push(t.negate());this.negated=tl.create(e,this,!0)}return this.negated}}class tl{static create(e,t,i){return tl._normalizeArr(e,t,i)}constructor(e,t){this.expr=e,this.negated=t,this.type=9}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.expr.lengthe.expr.length)return 1;for(let t=0,i=this.expr.length;te.serialize()).join(" || ")}keys(){const e=[];for(const t of this.expr)e.push(...t.keys());return e}negate(){if(!this.negated){const e=[];for(const t of this.expr)e.push(t.negate());for(;e.length>1;){const t=e.shift(),i=e.shift(),n=[];for(const s of _R(t))for(const r of _R(i))n.push(Vd.create([s,r],null,!1));e.unshift(tl.create(n,null,!1))}this.negated=tl.create(e,this,!0)}return this.negated}}const vf=class vf extends eu{static all(){return vf._info.values()}constructor(e,t,i){super(e,null),this._defaultValue=t,typeof i=="object"?vf._info.push({...i,key:e}):i!==!0&&vf._info.push({key:e,description:i,type:t!=null?typeof t:void 0})}bindTo(e){return e.createKey(this.key,this._defaultValue)}getValue(e){return e.getContextKeyValue(this.key)}toNegated(){return this.negate()}isEqualTo(e){return U_.create(this.key,e)}};vf._info=[];let le=vf;const De=He("contextKeyService");function UF(o,e){return oe?1:0}function iu(o,e,t,i){return ot?1:ei?1:0}function Qx(o,e){if(o.type===0||e.type===1)return!0;if(o.type===9)return e.type===9?pR(o.expr,e.expr):!1;if(e.type===9){for(const t of e.expr)if(Qx(o,t))return!0;return!1}if(o.type===6){if(e.type===6)return pR(e.expr,o.expr);for(const t of o.expr)if(Qx(t,e))return!0;return!1}return o.equals(e)}function pR(o,e){let t=0,i=0;for(;t{a(),this._cachedMergedKeybindings=null})}getDefaultKeybindings(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=Array.from(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(cz)),this._cachedMergedKeybindings.slice(0)}}const Nn=new rT,lz={EditorModes:"platform.keybindingsRegistry"};Bi.add(lz.EditorModes,Nn);function cz(o,e){if(o.weight1!==e.weight1)return o.weight1-e.weight1;if(o.command&&e.command){if(o.commande.command)return 1}return o.weight2-e.weight2}var dz=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},CR=function(o,e){return function(t,i){e(t,i,o)}},L1;function Rf(o){return o.command!==void 0}function hz(o){return o.submenu!==void 0}const k=class k{constructor(e){if(k._instances.has(e))throw new TypeError(`MenuId with identifier '${e}' already exists. Use MenuId.for(ident) or a unique identifier`);k._instances.set(e,this),this.id=e}};k._instances=new Map,k.CommandPalette=new k("CommandPalette"),k.DebugBreakpointsContext=new k("DebugBreakpointsContext"),k.DebugCallStackContext=new k("DebugCallStackContext"),k.DebugConsoleContext=new k("DebugConsoleContext"),k.DebugVariablesContext=new k("DebugVariablesContext"),k.NotebookVariablesContext=new k("NotebookVariablesContext"),k.DebugHoverContext=new k("DebugHoverContext"),k.DebugWatchContext=new k("DebugWatchContext"),k.DebugToolBar=new k("DebugToolBar"),k.DebugToolBarStop=new k("DebugToolBarStop"),k.DebugCallStackToolbar=new k("DebugCallStackToolbar"),k.DebugCreateConfiguration=new k("DebugCreateConfiguration"),k.EditorContext=new k("EditorContext"),k.SimpleEditorContext=new k("SimpleEditorContext"),k.EditorContent=new k("EditorContent"),k.EditorLineNumberContext=new k("EditorLineNumberContext"),k.EditorContextCopy=new k("EditorContextCopy"),k.EditorContextPeek=new k("EditorContextPeek"),k.EditorContextShare=new k("EditorContextShare"),k.EditorTitle=new k("EditorTitle"),k.EditorTitleRun=new k("EditorTitleRun"),k.EditorTitleContext=new k("EditorTitleContext"),k.EditorTitleContextShare=new k("EditorTitleContextShare"),k.EmptyEditorGroup=new k("EmptyEditorGroup"),k.EmptyEditorGroupContext=new k("EmptyEditorGroupContext"),k.EditorTabsBarContext=new k("EditorTabsBarContext"),k.EditorTabsBarShowTabsSubmenu=new k("EditorTabsBarShowTabsSubmenu"),k.EditorTabsBarShowTabsZenModeSubmenu=new k("EditorTabsBarShowTabsZenModeSubmenu"),k.EditorActionsPositionSubmenu=new k("EditorActionsPositionSubmenu"),k.ExplorerContext=new k("ExplorerContext"),k.ExplorerContextShare=new k("ExplorerContextShare"),k.ExtensionContext=new k("ExtensionContext"),k.GlobalActivity=new k("GlobalActivity"),k.CommandCenter=new k("CommandCenter"),k.CommandCenterCenter=new k("CommandCenterCenter"),k.LayoutControlMenuSubmenu=new k("LayoutControlMenuSubmenu"),k.LayoutControlMenu=new k("LayoutControlMenu"),k.MenubarMainMenu=new k("MenubarMainMenu"),k.MenubarAppearanceMenu=new k("MenubarAppearanceMenu"),k.MenubarDebugMenu=new k("MenubarDebugMenu"),k.MenubarEditMenu=new k("MenubarEditMenu"),k.MenubarCopy=new k("MenubarCopy"),k.MenubarFileMenu=new k("MenubarFileMenu"),k.MenubarGoMenu=new k("MenubarGoMenu"),k.MenubarHelpMenu=new k("MenubarHelpMenu"),k.MenubarLayoutMenu=new k("MenubarLayoutMenu"),k.MenubarNewBreakpointMenu=new k("MenubarNewBreakpointMenu"),k.PanelAlignmentMenu=new k("PanelAlignmentMenu"),k.PanelPositionMenu=new k("PanelPositionMenu"),k.ActivityBarPositionMenu=new k("ActivityBarPositionMenu"),k.MenubarPreferencesMenu=new k("MenubarPreferencesMenu"),k.MenubarRecentMenu=new k("MenubarRecentMenu"),k.MenubarSelectionMenu=new k("MenubarSelectionMenu"),k.MenubarShare=new k("MenubarShare"),k.MenubarSwitchEditorMenu=new k("MenubarSwitchEditorMenu"),k.MenubarSwitchGroupMenu=new k("MenubarSwitchGroupMenu"),k.MenubarTerminalMenu=new k("MenubarTerminalMenu"),k.MenubarViewMenu=new k("MenubarViewMenu"),k.MenubarHomeMenu=new k("MenubarHomeMenu"),k.OpenEditorsContext=new k("OpenEditorsContext"),k.OpenEditorsContextShare=new k("OpenEditorsContextShare"),k.ProblemsPanelContext=new k("ProblemsPanelContext"),k.SCMInputBox=new k("SCMInputBox"),k.SCMChangesSeparator=new k("SCMChangesSeparator"),k.SCMChangesContext=new k("SCMChangesContext"),k.SCMIncomingChanges=new k("SCMIncomingChanges"),k.SCMIncomingChangesContext=new k("SCMIncomingChangesContext"),k.SCMIncomingChangesSetting=new k("SCMIncomingChangesSetting"),k.SCMOutgoingChanges=new k("SCMOutgoingChanges"),k.SCMOutgoingChangesContext=new k("SCMOutgoingChangesContext"),k.SCMOutgoingChangesSetting=new k("SCMOutgoingChangesSetting"),k.SCMIncomingChangesAllChangesContext=new k("SCMIncomingChangesAllChangesContext"),k.SCMIncomingChangesHistoryItemContext=new k("SCMIncomingChangesHistoryItemContext"),k.SCMOutgoingChangesAllChangesContext=new k("SCMOutgoingChangesAllChangesContext"),k.SCMOutgoingChangesHistoryItemContext=new k("SCMOutgoingChangesHistoryItemContext"),k.SCMChangeContext=new k("SCMChangeContext"),k.SCMResourceContext=new k("SCMResourceContext"),k.SCMResourceContextShare=new k("SCMResourceContextShare"),k.SCMResourceFolderContext=new k("SCMResourceFolderContext"),k.SCMResourceGroupContext=new k("SCMResourceGroupContext"),k.SCMSourceControl=new k("SCMSourceControl"),k.SCMSourceControlInline=new k("SCMSourceControlInline"),k.SCMSourceControlTitle=new k("SCMSourceControlTitle"),k.SCMHistoryTitle=new k("SCMHistoryTitle"),k.SCMTitle=new k("SCMTitle"),k.SearchContext=new k("SearchContext"),k.SearchActionMenu=new k("SearchActionContext"),k.StatusBarWindowIndicatorMenu=new k("StatusBarWindowIndicatorMenu"),k.StatusBarRemoteIndicatorMenu=new k("StatusBarRemoteIndicatorMenu"),k.StickyScrollContext=new k("StickyScrollContext"),k.TestItem=new k("TestItem"),k.TestItemGutter=new k("TestItemGutter"),k.TestProfilesContext=new k("TestProfilesContext"),k.TestMessageContext=new k("TestMessageContext"),k.TestMessageContent=new k("TestMessageContent"),k.TestPeekElement=new k("TestPeekElement"),k.TestPeekTitle=new k("TestPeekTitle"),k.TestCallStack=new k("TestCallStack"),k.TouchBarContext=new k("TouchBarContext"),k.TitleBarContext=new k("TitleBarContext"),k.TitleBarTitleContext=new k("TitleBarTitleContext"),k.TunnelContext=new k("TunnelContext"),k.TunnelPrivacy=new k("TunnelPrivacy"),k.TunnelProtocol=new k("TunnelProtocol"),k.TunnelPortInline=new k("TunnelInline"),k.TunnelTitle=new k("TunnelTitle"),k.TunnelLocalAddressInline=new k("TunnelLocalAddressInline"),k.TunnelOriginInline=new k("TunnelOriginInline"),k.ViewItemContext=new k("ViewItemContext"),k.ViewContainerTitle=new k("ViewContainerTitle"),k.ViewContainerTitleContext=new k("ViewContainerTitleContext"),k.ViewTitle=new k("ViewTitle"),k.ViewTitleContext=new k("ViewTitleContext"),k.CommentEditorActions=new k("CommentEditorActions"),k.CommentThreadTitle=new k("CommentThreadTitle"),k.CommentThreadActions=new k("CommentThreadActions"),k.CommentThreadAdditionalActions=new k("CommentThreadAdditionalActions"),k.CommentThreadTitleContext=new k("CommentThreadTitleContext"),k.CommentThreadCommentContext=new k("CommentThreadCommentContext"),k.CommentTitle=new k("CommentTitle"),k.CommentActions=new k("CommentActions"),k.CommentsViewThreadActions=new k("CommentsViewThreadActions"),k.InteractiveToolbar=new k("InteractiveToolbar"),k.InteractiveCellTitle=new k("InteractiveCellTitle"),k.InteractiveCellDelete=new k("InteractiveCellDelete"),k.InteractiveCellExecute=new k("InteractiveCellExecute"),k.InteractiveInputExecute=new k("InteractiveInputExecute"),k.InteractiveInputConfig=new k("InteractiveInputConfig"),k.ReplInputExecute=new k("ReplInputExecute"),k.IssueReporter=new k("IssueReporter"),k.NotebookToolbar=new k("NotebookToolbar"),k.NotebookStickyScrollContext=new k("NotebookStickyScrollContext"),k.NotebookCellTitle=new k("NotebookCellTitle"),k.NotebookCellDelete=new k("NotebookCellDelete"),k.NotebookCellInsert=new k("NotebookCellInsert"),k.NotebookCellBetween=new k("NotebookCellBetween"),k.NotebookCellListTop=new k("NotebookCellTop"),k.NotebookCellExecute=new k("NotebookCellExecute"),k.NotebookCellExecuteGoTo=new k("NotebookCellExecuteGoTo"),k.NotebookCellExecutePrimary=new k("NotebookCellExecutePrimary"),k.NotebookDiffCellInputTitle=new k("NotebookDiffCellInputTitle"),k.NotebookDiffCellMetadataTitle=new k("NotebookDiffCellMetadataTitle"),k.NotebookDiffCellOutputsTitle=new k("NotebookDiffCellOutputsTitle"),k.NotebookOutputToolbar=new k("NotebookOutputToolbar"),k.NotebookOutlineFilter=new k("NotebookOutlineFilter"),k.NotebookOutlineActionMenu=new k("NotebookOutlineActionMenu"),k.NotebookEditorLayoutConfigure=new k("NotebookEditorLayoutConfigure"),k.NotebookKernelSource=new k("NotebookKernelSource"),k.BulkEditTitle=new k("BulkEditTitle"),k.BulkEditContext=new k("BulkEditContext"),k.TimelineItemContext=new k("TimelineItemContext"),k.TimelineTitle=new k("TimelineTitle"),k.TimelineTitleContext=new k("TimelineTitleContext"),k.TimelineFilterSubMenu=new k("TimelineFilterSubMenu"),k.AccountsContext=new k("AccountsContext"),k.SidebarTitle=new k("SidebarTitle"),k.PanelTitle=new k("PanelTitle"),k.AuxiliaryBarTitle=new k("AuxiliaryBarTitle"),k.AuxiliaryBarHeader=new k("AuxiliaryBarHeader"),k.TerminalInstanceContext=new k("TerminalInstanceContext"),k.TerminalEditorInstanceContext=new k("TerminalEditorInstanceContext"),k.TerminalNewDropdownContext=new k("TerminalNewDropdownContext"),k.TerminalTabContext=new k("TerminalTabContext"),k.TerminalTabEmptyAreaContext=new k("TerminalTabEmptyAreaContext"),k.TerminalStickyScrollContext=new k("TerminalStickyScrollContext"),k.WebviewContext=new k("WebviewContext"),k.InlineCompletionsActions=new k("InlineCompletionsActions"),k.InlineEditsActions=new k("InlineEditsActions"),k.InlineEditActions=new k("InlineEditActions"),k.NewFile=new k("NewFile"),k.MergeInput1Toolbar=new k("MergeToolbar1Toolbar"),k.MergeInput2Toolbar=new k("MergeToolbar2Toolbar"),k.MergeBaseToolbar=new k("MergeBaseToolbar"),k.MergeInputResultToolbar=new k("MergeToolbarResultToolbar"),k.InlineSuggestionToolbar=new k("InlineSuggestionToolbar"),k.InlineEditToolbar=new k("InlineEditToolbar"),k.ChatContext=new k("ChatContext"),k.ChatCodeBlock=new k("ChatCodeblock"),k.ChatCompareBlock=new k("ChatCompareBlock"),k.ChatMessageTitle=new k("ChatMessageTitle"),k.ChatExecute=new k("ChatExecute"),k.ChatExecuteSecondary=new k("ChatExecuteSecondary"),k.ChatInputSide=new k("ChatInputSide"),k.AccessibleView=new k("AccessibleView"),k.MultiDiffEditorFileToolbar=new k("MultiDiffEditorFileToolbar"),k.DiffEditorHunkToolbar=new k("DiffEditorHunkToolbar"),k.DiffEditorSelectionToolbar=new k("DiffEditorSelectionToolbar");let $e=k;const yr=He("menuService"),kp=class kp{static for(e){let t=this._all.get(e);return t||(t=new kp(e),this._all.set(e,t)),t}static merge(e){const t=new Set;for(const i of e)i instanceof kp&&t.add(i.id);return t}constructor(e){this.id=e,this.has=t=>t===e}};kp._all=new Map;let _d=kp;const Eo=new class{constructor(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new DW({merge:_d.merge}),this.onDidChangeMenu=this._onDidChangeMenu.event}addCommand(o){return this._commands.set(o.id,o),this._onDidChangeMenu.fire(_d.for($e.CommandPalette)),_e(()=>{this._commands.delete(o.id)&&this._onDidChangeMenu.fire(_d.for($e.CommandPalette))})}getCommand(o){return this._commands.get(o)}getCommands(){const o=new Map;return this._commands.forEach((e,t)=>o.set(t,e)),o}appendMenuItem(o,e){let t=this._menuItems.get(o);t||(t=new yn,this._menuItems.set(o,t));const i=t.push(e);return this._onDidChangeMenu.fire(_d.for(o)),_e(()=>{i(),this._onDidChangeMenu.fire(_d.for(o))})}appendMenuItems(o){const e=new X;for(const{id:t,item:i}of o)e.add(this.appendMenuItem(t,i));return e}getMenuItems(o){let e;return this._menuItems.has(o)?e=[...this._menuItems.get(o)]:e=[],o===$e.CommandPalette&&this._appendImplicitItems(e),e}_appendImplicitItems(o){const e=new Set;for(const t of o)Rf(t)&&(e.add(t.command.id),t.alt&&e.add(t.alt.id));this._commands.forEach((t,i)=>{e.has(i)||o.push({command:t})})}};class Zm extends R0{constructor(e,t,i){super(`submenuitem.${e.submenu.id}`,typeof e.title=="string"?e.title:e.title.value,i,"submenu"),this.item=e,this.hideActions=t}}let so=L1=class{static label(e,t){return t?.renderShortTitle&&e.shortTitle?typeof e.shortTitle=="string"?e.shortTitle:e.shortTitle.value:typeof e.title=="string"?e.title:e.title.value}constructor(e,t,i,n,s,r,a){this.hideActions=n,this.menuKeybinding=s,this._commandService=a,this.id=e.id,this.label=L1.label(e,i),this.tooltip=(typeof e.tooltip=="string"?e.tooltip:e.tooltip?.value)??"",this.enabled=!e.precondition||r.contextMatchesRules(e.precondition),this.checked=void 0;let l;if(e.toggled){const c=e.toggled.condition?e.toggled:{condition:e.toggled};this.checked=r.contextMatchesRules(c.condition),this.checked&&c.tooltip&&(this.tooltip=typeof c.tooltip=="string"?c.tooltip:c.tooltip.value),this.checked&&Ee.isThemeIcon(c.icon)&&(l=c.icon),this.checked&&c.title&&(this.label=typeof c.title=="string"?c.title:c.title.value)}l||(l=Ee.isThemeIcon(e.icon)?e.icon:void 0),this.item=e,this.alt=t?new L1(t,void 0,i,n,void 0,r,a):void 0,this._options=i,this.class=l&&Ee.asClassName(l)}run(...e){let t=[];return this._options?.arg&&(t=[...t,this._options.arg]),this._options?.shouldForwardArgs&&(t=[...t,...e]),this._commandService.executeCommand(this.id,...t)}};so=L1=dz([CR(5,De),CR(6,hi)],so);class nu{constructor(e){this.desc=e}}function Rn(o){const e=[],t=new o,{f1:i,menu:n,keybinding:s,...r}=t.desc;if(bt.getCommand(r.id))throw new Error(`Cannot register two commands with the same id: ${r.id}`);if(e.push(bt.registerCommand({id:r.id,handler:(a,...l)=>t.run(a,...l),metadata:r.metadata})),Array.isArray(n))for(const a of n)e.push(Eo.appendMenuItem(a.id,{command:{...r,precondition:a.precondition===null?void 0:r.precondition},...a}));else n&&e.push(Eo.appendMenuItem(n.id,{command:{...r,precondition:n.precondition===null?void 0:r.precondition},...n}));if(i&&(e.push(Eo.appendMenuItem($e.CommandPalette,{command:r,when:r.precondition})),e.push(Eo.addCommand(r))),Array.isArray(s))for(const a of s)e.push(Nn.registerKeybindingRule({...a,id:r.id,when:r.precondition?re.and(r.precondition,a.when):a.when}));else s&&e.push(Nn.registerKeybindingRule({...s,id:r.id,when:r.precondition?re.and(r.precondition,s.when):s.when}));return{dispose(){xt(e)}}}const $s=He("telemetryService"),gs=He("logService");var Wn;(function(o){o[o.Off=0]="Off",o[o.Trace=1]="Trace",o[o.Debug=2]="Debug",o[o.Info=3]="Info",o[o.Warning=4]="Warning",o[o.Error=5]="Error"})(Wn||(Wn={}));const $F=Wn.Info;class KF extends z{constructor(){super(...arguments),this.level=$F,this._onDidChangeLogLevel=this._register(new A),this.onDidChangeLogLevel=this._onDidChangeLogLevel.event}setLevel(e){this.level!==e&&(this.level=e,this._onDidChangeLogLevel.fire(this.level))}getLevel(){return this.level}checkLogLevel(e){return this.level!==Wn.Off&&this.level<=e}}class uz extends KF{constructor(e=$F,t=!0){super(),this.useColors=t,this.setLevel(e)}trace(e,...t){this.checkLogLevel(Wn.Trace)&&(this.useColors?console.log("%cTRACE","color: #888",e,...t):console.log(e,...t))}debug(e,...t){this.checkLogLevel(Wn.Debug)&&(this.useColors?console.log("%cDEBUG","background: #eee; color: #888",e,...t):console.log(e,...t))}info(e,...t){this.checkLogLevel(Wn.Info)&&(this.useColors?console.log("%c INFO","color: #33f",e,...t):console.log(e,...t))}warn(e,...t){this.checkLogLevel(Wn.Warning)&&(this.useColors?console.log("%c WARN","color: #993",e,...t):console.log(e,...t))}error(e,...t){this.checkLogLevel(Wn.Error)&&(this.useColors?console.log("%c ERR","color: #f33",e,...t):console.error(e,...t))}}class fz extends KF{constructor(e){super(),this.loggers=e,e.length&&this.setLevel(e[0].getLevel())}setLevel(e){for(const t of this.loggers)t.setLevel(e);super.setLevel(e)}trace(e,...t){for(const i of this.loggers)i.trace(e,...t)}debug(e,...t){for(const i of this.loggers)i.debug(e,...t)}info(e,...t){for(const i of this.loggers)i.info(e,...t)}warn(e,...t){for(const i of this.loggers)i.warn(e,...t)}error(e,...t){for(const i of this.loggers)i.error(e,...t)}dispose(){for(const e of this.loggers)e.dispose();super.dispose()}}function gz(o){switch(o){case Wn.Trace:return"trace";case Wn.Debug:return"debug";case Wn.Info:return"info";case Wn.Warning:return"warn";case Wn.Error:return"error";case Wn.Off:return"off"}}new le("logLevel",gz(Wn.Info));class U0{constructor(e){this.id=e.id,this.precondition=e.precondition,this._kbOpts=e.kbOpts,this._menuOpts=e.menuOpts,this.metadata=e.metadata}register(){if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts){const e=Array.isArray(this._kbOpts)?this._kbOpts:[this._kbOpts];for(const t of e){let i=t.kbExpr;this.precondition&&(i?i=re.and(i,this.precondition):i=this.precondition);const n={id:this.id,weight:t.weight,args:t.args,when:i,primary:t.primary,secondary:t.secondary,win:t.win,linux:t.linux,mac:t.mac};Nn.registerKeybindingRule(n)}}bt.registerCommand({id:this.id,handler:(e,t)=>this.runCommand(e,t),metadata:this.metadata})}_registerMenuItem(e){Eo.appendMenuItem(e.menuId,{group:e.group,command:{id:this.id,title:e.title,icon:e.icon,precondition:this.precondition},when:e.when,order:e.order})}}class aT extends U0{constructor(){super(...arguments),this._implementations=[]}addImplementation(e,t,i,n){return this._implementations.push({priority:e,name:t,implementation:i,when:n}),this._implementations.sort((s,r)=>r.priority-s.priority),{dispose:()=>{for(let s=0;s{if(a.get(De).contextMatchesRules(i??void 0))return n(a,r,t)})}runCommand(e,t){return co.runEditorCommand(e,t,this.precondition,(i,n,s)=>this.runEditorCommand(i,n,s))}}class bi extends co{static convertOptions(e){let t;Array.isArray(e.menuOpts)?t=e.menuOpts:e.menuOpts?t=[e.menuOpts]:t=[];function i(n){return n.menuId||(n.menuId=$e.EditorContext),n.title||(n.title=e.label),n.when=re.and(e.precondition,n.when),n}return Array.isArray(e.contextMenuOpts)?t.push(...e.contextMenuOpts.map(i)):e.contextMenuOpts&&t.push(i(e.contextMenuOpts)),e.menuOpts=t,e}constructor(e){super(bi.convertOptions(e)),this.label=e.label,this.alias=e.alias}runEditorCommand(e,t,i){return this.reportTelemetry(e,t),this.run(e,t,i||{})}reportTelemetry(e,t){e.get($s).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class mz extends nu{run(e,...t){const i=e.get(Pt),n=i.getFocusedCodeEditor()||i.getActiveCodeEditor();if(n)return n.invokeWithinContext(s=>{const r=s.get(De),a=s.get(gs);if(!r.contextMatchesRules(this.desc.precondition??void 0)){a.debug("[EditorAction2] NOT running command because its precondition is FALSE",this.desc.id,this.desc.precondition?.serialize());return}return this.runEditorCommand(s,n,...t)})}}function Wo(o,e){bt.registerCommand(o,function(t,...i){const n=t.get(ke),[s,r]=i;ai(ve.isUri(s)),ai(P.isIPosition(r));const a=t.get(Fi).getModel(s);if(a){const l=P.lift(r);return n.invokeFunction(e,a,l,...i.slice(2))}return t.get(fo).createModelReference(s).then(l=>new Promise((c,d)=>{try{const h=n.invokeFunction(e,l.object.textEditorModel,P.lift(r),i.slice(2));c(h)}catch(h){d(h)}}).finally(()=>{l.dispose()}))})}function ge(o){return cr.INSTANCE.registerEditorCommand(o),o}function mi(o){const e=new o;return cr.INSTANCE.registerEditorAction(e),e}function Ho(o,e,t){cr.INSTANCE.registerEditorContribution(o,e,t)}var Af;(function(o){function e(r){return cr.INSTANCE.getEditorCommand(r)}o.getEditorCommand=e;function t(){return cr.INSTANCE.getEditorActions()}o.getEditorActions=t;function i(){return cr.INSTANCE.getEditorContributions()}o.getEditorContributions=i;function n(r){return cr.INSTANCE.getEditorContributions().filter(a=>r.indexOf(a.id)>=0)}o.getSomeEditorContributions=n;function s(){return cr.INSTANCE.getDiffEditorContributions()}o.getDiffEditorContributions=s})(Af||(Af={}));const pz={EditorCommonContributions:"editor.contributions"},xw=class xw{constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(e,t,i){this.editorContributions.push({id:e,ctor:t,instantiation:i})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(e){e.register(),this.editorActions.push(e)}getEditorActions(){return this.editorActions}registerEditorCommand(e){e.register(),this.editorCommands[e.id]=e}getEditorCommand(e){return this.editorCommands[e]||null}};xw.INSTANCE=new xw;let cr=xw;Bi.add(pz.EditorCommonContributions,cr.INSTANCE);function $_(o){return o.register(),o}const qF=$_(new aT({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2104},menuOpts:[{menuId:$e.MenubarEditMenu,group:"1_do",title:m({key:"miUndo",comment:["&& denotes a mnemonic"]},"&&Undo"),order:1},{menuId:$e.CommandPalette,group:"",title:m("undo","Undo"),order:1}]}));$_(new jF(qF,{id:"default:undo",precondition:void 0}));const GF=$_(new aT({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:[{menuId:$e.MenubarEditMenu,group:"1_do",title:m({key:"miRedo",comment:["&& denotes a mnemonic"]},"&&Redo"),order:2},{menuId:$e.CommandPalette,group:"",title:m("redo","Redo"),order:1}]}));$_(new jF(GF,{id:"default:redo",precondition:void 0}));const _z=$_(new aT({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:[{menuId:$e.MenubarSelectionMenu,group:"1_basic",title:m({key:"miSelectAll",comment:["&& denotes a mnemonic"]},"&&Select All"),order:1},{menuId:$e.CommandPalette,group:"",title:m("selectAll","Select All"),order:1}]})),bz="modulepreload",Cz=function(o,e){return new URL(o,e).href},vR={},vz=function(e,t,i){let n=Promise.resolve();if(t&&t.length>0){let c=function(d){return Promise.all(d.map(h=>Promise.resolve(h).then(u=>({status:"fulfilled",value:u}),u=>({status:"rejected",reason:u}))))};const r=document.getElementsByTagName("link"),a=document.querySelector("meta[property=csp-nonce]"),l=a?.nonce||a?.getAttribute("nonce");n=c(t.map(d=>{if(d=Cz(d,i),d in vR)return;vR[d]=!0;const h=d.endsWith(".css"),u=h?'[rel="stylesheet"]':"";if(i)for(let g=r.length-1;g>=0;g--){const p=r[g];if(p.href===d&&(!h||p.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${d}"]${u}`))return;const f=document.createElement("link");if(f.rel=h?"stylesheet":bz,h||(f.as="script"),f.crossOrigin="",f.href=d,l&&f.setAttribute("nonce",l),document.head.appendChild(f),h)return new Promise((g,p)=>{f.addEventListener("load",g),f.addEventListener("error",()=>p(new Error(`Unable to preload CSS for ${d}`)))})}))}function s(r){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=r,window.dispatchEvent(a),!a.defaultPrevented)throw r}return n.then(r=>{for(const a of r||[])a.status==="rejected"&&s(a.reason);return e().catch(s)})},wR="default",wz="$initialize";let yR=!1;function Xx(o){Og&&(yR||(yR=!0,console.warn("Could not create web worker(s). Falling back to loading web worker code in main thread, which might cause UI freezes. Please see https://github.com/microsoft/monaco-editor#faq")),console.warn(o.message))}class yz{constructor(e,t,i,n,s){this.vsWorker=e,this.req=t,this.channel=i,this.method=n,this.args=s,this.type=0}}class SR{constructor(e,t,i,n){this.vsWorker=e,this.seq=t,this.res=i,this.err=n,this.type=1}}class Sz{constructor(e,t,i,n,s){this.vsWorker=e,this.req=t,this.channel=i,this.eventName=n,this.arg=s,this.type=2}}class Lz{constructor(e,t,i){this.vsWorker=e,this.req=t,this.event=i,this.type=3}}class xz{constructor(e,t){this.vsWorker=e,this.req=t,this.type=4}}class kz{constructor(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(e){this._workerId=e}sendMessage(e,t,i){const n=String(++this._lastSentReq);return new Promise((s,r)=>{this._pendingReplies[n]={resolve:s,reject:r},this._send(new yz(this._workerId,n,e,t,i))})}listen(e,t,i){let n=null;const s=new A({onWillAddFirstListener:()=>{n=String(++this._lastSentReq),this._pendingEmitters.set(n,s),this._send(new Sz(this._workerId,n,e,t,i))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(n),this._send(new xz(this._workerId,n)),n=null}});return s.event}handleMessage(e){!e||!e.vsWorker||this._workerId!==-1&&e.vsWorker!==this._workerId||this._handleMessage(e)}createProxyToRemoteChannel(e,t){const i={get:(n,s)=>(typeof s=="string"&&!n[s]&&(YF(s)?n[s]=r=>this.listen(e,s,r):ZF(s)?n[s]=this.listen(e,s,void 0):s.charCodeAt(0)===36&&(n[s]=async(...r)=>(await t?.(),this.sendMessage(e,s,r)))),n[s])};return new Proxy(Object.create(null),i)}_handleMessage(e){switch(e.type){case 1:return this._handleReplyMessage(e);case 0:return this._handleRequestMessage(e);case 2:return this._handleSubscribeEventMessage(e);case 3:return this._handleEventMessage(e);case 4:return this._handleUnsubscribeEventMessage(e)}}_handleReplyMessage(e){if(!this._pendingReplies[e.seq]){console.warn("Got reply to unknown seq");return}const t=this._pendingReplies[e.seq];if(delete this._pendingReplies[e.seq],e.err){let i=e.err;e.err.$isError&&(i=new Error,i.name=e.err.name,i.message=e.err.message,i.stack=e.err.stack),t.reject(i);return}t.resolve(e.res)}_handleRequestMessage(e){const t=e.req;this._handler.handleMessage(e.channel,e.method,e.args).then(n=>{this._send(new SR(this._workerId,t,n,void 0))},n=>{n.detail instanceof Error&&(n.detail=HM(n.detail)),this._send(new SR(this._workerId,t,void 0,HM(n)))})}_handleSubscribeEventMessage(e){const t=e.req,i=this._handler.handleEvent(e.channel,e.eventName,e.arg)(n=>{this._send(new Lz(this._workerId,t,n))});this._pendingEvents.set(t,i)}_handleEventMessage(e){if(!this._pendingEmitters.has(e.req)){console.warn("Got event for unknown req");return}this._pendingEmitters.get(e.req).fire(e.event)}_handleUnsubscribeEventMessage(e){if(!this._pendingEvents.has(e.req)){console.warn("Got unsubscribe for unknown req");return}this._pendingEvents.get(e.req).dispose(),this._pendingEvents.delete(e.req)}_send(e){const t=[];if(e.type===0)for(let i=0;i{this._protocol.handleMessage(s)},s=>{Ze(s)})),this._protocol=new kz({sendMessage:(s,r)=>{this._worker.postMessage(s,r)},handleMessage:(s,r,a)=>this._handleMessage(s,r,a),handleEvent:(s,r,a)=>this._handleEvent(s,r,a)}),this._protocol.setWorkerId(this._worker.getId());let i=null;const n=globalThis.require;typeof n<"u"&&typeof n.getConfig=="function"?i=n.getConfig():typeof globalThis.requirejs<"u"&&(i=globalThis.requirejs.s.contexts._.config),this._onModuleLoaded=this._protocol.sendMessage(wR,wz,[this._worker.getId(),JSON.parse(JSON.stringify(i)),t.amdModuleId]),this.proxy=this._protocol.createProxyToRemoteChannel(wR,async()=>{await this._onModuleLoaded}),this._onModuleLoaded.catch(s=>{this._onError("Worker failed to load "+t.amdModuleId,s)})}_handleMessage(e,t,i){const n=this._localChannels.get(e);if(!n)return Promise.reject(new Error(`Missing channel ${e} on main thread`));if(typeof n[t]!="function")return Promise.reject(new Error(`Missing method ${t} on main thread channel ${e}`));try{return Promise.resolve(n[t].apply(n,i))}catch(s){return Promise.reject(s)}}_handleEvent(e,t,i){const n=this._localChannels.get(e);if(!n)throw new Error(`Missing channel ${e} on main thread`);if(YF(t)){const s=n[t].call(n,i);if(typeof s!="function")throw new Error(`Missing dynamic event ${t} on main thread channel ${e}.`);return s}if(ZF(t)){const s=n[t];if(typeof s!="function")throw new Error(`Missing event ${t} on main thread channel ${e}.`);return s}throw new Error(`Malformed event name ${t}`)}setChannel(e,t){this._localChannels.set(e,t)}_onError(e,t){console.error(e),console.info(t)}}function ZF(o){return o[0]==="o"&&o[1]==="n"&&ql(o.charCodeAt(2))}function YF(o){return/^onDynamic/.test(o)&&ql(o.charCodeAt(9))}function Kc(o,e){const t=globalThis.MonacoEnvironment;if(t?.createTrustedTypesPolicy)try{return t.createTrustedTypesPolicy(o,e)}catch(i){Ze(i);return}try{return globalThis.trustedTypes?.createPolicy(o,e)}catch(i){Ze(i);return}}let Xu;typeof self=="object"&&self.constructor&&self.constructor.name==="DedicatedWorkerGlobalScope"&&globalThis.workerttPolicy!==void 0?Xu=globalThis.workerttPolicy:Xu=Kc("defaultWorkerFactory",{createScriptURL:o=>o});function Iz(o,e){const t=globalThis.MonacoEnvironment;if(t){if(typeof t.getWorker=="function")return t.getWorker("workerMain.js",e);if(typeof t.getWorkerUrl=="function"){const i=t.getWorkerUrl("workerMain.js",e);return new Worker(Xu?Xu.createScriptURL(i):i,{name:e,type:"module"})}}if(o){const i=Ez(e,o.toString(!0)),n=new Worker(Xu?Xu.createScriptURL(i):i,{name:e,type:"module"});return Nz(n)}throw new Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}function Ez(o,e,t){if(!(/^((http:)|(https:)|(file:)|(vscode-file:))/.test(e)&&e.substring(0,globalThis.origin.length)!==globalThis.origin)){const s=e.lastIndexOf("?"),r=e.lastIndexOf("#",s),a=s>0?new URLSearchParams(e.substring(s+1,~r?r:void 0)):new URLSearchParams;$x.addSearchParam(a,!0,!0),a.toString()?e=`${e}?${a.toString()}#${o}`:e=`${e}#${o}`}const n=new Blob([Ag([`/*${o}*/`,void 0,`globalThis._VSCODE_NLS_MESSAGES = ${JSON.stringify(F5())};`,`globalThis._VSCODE_NLS_LANGUAGE = ${JSON.stringify(kN())};`,`globalThis._VSCODE_FILE_ROOT = '${globalThis._VSCODE_FILE_ROOT}';`,"const ttPolicy = globalThis.trustedTypes?.createPolicy('defaultWorkerFactory', { createScriptURL: value => value });","globalThis.workerttPolicy = ttPolicy;",`await import(ttPolicy?.createScriptURL('${e}') ?? '${e}');`,"globalThis.postMessage({ type: 'vscode-worker-ready' });",`/*${o}*/`]).join("")],{type:"application/javascript"});return URL.createObjectURL(n)}function Nz(o){return new Promise((e,t)=>{o.onmessage=function(i){i.data.type==="vscode-worker-ready"&&(o.onmessage=null,e(o))},o.onerror=t})}function Tz(o){return typeof o.then=="function"}class Mz extends z{constructor(e,t,i,n,s,r){super(),this.id=i,this.label=n;const a=Iz(e,n);Tz(a)?this.worker=a:this.worker=Promise.resolve(a),this.postMessage(t,[]),this.worker.then(l=>{l.onmessage=function(c){s(c.data)},l.onmessageerror=r,typeof l.addEventListener=="function"&&l.addEventListener("error",r)}),this._register(_e(()=>{this.worker?.then(l=>{l.onmessage=null,l.onmessageerror=null,l.removeEventListener("error",r),l.terminate()}),this.worker=null}))}getId(){return this.id}postMessage(e,t){this.worker?.then(i=>{try{i.postMessage(e,t)}catch(n){Ze(n),Ze(new Error(`FAILED to post message to '${this.label}'-worker`,{cause:n}))}})}}class Rz{constructor(e,t){this.amdModuleId=e,this.label=t,this.esmModuleLocation=E0.asBrowserUri(`${e}.esm.js`)}}const kw=class kw{constructor(){this._webWorkerFailedBeforeError=!1}create(e,t,i){const n=++kw.LAST_WORKER_ID;if(this._webWorkerFailedBeforeError)throw this._webWorkerFailedBeforeError;return new Mz(e.esmModuleLocation,e.amdModuleId,n,e.label||"anonymous"+n,t,s=>{Xx(s),this._webWorkerFailedBeforeError=s,i(s)})}};kw.LAST_WORKER_ID=0;let Jx=kw;function Az(o,e){const t=typeof o=="string"?new Rz(o,e):o;return new Dz(new Jx,t)}var Sn;(function(o){o[o.None=0]="None",o[o.Indent=1]="Indent",o[o.IndentOutdent=2]="IndentOutdent",o[o.Outdent=3]="Outdent"})(Sn||(Sn={}));class uS{constructor(e){if(this._neutralCharacter=null,this._neutralCharacterSearched=!1,this.open=e.open,this.close=e.close,this._inString=!0,this._inComment=!0,this._inRegEx=!0,Array.isArray(e.notIn))for(let t=0,i=e.notIn.length;tnew uS(t)):e.brackets?this._autoClosingPairs=e.brackets.map(t=>new uS({open:t[0],close:t[1]})):this._autoClosingPairs=[],e.__electricCharacterSupport&&e.__electricCharacterSupport.docComment){const t=e.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new uS({open:t.open,close:t.close||""}))}this._autoCloseBeforeForQuotes=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES,this._autoCloseBeforeForBrackets=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS,this._surroundingPairs=e.surroundingPairs||this._autoClosingPairs}getAutoClosingPairs(){return this._autoClosingPairs}getAutoCloseBeforeSet(e){return e?this._autoCloseBeforeForQuotes:this._autoCloseBeforeForBrackets}getSurroundingPairs(){return this._surroundingPairs}};wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES=`;:.,=}])> + `,wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS=`'"\`;:.,=}])> + `;let ek=wf;function zd(o,e){const t=o.getCount(),i=o.findTokenIndexAtOffset(e),n=o.getLanguageId(i);let s=i;for(;s+10&&o.getLanguageId(r-1)===n;)r--;return new Oz(o,n,r,s+1,o.getStartOffset(r),o.getEndOffset(s))}class Oz{constructor(e,t,i,n,s,r){this._scopedLineTokensBrand=void 0,this._actual=e,this.languageId=t,this._firstTokenIndex=i,this._lastTokenIndex=n,this.firstCharOffset=s,this._lastCharOffset=r,this.languageIdCodec=e.languageIdCodec}getLineContent(){return this._actual.getLineContent().substring(this.firstCharOffset,this._lastCharOffset)}getLineLength(){return this._lastCharOffset-this.firstCharOffset}getActualLineContentBefore(e){return this._actual.getLineContent().substring(0,this.firstCharOffset+e)}getTokenCount(){return this._lastTokenIndex-this._firstTokenIndex}findTokenIndexAtOffset(e){return this._actual.findTokenIndexAtOffset(e+this.firstCharOffset)-this._firstTokenIndex}getStandardTokenType(e){return this._actual.getStandardTokenType(e+this._firstTokenIndex)}toIViewLineTokens(){return this._actual.sliceAndInflate(this.firstCharOffset,this._lastCharOffset,0)}}function Pr(o){return(o&3)!==0}const LR=typeof Buffer<"u";let fS;class lT{static wrap(e){return LR&&!Buffer.isBuffer(e)&&(e=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),new lT(e)}constructor(e){this.buffer=e,this.byteLength=this.buffer.byteLength}toString(){return LR?this.buffer.toString():(fS||(fS=new TextDecoder),fS.decode(this.buffer))}}function Fz(o,e){return o[e+0]<<0>>>0|o[e+1]<<8>>>0}function Bz(o,e,t){o[t+0]=e&255,e=e>>>8,o[t+1]=e&255}function Jo(o,e){return o[e]*2**24+o[e+1]*2**16+o[e+2]*2**8+o[e+3]}function er(o,e,t){o[t+3]=e,e=e>>>8,o[t+2]=e,e=e>>>8,o[t+1]=e,e=e>>>8,o[t]=e}function xR(o,e){return o[e]}function kR(o,e,t){o[t]=e}let gS;function QF(){return gS||(gS=new TextDecoder("UTF-16LE")),gS}let mS;function Wz(){return mS||(mS=new TextDecoder("UTF-16BE")),mS}let pS;function XF(){return pS||(pS=C6()?QF():Wz()),pS}function Hz(o,e,t){const i=new Uint16Array(o.buffer,e,t);return t>0&&(i[0]===65279||i[0]===65534)?Vz(o,e,t):QF().decode(i)}function Vz(o,e,t){const i=[];let n=0;for(let s=0;s=this._capacity){this._flushBuffer(),this._completedStrings[this._completedStrings.length]=e;return}for(let i=0;i[r[0].toLowerCase(),r[1].toLowerCase()]);const t=[];for(let r=0;r{const[l,c]=r,[d,h]=a;return l===d||l===h||c===d||c===h},n=(r,a)=>{const l=Math.min(r,a),c=Math.max(r,a);for(let d=0;d0&&s.push({open:a,close:l})}return s}class Uz{constructor(e,t){this._richEditBracketsBrand=void 0;const i=zz(t);this.brackets=i.map((n,s)=>new vC(e,s,n.open,n.close,$z(n.open,n.close,i,s),Kz(n.open,n.close,i,s))),this.forwardRegex=jz(this.brackets),this.reversedRegex=qz(this.brackets),this.textIsBracket={},this.textIsOpenBracket={},this.maxBracketLength=0;for(const n of this.brackets){for(const s of n.open)this.textIsBracket[s]=n,this.textIsOpenBracket[s]=!0,this.maxBracketLength=Math.max(this.maxBracketLength,s.length);for(const s of n.close)this.textIsBracket[s]=n,this.textIsOpenBracket[s]=!1,this.maxBracketLength=Math.max(this.maxBracketLength,s.length)}}}function JF(o,e,t,i){for(let n=0,s=e.length;n=0&&i.push(a);for(const a of r.close)a.indexOf(o)>=0&&i.push(a)}}function e3(o,e){return o.length-e.length}function $0(o){if(o.length<=1)return o;const e=[],t=new Set;for(const i of o)t.has(i)||(e.push(i),t.add(i));return e}function $z(o,e,t,i){let n=[];n=n.concat(o),n=n.concat(e);for(let s=0,r=n.length;s=0;r--)n[s++]=i.charCodeAt(r);return XF().decode(n)}let e=null,t=null;return function(n){return e!==n&&(e=n,t=o(e)),t}})();class Co{static _findPrevBracketInText(e,t,i,n){const s=i.match(e);if(!s)return null;const r=i.length-(s.index||0),a=s[0].length,l=n+r;return new I(t,l-a+1,t,l+1)}static findPrevBracketInRange(e,t,i,n,s){const a=cT(i).substring(i.length-s,i.length-n);return this._findPrevBracketInText(e,t,a,n)}static findNextBracketInText(e,t,i,n){const s=i.match(e);if(!s)return null;const r=s.index||0,a=s[0].length;if(a===0)return null;const l=n+r;return new I(t,l+1,t,l+1+a)}static findNextBracketInRange(e,t,i,n,s){const r=i.substring(n,s);return this.findNextBracketInText(e,t,r,n)}}class Zz{constructor(e){this._richEditBrackets=e}getElectricCharacters(){const e=[];if(this._richEditBrackets)for(const t of this._richEditBrackets.brackets)for(const i of t.close){const n=i.charAt(i.length-1);e.push(n)}return Eh(e)}onElectricCharacter(e,t,i){if(!this._richEditBrackets||this._richEditBrackets.brackets.length===0)return null;const n=t.findTokenIndexAtOffset(i-1);if(Pr(t.getStandardTokenType(n)))return null;const s=this._richEditBrackets.reversedRegex,r=t.getLineContent().substring(0,i-1)+e,a=Co.findPrevBracketInRange(s,1,r,0,r.length);if(!a)return null;const l=r.substring(a.startColumn-1,a.endColumn-1).toLowerCase();if(this._richEditBrackets.textIsOpenBracket[l])return null;const d=t.getActualLineContentBefore(a.startColumn-1);return/^\s*$/.test(d)?{matchOpenBracket:l}:null}}function Db(o){return o.global&&(o.lastIndex=0),!0}class Yz{constructor(e){this._indentationRules=e}shouldIncrease(e){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&Db(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(e))}shouldDecrease(e){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&Db(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(e))}shouldIndentNextLine(e){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&Db(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(e))}shouldIgnore(e){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&Db(this._indentationRules.unIndentedLinePattern)&&this._indentationRules.unIndentedLinePattern.test(e))}getIndentMetadata(e){let t=0;return this.shouldIncrease(e)&&(t+=1),this.shouldDecrease(e)&&(t+=2),this.shouldIndentNextLine(e)&&(t+=4),this.shouldIgnore(e)&&(t+=8),t}}class Ju{constructor(e){e=e||{},e.brackets=e.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],e.brackets.forEach(t=>{const i=Ju._createOpenBracketRegExp(t[0]),n=Ju._createCloseBracketRegExp(t[1]);i&&n&&this._brackets.push({open:t[0],openRegExp:i,close:t[1],closeRegExp:n})}),this._regExpRules=e.onEnterRules||[]}onEnter(e,t,i,n){if(e>=3)for(let s=0,r=this._regExpRules.length;sc.reg?(c.reg.lastIndex=0,c.reg.test(c.text)):!0))return a.action}if(e>=2&&i.length>0&&n.length>0)for(let s=0,r=this._brackets.length;s=2&&i.length>0){for(let s=0,r=this._brackets.length;s"u"?t:s}function Xz(o){return o.replace(/[\[\]]/g,"")}const qt=He("languageService");class Gr{constructor(e,t=[],i=!1){this.ctor=e,this.staticArguments=t,this.supportsDelayedInstantiation=i}}const n3=[];function Qe(o,e,t){e instanceof Gr||(e=new Gr(e,[],!!t)),n3.push([o,e])}function IR(){return n3}const il=Object.freeze({text:"text/plain",binary:"application/octet-stream",unknown:"application/unknown",markdown:"text/markdown",latex:"text/latex",uriList:"text/uri-list"}),K0={JSONContribution:"base.contributions.json"};function Jz(o){return o.length>0&&o.charAt(o.length-1)==="#"?o.substring(0,o.length-1):o}class eU{constructor(){this._onDidChangeSchema=new A,this.schemasById={}}registerSchema(e,t){this.schemasById[Jz(e)]=t,this._onDidChangeSchema.fire(e)}notifySchemaChanged(e){this._onDidChangeSchema.fire(e)}}const tU=new eU;Bi.add(K0.JSONContribution,tU);const su={Configuration:"base.contributions.configuration"},Ib="vscode://schemas/settings/resourceLanguage",ER=Bi.as(K0.JSONContribution);class iU{constructor(){this.registeredConfigurationDefaults=[],this.overrideIdentifiers=new Set,this._onDidSchemaChange=new A,this._onDidUpdateConfiguration=new A,this.configurationDefaultsOverrides=new Map,this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:m("defaultLanguageConfigurationOverrides.title","Default Language Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultLanguageConfigurationOverridesNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!0,allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.policyConfigurations=new Map,this.excludedConfigurationProperties={},ER.registerSchema(Ib,this.resourceLanguageSettingsSchema),this.registerOverridePropertyPatternKey()}registerConfiguration(e,t=!0){this.registerConfigurations([e],t)}registerConfigurations(e,t=!0){const i=new Set;this.doRegisterConfigurations(e,t,i),ER.registerSchema(Ib,this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:i})}registerDefaultConfigurations(e){const t=new Set;this.doRegisterDefaultConfigurations(e,t),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:t,defaultsOverrides:!0})}doRegisterDefaultConfigurations(e,t){this.registeredConfigurationDefaults.push(...e);const i=[];for(const{overrides:n,source:s}of e)for(const r in n){t.add(r);const a=this.configurationDefaultsOverrides.get(r)??this.configurationDefaultsOverrides.set(r,{configurationDefaultOverrides:[]}).get(r),l=n[r];if(a.configurationDefaultOverrides.push({value:l,source:s}),Pc.test(r)){const c=this.mergeDefaultConfigurationsForOverrideIdentifier(r,l,s,a.configurationDefaultOverrideValue);if(!c)continue;a.configurationDefaultOverrideValue=c,this.updateDefaultOverrideProperty(r,c,s),i.push(...wC(r))}else{const c=this.mergeDefaultConfigurationsForConfigurationProperty(r,l,s,a.configurationDefaultOverrideValue);if(!c)continue;a.configurationDefaultOverrideValue=c;const d=this.configurationProperties[r];d&&(this.updatePropertyDefaultValue(r,d),this.updateSchema(r,d))}}this.doRegisterOverrideIdentifiers(i)}updateDefaultOverrideProperty(e,t,i){const n={type:"object",default:t.value,description:m("defaultLanguageConfiguration.description","Configure settings to be overridden for the {0} language.",Xz(e)),$ref:Ib,defaultDefaultValue:t.value,source:i,defaultValueSource:i};this.configurationProperties[e]=n,this.defaultLanguageConfigurationOverridesNode.properties[e]=n}mergeDefaultConfigurationsForOverrideIdentifier(e,t,i,n){const s=n?.value||{},r=n?.source??new Map;if(!(r instanceof Map)){console.error("objectConfigurationSources is not a Map");return}for(const a of Object.keys(t)){const l=t[a];if(Oi(l)&&(Es(s[a])||Oi(s[a]))){if(s[a]={...s[a]??{},...l},i)for(const d in l)r.set(`${a}.${d}`,i)}else s[a]=l,i?r.set(a,i):r.delete(a)}return{value:s,source:r}}mergeDefaultConfigurationsForConfigurationProperty(e,t,i,n){const s=this.configurationProperties[e],r=n?.value??s?.defaultDefaultValue;let a=i;if(Oi(t)&&(s!==void 0&&s.type==="object"||s===void 0&&(Es(r)||Oi(r)))){if(a=n?.source??new Map,!(a instanceof Map)){console.error("defaultValueSource is not a Map");return}for(const c in t)i&&a.set(`${e}.${c}`,i);t={...Oi(r)?r:{},...t}}return{value:t,source:a}}registerOverrideIdentifiers(e){this.doRegisterOverrideIdentifiers(e),this._onDidSchemaChange.fire()}doRegisterOverrideIdentifiers(e){for(const t of e)this.overrideIdentifiers.add(t);this.updateOverridePropertyPatternKey()}doRegisterConfigurations(e,t,i){e.forEach(n=>{this.validateAndRegisterProperties(n,t,n.extensionInfo,n.restrictedProperties,void 0,i),this.configurationContributors.push(n),this.registerJSONConfiguration(n)})}validateAndRegisterProperties(e,t=!0,i,n,s=3,r){s=xs(e.scope)?s:e.scope;const a=e.properties;if(a)for(const c in a){const d=a[c];if(t&&oU(c,d)){delete a[c];continue}if(d.source=i,d.defaultDefaultValue=a[c].default,this.updatePropertyDefaultValue(c,d),Pc.test(c)?d.scope=void 0:(d.scope=xs(d.scope)?s:d.scope,d.restricted=xs(d.restricted)?!!n?.includes(c):d.restricted),a[c].hasOwnProperty("included")&&!a[c].included){this.excludedConfigurationProperties[c]=a[c],delete a[c];continue}else this.configurationProperties[c]=a[c],a[c].policy?.name&&this.policyConfigurations.set(a[c].policy.name,c);!a[c].deprecationMessage&&a[c].markdownDeprecationMessage&&(a[c].deprecationMessage=a[c].markdownDeprecationMessage),r.add(c)}const l=e.allOf;if(l)for(const c of l)this.validateAndRegisterProperties(c,t,i,n,s,r)}getConfigurationProperties(){return this.configurationProperties}getPolicyConfigurations(){return this.policyConfigurations}registerJSONConfiguration(e){const t=i=>{const n=i.properties;if(n)for(const r in n)this.updateSchema(r,n[r]);i.allOf?.forEach(t)};t(e)}updateSchema(e,t){switch(t.scope){case 1:break;case 2:break;case 6:break;case 3:break;case 4:break;case 5:this.resourceLanguageSettingsSchema.properties[e]=t;break}}updateOverridePropertyPatternKey(){for(const e of this.overrideIdentifiers.values()){const t=`[${e}]`,i={type:"object",description:m("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:m("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:Ib};this.updatePropertyDefaultValue(t,i)}}registerOverridePropertyPatternKey(){m("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),m("overrideSettings.errorMessage","This setting does not support per-language configuration."),this._onDidSchemaChange.fire()}updatePropertyDefaultValue(e,t){const i=this.configurationDefaultsOverrides.get(e)?.configurationDefaultOverrideValue;let n,s;i&&(!t.disallowConfigurationDefault||!i.source)&&(n=i.value,s=i.source),Es(n)&&(n=t.defaultDefaultValue,s=void 0),Es(n)&&(n=sU(t.type)),t.default=n,t.defaultValueSource=s}}const s3="\\[([^\\]]+)\\]",NR=new RegExp(s3,"g"),nU=`^(${s3})+$`,Pc=new RegExp(nU);function wC(o){const e=[];if(Pc.test(o)){let t=NR.exec(o);for(;t?.length;){const i=t[1].trim();i&&e.push(i),t=NR.exec(o)}}return Eh(e)}function sU(o){switch(Array.isArray(o)?o[0]:o){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}const x1=new iU;Bi.add(su.Configuration,x1);function oU(o,e){return o.trim()?Pc.test(o)?m("config.property.languageDefault","Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",o):x1.getConfigurationProperties()[o]!==void 0?m("config.property.duplicate","Cannot register '{0}'. This property is already registered.",o):e.policy?.name&&x1.getPolicyConfigurations().get(e.policy?.name)!==void 0?m("config.policy.duplicate","Cannot register '{0}'. The associated policy {1} is already registered with {2}.",o,e.policy?.name,x1.getPolicyConfigurations().get(e.policy?.name)):null:m("config.property.empty","Cannot register an empty property")}const rU={ModesRegistry:"editor.modesRegistry"};class aU{constructor(){this._onDidChangeLanguages=new A,this.onDidChangeLanguages=this._onDidChangeLanguages.event,this._languages=[]}registerLanguage(e){return this._languages.push(e),this._onDidChangeLanguages.fire(void 0),{dispose:()=>{for(let t=0,i=this._languages.length;t{const l=new Set;return{info:new dU(this,a,l),closing:l}}),s=new XM(a=>{const l=new Set,c=new Set;return{info:new hU(this,a,l,c),opening:l,openingColorized:c}});for(const[a,l]of i){const c=n.get(a),d=s.get(l);c.closing.add(d.info),d.opening.add(c.info)}const r=t.colorizedBracketPairs?TR(t.colorizedBracketPairs):i.filter(a=>!(a[0]==="<"&&a[1]===">"));for(const[a,l]of r){const c=n.get(a),d=s.get(l);c.closing.add(d.info),d.openingColorized.add(c.info),d.opening.add(c.info)}this._openingBrackets=new Map([...n.cachedValues].map(([a,l])=>[a,l.info])),this._closingBrackets=new Map([...s.cachedValues].map(([a,l])=>[a,l.info]))}get openingBrackets(){return[...this._openingBrackets.values()]}get closingBrackets(){return[...this._closingBrackets.values()]}getOpeningBracketInfo(e){return this._openingBrackets.get(e)}getClosingBracketInfo(e){return this._closingBrackets.get(e)}getBracketInfo(e){return this.getOpeningBracketInfo(e)||this.getClosingBracketInfo(e)}getBracketRegExp(e){const t=Array.from([...this._openingBrackets.keys(),...this._closingBrackets.keys()]);return j_(t,e)}}function TR(o){return o.filter(([e,t])=>e!==""&&t!=="")}class o3{constructor(e,t){this.config=e,this.bracketText=t}get languageId(){return this.config.languageId}}class dU extends o3{constructor(e,t,i){super(e,t),this.openedBrackets=i,this.isOpeningBracket=!0}}class hU extends o3{constructor(e,t,i,n){super(e,t),this.openingBrackets=i,this.openingColorizedBrackets=n,this.isOpeningBracket=!1}closes(e){return e.config!==this.config?!1:this.openingBrackets.has(e)}closesColorized(e){return e.config!==this.config?!1:this.openingColorizedBrackets.has(e)}getOpeningBrackets(){return[...this.openingBrackets]}}var uU=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},MR=function(o,e){return function(t,i){e(t,i,o)}};class _S{constructor(e){this.languageId=e}affects(e){return this.languageId?this.languageId===e:!0}}const Gn=He("languageConfigurationService");let ik=class extends z{constructor(e,t){super(),this.configurationService=e,this.languageService=t,this._registry=this._register(new pU),this.onDidChangeEmitter=this._register(new A),this.onDidChange=this.onDidChangeEmitter.event,this.configurations=new Map;const i=new Set(Object.values(nk));this._register(this.configurationService.onDidChangeConfiguration(n=>{const s=n.change.keys.some(a=>i.has(a)),r=n.change.overrides.filter(([a,l])=>l.some(c=>i.has(c))).map(([a])=>a);if(s)this.configurations.clear(),this.onDidChangeEmitter.fire(new _S(void 0));else for(const a of r)this.languageService.isRegisteredLanguageId(a)&&(this.configurations.delete(a),this.onDidChangeEmitter.fire(new _S(a)))})),this._register(this._registry.onDidChange(n=>{this.configurations.delete(n.languageId),this.onDidChangeEmitter.fire(new _S(n.languageId))}))}register(e,t,i){return this._registry.register(e,t,i)}getLanguageConfiguration(e){let t=this.configurations.get(e);return t||(t=fU(e,this._registry,this.configurationService,this.languageService),this.configurations.set(e,t)),t}};ik=uU([MR(0,lt),MR(1,qt)],ik);function fU(o,e,t,i){let n=e.getLanguageConfiguration(o);if(!n){if(!i.isRegisteredLanguageId(o))return new Pf(o,{});n=new Pf(o,{})}const s=gU(n.languageId,t),r=a3([n.underlyingConfig,s]);return new Pf(n.languageId,r)}const nk={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function gU(o,e){const t=e.getValue(nk.brackets,{overrideIdentifier:o}),i=e.getValue(nk.colorizedBracketPairs,{overrideIdentifier:o});return{brackets:RR(t),colorizedBracketPairs:RR(i)}}function RR(o){if(Array.isArray(o))return o.map(e=>{if(!(!Array.isArray(e)||e.length!==2))return[e[0],e[1]]}).filter(e=>!!e)}function r3(o,e,t){const i=o.getLineContent(e);let n=pi(i);return n.length>t-1&&(n=n.substring(0,t-1)),n}class mU{constructor(e){this.languageId=e,this._resolved=null,this._entries=[],this._order=0,this._resolved=null}register(e,t){const i=new AR(e,t,++this._order);return this._entries.push(i),this._resolved=null,_e(()=>{for(let n=0;ne.configuration)))}}function a3(o){let e={comments:void 0,brackets:void 0,wordPattern:void 0,indentationRules:void 0,onEnterRules:void 0,autoClosingPairs:void 0,surroundingPairs:void 0,autoCloseBefore:void 0,folding:void 0,colorizedBracketPairs:void 0,__electricCharacterSupport:void 0};for(const t of o)e={comments:t.comments||e.comments,brackets:t.brackets||e.brackets,wordPattern:t.wordPattern||e.wordPattern,indentationRules:t.indentationRules||e.indentationRules,onEnterRules:t.onEnterRules||e.onEnterRules,autoClosingPairs:t.autoClosingPairs||e.autoClosingPairs,surroundingPairs:t.surroundingPairs||e.surroundingPairs,autoCloseBefore:t.autoCloseBefore||e.autoCloseBefore,folding:t.folding||e.folding,colorizedBracketPairs:t.colorizedBracketPairs||e.colorizedBracketPairs,__electricCharacterSupport:t.__electricCharacterSupport||e.__electricCharacterSupport};return e}class AR{constructor(e,t,i){this.configuration=e,this.priority=t,this.order=i}static cmp(e,t){return e.priority===t.priority?e.order-t.order:e.priority-t.priority}}class PR{constructor(e){this.languageId=e}}class pU extends z{constructor(){super(),this._entries=new Map,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._register(this.register(Bs,{brackets:[["(",")"],["[","]"],["{","}"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],colorizedBracketPairs:[],folding:{offSide:!0}},0))}register(e,t,i=0){let n=this._entries.get(e);n||(n=new mU(e),this._entries.set(e,n));const s=n.register(t,i);return this._onDidChange.fire(new PR(e)),_e(()=>{s.dispose(),this._onDidChange.fire(new PR(e))})}getLanguageConfiguration(e){return this._entries.get(e)?.getResolvedConfiguration()||null}}class Pf{constructor(e,t){this.languageId=e,this.underlyingConfig=t,this._brackets=null,this._electricCharacter=null,this._onEnterSupport=this.underlyingConfig.brackets||this.underlyingConfig.indentationRules||this.underlyingConfig.onEnterRules?new Ju(this.underlyingConfig):null,this.comments=Pf._handleComments(this.underlyingConfig),this.characterPair=new ek(this.underlyingConfig),this.wordDefinition=this.underlyingConfig.wordPattern||EN,this.indentationRules=this.underlyingConfig.indentationRules,this.underlyingConfig.indentationRules?this.indentRulesSupport=new Yz(this.underlyingConfig.indentationRules):this.indentRulesSupport=null,this.foldingRules=this.underlyingConfig.folding||{},this.bracketsNew=new cU(e,this.underlyingConfig)}getWordDefinition(){return NN(this.wordDefinition)}get brackets(){return!this._brackets&&this.underlyingConfig.brackets&&(this._brackets=new Uz(this.languageId,this.underlyingConfig.brackets)),this._brackets}get electricCharacter(){return this._electricCharacter||(this._electricCharacter=new Zz(this.brackets)),this._electricCharacter}onEnter(e,t,i,n){return this._onEnterSupport?this._onEnterSupport.onEnter(e,t,i,n):null}getAutoClosingPairs(){return new Pz(this.characterPair.getAutoClosingPairs())}getAutoCloseBeforeSet(e){return this.characterPair.getAutoCloseBeforeSet(e)}getSurroundingPairs(){return this.characterPair.getSurroundingPairs()}static _handleComments(e){const t=e.comments;if(!t)return null;const i={};if(t.lineComment&&(i.lineCommentToken=t.lineComment),t.blockComment){const[n,s]=t.blockComment;i.blockCommentStartToken=n,i.blockCommentEndToken=s}return i}}Qe(Gn,ik,1);class $l{constructor(e,t,i,n){this.originalStart=e,this.originalLength=t,this.modifiedStart=i,this.modifiedLength=n}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}class OR{constructor(e){this.source=e}getElements(){const e=this.source,t=new Int32Array(e.length);for(let i=0,n=e.length;i0||this.m_modifiedCount>0)&&this.m_changes.push(new $l(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824}AddOriginalElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_originalCount++}AddModifiedElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_modifiedCount++}getChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes}getReverseChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes}}class Yr{constructor(e,t,i=null){this.ContinueProcessingPredicate=i,this._originalSequence=e,this._modifiedSequence=t;const[n,s,r]=Yr._getElements(e),[a,l,c]=Yr._getElements(t);this._hasStrings=r&&c,this._originalStringElements=n,this._originalElementsOrHash=s,this._modifiedStringElements=a,this._modifiedElementsOrHash=l,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(e){return e.length>0&&typeof e[0]=="string"}static _getElements(e){const t=e.getElements();if(Yr._isStringArray(t)){const i=new Int32Array(t.length);for(let n=0,s=t.length;n=e&&n>=i&&this.ElementsAreEqual(t,n);)t--,n--;if(e>t||i>n){let h;return i<=n?(ku.Assert(e===t+1,"originalStart should only be one more than originalEnd"),h=[new $l(e,0,i,n-i+1)]):e<=t?(ku.Assert(i===n+1,"modifiedStart should only be one more than modifiedEnd"),h=[new $l(e,t-e+1,i,0)]):(ku.Assert(e===t+1,"originalStart should only be one more than originalEnd"),ku.Assert(i===n+1,"modifiedStart should only be one more than modifiedEnd"),h=[]),h}const r=[0],a=[0],l=this.ComputeRecursionPoint(e,t,i,n,r,a,s),c=r[0],d=a[0];if(l!==null)return l;if(!s[0]){const h=this.ComputeDiffRecursive(e,c,i,d,s);let u=[];return s[0]?u=[new $l(c+1,t-(c+1)+1,d+1,n-(d+1)+1)]:u=this.ComputeDiffRecursive(c+1,t,d+1,n,s),this.ConcatenateChanges(h,u)}return[new $l(e,t-e+1,i,n-i+1)]}WALKTRACE(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_,b,C){let w=null,v=null,y=new FR,x=t,L=i,E=f[0]-_[0]-n,N=-1073741824,H=this.m_forwardHistory.length-1;do{const F=E+e;F===x||F=0&&(c=this.m_forwardHistory[H],e=c[0],x=1,L=c.length-1)}while(--H>=-1);if(w=y.getReverseChanges(),C[0]){let F=f[0]+1,W=_[0]+1;if(w!==null&&w.length>0){const j=w[w.length-1];F=Math.max(F,j.getOriginalEnd()),W=Math.max(W,j.getModifiedEnd())}v=[new $l(F,u-F+1,W,p-W+1)]}else{y=new FR,x=r,L=a,E=f[0]-_[0]-l,N=1073741824,H=b?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const F=E+s;F===x||F=d[F+1]?(h=d[F+1]-1,g=h-E-l,h>N&&y.MarkNextChange(),N=h+1,y.AddOriginalElement(h+1,g+1),E=F+1-s):(h=d[F-1],g=h-E-l,h>N&&y.MarkNextChange(),N=h,y.AddModifiedElement(h+1,g+1),E=F-1-s),H>=0&&(d=this.m_reverseHistory[H],s=d[0],x=1,L=d.length-1)}while(--H>=-1);v=y.getChanges()}return this.ConcatenateChanges(w,v)}ComputeRecursionPoint(e,t,i,n,s,r,a){let l=0,c=0,d=0,h=0,u=0,f=0;e--,i--,s[0]=0,r[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];const g=t-e+(n-i),p=g+1,_=new Int32Array(p),b=new Int32Array(p),C=n-i,w=t-e,v=e-i,y=t-n,L=(w-C)%2===0;_[C]=e,b[w]=t,a[0]=!1;for(let E=1;E<=g/2+1;E++){let N=0,H=0;d=this.ClipDiagonalBound(C-E,E,C,p),h=this.ClipDiagonalBound(C+E,E,C,p);for(let W=d;W<=h;W+=2){W===d||WN+H&&(N=l,H=c),!L&&Math.abs(W-w)<=E-1&&l>=b[W])return s[0]=l,r[0]=c,j<=b[W]&&E<=1448?this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a):null}const F=(N-e+(H-i)-E)/2;if(this.ContinueProcessingPredicate!==null&&!this.ContinueProcessingPredicate(N,F))return a[0]=!0,s[0]=N,r[0]=H,F>0&&E<=1448?this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a):(e++,i++,[new $l(e,t-e+1,i,n-i+1)]);u=this.ClipDiagonalBound(w-E,E,w,p),f=this.ClipDiagonalBound(w+E,E,w,p);for(let W=u;W<=f;W+=2){W===u||W=b[W+1]?l=b[W+1]-1:l=b[W-1],c=l-(W-w)-y;const j=l;for(;l>e&&c>i&&this.ElementsAreEqual(l,c);)l--,c--;if(b[W]=l,L&&Math.abs(W-C)<=E&&l<=_[W])return s[0]=l,r[0]=c,j>=_[W]&&E<=1448?this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a):null}if(E<=1447){let W=new Int32Array(h-d+2);W[0]=C-d+1,Du.Copy2(_,d,W,1,h-d+1),this.m_forwardHistory.push(W),W=new Int32Array(f-u+2),W[0]=w-u+1,Du.Copy2(b,u,W,1,f-u+1),this.m_reverseHistory.push(W)}}return this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a)}PrettifyChanges(e){for(let t=0;t0,a=i.modifiedLength>0;for(;i.originalStart+i.originalLength=0;t--){const i=e[t];let n=0,s=0;if(t>0){const h=e[t-1];n=h.originalStart+h.originalLength,s=h.modifiedStart+h.modifiedLength}const r=i.originalLength>0,a=i.modifiedLength>0;let l=0,c=this._boundaryScore(i.originalStart,i.originalLength,i.modifiedStart,i.modifiedLength);for(let h=1;;h++){const u=i.originalStart-h,f=i.modifiedStart-h;if(uc&&(c=p,l=h)}i.originalStart-=l,i.modifiedStart-=l;const d=[null];if(t>0&&this.ChangesOverlap(e[t-1],e[t],d)){e[t-1]=d[0],e.splice(t,1),t++;continue}}if(this._hasStrings)for(let t=1,i=e.length;t0&&f>l&&(l=f,c=h,d=u)}return l>0?[c,d]:null}_contiguousSequenceScore(e,t,i){let n=0;for(let s=0;s=this._originalElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._originalStringElements[e])}_OriginalRegionIsBoundary(e,t){if(this._OriginalIsBoundary(e)||this._OriginalIsBoundary(e-1))return!0;if(t>0){const i=e+t;if(this._OriginalIsBoundary(i-1)||this._OriginalIsBoundary(i))return!0}return!1}_ModifiedIsBoundary(e){return e<=0||e>=this._modifiedElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[e])}_ModifiedRegionIsBoundary(e,t){if(this._ModifiedIsBoundary(e)||this._ModifiedIsBoundary(e-1))return!0;if(t>0){const i=e+t;if(this._ModifiedIsBoundary(i-1)||this._ModifiedIsBoundary(i))return!0}return!1}_boundaryScore(e,t,i,n){const s=this._OriginalRegionIsBoundary(e,t)?1:0,r=this._ModifiedRegionIsBoundary(i,n)?1:0;return s+r}ConcatenateChanges(e,t){const i=[];if(e.length===0||t.length===0)return t.length>0?t:e;if(this.ChangesOverlap(e[e.length-1],t[0],i)){const n=new Array(e.length+t.length-1);return Du.Copy(e,0,n,0,e.length-1),n[e.length-1]=i[0],Du.Copy(t,1,n,e.length,t.length-1),n}else{const n=new Array(e.length+t.length);return Du.Copy(e,0,n,0,e.length),Du.Copy(t,0,n,e.length,t.length),n}}ChangesOverlap(e,t,i){if(ku.Assert(e.originalStart<=t.originalStart,"Left change is not less than or equal to right change"),ku.Assert(e.modifiedStart<=t.modifiedStart,"Left change is not less than or equal to right change"),e.originalStart+e.originalLength>=t.originalStart||e.modifiedStart+e.modifiedLength>=t.modifiedStart){const n=e.originalStart;let s=e.originalLength;const r=e.modifiedStart;let a=e.modifiedLength;return e.originalStart+e.originalLength>=t.originalStart&&(s=t.originalStart+t.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=t.modifiedStart&&(a=t.modifiedStart+t.modifiedLength-e.modifiedStart),i[0]=new $l(n,s,r,a),!0}else return i[0]=null,!1}ClipDiagonalBound(e,t,i,n){if(e>=0&&e255?255:o|0}function Iu(o){return o<0?0:o>4294967295?4294967295:o|0}class Wg{constructor(e){const t=yC(e);this._defaultValue=t,this._asciiMap=Wg._createAsciiMap(t),this._map=new Map}static _createAsciiMap(e){const t=new Uint8Array(256);return t.fill(e),t}set(e,t){const i=yC(t);e>=0&&e<256?this._asciiMap[e]=i:this._map.set(e,i)}get(e){return e>=0&&e<256?this._asciiMap[e]:this._map.get(e)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class bU{constructor(){this._actual=new Wg(0)}add(e){this._actual.set(e,1)}has(e){return this._actual.get(e)===1}clear(){return this._actual.clear()}}class CU{constructor(e,t,i){const n=new Uint8Array(e*t);for(let s=0,r=e*t;st&&(t=l),a>i&&(i=a),c>i&&(i=c)}t++,i++;const n=new CU(i,t,0);for(let s=0,r=e.length;s=this._maxCharCode?0:this._states.get(e,t)}}let bS=null;function wU(){return bS===null&&(bS=new vU([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),bS}let dm=null;function yU(){if(dm===null){dm=new Wg(0);const o=` <>'"、。。、,.:;‘〈「『〔([{「」}])〕』」〉’`~…`;for(let t=0;tn);if(n>0){const a=t.charCodeAt(n-1),l=t.charCodeAt(r);(a===40&&l===41||a===91&&l===93||a===123&&l===125)&&r--}return{range:{startLineNumber:i,startColumn:n+1,endLineNumber:i,endColumn:r+2},url:t.substring(n,r+1)}}static computeLinks(e,t=wU()){const i=yU(),n=[];for(let s=1,r=e.getLineCount();s<=r;s++){const a=e.getLineContent(s),l=a.length;let c=0,d=0,h=0,u=1,f=!1,g=!1,p=!1,_=!1;for(;c=0?(n+=i?1:-1,n<0?n=e.length-1:n%=e.length,e[n]):null}};Dw.INSTANCE=new Dw;let sk=Dw;const Dp=class Dp{static getChannel(e){return e.getChannel(Dp.CHANNEL_NAME)}static setChannel(e,t){e.setChannel(Dp.CHANNEL_NAME,t)}};Dp.CHANNEL_NAME="editorWorkerHost";let ok=Dp;var BR,WR;class LU{constructor(e,t){this.uri=e,this.value=t}}function xU(o){return Array.isArray(o)}const Pd=class Pd{constructor(e,t){if(this[BR]="ResourceMap",e instanceof Pd)this.map=new Map(e.map),this.toKey=t??Pd.defaultToKey;else if(xU(e)){this.map=new Map,this.toKey=t??Pd.defaultToKey;for(const[i,n]of e)this.set(i,n)}else this.map=new Map,this.toKey=e??Pd.defaultToKey}set(e,t){return this.map.set(this.toKey(e),new LU(e,t)),this}get(e){return this.map.get(this.toKey(e))?.value}has(e){return this.map.has(this.toKey(e))}get size(){return this.map.size}clear(){this.map.clear()}delete(e){return this.map.delete(this.toKey(e))}forEach(e,t){typeof t<"u"&&(e=e.bind(t));for(const[i,n]of this.map)e(n.value,n.uri,this)}*values(){for(const e of this.map.values())yield e.value}*keys(){for(const e of this.map.values())yield e.uri}*entries(){for(const e of this.map.values())yield[e.uri,e.value]}*[(BR=Symbol.toStringTag,Symbol.iterator)](){for(const[,e]of this.map)yield[e.uri,e.value]}};Pd.defaultToKey=e=>e.toString();let cs=Pd;class kU{constructor(){this[WR]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,t=0){const i=this._map.get(e);if(i)return t!==0&&this.touch(i,t),i.value}set(e,t,i=0){let n=this._map.get(e);if(n)n.value=t,i!==0&&this.touch(n,i);else{switch(n={key:e,value:t,next:void 0,previous:void 0},i){case 0:this.addItemLast(n);break;case 1:this.addItemFirst(n);break;case 2:this.addItemLast(n);break;default:this.addItemLast(n);break}this._map.set(e,n),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){const t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){const i=this._state;let n=this._head;for(;n;){if(t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),this._state!==i)throw new Error("LinkedMap got modified during iteration.");n=n.next}}keys(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:i.key,done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}values(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:i.value,done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}entries(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:[i.key,i.value],done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}[(WR=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._head,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.next,i--;this._head=t,this._size=i,t&&(t.previous=void 0),this._state++}trimNew(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._tail,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.previous,i--;this._tail=t,this._size=i,t&&(t.next=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw new Error("Invalid list");this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw new Error("Invalid list");this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{const t=e.next,i=e.previous;if(!t||!i)throw new Error("Invalid list");t.previous=i,i.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,t){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(t!==1&&t!==2)){if(t===1){if(e===this._head)return;const i=e.next,n=e.previous;e===this._tail?(n.next=void 0,this._tail=n):(i.previous=n,n.next=i),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(t===2){if(e===this._tail)return;const i=e.next,n=e.previous;e===this._head?(i.previous=void 0,this._head=i):(i.previous=n,n.next=i),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){const e=[];return this.forEach((t,i)=>{e.push([i,t])}),e}fromJSON(e){this.clear();for(const[t,i]of e)this.set(t,i)}}class DU extends kU{constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get(e,t=2){return super.get(e,t)}peek(e){return super.get(e,0)}set(e,t){return super.set(e,t,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}class ou extends DU{constructor(e,t=1){super(e,t)}trim(e){this.trimOld(e)}set(e,t){return super.set(e,t),this.checkTrim(),this}}class IU{constructor(e){if(this._m1=new Map,this._m2=new Map,e)for(const[t,i]of e)this.set(t,i)}clear(){this._m1.clear(),this._m2.clear()}set(e,t){this._m1.set(e,t),this._m2.set(t,e)}get(e){return this._m1.get(e)}getKey(e){return this._m2.get(e)}delete(e){const t=this._m1.get(e);return t===void 0?!1:(this._m1.delete(e),this._m2.delete(t),!0)}keys(){return this._m1.keys()}values(){return this._m1.values()}}class dT{constructor(){this.map=new Map}add(e,t){let i=this.map.get(e);i||(i=new Set,this.map.set(e,i)),i.add(t)}delete(e,t){const i=this.map.get(e);i&&(i.delete(t),i.size===0&&this.map.delete(e))}forEach(e,t){const i=this.map.get(e);i&&i.forEach(t)}get(e){const t=this.map.get(e);return t||new Set}}class EU extends Wg{constructor(e,t){super(0),this._segmenter=null,this._cachedLine=null,this._cachedSegments=[],this.intlSegmenterLocales=t,this.intlSegmenterLocales.length>0?this._segmenter=new Intl.Segmenter(this.intlSegmenterLocales,{granularity:"word"}):this._segmenter=null;for(let i=0,n=e.length;it)break;i=n}return i}findNextIntlWordAtOrAfterOffset(e,t){for(const i of this._getIntlSegmenterWordsOnLine(e))if(!(i.index=0;let t=null;try{t=uF(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:e,global:!0,unicode:!0})}catch{return null}if(!t)return null;let i=!this.isRegex&&!e;return i&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(i=this.matchCase),new TU(t,this.wordSeparators?cg(this.wordSeparators,[]):null,i?this.searchString:null)}}function PU(o){if(!o||o.length===0)return!1;for(let e=0,t=o.length;e=t)break;const n=o.charCodeAt(e);if(n===110||n===114||n===87)return!0}}return!1}function bd(o,e,t){if(!t)return new Qp(o,null);const i=[];for(let n=0,s=e.length;n>0);t[s]>=e?n=s-1:t[s+1]>=e?(i=s,n=s):i=s+1}return i+1}}class Eb{static findMatches(e,t,i,n,s){const r=t.parseSearchRequest();return r?r.regex.multiline?this._doFindMatchesMultiline(e,i,new ef(r.wordSeparators,r.regex),n,s):this._doFindMatchesLineByLine(e,i,r,n,s):[]}static _getMultilineMatchRange(e,t,i,n,s,r){let a,l=0;n?(l=n.findLineFeedCountBeforeOffset(s),a=t+s+l):a=t+s;let c;if(n){const f=n.findLineFeedCountBeforeOffset(s+r.length)-l;c=a+r.length+f}else c=a+r.length;const d=e.getPositionAt(a),h=e.getPositionAt(c);return new I(d.lineNumber,d.column,h.lineNumber,h.column)}static _doFindMatchesMultiline(e,t,i,n,s){const r=e.getOffsetAt(t.getStartPosition()),a=e.getValueInRange(t,1),l=e.getEOL()===`\r +`?new VR(a):null,c=[];let d=0,h;for(i.reset(0);h=i.next(a);)if(c[d++]=bd(this._getMultilineMatchRange(e,r,a,l,h.index,h[0]),h,n),d>=s)return c;return c}static _doFindMatchesLineByLine(e,t,i,n,s){const r=[];let a=0;if(t.startLineNumber===t.endLineNumber){const c=e.getLineContent(t.startLineNumber).substring(t.startColumn-1,t.endColumn-1);return a=this._findMatchesInLine(i,c,t.startLineNumber,t.startColumn-1,a,r,n,s),r}const l=e.getLineContent(t.startLineNumber).substring(t.startColumn-1);a=this._findMatchesInLine(i,l,t.startLineNumber,t.startColumn-1,a,r,n,s);for(let c=t.startLineNumber+1;c=l))return s;return s}const d=new ef(e.wordSeparators,e.regex);let h;d.reset(0);do if(h=d.next(t),h&&(r[s++]=bd(new I(i,h.index+1+n,i,h.index+1+h[0].length+n),h,a),s>=l))return s;while(h);return s}static findNextMatch(e,t,i,n){const s=t.parseSearchRequest();if(!s)return null;const r=new ef(s.wordSeparators,s.regex);return s.regex.multiline?this._doFindNextMatchMultiline(e,i,r,n):this._doFindNextMatchLineByLine(e,i,r,n)}static _doFindNextMatchMultiline(e,t,i,n){const s=new P(t.lineNumber,1),r=e.getOffsetAt(s),a=e.getLineCount(),l=e.getValueInRange(new I(s.lineNumber,s.column,a,e.getLineMaxColumn(a)),1),c=e.getEOL()===`\r +`?new VR(l):null;i.reset(t.column-1);const d=i.next(l);return d?bd(this._getMultilineMatchRange(e,r,l,c,d.index,d[0]),d,n):t.lineNumber!==1||t.column!==1?this._doFindNextMatchMultiline(e,new P(1,1),i,n):null}static _doFindNextMatchLineByLine(e,t,i,n){const s=e.getLineCount(),r=t.lineNumber,a=e.getLineContent(r),l=this._findFirstMatchInLine(i,a,r,t.column,n);if(l)return l;for(let c=1;c<=s;c++){const d=(r+c-1)%s,h=e.getLineContent(d+1),u=this._findFirstMatchInLine(i,h,d+1,1,n);if(u)return u}return null}static _findFirstMatchInLine(e,t,i,n,s){e.reset(n-1);const r=e.next(t);return r?bd(new I(i,r.index+1,i,r.index+1+r[0].length),r,s):null}static findPreviousMatch(e,t,i,n){const s=t.parseSearchRequest();if(!s)return null;const r=new ef(s.wordSeparators,s.regex);return s.regex.multiline?this._doFindPreviousMatchMultiline(e,i,r,n):this._doFindPreviousMatchLineByLine(e,i,r,n)}static _doFindPreviousMatchMultiline(e,t,i,n){const s=this._doFindMatchesMultiline(e,new I(1,1,t.lineNumber,t.column),i,n,10*AU);if(s.length>0)return s[s.length-1];const r=e.getLineCount();return t.lineNumber!==r||t.column!==e.getLineMaxColumn(r)?this._doFindPreviousMatchMultiline(e,new P(r,e.getLineMaxColumn(r)),i,n):null}static _doFindPreviousMatchLineByLine(e,t,i,n){const s=e.getLineCount(),r=t.lineNumber,a=e.getLineContent(r).substring(0,t.column-1),l=this._findLastMatchInLine(i,a,r,n);if(l)return l;for(let c=1;c<=s;c++){const d=(s+r-c-1)%s,h=e.getLineContent(d+1),u=this._findLastMatchInLine(i,h,d+1,n);if(u)return u}return null}static _findLastMatchInLine(e,t,i,n){let s=null,r;for(e.reset(0);r=e.next(t);)s=bd(new I(i,r.index+1,i,r.index+1+r[0].length),r,n);return s}}function OU(o,e,t,i,n){if(i===0)return!0;const s=e.charCodeAt(i-1);if(o.get(s)!==0||s===13||s===10)return!0;if(n>0){const r=e.charCodeAt(i);if(o.get(r)!==0)return!0}return!1}function FU(o,e,t,i,n){if(i+n===t)return!0;const s=e.charCodeAt(i+n);if(o.get(s)!==0||s===13||s===10)return!0;if(n>0){const r=e.charCodeAt(i+n-1);if(o.get(r)!==0)return!0}return!1}function hT(o,e,t,i,n){return OU(o,e,t,i,n)&&FU(o,e,t,i,n)}class ef{constructor(e,t){this._wordSeparators=e,this._searchRegex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(e){this._searchRegex.lastIndex=e,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(e){const t=e.length;let i;do{if(this._prevMatchStartIndex+this._prevMatchLength===t||(i=this._searchRegex.exec(e),!i))return null;const n=i.index,s=i[0].length;if(n===this._prevMatchStartIndex&&s===this._prevMatchLength){if(s===0){uC(e,t,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=n,this._prevMatchLength=s,!this._wordSeparators||hT(this._wordSeparators,e,t,n,s))return i}while(i);return null}}class BU{static computeUnicodeHighlights(e,t,i){const n=i?i.startLineNumber:1,s=i?i.endLineNumber:e.getLineCount(),r=new zR(t),a=r.getCandidateCodePoints();let l;a==="allNonBasicAscii"?l=new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):l=new RegExp(`${WU(Array.from(a))}`,"g");const c=new ef(null,l),d=[];let h=!1,u,f=0,g=0,p=0;e:for(let _=n,b=s;_<=b;_++){const C=e.getLineContent(_),w=C.length;c.reset(0);do if(u=c.next(C),u){let v=u.index,y=u.index+u[0].length;if(v>0){const N=C.charCodeAt(v-1);wi(N)&&v--}if(y+1=1e3){h=!0;break e}d.push(new I(_,v+1,_,y+1))}}while(u)}return{ranges:d,hasMore:h,ambiguousCharacterCount:f,invisibleCharacterCount:g,nonBasicAsciiCharacterCount:p}}static computeUnicodeHighlightReason(e,t){const i=new zR(t);switch(i.shouldHighlightNonBasicASCII(e,null)){case 0:return null;case 2:return{kind:1};case 3:{const s=e.codePointAt(0),r=i.ambiguousCharacters.getPrimaryConfusable(s),a=jp.getLocales().filter(l=>!jp.getInstance(new Set([...t.allowedLocales,l])).isAmbiguous(s));return{kind:0,confusableWith:String.fromCodePoint(r),notAmbiguousInLocales:a}}case 1:return{kind:2}}}}function WU(o,e){return`[${xl(o.map(i=>String.fromCodePoint(i)).join(""))}]`}class zR{constructor(e){this.options=e,this.allowedCodePoints=new Set(e.allowedCodePoints),this.ambiguousCharacters=jp.getInstance(new Set(e.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";const e=new Set;if(this.options.invisibleCharacters)for(const t of jm.codePoints)UR(String.fromCodePoint(t))||e.add(t);if(this.options.ambiguousCharacters)for(const t of this.ambiguousCharacters.getConfusableCodePoints())e.add(t);for(const t of this.allowedCodePoints)e.delete(t);return e}shouldHighlightNonBasicASCII(e,t){const i=e.codePointAt(0);if(this.allowedCodePoints.has(i))return 0;if(this.options.nonBasicASCII)return 1;let n=!1,s=!1;if(t)for(const r of t){const a=r.codePointAt(0),l=D0(r);n=n||l,!l&&!this.ambiguousCharacters.isAmbiguous(a)&&!jm.isInvisibleCharacter(a)&&(s=!0)}return!n&&s?0:this.options.invisibleCharacters&&!UR(e)&&jm.isInvisibleCharacter(i)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(i)?3:0}}function UR(o){return o===" "||o===` +`||o===" "}class D1{constructor(e,t,i){this.changes=e,this.moves=t,this.hitTimeout=i}}class l3{constructor(e,t){this.lineRangeMapping=e,this.changes=t}}class Re{static addRange(e,t){let i=0;for(;it))return new Re(e,t)}static ofLength(e){return new Re(0,e)}static ofStartAndLength(e,t){return new Re(e,e+t)}constructor(e,t){if(this.start=e,this.endExclusive=t,e>t)throw new nt(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(e){return new Re(this.start+e,this.endExclusive+e)}deltaStart(e){return new Re(this.start+e,this.endExclusive)}deltaEnd(e){return new Re(this.start,this.endExclusive+e)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}contains(e){return this.start<=e&&e=e.endExclusive}slice(e){return e.slice(this.start,this.endExclusive)}substring(e){return e.substring(this.start,this.endExclusive)}clip(e){if(this.isEmpty)throw new nt(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,e))}clipCyclic(e){if(this.isEmpty)throw new nt(`Invalid clipping range: ${this.toString()}`);return e=this.endExclusive?this.start+(e-this.start)%this.length:e}forEach(e){for(let t=this.start;te.toString()).join(", ")}intersectsStrict(e){let t=0;for(;te+t.length,0)}}function xC(o,e){const t=HU(o,e);if(t!==-1)return o[t]}function HU(o,e,t=o.length-1){for(let i=t;i>=0;i--){const n=o[i];if(e(n))return i}return-1}function dg(o,e){const t=Xp(o,e);return t===-1?void 0:o[t]}function Xp(o,e,t=0,i=o.length){let n=t,s=i;for(;n0&&(t=n)}return t}function zU(o,e){if(o.length===0)return;let t=o[0];for(let i=1;i=0&&(t=n)}return t}function UU(o,e){return fT(o,(t,i)=>-e(t,i))}function $U(o,e){if(o.length===0)return-1;let t=0;for(let i=1;i0&&(t=i)}return t}function KU(o,e){for(const t of o){const i=e(t);if(i!==void 0)return i}}let xe=class Wa{static fromRangeInclusive(e){return new Wa(e.startLineNumber,e.endLineNumber+1)}static joinMany(e){if(e.length===0)return[];let t=new to(e[0].slice());for(let i=1;it)throw new nt(`startLineNumber ${e} cannot be after endLineNumberExclusive ${t}`);this.startLineNumber=e,this.endLineNumberExclusive=t}contains(e){return this.startLineNumber<=e&&en.endLineNumberExclusive>=e.startLineNumber),i=Xp(this._normalizedRanges,n=>n.startLineNumber<=e.endLineNumberExclusive)+1;if(t===i)this._normalizedRanges.splice(t,0,e);else if(t===i-1){const n=this._normalizedRanges[t];this._normalizedRanges[t]=n.join(e)}else{const n=this._normalizedRanges[t].join(this._normalizedRanges[i-1]).join(e);this._normalizedRanges.splice(t,i-t,n)}}contains(e){const t=dg(this._normalizedRanges,i=>i.startLineNumber<=e);return!!t&&t.endLineNumberExclusive>e}intersects(e){const t=dg(this._normalizedRanges,i=>i.startLineNumbere.startLineNumber}getUnion(e){if(this._normalizedRanges.length===0)return e;if(e._normalizedRanges.length===0)return this;const t=[];let i=0,n=0,s=null;for(;i=r.startLineNumber?s=new xe(s.startLineNumber,Math.max(s.endLineNumberExclusive,r.endLineNumberExclusive)):(t.push(s),s=r)}return s!==null&&t.push(s),new to(t)}subtractFrom(e){const t=rk(this._normalizedRanges,r=>r.endLineNumberExclusive>=e.startLineNumber),i=Xp(this._normalizedRanges,r=>r.startLineNumber<=e.endLineNumberExclusive)+1;if(t===i)return new to([e]);const n=[];let s=e.startLineNumber;for(let r=t;rs&&n.push(new xe(s,a.startLineNumber)),s=a.endLineNumberExclusive}return se.toString()).join(", ")}getIntersection(e){const t=[];let i=0,n=0;for(;it.delta(e)))}}const Zl=class Zl{static betweenPositions(e,t){return e.lineNumber===t.lineNumber?new Zl(0,t.column-e.column):new Zl(t.lineNumber-e.lineNumber,t.column-1)}static ofRange(e){return Zl.betweenPositions(e.getStartPosition(),e.getEndPosition())}static ofText(e){let t=0,i=0;for(const n of e)n===` +`?(t++,i=0):i++;return new Zl(t,i)}constructor(e,t){this.lineCount=e,this.columnCount=t}isGreaterThanOrEqualTo(e){return this.lineCount!==e.lineCount?this.lineCount>e.lineCount:this.columnCount>=e.columnCount}createRange(e){return this.lineCount===0?new I(e.lineNumber,e.column,e.lineNumber,e.column+this.columnCount):new I(e.lineNumber,e.column,e.lineNumber+this.lineCount,this.columnCount+1)}addToPosition(e){return this.lineCount===0?new P(e.lineNumber,e.column+this.columnCount):new P(e.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}};Zl.zero=new Zl(0,0);let Po=Zl;class jU{constructor(e){this.text=e,this.lineStartOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let t=0;toT(e,(t,i)=>t.range.getEndPosition().isBeforeOrEqual(i.range.getStartPosition())))}apply(e){let t="",i=new P(1,1);for(const s of this.edits){const r=s.range,a=r.getStartPosition(),l=r.getEndPosition(),c=$R(i,a);c.isEmpty()||(t+=e.getValueOfRange(c)),t+=s.text,i=l}const n=$R(i,e.endPositionExclusive);return n.isEmpty()||(t+=e.getValueOfRange(n)),t}applyToString(e){const t=new qU(e);return this.apply(t)}getNewRanges(){const e=[];let t=0,i=0,n=0;for(const s of this.edits){const r=Po.ofText(s.text),a=P.lift({lineNumber:s.range.startLineNumber+i,column:s.range.startColumn+(s.range.startLineNumber===t?n:0)}),l=r.createRange(a);e.push(l),i=l.endLineNumber-s.range.endLineNumber,n=l.endColumn-s.range.endColumn,t=s.range.endLineNumber}return e}}class fa{constructor(e,t){this.range=e,this.text=t}toSingleEditOperation(){return{range:this.range,text:this.text}}}function $R(o,e){if(o.lineNumber===e.lineNumber&&o.column===Number.MAX_SAFE_INTEGER)return I.fromPositions(e,e);if(!o.isBeforeOrEqual(e))throw new nt("start must be before end");return new I(o.lineNumber,o.column,e.lineNumber,e.column)}class c3{get endPositionExclusive(){return this.length.addToPosition(new P(1,1))}}class qU extends c3{constructor(e){super(),this.value=e,this._t=new jU(this.value)}getValueOfRange(e){return this._t.getOffsetRange(e).substring(this.value)}get length(){return this._t.textLength}}class hn{static inverse(e,t,i){const n=[];let s=1,r=1;for(const l of e){const c=new hn(new xe(s,l.original.startLineNumber),new xe(r,l.modified.startLineNumber));c.modified.isEmpty||n.push(c),s=l.original.endLineNumberExclusive,r=l.modified.endLineNumberExclusive}const a=new hn(new xe(s,t+1),new xe(r,i+1));return a.modified.isEmpty||n.push(a),n}static clip(e,t,i){const n=[];for(const s of e){const r=s.original.intersect(t),a=s.modified.intersect(i);r&&!r.isEmpty&&a&&!a.isEmpty&&n.push(new hn(r,a))}return n}constructor(e,t){this.original=e,this.modified=t}toString(){return`{${this.original.toString()}->${this.modified.toString()}}`}flip(){return new hn(this.modified,this.original)}join(e){return new hn(this.original.join(e.original),this.modified.join(e.modified))}toRangeMapping(){const e=this.original.toInclusiveRange(),t=this.modified.toInclusiveRange();if(e&&t)return new Ls(e,t);if(this.original.startLineNumber===1||this.modified.startLineNumber===1){if(!(this.modified.startLineNumber===1&&this.original.startLineNumber===1))throw new nt("not a valid diff");return new Ls(new I(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new I(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1))}else return new Ls(new I(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),new I(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER))}toRangeMapping2(e,t){if(KR(this.original.endLineNumberExclusive,e)&&KR(this.modified.endLineNumberExclusive,t))return new Ls(new I(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new I(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1));if(!this.original.isEmpty&&!this.modified.isEmpty)return new Ls(I.fromPositions(new P(this.original.startLineNumber,1),Nu(new P(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),e)),I.fromPositions(new P(this.modified.startLineNumber,1),Nu(new P(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)));if(this.original.startLineNumber>1&&this.modified.startLineNumber>1)return new Ls(I.fromPositions(Nu(new P(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER),e),Nu(new P(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),e)),I.fromPositions(Nu(new P(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER),t),Nu(new P(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)));throw new nt}}function Nu(o,e){if(o.lineNumber<1)return new P(1,1);if(o.lineNumber>e.length)return new P(e.length,e[e.length-1].length+1);const t=e[o.lineNumber-1];return o.column>t.length+1?new P(o.lineNumber,t.length+1):o}function KR(o,e){return o>=1&&o<=e.length}class Ws extends hn{static fromRangeMappings(e){const t=xe.join(e.map(n=>xe.fromRangeInclusive(n.originalRange))),i=xe.join(e.map(n=>xe.fromRangeInclusive(n.modifiedRange)));return new Ws(t,i,e)}constructor(e,t,i){super(e,t),this.innerChanges=i}flip(){return new Ws(this.modified,this.original,this.innerChanges?.map(e=>e.flip()))}withInnerChangesFromLineRanges(){return new Ws(this.original,this.modified,[this.toRangeMapping()])}}class Ls{static assertSorted(e){for(let t=1;t${this.modifiedRange.toString()}}`}flip(){return new Ls(this.modifiedRange,this.originalRange)}toTextEdit(e){const t=e.getValueOfRange(this.modifiedRange);return new fa(this.originalRange,t)}}const GU=3;class ZU{computeDiff(e,t,i){const s=new XU(e,t,{maxComputationTime:i.maxComputationTimeMs,shouldIgnoreTrimWhitespace:i.ignoreTrimWhitespace,shouldComputeCharChanges:!0,shouldMakePrettyDiff:!0,shouldPostProcessCharChanges:!0}).computeDiff(),r=[];let a=null;for(const l of s.changes){let c;l.originalEndLineNumber===0?c=new xe(l.originalStartLineNumber+1,l.originalStartLineNumber+1):c=new xe(l.originalStartLineNumber,l.originalEndLineNumber+1);let d;l.modifiedEndLineNumber===0?d=new xe(l.modifiedStartLineNumber+1,l.modifiedStartLineNumber+1):d=new xe(l.modifiedStartLineNumber,l.modifiedEndLineNumber+1);let h=new Ws(c,d,l.charChanges?.map(u=>new Ls(new I(u.originalStartLineNumber,u.originalStartColumn,u.originalEndLineNumber,u.originalEndColumn),new I(u.modifiedStartLineNumber,u.modifiedStartColumn,u.modifiedEndLineNumber,u.modifiedEndColumn))));a&&(a.modified.endLineNumberExclusive===h.modified.startLineNumber||a.original.endLineNumberExclusive===h.original.startLineNumber)&&(h=new Ws(a.original.join(h.original),a.modified.join(h.modified),a.innerChanges&&h.innerChanges?a.innerChanges.concat(h.innerChanges):void 0),r.pop()),r.push(h),a=h}return Fh(()=>oT(r,(l,c)=>c.original.startLineNumber-l.original.endLineNumberExclusive===c.modified.startLineNumber-l.modified.endLineNumberExclusive&&l.original.endLineNumberExclusive(e===10?"\\n":String.fromCharCode(e))+`-(${this._lineNumbers[t]},${this._columns[t]})`).join(", ")+"]"}_assertIndex(e,t){if(e<0||e>=t.length)throw new Error("Illegal index")}getElements(){return this._charCodes}getStartLineNumber(e){return e>0&&e===this._lineNumbers.length?this.getEndLineNumber(e-1):(this._assertIndex(e,this._lineNumbers),this._lineNumbers[e])}getEndLineNumber(e){return e===-1?this.getStartLineNumber(e+1):(this._assertIndex(e,this._lineNumbers),this._charCodes[e]===10?this._lineNumbers[e]+1:this._lineNumbers[e])}getStartColumn(e){return e>0&&e===this._columns.length?this.getEndColumn(e-1):(this._assertIndex(e,this._columns),this._columns[e])}getEndColumn(e){return e===-1?this.getStartColumn(e+1):(this._assertIndex(e,this._columns),this._charCodes[e]===10?1:this._columns[e]+1)}}class Of{constructor(e,t,i,n,s,r,a,l){this.originalStartLineNumber=e,this.originalStartColumn=t,this.originalEndLineNumber=i,this.originalEndColumn=n,this.modifiedStartLineNumber=s,this.modifiedStartColumn=r,this.modifiedEndLineNumber=a,this.modifiedEndColumn=l}static createFromDiffChange(e,t,i){const n=t.getStartLineNumber(e.originalStart),s=t.getStartColumn(e.originalStart),r=t.getEndLineNumber(e.originalStart+e.originalLength-1),a=t.getEndColumn(e.originalStart+e.originalLength-1),l=i.getStartLineNumber(e.modifiedStart),c=i.getStartColumn(e.modifiedStart),d=i.getEndLineNumber(e.modifiedStart+e.modifiedLength-1),h=i.getEndColumn(e.modifiedStart+e.modifiedLength-1);return new Of(n,s,r,a,l,c,d,h)}}function QU(o){if(o.length<=1)return o;const e=[o[0]];let t=e[0];for(let i=1,n=o.length;i0&&t.originalLength<20&&t.modifiedLength>0&&t.modifiedLength<20&&s()){const f=i.createCharSequence(e,t.originalStart,t.originalStart+t.originalLength-1),g=n.createCharSequence(e,t.modifiedStart,t.modifiedStart+t.modifiedLength-1);if(f.getElements().length>0&&g.getElements().length>0){let p=d3(f,g,s,!0).changes;a&&(p=QU(p)),u=[];for(let _=0,b=p.length;_1&&p>1;){const _=u.charCodeAt(g-2),b=f.charCodeAt(p-2);if(_!==b)break;g--,p--}(g>1||p>1)&&this._pushTrimWhitespaceCharChange(n,s+1,1,g,r+1,1,p)}{let g=lk(u,1),p=lk(f,1);const _=u.length+1,b=f.length+1;for(;g<_&&p!0;const e=Date.now();return()=>Date.now()-e{i.push(vi.fromOffsetPairs(n?n.getEndExclusives():al.zero,s?s.getStarts():new al(t,(n?n.seq2Range.endExclusive-n.seq1Range.endExclusive:0)+t)))}),i}static fromOffsetPairs(e,t){return new vi(new Re(e.offset1,t.offset1),new Re(e.offset2,t.offset2))}static assertSorted(e){let t;for(const i of e){if(t&&!(t.seq1Range.endExclusive<=i.seq1Range.start&&t.seq2Range.endExclusive<=i.seq2Range.start))throw new nt("Sequence diffs must be sorted");t=i}}constructor(e,t){this.seq1Range=e,this.seq2Range=t}swap(){return new vi(this.seq2Range,this.seq1Range)}toString(){return`${this.seq1Range} <-> ${this.seq2Range}`}join(e){return new vi(this.seq1Range.join(e.seq1Range),this.seq2Range.join(e.seq2Range))}delta(e){return e===0?this:new vi(this.seq1Range.delta(e),this.seq2Range.delta(e))}deltaStart(e){return e===0?this:new vi(this.seq1Range.deltaStart(e),this.seq2Range.deltaStart(e))}deltaEnd(e){return e===0?this:new vi(this.seq1Range.deltaEnd(e),this.seq2Range.deltaEnd(e))}intersect(e){const t=this.seq1Range.intersect(e.seq1Range),i=this.seq2Range.intersect(e.seq2Range);if(!(!t||!i))return new vi(t,i)}getStarts(){return new al(this.seq1Range.start,this.seq2Range.start)}getEndExclusives(){return new al(this.seq1Range.endExclusive,this.seq2Range.endExclusive)}}const Od=class Od{constructor(e,t){this.offset1=e,this.offset2=t}toString(){return`${this.offset1} <-> ${this.offset2}`}delta(e){return e===0?this:new Od(this.offset1+e,this.offset2+e)}equals(e){return this.offset1===e.offset1&&this.offset2===e.offset2}};Od.zero=new Od(0,0),Od.max=new Od(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER);let al=Od;const Ew=class Ew{isValid(){return!0}};Ew.instance=new Ew;let Jp=Ew;class JU{constructor(e){if(this.timeout=e,this.startTime=Date.now(),this.valid=!0,e<=0)throw new nt("timeout must be positive")}isValid(){if(!(Date.now()-this.startTime0&&p>0&&r.get(g-1,p-1)===3&&(C+=a.get(g-1,p-1)),C+=n?n(g,p):1):C=-1;const w=Math.max(_,b,C);if(w===C){const v=g>0&&p>0?a.get(g-1,p-1):0;a.set(g,p,v+1),r.set(g,p,3)}else w===_?(a.set(g,p,0),r.set(g,p,1)):w===b&&(a.set(g,p,0),r.set(g,p,2));s.set(g,p,w)}const l=[];let c=e.length,d=t.length;function h(g,p){(g+1!==c||p+1!==d)&&l.push(new vi(new Re(g+1,c),new Re(p+1,d))),c=g,d=p}let u=e.length-1,f=t.length-1;for(;u>=0&&f>=0;)r.get(u,f)===3?(h(u,f),u--,f--):r.get(u,f)===1?u--:f--;return h(-1,-1),l.reverse(),new wl(l,!1)}}class h3{compute(e,t,i=Jp.instance){if(e.length===0||t.length===0)return wl.trivial(e,t);const n=e,s=t;function r(p,_){for(;pn.length||v>s.length)continue;const y=r(w,v);l.set(d,y);const x=w===b?c.get(d+1):c.get(d-1);if(c.set(d,y!==w?new GR(x,w,v,y-w):x),l.get(d)===n.length&&l.get(d)-d===s.length)break e}}let h=c.get(d);const u=[];let f=n.length,g=s.length;for(;;){const p=h?h.x+h.length:0,_=h?h.y+h.length:0;if((p!==f||_!==g)&&u.push(new vi(new Re(p,f),new Re(_,g))),!h)break;f=h.x,g=h.y,h=h.prev}return u.reverse(),new wl(u,!1)}}class GR{constructor(e,t,i,n){this.prev=e,this.x=t,this.y=i,this.length=n}}class t${constructor(){this.positiveArr=new Int32Array(10),this.negativeArr=new Int32Array(10)}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){if(e<0){if(e=-e-1,e>=this.negativeArr.length){const i=this.negativeArr;this.negativeArr=new Int32Array(i.length*2),this.negativeArr.set(i)}this.negativeArr[e]=t}else{if(e>=this.positiveArr.length){const i=this.positiveArr;this.positiveArr=new Int32Array(i.length*2),this.positiveArr.set(i)}this.positiveArr[e]=t}}}class i${constructor(){this.positiveArr=[],this.negativeArr=[]}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){e<0?(e=-e-1,this.negativeArr[e]=t):this.positiveArr[e]=t}}class IC{constructor(e,t,i){this.lines=e,this.range=t,this.considerWhitespaceChanges=i,this.elements=[],this.firstElementOffsetByLineIdx=[],this.lineStartOffsets=[],this.trimmedWsLengthsByLineIdx=[],this.firstElementOffsetByLineIdx.push(0);for(let n=this.range.startLineNumber;n<=this.range.endLineNumber;n++){let s=e[n-1],r=0;n===this.range.startLineNumber&&this.range.startColumn>1&&(r=this.range.startColumn-1,s=s.substring(r)),this.lineStartOffsets.push(r);let a=0;if(!i){const c=s.trimStart();a=s.length-c.length,s=c.trimEnd()}this.trimmedWsLengthsByLineIdx.push(a);const l=n===this.range.endLineNumber?Math.min(this.range.endColumn-1-r-a,s.length):s.length;for(let c=0;cString.fromCharCode(t)).join("")}getElement(e){return this.elements[e]}get length(){return this.elements.length}getBoundaryScore(e){const t=YR(e>0?this.elements[e-1]:-1),i=YR(es<=e),n=e-this.firstElementOffsetByLineIdx[i];return new P(this.range.startLineNumber+i,1+this.lineStartOffsets[i]+n+(n===0&&t==="left"?0:this.trimmedWsLengthsByLineIdx[i]))}translateRange(e){const t=this.translateOffset(e.start,"right"),i=this.translateOffset(e.endExclusive,"left");return i.isBefore(t)?I.fromPositions(i,i):I.fromPositions(t,i)}findWordContaining(e){if(e<0||e>=this.elements.length||!wS(this.elements[e]))return;let t=e;for(;t>0&&wS(this.elements[t-1]);)t--;let i=e;for(;in<=e.start)??0,i=VU(this.firstElementOffsetByLineIdx,n=>e.endExclusive<=n)??this.elements.length;return new Re(t,i)}}function wS(o){return o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57}const n$={0:0,1:0,2:0,3:10,4:2,5:30,6:3,7:10,8:10};function ZR(o){return n$[o]}function YR(o){return o===10?8:o===13?7:ck(o)?6:o>=97&&o<=122?0:o>=65&&o<=90?1:o>=48&&o<=57?2:o===-1?3:o===44||o===59?5:4}function s$(o,e,t,i,n,s){let{moves:r,excludedChanges:a}=r$(o,e,t,s);if(!s.isValid())return[];const l=o.filter(d=>!a.has(d)),c=a$(l,i,n,e,t,s);return xL(r,c),r=l$(r),r=r.filter(d=>{const h=d.original.toOffsetRange().slice(e).map(f=>f.trim());return h.join(` +`).length>=15&&o$(h,f=>f.length>=2)>=2}),r=c$(o,r),r}function o$(o,e){let t=0;for(const i of o)e(i)&&t++;return t}function r$(o,e,t,i){const n=[],s=o.filter(l=>l.modified.isEmpty&&l.original.length>=3).map(l=>new DC(l.original,e,l)),r=new Set(o.filter(l=>l.original.isEmpty&&l.modified.length>=3).map(l=>new DC(l.modified,t,l))),a=new Set;for(const l of s){let c=-1,d;for(const h of r){const u=l.computeSimilarity(h);u>c&&(c=u,d=h)}if(c>.9&&d&&(r.delete(d),n.push(new hn(l.range,d.range)),a.add(l.source),a.add(d.source)),!i.isValid())return{moves:n,excludedChanges:a}}return{moves:n,excludedChanges:a}}function a$(o,e,t,i,n,s){const r=[],a=new dT;for(const u of o)for(let f=u.original.startLineNumber;fu.modified.startLineNumber,ia));for(const u of o){let f=[];for(let g=u.modified.startLineNumber;g{for(const v of f)if(v.originalLineRange.endLineNumberExclusive+1===C.endLineNumberExclusive&&v.modifiedLineRange.endLineNumberExclusive+1===_.endLineNumberExclusive){v.originalLineRange=new xe(v.originalLineRange.startLineNumber,C.endLineNumberExclusive),v.modifiedLineRange=new xe(v.modifiedLineRange.startLineNumber,_.endLineNumberExclusive),b.push(v);return}const w={modifiedLineRange:_,originalLineRange:C};l.push(w),b.push(w)}),f=b}if(!s.isValid())return[]}l.sort(o6(rs(u=>u.modifiedLineRange.length,ia)));const c=new to,d=new to;for(const u of l){const f=u.modifiedLineRange.startLineNumber-u.originalLineRange.startLineNumber,g=c.subtractFrom(u.modifiedLineRange),p=d.subtractFrom(u.originalLineRange).getWithDelta(f),_=g.getIntersection(p);for(const b of _.ranges){if(b.length<3)continue;const C=b,w=b.delta(-f);r.push(new hn(w,C)),c.addRange(C),d.addRange(w)}}r.sort(rs(u=>u.original.startLineNumber,ia));const h=new kC(o);for(let u=0;ux.original.startLineNumber<=f.original.startLineNumber),p=dg(o,x=>x.modified.startLineNumber<=f.modified.startLineNumber),_=Math.max(f.original.startLineNumber-g.original.startLineNumber,f.modified.startLineNumber-p.modified.startLineNumber),b=h.findLastMonotonous(x=>x.original.startLineNumberx.modified.startLineNumberi.length||L>n.length||c.contains(L)||d.contains(x)||!QR(i[x-1],n[L-1],s))break}v>0&&(d.addRange(new xe(f.original.startLineNumber-v,f.original.startLineNumber)),c.addRange(new xe(f.modified.startLineNumber-v,f.modified.startLineNumber)));let y;for(y=0;yi.length||L>n.length||c.contains(L)||d.contains(x)||!QR(i[x-1],n[L-1],s))break}y>0&&(d.addRange(new xe(f.original.endLineNumberExclusive,f.original.endLineNumberExclusive+y)),c.addRange(new xe(f.modified.endLineNumberExclusive,f.modified.endLineNumberExclusive+y))),(v>0||y>0)&&(r[u]=new hn(new xe(f.original.startLineNumber-v,f.original.endLineNumberExclusive+y),new xe(f.modified.startLineNumber-v,f.modified.endLineNumberExclusive+y)))}return r}function QR(o,e,t){if(o.trim()===e.trim())return!0;if(o.length>300&&e.length>300)return!1;const n=new h3().compute(new IC([o],new I(1,1,1,o.length),!1),new IC([e],new I(1,1,1,e.length),!1),t);let s=0;const r=vi.invert(n.diffs,o.length);for(const d of r)d.seq1Range.forEach(h=>{ck(o.charCodeAt(h))||s++});function a(d){let h=0;for(let u=0;ue.length?o:e);return s/l>.6&&l>10}function l$(o){if(o.length===0)return o;o.sort(rs(t=>t.original.startLineNumber,ia));const e=[o[0]];for(let t=1;t=0&&r>=0&&s+r<=2){e[e.length-1]=i.join(n);continue}e.push(n)}return e}function c$(o,e){const t=new kC(o);return e=e.filter(i=>{const n=t.findLastMonotonous(a=>a.original.startLineNumbera.modified.startLineNumber0&&(a=a.delta(c))}n.push(a)}return i.length>0&&n.push(i[i.length-1]),n}function d$(o,e,t){if(!o.getBoundaryScore||!e.getBoundaryScore)return t;for(let i=0;i0?t[i-1]:void 0,s=t[i],r=i+1=i.start&&o.seq2Range.start-r>=n.start&&t.isStronglyEqual(o.seq2Range.start-r,o.seq2Range.endExclusive-r)&&r<100;)r++;r--;let a=0;for(;o.seq1Range.start+ac&&(c=g,l=d)}return o.delta(l)}function h$(o,e,t){const i=[];for(const n of t){const s=i[i.length-1];if(!s){i.push(n);continue}n.seq1Range.start-s.seq1Range.endExclusive<=2||n.seq2Range.start-s.seq2Range.endExclusive<=2?i[i.length-1]=new vi(s.seq1Range.join(n.seq1Range),s.seq2Range.join(n.seq2Range)):i.push(n)}return i}function u$(o,e,t){const i=vi.invert(t,o.length),n=[];let s=new al(0,0);function r(l,c){if(l.offset10;){const _=i[0];if(!(_.seq1Range.intersects(u.seq1Range)||_.seq2Range.intersects(u.seq2Range)))break;const C=o.findWordContaining(_.seq1Range.start),w=e.findWordContaining(_.seq2Range.start),v=new vi(C,w),y=v.intersect(_);if(g+=y.seq1Range.length,p+=y.seq2Range.length,u=u.join(v),u.seq1Range.endExclusive>=_.seq1Range.endExclusive)i.shift();else break}g+p<(u.seq1Range.length+u.seq2Range.length)*2/3&&n.push(u),s=u.getEndExclusives()}for(;i.length>0;){const l=i.shift();l.seq1Range.isEmpty||(r(l.getStarts(),l),r(l.getEndExclusives().delta(-1),l))}return f$(t,n)}function f$(o,e){const t=[];for(;o.length>0||e.length>0;){const i=o[0],n=e[0];let s;i&&(!n||i.seq1Range.start0&&t[t.length-1].seq1Range.endExclusive>=s.seq1Range.start?t[t.length-1]=t[t.length-1].join(s):t.push(s)}return t}function g$(o,e,t){let i=t;if(i.length===0)return i;let n=0,s;do{s=!1;const r=[i[0]];for(let a=1;a5||f.seq1Range.length+f.seq2Range.length>5)};const l=i[a],c=r[r.length-1];d(c,l)?(s=!0,r[r.length-1]=r[r.length-1].join(l)):r.push(l)}i=r}while(n++<10&&s);return i}function m$(o,e,t){let i=t;if(i.length===0)return i;let n=0,s;do{s=!1;const a=[i[0]];for(let l=1;l5||p.length>500)return!1;const b=o.getText(p).trim();if(b.length>20||b.split(/\r\n|\r|\n/).length>1)return!1;const C=o.countLinesIn(f.seq1Range),w=f.seq1Range.length,v=e.countLinesIn(f.seq2Range),y=f.seq2Range.length,x=o.countLinesIn(g.seq1Range),L=g.seq1Range.length,E=e.countLinesIn(g.seq2Range),N=g.seq2Range.length,H=130;function F(W){return Math.min(W,H)}return Math.pow(Math.pow(F(C*40+w),1.5)+Math.pow(F(v*40+y),1.5),1.5)+Math.pow(Math.pow(F(x*40+L),1.5)+Math.pow(F(E*40+N),1.5),1.5)>(H**1.5)**1.5*1.3};const c=i[l],d=a[a.length-1];h(d,c)?(s=!0,a[a.length-1]=a[a.length-1].join(c)):a.push(c)}i=a}while(n++<10&&s);const r=[];return t6(i,(a,l,c)=>{let d=l;function h(b){return b.length>0&&b.trim().length<=3&&l.seq1Range.length+l.seq2Range.length>100}const u=o.extendToFullLines(l.seq1Range),f=o.getText(new Re(u.start,l.seq1Range.start));h(f)&&(d=d.deltaStart(-f.length));const g=o.getText(new Re(l.seq1Range.endExclusive,u.endExclusive));h(g)&&(d=d.deltaEnd(g.length));const p=vi.fromOffsetPairs(a?a.getEndExclusives():al.zero,c?c.getStarts():al.max),_=d.intersect(p);r.length>0&&_.getStarts().equals(r[r.length-1].getEndExclusives())?r[r.length-1]=r[r.length-1].join(_):r.push(_)}),r}class eA{constructor(e,t){this.trimmedHash=e,this.lines=t}getElement(e){return this.trimmedHash[e]}get length(){return this.trimmedHash.length}getBoundaryScore(e){const t=e===0?0:tA(this.lines[e-1]),i=e===this.lines.length?0:tA(this.lines[e]);return 1e3-(t+i)}getText(e){return this.lines.slice(e.start,e.endExclusive).join(` +`)}isStronglyEqual(e,t){return this.lines[e]===this.lines[t]}}function tA(o){let e=0;for(;ey===x))return new D1([],[],!1);if(e.length===1&&e[0].length===0||t.length===1&&t[0].length===0)return new D1([new Ws(new xe(1,e.length+1),new xe(1,t.length+1),[new Ls(new I(1,1,e.length,e[e.length-1].length+1),new I(1,1,t.length,t[t.length-1].length+1))])],[],!1);const n=i.maxComputationTimeMs===0?Jp.instance:new JU(i.maxComputationTimeMs),s=!i.ignoreTrimWhitespace,r=new Map;function a(y){let x=r.get(y);return x===void 0&&(x=r.size,r.set(y,x)),x}const l=e.map(y=>a(y.trim())),c=t.map(y=>a(y.trim())),d=new eA(l,e),h=new eA(c,t),u=d.length+h.length<1700?this.dynamicProgrammingDiffing.compute(d,h,n,(y,x)=>e[y]===t[x]?t[x].length===0?.1:1+Math.log(1+t[x].length):.99):this.myersDiffingAlgorithm.compute(d,h,n);let f=u.diffs,g=u.hitTimeout;f=dk(d,h,f),f=g$(d,h,f);const p=[],_=y=>{if(s)for(let x=0;xy.seq1Range.start-b===y.seq2Range.start-C);const x=y.seq1Range.start-b;_(x),b=y.seq1Range.endExclusive,C=y.seq2Range.endExclusive;const L=this.refineDiff(e,t,y,n,s);L.hitTimeout&&(g=!0);for(const E of L.mappings)p.push(E)}_(e.length-b);const w=iA(p,e,t);let v=[];return i.computeMoves&&(v=this.computeMoves(w,e,t,l,c,n,s)),Fh(()=>{function y(L,E){if(L.lineNumber<1||L.lineNumber>E.length)return!1;const N=E[L.lineNumber-1];return!(L.column<1||L.column>N.length+1)}function x(L,E){return!(L.startLineNumber<1||L.startLineNumber>E.length+1||L.endLineNumberExclusive<1||L.endLineNumberExclusive>E.length+1)}for(const L of w){if(!L.innerChanges)return!1;for(const E of L.innerChanges)if(!(y(E.modifiedRange.getStartPosition(),t)&&y(E.modifiedRange.getEndPosition(),t)&&y(E.originalRange.getStartPosition(),e)&&y(E.originalRange.getEndPosition(),e)))return!1;if(!x(L.modified,t)||!x(L.original,e))return!1}return!0}),new D1(w,v,g)}computeMoves(e,t,i,n,s,r,a){return s$(e,t,i,n,s,r).map(d=>{const h=this.refineDiff(t,i,new vi(d.original.toOffsetRange(),d.modified.toOffsetRange()),r,a),u=iA(h.mappings,t,i,!0);return new l3(d,u)})}refineDiff(e,t,i,n,s){const a=_$(i).toRangeMapping2(e,t),l=new IC(e,a.originalRange,s),c=new IC(t,a.modifiedRange,s),d=l.length+c.length<500?this.dynamicProgrammingDiffing.compute(l,c,n):this.myersDiffingAlgorithm.compute(l,c,n);let h=d.diffs;return h=dk(l,c,h),h=u$(l,c,h),h=h$(l,c,h),h=m$(l,c,h),{mappings:h.map(f=>new Ls(l.translateRange(f.seq1Range),c.translateRange(f.seq2Range))),hitTimeout:d.hitTimeout}}}function iA(o,e,t,i=!1){const n=[];for(const s of LN(o.map(r=>p$(r,e,t)),(r,a)=>r.original.overlapOrTouch(a.original)||r.modified.overlapOrTouch(a.modified))){const r=s[0],a=s[s.length-1];n.push(new Ws(r.original.join(a.original),r.modified.join(a.modified),s.map(l=>l.innerChanges[0])))}return Fh(()=>!i&&n.length>0&&(n[0].modified.startLineNumber!==n[0].original.startLineNumber||t.length-n[n.length-1].modified.endLineNumberExclusive!==e.length-n[n.length-1].original.endLineNumberExclusive)?!1:oT(n,(s,r)=>r.original.startLineNumber-s.original.endLineNumberExclusive===r.modified.startLineNumber-s.modified.endLineNumberExclusive&&s.original.endLineNumberExclusive=t[o.modifiedRange.startLineNumber-1].length&&o.originalRange.startColumn-1>=e[o.originalRange.startLineNumber-1].length&&o.originalRange.startLineNumber<=o.originalRange.endLineNumber+n&&o.modifiedRange.startLineNumber<=o.modifiedRange.endLineNumber+n&&(i=1);const s=new xe(o.originalRange.startLineNumber+i,o.originalRange.endLineNumber+1+n),r=new xe(o.modifiedRange.startLineNumber+i,o.modifiedRange.endLineNumber+1+n);return new Ws(s,r,[o])}function _$(o){return new hn(new xe(o.seq1Range.start+1,o.seq1Range.endExclusive+1),new xe(o.seq2Range.start+1,o.seq2Range.endExclusive+1))}const nA={getLegacy:()=>new ZU,getDefault:()=>new u3};function gc(o,e){const t=Math.pow(10,e);return Math.round(o*t)/t}class qe{constructor(e,t,i,n=1){this._rgbaBrand=void 0,this.r=Math.min(255,Math.max(0,e))|0,this.g=Math.min(255,Math.max(0,t))|0,this.b=Math.min(255,Math.max(0,i))|0,this.a=gc(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.r===t.r&&e.g===t.g&&e.b===t.b&&e.a===t.a}}class ko{constructor(e,t,i,n){this._hslaBrand=void 0,this.h=Math.max(Math.min(360,e),0)|0,this.s=gc(Math.max(Math.min(1,t),0),3),this.l=gc(Math.max(Math.min(1,i),0),3),this.a=gc(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.l===t.l&&e.a===t.a}static fromRGBA(e){const t=e.r/255,i=e.g/255,n=e.b/255,s=e.a,r=Math.max(t,i,n),a=Math.min(t,i,n);let l=0,c=0;const d=(a+r)/2,h=r-a;if(h>0){switch(c=Math.min(d<=.5?h/(2*d):h/(2-2*d),1),r){case t:l=(i-n)/h+(i1&&(i-=1),i<1/6?e+(t-e)*6*i:i<1/2?t:i<2/3?e+(t-e)*(2/3-i)*6:e}static toRGBA(e){const t=e.h/360,{s:i,l:n,a:s}=e;let r,a,l;if(i===0)r=a=l=n;else{const c=n<.5?n*(1+i):n+i-n*i,d=2*n-c;r=ko._hue2rgb(d,c,t+1/3),a=ko._hue2rgb(d,c,t),l=ko._hue2rgb(d,c,t-1/3)}return new qe(Math.round(r*255),Math.round(a*255),Math.round(l*255),s)}}class ea{constructor(e,t,i,n){this._hsvaBrand=void 0,this.h=Math.max(Math.min(360,e),0)|0,this.s=gc(Math.max(Math.min(1,t),0),3),this.v=gc(Math.max(Math.min(1,i),0),3),this.a=gc(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.v===t.v&&e.a===t.a}static fromRGBA(e){const t=e.r/255,i=e.g/255,n=e.b/255,s=Math.max(t,i,n),r=Math.min(t,i,n),a=s-r,l=s===0?0:a/s;let c;return a===0?c=0:s===t?c=((i-n)/a%6+6)%6:s===i?c=(n-t)/a+2:c=(t-i)/a+4,new ea(Math.round(c*60),l,s,e.a)}static toRGBA(e){const{h:t,s:i,v:n,a:s}=e,r=n*i,a=r*(1-Math.abs(t/60%2-1)),l=n-r;let[c,d,h]=[0,0,0];return t<60?(c=r,d=a):t<120?(c=a,d=r):t<180?(d=r,h=a):t<240?(d=a,h=r):t<300?(c=a,h=r):t<=360&&(c=r,h=a),c=Math.round((c+l)*255),d=Math.round((d+l)*255),h=Math.round((h+l)*255),new qe(c,d,h,s)}}const Kt=class Kt{static fromHex(e){return Kt.Format.CSS.parseHex(e)||Kt.red}static equals(e,t){return!e&&!t?!0:!e||!t?!1:e.equals(t)}get hsla(){return this._hsla?this._hsla:ko.fromRGBA(this.rgba)}get hsva(){return this._hsva?this._hsva:ea.fromRGBA(this.rgba)}constructor(e){if(e)if(e instanceof qe)this.rgba=e;else if(e instanceof ko)this._hsla=e,this.rgba=ko.toRGBA(e);else if(e instanceof ea)this._hsva=e,this.rgba=ea.toRGBA(e);else throw new Error("Invalid color ctor argument");else throw new Error("Color needs a value")}equals(e){return!!e&&qe.equals(this.rgba,e.rgba)&&ko.equals(this.hsla,e.hsla)&&ea.equals(this.hsva,e.hsva)}getRelativeLuminance(){const e=Kt._relativeLuminanceForComponent(this.rgba.r),t=Kt._relativeLuminanceForComponent(this.rgba.g),i=Kt._relativeLuminanceForComponent(this.rgba.b),n=.2126*e+.7152*t+.0722*i;return gc(n,4)}static _relativeLuminanceForComponent(e){const t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)}isLighter(){return(this.rgba.r*299+this.rgba.g*587+this.rgba.b*114)/1e3>=128}isLighterThan(e){const t=this.getRelativeLuminance(),i=e.getRelativeLuminance();return t>i}isDarkerThan(e){const t=this.getRelativeLuminance(),i=e.getRelativeLuminance();return t0)for(const n of i){const s=n.filter(c=>c!==void 0),r=s[1],a=s[2];if(!a)continue;let l;if(r==="rgb"){const c=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*\)$/gm;l=sA(hm(o,n),um(a,c),!1)}else if(r==="rgba"){const c=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;l=sA(hm(o,n),um(a,c),!0)}else if(r==="hsl"){const c=/^\(\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*\)$/gm;l=oA(hm(o,n),um(a,c),!1)}else if(r==="hsla"){const c=/^\(\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;l=oA(hm(o,n),um(a,c),!0)}else r==="#"&&(l=b$(hm(o,n),r+a));l&&e.push(l)}return e}function v$(o){return!o||typeof o.getValue!="function"||typeof o.positionAt!="function"?[]:C$(o)}const rA=new RegExp("\\bMARK:\\s*(.*)$","d"),w$=/^-+|-+$/g;function y$(o,e){let t=[];if(e.findRegionSectionHeaders&&e.foldingRules?.markers){const i=S$(o,e);t=t.concat(i)}if(e.findMarkSectionHeaders){const i=L$(o);t=t.concat(i)}return t}function S$(o,e){const t=[],i=o.getLineCount();for(let n=1;n<=i;n++){const s=o.getLineContent(n),r=s.match(e.foldingRules.markers.start);if(r){const a={startLineNumber:n,startColumn:r[0].length+1,endLineNumber:n,endColumn:s.length+1};if(a.endColumn>a.startColumn){const l={range:a,...g3(s.substring(r[0].length)),shouldBeInComments:!1};(l.text||l.hasSeparatorLine)&&t.push(l)}}}return t}function L$(o){const e=[],t=o.getLineCount();for(let i=1;i<=t;i++){const n=o.getLineContent(i);x$(n,i,e)}return e}function x$(o,e,t){rA.lastIndex=0;const i=rA.exec(o);if(i){const n=i.indices[1][0]+1,s=i.indices[1][1]+1,r={startLineNumber:e,startColumn:n,endLineNumber:e,endColumn:s};if(r.endColumn>r.startColumn){const a={range:r,...g3(i[1]),shouldBeInComments:!0};(a.text||a.hasSeparatorLine)&&t.push(a)}}}function g3(o){o=o.trim();const e=o.startsWith("-");return o=o.replace(w$,""),{text:o,hasSeparatorLine:e}}class k${constructor(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(e,t){e=Iu(e);const i=this.values,n=this.prefixSum,s=t.length;return s===0?!1:(this.values=new Uint32Array(i.length+s),this.values.set(i.subarray(0,e),0),this.values.set(i.subarray(e),e+s),this.values.set(t,e),e-1=0&&this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(e,t){return e=Iu(e),t=Iu(t),this.values[e]===t?!1:(this.values[e]=t,e-1=i.length)return!1;const s=i.length-e;return t>=s&&(t=s),t===0?!1:(this.values=new Uint32Array(i.length-t),this.values.set(i.subarray(0,e),0),this.values.set(i.subarray(e+t),e),this.prefixSum=new Uint32Array(this.values.length),e-1=0&&this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return this.values.length===0?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(e){return e<0?0:(e=Iu(e),this._getPrefixSum(e))}_getPrefixSum(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];let t=this.prefixSumValidIndex[0]+1;t===0&&(this.prefixSum[0]=this.values[0],t++),e>=this.values.length&&(e=this.values.length-1);for(let i=t;i<=e;i++)this.prefixSum[i]=this.prefixSum[i-1]+this.values[i];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]}getIndexOf(e){e=Math.floor(e),this.getTotalSum();let t=0,i=this.values.length-1,n=0,s=0,r=0;for(;t<=i;)if(n=t+(i-t)/2|0,s=this.prefixSum[n],r=s-this.values[n],e=s)t=n+1;else break;return new m3(n,e-r)}}class D${constructor(e){this._values=e,this._isValid=!1,this._validEndIndex=-1,this._prefixSum=[],this._indexBySum=[]}getTotalSum(){return this._ensureValid(),this._indexBySum.length}getPrefixSum(e){return this._ensureValid(),e===0?0:this._prefixSum[e-1]}getIndexOf(e){this._ensureValid();const t=this._indexBySum[e],i=t>0?this._prefixSum[t-1]:0;return new m3(t,e-i)}removeValues(e,t){this._values.splice(e,t),this._invalidate(e)}insertValues(e,t){this._values=y0(this._values,e,t),this._invalidate(e)}_invalidate(e){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,e-1)}_ensureValid(){if(!this._isValid){for(let e=this._validEndIndex+1,t=this._values.length;e0?this._prefixSum[e-1]:0;this._prefixSum[e]=n+i;for(let s=0;sthis._checkStopModelSync(),Math.round(aA/2)),this._register(n)}}dispose(){for(const e in this._syncedModels)xt(this._syncedModels[e]);this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),super.dispose()}ensureSyncedResources(e,t=!1){for(const i of e){const n=i.toString();this._syncedModels[n]||this._beginModelSync(i,t),this._syncedModels[n]&&(this._syncedModelsLastUsedTime[n]=new Date().getTime())}}_checkStopModelSync(){const e=new Date().getTime(),t=[];for(const i in this._syncedModelsLastUsedTime)e-this._syncedModelsLastUsedTime[i]>aA&&t.push(i);for(const i of t)this._stopModelSync(i)}_beginModelSync(e,t){const i=this._modelService.getModel(e);if(!i||!t&&i.isTooLargeForSyncing())return;const n=e.toString();this._proxy.$acceptNewModel({url:i.uri.toString(),lines:i.getLinesContent(),EOL:i.getEOL(),versionId:i.getVersionId()});const s=new X;s.add(i.onDidChangeContent(r=>{this._proxy.$acceptModelChanged(n.toString(),r)})),s.add(i.onWillDispose(()=>{this._stopModelSync(n)})),s.add(_e(()=>{this._proxy.$acceptRemovedModel(n)})),this._syncedModels[n]=s}_stopModelSync(e){const t=this._syncedModels[e];delete this._syncedModels[e],delete this._syncedModelsLastUsedTime[e],xt(t)}}class N${constructor(){this._models=Object.create(null)}getModel(e){return this._models[e]}getModels(){const e=[];return Object.keys(this._models).forEach(t=>e.push(this._models[t])),e}$acceptNewModel(e){this._models[e.url]=new T$(ve.parse(e.url),e.lines,e.EOL,e.versionId)}$acceptModelChanged(e,t){if(!this._models[e])return;this._models[e].onEvents(t)}$acceptRemovedModel(e){this._models[e]&&delete this._models[e]}}class T$ extends I${get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}findMatches(e){const t=[];for(let i=0;ithis._lines.length)t=this._lines.length,i=this._lines[t-1].length+1,n=!0;else{const s=this._lines[t-1].length+1;i<1?(i=1,n=!0):i>s&&(i=s,n=!0)}return n?{lineNumber:t,column:i}:e}}const Nw=class Nw{constructor(){this._workerTextModelSyncServer=new N$}dispose(){}_getModel(e){return this._workerTextModelSyncServer.getModel(e)}_getModels(){return this._workerTextModelSyncServer.getModels()}$acceptNewModel(e){this._workerTextModelSyncServer.$acceptNewModel(e)}$acceptModelChanged(e,t){this._workerTextModelSyncServer.$acceptModelChanged(e,t)}$acceptRemovedModel(e){this._workerTextModelSyncServer.$acceptRemovedModel(e)}async $computeUnicodeHighlights(e,t,i){const n=this._getModel(e);return n?BU.computeUnicodeHighlights(n,t,i):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}}async $findSectionHeaders(e,t){const i=this._getModel(e);return i?y$(i,t):[]}async $computeDiff(e,t,i,n){const s=this._getModel(e),r=this._getModel(t);return!s||!r?null:I1.computeDiff(s,r,i,n)}static computeDiff(e,t,i,n){const s=n==="advanced"?nA.getDefault():nA.getLegacy(),r=e.getLinesContent(),a=t.getLinesContent(),l=s.computeDiff(r,a,i),c=l.changes.length>0?!1:this._modelsAreIdentical(e,t);function d(h){return h.map(u=>[u.original.startLineNumber,u.original.endLineNumberExclusive,u.modified.startLineNumber,u.modified.endLineNumberExclusive,u.innerChanges?.map(f=>[f.originalRange.startLineNumber,f.originalRange.startColumn,f.originalRange.endLineNumber,f.originalRange.endColumn,f.modifiedRange.startLineNumber,f.modifiedRange.startColumn,f.modifiedRange.endLineNumber,f.modifiedRange.endColumn])])}return{identical:c,quitEarly:l.hitTimeout,changes:d(l.changes),moves:l.moves.map(h=>[h.lineRangeMapping.original.startLineNumber,h.lineRangeMapping.original.endLineNumberExclusive,h.lineRangeMapping.modified.startLineNumber,h.lineRangeMapping.modified.endLineNumberExclusive,d(h.changes)])}}static _modelsAreIdentical(e,t){const i=e.getLineCount(),n=t.getLineCount();if(i!==n)return!1;for(let s=1;s<=i;s++){const r=e.getLineContent(s),a=t.getLineContent(s);if(r!==a)return!1}return!0}async $computeMoreMinimalEdits(e,t,i){const n=this._getModel(e);if(!n)return t;const s=[];let r;t=t.slice(0).sort((l,c)=>{if(l.range&&c.range)return I.compareRangesUsingStarts(l.range,c.range);const d=l.range?0:1,h=c.range?0:1;return d-h});let a=0;for(let l=1;lI1._diffLimit){s.push({range:l,text:c});continue}const u=_U(h,c,i),f=n.offsetAt(I.lift(l).getStartPosition());for(const g of u){const p=n.positionAt(f+g.originalStart),_=n.positionAt(f+g.originalStart+g.originalLength),b={text:c.substr(g.modifiedStart,g.modifiedLength),range:{startLineNumber:p.lineNumber,startColumn:p.column,endLineNumber:_.lineNumber,endColumn:_.column}};n.getValueInRange(b.range)!==b.text&&s.push(b)}}return typeof r=="number"&&s.push({eol:r,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),s}async $computeLinks(e){const t=this._getModel(e);return t?SU(t):null}async $computeDefaultDocumentColors(e){const t=this._getModel(e);return t?v$(t):null}async $textualSuggest(e,t,i,n){const s=new Hs,r=new RegExp(i,n),a=new Set;e:for(const l of e){const c=this._getModel(l);if(c){for(const d of c.words(r))if(!(d===t||!isNaN(Number(d)))&&(a.add(d),a.size>I1._suggestionsLimit))break e}}return{words:Array.from(a),duration:s.elapsed()}}async $computeWordRanges(e,t,i,n){const s=this._getModel(e);if(!s)return Object.create(null);const r=new RegExp(i,n),a=Object.create(null);for(let l=t.startLineNumber;lthis._host.$fhr(a,l)),getMirrorModels:()=>this._getModels()};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(r,t),Promise.resolve(DL(this._foreignModule))):new Promise((a,l)=>{const c=d=>{this._foreignModule=d.create(r,t),a(DL(this._foreignModule))};{const d=E0.asBrowserUri(`${e}.js`).toString(!0);vz(()=>import(`${d}`),[],import.meta.url).then(c).catch(l)}})}$fmr(e,t){if(!this._foreignModule||typeof this._foreignModule[e]!="function")return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(i){return Promise.reject(i)}}}typeof importScripts=="function"&&(globalThis.monaco=cF());const pT=He("textResourceConfigurationService"),p3=He("textResourcePropertiesService"),Se=He("ILanguageFeaturesService");var _T=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Cd=function(o,e){return function(t,i){e(t,i,o)}};const lA=300*1e3;function vd(o,e){const t=o.getModel(e);return!(!t||t.isTooLargeForSyncing())}let uk=class extends z{constructor(e,t,i,n,s,r){super(),this._languageConfigurationService=s,this._modelService=t,this._workerManager=this._register(new fk(e,this._modelService)),this._logService=n,this._register(r.linkProvider.register({language:"*",hasAccessToAllModels:!0},{provideLinks:async(a,l)=>{if(!vd(this._modelService,a.uri))return Promise.resolve({links:[]});const d=await(await this._workerWithResources([a.uri])).$computeLinks(a.uri.toString());return d&&{links:d}}})),this._register(r.completionProvider.register("*",new M$(this._workerManager,i,this._modelService,this._languageConfigurationService)))}dispose(){super.dispose()}canComputeUnicodeHighlights(e){return vd(this._modelService,e)}async computedUnicodeHighlights(e,t,i){return(await this._workerWithResources([e])).$computeUnicodeHighlights(e.toString(),t,i)}async computeDiff(e,t,i,n){const r=await(await this._workerWithResources([e,t],!0)).$computeDiff(e.toString(),t.toString(),i,n);if(!r)return null;return{identical:r.identical,quitEarly:r.quitEarly,changes:l(r.changes),moves:r.moves.map(c=>new l3(new hn(new xe(c[0],c[1]),new xe(c[2],c[3])),l(c[4])))};function l(c){return c.map(d=>new Ws(new xe(d[0],d[1]),new xe(d[2],d[3]),d[4]?.map(h=>new Ls(new I(h[0],h[1],h[2],h[3]),new I(h[4],h[5],h[6],h[7])))))}}async computeMoreMinimalEdits(e,t,i=!1){if(Ps(t)){if(!vd(this._modelService,e))return Promise.resolve(t);const n=Hs.create(),s=this._workerWithResources([e]).then(r=>r.$computeMoreMinimalEdits(e.toString(),t,i));return s.finally(()=>this._logService.trace("FORMAT#computeMoreMinimalEdits",e.toString(!0),n.elapsed())),Promise.race([s,og(1e3).then(()=>t)])}else return Promise.resolve(void 0)}canNavigateValueSet(e){return vd(this._modelService,e)}async navigateValueSet(e,t,i){const n=this._modelService.getModel(e);if(!n)return null;const s=this._languageConfigurationService.getLanguageConfiguration(n.getLanguageId()).getWordDefinition(),r=s.source,a=s.flags;return(await this._workerWithResources([e])).$navigateValueSet(e.toString(),t,i,r,a)}canComputeWordRanges(e){return vd(this._modelService,e)}async computeWordRanges(e,t){const i=this._modelService.getModel(e);if(!i)return Promise.resolve(null);const n=this._languageConfigurationService.getLanguageConfiguration(i.getLanguageId()).getWordDefinition(),s=n.source,r=n.flags;return(await this._workerWithResources([e])).$computeWordRanges(e.toString(),t,s,r)}async findSectionHeaders(e,t){return(await this._workerWithResources([e])).$findSectionHeaders(e.toString(),t)}async computeDefaultDocumentColors(e){return(await this._workerWithResources([e])).$computeDefaultDocumentColors(e.toString())}async _workerWithResources(e,t=!1){return await(await this._workerManager.withWorker()).workerWithSyncedResources(e,t)}};uk=_T([Cd(1,Fi),Cd(2,pT),Cd(3,gs),Cd(4,Gn),Cd(5,Se)],uk);class M${constructor(e,t,i,n){this.languageConfigurationService=n,this._debugDisplayName="wordbasedCompletions",this._workerManager=e,this._configurationService=t,this._modelService=i}async provideCompletionItems(e,t){const i=this._configurationService.getValue(e.uri,t,"editor");if(i.wordBasedSuggestions==="off")return;const n=[];if(i.wordBasedSuggestions==="currentDocument")vd(this._modelService,e.uri)&&n.push(e.uri);else for(const h of this._modelService.getModels())vd(this._modelService,h.uri)&&(h===e?n.unshift(h.uri):(i.wordBasedSuggestions==="allDocuments"||h.getLanguageId()===e.getLanguageId())&&n.push(h.uri));if(n.length===0)return;const s=this.languageConfigurationService.getLanguageConfiguration(e.getLanguageId()).getWordDefinition(),r=e.getWordAtPosition(t),a=r?new I(t.lineNumber,r.startColumn,t.lineNumber,r.endColumn):I.fromPositions(t),l=a.setEndPosition(t.lineNumber,t.column),d=await(await this._workerManager.withWorker()).textualSuggest(n,r?.word,s);if(d)return{duration:d.duration,suggestions:d.words.map(h=>({kind:18,label:h,insertText:h,range:{insert:l,replace:a}}))}}}let fk=class extends z{constructor(e,t){super(),this._workerDescriptor=e,this._modelService=t,this._editorWorkerClient=null,this._lastWorkerUsedTime=new Date().getTime(),this._register(new QN).cancelAndSet(()=>this._checkStopIdleWorker(),Math.round(lA/2),_t),this._register(this._modelService.onModelRemoved(n=>this._checkStopEmptyWorker()))}dispose(){this._editorWorkerClient&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null),super.dispose()}_checkStopEmptyWorker(){if(!this._editorWorkerClient)return;this._modelService.getModels().length===0&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}_checkStopIdleWorker(){if(!this._editorWorkerClient)return;new Date().getTime()-this._lastWorkerUsedTime>lA&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}withWorker(){return this._lastWorkerUsedTime=new Date().getTime(),this._editorWorkerClient||(this._editorWorkerClient=new EC(this._workerDescriptor,!1,this._modelService)),Promise.resolve(this._editorWorkerClient)}};fk=_T([Cd(1,Fi)],fk);class R${constructor(e){this._instance=e,this.proxy=this._instance}dispose(){this._instance.dispose()}setChannel(e,t){throw new Error("Not supported")}}let EC=class extends z{constructor(e,t,i){super(),this._workerDescriptor=e,this._disposed=!1,this._modelService=i,this._keepIdleModels=t,this._worker=null,this._modelManager=null}fhr(e,t){throw new Error("Not implemented!")}_getOrCreateWorker(){if(!this._worker)try{this._worker=this._register(Az(this._workerDescriptor)),ok.setChannel(this._worker,this._createEditorWorkerHost())}catch(e){Xx(e),this._worker=this._createFallbackLocalWorker()}return this._worker}async _getProxy(){try{const e=this._getOrCreateWorker().proxy;return await e.$ping(),e}catch(e){return Xx(e),this._worker=this._createFallbackLocalWorker(),this._worker.proxy}}_createFallbackLocalWorker(){return new R$(new I1(this._createEditorWorkerHost(),null))}_createEditorWorkerHost(){return{$fhr:(e,t)=>this.fhr(e,t)}}_getOrCreateModelManager(e){return this._modelManager||(this._modelManager=this._register(new E$(e,this._modelService,this._keepIdleModels))),this._modelManager}async workerWithSyncedResources(e,t=!1){if(this._disposed)return Promise.reject(bW());const i=await this._getProxy();return this._getOrCreateModelManager(i).ensureSyncedResources(e,t),i}async textualSuggest(e,t,i){const n=await this.workerWithSyncedResources(e),s=i.source,r=i.flags;return n.$textualSuggest(e.map(a=>a.toString()),t,s,r)}dispose(){super.dispose(),this._disposed=!0}};EC=_T([Cd(2,Fi)],EC);var io;(function(o){o.DARK="dark",o.LIGHT="light",o.HIGH_CONTRAST_DARK="hcDark",o.HIGH_CONTRAST_LIGHT="hcLight"})(io||(io={}));function mc(o){return o===io.HIGH_CONTRAST_DARK||o===io.HIGH_CONTRAST_LIGHT}function j0(o){return o===io.DARK||o===io.HIGH_CONTRAST_DARK}const en=He("themeService");function Xs(o){return{id:o}}function gk(o){switch(o){case io.DARK:return"vs-dark";case io.HIGH_CONTRAST_DARK:return"hc-black";case io.HIGH_CONTRAST_LIGHT:return"hc-light";default:return"vs"}}const _3={ThemingContribution:"base.contributions.theming"};class A${constructor(){this.themingParticipants=[],this.themingParticipants=[],this.onThemingParticipantAddedEmitter=new A}onColorThemeChange(e){return this.themingParticipants.push(e),this.onThemingParticipantAddedEmitter.fire(e),_e(()=>{const t=this.themingParticipants.indexOf(e);this.themingParticipants.splice(t,1)})}getThemingParticipants(){return this.themingParticipants}}const b3=new A$;Bi.add(_3.ThemingContribution,b3);function Sr(o){return b3.onColorThemeChange(o)}class P$ extends z{constructor(e){super(),this.themeService=e,this.theme=e.getColorTheme(),this._register(this.themeService.onDidColorThemeChange(t=>this.onThemeChange(t)))}onThemeChange(e){this.theme=e,this.updateStyles()}updateStyles(){}}var O$=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},F$=function(o,e){return function(t,i){e(t,i,o)}};let mk=class extends z{constructor(e){super(),this._themeService=e,this._onWillCreateCodeEditor=this._register(new A),this._onCodeEditorAdd=this._register(new A),this.onCodeEditorAdd=this._onCodeEditorAdd.event,this._onCodeEditorRemove=this._register(new A),this.onCodeEditorRemove=this._onCodeEditorRemove.event,this._onWillCreateDiffEditor=this._register(new A),this._onDiffEditorAdd=this._register(new A),this.onDiffEditorAdd=this._onDiffEditorAdd.event,this._onDiffEditorRemove=this._register(new A),this.onDiffEditorRemove=this._onDiffEditorRemove.event,this._decorationOptionProviders=new Map,this._codeEditorOpenHandlers=new yn,this._modelProperties=new Map,this._codeEditors=Object.create(null),this._diffEditors=Object.create(null),this._globalStyleSheet=null}willCreateCodeEditor(){this._onWillCreateCodeEditor.fire()}addCodeEditor(e){this._codeEditors[e.getId()]=e,this._onCodeEditorAdd.fire(e)}removeCodeEditor(e){delete this._codeEditors[e.getId()]&&this._onCodeEditorRemove.fire(e)}listCodeEditors(){return Object.keys(this._codeEditors).map(e=>this._codeEditors[e])}willCreateDiffEditor(){this._onWillCreateDiffEditor.fire()}addDiffEditor(e){this._diffEditors[e.getId()]=e,this._onDiffEditorAdd.fire(e)}listDiffEditors(){return Object.keys(this._diffEditors).map(e=>this._diffEditors[e])}getFocusedCodeEditor(){let e=null;const t=this.listCodeEditors();for(const i of t){if(i.hasTextFocus())return i;i.hasWidgetFocus()&&(e=i)}return e}removeDecorationType(e){const t=this._decorationOptionProviders.get(e);t&&(t.refCount--,t.refCount<=0&&(this._decorationOptionProviders.delete(e),t.dispose(),this.listCodeEditors().forEach(i=>i.removeDecorationsByType(e))))}setModelProperty(e,t,i){const n=e.toString();let s;this._modelProperties.has(n)?s=this._modelProperties.get(n):(s=new Map,this._modelProperties.set(n,s)),s.set(t,i)}getModelProperty(e,t){const i=e.toString();if(this._modelProperties.has(i))return this._modelProperties.get(i).get(t)}async openCodeEditor(e,t,i){for(const n of this._codeEditorOpenHandlers){const s=await n(e,t,i);if(s!==null)return s}return null}registerCodeEditorOpenHandler(e){const t=this._codeEditorOpenHandlers.unshift(e);return _e(t)}};mk=O$([F$(0,en)],mk);var B$=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},cA=function(o,e){return function(t,i){e(t,i,o)}};let NC=class extends mk{constructor(e,t){super(t),this._register(this.onCodeEditorAdd(()=>this._checkContextKey())),this._register(this.onCodeEditorRemove(()=>this._checkContextKey())),this._editorIsOpen=e.createKey("editorIsOpen",!1),this._activeCodeEditor=null,this._register(this.registerCodeEditorOpenHandler(async(i,n,s)=>n?this.doOpenEditor(n,i):null))}_checkContextKey(){let e=!1;for(const t of this.listCodeEditors())if(!t.isSimpleWidget){e=!0;break}this._editorIsOpen.set(e)}setActiveCodeEditor(e){this._activeCodeEditor=e}getActiveCodeEditor(){return this._activeCodeEditor}doOpenEditor(e,t){if(!this.findModel(e,t.resource)){if(t.resource){const s=t.resource.scheme;if(s===Te.http||s===Te.https)return HF(t.resource.toString()),e}return null}const n=t.options?t.options.selection:null;if(n)if(typeof n.endLineNumber=="number"&&typeof n.endColumn=="number")e.setSelection(n),e.revealRangeInCenter(n,1);else{const s={lineNumber:n.startLineNumber,column:n.startColumn};e.setPosition(s),e.revealPositionInCenter(s,1)}return e}findModel(e,t){const i=e.getModel();return i&&i.uri.toString()!==t.toString()?null:i}};NC=B$([cA(0,De),cA(1,en)],NC);Qe(Pt,NC,0);const jc=He("layoutService");var C3=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},v3=function(o,e){return function(t,i){e(t,i,o)}};let TC=class{get mainContainer(){return xN(this._codeEditorService.listCodeEditors())?.getContainerDomNode()??_t.document.body}get activeContainer(){return(this._codeEditorService.getFocusedCodeEditor()??this._codeEditorService.getActiveCodeEditor())?.getContainerDomNode()??this.mainContainer}get mainContainerDimension(){return Ah(this.mainContainer)}get activeContainerDimension(){return Ah(this.activeContainer)}get containers(){return Ag(this._codeEditorService.listCodeEditors().map(e=>e.getContainerDomNode()))}getContainer(){return this.activeContainer}whenContainerStylesLoaded(){}focus(){this._codeEditorService.getFocusedCodeEditor()?.focus()}constructor(e){this._codeEditorService=e,this.onDidLayoutMainContainer=J.None,this.onDidLayoutActiveContainer=J.None,this.onDidLayoutContainer=J.None,this.onDidChangeActiveContainer=J.None,this.onDidAddContainer=J.None,this.mainContainerOffset={top:0,quickPickTop:0},this.activeContainerOffset={top:0,quickPickTop:0}}};TC=C3([v3(0,Pt)],TC);let pk=class extends TC{get mainContainer(){return this._container}constructor(e,t){super(t),this._container=e}};pk=C3([v3(1,Pt)],pk);Qe(jc,TC,1);var e_;(function(o){o[o.Ignore=0]="Ignore",o[o.Info=1]="Info",o[o.Warning=2]="Warning",o[o.Error=3]="Error"})(e_||(e_={}));(function(o){const e="error",t="warning",i="warn",n="info",s="ignore";function r(l){return l?Qu(e,l)?o.Error:Qu(t,l)||Qu(i,l)?o.Warning:Qu(n,l)?o.Info:o.Ignore:o.Ignore}o.fromValue=r;function a(l){switch(l){case o.Error:return e;case o.Warning:return t;case o.Info:return n;default:return s}}o.toString=a})(e_||(e_={}));const Qt=e_,w3=He("dialogService");var bT=Qt;const mn=He("notificationService");class W${}const CT=He("undoRedoService");class y3{constructor(e,t){this.resource=e,this.elements=t}}const yf=class yf{constructor(){this.id=yf._ID++,this.order=1}nextOrder(){return this.id===0?0:this.order++}};yf._ID=0,yf.None=new yf;let _k=yf;const Sf=class Sf{constructor(){this.id=Sf._ID++,this.order=1}nextOrder(){return this.id===0?0:this.order++}};Sf._ID=0,Sf.None=new Sf;let wd=Sf;var H$=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},dA=function(o,e){return function(t,i){e(t,i,o)}};function Nb(o){return o.scheme===Te.file?o.fsPath:o.path}let S3=0;class Tb{constructor(e,t,i,n,s,r,a){this.id=++S3,this.type=0,this.actual=e,this.label=e.label,this.confirmBeforeUndo=e.confirmBeforeUndo||!1,this.resourceLabel=t,this.strResource=i,this.resourceLabels=[this.resourceLabel],this.strResources=[this.strResource],this.groupId=n,this.groupOrder=s,this.sourceId=r,this.sourceOrder=a,this.isValid=!0}setValid(e){this.isValid=e}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.isValid?" VALID":"INVALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class hA{constructor(e,t){this.resourceLabel=e,this.reason=t}}class uA{constructor(){this.elements=new Map}createMessage(){const e=[],t=[];for(const[,n]of this.elements)(n.reason===0?e:t).push(n.resourceLabel);const i=[];return e.length>0&&i.push(m({key:"externalRemoval",comment:["{0} is a list of filenames"]},"The following files have been closed and modified on disk: {0}.",e.join(", "))),t.length>0&&i.push(m({key:"noParallelUniverses",comment:["{0} is a list of filenames"]},"The following files have been modified in an incompatible way: {0}.",t.join(", "))),i.join(` +`)}get size(){return this.elements.size}has(e){return this.elements.has(e)}set(e,t){this.elements.set(e,t)}delete(e){return this.elements.delete(e)}}class V${constructor(e,t,i,n,s,r,a){this.id=++S3,this.type=1,this.actual=e,this.label=e.label,this.confirmBeforeUndo=e.confirmBeforeUndo||!1,this.resourceLabels=t,this.strResources=i,this.groupId=n,this.groupOrder=s,this.sourceId=r,this.sourceOrder=a,this.removedResources=null,this.invalidatedResources=null}canSplit(){return typeof this.actual.split=="function"}removeResource(e,t,i){this.removedResources||(this.removedResources=new uA),this.removedResources.has(t)||this.removedResources.set(t,new hA(e,i))}setValid(e,t,i){i?this.invalidatedResources&&(this.invalidatedResources.delete(t),this.invalidatedResources.size===0&&(this.invalidatedResources=null)):(this.invalidatedResources||(this.invalidatedResources=new uA),this.invalidatedResources.has(t)||this.invalidatedResources.set(t,new hA(e,0)))}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.invalidatedResources?"INVALID":" VALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class L3{constructor(e,t){this.resourceLabel=e,this.strResource=t,this._past=[],this._future=[],this.locked=!1,this.versionId=1}dispose(){for(const e of this._past)e.type===1&&e.removeResource(this.resourceLabel,this.strResource,0);for(const e of this._future)e.type===1&&e.removeResource(this.resourceLabel,this.strResource,0);this.versionId++}toString(){const e=[];e.push(`* ${this.strResource}:`);for(let t=0;t=0;t--)e.push(` * [REDO] ${this._future[t]}`);return e.join(` +`)}flushAllElements(){this._past=[],this._future=[],this.versionId++}_setElementValidFlag(e,t){e.type===1?e.setValid(this.resourceLabel,this.strResource,t):e.setValid(t)}setElementsValidFlag(e,t){for(const i of this._past)t(i.actual)&&this._setElementValidFlag(i,e);for(const i of this._future)t(i.actual)&&this._setElementValidFlag(i,e)}pushElement(e){for(const t of this._future)t.type===1&&t.removeResource(this.resourceLabel,this.strResource,1);this._future=[],this._past.push(e),this.versionId++}createSnapshot(e){const t=[];for(let i=0,n=this._past.length;i=0;i--)t.push(this._future[i].id);return new y3(e,t)}restoreSnapshot(e){const t=e.elements.length;let i=!0,n=0,s=-1;for(let a=0,l=this._past.length;a=t||c.id!==e.elements[n])&&(i=!1,s=0),!i&&c.type===1&&c.removeResource(this.resourceLabel,this.strResource,0)}let r=-1;for(let a=this._future.length-1;a>=0;a--,n++){const l=this._future[a];i&&(n>=t||l.id!==e.elements[n])&&(i=!1,r=a),!i&&l.type===1&&l.removeResource(this.resourceLabel,this.strResource,0)}s!==-1&&(this._past=this._past.slice(0,s)),r!==-1&&(this._future=this._future.slice(r+1)),this.versionId++}getElements(){const e=[],t=[];for(const i of this._past)e.push(i.actual);for(const i of this._future)t.push(i.actual);return{past:e,future:t}}getClosestPastElement(){return this._past.length===0?null:this._past[this._past.length-1]}getSecondClosestPastElement(){return this._past.length<2?null:this._past[this._past.length-2]}getClosestFutureElement(){return this._future.length===0?null:this._future[this._future.length-1]}hasPastElements(){return this._past.length>0}hasFutureElements(){return this._future.length>0}splitPastWorkspaceElement(e,t){for(let i=this._past.length-1;i>=0;i--)if(this._past[i]===e){t.has(this.strResource)?this._past[i]=t.get(this.strResource):this._past.splice(i,1);break}this.versionId++}splitFutureWorkspaceElement(e,t){for(let i=this._future.length-1;i>=0;i--)if(this._future[i]===e){t.has(this.strResource)?this._future[i]=t.get(this.strResource):this._future.splice(i,1);break}this.versionId++}moveBackward(e){this._past.pop(),this._future.push(e),this.versionId++}moveForward(e){this._future.pop(),this._past.push(e),this.versionId++}}class yS{constructor(e){this.editStacks=e,this._versionIds=[];for(let t=0,i=this.editStacks.length;tt.sourceOrder)&&(t=r,i=n)}return[t,i]}canUndo(e){if(e instanceof wd){const[,i]=this._findClosestUndoElementWithSource(e.id);return!!i}const t=this.getUriComparisonKey(e);return this._editStacks.has(t)?this._editStacks.get(t).hasPastElements():!1}_onError(e,t){Ze(e);for(const i of t.strResources)this.removeElements(i);this._notificationService.error(e)}_acquireLocks(e){for(const t of e.editStacks)if(t.locked)throw new Error("Cannot acquire edit stack lock");for(const t of e.editStacks)t.locked=!0;return()=>{for(const t of e.editStacks)t.locked=!1}}_safeInvokeWithLocks(e,t,i,n,s){const r=this._acquireLocks(i);let a;try{a=t()}catch(l){return r(),n.dispose(),this._onError(l,e)}return a?a.then(()=>(r(),n.dispose(),s()),l=>(r(),n.dispose(),this._onError(l,e))):(r(),n.dispose(),s())}async _invokeWorkspacePrepare(e){if(typeof e.actual.prepareUndoRedo>"u")return z.None;const t=e.actual.prepareUndoRedo();return typeof t>"u"?z.None:t}_invokeResourcePrepare(e,t){if(e.actual.type!==1||typeof e.actual.prepareUndoRedo>"u")return t(z.None);const i=e.actual.prepareUndoRedo();return i?MN(i)?t(i):i.then(n=>t(n)):t(z.None)}_getAffectedEditStacks(e){const t=[];for(const i of e.strResources)t.push(this._editStacks.get(i)||x3);return new yS(t)}_tryToSplitAndUndo(e,t,i,n){if(t.canSplit())return this._splitPastWorkspaceElement(t,i),this._notificationService.warn(n),new Mb(this._undo(e,0,!0));for(const s of t.strResources)this.removeElements(s);return this._notificationService.warn(n),new Mb}_checkWorkspaceUndo(e,t,i,n){if(t.removedResources)return this._tryToSplitAndUndo(e,t,t.removedResources,m({key:"cannotWorkspaceUndo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not undo '{0}' across all files. {1}",t.label,t.removedResources.createMessage()));if(n&&t.invalidatedResources)return this._tryToSplitAndUndo(e,t,t.invalidatedResources,m({key:"cannotWorkspaceUndo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not undo '{0}' across all files. {1}",t.label,t.invalidatedResources.createMessage()));const s=[];for(const a of i.editStacks)a.getClosestPastElement()!==t&&s.push(a.resourceLabel);if(s.length>0)return this._tryToSplitAndUndo(e,t,null,m({key:"cannotWorkspaceUndoDueToChanges",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because changes were made to {1}",t.label,s.join(", ")));const r=[];for(const a of i.editStacks)a.locked&&r.push(a.resourceLabel);return r.length>0?this._tryToSplitAndUndo(e,t,null,m({key:"cannotWorkspaceUndoDueToInProgressUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because there is already an undo or redo operation running on {1}",t.label,r.join(", "))):i.isValid()?null:this._tryToSplitAndUndo(e,t,null,m({key:"cannotWorkspaceUndoDueToInMeantimeUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because an undo or redo operation occurred in the meantime",t.label))}_workspaceUndo(e,t,i){const n=this._getAffectedEditStacks(t),s=this._checkWorkspaceUndo(e,t,n,!1);return s?s.returnValue:this._confirmAndExecuteWorkspaceUndo(e,t,n,i)}_isPartOfUndoGroup(e){if(!e.groupId)return!1;for(const[,t]of this._editStacks){const i=t.getClosestPastElement();if(i){if(i===e){const n=t.getSecondClosestPastElement();if(n&&n.groupId===e.groupId)return!0}if(i.groupId===e.groupId)return!0}}return!1}async _confirmAndExecuteWorkspaceUndo(e,t,i,n){if(t.canSplit()&&!this._isPartOfUndoGroup(t)){let a;(function(d){d[d.All=0]="All",d[d.This=1]="This",d[d.Cancel=2]="Cancel"})(a||(a={}));const{result:l}=await this._dialogService.prompt({type:Qt.Info,message:m("confirmWorkspace","Would you like to undo '{0}' across all files?",t.label),buttons:[{label:m({key:"ok",comment:["{0} denotes a number that is > 1, && denotes a mnemonic"]},"&&Undo in {0} Files",i.editStacks.length),run:()=>a.All},{label:m({key:"nok",comment:["&& denotes a mnemonic"]},"Undo this &&File"),run:()=>a.This}],cancelButton:{run:()=>a.Cancel}});if(l===a.Cancel)return;if(l===a.This)return this._splitPastWorkspaceElement(t,null),this._undo(e,0,!0);const c=this._checkWorkspaceUndo(e,t,i,!1);if(c)return c.returnValue;n=!0}let s;try{s=await this._invokeWorkspacePrepare(t)}catch(a){return this._onError(a,t)}const r=this._checkWorkspaceUndo(e,t,i,!0);if(r)return s.dispose(),r.returnValue;for(const a of i.editStacks)a.moveBackward(t);return this._safeInvokeWithLocks(t,()=>t.actual.undo(),i,s,()=>this._continueUndoInGroup(t.groupId,n))}_resourceUndo(e,t,i){if(!t.isValid){e.flushAllElements();return}if(e.locked){const n=m({key:"cannotResourceUndoDueToInProgressUndoRedo",comment:["{0} is a label for an operation."]},"Could not undo '{0}' because there is already an undo or redo operation running.",t.label);this._notificationService.warn(n);return}return this._invokeResourcePrepare(t,n=>(e.moveBackward(t),this._safeInvokeWithLocks(t,()=>t.actual.undo(),new yS([e]),n,()=>this._continueUndoInGroup(t.groupId,i))))}_findClosestUndoElementInGroup(e){if(!e)return[null,null];let t=null,i=null;for(const[n,s]of this._editStacks){const r=s.getClosestPastElement();r&&r.groupId===e&&(!t||r.groupOrder>t.groupOrder)&&(t=r,i=n)}return[t,i]}_continueUndoInGroup(e,t){if(!e)return;const[,i]=this._findClosestUndoElementInGroup(e);if(i)return this._undo(i,0,t)}undo(e){if(e instanceof wd){const[,t]=this._findClosestUndoElementWithSource(e.id);return t?this._undo(t,e.id,!1):void 0}return typeof e=="string"?this._undo(e,0,!1):this._undo(this.getUriComparisonKey(e),0,!1)}_undo(e,t=0,i){if(!this._editStacks.has(e))return;const n=this._editStacks.get(e),s=n.getClosestPastElement();if(!s)return;if(s.groupId){const[a,l]=this._findClosestUndoElementInGroup(s.groupId);if(s!==a&&l)return this._undo(l,t,i)}return(s.sourceId!==t||s.confirmBeforeUndo)&&!i?this._confirmAndContinueUndo(e,t,s):s.type===1?this._workspaceUndo(e,s,i):this._resourceUndo(n,s,i)}async _confirmAndContinueUndo(e,t,i){if((await this._dialogService.confirm({message:m("confirmDifferentSource","Would you like to undo '{0}'?",i.label),primaryButton:m({key:"confirmDifferentSource.yes",comment:["&& denotes a mnemonic"]},"&&Yes"),cancelButton:m("confirmDifferentSource.no","No")})).confirmed)return this._undo(e,t,!0)}_findClosestRedoElementWithSource(e){if(!e)return[null,null];let t=null,i=null;for(const[n,s]of this._editStacks){const r=s.getClosestFutureElement();r&&r.sourceId===e&&(!t||r.sourceOrder0)return this._tryToSplitAndRedo(e,t,null,m({key:"cannotWorkspaceRedoDueToChanges",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because changes were made to {1}",t.label,s.join(", ")));const r=[];for(const a of i.editStacks)a.locked&&r.push(a.resourceLabel);return r.length>0?this._tryToSplitAndRedo(e,t,null,m({key:"cannotWorkspaceRedoDueToInProgressUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because there is already an undo or redo operation running on {1}",t.label,r.join(", "))):i.isValid()?null:this._tryToSplitAndRedo(e,t,null,m({key:"cannotWorkspaceRedoDueToInMeantimeUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because an undo or redo operation occurred in the meantime",t.label))}_workspaceRedo(e,t){const i=this._getAffectedEditStacks(t),n=this._checkWorkspaceRedo(e,t,i,!1);return n?n.returnValue:this._executeWorkspaceRedo(e,t,i)}async _executeWorkspaceRedo(e,t,i){let n;try{n=await this._invokeWorkspacePrepare(t)}catch(r){return this._onError(r,t)}const s=this._checkWorkspaceRedo(e,t,i,!0);if(s)return n.dispose(),s.returnValue;for(const r of i.editStacks)r.moveForward(t);return this._safeInvokeWithLocks(t,()=>t.actual.redo(),i,n,()=>this._continueRedoInGroup(t.groupId))}_resourceRedo(e,t){if(!t.isValid){e.flushAllElements();return}if(e.locked){const i=m({key:"cannotResourceRedoDueToInProgressUndoRedo",comment:["{0} is a label for an operation."]},"Could not redo '{0}' because there is already an undo or redo operation running.",t.label);this._notificationService.warn(i);return}return this._invokeResourcePrepare(t,i=>(e.moveForward(t),this._safeInvokeWithLocks(t,()=>t.actual.redo(),new yS([e]),i,()=>this._continueRedoInGroup(t.groupId))))}_findClosestRedoElementInGroup(e){if(!e)return[null,null];let t=null,i=null;for(const[n,s]of this._editStacks){const r=s.getClosestFutureElement();r&&r.groupId===e&&(!t||r.groupOrder=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fA=function(o,e){return function(t,i){e(t,i,o)}};const q0=He("ILanguageFeatureDebounceService");var MC;(function(o){const e=new WeakMap;let t=0;function i(n){let s=e.get(n);return s===void 0&&(s=++t,e.set(n,s)),s}o.of=i})(MC||(MC={}));class $${constructor(e){this._default=e}get(e){return this._default}update(e,t){return this._default}default(){return this._default}}class K${constructor(e,t,i,n,s,r){this._logService=e,this._name=t,this._registry=i,this._default=n,this._min=s,this._max=r,this._cache=new ou(50,.7)}_key(e){return e.id+this._registry.all(e).reduce((t,i)=>N0(MC.of(i),t),0)}get(e){const t=this._key(e),i=this._cache.get(t);return i?bn(i.value,this._min,this._max):this.default()}update(e,t){const i=this._key(e);let n=this._cache.get(i);n||(n=new z$(6),this._cache.set(i,n));const s=bn(n.update(t),this._min,this._max);return GN(e.uri,"output")||this._logService.trace(`[DEBOUNCE: ${this._name}] for ${e.uri.toString()} is ${s}ms`),s}_overall(){const e=new k3;for(const[,t]of this._cache)e.update(t.value);return e.value}default(){const e=this._overall()|0||this._default;return bn(e,this._min,this._max)}}let Ck=class{constructor(e,t){this._logService=e,this._data=new Map,this._isDev=t.isExtensionDevelopment||!t.isBuilt}for(e,t,i){const n=i?.min??50,s=i?.max??n**2,r=i?.key??void 0,a=`${MC.of(e)},${n}${r?","+r:""}`;let l=this._data.get(a);return l||(this._isDev?(this._logService.debug(`[DEBOUNCE: ${t}] is disabled in developed mode`),l=new $$(n*1.5)):l=new K$(this._logService,t,e,this._overallAverage()|0||n*1.5,n,s),this._data.set(a,l)),l}_overallAverage(){const e=new k3;for(const t of this._data.values())e.update(t.default());return e.value}};Ck=U$([fA(0,gs),fA(1,vT)],Ck);Qe(q0,Ck,1);class sr{static getLanguageId(e){return(e&255)>>>0}static getTokenType(e){return(e&768)>>>8}static containsBalancedBrackets(e){return(e&1024)!==0}static getFontStyle(e){return(e&30720)>>>11}static getForeground(e){return(e&16744448)>>>15}static getBackground(e){return(e&4278190080)>>>24}static getClassNameFromMetadata(e){let i="mtk"+this.getForeground(e);const n=this.getFontStyle(e);return n&1&&(i+=" mtki"),n&2&&(i+=" mtkb"),n&4&&(i+=" mtku"),n&8&&(i+=" mtks"),i}static getInlineStyleFromMetadata(e,t){const i=this.getForeground(e),n=this.getFontStyle(e);let s=`color: ${t[i]};`;n&1&&(s+="font-style: italic;"),n&2&&(s+="font-weight: bold;");let r="";return n&4&&(r+=" underline"),n&8&&(r+=" line-through"),r&&(s+=`text-decoration:${r};`),s}static getPresentationFromMetadata(e){const t=this.getForeground(e),i=this.getFontStyle(e);return{foreground:t,italic:!!(i&1),bold:!!(i&2),underline:!!(i&4),strikethrough:!!(i&8)}}}function hg(o){let e=0,t=0,i=0,n=0;for(let s=0,r=o.length;s=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},SS=function(o,e){return function(t,i){e(t,i,o)}};let vk=class{constructor(e,t,i,n){this._legend=e,this._themeService=t,this._languageService=i,this._logService=n,this._hasWarnedOverlappingTokens=!1,this._hasWarnedInvalidLengthTokens=!1,this._hasWarnedInvalidEditStart=!1,this._hashTable=new wk}getMetadata(e,t,i){const n=this._languageService.languageIdCodec.encodeLanguageId(i),s=this._hashTable.get(e,t,n);let r;if(s)r=s.metadata;else{let a=this._legend.tokenTypes[e];const l=[];if(a){let c=t;for(let h=0;c>0&&h>1;const d=this._themeService.getColorTheme().getTokenStyleMetadata(a,l,i);if(typeof d>"u")r=2147483647;else{if(r=0,typeof d.italic<"u"){const h=(d.italic?1:0)<<11;r|=h|1}if(typeof d.bold<"u"){const h=(d.bold?2:0)<<11;r|=h|2}if(typeof d.underline<"u"){const h=(d.underline?4:0)<<11;r|=h|4}if(typeof d.strikethrough<"u"){const h=(d.strikethrough?8:0)<<11;r|=h|8}if(d.foreground){const h=d.foreground<<15;r|=h|16}r===0&&(r=2147483647)}}else r=2147483647,a="not-in-legend";this._hashTable.add(e,t,n,r)}return r}warnOverlappingSemanticTokens(e,t){this._hasWarnedOverlappingTokens||(this._hasWarnedOverlappingTokens=!0,this._logService.warn(`Overlapping semantic tokens detected at lineNumber ${e}, column ${t}`))}warnInvalidLengthSemanticTokens(e,t){this._hasWarnedInvalidLengthTokens||(this._hasWarnedInvalidLengthTokens=!0,this._logService.warn(`Semantic token with invalid length detected at lineNumber ${e}, column ${t}`))}warnInvalidEditStart(e,t,i,n,s){this._hasWarnedInvalidEditStart||(this._hasWarnedInvalidEditStart=!0,this._logService.warn(`Invalid semantic tokens edit detected (previousResultId: ${e}, resultId: ${t}) at edit #${i}: The provided start offset ${n} is outside the previous data (length ${s}).`))}};vk=j$([SS(1,en),SS(2,qt),SS(3,gs)],vk);class q${constructor(e,t,i,n){this.tokenTypeIndex=e,this.tokenModifierSet=t,this.languageId=i,this.metadata=n,this.next=null}}const qa=class qa{constructor(){this._elementsCount=0,this._currentLengthIndex=0,this._currentLength=qa._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1=this._growCount){const s=this._elements;this._currentLengthIndex++,this._currentLength=qa._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},LS=function(o,e){return function(t,i){e(t,i,o)}};let yk=class extends z{constructor(e,t,i){super(),this._themeService=e,this._logService=t,this._languageService=i,this._caches=new WeakMap,this._register(this._themeService.onDidColorThemeChange(()=>{this._caches=new WeakMap}))}getStyling(e){return this._caches.has(e)||this._caches.set(e,new vk(e.getLegend(),this._themeService,this._languageService,this._logService)),this._caches.get(e)}};yk=Z$([LS(0,en),LS(1,gs),LS(2,qt)],yk);Qe(G$,yk,1);function Vl(o){return o===47||o===92}function D3(o){return o.replace(/[\\/]/g,oi.sep)}function Y$(o){return o.indexOf("/")===-1&&(o=D3(o)),/^[a-zA-Z]:(\/|$)/.test(o)&&(o="/"+o),o}function gA(o,e=oi.sep){if(!o)return"";const t=o.length,i=o.charCodeAt(0);if(Vl(i)){if(Vl(o.charCodeAt(1))&&!Vl(o.charCodeAt(2))){let s=3;const r=s;for(;so.length)return!1;if(t){if(!WN(o,e))return!1;if(e.length===o.length)return!0;let s=e.length;return e.charAt(e.length-1)===i&&s--,o.charAt(s)===i}return e.charAt(e.length-1)!==i&&(e+=i),o.indexOf(e)===0}function I3(o){return o>=65&&o<=90||o>=97&&o<=122}function Q$(o,e=kn){return e?I3(o.charCodeAt(0))&&o.charCodeAt(1)===58:!1}const Rb="**",mA="/",E1="[/\\\\]",N1="[^/\\\\]",X$=/\//g;function pA(o,e){switch(o){case 0:return"";case 1:return`${N1}*?`;default:return`(?:${E1}|${N1}+${E1}${e?`|${E1}${N1}+`:""})*?`}}function _A(o,e){if(!o)return[];const t=[];let i=!1,n=!1,s="";for(const r of o){switch(r){case e:if(!i&&!n){t.push(s),s="";continue}break;case"{":i=!0;break;case"}":i=!1;break;case"[":n=!0;break;case"]":n=!1;break}s+=r}return s&&t.push(s),t}function E3(o){if(!o)return"";let e="";const t=_A(o,mA);if(t.every(i=>i===Rb))e=".*";else{let i=!1;t.forEach((n,s)=>{if(n===Rb){if(i)return;e+=pA(2,s===t.length-1)}else{let r=!1,a="",l=!1,c="";for(const d of n){if(d!=="}"&&r){a+=d;continue}if(l&&(d!=="]"||!c)){let h;d==="-"?h=d:(d==="^"||d==="!")&&!c?h="^":d===mA?h="":h=xl(d),c+=h;continue}switch(d){case"{":r=!0;continue;case"[":l=!0;continue;case"}":{const u=`(?:${_A(a,",").map(f=>E3(f)).join("|")})`;e+=u,r=!1,a="";break}case"]":{e+="["+c+"]",l=!1,c="";break}case"?":e+=N1;continue;case"*":e+=pA(1);continue;default:e+=xl(d)}}swT(a,e)).filter(a=>a!==sa),o),i=t.length;if(!i)return sa;if(i===1)return t[0];const n=function(a,l){for(let c=0,d=t.length;c!!a.allBasenames);s&&(n.allBasenames=s.allBasenames);const r=t.reduce((a,l)=>l.allPaths?a.concat(l.allPaths):a,[]);return r.length&&(n.allPaths=r),n}function wA(o,e,t){const i=fc===oi.sep,n=i?o:o.replace(X$,fc),s=fc+n,r=oi.sep+o;let a;return t?a=function(l,c){return typeof l=="string"&&(l===n||l.endsWith(s)||!i&&(l===o||l.endsWith(r)))?e:null}:a=function(l,c){return typeof l=="string"&&(l===n||!i&&l===o)?e:null},a.allPaths=[(t?"*/":"./")+o],a}function lK(o){try{const e=new RegExp(`^${E3(o)}$`);return function(t){return e.lastIndex=0,typeof t=="string"&&e.test(t)?o:null}}catch{return sa}}function cK(o,e,t){return!o||typeof e!="string"?!1:N3(o)(e,void 0,t)}function N3(o,e={}){if(!o)return CA;if(typeof o=="string"||dK(o)){const t=wT(o,e);if(t===sa)return CA;const i=function(n,s){return!!t(n,s)};return t.allBasenames&&(i.allBasenames=t.allBasenames),t.allPaths&&(i.allPaths=t.allPaths),i}return hK(o,e)}function dK(o){const e=o;return e?typeof e.base=="string"&&typeof e.pattern=="string":!1}function hK(o,e){const t=T3(Object.getOwnPropertyNames(o).map(a=>uK(a,o[a],e)).filter(a=>a!==sa)),i=t.length;if(!i)return sa;if(!t.some(a=>!!a.requiresSiblings)){if(i===1)return t[0];const a=function(d,h){let u;for(let f=0,g=t.length;f{for(const f of u){const g=await f;if(typeof g=="string")return g}return null})():null},l=t.find(d=>!!d.allBasenames);l&&(a.allBasenames=l.allBasenames);const c=t.reduce((d,h)=>h.allPaths?d.concat(h.allPaths):d,[]);return c.length&&(a.allPaths=c),a}const n=function(a,l,c){let d,h;for(let u=0,f=t.length;u{for(const u of h){const f=await u;if(typeof f=="string")return f}return null})():null},s=t.find(a=>!!a.allBasenames);s&&(n.allBasenames=s.allBasenames);const r=t.reduce((a,l)=>l.allPaths?a.concat(l.allPaths):a,[]);return r.length&&(n.allPaths=r),n}function uK(o,e,t){if(e===!1)return sa;const i=wT(o,t);if(i===sa)return sa;if(typeof e=="boolean")return i;if(e){const n=e.when;if(typeof n=="string"){const s=(r,a,l,c)=>{if(!c||!i(r,a))return null;const d=n.replace("$(basename)",()=>l),h=c(d);return Bx(h)?h.then(u=>u?o:null):h?o:null};return s.requiresSiblings=!0,s}}return i}function T3(o,e){const t=o.filter(a=>!!a.basenames);if(t.length<2)return o;const i=t.reduce((a,l)=>{const c=l.basenames;return c?a.concat(c):a},[]);let n;if(e){n=[];for(let a=0,l=i.length;a{const c=l.patterns;return c?a.concat(c):a},[]);const s=function(a,l){if(typeof a!="string")return null;if(!l){let d;for(d=a.length;d>0;d--){const h=a.charCodeAt(d-1);if(h===47||h===92)break}l=a.substr(d)}const c=i.indexOf(l);return c!==-1?n[c]:null};s.basenames=i,s.patterns=n,s.allBasenames=i;const r=o.filter(a=>!a.basenames);return r.push(s),r}function M3(o,e,t,i,n,s){if(Array.isArray(o)){let r=0;for(const a of o){const l=M3(a,e,t,i,n,s);if(l===10)return l;l>r&&(r=l)}return r}else{if(typeof o=="string")return i?o==="*"?5:o===t?10:0:0;if(o){const{language:r,pattern:a,scheme:l,hasAccessToAllModels:c,notebookType:d}=o;if(!i&&!c)return 0;d&&n&&(e=n);let h=0;if(l)if(l===e.scheme)h=10;else if(l==="*")h=5;else return 0;if(r)if(r===t)h=10;else if(r==="*")h=Math.max(h,5);else return 0;if(d)if(d===s)h=10;else if(d==="*"&&s!==void 0)h=Math.max(h,5);else return 0;if(a){let u;if(typeof a=="string"?u=a:u={...a,base:tF(a.base)},u===e.fsPath||cK(u,e.fsPath))h=10;else return 0}return h}else return 0}}function R3(o){return typeof o=="string"?!1:Array.isArray(o)?o.every(R3):!!o.exclusive}class yA{constructor(e,t,i,n,s){this.uri=e,this.languageId=t,this.notebookUri=i,this.notebookType=n,this.recursive=s}equals(e){return this.notebookType===e.notebookType&&this.languageId===e.languageId&&this.uri.toString()===e.uri.toString()&&this.notebookUri?.toString()===e.notebookUri?.toString()&&this.recursive===e.recursive}}class Ft{constructor(e){this._notebookInfoResolver=e,this._clock=0,this._entries=[],this._onDidChange=new A,this.onDidChange=this._onDidChange.event}register(e,t){let i={selector:e,provider:t,_score:-1,_time:this._clock++};return this._entries.push(i),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),_e(()=>{if(i){const n=this._entries.indexOf(i);n>=0&&(this._entries.splice(n,1),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),i=void 0)}})}has(e){return this.all(e).length>0}all(e){if(!e)return[];this._updateScores(e,!1);const t=[];for(const i of this._entries)i._score>0&&t.push(i.provider);return t}ordered(e,t=!1){const i=[];return this._orderedForEach(e,t,n=>i.push(n.provider)),i}orderedGroups(e){const t=[];let i,n;return this._orderedForEach(e,!1,s=>{i&&n===s._score?i.push(s.provider):(n=s._score,i=[s.provider],t.push(i))}),t}_orderedForEach(e,t,i){this._updateScores(e,t);for(const n of this._entries)n._score>0&&i(n)}_updateScores(e,t){const i=this._notebookInfoResolver?.(e.uri),n=i?new yA(e.uri,e.getLanguageId(),i.uri,i.type,t):new yA(e.uri,e.getLanguageId(),void 0,void 0,t);if(!this._lastCandidate?.equals(n)){this._lastCandidate=n;for(const s of this._entries)if(s._score=M3(s.selector,n.uri,n.languageId,RU(e),n.notebookUri,n.notebookType),R3(s.selector)&&s._score>0)if(t)s._score=0;else{for(const r of this._entries)r._score=0;s._score=1e3;break}this._entries.sort(Ft._compareByScoreAndTime)}}static _compareByScoreAndTime(e,t){return e._scoret._score?-1:Dm(e.selector)&&!Dm(t.selector)?1:!Dm(e.selector)&&Dm(t.selector)?-1:e._timet._time?-1:0}}function Dm(o){return typeof o=="string"?!1:Array.isArray(o)?o.some(Dm):!!o.isBuiltin}class fK{constructor(){this.referenceProvider=new Ft(this._score.bind(this)),this.renameProvider=new Ft(this._score.bind(this)),this.newSymbolNamesProvider=new Ft(this._score.bind(this)),this.codeActionProvider=new Ft(this._score.bind(this)),this.definitionProvider=new Ft(this._score.bind(this)),this.typeDefinitionProvider=new Ft(this._score.bind(this)),this.declarationProvider=new Ft(this._score.bind(this)),this.implementationProvider=new Ft(this._score.bind(this)),this.documentSymbolProvider=new Ft(this._score.bind(this)),this.inlayHintsProvider=new Ft(this._score.bind(this)),this.colorProvider=new Ft(this._score.bind(this)),this.codeLensProvider=new Ft(this._score.bind(this)),this.documentFormattingEditProvider=new Ft(this._score.bind(this)),this.documentRangeFormattingEditProvider=new Ft(this._score.bind(this)),this.onTypeFormattingEditProvider=new Ft(this._score.bind(this)),this.signatureHelpProvider=new Ft(this._score.bind(this)),this.hoverProvider=new Ft(this._score.bind(this)),this.documentHighlightProvider=new Ft(this._score.bind(this)),this.multiDocumentHighlightProvider=new Ft(this._score.bind(this)),this.selectionRangeProvider=new Ft(this._score.bind(this)),this.foldingRangeProvider=new Ft(this._score.bind(this)),this.linkProvider=new Ft(this._score.bind(this)),this.inlineCompletionsProvider=new Ft(this._score.bind(this)),this.inlineEditProvider=new Ft(this._score.bind(this)),this.completionProvider=new Ft(this._score.bind(this)),this.linkedEditingRangeProvider=new Ft(this._score.bind(this)),this.documentRangeSemanticTokensProvider=new Ft(this._score.bind(this)),this.documentSemanticTokensProvider=new Ft(this._score.bind(this)),this.documentDropEditProvider=new Ft(this._score.bind(this)),this.documentPasteEditProvider=new Ft(this._score.bind(this))}_score(e){return this._notebookTypeResolver?.(e)}}Qe(Se,fK,1);function yT(o){return`--vscode-${o.replace(/\./g,"-")}`}function oe(o){return`var(${yT(o)})`}function gK(o,e){return`var(${yT(o)}, ${e})`}function mK(o){return o!==null&&typeof o=="object"&&"light"in o&&"dark"in o}const A3={ColorContribution:"base.contributions.colors"},pK="default";class _K{constructor(){this._onDidChangeSchema=new A,this.onDidChangeSchema=this._onDidChangeSchema.event,this.colorSchema={type:"object",properties:{}},this.colorReferenceSchema={type:"string",enum:[],enumDescriptions:[]},this.colorsById={}}registerColor(e,t,i,n=!1,s){const r={id:e,description:i,defaults:t,needsTransparency:n,deprecationMessage:s};this.colorsById[e]=r;const a={type:"string",format:"color-hex",defaultSnippets:[{body:"${1:#ff0000}"}]};return s&&(a.deprecationMessage=s),n&&(a.pattern="^#(?:(?[0-9a-fA-f]{3}[0-9a-eA-E])|(?:[0-9a-fA-F]{6}(?:(?![fF]{2})(?:[0-9a-fA-F]{2}))))?$",a.patternErrorMessage=m("transparecyRequired","This color must be transparent or it will obscure content")),this.colorSchema.properties[e]={description:i,oneOf:[a,{type:"string",const:pK,description:m("useDefault","Use the default color.")}]},this.colorReferenceSchema.enum.push(e),this.colorReferenceSchema.enumDescriptions.push(i),this._onDidChangeSchema.fire(),e}getColors(){return Object.keys(this.colorsById).map(e=>this.colorsById[e])}resolveDefaultColor(e,t){const i=this.colorsById[e];if(i?.defaults){const n=mK(i.defaults)?i.defaults[t.type]:i.defaults;return jo(n,t)}}getColorSchema(){return this.colorSchema}toString(){const e=(t,i)=>{const n=t.indexOf(".")===-1?0:1,s=i.indexOf(".")===-1?0:1;return n!==s?n-s:t.localeCompare(i)};return Object.keys(this.colorsById).sort(e).map(t=>`- \`${t}\`: ${this.colorsById[t].description}`).join(` +`)}}const G0=new _K;Bi.add(A3.ColorContribution,G0);function D(o,e,t,i,n){return G0.registerColor(o,e,t,i,n)}function bK(o,e){switch(o.op){case 0:return jo(o.value,e)?.darken(o.factor);case 1:return jo(o.value,e)?.lighten(o.factor);case 2:return jo(o.value,e)?.transparent(o.factor);case 3:{const t=jo(o.background,e);return t?jo(o.value,e)?.makeOpaque(t):jo(o.value,e)}case 4:for(const t of o.values){const i=jo(t,e);if(i)return i}return;case 6:return jo(e.defines(o.if)?o.then:o.else,e);case 5:{const t=jo(o.value,e);if(!t)return;const i=jo(o.background,e);return i?t.isDarkerThan(i)?q.getLighterColor(t,i,o.factor).transparent(o.transparency):q.getDarkerColor(t,i,o.factor).transparent(o.transparency):t.transparent(o.factor*o.transparency)}default:throw z0()}}function ru(o,e){return{op:0,value:o,factor:e}}function pr(o,e){return{op:1,value:o,factor:e}}function Ae(o,e){return{op:2,value:o,factor:e}}function t_(...o){return{op:4,values:o}}function CK(o,e,t){return{op:6,if:o,then:e,else:t}}function SA(o,e,t,i){return{op:5,value:o,background:e,factor:t,transparency:i}}function jo(o,e){if(o!==null){if(typeof o=="string")return o[0]==="#"?q.fromHex(o):e.getColor(o);if(o instanceof q)return o;if(typeof o=="object")return bK(o,e)}}const P3="vscode://schemas/workbench-colors",O3=Bi.as(K0.JSONContribution);O3.registerSchema(P3,G0.getColorSchema());const LA=new ci(()=>O3.notifySchemaChanged(P3),200);G0.onDidChangeSchema(()=>{LA.isScheduled()||LA.schedule()});const Pe=D("foreground",{dark:"#CCCCCC",light:"#616161",hcDark:"#FFFFFF",hcLight:"#292929"},m("foreground","Overall foreground color. This color is only used if not overridden by a component."));D("disabledForeground",{dark:"#CCCCCC80",light:"#61616180",hcDark:"#A5A5A5",hcLight:"#7F7F7F"},m("disabledForeground","Overall foreground for disabled elements. This color is only used if not overridden by a component."));D("errorForeground",{dark:"#F48771",light:"#A1260D",hcDark:"#F48771",hcLight:"#B5200D"},m("errorForeground","Overall foreground color for error messages. This color is only used if not overridden by a component."));D("descriptionForeground",{light:"#717171",dark:Ae(Pe,.7),hcDark:Ae(Pe,.7),hcLight:Ae(Pe,.7)},m("descriptionForeground","Foreground color for description text providing additional information, for example for a label."));const Lk=D("icon.foreground",{dark:"#C5C5C5",light:"#424242",hcDark:"#FFFFFF",hcLight:"#292929"},m("iconForeground","The default color for icons in the workbench.")),ga=D("focusBorder",{dark:"#007FD4",light:"#0090F1",hcDark:"#F38518",hcLight:"#006BBD"},m("focusBorder","Overall border color for focused elements. This color is only used if not overridden by a component.")),Ye=D("contrastBorder",{light:null,dark:null,hcDark:"#6FC3DF",hcLight:"#0F4A85"},m("contrastBorder","An extra border around elements to separate them from others for greater contrast.")),Ut=D("contrastActiveBorder",{light:null,dark:null,hcDark:ga,hcLight:ga},m("activeContrastBorder","An extra border around active elements to separate them from others for greater contrast."));D("selection.background",null,m("selectionBackground","The background color of text selections in the workbench (e.g. for input fields or text areas). Note that this does not apply to selections within the editor."));const vK=D("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},m("textLinkForeground","Foreground color for links in text."));D("textLink.activeForeground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},m("textLinkActiveForeground","Foreground color for links in text when clicked on and on mouse hover."));D("textSeparator.foreground",{light:"#0000002e",dark:"#ffffff2e",hcDark:q.black,hcLight:"#292929"},m("textSeparatorForeground","Color for text separators."));D("textPreformat.foreground",{light:"#A31515",dark:"#D7BA7D",hcDark:"#000000",hcLight:"#FFFFFF"},m("textPreformatForeground","Foreground color for preformatted text segments."));D("textPreformat.background",{light:"#0000001A",dark:"#FFFFFF1A",hcDark:"#FFFFFF",hcLight:"#09345f"},m("textPreformatBackground","Background color for preformatted text segments."));D("textBlockQuote.background",{light:"#f2f2f2",dark:"#222222",hcDark:null,hcLight:"#F2F2F2"},m("textBlockQuoteBackground","Background color for block quotes in text."));D("textBlockQuote.border",{light:"#007acc80",dark:"#007acc80",hcDark:q.white,hcLight:"#292929"},m("textBlockQuoteBorder","Border color for block quotes in text."));D("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hcDark:q.black,hcLight:"#F2F2F2"},m("textCodeBlockBackground","Background color for code blocks in text."));D("sash.hoverBorder",ga,m("sashActiveBorder","Border color of active sashes."));const T1=D("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hcDark:q.black,hcLight:"#0F4A85"},m("badgeBackground","Badge background color. Badges are small information labels, e.g. for search results count.")),wK=D("badge.foreground",{dark:q.white,light:"#333",hcDark:q.white,hcLight:q.white},m("badgeForeground","Badge foreground color. Badges are small information labels, e.g. for search results count.")),ST=D("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hcDark:null,hcLight:null},m("scrollbarShadow","Scrollbar shadow to indicate that the view is scrolled.")),F3=D("scrollbarSlider.background",{dark:q.fromHex("#797979").transparent(.4),light:q.fromHex("#646464").transparent(.4),hcDark:Ae(Ye,.6),hcLight:Ae(Ye,.4)},m("scrollbarSliderBackground","Scrollbar slider background color.")),B3=D("scrollbarSlider.hoverBackground",{dark:q.fromHex("#646464").transparent(.7),light:q.fromHex("#646464").transparent(.7),hcDark:Ae(Ye,.8),hcLight:Ae(Ye,.8)},m("scrollbarSliderHoverBackground","Scrollbar slider background color when hovering.")),W3=D("scrollbarSlider.activeBackground",{dark:q.fromHex("#BFBFBF").transparent(.4),light:q.fromHex("#000000").transparent(.6),hcDark:Ye,hcLight:Ye},m("scrollbarSliderActiveBackground","Scrollbar slider background color when clicked on.")),yK=D("progressBar.background",{dark:q.fromHex("#0E70C0"),light:q.fromHex("#0E70C0"),hcDark:Ye,hcLight:Ye},m("progressBarBackground","Background color of the progress bar that can show for long running operations.")),Oo=D("editor.background",{light:"#ffffff",dark:"#1E1E1E",hcDark:q.black,hcLight:q.white},m("editorBackground","Editor background color.")),Sa=D("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:q.white,hcLight:Pe},m("editorForeground","Editor default foreground color."));D("editorStickyScroll.background",Oo,m("editorStickyScrollBackground","Background color of sticky scroll in the editor"));D("editorStickyScrollHover.background",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:q.fromHex("#0F4A85").transparent(.1)},m("editorStickyScrollHoverBackground","Background color of sticky scroll on hover in the editor"));D("editorStickyScroll.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("editorStickyScrollBorder","Border color of sticky scroll in the editor"));D("editorStickyScroll.shadow",ST,m("editorStickyScrollShadow"," Shadow color of sticky scroll in the editor"));const no=D("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:q.white},m("editorWidgetBackground","Background color of editor widgets, such as find/replace.")),Z0=D("editorWidget.foreground",Pe,m("editorWidgetForeground","Foreground color of editor widgets, such as find/replace.")),LT=D("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hcDark:Ye,hcLight:Ye},m("editorWidgetBorder","Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget."));D("editorWidget.resizeBorder",null,m("editorWidgetResizeBorder","Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget."));D("editorError.background",null,m("editorError.background","Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);const Y0=D("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},m("editorError.foreground","Foreground color of error squigglies in the editor.")),SK=D("editorError.border",{dark:null,light:null,hcDark:q.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},m("errorBorder","If set, color of double underlines for errors in the editor.")),LK=D("editorWarning.background",null,m("editorWarning.background","Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),Il=D("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD370",hcLight:"#895503"},m("editorWarning.foreground","Foreground color of warning squigglies in the editor.")),i_=D("editorWarning.border",{dark:null,light:null,hcDark:q.fromHex("#FFCC00").transparent(.8),hcLight:q.fromHex("#FFCC00").transparent(.8)},m("warningBorder","If set, color of double underlines for warnings in the editor."));D("editorInfo.background",null,m("editorInfo.background","Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);const ma=D("editorInfo.foreground",{dark:"#3794FF",light:"#1a85ff",hcDark:"#3794FF",hcLight:"#1a85ff"},m("editorInfo.foreground","Foreground color of info squigglies in the editor.")),n_=D("editorInfo.border",{dark:null,light:null,hcDark:q.fromHex("#3794FF").transparent(.8),hcLight:"#292929"},m("infoBorder","If set, color of double underlines for infos in the editor.")),xK=D("editorHint.foreground",{dark:q.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},m("editorHint.foreground","Foreground color of hint squigglies in the editor."));D("editorHint.border",{dark:null,light:null,hcDark:q.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},m("hintBorder","If set, color of double underlines for hints in the editor."));const kK=D("editorLink.activeForeground",{dark:"#4E94CE",light:q.blue,hcDark:q.cyan,hcLight:"#292929"},m("activeLinkForeground","Color of active links.")),tf=D("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},m("editorSelectionBackground","Color of the editor selection.")),DK=D("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:q.white},m("editorSelectionForeground","Color of the selected text for high contrast.")),H3=D("editor.inactiveSelectionBackground",{light:Ae(tf,.5),dark:Ae(tf,.5),hcDark:Ae(tf,.7),hcLight:Ae(tf,.5)},m("editorInactiveSelection","Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),V3=D("editor.selectionHighlightBackground",{light:SA(tf,Oo,.3,.6),dark:SA(tf,Oo,.3,.6),hcDark:null,hcLight:null},m("editorSelectionHighlight","Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:Ut,hcLight:Ut},m("editorSelectionHighlightBorder","Border color for regions with the same content as the selection."));D("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},m("editorFindMatch","Color of the current search match."));D("editor.findMatchForeground",null,m("editorFindMatchForeground","Text color of the current search match."));const ll=D("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},m("findMatchHighlight","Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.findMatchHighlightForeground",null,m("findMatchHighlightForeground","Foreground color of the other search matches."),!0);D("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},m("findRangeHighlight","Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.findMatchBorder",{light:null,dark:null,hcDark:Ut,hcLight:Ut},m("editorFindMatchBorder","Border color of the current search match."));const Ud=D("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:Ut,hcLight:Ut},m("findMatchHighlightBorder","Border color of the other search matches."));D("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:Ae(Ut,.4),hcLight:Ae(Ut,.4)},m("findRangeHighlightBorder","Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},m("hoverHighlight","Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0);const RC=D("editorHoverWidget.background",no,m("hoverBackground","Background color of the editor hover."));D("editorHoverWidget.foreground",Z0,m("hoverForeground","Foreground color of the editor hover."));const z3=D("editorHoverWidget.border",LT,m("hoverBorder","Border color of the editor hover."));D("editorHoverWidget.statusBarBackground",{dark:pr(RC,.2),light:ru(RC,.05),hcDark:no,hcLight:no},m("statusBarBackground","Background color of the editor hover status bar."));const xT=D("editorInlayHint.foreground",{dark:"#969696",light:"#969696",hcDark:q.white,hcLight:q.black},m("editorInlayHintForeground","Foreground color of inline hints")),kT=D("editorInlayHint.background",{dark:Ae(T1,.1),light:Ae(T1,.1),hcDark:Ae(q.white,.1),hcLight:Ae(T1,.1)},m("editorInlayHintBackground","Background color of inline hints")),IK=D("editorInlayHint.typeForeground",xT,m("editorInlayHintForegroundTypes","Foreground color of inline hints for types")),EK=D("editorInlayHint.typeBackground",kT,m("editorInlayHintBackgroundTypes","Background color of inline hints for types")),NK=D("editorInlayHint.parameterForeground",xT,m("editorInlayHintForegroundParameter","Foreground color of inline hints for parameters")),TK=D("editorInlayHint.parameterBackground",kT,m("editorInlayHintBackgroundParameter","Background color of inline hints for parameters")),MK=D("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},m("editorLightBulbForeground","The color used for the lightbulb actions icon."));D("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("editorLightBulbAutoFixForeground","The color used for the lightbulb auto fix actions icon."));D("editorLightBulbAi.foreground",MK,m("editorLightBulbAiForeground","The color used for the lightbulb AI icon."));D("editor.snippetTabstopHighlightBackground",{dark:new q(new qe(124,124,124,.3)),light:new q(new qe(10,50,100,.2)),hcDark:new q(new qe(124,124,124,.3)),hcLight:new q(new qe(10,50,100,.2))},m("snippetTabstopHighlightBackground","Highlight background color of a snippet tabstop."));D("editor.snippetTabstopHighlightBorder",null,m("snippetTabstopHighlightBorder","Highlight border color of a snippet tabstop."));D("editor.snippetFinalTabstopHighlightBackground",null,m("snippetFinalTabstopHighlightBackground","Highlight background color of the final tabstop of a snippet."));D("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new q(new qe(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},m("snippetFinalTabstopHighlightBorder","Highlight border color of the final tabstop of a snippet."));const xk=new q(new qe(155,185,85,.2)),kk=new q(new qe(255,0,0,.2)),RK=D("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c40",hcDark:null,hcLight:null},m("diffEditorInserted","Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),AK=D("diffEditor.removedTextBackground",{dark:"#ff000033",light:"#ff000033",hcDark:null,hcLight:null},m("diffEditorRemoved","Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0);D("diffEditor.insertedLineBackground",{dark:xk,light:xk,hcDark:null,hcLight:null},m("diffEditorInsertedLines","Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0);D("diffEditor.removedLineBackground",{dark:kk,light:kk,hcDark:null,hcLight:null},m("diffEditorRemovedLines","Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0);D("diffEditorGutter.insertedLineBackground",null,m("diffEditorInsertedLineGutter","Background color for the margin where lines got inserted."));D("diffEditorGutter.removedLineBackground",null,m("diffEditorRemovedLineGutter","Background color for the margin where lines got removed."));const PK=D("diffEditorOverview.insertedForeground",null,m("diffEditorOverviewInserted","Diff overview ruler foreground for inserted content.")),OK=D("diffEditorOverview.removedForeground",null,m("diffEditorOverviewRemoved","Diff overview ruler foreground for removed content."));D("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},m("diffEditorInsertedOutline","Outline color for the text that got inserted."));D("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},m("diffEditorRemovedOutline","Outline color for text that got removed."));D("diffEditor.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("diffEditorBorder","Border color between the two text editors."));D("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},m("diffDiagonalFill","Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views."));D("diffEditor.unchangedRegionBackground","sideBar.background",m("diffEditor.unchangedRegionBackground","The background color of unchanged blocks in the diff editor."));D("diffEditor.unchangedRegionForeground","foreground",m("diffEditor.unchangedRegionForeground","The foreground color of unchanged blocks in the diff editor."));D("diffEditor.unchangedCodeBackground",{dark:"#74747429",light:"#b8b8b829",hcDark:null,hcLight:null},m("diffEditor.unchangedCodeBackground","The background color of unchanged code in the diff editor."));const q_=D("widget.shadow",{dark:Ae(q.black,.36),light:Ae(q.black,.16),hcDark:null,hcLight:null},m("widgetShadow","Shadow color of widgets such as find/replace inside the editor.")),FK=D("widget.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("widgetBorder","Border color of widgets such as find/replace inside the editor.")),xA=D("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},m("toolbarHoverBackground","Toolbar background when hovering over actions using the mouse"));D("toolbar.hoverOutline",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("toolbarHoverOutline","Toolbar outline when hovering over actions using the mouse"));D("toolbar.activeBackground",{dark:pr(xA,.1),light:ru(xA,.1),hcDark:null,hcLight:null},m("toolbarActiveBackground","Toolbar background when holding the mouse over actions"));const BK=D("breadcrumb.foreground",Ae(Pe,.8),m("breadcrumbsFocusForeground","Color of focused breadcrumb items.")),WK=D("breadcrumb.background",Oo,m("breadcrumbsBackground","Background color of breadcrumb items.")),kA=D("breadcrumb.focusForeground",{light:ru(Pe,.2),dark:pr(Pe,.1),hcDark:pr(Pe,.1),hcLight:pr(Pe,.1)},m("breadcrumbsFocusForeground","Color of focused breadcrumb items.")),HK=D("breadcrumb.activeSelectionForeground",{light:ru(Pe,.2),dark:pr(Pe,.1),hcDark:pr(Pe,.1),hcLight:pr(Pe,.1)},m("breadcrumbsSelectedForeground","Color of selected breadcrumb items."));D("breadcrumbPicker.background",no,m("breadcrumbsSelectedBackground","Background color of breadcrumb item picker."));const U3=.5,DA=q.fromHex("#40C8AE").transparent(U3),IA=q.fromHex("#40A6FF").transparent(U3),EA=q.fromHex("#606060").transparent(.4),DT=.4,ug=1,Dk=D("merge.currentHeaderBackground",{dark:DA,light:DA,hcDark:null,hcLight:null},m("mergeCurrentHeaderBackground","Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);D("merge.currentContentBackground",Ae(Dk,DT),m("mergeCurrentContentBackground","Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const Ik=D("merge.incomingHeaderBackground",{dark:IA,light:IA,hcDark:null,hcLight:null},m("mergeIncomingHeaderBackground","Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);D("merge.incomingContentBackground",Ae(Ik,DT),m("mergeIncomingContentBackground","Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const Ek=D("merge.commonHeaderBackground",{dark:EA,light:EA,hcDark:null,hcLight:null},m("mergeCommonHeaderBackground","Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);D("merge.commonContentBackground",Ae(Ek,DT),m("mergeCommonContentBackground","Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const fg=D("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},m("mergeBorder","Border color on headers and the splitter in inline merge-conflicts."));D("editorOverviewRuler.currentContentForeground",{dark:Ae(Dk,ug),light:Ae(Dk,ug),hcDark:fg,hcLight:fg},m("overviewRulerCurrentContentForeground","Current overview ruler foreground for inline merge-conflicts."));D("editorOverviewRuler.incomingContentForeground",{dark:Ae(Ik,ug),light:Ae(Ik,ug),hcDark:fg,hcLight:fg},m("overviewRulerIncomingContentForeground","Incoming overview ruler foreground for inline merge-conflicts."));D("editorOverviewRuler.commonContentForeground",{dark:Ae(Ek,ug),light:Ae(Ek,ug),hcDark:fg,hcLight:fg},m("overviewRulerCommonContentForeground","Common ancestor overview ruler foreground for inline merge-conflicts."));D("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:"#AB5A00"},m("overviewRulerFindMatchForeground","Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0);D("editorOverviewRuler.selectionHighlightForeground","#A0A0A0CC",m("overviewRulerSelectionHighlightForeground","Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0);const VK=D("problemsErrorIcon.foreground",Y0,m("problemsErrorIconForeground","The color used for the problems error icon.")),zK=D("problemsWarningIcon.foreground",Il,m("problemsWarningIconForeground","The color used for the problems warning icon.")),UK=D("problemsInfoIcon.foreground",ma,m("problemsInfoIconForeground","The color used for the problems info icon.")),$K=D("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hcDark:"#AB5A00",hcLight:"#0F4A85"},m("minimapFindMatchHighlight","Minimap marker color for find matches."),!0);D("minimap.selectionOccurrenceHighlight",{light:"#c9c9c9",dark:"#676767",hcDark:"#ffffff",hcLight:"#0F4A85"},m("minimapSelectionOccurrenceHighlight","Minimap marker color for repeating editor selections."),!0);const NA=D("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hcDark:"#ffffff",hcLight:"#0F4A85"},m("minimapSelectionHighlight","Minimap marker color for the editor selection."),!0),KK=D("minimap.infoHighlight",{dark:ma,light:ma,hcDark:n_,hcLight:n_},m("minimapInfo","Minimap marker color for infos.")),jK=D("minimap.warningHighlight",{dark:Il,light:Il,hcDark:i_,hcLight:i_},m("overviewRuleWarning","Minimap marker color for warnings.")),qK=D("minimap.errorHighlight",{dark:new q(new qe(255,18,18,.7)),light:new q(new qe(255,18,18,.7)),hcDark:new q(new qe(255,50,50,1)),hcLight:"#B5200D"},m("minimapError","Minimap marker color for errors.")),GK=D("minimap.background",null,m("minimapBackground","Minimap background color.")),ZK=D("minimap.foregroundOpacity",q.fromHex("#000f"),m("minimapForegroundOpacity",'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.'));D("minimapSlider.background",Ae(F3,.5),m("minimapSliderBackground","Minimap slider background color."));D("minimapSlider.hoverBackground",Ae(B3,.5),m("minimapSliderHoverBackground","Minimap slider background color when hovering."));D("minimapSlider.activeBackground",Ae(W3,.5),m("minimapSliderActiveBackground","Minimap slider background color when clicked on."));D("charts.foreground",Pe,m("chartsForeground","The foreground color used in charts."));D("charts.lines",Ae(Pe,.5),m("chartsLines","The color used for horizontal lines in charts."));D("charts.red",Y0,m("chartsRed","The red color used in chart visualizations."));D("charts.blue",ma,m("chartsBlue","The blue color used in chart visualizations."));D("charts.yellow",Il,m("chartsYellow","The yellow color used in chart visualizations."));D("charts.orange",$K,m("chartsOrange","The orange color used in chart visualizations."));D("charts.green",{dark:"#89D185",light:"#388A34",hcDark:"#89D185",hcLight:"#374e06"},m("chartsGreen","The green color used in chart visualizations."));D("charts.purple",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("chartsPurple","The purple color used in chart visualizations."));const YK=D("input.background",{dark:"#3C3C3C",light:q.white,hcDark:q.black,hcLight:q.white},m("inputBoxBackground","Input box background.")),QK=D("input.foreground",Pe,m("inputBoxForeground","Input box foreground.")),XK=D("input.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("inputBoxBorder","Input box border.")),$3=D("inputOption.activeBorder",{dark:"#007ACC",light:"#007ACC",hcDark:Ye,hcLight:Ye},m("inputBoxActiveOptionBorder","Border color of activated options in input fields.")),JK=D("inputOption.hoverBackground",{dark:"#5a5d5e80",light:"#b8b8b850",hcDark:null,hcLight:null},m("inputOption.hoverBackground","Background color of activated options in input fields.")),IT=D("inputOption.activeBackground",{dark:Ae(ga,.4),light:Ae(ga,.2),hcDark:q.transparent,hcLight:q.transparent},m("inputOption.activeBackground","Background hover color of options in input fields.")),K3=D("inputOption.activeForeground",{dark:q.white,light:q.black,hcDark:Pe,hcLight:Pe},m("inputOption.activeForeground","Foreground color of activated options in input fields."));D("input.placeholderForeground",{light:Ae(Pe,.5),dark:Ae(Pe,.5),hcDark:Ae(Pe,.7),hcLight:Ae(Pe,.7)},m("inputPlaceholderForeground","Input box foreground color for placeholder text."));const ej=D("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hcDark:q.black,hcLight:q.white},m("inputValidationInfoBackground","Input validation background color for information severity.")),tj=D("inputValidation.infoForeground",{dark:null,light:null,hcDark:null,hcLight:Pe},m("inputValidationInfoForeground","Input validation foreground color for information severity.")),ij=D("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hcDark:Ye,hcLight:Ye},m("inputValidationInfoBorder","Input validation border color for information severity.")),nj=D("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hcDark:q.black,hcLight:q.white},m("inputValidationWarningBackground","Input validation background color for warning severity.")),sj=D("inputValidation.warningForeground",{dark:null,light:null,hcDark:null,hcLight:Pe},m("inputValidationWarningForeground","Input validation foreground color for warning severity.")),oj=D("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hcDark:Ye,hcLight:Ye},m("inputValidationWarningBorder","Input validation border color for warning severity.")),rj=D("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hcDark:q.black,hcLight:q.white},m("inputValidationErrorBackground","Input validation background color for error severity.")),aj=D("inputValidation.errorForeground",{dark:null,light:null,hcDark:null,hcLight:Pe},m("inputValidationErrorForeground","Input validation foreground color for error severity.")),lj=D("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hcDark:Ye,hcLight:Ye},m("inputValidationErrorBorder","Input validation border color for error severity.")),Q0=D("dropdown.background",{dark:"#3C3C3C",light:q.white,hcDark:q.black,hcLight:q.white},m("dropdownBackground","Dropdown background.")),cj=D("dropdown.listBackground",{dark:null,light:null,hcDark:q.black,hcLight:q.white},m("dropdownListBackground","Dropdown list background.")),ET=D("dropdown.foreground",{dark:"#F0F0F0",light:Pe,hcDark:q.white,hcLight:Pe},m("dropdownForeground","Dropdown foreground.")),NT=D("dropdown.border",{dark:Q0,light:"#CECECE",hcDark:Ye,hcLight:Ye},m("dropdownBorder","Dropdown border.")),j3=D("button.foreground",q.white,m("buttonForeground","Button foreground color.")),dj=D("button.separator",Ae(j3,.4),m("buttonSeparator","Button separator color.")),Im=D("button.background",{dark:"#0E639C",light:"#007ACC",hcDark:null,hcLight:"#0F4A85"},m("buttonBackground","Button background color.")),hj=D("button.hoverBackground",{dark:pr(Im,.2),light:ru(Im,.2),hcDark:Im,hcLight:Im},m("buttonHoverBackground","Button background color when hovering.")),uj=D("button.border",Ye,m("buttonBorder","Button border color.")),fj=D("button.secondaryForeground",{dark:q.white,light:q.white,hcDark:q.white,hcLight:Pe},m("buttonSecondaryForeground","Secondary button foreground color.")),Nk=D("button.secondaryBackground",{dark:"#3A3D41",light:"#5F6A79",hcDark:null,hcLight:q.white},m("buttonSecondaryBackground","Secondary button background color.")),gj=D("button.secondaryHoverBackground",{dark:pr(Nk,.2),light:ru(Nk,.2),hcDark:null,hcLight:null},m("buttonSecondaryHoverBackground","Secondary button background color when hovering.")),Em=D("radio.activeForeground",K3,m("radioActiveForeground","Foreground color of active radio option.")),mj=D("radio.activeBackground",IT,m("radioBackground","Background color of active radio option.")),pj=D("radio.activeBorder",$3,m("radioActiveBorder","Border color of the active radio option.")),_j=D("radio.inactiveForeground",null,m("radioInactiveForeground","Foreground color of inactive radio option.")),bj=D("radio.inactiveBackground",null,m("radioInactiveBackground","Background color of inactive radio option.")),Cj=D("radio.inactiveBorder",{light:Ae(Em,.2),dark:Ae(Em,.2),hcDark:Ae(Em,.4),hcLight:Ae(Em,.2)},m("radioInactiveBorder","Border color of the inactive radio option.")),vj=D("radio.inactiveHoverBackground",JK,m("radioHoverBackground","Background color of inactive active radio option when hovering.")),wj=D("checkbox.background",Q0,m("checkbox.background","Background color of checkbox widget."));D("checkbox.selectBackground",no,m("checkbox.select.background","Background color of checkbox widget when the element it's in is selected."));const yj=D("checkbox.foreground",ET,m("checkbox.foreground","Foreground color of checkbox widget.")),Sj=D("checkbox.border",NT,m("checkbox.border","Border color of checkbox widget."));D("checkbox.selectBorder",Lk,m("checkbox.select.border","Border color of checkbox widget when the element it's in is selected."));const Lj=D("keybindingLabel.background",{dark:new q(new qe(128,128,128,.17)),light:new q(new qe(221,221,221,.4)),hcDark:q.transparent,hcLight:q.transparent},m("keybindingLabelBackground","Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),xj=D("keybindingLabel.foreground",{dark:q.fromHex("#CCCCCC"),light:q.fromHex("#555555"),hcDark:q.white,hcLight:Pe},m("keybindingLabelForeground","Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),kj=D("keybindingLabel.border",{dark:new q(new qe(51,51,51,.6)),light:new q(new qe(204,204,204,.4)),hcDark:new q(new qe(111,195,223)),hcLight:Ye},m("keybindingLabelBorder","Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),Dj=D("keybindingLabel.bottomBorder",{dark:new q(new qe(68,68,68,.6)),light:new q(new qe(187,187,187,.4)),hcDark:new q(new qe(111,195,223)),hcLight:Pe},m("keybindingLabelBottomBorder","Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.")),Ij=D("list.focusBackground",null,m("listFocusBackground","List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Ej=D("list.focusForeground",null,m("listFocusForeground","List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Nj=D("list.focusOutline",{dark:ga,light:ga,hcDark:Ut,hcLight:Ut},m("listFocusOutline","List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Tj=D("list.focusAndSelectionOutline",null,m("listFocusAndSelectionOutline","List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not.")),Bh=D("list.activeSelectionBackground",{dark:"#04395E",light:"#0060C0",hcDark:null,hcLight:q.fromHex("#0F4A85").transparent(.1)},m("listActiveSelectionBackground","List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),s_=D("list.activeSelectionForeground",{dark:q.white,light:q.white,hcDark:null,hcLight:null},m("listActiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),q3=D("list.activeSelectionIconForeground",null,m("listActiveSelectionIconForeground","List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Mj=D("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hcDark:null,hcLight:q.fromHex("#0F4A85").transparent(.1)},m("listInactiveSelectionBackground","List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Rj=D("list.inactiveSelectionForeground",null,m("listInactiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Aj=D("list.inactiveSelectionIconForeground",null,m("listInactiveSelectionIconForeground","List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Pj=D("list.inactiveFocusBackground",null,m("listInactiveFocusBackground","List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Oj=D("list.inactiveFocusOutline",null,m("listInactiveFocusOutline","List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),G3=D("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:q.white.transparent(.1),hcLight:q.fromHex("#0F4A85").transparent(.1)},m("listHoverBackground","List/Tree background when hovering over items using the mouse.")),Z3=D("list.hoverForeground",null,m("listHoverForeground","List/Tree foreground when hovering over items using the mouse.")),Fj=D("list.dropBackground",{dark:"#062F4A",light:"#D6EBFF",hcDark:null,hcLight:null},m("listDropBackground","List/Tree drag and drop background when moving items over other items when using the mouse.")),Bj=D("list.dropBetweenBackground",{dark:Lk,light:Lk,hcDark:null,hcLight:null},m("listDropBetweenBackground","List/Tree drag and drop border color when moving items between items when using the mouse.")),Nm=D("list.highlightForeground",{dark:"#2AAAFF",light:"#0066BF",hcDark:ga,hcLight:ga},m("highlight","List/Tree foreground color of the match highlights when searching inside the list/tree.")),Wj=D("list.focusHighlightForeground",{dark:Nm,light:CK(Bh,Nm,"#BBE7FF"),hcDark:Nm,hcLight:Nm},m("listFocusHighlightForeground","List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree."));D("list.invalidItemForeground",{dark:"#B89500",light:"#B89500",hcDark:"#B89500",hcLight:"#B5200D"},m("invalidItemForeground","List/Tree foreground color for invalid items, for example an unresolved root in explorer."));D("list.errorForeground",{dark:"#F88070",light:"#B01011",hcDark:null,hcLight:null},m("listErrorForeground","Foreground color of list items containing errors."));D("list.warningForeground",{dark:"#CCA700",light:"#855F00",hcDark:null,hcLight:null},m("listWarningForeground","Foreground color of list items containing warnings."));const Hj=D("listFilterWidget.background",{light:ru(no,0),dark:pr(no,0),hcDark:no,hcLight:no},m("listFilterWidgetBackground","Background color of the type filter widget in lists and trees.")),Vj=D("listFilterWidget.outline",{dark:q.transparent,light:q.transparent,hcDark:"#f38518",hcLight:"#007ACC"},m("listFilterWidgetOutline","Outline color of the type filter widget in lists and trees.")),zj=D("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hcDark:Ye,hcLight:Ye},m("listFilterWidgetNoMatchesOutline","Outline color of the type filter widget in lists and trees, when there are no matches.")),Uj=D("listFilterWidget.shadow",q_,m("listFilterWidgetShadow","Shadow color of the type filter widget in lists and trees."));D("list.filterMatchBackground",{dark:ll,light:ll,hcDark:null,hcLight:null},m("listFilterMatchHighlight","Background color of the filtered match."));D("list.filterMatchBorder",{dark:Ud,light:Ud,hcDark:Ye,hcLight:Ut},m("listFilterMatchHighlightBorder","Border color of the filtered match."));D("list.deemphasizedForeground",{dark:"#8C8C8C",light:"#8E8E90",hcDark:"#A7A8A9",hcLight:"#666666"},m("listDeemphasizedForeground","List/Tree foreground color for items that are deemphasized."));const Y3=D("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hcDark:"#a9a9a9",hcLight:"#a5a5a5"},m("treeIndentGuidesStroke","Tree stroke color for the indentation guides.")),$j=D("tree.inactiveIndentGuidesStroke",Ae(Y3,.4),m("treeInactiveIndentGuidesStroke","Tree stroke color for the indentation guides that are not active.")),Kj=D("tree.tableColumnsBorder",{dark:"#CCCCCC20",light:"#61616120",hcDark:null,hcLight:null},m("tableColumnsBorder","Table border color between columns.")),jj=D("tree.tableOddRowsBackground",{dark:Ae(Pe,.04),light:Ae(Pe,.04),hcDark:null,hcLight:null},m("tableOddRowsBackgroundColor","Background color for odd table rows."));D("editorActionList.background",no,m("editorActionListBackground","Action List background color."));D("editorActionList.foreground",Z0,m("editorActionListForeground","Action List foreground color."));D("editorActionList.focusForeground",s_,m("editorActionListFocusForeground","Action List foreground color for the focused item."));D("editorActionList.focusBackground",Bh,m("editorActionListFocusBackground","Action List background color for the focused item."));const qj=D("menu.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("menuBorder","Border color of menus.")),Gj=D("menu.foreground",ET,m("menuForeground","Foreground color of menu items.")),Zj=D("menu.background",Q0,m("menuBackground","Background color of menu items.")),Yj=D("menu.selectionForeground",s_,m("menuSelectionForeground","Foreground color of the selected menu item in menus.")),Qj=D("menu.selectionBackground",Bh,m("menuSelectionBackground","Background color of the selected menu item in menus.")),Xj=D("menu.selectionBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("menuSelectionBorder","Border color of the selected menu item in menus.")),Jj=D("menu.separatorBackground",{dark:"#606060",light:"#D4D4D4",hcDark:Ye,hcLight:Ye},m("menuSeparatorBackground","Color of a separator menu item in menus.")),TA=D("quickInput.background",no,m("pickerBackground","Quick picker background color. The quick picker widget is the container for pickers like the command palette.")),eq=D("quickInput.foreground",Z0,m("pickerForeground","Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.")),tq=D("quickInputTitle.background",{dark:new q(new qe(255,255,255,.105)),light:new q(new qe(0,0,0,.06)),hcDark:"#000000",hcLight:q.white},m("pickerTitleBackground","Quick picker title background color. The quick picker widget is the container for pickers like the command palette.")),Q3=D("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hcDark:q.white,hcLight:"#0F4A85"},m("pickerGroupForeground","Quick picker color for grouping labels.")),iq=D("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hcDark:q.white,hcLight:"#0F4A85"},m("pickerGroupBorder","Quick picker color for grouping borders.")),MA=D("quickInput.list.focusBackground",null,"",void 0,m("quickInput.list.focusBackground deprecation","Please use quickInputList.focusBackground instead")),AC=D("quickInputList.focusForeground",s_,m("quickInput.listFocusForeground","Quick picker foreground color for the focused item.")),TT=D("quickInputList.focusIconForeground",q3,m("quickInput.listFocusIconForeground","Quick picker icon foreground color for the focused item.")),PC=D("quickInputList.focusBackground",{dark:t_(MA,Bh),light:t_(MA,Bh),hcDark:null,hcLight:null},m("quickInput.listFocusBackground","Quick picker background color for the focused item."));D("search.resultsInfoForeground",{light:Pe,dark:Ae(Pe,.65),hcDark:Pe,hcLight:Pe},m("search.resultsInfoForeground","Color of the text in the search viewlet's completion message."));D("searchEditor.findMatchBackground",{light:Ae(ll,.66),dark:Ae(ll,.66),hcDark:ll,hcLight:ll},m("searchEditor.queryMatch","Color of the Search Editor query matches."));D("searchEditor.findMatchBorder",{light:Ae(Ud,.66),dark:Ae(Ud,.66),hcDark:Ud,hcLight:Ud},m("searchEditor.editorFindMatchBorder","Border color of the Search Editor query matches."));var nq=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},RA=function(o,e){return function(t,i){e(t,i,o)}};const au=He("hoverService");let gg=class extends z{get delay(){return this.isInstantlyHovering()?0:this._delay}constructor(e,t,i={},n,s){super(),this.placement=e,this.instantHover=t,this.overrideOptions=i,this.configurationService=n,this.hoverService=s,this.lastHoverHideTime=0,this.timeLimit=200,this.hoverDisposables=this._register(new X),this._delay=this.configurationService.getValue("workbench.hover.delay"),this._register(this.configurationService.onDidChangeConfiguration(r=>{r.affectsConfiguration("workbench.hover.delay")&&(this._delay=this.configurationService.getValue("workbench.hover.delay"))}))}showHover(e,t){const i=typeof this.overrideOptions=="function"?this.overrideOptions(e,t):this.overrideOptions;this.hoverDisposables.clear();const n=Ei(e.target)?[e.target]:e.target.targetElements;for(const r of n)this.hoverDisposables.add(jt(r,"keydown",a=>{a.equals(9)&&this.hoverService.hideHover()}));const s=Ei(e.content)?void 0:e.content.toString();return this.hoverService.showHover({...e,...i,persistence:{hideOnKeyDown:!0,...i.persistence},id:s,appearance:{...e.appearance,compact:!0,skipFadeInAnimation:this.isInstantlyHovering(),...i.appearance}},t)}isInstantlyHovering(){return this.instantHover&&Date.now()-this.lastHoverHideTime{try{e.releasePointerCapture(t)}catch{}}))}catch{r=fe(e)}this._hooks.add(U(r,ee.POINTER_MOVE,a=>{if(a.buttons!==i){this.stopMonitoring(!0);return}a.preventDefault(),this._pointerMoveCallback(a)})),this._hooks.add(U(r,ee.POINTER_UP,a=>this.stopMonitoring(!0)))}}function Jt(o,e,t){let i=null,n=null;if(typeof t.value=="function"?(i="value",n=t.value,n.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof t.get=="function"&&(i="get",n=t.get),!n)throw new Error("not supported");const s=`$memoize$${e}`;t[i]=function(...r){return this.hasOwnProperty(s)||Object.defineProperty(this,s,{configurable:!1,enumerable:!1,writable:!1,value:n.apply(this,r)}),this[s]}}var sq=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},St;(function(o){o.Tap="-monaco-gesturetap",o.Change="-monaco-gesturechange",o.Start="-monaco-gesturestart",o.End="-monaco-gesturesend",o.Contextmenu="-monaco-gesturecontextmenu"})(St||(St={}));const $i=class $i extends z{constructor(){super(),this.dispatched=!1,this.targets=new yn,this.ignoreTargets=new yn,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(J.runAndSubscribe(T0,({window:e,disposables:t})=>{t.add(U(e.document,"touchstart",i=>this.onTouchStart(i),{passive:!1})),t.add(U(e.document,"touchend",i=>this.onTouchEnd(e,i))),t.add(U(e.document,"touchmove",i=>this.onTouchMove(i),{passive:!1}))},{window:_t,disposables:this._store}))}static addTarget(e){if(!$i.isTouchDevice())return z.None;$i.INSTANCE||($i.INSTANCE=new $i);const t=$i.INSTANCE.targets.push(e);return _e(t)}static ignoreTarget(e){if(!$i.isTouchDevice())return z.None;$i.INSTANCE||($i.INSTANCE=new $i);const t=$i.INSTANCE.ignoreTargets.push(e);return _e(t)}static isTouchDevice(){return"ontouchstart"in _t||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(e){const t=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let i=0,n=e.targetTouches.length;i=$i.HOLD_DELAY&&Math.abs(l.initialPageX-Gs(l.rollingPageX))<30&&Math.abs(l.initialPageY-Gs(l.rollingPageY))<30){const d=this.newGestureEvent(St.Contextmenu,l.initialTarget);d.pageX=Gs(l.rollingPageX),d.pageY=Gs(l.rollingPageY),this.dispatchEvent(d)}else if(n===1){const d=Gs(l.rollingPageX),h=Gs(l.rollingPageY),u=Gs(l.rollingTimestamps)-l.rollingTimestamps[0],f=d-l.rollingPageX[0],g=h-l.rollingPageY[0],p=[...this.targets].filter(_=>l.initialTarget instanceof Node&&_.contains(l.initialTarget));this.inertia(e,p,i,Math.abs(f)/u,f>0?1:-1,d,Math.abs(g)/u,g>0?1:-1,h)}this.dispatchEvent(this.newGestureEvent(St.End,l.initialTarget)),delete this.activeTouches[a.identifier]}this.dispatched&&(t.preventDefault(),t.stopPropagation(),this.dispatched=!1)}newGestureEvent(e,t){const i=document.createEvent("CustomEvent");return i.initEvent(e,!1,!0),i.initialTarget=t,i.tapCount=0,i}dispatchEvent(e){if(e.type===St.Tap){const t=new Date().getTime();let i=0;t-this._lastSetTapCountTime>$i.CLEAR_TAP_COUNT_TIME?i=1:i=2,this._lastSetTapCountTime=t,e.tapCount=i}else(e.type===St.Change||e.type===St.Contextmenu)&&(this._lastSetTapCountTime=0);if(e.initialTarget instanceof Node){for(const i of this.ignoreTargets)if(i.contains(e.initialTarget))return;const t=[];for(const i of this.targets)if(i.contains(e.initialTarget)){let n=0,s=e.initialTarget;for(;s&&s!==i;)n++,s=s.parentElement;t.push([n,i])}t.sort((i,n)=>i[0]-n[0]);for(const[i,n]of t)n.dispatchEvent(e),this.dispatched=!0}}inertia(e,t,i,n,s,r,a,l,c){this.handle=fs(e,()=>{const d=Date.now(),h=d-i;let u=0,f=0,g=!0;n+=$i.SCROLL_FRICTION*h,a+=$i.SCROLL_FRICTION*h,n>0&&(g=!1,u=s*n*h),a>0&&(g=!1,f=l*a*h);const p=this.newGestureEvent(St.Change);p.translationX=u,p.translationY=f,t.forEach(_=>_.dispatchEvent(p)),g||this.inertia(e,t,d,n,s,r+u,a,l,c+f)})}onTouchMove(e){const t=Date.now();for(let i=0,n=e.changedTouches.length;i3&&(r.rollingPageX.shift(),r.rollingPageY.shift(),r.rollingTimestamps.shift()),r.rollingPageX.push(s.pageX),r.rollingPageY.push(s.pageY),r.rollingTimestamps.push(t)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}};$i.SCROLL_FRICTION=-.005,$i.HOLD_DELAY=700,$i.CLEAR_TAP_COUNT_TIME=400;let fn=$i;sq([Jt],fn,"isTouchDevice",null);let xr=class extends z{onclick(e,t){this._register(U(e,ee.CLICK,i=>t(new ur(fe(e),i))))}onmousedown(e,t){this._register(U(e,ee.MOUSE_DOWN,i=>t(new ur(fe(e),i))))}onmouseover(e,t){this._register(U(e,ee.MOUSE_OVER,i=>t(new ur(fe(e),i))))}onmouseleave(e,t){this._register(U(e,ee.MOUSE_LEAVE,i=>t(new ur(fe(e),i))))}onkeydown(e,t){this._register(U(e,ee.KEY_DOWN,i=>t(new Nt(i))))}onkeyup(e,t){this._register(U(e,ee.KEY_UP,i=>t(new Nt(i))))}oninput(e,t){this._register(U(e,ee.INPUT,t))}onblur(e,t){this._register(U(e,ee.BLUR,t))}onfocus(e,t){this._register(U(e,ee.FOCUS,t))}ignoreGesture(e){return fn.ignoreTarget(e)}};const mg=11;class oq extends xr{constructor(e){super(),this._onActivate=e.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=e.bgWidth+"px",this.bgDomNode.style.height=e.bgHeight+"px",typeof e.top<"u"&&(this.bgDomNode.style.top="0px"),typeof e.left<"u"&&(this.bgDomNode.style.left="0px"),typeof e.bottom<"u"&&(this.bgDomNode.style.bottom="0px"),typeof e.right<"u"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=e.className,this.domNode.classList.add(...Ee.asClassNameArray(e.icon)),this.domNode.style.position="absolute",this.domNode.style.width=mg+"px",this.domNode.style.height=mg+"px",typeof e.top<"u"&&(this.domNode.style.top=e.top+"px"),typeof e.left<"u"&&(this.domNode.style.left=e.left+"px"),typeof e.bottom<"u"&&(this.domNode.style.bottom=e.bottom+"px"),typeof e.right<"u"&&(this.domNode.style.right=e.right+"px"),this._pointerMoveMonitor=this._register(new Hg),this._register(jt(this.bgDomNode,ee.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._register(jt(this.domNode,ee.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._pointerdownRepeatTimer=this._register(new QN),this._pointerdownScheduleRepeatTimer=this._register(new wr)}_arrowPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const t=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,fe(e))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(t,200),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,i=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),e.preventDefault()}}class rq extends z{constructor(e,t,i){super(),this._visibility=e,this._visibleClassName=t,this._invisibleClassName=i,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new wr)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this._updateShouldBeVisible())}setShouldBeVisible(e){this._rawShouldBeVisible=e,this._updateShouldBeVisible()}_applyVisibilitySetting(){return this._visibility===2?!1:this._visibility===3?!0:this._rawShouldBeVisible}_updateShouldBeVisible(){const e=this._applyVisibilitySetting();this._shouldBeVisible!==e&&(this._shouldBeVisible=e,this.ensureVisibility())}setIsNeeded(e){this._isNeeded!==e&&(this._isNeeded=e,this.ensureVisibility())}setDomNode(e){this._domNode=e,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded){this._hide(!1);return}this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(e){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(e?" fade":"")))}}const aq=140;class X3 extends xr{constructor(e){super(),this._lazyRender=e.lazyRender,this._host=e.host,this._scrollable=e.scrollable,this._scrollByPage=e.scrollByPage,this._scrollbarState=e.scrollbarState,this._visibilityController=this._register(new rq(e.visibility,"visible scrollbar "+e.extraScrollbarClassName,"invisible scrollbar "+e.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new Hg),this._shouldRender=!0,this.domNode=ot(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(U(this.domNode.domNode,ee.POINTER_DOWN,t=>this._domNodePointerDown(t)))}_createArrow(e){const t=this._register(new oq(e));this.domNode.domNode.appendChild(t.bgDomNode),this.domNode.domNode.appendChild(t.domNode)}_createSlider(e,t,i,n){this.slider=ot(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(e),this.slider.setLeft(t),typeof i=="number"&&this.slider.setWidth(i),typeof n=="number"&&this.slider.setHeight(n),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(U(this.slider.domNode,ee.POINTER_DOWN,s=>{s.button===0&&(s.preventDefault(),this._sliderPointerDown(s))})),this.onclick(this.slider.domNode,s=>{s.leftButton&&s.stopPropagation()})}_onElementSize(e){return this._scrollbarState.setVisibleSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(e){return this._scrollbarState.setScrollSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(e){return this._scrollbarState.setScrollPosition(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(e){e.target===this.domNode.domNode&&this._onPointerDown(e)}delegatePointerDown(e){const t=this.domNode.domNode.getClientRects()[0].top,i=t+this._scrollbarState.getSliderPosition(),n=t+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),s=this._sliderPointerPosition(e);i<=s&&s<=n?e.button===0&&(e.preventDefault(),this._sliderPointerDown(e)):this._onPointerDown(e)}_onPointerDown(e){let t,i;if(e.target===this.domNode.domNode&&typeof e.offsetX=="number"&&typeof e.offsetY=="number")t=e.offsetX,i=e.offsetY;else{const s=gi(this.domNode.domNode);t=e.pageX-s.left,i=e.pageY-s.top}const n=this._pointerDownRelativePosition(t,i);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(n):this._scrollbarState.getDesiredScrollPositionFromOffset(n)),e.button===0&&(e.preventDefault(),this._sliderPointerDown(e))}_sliderPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const t=this._sliderPointerPosition(e),i=this._sliderOrthogonalPointerPosition(e),n=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,s=>{const r=this._sliderOrthogonalPointerPosition(s),a=Math.abs(r-i);if(kn&&a>aq){this._setDesiredScrollPositionNow(n.getScrollPosition());return}const c=this._sliderPointerPosition(s)-t;this._setDesiredScrollPositionNow(n.getDesiredScrollPositionFromDelta(c))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(e){const t={};this.writeScrollPosition(t,e),this._scrollable.setScrollPositionNow(t)}updateScrollbarSize(e){this._updateScrollbarSize(e),this._scrollbarState.setScrollbarSize(e),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}}const lq=20;class pg{constructor(e,t,i,n,s,r){this._scrollbarSize=Math.round(t),this._oppositeScrollbarSize=Math.round(i),this._arrowSize=Math.round(e),this._visibleSize=n,this._scrollSize=s,this._scrollPosition=r,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new pg(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(e){const t=Math.round(e);return this._visibleSize!==t?(this._visibleSize=t,this._refreshComputedValues(),!0):!1}setScrollSize(e){const t=Math.round(e);return this._scrollSize!==t?(this._scrollSize=t,this._refreshComputedValues(),!0):!1}setScrollPosition(e){const t=Math.round(e);return this._scrollPosition!==t?(this._scrollPosition=t,this._refreshComputedValues(),!0):!1}setScrollbarSize(e){this._scrollbarSize=Math.round(e)}setOppositeScrollbarSize(e){this._oppositeScrollbarSize=Math.round(e)}static _computeValues(e,t,i,n,s){const r=Math.max(0,i-e),a=Math.max(0,r-2*t),l=n>0&&n>i;if(!l)return{computedAvailableSize:Math.round(r),computedIsNeeded:l,computedSliderSize:Math.round(a),computedSliderRatio:0,computedSliderPosition:0};const c=Math.round(Math.max(lq,Math.floor(i*a/n))),d=(a-c)/(n-i),h=s*d;return{computedAvailableSize:Math.round(r),computedIsNeeded:l,computedSliderSize:Math.round(c),computedSliderRatio:d,computedSliderPosition:Math.round(h)}}_refreshComputedValues(){const e=pg._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=e.computedAvailableSize,this._computedIsNeeded=e.computedIsNeeded,this._computedSliderSize=e.computedSliderSize,this._computedSliderRatio=e.computedSliderRatio,this._computedSliderPosition=e.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(e){if(!this._computedIsNeeded)return 0;const t=e-this._arrowSize-this._computedSliderSize/2;return Math.round(t/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(e){if(!this._computedIsNeeded)return 0;const t=e-this._arrowSize;let i=this._scrollPosition;return tthis._host.onMouseWheel(new Rh(null,1,0))}),this._createArrow({className:"scra",icon:ie.scrollbarButtonRight,top:a,left:void 0,bottom:void 0,right:r,bgWidth:t.arrowSize,bgHeight:t.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new Rh(null,-1,0))})}this._createSlider(Math.floor((t.horizontalScrollbarSize-t.horizontalSliderSize)/2),0,void 0,t.horizontalSliderSize)}_updateSlider(e,t){this.slider.setWidth(e),this.slider.setLeft(t)}_renderDomNode(e,t){this.domNode.setWidth(e),this.domNode.setHeight(t),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(e.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return e}_sliderPointerPosition(e){return e.pageX}_sliderOrthogonalPointerPosition(e){return e.pageY}_updateScrollbarSize(e){this.slider.setHeight(e)}writeScrollPosition(e,t){e.scrollLeft=t}updateOptions(e){this.updateScrollbarSize(e.horizontal===2?0:e.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._visibilityController.setVisibility(e.horizontal),this._scrollByPage=e.scrollByPage}}class dq extends X3{constructor(e,t,i){const n=e.getScrollDimensions(),s=e.getCurrentScrollPosition();if(super({lazyRender:t.lazyRender,host:i,scrollbarState:new pg(t.verticalHasArrows?t.arrowSize:0,t.vertical===2?0:t.verticalScrollbarSize,0,n.height,n.scrollHeight,s.scrollTop),visibility:t.vertical,extraScrollbarClassName:"vertical",scrollable:e,scrollByPage:t.scrollByPage}),t.verticalHasArrows){const r=(t.arrowSize-mg)/2,a=(t.verticalScrollbarSize-mg)/2;this._createArrow({className:"scra",icon:ie.scrollbarButtonUp,top:r,left:a,bottom:void 0,right:void 0,bgWidth:t.verticalScrollbarSize,bgHeight:t.arrowSize,onActivate:()=>this._host.onMouseWheel(new Rh(null,0,1))}),this._createArrow({className:"scra",icon:ie.scrollbarButtonDown,top:void 0,left:a,bottom:r,right:void 0,bgWidth:t.verticalScrollbarSize,bgHeight:t.arrowSize,onActivate:()=>this._host.onMouseWheel(new Rh(null,0,-1))})}this._createSlider(0,Math.floor((t.verticalScrollbarSize-t.verticalSliderSize)/2),t.verticalSliderSize,void 0)}_updateSlider(e,t){this.slider.setHeight(e),this.slider.setTop(t)}_renderDomNode(e,t){this.domNode.setWidth(t),this.domNode.setHeight(e),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(e.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return t}_sliderPointerPosition(e){return e.pageY}_sliderOrthogonalPointerPosition(e){return e.pageX}_updateScrollbarSize(e){this.slider.setWidth(e)}writeScrollPosition(e,t){e.scrollTop=t}updateOptions(e){this.updateScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(e.vertical),this._scrollByPage=e.scrollByPage}}class OC{constructor(e,t,i,n,s,r,a){this._forceIntegerValues=e,this._scrollStateBrand=void 0,this._forceIntegerValues&&(t=t|0,i=i|0,n=n|0,s=s|0,r=r|0,a=a|0),this.rawScrollLeft=n,this.rawScrollTop=a,t<0&&(t=0),n+t>i&&(n=i-t),n<0&&(n=0),s<0&&(s=0),a+s>r&&(a=r-s),a<0&&(a=0),this.width=t,this.scrollWidth=i,this.scrollLeft=n,this.height=s,this.scrollHeight=r,this.scrollTop=a}equals(e){return this.rawScrollLeft===e.rawScrollLeft&&this.rawScrollTop===e.rawScrollTop&&this.width===e.width&&this.scrollWidth===e.scrollWidth&&this.scrollLeft===e.scrollLeft&&this.height===e.height&&this.scrollHeight===e.scrollHeight&&this.scrollTop===e.scrollTop}withScrollDimensions(e,t){return new OC(this._forceIntegerValues,typeof e.width<"u"?e.width:this.width,typeof e.scrollWidth<"u"?e.scrollWidth:this.scrollWidth,t?this.rawScrollLeft:this.scrollLeft,typeof e.height<"u"?e.height:this.height,typeof e.scrollHeight<"u"?e.scrollHeight:this.scrollHeight,t?this.rawScrollTop:this.scrollTop)}withScrollPosition(e){return new OC(this._forceIntegerValues,this.width,this.scrollWidth,typeof e.scrollLeft<"u"?e.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof e.scrollTop<"u"?e.scrollTop:this.rawScrollTop)}createScrollEvent(e,t){const i=this.width!==e.width,n=this.scrollWidth!==e.scrollWidth,s=this.scrollLeft!==e.scrollLeft,r=this.height!==e.height,a=this.scrollHeight!==e.scrollHeight,l=this.scrollTop!==e.scrollTop;return{inSmoothScrolling:t,oldWidth:e.width,oldScrollWidth:e.scrollWidth,oldScrollLeft:e.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:e.height,oldScrollHeight:e.scrollHeight,oldScrollTop:e.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:i,scrollWidthChanged:n,scrollLeftChanged:s,heightChanged:r,scrollHeightChanged:a,scrollTopChanged:l}}}class Vg extends z{constructor(e){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new A),this.onScroll=this._onScroll.event,this._smoothScrollDuration=e.smoothScrollDuration,this._scheduleAtNextAnimationFrame=e.scheduleAtNextAnimationFrame,this._state=new OC(e.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(e){this._smoothScrollDuration=e}validateScrollPosition(e){return this._state.withScrollPosition(e)}getScrollDimensions(){return this._state}setScrollDimensions(e,t){const i=this._state.withScrollDimensions(e,t);this._setState(i,!!this._smoothScrolling),this._smoothScrolling?.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(e){const t=this._state.withScrollPosition(e);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(t,!1)}setScrollPositionSmooth(e,t){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(e);if(this._smoothScrolling){e={scrollLeft:typeof e.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:e.scrollLeft,scrollTop:typeof e.scrollTop>"u"?this._smoothScrolling.to.scrollTop:e.scrollTop};const i=this._state.withScrollPosition(e);if(this._smoothScrolling.to.scrollLeft===i.scrollLeft&&this._smoothScrolling.to.scrollTop===i.scrollTop)return;let n;t?n=new o_(this._smoothScrolling.from,i,this._smoothScrolling.startTime,this._smoothScrolling.duration):n=this._smoothScrolling.combine(this._state,i,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=n}else{const i=this._state.withScrollPosition(e);this._smoothScrolling=o_.start(this._state,i,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}hasPendingScrollAnimation(){return!!this._smoothScrolling}_performSmoothScrolling(){if(!this._smoothScrolling)return;const e=this._smoothScrolling.tick(),t=this._state.withScrollPosition(e);if(this._setState(t,!0),!!this._smoothScrolling){if(e.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(e,t){const i=this._state;i.equals(e)||(this._state=e,this._onScroll.fire(this._state.createScrollEvent(i,t)))}}class AA{constructor(e,t,i){this.scrollLeft=e,this.scrollTop=t,this.isDone=i}}function kS(o,e){const t=e-o;return function(i){return o+t*fq(i)}}function hq(o,e,t){return function(i){return i2.5*i){let s,r;return e0&&Math.abs(e.deltaY)>0)return 1;let i=.5;if((!this._isAlmostInt(e.deltaX)||!this._isAlmostInt(e.deltaY))&&(i+=.25),t){const n=Math.abs(e.deltaX),s=Math.abs(e.deltaY),r=Math.abs(t.deltaX),a=Math.abs(t.deltaY),l=Math.max(Math.min(n,r),1),c=Math.max(Math.min(s,a),1),d=Math.max(n,r),h=Math.max(s,a);d%l===0&&h%c===0&&(i-=.5)}return Math.min(Math.max(i,0),1)}_isAlmostInt(e){return Math.abs(Math.round(e)-e)<.01}};Tw.INSTANCE=new Tw;let FC=Tw;class MT extends xr{get options(){return this._options}constructor(e,t,i){super(),this._onScroll=this._register(new A),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new A),e.style.overflow="hidden",this._options=pq(t),this._scrollable=i,this._register(this._scrollable.onScroll(s=>{this._onWillScroll.fire(s),this._onDidScroll(s),this._onScroll.fire(s)}));const n={onMouseWheel:s=>this._onMouseWheel(s),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new dq(this._scrollable,this._options,n)),this._horizontalScrollbar=this._register(new cq(this._scrollable,this._options,n)),this._domNode=document.createElement("div"),this._domNode.className="monaco-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.style.overflow="hidden",this._domNode.appendChild(e),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=ot(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=ot(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=ot(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,s=>this._onMouseOver(s)),this.onmouseleave(this._listenOnDomNode,s=>this._onMouseLeave(s)),this._hideTimeout=this._register(new wr),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}dispose(){this._mouseWheelToDispose=xt(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(e){this._verticalScrollbar.delegatePointerDown(e)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(e){this._scrollable.setScrollDimensions(e,!1)}updateClassName(e){this._options.className=e,Ue&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className}updateOptions(e){typeof e.handleMouseWheel<"u"&&(this._options.handleMouseWheel=e.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof e.mouseWheelScrollSensitivity<"u"&&(this._options.mouseWheelScrollSensitivity=e.mouseWheelScrollSensitivity),typeof e.fastScrollSensitivity<"u"&&(this._options.fastScrollSensitivity=e.fastScrollSensitivity),typeof e.scrollPredominantAxis<"u"&&(this._options.scrollPredominantAxis=e.scrollPredominantAxis),typeof e.horizontal<"u"&&(this._options.horizontal=e.horizontal),typeof e.vertical<"u"&&(this._options.vertical=e.vertical),typeof e.horizontalScrollbarSize<"u"&&(this._options.horizontalScrollbarSize=e.horizontalScrollbarSize),typeof e.verticalScrollbarSize<"u"&&(this._options.verticalScrollbarSize=e.verticalScrollbarSize),typeof e.scrollByPage<"u"&&(this._options.scrollByPage=e.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}delegateScrollFromMouseWheelEvent(e){this._onMouseWheel(new Rh(e))}_setListeningToMouseWheel(e){if(this._mouseWheelToDispose.length>0!==e&&(this._mouseWheelToDispose=xt(this._mouseWheelToDispose),e)){const i=n=>{this._onMouseWheel(new Rh(n))};this._mouseWheelToDispose.push(U(this._listenOnDomNode,ee.MOUSE_WHEEL,i,{passive:!1}))}}_onMouseWheel(e){if(e.browserEvent?.defaultPrevented)return;const t=FC.INSTANCE;t.acceptStandardWheelEvent(e);let i=!1;if(e.deltaY||e.deltaX){let s=e.deltaY*this._options.mouseWheelScrollSensitivity,r=e.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&r+s===0?r=s=0:Math.abs(s)>=Math.abs(r)?r=0:s=0),this._options.flipAxes&&([s,r]=[r,s]);const a=!Ue&&e.browserEvent&&e.browserEvent.shiftKey;(this._options.scrollYToX||a)&&!r&&(r=s,s=0),e.browserEvent&&e.browserEvent.altKey&&(r=r*this._options.fastScrollSensitivity,s=s*this._options.fastScrollSensitivity);const l=this._scrollable.getFutureScrollPosition();let c={};if(s){const d=PA*s,h=l.scrollTop-(d<0?Math.floor(d):Math.ceil(d));this._verticalScrollbar.writeScrollPosition(c,h)}if(r){const d=PA*r,h=l.scrollLeft-(d<0?Math.floor(d):Math.ceil(d));this._horizontalScrollbar.writeScrollPosition(c,h)}c=this._scrollable.validateScrollPosition(c),(l.scrollLeft!==c.scrollLeft||l.scrollTop!==c.scrollTop)&&(this._options.mouseWheelSmoothScroll&&t.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(c):this._scrollable.setScrollPositionNow(c),i=!0)}let n=i;!n&&this._options.alwaysConsumeMouseWheel&&(n=!0),!n&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(n=!0),n&&(e.preventDefault(),e.stopPropagation())}_onDidScroll(e){this._shouldRender=this._horizontalScrollbar.onDidScroll(e)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(e)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){const e=this._scrollable.getCurrentScrollPosition(),t=e.scrollTop>0,i=e.scrollLeft>0,n=i?" left":"",s=t?" top":"",r=i||t?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${n}`),this._topShadowDomNode.setClassName(`shadow${s}`),this._topLeftShadowDomNode.setClassName(`shadow${r}${s}${n}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(e){this._mouseIsOver=!1,this._hide()}_onMouseOver(e){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),gq)}}class J3 extends MT{constructor(e,t){t=t||{},t.mouseWheelSmoothScroll=!1;const i=new Vg({forceIntegerValues:!0,smoothScrollDuration:0,scheduleAtNextAnimationFrame:n=>fs(fe(e),n)});super(e,t,i),this._register(i)}setScrollPosition(e){this._scrollable.setScrollPositionNow(e)}}class X0 extends MT{constructor(e,t,i){super(e,t,i)}setScrollPosition(e){e.reuseAnimation?this._scrollable.setScrollPositionSmooth(e,e.reuseAnimation):this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}}class J0 extends MT{constructor(e,t){t=t||{},t.mouseWheelSmoothScroll=!1;const i=new Vg({forceIntegerValues:!1,smoothScrollDuration:0,scheduleAtNextAnimationFrame:n=>fs(fe(e),n)});super(e,t,i),this._register(i),this._element=e,this._register(this.onScroll(n=>{n.scrollTopChanged&&(this._element.scrollTop=n.scrollTop),n.scrollLeftChanged&&(this._element.scrollLeft=n.scrollLeft)})),this.scanDomNode()}setScrollPosition(e){this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}scanDomNode(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})}}function pq(o){const e={lazyRender:typeof o.lazyRender<"u"?o.lazyRender:!1,className:typeof o.className<"u"?o.className:"",useShadows:typeof o.useShadows<"u"?o.useShadows:!0,handleMouseWheel:typeof o.handleMouseWheel<"u"?o.handleMouseWheel:!0,flipAxes:typeof o.flipAxes<"u"?o.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof o.consumeMouseWheelIfScrollbarIsNeeded<"u"?o.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof o.alwaysConsumeMouseWheel<"u"?o.alwaysConsumeMouseWheel:!1,scrollYToX:typeof o.scrollYToX<"u"?o.scrollYToX:!1,mouseWheelScrollSensitivity:typeof o.mouseWheelScrollSensitivity<"u"?o.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof o.fastScrollSensitivity<"u"?o.fastScrollSensitivity:5,scrollPredominantAxis:typeof o.scrollPredominantAxis<"u"?o.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof o.mouseWheelSmoothScroll<"u"?o.mouseWheelSmoothScroll:!0,arrowSize:typeof o.arrowSize<"u"?o.arrowSize:11,listenOnDomNode:typeof o.listenOnDomNode<"u"?o.listenOnDomNode:null,horizontal:typeof o.horizontal<"u"?o.horizontal:1,horizontalScrollbarSize:typeof o.horizontalScrollbarSize<"u"?o.horizontalScrollbarSize:10,horizontalSliderSize:typeof o.horizontalSliderSize<"u"?o.horizontalSliderSize:0,horizontalHasArrows:typeof o.horizontalHasArrows<"u"?o.horizontalHasArrows:!1,vertical:typeof o.vertical<"u"?o.vertical:1,verticalScrollbarSize:typeof o.verticalScrollbarSize<"u"?o.verticalScrollbarSize:10,verticalHasArrows:typeof o.verticalHasArrows<"u"?o.verticalHasArrows:!1,verticalSliderSize:typeof o.verticalSliderSize<"u"?o.verticalSliderSize:0,scrollByPage:typeof o.scrollByPage<"u"?o.scrollByPage:!1};return e.horizontalSliderSize=typeof o.horizontalSliderSize<"u"?o.horizontalSliderSize:e.horizontalScrollbarSize,e.verticalSliderSize=typeof o.verticalSliderSize<"u"?o.verticalSliderSize:e.verticalScrollbarSize,Ue&&(e.className+=" mac"),e}const Ab=ce;let RT=class extends z{constructor(){super(),this.containerDomNode=document.createElement("div"),this.containerDomNode.className="monaco-hover",this.containerDomNode.tabIndex=0,this.containerDomNode.setAttribute("role","tooltip"),this.contentsDomNode=document.createElement("div"),this.contentsDomNode.className="monaco-hover-content",this.scrollbar=this._register(new J0(this.contentsDomNode,{consumeMouseWheelIfScrollbarIsNeeded:!0})),this.containerDomNode.appendChild(this.scrollbar.getDomNode())}onContentsChanged(){this.scrollbar.scanDomNode()}};class ey extends z{static render(e,t,i){return new ey(e,t,i)}constructor(e,t,i){super(),this.actionLabel=t.label,this.actionKeybindingLabel=i,this.actionContainer=Z(e,Ab("div.action-container")),this.actionContainer.setAttribute("tabindex","0"),this.action=Z(this.actionContainer,Ab("a.action")),this.action.setAttribute("role","button"),t.iconClass&&Z(this.action,Ab(`span.icon.${t.iconClass}`));const n=Z(this.action,Ab("span"));n.textContent=i?`${t.label} (${i})`:t.label,this._store.add(new t7(this.actionContainer,t.run)),this._store.add(new i7(this.actionContainer,t.run,[3,10])),this.setEnabled(!0)}setEnabled(e){e?(this.actionContainer.classList.remove("disabled"),this.actionContainer.removeAttribute("aria-disabled")):(this.actionContainer.classList.add("disabled"),this.actionContainer.setAttribute("aria-disabled","true"))}}function e7(o,e){return o&&e?m("acessibleViewHint","Inspect this in the accessible view with {0}.",e):o?m("acessibleViewHintNoKbOpen","Inspect this in the accessible view via the command Open Accessible View which is currently not triggerable via keybinding."):""}class t7 extends z{constructor(e,t){super(),this._register(U(e,ee.CLICK,i=>{i.stopPropagation(),i.preventDefault(),t(e)}))}}class i7 extends z{constructor(e,t,i){super(),this._register(U(e,ee.KEY_DOWN,n=>{const s=new Nt(n);i.some(r=>s.equals(r))&&(n.stopPropagation(),n.preventDefault(),t(e))}))}}const Vo=He("openerService");function _q(o){let e;const t=/^L?(\d+)(?:,(\d+))?(-L?(\d+)(?:,(\d+))?)?/.exec(o.fragment);return t&&(e={startLineNumber:parseInt(t[1]),startColumn:t[2]?parseInt(t[2]):1,endLineNumber:t[4]?parseInt(t[4]):void 0,endColumn:t[4]?t[5]?parseInt(t[5]):1:void 0},o=o.with({fragment:""})),{selection:e,uri:o}}class ze{get event(){return this.emitter.event}constructor(e,t,i){const n=s=>this.emitter.fire(s);this.emitter=new A({onWillAddFirstListener:()=>e.addEventListener(t,n,i),onDidRemoveLastListener:()=>e.removeEventListener(t,n,i)})}dispose(){this.emitter.dispose()}}function bq(o,e={}){const t=AT(e);return t.textContent=o,t}function Cq(o,e={}){const t=AT(e);return n7(t,wq(o,!!e.renderCodeSegments),e.actionHandler,e.renderCodeSegments),t}function AT(o){const e=o.inline?"span":"div",t=document.createElement(e);return o.className&&(t.className=o.className),t}class vq{constructor(e){this.source=e,this.index=0}eos(){return this.index>=this.source.length}next(){const e=this.peek();return this.advance(),e}peek(){return this.source[this.index]}advance(){this.index++}}function n7(o,e,t,i){let n;if(e.type===2)n=document.createTextNode(e.content||"");else if(e.type===3)n=document.createElement("b");else if(e.type===4)n=document.createElement("i");else if(e.type===7&&i)n=document.createElement("code");else if(e.type===5&&t){const s=document.createElement("a");t.disposables.add(jt(s,"click",r=>{t.callback(String(e.index),r)})),n=s}else e.type===8?n=document.createElement("br"):e.type===1&&(n=o);n&&o!==n&&o.appendChild(n),n&&Array.isArray(e.children)&&e.children.forEach(s=>{n7(n,s,t,i)})}function wq(o,e){const t={type:1,children:[]};let i=0,n=t;const s=[],r=new vq(o);for(;!r.eos();){let a=r.next();const l=a==="\\"&&Tk(r.peek(),e)!==0;if(l&&(a=r.next()),!l&&yq(a,e)&&a===r.peek()){r.advance(),n.type===2&&(n=s.pop());const c=Tk(a,e);if(n.type===c||n.type===5&&c===6)n=s.pop();else{const d={type:c,children:[]};c===5&&(d.index=i,i++),n.children.push(d),s.push(n),n=d}}else if(a===` +`)n.type===2&&(n=s.pop()),n.children.push({type:8});else if(n.type!==2){const c={type:2,content:a};n.children.push(c),s.push(n),n=c}else n.content+=a}return n.type===2&&(n=s.pop()),t}function yq(o,e){return Tk(o,e)!==0}function Tk(o,e){switch(o){case"*":return 3;case"_":return 4;case"[":return 5;case"]":return 6;case"`":return e?7:0;default:return 0}}const Sq=new RegExp(`(\\\\)?\\$\\((${Ee.iconNameExpression}(?:${Ee.iconModifierExpression})?)\\)`,"g");function Qd(o){const e=new Array;let t,i=0,n=0;for(;(t=Sq.exec(o))!==null;){n=t.index||0,i0?[{start:0,end:e.length}]:[]:null}function Lq(o,e){const t=e.toLowerCase().indexOf(o.toLowerCase());return t===-1?null:[{start:t,end:t+o.length}]}function r7(o,e){return Mk(o.toLowerCase(),e.toLowerCase(),0,0)}function Mk(o,e,t,i){if(t===o.length)return[];if(i===e.length)return null;if(o[t]===e[i]){let n=null;return(n=Mk(o,e,t+1,i+1))?l7({start:i,end:i+1},n):null}return Mk(o,e,t,i+1)}function PT(o){return 97<=o&&o<=122}function ty(o){return 65<=o&&o<=90}function OT(o){return 48<=o&&o<=57}function xq(o){return o===32||o===9||o===10||o===13}const kq=new Set;"()[]{}<>`'\"-/;:,.?!".split("").forEach(o=>kq.add(o.charCodeAt(0)));function a7(o){return PT(o)||ty(o)||OT(o)}function l7(o,e){return e.length===0?e=[o]:o.end===e[0].start?e[0].start=o.start:e.unshift(o),e}function c7(o,e){for(let t=e;t0&&!a7(o.charCodeAt(t-1)))return t}return o.length}function Rk(o,e,t,i){if(t===o.length)return[];if(i===e.length)return null;if(o[t]!==e[i].toLowerCase())return null;{let n=null,s=i+1;for(n=Rk(o,e,t+1,i+1);!n&&(s=c7(e,s)).6}function Eq(o){const{upperPercent:e,lowerPercent:t,alphaPercent:i,numericPercent:n}=o;return t>.2&&e<.8&&i>.6&&n<.2}function Nq(o){let e=0,t=0,i=0,n=0;for(let s=0;s60&&(e=e.substring(0,60));const t=Dq(e);if(!Eq(t)){if(!Iq(t))return null;e=e.toLowerCase()}let i=null,n=0;for(o=o.toLowerCase();n"u")return[];const e=[],t=o[1];for(let i=o.length-1;i>1;i--){const n=o[i]+t,s=e[e.length-1];s&&s.end===n?s.end=n+1:e.push({start:n,end:n+1})}return e}const sc=128;function FT(){const o=[],e=[];for(let t=0;t<=sc;t++)e[t]=0;for(let t=0;t<=sc;t++)o.push(e.slice(0));return o}function h7(o){const e=[];for(let t=0;t<=o;t++)e[t]=0;return e}const u7=h7(2*sc),Ak=h7(2*sc),Ta=FT(),td=FT(),Pb=FT();function Ob(o,e){if(e<0||e>=o.length)return!1;const t=o.codePointAt(e);switch(t){case 95:case 45:case 46:case 32:case 47:case 92:case 39:case 34:case 58:case 36:case 60:case 62:case 40:case 41:case 91:case 93:case 123:case 125:return!0;case void 0:return!1;default:return!!UN(t)}}function BA(o,e){if(e<0||e>=o.length)return!1;switch(o.charCodeAt(e)){case 32:case 9:return!0;default:return!1}}function M1(o,e,t){return e[o]!==t[o]}function Pq(o,e,t,i,n,s,r=!1){for(;esc?sc:o.length,l=i.length>sc?sc:i.length;if(t>=a||s>=l||a-t>l-s||!Pq(e,t,a,n,s,l,!0))return;Oq(a,l,t,s,e,n);let c=1,d=1,h=t,u=s;const f=[!1];for(c=1,h=t;hC,N=E?td[c][d-1]+(Ta[c][d-1]>0?-5:0):0,H=u>C+1&&Ta[c][d-1]>0,F=H?td[c][d-2]+(Ta[c][d-2]>0?-5:0):0;if(H&&(!E||F>=N)&&(!x||F>=L))td[c][d]=F,Pb[c][d]=3,Ta[c][d]=0;else if(E&&(!x||N>=L))td[c][d]=N,Pb[c][d]=2,Ta[c][d]=0;else if(x)td[c][d]=L,Pb[c][d]=1,Ta[c][d]=Ta[c-1][d-1]+1;else throw new Error("not possible")}}if(!f[0]&&!r.firstMatchCanBeWeak)return;c--,d--;const g=[td[c][d],s];let p=0,_=0;for(;c>=1;){let C=d;do{const w=Pb[c][C];if(w===3)C=C-2;else if(w===2)C=C-1;else break}while(C>=1);p>1&&e[t+c-1]===n[s+d-1]&&!M1(C+s-1,i,n)&&p+1>Ta[c][C]&&(C=d),C===d?p++:p=1,_||(_=C),c--,d=C-1,g.push(d)}l-s===a&&r.boostFullMatch&&(g[0]+=2);const b=_-a;return g[0]-=b,g}function Oq(o,e,t,i,n,s){let r=o-1,a=e-1;for(;r>=t&&a>=i;)n[r]===s[a]&&(Ak[r]=a,r--),a--}function Fq(o,e,t,i,n,s,r,a,l,c,d){if(e[t]!==s[r])return Number.MIN_SAFE_INTEGER;let h=1,u=!1;return r===t-i?h=o[t]===n[r]?7:5:M1(r,n,s)&&(r===0||!M1(r-1,n,s))?(h=o[t]===n[r]?7:5,u=!0):Ob(s,r)&&(r===0||!Ob(s,r-1))?h=5:(Ob(s,r-1)||BA(s,r-1))&&(h=5,u=!0),h>1&&t===i&&(d[0]=!0),u||(u=M1(r,n,s)||Ob(s,r-1)||BA(s,r-1)),t===i?r>l&&(h-=u?3:5):c?h+=u?2:0:h+=u?0:1,r+1===a&&(h-=u?3:5),h}function Bq(o,e,t,i,n,s,r){return Wq(o,e,t,i,n,s,!0,r)}function Wq(o,e,t,i,n,s,r,a){let l=_g(o,e,t,i,n,s,a);if(o.length>=3){const c=Math.min(7,o.length-1);for(let d=t+1;dl[0])&&(l=u))}}}return l}function Hq(o,e){if(e+1>=o.length)return;const t=o[e],i=o[e+1];if(t!==i)return o.slice(0,e)+i+t+o.slice(e+2)}const Vq="$(",BT=new RegExp(`\\$\\(${Ee.iconNameExpression}(?:${Ee.iconModifierExpression})?\\)`,"g"),zq=new RegExp(`(\\\\)?${BT.source}`,"g");function Uq(o){return o.replace(zq,(e,t)=>t?e:`\\${e}`)}const $q=new RegExp(`\\\\${BT.source}`,"g");function Kq(o){return o.replace($q,e=>`\\${e}`)}const jq=new RegExp(`(\\s)?(\\\\)?${BT.source}(\\s)?`,"g");function f7(o){return o.indexOf(Vq)===-1?o:o.replace(jq,(e,t,i,n)=>i?e:t||n||"")}function qq(o){return o?o.replace(/\$\((.*?)\)/g,(e,t)=>` ${t} `).trim():""}const DS=new RegExp(`\\$\\(${Ee.iconNameCharacter}+\\)`,"g");function Tm(o){DS.lastIndex=0;let e="";const t=[];let i=0;for(;;){const n=DS.lastIndex,s=DS.exec(o),r=o.substring(n,s?.index);if(r.length>0){e+=r;for(let a=0;agA(i).length&&i[i.length-1]===t}else{const i=e.path;return i.length>1&&i.charCodeAt(i.length-1)===47&&!/^[a-zA-Z]:(\/$|\\$)/.test(e.fsPath)}}removeTrailingPathSeparator(e,t=fc){return VA(e,t)?e.with({path:e.path.substr(0,e.path.length-1)}):e}addTrailingPathSeparator(e,t=fc){let i=!1;if(e.scheme===Te.file){const n=Ma(e);i=n!==void 0&&n.length===gA(n).length&&n[n.length-1]===t}else{t="/";const n=e.path;i=n.length===1&&n.charCodeAt(n.length-1)===47}return!i&&!VA(e,t)?e.with({path:e.path+"/"}):e}}const Tt=new Gq(()=>!1),WT=Tt.isEqual.bind(Tt);Tt.isEqualOrParent.bind(Tt);Tt.getComparisonKey.bind(Tt);const Zq=Tt.basenameOrAuthority.bind(Tt),Fo=Tt.basename.bind(Tt),Yq=Tt.extname.bind(Tt),ny=Tt.dirname.bind(Tt);Tt.joinPath.bind(Tt);const Qq=Tt.normalizePath.bind(Tt);Tt.relativePath.bind(Tt);const WA=Tt.resolvePath.bind(Tt);Tt.isAbsolutePath.bind(Tt);const HA=Tt.isEqualAuthority.bind(Tt),VA=Tt.hasTrailingPathSeparator.bind(Tt);Tt.removeTrailingPathSeparator.bind(Tt);Tt.addTrailingPathSeparator.bind(Tt);var Oc;(function(o){o.META_DATA_LABEL="label",o.META_DATA_DESCRIPTION="description",o.META_DATA_SIZE="size",o.META_DATA_MIME="mime";function e(t){const i=new Map;t.path.substring(t.path.indexOf(";")+1,t.path.lastIndexOf(";")).split(";").forEach(r=>{const[a,l]=r.split(":");a&&l&&i.set(a,l)});const s=t.path.substring(0,t.path.indexOf(";"));return s&&i.set(o.META_DATA_MIME,s),i}o.parseMetaData=e})(Oc||(Oc={}));class Js{constructor(e="",t=!1){if(this.value=e,typeof this.value!="string")throw na("value");typeof t=="boolean"?(this.isTrusted=t,this.supportThemeIcons=!1,this.supportHtml=!1):(this.isTrusted=t.isTrusted??void 0,this.supportThemeIcons=t.supportThemeIcons??!1,this.supportHtml=t.supportHtml??!1)}appendText(e,t=0){return this.value+=Jq(this.supportThemeIcons?Uq(e):e).replace(/([ \t]+)/g,(i,n)=>" ".repeat(n.length)).replace(/\>/gm,"\\>").replace(/\n/g,t===1?`\\ +`:` + +`),this}appendMarkdown(e){return this.value+=e,this}appendCodeblock(e,t){return this.value+=` +${eG(t,e)} +`,this}appendLink(e,t,i){return this.value+="[",this.value+=this._escape(t,"]"),this.value+="](",this.value+=this._escape(String(e),")"),i&&(this.value+=` "${this._escape(this._escape(i,'"'),")")}"`),this.value+=")",this}_escape(e,t){const i=new RegExp(xl(t),"g");return e.replace(i,(n,s)=>e.charAt(s-1)!=="\\"?`\\${n}`:n)}}function bg(o){return ra(o)?!o.value:Array.isArray(o)?o.every(bg):!0}function ra(o){return o instanceof Js?!0:o&&typeof o=="object"?typeof o.value=="string"&&(typeof o.isTrusted=="boolean"||typeof o.isTrusted=="object"||o.isTrusted===void 0)&&(typeof o.supportThemeIcons=="boolean"||o.supportThemeIcons===void 0):!1}function Xq(o,e){return o===e?!0:!o||!e?!1:o.value===e.value&&o.isTrusted===e.isTrusted&&o.supportThemeIcons===e.supportThemeIcons&&o.supportHtml===e.supportHtml&&(o.baseUri===e.baseUri||!!o.baseUri&&!!e.baseUri&&WT(ve.from(o.baseUri),ve.from(e.baseUri)))}function Jq(o){return o.replace(/[\\`*_{}[\]()#+\-!~]/g,"\\$&")}function eG(o,e){const t=o.match(/^`+/gm)?.reduce((n,s)=>n.length>s.length?n:s).length??0,i=t>=3?t+1:3;return[`${"`".repeat(i)}${e}`,o,`${"`".repeat(i)}`].join(` +`)}function Fb(o){return o.replace(/"/g,""")}function ES(o){return o&&o.replace(/\\([\\`*_{}[\]()#+\-.!~])/g,"$1")}function tG(o){const e=[],t=o.split("|").map(n=>n.trim());o=t[0];const i=t[1];if(i){const n=/height=(\d+)/.exec(i),s=/width=(\d+)/.exec(i),r=n?n[1]:"",a=s?s[1]:"",l=isFinite(parseInt(a)),c=isFinite(parseInt(r));l&&e.push(`width="${a}"`),c&&e.push(`height="${r}"`)}return{href:o,dimensions:e}}class HT{constructor(e){this._prefix=e,this._lastId=0}nextId(){return this._prefix+ ++this._lastId}}const Pk=new HT("id#");let tn={};(function(){function o(e,t){t(tn)}o.amd=!0,(function(e,t){typeof o=="function"&&o.amd?o(["exports"],t):typeof exports=="object"&&typeof module<"u"?t(exports):(e=typeof globalThis<"u"?globalThis:e||self,t(e.marked={}))})(this,(function(e){function t(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}e.defaults=t();function i(Xe){e.defaults=Xe}const n=/[&<>"']/,s=new RegExp(n.source,"g"),r=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,a=new RegExp(r.source,"g"),l={"&":"&","<":"<",">":">",'"':""","'":"'"},c=Xe=>l[Xe];function d(Xe,T){if(T){if(n.test(Xe))return Xe.replace(s,c)}else if(r.test(Xe))return Xe.replace(a,c);return Xe}const h=/(^|[^\[])\^/g;function u(Xe,T){let M=typeof Xe=="string"?Xe:Xe.source;T=T||"";const R={replace:(O,V)=>{let Y=typeof V=="string"?V:V.source;return Y=Y.replace(h,"$1"),M=M.replace(O,Y),R},getRegex:()=>new RegExp(M,T)};return R}function f(Xe){try{Xe=encodeURI(Xe).replace(/%25/g,"%")}catch{return null}return Xe}const g={exec:()=>null};function p(Xe,T){const M=Xe.replace(/\|/g,(V,Y,te)=>{let me=!1,ye=Y;for(;--ye>=0&&te[ye]==="\\";)me=!me;return me?"|":" |"}),R=M.split(/ \|/);let O=0;if(R[0].trim()||R.shift(),R.length>0&&!R[R.length-1].trim()&&R.pop(),T)if(R.length>T)R.splice(T);else for(;R.length{const V=O.match(/^\s+/);if(V===null)return O;const[Y]=V;return Y.length>=R.length?O.slice(R.length):O}).join(` +`)}class v{options;rules;lexer;constructor(T){this.options=T||e.defaults}space(T){const M=this.rules.block.newline.exec(T);if(M&&M[0].length>0)return{type:"space",raw:M[0]}}code(T){const M=this.rules.block.code.exec(T);if(M){const R=M[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:M[0],codeBlockStyle:"indented",text:this.options.pedantic?R:_(R,` +`)}}}fences(T){const M=this.rules.block.fences.exec(T);if(M){const R=M[0],O=w(R,M[3]||"");return{type:"code",raw:R,lang:M[2]?M[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):M[2],text:O}}}heading(T){const M=this.rules.block.heading.exec(T);if(M){let R=M[2].trim();if(/#$/.test(R)){const O=_(R,"#");(this.options.pedantic||!O||/ $/.test(O))&&(R=O.trim())}return{type:"heading",raw:M[0],depth:M[1].length,text:R,tokens:this.lexer.inline(R)}}}hr(T){const M=this.rules.block.hr.exec(T);if(M)return{type:"hr",raw:_(M[0],` +`)}}blockquote(T){const M=this.rules.block.blockquote.exec(T);if(M){let R=_(M[0],` +`).split(` +`),O="",V="";const Y=[];for(;R.length>0;){let te=!1;const me=[];let ye;for(ye=0;ye/.test(R[ye]))me.push(R[ye]),te=!0;else if(!te)me.push(R[ye]);else break;R=R.slice(ye);const Ve=me.join(` +`),ft=Ve.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` + $1`).replace(/^ {0,3}>[ \t]?/gm,"");O=O?`${O} +${Ve}`:Ve,V=V?`${V} +${ft}`:ft;const Ct=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(ft,Y,!0),this.lexer.state.top=Ct,R.length===0)break;const Si=Y[Y.length-1];if(Si?.type==="code")break;if(Si?.type==="blockquote"){const Gt=Si,Zn=Gt.raw+` +`+R.join(` +`),qs=this.blockquote(Zn);Y[Y.length-1]=qs,O=O.substring(0,O.length-Gt.raw.length)+qs.raw,V=V.substring(0,V.length-Gt.text.length)+qs.text;break}else if(Si?.type==="list"){const Gt=Si,Zn=Gt.raw+` +`+R.join(` +`),qs=this.list(Zn);Y[Y.length-1]=qs,O=O.substring(0,O.length-Si.raw.length)+qs.raw,V=V.substring(0,V.length-Gt.raw.length)+qs.raw,R=Zn.substring(Y[Y.length-1].raw.length).split(` +`);continue}}return{type:"blockquote",raw:O,tokens:Y,text:V}}}list(T){let M=this.rules.block.list.exec(T);if(M){let R=M[1].trim();const O=R.length>1,V={type:"list",raw:"",ordered:O,start:O?+R.slice(0,-1):"",loose:!1,items:[]};R=O?`\\d{1,9}\\${R.slice(-1)}`:`\\${R}`,this.options.pedantic&&(R=O?R:"[*+-]");const Y=new RegExp(`^( {0,3}${R})((?:[ ][^\\n]*)?(?:\\n|$))`);let te=!1;for(;T;){let me=!1,ye="",Ve="";if(!(M=Y.exec(T))||this.rules.block.hr.test(T))break;ye=M[0],T=T.substring(ye.length);let ft=M[2].split(` +`,1)[0].replace(/^\t+/,em=>" ".repeat(3*em.length)),Ct=T.split(` +`,1)[0],Si=!ft.trim(),Gt=0;if(this.options.pedantic?(Gt=2,Ve=ft.trimStart()):Si?Gt=M[1].length+1:(Gt=M[2].search(/[^ ]/),Gt=Gt>4?1:Gt,Ve=ft.slice(Gt),Gt+=M[1].length),Si&&/^ *$/.test(Ct)&&(ye+=Ct+` +`,T=T.substring(Ct.length+1),me=!0),!me){const em=new RegExp(`^ {0,${Math.min(3,Gt-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),Oe=new RegExp(`^ {0,${Math.min(3,Gt-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),$=new RegExp(`^ {0,${Math.min(3,Gt-1)}}(?:\`\`\`|~~~)`),ue=new RegExp(`^ {0,${Math.min(3,Gt-1)}}#`);for(;T;){const Ie=T.split(` +`,1)[0];if(Ct=Ie,this.options.pedantic&&(Ct=Ct.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),$.test(Ct)||ue.test(Ct)||em.test(Ct)||Oe.test(T))break;if(Ct.search(/[^ ]/)>=Gt||!Ct.trim())Ve+=` +`+Ct.slice(Gt);else{if(Si||ft.search(/[^ ]/)>=4||$.test(ft)||ue.test(ft)||Oe.test(ft))break;Ve+=` +`+Ct}!Si&&!Ct.trim()&&(Si=!0),ye+=Ie+` +`,T=T.substring(Ie.length+1),ft=Ct.slice(Gt)}}V.loose||(te?V.loose=!0:/\n *\n *$/.test(ye)&&(te=!0));let Zn=null,qs;this.options.gfm&&(Zn=/^\[[ xX]\] /.exec(Ve),Zn&&(qs=Zn[0]!=="[ ] ",Ve=Ve.replace(/^\[[ xX]\] +/,""))),V.items.push({type:"list_item",raw:ye,task:!!Zn,checked:qs,loose:!1,text:Ve,tokens:[]}),V.raw+=ye}V.items[V.items.length-1].raw=V.items[V.items.length-1].raw.trimEnd(),V.items[V.items.length-1].text=V.items[V.items.length-1].text.trimEnd(),V.raw=V.raw.trimEnd();for(let me=0;meft.type==="space"),Ve=ye.length>0&&ye.some(ft=>/\n.*\n/.test(ft.raw));V.loose=Ve}if(V.loose)for(let me=0;me$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",V=M[3]?M[3].substring(1,M[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):M[3];return{type:"def",tag:R,raw:M[0],href:O,title:V}}}table(T){const M=this.rules.block.table.exec(T);if(!M||!/[:|]/.test(M[2]))return;const R=p(M[1]),O=M[2].replace(/^\||\| *$/g,"").split("|"),V=M[3]&&M[3].trim()?M[3].replace(/\n[ \t]*$/,"").split(` +`):[],Y={type:"table",raw:M[0],header:[],align:[],rows:[]};if(R.length===O.length){for(const te of O)/^ *-+: *$/.test(te)?Y.align.push("right"):/^ *:-+: *$/.test(te)?Y.align.push("center"):/^ *:-+ *$/.test(te)?Y.align.push("left"):Y.align.push(null);for(let te=0;te({text:me,tokens:this.lexer.inline(me),header:!1,align:Y.align[ye]})));return Y}}lheading(T){const M=this.rules.block.lheading.exec(T);if(M)return{type:"heading",raw:M[0],depth:M[2].charAt(0)==="="?1:2,text:M[1],tokens:this.lexer.inline(M[1])}}paragraph(T){const M=this.rules.block.paragraph.exec(T);if(M){const R=M[1].charAt(M[1].length-1)===` +`?M[1].slice(0,-1):M[1];return{type:"paragraph",raw:M[0],text:R,tokens:this.lexer.inline(R)}}}text(T){const M=this.rules.block.text.exec(T);if(M)return{type:"text",raw:M[0],text:M[0],tokens:this.lexer.inline(M[0])}}escape(T){const M=this.rules.inline.escape.exec(T);if(M)return{type:"escape",raw:M[0],text:d(M[1])}}tag(T){const M=this.rules.inline.tag.exec(T);if(M)return!this.lexer.state.inLink&&/^
/i.test(M[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(M[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(M[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:M[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:M[0]}}link(T){const M=this.rules.inline.link.exec(T);if(M){const R=M[2].trim();if(!this.options.pedantic&&/^$/.test(R))return;const Y=_(R.slice(0,-1),"\\");if((R.length-Y.length)%2===0)return}else{const Y=b(M[2],"()");if(Y>-1){const me=(M[0].indexOf("!")===0?5:4)+M[1].length+Y;M[2]=M[2].substring(0,Y),M[0]=M[0].substring(0,me).trim(),M[3]=""}}let O=M[2],V="";if(this.options.pedantic){const Y=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(O);Y&&(O=Y[1],V=Y[3])}else V=M[3]?M[3].slice(1,-1):"";return O=O.trim(),/^$/.test(R)?O=O.slice(1):O=O.slice(1,-1)),C(M,{href:O&&O.replace(this.rules.inline.anyPunctuation,"$1"),title:V&&V.replace(this.rules.inline.anyPunctuation,"$1")},M[0],this.lexer)}}reflink(T,M){let R;if((R=this.rules.inline.reflink.exec(T))||(R=this.rules.inline.nolink.exec(T))){const O=(R[2]||R[1]).replace(/\s+/g," "),V=M[O.toLowerCase()];if(!V){const Y=R[0].charAt(0);return{type:"text",raw:Y,text:Y}}return C(R,V,R[0],this.lexer)}}emStrong(T,M,R=""){let O=this.rules.inline.emStrongLDelim.exec(T);if(!O||O[3]&&R.match(/[\p{L}\p{N}]/u))return;if(!(O[1]||O[2]||"")||!R||this.rules.inline.punctuation.exec(R)){const Y=[...O[0]].length-1;let te,me,ye=Y,Ve=0;const ft=O[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(ft.lastIndex=0,M=M.slice(-1*T.length+Y);(O=ft.exec(M))!=null;){if(te=O[1]||O[2]||O[3]||O[4]||O[5]||O[6],!te)continue;if(me=[...te].length,O[3]||O[4]){ye+=me;continue}else if((O[5]||O[6])&&Y%3&&!((Y+me)%3)){Ve+=me;continue}if(ye-=me,ye>0)continue;me=Math.min(me,me+ye+Ve);const Ct=[...O[0]][0].length,Si=T.slice(0,Y+O.index+Ct+me);if(Math.min(Y,me)%2){const Zn=Si.slice(1,-1);return{type:"em",raw:Si,text:Zn,tokens:this.lexer.inlineTokens(Zn)}}const Gt=Si.slice(2,-2);return{type:"strong",raw:Si,text:Gt,tokens:this.lexer.inlineTokens(Gt)}}}}codespan(T){const M=this.rules.inline.code.exec(T);if(M){let R=M[2].replace(/\n/g," ");const O=/[^ ]/.test(R),V=/^ /.test(R)&&/ $/.test(R);return O&&V&&(R=R.substring(1,R.length-1)),R=d(R,!0),{type:"codespan",raw:M[0],text:R}}}br(T){const M=this.rules.inline.br.exec(T);if(M)return{type:"br",raw:M[0]}}del(T){const M=this.rules.inline.del.exec(T);if(M)return{type:"del",raw:M[0],text:M[2],tokens:this.lexer.inlineTokens(M[2])}}autolink(T){const M=this.rules.inline.autolink.exec(T);if(M){let R,O;return M[2]==="@"?(R=d(M[1]),O="mailto:"+R):(R=d(M[1]),O=R),{type:"link",raw:M[0],text:R,href:O,tokens:[{type:"text",raw:R,text:R}]}}}url(T){let M;if(M=this.rules.inline.url.exec(T)){let R,O;if(M[2]==="@")R=d(M[0]),O="mailto:"+R;else{let V;do V=M[0],M[0]=this.rules.inline._backpedal.exec(M[0])?.[0]??"";while(V!==M[0]);R=d(M[0]),M[1]==="www."?O="http://"+M[0]:O=M[0]}return{type:"link",raw:M[0],text:R,href:O,tokens:[{type:"text",raw:R,text:R}]}}}inlineText(T){const M=this.rules.inline.text.exec(T);if(M){let R;return this.lexer.state.inRawBlock?R=M[0]:R=d(M[0]),{type:"text",raw:M[0],text:R}}}}const y=/^(?: *(?:\n|$))+/,x=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,L=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,E=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,N=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,H=/(?:[*+-]|\d{1,9}[.)])/,F=u(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,H).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),W=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,j=/^[^\n]+/,B=/(?!\s*\])(?:\\.|[^\[\]\\])+/,G=u(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",B).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),ne=u(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,H).getRegex(),ae="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",de=/|$))/,se=u("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",de).replace("tag",ae).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),be=u(W).replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ae).getRegex(),Rt={blockquote:u(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",be).getRegex(),code:x,def:G,fences:L,heading:N,hr:E,html:se,lheading:F,list:ne,newline:y,paragraph:be,table:g,text:j},ct=u("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ae).getRegex(),Bt={...Rt,table:ct,paragraph:u(W).replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",ct).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ae).getRegex()},ht={...Rt,html:u(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",de).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:g,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:u(W).replace("hr",E).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",F).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},ei=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,js=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,fi=/^( {2,}|\\)\n(?!\s*$)/,po=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,Yg=u(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Al).getRegex(),Ia=u("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Al).getRegex(),Qg=u("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Al).getRegex(),Xg=u(/\\([punct])/,"gu").replace(/punct/g,Al).getRegex(),Ol=u(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),vu=u(de).replace("(?:-->|$)","-->").getRegex(),wu=u("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",vu).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Yc=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,gb=u(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Yc).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),mb=u(/^!?\[(label)\]\[(ref)\]/).replace("label",Yc).replace("ref",B).getRegex(),yu=u(/^!?\[(ref)\](?:\[\])?/).replace("ref",B).getRegex(),Qc=u("reflink|nolink(?!\\()","g").replace("reflink",mb).replace("nolink",yu).getRegex(),Dr={_backpedal:g,anyPunctuation:Xg,autolink:Ol,blockSkip:Pl,br:fi,code:js,del:g,emStrongLDelim:Yg,emStrongRDelimAst:Ia,emStrongRDelimUnd:Qg,escape:ei,link:gb,nolink:yu,punctuation:fb,reflink:mb,reflinkSearch:Qc,tag:wu,text:po,url:g},Fl={...Dr,link:u(/^!?\[(label)\]\((.*?)\)/).replace("label",Yc).getRegex(),reflink:u(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Yc).getRegex()},Su={...Dr,escape:u(ei).replace("])","~|])").getRegex(),url:u(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\me+" ".repeat(ye.length));let O,V,Y;for(;T;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(te=>(O=te.call({lexer:this},T,M))?(T=T.substring(O.raw.length),M.push(O),!0):!1))){if(O=this.tokenizer.space(T)){T=T.substring(O.raw.length),O.raw.length===1&&M.length>0?M[M.length-1].raw+=` +`:M.push(O);continue}if(O=this.tokenizer.code(T)){T=T.substring(O.raw.length),V=M[M.length-1],V&&(V.type==="paragraph"||V.type==="text")?(V.raw+=` +`+O.raw,V.text+=` +`+O.text,this.inlineQueue[this.inlineQueue.length-1].src=V.text):M.push(O);continue}if(O=this.tokenizer.fences(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.heading(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.hr(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.blockquote(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.list(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.html(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.def(T)){T=T.substring(O.raw.length),V=M[M.length-1],V&&(V.type==="paragraph"||V.type==="text")?(V.raw+=` +`+O.raw,V.text+=` +`+O.raw,this.inlineQueue[this.inlineQueue.length-1].src=V.text):this.tokens.links[O.tag]||(this.tokens.links[O.tag]={href:O.href,title:O.title});continue}if(O=this.tokenizer.table(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.lheading(T)){T=T.substring(O.raw.length),M.push(O);continue}if(Y=T,this.options.extensions&&this.options.extensions.startBlock){let te=1/0;const me=T.slice(1);let ye;this.options.extensions.startBlock.forEach(Ve=>{ye=Ve.call({lexer:this},me),typeof ye=="number"&&ye>=0&&(te=Math.min(te,ye))}),te<1/0&&te>=0&&(Y=T.substring(0,te+1))}if(this.state.top&&(O=this.tokenizer.paragraph(Y))){V=M[M.length-1],R&&V?.type==="paragraph"?(V.raw+=` +`+O.raw,V.text+=` +`+O.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=V.text):M.push(O),R=Y.length!==T.length,T=T.substring(O.raw.length);continue}if(O=this.tokenizer.text(T)){T=T.substring(O.raw.length),V=M[M.length-1],V&&V.type==="text"?(V.raw+=` +`+O.raw,V.text+=` +`+O.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=V.text):M.push(O);continue}if(T){const te="Infinite loop on byte: "+T.charCodeAt(0);if(this.options.silent){console.error(te);break}else throw new Error(te)}}return this.state.top=!0,M}inline(T,M=[]){return this.inlineQueue.push({src:T,tokens:M}),M}inlineTokens(T,M=[]){let R,O,V,Y=T,te,me,ye;if(this.tokens.links){const Ve=Object.keys(this.tokens.links);if(Ve.length>0)for(;(te=this.tokenizer.rules.inline.reflinkSearch.exec(Y))!=null;)Ve.includes(te[0].slice(te[0].lastIndexOf("[")+1,-1))&&(Y=Y.slice(0,te.index)+"["+"a".repeat(te[0].length-2)+"]"+Y.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(te=this.tokenizer.rules.inline.blockSkip.exec(Y))!=null;)Y=Y.slice(0,te.index)+"["+"a".repeat(te[0].length-2)+"]"+Y.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(te=this.tokenizer.rules.inline.anyPunctuation.exec(Y))!=null;)Y=Y.slice(0,te.index)+"++"+Y.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;T;)if(me||(ye=""),me=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(Ve=>(R=Ve.call({lexer:this},T,M))?(T=T.substring(R.raw.length),M.push(R),!0):!1))){if(R=this.tokenizer.escape(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.tag(T)){T=T.substring(R.raw.length),O=M[M.length-1],O&&R.type==="text"&&O.type==="text"?(O.raw+=R.raw,O.text+=R.text):M.push(R);continue}if(R=this.tokenizer.link(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.reflink(T,this.tokens.links)){T=T.substring(R.raw.length),O=M[M.length-1],O&&R.type==="text"&&O.type==="text"?(O.raw+=R.raw,O.text+=R.text):M.push(R);continue}if(R=this.tokenizer.emStrong(T,Y,ye)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.codespan(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.br(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.del(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.autolink(T)){T=T.substring(R.raw.length),M.push(R);continue}if(!this.state.inLink&&(R=this.tokenizer.url(T))){T=T.substring(R.raw.length),M.push(R);continue}if(V=T,this.options.extensions&&this.options.extensions.startInline){let Ve=1/0;const ft=T.slice(1);let Ct;this.options.extensions.startInline.forEach(Si=>{Ct=Si.call({lexer:this},ft),typeof Ct=="number"&&Ct>=0&&(Ve=Math.min(Ve,Ct))}),Ve<1/0&&Ve>=0&&(V=T.substring(0,Ve+1))}if(R=this.tokenizer.inlineText(V)){T=T.substring(R.raw.length),R.raw.slice(-1)!=="_"&&(ye=R.raw.slice(-1)),me=!0,O=M[M.length-1],O&&O.type==="text"?(O.raw+=R.raw,O.text+=R.text):M.push(R);continue}if(T){const Ve="Infinite loop on byte: "+T.charCodeAt(0);if(this.options.silent){console.error(Ve);break}else throw new Error(Ve)}}return M}}class Ir{options;parser;constructor(T){this.options=T||e.defaults}space(T){return""}code({text:T,lang:M,escaped:R}){const O=(M||"").match(/^\S*/)?.[0],V=T.replace(/\n$/,"")+` +`;return O?'
'+(R?V:d(V,!0))+`
+`:"
"+(R?V:d(V,!0))+`
+`}blockquote({tokens:T}){return`
+${this.parser.parse(T)}
+`}html({text:T}){return T}heading({tokens:T,depth:M}){return`${this.parser.parseInline(T)} +`}hr(T){return`
+`}list(T){const M=T.ordered,R=T.start;let O="";for(let te=0;te +`+O+" +`}listitem(T){let M="";if(T.task){const R=this.checkbox({checked:!!T.checked});T.loose?T.tokens.length>0&&T.tokens[0].type==="paragraph"?(T.tokens[0].text=R+" "+T.tokens[0].text,T.tokens[0].tokens&&T.tokens[0].tokens.length>0&&T.tokens[0].tokens[0].type==="text"&&(T.tokens[0].tokens[0].text=R+" "+T.tokens[0].tokens[0].text)):T.tokens.unshift({type:"text",raw:R+" ",text:R+" "}):M+=R+" "}return M+=this.parser.parse(T.tokens,!!T.loose),`
  • ${M}
  • +`}checkbox({checked:T}){return"'}paragraph({tokens:T}){return`

    ${this.parser.parseInline(T)}

    +`}table(T){let M="",R="";for(let V=0;V${O}`),` + +`+M+` +`+O+`
    +`}tablerow({text:T}){return` +${T} +`}tablecell(T){const M=this.parser.parseInline(T.tokens),R=T.header?"th":"td";return(T.align?`<${R} align="${T.align}">`:`<${R}>`)+M+` +`}strong({tokens:T}){return`${this.parser.parseInline(T)}`}em({tokens:T}){return`${this.parser.parseInline(T)}`}codespan({text:T}){return`${T}`}br(T){return"
    "}del({tokens:T}){return`${this.parser.parseInline(T)}`}link({href:T,title:M,tokens:R}){const O=this.parser.parseInline(R),V=f(T);if(V===null)return O;T=V;let Y='
    ",Y}image({href:T,title:M,text:R}){const O=f(T);if(O===null)return R;T=O;let V=`${R}{const te=V[Y].flat(1/0);R=R.concat(this.walkTokens(te,M))}):V.tokens&&(R=R.concat(this.walkTokens(V.tokens,M)))}}return R}use(...T){const M=this.defaults.extensions||{renderers:{},childTokens:{}};return T.forEach(R=>{const O={...R};if(O.async=this.defaults.async||O.async||!1,R.extensions&&(R.extensions.forEach(V=>{if(!V.name)throw new Error("extension name required");if("renderer"in V){const Y=M.renderers[V.name];Y?M.renderers[V.name]=function(...te){let me=V.renderer.apply(this,te);return me===!1&&(me=Y.apply(this,te)),me}:M.renderers[V.name]=V.renderer}if("tokenizer"in V){if(!V.level||V.level!=="block"&&V.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const Y=M[V.level];Y?Y.unshift(V.tokenizer):M[V.level]=[V.tokenizer],V.start&&(V.level==="block"?M.startBlock?M.startBlock.push(V.start):M.startBlock=[V.start]:V.level==="inline"&&(M.startInline?M.startInline.push(V.start):M.startInline=[V.start]))}"childTokens"in V&&V.childTokens&&(M.childTokens[V.name]=V.childTokens)}),O.extensions=M),R.renderer){const V=this.defaults.renderer||new Ir(this.defaults);for(const Y in R.renderer){if(!(Y in V))throw new Error(`renderer '${Y}' does not exist`);if(["options","parser"].includes(Y))continue;const te=Y,me=R.renderer[te],ye=V[te];V[te]=(...Ve)=>{let ft=me.apply(V,Ve);return ft===!1&&(ft=ye.apply(V,Ve)),ft||""}}O.renderer=V}if(R.tokenizer){const V=this.defaults.tokenizer||new v(this.defaults);for(const Y in R.tokenizer){if(!(Y in V))throw new Error(`tokenizer '${Y}' does not exist`);if(["options","rules","lexer"].includes(Y))continue;const te=Y,me=R.tokenizer[te],ye=V[te];V[te]=(...Ve)=>{let ft=me.apply(V,Ve);return ft===!1&&(ft=ye.apply(V,Ve)),ft}}O.tokenizer=V}if(R.hooks){const V=this.defaults.hooks||new _o;for(const Y in R.hooks){if(!(Y in V))throw new Error(`hook '${Y}' does not exist`);if(Y==="options")continue;const te=Y,me=R.hooks[te],ye=V[te];_o.passThroughHooks.has(Y)?V[te]=Ve=>{if(this.defaults.async)return Promise.resolve(me.call(V,Ve)).then(Ct=>ye.call(V,Ct));const ft=me.call(V,Ve);return ye.call(V,ft)}:V[te]=(...Ve)=>{let ft=me.apply(V,Ve);return ft===!1&&(ft=ye.apply(V,Ve)),ft}}O.hooks=V}if(R.walkTokens){const V=this.defaults.walkTokens,Y=R.walkTokens;O.walkTokens=function(te){let me=[];return me.push(Y.call(this,te)),V&&(me=me.concat(V.call(this,te))),me}}this.defaults={...this.defaults,...O}}),this}setOptions(T){return this.defaults={...this.defaults,...T},this}lexer(T,M){return bs.lex(T,M??this.defaults)}parser(T,M){return Ti.parse(T,M??this.defaults)}parseMarkdown(T,M){return(O,V)=>{const Y={...V},te={...this.defaults,...Y},me=this.onError(!!te.silent,!!te.async);if(this.defaults.async===!0&&Y.async===!1)return me(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof O>"u"||O===null)return me(new Error("marked(): input parameter is undefined or null"));if(typeof O!="string")return me(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(O)+", string expected"));if(te.hooks&&(te.hooks.options=te),te.async)return Promise.resolve(te.hooks?te.hooks.preprocess(O):O).then(ye=>T(ye,te)).then(ye=>te.hooks?te.hooks.processAllTokens(ye):ye).then(ye=>te.walkTokens?Promise.all(this.walkTokens(ye,te.walkTokens)).then(()=>ye):ye).then(ye=>M(ye,te)).then(ye=>te.hooks?te.hooks.postprocess(ye):ye).catch(me);try{te.hooks&&(O=te.hooks.preprocess(O));let ye=T(O,te);te.hooks&&(ye=te.hooks.processAllTokens(ye)),te.walkTokens&&this.walkTokens(ye,te.walkTokens);let Ve=M(ye,te);return te.hooks&&(Ve=te.hooks.postprocess(Ve)),Ve}catch(ye){return me(ye)}}}onError(T,M){return R=>{if(R.message+=` +Please report this to https://github.com/markedjs/marked.`,T){const O="

    An error occurred:

    "+d(R.message+"",!0)+"
    ";return M?Promise.resolve(O):O}if(M)return Promise.reject(R);throw R}}}const Uo=new Lu;function Ot(Xe,T){return Uo.parse(Xe,T)}Ot.options=Ot.setOptions=function(Xe){return Uo.setOptions(Xe),Ot.defaults=Uo.defaults,i(Ot.defaults),Ot},Ot.getDefaults=t,Ot.defaults=e.defaults,Ot.use=function(...Xe){return Uo.use(...Xe),Ot.defaults=Uo.defaults,i(Ot.defaults),Ot},Ot.walkTokens=function(Xe,T){return Uo.walkTokens(Xe,T)},Ot.parseInline=Uo.parseInline,Ot.Parser=Ti,Ot.parser=Ti.parse,Ot.Renderer=Ir,Ot.TextRenderer=Na,Ot.Lexer=bs,Ot.lexer=bs.lex,Ot.Tokenizer=v,Ot.Hooks=_o,Ot.parse=Ot;const Jc=Ot.options,Vy=Ot.setOptions,zy=Ot.use,Hi=Ot.walkTokens,Bl=Ot.parseInline,Uy=Ot,_b=Ti.parse,Jg=bs.lex;e.Hooks=_o,e.Lexer=bs,e.Marked=Lu,e.Parser=Ti,e.Renderer=Ir,e.TextRenderer=Na,e.Tokenizer=v,e.getDefaults=t,e.lexer=Jg,e.marked=Ot,e.options=Jc,e.parse=Uy,e.parseInline=Bl,e.parser=_b,e.setOptions=Vy,e.use=zy,e.walkTokens=Hi}))})();tn.Hooks||exports.Hooks;tn.Lexer||exports.Lexer;tn.Marked||exports.Marked;tn.Parser||exports.Parser;var g7=tn.Renderer||exports.Renderer;tn.TextRenderer||exports.TextRenderer;tn.Tokenizer||exports.Tokenizer;var iG=tn.defaults||exports.defaults;tn.getDefaults||exports.getDefaults;var sy=tn.lexer||exports.lexer;tn.marked||exports.marked;tn.options||exports.options;var m7=tn.parse||exports.parse;tn.parseInline||exports.parseInline;var nG=tn.parser||exports.parser;tn.setOptions||exports.setOptions;tn.use||exports.use;tn.walkTokens||exports.walkTokens;function sG(o){return JSON.stringify(o,oG)}function Ok(o){let e=JSON.parse(o);return e=Fk(e),e}function oG(o,e){return e instanceof RegExp?{$mid:2,source:e.source,flags:e.flags}:e}function Fk(o,e=0){if(!o||e>200)return o;if(typeof o=="object"){switch(o.$mid){case 1:return ve.revive(o);case 2:return new RegExp(o.source,o.flags);case 17:return new Date(o.source)}if(o instanceof lT||o instanceof Uint8Array)return o;if(Array.isArray(o))for(let t=0;t{let i=[],n=[];return o&&({href:o,dimensions:i}=tG(o),n.push(`src="${Fb(o)}"`)),t&&n.push(`alt="${Fb(t)}"`),e&&n.push(`title="${Fb(e)}"`),i.length&&(n=n.concat(i)),""},paragraph({tokens:o}){return`

    ${this.parser.parseInline(o)}

    `},link({href:o,title:e,tokens:t}){let i=this.parser.parseInline(t);return typeof o!="string"?"":(o===i&&(i=ES(i)),e=typeof e=="string"?Fb(ES(e)):"",o=ES(o),o=o.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"),`
    ${i}`)}});function oy(o,e={},t={}){const i=new X;let n=!1;const s=AT(e),r=function(p){let _;try{_=Ok(decodeURIComponent(p))}catch{}return _?(_=O5(_,b=>{if(o.uris&&o.uris[b])return ve.revive(o.uris[b])}),encodeURIComponent(JSON.stringify(_))):p},a=function(p,_){const b=o.uris&&o.uris[p];let C=ve.revive(b);return _?p.startsWith(Te.data+":")?p:(C||(C=ve.parse(p)),E0.uriToBrowserUri(C).toString(!0)):!C||ve.parse(p).toString()===C.toString()?p:(C.query&&(C=C.with({query:r(C.query)})),C.toString())},l=new g7;l.image=NS.image,l.link=NS.link,l.paragraph=NS.paragraph;const c=[],d=[];if(e.codeBlockRendererSync?l.code=({text:p,lang:_})=>{const b=Pk.nextId(),C=e.codeBlockRendererSync(zA(_),p);return d.push([b,C]),`
    ${Km(p)}
    `}:e.codeBlockRenderer&&(l.code=({text:p,lang:_})=>{const b=Pk.nextId(),C=e.codeBlockRenderer(zA(_),p);return c.push(C.then(w=>[b,w])),`
    ${Km(p)}
    `}),e.actionHandler){const p=function(C){let w=C.target;if(!(w.tagName!=="A"&&(w=w.parentElement,!w||w.tagName!=="A")))try{let v=w.dataset.href;v&&(o.baseUri&&(v=TS(ve.from(o.baseUri),v)),e.actionHandler.callback(v,C))}catch(v){Ze(v)}finally{C.preventDefault()}},_=e.actionHandler.disposables.add(new ze(s,"click")),b=e.actionHandler.disposables.add(new ze(s,"auxclick"));e.actionHandler.disposables.add(J.any(_.event,b.event)(C=>{const w=new ur(fe(s),C);!w.leftButton&&!w.middleButton||p(w)})),e.actionHandler.disposables.add(U(s,"keydown",C=>{const w=new Nt(C);!w.equals(10)&&!w.equals(3)||p(w)}))}o.supportHtml||(l.html=({text:p})=>e.sanitizerOptions?.replaceWithPlaintext?Km(p):(o.isTrusted?p.match(/^(]+>)|(<\/\s*span>)$/):void 0)?p:""),t.renderer=l;let h=o.value??"";h.length>1e5&&(h=`${h.substr(0,1e5)}…`),o.supportThemeIcons&&(h=Kq(h));let u;if(e.fillInIncompleteTokens){const p={...iG,...t},_=sy(h,p),b=bG(_);u=nG(b,p)}else u=m7(h,{...t,async:!1});o.supportThemeIcons&&(u=Qd(u).map(_=>typeof _=="string"?_:_.outerHTML).join(""));const g=new DOMParser().parseFromString(Bk({isTrusted:o.isTrusted,...e.sanitizerOptions},u),"text/html");if(g.body.querySelectorAll("img, audio, video, source").forEach(p=>{const _=p.getAttribute("src");if(_){let b=_;try{o.baseUri&&(b=TS(ve.from(o.baseUri),b))}catch{}if(p.setAttribute("src",a(b,!0)),e.remoteImageIsAllowed){const C=ve.parse(b);C.scheme!==Te.file&&C.scheme!==Te.data&&!e.remoteImageIsAllowed(C)&&p.replaceWith(ce("",void 0,p.outerHTML))}}}),g.body.querySelectorAll("a").forEach(p=>{const _=p.getAttribute("href");if(p.setAttribute("href",""),!_||/^data:|javascript:/i.test(_)||/^command:/i.test(_)&&!o.isTrusted||/^command:(\/\/\/)?_workbench\.downloadResource/i.test(_))p.replaceWith(...p.childNodes);else{let b=a(_,!1);o.baseUri&&(b=TS(ve.from(o.baseUri),_)),p.dataset.href=b}}),s.innerHTML=Bk({isTrusted:o.isTrusted,...e.sanitizerOptions},g.body.innerHTML),c.length>0)Promise.all(c).then(p=>{if(n)return;const _=new Map(p),b=s.querySelectorAll("div[data-code]");for(const C of b){const w=_.get(C.dataset.code??"");w&&un(C,w)}e.asyncRenderCallback?.()});else if(d.length>0){const p=new Map(d),_=s.querySelectorAll("div[data-code]");for(const b of _){const C=p.get(b.dataset.code??"");C&&un(b,C)}}if(e.asyncRenderCallback)for(const p of s.getElementsByTagName("img")){const _=i.add(U(p,"load",()=>{_.dispose(),e.asyncRenderCallback()}))}return{element:s,dispose:()=>{n=!0,i.dispose()}}}function zA(o){if(!o)return"";const e=o.split(/[\s+|:|,|\{|\?]/,1);return e.length?e[0]:o}function TS(o,e){return/^\w[\w\d+.-]*:/.test(e)?e:o.path.endsWith("/")?WA(o,e).toString():WA(ny(o),e).toString()}const rG=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"];function Bk(o,e){const{config:t,allowedSchemes:i}=lG(o),n=new X;n.add(UA("uponSanitizeAttribute",(s,r)=>{if(r.attrName==="style"||r.attrName==="class"){if(s.tagName==="SPAN"){if(r.attrName==="style"){r.keepAttr=/^(color\:(#[0-9a-fA-F]+|var\(--vscode(-[a-zA-Z]+)+\));)?(background-color\:(#[0-9a-fA-F]+|var\(--vscode(-[a-zA-Z]+)+\));)?(border-radius:[0-9]+px;)?$/.test(r.attrValue);return}else if(r.attrName==="class"){r.keepAttr=/^codicon codicon-[a-z\-]+( codicon-modifier-[a-z\-]+)?$/.test(r.attrValue);return}}r.keepAttr=!1;return}else if(s.tagName==="INPUT"&&s.attributes.getNamedItem("type")?.value==="checkbox"){if(r.attrName==="type"&&r.attrValue==="checkbox"||r.attrName==="disabled"||r.attrName==="checked"){r.keepAttr=!0;return}r.keepAttr=!1}})),n.add(UA("uponSanitizeElement",(s,r)=>{if(r.tagName==="input"&&(s.attributes.getNamedItem("type")?.value==="checkbox"?s.setAttribute("disabled",""):o.replaceWithPlaintext||s.remove()),o.replaceWithPlaintext&&!r.allowedTags[r.tagName]&&r.tagName!=="body"&&s.parentElement){let a,l;if(r.tagName==="#comment")a=``;else{const u=rG.includes(r.tagName),f=s.attributes.length?" "+Array.from(s.attributes).map(g=>`${g.name}="${g.value}"`).join(" "):"";a=`<${r.tagName}${f}>`,u||(l=``)}const c=document.createDocumentFragment(),d=s.parentElement.ownerDocument.createTextNode(a);c.appendChild(d);const h=l?s.parentElement.ownerDocument.createTextNode(l):void 0;for(;s.firstChild;)c.appendChild(s.firstChild);h&&c.appendChild(h),s.nodeType===Node.COMMENT_NODE?s.parentElement.insertBefore(c,s):s.parentElement.replaceChild(c,s)}})),n.add(AV(i));try{return IF(e,{...t,RETURN_TRUSTED_TYPE:!0})}finally{n.dispose()}}const aG=["align","autoplay","alt","checked","class","colspan","controls","data-code","data-href","disabled","draggable","height","href","loop","muted","playsinline","poster","rowspan","src","style","target","title","type","width","start"];function lG(o){const e=[Te.http,Te.https,Te.mailto,Te.data,Te.file,Te.vscodeFileResource,Te.vscodeRemote,Te.vscodeRemoteResource];return o.isTrusted&&e.push(Te.command),{config:{ALLOWED_TAGS:o.allowedTags??[...PV],ALLOWED_ATTR:aG,ALLOW_UNKNOWN_PROTOCOLS:!0},allowedSchemes:e}}function cG(o){return typeof o=="string"?o:dG(o)}function dG(o,e){let t=o.value??"";t.length>1e5&&(t=`${t.substr(0,1e5)}…`);const i=m7(t,{async:!1,renderer:fG.value}).replace(/&(#\d+|[a-zA-Z]+);/g,n=>hG.get(n)??n);return Bk({isTrusted:!1},i).toString()}const hG=new Map([[""",'"'],[" "," "],["&","&"],["'","'"],["<","<"],[">",">"]]);function uG(){const o=new g7;return o.code=({text:e})=>e,o.blockquote=({text:e})=>e+` +`,o.html=e=>"",o.heading=function({tokens:e}){return this.parser.parseInline(e)+` +`},o.hr=()=>"",o.list=function({items:e}){return e.map(t=>this.listitem(t)).join(` +`)+` +`},o.listitem=({text:e})=>e+` +`,o.paragraph=function({tokens:e}){return this.parser.parseInline(e)+` +`},o.table=function({header:e,rows:t}){return e.map(i=>this.tablecell(i)).join(" ")+` +`+t.map(i=>i.map(n=>this.tablecell(n)).join(" ")).join(` +`)+` +`},o.tablerow=({text:e})=>e,o.tablecell=function({tokens:e}){return this.parser.parseInline(e)},o.strong=({text:e})=>e,o.em=({text:e})=>e,o.codespan=({text:e})=>e,o.br=e=>` +`,o.del=({text:e})=>e,o.image=e=>"",o.text=({text:e})=>e,o.link=({text:e})=>e,o}const fG=new ua(o=>uG());function HC(o){let e="";return o.forEach(t=>{e+=t.raw}),e}function p7(o){if(o.tokens)for(let e=o.tokens.length-1;e>=0;e--){const t=o.tokens[e];if(t.type==="text"){const i=t.raw.split(` +`),n=i[i.length-1];if(n.includes("`"))return vG(o);if(n.includes("**"))return kG(o);if(n.match(/\*\w/))return wG(o);if(n.match(/(^|\s)__\w/))return DG(o);if(n.match(/(^|\s)_\w/))return yG(o);if(gG(n)||mG(n)&&o.tokens.slice(0,e).some(s=>s.type==="text"&&s.raw.match(/\[[^\]]*$/))){const s=o.tokens.slice(e+1);return s[0]?.type==="link"&&s[1]?.type==="text"&&s[1].raw.match(/^ *"[^"]*$/)||n.match(/^[^"]* +"[^"]*$/)?LG(o):SG(o)}else if(n.match(/(^|\s)\[\w*/))return xG(o)}}}function gG(o){return!!o.match(/(^|\s)\[.*\]\(\w*/)}function mG(o){return!!o.match(/^[^\[]*\]\([^\)]*$/)}function pG(o){const e=o.items[o.items.length-1],t=e.tokens?e.tokens[e.tokens.length-1]:void 0;let i;if(t?.type==="text"&&!("inRawBlock"in e)&&(i=p7(t)),!i||i.type!=="paragraph")return;const n=HC(o.items.slice(0,-1)),s=e.raw.match(/^(\s*(-|\d+\.|\*) +)/)?.[0];if(!s)return;const r=s+HC(e.tokens.slice(0,-1))+i.raw,a=sy(n+r)[0];if(a.type==="list")return a}const _G=3;function bG(o){for(let e=0;e<_G;e++){const t=CG(o);if(t)o=t;else break}return o}function CG(o){let e,t;for(e=0;e"u"&&r.match(/^\s*\|/)){const a=r.match(/(\|[^\|]+)(?=\||$)/g);a&&(i=a.length)}else if(typeof i=="number")if(r.match(/^\s*\|/)){if(s!==t.length-1)return;n=!0}else return}if(typeof i=="number"&&i>0){const s=n?t.slice(0,-1).join(` +`):e,r=!!s.match(/\|\s*$/),a=s+(r?"":"|")+` +|${" --- |".repeat(i)}`;return sy(a)}}function UA(o,e){return EF(o,e),_e(()=>NF(o))}const Ga=class Ga{static createEmpty(e,t){const i=Ga.defaultTokenMetadata,n=new Uint32Array(2);return n[0]=e.length,n[1]=i,new Ga(n,e,t)}static createFromTextAndMetadata(e,t){let i=0,n="";const s=new Array;for(const{text:r,metadata:a}of e)s.push(i+r.length,a),i+=r.length,n+=r;return new Ga(new Uint32Array(s),n,t)}constructor(e,t,i){this._lineTokensBrand=void 0,this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=t,this.languageIdCodec=i}equals(e){return e instanceof Ga?this.slicedEquals(e,0,this._tokensCount):!1}slicedEquals(e,t,i){if(this._text!==e._text||this._tokensCount!==e._tokensCount)return!1;const n=t<<1,s=n+(i<<1);for(let r=n;r0?this._tokens[e-1<<1]:0}getMetadata(e){return this._tokens[(e<<1)+1]}getLanguageId(e){const t=this._tokens[(e<<1)+1],i=sr.getLanguageId(t);return this.languageIdCodec.decodeLanguageId(i)}getStandardTokenType(e){const t=this._tokens[(e<<1)+1];return sr.getTokenType(t)}getForeground(e){const t=this._tokens[(e<<1)+1];return sr.getForeground(t)}getClassName(e){const t=this._tokens[(e<<1)+1];return sr.getClassNameFromMetadata(t)}getInlineStyle(e,t){const i=this._tokens[(e<<1)+1];return sr.getInlineStyleFromMetadata(i,t)}getPresentation(e){const t=this._tokens[(e<<1)+1];return sr.getPresentationFromMetadata(t)}getEndOffset(e){return this._tokens[e<<1]}findTokenIndexAtOffset(e){return Ga.findIndexInTokensArray(this._tokens,e)}inflate(){return this}sliceAndInflate(e,t,i){return new VT(this,e,t,i)}static convertToEndOffset(e,t){const n=(e.length>>>1)-1;for(let s=0;s>>1)-1;for(;it&&(n=s)}return i}withInserted(e){if(e.length===0)return this;let t=0,i=0,n="";const s=new Array;let r=0;for(;;){const a=tr){n+=this._text.substring(r,l.offset);const c=this._tokens[(t<<1)+1];s.push(n.length,c),r=l.offset}n+=l.text,s.push(n.length,l.tokenMetadata),i++}else break}return new Ga(new Uint32Array(s),n,this.languageIdCodec)}getTokenText(e){const t=this.getStartOffset(e),i=this.getEndOffset(e);return this._text.substring(t,i)}forEach(e){const t=this.getCount();for(let i=0;i>>0;let Ni=Ga;class VT{constructor(e,t,i,n){this._source=e,this._startOffset=t,this._endOffset=i,this._deltaOffset=n,this._firstTokenIndex=e.findTokenIndexAtOffset(t),this.languageIdCodec=e.languageIdCodec,this._tokensCount=0;for(let s=this._firstTokenIndex,r=e.getCount();s=i);s++)this._tokensCount++}getMetadata(e){return this._source.getMetadata(this._firstTokenIndex+e)}getLanguageId(e){return this._source.getLanguageId(this._firstTokenIndex+e)}getLineContent(){return this._source.getLineContent().substring(this._startOffset,this._endOffset)}equals(e){return e instanceof VT?this._startOffset===e._startOffset&&this._endOffset===e._endOffset&&this._deltaOffset===e._deltaOffset&&this._source.slicedEquals(e._source,this._firstTokenIndex,this._tokensCount):!1}getCount(){return this._tokensCount}getStandardTokenType(e){return this._source.getStandardTokenType(this._firstTokenIndex+e)}getForeground(e){return this._source.getForeground(this._firstTokenIndex+e)}getEndOffset(e){const t=this._source.getEndOffset(this._firstTokenIndex+e);return Math.min(this._endOffset,t)-this._startOffset+this._deltaOffset}getClassName(e){return this._source.getClassName(this._firstTokenIndex+e)}getInlineStyle(e,t){return this._source.getInlineStyle(this._firstTokenIndex+e,t)}getPresentation(e){return this._source.getPresentation(this._firstTokenIndex+e)}findTokenIndexAtOffset(e){return this._source.findTokenIndexAtOffset(e+this._startOffset-this._deltaOffset)-this._firstTokenIndex}getTokenText(e){const t=this._firstTokenIndex+e,i=this._source.getStartOffset(t),n=this._source.getEndOffset(t);let s=this._source.getTokenText(t);return ithis._endOffset&&(s=s.substring(0,s.length-(n-this._endOffset))),s}forEach(e){for(let t=0;t>>0,new x0(t,e===null?a_:e)}const $A={getInitialState:()=>a_,tokenizeEncoded:(o,e,t)=>zT(0,t)};async function EG(o,e,t){if(!t)return KA(e,o.languageIdCodec,$A);const i=await si.getOrCreate(t);return KA(e,o.languageIdCodec,i||$A)}function NG(o,e,t,i,n,s,r){let a="
    ",l=i,c=0,d=!0;for(let h=0,u=e.getCount();h0;)r&&d?(g+=" ",d=!1):(g+=" ",d=!0),_--;break}case 60:g+="<",d=!1;break;case 62:g+=">",d=!1;break;case 38:g+="&",d=!1;break;case 0:g+="�",d=!1;break;case 65279:case 8232:case 8233:case 133:g+="�",d=!1;break;case 13:g+="​",d=!1;break;case 32:r&&d?(g+=" ",d=!1):(g+=" ",d=!0);break;default:g+=String.fromCharCode(p),d=!1}}if(a+=`${g}`,f>n||l>=n)break}return a+="
    ",a}function KA(o,e,t){let i='
    ';const n=va(o);let s=t.getInitialState();for(let r=0,a=n.length;r0&&(i+="
    ");const c=t.tokenizeEncoded(l,!0,s);Ni.convertToEndOffset(c.tokens,l.length);const h=new Ni(c.tokens,l,e).inflate();let u=0;for(let f=0,g=h.getCount();f${Km(l.substring(u,_))}`,u=_}s=c.endState}return i+="
    ",i}var TG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},jA=function(o,e){return function(t,i){e(t,i,o)}},Wk,sh;let Wh=(sh=class{constructor(e,t,i){this._options=e,this._languageService=t,this._openerService=i,this._onDidRenderAsync=new A,this.onDidRenderAsync=this._onDidRenderAsync.event}dispose(){this._onDidRenderAsync.dispose()}render(e,t,i){if(!e)return{element:document.createElement("span"),dispose:()=>{}};const n=new X,s=n.add(oy(e,{...this._getRenderOptions(e,n),...t},i));return s.element.classList.add("rendered-markdown"),{element:s.element,dispose:()=>n.dispose()}}_getRenderOptions(e,t){return{codeBlockRenderer:async(i,n)=>{let s;i?s=this._languageService.getLanguageIdByLanguageName(i):this._options.editor&&(s=this._options.editor.getModel()?.getLanguageId()),s||(s=Bs);const r=await EG(this._languageService,n,s),a=document.createElement("span");if(a.innerHTML=Wk._ttpTokenizer?.createHTML(r)??r,this._options.editor){const l=this._options.editor.getOption(50);qi(a,l)}else this._options.codeBlockFontFamily&&(a.style.fontFamily=this._options.codeBlockFontFamily);return this._options.codeBlockFontSize!==void 0&&(a.style.fontSize=this._options.codeBlockFontSize),a},asyncRenderCallback:()=>this._onDidRenderAsync.fire(),actionHandler:{callback:i=>UT(this._openerService,i,e.isTrusted),disposables:t}}}},Wk=sh,sh._ttpTokenizer=Kc("tokenizeToString",{createHTML(e){return e}}),sh);Wh=Wk=TG([jA(1,qt),jA(2,Vo)],Wh);async function UT(o,e,t){try{return await o.open(e,{fromUserGesture:!0,allowContributedOpeners:!0,allowCommands:MG(t)})}catch(i){return Ze(i),!1}}function MG(o){return o===!0?!0:o&&Array.isArray(o.enabledCommands)?o.enabledCommands:!1}const ms=He("accessibilityService"),RG=new le("accessibilityModeEnabled",!1),qA=2e4;let yd,R1,Hk,A1,Vk;function AG(o){yd=document.createElement("div"),yd.className="monaco-aria-container";const e=()=>{const i=document.createElement("div");return i.className="monaco-alert",i.setAttribute("role","alert"),i.setAttribute("aria-atomic","true"),yd.appendChild(i),i};R1=e(),Hk=e();const t=()=>{const i=document.createElement("div");return i.className="monaco-status",i.setAttribute("aria-live","polite"),i.setAttribute("aria-atomic","true"),yd.appendChild(i),i};A1=t(),Vk=t(),o.appendChild(yd)}function El(o){yd&&(R1.textContent!==o?(xn(Hk),VC(R1,o)):(xn(R1),VC(Hk,o)))}function Hh(o){yd&&(A1.textContent!==o?(xn(Vk),VC(A1,o)):(xn(A1),VC(Vk,o)))}function VC(o,e){xn(o),e.length>qA&&(e=e.substr(0,qA)),o.textContent=e,o.style.visibility="hidden",o.style.visibility="visible"}var PG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fm=function(o,e){return function(t,i){e(t,i,o)}};const Nr=ce;let zk=class extends xr{get _targetWindow(){return fe(this._target.targetElements[0])}get _targetDocumentElement(){return fe(this._target.targetElements[0]).document.documentElement}get isDisposed(){return this._isDisposed}get isMouseIn(){return this._lockMouseTracker.isMouseIn}get domNode(){return this._hover.containerDomNode}get onDispose(){return this._onDispose.event}get onRequestLayout(){return this._onRequestLayout.event}get anchor(){return this._hoverPosition===2?0:1}get x(){return this._x}get y(){return this._y}get isLocked(){return this._isLocked}set isLocked(e){this._isLocked!==e&&(this._isLocked=e,this._hoverContainer.classList.toggle("locked",this._isLocked))}constructor(e,t,i,n,s,r){super(),this._keybindingService=t,this._configurationService=i,this._openerService=n,this._instantiationService=s,this._accessibilityService=r,this._messageListeners=new X,this._isDisposed=!1,this._forcePosition=!1,this._x=0,this._y=0,this._isLocked=!1,this._enableFocusTraps=!1,this._addedFocusTrap=!1,this._onDispose=this._register(new A),this._onRequestLayout=this._register(new A),this._linkHandler=e.linkHandler||(u=>UT(this._openerService,u,ra(e.content)?e.content.isTrusted:void 0)),this._target="targetElements"in e.target?e.target:new OG(e.target),this._hoverPointer=e.appearance?.showPointer?Nr("div.workbench-hover-pointer"):void 0,this._hover=this._register(new RT),this._hover.containerDomNode.classList.add("workbench-hover","fadeIn"),e.appearance?.compact&&this._hover.containerDomNode.classList.add("workbench-hover","compact"),e.appearance?.skipFadeInAnimation&&this._hover.containerDomNode.classList.add("skip-fade-in"),e.additionalClasses&&this._hover.containerDomNode.classList.add(...e.additionalClasses),e.position?.forcePosition&&(this._forcePosition=!0),e.trapFocus&&(this._enableFocusTraps=!0),this._hoverPosition=e.position?.hoverPosition??3,this.onmousedown(this._hover.containerDomNode,u=>u.stopPropagation()),this.onkeydown(this._hover.containerDomNode,u=>{u.equals(9)&&this.dispose()}),this._register(U(this._targetWindow,"blur",()=>this.dispose()));const a=Nr("div.hover-row.markdown-hover"),l=Nr("div.hover-contents");if(typeof e.content=="string")l.textContent=e.content,l.style.whiteSpace="pre-wrap";else if(Ei(e.content))l.appendChild(e.content),l.classList.add("html-hover-contents");else{const u=e.content,f=this._instantiationService.createInstance(Wh,{codeBlockFontFamily:this._configurationService.getValue("editor").fontFamily||ls.fontFamily}),{element:g}=f.render(u,{actionHandler:{callback:p=>this._linkHandler(p),disposables:this._messageListeners},asyncRenderCallback:()=>{l.classList.add("code-hover-contents"),this.layout(),this._onRequestLayout.fire()}});l.appendChild(g)}if(a.appendChild(l),this._hover.contentsDomNode.appendChild(a),e.actions&&e.actions.length>0){const u=Nr("div.hover-row.status-bar"),f=Nr("div.actions");e.actions.forEach(g=>{const p=this._keybindingService.lookupKeybinding(g.commandId),_=p?p.getLabel():null;ey.render(f,{label:g.label,commandId:g.commandId,run:b=>{g.run(b),this.dispose()},iconClass:g.iconClass},_)}),u.appendChild(f),this._hover.containerDomNode.appendChild(u)}this._hoverContainer=Nr("div.workbench-hover-container"),this._hoverPointer&&this._hoverContainer.appendChild(this._hoverPointer),this._hoverContainer.appendChild(this._hover.containerDomNode);let c;if(e.actions&&e.actions.length>0?c=!1:e.persistence?.hideOnHover===void 0?c=typeof e.content=="string"||ra(e.content)&&!e.content.value.includes("](")&&!e.content.value.includes(""):c=e.persistence.hideOnHover,e.appearance?.showHoverHint){const u=Nr("div.hover-row.status-bar"),f=Nr("div.info");f.textContent=m("hoverhint","Hold {0} key to mouse over",Ue?"Option":"Alt"),u.appendChild(f),this._hover.containerDomNode.appendChild(u)}const d=[...this._target.targetElements];c||d.push(this._hoverContainer);const h=this._register(new GA(d));if(this._register(h.onMouseOut(()=>{this._isLocked||this.dispose()})),c){const u=[...this._target.targetElements,this._hoverContainer];this._lockMouseTracker=this._register(new GA(u)),this._register(this._lockMouseTracker.onMouseOut(()=>{this._isLocked||this.dispose()}))}else this._lockMouseTracker=h}addFocusTrap(){if(!this._enableFocusTraps||this._addedFocusTrap)return;this._addedFocusTrap=!0;const e=this._hover.containerDomNode,t=this.findLastFocusableChild(this._hover.containerDomNode);if(t){const i=iT(this._hoverContainer,Nr("div")),n=Z(this._hoverContainer,Nr("div"));i.tabIndex=0,n.tabIndex=0,this._register(U(n,"focus",s=>{e.focus(),s.preventDefault()})),this._register(U(i,"focus",s=>{t.focus(),s.preventDefault()}))}}findLastFocusableChild(e){if(e.hasChildNodes())for(let t=0;t=0)return s}const n=this.findLastFocusableChild(i);if(n)return n}}render(e){e.appendChild(this._hoverContainer);const i=this._hoverContainer.contains(this._hoverContainer.ownerDocument.activeElement)&&e7(this._configurationService.getValue("accessibility.verbosity.hover")===!0&&this._accessibilityService.isScreenReaderOptimized(),this._keybindingService.lookupKeybinding("editor.action.accessibleView")?.getAriaLabel());i&&Hh(i),this.layout(),this.addFocusTrap()}layout(){this._hover.containerDomNode.classList.remove("right-aligned"),this._hover.contentsDomNode.style.maxHeight="";const e=d=>{const h=AF(d),u=d.getBoundingClientRect();return{top:u.top*h,bottom:u.bottom*h,right:u.right*h,left:u.left*h}},t=this._target.targetElements.map(d=>e(d)),{top:i,right:n,bottom:s,left:r}=t[0],a=n-r,l=s-i,c={top:i,right:n,bottom:s,left:r,width:a,height:l,center:{x:r+a/2,y:i+l/2}};if(this.adjustHorizontalHoverPosition(c),this.adjustVerticalHoverPosition(c),this.adjustHoverMaxHeight(c),this._hoverContainer.style.padding="",this._hoverContainer.style.margin="",this._hoverPointer){switch(this._hoverPosition){case 1:c.left+=3,c.right+=3,this._hoverContainer.style.paddingLeft="3px",this._hoverContainer.style.marginLeft="-3px";break;case 0:c.left-=3,c.right-=3,this._hoverContainer.style.paddingRight="3px",this._hoverContainer.style.marginRight="-3px";break;case 2:c.top+=3,c.bottom+=3,this._hoverContainer.style.paddingTop="3px",this._hoverContainer.style.marginTop="-3px";break;case 3:c.top-=3,c.bottom-=3,this._hoverContainer.style.paddingBottom="3px",this._hoverContainer.style.marginBottom="-3px";break}c.center.x=c.left+a/2,c.center.y=c.top+l/2}this.computeXCordinate(c),this.computeYCordinate(c),this._hoverPointer&&(this._hoverPointer.classList.remove("top"),this._hoverPointer.classList.remove("left"),this._hoverPointer.classList.remove("right"),this._hoverPointer.classList.remove("bottom"),this.setHoverPointerPosition(c)),this._hover.onContentsChanged()}computeXCordinate(e){const t=this._hover.containerDomNode.clientWidth+2;this._target.x!==void 0?this._x=this._target.x:this._hoverPosition===1?this._x=e.right:this._hoverPosition===0?this._x=e.left-t:(this._hoverPointer?this._x=e.center.x-this._hover.containerDomNode.clientWidth/2:this._x=e.left,this._x+t>=this._targetDocumentElement.clientWidth&&(this._hover.containerDomNode.classList.add("right-aligned"),this._x=Math.max(this._targetDocumentElement.clientWidth-t-2,this._targetDocumentElement.clientLeft))),this._xthis._targetWindow.innerHeight&&(this._y=e.bottom)}adjustHorizontalHoverPosition(e){if(this._target.x!==void 0)return;const t=this._hoverPointer?3:0;if(this._forcePosition){const i=t+2;this._hoverPosition===1?this._hover.containerDomNode.style.maxWidth=`${this._targetDocumentElement.clientWidth-e.right-i}px`:this._hoverPosition===0&&(this._hover.containerDomNode.style.maxWidth=`${e.left-i}px`);return}this._hoverPosition===1?this._targetDocumentElement.clientWidth-e.right=this._hover.containerDomNode.clientWidth+t?this._hoverPosition=0:this._hoverPosition=2):this._hoverPosition===0&&(e.left=this._hover.containerDomNode.clientWidth+t?this._hoverPosition=1:this._hoverPosition=2),e.left-this._hover.containerDomNode.clientWidth-t<=this._targetDocumentElement.clientLeft&&(this._hoverPosition=1))}adjustVerticalHoverPosition(e){if(this._target.y!==void 0||this._forcePosition)return;const t=this._hoverPointer?3:0;this._hoverPosition===3?e.top-this._hover.containerDomNode.clientHeight-t<0&&(this._hoverPosition=2):this._hoverPosition===2&&e.bottom+this._hover.containerDomNode.clientHeight+t>this._targetWindow.innerHeight&&(this._hoverPosition=3)}adjustHoverMaxHeight(e){let t=this._targetWindow.innerHeight/2;if(this._forcePosition){const i=(this._hoverPointer?3:0)+2;this._hoverPosition===3?t=Math.min(t,e.top-i):this._hoverPosition===2&&(t=Math.min(t,this._targetWindow.innerHeight-e.bottom-i))}if(this._hover.containerDomNode.style.maxHeight=`${t}px`,this._hover.contentsDomNode.clientHeighte.height?this._hoverPointer.style.top=`${e.center.y-(this._y-t)-3}px`:this._hoverPointer.style.top=`${Math.round(t/2)-3}px`;break}case 3:case 2:{this._hoverPointer.classList.add(this._hoverPosition===3?"bottom":"top");const t=this._hover.containerDomNode.clientWidth;let i=Math.round(t/2)-3;const n=this._x+i;(ne.right)&&(i=e.center.x-this._x-3),this._hoverPointer.style.left=`${i}px`;break}}}focus(){this._hover.containerDomNode.focus()}dispose(){this._isDisposed||(this._onDispose.fire(),this._hoverContainer.remove(),this._messageListeners.dispose(),this._target.dispose(),super.dispose()),this._isDisposed=!0}};zk=PG([fm(1,vt),fm(2,lt),fm(3,Vo),fm(4,ke),fm(5,ms)],zk);class GA extends xr{get onMouseOut(){return this._onMouseOut.event}get isMouseIn(){return this._isMouseIn}constructor(e){super(),this._elements=e,this._isMouseIn=!0,this._onMouseOut=this._register(new A),this._elements.forEach(t=>this.onmouseover(t,()=>this._onTargetMouseOver(t))),this._elements.forEach(t=>this.onmouseleave(t,()=>this._onTargetMouseLeave(t)))}_onTargetMouseOver(e){this._isMouseIn=!0,this._clearEvaluateMouseStateTimeout(e)}_onTargetMouseLeave(e){this._isMouseIn=!1,this._evaluateMouseState(e)}_evaluateMouseState(e){this._clearEvaluateMouseStateTimeout(e),this._mouseTimeout=fe(e).setTimeout(()=>this._fireIfMouseOutside(),0)}_clearEvaluateMouseStateTimeout(e){this._mouseTimeout&&(fe(e).clearTimeout(this._mouseTimeout),this._mouseTimeout=void 0)}_fireIfMouseOutside(){this._isMouseIn||this._onMouseOut.fire()}}class OG{constructor(e){this._element=e,this.targetElements=[this._element]}dispose(){}}var Yi;(function(o){function e(s,r){if(s.start>=r.end||r.start>=s.end)return{start:0,end:0};const a=Math.max(s.start,r.start),l=Math.min(s.end,r.end);return l-a<=0?{start:0,end:0}:{start:a,end:l}}o.intersect=e;function t(s){return s.end-s.start<=0}o.isEmpty=t;function i(s,r){return!t(e(s,r))}o.intersects=i;function n(s,r){const a=[],l={start:s.start,end:Math.min(r.start,s.end)},c={start:Math.max(r.end,s.start),end:s.end};return t(l)||a.push(l),t(c)||a.push(c),a}o.relativeComplement=n})(Yi||(Yi={}));function FG(o){const e=o;return!!e&&typeof e.x=="number"&&typeof e.y=="number"}var oc;(function(o){o[o.AVOID=0]="AVOID",o[o.ALIGN=1]="ALIGN"})(oc||(oc={}));function nf(o,e,t){const i=t.mode===oc.ALIGN?t.offset:t.offset+t.size,n=t.mode===oc.ALIGN?t.offset+t.size:t.offset;return t.position===0?e<=o-i?i:e<=n?n-e:Math.max(o-e,0):e<=n?n-e:e<=o-i?i:0}const Lf=class Lf extends z{constructor(e,t){super(),this.container=null,this.useFixedPosition=!1,this.useShadowDOM=!1,this.delegate=null,this.toDisposeOnClean=z.None,this.toDisposeOnSetContainer=z.None,this.shadowRoot=null,this.shadowRootHostElement=null,this.view=ce(".context-view"),Cn(this.view),this.setContainer(e,t),this._register(_e(()=>this.setContainer(null,1)))}setContainer(e,t){this.useFixedPosition=t!==1;const i=this.useShadowDOM;if(this.useShadowDOM=t===3,!(e===this.container&&i===this.useShadowDOM)&&(this.container&&(this.toDisposeOnSetContainer.dispose(),this.view.remove(),this.shadowRoot&&(this.shadowRoot=null,this.shadowRootHostElement?.remove(),this.shadowRootHostElement=null),this.container=null),e)){if(this.container=e,this.useShadowDOM){this.shadowRootHostElement=ce(".shadow-root-host"),this.container.appendChild(this.shadowRootHostElement),this.shadowRoot=this.shadowRootHostElement.attachShadow({mode:"open"});const s=document.createElement("style");s.textContent=BG,this.shadowRoot.appendChild(s),this.shadowRoot.appendChild(this.view),this.shadowRoot.appendChild(ce("slot"))}else this.container.appendChild(this.view);const n=new X;Lf.BUBBLE_UP_EVENTS.forEach(s=>{n.add(jt(this.container,s,r=>{this.onDOMEvent(r,!1)}))}),Lf.BUBBLE_DOWN_EVENTS.forEach(s=>{n.add(jt(this.container,s,r=>{this.onDOMEvent(r,!0)},!0))}),this.toDisposeOnSetContainer=n}}show(e){this.isVisible()&&this.hide(),xn(this.view),this.view.className="context-view monaco-component",this.view.style.top="0px",this.view.style.left="0px",this.view.style.zIndex=`${2575+(e.layer??0)}`,this.view.style.position=this.useFixedPosition?"fixed":"absolute",ns(this.view),this.toDisposeOnClean=e.render(this.view)||z.None,this.delegate=e,this.doLayout(),this.delegate.focus?.()}getViewElement(){return this.view}layout(){if(this.isVisible()){if(this.delegate.canRelayout===!1&&!(Tc&&KN.pointerEvents)){this.hide();return}this.delegate?.layout?.(),this.doLayout()}}doLayout(){if(!this.isVisible())return;const e=this.delegate.getAnchor();let t;if(Ei(e)){const u=gi(e),f=AF(e);t={top:u.top*f,left:u.left*f,width:u.width*f,height:u.height*f}}else FG(e)?t={top:e.y,left:e.x,width:e.width||1,height:e.height||2}:t={top:e.posy,left:e.posx,width:2,height:2};const i=qp(this.view),n=Hd(this.view),s=this.delegate.anchorPosition||0,r=this.delegate.anchorAlignment||0,a=this.delegate.anchorAxisAlignment||0;let l,c;const d=km();if(a===0){const u={offset:t.top-d.pageYOffset,size:t.height,position:s===0?0:1},f={offset:t.left,size:t.width,position:r===0?0:1,mode:oc.ALIGN};l=nf(d.innerHeight,n,u)+d.pageYOffset,Yi.intersects({start:l,end:l+n},{start:u.offset,end:u.offset+u.size})&&(f.mode=oc.AVOID),c=nf(d.innerWidth,i,f)}else{const u={offset:t.left,size:t.width,position:r===0?0:1},f={offset:t.top,size:t.height,position:s===0?0:1,mode:oc.ALIGN};c=nf(d.innerWidth,i,u),Yi.intersects({start:c,end:c+i},{start:u.offset,end:u.offset+u.size})&&(f.mode=oc.AVOID),l=nf(d.innerHeight,n,f)+d.pageYOffset}this.view.classList.remove("top","bottom","left","right"),this.view.classList.add(s===0?"bottom":"top"),this.view.classList.add(r===0?"left":"right"),this.view.classList.toggle("fixed",this.useFixedPosition);const h=gi(this.container);this.view.style.top=`${l-(this.useFixedPosition?gi(this.view).top:h.top)}px`,this.view.style.left=`${c-(this.useFixedPosition?gi(this.view).left:h.left)}px`,this.view.style.width="initial"}hide(e){const t=this.delegate;this.delegate=null,t?.onHide&&t.onHide(e),this.toDisposeOnClean.dispose(),Cn(this.view)}isVisible(){return!!this.delegate}onDOMEvent(e,t){this.delegate&&(this.delegate.onDOMEvent?this.delegate.onDOMEvent(e,fe(e).document.activeElement):t&&!yi(e.target,this.container)&&this.hide())}dispose(){this.hide(),super.dispose()}};Lf.BUBBLE_UP_EVENTS=["click","keydown","focus","blur"],Lf.BUBBLE_DOWN_EVENTS=["click"];let Uk=Lf;const BG=` + :host { + all: initial; /* 1st rule so subsequent properties are reset. */ + } + + .codicon[class*='codicon-'] { + font: normal normal normal 16px/1 codicon; + display: inline-block; + text-decoration: none; + text-rendering: auto; + text-align: center; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + } + + :host { + font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "HelveticaNeue-Light", system-ui, "Ubuntu", "Droid Sans", sans-serif; + } + + :host-context(.mac) { font-family: -apple-system, BlinkMacSystemFont, sans-serif; } + :host-context(.mac:lang(zh-Hans)) { font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", sans-serif; } + :host-context(.mac:lang(zh-Hant)) { font-family: -apple-system, BlinkMacSystemFont, "PingFang TC", sans-serif; } + :host-context(.mac:lang(ja)) { font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic Pro", sans-serif; } + :host-context(.mac:lang(ko)) { font-family: -apple-system, BlinkMacSystemFont, "Nanum Gothic", "Apple SD Gothic Neo", "AppleGothic", sans-serif; } + + :host-context(.windows) { font-family: "Segoe WPC", "Segoe UI", sans-serif; } + :host-context(.windows:lang(zh-Hans)) { font-family: "Segoe WPC", "Segoe UI", "Microsoft YaHei", sans-serif; } + :host-context(.windows:lang(zh-Hant)) { font-family: "Segoe WPC", "Segoe UI", "Microsoft Jhenghei", sans-serif; } + :host-context(.windows:lang(ja)) { font-family: "Segoe WPC", "Segoe UI", "Yu Gothic UI", "Meiryo UI", sans-serif; } + :host-context(.windows:lang(ko)) { font-family: "Segoe WPC", "Segoe UI", "Malgun Gothic", "Dotom", sans-serif; } + + :host-context(.linux) { font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif; } + :host-context(.linux:lang(zh-Hans)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans SC", "Source Han Sans CN", "Source Han Sans", sans-serif; } + :host-context(.linux:lang(zh-Hant)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans TC", "Source Han Sans TW", "Source Han Sans", sans-serif; } + :host-context(.linux:lang(ja)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans J", "Source Han Sans JP", "Source Han Sans", sans-serif; } + :host-context(.linux:lang(ko)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans K", "Source Han Sans JR", "Source Han Sans", "UnDotum", "FBaekmuk Gulim", sans-serif; } +`;var WG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},HG=function(o,e){return function(t,i){e(t,i,o)}};let zC=class extends z{constructor(e){super(),this.layoutService=e,this.contextView=this._register(new Uk(this.layoutService.mainContainer,1)),this.layout(),this._register(e.onDidLayoutContainer(()=>this.layout()))}showContextView(e,t,i){let n;t?t===this.layoutService.getContainer(fe(t))?n=1:i?n=3:n=2:n=1,this.contextView.setContainer(t??this.layoutService.activeContainer,n),this.contextView.show(e);const s={close:()=>{this.openContextView===s&&this.hideContextView()}};return this.openContextView=s,s}layout(){this.contextView.layout()}hideContextView(e){this.contextView.hide(e),this.openContextView=void 0}};zC=WG([HG(0,jc)],zC);class VG extends zC{getContextViewElement(){return this.contextView.getViewElement()}}class zG{constructor(e,t,i){this.hoverDelegate=e,this.target=t,this.fadeInAnimation=i}async update(e,t,i){if(this._cancellationTokenSource&&(this._cancellationTokenSource.dispose(!0),this._cancellationTokenSource=void 0),this.isDisposed)return;let n;if(e===void 0||Os(e)||Ei(e))n=e;else if(!tC(e.markdown))n=e.markdown??e.markdownNotSupportedFallback;else{this._hoverWidget||this.show(m("iconLabel.loading","Loading..."),t,i),this._cancellationTokenSource=new In;const s=this._cancellationTokenSource.token;if(n=await e.markdown(s),n===void 0&&(n=e.markdownNotSupportedFallback),this.isDisposed||s.isCancellationRequested)return}this.show(n,t,i)}show(e,t,i){const n=this._hoverWidget;if(this.hasContent(e)){const s={content:e,target:this.target,actions:i?.actions,linkHandler:i?.linkHandler,trapFocus:i?.trapFocus,appearance:{showPointer:this.hoverDelegate.placement==="element",skipFadeInAnimation:!this.fadeInAnimation||!!n,showHoverHint:i?.appearance?.showHoverHint},position:{hoverPosition:2}};this._hoverWidget=this.hoverDelegate.showHover(s,t)}n?.dispose()}hasContent(e){return e?ra(e)?!!e.value:!0:!1}get isDisposed(){return this._hoverWidget?.isDisposed}dispose(){this._hoverWidget?.dispose(),this._cancellationTokenSource?.dispose(!0),this._cancellationTokenSource=void 0}}var UG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},gm=function(o,e){return function(t,i){e(t,i,o)}};let $k=class extends z{constructor(e,t,i,n,s){super(),this._instantiationService=e,this._keybindingService=i,this._layoutService=n,this._accessibilityService=s,this._managedHovers=new Map,t.onDidShowContextMenu(()=>this.hideHover()),this._contextViewHandler=this._register(new zC(this._layoutService))}showHover(e,t,i){if(ZA(this._currentHoverOptions)===ZA(e)||this._currentHover&&this._currentHoverOptions?.persistence?.sticky)return;this._currentHoverOptions=e,this._lastHoverOptions=e;const n=e.trapFocus||this._accessibilityService.isScreenReaderOptimized(),s=Xi();i||(n&&s?s.classList.contains("monaco-hover")||(this._lastFocusedElementBeforeOpen=s):this._lastFocusedElementBeforeOpen=void 0);const r=new X,a=this._instantiationService.createInstance(zk,e);if(e.persistence?.sticky&&(a.isLocked=!0),a.onDispose(()=>{this._currentHover?.domNode&&OF(this._currentHover.domNode)&&this._lastFocusedElementBeforeOpen?.focus(),this._currentHoverOptions===e&&(this._currentHoverOptions=void 0),r.dispose()},void 0,r),!e.container){const l=Ei(e.target)?e.target:e.target.targetElements[0];e.container=this._layoutService.getContainer(fe(l))}if(this._contextViewHandler.showContextView(new $G(a,t),e.container),a.onRequestLayout(()=>this._contextViewHandler.layout(),void 0,r),e.persistence?.sticky)r.add(U(fe(e.container).document,ee.MOUSE_DOWN,l=>{yi(l.target,a.domNode)||this.doHideHover()}));else{if("targetElements"in e.target)for(const c of e.target.targetElements)r.add(U(c,ee.CLICK,()=>this.hideHover()));else r.add(U(e.target,ee.CLICK,()=>this.hideHover()));const l=Xi();if(l){const c=fe(l).document;r.add(U(l,ee.KEY_DOWN,d=>this._keyDown(d,a,!!e.persistence?.hideOnKeyDown))),r.add(U(c,ee.KEY_DOWN,d=>this._keyDown(d,a,!!e.persistence?.hideOnKeyDown))),r.add(U(l,ee.KEY_UP,d=>this._keyUp(d,a))),r.add(U(c,ee.KEY_UP,d=>this._keyUp(d,a)))}}if("IntersectionObserver"in _t){const l=new IntersectionObserver(d=>this._intersectionChange(d,a),{threshold:0}),c="targetElements"in e.target?e.target.targetElements[0]:e.target;l.observe(c),r.add(_e(()=>l.disconnect()))}return this._currentHover=a,a}hideHover(){this._currentHover?.isLocked||!this._currentHoverOptions||this.doHideHover()}doHideHover(){this._currentHover=void 0,this._currentHoverOptions=void 0,this._contextViewHandler.hideContextView()}_intersectionChange(e,t){e[e.length-1].isIntersecting||t.dispose()}showAndFocusLastHover(){this._lastHoverOptions&&this.showHover(this._lastHoverOptions,!0,!0)}_keyDown(e,t,i){if(e.key==="Alt"){t.isLocked=!0;return}const n=new Nt(e);this._keybindingService.resolveKeyboardEvent(n).getSingleModifierDispatchChords().some(r=>!!r)||this._keybindingService.softDispatch(n,n.target).kind!==0||i&&(!this._currentHoverOptions?.trapFocus||e.key!=="Tab")&&(this.hideHover(),this._lastFocusedElementBeforeOpen?.focus())}_keyUp(e,t){e.key==="Alt"&&(t.isLocked=!1,t.isMouseIn||(this.hideHover(),this._lastFocusedElementBeforeOpen?.focus()))}setupManagedHover(e,t,i,n){t.setAttribute("custom-hover","true"),t.title!==""&&(console.warn("HTML element already has a title attribute, which will conflict with the custom hover. Please remove the title attribute."),console.trace("Stack trace:",t.title),t.title="");let s,r;const a=(w,v)=>{const y=r!==void 0;w&&(r?.dispose(),r=void 0),v&&(s?.dispose(),s=void 0),y&&(e.onDidHideHover?.(),r=void 0)},l=(w,v,y,x)=>new wr(async()=>{(!r||r.isDisposed)&&(r=new zG(e,y||t,w>0),await r.update(typeof i=="function"?i():i,v,{...n,trapFocus:x}))},w);let c=!1;const d=U(t,ee.MOUSE_DOWN,()=>{c=!0,a(!0,!0)},!0),h=U(t,ee.MOUSE_UP,()=>{c=!1},!0),u=U(t,ee.MOUSE_LEAVE,w=>{c=!1,a(!1,w.fromElement===t)},!0),f=w=>{if(s)return;const v=new X,y={targetElements:[t],dispose:()=>{}};if(e.placement===void 0||e.placement==="mouse"){const x=L=>{y.x=L.x+10,Ei(L.target)&&YA(L.target,t)!==t&&a(!0,!0)};v.add(U(t,ee.MOUSE_MOVE,x,!0))}s=v,!(Ei(w.target)&&YA(w.target,t)!==t)&&v.add(l(e.delay,!1,y))},g=U(t,ee.MOUSE_OVER,f,!0),p=()=>{if(c||s)return;const w={targetElements:[t],dispose:()=>{}},v=new X,y=()=>a(!0,!0);v.add(U(t,ee.BLUR,y,!0)),v.add(l(e.delay,!1,w)),s=v};let _;const b=t.tagName.toLowerCase();b!=="input"&&b!=="textarea"&&(_=U(t,ee.FOCUS,p,!0));const C={show:w=>{a(!1,!0),l(0,w,void 0,w)},hide:()=>{a(!0,!0)},update:async(w,v)=>{i=w,await r?.update(i,void 0,v)},dispose:()=>{this._managedHovers.delete(t),g.dispose(),u.dispose(),d.dispose(),h.dispose(),_?.dispose(),a(!0,!0)}};return this._managedHovers.set(t,C),C}showManagedHover(e){const t=this._managedHovers.get(e);t&&t.show(!0)}dispose(){this._managedHovers.forEach(e=>e.dispose()),super.dispose()}};$k=UG([gm(0,ke),gm(1,Lr),gm(2,vt),gm(3,jc),gm(4,ms)],$k);function ZA(o){if(o!==void 0)return o?.id??o}class $G{get anchorPosition(){return this._hover.anchor}constructor(e,t=!1){this._hover=e,this._focus=t,this.layer=1}render(e){return this._hover.render(e),this._focus&&this._hover.focus(),this._hover}getAnchor(){return{x:this._hover.x,y:this._hover.y}}layout(){this._hover.layout()}}function YA(o,e){for(e=e??fe(o).document.body;!o.hasAttribute("custom-hover")&&o!==e;)o=o.parentElement;return o}Qe(au,$k,1);Sr((o,e)=>{const t=o.getColor(z3);t&&(e.addRule(`.monaco-workbench .workbench-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${t.transparent(.5)}; }`),e.addRule(`.monaco-workbench .workbench-hover hr { border-top: 1px solid ${t.transparent(.5)}; }`))});const b7=He("IWorkspaceEditService");class $T{constructor(e){this.metadata=e}static convert(e){return e.edits.map(t=>{if(Xd.is(t))return Xd.lift(t);if(Ff.is(t))return Ff.lift(t);throw new Error("Unsupported edit")})}}class Xd extends $T{static is(e){return e instanceof Xd?!0:Oi(e)&&ve.isUri(e.resource)&&Oi(e.textEdit)}static lift(e){return e instanceof Xd?e:new Xd(e.resource,e.textEdit,e.versionId,e.metadata)}constructor(e,t,i=void 0,n){super(n),this.resource=e,this.textEdit=t,this.versionId=i}}class Ff extends $T{static is(e){return e instanceof Ff?!0:Oi(e)&&(!!e.newResource||!!e.oldResource)}static lift(e){return e instanceof Ff?e:new Ff(e.oldResource,e.newResource,e.options,e.metadata)}constructor(e,t,i={},n){super(n),this.oldResource=e,this.newResource=t,this.options=i}}const Vi={enableSplitViewResizing:!0,renderSideBySide:!0,renderMarginRevertIcon:!0,renderGutterMenu:!0,maxComputationTime:5e3,maxFileSize:50,ignoreTrimWhitespace:!0,renderIndicators:!0,originalEditable:!1,diffCodeLens:!1,renderOverviewRuler:!0,diffWordWrap:"inherit",diffAlgorithm:"advanced",accessibilityVerbose:!1,experimental:{showMoves:!1,showEmptyDecorations:!0,useTrueInlineView:!1},hideUnchangedRegions:{enabled:!1,contextLineCount:3,minimumLineCount:3,revealLineCount:20},isInEmbeddedEditor:!1,onlyShowAccessibleDiffViewer:!1,renderSideBySideInlineBreakpoint:900,useInlineViewWhenSpaceIsLimited:!0,compactMode:!1},KG=Object.freeze({id:"editor",order:5,type:"object",title:m("editorConfigurationTitle","Editor"),scope:5}),UC={...KG,properties:{"editor.tabSize":{type:"number",default:Qi.tabSize,minimum:1,markdownDescription:m("tabSize","The number of spaces a tab is equal to. This setting is overridden based on the file contents when {0} is on.","`#editor.detectIndentation#`")},"editor.indentSize":{anyOf:[{type:"string",enum:["tabSize"]},{type:"number",minimum:1}],default:"tabSize",markdownDescription:m("indentSize",'The number of spaces used for indentation or `"tabSize"` to use the value from `#editor.tabSize#`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.')},"editor.insertSpaces":{type:"boolean",default:Qi.insertSpaces,markdownDescription:m("insertSpaces","Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when {0} is on.","`#editor.detectIndentation#`")},"editor.detectIndentation":{type:"boolean",default:Qi.detectIndentation,markdownDescription:m("detectIndentation","Controls whether {0} and {1} will be automatically detected when a file is opened based on the file contents.","`#editor.tabSize#`","`#editor.insertSpaces#`")},"editor.trimAutoWhitespace":{type:"boolean",default:Qi.trimAutoWhitespace,description:m("trimAutoWhitespace","Remove trailing auto inserted whitespace.")},"editor.largeFileOptimizations":{type:"boolean",default:Qi.largeFileOptimizations,description:m("largeFileOptimizations","Special handling for large files to disable certain memory intensive features.")},"editor.wordBasedSuggestions":{enum:["off","currentDocument","matchingDocuments","allDocuments"],default:"matchingDocuments",enumDescriptions:[m("wordBasedSuggestions.off","Turn off Word Based Suggestions."),m("wordBasedSuggestions.currentDocument","Only suggest words from the active document."),m("wordBasedSuggestions.matchingDocuments","Suggest words from all open documents of the same language."),m("wordBasedSuggestions.allDocuments","Suggest words from all open documents.")],description:m("wordBasedSuggestions","Controls whether completions should be computed based on words in the document and from which documents they are computed.")},"editor.semanticHighlighting.enabled":{enum:[!0,!1,"configuredByTheme"],enumDescriptions:[m("semanticHighlighting.true","Semantic highlighting enabled for all color themes."),m("semanticHighlighting.false","Semantic highlighting disabled for all color themes."),m("semanticHighlighting.configuredByTheme","Semantic highlighting is configured by the current color theme's `semanticHighlighting` setting.")],default:"configuredByTheme",description:m("semanticHighlighting.enabled","Controls whether the semanticHighlighting is shown for the languages that support it.")},"editor.stablePeek":{type:"boolean",default:!1,markdownDescription:m("stablePeek","Keep peek editors open even when double-clicking their content or when hitting `Escape`.")},"editor.maxTokenizationLineLength":{type:"integer",default:2e4,description:m("maxTokenizationLineLength","Lines above this length will not be tokenized for performance reasons")},"editor.experimental.asyncTokenization":{type:"boolean",default:!0,description:m("editor.experimental.asyncTokenization","Controls whether the tokenization should happen asynchronously on a web worker."),tags:["experimental"]},"editor.experimental.asyncTokenizationLogging":{type:"boolean",default:!1,description:m("editor.experimental.asyncTokenizationLogging","Controls whether async tokenization should be logged. For debugging only.")},"editor.experimental.asyncTokenizationVerification":{type:"boolean",default:!1,description:m("editor.experimental.asyncTokenizationVerification","Controls whether async tokenization should be verified against legacy background tokenization. Might slow down tokenization. For debugging only."),tags:["experimental"]},"editor.experimental.treeSitterTelemetry":{type:"boolean",default:!1,markdownDescription:m("editor.experimental.treeSitterTelemetry","Controls whether tree sitter parsing should be turned on and telemetry collected. Setting `editor.experimental.preferTreeSitter` for specific languages will take precedence."),tags:["experimental"]},"editor.language.brackets":{type:["array","null"],default:null,description:m("schema.brackets","Defines the bracket symbols that increase or decrease the indentation."),items:{type:"array",items:[{type:"string",description:m("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:m("schema.closeBracket","The closing bracket character or string sequence.")}]}},"editor.language.colorizedBracketPairs":{type:["array","null"],default:null,description:m("schema.colorizedBracketPairs","Defines the bracket pairs that are colorized by their nesting level if bracket pair colorization is enabled."),items:{type:"array",items:[{type:"string",description:m("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:m("schema.closeBracket","The closing bracket character or string sequence.")}]}},"diffEditor.maxComputationTime":{type:"number",default:Vi.maxComputationTime,description:m("maxComputationTime","Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.")},"diffEditor.maxFileSize":{type:"number",default:Vi.maxFileSize,description:m("maxFileSize","Maximum file size in MB for which to compute diffs. Use 0 for no limit.")},"diffEditor.renderSideBySide":{type:"boolean",default:Vi.renderSideBySide,description:m("sideBySide","Controls whether the diff editor shows the diff side by side or inline.")},"diffEditor.renderSideBySideInlineBreakpoint":{type:"number",default:Vi.renderSideBySideInlineBreakpoint,description:m("renderSideBySideInlineBreakpoint","If the diff editor width is smaller than this value, the inline view is used.")},"diffEditor.useInlineViewWhenSpaceIsLimited":{type:"boolean",default:Vi.useInlineViewWhenSpaceIsLimited,description:m("useInlineViewWhenSpaceIsLimited","If enabled and the editor width is too small, the inline view is used.")},"diffEditor.renderMarginRevertIcon":{type:"boolean",default:Vi.renderMarginRevertIcon,description:m("renderMarginRevertIcon","When enabled, the diff editor shows arrows in its glyph margin to revert changes.")},"diffEditor.renderGutterMenu":{type:"boolean",default:Vi.renderGutterMenu,description:m("renderGutterMenu","When enabled, the diff editor shows a special gutter for revert and stage actions.")},"diffEditor.ignoreTrimWhitespace":{type:"boolean",default:Vi.ignoreTrimWhitespace,description:m("ignoreTrimWhitespace","When enabled, the diff editor ignores changes in leading or trailing whitespace.")},"diffEditor.renderIndicators":{type:"boolean",default:Vi.renderIndicators,description:m("renderIndicators","Controls whether the diff editor shows +/- indicators for added/removed changes.")},"diffEditor.codeLens":{type:"boolean",default:Vi.diffCodeLens,description:m("codeLens","Controls whether the editor shows CodeLens.")},"diffEditor.wordWrap":{type:"string",enum:["off","on","inherit"],default:Vi.diffWordWrap,markdownEnumDescriptions:[m("wordWrap.off","Lines will never wrap."),m("wordWrap.on","Lines will wrap at the viewport width."),m("wordWrap.inherit","Lines will wrap according to the {0} setting.","`#editor.wordWrap#`")]},"diffEditor.diffAlgorithm":{type:"string",enum:["legacy","advanced"],default:Vi.diffAlgorithm,markdownEnumDescriptions:[m("diffAlgorithm.legacy","Uses the legacy diffing algorithm."),m("diffAlgorithm.advanced","Uses the advanced diffing algorithm.")],tags:["experimental"]},"diffEditor.hideUnchangedRegions.enabled":{type:"boolean",default:Vi.hideUnchangedRegions.enabled,markdownDescription:m("hideUnchangedRegions.enabled","Controls whether the diff editor shows unchanged regions.")},"diffEditor.hideUnchangedRegions.revealLineCount":{type:"integer",default:Vi.hideUnchangedRegions.revealLineCount,markdownDescription:m("hideUnchangedRegions.revealLineCount","Controls how many lines are used for unchanged regions."),minimum:1},"diffEditor.hideUnchangedRegions.minimumLineCount":{type:"integer",default:Vi.hideUnchangedRegions.minimumLineCount,markdownDescription:m("hideUnchangedRegions.minimumLineCount","Controls how many lines are used as a minimum for unchanged regions."),minimum:1},"diffEditor.hideUnchangedRegions.contextLineCount":{type:"integer",default:Vi.hideUnchangedRegions.contextLineCount,markdownDescription:m("hideUnchangedRegions.contextLineCount","Controls how many lines are used as context when comparing unchanged regions."),minimum:1},"diffEditor.experimental.showMoves":{type:"boolean",default:Vi.experimental.showMoves,markdownDescription:m("showMoves","Controls whether the diff editor should show detected code moves.")},"diffEditor.experimental.showEmptyDecorations":{type:"boolean",default:Vi.experimental.showEmptyDecorations,description:m("showEmptyDecorations","Controls whether the diff editor shows empty decorations to see where characters got inserted or deleted.")},"diffEditor.experimental.useTrueInlineView":{type:"boolean",default:Vi.experimental.useTrueInlineView,description:m("useTrueInlineView","If enabled and the editor uses the inline view, word changes are rendered inline.")}}};function jG(o){return typeof o.type<"u"||typeof o.anyOf<"u"}for(const o of Zu){const e=o.schema;if(typeof e<"u")if(jG(e))UC.properties[`editor.${o.name}`]=e;else for(const t in e)Object.hasOwnProperty.call(e,t)&&(UC.properties[t]=e[t])}let Bb=null;function C7(){return Bb===null&&(Bb=Object.create(null),Object.keys(UC.properties).forEach(o=>{Bb[o]=!0})),Bb}function qG(o){return C7()[`editor.${o}`]||!1}function GG(o){return C7()[`diffEditor.${o}`]||!1}const ZG=Bi.as(su.Configuration);ZG.registerConfiguration(UC);class aa{static insert(e,t){return{range:new I(e.lineNumber,e.column,e.lineNumber,e.column),text:t,forceMoveMarkers:!0}}static delete(e){return{range:e,text:null}}static replace(e,t){return{range:e,text:t}}static replaceMove(e,t){return{range:e,text:t,forceMoveMarkers:!0}}}function Wb(o){return Object.isFrozen(o)?o:c6(o)}class Pi{static createEmptyModel(e){return new Pi({},[],[],void 0,e)}constructor(e,t,i,n,s){this._contents=e,this._keys=t,this._overrides=i,this.raw=n,this.logService=s,this.overrideConfigurations=new Map}get rawConfiguration(){if(!this._rawConfiguration)if(this.raw?.length){const e=this.raw.map(t=>{if(t instanceof Pi)return t;const i=new YG("",this.logService);return i.parseRaw(t),i.configurationModel});this._rawConfiguration=e.reduce((t,i)=>i===t?i:t.merge(i),e[0])}else this._rawConfiguration=this;return this._rawConfiguration}get contents(){return this._contents}get overrides(){return this._overrides}get keys(){return this._keys}isEmpty(){return this._keys.length===0&&Object.keys(this._contents).length===0&&this._overrides.length===0}getValue(e){return e?DR(this.contents,e):this.contents}inspect(e,t){const i=this;return{get value(){return Wb(i.rawConfiguration.getValue(e))},get override(){return t?Wb(i.rawConfiguration.getOverrideValue(e,t)):void 0},get merged(){return Wb(t?i.rawConfiguration.override(t).getValue(e):i.rawConfiguration.getValue(e))},get overrides(){const n=[];for(const{contents:s,identifiers:r,keys:a}of i.rawConfiguration.overrides){const l=new Pi(s,a,[],void 0,i.logService).getValue(e);l!==void 0&&n.push({identifiers:r,value:l})}return n.length?Wb(n):void 0}}}getOverrideValue(e,t){const i=this.getContentsForOverrideIdentifer(t);return i?e?DR(i,e):i:void 0}override(e){let t=this.overrideConfigurations.get(e);return t||(t=this.createOverrideConfigurationModel(e),this.overrideConfigurations.set(e,t)),t}merge(...e){const t=Ya(this.contents),i=Ya(this.overrides),n=[...this.keys],s=this.raw?.length?[...this.raw]:[this];for(const r of e)if(s.push(...r.raw?.length?r.raw:[r]),!r.isEmpty()){this.mergeContents(t,r.contents);for(const a of r.overrides){const[l]=i.filter(c=>li(c.identifiers,a.identifiers));l?(this.mergeContents(l.contents,a.contents),l.keys.push(...a.keys),l.keys=Eh(l.keys)):i.push(Ya(a))}for(const a of r.keys)n.indexOf(a)===-1&&n.push(a)}return new Pi(t,n,i,s.every(r=>r instanceof Pi)?void 0:s,this.logService)}createOverrideConfigurationModel(e){const t=this.getContentsForOverrideIdentifer(e);if(!t||typeof t!="object"||!Object.keys(t).length)return this;const i={};for(const n of Eh([...Object.keys(this.contents),...Object.keys(t)])){let s=this.contents[n];const r=t[n];r&&(typeof s=="object"&&typeof r=="object"?(s=Ya(s),this.mergeContents(s,r)):s=r),i[n]=s}return new Pi(i,this.keys,this.overrides,void 0,this.logService)}mergeContents(e,t){for(const i of Object.keys(t)){if(i in e&&Oi(e[i])&&Oi(t[i])){this.mergeContents(e[i],t[i]);continue}e[i]=Ya(t[i])}}getContentsForOverrideIdentifer(e){let t=null,i=null;const n=s=>{s&&(i?this.mergeContents(i,s):i=Ya(s))};for(const s of this.overrides)s.identifiers.length===1&&s.identifiers[0]===e?t=s.contents:s.identifiers.includes(e)&&n(s.contents);return n(t),i}toJSON(){return{contents:this.contents,overrides:this.overrides,keys:this.keys}}setValue(e,t){this.updateValue(e,t,!1)}removeValue(e){const t=this.keys.indexOf(e);t!==-1&&(this.keys.splice(t,1),Qz(this.contents,e),Pc.test(e)&&this.overrides.splice(this.overrides.findIndex(i=>li(i.identifiers,wC(e))),1))}updateValue(e,t,i){if(t3(this.contents,e,t,n=>this.logService.error(n)),i=i||this.keys.indexOf(e)===-1,i&&this.keys.push(e),Pc.test(e)){const n=wC(e),s={identifiers:n,keys:Object.keys(this.contents[e]),contents:tk(this.contents[e],a=>this.logService.error(a))},r=this.overrides.findIndex(a=>li(a.identifiers,n));r!==-1?this.overrides[r]=s:this.overrides.push(s)}}}class YG{constructor(e,t){this._name=e,this.logService=t,this._raw=null,this._configurationModel=null,this._restrictedConfigurations=[]}get configurationModel(){return this._configurationModel||Pi.createEmptyModel(this.logService)}parseRaw(e,t){this._raw=e;const{contents:i,keys:n,overrides:s,restricted:r,hasExcludedProperties:a}=this.doParseRaw(e,t);this._configurationModel=new Pi(i,n,s,a?[e]:void 0,this.logService),this._restrictedConfigurations=r||[]}doParseRaw(e,t){const i=Bi.as(su.Configuration).getConfigurationProperties(),n=this.filter(e,i,!0,t);e=n.raw;const s=tk(e,l=>this.logService.error(`Conflict in settings file ${this._name}: ${l}`)),r=Object.keys(e),a=this.toOverrides(e,l=>this.logService.error(`Conflict in settings file ${this._name}: ${l}`));return{contents:s,keys:r,overrides:a,restricted:n.restricted,hasExcludedProperties:n.hasExcludedProperties}}filter(e,t,i,n){let s=!1;if(!n?.scopes&&!n?.skipRestricted&&!n?.exclude?.length)return{raw:e,restricted:[],hasExcludedProperties:s};const r={},a=[];for(const l in e)if(Pc.test(l)&&i){const c=this.filter(e[l],t,!1,n);r[l]=c.raw,s=s||c.hasExcludedProperties,a.push(...c.restricted)}else{const c=t[l],d=c?typeof c.scope<"u"?c.scope:3:void 0;c?.restricted&&a.push(l),!n.exclude?.includes(l)&&(n.include?.includes(l)||(d===void 0||n.scopes===void 0||n.scopes.includes(d))&&!(n.skipRestricted&&c?.restricted))?r[l]=e[l]:s=!0}return{raw:r,restricted:a,hasExcludedProperties:s}}toOverrides(e,t){const i=[];for(const n of Object.keys(e))if(Pc.test(n)){const s={};for(const r in e[n])s[r]=e[n][r];i.push({identifiers:wC(n),keys:Object.keys(s),contents:tk(s,t)})}return i}}class QG{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f){this.key=e,this.overrides=t,this._value=i,this.overrideIdentifiers=n,this.defaultConfiguration=s,this.policyConfiguration=r,this.applicationConfiguration=a,this.userConfiguration=l,this.localUserConfiguration=c,this.remoteUserConfiguration=d,this.workspaceConfiguration=h,this.folderConfigurationModel=u,this.memoryConfigurationModel=f}toInspectValue(e){return e?.value!==void 0||e?.override!==void 0||e?.overrides!==void 0?e:void 0}get userInspectValue(){return this._userInspectValue||(this._userInspectValue=this.userConfiguration.inspect(this.key,this.overrides.overrideIdentifier)),this._userInspectValue}get user(){return this.toInspectValue(this.userInspectValue)}}class ry{constructor(e,t,i,n,s,r,a,l,c,d){this._defaultConfiguration=e,this._policyConfiguration=t,this._applicationConfiguration=i,this._localUserConfiguration=n,this._remoteUserConfiguration=s,this._workspaceConfiguration=r,this._folderConfigurations=a,this._memoryConfiguration=l,this._memoryConfigurationByResource=c,this.logService=d,this._workspaceConsolidatedConfiguration=null,this._foldersConsolidatedConfigurations=new cs,this._userConfiguration=null}getValue(e,t,i){return this.getConsolidatedConfigurationModel(e,t,i).getValue(e)}updateValue(e,t,i={}){let n;i.resource?(n=this._memoryConfigurationByResource.get(i.resource),n||(n=Pi.createEmptyModel(this.logService),this._memoryConfigurationByResource.set(i.resource,n))):n=this._memoryConfiguration,t===void 0?n.removeValue(e):n.setValue(e,t),i.resource||(this._workspaceConsolidatedConfiguration=null)}inspect(e,t,i){const n=this.getConsolidatedConfigurationModel(e,t,i),s=this.getFolderConfigurationModelForResource(t.resource,i),r=t.resource?this._memoryConfigurationByResource.get(t.resource)||this._memoryConfiguration:this._memoryConfiguration,a=new Set;for(const l of n.overrides)for(const c of l.identifiers)n.getOverrideValue(e,c)!==void 0&&a.add(c);return new QG(e,t,n.getValue(e),a.size?[...a]:void 0,this._defaultConfiguration,this._policyConfiguration.isEmpty()?void 0:this._policyConfiguration,this.applicationConfiguration.isEmpty()?void 0:this.applicationConfiguration,this.userConfiguration,this.localUserConfiguration,this.remoteUserConfiguration,i?this._workspaceConfiguration:void 0,s||void 0,r)}get applicationConfiguration(){return this._applicationConfiguration}get userConfiguration(){return this._userConfiguration||(this._userConfiguration=this._remoteUserConfiguration.isEmpty()?this._localUserConfiguration:this._localUserConfiguration.merge(this._remoteUserConfiguration)),this._userConfiguration}get localUserConfiguration(){return this._localUserConfiguration}get remoteUserConfiguration(){return this._remoteUserConfiguration}getConsolidatedConfigurationModel(e,t,i){let n=this.getConsolidatedConfigurationModelForResource(t,i);return t.overrideIdentifier&&(n=n.override(t.overrideIdentifier)),!this._policyConfiguration.isEmpty()&&this._policyConfiguration.getValue(e)!==void 0&&(n=n.merge(this._policyConfiguration)),n}getConsolidatedConfigurationModelForResource({resource:e},t){let i=this.getWorkspaceConsolidatedConfiguration();if(t&&e){const n=t.getFolder(e);n&&(i=this.getFolderConsolidatedConfiguration(n.uri)||i);const s=this._memoryConfigurationByResource.get(e);s&&(i=i.merge(s))}return i}getWorkspaceConsolidatedConfiguration(){return this._workspaceConsolidatedConfiguration||(this._workspaceConsolidatedConfiguration=this._defaultConfiguration.merge(this.applicationConfiguration,this.userConfiguration,this._workspaceConfiguration,this._memoryConfiguration)),this._workspaceConsolidatedConfiguration}getFolderConsolidatedConfiguration(e){let t=this._foldersConsolidatedConfigurations.get(e);if(!t){const i=this.getWorkspaceConsolidatedConfiguration(),n=this._folderConfigurations.get(e);n?(t=i.merge(n),this._foldersConsolidatedConfigurations.set(e,t)):t=i}return t}getFolderConfigurationModelForResource(e,t){if(t&&e){const i=t.getFolder(e);if(i)return this._folderConfigurations.get(i.uri)}}toData(){return{defaults:{contents:this._defaultConfiguration.contents,overrides:this._defaultConfiguration.overrides,keys:this._defaultConfiguration.keys},policy:{contents:this._policyConfiguration.contents,overrides:this._policyConfiguration.overrides,keys:this._policyConfiguration.keys},application:{contents:this.applicationConfiguration.contents,overrides:this.applicationConfiguration.overrides,keys:this.applicationConfiguration.keys},user:{contents:this.userConfiguration.contents,overrides:this.userConfiguration.overrides,keys:this.userConfiguration.keys},workspace:{contents:this._workspaceConfiguration.contents,overrides:this._workspaceConfiguration.overrides,keys:this._workspaceConfiguration.keys},folders:[...this._folderConfigurations.keys()].reduce((e,t)=>{const{contents:i,overrides:n,keys:s}=this._folderConfigurations.get(t);return e.push([t,{contents:i,overrides:n,keys:s}]),e},[])}}static parse(e,t){const i=this.parseConfigurationModel(e.defaults,t),n=this.parseConfigurationModel(e.policy,t),s=this.parseConfigurationModel(e.application,t),r=this.parseConfigurationModel(e.user,t),a=this.parseConfigurationModel(e.workspace,t),l=e.folders.reduce((c,d)=>(c.set(ve.revive(d[0]),this.parseConfigurationModel(d[1],t)),c),new cs);return new ry(i,n,s,r,Pi.createEmptyModel(t),a,l,Pi.createEmptyModel(t),new cs,t)}static parseConfigurationModel(e,t){return new Pi(e.contents,e.keys,e.overrides,void 0,t)}}class XG{constructor(e,t,i,n,s){this.change=e,this.previous=t,this.currentConfiguraiton=i,this.currentWorkspace=n,this.logService=s,this._marker=` +`,this._markerCode1=this._marker.charCodeAt(0),this._markerCode2=46,this.affectedKeys=new Set,this._previousConfiguration=void 0;for(const r of e.keys)this.affectedKeys.add(r);for(const[,r]of e.overrides)for(const a of r)this.affectedKeys.add(a);this._affectsConfigStr=this._marker;for(const r of this.affectedKeys)this._affectsConfigStr+=r+this._marker}get previousConfiguration(){return!this._previousConfiguration&&this.previous&&(this._previousConfiguration=ry.parse(this.previous.data,this.logService)),this._previousConfiguration}affectsConfiguration(e,t){const i=this._marker+e,n=this._affectsConfigStr.indexOf(i);if(n<0)return!1;const s=n+i.length;if(s>=this._affectsConfigStr.length)return!1;const r=this._affectsConfigStr.charCodeAt(s);if(r!==this._markerCode1&&r!==this._markerCode2)return!1;if(t){const a=this.previousConfiguration?this.previousConfiguration.getValue(e,t,this.previous?.workspace):void 0,l=this.currentConfiguraiton.getValue(e,t,this.currentWorkspace);return!as(a,l)}return!0}}class JG{constructor(){this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._enabled=!0}get enabled(){return this._enabled}enable(){this._enabled=!0,this._onDidChange.fire()}disable(){this._enabled=!1,this._onDidChange.fire()}}const Qm=new JG,$C={kind:0},eZ={kind:1};function tZ(o,e,t){return{kind:2,commandId:o,commandArgs:e,isBubble:t}}class Xm{constructor(e,t,i){this._log=i,this._defaultKeybindings=e,this._defaultBoundCommands=new Map;for(const n of e){const s=n.command;s&&s.charAt(0)!=="-"&&this._defaultBoundCommands.set(s,!0)}this._map=new Map,this._lookupMap=new Map,this._keybindings=Xm.handleRemovals([].concat(e).concat(t));for(let n=0,s=this._keybindings.length;n"u"){this._map.set(e,[t]),this._addToLookupMap(t);return}for(let n=i.length-1;n>=0;n--){const s=i[n];if(s.command===t.command)continue;let r=!0;for(let a=1;a"u"?(t=[e],this._lookupMap.set(e.command,t)):t.push(e)}_removeFromLookupMap(e){if(!e.command)return;const t=this._lookupMap.get(e.command);if(!(typeof t>"u")){for(let i=0,n=t.length;i"u"||i.length===0)return null;if(i.length===1)return i[0];for(let n=i.length-1;n>=0;n--){const s=i[n];if(t.contextMatchesRules(s.when))return s}return i[i.length-1]}resolve(e,t,i){const n=[...t,i];this._log(`| Resolving ${n}`);const s=this._map.get(n[0]);if(s===void 0)return this._log("\\ No keybinding entries."),$C;let r=null;if(n.length<2)r=s;else{r=[];for(let l=0,c=s.length;ld.chords.length)continue;let h=!0;for(let u=1;u=0;i--){const n=t[i];if(Xm._contextMatchesRules(e,n.when))return n}return null}static _contextMatchesRules(e,t){return t?t.evaluate(e):!0}}function QA(o){return o?`${o.serialize()}`:"no when condition"}function XA(o){return o.extensionId?o.isBuiltinExtension?`built-in extension ${o.extensionId}`:`user extension ${o.extensionId}`:o.isDefault?"built-in":"user"}const iZ=/^(cursor|delete|undo|redo|tab|editor\.action\.clipboard)/;class nZ extends z{get onDidUpdateKeybindings(){return this._onDidUpdateKeybindings?this._onDidUpdateKeybindings.event:J.None}get inChordMode(){return this._currentChords.length>0}constructor(e,t,i,n,s){super(),this._contextKeyService=e,this._commandService=t,this._telemetryService=i,this._notificationService=n,this._logService=s,this._onDidUpdateKeybindings=this._register(new A),this._currentChords=[],this._currentChordChecker=new jN,this._currentChordStatusMessage=null,this._ignoreSingleModifiers=sf.EMPTY,this._currentSingleModifier=null,this._currentSingleModifierClearTimeout=new wr,this._currentlyDispatchingCommandId=null,this._logging=!1}dispose(){super.dispose()}_log(e){this._logging&&this._logService.info(`[KeybindingService]: ${e}`)}getKeybindings(){return this._getResolver().getKeybindings()}lookupKeybinding(e,t){const i=this._getResolver().lookupPrimaryKeybinding(e,t||this._contextKeyService);if(i)return i.resolvedKeybinding}dispatchEvent(e,t){return this._dispatch(e,t)}softDispatch(e,t){this._log("/ Soft dispatching keyboard event");const i=this.resolveKeyboardEvent(e);if(i.hasMultipleChords())return console.warn("keyboard event should not be mapped to multiple chords"),$C;const[n]=i.getDispatchChords();if(n===null)return this._log("\\ Keyboard event cannot be dispatched"),$C;const s=this._contextKeyService.getContext(t),r=this._currentChords.map((({keypress:a})=>a));return this._getResolver().resolve(s,r,n)}_scheduleLeaveChordMode(){const e=Date.now();this._currentChordChecker.cancelAndSet(()=>{if(!this._documentHasFocus()){this._leaveChordMode();return}Date.now()-e>5e3&&this._leaveChordMode()},500)}_expectAnotherChord(e,t){switch(this._currentChords.push({keypress:e,label:t}),this._currentChords.length){case 0:throw TN("impossible");case 1:this._currentChordStatusMessage=this._notificationService.status(m("first.chord","({0}) was pressed. Waiting for second key of chord...",t));break;default:{const i=this._currentChords.map(({label:n})=>n).join(", ");this._currentChordStatusMessage=this._notificationService.status(m("next.chord","({0}) was pressed. Waiting for next key of chord...",i))}}this._scheduleLeaveChordMode(),Qm.enabled&&Qm.disable()}_leaveChordMode(){this._currentChordStatusMessage&&(this._currentChordStatusMessage.dispose(),this._currentChordStatusMessage=null),this._currentChordChecker.cancel(),this._currentChords=[],Qm.enable()}_dispatch(e,t){return this._doDispatch(this.resolveKeyboardEvent(e),t,!1)}_singleModifierDispatch(e,t){const i=this.resolveKeyboardEvent(e),[n]=i.getSingleModifierDispatchChords();if(n)return this._ignoreSingleModifiers.has(n)?(this._log(`+ Ignoring single modifier ${n} due to it being pressed together with other keys.`),this._ignoreSingleModifiers=sf.EMPTY,this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1):(this._ignoreSingleModifiers=sf.EMPTY,this._currentSingleModifier===null?(this._log(`+ Storing single modifier for possible chord ${n}.`),this._currentSingleModifier=n,this._currentSingleModifierClearTimeout.cancelAndSet(()=>{this._log("+ Clearing single modifier due to 300ms elapsed."),this._currentSingleModifier=null},300),!1):n===this._currentSingleModifier?(this._log(`/ Dispatching single modifier chord ${n} ${n}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,this._doDispatch(i,t,!0)):(this._log(`+ Clearing single modifier due to modifier mismatch: ${this._currentSingleModifier} ${n}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1));const[s]=i.getChords();return this._ignoreSingleModifiers=new sf(s),this._currentSingleModifier!==null&&this._log("+ Clearing single modifier due to other key up."),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1}_doDispatch(e,t,i=!1){let n=!1;if(e.hasMultipleChords())return console.warn("Unexpected keyboard event mapped to multiple chords"),!1;let s=null,r=null;if(i){const[d]=e.getSingleModifierDispatchChords();s=d,r=d?[d]:[]}else[s]=e.getDispatchChords(),r=this._currentChords.map(({keypress:d})=>d);if(s===null)return this._log("\\ Keyboard event cannot be dispatched in keydown phase."),n;const a=this._contextKeyService.getContext(t),l=e.getLabel(),c=this._getResolver().resolve(a,r,s);switch(c.kind){case 0:{if(this._logService.trace("KeybindingService#dispatch",l,"[ No matching keybinding ]"),this.inChordMode){const d=this._currentChords.map(({label:h})=>h).join(", ");this._log(`+ Leaving multi-chord mode: Nothing bound to "${d}, ${l}".`),this._notificationService.status(m("missing.chord","The key combination ({0}, {1}) is not a command.",d,l),{hideAfter:10*1e3}),this._leaveChordMode(),n=!0}return n}case 1:return this._logService.trace("KeybindingService#dispatch",l,"[ Several keybindings match - more chords needed ]"),n=!0,this._expectAnotherChord(s,l),this._log(this._currentChords.length===1?"+ Entering multi-chord mode...":"+ Continuing multi-chord mode..."),n;case 2:{if(this._logService.trace("KeybindingService#dispatch",l,`[ Will dispatch command ${c.commandId} ]`),c.commandId===null||c.commandId===""){if(this.inChordMode){const d=this._currentChords.map(({label:h})=>h).join(", ");this._log(`+ Leaving chord mode: Nothing bound to "${d}, ${l}".`),this._notificationService.status(m("missing.chord","The key combination ({0}, {1}) is not a command.",d,l),{hideAfter:10*1e3}),this._leaveChordMode(),n=!0}}else{this.inChordMode&&this._leaveChordMode(),c.isBubble||(n=!0),this._log(`+ Invoking command ${c.commandId}.`),this._currentlyDispatchingCommandId=c.commandId;try{typeof c.commandArgs>"u"?this._commandService.executeCommand(c.commandId).then(void 0,d=>this._notificationService.warn(d)):this._commandService.executeCommand(c.commandId,c.commandArgs).then(void 0,d=>this._notificationService.warn(d))}finally{this._currentlyDispatchingCommandId=null}iZ.test(c.commandId)||this._telemetryService.publicLog2("workbenchActionExecuted",{id:c.commandId,from:"keybinding",detail:e.getUserSettingsLabel()??void 0})}return n}}}mightProducePrintableCharacter(e){return e.ctrlKey||e.metaKey?!1:e.keyCode>=31&&e.keyCode<=56||e.keyCode>=21&&e.keyCode<=30}}const Mw=class Mw{constructor(e){this._ctrlKey=e?e.ctrlKey:!1,this._shiftKey=e?e.shiftKey:!1,this._altKey=e?e.altKey:!1,this._metaKey=e?e.metaKey:!1}has(e){switch(e){case"ctrl":return this._ctrlKey;case"shift":return this._shiftKey;case"alt":return this._altKey;case"meta":return this._metaKey}}};Mw.EMPTY=new Mw(null);let sf=Mw;class JA{constructor(e,t,i,n,s,r,a){this._resolvedKeybindingItemBrand=void 0,this.resolvedKeybinding=e,this.chords=e?Kk(e.getDispatchChords()):[],e&&this.chords.length===0&&(this.chords=Kk(e.getSingleModifierDispatchChords())),this.bubble=t?t.charCodeAt(0)===94:!1,this.command=this.bubble?t.substr(1):t,this.commandArgs=i,this.when=n,this.isDefault=s,this.extensionId=r,this.isBuiltinExtension=a}}function Kk(o){const e=[];for(let t=0,i=o.length;tthis._getLabel(e))}getAriaLabel(){return sZ.toLabel(this._os,this._chords,e=>this._getAriaLabel(e))}getElectronAccelerator(){return this._chords.length>1||this._chords[0].isDuplicateModifierCase()?null:oZ.toLabel(this._os,this._chords,e=>this._getElectronAccelerator(e))}getUserSettingsLabel(){return rZ.toLabel(this._os,this._chords,e=>this._getUserSettingsLabel(e))}hasMultipleChords(){return this._chords.length>1}getChords(){return this._chords.map(e=>this._getChord(e))}_getChord(e){return new yH(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,this._getLabel(e),this._getAriaLabel(e))}getDispatchChords(){return this._chords.map(e=>this._getChordDispatch(e))}getSingleModifierDispatchChords(){return this._chords.map(e=>this._getSingleModifierChordDispatch(e))}}class l_ extends lZ{constructor(e,t){super(t,e)}_keyCodeToUILabel(e){if(this._os===2)switch(e){case 15:return"←";case 16:return"↑";case 17:return"→";case 18:return"↓"}return el.toString(e)}_getLabel(e){return e.isDuplicateModifierCase()?"":this._keyCodeToUILabel(e.keyCode)}_getAriaLabel(e){return e.isDuplicateModifierCase()?"":el.toString(e.keyCode)}_getElectronAccelerator(e){return el.toElectronAccelerator(e.keyCode)}_getUserSettingsLabel(e){if(e.isDuplicateModifierCase())return"";const t=el.toUserSettingsUS(e.keyCode);return t&&t.toLowerCase()}_getChordDispatch(e){return l_.getDispatchStr(e)}static getDispatchStr(e){if(e.isModifierKey())return null;let t="";return e.ctrlKey&&(t+="ctrl+"),e.shiftKey&&(t+="shift+"),e.altKey&&(t+="alt+"),e.metaKey&&(t+="meta+"),t+=el.toString(e.keyCode),t}_getSingleModifierChordDispatch(e){return e.keyCode===5&&!e.shiftKey&&!e.altKey&&!e.metaKey?"ctrl":e.keyCode===4&&!e.ctrlKey&&!e.altKey&&!e.metaKey?"shift":e.keyCode===6&&!e.ctrlKey&&!e.shiftKey&&!e.metaKey?"alt":e.keyCode===57&&!e.ctrlKey&&!e.shiftKey&&!e.altKey?"meta":null}static _scanCodeToKeyCode(e){const t=ON[e];if(t!==-1)return t;switch(e){case 10:return 31;case 11:return 32;case 12:return 33;case 13:return 34;case 14:return 35;case 15:return 36;case 16:return 37;case 17:return 38;case 18:return 39;case 19:return 40;case 20:return 41;case 21:return 42;case 22:return 43;case 23:return 44;case 24:return 45;case 25:return 46;case 26:return 47;case 27:return 48;case 28:return 49;case 29:return 50;case 30:return 51;case 31:return 52;case 32:return 53;case 33:return 54;case 34:return 55;case 35:return 56;case 36:return 22;case 37:return 23;case 38:return 24;case 39:return 25;case 40:return 26;case 41:return 27;case 42:return 28;case 43:return 29;case 44:return 30;case 45:return 21;case 51:return 88;case 52:return 86;case 53:return 92;case 54:return 94;case 55:return 93;case 56:return 0;case 57:return 85;case 58:return 95;case 59:return 91;case 60:return 87;case 61:return 89;case 62:return 90;case 106:return 97}return 0}static _toKeyCodeChord(e){if(!e)return null;if(e instanceof kl)return e;const t=this._scanCodeToKeyCode(e.scanCode);return t===0?null:new kl(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,t)}static resolveKeybinding(e,t){const i=Kk(e.chords.map(n=>this._toKeyCodeChord(n)));return i.length>0?[new l_(i,t)]:[]}}const Cg=He("labelService"),cZ=He("progressService"),EM=class EM{constructor(e){this.callback=e}report(e){this._value=e,this.callback(this._value)}};EM.None=Object.freeze({report(){}});let rc=EM;const G_=He("editorProgressService");class dZ{constructor(){this._value="",this._pos=0}reset(e){return this._value=e,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos=0;t--,this._valueLen--){const i=this._value.charCodeAt(t);if(!(i===47||this._splitOnBackslash&&i===92))break}return this.next()}hasNext(){return this._to!1,t=()=>!1){return new Bf(new fZ(e,t))}static forStrings(){return new Bf(new dZ)}static forConfigKeys(){return new Bf(new hZ)}constructor(e){this._iter=e}clear(){this._root=void 0}set(e,t){const i=this._iter.reset(e);let n;this._root||(this._root=new Hb,this._root.segment=i.value());const s=[];for(n=this._root;;){const a=i.cmp(n.segment);if(a>0)n.left||(n.left=new Hb,n.left.segment=i.value()),s.push([-1,n]),n=n.left;else if(a<0)n.right||(n.right=new Hb,n.right.segment=i.value()),s.push([1,n]),n=n.right;else if(i.hasNext())i.next(),n.mid||(n.mid=new Hb,n.mid.segment=i.value()),s.push([0,n]),n=n.mid;else break}const r=n.value;n.value=t,n.key=e;for(let a=s.length-1;a>=0;a--){const l=s[a][1];l.updateHeight();const c=l.balanceFactor();if(c<-1||c>1){const d=s[a][0],h=s[a+1][0];if(d===1&&h===1)s[a][1]=l.rotateLeft();else if(d===-1&&h===-1)s[a][1]=l.rotateRight();else if(d===1&&h===-1)l.right=s[a+1][1]=s[a+1][1].rotateRight(),s[a][1]=l.rotateLeft();else if(d===-1&&h===1)l.left=s[a+1][1]=s[a+1][1].rotateLeft(),s[a][1]=l.rotateRight();else throw new Error;if(a>0)switch(s[a-1][0]){case-1:s[a-1][1].left=s[a][1];break;case 1:s[a-1][1].right=s[a][1];break;case 0:s[a-1][1].mid=s[a][1];break}else this._root=s[0][1]}}return r}get(e){return this._getNode(e)?.value}_getNode(e){const t=this._iter.reset(e);let i=this._root;for(;i;){const n=t.cmp(i.segment);if(n>0)i=i.left;else if(n<0)i=i.right;else if(t.hasNext())t.next(),i=i.mid;else break}return i}has(e){const t=this._getNode(e);return!(t?.value===void 0&&t?.mid===void 0)}delete(e){return this._delete(e,!1)}deleteSuperstr(e){return this._delete(e,!0)}_delete(e,t){const i=this._iter.reset(e),n=[];let s=this._root;for(;s;){const r=i.cmp(s.segment);if(r>0)n.push([-1,s]),s=s.left;else if(r<0)n.push([1,s]),s=s.right;else if(i.hasNext())i.next(),n.push([0,s]),s=s.mid;else break}if(s){if(t?(s.left=void 0,s.mid=void 0,s.right=void 0,s.height=1):(s.key=void 0,s.value=void 0),!s.mid&&!s.value)if(s.left&&s.right){const r=this._min(s.right);if(r.key){const{key:a,value:l,segment:c}=r;this._delete(r.key,!1),s.key=a,s.value=l,s.segment=c}}else{const r=s.left??s.right;if(n.length>0){const[a,l]=n[n.length-1];switch(a){case-1:l.left=r;break;case 0:l.mid=r;break;case 1:l.right=r;break}}else this._root=r}for(let r=n.length-1;r>=0;r--){const a=n[r][1];a.updateHeight();const l=a.balanceFactor();if(l>1?(a.right.balanceFactor()>=0||(a.right=a.right.rotateRight()),n[r][1]=a.rotateLeft()):l<-1&&(a.left.balanceFactor()<=0||(a.left=a.left.rotateLeft()),n[r][1]=a.rotateRight()),r>0)switch(n[r-1][0]){case-1:n[r-1][1].left=n[r][1];break;case 1:n[r-1][1].right=n[r][1];break;case 0:n[r-1][1].mid=n[r][1];break}else this._root=n[0][1]}}}_min(e){for(;e.left;)e=e.left;return e}findSubstr(e){const t=this._iter.reset(e);let i=this._root,n;for(;i;){const s=t.cmp(i.segment);if(s>0)i=i.left;else if(s<0)i=i.right;else if(t.hasNext())t.next(),n=i.value||n,i=i.mid;else break}return i&&i.value||n}findSuperstr(e){return this._findSuperstrOrElement(e,!1)}_findSuperstrOrElement(e,t){const i=this._iter.reset(e);let n=this._root;for(;n;){const s=i.cmp(n.segment);if(s>0)n=n.left;else if(s<0)n=n.right;else if(i.hasNext())i.next(),n=n.mid;else return n.mid?this._entries(n.mid):t?n.value:void 0}}forEach(e){for(const[t,i]of this)e(i,t)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(e){const t=[];return this._dfsEntries(e,t),t[Symbol.iterator]()}_dfsEntries(e,t){e&&(e.left&&this._dfsEntries(e.left,t),e.value&&t.push([e.key,e.value]),e.mid&&this._dfsEntries(e.mid,t),e.right&&this._dfsEntries(e.right,t))}}const jk=He("contextService");function qk(o){const e=o;return typeof e?.id=="string"&&ve.isUri(e.uri)}function gZ(o){return typeof o?.id=="string"&&!qk(o)&&!_Z(o)}const mZ={id:"empty-window"};function pZ(o,e){if(typeof o=="string"||typeof o>"u")return typeof o=="string"?{id:uc(o)}:mZ;const t=o;return t.configuration?{id:t.id,configPath:t.configuration}:t.folders.length===1?{id:t.id,uri:t.folders[0].uri}:{id:t.id}}function _Z(o){const e=o;return typeof e?.id=="string"&&ve.isUri(e.configPath)}class bZ{constructor(e,t){this.raw=t,this.uri=e.uri,this.index=e.index,this.name=e.name}toJSON(){return{uri:this.uri,name:this.name,index:this.index}}}const Gk="code-workspace";m("codeWorkspace","Code Workspace");const CZ="4064f6ec-cb38-4ad0-af64-ee6467e63c82";var eP;(function(o){o.inspectTokensAction=m("inspectTokens","Developer: Inspect Tokens")})(eP||(eP={}));var tP;(function(o){o.gotoLineActionLabel=m("gotoLineActionLabel","Go to Line/Column...")})(tP||(tP={}));var iP;(function(o){o.helpQuickAccessActionLabel=m("helpQuickAccess","Show all Quick Access Providers")})(iP||(iP={}));var nP;(function(o){o.quickCommandActionLabel=m("quickCommandActionLabel","Command Palette"),o.quickCommandHelp=m("quickCommandActionHelp","Show And Run Commands")})(nP||(nP={}));var sP;(function(o){o.quickOutlineActionLabel=m("quickOutlineActionLabel","Go to Symbol..."),o.quickOutlineByCategoryActionLabel=m("quickOutlineByCategoryActionLabel","Go to Symbol by Category...")})(sP||(sP={}));var Zk;(function(o){o.editorViewAccessibleLabel=m("editorViewAccessibleLabel","Editor content")})(Zk||(Zk={}));var oP;(function(o){o.toggleHighContrast=m("toggleHighContrast","Toggle High Contrast Theme")})(oP||(oP={}));var Yk;(function(o){o.bulkEditServiceSummary=m("bulkEditServiceSummary","Made {0} edits in {1} files")})(Yk||(Yk={}));const vZ=He("workspaceTrustManagementService");let vg=[],jT=[],v7=[];function Vb(o,e=!1){wZ(o,!1,e)}function wZ(o,e,t){const i=yZ(o,e);vg.push(i),i.userConfigured?v7.push(i):jT.push(i),t&&!i.userConfigured&&vg.forEach(n=>{n.mime===i.mime||n.userConfigured||(i.extension&&n.extension===i.extension&&console.warn(`Overwriting extension <<${i.extension}>> to now point to mime <<${i.mime}>>`),i.filename&&n.filename===i.filename&&console.warn(`Overwriting filename <<${i.filename}>> to now point to mime <<${i.mime}>>`),i.filepattern&&n.filepattern===i.filepattern&&console.warn(`Overwriting filepattern <<${i.filepattern}>> to now point to mime <<${i.mime}>>`),i.firstline&&n.firstline===i.firstline&&console.warn(`Overwriting firstline <<${i.firstline}>> to now point to mime <<${i.mime}>>`))})}function yZ(o,e){return{id:o.id,mime:o.mime,filename:o.filename,extension:o.extension,filepattern:o.filepattern,firstline:o.firstline,userConfigured:e,filenameLowercase:o.filename?o.filename.toLowerCase():void 0,extensionLowercase:o.extension?o.extension.toLowerCase():void 0,filepatternLowercase:o.filepattern?N3(o.filepattern.toLowerCase()):void 0,filepatternOnPath:o.filepattern?o.filepattern.indexOf(oi.sep)>=0:!1}}function SZ(){vg=vg.filter(o=>o.userConfigured),jT=[]}function LZ(o,e){return xZ(o,e).map(t=>t.id)}function xZ(o,e){let t;if(o)switch(o.scheme){case Te.file:t=o.fsPath;break;case Te.data:{t=Oc.parseMetaData(o).get(Oc.META_DATA_LABEL);break}case Te.vscodeNotebookCell:t=void 0;break;default:t=o.path}if(!t)return[{id:"unknown",mime:il.unknown}];t=t.toLowerCase();const i=uc(t),n=rP(t,i,v7);if(n)return[n,{id:Bs,mime:il.text}];const s=rP(t,i,jT);if(s)return[s,{id:Bs,mime:il.text}];if(e){const r=kZ(e);if(r)return[r,{id:Bs,mime:il.text}]}return[{id:"unknown",mime:il.unknown}]}function rP(o,e,t){let i,n,s;for(let r=t.length-1;r>=0;r--){const a=t[r];if(e===a.filenameLowercase){i=a;break}if(a.filepattern&&(!n||a.filepattern.length>n.filepattern.length)){const l=a.filepatternOnPath?o:e;a.filepatternLowercase?.(l)&&(n=a)}a.extension&&(!s||a.extension.length>s.extension.length)&&e.endsWith(a.extensionLowercase)&&(s=a)}if(i)return i;if(n)return n;if(s)return s}function kZ(o){if($N(o)&&(o=o.substr(1)),o.length>0)for(let e=vg.length-1;e>=0;e--){const t=vg[e];if(!t.firstline)continue;const i=o.match(t.firstline);if(i&&i.length>0)return t}}const zb=Object.prototype.hasOwnProperty,aP="vs.editor.nullLanguage";class DZ{constructor(){this._languageIdToLanguage=[],this._languageToLanguageId=new Map,this._register(aP,0),this._register(Bs,1),this._nextLanguageId=2}_register(e,t){this._languageIdToLanguage[t]=e,this._languageToLanguageId.set(e,t)}register(e){if(this._languageToLanguageId.has(e))return;const t=this._nextLanguageId++;this._register(e,t)}encodeLanguageId(e){return this._languageToLanguageId.get(e)||0}decodeLanguageId(e){return this._languageIdToLanguage[e]||aP}}const Ep=class Ep extends z{constructor(e=!0,t=!1){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,Ep.instanceCount++,this._warnOnOverwrite=t,this.languageIdCodec=new DZ,this._dynamicLanguages=[],this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},e&&(this._initializeFromRegistry(),this._register(lg.onDidChangeLanguages(i=>{this._initializeFromRegistry()})))}dispose(){Ep.instanceCount--,super.dispose()}_initializeFromRegistry(){this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},SZ();const e=[].concat(lg.getLanguages()).concat(this._dynamicLanguages);this._registerLanguages(e)}_registerLanguages(e){for(const t of e)this._registerLanguage(t);this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Object.keys(this._languages).forEach(t=>{const i=this._languages[t];i.name&&(this._nameMap[i.name]=i.identifier),i.aliases.forEach(n=>{this._lowercaseNameMap[n.toLowerCase()]=i.identifier}),i.mimetypes.forEach(n=>{this._mimeTypesMap[n]=i.identifier})}),Bi.as(su.Configuration).registerOverrideIdentifiers(this.getRegisteredLanguageIds()),this._onDidChange.fire()}_registerLanguage(e){const t=e.id;let i;zb.call(this._languages,t)?i=this._languages[t]:(this.languageIdCodec.register(t),i={identifier:t,name:null,mimetypes:[],aliases:[],extensions:[],filenames:[],configurationFiles:[],icons:[]},this._languages[t]=i),this._mergeLanguage(i,e)}_mergeLanguage(e,t){const i=t.id;let n=null;if(Array.isArray(t.mimetypes)&&t.mimetypes.length>0&&(e.mimetypes.push(...t.mimetypes),n=t.mimetypes[0]),n||(n=`text/x-${i}`,e.mimetypes.push(n)),Array.isArray(t.extensions)){t.configuration?e.extensions=t.extensions.concat(e.extensions):e.extensions=e.extensions.concat(t.extensions);for(const a of t.extensions)Vb({id:i,mime:n,extension:a},this._warnOnOverwrite)}if(Array.isArray(t.filenames))for(const a of t.filenames)Vb({id:i,mime:n,filename:a},this._warnOnOverwrite),e.filenames.push(a);if(Array.isArray(t.filenamePatterns))for(const a of t.filenamePatterns)Vb({id:i,mime:n,filepattern:a},this._warnOnOverwrite);if(typeof t.firstLine=="string"&&t.firstLine.length>0){let a=t.firstLine;a.charAt(0)!=="^"&&(a="^"+a);try{const l=new RegExp(a);cH(l)||Vb({id:i,mime:n,firstline:l},this._warnOnOverwrite)}catch(l){console.warn(`[${t.id}]: Invalid regular expression \`${a}\`: `,l)}}e.aliases.push(i);let s=null;if(typeof t.aliases<"u"&&Array.isArray(t.aliases)&&(t.aliases.length===0?s=[null]:s=t.aliases),s!==null)for(const a of s)!a||a.length===0||e.aliases.push(a);const r=s!==null&&s.length>0;if(!(r&&s[0]===null)){const a=(r?s[0]:null)||i;(r||!e.name)&&(e.name=a)}t.configuration&&e.configurationFiles.push(t.configuration),t.icon&&e.icons.push(t.icon)}isRegisteredLanguageId(e){return e?zb.call(this._languages,e):!1}getRegisteredLanguageIds(){return Object.keys(this._languages)}getLanguageIdByLanguageName(e){const t=e.toLowerCase();return zb.call(this._lowercaseNameMap,t)?this._lowercaseNameMap[t]:null}getLanguageIdByMimeType(e){return e&&zb.call(this._mimeTypesMap,e)?this._mimeTypesMap[e]:null}guessLanguageIdByFilepathOrFirstLine(e,t){return!e&&!t?[]:LZ(e,t)}};Ep.instanceCount=0;let Qk=Ep;const ho=(o,e)=>o===e;function Xk(o=ho){return(e,t)=>li(e,t,o)}function IZ(){return(o,e)=>o.equals(e)}function Jk(o,e,t){if(t!==void 0){const i=o;return i==null||e===void 0||e===null?e===i:t(i,e)}else{const i=o;return(n,s)=>n==null||s===void 0||s===null?s===n:i(n,s)}}class gn{constructor(e,t,i){this.owner=e,this.debugNameSource=t,this.referenceFn=i}getDebugName(e){return EZ(e,this)}}const lP=new Map,eD=new WeakMap;function EZ(o,e){const t=eD.get(o);if(t)return t;const i=NZ(o,e);if(i){let n=lP.get(i)??0;n++,lP.set(i,n);const s=n===1?i:`${i}#${n}`;return eD.set(o,s),s}}function NZ(o,e){const t=eD.get(o);if(t)return t;const i=e.owner?MZ(e.owner)+".":"";let n;const s=e.debugNameSource;if(s!==void 0)if(typeof s=="function"){if(n=s(),n!==void 0)return i+n}else return i+s;const r=e.referenceFn;if(r!==void 0&&(n=qT(r),n!==void 0))return i+n;if(e.owner!==void 0){const a=TZ(e.owner,o);if(a!==void 0)return i+a}}function TZ(o,e){for(const t in o)if(o[t]===e)return t}const cP=new Map,dP=new WeakMap;function MZ(o){const e=dP.get(o);if(e)return e;const t=RZ(o);let i=cP.get(t)??0;i++,cP.set(t,i);const n=i===1?t:`${t}#${i}`;return dP.set(o,n),n}function RZ(o){const e=o.constructor;return e?e.name:"Object"}function qT(o){const e=o.toString(),i=/\/\*\*\s*@description\s*([^*]*)\*\//.exec(e);return(i?i[1]:void 0)?.trim()}let AZ;function w7(){return AZ}let y7;function PZ(o){y7=o}let S7;function OZ(o){S7=o}let tD;function FZ(o){tD=o}class L7{get TChange(){return null}reportChanges(){this.get()}read(e){return e?e.readObservable(this):this.get()}map(e,t){const i=t===void 0?void 0:e,n=t===void 0?e:t;return tD({owner:i,debugName:()=>{const s=qT(n);if(s!==void 0)return s;const a=/^\s*\(?\s*([a-zA-Z_$][a-zA-Z_$0-9]*)\s*\)?\s*=>\s*\1(?:\??)\.([a-zA-Z_$][a-zA-Z_$0-9]*)\s*$/.exec(n.toString());if(a)return`${this.debugName}.${a[2]}`;if(!i)return`${this.debugName} (mapped)`},debugReferenceFn:n},s=>n(this.read(s),s))}flatten(){return tD({owner:void 0,debugName:()=>`${this.debugName} (flattened)`},e=>this.read(e).read(e))}recomputeInitiallyAndOnChange(e,t){return e.add(y7(this,t)),this}keepObserved(e){return e.add(S7(this)),this}}class zg extends L7{constructor(){super(...arguments),this.observers=new Set}addObserver(e){const t=this.observers.size;this.observers.add(e),t===0&&this.onFirstObserverAdded()}removeObserver(e){this.observers.delete(e)&&this.observers.size===0&&this.onLastObserverRemoved()}onFirstObserverAdded(){}onLastObserverRemoved(){}}function Xt(o,e){const t=new Ug(o,e);try{o(t)}finally{t.finish()}}let Ub;function Mm(o){if(Ub)o(Ub);else{const e=new Ug(o,void 0);Ub=e;try{o(e)}finally{e.finish(),Ub=void 0}}}async function BZ(o,e){const t=new Ug(o,e);try{await o(t)}finally{t.finish()}}function c_(o,e,t){o?e(o):Xt(e,t)}class Ug{constructor(e,t){this._fn=e,this._getDebugName=t,this.updatingObservers=[]}getDebugName(){return this._getDebugName?this._getDebugName():qT(this._fn)}updateObserver(e,t){this.updatingObservers.push({observer:e,observable:t}),e.beginUpdate(t)}finish(){const e=this.updatingObservers;for(let t=0;t{},()=>`Setting ${this.debugName}`));try{const s=this._value;this._setValue(e),w7()?.handleObservableChanged(this,{oldValue:s,newValue:e,change:i,didChange:!0,hadValue:!0});for(const r of this.observers)t.updateObserver(r,this),r.handleChange(this,i)}finally{n&&n.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}function KC(o,e){let t;return typeof o=="string"?t=new gn(void 0,o,void 0):t=new gn(o,void 0,void 0),new WZ(t,e,ho)}class WZ extends GT{_setValue(e){this._value!==e&&(this._value&&this._value.dispose(),this._value=e)}dispose(){this._value?.dispose()}}function Ce(o,e){return e!==void 0?new Vh(new gn(o,void 0,e),e,void 0,void 0,void 0,ho):new Vh(new gn(void 0,void 0,o),o,void 0,void 0,void 0,ho)}function ZT(o,e,t){return new VZ(new gn(o,void 0,e),e,void 0,void 0,void 0,ho,t)}function dr(o,e){return new Vh(new gn(o.owner,o.debugName,o.debugReferenceFn),e,void 0,void 0,o.onLastObserverRemoved,o.equalsFn??ho)}FZ(dr);function HZ(o,e){return new Vh(new gn(o.owner,o.debugName,void 0),e,o.createEmptyChangeSummary,o.handleChange,void 0,o.equalityComparer??ho)}function cu(o,e){let t,i;e===void 0?(t=o,i=void 0):(i=o,t=e);const n=new X;return new Vh(new gn(i,void 0,t),s=>(n.clear(),t(s,n)),void 0,void 0,()=>n.dispose(),ho)}function tr(o,e){let t,i;e===void 0?(t=o,i=void 0):(i=o,t=e);let n;return new Vh(new gn(i,void 0,t),s=>{n?n.clear():n=new X;const r=t(s);return r&&n.add(r),r},void 0,void 0,()=>{n&&(n.dispose(),n=void 0)},ho)}class Vh extends zg{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,n,s=void 0,r){super(),this._debugNameData=e,this._computeFn=t,this.createChangeSummary=i,this._handleChange=n,this._handleLastObserverRemoved=s,this._equalityComparator=r,this.state=0,this.value=void 0,this.updateCount=0,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=void 0,this.changeSummary=this.createChangeSummary?.()}onLastObserverRemoved(){this.state=0,this.value=void 0;for(const e of this.dependencies)e.removeObserver(this);this.dependencies.clear(),this._handleLastObserverRemoved?.()}get(){if(this.observers.size===0){const e=this._computeFn(this,this.createChangeSummary?.());return this.onLastObserverRemoved(),e}else{do{if(this.state===1){for(const e of this.dependencies)if(e.reportChanges(),this.state===2)break}this.state===1&&(this.state=3),this._recomputeIfNeeded()}while(this.state!==3);return this.value}}_recomputeIfNeeded(){if(this.state===3)return;const e=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=e;const t=this.state!==0,i=this.value;this.state=3;const n=this.changeSummary;this.changeSummary=this.createChangeSummary?.();try{this.value=this._computeFn(this,n)}finally{for(const r of this.dependenciesToBeRemoved)r.removeObserver(this);this.dependenciesToBeRemoved.clear()}if(t&&!this._equalityComparator(i,this.value))for(const r of this.observers)r.handleChange(this,void 0)}toString(){return`LazyDerived<${this.debugName}>`}beginUpdate(e){this.updateCount++;const t=this.updateCount===1;if(this.state===3&&(this.state=1,!t))for(const i of this.observers)i.handlePossibleChange(this);if(t)for(const i of this.observers)i.beginUpdate(this)}endUpdate(e){if(this.updateCount--,this.updateCount===0){const t=[...this.observers];for(const i of t)i.endUpdate(this)}Fh(()=>this.updateCount>=0)}handlePossibleChange(e){if(this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){this.state=1;for(const t of this.observers)t.handlePossibleChange(this)}}handleChange(e,t){if(this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){const i=this._handleChange?this._handleChange({changedObservable:e,change:t,didChange:s=>s===e},this.changeSummary):!0,n=this.state===3;if(i&&(this.state===1||n)&&(this.state=2,n))for(const s of this.observers)s.handlePossibleChange(this)}}readObservable(e){e.addObserver(this);const t=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),t}addObserver(e){const t=!this.observers.has(e)&&this.updateCount>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){const t=this.observers.has(e)&&this.updateCount>0;super.removeObserver(e),t&&e.endUpdate(this)}}class VZ extends Vh{constructor(e,t,i,n,s=void 0,r,a){super(e,t,i,n,s,r),this.set=a}}function We(o){return new ly(new gn(void 0,void 0,o),o,void 0,void 0)}function Z_(o,e){return new ly(new gn(o.owner,o.debugName,o.debugReferenceFn??e),e,void 0,void 0)}function Y_(o,e){return new ly(new gn(o.owner,o.debugName,o.debugReferenceFn??e),e,o.createEmptyChangeSummary,o.handleChange)}function zZ(o,e){const t=new X,i=Y_({owner:o.owner,debugName:o.debugName,debugReferenceFn:o.debugReferenceFn??e,createEmptyChangeSummary:o.createEmptyChangeSummary,handleChange:o.handleChange},(n,s)=>{t.clear(),e(n,s,t)});return _e(()=>{i.dispose(),t.dispose()})}function To(o){const e=new X,t=Z_({owner:void 0,debugName:void 0,debugReferenceFn:o},i=>{e.clear(),o(i,e)});return _e(()=>{t.dispose(),e.dispose()})}class ly{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,n){this._debugNameData=e,this._runFn=t,this.createChangeSummary=i,this._handleChange=n,this.state=2,this.updateCount=0,this.disposed=!1,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=this.createChangeSummary?.(),this._runIfNeeded()}dispose(){this.disposed=!0;for(const e of this.dependencies)e.removeObserver(this);this.dependencies.clear()}_runIfNeeded(){if(this.state===3)return;const e=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=e,this.state=3;const t=this.disposed;try{if(!t){w7()?.handleAutorunTriggered(this);const i=this.changeSummary;this.changeSummary=this.createChangeSummary?.(),this._runFn(this,i)}}finally{for(const i of this.dependenciesToBeRemoved)i.removeObserver(this);this.dependenciesToBeRemoved.clear()}}toString(){return`Autorun<${this.debugName}>`}beginUpdate(){this.state===3&&(this.state=1),this.updateCount++}endUpdate(){if(this.updateCount===1)do{if(this.state===1){this.state=3;for(const e of this.dependencies)if(e.reportChanges(),this.state===2)break}this._runIfNeeded()}while(this.state!==3);this.updateCount--,Fh(()=>this.updateCount>=0)}handlePossibleChange(e){this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(this.state=1)}handleChange(e,t){this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(!this._handleChange||this._handleChange({changedObservable:e,change:t,didChange:n=>n===e},this.changeSummary))&&(this.state=2)}readObservable(e){if(this.disposed)return e.get();e.addObserver(this);const t=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),t}}(function(o){o.Observer=ly})(We||(We={}));function wg(o){return new UZ(o)}class UZ extends L7{constructor(e){super(),this.value=e}get debugName(){return this.toString()}get(){return this.value}addObserver(e){}removeObserver(e){}toString(){return`Const: ${this.value}`}}function gt(...o){let e,t,i;return o.length===3?[e,t,i]=o:[t,i]=o,new of(new gn(e,void 0,i),t,i,()=>of.globalTransaction,ho)}class of extends zg{constructor(e,t,i,n,s){super(),this._debugNameData=e,this.event=t,this._getValue=i,this._getTransaction=n,this._equalityComparator=s,this.hasValue=!1,this.handleEvent=r=>{const a=this._getValue(r),l=this.value;(!this.hasValue||!this._equalityComparator(l,a))&&(this.value=a,this.hasValue&&c_(this._getTransaction(),d=>{for(const h of this.observers)d.updateObserver(h,this),h.handleChange(this,void 0)},()=>{const d=this.getDebugName();return"Event fired"+(d?`: ${d}`:"")}),this.hasValue=!0)}}getDebugName(){return this._debugNameData.getDebugName(this)}get debugName(){const e=this.getDebugName();return"From Event"+(e?`: ${e}`:"")}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0,this.hasValue=!1,this.value=void 0}get(){return this.subscription?(this.hasValue||this.handleEvent(void 0),this.value):this._getValue(void 0)}}(function(o){o.Observer=of;function e(t,i){let n=!1;of.globalTransaction===void 0&&(of.globalTransaction=t,n=!0);try{i()}finally{n&&(of.globalTransaction=void 0)}}o.batchEventsGlobally=e})(gt||(gt={}));function ks(o,e){return new $Z(o,e)}class $Z extends zg{constructor(e,t){super(),this.debugName=e,this.event=t,this.handleEvent=()=>{Xt(i=>{for(const n of this.observers)i.updateObserver(n,this),n.handleChange(this,void 0)},()=>this.debugName)}}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0}get(){}}function Q_(o){return typeof o=="string"?new hP(o):new hP(void 0,o)}class hP extends zg{get debugName(){return new gn(this._owner,this._debugName,void 0).getDebugName(this)??"Observable Signal"}toString(){return this.debugName}constructor(e,t){super(),this._debugName=e,this._owner=t}trigger(e,t){if(!e){Xt(i=>{this.trigger(i,t)},()=>`Trigger signal ${this.debugName}`);return}for(const i of this.observers)e.updateObserver(i,this),i.handleChange(this,t)}get(){}}function KZ(o){const e=new x7(!1,void 0);return o.addObserver(e),_e(()=>{o.removeObserver(e)})}OZ(KZ);function X_(o,e){const t=new x7(!0,e);return o.addObserver(t),e?e(o.get()):o.reportChanges(),_e(()=>{o.removeObserver(t)})}PZ(X_);class x7{constructor(e,t){this._forceRecompute=e,this._handleValue=t,this._counter=0}beginUpdate(e){this._counter++}endUpdate(e){this._counter--,this._counter===0&&this._forceRecompute&&(this._handleValue?this._handleValue(e.get()):e.reportChanges())}handlePossibleChange(e){}handleChange(e,t){}}function YT(o,e){let t;return dr({owner:o,debugReferenceFn:e},n=>(t=e(n,t),t))}function jZ(o,e,t,i){let n=new uP(t,i);return dr({debugReferenceFn:t,owner:o,onLastObserverRemoved:()=>{n.dispose(),n=new uP(t)}},r=>(n.setItems(e.read(r)),n.getItems()))}class uP{constructor(e,t){this._map=e,this._keySelector=t,this._cache=new Map,this._items=[]}dispose(){this._cache.forEach(e=>e.store.dispose()),this._cache.clear()}setItems(e){const t=[],i=new Set(this._cache.keys());for(const n of e){const s=this._keySelector?this._keySelector(n):n;let r=this._cache.get(s);if(r)i.delete(s);else{const a=new X;r={out:this._map(n,a),store:a},this._cache.set(s,r)}t.push(r.out)}for(const n of i)this._cache.get(n).store.dispose(),this._cache.delete(n);this._items=t}getItems(){return this._items}}function qZ(o,e){return YT(o,(t,i)=>i??e(t))}function k7(o,e,t,i){return e||(e=n=>n!=null),new Promise((n,s)=>{let r=!0,a=!1;const l=o.map(d=>({isFinished:e(d),error:t?t(d):!1,state:d})),c=We(d=>{const{isFinished:h,error:u,state:f}=l.read(d);(h||u)&&(r?a=!0:c.dispose(),u?s(u===!0?f:u):n(f))});if(i){const d=i.onCancellationRequested(()=>{c.dispose(),d.dispose(),s(new ha)});if(i.isCancellationRequested){c.dispose(),d.dispose(),s(new ha);return}}r=!1,a&&c.dispose()})}class GZ extends zg{get debugName(){return this._debugNameData.getDebugName(this)??"LazyObservableValue"}constructor(e,t,i){super(),this._debugNameData=e,this._equalityComparator=i,this._isUpToDate=!0,this._deltas=[],this._updateCounter=0,this._value=t}get(){return this._update(),this._value}_update(){if(!this._isUpToDate)if(this._isUpToDate=!0,this._deltas.length>0){for(const e of this.observers)for(const t of this._deltas)e.handleChange(this,t);this._deltas.length=0}else for(const e of this.observers)e.handleChange(this,void 0)}_beginUpdate(){if(this._updateCounter++,this._updateCounter===1)for(const e of this.observers)e.beginUpdate(this)}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){this._update();const e=[...this.observers];for(const t of e)t.endUpdate(this)}}addObserver(e){const t=!this.observers.has(e)&&this._updateCounter>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){const t=this.observers.has(e)&&this._updateCounter>0;super.removeObserver(e),t&&e.endUpdate(this)}set(e,t,i){if(i===void 0&&this._equalityComparator(this._value,e))return;let n;t||(t=n=new Ug(()=>{},()=>`Setting ${this.debugName}`));try{if(this._isUpToDate=!1,this._setValue(e),i!==void 0&&this._deltas.push(i),t.updateObserver({beginUpdate:()=>this._beginUpdate(),endUpdate:()=>this._endUpdate(),handleChange:(s,r)=>{},handlePossibleChange:s=>{}},this),this._updateCounter>1)for(const s of this.observers)s.handlePossibleChange(this)}finally{n&&n.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}function iD(o,e){return o.lazy?new GZ(new gn(o.owner,o.debugName,void 0),e,o.equalsFn??ho):new GT(new gn(o.owner,o.debugName,void 0),e,o.equalsFn??ho)}const Np=class Np extends z{constructor(e=!1){super(),this._onDidRequestBasicLanguageFeatures=this._register(new A),this.onDidRequestBasicLanguageFeatures=this._onDidRequestBasicLanguageFeatures.event,this._onDidRequestRichLanguageFeatures=this._register(new A),this.onDidRequestRichLanguageFeatures=this._onDidRequestRichLanguageFeatures.event,this._onDidChange=this._register(new A({leakWarningThreshold:200})),this.onDidChange=this._onDidChange.event,this._requestedBasicLanguages=new Set,this._requestedRichLanguages=new Set,Np.instanceCount++,this._registry=this._register(new Qk(!0,e)),this.languageIdCodec=this._registry.languageIdCodec,this._register(this._registry.onDidChange(()=>this._onDidChange.fire()))}dispose(){Np.instanceCount--,super.dispose()}isRegisteredLanguageId(e){return this._registry.isRegisteredLanguageId(e)}getLanguageIdByLanguageName(e){return this._registry.getLanguageIdByLanguageName(e)}getLanguageIdByMimeType(e){return this._registry.getLanguageIdByMimeType(e)}guessLanguageIdByFilepathOrFirstLine(e,t){const i=this._registry.guessLanguageIdByFilepathOrFirstLine(e,t);return xN(i,null)}createById(e){return new fP(this.onDidChange,()=>this._createAndGetLanguageIdentifier(e))}createByFilepathOrFirstLine(e,t){return new fP(this.onDidChange,()=>{const i=this.guessLanguageIdByFilepathOrFirstLine(e,t);return this._createAndGetLanguageIdentifier(i)})}_createAndGetLanguageIdentifier(e){return(!e||!this.isRegisteredLanguageId(e))&&(e=Bs),e}requestBasicLanguageFeatures(e){this._requestedBasicLanguages.has(e)||(this._requestedBasicLanguages.add(e),this._onDidRequestBasicLanguageFeatures.fire(e))}requestRichLanguageFeatures(e){this._requestedRichLanguages.has(e)||(this._requestedRichLanguages.add(e),this.requestBasicLanguageFeatures(e),si.getOrCreate(e),this._onDidRequestRichLanguageFeatures.fire(e))}};Np.instanceCount=0;let nD=Np;class fP{constructor(e,t){this._value=gt(this,e,()=>t()),this.onDidChange=J.fromObservable(this._value)}get languageId(){return this._value.get()}}const D7={TEXT:il.text},ZZ=()=>({get delay(){return-1},dispose:()=>{},showHover:()=>{}});let cy=ZZ;const YZ=new ua(()=>cy("mouse",!1)),QZ=new ua(()=>cy("element",!1));function XZ(o){cy=o}function Ks(o){return o==="element"?QZ.value:YZ.value}function QT(){return cy("element",!0)}let I7={showHover:()=>{},hideHover:()=>{},showAndFocusLastHover:()=>{},setupManagedHover:()=>null,showManagedHover:()=>{}};function JZ(o){I7=o}function La(){return I7}class eY{constructor(e){this.spliceables=e}splice(e,t,i){this.spliceables.forEach(n=>n.splice(e,t,i))}}class id extends Error{constructor(e,t){super(`ListError [${e}] ${t}`)}}function gP(o,e){const t=[];for(const i of e){if(o.start>=i.range.end)continue;if(o.ende.concat(t),[]))}class nY{get paddingTop(){return this._paddingTop}set paddingTop(e){this._size=this._size+e-this._paddingTop,this._paddingTop=e}constructor(e){this.groups=[],this._size=0,this._paddingTop=0,this._paddingTop=e??0,this._size=this._paddingTop}splice(e,t,i=[]){const n=i.length-t,s=gP({start:0,end:e},this.groups),r=gP({start:e+t,end:Number.POSITIVE_INFINITY},this.groups).map(l=>({range:sD(l.range,n),size:l.size})),a=i.map((l,c)=>({range:{start:e+c,end:e+c+1},size:l.size}));this.groups=iY(s,a,r),this._size=this._paddingTop+this.groups.reduce((l,c)=>l+c.size*(c.range.end-c.range.start),0)}get count(){const e=this.groups.length;return e?this.groups[e-1].range.end:0}get size(){return this._size}indexAt(e){if(e<0)return-1;if(e{for(const i of e)this.getRenderer(t).disposeTemplate(i.templateData),i.templateData=null}),this.cache.clear(),this.transactionNodesPendingRemoval.clear()}getRenderer(e){const t=this.renderers.get(e);if(!t)throw new Error(`No renderer found for ${e}`);return t}}var Ml=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};const nd={CurrentDragAndDropData:void 0},Tr={useShadows:!0,verticalScrollMode:1,setRowLineHeight:!0,setRowHeight:!0,supportDynamicHeights:!1,dnd:{getDragElements(o){return[o]},getDragURI(){return null},onDragStart(){},onDragOver(){return!1},drop(){},dispose(){}},horizontalScrolling:!1,transformOptimization:!0,alwaysConsumeMouseWheel:!0};class J_{constructor(e){this.elements=e}update(){}getData(){return this.elements}}class oY{constructor(e){this.elements=e}update(){}getData(){return this.elements}}class rY{constructor(){this.types=[],this.files=[]}update(e){if(e.types&&this.types.splice(0,this.types.length,...e.types),e.files){this.files.splice(0,this.files.length);for(let t=0;tn,e?.getPosInSet?this.getPosInSet=e.getPosInSet.bind(e):this.getPosInSet=(t,i)=>i+1,e?.getRole?this.getRole=e.getRole.bind(e):this.getRole=t=>"listitem",e?.isChecked?this.isChecked=e.isChecked.bind(e):this.isChecked=t=>{}}}const Rw=class Rw{get contentHeight(){return this.rangeMap.size}get onDidScroll(){return this.scrollableElement.onScroll}get scrollableElementDomNode(){return this.scrollableElement.getDomNode()}get horizontalScrolling(){return this._horizontalScrolling}set horizontalScrolling(e){if(e!==this._horizontalScrolling){if(e&&this.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");if(this._horizontalScrolling=e,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this._horizontalScrolling){for(const t of this.items)this.measureItemWidth(t);this.updateScrollWidth(),this.scrollableElement.setScrollDimensions({width:oS(this.domNode)}),this.rowsContainer.style.width=`${Math.max(this.scrollWidth||0,this.renderWidth)}px`}else this.scrollableElementWidthDelayer.cancel(),this.scrollableElement.setScrollDimensions({width:this.renderWidth,scrollWidth:this.renderWidth}),this.rowsContainer.style.width=""}}constructor(e,t,i,n=Tr){if(this.virtualDelegate=t,this.domId=`list_id_${++Rw.InstanceCount}`,this.renderers=new Map,this.renderWidth=0,this._scrollHeight=0,this.scrollableElementUpdateDisposable=null,this.scrollableElementWidthDelayer=new z_(50),this.splicing=!1,this.dragOverAnimationStopDisposable=z.None,this.dragOverMouseY=0,this.canDrop=!1,this.currentDragFeedbackDisposable=z.None,this.onDragLeaveTimeout=z.None,this.disposables=new X,this._onDidChangeContentHeight=new A,this._onDidChangeContentWidth=new A,this.onDidChangeContentHeight=J.latch(this._onDidChangeContentHeight.event,void 0,this.disposables),this._horizontalScrolling=!1,n.horizontalScrolling&&n.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");this.items=[],this.itemId=0,this.rangeMap=this.createRangeMap(n.paddingTop??0);for(const r of i)this.renderers.set(r.templateId,r);this.cache=this.disposables.add(new sY(this.renderers)),this.lastRenderTop=0,this.lastRenderHeight=0,this.domNode=document.createElement("div"),this.domNode.className="monaco-list",this.domNode.classList.add(this.domId),this.domNode.tabIndex=0,this.domNode.classList.toggle("mouse-support",typeof n.mouseSupport=="boolean"?n.mouseSupport:!0),this._horizontalScrolling=n.horizontalScrolling??Tr.horizontalScrolling,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this.paddingBottom=typeof n.paddingBottom>"u"?0:n.paddingBottom,this.accessibilityProvider=new lY(n.accessibilityProvider),this.rowsContainer=document.createElement("div"),this.rowsContainer.className="monaco-list-rows",(n.transformOptimization??Tr.transformOptimization)&&(this.rowsContainer.style.transform="translate3d(0px, 0px, 0px)",this.rowsContainer.style.overflow="hidden",this.rowsContainer.style.contain="strict"),this.disposables.add(fn.addTarget(this.rowsContainer)),this.scrollable=this.disposables.add(new Vg({forceIntegerValues:!0,smoothScrollDuration:n.smoothScrolling??!1?125:0,scheduleAtNextAnimationFrame:r=>fs(fe(this.domNode),r)})),this.scrollableElement=this.disposables.add(new X0(this.rowsContainer,{alwaysConsumeMouseWheel:n.alwaysConsumeMouseWheel??Tr.alwaysConsumeMouseWheel,horizontal:1,vertical:n.verticalScrollMode??Tr.verticalScrollMode,useShadows:n.useShadows??Tr.useShadows,mouseWheelScrollSensitivity:n.mouseWheelScrollSensitivity,fastScrollSensitivity:n.fastScrollSensitivity,scrollByPage:n.scrollByPage},this.scrollable)),this.domNode.appendChild(this.scrollableElement.getDomNode()),e.appendChild(this.domNode),this.scrollableElement.onScroll(this.onScroll,this,this.disposables),this.disposables.add(U(this.rowsContainer,St.Change,r=>this.onTouchChange(r))),this.disposables.add(U(this.scrollableElement.getDomNode(),"scroll",r=>r.target.scrollTop=0)),this.disposables.add(U(this.domNode,"dragover",r=>this.onDragOver(this.toDragEvent(r)))),this.disposables.add(U(this.domNode,"drop",r=>this.onDrop(this.toDragEvent(r)))),this.disposables.add(U(this.domNode,"dragleave",r=>this.onDragLeave(this.toDragEvent(r)))),this.disposables.add(U(this.domNode,"dragend",r=>this.onDragEnd(r))),this.setRowLineHeight=n.setRowLineHeight??Tr.setRowLineHeight,this.setRowHeight=n.setRowHeight??Tr.setRowHeight,this.supportDynamicHeights=n.supportDynamicHeights??Tr.supportDynamicHeights,this.dnd=n.dnd??this.disposables.add(Tr.dnd),this.layout(n.initialSize?.height,n.initialSize?.width)}updateOptions(e){e.paddingBottom!==void 0&&(this.paddingBottom=e.paddingBottom,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),e.smoothScrolling!==void 0&&this.scrollable.setSmoothScrollDuration(e.smoothScrolling?125:0),e.horizontalScrolling!==void 0&&(this.horizontalScrolling=e.horizontalScrolling);let t;if(e.scrollByPage!==void 0&&(t={...t??{},scrollByPage:e.scrollByPage}),e.mouseWheelScrollSensitivity!==void 0&&(t={...t??{},mouseWheelScrollSensitivity:e.mouseWheelScrollSensitivity}),e.fastScrollSensitivity!==void 0&&(t={...t??{},fastScrollSensitivity:e.fastScrollSensitivity}),t&&this.scrollableElement.updateOptions(t),e.paddingTop!==void 0&&e.paddingTop!==this.rangeMap.paddingTop){const i=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),n=e.paddingTop-this.rangeMap.paddingTop;this.rangeMap.paddingTop=e.paddingTop,this.render(i,Math.max(0,this.lastRenderTop+n),this.lastRenderHeight,void 0,void 0,!0),this.setScrollTop(this.lastRenderTop),this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.lastRenderTop,this.lastRenderHeight)}}createRangeMap(e){return new nY(e)}splice(e,t,i=[]){if(this.splicing)throw new Error("Can't run recursive splices.");this.splicing=!0;try{return this._splice(e,t,i)}finally{this.splicing=!1,this._onDidChangeContentHeight.fire(this.contentHeight)}}_splice(e,t,i=[]){const n=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),s={start:e,end:e+t},r=Yi.intersect(n,s),a=new Map;for(let y=r.end-1;y>=r.start;y--){const x=this.items[y];if(x.dragStartDisposable.dispose(),x.checkedDisposable.dispose(),x.row){let L=a.get(x.templateId);L||(L=[],a.set(x.templateId,L));const E=this.renderers.get(x.templateId);E&&E.disposeElement&&E.disposeElement(x.element,y,x.row.templateData,x.size),L.unshift(x.row)}x.row=null,x.stale=!0}const l={start:e+t,end:this.items.length},c=Yi.intersect(l,n),d=Yi.relativeComplement(l,n),h=i.map(y=>({id:String(this.itemId++),element:y,templateId:this.virtualDelegate.getTemplateId(y),size:this.virtualDelegate.getHeight(y),width:void 0,hasDynamicHeight:!!this.virtualDelegate.hasDynamicHeight&&this.virtualDelegate.hasDynamicHeight(y),lastDynamicHeightWidth:void 0,row:null,uri:void 0,dropTarget:!1,dragStartDisposable:z.None,checkedDisposable:z.None,stale:!1}));let u;e===0&&t>=this.items.length?(this.rangeMap=this.createRangeMap(this.rangeMap.paddingTop),this.rangeMap.splice(0,0,h),u=this.items,this.items=h):(this.rangeMap.splice(e,t,h),u=this.items.splice(e,t,...h));const f=i.length-t,g=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),p=sD(c,f),_=Yi.intersect(g,p);for(let y=_.start;y<_.end;y++)this.updateItemInDOM(this.items[y],y);const b=Yi.relativeComplement(p,g);for(const y of b)for(let x=y.start;xsD(y,f)),v=[{start:e,end:e+i.length},...C].map(y=>Yi.intersect(g,y)).reverse();for(const y of v)for(let x=y.end-1;x>=y.start;x--){const L=this.items[x],N=a.get(L.templateId)?.pop();this.insertItemInDOM(x,N)}for(const y of a.values())for(const x of y)this.cache.release(x);return this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight),u.map(y=>y.element)}eventuallyUpdateScrollDimensions(){this._scrollHeight=this.contentHeight,this.rowsContainer.style.height=`${this._scrollHeight}px`,this.scrollableElementUpdateDisposable||(this.scrollableElementUpdateDisposable=fs(fe(this.domNode),()=>{this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight}),this.updateScrollWidth(),this.scrollableElementUpdateDisposable=null}))}eventuallyUpdateScrollWidth(){if(!this.horizontalScrolling){this.scrollableElementWidthDelayer.cancel();return}this.scrollableElementWidthDelayer.trigger(()=>this.updateScrollWidth())}updateScrollWidth(){if(!this.horizontalScrolling)return;let e=0;for(const t of this.items)typeof t.width<"u"&&(e=Math.max(e,t.width));this.scrollWidth=e,this.scrollableElement.setScrollDimensions({scrollWidth:e===0?0:e+10}),this._onDidChangeContentWidth.fire(this.scrollWidth)}rerender(){if(this.supportDynamicHeights){for(const e of this.items)e.lastDynamicHeightWidth=void 0;this._rerender(this.lastRenderTop,this.lastRenderHeight)}}get length(){return this.items.length}get renderHeight(){return this.scrollableElement.getScrollDimensions().height}get firstVisibleIndex(){return this.getRenderRange(this.lastRenderTop,this.lastRenderHeight).start}element(e){return this.items[e].element}indexOf(e){return this.items.findIndex(t=>t.element===e)}domElement(e){const t=this.items[e].row;return t&&t.domNode}elementHeight(e){return this.items[e].size}elementTop(e){return this.rangeMap.positionAt(e)}indexAt(e){return this.rangeMap.indexAt(e)}indexAfter(e){return this.rangeMap.indexAfter(e)}layout(e,t){const i={height:typeof e=="number"?e:CV(this.domNode)};this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,i.scrollHeight=this.scrollHeight),this.scrollableElement.setScrollDimensions(i),typeof t<"u"&&(this.renderWidth=t,this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight)),this.horizontalScrolling&&this.scrollableElement.setScrollDimensions({width:typeof t=="number"?t:oS(this.domNode)})}render(e,t,i,n,s,r=!1){const a=this.getRenderRange(t,i),l=Yi.relativeComplement(a,e).reverse(),c=Yi.relativeComplement(e,a);if(r){const d=Yi.intersect(e,a);for(let h=d.start;h{for(const d of c)for(let h=d.start;h=d.start;h--)this.insertItemInDOM(h)}),n!==void 0&&(this.rowsContainer.style.left=`-${n}px`),this.rowsContainer.style.top=`-${t}px`,this.horizontalScrolling&&s!==void 0&&(this.rowsContainer.style.width=`${Math.max(s,this.renderWidth)}px`),this.lastRenderTop=t,this.lastRenderHeight=i}insertItemInDOM(e,t){const i=this.items[e];if(!i.row)if(t)i.row=t,i.stale=!0;else{const l=this.cache.alloc(i.templateId);i.row=l.row,i.stale||=l.isReusingConnectedDomNode}const n=this.accessibilityProvider.getRole(i.element)||"listitem";i.row.domNode.setAttribute("role",n);const s=this.accessibilityProvider.isChecked(i.element);if(typeof s=="boolean")i.row.domNode.setAttribute("aria-checked",String(!!s));else if(s){const l=c=>i.row.domNode.setAttribute("aria-checked",String(!!c));l(s.value),i.checkedDisposable=s.onDidChange(()=>l(s.value))}if(i.stale||!i.row.domNode.parentElement){const l=this.items.at(e+1)?.row?.domNode??null;(i.row.domNode.parentElement!==this.rowsContainer||i.row.domNode.nextElementSibling!==l)&&this.rowsContainer.insertBefore(i.row.domNode,l),i.stale=!1}this.updateItemInDOM(i,e);const r=this.renderers.get(i.templateId);if(!r)throw new Error(`No renderer found for template id ${i.templateId}`);r?.renderElement(i.element,e,i.row.templateData,i.size);const a=this.dnd.getDragURI(i.element);i.dragStartDisposable.dispose(),i.row.domNode.draggable=!!a,a&&(i.dragStartDisposable=U(i.row.domNode,"dragstart",l=>this.onDragStart(i.element,a,l))),this.horizontalScrolling&&(this.measureItemWidth(i),this.eventuallyUpdateScrollWidth())}measureItemWidth(e){if(!e.row||!e.row.domNode)return;e.row.domNode.style.width="fit-content",e.width=oS(e.row.domNode);const t=fe(e.row.domNode).getComputedStyle(e.row.domNode);t.paddingLeft&&(e.width+=parseFloat(t.paddingLeft)),t.paddingRight&&(e.width+=parseFloat(t.paddingRight)),e.row.domNode.style.width=""}updateItemInDOM(e,t){e.row.domNode.style.top=`${this.elementTop(t)}px`,this.setRowHeight&&(e.row.domNode.style.height=`${e.size}px`),this.setRowLineHeight&&(e.row.domNode.style.lineHeight=`${e.size}px`),e.row.domNode.setAttribute("data-index",`${t}`),e.row.domNode.setAttribute("data-last-element",t===this.length-1?"true":"false"),e.row.domNode.setAttribute("data-parity",t%2===0?"even":"odd"),e.row.domNode.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(e.element,t,this.length))),e.row.domNode.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(e.element,t))),e.row.domNode.setAttribute("id",this.getElementDomId(t)),e.row.domNode.classList.toggle("drop-target",e.dropTarget)}removeItemFromDOM(e){const t=this.items[e];if(t.dragStartDisposable.dispose(),t.checkedDisposable.dispose(),t.row){const i=this.renderers.get(t.templateId);i&&i.disposeElement&&i.disposeElement(t.element,e,t.row.templateData,t.size),this.cache.release(t.row),t.row=null}this.horizontalScrolling&&this.eventuallyUpdateScrollWidth()}getScrollTop(){return this.scrollableElement.getScrollPosition().scrollTop}setScrollTop(e,t){this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),this.scrollableElement.setScrollPosition({scrollTop:e,reuseAnimation:t})}get scrollTop(){return this.getScrollTop()}set scrollTop(e){this.setScrollTop(e)}get scrollHeight(){return this._scrollHeight+(this.horizontalScrolling?10:0)+this.paddingBottom}get onMouseClick(){return J.map(this.disposables.add(new ze(this.domNode,"click")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseDblClick(){return J.map(this.disposables.add(new ze(this.domNode,"dblclick")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseMiddleClick(){return J.filter(J.map(this.disposables.add(new ze(this.domNode,"auxclick")).event,e=>this.toMouseEvent(e),this.disposables),e=>e.browserEvent.button===1,this.disposables)}get onMouseDown(){return J.map(this.disposables.add(new ze(this.domNode,"mousedown")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseOver(){return J.map(this.disposables.add(new ze(this.domNode,"mouseover")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseOut(){return J.map(this.disposables.add(new ze(this.domNode,"mouseout")).event,e=>this.toMouseEvent(e),this.disposables)}get onContextMenu(){return J.any(J.map(this.disposables.add(new ze(this.domNode,"contextmenu")).event,e=>this.toMouseEvent(e),this.disposables),J.map(this.disposables.add(new ze(this.domNode,St.Contextmenu)).event,e=>this.toGestureEvent(e),this.disposables))}get onTouchStart(){return J.map(this.disposables.add(new ze(this.domNode,"touchstart")).event,e=>this.toTouchEvent(e),this.disposables)}get onTap(){return J.map(this.disposables.add(new ze(this.rowsContainer,St.Tap)).event,e=>this.toGestureEvent(e),this.disposables)}toMouseEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element;return{browserEvent:e,index:t,element:n}}toTouchEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element;return{browserEvent:e,index:t,element:n}}toGestureEvent(e){const t=this.getItemIndexFromEventTarget(e.initialTarget||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element;return{browserEvent:e,index:t,element:n}}toDragEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element,s=this.getTargetSector(e,t);return{browserEvent:e,index:t,element:n,sector:s}}onScroll(e){try{const t=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight);this.render(t,e.scrollTop,e.height,e.scrollLeft,e.scrollWidth),this.supportDynamicHeights&&this._rerender(e.scrollTop,e.height,e.inSmoothScrolling)}catch(t){throw console.error("Got bad scroll event:",e),t}}onTouchChange(e){e.preventDefault(),e.stopPropagation(),this.scrollTop-=e.translationY}onDragStart(e,t,i){if(!i.dataTransfer)return;const n=this.dnd.getDragElements(e);if(i.dataTransfer.effectAllowed="copyMove",i.dataTransfer.setData(D7.TEXT,t),i.dataTransfer.setDragImage){let s;this.dnd.getDragLabel&&(s=this.dnd.getDragLabel(n,i)),typeof s>"u"&&(s=String(n.length));const r=ce(".monaco-drag-image");r.textContent=s,(c=>{for(;c&&!c.classList.contains("monaco-workbench");)c=c.parentElement;return c||this.domNode.ownerDocument})(this.domNode).appendChild(r),i.dataTransfer.setDragImage(r,-10,-10),setTimeout(()=>r.remove(),0)}this.domNode.classList.add("dragging"),this.currentDragData=new J_(n),nd.CurrentDragAndDropData=new oY(n),this.dnd.onDragStart?.(this.currentDragData,i)}onDragOver(e){if(e.browserEvent.preventDefault(),this.onDragLeaveTimeout.dispose(),nd.CurrentDragAndDropData&&nd.CurrentDragAndDropData.getData()==="vscode-ui"||(this.setupDragAndDropScrollTopAnimation(e.browserEvent),!e.browserEvent.dataTransfer))return!1;if(!this.currentDragData)if(nd.CurrentDragAndDropData)this.currentDragData=nd.CurrentDragAndDropData;else{if(!e.browserEvent.dataTransfer.types)return!1;this.currentDragData=new rY}const t=this.dnd.onDragOver(this.currentDragData,e.element,e.index,e.sector,e.browserEvent);if(this.canDrop=typeof t=="boolean"?t:t.accept,!this.canDrop)return this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),!1;e.browserEvent.dataTransfer.dropEffect=typeof t!="boolean"&&t.effect?.type===0?"copy":"move";let i;typeof t!="boolean"&&t.feedback?i=t.feedback:typeof e.index>"u"?i=[-1]:i=[e.index],i=Eh(i).filter(s=>s>=-1&&ss-r),i=i[0]===-1?[-1]:i;let n=typeof t!="boolean"&&t.effect&&t.effect.position?t.effect.position:"drop-target";if(aY(this.currentDragFeedback,i)&&this.currentDragFeedbackPosition===n)return!0;if(this.currentDragFeedback=i,this.currentDragFeedbackPosition=n,this.currentDragFeedbackDisposable.dispose(),i[0]===-1)this.domNode.classList.add(n),this.rowsContainer.classList.add(n),this.currentDragFeedbackDisposable=_e(()=>{this.domNode.classList.remove(n),this.rowsContainer.classList.remove(n)});else{if(i.length>1&&n!=="drop-target")throw new Error("Can't use multiple feedbacks with position different than 'over'");n==="drop-target-after"&&i[0]{for(const s of i){const r=this.items[s];r.dropTarget=!1,r.row?.domNode.classList.remove(n)}})}return!0}onDragLeave(e){this.onDragLeaveTimeout.dispose(),this.onDragLeaveTimeout=rg(()=>this.clearDragOverFeedback(),100,this.disposables),this.currentDragData&&this.dnd.onDragLeave?.(this.currentDragData,e.element,e.index,e.browserEvent)}onDrop(e){if(!this.canDrop)return;const t=this.currentDragData;this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,nd.CurrentDragAndDropData=void 0,!(!t||!e.browserEvent.dataTransfer)&&(e.browserEvent.preventDefault(),t.update(e.browserEvent.dataTransfer),this.dnd.drop(t,e.element,e.index,e.sector,e.browserEvent))}onDragEnd(e){this.canDrop=!1,this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,nd.CurrentDragAndDropData=void 0,this.dnd.onDragEnd?.(e)}clearDragOverFeedback(){this.currentDragFeedback=void 0,this.currentDragFeedbackPosition=void 0,this.currentDragFeedbackDisposable.dispose(),this.currentDragFeedbackDisposable=z.None}setupDragAndDropScrollTopAnimation(e){if(!this.dragOverAnimationDisposable){const t=_V(this.domNode).top;this.dragOverAnimationDisposable=RV(fe(this.domNode),this.animateDragAndDropScrollTop.bind(this,t))}this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationStopDisposable=rg(()=>{this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)},1e3,this.disposables),this.dragOverMouseY=e.pageY}animateDragAndDropScrollTop(e){if(this.dragOverMouseY===void 0)return;const t=this.dragOverMouseY-e,i=this.renderHeight-35;t<35?this.scrollTop+=Math.max(-14,Math.floor(.3*(t-35))):t>i&&(this.scrollTop+=Math.min(14,Math.floor(.3*(t-i))))}teardownDragAndDropScrollTopAnimation(){this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)}getTargetSector(e,t){if(t===void 0)return;const i=e.offsetY/this.items[t].size,n=Math.floor(i/.25);return bn(n,0,3)}getItemIndexFromEventTarget(e){const t=this.scrollableElement.getDomNode();let i=e;for(;(Ei(i)||kV(i))&&i!==this.rowsContainer&&t.contains(i);){const n=i.getAttribute("data-index");if(n){const s=Number(n);if(!isNaN(s))return s}i=i.parentElement}}getRenderRange(e,t){return{start:this.rangeMap.indexAt(e),end:this.rangeMap.indexAfter(e+t-1)}}_rerender(e,t,i){const n=this.getRenderRange(e,t);let s,r;e===this.elementTop(n.start)?(s=n.start,r=0):n.end-n.start>1&&(s=n.start+1,r=this.elementTop(s)-e);let a=0;for(;;){const l=this.getRenderRange(e,t);let c=!1;for(let d=l.start;d=u.start;f--)this.insertItemInDOM(f);for(let u=l.start;u=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};class cY{constructor(e){this.trait=e,this.renderedElements=[]}get templateId(){return`template:${this.trait.name}`}renderTemplate(e){return e}renderElement(e,t,i){const n=this.renderedElements.findIndex(s=>s.templateData===i);if(n>=0){const s=this.renderedElements[n];this.trait.unrender(i),s.index=t}else{const s={index:t,templateData:i};this.renderedElements.push(s)}this.trait.renderIndex(t,i)}splice(e,t,i){const n=[];for(const s of this.renderedElements)s.index=e+t&&n.push({index:s.index+i-t,templateData:s.templateData});this.renderedElements=n}renderIndexes(e){for(const{index:t,templateData:i}of this.renderedElements)e.indexOf(t)>-1&&this.trait.renderIndex(t,i)}disposeTemplate(e){const t=this.renderedElements.findIndex(i=>i.templateData===e);t<0||this.renderedElements.splice(t,1)}}let jC=class{get name(){return this._trait}get renderer(){return new cY(this)}constructor(e){this._trait=e,this.indexes=[],this.sortedIndexes=[],this._onChange=new A,this.onChange=this._onChange.event}splice(e,t,i){const n=i.length-t,s=e+t,r=[];let a=0;for(;a=s;)r.push(this.sortedIndexes[a++]+n);this.renderer.splice(e,t,i.length),this._set(r,r)}renderIndex(e,t){t.classList.toggle(this._trait,this.contains(e))}unrender(e){e.classList.remove(this._trait)}set(e,t){return this._set(e,[...e].sort(pP),t)}_set(e,t,i){const n=this.indexes,s=this.sortedIndexes;this.indexes=e,this.sortedIndexes=t;const r=oD(s,e);return this.renderer.renderIndexes(r),this._onChange.fire({indexes:e,browserEvent:i}),n}get(){return this.indexes}contains(e){return SN(this.sortedIndexes,e,pP)>=0}dispose(){xt(this._onChange)}};Gc([Jt],jC.prototype,"renderer",null);class dY extends jC{constructor(e){super("selected"),this.setAriaSelected=e}renderIndex(e,t){super.renderIndex(e,t),this.setAriaSelected&&(this.contains(e)?t.setAttribute("aria-selected","true"):t.setAttribute("aria-selected","false"))}}class MS{constructor(e,t,i){this.trait=e,this.view=t,this.identityProvider=i}splice(e,t,i){if(!this.identityProvider)return this.trait.splice(e,t,new Array(i.length).fill(!1));const n=this.trait.get().map(a=>this.identityProvider.getId(this.view.element(a)).toString());if(n.length===0)return this.trait.splice(e,t,new Array(i.length).fill(!1));const s=new Set(n),r=i.map(a=>s.has(this.identityProvider.getId(a).toString()));this.trait.splice(e,t,r)}}function pc(o){return o.tagName==="INPUT"||o.tagName==="TEXTAREA"}function eb(o,e){return o.classList.contains(e)?!0:o.classList.contains("monaco-list")||!o.parentElement?!1:eb(o.parentElement,e)}function Rm(o){return eb(o,"monaco-editor")}function hY(o){return eb(o,"monaco-custom-toggle")}function uY(o){return eb(o,"action-item")}function Jm(o){return eb(o,"monaco-tree-sticky-row")}function d_(o){return o.classList.contains("monaco-tree-sticky-container")}function E7(o){return o.tagName==="A"&&o.classList.contains("monaco-button")||o.tagName==="DIV"&&o.classList.contains("monaco-button-dropdown")?!0:o.classList.contains("monaco-list")||!o.parentElement?!1:E7(o.parentElement)}class N7{get onKeyDown(){return J.chain(this.disposables.add(new ze(this.view.domNode,"keydown")).event,e=>e.filter(t=>!pc(t.target)).map(t=>new Nt(t)))}constructor(e,t,i){this.list=e,this.view=t,this.disposables=new X,this.multipleSelectionDisposables=new X,this.multipleSelectionSupport=i.multipleSelectionSupport,this.disposables.add(this.onKeyDown(n=>{switch(n.keyCode){case 3:return this.onEnter(n);case 16:return this.onUpArrow(n);case 18:return this.onDownArrow(n);case 11:return this.onPageUpArrow(n);case 12:return this.onPageDownArrow(n);case 9:return this.onEscape(n);case 31:this.multipleSelectionSupport&&(Ue?n.metaKey:n.ctrlKey)&&this.onCtrlA(n)}}))}updateOptions(e){e.multipleSelectionSupport!==void 0&&(this.multipleSelectionSupport=e.multipleSelectionSupport)}onEnter(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(this.list.getFocus(),e.browserEvent)}onUpArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusPrevious(1,!1,e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onDownArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusNext(1,!1,e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onPageUpArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusPreviousPage(e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onPageDownArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusNextPage(e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onCtrlA(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(Bn(this.list.length),e.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus()}onEscape(e){this.list.getSelection().length&&(e.preventDefault(),e.stopPropagation(),this.list.setSelection([],e.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus())}dispose(){this.disposables.dispose(),this.multipleSelectionDisposables.dispose()}}Gc([Jt],N7.prototype,"onKeyDown",null);var Qr;(function(o){o[o.Automatic=0]="Automatic",o[o.Trigger=1]="Trigger"})(Qr||(Qr={}));var rf;(function(o){o[o.Idle=0]="Idle",o[o.Typing=1]="Typing"})(rf||(rf={}));const fY=new class{mightProducePrintableCharacter(o){return o.ctrlKey||o.metaKey||o.altKey?!1:o.keyCode>=31&&o.keyCode<=56||o.keyCode>=21&&o.keyCode<=30||o.keyCode>=98&&o.keyCode<=107||o.keyCode>=85&&o.keyCode<=95}};class gY{constructor(e,t,i,n,s){this.list=e,this.view=t,this.keyboardNavigationLabelProvider=i,this.keyboardNavigationEventFilter=n,this.delegate=s,this.enabled=!1,this.state=rf.Idle,this.mode=Qr.Automatic,this.triggered=!1,this.previouslyFocused=-1,this.enabledDisposables=new X,this.disposables=new X,this.updateOptions(e.options)}updateOptions(e){e.typeNavigationEnabled??!0?this.enable():this.disable(),this.mode=e.typeNavigationMode??Qr.Automatic}enable(){if(this.enabled)return;let e=!1;const t=J.chain(this.enabledDisposables.add(new ze(this.view.domNode,"keydown")).event,s=>s.filter(r=>!pc(r.target)).filter(()=>this.mode===Qr.Automatic||this.triggered).map(r=>new Nt(r)).filter(r=>e||this.keyboardNavigationEventFilter(r)).filter(r=>this.delegate.mightProducePrintableCharacter(r)).forEach(r=>je.stop(r,!0)).map(r=>r.browserEvent.key)),i=J.debounce(t,()=>null,800,void 0,void 0,void 0,this.enabledDisposables);J.reduce(J.any(t,i),(s,r)=>r===null?null:(s||"")+r,void 0,this.enabledDisposables)(this.onInput,this,this.enabledDisposables),i(this.onClear,this,this.enabledDisposables),t(()=>e=!0,void 0,this.enabledDisposables),i(()=>e=!1,void 0,this.enabledDisposables),this.enabled=!0,this.triggered=!1}disable(){this.enabled&&(this.enabledDisposables.clear(),this.enabled=!1,this.triggered=!1)}onClear(){const e=this.list.getFocus();if(e.length>0&&e[0]===this.previouslyFocused){const t=this.list.options.accessibilityProvider?.getAriaLabel(this.list.element(e[0]));typeof t=="string"?El(t):t&&El(t.get())}this.previouslyFocused=-1}onInput(e){if(!e){this.state=rf.Idle,this.triggered=!1;return}const t=this.list.getFocus(),i=t.length>0?t[0]:0,n=this.state===rf.Idle?1:0;this.state=rf.Typing;for(let s=0;s1&&c.length===1){this.previouslyFocused=i,this.list.setFocus([r]),this.list.reveal(r);return}}}else if(typeof l>"u"||WC(e,l)){this.previouslyFocused=i,this.list.setFocus([r]),this.list.reveal(r);return}}}dispose(){this.disable(),this.enabledDisposables.dispose(),this.disposables.dispose()}}class mY{constructor(e,t){this.list=e,this.view=t,this.disposables=new X;const i=J.chain(this.disposables.add(new ze(t.domNode,"keydown")).event,s=>s.filter(r=>!pc(r.target)).map(r=>new Nt(r)));J.chain(i,s=>s.filter(r=>r.keyCode===2&&!r.ctrlKey&&!r.metaKey&&!r.shiftKey&&!r.altKey))(this.onTab,this,this.disposables)}onTab(e){if(e.target!==this.view.domNode)return;const t=this.list.getFocus();if(t.length===0)return;const i=this.view.domElement(t[0]);if(!i)return;const n=i.querySelector("[tabIndex]");if(!n||!Ei(n)||n.tabIndex===-1)return;const s=fe(n).getComputedStyle(n);s.visibility==="hidden"||s.display==="none"||(e.preventDefault(),e.stopPropagation(),n.focus())}dispose(){this.disposables.dispose()}}function T7(o){return Ue?o.browserEvent.metaKey:o.browserEvent.ctrlKey}function M7(o){return o.browserEvent.shiftKey}function pY(o){return tT(o)&&o.button===2}const mP={isSelectionSingleChangeEvent:T7,isSelectionRangeChangeEvent:M7};class R7{constructor(e){this.list=e,this.disposables=new X,this._onPointer=new A,this.onPointer=this._onPointer.event,e.options.multipleSelectionSupport!==!1&&(this.multipleSelectionController=this.list.options.multipleSelectionController||mP),this.mouseSupport=typeof e.options.mouseSupport>"u"||!!e.options.mouseSupport,this.mouseSupport&&(e.onMouseDown(this.onMouseDown,this,this.disposables),e.onContextMenu(this.onContextMenu,this,this.disposables),e.onMouseDblClick(this.onDoubleClick,this,this.disposables),e.onTouchStart(this.onMouseDown,this,this.disposables),this.disposables.add(fn.addTarget(e.getHTMLElement()))),J.any(e.onMouseClick,e.onMouseMiddleClick,e.onTap)(this.onViewPointer,this,this.disposables)}updateOptions(e){e.multipleSelectionSupport!==void 0&&(this.multipleSelectionController=void 0,e.multipleSelectionSupport&&(this.multipleSelectionController=this.list.options.multipleSelectionController||mP))}isSelectionSingleChangeEvent(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionSingleChangeEvent(e):!1}isSelectionRangeChangeEvent(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionRangeChangeEvent(e):!1}isSelectionChangeEvent(e){return this.isSelectionSingleChangeEvent(e)||this.isSelectionRangeChangeEvent(e)}onMouseDown(e){Rm(e.browserEvent.target)||Xi()!==e.browserEvent.target&&this.list.domFocus()}onContextMenu(e){if(pc(e.browserEvent.target)||Rm(e.browserEvent.target))return;const t=typeof e.index>"u"?[]:[e.index];this.list.setFocus(t,e.browserEvent)}onViewPointer(e){if(!this.mouseSupport||pc(e.browserEvent.target)||Rm(e.browserEvent.target)||e.browserEvent.isHandledByList)return;e.browserEvent.isHandledByList=!0;const t=e.index;if(typeof t>"u"){this.list.setFocus([],e.browserEvent),this.list.setSelection([],e.browserEvent),this.list.setAnchor(void 0);return}if(this.isSelectionChangeEvent(e))return this.changeSelection(e);this.list.setFocus([t],e.browserEvent),this.list.setAnchor(t),pY(e.browserEvent)||this.list.setSelection([t],e.browserEvent),this._onPointer.fire(e)}onDoubleClick(e){if(pc(e.browserEvent.target)||Rm(e.browserEvent.target)||this.isSelectionChangeEvent(e)||e.browserEvent.isHandledByList)return;e.browserEvent.isHandledByList=!0;const t=this.list.getFocus();this.list.setSelection(t,e.browserEvent)}changeSelection(e){const t=e.index;let i=this.list.getAnchor();if(this.isSelectionRangeChangeEvent(e)){typeof i>"u"&&(i=this.list.getFocus()[0]??t,this.list.setAnchor(i));const n=Math.min(i,t),s=Math.max(i,t),r=Bn(n,s+1),a=this.list.getSelection(),l=CY(oD(a,[i]),i);if(l.length===0)return;const c=oD(r,vY(a,l));this.list.setSelection(c,e.browserEvent),this.list.setFocus([t],e.browserEvent)}else if(this.isSelectionSingleChangeEvent(e)){const n=this.list.getSelection(),s=n.filter(r=>r!==t);this.list.setFocus([t]),this.list.setAnchor(t),n.length===s.length?this.list.setSelection([...s,t],e.browserEvent):this.list.setSelection(s,e.browserEvent)}}dispose(){this.disposables.dispose()}}class A7{constructor(e,t){this.styleElement=e,this.selectorSuffix=t}style(e){const t=this.selectorSuffix&&`.${this.selectorSuffix}`,i=[];e.listBackground&&i.push(`.monaco-list${t} .monaco-list-rows { background: ${e.listBackground}; }`),e.listFocusBackground&&(i.push(`.monaco-list${t}:focus .monaco-list-row.focused { background-color: ${e.listFocusBackground}; }`),i.push(`.monaco-list${t}:focus .monaco-list-row.focused:hover { background-color: ${e.listFocusBackground}; }`)),e.listFocusForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.focused { color: ${e.listFocusForeground}; }`),e.listActiveSelectionBackground&&(i.push(`.monaco-list${t}:focus .monaco-list-row.selected { background-color: ${e.listActiveSelectionBackground}; }`),i.push(`.monaco-list${t}:focus .monaco-list-row.selected:hover { background-color: ${e.listActiveSelectionBackground}; }`)),e.listActiveSelectionForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.selected { color: ${e.listActiveSelectionForeground}; }`),e.listActiveSelectionIconForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.selected .codicon { color: ${e.listActiveSelectionIconForeground}; }`),e.listFocusAndSelectionBackground&&i.push(` + .monaco-drag-image, + .monaco-list${t}:focus .monaco-list-row.selected.focused { background-color: ${e.listFocusAndSelectionBackground}; } + `),e.listFocusAndSelectionForeground&&i.push(` + .monaco-drag-image, + .monaco-list${t}:focus .monaco-list-row.selected.focused { color: ${e.listFocusAndSelectionForeground}; } + `),e.listInactiveFocusForeground&&(i.push(`.monaco-list${t} .monaco-list-row.focused { color: ${e.listInactiveFocusForeground}; }`),i.push(`.monaco-list${t} .monaco-list-row.focused:hover { color: ${e.listInactiveFocusForeground}; }`)),e.listInactiveSelectionIconForeground&&i.push(`.monaco-list${t} .monaco-list-row.focused .codicon { color: ${e.listInactiveSelectionIconForeground}; }`),e.listInactiveFocusBackground&&(i.push(`.monaco-list${t} .monaco-list-row.focused { background-color: ${e.listInactiveFocusBackground}; }`),i.push(`.monaco-list${t} .monaco-list-row.focused:hover { background-color: ${e.listInactiveFocusBackground}; }`)),e.listInactiveSelectionBackground&&(i.push(`.monaco-list${t} .monaco-list-row.selected { background-color: ${e.listInactiveSelectionBackground}; }`),i.push(`.monaco-list${t} .monaco-list-row.selected:hover { background-color: ${e.listInactiveSelectionBackground}; }`)),e.listInactiveSelectionForeground&&i.push(`.monaco-list${t} .monaco-list-row.selected { color: ${e.listInactiveSelectionForeground}; }`),e.listHoverBackground&&i.push(`.monaco-list${t}:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused) { background-color: ${e.listHoverBackground}; }`),e.listHoverForeground&&i.push(`.monaco-list${t}:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused) { color: ${e.listHoverForeground}; }`);const n=vl(e.listFocusAndSelectionOutline,vl(e.listSelectionOutline,e.listFocusOutline??""));n&&i.push(`.monaco-list${t}:focus .monaco-list-row.focused.selected { outline: 1px solid ${n}; outline-offset: -1px;}`),e.listFocusOutline&&i.push(` + .monaco-drag-image, + .monaco-list${t}:focus .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; } + .monaco-workbench.context-menu-visible .monaco-list${t}.last-focused .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; } + `);const s=vl(e.listSelectionOutline,e.listInactiveFocusOutline??"");s&&i.push(`.monaco-list${t} .monaco-list-row.focused.selected { outline: 1px dotted ${s}; outline-offset: -1px; }`),e.listSelectionOutline&&i.push(`.monaco-list${t} .monaco-list-row.selected { outline: 1px dotted ${e.listSelectionOutline}; outline-offset: -1px; }`),e.listInactiveFocusOutline&&i.push(`.monaco-list${t} .monaco-list-row.focused { outline: 1px dotted ${e.listInactiveFocusOutline}; outline-offset: -1px; }`),e.listHoverOutline&&i.push(`.monaco-list${t} .monaco-list-row:hover { outline: 1px dashed ${e.listHoverOutline}; outline-offset: -1px; }`),e.listDropOverBackground&&i.push(` + .monaco-list${t}.drop-target, + .monaco-list${t} .monaco-list-rows.drop-target, + .monaco-list${t} .monaco-list-row.drop-target { background-color: ${e.listDropOverBackground} !important; color: inherit !important; } + `),e.listDropBetweenBackground&&(i.push(` + .monaco-list${t} .monaco-list-rows.drop-target-before .monaco-list-row:first-child::before, + .monaco-list${t} .monaco-list-row.drop-target-before::before { + content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 1px; + background-color: ${e.listDropBetweenBackground}; + }`),i.push(` + .monaco-list${t} .monaco-list-rows.drop-target-after .monaco-list-row:last-child::after, + .monaco-list${t} .monaco-list-row.drop-target-after::after { + content: ""; position: absolute; bottom: 0px; left: 0px; width: 100%; height: 1px; + background-color: ${e.listDropBetweenBackground}; + }`)),e.tableColumnsBorder&&i.push(` + .monaco-table > .monaco-split-view2, + .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before, + .monaco-workbench:not(.reduce-motion) .monaco-table:hover > .monaco-split-view2, + .monaco-workbench:not(.reduce-motion) .monaco-table:hover > .monaco-split-view2 .monaco-sash.vertical::before { + border-color: ${e.tableColumnsBorder}; + } + + .monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2, + .monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before { + border-color: transparent; + } + `),e.tableOddRowsBackgroundColor&&i.push(` + .monaco-table .monaco-list-row[data-parity=odd]:not(.focused):not(.selected):not(:hover) .monaco-table-tr, + .monaco-table .monaco-list:not(:focus) .monaco-list-row[data-parity=odd].focused:not(.selected):not(:hover) .monaco-table-tr, + .monaco-table .monaco-list:not(.focused) .monaco-list-row[data-parity=odd].focused:not(.selected):not(:hover) .monaco-table-tr { + background-color: ${e.tableOddRowsBackgroundColor}; + } + `),this.styleElement.textContent=i.join(` +`)}}const _Y={listFocusBackground:"#7FB0D0",listActiveSelectionBackground:"#0E639C",listActiveSelectionForeground:"#FFFFFF",listActiveSelectionIconForeground:"#FFFFFF",listFocusAndSelectionOutline:"#90C2F9",listFocusAndSelectionBackground:"#094771",listFocusAndSelectionForeground:"#FFFFFF",listInactiveSelectionBackground:"#3F3F46",listInactiveSelectionIconForeground:"#FFFFFF",listHoverBackground:"#2A2D2E",listDropOverBackground:"#383B3D",listDropBetweenBackground:"#EEEEEE",treeIndentGuidesStroke:"#a9a9a9",treeInactiveIndentGuidesStroke:q.fromHex("#a9a9a9").transparent(.4).toString(),tableColumnsBorder:q.fromHex("#cccccc").transparent(.2).toString(),tableOddRowsBackgroundColor:q.fromHex("#cccccc").transparent(.04).toString(),listBackground:void 0,listFocusForeground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusForeground:void 0,listInactiveFocusBackground:void 0,listHoverForeground:void 0,listFocusOutline:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listHoverOutline:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},bY={keyboardSupport:!0,mouseSupport:!0,multipleSelectionSupport:!0,dnd:{getDragURI(){return null},onDragStart(){},onDragOver(){return!1},drop(){},dispose(){}}};function CY(o,e){const t=o.indexOf(e);if(t===-1)return[];const i=[];let n=t-1;for(;n>=0&&o[n]===e-(t-n);)i.push(o[n--]);for(i.reverse(),n=t;n=o.length)t.push(e[n++]);else if(n>=e.length)t.push(o[i++]);else if(o[i]===e[n]){t.push(o[i]),i++,n++;continue}else o[i]=o.length)t.push(e[n++]);else if(n>=e.length)t.push(o[i++]);else if(o[i]===e[n]){i++,n++;continue}else o[i]o-e;class wY{constructor(e,t){this._templateId=e,this.renderers=t}get templateId(){return this._templateId}renderTemplate(e){return this.renderers.map(t=>t.renderTemplate(e))}renderElement(e,t,i,n){let s=0;for(const r of this.renderers)r.renderElement(e,t,i[s++],n)}disposeElement(e,t,i,n){let s=0;for(const r of this.renderers)r.disposeElement?.(e,t,i[s],n),s+=1}disposeTemplate(e){let t=0;for(const i of this.renderers)i.disposeTemplate(e[t++])}}class yY{constructor(e){this.accessibilityProvider=e,this.templateId="a18n"}renderTemplate(e){return{container:e,disposables:new X}}renderElement(e,t,i){const n=this.accessibilityProvider.getAriaLabel(e),s=n&&typeof n!="string"?n:wg(n);i.disposables.add(We(a=>{this.setAriaLabel(a.readObservable(s),i.container)}));const r=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(e);typeof r=="number"?i.container.setAttribute("aria-level",`${r}`):i.container.removeAttribute("aria-level")}setAriaLabel(e,t){e?t.setAttribute("aria-label",e):t.removeAttribute("aria-label")}disposeElement(e,t,i,n){i.disposables.clear()}disposeTemplate(e){e.disposables.dispose()}}class SY{constructor(e,t){this.list=e,this.dnd=t}getDragElements(e){const t=this.list.getSelectedElements();return t.indexOf(e)>-1?t:[e]}getDragURI(e){return this.dnd.getDragURI(e)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e,t)}onDragStart(e,t){this.dnd.onDragStart?.(e,t)}onDragOver(e,t,i,n,s){return this.dnd.onDragOver(e,t,i,n,s)}onDragLeave(e,t,i,n){this.dnd.onDragLeave?.(e,t,i,n)}onDragEnd(e){this.dnd.onDragEnd?.(e)}drop(e,t,i,n,s){this.dnd.drop(e,t,i,n,s)}dispose(){this.dnd.dispose()}}class go{get onDidChangeFocus(){return J.map(this.eventBufferer.wrapEvent(this.focus.onChange),e=>this.toListEvent(e),this.disposables)}get onDidChangeSelection(){return J.map(this.eventBufferer.wrapEvent(this.selection.onChange),e=>this.toListEvent(e),this.disposables)}get domId(){return this.view.domId}get onDidScroll(){return this.view.onDidScroll}get onMouseClick(){return this.view.onMouseClick}get onMouseDblClick(){return this.view.onMouseDblClick}get onMouseMiddleClick(){return this.view.onMouseMiddleClick}get onPointer(){return this.mouseController.onPointer}get onMouseDown(){return this.view.onMouseDown}get onMouseOver(){return this.view.onMouseOver}get onMouseOut(){return this.view.onMouseOut}get onTouchStart(){return this.view.onTouchStart}get onTap(){return this.view.onTap}get onContextMenu(){let e=!1;const t=J.chain(this.disposables.add(new ze(this.view.domNode,"keydown")).event,s=>s.map(r=>new Nt(r)).filter(r=>e=r.keyCode===58||r.shiftKey&&r.keyCode===68).map(r=>je.stop(r,!0)).filter(()=>!1)),i=J.chain(this.disposables.add(new ze(this.view.domNode,"keyup")).event,s=>s.forEach(()=>e=!1).map(r=>new Nt(r)).filter(r=>r.keyCode===58||r.shiftKey&&r.keyCode===68).map(r=>je.stop(r,!0)).map(({browserEvent:r})=>{const a=this.getFocus(),l=a.length?a[0]:void 0,c=typeof l<"u"?this.view.element(l):void 0,d=typeof l<"u"?this.view.domElement(l):this.view.domNode;return{index:l,element:c,anchor:d,browserEvent:r}})),n=J.chain(this.view.onContextMenu,s=>s.filter(r=>!e).map(({element:r,index:a,browserEvent:l})=>({element:r,index:a,anchor:new ur(fe(this.view.domNode),l),browserEvent:l})));return J.any(t,i,n)}get onKeyDown(){return this.disposables.add(new ze(this.view.domNode,"keydown")).event}get onDidFocus(){return J.signal(this.disposables.add(new ze(this.view.domNode,"focus",!0)).event)}get onDidBlur(){return J.signal(this.disposables.add(new ze(this.view.domNode,"blur",!0)).event)}constructor(e,t,i,n,s=bY){this.user=e,this._options=s,this.focus=new jC("focused"),this.anchor=new jC("anchor"),this.eventBufferer=new W_,this._ariaLabel="",this.disposables=new X,this._onDidDispose=new A,this.onDidDispose=this._onDidDispose.event;const r=this._options.accessibilityProvider&&this._options.accessibilityProvider.getWidgetRole?this._options.accessibilityProvider?.getWidgetRole():"list";this.selection=new dY(r!=="listbox");const a=[this.focus.renderer,this.selection.renderer];this.accessibilityProvider=s.accessibilityProvider,this.accessibilityProvider&&(a.push(new yY(this.accessibilityProvider)),this.accessibilityProvider.onDidChangeActiveDescendant?.(this.onDidChangeActiveDescendant,this,this.disposables)),n=n.map(c=>new wY(c.templateId,[...a,c]));const l={...s,dnd:s.dnd&&new SY(this,s.dnd)};if(this.view=this.createListView(t,i,n,l),this.view.domNode.setAttribute("role",r),s.styleController)this.styleController=s.styleController(this.view.domId);else{const c=Vs(this.view.domNode);this.styleController=new A7(c,this.view.domId)}if(this.spliceable=new eY([new MS(this.focus,this.view,s.identityProvider),new MS(this.selection,this.view,s.identityProvider),new MS(this.anchor,this.view,s.identityProvider),this.view]),this.disposables.add(this.focus),this.disposables.add(this.selection),this.disposables.add(this.anchor),this.disposables.add(this.view),this.disposables.add(this._onDidDispose),this.disposables.add(new mY(this,this.view)),(typeof s.keyboardSupport!="boolean"||s.keyboardSupport)&&(this.keyboardController=new N7(this,this.view,s),this.disposables.add(this.keyboardController)),s.keyboardNavigationLabelProvider){const c=s.keyboardNavigationDelegate||fY;this.typeNavigationController=new gY(this,this.view,s.keyboardNavigationLabelProvider,s.keyboardNavigationEventFilter??(()=>!0),c),this.disposables.add(this.typeNavigationController)}this.mouseController=this.createMouseController(s),this.disposables.add(this.mouseController),this.onDidChangeFocus(this._onFocusChange,this,this.disposables),this.onDidChangeSelection(this._onSelectionChange,this,this.disposables),this.accessibilityProvider&&(this.ariaLabel=this.accessibilityProvider.getWidgetAriaLabel()),this._options.multipleSelectionSupport!==!1&&this.view.domNode.setAttribute("aria-multiselectable","true")}createListView(e,t,i,n){return new Bo(e,t,i,n)}createMouseController(e){return new R7(this)}updateOptions(e={}){this._options={...this._options,...e},this.typeNavigationController?.updateOptions(this._options),this._options.multipleSelectionController!==void 0&&(this._options.multipleSelectionSupport?this.view.domNode.setAttribute("aria-multiselectable","true"):this.view.domNode.removeAttribute("aria-multiselectable")),this.mouseController.updateOptions(e),this.keyboardController?.updateOptions(e),this.view.updateOptions(e)}get options(){return this._options}splice(e,t,i=[]){if(e<0||e>this.view.length)throw new id(this.user,`Invalid start index: ${e}`);if(t<0)throw new id(this.user,`Invalid delete count: ${t}`);t===0&&i.length===0||this.eventBufferer.bufferEvents(()=>this.spliceable.splice(e,t,i))}rerender(){this.view.rerender()}element(e){return this.view.element(e)}indexOf(e){return this.view.indexOf(e)}indexAt(e){return this.view.indexAt(e)}get length(){return this.view.length}get contentHeight(){return this.view.contentHeight}get onDidChangeContentHeight(){return this.view.onDidChangeContentHeight}get scrollTop(){return this.view.getScrollTop()}set scrollTop(e){this.view.setScrollTop(e)}get scrollHeight(){return this.view.scrollHeight}get renderHeight(){return this.view.renderHeight}get firstVisibleIndex(){return this.view.firstVisibleIndex}get ariaLabel(){return this._ariaLabel}set ariaLabel(e){this._ariaLabel=e,this.view.domNode.setAttribute("aria-label",e)}domFocus(){this.view.domNode.focus({preventScroll:!0})}layout(e,t){this.view.layout(e,t)}setSelection(e,t){for(const i of e)if(i<0||i>=this.length)throw new id(this.user,`Invalid index ${i}`);this.selection.set(e,t)}getSelection(){return this.selection.get()}getSelectedElements(){return this.getSelection().map(e=>this.view.element(e))}setAnchor(e){if(typeof e>"u"){this.anchor.set([]);return}if(e<0||e>=this.length)throw new id(this.user,`Invalid index ${e}`);this.anchor.set([e])}getAnchor(){return xN(this.anchor.get(),void 0)}getAnchorElement(){const e=this.getAnchor();return typeof e>"u"?void 0:this.element(e)}setFocus(e,t){for(const i of e)if(i<0||i>=this.length)throw new id(this.user,`Invalid index ${i}`);this.focus.set(e,t)}focusNext(e=1,t=!1,i,n){if(this.length===0)return;const s=this.focus.get(),r=this.findNextIndex(s.length>0?s[0]+e:0,t,n);r>-1&&this.setFocus([r],i)}focusPrevious(e=1,t=!1,i,n){if(this.length===0)return;const s=this.focus.get(),r=this.findPreviousIndex(s.length>0?s[0]-e:0,t,n);r>-1&&this.setFocus([r],i)}async focusNextPage(e,t){let i=this.view.indexAt(this.view.getScrollTop()+this.view.renderHeight);i=i===0?0:i-1;const n=this.getFocus()[0];if(n!==i&&(n===void 0||i>n)){const s=this.findPreviousIndex(i,!1,t);s>-1&&n!==s?this.setFocus([s],e):this.setFocus([i],e)}else{const s=this.view.getScrollTop();let r=s+this.view.renderHeight;i>n&&(r-=this.view.elementHeight(i)),this.view.setScrollTop(r),this.view.getScrollTop()!==s&&(this.setFocus([]),await og(0),await this.focusNextPage(e,t))}}async focusPreviousPage(e,t,i=()=>0){let n;const s=i(),r=this.view.getScrollTop()+s;r===0?n=this.view.indexAt(r):n=this.view.indexAfter(r-1);const a=this.getFocus()[0];if(a!==n&&(a===void 0||a>=n)){const l=this.findNextIndex(n,!1,t);l>-1&&a!==l?this.setFocus([l],e):this.setFocus([n],e)}else{const l=r;this.view.setScrollTop(r-this.view.renderHeight-s),this.view.getScrollTop()+i()!==l&&(this.setFocus([]),await og(0),await this.focusPreviousPage(e,t,i))}}focusLast(e,t){if(this.length===0)return;const i=this.findPreviousIndex(this.length-1,!1,t);i>-1&&this.setFocus([i],e)}focusFirst(e,t){this.focusNth(0,e,t)}focusNth(e,t,i){if(this.length===0)return;const n=this.findNextIndex(e,!1,i);n>-1&&this.setFocus([n],t)}findNextIndex(e,t=!1,i){for(let n=0;n=this.length&&!t)return-1;if(e=e%this.length,!i||i(this.element(e)))return e;e++}return-1}findPreviousIndex(e,t=!1,i){for(let n=0;nthis.view.element(e))}reveal(e,t,i=0){if(e<0||e>=this.length)throw new id(this.user,`Invalid index ${e}`);const n=this.view.getScrollTop(),s=this.view.elementTop(e),r=this.view.elementHeight(e);if(Pg(t)){const a=r-this.view.renderHeight+i;this.view.setScrollTop(a*bn(t,0,1)+s-i)}else{const a=s+r,l=n+this.view.renderHeight;s=l||(s=l&&r>=this.view.renderHeight?this.view.setScrollTop(s-i):a>=l&&this.view.setScrollTop(a-this.view.renderHeight))}}getRelativeTop(e,t=0){if(e<0||e>=this.length)throw new id(this.user,`Invalid index ${e}`);const i=this.view.getScrollTop(),n=this.view.elementTop(e),s=this.view.elementHeight(e);if(ni+this.view.renderHeight)return null;const r=s-this.view.renderHeight+t;return Math.abs((i+t-n)/r)}getHTMLElement(){return this.view.domNode}getScrollableElement(){return this.view.scrollableElementDomNode}getElementID(e){return this.view.getElementDomId(e)}getElementTop(e){return this.view.elementTop(e)}style(e){this.styleController.style(e)}toListEvent({indexes:e,browserEvent:t}){return{indexes:e,elements:e.map(i=>this.view.element(i)),browserEvent:t}}_onFocusChange(){const e=this.focus.get();this.view.domNode.classList.toggle("element-focused",e.length>0),this.onDidChangeActiveDescendant()}onDidChangeActiveDescendant(){const e=this.focus.get();if(e.length>0){let t;this.accessibilityProvider?.getActiveDescendantId&&(t=this.accessibilityProvider.getActiveDescendantId(this.view.element(e[0]))),this.view.domNode.setAttribute("aria-activedescendant",t||this.view.getElementDomId(e[0]))}else this.view.domNode.removeAttribute("aria-activedescendant")}_onSelectionChange(){const e=this.selection.get();this.view.domNode.classList.toggle("selection-none",e.length===0),this.view.domNode.classList.toggle("selection-single",e.length===1),this.view.domNode.classList.toggle("selection-multiple",e.length>1)}dispose(){this._onDidDispose.fire(),this.disposables.dispose(),this._onDidDispose.dispose()}}Gc([Jt],go.prototype,"onDidChangeFocus",null);Gc([Jt],go.prototype,"onDidChangeSelection",null);Gc([Jt],go.prototype,"onContextMenu",null);Gc([Jt],go.prototype,"onKeyDown",null);Gc([Jt],go.prototype,"onDidFocus",null);Gc([Jt],go.prototype,"onDidBlur",null);const $d=ce,P7="selectOption.entry.template";class LY{get templateId(){return P7}renderTemplate(e){const t=Object.create(null);return t.root=e,t.text=Z(e,$d(".option-text")),t.detail=Z(e,$d(".option-detail")),t.decoratorRight=Z(e,$d(".option-decorator-right")),t}renderElement(e,t,i){const n=i,s=e.text,r=e.detail,a=e.decoratorRight,l=e.isDisabled;n.text.textContent=s,n.detail.textContent=r||"",n.decoratorRight.innerText=a||"",l?n.root.classList.add("option-disabled"):n.root.classList.remove("option-disabled")}disposeTemplate(e){}}const Hr=class Hr extends z{constructor(e,t,i,n,s){super(),this.options=[],this._currentSelection=0,this._hasDetails=!1,this._skipLayout=!1,this._sticky=!1,this._isVisible=!1,this.styles=n,this.selectBoxOptions=s||Object.create(null),typeof this.selectBoxOptions.minBottomMargin!="number"?this.selectBoxOptions.minBottomMargin=Hr.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN:this.selectBoxOptions.minBottomMargin<0&&(this.selectBoxOptions.minBottomMargin=0),this.selectElement=document.createElement("select"),this.selectElement.className="monaco-select-box monaco-select-box-dropdown-padding",typeof this.selectBoxOptions.ariaLabel=="string"&&this.selectElement.setAttribute("aria-label",this.selectBoxOptions.ariaLabel),typeof this.selectBoxOptions.ariaDescription=="string"&&this.selectElement.setAttribute("aria-description",this.selectBoxOptions.ariaDescription),this._onDidSelect=new A,this._register(this._onDidSelect),this.registerListeners(),this.constructSelectDropDown(i),this.selected=t||0,e&&this.setOptions(e,t),this.initStyleSheet()}setTitle(e){!this._hover&&e?this._hover=this._register(La().setupManagedHover(Ks("mouse"),this.selectElement,e)):this._hover&&this._hover.update(e)}getHeight(){return 22}getTemplateId(){return P7}constructSelectDropDown(e){this.contextViewProvider=e,this.selectDropDownContainer=ce(".monaco-select-box-dropdown-container"),this.selectDropDownContainer.classList.add("monaco-select-box-dropdown-padding"),this.selectionDetailsPane=Z(this.selectDropDownContainer,$d(".select-box-details-pane"));const t=Z(this.selectDropDownContainer,$d(".select-box-dropdown-container-width-control")),i=Z(t,$d(".width-control-div"));this.widthControlElement=document.createElement("span"),this.widthControlElement.className="option-text-width-control",Z(i,this.widthControlElement),this._dropDownPosition=0,this.styleElement=Vs(this.selectDropDownContainer),this.selectDropDownContainer.setAttribute("draggable","true"),this._register(U(this.selectDropDownContainer,ee.DRAG_START,n=>{je.stop(n,!0)}))}registerListeners(){this._register(jt(this.selectElement,"change",t=>{this.selected=t.target.selectedIndex,this._onDidSelect.fire({index:t.target.selectedIndex,selected:t.target.value}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)})),this._register(U(this.selectElement,ee.CLICK,t=>{je.stop(t),this._isVisible?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(U(this.selectElement,ee.MOUSE_DOWN,t=>{je.stop(t)}));let e;this._register(U(this.selectElement,"touchstart",t=>{e=this._isVisible})),this._register(U(this.selectElement,"touchend",t=>{je.stop(t),e?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(U(this.selectElement,ee.KEY_DOWN,t=>{const i=new Nt(t);let n=!1;Ue?(i.keyCode===18||i.keyCode===16||i.keyCode===10||i.keyCode===3)&&(n=!0):(i.keyCode===18&&i.altKey||i.keyCode===16&&i.altKey||i.keyCode===10||i.keyCode===3)&&(n=!0),n&&(this.showSelectDropDown(),je.stop(t,!0))}))}get onDidSelect(){return this._onDidSelect.event}setOptions(e,t){li(this.options,e)||(this.options=e,this.selectElement.options.length=0,this._hasDetails=!1,this._cachedMaxDetailsHeight=void 0,this.options.forEach((i,n)=>{this.selectElement.add(this.createOption(i.text,n,i.isDisabled)),typeof i.description=="string"&&(this._hasDetails=!0)})),t!==void 0&&(this.select(t),this._currentSelection=this.selected)}setOptionsList(){this.selectList?.splice(0,this.selectList.length,this.options)}select(e){e>=0&&ethis.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)}focus(){this.selectElement&&(this.selectElement.tabIndex=0,this.selectElement.focus())}blur(){this.selectElement&&(this.selectElement.tabIndex=-1,this.selectElement.blur())}setFocusable(e){this.selectElement.tabIndex=e?0:-1}render(e){this.container=e,e.classList.add("select-container"),e.appendChild(this.selectElement),this.styleSelectElement()}initStyleSheet(){const e=[];this.styles.listFocusBackground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { background-color: ${this.styles.listFocusBackground} !important; }`),this.styles.listFocusForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { color: ${this.styles.listFocusForeground} !important; }`),this.styles.decoratorRightForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.focused) .option-decorator-right { color: ${this.styles.decoratorRightForeground}; }`),this.styles.selectBackground&&this.styles.selectBorder&&this.styles.selectBorder!==this.styles.selectBackground?(e.push(`.monaco-select-box-dropdown-container { border: 1px solid ${this.styles.selectBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectBorder} } `)):this.styles.selectListBorder&&(e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectListBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectListBorder} } `)),this.styles.listHoverForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { color: ${this.styles.listHoverForeground} !important; }`),this.styles.listHoverBackground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { background-color: ${this.styles.listHoverBackground} !important; }`),this.styles.listFocusOutline&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { outline: 1.6px dotted ${this.styles.listFocusOutline} !important; outline-offset: -1.6px !important; }`),this.styles.listHoverOutline&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { outline: 1.6px dashed ${this.styles.listHoverOutline} !important; outline-offset: -1.6px !important; }`),e.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled.focused { background-color: transparent !important; color: inherit !important; outline: none !important; }"),e.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled:hover { background-color: transparent !important; color: inherit !important; outline: none !important; }"),this.styleElement.textContent=e.join(` +`)}styleSelectElement(){const e=this.styles.selectBackground??"",t=this.styles.selectForeground??"",i=this.styles.selectBorder??"";this.selectElement.style.backgroundColor=e,this.selectElement.style.color=t,this.selectElement.style.borderColor=i}styleList(){const e=this.styles.selectBackground??"",t=vl(this.styles.selectListBackground,e);this.selectDropDownListContainer.style.backgroundColor=t,this.selectionDetailsPane.style.backgroundColor=t;const i=this.styles.focusBorder??"";this.selectDropDownContainer.style.outlineColor=i,this.selectDropDownContainer.style.outlineOffset="-1px",this.selectList.style(this.styles)}createOption(e,t,i){const n=document.createElement("option");return n.value=e,n.text=e,n.disabled=!!i,n}showSelectDropDown(){this.selectionDetailsPane.innerText="",!(!this.contextViewProvider||this._isVisible)&&(this.createSelectList(this.selectDropDownContainer),this.setOptionsList(),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:e=>this.renderSelectDropDown(e,!0),layout:()=>{this.layoutSelectDropDown()},onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._isVisible=!0,this.hideSelectDropDown(!1),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:e=>this.renderSelectDropDown(e),layout:()=>this.layoutSelectDropDown(),onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._currentSelection=this.selected,this._isVisible=!0,this.selectElement.setAttribute("aria-expanded","true"))}hideSelectDropDown(e){!this.contextViewProvider||!this._isVisible||(this._isVisible=!1,this.selectElement.setAttribute("aria-expanded","false"),e&&this.selectElement.focus(),this.contextViewProvider.hideContextView())}renderSelectDropDown(e,t){return e.appendChild(this.selectDropDownContainer),this.layoutSelectDropDown(t),{dispose:()=>{this.selectDropDownContainer.remove()}}}measureMaxDetailsHeight(){let e=0;return this.options.forEach((t,i)=>{this.updateDetail(i),this.selectionDetailsPane.offsetHeight>e&&(e=this.selectionDetailsPane.offsetHeight)}),e}layoutSelectDropDown(e){if(this._skipLayout)return!1;if(this.selectList){this.selectDropDownContainer.classList.add("visible");const t=fe(this.selectElement),i=gi(this.selectElement),n=fe(this.selectElement).getComputedStyle(this.selectElement),s=parseFloat(n.getPropertyValue("--dropdown-padding-top"))+parseFloat(n.getPropertyValue("--dropdown-padding-bottom")),r=t.innerHeight-i.top-i.height-(this.selectBoxOptions.minBottomMargin||0),a=i.top-Hr.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN,l=this.selectElement.offsetWidth,c=this.setWidthControlElement(this.widthControlElement),d=Math.max(c,Math.round(l)).toString()+"px";this.selectDropDownContainer.style.width=d,this.selectList.getHTMLElement().style.height="",this.selectList.layout();let h=this.selectList.contentHeight;this._hasDetails&&this._cachedMaxDetailsHeight===void 0&&(this._cachedMaxDetailsHeight=this.measureMaxDetailsHeight());const u=this._hasDetails?this._cachedMaxDetailsHeight:0,f=h+s+u,g=Math.floor((r-s-u)/this.getHeight()),p=Math.floor((a-s-u)/this.getHeight());if(e)return i.top+i.height>t.innerHeight-22||i.topg&&this.options.length>g?(this._dropDownPosition=1,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectionDetailsPane.classList.remove("border-top"),this.selectionDetailsPane.classList.add("border-bottom")):(this._dropDownPosition=0,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectionDetailsPane.classList.remove("border-bottom"),this.selectionDetailsPane.classList.add("border-top")),!0);if(i.top+i.height>t.innerHeight-22||i.topr&&(h=g*this.getHeight())}else f>a&&(h=p*this.getHeight());return this.selectList.layout(h),this.selectList.domFocus(),this.selectList.length>0&&(this.selectList.setFocus([this.selected||0]),this.selectList.reveal(this.selectList.getFocus()[0]||0)),this._hasDetails?(this.selectList.getHTMLElement().style.height=h+s+"px",this.selectDropDownContainer.style.height=""):this.selectDropDownContainer.style.height=h+s+"px",this.updateDetail(this.selected),this.selectDropDownContainer.style.width=d,this.selectDropDownListContainer.setAttribute("tabindex","0"),this.selectElement.classList.add("synthetic-focus"),this.selectDropDownContainer.classList.add("synthetic-focus"),!0}else return!1}setWidthControlElement(e){let t=0;if(e){let i=0,n=0;this.options.forEach((s,r)=>{const a=s.detail?s.detail.length:0,l=s.decoratorRight?s.decoratorRight.length:0,c=s.text.length+a+l;c>n&&(i=r,n=c)}),e.textContent=this.options[i].text+(this.options[i].decoratorRight?this.options[i].decoratorRight+" ":""),t=qp(e)}return t}createSelectList(e){if(this.selectList)return;this.selectDropDownListContainer=Z(e,$d(".select-box-dropdown-list-container")),this.listRenderer=new LY,this.selectList=this._register(new go("SelectBoxCustom",this.selectDropDownListContainer,this,[this.listRenderer],{useShadows:!1,verticalScrollMode:3,keyboardSupport:!1,mouseSupport:!1,accessibilityProvider:{getAriaLabel:n=>{let s=n.text;return n.detail&&(s+=`. ${n.detail}`),n.decoratorRight&&(s+=`. ${n.decoratorRight}`),n.description&&(s+=`. ${n.description}`),s},getWidgetAriaLabel:()=>m({key:"selectBox",comment:["Behave like native select dropdown element."]},"Select Box"),getRole:()=>Ue?"":"option",getWidgetRole:()=>"listbox"}})),this.selectBoxOptions.ariaLabel&&(this.selectList.ariaLabel=this.selectBoxOptions.ariaLabel);const t=this._register(new ze(this.selectDropDownListContainer,"keydown")),i=J.chain(t.event,n=>n.filter(()=>this.selectList.length>0).map(s=>new Nt(s)));this._register(J.chain(i,n=>n.filter(s=>s.keyCode===3))(this.onEnter,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===2))(this.onEnter,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===9))(this.onEscape,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===16))(this.onUpArrow,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===18))(this.onDownArrow,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===12))(this.onPageDown,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===11))(this.onPageUp,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===14))(this.onHome,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===13))(this.onEnd,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode>=21&&s.keyCode<=56||s.keyCode>=85&&s.keyCode<=113))(this.onCharacter,this)),this._register(U(this.selectList.getHTMLElement(),ee.POINTER_UP,n=>this.onPointerUp(n))),this._register(this.selectList.onMouseOver(n=>typeof n.index<"u"&&this.selectList.setFocus([n.index]))),this._register(this.selectList.onDidChangeFocus(n=>this.onListFocus(n))),this._register(U(this.selectDropDownContainer,ee.FOCUS_OUT,n=>{!this._isVisible||yi(n.relatedTarget,this.selectDropDownContainer)||this.onListBlur()})),this.selectList.getHTMLElement().setAttribute("aria-label",this.selectBoxOptions.ariaLabel||""),this.selectList.getHTMLElement().setAttribute("aria-expanded","true"),this.styleList()}onPointerUp(e){if(!this.selectList.length)return;je.stop(e);const t=e.target;if(!t||t.classList.contains("slider"))return;const i=t.closest(".monaco-list-row");if(!i)return;const n=Number(i.getAttribute("data-index")),s=i.classList.contains("option-disabled");n>=0&&n{for(let r=0;rthis.selected+2)this.selected+=2;else{if(t)return;this.selected++}this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0])}}onUpArrow(e){this.selected>0&&(je.stop(e,!0),this.options[this.selected-1].isDisabled&&this.selected>1?this.selected-=2:this.selected--,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]))}onPageUp(e){je.stop(e),this.selectList.focusPreviousPage(),setTimeout(()=>{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected>0&&(this.selected--,this.selectList.setFocus([this.selected])),this.selectList.reveal(this.selected),this.select(this.selected)},1)}onHome(e){je.stop(e),!(this.options.length<2)&&(this.selected=0,this.options[this.selected].isDisabled&&this.selected>1&&this.selected++,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onEnd(e){je.stop(e),!(this.options.length<2)&&(this.selected=this.options.length-1,this.options[this.selected].isDisabled&&this.selected>1&&this.selected--,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onCharacter(e){const t=el.toString(e.keyCode);let i=-1;for(let n=0;n{this._register(U(this.selectElement,e,t=>{this.selectElement.focus()}))}),this._register(jt(this.selectElement,"click",e=>{je.stop(e,!0)})),this._register(jt(this.selectElement,"change",e=>{this.selectElement.title=e.target.value,this._onDidSelect.fire({index:e.target.selectedIndex,selected:e.target.value})})),this._register(jt(this.selectElement,"keydown",e=>{let t=!1;Ue?(e.keyCode===18||e.keyCode===16||e.keyCode===10)&&(t=!0):(e.keyCode===18&&e.altKey||e.keyCode===10||e.keyCode===3)&&(t=!0),t&&e.stopPropagation()}))}get onDidSelect(){return this._onDidSelect.event}setOptions(e,t){(!this.options||!li(this.options,e))&&(this.options=e,this.selectElement.options.length=0,this.options.forEach((i,n)=>{this.selectElement.add(this.createOption(i.text,n,i.isDisabled))})),t!==void 0&&this.select(t)}select(e){this.options.length===0?this.selected=0:e>=0&&ethis.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.selected{this.element&&this.handleActionChangeEvent(n)}))}handleActionChangeEvent(e){e.enabled!==void 0&&this.updateEnabled(),e.checked!==void 0&&this.updateChecked(),e.class!==void 0&&this.updateClass(),e.label!==void 0&&(this.updateLabel(),this.updateTooltip()),e.tooltip!==void 0&&this.updateTooltip()}get actionRunner(){return this._actionRunner||(this._actionRunner=this._register(new Oh)),this._actionRunner}set actionRunner(e){this._actionRunner=e}isEnabled(){return this._action.enabled}setActionContext(e){this._context=e}render(e){const t=this.element=e;this._register(fn.addTarget(e));const i=this.options&&this.options.draggable;i&&(e.draggable=!0,Mo&&this._register(U(e,ee.DRAG_START,n=>n.dataTransfer?.setData(D7.TEXT,this._action.label)))),this._register(U(t,St.Tap,n=>this.onClick(n,!0))),this._register(U(t,ee.MOUSE_DOWN,n=>{i||je.stop(n,!0),this._action.enabled&&n.button===0&&t.classList.add("active")})),Ue&&this._register(U(t,ee.CONTEXT_MENU,n=>{n.button===0&&n.ctrlKey===!0&&this.onClick(n)})),this._register(U(t,ee.CLICK,n=>{je.stop(n,!0),this.options&&this.options.isMenu||this.onClick(n)})),this._register(U(t,ee.DBLCLICK,n=>{je.stop(n,!0)})),[ee.MOUSE_UP,ee.MOUSE_OUT].forEach(n=>{this._register(U(t,n,s=>{je.stop(s),t.classList.remove("active")}))})}onClick(e,t=!1){je.stop(e,!0);const i=xs(this._context)?this.options?.useEventAsContext?e:{preserveFocus:t}:this._context;this.actionRunner.run(this._action,i)}focus(){this.element&&(this.element.tabIndex=0,this.element.focus(),this.element.classList.add("focused"))}blur(){this.element&&(this.element.blur(),this.element.tabIndex=-1,this.element.classList.remove("focused"))}setFocusable(e){this.element&&(this.element.tabIndex=e?0:-1)}get trapsArrowNavigation(){return!1}updateEnabled(){}updateLabel(){}getClass(){return this.action.class}getTooltip(){return this.action.tooltip}updateTooltip(){if(!this.element)return;const e=this.getTooltip()??"";if(this.updateAriaLabel(),this.options.hoverDelegate?.showNativeHover)this.element.title=e;else if(!this.customHover&&e!==""){const t=this.options.hoverDelegate??Ks("element");this.customHover=this._store.add(La().setupManagedHover(t,this.element,e))}else this.customHover&&this.customHover.update(e)}updateAriaLabel(){if(this.element){const e=this.getTooltip()??"";this.element.setAttribute("aria-label",e)}}updateClass(){}updateChecked(){}dispose(){this.element&&(this.element.remove(),this.element=void 0),this._context=void 0,super.dispose()}}class dy extends or{constructor(e,t,i){super(e,t,i),this.options=i,this.options.icon=i.icon!==void 0?i.icon:!1,this.options.label=i.label!==void 0?i.label:!0,this.cssClass=""}render(e){super.render(e),ai(this.element);const t=document.createElement("a");if(t.classList.add("action-label"),t.setAttribute("role",this.getDefaultAriaRole()),this.label=t,this.element.appendChild(t),this.options.label&&this.options.keybinding){const i=document.createElement("span");i.classList.add("keybinding"),i.textContent=this.options.keybinding,this.element.appendChild(i)}this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()}getDefaultAriaRole(){return this._action.id===Gi.ID?"presentation":this.options.isMenu?"menuitem":this.options.isTabList?"tab":"button"}focus(){this.label&&(this.label.tabIndex=0,this.label.focus())}blur(){this.label&&(this.label.tabIndex=-1)}setFocusable(e){this.label&&(this.label.tabIndex=e?0:-1)}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this.action.label)}getTooltip(){let e=null;return this.action.tooltip?e=this.action.tooltip:!this.options.label&&this.action.label&&this.options.icon&&(e=this.action.label,this.options.keybinding&&(e=m({key:"titleLabel",comment:["action title","action keybinding"]},"{0} ({1})",e,this.options.keybinding))),e??void 0}updateClass(){this.cssClass&&this.label&&this.label.classList.remove(...this.cssClass.split(" ")),this.options.icon?(this.cssClass=this.getClass(),this.label&&(this.label.classList.add("codicon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" "))),this.updateEnabled()):this.label?.classList.remove("codicon")}updateEnabled(){this.action.enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),this.label.classList.remove("disabled")),this.element?.classList.remove("disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),this.label.classList.add("disabled")),this.element?.classList.add("disabled"))}updateAriaLabel(){if(this.label){const e=this.getTooltip()??"";this.label.setAttribute("aria-label",e)}}updateChecked(){this.label&&(this.action.checked!==void 0?(this.label.classList.toggle("checked",this.action.checked),this.options.isTabList?this.label.setAttribute("aria-selected",this.action.checked?"true":"false"):(this.label.setAttribute("aria-checked",this.action.checked?"true":"false"),this.label.setAttribute("role","checkbox"))):(this.label.classList.remove("checked"),this.label.removeAttribute(this.options.isTabList?"aria-selected":"aria-checked"),this.label.setAttribute("role",this.getDefaultAriaRole())))}}class DY extends or{constructor(e,t,i,n,s,r,a){super(e,t),this.selectBox=new kY(i,n,s,r,a),this.selectBox.setFocusable(!1),this._register(this.selectBox),this.registerListeners()}select(e){this.selectBox.select(e)}registerListeners(){this._register(this.selectBox.onDidSelect(e=>this.runAction(e.selected,e.index)))}runAction(e,t){this.actionRunner.run(this._action,this.getActionContext(e,t))}getActionContext(e,t){return e}setFocusable(e){this.selectBox.setFocusable(e)}focus(){this.selectBox?.focus()}blur(){this.selectBox?.blur()}render(e){this.selectBox.render(e)}}class IY extends Oh{constructor(e,t){super(),this._onDidChangeVisibility=this._register(new A),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this._element=Z(e,ce(".monaco-dropdown")),this._label=Z(this._element,ce(".dropdown-label"));let i=t.labelRenderer;i||(i=s=>(s.textContent=t.label||"",null));for(const s of[ee.CLICK,ee.MOUSE_DOWN,St.Tap])this._register(U(this.element,s,r=>je.stop(r,!0)));for(const s of[ee.MOUSE_DOWN,St.Tap])this._register(U(this._label,s,r=>{tT(r)&&(r.detail>1||r.button!==0)||(this.visible?this.hide():this.show())}));this._register(U(this._label,ee.KEY_UP,s=>{const r=new Nt(s);(r.equals(3)||r.equals(10))&&(je.stop(s,!0),this.visible?this.hide():this.show())}));const n=i(this._label);n&&this._register(n),this._register(fn.addTarget(this._label))}get element(){return this._element}show(){this.visible||(this.visible=!0,this._onDidChangeVisibility.fire(!0))}hide(){this.visible&&(this.visible=!1,this._onDidChangeVisibility.fire(!1))}dispose(){super.dispose(),this.hide(),this.boxContainer&&(this.boxContainer.remove(),this.boxContainer=void 0),this.contents&&(this.contents.remove(),this.contents=void 0),this._label&&(this._label.remove(),this._label=void 0)}}class EY extends IY{constructor(e,t){super(e,t),this._options=t,this._actions=[],this.actions=t.actions||[]}set menuOptions(e){this._menuOptions=e}get menuOptions(){return this._menuOptions}get actions(){return this._options.actionProvider?this._options.actionProvider.getActions():this._actions}set actions(e){this._actions=e}show(){super.show(),this.element.classList.add("active"),this._options.contextMenuProvider.showContextMenu({getAnchor:()=>this.element,getActions:()=>this.actions,getActionsContext:()=>this.menuOptions?this.menuOptions.context:null,getActionViewItem:(e,t)=>this.menuOptions&&this.menuOptions.actionViewItemProvider?this.menuOptions.actionViewItemProvider(e,t):void 0,getKeyBinding:e=>this.menuOptions&&this.menuOptions.getKeyBinding?this.menuOptions.getKeyBinding(e):void 0,getMenuClassName:()=>this._options.menuClassName||"",onHide:()=>this.onHide(),actionRunner:this.menuOptions?this.menuOptions.actionRunner:void 0,anchorAlignment:this.menuOptions?this.menuOptions.anchorAlignment:0,domForShadowRoot:this._options.menuAsChild?this.element:void 0,skipTelemetry:this._options.skipTelemetry})}hide(){super.hide()}onHide(){this.hide(),this.element.classList.remove("active")}}class qC extends or{constructor(e,t,i,n=Object.create(null)){super(null,e,n),this.actionItem=null,this._onDidChangeVisibility=this._register(new A),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this.menuActionsOrProvider=t,this.contextMenuProvider=i,this.options=n,this.options.actionRunner&&(this.actionRunner=this.options.actionRunner)}render(e){this.actionItem=e;const t=s=>{this.element=Z(s,ce("a.action-label"));let r=[];return typeof this.options.classNames=="string"?r=this.options.classNames.split(/\s+/g).filter(a=>!!a):this.options.classNames&&(r=this.options.classNames),r.find(a=>a==="icon")||r.push("codicon"),this.element.classList.add(...r),this.element.setAttribute("role","button"),this.element.setAttribute("aria-haspopup","true"),this.element.setAttribute("aria-expanded","false"),this._action.label&&this._register(La().setupManagedHover(this.options.hoverDelegate??Ks("mouse"),this.element,this._action.label)),this.element.ariaLabel=this._action.label||"",null},i=Array.isArray(this.menuActionsOrProvider),n={contextMenuProvider:this.contextMenuProvider,labelRenderer:t,menuAsChild:this.options.menuAsChild,actions:i?this.menuActionsOrProvider:void 0,actionProvider:i?void 0:this.menuActionsOrProvider,skipTelemetry:this.options.skipTelemetry};if(this.dropdownMenu=this._register(new EY(e,n)),this._register(this.dropdownMenu.onDidChangeVisibility(s=>{this.element?.setAttribute("aria-expanded",`${s}`),this._onDidChangeVisibility.fire(s)})),this.dropdownMenu.menuOptions={actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,getKeyBinding:this.options.keybindingProvider,context:this._context},this.options.anchorAlignmentProvider){const s=this;this.dropdownMenu.menuOptions={...this.dropdownMenu.menuOptions,get anchorAlignment(){return s.options.anchorAlignmentProvider()}}}this.updateTooltip(),this.updateEnabled()}getTooltip(){let e=null;return this.action.tooltip?e=this.action.tooltip:this.action.label&&(e=this.action.label),e??void 0}setActionContext(e){super.setActionContext(e),this.dropdownMenu&&(this.dropdownMenu.menuOptions?this.dropdownMenu.menuOptions.context=e:this.dropdownMenu.menuOptions={context:e})}show(){this.dropdownMenu?.show()}updateEnabled(){const e=!this.action.enabled;this.actionItem?.classList.toggle("disabled",e),this.element?.classList.toggle("disabled",e)}}function NY(o){return o?o.condition!==void 0:!1}var Wf;(function(o){o[o.STORAGE_DOES_NOT_EXIST=0]="STORAGE_DOES_NOT_EXIST",o[o.STORAGE_IN_MEMORY=1]="STORAGE_IN_MEMORY"})(Wf||(Wf={}));var af;(function(o){o[o.None=0]="None",o[o.Initialized=1]="Initialized",o[o.Closed=2]="Closed"})(af||(af={}));const Aw=class Aw extends z{constructor(e,t=Object.create(null)){super(),this.database=e,this.options=t,this._onDidChangeStorage=this._register(new Nh),this.onDidChangeStorage=this._onDidChangeStorage.event,this.state=af.None,this.cache=new Map,this.flushDelayer=this._register(new vF(Aw.DEFAULT_FLUSH_DELAY)),this.pendingDeletes=new Set,this.pendingInserts=new Map,this.whenFlushedCallbacks=[],this.registerListeners()}registerListeners(){this._register(this.database.onDidChangeItemsExternal(e=>this.onDidChangeItemsExternal(e)))}onDidChangeItemsExternal(e){this._onDidChangeStorage.pause();try{e.changed?.forEach((t,i)=>this.acceptExternal(i,t)),e.deleted?.forEach(t=>this.acceptExternal(t,void 0))}finally{this._onDidChangeStorage.resume()}}acceptExternal(e,t){if(this.state===af.Closed)return;let i=!1;xs(t)?i=this.cache.delete(e):this.cache.get(e)!==t&&(this.cache.set(e,t),i=!0),i&&this._onDidChangeStorage.fire({key:e,external:!0})}get(e,t){const i=this.cache.get(e);return xs(i)?t:i}getBoolean(e,t){const i=this.get(e);return xs(i)?t:i==="true"}getNumber(e,t){const i=this.get(e);return xs(i)?t:parseInt(i,10)}async set(e,t,i=!1){if(this.state===af.Closed)return;if(xs(t))return this.delete(e,i);const n=Oi(t)||Array.isArray(t)?sG(t):String(t);if(this.cache.get(e)!==n)return this.cache.set(e,n),this.pendingInserts.set(e,n),this.pendingDeletes.delete(e),this._onDidChangeStorage.fire({key:e,external:i}),this.doFlush()}async delete(e,t=!1){if(!(this.state===af.Closed||!this.cache.delete(e)))return this.pendingDeletes.has(e)||this.pendingDeletes.add(e),this.pendingInserts.delete(e),this._onDidChangeStorage.fire({key:e,external:t}),this.doFlush()}get hasPending(){return this.pendingInserts.size>0||this.pendingDeletes.size>0}async flushPending(){if(!this.hasPending)return;const e={insert:this.pendingInserts,delete:this.pendingDeletes};return this.pendingDeletes=new Set,this.pendingInserts=new Map,this.database.updateItems(e).finally(()=>{if(!this.hasPending)for(;this.whenFlushedCallbacks.length;)this.whenFlushedCallbacks.pop()?.()})}async doFlush(e){return this.options.hint===Wf.STORAGE_IN_MEMORY?this.flushPending():this.flushDelayer.trigger(()=>this.flushPending(),e)}};Aw.DEFAULT_FLUSH_DELAY=100;let ep=Aw;class RS{constructor(){this.onDidChangeItemsExternal=J.None,this.items=new Map}async updateItems(e){e.insert?.forEach((t,i)=>this.items.set(i,t)),e.delete?.forEach(t=>this.items.delete(t))}}const P1="__$__targetStorageMarker",du=He("storageService");var aD;(function(o){o[o.NONE=0]="NONE",o[o.SHUTDOWN=1]="SHUTDOWN"})(aD||(aD={}));function TY(o){const e=o.get(P1);if(e)try{return JSON.parse(e)}catch{}return Object.create(null)}const Pw=class Pw extends z{constructor(e={flushInterval:Pw.DEFAULT_FLUSH_INTERVAL}){super(),this.options=e,this._onDidChangeValue=this._register(new Nh),this._onDidChangeTarget=this._register(new Nh),this._onWillSaveState=this._register(new A),this.onWillSaveState=this._onWillSaveState.event,this._workspaceKeyTargets=void 0,this._profileKeyTargets=void 0,this._applicationKeyTargets=void 0}onDidChangeValue(e,t,i){return J.filter(this._onDidChangeValue.event,n=>n.scope===e&&(t===void 0||n.key===t),i)}emitDidChangeValue(e,t){const{key:i,external:n}=t;if(i===P1){switch(e){case-1:this._applicationKeyTargets=void 0;break;case 0:this._profileKeyTargets=void 0;break;case 1:this._workspaceKeyTargets=void 0;break}this._onDidChangeTarget.fire({scope:e})}else this._onDidChangeValue.fire({scope:e,key:i,target:this.getKeyTargets(e)[i],external:n})}get(e,t,i){return this.getStorage(t)?.get(e,i)}getBoolean(e,t,i){return this.getStorage(t)?.getBoolean(e,i)}getNumber(e,t,i){return this.getStorage(t)?.getNumber(e,i)}store(e,t,i,n,s=!1){if(xs(t)){this.remove(e,i,s);return}this.withPausedEmitters(()=>{this.updateKeyTarget(e,i,n),this.getStorage(i)?.set(e,t,s)})}remove(e,t,i=!1){this.withPausedEmitters(()=>{this.updateKeyTarget(e,t,void 0),this.getStorage(t)?.delete(e,i)})}withPausedEmitters(e){this._onDidChangeValue.pause(),this._onDidChangeTarget.pause();try{e()}finally{this._onDidChangeValue.resume(),this._onDidChangeTarget.resume()}}updateKeyTarget(e,t,i,n=!1){const s=this.getKeyTargets(t);typeof i=="number"?s[e]!==i&&(s[e]=i,this.getStorage(t)?.set(P1,JSON.stringify(s),n)):typeof s[e]=="number"&&(delete s[e],this.getStorage(t)?.set(P1,JSON.stringify(s),n))}get workspaceKeyTargets(){return this._workspaceKeyTargets||(this._workspaceKeyTargets=this.loadKeyTargets(1)),this._workspaceKeyTargets}get profileKeyTargets(){return this._profileKeyTargets||(this._profileKeyTargets=this.loadKeyTargets(0)),this._profileKeyTargets}get applicationKeyTargets(){return this._applicationKeyTargets||(this._applicationKeyTargets=this.loadKeyTargets(-1)),this._applicationKeyTargets}getKeyTargets(e){switch(e){case-1:return this.applicationKeyTargets;case 0:return this.profileKeyTargets;default:return this.workspaceKeyTargets}}loadKeyTargets(e){const t=this.getStorage(e);return t?TY(t):Object.create(null)}};Pw.DEFAULT_FLUSH_INTERVAL=60*1e3;let lD=Pw;class MY extends lD{constructor(){super(),this.applicationStorage=this._register(new ep(new RS,{hint:Wf.STORAGE_IN_MEMORY})),this.profileStorage=this._register(new ep(new RS,{hint:Wf.STORAGE_IN_MEMORY})),this.workspaceStorage=this._register(new ep(new RS,{hint:Wf.STORAGE_IN_MEMORY})),this._register(this.workspaceStorage.onDidChangeStorage(e=>this.emitDidChangeValue(1,e))),this._register(this.profileStorage.onDidChangeStorage(e=>this.emitDidChangeValue(0,e))),this._register(this.applicationStorage.onDidChangeStorage(e=>this.emitDidChangeValue(-1,e)))}getStorage(e){switch(e){case-1:return this.applicationStorage;case 0:return this.profileStorage;default:return this.workspaceStorage}}}function RY(o,e){const t={...e};for(const i in o){const n=o[i];t[i]=n!==void 0?oe(n):void 0}return t}const AY={keybindingLabelBackground:oe(Lj),keybindingLabelForeground:oe(xj),keybindingLabelBorder:oe(kj),keybindingLabelBottomBorder:oe(Dj),keybindingLabelShadow:oe(q_)},PY={buttonForeground:oe(j3),buttonSeparator:oe(dj),buttonBackground:oe(Im),buttonHoverBackground:oe(hj),buttonSecondaryForeground:oe(fj),buttonSecondaryBackground:oe(Nk),buttonSecondaryHoverBackground:oe(gj),buttonBorder:oe(uj)},OY={progressBarBackground:oe(yK)},O7={inputActiveOptionBorder:oe($3),inputActiveOptionForeground:oe(K3),inputActiveOptionBackground:oe(IT)};oe(Em),oe(mj),oe(pj),oe(_j),oe(bj),oe(Cj),oe(vj);oe(wj),oe(Sj),oe(yj);oe(no),oe(Z0),oe(q_),oe(Ye),oe(VK),oe(zK),oe(UK),oe(vK);const F7={inputBackground:oe(YK),inputForeground:oe(QK),inputBorder:oe(XK),inputValidationInfoBorder:oe(ij),inputValidationInfoBackground:oe(ej),inputValidationInfoForeground:oe(tj),inputValidationWarningBorder:oe(oj),inputValidationWarningBackground:oe(nj),inputValidationWarningForeground:oe(sj),inputValidationErrorBorder:oe(lj),inputValidationErrorBackground:oe(rj),inputValidationErrorForeground:oe(aj)},FY={listFilterWidgetBackground:oe(Hj),listFilterWidgetOutline:oe(Vj),listFilterWidgetNoMatchesOutline:oe(zj),listFilterWidgetShadow:oe(Uj),inputBoxStyles:F7,toggleStyles:O7},B7={badgeBackground:oe(T1),badgeForeground:oe(wK),badgeBorder:oe(Ye)};oe(WK),oe(BK),oe(kA),oe(kA),oe(HK);const hu={listBackground:void 0,listInactiveFocusForeground:void 0,listFocusBackground:oe(Ij),listFocusForeground:oe(Ej),listFocusOutline:oe(Nj),listActiveSelectionBackground:oe(Bh),listActiveSelectionForeground:oe(s_),listActiveSelectionIconForeground:oe(q3),listFocusAndSelectionOutline:oe(Tj),listFocusAndSelectionBackground:oe(Bh),listFocusAndSelectionForeground:oe(s_),listInactiveSelectionBackground:oe(Mj),listInactiveSelectionIconForeground:oe(Aj),listInactiveSelectionForeground:oe(Rj),listInactiveFocusBackground:oe(Pj),listInactiveFocusOutline:oe(Oj),listHoverBackground:oe(G3),listHoverForeground:oe(Z3),listDropOverBackground:oe(Fj),listDropBetweenBackground:oe(Bj),listSelectionOutline:oe(Ut),listHoverOutline:oe(Ut),treeIndentGuidesStroke:oe(Y3),treeInactiveIndentGuidesStroke:oe($j),treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:oe(ST),tableColumnsBorder:oe(Kj),tableOddRowsBackgroundColor:oe(jj)};function $g(o){return RY(o,hu)}const BY={selectBackground:oe(Q0),selectListBackground:oe(cj),selectForeground:oe(ET),decoratorRightForeground:oe(Q3),selectBorder:oe(NT),focusBorder:oe(ga),listFocusBackground:oe(PC),listInactiveSelectionIconForeground:oe(TT),listFocusForeground:oe(AC),listFocusOutline:gK(Ut,q.transparent.toString()),listHoverBackground:oe(G3),listHoverForeground:oe(Z3),listHoverOutline:oe(Ut),selectListBorder:oe(LT),listBackground:void 0,listActiveSelectionBackground:void 0,listActiveSelectionForeground:void 0,listActiveSelectionIconForeground:void 0,listFocusAndSelectionBackground:void 0,listDropOverBackground:void 0,listDropBetweenBackground:void 0,listInactiveSelectionBackground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusBackground:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listFocusAndSelectionForeground:void 0,listFocusAndSelectionOutline:void 0,listInactiveFocusForeground:void 0,tableColumnsBorder:void 0,tableOddRowsBackgroundColor:void 0,treeIndentGuidesStroke:void 0,treeInactiveIndentGuidesStroke:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},WY={shadowColor:oe(q_),borderColor:oe(qj),foregroundColor:oe(Gj),backgroundColor:oe(Zj),selectionForegroundColor:oe(Yj),selectionBackgroundColor:oe(Qj),selectionBorderColor:oe(Xj),separatorColor:oe(Jj),scrollbarShadow:oe(ST),scrollbarSliderBackground:oe(F3),scrollbarSliderHoverBackground:oe(B3),scrollbarSliderActiveBackground:oe(W3)};var hy=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Hn=function(o,e){return function(t,i){e(t,i,o)}};function HY(o,e,t,i){let n,s,r;if(Array.isArray(o))r=o,n=e,s=t;else{const c=e;r=o.getActions(c),n=t,s=i}const a=rl.getInstance(),l=a.keyStatus.altKey||(kn||Un)&&a.keyStatus.shiftKey;W7(r,n,l,s?c=>c===s:c=>c==="navigation")}function XT(o,e,t,i,n,s){let r,a,l,c,d;if(Array.isArray(o))d=o,r=e,a=t,l=i,c=n;else{const u=e;d=o.getActions(u),r=t,a=i,l=n,c=s}W7(d,r,!1,typeof a=="string"?u=>u===a:a,l,c)}function W7(o,e,t,i=r=>r==="navigation",n=()=>!1,s=!1){let r,a;Array.isArray(e)?(r=e,a=e):(r=e.primary,a=e.secondary);const l=new Set;for(const[c,d]of o){let h;i(c)?(h=r,h.length>0&&s&&h.push(new Gi)):(h=a,h.length>0&&h.push(new Gi));for(let u of d){t&&(u=u instanceof so&&u.alt?u.alt:u);const f=h.push(u);u instanceof R0&&l.add({group:c,action:u,index:f-1})}}for(const{group:c,action:d,index:h}of l){const u=i(c)?r:a,f=d.actions;n(d,c,u.length)&&u.splice(h,1,...f)}}let zh=class extends dy{constructor(e,t,i,n,s,r,a,l){super(void 0,e,{icon:!!(e.class||e.item.icon),label:!e.class&&!e.item.icon,draggable:t?.draggable,keybinding:t?.keybinding,hoverDelegate:t?.hoverDelegate}),this._options=t,this._keybindingService=i,this._notificationService=n,this._contextKeyService=s,this._themeService=r,this._contextMenuService=a,this._accessibilityService=l,this._wantsAltCommand=!1,this._itemClassDispose=this._register(new Dn),this._altKey=rl.getInstance()}get _menuItemAction(){return this._action}get _commandAction(){return this._wantsAltCommand&&this._menuItemAction.alt||this._menuItemAction}async onClick(e){e.preventDefault(),e.stopPropagation();try{await this.actionRunner.run(this._commandAction,this._context)}catch(t){this._notificationService.error(t)}}render(e){if(super.render(e),e.classList.add("menu-entry"),this.options.icon&&this._updateItemClass(this._menuItemAction.item),this._menuItemAction.alt){let t=!1;const i=()=>{const n=!!this._menuItemAction.alt?.enabled&&(!this._accessibilityService.isMotionReduced()||t)&&(this._altKey.keyStatus.altKey||this._altKey.keyStatus.shiftKey&&t);n!==this._wantsAltCommand&&(this._wantsAltCommand=n,this.updateLabel(),this.updateTooltip(),this.updateClass())};this._register(this._altKey.event(i)),this._register(U(e,"mouseleave",n=>{t=!1,i()})),this._register(U(e,"mouseenter",n=>{t=!0,i()})),i()}}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this._commandAction.label)}getTooltip(){const e=this._keybindingService.lookupKeybinding(this._commandAction.id,this._contextKeyService),t=e&&e.getLabel(),i=this._commandAction.tooltip||this._commandAction.label;let n=t?m("titleAndKb","{0} ({1})",i,t):i;if(!this._wantsAltCommand&&this._menuItemAction.alt?.enabled){const s=this._menuItemAction.alt.tooltip||this._menuItemAction.alt.label,r=this._keybindingService.lookupKeybinding(this._menuItemAction.alt.id,this._contextKeyService),a=r&&r.getLabel(),l=a?m("titleAndKb","{0} ({1})",s,a):s;n=m("titleAndKbAndAlt",`{0} +[{1}] {2}`,n,KT.modifierLabels[Ns].altKey,l)}return n}updateClass(){this.options.icon&&(this._commandAction!==this._menuItemAction?this._menuItemAction.alt&&this._updateItemClass(this._menuItemAction.alt.item):this._updateItemClass(this._menuItemAction.item))}_updateItemClass(e){this._itemClassDispose.value=void 0;const{element:t,label:i}=this;if(!t||!i)return;const n=this._commandAction.checked&&NY(e.toggled)&&e.toggled.icon?e.toggled.icon:e.icon;if(n)if(Ee.isThemeIcon(n)){const s=Ee.asClassNameArray(n);i.classList.add(...s),this._itemClassDispose.value=_e(()=>{i.classList.remove(...s)})}else i.style.backgroundImage=j0(this._themeService.getColorTheme().type)?Dl(n.dark):Dl(n.light),i.classList.add("icon"),this._itemClassDispose.value=No(_e(()=>{i.style.backgroundImage="",i.classList.remove("icon")}),this._themeService.onDidColorThemeChange(()=>{this.updateClass()}))}};zh=hy([Hn(2,vt),Hn(3,mn),Hn(4,De),Hn(5,en),Hn(6,Lr),Hn(7,ms)],zh);class JT extends zh{render(e){this.options.label=!0,this.options.icon=!1,super.render(e),e.classList.add("text-only"),e.classList.toggle("use-comma",this._options?.useComma??!1)}updateLabel(){const e=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!e)return super.updateLabel();if(this.label){const t=JT._symbolPrintEnter(e);this._options?.conversational?this.label.textContent=m({key:"content2",comment:['A label with keybindg like "ESC to dismiss"']},"{1} to {0}",this._action.label,t):this.label.textContent=m({key:"content",comment:["A label","A keybinding"]},"{0} ({1})",this._action.label,t)}}static _symbolPrintEnter(e){return e.getLabel()?.replace(/\benter\b/gi,"⏎").replace(/\bEscape\b/gi,"Esc")}}let cD=class extends qC{constructor(e,t,i,n,s){const r={...t,menuAsChild:t?.menuAsChild??!1,classNames:t?.classNames??(Ee.isThemeIcon(e.item.icon)?Ee.asClassName(e.item.icon):void 0),keybindingProvider:t?.keybindingProvider??(a=>i.lookupKeybinding(a.id))};super(e,{getActions:()=>e.actions},n,r),this._keybindingService=i,this._contextMenuService=n,this._themeService=s}render(e){super.render(e),ai(this.element),e.classList.add("menu-entry");const t=this._action,{icon:i}=t.item;if(i&&!Ee.isThemeIcon(i)){this.element.classList.add("icon");const n=()=>{this.element&&(this.element.style.backgroundImage=j0(this._themeService.getColorTheme().type)?Dl(i.dark):Dl(i.light))};n(),this._register(this._themeService.onDidColorThemeChange(()=>{n()}))}}};cD=hy([Hn(2,vt),Hn(3,Lr),Hn(4,en)],cD);let dD=class extends or{constructor(e,t,i,n,s,r,a,l){super(null,e),this._keybindingService=i,this._notificationService=n,this._contextMenuService=s,this._menuService=r,this._instaService=a,this._storageService=l,this._container=null,this._options=t,this._storageKey=`${e.item.submenu.id}_lastActionId`;let c;const d=t?.persistLastActionId?l.get(this._storageKey,1):void 0;d&&(c=e.actions.find(u=>d===u.id)),c||(c=e.actions[0]),this._defaultAction=this._instaService.createInstance(zh,c,{keybinding:this._getDefaultActionKeybindingLabel(c)});const h={keybindingProvider:u=>this._keybindingService.lookupKeybinding(u.id),...t,menuAsChild:t?.menuAsChild??!0,classNames:t?.classNames??["codicon","codicon-chevron-down"],actionRunner:t?.actionRunner??new Oh};this._dropdown=new qC(e,e.actions,this._contextMenuService,h),this._register(this._dropdown.actionRunner.onDidRun(u=>{u.action instanceof so&&this.update(u.action)}))}update(e){this._options?.persistLastActionId&&this._storageService.store(this._storageKey,e.id,1,1),this._defaultAction.dispose(),this._defaultAction=this._instaService.createInstance(zh,e,{keybinding:this._getDefaultActionKeybindingLabel(e)}),this._defaultAction.actionRunner=new class extends Oh{async runAction(t,i){await t.run(void 0)}},this._container&&this._defaultAction.render(iT(this._container,ce(".action-container")))}_getDefaultActionKeybindingLabel(e){let t;if(this._options?.renderKeybindingWithDefaultActionLabel){const i=this._keybindingService.lookupKeybinding(e.id);i&&(t=`(${i.getLabel()})`)}return t}setActionContext(e){super.setActionContext(e),this._defaultAction.setActionContext(e),this._dropdown.setActionContext(e)}render(e){this._container=e,super.render(this._container),this._container.classList.add("monaco-dropdown-with-default");const t=ce(".action-container");this._defaultAction.render(Z(this._container,t)),this._register(U(t,ee.KEY_DOWN,n=>{const s=new Nt(n);s.equals(17)&&(this._defaultAction.element.tabIndex=-1,this._dropdown.focus(),s.stopPropagation())}));const i=ce(".dropdown-action-container");this._dropdown.render(Z(this._container,i)),this._register(U(i,ee.KEY_DOWN,n=>{const s=new Nt(n);s.equals(15)&&(this._defaultAction.element.tabIndex=0,this._dropdown.setFocusable(!1),this._defaultAction.element?.focus(),s.stopPropagation())}))}focus(e){e?this._dropdown.focus():(this._defaultAction.element.tabIndex=0,this._defaultAction.element.focus())}blur(){this._defaultAction.element.tabIndex=-1,this._dropdown.blur(),this._container.blur()}setFocusable(e){e?this._defaultAction.element.tabIndex=0:(this._defaultAction.element.tabIndex=-1,this._dropdown.setFocusable(!1))}dispose(){this._defaultAction.dispose(),this._dropdown.dispose(),super.dispose()}};dD=hy([Hn(2,vt),Hn(3,mn),Hn(4,Lr),Hn(5,yr),Hn(6,ke),Hn(7,du)],dD);let hD=class extends DY{constructor(e,t){super(null,e,e.actions.map(i=>({text:i.id===Gi.ID?"─────────":i.label,isDisabled:!i.enabled})),0,t,BY,{ariaLabel:e.tooltip,optionsAsChildren:!0}),this.select(Math.max(0,e.actions.findIndex(i=>i.checked)))}render(e){super.render(e),e.style.borderColor=oe(NT)}runAction(e,t){const i=this.action.actions[t];i&&this.actionRunner.run(i)}};hD=hy([Hn(1,lu)],hD);function H7(o,e,t){return e instanceof so?o.createInstance(zh,e,t):e instanceof Zm?e.item.isSelection?o.createInstance(hD,e):e.item.rememberDefaultAction?o.createInstance(dD,e,{...t,persistLastActionId:!0}):o.createInstance(cD,e,t):void 0}class oo extends z{constructor(e,t={}){super(),this._actionRunnerDisposables=this._register(new X),this.viewItemDisposables=this._register(new RN),this.triggerKeyDown=!1,this.focusable=!0,this._onDidBlur=this._register(new A),this.onDidBlur=this._onDidBlur.event,this._onDidCancel=this._register(new A({onWillAddFirstListener:()=>this.cancelHasListener=!0})),this.onDidCancel=this._onDidCancel.event,this.cancelHasListener=!1,this._onDidRun=this._register(new A),this.onDidRun=this._onDidRun.event,this._onWillRun=this._register(new A),this.onWillRun=this._onWillRun.event,this.options=t,this._context=t.context??null,this._orientation=this.options.orientation??0,this._triggerKeys={keyDown:this.options.triggerKeys?.keyDown??!1,keys:this.options.triggerKeys?.keys??[3,10]},this._hoverDelegate=t.hoverDelegate??this._register(QT()),this.options.actionRunner?this._actionRunner=this.options.actionRunner:(this._actionRunner=new Oh,this._actionRunnerDisposables.add(this._actionRunner)),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(s=>this._onDidRun.fire(s))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(s=>this._onWillRun.fire(s))),this.viewItems=[],this.focusedItem=void 0,this.domNode=document.createElement("div"),this.domNode.className="monaco-action-bar";let i,n;switch(this._orientation){case 0:i=[15],n=[17];break;case 1:i=[16],n=[18],this.domNode.className+=" vertical";break}this._register(U(this.domNode,ee.KEY_DOWN,s=>{const r=new Nt(s);let a=!0;const l=typeof this.focusedItem=="number"?this.viewItems[this.focusedItem]:void 0;i&&(r.equals(i[0])||r.equals(i[1]))?a=this.focusPrevious():n&&(r.equals(n[0])||r.equals(n[1]))?a=this.focusNext():r.equals(9)&&this.cancelHasListener?this._onDidCancel.fire():r.equals(14)?a=this.focusFirst():r.equals(13)?a=this.focusLast():r.equals(2)&&l instanceof or&&l.trapsArrowNavigation?a=this.focusNext(void 0,!0):this.isTriggerKeyEvent(r)?this._triggerKeys.keyDown?this.doTrigger(r):this.triggerKeyDown=!0:a=!1,a&&(r.preventDefault(),r.stopPropagation())})),this._register(U(this.domNode,ee.KEY_UP,s=>{const r=new Nt(s);this.isTriggerKeyEvent(r)?(!this._triggerKeys.keyDown&&this.triggerKeyDown&&(this.triggerKeyDown=!1,this.doTrigger(r)),r.preventDefault(),r.stopPropagation()):(r.equals(2)||r.equals(1026)||r.equals(16)||r.equals(18)||r.equals(15)||r.equals(17))&&this.updateFocusedItem()})),this.focusTracker=this._register(Ph(this.domNode)),this._register(this.focusTracker.onDidBlur(()=>{(Xi()===this.domNode||!yi(Xi(),this.domNode))&&(this._onDidBlur.fire(),this.previouslyFocusedItem=this.focusedItem,this.focusedItem=void 0,this.triggerKeyDown=!1)})),this._register(this.focusTracker.onDidFocus(()=>this.updateFocusedItem())),this.actionsList=document.createElement("ul"),this.actionsList.className="actions-container",this.options.highlightToggledItems&&this.actionsList.classList.add("highlight-toggled"),this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"),this.options.ariaLabel&&this.actionsList.setAttribute("aria-label",this.options.ariaLabel),this.domNode.appendChild(this.actionsList),e.appendChild(this.domNode)}refreshRole(){this.length()>=1?this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"):this.actionsList.setAttribute("role","presentation")}setFocusable(e){if(this.focusable=e,this.focusable){const t=this.viewItems.find(i=>i instanceof or&&i.isEnabled());t instanceof or&&t.setFocusable(!0)}else this.viewItems.forEach(t=>{t instanceof or&&t.setFocusable(!1)})}isTriggerKeyEvent(e){let t=!1;return this._triggerKeys.keys.forEach(i=>{t=t||e.equals(i)}),t}updateFocusedItem(){for(let e=0;et.setActionContext(e))}get actionRunner(){return this._actionRunner}set actionRunner(e){this._actionRunner=e,this._actionRunnerDisposables.clear(),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(t=>this._onDidRun.fire(t))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(t=>this._onWillRun.fire(t))),this.viewItems.forEach(t=>t.actionRunner=e)}getContainer(){return this.domNode}getAction(e){if(typeof e=="number")return this.viewItems[e]?.action;if(Ei(e)){for(;e.parentElement!==this.actionsList;){if(!e.parentElement)return;e=e.parentElement}for(let t=0;t{const r=document.createElement("li");r.className="action-item",r.setAttribute("role","presentation");let a;const l={hoverDelegate:this._hoverDelegate,...t,isTabList:this.options.ariaRole==="tablist"};this.options.actionViewItemProvider&&(a=this.options.actionViewItemProvider(s,l)),a||(a=new dy(this.context,s,l)),this.options.allowContextMenu||this.viewItemDisposables.set(a,U(r,ee.CONTEXT_MENU,c=>{je.stop(c,!0)})),a.actionRunner=this._actionRunner,a.setActionContext(this.context),a.render(r),this.focusable&&a instanceof or&&this.viewItems.length===0&&a.setFocusable(!0),n===null||n<0||n>=this.actionsList.children.length?(this.actionsList.appendChild(r),this.viewItems.push(a)):(this.actionsList.insertBefore(r,this.actionsList.children[n]),this.viewItems.splice(n,0,a),n++)}),typeof this.focusedItem=="number"&&this.focus(this.focusedItem),this.refreshRole()}clear(){this.isEmpty()||(this.viewItems=xt(this.viewItems),this.viewItemDisposables.clearAndDisposeAll(),xn(this.actionsList),this.refreshRole())}length(){return this.viewItems.length}isEmpty(){return this.viewItems.length===0}focus(e){let t=!1,i;if(e===void 0?t=!0:typeof e=="number"?i=e:typeof e=="boolean"&&(t=e),t&&typeof this.focusedItem>"u"){const n=this.viewItems.findIndex(s=>s.isEnabled());this.focusedItem=n===-1?void 0:n,this.updateFocus(void 0,void 0,!0)}else i!==void 0&&(this.focusedItem=i),this.updateFocus(void 0,void 0,!0)}focusFirst(){return this.focusedItem=this.length()-1,this.focusNext(!0)}focusLast(){return this.focusedItem=0,this.focusPrevious(!0)}focusNext(e,t){if(typeof this.focusedItem>"u")this.focusedItem=this.viewItems.length-1;else if(this.viewItems.length<=1)return!1;const i=this.focusedItem;let n;do{if(!e&&this.options.preventLoopNavigation&&this.focusedItem+1>=this.viewItems.length)return this.focusedItem=i,!1;this.focusedItem=(this.focusedItem+1)%this.viewItems.length,n=this.viewItems[this.focusedItem]}while(this.focusedItem!==i&&(this.options.focusOnlyEnabledItems&&!n.isEnabled()||n.action.id===Gi.ID));return this.updateFocus(void 0,void 0,t),!0}focusPrevious(e){if(typeof this.focusedItem>"u")this.focusedItem=0;else if(this.viewItems.length<=1)return!1;const t=this.focusedItem;let i;do{if(this.focusedItem=this.focusedItem-1,this.focusedItem<0){if(!e&&this.options.preventLoopNavigation)return this.focusedItem=t,!1;this.focusedItem=this.viewItems.length-1}i=this.viewItems[this.focusedItem]}while(this.focusedItem!==t&&(this.options.focusOnlyEnabledItems&&!i.isEnabled()||i.action.id===Gi.ID));return this.updateFocus(!0),!0}updateFocus(e,t,i=!1){typeof this.focusedItem>"u"&&this.actionsList.focus({preventScroll:t}),this.previouslyFocusedItem!==void 0&&this.previouslyFocusedItem!==this.focusedItem&&this.viewItems[this.previouslyFocusedItem]?.blur();const n=this.focusedItem!==void 0?this.viewItems[this.focusedItem]:void 0;if(n){let s=!0;tC(n.focus)||(s=!1),this.options.focusOnlyEnabledItems&&tC(n.isEnabled)&&!n.isEnabled()&&(s=!1),n.action.id===Gi.ID&&(s=!1),s?(i||this.previouslyFocusedItem!==this.focusedItem)&&(n.focus(e),this.previouslyFocusedItem=this.focusedItem):(this.actionsList.focus({preventScroll:t}),this.previouslyFocusedItem=void 0),s&&n.showHover?.()}}doTrigger(e){if(typeof this.focusedItem>"u")return;const t=this.viewItems[this.focusedItem];if(t instanceof or){const i=t._context===null||t._context===void 0?e:t._context;this.run(t._action,i)}}async run(e,t){await this._actionRunner.run(e,t)}dispose(){this._context=void 0,this.viewItems=xt(this.viewItems),this.getContainer().remove(),super.dispose()}}const uD=/\(&([^\s&])\)|(^|[^&])&([^\s&])/,AS=/(&)?(&)([^\s&])/g;var GC;(function(o){o[o.Right=0]="Right",o[o.Left=1]="Left"})(GC||(GC={}));var fD;(function(o){o[o.Above=0]="Above",o[o.Below=1]="Below"})(fD||(fD={}));class Hf extends oo{constructor(e,t,i,n){e.classList.add("monaco-menu-container"),e.setAttribute("role","presentation");const s=document.createElement("div");s.classList.add("monaco-menu"),s.setAttribute("role","presentation"),super(s,{orientation:1,actionViewItemProvider:c=>this.doGetActionViewItem(c,i,r),context:i.context,actionRunner:i.actionRunner,ariaLabel:i.ariaLabel,ariaRole:"menu",focusOnlyEnabledItems:!0,triggerKeys:{keys:[3,...Ue||Un?[10]:[]],keyDown:!0}}),this.menuStyles=n,this.menuElement=s,this.actionsList.tabIndex=0,this.initializeOrUpdateStyleSheet(e,n),this._register(fn.addTarget(s)),this._register(U(s,ee.KEY_DOWN,c=>{new Nt(c).equals(2)&&c.preventDefault()})),i.enableMnemonics&&this._register(U(s,ee.KEY_DOWN,c=>{const d=c.key.toLocaleLowerCase();if(this.mnemonics.has(d)){je.stop(c,!0);const h=this.mnemonics.get(d);if(h.length===1&&(h[0]instanceof _P&&h[0].container&&this.focusItemByElement(h[0].container),h[0].onClick(c)),h.length>1){const u=h.shift();u&&u.container&&(this.focusItemByElement(u.container),h.push(u)),this.mnemonics.set(d,h)}}})),Un&&this._register(U(s,ee.KEY_DOWN,c=>{const d=new Nt(c);d.equals(14)||d.equals(11)?(this.focusedItem=this.viewItems.length-1,this.focusNext(),je.stop(c,!0)):(d.equals(13)||d.equals(12))&&(this.focusedItem=0,this.focusPrevious(),je.stop(c,!0))})),this._register(U(this.domNode,ee.MOUSE_OUT,c=>{const d=c.relatedTarget;yi(d,this.domNode)||(this.focusedItem=void 0,this.updateFocus(),c.stopPropagation())})),this._register(U(this.actionsList,ee.MOUSE_OVER,c=>{let d=c.target;if(!(!d||!yi(d,this.actionsList)||d===this.actionsList)){for(;d.parentElement!==this.actionsList&&d.parentElement!==null;)d=d.parentElement;if(d.classList.contains("action-item")){const h=this.focusedItem;this.setFocusedItem(d),h!==this.focusedItem&&this.updateFocus()}}})),this._register(fn.addTarget(this.actionsList)),this._register(U(this.actionsList,St.Tap,c=>{let d=c.initialTarget;if(!(!d||!yi(d,this.actionsList)||d===this.actionsList)){for(;d.parentElement!==this.actionsList&&d.parentElement!==null;)d=d.parentElement;if(d.classList.contains("action-item")){const h=this.focusedItem;this.setFocusedItem(d),h!==this.focusedItem&&this.updateFocus()}}}));const r={parent:this};this.mnemonics=new Map,this.scrollableElement=this._register(new J0(s,{alwaysConsumeMouseWheel:!0,horizontal:2,vertical:3,verticalScrollbarSize:7,handleMouseWheel:!0,useShadows:!0}));const a=this.scrollableElement.getDomNode();a.style.position="",this.styleScrollElement(a,n),this._register(U(s,St.Change,c=>{je.stop(c,!0);const d=this.scrollableElement.getScrollPosition().scrollTop;this.scrollableElement.setScrollPosition({scrollTop:d-c.translationY})})),this._register(U(a,ee.MOUSE_UP,c=>{c.preventDefault()}));const l=fe(e);s.style.maxHeight=`${Math.max(10,l.innerHeight-e.getBoundingClientRect().top-35)}px`,t=t.filter((c,d)=>i.submenuIds?.has(c.id)?(console.warn(`Found submenu cycle: ${c.id}`),!1):!(c instanceof Gi&&(d===t.length-1||d===0||t[d-1]instanceof Gi))),this.push(t,{icon:!0,label:!0,isMenu:!0}),e.appendChild(this.scrollableElement.getDomNode()),this.scrollableElement.scanDomNode(),this.viewItems.filter(c=>!(c instanceof bP)).forEach((c,d,h)=>{c.updatePositionInSet(d+1,h.length)})}initializeOrUpdateStyleSheet(e,t){this.styleSheet||(_C(e)?this.styleSheet=Vs(e):(Hf.globalStyleSheet||(Hf.globalStyleSheet=Vs()),this.styleSheet=Hf.globalStyleSheet)),this.styleSheet.textContent=zY(t,_C(e))}styleScrollElement(e,t){const i=t.foregroundColor??"",n=t.backgroundColor??"",s=t.borderColor?`1px solid ${t.borderColor}`:"",r="5px",a=t.shadowColor?`0 2px 8px ${t.shadowColor}`:"";e.style.outline=s,e.style.borderRadius=r,e.style.color=i,e.style.backgroundColor=n,e.style.boxShadow=a}getContainer(){return this.scrollableElement.getDomNode()}get onScroll(){return this.scrollableElement.onScroll}focusItemByElement(e){const t=this.focusedItem;this.setFocusedItem(e),t!==this.focusedItem&&this.updateFocus()}setFocusedItem(e){for(let t=0;t{this.element&&(this._register(U(this.element,ee.MOUSE_UP,s=>{if(je.stop(s,!0),Mo){if(new ur(fe(this.element),s).rightButton)return;this.onClick(s)}else setTimeout(()=>{this.onClick(s)},0)})),this._register(U(this.element,ee.CONTEXT_MENU,s=>{je.stop(s,!0)})))},100),this._register(this.runOnceToEnableMouseUp)}render(e){super.render(e),this.element&&(this.container=e,this.item=Z(this.element,ce("a.action-menu-item")),this._action.id===Gi.ID?this.item.setAttribute("role","presentation"):(this.item.setAttribute("role","menuitem"),this.mnemonic&&this.item.setAttribute("aria-keyshortcuts",`${this.mnemonic}`)),this.check=Z(this.item,ce("span.menu-item-check"+Ee.asCSSSelector(ie.menuSelection))),this.check.setAttribute("role","none"),this.label=Z(this.item,ce("span.action-label")),this.options.label&&this.options.keybinding&&(Z(this.item,ce("span.keybinding")).textContent=this.options.keybinding),this.runOnceToEnableMouseUp.schedule(),this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked(),this.applyStyle())}blur(){super.blur(),this.applyStyle()}focus(){super.focus(),this.item?.focus(),this.applyStyle()}updatePositionInSet(e,t){this.item&&(this.item.setAttribute("aria-posinset",`${e}`),this.item.setAttribute("aria-setsize",`${t}`))}updateLabel(){if(this.label&&this.options.label){xn(this.label);let e=f7(this.action.label);if(e){const t=VY(e);this.options.enableMnemonics||(e=t),this.label.setAttribute("aria-label",t.replace(/&&/g,"&"));const i=uD.exec(e);if(i){e=Km(e),AS.lastIndex=0;let n=AS.exec(e);for(;n&&n[1];)n=AS.exec(e);const s=r=>r.replace(/&&/g,"&");n?this.label.append(k0(s(e.substr(0,n.index))," "),ce("u",{"aria-hidden":"true"},n[3]),aH(s(e.substr(n.index+n[0].length))," ")):this.label.innerText=s(e).trim(),this.item?.setAttribute("aria-keyshortcuts",(i[1]?i[1]:i[3]).toLocaleLowerCase())}else this.label.innerText=e.replace(/&&/g,"&").trim()}}}updateTooltip(){}updateClass(){this.cssClass&&this.item&&this.item.classList.remove(...this.cssClass.split(" ")),this.options.icon&&this.label?(this.cssClass=this.action.class||"",this.label.classList.add("icon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" ")),this.updateEnabled()):this.label&&this.label.classList.remove("icon")}updateEnabled(){this.action.enabled?(this.element&&(this.element.classList.remove("disabled"),this.element.removeAttribute("aria-disabled")),this.item&&(this.item.classList.remove("disabled"),this.item.removeAttribute("aria-disabled"),this.item.tabIndex=0)):(this.element&&(this.element.classList.add("disabled"),this.element.setAttribute("aria-disabled","true")),this.item&&(this.item.classList.add("disabled"),this.item.setAttribute("aria-disabled","true")))}updateChecked(){if(!this.item)return;const e=this.action.checked;this.item.classList.toggle("checked",!!e),e!==void 0?(this.item.setAttribute("role","menuitemcheckbox"),this.item.setAttribute("aria-checked",e?"true":"false")):(this.item.setAttribute("role","menuitem"),this.item.setAttribute("aria-checked",""))}getMnemonic(){return this.mnemonic}applyStyle(){const e=this.element&&this.element.classList.contains("focused"),t=e&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor,i=e&&this.menuStyle.selectionBackgroundColor?this.menuStyle.selectionBackgroundColor:void 0,n=e&&this.menuStyle.selectionBorderColor?`1px solid ${this.menuStyle.selectionBorderColor}`:"",s=e&&this.menuStyle.selectionBorderColor?"-1px":"";this.item&&(this.item.style.color=t??"",this.item.style.backgroundColor=i??"",this.item.style.outline=n,this.item.style.outlineOffset=s),this.check&&(this.check.style.color=t??"")}}class _P extends V7{constructor(e,t,i,n,s){super(e,e,n,s),this.submenuActions=t,this.parentData=i,this.submenuOptions=n,this.mysubmenu=null,this.submenuDisposables=this._register(new X),this.mouseOver=!1,this.expandDirection=n&&n.expandDirection!==void 0?n.expandDirection:{horizontal:GC.Right,vertical:fD.Below},this.showScheduler=new ci(()=>{this.mouseOver&&(this.cleanupExistingSubmenu(!1),this.createSubmenu(!1))},250),this.hideScheduler=new ci(()=>{this.element&&!yi(Xi(),this.element)&&this.parentData.submenu===this.mysubmenu&&(this.parentData.parent.focus(!1),this.cleanupExistingSubmenu(!0))},750)}render(e){super.render(e),this.element&&(this.item&&(this.item.classList.add("monaco-submenu-item"),this.item.tabIndex=0,this.item.setAttribute("aria-haspopup","true"),this.updateAriaExpanded("false"),this.submenuIndicator=Z(this.item,ce("span.submenu-indicator"+Ee.asCSSSelector(ie.menuSubmenu))),this.submenuIndicator.setAttribute("aria-hidden","true")),this._register(U(this.element,ee.KEY_UP,t=>{const i=new Nt(t);(i.equals(17)||i.equals(3))&&(je.stop(t,!0),this.createSubmenu(!0))})),this._register(U(this.element,ee.KEY_DOWN,t=>{const i=new Nt(t);Xi()===this.item&&(i.equals(17)||i.equals(3))&&je.stop(t,!0)})),this._register(U(this.element,ee.MOUSE_OVER,t=>{this.mouseOver||(this.mouseOver=!0,this.showScheduler.schedule())})),this._register(U(this.element,ee.MOUSE_LEAVE,t=>{this.mouseOver=!1})),this._register(U(this.element,ee.FOCUS_OUT,t=>{this.element&&!yi(Xi(),this.element)&&this.hideScheduler.schedule()})),this._register(this.parentData.parent.onScroll(()=>{this.parentData.submenu===this.mysubmenu&&(this.parentData.parent.focus(!1),this.cleanupExistingSubmenu(!0))})))}updateEnabled(){}onClick(e){je.stop(e,!0),this.cleanupExistingSubmenu(!1),this.createSubmenu(!0)}cleanupExistingSubmenu(e){if(this.parentData.submenu&&(e||this.parentData.submenu!==this.mysubmenu)){try{this.parentData.submenu.dispose()}catch{}this.parentData.submenu=void 0,this.updateAriaExpanded("false"),this.submenuContainer&&(this.submenuDisposables.clear(),this.submenuContainer=void 0)}}calculateSubmenuMenuLayout(e,t,i,n){const s={top:0,left:0};return s.left=nf(e.width,t.width,{position:n.horizontal===GC.Right?0:1,offset:i.left,size:i.width}),s.left>=i.left&&s.left{new Nt(d).equals(15)&&(je.stop(d,!0),this.parentData.parent.focus(),this.cleanupExistingSubmenu(!0))})),this.submenuDisposables.add(U(this.submenuContainer,ee.KEY_DOWN,d=>{new Nt(d).equals(15)&&je.stop(d,!0)})),this.submenuDisposables.add(this.parentData.submenu.onDidCancel(()=>{this.parentData.parent.focus(),this.cleanupExistingSubmenu(!0)})),this.parentData.submenu.focus(e),this.mysubmenu=this.parentData.submenu}}updateAriaExpanded(e){this.item&&this.item?.setAttribute("aria-expanded",e)}applyStyle(){super.applyStyle();const t=this.element&&this.element.classList.contains("focused")&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor;this.submenuIndicator&&(this.submenuIndicator.style.color=t??"")}dispose(){super.dispose(),this.hideScheduler.dispose(),this.mysubmenu&&(this.mysubmenu.dispose(),this.mysubmenu=null),this.submenuContainer&&(this.submenuContainer=void 0)}}class bP extends dy{constructor(e,t,i,n){super(e,t,i),this.menuStyles=n}render(e){super.render(e),this.label&&(this.label.style.borderBottomColor=this.menuStyles.separatorColor?`${this.menuStyles.separatorColor}`:"")}}function VY(o){const e=uD,t=e.exec(o);if(!t)return o;const i=!t[1];return o.replace(e,i?"$2$3":"").trim()}function CP(o){const e=rF()[o.id];return`.codicon-${o.id}:before { content: '\\${e.toString(16)}'; }`}function zY(o,e){let t=` +.monaco-menu { + font-size: 13px; + border-radius: 5px; + min-width: 160px; +} + +${CP(ie.menuSelection)} +${CP(ie.menuSubmenu)} + +.monaco-menu .monaco-action-bar { + text-align: right; + overflow: hidden; + white-space: nowrap; +} + +.monaco-menu .monaco-action-bar .actions-container { + display: flex; + margin: 0 auto; + padding: 0; + width: 100%; + justify-content: flex-end; +} + +.monaco-menu .monaco-action-bar.vertical .actions-container { + display: inline-block; +} + +.monaco-menu .monaco-action-bar.reverse .actions-container { + flex-direction: row-reverse; +} + +.monaco-menu .monaco-action-bar .action-item { + cursor: pointer; + display: inline-block; + transition: transform 50ms ease; + position: relative; /* DO NOT REMOVE - this is the key to preventing the ghosting icon bug in Chrome 42 */ +} + +.monaco-menu .monaco-action-bar .action-item.disabled { + cursor: default; +} + +.monaco-menu .monaco-action-bar .action-item .icon, +.monaco-menu .monaco-action-bar .action-item .codicon { + display: inline-block; +} + +.monaco-menu .monaco-action-bar .action-item .codicon { + display: flex; + align-items: center; +} + +.monaco-menu .monaco-action-bar .action-label { + font-size: 11px; + margin-right: 4px; +} + +.monaco-menu .monaco-action-bar .action-item.disabled .action-label, +.monaco-menu .monaco-action-bar .action-item.disabled .action-label:hover { + color: var(--vscode-disabledForeground); +} + +/* Vertical actions */ + +.monaco-menu .monaco-action-bar.vertical { + text-align: left; +} + +.monaco-menu .monaco-action-bar.vertical .action-item { + display: block; +} + +.monaco-menu .monaco-action-bar.vertical .action-label.separator { + display: block; + border-bottom: 1px solid var(--vscode-menu-separatorBackground); + padding-top: 1px; + padding: 30px; +} + +.monaco-menu .secondary-actions .monaco-action-bar .action-label { + margin-left: 6px; +} + +/* Action Items */ +.monaco-menu .monaco-action-bar .action-item.select-container { + overflow: hidden; /* somehow the dropdown overflows its container, we prevent it here to not push */ + flex: 1; + max-width: 170px; + min-width: 60px; + display: flex; + align-items: center; + justify-content: center; + margin-right: 10px; +} + +.monaco-menu .monaco-action-bar.vertical { + margin-left: 0; + overflow: visible; +} + +.monaco-menu .monaco-action-bar.vertical .actions-container { + display: block; +} + +.monaco-menu .monaco-action-bar.vertical .action-item { + padding: 0; + transform: none; + display: flex; +} + +.monaco-menu .monaco-action-bar.vertical .action-item.active { + transform: none; +} + +.monaco-menu .monaco-action-bar.vertical .action-menu-item { + flex: 1 1 auto; + display: flex; + height: 2em; + align-items: center; + position: relative; + margin: 0 4px; + border-radius: 4px; +} + +.monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .keybinding, +.monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .keybinding { + opacity: unset; +} + +.monaco-menu .monaco-action-bar.vertical .action-label { + flex: 1 1 auto; + text-decoration: none; + padding: 0 1em; + background: none; + font-size: 12px; + line-height: 1; +} + +.monaco-menu .monaco-action-bar.vertical .keybinding, +.monaco-menu .monaco-action-bar.vertical .submenu-indicator { + display: inline-block; + flex: 2 1 auto; + padding: 0 1em; + text-align: right; + font-size: 12px; + line-height: 1; +} + +.monaco-menu .monaco-action-bar.vertical .submenu-indicator { + height: 100%; +} + +.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon { + font-size: 16px !important; + display: flex; + align-items: center; +} + +.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon::before { + margin-left: auto; + margin-right: -20px; +} + +.monaco-menu .monaco-action-bar.vertical .action-item.disabled .keybinding, +.monaco-menu .monaco-action-bar.vertical .action-item.disabled .submenu-indicator { + opacity: 0.4; +} + +.monaco-menu .monaco-action-bar.vertical .action-label:not(.separator) { + display: inline-block; + box-sizing: border-box; + margin: 0; +} + +.monaco-menu .monaco-action-bar.vertical .action-item { + position: static; + overflow: visible; +} + +.monaco-menu .monaco-action-bar.vertical .action-item .monaco-submenu { + position: absolute; +} + +.monaco-menu .monaco-action-bar.vertical .action-label.separator { + width: 100%; + height: 0px !important; + opacity: 1; +} + +.monaco-menu .monaco-action-bar.vertical .action-label.separator.text { + padding: 0.7em 1em 0.1em 1em; + font-weight: bold; + opacity: 1; +} + +.monaco-menu .monaco-action-bar.vertical .action-label:hover { + color: inherit; +} + +.monaco-menu .monaco-action-bar.vertical .menu-item-check { + position: absolute; + visibility: hidden; + width: 1em; + height: 100%; +} + +.monaco-menu .monaco-action-bar.vertical .action-menu-item.checked .menu-item-check { + visibility: visible; + display: flex; + align-items: center; + justify-content: center; +} + +/* Context Menu */ + +.context-view.monaco-menu-container { + outline: 0; + border: none; + animation: fadeIn 0.083s linear; + -webkit-app-region: no-drag; +} + +.context-view.monaco-menu-container :focus, +.context-view.monaco-menu-container .monaco-action-bar.vertical:focus, +.context-view.monaco-menu-container .monaco-action-bar.vertical :focus { + outline: 0; +} + +.hc-black .context-view.monaco-menu-container, +.hc-light .context-view.monaco-menu-container, +:host-context(.hc-black) .context-view.monaco-menu-container, +:host-context(.hc-light) .context-view.monaco-menu-container { + box-shadow: none; +} + +.hc-black .monaco-menu .monaco-action-bar.vertical .action-item.focused, +.hc-light .monaco-menu .monaco-action-bar.vertical .action-item.focused, +:host-context(.hc-black) .monaco-menu .monaco-action-bar.vertical .action-item.focused, +:host-context(.hc-light) .monaco-menu .monaco-action-bar.vertical .action-item.focused { + background: none; +} + +/* Vertical Action Bar Styles */ + +.monaco-menu .monaco-action-bar.vertical { + padding: 4px 0; +} + +.monaco-menu .monaco-action-bar.vertical .action-menu-item { + height: 2em; +} + +.monaco-menu .monaco-action-bar.vertical .action-label:not(.separator), +.monaco-menu .monaco-action-bar.vertical .keybinding { + font-size: inherit; + padding: 0 2em; + max-height: 100%; +} + +.monaco-menu .monaco-action-bar.vertical .menu-item-check { + font-size: inherit; + width: 2em; +} + +.monaco-menu .monaco-action-bar.vertical .action-label.separator { + font-size: inherit; + margin: 5px 0 !important; + padding: 0; + border-radius: 0; +} + +.linux .monaco-menu .monaco-action-bar.vertical .action-label.separator, +:host-context(.linux) .monaco-menu .monaco-action-bar.vertical .action-label.separator { + margin-left: 0; + margin-right: 0; +} + +.monaco-menu .monaco-action-bar.vertical .submenu-indicator { + font-size: 60%; + padding: 0 1.8em; +} + +.linux .monaco-menu .monaco-action-bar.vertical .submenu-indicator, +:host-context(.linux) .monaco-menu .monaco-action-bar.vertical .submenu-indicator { + height: 100%; + mask-size: 10px 10px; + -webkit-mask-size: 10px 10px; +} + +.monaco-menu .action-item { + cursor: default; +}`;if(e){t+=` + /* Arrows */ + .monaco-scrollable-element > .scrollbar > .scra { + cursor: pointer; + font-size: 11px !important; + } + + .monaco-scrollable-element > .visible { + opacity: 1; + + /* Background rule added for IE9 - to allow clicks on dom node */ + background:rgba(0,0,0,0); + + transition: opacity 100ms linear; + } + .monaco-scrollable-element > .invisible { + opacity: 0; + pointer-events: none; + } + .monaco-scrollable-element > .invisible.fade { + transition: opacity 800ms linear; + } + + /* Scrollable Content Inset Shadow */ + .monaco-scrollable-element > .shadow { + position: absolute; + display: none; + } + .monaco-scrollable-element > .shadow.top { + display: block; + top: 0; + left: 3px; + height: 3px; + width: 100%; + } + .monaco-scrollable-element > .shadow.left { + display: block; + top: 3px; + left: 0; + height: 100%; + width: 3px; + } + .monaco-scrollable-element > .shadow.top-left-corner { + display: block; + top: 0; + left: 0; + height: 3px; + width: 3px; + } + `;const i=o.scrollbarShadow;i&&(t+=` + .monaco-scrollable-element > .shadow.top { + box-shadow: ${i} 0 6px 6px -6px inset; + } + + .monaco-scrollable-element > .shadow.left { + box-shadow: ${i} 6px 0 6px -6px inset; + } + + .monaco-scrollable-element > .shadow.top.left { + box-shadow: ${i} 6px 6px 6px -6px inset; + } + `);const n=o.scrollbarSliderBackground;n&&(t+=` + .monaco-scrollable-element > .scrollbar > .slider { + background: ${n}; + } + `);const s=o.scrollbarSliderHoverBackground;s&&(t+=` + .monaco-scrollable-element > .scrollbar > .slider:hover { + background: ${s}; + } + `);const r=o.scrollbarSliderActiveBackground;r&&(t+=` + .monaco-scrollable-element > .scrollbar > .slider.active { + background: ${r}; + } + `)}return t}class UY{constructor(e,t,i,n){this.contextViewService=e,this.telemetryService=t,this.notificationService=i,this.keybindingService=n,this.focusToReturn=null,this.lastContainer=null,this.block=null,this.blockDisposable=null,this.options={blockMouse:!0}}configure(e){this.options=e}showContextMenu(e){const t=e.getActions();if(!t.length)return;this.focusToReturn=Xi();let i;const n=Ei(e.domForShadowRoot)?e.domForShadowRoot:void 0;this.contextViewService.showContextView({getAnchor:()=>e.getAnchor(),canRelayout:!1,anchorAlignment:e.anchorAlignment,anchorAxisAlignment:e.anchorAxisAlignment,render:s=>{this.lastContainer=s;const r=e.getMenuClassName?e.getMenuClassName():"";r&&(s.className+=" "+r),this.options.blockMouse&&(this.block=s.appendChild(ce(".context-view-block")),this.block.style.position="fixed",this.block.style.cursor="initial",this.block.style.left="0",this.block.style.top="0",this.block.style.width="100%",this.block.style.height="100%",this.block.style.zIndex="-1",this.blockDisposable?.dispose(),this.blockDisposable=U(this.block,ee.MOUSE_DOWN,d=>d.stopPropagation()));const a=new X,l=e.actionRunner||new Oh;l.onWillRun(d=>this.onActionRun(d,!e.skipTelemetry),this,a),l.onDidRun(this.onDidActionRun,this,a),i=new Hf(s,t,{actionViewItemProvider:e.getActionViewItem,context:e.getActionsContext?e.getActionsContext():null,actionRunner:l,getKeyBinding:e.getKeyBinding?e.getKeyBinding:d=>this.keybindingService.lookupKeybinding(d.id)},WY),i.onDidCancel(()=>this.contextViewService.hideContextView(!0),null,a),i.onDidBlur(()=>this.contextViewService.hideContextView(!0),null,a);const c=fe(s);return a.add(U(c,ee.BLUR,()=>this.contextViewService.hideContextView(!0))),a.add(U(c,ee.MOUSE_DOWN,d=>{if(d.defaultPrevented)return;const h=new ur(c,d);let u=h.target;if(!h.rightButton){for(;u;){if(u===s)return;u=u.parentElement}this.contextViewService.hideContextView(!0)}})),No(a,i)},focus:()=>{i?.focus(!!e.autoSelectFirstItem)},onHide:s=>{e.onHide?.(!!s),this.block&&(this.block.remove(),this.block=null),this.blockDisposable?.dispose(),this.blockDisposable=null,this.lastContainer&&(Xi()===this.lastContainer||yi(Xi(),this.lastContainer))&&this.focusToReturn?.focus(),this.lastContainer=null}},n,!!n)}onActionRun(e,t){t&&this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.action.id,from:"contextMenu"}),this.contextViewService.hideContextView(!1)}onDidActionRun(e){e.error&&!$c(e.error)&&this.notificationService.error(e.error)}}var $Y=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Tu=function(o,e){return function(t,i){e(t,i,o)}};let gD=class extends z{get contextMenuHandler(){return this._contextMenuHandler||(this._contextMenuHandler=new UY(this.contextViewService,this.telemetryService,this.notificationService,this.keybindingService)),this._contextMenuHandler}constructor(e,t,i,n,s,r){super(),this.telemetryService=e,this.notificationService=t,this.contextViewService=i,this.keybindingService=n,this.menuService=s,this.contextKeyService=r,this._contextMenuHandler=void 0,this._onDidShowContextMenu=this._store.add(new A),this.onDidShowContextMenu=this._onDidShowContextMenu.event,this._onDidHideContextMenu=this._store.add(new A)}configure(e){this.contextMenuHandler.configure(e)}showContextMenu(e){e=mD.transform(e,this.menuService,this.contextKeyService),this.contextMenuHandler.showContextMenu({...e,onHide:t=>{e.onHide?.(t),this._onDidHideContextMenu.fire()}}),rl.getInstance().resetKeyStatus(),this._onDidShowContextMenu.fire()}};gD=$Y([Tu(0,$s),Tu(1,mn),Tu(2,lu),Tu(3,vt),Tu(4,yr),Tu(5,De)],gD);var mD;(function(o){function e(i){return i&&i.menuId instanceof $e}function t(i,n,s){if(!e(i))return i;const{menuId:r,menuActionOptions:a,contextKeyService:l}=i;return{...i,getActions:()=>{const c=[];if(r){const d=n.getMenuActions(r,l??s,a);HY(d,c)}return i.getActions?Gi.join(i.getActions(),c):c}}}o.transform=t})(mD||(mD={}));var ZC;(function(o){o[o.API=0]="API",o[o.USER=1]="USER"})(ZC||(ZC={}));var e2=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},YC=function(o,e){return function(t,i){e(t,i,o)}};let pD=class{constructor(e){this._commandService=e}async open(e,t){if(!GN(e,Te.command))return!1;if(!t?.allowCommands||(typeof e=="string"&&(e=ve.parse(e)),Array.isArray(t.allowCommands)&&!t.allowCommands.includes(e.path)))return!0;let i=[];try{i=Ok(decodeURIComponent(e.query))}catch{try{i=Ok(e.query)}catch{}}return Array.isArray(i)||(i=[i]),await this._commandService.executeCommand(e.path,...i),!0}};pD=e2([YC(0,hi)],pD);let _D=class{constructor(e){this._editorService=e}async open(e,t){typeof e=="string"&&(e=ve.parse(e));const{selection:i,uri:n}=_q(e);return e=n,e.scheme===Te.file&&(e=Qq(e)),await this._editorService.openCodeEditor({resource:e,options:{selection:i,source:t?.fromUserGesture?ZC.USER:ZC.API,...t?.editorOptions}},this._editorService.getFocusedCodeEditor(),t?.openToSide),!0}};_D=e2([YC(0,Pt)],_D);let bD=class{constructor(e,t){this._openers=new yn,this._validators=new yn,this._resolvers=new yn,this._resolvedUriTargets=new cs(i=>i.with({path:null,fragment:null,query:null}).toString()),this._externalOpeners=new yn,this._defaultExternalOpener={openExternal:async i=>(zx(i,Te.http,Te.https)?HF(i):_t.location.href=i,!0)},this._openers.push({open:async(i,n)=>n?.openExternal||zx(i,Te.mailto,Te.http,Te.https,Te.vsls)?(await this._doOpenExternal(i,n),!0):!1}),this._openers.push(new pD(t)),this._openers.push(new _D(e))}registerOpener(e){return{dispose:this._openers.unshift(e)}}async open(e,t){const i=typeof e=="string"?ve.parse(e):e,n=this._resolvedUriTargets.get(i)??e;for(const s of this._validators)if(!await s.shouldOpen(n,t))return!1;for(const s of this._openers)if(await s.open(e,t))return!0;return!1}async resolveExternalUri(e,t){for(const i of this._resolvers)try{const n=await i.resolveExternalUri(e,t);if(n)return this._resolvedUriTargets.has(n.resolved)||this._resolvedUriTargets.set(n.resolved,e),n}catch{}throw new Error("Could not resolve external URI: "+e.toString())}async _doOpenExternal(e,t){const i=typeof e=="string"?ve.parse(e):e;let n;try{n=(await this.resolveExternalUri(i,t)).resolved}catch{n=i}let s;if(typeof e=="string"&&i.toString()===n.toString()?s=e:s=encodeURI(n.toString(!0)),t?.allowContributedOpeners){const r=typeof t?.allowContributedOpeners=="string"?t?.allowContributedOpeners:void 0;for(const a of this._externalOpeners)if(await a.openExternal(s,{sourceUri:i,preferredOpenerId:r},ut.None))return!0}return this._defaultExternalOpener.openExternal(s,{sourceUri:i},ut.None)}dispose(){this._validators.clear()}};bD=e2([YC(0,Pt),YC(1,hi)],bD);const Zc=He("editorWorkerService");var Vt;(function(o){o[o.Hint=1]="Hint",o[o.Info=2]="Info",o[o.Warning=4]="Warning",o[o.Error=8]="Error"})(Vt||(Vt={}));(function(o){function e(r,a){return a-r}o.compare=e;const t=Object.create(null);t[o.Error]=m("sev.error","Error"),t[o.Warning]=m("sev.warning","Warning"),t[o.Info]=m("sev.info","Info");function i(r){return t[r]||""}o.toString=i;function n(r){switch(r){case Qt.Error:return o.Error;case Qt.Warning:return o.Warning;case Qt.Info:return o.Info;case Qt.Ignore:return o.Hint}}o.fromSeverity=n;function s(r){switch(r){case o.Error:return Qt.Error;case o.Warning:return Qt.Warning;case o.Info:return Qt.Info;case o.Hint:return Qt.Ignore}}o.toSeverity=s})(Vt||(Vt={}));var QC;(function(o){function t(n){return i(n,!0)}o.makeKey=t;function i(n,s){const r=[""];return n.source?r.push(n.source.replace("¦","\\¦")):r.push(""),n.code?typeof n.code=="string"?r.push(n.code.replace("¦","\\¦")):r.push(n.code.value.replace("¦","\\¦")):r.push(""),n.severity!==void 0&&n.severity!==null?r.push(Vt.toString(n.severity)):r.push(""),n.message&&s?r.push(n.message.replace("¦","\\¦")):r.push(""),n.startLineNumber!==void 0&&n.startLineNumber!==null?r.push(n.startLineNumber.toString()):r.push(""),n.startColumn!==void 0&&n.startColumn!==null?r.push(n.startColumn.toString()):r.push(""),n.endLineNumber!==void 0&&n.endLineNumber!==null?r.push(n.endLineNumber.toString()):r.push(""),n.endColumn!==void 0&&n.endColumn!==null?r.push(n.endColumn.toString()):r.push(""),r.push(""),r.join("¦")}o.makeKeyOptionalMessage=i})(QC||(QC={}));const xa=He("markerService"),z7=D("editor.lineHighlightBackground",null,m("lineHighlight","Background color for the highlight of line at the cursor position.")),vP=D("editor.lineHighlightBorder",{dark:"#282828",light:"#eeeeee",hcDark:"#f38518",hcLight:Ye},m("lineHighlightBorderBox","Background color for the border around the line at the cursor position."));D("editor.rangeHighlightBackground",{dark:"#ffffff0b",light:"#fdff0033",hcDark:null,hcLight:null},m("rangeHighlight","Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.rangeHighlightBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("rangeHighlightBorder","Background color of the border around highlighted ranges."));D("editor.symbolHighlightBackground",{dark:ll,light:ll,hcDark:null,hcLight:null},m("symbolHighlight","Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.symbolHighlightBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("symbolHighlightBorder","Background color of the border around highlighted symbols."));const uy=D("editorCursor.foreground",{dark:"#AEAFAD",light:q.black,hcDark:q.white,hcLight:"#0F4A85"},m("caret","Color of the editor cursor.")),t2=D("editorCursor.background",null,m("editorCursorBackground","The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.")),U7=D("editorMultiCursor.primary.foreground",uy,m("editorMultiCursorPrimaryForeground","Color of the primary editor cursor when multiple cursors are present.")),KY=D("editorMultiCursor.primary.background",t2,m("editorMultiCursorPrimaryBackground","The background color of the primary editor cursor when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),$7=D("editorMultiCursor.secondary.foreground",uy,m("editorMultiCursorSecondaryForeground","Color of secondary editor cursors when multiple cursors are present.")),jY=D("editorMultiCursor.secondary.background",t2,m("editorMultiCursorSecondaryBackground","The background color of secondary editor cursors when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),i2=D("editorWhitespace.foreground",{dark:"#e3e4e229",light:"#33333333",hcDark:"#e3e4e229",hcLight:"#CCCCCC"},m("editorWhitespaces","Color of whitespace characters in the editor.")),qY=D("editorLineNumber.foreground",{dark:"#858585",light:"#237893",hcDark:q.white,hcLight:"#292929"},m("editorLineNumbers","Color of editor line numbers.")),GY=D("editorIndentGuide.background",i2,m("editorIndentGuides","Color of the editor indentation guides."),!1,m("deprecatedEditorIndentGuides","'editorIndentGuide.background' is deprecated. Use 'editorIndentGuide.background1' instead.")),ZY=D("editorIndentGuide.activeBackground",i2,m("editorActiveIndentGuide","Color of the active editor indentation guides."),!1,m("deprecatedEditorActiveIndentGuide","'editorIndentGuide.activeBackground' is deprecated. Use 'editorIndentGuide.activeBackground1' instead.")),tb=D("editorIndentGuide.background1",GY,m("editorIndentGuides1","Color of the editor indentation guides (1).")),YY=D("editorIndentGuide.background2","#00000000",m("editorIndentGuides2","Color of the editor indentation guides (2).")),QY=D("editorIndentGuide.background3","#00000000",m("editorIndentGuides3","Color of the editor indentation guides (3).")),XY=D("editorIndentGuide.background4","#00000000",m("editorIndentGuides4","Color of the editor indentation guides (4).")),JY=D("editorIndentGuide.background5","#00000000",m("editorIndentGuides5","Color of the editor indentation guides (5).")),eQ=D("editorIndentGuide.background6","#00000000",m("editorIndentGuides6","Color of the editor indentation guides (6).")),ib=D("editorIndentGuide.activeBackground1",ZY,m("editorActiveIndentGuide1","Color of the active editor indentation guides (1).")),tQ=D("editorIndentGuide.activeBackground2","#00000000",m("editorActiveIndentGuide2","Color of the active editor indentation guides (2).")),iQ=D("editorIndentGuide.activeBackground3","#00000000",m("editorActiveIndentGuide3","Color of the active editor indentation guides (3).")),nQ=D("editorIndentGuide.activeBackground4","#00000000",m("editorActiveIndentGuide4","Color of the active editor indentation guides (4).")),sQ=D("editorIndentGuide.activeBackground5","#00000000",m("editorActiveIndentGuide5","Color of the active editor indentation guides (5).")),oQ=D("editorIndentGuide.activeBackground6","#00000000",m("editorActiveIndentGuide6","Color of the active editor indentation guides (6).")),rQ=D("editorActiveLineNumber.foreground",{dark:"#c6c6c6",light:"#0B216F",hcDark:Ut,hcLight:Ut},m("editorActiveLineNumber","Color of editor active line number"),!1,m("deprecatedEditorActiveLineNumber","Id is deprecated. Use 'editorLineNumber.activeForeground' instead."));D("editorLineNumber.activeForeground",rQ,m("editorActiveLineNumber","Color of editor active line number"));const aQ=D("editorLineNumber.dimmedForeground",null,m("editorDimmedLineNumber","Color of the final editor line when editor.renderFinalNewline is set to dimmed."));D("editorRuler.foreground",{dark:"#5A5A5A",light:q.lightgrey,hcDark:q.white,hcLight:"#292929"},m("editorRuler","Color of the editor rulers."));D("editorCodeLens.foreground",{dark:"#999999",light:"#919191",hcDark:"#999999",hcLight:"#292929"},m("editorCodeLensForeground","Foreground color of editor CodeLens"));D("editorBracketMatch.background",{dark:"#0064001a",light:"#0064001a",hcDark:"#0064001a",hcLight:"#0000"},m("editorBracketMatchBackground","Background color behind matching brackets"));D("editorBracketMatch.border",{dark:"#888",light:"#B9B9B9",hcDark:Ye,hcLight:Ye},m("editorBracketMatchBorder","Color for matching brackets boxes"));const lQ=D("editorOverviewRuler.border",{dark:"#7f7f7f4d",light:"#7f7f7f4d",hcDark:"#7f7f7f4d",hcLight:"#666666"},m("editorOverviewRulerBorder","Color of the overview ruler border.")),cQ=D("editorOverviewRuler.background",null,m("editorOverviewRulerBackground","Background color of the editor overview ruler."));D("editorGutter.background",Oo,m("editorGutter","Background color of the editor gutter. The gutter contains the glyph margins and the line numbers."));D("editorUnnecessaryCode.border",{dark:null,light:null,hcDark:q.fromHex("#fff").transparent(.8),hcLight:Ye},m("unnecessaryCodeBorder","Border color of unnecessary (unused) source code in the editor."));const dQ=D("editorUnnecessaryCode.opacity",{dark:q.fromHex("#000a"),light:q.fromHex("#0007"),hcDark:null,hcLight:null},m("unnecessaryCodeOpacity",`Opacity of unnecessary (unused) source code in the editor. For example, "#000000c0" will render the code with 75% opacity. For high contrast themes, use the 'editorUnnecessaryCode.border' theme color to underline unnecessary code instead of fading it out.`));D("editorGhostText.border",{dark:null,light:null,hcDark:q.fromHex("#fff").transparent(.8),hcLight:q.fromHex("#292929").transparent(.8)},m("editorGhostTextBorder","Border color of ghost text in the editor."));D("editorGhostText.foreground",{dark:q.fromHex("#ffffff56"),light:q.fromHex("#0007"),hcDark:null,hcLight:null},m("editorGhostTextForeground","Foreground color of the ghost text in the editor."));D("editorGhostText.background",null,m("editorGhostTextBackground","Background color of the ghost text in the editor."));const hQ=new q(new qe(0,122,204,.6));D("editorOverviewRuler.rangeHighlightForeground",hQ,m("overviewRulerRangeHighlight","Overview ruler marker color for range highlights. The color must not be opaque so as not to hide underlying decorations."),!0);const uQ=D("editorOverviewRuler.errorForeground",{dark:new q(new qe(255,18,18,.7)),light:new q(new qe(255,18,18,.7)),hcDark:new q(new qe(255,50,50,1)),hcLight:"#B5200D"},m("overviewRuleError","Overview ruler marker color for errors.")),fQ=D("editorOverviewRuler.warningForeground",{dark:Il,light:Il,hcDark:i_,hcLight:i_},m("overviewRuleWarning","Overview ruler marker color for warnings.")),gQ=D("editorOverviewRuler.infoForeground",{dark:ma,light:ma,hcDark:n_,hcLight:n_},m("overviewRuleInfo","Overview ruler marker color for infos.")),K7=D("editorBracketHighlight.foreground1",{dark:"#FFD700",light:"#0431FAFF",hcDark:"#FFD700",hcLight:"#0431FAFF"},m("editorBracketHighlightForeground1","Foreground color of brackets (1). Requires enabling bracket pair colorization.")),j7=D("editorBracketHighlight.foreground2",{dark:"#DA70D6",light:"#319331FF",hcDark:"#DA70D6",hcLight:"#319331FF"},m("editorBracketHighlightForeground2","Foreground color of brackets (2). Requires enabling bracket pair colorization.")),q7=D("editorBracketHighlight.foreground3",{dark:"#179FFF",light:"#7B3814FF",hcDark:"#87CEFA",hcLight:"#7B3814FF"},m("editorBracketHighlightForeground3","Foreground color of brackets (3). Requires enabling bracket pair colorization.")),G7=D("editorBracketHighlight.foreground4","#00000000",m("editorBracketHighlightForeground4","Foreground color of brackets (4). Requires enabling bracket pair colorization.")),Z7=D("editorBracketHighlight.foreground5","#00000000",m("editorBracketHighlightForeground5","Foreground color of brackets (5). Requires enabling bracket pair colorization.")),Y7=D("editorBracketHighlight.foreground6","#00000000",m("editorBracketHighlightForeground6","Foreground color of brackets (6). Requires enabling bracket pair colorization.")),mQ=D("editorBracketHighlight.unexpectedBracket.foreground",{dark:new q(new qe(255,18,18,.8)),light:new q(new qe(255,18,18,.8)),hcDark:"new Color(new RGBA(255, 50, 50, 1))",hcLight:"#B5200D"},m("editorBracketHighlightUnexpectedBracketForeground","Foreground color of unexpected brackets.")),pQ=D("editorBracketPairGuide.background1","#00000000",m("editorBracketPairGuide.background1","Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides.")),_Q=D("editorBracketPairGuide.background2","#00000000",m("editorBracketPairGuide.background2","Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides.")),bQ=D("editorBracketPairGuide.background3","#00000000",m("editorBracketPairGuide.background3","Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides.")),CQ=D("editorBracketPairGuide.background4","#00000000",m("editorBracketPairGuide.background4","Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides.")),vQ=D("editorBracketPairGuide.background5","#00000000",m("editorBracketPairGuide.background5","Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides.")),wQ=D("editorBracketPairGuide.background6","#00000000",m("editorBracketPairGuide.background6","Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides.")),yQ=D("editorBracketPairGuide.activeBackground1","#00000000",m("editorBracketPairGuide.activeBackground1","Background color of active bracket pair guides (1). Requires enabling bracket pair guides.")),SQ=D("editorBracketPairGuide.activeBackground2","#00000000",m("editorBracketPairGuide.activeBackground2","Background color of active bracket pair guides (2). Requires enabling bracket pair guides.")),LQ=D("editorBracketPairGuide.activeBackground3","#00000000",m("editorBracketPairGuide.activeBackground3","Background color of active bracket pair guides (3). Requires enabling bracket pair guides.")),xQ=D("editorBracketPairGuide.activeBackground4","#00000000",m("editorBracketPairGuide.activeBackground4","Background color of active bracket pair guides (4). Requires enabling bracket pair guides.")),kQ=D("editorBracketPairGuide.activeBackground5","#00000000",m("editorBracketPairGuide.activeBackground5","Background color of active bracket pair guides (5). Requires enabling bracket pair guides.")),DQ=D("editorBracketPairGuide.activeBackground6","#00000000",m("editorBracketPairGuide.activeBackground6","Background color of active bracket pair guides (6). Requires enabling bracket pair guides."));D("editorUnicodeHighlight.border",Il,m("editorUnicodeHighlight.border","Border color used to highlight unicode characters."));D("editorUnicodeHighlight.background",LK,m("editorUnicodeHighlight.background","Background color used to highlight unicode characters."));Sr((o,e)=>{const t=o.getColor(Oo),i=o.getColor(z7),n=i&&!i.isTransparent()?i:t;n&&e.addRule(`.monaco-editor .inputarea.ime-input { background-color: ${n}; }`)});function IQ(o,e){const t=[],i=[];for(const n of o)e.has(n)||t.push(n);for(const n of e)o.has(n)||i.push(n);return{removed:t,added:i}}function EQ(o,e){const t=new Set;for(const i of e)o.has(i)&&t.add(i);return t}var NQ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},wP=function(o,e){return function(t,i){e(t,i,o)}};let CD=class extends z{constructor(e,t){super(),this._markerService=t,this._onDidChangeMarker=this._register(new A),this._markerDecorations=new cs,e.getModels().forEach(i=>this._onModelAdded(i)),this._register(e.onModelAdded(this._onModelAdded,this)),this._register(e.onModelRemoved(this._onModelRemoved,this)),this._register(this._markerService.onMarkerChanged(this._handleMarkerChange,this))}dispose(){super.dispose(),this._markerDecorations.forEach(e=>e.dispose()),this._markerDecorations.clear()}getMarker(e,t){const i=this._markerDecorations.get(e);return i&&i.getMarker(t)||null}_handleMarkerChange(e){e.forEach(t=>{const i=this._markerDecorations.get(t);i&&this._updateDecorations(i)})}_onModelAdded(e){const t=new TQ(e);this._markerDecorations.set(e.uri,t),this._updateDecorations(t)}_onModelRemoved(e){const t=this._markerDecorations.get(e.uri);t&&(t.dispose(),this._markerDecorations.delete(e.uri)),(e.uri.scheme===Te.inMemory||e.uri.scheme===Te.internal||e.uri.scheme===Te.vscode)&&this._markerService?.read({resource:e.uri}).map(i=>i.owner).forEach(i=>this._markerService.remove(i,[e.uri]))}_updateDecorations(e){const t=this._markerService.read({resource:e.model.uri,take:500});e.update(t)&&this._onDidChangeMarker.fire(e.model)}};CD=NQ([wP(0,Fi),wP(1,xa)],CD);class TQ extends z{constructor(e){super(),this.model=e,this._map=new IU,this._register(_e(()=>{this.model.deltaDecorations([...this._map.values()],[]),this._map.clear()}))}update(e){const{added:t,removed:i}=IQ(new Set(this._map.keys()),new Set(e));if(t.length===0&&i.length===0)return!1;const n=i.map(a=>this._map.get(a)),s=t.map(a=>({range:this._createDecorationRange(this.model,a),options:this._createDecorationOption(a)})),r=this.model.deltaDecorations(n,s);for(const a of i)this._map.delete(a);for(let a=0;a=n)return i;const s=e.getWordAtPosition(i.getStartPosition());s&&(i=new I(i.startLineNumber,s.startColumn,i.endLineNumber,s.endColumn))}else if(t.endColumn===Number.MAX_VALUE&&t.startColumn===1&&i.startLineNumber===i.endLineNumber){const n=e.getLineFirstNonWhitespaceColumn(t.startLineNumber);n=0:!1}}const n2=He("markerDecorationsService");class _i{static _nextVisibleColumn(e,t,i){return e===9?_i.nextRenderTabStop(t,i):Rc(e)||UN(e)?t+2:t+1}static visibleColumnFromColumn(e,t,i){const n=Math.min(t-1,e.length),s=e.substring(0,n),r=new fC(s);let a=0;for(;!r.eol();){const l=uC(s,n,r.offset);r.nextGraphemeLength(),a=this._nextVisibleColumn(l,a,i)}return a}static columnFromVisibleColumn(e,t,i){if(t<=0)return 1;const n=e.length,s=new fC(e);let r=0,a=1;for(;!s.eol();){const l=uC(e,n,s.offset);s.nextGraphemeLength();const c=this._nextVisibleColumn(l,r,i),d=s.offset+1;if(c>=t){const h=t-r;return c-t=Rs&&(t=t-o%Rs),t}function FQ(o,e){return o.reduce((t,i)=>zt(t,e(i)),Ln)}function X7(o,e){return o===e}function h_(o,e){const t=o,i=e;if(i-t<=0)return Ln;const s=Math.floor(t/Rs),r=Math.floor(i/Rs),a=i-r*Rs;if(s===r){const l=t-s*Rs;return ni(0,a-l)}else return ni(r-s,a)}function Vf(o,e){return o=e}function lf(o){return ni(o.lineNumber-1,o.column-1)}function Jd(o,e){const t=o,i=Math.floor(t/Rs),n=t-i*Rs,s=e,r=Math.floor(s/Rs),a=s-r*Rs;return new I(i+1,n+1,r+1,a+1)}function BQ(o){const e=va(o);return ni(e.length-1,e[e.length-1].length)}class cl{static fromModelContentChanges(e){return e.map(i=>{const n=I.lift(i.range);return new cl(lf(n.getStartPosition()),lf(n.getEndPosition()),BQ(i.text))}).reverse()}constructor(e,t,i){this.startOffset=e,this.endOffset=t,this.newLength=i}toString(){return`[${ro(this.startOffset)}...${ro(this.endOffset)}) -> ${ro(this.newLength)}`}}class WQ{constructor(e){this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=e.map(t=>s2.from(t))}getOffsetBeforeChange(e){return this.adjustNextEdit(e),this.translateCurToOld(e)}getDistanceToNextChange(e){this.adjustNextEdit(e);const t=this.edits[this.nextEditIdx],i=t?this.translateOldToCur(t.offsetObj):null;return i===null?null:h_(e,i)}translateOldToCur(e){return e.lineCount===this.deltaLineIdxInOld?ni(e.lineCount+this.deltaOldToNewLineCount,e.columnCount+this.deltaOldToNewColumnCount):ni(e.lineCount+this.deltaOldToNewLineCount,e.columnCount)}translateCurToOld(e){const t=ro(e);return t.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?ni(t.lineCount-this.deltaOldToNewLineCount,t.columnCount-this.deltaOldToNewColumnCount):ni(t.lineCount-this.deltaOldToNewLineCount,t.columnCount)}adjustNextEdit(e){for(;this.nextEditIdx>5;if(n===0){const r=1<this.textBufferLineCount-1||this.lineIdx===this.textBufferLineCount-1&&this.lineCharOffset>=this.textBufferLastLineLength)return null;this.line===null&&(this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.line=this.lineTokens.getLineContent(),this.lineTokenOffset=this.lineCharOffset===0?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset));const e=this.lineIdx,t=this.lineCharOffset;let i=0;for(;;){const s=this.lineTokens,r=s.getCount();let a=null;if(this.lineTokenOffset1e3))break;if(i>1500)break}const n=PQ(e,t,this.lineIdx,this.lineCharOffset);return new Jl(n,0,-1,ss.getEmpty(),new Sd(n))}}class KQ{constructor(e,t){this.text=e,this._offset=Ln,this.idx=0;const i=t.getRegExpStr(),n=i?new RegExp(i+`| +`,"gi"):null,s=[];let r,a=0,l=0,c=0,d=0;const h=[];for(let g=0;g<60;g++)h.push(new Jl(ni(0,g),0,-1,ss.getEmpty(),new Sd(ni(0,g))));const u=[];for(let g=0;g<60;g++)u.push(new Jl(ni(1,g),0,-1,ss.getEmpty(),new Sd(ni(1,g))));if(n)for(n.lastIndex=0;(r=n.exec(e))!==null;){const g=r.index,p=r[0];if(p===` +`)a++,l=g+1;else{if(c!==g){let _;if(d===a){const b=g-c;if(bjQ(t)).join("|")}}get regExpGlobal(){if(!this.hasRegExp){const e=this.getRegExpStr();this._regExpGlobal=e?new RegExp(e,"gi"):null,this.hasRegExp=!0}return this._regExpGlobal}getToken(e){return this.map.get(e.toLowerCase())}findClosingTokenText(e){for(const[t,i]of this.map)if(i.kind===2&&i.bracketIds.intersects(e))return t}get isEmpty(){return this.map.size===0}}function jQ(o){let e=xl(o);return/^[\w ]+/.test(o)&&(e=`\\b${e}`),/[\w ]+$/.test(o)&&(e=`${e}\\b`),e}class t9{constructor(e,t){this.denseKeyProvider=e,this.getLanguageConfiguration=t,this.languageIdToBracketTokens=new Map}didLanguageChange(e){return this.languageIdToBracketTokens.has(e)}getSingleLanguageBracketTokens(e){let t=this.languageIdToBracketTokens.get(e);return t||(t=a2.createFromLanguage(this.getLanguageConfiguration(e),this.denseKeyProvider),this.languageIdToBracketTokens.set(e,t)),t}}function qQ(o){if(o.length===0)return null;if(o.length===1)return o[0];let e=0;function t(){if(e>=o.length)return null;const r=e,a=o[r].listHeight;for(e++;e=2?i9(r===0&&e===o.length?o:o.slice(r,e),!1):o[r]}let i=t(),n=t();if(!n)return i;for(let r=t();r;r=t())LP(i,n)<=LP(n,r)?(i=PS(i,n),n=r):n=PS(n,r);return PS(i,n)}function i9(o,e=!1){if(o.length===0)return null;if(o.length===1)return o[0];let t=o.length;for(;t>3;){const i=t>>1;for(let n=0;n=3?o[2]:null,e)}function LP(o,e){return Math.abs(o.listHeight-e.listHeight)}function PS(o,e){return o.listHeight===e.listHeight?pa.create23(o,e,null,!1):o.listHeight>e.listHeight?GQ(o,e):ZQ(e,o)}function GQ(o,e){o=o.toMutable();let t=o;const i=[];let n;for(;;){if(e.listHeight===t.listHeight){n=e;break}if(t.kind!==4)throw new Error("unexpected");i.push(t),t=t.makeLastElementMutable()}for(let s=i.length-1;s>=0;s--){const r=i[s];n?r.childrenLength>=3?n=pa.create23(r.unappendChild(),n,null,!1):(r.appendChildOfSameHeight(n),n=void 0):r.handleChildrenChanged()}return n?pa.create23(o,n,null,!1):o}function ZQ(o,e){o=o.toMutable();let t=o;const i=[];for(;e.listHeight!==t.listHeight;){if(t.kind!==4)throw new Error("unexpected");i.push(t),t=t.makeFirstElementMutable()}let n=e;for(let s=i.length-1;s>=0;s--){const r=i[s];n?r.childrenLength>=3?n=pa.create23(n,r.unprependChild(),null,!1):(r.prependChildOfSameHeight(n),n=void 0):r.handleChildrenChanged()}return n?pa.create23(n,o,null,!1):o}class YQ{constructor(e){this.lastOffset=Ln,this.nextNodes=[e],this.offsets=[Ln],this.idxs=[]}readLongestNodeAt(e,t){if(Vf(e,this.lastOffset))throw new Error("Invalid offset");for(this.lastOffset=e;;){const i=mm(this.nextNodes);if(!i)return;const n=mm(this.offsets);if(Vf(e,n))return;if(Vf(n,e))if(zt(n,i.length)<=e)this.nextNodeAfterCurrent();else{const s=OS(i);s!==-1?(this.nextNodes.push(i.getChild(s)),this.offsets.push(n),this.idxs.push(s)):this.nextNodeAfterCurrent()}else{if(t(i))return this.nextNodeAfterCurrent(),i;{const s=OS(i);if(s===-1){this.nextNodeAfterCurrent();return}else this.nextNodes.push(i.getChild(s)),this.offsets.push(n),this.idxs.push(s)}}}}nextNodeAfterCurrent(){for(;;){const e=mm(this.offsets),t=mm(this.nextNodes);if(this.nextNodes.pop(),this.offsets.pop(),this.idxs.length===0)break;const i=mm(this.nextNodes),n=OS(i,this.idxs[this.idxs.length-1]);if(n!==-1){this.nextNodes.push(i.getChild(n)),this.offsets.push(zt(e,t.length)),this.idxs[this.idxs.length-1]=n;break}else this.idxs.pop()}}}function OS(o,e=-1){for(;;){if(e++,e>=o.childrenLength)return-1;if(o.getChild(e))return e}}function mm(o){return o.length>0?o[o.length-1]:void 0}function vD(o,e,t,i){return new QQ(o,e,t,i).parseDocument()}class QQ{constructor(e,t,i,n){if(this.tokenizer=e,this.createImmutableLists=n,this._itemsConstructed=0,this._itemsFromCache=0,i&&n)throw new Error("Not supported");this.oldNodeReader=i?new YQ(i):void 0,this.positionMapper=new WQ(t)}parseDocument(){this._itemsConstructed=0,this._itemsFromCache=0;let e=this.parseList(ss.getEmpty(),0);return e||(e=pa.getEmpty()),e}parseList(e,t){const i=[];for(;;){let s=this.tryReadChildFromCache(e);if(!s){const r=this.tokenizer.peek();if(!r||r.kind===2&&r.bracketIds.intersects(e))break;s=this.parseChild(e,t+1)}s.kind===4&&s.childrenLength===0||i.push(s)}return this.oldNodeReader?qQ(i):i9(i,this.createImmutableLists)}tryReadChildFromCache(e){if(this.oldNodeReader){const t=this.positionMapper.getDistanceToNextChange(this.tokenizer.offset);if(t===null||!XC(t)){const i=this.oldNodeReader.readLongestNodeAt(this.positionMapper.getOffsetBeforeChange(this.tokenizer.offset),n=>t!==null&&!Vf(n.length,t)?!1:n.canBeReused(e));if(i)return this._itemsFromCache++,this.tokenizer.skip(i.length),i}}}parseChild(e,t){this._itemsConstructed++;const i=this.tokenizer.read();switch(i.kind){case 2:return new UQ(i.bracketIds,i.length);case 0:return i.astNode;case 1:{if(t>300)return new Sd(i.length);const n=e.merge(i.bracketIds),s=this.parseList(n,t+1),r=this.tokenizer.peek();return r&&r.kind===2&&(r.bracketId===i.bracketId||r.bracketIds.intersects(i.bracketIds))?(this.tokenizer.read(),u_.create(i.astNode,s,r.astNode)):u_.create(i.astNode,s,null)}default:throw new Error("unexpected")}}}function tv(o,e){if(o.length===0)return e;if(e.length===0)return o;const t=new Ll(xP(o)),i=xP(e);i.push({modified:!1,lengthBefore:void 0,lengthAfter:void 0});let n=t.dequeue();function s(c){if(c===void 0){const h=t.takeWhile(u=>!0)||[];return n&&h.unshift(n),h}const d=[];for(;n&&!XC(c);){const[h,u]=n.splitAt(c);d.push(h),c=h_(h.lengthAfter,c),n=u??t.dequeue()}return XC(c)||d.push(new ac(!1,c,c)),d}const r=[];function a(c,d,h){if(r.length>0&&X7(r[r.length-1].endOffset,c)){const u=r[r.length-1];r[r.length-1]=new cl(u.startOffset,d,zt(u.newLength,h))}else r.push({startOffset:c,endOffset:d,newLength:h})}let l=Ln;for(const c of i){const d=s(c.lengthBefore);if(c.modified){const h=FQ(d,f=>f.lengthBefore),u=zt(l,h);a(l,u,c.lengthAfter),l=u}else for(const h of d){const u=l;l=zt(l,h.lengthBefore),h.modified&&a(u,l,h.lengthAfter)}}return r}class ac{constructor(e,t,i){this.modified=e,this.lengthBefore=t,this.lengthAfter=i}splitAt(e){const t=h_(e,this.lengthAfter);return X7(t,Ln)?[this,void 0]:this.modified?[new ac(this.modified,this.lengthBefore,e),new ac(this.modified,Ln,t)]:[new ac(this.modified,e,e),new ac(this.modified,t,t)]}toString(){return`${this.modified?"M":"U"}:${ro(this.lengthBefore)} -> ${ro(this.lengthAfter)}`}}function xP(o){const e=[];let t=Ln;for(const i of o){const n=h_(t,i.startOffset);XC(n)||e.push(new ac(!1,n,n));const s=h_(i.startOffset,i.endOffset);e.push(new ac(!0,s,i.newLength)),t=i.endOffset}return e}class XQ extends z{didLanguageChange(e){return this.brackets.didLanguageChange(e)}constructor(e,t){if(super(),this.textModel=e,this.getLanguageConfiguration=t,this.didChangeEmitter=new A,this.denseKeyProvider=new J7,this.brackets=new t9(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],e.tokenization.hasTokens)e.tokenization.backgroundTokenizationState===2?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{const i=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),n=new KQ(this.textModel.getValue(),i);this.initialAstWithoutTokens=vD(n,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(this.textModel.tokenization.backgroundTokenizationState===2){const e=this.initialAstWithoutTokens===void 0;this.initialAstWithoutTokens=void 0,e||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:e}){const t=e.map(i=>new cl(ni(i.fromLineNumber-1,0),ni(i.toLineNumber,0),ni(i.toLineNumber-i.fromLineNumber+1,0)));this.handleEdits(t,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(e){const t=cl.fromModelContentChanges(e.changes);this.handleEdits(t,!1)}handleEdits(e,t){const i=tv(this.queuedTextEdits,e);this.queuedTextEdits=i,this.initialAstWithoutTokens&&!t&&(this.queuedTextEditsForInitialAstWithoutTokens=tv(this.queuedTextEditsForInitialAstWithoutTokens,e))}flushQueue(){this.queuedTextEdits.length>0&&(this.astWithTokens=this.parseDocumentFromTextBuffer(this.queuedTextEdits,this.astWithTokens,!1),this.queuedTextEdits=[]),this.queuedTextEditsForInitialAstWithoutTokens.length>0&&(this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(this.queuedTextEditsForInitialAstWithoutTokens,this.initialAstWithoutTokens,!1)),this.queuedTextEditsForInitialAstWithoutTokens=[])}parseDocumentFromTextBuffer(e,t,i){const n=t,s=new e9(this.textModel,this.brackets);return vD(s,e,n,i)}getBracketsInRange(e,t){this.flushQueue();const i=ni(e.startLineNumber-1,e.startColumn-1),n=ni(e.endLineNumber-1,e.endColumn-1);return new Zd(s=>{const r=this.initialAstWithoutTokens||this.astWithTokens;wD(r,Ln,r.length,i,n,s,0,0,new Map,t)})}getBracketPairsInRange(e,t){this.flushQueue();const i=lf(e.getStartPosition()),n=lf(e.getEndPosition());return new Zd(s=>{const r=this.initialAstWithoutTokens||this.astWithTokens,a=new JQ(s,t,this.textModel);yD(r,Ln,r.length,i,n,a,0,new Map)})}getFirstBracketAfter(e){this.flushQueue();const t=this.initialAstWithoutTokens||this.astWithTokens;return s9(t,Ln,t.length,lf(e))}getFirstBracketBefore(e){this.flushQueue();const t=this.initialAstWithoutTokens||this.astWithTokens;return n9(t,Ln,t.length,lf(e))}}function n9(o,e,t,i){if(o.kind===4||o.kind===2){const n=[];for(const s of o.children)t=zt(e,s.length),n.push({nodeOffsetStart:e,nodeOffsetEnd:t}),e=t;for(let s=n.length-1;s>=0;s--){const{nodeOffsetStart:r,nodeOffsetEnd:a}=n[s];if(Vf(r,i)){const l=n9(o.children[s],r,a,i);if(l)return l}}return null}else{if(o.kind===3)return null;if(o.kind===1){const n=Jd(e,t);return{bracketInfo:o.bracketInfo,range:n}}}return null}function s9(o,e,t,i){if(o.kind===4||o.kind===2){for(const n of o.children){if(t=zt(e,n.length),Vf(i,t)){const s=s9(n,e,t,i);if(s)return s}e=t}return null}else{if(o.kind===3)return null;if(o.kind===1){const n=Jd(e,t);return{bracketInfo:o.bracketInfo,range:n}}}return null}function wD(o,e,t,i,n,s,r,a,l,c,d=!1){if(r>200)return!0;e:for(;;)switch(o.kind){case 4:{const h=o.childrenLength;for(let u=0;u200)return!0;let l=!0;if(o.kind===2){let c=0;if(a){let u=a.get(o.openingBracket.text);u===void 0&&(u=0),c=u,u++,a.set(o.openingBracket.text,u)}const d=zt(e,o.openingBracket.length);let h=-1;if(s.includeMinIndentation&&(h=o.computeMinIndentation(e,s.textModel)),l=s.push(new AQ(Jd(e,t),Jd(e,d),o.closingBracket?Jd(zt(d,o.child?.length||Ln),t):void 0,r,c,o,h)),e=d,l&&o.child){const u=o.child;if(t=zt(e,u.length),zf(e,n)&&Am(t,i)&&(l=yD(u,e,t,i,n,s,r+1,a),!l))return!1}a?.set(o.openingBracket.text,c)}else{let c=e;for(const d of o.children){const h=c;if(c=zt(c,d.length),zf(h,n)&&zf(i,c)&&(l=yD(d,h,c,i,n,s,r,a),!l))return!1}}return l}class eX extends z{get canBuildAST(){return this.textModel.getValueLength()<=5e6}constructor(e,t){super(),this.textModel=e,this.languageConfigurationService=t,this.bracketPairsTree=this._register(new Dn),this.onDidChangeEmitter=new A,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1}handleLanguageConfigurationServiceChange(e){(!e.languageId||this.bracketPairsTree.value?.object.didLanguageChange(e.languageId))&&(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}handleDidChangeOptions(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(e){this.bracketPairsTree.value?.object.handleContentChanged(e)}handleDidChangeBackgroundTokenizationState(){this.bracketPairsTree.value?.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(e){this.bracketPairsTree.value?.object.handleDidChangeTokens(e)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){const e=new X;this.bracketPairsTree.value=tX(e.add(new XQ(this.textModel,t=>this.languageConfigurationService.getLanguageConfiguration(t))),e),e.add(this.bracketPairsTree.value.object.onDidChange(t=>this.onDidChangeEmitter.fire(t))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire())}getBracketPairsInRange(e){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(e,!1)||Zd.empty}getBracketPairsInRangeWithMinIndentation(e){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(e,!0)||Zd.empty}getBracketsInRange(e,t=!1){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketsInRange(e,t)||Zd.empty}findMatchingBracketUp(e,t,i){const n=this.textModel.validatePosition(t),s=this.textModel.getLanguageIdAtPosition(n.lineNumber,n.column);if(this.canBuildAST){const r=this.languageConfigurationService.getLanguageConfiguration(s).bracketsNew.getClosingBracketInfo(e);if(!r)return null;const a=this.getBracketPairsInRange(I.fromPositions(t,t)).findLast(l=>r.closes(l.openingBracketInfo));return a?a.openingBracketRange:null}else{const r=e.toLowerCase(),a=this.languageConfigurationService.getLanguageConfiguration(s).brackets;if(!a)return null;const l=a.textIsBracket[r];return l?Kb(this._findMatchingBracketUp(l,n,FS(i))):null}}matchBracket(e,t){if(this.canBuildAST){const i=this.getBracketPairsInRange(I.fromPositions(e,e)).filter(n=>n.closingBracketRange!==void 0&&(n.openingBracketRange.containsPosition(e)||n.closingBracketRange.containsPosition(e))).findLastMaxBy(rs(n=>n.openingBracketRange.containsPosition(e)?n.openingBracketRange:n.closingBracketRange,I.compareRangesUsingStarts));return i?[i.openingBracketRange,i.closingBracketRange]:null}else{const i=FS(t);return this._matchBracket(this.textModel.validatePosition(e),i)}}_establishBracketSearchOffsets(e,t,i,n){const s=t.getCount(),r=t.getLanguageId(n);let a=Math.max(0,e.column-1-i.maxBracketLength);for(let c=n-1;c>=0;c--){const d=t.getEndOffset(c);if(d<=a)break;if(Pr(t.getStandardTokenType(c))||t.getLanguageId(c)!==r){a=d;break}}let l=Math.min(t.getLineContent().length,e.column-1+i.maxBracketLength);for(let c=n+1;c=l)break;if(Pr(t.getStandardTokenType(c))||t.getLanguageId(c)!==r){l=d;break}}return{searchStartOffset:a,searchEndOffset:l}}_matchBracket(e,t){const i=e.lineNumber,n=this.textModel.tokenization.getLineTokens(i),s=this.textModel.getLineContent(i),r=n.findTokenIndexAtOffset(e.column-1);if(r<0)return null;const a=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId(r)).brackets;if(a&&!Pr(n.getStandardTokenType(r))){let{searchStartOffset:l,searchEndOffset:c}=this._establishBracketSearchOffsets(e,n,a,r),d=null;for(;;){const h=Co.findNextBracketInRange(a.forwardRegex,i,s,l,c);if(!h)break;if(h.startColumn<=e.column&&e.column<=h.endColumn){const u=s.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),f=this._matchFoundBracket(h,a.textIsBracket[u],a.textIsOpenBracket[u],t);if(f){if(f instanceof Xa)return null;d=f}}l=h.endColumn-1}if(d)return d}if(r>0&&n.getStartOffset(r)===e.column-1){const l=r-1,c=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId(l)).brackets;if(c&&!Pr(n.getStandardTokenType(l))){const{searchStartOffset:d,searchEndOffset:h}=this._establishBracketSearchOffsets(e,n,c,l),u=Co.findPrevBracketInRange(c.reversedRegex,i,s,d,h);if(u&&u.startColumn<=e.column&&e.column<=u.endColumn){const f=s.substring(u.startColumn-1,u.endColumn-1).toLowerCase(),g=this._matchFoundBracket(u,c.textIsBracket[f],c.textIsOpenBracket[f],t);if(g)return g instanceof Xa?null:g}}}return null}_matchFoundBracket(e,t,i,n){if(!t)return null;const s=i?this._findMatchingBracketDown(t,e.getEndPosition(),n):this._findMatchingBracketUp(t,e.getStartPosition(),n);return s?s instanceof Xa?s:[e,s]:null}_findMatchingBracketUp(e,t,i){const n=e.languageId,s=e.reversedRegex;let r=-1,a=0;const l=(c,d,h,u)=>{for(;;){if(i&&++a%100===0&&!i())return Xa.INSTANCE;const f=Co.findPrevBracketInRange(s,c,d,h,u);if(!f)break;const g=d.substring(f.startColumn-1,f.endColumn-1).toLowerCase();if(e.isOpen(g)?r++:e.isClose(g)&&r--,r===0)return f;u=f.startColumn-1}return null};for(let c=t.lineNumber;c>=1;c--){const d=this.textModel.tokenization.getLineTokens(c),h=d.getCount(),u=this.textModel.getLineContent(c);let f=h-1,g=u.length,p=u.length;c===t.lineNumber&&(f=d.findTokenIndexAtOffset(t.column-1),g=t.column-1,p=t.column-1);let _=!0;for(;f>=0;f--){const b=d.getLanguageId(f)===n&&!Pr(d.getStandardTokenType(f));if(b)_?g=d.getStartOffset(f):(g=d.getStartOffset(f),p=d.getEndOffset(f));else if(_&&g!==p){const C=l(c,u,g,p);if(C)return C}_=b}if(_&&g!==p){const b=l(c,u,g,p);if(b)return b}}return null}_findMatchingBracketDown(e,t,i){const n=e.languageId,s=e.forwardRegex;let r=1,a=0;const l=(d,h,u,f)=>{for(;;){if(i&&++a%100===0&&!i())return Xa.INSTANCE;const g=Co.findNextBracketInRange(s,d,h,u,f);if(!g)break;const p=h.substring(g.startColumn-1,g.endColumn-1).toLowerCase();if(e.isOpen(p)?r++:e.isClose(p)&&r--,r===0)return g;u=g.endColumn-1}return null},c=this.textModel.getLineCount();for(let d=t.lineNumber;d<=c;d++){const h=this.textModel.tokenization.getLineTokens(d),u=h.getCount(),f=this.textModel.getLineContent(d);let g=0,p=0,_=0;d===t.lineNumber&&(g=h.findTokenIndexAtOffset(t.column-1),p=t.column-1,_=t.column-1);let b=!0;for(;g=1;r--){const a=this.textModel.tokenization.getLineTokens(r),l=a.getCount(),c=this.textModel.getLineContent(r);let d=l-1,h=c.length,u=c.length;if(r===t.lineNumber){d=a.findTokenIndexAtOffset(t.column-1),h=t.column-1,u=t.column-1;const g=a.getLanguageId(d);i!==g&&(i=g,n=this.languageConfigurationService.getLanguageConfiguration(i).brackets,s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew)}let f=!0;for(;d>=0;d--){const g=a.getLanguageId(d);if(i!==g){if(n&&s&&f&&h!==u){const _=Co.findPrevBracketInRange(n.reversedRegex,r,c,h,u);if(_)return this._toFoundBracket(s,_);f=!1}i=g,n=this.languageConfigurationService.getLanguageConfiguration(i).brackets,s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew}const p=!!n&&!Pr(a.getStandardTokenType(d));if(p)f?h=a.getStartOffset(d):(h=a.getStartOffset(d),u=a.getEndOffset(d));else if(s&&n&&f&&h!==u){const _=Co.findPrevBracketInRange(n.reversedRegex,r,c,h,u);if(_)return this._toFoundBracket(s,_)}f=p}if(s&&n&&f&&h!==u){const g=Co.findPrevBracketInRange(n.reversedRegex,r,c,h,u);if(g)return this._toFoundBracket(s,g)}}return null}findNextBracket(e){const t=this.textModel.validatePosition(e);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketAfter(t)||null;const i=this.textModel.getLineCount();let n=null,s=null,r=null;for(let a=t.lineNumber;a<=i;a++){const l=this.textModel.tokenization.getLineTokens(a),c=l.getCount(),d=this.textModel.getLineContent(a);let h=0,u=0,f=0;if(a===t.lineNumber){h=l.findTokenIndexAtOffset(t.column-1),u=t.column-1,f=t.column-1;const p=l.getLanguageId(h);n!==p&&(n=p,s=this.languageConfigurationService.getLanguageConfiguration(n).brackets,r=this.languageConfigurationService.getLanguageConfiguration(n).bracketsNew)}let g=!0;for(;hp.closingBracketRange!==void 0&&p.range.strictContainsRange(f));return g?[g.openingBracketRange,g.closingBracketRange]:null}const n=FS(t),s=this.textModel.getLineCount(),r=new Map;let a=[];const l=(f,g)=>{if(!r.has(f)){const p=[];for(let _=0,b=g?g.brackets.length:0;_{for(;;){if(n&&++c%100===0&&!n())return Xa.INSTANCE;const C=Co.findNextBracketInRange(f.forwardRegex,g,p,_,b);if(!C)break;const w=p.substring(C.startColumn-1,C.endColumn-1).toLowerCase(),v=f.textIsBracket[w];if(v&&(v.isOpen(w)?a[v.index]++:v.isClose(w)&&a[v.index]--,a[v.index]===-1))return this._matchFoundBracket(C,v,!1,n);_=C.endColumn-1}return null};let h=null,u=null;for(let f=i.lineNumber;f<=s;f++){const g=this.textModel.tokenization.getLineTokens(f),p=g.getCount(),_=this.textModel.getLineContent(f);let b=0,C=0,w=0;if(f===i.lineNumber){b=g.findTokenIndexAtOffset(i.column-1),C=i.column-1,w=i.column-1;const y=g.getLanguageId(b);h!==y&&(h=y,u=this.languageConfigurationService.getLanguageConfiguration(h).brackets,l(h,u))}let v=!0;for(;be?.dispose()}}function FS(o){if(typeof o>"u")return()=>!0;{const e=Date.now();return()=>Date.now()-e<=o}}const Ow=class Ow{constructor(){this._searchCanceledBrand=void 0}};Ow.INSTANCE=new Ow;let Xa=Ow;function Kb(o){return o instanceof Xa?null:o}class iX extends z{constructor(e){super(),this.textModel=e,this.colorProvider=new o9,this.onDidChangeEmitter=new A,this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=e.getOptions().bracketPairColorizationOptions,this._register(e.bracketPairs.onDidChange(t=>{this.onDidChangeEmitter.fire()}))}handleDidChangeOptions(e){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(e,t,i,n){return n?[]:t===void 0?[]:this.colorizationOptions.enabled?this.textModel.bracketPairs.getBracketsInRange(e,!0).map(r=>({id:`bracket${r.range.toString()}-${r.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(r,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:r.range})).toArray():[]}getAllDecorations(e,t){return e===void 0?[]:this.colorizationOptions.enabled?this.getDecorationsInRange(new I(1,1,this.textModel.getLineCount(),1),e,t):[]}}class o9{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(e,t){return e.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(t?e.nestingLevelOfEqualBracketType:e.nestingLevel)}getInlineClassNameOfLevel(e){return`bracket-highlighting-${e%30}`}}Sr((o,e)=>{const t=[K7,j7,q7,G7,Z7,Y7],i=new o9;e.addRule(`.monaco-editor .${i.unexpectedClosingBracketClassName} { color: ${o.getColor(mQ)}; }`);const n=t.map(s=>o.getColor(s)).filter(s=>!!s).filter(s=>!s.isTransparent());for(let s=0;s<30;s++){const r=n[s%n.length];e.addRule(`.monaco-editor .${i.getInlineClassNameOfLevel(s)} { color: ${r}; }`)}});function jb(o){return o.replace(/\n/g,"\\n").replace(/\r/g,"\\r")}class Ki{get oldLength(){return this.oldText.length}get oldEnd(){return this.oldPosition+this.oldText.length}get newLength(){return this.newText.length}get newEnd(){return this.newPosition+this.newText.length}constructor(e,t,i,n){this.oldPosition=e,this.oldText=t,this.newPosition=i,this.newText=n}toString(){return this.oldText.length===0?`(insert@${this.oldPosition} "${jb(this.newText)}")`:this.newText.length===0?`(delete@${this.oldPosition} "${jb(this.oldText)}")`:`(replace@${this.oldPosition} "${jb(this.oldText)}" with "${jb(this.newText)}")`}static _writeStringSize(e){return 4+2*e.length}static _writeString(e,t,i){const n=t.length;er(e,n,i),i+=4;for(let s=0;s0&&(this.changes=nX(this.changes,t)),this.afterEOL=i,this.afterVersionId=n,this.afterCursorState=s}static _writeSelectionsSize(e){return 4+16*(e?e.length:0)}static _writeSelections(e,t,i){if(er(e,t?t.length:0,i),i+=4,t)for(const n of t)er(e,n.selectionStartLineNumber,i),i+=4,er(e,n.selectionStartColumn,i),i+=4,er(e,n.positionLineNumber,i),i+=4,er(e,n.positionColumn,i),i+=4;return i}static _readSelections(e,t,i){const n=Jo(e,t);t+=4;for(let s=0;st.toString()).join(", ")}matchesResource(e){return(ve.isUri(this.model)?this.model:this.model.uri).toString()===e.toString()}setModel(e){this.model=e}canAppend(e){return this.model===e&&this._data instanceof xi}append(e,t,i,n,s){this._data instanceof xi&&this._data.append(e,t,i,n,s)}close(){this._data instanceof xi&&(this._data=this._data.serialize())}open(){this._data instanceof xi||(this._data=xi.deserialize(this._data))}undo(){if(ve.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof xi&&(this._data=this._data.serialize());const e=xi.deserialize(this._data);this.model._applyUndo(e.changes,e.beforeEOL,e.beforeVersionId,e.beforeCursorState)}redo(){if(ve.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof xi&&(this._data=this._data.serialize());const e=xi.deserialize(this._data);this.model._applyRedo(e.changes,e.afterEOL,e.afterVersionId,e.afterCursorState)}heapSize(){return this._data instanceof xi&&(this._data=this._data.serialize()),this._data.byteLength+168}}class sX{get resources(){return this._editStackElementsArr.map(e=>e.resource)}constructor(e,t,i){this.label=e,this.code=t,this.type=1,this._isOpen=!0,this._editStackElementsArr=i.slice(0),this._editStackElementsMap=new Map;for(const n of this._editStackElementsArr){const s=Mu(n.resource);this._editStackElementsMap.set(s,n)}this._delegate=null}prepareUndoRedo(){if(this._delegate)return this._delegate.prepareUndoRedo(this)}matchesResource(e){const t=Mu(e);return this._editStackElementsMap.has(t)}setModel(e){const t=Mu(ve.isUri(e)?e:e.uri);this._editStackElementsMap.has(t)&&this._editStackElementsMap.get(t).setModel(e)}canAppend(e){if(!this._isOpen)return!1;const t=Mu(e.uri);return this._editStackElementsMap.has(t)?this._editStackElementsMap.get(t).canAppend(e):!1}append(e,t,i,n,s){const r=Mu(e.uri);this._editStackElementsMap.get(r).append(e,t,i,n,s)}close(){this._isOpen=!1}open(){}undo(){this._isOpen=!1;for(const e of this._editStackElementsArr)e.undo()}redo(){for(const e of this._editStackElementsArr)e.redo()}heapSize(e){const t=Mu(e);return this._editStackElementsMap.has(t)?this._editStackElementsMap.get(t).heapSize():0}split(){return this._editStackElementsArr}toString(){const e=[];for(const t of this._editStackElementsArr)e.push(`${Fo(t.resource)}: ${t}`);return`{${e.join(", ")}}`}}function SD(o){return o.getEOL()===` +`?0:1}function Ja(o){return o?o instanceof r9||o instanceof sX:!1}class l2{constructor(e,t){this._model=e,this._undoRedoService=t}pushStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);Ja(e)&&e.close()}popStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);Ja(e)&&e.open()}clear(){this._undoRedoService.removeElements(this._model.uri)}_getOrCreateEditStackElement(e,t){const i=this._undoRedoService.getLastElement(this._model.uri);if(Ja(i)&&i.canAppend(this._model))return i;const n=new r9(m("edit","Typing"),"undoredo.textBufferEdit",this._model,e);return this._undoRedoService.pushElement(n,t),n}pushEOL(e){const t=this._getOrCreateEditStackElement(null,void 0);this._model.setEOL(e),t.append(this._model,[],SD(this._model),this._model.getAlternativeVersionId(),null)}pushEditOperation(e,t,i,n){const s=this._getOrCreateEditStackElement(e,n),r=this._model.applyEdits(t,!0),a=l2._computeCursorState(i,r),l=r.map((c,d)=>({index:d,textChange:c.textChange}));return l.sort((c,d)=>c.textChange.oldPosition===d.textChange.oldPosition?c.index-d.index:c.textChange.oldPosition-d.textChange.oldPosition),s.append(this._model,l.map(c=>c.textChange),SD(this._model),this._model.getAlternativeVersionId(),a),a}static _computeCursorState(e,t){try{return e?e(t):null}catch(i){return Ze(i),null}}}class a9 extends z{constructor(){super(...arguments),this._isDisposed=!1}dispose(){super.dispose(),this._isDisposed=!0}assertNotDisposed(){if(this._isDisposed)throw new Error("TextModelPart is disposed!")}}function l9(o,e){let t=0,i=0;const n=o.length;for(;in)throw new nt("Illegal value for lineNumber");const s=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,r=!!(s&&s.offSide);let a=-2,l=-1,c=-2,d=-1;const h=L=>{if(a!==-1&&(a===-2||a>L-1)){a=-1,l=-1;for(let E=L-2;E>=0;E--){const N=this._computeIndentLevel(E);if(N>=0){a=E,l=N;break}}}if(c===-2){c=-1,d=-1;for(let E=L;E=0){c=E,d=N;break}}}};let u=-2,f=-1,g=-2,p=-1;const _=L=>{if(u===-2){u=-1,f=-1;for(let E=L-2;E>=0;E--){const N=this._computeIndentLevel(E);if(N>=0){u=E,f=N;break}}}if(g!==-1&&(g===-2||g=0){g=E,p=N;break}}}};let b=0,C=!0,w=0,v=!0,y=0,x=0;for(let L=0;C||v;L++){const E=e-L,N=e+L;L>1&&(E<1||E1&&(N>n||N>i)&&(v=!1),L>5e4&&(C=!1,v=!1);let H=-1;if(C&&E>=1){const W=this._computeIndentLevel(E-1);W>=0?(c=E-1,d=W,H=Math.ceil(W/this.textModel.getOptions().indentSize)):(h(E),H=this._getIndentLevelForWhitespaceLine(r,l,d))}let F=-1;if(v&&N<=n){const W=this._computeIndentLevel(N-1);W>=0?(u=N-1,f=W,F=Math.ceil(W/this.textModel.getOptions().indentSize)):(_(N),F=this._getIndentLevelForWhitespaceLine(r,f,p))}if(L===0){x=H;continue}if(L===1){if(N<=n&&F>=0&&x+1===F){C=!1,b=N,w=N,y=F;continue}if(E>=1&&H>=0&&H-1===x){v=!1,b=E,w=E,y=H;continue}if(b=e,w=e,y=x,y===0)return{startLineNumber:b,endLineNumber:w,indent:y}}C&&(H>=y?b=E:C=!1),v&&(F>=y?w=N:v=!1)}return{startLineNumber:b,endLineNumber:w,indent:y}}getLinesBracketGuides(e,t,i,n){const s=[];for(let h=e;h<=t;h++)s.push([]);const r=!0,a=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new I(e,1,t,this.textModel.getLineMaxColumn(t))).toArray();let l;if(i&&a.length>0){const h=(e<=i.lineNumber&&i.lineNumber<=t?a:this.textModel.bracketPairs.getBracketPairsInRange(I.fromPositions(i)).toArray()).filter(u=>I.strictContainsPosition(u.range,i));l=xC(h,u=>r)?.range}const c=this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType,d=new c9;for(const h of a){if(!h.closingBracketRange)continue;const u=l&&h.range.equalsRange(l);if(!u&&!n.includeInactive)continue;const f=d.getInlineClassName(h.nestingLevel,h.nestingLevelOfEqualBracketType,c)+(n.highlightActive&&u?" "+d.activeClassName:""),g=h.openingBracketRange.getStartPosition(),p=h.closingBracketRange.getStartPosition(),_=n.horizontalGuides===eh.Enabled||n.horizontalGuides===eh.EnabledForActive&&u;if(h.range.startLineNumber===h.range.endLineNumber){_&&s[h.range.startLineNumber-e].push(new Kd(-1,h.openingBracketRange.getEndPosition().column,f,new tp(!1,p.column),-1,-1));continue}const b=this.getVisibleColumnFromPosition(p),C=this.getVisibleColumnFromPosition(h.openingBracketRange.getStartPosition()),w=Math.min(C,b,h.minVisibleColumnIndentation+1);let v=!1;zn(this.textModel.getLineContent(h.closingBracketRange.startLineNumber))=e&&C>w&&s[g.lineNumber-e].push(new Kd(w,-1,f,new tp(!1,g.column),-1,-1)),p.lineNumber<=t&&b>w&&s[p.lineNumber-e].push(new Kd(w,-1,f,new tp(!v,p.column),-1,-1)))}for(const h of s)h.sort((u,f)=>u.visibleColumn-f.visibleColumn);return s}getVisibleColumnFromPosition(e){return _i.visibleColumnFromColumn(this.textModel.getLineContent(e.lineNumber),e.column,this.textModel.getOptions().tabSize)+1}getLinesIndentGuides(e,t){this.assertNotDisposed();const i=this.textModel.getLineCount();if(e<1||e>i)throw new Error("Illegal value for startLineNumber");if(t<1||t>i)throw new Error("Illegal value for endLineNumber");const n=this.textModel.getOptions(),s=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,r=!!(s&&s.offSide),a=new Array(t-e+1);let l=-2,c=-1,d=-2,h=-1;for(let u=e;u<=t;u++){const f=u-e,g=this._computeIndentLevel(u-1);if(g>=0){l=u-1,c=g,a[f]=Math.ceil(g/n.indentSize);continue}if(l===-2){l=-1,c=-1;for(let p=u-2;p>=0;p--){const _=this._computeIndentLevel(p);if(_>=0){l=p,c=_;break}}}if(d!==-1&&(d===-2||d=0){d=p,h=_;break}}}a[f]=this._getIndentLevelForWhitespaceLine(r,c,h)}return a}_getIndentLevelForWhitespaceLine(e,t,i){const n=this.textModel.getOptions();return t===-1||i===-1?0:t0&&a>0||l>0&&c>0)return;const d=Math.abs(a-c),h=Math.abs(r-l);if(d===0){n.spacesDiff=h,h>0&&0<=l-1&&l-10?n++:v>1&&s++,aX(r,a,_,w,h),h.looksLikeAlignment&&!(t&&e===h.spacesDiff)))continue;const x=h.spacesDiff;x<=c&&d[x]++,r=_,a=w}let u=t;n!==s&&(u=n{const _=d[p];_>g&&(g=_,f=p)}),f===4&&d[4]>0&&d[2]>0&&d[2]>=d[4]/2&&(f=2)}return{insertSpaces:u,tabSize:f}}function Fn(o){return(o.metadata&1)>>>0}function It(o,e){o.metadata=o.metadata&254|e<<0}function Zi(o){return(o.metadata&2)>>>1===1}function Lt(o,e){o.metadata=o.metadata&253|(e?1:0)<<1}function d9(o){return(o.metadata&4)>>>2===1}function DP(o,e){o.metadata=o.metadata&251|(e?1:0)<<2}function h9(o){return(o.metadata&64)>>>6===1}function IP(o,e){o.metadata=o.metadata&191|(e?1:0)<<6}function lX(o){return(o.metadata&24)>>>3}function EP(o,e){o.metadata=o.metadata&231|e<<3}function cX(o){return(o.metadata&32)>>>5===1}function NP(o,e){o.metadata=o.metadata&223|(e?1:0)<<5}class u9{constructor(e,t,i){this.metadata=0,this.parent=this,this.left=this,this.right=this,It(this,1),this.start=t,this.end=i,this.delta=0,this.maxEnd=i,this.id=e,this.ownerId=0,this.options=null,DP(this,!1),IP(this,!1),EP(this,1),NP(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=null,Lt(this,!1)}reset(e,t,i,n){this.start=t,this.end=i,this.maxEnd=i,this.cachedVersionId=e,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=n}setOptions(e){this.options=e;const t=this.options.className;DP(this,t==="squiggly-error"||t==="squiggly-warning"||t==="squiggly-info"),IP(this,this.options.glyphMarginClassName!==null),EP(this,this.options.stickiness),NP(this,this.options.collapseOnReplaceEdit)}setCachedOffsets(e,t,i){this.cachedVersionId!==i&&(this.range=null),this.cachedVersionId=i,this.cachedAbsoluteStart=e,this.cachedAbsoluteEnd=t}detach(){this.parent=null,this.left=null,this.right=null}}const Be=new u9(null,0,0);Be.parent=Be;Be.left=Be;Be.right=Be;It(Be,0);class BS{constructor(){this.root=Be,this.requestNormalizeDelta=!1}intervalSearch(e,t,i,n,s,r){return this.root===Be?[]:_X(this,e,t,i,n,s,r)}search(e,t,i,n){return this.root===Be?[]:pX(this,e,t,i,n)}collectNodesFromOwner(e){return gX(this,e)}collectNodesPostOrder(){return mX(this)}insert(e){TP(this,e),this._normalizeDeltaIfNecessary()}delete(e){MP(this,e),this._normalizeDeltaIfNecessary()}resolveNode(e,t){const i=e;let n=0;for(;e!==this.root;)e===e.parent.right&&(n+=e.parent.delta),e=e.parent;const s=i.start+n,r=i.end+n;i.setCachedOffsets(s,r,t)}acceptReplace(e,t,i,n){const s=uX(this,e,e+t);for(let r=0,a=s.length;rt||i===1?!1:i===2?!0:e}function hX(o,e,t,i,n){const s=lX(o),r=s===0||s===2,a=s===1||s===2,l=t-e,c=i,d=Math.min(l,c),h=o.start;let u=!1;const f=o.end;let g=!1;e<=h&&f<=t&&cX(o)&&(o.start=e,u=!0,o.end=e,g=!0);{const _=n?1:l>0?2:0;!u&&Ru(h,r,e,_)&&(u=!0),!g&&Ru(f,a,e,_)&&(g=!0)}if(d>0&&!n){const _=l>c?2:0;!u&&Ru(h,r,e+d,_)&&(u=!0),!g&&Ru(f,a,e+d,_)&&(g=!0)}{const _=n?1:0;!u&&Ru(h,r,t,_)&&(o.start=e+c,u=!0),!g&&Ru(f,a,t,_)&&(o.end=e+c,g=!0)}const p=c-l;u||(o.start=Math.max(0,h+p)),g||(o.end=Math.max(0,f+p)),o.start>o.end&&(o.end=o.start)}function uX(o,e,t){let i=o.root,n=0,s=0,r=0,a=0;const l=[];let c=0;for(;i!==Be;){if(Zi(i)){Lt(i.left,!1),Lt(i.right,!1),i===i.parent.right&&(n-=i.parent.delta),i=i.parent;continue}if(!Zi(i.left)){if(s=n+i.maxEnd,st){Lt(i,!0);continue}if(a=n+i.end,a>=e&&(i.setCachedOffsets(r,a,0),l[c++]=i),Lt(i,!0),i.right!==Be&&!Zi(i.right)){n+=i.delta,i=i.right;continue}}return Lt(o.root,!1),l}function fX(o,e,t,i){let n=o.root,s=0,r=0,a=0;const l=i-(t-e);for(;n!==Be;){if(Zi(n)){Lt(n.left,!1),Lt(n.right,!1),n===n.parent.right&&(s-=n.parent.delta),Fc(n),n=n.parent;continue}if(!Zi(n.left)){if(r=s+n.maxEnd,rt){n.start+=l,n.end+=l,n.delta+=l,(n.delta<-1073741824||n.delta>1073741824)&&(o.requestNormalizeDelta=!0),Lt(n,!0);continue}if(Lt(n,!0),n.right!==Be&&!Zi(n.right)){s+=n.delta,n=n.right;continue}}Lt(o.root,!1)}function gX(o,e){let t=o.root;const i=[];let n=0;for(;t!==Be;){if(Zi(t)){Lt(t.left,!1),Lt(t.right,!1),t=t.parent;continue}if(t.left!==Be&&!Zi(t.left)){t=t.left;continue}if(t.ownerId===e&&(i[n++]=t),Lt(t,!0),t.right!==Be&&!Zi(t.right)){t=t.right;continue}}return Lt(o.root,!1),i}function mX(o){let e=o.root;const t=[];let i=0;for(;e!==Be;){if(Zi(e)){Lt(e.left,!1),Lt(e.right,!1),e=e.parent;continue}if(e.left!==Be&&!Zi(e.left)){e=e.left;continue}if(e.right!==Be&&!Zi(e.right)){e=e.right;continue}t[i++]=e,Lt(e,!0)}return Lt(o.root,!1),t}function pX(o,e,t,i,n){let s=o.root,r=0,a=0,l=0;const c=[];let d=0;for(;s!==Be;){if(Zi(s)){Lt(s.left,!1),Lt(s.right,!1),s===s.parent.right&&(r-=s.parent.delta),s=s.parent;continue}if(s.left!==Be&&!Zi(s.left)){s=s.left;continue}a=r+s.start,l=r+s.end,s.setCachedOffsets(a,l,i);let h=!0;if(e&&s.ownerId&&s.ownerId!==e&&(h=!1),t&&d9(s)&&(h=!1),n&&!h9(s)&&(h=!1),h&&(c[d++]=s),Lt(s,!0),s.right!==Be&&!Zi(s.right)){r+=s.delta,s=s.right;continue}}return Lt(o.root,!1),c}function _X(o,e,t,i,n,s,r){let a=o.root,l=0,c=0,d=0,h=0;const u=[];let f=0;for(;a!==Be;){if(Zi(a)){Lt(a.left,!1),Lt(a.right,!1),a===a.parent.right&&(l-=a.parent.delta),a=a.parent;continue}if(!Zi(a.left)){if(c=l+a.maxEnd,ct){Lt(a,!0);continue}if(h=l+a.end,h>=e){a.setCachedOffsets(d,h,s);let g=!0;i&&a.ownerId&&a.ownerId!==i&&(g=!1),n&&d9(a)&&(g=!1),r&&!h9(a)&&(g=!1),g&&(u[f++]=a)}if(Lt(a,!0),a.right!==Be&&!Zi(a.right)){l+=a.delta,a=a.right;continue}}return Lt(o.root,!1),u}function TP(o,e){if(o.root===Be)return e.parent=Be,e.left=Be,e.right=Be,It(e,0),o.root=e,o.root;bX(o,e),Kl(e.parent);let t=e;for(;t!==o.root&&Fn(t.parent)===1;)if(t.parent===t.parent.parent.left){const i=t.parent.parent.right;Fn(i)===1?(It(t.parent,0),It(i,0),It(t.parent.parent,1),t=t.parent.parent):(t===t.parent.right&&(t=t.parent,ip(o,t)),It(t.parent,0),It(t.parent.parent,1),np(o,t.parent.parent))}else{const i=t.parent.parent.left;Fn(i)===1?(It(t.parent,0),It(i,0),It(t.parent.parent,1),t=t.parent.parent):(t===t.parent.left&&(t=t.parent,np(o,t)),It(t.parent,0),It(t.parent.parent,1),ip(o,t.parent.parent))}return It(o.root,0),e}function bX(o,e){let t=0,i=o.root;const n=e.start,s=e.end;for(;;)if(vX(n,s,i.start+t,i.end+t)<0)if(i.left===Be){e.start-=t,e.end-=t,e.maxEnd-=t,i.left=e;break}else i=i.left;else if(i.right===Be){e.start-=t+i.delta,e.end-=t+i.delta,e.maxEnd-=t+i.delta,i.right=e;break}else t+=i.delta,i=i.right;e.parent=i,e.left=Be,e.right=Be,It(e,1)}function MP(o,e){let t,i;if(e.left===Be?(t=e.right,i=e,t.delta+=e.delta,(t.delta<-1073741824||t.delta>1073741824)&&(o.requestNormalizeDelta=!0),t.start+=e.delta,t.end+=e.delta):e.right===Be?(t=e.left,i=e):(i=CX(e.right),t=i.right,t.start+=i.delta,t.end+=i.delta,t.delta+=i.delta,(t.delta<-1073741824||t.delta>1073741824)&&(o.requestNormalizeDelta=!0),i.start+=e.delta,i.end+=e.delta,i.delta=e.delta,(i.delta<-1073741824||i.delta>1073741824)&&(o.requestNormalizeDelta=!0)),i===o.root){o.root=t,It(t,0),e.detach(),WS(),Fc(t),o.root.parent=Be;return}const n=Fn(i)===1;if(i===i.parent.left?i.parent.left=t:i.parent.right=t,i===e?t.parent=i.parent:(i.parent===e?t.parent=i:t.parent=i.parent,i.left=e.left,i.right=e.right,i.parent=e.parent,It(i,Fn(e)),e===o.root?o.root=i:e===e.parent.left?e.parent.left=i:e.parent.right=i,i.left!==Be&&(i.left.parent=i),i.right!==Be&&(i.right.parent=i)),e.detach(),n){Kl(t.parent),i!==e&&(Kl(i),Kl(i.parent)),WS();return}Kl(t),Kl(t.parent),i!==e&&(Kl(i),Kl(i.parent));let s;for(;t!==o.root&&Fn(t)===0;)t===t.parent.left?(s=t.parent.right,Fn(s)===1&&(It(s,0),It(t.parent,1),ip(o,t.parent),s=t.parent.right),Fn(s.left)===0&&Fn(s.right)===0?(It(s,1),t=t.parent):(Fn(s.right)===0&&(It(s.left,0),It(s,1),np(o,s),s=t.parent.right),It(s,Fn(t.parent)),It(t.parent,0),It(s.right,0),ip(o,t.parent),t=o.root)):(s=t.parent.left,Fn(s)===1&&(It(s,0),It(t.parent,1),np(o,t.parent),s=t.parent.left),Fn(s.left)===0&&Fn(s.right)===0?(It(s,1),t=t.parent):(Fn(s.left)===0&&(It(s.right,0),It(s,1),ip(o,s),s=t.parent.left),It(s,Fn(t.parent)),It(t.parent,0),It(s.left,0),np(o,t.parent),t=o.root));It(t,0),WS()}function CX(o){for(;o.left!==Be;)o=o.left;return o}function WS(){Be.parent=Be,Be.delta=0,Be.start=0,Be.end=0}function ip(o,e){const t=e.right;t.delta+=e.delta,(t.delta<-1073741824||t.delta>1073741824)&&(o.requestNormalizeDelta=!0),t.start+=e.delta,t.end+=e.delta,e.right=t.left,t.left!==Be&&(t.left.parent=e),t.parent=e.parent,e.parent===Be?o.root=t:e===e.parent.left?e.parent.left=t:e.parent.right=t,t.left=e,e.parent=t,Fc(e),Fc(t)}function np(o,e){const t=e.left;e.delta-=t.delta,(e.delta<-1073741824||e.delta>1073741824)&&(o.requestNormalizeDelta=!0),e.start-=t.delta,e.end-=t.delta,e.left=t.right,t.right!==Be&&(t.right.parent=e),t.parent=e.parent,e.parent===Be?o.root=t:e===e.parent.right?e.parent.right=t:e.parent.left=t,t.right=e,e.parent=t,Fc(e),Fc(t)}function f9(o){let e=o.end;if(o.left!==Be){const t=o.left.maxEnd;t>e&&(e=t)}if(o.right!==Be){const t=o.right.maxEnd+o.delta;t>e&&(e=t)}return e}function Fc(o){o.maxEnd=f9(o)}function Kl(o){for(;o!==Be;){const e=f9(o);if(o.maxEnd===e)return;o.maxEnd=e,o=o.parent}}function vX(o,e,t,i){return o===t?e-i:o-t}class LD{constructor(e,t){this.piece=e,this.color=t,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==Le)return c2(this.right);let e=this;for(;e.parent!==Le&&e.parent.left!==e;)e=e.parent;return e.parent===Le?Le:e.parent}prev(){if(this.left!==Le)return g9(this.left);let e=this;for(;e.parent!==Le&&e.parent.right!==e;)e=e.parent;return e.parent===Le?Le:e.parent}detach(){this.parent=null,this.left=null,this.right=null}}const Le=new LD(null,0);Le.parent=Le;Le.left=Le;Le.right=Le;Le.color=0;function c2(o){for(;o.left!==Le;)o=o.left;return o}function g9(o){for(;o.right!==Le;)o=o.right;return o}function d2(o){return o===Le?0:o.size_left+o.piece.length+d2(o.right)}function h2(o){return o===Le?0:o.lf_left+o.piece.lineFeedCnt+h2(o.right)}function HS(){Le.parent=Le}function sp(o,e){const t=e.right;t.size_left+=e.size_left+(e.piece?e.piece.length:0),t.lf_left+=e.lf_left+(e.piece?e.piece.lineFeedCnt:0),e.right=t.left,t.left!==Le&&(t.left.parent=e),t.parent=e.parent,e.parent===Le?o.root=t:e.parent.left===e?e.parent.left=t:e.parent.right=t,t.left=e,e.parent=t}function op(o,e){const t=e.left;e.left=t.right,t.right!==Le&&(t.right.parent=e),t.parent=e.parent,e.size_left-=t.size_left+(t.piece?t.piece.length:0),e.lf_left-=t.lf_left+(t.piece?t.piece.lineFeedCnt:0),e.parent===Le?o.root=t:e===e.parent.right?e.parent.right=t:e.parent.left=t,t.right=e,e.parent=t}function qb(o,e){let t,i;if(e.left===Le?(i=e,t=i.right):e.right===Le?(i=e,t=i.left):(i=c2(e.right),t=i.right),i===o.root){o.root=t,t.color=0,e.detach(),HS(),o.root.parent=Le;return}const n=i.color===1;if(i===i.parent.left?i.parent.left=t:i.parent.right=t,i===e?(t.parent=i.parent,Pm(o,t)):(i.parent===e?t.parent=i:t.parent=i.parent,Pm(o,t),i.left=e.left,i.right=e.right,i.parent=e.parent,i.color=e.color,e===o.root?o.root=i:e===e.parent.left?e.parent.left=i:e.parent.right=i,i.left!==Le&&(i.left.parent=i),i.right!==Le&&(i.right.parent=i),i.size_left=e.size_left,i.lf_left=e.lf_left,Pm(o,i)),e.detach(),t.parent.left===t){const r=d2(t),a=h2(t);if(r!==t.parent.size_left||a!==t.parent.lf_left){const l=r-t.parent.size_left,c=a-t.parent.lf_left;t.parent.size_left=r,t.parent.lf_left=a,Ha(o,t.parent,l,c)}}if(Pm(o,t.parent),n){HS();return}let s;for(;t!==o.root&&t.color===0;)t===t.parent.left?(s=t.parent.right,s.color===1&&(s.color=0,t.parent.color=1,sp(o,t.parent),s=t.parent.right),s.left.color===0&&s.right.color===0?(s.color=1,t=t.parent):(s.right.color===0&&(s.left.color=0,s.color=1,op(o,s),s=t.parent.right),s.color=t.parent.color,t.parent.color=0,s.right.color=0,sp(o,t.parent),t=o.root)):(s=t.parent.left,s.color===1&&(s.color=0,t.parent.color=1,op(o,t.parent),s=t.parent.left),s.left.color===0&&s.right.color===0?(s.color=1,t=t.parent):(s.left.color===0&&(s.right.color=0,s.color=1,sp(o,s),s=t.parent.left),s.color=t.parent.color,t.parent.color=0,s.left.color=0,op(o,t.parent),t=o.root));t.color=0,HS()}function RP(o,e){for(Pm(o,e);e!==o.root&&e.parent.color===1;)if(e.parent===e.parent.parent.left){const t=e.parent.parent.right;t.color===1?(e.parent.color=0,t.color=0,e.parent.parent.color=1,e=e.parent.parent):(e===e.parent.right&&(e=e.parent,sp(o,e)),e.parent.color=0,e.parent.parent.color=1,op(o,e.parent.parent))}else{const t=e.parent.parent.left;t.color===1?(e.parent.color=0,t.color=0,e.parent.parent.color=1,e=e.parent.parent):(e===e.parent.left&&(e=e.parent,op(o,e)),e.parent.color=0,e.parent.parent.color=1,sp(o,e.parent.parent))}o.root.color=0}function Ha(o,e,t,i){for(;e!==o.root&&e!==Le;)e.parent.left===e&&(e.parent.size_left+=t,e.parent.lf_left+=i),e=e.parent}function Pm(o,e){let t=0,i=0;if(e!==o.root){for(;e!==o.root&&e===e.parent.right;)e=e.parent;if(e!==o.root)for(e=e.parent,t=d2(e.left)-e.size_left,i=h2(e.left)-e.lf_left,e.size_left+=t,e.lf_left+=i;e!==o.root&&(t!==0||i!==0);)e.parent.left===e&&(e.parent.size_left+=t,e.parent.lf_left+=i),e=e.parent}}const Ra=65535;function m9(o){let e;return o[o.length-1]<65536?e=new Uint16Array(o.length):e=new Uint32Array(o.length),e.set(o,0),e}class wX{constructor(e,t,i,n,s){this.lineStarts=e,this.cr=t,this.lf=i,this.crlf=n,this.isBasicASCII=s}}function Va(o,e=!0){const t=[0];let i=1;for(let n=0,s=o.length;n126)&&(r=!1)}const a=new wX(m9(o),i,n,s,r);return o.length=0,a}class Xn{constructor(e,t,i,n,s){this.bufferIndex=e,this.start=t,this.end=i,this.lineFeedCnt=n,this.length=s}}class Ld{constructor(e,t){this.buffer=e,this.lineStarts=t}}class SX{constructor(e,t){this._pieces=[],this._tree=e,this._BOM=t,this._index=0,e.root!==Le&&e.iterate(e.root,i=>(i!==Le&&this._pieces.push(i.piece),!0))}read(){return this._pieces.length===0?this._index===0?(this._index++,this._BOM):null:this._index>this._pieces.length-1?null:this._index===0?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class LX{constructor(e){this._limit=e,this._cache=[]}get(e){for(let t=this._cache.length-1;t>=0;t--){const i=this._cache[t];if(i.nodeStartOffset<=e&&i.nodeStartOffset+i.node.piece.length>=e)return i}return null}get2(e){for(let t=this._cache.length-1;t>=0;t--){const i=this._cache[t];if(i.nodeStartLineNumber&&i.nodeStartLineNumber=e)return i}return null}set(e){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(e)}validate(e){let t=!1;const i=this._cache;for(let n=0;n=e){i[n]=null,t=!0;continue}}if(t){const n=[];for(const s of i)s!==null&&n.push(s);this._cache=n}}}class xX{constructor(e,t,i){this.create(e,t,i)}create(e,t,i){this._buffers=[new Ld("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=Le,this._lineCnt=1,this._length=0,this._EOL=t,this._EOLLength=t.length,this._EOLNormalized=i;let n=null;for(let s=0,r=e.length;s0){e[s].lineStarts||(e[s].lineStarts=Va(e[s].buffer));const a=new Xn(s+1,{line:0,column:0},{line:e[s].lineStarts.length-1,column:e[s].buffer.length-e[s].lineStarts[e[s].lineStarts.length-1]},e[s].lineStarts.length-1,e[s].buffer.length);this._buffers.push(e[s]),n=this.rbInsertRight(n,a)}this._searchCache=new LX(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(e){const t=Ra,i=t-Math.floor(t/3),n=i*2;let s="",r=0;const a=[];if(this.iterate(this.root,l=>{const c=this.getNodeContent(l),d=c.length;if(r<=i||r+d0){const l=s.replace(/\r\n|\r|\n/g,e);a.push(new Ld(l,Va(l)))}this.create(a,e,!0)}getEOL(){return this._EOL}setEOL(e){this._EOL=e,this._EOLLength=this._EOL.length,this.normalizeEOL(e)}createSnapshot(e){return new SX(this,e)}getOffsetAt(e,t){let i=0,n=this.root;for(;n!==Le;)if(n.left!==Le&&n.lf_left+1>=e)n=n.left;else if(n.lf_left+n.piece.lineFeedCnt+1>=e){i+=n.size_left;const s=this.getAccumulatedValue(n,e-n.lf_left-2);return i+=s+t-1}else e-=n.lf_left+n.piece.lineFeedCnt,i+=n.size_left+n.piece.length,n=n.right;return i}getPositionAt(e){e=Math.floor(e),e=Math.max(0,e);let t=this.root,i=0;const n=e;for(;t!==Le;)if(t.size_left!==0&&t.size_left>=e)t=t.left;else if(t.size_left+t.piece.length>=e){const s=this.getIndexOf(t,e-t.size_left);if(i+=t.lf_left+s.index,s.index===0){const r=this.getOffsetAt(i+1,1),a=n-r;return new P(i+1,a+1)}return new P(i+1,s.remainder+1)}else if(e-=t.size_left+t.piece.length,i+=t.lf_left+t.piece.lineFeedCnt,t.right===Le){const s=this.getOffsetAt(i+1,1),r=n-e-s;return new P(i+1,r+1)}else t=t.right;return new P(1,1)}getValueInRange(e,t){if(e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn)return"";const i=this.nodeAt2(e.startLineNumber,e.startColumn),n=this.nodeAt2(e.endLineNumber,e.endColumn),s=this.getValueInRange2(i,n);return t?t!==this._EOL||!this._EOLNormalized?s.replace(/\r\n|\r|\n/g,t):t===this.getEOL()&&this._EOLNormalized?s:s.replace(/\r\n|\r|\n/g,t):s}getValueInRange2(e,t){if(e.node===t.node){const a=e.node,l=this._buffers[a.piece.bufferIndex].buffer,c=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start);return l.substring(c+e.remainder,c+t.remainder)}let i=e.node;const n=this._buffers[i.piece.bufferIndex].buffer,s=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);let r=n.substring(s+e.remainder,s+i.piece.length);for(i=i.next();i!==Le;){const a=this._buffers[i.piece.bufferIndex].buffer,l=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);if(i===t.node){r+=a.substring(l,l+t.remainder);break}else r+=a.substr(l,i.piece.length);i=i.next()}return r}getLinesContent(){const e=[];let t=0,i="",n=!1;return this.iterate(this.root,s=>{if(s===Le)return!0;const r=s.piece;let a=r.length;if(a===0)return!0;const l=this._buffers[r.bufferIndex].buffer,c=this._buffers[r.bufferIndex].lineStarts,d=r.start.line,h=r.end.line;let u=c[d]+r.start.column;if(n&&(l.charCodeAt(u)===10&&(u++,a--),e[t++]=i,i="",n=!1,a===0))return!0;if(d===h)return!this._EOLNormalized&&l.charCodeAt(u+a-1)===13?(n=!0,i+=l.substr(u,a-1)):i+=l.substr(u,a),!0;i+=this._EOLNormalized?l.substring(u,Math.max(u,c[d+1]-this._EOLLength)):l.substring(u,c[d+1]).replace(/(\r\n|\r|\n)$/,""),e[t++]=i;for(let f=d+1;fv+g,t.reset(0)):(C=u.buffer,w=v=>v,t.reset(g));do if(_=t.next(C),_){if(w(_.index)>=p)return d;this.positionInBuffer(e,w(_.index)-f,b);const v=this.getLineFeedCnt(e.piece.bufferIndex,s,b),y=b.line===s.line?b.column-s.column+n:b.column+1,x=y+_[0].length;if(h[d++]=bd(new I(i+v,y,i+v,x),_,l),w(_.index)+_[0].length>=p||d>=c)return d}while(_);return d}findMatchesLineByLine(e,t,i,n){const s=[];let r=0;const a=new ef(t.wordSeparators,t.regex);let l=this.nodeAt2(e.startLineNumber,e.startColumn);if(l===null)return[];const c=this.nodeAt2(e.endLineNumber,e.endColumn);if(c===null)return[];let d=this.positionInBuffer(l.node,l.remainder);const h=this.positionInBuffer(c.node,c.remainder);if(l.node===c.node)return this.findMatchesInNode(l.node,a,e.startLineNumber,e.startColumn,d,h,t,i,n,r,s),s;let u=e.startLineNumber,f=l.node;for(;f!==c.node;){const p=this.getLineFeedCnt(f.piece.bufferIndex,d,f.piece.end);if(p>=1){const b=this._buffers[f.piece.bufferIndex].lineStarts,C=this.offsetInBuffer(f.piece.bufferIndex,f.piece.start),w=b[d.line+p],v=u===e.startLineNumber?e.startColumn:1;if(r=this.findMatchesInNode(f,a,u,v,d,this.positionInBuffer(f,w-C),t,i,n,r,s),r>=n)return s;u+=p}const _=u===e.startLineNumber?e.startColumn-1:0;if(u===e.endLineNumber){const b=this.getLineContent(u).substring(_,e.endColumn-1);return r=this._findMatchesInLine(t,a,b,e.endLineNumber,_,r,s,i,n),s}if(r=this._findMatchesInLine(t,a,this.getLineContent(u).substr(_),u,_,r,s,i,n),r>=n)return s;u++,l=this.nodeAt2(u,1),f=l.node,d=this.positionInBuffer(l.node,l.remainder)}if(u===e.endLineNumber){const p=u===e.startLineNumber?e.startColumn-1:0,_=this.getLineContent(u).substring(p,e.endColumn-1);return r=this._findMatchesInLine(t,a,_,e.endLineNumber,p,r,s,i,n),s}const g=u===e.startLineNumber?e.startColumn:1;return r=this.findMatchesInNode(c.node,a,u,g,d,h,t,i,n,r,s),s}_findMatchesInLine(e,t,i,n,s,r,a,l,c){const d=e.wordSeparators;if(!l&&e.simpleSearch){const u=e.simpleSearch,f=u.length,g=i.length;let p=-f;for(;(p=i.indexOf(u,p+f))!==-1;)if((!d||hT(d,i,g,p,f))&&(a[r++]=new Qp(new I(n,p+1+s,n,p+1+f+s),null),r>=c))return r;return r}let h;t.reset(0);do if(h=t.next(i),h&&(a[r++]=bd(new I(n,h.index+1+s,n,h.index+1+h[0].length+s),h,l),r>=c))return r;while(h);return r}insert(e,t,i=!1){if(this._EOLNormalized=this._EOLNormalized&&i,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==Le){const{node:n,remainder:s,nodeStartOffset:r}=this.nodeAt(e),a=n.piece,l=a.bufferIndex,c=this.positionInBuffer(n,s);if(n.piece.bufferIndex===0&&a.end.line===this._lastChangeBufferPos.line&&a.end.column===this._lastChangeBufferPos.column&&r+a.length===e&&t.lengthe){const d=[];let h=new Xn(a.bufferIndex,c,a.end,this.getLineFeedCnt(a.bufferIndex,c,a.end),this.offsetInBuffer(l,a.end)-this.offsetInBuffer(l,c));if(this.shouldCheckCRLF()&&this.endWithCR(t)&&this.nodeCharCodeAt(n,s)===10){const p={line:h.start.line+1,column:0};h=new Xn(h.bufferIndex,p,h.end,this.getLineFeedCnt(h.bufferIndex,p,h.end),h.length-1),t+=` +`}if(this.shouldCheckCRLF()&&this.startWithLF(t))if(this.nodeCharCodeAt(n,s-1)===13){const p=this.positionInBuffer(n,s-1);this.deleteNodeTail(n,p),t="\r"+t,n.piece.length===0&&d.push(n)}else this.deleteNodeTail(n,c);else this.deleteNodeTail(n,c);const u=this.createNewPieces(t);h.length>0&&this.rbInsertRight(n,h);let f=n;for(let g=0;g=0;r--)s=this.rbInsertLeft(s,n[r]);this.validateCRLFWithPrevNode(s),this.deleteNodes(i)}insertContentToNodeRight(e,t){this.adjustCarriageReturnFromNext(e,t)&&(e+=` +`);const i=this.createNewPieces(e),n=this.rbInsertRight(t,i[0]);let s=n;for(let r=1;r=u)c=h+1;else break;return i?(i.line=h,i.column=l-f,null):{line:h,column:l-f}}getLineFeedCnt(e,t,i){if(i.column===0)return i.line-t.line;const n=this._buffers[e].lineStarts;if(i.line===n.length-1)return i.line-t.line;const s=n[i.line+1],r=n[i.line]+i.column;if(s>r+1)return i.line-t.line;const a=r-1;return this._buffers[e].buffer.charCodeAt(a)===13?i.line-t.line+1:i.line-t.line}offsetInBuffer(e,t){return this._buffers[e].lineStarts[t.line]+t.column}deleteNodes(e){for(let t=0;tRa){const d=[];for(;e.length>Ra;){const u=e.charCodeAt(Ra-1);let f;u===13||u>=55296&&u<=56319?(f=e.substring(0,Ra-1),e=e.substring(Ra-1)):(f=e.substring(0,Ra),e=e.substring(Ra));const g=Va(f);d.push(new Xn(this._buffers.length,{line:0,column:0},{line:g.length-1,column:f.length-g[g.length-1]},g.length-1,f.length)),this._buffers.push(new Ld(f,g))}const h=Va(e);return d.push(new Xn(this._buffers.length,{line:0,column:0},{line:h.length-1,column:e.length-h[h.length-1]},h.length-1,e.length)),this._buffers.push(new Ld(e,h)),d}let t=this._buffers[0].buffer.length;const i=Va(e,!1);let n=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===t&&t!==0&&this.startWithLF(e)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},n=this._lastChangeBufferPos;for(let d=0;d=e-1)i=i.left;else if(i.lf_left+i.piece.lineFeedCnt>e-1){const l=this.getAccumulatedValue(i,e-i.lf_left-2),c=this.getAccumulatedValue(i,e-i.lf_left-1),d=this._buffers[i.piece.bufferIndex].buffer,h=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return r+=i.size_left,this._searchCache.set({node:i,nodeStartOffset:r,nodeStartLineNumber:a-(e-1-i.lf_left)}),d.substring(h+l,h+c-t)}else if(i.lf_left+i.piece.lineFeedCnt===e-1){const l=this.getAccumulatedValue(i,e-i.lf_left-2),c=this._buffers[i.piece.bufferIndex].buffer,d=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);n=c.substring(d+l,d+i.piece.length);break}else e-=i.lf_left+i.piece.lineFeedCnt,r+=i.size_left+i.piece.length,i=i.right}for(i=i.next();i!==Le;){const r=this._buffers[i.piece.bufferIndex].buffer;if(i.piece.lineFeedCnt>0){const a=this.getAccumulatedValue(i,0),l=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return n+=r.substring(l,l+a-t),n}else{const a=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);n+=r.substr(a,i.piece.length)}i=i.next()}return n}computeBufferMetadata(){let e=this.root,t=1,i=0;for(;e!==Le;)t+=e.lf_left+e.piece.lineFeedCnt,i+=e.size_left+e.piece.length,e=e.right;this._lineCnt=t,this._length=i,this._searchCache.validate(this._length)}getIndexOf(e,t){const i=e.piece,n=this.positionInBuffer(e,t),s=n.line-i.start.line;if(this.offsetInBuffer(i.bufferIndex,i.end)-this.offsetInBuffer(i.bufferIndex,i.start)===t){const r=this.getLineFeedCnt(e.piece.bufferIndex,i.start,n);if(r!==s)return{index:r,remainder:0}}return{index:s,remainder:n.column}}getAccumulatedValue(e,t){if(t<0)return 0;const i=e.piece,n=this._buffers[i.bufferIndex].lineStarts,s=i.start.line+t+1;return s>i.end.line?n[i.end.line]+i.end.column-n[i.start.line]-i.start.column:n[s]-n[i.start.line]-i.start.column}deleteNodeTail(e,t){const i=e.piece,n=i.lineFeedCnt,s=this.offsetInBuffer(i.bufferIndex,i.end),r=t,a=this.offsetInBuffer(i.bufferIndex,r),l=this.getLineFeedCnt(i.bufferIndex,i.start,r),c=l-n,d=a-s,h=i.length+d;e.piece=new Xn(i.bufferIndex,i.start,r,l,h),Ha(this,e,d,c)}deleteNodeHead(e,t){const i=e.piece,n=i.lineFeedCnt,s=this.offsetInBuffer(i.bufferIndex,i.start),r=t,a=this.getLineFeedCnt(i.bufferIndex,r,i.end),l=this.offsetInBuffer(i.bufferIndex,r),c=a-n,d=s-l,h=i.length+d;e.piece=new Xn(i.bufferIndex,r,i.end,a,h),Ha(this,e,d,c)}shrinkNode(e,t,i){const n=e.piece,s=n.start,r=n.end,a=n.length,l=n.lineFeedCnt,c=t,d=this.getLineFeedCnt(n.bufferIndex,n.start,c),h=this.offsetInBuffer(n.bufferIndex,t)-this.offsetInBuffer(n.bufferIndex,s);e.piece=new Xn(n.bufferIndex,n.start,c,d,h),Ha(this,e,h-a,d-l);const u=new Xn(n.bufferIndex,i,r,this.getLineFeedCnt(n.bufferIndex,i,r),this.offsetInBuffer(n.bufferIndex,r)-this.offsetInBuffer(n.bufferIndex,i)),f=this.rbInsertRight(e,u);this.validateCRLFWithPrevNode(f)}appendToNode(e,t){this.adjustCarriageReturnFromNext(t,e)&&(t+=` +`);const i=this.shouldCheckCRLF()&&this.startWithLF(t)&&this.endWithCR(e),n=this._buffers[0].buffer.length;this._buffers[0].buffer+=t;const s=Va(t,!1);for(let f=0;fe)t=t.left;else if(t.size_left+t.piece.length>=e){n+=t.size_left;const s={node:t,remainder:e-t.size_left,nodeStartOffset:n};return this._searchCache.set(s),s}else e-=t.size_left+t.piece.length,n+=t.size_left+t.piece.length,t=t.right;return null}nodeAt2(e,t){let i=this.root,n=0;for(;i!==Le;)if(i.left!==Le&&i.lf_left>=e-1)i=i.left;else if(i.lf_left+i.piece.lineFeedCnt>e-1){const s=this.getAccumulatedValue(i,e-i.lf_left-2),r=this.getAccumulatedValue(i,e-i.lf_left-1);return n+=i.size_left,{node:i,remainder:Math.min(s+t-1,r),nodeStartOffset:n}}else if(i.lf_left+i.piece.lineFeedCnt===e-1){const s=this.getAccumulatedValue(i,e-i.lf_left-2);if(s+t-1<=i.piece.length)return{node:i,remainder:s+t-1,nodeStartOffset:n};t-=i.piece.length-s;break}else e-=i.lf_left+i.piece.lineFeedCnt,n+=i.size_left+i.piece.length,i=i.right;for(i=i.next();i!==Le;){if(i.piece.lineFeedCnt>0){const s=this.getAccumulatedValue(i,0),r=this.offsetOfNode(i);return{node:i,remainder:Math.min(t-1,s),nodeStartOffset:r}}else if(i.piece.length>=t-1){const s=this.offsetOfNode(i);return{node:i,remainder:t-1,nodeStartOffset:s}}else t-=i.piece.length;i=i.next()}return null}nodeCharCodeAt(e,t){if(e.piece.lineFeedCnt<1)return-1;const i=this._buffers[e.piece.bufferIndex],n=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start)+t;return i.buffer.charCodeAt(n)}offsetOfNode(e){if(!e)return 0;let t=e.size_left;for(;e!==this.root;)e.parent.right===e&&(t+=e.parent.size_left+e.parent.piece.length),e=e.parent;return t}shouldCheckCRLF(){return!(this._EOLNormalized&&this._EOL===` +`)}startWithLF(e){if(typeof e=="string")return e.charCodeAt(0)===10;if(e===Le||e.piece.lineFeedCnt===0)return!1;const t=e.piece,i=this._buffers[t.bufferIndex].lineStarts,n=t.start.line,s=i[n]+t.start.column;return n===i.length-1||i[n+1]>s+1?!1:this._buffers[t.bufferIndex].buffer.charCodeAt(s)===10}endWithCR(e){return typeof e=="string"?e.charCodeAt(e.length-1)===13:e===Le||e.piece.lineFeedCnt===0?!1:this.nodeCharCodeAt(e,e.piece.length-1)===13}validateCRLFWithPrevNode(e){if(this.shouldCheckCRLF()&&this.startWithLF(e)){const t=e.prev();this.endWithCR(t)&&this.fixCRLF(t,e)}}validateCRLFWithNextNode(e){if(this.shouldCheckCRLF()&&this.endWithCR(e)){const t=e.next();this.startWithLF(t)&&this.fixCRLF(e,t)}}fixCRLF(e,t){const i=[],n=this._buffers[e.piece.bufferIndex].lineStarts;let s;e.piece.end.column===0?s={line:e.piece.end.line-1,column:n[e.piece.end.line]-n[e.piece.end.line-1]-1}:s={line:e.piece.end.line,column:e.piece.end.column-1};const r=e.piece.length-1,a=e.piece.lineFeedCnt-1;e.piece=new Xn(e.piece.bufferIndex,e.piece.start,s,a,r),Ha(this,e,-1,-1),e.piece.length===0&&i.push(e);const l={line:t.piece.start.line+1,column:0},c=t.piece.length-1,d=this.getLineFeedCnt(t.piece.bufferIndex,l,t.piece.end);t.piece=new Xn(t.piece.bufferIndex,l,t.piece.end,d,c),Ha(this,t,-1,-1),t.piece.length===0&&i.push(t);const h=this.createNewPieces(`\r +`);this.rbInsertRight(e,h[0]);for(let u=0;u_.sortIndex-b.sortIndex)}this._mightContainRTL=n,this._mightContainUnusualLineTerminators=s,this._mightContainNonBasicASCII=r;const f=this._doApplyEdits(l);let g=null;if(t&&h.length>0){h.sort((p,_)=>_.lineNumber-p.lineNumber),g=[];for(let p=0,_=h.length;p<_;p++){const b=h[p].lineNumber;if(p>0&&h[p-1].lineNumber===b)continue;const C=h[p].oldContent,w=this.getLineContent(b);w.length===0||w===C||zn(w)!==-1||g.push(b)}}return this._onDidChangeContent.fire(),new MU(u,f,g)}_reduceOperations(e){return e.length<1e3?e:[this._toSingleEditOperation(e)]}_toSingleEditOperation(e){let t=!1;const i=e[0].range,n=e[e.length-1].range,s=new I(i.startLineNumber,i.startColumn,n.endLineNumber,n.endColumn);let r=i.startLineNumber,a=i.startColumn;const l=[];for(let f=0,g=e.length;f0&&l.push(p.text),r=_.endLineNumber,a=_.endColumn}const c=l.join(""),[d,h,u]=hg(c);return{sortIndex:0,identifier:e[0].identifier,range:s,rangeOffset:this.getOffsetAt(s.startLineNumber,s.startColumn),rangeLength:this.getValueLengthInRange(s,0),text:c,eolCount:d,firstLineLength:h,lastLineLength:u,forceMoveMarkers:t,isAutoWhitespaceEdit:!1}}_doApplyEdits(e){e.sort(Uf._sortOpsDescending);const t=[];for(let i=0;i0){const u=l.eolCount+1;u===1?h=new I(c,d,c,d+l.firstLineLength):h=new I(c,d,c+u-1,l.lastLineLength+1)}else h=new I(c,d,c,d);i=h.endLineNumber,n=h.endColumn,t.push(h),s=l}return t}static _sortOpsAscending(e,t){const i=I.compareRangesUsingEnds(e.range,t.range);return i===0?e.sortIndex-t.sortIndex:i}static _sortOpsDescending(e,t){const i=I.compareRangesUsingEnds(e.range,t.range);return i===0?t.sortIndex-e.sortIndex:-i}}class kX{constructor(e,t,i,n,s,r,a,l,c){this._chunks=e,this._bom=t,this._cr=i,this._lf=n,this._crlf=s,this._containsRTL=r,this._containsUnusualLineTerminators=a,this._isBasicASCII=l,this._normalizeEOL=c}_getEOL(e){const t=this._cr+this._lf+this._crlf,i=this._cr+this._crlf;return t===0?e===1?` +`:`\r +`:i>t/2?`\r +`:` +`}create(e){const t=this._getEOL(e),i=this._chunks;if(this._normalizeEOL&&(t===`\r +`&&(this._cr>0||this._lf>0)||t===` +`&&(this._cr>0||this._crlf>0)))for(let s=0,r=i.length;s=55296&&t<=56319?(this._acceptChunk1(e.substr(0,e.length-1),!1),this._hasPreviousChar=!0,this._previousChar=t):(this._acceptChunk1(e,!1),this._hasPreviousChar=!1,this._previousChar=t)}_acceptChunk1(e,t){!t&&e.length===0||(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+e):this._acceptChunk2(e))}_acceptChunk2(e){const t=yX(this._tmpLineStarts,e);this.chunks.push(new Ld(e,t.lineStarts)),this.cr+=t.cr,this.lf+=t.lf,this.crlf+=t.crlf,t.isBasicASCII||(this.isBasicASCII=!1,this.containsRTL||(this.containsRTL=sg(e)),this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=mF(e)))}finish(e=!0){return this._finish(),new kX(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,e)}_finish(){if(this.chunks.length===0&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;const e=this.chunks[this.chunks.length-1];e.buffer+=String.fromCharCode(this._previousChar);const t=Va(e.buffer);e.lineStarts=t,this._previousChar===13&&this.cr++}}}class DX{constructor(e){this._default=e,this._store=[]}get(e){return e=this._store.length;)this._store[this._store.length]=this._default;this._store[e]=t}replace(e,t,i){if(e>=this._store.length)return;if(t===0){this.insert(e,i);return}else if(i===0){this.delete(e,t);return}const n=this._store.slice(0,e),s=this._store.slice(e+t),r=IX(i,this._default);this._store=n.concat(r,s)}delete(e,t){t===0||e>=this._store.length||this._store.splice(e,t)}insert(e,t){if(t===0||e>=this._store.length)return;const i=[];for(let n=0;n0){const i=this._tokens[this._tokens.length-1];if(i.endLineNumber+1===e){i.appendLineTokens(t);return}}this._tokens.push(new EX(e,[t]))}finalize(){return this._tokens}}class NX{constructor(e,t){this.tokenizationSupport=t,this.initialState=this.tokenizationSupport.getInitialState(),this.store=new kD(e)}getStartState(e){return this.store.getStartState(e,this.initialState)}getFirstInvalidLine(){return this.store.getFirstInvalidLine(this.initialState)}}class TX extends NX{constructor(e,t,i,n){super(e,t),this._textModel=i,this._languageIdCodec=n}updateTokensUntilLine(e,t){const i=this._textModel.getLanguageId();for(;;){const n=this.getFirstInvalidLine();if(!n||n.lineNumber>t)break;const s=this._textModel.getLineContent(n.lineNumber),r=pm(this._languageIdCodec,i,this.tokenizationSupport,s,!0,n.startState);e.add(n.lineNumber,r.tokens),this.store.setEndState(n.lineNumber,r.endState)}}getTokenTypeIfInsertingCharacter(e,t){const i=this.getStartState(e.lineNumber);if(!i)return 0;const n=this._textModel.getLanguageId(),s=this._textModel.getLineContent(e.lineNumber),r=s.substring(0,e.column-1)+t+s.substring(e.column-1),a=pm(this._languageIdCodec,n,this.tokenizationSupport,r,!0,i),l=new Ni(a.tokens,r,this._languageIdCodec);if(l.getCount()===0)return 0;const c=l.findTokenIndexAtOffset(e.column-1);return l.getStandardTokenType(c)}tokenizeLineWithEdit(e,t,i){const n=e.lineNumber,s=e.column,r=this.getStartState(n);if(!r)return null;const a=this._textModel.getLineContent(n),l=a.substring(0,s-1)+i+a.substring(s-1+t),c=this._textModel.getLanguageIdAtPosition(n,0),d=pm(this._languageIdCodec,c,this.tokenizationSupport,l,!0,r);return new Ni(d.tokens,l,this._languageIdCodec)}hasAccurateTokensForLine(e){const t=this.store.getFirstInvalidEndStateLineNumberOrMax();return e1&&a>=1;a--){const l=this._textModel.getLineFirstNonWhitespaceColumn(a);if(l!==0&&l0&&i>0&&(i--,t--),this._lineEndStates.replace(e.startLineNumber,i,t)}}class RX{constructor(){this._ranges=[]}get min(){return this._ranges.length===0?null:this._ranges[0].start}delete(e){const t=this._ranges.findIndex(i=>i.contains(e));if(t!==-1){const i=this._ranges[t];i.start===e?i.endExclusive===e+1?this._ranges.splice(t,1):this._ranges[t]=new Re(e+1,i.endExclusive):i.endExclusive===e+1?this._ranges[t]=new Re(i.start,e):this._ranges.splice(t,1,new Re(i.start,e),new Re(e+1,i.endExclusive))}}addRange(e){Re.addRange(e,this._ranges)}addRangeAndResize(e,t){let i=0;for(;!(i>=this._ranges.length||e.start<=this._ranges[i].endExclusive);)i++;let n=i;for(;!(n>=this._ranges.length||e.endExclusivee.toString()).join(" + ")}}function pm(o,e,t,i,n,s){let r=null;if(t)try{r=t.tokenizeEncoded(i,n,s.clone())}catch(a){Ze(a)}return r||(r=zT(o.encodeLanguageId(e),s)),Ni.convertToEndOffset(r.tokens,i.length),r}class AX{constructor(e,t){this._tokenizerWithStateStore=e,this._backgroundTokenStore=t,this._isDisposed=!1,this._isScheduled=!1}dispose(){this._isDisposed=!0}handleChanges(){this._beginBackgroundTokenization()}_beginBackgroundTokenization(){this._isScheduled||!this._tokenizerWithStateStore._textModel.isAttachedToEditor()||!this._hasLinesToTokenize()||(this._isScheduled=!0,wF(e=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(e)}))}_backgroundTokenizeWithDeadline(e){const t=Date.now()+e.timeRemaining(),i=()=>{this._isDisposed||!this._tokenizerWithStateStore._textModel.isAttachedToEditor()||!this._hasLinesToTokenize()||(this._backgroundTokenizeForAtLeast1ms(),Date.now()1||this._tokenizeOneInvalidLine(t)>=e)break;while(this._hasLinesToTokenize());this._backgroundTokenStore.setTokens(t.finalize()),this.checkFinished()}_hasLinesToTokenize(){return this._tokenizerWithStateStore?!this._tokenizerWithStateStore.store.allStatesValid():!1}_tokenizeOneInvalidLine(e){const t=this._tokenizerWithStateStore?.getFirstInvalidLine();return t?(this._tokenizerWithStateStore.updateTokensUntilLine(e,t.lineNumber),t.lineNumber):this._tokenizerWithStateStore._textModel.getLineCount()+1}checkFinished(){this._isDisposed||this._tokenizerWithStateStore.store.allStatesValid()&&this._backgroundTokenStore.backgroundTokenizationFinished()}requestTokens(e,t){this._tokenizerWithStateStore.store.invalidateEndStateRange(new xe(e,t))}}class PX{constructor(){this._onDidChangeVisibleRanges=new A,this.onDidChangeVisibleRanges=this._onDidChangeVisibleRanges.event,this._views=new Set}attachView(){const e=new OX(t=>{this._onDidChangeVisibleRanges.fire({view:e,state:t})});return this._views.add(e),e}detachView(e){this._views.delete(e),this._onDidChangeVisibleRanges.fire({view:e,state:void 0})}}class OX{constructor(e){this.handleStateChange=e}setVisibleLines(e,t){const i=e.map(n=>new xe(n.startLineNumber,n.endLineNumber+1));this.handleStateChange({visibleLineRanges:i,stabilized:t})}}class FX extends z{get lineRanges(){return this._lineRanges}constructor(e){super(),this._refreshTokens=e,this.runner=this._register(new ci(()=>this.update(),50)),this._computedLineRanges=[],this._lineRanges=[]}update(){li(this._computedLineRanges,this._lineRanges,(e,t)=>e.equals(t))||(this._computedLineRanges=this._lineRanges,this._refreshTokens())}handleStateChange(e){this._lineRanges=e.visibleLineRanges,e.stabilized?(this.runner.cancel(),this.update()):this.runner.schedule()}}class _9 extends z{get backgroundTokenizationState(){return this._backgroundTokenizationState}constructor(e,t,i){super(),this._languageIdCodec=e,this._textModel=t,this.getLanguageId=i,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new A),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event,this._onDidChangeTokens=this._register(new A),this.onDidChangeTokens=this._onDidChangeTokens.event}tokenizeIfCheap(e){this.isCheapToTokenize(e)&&this.forceTokenization(e)}}class AP extends _9{constructor(e,t,i,n){super(t,i,n),this._treeSitterService=e,this._tokenizationSupport=null,this._initialize()}_initialize(){const e=this.getLanguageId();(!this._tokenizationSupport||this._lastLanguageId!==e)&&(this._lastLanguageId=e,this._tokenizationSupport=HL.get(e))}getLineTokens(e){const t=this._textModel.getLineContent(e);if(this._tokenizationSupport){const i=this._tokenizationSupport.tokenizeEncoded(e,this._textModel);if(i)return new Ni(i,t,this._languageIdCodec)}return Ni.createEmpty(t,this._languageIdCodec)}resetTokenization(e=!0){e&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]}),this._initialize()}handleDidChangeAttached(){}handleDidChangeContent(e){e.isFlush&&this.resetTokenization(!1)}forceTokenization(e){}hasAccurateTokensForLine(e){return!0}isCheapToTokenize(e){return!0}getTokenTypeIfInsertingCharacter(e,t,i){return 0}tokenizeLineWithEdit(e,t,i){return null}get hasTokens(){return this._treeSitterService.getParseResult(this._textModel)!==void 0}}const b9=He("treeSitterParserService"),za=new Uint32Array(0).buffer;class Kr{static deleteBeginning(e,t){return e===null||e===za?e:Kr.delete(e,0,t)}static deleteEnding(e,t){if(e===null||e===za)return e;const i=nl(e),n=i[i.length-2];return Kr.delete(e,t,n)}static delete(e,t,i){if(e===null||e===za||t===i)return e;const n=nl(e),s=n.length>>>1;if(t===0&&n[n.length-2]===i)return za;const r=Ni.findIndexInTokensArray(n,t),a=r>0?n[r-1<<1]:0,l=n[r<<1];if(id&&(n[c++]=g,n[c++]=n[(f<<1)+1],d=g)}if(c===n.length)return e;const u=new Uint32Array(c);return u.set(n.subarray(0,c),0),u.buffer}static append(e,t){if(t===za)return e;if(e===za)return t;if(e===null)return e;if(t===null)return null;const i=nl(e),n=nl(t),s=n.length>>>1,r=new Uint32Array(i.length+n.length);r.set(i,0);let a=i.length;const l=i[i.length-2];for(let c=0;c>>1;let r=Ni.findIndexInTokensArray(n,t);r>0&&n[r-1<<1]===t&&r--;for(let a=r;a0}getTokens(e,t,i){let n=null;if(t1&&(s=sr.getLanguageId(n[1])!==e),!s)return za}if(!n||n.length===0){const s=new Uint32Array(2);return s[0]=t,s[1]=PP(e),s.buffer}return n[n.length-2]=t,n.byteOffset===0&&n.byteLength===n.buffer.byteLength?n.buffer:n}_ensureLine(e){for(;e>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(e,t){t!==0&&(e+t>this._len&&(t=this._len-e),this._lineTokens.splice(e,t),this._len-=t)}_insertLines(e,t){if(t===0)return;const i=[];for(let n=0;n=this._len)return;if(e.startLineNumber===e.endLineNumber){if(e.startColumn===e.endColumn)return;this._lineTokens[t]=Kr.delete(this._lineTokens[t],e.startColumn-1,e.endColumn-1);return}this._lineTokens[t]=Kr.deleteEnding(this._lineTokens[t],e.startColumn-1);const i=e.endLineNumber-1;let n=null;i=this._len)){if(t===0){this._lineTokens[n]=Kr.insert(this._lineTokens[n],e.column-1,i);return}this._lineTokens[n]=Kr.deleteEnding(this._lineTokens[n],e.column-1),this._lineTokens[n]=Kr.insert(this._lineTokens[n],e.column-1,i),this._insertLines(e.lineNumber,t)}}setMultilineTokens(e,t){if(e.length===0)return{changes:[]};const i=[];for(let n=0,s=e.length;n>>0}class u2{constructor(e){this._pieces=[],this._isComplete=!1,this._languageIdCodec=e}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return this._pieces.length===0}set(e,t){this._pieces=e||[],this._isComplete=t}setPartial(e,t){let i=e;if(t.length>0){const s=t[0].getRange(),r=t[t.length-1].getRange();if(!s||!r)return e;i=e.plusRange(s).plusRange(r)}let n=null;for(let s=0,r=this._pieces.length;si.endLineNumber){n=n||{index:s};break}if(a.removeTokens(i),a.isEmpty()){this._pieces.splice(s,1),s--,r--;continue}if(a.endLineNumberi.endLineNumber){n=n||{index:s};continue}const[l,c]=a.split(i);if(l.isEmpty()){n=n||{index:s};continue}c.isEmpty()||(this._pieces.splice(s,1,l,c),s++,r++,n=n||{index:s})}return n=n||{index:this._pieces.length},t.length>0&&(this._pieces=y0(this._pieces,n.index,t)),i}isComplete(){return this._isComplete}addSparseTokens(e,t){if(t.getLineContent().length===0)return t;const i=this._pieces;if(i.length===0)return t;const n=u2._findFirstPieceWithLine(i,e),s=i[n].getLineTokens(e);if(!s)return t;const r=t.getCount(),a=s.getCount();let l=0;const c=[];let d=0,h=0;const u=(f,g)=>{f!==h&&(h=f,c[d++]=f,c[d++]=g)};for(let f=0;f>>0,C=~b>>>0;for(;lt)n=s-1;else{for(;s>i&&e[s-1].startLineNumber<=t&&t<=e[s-1].endLineNumber;)s--;return s}}return i}acceptEdit(e,t,i,n,s){for(const r of this._pieces)r.acceptEdit(e,t,i,n,s)}}var BX=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},VS=function(o,e){return function(t,i){e(t,i,o)}},O1;let DD=O1=class extends a9{constructor(e,t,i,n,s,r,a){super(),this._textModel=e,this._bracketPairsTextModelPart=t,this._languageId=i,this._attachedViews=n,this._languageService=s,this._languageConfigurationService=r,this._treeSitterService=a,this._semanticTokens=new u2(this._languageService.languageIdCodec),this._onDidChangeLanguage=this._register(new A),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new A),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new A),this.onDidChangeTokens=this._onDidChangeTokens.event,this._tokensDisposables=this._register(new X),this._register(this._languageConfigurationService.onDidChange(l=>{l.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})})),this._register(J.filter(HL.onDidChange,l=>l.changedLanguages.includes(this._languageId))(()=>{this.createPreferredTokenProvider()})),this.createPreferredTokenProvider()}createGrammarTokens(){return this._register(new OP(this._languageService.languageIdCodec,this._textModel,()=>this._languageId,this._attachedViews))}createTreeSitterTokens(){return this._register(new AP(this._treeSitterService,this._languageService.languageIdCodec,this._textModel,()=>this._languageId))}createTokens(e){const t=this._tokens!==void 0;this._tokens?.dispose(),this._tokens=e?this.createTreeSitterTokens():this.createGrammarTokens(),this._tokensDisposables.clear(),this._tokensDisposables.add(this._tokens.onDidChangeTokens(i=>{this._emitModelTokensChangedEvent(i)})),this._tokensDisposables.add(this._tokens.onDidChangeBackgroundTokenizationState(i=>{this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState()})),t&&this._tokens.resetTokenization()}createPreferredTokenProvider(){HL.get(this._languageId)?this._tokens instanceof AP||this.createTokens(!0):this._tokens instanceof OP||this.createTokens(!1)}handleLanguageConfigurationServiceChange(e){e.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}handleDidChangeContent(e){if(e.isFlush)this._semanticTokens.flush();else if(!e.isEolChange)for(const t of e.changes){const[i,n,s]=hg(t.text);this._semanticTokens.acceptEdit(t.range,i,n,s,t.text.length>0?t.text.charCodeAt(0):0)}this._tokens.handleDidChangeContent(e)}handleDidChangeAttached(){this._tokens.handleDidChangeAttached()}getLineTokens(e){this.validateLineNumber(e);const t=this._tokens.getLineTokens(e);return this._semanticTokens.addSparseTokens(e,t)}_emitModelTokensChangedEvent(e){this._textModel._isDisposing()||(this._bracketPairsTextModelPart.handleDidChangeTokens(e),this._onDidChangeTokens.fire(e))}validateLineNumber(e){if(e<1||e>this._textModel.getLineCount())throw new nt("Illegal value for lineNumber")}get hasTokens(){return this._tokens.hasTokens}resetTokenization(){this._tokens.resetTokenization()}get backgroundTokenizationState(){return this._tokens.backgroundTokenizationState}forceTokenization(e){this.validateLineNumber(e),this._tokens.forceTokenization(e)}hasAccurateTokensForLine(e){return this.validateLineNumber(e),this._tokens.hasAccurateTokensForLine(e)}isCheapToTokenize(e){return this.validateLineNumber(e),this._tokens.isCheapToTokenize(e)}tokenizeIfCheap(e){this.validateLineNumber(e),this._tokens.tokenizeIfCheap(e)}getTokenTypeIfInsertingCharacter(e,t,i){return this._tokens.getTokenTypeIfInsertingCharacter(e,t,i)}tokenizeLineWithEdit(e,t,i){return this._tokens.tokenizeLineWithEdit(e,t,i)}setSemanticTokens(e,t){this._semanticTokens.set(e,t),this._emitModelTokensChangedEvent({semanticTokensApplied:e!==null,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}hasCompleteSemanticTokens(){return this._semanticTokens.isComplete()}hasSomeSemanticTokens(){return!this._semanticTokens.isEmpty()}setPartialSemanticTokens(e,t){if(this.hasCompleteSemanticTokens())return;const i=this._textModel.validateRange(this._semanticTokens.setPartial(e,t));this._emitModelTokensChangedEvent({semanticTokensApplied:!0,ranges:[{fromLineNumber:i.startLineNumber,toLineNumber:i.endLineNumber}]})}getWordAtPosition(e){this.assertNotDisposed();const t=this._textModel.validatePosition(e),i=this._textModel.getLineContent(t.lineNumber),n=this.getLineTokens(t.lineNumber),s=n.findTokenIndexAtOffset(t.column-1),[r,a]=O1._findLanguageBoundaries(n,s),l=Wp(t.column,this.getLanguageConfiguration(n.getLanguageId(s)).getWordDefinition(),i.substring(r,a),r);if(l&&l.startColumn<=e.column&&e.column<=l.endColumn)return l;if(s>0&&r===t.column-1){const[c,d]=O1._findLanguageBoundaries(n,s-1),h=Wp(t.column,this.getLanguageConfiguration(n.getLanguageId(s-1)).getWordDefinition(),i.substring(c,d),c);if(h&&h.startColumn<=e.column&&e.column<=h.endColumn)return h}return null}getLanguageConfiguration(e){return this._languageConfigurationService.getLanguageConfiguration(e)}static _findLanguageBoundaries(e,t){const i=e.getLanguageId(t);let n=0;for(let r=t;r>=0&&e.getLanguageId(r)===i;r--)n=e.getStartOffset(r);let s=e.getLineContent().length;for(let r=t,a=e.getCount();r{const r=this.getLanguageId();s.changedLanguages.indexOf(r)!==-1&&this.resetTokenization()})),this.resetTokenization(),this._register(n.onDidChangeVisibleRanges(({view:s,state:r})=>{if(r){let a=this._attachedViewStates.get(s);a||(a=new FX(()=>this.refreshRanges(a.lineRanges)),this._attachedViewStates.set(s,a)),a.handleStateChange(r)}else this._attachedViewStates.deleteAndDispose(s)}))}resetTokenization(e=!0){this._tokens.flush(),this._debugBackgroundTokens?.flush(),this._debugBackgroundStates&&(this._debugBackgroundStates=new kD(this._textModel.getLineCount())),e&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]});const t=()=>{if(this._textModel.isTooLargeForTokenization())return[null,null];const s=si.get(this.getLanguageId());if(!s)return[null,null];let r;try{r=s.getInitialState()}catch(a){return Ze(a),[null,null]}return[s,r]},[i,n]=t();if(i&&n?this._tokenizer=new TX(this._textModel.getLineCount(),i,this._textModel,this._languageIdCodec):this._tokenizer=null,this._backgroundTokenizer.clear(),this._defaultBackgroundTokenizer=null,this._tokenizer){const s={setTokens:r=>{this.setTokens(r)},backgroundTokenizationFinished:()=>{if(this._backgroundTokenizationState===2)return;const r=2;this._backgroundTokenizationState=r,this._onDidChangeBackgroundTokenizationState.fire()},setEndState:(r,a)=>{if(!this._tokenizer)return;const l=this._tokenizer.store.getFirstInvalidEndStateLineNumber();l!==null&&r>=l&&this._tokenizer?.store.setEndState(r,a)}};i&&i.createBackgroundTokenizer&&!i.backgroundTokenizerShouldOnlyVerifyTokens&&(this._backgroundTokenizer.value=i.createBackgroundTokenizer(this._textModel,s)),!this._backgroundTokenizer.value&&!this._textModel.isTooLargeForTokenization()&&(this._backgroundTokenizer.value=this._defaultBackgroundTokenizer=new AX(this._tokenizer,s),this._defaultBackgroundTokenizer.handleChanges()),i?.backgroundTokenizerShouldOnlyVerifyTokens&&i.createBackgroundTokenizer?(this._debugBackgroundTokens=new g_(this._languageIdCodec),this._debugBackgroundStates=new kD(this._textModel.getLineCount()),this._debugBackgroundTokenizer.clear(),this._debugBackgroundTokenizer.value=i.createBackgroundTokenizer(this._textModel,{setTokens:r=>{this._debugBackgroundTokens?.setMultilineTokens(r,this._textModel)},backgroundTokenizationFinished(){},setEndState:(r,a)=>{this._debugBackgroundStates?.setEndState(r,a)}})):(this._debugBackgroundTokens=void 0,this._debugBackgroundStates=void 0,this._debugBackgroundTokenizer.value=void 0)}this.refreshAllVisibleLineTokens()}handleDidChangeAttached(){this._defaultBackgroundTokenizer?.handleChanges()}handleDidChangeContent(e){if(e.isFlush)this.resetTokenization(!1);else if(!e.isEolChange){for(const t of e.changes){const[i,n]=hg(t.text);this._tokens.acceptEdit(t.range,i,n),this._debugBackgroundTokens?.acceptEdit(t.range,i,n)}this._debugBackgroundStates?.acceptChanges(e.changes),this._tokenizer&&this._tokenizer.store.acceptChanges(e.changes),this._defaultBackgroundTokenizer?.handleChanges()}}setTokens(e){const{changes:t}=this._tokens.setMultilineTokens(e,this._textModel);return t.length>0&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:t}),{changes:t}}refreshAllVisibleLineTokens(){const e=xe.joinMany([...this._attachedViewStates].map(([t,i])=>i.lineRanges));this.refreshRanges(e)}refreshRanges(e){for(const t of e)this.refreshRange(t.startLineNumber,t.endLineNumberExclusive-1)}refreshRange(e,t){if(!this._tokenizer)return;e=Math.max(1,Math.min(this._textModel.getLineCount(),e)),t=Math.min(this._textModel.getLineCount(),t);const i=new xD,{heuristicTokens:n}=this._tokenizer.tokenizeHeuristically(i,e,t),s=this.setTokens(i.finalize());if(n)for(const r of s.changes)this._backgroundTokenizer.value?.requestTokens(r.fromLineNumber,r.toLineNumber+1);this._defaultBackgroundTokenizer?.checkFinished()}forceTokenization(e){const t=new xD;this._tokenizer?.updateTokensUntilLine(t,e),this.setTokens(t.finalize()),this._defaultBackgroundTokenizer?.checkFinished()}hasAccurateTokensForLine(e){return this._tokenizer?this._tokenizer.hasAccurateTokensForLine(e):!0}isCheapToTokenize(e){return this._tokenizer?this._tokenizer.isCheapToTokenize(e):!0}getLineTokens(e){const t=this._textModel.getLineContent(e),i=this._tokens.getTokens(this._textModel.getLanguageId(),e-1,t);if(this._debugBackgroundTokens&&this._debugBackgroundStates&&this._tokenizer&&this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax()>e&&this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax()>e){const n=this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(),e-1,t);!i.equals(n)&&this._debugBackgroundTokenizer.value?.reportMismatchingTokens&&this._debugBackgroundTokenizer.value.reportMismatchingTokens(e)}return i}getTokenTypeIfInsertingCharacter(e,t,i){if(!this._tokenizer)return 0;const n=this._textModel.validatePosition(new P(e,t));return this.forceTokenization(n.lineNumber),this._tokenizer.getTokenTypeIfInsertingCharacter(n,i)}tokenizeLineWithEdit(e,t,i){if(!this._tokenizer)return null;const n=this._textModel.validatePosition(e);return this.forceTokenization(n.lineNumber),this._tokenizer.tokenizeLineWithEdit(n,t,i)}get hasTokens(){return this._tokens.hasTokens}}class WX{constructor(){this.changeType=1}}class _r{static applyInjectedText(e,t){if(!t||t.length===0)return e;let i="",n=0;for(const s of t)i+=e.substring(n,s.column-1),n=s.column-1,i+=s.options.content;return i+=e.substring(n),i}static fromDecorations(e){const t=[];for(const i of e)i.options.before&&i.options.before.content.length>0&&t.push(new _r(i.ownerId,i.range.startLineNumber,i.range.startColumn,i.options.before,0)),i.options.after&&i.options.after.content.length>0&&t.push(new _r(i.ownerId,i.range.endLineNumber,i.range.endColumn,i.options.after,1));return t.sort((i,n)=>i.lineNumber===n.lineNumber?i.column===n.column?i.order-n.order:i.column-n.column:i.lineNumber-n.lineNumber),t}constructor(e,t,i,n,s){this.ownerId=e,this.lineNumber=t,this.column=i,this.options=n,this.order=s}}class FP{constructor(e,t,i){this.changeType=2,this.lineNumber=e,this.detail=t,this.injectedText=i}}class HX{constructor(e,t){this.changeType=3,this.fromLineNumber=e,this.toLineNumber=t}}class VX{constructor(e,t,i,n){this.changeType=4,this.injectedTexts=n,this.fromLineNumber=e,this.toLineNumber=t,this.detail=i}}class zX{constructor(){this.changeType=5}}class $f{constructor(e,t,i,n){this.changes=e,this.versionId=t,this.isUndoing=i,this.isRedoing=n,this.resultingSelection=null}containsEvent(e){for(let t=0,i=this.changes.length;t=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Gb=function(o,e){return function(t,i){e(t,i,o)}},ud;function $X(o){const e=new p9;return e.acceptChunk(o),e.finish()}function KX(o){const e=new p9;let t;for(;typeof(t=o.read())=="string";)e.acceptChunk(t);return e.finish()}function BP(o,e){let t;return typeof o=="string"?t=$X(o):NU(o)?t=KX(o):t=o,t.create(e)}let Zb=0;const jX=999,qX=1e4;class GX{constructor(e){this._source=e,this._eos=!1}read(){if(this._eos)return null;const e=[];let t=0,i=0;do{const n=this._source.read();if(n===null)return this._eos=!0,t===0?null:e.join("");if(n.length>0&&(e[t++]=n,i+=n.length),i>=64*1024)return e.join("")}while(!0)}}const _m=()=>{throw new Error("Invalid change accessor")};var ar;let m_=(ar=class extends z{static resolveOptions(e,t){if(t.detectIndentation){const i=kP(e,t.tabSize,t.insertSpaces);return new k1({tabSize:i.tabSize,indentSize:"tabSize",insertSpaces:i.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL,bracketPairColorizationOptions:t.bracketPairColorizationOptions})}return new k1(t)}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}onDidChangeContent(e){return this._eventEmitter.slowEvent(t=>e(t.contentChangedEvent))}onDidChangeContentOrInjectedText(e){return No(this._eventEmitter.fastEvent(t=>e(t)),this._onDidChangeInjectedText.event(t=>e(t)))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}constructor(e,t,i,n=null,s,r,a,l){super(),this._undoRedoService=s,this._languageService=r,this._languageConfigurationService=a,this.instantiationService=l,this._onWillDispose=this._register(new A),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new eJ(g=>this.handleBeforeFireDecorationsChangedEvent(g))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new A),this.onDidChangeOptions=this._onDidChangeOptions.event,this._onDidChangeAttached=this._register(new A),this.onDidChangeAttached=this._onDidChangeAttached.event,this._onDidChangeInjectedText=this._register(new A),this._eventEmitter=this._register(new tJ),this._languageSelectionListener=this._register(new Dn),this._deltaDecorationCallCnt=0,this._attachedViews=new PX,Zb++,this.id="$model"+Zb,this.isForSimpleWidget=i.isForSimpleWidget,typeof n>"u"||n===null?this._associatedResource=ve.parse("inmemory://model/"+Zb):this._associatedResource=n,this._attachedEditorCount=0;const{textBuffer:c,disposable:d}=BP(e,i.defaultEOL);this._buffer=c,this._bufferDisposable=d,this._options=ud.resolveOptions(this._buffer,i);const h=typeof t=="string"?t:t.languageId;typeof t!="string"&&(this._languageSelectionListener.value=t.onDidChange(()=>this._setLanguage(t.languageId))),this._bracketPairs=this._register(new eX(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new oX(this,this._languageConfigurationService)),this._decorationProvider=this._register(new iX(this)),this._tokenizationTextModelPart=this.instantiationService.createInstance(DD,this,this._bracketPairs,h,this._attachedViews);const u=this._buffer.getLineCount(),f=this._buffer.getValueLengthInRange(new I(1,1,u,this._buffer.getLineLength(u)+1),0);i.largeFileOptimizations?(this._isTooLargeForTokenization=f>ud.LARGE_FILE_SIZE_THRESHOLD||u>ud.LARGE_FILE_LINE_COUNT_THRESHOLD,this._isTooLargeForHeapOperation=f>ud.LARGE_FILE_HEAP_OPERATION_THRESHOLD):(this._isTooLargeForTokenization=!1,this._isTooLargeForHeapOperation=!1),this._isTooLargeForSyncing=f>ud._MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=pF(Zb),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new WP,this._commandManager=new l2(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._register(this._decorationProvider.onDidChange(()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()})),this._languageService.requestRichLanguageFeatures(h),this._register(this._languageConfigurationService.onDidChange(g=>{this._bracketPairs.handleLanguageConfigurationServiceChange(g),this._tokenizationTextModelPart.handleLanguageConfigurationServiceChange(g)}))}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;const e=new Uf([],"",` +`,!1,!1,!0,!0);e.dispose(),this._buffer=e,this._bufferDisposable=z.None}_assertNotDisposed(){if(this._isDisposed)throw new nt("Model is disposed!")}_emitContentChangedEvent(e,t){this.__isDisposing||(this._tokenizationTextModelPart.handleDidChangeContent(t),this._bracketPairs.handleDidChangeContent(t),this._eventEmitter.fire(new th(e,t)))}setValue(e){if(this._assertNotDisposed(),e==null)throw na();const{textBuffer:t,disposable:i}=BP(e,this._options.defaultEOL);this._setValueFromTextBuffer(t,i)}_createContentChanged2(e,t,i,n,s,r,a,l){return{changes:[{range:e,rangeOffset:t,rangeLength:i,text:n}],eol:this._buffer.getEOL(),isEolChange:l,versionId:this.getVersionId(),isUndoing:s,isRedoing:r,isFlush:a}}_setValueFromTextBuffer(e,t){this._assertNotDisposed();const i=this.getFullModelRange(),n=this.getValueLengthInRange(i),s=this.getLineCount(),r=this.getLineMaxColumn(s);this._buffer=e,this._bufferDisposable.dispose(),this._bufferDisposable=t,this._increaseVersionId(),this._decorations=Object.create(null),this._decorationsTree=new WP,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new $f([new WX],this._versionId,!1,!1),this._createContentChanged2(new I(1,1,s,r),0,n,this.getValue(),!1,!1,!0,!1))}setEOL(e){this._assertNotDisposed();const t=e===1?`\r +`:` +`;if(this._buffer.getEOL()===t)return;const i=this.getFullModelRange(),n=this.getValueLengthInRange(i),s=this.getLineCount(),r=this.getLineMaxColumn(s);this._onBeforeEOLChange(),this._buffer.setEOL(t),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new $f([new zX],this._versionId,!1,!1),this._createContentChanged2(new I(1,1,s,r),0,n,this.getValue(),!1,!1,!1,!0))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){const e=this.getVersionId(),t=this._decorationsTree.collectNodesPostOrder();for(let i=0,n=t.length;i0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isTooLargeForHeapOperation(){return this._isTooLargeForHeapOperation}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let e=0,t=0;const i=this._buffer.getLineCount();for(let n=1;n<=i;n++){const s=this._buffer.getLineLength(n);s>=qX?t+=s:e+=s}return t>e}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(e){this._assertNotDisposed();const t=typeof e.tabSize<"u"?e.tabSize:this._options.tabSize,i=typeof e.indentSize<"u"?e.indentSize:this._options.originalIndentSize,n=typeof e.insertSpaces<"u"?e.insertSpaces:this._options.insertSpaces,s=typeof e.trimAutoWhitespace<"u"?e.trimAutoWhitespace:this._options.trimAutoWhitespace,r=typeof e.bracketColorizationOptions<"u"?e.bracketColorizationOptions:this._options.bracketPairColorizationOptions,a=new k1({tabSize:t,indentSize:i,insertSpaces:n,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:s,bracketPairColorizationOptions:r});if(this._options.equals(a))return;const l=this._options.createChangeEvent(a);this._options=a,this._bracketPairs.handleDidChangeOptions(l),this._decorationProvider.handleDidChangeOptions(l),this._onDidChangeOptions.fire(l)}detectIndentation(e,t){this._assertNotDisposed();const i=kP(this._buffer,t,e);this.updateOptions({insertSpaces:i.insertSpaces,tabSize:i.tabSize,indentSize:i.tabSize})}normalizeIndentation(e){return this._assertNotDisposed(),Q7(e,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(e=null){const t=this.findMatches(gF.source,!1,!0,!1,null,!1,1073741824);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(e,t.map(i=>({range:i.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(e){this._assertNotDisposed();const t=this._validatePosition(e.lineNumber,e.column,0);return this._buffer.getOffsetAt(t.lineNumber,t.column)}getPositionAt(e){this._assertNotDisposed();const t=Math.min(this._buffer.getLength(),Math.max(0,e));return this._buffer.getPositionAt(t)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(e){this._versionId=e}_overwriteAlternativeVersionId(e){this._alternativeVersionId=e}_overwriteInitialUndoRedoSnapshot(e){this._initialUndoRedoSnapshot=e}getValue(e,t=!1){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new nt("Operation would exceed heap memory limits");const i=this.getFullModelRange(),n=this.getValueInRange(i,e);return t?this._buffer.getBOM()+n:n}createSnapshot(e=!1){return new GX(this._buffer.createSnapshot(e))}getValueLength(e,t=!1){this._assertNotDisposed();const i=this.getFullModelRange(),n=this.getValueLengthInRange(i,e);return t?this._buffer.getBOM().length+n:n}getValueInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(e),t)}getValueLengthInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(e),t)}getCharacterCountInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(e),t)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineContent(e)}getLineLength(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineLength(e)}getLinesContent(){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new nt("Operation would exceed heap memory limits");return this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),this._buffer.getEOL()===` +`?0:1}getLineMinColumn(e){return this._assertNotDisposed(),1}getLineMaxColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineLength(e)+1}getLineFirstNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(e)}getLineLastNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(e)}_validateRangeRelaxedNoAllocations(e){const t=this._buffer.getLineCount(),i=e.startLineNumber,n=e.startColumn;let s=Math.floor(typeof i=="number"&&!isNaN(i)?i:1),r=Math.floor(typeof n=="number"&&!isNaN(n)?n:1);if(s<1)s=1,r=1;else if(s>t)s=t,r=this.getLineMaxColumn(s);else if(r<=1)r=1;else{const h=this.getLineMaxColumn(s);r>=h&&(r=h)}const a=e.endLineNumber,l=e.endColumn;let c=Math.floor(typeof a=="number"&&!isNaN(a)?a:1),d=Math.floor(typeof l=="number"&&!isNaN(l)?l:1);if(c<1)c=1,d=1;else if(c>t)c=t,d=this.getLineMaxColumn(c);else if(d<=1)d=1;else{const h=this.getLineMaxColumn(c);d>=h&&(d=h)}return i===s&&n===r&&a===c&&l===d&&e instanceof I&&!(e instanceof Fe)?e:new I(s,r,c,d)}_isValidPosition(e,t,i){if(typeof e!="number"||typeof t!="number"||isNaN(e)||isNaN(t)||e<1||t<1||(e|0)!==e||(t|0)!==t)return!1;const n=this._buffer.getLineCount();if(e>n)return!1;if(t===1)return!0;const s=this.getLineMaxColumn(e);if(t>s)return!1;if(i===1){const r=this._buffer.getLineCharCode(e,t-2);if(wi(r))return!1}return!0}_validatePosition(e,t,i){const n=Math.floor(typeof e=="number"&&!isNaN(e)?e:1),s=Math.floor(typeof t=="number"&&!isNaN(t)?t:1),r=this._buffer.getLineCount();if(n<1)return new P(1,1);if(n>r)return new P(r,this.getLineMaxColumn(r));if(s<=1)return new P(n,1);const a=this.getLineMaxColumn(n);if(s>=a)return new P(n,a);if(i===1){const l=this._buffer.getLineCharCode(n,s-2);if(wi(l))return new P(n,s-1)}return new P(n,s)}validatePosition(e){return this._assertNotDisposed(),e instanceof P&&this._isValidPosition(e.lineNumber,e.column,1)?e:this._validatePosition(e.lineNumber,e.column,1)}_isValidRange(e,t){const i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn;if(!this._isValidPosition(i,n,0)||!this._isValidPosition(s,r,0))return!1;if(t===1){const a=n>1?this._buffer.getLineCharCode(i,n-2):0,l=r>1&&r<=this._buffer.getLineLength(s)?this._buffer.getLineCharCode(s,r-2):0,c=wi(a),d=wi(l);return!c&&!d}return!0}validateRange(e){if(this._assertNotDisposed(),e instanceof I&&!(e instanceof Fe)&&this._isValidRange(e,1))return e;const i=this._validatePosition(e.startLineNumber,e.startColumn,0),n=this._validatePosition(e.endLineNumber,e.endColumn,0),s=i.lineNumber,r=i.column,a=n.lineNumber,l=n.column;{const c=r>1?this._buffer.getLineCharCode(s,r-2):0,d=l>1&&l<=this._buffer.getLineLength(a)?this._buffer.getLineCharCode(a,l-2):0,h=wi(c),u=wi(d);return!h&&!u?new I(s,r,a,l):s===a&&r===l?new I(s,r-1,a,l-1):h&&u?new I(s,r-1,a,l+1):h?new I(s,r-1,a,l):new I(s,r,a,l+1)}}modifyPosition(e,t){this._assertNotDisposed();const i=this.getOffsetAt(e)+t;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,i)))}getFullModelRange(){this._assertNotDisposed();const e=this.getLineCount();return new I(1,1,e,this.getLineMaxColumn(e))}findMatchesLineByLine(e,t,i,n){return this._buffer.findMatchesLineByLine(e,t,i,n)}findMatches(e,t,i,n,s,r,a=jX){this._assertNotDisposed();let l=null;t!==null&&(Array.isArray(t)||(t=[t]),t.every(h=>I.isIRange(h))&&(l=t.map(h=>this.validateRange(h)))),l===null&&(l=[this.getFullModelRange()]),l=l.sort((h,u)=>h.startLineNumber-u.startLineNumber||h.startColumn-u.startColumn);const c=[];c.push(l.reduce((h,u)=>I.areIntersecting(h,u)?h.plusRange(u):(c.push(h),u)));let d;if(!i&&e.indexOf(` +`)<0){const u=new Eu(e,i,n,s).parseSearchRequest();if(!u)return[];d=f=>this.findMatchesLineByLine(f,u,r,a)}else d=h=>Eb.findMatches(this,new Eu(e,i,n,s),h,r,a);return c.map(d).reduce((h,u)=>h.concat(u),[])}findNextMatch(e,t,i,n,s,r){this._assertNotDisposed();const a=this.validatePosition(t);if(!i&&e.indexOf(` +`)<0){const c=new Eu(e,i,n,s).parseSearchRequest();if(!c)return null;const d=this.getLineCount();let h=new I(a.lineNumber,a.column,d,this.getLineMaxColumn(d)),u=this.findMatchesLineByLine(h,c,r,1);return Eb.findNextMatch(this,new Eu(e,i,n,s),a,r),u.length>0||(h=new I(1,1,a.lineNumber,this.getLineMaxColumn(a.lineNumber)),u=this.findMatchesLineByLine(h,c,r,1),u.length>0)?u[0]:null}return Eb.findNextMatch(this,new Eu(e,i,n,s),a,r)}findPreviousMatch(e,t,i,n,s,r){this._assertNotDisposed();const a=this.validatePosition(t);return Eb.findPreviousMatch(this,new Eu(e,i,n,s),a,r)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(e){if((this.getEOL()===` +`?0:1)!==e)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(e){return e instanceof CS?e:new CS(e.identifier||null,this.validateRange(e.range),e.text,e.forceMoveMarkers||!1,e.isAutoWhitespaceEdit||!1,e._isTracked||!1)}_validateEditOperations(e){const t=[];for(let i=0,n=e.length;i({range:this.validateRange(a.range),text:a.text}));let r=!0;if(e)for(let a=0,l=e.length;ac.endLineNumber,p=c.startLineNumber>f.endLineNumber;if(!g&&!p){d=!0;break}}if(!d){r=!1;break}}if(r)for(let a=0,l=this._trimAutoWhitespaceLines.length;ag.endLineNumber)&&!(c===g.startLineNumber&&g.startColumn===d&&g.isEmpty()&&p&&p.length>0&&p.charAt(0)===` +`)&&!(c===g.startLineNumber&&g.startColumn===1&&g.isEmpty()&&p&&p.length>0&&p.charAt(p.length-1)===` +`)){h=!1;break}}if(h){const u=new I(c,1,c,d);t.push(new CS(null,u,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(e,t,i,n)}_applyUndo(e,t,i,n){const s=e.map(r=>{const a=this.getPositionAt(r.newPosition),l=this.getPositionAt(r.newEnd);return{range:new I(a.lineNumber,a.column,l.lineNumber,l.column),text:r.oldText}});this._applyUndoRedoEdits(s,t,!0,!1,i,n)}_applyRedo(e,t,i,n){const s=e.map(r=>{const a=this.getPositionAt(r.oldPosition),l=this.getPositionAt(r.oldEnd);return{range:new I(a.lineNumber,a.column,l.lineNumber,l.column),text:r.newText}});this._applyUndoRedoEdits(s,t,!1,!0,i,n)}_applyUndoRedoEdits(e,t,i,n,s,r){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=i,this._isRedoing=n,this.applyEdits(e,!1),this.setEOL(t),this._overwriteAlternativeVersionId(s)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(r),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(e,t=!1){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();const i=this._validateEditOperations(e);return this._doApplyEdits(i,t)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(e,t){const i=this._buffer.getLineCount(),n=this._buffer.applyEdits(e,this._options.trimAutoWhitespace,t),s=this._buffer.getLineCount(),r=n.changes;if(this._trimAutoWhitespaceLines=n.trimAutoWhitespaceLineNumbers,r.length!==0){for(let c=0,d=r.length;c=0;N--){const H=f+N,F=w+N;E.takeFromEndWhile(j=>j.lineNumber>F);const W=E.takeFromEndWhile(j=>j.lineNumber===F);a.push(new FP(H,this.getLineContent(F),W))}if(bae.lineNumberae.lineNumber===ne)}a.push(new VX(H+1,f+_,B,j))}l+=C}this._emitContentChangedEvent(new $f(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:r,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return n.reverseEdits===null?void 0:n.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(e){if(e===null||e.size===0)return;const i=Array.from(e).map(n=>new FP(n,this.getLineContent(n),this._getInjectedTextInLine(n)));this._onDidChangeInjectedText.fire(new C9(i))}changeDecorations(e,t=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(t,e)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(e,t){const i={addDecoration:(s,r)=>this._deltaDecorationsImpl(e,[],[{range:s,options:r}])[0],changeDecoration:(s,r)=>{this._changeDecorationImpl(s,r)},changeDecorationOptions:(s,r)=>{this._changeDecorationOptionsImpl(s,VP(r))},removeDecoration:s=>{this._deltaDecorationsImpl(e,[s],[])},deltaDecorations:(s,r)=>s.length===0&&r.length===0?[]:this._deltaDecorationsImpl(e,s,r)};let n=null;try{n=t(i)}catch(s){Ze(s)}return i.addDecoration=_m,i.changeDecoration=_m,i.changeDecorationOptions=_m,i.removeDecoration=_m,i.deltaDecorations=_m,n}deltaDecorations(e,t,i=0){if(this._assertNotDisposed(),e||(e=[]),e.length===0&&t.length===0)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),Ze(new Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(i,e,t)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(e){return this.getDecorationRange(e)}_setTrackedRange(e,t,i){const n=e?this._decorations[e]:null;if(!n)return t?this._deltaDecorationsImpl(0,[],[{range:t,options:HP[i]}],!0)[0]:null;if(!t)return this._decorationsTree.delete(n),delete this._decorations[n.id],null;const s=this._validateRangeRelaxedNoAllocations(t),r=this._buffer.getOffsetAt(s.startLineNumber,s.startColumn),a=this._buffer.getOffsetAt(s.endLineNumber,s.endColumn);return this._decorationsTree.delete(n),n.reset(this.getVersionId(),r,a,s),n.setOptions(HP[i]),this._decorationsTree.insert(n),n.id}removeAllDecorationsWithOwnerId(e){if(this._isDisposed)return;const t=this._decorationsTree.collectNodesFromOwner(e);for(let i=0,n=t.length;ithis.getLineCount()?[]:this.getLinesDecorations(e,e,t,i)}getLinesDecorations(e,t,i=0,n=!1,s=!1){const r=this.getLineCount(),a=Math.min(r,Math.max(1,e)),l=Math.min(r,Math.max(1,t)),c=this.getLineMaxColumn(l),d=new I(a,1,l,c),h=this._getDecorationsInRange(d,i,n,s);return xL(h,this._decorationProvider.getDecorationsInRange(d,i,n)),h}getDecorationsInRange(e,t=0,i=!1,n=!1,s=!1){const r=this.validateRange(e),a=this._getDecorationsInRange(r,t,i,s);return xL(a,this._decorationProvider.getDecorationsInRange(r,t,i,n)),a}getOverviewRulerDecorations(e=0,t=!1){return this._decorationsTree.getAll(this,e,t,!0,!1)}getInjectedTextDecorations(e=0){return this._decorationsTree.getAllInjectedText(this,e)}_getInjectedTextInLine(e){const t=this._buffer.getOffsetAt(e,1),i=t+this._buffer.getLineLength(e),n=this._decorationsTree.getInjectedTextInInterval(this,t,i,0);return _r.fromDecorations(n).filter(s=>s.lineNumber===e)}getAllDecorations(e=0,t=!1){let i=this._decorationsTree.getAll(this,e,t,!1,!1);return i=i.concat(this._decorationProvider.getAllDecorations(e,t)),i}getAllMarginDecorations(e=0){return this._decorationsTree.getAll(this,e,!1,!1,!0)}_getDecorationsInRange(e,t,i,n){const s=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),r=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.getAllInInterval(this,s,r,t,i,n)}getRangeAt(e,t){return this._buffer.getRangeAt(e,t-e)}_changeDecorationImpl(e,t){const i=this._decorations[e];if(!i)return;if(i.options.after){const a=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(i.options.before){const a=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}const n=this._validateRangeRelaxedNoAllocations(t),s=this._buffer.getOffsetAt(n.startLineNumber,n.startColumn),r=this._buffer.getOffsetAt(n.endLineNumber,n.endColumn);this._decorationsTree.delete(i),i.reset(this.getVersionId(),s,r,n),this._decorationsTree.insert(i),this._onDidChangeDecorations.checkAffectedAndFire(i.options),i.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.endLineNumber),i.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.startLineNumber)}_changeDecorationOptionsImpl(e,t){const i=this._decorations[e];if(!i)return;const n=!!(i.options.overviewRuler&&i.options.overviewRuler.color),s=!!(t.overviewRuler&&t.overviewRuler.color);if(this._onDidChangeDecorations.checkAffectedAndFire(i.options),this._onDidChangeDecorations.checkAffectedAndFire(t),i.options.after||t.after){const l=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.endLineNumber)}if(i.options.before||t.before){const l=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.startLineNumber)}const r=n!==s,a=YX(t)!==F1(i);r||a?(this._decorationsTree.delete(i),i.setOptions(t),this._decorationsTree.insert(i)):i.setOptions(t)}_deltaDecorationsImpl(e,t,i,n=!1){const s=this.getVersionId(),r=t.length;let a=0;const l=i.length;let c=0;this._onDidChangeDecorations.beginDeferredEmit();try{const d=new Array(l);for(;athis._setLanguage(e.languageId,t)),this._setLanguage(e.languageId,t))}_setLanguage(e,t){this.tokenization.setLanguageId(e,t),this._languageService.requestRichLanguageFeatures(e)}getLanguageIdAtPosition(e,t){return this.tokenization.getLanguageIdAtPosition(e,t)}getWordAtPosition(e){return this._tokenizationTextModelPart.getWordAtPosition(e)}getWordUntilPosition(e){return this._tokenizationTextModelPart.getWordUntilPosition(e)}normalizePosition(e,t){return e}getLineIndentColumn(e){return ZX(this.getLineContent(e))+1}},ud=ar,ar._MODEL_SYNC_LIMIT=50*1024*1024,ar.LARGE_FILE_SIZE_THRESHOLD=20*1024*1024,ar.LARGE_FILE_LINE_COUNT_THRESHOLD=300*1e3,ar.LARGE_FILE_HEAP_OPERATION_THRESHOLD=256*1024*1024,ar.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:Qi.tabSize,indentSize:Qi.indentSize,insertSpaces:Qi.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:Qi.trimAutoWhitespace,largeFileOptimizations:Qi.largeFileOptimizations,bracketPairColorizationOptions:Qi.bracketPairColorizationOptions},ar);m_=ud=UX([Gb(4,CT),Gb(5,qt),Gb(6,Gn),Gb(7,ke)],m_);function ZX(o){let e=0;for(const t of o)if(t===" "||t===" ")e++;else break;return e}function zS(o){return!!(o.options.overviewRuler&&o.options.overviewRuler.color)}function YX(o){return!!o.after||!!o.before}function F1(o){return!!o.options.after||!!o.options.before}class WP{constructor(){this._decorationsTree0=new BS,this._decorationsTree1=new BS,this._injectedTextDecorationsTree=new BS}ensureAllNodesHaveRanges(e){this.getAll(e,0,!1,!1,!1)}_ensureNodesHaveRanges(e,t){for(const i of t)i.range===null&&(i.range=e.getRangeAt(i.cachedAbsoluteStart,i.cachedAbsoluteEnd));return t}getAllInInterval(e,t,i,n,s,r){const a=e.getVersionId(),l=this._intervalSearch(t,i,n,s,a,r);return this._ensureNodesHaveRanges(e,l)}_intervalSearch(e,t,i,n,s,r){const a=this._decorationsTree0.intervalSearch(e,t,i,n,s,r),l=this._decorationsTree1.intervalSearch(e,t,i,n,s,r),c=this._injectedTextDecorationsTree.intervalSearch(e,t,i,n,s,r);return a.concat(l).concat(c)}getInjectedTextInInterval(e,t,i,n){const s=e.getVersionId(),r=this._injectedTextDecorationsTree.intervalSearch(t,i,n,!1,s,!1);return this._ensureNodesHaveRanges(e,r).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getAllInjectedText(e,t){const i=e.getVersionId(),n=this._injectedTextDecorationsTree.search(t,!1,i,!1);return this._ensureNodesHaveRanges(e,n).filter(s=>s.options.showIfCollapsed||!s.range.isEmpty())}getAll(e,t,i,n,s){const r=e.getVersionId(),a=this._search(t,i,n,r,s);return this._ensureNodesHaveRanges(e,a)}_search(e,t,i,n,s){if(i)return this._decorationsTree1.search(e,t,n,s);{const r=this._decorationsTree0.search(e,t,n,s),a=this._decorationsTree1.search(e,t,n,s),l=this._injectedTextDecorationsTree.search(e,t,n,s);return r.concat(a).concat(l)}}collectNodesFromOwner(e){const t=this._decorationsTree0.collectNodesFromOwner(e),i=this._decorationsTree1.collectNodesFromOwner(e),n=this._injectedTextDecorationsTree.collectNodesFromOwner(e);return t.concat(i).concat(n)}collectNodesPostOrder(){const e=this._decorationsTree0.collectNodesPostOrder(),t=this._decorationsTree1.collectNodesPostOrder(),i=this._injectedTextDecorationsTree.collectNodesPostOrder();return e.concat(t).concat(i)}insert(e){F1(e)?this._injectedTextDecorationsTree.insert(e):zS(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)}delete(e){F1(e)?this._injectedTextDecorationsTree.delete(e):zS(e)?this._decorationsTree1.delete(e):this._decorationsTree0.delete(e)}getNodeRange(e,t){const i=e.getVersionId();return t.cachedVersionId!==i&&this._resolveNode(t,i),t.range===null&&(t.range=e.getRangeAt(t.cachedAbsoluteStart,t.cachedAbsoluteEnd)),t.range}_resolveNode(e,t){F1(e)?this._injectedTextDecorationsTree.resolveNode(e,t):zS(e)?this._decorationsTree1.resolveNode(e,t):this._decorationsTree0.resolveNode(e,t)}acceptReplace(e,t,i,n){this._decorationsTree0.acceptReplace(e,t,i,n),this._decorationsTree1.acceptReplace(e,t,i,n),this._injectedTextDecorationsTree.acceptReplace(e,t,i,n)}}function Mr(o){return o.replace(/[^a-z0-9\-_]/gi," ")}class v9{constructor(e){this.color=e.color||"",this.darkColor=e.darkColor||""}}class QX extends v9{constructor(e){super(e),this._resolvedColor=null,this.position=typeof e.position=="number"?e.position:LC.Center}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(e,t){if(typeof e=="string")return e;const i=e?t.getColor(e.id):null;return i?i.toString():""}}class XX{constructor(e){this.position=e?.position??Ao.Center,this.persistLane=e?.persistLane}}class JX extends v9{constructor(e){super(e),this.position=e.position,this.sectionHeaderStyle=e.sectionHeaderStyle??null,this.sectionHeaderText=e.sectionHeaderText??null}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(e,t){return typeof e=="string"?q.fromHex(e):t.getColor(e.id)}}class Bc{static from(e){return e instanceof Bc?e:new Bc(e)}constructor(e){this.content=e.content||"",this.inlineClassName=e.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=e.attachedData||null,this.cursorStops=e.cursorStops||null}}class kt{static register(e){return new kt(e)}static createDynamic(e){return new kt(e)}constructor(e){this.description=e.description,this.blockClassName=e.blockClassName?Mr(e.blockClassName):null,this.blockDoesNotCollapse=e.blockDoesNotCollapse??null,this.blockIsAfterEnd=e.blockIsAfterEnd??null,this.blockPadding=e.blockPadding??null,this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?Mr(e.className):null,this.shouldFillLineOnLineBreak=e.shouldFillLineOnLineBreak??null,this.hoverMessage=e.hoverMessage||null,this.glyphMarginHoverMessage=e.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=e.lineNumberHoverMessage||null,this.isWholeLine=e.isWholeLine||!1,this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new QX(e.overviewRuler):null,this.minimap=e.minimap?new JX(e.minimap):null,this.glyphMargin=e.glyphMarginClassName?new XX(e.glyphMargin):null,this.glyphMarginClassName=e.glyphMarginClassName?Mr(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?Mr(e.linesDecorationsClassName):null,this.lineNumberClassName=e.lineNumberClassName?Mr(e.lineNumberClassName):null,this.linesDecorationsTooltip=e.linesDecorationsTooltip?rH(e.linesDecorationsTooltip):null,this.firstLineDecorationClassName=e.firstLineDecorationClassName?Mr(e.firstLineDecorationClassName):null,this.marginClassName=e.marginClassName?Mr(e.marginClassName):null,this.inlineClassName=e.inlineClassName?Mr(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?Mr(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?Mr(e.afterContentClassName):null,this.after=e.after?Bc.from(e.after):null,this.before=e.before?Bc.from(e.before):null,this.hideInCommentTokens=e.hideInCommentTokens??!1,this.hideInStringTokens=e.hideInStringTokens??!1}}kt.EMPTY=kt.register({description:"empty"});const HP=[kt.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),kt.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),kt.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),kt.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function VP(o){return o instanceof kt?o:kt.createDynamic(o)}class eJ extends z{constructor(e){super(),this.handleBeforeFire=e,this._actual=this._register(new A),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._deferredCnt=0,this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._affectsLineNumber=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){this._deferredCnt--,this._deferredCnt===0&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null)}recordLineAffectedByInjectedText(e){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(e)}checkAffectedAndFire(e){this._affectsMinimap||=!!e.minimap?.position,this._affectsOverviewRuler||=!!e.overviewRuler?.color,this._affectsGlyphMargin||=!!e.glyphMarginClassName,this._affectsLineNumber||=!!e.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){this._deferredCnt===0?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines);const e={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler,affectsGlyphMargin:this._affectsGlyphMargin,affectsLineNumber:this._affectsLineNumber};this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._actual.fire(e)}}class tJ extends z{constructor(){super(),this._fastEmitter=this._register(new A),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new A),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(e=null){if(this._deferredCnt--,this._deferredCnt===0&&this._deferredEvent!==null){this._deferredEvent.rawContentChangedEvent.resultingSelection=e;const t=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(t),this._slowEmitter.fire(t)}}fire(e){if(this._deferredCnt>0){this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(e):this._deferredEvent=e;return}this._fastEmitter.fire(e),this._slowEmitter.fire(e)}}var iJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Yb=function(o,e){return function(t,i){e(t,i,o)}},Vu;function sd(o){return o.toString()}let nJ=class{constructor(e,t,i){this.model=e,this._modelEventListeners=new X,this.model=e,this._modelEventListeners.add(e.onWillDispose(()=>t(e))),this._modelEventListeners.add(e.onDidChangeLanguage(n=>i(e,n)))}dispose(){this._modelEventListeners.dispose()}};const sJ=Un||Ue?1:2;class oJ{constructor(e,t,i,n,s,r,a,l){this.uri=e,this.initialUndoRedoSnapshot=t,this.time=i,this.sharesUndoRedoStack=n,this.heapSize=s,this.sha1=r,this.versionId=a,this.alternativeVersionId=l}}var oh;let ID=(oh=class extends z{constructor(e,t,i,n){super(),this._configurationService=e,this._resourcePropertiesService=t,this._undoRedoService=i,this._instantiationService=n,this._onModelAdded=this._register(new A),this.onModelAdded=this._onModelAdded.event,this._onModelRemoved=this._register(new A),this.onModelRemoved=this._onModelRemoved.event,this._onModelModeChanged=this._register(new A),this.onModelLanguageChanged=this._onModelModeChanged.event,this._modelCreationOptionsByLanguageAndResource=Object.create(null),this._models={},this._disposedModels=new Map,this._disposedModelsHeapSize=0,this._register(this._configurationService.onDidChangeConfiguration(s=>this._updateModelOptions(s))),this._updateModelOptions(void 0)}static _readModelOptions(e,t){let i=Qi.tabSize;if(e.editor&&typeof e.editor.tabSize<"u"){const u=parseInt(e.editor.tabSize,10);isNaN(u)||(i=u),i<1&&(i=1)}let n="tabSize";if(e.editor&&typeof e.editor.indentSize<"u"&&e.editor.indentSize!=="tabSize"){const u=parseInt(e.editor.indentSize,10);isNaN(u)||(n=Math.max(u,1))}let s=Qi.insertSpaces;e.editor&&typeof e.editor.insertSpaces<"u"&&(s=e.editor.insertSpaces==="false"?!1:!!e.editor.insertSpaces);let r=sJ;const a=e.eol;a===`\r +`?r=2:a===` +`&&(r=1);let l=Qi.trimAutoWhitespace;e.editor&&typeof e.editor.trimAutoWhitespace<"u"&&(l=e.editor.trimAutoWhitespace==="false"?!1:!!e.editor.trimAutoWhitespace);let c=Qi.detectIndentation;e.editor&&typeof e.editor.detectIndentation<"u"&&(c=e.editor.detectIndentation==="false"?!1:!!e.editor.detectIndentation);let d=Qi.largeFileOptimizations;e.editor&&typeof e.editor.largeFileOptimizations<"u"&&(d=e.editor.largeFileOptimizations==="false"?!1:!!e.editor.largeFileOptimizations);let h=Qi.bracketPairColorizationOptions;return e.editor?.bracketPairColorization&&typeof e.editor.bracketPairColorization=="object"&&(h={enabled:!!e.editor.bracketPairColorization.enabled,independentColorPoolPerBracketType:!!e.editor.bracketPairColorization.independentColorPoolPerBracketType}),{isForSimpleWidget:t,tabSize:i,indentSize:n,insertSpaces:s,detectIndentation:c,defaultEOL:r,trimAutoWhitespace:l,largeFileOptimizations:d,bracketPairColorizationOptions:h}}_getEOL(e,t){if(e)return this._resourcePropertiesService.getEOL(e,t);const i=this._configurationService.getValue("files.eol",{overrideIdentifier:t});return i&&typeof i=="string"&&i!=="auto"?i:Ns===3||Ns===2?` +`:`\r +`}_shouldRestoreUndoStack(){const e=this._configurationService.getValue("files.restoreUndoStack");return typeof e=="boolean"?e:!0}getCreationOptions(e,t,i){const n=typeof e=="string"?e:e.languageId;let s=this._modelCreationOptionsByLanguageAndResource[n+t];if(!s){const r=this._configurationService.getValue("editor",{overrideIdentifier:n,resource:t}),a=this._getEOL(t,n);s=Vu._readModelOptions({editor:r,eol:a},i),this._modelCreationOptionsByLanguageAndResource[n+t]=s}return s}_updateModelOptions(e){const t=this._modelCreationOptionsByLanguageAndResource;this._modelCreationOptionsByLanguageAndResource=Object.create(null);const i=Object.keys(this._models);for(let n=0,s=i.length;ne){const t=[];for(this._disposedModels.forEach(i=>{i.sharesUndoRedoStack||t.push(i)}),t.sort((i,n)=>i.time-n.time);t.length>0&&this._disposedModelsHeapSize>e;){const i=t.shift();this._removeDisposedModel(i.uri),i.initialUndoRedoSnapshot!==null&&this._undoRedoService.restoreSnapshot(i.initialUndoRedoSnapshot)}}}_createModelData(e,t,i,n){const s=this.getCreationOptions(t,i,n),r=this._instantiationService.createInstance(m_,e,t,s,i);if(i&&this._disposedModels.has(sd(i))){const c=this._removeDisposedModel(i),d=this._undoRedoService.getElements(i),h=this._getSHA1Computer(),u=h.canComputeSHA1(r)?h.computeSHA1(r)===c.sha1:!1;if(u||c.sharesUndoRedoStack){for(const f of d.past)Ja(f)&&f.matchesResource(i)&&f.setModel(r);for(const f of d.future)Ja(f)&&f.matchesResource(i)&&f.setModel(r);this._undoRedoService.setElementsValidFlag(i,!0,f=>Ja(f)&&f.matchesResource(i)),u&&(r._overwriteVersionId(c.versionId),r._overwriteAlternativeVersionId(c.alternativeVersionId),r._overwriteInitialUndoRedoSnapshot(c.initialUndoRedoSnapshot))}else c.initialUndoRedoSnapshot!==null&&this._undoRedoService.restoreSnapshot(c.initialUndoRedoSnapshot)}const a=sd(r.uri);if(this._models[a])throw new Error("ModelService: Cannot add model because it already exists!");const l=new nJ(r,c=>this._onWillDispose(c),(c,d)=>this._onDidChangeLanguage(c,d));return this._models[a]=l,l}createModel(e,t,i,n=!1){let s;return t?s=this._createModelData(e,t,i,n):s=this._createModelData(e,Bs,i,n),this._onModelAdded.fire(s.model),s.model}getModels(){const e=[],t=Object.keys(this._models);for(let i=0,n=t.length;i0||c.future.length>0){for(const d of c.past)Ja(d)&&d.matchesResource(e.uri)&&(s=!0,r+=d.heapSize(e.uri),d.setModel(e.uri));for(const d of c.future)Ja(d)&&d.matchesResource(e.uri)&&(s=!0,r+=d.heapSize(e.uri),d.setModel(e.uri))}}const a=Vu.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK,l=this._getSHA1Computer();if(s)if(!n&&(r>a||!l.canComputeSHA1(e))){const c=i.model.getInitialUndoRedoSnapshot();c!==null&&this._undoRedoService.restoreSnapshot(c)}else this._ensureDisposedModelsHeapSize(a-r),this._undoRedoService.setElementsValidFlag(e.uri,!1,c=>Ja(c)&&c.matchesResource(e.uri)),this._insertDisposedModel(new oJ(e.uri,i.model.getInitialUndoRedoSnapshot(),Date.now(),n,r,l.computeSHA1(e),e.getVersionId(),e.getAlternativeVersionId()));else if(!n){const c=i.model.getInitialUndoRedoSnapshot();c!==null&&this._undoRedoService.restoreSnapshot(c)}delete this._models[t],i.dispose(),delete this._modelCreationOptionsByLanguageAndResource[e.getLanguageId()+e.uri],this._onModelRemoved.fire(e)}_onDidChangeLanguage(e,t){const i=t.oldLanguage,n=e.getLanguageId(),s=this.getCreationOptions(i,e.uri,e.isForSimpleWidget),r=this.getCreationOptions(n,e.uri,e.isForSimpleWidget);Vu._setModelOptionsForModel(e,r,s),this._onModelModeChanged.fire({model:e,oldLanguageId:i})}_getSHA1Computer(){return new ED}},Vu=oh,oh.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK=20*1024*1024,oh);ID=Vu=iJ([Yb(0,lt),Yb(1,p3),Yb(2,CT),Yb(3,ke)],ID);const Fw=class Fw{canComputeSHA1(e){return e.getValueLength()<=Fw.MAX_MODEL_SIZE}computeSHA1(e){const t=new Kx,i=e.createSnapshot();let n;for(;n=i.read();)t.update(n);return t.digest()}};Fw.MAX_MODEL_SIZE=10*1024*1024;let ED=Fw;var ND;(function(o){o[o.PRESERVE=0]="PRESERVE",o[o.LAST=1]="LAST"})(ND||(ND={}));const w9={Quickaccess:"workbench.contributions.quickaccess"};class rJ{constructor(){this.providers=[],this.defaultProvider=void 0}registerQuickAccessProvider(e){return e.prefix.length===0?this.defaultProvider=e:this.providers.push(e),this.providers.sort((t,i)=>i.prefix.length-t.prefix.length),_e(()=>{this.providers.splice(this.providers.indexOf(e),1),this.defaultProvider===e&&(this.defaultProvider=void 0)})}getQuickAccessProviders(){return Ag([this.defaultProvider,...this.providers])}getQuickAccessProvider(e){return e&&this.providers.find(i=>e.startsWith(i.prefix))||void 0||this.defaultProvider}}Bi.add(w9.Quickaccess,new rJ);const aJ={ctrlCmd:!1,alt:!1};var yg;(function(o){o[o.Blur=1]="Blur",o[o.Gesture=2]="Gesture",o[o.Other=3]="Other"})(yg||(yg={}));var jr;(function(o){o[o.NONE=0]="NONE",o[o.FIRST=1]="FIRST",o[o.SECOND=2]="SECOND",o[o.LAST=3]="LAST"})(jr||(jr={}));var yt;(function(o){o[o.First=1]="First",o[o.Second=2]="Second",o[o.Last=3]="Last",o[o.Next=4]="Next",o[o.Previous=5]="Previous",o[o.NextPage=6]="NextPage",o[o.PreviousPage=7]="PreviousPage",o[o.NextSeparator=8]="NextSeparator",o[o.PreviousSeparator=9]="PreviousSeparator"})(yt||(yt={}));var iv;(function(o){o[o.Title=1]="Title",o[o.Inline=2]="Inline"})(iv||(iv={}));const fy=He("quickInputService");var lJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},zP=function(o,e){return function(t,i){e(t,i,o)}};let TD=class extends z{constructor(e,t){super(),this.quickInputService=e,this.instantiationService=t,this.registry=Bi.as(w9.Quickaccess),this.mapProviderToDescriptor=new Map,this.lastAcceptedPickerValues=new Map,this.visibleQuickAccess=void 0}show(e="",t){this.doShowOrPick(e,!1,t)}doShowOrPick(e,t,i){const[n,s]=this.getOrInstantiateProvider(e,i?.enabledProviderPrefixes),r=this.visibleQuickAccess,a=r?.descriptor;if(r&&s&&a===s){e!==s.prefix&&!i?.preserveValue&&(r.picker.value=e),this.adjustValueSelection(r.picker,s,i);return}if(s&&!i?.preserveValue){let g;if(r&&a&&a!==s){const p=r.value.substr(a.prefix.length);p&&(g=`${s.prefix}${p}`)}if(!g){const p=n?.defaultFilterValue;p===ND.LAST?g=this.lastAcceptedPickerValues.get(s):typeof p=="string"&&(g=`${s.prefix}${p}`)}typeof g=="string"&&(e=g)}const l=r?.picker?.valueSelection,c=r?.picker?.value,d=new X,h=d.add(this.quickInputService.createQuickPick({useSeparators:!0}));h.value=e,this.adjustValueSelection(h,s,i),h.placeholder=i?.placeholder??s?.placeholder,h.quickNavigate=i?.quickNavigateConfiguration,h.hideInput=!!h.quickNavigate&&!r,(typeof i?.itemActivation=="number"||i?.quickNavigateConfiguration)&&(h.itemActivation=i?.itemActivation??jr.SECOND),h.contextKey=s?.contextKey,h.filterValue=g=>g.substring(s?s.prefix.length:0);let u;t&&(u=new qN,d.add(J.once(h.onWillAccept)(g=>{g.veto(),h.hide()}))),d.add(this.registerPickerListeners(h,n,s,e,i));const f=d.add(new In);if(n&&d.add(n.provide(h,f.token,i?.providerOptions)),J.once(h.onDidHide)(()=>{h.selectedItems.length===0&&f.cancel(),d.dispose(),u?.complete(h.selectedItems.slice(0))}),h.show(),l&&c===e&&(h.valueSelection=l),t)return u?.p}adjustValueSelection(e,t,i){let n;i?.preserveValue?n=[e.value.length,e.value.length]:n=[t?.prefix.length??0,e.value.length],e.valueSelection=n}registerPickerListeners(e,t,i,n,s){const r=new X,a=this.visibleQuickAccess={picker:e,descriptor:i,value:n};return r.add(_e(()=>{a===this.visibleQuickAccess&&(this.visibleQuickAccess=void 0)})),r.add(e.onDidChangeValue(l=>{const[c]=this.getOrInstantiateProvider(l,s?.enabledProviderPrefixes);c!==t?this.show(l,{enabledProviderPrefixes:s?.enabledProviderPrefixes,preserveValue:!0,providerOptions:s?.providerOptions}):a.value=l})),i&&r.add(e.onDidAccept(()=>{this.lastAcceptedPickerValues.set(i,e.value)})),r}getOrInstantiateProvider(e,t){const i=this.registry.getQuickAccessProvider(e);if(!i||t&&!t?.includes(i.prefix))return[void 0,void 0];let n=this.mapProviderToDescriptor.get(i);return n||(n=this.instantiationService.createInstance(i.ctor),this.mapProviderToDescriptor.set(i,n)),[n,i]}};TD=lJ([zP(0,fy),zP(1,ke)],TD);class nb extends xr{constructor(e){super(),this._onChange=this._register(new A),this.onChange=this._onChange.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._opts=e,this._checked=this._opts.isChecked;const t=["monaco-custom-toggle"];this._opts.icon&&(this._icon=this._opts.icon,t.push(...Ee.asClassNameArray(this._icon))),this._opts.actionClassName&&t.push(...this._opts.actionClassName.split(" ")),this._checked&&t.push("checked"),this.domNode=document.createElement("div"),this._hover=this._register(La().setupManagedHover(e.hoverDelegate??Ks("mouse"),this.domNode,this._opts.title)),this.domNode.classList.add(...t),this._opts.notFocusable||(this.domNode.tabIndex=0),this.domNode.setAttribute("role","checkbox"),this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.setAttribute("aria-label",this._opts.title),this.applyStyles(),this.onclick(this.domNode,i=>{this.enabled&&(this.checked=!this._checked,this._onChange.fire(!1),i.preventDefault())}),this._register(this.ignoreGesture(this.domNode)),this.onkeydown(this.domNode,i=>{if(i.keyCode===10||i.keyCode===3){this.checked=!this._checked,this._onChange.fire(!0),i.preventDefault(),i.stopPropagation();return}this._onKeyDown.fire(i)})}get enabled(){return this.domNode.getAttribute("aria-disabled")!=="true"}focus(){this.domNode.focus()}get checked(){return this._checked}set checked(e){this._checked=e,this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.classList.toggle("checked",this._checked),this.applyStyles()}width(){return 22}applyStyles(){this.domNode&&(this.domNode.style.borderColor=this._checked&&this._opts.inputActiveOptionBorder||"",this.domNode.style.color=this._checked&&this._opts.inputActiveOptionForeground||"inherit",this.domNode.style.backgroundColor=this._checked&&this._opts.inputActiveOptionBackground||"")}enable(){this.domNode.setAttribute("aria-disabled",String(!1))}disable(){this.domNode.setAttribute("aria-disabled",String(!0))}}var cJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};class y9{constructor(e){this.nodes=e}toString(){return this.nodes.map(e=>typeof e=="string"?e:e.label).join("")}}cJ([Jt],y9.prototype,"toString",null);const dJ=/\[([^\]]+)\]\(((?:https?:\/\/|command:|file:)[^\)\s]+)(?: (["'])(.+?)(\3))?\)/gi;function hJ(o){const e=[];let t=0,i;for(;i=dJ.exec(o);){i.index-t>0&&e.push(o.substring(t,i.index));const[,n,s,,r]=i;r?e.push({label:n,href:s,title:r}):e.push({label:n,href:s}),t=i.index+i[0].length}return t{DV(f)&&je.stop(f,!0),t.callback(s.href)},c=t.disposables.add(new ze(a,ee.CLICK)).event,d=t.disposables.add(new ze(a,ee.KEY_DOWN)).event,h=J.chain(d,f=>f.filter(g=>{const p=new Nt(g);return p.equals(10)||p.equals(3)}));t.disposables.add(fn.addTarget(a));const u=t.disposables.add(new ze(a,St.Tap)).event;J.any(c,u,h)(l,null,t.disposables),e.appendChild(a)}}var mJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},UP=function(o,e){return function(t,i){e(t,i,o)}};const S9="inQuickInput",pJ=new le(S9,!1,m("inQuickInput","Whether keyboard focus is inside the quick input control")),_J=re.has(S9),L9="quickInputType",bJ=new le(L9,void 0,m("quickInputType","The type of the currently visible quick input")),x9="cursorAtEndOfQuickInputBox",CJ=new le(x9,!1,m("cursorAtEndOfQuickInputBox","Whether the cursor in the quick input is at the end of the input box")),vJ=re.has(x9),MD={iconClass:Ee.asClassName(ie.quickInputBack),tooltip:m("quickInput.back","Back")},Bw=class Bw extends z{constructor(e){super(),this.ui=e,this._widgetUpdated=!1,this.visible=!1,this._enabled=!0,this._busy=!1,this._ignoreFocusOut=!1,this._leftButtons=[],this._rightButtons=[],this._inlineButtons=[],this.buttonsUpdated=!1,this._toggles=[],this.togglesUpdated=!1,this.noValidationMessage=Bw.noPromptMessage,this._severity=Qt.Ignore,this.onDidTriggerButtonEmitter=this._register(new A),this.onDidHideEmitter=this._register(new A),this.onWillHideEmitter=this._register(new A),this.onDisposeEmitter=this._register(new A),this.visibleDisposables=this._register(new X),this.onDidHide=this.onDidHideEmitter.event}get title(){return this._title}set title(e){this._title=e,this.update()}get description(){return this._description}set description(e){this._description=e,this.update()}get step(){return this._steps}set step(e){this._steps=e,this.update()}get totalSteps(){return this._totalSteps}set totalSteps(e){this._totalSteps=e,this.update()}get enabled(){return this._enabled}set enabled(e){this._enabled=e,this.update()}get contextKey(){return this._contextKey}set contextKey(e){this._contextKey=e,this.update()}get busy(){return this._busy}set busy(e){this._busy=e,this.update()}get ignoreFocusOut(){return this._ignoreFocusOut}set ignoreFocusOut(e){const t=this._ignoreFocusOut!==e&&!Tc;this._ignoreFocusOut=e&&!Tc,t&&this.update()}get titleButtons(){return this._leftButtons.length?[...this._leftButtons,this._rightButtons]:this._rightButtons}get buttons(){return[...this._leftButtons,...this._rightButtons,...this._inlineButtons]}set buttons(e){this._leftButtons=e.filter(t=>t===MD),this._rightButtons=e.filter(t=>t!==MD&&t.location!==iv.Inline),this._inlineButtons=e.filter(t=>t.location===iv.Inline),this.buttonsUpdated=!0,this.update()}get toggles(){return this._toggles}set toggles(e){this._toggles=e??[],this.togglesUpdated=!0,this.update()}get validationMessage(){return this._validationMessage}set validationMessage(e){this._validationMessage=e,this.update()}get severity(){return this._severity}set severity(e){this._severity=e,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.onDidTriggerButton(e=>{this.buttons.indexOf(e)!==-1&&this.onDidTriggerButtonEmitter.fire(e)})),this.ui.show(this),this.visible=!0,this._lastValidationMessage=void 0,this._lastSeverity=void 0,this.buttons.length&&(this.buttonsUpdated=!0),this.toggles.length&&(this.togglesUpdated=!0),this.update())}hide(){this.visible&&this.ui.hide()}didHide(e=yg.Other){this.visible=!1,this.visibleDisposables.clear(),this.onDidHideEmitter.fire({reason:e})}willHide(e=yg.Other){this.onWillHideEmitter.fire({reason:e})}update(){if(!this.visible)return;const e=this.getTitle();e&&this.ui.title.textContent!==e?this.ui.title.textContent=e:!e&&this.ui.title.innerHTML!==" "&&(this.ui.title.innerText=" ");const t=this.getDescription();if(this.ui.description1.textContent!==t&&(this.ui.description1.textContent=t),this.ui.description2.textContent!==t&&(this.ui.description2.textContent=t),this._widgetUpdated&&(this._widgetUpdated=!1,this._widget?un(this.ui.widget,this._widget):un(this.ui.widget)),this.busy&&!this.busyDelay&&(this.busyDelay=new wr,this.busyDelay.setIfNotSet(()=>{this.visible&&this.ui.progressBar.infinite()},800)),!this.busy&&this.busyDelay&&(this.ui.progressBar.stop(),this.busyDelay.cancel(),this.busyDelay=void 0),this.buttonsUpdated){this.buttonsUpdated=!1,this.ui.leftActionBar.clear();const n=this._leftButtons.map((a,l)=>rp(a,`id-${l}`,async()=>this.onDidTriggerButtonEmitter.fire(a)));this.ui.leftActionBar.push(n,{icon:!0,label:!1}),this.ui.rightActionBar.clear();const s=this._rightButtons.map((a,l)=>rp(a,`id-${l}`,async()=>this.onDidTriggerButtonEmitter.fire(a)));this.ui.rightActionBar.push(s,{icon:!0,label:!1}),this.ui.inlineActionBar.clear();const r=this._inlineButtons.map((a,l)=>rp(a,`id-${l}`,async()=>this.onDidTriggerButtonEmitter.fire(a)));this.ui.inlineActionBar.push(r,{icon:!0,label:!1})}if(this.togglesUpdated){this.togglesUpdated=!1;const n=this.toggles?.filter(s=>s instanceof nb)??[];this.ui.inputBox.toggles=n}this.ui.ignoreFocusOut=this.ignoreFocusOut,this.ui.setEnabled(this.enabled),this.ui.setContextKey(this.contextKey);const i=this.validationMessage||this.noValidationMessage;this._lastValidationMessage!==i&&(this._lastValidationMessage=i,un(this.ui.message),gJ(i,this.ui.message,{callback:n=>{this.ui.linkOpenerDelegate(n)},disposables:this.visibleDisposables})),this._lastSeverity!==this.severity&&(this._lastSeverity=this.severity,this.showMessageDecoration(this.severity))}getTitle(){return this.title&&this.step?`${this.title} (${this.getSteps()})`:this.title?this.title:this.step?this.getSteps():""}getDescription(){return this.description||""}getSteps(){return this.step&&this.totalSteps?m("quickInput.steps","{0}/{1}",this.step,this.totalSteps):this.step?String(this.step):""}showMessageDecoration(e){if(this.ui.inputBox.showDecoration(e),e!==Qt.Ignore){const t=this.ui.inputBox.stylesForType(e);this.ui.message.style.color=t.foreground?`${t.foreground}`:"",this.ui.message.style.backgroundColor=t.background?`${t.background}`:"",this.ui.message.style.border=t.border?`1px solid ${t.border}`:"",this.ui.message.style.marginBottom="-2px"}else this.ui.message.style.color="",this.ui.message.style.backgroundColor="",this.ui.message.style.border="",this.ui.message.style.marginBottom=""}dispose(){this.hide(),this.onDisposeEmitter.fire(),super.dispose()}};Bw.noPromptMessage=m("inputModeEntry","Press 'Enter' to confirm your input or 'Escape' to cancel");let nv=Bw;const Ww=class Ww extends nv{constructor(){super(...arguments),this._value="",this.onDidChangeValueEmitter=this._register(new A),this.onWillAcceptEmitter=this._register(new A),this.onDidAcceptEmitter=this._register(new A),this.onDidCustomEmitter=this._register(new A),this._items=[],this.itemsUpdated=!1,this._canSelectMany=!1,this._canAcceptInBackground=!1,this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._matchOnLabelMode="fuzzy",this._sortByLabel=!0,this._keepScrollPosition=!1,this._itemActivation=jr.FIRST,this._activeItems=[],this.activeItemsUpdated=!1,this.activeItemsToConfirm=[],this.onDidChangeActiveEmitter=this._register(new A),this._selectedItems=[],this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=[],this.onDidChangeSelectionEmitter=this._register(new A),this.onDidTriggerItemButtonEmitter=this._register(new A),this.onDidTriggerSeparatorButtonEmitter=this._register(new A),this.valueSelectionUpdated=!0,this._ok="default",this._customButton=!1,this._focusEventBufferer=new W_,this.type="quickPick",this.filterValue=e=>e,this.onDidChangeValue=this.onDidChangeValueEmitter.event,this.onWillAccept=this.onWillAcceptEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event,this.onDidChangeActive=this.onDidChangeActiveEmitter.event,this.onDidChangeSelection=this.onDidChangeSelectionEmitter.event,this.onDidTriggerItemButton=this.onDidTriggerItemButtonEmitter.event,this.onDidTriggerSeparatorButton=this.onDidTriggerSeparatorButtonEmitter.event}get quickNavigate(){return this._quickNavigate}set quickNavigate(e){this._quickNavigate=e,this.update()}get value(){return this._value}set value(e){this.doSetValue(e)}doSetValue(e,t){this._value!==e&&(this._value=e,t||this.update(),this.visible&&this.ui.list.filter(this.filterValue(this._value))&&this.trySelectFirst(),this.onDidChangeValueEmitter.fire(this._value))}set ariaLabel(e){this._ariaLabel=e,this.update()}get ariaLabel(){return this._ariaLabel}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.update()}get items(){return this._items}get scrollTop(){return this.ui.list.scrollTop}set scrollTop(e){this.ui.list.scrollTop=e}set items(e){this._items=e,this.itemsUpdated=!0,this.update()}get canSelectMany(){return this._canSelectMany}set canSelectMany(e){this._canSelectMany=e,this.update()}get canAcceptInBackground(){return this._canAcceptInBackground}set canAcceptInBackground(e){this._canAcceptInBackground=e}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(e){this._matchOnDescription=e,this.update()}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(e){this._matchOnDetail=e,this.update()}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(e){this._matchOnLabel=e,this.update()}get matchOnLabelMode(){return this._matchOnLabelMode}set matchOnLabelMode(e){this._matchOnLabelMode=e,this.update()}get sortByLabel(){return this._sortByLabel}set sortByLabel(e){this._sortByLabel=e,this.update()}get keepScrollPosition(){return this._keepScrollPosition}set keepScrollPosition(e){this._keepScrollPosition=e}get itemActivation(){return this._itemActivation}set itemActivation(e){this._itemActivation=e}get activeItems(){return this._activeItems}set activeItems(e){this._activeItems=e,this.activeItemsUpdated=!0,this.update()}get selectedItems(){return this._selectedItems}set selectedItems(e){this._selectedItems=e,this.selectedItemsUpdated=!0,this.update()}get keyMods(){return this._quickNavigate?aJ:this.ui.keyMods}get valueSelection(){const e=this.ui.inputBox.getSelection();if(e)return[e.start,e.end]}set valueSelection(e){this._valueSelection=e,this.valueSelectionUpdated=!0,this.update()}get customButton(){return this._customButton}set customButton(e){this._customButton=e,this.update()}get customLabel(){return this._customButtonLabel}set customLabel(e){this._customButtonLabel=e,this.update()}get customHover(){return this._customButtonHover}set customHover(e){this._customButtonHover=e,this.update()}get ok(){return this._ok}set ok(e){this._ok=e,this.update()}get hideInput(){return!!this._hideInput}set hideInput(e){this._hideInput=e,this.update()}trySelectFirst(){this.canSelectMany||this.ui.list.focus(yt.First)}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(e=>{this.doSetValue(e,!0)})),this.visibleDisposables.add(this.ui.onDidAccept(()=>{this.canSelectMany?this.ui.list.getCheckedElements().length||(this._selectedItems=[],this.onDidChangeSelectionEmitter.fire(this.selectedItems)):this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems)),this.handleAccept(!1)})),this.visibleDisposables.add(this.ui.onDidCustom(()=>{this.onDidCustomEmitter.fire()})),this.visibleDisposables.add(this._focusEventBufferer.wrapEvent(this.ui.list.onDidChangeFocus,(e,t)=>t)(e=>{this.activeItemsUpdated||this.activeItemsToConfirm!==this._activeItems&&li(e,this._activeItems,(t,i)=>t===i)||(this._activeItems=e,this.onDidChangeActiveEmitter.fire(e))})),this.visibleDisposables.add(this.ui.list.onDidChangeSelection(({items:e,event:t})=>{if(this.canSelectMany){e.length&&this.ui.list.setSelectedElements([]);return}this.selectedItemsToConfirm!==this._selectedItems&&li(e,this._selectedItems,(i,n)=>i===n)||(this._selectedItems=e,this.onDidChangeSelectionEmitter.fire(e),e.length&&this.handleAccept(tT(t)&&t.button===1))})),this.visibleDisposables.add(this.ui.list.onChangedCheckedElements(e=>{!this.canSelectMany||!this.visible||this.selectedItemsToConfirm!==this._selectedItems&&li(e,this._selectedItems,(t,i)=>t===i)||(this._selectedItems=e,this.onDidChangeSelectionEmitter.fire(e))})),this.visibleDisposables.add(this.ui.list.onButtonTriggered(e=>this.onDidTriggerItemButtonEmitter.fire(e))),this.visibleDisposables.add(this.ui.list.onSeparatorButtonTriggered(e=>this.onDidTriggerSeparatorButtonEmitter.fire(e))),this.visibleDisposables.add(this.registerQuickNavigation()),this.valueSelectionUpdated=!0),super.show()}handleAccept(e){let t=!1;this.onWillAcceptEmitter.fire({veto:()=>t=!0}),t||this.onDidAcceptEmitter.fire({inBackground:e})}registerQuickNavigation(){return U(this.ui.container,ee.KEY_UP,e=>{if(this.canSelectMany||!this._quickNavigate)return;const t=new Nt(e),i=t.keyCode;this._quickNavigate.keybindings.some(r=>{const a=r.getChords();return a.length>1?!1:a[0].shiftKey&&i===4?!(t.ctrlKey||t.altKey||t.metaKey):!!(a[0].altKey&&i===6||a[0].ctrlKey&&i===5||a[0].metaKey&&i===57)})&&(this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(!1)),this._quickNavigate=void 0)})}update(){if(!this.visible)return;const e=this.keepScrollPosition?this.scrollTop:0,t=!!this.description,i={title:!!this.title||!!this.step||!!this.titleButtons.length,description:t,checkAll:this.canSelectMany&&!this._hideCheckAll,checkBox:this.canSelectMany,inputBox:!this._hideInput,progressBar:!this._hideInput||t,visibleCount:!0,count:this.canSelectMany&&!this._hideCountBadge,ok:this.ok==="default"?this.canSelectMany:this.ok,list:!0,message:!!this.validationMessage,customButton:this.customButton};this.ui.setVisibilities(i),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||"");let n=this.ariaLabel;!n&&i.inputBox&&(n=this.placeholder||Ww.DEFAULT_ARIA_LABEL,this.title&&(n+=` - ${this.title}`)),this.ui.list.ariaLabel!==n&&(this.ui.list.ariaLabel=n??null),this.ui.list.matchOnDescription=this.matchOnDescription,this.ui.list.matchOnDetail=this.matchOnDetail,this.ui.list.matchOnLabel=this.matchOnLabel,this.ui.list.matchOnLabelMode=this.matchOnLabelMode,this.ui.list.sortByLabel=this.sortByLabel,this.itemsUpdated&&(this.itemsUpdated=!1,this._focusEventBufferer.bufferEvents(()=>{switch(this.ui.list.setElements(this.items),this.ui.list.shouldLoop=!this.canSelectMany,this.ui.list.filter(this.filterValue(this.ui.inputBox.value)),this._itemActivation){case jr.NONE:this._itemActivation=jr.FIRST;break;case jr.SECOND:this.ui.list.focus(yt.Second),this._itemActivation=jr.FIRST;break;case jr.LAST:this.ui.list.focus(yt.Last),this._itemActivation=jr.FIRST;break;default:this.trySelectFirst();break}})),this.ui.container.classList.contains("show-checkboxes")!==!!this.canSelectMany&&(this.canSelectMany?this.ui.list.clearFocus():this.trySelectFirst()),this.activeItemsUpdated&&(this.activeItemsUpdated=!1,this.activeItemsToConfirm=this._activeItems,this.ui.list.setFocusedElements(this.activeItems),this.activeItemsToConfirm===this._activeItems&&(this.activeItemsToConfirm=null)),this.selectedItemsUpdated&&(this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=this._selectedItems,this.canSelectMany?this.ui.list.setCheckedElements(this.selectedItems):this.ui.list.setSelectedElements(this.selectedItems),this.selectedItemsToConfirm===this._selectedItems&&(this.selectedItemsToConfirm=null)),this.ui.customButton.label=this.customLabel||"",this.ui.customButton.element.title=this.customHover||"",i.inputBox||(this.ui.list.domFocus(),this.canSelectMany&&this.ui.list.focus(yt.First)),this.keepScrollPosition&&(this.scrollTop=e)}focus(e){this.ui.list.focus(e),this.canSelectMany&&this.ui.list.domFocus()}accept(e){e&&!this._canAcceptInBackground||this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(e??!1))}};Ww.DEFAULT_ARIA_LABEL=m("quickInputBox.ariaLabel","Type to narrow down results.");let sv=Ww,wJ=class extends nv{constructor(){super(...arguments),this._value="",this.valueSelectionUpdated=!0,this._password=!1,this.onDidValueChangeEmitter=this._register(new A),this.onDidAcceptEmitter=this._register(new A),this.type="inputBox",this.onDidChangeValue=this.onDidValueChangeEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event}get value(){return this._value}set value(e){this._value=e||"",this.update()}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.update()}get password(){return this._password}set password(e){this._password=e,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(e=>{e!==this.value&&(this._value=e,this.onDidValueChangeEmitter.fire(e))})),this.visibleDisposables.add(this.ui.onDidAccept(()=>this.onDidAcceptEmitter.fire())),this.valueSelectionUpdated=!0),super.show()}update(){if(!this.visible)return;this.ui.container.classList.remove("hidden-input");const e={title:!!this.title||!!this.step||!!this.titleButtons.length,description:!!this.description||!!this.step,inputBox:!0,message:!0,progressBar:!0};this.ui.setVisibilities(e),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||""),this.ui.inputBox.password!==this.password&&(this.ui.inputBox.password=this.password)}},RD=class extends gg{constructor(e,t){super("element",!1,i=>this.getOverrideOptions(i),e,t)}getOverrideOptions(e){const t=(Ei(e.content)?e.content.textContent??"":typeof e.content=="string"?e.content:e.content.value).includes(` +`);return{persistence:{hideOnKeyDown:!1},appearance:{showHoverHint:t,skipFadeInAnimation:!0}}}};RD=mJ([UP(0,lt),UP(1,au)],RD);q.white.toString(),q.white.toString();class AD extends z{get onDidClick(){return this._onDidClick.event}constructor(e,t){super(),this._label="",this._onDidClick=this._register(new A),this._onDidEscape=this._register(new A),this.options=t,this._element=document.createElement("a"),this._element.classList.add("monaco-button"),this._element.tabIndex=0,this._element.setAttribute("role","button"),this._element.classList.toggle("secondary",!!t.secondary);const i=t.secondary?t.buttonSecondaryBackground:t.buttonBackground,n=t.secondary?t.buttonSecondaryForeground:t.buttonForeground;this._element.style.color=n||"",this._element.style.backgroundColor=i||"",t.supportShortLabel&&(this._labelShortElement=document.createElement("div"),this._labelShortElement.classList.add("monaco-button-label-short"),this._element.appendChild(this._labelShortElement),this._labelElement=document.createElement("div"),this._labelElement.classList.add("monaco-button-label"),this._element.appendChild(this._labelElement),this._element.classList.add("monaco-text-button-with-short-label")),typeof t.title=="string"&&this.setTitle(t.title),typeof t.ariaLabel=="string"&&this._element.setAttribute("aria-label",t.ariaLabel),e.appendChild(this._element),this._register(fn.addTarget(this._element)),[ee.CLICK,St.Tap].forEach(s=>{this._register(U(this._element,s,r=>{if(!this.enabled){je.stop(r);return}this._onDidClick.fire(r)}))}),this._register(U(this._element,ee.KEY_DOWN,s=>{const r=new Nt(s);let a=!1;this.enabled&&(r.equals(3)||r.equals(10))?(this._onDidClick.fire(s),a=!0):r.equals(9)&&(this._onDidEscape.fire(s),this._element.blur(),a=!0),a&&je.stop(r,!0)})),this._register(U(this._element,ee.MOUSE_OVER,s=>{this._element.classList.contains("disabled")||this.updateBackground(!0)})),this._register(U(this._element,ee.MOUSE_OUT,s=>{this.updateBackground(!1)})),this.focusTracker=this._register(Ph(this._element)),this._register(this.focusTracker.onDidFocus(()=>{this.enabled&&this.updateBackground(!0)})),this._register(this.focusTracker.onDidBlur(()=>{this.enabled&&this.updateBackground(!1)}))}dispose(){super.dispose(),this._element.remove()}getContentElements(e){const t=[];for(let i of Qd(e))if(typeof i=="string"){if(i=i.trim(),i==="")continue;const n=document.createElement("span");n.textContent=i,t.push(n)}else t.push(i);return t}updateBackground(e){let t;this.options.secondary?t=e?this.options.buttonSecondaryHoverBackground:this.options.buttonSecondaryBackground:t=e?this.options.buttonHoverBackground:this.options.buttonBackground,t&&(this._element.style.backgroundColor=t)}get element(){return this._element}set label(e){if(this._label===e||ra(this._label)&&ra(e)&&Xq(this._label,e))return;this._element.classList.add("monaco-text-button");const t=this.options.supportShortLabel?this._labelElement:this._element;if(ra(e)){const n=oy(e,{inline:!0});n.dispose();const s=n.element.querySelector("p")?.innerHTML;if(s){const r=IF(s,{ADD_TAGS:["b","i","u","code","span"],ALLOWED_ATTR:["class"],RETURN_TRUSTED_TYPE:!0});t.innerHTML=r}else un(t)}else this.options.supportIcons?un(t,...this.getContentElements(e)):t.textContent=e;let i="";typeof this.options.title=="string"?i=this.options.title:this.options.title&&(i=cG(e)),this.setTitle(i),typeof this.options.ariaLabel=="string"?this._element.setAttribute("aria-label",this.options.ariaLabel):this.options.ariaLabel&&this._element.setAttribute("aria-label",i),this._label=e}get label(){return this._label}set icon(e){this._element.classList.add(...Ee.asClassNameArray(e))}set enabled(e){e?(this._element.classList.remove("disabled"),this._element.setAttribute("aria-disabled",String(!1)),this._element.tabIndex=0):(this._element.classList.add("disabled"),this._element.setAttribute("aria-disabled",String(!0)))}get enabled(){return!this._element.classList.contains("disabled")}setTitle(e){!this._hover&&e!==""?this._hover=this._register(La().setupManagedHover(this.options.hoverDelegate??Ks("mouse"),this._element,e)):this._hover&&this._hover.update(e)}}class PD{constructor(e,t,i){this.options=t,this.styles=i,this.count=0,this.element=Z(e,ce(".monaco-count-badge")),this.countFormat=this.options.countFormat||"{0}",this.titleFormat=this.options.titleFormat||"",this.setCount(this.options.count||0)}setCount(e){this.count=e,this.render()}setTitleFormat(e){this.titleFormat=e,this.render()}render(){this.element.textContent=$p(this.countFormat,this.count),this.element.title=$p(this.titleFormat,this.count),this.element.style.backgroundColor=this.styles.badgeBackground??"",this.element.style.color=this.styles.badgeForeground??"",this.styles.badgeBorder&&(this.element.style.border=`1px solid ${this.styles.badgeBorder}`)}}const $P="done",KP="active",$S="infinite",KS="infinite-long-running",jP="discrete",Hw=class Hw extends z{constructor(e,t){super(),this.progressSignal=this._register(new Dn),this.workedVal=0,this.showDelayedScheduler=this._register(new ci(()=>ns(this.element),0)),this.longRunningScheduler=this._register(new ci(()=>this.infiniteLongRunning(),Hw.LONG_RUNNING_INFINITE_THRESHOLD)),this.create(e,t)}create(e,t){this.element=document.createElement("div"),this.element.classList.add("monaco-progress-container"),this.element.setAttribute("role","progressbar"),this.element.setAttribute("aria-valuemin","0"),e.appendChild(this.element),this.bit=document.createElement("div"),this.bit.classList.add("progress-bit"),this.bit.style.backgroundColor=t?.progressBarBackground||"#0E70C0",this.element.appendChild(this.bit)}off(){this.bit.style.width="inherit",this.bit.style.opacity="1",this.element.classList.remove(KP,$S,KS,jP),this.workedVal=0,this.totalWork=void 0,this.longRunningScheduler.cancel(),this.progressSignal.clear()}stop(){return this.doDone(!1)}doDone(e){return this.element.classList.add($P),this.element.classList.contains($S)?(this.bit.style.opacity="0",e?setTimeout(()=>this.off(),200):this.off()):(this.bit.style.width="inherit",e?setTimeout(()=>this.off(),200):this.off()),this}infinite(){return this.bit.style.width="2%",this.bit.style.opacity="1",this.element.classList.remove(jP,$P,KS),this.element.classList.add(KP,$S),this.longRunningScheduler.schedule(),this}infiniteLongRunning(){this.element.classList.add(KS)}getContainer(){return this.element}};Hw.LONG_RUNNING_INFINITE_THRESHOLD=1e4;let OD=Hw;const yJ=m("caseDescription","Match Case"),SJ=m("wordsDescription","Match Whole Word"),LJ=m("regexDescription","Use Regular Expression");class xJ extends nb{constructor(e){super({icon:ie.caseSensitive,title:yJ+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class kJ extends nb{constructor(e){super({icon:ie.wholeWord,title:SJ+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class DJ extends nb{constructor(e){super({icon:ie.regex,title:LJ+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class IJ{constructor(e,t=0,i=e.length,n=t-1){this.items=e,this.start=t,this.end=i,this.index=n}current(){return this.index===this.start-1||this.index===this.end?null:this.items[this.index]}next(){return this.index=Math.min(this.index+1,this.end),this.current()}previous(){return this.index=Math.max(this.index-1,this.start-1),this.current()}first(){return this.index=this.start,this.current()}last(){return this.index=this.end-1,this.current()}}class EJ{constructor(e=[],t=10){this._initialize(e),this._limit=t,this._onChange()}getHistory(){return this._elements}add(e){this._history.delete(e),this._history.add(e),this._onChange()}next(){return this._navigator.next()}previous(){return this._currentPosition()!==0?this._navigator.previous():null}current(){return this._navigator.current()}first(){return this._navigator.first()}last(){return this._navigator.last()}isLast(){return this._currentPosition()>=this._elements.length-1}isNowhere(){return this._navigator.current()===null}has(e){return this._history.has(e)}_onChange(){this._reduceToLimit();const e=this._elements;this._navigator=new IJ(e,0,e.length,e.length)}_reduceToLimit(){const e=this._elements;e.length>this._limit&&this._initialize(e.slice(e.length-this._limit))}_currentPosition(){const e=this._navigator.current();return e?this._elements.indexOf(e):-1}_initialize(e){this._history=new Set;for(const t of e)this._history.add(t)}get _elements(){const e=[];return this._history.forEach(t=>e.push(t)),e}}const bm=ce;class NJ extends xr{constructor(e,t,i){super(),this.state="idle",this.maxHeight=Number.POSITIVE_INFINITY,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._onDidHeightChange=this._register(new A),this.onDidHeightChange=this._onDidHeightChange.event,this.contextViewProvider=t,this.options=i,this.message=null,this.placeholder=this.options.placeholder||"",this.tooltip=this.options.tooltip??(this.placeholder||""),this.ariaLabel=this.options.ariaLabel||"",this.options.validationOptions&&(this.validation=this.options.validationOptions.validation),this.element=Z(e,bm(".monaco-inputbox.idle"));const n=this.options.flexibleHeight?"textarea":"input",s=Z(this.element,bm(".ibwrapper"));if(this.input=Z(s,bm(n+".input.empty")),this.input.setAttribute("autocorrect","off"),this.input.setAttribute("autocapitalize","off"),this.input.setAttribute("spellcheck","false"),this.onfocus(this.input,()=>this.element.classList.add("synthetic-focus")),this.onblur(this.input,()=>this.element.classList.remove("synthetic-focus")),this.options.flexibleHeight){this.maxHeight=typeof this.options.flexibleMaxHeight=="number"?this.options.flexibleMaxHeight:Number.POSITIVE_INFINITY,this.mirror=Z(s,bm("div.mirror")),this.mirror.innerText=" ",this.scrollableElement=new J3(this.element,{vertical:1}),this.options.flexibleWidth&&(this.input.setAttribute("wrap","off"),this.mirror.style.whiteSpace="pre",this.mirror.style.wordWrap="initial"),Z(e,this.scrollableElement.getDomNode()),this._register(this.scrollableElement),this._register(this.scrollableElement.onScroll(l=>this.input.scrollTop=l.scrollTop));const r=this._register(new ze(e.ownerDocument,"selectionchange")),a=J.filter(r.event,()=>e.ownerDocument.getSelection()?.anchorNode===s);this._register(a(this.updateScrollDimensions,this)),this._register(this.onDidHeightChange(this.updateScrollDimensions,this))}else this.input.type=this.options.type||"text",this.input.setAttribute("wrap","off");this.ariaLabel&&this.input.setAttribute("aria-label",this.ariaLabel),this.placeholder&&!this.options.showPlaceholderOnFocus&&this.setPlaceHolder(this.placeholder),this.tooltip&&this.setTooltip(this.tooltip),this.oninput(this.input,()=>this.onValueChange()),this.onblur(this.input,()=>this.onBlur()),this.onfocus(this.input,()=>this.onFocus()),this._register(this.ignoreGesture(this.input)),setTimeout(()=>this.updateMirror(),0),this.options.actions&&(this.actionbar=this._register(new oo(this.element)),this.actionbar.push(this.options.actions,{icon:!0,label:!1})),this.applyStyles()}onBlur(){this._hideMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder","")}onFocus(){this._showMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder",this.placeholder||"")}setPlaceHolder(e){this.placeholder=e,this.input.setAttribute("placeholder",e)}setTooltip(e){this.tooltip=e,this.hover?this.hover.update(e):this.hover=this._register(La().setupManagedHover(Ks("mouse"),this.input,e))}get inputElement(){return this.input}get value(){return this.input.value}set value(e){this.input.value!==e&&(this.input.value=e,this.onValueChange())}get height(){return typeof this.cachedHeight=="number"?this.cachedHeight:Hd(this.element)}focus(){this.input.focus()}blur(){this.input.blur()}hasFocus(){return M0(this.input)}select(e=null){this.input.select(),e&&(this.input.setSelectionRange(e.start,e.end),e.end===this.input.value.length&&(this.input.scrollLeft=this.input.scrollWidth))}isSelectionAtEnd(){return this.input.selectionEnd===this.input.value.length&&this.input.selectionStart===this.input.selectionEnd}getSelection(){const e=this.input.selectionStart;if(e===null)return null;const t=this.input.selectionEnd??e;return{start:e,end:t}}enable(){this.input.removeAttribute("disabled")}disable(){this.blur(),this.input.disabled=!0,this._hideMessage()}set paddingRight(e){this.input.style.width=`calc(100% - ${e}px)`,this.mirror&&(this.mirror.style.paddingRight=e+"px")}updateScrollDimensions(){if(typeof this.cachedContentHeight!="number"||typeof this.cachedHeight!="number"||!this.scrollableElement)return;const e=this.cachedContentHeight,t=this.cachedHeight,i=this.input.scrollTop;this.scrollableElement.setScrollDimensions({scrollHeight:e,height:t}),this.scrollableElement.setScrollPosition({scrollTop:i})}showMessage(e,t){if(this.state==="open"&&as(this.message,e))return;this.message=e,this.element.classList.remove("idle"),this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add(this.classForType(e.type));const i=this.stylesForType(this.message.type);this.element.style.border=`1px solid ${vl(i.border,"transparent")}`,this.message.content&&(this.hasFocus()||t)&&this._showMessage()}hideMessage(){this.message=null,this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add("idle"),this._hideMessage(),this.applyStyles()}validate(){let e=null;return this.validation&&(e=this.validation(this.value),e?(this.inputElement.setAttribute("aria-invalid","true"),this.showMessage(e)):this.inputElement.hasAttribute("aria-invalid")&&(this.inputElement.removeAttribute("aria-invalid"),this.hideMessage())),e?.type}stylesForType(e){const t=this.options.inputBoxStyles;switch(e){case 1:return{border:t.inputValidationInfoBorder,background:t.inputValidationInfoBackground,foreground:t.inputValidationInfoForeground};case 2:return{border:t.inputValidationWarningBorder,background:t.inputValidationWarningBackground,foreground:t.inputValidationWarningForeground};default:return{border:t.inputValidationErrorBorder,background:t.inputValidationErrorBackground,foreground:t.inputValidationErrorForeground}}}classForType(e){switch(e){case 1:return"info";case 2:return"warning";default:return"error"}}_showMessage(){if(!this.contextViewProvider||!this.message)return;let e;const t=()=>e.style.width=qp(this.element)+"px";this.contextViewProvider.showContextView({getAnchor:()=>this.element,anchorAlignment:1,render:n=>{if(!this.message)return null;e=Z(n,bm(".monaco-inputbox-container")),t();const s={inline:!0,className:"monaco-inputbox-message"},r=this.message.formatContent?Cq(this.message.content,s):bq(this.message.content,s);r.classList.add(this.classForType(this.message.type));const a=this.stylesForType(this.message.type);return r.style.backgroundColor=a.background??"",r.style.color=a.foreground??"",r.style.border=a.border?`1px solid ${a.border}`:"",Z(e,r),null},onHide:()=>{this.state="closed"},layout:t});let i;this.message.type===3?i=m("alertErrorMessage","Error: {0}",this.message.content):this.message.type===2?i=m("alertWarningMessage","Warning: {0}",this.message.content):i=m("alertInfoMessage","Info: {0}",this.message.content),El(i),this.state="open"}_hideMessage(){this.contextViewProvider&&(this.state==="open"&&this.contextViewProvider.hideContextView(),this.state="idle")}onValueChange(){this._onDidChange.fire(this.value),this.validate(),this.updateMirror(),this.input.classList.toggle("empty",!this.value),this.state==="open"&&this.contextViewProvider&&this.contextViewProvider.layout()}updateMirror(){if(!this.mirror)return;const e=this.value,i=e.charCodeAt(e.length-1)===10?" ":"";(e+i).replace(/\u000c/g,"")?this.mirror.textContent=e+i:this.mirror.innerText=" ",this.layout()}applyStyles(){const e=this.options.inputBoxStyles,t=e.inputBackground??"",i=e.inputForeground??"",n=e.inputBorder??"";this.element.style.backgroundColor=t,this.element.style.color=i,this.input.style.backgroundColor="inherit",this.input.style.color=i,this.element.style.border=`1px solid ${vl(n,"transparent")}`}layout(){if(!this.mirror)return;const e=this.cachedContentHeight;this.cachedContentHeight=Hd(this.mirror),e!==this.cachedContentHeight&&(this.cachedHeight=Math.min(this.cachedContentHeight,this.maxHeight),this.input.style.height=this.cachedHeight+"px",this._onDidHeightChange.fire(this.cachedContentHeight))}insertAtCursor(e){const t=this.inputElement,i=t.selectionStart,n=t.selectionEnd,s=t.value;i!==null&&n!==null&&(this.value=s.substr(0,i)+e+s.substr(n),t.setSelectionRange(i+1,i+1),this.layout())}dispose(){this._hideMessage(),this.message=null,this.actionbar?.dispose(),super.dispose()}}class k9 extends NJ{constructor(e,t,i){const n=m({key:"history.inputbox.hint.suffix.noparens",comment:['Text is the suffix of an input field placeholder coming after the action the input field performs, this will be used when the input field ends in a closing parenthesis ")", for example "Filter (e.g. text, !exclude)". The character inserted into the final string is ⇅ to represent the up and down arrow keys.']}," or {0} for history","⇅"),s=m({key:"history.inputbox.hint.suffix.inparens",comment:['Text is the suffix of an input field placeholder coming after the action the input field performs, this will be used when the input field does NOT end in a closing parenthesis (eg. "Find"). The character inserted into the final string is ⇅ to represent the up and down arrow keys.']}," ({0} for history)","⇅");super(e,t,i),this._onDidFocus=this._register(new A),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new A),this.onDidBlur=this._onDidBlur.event,this.history=new EJ(i.history,100);const r=()=>{if(i.showHistoryHint&&i.showHistoryHint()&&!this.placeholder.endsWith(n)&&!this.placeholder.endsWith(s)&&this.history.getHistory().length){const a=this.placeholder.endsWith(")")?n:s,l=this.placeholder+a;i.showPlaceholderOnFocus&&!M0(this.input)?this.placeholder=l:this.setPlaceHolder(l)}};this.observer=new MutationObserver((a,l)=>{a.forEach(c=>{c.target.textContent||r()})}),this.observer.observe(this.input,{attributeFilter:["class"]}),this.onfocus(this.input,()=>r()),this.onblur(this.input,()=>{const a=l=>{if(this.placeholder.endsWith(l)){const c=this.placeholder.slice(0,this.placeholder.length-l.length);return i.showPlaceholderOnFocus?this.placeholder=c:this.setPlaceHolder(c),!0}else return!1};a(s)||a(n)})}dispose(){super.dispose(),this.observer&&(this.observer.disconnect(),this.observer=void 0)}addToHistory(e){this.value&&(e||this.value!==this.getCurrentValue())&&this.history.add(this.value)}isAtLastInHistory(){return this.history.isLast()}isNowhereInHistory(){return this.history.isNowhere()}showNextValue(){this.history.has(this.value)||this.addToHistory();let e=this.getNextValue();e&&(e=e===this.value?this.getNextValue():e),this.value=e??"",Hh(this.value?this.value:m("clearedInput","Cleared Input"))}showPreviousValue(){this.history.has(this.value)||this.addToHistory();let e=this.getPreviousValue();e&&(e=e===this.value?this.getPreviousValue():e),e&&(this.value=e,Hh(this.value))}setPlaceHolder(e){super.setPlaceHolder(e),this.setTooltip(e)}onBlur(){super.onBlur(),this._onDidBlur.fire()}onFocus(){super.onFocus(),this._onDidFocus.fire()}getCurrentValue(){let e=this.history.current();return e||(e=this.history.last(),this.history.next()),e}getPreviousValue(){return this.history.previous()||this.history.first()}getNextValue(){return this.history.next()}}const TJ=m("defaultLabel","input");class D9 extends xr{constructor(e,t,i){super(),this.fixFocusOnOptionClickEnabled=!0,this.imeSessionInProgress=!1,this.additionalTogglesDisposables=this._register(new Dn),this.additionalToggles=[],this._onDidOptionChange=this._register(new A),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new A),this.onMouseDown=this._onMouseDown.event,this._onInput=this._register(new A),this._onKeyUp=this._register(new A),this._onCaseSensitiveKeyDown=this._register(new A),this.onCaseSensitiveKeyDown=this._onCaseSensitiveKeyDown.event,this._onRegexKeyDown=this._register(new A),this.onRegexKeyDown=this._onRegexKeyDown.event,this._lastHighlightFindOptions=0,this.placeholder=i.placeholder||"",this.validation=i.validation,this.label=i.label||TJ,this.showCommonFindToggles=!!i.showCommonFindToggles;const n=i.appendCaseSensitiveLabel||"",s=i.appendWholeWordsLabel||"",r=i.appendRegexLabel||"",a=i.history||[],l=!!i.flexibleHeight,c=!!i.flexibleWidth,d=i.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new k9(this.domNode,t,{placeholder:this.placeholder||"",ariaLabel:this.label||"",validationOptions:{validation:this.validation},history:a,showHistoryHint:i.showHistoryHint,flexibleHeight:l,flexibleWidth:c,flexibleMaxHeight:d,inputBoxStyles:i.inputBoxStyles}));const h=this._register(QT());if(this.showCommonFindToggles){this.regex=this._register(new DJ({appendTitle:r,isChecked:!1,hoverDelegate:h,...i.toggleStyles})),this._register(this.regex.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.regex.onKeyDown(f=>{this._onRegexKeyDown.fire(f)})),this.wholeWords=this._register(new kJ({appendTitle:s,isChecked:!1,hoverDelegate:h,...i.toggleStyles})),this._register(this.wholeWords.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this.caseSensitive=this._register(new xJ({appendTitle:n,isChecked:!1,hoverDelegate:h,...i.toggleStyles})),this._register(this.caseSensitive.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.caseSensitive.onKeyDown(f=>{this._onCaseSensitiveKeyDown.fire(f)}));const u=[this.caseSensitive.domNode,this.wholeWords.domNode,this.regex.domNode];this.onkeydown(this.domNode,f=>{if(f.equals(15)||f.equals(17)||f.equals(9)){const g=u.indexOf(this.domNode.ownerDocument.activeElement);if(g>=0){let p=-1;f.equals(17)?p=(g+1)%u.length:f.equals(15)&&(g===0?p=u.length-1:p=g-1),f.equals(9)?(u[g].blur(),this.inputBox.focus()):p>=0&&u[p].focus(),je.stop(f,!0)}}})}this.controls=document.createElement("div"),this.controls.className="controls",this.controls.style.display=this.showCommonFindToggles?"":"none",this.caseSensitive&&this.controls.append(this.caseSensitive.domNode),this.wholeWords&&this.controls.appendChild(this.wholeWords.domNode),this.regex&&this.controls.appendChild(this.regex.domNode),this.setAdditionalToggles(i?.additionalToggles),this.controls&&this.domNode.appendChild(this.controls),e?.appendChild(this.domNode),this._register(U(this.inputBox.inputElement,"compositionstart",u=>{this.imeSessionInProgress=!0})),this._register(U(this.inputBox.inputElement,"compositionend",u=>{this.imeSessionInProgress=!1,this._onInput.fire()})),this.onkeydown(this.inputBox.inputElement,u=>this._onKeyDown.fire(u)),this.onkeyup(this.inputBox.inputElement,u=>this._onKeyUp.fire(u)),this.oninput(this.inputBox.inputElement,u=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,u=>this._onMouseDown.fire(u))}get onDidChange(){return this.inputBox.onDidChange}layout(e){this.inputBox.layout(),this.updateInputBoxPadding(e.collapsedFindWidget)}enable(){this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.regex?.enable(),this.wholeWords?.enable(),this.caseSensitive?.enable();for(const e of this.additionalToggles)e.enable()}disable(){this.domNode.classList.add("disabled"),this.inputBox.disable(),this.regex?.disable(),this.wholeWords?.disable(),this.caseSensitive?.disable();for(const e of this.additionalToggles)e.disable()}setFocusInputOnOptionClick(e){this.fixFocusOnOptionClickEnabled=e}setEnabled(e){e?this.enable():this.disable()}setAdditionalToggles(e){for(const t of this.additionalToggles)t.domNode.remove();this.additionalToggles=[],this.additionalTogglesDisposables.value=new X;for(const t of e??[])this.additionalTogglesDisposables.value.add(t),this.controls.appendChild(t.domNode),this.additionalTogglesDisposables.value.add(t.onChange(i=>{this._onDidOptionChange.fire(i),!i&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus()})),this.additionalToggles.push(t);this.additionalToggles.length>0&&(this.controls.style.display=""),this.updateInputBoxPadding()}updateInputBoxPadding(e=!1){e?this.inputBox.paddingRight=0:this.inputBox.paddingRight=(this.caseSensitive?.width()??0)+(this.wholeWords?.width()??0)+(this.regex?.width()??0)+this.additionalToggles.reduce((t,i)=>t+i.width(),0)}getValue(){return this.inputBox.value}setValue(e){this.inputBox.value!==e&&(this.inputBox.value=e)}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getCaseSensitive(){return this.caseSensitive?.checked??!1}setCaseSensitive(e){this.caseSensitive&&(this.caseSensitive.checked=e)}getWholeWords(){return this.wholeWords?.checked??!1}setWholeWords(e){this.wholeWords&&(this.wholeWords.checked=e)}getRegex(){return this.regex?.checked??!1}setRegex(e){this.regex&&(this.regex.checked=e,this.validate())}focusOnCaseSensitive(){this.caseSensitive?.focus()}highlightFindOptions(){this.domNode.classList.remove("highlight-"+this._lastHighlightFindOptions),this._lastHighlightFindOptions=1-this._lastHighlightFindOptions,this.domNode.classList.add("highlight-"+this._lastHighlightFindOptions)}validate(){this.inputBox.validate()}showMessage(e){this.inputBox.showMessage(e)}clearMessage(){this.inputBox.hideMessage()}}const MJ=ce;class RJ extends z{constructor(e,t,i){super(),this.parent=e,this.onKeyDown=s=>jt(this.findInput.inputBox.inputElement,ee.KEY_DOWN,s),this.onDidChange=s=>this.findInput.onDidChange(s),this.container=Z(this.parent,MJ(".quick-input-box")),this.findInput=this._register(new D9(this.container,void 0,{label:"",inputBoxStyles:t,toggleStyles:i}));const n=this.findInput.inputBox.inputElement;n.role="combobox",n.ariaHasPopup="menu",n.ariaAutoComplete="list",n.ariaExpanded="true"}get value(){return this.findInput.getValue()}set value(e){this.findInput.setValue(e)}select(e=null){this.findInput.inputBox.select(e)}getSelection(){return this.findInput.inputBox.getSelection()}isSelectionAtEnd(){return this.findInput.inputBox.isSelectionAtEnd()}get placeholder(){return this.findInput.inputBox.inputElement.getAttribute("placeholder")||""}set placeholder(e){this.findInput.inputBox.setPlaceHolder(e)}get password(){return this.findInput.inputBox.inputElement.type==="password"}set password(e){this.findInput.inputBox.inputElement.type=e?"password":"text"}set enabled(e){this.findInput.inputBox.inputElement.toggleAttribute("readonly",!e)}set toggles(e){this.findInput.setAdditionalToggles(e)}setAttribute(e,t){this.findInput.inputBox.inputElement.setAttribute(e,t)}showDecoration(e){e===Qt.Ignore?this.findInput.clearMessage():this.findInput.showMessage({type:e===Qt.Info?1:e===Qt.Warning?2:3,content:""})}stylesForType(e){return this.findInput.inputBox.stylesForType(e===Qt.Info?1:e===Qt.Warning?2:3)}setFocus(){this.findInput.focus()}layout(){this.findInput.inputBox.layout()}}class AJ{get templateId(){return this.renderer.templateId}constructor(e,t){this.renderer=e,this.modelProvider=t}renderTemplate(e){return{data:this.renderer.renderTemplate(e),disposable:z.None}}renderElement(e,t,i,n){if(i.disposable?.dispose(),!i.data)return;const s=this.modelProvider();if(s.isResolved(e))return this.renderer.renderElement(s.get(e),e,i.data,n);const r=new In,a=s.resolve(e,r.token);i.disposable={dispose:()=>r.cancel()},this.renderer.renderPlaceholder(e,i.data),a.then(l=>this.renderer.renderElement(l,e,i.data,n))}disposeTemplate(e){e.disposable&&(e.disposable.dispose(),e.disposable=void 0),e.data&&(this.renderer.disposeTemplate(e.data),e.data=void 0)}}class PJ{constructor(e,t){this.modelProvider=e,this.accessibilityProvider=t}getWidgetAriaLabel(){return this.accessibilityProvider.getWidgetAriaLabel()}getAriaLabel(e){const t=this.modelProvider();return t.isResolved(e)?this.accessibilityProvider.getAriaLabel(t.get(e)):null}}function OJ(o,e){return{...e,accessibilityProvider:e.accessibilityProvider&&new PJ(o,e.accessibilityProvider)}}class FJ{constructor(e,t,i,n,s={}){const r=()=>this.model,a=n.map(l=>new AJ(l,r));this.list=new go(e,t,i,a,OJ(r,s))}updateOptions(e){this.list.updateOptions(e)}getHTMLElement(){return this.list.getHTMLElement()}get onDidFocus(){return this.list.onDidFocus}get widget(){return this.list}get onDidDispose(){return this.list.onDidDispose}get onMouseDblClick(){return J.map(this.list.onMouseDblClick,({element:e,index:t,browserEvent:i})=>({element:e===void 0?void 0:this._model.get(e),index:t,browserEvent:i}))}get onPointer(){return J.map(this.list.onPointer,({element:e,index:t,browserEvent:i})=>({element:e===void 0?void 0:this._model.get(e),index:t,browserEvent:i}))}get onDidChangeSelection(){return J.map(this.list.onDidChangeSelection,({elements:e,indexes:t,browserEvent:i})=>({elements:e.map(n=>this._model.get(n)),indexes:t,browserEvent:i}))}get model(){return this._model}set model(e){this._model=e,this.list.splice(0,this.list.length,Bn(e.length))}getFocus(){return this.list.getFocus()}getSelection(){return this.list.getSelection()}getSelectedElements(){return this.getSelection().map(e=>this.model.get(e))}style(e){this.list.style(e)}dispose(){this.list.dispose()}}var Kg=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};const BJ=!1;var ov;(function(o){o.North="north",o.South="south",o.East="east",o.West="west"})(ov||(ov={}));let WJ=4;const HJ=new A;let VJ=300;const zJ=new A;class f2{constructor(e){this.el=e,this.disposables=new X}get onPointerMove(){return this.disposables.add(new ze(fe(this.el),"mousemove")).event}get onPointerUp(){return this.disposables.add(new ze(fe(this.el),"mouseup")).event}dispose(){this.disposables.dispose()}}Kg([Jt],f2.prototype,"onPointerMove",null);Kg([Jt],f2.prototype,"onPointerUp",null);class g2{get onPointerMove(){return this.disposables.add(new ze(this.el,St.Change)).event}get onPointerUp(){return this.disposables.add(new ze(this.el,St.End)).event}constructor(e){this.el=e,this.disposables=new X}dispose(){this.disposables.dispose()}}Kg([Jt],g2.prototype,"onPointerMove",null);Kg([Jt],g2.prototype,"onPointerUp",null);class rv{get onPointerMove(){return this.factory.onPointerMove}get onPointerUp(){return this.factory.onPointerUp}constructor(e){this.factory=e}dispose(){}}Kg([Jt],rv.prototype,"onPointerMove",null);Kg([Jt],rv.prototype,"onPointerUp",null);const qP="pointer-events-disabled";class an extends z{get state(){return this._state}get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}set state(e){this._state!==e&&(this.el.classList.toggle("disabled",e===0),this.el.classList.toggle("minimum",e===1),this.el.classList.toggle("maximum",e===2),this._state=e,this.onDidEnablementChange.fire(e))}set orthogonalStartSash(e){if(this._orthogonalStartSash!==e){if(this.orthogonalStartDragHandleDisposables.clear(),this.orthogonalStartSashDisposables.clear(),e){const t=i=>{this.orthogonalStartDragHandleDisposables.clear(),i!==0&&(this._orthogonalStartDragHandle=Z(this.el,ce(".orthogonal-drag-handle.start")),this.orthogonalStartDragHandleDisposables.add(_e(()=>this._orthogonalStartDragHandle.remove())),this.orthogonalStartDragHandleDisposables.add(new ze(this._orthogonalStartDragHandle,"mouseenter")).event(()=>an.onMouseEnter(e),void 0,this.orthogonalStartDragHandleDisposables),this.orthogonalStartDragHandleDisposables.add(new ze(this._orthogonalStartDragHandle,"mouseleave")).event(()=>an.onMouseLeave(e),void 0,this.orthogonalStartDragHandleDisposables))};this.orthogonalStartSashDisposables.add(e.onDidEnablementChange.event(t,this)),t(e.state)}this._orthogonalStartSash=e}}set orthogonalEndSash(e){if(this._orthogonalEndSash!==e){if(this.orthogonalEndDragHandleDisposables.clear(),this.orthogonalEndSashDisposables.clear(),e){const t=i=>{this.orthogonalEndDragHandleDisposables.clear(),i!==0&&(this._orthogonalEndDragHandle=Z(this.el,ce(".orthogonal-drag-handle.end")),this.orthogonalEndDragHandleDisposables.add(_e(()=>this._orthogonalEndDragHandle.remove())),this.orthogonalEndDragHandleDisposables.add(new ze(this._orthogonalEndDragHandle,"mouseenter")).event(()=>an.onMouseEnter(e),void 0,this.orthogonalEndDragHandleDisposables),this.orthogonalEndDragHandleDisposables.add(new ze(this._orthogonalEndDragHandle,"mouseleave")).event(()=>an.onMouseLeave(e),void 0,this.orthogonalEndDragHandleDisposables))};this.orthogonalEndSashDisposables.add(e.onDidEnablementChange.event(t,this)),t(e.state)}this._orthogonalEndSash=e}}constructor(e,t,i){super(),this.hoverDelay=VJ,this.hoverDelayer=this._register(new z_(this.hoverDelay)),this._state=3,this.onDidEnablementChange=this._register(new A),this._onDidStart=this._register(new A),this._onDidChange=this._register(new A),this._onDidReset=this._register(new A),this._onDidEnd=this._register(new A),this.orthogonalStartSashDisposables=this._register(new X),this.orthogonalStartDragHandleDisposables=this._register(new X),this.orthogonalEndSashDisposables=this._register(new X),this.orthogonalEndDragHandleDisposables=this._register(new X),this.onDidStart=this._onDidStart.event,this.onDidChange=this._onDidChange.event,this.onDidReset=this._onDidReset.event,this.onDidEnd=this._onDidEnd.event,this.linkedSash=void 0,this.el=Z(e,ce(".monaco-sash")),i.orthogonalEdge&&this.el.classList.add(`orthogonal-edge-${i.orthogonalEdge}`),Ue&&this.el.classList.add("mac");const n=this._register(new ze(this.el,"mousedown")).event;this._register(n(h=>this.onPointerStart(h,new f2(e)),this));const s=this._register(new ze(this.el,"dblclick")).event;this._register(s(this.onPointerDoublePress,this));const r=this._register(new ze(this.el,"mouseenter")).event;this._register(r(()=>an.onMouseEnter(this)));const a=this._register(new ze(this.el,"mouseleave")).event;this._register(a(()=>an.onMouseLeave(this))),this._register(fn.addTarget(this.el));const l=this._register(new ze(this.el,St.Start)).event;this._register(l(h=>this.onPointerStart(h,new g2(this.el)),this));const c=this._register(new ze(this.el,St.Tap)).event;let d;this._register(c(h=>{if(d){clearTimeout(d),d=void 0,this.onPointerDoublePress(h);return}clearTimeout(d),d=setTimeout(()=>d=void 0,250)},this)),typeof i.size=="number"?(this.size=i.size,i.orientation===0?this.el.style.width=`${this.size}px`:this.el.style.height=`${this.size}px`):(this.size=WJ,this._register(HJ.event(h=>{this.size=h,this.layout()}))),this._register(zJ.event(h=>this.hoverDelay=h)),this.layoutProvider=t,this.orthogonalStartSash=i.orthogonalStartSash,this.orthogonalEndSash=i.orthogonalEndSash,this.orientation=i.orientation||0,this.orientation===1?(this.el.classList.add("horizontal"),this.el.classList.remove("vertical")):(this.el.classList.remove("horizontal"),this.el.classList.add("vertical")),this.el.classList.toggle("debug",BJ),this.layout()}onPointerStart(e,t){je.stop(e);let i=!1;if(!e.__orthogonalSashEvent){const g=this.getOrthogonalSash(e);g&&(i=!0,e.__orthogonalSashEvent=!0,g.onPointerStart(e,new rv(t)))}if(this.linkedSash&&!e.__linkedSashEvent&&(e.__linkedSashEvent=!0,this.linkedSash.onPointerStart(e,new rv(t))),!this.state)return;const n=this.el.ownerDocument.getElementsByTagName("iframe");for(const g of n)g.classList.add(qP);const s=e.pageX,r=e.pageY,a=e.altKey,l={startX:s,currentX:s,startY:r,currentY:r,altKey:a};this.el.classList.add("active"),this._onDidStart.fire(l);const c=Vs(this.el),d=()=>{let g="";i?g="all-scroll":this.orientation===1?this.state===1?g="s-resize":this.state===2?g="n-resize":g=Ue?"row-resize":"ns-resize":this.state===1?g="e-resize":this.state===2?g="w-resize":g=Ue?"col-resize":"ew-resize",c.textContent=`* { cursor: ${g} !important; }`},h=new X;d(),i||this.onDidEnablementChange.event(d,null,h);const u=g=>{je.stop(g,!1);const p={startX:s,currentX:g.pageX,startY:r,currentY:g.pageY,altKey:a};this._onDidChange.fire(p)},f=g=>{je.stop(g,!1),c.remove(),this.el.classList.remove("active"),this._onDidEnd.fire(),h.dispose();for(const p of n)p.classList.remove(qP)};t.onPointerMove(u,null,h),t.onPointerUp(f,null,h),h.add(t)}onPointerDoublePress(e){const t=this.getOrthogonalSash(e);t&&t._onDidReset.fire(),this.linkedSash&&this.linkedSash._onDidReset.fire(),this._onDidReset.fire()}static onMouseEnter(e,t=!1){e.el.classList.contains("active")?(e.hoverDelayer.cancel(),e.el.classList.add("hover")):e.hoverDelayer.trigger(()=>e.el.classList.add("hover"),e.hoverDelay).then(void 0,()=>{}),!t&&e.linkedSash&&an.onMouseEnter(e.linkedSash,!0)}static onMouseLeave(e,t=!1){e.hoverDelayer.cancel(),e.el.classList.remove("hover"),!t&&e.linkedSash&&an.onMouseLeave(e.linkedSash,!0)}clearSashHoverState(){an.onMouseLeave(this)}layout(){if(this.orientation===0){const e=this.layoutProvider;this.el.style.left=e.getVerticalSashLeft(this)-this.size/2+"px",e.getVerticalSashTop&&(this.el.style.top=e.getVerticalSashTop(this)+"px"),e.getVerticalSashHeight&&(this.el.style.height=e.getVerticalSashHeight(this)+"px")}else{const e=this.layoutProvider;this.el.style.top=e.getHorizontalSashTop(this)-this.size/2+"px",e.getHorizontalSashLeft&&(this.el.style.left=e.getHorizontalSashLeft(this)+"px"),e.getHorizontalSashWidth&&(this.el.style.width=e.getHorizontalSashWidth(this)+"px")}}getOrthogonalSash(e){const t=e.initialTarget??e.target;if(!(!t||!Ei(t))&&t.classList.contains("orthogonal-drag-handle"))return t.classList.contains("start")?this.orthogonalStartSash:this.orthogonalEndSash}dispose(){super.dispose(),this.el.remove()}}const UJ={separatorBorder:q.transparent};class I9{set size(e){this._size=e}get size(){return this._size}get visible(){return typeof this._cachedVisibleSize>"u"}setVisible(e,t){if(e!==this.visible){e?(this.size=bn(this._cachedVisibleSize,this.viewMinimumSize,this.viewMaximumSize),this._cachedVisibleSize=void 0):(this._cachedVisibleSize=typeof t=="number"?t:this.size,this.size=0),this.container.classList.toggle("visible",e);try{this.view.setVisible?.(e)}catch(i){console.error("Splitview: Failed to set visible view"),console.error(i)}}}get minimumSize(){return this.visible?this.view.minimumSize:0}get viewMinimumSize(){return this.view.minimumSize}get maximumSize(){return this.visible?this.view.maximumSize:0}get viewMaximumSize(){return this.view.maximumSize}get priority(){return this.view.priority}get proportionalLayout(){return this.view.proportionalLayout??!0}get snap(){return!!this.view.snap}set enabled(e){this.container.style.pointerEvents=e?"":"none"}constructor(e,t,i,n){this.container=e,this.view=t,this.disposable=n,this._cachedVisibleSize=void 0,typeof i=="number"?(this._size=i,this._cachedVisibleSize=void 0,e.classList.add("visible")):(this._size=0,this._cachedVisibleSize=i.cachedVisibleSize)}layout(e,t){this.layoutContainer(e);try{this.view.layout(this.size,e,t)}catch(i){console.error("Splitview: Failed to layout view"),console.error(i)}}dispose(){this.disposable.dispose()}}class $J extends I9{layoutContainer(e){this.container.style.top=`${e}px`,this.container.style.height=`${this.size}px`}}class KJ extends I9{layoutContainer(e){this.container.style.left=`${e}px`,this.container.style.width=`${this.size}px`}}var Ua;(function(o){o[o.Idle=0]="Idle",o[o.Busy=1]="Busy"})(Ua||(Ua={}));var av;(function(o){o.Distribute={type:"distribute"};function e(n){return{type:"split",index:n}}o.Split=e;function t(n){return{type:"auto",index:n}}o.Auto=t;function i(n){return{type:"invisible",cachedVisibleSize:n}}o.Invisible=i})(av||(av={}));class E9 extends z{get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}get startSnappingEnabled(){return this._startSnappingEnabled}get endSnappingEnabled(){return this._endSnappingEnabled}set orthogonalStartSash(e){for(const t of this.sashItems)t.sash.orthogonalStartSash=e;this._orthogonalStartSash=e}set orthogonalEndSash(e){for(const t of this.sashItems)t.sash.orthogonalEndSash=e;this._orthogonalEndSash=e}set startSnappingEnabled(e){this._startSnappingEnabled!==e&&(this._startSnappingEnabled=e,this.updateSashEnablement())}set endSnappingEnabled(e){this._endSnappingEnabled!==e&&(this._endSnappingEnabled=e,this.updateSashEnablement())}constructor(e,t={}){super(),this.size=0,this._contentSize=0,this.proportions=void 0,this.viewItems=[],this.sashItems=[],this.state=Ua.Idle,this._onDidSashChange=this._register(new A),this._onDidSashReset=this._register(new A),this._startSnappingEnabled=!0,this._endSnappingEnabled=!0,this.onDidSashChange=this._onDidSashChange.event,this.onDidSashReset=this._onDidSashReset.event,this.orientation=t.orientation??0,this.inverseAltBehavior=t.inverseAltBehavior??!1,this.proportionalLayout=t.proportionalLayout??!0,this.getSashOrthogonalSize=t.getSashOrthogonalSize,this.el=document.createElement("div"),this.el.classList.add("monaco-split-view2"),this.el.classList.add(this.orientation===0?"vertical":"horizontal"),e.appendChild(this.el),this.sashContainer=Z(this.el,ce(".sash-container")),this.viewContainer=ce(".split-view-container"),this.scrollable=this._register(new Vg({forceIntegerValues:!0,smoothScrollDuration:125,scheduleAtNextAnimationFrame:n=>fs(fe(this.el),n)})),this.scrollableElement=this._register(new X0(this.viewContainer,{vertical:this.orientation===0?t.scrollbarVisibility??1:2,horizontal:this.orientation===1?t.scrollbarVisibility??1:2},this.scrollable));const i=this._register(new ze(this.viewContainer,"scroll")).event;this._register(i(n=>{const s=this.scrollableElement.getScrollPosition(),r=Math.abs(this.viewContainer.scrollLeft-s.scrollLeft)<=1?void 0:this.viewContainer.scrollLeft,a=Math.abs(this.viewContainer.scrollTop-s.scrollTop)<=1?void 0:this.viewContainer.scrollTop;(r!==void 0||a!==void 0)&&this.scrollableElement.setScrollPosition({scrollLeft:r,scrollTop:a})})),this.onDidScroll=this.scrollableElement.onScroll,this._register(this.onDidScroll(n=>{n.scrollTopChanged&&(this.viewContainer.scrollTop=n.scrollTop),n.scrollLeftChanged&&(this.viewContainer.scrollLeft=n.scrollLeft)})),Z(this.el,this.scrollableElement.getDomNode()),this.style(t.styles||UJ),t.descriptor&&(this.size=t.descriptor.size,t.descriptor.views.forEach((n,s)=>{const r=Es(n.visible)||n.visible?n.size:{type:"invisible",cachedVisibleSize:n.size},a=n.view;this.doAddView(a,r,s,!0)}),this._contentSize=this.viewItems.reduce((n,s)=>n+s.size,0),this.saveProportions())}style(e){e.separatorBorder.isTransparent()?(this.el.classList.remove("separator-border"),this.el.style.removeProperty("--separator-border")):(this.el.classList.add("separator-border"),this.el.style.setProperty("--separator-border",e.separatorBorder.toString()))}addView(e,t,i=this.viewItems.length,n){this.doAddView(e,t,i,n)}layout(e,t){const i=Math.max(this.size,this._contentSize);if(this.size=e,this.layoutContext=t,this.proportions){let n=0;for(let s=0;s0&&(r.size=bn(Math.round(a*e/n),r.minimumSize,r.maximumSize))}}else{const n=Bn(this.viewItems.length),s=n.filter(a=>this.viewItems[a].priority===1),r=n.filter(a=>this.viewItems[a].priority===2);this.resize(this.viewItems.length-1,e-i,void 0,s,r)}this.distributeEmptySpace(),this.layoutViews()}saveProportions(){this.proportionalLayout&&this._contentSize>0&&(this.proportions=this.viewItems.map(e=>e.proportionalLayout&&e.visible?e.size/this._contentSize:void 0))}onSashStart({sash:e,start:t,alt:i}){for(const a of this.viewItems)a.enabled=!1;const n=this.sashItems.findIndex(a=>a.sash===e),s=No(U(this.el.ownerDocument.body,"keydown",a=>r(this.sashDragState.current,a.altKey)),U(this.el.ownerDocument.body,"keyup",()=>r(this.sashDragState.current,!1))),r=(a,l)=>{const c=this.viewItems.map(g=>g.size);let d=Number.NEGATIVE_INFINITY,h=Number.POSITIVE_INFINITY;if(this.inverseAltBehavior&&(l=!l),l)if(n===this.sashItems.length-1){const p=this.viewItems[n];d=(p.minimumSize-p.size)/2,h=(p.maximumSize-p.size)/2}else{const p=this.viewItems[n+1];d=(p.size-p.maximumSize)/2,h=(p.size-p.minimumSize)/2}let u,f;if(!l){const g=Bn(n,-1),p=Bn(n+1,this.viewItems.length),_=g.reduce((E,N)=>E+(this.viewItems[N].minimumSize-c[N]),0),b=g.reduce((E,N)=>E+(this.viewItems[N].viewMaximumSize-c[N]),0),C=p.length===0?Number.POSITIVE_INFINITY:p.reduce((E,N)=>E+(c[N]-this.viewItems[N].minimumSize),0),w=p.length===0?Number.NEGATIVE_INFINITY:p.reduce((E,N)=>E+(c[N]-this.viewItems[N].viewMaximumSize),0),v=Math.max(_,w),y=Math.min(C,b),x=this.findFirstSnapIndex(g),L=this.findFirstSnapIndex(p);if(typeof x=="number"){const E=this.viewItems[x],N=Math.floor(E.viewMinimumSize/2);u={index:x,limitDelta:E.visible?v-N:v+N,size:E.size}}if(typeof L=="number"){const E=this.viewItems[L],N=Math.floor(E.viewMinimumSize/2);f={index:L,limitDelta:E.visible?y+N:y-N,size:E.size}}}this.sashDragState={start:a,current:a,index:n,sizes:c,minDelta:d,maxDelta:h,alt:l,snapBefore:u,snapAfter:f,disposable:s}};r(t,i)}onSashChange({current:e}){const{index:t,start:i,sizes:n,alt:s,minDelta:r,maxDelta:a,snapBefore:l,snapAfter:c}=this.sashDragState;this.sashDragState.current=e;const d=e-i,h=this.resize(t,d,n,void 0,void 0,r,a,l,c);if(s){const u=t===this.sashItems.length-1,f=this.viewItems.map(w=>w.size),g=u?t:t+1,p=this.viewItems[g],_=p.size-p.maximumSize,b=p.size-p.minimumSize,C=u?t-1:t+1;this.resize(C,-h,f,void 0,void 0,_,b)}this.distributeEmptySpace(),this.layoutViews()}onSashEnd(e){this._onDidSashChange.fire(e),this.sashDragState.disposable.dispose(),this.saveProportions();for(const t of this.viewItems)t.enabled=!0}onViewChange(e,t){const i=this.viewItems.indexOf(e);i<0||i>=this.viewItems.length||(t=typeof t=="number"?t:e.size,t=bn(t,e.minimumSize,e.maximumSize),this.inverseAltBehavior&&i>0?(this.resize(i-1,Math.floor((e.size-t)/2)),this.distributeEmptySpace(),this.layoutViews()):(e.size=t,this.relayout([i],void 0)))}resizeView(e,t){if(!(e<0||e>=this.viewItems.length)){if(this.state!==Ua.Idle)throw new Error("Cant modify splitview");this.state=Ua.Busy;try{const i=Bn(this.viewItems.length).filter(a=>a!==e),n=[...i.filter(a=>this.viewItems[a].priority===1),e],s=i.filter(a=>this.viewItems[a].priority===2),r=this.viewItems[e];t=Math.round(t),t=bn(t,r.minimumSize,Math.min(r.maximumSize,this.size)),r.size=t,this.relayout(n,s)}finally{this.state=Ua.Idle}}}distributeViewSizes(){const e=[];let t=0;for(const a of this.viewItems)a.maximumSize-a.minimumSize>0&&(e.push(a),t+=a.size);const i=Math.floor(t/e.length);for(const a of e)a.size=bn(i,a.minimumSize,a.maximumSize);const n=Bn(this.viewItems.length),s=n.filter(a=>this.viewItems[a].priority===1),r=n.filter(a=>this.viewItems[a].priority===2);this.relayout(s,r)}getViewSize(e){return e<0||e>=this.viewItems.length?-1:this.viewItems[e].size}doAddView(e,t,i=this.viewItems.length,n){if(this.state!==Ua.Idle)throw new Error("Cant modify splitview");this.state=Ua.Busy;try{const s=ce(".split-view-view");i===this.viewItems.length?this.viewContainer.appendChild(s):this.viewContainer.insertBefore(s,this.viewContainer.children.item(i));const r=e.onDidChange(u=>this.onViewChange(d,u)),a=_e(()=>s.remove()),l=No(r,a);let c;typeof t=="number"?c=t:(t.type==="auto"&&(this.areViewsDistributed()?t={type:"distribute"}:t={type:"split",index:t.index}),t.type==="split"?c=this.getViewSize(t.index)/2:t.type==="invisible"?c={cachedVisibleSize:t.cachedVisibleSize}:c=e.minimumSize);const d=this.orientation===0?new $J(s,e,c,l):new KJ(s,e,c,l);if(this.viewItems.splice(i,0,d),this.viewItems.length>1){const u={orthogonalStartSash:this.orthogonalStartSash,orthogonalEndSash:this.orthogonalEndSash},f=this.orientation===0?new an(this.sashContainer,{getHorizontalSashTop:E=>this.getSashPosition(E),getHorizontalSashWidth:this.getSashOrthogonalSize},{...u,orientation:1}):new an(this.sashContainer,{getVerticalSashLeft:E=>this.getSashPosition(E),getVerticalSashHeight:this.getSashOrthogonalSize},{...u,orientation:0}),g=this.orientation===0?E=>({sash:f,start:E.startY,current:E.currentY,alt:E.altKey}):E=>({sash:f,start:E.startX,current:E.currentX,alt:E.altKey}),_=J.map(f.onDidStart,g)(this.onSashStart,this),C=J.map(f.onDidChange,g)(this.onSashChange,this),v=J.map(f.onDidEnd,()=>this.sashItems.findIndex(E=>E.sash===f))(this.onSashEnd,this),y=f.onDidReset(()=>{const E=this.sashItems.findIndex(j=>j.sash===f),N=Bn(E,-1),H=Bn(E+1,this.viewItems.length),F=this.findFirstSnapIndex(N),W=this.findFirstSnapIndex(H);typeof F=="number"&&!this.viewItems[F].visible||typeof W=="number"&&!this.viewItems[W].visible||this._onDidSashReset.fire(E)}),x=No(_,C,v,y,f),L={sash:f,disposable:x};this.sashItems.splice(i-1,0,L)}s.appendChild(e.element);let h;typeof t!="number"&&t.type==="split"&&(h=[t.index]),n||this.relayout([i],h),!n&&typeof t!="number"&&t.type==="distribute"&&this.distributeViewSizes()}finally{this.state=Ua.Idle}}relayout(e,t){const i=this.viewItems.reduce((n,s)=>n+s.size,0);this.resize(this.viewItems.length-1,this.size-i,void 0,e,t),this.distributeEmptySpace(),this.layoutViews(),this.saveProportions()}resize(e,t,i=this.viewItems.map(d=>d.size),n,s,r=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY,l,c){if(e<0||e>=this.viewItems.length)return 0;const d=Bn(e,-1),h=Bn(e+1,this.viewItems.length);if(s)for(const L of s)$y(d,L),$y(h,L);if(n)for(const L of n)bb(d,L),bb(h,L);const u=d.map(L=>this.viewItems[L]),f=d.map(L=>i[L]),g=h.map(L=>this.viewItems[L]),p=h.map(L=>i[L]),_=d.reduce((L,E)=>L+(this.viewItems[E].minimumSize-i[E]),0),b=d.reduce((L,E)=>L+(this.viewItems[E].maximumSize-i[E]),0),C=h.length===0?Number.POSITIVE_INFINITY:h.reduce((L,E)=>L+(i[E]-this.viewItems[E].minimumSize),0),w=h.length===0?Number.NEGATIVE_INFINITY:h.reduce((L,E)=>L+(i[E]-this.viewItems[E].maximumSize),0),v=Math.max(_,w,r),y=Math.min(C,b,a);let x=!1;if(l){const L=this.viewItems[l.index],E=t>=l.limitDelta;x=E!==L.visible,L.setVisible(E,l.size)}if(!x&&c){const L=this.viewItems[c.index],E=ta+l.size,0);let i=this.size-t;const n=Bn(this.viewItems.length-1,-1),s=n.filter(a=>this.viewItems[a].priority===1),r=n.filter(a=>this.viewItems[a].priority===2);for(const a of r)$y(n,a);for(const a of s)bb(n,a);typeof e=="number"&&bb(n,e);for(let a=0;i!==0&&at+i.size,0);let e=0;for(const t of this.viewItems)t.layout(e,this.layoutContext),e+=t.size;this.sashItems.forEach(t=>t.sash.layout()),this.updateSashEnablement(),this.updateScrollableElement()}updateScrollableElement(){this.orientation===0?this.scrollableElement.setScrollDimensions({height:this.size,scrollHeight:this._contentSize}):this.scrollableElement.setScrollDimensions({width:this.size,scrollWidth:this._contentSize})}updateSashEnablement(){let e=!1;const t=this.viewItems.map(l=>e=l.size-l.minimumSize>0||e);e=!1;const i=this.viewItems.map(l=>e=l.maximumSize-l.size>0||e),n=[...this.viewItems].reverse();e=!1;const s=n.map(l=>e=l.size-l.minimumSize>0||e).reverse();e=!1;const r=n.map(l=>e=l.maximumSize-l.size>0||e).reverse();let a=0;for(let l=0;l0||this.startSnappingEnabled)?c.state=1:C&&t[l]&&(a0)return;if(!i.visible&&i.snap)return t}}areViewsDistributed(){let e,t;for(const i of this.viewItems)if(e=e===void 0?i.size:Math.min(e,i.size),t=t===void 0?i.size:Math.max(t,i.size),t-e>2)return!1;return!0}dispose(){this.sashDragState?.disposable.dispose(),xt(this.viewItems),this.viewItems=[],this.sashItems.forEach(e=>e.disposable.dispose()),this.sashItems=[],super.dispose()}}const Vw=class Vw{constructor(e,t,i){this.columns=e,this.getColumnSize=i,this.templateId=Vw.TemplateId,this.renderedTemplates=new Set;const n=new Map(t.map(s=>[s.templateId,s]));this.renderers=[];for(const s of e){const r=n.get(s.templateId);if(!r)throw new Error(`Table cell renderer for template id ${s.templateId} not found.`);this.renderers.push(r)}}renderTemplate(e){const t=Z(e,ce(".monaco-table-tr")),i=[],n=[];for(let r=0;rthis.disposables.add(new qJ(d,h))),l={size:a.reduce((d,h)=>d+h.column.weight,0),views:a.map(d=>({size:d.column.weight,view:d}))};this.splitview=this.disposables.add(new E9(this.domNode,{orientation:1,scrollbarVisibility:2,getSashOrthogonalSize:()=>this.cachedHeight,descriptor:l})),this.splitview.el.style.height=`${i.headerRowHeight}px`,this.splitview.el.style.lineHeight=`${i.headerRowHeight}px`;const c=new lv(n,s,d=>this.splitview.getViewSize(d));this.list=this.disposables.add(new go(e,this.domNode,jJ(i),[c],r)),J.any(...a.map(d=>d.onDidLayout))(([d,h])=>c.layoutColumn(d,h),null,this.disposables),this.splitview.onDidSashReset(d=>{const h=n.reduce((f,g)=>f+g.weight,0),u=n[d].weight/h*this.cachedWidth;this.splitview.resizeView(d,u)},null,this.disposables),this.styleElement=Vs(this.domNode),this.style(_Y)}updateOptions(e){this.list.updateOptions(e)}splice(e,t,i=[]){this.list.splice(e,t,i)}getHTMLElement(){return this.domNode}style(e){const t=[];t.push(`.monaco-table.${this.domId} > .monaco-split-view2 .monaco-sash.vertical::before { + top: ${this.virtualDelegate.headerRowHeight+1}px; + height: calc(100% - ${this.virtualDelegate.headerRowHeight}px); + }`),this.styleElement.textContent=t.join(` +`),this.list.style(e)}getSelectedElements(){return this.list.getSelectedElements()}getSelection(){return this.list.getSelection()}getFocus(){return this.list.getFocus()}dispose(){this.disposables.dispose()}};zw.InstanceCount=0;let FD=zw;var ys;(function(o){o[o.Expanded=0]="Expanded",o[o.Collapsed=1]="Collapsed",o[o.PreserveOrExpanded=2]="PreserveOrExpanded",o[o.PreserveOrCollapsed=3]="PreserveOrCollapsed"})(ys||(ys={}));var jd;(function(o){o[o.Unknown=0]="Unknown",o[o.Twistie=1]="Twistie",o[o.Element=2]="Element",o[o.Filter=3]="Filter"})(jd||(jd={}));class Ds extends Error{constructor(e,t){super(`TreeError [${e}] ${t}`)}}class m2{constructor(e){this.fn=e,this._map=new WeakMap}map(e){let t=this._map.get(e);return t||(t=this.fn(e),this._map.set(e,t)),t}}function p2(o){return typeof o=="object"&&"visibility"in o&&"data"in o}function p_(o){switch(o){case!0:return 1;case!1:return 0;default:return o}}function jS(o){return typeof o.collapsible=="boolean"}class GJ{constructor(e,t,i,n={}){this.user=e,this.list=t,this.rootRef=[],this.eventBufferer=new W_,this._onDidChangeCollapseState=new A,this.onDidChangeCollapseState=this.eventBufferer.wrapEvent(this._onDidChangeCollapseState.event),this._onDidChangeRenderNodeCount=new A,this.onDidChangeRenderNodeCount=this.eventBufferer.wrapEvent(this._onDidChangeRenderNodeCount.event),this._onDidSplice=new A,this.onDidSplice=this._onDidSplice.event,this.refilterDelayer=new z_(CF),this.collapseByDefault=typeof n.collapseByDefault>"u"?!1:n.collapseByDefault,this.allowNonCollapsibleParents=n.allowNonCollapsibleParents??!1,this.filter=n.filter,this.autoExpandSingleChildren=typeof n.autoExpandSingleChildren>"u"?!1:n.autoExpandSingleChildren,this.root={parent:void 0,element:i,children:[],depth:0,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:!1,collapsed:!1,renderNodeCount:0,visibility:1,visible:!0,filterData:void 0}}splice(e,t,i=st.empty(),n={}){if(e.length===0)throw new Ds(this.user,"Invalid tree location");n.diffIdentityProvider?this.spliceSmart(n.diffIdentityProvider,e,t,i,n):this.spliceSimple(e,t,i,n)}spliceSmart(e,t,i,n=st.empty(),s,r=s.diffDepth??0){const{parentNode:a}=this.getParentNodeWithListIndex(t);if(!a.lastDiffIds)return this.spliceSimple(t,i,n,s);const l=[...n],c=t[t.length-1],d=new Yr({getElements:()=>a.lastDiffIds},{getElements:()=>[...a.children.slice(0,c),...l,...a.children.slice(c+i)].map(p=>e.getId(p.element).toString())}).ComputeDiff(!1);if(d.quitEarly)return a.lastDiffIds=void 0,this.spliceSimple(t,i,l,s);const h=t.slice(0,-1),u=(p,_,b)=>{if(r>0)for(let C=0;Cb.originalStart-_.originalStart))u(f,g,f-(p.originalStart+p.originalLength)),f=p.originalStart,g=p.modifiedStart-c,this.spliceSimple([...h,f],p.originalLength,st.slice(l,g,g+p.modifiedLength),s);u(f,g,f)}spliceSimple(e,t,i=st.empty(),{onDidCreateNode:n,onDidDeleteNode:s,diffIdentityProvider:r}){const{parentNode:a,listIndex:l,revealed:c,visible:d}=this.getParentNodeWithListIndex(e),h=[],u=st.map(i,y=>this.createTreeNode(y,a,a.visible?1:0,c,h,n)),f=e[e.length-1];let g=0;for(let y=f;y>=0&&yr.getId(y.element).toString())):a.lastDiffIds=a.children.map(y=>r.getId(y.element).toString()):a.lastDiffIds=void 0;let w=0;for(const y of C)y.visible&&w++;if(w!==0)for(let y=f+p.length;yx+(L.visible?L.renderNodeCount:0),0);this._updateAncestorsRenderNodeCount(a,b-y),this.list.splice(l,y,h)}if(C.length>0&&s){const y=x=>{s(x),x.children.forEach(y)};C.forEach(y)}this._onDidSplice.fire({insertedNodes:p,deletedNodes:C});let v=a;for(;v;){if(v.visibility===2){this.refilterDelayer.trigger(()=>this.refilter());break}v=v.parent}}rerender(e){if(e.length===0)throw new Ds(this.user,"Invalid tree location");const{node:t,listIndex:i,revealed:n}=this.getTreeNodeWithListIndex(e);t.visible&&n&&this.list.splice(i,1,[t])}has(e){return this.hasTreeNode(e)}getListIndex(e){const{listIndex:t,visible:i,revealed:n}=this.getTreeNodeWithListIndex(e);return i&&n?t:-1}getListRenderCount(e){return this.getTreeNode(e).renderNodeCount}isCollapsible(e){return this.getTreeNode(e).collapsible}setCollapsible(e,t){const i=this.getTreeNode(e);typeof t>"u"&&(t=!i.collapsible);const n={collapsible:t};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(e,n))}isCollapsed(e){return this.getTreeNode(e).collapsed}setCollapsed(e,t,i){const n=this.getTreeNode(e);typeof t>"u"&&(t=!n.collapsed);const s={collapsed:t,recursive:i||!1};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(e,s))}_setCollapseState(e,t){const{node:i,listIndex:n,revealed:s}=this.getTreeNodeWithListIndex(e),r=this._setListNodeCollapseState(i,n,s,t);if(i!==this.root&&this.autoExpandSingleChildren&&r&&!jS(t)&&i.collapsible&&!i.collapsed&&!t.recursive){let a=-1;for(let l=0;l-1){a=-1;break}else a=l;a>-1&&this._setCollapseState([...e,a],t)}return r}_setListNodeCollapseState(e,t,i,n){const s=this._setNodeCollapseState(e,n,!1);if(!i||!e.visible||!s)return s;const r=e.renderNodeCount,a=this.updateNodeAfterCollapseChange(e),l=r-(t===-1?0:1);return this.list.splice(t+1,l,a.slice(1)),s}_setNodeCollapseState(e,t,i){let n;if(e===this.root?n=!1:(jS(t)?(n=e.collapsible!==t.collapsible,e.collapsible=t.collapsible):e.collapsible?(n=e.collapsed!==t.collapsed,e.collapsed=t.collapsed):n=!1,n&&this._onDidChangeCollapseState.fire({node:e,deep:i})),!jS(t)&&t.recursive)for(const s of e.children)n=this._setNodeCollapseState(s,t,!0)||n;return n}expandTo(e){this.eventBufferer.bufferEvents(()=>{let t=this.getTreeNode(e);for(;t.parent;)t=t.parent,e=e.slice(0,e.length-1),t.collapsed&&this._setCollapseState(e,{collapsed:!1,recursive:!1})})}refilter(){const e=this.root.renderNodeCount,t=this.updateNodeAfterFilterChange(this.root);this.list.splice(0,e,t),this.refilterDelayer.cancel()}createTreeNode(e,t,i,n,s,r){const a={parent:t,element:e.element,children:[],depth:t.depth+1,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:typeof e.collapsible=="boolean"?e.collapsible:typeof e.collapsed<"u",collapsed:typeof e.collapsed>"u"?this.collapseByDefault:e.collapsed,renderNodeCount:1,visibility:1,visible:!0,filterData:void 0},l=this._filterNode(a,i);a.visibility=l,n&&s.push(a);const c=e.children||st.empty(),d=n&&l!==0&&!a.collapsed;let h=0,u=1;for(const f of c){const g=this.createTreeNode(f,a,l,d,s,r);a.children.push(g),u+=g.renderNodeCount,g.visible&&(g.visibleChildIndex=h++)}return this.allowNonCollapsibleParents||(a.collapsible=a.collapsible||a.children.length>0),a.visibleChildrenCount=h,a.visible=l===2?h>0:l===1,a.visible?a.collapsed||(a.renderNodeCount=u):(a.renderNodeCount=0,n&&s.pop()),r?.(a),a}updateNodeAfterCollapseChange(e){const t=e.renderNodeCount,i=[];return this._updateNodeAfterCollapseChange(e,i),this._updateAncestorsRenderNodeCount(e.parent,i.length-t),i}_updateNodeAfterCollapseChange(e,t){if(e.visible===!1)return 0;if(t.push(e),e.renderNodeCount=1,!e.collapsed)for(const i of e.children)e.renderNodeCount+=this._updateNodeAfterCollapseChange(i,t);return this._onDidChangeRenderNodeCount.fire(e),e.renderNodeCount}updateNodeAfterFilterChange(e){const t=e.renderNodeCount,i=[];return this._updateNodeAfterFilterChange(e,e.visible?1:0,i),this._updateAncestorsRenderNodeCount(e.parent,i.length-t),i}_updateNodeAfterFilterChange(e,t,i,n=!0){let s;if(e!==this.root){if(s=this._filterNode(e,t),s===0)return e.visible=!1,e.renderNodeCount=0,!1;n&&i.push(e)}const r=i.length;e.renderNodeCount=e===this.root?0:1;let a=!1;if(!e.collapsed||s!==0){let l=0;for(const c of e.children)a=this._updateNodeAfterFilterChange(c,s,i,n&&!e.collapsed)||a,c.visible&&(c.visibleChildIndex=l++);e.visibleChildrenCount=l}else e.visibleChildrenCount=0;return e!==this.root&&(e.visible=s===2?a:s===1,e.visibility=s),e.visible?e.collapsed||(e.renderNodeCount+=i.length-r):(e.renderNodeCount=0,n&&i.pop()),this._onDidChangeRenderNodeCount.fire(e),e.visible}_updateAncestorsRenderNodeCount(e,t){if(t!==0)for(;e;)e.renderNodeCount+=t,this._onDidChangeRenderNodeCount.fire(e),e=e.parent}_filterNode(e,t){const i=this.filter?this.filter.filter(e.element,t):1;return typeof i=="boolean"?(e.filterData=void 0,i?1:0):p2(i)?(e.filterData=i.data,p_(i.visibility)):(e.filterData=void 0,p_(i))}hasTreeNode(e,t=this.root){if(!e||e.length===0)return!0;const[i,...n]=e;return i<0||i>t.children.length?!1:this.hasTreeNode(n,t.children[i])}getTreeNode(e,t=this.root){if(!e||e.length===0)return t;const[i,...n]=e;if(i<0||i>t.children.length)throw new Ds(this.user,"Invalid tree location");return this.getTreeNode(n,t.children[i])}getTreeNodeWithListIndex(e){if(e.length===0)return{node:this.root,listIndex:-1,revealed:!0,visible:!1};const{parentNode:t,listIndex:i,revealed:n,visible:s}=this.getParentNodeWithListIndex(e),r=e[e.length-1];if(r<0||r>t.children.length)throw new Ds(this.user,"Invalid tree location");const a=t.children[r];return{node:a,listIndex:i,revealed:n,visible:s&&a.visible}}getParentNodeWithListIndex(e,t=this.root,i=0,n=!0,s=!0){const[r,...a]=e;if(r<0||r>t.children.length)throw new Ds(this.user,"Invalid tree location");for(let l=0;lt.element)),this.data=e}}function qS(o){return o instanceof J_?new ZJ(o):o}class YJ{constructor(e,t){this.modelProvider=e,this.dnd=t,this.autoExpandDisposable=z.None,this.disposables=new X}getDragURI(e){return this.dnd.getDragURI(e.element)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map(i=>i.element),t)}onDragStart(e,t){this.dnd.onDragStart?.(qS(e),t)}onDragOver(e,t,i,n,s,r=!0){const a=this.dnd.onDragOver(qS(e),t&&t.element,i,n,s),l=this.autoExpandNode!==t;if(l&&(this.autoExpandDisposable.dispose(),this.autoExpandNode=t),typeof t>"u")return a;if(l&&typeof a!="boolean"&&a.autoExpand&&(this.autoExpandDisposable=rg(()=>{const f=this.modelProvider(),g=f.getNodeLocation(t);f.isCollapsed(g)&&f.setCollapsed(g,!1),this.autoExpandNode=void 0},500,this.disposables)),typeof a=="boolean"||!a.accept||typeof a.bubble>"u"||a.feedback){if(!r){const f=typeof a=="boolean"?a:a.accept,g=typeof a=="boolean"?void 0:a.effect;return{accept:f,effect:g,feedback:[i]}}return a}if(a.bubble===1){const f=this.modelProvider(),g=f.getNodeLocation(t),p=f.getParentNodeLocation(g),_=f.getNode(p),b=p&&f.getListIndex(p);return this.onDragOver(e,_,b,n,s,!1)}const c=this.modelProvider(),d=c.getNodeLocation(t),h=c.getListIndex(d),u=c.getListRenderCount(d);return{...a,feedback:Bn(h,h+u)}}drop(e,t,i,n,s){this.autoExpandDisposable.dispose(),this.autoExpandNode=void 0,this.dnd.drop(qS(e),t&&t.element,i,n,s)}onDragEnd(e){this.dnd.onDragEnd?.(e)}dispose(){this.disposables.dispose(),this.dnd.dispose()}}function QJ(o,e){return e&&{...e,identityProvider:e.identityProvider&&{getId(t){return e.identityProvider.getId(t.element)}},dnd:e.dnd&&new YJ(o,e.dnd),multipleSelectionController:e.multipleSelectionController&&{isSelectionSingleChangeEvent(t){return e.multipleSelectionController.isSelectionSingleChangeEvent({...t,element:t.element})},isSelectionRangeChangeEvent(t){return e.multipleSelectionController.isSelectionRangeChangeEvent({...t,element:t.element})}},accessibilityProvider:e.accessibilityProvider&&{...e.accessibilityProvider,getSetSize(t){const i=o(),n=i.getNodeLocation(t),s=i.getParentNodeLocation(n);return i.getNode(s).visibleChildrenCount},getPosInSet(t){return t.visibleChildIndex+1},isChecked:e.accessibilityProvider&&e.accessibilityProvider.isChecked?t=>e.accessibilityProvider.isChecked(t.element):void 0,getRole:e.accessibilityProvider&&e.accessibilityProvider.getRole?t=>e.accessibilityProvider.getRole(t.element):()=>"treeitem",getAriaLabel(t){return e.accessibilityProvider.getAriaLabel(t.element)},getWidgetAriaLabel(){return e.accessibilityProvider.getWidgetAriaLabel()},getWidgetRole:e.accessibilityProvider&&e.accessibilityProvider.getWidgetRole?()=>e.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:e.accessibilityProvider&&e.accessibilityProvider.getAriaLevel?t=>e.accessibilityProvider.getAriaLevel(t.element):t=>t.depth,getActiveDescendantId:e.accessibilityProvider.getActiveDescendantId&&(t=>e.accessibilityProvider.getActiveDescendantId(t.element))},keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&{...e.keyboardNavigationLabelProvider,getKeyboardNavigationLabel(t){return e.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(t.element)}}}}class _2{constructor(e){this.delegate=e}getHeight(e){return this.delegate.getHeight(e.element)}getTemplateId(e){return this.delegate.getTemplateId(e.element)}hasDynamicHeight(e){return!!this.delegate.hasDynamicHeight&&this.delegate.hasDynamicHeight(e.element)}setDynamicHeight(e,t){this.delegate.setDynamicHeight?.(e.element,t)}}var Sg;(function(o){o.None="none",o.OnHover="onHover",o.Always="always"})(Sg||(Sg={}));class XJ{get elements(){return this._elements}constructor(e,t=[]){this._elements=t,this.disposables=new X,this.onDidChange=J.forEach(e,i=>this._elements=i,this.disposables)}dispose(){this.disposables.dispose()}}const Tp=class Tp{constructor(e,t,i,n,s,r={}){this.renderer=e,this.modelProvider=t,this.activeNodes=n,this.renderedIndentGuides=s,this.renderedElements=new Map,this.renderedNodes=new Map,this.indent=Tp.DefaultIndent,this.hideTwistiesOfChildlessElements=!1,this.shouldRenderIndentGuides=!1,this.activeIndentNodes=new Set,this.indentGuidesDisposable=z.None,this.disposables=new X,this.templateId=e.templateId,this.updateOptions(r),J.map(i,a=>a.node)(this.onDidChangeNodeTwistieState,this,this.disposables),e.onDidChangeTwistieState?.(this.onDidChangeTwistieState,this,this.disposables)}updateOptions(e={}){if(typeof e.indent<"u"){const t=bn(e.indent,0,40);if(t!==this.indent){this.indent=t;for(const[i,n]of this.renderedNodes)this.renderTreeElement(i,n)}}if(typeof e.renderIndentGuides<"u"){const t=e.renderIndentGuides!==Sg.None;if(t!==this.shouldRenderIndentGuides){this.shouldRenderIndentGuides=t;for(const[i,n]of this.renderedNodes)this._renderIndentGuides(i,n);if(this.indentGuidesDisposable.dispose(),t){const i=new X;this.activeNodes.onDidChange(this._onDidChangeActiveNodes,this,i),this.indentGuidesDisposable=i,this._onDidChangeActiveNodes(this.activeNodes.elements)}}}typeof e.hideTwistiesOfChildlessElements<"u"&&(this.hideTwistiesOfChildlessElements=e.hideTwistiesOfChildlessElements)}renderTemplate(e){const t=Z(e,ce(".monaco-tl-row")),i=Z(t,ce(".monaco-tl-indent")),n=Z(t,ce(".monaco-tl-twistie")),s=Z(t,ce(".monaco-tl-contents")),r=this.renderer.renderTemplate(s);return{container:e,indent:i,twistie:n,indentGuidesDisposable:z.None,templateData:r}}renderElement(e,t,i,n){this.renderedNodes.set(e,i),this.renderedElements.set(e.element,e),this.renderTreeElement(e,i),this.renderer.renderElement(e,t,i.templateData,n)}disposeElement(e,t,i,n){i.indentGuidesDisposable.dispose(),this.renderer.disposeElement?.(e,t,i.templateData,n),typeof n=="number"&&(this.renderedNodes.delete(e),this.renderedElements.delete(e.element))}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}onDidChangeTwistieState(e){const t=this.renderedElements.get(e);t&&this.onDidChangeNodeTwistieState(t)}onDidChangeNodeTwistieState(e){const t=this.renderedNodes.get(e);t&&(this._onDidChangeActiveNodes(this.activeNodes.elements),this.renderTreeElement(e,t))}renderTreeElement(e,t){const i=Tp.DefaultIndent+(e.depth-1)*this.indent;t.twistie.style.paddingLeft=`${i}px`,t.indent.style.width=`${i+this.indent-16}px`,e.collapsible?t.container.setAttribute("aria-expanded",String(!e.collapsed)):t.container.removeAttribute("aria-expanded"),t.twistie.classList.remove(...Ee.asClassNameArray(ie.treeItemExpanded));let n=!1;this.renderer.renderTwistie&&(n=this.renderer.renderTwistie(e.element,t.twistie)),e.collapsible&&(!this.hideTwistiesOfChildlessElements||e.visibleChildrenCount>0)?(n||t.twistie.classList.add(...Ee.asClassNameArray(ie.treeItemExpanded)),t.twistie.classList.add("collapsible"),t.twistie.classList.toggle("collapsed",e.collapsed)):t.twistie.classList.remove("collapsible","collapsed"),this._renderIndentGuides(e,t)}_renderIndentGuides(e,t){if(xn(t.indent),t.indentGuidesDisposable.dispose(),!this.shouldRenderIndentGuides)return;const i=new X,n=this.modelProvider();for(;;){const s=n.getNodeLocation(e),r=n.getParentNodeLocation(s);if(!r)break;const a=n.getNode(r),l=ce(".indent-guide",{style:`width: ${this.indent}px`});this.activeIndentNodes.has(a)&&l.classList.add("active"),t.indent.childElementCount===0?t.indent.appendChild(l):t.indent.insertBefore(l,t.indent.firstElementChild),this.renderedIndentGuides.add(a,l),i.add(_e(()=>this.renderedIndentGuides.delete(a,l))),e=a}t.indentGuidesDisposable=i}_onDidChangeActiveNodes(e){if(!this.shouldRenderIndentGuides)return;const t=new Set,i=this.modelProvider();e.forEach(n=>{const s=i.getNodeLocation(n);try{const r=i.getParentNodeLocation(s);n.collapsible&&n.children.length>0&&!n.collapsed?t.add(n):r&&t.add(i.getNode(r))}catch{}}),this.activeIndentNodes.forEach(n=>{t.has(n)||this.renderedIndentGuides.forEach(n,s=>s.classList.remove("active"))}),t.forEach(n=>{this.activeIndentNodes.has(n)||this.renderedIndentGuides.forEach(n,s=>s.classList.add("active"))}),this.activeIndentNodes=t}dispose(){this.renderedNodes.clear(),this.renderedElements.clear(),this.indentGuidesDisposable.dispose(),xt(this.disposables)}};Tp.DefaultIndent=8;let BD=Tp;class JJ{get totalCount(){return this._totalCount}get matchCount(){return this._matchCount}constructor(e,t,i){this.tree=e,this.keyboardNavigationLabelProvider=t,this._filter=i,this._totalCount=0,this._matchCount=0,this._pattern="",this._lowercasePattern="",this.disposables=new X,e.onWillRefilter(this.reset,this,this.disposables)}filter(e,t){let i=1;if(this._filter){const r=this._filter.filter(e,t);if(typeof r=="boolean"?i=r?1:0:p2(r)?i=p_(r.visibility):i=r,i===0)return!1}if(this._totalCount++,!this._pattern)return this._matchCount++,{data:oa.Default,visibility:i};const n=this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e),s=Array.isArray(n)?n:[n];for(const r of s){const a=r&&r.toString();if(typeof a>"u")return{data:oa.Default,visibility:i};let l;if(this.tree.findMatchType===Uh.Contiguous){const c=a.toLowerCase().indexOf(this._lowercasePattern);if(c>-1){l=[Number.MAX_SAFE_INTEGER,0];for(let d=this._lowercasePattern.length;d>0;d--)l.push(c+d-1)}}else l=_g(this._pattern,this._lowercasePattern,0,a,a.toLowerCase(),0,{firstMatchCanBeWeak:!0,boostFullMatch:!0});if(l)return this._matchCount++,s.length===1?{data:l,visibility:i}:{data:{label:a,score:l},visibility:i}}return this.tree.findMode===dl.Filter?typeof this.tree.options.defaultFindVisibility=="number"?this.tree.options.defaultFindVisibility:this.tree.options.defaultFindVisibility?this.tree.options.defaultFindVisibility(e):2:{data:oa.Default,visibility:i}}reset(){this._totalCount=0,this._matchCount=0}dispose(){xt(this.disposables)}}var dl;(function(o){o[o.Highlight=0]="Highlight",o[o.Filter=1]="Filter"})(dl||(dl={}));var Uh;(function(o){o[o.Fuzzy=0]="Fuzzy",o[o.Contiguous=1]="Contiguous"})(Uh||(Uh={}));class eee{get pattern(){return this._pattern}get mode(){return this._mode}set mode(e){e!==this._mode&&(this._mode=e,this.widget&&(this.widget.mode=this._mode),this.tree.refilter(),this.render(),this._onDidChangeMode.fire(e))}get matchType(){return this._matchType}set matchType(e){e!==this._matchType&&(this._matchType=e,this.widget&&(this.widget.matchType=this._matchType),this.tree.refilter(),this.render(),this._onDidChangeMatchType.fire(e))}constructor(e,t,i,n,s,r={}){this.tree=e,this.view=i,this.filter=n,this.contextViewProvider=s,this.options=r,this._pattern="",this.width=0,this._onDidChangeMode=new A,this.onDidChangeMode=this._onDidChangeMode.event,this._onDidChangeMatchType=new A,this.onDidChangeMatchType=this._onDidChangeMatchType.event,this._onDidChangePattern=new A,this._onDidChangeOpenState=new A,this.onDidChangeOpenState=this._onDidChangeOpenState.event,this.enabledDisposables=new X,this.disposables=new X,this._mode=e.options.defaultFindMode??dl.Highlight,this._matchType=e.options.defaultFindMatchType??Uh.Fuzzy,t.onDidSplice(this.onDidSpliceModel,this,this.disposables)}updateOptions(e={}){e.defaultFindMode!==void 0&&(this.mode=e.defaultFindMode),e.defaultFindMatchType!==void 0&&(this.matchType=e.defaultFindMatchType)}onDidSpliceModel(){!this.widget||this.pattern.length===0||(this.tree.refilter(),this.render())}render(){const e=this.filter.totalCount>0&&this.filter.matchCount===0;this.pattern&&e?(El(m("replFindNoResults","No results")),this.tree.options.showNotFoundMessage??!0?this.widget?.showMessage({type:2,content:m("not found","No elements found.")}):this.widget?.showMessage({type:2})):(this.widget?.clearMessage(),this.pattern&&El(m("replFindResults","{0} results",this.filter.matchCount)))}shouldAllowFocus(e){return!this.widget||!this.pattern||this.filter.totalCount>0&&this.filter.matchCount<=1?!0:!oa.isDefault(e.filterData)}layout(e){this.width=e,this.widget?.layout(e)}dispose(){this._history=void 0,this._onDidChangePattern.dispose(),this.enabledDisposables.dispose(),this.disposables.dispose()}}function tee(o,e){return o.position===e.position&&N9(o,e)}function N9(o,e){return o.node.element===e.node.element&&o.startIndex===e.startIndex&&o.height===e.height&&o.endIndex===e.endIndex}class iee{constructor(e=[]){this.stickyNodes=e}get count(){return this.stickyNodes.length}equal(e){return li(this.stickyNodes,e.stickyNodes,tee)}lastNodePartiallyVisible(){if(this.count===0)return!1;const e=this.stickyNodes[this.count-1];if(this.count===1)return e.position!==0;const t=this.stickyNodes[this.count-2];return t.position+t.height!==e.position}animationStateChanged(e){if(!li(this.stickyNodes,e.stickyNodes,N9)||this.count===0)return!1;const t=this.stickyNodes[this.count-1],i=e.stickyNodes[e.count-1];return t.position!==i.position}}class nee{constrainStickyScrollNodes(e,t,i){for(let n=0;ni||n>=t)return e.slice(0,n)}return e}}class GP extends z{constructor(e,t,i,n,s,r={}){super(),this.tree=e,this.model=t,this.view=i,this.treeDelegate=s,this.maxWidgetViewRatio=.4;const a=this.validateStickySettings(r);this.stickyScrollMaxItemCount=a.stickyScrollMaxItemCount,this.stickyScrollDelegate=r.stickyScrollDelegate??new nee,this._widget=this._register(new see(i.getScrollableElement(),i,e,n,s,r.accessibilityProvider)),this.onDidChangeHasFocus=this._widget.onDidChangeHasFocus,this.onContextMenu=this._widget.onContextMenu,this._register(i.onDidScroll(()=>this.update())),this._register(i.onDidChangeContentHeight(()=>this.update())),this._register(e.onDidChangeCollapseState(()=>this.update())),this.update()}get height(){return this._widget.height}getNodeAtHeight(e){let t;if(e===0?t=this.view.firstVisibleIndex:t=this.view.indexAt(e+this.view.scrollTop),!(t<0||t>=this.view.length))return this.view.element(t)}update(){const e=this.getNodeAtHeight(0);if(!e||this.tree.scrollTop===0){this._widget.setState(void 0);return}const t=this.findStickyState(e);this._widget.setState(t)}findStickyState(e){const t=[];let i=e,n=0,s=this.getNextStickyNode(i,void 0,n);for(;s&&(t.push(s),n+=s.height,!(t.length<=this.stickyScrollMaxItemCount&&(i=this.getNextVisibleNode(s),!i)));)s=this.getNextStickyNode(i,s.node,n);const r=this.constrainStickyNodes(t);return r.length?new iee(r):void 0}getNextVisibleNode(e){return this.getNodeAtHeight(e.position+e.height)}getNextStickyNode(e,t,i){const n=this.getAncestorUnderPrevious(e,t);if(n&&!(n===e&&(!this.nodeIsUncollapsedParent(e)||this.nodeTopAlignsWithStickyNodesBottom(e,i))))return this.createStickyScrollNode(n,i)}nodeTopAlignsWithStickyNodesBottom(e,t){const i=this.getNodeIndex(e),n=this.view.getElementTop(i),s=t;return this.view.scrollTop===n-s}createStickyScrollNode(e,t){const i=this.treeDelegate.getHeight(e),{startIndex:n,endIndex:s}=this.getNodeRange(e),r=this.calculateStickyNodePosition(s,t,i);return{node:e,position:r,height:i,startIndex:n,endIndex:s}}getAncestorUnderPrevious(e,t=void 0){let i=e,n=this.getParentNode(i);for(;n;){if(n===t)return i;i=n,n=this.getParentNode(i)}if(t===void 0)return i}calculateStickyNodePosition(e,t,i){let n=this.view.getRelativeTop(e);if(n===null&&this.view.firstVisibleIndex===e&&e+1l&&t<=l?l-i:t}constrainStickyNodes(e){if(e.length===0)return[];const t=this.view.renderHeight*this.maxWidgetViewRatio,i=e[e.length-1];if(e.length<=this.stickyScrollMaxItemCount&&i.position+i.height<=t)return e;const n=this.stickyScrollDelegate.constrainStickyScrollNodes(e,this.stickyScrollMaxItemCount,t);if(!n.length)return[];const s=n[n.length-1];if(n.length>this.stickyScrollMaxItemCount||s.position+s.height>t)throw new Error("stickyScrollDelegate violates constraints");return n}getParentNode(e){const t=this.model.getNodeLocation(e),i=this.model.getParentNodeLocation(t);return i?this.model.getNode(i):void 0}nodeIsUncollapsedParent(e){const t=this.model.getNodeLocation(e);return this.model.getListRenderCount(t)>1}getNodeIndex(e){const t=this.model.getNodeLocation(e);return this.model.getListIndex(t)}getNodeRange(e){const t=this.model.getNodeLocation(e),i=this.model.getListIndex(t);if(i<0)throw new Error("Node not found in tree");const n=this.model.getListRenderCount(t),s=i+n-1;return{startIndex:i,endIndex:s}}nodePositionTopBelowWidget(e){const t=[];let i=this.getParentNode(e);for(;i;)t.push(i),i=this.getParentNode(i);let n=0;for(let s=0;s0,i=!!e&&e.count>0;if(!t&&!i||t&&i&&this._previousState.equal(e))return;if(t!==i&&this.setVisible(i),!i){this._previousState=void 0,this._previousElements=[],this._previousStateDisposables.clear();return}const n=e.stickyNodes[e.count-1];if(this._previousState&&e.animationStateChanged(this._previousState))this._previousElements[this._previousState.count-1].style.top=`${n.position}px`;else{this._previousStateDisposables.clear();const s=Array(e.count);for(let r=e.count-1;r>=0;r--){const a=e.stickyNodes[r],{element:l,disposable:c}=this.createElement(a,r,e.count);s[r]=l,this._rootDomNode.appendChild(l),this._previousStateDisposables.add(c)}this.stickyScrollFocus.updateElements(s,e),this._previousElements=s}this._previousState=e,this._rootDomNode.style.height=`${n.position+n.height}px`}createElement(e,t,i){const n=e.startIndex,s=document.createElement("div");s.style.top=`${e.position}px`,this.tree.options.setRowHeight!==!1&&(s.style.height=`${e.height}px`),this.tree.options.setRowLineHeight!==!1&&(s.style.lineHeight=`${e.height}px`),s.classList.add("monaco-tree-sticky-row"),s.classList.add("monaco-list-row"),s.setAttribute("data-index",`${n}`),s.setAttribute("data-parity",n%2===0?"even":"odd"),s.setAttribute("id",this.view.getElementID(n));const r=this.setAccessibilityAttributes(s,e.node.element,t,i),a=this.treeDelegate.getTemplateId(e.node),l=this.treeRenderers.find(u=>u.templateId===a);if(!l)throw new Error(`No renderer found for template id ${a}`);let c=e.node;c===this.tree.getNode(this.tree.getNodeLocation(e.node))&&(c=new Proxy(e.node,{}));const d=l.renderTemplate(s);l.renderElement(c,e.startIndex,d,e.height);const h=_e(()=>{r.dispose(),l.disposeElement(c,e.startIndex,d,e.height),l.disposeTemplate(d),s.remove()});return{element:s,disposable:h}}setAccessibilityAttributes(e,t,i,n){if(!this.accessibilityProvider)return z.None;this.accessibilityProvider.getSetSize&&e.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(t,i,n))),this.accessibilityProvider.getPosInSet&&e.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(t,i))),this.accessibilityProvider.getRole&&e.setAttribute("role",this.accessibilityProvider.getRole(t)??"treeitem");const s=this.accessibilityProvider.getAriaLabel(t),r=s&&typeof s!="string"?s:wg(s),a=We(c=>{const d=c.readObservable(r);d?e.setAttribute("aria-label",d):e.removeAttribute("aria-label")});typeof s=="string"||s&&e.setAttribute("aria-label",s.get());const l=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(t);return typeof l=="number"&&e.setAttribute("aria-level",`${l}`),e.setAttribute("aria-selected",String(!1)),a}setVisible(e){this._rootDomNode.classList.toggle("empty",!e),e||this.stickyScrollFocus.updateElements([],void 0)}domFocus(){this.stickyScrollFocus.domFocus()}focusedLast(){return this.stickyScrollFocus.focusedLast()}dispose(){this.stickyScrollFocus.dispose(),this._previousStateDisposables.dispose(),this._rootDomNode.remove()}}class oee extends z{get domHasFocus(){return this._domHasFocus}set domHasFocus(e){e!==this._domHasFocus&&(this._onDidChangeHasFocus.fire(e),this._domHasFocus=e)}constructor(e,t){super(),this.container=e,this.view=t,this.focusedIndex=-1,this.elements=[],this._onDidChangeHasFocus=new A,this.onDidChangeHasFocus=this._onDidChangeHasFocus.event,this._onContextMenu=new A,this.onContextMenu=this._onContextMenu.event,this._domHasFocus=!1,this._register(U(this.container,"focus",()=>this.onFocus())),this._register(U(this.container,"blur",()=>this.onBlur())),this._register(this.view.onDidFocus(()=>this.toggleStickyScrollFocused(!1))),this._register(this.view.onKeyDown(i=>this.onKeyDown(i))),this._register(this.view.onMouseDown(i=>this.onMouseDown(i))),this._register(this.view.onContextMenu(i=>this.handleContextMenu(i)))}handleContextMenu(e){const t=e.browserEvent.target;if(!d_(t)&&!Jm(t)){this.focusedLast()&&this.view.domFocus();return}if(!Qa(e.browserEvent)){if(!this.state)throw new Error("Context menu should not be triggered when state is undefined");const r=this.state.stickyNodes.findIndex(a=>a.node.element===e.element?.element);if(r===-1)throw new Error("Context menu should not be triggered when element is not in sticky scroll widget");this.container.focus(),this.setFocus(r);return}if(!this.state||this.focusedIndex<0)throw new Error("Context menu key should not be triggered when focus is not in sticky scroll widget");const n=this.state.stickyNodes[this.focusedIndex].node.element,s=this.elements[this.focusedIndex];this._onContextMenu.fire({element:n,anchor:s,browserEvent:e.browserEvent,isStickyScroll:!0})}onKeyDown(e){if(this.domHasFocus&&this.state){if(e.key==="ArrowUp")this.setFocusedElement(Math.max(0,this.focusedIndex-1)),e.preventDefault(),e.stopPropagation();else if(e.key==="ArrowDown"||e.key==="ArrowRight"){if(this.focusedIndex>=this.state.count-1){const t=this.state.stickyNodes[this.state.count-1].startIndex+1;this.view.domFocus(),this.view.setFocus([t]),this.scrollNodeUnderWidget(t,this.state)}else this.setFocusedElement(this.focusedIndex+1);e.preventDefault(),e.stopPropagation()}}}onMouseDown(e){const t=e.browserEvent.target;!d_(t)&&!Jm(t)||(e.browserEvent.preventDefault(),e.browserEvent.stopPropagation())}updateElements(e,t){if(t&&t.count===0)throw new Error("Sticky scroll state must be undefined when there are no sticky nodes");if(t&&t.count!==e.length)throw new Error("Sticky scroll focus received illigel state");const i=this.focusedIndex;if(this.removeFocus(),this.elements=e,this.state=t,t){const n=bn(i,0,t.count-1);this.setFocus(n)}else this.domHasFocus&&this.view.domFocus();this.container.tabIndex=t?0:-1}setFocusedElement(e){const t=this.state;if(!t)throw new Error("Cannot set focus when state is undefined");if(this.setFocus(e),!(e1?t.stickyNodes[t.count-2]:void 0,s=this.view.getElementTop(e),r=n?n.position+n.height+i.height:i.height;this.view.scrollTop=s-r}domFocus(){if(!this.state)throw new Error("Cannot focus when state is undefined");this.container.focus()}focusedLast(){return this.state?this.view.getHTMLElement().classList.contains("sticky-scroll-focused"):!1}removeFocus(){this.focusedIndex!==-1&&(this.toggleElementFocus(this.elements[this.focusedIndex],!1),this.focusedIndex=-1)}setFocus(e){if(0>e)throw new Error("addFocus() can not remove focus");if(!this.state&&e>=0)throw new Error("Cannot set focus index when state is undefined");if(this.state&&e>=this.state.count)throw new Error("Cannot set focus index to an index that does not exist");const t=this.focusedIndex;t>=0&&this.toggleElementFocus(this.elements[t],!1),e>=0&&this.toggleElementFocus(this.elements[e],!0),this.focusedIndex=e}toggleElementFocus(e,t){this.toggleElementActiveFocus(e,t&&this.domHasFocus),this.toggleElementPassiveFocus(e,t)}toggleCurrentElementActiveFocus(e){this.focusedIndex!==-1&&this.toggleElementActiveFocus(this.elements[this.focusedIndex],e)}toggleElementActiveFocus(e,t){e.classList.toggle("focused",t)}toggleElementPassiveFocus(e,t){e.classList.toggle("passive-focused",t)}toggleStickyScrollFocused(e){this.view.getHTMLElement().classList.toggle("sticky-scroll-focused",e)}onFocus(){if(!this.state||this.elements.length===0)throw new Error("Cannot focus when state is undefined or elements are empty");this.domHasFocus=!0,this.toggleStickyScrollFocused(!0),this.toggleCurrentElementActiveFocus(!0),this.focusedIndex===-1&&this.setFocus(0)}onBlur(){this.domHasFocus=!1,this.toggleCurrentElementActiveFocus(!1)}dispose(){this.toggleStickyScrollFocused(!1),this._onDidChangeHasFocus.fire(!1),super.dispose()}}function Qb(o){let e=jd.Unknown;return rS(o.browserEvent.target,"monaco-tl-twistie","monaco-tl-row")?e=jd.Twistie:rS(o.browserEvent.target,"monaco-tl-contents","monaco-tl-row")?e=jd.Element:rS(o.browserEvent.target,"monaco-tree-type-filter","monaco-list")&&(e=jd.Filter),{browserEvent:o.browserEvent,element:o.element?o.element.element:null,target:e}}function ree(o){const e=d_(o.browserEvent.target);return{element:o.element?o.element.element:null,browserEvent:o.browserEvent,anchor:o.anchor,isStickyScroll:e}}function B1(o,e){e(o),o.children.forEach(t=>B1(t,e))}class GS{get nodeSet(){return this._nodeSet||(this._nodeSet=this.createNodeSet()),this._nodeSet}constructor(e,t){this.getFirstViewElementWithTrait=e,this.identityProvider=t,this.nodes=[],this._onDidChange=new A,this.onDidChange=this._onDidChange.event}set(e,t){!t?.__forceEvent&&li(this.nodes,e)||this._set(e,!1,t)}_set(e,t,i){if(this.nodes=[...e],this.elements=void 0,this._nodeSet=void 0,!t){const n=this;this._onDidChange.fire({get elements(){return n.get()},browserEvent:i})}}get(){return this.elements||(this.elements=this.nodes.map(e=>e.element)),[...this.elements]}getNodes(){return this.nodes}has(e){return this.nodeSet.has(e)}onDidModelSplice({insertedNodes:e,deletedNodes:t}){if(!this.identityProvider){const l=this.createNodeSet(),c=d=>l.delete(d);t.forEach(d=>B1(d,c)),this.set([...l.values()]);return}const i=new Set,n=l=>i.add(this.identityProvider.getId(l.element).toString());t.forEach(l=>B1(l,n));const s=new Map,r=l=>s.set(this.identityProvider.getId(l.element).toString(),l);e.forEach(l=>B1(l,r));const a=[];for(const l of this.nodes){const c=this.identityProvider.getId(l.element).toString();if(!i.has(c))a.push(l);else{const h=s.get(c);h&&h.visible&&a.push(h)}}if(this.nodes.length>0&&a.length===0){const l=this.getFirstViewElementWithTrait();l&&a.push(l)}this._set(a,!0)}createNodeSet(){const e=new Set;for(const t of this.nodes)e.add(t);return e}}class aee extends R7{constructor(e,t,i){super(e),this.tree=t,this.stickyScrollProvider=i}onViewPointer(e){if(E7(e.browserEvent.target)||pc(e.browserEvent.target)||Rm(e.browserEvent.target)||e.browserEvent.isHandledByList)return;const t=e.element;if(!t)return super.onViewPointer(e);if(this.isSelectionRangeChangeEvent(e)||this.isSelectionSingleChangeEvent(e))return super.onViewPointer(e);const i=e.browserEvent.target,n=i.classList.contains("monaco-tl-twistie")||i.classList.contains("monaco-icon-label")&&i.classList.contains("folder-icon")&&e.browserEvent.offsetX<16,s=Jm(e.browserEvent.target);let r=!1;if(s?r=!0:typeof this.tree.expandOnlyOnTwistieClick=="function"?r=this.tree.expandOnlyOnTwistieClick(t.element):r=!!this.tree.expandOnlyOnTwistieClick,s)this.handleStickyScrollMouseEvent(e,t);else{if(r&&!n&&e.browserEvent.detail!==2)return super.onViewPointer(e);if(!this.tree.expandOnDoubleClick&&e.browserEvent.detail===2)return super.onViewPointer(e)}if(t.collapsible&&(!s||n)){const a=this.tree.getNodeLocation(t),l=e.browserEvent.altKey;if(this.tree.setFocus([a]),this.tree.toggleCollapsed(a,l),n){e.browserEvent.isHandledByList=!0;return}}s||super.onViewPointer(e)}handleStickyScrollMouseEvent(e,t){if(hY(e.browserEvent.target)||uY(e.browserEvent.target))return;const i=this.stickyScrollProvider();if(!i)throw new Error("Sticky scroll controller not found");const n=this.list.indexOf(t),s=this.list.getElementTop(n),r=i.nodePositionTopBelowWidget(t);this.tree.scrollTop=s-r,this.list.domFocus(),this.list.setFocus([n]),this.list.setSelection([n])}onDoubleClick(e){e.browserEvent.target.classList.contains("monaco-tl-twistie")||!this.tree.expandOnDoubleClick||e.browserEvent.isHandledByList||super.onDoubleClick(e)}onMouseDown(e){const t=e.browserEvent.target;if(!d_(t)&&!Jm(t)){super.onMouseDown(e);return}}onContextMenu(e){const t=e.browserEvent.target;if(!d_(t)&&!Jm(t)){super.onContextMenu(e);return}}}class lee extends go{constructor(e,t,i,n,s,r,a,l){super(e,t,i,n,l),this.focusTrait=s,this.selectionTrait=r,this.anchorTrait=a}createMouseController(e){return new aee(this,e.tree,e.stickyScrollProvider)}splice(e,t,i=[]){if(super.splice(e,t,i),i.length===0)return;const n=[],s=[];let r;i.forEach((a,l)=>{this.focusTrait.has(a)&&n.push(e+l),this.selectionTrait.has(a)&&s.push(e+l),this.anchorTrait.has(a)&&(r=e+l)}),n.length>0&&super.setFocus(Eh([...super.getFocus(),...n])),s.length>0&&super.setSelection(Eh([...super.getSelection(),...s])),typeof r=="number"&&super.setAnchor(r)}setFocus(e,t,i=!1){super.setFocus(e,t),i||this.focusTrait.set(e.map(n=>this.element(n)),t)}setSelection(e,t,i=!1){super.setSelection(e,t),i||this.selectionTrait.set(e.map(n=>this.element(n)),t)}setAnchor(e,t=!1){super.setAnchor(e),t||(typeof e>"u"?this.anchorTrait.set([]):this.anchorTrait.set([this.element(e)]))}}class T9{get onDidScroll(){return this.view.onDidScroll}get onDidChangeFocus(){return this.eventBufferer.wrapEvent(this.focus.onDidChange)}get onDidChangeSelection(){return this.eventBufferer.wrapEvent(this.selection.onDidChange)}get onMouseDblClick(){return J.filter(J.map(this.view.onMouseDblClick,Qb),e=>e.target!==jd.Filter)}get onMouseOver(){return J.map(this.view.onMouseOver,Qb)}get onMouseOut(){return J.map(this.view.onMouseOut,Qb)}get onContextMenu(){return J.any(J.filter(J.map(this.view.onContextMenu,ree),e=>!e.isStickyScroll),this.stickyScrollController?.onContextMenu??J.None)}get onPointer(){return J.map(this.view.onPointer,Qb)}get onKeyDown(){return this.view.onKeyDown}get onDidFocus(){return this.view.onDidFocus}get onDidChangeModel(){return J.signal(this.model.onDidSplice)}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get findMode(){return this.findController?.mode??dl.Highlight}set findMode(e){this.findController&&(this.findController.mode=e)}get findMatchType(){return this.findController?.matchType??Uh.Fuzzy}set findMatchType(e){this.findController&&(this.findController.matchType=e)}get expandOnDoubleClick(){return typeof this._options.expandOnDoubleClick>"u"?!0:this._options.expandOnDoubleClick}get expandOnlyOnTwistieClick(){return typeof this._options.expandOnlyOnTwistieClick>"u"?!0:this._options.expandOnlyOnTwistieClick}get onDidDispose(){return this.view.onDidDispose}constructor(e,t,i,n,s={}){this._user=e,this._options=s,this.eventBufferer=new W_,this.onDidChangeFindOpenState=J.None,this.onDidChangeStickyScrollFocused=J.None,this.disposables=new X,this._onWillRefilter=new A,this.onWillRefilter=this._onWillRefilter.event,this._onDidUpdateOptions=new A,this.treeDelegate=new _2(i);const r=new VM,a=new VM,l=this.disposables.add(new XJ(a.event)),c=new dT;this.renderers=n.map(g=>new BD(g,()=>this.model,r.event,l,c,s));for(const g of this.renderers)this.disposables.add(g);let d;s.keyboardNavigationLabelProvider&&(d=new JJ(this,s.keyboardNavigationLabelProvider,s.filter),s={...s,filter:d},this.disposables.add(d)),this.focus=new GS(()=>this.view.getFocusedElements()[0],s.identityProvider),this.selection=new GS(()=>this.view.getSelectedElements()[0],s.identityProvider),this.anchor=new GS(()=>this.view.getAnchorElement(),s.identityProvider),this.view=new lee(e,t,this.treeDelegate,this.renderers,this.focus,this.selection,this.anchor,{...QJ(()=>this.model,s),tree:this,stickyScrollProvider:()=>this.stickyScrollController}),this.model=this.createModel(e,this.view,s),r.input=this.model.onDidChangeCollapseState;const h=J.forEach(this.model.onDidSplice,g=>{this.eventBufferer.bufferEvents(()=>{this.focus.onDidModelSplice(g),this.selection.onDidModelSplice(g)})},this.disposables);h(()=>null,null,this.disposables);const u=this.disposables.add(new A),f=this.disposables.add(new z_(0));if(this.disposables.add(J.any(h,this.focus.onDidChange,this.selection.onDidChange)(()=>{f.trigger(()=>{const g=new Set;for(const p of this.focus.getNodes())g.add(p);for(const p of this.selection.getNodes())g.add(p);u.fire([...g.values()])})})),a.input=u.event,s.keyboardSupport!==!1){const g=J.chain(this.view.onKeyDown,p=>p.filter(_=>!pc(_.target)).map(_=>new Nt(_)));J.chain(g,p=>p.filter(_=>_.keyCode===15))(this.onLeftArrow,this,this.disposables),J.chain(g,p=>p.filter(_=>_.keyCode===17))(this.onRightArrow,this,this.disposables),J.chain(g,p=>p.filter(_=>_.keyCode===10))(this.onSpace,this,this.disposables)}if((s.findWidgetEnabled??!0)&&s.keyboardNavigationLabelProvider&&s.contextViewProvider){const g=this.options.findWidgetStyles?{styles:this.options.findWidgetStyles}:void 0;this.findController=new eee(this,this.model,this.view,d,s.contextViewProvider,g),this.focusNavigationFilter=p=>this.findController.shouldAllowFocus(p),this.onDidChangeFindOpenState=this.findController.onDidChangeOpenState,this.disposables.add(this.findController),this.onDidChangeFindMode=this.findController.onDidChangeMode,this.onDidChangeFindMatchType=this.findController.onDidChangeMatchType}else this.onDidChangeFindMode=J.None,this.onDidChangeFindMatchType=J.None;s.enableStickyScroll&&(this.stickyScrollController=new GP(this,this.model,this.view,this.renderers,this.treeDelegate,s),this.onDidChangeStickyScrollFocused=this.stickyScrollController.onDidChangeHasFocus),this.styleElement=Vs(this.view.getHTMLElement()),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===Sg.Always)}updateOptions(e={}){this._options={...this._options,...e};for(const t of this.renderers)t.updateOptions(e);this.view.updateOptions(this._options),this.findController?.updateOptions(e),this.updateStickyScroll(e),this._onDidUpdateOptions.fire(this._options),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===Sg.Always)}get options(){return this._options}updateStickyScroll(e){!this.stickyScrollController&&this._options.enableStickyScroll?(this.stickyScrollController=new GP(this,this.model,this.view,this.renderers,this.treeDelegate,this._options),this.onDidChangeStickyScrollFocused=this.stickyScrollController.onDidChangeHasFocus):this.stickyScrollController&&!this._options.enableStickyScroll&&(this.onDidChangeStickyScrollFocused=J.None,this.stickyScrollController.dispose(),this.stickyScrollController=void 0),this.stickyScrollController?.updateOptions(e)}getHTMLElement(){return this.view.getHTMLElement()}get scrollTop(){return this.view.scrollTop}set scrollTop(e){this.view.scrollTop=e}get scrollHeight(){return this.view.scrollHeight}get renderHeight(){return this.view.renderHeight}get ariaLabel(){return this.view.ariaLabel}set ariaLabel(e){this.view.ariaLabel=e}domFocus(){this.stickyScrollController?.focusedLast()?this.stickyScrollController.domFocus():this.view.domFocus()}layout(e,t){this.view.layout(e,t),Pg(t)&&this.findController?.layout(t)}style(e){const t=`.${this.view.domId}`,i=[];e.treeIndentGuidesStroke&&(i.push(`.monaco-list${t}:hover .monaco-tl-indent > .indent-guide, .monaco-list${t}.always .monaco-tl-indent > .indent-guide { border-color: ${e.treeInactiveIndentGuidesStroke}; }`),i.push(`.monaco-list${t} .monaco-tl-indent > .indent-guide.active { border-color: ${e.treeIndentGuidesStroke}; }`));const n=e.treeStickyScrollBackground??e.listBackground;n&&(i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container { background-color: ${n}; }`),i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row { background-color: ${n}; }`)),e.treeStickyScrollBorder&&i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container { border-bottom: 1px solid ${e.treeStickyScrollBorder}; }`),e.treeStickyScrollShadow&&i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow { box-shadow: ${e.treeStickyScrollShadow} 0 6px 6px -6px inset; height: 3px; }`),e.listFocusForeground&&(i.push(`.monaco-list${t}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused { color: ${e.listFocusForeground}; }`),i.push(`.monaco-list${t}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused { color: inherit; }`));const s=vl(e.listFocusAndSelectionOutline,vl(e.listSelectionOutline,e.listFocusOutline??""));s&&(i.push(`.monaco-list${t}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused.selected { outline: 1px solid ${s}; outline-offset: -1px;}`),i.push(`.monaco-list${t}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused.selected { outline: inherit;}`)),e.listFocusOutline&&(i.push(`.monaco-list${t}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; }`),i.push(`.monaco-list${t}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused { outline: inherit; }`),i.push(`.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.passive-focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; }`),i.push(`.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused.sticky-scroll-focused .monaco-list-rows .monaco-list-row.focused { outline: inherit; }`),i.push(`.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused:not(.sticky-scroll-focused) .monaco-tree-sticky-container .monaco-list-rows .monaco-list-row.focused { outline: inherit; }`)),this.styleElement.textContent=i.join(` +`),this.view.style(e)}getParentElement(e){const t=this.model.getParentNodeLocation(e);return this.model.getNode(t).element}getFirstElementChild(e){return this.model.getFirstElementChild(e)}getNode(e){return this.model.getNode(e)}getNodeLocation(e){return this.model.getNodeLocation(e)}collapse(e,t=!1){return this.model.setCollapsed(e,!0,t)}expand(e,t=!1){return this.model.setCollapsed(e,!1,t)}toggleCollapsed(e,t=!1){return this.model.setCollapsed(e,void 0,t)}isCollapsible(e){return this.model.isCollapsible(e)}setCollapsible(e,t){return this.model.setCollapsible(e,t)}isCollapsed(e){return this.model.isCollapsed(e)}refilter(){this._onWillRefilter.fire(void 0),this.model.refilter()}setSelection(e,t){this.eventBufferer.bufferEvents(()=>{const i=e.map(s=>this.model.getNode(s));this.selection.set(i,t);const n=e.map(s=>this.model.getListIndex(s)).filter(s=>s>-1);this.view.setSelection(n,t,!0)})}getSelection(){return this.selection.get()}setFocus(e,t){this.eventBufferer.bufferEvents(()=>{const i=e.map(s=>this.model.getNode(s));this.focus.set(i,t);const n=e.map(s=>this.model.getListIndex(s)).filter(s=>s>-1);this.view.setFocus(n,t,!0)})}focusNext(e=1,t=!1,i,n=Qa(i)&&i.altKey?void 0:this.focusNavigationFilter){this.view.focusNext(e,t,i,n)}focusPrevious(e=1,t=!1,i,n=Qa(i)&&i.altKey?void 0:this.focusNavigationFilter){this.view.focusPrevious(e,t,i,n)}focusNextPage(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){return this.view.focusNextPage(e,t)}focusPreviousPage(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){return this.view.focusPreviousPage(e,t,()=>this.stickyScrollController?.height??0)}focusLast(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){this.view.focusLast(e,t)}focusFirst(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){this.view.focusFirst(e,t)}getFocus(){return this.focus.get()}reveal(e,t){this.model.expandTo(e);const i=this.model.getListIndex(e);if(i!==-1)if(!this.stickyScrollController)this.view.reveal(i,t);else{const n=this.stickyScrollController.nodePositionTopBelowWidget(this.getNode(e));this.view.reveal(i,t,n)}}onLeftArrow(e){e.preventDefault(),e.stopPropagation();const t=this.view.getFocusedElements();if(t.length===0)return;const i=t[0],n=this.model.getNodeLocation(i);if(!this.model.setCollapsed(n,!0)){const r=this.model.getParentNodeLocation(n);if(!r)return;const a=this.model.getListIndex(r);this.view.reveal(a),this.view.setFocus([a])}}onRightArrow(e){e.preventDefault(),e.stopPropagation();const t=this.view.getFocusedElements();if(t.length===0)return;const i=t[0],n=this.model.getNodeLocation(i);if(!this.model.setCollapsed(n,!1)){if(!i.children.some(l=>l.visible))return;const[r]=this.view.getFocus(),a=r+1;this.view.reveal(a),this.view.setFocus([a])}}onSpace(e){e.preventDefault(),e.stopPropagation();const t=this.view.getFocusedElements();if(t.length===0)return;const i=t[0],n=this.model.getNodeLocation(i),s=e.browserEvent.altKey;this.model.setCollapsed(n,void 0,s)}dispose(){xt(this.disposables),this.stickyScrollController?.dispose(),this.view.dispose()}}class b2{constructor(e,t,i={}){this.user=e,this.rootRef=null,this.nodes=new Map,this.nodesByIdentity=new Map,this.model=new GJ(e,t,null,i),this.onDidSplice=this.model.onDidSplice,this.onDidChangeCollapseState=this.model.onDidChangeCollapseState,this.onDidChangeRenderNodeCount=this.model.onDidChangeRenderNodeCount,i.sorter&&(this.sorter={compare(n,s){return i.sorter.compare(n.element,s.element)}}),this.identityProvider=i.identityProvider}setChildren(e,t=st.empty(),i={}){const n=this.getElementLocation(e);this._setChildren(n,this.preserveCollapseState(t),i)}_setChildren(e,t=st.empty(),i){const n=new Set,s=new Set,r=l=>{if(l.element===null)return;const c=l;if(n.add(c.element),this.nodes.set(c.element,c),this.identityProvider){const d=this.identityProvider.getId(c.element).toString();s.add(d),this.nodesByIdentity.set(d,c)}i.onDidCreateNode?.(c)},a=l=>{if(l.element===null)return;const c=l;if(n.has(c.element)||this.nodes.delete(c.element),this.identityProvider){const d=this.identityProvider.getId(c.element).toString();s.has(d)||this.nodesByIdentity.delete(d)}i.onDidDeleteNode?.(c)};this.model.splice([...e,0],Number.MAX_VALUE,t,{...i,onDidCreateNode:r,onDidDeleteNode:a})}preserveCollapseState(e=st.empty()){return this.sorter&&(e=[...e].sort(this.sorter.compare.bind(this.sorter))),st.map(e,t=>{let i=this.nodes.get(t.element);if(!i&&this.identityProvider){const r=this.identityProvider.getId(t.element).toString();i=this.nodesByIdentity.get(r)}if(!i){let r;return typeof t.collapsed>"u"?r=void 0:t.collapsed===ys.Collapsed||t.collapsed===ys.PreserveOrCollapsed?r=!0:t.collapsed===ys.Expanded||t.collapsed===ys.PreserveOrExpanded?r=!1:r=!!t.collapsed,{...t,children:this.preserveCollapseState(t.children),collapsed:r}}const n=typeof t.collapsible=="boolean"?t.collapsible:i.collapsible;let s;return typeof t.collapsed>"u"||t.collapsed===ys.PreserveOrCollapsed||t.collapsed===ys.PreserveOrExpanded?s=i.collapsed:t.collapsed===ys.Collapsed?s=!0:t.collapsed===ys.Expanded?s=!1:s=!!t.collapsed,{...t,collapsible:n,collapsed:s,children:this.preserveCollapseState(t.children)}})}rerender(e){const t=this.getElementLocation(e);this.model.rerender(t)}getFirstElementChild(e=null){const t=this.getElementLocation(e);return this.model.getFirstElementChild(t)}has(e){return this.nodes.has(e)}getListIndex(e){const t=this.getElementLocation(e);return this.model.getListIndex(t)}getListRenderCount(e){const t=this.getElementLocation(e);return this.model.getListRenderCount(t)}isCollapsible(e){const t=this.getElementLocation(e);return this.model.isCollapsible(t)}setCollapsible(e,t){const i=this.getElementLocation(e);return this.model.setCollapsible(i,t)}isCollapsed(e){const t=this.getElementLocation(e);return this.model.isCollapsed(t)}setCollapsed(e,t,i){const n=this.getElementLocation(e);return this.model.setCollapsed(n,t,i)}expandTo(e){const t=this.getElementLocation(e);this.model.expandTo(t)}refilter(){this.model.refilter()}getNode(e=null){if(e===null)return this.model.getNode(this.model.rootRef);const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);return t}getNodeLocation(e){return e.element}getParentNodeLocation(e){if(e===null)throw new Ds(this.user,"Invalid getParentNodeLocation call");const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);const i=this.model.getNodeLocation(t),n=this.model.getParentNodeLocation(i);return this.model.getNode(n).element}getElementLocation(e){if(e===null)return[];const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);return this.model.getNodeLocation(t)}}function W1(o){const e=[o.element],t=o.incompressible||!1;return{element:{elements:e,incompressible:t},children:st.map(st.from(o.children),W1),collapsible:o.collapsible,collapsed:o.collapsed}}function H1(o){const e=[o.element],t=o.incompressible||!1;let i,n;for(;[n,i]=st.consume(st.from(o.children),2),!(n.length!==1||n[0].incompressible);)o=n[0],e.push(o.element);return{element:{elements:e,incompressible:t},children:st.map(st.concat(n,i),H1),collapsible:o.collapsible,collapsed:o.collapsed}}function WD(o,e=0){let t;return eWD(i,0)),e===0&&o.element.incompressible?{element:o.element.elements[e],children:t,incompressible:!0,collapsible:o.collapsible,collapsed:o.collapsed}:{element:o.element.elements[e],children:t,collapsible:o.collapsible,collapsed:o.collapsed}}function ZP(o){return WD(o,0)}function M9(o,e,t){return o.element===e?{...o,children:t}:{...o,children:st.map(st.from(o.children),i=>M9(i,e,t))}}const cee=o=>({getId(e){return e.elements.map(t=>o.getId(t).toString()).join("\0")}});class dee{get onDidSplice(){return this.model.onDidSplice}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get onDidChangeRenderNodeCount(){return this.model.onDidChangeRenderNodeCount}constructor(e,t,i={}){this.user=e,this.rootRef=null,this.nodes=new Map,this.model=new b2(e,t,i),this.enabled=typeof i.compressionEnabled>"u"?!0:i.compressionEnabled,this.identityProvider=i.identityProvider}setChildren(e,t=st.empty(),i){const n=i.diffIdentityProvider&&cee(i.diffIdentityProvider);if(e===null){const g=st.map(t,this.enabled?H1:W1);this._setChildren(null,g,{diffIdentityProvider:n,diffDepth:1/0});return}const s=this.nodes.get(e);if(!s)throw new Ds(this.user,"Unknown compressed tree node");const r=this.model.getNode(s),a=this.model.getParentNodeLocation(s),l=this.model.getNode(a),c=ZP(r),d=M9(c,e,t),h=(this.enabled?H1:W1)(d),u=i.diffIdentityProvider?((g,p)=>i.diffIdentityProvider.getId(g)===i.diffIdentityProvider.getId(p)):void 0;if(li(h.element.elements,r.element.elements,u)){this._setChildren(s,h.children||st.empty(),{diffIdentityProvider:n,diffDepth:1});return}const f=l.children.map(g=>g===r?h:g);this._setChildren(l.element,f,{diffIdentityProvider:n,diffDepth:r.depth-l.depth})}isCompressionEnabled(){return this.enabled}setCompressionEnabled(e){if(e===this.enabled)return;this.enabled=e;const i=this.model.getNode().children,n=st.map(i,ZP),s=st.map(n,e?H1:W1);this._setChildren(null,s,{diffIdentityProvider:this.identityProvider,diffDepth:1/0})}_setChildren(e,t,i){const n=new Set,s=a=>{for(const l of a.element.elements)n.add(l),this.nodes.set(l,a.element)},r=a=>{for(const l of a.element.elements)n.has(l)||this.nodes.delete(l)};this.model.setChildren(e,t,{...i,onDidCreateNode:s,onDidDeleteNode:r})}has(e){return this.nodes.has(e)}getListIndex(e){const t=this.getCompressedNode(e);return this.model.getListIndex(t)}getListRenderCount(e){const t=this.getCompressedNode(e);return this.model.getListRenderCount(t)}getNode(e){if(typeof e>"u")return this.model.getNode();const t=this.getCompressedNode(e);return this.model.getNode(t)}getNodeLocation(e){const t=this.model.getNodeLocation(e);return t===null?null:t.elements[t.elements.length-1]}getParentNodeLocation(e){const t=this.getCompressedNode(e),i=this.model.getParentNodeLocation(t);return i===null?null:i.elements[i.elements.length-1]}getFirstElementChild(e){const t=this.getCompressedNode(e);return this.model.getFirstElementChild(t)}isCollapsible(e){const t=this.getCompressedNode(e);return this.model.isCollapsible(t)}setCollapsible(e,t){const i=this.getCompressedNode(e);return this.model.setCollapsible(i,t)}isCollapsed(e){const t=this.getCompressedNode(e);return this.model.isCollapsed(t)}setCollapsed(e,t,i){const n=this.getCompressedNode(e);return this.model.setCollapsed(n,t,i)}expandTo(e){const t=this.getCompressedNode(e);this.model.expandTo(t)}rerender(e){const t=this.getCompressedNode(e);this.model.rerender(t)}refilter(){this.model.refilter()}getCompressedNode(e){if(e===null)return null;const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);return t}}const hee=o=>o[o.length-1];class C2{get element(){return this.node.element===null?null:this.unwrapper(this.node.element)}get children(){return this.node.children.map(e=>new C2(this.unwrapper,e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e,t){this.unwrapper=e,this.node=t}}function uee(o,e){return{splice(t,i,n){e.splice(t,i,n.map(s=>o.map(s)))},updateElementHeight(t,i){e.updateElementHeight(t,i)}}}function fee(o,e){return{...e,identityProvider:e.identityProvider&&{getId(t){return e.identityProvider.getId(o(t))}},sorter:e.sorter&&{compare(t,i){return e.sorter.compare(t.elements[0],i.elements[0])}},filter:e.filter&&{filter(t,i){return e.filter.filter(o(t),i)}}}}class gee{get onDidSplice(){return J.map(this.model.onDidSplice,({insertedNodes:e,deletedNodes:t})=>({insertedNodes:e.map(i=>this.nodeMapper.map(i)),deletedNodes:t.map(i=>this.nodeMapper.map(i))}))}get onDidChangeCollapseState(){return J.map(this.model.onDidChangeCollapseState,({node:e,deep:t})=>({node:this.nodeMapper.map(e),deep:t}))}get onDidChangeRenderNodeCount(){return J.map(this.model.onDidChangeRenderNodeCount,e=>this.nodeMapper.map(e))}constructor(e,t,i={}){this.rootRef=null,this.elementMapper=i.elementMapper||hee;const n=s=>this.elementMapper(s.elements);this.nodeMapper=new m2(s=>new C2(n,s)),this.model=new dee(e,uee(this.nodeMapper,t),fee(n,i))}setChildren(e,t=st.empty(),i={}){this.model.setChildren(e,t,i)}isCompressionEnabled(){return this.model.isCompressionEnabled()}setCompressionEnabled(e){this.model.setCompressionEnabled(e)}has(e){return this.model.has(e)}getListIndex(e){return this.model.getListIndex(e)}getListRenderCount(e){return this.model.getListRenderCount(e)}getNode(e){return this.nodeMapper.map(this.model.getNode(e))}getNodeLocation(e){return e.element}getParentNodeLocation(e){return this.model.getParentNodeLocation(e)}getFirstElementChild(e){const t=this.model.getFirstElementChild(e);return t===null||typeof t>"u"?t:this.elementMapper(t.elements)}isCollapsible(e){return this.model.isCollapsible(e)}setCollapsible(e,t){return this.model.setCollapsible(e,t)}isCollapsed(e){return this.model.isCollapsed(e)}setCollapsed(e,t,i){return this.model.setCollapsed(e,t,i)}expandTo(e){return this.model.expandTo(e)}rerender(e){return this.model.rerender(e)}refilter(){return this.model.refilter()}getCompressedTreeNode(e=null){return this.model.getNode(e)}}var mee=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};class v2 extends T9{get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}constructor(e,t,i,n,s={}){super(e,t,i,n,s),this.user=e}setChildren(e,t=st.empty(),i){this.model.setChildren(e,t,i)}rerender(e){if(e===void 0){this.view.rerender();return}this.model.rerender(e)}hasElement(e){return this.model.has(e)}createModel(e,t,i){return new b2(e,t,i)}}class R9{get compressedTreeNodeProvider(){return this._compressedTreeNodeProvider()}constructor(e,t,i){this._compressedTreeNodeProvider=e,this.stickyScrollDelegate=t,this.renderer=i,this.templateId=i.templateId,i.onDidChangeTwistieState&&(this.onDidChangeTwistieState=i.onDidChangeTwistieState)}renderTemplate(e){return{compressedTreeNode:void 0,data:this.renderer.renderTemplate(e)}}renderElement(e,t,i,n){let s=this.stickyScrollDelegate.getCompressedNode(e);s||(s=this.compressedTreeNodeProvider.getCompressedTreeNode(e.element)),s.element.elements.length===1?(i.compressedTreeNode=void 0,this.renderer.renderElement(e,t,i.data,n)):(i.compressedTreeNode=s,this.renderer.renderCompressedElements(s,t,i.data,n))}disposeElement(e,t,i,n){i.compressedTreeNode?this.renderer.disposeCompressedElements?.(i.compressedTreeNode,t,i.data,n):this.renderer.disposeElement?.(e,t,i.data,n)}disposeTemplate(e){this.renderer.disposeTemplate(e.data)}renderTwistie(e,t){return this.renderer.renderTwistie?this.renderer.renderTwistie(e,t):!1}}mee([Jt],R9.prototype,"compressedTreeNodeProvider",null);class pee{constructor(e){this.modelProvider=e,this.compressedStickyNodes=new Map}getCompressedNode(e){return this.compressedStickyNodes.get(e)}constrainStickyScrollNodes(e,t,i){if(this.compressedStickyNodes.clear(),e.length===0)return[];for(let n=0;ni||n>=t-1&&tthis,a=new pee(()=>this.model),l=n.map(c=>new R9(r,a,c));super(e,t,i,l,{..._ee(r,s),stickyScrollDelegate:a})}setChildren(e,t=st.empty(),i){this.model.setChildren(e,t,i)}createModel(e,t,i){return new gee(e,t,i)}updateOptions(e={}){super.updateOptions(e),typeof e.compressionEnabled<"u"&&this.model.setCompressionEnabled(e.compressionEnabled)}getCompressedTreeNode(e=null){return this.model.getCompressedTreeNode(e)}}function ZS(o){return{...o,children:[],refreshPromise:void 0,stale:!0,slow:!1,forceExpanded:!1}}function HD(o,e){return e.parent?e.parent===o?!0:HD(o,e.parent):!1}function bee(o,e){return o===e||HD(o,e)||HD(e,o)}class w2{get element(){return this.node.element.element}get children(){return this.node.children.map(e=>new w2(e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e){this.node=e}}class Cee{constructor(e,t,i){this.renderer=e,this.nodeMapper=t,this.onDidChangeTwistieState=i,this.renderedNodes=new Map,this.templateId=e.templateId}renderTemplate(e){return{templateData:this.renderer.renderTemplate(e)}}renderElement(e,t,i,n){this.renderer.renderElement(this.nodeMapper.map(e),t,i.templateData,n)}renderTwistie(e,t){return e.slow?(t.classList.add(...Ee.asClassNameArray(ie.treeItemLoading)),!0):(t.classList.remove(...Ee.asClassNameArray(ie.treeItemLoading)),!1)}disposeElement(e,t,i,n){this.renderer.disposeElement?.(this.nodeMapper.map(e),t,i.templateData,n)}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}dispose(){this.renderedNodes.clear()}}function YP(o){return{browserEvent:o.browserEvent,elements:o.elements.map(e=>e.element)}}function QP(o){return{browserEvent:o.browserEvent,element:o.element&&o.element.element,target:o.target}}class vee extends J_{constructor(e){super(e.elements.map(t=>t.element)),this.data=e}}function YS(o){return o instanceof J_?new vee(o):o}class wee{constructor(e){this.dnd=e}getDragURI(e){return this.dnd.getDragURI(e.element)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map(i=>i.element),t)}onDragStart(e,t){this.dnd.onDragStart?.(YS(e),t)}onDragOver(e,t,i,n,s,r=!0){return this.dnd.onDragOver(YS(e),t&&t.element,i,n,s)}drop(e,t,i,n,s){this.dnd.drop(YS(e),t&&t.element,i,n,s)}onDragEnd(e){this.dnd.onDragEnd?.(e)}dispose(){this.dnd.dispose()}}function P9(o){return o&&{...o,collapseByDefault:!0,identityProvider:o.identityProvider&&{getId(e){return o.identityProvider.getId(e.element)}},dnd:o.dnd&&new wee(o.dnd),multipleSelectionController:o.multipleSelectionController&&{isSelectionSingleChangeEvent(e){return o.multipleSelectionController.isSelectionSingleChangeEvent({...e,element:e.element})},isSelectionRangeChangeEvent(e){return o.multipleSelectionController.isSelectionRangeChangeEvent({...e,element:e.element})}},accessibilityProvider:o.accessibilityProvider&&{...o.accessibilityProvider,getPosInSet:void 0,getSetSize:void 0,getRole:o.accessibilityProvider.getRole?e=>o.accessibilityProvider.getRole(e.element):()=>"treeitem",isChecked:o.accessibilityProvider.isChecked?e=>!!o.accessibilityProvider?.isChecked(e.element):void 0,getAriaLabel(e){return o.accessibilityProvider.getAriaLabel(e.element)},getWidgetAriaLabel(){return o.accessibilityProvider.getWidgetAriaLabel()},getWidgetRole:o.accessibilityProvider.getWidgetRole?()=>o.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:o.accessibilityProvider.getAriaLevel&&(e=>o.accessibilityProvider.getAriaLevel(e.element)),getActiveDescendantId:o.accessibilityProvider.getActiveDescendantId&&(e=>o.accessibilityProvider.getActiveDescendantId(e.element))},filter:o.filter&&{filter(e,t){return o.filter.filter(e.element,t)}},keyboardNavigationLabelProvider:o.keyboardNavigationLabelProvider&&{...o.keyboardNavigationLabelProvider,getKeyboardNavigationLabel(e){return o.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e.element)}},sorter:void 0,expandOnlyOnTwistieClick:typeof o.expandOnlyOnTwistieClick>"u"?void 0:typeof o.expandOnlyOnTwistieClick!="function"?o.expandOnlyOnTwistieClick:(e=>o.expandOnlyOnTwistieClick(e.element)),defaultFindVisibility:e=>e.hasChildren&&e.stale?1:typeof o.defaultFindVisibility=="number"?o.defaultFindVisibility:typeof o.defaultFindVisibility>"u"?2:o.defaultFindVisibility(e.element)}}function VD(o,e){e(o),o.children.forEach(t=>VD(t,e))}class O9{get onDidScroll(){return this.tree.onDidScroll}get onDidChangeFocus(){return J.map(this.tree.onDidChangeFocus,YP)}get onDidChangeSelection(){return J.map(this.tree.onDidChangeSelection,YP)}get onMouseDblClick(){return J.map(this.tree.onMouseDblClick,QP)}get onPointer(){return J.map(this.tree.onPointer,QP)}get onDidFocus(){return this.tree.onDidFocus}get onDidChangeModel(){return this.tree.onDidChangeModel}get onDidChangeCollapseState(){return this.tree.onDidChangeCollapseState}get onDidChangeFindOpenState(){return this.tree.onDidChangeFindOpenState}get onDidChangeStickyScrollFocused(){return this.tree.onDidChangeStickyScrollFocused}get onDidDispose(){return this.tree.onDidDispose}constructor(e,t,i,n,s,r={}){this.user=e,this.dataSource=s,this.nodes=new Map,this.subTreeRefreshPromises=new Map,this.refreshPromises=new Map,this._onDidRender=new A,this._onDidChangeNodeSlowState=new A,this.nodeMapper=new m2(a=>new w2(a)),this.disposables=new X,this.identityProvider=r.identityProvider,this.autoExpandSingleChildren=typeof r.autoExpandSingleChildren>"u"?!1:r.autoExpandSingleChildren,this.sorter=r.sorter,this.getDefaultCollapseState=a=>r.collapseByDefault?r.collapseByDefault(a)?ys.PreserveOrCollapsed:ys.PreserveOrExpanded:void 0,this.tree=this.createTree(e,t,i,n,r),this.onDidChangeFindMode=this.tree.onDidChangeFindMode,this.onDidChangeFindMatchType=this.tree.onDidChangeFindMatchType,this.root=ZS({element:void 0,parent:null,hasChildren:!0,defaultCollapseState:void 0}),this.identityProvider&&(this.root={...this.root,id:null}),this.nodes.set(null,this.root),this.tree.onDidChangeCollapseState(this._onDidChangeCollapseState,this,this.disposables)}createTree(e,t,i,n,s){const r=new _2(i),a=n.map(c=>new Cee(c,this.nodeMapper,this._onDidChangeNodeSlowState.event)),l=P9(s)||{};return new v2(e,t,r,a,l)}updateOptions(e={}){this.tree.updateOptions(e)}getHTMLElement(){return this.tree.getHTMLElement()}get scrollTop(){return this.tree.scrollTop}set scrollTop(e){this.tree.scrollTop=e}get scrollHeight(){return this.tree.scrollHeight}get renderHeight(){return this.tree.renderHeight}domFocus(){this.tree.domFocus()}layout(e,t){this.tree.layout(e,t)}style(e){this.tree.style(e)}getInput(){return this.root.element}async setInput(e,t){this.refreshPromises.forEach(n=>n.cancel()),this.refreshPromises.clear(),this.root.element=e;const i=t&&{viewState:t,focus:[],selection:[]};await this._updateChildren(e,!0,!1,i),i&&(this.tree.setFocus(i.focus),this.tree.setSelection(i.selection)),t&&typeof t.scrollTop=="number"&&(this.scrollTop=t.scrollTop)}async _updateChildren(e=this.root.element,t=!0,i=!1,n,s){if(typeof this.root.element>"u")throw new Ds(this.user,"Tree input not set");this.root.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event));const r=this.getDataNode(e);if(await this.refreshAndRenderNode(r,t,n,s),i)try{this.tree.rerender(r)}catch{}}rerender(e){if(e===void 0||e===this.root.element){this.tree.rerender();return}const t=this.getDataNode(e);this.tree.rerender(t)}getNode(e=this.root.element){const t=this.getDataNode(e),i=this.tree.getNode(t===this.root?null:t);return this.nodeMapper.map(i)}collapse(e,t=!1){const i=this.getDataNode(e);return this.tree.collapse(i===this.root?null:i,t)}async expand(e,t=!1){if(typeof this.root.element>"u")throw new Ds(this.user,"Tree input not set");this.root.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event));const i=this.getDataNode(e);if(this.tree.hasElement(i)&&!this.tree.isCollapsible(i)||(i.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event)),i!==this.root&&!i.refreshPromise&&!this.tree.isCollapsed(i)))return!1;const n=this.tree.expand(i===this.root?null:i,t);return i.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event)),n}setSelection(e,t){const i=e.map(n=>this.getDataNode(n));this.tree.setSelection(i,t)}getSelection(){return this.tree.getSelection().map(t=>t.element)}setFocus(e,t){const i=e.map(n=>this.getDataNode(n));this.tree.setFocus(i,t)}getFocus(){return this.tree.getFocus().map(t=>t.element)}reveal(e,t){this.tree.reveal(this.getDataNode(e),t)}getParentElement(e){const t=this.tree.getParentElement(this.getDataNode(e));return t&&t.element}getFirstElementChild(e=this.root.element){const t=this.getDataNode(e),i=this.tree.getFirstElementChild(t===this.root?null:t);return i&&i.element}getDataNode(e){const t=this.nodes.get(e===this.root.element?null:e);if(!t)throw new Ds(this.user,`Data tree node not found: ${e}`);return t}async refreshAndRenderNode(e,t,i,n){await this.refreshNode(e,t,i),!this.disposables.isDisposed&&this.render(e,i,n)}async refreshNode(e,t,i){let n;if(this.subTreeRefreshPromises.forEach((s,r)=>{!n&&bee(r,e)&&(n=s.then(()=>this.refreshNode(e,t,i)))}),n)return n;if(e!==this.root&&this.tree.getNode(e).collapsed){e.hasChildren=!!this.dataSource.hasChildren(e.element),e.stale=!0,this.setChildren(e,[],t,i);return}return this.doRefreshSubTree(e,t,i)}async doRefreshSubTree(e,t,i){let n;e.refreshPromise=new Promise(s=>n=s),this.subTreeRefreshPromises.set(e,e.refreshPromise),e.refreshPromise.finally(()=>{e.refreshPromise=void 0,this.subTreeRefreshPromises.delete(e)});try{const s=await this.doRefreshNode(e,t,i);e.stale=!1,await Wx.settled(s.map(r=>this.doRefreshSubTree(r,t,i)))}finally{n()}}async doRefreshNode(e,t,i){e.hasChildren=!!this.dataSource.hasChildren(e.element);let n;if(!e.hasChildren)n=Promise.resolve(st.empty());else{const s=this.doGetChildren(e);if(PM(s))n=Promise.resolve(s);else{const r=og(800);r.then(()=>{e.slow=!0,this._onDidChangeNodeSlowState.fire(e)},a=>null),n=s.finally(()=>r.cancel())}}try{const s=await n;return this.setChildren(e,s,t,i)}catch(s){if(e!==this.root&&this.tree.hasElement(e)&&this.tree.collapse(e),$c(s))return[];throw s}finally{e.slow&&(e.slow=!1,this._onDidChangeNodeSlowState.fire(e))}}doGetChildren(e){let t=this.refreshPromises.get(e);if(t)return t;const i=this.dataSource.getChildren(e.element);return PM(i)?this.processChildren(i):(t=wa(async()=>this.processChildren(await i)),this.refreshPromises.set(e,t),t.finally(()=>{this.refreshPromises.delete(e)}))}_onDidChangeCollapseState({node:e,deep:t}){e.element!==null&&!e.collapsed&&e.element.stale&&(t?this.collapse(e.element.element):this.refreshAndRenderNode(e.element,!1).catch(Ze))}setChildren(e,t,i,n){const s=[...t];if(e.children.length===0&&s.length===0)return[];const r=new Map,a=new Map;for(const d of e.children)r.set(d.element,d),this.identityProvider&&a.set(d.id,{node:d,collapsed:this.tree.hasElement(d)&&this.tree.isCollapsed(d)});const l=[],c=s.map(d=>{const h=!!this.dataSource.hasChildren(d);if(!this.identityProvider){const p=ZS({element:d,parent:e,hasChildren:h,defaultCollapseState:this.getDefaultCollapseState(d)});return h&&p.defaultCollapseState===ys.PreserveOrExpanded&&l.push(p),p}const u=this.identityProvider.getId(d).toString(),f=a.get(u);if(f){const p=f.node;return r.delete(p.element),this.nodes.delete(p.element),this.nodes.set(d,p),p.element=d,p.hasChildren=h,i?f.collapsed?(p.children.forEach(_=>VD(_,b=>this.nodes.delete(b.element))),p.children.splice(0,p.children.length),p.stale=!0):l.push(p):h&&!f.collapsed&&l.push(p),p}const g=ZS({element:d,parent:e,id:u,hasChildren:h,defaultCollapseState:this.getDefaultCollapseState(d)});return n&&n.viewState.focus&&n.viewState.focus.indexOf(u)>-1&&n.focus.push(g),n&&n.viewState.selection&&n.viewState.selection.indexOf(u)>-1&&n.selection.push(g),(n&&n.viewState.expanded&&n.viewState.expanded.indexOf(u)>-1||h&&g.defaultCollapseState===ys.PreserveOrExpanded)&&l.push(g),g});for(const d of r.values())VD(d,h=>this.nodes.delete(h.element));for(const d of c)this.nodes.set(d.element,d);return e.children.splice(0,e.children.length,...c),e!==this.root&&this.autoExpandSingleChildren&&c.length===1&&l.length===0&&(c[0].forceExpanded=!0,l.push(c[0])),l}render(e,t,i){const n=e.children.map(r=>this.asTreeElement(r,t)),s=i&&{...i,diffIdentityProvider:i.diffIdentityProvider&&{getId(r){return i.diffIdentityProvider.getId(r.element)}}};this.tree.setChildren(e===this.root?null:e,n,s),e!==this.root&&this.tree.setCollapsible(e,e.hasChildren),this._onDidRender.fire()}asTreeElement(e,t){if(e.stale)return{element:e,collapsible:e.hasChildren,collapsed:!0};let i;return t&&t.viewState.expanded&&e.id&&t.viewState.expanded.indexOf(e.id)>-1?i=!1:e.forceExpanded?(i=!1,e.forceExpanded=!1):i=e.defaultCollapseState,{element:e,children:e.hasChildren?st.map(e.children,n=>this.asTreeElement(n,t)):[],collapsible:e.hasChildren,collapsed:i}}processChildren(e){return this.sorter&&(e=[...e].sort(this.sorter.compare.bind(this.sorter))),e}dispose(){this.disposables.dispose(),this.tree.dispose()}}class y2{get element(){return{elements:this.node.element.elements.map(e=>e.element),incompressible:this.node.element.incompressible}}get children(){return this.node.children.map(e=>new y2(e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e){this.node=e}}class yee{constructor(e,t,i,n){this.renderer=e,this.nodeMapper=t,this.compressibleNodeMapperProvider=i,this.onDidChangeTwistieState=n,this.renderedNodes=new Map,this.disposables=[],this.templateId=e.templateId}renderTemplate(e){return{templateData:this.renderer.renderTemplate(e)}}renderElement(e,t,i,n){this.renderer.renderElement(this.nodeMapper.map(e),t,i.templateData,n)}renderCompressedElements(e,t,i,n){this.renderer.renderCompressedElements(this.compressibleNodeMapperProvider().map(e),t,i.templateData,n)}renderTwistie(e,t){return e.slow?(t.classList.add(...Ee.asClassNameArray(ie.treeItemLoading)),!0):(t.classList.remove(...Ee.asClassNameArray(ie.treeItemLoading)),!1)}disposeElement(e,t,i,n){this.renderer.disposeElement?.(this.nodeMapper.map(e),t,i.templateData,n)}disposeCompressedElements(e,t,i,n){this.renderer.disposeCompressedElements?.(this.compressibleNodeMapperProvider().map(e),t,i.templateData,n)}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}dispose(){this.renderedNodes.clear(),this.disposables=xt(this.disposables)}}function See(o){const e=o&&P9(o);return e&&{...e,keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&{...e.keyboardNavigationLabelProvider,getCompressedNodeKeyboardNavigationLabel(t){return o.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(t.map(i=>i.element))}}}}class Lee extends O9{constructor(e,t,i,n,s,r,a={}){super(e,t,i,s,r,a),this.compressionDelegate=n,this.compressibleNodeMapper=new m2(l=>new y2(l)),this.filter=a.filter}createTree(e,t,i,n,s){const r=new _2(i),a=n.map(c=>new yee(c,this.nodeMapper,()=>this.compressibleNodeMapper,this._onDidChangeNodeSlowState.event)),l=See(s)||{};return new A9(e,t,r,a,l)}asTreeElement(e,t){return{incompressible:this.compressionDelegate.isIncompressible(e.element),...super.asTreeElement(e,t)}}updateOptions(e={}){this.tree.updateOptions(e)}render(e,t,i){if(!this.identityProvider)return super.render(e,t);const n=f=>this.identityProvider.getId(f).toString(),s=f=>{const g=new Set;for(const p of f){const _=this.tree.getCompressedTreeNode(p===this.root?null:p);if(_.element)for(const b of _.element.elements)g.add(n(b.element))}return g},r=s(this.tree.getSelection()),a=s(this.tree.getFocus());super.render(e,t,i);const l=this.getSelection();let c=!1;const d=this.getFocus();let h=!1;const u=f=>{const g=f.element;if(g)for(let p=0;p{const i=this.filter.filter(t,1),n=xee(i);if(n===2)throw new Error("Recursive tree visibility not supported in async data compressed trees");return n===1})),super.processChildren(e)}}function xee(o){return typeof o=="boolean"?o?1:0:p2(o)?p_(o.visibility):p_(o)}class kee extends T9{constructor(e,t,i,n,s,r={}){super(e,t,i,n,r),this.user=e,this.dataSource=s,this.identityProvider=r.identityProvider}createModel(e,t,i){return new b2(e,t,i)}}new le("isMac",Ue,m("isMac","Whether the operating system is macOS"));new le("isLinux",Un,m("isLinux","Whether the operating system is Linux"));new le("isWindows",kn,m("isWindows","Whether the operating system is Windows"));const F9=new le("isWeb",Og,m("isWeb","Whether the platform is a web browser"));new le("isMacNative",Ue&&!Og,m("isMacNative","Whether the operating system is macOS on a non-browser platform"));new le("isIOS",Tc,m("isIOS","Whether the operating system is iOS"));new le("isMobile",V5,m("isMobile","Whether the platform is a mobile web browser"));new le("isDevelopment",!1,!0);new le("productQualityType","",m("productQualityType","Quality type of VS Code"));const B9="inputFocus",W9=new le(B9,!1,m("inputFocus","Whether keyboard focus is inside an input box"));var Rl=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Dt=function(o,e){return function(t,i){e(t,i,o)}};const mo=He("listService");class Dee{get lastFocusedList(){return this._lastFocusedWidget}constructor(){this.disposables=new X,this.lists=[],this._lastFocusedWidget=void 0,this._hasCreatedStyleController=!1}setLastFocusedList(e){e!==this._lastFocusedWidget&&(this._lastFocusedWidget?.getHTMLElement().classList.remove("last-focused"),this._lastFocusedWidget=e,this._lastFocusedWidget?.getHTMLElement().classList.add("last-focused"))}register(e,t){if(this._hasCreatedStyleController||(this._hasCreatedStyleController=!0,new A7(Vs(),"").style(hu)),this.lists.some(n=>n.widget===e))throw new Error("Cannot register the same widget multiple times");const i={widget:e,extraContextKeys:t};return this.lists.push(i),M0(e.getHTMLElement())&&this.setLastFocusedList(e),No(e.onDidFocus(()=>this.setLastFocusedList(e)),_e(()=>this.lists.splice(this.lists.indexOf(i),1)),e.onDidDispose(()=>{this.lists=this.lists.filter(n=>n!==i),this._lastFocusedWidget===e&&this.setLastFocusedList(void 0)}))}dispose(){this.disposables.dispose()}}const __=new le("listScrollAtBoundary","none");re.or(__.isEqualTo("top"),__.isEqualTo("both"));re.or(__.isEqualTo("bottom"),__.isEqualTo("both"));const H9=new le("listFocus",!0),V9=new le("treestickyScrollFocused",!1),gy=new le("listSupportsMultiselect",!0),z9=re.and(H9,re.not(B9),V9.negate()),S2=new le("listHasSelectionOrFocus",!1),L2=new le("listDoubleSelection",!1),x2=new le("listMultiSelection",!1),my=new le("listSelectionNavigation",!1),Iee=new le("listSupportsFind",!0),k2=new le("treeElementCanCollapse",!1),Eee=new le("treeElementHasParent",!1),D2=new le("treeElementCanExpand",!1),Nee=new le("treeElementHasChild",!1),Tee=new le("treeFindOpen",!1),U9="listTypeNavigationMode",$9="listAutomaticKeyboardNavigation";function py(o,e){const t=o.createScoped(e.getHTMLElement());return H9.bindTo(t),t}function _y(o,e){const t=__.bindTo(o),i=()=>{const n=e.scrollTop===0,s=e.scrollHeight-e.renderHeight-e.scrollTop<1;n&&s?t.set("both"):n?t.set("top"):s?t.set("bottom"):t.set("none")};return i(),e.onDidScroll(i)}const uu="workbench.list.multiSelectModifier",V1="workbench.list.openMode",ao="workbench.list.horizontalScrolling",I2="workbench.list.defaultFindMode",E2="workbench.list.typeNavigationMode",cv="workbench.list.keyboardNavigation",br="workbench.list.scrollByPage",N2="workbench.list.defaultFindMatchType",b_="workbench.tree.indent",dv="workbench.tree.renderIndentGuides",Cr="workbench.list.smoothScrolling",_a="workbench.list.mouseWheelScrollSensitivity",ba="workbench.list.fastScrollSensitivity",hv="workbench.tree.expandMode",uv="workbench.tree.enableStickyScroll",fv="workbench.tree.stickyScrollMaxItemCount";function Ca(o){return o.getValue(uu)==="alt"}class Mee extends z{constructor(e){super(),this.configurationService=e,this.useAltAsMultipleSelectionModifier=Ca(e),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(e=>{e.affectsConfiguration(uu)&&(this.useAltAsMultipleSelectionModifier=Ca(this.configurationService))}))}isSelectionSingleChangeEvent(e){return this.useAltAsMultipleSelectionModifier?e.browserEvent.altKey:T7(e)}isSelectionRangeChangeEvent(e){return M7(e)}}function by(o,e){const t=o.get(lt),i=o.get(vt),n=new X;return[{...e,keyboardNavigationDelegate:{mightProducePrintableCharacter(r){return i.mightProducePrintableCharacter(r)}},smoothScrolling:!!t.getValue(Cr),mouseWheelScrollSensitivity:t.getValue(_a),fastScrollSensitivity:t.getValue(ba),multipleSelectionController:e.multipleSelectionController??n.add(new Mee(t)),keyboardNavigationEventFilter:Pee(i),scrollByPage:!!t.getValue(br)},n]}let XP=class extends go{constructor(e,t,i,n,s,r,a,l,c){const d=typeof s.horizontalScrolling<"u"?s.horizontalScrolling:!!l.getValue(ao),[h,u]=c.invokeFunction(by,s);super(e,t,i,n,{keyboardSupport:!1,...h,horizontalScrolling:d}),this.disposables.add(u),this.contextKeyService=py(r,this),this.disposables.add(_y(this.contextKeyService,this)),this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(s.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!s.selectionNavigation),this.listHasSelectionOrFocus=S2.bindTo(this.contextKeyService),this.listDoubleSelection=L2.bindTo(this.contextKeyService),this.listMultiSelection=x2.bindTo(this.contextKeyService),this.horizontalScrolling=s.horizontalScrolling,this._useAltAsMultipleSelectionModifier=Ca(l),this.disposables.add(this.contextKeyService),this.disposables.add(a.register(this)),this.updateStyles(s.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{const g=this.getSelection(),p=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(g.length>0||p.length>0),this.listMultiSelection.set(g.length>1),this.listDoubleSelection.set(g.length===2)})})),this.disposables.add(this.onDidChangeFocus(()=>{const g=this.getSelection(),p=this.getFocus();this.listHasSelectionOrFocus.set(g.length>0||p.length>0)})),this.disposables.add(l.onDidChangeConfiguration(g=>{g.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(l));let p={};if(g.affectsConfiguration(ao)&&this.horizontalScrolling===void 0){const _=!!l.getValue(ao);p={...p,horizontalScrolling:_}}if(g.affectsConfiguration(br)){const _=!!l.getValue(br);p={...p,scrollByPage:_}}if(g.affectsConfiguration(Cr)){const _=!!l.getValue(Cr);p={...p,smoothScrolling:_}}if(g.affectsConfiguration(_a)){const _=l.getValue(_a);p={...p,mouseWheelScrollSensitivity:_}}if(g.affectsConfiguration(ba)){const _=l.getValue(ba);p={...p,fastScrollSensitivity:_}}Object.keys(p).length>0&&this.updateOptions(p)})),this.navigator=new K9(this,{configurationService:l,...s}),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?$g(e):hu)}};XP=Rl([Dt(5,De),Dt(6,mo),Dt(7,lt),Dt(8,ke)],XP);let JP=class extends FJ{constructor(e,t,i,n,s,r,a,l,c){const d=typeof s.horizontalScrolling<"u"?s.horizontalScrolling:!!l.getValue(ao),[h,u]=c.invokeFunction(by,s);super(e,t,i,n,{keyboardSupport:!1,...h,horizontalScrolling:d}),this.disposables=new X,this.disposables.add(u),this.contextKeyService=py(r,this),this.disposables.add(_y(this.contextKeyService,this.widget)),this.horizontalScrolling=s.horizontalScrolling,this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(s.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!s.selectionNavigation),this._useAltAsMultipleSelectionModifier=Ca(l),this.disposables.add(this.contextKeyService),this.disposables.add(a.register(this)),this.updateStyles(s.overrideStyles),this.disposables.add(l.onDidChangeConfiguration(g=>{g.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(l));let p={};if(g.affectsConfiguration(ao)&&this.horizontalScrolling===void 0){const _=!!l.getValue(ao);p={...p,horizontalScrolling:_}}if(g.affectsConfiguration(br)){const _=!!l.getValue(br);p={...p,scrollByPage:_}}if(g.affectsConfiguration(Cr)){const _=!!l.getValue(Cr);p={...p,smoothScrolling:_}}if(g.affectsConfiguration(_a)){const _=l.getValue(_a);p={...p,mouseWheelScrollSensitivity:_}}if(g.affectsConfiguration(ba)){const _=l.getValue(ba);p={...p,fastScrollSensitivity:_}}Object.keys(p).length>0&&this.updateOptions(p)})),this.navigator=new K9(this,{configurationService:l,...s}),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?$g(e):hu)}dispose(){this.disposables.dispose(),super.dispose()}};JP=Rl([Dt(5,De),Dt(6,mo),Dt(7,lt),Dt(8,ke)],JP);let eO=class extends FD{constructor(e,t,i,n,s,r,a,l,c,d){const h=typeof r.horizontalScrolling<"u"?r.horizontalScrolling:!!c.getValue(ao),[u,f]=d.invokeFunction(by,r);super(e,t,i,n,s,{keyboardSupport:!1,...u,horizontalScrolling:h}),this.disposables.add(f),this.contextKeyService=py(a,this),this.disposables.add(_y(this.contextKeyService,this)),this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(r.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!r.selectionNavigation),this.listHasSelectionOrFocus=S2.bindTo(this.contextKeyService),this.listDoubleSelection=L2.bindTo(this.contextKeyService),this.listMultiSelection=x2.bindTo(this.contextKeyService),this.horizontalScrolling=r.horizontalScrolling,this._useAltAsMultipleSelectionModifier=Ca(c),this.disposables.add(this.contextKeyService),this.disposables.add(l.register(this)),this.updateStyles(r.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{const p=this.getSelection(),_=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(p.length>0||_.length>0),this.listMultiSelection.set(p.length>1),this.listDoubleSelection.set(p.length===2)})})),this.disposables.add(this.onDidChangeFocus(()=>{const p=this.getSelection(),_=this.getFocus();this.listHasSelectionOrFocus.set(p.length>0||_.length>0)})),this.disposables.add(c.onDidChangeConfiguration(p=>{p.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(c));let _={};if(p.affectsConfiguration(ao)&&this.horizontalScrolling===void 0){const b=!!c.getValue(ao);_={..._,horizontalScrolling:b}}if(p.affectsConfiguration(br)){const b=!!c.getValue(br);_={..._,scrollByPage:b}}if(p.affectsConfiguration(Cr)){const b=!!c.getValue(Cr);_={..._,smoothScrolling:b}}if(p.affectsConfiguration(_a)){const b=c.getValue(_a);_={..._,mouseWheelScrollSensitivity:b}}if(p.affectsConfiguration(ba)){const b=c.getValue(ba);_={..._,fastScrollSensitivity:b}}Object.keys(_).length>0&&this.updateOptions(_)})),this.navigator=new Ree(this,{configurationService:c,...r}),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?$g(e):hu)}dispose(){this.disposables.dispose(),super.dispose()}};eO=Rl([Dt(6,De),Dt(7,mo),Dt(8,lt),Dt(9,ke)],eO);class T2 extends z{constructor(e,t){super(),this.widget=e,this._onDidOpen=this._register(new A),this.onDidOpen=this._onDidOpen.event,this._register(J.filter(this.widget.onDidChangeSelection,i=>Qa(i.browserEvent))(i=>this.onSelectionFromKeyboard(i))),this._register(this.widget.onPointer(i=>this.onPointer(i.element,i.browserEvent))),this._register(this.widget.onMouseDblClick(i=>this.onMouseDblClick(i.element,i.browserEvent))),typeof t?.openOnSingleClick!="boolean"&&t?.configurationService?(this.openOnSingleClick=t?.configurationService.getValue(V1)!=="doubleClick",this._register(t?.configurationService.onDidChangeConfiguration(i=>{i.affectsConfiguration(V1)&&(this.openOnSingleClick=t?.configurationService.getValue(V1)!=="doubleClick")}))):this.openOnSingleClick=t?.openOnSingleClick??!0}onSelectionFromKeyboard(e){if(e.elements.length!==1)return;const t=e.browserEvent,i=typeof t.preserveFocus=="boolean"?t.preserveFocus:!0,n=typeof t.pinned=="boolean"?t.pinned:!i;this._open(this.getSelectedElement(),i,n,!1,e.browserEvent)}onPointer(e,t){if(!this.openOnSingleClick||t.detail===2)return;const n=t.button===1,s=!0,r=n,a=t.ctrlKey||t.metaKey||t.altKey;this._open(e,s,r,a,t)}onMouseDblClick(e,t){if(!t)return;const i=t.target;if(i.classList.contains("monaco-tl-twistie")||i.classList.contains("monaco-icon-label")&&i.classList.contains("folder-icon")&&t.offsetX<16)return;const s=!1,r=!0,a=t.ctrlKey||t.metaKey||t.altKey;this._open(e,s,r,a,t)}_open(e,t,i,n,s){e&&this._onDidOpen.fire({editorOptions:{preserveFocus:t,pinned:i,revealIfVisible:!0},sideBySide:n,element:e,browserEvent:s})}}class K9 extends T2{constructor(e,t){super(e,t),this.widget=e}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class Ree extends T2{constructor(e,t){super(e,t)}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class Aee extends T2{constructor(e,t){super(e,t)}getSelectedElement(){return this.widget.getSelection()[0]??void 0}}function Pee(o){let e=!1;return t=>{if(t.toKeyCodeChord().isModifierKey())return!1;if(e)return e=!1,!1;const i=o.softDispatch(t,t.target);return i.kind===1?(e=!0,!1):(e=!1,i.kind===0)}}let zD=class extends v2{constructor(e,t,i,n,s,r,a,l,c){const{options:d,getTypeNavigationMode:h,disposable:u}=r.invokeFunction(sb,s);super(e,t,i,n,d),this.disposables.add(u),this.internals=new $h(this,s,h,s.overrideStyles,a,l,c),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};zD=Rl([Dt(5,ke),Dt(6,De),Dt(7,mo),Dt(8,lt)],zD);let tO=class extends A9{constructor(e,t,i,n,s,r,a,l,c){const{options:d,getTypeNavigationMode:h,disposable:u}=r.invokeFunction(sb,s);super(e,t,i,n,d),this.disposables.add(u),this.internals=new $h(this,s,h,s.overrideStyles,a,l,c),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};tO=Rl([Dt(5,ke),Dt(6,De),Dt(7,mo),Dt(8,lt)],tO);let iO=class extends kee{constructor(e,t,i,n,s,r,a,l,c,d){const{options:h,getTypeNavigationMode:u,disposable:f}=a.invokeFunction(sb,r);super(e,t,i,n,s,h),this.disposables.add(f),this.internals=new $h(this,r,u,r.overrideStyles,l,c,d),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles!==void 0&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};iO=Rl([Dt(6,ke),Dt(7,De),Dt(8,mo),Dt(9,lt)],iO);let UD=class extends O9{get onDidOpen(){return this.internals.onDidOpen}constructor(e,t,i,n,s,r,a,l,c,d){const{options:h,getTypeNavigationMode:u,disposable:f}=a.invokeFunction(sb,r);super(e,t,i,n,s,h),this.disposables.add(f),this.internals=new $h(this,r,u,r.overrideStyles,l,c,d),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};UD=Rl([Dt(6,ke),Dt(7,De),Dt(8,mo),Dt(9,lt)],UD);let nO=class extends Lee{constructor(e,t,i,n,s,r,a,l,c,d,h){const{options:u,getTypeNavigationMode:f,disposable:g}=l.invokeFunction(sb,a);super(e,t,i,n,s,r,u),this.disposables.add(g),this.internals=new $h(this,a,f,a.overrideStyles,c,d,h),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};nO=Rl([Dt(7,ke),Dt(8,De),Dt(9,mo),Dt(10,lt)],nO);function j9(o){const e=o.getValue(I2);if(e==="highlight")return dl.Highlight;if(e==="filter")return dl.Filter;const t=o.getValue(cv);if(t==="simple"||t==="highlight")return dl.Highlight;if(t==="filter")return dl.Filter}function q9(o){const e=o.getValue(N2);if(e==="fuzzy")return Uh.Fuzzy;if(e==="contiguous")return Uh.Contiguous}function sb(o,e){const t=o.get(lt),i=o.get(lu),n=o.get(De),s=o.get(ke),r=()=>{const u=n.getContextKeyValue(U9);if(u==="automatic")return Qr.Automatic;if(u==="trigger"||n.getContextKeyValue($9)===!1)return Qr.Trigger;const g=t.getValue(E2);if(g==="automatic")return Qr.Automatic;if(g==="trigger")return Qr.Trigger},a=e.horizontalScrolling!==void 0?e.horizontalScrolling:!!t.getValue(ao),[l,c]=s.invokeFunction(by,e),d=e.paddingBottom,h=e.renderIndentGuides!==void 0?e.renderIndentGuides:t.getValue(dv);return{getTypeNavigationMode:r,disposable:c,options:{keyboardSupport:!1,...l,indent:typeof t.getValue(b_)=="number"?t.getValue(b_):void 0,renderIndentGuides:h,smoothScrolling:!!t.getValue(Cr),defaultFindMode:j9(t),defaultFindMatchType:q9(t),horizontalScrolling:a,scrollByPage:!!t.getValue(br),paddingBottom:d,hideTwistiesOfChildlessElements:e.hideTwistiesOfChildlessElements,expandOnlyOnTwistieClick:e.expandOnlyOnTwistieClick??t.getValue(hv)==="doubleClick",contextViewProvider:i,findWidgetStyles:FY,enableStickyScroll:!!t.getValue(uv),stickyScrollMaxItemCount:Number(t.getValue(fv))}}}let $h=class{get onDidOpen(){return this.navigator.onDidOpen}constructor(e,t,i,n,s,r,a){this.tree=e,this.disposables=[],this.contextKeyService=py(s,e),this.disposables.push(_y(this.contextKeyService,e)),this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(t.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!t.selectionNavigation),this.listSupportFindWidget=Iee.bindTo(this.contextKeyService),this.listSupportFindWidget.set(t.findWidgetEnabled??!0),this.hasSelectionOrFocus=S2.bindTo(this.contextKeyService),this.hasDoubleSelection=L2.bindTo(this.contextKeyService),this.hasMultiSelection=x2.bindTo(this.contextKeyService),this.treeElementCanCollapse=k2.bindTo(this.contextKeyService),this.treeElementHasParent=Eee.bindTo(this.contextKeyService),this.treeElementCanExpand=D2.bindTo(this.contextKeyService),this.treeElementHasChild=Nee.bindTo(this.contextKeyService),this.treeFindOpen=Tee.bindTo(this.contextKeyService),this.treeStickyScrollFocused=V9.bindTo(this.contextKeyService),this._useAltAsMultipleSelectionModifier=Ca(a),this.updateStyleOverrides(n);const c=()=>{const h=e.getFocus()[0];if(!h)return;const u=e.getNode(h);this.treeElementCanCollapse.set(u.collapsible&&!u.collapsed),this.treeElementHasParent.set(!!e.getParentElement(h)),this.treeElementCanExpand.set(u.collapsible&&u.collapsed),this.treeElementHasChild.set(!!e.getFirstElementChild(h))},d=new Set;d.add(U9),d.add($9),this.disposables.push(this.contextKeyService,r.register(e),e.onDidChangeSelection(()=>{const h=e.getSelection(),u=e.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.hasSelectionOrFocus.set(h.length>0||u.length>0),this.hasMultiSelection.set(h.length>1),this.hasDoubleSelection.set(h.length===2)})}),e.onDidChangeFocus(()=>{const h=e.getSelection(),u=e.getFocus();this.hasSelectionOrFocus.set(h.length>0||u.length>0),c()}),e.onDidChangeCollapseState(c),e.onDidChangeModel(c),e.onDidChangeFindOpenState(h=>this.treeFindOpen.set(h)),e.onDidChangeStickyScrollFocused(h=>this.treeStickyScrollFocused.set(h)),a.onDidChangeConfiguration(h=>{let u={};if(h.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(a)),h.affectsConfiguration(b_)){const f=a.getValue(b_);u={...u,indent:f}}if(h.affectsConfiguration(dv)&&t.renderIndentGuides===void 0){const f=a.getValue(dv);u={...u,renderIndentGuides:f}}if(h.affectsConfiguration(Cr)){const f=!!a.getValue(Cr);u={...u,smoothScrolling:f}}if(h.affectsConfiguration(I2)||h.affectsConfiguration(cv)){const f=j9(a);u={...u,defaultFindMode:f}}if(h.affectsConfiguration(E2)||h.affectsConfiguration(cv)){const f=i();u={...u,typeNavigationMode:f}}if(h.affectsConfiguration(N2)){const f=q9(a);u={...u,defaultFindMatchType:f}}if(h.affectsConfiguration(ao)&&t.horizontalScrolling===void 0){const f=!!a.getValue(ao);u={...u,horizontalScrolling:f}}if(h.affectsConfiguration(br)){const f=!!a.getValue(br);u={...u,scrollByPage:f}}if(h.affectsConfiguration(hv)&&t.expandOnlyOnTwistieClick===void 0&&(u={...u,expandOnlyOnTwistieClick:a.getValue(hv)==="doubleClick"}),h.affectsConfiguration(uv)){const f=a.getValue(uv);u={...u,enableStickyScroll:f}}if(h.affectsConfiguration(fv)){const f=Math.max(1,a.getValue(fv));u={...u,stickyScrollMaxItemCount:f}}if(h.affectsConfiguration(_a)){const f=a.getValue(_a);u={...u,mouseWheelScrollSensitivity:f}}if(h.affectsConfiguration(ba)){const f=a.getValue(ba);u={...u,fastScrollSensitivity:f}}Object.keys(u).length>0&&e.updateOptions(u)}),this.contextKeyService.onDidChangeContext(h=>{h.affectsSome(d)&&e.updateOptions({typeNavigationMode:i()})})),this.navigator=new Aee(e,{configurationService:a,...t}),this.disposables.push(this.navigator)}updateOptions(e){e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyleOverrides(e){this.tree.style(e?$g(e):hu)}dispose(){this.disposables=xt(this.disposables)}};$h=Rl([Dt(4,De),Dt(5,mo),Dt(6,lt)],$h);const Oee=Bi.as(su.Configuration);Oee.registerConfiguration({id:"workbench",order:7,title:m("workbenchConfigurationTitle","Workbench"),type:"object",properties:{[uu]:{type:"string",enum:["ctrlCmd","alt"],markdownEnumDescriptions:[m("multiSelectModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),m("multiSelectModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],default:"ctrlCmd",description:m({key:"multiSelectModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add an item in trees and lists to a multi-selection with the mouse (for example in the explorer, open editors and scm view). The 'Open to Side' mouse gestures - if supported - will adapt such that they do not conflict with the multiselect modifier.")},[V1]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:m({key:"openModeModifier",comment:["`singleClick` and `doubleClick` refers to a value the setting can take and should not be localized."]},"Controls how to open items in trees and lists using the mouse (if supported). Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[ao]:{type:"boolean",default:!1,description:m("horizontalScrolling setting","Controls whether lists and trees support horizontal scrolling in the workbench. Warning: turning on this setting has a performance implication.")},[br]:{type:"boolean",default:!1,description:m("list.scrollByPage","Controls whether clicks in the scrollbar scroll page by page.")},[b_]:{type:"number",default:8,minimum:4,maximum:40,description:m("tree indent setting","Controls tree indentation in pixels.")},[dv]:{type:"string",enum:["none","onHover","always"],default:"onHover",description:m("render tree indent guides","Controls whether the tree should render indent guides.")},[Cr]:{type:"boolean",default:!1,description:m("list smoothScrolling setting","Controls whether lists and trees have smooth scrolling.")},[_a]:{type:"number",default:1,markdownDescription:m("Mouse Wheel Scroll Sensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")},[ba]:{type:"number",default:5,markdownDescription:m("Fast Scroll Sensitivity","Scrolling speed multiplier when pressing `Alt`.")},[I2]:{type:"string",enum:["highlight","filter"],enumDescriptions:[m("defaultFindModeSettingKey.highlight","Highlight elements when searching. Further up and down navigation will traverse only the highlighted elements."),m("defaultFindModeSettingKey.filter","Filter elements when searching.")],default:"highlight",description:m("defaultFindModeSettingKey","Controls the default find mode for lists and trees in the workbench.")},[cv]:{type:"string",enum:["simple","highlight","filter"],enumDescriptions:[m("keyboardNavigationSettingKey.simple","Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes."),m("keyboardNavigationSettingKey.highlight","Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements."),m("keyboardNavigationSettingKey.filter","Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.")],default:"highlight",description:m("keyboardNavigationSettingKey","Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter."),deprecated:!0,deprecationMessage:m("keyboardNavigationSettingKeyDeprecated","Please use 'workbench.list.defaultFindMode' and 'workbench.list.typeNavigationMode' instead.")},[N2]:{type:"string",enum:["fuzzy","contiguous"],enumDescriptions:[m("defaultFindMatchTypeSettingKey.fuzzy","Use fuzzy matching when searching."),m("defaultFindMatchTypeSettingKey.contiguous","Use contiguous matching when searching.")],default:"fuzzy",description:m("defaultFindMatchTypeSettingKey","Controls the type of matching used when searching lists and trees in the workbench.")},[hv]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:m("expand mode","Controls how tree folders are expanded when clicking the folder names. Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[uv]:{type:"boolean",default:!0,description:m("sticky scroll","Controls whether sticky scrolling is enabled in trees.")},[fv]:{type:"number",minimum:1,default:7,markdownDescription:m("sticky scroll maximum items","Controls the number of sticky elements displayed in the tree when {0} is enabled.","`#workbench.tree.enableStickyScroll#`")},[E2]:{type:"string",enum:["automatic","trigger"],default:"automatic",markdownDescription:m("typeNavigationMode2","Controls how type navigation works in lists and trees in the workbench. When set to `trigger`, type navigation begins once the `list.triggerTypeNavigation` command is run.")}}});class _c extends z{constructor(e,t){super(),this.options=t,this.text="",this.title="",this.highlights=[],this.didEverRender=!1,this.supportIcons=t?.supportIcons??!1,this.domNode=Z(e,ce("span.monaco-highlighted-label"))}get element(){return this.domNode}set(e,t=[],i="",n){e||(e=""),n&&(e=_c.escapeNewLines(e,t)),!(this.didEverRender&&this.text===e&&this.title===i&&as(this.highlights,t))&&(this.text=e,this.title=i,this.highlights=t,this.render())}render(){const e=[];let t=0;for(const i of this.highlights){if(i.end===i.start)continue;if(t{n=s===`\r +`?-1:0,r+=i;for(const a of t)a.end<=r||(a.start>=r&&(a.start+=n),a.end>=r&&(a.end+=n));return i+=n,"⏎"})}}class Cm{constructor(e){this._element=e}get element(){return this._element}set textContent(e){this.disposed||e===this._textContent||(this._textContent=e,this._element.textContent=e)}set classNames(e){this.disposed||as(e,this._classNames)||(this._classNames=e,this._element.classList.value="",this._element.classList.add(...e))}set empty(e){this.disposed||e===this._empty||(this._empty=e,this._element.style.marginLeft=e?"0":"")}dispose(){this.disposed=!0}}class gv extends z{constructor(e,t){super(),this.customHovers=new Map,this.creationOptions=t,this.domNode=this._register(new Cm(Z(e,ce(".monaco-icon-label")))),this.labelContainer=Z(this.domNode.element,ce(".monaco-icon-label-container")),this.nameContainer=Z(this.labelContainer,ce("span.monaco-icon-name-container")),t?.supportHighlights||t?.supportIcons?this.nameNode=this._register(new Wee(this.nameContainer,!!t.supportIcons)):this.nameNode=new Fee(this.nameContainer),this.hoverDelegate=t?.hoverDelegate??Ks("mouse")}get element(){return this.domNode.element}setLabel(e,t,i){const n=["monaco-icon-label"],s=["monaco-icon-label-container"];let r="";i&&(i.extraClasses&&n.push(...i.extraClasses),i.italic&&n.push("italic"),i.strikethrough&&n.push("strikethrough"),i.disabledCommand&&s.push("disabled"),i.title&&(typeof i.title=="string"?r+=i.title:r+=e));const a=this.domNode.element.querySelector(".monaco-icon-label-iconpath");if(i?.iconPath){let l;!a||!Ei(a)?(l=ce(".monaco-icon-label-iconpath"),this.domNode.element.prepend(l)):l=a,l.style.backgroundImage=Dl(i?.iconPath)}else a&&a.remove();if(this.domNode.classNames=n,this.domNode.element.setAttribute("aria-label",r),this.labelContainer.classList.value="",this.labelContainer.classList.add(...s),this.setupHover(i?.descriptionTitle?this.labelContainer:this.element,i?.title),this.nameNode.setLabel(e,i),t||this.descriptionNode){const l=this.getOrCreateDescriptionNode();l instanceof _c?(l.set(t||"",i?i.descriptionMatches:void 0,void 0,i?.labelEscapeNewLines),this.setupHover(l.element,i?.descriptionTitle)):(l.textContent=t&&i?.labelEscapeNewLines?_c.escapeNewLines(t,[]):t||"",this.setupHover(l.element,i?.descriptionTitle||""),l.empty=!t)}if(i?.suffix||this.suffixNode){const l=this.getOrCreateSuffixNode();l.textContent=i?.suffix??""}}setupHover(e,t){const i=this.customHovers.get(e);if(i&&(i.dispose(),this.customHovers.delete(e)),!t){e.removeAttribute("title");return}if(this.hoverDelegate.showNativeHover)(function(s,r){Os(r)?s.title=f7(r):r?.markdownNotSupportedFallback?s.title=r.markdownNotSupportedFallback:s.removeAttribute("title")})(e,t);else{const n=La().setupManagedHover(this.hoverDelegate,e,t);n&&this.customHovers.set(e,n)}}dispose(){super.dispose();for(const e of this.customHovers.values())e.dispose();this.customHovers.clear()}getOrCreateSuffixNode(){if(!this.suffixNode){const e=this._register(new Cm(NV(this.nameContainer,ce("span.monaco-icon-suffix-container"))));this.suffixNode=this._register(new Cm(Z(e.element,ce("span.label-suffix"))))}return this.suffixNode}getOrCreateDescriptionNode(){if(!this.descriptionNode){const e=this._register(new Cm(Z(this.labelContainer,ce("span.monaco-icon-description-container"))));this.creationOptions?.supportDescriptionHighlights?this.descriptionNode=this._register(new _c(Z(e.element,ce("span.label-description")),{supportIcons:!!this.creationOptions.supportIcons})):this.descriptionNode=this._register(new Cm(Z(e.element,ce("span.label-description"))))}return this.descriptionNode}}class Fee{constructor(e){this.container=e,this.label=void 0,this.singleLabel=void 0}setLabel(e,t){if(!(this.label===e&&as(this.options,t)))if(this.label=e,this.options=t,typeof e=="string")this.singleLabel||(this.container.innerText="",this.container.classList.remove("multiple"),this.singleLabel=Z(this.container,ce("a.label-name",{id:t?.domId}))),this.singleLabel.textContent=e;else{this.container.innerText="",this.container.classList.add("multiple"),this.singleLabel=void 0;for(let i=0;i{const s={start:i,end:i+n.length},r=t.map(a=>Yi.intersect(s,a)).filter(a=>!Yi.isEmpty(a)).map(({start:a,end:l})=>({start:a-i,end:l-i}));return i=s.end+e.length,r})}class Wee extends z{constructor(e,t){super(),this.container=e,this.supportIcons=t,this.label=void 0,this.singleLabel=void 0}setLabel(e,t){if(!(this.label===e&&as(this.options,t)))if(this.label=e,this.options=t,typeof e=="string")this.singleLabel||(this.container.innerText="",this.container.classList.remove("multiple"),this.singleLabel=this._register(new _c(Z(this.container,ce("a.label-name",{id:t?.domId})),{supportIcons:this.supportIcons}))),this.singleLabel.set(e,t?.matches,void 0,t?.labelEscapeNewLines);else{this.container.innerText="",this.container.classList.add("multiple"),this.singleLabel=void 0;const i=t?.separator||"/",n=Bee(e,i,t?.matches);for(let s=0;s{const o=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});return{collator:o,collatorIsNumeric:o.resolvedOptions().numeric}});function Vee(o,e,t=!1){const i=o||"",n=e||"",s=sO.value.collator.compare(i,n);return sO.value.collatorIsNumeric&&s===0&&i!==n?in.length)return 1}return 0}var Cy=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},$D=function(o,e){return function(t,i){e(t,i,o)}},KD;const qo=ce;class G9{constructor(e,t,i){this.index=e,this.hasCheckbox=t,this._hidden=!1,this._init=new ua(()=>{const n=i.label??"",s=Tm(n).text.trim(),r=i.ariaLabel||[n,this.saneDescription,this.saneDetail].map(a=>qq(a)).filter(a=>!!a).join(", ");return{saneLabel:n,saneSortLabel:s,saneAriaLabel:r}}),this._saneDescription=i.description,this._saneTooltip=i.tooltip}get saneLabel(){return this._init.value.saneLabel}get saneSortLabel(){return this._init.value.saneSortLabel}get saneAriaLabel(){return this._init.value.saneAriaLabel}get element(){return this._element}set element(e){this._element=e}get hidden(){return this._hidden}set hidden(e){this._hidden=e}get saneDescription(){return this._saneDescription}set saneDescription(e){this._saneDescription=e}get saneDetail(){return this._saneDetail}set saneDetail(e){this._saneDetail=e}get saneTooltip(){return this._saneTooltip}set saneTooltip(e){this._saneTooltip=e}get labelHighlights(){return this._labelHighlights}set labelHighlights(e){this._labelHighlights=e}get descriptionHighlights(){return this._descriptionHighlights}set descriptionHighlights(e){this._descriptionHighlights=e}get detailHighlights(){return this._detailHighlights}set detailHighlights(e){this._detailHighlights=e}}class zi extends G9{constructor(e,t,i,n,s,r){super(e,t,s),this.fireButtonTriggered=i,this._onChecked=n,this.item=s,this._separator=r,this._checked=!1,this.onChecked=t?J.map(J.filter(this._onChecked.event,a=>a.element===this),a=>a.checked):J.None,this._saneDetail=s.detail,this._labelHighlights=s.highlights?.label,this._descriptionHighlights=s.highlights?.description,this._detailHighlights=s.highlights?.detail}get separator(){return this._separator}set separator(e){this._separator=e}get checked(){return this._checked}set checked(e){e!==this._checked&&(this._checked=e,this._onChecked.fire({element:this,checked:e}))}get checkboxDisabled(){return!!this.item.disabled}}var qr;(function(o){o[o.NONE=0]="NONE",o[o.MOUSE_HOVER=1]="MOUSE_HOVER",o[o.ACTIVE_ITEM=2]="ACTIVE_ITEM"})(qr||(qr={}));class fd extends G9{constructor(e,t,i){super(e,!1,i),this.fireSeparatorButtonTriggered=t,this.separator=i,this.children=new Array,this.focusInsideSeparator=qr.NONE}}class $ee{getHeight(e){return e instanceof fd?30:e.saneDetail?44:22}getTemplateId(e){return e instanceof zi?mv.ID:pv.ID}}class Kee{getWidgetAriaLabel(){return m("quickInput","Quick Input")}getAriaLabel(e){return e.separator?.label?`${e.saneAriaLabel}, ${e.separator.label}`:e.saneAriaLabel}getWidgetRole(){return"listbox"}getRole(e){return e.hasCheckbox?"checkbox":"option"}isChecked(e){if(!(!e.hasCheckbox||!(e instanceof zi)))return{get value(){return e.checked},onDidChange:t=>e.onChecked(()=>t())}}}class Z9{constructor(e){this.hoverDelegate=e}renderTemplate(e){const t=Object.create(null);t.toDisposeElement=new X,t.toDisposeTemplate=new X,t.entry=Z(e,qo(".quick-input-list-entry"));const i=Z(t.entry,qo("label.quick-input-list-label"));t.toDisposeTemplate.add(jt(i,ee.CLICK,c=>{t.checkbox.offsetParent||c.preventDefault()})),t.checkbox=Z(i,qo("input.quick-input-list-checkbox")),t.checkbox.type="checkbox";const n=Z(i,qo(".quick-input-list-rows")),s=Z(n,qo(".quick-input-list-row")),r=Z(n,qo(".quick-input-list-row"));t.label=new gv(s,{supportHighlights:!0,supportDescriptionHighlights:!0,supportIcons:!0,hoverDelegate:this.hoverDelegate}),t.toDisposeTemplate.add(t.label),t.icon=iT(t.label.element,qo(".quick-input-list-icon"));const a=Z(s,qo(".quick-input-list-entry-keybinding"));t.keybinding=new ob(a,Ns),t.toDisposeTemplate.add(t.keybinding);const l=Z(r,qo(".quick-input-list-label-meta"));return t.detail=new gv(l,{supportHighlights:!0,supportIcons:!0,hoverDelegate:this.hoverDelegate}),t.toDisposeTemplate.add(t.detail),t.separator=Z(t.entry,qo(".quick-input-list-separator")),t.actionBar=new oo(t.entry,this.hoverDelegate?{hoverDelegate:this.hoverDelegate}:void 0),t.actionBar.domNode.classList.add("quick-input-list-entry-action-bar"),t.toDisposeTemplate.add(t.actionBar),t}disposeTemplate(e){e.toDisposeElement.dispose(),e.toDisposeTemplate.dispose()}disposeElement(e,t,i){i.toDisposeElement.clear(),i.actionBar.clear()}}var rh;let mv=(rh=class extends Z9{constructor(e,t){super(e),this.themeService=t,this._itemsWithSeparatorsFrequency=new Map}get templateId(){return KD.ID}renderTemplate(e){const t=super.renderTemplate(e);return t.toDisposeTemplate.add(jt(t.checkbox,ee.CHANGE,i=>{t.element.checked=t.checkbox.checked})),t}renderElement(e,t,i){const n=e.element;i.element=n,n.element=i.entry??void 0;const s=n.item;i.checkbox.checked=n.checked,i.toDisposeElement.add(n.onChecked(u=>i.checkbox.checked=u)),i.checkbox.disabled=n.checkboxDisabled;const{labelHighlights:r,descriptionHighlights:a,detailHighlights:l}=n;if(s.iconPath){const u=j0(this.themeService.getColorTheme().type)?s.iconPath.dark:s.iconPath.light??s.iconPath.dark,f=ve.revive(u);i.icon.className="quick-input-list-icon",i.icon.style.backgroundImage=Dl(f)}else i.icon.style.backgroundImage="",i.icon.className=s.iconClass?`quick-input-list-icon ${s.iconClass}`:"";let c;!n.saneTooltip&&n.saneDescription&&(c={markdown:{value:n.saneDescription,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDescription});const d={matches:r||[],descriptionTitle:c,descriptionMatches:a||[],labelEscapeNewLines:!0};if(d.extraClasses=s.iconClasses,d.italic=s.italic,d.strikethrough=s.strikethrough,i.entry.classList.remove("quick-input-list-separator-as-item"),i.label.setLabel(n.saneLabel,n.saneDescription,d),i.keybinding.set(s.keybinding),n.saneDetail){let u;n.saneTooltip||(u={markdown:{value:n.saneDetail,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDetail}),i.detail.element.style.display="",i.detail.setLabel(n.saneDetail,void 0,{matches:l,title:u,labelEscapeNewLines:!0})}else i.detail.element.style.display="none";n.separator?.label?(i.separator.textContent=n.separator.label,i.separator.style.display="",this.addItemWithSeparator(n)):i.separator.style.display="none",i.entry.classList.toggle("quick-input-list-separator-border",!!n.separator);const h=s.buttons;h&&h.length?(i.actionBar.push(h.map((u,f)=>rp(u,`id-${f}`,()=>n.fireButtonTriggered({button:u,item:n.item}))),{icon:!0,label:!1}),i.entry.classList.add("has-actions")):i.entry.classList.remove("has-actions")}disposeElement(e,t,i){this.removeItemWithSeparator(e.element),super.disposeElement(e,t,i)}isItemWithSeparatorVisible(e){return this._itemsWithSeparatorsFrequency.has(e)}addItemWithSeparator(e){this._itemsWithSeparatorsFrequency.set(e,(this._itemsWithSeparatorsFrequency.get(e)||0)+1)}removeItemWithSeparator(e){const t=this._itemsWithSeparatorsFrequency.get(e)||0;t>1?this._itemsWithSeparatorsFrequency.set(e,t-1):this._itemsWithSeparatorsFrequency.delete(e)}},KD=rh,rh.ID="quickpickitem",rh);mv=KD=Cy([$D(1,en)],mv);const Uw=class Uw extends Z9{constructor(){super(...arguments),this._visibleSeparatorsFrequency=new Map}get templateId(){return Uw.ID}get visibleSeparators(){return[...this._visibleSeparatorsFrequency.keys()]}isSeparatorVisible(e){return this._visibleSeparatorsFrequency.has(e)}renderTemplate(e){const t=super.renderTemplate(e);return t.checkbox.style.display="none",t}renderElement(e,t,i){const n=e.element;i.element=n,n.element=i.entry??void 0,n.element.classList.toggle("focus-inside",!!n.focusInsideSeparator);const s=n.separator,{labelHighlights:r,descriptionHighlights:a,detailHighlights:l}=n;i.icon.style.backgroundImage="",i.icon.className="";let c;!n.saneTooltip&&n.saneDescription&&(c={markdown:{value:n.saneDescription,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDescription});const d={matches:r||[],descriptionTitle:c,descriptionMatches:a||[],labelEscapeNewLines:!0};if(i.entry.classList.add("quick-input-list-separator-as-item"),i.label.setLabel(n.saneLabel,n.saneDescription,d),n.saneDetail){let u;n.saneTooltip||(u={markdown:{value:n.saneDetail,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDetail}),i.detail.element.style.display="",i.detail.setLabel(n.saneDetail,void 0,{matches:l,title:u,labelEscapeNewLines:!0})}else i.detail.element.style.display="none";i.separator.style.display="none",i.entry.classList.add("quick-input-list-separator-border");const h=s.buttons;h&&h.length?(i.actionBar.push(h.map((u,f)=>rp(u,`id-${f}`,()=>n.fireSeparatorButtonTriggered({button:u,separator:n.separator}))),{icon:!0,label:!1}),i.entry.classList.add("has-actions")):i.entry.classList.remove("has-actions"),this.addSeparator(n)}disposeElement(e,t,i){this.removeSeparator(e.element),this.isSeparatorVisible(e.element)||e.element.element?.classList.remove("focus-inside"),super.disposeElement(e,t,i)}addSeparator(e){this._visibleSeparatorsFrequency.set(e,(this._visibleSeparatorsFrequency.get(e)||0)+1)}removeSeparator(e){const t=this._visibleSeparatorsFrequency.get(e)||0;t>1?this._visibleSeparatorsFrequency.set(e,t-1):this._visibleSeparatorsFrequency.delete(e)}};Uw.ID="quickpickseparator";let pv=Uw,C_=class extends z{constructor(e,t,i,n,s,r){super(),this.parent=e,this.hoverDelegate=t,this.linkOpenerDelegate=i,this.accessibilityService=r,this._onKeyDown=new A,this._onLeave=new A,this.onLeave=this._onLeave.event,this._visibleCountObservable=Ge("VisibleCount",0),this.onChangedVisibleCount=J.fromObservable(this._visibleCountObservable,this._store),this._allVisibleCheckedObservable=Ge("AllVisibleChecked",!1),this.onChangedAllVisibleChecked=J.fromObservable(this._allVisibleCheckedObservable,this._store),this._checkedCountObservable=Ge("CheckedCount",0),this.onChangedCheckedCount=J.fromObservable(this._checkedCountObservable,this._store),this._checkedElementsObservable=iD({equalsFn:li},new Array),this.onChangedCheckedElements=J.fromObservable(this._checkedElementsObservable,this._store),this._onButtonTriggered=new A,this.onButtonTriggered=this._onButtonTriggered.event,this._onSeparatorButtonTriggered=new A,this.onSeparatorButtonTriggered=this._onSeparatorButtonTriggered.event,this._elementChecked=new A,this._elementCheckedEventBufferer=new W_,this._hasCheckboxes=!1,this._inputElements=new Array,this._elementTree=new Array,this._itemElements=new Array,this._elementDisposable=this._register(new X),this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._matchOnLabelMode="fuzzy",this._sortByLabel=!0,this._shouldLoop=!0,this._container=Z(this.parent,qo(".quick-input-list")),this._separatorRenderer=new pv(t),this._itemRenderer=s.createInstance(mv,t),this._tree=this._register(s.createInstance(zD,"QuickInput",this._container,new $ee,[this._itemRenderer,this._separatorRenderer],{filter:{filter(a){return a.hidden?0:a instanceof fd?2:1}},sorter:{compare:(a,l)=>{if(!this.sortByLabel||!this._lastQueryString)return 0;const c=this._lastQueryString.toLowerCase();return qee(a,l,c)}},accessibilityProvider:new Kee,setRowLineHeight:!1,multipleSelectionSupport:!1,hideTwistiesOfChildlessElements:!0,renderIndentGuides:Sg.None,findWidgetEnabled:!1,indent:0,horizontalScrolling:!1,allowNonCollapsibleParents:!0,alwaysConsumeMouseWheel:!0})),this._tree.getHTMLElement().id=n,this._registerListeners()}get onDidChangeFocus(){return J.map(this._tree.onDidChangeFocus,e=>e.elements.filter(t=>t instanceof zi).map(t=>t.item),this._store)}get onDidChangeSelection(){return J.map(this._tree.onDidChangeSelection,e=>({items:e.elements.filter(t=>t instanceof zi).map(t=>t.item),event:e.browserEvent}),this._store)}get displayed(){return this._container.style.display!=="none"}set displayed(e){this._container.style.display=e?"":"none"}get scrollTop(){return this._tree.scrollTop}set scrollTop(e){this._tree.scrollTop=e}get ariaLabel(){return this._tree.ariaLabel}set ariaLabel(e){this._tree.ariaLabel=e??""}set enabled(e){this._tree.getHTMLElement().style.pointerEvents=e?"":"none"}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(e){this._matchOnDescription=e}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(e){this._matchOnDetail=e}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(e){this._matchOnLabel=e}get matchOnLabelMode(){return this._matchOnLabelMode}set matchOnLabelMode(e){this._matchOnLabelMode=e}get sortByLabel(){return this._sortByLabel}set sortByLabel(e){this._sortByLabel=e}get shouldLoop(){return this._shouldLoop}set shouldLoop(e){this._shouldLoop=e}_registerListeners(){this._registerOnKeyDown(),this._registerOnContainerClick(),this._registerOnMouseMiddleClick(),this._registerOnTreeModelChanged(),this._registerOnElementChecked(),this._registerOnContextMenu(),this._registerHoverListeners(),this._registerSelectionChangeListener(),this._registerSeparatorActionShowingListeners()}_registerOnKeyDown(){this._register(this._tree.onKeyDown(e=>{const t=new Nt(e);t.keyCode===10&&this.toggleCheckbox(),this._onKeyDown.fire(t)}))}_registerOnContainerClick(){this._register(U(this._container,ee.CLICK,e=>{(e.x||e.y)&&this._onLeave.fire()}))}_registerOnMouseMiddleClick(){this._register(U(this._container,ee.AUXCLICK,e=>{e.button===1&&this._onLeave.fire()}))}_registerOnTreeModelChanged(){this._register(this._tree.onDidChangeModel(()=>{const e=this._itemElements.filter(t=>!t.hidden).length;this._visibleCountObservable.set(e,void 0),this._hasCheckboxes&&this._updateCheckedObservables()}))}_registerOnElementChecked(){this._register(this._elementCheckedEventBufferer.wrapEvent(this._elementChecked.event,(e,t)=>t)(e=>this._updateCheckedObservables()))}_registerOnContextMenu(){this._register(this._tree.onContextMenu(e=>{e.element&&(e.browserEvent.preventDefault(),this._tree.setSelection([e.element]))}))}_registerHoverListeners(){const e=this._register(new vF(this.hoverDelegate.delay));this._register(this._tree.onMouseOver(async t=>{if(uR(t.browserEvent.target)){e.cancel();return}if(!(!uR(t.browserEvent.relatedTarget)&&yi(t.browserEvent.relatedTarget,t.element?.element)))try{await e.trigger(async()=>{t.element instanceof zi&&this.showHover(t.element)})}catch(i){if(!$c(i))throw i}})),this._register(this._tree.onMouseOut(t=>{yi(t.browserEvent.relatedTarget,t.element?.element)||e.cancel()}))}_registerSeparatorActionShowingListeners(){this._register(this._tree.onDidChangeFocus(e=>{const t=e.elements[0]?this._tree.getParentElement(e.elements[0]):null;for(const i of this._separatorRenderer.visibleSeparators){const n=i===t;!!(i.focusInsideSeparator&qr.ACTIVE_ITEM)!==n&&(n?i.focusInsideSeparator|=qr.ACTIVE_ITEM:i.focusInsideSeparator&=~qr.ACTIVE_ITEM,this._tree.rerender(i))}})),this._register(this._tree.onMouseOver(e=>{const t=e.element?this._tree.getParentElement(e.element):null;for(const i of this._separatorRenderer.visibleSeparators){if(i!==t)continue;i.focusInsideSeparator&qr.MOUSE_HOVER||(i.focusInsideSeparator|=qr.MOUSE_HOVER,this._tree.rerender(i))}})),this._register(this._tree.onMouseOut(e=>{const t=e.element?this._tree.getParentElement(e.element):null;for(const i of this._separatorRenderer.visibleSeparators){if(i!==t)continue;i.focusInsideSeparator&qr.MOUSE_HOVER&&(i.focusInsideSeparator&=~qr.MOUSE_HOVER,this._tree.rerender(i))}}))}_registerSelectionChangeListener(){this._register(this._tree.onDidChangeSelection(e=>{const t=e.elements.filter(i=>i instanceof zi);t.length!==e.elements.length&&(e.elements.length===1&&e.elements[0]instanceof fd&&(this._tree.setFocus([e.elements[0].children[0]]),this._tree.reveal(e.elements[0],0)),this._tree.setSelection(t))}))}setAllVisibleChecked(e){this._elementCheckedEventBufferer.bufferEvents(()=>{this._itemElements.forEach(t=>{!t.hidden&&!t.checkboxDisabled&&(t.checked=e)})})}setElements(e){this._elementDisposable.clear(),this._lastQueryString=void 0,this._inputElements=e,this._hasCheckboxes=this.parent.classList.contains("show-checkboxes");let t;this._itemElements=new Array,this._elementTree=e.reduce((i,n,s)=>{let r;if(n.type==="separator"){if(!n.buttons)return i;t=new fd(s,a=>this._onSeparatorButtonTriggered.fire(a),n),r=t}else{const a=s>0?e[s-1]:void 0;let l;a&&a.type==="separator"&&!a.buttons&&(t=void 0,l=a);const c=new zi(s,this._hasCheckboxes,d=>this._onButtonTriggered.fire(d),this._elementChecked,n,l);if(this._itemElements.push(c),t)return t.children.push(c),i;r=c}return i.push(r),i},new Array),this._setElementsToTree(this._elementTree),this.accessibilityService.isScreenReaderOptimized()&&setTimeout(()=>{const i=this._tree.getHTMLElement().querySelector(".monaco-list-row.focused"),n=i?.parentNode;if(i&&n){const s=i.nextSibling;i.remove(),n.insertBefore(i,s)}},0)}setFocusedElements(e){const t=e.map(i=>this._itemElements.find(n=>n.item===i)).filter(i=>!!i).filter(i=>!i.hidden);if(this._tree.setFocus(t),e.length>0){const i=this._tree.getFocus()[0];i&&this._tree.reveal(i)}}getActiveDescendant(){return this._tree.getHTMLElement().getAttribute("aria-activedescendant")}setSelectedElements(e){const t=e.map(i=>this._itemElements.find(n=>n.item===i)).filter(i=>!!i);this._tree.setSelection(t)}getCheckedElements(){return this._itemElements.filter(e=>e.checked).map(e=>e.item)}setCheckedElements(e){this._elementCheckedEventBufferer.bufferEvents(()=>{const t=new Set;for(const i of e)t.add(i);for(const i of this._itemElements)i.checked=t.has(i.item)})}focus(e){if(this._itemElements.length)switch(e===yt.Second&&this._itemElements.length<2&&(e=yt.First),e){case yt.First:this._tree.scrollTop=0,this._tree.focusFirst(void 0,t=>t.element instanceof zi);break;case yt.Second:{this._tree.scrollTop=0;let t=!1;this._tree.focusFirst(void 0,i=>i.element instanceof zi?t?!0:(t=!t,!1):!1);break}case yt.Last:this._tree.scrollTop=this._tree.scrollHeight,this._tree.focusLast(void 0,t=>t.element instanceof zi);break;case yt.Next:{const t=this._tree.getFocus();this._tree.focusNext(void 0,this._shouldLoop,void 0,n=>n.element instanceof zi?(this._tree.reveal(n.element),!0):!1);const i=this._tree.getFocus();t.length&&t[0]===i[0]&&t[0]===this._itemElements[this._itemElements.length-1]&&this._onLeave.fire();break}case yt.Previous:{const t=this._tree.getFocus();this._tree.focusPrevious(void 0,this._shouldLoop,void 0,n=>{if(!(n.element instanceof zi))return!1;const s=this._tree.getParentElement(n.element);return s===null||s.children[0]!==n.element?this._tree.reveal(n.element):this._tree.reveal(s),!0});const i=this._tree.getFocus();t.length&&t[0]===i[0]&&t[0]===this._itemElements[0]&&this._onLeave.fire();break}case yt.NextPage:this._tree.focusNextPage(void 0,t=>t.element instanceof zi?(this._tree.reveal(t.element),!0):!1);break;case yt.PreviousPage:this._tree.focusPreviousPage(void 0,t=>{if(!(t.element instanceof zi))return!1;const i=this._tree.getParentElement(t.element);return i===null||i.children[0]!==t.element?this._tree.reveal(t.element):this._tree.reveal(i),!0});break;case yt.NextSeparator:{let t=!1;const i=this._tree.getFocus()[0];this._tree.focusNext(void 0,!0,void 0,s=>{if(t)return!0;if(s.element instanceof fd)t=!0,this._separatorRenderer.isSeparatorVisible(s.element)?this._tree.reveal(s.element.children[0]):this._tree.reveal(s.element,0);else if(s.element instanceof zi){if(s.element.separator)return this._itemRenderer.isItemWithSeparatorVisible(s.element)?this._tree.reveal(s.element):this._tree.reveal(s.element,0),!0;if(s.element===this._elementTree[0])return this._tree.reveal(s.element,0),!0}return!1});const n=this._tree.getFocus()[0];i===n&&(this._tree.scrollTop=this._tree.scrollHeight,this._tree.focusLast(void 0,s=>s.element instanceof zi));break}case yt.PreviousSeparator:{let t,i=!!this._tree.getFocus()[0]?.separator;this._tree.focusPrevious(void 0,!0,void 0,n=>{if(n.element instanceof fd)i?t||(this._separatorRenderer.isSeparatorVisible(n.element)?this._tree.reveal(n.element):this._tree.reveal(n.element,0),t=n.element.children[0]):i=!0;else if(n.element instanceof zi&&!t){if(n.element.separator)this._itemRenderer.isItemWithSeparatorVisible(n.element)?this._tree.reveal(n.element):this._tree.reveal(n.element,0),t=n.element;else if(n.element===this._elementTree[0])return this._tree.reveal(n.element,0),!0}return!1}),t&&this._tree.setFocus([t]);break}}}clearFocus(){this._tree.setFocus([])}domFocus(){this._tree.domFocus()}layout(e){this._tree.getHTMLElement().style.maxHeight=e?`${Math.floor(e/44)*44+6}px`:"",this._tree.layout()}filter(e){if(this._lastQueryString=e,!(this._sortByLabel||this._matchOnLabel||this._matchOnDescription||this._matchOnDetail))return this._tree.layout(),!1;const t=e;if(e=e.trim(),!e||!(this.matchOnLabel||this.matchOnDescription||this.matchOnDetail))this._itemElements.forEach(i=>{i.labelHighlights=void 0,i.descriptionHighlights=void 0,i.detailHighlights=void 0,i.hidden=!1;const n=i.index&&this._inputElements[i.index-1];i.item&&(i.separator=n&&n.type==="separator"&&!n.buttons?n:void 0)});else{let i;this._itemElements.forEach(n=>{let s;this.matchOnLabelMode==="fuzzy"?s=this.matchOnLabel?IS(e,Tm(n.saneLabel))??void 0:void 0:s=this.matchOnLabel?jee(t,Tm(n.saneLabel))??void 0:void 0;const r=this.matchOnDescription?IS(e,Tm(n.saneDescription||""))??void 0:void 0,a=this.matchOnDetail?IS(e,Tm(n.saneDetail||""))??void 0:void 0;if(s||r||a?(n.labelHighlights=s,n.descriptionHighlights=r,n.detailHighlights=a,n.hidden=!1):(n.labelHighlights=void 0,n.descriptionHighlights=void 0,n.detailHighlights=void 0,n.hidden=n.item?!n.item.alwaysShow:!0),n.item?n.separator=void 0:n.separator&&(n.hidden=!0),!this.sortByLabel){const l=n.index&&this._inputElements[n.index-1]||void 0;l?.type==="separator"&&!l.buttons&&(i=l),i&&!n.hidden&&(n.separator=i,i=void 0)}})}return this._setElementsToTree(this._sortByLabel&&e?this._itemElements:this._elementTree),this._tree.layout(),!0}toggleCheckbox(){this._elementCheckedEventBufferer.bufferEvents(()=>{const e=this._tree.getFocus().filter(i=>i instanceof zi),t=this._allVisibleChecked(e);for(const i of e)i.checkboxDisabled||(i.checked=!t)})}style(e){this._tree.style(e)}toggleHover(){const e=this._tree.getFocus()[0];if(!e?.saneTooltip||!(e instanceof zi))return;if(this._lastHover&&!this._lastHover.isDisposed){this._lastHover.dispose();return}this.showHover(e);const t=new X;t.add(this._tree.onDidChangeFocus(i=>{i.elements[0]instanceof zi&&this.showHover(i.elements[0])})),this._lastHover&&t.add(this._lastHover),this._elementDisposable.add(t)}_setElementsToTree(e){const t=new Array;for(const i of e)i instanceof fd?t.push({element:i,collapsible:!1,collapsed:!1,children:i.children.map(n=>({element:n,collapsible:!1,collapsed:!1}))}):t.push({element:i,collapsible:!1,collapsed:!1});this._tree.setChildren(null,t)}_allVisibleChecked(e,t=!0){for(let i=0,n=e.length;i{this._allVisibleCheckedObservable.set(this._allVisibleChecked(this._itemElements,!1),e);const t=this._itemElements.filter(i=>i.checked).length;this._checkedCountObservable.set(t,e),this._checkedElementsObservable.set(this.getCheckedElements(),e)})}showHover(e){this._lastHover&&!this._lastHover.isDisposed&&(this.hoverDelegate.onDidHideHover?.(),this._lastHover?.dispose()),!(!e.element||!e.saneTooltip)&&(this._lastHover=this.hoverDelegate.showHover({content:e.saneTooltip,target:e.element,linkHandler:t=>{this.linkOpenerDelegate(t)},appearance:{showPointer:!0},container:this._container,position:{hoverPosition:1}},!1))}};Cy([Jt],C_.prototype,"onDidChangeFocus",null);Cy([Jt],C_.prototype,"onDidChangeSelection",null);C_=Cy([$D(4,ke),$D(5,ms)],C_);function jee(o,e){const{text:t,iconOffsets:i}=e;if(!i||i.length===0)return oO(o,t);const n=k0(t," "),s=t.length-n.length,r=oO(o,n);if(r)for(const a of r){const l=i[a.start+s]+s;a.start+=l,a.end+=l}return r}function oO(o,e){const t=e.toLowerCase().indexOf(o.toLowerCase());return t!==-1?[{start:t,end:t+o.length}]:null}function qee(o,e,t){const i=o.labelHighlights||[],n=e.labelHighlights||[];return i.length&&!n.length?-1:!i.length&&n.length?1:i.length===0&&n.length===0?0:zee(o.saneSortLabel,e.saneSortLabel,t)}const Y9={weight:200,when:re.and(re.equals(L9,"quickPick"),_J),metadata:{description:m("quickPick","Used while in the context of the quick pick. If you change one keybinding for this command, you should change all of the other keybindings (modifier variants) of this command as well.")}};function ts(o,e={}){Nn.registerCommandAndKeybindingRule({...Y9,...o,secondary:Gee(o.primary,o.secondary??[],e)})}const _v=Ue?256:2048;function Gee(o,e,t={}){return t.withAltMod&&e.push(512+o),t.withCtrlMod&&(e.push(_v+o),t.withAltMod&&e.push(512+_v+o)),t.withCmdMod&&Ue&&(e.push(2048+o),t.withCtrlMod&&e.push(2304+o),t.withAltMod&&(e.push(2560+o),t.withCtrlMod&&e.push(2816+o))),e}function Ss(o,e){return t=>{const i=t.get(fy).currentQuickInput;if(i)return e&&i.quickNavigate?i.focus(e):i.focus(o)}}ts({id:"quickInput.pageNext",primary:12,handler:Ss(yt.NextPage)},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0});ts({id:"quickInput.pagePrevious",primary:11,handler:Ss(yt.PreviousPage)},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0});ts({id:"quickInput.first",primary:_v+14,handler:Ss(yt.First)},{withAltMod:!0,withCmdMod:!0});ts({id:"quickInput.last",primary:_v+13,handler:Ss(yt.Last)},{withAltMod:!0,withCmdMod:!0});ts({id:"quickInput.next",primary:18,handler:Ss(yt.Next)},{withCtrlMod:!0});ts({id:"quickInput.previous",primary:16,handler:Ss(yt.Previous)},{withCtrlMod:!0});const rO=m("quickInput.nextSeparatorWithQuickAccessFallback","If we're in quick access mode, this will navigate to the next item. If we are not in quick access mode, this will navigate to the next separator."),aO=m("quickInput.previousSeparatorWithQuickAccessFallback","If we're in quick access mode, this will navigate to the previous item. If we are not in quick access mode, this will navigate to the previous separator.");Ue?(ts({id:"quickInput.nextSeparatorWithQuickAccessFallback",primary:2066,handler:Ss(yt.NextSeparator,yt.Next),metadata:{description:rO}}),ts({id:"quickInput.nextSeparator",primary:2578,secondary:[2322],handler:Ss(yt.NextSeparator)},{withCtrlMod:!0}),ts({id:"quickInput.previousSeparatorWithQuickAccessFallback",primary:2064,handler:Ss(yt.PreviousSeparator,yt.Previous),metadata:{description:aO}}),ts({id:"quickInput.previousSeparator",primary:2576,secondary:[2320],handler:Ss(yt.PreviousSeparator)},{withCtrlMod:!0})):(ts({id:"quickInput.nextSeparatorWithQuickAccessFallback",primary:530,handler:Ss(yt.NextSeparator,yt.Next),metadata:{description:rO}}),ts({id:"quickInput.nextSeparator",primary:2578,handler:Ss(yt.NextSeparator)}),ts({id:"quickInput.previousSeparatorWithQuickAccessFallback",primary:528,handler:Ss(yt.PreviousSeparator,yt.Previous),metadata:{description:aO}}),ts({id:"quickInput.previousSeparator",primary:2576,handler:Ss(yt.PreviousSeparator)}));ts({id:"quickInput.acceptInBackground",when:re.and(Y9.when,re.or(W9.negate(),vJ)),primary:17,weight:250,handler:o=>{o.get(fy).currentQuickInput?.accept(!0)}},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0});var Zee=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},QS=function(o,e){return function(t,i){e(t,i,o)}},jD;const Jn=ce;var ah;let qD=(ah=class extends z{get currentQuickInput(){return this.controller??void 0}get container(){return this._container}constructor(e,t,i,n){super(),this.options=e,this.layoutService=t,this.instantiationService=i,this.contextKeyService=n,this.enabled=!0,this.onDidAcceptEmitter=this._register(new A),this.onDidCustomEmitter=this._register(new A),this.onDidTriggerButtonEmitter=this._register(new A),this.keyMods={ctrlCmd:!1,alt:!1},this.controller=null,this.onShowEmitter=this._register(new A),this.onShow=this.onShowEmitter.event,this.onHideEmitter=this._register(new A),this.onHide=this.onHideEmitter.event,this.inQuickInputContext=pJ.bindTo(this.contextKeyService),this.quickInputTypeContext=bJ.bindTo(this.contextKeyService),this.endOfQuickInputBoxContext=CJ.bindTo(this.contextKeyService),this.idPrefix=e.idPrefix,this._container=e.container,this.styles=e.styles,this._register(J.runAndSubscribe(T0,({window:s,disposables:r})=>this.registerKeyModsListeners(s,r),{window:_t,disposables:this._store})),this._register(hV(s=>{this.ui&&fe(this.ui.container)===s&&(this.reparentUI(this.layoutService.mainContainer),this.layout(this.layoutService.mainContainerDimension,this.layoutService.mainContainerOffset.quickPickTop))}))}registerKeyModsListeners(e,t){const i=n=>{this.keyMods.ctrlCmd=n.ctrlKey||n.metaKey,this.keyMods.alt=n.altKey};for(const n of[ee.KEY_DOWN,ee.KEY_UP,ee.MOUSE_DOWN])t.add(U(e,n,i,!0))}getUI(e){if(this.ui)return e&&fe(this._container)!==fe(this.layoutService.activeContainer)&&(this.reparentUI(this.layoutService.activeContainer),this.layout(this.layoutService.activeContainerDimension,this.layoutService.activeContainerOffset.quickPickTop)),this.ui;const t=Z(this._container,Jn(".quick-input-widget.show-file-icons"));t.tabIndex=-1,t.style.display="none";const i=Vs(t),n=Z(t,Jn(".quick-input-titlebar")),s=this._register(new oo(n,{hoverDelegate:this.options.hoverDelegate}));s.domNode.classList.add("quick-input-left-action-bar");const r=Z(n,Jn(".quick-input-title")),a=this._register(new oo(n,{hoverDelegate:this.options.hoverDelegate}));a.domNode.classList.add("quick-input-right-action-bar");const l=Z(t,Jn(".quick-input-header")),c=Z(l,Jn("input.quick-input-check-all"));c.type="checkbox",c.setAttribute("aria-label",m("quickInput.checkAll","Toggle all checkboxes")),this._register(jt(c,ee.CHANGE,B=>{const G=c.checked;W.setAllVisibleChecked(G)})),this._register(U(c,ee.CLICK,B=>{(B.x||B.y)&&f.setFocus()}));const d=Z(l,Jn(".quick-input-description")),h=Z(l,Jn(".quick-input-and-message")),u=Z(h,Jn(".quick-input-filter")),f=this._register(new RJ(u,this.styles.inputBox,this.styles.toggle));f.setAttribute("aria-describedby",`${this.idPrefix}message`);const g=Z(u,Jn(".quick-input-visible-count"));g.setAttribute("aria-live","polite"),g.setAttribute("aria-atomic","true");const p=new PD(g,{countFormat:m({key:"quickInput.visibleCount",comment:["This tells the user how many items are shown in a list of items to select from. The items can be anything. Currently not visible, but read by screen readers."]},"{0} Results")},this.styles.countBadge),_=Z(u,Jn(".quick-input-count"));_.setAttribute("aria-live","polite");const b=new PD(_,{countFormat:m({key:"quickInput.countSelected",comment:["This tells the user how many items are selected in a list of items to select from. The items can be anything."]},"{0} Selected")},this.styles.countBadge),C=this._register(new oo(l,{hoverDelegate:this.options.hoverDelegate}));C.domNode.classList.add("quick-input-inline-action-bar");const w=Z(l,Jn(".quick-input-action")),v=this._register(new AD(w,this.styles.button));v.label=m("ok","OK"),this._register(v.onDidClick(B=>{this.onDidAcceptEmitter.fire()}));const y=Z(l,Jn(".quick-input-action")),x=this._register(new AD(y,{...this.styles.button,supportIcons:!0}));x.label=m("custom","Custom"),this._register(x.onDidClick(B=>{this.onDidCustomEmitter.fire()}));const L=Z(h,Jn(`#${this.idPrefix}message.quick-input-message`)),E=this._register(new OD(t,this.styles.progressBar));E.getContainer().classList.add("quick-input-progress");const N=Z(t,Jn(".quick-input-html-widget"));N.tabIndex=-1;const H=Z(t,Jn(".quick-input-description")),F=this.idPrefix+"list",W=this._register(this.instantiationService.createInstance(C_,t,this.options.hoverDelegate,this.options.linkOpenerDelegate,F));f.setAttribute("aria-controls",F),this._register(W.onDidChangeFocus(()=>{f.setAttribute("aria-activedescendant",W.getActiveDescendant()??"")})),this._register(W.onChangedAllVisibleChecked(B=>{c.checked=B})),this._register(W.onChangedVisibleCount(B=>{p.setCount(B)})),this._register(W.onChangedCheckedCount(B=>{b.setCount(B)})),this._register(W.onLeave(()=>{setTimeout(()=>{this.controller&&(f.setFocus(),this.controller instanceof sv&&this.controller.canSelectMany&&W.clearFocus())},0)}));const j=Ph(t);return this._register(j),this._register(U(t,ee.FOCUS,B=>{const G=this.getUI();if(yi(B.relatedTarget,G.inputContainer)){const ne=G.inputBox.isSelectionAtEnd();this.endOfQuickInputBoxContext.get()!==ne&&this.endOfQuickInputBoxContext.set(ne)}yi(B.relatedTarget,G.container)||(this.inQuickInputContext.set(!0),this.previousFocusElement=Ei(B.relatedTarget)?B.relatedTarget:void 0)},!0)),this._register(j.onDidBlur(()=>{!this.getUI().ignoreFocusOut&&!this.options.ignoreFocusOut()&&this.hide(yg.Blur),this.inQuickInputContext.set(!1),this.endOfQuickInputBoxContext.set(!1),this.previousFocusElement=void 0})),this._register(f.onKeyDown(B=>{const G=this.getUI().inputBox.isSelectionAtEnd();this.endOfQuickInputBoxContext.get()!==G&&this.endOfQuickInputBoxContext.set(G)})),this._register(U(t,ee.FOCUS,B=>{f.setFocus()})),this._register(jt(t,ee.KEY_DOWN,B=>{if(!yi(B.target,N))switch(B.keyCode){case 3:je.stop(B,!0),this.enabled&&this.onDidAcceptEmitter.fire();break;case 9:je.stop(B,!0),this.hide(yg.Gesture);break;case 2:if(!B.altKey&&!B.ctrlKey&&!B.metaKey){const G=[".quick-input-list .monaco-action-bar .always-visible",".quick-input-list-entry:hover .monaco-action-bar",".monaco-list-row.focused .monaco-action-bar"];if(t.classList.contains("show-checkboxes")?G.push("input"):G.push("input[type=text]"),this.getUI().list.displayed&&G.push(".monaco-list"),this.getUI().message&&G.push(".quick-input-message a"),this.getUI().widget){if(yi(B.target,this.getUI().widget))break;G.push(".quick-input-html-widget")}const ne=t.querySelectorAll(G.join(", "));B.shiftKey&&B.target===ne[0]?(je.stop(B,!0),W.clearFocus()):!B.shiftKey&&yi(B.target,ne[ne.length-1])&&(je.stop(B,!0),ne[0].focus())}break;case 10:B.ctrlKey&&(je.stop(B,!0),this.getUI().list.toggleHover());break}})),this.ui={container:t,styleSheet:i,leftActionBar:s,titleBar:n,title:r,description1:H,description2:d,widget:N,rightActionBar:a,inlineActionBar:C,checkAll:c,inputContainer:h,filterContainer:u,inputBox:f,visibleCountContainer:g,visibleCount:p,countContainer:_,count:b,okContainer:w,ok:v,message:L,customButtonContainer:y,customButton:x,list:W,progressBar:E,onDidAccept:this.onDidAcceptEmitter.event,onDidCustom:this.onDidCustomEmitter.event,onDidTriggerButton:this.onDidTriggerButtonEmitter.event,ignoreFocusOut:!1,keyMods:this.keyMods,show:B=>this.show(B),hide:()=>this.hide(),setVisibilities:B=>this.setVisibilities(B),setEnabled:B=>this.setEnabled(B),setContextKey:B=>this.options.setContextKey(B),linkOpenerDelegate:B=>this.options.linkOpenerDelegate(B)},this.updateStyles(),this.ui}reparentUI(e){this.ui&&(this._container=e,Z(this._container,this.ui.container))}pick(e,t={},i=ut.None){return new Promise((n,s)=>{let r=d=>{r=n,t.onKeyMods?.(a.keyMods),n(d)};if(i.isCancellationRequested){r(void 0);return}const a=this.createQuickPick({useSeparators:!0});let l;const c=[a,a.onDidAccept(()=>{if(a.canSelectMany)r(a.selectedItems.slice()),a.hide();else{const d=a.activeItems[0];d&&(r(d),a.hide())}}),a.onDidChangeActive(d=>{const h=d[0];h&&t.onDidFocus&&t.onDidFocus(h)}),a.onDidChangeSelection(d=>{if(!a.canSelectMany){const h=d[0];h&&(r(h),a.hide())}}),a.onDidTriggerItemButton(d=>t.onDidTriggerItemButton&&t.onDidTriggerItemButton({...d,removeItem:()=>{const h=a.items.indexOf(d.item);if(h!==-1){const u=a.items.slice(),f=u.splice(h,1),g=a.activeItems.filter(_=>_!==f[0]),p=a.keepScrollPosition;a.keepScrollPosition=!0,a.items=u,g&&(a.activeItems=g),a.keepScrollPosition=p}}})),a.onDidTriggerSeparatorButton(d=>t.onDidTriggerSeparatorButton?.(d)),a.onDidChangeValue(d=>{l&&!d&&(a.activeItems.length!==1||a.activeItems[0]!==l)&&(a.activeItems=[l])}),i.onCancellationRequested(()=>{a.hide()}),a.onDidHide(()=>{xt(c),r(void 0)})];a.title=t.title,t.value&&(a.value=t.value),a.canSelectMany=!!t.canPickMany,a.placeholder=t.placeHolder,a.ignoreFocusOut=!!t.ignoreFocusLost,a.matchOnDescription=!!t.matchOnDescription,a.matchOnDetail=!!t.matchOnDetail,a.matchOnLabel=t.matchOnLabel===void 0||t.matchOnLabel,a.quickNavigate=t.quickNavigate,a.hideInput=!!t.hideInput,a.contextKey=t.contextKey,a.busy=!0,Promise.all([e,t.activeItem]).then(([d,h])=>{l=h,a.busy=!1,a.items=d,a.canSelectMany&&(a.selectedItems=d.filter(u=>u.type!=="separator"&&u.picked)),l&&(a.activeItems=[l])}),a.show(),Promise.resolve(e).then(void 0,d=>{s(d),a.hide()})})}createQuickPick(e={useSeparators:!1}){const t=this.getUI(!0);return new sv(t)}createInputBox(){const e=this.getUI(!0);return new wJ(e)}show(e){const t=this.getUI(!0);this.onShowEmitter.fire();const i=this.controller;this.controller=e,i?.didHide(),this.setEnabled(!0),t.leftActionBar.clear(),t.title.textContent="",t.description1.textContent="",t.description2.textContent="",un(t.widget),t.rightActionBar.clear(),t.inlineActionBar.clear(),t.checkAll.checked=!1,t.inputBox.placeholder="",t.inputBox.password=!1,t.inputBox.showDecoration(Qt.Ignore),t.visibleCount.setCount(0),t.count.setCount(0),un(t.message),t.progressBar.stop(),t.list.setElements([]),t.list.matchOnDescription=!1,t.list.matchOnDetail=!1,t.list.matchOnLabel=!0,t.list.sortByLabel=!0,t.ignoreFocusOut=!1,t.inputBox.toggles=void 0;const n=this.options.backKeybindingLabel();MD.tooltip=n?m("quickInput.backWithKeybinding","Back ({0})",n):m("quickInput.back","Back"),t.container.style.display="",this.updateLayout(),t.inputBox.setFocus(),this.quickInputTypeContext.set(e.type)}isVisible(){return!!this.ui&&this.ui.container.style.display!=="none"}setVisibilities(e){const t=this.getUI();t.title.style.display=e.title?"":"none",t.description1.style.display=e.description&&(e.inputBox||e.checkAll)?"":"none",t.description2.style.display=e.description&&!(e.inputBox||e.checkAll)?"":"none",t.checkAll.style.display=e.checkAll?"":"none",t.inputContainer.style.display=e.inputBox?"":"none",t.filterContainer.style.display=e.inputBox?"":"none",t.visibleCountContainer.style.display=e.visibleCount?"":"none",t.countContainer.style.display=e.count?"":"none",t.okContainer.style.display=e.ok?"":"none",t.customButtonContainer.style.display=e.customButton?"":"none",t.message.style.display=e.message?"":"none",t.progressBar.getContainer().style.display=e.progressBar?"":"none",t.list.displayed=!!e.list,t.container.classList.toggle("show-checkboxes",!!e.checkBox),t.container.classList.toggle("hidden-input",!e.inputBox&&!e.description),this.updateLayout()}setEnabled(e){if(e!==this.enabled){this.enabled=e;for(const t of this.getUI().leftActionBar.viewItems)t.action.enabled=e;for(const t of this.getUI().rightActionBar.viewItems)t.action.enabled=e;this.getUI().checkAll.disabled=!e,this.getUI().inputBox.enabled=e,this.getUI().ok.enabled=e,this.getUI().list.enabled=e}}hide(e){const t=this.controller;if(!t)return;t.willHide(e);const i=this.ui?.container,n=i&&!OF(i);if(this.controller=null,this.onHideEmitter.fire(),i&&(i.style.display="none"),!n){let s=this.previousFocusElement;for(;s&&!s.offsetParent;)s=s.parentElement??void 0;s?.offsetParent?(s.focus(),this.previousFocusElement=void 0):this.options.returnFocus()}t.didHide(e)}layout(e,t){this.dimension=e,this.titleBarOffset=t,this.updateLayout()}updateLayout(){if(this.ui&&this.isVisible()){this.ui.container.style.top=`${this.titleBarOffset}px`;const e=this.ui.container.style,t=Math.min(this.dimension.width*.62,jD.MAX_WIDTH);e.width=t+"px",e.marginLeft="-"+t/2+"px",this.ui.inputBox.layout(),this.ui.list.layout(this.dimension&&this.dimension.height*.4)}}applyStyles(e){this.styles=e,this.updateStyles()}updateStyles(){if(this.ui){const{quickInputTitleBackground:e,quickInputBackground:t,quickInputForeground:i,widgetBorder:n,widgetShadow:s}=this.styles.widget;this.ui.titleBar.style.backgroundColor=e??"",this.ui.container.style.backgroundColor=t??"",this.ui.container.style.color=i??"",this.ui.container.style.border=n?`1px solid ${n}`:"",this.ui.container.style.boxShadow=s?`0 0 8px 2px ${s}`:"",this.ui.list.style(this.styles.list);const r=[];this.styles.pickerGroup.pickerGroupBorder&&r.push(`.quick-input-list .quick-input-list-entry { border-top-color: ${this.styles.pickerGroup.pickerGroupBorder}; }`),this.styles.pickerGroup.pickerGroupForeground&&r.push(`.quick-input-list .quick-input-list-separator { color: ${this.styles.pickerGroup.pickerGroupForeground}; }`),this.styles.pickerGroup.pickerGroupForeground&&r.push(".quick-input-list .quick-input-list-separator-as-item { color: var(--vscode-descriptionForeground); }"),(this.styles.keybindingLabel.keybindingLabelBackground||this.styles.keybindingLabel.keybindingLabelBorder||this.styles.keybindingLabel.keybindingLabelBottomBorder||this.styles.keybindingLabel.keybindingLabelShadow||this.styles.keybindingLabel.keybindingLabelForeground)&&(r.push(".quick-input-list .monaco-keybinding > .monaco-keybinding-key {"),this.styles.keybindingLabel.keybindingLabelBackground&&r.push(`background-color: ${this.styles.keybindingLabel.keybindingLabelBackground};`),this.styles.keybindingLabel.keybindingLabelBorder&&r.push(`border-color: ${this.styles.keybindingLabel.keybindingLabelBorder};`),this.styles.keybindingLabel.keybindingLabelBottomBorder&&r.push(`border-bottom-color: ${this.styles.keybindingLabel.keybindingLabelBottomBorder};`),this.styles.keybindingLabel.keybindingLabelShadow&&r.push(`box-shadow: inset 0 -1px 0 ${this.styles.keybindingLabel.keybindingLabelShadow};`),this.styles.keybindingLabel.keybindingLabelForeground&&r.push(`color: ${this.styles.keybindingLabel.keybindingLabelForeground};`),r.push("}"));const a=r.join(` +`);a!==this.ui.styleSheet.textContent&&(this.ui.styleSheet.textContent=a)}}},jD=ah,ah.MAX_WIDTH=600,ah);qD=jD=Zee([QS(1,jc),QS(2,ke),QS(3,De)],qD);var Yee=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vm=function(o,e){return function(t,i){e(t,i,o)}};let GD=class extends P${get controller(){return this._controller||(this._controller=this._register(this.createController())),this._controller}get hasController(){return!!this._controller}get currentQuickInput(){return this.controller.currentQuickInput}get quickAccess(){return this._quickAccess||(this._quickAccess=this._register(this.instantiationService.createInstance(TD))),this._quickAccess}constructor(e,t,i,n,s){super(i),this.instantiationService=e,this.contextKeyService=t,this.layoutService=n,this.configurationService=s,this._onShow=this._register(new A),this._onHide=this._register(new A),this.contexts=new Map}createController(e=this.layoutService,t){const i={idPrefix:"quickInput_",container:e.activeContainer,ignoreFocusOut:()=>!1,backKeybindingLabel:()=>{},setContextKey:s=>this.setContextKey(s),linkOpenerDelegate:s=>{this.instantiationService.invokeFunction(r=>{r.get(Vo).open(s,{allowCommands:!0,fromUserGesture:!0})})},returnFocus:()=>e.focus(),styles:this.computeStyles(),hoverDelegate:this._register(this.instantiationService.createInstance(RD))},n=this._register(this.instantiationService.createInstance(qD,{...i,...t}));return n.layout(e.activeContainerDimension,e.activeContainerOffset.quickPickTop),this._register(e.onDidLayoutActiveContainer(s=>{fe(e.activeContainer)===fe(n.container)&&n.layout(s,e.activeContainerOffset.quickPickTop)})),this._register(e.onDidChangeActiveContainer(()=>{n.isVisible()||n.layout(e.activeContainerDimension,e.activeContainerOffset.quickPickTop)})),this._register(n.onShow(()=>{this.resetContextKeys(),this._onShow.fire()})),this._register(n.onHide(()=>{this.resetContextKeys(),this._onHide.fire()})),n}setContextKey(e){let t;e&&(t=this.contexts.get(e),t||(t=new le(e,!1).bindTo(this.contextKeyService),this.contexts.set(e,t))),!(t&&t.get())&&(this.resetContextKeys(),t?.set(!0))}resetContextKeys(){this.contexts.forEach(e=>{e.get()&&e.reset()})}pick(e,t,i=ut.None){return this.controller.pick(e,t,i)}createQuickPick(e={useSeparators:!1}){return this.controller.createQuickPick(e)}createInputBox(){return this.controller.createInputBox()}updateStyles(){this.hasController&&this.controller.applyStyles(this.computeStyles())}computeStyles(){return{widget:{quickInputBackground:oe(TA),quickInputForeground:oe(eq),quickInputTitleBackground:oe(tq),widgetBorder:oe(FK),widgetShadow:oe(q_)},inputBox:F7,toggle:O7,countBadge:B7,button:PY,progressBar:OY,keybindingLabel:AY,list:$g({listBackground:TA,listFocusBackground:PC,listFocusForeground:AC,listInactiveFocusForeground:AC,listInactiveSelectionIconForeground:TT,listInactiveFocusBackground:PC,listFocusOutline:Ut,listInactiveFocusOutline:Ut}),pickerGroup:{pickerGroupBorder:oe(iq),pickerGroupForeground:oe(Q3)}}}};GD=Yee([vm(0,ke),vm(1,De),vm(2,en),vm(3,jc),vm(4,lt)],GD);var Q9=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},xd=function(o,e){return function(t,i){e(t,i,o)}};let ZD=class extends GD{constructor(e,t,i,n,s,r){super(t,i,n,new pk(e.getContainerDomNode(),s),r),this.host=void 0;const a=v_.get(e);if(a){const l=a.widget;this.host={_serviceBrand:void 0,get mainContainer(){return l.getDomNode()},getContainer(){return l.getDomNode()},whenContainerStylesLoaded(){},get containers(){return[l.getDomNode()]},get activeContainer(){return l.getDomNode()},get mainContainerDimension(){return e.getLayoutInfo()},get activeContainerDimension(){return e.getLayoutInfo()},get onDidLayoutMainContainer(){return e.onDidLayoutChange},get onDidLayoutActiveContainer(){return e.onDidLayoutChange},get onDidLayoutContainer(){return J.map(e.onDidLayoutChange,c=>({container:l.getDomNode(),dimension:c}))},get onDidChangeActiveContainer(){return J.None},get onDidAddContainer(){return J.None},get mainContainerOffset(){return{top:0,quickPickTop:0}},get activeContainerOffset(){return{top:0,quickPickTop:0}},focus:()=>e.focus()}}else this.host=void 0}createController(){return super.createController(this.host)}};ZD=Q9([xd(1,ke),xd(2,De),xd(3,en),xd(4,Pt),xd(5,lt)],ZD);let YD=class{get activeService(){const e=this.codeEditorService.getFocusedCodeEditor();if(!e)throw new Error("Quick input service needs a focused editor to work.");let t=this.mapEditorToService.get(e);if(!t){const i=t=this.instantiationService.createInstance(ZD,e);this.mapEditorToService.set(e,t),ng(e.onDidDispose)(()=>{i.dispose(),this.mapEditorToService.delete(e)})}return t}get currentQuickInput(){return this.activeService.currentQuickInput}get quickAccess(){return this.activeService.quickAccess}constructor(e,t){this.instantiationService=e,this.codeEditorService=t,this.mapEditorToService=new Map}pick(e,t,i=ut.None){return this.activeService.pick(e,t,i)}createQuickPick(e={useSeparators:!1}){return this.activeService.createQuickPick(e)}createInputBox(){return this.activeService.createInputBox()}};YD=Q9([xd(0,ke),xd(1,Pt)],YD);const $w=class $w{static get(e){return e.getContribution($w.ID)}constructor(e){this.editor=e,this.widget=new QD(this.editor)}dispose(){this.widget.dispose()}};$w.ID="editor.controller.quickInput";let v_=$w;const Kw=class Kw{constructor(e){this.codeEditor=e,this.domNode=document.createElement("div"),this.codeEditor.addOverlayWidget(this)}getId(){return Kw.ID}getDomNode(){return this.domNode}getPosition(){return{preference:2}}dispose(){this.codeEditor.removeOverlayWidget(this)}};Kw.ID="editor.contrib.quickInputWidget";let QD=Kw;Ho(v_.ID,v_,4);class Qee{constructor(e,t,i,n,s){this._parsedThemeRuleBrand=void 0,this.token=e,this.index=t,this.fontStyle=i,this.foreground=n,this.background=s}}function Xee(o){if(!o||!Array.isArray(o))return[];const e=[];let t=0;for(let i=0,n=o.length;i{const u=ste(d.token,h.token);return u!==0?u:d.index-h.index});let t=0,i="000000",n="ffffff";for(;o.length>=1&&o[0].token==="";){const d=o.shift();d.fontStyle!==-1&&(t=d.fontStyle),d.foreground!==null&&(i=d.foreground),d.background!==null&&(n=d.background)}const s=new tte;for(const d of e)s.getId(d);const r=s.getId(i),a=s.getId(n),l=new M2(t,r,a),c=new R2(l);for(let d=0,h=o.length;d"u"){const n=this._match(t),s=nte(t);i=(n.metadata|s<<8)>>>0,this._cache.set(t,i)}return(i|e<<0)>>>0}}const ite=/\b(comment|string|regex|regexp)\b/;function nte(o){const e=o.match(ite);if(!e)return 0;switch(e[1]){case"comment":return 1;case"string":return 2;case"regex":return 3;case"regexp":return 3}throw new Error("Unexpected match for standard token type!")}function ste(o,e){return oe?1:0}class M2{constructor(e,t,i){this._themeTrieElementRuleBrand=void 0,this._fontStyle=e,this._foreground=t,this._background=i,this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}clone(){return new M2(this._fontStyle,this._foreground,this._background)}acceptOverwrite(e,t,i){e!==-1&&(this._fontStyle=e),t!==0&&(this._foreground=t),i!==0&&(this._background=i),this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}}class R2{constructor(e){this._themeTrieElementBrand=void 0,this._mainRule=e,this._children=new Map}match(e){if(e==="")return this._mainRule;const t=e.indexOf(".");let i,n;t===-1?(i=e,n=""):(i=e.substring(0,t),n=e.substring(t+1));const s=this._children.get(i);return typeof s<"u"?s.match(n):this._mainRule}insert(e,t,i,n){if(e===""){this._mainRule.acceptOverwrite(t,i,n);return}const s=e.indexOf(".");let r,a;s===-1?(r=e,a=""):(r=e.substring(0,s),a=e.substring(s+1));let l=this._children.get(r);typeof l>"u"&&(l=new R2(this._mainRule.clone()),this._children.set(r,l)),l.insert(a,t,i,n)}}function ote(o){const e=[];for(let t=1,i=o.length;t({format:n.format,location:n.location.toString()}))}}o.toJSONObject=e;function t(i){const n=s=>Os(s)?s:void 0;if(i&&Array.isArray(i.src)&&i.src.every(s=>Os(s.format)&&Os(s.location)))return{weight:n(i.weight),style:n(i.style),src:i.src.map(s=>({format:s.format,location:ve.parse(s.location)}))}}o.fromJSONObject=t})(cO||(cO={}));class hte{constructor(){this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this.iconSchema={definitions:{icons:{type:"object",properties:{fontId:{type:"string",description:m("iconDefinition.fontId","The id of the font to use. If not set, the font that is defined first is used.")},fontCharacter:{type:"string",description:m("iconDefinition.fontCharacter","The font character associated with the icon definition.")}},additionalProperties:!1,defaultSnippets:[{body:{fontCharacter:"\\\\e030"}}]}},type:"object",properties:{}},this.iconReferenceSchema={type:"string",pattern:`^${Ee.iconNameExpression}$`,enum:[],enumDescriptions:[]},this.iconsById={},this.iconFontsById={}}registerIcon(e,t,i,n){const s=this.iconsById[e];if(s){if(i&&!s.description){s.description=i,this.iconSchema.properties[e].markdownDescription=`${i} $(${e})`;const l=this.iconReferenceSchema.enum.indexOf(e);l!==-1&&(this.iconReferenceSchema.enumDescriptions[l]=i),this._onDidChange.fire()}return s}const r={id:e,description:i,defaults:t,deprecationMessage:n};this.iconsById[e]=r;const a={$ref:"#/definitions/icons"};return n&&(a.deprecationMessage=n),i&&(a.markdownDescription=`${i}: $(${e})`),this.iconSchema.properties[e]=a,this.iconReferenceSchema.enum.push(e),this.iconReferenceSchema.enumDescriptions.push(i||""),this._onDidChange.fire(),{id:e}}getIcons(){return Object.keys(this.iconsById).map(e=>this.iconsById[e])}getIcon(e){return this.iconsById[e]}getIconSchema(){return this.iconSchema}toString(){const e=(s,r)=>s.id.localeCompare(r.id),t=s=>{for(;Ee.isThemeIcon(s.defaults);)s=this.iconsById[s.defaults.id];return`codicon codicon-${s?s.id:""}`},i=[];i.push("| preview | identifier | default codicon ID | description"),i.push("| ----------- | --------------------------------- | --------------------------------- | --------------------------------- |");const n=Object.keys(this.iconsById).map(s=>this.iconsById[s]);for(const s of n.filter(r=>!!r.description).sort(e))i.push(`||${s.id}|${Ee.isThemeIcon(s.defaults)?s.defaults.id:s.id}|${s.description||""}|`);i.push("| preview | identifier "),i.push("| ----------- | --------------------------------- |");for(const s of n.filter(r=>!Ee.isThemeIcon(r.defaults)).sort(e))i.push(`||${s.id}|`);return i.join(` +`)}}const fu=new hte;Bi.add(dte.IconContribution,fu);function Wi(o,e,t,i){return fu.registerIcon(o,e,t,i)}function J9(){return fu}function ute(){const o=rF();for(const e in o){const t="\\"+o[e].toString(16);fu.registerIcon(e,{fontCharacter:t})}}ute();const e8="vscode://schemas/icons",t8=Bi.as(K0.JSONContribution);t8.registerSchema(e8,fu.getIconSchema());const dO=new ci(()=>t8.notifySchemaChanged(e8),200);fu.onDidChange(()=>{dO.isScheduled()||dO.schedule()});Wi("widget-close",ie.close,m("widgetClose","Icon for the close action in widgets."));Wi("goto-previous-location",ie.arrowUp,m("previousChangeIcon","Icon for goto previous editor location."));Wi("goto-next-location",ie.arrowDown,m("nextChangeIcon","Icon for goto next editor location."));Ee.modify(ie.sync,"spin");Ee.modify(ie.loading,"spin");function fte(o){const e=new X,t=e.add(new A),i=J9();return e.add(i.onDidChange(()=>t.fire())),o&&e.add(o.onDidProductIconThemeChange(()=>t.fire())),{dispose:()=>e.dispose(),onDidChange:t.event,getCSS(){const n=o?o.getProductIconTheme():new i8,s={},r=[],a=[];for(const l of i.getIcons()){const c=n.getIcon(l);if(!c)continue;const d=c.font,h=`--vscode-icon-${l.id}-font-family`,u=`--vscode-icon-${l.id}-content`;d?(s[d.id]=d.definition,a.push(`${h}: ${lS(d.id)};`,`${u}: '${c.fontCharacter}';`),r.push(`.codicon-${l.id}:before { content: '${c.fontCharacter}'; font-family: ${lS(d.id)}; }`)):(a.push(`${u}: '${c.fontCharacter}'; ${h}: 'codicon';`),r.push(`.codicon-${l.id}:before { content: '${c.fontCharacter}'; }`))}for(const l in s){const c=s[l],d=c.weight?`font-weight: ${c.weight};`:"",h=c.style?`font-style: ${c.style};`:"",u=c.src.map(f=>`${Dl(f.location)} format('${f.format}')`).join(", ");r.push(`@font-face { src: ${u}; font-family: ${lS(l)};${d}${h} font-display: block; }`)}return r.push(`:root { ${a.join(" ")} }`),r.join(` +`)}}}class i8{getIcon(e){const t=J9();let i=e.defaults;for(;Ee.isThemeIcon(i);){const n=t.getIcon(i.id);if(!n)return;i=n.defaults}return i}}const ec="vs",ap="vs-dark",Kf="hc-black",jf="hc-light",n8=Bi.as(A3.ColorContribution),gte=Bi.as(_3.ThemingContribution);class s8{constructor(e,t){this.semanticHighlighting=!1,this.themeData=t;const i=t.base;e.length>0?(z1(e)?this.id=e:this.id=i+" "+e,this.themeName=e):(this.id=i,this.themeName=i),this.colors=null,this.defaultColors=Object.create(null),this._tokenTheme=null}get base(){return this.themeData.base}notifyBaseUpdated(){this.themeData.inherit&&(this.colors=null,this._tokenTheme=null)}getColors(){if(!this.colors){const e=new Map;for(const t in this.themeData.colors)e.set(t,q.fromHex(this.themeData.colors[t]));if(this.themeData.inherit){const t=XD(this.themeData.base);for(const i in t.colors)e.has(i)||e.set(i,q.fromHex(t.colors[i]))}this.colors=e}return this.colors}getColor(e,t){const i=this.getColors().get(e);if(i)return i;if(t!==!1)return this.getDefault(e)}getDefault(e){let t=this.defaultColors[e];return t||(t=n8.resolveDefaultColor(e,this),this.defaultColors[e]=t,t)}defines(e){return this.getColors().has(e)}get type(){switch(this.base){case ec:return io.LIGHT;case Kf:return io.HIGH_CONTRAST_DARK;case jf:return io.HIGH_CONTRAST_LIGHT;default:return io.DARK}}get tokenTheme(){if(!this._tokenTheme){let e=[],t=[];if(this.themeData.inherit){const s=XD(this.themeData.base);e=s.rules,s.encodedTokensColors&&(t=s.encodedTokensColors)}const i=this.themeData.colors["editor.foreground"],n=this.themeData.colors["editor.background"];if(i||n){const s={token:""};i&&(s.foreground=i),n&&(s.background=n),e.push(s)}e=e.concat(this.themeData.rules),this.themeData.encodedTokensColors&&(t=this.themeData.encodedTokensColors),this._tokenTheme=X9.createFromRawTokenTheme(e,t)}return this._tokenTheme}getTokenStyleMetadata(e,t,i){const s=this.tokenTheme._match([e].concat(t).join(".")).metadata,r=sr.getForeground(s),a=sr.getFontStyle(s);return{foreground:r,italic:!!(a&1),bold:!!(a&2),underline:!!(a&4),strikethrough:!!(a&8)}}}function z1(o){return o===ec||o===ap||o===Kf||o===jf}function XD(o){switch(o){case ec:return rte;case ap:return ate;case Kf:return lte;case jf:return cte}}function Jb(o){const e=XD(o);return new s8(o,e)}class mte extends z{constructor(){super(),this._onColorThemeChange=this._register(new A),this.onDidColorThemeChange=this._onColorThemeChange.event,this._onProductIconThemeChange=this._register(new A),this.onDidProductIconThemeChange=this._onProductIconThemeChange.event,this._environment=Object.create(null),this._builtInProductIconTheme=new i8,this._autoDetectHighContrast=!0,this._knownThemes=new Map,this._knownThemes.set(ec,Jb(ec)),this._knownThemes.set(ap,Jb(ap)),this._knownThemes.set(Kf,Jb(Kf)),this._knownThemes.set(jf,Jb(jf));const e=this._register(fte(this));this._codiconCSS=e.getCSS(),this._themeCSS="",this._allCSS=`${this._codiconCSS} +${this._themeCSS}`,this._globalStyleElement=null,this._styleElements=[],this._colorMapOverride=null,this.setTheme(ec),this._onOSSchemeChanged(),this._register(e.onDidChange(()=>{this._codiconCSS=e.getCSS(),this._updateCSS()})),_F(_t,"(forced-colors: active)",()=>{this._onOSSchemeChanged()})}registerEditorContainer(e){return _C(e)?this._registerShadowDomContainer(e):this._registerRegularEditorContainer()}_registerRegularEditorContainer(){return this._globalStyleElement||(this._globalStyleElement=Vs(void 0,e=>{e.className="monaco-colors",e.textContent=this._allCSS}),this._styleElements.push(this._globalStyleElement)),z.None}_registerShadowDomContainer(e){const t=Vs(e,i=>{i.className="monaco-colors",i.textContent=this._allCSS});return this._styleElements.push(t),{dispose:()=>{for(let i=0;i{i.base===e&&i.notifyBaseUpdated()}),this._theme.themeName===e&&this.setTheme(e)}getColorTheme(){return this._theme}setColorMapOverride(e){this._colorMapOverride=e,this._updateThemeOrColorMap()}setTheme(e){let t;this._knownThemes.has(e)?t=this._knownThemes.get(e):t=this._knownThemes.get(ec),this._updateActualTheme(t)}_updateActualTheme(e){!e||this._theme===e||(this._theme=e,this._updateThemeOrColorMap())}_onOSSchemeChanged(){if(this._autoDetectHighContrast){const e=_t.matchMedia("(forced-colors: active)").matches;if(e!==mc(this._theme.type)){let t;j0(this._theme.type)?t=e?Kf:ap:t=e?jf:ec,this._updateActualTheme(this._knownThemes.get(t))}}}setAutoDetectHighContrast(e){this._autoDetectHighContrast=e,this._onOSSchemeChanged()}_updateThemeOrColorMap(){const e=[],t={},i={addRule:r=>{t[r]||(e.push(r),t[r]=!0)}};gte.getThemingParticipants().forEach(r=>r(this._theme,i,this._environment));const n=[];for(const r of n8.getColors()){const a=this._theme.getColor(r.id,!0);a&&n.push(`${yT(r.id)}: ${a.toString()};`)}i.addRule(`.monaco-editor, .monaco-diff-editor, .monaco-component { ${n.join(` +`)} }`);const s=this._colorMapOverride||this._theme.tokenTheme.getColorMap();i.addRule(ote(s)),this._themeCSS=e.join(` +`),this._updateCSS(),si.setColorMap(s),this._onColorThemeChange.fire(this._theme)}_updateCSS(){this._allCSS=`${this._codiconCSS} +${this._themeCSS}`,this._styleElements.forEach(e=>e.textContent=this._allCSS)}getFileIconTheme(){return{hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!1}}getProductIconTheme(){return this._builtInProductIconTheme}}const zo=He("themeService");var pte=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},XS=function(o,e){return function(t,i){e(t,i,o)}};let JD=class extends z{constructor(e,t,i){super(),this._contextKeyService=e,this._layoutService=t,this._configurationService=i,this._accessibilitySupport=0,this._onDidChangeScreenReaderOptimized=new A,this._onDidChangeReducedMotion=new A,this._onDidChangeLinkUnderline=new A,this._accessibilityModeEnabledContext=RG.bindTo(this._contextKeyService);const n=()=>this._accessibilityModeEnabledContext.set(this.isScreenReaderOptimized());this._register(this._configurationService.onDidChangeConfiguration(r=>{r.affectsConfiguration("editor.accessibilitySupport")&&(n(),this._onDidChangeScreenReaderOptimized.fire()),r.affectsConfiguration("workbench.reduceMotion")&&(this._configMotionReduced=this._configurationService.getValue("workbench.reduceMotion"),this._onDidChangeReducedMotion.fire())})),n(),this._register(this.onDidChangeScreenReaderOptimized(()=>n()));const s=_t.matchMedia("(prefers-reduced-motion: reduce)");this._systemMotionReduced=s.matches,this._configMotionReduced=this._configurationService.getValue("workbench.reduceMotion"),this._linkUnderlinesEnabled=this._configurationService.getValue("accessibility.underlineLinks"),this.initReducedMotionListeners(s),this.initLinkUnderlineListeners()}initReducedMotionListeners(e){this._register(U(e,"change",()=>{this._systemMotionReduced=e.matches,this._configMotionReduced==="auto"&&this._onDidChangeReducedMotion.fire()}));const t=()=>{const i=this.isMotionReduced();this._layoutService.mainContainer.classList.toggle("reduce-motion",i),this._layoutService.mainContainer.classList.toggle("enable-motion",!i)};t(),this._register(this.onDidChangeReducedMotion(()=>t()))}initLinkUnderlineListeners(){this._register(this._configurationService.onDidChangeConfiguration(t=>{if(t.affectsConfiguration("accessibility.underlineLinks")){const i=this._configurationService.getValue("accessibility.underlineLinks");this._linkUnderlinesEnabled=i,this._onDidChangeLinkUnderline.fire()}}));const e=()=>{const t=this._linkUnderlinesEnabled;this._layoutService.mainContainer.classList.toggle("underline-links",t)};e(),this._register(this.onDidChangeLinkUnderlines(()=>e()))}onDidChangeLinkUnderlines(e){return this._onDidChangeLinkUnderline.event(e)}get onDidChangeScreenReaderOptimized(){return this._onDidChangeScreenReaderOptimized.event}isScreenReaderOptimized(){const e=this._configurationService.getValue("editor.accessibilitySupport");return e==="on"||e==="auto"&&this._accessibilitySupport===2}get onDidChangeReducedMotion(){return this._onDidChangeReducedMotion.event}isMotionReduced(){const e=this._configMotionReduced;return e==="on"||e==="auto"&&this._systemMotionReduced}getAccessibilitySupport(){return this._accessibilitySupport}};JD=pte([XS(0,De),XS(1,jc),XS(2,lt)],JD);var vy=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},la=function(o,e){return function(t,i){e(t,i,o)}},zu,Om;let eI=class{constructor(e,t,i){this._commandService=e,this._keybindingService=t,this._hiddenStates=new tI(i)}createMenu(e,t,i){return new bv(e,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...i},this._commandService,this._keybindingService,t)}getMenuActions(e,t,i){const n=new bv(e,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...i},this._commandService,this._keybindingService,t),s=n.getActions(i);return n.dispose(),s}resetHiddenStates(e){this._hiddenStates.reset(e)}};eI=vy([la(0,hi),la(1,vt),la(2,du)],eI);var lh;let tI=(lh=class{constructor(e){this._storageService=e,this._disposables=new X,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._ignoreChangeEvent=!1,this._hiddenByDefaultCache=new Map;try{const t=e.get(zu._key,0,"{}");this._data=JSON.parse(t)}catch{this._data=Object.create(null)}this._disposables.add(e.onDidChangeValue(0,zu._key,this._disposables)(()=>{if(!this._ignoreChangeEvent)try{const t=e.get(zu._key,0,"{}");this._data=JSON.parse(t)}catch(t){console.log("FAILED to read storage after UPDATE",t)}this._onDidChange.fire()}))}dispose(){this._onDidChange.dispose(),this._disposables.dispose()}_isHiddenByDefault(e,t){return this._hiddenByDefaultCache.get(`${e.id}/${t}`)??!1}setDefaultState(e,t,i){this._hiddenByDefaultCache.set(`${e.id}/${t}`,i)}isHidden(e,t){const i=this._isHiddenByDefault(e,t),n=this._data[e.id]?.includes(t)??!1;return i?!n:n}updateHidden(e,t,i){this._isHiddenByDefault(e,t)&&(i=!i);const s=this._data[e.id];if(i)s?s.indexOf(t)<0&&s.push(t):this._data[e.id]=[t];else if(s){const r=s.indexOf(t);r>=0&&JB(s,r),s.length===0&&delete this._data[e.id]}this._persist()}reset(e){if(e===void 0)this._data=Object.create(null),this._persist();else{for(const{id:t}of e)this._data[t]&&delete this._data[t];this._persist()}}_persist(){try{this._ignoreChangeEvent=!0;const e=JSON.stringify(this._data);this._storageService.store(zu._key,e,0,0)}finally{this._ignoreChangeEvent=!1}}},zu=lh,lh._key="menu.hiddenCommands",lh);tI=zu=vy([la(0,du)],tI);class lp{constructor(e,t){this._id=e,this._collectContextKeysForSubmenus=t,this._menuGroups=[],this._allMenuIds=new Set,this._structureContextKeys=new Set,this._preconditionContextKeys=new Set,this._toggledContextKeys=new Set,this.refresh()}get allMenuIds(){return this._allMenuIds}get structureContextKeys(){return this._structureContextKeys}get preconditionContextKeys(){return this._preconditionContextKeys}get toggledContextKeys(){return this._toggledContextKeys}refresh(){this._menuGroups.length=0,this._allMenuIds.clear(),this._structureContextKeys.clear(),this._preconditionContextKeys.clear(),this._toggledContextKeys.clear();const e=this._sort(Eo.getMenuItems(this._id));let t;for(const i of e){const n=i.group||"";(!t||t[0]!==n)&&(t=[n,[]],this._menuGroups.push(t)),t[1].push(i),this._collectContextKeysAndSubmenuIds(i)}this._allMenuIds.add(this._id)}_sort(e){return e}_collectContextKeysAndSubmenuIds(e){if(lp._fillInKbExprKeys(e.when,this._structureContextKeys),Rf(e)){if(e.command.precondition&&lp._fillInKbExprKeys(e.command.precondition,this._preconditionContextKeys),e.command.toggled){const t=e.command.toggled.condition||e.command.toggled;lp._fillInKbExprKeys(t,this._toggledContextKeys)}}else this._collectContextKeysForSubmenus&&(Eo.getMenuItems(e.submenu).forEach(this._collectContextKeysAndSubmenuIds,this),this._allMenuIds.add(e.submenu))}static _fillInKbExprKeys(e,t){if(e)for(const i of e.keys())t.add(i)}}let iI=Om=class extends lp{constructor(e,t,i,n,s,r){super(e,i),this._hiddenStates=t,this._commandService=n,this._keybindingService=s,this._contextKeyService=r,this.refresh()}createActionGroups(e){const t=[];for(const i of this._menuGroups){const[n,s]=i;let r;for(const a of s)if(this._contextKeyService.contextMatchesRules(a.when)){const l=Rf(a);l&&this._hiddenStates.setDefaultState(this._id,a.command.id,!!a.isHiddenByDefault);const c=_te(this._id,l?a.command:a,this._hiddenStates);if(l){const d=o8(this._commandService,this._keybindingService,a.command.id,a.when);(r??=[]).push(new so(a.command,a.alt,e,c,d,this._contextKeyService,this._commandService))}else{const d=new Om(a.submenu,this._hiddenStates,this._collectContextKeysForSubmenus,this._commandService,this._keybindingService,this._contextKeyService).createActionGroups(e),h=Gi.join(...d.map(u=>u[1]));h.length>0&&(r??=[]).push(new Zm(a,c,h))}}r&&r.length>0&&t.push([n,r])}return t}_sort(e){return e.sort(Om._compareMenuItems)}static _compareMenuItems(e,t){const i=e.group,n=t.group;if(i!==n){if(i){if(!n)return-1}else return 1;if(i==="navigation")return-1;if(n==="navigation")return 1;const a=i.localeCompare(n);if(a!==0)return a}const s=e.order||0,r=t.order||0;return sr?1:Om._compareTitles(Rf(e)?e.command.title:e.title,Rf(t)?t.command.title:t.title)}static _compareTitles(e,t){const i=typeof e=="string"?e:e.original,n=typeof t=="string"?t:t.original;return i.localeCompare(n)}};iI=Om=vy([la(3,hi),la(4,vt),la(5,De)],iI);let bv=class{constructor(e,t,i,n,s,r){this._disposables=new X,this._menuInfo=new iI(e,t,i.emitEventsForSubmenuChanges,n,s,r);const a=new ci(()=>{this._menuInfo.refresh(),this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!0,isToggleChange:!0})},i.eventDebounceDelay);this._disposables.add(a),this._disposables.add(Eo.onDidChangeMenu(h=>{for(const u of this._menuInfo.allMenuIds)if(h.has(u)){a.schedule();break}}));const l=this._disposables.add(new X),c=h=>{let u=!1,f=!1,g=!1;for(const p of h)if(u=u||p.isStructuralChange,f=f||p.isEnablementChange,g=g||p.isToggleChange,u&&f&&g)break;return{menu:this,isStructuralChange:u,isEnablementChange:f,isToggleChange:g}},d=()=>{l.add(r.onDidChangeContext(h=>{const u=h.affectsSome(this._menuInfo.structureContextKeys),f=h.affectsSome(this._menuInfo.preconditionContextKeys),g=h.affectsSome(this._menuInfo.toggledContextKeys);(u||f||g)&&this._onDidChange.fire({menu:this,isStructuralChange:u,isEnablementChange:f,isToggleChange:g})})),l.add(t.onDidChange(h=>{this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!1,isToggleChange:!1})}))};this._onDidChange=new Y5({onWillAddFirstListener:d,onDidRemoveLastListener:l.clear.bind(l),delay:i.eventDebounceDelay,merge:c}),this.onDidChange=this._onDidChange.event}getActions(e){return this._menuInfo.createActionGroups(e)}dispose(){this._disposables.dispose(),this._onDidChange.dispose()}};bv=vy([la(3,hi),la(4,vt),la(5,De)],bv);function _te(o,e,t){const i=hz(e)?e.submenu.id:e.id,n=typeof e.title=="string"?e.title:e.title.value,s=Mf({id:`hide/${o.id}/${i}`,label:m("hide.label","Hide '{0}'",n),run(){t.updateHidden(o,i,!0)}}),r=Mf({id:`toggle/${o.id}/${i}`,label:n,get checked(){return!t.isHidden(o,i)},run(){t.updateHidden(o,i,!!this.checked)}});return{hide:s,toggle:r,get isHidden(){return!r.checked}}}function o8(o,e,t,i=void 0,n=!0){return Mf({id:`configureKeybinding/${t}`,label:m("configure keybinding","Configure Keybinding"),enabled:n,run(){const r=!!!e.lookupKeybinding(t)&&i?i.serialize():void 0;o.executeCommand("workbench.action.openGlobalKeybindings",`@command:${t}`+(r?` +when:${r}`:""))}})}var bte=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},hO=function(o,e){return function(t,i){e(t,i,o)}},nI;const uO="application/vnd.code.resources";var ch;let sI=(ch=class extends z{constructor(e,t){super(),this.layoutService=e,this.logService=t,this.mapTextToType=new Map,this.findText="",this.resources=[],this.resourcesStateHash=void 0,(Ac||bF)&&this.installWebKitWriteTextWorkaround(),this._register(J.runAndSubscribe(T0,({window:i,disposables:n})=>{n.add(U(i.document,"copy",()=>this.clearResourcesState()))},{window:_t,disposables:this._store}))}installWebKitWriteTextWorkaround(){const e=()=>{const t=new qN;this.webKitPendingClipboardWritePromise&&!this.webKitPendingClipboardWritePromise.isSettled&&this.webKitPendingClipboardWritePromise.cancel(),this.webKitPendingClipboardWritePromise=t,km().navigator.clipboard.write([new ClipboardItem({"text/plain":t.p})]).catch(async i=>{(!(i instanceof Error)||i.name!=="NotAllowedError"||!t.isRejected)&&this.logService.error(i)})};this._register(J.runAndSubscribe(this.layoutService.onDidAddContainer,({container:t,disposables:i})=>{i.add(U(t,"click",e)),i.add(U(t,"keydown",e))},{container:this.layoutService.mainContainer,disposables:this._store}))}async writeText(e,t){if(this.clearResourcesState(),t){this.mapTextToType.set(t,e);return}if(this.webKitPendingClipboardWritePromise)return this.webKitPendingClipboardWritePromise.complete(e);try{return await km().navigator.clipboard.writeText(e)}catch(i){console.error(i)}this.fallbackWriteText(e)}fallbackWriteText(e){const t=JN(),i=t.activeElement,n=t.body.appendChild(ce("textarea",{"aria-hidden":!0}));n.style.height="1px",n.style.width="1px",n.style.position="absolute",n.value=e,n.focus(),n.select(),t.execCommand("copy"),Ei(i)&&i.focus(),n.remove()}async readText(e){if(e)return this.mapTextToType.get(e)||"";try{return await km().navigator.clipboard.readText()}catch(t){console.error(t)}return""}async readFindText(){return this.findText}async writeFindText(e){this.findText=e}async readResources(){try{const t=await km().navigator.clipboard.read();for(const i of t)if(i.types.includes(`web ${uO}`)){const n=await i.getType(`web ${uO}`);return JSON.parse(await n.text()).map(r=>ve.from(r))}}catch{}const e=await this.computeResourcesStateHash();return this.resourcesStateHash!==e&&this.clearResourcesState(),this.resources}async computeResourcesStateHash(){if(this.resources.length===0)return;const e=await this.readText();return ZN(e.substring(0,nI.MAX_RESOURCE_STATE_SOURCE_LENGTH))}clearInternalState(){this.clearResourcesState()}clearResourcesState(){this.resources=[],this.resourcesStateHash=void 0}},nI=ch,ch.MAX_RESOURCE_STATE_SOURCE_LENGTH=1e3,ch);sI=nI=bte([hO(0,jc),hO(1,gs)],sI);const wy=He("clipboardService");var Cte=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vte=function(o,e){return function(t,i){e(t,i,o)}};const cp="data-keybinding-context";let A2=class{constructor(e,t){this._id=e,this._parent=t,this._value=Object.create(null),this._value._contextId=e}get value(){return{...this._value}}setValue(e,t){return this._value[e]!==t?(this._value[e]=t,!0):!1}removeValue(e){return e in this._value?(delete this._value[e],!0):!1}getValue(e){const t=this._value[e];return typeof t>"u"&&this._parent?this._parent.getValue(e):t}};const jw=class jw extends A2{constructor(){super(-1,null)}setValue(e,t){return!1}removeValue(e){return!1}getValue(e){}};jw.INSTANCE=new jw;let Lg=jw;const Mp=class Mp extends A2{constructor(e,t,i){super(e,null),this._configurationService=t,this._values=Bf.forConfigKeys(),this._listener=this._configurationService.onDidChangeConfiguration(n=>{if(n.source===7){const s=Array.from(this._values,([r])=>r);this._values.clear(),i.fire(new gO(s))}else{const s=[];for(const r of n.affectedKeys){const a=`config.${r}`,l=this._values.findSuperstr(a);l!==void 0&&(s.push(...st.map(l,([c])=>c)),this._values.deleteSuperstr(a)),this._values.has(a)&&(s.push(a),this._values.delete(a))}i.fire(new gO(s))}})}dispose(){this._listener.dispose()}getValue(e){if(e.indexOf(Mp._keyPrefix)!==0)return super.getValue(e);if(this._values.has(e))return this._values.get(e);const t=e.substr(Mp._keyPrefix.length),i=this._configurationService.getValue(t);let n;switch(typeof i){case"number":case"boolean":case"string":n=i;break;default:Array.isArray(i)?n=JSON.stringify(i):n=i}return this._values.set(e,n),n}setValue(e,t){return super.setValue(e,t)}removeValue(e){return super.removeValue(e)}};Mp._keyPrefix="config.";let oI=Mp;class wte{constructor(e,t,i){this._service=e,this._key=t,this._defaultValue=i,this.reset()}set(e){this._service.setContext(this._key,e)}reset(){typeof this._defaultValue>"u"?this._service.removeContext(this._key):this._service.setContext(this._key,this._defaultValue)}get(){return this._service.getContextKeyValue(this._key)}}class fO{constructor(e){this.key=e}affectsSome(e){return e.has(this.key)}allKeysContainedIn(e){return this.affectsSome(e)}}class gO{constructor(e){this.keys=e}affectsSome(e){for(const t of this.keys)if(e.has(t))return!0;return!1}allKeysContainedIn(e){return this.keys.every(t=>e.has(t))}}class yte{constructor(e){this.events=e}affectsSome(e){for(const t of this.events)if(t.affectsSome(e))return!0;return!1}allKeysContainedIn(e){return this.events.every(t=>t.allKeysContainedIn(e))}}function Ste(o,e){return o.allKeysContainedIn(new Set(Object.keys(e)))}class r8 extends z{constructor(e){super(),this._onDidChangeContext=this._register(new Nh({merge:t=>new yte(t)})),this.onDidChangeContext=this._onDidChangeContext.event,this._isDisposed=!1,this._myContextId=e}createKey(e,t){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new wte(this,e,t)}bufferChangeEvents(e){this._onDidChangeContext.pause();try{e()}finally{this._onDidChangeContext.resume()}}createScoped(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new Lte(this,e)}contextMatchesRules(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");const t=this.getContextValuesContainer(this._myContextId);return e?e.evaluate(t):!0}getContextKeyValue(e){if(!this._isDisposed)return this.getContextValuesContainer(this._myContextId).getValue(e)}setContext(e,t){if(this._isDisposed)return;const i=this.getContextValuesContainer(this._myContextId);i&&i.setValue(e,t)&&this._onDidChangeContext.fire(new fO(e))}removeContext(e){this._isDisposed||this.getContextValuesContainer(this._myContextId).removeValue(e)&&this._onDidChangeContext.fire(new fO(e))}getContext(e){return this._isDisposed?Lg.INSTANCE:this.getContextValuesContainer(xte(e))}dispose(){super.dispose(),this._isDisposed=!0}}let rI=class extends r8{constructor(e){super(0),this._contexts=new Map,this._lastContextId=0;const t=this._register(new oI(this._myContextId,e,this._onDidChangeContext));this._contexts.set(this._myContextId,t)}getContextValuesContainer(e){return this._isDisposed?Lg.INSTANCE:this._contexts.get(e)||Lg.INSTANCE}createChildContext(e=this._myContextId){if(this._isDisposed)throw new Error("ContextKeyService has been disposed");const t=++this._lastContextId;return this._contexts.set(t,new A2(t,this.getContextValuesContainer(e))),t}disposeContext(e){this._isDisposed||this._contexts.delete(e)}};rI=Cte([vte(0,lt)],rI);class Lte extends r8{constructor(e,t){if(super(e.createChildContext()),this._parentChangeListener=this._register(new Dn),this._parent=e,this._updateParentChangeListener(),this._domNode=t,this._domNode.hasAttribute(cp)){let i="";this._domNode.classList&&(i=Array.from(this._domNode.classList.values()).join(", ")),console.error(`Element already has context attribute${i?": "+i:""}`)}this._domNode.setAttribute(cp,String(this._myContextId))}_updateParentChangeListener(){this._parentChangeListener.value=this._parent.onDidChangeContext(e=>{const i=this._parent.getContextValuesContainer(this._myContextId).value;Ste(e,i)||this._onDidChangeContext.fire(e)})}dispose(){this._isDisposed||(this._parent.disposeContext(this._myContextId),this._domNode.removeAttribute(cp),super.dispose())}getContextValuesContainer(e){return this._isDisposed?Lg.INSTANCE:this._parent.getContextValuesContainer(e)}createChildContext(e=this._myContextId){if(this._isDisposed)throw new Error("ScopedContextKeyService has been disposed");return this._parent.createChildContext(e)}disposeContext(e){this._isDisposed||this._parent.disposeContext(e)}}function xte(o){for(;o;){if(o.hasAttribute(cp)){const e=o.getAttribute(cp);return e?parseInt(e,10):NaN}o=o.parentElement}return 0}function kte(o,e,t){o.get(De).createKey(String(e),Dte(t))}function Dte(o){return O5(o,e=>{if(typeof e=="object"&&e.$mid===1)return ve.revive(e).toString();if(e instanceof ve)return e.toString()})}bt.registerCommand("_setContext",kte);bt.registerCommand({id:"getContextKeyInfo",handler(){return[...le.all()].sort((o,e)=>o.key.localeCompare(e.key))},metadata:{description:m("getContextKeyInfo","A command that returns information about context keys"),args:[]}});bt.registerCommand("_generateContextKeyInfo",function(){const o=[],e=new Set;for(const t of le.all())e.has(t.key)||(e.add(t.key),o.push(t));o.sort((t,i)=>t.key.localeCompare(i.key)),console.log(JSON.stringify(o,void 0,2))});let Ite=class{constructor(e,t){this.key=e,this.data=t,this.incoming=new Map,this.outgoing=new Map}};class mO{constructor(e){this._hashFn=e,this._nodes=new Map}roots(){const e=[];for(const t of this._nodes.values())t.outgoing.size===0&&e.push(t);return e}insertEdge(e,t){const i=this.lookupOrInsertNode(e),n=this.lookupOrInsertNode(t);i.outgoing.set(n.key,n),n.incoming.set(i.key,i)}removeNode(e){const t=this._hashFn(e);this._nodes.delete(t);for(const i of this._nodes.values())i.outgoing.delete(t),i.incoming.delete(t)}lookupOrInsertNode(e){const t=this._hashFn(e);let i=this._nodes.get(t);return i||(i=new Ite(t,e),this._nodes.set(t,i)),i}isEmpty(){return this._nodes.size===0}toString(){const e=[];for(const[t,i]of this._nodes)e.push(`${t} + (-> incoming)[${[...i.incoming.keys()].join(", ")}] + (outgoing ->)[${[...i.outgoing.keys()].join(",")}] +`);return e.join(` +`)}findCycleSlow(){for(const[e,t]of this._nodes){const i=new Set([e]),n=this._findCycle(t,i);if(n)return n}}_findCycle(e,t){for(const[i,n]of e.outgoing){if(t.has(i))return[...t,i].join(" -> ");t.add(i);const s=this._findCycle(n,t);if(s)return s;t.delete(i)}}}class jg{constructor(...e){this._entries=new Map;for(const[t,i]of e)this.set(t,i)}set(e,t){const i=this._entries.get(e);return this._entries.set(e,t),i}get(e){return this._entries.get(e)}}const Ete=!1;class pO extends Error{constructor(e){super("cyclic dependency between services"),this.message=e.findCycleSlow()??`UNABLE to detect cycle, dumping graph: +${e.toString()}`}}class Cv{constructor(e=new jg,t=!1,i,n=Ete){this._services=e,this._strict=t,this._parent=i,this._enableTracing=n,this._isDisposed=!1,this._servicesToMaybeDispose=new Set,this._children=new Set,this._activeInstantiations=new Set,this._services.set(ke,this),this._globalGraph=n?i?._globalGraph??new mO(s=>s):void 0}dispose(){if(!this._isDisposed){this._isDisposed=!0,xt(this._children),this._children.clear();for(const e of this._servicesToMaybeDispose)MN(e)&&e.dispose();this._servicesToMaybeDispose.clear()}}_throwIfDisposed(){if(this._isDisposed)throw new Error("InstantiationService has been disposed")}createChild(e,t){this._throwIfDisposed();const i=this,n=new class extends Cv{dispose(){i._children.delete(n),super.dispose()}}(e,this._strict,this,this._enableTracing);return this._children.add(n),t?.add(n),n}invokeFunction(e,...t){this._throwIfDisposed();const i=dp.traceInvocation(this._enableTracing,e);let n=!1;try{return e({get:r=>{if(n)throw TN("service accessor is only valid during the invocation of its target method");const a=this._getOrCreateServiceInstance(r,i);if(!a)throw new Error(`[invokeFunction] unknown service '${r}'`);return a}},...t)}finally{n=!0,i.stop()}}createInstance(e,...t){this._throwIfDisposed();let i,n;return e instanceof Gr?(i=dp.traceCreation(this._enableTracing,e.ctor),n=this._createInstance(e.ctor,e.staticArguments.concat(t),i)):(i=dp.traceCreation(this._enableTracing,e),n=this._createInstance(e,t,i)),i.stop(),n}_createInstance(e,t=[],i){const n=fr.getServiceDependencies(e).sort((a,l)=>a.index-l.index),s=[];for(const a of n){const l=this._getOrCreateServiceInstance(a.id,i);l||this._throwIfStrict(`[createInstance] ${e.name} depends on UNKNOWN service ${a.id}.`,!1),s.push(l)}const r=n.length>0?n[0].index:t.length;if(t.length!==r){console.trace(`[createInstance] First service dependency of ${e.name} at position ${r+1} conflicts with ${t.length} static arguments`);const a=r-t.length;a>0?t=t.concat(new Array(a)):t=t.slice(0,r)}return Reflect.construct(e,t.concat(s))}_setCreatedServiceInstance(e,t){if(this._services.get(e)instanceof Gr)this._services.set(e,t);else if(this._parent)this._parent._setCreatedServiceInstance(e,t);else throw new Error("illegalState - setting UNKNOWN service instance")}_getServiceInstanceOrDescriptor(e){const t=this._services.get(e);return!t&&this._parent?this._parent._getServiceInstanceOrDescriptor(e):t}_getOrCreateServiceInstance(e,t){this._globalGraph&&this._globalGraphImplicitDependency&&this._globalGraph.insertEdge(this._globalGraphImplicitDependency,String(e));const i=this._getServiceInstanceOrDescriptor(e);return i instanceof Gr?this._safeCreateAndCacheServiceInstance(e,i,t.branch(e,!0)):(t.branch(e,!1),i)}_safeCreateAndCacheServiceInstance(e,t,i){if(this._activeInstantiations.has(e))throw new Error(`illegal state - RECURSIVELY instantiating service '${e}'`);this._activeInstantiations.add(e);try{return this._createAndCacheServiceInstance(e,t,i)}finally{this._activeInstantiations.delete(e)}}_createAndCacheServiceInstance(e,t,i){const n=new mO(l=>l.id.toString());let s=0;const r=[{id:e,desc:t,_trace:i}],a=new Set;for(;r.length;){const l=r.pop();if(!a.has(String(l.id))){if(a.add(String(l.id)),n.lookupOrInsertNode(l),s++>1e3)throw new pO(n);for(const c of fr.getServiceDependencies(l.desc.ctor)){const d=this._getServiceInstanceOrDescriptor(c.id);if(d||this._throwIfStrict(`[createInstance] ${e} depends on ${c.id} which is NOT registered.`,!0),this._globalGraph?.insertEdge(String(l.id),String(c.id)),d instanceof Gr){const h={id:c.id,desc:d,_trace:l._trace.branch(c.id,!0)};n.insertEdge(l,h),r.push(h)}}}}for(;;){const l=n.roots();if(l.length===0){if(!n.isEmpty())throw new pO(n);break}for(const{data:c}of l){if(this._getServiceInstanceOrDescriptor(c.id)instanceof Gr){const h=this._createServiceInstanceWithOwner(c.id,c.desc.ctor,c.desc.staticArguments,c.desc.supportsDelayedInstantiation,c._trace);this._setCreatedServiceInstance(c.id,h)}n.removeNode(c)}}return this._getServiceInstanceOrDescriptor(e)}_createServiceInstanceWithOwner(e,t,i=[],n,s){if(this._services.get(e)instanceof Gr)return this._createServiceInstance(e,t,i,n,s,this._servicesToMaybeDispose);if(this._parent)return this._parent._createServiceInstanceWithOwner(e,t,i,n,s);throw new Error(`illegalState - creating UNKNOWN service instance ${t.name}`)}_createServiceInstance(e,t,i=[],n,s,r){if(n){const a=new Cv(void 0,this._strict,this,this._enableTracing);a._globalGraphImplicitDependency=String(e);const l=new Map,c=new PH(()=>{const d=a._createInstance(t,i,s);for(const[h,u]of l){const f=d[h];if(typeof f=="function")for(const g of u)g.disposable=f.apply(d,g.listener)}return l.clear(),r.add(d),d});return new Proxy(Object.create(null),{get(d,h){if(!c.isInitialized&&typeof h=="string"&&(h.startsWith("onDid")||h.startsWith("onWill"))){let g=l.get(h);return g||(g=new yn,l.set(h,g)),(_,b,C)=>{if(c.isInitialized)return c.value[h](_,b,C);{const w={listener:[_,b,C],disposable:void 0},v=g.push(w);return _e(()=>{v(),w.disposable?.dispose()})}}}if(h in d)return d[h];const u=c.value;let f=u[h];return typeof f!="function"||(f=f.bind(u),d[h]=f),f},set(d,h,u){return c.value[h]=u,!0},getPrototypeOf(d){return t.prototype}})}else{const a=this._createInstance(t,i,s);return r.add(a),a}}_throwIfStrict(e,t){if(t&&console.warn(e),this._strict)throw new Error(e)}}const ws=class ws{static traceInvocation(e,t){return e?new ws(2,t.name||new Error().stack.split(` +`).slice(3,4).join(` +`)):ws._None}static traceCreation(e,t){return e?new ws(1,t.name):ws._None}constructor(e,t){this.type=e,this.name=t,this._start=Date.now(),this._dep=[]}branch(e,t){const i=new ws(3,e.toString());return this._dep.push([e,t,i]),i}stop(){const e=Date.now()-this._start;ws._totals+=e;let t=!1;function i(s,r){const a=[],l=new Array(s+1).join(" ");for(const[c,d,h]of r._dep)if(d&&h){t=!0,a.push(`${l}CREATES -> ${c}`);const u=i(s+1,h);u&&a.push(u)}else a.push(`${l}uses -> ${c}`);return a.join(` +`)}const n=[`${this.type===1?"CREATE":"CALL"} ${this.name}`,`${i(1,this)}`,`DONE, took ${e.toFixed(2)}ms (grand total ${ws._totals.toFixed(2)}ms)`];(e>2||t)&&ws.all.add(n.join(` +`))}};ws.all=new Set,ws._None=new class extends ws{constructor(){super(0,null)}stop(){}branch(){return this}},ws._totals=0;let dp=ws;const Nte=new Set([Te.inMemory,Te.vscodeSourceControl,Te.walkThrough,Te.walkThroughSnippet,Te.vscodeChatCodeBlock]);class Tte{constructor(){this._byResource=new cs,this._byOwner=new Map}set(e,t,i){let n=this._byResource.get(e);n||(n=new Map,this._byResource.set(e,n)),n.set(t,i);let s=this._byOwner.get(t);s||(s=new cs,this._byOwner.set(t,s)),s.set(e,i)}get(e,t){return this._byResource.get(e)?.get(t)}delete(e,t){let i=!1,n=!1;const s=this._byResource.get(e);s&&(i=s.delete(t));const r=this._byOwner.get(t);if(r&&(n=r.delete(e)),i!==n)throw new Error("illegal state");return i&&n}values(e){return typeof e=="string"?this._byOwner.get(e)?.values()??st.empty():ve.isUri(e)?this._byResource.get(e)?.values()??st.empty():st.map(st.concat(...this._byOwner.values()),t=>t[1])}}class Mte{constructor(e){this.errors=0,this.infos=0,this.warnings=0,this.unknowns=0,this._data=new cs,this._service=e,this._subscription=e.onMarkerChanged(this._update,this)}dispose(){this._subscription.dispose()}_update(e){for(const t of e){const i=this._data.get(t);i&&this._substract(i);const n=this._resourceStats(t);this._add(n),this._data.set(t,n)}}_resourceStats(e){const t={errors:0,warnings:0,infos:0,unknowns:0};if(Nte.has(e.scheme))return t;for(const{severity:i}of this._service.read({resource:e}))i===Vt.Error?t.errors+=1:i===Vt.Warning?t.warnings+=1:i===Vt.Info?t.infos+=1:t.unknowns+=1;return t}_substract(e){this.errors-=e.errors,this.warnings-=e.warnings,this.infos-=e.infos,this.unknowns-=e.unknowns}_add(e){this.errors+=e.errors,this.warnings+=e.warnings,this.infos+=e.infos,this.unknowns+=e.unknowns}}class Gl{constructor(){this._onMarkerChanged=new Y5({delay:0,merge:Gl._merge}),this.onMarkerChanged=this._onMarkerChanged.event,this._data=new Tte,this._stats=new Mte(this)}dispose(){this._stats.dispose(),this._onMarkerChanged.dispose()}remove(e,t){for(const i of t||[])this.changeOne(e,i,[])}changeOne(e,t,i){if(N5(i))this._data.delete(t,e)&&this._onMarkerChanged.fire([t]);else{const n=[];for(const s of i){const r=Gl._toMarker(e,t,s);r&&n.push(r)}this._data.set(t,e,n),this._onMarkerChanged.fire([t])}}static _toMarker(e,t,i){let{code:n,severity:s,message:r,source:a,startLineNumber:l,startColumn:c,endLineNumber:d,endColumn:h,relatedInformation:u,tags:f}=i;if(r)return l=l>0?l:1,c=c>0?c:1,d=d>=l?d:l,h=h>0?h:c,{resource:t,owner:e,code:n,severity:s,message:r,source:a,startLineNumber:l,startColumn:c,endLineNumber:d,endColumn:h,relatedInformation:u,tags:f}}changeAll(e,t){const i=[],n=this._data.values(e);if(n)for(const s of n){const r=st.first(s);r&&(i.push(r.resource),this._data.delete(r.resource,e))}if(Ps(t)){const s=new cs;for(const{resource:r,marker:a}of t){const l=Gl._toMarker(e,r,a);if(!l)continue;const c=s.get(r);c?c.push(l):(s.set(r,[l]),i.push(r))}for(const[r,a]of s)this._data.set(r,e,a)}i.length>0&&this._onMarkerChanged.fire(i)}read(e=Object.create(null)){let{owner:t,resource:i,severities:n,take:s}=e;if((!s||s<0)&&(s=-1),t&&i){const r=this._data.get(i,t);if(r){const a=[];for(const l of r)if(Gl._accept(l,n)){const c=a.push(l);if(s>0&&c===s)break}return a}else return[]}else if(!t&&!i){const r=[];for(const a of this._data.values())for(const l of a)if(Gl._accept(l,n)){const c=r.push(l);if(s>0&&c===s)return r}return r}else{const r=this._data.values(i??t),a=[];for(const l of r)for(const c of l)if(Gl._accept(c,n)){const d=a.push(c);if(s>0&&d===s)return a}return a}}static _accept(e,t){return t===void 0||(t&e.severity)===e.severity}static _merge(e){const t=new cs;for(const i of e)for(const n of i)t.set(n,!0);return Array.from(t.keys())}}class Rte extends z{get configurationModel(){return this._configurationModel}constructor(e){super(),this.logService=e,this._configurationModel=Pi.createEmptyModel(this.logService)}reload(){return this.resetConfigurationModel(),this.configurationModel}getConfigurationDefaultOverrides(){return{}}resetConfigurationModel(){this._configurationModel=Pi.createEmptyModel(this.logService);const e=Bi.as(su.Configuration).getConfigurationProperties();this.updateConfigurationModel(Object.keys(e),e)}updateConfigurationModel(e,t){const i=this.getConfigurationDefaultOverrides();for(const n of e){const s=i[n],r=t[n];s!==void 0?this._configurationModel.setValue(n,s):r?this._configurationModel.setValue(n,r.default):this._configurationModel.removeValue(n)}}}const rb=He("accessibilitySignalService"),et=class et{static register(e){return new et(e.fileName)}constructor(e){this.fileName=e}};et.error=et.register({fileName:"error.mp3"}),et.warning=et.register({fileName:"warning.mp3"}),et.success=et.register({fileName:"success.mp3"}),et.foldedArea=et.register({fileName:"foldedAreas.mp3"}),et.break=et.register({fileName:"break.mp3"}),et.quickFixes=et.register({fileName:"quickFixes.mp3"}),et.taskCompleted=et.register({fileName:"taskCompleted.mp3"}),et.taskFailed=et.register({fileName:"taskFailed.mp3"}),et.terminalBell=et.register({fileName:"terminalBell.mp3"}),et.diffLineInserted=et.register({fileName:"diffLineInserted.mp3"}),et.diffLineDeleted=et.register({fileName:"diffLineDeleted.mp3"}),et.diffLineModified=et.register({fileName:"diffLineModified.mp3"}),et.chatRequestSent=et.register({fileName:"chatRequestSent.mp3"}),et.chatResponseReceived1=et.register({fileName:"chatResponseReceived1.mp3"}),et.chatResponseReceived2=et.register({fileName:"chatResponseReceived2.mp3"}),et.chatResponseReceived3=et.register({fileName:"chatResponseReceived3.mp3"}),et.chatResponseReceived4=et.register({fileName:"chatResponseReceived4.mp3"}),et.clear=et.register({fileName:"clear.mp3"}),et.save=et.register({fileName:"save.mp3"}),et.format=et.register({fileName:"format.mp3"}),et.voiceRecordingStarted=et.register({fileName:"voiceRecordingStarted.mp3"}),et.voiceRecordingStopped=et.register({fileName:"voiceRecordingStopped.mp3"}),et.progress=et.register({fileName:"progress.mp3"});let At=et;class Ate{constructor(e){this.randomOneOf=e}}const Me=class Me{constructor(e,t,i,n,s,r){this.sound=e,this.name=t,this.legacySoundSettingsKey=i,this.settingsKey=n,this.legacyAnnouncementSettingsKey=s,this.announcementMessage=r}static register(e){const t=new Ate("randomOneOf"in e.sound?e.sound.randomOneOf:[e.sound]),i=new Me(t,e.name,e.legacySoundSettingsKey,e.settingsKey,e.legacyAnnouncementSettingsKey,e.announcementMessage);return Me._signals.add(i),i}};Me._signals=new Set,Me.errorAtPosition=Me.register({name:m("accessibilitySignals.positionHasError.name","Error at Position"),sound:At.error,announcementMessage:m("accessibility.signals.positionHasError","Error"),settingsKey:"accessibility.signals.positionHasError",delaySettingsKey:"accessibility.signalOptions.delays.errorAtPosition"}),Me.warningAtPosition=Me.register({name:m("accessibilitySignals.positionHasWarning.name","Warning at Position"),sound:At.warning,announcementMessage:m("accessibility.signals.positionHasWarning","Warning"),settingsKey:"accessibility.signals.positionHasWarning",delaySettingsKey:"accessibility.signalOptions.delays.warningAtPosition"}),Me.errorOnLine=Me.register({name:m("accessibilitySignals.lineHasError.name","Error on Line"),sound:At.error,legacySoundSettingsKey:"audioCues.lineHasError",legacyAnnouncementSettingsKey:"accessibility.alert.error",announcementMessage:m("accessibility.signals.lineHasError","Error on Line"),settingsKey:"accessibility.signals.lineHasError"}),Me.warningOnLine=Me.register({name:m("accessibilitySignals.lineHasWarning.name","Warning on Line"),sound:At.warning,legacySoundSettingsKey:"audioCues.lineHasWarning",legacyAnnouncementSettingsKey:"accessibility.alert.warning",announcementMessage:m("accessibility.signals.lineHasWarning","Warning on Line"),settingsKey:"accessibility.signals.lineHasWarning"}),Me.foldedArea=Me.register({name:m("accessibilitySignals.lineHasFoldedArea.name","Folded Area on Line"),sound:At.foldedArea,legacySoundSettingsKey:"audioCues.lineHasFoldedArea",legacyAnnouncementSettingsKey:"accessibility.alert.foldedArea",announcementMessage:m("accessibility.signals.lineHasFoldedArea","Folded"),settingsKey:"accessibility.signals.lineHasFoldedArea"}),Me.break=Me.register({name:m("accessibilitySignals.lineHasBreakpoint.name","Breakpoint on Line"),sound:At.break,legacySoundSettingsKey:"audioCues.lineHasBreakpoint",legacyAnnouncementSettingsKey:"accessibility.alert.breakpoint",announcementMessage:m("accessibility.signals.lineHasBreakpoint","Breakpoint"),settingsKey:"accessibility.signals.lineHasBreakpoint"}),Me.inlineSuggestion=Me.register({name:m("accessibilitySignals.lineHasInlineSuggestion.name","Inline Suggestion on Line"),sound:At.quickFixes,legacySoundSettingsKey:"audioCues.lineHasInlineSuggestion",settingsKey:"accessibility.signals.lineHasInlineSuggestion"}),Me.terminalQuickFix=Me.register({name:m("accessibilitySignals.terminalQuickFix.name","Terminal Quick Fix"),sound:At.quickFixes,legacySoundSettingsKey:"audioCues.terminalQuickFix",legacyAnnouncementSettingsKey:"accessibility.alert.terminalQuickFix",announcementMessage:m("accessibility.signals.terminalQuickFix","Quick Fix"),settingsKey:"accessibility.signals.terminalQuickFix"}),Me.onDebugBreak=Me.register({name:m("accessibilitySignals.onDebugBreak.name","Debugger Stopped on Breakpoint"),sound:At.break,legacySoundSettingsKey:"audioCues.onDebugBreak",legacyAnnouncementSettingsKey:"accessibility.alert.onDebugBreak",announcementMessage:m("accessibility.signals.onDebugBreak","Breakpoint"),settingsKey:"accessibility.signals.onDebugBreak"}),Me.noInlayHints=Me.register({name:m("accessibilitySignals.noInlayHints","No Inlay Hints on Line"),sound:At.error,legacySoundSettingsKey:"audioCues.noInlayHints",legacyAnnouncementSettingsKey:"accessibility.alert.noInlayHints",announcementMessage:m("accessibility.signals.noInlayHints","No Inlay Hints"),settingsKey:"accessibility.signals.noInlayHints"}),Me.taskCompleted=Me.register({name:m("accessibilitySignals.taskCompleted","Task Completed"),sound:At.taskCompleted,legacySoundSettingsKey:"audioCues.taskCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.taskCompleted",announcementMessage:m("accessibility.signals.taskCompleted","Task Completed"),settingsKey:"accessibility.signals.taskCompleted"}),Me.taskFailed=Me.register({name:m("accessibilitySignals.taskFailed","Task Failed"),sound:At.taskFailed,legacySoundSettingsKey:"audioCues.taskFailed",legacyAnnouncementSettingsKey:"accessibility.alert.taskFailed",announcementMessage:m("accessibility.signals.taskFailed","Task Failed"),settingsKey:"accessibility.signals.taskFailed"}),Me.terminalCommandFailed=Me.register({name:m("accessibilitySignals.terminalCommandFailed","Terminal Command Failed"),sound:At.error,legacySoundSettingsKey:"audioCues.terminalCommandFailed",legacyAnnouncementSettingsKey:"accessibility.alert.terminalCommandFailed",announcementMessage:m("accessibility.signals.terminalCommandFailed","Command Failed"),settingsKey:"accessibility.signals.terminalCommandFailed"}),Me.terminalCommandSucceeded=Me.register({name:m("accessibilitySignals.terminalCommandSucceeded","Terminal Command Succeeded"),sound:At.success,announcementMessage:m("accessibility.signals.terminalCommandSucceeded","Command Succeeded"),settingsKey:"accessibility.signals.terminalCommandSucceeded"}),Me.terminalBell=Me.register({name:m("accessibilitySignals.terminalBell","Terminal Bell"),sound:At.terminalBell,legacySoundSettingsKey:"audioCues.terminalBell",legacyAnnouncementSettingsKey:"accessibility.alert.terminalBell",announcementMessage:m("accessibility.signals.terminalBell","Terminal Bell"),settingsKey:"accessibility.signals.terminalBell"}),Me.notebookCellCompleted=Me.register({name:m("accessibilitySignals.notebookCellCompleted","Notebook Cell Completed"),sound:At.taskCompleted,legacySoundSettingsKey:"audioCues.notebookCellCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellCompleted",announcementMessage:m("accessibility.signals.notebookCellCompleted","Notebook Cell Completed"),settingsKey:"accessibility.signals.notebookCellCompleted"}),Me.notebookCellFailed=Me.register({name:m("accessibilitySignals.notebookCellFailed","Notebook Cell Failed"),sound:At.taskFailed,legacySoundSettingsKey:"audioCues.notebookCellFailed",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellFailed",announcementMessage:m("accessibility.signals.notebookCellFailed","Notebook Cell Failed"),settingsKey:"accessibility.signals.notebookCellFailed"}),Me.diffLineInserted=Me.register({name:m("accessibilitySignals.diffLineInserted","Diff Line Inserted"),sound:At.diffLineInserted,legacySoundSettingsKey:"audioCues.diffLineInserted",settingsKey:"accessibility.signals.diffLineInserted"}),Me.diffLineDeleted=Me.register({name:m("accessibilitySignals.diffLineDeleted","Diff Line Deleted"),sound:At.diffLineDeleted,legacySoundSettingsKey:"audioCues.diffLineDeleted",settingsKey:"accessibility.signals.diffLineDeleted"}),Me.diffLineModified=Me.register({name:m("accessibilitySignals.diffLineModified","Diff Line Modified"),sound:At.diffLineModified,legacySoundSettingsKey:"audioCues.diffLineModified",settingsKey:"accessibility.signals.diffLineModified"}),Me.chatRequestSent=Me.register({name:m("accessibilitySignals.chatRequestSent","Chat Request Sent"),sound:At.chatRequestSent,legacySoundSettingsKey:"audioCues.chatRequestSent",legacyAnnouncementSettingsKey:"accessibility.alert.chatRequestSent",announcementMessage:m("accessibility.signals.chatRequestSent","Chat Request Sent"),settingsKey:"accessibility.signals.chatRequestSent"}),Me.chatResponseReceived=Me.register({name:m("accessibilitySignals.chatResponseReceived","Chat Response Received"),legacySoundSettingsKey:"audioCues.chatResponseReceived",sound:{randomOneOf:[At.chatResponseReceived1,At.chatResponseReceived2,At.chatResponseReceived3,At.chatResponseReceived4]},settingsKey:"accessibility.signals.chatResponseReceived"}),Me.progress=Me.register({name:m("accessibilitySignals.progress","Progress"),sound:At.progress,legacySoundSettingsKey:"audioCues.chatResponsePending",legacyAnnouncementSettingsKey:"accessibility.alert.progress",announcementMessage:m("accessibility.signals.progress","Progress"),settingsKey:"accessibility.signals.progress"}),Me.clear=Me.register({name:m("accessibilitySignals.clear","Clear"),sound:At.clear,legacySoundSettingsKey:"audioCues.clear",legacyAnnouncementSettingsKey:"accessibility.alert.clear",announcementMessage:m("accessibility.signals.clear","Clear"),settingsKey:"accessibility.signals.clear"}),Me.save=Me.register({name:m("accessibilitySignals.save","Save"),sound:At.save,legacySoundSettingsKey:"audioCues.save",legacyAnnouncementSettingsKey:"accessibility.alert.save",announcementMessage:m("accessibility.signals.save","Save"),settingsKey:"accessibility.signals.save"}),Me.format=Me.register({name:m("accessibilitySignals.format","Format"),sound:At.format,legacySoundSettingsKey:"audioCues.format",legacyAnnouncementSettingsKey:"accessibility.alert.format",announcementMessage:m("accessibility.signals.format","Format"),settingsKey:"accessibility.signals.format"}),Me.voiceRecordingStarted=Me.register({name:m("accessibilitySignals.voiceRecordingStarted","Voice Recording Started"),sound:At.voiceRecordingStarted,legacySoundSettingsKey:"audioCues.voiceRecordingStarted",settingsKey:"accessibility.signals.voiceRecordingStarted"}),Me.voiceRecordingStopped=Me.register({name:m("accessibilitySignals.voiceRecordingStopped","Voice Recording Stopped"),sound:At.voiceRecordingStopped,legacySoundSettingsKey:"audioCues.voiceRecordingStopped",settingsKey:"accessibility.signals.voiceRecordingStopped"});let rr=Me;class Pte extends z{constructor(e,t=[]){super(),this.logger=new fz([e,...t]),this._register(e.onDidChangeLogLevel(i=>this.setLevel(i)))}get onDidChangeLogLevel(){return this.logger.onDidChangeLogLevel}setLevel(e){this.logger.setLevel(e)}getLevel(){return this.logger.getLevel()}trace(e,...t){this.logger.trace(e,...t)}debug(e,...t){this.logger.debug(e,...t)}info(e,...t){this.logger.info(e,...t)}warn(e,...t){this.logger.warn(e,...t)}error(e,...t){this.logger.error(e,...t)}}const a8=[];function Ote(o){a8.push(o)}function Fte(){return a8.slice(0)}class Bte{getParseResult(e){}}var ka=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},ri=function(o,e){return function(t,i){e(t,i,o)}};class Wte{constructor(e){this.disposed=!1,this.model=e,this._onWillDispose=new A}get textEditorModel(){return this.model}dispose(){this.disposed=!0,this._onWillDispose.fire()}}let aI=class{constructor(e){this.modelService=e}createModelReference(e){const t=this.modelService.getModel(e);return t?Promise.resolve(new vW(new Wte(t))):Promise.reject(new Error("Model not found"))}};aI=ka([ri(0,Fi)],aI);const qw=class qw{show(){return qw.NULL_PROGRESS_RUNNER}async showWhile(e,t){await e}};qw.NULL_PROGRESS_RUNNER={done:()=>{},total:()=>{},worked:()=>{}};let lI=qw;class Hte{withProgress(e,t,i){return t({report:()=>{}})}}class Vte{constructor(){this.isExtensionDevelopment=!1,this.isBuilt=!1}}class zte{async confirm(e){return{confirmed:this.doConfirm(e.message,e.detail),checkboxChecked:!1}}doConfirm(e,t){let i=e;return t&&(i=i+` + +`+t),_t.confirm(i)}async prompt(e){let t;if(this.doConfirm(e.message,e.detail)){const n=[...e.buttons??[]];e.cancelButton&&typeof e.cancelButton!="string"&&typeof e.cancelButton!="boolean"&&n.push(e.cancelButton),t=await n[0]?.run({checkboxChecked:!1})}return{result:t}}async error(e,t){await this.prompt({type:Qt.Error,message:e,detail:t})}}const Rp=class Rp{info(e){return this.notify({severity:Qt.Info,message:e})}warn(e){return this.notify({severity:Qt.Warning,message:e})}error(e){return this.notify({severity:Qt.Error,message:e})}notify(e){switch(e.severity){case Qt.Error:console.error(e.message);break;case Qt.Warning:console.warn(e.message);break;default:console.log(e.message);break}return Rp.NO_OP}prompt(e,t,i,n){return Rp.NO_OP}status(e,t){return z.None}};Rp.NO_OP=new W$;let cI=Rp,dI=class{constructor(e){this._onWillExecuteCommand=new A,this._onDidExecuteCommand=new A,this.onDidExecuteCommand=this._onDidExecuteCommand.event,this._instantiationService=e}executeCommand(e,...t){const i=bt.getCommand(e);if(!i)return Promise.reject(new Error(`command '${e}' not found`));try{this._onWillExecuteCommand.fire({commandId:e,args:t});const n=this._instantiationService.invokeFunction.apply(this._instantiationService,[i.handler,...t]);return this._onDidExecuteCommand.fire({commandId:e,args:t}),Promise.resolve(n)}catch(n){return Promise.reject(n)}}};dI=ka([ri(0,ke)],dI);let xg=class extends nZ{constructor(e,t,i,n,s,r){super(e,t,i,n,s),this._cachedResolver=null,this._dynamicKeybindings=[],this._domNodeListeners=[];const a=f=>{const g=new X;g.add(U(f,ee.KEY_DOWN,p=>{const _=new Nt(p);this._dispatch(_,_.target)&&(_.preventDefault(),_.stopPropagation())})),g.add(U(f,ee.KEY_UP,p=>{const _=new Nt(p);this._singleModifierDispatch(_,_.target)&&_.preventDefault()})),this._domNodeListeners.push(new Ute(f,g))},l=f=>{for(let g=0;g{f.getOption(61)||a(f.getContainerDomNode())},d=f=>{f.getOption(61)||l(f.getContainerDomNode())};this._register(r.onCodeEditorAdd(c)),this._register(r.onCodeEditorRemove(d)),r.listCodeEditors().forEach(c);const h=f=>{a(f.getContainerDomNode())},u=f=>{l(f.getContainerDomNode())};this._register(r.onDiffEditorAdd(h)),this._register(r.onDiffEditorRemove(u)),r.listDiffEditors().forEach(h)}addDynamicKeybinding(e,t,i,n){return No(bt.registerCommand(e,i),this.addDynamicKeybindings([{keybinding:t,command:e,when:n}]))}addDynamicKeybindings(e){const t=e.map(i=>({keybinding:Fx(i.keybinding,Ns),command:i.command??null,commandArgs:i.commandArgs,when:i.when,weight1:1e3,weight2:0,extensionId:null,isBuiltinExtension:!1}));return this._dynamicKeybindings=this._dynamicKeybindings.concat(t),this.updateResolver(),_e(()=>{for(let i=0;ithis._log(i))}return this._cachedResolver}_documentHasFocus(){return _t.document.hasFocus()}_toNormalizedKeybindingItems(e,t){const i=[];let n=0;for(const s of e){const r=s.when||void 0,a=s.keybinding;if(!a)i[n++]=new JA(void 0,s.command,s.commandArgs,r,t,null,!1);else{const l=l_.resolveKeybinding(a,Ns);for(const c of l)i[n++]=new JA(c,s.command,s.commandArgs,r,t,null,!1)}}return i}resolveKeyboardEvent(e){const t=new kl(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,e.keyCode);return new l_([t],Ns)}};xg=ka([ri(0,De),ri(1,hi),ri(2,$s),ri(3,mn),ri(4,gs),ri(5,Pt)],xg);class Ute extends z{constructor(e,t){super(),this.domNode=e,this._register(t)}}function _O(o){return o&&typeof o=="object"&&(!o.overrideIdentifier||typeof o.overrideIdentifier=="string")&&(!o.resource||o.resource instanceof ve)}let vv=class{constructor(e){this.logService=e,this._onDidChangeConfiguration=new A,this.onDidChangeConfiguration=this._onDidChangeConfiguration.event;const t=new Rte(e);this._configuration=new ry(t.reload(),Pi.createEmptyModel(e),Pi.createEmptyModel(e),Pi.createEmptyModel(e),Pi.createEmptyModel(e),Pi.createEmptyModel(e),new cs,Pi.createEmptyModel(e),new cs,e),t.dispose()}getValue(e,t){const i=typeof e=="string"?e:void 0,n=_O(e)?e:_O(t)?t:{};return this._configuration.getValue(i,n,void 0)}updateValues(e){const t={data:this._configuration.toData()},i=[];for(const n of e){const[s,r]=n;this.getValue(s)!==r&&(this._configuration.updateValue(s,r),i.push(s))}if(i.length>0){const n=new XG({keys:i,overrides:[]},t,this._configuration,void 0,this.logService);n.source=8,this._onDidChangeConfiguration.fire(n)}return Promise.resolve()}updateValue(e,t,i,n){return this.updateValues([[e,t]])}inspect(e,t={}){return this._configuration.inspect(e,t,void 0)}};vv=ka([ri(0,gs)],vv);let hI=class{constructor(e,t,i){this.configurationService=e,this.modelService=t,this.languageService=i,this._onDidChangeConfiguration=new A,this.configurationService.onDidChangeConfiguration(n=>{this._onDidChangeConfiguration.fire({affectedKeys:n.affectedKeys,affectsConfiguration:(s,r)=>n.affectsConfiguration(r)})})}getValue(e,t,i){const n=P.isIPosition(t)?t:null,s=n?typeof i=="string"?i:void 0:typeof t=="string"?t:void 0,r=e?this.getLanguage(e,n):void 0;return typeof s>"u"?this.configurationService.getValue({resource:e,overrideIdentifier:r}):this.configurationService.getValue(s,{resource:e,overrideIdentifier:r})}getLanguage(e,t){const i=this.modelService.getModel(e);return i?t?i.getLanguageIdAtPosition(t.lineNumber,t.column):i.getLanguageId():this.languageService.guessLanguageIdByFilepathOrFirstLine(e)}};hI=ka([ri(0,lt),ri(1,Fi),ri(2,qt)],hI);let uI=class{constructor(e){this.configurationService=e}getEOL(e,t){const i=this.configurationService.getValue("files.eol",{overrideIdentifier:t,resource:e});return i&&typeof i=="string"&&i!=="auto"?i:Un||Ue?` +`:`\r +`}};uI=ka([ri(0,lt)],uI);class $te{publicLog2(){}}const Ap=class Ap{constructor(){const e=ve.from({scheme:Ap.SCHEME,authority:"model",path:"/"});this.workspace={id:CZ,folders:[new bZ({uri:e,name:"",index:0})]}}getWorkspace(){return this.workspace}getWorkspaceFolder(e){return e&&e.scheme===Ap.SCHEME?this.workspace.folders[0]:null}};Ap.SCHEME="inmemory";let fI=Ap;function wv(o,e,t){if(!e||!(o instanceof vv))return;const i=[];Object.keys(e).forEach(n=>{qG(n)&&i.push([`editor.${n}`,e[n]]),t&&GG(n)&&i.push([`diffEditor.${n}`,e[n]])}),i.length>0&&o.updateValues(i)}let gI=class{constructor(e){this._modelService=e}hasPreviewHandler(){return!1}async apply(e,t){const i=Array.isArray(e)?e:$T.convert(e),n=new Map;for(const a of i){if(!(a instanceof Xd))throw new Error("bad edit - only text edits are supported");const l=this._modelService.getModel(a.resource);if(!l)throw new Error("bad edit - model not found");if(typeof a.versionId=="number"&&l.getVersionId()!==a.versionId)throw new Error("bad state - model changed in the meantime");let c=n.get(l);c||(c=[],n.set(l,c)),c.push(aa.replaceMove(I.lift(a.textEdit.range),a.textEdit.text))}let s=0,r=0;for(const[a,l]of n)a.pushStackElement(),a.pushEditOperations([],l,()=>[]),a.pushStackElement(),r+=1,s+=l.length;return{ariaSummary:$p(Yk.bulkEditServiceSummary,s,r),isApplied:s>0}}};gI=ka([ri(0,Fi)],gI);class Kte{getUriLabel(e,t){return e.scheme==="file"?e.fsPath:e.path}getUriBasenameLabel(e){return Fo(e)}}let mI=class extends VG{constructor(e,t){super(e),this._codeEditorService=t}showContextView(e,t,i){if(!t){const n=this._codeEditorService.getFocusedCodeEditor()||this._codeEditorService.getActiveCodeEditor();n&&(t=n.getContainerDomNode())}return super.showContextView(e,t,i)}};mI=ka([ri(0,jc),ri(1,Pt)],mI);class jte{constructor(){this._neverEmitter=new A,this.onDidChangeTrust=this._neverEmitter.event}isWorkspaceTrusted(){return!0}}class qte extends nD{constructor(){super()}}class Gte extends Pte{constructor(){super(new uz)}}let pI=class extends gD{constructor(e,t,i,n,s,r){super(e,t,i,n,s,r),this.configure({blockMouse:!1})}};pI=ka([ri(0,$s),ri(1,mn),ri(2,lu),ri(3,vt),ri(4,yr),ri(5,De)],pI);const _I={amdModuleId:"vs/editor/common/services/editorSimpleWorker",esmModuleLocation:void 0,label:"editorWorkerService"};let bI=class extends uk{constructor(e,t,i,n,s){super(_I,e,t,i,n,s)}};bI=ka([ri(0,Fi),ri(1,pT),ri(2,gs),ri(3,Gn),ri(4,Se)],bI);class Zte{async playSignal(e,t){}}Qe(gs,Gte,0);Qe(lt,vv,0);Qe(pT,hI,0);Qe(p3,uI,0);Qe(jk,fI,0);Qe(Cg,Kte,0);Qe($s,$te,0);Qe(w3,zte,0);Qe(vT,Vte,0);Qe(mn,cI,0);Qe(xa,Gl,0);Qe(qt,qte,0);Qe(zo,mte,0);Qe(Fi,ID,0);Qe(n2,CD,0);Qe(De,rI,0);Qe(cZ,Hte,0);Qe(G_,lI,0);Qe(du,MY,0);Qe(Zc,bI,0);Qe(b7,gI,0);Qe(vZ,jte,0);Qe(fo,aI,0);Qe(ms,JD,0);Qe(mo,Dee,0);Qe(hi,dI,0);Qe(vt,xg,0);Qe(fy,YD,0);Qe(lu,mI,0);Qe(Vo,bD,0);Qe(wy,sI,0);Qe(Lr,pI,0);Qe(yr,eI,0);Qe(rb,Zte,0);Qe(b9,Bte,0);var pe;(function(o){const e=new jg;for(const[l,c]of IR())e.set(l,c);const t=new Cv(e,!0);e.set(ke,t);function i(l){n||r({});const c=e.get(l);if(!c)throw new Error("Missing service "+l);return c instanceof Gr?t.invokeFunction(d=>d.get(l)):c}o.get=i;let n=!1;const s=new A;function r(l){if(n)return t;n=!0;for(const[d,h]of IR())e.get(d)||e.set(d,h);for(const d in l)if(l.hasOwnProperty(d)){const h=He(d);e.get(h)instanceof Gr&&e.set(h,l[d])}const c=Fte();for(const d of c)try{t.createInstance(d)}catch(h){Ze(h)}return s.fire(),t}o.initialize=r;function a(l){if(n)return l();const c=new X,d=c.add(s.event(()=>{d.dispose(),c.add(l())}));return c}o.withServices=a})(pe||(pe={}));function Yte(o,e){return new Qte(o,e)}class Qte extends EC{constructor(e,t){const i={amdModuleId:_I.amdModuleId,esmModuleLocation:_I.esmModuleLocation,label:t.label};super(i,t.keepIdleModels||!1,e),this._foreignModuleId=t.moduleId,this._foreignModuleCreateData=t.createData||null,this._foreignModuleHost=t.host||null,this._foreignProxy=null}fhr(e,t){if(!this._foreignModuleHost||typeof this._foreignModuleHost[e]!="function")return Promise.reject(new Error("Missing method "+e+" or missing main thread foreign host."));try{return Promise.resolve(this._foreignModuleHost[e].apply(this._foreignModuleHost,t))}catch(i){return Promise.reject(i)}}_getForeignProxy(){return this._foreignProxy||(this._foreignProxy=this._getProxy().then(e=>{const t=this._foreignModuleHost?DL(this._foreignModuleHost):[];return e.$loadForeignModule(this._foreignModuleId,this._foreignModuleCreateData,t).then(i=>{this._foreignModuleCreateData=null;const n=(a,l)=>e.$fmr(a,l),s=(a,l)=>function(){const c=Array.prototype.slice.call(arguments,0);return l(a,c)},r={};for(const a of i)r[a]=s(a,n);return r})})),this._foreignProxy}getProxy(){return this._getForeignProxy()}withSyncedResources(e){return this.workerWithSyncedResources(e).then(t=>this.getProxy())}}const yy={ICodeEditor:"vs.editor.ICodeEditor",IDiffEditor:"vs.editor.IDiffEditor"};class As{constructor(e,t,i,n){this.startColumn=e,this.endColumn=t,this.className=i,this.type=n,this._lineDecorationBrand=void 0}static _equals(e,t){return e.startColumn===t.startColumn&&e.endColumn===t.endColumn&&e.className===t.className&&e.type===t.type}static equalsArr(e,t){const i=e.length,n=t.length;if(i!==n)return!1;for(let s=0;s=s||(a[l++]=new As(Math.max(1,c.startColumn-n+1),Math.min(r+1,c.endColumn-n+1),c.className,c.type));return a}static filter(e,t,i,n){if(e.length===0)return[];const s=[];let r=0;for(let a=0,l=e.length;at||d.isEmpty()&&(c.type===0||c.type===3))continue;const h=d.startLineNumber===t?d.startColumn:i,u=d.endLineNumber===t?d.endColumn:n;s[r++]=new As(h,u,c.inlineClassName,c.type)}return s}static _typeCompare(e,t){const i=[2,0,1,3];return i[e]-i[t]}static compare(e,t){if(e.startColumn!==t.startColumn)return e.startColumn-t.startColumn;if(e.endColumn!==t.endColumn)return e.endColumn-t.endColumn;const i=As._typeCompare(e.type,t.type);return i!==0?i:e.className!==t.className?e.className0&&this.stopOffsets[0]0&&t=e){this.stopOffsets.splice(n,0,e),this.classNames.splice(n,0,t),this.metadata.splice(n,0,i);break}this.count++}}class Xte{static normalize(e,t){if(t.length===0)return[];const i=[],n=new yv;let s=0;for(let r=0,a=t.length;r1){const p=e.charCodeAt(c-2);wi(p)&&c--}if(d>1){const p=e.charCodeAt(d-2);wi(p)&&d--}const f=c-1,g=d-2;s=n.consumeLowerThan(f,s,i),n.count===0&&(s=f),n.insert(g,h,u)}return n.consumeLowerThan(1073741824,s,i),i}}class Ii{constructor(e,t,i,n){this.endIndex=e,this.type=t,this.metadata=i,this.containsRTL=n,this._linePartBrand=void 0}isWhitespace(){return!!(this.metadata&1)}isPseudoAfter(){return!!(this.metadata&4)}}class l8{constructor(e,t){this.startOffset=e,this.endOffset=t}equals(e){return this.startOffset===e.startOffset&&this.endOffset===e.endOffset}}class gu{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_,b,C,w){this.useMonospaceOptimizations=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=i,this.continuesWithWrappedLine=n,this.isBasicASCII=s,this.containsRTL=r,this.fauxIndentLength=a,this.lineTokens=l,this.lineDecorations=c.sort(As.compare),this.tabSize=d,this.startVisibleColumn=h,this.spaceWidth=u,this.stopRenderingLineAfter=p,this.renderWhitespace=_==="all"?4:_==="boundary"?1:_==="selection"?2:_==="trailing"?3:0,this.renderControlCharacters=b,this.fontLigatures=C,this.selectionsOnLine=w&&w.sort((x,L)=>x.startOffset>>16}static getCharIndex(e){return(e&65535)>>>0}constructor(e,t){this.length=e,this._data=new Uint32Array(this.length),this._horizontalOffset=new Uint32Array(this.length)}setColumnInfo(e,t,i,n){const s=(t<<16|i<<0)>>>0;this._data[e-1]=s,this._horizontalOffset[e-1]=n}getHorizontalOffset(e){return this._horizontalOffset.length===0?0:this._horizontalOffset[e-1]}charOffsetToPartData(e){return this.length===0?0:e<0?this._data[0]:e>=this.length?this._data[this.length-1]:this._data[e]}getDomPosition(e){const t=this.charOffsetToPartData(e-1),i=Zr.getPartIndex(t),n=Zr.getCharIndex(t);return new c8(i,n)}getColumn(e,t){return this.partDataToCharOffset(e.partIndex,t,e.charIndex)+1}partDataToCharOffset(e,t,i){if(this.length===0)return 0;const n=(e<<16|i<<0)>>>0;let s=0,r=this.length-1;for(;s+1>>1,_=this._data[p];if(_===n)return p;_>n?r=p:s=p}if(s===r)return s;const a=this._data[s],l=this._data[r];if(a===n)return s;if(l===n)return r;const c=Zr.getPartIndex(a),d=Zr.getCharIndex(a),h=Zr.getPartIndex(l);let u;c!==h?u=t:u=Zr.getCharIndex(l);const f=i-d,g=u-i;return f<=g?s:r}}class CI{constructor(e,t,i){this._renderLineOutputBrand=void 0,this.characterMapping=e,this.containsRTL=t,this.containsForeignElements=i}}function Sy(o,e){if(o.lineContent.length===0){if(o.lineDecorations.length>0){e.appendString("");let t=0,i=0,n=0;for(const r of o.lineDecorations)(r.type===1||r.type===2)&&(e.appendString(''),r.type===1&&(n|=1,t++),r.type===2&&(n|=2,i++));e.appendString("");const s=new Zr(1,t+i);return s.setColumnInfo(1,t,0,0),new CI(s,!1,n)}return e.appendString(""),new CI(new Zr(0,0),!1,0)}return aie(tie(o),e)}class Jte{constructor(e,t,i,n){this.characterMapping=e,this.html=t,this.containsRTL=i,this.containsForeignElements=n}}function Ly(o){const e=new K_(1e4),t=Sy(o,e);return new Jte(t.characterMapping,e.build(),t.containsRTL,t.containsForeignElements)}class eie{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_){this.fontIsMonospace=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=i,this.len=n,this.isOverflowing=s,this.overflowingCharCount=r,this.parts=a,this.containsForeignElements=l,this.fauxIndentLength=c,this.tabSize=d,this.startVisibleColumn=h,this.containsRTL=u,this.spaceWidth=f,this.renderSpaceCharCode=g,this.renderWhitespace=p,this.renderControlCharacters=_}}function tie(o){const e=o.lineContent;let t,i,n;o.stopRenderingLineAfter!==-1&&o.stopRenderingLineAfter0){for(let a=0,l=o.lineDecorations.length;a0&&(s[r++]=new Ii(i,"",0,!1));let a=i;for(let l=0,c=t.getCount();l=n){const f=e?sg(o.substring(a,n)):!1;s[r++]=new Ii(n,h,0,f);break}const u=e?sg(o.substring(a,d)):!1;s[r++]=new Ii(d,h,0,u),a=d}return s}function nie(o,e,t){let i=0;const n=[];let s=0;if(t)for(let r=0,a=e.length;r=50&&(n[s++]=new Ii(f+1,d,h,u),g=f+1,f=-1);g!==c&&(n[s++]=new Ii(c,d,h,u))}else n[s++]=l;i=c}else for(let r=0,a=e.length;r50){const h=l.type,u=l.metadata,f=l.containsRTL,g=Math.ceil(d/50);for(let p=1;p=8234&&o<=8238||o>=8294&&o<=8297||o>=8206&&o<=8207||o===1564}function sie(o,e){const t=[];let i=new Ii(0,"",0,!1),n=0;for(const s of e){const r=s.endIndex;for(;ni.endIndex&&(i=new Ii(n,s.type,s.metadata,s.containsRTL),t.push(i)),i=new Ii(n+1,"mtkcontrol",s.metadata,!1),t.push(i))}n>i.endIndex&&(i=new Ii(r,s.type,s.metadata,s.containsRTL),t.push(i))}return t}function oie(o,e,t,i){const n=o.continuesWithWrappedLine,s=o.fauxIndentLength,r=o.tabSize,a=o.startVisibleColumn,l=o.useMonospaceOptimizations,c=o.selectionsOnLine,d=o.renderWhitespace===1,h=o.renderWhitespace===3,u=o.renderSpaceWidth!==o.spaceWidth,f=[];let g=0,p=0,_=i[p].type,b=i[p].containsRTL,C=i[p].endIndex;const w=i.length;let v=!1,y=zn(e),x;y===-1?(v=!0,y=t,x=t):x=Jh(e);let L=!1,E=0,N=c&&c[E],H=a%r;for(let W=s;W=N.endOffset&&(E++,N=c&&c[E]);let B;if(Wx)B=!0;else if(j===9)B=!0;else if(j===32)if(d)if(L)B=!0;else{const G=W+1W),B&&h&&(B=v||W>x),B&&b&&W>=y&&W<=x&&(B=!1),L){if(!B||!l&&H>=r){if(u){const G=g>0?f[g-1].endIndex:s;for(let ne=G+1;ne<=W;ne++)f[g++]=new Ii(ne,"mtkw",1,!1)}else f[g++]=new Ii(W,"mtkw",1,!1);H=H%r}}else(W===C||B&&W>s)&&(f[g++]=new Ii(W,_,0,b),H=H%r);for(j===9?H=r:Rc(j)?H+=2:H++,L=B;W===C&&(p++,p0?e.charCodeAt(t-1):0,j=t>1?e.charCodeAt(t-2):0;W===32&&j!==32&&j!==9||(F=!0)}else F=!0;if(F)if(u){const W=g>0?f[g-1].endIndex:s;for(let j=W+1;j<=t;j++)f[g++]=new Ii(j,"mtkw",1,!1)}else f[g++]=new Ii(t,"mtkw",1,!1);else f[g++]=new Ii(t,_,0,b);return f}function rie(o,e,t,i){i.sort(As.compare);const n=Xte.normalize(o,i),s=n.length;let r=0;const a=[];let l=0,c=0;for(let h=0,u=t.length;hc&&(c=C.startOffset,a[l++]=new Ii(c,p,_,b)),C.endOffset+1<=g)c=C.endOffset+1,a[l++]=new Ii(c,p+" "+C.className,_|C.metadata,b),r++;else{c=g,a[l++]=new Ii(c,p+" "+C.className,_|C.metadata,b);break}}g>c&&(c=g,a[l++]=new Ii(c,p,_,b))}const d=t[t.length-1].endIndex;if(r'):e.appendString("");for(let N=0,H=c.length;N=d&&(be+=Rt)}}for(ne&&(e.appendString(' style="width:'),e.appendString(String(g*de)),e.appendString('px"')),e.appendASCIICharCode(62);v1?e.appendCharCode(8594):e.appendCharCode(65515);for(let Rt=2;Rt<=we;Rt++)e.appendCharCode(160)}else be=2,we=1,e.appendCharCode(p),e.appendCharCode(8204);x+=be,L+=we,v>=d&&(y+=we)}}else for(e.appendASCIICharCode(62);v=d&&(y+=be)}ae?E++:E=0,v>=r&&!w&&F.isPseudoAfter()&&(w=!0,C.setColumnInfo(v+1,N,x,L)),e.appendString("")}return w||C.setColumnInfo(r+1,c.length-1,x,L),a&&(e.appendString(''),e.appendString(m("showMore","Show more ({0})",cie(l))),e.appendString("")),e.appendString(""),new CI(C,f,n)}function lie(o){return o.toString(16).toUpperCase().padStart(4,"0")}function cie(o){return o<1024?m("overflow.chars","{0} chars",o):o<1024*1024?`${(o/1024).toFixed(1)} KB`:`${(o/1024/1024).toFixed(1)} MB`}class CO{constructor(e,t,i,n){this._viewportBrand=void 0,this.top=e|0,this.left=t|0,this.width=i|0,this.height=n|0}}class die{constructor(e,t){this.tabSize=e,this.data=t}}class P2{constructor(e,t,i,n,s,r,a){this._viewLineDataBrand=void 0,this.content=e,this.continuesWithWrappedLine=t,this.minColumn=i,this.maxColumn=n,this.startVisibleColumn=s,this.tokens=r,this.inlineDecorations=a}}class zs{constructor(e,t,i,n,s,r,a,l,c,d){this.minColumn=e,this.maxColumn=t,this.content=i,this.continuesWithWrappedLine=n,this.isBasicASCII=zs.isBasicASCII(i,r),this.containsRTL=zs.containsRTL(i,this.isBasicASCII,s),this.tokens=a,this.inlineDecorations=l,this.tabSize=c,this.startVisibleColumn=d}static isBasicASCII(e,t){return t?D0(e):!0}static containsRTL(e,t,i){return!t&&i?sg(e):!1}}class hp{constructor(e,t,i){this.range=e,this.inlineClassName=t,this.type=i}}class hie{constructor(e,t,i,n){this.startOffset=e,this.endOffset=t,this.inlineClassName=i,this.inlineClassNameAffectsLetterSpacing=n}toInlineDecoration(e){return new hp(new I(e,this.startOffset+1,e,this.endOffset+1),this.inlineClassName,this.inlineClassNameAffectsLetterSpacing?3:0)}}class h8{constructor(e,t){this._viewModelDecorationBrand=void 0,this.range=e,this.options=t}}class w_{constructor(e,t,i){this.color=e,this.zIndex=t,this.data=i}static compareByRenderingProps(e,t){return e.zIndex===t.zIndex?e.colort.color?1:0:e.zIndex-t.zIndex}static equals(e,t){return e.color===t.color&&e.zIndex===t.zIndex&&li(e.data,t.data)}static equalsArr(e,t){return li(e,t,w_.equals)}}function uie(o){return Array.isArray(o)}function fie(o){return!uie(o)}function u8(o){return typeof o=="string"}function vO(o){return!u8(o)}function kd(o){return!o}function yl(o,e){return o.ignoreCase&&e?e.toLowerCase():e}function wO(o){return o.replace(/[&<>'"_]/g,"-")}function gie(o,e){console.log(`${o.languageId}: ${e}`)}function Et(o,e){return new Error(`${o.languageId}: ${e}`)}function tc(o,e,t,i,n){const s=/\$((\$)|(#)|(\d\d?)|[sS](\d\d?)|@(\w+))/g;let r=null;return e.replace(s,function(a,l,c,d,h,u,f,g,p){return kd(c)?kd(d)?!kd(h)&&h0;){const i=o.tokenizer[t];if(i)return i;const n=t.lastIndexOf(".");n<0?t=null:t=t.substr(0,n)}return null}function pie(o,e){let t=e;for(;t&&t.length>0;){if(o.stateNames[t])return!0;const n=t.lastIndexOf(".");n<0?t=null:t=t.substr(0,n)}return!1}var _ie=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},bie=function(o,e){return function(t,i){e(t,i,o)}},vI;const f8=5,Gw=class Gw{static create(e,t){return this._INSTANCE.create(e,t)}constructor(e){this._maxCacheDepth=e,this._entries=Object.create(null)}create(e,t){if(e!==null&&e.depth>=this._maxCacheDepth)return new qf(e,t);let i=qf.getStackElementId(e);i.length>0&&(i+="|"),i+=t;let n=this._entries[i];return n||(n=new qf(e,t),this._entries[i]=n,n)}};Gw._INSTANCE=new Gw(f8);let y_=Gw;class qf{constructor(e,t){this.parent=e,this.state=t,this.depth=(this.parent?this.parent.depth:0)+1}static getStackElementId(e){let t="";for(;e!==null;)t.length>0&&(t+="|"),t+=e.state,e=e.parent;return t}static _equals(e,t){for(;e!==null&&t!==null;){if(e===t)return!0;if(e.state!==t.state)return!1;e=e.parent,t=t.parent}return e===null&&t===null}equals(e){return qf._equals(this,e)}push(e){return y_.create(this,e)}pop(){return this.parent}popall(){let e=this;for(;e.parent;)e=e.parent;return e}switchTo(e){return y_.create(this.parent,e)}}class cf{constructor(e,t){this.languageId=e,this.state=t}equals(e){return this.languageId===e.languageId&&this.state.equals(e.state)}clone(){return this.state.clone()===this.state?this:new cf(this.languageId,this.state)}}const Zw=class Zw{static create(e,t){return this._INSTANCE.create(e,t)}constructor(e){this._maxCacheDepth=e,this._entries=Object.create(null)}create(e,t){if(t!==null)return new up(e,t);if(e!==null&&e.depth>=this._maxCacheDepth)return new up(e,t);const i=qf.getStackElementId(e);let n=this._entries[i];return n||(n=new up(e,null),this._entries[i]=n,n)}};Zw._INSTANCE=new Zw(f8);let ic=Zw;class up{constructor(e,t){this.stack=e,this.embeddedLanguageData=t}clone(){return(this.embeddedLanguageData?this.embeddedLanguageData.clone():null)===this.embeddedLanguageData?this:ic.create(this.stack,this.embeddedLanguageData)}equals(e){return!(e instanceof up)||!this.stack.equals(e.stack)?!1:this.embeddedLanguageData===null&&e.embeddedLanguageData===null?!0:this.embeddedLanguageData===null||e.embeddedLanguageData===null?!1:this.embeddedLanguageData.equals(e.embeddedLanguageData)}}class Cie{constructor(){this._tokens=[],this._languageId=null,this._lastTokenType=null,this._lastTokenLanguage=null}enterLanguage(e){this._languageId=e}emit(e,t){this._lastTokenType===t&&this._lastTokenLanguage===this._languageId||(this._lastTokenType=t,this._lastTokenLanguage=this._languageId,this._tokens.push(new zp(e,t,this._languageId)))}nestedLanguageTokenize(e,t,i,n){const s=i.languageId,r=i.state,a=si.get(s);if(!a)return this.enterLanguage(s),this.emit(n,""),r;const l=a.tokenize(e,t,r);if(n!==0)for(const c of l.tokens)this._tokens.push(new zp(c.offset+n,c.type,c.language));else this._tokens=this._tokens.concat(l.tokens);return this._lastTokenType=null,this._lastTokenLanguage=null,this._languageId=null,l.endState}finalize(e){return new FN(this._tokens,e)}}class Sv{constructor(e,t){this._languageService=e,this._theme=t,this._prependTokens=null,this._tokens=[],this._currentLanguageId=0,this._lastTokenMetadata=0}enterLanguage(e){this._currentLanguageId=this._languageService.languageIdCodec.encodeLanguageId(e)}emit(e,t){const i=this._theme.match(this._currentLanguageId,t)|1024;this._lastTokenMetadata!==i&&(this._lastTokenMetadata=i,this._tokens.push(e),this._tokens.push(i))}static _merge(e,t,i){const n=e!==null?e.length:0,s=t.length,r=i!==null?i.length:0;if(n===0&&s===0&&r===0)return new Uint32Array(0);if(n===0&&s===0)return i;if(s===0&&r===0)return e;const a=new Uint32Array(n+s+r);e!==null&&a.set(e);for(let l=0;l{if(r)return;let l=!1;for(let c=0,d=a.changedLanguages.length;c{a.affectsConfiguration("editor.maxTokenizationLineLength")&&(this._maxTokenizationLineLength=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:this._languageId}))}))}getLoadStatus(){const e=[];for(const t in this._embeddedLanguages){const i=si.get(t);if(i){if(i instanceof vI){const n=i.getLoadStatus();n.loaded===!1&&e.push(n.promise)}continue}si.isResolved(t)||e.push(si.getOrCreate(t))}return e.length===0?{loaded:!0}:{loaded:!1,promise:Promise.all(e).then(t=>{})}}getInitialState(){const e=y_.create(null,this._lexer.start);return ic.create(e,null)}tokenize(e,t,i){if(e.length>=this._maxTokenizationLineLength)return _7(this._languageId,i);const n=new Cie,s=this._tokenize(e,t,i,n);return n.finalize(s)}tokenizeEncoded(e,t,i){if(e.length>=this._maxTokenizationLineLength)return zT(this._languageService.languageIdCodec.encodeLanguageId(this._languageId),i);const n=new Sv(this._languageService,this._standaloneThemeService.getColorTheme().tokenTheme),s=this._tokenize(e,t,i,n);return n.finalize(s)}_tokenize(e,t,i,n){return i.embeddedLanguageData?this._nestedTokenize(e,t,i,0,n):this._myTokenize(e,t,i,0,n)}_findLeavingNestedLanguageOffset(e,t){let i=this._lexer.tokenizer[t.stack.state];if(!i&&(i=e1(this._lexer,t.stack.state),!i))throw Et(this._lexer,"tokenizer state is not defined: "+t.stack.state);let n=-1,s=!1;for(const r of i){if(!vO(r.action)||r.action.nextEmbedded!=="@pop")continue;s=!0;let a=r.resolveRegex(t.stack.state);const l=a.source;if(l.substr(0,4)==="^(?:"&&l.substr(l.length-1,1)===")"){const d=(a.ignoreCase?"i":"")+(a.unicode?"u":"");a=new RegExp(l.substr(4,l.length-5),d)}const c=e.search(a);c===-1||c!==0&&r.matchOnlyAtLineStart||(n===-1||c0&&s.nestedLanguageTokenize(a,!1,i.embeddedLanguageData,n);const l=e.substring(r);return this._myTokenize(l,t,i,n+r,s)}_safeRuleName(e){return e?e.name:"(unknown)"}_myTokenize(e,t,i,n,s){s.enterLanguage(this._languageId);const r=e.length,a=t&&this._lexer.includeLF?e+` +`:e,l=a.length;let c=i.embeddedLanguageData,d=i.stack,h=0,u=null,f=!0;for(;f||h=l)break;f=!1;let N=this._lexer.tokenizer[b];if(!N&&(N=e1(this._lexer,b),!N))throw Et(this._lexer,"tokenizer state is not defined: "+b);const H=a.substr(h);for(const F of N)if((h===0||!F.matchOnlyAtLineStart)&&(C=H.match(F.resolveRegex(b)),C)){w=C[0],v=F.action;break}}if(C||(C=[""],w=""),v||(h=this._lexer.maxStack)throw Et(this._lexer,"maximum tokenizer stack size reached: ["+d.state+","+d.parent.state+",...]");d=d.push(b)}else if(v.next==="@pop"){if(d.depth<=1)throw Et(this._lexer,"trying to pop an empty stack in rule: "+this._safeRuleName(y));d=d.pop()}else if(v.next==="@popall")d=d.popall();else{let N=tc(this._lexer,v.next,w,C,b);if(N[0]==="@"&&(N=N.substr(1)),e1(this._lexer,N))d=d.push(N);else throw Et(this._lexer,"trying to set a next state '"+N+"' that is undefined in rule: "+this._safeRuleName(y))}}v.log&&typeof v.log=="string"&&gie(this._lexer,this._lexer.languageId+": "+tc(this._lexer,v.log,w,C,b))}if(L===null)throw Et(this._lexer,"lexer rule has no well-defined action in rule: "+this._safeRuleName(y));const E=N=>{const H=this._languageService.getLanguageIdByLanguageName(N)||this._languageService.getLanguageIdByMimeType(N)||N,F=this._getNestedEmbeddedLanguageData(H);if(h0)throw Et(this._lexer,"groups cannot be nested: "+this._safeRuleName(y));if(C.length!==L.length+1)throw Et(this._lexer,"matched number of groups does not match the number of actions in rule: "+this._safeRuleName(y));let N=0;for(let H=1;Ho});class O2{static colorizeElement(e,t,i,n){n=n||{};const s=n.theme||"vs",r=n.mimeType||i.getAttribute("lang")||i.getAttribute("data-lang");if(!r)return console.error("Mode not detected"),Promise.resolve();const a=t.getLanguageIdByMimeType(r)||r;e.setTheme(s);const l=i.firstChild?i.firstChild.nodeValue:"";i.className+=" "+s;const c=d=>{const h=wie?.createHTML(d)??d;i.innerHTML=h};return this.colorize(t,l||"",a,n).then(c,d=>console.error(d))}static async colorize(e,t,i,n){const s=e.languageIdCodec;let r=4;n&&typeof n.tabSize=="number"&&(r=n.tabSize),$N(t)&&(t=t.substr(1));const a=va(t);if(!e.isRegisteredLanguageId(i))return yO(a,r,s);const l=await si.getOrCreate(i);return l?yie(a,r,l,s):yO(a,r,s)}static colorizeLine(e,t,i,n,s=4){const r=zs.isBasicASCII(e,t),a=zs.containsRTL(e,r,i);return Ly(new gu(!1,!0,e,!1,r,a,0,n,[],s,0,0,0,0,-1,"none",!1,!1,null)).html}static colorizeModelLine(e,t,i=4){const n=e.getLineContent(t);e.tokenization.forceTokenization(t);const r=e.tokenization.getLineTokens(t).inflate();return this.colorizeLine(n,e.mightContainNonBasicASCII(),e.mightContainRTL(),r,i)}}function yie(o,e,t,i){return new Promise((n,s)=>{const r=()=>{const a=Sie(o,e,t,i);if(t instanceof S_){const l=t.getLoadStatus();if(l.loaded===!1){l.promise.then(r,s);return}}n(a)};r()})}function yO(o,e,t){let i=[];const s=new Uint32Array(2);s[0]=0,s[1]=33587200;for(let r=0,a=o.length;r")}return i.join("")}function Sie(o,e,t,i){let n=[],s=t.getInitialState();for(let r=0,a=o.length;r"),s=c.endState}return n.join("")}var Lie=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},xie=function(o,e){return function(t,i){e(t,i,o)}},Xf;let Lv=(Xf=class{constructor(e,t){}dispose(){}},Xf.ID="editor.contrib.markerDecorations",Xf);Lv=Lie([xie(1,n2)],Lv);Ho(Lv.ID,Lv,0);class g8 extends z{constructor(e,t){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._referenceDomElement=e,this._width=-1,this._height=-1,this._resizeObserver=null,this.measureReferenceDomElement(!1,t)}dispose(){this.stopObserving(),super.dispose()}getWidth(){return this._width}getHeight(){return this._height}startObserving(){if(!this._resizeObserver&&this._referenceDomElement){let e=null;const t=()=>{e?this.observe({width:e.width,height:e.height}):this.observe()};let i=!1,n=!1;const s=()=>{if(i&&!n)try{i=!1,n=!0,t()}finally{fs(fe(this._referenceDomElement),()=>{n=!1,s()})}};this._resizeObserver=new ResizeObserver(r=>{r&&r[0]&&r[0].contentRect?e={width:r[0].contentRect.width,height:r[0].contentRect.height}:e=null,i=!0,s()}),this._resizeObserver.observe(this._referenceDomElement)}}stopObserving(){this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null)}observe(e){this.measureReferenceDomElement(!0,e)}measureReferenceDomElement(e,t){let i=0,n=0;t?(i=t.width,n=t.height):this._referenceDomElement&&(i=this._referenceDomElement.clientWidth,n=this._referenceDomElement.clientHeight),i=Math.max(5,i),n=Math.max(5,n),(this._width!==i||this._height!==n)&&(this._width=i,this._height=n,e&&this._onDidChange.fire())}}const xf=class xf{constructor(e,t){this.key=e,this.migrate=t}apply(e){const t=xf._read(e,this.key),i=s=>xf._read(e,s),n=(s,r)=>xf._write(e,s,r);this.migrate(t,i,n)}static _read(e,t){if(typeof e>"u")return;const i=t.indexOf(".");if(i>=0){const n=t.substring(0,i);return this._read(e[n],t.substring(i+1))}return e[t]}static _write(e,t,i){const n=t.indexOf(".");if(n>=0){const s=t.substring(0,n);e[s]=e[s]||{},this._write(e[s],t.substring(n+1),i);return}e[t]=i}};xf.items=[];let L_=xf;function kr(o,e){L_.items.push(new L_(o,e))}function ps(o,e){kr(o,(t,i,n)=>{if(typeof t<"u"){for(const[s,r]of e)if(t===s){n(o,r);return}}})}function kie(o){L_.items.forEach(e=>e.apply(o))}ps("wordWrap",[[!0,"on"],[!1,"off"]]);ps("lineNumbers",[[!0,"on"],[!1,"off"]]);ps("cursorBlinking",[["visible","solid"]]);ps("renderWhitespace",[[!0,"boundary"],[!1,"none"]]);ps("renderLineHighlight",[[!0,"line"],[!1,"none"]]);ps("acceptSuggestionOnEnter",[[!0,"on"],[!1,"off"]]);ps("tabCompletion",[[!1,"off"],[!0,"onlySnippets"]]);ps("hover",[[!0,{enabled:!0}],[!1,{enabled:!1}]]);ps("parameterHints",[[!0,{enabled:!0}],[!1,{enabled:!1}]]);ps("autoIndent",[[!1,"advanced"],[!0,"full"]]);ps("matchBrackets",[[!0,"always"],[!1,"never"]]);ps("renderFinalNewline",[[!0,"on"],[!1,"off"]]);ps("cursorSmoothCaretAnimation",[[!0,"on"],[!1,"off"]]);ps("occurrencesHighlight",[[!0,"singleFile"],[!1,"off"]]);ps("wordBasedSuggestions",[[!0,"matchingDocuments"],[!1,"off"]]);kr("autoClosingBrackets",(o,e,t)=>{o===!1&&(t("autoClosingBrackets","never"),typeof e("autoClosingQuotes")>"u"&&t("autoClosingQuotes","never"),typeof e("autoSurround")>"u"&&t("autoSurround","never"))});kr("renderIndentGuides",(o,e,t)=>{typeof o<"u"&&(t("renderIndentGuides",void 0),typeof e("guides.indentation")>"u"&&t("guides.indentation",!!o))});kr("highlightActiveIndentGuide",(o,e,t)=>{typeof o<"u"&&(t("highlightActiveIndentGuide",void 0),typeof e("guides.highlightActiveIndentation")>"u"&&t("guides.highlightActiveIndentation",!!o))});const Die={method:"showMethods",function:"showFunctions",constructor:"showConstructors",deprecated:"showDeprecated",field:"showFields",variable:"showVariables",class:"showClasses",struct:"showStructs",interface:"showInterfaces",module:"showModules",property:"showProperties",event:"showEvents",operator:"showOperators",unit:"showUnits",value:"showValues",constant:"showConstants",enum:"showEnums",enumMember:"showEnumMembers",keyword:"showKeywords",text:"showWords",color:"showColors",file:"showFiles",reference:"showReferences",folder:"showFolders",typeParameter:"showTypeParameters",snippet:"showSnippets"};kr("suggest.filteredTypes",(o,e,t)=>{if(o&&typeof o=="object"){for(const i of Object.entries(Die))o[i[0]]===!1&&typeof e(`suggest.${i[1]}`)>"u"&&t(`suggest.${i[1]}`,!1);t("suggest.filteredTypes",void 0)}});kr("quickSuggestions",(o,e,t)=>{if(typeof o=="boolean"){const i=o?"on":"off";t("quickSuggestions",{comments:i,strings:i,other:i})}});kr("experimental.stickyScroll.enabled",(o,e,t)=>{typeof o=="boolean"&&(t("experimental.stickyScroll.enabled",void 0),typeof e("stickyScroll.enabled")>"u"&&t("stickyScroll.enabled",o))});kr("experimental.stickyScroll.maxLineCount",(o,e,t)=>{typeof o=="number"&&(t("experimental.stickyScroll.maxLineCount",void 0),typeof e("stickyScroll.maxLineCount")>"u"&&t("stickyScroll.maxLineCount",o))});kr("codeActionsOnSave",(o,e,t)=>{if(o&&typeof o=="object"){let i=!1;const n={};for(const s of Object.entries(o))typeof s[1]=="boolean"?(i=!0,n[s[0]]=s[1]?"explicit":"never"):n[s[0]]=s[1];i&&t("codeActionsOnSave",n)}});kr("codeActionWidget.includeNearbyQuickfixes",(o,e,t)=>{typeof o=="boolean"&&(t("codeActionWidget.includeNearbyQuickfixes",void 0),typeof e("codeActionWidget.includeNearbyQuickFixes")>"u"&&t("codeActionWidget.includeNearbyQuickFixes",o))});kr("lightbulb.enabled",(o,e,t)=>{typeof o=="boolean"&&t("lightbulb.enabled",o?void 0:"off")});class Iie{constructor(){this._tabFocus=!1,this._onDidChangeTabFocus=new A,this.onDidChangeTabFocus=this._onDidChangeTabFocus.event}getTabFocusMode(){return this._tabFocus}setTabFocusMode(e){this._tabFocus=e,this._onDidChangeTabFocus.fire(this._tabFocus)}}const xv=new Iie;var Eie=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Nie=function(o,e){return function(t,i){e(t,i,o)}};let wI=class extends z{constructor(e,t,i,n,s){super(),this._accessibilityService=s,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._onDidChangeFast=this._register(new A),this.onDidChangeFast=this._onDidChangeFast.event,this._isDominatedByLongLines=!1,this._viewLineCount=1,this._lineNumbersDigitCount=1,this._reservedHeight=0,this._glyphMarginDecorationLaneCount=1,this._computeOptionsMemory=new q5,this.isSimpleWidget=e,this.contextMenuId=t,this._containerObserver=this._register(new g8(n,i.dimension)),this._targetWindowId=fe(n).vscodeWindowId,this._rawOptions=SO(i),this._validatedOptions=nc.validateOptions(this._rawOptions),this.options=this._computeOptions(),this.options.get(13)&&this._containerObserver.startObserving(),this._register(Xl.onDidChangeZoomLevel(()=>this._recomputeOptions())),this._register(xv.onDidChangeTabFocus(()=>this._recomputeOptions())),this._register(this._containerObserver.onDidChange(()=>this._recomputeOptions())),this._register(Gx.onDidChange(()=>this._recomputeOptions())),this._register(Zp.getInstance(fe(n)).onDidChange(()=>this._recomputeOptions())),this._register(this._accessibilityService.onDidChangeScreenReaderOptimized(()=>this._recomputeOptions()))}_recomputeOptions(){const e=this._computeOptions(),t=nc.checkEquals(this.options,e);t!==null&&(this.options=e,this._onDidChangeFast.fire(t),this._onDidChange.fire(t))}_computeOptions(){const e=this._readEnvConfiguration(),t=Yd.createFromValidatedSettings(this._validatedOptions,e.pixelRatio,this.isSimpleWidget),i=this._readFontInfo(t),n={memory:this._computeOptionsMemory,outerWidth:e.outerWidth,outerHeight:e.outerHeight-this._reservedHeight,fontInfo:i,extraEditorClassName:e.extraEditorClassName,isDominatedByLongLines:this._isDominatedByLongLines,viewLineCount:this._viewLineCount,lineNumbersDigitCount:this._lineNumbersDigitCount,emptySelectionClipboard:e.emptySelectionClipboard,pixelRatio:e.pixelRatio,tabFocusMode:xv.getTabFocusMode(),accessibilitySupport:e.accessibilitySupport,glyphMarginDecorationLaneCount:this._glyphMarginDecorationLaneCount};return nc.computeOptions(this._validatedOptions,n)}_readEnvConfiguration(){return{extraEditorClassName:Mie(),outerWidth:this._containerObserver.getWidth(),outerHeight:this._containerObserver.getHeight(),emptySelectionClipboard:I0||Mo,pixelRatio:Zp.getInstance(hR(this._targetWindowId,!0).window).value,accessibilitySupport:this._accessibilityService.isScreenReaderOptimized()?2:this._accessibilityService.getAccessibilitySupport()}}_readFontInfo(e){return Gx.readFontInfo(hR(this._targetWindowId,!0).window,e)}getRawOptions(){return this._rawOptions}updateOptions(e){const t=SO(e);nc.applyUpdate(this._rawOptions,t)&&(this._validatedOptions=nc.validateOptions(this._rawOptions),this._recomputeOptions())}observeContainer(e){this._containerObserver.observe(e)}setIsDominatedByLongLines(e){this._isDominatedByLongLines!==e&&(this._isDominatedByLongLines=e,this._recomputeOptions())}setModelLineCount(e){const t=Tie(e);this._lineNumbersDigitCount!==t&&(this._lineNumbersDigitCount=t,this._recomputeOptions())}setViewLineCount(e){this._viewLineCount!==e&&(this._viewLineCount=e,this._recomputeOptions())}setReservedHeight(e){this._reservedHeight!==e&&(this._reservedHeight=e,this._recomputeOptions())}setGlyphMarginDecorationLaneCount(e){this._glyphMarginDecorationLaneCount!==e&&(this._glyphMarginDecorationLaneCount=e,this._recomputeOptions())}};wI=Eie([Nie(4,ms)],wI);function Tie(o){let e=0;for(;o;)o=Math.floor(o/10),e++;return e||1}function Mie(){let o="";return!Ac&&!bF&&(o+="no-user-select "),Ac&&(o+="no-minimap-shadow ",o+="enable-user-select "),Ue&&(o+="mac "),o}class Rie{constructor(){this._values=[]}_read(e){return this._values[e]}get(e){return this._values[e]}_write(e,t){this._values[e]=t}}class Aie{constructor(){this._values=[]}_read(e){if(e>=this._values.length)throw new Error("Cannot read uninitialized value");return this._values[e]}get(e){return this._read(e)}_write(e,t){this._values[e]=t}}class nc{static validateOptions(e){const t=new Rie;for(const i of Zu){const n=i.name==="_never_"?void 0:e[i.name];t._write(i.id,i.validate(n))}return t}static computeOptions(e,t){const i=new Aie;for(const n of Zu)i._write(n.id,n.compute(t,i,e._read(n.id)));return i}static _deepEquals(e,t){if(typeof e!="object"||typeof t!="object"||!e||!t)return e===t;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)?li(e,t):!1;if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const i in e)if(!nc._deepEquals(e[i],t[i]))return!1;return!0}static checkEquals(e,t){const i=[];let n=!1;for(const s of Zu){const r=!nc._deepEquals(e._read(s.id),t._read(s.id));i[s.id]=r,r&&(n=!0)}return n?new j5(i):null}static applyUpdate(e,t){let i=!1;for(const n of Zu)if(t.hasOwnProperty(n.name)){const s=n.applyUpdate(e[n.name],t[n.name]);e[n.name]=s.newValue,i=i||s.didChange}return i}}function SO(o){const e=Ya(o);return kie(e),e}var lc;(function(o){const e={total:0,min:Number.MAX_VALUE,max:0},t={...e},i={...e},n={...e};let s=0;const r={keydown:0,input:0,render:0};function a(){b(),performance.mark("inputlatency/start"),performance.mark("keydown/start"),r.keydown=1,queueMicrotask(l)}o.onKeyDown=a;function l(){r.keydown===1&&(performance.mark("keydown/end"),r.keydown=2)}function c(){performance.mark("input/start"),r.input=1,_()}o.onBeforeInput=c;function d(){r.input===0&&c(),queueMicrotask(h)}o.onInput=d;function h(){r.input===1&&(performance.mark("input/end"),r.input=2)}function u(){b()}o.onKeyUp=u;function f(){b()}o.onSelectionChange=f;function g(){r.keydown===2&&r.input===2&&r.render===0&&(performance.mark("render/start"),r.render=1,queueMicrotask(p),_())}o.onRenderStart=g;function p(){r.render===1&&(performance.mark("render/end"),r.render=2)}function _(){setTimeout(b)}function b(){r.keydown===2&&r.input===2&&r.render===2&&(performance.mark("inputlatency/end"),performance.measure("keydown","keydown/start","keydown/end"),performance.measure("input","input/start","input/end"),performance.measure("render","render/start","render/end"),performance.measure("inputlatency","inputlatency/start","inputlatency/end"),C("keydown",e),C("input",t),C("render",i),C("inputlatency",n),s++,w())}function C(L,E){const N=performance.getEntriesByName(L)[0].duration;E.total+=N,E.min=Math.min(E.min,N),E.max=Math.max(E.max,N)}function w(){performance.clearMarks("keydown/start"),performance.clearMarks("keydown/end"),performance.clearMarks("input/start"),performance.clearMarks("input/end"),performance.clearMarks("render/start"),performance.clearMarks("render/end"),performance.clearMarks("inputlatency/start"),performance.clearMarks("inputlatency/end"),performance.clearMeasures("keydown"),performance.clearMeasures("input"),performance.clearMeasures("render"),performance.clearMeasures("inputlatency"),r.keydown=0,r.input=0,r.render=0}function v(){if(s===0)return;const L={keydown:y(e),input:y(t),render:y(i),total:y(n),sampleCount:s};return x(e),x(t),x(i),x(n),s=0,L}o.getAndClearMeasurements=v;function y(L){return{average:L.total/s,max:L.max,min:L.min}}function x(L){L.total=0,L.min=Number.MAX_VALUE,L.max=0}})(lc||(lc={}));class xy{constructor(e,t){this.x=e,this.y=t,this._pageCoordinatesBrand=void 0}toClientCoordinates(e){return new m8(this.x-e.scrollX,this.y-e.scrollY)}}class m8{constructor(e,t){this.clientX=e,this.clientY=t,this._clientCoordinatesBrand=void 0}toPageCoordinates(e){return new xy(this.clientX+e.scrollX,this.clientY+e.scrollY)}}class Pie{constructor(e,t,i,n){this.x=e,this.y=t,this.width=i,this.height=n,this._editorPagePositionBrand=void 0}}class Oie{constructor(e,t){this.x=e,this.y=t,this._positionRelativeToEditorBrand=void 0}}function F2(o){const e=gi(o);return new Pie(e.left,e.top,e.width,e.height)}function B2(o,e,t){const i=e.width/o.offsetWidth,n=e.height/o.offsetHeight,s=(t.x-e.x)/i,r=(t.y-e.y)/n;return new Oie(s,r)}class Wc extends ur{constructor(e,t,i){super(fe(i),e),this._editorMouseEventBrand=void 0,this.isFromPointerCapture=t,this.pos=new xy(this.posx,this.posy),this.editorPos=F2(i),this.relativePos=B2(i,this.editorPos,this.pos)}}class Fie{constructor(e){this._editorViewDomNode=e}_create(e){return new Wc(e,!1,this._editorViewDomNode)}onContextMenu(e,t){return U(e,"contextmenu",i=>{t(this._create(i))})}onMouseUp(e,t){return U(e,"mouseup",i=>{t(this._create(i))})}onMouseDown(e,t){return U(e,ee.MOUSE_DOWN,i=>{t(this._create(i))})}onPointerDown(e,t){return U(e,ee.POINTER_DOWN,i=>{t(this._create(i),i.pointerId)})}onMouseLeave(e,t){return U(e,ee.MOUSE_LEAVE,i=>{t(this._create(i))})}onMouseMove(e,t){return U(e,"mousemove",i=>t(this._create(i)))}}class Bie{constructor(e){this._editorViewDomNode=e}_create(e){return new Wc(e,!1,this._editorViewDomNode)}onPointerUp(e,t){return U(e,"pointerup",i=>{t(this._create(i))})}onPointerDown(e,t){return U(e,ee.POINTER_DOWN,i=>{t(this._create(i),i.pointerId)})}onPointerLeave(e,t){return U(e,ee.POINTER_LEAVE,i=>{t(this._create(i))})}onPointerMove(e,t){return U(e,"pointermove",i=>t(this._create(i)))}}class Wie extends z{constructor(e){super(),this._editorViewDomNode=e,this._globalPointerMoveMonitor=this._register(new Hg),this._keydownListener=null}startMonitoring(e,t,i,n,s){this._keydownListener=jt(e.ownerDocument,"keydown",r=>{r.toKeyCodeChord().isModifierKey()||this._globalPointerMoveMonitor.stopMonitoring(!0,r.browserEvent)},!0),this._globalPointerMoveMonitor.startMonitoring(e,t,i,r=>{n(new Wc(r,!0,this._editorViewDomNode))},r=>{this._keydownListener.dispose(),s(r)})}stopMonitoring(){this._globalPointerMoveMonitor.stopMonitoring(!0)}}const Yw=class Yw{constructor(e){this._editor=e,this._instanceId=++Yw._idPool,this._counter=0,this._rules=new Map,this._garbageCollectionScheduler=new ci(()=>this.garbageCollect(),1e3)}createClassNameRef(e){const t=this.getOrCreateRule(e);return t.increaseRefCount(),{className:t.className,dispose:()=>{t.decreaseRefCount(),this._garbageCollectionScheduler.schedule()}}}getOrCreateRule(e){const t=this.computeUniqueKey(e);let i=this._rules.get(t);if(!i){const n=this._counter++;i=new Hie(t,`dyn-rule-${this._instanceId}-${n}`,_C(this._editor.getContainerDomNode())?this._editor.getContainerDomNode():void 0,e),this._rules.set(t,i)}return i}computeUniqueKey(e){return JSON.stringify(e)}garbageCollect(){for(const e of this._rules.values())e.hasReferences()||(this._rules.delete(e.key),e.dispose())}};Yw._idPool=0;let kv=Yw;class Hie{constructor(e,t,i,n){this.key=e,this.className=t,this.properties=n,this._referenceCount=0,this._styleElementDisposables=new X,this._styleElement=Vs(i,void 0,this._styleElementDisposables),this._styleElement.textContent=this.getCssText(this.className,this.properties)}getCssText(e,t){let i=`.${e} {`;for(const n in t){const s=t[n];let r;typeof s=="object"?r=oe(s.id):r=s;const a=Vie(n);i+=` + ${a}: ${r};`}return i+=` +}`,i}dispose(){this._styleElementDisposables.dispose(),this._styleElement=void 0}increaseRefCount(){this._referenceCount++}decreaseRefCount(){this._referenceCount--}hasReferences(){return this._referenceCount>0}}function Vie(o){return o.replace(/(^[A-Z])/,([e])=>e.toLowerCase()).replace(/([A-Z])/g,([e])=>`-${e.toLowerCase()}`)}class ab extends z{constructor(){super(),this._shouldRender=!0}shouldRender(){return this._shouldRender}forceShouldRender(){this._shouldRender=!0}setShouldRender(){this._shouldRender=!0}onDidRender(){this._shouldRender=!1}onCompositionStart(e){return!1}onCompositionEnd(e){return!1}onConfigurationChanged(e){return!1}onCursorStateChanged(e){return!1}onDecorationsChanged(e){return!1}onFlushed(e){return!1}onFocusChanged(e){return!1}onLanguageConfigurationChanged(e){return!1}onLineMappingChanged(e){return!1}onLinesChanged(e){return!1}onLinesDeleted(e){return!1}onLinesInserted(e){return!1}onRevealRangeRequest(e){return!1}onScrollChanged(e){return!1}onThemeChanged(e){return!1}onTokensChanged(e){return!1}onTokensColorsChanged(e){return!1}onZonesChanged(e){return!1}handleEvents(e){let t=!1;for(let i=0,n=e.length;i=a.left?n.width=Math.max(n.width,a.left+a.width-n.left):(t[i++]=n,n=a)}return t[i++]=n,t}static _createHorizontalRangesFromClientRects(e,t,i){if(!e||e.length===0)return null;const n=[];for(let s=0,r=e.length;sl)return null;if(t=Math.min(l,Math.max(0,t)),n=Math.min(l,Math.max(0,n)),t===n&&i===s&&i===0&&!e.children[t].firstChild){const u=e.children[t].getClientRects();return r.markDidDomLayout(),this._createHorizontalRangesFromClientRects(u,r.clientRectDeltaLeft,r.clientRectScale)}t!==n&&n>0&&s===0&&(n--,s=1073741824);let c=e.children[t].firstChild,d=e.children[n].firstChild;if((!c||!d)&&(!c&&i===0&&t>0&&(c=e.children[t-1].firstChild,i=1073741824),!d&&s===0&&n>0&&(d=e.children[n-1].firstChild,s=1073741824)),!c||!d)return null;i=Math.min(c.textContent.length,Math.max(0,i)),s=Math.min(d.textContent.length,Math.max(0,s));const h=this._readClientRects(c,i,d,s,r.endNode);return r.markDidDomLayout(),this._createHorizontalRangesFromClientRects(h,r.clientRectDeltaLeft,r.clientRectScale)}}const jie=(function(){return oC?!0:!(Un||Mo||Ac)})();let Gf=!0;class xO{constructor(e,t){this.themeType=t;const i=e.options,n=i.get(50);i.get(38)==="off"?this.renderWhitespace=i.get(100):this.renderWhitespace="none",this.renderControlCharacters=i.get(95),this.spaceWidth=n.spaceWidth,this.middotWidth=n.middotWidth,this.wsmiddotWidth=n.wsmiddotWidth,this.useMonospaceOptimizations=n.isMonospace&&!i.get(33),this.canUseHalfwidthRightwardsArrow=n.canUseHalfwidthRightwardsArrow,this.lineHeight=i.get(67),this.stopRenderingLineAfter=i.get(118),this.fontLigatures=i.get(51)}equals(e){return this.themeType===e.themeType&&this.renderWhitespace===e.renderWhitespace&&this.renderControlCharacters===e.renderControlCharacters&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.wsmiddotWidth===e.wsmiddotWidth&&this.useMonospaceOptimizations===e.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineHeight===e.lineHeight&&this.stopRenderingLineAfter===e.stopRenderingLineAfter&&this.fontLigatures===e.fontLigatures}}const Qw=class Qw{constructor(e){this._options=e,this._isMaybeInvalid=!0,this._renderedViewLine=null}getDomNode(){return this._renderedViewLine&&this._renderedViewLine.domNode?this._renderedViewLine.domNode.domNode:null}setDomNode(e){if(this._renderedViewLine)this._renderedViewLine.domNode=ot(e);else throw new Error("I have no rendered view line to set the dom node to...")}onContentChanged(){this._isMaybeInvalid=!0}onTokensChanged(){this._isMaybeInvalid=!0}onDecorationsChanged(){this._isMaybeInvalid=!0}onOptionsChanged(e){this._isMaybeInvalid=!0,this._options=e}onSelectionChanged(){return mc(this._options.themeType)||this._options.renderWhitespace==="selection"?(this._isMaybeInvalid=!0,!0):!1}renderLine(e,t,i,n,s){if(this._isMaybeInvalid===!1)return!1;this._isMaybeInvalid=!1;const r=n.getViewLineRenderingData(e),a=this._options,l=As.filter(r.inlineDecorations,e,r.minColumn,r.maxColumn);let c=null;if(mc(a.themeType)||this._options.renderWhitespace==="selection"){const f=n.selections;for(const g of f){if(g.endLineNumbere)continue;const p=g.startLineNumber===e?g.startColumn:r.minColumn,_=g.endLineNumber===e?g.endColumn:r.maxColumn;p<_&&(mc(a.themeType)&&l.push(new As(p,_,"inline-selected-text",0)),this._options.renderWhitespace==="selection"&&(c||(c=[]),c.push(new l8(p-1,_-1))))}}const d=new gu(a.useMonospaceOptimizations,a.canUseHalfwidthRightwardsArrow,r.content,r.continuesWithWrappedLine,r.isBasicASCII,r.containsRTL,r.minColumn-1,r.tokens,l,r.tabSize,r.startVisibleColumn,a.spaceWidth,a.middotWidth,a.wsmiddotWidth,a.stopRenderingLineAfter,a.renderWhitespace,a.renderControlCharacters,a.fontLigatures!==Mc.OFF,c);if(this._renderedViewLine&&this._renderedViewLine.input.equals(d))return!1;s.appendString('
    ');const h=Sy(d,s);s.appendString("
    ");let u=null;return Gf&&jie&&r.isBasicASCII&&a.useMonospaceOptimizations&&h.containsForeignElements===0&&(u=new t1(this._renderedViewLine?this._renderedViewLine.domNode:null,d,h.characterMapping)),u||(u=_8(this._renderedViewLine?this._renderedViewLine.domNode:null,d,h.characterMapping,h.containsRTL,h.containsForeignElements)),this._renderedViewLine=u,!0}layoutLine(e,t,i){this._renderedViewLine&&this._renderedViewLine.domNode&&(this._renderedViewLine.domNode.setTop(t),this._renderedViewLine.domNode.setHeight(i))}getWidth(e){return this._renderedViewLine?this._renderedViewLine.getWidth(e):0}getWidthIsFast(){return this._renderedViewLine?this._renderedViewLine.getWidthIsFast():!0}needsMonospaceFontCheck(){return this._renderedViewLine?this._renderedViewLine instanceof t1:!1}monospaceAssumptionsAreValid(){return this._renderedViewLine&&this._renderedViewLine instanceof t1?this._renderedViewLine.monospaceAssumptionsAreValid():Gf}onMonospaceAssumptionsInvalidated(){this._renderedViewLine&&this._renderedViewLine instanceof t1&&(this._renderedViewLine=this._renderedViewLine.toSlowRenderedLine())}getVisibleRangesForRange(e,t,i,n){if(!this._renderedViewLine)return null;t=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,t)),i=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,i));const s=this._renderedViewLine.input.stopRenderingLineAfter;if(s!==-1&&t>s+1&&i>s+1)return new LO(!0,[new ih(this.getWidth(n),0)]);s!==-1&&t>s+1&&(t=s+1),s!==-1&&i>s+1&&(i=s+1);const r=this._renderedViewLine.getVisibleRangesForRange(e,t,i,n);return r&&r.length>0?new LO(!1,r):null}getColumnOfNodeOffset(e,t){return this._renderedViewLine?this._renderedViewLine.getColumnOfNodeOffset(e,t):1}};Qw.CLASS_NAME="view-line";let sl=Qw;class t1{constructor(e,t,i){this._cachedWidth=-1,this.domNode=e,this.input=t;const n=Math.floor(t.lineContent.length/300);if(n>0){this._keyColumnPixelOffsetCache=new Float32Array(n);for(let s=0;s=2&&(console.warn("monospace assumptions have been violated, therefore disabling monospace optimizations!"),Gf=!1)}return Gf}toSlowRenderedLine(){return _8(this.domNode,this.input,this._characterMapping,!1,0)}getVisibleRangesForRange(e,t,i,n){const s=this._getColumnPixelOffset(e,t,n),r=this._getColumnPixelOffset(e,i,n);return[new ih(s,r-s)]}_getColumnPixelOffset(e,t,i){if(t<=300){const c=this._characterMapping.getHorizontalOffset(t);return this._charWidth*c}const n=Math.floor((t-1)/300)-1,s=(n+1)*300+1;let r=-1;if(this._keyColumnPixelOffsetCache&&(r=this._keyColumnPixelOffsetCache[n],r===-1&&(r=this._actualReadPixelOffset(e,s,i),this._keyColumnPixelOffsetCache[n]=r)),r===-1){const c=this._characterMapping.getHorizontalOffset(t);return this._charWidth*c}const a=this._characterMapping.getHorizontalOffset(s),l=this._characterMapping.getHorizontalOffset(t);return r+this._charWidth*(l-a)}_getReadingTarget(e){return e.domNode.firstChild}_actualReadPixelOffset(e,t,i){if(!this.domNode)return-1;const n=this._characterMapping.getDomPosition(t),s=U1.readHorizontalRanges(this._getReadingTarget(this.domNode),n.partIndex,n.charIndex,n.partIndex,n.charIndex,i);return!s||s.length===0?-1:s[0].left}getColumnOfNodeOffset(e,t){return b8(this._characterMapping,e,t)}}class p8{constructor(e,t,i,n,s){if(this.domNode=e,this.input=t,this._characterMapping=i,this._isWhitespaceOnly=/^\s*$/.test(t.lineContent),this._containsForeignElements=s,this._cachedWidth=-1,this._pixelOffsetCache=null,!n||this._characterMapping.length===0){this._pixelOffsetCache=new Float32Array(Math.max(2,this._characterMapping.length+1));for(let r=0,a=this._characterMapping.length;r<=a;r++)this._pixelOffsetCache[r]=-1}}_getReadingTarget(e){return e.domNode.firstChild}getWidth(e){return this.domNode?(this._cachedWidth===-1&&(this._cachedWidth=this._getReadingTarget(this.domNode).offsetWidth,e?.markDidDomLayout()),this._cachedWidth):0}getWidthIsFast(){return this._cachedWidth!==-1}getVisibleRangesForRange(e,t,i,n){if(!this.domNode)return null;if(this._pixelOffsetCache!==null){const s=this._readPixelOffset(this.domNode,e,t,n);if(s===-1)return null;const r=this._readPixelOffset(this.domNode,e,i,n);return r===-1?null:[new ih(s,r-s)]}return this._readVisibleRangesForRange(this.domNode,e,t,i,n)}_readVisibleRangesForRange(e,t,i,n,s){if(i===n){const r=this._readPixelOffset(e,t,i,s);return r===-1?null:[new ih(r,0)]}else return this._readRawVisibleRangesForRange(e,i,n,s)}_readPixelOffset(e,t,i,n){if(this._characterMapping.length===0){if(this._containsForeignElements===0||this._containsForeignElements===2)return 0;if(this._containsForeignElements===1)return this.getWidth(n);const s=this._getReadingTarget(e);return s.firstChild?(n.markDidDomLayout(),s.firstChild.offsetWidth):0}if(this._pixelOffsetCache!==null){const s=this._pixelOffsetCache[i];if(s!==-1)return s;const r=this._actualReadPixelOffset(e,t,i,n);return this._pixelOffsetCache[i]=r,r}return this._actualReadPixelOffset(e,t,i,n)}_actualReadPixelOffset(e,t,i,n){if(this._characterMapping.length===0){const l=U1.readHorizontalRanges(this._getReadingTarget(e),0,0,0,0,n);return!l||l.length===0?-1:l[0].left}if(i===this._characterMapping.length&&this._isWhitespaceOnly&&this._containsForeignElements===0)return this.getWidth(n);const s=this._characterMapping.getDomPosition(i),r=U1.readHorizontalRanges(this._getReadingTarget(e),s.partIndex,s.charIndex,s.partIndex,s.charIndex,n);if(!r||r.length===0)return-1;const a=r[0].left;if(this.input.isBasicASCII){const l=this._characterMapping.getHorizontalOffset(i),c=Math.round(this.input.spaceWidth*l);if(Math.abs(c-a)<=1)return c}return a}_readRawVisibleRangesForRange(e,t,i,n){if(t===1&&i===this._characterMapping.length)return[new ih(0,this.getWidth(n))];const s=this._characterMapping.getDomPosition(t),r=this._characterMapping.getDomPosition(i);return U1.readHorizontalRanges(this._getReadingTarget(e),s.partIndex,s.charIndex,r.partIndex,r.charIndex,n)}getColumnOfNodeOffset(e,t){return b8(this._characterMapping,e,t)}}class qie extends p8{_readVisibleRangesForRange(e,t,i,n,s){const r=super._readVisibleRangesForRange(e,t,i,n,s);if(!r||r.length===0||i===n||i===1&&n===this._characterMapping.length)return r;if(!this.input.containsRTL){const a=this._readPixelOffset(e,t,n,s);if(a!==-1){const l=r[r.length-1];l.left=4&&e[0]===3&&e[3]===8}static isStrictChildOfViewLines(e){return e.length>4&&e[0]===3&&e[3]===8}static isChildOfScrollableElement(e){return e.length>=2&&e[0]===3&&e[1]===6}static isChildOfMinimap(e){return e.length>=2&&e[0]===3&&e[1]===9}static isChildOfContentWidgets(e){return e.length>=4&&e[0]===3&&e[3]===1}static isChildOfOverflowGuard(e){return e.length>=1&&e[0]===3}static isChildOfOverflowingContentWidgets(e){return e.length>=1&&e[0]===2}static isChildOfOverlayWidgets(e){return e.length>=2&&e[0]===3&&e[1]===4}static isChildOfOverflowingOverlayWidgets(e){return e.length>=1&&e[0]===5}}class kg{constructor(e,t,i){this.viewModel=e.viewModel;const n=e.configuration.options;this.layoutInfo=n.get(146),this.viewDomNode=t.viewDomNode,this.lineHeight=n.get(67),this.stickyTabStops=n.get(117),this.typicalHalfwidthCharacterWidth=n.get(50).typicalHalfwidthCharacterWidth,this.lastRenderData=i,this._context=e,this._viewHelper=t}getZoneAtCoord(e){return kg.getZoneAtCoord(this._context,e)}static getZoneAtCoord(e,t){const i=e.viewLayout.getWhitespaceAtVerticalOffset(t);if(i){const n=i.verticalOffset+i.height/2,s=e.viewModel.getLineCount();let r=null,a,l=null;return i.afterLineNumber!==s&&(l=new P(i.afterLineNumber+1,1)),i.afterLineNumber>0&&(r=new P(i.afterLineNumber,e.viewModel.getLineMaxColumn(i.afterLineNumber))),l===null?a=r:r===null?a=l:t=e.layoutInfo.glyphMarginLeft,this.isInContentArea=!this.isInMarginArea,this.mouseColumn=Math.max(0,rn._getMouseColumn(this.mouseContentHorizontalOffset,e.typicalHalfwidthCharacterWidth))}}class Xie extends Qie{get target(){return this._useHitTestTarget?this.hitTestResult.value.hitTarget:this._eventTarget}get targetPath(){return this._targetPathCacheElement!==this.target&&(this._targetPathCacheElement=this.target,this._targetPathCacheValue=vr.collect(this.target,this._ctx.viewDomNode)),this._targetPathCacheValue}constructor(e,t,i,n,s){super(e,t,i,n),this.hitTestResult=new ua(()=>rn.doHitTest(this._ctx,this)),this._targetPathCacheElement=null,this._targetPathCacheValue=new Uint8Array(0),this._ctx=e,this._eventTarget=s;const r=!!this._eventTarget;this._useHitTestTarget=!r}toString(){return`pos(${this.pos.x},${this.pos.y}), editorPos(${this.editorPos.x},${this.editorPos.y}), relativePos(${this.relativePos.x},${this.relativePos.y}), mouseVerticalOffset: ${this.mouseVerticalOffset}, mouseContentHorizontalOffset: ${this.mouseContentHorizontalOffset} + target: ${this.target?this.target.outerHTML:null}`}get wouldBenefitFromHitTestTargetSwitch(){return!this._useHitTestTarget&&this.hitTestResult.value.hitTarget!==null&&this.target!==this.hitTestResult.value.hitTarget}switchToHitTestTarget(){this._useHitTestTarget=!0}_getMouseColumn(e=null){return e&&e.columnr.contentLeft+r.width)continue;const a=e.getVerticalOffsetForLineNumber(r.position.lineNumber);if(a<=s&&s<=a+r.height)return t.fulfillContentText(r.position,null,{mightBeForeignElement:!1,injectedText:null})}}return null}static _hitTestViewZone(e,t){const i=e.getZoneAtCoord(t.mouseVerticalOffset);if(i){const n=t.isInContentArea?8:5;return t.fulfillViewZone(n,i.position,i)}return null}static _hitTestTextArea(e,t){return _n.isTextArea(t.targetPath)?e.lastRenderData.lastTextareaPosition?t.fulfillContentText(e.lastRenderData.lastTextareaPosition,null,{mightBeForeignElement:!1,injectedText:null}):t.fulfillTextarea():null}static _hitTestMargin(e,t){if(t.isInMarginArea){const i=e.getFullLineRangeAtCoord(t.mouseVerticalOffset),n=i.range.getStartPosition();let s=Math.abs(t.relativePos.x);const r={isAfterLines:i.isAfterLines,glyphMarginLeft:e.layoutInfo.glyphMarginLeft,glyphMarginWidth:e.layoutInfo.glyphMarginWidth,lineNumbersWidth:e.layoutInfo.lineNumbersWidth,offsetX:s};if(s-=e.layoutInfo.glyphMarginLeft,s<=e.layoutInfo.glyphMarginWidth){const a=e.viewModel.coordinatesConverter.convertViewPositionToModelPosition(i.range.getStartPosition()),l=e.viewModel.glyphLanes.getLanesAtLine(a.lineNumber);return r.glyphMarginLane=l[Math.floor(s/e.lineHeight)],t.fulfillMargin(2,n,i.range,r)}return s-=e.layoutInfo.glyphMarginWidth,s<=e.layoutInfo.lineNumbersWidth?t.fulfillMargin(3,n,i.range,r):(s-=e.layoutInfo.lineNumbersWidth,t.fulfillMargin(4,n,i.range,r))}return null}static _hitTestViewLines(e,t){if(!_n.isChildOfViewLines(t.targetPath))return null;if(e.isInTopPadding(t.mouseVerticalOffset))return t.fulfillContentEmpty(new P(1,1),kO);if(e.isAfterLines(t.mouseVerticalOffset)||e.isInBottomPadding(t.mouseVerticalOffset)){const n=e.viewModel.getLineCount(),s=e.viewModel.getLineMaxColumn(n);return t.fulfillContentEmpty(new P(n,s),kO)}if(_n.isStrictChildOfViewLines(t.targetPath)){const n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset);if(e.viewModel.getLineLength(n)===0){const r=e.getLineWidth(n),a=JS(t.mouseContentHorizontalOffset-r);return t.fulfillContentEmpty(new P(n,1),a)}const s=e.getLineWidth(n);if(t.mouseContentHorizontalOffset>=s){const r=JS(t.mouseContentHorizontalOffset-s),a=new P(n,e.viewModel.getLineMaxColumn(n));return t.fulfillContentEmpty(a,r)}}const i=t.hitTestResult.value;return i.type===1?rn.createMouseTargetFromHitTestPosition(e,t,i.spanNode,i.position,i.injectedText):t.wouldBenefitFromHitTestTargetSwitch?(t.switchToHitTestTarget(),this._createMouseTarget(e,t)):t.fulfillUnknown()}static _hitTestMinimap(e,t){if(_n.isChildOfMinimap(t.targetPath)){const i=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),n=e.viewModel.getLineMaxColumn(i);return t.fulfillScrollbar(new P(i,n))}return null}static _hitTestScrollbarSlider(e,t){if(_n.isChildOfScrollableElement(t.targetPath)&&t.target&&t.target.nodeType===1){const i=t.target.className;if(i&&/\b(slider|scrollbar)\b/.test(i)){const n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),s=e.viewModel.getLineMaxColumn(n);return t.fulfillScrollbar(new P(n,s))}}return null}static _hitTestScrollbar(e,t){if(_n.isChildOfScrollableElement(t.targetPath)){const i=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),n=e.viewModel.getLineMaxColumn(i);return t.fulfillScrollbar(new P(i,n))}return null}getMouseColumn(e){const t=this._context.configuration.options,i=t.get(146),n=this._context.viewLayout.getCurrentScrollLeft()+e.x-i.contentLeft;return rn._getMouseColumn(n,t.get(50).typicalHalfwidthCharacterWidth)}static _getMouseColumn(e,t){return e<0?1:Math.round(e/t)+1}static createMouseTargetFromHitTestPosition(e,t,i,n,s){const r=n.lineNumber,a=n.column,l=e.getLineWidth(r);if(t.mouseContentHorizontalOffset>l){const b=JS(t.mouseContentHorizontalOffset-l);return t.fulfillContentEmpty(n,b)}const c=e.visibleRangeForPosition(r,a);if(!c)return t.fulfillUnknown(n);const d=c.left;if(Math.abs(t.mouseContentHorizontalOffset-d)<1)return t.fulfillContentText(n,null,{mightBeForeignElement:!!s,injectedText:s});const h=[];if(h.push({offset:c.left,column:a}),a>1){const b=e.visibleRangeForPosition(r,a-1);b&&h.push({offset:b.left,column:a-1})}const u=e.viewModel.getLineMaxColumn(r);if(ab.offset-C.offset);const f=t.pos.toClientCoordinates(fe(e.viewDomNode)),g=i.getBoundingClientRect(),p=g.left<=f.clientX&&f.clientX<=g.right;let _=null;for(let b=1;bs)){const a=Math.floor((n+s)/2);let l=t.pos.y+(a-t.mouseVerticalOffset);l<=t.editorPos.y&&(l=t.editorPos.y+1),l>=t.editorPos.y+t.editorPos.height&&(l=t.editorPos.y+t.editorPos.height-1);const c=new xy(t.pos.x,l),d=this._actualDoHitTestWithCaretRangeFromPoint(e,c.toClientCoordinates(fe(e.viewDomNode)));if(d.type===1)return d}return this._actualDoHitTestWithCaretRangeFromPoint(e,t.pos.toClientCoordinates(fe(e.viewDomNode)))}static _actualDoHitTestWithCaretRangeFromPoint(e,t){const i=ag(e.viewDomNode);let n;if(i?typeof i.caretRangeFromPoint>"u"?n=Jie(i,t.clientX,t.clientY):n=i.caretRangeFromPoint(t.clientX,t.clientY):n=e.viewDomNode.ownerDocument.caretRangeFromPoint(t.clientX,t.clientY),!n||!n.startContainer)return new jl;const s=n.startContainer;if(s.nodeType===s.TEXT_NODE){const r=s.parentNode,a=r?r.parentNode:null,l=a?a.parentNode:null;return(l&&l.nodeType===l.ELEMENT_NODE?l.className:null)===sl.CLASS_NAME?Dd.createFromDOMInfo(e,r,n.startOffset):new jl(s.parentNode)}else if(s.nodeType===s.ELEMENT_NODE){const r=s.parentNode,a=r?r.parentNode:null;return(a&&a.nodeType===a.ELEMENT_NODE?a.className:null)===sl.CLASS_NAME?Dd.createFromDOMInfo(e,s,s.textContent.length):new jl(s)}return new jl}static _doHitTestWithCaretPositionFromPoint(e,t){const i=e.viewDomNode.ownerDocument.caretPositionFromPoint(t.clientX,t.clientY);if(i.offsetNode.nodeType===i.offsetNode.TEXT_NODE){const n=i.offsetNode.parentNode,s=n?n.parentNode:null,r=s?s.parentNode:null;return(r&&r.nodeType===r.ELEMENT_NODE?r.className:null)===sl.CLASS_NAME?Dd.createFromDOMInfo(e,i.offsetNode.parentNode,i.offset):new jl(i.offsetNode.parentNode)}if(i.offsetNode.nodeType===i.offsetNode.ELEMENT_NODE){const n=i.offsetNode.parentNode,s=n&&n.nodeType===n.ELEMENT_NODE?n.className:null,r=n?n.parentNode:null,a=r&&r.nodeType===r.ELEMENT_NODE?r.className:null;if(s===sl.CLASS_NAME){const l=i.offsetNode.childNodes[Math.min(i.offset,i.offsetNode.childNodes.length-1)];if(l)return Dd.createFromDOMInfo(e,l,0)}else if(a===sl.CLASS_NAME)return Dd.createFromDOMInfo(e,i.offsetNode,0)}return new jl(i.offsetNode)}static _snapToSoftTabBoundary(e,t){const i=t.getLineContent(e.lineNumber),{tabSize:n}=t.model.getOptions(),s=x_.atomicPosition(i,e.column-1,n,2);return s!==-1?new P(e.lineNumber,s+1):e}static doHitTest(e,t){let i=new jl;if(typeof e.viewDomNode.ownerDocument.caretRangeFromPoint=="function"?i=this._doHitTestWithCaretRangeFromPoint(e,t):e.viewDomNode.ownerDocument.caretPositionFromPoint&&(i=this._doHitTestWithCaretPositionFromPoint(e,t.pos.toClientCoordinates(fe(e.viewDomNode)))),i.type===1){const n=e.viewModel.getInjectedTextAt(i.position),s=e.viewModel.normalizePosition(i.position,2);(n||!s.equals(i.position))&&(i=new C8(s,i.spanNode,n))}return i}}function Jie(o,e,t){const i=document.createRange();let n=o.elementFromPoint(e,t);if(n!==null){for(;n&&n.firstChild&&n.firstChild.nodeType!==n.firstChild.TEXT_NODE&&n.lastChild&&n.lastChild.firstChild;)n=n.lastChild;const s=n.getBoundingClientRect(),r=fe(n),a=r.getComputedStyle(n,null).getPropertyValue("font-style"),l=r.getComputedStyle(n,null).getPropertyValue("font-variant"),c=r.getComputedStyle(n,null).getPropertyValue("font-weight"),d=r.getComputedStyle(n,null).getPropertyValue("font-size"),h=r.getComputedStyle(n,null).getPropertyValue("line-height"),u=r.getComputedStyle(n,null).getPropertyValue("font-family"),f=`${a} ${l} ${c} ${d}/${h} ${u}`,g=n.innerText;let p=s.left,_=0,b;if(e>s.left+s.width)_=g.length;else{const C=yI.getInstance();for(let w=0;wthis._createMouseTarget(r,a),r=>this._getMouseColumn(r))),this.lastMouseLeaveTime=-1,this._height=this._context.configuration.options.get(146).height;const n=new Fie(this.viewHelper.viewDomNode);this._register(n.onContextMenu(this.viewHelper.viewDomNode,r=>this._onContextMenu(r,!0))),this._register(n.onMouseMove(this.viewHelper.viewDomNode,r=>{this._onMouseMove(r),this._mouseLeaveMonitor||(this._mouseLeaveMonitor=U(this.viewHelper.viewDomNode.ownerDocument,"mousemove",a=>{this.viewHelper.viewDomNode.contains(a.target)||this._onMouseLeave(new Wc(a,!1,this.viewHelper.viewDomNode))}))})),this._register(n.onMouseUp(this.viewHelper.viewDomNode,r=>this._onMouseUp(r))),this._register(n.onMouseLeave(this.viewHelper.viewDomNode,r=>this._onMouseLeave(r)));let s=0;this._register(n.onPointerDown(this.viewHelper.viewDomNode,(r,a)=>{s=a})),this._register(U(this.viewHelper.viewDomNode,ee.POINTER_UP,r=>{this._mouseDownOperation.onPointerUp()})),this._register(n.onMouseDown(this.viewHelper.viewDomNode,r=>this._onMouseDown(r,s))),this._setupMouseWheelZoomListener(),this._context.addEventHandler(this)}_setupMouseWheelZoomListener(){const e=FC.INSTANCE;let t=0,i=Xl.getZoomLevel(),n=!1,s=0;const r=l=>{if(this.viewController.emitMouseWheel(l),!this._context.configuration.options.get(76))return;const c=new Rh(l);if(e.acceptStandardWheelEvent(c),e.isPhysicalMouseWheel()){if(a(l)){const d=Xl.getZoomLevel(),h=c.deltaY>0?1:-1;Xl.setZoomLevel(d+h),c.preventDefault(),c.stopPropagation()}}else Date.now()-t>50&&(i=Xl.getZoomLevel(),n=a(l),s=0),t=Date.now(),s+=c.deltaY,n&&(Xl.setZoomLevel(i+s/5),c.preventDefault(),c.stopPropagation())};this._register(U(this.viewHelper.viewDomNode,ee.MOUSE_WHEEL,r,{capture:!0,passive:!1}));function a(l){return Ue?(l.metaKey||l.ctrlKey)&&!l.shiftKey&&!l.altKey:l.ctrlKey&&!l.metaKey&&!l.shiftKey&&!l.altKey}}dispose(){this._context.removeEventHandler(this),this._mouseLeaveMonitor&&(this._mouseLeaveMonitor.dispose(),this._mouseLeaveMonitor=null),super.dispose()}onConfigurationChanged(e){if(e.hasChanged(146)){const t=this._context.configuration.options.get(146).height;this._height!==t&&(this._height=t,this._mouseDownOperation.onHeightChanged())}return!1}onCursorStateChanged(e){return this._mouseDownOperation.onCursorStateChanged(e),!1}onFocusChanged(e){return!1}getTargetAtClientPoint(e,t){const n=new m8(e,t).toPageCoordinates(fe(this.viewHelper.viewDomNode)),s=F2(this.viewHelper.viewDomNode);if(n.ys.y+s.height||n.xs.x+s.width)return null;const r=B2(this.viewHelper.viewDomNode,s,n);return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),s,n,r,null)}_createMouseTarget(e,t){let i=e.target;if(!this.viewHelper.viewDomNode.contains(i)){const n=ag(this.viewHelper.viewDomNode);n&&(i=n.elementsFromPoint(e.posx,e.posy).find(s=>this.viewHelper.viewDomNode.contains(s)))}return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),e.editorPos,e.pos,e.relativePos,t?i:null)}_getMouseColumn(e){return this.mouseTargetFactory.getMouseColumn(e.relativePos)}_onContextMenu(e,t){this.viewController.emitContextMenu({event:e,target:this._createMouseTarget(e,t)})}_onMouseMove(e){this.mouseTargetFactory.mouseTargetIsWidget(e)||e.preventDefault(),!(this._mouseDownOperation.isActive()||e.timestamp{e.preventDefault(),this.viewHelper.focusTextArea()};if(d&&(n||r&&a))h(),this._mouseDownOperation.start(i.type,e,t);else if(s)e.preventDefault();else if(l){const u=i.detail;d&&this.viewHelper.shouldSuppressMouseDownOnViewZone(u.viewZoneId)&&(h(),this._mouseDownOperation.start(i.type,e,t),e.preventDefault())}else c&&this.viewHelper.shouldSuppressMouseDownOnWidget(i.detail)&&(h(),e.preventDefault());this.viewController.emitMouseDown({event:e,target:i})}}class ene extends z{constructor(e,t,i,n,s,r){super(),this._context=e,this._viewController=t,this._viewHelper=i,this._mouseTargetFactory=n,this._createMouseTarget=s,this._getMouseColumn=r,this._mouseMoveMonitor=this._register(new Wie(this._viewHelper.viewDomNode)),this._topBottomDragScrolling=this._register(new tne(this._context,this._viewHelper,this._mouseTargetFactory,(a,l,c)=>this._dispatchMouse(a,l,c))),this._mouseState=new SI,this._currentSelection=new Fe(1,1,1,1),this._isActive=!1,this._lastMouseEvent=null}dispose(){super.dispose()}isActive(){return this._isActive}_onMouseDownThenMove(e){this._lastMouseEvent=e,this._mouseState.setModifiers(e);const t=this._findMousePosition(e,!1);t&&(this._mouseState.isDragAndDrop?this._viewController.emitMouseDrag({event:e,target:t}):t.type===13&&(t.outsidePosition==="above"||t.outsidePosition==="below")?this._topBottomDragScrolling.start(t,e):(this._topBottomDragScrolling.stop(),this._dispatchMouse(t,!0,1)))}start(e,t,i){this._lastMouseEvent=t,this._mouseState.setStartedOnLineNumbers(e===3),this._mouseState.setStartButtons(t),this._mouseState.setModifiers(t);const n=this._findMousePosition(t,!0);if(!n||!n.position)return;this._mouseState.trySetCount(t.detail,n.position),t.detail=this._mouseState.count;const s=this._context.configuration.options;if(!s.get(92)&&s.get(35)&&!s.get(22)&&!this._mouseState.altKey&&t.detail<2&&!this._isActive&&!this._currentSelection.isEmpty()&&n.type===6&&n.position&&this._currentSelection.containsPosition(n.position)){this._mouseState.isDragAndDrop=!0,this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,i,t.buttons,r=>this._onMouseDownThenMove(r),r=>{const a=this._findMousePosition(this._lastMouseEvent,!1);Qa(r)?this._viewController.emitMouseDropCanceled():this._viewController.emitMouseDrop({event:this._lastMouseEvent,target:a?this._createMouseTarget(this._lastMouseEvent,!0):null}),this._stop()});return}this._mouseState.isDragAndDrop=!1,this._dispatchMouse(n,t.shiftKey,1),this._isActive||(this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,i,t.buttons,r=>this._onMouseDownThenMove(r),()=>this._stop()))}_stop(){this._isActive=!1,this._topBottomDragScrolling.stop()}onHeightChanged(){this._mouseMoveMonitor.stopMonitoring()}onPointerUp(){this._mouseMoveMonitor.stopMonitoring()}onCursorStateChanged(e){this._currentSelection=e.selections[0]}_getPositionOutsideEditor(e){const t=e.editorPos,i=this._context.viewModel,n=this._context.viewLayout,s=this._getMouseColumn(e);if(e.posyt.y+t.height){const a=e.posy-t.y-t.height,l=n.getCurrentScrollTop()+e.relativePos.y,c=kg.getZoneAtCoord(this._context,l);if(c){const h=this._helpPositionJumpOverViewZone(c);if(h)return ln.createOutsideEditor(s,h,"below",a)}const d=n.getLineNumberAtVerticalOffset(l);return ln.createOutsideEditor(s,new P(d,i.getLineMaxColumn(d)),"below",a)}const r=n.getLineNumberAtVerticalOffset(n.getCurrentScrollTop()+e.relativePos.y);if(e.posxt.x+t.width){const a=e.posx-t.x-t.width;return ln.createOutsideEditor(s,new P(r,i.getLineMaxColumn(r)),"right",a)}return null}_findMousePosition(e,t){const i=this._getPositionOutsideEditor(e);if(i)return i;const n=this._createMouseTarget(e,t);if(!n.position)return null;if(n.type===8||n.type===5){const r=this._helpPositionJumpOverViewZone(n.detail);if(r)return ln.createViewZone(n.type,n.element,n.mouseColumn,r,n.detail)}return n}_helpPositionJumpOverViewZone(e){const t=new P(this._currentSelection.selectionStartLineNumber,this._currentSelection.selectionStartColumn),i=e.positionBefore,n=e.positionAfter;return i&&n?i.isBefore(t)?i:n:null}_dispatchMouse(e,t,i){e.position&&this._viewController.dispatchMouse({position:e.position,mouseColumn:e.mouseColumn,startedOnLineNumbers:this._mouseState.startedOnLineNumbers,revealType:i,inSelectionMode:t,mouseDownCount:this._mouseState.count,altKey:this._mouseState.altKey,ctrlKey:this._mouseState.ctrlKey,metaKey:this._mouseState.metaKey,shiftKey:this._mouseState.shiftKey,leftButton:this._mouseState.leftButton,middleButton:this._mouseState.middleButton,onInjectedText:e.type===6&&e.detail.injectedText!==null})}}class tne extends z{constructor(e,t,i,n){super(),this._context=e,this._viewHelper=t,this._mouseTargetFactory=i,this._dispatchMouse=n,this._operation=null}dispose(){super.dispose(),this.stop()}start(e,t){this._operation?this._operation.setPosition(e,t):this._operation=new ine(this._context,this._viewHelper,this._mouseTargetFactory,this._dispatchMouse,e,t)}stop(){this._operation&&(this._operation.dispose(),this._operation=null)}}class ine extends z{constructor(e,t,i,n,s,r){super(),this._context=e,this._viewHelper=t,this._mouseTargetFactory=i,this._dispatchMouse=n,this._position=s,this._mouseEvent=r,this._lastTime=Date.now(),this._animationFrameDisposable=fs(fe(r.browserEvent),()=>this._execute())}dispose(){this._animationFrameDisposable.dispose(),super.dispose()}setPosition(e,t){this._position=e,this._mouseEvent=t}_tick(){const e=Date.now(),t=e-this._lastTime;return this._lastTime=e,t}_getScrollSpeed(){const e=this._context.configuration.options.get(67),t=this._context.configuration.options.get(146).height/e,i=this._position.outsideDistance/e;return i<=1.5?Math.max(30,t*(1+i)):i<=3?Math.max(60,t*(2+i)):Math.max(200,t*(7+i))}_execute(){const e=this._context.configuration.options.get(67),t=this._getScrollSpeed(),i=this._tick(),n=t*(i/1e3)*e,s=this._position.outsidePosition==="above"?-n:n;this._context.viewModel.viewLayout.deltaScrollNow(0,s),this._viewHelper.renderNow();const r=this._context.viewLayout.getLinesViewportData(),a=this._position.outsidePosition==="above"?r.startLineNumber:r.endLineNumber;let l;{const c=F2(this._viewHelper.viewDomNode),d=this._context.configuration.options.get(146).horizontalScrollbarHeight,h=new xy(this._mouseEvent.pos.x,c.y+c.height-d-.1),u=B2(this._viewHelper.viewDomNode,c,h);l=this._mouseTargetFactory.createMouseTarget(this._viewHelper.getLastRenderData(),c,h,u,null)}(!l.position||l.position.lineNumber!==a)&&(this._position.outsidePosition==="above"?l=ln.createOutsideEditor(this._position.mouseColumn,new P(a,1),"above",this._position.outsideDistance):l=ln.createOutsideEditor(this._position.mouseColumn,new P(a,this._context.viewModel.getLineMaxColumn(a)),"below",this._position.outsideDistance)),this._dispatchMouse(l,!0,2),this._animationFrameDisposable=fs(fe(l.element),()=>this._execute())}}const Xw=class Xw{get altKey(){return this._altKey}get ctrlKey(){return this._ctrlKey}get metaKey(){return this._metaKey}get shiftKey(){return this._shiftKey}get leftButton(){return this._leftButton}get middleButton(){return this._middleButton}get startedOnLineNumbers(){return this._startedOnLineNumbers}constructor(){this._altKey=!1,this._ctrlKey=!1,this._metaKey=!1,this._shiftKey=!1,this._leftButton=!1,this._middleButton=!1,this._startedOnLineNumbers=!1,this._lastMouseDownPosition=null,this._lastMouseDownPositionEqualCount=0,this._lastMouseDownCount=0,this._lastSetMouseDownCountTime=0,this.isDragAndDrop=!1}get count(){return this._lastMouseDownCount}setModifiers(e){this._altKey=e.altKey,this._ctrlKey=e.ctrlKey,this._metaKey=e.metaKey,this._shiftKey=e.shiftKey}setStartButtons(e){this._leftButton=e.leftButton,this._middleButton=e.middleButton}setStartedOnLineNumbers(e){this._startedOnLineNumbers=e}trySetCount(e,t){const i=new Date().getTime();i-this._lastSetMouseDownCountTime>Xw.CLEAR_MOUSE_DOWN_COUNT_TIME&&(e=1),this._lastSetMouseDownCountTime=i,e>this._lastMouseDownCount+1&&(e=this._lastMouseDownCount+1),this._lastMouseDownPosition&&this._lastMouseDownPosition.equals(t)?this._lastMouseDownPositionEqualCount++:this._lastMouseDownPositionEqualCount=1,this._lastMouseDownPosition=t,this._lastMouseDownCount=Math.min(e,this._lastMouseDownPositionEqualCount)}};Xw.CLEAR_MOUSE_DOWN_COUNT_TIME=400;let SI=Xw;const kf=class kf{constructor(e,t,i,n,s){this.value=e,this.selectionStart=t,this.selectionEnd=i,this.selection=n,this.newlineCountBeforeSelection=s}toString(){return`[ <${this.value}>, selectionStart: ${this.selectionStart}, selectionEnd: ${this.selectionEnd}]`}static readFromTextArea(e,t){const i=e.getValue(),n=e.getSelectionStart(),s=e.getSelectionEnd();let r;if(t){const a=i.substring(0,n),l=t.value.substring(0,t.selectionStart);a===l&&(r=t.newlineCountBeforeSelection)}return new kf(i,n,s,null,r)}collapseSelection(){return this.selectionStart===this.value.length?this:new kf(this.value,this.value.length,this.value.length,null,void 0)}writeToTextArea(e,t,i){t.setValue(e,this.value),i&&t.setSelectionRange(e,this.selectionStart,this.selectionEnd)}deduceEditorPosition(e){if(e<=this.selectionStart){const n=this.value.substring(e,this.selectionStart);return this._finishDeduceEditorPosition(this.selection?.getStartPosition()??null,n,-1)}if(e>=this.selectionEnd){const n=this.value.substring(this.selectionEnd,e);return this._finishDeduceEditorPosition(this.selection?.getEndPosition()??null,n,1)}const t=this.value.substring(this.selectionStart,e);if(t.indexOf("…")===-1)return this._finishDeduceEditorPosition(this.selection?.getStartPosition()??null,t,1);const i=this.value.substring(e,this.selectionEnd);return this._finishDeduceEditorPosition(this.selection?.getEndPosition()??null,i,-1)}_finishDeduceEditorPosition(e,t,i){let n=0,s=-1;for(;(s=t.indexOf(` +`,s+1))!==-1;)n++;return[e,i*t.length,n]}static deduceInput(e,t,i){if(!e)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};const n=Math.min(Th(e.value,t.value),e.selectionStart,t.selectionStart),s=Math.min(Px(e.value,t.value),e.value.length-e.selectionEnd,t.value.length-t.selectionEnd);e.value.substring(n,e.value.length-s);const r=t.value.substring(n,t.value.length-s),a=e.selectionStart-n,l=e.selectionEnd-n,c=t.selectionStart-n,d=t.selectionEnd-n;if(c===d){const u=e.selectionStart-n;return{text:r,replacePrevCharCnt:u,replaceNextCharCnt:0,positionDelta:0}}const h=l-a;return{text:r,replacePrevCharCnt:h,replaceNextCharCnt:0,positionDelta:0}}static deduceAndroidCompositionInput(e,t){if(!e)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};if(e.value===t.value)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:t.selectionEnd-e.selectionEnd};const i=Math.min(Th(e.value,t.value),e.selectionEnd),n=Math.min(Px(e.value,t.value),e.value.length-e.selectionEnd),s=e.value.substring(i,e.value.length-n),r=t.value.substring(i,t.value.length-n);e.selectionStart-i;const a=e.selectionEnd-i;t.selectionStart-i;const l=t.selectionEnd-i;return{text:r,replacePrevCharCnt:a,replaceNextCharCnt:s.length-a,positionDelta:l-r.length}}};kf.EMPTY=new kf("",0,0,null,void 0);let cn=kf;class df{static _getPageOfLine(e,t){return Math.floor((e-1)/t)}static _getRangeForPage(e,t){const i=e*t,n=i+1,s=i+t;return new I(n,1,s+1,1)}static fromEditorSelection(e,t,i,n){const r=df._getPageOfLine(t.startLineNumber,i),a=df._getRangeForPage(r,i),l=df._getPageOfLine(t.endLineNumber,i),c=df._getRangeForPage(l,i);let d=a.intersectRanges(new I(1,1,t.startLineNumber,t.startColumn));if(n&&e.getValueLengthInRange(d,1)>500){const b=e.modifyPosition(d.getEndPosition(),-500);d=I.fromPositions(b,d.getEndPosition())}const h=e.getValueInRange(d,1),u=e.getLineCount(),f=e.getLineMaxColumn(u);let g=c.intersectRanges(new I(t.endLineNumber,t.endColumn,u,f));if(n&&e.getValueLengthInRange(g,1)>500){const b=e.modifyPosition(g.getStartPosition(),500);g=I.fromPositions(g.getStartPosition(),b)}const p=e.getValueInRange(g,1);let _;if(r===l||r+1===l)_=e.getValueInRange(t,1);else{const b=a.intersectRanges(t),C=c.intersectRanges(t);_=e.getValueInRange(b,1)+"…"+e.getValueInRange(C,1)}return n&&_.length>2*500&&(_=_.substring(0,500)+"…"+_.substring(_.length-500,_.length)),new cn(h+_+p,h.length,h.length+_.length,t,d.endLineNumber-d.startLineNumber)}}var nne=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},DO=function(o,e){return function(t,i){e(t,i,o)}},Dv;(function(o){o.Tap="-monaco-textarea-synthetic-tap"})(Dv||(Dv={}));const Jw=class Jw{constructor(){this._lastState=null}set(e,t){this._lastState={lastCopiedValue:e,data:t}}get(e){return this._lastState&&this._lastState.lastCopiedValue===e?this._lastState.data:(this._lastState=null,null)}};Jw.INSTANCE=new Jw;let Iv=Jw;class sne{constructor(){this._lastTypeTextLength=0}handleCompositionUpdate(e){e=e||"";const t={text:e,replacePrevCharCnt:this._lastTypeTextLength,replaceNextCharCnt:0,positionDelta:0};return this._lastTypeTextLength=e.length,t}}let LI=class extends z{get textAreaState(){return this._textAreaState}constructor(e,t,i,n,s,r){super(),this._host=e,this._textArea=t,this._OS=i,this._browser=n,this._accessibilityService=s,this._logService=r,this._onFocus=this._register(new A),this.onFocus=this._onFocus.event,this._onBlur=this._register(new A),this.onBlur=this._onBlur.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._onKeyUp=this._register(new A),this.onKeyUp=this._onKeyUp.event,this._onCut=this._register(new A),this.onCut=this._onCut.event,this._onPaste=this._register(new A),this.onPaste=this._onPaste.event,this._onType=this._register(new A),this.onType=this._onType.event,this._onCompositionStart=this._register(new A),this.onCompositionStart=this._onCompositionStart.event,this._onCompositionUpdate=this._register(new A),this.onCompositionUpdate=this._onCompositionUpdate.event,this._onCompositionEnd=this._register(new A),this.onCompositionEnd=this._onCompositionEnd.event,this._onSelectionChangeRequest=this._register(new A),this.onSelectionChangeRequest=this._onSelectionChangeRequest.event,this._asyncFocusGainWriteScreenReaderContent=this._register(new Dn),this._asyncTriggerCut=this._register(new ci(()=>this._onCut.fire(),0)),this._textAreaState=cn.EMPTY,this._selectionChangeListener=null,this._accessibilityService.isScreenReaderOptimized()&&this.writeNativeTextAreaContent("ctor"),this._register(J.runAndSubscribe(this._accessibilityService.onDidChangeScreenReaderOptimized,()=>{this._accessibilityService.isScreenReaderOptimized()&&!this._asyncFocusGainWriteScreenReaderContent.value?this._asyncFocusGainWriteScreenReaderContent.value=this._register(new ci(()=>this.writeNativeTextAreaContent("asyncFocusGain"),0)):this._asyncFocusGainWriteScreenReaderContent.clear()})),this._hasFocus=!1,this._currentComposition=null;let a=null;this._register(this._textArea.onKeyDown(l=>{const c=new Nt(l);(c.keyCode===114||this._currentComposition&&c.keyCode===1)&&c.stopPropagation(),c.equals(9)&&c.preventDefault(),a=c,this._onKeyDown.fire(c)})),this._register(this._textArea.onKeyUp(l=>{const c=new Nt(l);this._onKeyUp.fire(c)})),this._register(this._textArea.onCompositionStart(l=>{const c=new sne;if(this._currentComposition){this._currentComposition=c;return}if(this._currentComposition=c,this._OS===2&&a&&a.equals(114)&&this._textAreaState.selectionStart===this._textAreaState.selectionEnd&&this._textAreaState.selectionStart>0&&this._textAreaState.value.substr(this._textAreaState.selectionStart-1,1)===l.data&&(a.code==="ArrowRight"||a.code==="ArrowLeft")){c.handleCompositionUpdate("x"),this._onCompositionStart.fire({data:l.data});return}if(this._browser.isAndroid){this._onCompositionStart.fire({data:l.data});return}this._onCompositionStart.fire({data:l.data})})),this._register(this._textArea.onCompositionUpdate(l=>{const c=this._currentComposition;if(!c)return;if(this._browser.isAndroid){const h=cn.readFromTextArea(this._textArea,this._textAreaState),u=cn.deduceAndroidCompositionInput(this._textAreaState,h);this._textAreaState=h,this._onType.fire(u),this._onCompositionUpdate.fire(l);return}const d=c.handleCompositionUpdate(l.data);this._textAreaState=cn.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(d),this._onCompositionUpdate.fire(l)})),this._register(this._textArea.onCompositionEnd(l=>{const c=this._currentComposition;if(!c)return;if(this._currentComposition=null,this._browser.isAndroid){const h=cn.readFromTextArea(this._textArea,this._textAreaState),u=cn.deduceAndroidCompositionInput(this._textAreaState,h);this._textAreaState=h,this._onType.fire(u),this._onCompositionEnd.fire();return}const d=c.handleCompositionUpdate(l.data);this._textAreaState=cn.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(d),this._onCompositionEnd.fire()})),this._register(this._textArea.onInput(l=>{if(this._textArea.setIgnoreSelectionChangeTime("received input event"),this._currentComposition)return;const c=cn.readFromTextArea(this._textArea,this._textAreaState),d=cn.deduceInput(this._textAreaState,c,this._OS===2);d.replacePrevCharCnt===0&&d.text.length===1&&(wi(d.text.charCodeAt(0))||d.text.charCodeAt(0)===127)||(this._textAreaState=c,(d.text!==""||d.replacePrevCharCnt!==0||d.replaceNextCharCnt!==0||d.positionDelta!==0)&&this._onType.fire(d))})),this._register(this._textArea.onCut(l=>{this._textArea.setIgnoreSelectionChangeTime("received cut event"),this._ensureClipboardGetsEditorSelection(l),this._asyncTriggerCut.schedule()})),this._register(this._textArea.onCopy(l=>{this._ensureClipboardGetsEditorSelection(l)})),this._register(this._textArea.onPaste(l=>{if(this._textArea.setIgnoreSelectionChangeTime("received paste event"),l.preventDefault(),!l.clipboardData)return;let[c,d]=IO.getTextData(l.clipboardData);c&&(d=d||Iv.INSTANCE.get(c),this._onPaste.fire({text:c,metadata:d}))})),this._register(this._textArea.onFocus(()=>{const l=this._hasFocus;this._setHasFocus(!0),this._accessibilityService.isScreenReaderOptimized()&&this._browser.isSafari&&!l&&this._hasFocus&&(this._asyncFocusGainWriteScreenReaderContent.value||(this._asyncFocusGainWriteScreenReaderContent.value=new ci(()=>this.writeNativeTextAreaContent("asyncFocusGain"),0)),this._asyncFocusGainWriteScreenReaderContent.value.schedule())})),this._register(this._textArea.onBlur(()=>{this._currentComposition&&(this._currentComposition=null,this.writeNativeTextAreaContent("blurWithoutCompositionEnd"),this._onCompositionEnd.fire()),this._setHasFocus(!1)})),this._register(this._textArea.onSyntheticTap(()=>{this._browser.isAndroid&&this._currentComposition&&(this._currentComposition=null,this.writeNativeTextAreaContent("tapWithoutCompositionEnd"),this._onCompositionEnd.fire())}))}_installSelectionChangeListener(){let e=0;return U(this._textArea.ownerDocument,"selectionchange",t=>{if(lc.onSelectionChange(),!this._hasFocus||this._currentComposition||!this._browser.isChrome)return;const i=Date.now(),n=i-e;if(e=i,n<5)return;const s=i-this._textArea.getIgnoreSelectionChangeTime();if(this._textArea.resetSelectionChangeTime(),s<100||!this._textAreaState.selection)return;const r=this._textArea.getValue();if(this._textAreaState.value!==r)return;const a=this._textArea.getSelectionStart(),l=this._textArea.getSelectionEnd();if(this._textAreaState.selectionStart===a&&this._textAreaState.selectionEnd===l)return;const c=this._textAreaState.deduceEditorPosition(a),d=this._host.deduceModelPosition(c[0],c[1],c[2]),h=this._textAreaState.deduceEditorPosition(l),u=this._host.deduceModelPosition(h[0],h[1],h[2]),f=new Fe(d.lineNumber,d.column,u.lineNumber,u.column);this._onSelectionChangeRequest.fire(f)})}dispose(){super.dispose(),this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null)}focusTextArea(){this._setHasFocus(!0),this.refreshFocusState()}isFocused(){return this._hasFocus}refreshFocusState(){this._setHasFocus(this._textArea.hasFocus())}_setHasFocus(e){this._hasFocus!==e&&(this._hasFocus=e,this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null),this._hasFocus&&(this._selectionChangeListener=this._installSelectionChangeListener()),this._hasFocus&&this.writeNativeTextAreaContent("focusgain"),this._hasFocus?this._onFocus.fire():this._onBlur.fire())}_setAndWriteTextAreaState(e,t){this._hasFocus||(t=t.collapseSelection()),t.writeToTextArea(e,this._textArea,this._hasFocus),this._textAreaState=t}writeNativeTextAreaContent(e){!this._accessibilityService.isScreenReaderOptimized()&&e==="render"||this._currentComposition||(this._logService.trace(`writeTextAreaState(reason: ${e})`),this._setAndWriteTextAreaState(e,this._host.getScreenReaderContent()))}_ensureClipboardGetsEditorSelection(e){const t=this._host.getDataToCopy(),i={version:1,isFromEmptySelection:t.isFromEmptySelection,multicursorText:t.multicursorText,mode:t.mode};Iv.INSTANCE.set(this._browser.isFirefox?t.text.replace(/\r\n/g,` +`):t.text,i),e.preventDefault(),e.clipboardData&&IO.setTextData(e.clipboardData,t.text,t.html,i)}};LI=nne([DO(4,ms),DO(5,gs)],LI);const IO={getTextData(o){const e=o.getData(il.text);let t=null;const i=o.getData("vscode-editor-data");if(typeof i=="string")try{t=JSON.parse(i),t.version!==1&&(t=null)}catch{}return e.length===0&&t===null&&o.files.length>0?[Array.prototype.slice.call(o.files,0).map(s=>s.name).join(` +`),null]:[e,t]},setTextData(o,e,t,i){o.setData(il.text,e),typeof t=="string"&&o.setData("text/html",t),o.setData("vscode-editor-data",JSON.stringify(i))}};class one extends z{get ownerDocument(){return this._actual.ownerDocument}constructor(e){super(),this._actual=e,this.onKeyDown=this._register(new ze(this._actual,"keydown")).event,this.onKeyUp=this._register(new ze(this._actual,"keyup")).event,this.onCompositionStart=this._register(new ze(this._actual,"compositionstart")).event,this.onCompositionUpdate=this._register(new ze(this._actual,"compositionupdate")).event,this.onCompositionEnd=this._register(new ze(this._actual,"compositionend")).event,this.onBeforeInput=this._register(new ze(this._actual,"beforeinput")).event,this.onInput=this._register(new ze(this._actual,"input")).event,this.onCut=this._register(new ze(this._actual,"cut")).event,this.onCopy=this._register(new ze(this._actual,"copy")).event,this.onPaste=this._register(new ze(this._actual,"paste")).event,this.onFocus=this._register(new ze(this._actual,"focus")).event,this.onBlur=this._register(new ze(this._actual,"blur")).event,this._onSyntheticTap=this._register(new A),this.onSyntheticTap=this._onSyntheticTap.event,this._ignoreSelectionChangeTime=0,this._register(this.onKeyDown(()=>lc.onKeyDown())),this._register(this.onBeforeInput(()=>lc.onBeforeInput())),this._register(this.onInput(()=>lc.onInput())),this._register(this.onKeyUp(()=>lc.onKeyUp())),this._register(U(this._actual,Dv.Tap,()=>this._onSyntheticTap.fire()))}hasFocus(){const e=ag(this._actual);return e?e.activeElement===this._actual:this._actual.isConnected?Xi()===this._actual:!1}setIgnoreSelectionChangeTime(e){this._ignoreSelectionChangeTime=Date.now()}getIgnoreSelectionChangeTime(){return this._ignoreSelectionChangeTime}resetSelectionChangeTime(){this._ignoreSelectionChangeTime=0}getValue(){return this._actual.value}setValue(e,t){const i=this._actual;i.value!==t&&(this.setIgnoreSelectionChangeTime("setValue"),i.value=t)}getSelectionStart(){return this._actual.selectionDirection==="backward"?this._actual.selectionEnd:this._actual.selectionStart}getSelectionEnd(){return this._actual.selectionDirection==="backward"?this._actual.selectionStart:this._actual.selectionEnd}setSelectionRange(e,t,i){const n=this._actual;let s=null;const r=ag(n);r?s=r.activeElement:s=Xi();const a=fe(s),l=s===n,c=n.selectionStart,d=n.selectionEnd;if(l&&c===t&&d===i){Mo&&a.parent!==a&&n.focus();return}if(l){this.setIgnoreSelectionChangeTime("setSelectionRange"),n.setSelectionRange(t,i),Mo&&a.parent!==a&&n.focus();return}try{const h=IV(n);this.setIgnoreSelectionChangeTime("setSelectionRange"),n.focus(),n.setSelectionRange(t,i),EV(n,h)}catch{}}}class rne extends W2{constructor(e,t,i){super(e,t,i),this._register(fn.addTarget(this.viewHelper.linesContentDomNode)),this._register(U(this.viewHelper.linesContentDomNode,St.Tap,s=>this.onTap(s))),this._register(U(this.viewHelper.linesContentDomNode,St.Change,s=>this.onChange(s))),this._register(U(this.viewHelper.linesContentDomNode,St.Contextmenu,s=>this._onContextMenu(new Wc(s,!1,this.viewHelper.viewDomNode),!1))),this._lastPointerType="mouse",this._register(U(this.viewHelper.linesContentDomNode,"pointerdown",s=>{const r=s.pointerType;if(r==="mouse"){this._lastPointerType="mouse";return}else r==="touch"?this._lastPointerType="touch":this._lastPointerType="pen"}));const n=new Bie(this.viewHelper.viewDomNode);this._register(n.onPointerMove(this.viewHelper.viewDomNode,s=>this._onMouseMove(s))),this._register(n.onPointerUp(this.viewHelper.viewDomNode,s=>this._onMouseUp(s))),this._register(n.onPointerLeave(this.viewHelper.viewDomNode,s=>this._onMouseLeave(s))),this._register(n.onPointerDown(this.viewHelper.viewDomNode,(s,r)=>this._onMouseDown(s,r)))}onTap(e){!e.initialTarget||!this.viewHelper.linesContentDomNode.contains(e.initialTarget)||(e.preventDefault(),this.viewHelper.focusTextArea(),this._dispatchGesture(e,!1))}onChange(e){this._lastPointerType==="touch"&&this._context.viewModel.viewLayout.deltaScrollNow(-e.translationX,-e.translationY),this._lastPointerType==="pen"&&this._dispatchGesture(e,!0)}_dispatchGesture(e,t){const i=this._createMouseTarget(new Wc(e,!1,this.viewHelper.viewDomNode),!1);i.position&&this.viewController.dispatchMouse({position:i.position,mouseColumn:i.position.column,startedOnLineNumbers:!1,revealType:1,mouseDownCount:e.tapCount,inSelectionMode:t,altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1,leftButton:!1,middleButton:!1,onInjectedText:i.type===6&&i.detail.injectedText!==null})}_onMouseDown(e,t){e.browserEvent.pointerType!=="touch"&&super._onMouseDown(e,t)}}class ane extends W2{constructor(e,t,i){super(e,t,i),this._register(fn.addTarget(this.viewHelper.linesContentDomNode)),this._register(U(this.viewHelper.linesContentDomNode,St.Tap,n=>this.onTap(n))),this._register(U(this.viewHelper.linesContentDomNode,St.Change,n=>this.onChange(n))),this._register(U(this.viewHelper.linesContentDomNode,St.Contextmenu,n=>this._onContextMenu(new Wc(n,!1,this.viewHelper.viewDomNode),!1)))}onTap(e){e.preventDefault(),this.viewHelper.focusTextArea();const t=this._createMouseTarget(new Wc(e,!1,this.viewHelper.viewDomNode),!1);if(t.position){const i=document.createEvent("CustomEvent");i.initEvent(Dv.Tap,!1,!0),this.viewHelper.dispatchTextAreaEvent(i),this.viewController.moveTo(t.position,1)}}onChange(e){this._context.viewModel.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)}}class lne extends z{constructor(e,t,i){super(),(Tc||S6&&V5)&&KN.pointerEvents?this.handler=this._register(new rne(e,t,i)):_t.TouchEvent?this.handler=this._register(new ane(e,t,i)):this.handler=this._register(new W2(e,t,i))}getTargetAtClientPoint(e,t){return this.handler.getTargetAtClientPoint(e,t)}}class mu extends ab{}const e0=class e0 extends mu{constructor(e){super(),this._context=e,this._readConfig(),this._lastCursorModelPosition=new P(1,1),this._renderResult=null,this._activeLineNumber=1,this._context.addEventHandler(this)}_readConfig(){const e=this._context.configuration.options;this._lineHeight=e.get(67);const t=e.get(68);this._renderLineNumbers=t.renderType,this._renderCustomLineNumbers=t.renderFn,this._renderFinalNewline=e.get(96);const i=e.get(146);this._lineNumbersLeft=i.lineNumbersLeft,this._lineNumbersWidth=i.lineNumbersWidth}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){return this._readConfig(),!0}onCursorStateChanged(e){const t=e.selections[0].getPosition();this._lastCursorModelPosition=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(t);let i=!1;return this._activeLineNumber!==t.lineNumber&&(this._activeLineNumber=t.lineNumber,i=!0),(this._renderLineNumbers===2||this._renderLineNumbers===3)&&(i=!0),i}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}onDecorationsChanged(e){return e.affectsLineNumber}_getLineRenderLineNumber(e){const t=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new P(e,1));if(t.column!==1)return"";const i=t.lineNumber;if(this._renderCustomLineNumbers)return this._renderCustomLineNumbers(i);if(this._renderLineNumbers===2){const n=Math.abs(this._lastCursorModelPosition.lineNumber-i);return n===0?''+i+"":String(n)}if(this._renderLineNumbers===3){if(this._lastCursorModelPosition.lineNumber===i||i%10===0)return String(i);const n=this._context.viewModel.getLineCount();return i===n?String(i):""}return String(i)}prepareRender(e){if(this._renderLineNumbers===0){this._renderResult=null;return}const t=Un?this._lineHeight%2===0?" lh-even":" lh-odd":"",i=e.visibleRange.startLineNumber,n=e.visibleRange.endLineNumber,s=this._context.viewModel.getDecorationsInViewport(e.visibleRange).filter(c=>!!c.options.lineNumberClassName);s.sort((c,d)=>I.compareRangesUsingEnds(c.range,d.range));let r=0;const a=this._context.viewModel.getLineCount(),l=[];for(let c=i;c<=n;c++){const d=c-i;let h=this._getLineRenderLineNumber(c),u="";for(;r${h}
    `}this._renderResult=l}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}};e0.CLASS_NAME="line-numbers";let Ev=e0;Sr((o,e)=>{const t=o.getColor(qY),i=o.getColor(aQ);i?e.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${i}; }`):t&&e.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${t.transparent(.4)}; }`)});const Df=class Df extends _s{constructor(e){super(e);const t=this._context.configuration.options,i=t.get(146);this._canUseLayerHinting=!t.get(32),this._contentLeft=i.contentLeft,this._glyphMarginLeft=i.glyphMarginLeft,this._glyphMarginWidth=i.glyphMarginWidth,this._domNode=ot(document.createElement("div")),this._domNode.setClassName(Df.OUTER_CLASS_NAME),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._glyphMarginBackgroundDomNode=ot(document.createElement("div")),this._glyphMarginBackgroundDomNode.setClassName(Df.CLASS_NAME),this._domNode.appendChild(this._glyphMarginBackgroundDomNode)}dispose(){super.dispose()}getDomNode(){return this._domNode}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(146);return this._canUseLayerHinting=!t.get(32),this._contentLeft=i.contentLeft,this._glyphMarginLeft=i.glyphMarginLeft,this._glyphMarginWidth=i.glyphMarginWidth,!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollTopChanged}prepareRender(e){}render(e){this._domNode.setLayerHinting(this._canUseLayerHinting),this._domNode.setContain("strict");const t=e.scrollTop-e.bigNumbersDelta;this._domNode.setTop(-t);const i=Math.min(e.scrollHeight,1e6);this._domNode.setHeight(i),this._domNode.setWidth(this._contentLeft),this._glyphMarginBackgroundDomNode.setLeft(this._glyphMarginLeft),this._glyphMarginBackgroundDomNode.setWidth(this._glyphMarginWidth),this._glyphMarginBackgroundDomNode.setHeight(i)}};Df.CLASS_NAME="glyph-margin",Df.OUTER_CLASS_NAME="margin";let Nv=Df;const Zf="monaco-mouse-cursor-text";var cne=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},EO=function(o,e){return function(t,i){e(t,i,o)}};class dne{constructor(e,t,i,n,s){this._context=e,this.modelLineNumber=t,this.distanceToModelLineStart=i,this.widthOfHiddenLineTextBefore=n,this.distanceToModelLineEnd=s,this._visibleTextAreaBrand=void 0,this.startPosition=null,this.endPosition=null,this.visibleTextareaStart=null,this.visibleTextareaEnd=null,this._previousPresentation=null}prepareRender(e){const t=new P(this.modelLineNumber,this.distanceToModelLineStart+1),i=new P(this.modelLineNumber,this._context.viewModel.model.getLineMaxColumn(this.modelLineNumber)-this.distanceToModelLineEnd);this.startPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(t),this.endPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(i),this.startPosition.lineNumber===this.endPosition.lineNumber?(this.visibleTextareaStart=e.visibleRangeForPosition(this.startPosition),this.visibleTextareaEnd=e.visibleRangeForPosition(this.endPosition)):(this.visibleTextareaStart=null,this.visibleTextareaEnd=null)}definePresentation(e){return this._previousPresentation||(e?this._previousPresentation=e:this._previousPresentation={foreground:1,italic:!1,bold:!1,underline:!1,strikethrough:!1}),this._previousPresentation}}const eL=Mo;let xI=class extends _s{constructor(e,t,i,n,s){super(e),this._keybindingService=n,this._instantiationService=s,this._primaryCursorPosition=new P(1,1),this._primaryCursorVisibleRange=null,this._viewController=t,this._visibleRangeProvider=i,this._scrollLeft=0,this._scrollTop=0;const r=this._context.configuration.options,a=r.get(146);this._setAccessibilityOptions(r),this._contentLeft=a.contentLeft,this._contentWidth=a.contentWidth,this._contentHeight=a.height,this._fontInfo=r.get(50),this._lineHeight=r.get(67),this._emptySelectionClipboard=r.get(37),this._copyWithSyntaxHighlighting=r.get(25),this._visibleTextArea=null,this._selections=[new Fe(1,1,1,1)],this._modelSelections=[new Fe(1,1,1,1)],this._lastRenderPosition=null,this.textArea=ot(document.createElement("textarea")),vr.write(this.textArea,7),this.textArea.setClassName(`inputarea ${Zf}`),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");const{tabSize:l}=this._context.viewModel.model.getOptions();this.textArea.domNode.style.tabSize=`${l*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("autocorrect","off"),this.textArea.setAttribute("autocapitalize","off"),this.textArea.setAttribute("autocomplete","off"),this.textArea.setAttribute("spellcheck","false"),this.textArea.setAttribute("aria-label",this._getAriaLabel(r)),this.textArea.setAttribute("aria-required",r.get(5)?"true":"false"),this.textArea.setAttribute("tabindex",String(r.get(125))),this.textArea.setAttribute("role","textbox"),this.textArea.setAttribute("aria-roledescription",m("editor","editor")),this.textArea.setAttribute("aria-multiline","true"),this.textArea.setAttribute("aria-autocomplete",r.get(92)?"none":"both"),this._ensureReadOnlyAttribute(),this.textAreaCover=ot(document.createElement("div")),this.textAreaCover.setPosition("absolute");const c={getLineCount:()=>this._context.viewModel.getLineCount(),getLineMaxColumn:u=>this._context.viewModel.getLineMaxColumn(u),getValueInRange:(u,f)=>this._context.viewModel.getValueInRange(u,f),getValueLengthInRange:(u,f)=>this._context.viewModel.getValueLengthInRange(u,f),modifyPosition:(u,f)=>this._context.viewModel.modifyPosition(u,f)},d={getDataToCopy:()=>{const u=this._context.viewModel.getPlainTextToCopy(this._modelSelections,this._emptySelectionClipboard,kn),f=this._context.viewModel.model.getEOL(),g=this._emptySelectionClipboard&&this._modelSelections.length===1&&this._modelSelections[0].isEmpty(),p=Array.isArray(u)?u:null,_=Array.isArray(u)?u.join(f):u;let b,C=null;if(this._copyWithSyntaxHighlighting&&_.length<65536){const w=this._context.viewModel.getRichTextToCopy(this._modelSelections,this._emptySelectionClipboard);w&&(b=w.html,C=w.mode)}return{isFromEmptySelection:g,multicursorText:p,text:_,html:b,mode:C}},getScreenReaderContent:()=>{if(this._accessibilitySupport===1){const u=this._selections[0];if(Ue&&u.isEmpty()){const g=u.getStartPosition();let p=this._getWordBeforePosition(g);if(p.length===0&&(p=this._getCharacterBeforePosition(g)),p.length>0)return new cn(p,p.length,p.length,I.fromPositions(g),0)}if(Ue&&!u.isEmpty()&&c.getValueLengthInRange(u,0)<500){const g=c.getValueInRange(u,0);return new cn(g,0,g.length,u,0)}if(Ac&&!u.isEmpty()){const g="vscode-placeholder";return new cn(g,0,g.length,null,void 0)}return cn.EMPTY}if(eR){const u=this._selections[0];if(u.isEmpty()){const f=u.getStartPosition(),[g,p]=this._getAndroidWordAtPosition(f);if(g.length>0)return new cn(g,p,p,I.fromPositions(f),0)}return cn.EMPTY}return df.fromEditorSelection(c,this._selections[0],this._accessibilityPageSize,this._accessibilitySupport===0)},deduceModelPosition:(u,f,g)=>this._context.viewModel.deduceModelPositionRelativeToViewPosition(u,f,g)},h=this._register(new one(this.textArea.domNode));this._textAreaInput=this._register(this._instantiationService.createInstance(LI,d,h,Ns,{isAndroid:eR,isChrome:V_,isFirefox:Mo,isSafari:Ac})),this._register(this._textAreaInput.onKeyDown(u=>{this._viewController.emitKeyDown(u)})),this._register(this._textAreaInput.onKeyUp(u=>{this._viewController.emitKeyUp(u)})),this._register(this._textAreaInput.onPaste(u=>{let f=!1,g=null,p=null;u.metadata&&(f=this._emptySelectionClipboard&&!!u.metadata.isFromEmptySelection,g=typeof u.metadata.multicursorText<"u"?u.metadata.multicursorText:null,p=u.metadata.mode),this._viewController.paste(u.text,f,g,p)})),this._register(this._textAreaInput.onCut(()=>{this._viewController.cut()})),this._register(this._textAreaInput.onType(u=>{u.replacePrevCharCnt||u.replaceNextCharCnt||u.positionDelta?this._viewController.compositionType(u.text,u.replacePrevCharCnt,u.replaceNextCharCnt,u.positionDelta):this._viewController.type(u.text)})),this._register(this._textAreaInput.onSelectionChangeRequest(u=>{this._viewController.setSelection(u)})),this._register(this._textAreaInput.onCompositionStart(u=>{const f=this.textArea.domNode,g=this._modelSelections[0],{distanceToModelLineStart:p,widthOfHiddenTextBefore:_}=(()=>{const C=f.value.substring(0,Math.min(f.selectionStart,f.selectionEnd)),w=C.lastIndexOf(` +`),v=C.substring(w+1),y=v.lastIndexOf(" "),x=v.length-y-1,L=g.getStartPosition(),E=Math.min(L.column-1,x),N=L.column-1-E,H=v.substring(0,v.length-E),{tabSize:F}=this._context.viewModel.model.getOptions(),W=hne(this.textArea.domNode.ownerDocument,H,this._fontInfo,F);return{distanceToModelLineStart:N,widthOfHiddenTextBefore:W}})(),{distanceToModelLineEnd:b}=(()=>{const C=f.value.substring(Math.max(f.selectionStart,f.selectionEnd)),w=C.indexOf(` +`),v=w===-1?C:C.substring(0,w),y=v.indexOf(" "),x=y===-1?v.length:v.length-y-1,L=g.getEndPosition(),E=Math.min(this._context.viewModel.model.getLineMaxColumn(L.lineNumber)-L.column,x);return{distanceToModelLineEnd:this._context.viewModel.model.getLineMaxColumn(L.lineNumber)-L.column-E}})();this._context.viewModel.revealRange("keyboard",!0,I.fromPositions(this._selections[0].getStartPosition()),0,1),this._visibleTextArea=new dne(this._context,g.startLineNumber,p,_,b),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render(),this.textArea.setClassName(`inputarea ${Zf} ime-input`),this._viewController.compositionStart(),this._context.viewModel.onCompositionStart()})),this._register(this._textAreaInput.onCompositionUpdate(u=>{this._visibleTextArea&&(this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render())})),this._register(this._textAreaInput.onCompositionEnd(()=>{this._visibleTextArea=null,this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._render(),this.textArea.setClassName(`inputarea ${Zf}`),this._viewController.compositionEnd(),this._context.viewModel.onCompositionEnd()})),this._register(this._textAreaInput.onFocus(()=>{this._context.viewModel.setHasFocus(!0)})),this._register(this._textAreaInput.onBlur(()=>{this._context.viewModel.setHasFocus(!1)})),this._register(Qm.onDidChange(()=>{this._ensureReadOnlyAttribute()}))}writeScreenReaderContent(e){this._textAreaInput.writeNativeTextAreaContent(e)}dispose(){super.dispose()}_getAndroidWordAtPosition(e){const t='`~!@#$%^&*()-=+[{]}\\|;:",.<>/?',i=this._context.viewModel.getLineContent(e.lineNumber),n=cg(t,[]);let s=!0,r=e.column,a=!0,l=e.column,c=0;for(;c<50&&(s||a);){if(s&&r<=1&&(s=!1),s){const d=i.charCodeAt(r-2);n.get(d)!==0?s=!1:r--}if(a&&l>i.length&&(a=!1),a){const d=i.charCodeAt(l-1);n.get(d)!==0?a=!1:l++}c++}return[i.substring(r-1,l-1),e.column-r]}_getWordBeforePosition(e){const t=this._context.viewModel.getLineContent(e.lineNumber),i=cg(this._context.configuration.options.get(132),[]);let n=e.column,s=0;for(;n>1;){const r=t.charCodeAt(n-2);if(i.get(r)!==0||s>50)return t.substring(n-1,e.column-1);s++,n--}return t.substring(0,e.column-1)}_getCharacterBeforePosition(e){if(e.column>1){const i=this._context.viewModel.getLineContent(e.lineNumber).charAt(e.column-2);if(!wi(i.charCodeAt(0)))return i}return""}_getAriaLabel(e){if(e.get(2)===1){const i=this._keybindingService.lookupKeybinding("editor.action.toggleScreenReaderAccessibilityMode")?.getAriaLabel(),n=this._keybindingService.lookupKeybinding("workbench.action.showCommands")?.getAriaLabel(),s=this._keybindingService.lookupKeybinding("workbench.action.openGlobalKeybindings")?.getAriaLabel(),r=m("accessibilityModeOff","The editor is not accessible at this time.");return i?m("accessibilityOffAriaLabel","{0} To enable screen reader optimized mode, use {1}",r,i):n?m("accessibilityOffAriaLabelNoKb","{0} To enable screen reader optimized mode, open the quick pick with {1} and run the command Toggle Screen Reader Accessibility Mode, which is currently not triggerable via keyboard.",r,n):s?m("accessibilityOffAriaLabelNoKbs","{0} Please assign a keybinding for the command Toggle Screen Reader Accessibility Mode by accessing the keybindings editor with {1} and run it.",r,s):r}return e.get(4)}_setAccessibilityOptions(e){this._accessibilitySupport=e.get(2);const t=e.get(3);this._accessibilitySupport===2&&t===Xh.accessibilityPageSize.defaultValue?this._accessibilityPageSize=500:this._accessibilityPageSize=t;const n=e.get(146).wrappingColumn;if(n!==-1&&this._accessibilitySupport!==1){const s=e.get(50);this._textAreaWrapping=!0,this._textAreaWidth=Math.round(n*s.typicalHalfwidthCharacterWidth)}else this._textAreaWrapping=!1,this._textAreaWidth=eL?0:1}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(146);this._setAccessibilityOptions(t),this._contentLeft=i.contentLeft,this._contentWidth=i.contentWidth,this._contentHeight=i.height,this._fontInfo=t.get(50),this._lineHeight=t.get(67),this._emptySelectionClipboard=t.get(37),this._copyWithSyntaxHighlighting=t.get(25),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");const{tabSize:n}=this._context.viewModel.model.getOptions();return this.textArea.domNode.style.tabSize=`${n*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("aria-label",this._getAriaLabel(t)),this.textArea.setAttribute("aria-required",t.get(5)?"true":"false"),this.textArea.setAttribute("tabindex",String(t.get(125))),(e.hasChanged(34)||e.hasChanged(92))&&this._ensureReadOnlyAttribute(),e.hasChanged(2)&&this._textAreaInput.writeNativeTextAreaContent("strategy changed"),!0}onCursorStateChanged(e){return this._selections=e.selections.slice(0),this._modelSelections=e.modelSelections.slice(0),this._textAreaInput.writeNativeTextAreaContent("selection changed"),!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return this._scrollLeft=e.scrollLeft,this._scrollTop=e.scrollTop,!0}onZonesChanged(e){return!0}isFocused(){return this._textAreaInput.isFocused()}focusTextArea(){this._textAreaInput.focusTextArea()}getLastRenderData(){return this._lastRenderPosition}setAriaOptions(e){e.activeDescendant?(this.textArea.setAttribute("aria-haspopup","true"),this.textArea.setAttribute("aria-autocomplete","list"),this.textArea.setAttribute("aria-activedescendant",e.activeDescendant)):(this.textArea.setAttribute("aria-haspopup","false"),this.textArea.setAttribute("aria-autocomplete","both"),this.textArea.removeAttribute("aria-activedescendant")),e.role&&this.textArea.setAttribute("role",e.role)}_ensureReadOnlyAttribute(){const e=this._context.configuration.options;!Qm.enabled||e.get(34)&&e.get(92)?this.textArea.setAttribute("readonly","true"):this.textArea.removeAttribute("readonly")}prepareRender(e){this._primaryCursorPosition=new P(this._selections[0].positionLineNumber,this._selections[0].positionColumn),this._primaryCursorVisibleRange=e.visibleRangeForPosition(this._primaryCursorPosition),this._visibleTextArea?.prepareRender(e)}render(e){this._textAreaInput.writeNativeTextAreaContent("render"),this._render()}_render(){if(this._visibleTextArea){const i=this._visibleTextArea.visibleTextareaStart,n=this._visibleTextArea.visibleTextareaEnd,s=this._visibleTextArea.startPosition,r=this._visibleTextArea.endPosition;if(s&&r&&i&&n&&n.left>=this._scrollLeft&&i.left<=this._scrollLeft+this._contentWidth){const a=this._context.viewLayout.getVerticalOffsetForLineNumber(this._primaryCursorPosition.lineNumber)-this._scrollTop,l=this._newlinecount(this.textArea.domNode.value.substr(0,this.textArea.domNode.selectionStart));let c=this._visibleTextArea.widthOfHiddenLineTextBefore,d=this._contentLeft+i.left-this._scrollLeft,h=n.left-i.left+1;if(dthis._contentWidth&&(h=this._contentWidth);const u=this._context.viewModel.getViewLineData(s.lineNumber),f=u.tokens.findTokenIndexAtOffset(s.column-1),g=u.tokens.findTokenIndexAtOffset(r.column-1),p=f===g,_=this._visibleTextArea.definePresentation(p?u.tokens.getPresentation(f):null);this.textArea.domNode.scrollTop=l*this._lineHeight,this.textArea.domNode.scrollLeft=c,this._doRender({lastRenderPosition:null,top:a,left:d,width:h,height:this._lineHeight,useCover:!1,color:(si.getColorMap()||[])[_.foreground],italic:_.italic,bold:_.bold,underline:_.underline,strikethrough:_.strikethrough})}return}if(!this._primaryCursorVisibleRange){this._renderAtTopLeft();return}const e=this._contentLeft+this._primaryCursorVisibleRange.left-this._scrollLeft;if(ethis._contentLeft+this._contentWidth){this._renderAtTopLeft();return}const t=this._context.viewLayout.getVerticalOffsetForLineNumber(this._selections[0].positionLineNumber)-this._scrollTop;if(t<0||t>this._contentHeight){this._renderAtTopLeft();return}if(Ue||this._accessibilitySupport===2){this._doRender({lastRenderPosition:this._primaryCursorPosition,top:t,left:this._textAreaWrapping?this._contentLeft:e,width:this._textAreaWidth,height:this._lineHeight,useCover:!1}),this.textArea.domNode.scrollLeft=this._primaryCursorVisibleRange.left;const i=this._textAreaInput.textAreaState.newlineCountBeforeSelection??this._newlinecount(this.textArea.domNode.value.substr(0,this.textArea.domNode.selectionStart));this.textArea.domNode.scrollTop=i*this._lineHeight;return}this._doRender({lastRenderPosition:this._primaryCursorPosition,top:t,left:this._textAreaWrapping?this._contentLeft:e,width:this._textAreaWidth,height:eL?0:1,useCover:!1})}_newlinecount(e){let t=0,i=-1;do{if(i=e.indexOf(` +`,i+1),i===-1)break;t++}while(!0);return t}_renderAtTopLeft(){this._doRender({lastRenderPosition:null,top:0,left:0,width:this._textAreaWidth,height:eL?0:1,useCover:!0})}_doRender(e){this._lastRenderPosition=e.lastRenderPosition;const t=this.textArea,i=this.textAreaCover;qi(t,this._fontInfo),t.setTop(e.top),t.setLeft(e.left),t.setWidth(e.width),t.setHeight(e.height),t.setColor(e.color?q.Format.CSS.formatHex(e.color):""),t.setFontStyle(e.italic?"italic":""),e.bold&&t.setFontWeight("bold"),t.setTextDecoration(`${e.underline?" underline":""}${e.strikethrough?" line-through":""}`),i.setTop(e.useCover?e.top:0),i.setLeft(e.useCover?e.left:0),i.setWidth(e.useCover?e.width:0),i.setHeight(e.useCover?e.height:0);const n=this._context.configuration.options;n.get(57)?i.setClassName("monaco-editor-background textAreaCover "+Nv.OUTER_CLASS_NAME):n.get(68).renderType!==0?i.setClassName("monaco-editor-background textAreaCover "+Ev.CLASS_NAME):i.setClassName("monaco-editor-background textAreaCover")}};xI=cne([EO(3,vt),EO(4,ke)],xI);function hne(o,e,t,i){if(e.length===0)return 0;const n=o.createElement("div");n.style.position="absolute",n.style.top="-50000px",n.style.width="50000px";const s=o.createElement("span");qi(s,t),s.style.whiteSpace="pre",s.style.tabSize=`${i*t.spaceWidth}px`,s.append(e),n.appendChild(s),o.body.appendChild(n);const r=s.offsetWidth;return n.remove(),r}const une=()=>!0,fne=()=>!1,gne=o=>o===" "||o===" ";class Au{static shouldRecreate(e){return e.hasChanged(146)||e.hasChanged(132)||e.hasChanged(37)||e.hasChanged(77)||e.hasChanged(79)||e.hasChanged(80)||e.hasChanged(6)||e.hasChanged(7)||e.hasChanged(11)||e.hasChanged(9)||e.hasChanged(10)||e.hasChanged(14)||e.hasChanged(129)||e.hasChanged(50)||e.hasChanged(92)||e.hasChanged(131)}constructor(e,t,i,n){this.languageConfigurationService=n,this._cursorMoveConfigurationBrand=void 0,this._languageId=e;const s=i.options,r=s.get(146),a=s.get(50);this.readOnly=s.get(92),this.tabSize=t.tabSize,this.indentSize=t.indentSize,this.insertSpaces=t.insertSpaces,this.stickyTabStops=s.get(117),this.lineHeight=a.lineHeight,this.typicalHalfwidthCharacterWidth=a.typicalHalfwidthCharacterWidth,this.pageSize=Math.max(1,Math.floor(r.height/this.lineHeight)-2),this.useTabStops=s.get(129),this.wordSeparators=s.get(132),this.emptySelectionClipboard=s.get(37),this.copyWithSyntaxHighlighting=s.get(25),this.multiCursorMergeOverlapping=s.get(77),this.multiCursorPaste=s.get(79),this.multiCursorLimit=s.get(80),this.autoClosingBrackets=s.get(6),this.autoClosingComments=s.get(7),this.autoClosingQuotes=s.get(11),this.autoClosingDelete=s.get(9),this.autoClosingOvertype=s.get(10),this.autoSurround=s.get(14),this.autoIndent=s.get(12),this.wordSegmenterLocales=s.get(131),this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:this._getShouldAutoClose(e,this.autoClosingQuotes,!0),comment:this._getShouldAutoClose(e,this.autoClosingComments,!1),bracket:this._getShouldAutoClose(e,this.autoClosingBrackets,!1)},this.autoClosingPairs=this.languageConfigurationService.getLanguageConfiguration(e).getAutoClosingPairs();const l=this.languageConfigurationService.getLanguageConfiguration(e).getSurroundingPairs();if(l)for(const d of l)this.surroundingPairs[d.open]=d.close;const c=this.languageConfigurationService.getLanguageConfiguration(e).comments;this.blockCommentStartToken=c?.blockCommentStartToken??null}get electricChars(){if(!this._electricChars){this._electricChars={};const e=this.languageConfigurationService.getLanguageConfiguration(this._languageId).electricCharacter?.getElectricCharacters();if(e)for(const t of e)this._electricChars[t]=!0}return this._electricChars}onElectricCharacter(e,t,i){const n=zd(t,i-1),s=this.languageConfigurationService.getLanguageConfiguration(n.languageId).electricCharacter;return s?s.onElectricCharacter(e,n,i-n.firstCharOffset):null}normalizeIndentation(e){return Q7(e,this.indentSize,this.insertSpaces)}_getShouldAutoClose(e,t,i){switch(t){case"beforeWhitespace":return gne;case"languageDefined":return this._getLanguageDefinedShouldAutoClose(e,i);case"always":return une;case"never":return fne}}_getLanguageDefinedShouldAutoClose(e,t){const i=this.languageConfigurationService.getLanguageConfiguration(e).getAutoCloseBeforeSet(t);return n=>i.indexOf(n)!==-1}visibleColumnFromColumn(e,t){return _i.visibleColumnFromColumn(e.getLineContent(t.lineNumber),t.column,this.tabSize)}columnFromVisibleColumn(e,t,i){const n=_i.columnFromVisibleColumn(e.getLineContent(t),i,this.tabSize),s=e.getLineMinColumn(t);if(nr?r:n}}class Ke{static fromModelState(e){return new mne(e)}static fromViewState(e){return new pne(e)}static fromModelSelection(e){const t=Fe.liftSelection(e),i=new Ri(I.fromPositions(t.getSelectionStart()),0,0,t.getPosition(),0);return Ke.fromModelState(i)}static fromModelSelections(e){const t=[];for(let i=0,n=e.length;is,c=n>r,d=nr||bn||_0&&n--,Id.columnSelect(e,t,i.fromViewLineNumber,i.fromViewVisualColumn,i.toViewLineNumber,n)}static columnSelectRight(e,t,i){let n=0;const s=Math.min(i.fromViewLineNumber,i.toViewLineNumber),r=Math.max(i.fromViewLineNumber,i.toViewLineNumber);for(let l=s;l<=r;l++){const c=t.getLineMaxColumn(l),d=e.visibleColumnFromColumn(t,new P(l,c));n=Math.max(n,d)}let a=i.toViewVisualColumn;return ae.getLineMinColumn(t.lineNumber))return t.delta(void 0,-fF(e.getLineContent(t.lineNumber),t.column-1));if(t.lineNumber>1){const i=t.lineNumber-1;return new P(i,e.getLineMaxColumn(i))}else return t}static leftPositionAtomicSoftTabs(e,t,i){if(t.column<=e.getLineIndentColumn(t.lineNumber)){const n=e.getLineMinColumn(t.lineNumber),s=e.getLineContent(t.lineNumber),r=x_.atomicPosition(s,t.column-1,i,0);if(r!==-1&&r+1>=n)return new P(t.lineNumber,r+1)}return this.leftPosition(e,t)}static left(e,t,i){const n=e.stickyTabStops?dt.leftPositionAtomicSoftTabs(t,i,e.tabSize):dt.leftPosition(t,i);return new tL(n.lineNumber,n.column,0)}static moveLeft(e,t,i,n,s){let r,a;if(i.hasSelection()&&!n)r=i.selection.startLineNumber,a=i.selection.startColumn;else{const l=i.position.delta(void 0,-(s-1)),c=t.normalizePosition(dt.clipPositionColumn(l,t),0),d=dt.left(e,t,c);r=d.lineNumber,a=d.column}return i.move(n,r,a,0)}static clipPositionColumn(e,t){return new P(e.lineNumber,dt.clipRange(e.column,t.getLineMinColumn(e.lineNumber),t.getLineMaxColumn(e.lineNumber)))}static clipRange(e,t,i){return ei?i:e}static rightPosition(e,t,i){return id?(i=d,a?n=t.getLineMaxColumn(i):n=Math.min(t.getLineMaxColumn(i),n)):n=e.columnFromVisibleColumn(t,i,c),f?s=0:s=c-_i.visibleColumnFromColumn(t.getLineContent(i),n,e.tabSize),l!==void 0){const g=new P(i,n),p=t.normalizePosition(g,l);s=s+(n-p.column),i=p.lineNumber,n=p.column}return new tL(i,n,s)}static down(e,t,i,n,s,r,a){return this.vertical(e,t,i,n,s,i+r,a,4)}static moveDown(e,t,i,n,s){let r,a;i.hasSelection()&&!n?(r=i.selection.endLineNumber,a=i.selection.endColumn):(r=i.position.lineNumber,a=i.position.column);let l=0,c;do if(c=dt.down(e,t,r+l,a,i.leftoverVisibleColumns,s,!0),t.normalizePosition(new P(c.lineNumber,c.column),2).lineNumber>r)break;while(l++<10&&r+l1&&this._isBlankLine(t,s);)s--;for(;s>1&&!this._isBlankLine(t,s);)s--;return i.move(n,s,t.getLineMinColumn(s),0)}static moveToNextBlankLine(e,t,i,n){const s=t.getLineCount();let r=i.position.lineNumber;for(;r=u.length+1)return!1;const f=u.charAt(h.column-2),g=n.get(f);if(!g)return!1;if(Hc(f)){if(i==="never")return!1}else if(t==="never")return!1;const p=u.charAt(h.column-1);let _=!1;for(const b of g)b.open===f&&b.close===p&&(_=!0);if(!_)return!1;if(e==="auto"){let b=!1;for(let C=0,w=a.length;C1){const s=t.getLineContent(n.lineNumber),r=zn(s),a=r===-1?s.length+1:r+1;if(n.column<=a){const l=i.visibleColumnFromColumn(t,n),c=_i.prevIndentTabStop(l,i.indentSize),d=i.columnFromVisibleColumn(t,n.lineNumber,c);return new I(n.lineNumber,d,n.lineNumber,n.column)}}return I.fromPositions(Kh.getPositionAfterDeleteLeft(n,t),n)}static getPositionAfterDeleteLeft(e,t){if(e.column>1){const i=_H(e.column-1,t.getLineContent(e.lineNumber));return e.with(void 0,i+1)}else if(e.lineNumber>1){const i=e.lineNumber-1;return new P(i,t.getLineMaxColumn(i))}else return e}static cut(e,t,i){const n=[];let s=null;i.sort((r,a)=>P.compare(r.getStartPosition(),a.getEndPosition()));for(let r=0,a=i.length;r1&&s?.endLineNumber!==c.lineNumber?(d=c.lineNumber-1,h=t.getLineMaxColumn(c.lineNumber-1),u=c.lineNumber,f=t.getLineMaxColumn(c.lineNumber)):(d=c.lineNumber,h=1,u=c.lineNumber,f=t.getLineMaxColumn(c.lineNumber));const g=new I(d,h,u,f);s=g,g.isEmpty()?n[r]=null:n[r]=new os(g,"")}else n[r]=null;else n[r]=new os(l,"")}return new jn(0,n,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}class ii{static _createWord(e,t,i,n,s){return{start:n,end:s,wordType:t,nextCharClass:i}}static _createIntlWord(e,t){return{start:e.index,end:e.index+e.segment.length,wordType:1,nextCharClass:t}}static _findPreviousWordOnLine(e,t,i){const n=t.getLineContent(i.lineNumber);return this._doFindPreviousWordOnLine(n,e,i)}static _doFindPreviousWordOnLine(e,t,i){let n=0;const s=t.findPrevIntlWordBeforeOrAtOffset(e,i.column-2);for(let r=i.column-2;r>=0;r--){const a=e.charCodeAt(r),l=t.get(a);if(s&&r===s.index)return this._createIntlWord(s,l);if(l===0){if(n===2)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1));n=1}else if(l===2){if(n===1)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1));n=2}else if(l===1&&n!==0)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1))}return n!==0?this._createWord(e,n,1,0,this._findEndOfWord(e,t,n,0)):null}static _findEndOfWord(e,t,i,n){const s=t.findNextIntlWordAtOrAfterOffset(e,n),r=e.length;for(let a=n;a=0;r--){const a=e.charCodeAt(r),l=t.get(a);if(s&&r===s.index)return r;if(l===1||i===1&&l===2||i===2&&l===0)return r+1}return 0}static moveWordLeft(e,t,i,n,s){let r=i.lineNumber,a=i.column;a===1&&r>1&&(r=r-1,a=t.getLineMaxColumn(r));let l=ii._findPreviousWordOnLine(e,t,new P(r,a));if(n===0)return new P(r,l?l.start+1:1);if(n===1)return!s&&l&&l.wordType===2&&l.end-l.start===1&&l.nextCharClass===0&&(l=ii._findPreviousWordOnLine(e,t,new P(r,l.start+1))),new P(r,l?l.start+1:1);if(n===3){for(;l&&l.wordType===2;)l=ii._findPreviousWordOnLine(e,t,new P(r,l.start+1));return new P(r,l?l.start+1:1)}return l&&a<=l.end+1&&(l=ii._findPreviousWordOnLine(e,t,new P(r,l.start+1))),new P(r,l?l.end+1:1)}static _moveWordPartLeft(e,t){const i=t.lineNumber,n=e.getLineMaxColumn(i);if(t.column===1)return i>1?new P(i-1,e.getLineMaxColumn(i-1)):t;const s=e.getLineContent(i);for(let r=t.column-1;r>1;r--){const a=s.charCodeAt(r-2),l=s.charCodeAt(r-1);if(a===95&&l!==95)return new P(i,r);if(a===45&&l!==45)return new P(i,r);if((Yu(a)||yb(a))&&ql(l))return new P(i,r);if(ql(a)&&ql(l)&&r+1=l.start+1&&(l=ii._findNextWordOnLine(e,t,new P(s,l.end+1))),l?r=l.start+1:r=t.getLineMaxColumn(s);return new P(s,r)}static _moveWordPartRight(e,t){const i=t.lineNumber,n=e.getLineMaxColumn(i);if(t.column===n)return i1?c=1:(l--,c=n.getLineMaxColumn(l)):(d&&c<=d.end+1&&(d=ii._findPreviousWordOnLine(i,n,new P(l,d.start+1))),d?c=d.end+1:c>1?c=1:(l--,c=n.getLineMaxColumn(l))),new I(l,c,a.lineNumber,a.column)}static deleteInsideWord(e,t,i){if(!i.isEmpty())return i;const n=new P(i.positionLineNumber,i.positionColumn),s=this._deleteInsideWordWhitespace(t,n);return s||this._deleteInsideWordDetermineDeleteRange(e,t,n)}static _charAtIsWhitespace(e,t){const i=e.charCodeAt(t);return i===32||i===9}static _deleteInsideWordWhitespace(e,t){const i=e.getLineContent(t.lineNumber),n=i.length;if(n===0)return null;let s=Math.max(t.column-2,0);if(!this._charAtIsWhitespace(i,s))return null;let r=Math.min(t.column-1,n-1);if(!this._charAtIsWhitespace(i,r))return null;for(;s>0&&this._charAtIsWhitespace(i,s-1);)s--;for(;r+11?new I(i.lineNumber-1,t.getLineMaxColumn(i.lineNumber-1),i.lineNumber,1):i.lineNumberh.start+1<=i.column&&i.column<=h.end+1,a=(h,u)=>(h=Math.min(h,i.column),u=Math.max(u,i.column),new I(i.lineNumber,h,i.lineNumber,u)),l=h=>{let u=h.start+1,f=h.end+1,g=!1;for(;f-11&&this._charAtIsWhitespace(n,u-2);)u--;return a(u,f)},c=ii._findPreviousWordOnLine(e,t,i);if(c&&r(c))return l(c);const d=ii._findNextWordOnLine(e,t,i);return d&&r(d)?l(d):c&&d?a(c.end+1,d.start+1):c?a(c.start+1,c.end+1):d?a(d.start+1,d.end+1):a(1,s+1)}static _deleteWordPartLeft(e,t){if(!t.isEmpty())return t;const i=t.getPosition(),n=ii._moveWordPartLeft(e,i);return new I(i.lineNumber,i.column,n.lineNumber,n.column)}static _findFirstNonWhitespaceChar(e,t){const i=e.length;for(let n=t;n=u.start+1&&(u=ii._findNextWordOnLine(i,n,new P(l,u.end+1))),u?c=u.start+1:cc&&(d=c,h=e.model.getLineMaxColumn(d)),Ke.fromModelState(new Ri(new I(r.lineNumber,1,d,h),2,0,new P(d,h),0))}const l=t.modelState.selectionStart.getStartPosition().lineNumber;if(r.lineNumberl){const c=e.getLineCount();let d=a.lineNumber+1,h=1;return d>c&&(d=c,h=e.getLineMaxColumn(d)),Ke.fromViewState(t.viewState.move(!0,d,h,0))}else{const c=t.modelState.selectionStart.getEndPosition();return Ke.fromModelState(t.modelState.move(!0,c.lineNumber,c.column,0))}}static word(e,t,i,n){const s=e.model.validatePosition(n);return Ke.fromModelState(ii.word(e.cursorConfig,e.model,t.modelState,i,s))}static cancelSelection(e,t){if(!t.modelState.hasSelection())return new Ke(t.modelState,t.viewState);const i=t.viewState.position.lineNumber,n=t.viewState.position.column;return Ke.fromViewState(new Ri(new I(i,n,i,n),0,0,new P(i,n),0))}static moveTo(e,t,i,n,s){if(i){if(t.modelState.selectionStartKind===1)return this.word(e,t,i,n);if(t.modelState.selectionStartKind===2)return this.line(e,t,i,n,s)}const r=e.model.validatePosition(n),a=s?e.coordinatesConverter.validateViewPosition(new P(s.lineNumber,s.column),r):e.coordinatesConverter.convertModelPositionToViewPosition(r);return Ke.fromViewState(t.viewState.move(i,a.lineNumber,a.column,0))}static simpleMove(e,t,i,n,s,r){switch(i){case 0:return r===4?this._moveHalfLineLeft(e,t,n):this._moveLeft(e,t,n,s);case 1:return r===4?this._moveHalfLineRight(e,t,n):this._moveRight(e,t,n,s);case 2:return r===2?this._moveUpByViewLines(e,t,n,s):this._moveUpByModelLines(e,t,n,s);case 3:return r===2?this._moveDownByViewLines(e,t,n,s):this._moveDownByModelLines(e,t,n,s);case 4:return r===2?t.map(a=>Ke.fromViewState(dt.moveToPrevBlankLine(e.cursorConfig,e,a.viewState,n))):t.map(a=>Ke.fromModelState(dt.moveToPrevBlankLine(e.cursorConfig,e.model,a.modelState,n)));case 5:return r===2?t.map(a=>Ke.fromViewState(dt.moveToNextBlankLine(e.cursorConfig,e,a.viewState,n))):t.map(a=>Ke.fromModelState(dt.moveToNextBlankLine(e.cursorConfig,e.model,a.modelState,n)));case 6:return this._moveToViewMinColumn(e,t,n);case 7:return this._moveToViewFirstNonWhitespaceColumn(e,t,n);case 8:return this._moveToViewCenterColumn(e,t,n);case 9:return this._moveToViewMaxColumn(e,t,n);case 10:return this._moveToViewLastNonWhitespaceColumn(e,t,n);default:return null}}static viewportMove(e,t,i,n,s){const r=e.getCompletelyVisibleViewRange(),a=e.coordinatesConverter.convertViewRangeToModelRange(r);switch(i){case 11:{const l=this._firstLineNumberInRange(e.model,a,s),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 13:{const l=this._lastLineNumberInRange(e.model,a,s),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 12:{const l=Math.round((a.startLineNumber+a.endLineNumber)/2),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 14:{const l=[];for(let c=0,d=t.length;ci.endLineNumber-1?r=i.endLineNumber-1:sKe.fromViewState(dt.moveLeft(e.cursorConfig,e,s.viewState,i,n)))}static _moveHalfLineLeft(e,t,i){const n=[];for(let s=0,r=t.length;sKe.fromViewState(dt.moveRight(e.cursorConfig,e,s.viewState,i,n)))}static _moveHalfLineRight(e,t,i){const n=[];for(let s=0,r=t.length;s{this.model.tokenization.forceTokenization(f);const g=this.model.tokenization.getLineTokens(f),p=this.model.getLineMaxColumn(f)-1;return zd(g,p)};this.model.tokenization.forceTokenization(e.startLineNumber);const i=this.model.tokenization.getLineTokens(e.startLineNumber),n=zd(i,e.startColumn-1),s=Ni.createEmpty("",n.languageIdCodec),r=e.startLineNumber-1;if(r===0||!(n.firstCharOffset===0))return s;const c=t(r);if(!(n.languageId===c.languageId))return s;const h=c.toIViewLineTokens();return this.indentationLineProcessor.getProcessedTokens(h)}}class v8{constructor(e,t){this.model=e,this.languageConfigurationService=t}getProcessedLine(e,t){const i=(r,a)=>{const l=pi(r);return a+r.substring(l.length)};this.model.tokenization.forceTokenization?.(e);const n=this.model.tokenization.getLineTokens(e);let s=this.getProcessedTokens(n).getLineContent();return t!==void 0&&(s=i(s,t)),s}getProcessedTokens(e){const t=l=>l===2||l===3||l===1,i=e.getLanguageId(0),s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew.getBracketRegExp({global:!0}),r=[];return e.forEach(l=>{const c=e.getStandardTokenType(l);let d=e.getTokenText(l);t(c)&&(d=d.replace(s,""));const h=e.getMetadata(l);r.push({text:d,metadata:h})}),Ni.createFromTextAndMetadata(r,e.languageIdCodec)}}function V2(o,e){o.tokenization.forceTokenization(e.lineNumber);const t=o.tokenization.getLineTokens(e.lineNumber),i=zd(t,e.column-1),n=i.firstCharOffset===0,s=t.getLanguageId(0)===i.languageId;return!n&&!s}function z2(o,e,t,i){e.tokenization.forceTokenization(t.startLineNumber);const n=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),s=i.getLanguageConfiguration(n);if(!s)return null;const a=new H2(e,i).getProcessedTokenContextAroundRange(t),l=a.previousLineProcessedTokens.getLineContent(),c=a.beforeRangeProcessedTokens.getLineContent(),d=a.afterRangeProcessedTokens.getLineContent(),h=s.onEnter(o,l,c,d);if(!h)return null;const u=h.indentAction;let f=h.appendText;const g=h.removeText||0;f?u===Sn.Indent&&(f=" "+f):u===Sn.Indent||u===Sn.IndentOutdent?f=" ":f="";let p=r3(e,t.startLineNumber,t.startColumn);return g&&(p=p.substring(0,p.length-g)),{indentAction:u,appendText:f,removeText:g,indentation:p}}var Cne=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vne=function(o,e){return function(t,i){e(t,i,o)}},K1;const iL=Object.create(null);function od(o,e){if(e<=0)return"";iL[o]||(iL[o]=["",o]);const t=iL[o];for(let i=t.length;i<=e;i++)t[i]=t[i-1]+o;return t[e]}let jh=K1=class{static unshiftIndent(e,t,i,n,s){const r=_i.visibleColumnFromColumn(e,t,i);if(s){const a=od(" ",n),c=_i.prevIndentTabStop(r,n)/n;return od(a,c)}else{const c=_i.prevRenderTabStop(r,i)/i;return od(" ",c)}}static shiftIndent(e,t,i,n,s){const r=_i.visibleColumnFromColumn(e,t,i);if(s){const a=od(" ",n),c=_i.nextIndentTabStop(r,n)/n;return od(a,c)}else{const c=_i.nextRenderTabStop(r,i)/i;return od(" ",c)}}constructor(e,t,i){this._languageConfigurationService=i,this._opts=t,this._selection=e,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}_addEditOperation(e,t,i){this._useLastEditRangeForCursorEndPosition?e.addTrackedEditOperation(t,i):e.addEditOperation(t,i)}getEditOperations(e,t){const i=this._selection.startLineNumber;let n=this._selection.endLineNumber;this._selection.endColumn===1&&i!==n&&(n=n-1);const{tabSize:s,indentSize:r,insertSpaces:a}=this._opts,l=i===n;if(this._opts.useTabStops){this._selection.isEmpty()&&/^\s*$/.test(e.getLineContent(i))&&(this._useLastEditRangeForCursorEndPosition=!0);let c=0,d=0;for(let h=i;h<=n;h++,c=d){d=0;const u=e.getLineContent(h);let f=zn(u);if(this._opts.isUnshift&&(u.length===0||f===0)||!l&&!this._opts.isUnshift&&u.length===0)continue;if(f===-1&&(f=u.length),h>1&&_i.visibleColumnFromColumn(u,f+1,s)%r!==0&&e.tokenization.isCheapToTokenize(h-1)){const _=z2(this._opts.autoIndent,e,new I(h-1,e.getLineMaxColumn(h-1),h-1,e.getLineMaxColumn(h-1)),this._languageConfigurationService);if(_){if(d=c,_.appendText)for(let b=0,C=_.appendText.length;b1){let n,s=-1;for(n=e-1;n>=1;n--){if(o.tokenization.getLanguageIdAtPosition(n,0)!==i)return s;const r=o.getLineContent(n);if(t.shouldIgnore(n)||/^\s+$/.test(r)||r===""){s=n;continue}return n}}return-1}function Rv(o,e,t,i=!0,n){if(o<4)return null;const s=n.getLanguageConfiguration(e.tokenization.getLanguageId()).indentRulesSupport;if(!s)return null;const r=new bne(e,s,n);if(t<=1)return{indentation:"",action:null};for(let l=t-1;l>0&&e.getLineContent(l)==="";l--)if(l===1)return{indentation:"",action:null};const a=Sne(e,t,r);if(a<0)return null;if(a<1)return{indentation:"",action:null};if(r.shouldIncrease(a)||r.shouldIndentNextLine(a)){const l=e.getLineContent(a);return{indentation:pi(l),action:Sn.Indent,line:a}}else if(r.shouldDecrease(a)){const l=e.getLineContent(a);return{indentation:pi(l),action:null,line:a}}else{if(a===1)return{indentation:pi(e.getLineContent(a)),action:null,line:a};const l=a-1,c=s.getIndentMetadata(e.getLineContent(l));if(!(c&3)&&c&4){let d=0;for(let h=l-1;h>0;h--)if(!r.shouldIndentNextLine(h)){d=h;break}return{indentation:pi(e.getLineContent(d+1)),action:null,line:d+1}}if(i)return{indentation:pi(e.getLineContent(a)),action:null,line:a};for(let d=a;d>0;d--){if(r.shouldIncrease(d))return{indentation:pi(e.getLineContent(d)),action:Sn.Indent,line:d};if(r.shouldIndentNextLine(d)){let h=0;for(let u=d-1;u>0;u--)if(!r.shouldIndentNextLine(d)){h=u;break}return{indentation:pi(e.getLineContent(h+1)),action:null,line:h+1}}else if(r.shouldDecrease(d))return{indentation:pi(e.getLineContent(d)),action:null,line:d}}return{indentation:pi(e.getLineContent(1)),action:null,line:1}}}function Lne(o,e,t,i,n){if(o<4)return null;const s=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),r=n.getLanguageConfiguration(s).indentRulesSupport;if(!r)return null;e.tokenization.forceTokenization(t.startLineNumber);const l=new H2(e,n).getProcessedTokenContextAroundRange(t),c=l.afterRangeProcessedTokens,d=l.beforeRangeProcessedTokens,h=pi(d.getLineContent()),u=kne(e,t.startLineNumber,d),f=V2(e,t.getStartPosition()),g=e.getLineContent(t.startLineNumber),p=pi(g),_=Rv(o,u,t.startLineNumber+1,void 0,n);if(!_){const C=f?p:h;return{beforeEnter:C,afterEnter:C}}let b=f?p:_.indentation;return _.action===Sn.Indent&&(b=i.shiftIndent(b)),r.shouldDecrease(c.getLineContent())&&(b=i.unshiftIndent(b)),{beforeEnter:f?p:h,afterEnter:b}}function xne(o,e,t,i,n,s){const r=o.autoIndent;if(r<4||V2(e,t.getStartPosition()))return null;const l=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),c=s.getLanguageConfiguration(l).indentRulesSupport;if(!c)return null;const h=new H2(e,s).getProcessedTokenContextAroundRange(t),u=h.beforeRangeProcessedTokens.getLineContent(),f=h.afterRangeProcessedTokens.getLineContent(),g=u+f,p=u+i+f;if(!c.shouldDecrease(g)&&c.shouldDecrease(p)){const b=Rv(r,e,t.startLineNumber,!1,s);if(!b)return null;let C=b.indentation;return b.action!==Sn.Indent&&(C=n.unshiftIndent(C)),C}const _=t.startLineNumber-1;if(_>0){const b=e.getLineContent(_);if(c.shouldIndentNextLine(b)&&c.shouldIncrease(p)){const w=Rv(r,e,t.startLineNumber,!1,s)?.indentation;if(w!==void 0){const v=e.getLineContent(t.startLineNumber),y=pi(v),L=n.shiftIndent(w)===y,E=/^\s*$/.test(g),N=o.autoClosingPairs.autoClosingPairsOpenByEnd.get(i),F=N&&N.length>0&&E;if(L&&F)return w}}}return null}function kne(o,e,t){return{tokenization:{getLineTokens:n=>n===e?t:o.tokenization.getLineTokens(n),getLanguageId:()=>o.getLanguageId(),getLanguageIdAtPosition:(n,s)=>o.getLanguageIdAtPosition(n,s)},getLineContent:n=>n===e?t.getLineContent():o.getLineContent(n)}}class Dne{static getEdits(e,t,i,n,s){if(!s&&this._isAutoIndentType(e,t,i)){const r=[];for(const l of i){const c=this._findActualIndentationForSelection(e,t,l,n);if(c===null)return;r.push({selection:l,indentation:c})}const a=kI.getAutoClosingPairClose(e,t,i,n,!1);return this._getIndentationAndAutoClosingPairEdits(e,t,r,n,a)}}static _isAutoIndentType(e,t,i){if(e.autoIndent<4)return!1;for(let n=0,s=i.length;nK2(e,a),unshiftIndent:a=>Av(e,a)},e.languageConfigurationService);if(s===null)return null;const r=r3(t,i.startLineNumber,i.startColumn);return s===e.normalizeIndentation(r)?null:s}static _getIndentationAndAutoClosingPairEdits(e,t,i,n,s){const r=i.map(({selection:l,indentation:c})=>{if(s!==null){const d=this._getEditFromIndentationAndSelection(e,t,c,l,n,!1);return new Bne(d,l,n,s)}else{const d=this._getEditFromIndentationAndSelection(e,t,c,l,n,!0);return gd(d.range,d.text,!1)}}),a={shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1};return new jn(4,r,a)}static _getEditFromIndentationAndSelection(e,t,i,n,s,r=!0){const a=n.startLineNumber,l=t.getLineFirstNonWhitespaceColumn(a);let c=e.normalizeIndentation(i);if(l!==0){const h=t.getLineContent(a);c+=h.substring(l-1,n.startColumn-1)}return c+=r?s:"",{range:new I(a,1,n.endLineNumber,n.endColumn),text:c}}}class Ine{static getEdits(e,t,i,n,s,r){if(y8(t,i,n,s,r))return this._runAutoClosingOvertype(e,n,r)}static _runAutoClosingOvertype(e,t,i){const n=[];for(let s=0,r=t.length;snew os(new I(a.positionLineNumber,a.positionColumn,a.positionLineNumber,a.positionColumn+1),"",!1));return new jn(4,r,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}}class kI{static getEdits(e,t,i,n,s,r){if(!r){const a=this.getAutoClosingPairClose(e,t,i,n,s);if(a!==null)return this._runAutoClosingOpenCharType(i,n,s,a)}}static _runAutoClosingOpenCharType(e,t,i,n){const s=[];for(let r=0,a=e.length;r{const p=g.getPosition();return s?{lineNumber:p.lineNumber,beforeColumn:p.column-n.length,afterColumn:p.column}:{lineNumber:p.lineNumber,beforeColumn:p.column,afterColumn:p.column}}),a=this._findAutoClosingPairOpen(e,t,r.map(g=>new P(g.lineNumber,g.beforeColumn)),n);if(!a)return null;let l,c;if(Hc(n)?(l=e.autoClosingQuotes,c=e.shouldAutoCloseBefore.quote):(e.blockCommentStartToken?a.open.includes(e.blockCommentStartToken):!1)?(l=e.autoClosingComments,c=e.shouldAutoCloseBefore.comment):(l=e.autoClosingBrackets,c=e.shouldAutoCloseBefore.bracket),l==="never")return null;const h=this._findContainedAutoClosingPair(e,a),u=h?h.close:"";let f=!0;for(const g of r){const{lineNumber:p,beforeColumn:_,afterColumn:b}=g,C=t.getLineContent(p),w=C.substring(0,_-1),v=C.substring(b-1);if(v.startsWith(u)||(f=!1),v.length>0){const E=v.charAt(0);if(!this._isBeforeClosingBrace(e,v)&&!c(E))return null}if(a.open.length===1&&(n==="'"||n==='"')&&l!=="always"){const E=cg(e.wordSeparators,[]);if(w.length>0){const N=w.charCodeAt(w.length-1);if(E.get(N)===0)return null}}if(!t.tokenization.isCheapToTokenize(p))return null;t.tokenization.forceTokenization(p);const y=t.tokenization.getLineTokens(p),x=zd(y,_-1);if(!a.shouldAutoClose(x,_-x.firstCharOffset))return null;const L=a.findNeutralCharacter();if(L){const E=t.tokenization.getTokenTypeIfInsertingCharacter(p,_,L);if(!a.isOK(E))return null}}return f?a.close.substring(0,a.close.length-u.length):a.close}static _findContainedAutoClosingPair(e,t){if(t.open.length<=1)return null;const i=t.close.charAt(t.close.length-1),n=e.autoClosingPairs.autoClosingPairsCloseByEnd.get(i)||[];let s=null;for(const r of n)r.open!==t.open&&t.open.includes(r.open)&&t.close.endsWith(r.close)&&(!s||r.open.length>s.open.length)&&(s=r);return s}static _findAutoClosingPairOpen(e,t,i,n){const s=e.autoClosingPairs.autoClosingPairsOpenByEnd.get(n);if(!s)return null;let r=null;for(const a of s)if(r===null||a.open.length>r.open.length){let l=!0;for(const c of i)if(t.getValueInRange(new I(c.lineNumber,c.column-a.open.length+1,c.lineNumber,c.column))+n!==a.open){l=!1;break}l&&(r=a)}return r}static _isBeforeClosingBrace(e,t){const i=t.charAt(0),n=e.autoClosingPairs.autoClosingPairsOpenByStart.get(i)||[],s=e.autoClosingPairs.autoClosingPairsCloseByStart.get(i)||[],r=n.some(l=>t.startsWith(l.open)),a=s.some(l=>t.startsWith(l.close));return!r&&a}}class Nne{static getEdits(e,t,i,n,s){if(!s&&this._isSurroundSelectionType(e,t,i,n))return this._runSurroundSelectionType(e,i,n)}static _runSurroundSelectionType(e,t,i){const n=[];for(let s=0,r=t.length;s=4){const l=Lne(e.autoIndent,t,n,{unshiftIndent:c=>Av(e,c),shiftIndent:c=>K2(e,c),normalizeIndentation:c=>e.normalizeIndentation(c)},e.languageConfigurationService);if(l){let c=e.visibleColumnFromColumn(t,n.getEndPosition());const d=n.endColumn,h=t.getLineContent(n.endLineNumber),u=zn(h);if(u>=0?n=n.setEndPosition(n.endLineNumber,Math.max(n.endColumn,u+1)):n=n.setEndPosition(n.endLineNumber,t.getLineMaxColumn(n.endLineNumber)),i)return new $1(n,` +`+e.normalizeIndentation(l.afterEnter),!0);{let f=0;return d<=u+1&&(e.insertSpaces||(c=Math.ceil(c/e.indentSize)),f=Math.min(c+1-e.normalizeIndentation(l.afterEnter).length-1,0)),new Tv(n,` +`+e.normalizeIndentation(l.afterEnter),0,f,!0)}}}return gd(n,` +`+e.normalizeIndentation(a),i)}static lineInsertBefore(e,t,i){if(t===null||i===null)return[];const n=[];for(let s=0,r=i.length;sthis._compositionType(i,d,s,r,a,l));return new jn(4,c,{shouldPushStackElementBefore:Dy(e,4),shouldPushStackElementAfter:!1})}static _compositionType(e,t,i,n,s,r){if(!t.isEmpty())return null;const a=t.getPosition(),l=Math.max(1,a.column-n),c=Math.min(e.getLineMaxColumn(a.lineNumber),a.column+s),d=new I(a.lineNumber,l,a.lineNumber,c);return e.getValueInRange(d)===i&&r===0?null:new Tv(d,i,0,r)}}class Pne{static getEdits(e,t,i){const n=[];for(let r=0,a=t.length;r1){let a;for(a=i-1;a>=1;a--){const d=t.getLineContent(a);if(Jh(d)>=0)break}if(a<1)return null;const l=t.getLineMaxColumn(a),c=z2(e.autoIndent,t,new I(a,l,a,l),e.languageConfigurationService);c&&(s=c.indentation+c.appendText)}return n&&(n===Sn.Indent&&(s=K2(e,s)),n===Sn.Outdent&&(s=Av(e,s)),s=e.normalizeIndentation(s)),s||null}static _replaceJumpToNextIndent(e,t,i,n){let s="";const r=i.getStartPosition();if(e.insertSpaces){const a=e.visibleColumnFromColumn(t,r),l=e.indentSize,c=l-a%l;for(let d=0;d2?c.charCodeAt(l.column-2):0)===92&&h)return!1;if(o.autoClosingOvertype==="auto"){let f=!1;for(let g=0,p=i.length;g{const n=t.get(Pt).getFocusedCodeEditor();return n&&n.hasTextFocus()?this._runEditorCommand(t,n,i):!1}),e.addImplementation(1e3,"generic-dom-input-textarea",(t,i)=>{const n=Xi();return n&&["input","textarea"].indexOf(n.tagName.toLowerCase())>=0?(this.runDOMCommand(n),!0):!1}),e.addImplementation(0,"generic-dom",(t,i)=>{const n=t.get(Pt).getActiveCodeEditor();return n?(n.focus(),this._runEditorCommand(t,n,i)):!1})}_runEditorCommand(e,t,i){const n=this.runEditorCommand(e,t,i);return n||!0}}var Li;(function(o){class e extends $t{constructor(C){super(C),this._inSelectionMode=C.inSelectionMode}runCoreEditorCommand(C,w){if(!w.position)return;C.model.pushStackElement(),C.setCursorStates(w.source,3,[nn.moveTo(C,C.getPrimaryCursorState(),this._inSelectionMode,w.position,w.viewPosition)])&&w.revealType!==2&&C.revealAllCursors(w.source,!0,!0)}}o.MoveTo=ge(new e({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),o.MoveToSelect=ge(new e({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));class t extends $t{runCoreEditorCommand(C,w){C.model.pushStackElement();const v=this._getColumnSelectResult(C,C.getPrimaryCursorState(),C.getCursorColumnSelectData(),w);v!==null&&(C.setCursorStates(w.source,3,v.viewStates.map(y=>Ke.fromViewState(y))),C.setCursorColumnSelectData({isReal:!0,fromViewLineNumber:v.fromLineNumber,fromViewVisualColumn:v.fromVisualColumn,toViewLineNumber:v.toLineNumber,toViewVisualColumn:v.toVisualColumn}),v.reversed?C.revealTopMostCursor(w.source):C.revealBottomMostCursor(w.source))}}o.ColumnSelect=ge(new class extends t{constructor(){super({id:"columnSelect",precondition:void 0})}_getColumnSelectResult(b,C,w,v){if(typeof v.position>"u"||typeof v.viewPosition>"u"||typeof v.mouseColumn>"u")return null;const y=b.model.validatePosition(v.position),x=b.coordinatesConverter.validateViewPosition(new P(v.viewPosition.lineNumber,v.viewPosition.column),y),L=v.doColumnSelect?w.fromViewLineNumber:x.lineNumber,E=v.doColumnSelect?w.fromViewVisualColumn:v.mouseColumn-1;return Id.columnSelect(b.cursorConfig,b,L,E,x.lineNumber,v.mouseColumn-1)}}),o.CursorColumnSelectLeft=ge(new class extends t{constructor(){super({id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3599,linux:{primary:0}}})}_getColumnSelectResult(b,C,w,v){return Id.columnSelectLeft(b.cursorConfig,b,w)}}),o.CursorColumnSelectRight=ge(new class extends t{constructor(){super({id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3601,linux:{primary:0}}})}_getColumnSelectResult(b,C,w,v){return Id.columnSelectRight(b.cursorConfig,b,w)}});class i extends t{constructor(C){super(C),this._isPaged=C.isPaged}_getColumnSelectResult(C,w,v,y){return Id.columnSelectUp(C.cursorConfig,C,v,this._isPaged)}}o.CursorColumnSelectUp=ge(new i({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3600,linux:{primary:0}}})),o.CursorColumnSelectPageUp=ge(new i({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3595,linux:{primary:0}}}));class n extends t{constructor(C){super(C),this._isPaged=C.isPaged}_getColumnSelectResult(C,w,v,y){return Id.columnSelectDown(C.cursorConfig,C,v,this._isPaged)}}o.CursorColumnSelectDown=ge(new n({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3602,linux:{primary:0}}})),o.CursorColumnSelectPageDown=ge(new n({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3596,linux:{primary:0}}}));class s extends $t{constructor(){super({id:"cursorMove",precondition:void 0,metadata:Mv.metadata})}runCoreEditorCommand(C,w){const v=Mv.parse(w);v&&this._runCursorMove(C,w.source,v)}_runCursorMove(C,w,v){C.model.pushStackElement(),C.setCursorStates(w,3,s._move(C,C.getCursorStates(),v)),C.revealAllCursors(w,!0)}static _move(C,w,v){const y=v.select,x=v.value;switch(v.direction){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:return nn.simpleMove(C,w,v.direction,y,x,v.unit);case 11:case 13:case 12:case 14:return nn.viewportMove(C,w,v.direction,y,x);default:return null}}}o.CursorMoveImpl=s,o.CursorMove=ge(new s);class r extends $t{constructor(C){super(C),this._staticArgs=C.args}runCoreEditorCommand(C,w){let v=this._staticArgs;this._staticArgs.value===-1&&(v={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:w.pageSize||C.cursorConfig.pageSize}),C.model.pushStackElement(),C.setCursorStates(w.source,3,nn.simpleMove(C,C.getCursorStates(),v.direction,v.select,v.value,v.unit)),C.revealAllCursors(w.source,!0)}}o.CursorLeft=ge(new r({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:15,mac:{primary:15,secondary:[288]}}})),o.CursorLeftSelect=ge(new r({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1039}})),o.CursorRight=ge(new r({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:17,mac:{primary:17,secondary:[292]}}})),o.CursorRightSelect=ge(new r({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1041}})),o.CursorUp=ge(new r({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:16,mac:{primary:16,secondary:[302]}}})),o.CursorUpSelect=ge(new r({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1040,secondary:[3088],mac:{primary:1040},linux:{primary:1040}}})),o.CursorPageUp=ge(new r({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:11}})),o.CursorPageUpSelect=ge(new r({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1035}})),o.CursorDown=ge(new r({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:18,mac:{primary:18,secondary:[300]}}})),o.CursorDownSelect=ge(new r({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1042,secondary:[3090],mac:{primary:1042},linux:{primary:1042}}})),o.CursorPageDown=ge(new r({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:12}})),o.CursorPageDownSelect=ge(new r({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1036}})),o.CreateCursor=ge(new class extends $t{constructor(){super({id:"createCursor",precondition:void 0})}runCoreEditorCommand(b,C){if(!C.position)return;let w;C.wholeLine?w=nn.line(b,b.getPrimaryCursorState(),!1,C.position,C.viewPosition):w=nn.moveTo(b,b.getPrimaryCursorState(),!1,C.position,C.viewPosition);const v=b.getCursorStates();if(v.length>1){const y=w.modelState?w.modelState.position:null,x=w.viewState?w.viewState.position:null;for(let L=0,E=v.length;Lx&&(y=x);const L=new I(y,1,y,b.model.getLineMaxColumn(y));let E=0;if(w.at)switch(w.at){case hf.RawAtArgument.Top:E=3;break;case hf.RawAtArgument.Center:E=1;break;case hf.RawAtArgument.Bottom:E=4;break}const N=b.coordinatesConverter.convertModelRangeToViewRange(L);b.revealRange(C.source,!1,N,E,0)}}),o.SelectAll=new class extends DI{constructor(){super(_z)}runDOMCommand(b){Mo&&(b.focus(),b.select()),b.ownerDocument.execCommand("selectAll")}runEditorCommand(b,C,w){const v=C._getViewModel();v&&this.runCoreEditorCommand(v,w)}runCoreEditorCommand(b,C){b.model.pushStackElement(),b.setCursorStates("keyboard",3,[nn.selectAll(b,b.getPrimaryCursorState())])}},o.SetSelection=ge(new class extends $t{constructor(){super({id:"setSelection",precondition:void 0})}runCoreEditorCommand(b,C){C.selection&&(b.model.pushStackElement(),b.setCursorStates(C.source,3,[Ke.fromModelSelection(C.selection)]))}})})(Li||(Li={}));const Hne=re.and(K.textInputFocus,K.columnSelection);function qg(o,e){Nn.registerKeybindingRule({id:o,primary:e,when:Hne,weight:it+1})}qg(Li.CursorColumnSelectLeft.id,1039);qg(Li.CursorColumnSelectRight.id,1041);qg(Li.CursorColumnSelectUp.id,1040);qg(Li.CursorColumnSelectPageUp.id,1035);qg(Li.CursorColumnSelectDown.id,1042);qg(Li.CursorColumnSelectPageDown.id,1036);function MO(o){return o.register(),o}var fp;(function(o){class e extends co{runEditorCommand(i,n,s){const r=n._getViewModel();r&&this.runCoreEditingCommand(n,r,s||{})}}o.CoreEditingCommand=e,o.LineBreakInsert=ge(new class extends e{constructor(){super({id:"lineBreakInsert",precondition:K.writable,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:0,mac:{primary:301}}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,w8.lineBreakInsert(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection)))}}),o.Outdent=ge(new class extends e{constructor(){super({id:"outdent",precondition:K.writable,kbOpts:{weight:it,kbExpr:re.and(K.editorTextFocus,K.tabDoesNotMoveFocus),primary:1026}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,Ed.outdent(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection))),t.pushUndoStop()}}),o.Tab=ge(new class extends e{constructor(){super({id:"tab",precondition:K.writable,kbOpts:{weight:it,kbExpr:re.and(K.editorTextFocus,K.tabDoesNotMoveFocus),primary:2}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,Ed.tab(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection))),t.pushUndoStop()}}),o.DeleteLeft=ge(new class extends e{constructor(){super({id:"deleteLeft",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1,secondary:[1025],mac:{primary:1,secondary:[1025,294,257]}}})}runCoreEditingCommand(t,i,n){const[s,r]=Kh.deleteLeft(i.getPrevEditOperationType(),i.cursorConfig,i.model,i.getCursorStates().map(a=>a.modelState.selection),i.getCursorAutoClosedCharacters());s&&t.pushUndoStop(),t.executeCommands(this.id,r),i.setPrevEditOperationType(2)}}),o.DeleteRight=ge(new class extends e{constructor(){super({id:"deleteRight",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:20,mac:{primary:20,secondary:[290,276]}}})}runCoreEditingCommand(t,i,n){const[s,r]=Kh.deleteRight(i.getPrevEditOperationType(),i.cursorConfig,i.model,i.getCursorStates().map(a=>a.modelState.selection));s&&t.pushUndoStop(),t.executeCommands(this.id,r),i.setPrevEditOperationType(3)}}),o.Undo=new class extends DI{constructor(){super(qF)}runDOMCommand(t){t.ownerDocument.execCommand("undo")}runEditorCommand(t,i,n){if(!(!i.hasModel()||i.getOption(92)===!0))return i.getModel().undo()}},o.Redo=new class extends DI{constructor(){super(GF)}runDOMCommand(t){t.ownerDocument.execCommand("redo")}runEditorCommand(t,i,n){if(!(!i.hasModel()||i.getOption(92)===!0))return i.getModel().redo()}}})(fp||(fp={}));class RO extends U0{constructor(e,t,i){super({id:e,precondition:void 0,metadata:i}),this._handlerId=t}runCommand(e,t){const i=e.get(Pt).getFocusedCodeEditor();i&&i.trigger("keyboard",this._handlerId,t)}}function pu(o,e){MO(new RO("default:"+o,o)),MO(new RO(o,o,e))}pu("type",{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]});pu("replacePreviousChar");pu("compositionType");pu("compositionStart");pu("compositionEnd");pu("paste");pu("cut");class Vne{constructor(e,t,i,n){this.configuration=e,this.viewModel=t,this.userInputEvents=i,this.commandDelegate=n}paste(e,t,i,n){this.commandDelegate.paste(e,t,i,n)}type(e){this.commandDelegate.type(e)}compositionType(e,t,i,n){this.commandDelegate.compositionType(e,t,i,n)}compositionStart(){this.commandDelegate.startComposition()}compositionEnd(){this.commandDelegate.endComposition()}cut(){this.commandDelegate.cut()}setSelection(e){Li.SetSelection.runCoreEditorCommand(this.viewModel,{source:"keyboard",selection:e})}_validateViewColumn(e){const t=this.viewModel.getLineMinColumn(e.lineNumber);return e.column=4?this._selectAll():e.mouseDownCount===3?this._hasMulticursorModifier(e)?e.inSelectionMode?this._lastCursorLineSelectDrag(e.position,e.revealType):this._lastCursorLineSelect(e.position,e.revealType):e.inSelectionMode?this._lineSelectDrag(e.position,e.revealType):this._lineSelect(e.position,e.revealType):e.mouseDownCount===2?e.onInjectedText||(this._hasMulticursorModifier(e)?this._lastCursorWordSelect(e.position,e.revealType):e.inSelectionMode?this._wordSelectDrag(e.position,e.revealType):this._wordSelect(e.position,e.revealType)):this._hasMulticursorModifier(e)?this._hasNonMulticursorModifier(e)||(e.shiftKey?this._columnSelect(e.position,e.mouseColumn,!0):e.inSelectionMode?this._lastCursorMoveToSelect(e.position,e.revealType):this._createCursor(e.position,!1)):e.inSelectionMode?e.altKey?this._columnSelect(e.position,e.mouseColumn,!0):n?this._columnSelect(e.position,e.mouseColumn,!0):this._moveToSelect(e.position,e.revealType):this.moveTo(e.position,e.revealType)}_usualArgs(e,t){return e=this._validateViewColumn(e),{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,revealType:t}}moveTo(e,t){Li.MoveTo.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_moveToSelect(e,t){Li.MoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_columnSelect(e,t,i){e=this._validateViewColumn(e),Li.ColumnSelect.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,mouseColumn:t,doColumnSelect:i})}_createCursor(e,t){e=this._validateViewColumn(e),Li.CreateCursor.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,wholeLine:t})}_lastCursorMoveToSelect(e,t){Li.LastCursorMoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_wordSelect(e,t){Li.WordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_wordSelectDrag(e,t){Li.WordSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lastCursorWordSelect(e,t){Li.LastCursorWordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lineSelect(e,t){Li.LineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lineSelectDrag(e,t){Li.LineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lastCursorLineSelect(e,t){Li.LastCursorLineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lastCursorLineSelectDrag(e,t){Li.LastCursorLineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_selectAll(){Li.SelectAll.runCoreEditorCommand(this.viewModel,{source:"mouse"})}_convertViewToModelPosition(e){return this.viewModel.coordinatesConverter.convertViewPositionToModelPosition(e)}emitKeyDown(e){this.userInputEvents.emitKeyDown(e)}emitKeyUp(e){this.userInputEvents.emitKeyUp(e)}emitContextMenu(e){this.userInputEvents.emitContextMenu(e)}emitMouseMove(e){this.userInputEvents.emitMouseMove(e)}emitMouseLeave(e){this.userInputEvents.emitMouseLeave(e)}emitMouseUp(e){this.userInputEvents.emitMouseUp(e)}emitMouseDown(e){this.userInputEvents.emitMouseDown(e)}emitMouseDrag(e){this.userInputEvents.emitMouseDrag(e)}emitMouseDrop(e){this.userInputEvents.emitMouseDrop(e)}emitMouseDropCanceled(){this.userInputEvents.emitMouseDropCanceled()}emitMouseWheel(e){this.userInputEvents.emitMouseWheel(e)}}class L8{constructor(e){this._lineFactory=e,this._set(1,[])}flush(){this._set(1,[])}_set(e,t){this._lines=t,this._rendLineNumberStart=e}_get(){return{rendLineNumberStart:this._rendLineNumberStart,lines:this._lines}}getStartLineNumber(){return this._rendLineNumberStart}getEndLineNumber(){return this._rendLineNumberStart+this._lines.length-1}getCount(){return this._lines.length}getLine(e){const t=e-this._rendLineNumberStart;if(t<0||t>=this._lines.length)throw new nt("Illegal value for lineNumber");return this._lines[t]}onLinesDeleted(e,t){if(this.getCount()===0)return null;const i=this.getStartLineNumber(),n=this.getEndLineNumber();if(tn)return null;let s=0,r=0;for(let l=i;l<=n;l++){const c=l-this._rendLineNumberStart;e<=l&&l<=t&&(r===0?(s=c,r=1):r++)}if(e=n&&a<=s&&(this._lines[a-this._rendLineNumberStart].onContentChanged(),r=!0);return r}onLinesInserted(e,t){if(this.getCount()===0)return null;const i=t-e+1,n=this.getStartLineNumber(),s=this.getEndLineNumber();if(e<=n)return this._rendLineNumberStart+=i,null;if(e>s)return null;if(i+e>s)return this._lines.splice(e-this._rendLineNumberStart,s-e+1);const r=[];for(let h=0;hi)continue;const l=Math.max(t,a.fromLineNumber),c=Math.min(i,a.toLineNumber);for(let d=l;d<=c;d++){const h=d-this._rendLineNumberStart;this._lines[h].onTokensChanged(),n=!0}}return n}}class x8{constructor(e){this._lineFactory=e,this.domNode=this._createDomNode(),this._linesCollection=new L8(this._lineFactory)}_createDomNode(){const e=ot(document.createElement("div"));return e.setClassName("view-layer"),e.setPosition("absolute"),e.domNode.setAttribute("role","presentation"),e.domNode.setAttribute("aria-hidden","true"),e}onConfigurationChanged(e){return!!e.hasChanged(146)}onFlushed(e){return this._linesCollection.flush(),!0}onLinesChanged(e){return this._linesCollection.onLinesChanged(e.fromLineNumber,e.count)}onLinesDeleted(e){const t=this._linesCollection.onLinesDeleted(e.fromLineNumber,e.toLineNumber);if(t)for(let i=0,n=t.length;it){const r=t,a=Math.min(i,s.rendLineNumberStart-1);r<=a&&(this._insertLinesBefore(s,r,a,n,t),s.linesLength+=a-r+1)}else if(s.rendLineNumberStart0&&(this._removeLinesBefore(s,r),s.linesLength-=r)}if(s.rendLineNumberStart=t,s.rendLineNumberStart+s.linesLength-1i){const r=Math.max(0,i-s.rendLineNumberStart+1),l=s.linesLength-1-r+1;l>0&&(this._removeLinesAfter(s,l),s.linesLength-=l)}return this._finishRendering(s,!1,n),s}_renderUntouchedLines(e,t,i,n,s){const r=e.rendLineNumberStart,a=e.lines;for(let l=t;l<=i;l++){const c=r+l;a[l].layoutLine(c,n[c-s],this._viewportData.lineHeight)}}_insertLinesBefore(e,t,i,n,s){const r=[];let a=0;for(let l=t;l<=i;l++)r[a++]=this._lineFactory.createLine();e.lines=r.concat(e.lines)}_removeLinesBefore(e,t){for(let i=0;i=0;a--){const l=e.lines[a];n[a]&&(l.setDomNode(r),r=r.previousSibling)}}_finishRenderingInvalidLines(e,t,i){const n=document.createElement("div");Za._ttPolicy&&(t=Za._ttPolicy.createHTML(t)),n.innerHTML=t;for(let s=0;se}),Za._sb=new K_(1e5);let II=Za;class k8 extends _s{constructor(e){super(e),this._dynamicOverlays=[],this._isFocused=!1,this._visibleLines=new x8({createLine:()=>new zne(this._dynamicOverlays)}),this.domNode=this._visibleLines.domNode;const i=this._context.configuration.options.get(50);qi(this.domNode,i),this.domNode.setClassName("view-overlays")}shouldRender(){if(super.shouldRender())return!0;for(let e=0,t=this._dynamicOverlays.length;ei.shouldRender());for(let i=0,n=t.length;i'),s.appendString(r),s.appendString(""),!0)}layoutLine(e,t,i){this._domNode&&(this._domNode.setTop(t),this._domNode.setHeight(i))}}class Une extends k8{constructor(e){super(e);const i=this._context.configuration.options.get(146);this._contentWidth=i.contentWidth,this.domNode.setHeight(0)}onConfigurationChanged(e){const i=this._context.configuration.options.get(146);return this._contentWidth=i.contentWidth,super.onConfigurationChanged(e)||!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollWidthChanged}_viewOverlaysRender(e){super._viewOverlaysRender(e),this.domNode.setWidth(Math.max(e.scrollWidth,this._contentWidth))}}class $ne extends k8{constructor(e){super(e);const t=this._context.configuration.options,i=t.get(146);this._contentLeft=i.contentLeft,this.domNode.setClassName("margin-view-overlays"),this.domNode.setWidth(1),qi(this.domNode,t.get(50))}onConfigurationChanged(e){const t=this._context.configuration.options;qi(this.domNode,t.get(50));const i=t.get(146);return this._contentLeft=i.contentLeft,super.onConfigurationChanged(e)||!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollHeightChanged}_viewOverlaysRender(e){super._viewOverlaysRender(e);const t=Math.min(e.scrollHeight,1e6);this.domNode.setHeight(t),this.domNode.setWidth(this._contentLeft)}}class Iy{constructor(e){this.onKeyDown=null,this.onKeyUp=null,this.onContextMenu=null,this.onMouseMove=null,this.onMouseLeave=null,this.onMouseDown=null,this.onMouseUp=null,this.onMouseDrag=null,this.onMouseDrop=null,this.onMouseDropCanceled=null,this.onMouseWheel=null,this._coordinatesConverter=e}emitKeyDown(e){this.onKeyDown?.(e)}emitKeyUp(e){this.onKeyUp?.(e)}emitContextMenu(e){this.onContextMenu?.(this._convertViewToModelMouseEvent(e))}emitMouseMove(e){this.onMouseMove?.(this._convertViewToModelMouseEvent(e))}emitMouseLeave(e){this.onMouseLeave?.(this._convertViewToModelMouseEvent(e))}emitMouseDown(e){this.onMouseDown?.(this._convertViewToModelMouseEvent(e))}emitMouseUp(e){this.onMouseUp?.(this._convertViewToModelMouseEvent(e))}emitMouseDrag(e){this.onMouseDrag?.(this._convertViewToModelMouseEvent(e))}emitMouseDrop(e){this.onMouseDrop?.(this._convertViewToModelMouseEvent(e))}emitMouseDropCanceled(){this.onMouseDropCanceled?.()}emitMouseWheel(e){this.onMouseWheel?.(e)}_convertViewToModelMouseEvent(e){return e.target?{event:e.event,target:this._convertViewToModelMouseTarget(e.target)}:e}_convertViewToModelMouseTarget(e){return Iy.convertViewToModelMouseTarget(e,this._coordinatesConverter)}static convertViewToModelMouseTarget(e,t){const i={...e};return i.position&&(i.position=t.convertViewPositionToModelPosition(i.position)),i.range&&(i.range=t.convertViewRangeToModelRange(i.range)),(i.type===5||i.type===8)&&(i.detail=this.convertViewToModelViewZoneData(i.detail,t)),i}static convertViewToModelViewZoneData(e,t){return{viewZoneId:e.viewZoneId,positionBefore:e.positionBefore?t.convertViewPositionToModelPosition(e.positionBefore):e.positionBefore,positionAfter:e.positionAfter?t.convertViewPositionToModelPosition(e.positionAfter):e.positionAfter,position:t.convertViewPositionToModelPosition(e.position),afterLineNumber:t.convertViewPositionToModelPosition(new P(e.afterLineNumber,1)).lineNumber}}}class Kne extends _s{constructor(e){super(e),this.blocks=[],this.contentWidth=-1,this.contentLeft=0,this.domNode=ot(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("blockDecorations-container"),this.update()}update(){let e=!1;const i=this._context.configuration.options.get(146),n=i.contentWidth-i.verticalScrollbarWidth;this.contentWidth!==n&&(this.contentWidth=n,e=!0);const s=i.contentLeft;return this.contentLeft!==s&&(this.contentLeft=s,e=!0),e}dispose(){super.dispose()}onConfigurationChanged(e){return this.update()}onScrollChanged(e){return e.scrollTopChanged||e.scrollLeftChanged}onDecorationsChanged(e){return!0}onZonesChanged(e){return!0}prepareRender(e){}render(e){let t=0;const i=e.getDecorationsInViewport();for(const n of i){if(!n.options.blockClassName)continue;let s=this.blocks[t];s||(s=this.blocks[t]=ot(document.createElement("div")),this.domNode.appendChild(s));let r,a;n.options.blockIsAfterEnd?(r=e.getVerticalOffsetAfterLineNumber(n.range.endLineNumber,!1),a=e.getVerticalOffsetAfterLineNumber(n.range.endLineNumber,!0)):(r=e.getVerticalOffsetForLineNumber(n.range.startLineNumber,!0),a=n.range.isEmpty()&&!n.options.blockDoesNotCollapse?e.getVerticalOffsetForLineNumber(n.range.startLineNumber,!1):e.getVerticalOffsetAfterLineNumber(n.range.endLineNumber,!0));const[l,c,d,h]=n.options.blockPadding??[0,0,0,0];s.setClassName("blockDecorations-block "+n.options.blockClassName),s.setLeft(this.contentLeft-h),s.setWidth(this.contentWidth+h+c),s.setTop(r-e.scrollTop-l),s.setHeight(a-r+l+d),t++}for(let n=t;n0?this.domNode.setDisplay("block"):this.domNode.setDisplay("none"),this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1}_layoutBoxInViewport(e,t,i,n){const s=e.top,r=s,a=e.top+e.height,l=n.viewportHeight-a,c=s-i,d=r>=i,h=a,u=l>=i;let f=e.left;return f+t>n.scrollLeft+n.viewportWidth&&(f=n.scrollLeft+n.viewportWidth-t),fl){const u=h-(l-n);h-=u,i-=u}if(h=p,C=h+i<=u.height-_;return this._fixedOverflowWidgets?{fitsAbove:b,aboveTop:Math.max(d,p),fitsBelow:C,belowTop:h,left:g}:{fitsAbove:b,aboveTop:s,fitsBelow:C,belowTop:r,left:f}}_prepareRenderWidgetAtExactPositionOverflowing(e){return new ym(e.top,e.left+this._contentLeft)}_getAnchorsCoordinates(e){const t=s(this._primaryAnchor.viewPosition,this._affinity,this._lineHeight),i=this._secondaryAnchor.viewPosition?.lineNumber===this._primaryAnchor.viewPosition?.lineNumber?this._secondaryAnchor.viewPosition:null,n=s(i,this._affinity,this._lineHeight);return{primary:t,secondary:n};function s(r,a,l){if(!r)return null;const c=e.visibleRangeForPosition(r);if(!c)return null;const d=r.column===1&&a===3?0:c.left,h=e.getVerticalOffsetForLineNumber(r.lineNumber)-e.scrollTop;return new AO(h,d,l)}}_reduceAnchorCoordinates(e,t,i){if(!t)return e;const n=this._context.configuration.options.get(50);let s=t.left;return se.endLineNumber||this.domNode.setMaxWidth(this._maxWidth)}prepareRender(e){this._renderData=this._prepareRenderWidget(e)}render(e){if(!this._renderData||this._renderData.kind==="offViewport"){this._isVisible&&(this.domNode.removeAttribute("monaco-visible-content-widget"),this._isVisible=!1,this._renderData?.kind==="offViewport"&&this._renderData.preserveFocus?this.domNode.setTop(-1e3):this.domNode.setVisibility("hidden")),typeof this._actual.afterRender=="function"&&nL(this._actual.afterRender,this._actual,null);return}this.allowEditorOverflow?(this.domNode.setTop(this._renderData.coordinate.top),this.domNode.setLeft(this._renderData.coordinate.left)):(this.domNode.setTop(this._renderData.coordinate.top+e.scrollTop-e.bigNumbersDelta),this.domNode.setLeft(this._renderData.coordinate.left)),this._isVisible||(this.domNode.setVisibility("inherit"),this.domNode.setAttribute("monaco-visible-content-widget","true"),this._isVisible=!0),typeof this._actual.afterRender=="function"&&nL(this._actual.afterRender,this._actual,this._renderData.position)}}class wm{constructor(e,t){this.modelPosition=e,this.viewPosition=t}}class ym{constructor(e,t){this.top=e,this.left=t,this._coordinateBrand=void 0}}class AO{constructor(e,t,i){this.top=e,this.left=t,this.height=i,this._anchorCoordinateBrand=void 0}}function nL(o,e,...t){try{return o.call(e,...t)}catch{return null}}class D8 extends mu{constructor(e){super(),this._context=e;const t=this._context.configuration.options,i=t.get(146);this._renderLineHighlight=t.get(97),this._renderLineHighlightOnlyWhenFocus=t.get(98),this._wordWrap=i.isViewportWrapping,this._contentLeft=i.contentLeft,this._contentWidth=i.contentWidth,this._selectionIsEmpty=!0,this._focused=!1,this._cursorLineNumbers=[1],this._selections=[new Fe(1,1,1,1)],this._renderData=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}_readFromSelections(){let e=!1;const t=new Set;for(const s of this._selections)t.add(s.positionLineNumber);const i=Array.from(t);i.sort((s,r)=>s-r),li(this._cursorLineNumbers,i)||(this._cursorLineNumbers=i,e=!0);const n=this._selections.every(s=>s.isEmpty());return this._selectionIsEmpty!==n&&(this._selectionIsEmpty=n,e=!0),e}onThemeChanged(e){return this._readFromSelections()}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(146);return this._renderLineHighlight=t.get(97),this._renderLineHighlightOnlyWhenFocus=t.get(98),this._wordWrap=i.isViewportWrapping,this._contentLeft=i.contentLeft,this._contentWidth=i.contentWidth,!0}onCursorStateChanged(e){return this._selections=e.selections,this._readFromSelections()}onFlushed(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollWidthChanged||e.scrollTopChanged}onZonesChanged(e){return!0}onFocusChanged(e){return this._renderLineHighlightOnlyWhenFocus?(this._focused=e.isFocused,!0):!1}prepareRender(e){if(!this._shouldRenderThis()){this._renderData=null;return}const t=e.visibleRange.startLineNumber,i=e.visibleRange.endLineNumber,n=[];for(let r=t;r<=i;r++){const a=r-t;n[a]=""}if(this._wordWrap){const r=this._renderOne(e,!1);for(const a of this._cursorLineNumbers){const l=this._context.viewModel.coordinatesConverter,c=l.convertViewPositionToModelPosition(new P(a,1)).lineNumber,d=l.convertModelPositionToViewPosition(new P(c,1)).lineNumber,h=l.convertModelPositionToViewPosition(new P(c,this._context.viewModel.model.getLineMaxColumn(c))).lineNumber,u=Math.max(d,t),f=Math.min(h,i);for(let g=u;g<=f;g++){const p=g-t;n[p]=r}}}const s=this._renderOne(e,!0);for(const r of this._cursorLineNumbers){if(ri)continue;const a=r-t;n[a]=s}this._renderData=n}render(e,t){if(!this._renderData)return"";const i=t-e;return i>=this._renderData.length?"":this._renderData[i]}_shouldRenderInMargin(){return(this._renderLineHighlight==="gutter"||this._renderLineHighlight==="all")&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}_shouldRenderInContent(){return(this._renderLineHighlight==="line"||this._renderLineHighlight==="all")&&this._selectionIsEmpty&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}}class Gne extends D8{_renderOne(e,t){return`
    `}_shouldRenderThis(){return this._shouldRenderInContent()}_shouldRenderOther(){return this._shouldRenderInMargin()}}class Zne extends D8{_renderOne(e,t){return`
    `}_shouldRenderThis(){return!0}_shouldRenderOther(){return this._shouldRenderInContent()}}Sr((o,e)=>{const t=o.getColor(z7);if(t&&(e.addRule(`.monaco-editor .view-overlays .current-line { background-color: ${t}; }`),e.addRule(`.monaco-editor .margin-view-overlays .current-line-margin { background-color: ${t}; border: none; }`)),!t||t.isTransparent()||o.defines(vP)){const i=o.getColor(vP);i&&(e.addRule(`.monaco-editor .view-overlays .current-line-exact { border: 2px solid ${i}; }`),e.addRule(`.monaco-editor .margin-view-overlays .current-line-exact-margin { border: 2px solid ${i}; }`),mc(o.type)&&(e.addRule(".monaco-editor .view-overlays .current-line-exact { border-width: 1px; }"),e.addRule(".monaco-editor .margin-view-overlays .current-line-exact-margin { border-width: 1px; }")))}});class Yne extends mu{constructor(e){super(),this._context=e;const t=this._context.configuration.options;this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged||e.scrollWidthChanged}onZonesChanged(e){return!0}prepareRender(e){const t=e.getDecorationsInViewport();let i=[],n=0;for(let l=0,c=t.length;l{if(l.options.zIndexc.options.zIndex)return 1;const d=l.options.className,h=c.options.className;return dh?1:I.compareRangesUsingStarts(l.range,c.range)});const s=e.visibleRange.startLineNumber,r=e.visibleRange.endLineNumber,a=[];for(let l=s;l<=r;l++){const c=l-s;a[c]=""}this._renderWholeLineDecorations(e,i,a),this._renderNormalDecorations(e,i,a),this._renderResult=a}_renderWholeLineDecorations(e,t,i){const n=e.visibleRange.startLineNumber,s=e.visibleRange.endLineNumber;for(let r=0,a=t.length;r',d=Math.max(l.range.startLineNumber,n),h=Math.min(l.range.endLineNumber,s);for(let u=d;u<=h;u++){const f=u-n;i[f]+=c}}}_renderNormalDecorations(e,t,i){const n=e.visibleRange.startLineNumber;let s=null,r=!1,a=null,l=!1;for(let c=0,d=t.length;c';a[u]+=b}}}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}class Qne extends _s{constructor(e,t,i,n){super(e);const s=this._context.configuration.options,r=s.get(104),a=s.get(75),l=s.get(40),c=s.get(107),d={listenOnDomNode:i.domNode,className:"editor-scrollable "+gk(e.theme.type),useShadows:!1,lazyRender:!0,vertical:r.vertical,horizontal:r.horizontal,verticalHasArrows:r.verticalHasArrows,horizontalHasArrows:r.horizontalHasArrows,verticalScrollbarSize:r.verticalScrollbarSize,verticalSliderSize:r.verticalSliderSize,horizontalScrollbarSize:r.horizontalScrollbarSize,horizontalSliderSize:r.horizontalSliderSize,handleMouseWheel:r.handleMouseWheel,alwaysConsumeMouseWheel:r.alwaysConsumeMouseWheel,arrowSize:r.arrowSize,mouseWheelScrollSensitivity:a,fastScrollSensitivity:l,scrollPredominantAxis:c,scrollByPage:r.scrollByPage};this.scrollbar=this._register(new X0(t.domNode,d,this._context.viewLayout.getScrollable())),vr.write(this.scrollbar.getDomNode(),6),this.scrollbarDomNode=ot(this.scrollbar.getDomNode()),this.scrollbarDomNode.setPosition("absolute"),this._setLayout();const h=(u,f,g)=>{const p={};{const _=u.scrollTop;_&&(p.scrollTop=this._context.viewLayout.getCurrentScrollTop()+_,u.scrollTop=0)}if(g){const _=u.scrollLeft;_&&(p.scrollLeft=this._context.viewLayout.getCurrentScrollLeft()+_,u.scrollLeft=0)}this._context.viewModel.viewLayout.setScrollPosition(p,1)};this._register(U(i.domNode,"scroll",u=>h(i.domNode,!0,!0))),this._register(U(t.domNode,"scroll",u=>h(t.domNode,!0,!1))),this._register(U(n.domNode,"scroll",u=>h(n.domNode,!0,!1))),this._register(U(this.scrollbarDomNode.domNode,"scroll",u=>h(this.scrollbarDomNode.domNode,!0,!1)))}dispose(){super.dispose()}_setLayout(){const e=this._context.configuration.options,t=e.get(146);this.scrollbarDomNode.setLeft(t.contentLeft),e.get(73).side==="right"?this.scrollbarDomNode.setWidth(t.contentWidth+t.minimap.minimapWidth):this.scrollbarDomNode.setWidth(t.contentWidth),this.scrollbarDomNode.setHeight(t.height)}getOverviewRulerLayoutInfo(){return this.scrollbar.getOverviewRulerLayoutInfo()}getDomNode(){return this.scrollbarDomNode}delegateVerticalScrollbarPointerDown(e){this.scrollbar.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){this.scrollbar.delegateScrollFromMouseWheelEvent(e)}onConfigurationChanged(e){if(e.hasChanged(104)||e.hasChanged(75)||e.hasChanged(40)){const t=this._context.configuration.options,i=t.get(104),n=t.get(75),s=t.get(40),r=t.get(107),a={vertical:i.vertical,horizontal:i.horizontal,verticalScrollbarSize:i.verticalScrollbarSize,horizontalScrollbarSize:i.horizontalScrollbarSize,scrollByPage:i.scrollByPage,handleMouseWheel:i.handleMouseWheel,mouseWheelScrollSensitivity:n,fastScrollSensitivity:s,scrollPredominantAxis:r};this.scrollbar.updateOptions(a)}return e.hasChanged(146)&&this._setLayout(),!0}onScrollChanged(e){return!0}onThemeChanged(e){return this.scrollbar.updateClassName("editor-scrollable "+gk(this._context.theme.type)),!0}prepareRender(e){}render(e){this.scrollbar.renderNow()}}class EI{constructor(e,t,i,n,s){this.startLineNumber=e,this.endLineNumber=t,this.className=i,this.tooltip=n,this._decorationToRenderBrand=void 0,this.zIndex=s??0}}class Xne{constructor(e,t,i){this.className=e,this.zIndex=t,this.tooltip=i}}class Jne{constructor(){this.decorations=[]}add(e){this.decorations.push(e)}getDecorations(){return this.decorations}}class I8 extends mu{_render(e,t,i){const n=[];for(let a=e;a<=t;a++){const l=a-e;n[l]=new Jne}if(i.length===0)return n;i.sort((a,l)=>a.className===l.className?a.startLineNumber===l.startLineNumber?a.endLineNumber-l.endLineNumber:a.startLineNumber-l.startLineNumber:a.classNamen)continue;const c=Math.max(a,i),d=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new P(c,0)),h=this._context.viewModel.glyphLanes.getLanesAtLine(d.lineNumber).indexOf(s.preference.lane);t.push(new ise(c,h,s.preference.zIndex,s))}}_collectSortedGlyphRenderRequests(e){const t=[];return this._collectDecorationBasedGlyphRenderRequest(e,t),this._collectWidgetBasedGlyphRenderRequest(e,t),t.sort((i,n)=>i.lineNumber===n.lineNumber?i.laneIndex===n.laneIndex?i.zIndex===n.zIndex?n.type===i.type?i.type===0&&n.type===0?i.className0;){const n=t.peek();if(!n)break;const s=t.takeWhile(a=>a.lineNumber===n.lineNumber&&a.laneIndex===n.laneIndex);if(!s||s.length===0)break;const r=s[0];if(r.type===0){const a=[];for(const l of s){if(l.zIndex!==r.zIndex||l.type!==r.type)break;(a.length===0||a[a.length-1]!==l.className)&&a.push(l.className)}i.push(r.accept(a.join(" ")))}else r.widget.renderInfo={lineNumber:r.lineNumber,laneIndex:r.laneIndex}}this._decorationGlyphsToRender=i}render(e){if(!this._glyphMargin){for(const i of Object.values(this._widgets))i.domNode.setDisplay("none");for(;this._managedDomNodes.length>0;)this._managedDomNodes.pop()?.domNode.remove();return}const t=Math.round(this._glyphMarginWidth/this._glyphMarginDecorationLaneCount);for(const i of Object.values(this._widgets))if(!i.renderInfo)i.domNode.setDisplay("none");else{const n=e.viewportData.relativeVerticalOffset[i.renderInfo.lineNumber-e.viewportData.startLineNumber],s=this._glyphMarginLeft+i.renderInfo.laneIndex*this._lineHeight;i.domNode.setDisplay("block"),i.domNode.setTop(n),i.domNode.setLeft(s),i.domNode.setWidth(t),i.domNode.setHeight(this._lineHeight)}for(let i=0;ithis._decorationGlyphsToRender.length;)this._managedDomNodes.pop()?.domNode.remove()}}class tse{constructor(e,t,i,n){this.lineNumber=e,this.laneIndex=t,this.zIndex=i,this.className=n,this.type=0}accept(e){return new nse(this.lineNumber,this.laneIndex,e)}}class ise{constructor(e,t,i,n){this.lineNumber=e,this.laneIndex=t,this.zIndex=i,this.widget=n,this.type=1}}class nse{constructor(e,t,i){this.lineNumber=e,this.laneIndex=t,this.combinedClassName=i}}class sse extends mu{constructor(e){super(),this._context=e,this._primaryPosition=null;const t=this._context.configuration.options,i=t.get(147),n=t.get(50);this._spaceWidth=n.spaceWidth,this._maxIndentLeft=i.wrappingColumn===-1?-1:i.wrappingColumn*n.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=t.get(16),this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(147),n=t.get(50);return this._spaceWidth=n.spaceWidth,this._maxIndentLeft=i.wrappingColumn===-1?-1:i.wrappingColumn*n.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=t.get(16),!0}onCursorStateChanged(e){const i=e.selections[0].getPosition();return this._primaryPosition?.equals(i)?!1:(this._primaryPosition=i,!0)}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}onLanguageConfigurationChanged(e){return!0}prepareRender(e){if(!this._bracketPairGuideOptions.indentation&&this._bracketPairGuideOptions.bracketPairs===!1){this._renderResult=null;return}const t=e.visibleRange.startLineNumber,i=e.visibleRange.endLineNumber,n=e.scrollWidth,s=this._primaryPosition,r=this.getGuidesByLine(t,Math.min(i+1,this._context.viewModel.getLineCount()),s),a=[];for(let l=t;l<=i;l++){const c=l-t,d=r[c];let h="";const u=e.visibleRangeForPosition(new P(l,1))?.left??0;for(const f of d){const g=f.column===-1?u+(f.visibleColumn-1)*this._spaceWidth:e.visibleRangeForPosition(new P(l,f.column)).left;if(g>n||this._maxIndentLeft>0&&g>this._maxIndentLeft)break;const p=f.horizontalLine?f.horizontalLine.top?"horizontal-top":"horizontal-bottom":"vertical",_=f.horizontalLine?(e.visibleRangeForPosition(new P(l,f.horizontalLine.endColumn))?.left??g+this._spaceWidth)-g:this._spaceWidth;h+=`
    `}a[c]=h}this._renderResult=a}getGuidesByLine(e,t,i){const n=this._bracketPairGuideOptions.bracketPairs!==!1?this._context.viewModel.getBracketGuidesInRangeByLine(e,t,i,{highlightActive:this._bracketPairGuideOptions.highlightActiveBracketPair,horizontalGuides:this._bracketPairGuideOptions.bracketPairsHorizontal===!0?eh.Enabled:this._bracketPairGuideOptions.bracketPairsHorizontal==="active"?eh.EnabledForActive:eh.Disabled,includeInactive:this._bracketPairGuideOptions.bracketPairs===!0}):null,s=this._bracketPairGuideOptions.indentation?this._context.viewModel.getLinesIndentGuides(e,t):null;let r=0,a=0,l=0;if(this._bracketPairGuideOptions.highlightActiveIndentation!==!1&&i){const h=this._context.viewModel.getActiveIndentGuide(i.lineNumber,e,t);r=h.startLineNumber,a=h.endLineNumber,l=h.indent}const{indentSize:c}=this._context.viewModel.model.getOptions(),d=[];for(let h=e;h<=t;h++){const u=new Array;d.push(u);const f=n?n[h-e]:[],g=new Ll(f),p=s?s[h-e]:0;for(let _=1;_<=p;_++){const b=(_-1)*c+1,C=(this._bracketPairGuideOptions.highlightActiveIndentation==="always"||f.length===0)&&r<=h&&h<=a&&_===l;u.push(...g.takeWhile(v=>v.visibleColumn!0)||[])}return d}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}function Pu(o){if(!(o&&o.isTransparent()))return o}Sr((o,e)=>{const t=[{bracketColor:K7,guideColor:pQ,guideColorActive:yQ},{bracketColor:j7,guideColor:_Q,guideColorActive:SQ},{bracketColor:q7,guideColor:bQ,guideColorActive:LQ},{bracketColor:G7,guideColor:CQ,guideColorActive:xQ},{bracketColor:Z7,guideColor:vQ,guideColorActive:kQ},{bracketColor:Y7,guideColor:wQ,guideColorActive:DQ}],i=new c9,n=[{indentColor:tb,indentColorActive:ib},{indentColor:YY,indentColorActive:tQ},{indentColor:QY,indentColorActive:iQ},{indentColor:XY,indentColorActive:nQ},{indentColor:JY,indentColorActive:sQ},{indentColor:eQ,indentColorActive:oQ}],s=t.map(a=>{const l=o.getColor(a.bracketColor),c=o.getColor(a.guideColor),d=o.getColor(a.guideColorActive),h=Pu(Pu(c)??l?.transparent(.3)),u=Pu(Pu(d)??l);if(!(!h||!u))return{guideColor:h,guideColorActive:u}}).filter(_l),r=n.map(a=>{const l=o.getColor(a.indentColor),c=o.getColor(a.indentColorActive),d=Pu(l),h=Pu(c);if(!(!d||!h))return{indentColor:d,indentColorActive:h}}).filter(_l);if(s.length>0){for(let a=0;a<30;a++){const l=s[a%s.length];e.addRule(`.monaco-editor .${i.getInlineClassNameOfLevel(a).replace(/ /g,".")} { --guide-color: ${l.guideColor}; --guide-color-active: ${l.guideColorActive}; }`)}e.addRule(".monaco-editor .vertical { box-shadow: 1px 0 0 0 var(--guide-color) inset; }"),e.addRule(".monaco-editor .horizontal-top { border-top: 1px solid var(--guide-color); }"),e.addRule(".monaco-editor .horizontal-bottom { border-bottom: 1px solid var(--guide-color); }"),e.addRule(`.monaco-editor .vertical.${i.activeClassName} { box-shadow: 1px 0 0 0 var(--guide-color-active) inset; }`),e.addRule(`.monaco-editor .horizontal-top.${i.activeClassName} { border-top: 1px solid var(--guide-color-active); }`),e.addRule(`.monaco-editor .horizontal-bottom.${i.activeClassName} { border-bottom: 1px solid var(--guide-color-active); }`)}if(r.length>0){for(let a=0;a<30;a++){const l=r[a%r.length];e.addRule(`.monaco-editor .lines-content .core-guide-indent.lvl-${a} { --indent-color: ${l.indentColor}; --indent-color-active: ${l.indentColorActive}; }`)}e.addRule(".monaco-editor .lines-content .core-guide-indent { box-shadow: 1px 0 0 0 var(--indent-color) inset; }"),e.addRule(".monaco-editor .lines-content .core-guide-indent.indent-active { box-shadow: 1px 0 0 0 var(--indent-color-active) inset; }")}});class sL{get didDomLayout(){return this._didDomLayout}readClientRect(){if(!this._clientRectRead){this._clientRectRead=!0;const e=this._domNode.getBoundingClientRect();this.markDidDomLayout(),this._clientRectDeltaLeft=e.left,this._clientRectScale=e.width/this._domNode.offsetWidth}}get clientRectDeltaLeft(){return this._clientRectRead||this.readClientRect(),this._clientRectDeltaLeft}get clientRectScale(){return this._clientRectRead||this.readClientRect(),this._clientRectScale}constructor(e,t){this._domNode=e,this.endNode=t,this._didDomLayout=!1,this._clientRectDeltaLeft=0,this._clientRectScale=1,this._clientRectRead=!1}markDidDomLayout(){this._didDomLayout=!0}}class ose{constructor(){this._currentVisibleRange=new I(1,1,1,1)}getCurrentVisibleRange(){return this._currentVisibleRange}setCurrentVisibleRange(e){this._currentVisibleRange=e}}class rse{constructor(e,t,i,n,s,r,a){this.minimalReveal=e,this.lineNumber=t,this.startColumn=i,this.endColumn=n,this.startScrollTop=s,this.stopScrollTop=r,this.scrollType=a,this.type="range",this.minLineNumber=t,this.maxLineNumber=t}}class ase{constructor(e,t,i,n,s){this.minimalReveal=e,this.selections=t,this.startScrollTop=i,this.stopScrollTop=n,this.scrollType=s,this.type="selections";let r=t[0].startLineNumber,a=t[0].endLineNumber;for(let l=1,c=t.length;lnew sl(this._viewLineOptions)}),this.domNode=this._visibleLines.domNode,vr.write(this.domNode,8),this.domNode.setClassName(`view-lines ${Zf}`),qi(this.domNode,s),this._maxLineWidth=0,this._asyncUpdateLineWidths=new ci(()=>{this._updateLineWidthsSlow()},200),this._asyncCheckMonospaceFontAssumptions=new ci(()=>{this._checkMonospaceFontAssumptions()},2e3),this._lastRenderedData=new ose,this._horizontalRevealRequest=null,this._stickyScrollEnabled=n.get(116).enabled,this._maxNumberStickyLines=n.get(116).maxLineCount}dispose(){this._asyncUpdateLineWidths.dispose(),this._asyncCheckMonospaceFontAssumptions.dispose(),super.dispose()}getDomNode(){return this.domNode}onConfigurationChanged(e){this._visibleLines.onConfigurationChanged(e),e.hasChanged(147)&&(this._maxLineWidth=0);const t=this._context.configuration.options,i=t.get(50),n=t.get(147);return this._lineHeight=t.get(67),this._typicalHalfwidthCharacterWidth=i.typicalHalfwidthCharacterWidth,this._isViewportWrapping=n.isViewportWrapping,this._revealHorizontalRightPadding=t.get(101),this._cursorSurroundingLines=t.get(29),this._cursorSurroundingLinesStyle=t.get(30),this._canUseLayerHinting=!t.get(32),this._stickyScrollEnabled=t.get(116).enabled,this._maxNumberStickyLines=t.get(116).maxLineCount,qi(this.domNode,i),this._onOptionsMaybeChanged(),e.hasChanged(146)&&(this._maxLineWidth=0),!0}_onOptionsMaybeChanged(){const e=this._context.configuration,t=new xO(e,this._context.theme.type);if(!this._viewLineOptions.equals(t)){this._viewLineOptions=t;const i=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();for(let s=i;s<=n;s++)this._visibleLines.getVisibleLine(s).onOptionsChanged(this._viewLineOptions);return!0}return!1}onCursorStateChanged(e){const t=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber();let n=!1;for(let s=t;s<=i;s++)n=this._visibleLines.getVisibleLine(s).onSelectionChanged()||n;return n}onDecorationsChanged(e){{const t=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber();for(let n=t;n<=i;n++)this._visibleLines.getVisibleLine(n).onDecorationsChanged()}return!0}onFlushed(e){const t=this._visibleLines.onFlushed(e);return this._maxLineWidth=0,t}onLinesChanged(e){return this._visibleLines.onLinesChanged(e)}onLinesDeleted(e){return this._visibleLines.onLinesDeleted(e)}onLinesInserted(e){return this._visibleLines.onLinesInserted(e)}onRevealRangeRequest(e){const t=this._computeScrollTopToRevealRange(this._context.viewLayout.getFutureViewport(),e.source,e.minimalReveal,e.range,e.selections,e.verticalType);if(t===-1)return!1;let i=this._context.viewLayout.validateScrollPosition({scrollTop:t});e.revealHorizontal?e.range&&e.range.startLineNumber!==e.range.endLineNumber?i={scrollTop:i.scrollTop,scrollLeft:0}:e.range?this._horizontalRevealRequest=new rse(e.minimalReveal,e.range.startLineNumber,e.range.startColumn,e.range.endColumn,this._context.viewLayout.getCurrentScrollTop(),i.scrollTop,e.scrollType):e.selections&&e.selections.length>0&&(this._horizontalRevealRequest=new ase(e.minimalReveal,e.selections,this._context.viewLayout.getCurrentScrollTop(),i.scrollTop,e.scrollType)):this._horizontalRevealRequest=null;const s=Math.abs(this._context.viewLayout.getCurrentScrollTop()-i.scrollTop)<=this._lineHeight?1:e.scrollType;return this._context.viewModel.viewLayout.setScrollPosition(i,s),!0}onScrollChanged(e){if(this._horizontalRevealRequest&&e.scrollLeftChanged&&(this._horizontalRevealRequest=null),this._horizontalRevealRequest&&e.scrollTopChanged){const t=Math.min(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop),i=Math.max(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop);(e.scrollTopi)&&(this._horizontalRevealRequest=null)}return this.domNode.setWidth(e.scrollWidth),this._visibleLines.onScrollChanged(e)||!0}onTokensChanged(e){return this._visibleLines.onTokensChanged(e)}onZonesChanged(e){return this._context.viewModel.viewLayout.setMaxLineWidth(this._maxLineWidth),this._visibleLines.onZonesChanged(e)}onThemeChanged(e){return this._onOptionsMaybeChanged()}getPositionFromDOMInfo(e,t){const i=this._getViewLineDomNode(e);if(i===null)return null;const n=this._getLineNumberFor(i);if(n===-1||n<1||n>this._context.viewModel.getLineCount())return null;if(this._context.viewModel.getLineMaxColumn(n)===1)return new P(n,1);const s=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();if(nr)return null;let a=this._visibleLines.getVisibleLine(n).getColumnOfNodeOffset(e,t);const l=this._context.viewModel.getLineMinColumn(n);return ai)return-1;const n=new sL(this.domNode.domNode,this._textRangeRestingSpot),s=this._visibleLines.getVisibleLine(e).getWidth(n);return this._updateLineWidthsSlowIfDomDidLayout(n),s}linesVisibleRangesForRange(e,t){if(this.shouldRender())return null;const i=e.endLineNumber,n=I.intersectRanges(e,this._lastRenderedData.getCurrentVisibleRange());if(!n)return null;const s=[];let r=0;const a=new sL(this.domNode.domNode,this._textRangeRestingSpot);let l=0;t&&(l=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new P(n.startLineNumber,1)).lineNumber);const c=this._visibleLines.getStartLineNumber(),d=this._visibleLines.getEndLineNumber();for(let h=n.startLineNumber;h<=n.endLineNumber;h++){if(hd)continue;const u=h===n.startLineNumber?n.startColumn:1,f=h!==n.endLineNumber,g=f?this._context.viewModel.getLineMaxColumn(h):n.endColumn,p=this._visibleLines.getVisibleLine(h).getVisibleRangesForRange(h,u,g,a);if(p){if(t&&hthis._visibleLines.getEndLineNumber())return null;const n=new sL(this.domNode.domNode,this._textRangeRestingSpot),s=this._visibleLines.getVisibleLine(e).getVisibleRangesForRange(e,t,i,n);return this._updateLineWidthsSlowIfDomDidLayout(n),s}visibleRangeForPosition(e){const t=this._visibleRangesForLineRange(e.lineNumber,e.column,e.column);return t?new Kie(t.outsideRenderedLine,t.ranges[0].left):null}_updateLineWidthsFast(){return this._updateLineWidths(!0)}_updateLineWidthsSlow(){this._updateLineWidths(!1)}_updateLineWidthsSlowIfDomDidLayout(e){e.didDomLayout&&(this._asyncUpdateLineWidths.isScheduled()||(this._asyncUpdateLineWidths.cancel(),this._updateLineWidthsSlow()))}_updateLineWidths(e){const t=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber();let n=1,s=!0;for(let r=t;r<=i;r++){const a=this._visibleLines.getVisibleLine(r);if(e&&!a.getWidthIsFast()){s=!1;continue}n=Math.max(n,a.getWidth(null))}return s&&t===1&&i===this._context.viewModel.getLineCount()&&(this._maxLineWidth=0),this._ensureMaxLineWidth(n),s}_checkMonospaceFontAssumptions(){let e=-1,t=-1;const i=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();for(let s=i;s<=n;s++){const r=this._visibleLines.getVisibleLine(s);if(r.needsMonospaceFontCheck()){const a=r.getWidth(null);a>t&&(t=a,e=s)}}if(e!==-1&&!this._visibleLines.getVisibleLine(e).monospaceAssumptionsAreValid())for(let s=i;s<=n;s++)this._visibleLines.getVisibleLine(s).onMonospaceAssumptionsInvalidated()}prepareRender(){throw new Error("Not supported")}render(){throw new Error("Not supported")}renderText(e){if(this._visibleLines.renderLines(e),this._lastRenderedData.setCurrentVisibleRange(e.visibleRange),this.domNode.setWidth(this._context.viewLayout.getScrollWidth()),this.domNode.setHeight(Math.min(this._context.viewLayout.getScrollHeight(),1e6)),this._horizontalRevealRequest){const i=this._horizontalRevealRequest;if(e.startLineNumber<=i.minLineNumber&&i.maxLineNumber<=e.endLineNumber){this._horizontalRevealRequest=null,this.onDidRender();const n=this._computeScrollLeftToReveal(i);n&&(this._isViewportWrapping||this._ensureMaxLineWidth(n.maxHorizontalOffset),this._context.viewModel.viewLayout.setScrollPosition({scrollLeft:n.scrollLeft},i.scrollType))}}if(this._updateLineWidthsFast()?this._asyncUpdateLineWidths.cancel():this._asyncUpdateLineWidths.schedule(),Un&&!this._asyncCheckMonospaceFontAssumptions.isScheduled()){const i=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();for(let s=i;s<=n;s++)if(this._visibleLines.getVisibleLine(s).needsMonospaceFontCheck()){this._asyncCheckMonospaceFontAssumptions.schedule();break}}this._linesContent.setLayerHinting(this._canUseLayerHinting),this._linesContent.setContain("strict");const t=this._context.viewLayout.getCurrentScrollTop()-e.bigNumbersDelta;this._linesContent.setTop(-t),this._linesContent.setLeft(-this._context.viewLayout.getCurrentScrollLeft())}_ensureMaxLineWidth(e){const t=Math.ceil(e);this._maxLineWidth0){let b=s[0].startLineNumber,C=s[0].endLineNumber;for(let w=1,v=s.length;wl){if(!d)return-1;_=h}else if(r===5||r===6)if(r===6&&a<=h&&u<=c)_=a;else{const b=Math.max(5*this._lineHeight,l*.2),C=h-b,w=u-l;_=Math.max(w,C)}else if(r===1||r===2)if(r===2&&a<=h&&u<=c)_=a;else{const b=(h+u)/2;_=Math.max(0,b-l/2)}else _=this._computeMinimumScrolling(a,c,h,u,r===3,r===4);return _}_computeScrollLeftToReveal(e){const t=this._context.viewLayout.getCurrentViewport(),i=this._context.configuration.options.get(146),n=t.left,s=n+t.width-i.verticalScrollbarWidth;let r=1073741824,a=0;if(e.type==="range"){const c=this._visibleRangesForLineRange(e.lineNumber,e.startColumn,e.endColumn);if(!c)return null;for(const d of c.ranges)r=Math.min(r,Math.round(d.left)),a=Math.max(a,Math.round(d.left+d.width))}else for(const c of e.selections){if(c.startLineNumber!==c.endLineNumber)return null;const d=this._visibleRangesForLineRange(c.startLineNumber,c.startColumn,c.endColumn);if(!d)return null;for(const h of d.ranges)r=Math.min(r,Math.round(h.left)),a=Math.max(a,Math.round(h.left+h.width))}return e.minimalReveal||(r=Math.max(0,r-t0.HORIZONTAL_EXTRA_PX),a+=this._revealHorizontalRightPadding),e.type==="selections"&&a-r>t.width?null:{scrollLeft:this._computeMinimumScrolling(n,s,r,a),maxHorizontalOffset:a}}_computeMinimumScrolling(e,t,i,n,s,r){e=e|0,t=t|0,i=i|0,n=n|0,s=!!s,r=!!r;const a=t-e;if(n-it)return Math.max(0,n-a)}else return i;return e}};t0.HORIZONTAL_EXTRA_PX=30;let NI=t0;class lse extends I8{constructor(e){super(),this._context=e;const i=this._context.configuration.options.get(146);this._decorationsLeft=i.decorationsLeft,this._decorationsWidth=i.decorationsWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const i=this._context.configuration.options.get(146);return this._decorationsLeft=i.decorationsLeft,this._decorationsWidth=i.decorationsWidth,!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}_getDecorations(e){const t=e.getDecorationsInViewport(),i=[];let n=0;for(let s=0,r=t.length;s',l=[];for(let c=t;c<=i;c++){const d=c-t,h=n[d].getDecorations();let u="";for(const f of h){let g='
    ';s[a]=c}this._renderResult=s}render(e,t){return this._renderResult?this._renderResult[t-e]:""}}const Yl=class Yl{constructor(e,t,i,n){this._rgba8Brand=void 0,this.r=Yl._clamp(e),this.g=Yl._clamp(t),this.b=Yl._clamp(i),this.a=Yl._clamp(n)}equals(e){return this.r===e.r&&this.g===e.g&&this.b===e.b&&this.a===e.a}static _clamp(e){return e<0?0:e>255?255:e|0}};Yl.Empty=new Yl(0,0,0,0);let Sl=Yl;const i0=class i0 extends z{static getInstance(){return this._INSTANCE||(this._INSTANCE=new i0),this._INSTANCE}constructor(){super(),this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._updateColorMap(),this._register(si.onDidChange(e=>{e.changedColorMap&&this._updateColorMap()}))}_updateColorMap(){const e=si.getColorMap();if(!e){this._colors=[Sl.Empty],this._backgroundIsLight=!0;return}this._colors=[Sl.Empty];for(let i=1;i=.5,this._onDidChange.fire(void 0)}getColor(e){return(e<1||e>=this._colors.length)&&(e=2),this._colors[e]}backgroundIsLight(){return this._backgroundIsLight}};i0._INSTANCE=null;let Pv=i0;const dse=(()=>{const o=[];for(let e=32;e<=126;e++)o.push(e);return o.push(65533),o})(),hse=(o,e)=>(o-=32,o<0||o>96?e<=2?(o+96)%96:95:o);class k_{constructor(e,t){this.scale=t,this._minimapCharRendererBrand=void 0,this.charDataNormal=k_.soften(e,12/15),this.charDataLight=k_.soften(e,50/60)}static soften(e,t){const i=new Uint8ClampedArray(e.length);for(let n=0,s=e.length;ne.width||i+g>e.height){console.warn("bad render request outside image data");return}const p=d?this.charDataLight:this.charDataNormal,_=hse(n,c),b=e.width*4,C=a.r,w=a.g,v=a.b,y=s.r-C,x=s.g-w,L=s.b-v,E=Math.max(r,l),N=e.data;let H=_*u*f,F=i*b+t*4;for(let W=0;We.width||i+h>e.height){console.warn("bad render request outside image data");return}const u=e.width*4,f=.5*(s/255),g=r.r,p=r.g,_=r.b,b=n.r-g,C=n.g-p,w=n.b-_,v=g+b*f,y=p+C*f,x=_+w*f,L=Math.max(s,a),E=e.data;let N=i*u+t*4;for(let H=0;H{const e=new Uint8ClampedArray(o.length/2);for(let t=0;t>1]=PO[o[t]]<<4|PO[o[t+1]]&15;return e},FO={1:ng(()=>OO("0000511D6300CF609C709645A78432005642574171487021003C451900274D35D762755E8B629C5BA856AF57BA649530C167D1512A272A3F6038604460398526BCA2A968DB6F8957C768BE5FBE2FB467CF5D8D5B795DC7625B5DFF50DE64C466DB2FC47CD860A65E9A2EB96CB54CE06DA763AB2EA26860524D3763536601005116008177A8705E53AB738E6A982F88BAA35B5F5B626D9C636B449B737E5B7B678598869A662F6B5B8542706C704C80736A607578685B70594A49715A4522E792")),2:ng(()=>OO("000000000000000055394F383D2800008B8B1F210002000081B1CBCBCC820000847AAF6B9AAF2119BE08B8881AD60000A44FD07DCCF107015338130C00000000385972265F390B406E2437634B4B48031B12B8A0847000001E15B29A402F0000000000004B33460B00007A752C2A0000000000004D3900000084394B82013400ABA5CFC7AD9C0302A45A3E5A98AB000089A43382D97900008BA54AA087A70A0248A6A7AE6DBE0000BF6F94987EA40A01A06DCFA7A7A9030496C32F77891D0000A99FB1A0AFA80603B29AB9CA75930D010C0948354D3900000C0948354F37460D0028BE673D8400000000AF9D7B6E00002B007AA8933400007AA642675C2700007984CFB9C3985B768772A8A6B7B20000CAAECAAFC4B700009F94A6009F840009D09F9BA4CA9C0000CC8FC76DC87F0000C991C472A2000000A894A48CA7B501079BA2C9C69BA20000B19A5D3FA89000005CA6009DA2960901B0A7F0669FB200009D009E00B7890000DAD0F5D092820000D294D4C48BD10000B5A7A4A3B1A50402CAB6CBA6A2000000B5A7A4A3B1A8044FCDADD19D9CB00000B7778F7B8AAE0803C9AB5D3F5D3F00009EA09EA0BAB006039EA0989A8C7900009B9EF4D6B7C00000A9A7816CACA80000ABAC84705D3F000096DA635CDC8C00006F486F266F263D4784006124097B00374F6D2D6D2D6D4A3A95872322000000030000000000008D8939130000000000002E22A5C9CBC70600AB25C0B5C9B400061A2DB04CA67001082AA6BEBEBFC606002321DACBC19E03087AA08B6768380000282FBAC0B8CA7A88AD25BBA5A29900004C396C5894A6000040485A6E356E9442A32CD17EADA70000B4237923628600003E2DE9C1D7B500002F25BBA5A2990000231DB6AFB4A804023025C0B5CAB588062B2CBDBEC0C706882435A75CA20000002326BD6A82A908048B4B9A5A668000002423A09CB4BB060025259C9D8A7900001C1FCAB2C7C700002A2A9387ABA200002626A4A47D6E9D14333163A0C87500004B6F9C2D643A257049364936493647358A34438355497F1A0000A24C1D590000D38DFFBDD4CD3126"))};class gp{static create(e,t){if(this.lastCreated&&e===this.lastCreated.scale&&t===this.lastFontFamily)return this.lastCreated;let i;return FO[e]?i=new k_(FO[e](),e):i=gp.createFromSampleData(gp.createSampleData(t).data,e),this.lastFontFamily=t,this.lastCreated=i,i}static createSampleData(e){const t=document.createElement("canvas"),i=t.getContext("2d");t.style.height="16px",t.height=16,t.width=960,t.style.width="960px",i.fillStyle="#ffffff",i.font=`bold 16px ${e}`,i.textBaseline="middle";let n=0;for(const s of dse)i.fillText(String.fromCharCode(s),n,16/2),n+=10;return i.getImageData(0,0,960,16)}static createFromSampleData(e,t){if(e.length!==61440)throw new Error("Unexpected source in MinimapCharRenderer");const n=gp._downsample(e,t);return new k_(n,t)}static _downsampleChar(e,t,i,n,s){const r=1*s,a=2*s;let l=n,c=0;for(let d=0;d0){const c=255/l;for(let d=0;dgp.create(this.fontScale,l.fontFamily)),this.defaultBackgroundColor=i.getColor(2),this.backgroundColor=Yf._getMinimapBackground(t,this.defaultBackgroundColor),this.foregroundAlpha=Yf._getMinimapForegroundOpacity(t)}static _getMinimapBackground(e,t){const i=e.getColor(GK);return i?new Sl(i.rgba.r,i.rgba.g,i.rgba.b,Math.round(255*i.rgba.a)):t}static _getMinimapForegroundOpacity(e){const t=e.getColor(ZK);return t?Sl._clamp(Math.round(255*t.rgba.a)):255}static _getSectionHeaderColor(e,t){const i=e.getColor(Sa);return i?new Sl(i.rgba.r,i.rgba.g,i.rgba.b,Math.round(255*i.rgba.a)):t}equals(e){return this.renderMinimap===e.renderMinimap&&this.size===e.size&&this.minimapHeightIsEditorHeight===e.minimapHeightIsEditorHeight&&this.scrollBeyondLastLine===e.scrollBeyondLastLine&&this.paddingTop===e.paddingTop&&this.paddingBottom===e.paddingBottom&&this.showSlider===e.showSlider&&this.autohide===e.autohide&&this.pixelRatio===e.pixelRatio&&this.typicalHalfwidthCharacterWidth===e.typicalHalfwidthCharacterWidth&&this.lineHeight===e.lineHeight&&this.minimapLeft===e.minimapLeft&&this.minimapWidth===e.minimapWidth&&this.minimapHeight===e.minimapHeight&&this.canvasInnerWidth===e.canvasInnerWidth&&this.canvasInnerHeight===e.canvasInnerHeight&&this.canvasOuterWidth===e.canvasOuterWidth&&this.canvasOuterHeight===e.canvasOuterHeight&&this.isSampling===e.isSampling&&this.editorHeight===e.editorHeight&&this.fontScale===e.fontScale&&this.minimapLineHeight===e.minimapLineHeight&&this.minimapCharWidth===e.minimapCharWidth&&this.sectionHeaderFontSize===e.sectionHeaderFontSize&&this.sectionHeaderLetterSpacing===e.sectionHeaderLetterSpacing&&this.defaultBackgroundColor&&this.defaultBackgroundColor.equals(e.defaultBackgroundColor)&&this.backgroundColor&&this.backgroundColor.equals(e.backgroundColor)&&this.foregroundAlpha===e.foregroundAlpha}}class mp{constructor(e,t,i,n,s,r,a,l,c){this.scrollTop=e,this.scrollHeight=t,this.sliderNeeded=i,this._computedSliderRatio=n,this.sliderTop=s,this.sliderHeight=r,this.topPaddingLineCount=a,this.startLineNumber=l,this.endLineNumber=c}getDesiredScrollTopFromDelta(e){return Math.round(this.scrollTop+e/this._computedSliderRatio)}getDesiredScrollTopFromTouchLocation(e){return Math.round((e-this.sliderHeight/2)/this._computedSliderRatio)}intersectWithViewport(e){const t=Math.max(this.startLineNumber,e.startLineNumber),i=Math.min(this.endLineNumber,e.endLineNumber);return t>i?null:[t,i]}getYForLineNumber(e,t){return+(e-this.startLineNumber+this.topPaddingLineCount)*t}static create(e,t,i,n,s,r,a,l,c,d,h){const u=e.pixelRatio,f=e.minimapLineHeight,g=Math.floor(e.canvasInnerHeight/f),p=e.lineHeight;if(e.minimapHeightIsEditorHeight){let x=l*e.lineHeight+e.paddingTop+e.paddingBottom;e.scrollBeyondLastLine&&(x+=Math.max(0,s-e.lineHeight-e.paddingBottom));const L=Math.max(1,Math.floor(s*s/x)),E=Math.max(0,e.minimapHeight-L),N=E/(d-s),H=c*N,F=E>0,W=Math.floor(e.canvasInnerHeight/e.minimapLineHeight),j=Math.floor(e.paddingTop/e.lineHeight);return new mp(c,d,F,N,H,L,j,1,Math.min(a,W))}let _;if(r&&i!==a){const x=i-t+1;_=Math.floor(x*f/u)}else{const x=s/p;_=Math.floor(x*f/u)}const b=Math.floor(e.paddingTop/p);let C=Math.floor(e.paddingBottom/p);if(e.scrollBeyondLastLine){const x=s/p;C=Math.max(C,x-1)}let w;if(C>0){const x=s/p;w=(b+a+C-x-1)*f/u}else w=Math.max(0,(b+a)*f/u-_);w=Math.min(e.minimapHeight-_,w);const v=w/(d-s),y=c*v;if(g>=b+a+C){const x=w>0;return new mp(c,d,x,v,y,_,b,1,a)}else{let x;t>1?x=t+b:x=Math.max(1,c/p);let L,E=Math.max(1,Math.floor(x-y*u/f));Ec&&(E=Math.min(E,h.startLineNumber),L=Math.max(L,h.topPaddingLineCount)),h.scrollTop=e.paddingTop?F=(t-E+L+H)*f/u:F=c/e.paddingTop*(L+H)*f/u,new mp(c,d,!0,v,F,_,L,E,N)}}}const n0=class n0{constructor(e){this.dy=e}onContentChanged(){this.dy=-1}onTokensChanged(){this.dy=-1}};n0.INVALID=new n0(-1);let Ov=n0;class BO{constructor(e,t,i){this.renderedLayout=e,this._imageData=t,this._renderedLines=new L8({createLine:()=>Ov.INVALID}),this._renderedLines._set(e.startLineNumber,i)}linesEquals(e){if(!this.scrollEquals(e))return!1;const i=this._renderedLines._get().lines;for(let n=0,s=i.length;n1){for(let b=0,C=n-1;b0&&this.minimapLines[i-1]>=e;)i--;let n=this.modelLineToMinimapLine(t)-1;for(;n+1t)return null}return[i+1,n+1]}decorationLineRangeToMinimapLineRange(e,t){let i=this.modelLineToMinimapLine(e),n=this.modelLineToMinimapLine(t);return e!==t&&n===i&&(n===this.minimapLines.length?i>1&&i--:n++),[i,n]}onLinesDeleted(e){const t=e.toLineNumber-e.fromLineNumber+1;let i=this.minimapLines.length,n=0;for(let s=this.minimapLines.length-1;s>=0&&!(this.minimapLines[s]=0&&!(this.minimapLines[i]0,scrollWidth:e.scrollWidth,scrollHeight:e.scrollHeight,viewportStartLineNumber:t,viewportEndLineNumber:i,viewportStartLineNumberVerticalOffset:e.getVerticalOffsetForLineNumber(t),scrollTop:e.scrollTop,scrollLeft:e.scrollLeft,viewportWidth:e.viewportWidth,viewportHeight:e.viewportHeight};this._actual.render(n)}_recreateLineSampling(){this._minimapSelections=null;const e=!!this._samplingState,[t,i]=D_.compute(this.options,this._context.viewModel.getLineCount(),this._samplingState);if(this._samplingState=t,e&&this._samplingState)for(const n of i)switch(n.type){case"deleted":this._actual.onLinesDeleted(n.deleteFromLineNumber,n.deleteToLineNumber);break;case"inserted":this._actual.onLinesInserted(n.insertFromLineNumber,n.insertToLineNumber);break;case"flush":this._actual.onFlushed();break}}getLineCount(){return this._samplingState?this._samplingState.minimapLines.length:this._context.viewModel.getLineCount()}getRealLineCount(){return this._context.viewModel.getLineCount()}getLineContent(e){return this._samplingState?this._context.viewModel.getLineContent(this._samplingState.minimapLines[e-1]):this._context.viewModel.getLineContent(e)}getLineMaxColumn(e){return this._samplingState?this._context.viewModel.getLineMaxColumn(this._samplingState.minimapLines[e-1]):this._context.viewModel.getLineMaxColumn(e)}getMinimapLinesRenderingData(e,t,i){if(this._samplingState){const n=[];for(let s=0,r=t-e+1;s!n.options.minimap?.sectionHeaderStyle);if(this._samplingState){const n=[];for(const s of i){if(!s.options.minimap)continue;const r=s.range,a=this._samplingState.modelLineToMinimapLine(r.startLineNumber),l=this._samplingState.modelLineToMinimapLine(r.endLineNumber);n.push(new h8(new I(a,r.startColumn,l,r.endColumn),s.options))}return n}return i}getSectionHeaderDecorationsInViewport(e,t){const i=this.options.minimapLineHeight,s=this.options.sectionHeaderFontSize/i;return e=Math.floor(Math.max(1,e-s)),this._getMinimapDecorationsInViewport(e,t).filter(r=>!!r.options.minimap?.sectionHeaderStyle)}_getMinimapDecorationsInViewport(e,t){let i;if(this._samplingState){const n=this._samplingState.minimapLines[e-1],s=this._samplingState.minimapLines[t-1];i=new I(n,1,s,this._context.viewModel.getLineMaxColumn(s))}else i=new I(e,1,t,this._context.viewModel.getLineMaxColumn(t));return this._context.viewModel.getMinimapDecorationsInRange(i)}getSectionHeaderText(e,t){const i=e.options.minimap?.sectionHeaderText;if(!i)return null;const n=this._sectionHeaderCache.get(i);if(n)return n;const s=t(i);return this._sectionHeaderCache.set(i,s),s}getOptions(){return this._context.viewModel.model.getOptions()}revealLineNumber(e){this._samplingState&&(e=this._samplingState.minimapLines[e-1]),this._context.viewModel.revealRange("mouse",!1,new I(e,1,e,1),1,0)}setScrollTop(e){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:e},1)}}class uf extends z{constructor(e,t){super(),this._renderDecorations=!1,this._gestureInProgress=!1,this._theme=e,this._model=t,this._lastRenderData=null,this._buffers=null,this._selectionColor=this._theme.getColor(NA),this._domNode=ot(document.createElement("div")),vr.write(this._domNode,9),this._domNode.setClassName(this._getMinimapDomNodeClassName()),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._shadow=ot(document.createElement("div")),this._shadow.setClassName("minimap-shadow-hidden"),this._domNode.appendChild(this._shadow),this._canvas=ot(document.createElement("canvas")),this._canvas.setPosition("absolute"),this._canvas.setLeft(0),this._domNode.appendChild(this._canvas),this._decorationsCanvas=ot(document.createElement("canvas")),this._decorationsCanvas.setPosition("absolute"),this._decorationsCanvas.setClassName("minimap-decorations-layer"),this._decorationsCanvas.setLeft(0),this._domNode.appendChild(this._decorationsCanvas),this._slider=ot(document.createElement("div")),this._slider.setPosition("absolute"),this._slider.setClassName("minimap-slider"),this._slider.setLayerHinting(!0),this._slider.setContain("strict"),this._domNode.appendChild(this._slider),this._sliderHorizontal=ot(document.createElement("div")),this._sliderHorizontal.setPosition("absolute"),this._sliderHorizontal.setClassName("minimap-slider-horizontal"),this._slider.appendChild(this._sliderHorizontal),this._applyLayout(),this._pointerDownListener=jt(this._domNode.domNode,ee.POINTER_DOWN,i=>{if(i.preventDefault(),this._model.options.renderMinimap===0||!this._lastRenderData)return;if(this._model.options.size!=="proportional"){if(i.button===0&&this._lastRenderData){const c=gi(this._slider.domNode),d=c.top+c.height/2;this._startSliderDragging(i,d,this._lastRenderData.renderedLayout)}return}const s=this._model.options.minimapLineHeight,r=this._model.options.canvasInnerHeight/this._model.options.canvasOuterHeight*i.offsetY;let l=Math.floor(r/s)+this._lastRenderData.renderedLayout.startLineNumber-this._lastRenderData.renderedLayout.topPaddingLineCount;l=Math.min(l,this._model.getLineCount()),this._model.revealLineNumber(l)}),this._sliderPointerMoveMonitor=new Hg,this._sliderPointerDownListener=jt(this._slider.domNode,ee.POINTER_DOWN,i=>{i.preventDefault(),i.stopPropagation(),i.button===0&&this._lastRenderData&&this._startSliderDragging(i,i.pageY,this._lastRenderData.renderedLayout)}),this._gestureDisposable=fn.addTarget(this._domNode.domNode),this._sliderTouchStartListener=U(this._domNode.domNode,St.Start,i=>{i.preventDefault(),i.stopPropagation(),this._lastRenderData&&(this._slider.toggleClassName("active",!0),this._gestureInProgress=!0,this.scrollDueToTouchEvent(i))},{passive:!1}),this._sliderTouchMoveListener=U(this._domNode.domNode,St.Change,i=>{i.preventDefault(),i.stopPropagation(),this._lastRenderData&&this._gestureInProgress&&this.scrollDueToTouchEvent(i)},{passive:!1}),this._sliderTouchEndListener=jt(this._domNode.domNode,St.End,i=>{i.preventDefault(),i.stopPropagation(),this._gestureInProgress=!1,this._slider.toggleClassName("active",!1)})}_startSliderDragging(e,t,i){if(!e.target||!(e.target instanceof Element))return;const n=e.pageX;this._slider.toggleClassName("active",!0);const s=(r,a)=>{const l=gi(this._domNode.domNode),c=Math.min(Math.abs(a-n),Math.abs(a-l.left),Math.abs(a-l.left-l.width));if(kn&&c>fse){this._model.setScrollTop(i.scrollTop);return}const d=r-t;this._model.setScrollTop(i.getDesiredScrollTopFromDelta(d))};e.pageY!==t&&s(e.pageY,n),this._sliderPointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,r=>s(r.pageY,r.pageX),()=>{this._slider.toggleClassName("active",!1)})}scrollDueToTouchEvent(e){const t=this._domNode.domNode.getBoundingClientRect().top,i=this._lastRenderData.renderedLayout.getDesiredScrollTopFromTouchLocation(e.pageY-t);this._model.setScrollTop(i)}dispose(){this._pointerDownListener.dispose(),this._sliderPointerMoveMonitor.dispose(),this._sliderPointerDownListener.dispose(),this._gestureDisposable.dispose(),this._sliderTouchStartListener.dispose(),this._sliderTouchMoveListener.dispose(),this._sliderTouchEndListener.dispose(),super.dispose()}_getMinimapDomNodeClassName(){const e=["minimap"];return this._model.options.showSlider==="always"?e.push("slider-always"):e.push("slider-mouseover"),this._model.options.autohide&&e.push("autohide"),e.join(" ")}getDomNode(){return this._domNode}_applyLayout(){this._domNode.setLeft(this._model.options.minimapLeft),this._domNode.setWidth(this._model.options.minimapWidth),this._domNode.setHeight(this._model.options.minimapHeight),this._shadow.setHeight(this._model.options.minimapHeight),this._canvas.setWidth(this._model.options.canvasOuterWidth),this._canvas.setHeight(this._model.options.canvasOuterHeight),this._canvas.domNode.width=this._model.options.canvasInnerWidth,this._canvas.domNode.height=this._model.options.canvasInnerHeight,this._decorationsCanvas.setWidth(this._model.options.canvasOuterWidth),this._decorationsCanvas.setHeight(this._model.options.canvasOuterHeight),this._decorationsCanvas.domNode.width=this._model.options.canvasInnerWidth,this._decorationsCanvas.domNode.height=this._model.options.canvasInnerHeight,this._slider.setWidth(this._model.options.minimapWidth)}_getBuffer(){return this._buffers||this._model.options.canvasInnerWidth>0&&this._model.options.canvasInnerHeight>0&&(this._buffers=new j2(this._canvas.domNode.getContext("2d"),this._model.options.canvasInnerWidth,this._model.options.canvasInnerHeight,this._model.options.backgroundColor)),this._buffers?this._buffers.getBuffer():null}onDidChangeOptions(){this._lastRenderData=null,this._buffers=null,this._applyLayout(),this._domNode.setClassName(this._getMinimapDomNodeClassName())}onSelectionChanged(){return this._renderDecorations=!0,!0}onDecorationsChanged(){return this._renderDecorations=!0,!0}onFlushed(){return this._lastRenderData=null,!0}onLinesChanged(e,t){return this._lastRenderData?this._lastRenderData.onLinesChanged(e,t):!1}onLinesDeleted(e,t){return this._lastRenderData?.onLinesDeleted(e,t),!0}onLinesInserted(e,t){return this._lastRenderData?.onLinesInserted(e,t),!0}onScrollChanged(){return this._renderDecorations=!0,!0}onThemeChanged(){return this._selectionColor=this._theme.getColor(NA),this._renderDecorations=!0,!0}onTokensChanged(e){return this._lastRenderData?this._lastRenderData.onTokensChanged(e):!1}onTokensColorsChanged(){return this._lastRenderData=null,this._buffers=null,!0}onZonesChanged(){return this._lastRenderData=null,!0}render(e){if(this._model.options.renderMinimap===0){this._shadow.setClassName("minimap-shadow-hidden"),this._sliderHorizontal.setWidth(0),this._sliderHorizontal.setHeight(0);return}e.scrollLeft+e.viewportWidth>=e.scrollWidth?this._shadow.setClassName("minimap-shadow-hidden"):this._shadow.setClassName("minimap-shadow-visible");const i=mp.create(this._model.options,e.viewportStartLineNumber,e.viewportEndLineNumber,e.viewportStartLineNumberVerticalOffset,e.viewportHeight,e.viewportContainsWhitespaceGaps,this._model.getLineCount(),this._model.getRealLineCount(),e.scrollTop,e.scrollHeight,this._lastRenderData?this._lastRenderData.renderedLayout:null);this._slider.setDisplay(i.sliderNeeded?"block":"none"),this._slider.setTop(i.sliderTop),this._slider.setHeight(i.sliderHeight),this._sliderHorizontal.setLeft(0),this._sliderHorizontal.setWidth(this._model.options.minimapWidth),this._sliderHorizontal.setTop(0),this._sliderHorizontal.setHeight(i.sliderHeight),this.renderDecorations(i),this._lastRenderData=this.renderLines(i)}renderDecorations(e){if(this._renderDecorations){this._renderDecorations=!1;const t=this._model.getSelections();t.sort(I.compareRangesUsingStarts);const i=this._model.getMinimapDecorationsInViewport(e.startLineNumber,e.endLineNumber);i.sort((u,f)=>(u.options.zIndex||0)-(f.options.zIndex||0));const{canvasInnerWidth:n,canvasInnerHeight:s}=this._model.options,r=this._model.options.minimapLineHeight,a=this._model.options.minimapCharWidth,l=this._model.getOptions().tabSize,c=this._decorationsCanvas.domNode.getContext("2d");c.clearRect(0,0,n,s);const d=new WO(e.startLineNumber,e.endLineNumber,!1);this._renderSelectionLineHighlights(c,t,d,e,r),this._renderDecorationsLineHighlights(c,i,d,e,r);const h=new WO(e.startLineNumber,e.endLineNumber,null);this._renderSelectionsHighlights(c,t,h,e,r,l,a,n),this._renderDecorationsHighlights(c,i,h,e,r,l,a,n),this._renderSectionHeaders(e)}}_renderSelectionLineHighlights(e,t,i,n,s){if(!this._selectionColor||this._selectionColor.isTransparent())return;e.fillStyle=this._selectionColor.transparent(.5).toString();let r=0,a=0;for(const l of t){const c=n.intersectWithViewport(l);if(!c)continue;const[d,h]=c;for(let g=d;g<=h;g++)i.set(g,!0);const u=n.getYForLineNumber(d,s),f=n.getYForLineNumber(h,s);a>=u||(a>r&&e.fillRect(Ar,r,e.canvas.width,a-r),r=u),a=f}a>r&&e.fillRect(Ar,r,e.canvas.width,a-r)}_renderDecorationsLineHighlights(e,t,i,n,s){const r=new Map;for(let a=t.length-1;a>=0;a--){const l=t[a],c=l.options.minimap;if(!c||c.position!==1)continue;const d=n.intersectWithViewport(l.range);if(!d)continue;const[h,u]=d,f=c.getColor(this._theme.value);if(!f||f.isTransparent())continue;let g=r.get(f.toString());g||(g=f.transparent(.5).toString(),r.set(f.toString(),g)),e.fillStyle=g;for(let p=h;p<=u;p++){if(i.has(p))continue;i.set(p,!0);const _=n.getYForLineNumber(h,s);e.fillRect(Ar,_,e.canvas.width,s)}}}_renderSelectionsHighlights(e,t,i,n,s,r,a,l){if(!(!this._selectionColor||this._selectionColor.isTransparent()))for(const c of t){const d=n.intersectWithViewport(c);if(!d)continue;const[h,u]=d;for(let f=h;f<=u;f++)this.renderDecorationOnLine(e,i,c,this._selectionColor,n,f,s,s,r,a,l)}}_renderDecorationsHighlights(e,t,i,n,s,r,a,l){for(const c of t){const d=c.options.minimap;if(!d)continue;const h=n.intersectWithViewport(c.range);if(!h)continue;const[u,f]=h,g=d.getColor(this._theme.value);if(!(!g||g.isTransparent()))for(let p=u;p<=f;p++)switch(d.position){case 1:this.renderDecorationOnLine(e,i,c.range,g,n,p,s,s,r,a,l);continue;case 2:{const _=n.getYForLineNumber(p,s);this.renderDecoration(e,g,2,_,gse,s);continue}}}}renderDecorationOnLine(e,t,i,n,s,r,a,l,c,d,h){const u=s.getYForLineNumber(r,l);if(u+a<0||u>this._model.options.canvasInnerHeight)return;const{startLineNumber:f,endLineNumber:g}=i,p=f===r?i.startColumn:1,_=g===r?i.endColumn:this._model.getLineMaxColumn(r),b=this.getXOffsetForPosition(t,r,p,c,d,h),C=this.getXOffsetForPosition(t,r,_,c,d,h);this.renderDecoration(e,n,b,u,C-b,a)}getXOffsetForPosition(e,t,i,n,s,r){if(i===1)return Ar;if((i-1)*s>=r)return r;let l=e.get(t);if(!l){const c=this._model.getLineContent(t);l=[Ar];let d=Ar;for(let h=1;h=r){l[h]=r;break}l[h]=g,d=g}e.set(t,l)}return i-1p.range.startLineNumber-_.range.startLineNumber);const g=uf._fitSectionHeader.bind(null,u,r-Ar);for(const p of f){const _=e.getYForLineNumber(p.range.startLineNumber,t)+i,b=_-i,C=b+2,w=this._model.getSectionHeaderText(p,g);uf._renderSectionLabel(u,w,p.options.minimap?.sectionHeaderStyle===2,l,d,r,b,s,_,C)}}static _fitSectionHeader(e,t,i){if(!i)return i;const n="…",s=e.measureText(i).width,r=e.measureText(n).width;if(s<=t||s<=r)return i;const a=i.length,l=s/i.length,c=Math.floor((t-r)/l)-1;let d=Math.ceil(c/2);for(;d>0&&/\s/.test(i[d-1]);)--d;return i.substring(0,d)+n+i.substring(a-(c-d))}static _renderSectionLabel(e,t,i,n,s,r,a,l,c,d){t&&(e.fillStyle=n,e.fillRect(0,a,r,l),e.fillStyle=s,e.fillText(t,Ar,c)),i&&(e.beginPath(),e.moveTo(0,d),e.lineTo(r,d),e.closePath(),e.stroke())}renderLines(e){const t=e.startLineNumber,i=e.endLineNumber,n=this._model.options.minimapLineHeight;if(this._lastRenderData&&this._lastRenderData.linesEquals(e)){const G=this._lastRenderData._get();return new BO(e,G.imageData,G.lines)}const s=this._getBuffer();if(!s)return null;const[r,a,l]=uf._renderUntouchedLines(s,e.topPaddingLineCount,t,i,n,this._lastRenderData),c=this._model.getMinimapLinesRenderingData(t,i,l),d=this._model.getOptions().tabSize,h=this._model.options.defaultBackgroundColor,u=this._model.options.backgroundColor,f=this._model.options.foregroundAlpha,g=this._model.tokensColorTracker,p=g.backgroundIsLight(),_=this._model.options.renderMinimap,b=this._model.options.charRenderer(),C=this._model.options.fontScale,w=this._model.options.minimapCharWidth,y=(_===1?2:3)*C,x=n>y?Math.floor((n-y)/2):0,L=u.a/255,E=new Sl(Math.round((u.r-h.r)*L+h.r),Math.round((u.g-h.g)*L+h.g),Math.round((u.b-h.b)*L+h.b),255);let N=e.topPaddingLineCount*n;const H=[];for(let G=0,ne=i-t+1;G=0&&FC)return;const W=_.charCodeAt(y);if(W===9){const j=u-(y+x)%u;x+=j-1,v+=j*r}else if(W===32)v+=r;else{const j=Rc(W)?2:1;for(let B=0;BC)return}}}}}class WO{constructor(e,t,i){this._startLineNumber=e,this._endLineNumber=t,this._defaultValue=i,this._values=[];for(let n=0,s=this._endLineNumber-this._startLineNumber+1;nthis._endLineNumber||(this._values[e-this._startLineNumber]=t)}get(e){return ethis._endLineNumber?this._defaultValue:this._values[e-this._startLineNumber]}}class pse extends _s{constructor(e,t){super(e),this._viewDomNode=t;const n=this._context.configuration.options.get(146);this._widgets={},this._verticalScrollbarWidth=n.verticalScrollbarWidth,this._minimapWidth=n.minimap.minimapWidth,this._horizontalScrollbarHeight=n.horizontalScrollbarHeight,this._editorHeight=n.height,this._editorWidth=n.width,this._viewDomNodeRect={top:0,left:0,width:0,height:0},this._domNode=ot(document.createElement("div")),vr.write(this._domNode,4),this._domNode.setClassName("overlayWidgets"),this.overflowingOverlayWidgetsDomNode=ot(document.createElement("div")),vr.write(this.overflowingOverlayWidgetsDomNode,5),this.overflowingOverlayWidgetsDomNode.setClassName("overflowingOverlayWidgets")}dispose(){super.dispose(),this._widgets={}}getDomNode(){return this._domNode}onConfigurationChanged(e){const i=this._context.configuration.options.get(146);return this._verticalScrollbarWidth=i.verticalScrollbarWidth,this._minimapWidth=i.minimap.minimapWidth,this._horizontalScrollbarHeight=i.horizontalScrollbarHeight,this._editorHeight=i.height,this._editorWidth=i.width,!0}addWidget(e){const t=ot(e.getDomNode());this._widgets[e.getId()]={widget:e,preference:null,domNode:t},t.setPosition("absolute"),t.setAttribute("widgetId",e.getId()),e.allowEditorOverflow?this.overflowingOverlayWidgetsDomNode.appendChild(t):this._domNode.appendChild(t),this.setShouldRender(),this._updateMaxMinWidth()}setWidgetPosition(e,t){const i=this._widgets[e.getId()],n=t?t.preference:null,s=t?.stackOridinal;return i.preference===n&&i.stack===s?(this._updateMaxMinWidth(),!1):(i.preference=n,i.stack=s,this.setShouldRender(),this._updateMaxMinWidth(),!0)}removeWidget(e){const t=e.getId();if(this._widgets.hasOwnProperty(t)){const n=this._widgets[t].domNode.domNode;delete this._widgets[t],n.remove(),this.setShouldRender(),this._updateMaxMinWidth()}}_updateMaxMinWidth(){let e=0;const t=Object.keys(this._widgets);for(let i=0,n=t.length;i0);t.sort((n,s)=>(this._widgets[n].stack||0)-(this._widgets[s].stack||0));for(let n=0,s=t.length;n=3){const s=Math.floor(n/3),r=Math.floor(n/3),a=n-s-r,l=e,c=l+s,d=l+s+a;return[[0,l,c,l,d,l,c,l],[0,s,a,s+a,r,s+a+r,a+r,s+a+r]]}else if(i===2){const s=Math.floor(n/2),r=n-s,a=e,l=a+s;return[[0,a,a,a,l,a,a,a],[0,s,s,s,r,s+r,s+r,s+r]]}else{const s=e,r=n;return[[0,s,s,s,s,s,s,s],[0,r,r,r,r,r,r,r]]}}equals(e){return this.lineHeight===e.lineHeight&&this.pixelRatio===e.pixelRatio&&this.overviewRulerLanes===e.overviewRulerLanes&&this.renderBorder===e.renderBorder&&this.borderColor===e.borderColor&&this.hideCursor===e.hideCursor&&this.cursorColorSingle===e.cursorColorSingle&&this.cursorColorPrimary===e.cursorColorPrimary&&this.cursorColorSecondary===e.cursorColorSecondary&&this.themeType===e.themeType&&q.equals(this.backgroundColor,e.backgroundColor)&&this.top===e.top&&this.right===e.right&&this.domWidth===e.domWidth&&this.domHeight===e.domHeight&&this.canvasWidth===e.canvasWidth&&this.canvasHeight===e.canvasHeight}}class bse extends _s{constructor(e){super(e),this._actualShouldRender=0,this._renderedDecorations=[],this._renderedCursorPositions=[],this._domNode=ot(document.createElement("canvas")),this._domNode.setClassName("decorationsOverviewRuler"),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._domNode.setAttribute("aria-hidden","true"),this._updateSettings(!1),this._tokensColorTrackerListener=si.onDidChange(t=>{t.changedColorMap&&this._updateSettings(!0)}),this._cursorPositions=[{position:new P(1,1),color:this._settings.cursorColorSingle}]}dispose(){super.dispose(),this._tokensColorTrackerListener.dispose()}_updateSettings(e){const t=new _se(this._context.configuration,this._context.theme);return this._settings&&this._settings.equals(t)?!1:(this._settings=t,this._domNode.setTop(this._settings.top),this._domNode.setRight(this._settings.right),this._domNode.setWidth(this._settings.domWidth),this._domNode.setHeight(this._settings.domHeight),this._domNode.domNode.width=this._settings.canvasWidth,this._domNode.domNode.height=this._settings.canvasHeight,e&&this._render(),!0)}_markRenderingIsNeeded(){return this._actualShouldRender=2,!0}_markRenderingIsMaybeNeeded(){return this._actualShouldRender=1,!0}onConfigurationChanged(e){return this._updateSettings(!1)?this._markRenderingIsNeeded():!1}onCursorStateChanged(e){this._cursorPositions=[];for(let t=0,i=e.selections.length;t1&&(n=t===0?this._settings.cursorColorPrimary:this._settings.cursorColorSecondary),this._cursorPositions.push({position:e.selections[t].getPosition(),color:n})}return this._cursorPositions.sort((t,i)=>P.compare(t.position,i.position)),this._markRenderingIsMaybeNeeded()}onDecorationsChanged(e){return e.affectsOverviewRuler?this._markRenderingIsMaybeNeeded():!1}onFlushed(e){return this._markRenderingIsNeeded()}onScrollChanged(e){return e.scrollHeightChanged?this._markRenderingIsNeeded():!1}onZonesChanged(e){return this._markRenderingIsNeeded()}onThemeChanged(e){return this._updateSettings(!1)?this._markRenderingIsNeeded():!1}getDomNode(){return this._domNode.domNode}prepareRender(e){}render(e){this._render(),this._actualShouldRender=0}_render(){const e=this._settings.backgroundColor;if(this._settings.overviewRulerLanes===0){this._domNode.setBackgroundColor(e?q.Format.CSS.formatHexA(e):""),this._domNode.setDisplay("none");return}const t=this._context.viewModel.getAllOverviewRulerDecorations(this._context.theme);if(t.sort(w_.compareByRenderingProps),this._actualShouldRender===1&&!w_.equalsArr(this._renderedDecorations,t)&&(this._actualShouldRender=2),this._actualShouldRender===1&&!li(this._renderedCursorPositions,this._cursorPositions,(g,p)=>g.position.lineNumber===p.position.lineNumber&&g.color===p.color)&&(this._actualShouldRender=2),this._actualShouldRender===1)return;this._renderedDecorations=t,this._renderedCursorPositions=this._cursorPositions,this._domNode.setDisplay("block");const i=this._settings.canvasWidth,n=this._settings.canvasHeight,s=this._settings.lineHeight,r=this._context.viewLayout,a=this._context.viewLayout.getScrollHeight(),l=n/a,c=6*this._settings.pixelRatio|0,d=c/2|0,h=this._domNode.domNode.getContext("2d");e?e.isOpaque()?(h.fillStyle=q.Format.CSS.formatHexA(e),h.fillRect(0,0,i,n)):(h.clearRect(0,0,i,n),h.fillStyle=q.Format.CSS.formatHexA(e),h.fillRect(0,0,i,n)):h.clearRect(0,0,i,n);const u=this._settings.x,f=this._settings.w;for(const g of t){const p=g.color,_=g.data;h.fillStyle=p;let b=0,C=0,w=0;for(let v=0,y=_.length/3;vn&&(W=n-d),N=W-d,H=W+d}N>w+1||x!==b?(v!==0&&h.fillRect(u[b],C,f[b],w-C),b=x,C=N,w=H):H>w&&(w=H)}h.fillRect(u[b],C,f[b],w-C)}if(!this._settings.hideCursor){const g=2*this._settings.pixelRatio|0,p=g/2|0,_=this._settings.x[7],b=this._settings.w[7];let C=-100,w=-100,v=null;for(let y=0,x=this._cursorPositions.length;yn&&(N=n-p);const H=N-p,F=H+g;H>w+1||L!==v?(y!==0&&v&&h.fillRect(_,C,b,w-C),C=H,w=F):F>w&&(w=F),v=L,h.fillStyle=L}v&&h.fillRect(_,C,b,w-C)}this._settings.renderBorder&&this._settings.borderColor&&this._settings.overviewRulerLanes>0&&(h.beginPath(),h.lineWidth=1,h.strokeStyle=this._settings.borderColor,h.moveTo(0,0),h.lineTo(0,n),h.moveTo(1,0),h.lineTo(i,0),h.stroke())}}class HO{constructor(e,t,i){this._colorZoneBrand=void 0,this.from=e|0,this.to=t|0,this.colorId=i|0}static compare(e,t){return e.colorId===t.colorId?e.from===t.from?e.to-t.to:e.from-t.from:e.colorId-t.colorId}}class E8{constructor(e,t,i,n){this._overviewRulerZoneBrand=void 0,this.startLineNumber=e,this.endLineNumber=t,this.heightInLines=i,this.color=n,this._colorZone=null}static compare(e,t){return e.color===t.color?e.startLineNumber===t.startLineNumber?e.heightInLines===t.heightInLines?e.endLineNumber-t.endLineNumber:e.heightInLines-t.heightInLines:e.startLineNumber-t.startLineNumber:e.colori&&(p=i-_);const b=d.color;let C=this._color2Id[b];C||(C=++this._lastAssignedId,this._color2Id[b]=C,this._id2Color[C]=b);const w=new HO(p-_,p+_,C);d.setColorZone(w),a.push(w)}return this._colorZonesInvalid=!1,a.sort(HO.compare),a}}class vse extends ab{constructor(e,t){super(),this._context=e;const i=this._context.configuration.options;this._domNode=ot(document.createElement("canvas")),this._domNode.setClassName(t),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._zoneManager=new Cse(n=>this._context.viewLayout.getVerticalOffsetForLineNumber(n)),this._zoneManager.setDOMWidth(0),this._zoneManager.setDOMHeight(0),this._zoneManager.setOuterHeight(this._context.viewLayout.getScrollHeight()),this._zoneManager.setLineHeight(i.get(67)),this._zoneManager.setPixelRatio(i.get(144)),this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return e.hasChanged(67)&&(this._zoneManager.setLineHeight(t.get(67)),this._render()),e.hasChanged(144)&&(this._zoneManager.setPixelRatio(t.get(144)),this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render()),!0}onFlushed(e){return this._render(),!0}onScrollChanged(e){return e.scrollHeightChanged&&(this._zoneManager.setOuterHeight(e.scrollHeight),this._render()),!0}onZonesChanged(e){return this._render(),!0}getDomNode(){return this._domNode.domNode}setLayout(e){this._domNode.setTop(e.top),this._domNode.setRight(e.right);let t=!1;t=this._zoneManager.setDOMWidth(e.width)||t,t=this._zoneManager.setDOMHeight(e.height)||t,t&&(this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render())}setZones(e){this._zoneManager.setZones(e),this._render()}_render(){if(this._zoneManager.getOuterHeight()===0)return!1;const e=this._zoneManager.getCanvasWidth(),t=this._zoneManager.getCanvasHeight(),i=this._zoneManager.resolveColorZones(),n=this._zoneManager.getId2Color(),s=this._domNode.domNode.getContext("2d");return s.clearRect(0,0,e,t),i.length>0&&this._renderOneLane(s,i,n,e),!0}_renderOneLane(e,t,i,n){let s=0,r=0,a=0;for(const l of t){const c=l.colorId,d=l.from,h=l.to;c!==s?(e.fillRect(0,r,n,a-r),s=c,e.fillStyle=i[s],r=d,a=h):a>=d?a=Math.max(a,h):(e.fillRect(0,r,n,a-r),r=d,a=h)}e.fillRect(0,r,n,a-r)}}class wse extends _s{constructor(e){super(e),this.domNode=ot(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("view-rulers"),this._renderedRulers=[];const t=this._context.configuration.options;this._rulers=t.get(103),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth}dispose(){super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return this._rulers=t.get(103),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,!0}onScrollChanged(e){return e.scrollHeightChanged}prepareRender(e){}_ensureRulersCount(){const e=this._renderedRulers.length,t=this._rulers.length;if(e===t)return;if(e0;){const a=ot(document.createElement("div"));a.setClassName("view-ruler"),a.setWidth(s),this.domNode.appendChild(a),this._renderedRulers.push(a),r--}return}let i=e-t;for(;i>0;){const n=this._renderedRulers.pop();this.domNode.removeChild(n),i--}}render(e){this._ensureRulersCount();for(let t=0,i=this._rulers.length;t0;return this._shouldShow!==e?(this._shouldShow=e,!0):!1}getDomNode(){return this._domNode}_updateWidth(){const t=this._context.configuration.options.get(146);t.minimap.renderMinimap===0||t.minimap.minimapWidth>0&&t.minimap.minimapLeft===0?this._width=t.width:this._width=t.width-t.verticalScrollbarWidth}onConfigurationChanged(e){const i=this._context.configuration.options.get(104);return this._useShadows=i.useShadows,this._updateWidth(),this._updateShouldShow(),!0}onScrollChanged(e){return this._scrollTop=e.scrollTop,this._updateShouldShow()}prepareRender(e){}render(e){this._domNode.setWidth(this._width),this._domNode.setClassName(this._shouldShow?"scroll-decoration":"")}}class Sse{constructor(e){this.left=e.left,this.width=e.width,this.startStyle=null,this.endStyle=null}}class Lse{constructor(e,t){this.lineNumber=e,this.ranges=t}}function xse(o){return new Sse(o)}function kse(o){return new Lse(o.lineNumber,o.ranges.map(xse))}const Zt=class Zt extends mu{constructor(e){super(),this._previousFrameVisibleRangesWithStyle=[],this._context=e;const t=this._context.configuration.options;this._roundedSelection=t.get(102),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,this._selections=[],this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return this._roundedSelection=t.get(102),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,!0}onCursorStateChanged(e){return this._selections=e.selections.slice(0),!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}_visibleRangesHaveGaps(e){for(let t=0,i=e.length;t1)return!0;return!1}_enrichVisibleRangesWithStyle(e,t,i){const n=this._typicalHalfwidthCharacterWidth/4;let s=null,r=null;if(i&&i.length>0&&t.length>0){const a=t[0].lineNumber;if(a===e.startLineNumber)for(let c=0;!s&&c=0;c--)i[c].lineNumber===l&&(r=i[c].ranges[0]);s&&!s.startStyle&&(s=null),r&&!r.startStyle&&(r=null)}for(let a=0,l=t.length;a0){const g=t[a-1].ranges[0].left,p=t[a-1].ranges[0].left+t[a-1].ranges[0].width;i1(d-g)g&&(u.top=1),i1(h-p)'}_actualRenderOneSelection(e,t,i,n){if(n.length===0)return;const s=!!n[0].ranges[0].startStyle,r=n[0].lineNumber,a=n[n.length-1].lineNumber;for(let l=0,c=n.length;l1,c)}this._previousFrameVisibleRangesWithStyle=s,this._renderResult=t.map(([r,a])=>r+a)}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}};Zt.SELECTION_CLASS_NAME="selected-text",Zt.SELECTION_TOP_LEFT="top-left-radius",Zt.SELECTION_BOTTOM_LEFT="bottom-left-radius",Zt.SELECTION_TOP_RIGHT="top-right-radius",Zt.SELECTION_BOTTOM_RIGHT="bottom-right-radius",Zt.EDITOR_BACKGROUND_CLASS_NAME="monaco-editor-background",Zt.ROUNDED_PIECE_WIDTH=10;let TI=Zt;Sr((o,e)=>{const t=o.getColor(DK);t&&!t.isTransparent()&&e.addRule(`.monaco-editor .view-line span.inline-selected-text { color: ${t}; }`)});function i1(o){return o<0?-o:o}class VO{constructor(e,t,i,n,s,r,a){this.top=e,this.left=t,this.paddingLeft=i,this.width=n,this.height=s,this.textContent=r,this.textContentClassName=a}}var hl;(function(o){o[o.Single=0]="Single",o[o.MultiPrimary=1]="MultiPrimary",o[o.MultiSecondary=2]="MultiSecondary"})(hl||(hl={}));class zO{constructor(e,t){this._context=e;const i=this._context.configuration.options,n=i.get(50);this._cursorStyle=i.get(28),this._lineHeight=i.get(67),this._typicalHalfwidthCharacterWidth=n.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(i.get(31),this._typicalHalfwidthCharacterWidth),this._isVisible=!0,this._domNode=ot(document.createElement("div")),this._domNode.setClassName(`cursor ${Zf}`),this._domNode.setHeight(this._lineHeight),this._domNode.setTop(0),this._domNode.setLeft(0),qi(this._domNode,n),this._domNode.setDisplay("none"),this._position=new P(1,1),this._pluralityClass="",this.setPlurality(t),this._lastRenderedContent="",this._renderData=null}getDomNode(){return this._domNode}getPosition(){return this._position}setPlurality(e){switch(e){default:case hl.Single:this._pluralityClass="";break;case hl.MultiPrimary:this._pluralityClass="cursor-primary";break;case hl.MultiSecondary:this._pluralityClass="cursor-secondary";break}}show(){this._isVisible||(this._domNode.setVisibility("inherit"),this._isVisible=!0)}hide(){this._isVisible&&(this._domNode.setVisibility("hidden"),this._isVisible=!1)}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(50);return this._cursorStyle=t.get(28),this._lineHeight=t.get(67),this._typicalHalfwidthCharacterWidth=i.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(t.get(31),this._typicalHalfwidthCharacterWidth),qi(this._domNode,i),!0}onCursorPositionChanged(e,t){return t?this._domNode.domNode.style.transitionProperty="none":this._domNode.domNode.style.transitionProperty="",this._position=e,!0}_getGraphemeAwarePosition(){const{lineNumber:e,column:t}=this._position,i=this._context.viewModel.getLineContent(e),[n,s]=uH(i,t-1);return[new P(e,n+1),i.substring(n,s)]}_prepareRender(e){let t="",i="";const[n,s]=this._getGraphemeAwarePosition();if(this._cursorStyle===Ai.Line||this._cursorStyle===Ai.LineThin){const u=e.visibleRangeForPosition(n);if(!u||u.outsideRenderedLine)return null;const f=fe(this._domNode.domNode);let g;this._cursorStyle===Ai.Line?(g=fR(f,this._lineCursorWidth>0?this._lineCursorWidth:2),g>2&&(t=s,i=this._getTokenClassName(n))):g=fR(f,1);let p=u.left,_=0;g>=2&&p>=1&&(_=1,p-=_);const b=e.getVerticalOffsetForLineNumber(n.lineNumber)-e.bigNumbersDelta;return new VO(b,p,_,g,this._lineHeight,t,i)}const r=e.linesVisibleRangesForRange(new I(n.lineNumber,n.column,n.lineNumber,n.column+s.length),!1);if(!r||r.length===0)return null;const a=r[0];if(a.outsideRenderedLine||a.ranges.length===0)return null;const l=a.ranges[0],c=s===" "?this._typicalHalfwidthCharacterWidth:l.width<1?this._typicalHalfwidthCharacterWidth:l.width;this._cursorStyle===Ai.Block&&(t=s,i=this._getTokenClassName(n));let d=e.getVerticalOffsetForLineNumber(n.lineNumber)-e.bigNumbersDelta,h=this._lineHeight;return(this._cursorStyle===Ai.Underline||this._cursorStyle===Ai.UnderlineThin)&&(d+=this._lineHeight-2,h=2),new VO(d,l.left,0,c,h,t,i)}_getTokenClassName(e){const t=this._context.viewModel.getViewLineData(e.lineNumber),i=t.tokens.findTokenIndexAtOffset(e.column-1);return t.tokens.getClassName(i)}prepareRender(e){this._renderData=this._prepareRender(e)}render(e){return this._renderData?(this._lastRenderedContent!==this._renderData.textContent&&(this._lastRenderedContent=this._renderData.textContent,this._domNode.domNode.textContent=this._lastRenderedContent),this._domNode.setClassName(`cursor ${this._pluralityClass} ${Zf} ${this._renderData.textContentClassName}`),this._domNode.setDisplay("block"),this._domNode.setTop(this._renderData.top),this._domNode.setLeft(this._renderData.left),this._domNode.setPaddingLeft(this._renderData.paddingLeft),this._domNode.setWidth(this._renderData.width),this._domNode.setLineHeight(this._renderData.height),this._domNode.setHeight(this._renderData.height),{domNode:this._domNode.domNode,position:this._position,contentLeft:this._renderData.left,height:this._renderData.height,width:2}):(this._domNode.setDisplay("none"),null)}}const Pp=class Pp extends _s{constructor(e){super(e);const t=this._context.configuration.options;this._readOnly=t.get(92),this._cursorBlinking=t.get(26),this._cursorStyle=t.get(28),this._cursorSmoothCaretAnimation=t.get(27),this._selectionIsEmpty=!0,this._isComposingInput=!1,this._isVisible=!1,this._primaryCursor=new zO(this._context,hl.Single),this._secondaryCursors=[],this._renderData=[],this._domNode=ot(document.createElement("div")),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._updateDomClassName(),this._domNode.appendChild(this._primaryCursor.getDomNode()),this._startCursorBlinkAnimation=new wr,this._cursorFlatBlinkInterval=new QN,this._blinkingEnabled=!1,this._editorHasFocus=!1,this._updateBlinking()}dispose(){super.dispose(),this._startCursorBlinkAnimation.dispose(),this._cursorFlatBlinkInterval.dispose()}getDomNode(){return this._domNode}onCompositionStart(e){return this._isComposingInput=!0,this._updateBlinking(),!0}onCompositionEnd(e){return this._isComposingInput=!1,this._updateBlinking(),!0}onConfigurationChanged(e){const t=this._context.configuration.options;this._readOnly=t.get(92),this._cursorBlinking=t.get(26),this._cursorStyle=t.get(28),this._cursorSmoothCaretAnimation=t.get(27),this._updateBlinking(),this._updateDomClassName(),this._primaryCursor.onConfigurationChanged(e);for(let i=0,n=this._secondaryCursors.length;it.length){const s=this._secondaryCursors.length-t.length;for(let r=0;r{for(let n=0,s=e.ranges.length;n{this._isVisible?this._hide():this._show()},Pp.BLINK_INTERVAL,fe(this._domNode.domNode)):this._startCursorBlinkAnimation.setIfNotSet(()=>{this._blinkingEnabled=!0,this._updateDomClassName()},Pp.BLINK_INTERVAL))}_updateDomClassName(){this._domNode.setClassName(this._getClassName())}_getClassName(){let e="cursors-layer";switch(this._selectionIsEmpty||(e+=" has-selection"),this._cursorStyle){case Ai.Line:e+=" cursor-line-style";break;case Ai.Block:e+=" cursor-block-style";break;case Ai.Underline:e+=" cursor-underline-style";break;case Ai.LineThin:e+=" cursor-line-thin-style";break;case Ai.BlockOutline:e+=" cursor-block-outline-style";break;case Ai.UnderlineThin:e+=" cursor-underline-thin-style";break;default:e+=" cursor-line-style"}if(this._blinkingEnabled)switch(this._getCursorBlinking()){case 1:e+=" cursor-blink";break;case 2:e+=" cursor-smooth";break;case 3:e+=" cursor-phase";break;case 4:e+=" cursor-expand";break;case 5:e+=" cursor-solid";break;default:e+=" cursor-solid"}else e+=" cursor-solid";return(this._cursorSmoothCaretAnimation==="on"||this._cursorSmoothCaretAnimation==="explicit")&&(e+=" cursor-smooth-caret-animation"),e}_show(){this._primaryCursor.show();for(let e=0,t=this._secondaryCursors.length;e{const t=[{class:".cursor",foreground:uy,background:t2},{class:".cursor-primary",foreground:U7,background:KY},{class:".cursor-secondary",foreground:$7,background:jY}];for(const i of t){const n=o.getColor(i.foreground);if(n){let s=o.getColor(i.background);s||(s=n.opposite()),e.addRule(`.monaco-editor .cursors-layer ${i.class} { background-color: ${n}; border-color: ${n}; color: ${s}; }`),mc(o.type)&&e.addRule(`.monaco-editor .cursors-layer.has-selection ${i.class} { border-left: 1px solid ${s}; border-right: 1px solid ${s}; }`)}}});const oL=()=>{throw new Error("Invalid change accessor")};class Dse extends _s{constructor(e){super(e);const t=this._context.configuration.options,i=t.get(146);this._lineHeight=t.get(67),this._contentWidth=i.contentWidth,this._contentLeft=i.contentLeft,this.domNode=ot(document.createElement("div")),this.domNode.setClassName("view-zones"),this.domNode.setPosition("absolute"),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.marginDomNode=ot(document.createElement("div")),this.marginDomNode.setClassName("margin-view-zones"),this.marginDomNode.setPosition("absolute"),this.marginDomNode.setAttribute("role","presentation"),this.marginDomNode.setAttribute("aria-hidden","true"),this._zones={}}dispose(){super.dispose(),this._zones={}}_recomputeWhitespacesProps(){const e=this._context.viewLayout.getWhitespaces(),t=new Map;for(const n of e)t.set(n.id,n);let i=!1;return this._context.viewModel.changeWhitespace(n=>{const s=Object.keys(this._zones);for(let r=0,a=s.length;r{const n={addZone:s=>(t=!0,this._addZone(i,s)),removeZone:s=>{s&&(t=this._removeZone(i,s)||t)},layoutZone:s=>{s&&(t=this._layoutZone(i,s)||t)}};Ise(e,n),n.addZone=oL,n.removeZone=oL,n.layoutZone=oL}),t}_addZone(e,t){const i=this._computeWhitespaceProps(t),s={whitespaceId:e.insertWhitespace(i.afterViewLineNumber,this._getZoneOrdinal(t),i.heightInPx,i.minWidthInPx),delegate:t,isInHiddenArea:i.isInHiddenArea,isVisible:!1,domNode:ot(t.domNode),marginDomNode:t.marginDomNode?ot(t.marginDomNode):null};return this._safeCallOnComputedHeight(s.delegate,i.heightInPx),s.domNode.setPosition("absolute"),s.domNode.domNode.style.width="100%",s.domNode.setDisplay("none"),s.domNode.setAttribute("monaco-view-zone",s.whitespaceId),this.domNode.appendChild(s.domNode),s.marginDomNode&&(s.marginDomNode.setPosition("absolute"),s.marginDomNode.domNode.style.width="100%",s.marginDomNode.setDisplay("none"),s.marginDomNode.setAttribute("monaco-view-zone",s.whitespaceId),this.marginDomNode.appendChild(s.marginDomNode)),this._zones[s.whitespaceId]=s,this.setShouldRender(),s.whitespaceId}_removeZone(e,t){if(this._zones.hasOwnProperty(t)){const i=this._zones[t];return delete this._zones[t],e.removeWhitespace(i.whitespaceId),i.domNode.removeAttribute("monaco-visible-view-zone"),i.domNode.removeAttribute("monaco-view-zone"),i.domNode.domNode.remove(),i.marginDomNode&&(i.marginDomNode.removeAttribute("monaco-visible-view-zone"),i.marginDomNode.removeAttribute("monaco-view-zone"),i.marginDomNode.domNode.remove()),this.setShouldRender(),!0}return!1}_layoutZone(e,t){if(this._zones.hasOwnProperty(t)){const i=this._zones[t],n=this._computeWhitespaceProps(i.delegate);return i.isInHiddenArea=n.isInHiddenArea,e.changeOneWhitespace(i.whitespaceId,n.afterViewLineNumber,n.heightInPx),this._safeCallOnComputedHeight(i.delegate,n.heightInPx),this.setShouldRender(),!0}return!1}shouldSuppressMouseDownOnViewZone(e){return this._zones.hasOwnProperty(e)?!!this._zones[e].delegate.suppressMouseDown:!1}_heightInPixels(e){return typeof e.heightInPx=="number"?e.heightInPx:typeof e.heightInLines=="number"?this._lineHeight*e.heightInLines:this._lineHeight}_minWidthInPixels(e){return typeof e.minWidthInPx=="number"?e.minWidthInPx:0}_safeCallOnComputedHeight(e,t){if(typeof e.onComputedHeight=="function")try{e.onComputedHeight(t)}catch(i){Ze(i)}}_safeCallOnDomNodeTop(e,t){if(typeof e.onDomNodeTop=="function")try{e.onDomNodeTop(t)}catch(i){Ze(i)}}prepareRender(e){}render(e){const t=e.viewportData.whitespaceViewportData,i={};let n=!1;for(const r of t)this._zones[r.id].isInHiddenArea||(i[r.id]=r,n=!0);const s=Object.keys(this._zones);for(let r=0,a=s.length;ra)continue;const f=u.startLineNumber===a?u.startColumn:c.minColumn,g=u.endLineNumber===a?u.endColumn:c.maxColumn;f=H.endOffset&&(N++,H=i&&i[N]),j!==9&&j!==32||u&&!x&&W<=E)continue;if(h&&W>=L&&W<=E&&j===32){const G=W-1>=0?a.charCodeAt(W-1):0,ne=W+1=0?a.charCodeAt(W-1):0;if(j===32&&G!==32&&G!==9)continue}if(i&&(!H||H.startOffset>W||H.endOffset<=W))continue;const B=e.visibleRangeForPosition(new P(t,W+1));B&&(r?(F=Math.max(F,B.left),j===9?y+=this._renderArrow(f,_,B.left):y+=``):j===9?y+=`
    ${v?"→":"→"}
    `:y+=`
    ${String.fromCharCode(w)}
    `)}return r?(F=Math.round(F+_),``+y+""):y}_renderArrow(e,t,i){const n=t/7,s=t,r=e/2,a=i,l={x:0,y:n/2},c={x:100/125*s,y:l.y},d={x:c.x-.2*c.x,y:c.y+.2*c.x},h={x:d.x+.1*c.x,y:d.y+.1*c.x},u={x:h.x+.35*c.x,y:h.y-.35*c.x},f={x:u.x,y:-u.y},g={x:h.x,y:-h.y},p={x:d.x,y:-d.y},_={x:c.x,y:-c.y},b={x:l.x,y:-l.y};return``}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}class UO{constructor(e){const t=e.options,i=t.get(50),n=t.get(38);n==="off"?(this.renderWhitespace="none",this.renderWithSVG=!1):n==="svg"?(this.renderWhitespace=t.get(100),this.renderWithSVG=!0):(this.renderWhitespace=t.get(100),this.renderWithSVG=!1),this.spaceWidth=i.spaceWidth,this.middotWidth=i.middotWidth,this.wsmiddotWidth=i.wsmiddotWidth,this.canUseHalfwidthRightwardsArrow=i.canUseHalfwidthRightwardsArrow,this.lineHeight=t.get(67),this.stopRenderingLineAfter=t.get(118)}equals(e){return this.renderWhitespace===e.renderWhitespace&&this.renderWithSVG===e.renderWithSVG&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.wsmiddotWidth===e.wsmiddotWidth&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineHeight===e.lineHeight&&this.stopRenderingLineAfter===e.stopRenderingLineAfter}}class Nse{constructor(e,t,i,n){this.selections=e,this.startLineNumber=t.startLineNumber|0,this.endLineNumber=t.endLineNumber|0,this.relativeVerticalOffset=t.relativeVerticalOffset,this.bigNumbersDelta=t.bigNumbersDelta|0,this.lineHeight=t.lineHeight|0,this.whitespaceViewportData=i,this._model=n,this.visibleRange=new I(t.startLineNumber,this._model.getLineMinColumn(t.startLineNumber),t.endLineNumber,this._model.getLineMaxColumn(t.endLineNumber))}getViewLineRenderingData(e){return this._model.getViewportViewLineRenderingData(this.visibleRange,e)}getDecorationsInViewport(){return this._model.getDecorationsInViewport(this.visibleRange)}}class Tse{get type(){return this._theme.type}get value(){return this._theme}constructor(e){this._theme=e}update(e){this._theme=e}getColor(e){return this._theme.getColor(e)}}class Mse{constructor(e,t,i){this.configuration=e,this.theme=new Tse(t),this.viewModel=i,this.viewLayout=i.viewLayout}addEventHandler(e){this.viewModel.addViewEventHandler(e)}removeEventHandler(e){this.viewModel.removeViewEventHandler(e)}}var Rse=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ase=function(o,e){return function(t,i){e(t,i,o)}};let RI=class extends ab{constructor(e,t,i,n,s,r,a){super(),this._instantiationService=a,this._shouldRecomputeGlyphMarginLanes=!1,this._selections=[new Fe(1,1,1,1)],this._renderAnimationFrame=null;const l=new Vne(t,n,s,e);this._context=new Mse(t,i,n),this._context.addEventHandler(this),this._viewParts=[],this._textAreaHandler=this._instantiationService.createInstance(xI,this._context,l,this._createTextAreaHandlerHelper()),this._viewParts.push(this._textAreaHandler),this._linesContent=ot(document.createElement("div")),this._linesContent.setClassName("lines-content monaco-editor-background"),this._linesContent.setPosition("absolute"),this.domNode=ot(document.createElement("div")),this.domNode.setClassName(this._getEditorClassName()),this.domNode.setAttribute("role","code"),this._overflowGuardContainer=ot(document.createElement("div")),vr.write(this._overflowGuardContainer,3),this._overflowGuardContainer.setClassName("overflow-guard"),this._scrollbar=new Qne(this._context,this._linesContent,this.domNode,this._overflowGuardContainer),this._viewParts.push(this._scrollbar),this._viewLines=new NI(this._context,this._linesContent),this._viewZones=new Dse(this._context),this._viewParts.push(this._viewZones);const c=new bse(this._context);this._viewParts.push(c);const d=new yse(this._context);this._viewParts.push(d);const h=new Une(this._context);this._viewParts.push(h),h.addDynamicOverlay(new Gne(this._context)),h.addDynamicOverlay(new TI(this._context)),h.addDynamicOverlay(new sse(this._context)),h.addDynamicOverlay(new Yne(this._context)),h.addDynamicOverlay(new Ese(this._context));const u=new $ne(this._context);this._viewParts.push(u),u.addDynamicOverlay(new Zne(this._context)),u.addDynamicOverlay(new cse(this._context)),u.addDynamicOverlay(new lse(this._context)),u.addDynamicOverlay(new Ev(this._context)),this._glyphMarginWidgets=new ese(this._context),this._viewParts.push(this._glyphMarginWidgets);const f=new Nv(this._context);f.getDomNode().appendChild(this._viewZones.marginDomNode),f.getDomNode().appendChild(u.getDomNode()),f.getDomNode().appendChild(this._glyphMarginWidgets.domNode),this._viewParts.push(f),this._contentWidgets=new jne(this._context,this.domNode),this._viewParts.push(this._contentWidgets),this._viewCursors=new MI(this._context),this._viewParts.push(this._viewCursors),this._overlayWidgets=new pse(this._context,this.domNode),this._viewParts.push(this._overlayWidgets);const g=new wse(this._context);this._viewParts.push(g);const p=new Kne(this._context);this._viewParts.push(p);const _=new mse(this._context);if(this._viewParts.push(_),c){const b=this._scrollbar.getOverviewRulerLayoutInfo();b.parent.insertBefore(c.getDomNode(),b.insertBefore)}this._linesContent.appendChild(h.getDomNode()),this._linesContent.appendChild(g.domNode),this._linesContent.appendChild(this._viewZones.domNode),this._linesContent.appendChild(this._viewLines.getDomNode()),this._linesContent.appendChild(this._contentWidgets.domNode),this._linesContent.appendChild(this._viewCursors.getDomNode()),this._overflowGuardContainer.appendChild(f.getDomNode()),this._overflowGuardContainer.appendChild(this._scrollbar.getDomNode()),this._overflowGuardContainer.appendChild(d.getDomNode()),this._overflowGuardContainer.appendChild(this._textAreaHandler.textArea),this._overflowGuardContainer.appendChild(this._textAreaHandler.textAreaCover),this._overflowGuardContainer.appendChild(this._overlayWidgets.getDomNode()),this._overflowGuardContainer.appendChild(_.getDomNode()),this._overflowGuardContainer.appendChild(p.domNode),this.domNode.appendChild(this._overflowGuardContainer),r?(r.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode.domNode),r.appendChild(this._overlayWidgets.overflowingOverlayWidgetsDomNode.domNode)):(this.domNode.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode),this.domNode.appendChild(this._overlayWidgets.overflowingOverlayWidgetsDomNode)),this._applyLayout(),this._pointerHandler=this._register(new lne(this._context,l,this._createPointerHandlerHelper()))}_computeGlyphMarginLanes(){const e=this._context.viewModel.model,t=this._context.viewModel.glyphLanes;let i=[],n=0;i=i.concat(e.getAllMarginDecorations().map(s=>{const r=s.options.glyphMargin?.position??Ao.Center;return n=Math.max(n,s.range.endLineNumber),{range:s.range,lane:r,persist:s.options.glyphMargin?.persistLane}})),i=i.concat(this._glyphMarginWidgets.getWidgets().map(s=>{const r=e.validateRange(s.preference.range);return n=Math.max(n,r.endLineNumber),{range:r,lane:s.preference.lane}})),i.sort((s,r)=>I.compareRangesUsingStarts(s.range,r.range)),t.reset(n);for(const s of i)t.push(s.lane,s.range,s.persist);return t}_createPointerHandlerHelper(){return{viewDomNode:this.domNode.domNode,linesContentDomNode:this._linesContent.domNode,viewLinesDomNode:this._viewLines.getDomNode().domNode,focusTextArea:()=>{this.focus()},dispatchTextAreaEvent:e=>{this._textAreaHandler.textArea.domNode.dispatchEvent(e)},getLastRenderData:()=>{const e=this._viewCursors.getLastRenderData()||[],t=this._textAreaHandler.getLastRenderData();return new Yie(e,t)},renderNow:()=>{this.render(!0,!1)},shouldSuppressMouseDownOnViewZone:e=>this._viewZones.shouldSuppressMouseDownOnViewZone(e),shouldSuppressMouseDownOnWidget:e=>this._contentWidgets.shouldSuppressMouseDownOnWidget(e),getPositionFromDOMInfo:(e,t)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getPositionFromDOMInfo(e,t)),visibleRangeForPosition:(e,t)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(new P(e,t))),getLineWidth:e=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getLineWidth(e))}}_createTextAreaHandlerHelper(){return{visibleRangeForPosition:e=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(e))}}_applyLayout(){const t=this._context.configuration.options.get(146);this.domNode.setWidth(t.width),this.domNode.setHeight(t.height),this._overflowGuardContainer.setWidth(t.width),this._overflowGuardContainer.setHeight(t.height),this._linesContent.setWidth(16777216),this._linesContent.setHeight(16777216)}_getEditorClassName(){const e=this._textAreaHandler.isFocused()?" focused":"";return this._context.configuration.options.get(143)+" "+gk(this._context.theme.type)+e}handleEvents(e){super.handleEvents(e),this._scheduleRender()}onConfigurationChanged(e){return this.domNode.setClassName(this._getEditorClassName()),this._applyLayout(),!1}onCursorStateChanged(e){return this._selections=e.selections,!1}onDecorationsChanged(e){return e.affectsGlyphMargin&&(this._shouldRecomputeGlyphMarginLanes=!0),!1}onFocusChanged(e){return this.domNode.setClassName(this._getEditorClassName()),!1}onThemeChanged(e){return this._context.theme.update(e.theme),this.domNode.setClassName(this._getEditorClassName()),!1}dispose(){this._renderAnimationFrame!==null&&(this._renderAnimationFrame.dispose(),this._renderAnimationFrame=null),this._contentWidgets.overflowingContentWidgetsDomNode.domNode.remove(),this._context.removeEventHandler(this),this._viewLines.dispose();for(const e of this._viewParts)e.dispose();super.dispose()}_scheduleRender(){if(this._store.isDisposed)throw new nt;if(this._renderAnimationFrame===null){const e=this._createCoordinatedRendering();this._renderAnimationFrame=AI.INSTANCE.scheduleCoordinatedRendering({window:fe(this.domNode?.domNode),prepareRenderText:()=>{if(this._store.isDisposed)throw new nt;try{return e.prepareRenderText()}finally{this._renderAnimationFrame=null}},renderText:()=>{if(this._store.isDisposed)throw new nt;return e.renderText()},prepareRender:(t,i)=>{if(this._store.isDisposed)throw new nt;return e.prepareRender(t,i)},render:(t,i)=>{if(this._store.isDisposed)throw new nt;return e.render(t,i)}})}}_flushAccumulatedAndRenderNow(){const e=this._createCoordinatedRendering();cc(()=>e.prepareRenderText());const t=cc(()=>e.renderText());if(t){const[i,n]=t;cc(()=>e.prepareRender(i,n)),cc(()=>e.render(i,n))}}_getViewPartsToRender(){const e=[];let t=0;for(const i of this._viewParts)i.shouldRender()&&(e[t++]=i);return e}_createCoordinatedRendering(){return{prepareRenderText:()=>{if(this._shouldRecomputeGlyphMarginLanes){this._shouldRecomputeGlyphMarginLanes=!1;const e=this._computeGlyphMarginLanes();this._context.configuration.setGlyphMarginDecorationLaneCount(e.requiredLanes)}lc.onRenderStart()},renderText:()=>{if(!this.domNode.domNode.isConnected)return null;let e=this._getViewPartsToRender();if(!this._viewLines.shouldRender()&&e.length===0)return null;const t=this._context.viewLayout.getLinesViewportData();this._context.viewModel.setViewport(t.startLineNumber,t.endLineNumber,t.centeredLineNumber);const i=new Nse(this._selections,t,this._context.viewLayout.getWhitespaceViewportData(),this._context.viewModel);return this._contentWidgets.shouldRender()&&this._contentWidgets.onBeforeRender(i),this._viewLines.shouldRender()&&(this._viewLines.renderText(i),this._viewLines.onDidRender(),e=this._getViewPartsToRender()),[e,new Uie(this._context.viewLayout,i,this._viewLines)]},prepareRender:(e,t)=>{for(const i of e)i.prepareRender(t)},render:(e,t)=>{for(const i of e)i.render(t),i.onDidRender()}}}delegateVerticalScrollbarPointerDown(e){this._scrollbar.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){this._scrollbar.delegateScrollFromMouseWheelEvent(e)}restoreState(e){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:e.scrollTop,scrollLeft:e.scrollLeft},1),this._context.viewModel.visibleLinesStabilized()}getOffsetForColumn(e,t){const i=this._context.viewModel.model.validatePosition({lineNumber:e,column:t}),n=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(i);this._flushAccumulatedAndRenderNow();const s=this._viewLines.visibleRangeForPosition(new P(n.lineNumber,n.column));return s?s.left:-1}getTargetAtClientPoint(e,t){const i=this._pointerHandler.getTargetAtClientPoint(e,t);return i?Iy.convertViewToModelMouseTarget(i,this._context.viewModel.coordinatesConverter):null}createOverviewRuler(e){return new vse(this._context,e)}change(e){this._viewZones.changeViewZones(e),this._scheduleRender()}render(e,t){if(t){this._viewLines.forceShouldRender();for(const i of this._viewParts)i.forceShouldRender()}e?this._flushAccumulatedAndRenderNow():this._scheduleRender()}writeScreenReaderContent(e){this._textAreaHandler.writeScreenReaderContent(e)}focus(){this._textAreaHandler.focusTextArea()}isFocused(){return this._textAreaHandler.isFocused()}setAriaOptions(e){this._textAreaHandler.setAriaOptions(e)}addContentWidget(e){this._contentWidgets.addWidget(e.widget),this.layoutContentWidget(e),this._scheduleRender()}layoutContentWidget(e){this._contentWidgets.setWidgetPosition(e.widget,e.position?.position??null,e.position?.secondaryPosition??null,e.position?.preference??null,e.position?.positionAffinity??null),this._scheduleRender()}removeContentWidget(e){this._contentWidgets.removeWidget(e.widget),this._scheduleRender()}addOverlayWidget(e){this._overlayWidgets.addWidget(e.widget),this.layoutOverlayWidget(e),this._scheduleRender()}layoutOverlayWidget(e){this._overlayWidgets.setWidgetPosition(e.widget,e.position)&&this._scheduleRender()}removeOverlayWidget(e){this._overlayWidgets.removeWidget(e.widget),this._scheduleRender()}addGlyphMarginWidget(e){this._glyphMarginWidgets.addWidget(e.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}layoutGlyphMarginWidget(e){const t=e.position;this._glyphMarginWidgets.setWidgetPosition(e.widget,t)&&(this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender())}removeGlyphMarginWidget(e){this._glyphMarginWidgets.removeWidget(e.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}};RI=Rse([Ase(6,ke)],RI);function cc(o){try{return o()}catch(e){return Ze(e),null}}const s0=class s0{constructor(){this._coordinatedRenderings=[],this._animationFrameRunners=new Map}scheduleCoordinatedRendering(e){return this._coordinatedRenderings.push(e),this._scheduleRender(e.window),{dispose:()=>{const t=this._coordinatedRenderings.indexOf(e);if(t!==-1&&(this._coordinatedRenderings.splice(t,1),this._coordinatedRenderings.length===0)){for(const[i,n]of this._animationFrameRunners)n.dispose();this._animationFrameRunners.clear()}}}}_scheduleRender(e){if(!this._animationFrameRunners.has(e)){const t=()=>{this._animationFrameRunners.delete(e),this._onRenderScheduled()};this._animationFrameRunners.set(e,pC(e,t,100))}}_onRenderScheduled(){const e=this._coordinatedRenderings.slice(0);this._coordinatedRenderings=[];for(const i of e)cc(()=>i.prepareRenderText());const t=[];for(let i=0,n=e.length;is.renderText())}for(let i=0,n=e.length;is.prepareRender(a,l))}for(let i=0,n=e.length;is.render(a,l))}}};s0.INSTANCE=new s0;let AI=s0;class pp{constructor(e,t,i,n,s){this.injectionOffsets=e,this.injectionOptions=t,this.breakOffsets=i,this.breakOffsetsVisibleColumn=n,this.wrappedTextIndentLength=s}getOutputLineCount(){return this.breakOffsets.length}getMinOutputOffset(e){return e>0?this.wrappedTextIndentLength:0}getLineLength(e){const t=e>0?this.breakOffsets[e-1]:0;let n=this.breakOffsets[e]-t;return e>0&&(n+=this.wrappedTextIndentLength),n}getMaxOutputOffset(e){return this.getLineLength(e)}translateToInputOffset(e,t){e>0&&(t=Math.max(0,t-this.wrappedTextIndentLength));let n=e===0?t:this.breakOffsets[e-1]+t;if(this.injectionOffsets!==null)for(let s=0;sthis.injectionOffsets[s];s++)n0?this.breakOffsets[s-1]:0,t===0)if(e<=r)n=s-1;else if(e>l)i=s+1;else break;else if(e=l)i=s+1;else break}let a=e-r;return s>0&&(a+=this.wrappedTextIndentLength),new n1(s,a)}normalizeOutputPosition(e,t,i){if(this.injectionOffsets!==null){const n=this.outputPositionToOffsetInInputWithInjections(e,t),s=this.normalizeOffsetInInputWithInjectionsAroundInjections(n,i);if(s!==n)return this.offsetInInputWithInjectionsToOutputPosition(s,i)}if(i===0){if(e>0&&t===this.getMinOutputOffset(e))return new n1(e-1,this.getMaxOutputOffset(e-1))}else if(i===1){const n=this.getOutputLineCount()-1;if(e0&&(t=Math.max(0,t-this.wrappedTextIndentLength)),(e>0?this.breakOffsets[e-1]:0)+t}normalizeOffsetInInputWithInjectionsAroundInjections(e,t){const i=this.getInjectedTextAtOffset(e);if(!i)return e;if(t===2){if(e===i.offsetInInputWithInjections+i.length&&$O(this.injectionOptions[i.injectedTextIndex].cursorStops))return i.offsetInInputWithInjections+i.length;{let n=i.offsetInInputWithInjections;if(KO(this.injectionOptions[i.injectedTextIndex].cursorStops))return n;let s=i.injectedTextIndex-1;for(;s>=0&&this.injectionOffsets[s]===this.injectionOffsets[i.injectedTextIndex]&&!($O(this.injectionOptions[s].cursorStops)||(n-=this.injectionOptions[s].content.length,KO(this.injectionOptions[s].cursorStops)));)s--;return n}}else if(t===1||t===4){let n=i.offsetInInputWithInjections+i.length,s=i.injectedTextIndex;for(;s+1=0&&this.injectionOffsets[s-1]===this.injectionOffsets[s];)n-=this.injectionOptions[s-1].content.length,s--;return n}z0()}getInjectedText(e,t){const i=this.outputPositionToOffsetInInputWithInjections(e,t),n=this.getInjectedTextAtOffset(i);return n?{options:this.injectionOptions[n.injectedTextIndex]}:null}getInjectedTextAtOffset(e){const t=this.injectionOffsets,i=this.injectionOptions;if(t!==null){let n=0;for(let s=0;se)break;if(e<=l)return{injectedTextIndex:s,offsetInInputWithInjections:a,length:r};n+=r}}}}function $O(o){return o==null?!0:o===gr.Right||o===gr.Both}function KO(o){return o==null?!0:o===gr.Left||o===gr.Both}class n1{constructor(e,t){this.outputLineIndex=e,this.outputOffset=t}toString(){return`${this.outputLineIndex}:${this.outputOffset}`}toPosition(e){return new P(e+this.outputLineIndex,this.outputOffset+1)}}const Pse=Kc("domLineBreaksComputer",{createHTML:o=>o});class q2{static create(e){return new q2(new WeakRef(e))}constructor(e){this.targetWindow=e}createLineBreaksComputer(e,t,i,n,s){const r=[],a=[];return{addRequest:(l,c,d)=>{r.push(l),a.push(c)},finalize:()=>Ose(A5(this.targetWindow.deref()),r,e,t,i,n,s,a)}}}function Ose(o,e,t,i,n,s,r,a){function l(N){const H=a[N];if(H){const F=_r.applyInjectedText(e[N],H),W=H.map(B=>B.options),j=H.map(B=>B.column-1);return new pp(j,W,[F.length],[],0)}else return null}if(n===-1){const N=[];for(let H=0,F=e.length;Hc?(F=0,W=0):j=c-ne}const B=H.substr(F),G=Fse(B,W,i,j,g,u);p[N]=F,_[N]=W,b[N]=B,C[N]=G[0],w[N]=G[1]}const v=g.build(),y=Pse?.createHTML(v)??v;f.innerHTML=y,f.style.position="absolute",f.style.top="10000",r==="keepAll"?(f.style.wordBreak="keep-all",f.style.overflowWrap="anywhere"):(f.style.wordBreak="inherit",f.style.overflowWrap="break-word"),o.document.body.appendChild(f);const x=document.createRange(),L=Array.prototype.slice.call(f.children,0),E=[];for(let N=0;Nse.options),ae=de.map(se=>se.column-1)):(ne=null,ae=null),E[N]=new pp(ae,ne,F,G,j)}return f.remove(),E}function Fse(o,e,t,i,n,s){if(s!==0){const u=String(s);n.appendString('
    ');const r=o.length;let a=e,l=0;const c=[],d=[];let h=0");for(let u=0;u"),c[u]=l,d[u]=a;const f=h;h=u+1"),c[o.length]=l,d[o.length]=a,n.appendString("
    "),[c,d]}function Bse(o,e,t,i){if(t.length<=1)return null;const n=Array.prototype.slice.call(e.children,0),s=[];try{PI(o,n,i,0,null,t.length-1,null,s)}catch(r){return console.log(r),null}return s.length===0?null:(s.push(t.length),s)}function PI(o,e,t,i,n,s,r,a){if(i===s||(n=n||rL(o,e,t[i],t[i+1]),r=r||rL(o,e,t[s],t[s+1]),Math.abs(n[0].top-r[0].top)<=.1))return;if(i+1===s){a.push(s);return}const l=i+(s-i)/2|0,c=rL(o,e,t[l],t[l+1]);PI(o,e,t,i,n,l,c,a),PI(o,e,t,l,c,s,r,a)}function rL(o,e,t,i){return o.setStart(e[t/16384|0].firstChild,t%16384),o.setEnd(e[i/16384|0].firstChild,i%16384),o.getClientRects()}class Wse extends z{constructor(){super(),this._editor=null,this._instantiationService=null,this._instances=this._register(new RN),this._pending=new Map,this._finishedInstantiation=[],this._finishedInstantiation[0]=!1,this._finishedInstantiation[1]=!1,this._finishedInstantiation[2]=!1,this._finishedInstantiation[3]=!1}initialize(e,t,i){this._editor=e,this._instantiationService=i;for(const n of t){if(this._pending.has(n.id)){Ze(new Error(`Cannot have two contributions with the same id ${n.id}`));continue}this._pending.set(n.id,n)}this._instantiateSome(0),this._register(kb(fe(this._editor.getDomNode()),()=>{this._instantiateSome(1)})),this._register(kb(fe(this._editor.getDomNode()),()=>{this._instantiateSome(2)})),this._register(kb(fe(this._editor.getDomNode()),()=>{this._instantiateSome(3)},5e3))}saveViewState(){const e={};for(const[t,i]of this._instances)typeof i.saveViewState=="function"&&(e[t]=i.saveViewState());return e}restoreViewState(e){for(const[t,i]of this._instances)typeof i.restoreViewState=="function"&&i.restoreViewState(e[t])}get(e){return this._instantiateById(e),this._instances.get(e)||null}onBeforeInteractionEvent(){this._instantiateSome(2)}onAfterModelAttached(){return kb(fe(this._editor?.getDomNode()),()=>{this._instantiateSome(1)},50)}_instantiateSome(e){if(this._finishedInstantiation[e])return;this._finishedInstantiation[e]=!0;const t=this._findPendingContributionsByInstantiation(e);for(const i of t)this._instantiateById(i.id)}_findPendingContributionsByInstantiation(e){const t=[];for(const[,i]of this._pending)i.instantiation===e&&t.push(i);return t}_instantiateById(e){const t=this._pending.get(e);if(t){if(this._pending.delete(e),!this._instantiationService||!this._editor)throw new Error("Cannot instantiate contributions before being initialized!");try{const i=this._instantiationService.createInstance(t.ctor,this._editor);this._instances.set(t.id,i),typeof i.restoreViewState=="function"&&t.instantiation!==0&&console.warn(`Editor contribution '${t.id}' should be eager instantiated because it uses saveViewState / restoreViewState.`)}catch(i){Ze(i)}}}}class N8{constructor(e,t,i,n,s,r,a){this.id=e,this.label=t,this.alias=i,this.metadata=n,this._precondition=s,this._run=r,this._contextKeyService=a}isSupported(){return this._contextKeyService.contextMatchesRules(this._precondition)}run(e){return this.isSupported()?this._run(e):Promise.resolve(void 0)}}class G2{static create(e){return new G2(e.get(135),e.get(134))}constructor(e,t){this.classifier=new Hse(e,t)}createLineBreaksComputer(e,t,i,n,s){const r=[],a=[],l=[];return{addRequest:(c,d,h)=>{r.push(c),a.push(d),l.push(h)},finalize:()=>{const c=e.typicalFullwidthCharacterWidth/e.typicalHalfwidthCharacterWidth,d=[];for(let h=0,u=r.length;h=0&&e<256?this._asciiMap[e]:e>=12352&&e<=12543||e>=13312&&e<=19903||e>=19968&&e<=40959?3:this._map.get(e)||this._defaultValue}}let OI=[],FI=[];function Vse(o,e,t,i,n,s,r,a){if(n===-1)return null;const l=t.length;if(l<=1)return null;const c=a==="keepAll",d=e.breakOffsets,h=e.breakOffsetsVisibleColumn,u=T8(t,i,n,s,r),f=n-u,g=OI,p=FI;let _=0,b=0,C=0,w=n;const v=d.length;let y=0;if(y>=0){let x=Math.abs(h[y]-w);for(;y+1=x)break;x=L,y++}}for(;yx&&(x=b,L=C);let E=0,N=0,H=0,F=0;if(L<=w){let j=L,B=x===0?0:t.charCodeAt(x-1),G=x===0?0:o.get(B),ne=!0;for(let ae=x;aeb&&BI(B,G,se,be,c)&&(E=de,N=j),j+=we,j>w){de>b?(H=de,F=j-we):(H=ae+1,F=j),j-N>f&&(E=0),ne=!1;break}B=se,G=be}if(ne){_>0&&(g[_]=d[d.length-1],p[_]=h[d.length-1],_++);break}}if(E===0){let j=L,B=t.charCodeAt(x),G=o.get(B),ne=!1;for(let ae=x-1;ae>=b;ae--){const de=ae+1,se=t.charCodeAt(ae);if(se===9){ne=!0;break}let be,we;if(Mh(se)?(ae--,be=0,we=2):(be=o.get(se),we=Rc(se)?s:1),j<=w){if(H===0&&(H=de,F=j),j<=w-f)break;if(BI(se,be,B,G,c)){E=de,N=j;break}}j-=we,B=se,G=be}if(E!==0){const ae=f-(F-N);if(ae<=i){const de=t.charCodeAt(H);let se;wi(de)?se=2:se=_p(de,F,i,s),ae-se<0&&(E=0)}}if(ne){y--;continue}}if(E===0&&(E=H,N=F),E<=b){const j=t.charCodeAt(b);wi(j)?(E=b+2,N=C+2):(E=b+1,N=C+_p(j,C,i,s))}for(b=E,g[_]=E,C=N,p[_]=N,_++,w=N+f;y<0||y=W)break;W=j,y++}}return _===0?null:(g.length=_,p.length=_,OI=e.breakOffsets,FI=e.breakOffsetsVisibleColumn,e.breakOffsets=g,e.breakOffsetsVisibleColumn=p,e.wrappedTextIndentLength=u,e)}function zse(o,e,t,i,n,s,r,a){const l=_r.applyInjectedText(e,t);let c,d;if(t&&t.length>0?(c=t.map(N=>N.options),d=t.map(N=>N.column-1)):(c=null,d=null),n===-1)return c?new pp(d,c,[l.length],[],0):null;const h=l.length;if(h<=1)return c?new pp(d,c,[l.length],[],0):null;const u=a==="keepAll",f=T8(l,i,n,s,r),g=n-f,p=[],_=[];let b=0,C=0,w=0,v=n,y=l.charCodeAt(0),x=o.get(y),L=_p(y,0,i,s),E=1;wi(y)&&(L+=1,y=l.charCodeAt(1),x=o.get(y),E++);for(let N=E;Nv&&((C===0||L-w>g)&&(C=H,w=L-j),p[b]=C,_[b]=w,b++,v=w+g,C=0),y=F,x=W}return b===0&&(!t||t.length===0)?null:(p[b]=h,_[b]=L,new pp(d,c,p,_,f))}function _p(o,e,t,i){return o===9?t-e%t:Rc(o)||o<32?i:1}function jO(o,e){return e-o%e}function BI(o,e,t,i,n){return t!==32&&(e===2&&i!==2||e!==1&&i===1||!n&&e===3&&i!==2||!n&&i===3&&e!==1)}function T8(o,e,t,i,n){let s=0;if(n!==0){const r=zn(o);if(r!==-1){for(let l=0;lt&&(s=0)}}return s}class Fv{constructor(e){this._selTrackedRange=null,this._trackSelection=!0,this._setState(e,new Ri(new I(1,1,1,1),0,0,new P(1,1),0),new Ri(new I(1,1,1,1),0,0,new P(1,1),0))}dispose(e){this._removeTrackedRange(e)}startTrackingSelection(e){this._trackSelection=!0,this._updateTrackedRange(e)}stopTrackingSelection(e){this._trackSelection=!1,this._removeTrackedRange(e)}_updateTrackedRange(e){this._trackSelection&&(this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,this.modelState.selection,0))}_removeTrackedRange(e){this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,null,0)}asCursorState(){return new Ke(this.modelState,this.viewState)}readSelectionFromMarkers(e){const t=e.model._getTrackedRange(this._selTrackedRange);return this.modelState.selection.isEmpty()&&!t.isEmpty()?Fe.fromRange(t.collapseToEnd(),this.modelState.selection.getDirection()):Fe.fromRange(t,this.modelState.selection.getDirection())}ensureValidState(e){this._setState(e,this.modelState,this.viewState)}setState(e,t,i){this._setState(e,t,i)}static _validatePositionWithCache(e,t,i,n){return t.equals(i)?n:e.normalizePosition(t,2)}static _validateViewState(e,t){const i=t.position,n=t.selectionStart.getStartPosition(),s=t.selectionStart.getEndPosition(),r=e.normalizePosition(i,2),a=this._validatePositionWithCache(e,n,i,r),l=this._validatePositionWithCache(e,s,n,a);return i.equals(r)&&n.equals(a)&&s.equals(l)?t:new Ri(I.fromPositions(a,l),t.selectionStartKind,t.selectionStartLeftoverVisibleColumns+n.column-a.column,r,t.leftoverVisibleColumns+i.column-r.column)}_setState(e,t,i){if(i&&(i=Fv._validateViewState(e.viewModel,i)),t){const n=e.model.validateRange(t.selectionStart),s=t.selectionStart.equalsRange(n)?t.selectionStartLeftoverVisibleColumns:0,r=e.model.validatePosition(t.position),a=t.position.equals(r)?t.leftoverVisibleColumns:0;t=new Ri(n,t.selectionStartKind,s,r,a)}else{if(!i)return;const n=e.model.validateRange(e.coordinatesConverter.convertViewRangeToModelRange(i.selectionStart)),s=e.model.validatePosition(e.coordinatesConverter.convertViewPositionToModelPosition(i.position));t=new Ri(n,i.selectionStartKind,i.selectionStartLeftoverVisibleColumns,s,i.leftoverVisibleColumns)}if(i){const n=e.coordinatesConverter.validateViewRange(i.selectionStart,t.selectionStart),s=e.coordinatesConverter.validateViewPosition(i.position,t.position);i=new Ri(n,t.selectionStartKind,t.selectionStartLeftoverVisibleColumns,s,t.leftoverVisibleColumns)}else{const n=e.coordinatesConverter.convertModelPositionToViewPosition(new P(t.selectionStart.startLineNumber,t.selectionStart.startColumn)),s=e.coordinatesConverter.convertModelPositionToViewPosition(new P(t.selectionStart.endLineNumber,t.selectionStart.endColumn)),r=new I(n.lineNumber,n.column,s.lineNumber,s.column),a=e.coordinatesConverter.convertModelPositionToViewPosition(t.position);i=new Ri(r,t.selectionStartKind,t.selectionStartLeftoverVisibleColumns,a,t.leftoverVisibleColumns)}this.modelState=t,this.viewState=i,this._updateTrackedRange(e)}}class qO{constructor(e){this.context=e,this.cursors=[new Fv(e)],this.lastAddedCursorIndex=0}dispose(){for(const e of this.cursors)e.dispose(this.context)}startTrackingSelections(){for(const e of this.cursors)e.startTrackingSelection(this.context)}stopTrackingSelections(){for(const e of this.cursors)e.stopTrackingSelection(this.context)}updateContext(e){this.context=e}ensureValidState(){for(const e of this.cursors)e.ensureValidState(this.context)}readSelectionFromMarkers(){return this.cursors.map(e=>e.readSelectionFromMarkers(this.context))}getAll(){return this.cursors.map(e=>e.asCursorState())}getViewPositions(){return this.cursors.map(e=>e.viewState.position)}getTopMostViewPosition(){return UU(this.cursors,rs(e=>e.viewState.position,P.compare)).viewState.position}getBottomMostViewPosition(){return zU(this.cursors,rs(e=>e.viewState.position,P.compare)).viewState.position}getSelections(){return this.cursors.map(e=>e.modelState.selection)}getViewSelections(){return this.cursors.map(e=>e.viewState.selection)}setSelections(e){this.setStates(Ke.fromModelSelections(e))}getPrimaryCursor(){return this.cursors[0].asCursorState()}setStates(e){e!==null&&(this.cursors[0].setState(this.context,e[0].modelState,e[0].viewState),this._setSecondaryStates(e.slice(1)))}_setSecondaryStates(e){const t=this.cursors.length-1,i=e.length;if(ti){const n=t-i;for(let s=0;s=e+1&&this.lastAddedCursorIndex--,this.cursors[e+1].dispose(this.context),this.cursors.splice(e+1,1)}normalize(){if(this.cursors.length===1)return;const e=this.cursors.slice(0),t=[];for(let i=0,n=e.length;ii.selection,I.compareRangesUsingStarts));for(let i=0;ih&&p.index--;e.splice(h,1),t.splice(d,1),this._removeSecondaryCursor(h-1),i--}}}}class GO{constructor(e,t,i,n){this._cursorContextBrand=void 0,this.model=e,this.viewModel=t,this.coordinatesConverter=i,this.cursorConfig=n}}class Use{constructor(){this.type=0}}class $se{constructor(){this.type=1}}class Kse{constructor(e){this.type=2,this._source=e}hasChanged(e){return this._source.hasChanged(e)}}class jse{constructor(e,t,i){this.selections=e,this.modelSelections=t,this.reason=i,this.type=3}}class rd{constructor(e){this.type=4,e?(this.affectsMinimap=e.affectsMinimap,this.affectsOverviewRuler=e.affectsOverviewRuler,this.affectsGlyphMargin=e.affectsGlyphMargin,this.affectsLineNumber=e.affectsLineNumber):(this.affectsMinimap=!0,this.affectsOverviewRuler=!0,this.affectsGlyphMargin=!0,this.affectsLineNumber=!0)}}class s1{constructor(){this.type=5}}class qse{constructor(e){this.type=6,this.isFocused=e}}class Gse{constructor(){this.type=7}}class o1{constructor(){this.type=8}}class M8{constructor(e,t){this.fromLineNumber=e,this.count=t,this.type=9}}class WI{constructor(e,t){this.type=10,this.fromLineNumber=e,this.toLineNumber=t}}class HI{constructor(e,t){this.type=11,this.fromLineNumber=e,this.toLineNumber=t}}class bp{constructor(e,t,i,n,s,r,a){this.source=e,this.minimalReveal=t,this.range=i,this.selections=n,this.verticalType=s,this.revealHorizontal=r,this.scrollType=a,this.type=12}}class Zse{constructor(e){this.type=13,this.scrollWidth=e.scrollWidth,this.scrollLeft=e.scrollLeft,this.scrollHeight=e.scrollHeight,this.scrollTop=e.scrollTop,this.scrollWidthChanged=e.scrollWidthChanged,this.scrollLeftChanged=e.scrollLeftChanged,this.scrollHeightChanged=e.scrollHeightChanged,this.scrollTopChanged=e.scrollTopChanged}}class Yse{constructor(e){this.theme=e,this.type=14}}class Qse{constructor(e){this.type=15,this.ranges=e}}class Xse{constructor(){this.type=16}}let Jse=class{constructor(){this.type=17}};class eoe extends z{constructor(){super(),this._onEvent=this._register(new A),this.onEvent=this._onEvent.event,this._eventHandlers=[],this._viewEventQueue=null,this._isConsumingViewEventQueue=!1,this._collector=null,this._collectorCnt=0,this._outgoingEvents=[]}emitOutgoingEvent(e){this._addOutgoingEvent(e),this._emitOutgoingEvents()}_addOutgoingEvent(e){for(let t=0,i=this._outgoingEvents.length;t0;){if(this._collector||this._isConsumingViewEventQueue)return;const e=this._outgoingEvents.shift();e.isNoOp()||this._onEvent.fire(e)}}addViewEventHandler(e){for(let t=0,i=this._eventHandlers.length;t0&&this._emitMany(t)}this._emitOutgoingEvents()}emitSingleViewEvent(e){try{this.beginEmitViewEvents().emitViewEvent(e)}finally{this.endEmitViewEvents()}}_emitMany(e){this._viewEventQueue?this._viewEventQueue=this._viewEventQueue.concat(e):this._viewEventQueue=e,this._isConsumingViewEventQueue||this._consumeViewEventQueue()}_consumeViewEventQueue(){try{this._isConsumingViewEventQueue=!0,this._doConsumeQueue()}finally{this._isConsumingViewEventQueue=!1}}_doConsumeQueue(){for(;this._viewEventQueue;){const e=this._viewEventQueue;this._viewEventQueue=null;const t=this._eventHandlers.slice(0);for(const i of t)i.handleEvents(e)}}}class toe{constructor(){this.viewEvents=[],this.outgoingEvents=[]}emitViewEvent(e){this.viewEvents.push(e)}emitOutgoingEvent(e){this.outgoingEvents.push(e)}}class Z2{constructor(e,t,i,n){this.kind=0,this._oldContentWidth=e,this._oldContentHeight=t,this.contentWidth=i,this.contentHeight=n,this.contentWidthChanged=this._oldContentWidth!==this.contentWidth,this.contentHeightChanged=this._oldContentHeight!==this.contentHeight}isNoOp(){return!this.contentWidthChanged&&!this.contentHeightChanged}attemptToMerge(e){return e.kind!==this.kind?null:new Z2(this._oldContentWidth,this._oldContentHeight,e.contentWidth,e.contentHeight)}}class Y2{constructor(e,t){this.kind=1,this.oldHasFocus=e,this.hasFocus=t}isNoOp(){return this.oldHasFocus===this.hasFocus}attemptToMerge(e){return e.kind!==this.kind?null:new Y2(this.oldHasFocus,e.hasFocus)}}class Q2{constructor(e,t,i,n,s,r,a,l){this.kind=2,this._oldScrollWidth=e,this._oldScrollLeft=t,this._oldScrollHeight=i,this._oldScrollTop=n,this.scrollWidth=s,this.scrollLeft=r,this.scrollHeight=a,this.scrollTop=l,this.scrollWidthChanged=this._oldScrollWidth!==this.scrollWidth,this.scrollLeftChanged=this._oldScrollLeft!==this.scrollLeft,this.scrollHeightChanged=this._oldScrollHeight!==this.scrollHeight,this.scrollTopChanged=this._oldScrollTop!==this.scrollTop}isNoOp(){return!this.scrollWidthChanged&&!this.scrollLeftChanged&&!this.scrollHeightChanged&&!this.scrollTopChanged}attemptToMerge(e){return e.kind!==this.kind?null:new Q2(this._oldScrollWidth,this._oldScrollLeft,this._oldScrollHeight,this._oldScrollTop,e.scrollWidth,e.scrollLeft,e.scrollHeight,e.scrollTop)}}class ioe{constructor(){this.kind=3}isNoOp(){return!1}attemptToMerge(e){return e.kind!==this.kind?null:this}}class noe{constructor(){this.kind=4}isNoOp(){return!1}attemptToMerge(e){return e.kind!==this.kind?null:this}}class Bv{constructor(e,t,i,n,s,r,a){this.kind=6,this.oldSelections=e,this.selections=t,this.oldModelVersionId=i,this.modelVersionId=n,this.source=s,this.reason=r,this.reachedMaxCursorCount=a}static _selectionsAreEqual(e,t){if(!e&&!t)return!0;if(!e||!t)return!1;const i=e.length,n=t.length;if(i!==n)return!1;for(let s=0;s0){const e=this._cursors.getSelections();for(let t=0;tr&&(n=n.slice(0,r),s=!0);const a=Cp.from(this._model,this);return this._cursors.setStates(n),this._cursors.normalize(),this._columnSelectData=null,this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(e,t,i,a,s)}setCursorColumnSelectData(e){this._columnSelectData=e}revealAll(e,t,i,n,s,r){const a=this._cursors.getViewPositions();let l=null,c=null;a.length>1?c=this._cursors.getViewSelections():l=I.fromPositions(a[0],a[0]),e.emitViewEvent(new bp(t,i,l,c,n,s,r))}revealPrimary(e,t,i,n,s,r){const l=[this._cursors.getPrimaryCursor().viewState.selection];e.emitViewEvent(new bp(t,i,null,l,n,s,r))}saveState(){const e=[],t=this._cursors.getSelections();for(let i=0,n=t.length;i0){const s=Ke.fromModelSelections(i.resultingSelection);this.setStates(e,"modelChange",i.isUndoing?5:i.isRedoing?6:2,s)&&this.revealAll(e,"modelChange",!1,0,!0,0)}else{const s=this._cursors.readSelectionFromMarkers();this.setStates(e,"modelChange",2,Ke.fromModelSelections(s))}}}getSelection(){return this._cursors.getPrimaryCursor().modelState.selection}getTopMostViewPosition(){return this._cursors.getTopMostViewPosition()}getBottomMostViewPosition(){return this._cursors.getBottomMostViewPosition()}getCursorColumnSelectData(){if(this._columnSelectData)return this._columnSelectData;const e=this._cursors.getPrimaryCursor(),t=e.viewState.selectionStart.getStartPosition(),i=e.viewState.position;return{isReal:!1,fromViewLineNumber:t.lineNumber,fromViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,t),toViewLineNumber:i.lineNumber,toViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,i)}}getSelections(){return this._cursors.getSelections()}setSelections(e,t,i,n){this.setStates(e,t,n,Ke.fromModelSelections(i))}getPrevEditOperationType(){return this._prevEditOperationType}setPrevEditOperationType(e){this._prevEditOperationType=e}_pushAutoClosedAction(e,t){const i=[],n=[];for(let a=0,l=e.length;a0&&this._pushAutoClosedAction(i,n),this._prevEditOperationType=e.type}e.shouldPushStackElementAfter&&this._model.pushStackElement()}_interpretCommandResult(e){(!e||e.length===0)&&(e=this._cursors.readSelectionFromMarkers()),this._columnSelectData=null,this._cursors.setSelections(e),this._cursors.normalize()}_emitStateChangedIfNecessary(e,t,i,n,s){const r=Cp.from(this._model,this);if(r.equals(n))return!1;const a=this._cursors.getSelections(),l=this._cursors.getViewSelections();if(e.emitViewEvent(new jse(l,a,i)),!n||n.cursorState.length!==r.cursorState.length||r.cursorState.some((c,d)=>!c.modelState.equals(n.cursorState[d].modelState))){const c=n?n.cursorState.map(h=>h.modelState.selection):null,d=n?n.modelVersionId:0;e.emitOutgoingEvent(new Bv(c,a,d,r.modelVersionId,t||"keyboard",i,s))}return!0}_findAutoClosingPairs(e){if(!e.length)return null;const t=[];for(let i=0,n=e.length;i=0)return null;const r=s.text.match(/([)\]}>'"`])([^)\]}>'"`]*)$/);if(!r)return null;const a=r[1],l=this.context.cursorConfig.autoClosingPairs.autoClosingPairsCloseSingleChar.get(a);if(!l||l.length!==1)return null;const c=l[0].open,d=s.text.length-r[2].length-1,h=s.text.lastIndexOf(c,d-1);if(h===-1)return null;t.push([h,d])}return t}executeEdits(e,t,i,n){let s=null;t==="snippet"&&(s=this._findAutoClosingPairs(i)),s&&(i[0]._isTracked=!0);const r=[],a=[],l=this._model.pushEditOperations(this.getSelections(),i,c=>{if(s)for(let h=0,u=s.length;h0&&this._pushAutoClosedAction(r,a)}_executeEdit(e,t,i,n=0){if(this.context.cursorConfig.readOnly)return;const s=Cp.from(this._model,this);this._cursors.stopTrackingSelections(),this._isHandling=!0;try{this._cursors.ensureValidState(),e()}catch(r){Ze(r)}this._isHandling=!1,this._cursors.startTrackingSelections(),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(t,i,n,s,!1)&&this.revealAll(t,i,!1,0,!0,0)}getAutoClosedCharacters(){return ZO.getAllAutoClosedCharacters(this._autoClosedActions)}startComposition(e){this._compositionState=new vp(this._model,this.getSelections())}endComposition(e,t){const i=this._compositionState?this._compositionState.deduceOutcome(this._model,this.getSelections()):null;this._compositionState=null,this._executeEdit(()=>{t==="keyboard"&&this._executeEditOperation(Ed.compositionEndWithInterceptors(this._prevEditOperationType,this.context.cursorConfig,this._model,i,this.getSelections(),this.getAutoClosedCharacters()))},e,t)}type(e,t,i){this._executeEdit(()=>{if(i==="keyboard"){const n=t.length;let s=0;for(;s{const c=l.getPosition();return new Fe(c.lineNumber,c.column+s,c.lineNumber,c.column+s)});this.setSelections(e,r,a,0)}return}this._executeEdit(()=>{this._executeEditOperation(Ed.compositionType(this._prevEditOperationType,this.context.cursorConfig,this._model,this.getSelections(),t,i,n,s))},e,r)}paste(e,t,i,n,s){this._executeEdit(()=>{this._executeEditOperation(Ed.paste(this.context.cursorConfig,this._model,this.getSelections(),t,i,n||[]))},e,s,4)}cut(e,t){this._executeEdit(()=>{this._executeEditOperation(Kh.cut(this.context.cursorConfig,this._model,this.getSelections()))},e,t)}executeCommand(e,t,i){this._executeEdit(()=>{this._cursors.killSecondaryCursors(),this._executeEditOperation(new jn(0,[t],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},e,i)}executeCommands(e,t,i){this._executeEdit(()=>{this._executeEditOperation(new jn(0,t,{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},e,i)}}class Cp{static from(e,t){return new Cp(e.getVersionId(),t.getCursorStates())}constructor(e,t){this.modelVersionId=e,this.cursorState=t}equals(e){if(!e||this.modelVersionId!==e.modelVersionId||this.cursorState.length!==e.cursorState.length)return!1;for(let t=0,i=this.cursorState.length;t=t.length||!t[i].strictContainsRange(e[i]))return!1;return!0}}class uoe{static executeCommands(e,t,i){const n={model:e,selectionsBefore:t,trackedRanges:[],trackedRangesDirection:[]},s=this._innerExecuteCommands(n,i);for(let r=0,a=n.trackedRanges.length;r0&&(r[0]._isTracked=!0);let a=e.model.pushEditOperations(e.selectionsBefore,r,c=>{const d=[];for(let f=0;ff.identifier.minor-g.identifier.minor,u=[];for(let f=0;f0?(d[f].sort(h),u[f]=t[f].computeCursorState(e.model,{getInverseEditOperations:()=>d[f],getTrackedSelection:g=>{const p=parseInt(g,10),_=e.model._getTrackedRange(e.trackedRanges[p]);return e.trackedRangesDirection[p]===0?new Fe(_.startLineNumber,_.startColumn,_.endLineNumber,_.endColumn):new Fe(_.endLineNumber,_.endColumn,_.startLineNumber,_.startColumn)}})):u[f]=e.selectionsBefore[f];return u});a||(a=e.selectionsBefore);const l=[];for(const c in s)s.hasOwnProperty(c)&&l.push(parseInt(c,10));l.sort((c,d)=>d-c);for(const c of l)a.splice(c,1);return a}static _arrayIsEmpty(e){for(let t=0,i=e.length;t{I.isEmpty(h)&&u===""||n.push({identifier:{major:t,minor:s++},range:h,text:u,forceMoveMarkers:f,isAutoWhitespaceEdit:i.insertsAutoWhitespace})};let a=!1;const d={addEditOperation:r,addTrackedEditOperation:(h,u,f)=>{a=!0,r(h,u,f)},trackSelection:(h,u)=>{const f=Fe.liftSelection(h);let g;if(f.isEmpty())if(typeof u=="boolean")u?g=2:g=3;else{const b=e.model.getLineMaxColumn(f.startLineNumber);f.startColumn===b?g=2:g=3}else g=1;const p=e.trackedRanges.length,_=e.model._setTrackedRange(null,f,g);return e.trackedRanges[p]=_,e.trackedRangesDirection[p]=f.getDirection(),p.toString()}};try{i.getEditOperations(e.model,d)}catch(h){return Ze(h),{operations:[],hadTrackedEditOperation:!1}}return{operations:n,hadTrackedEditOperation:a}}static _getLoserCursorMap(e){e=e.slice(0),e.sort((i,n)=>-I.compareRangesUsingEnds(i.range,n.range));const t={};for(let i=1;is.identifier.major?r=n.identifier.major:r=s.identifier.major,t[r.toString()]=!0;for(let a=0;a0&&i--}}return t}}class foe{constructor(e,t,i){this.text=e,this.startSelection=t,this.endSelection=i}}class vp{static _capture(e,t){const i=[];for(const n of t){if(n.startLineNumber!==n.endLineNumber)return null;i.push(new foe(e.getLineContent(n.startLineNumber),n.startColumn-1,n.endColumn-1))}return i}constructor(e,t){this._original=vp._capture(e,t)}deduceOutcome(e,t){if(!this._original)return null;const i=vp._capture(e,t);if(!i||this._original.length!==i.length)return null;const n=[];for(let s=0,r=this._original.length;s>>1;t===e[r].afterLineNumber?i{t=!0,n=n|0,s=s|0,r=r|0,a=a|0;const l=this._instanceId+ ++this._lastWhitespaceId;return this._pendingChanges.insert(new moe(l,n,s,r,a)),l},changeOneWhitespace:(n,s,r)=>{t=!0,s=s|0,r=r|0,this._pendingChanges.change({id:n,newAfterLineNumber:s,newHeight:r})},removeWhitespace:n=>{t=!0,this._pendingChanges.remove({id:n})}})}finally{this._pendingChanges.commit(this)}return t}_commitPendingChanges(e,t,i){if((e.length>0||i.length>0)&&(this._minWidth=-1),e.length+t.length+i.length<=1){for(const l of e)this._insertWhitespace(l);for(const l of t)this._changeOneWhitespace(l.id,l.newAfterLineNumber,l.newHeight);for(const l of i){const c=this._findWhitespaceIndex(l.id);c!==-1&&this._removeWhitespace(c)}return}const n=new Set;for(const l of i)n.add(l.id);const s=new Map;for(const l of t)s.set(l.id,l);const r=l=>{const c=[];for(const d of l)if(!n.has(d.id)){if(s.has(d.id)){const h=s.get(d.id);d.afterLineNumber=h.newAfterLineNumber,d.height=h.newHeight}c.push(d)}return c},a=r(this._arr).concat(r(e));a.sort((l,c)=>l.afterLineNumber===c.afterLineNumber?l.ordinal-c.ordinal:l.afterLineNumber-c.afterLineNumber),this._arr=a,this._prefixSumValidIndex=-1}_checkPendingChanges(){this._pendingChanges.mustCommit()&&this._pendingChanges.commit(this)}_insertWhitespace(e){const t=Cc.findInsertionIndex(this._arr,e.afterLineNumber,e.ordinal);this._arr.splice(t,0,e),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,t-1)}_findWhitespaceIndex(e){const t=this._arr;for(let i=0,n=t.length;it&&(this._arr[i].afterLineNumber-=t-e+1)}}onLinesInserted(e,t){this._checkPendingChanges(),e=e|0,t=t|0,this._lineCount+=t-e+1;for(let i=0,n=this._arr.length;i=t.length||t[a+1].afterLineNumber>=e)return a;i=a+1|0}else n=a-1|0}return-1}_findFirstWhitespaceAfterLineNumber(e){e=e|0;const i=this._findLastWhitespaceBeforeLineNumber(e)+1;return i1?i=this._lineHeight*(e-1):i=0;const n=this.getWhitespaceAccumulatedHeightBeforeLineNumber(e-(t?1:0));return i+n+this._paddingTop}getVerticalOffsetAfterLineNumber(e,t=!1){this._checkPendingChanges(),e=e|0;const i=this._lineHeight*e,n=this.getWhitespaceAccumulatedHeightBeforeLineNumber(e+(t?1:0));return i+n+this._paddingTop}getWhitespaceMinWidth(){if(this._checkPendingChanges(),this._minWidth===-1){let e=0;for(let t=0,i=this._arr.length;tt}isInTopPadding(e){return this._paddingTop===0?!1:(this._checkPendingChanges(),e=t-this._paddingBottom}getLineNumberAtOrAfterVerticalOffset(e){if(this._checkPendingChanges(),e=e|0,e<0)return 1;const t=this._lineCount|0,i=this._lineHeight;let n=1,s=t;for(;n=a+i)n=r+1;else{if(e>=a)return r;s=r}}return n>t?t:n}getLinesViewportData(e,t){this._checkPendingChanges(),e=e|0,t=t|0;const i=this._lineHeight,n=this.getLineNumberAtOrAfterVerticalOffset(e)|0,s=this.getVerticalOffsetForLineNumber(n)|0;let r=this._lineCount|0,a=this.getFirstWhitespaceIndexAfterLineNumber(n)|0;const l=this.getWhitespacesCount()|0;let c,d;a===-1?(a=l,d=r+1,c=0):(d=this.getAfterLineNumberForWhitespaceIndex(a)|0,c=this.getHeightForWhitespaceIndex(a)|0);let h=s,u=h;const f=5e5;let g=0;s>=f&&(g=Math.floor(s/f)*f,g=Math.floor(g/i)*i,u-=g);const p=[],_=e+(t-e)/2;let b=-1;for(let y=n;y<=r;y++){if(b===-1){const x=h,L=h+i;(x<=_&&__)&&(b=y)}for(h+=i,p[y-n]=u,u+=i;d===y;)u+=c,h+=c,a++,a>=l?d=r+1:(d=this.getAfterLineNumberForWhitespaceIndex(a)|0,c=this.getHeightForWhitespaceIndex(a)|0);if(h>=t){r=y;break}}b===-1&&(b=r);const C=this.getVerticalOffsetForLineNumber(r)|0;let w=n,v=r;return wt&&v--,{bigNumbersDelta:g,startLineNumber:n,endLineNumber:r,relativeVerticalOffset:p,centeredLineNumber:b,completelyVisibleStartLineNumber:w,completelyVisibleEndLineNumber:v,lineHeight:this._lineHeight}}getVerticalOffsetForWhitespaceIndex(e){this._checkPendingChanges(),e=e|0;const t=this.getAfterLineNumberForWhitespaceIndex(e);let i;t>=1?i=this._lineHeight*t:i=0;let n;return e>0?n=this.getWhitespacesAccumulatedHeight(e-1):n=0,i+n+this._paddingTop}getWhitespaceIndexAtOrAfterVerticallOffset(e){this._checkPendingChanges(),e=e|0;let t=0,i=this.getWhitespacesCount()-1;if(i<0)return-1;const n=this.getVerticalOffsetForWhitespaceIndex(i),s=this.getHeightForWhitespaceIndex(i);if(e>=n+s)return-1;for(;t=a+l)t=r+1;else{if(e>=a)return r;i=r}}return t}getWhitespaceAtVerticalOffset(e){this._checkPendingChanges(),e=e|0;const t=this.getWhitespaceIndexAtOrAfterVerticallOffset(e);if(t<0||t>=this.getWhitespacesCount())return null;const i=this.getVerticalOffsetForWhitespaceIndex(t);if(i>e)return null;const n=this.getHeightForWhitespaceIndex(t),s=this.getIdForWhitespaceIndex(t),r=this.getAfterLineNumberForWhitespaceIndex(t);return{id:s,afterLineNumber:r,verticalOffset:i,height:n}}getWhitespaceViewportData(e,t){this._checkPendingChanges(),e=e|0,t=t|0;const i=this.getWhitespaceIndexAtOrAfterVerticallOffset(e),n=this.getWhitespacesCount()-1;if(i<0)return[];const s=[];for(let r=i;r<=n;r++){const a=this.getVerticalOffsetForWhitespaceIndex(r),l=this.getHeightForWhitespaceIndex(r);if(a>=t)break;s.push({id:this.getIdForWhitespaceIndex(r),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(r),verticalOffset:a,height:l})}return s}getWhitespaces(){return this._checkPendingChanges(),this._arr.slice(0)}getWhitespacesCount(){return this._checkPendingChanges(),this._arr.length}getIdForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].id}getAfterLineNumberForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].afterLineNumber}getHeightForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].height}},Cc.INSTANCE_COUNT=0,Cc);const _oe=125;class Fm{constructor(e,t,i,n){e=e|0,t=t|0,i=i|0,n=n|0,e<0&&(e=0),t<0&&(t=0),i<0&&(i=0),n<0&&(n=0),this.width=e,this.contentWidth=t,this.scrollWidth=Math.max(e,t),this.height=i,this.contentHeight=n,this.scrollHeight=Math.max(i,n)}equals(e){return this.width===e.width&&this.contentWidth===e.contentWidth&&this.height===e.height&&this.contentHeight===e.contentHeight}}class boe extends z{constructor(e,t){super(),this._onDidContentSizeChange=this._register(new A),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._dimensions=new Fm(0,0,0,0),this._scrollable=this._register(new Vg({forceIntegerValues:!0,smoothScrollDuration:e,scheduleAtNextAnimationFrame:t})),this.onDidScroll=this._scrollable.onScroll}getScrollable(){return this._scrollable}setSmoothScrollDuration(e){this._scrollable.setSmoothScrollDuration(e)}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}getScrollDimensions(){return this._dimensions}setScrollDimensions(e){if(this._dimensions.equals(e))return;const t=this._dimensions;this._dimensions=e,this._scrollable.setScrollDimensions({width:e.width,scrollWidth:e.scrollWidth,height:e.height,scrollHeight:e.scrollHeight},!0);const i=t.contentWidth!==e.contentWidth,n=t.contentHeight!==e.contentHeight;(i||n)&&this._onDidContentSizeChange.fire(new Z2(t.contentWidth,t.contentHeight,e.contentWidth,e.contentHeight))}getFutureScrollPosition(){return this._scrollable.getFutureScrollPosition()}getCurrentScrollPosition(){return this._scrollable.getCurrentScrollPosition()}setScrollPositionNow(e){this._scrollable.setScrollPositionNow(e)}setScrollPositionSmooth(e){this._scrollable.setScrollPositionSmooth(e)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}}class Coe extends z{constructor(e,t,i){super(),this._configuration=e;const n=this._configuration.options,s=n.get(146),r=n.get(84);this._linesLayout=new poe(t,n.get(67),r.top,r.bottom),this._maxLineWidth=0,this._overlayWidgetsMinWidth=0,this._scrollable=this._register(new boe(0,i)),this._configureSmoothScrollDuration(),this._scrollable.setScrollDimensions(new Fm(s.contentWidth,0,s.height,0)),this.onDidScroll=this._scrollable.onDidScroll,this.onDidContentSizeChange=this._scrollable.onDidContentSizeChange,this._updateHeight()}dispose(){super.dispose()}getScrollable(){return this._scrollable.getScrollable()}onHeightMaybeChanged(){this._updateHeight()}_configureSmoothScrollDuration(){this._scrollable.setSmoothScrollDuration(this._configuration.options.get(115)?_oe:0)}onConfigurationChanged(e){const t=this._configuration.options;if(e.hasChanged(67)&&this._linesLayout.setLineHeight(t.get(67)),e.hasChanged(84)){const i=t.get(84);this._linesLayout.setPadding(i.top,i.bottom)}if(e.hasChanged(146)){const i=t.get(146),n=i.contentWidth,s=i.height,r=this._scrollable.getScrollDimensions(),a=r.contentWidth;this._scrollable.setScrollDimensions(new Fm(n,r.contentWidth,s,this._getContentHeight(n,s,a)))}else this._updateHeight();e.hasChanged(115)&&this._configureSmoothScrollDuration()}onFlushed(e){this._linesLayout.onFlushed(e)}onLinesDeleted(e,t){this._linesLayout.onLinesDeleted(e,t)}onLinesInserted(e,t){this._linesLayout.onLinesInserted(e,t)}_getHorizontalScrollbarHeight(e,t){const n=this._configuration.options.get(104);return n.horizontal===2||e>=t?0:n.horizontalScrollbarSize}_getContentHeight(e,t,i){const n=this._configuration.options;let s=this._linesLayout.getLinesTotalHeight();return n.get(106)?s+=Math.max(0,t-n.get(67)-n.get(84).bottom):n.get(104).ignoreHorizontalScrollbarInContentHeight||(s+=this._getHorizontalScrollbarHeight(e,i)),s}_updateHeight(){const e=this._scrollable.getScrollDimensions(),t=e.width,i=e.height,n=e.contentWidth;this._scrollable.setScrollDimensions(new Fm(t,e.contentWidth,i,this._getContentHeight(t,i,n)))}getCurrentViewport(){const e=this._scrollable.getScrollDimensions(),t=this._scrollable.getCurrentScrollPosition();return new CO(t.scrollTop,t.scrollLeft,e.width,e.height)}getFutureViewport(){const e=this._scrollable.getScrollDimensions(),t=this._scrollable.getFutureScrollPosition();return new CO(t.scrollTop,t.scrollLeft,e.width,e.height)}_computeContentWidth(){const e=this._configuration.options,t=this._maxLineWidth,i=e.get(147),n=e.get(50),s=e.get(146);if(i.isViewportWrapping){const r=e.get(73);return t>s.contentWidth+n.typicalHalfwidthCharacterWidth&&r.enabled&&r.side==="right"?t+s.verticalScrollbarWidth:t}else{const r=e.get(105)*n.typicalHalfwidthCharacterWidth,a=this._linesLayout.getWhitespaceMinWidth();return Math.max(t+r+s.verticalScrollbarWidth,a,this._overlayWidgetsMinWidth)}}setMaxLineWidth(e){this._maxLineWidth=e,this._updateContentWidth()}setOverlayWidgetsMinWidth(e){this._overlayWidgetsMinWidth=e,this._updateContentWidth()}_updateContentWidth(){const e=this._scrollable.getScrollDimensions();this._scrollable.setScrollDimensions(new Fm(e.width,this._computeContentWidth(),e.height,e.contentHeight)),this._updateHeight()}saveState(){const e=this._scrollable.getFutureScrollPosition(),t=e.scrollTop,i=this._linesLayout.getLineNumberAtOrAfterVerticalOffset(t),n=this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(i);return{scrollTop:t,scrollTopWithoutViewZones:t-n,scrollLeft:e.scrollLeft}}changeWhitespace(e){const t=this._linesLayout.changeWhitespace(e);return t&&this.onHeightMaybeChanged(),t}getVerticalOffsetForLineNumber(e,t=!1){return this._linesLayout.getVerticalOffsetForLineNumber(e,t)}getVerticalOffsetAfterLineNumber(e,t=!1){return this._linesLayout.getVerticalOffsetAfterLineNumber(e,t)}isAfterLines(e){return this._linesLayout.isAfterLines(e)}isInTopPadding(e){return this._linesLayout.isInTopPadding(e)}isInBottomPadding(e){return this._linesLayout.isInBottomPadding(e)}getLineNumberAtVerticalOffset(e){return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(e)}getWhitespaceAtVerticalOffset(e){return this._linesLayout.getWhitespaceAtVerticalOffset(e)}getLinesViewportData(){const e=this.getCurrentViewport();return this._linesLayout.getLinesViewportData(e.top,e.top+e.height)}getLinesViewportDataAtScrollTop(e){const t=this._scrollable.getScrollDimensions();return e+t.height>t.scrollHeight&&(e=t.scrollHeight-t.height),e<0&&(e=0),this._linesLayout.getLinesViewportData(e,e+t.height)}getWhitespaceViewportData(){const e=this.getCurrentViewport();return this._linesLayout.getWhitespaceViewportData(e.top,e.top+e.height)}getWhitespaces(){return this._linesLayout.getWhitespaces()}getContentWidth(){return this._scrollable.getScrollDimensions().contentWidth}getScrollWidth(){return this._scrollable.getScrollDimensions().scrollWidth}getContentHeight(){return this._scrollable.getScrollDimensions().contentHeight}getScrollHeight(){return this._scrollable.getScrollDimensions().scrollHeight}getCurrentScrollLeft(){return this._scrollable.getCurrentScrollPosition().scrollLeft}getCurrentScrollTop(){return this._scrollable.getCurrentScrollPosition().scrollTop}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}setScrollPosition(e,t){t===1?this._scrollable.setScrollPositionNow(e):this._scrollable.setScrollPositionSmooth(e)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}deltaScrollNow(e,t){const i=this._scrollable.getCurrentScrollPosition();this._scrollable.setScrollPositionNow({scrollLeft:i.scrollLeft+e,scrollTop:i.scrollTop+t})}}class voe{constructor(e,t,i,n,s){this.editorId=e,this.model=t,this.configuration=i,this._linesCollection=n,this._coordinatesConverter=s,this._decorationsCache=Object.create(null),this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}_clearCachedModelDecorationsResolver(){this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}dispose(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}reset(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onModelDecorationsChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onLineMappingChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}_getOrCreateViewModelDecoration(e){const t=e.id;let i=this._decorationsCache[t];if(!i){const n=e.range,s=e.options;let r;if(s.isWholeLine){const a=this._coordinatesConverter.convertModelPositionToViewPosition(new P(n.startLineNumber,1),0,!1,!0),l=this._coordinatesConverter.convertModelPositionToViewPosition(new P(n.endLineNumber,this.model.getLineMaxColumn(n.endLineNumber)),1);r=new I(a.lineNumber,a.column,l.lineNumber,l.column)}else r=this._coordinatesConverter.convertModelRangeToViewRange(n,1);i=new h8(r,s),this._decorationsCache[t]=i}return i}getMinimapDecorationsInRange(e){return this._getDecorationsInRange(e,!0,!1).decorations}getDecorationsViewportData(e){let t=this._cachedModelDecorationsResolver!==null;return t=t&&e.equalsRange(this._cachedModelDecorationsResolverViewRange),t||(this._cachedModelDecorationsResolver=this._getDecorationsInRange(e,!1,!1),this._cachedModelDecorationsResolverViewRange=e),this._cachedModelDecorationsResolver}getInlineDecorationsOnLine(e,t=!1,i=!1){const n=new I(e,this._linesCollection.getViewLineMinColumn(e),e,this._linesCollection.getViewLineMaxColumn(e));return this._getDecorationsInRange(n,t,i).inlineDecorations[0]}_getDecorationsInRange(e,t,i){const n=this._linesCollection.getDecorationsInRange(e,this.editorId,rC(this.configuration.options),t,i),s=e.startLineNumber,r=e.endLineNumber,a=[];let l=0;const c=[];for(let d=s;d<=r;d++)c[d-s]=[];for(let d=0,h=n.length;dt===1)}function Soe(o,e){return R8(o,e.range,t=>t===2)}function R8(o,e,t){for(let i=e.startLineNumber;i<=e.endLineNumber;i++){const n=o.tokenization.getLineTokens(i),s=i===e.startLineNumber,r=i===e.endLineNumber;let a=s?n.findTokenIndexAtOffset(e.startColumn-1):0;for(;ae.endColumn-1);){if(!t(n.getStandardTokenType(a)))return!1;a++}}return!0}function aL(o,e){return o===null?e?Wv.INSTANCE:Hv.INSTANCE:new Loe(o,e)}class Loe{constructor(e,t){this._projectionData=e,this._isVisible=t}isVisible(){return this._isVisible}setVisible(e){return this._isVisible=e,this}getProjectionData(){return this._projectionData}getViewLineCount(){return this._isVisible?this._projectionData.getOutputLineCount():0}getViewLineContent(e,t,i){this._assertVisible();const n=i>0?this._projectionData.breakOffsets[i-1]:0,s=this._projectionData.breakOffsets[i];let r;if(this._projectionData.injectionOffsets!==null){const a=this._projectionData.injectionOffsets.map((c,d)=>new _r(0,0,c+1,this._projectionData.injectionOptions[d],0));r=_r.applyInjectedText(e.getLineContent(t),a).substring(n,s)}else r=e.getValueInRange({startLineNumber:t,startColumn:n+1,endLineNumber:t,endColumn:s+1});return i>0&&(r=YO(this._projectionData.wrappedTextIndentLength)+r),r}getViewLineLength(e,t,i){return this._assertVisible(),this._projectionData.getLineLength(i)}getViewLineMinColumn(e,t,i){return this._assertVisible(),this._projectionData.getMinOutputOffset(i)+1}getViewLineMaxColumn(e,t,i){return this._assertVisible(),this._projectionData.getMaxOutputOffset(i)+1}getViewLineData(e,t,i){const n=new Array;return this.getViewLinesData(e,t,i,1,0,[!0],n),n[0]}getViewLinesData(e,t,i,n,s,r,a){this._assertVisible();const l=this._projectionData,c=l.injectionOffsets,d=l.injectionOptions;let h=null;if(c){h=[];let f=0,g=0;for(let p=0;p0?l.breakOffsets[p-1]:0,C=l.breakOffsets[p];for(;gC)break;if(b0?l.wrappedTextIndentLength:0,E=L+Math.max(v-b,0),N=L+Math.min(y-b,C-b);E!==N&&_.push(new hie(E,N,x.inlineClassName,x.inlineClassNameAffectsLetterSpacing))}}if(y<=C)f+=w,g++;else break}}}let u;c?u=e.tokenization.getLineTokens(t).withInserted(c.map((f,g)=>({offset:f,text:d[g].content,tokenMetadata:Ni.defaultTokenMetadata}))):u=e.tokenization.getLineTokens(t);for(let f=i;f0?n.wrappedTextIndentLength:0,r=i>0?n.breakOffsets[i-1]:0,a=n.breakOffsets[i],l=e.sliceAndInflate(r,a,s);let c=l.getLineContent();i>0&&(c=YO(n.wrappedTextIndentLength)+c);const d=this._projectionData.getMinOutputOffset(i)+1,h=c.length+1,u=i+1=lL.length)for(let e=1;e<=o;e++)lL[e]=xoe(e);return lL[o]}function xoe(o){return new Array(o+1).join(" ")}class koe{constructor(e,t,i,n,s,r,a,l,c,d){this._editorId=e,this.model=t,this._validModelVersionId=-1,this._domLineBreaksComputerFactory=i,this._monospaceLineBreaksComputerFactory=n,this.fontInfo=s,this.tabSize=r,this.wrappingStrategy=a,this.wrappingColumn=l,this.wrappingIndent=c,this.wordBreak=d,this._constructLines(!0,null)}dispose(){this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[])}createCoordinatesConverter(){return new Ioe(this)}_constructLines(e,t){this.modelLineProjections=[],e&&(this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[]));const i=this.model.getLinesContent(),n=this.model.getInjectedTextDecorations(this._editorId),s=i.length,r=this.createLineBreaksComputer(),a=new Ll(_r.fromDecorations(n));for(let p=0;pb.lineNumber===p+1);r.addRequest(i[p],_,t?t[p]:null)}const l=r.finalize(),c=[],d=this.hiddenAreasDecorationIds.map(p=>this.model.getDecorationRange(p)).sort(I.compareRangesUsingStarts);let h=1,u=0,f=-1,g=f+1=h&&_<=u,C=aL(l[p],!b);c[p]=C.getViewLineCount(),this.modelLineProjections[p]=C}this._validModelVersionId=this.model.getVersionId(),this.projectedModelLineLineCounts=new D$(c)}getHiddenAreas(){return this.hiddenAreasDecorationIds.map(e=>this.model.getDecorationRange(e))}setHiddenAreas(e){const t=e.map(u=>this.model.validateRange(u)),i=Doe(t),n=this.hiddenAreasDecorationIds.map(u=>this.model.getDecorationRange(u)).sort(I.compareRangesUsingStarts);if(i.length===n.length){let u=!1;for(let f=0;f({range:u,options:kt.EMPTY}));this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,s);const r=i;let a=1,l=0,c=-1,d=c+1=a&&f<=l?this.modelLineProjections[u].isVisible()&&(this.modelLineProjections[u]=this.modelLineProjections[u].setVisible(!1),g=!0):(h=!0,this.modelLineProjections[u].isVisible()||(this.modelLineProjections[u]=this.modelLineProjections[u].setVisible(!0),g=!0)),g){const p=this.modelLineProjections[u].getViewLineCount();this.projectedModelLineLineCounts.setValue(u,p)}}return h||this.setHiddenAreas([]),!0}modelPositionIsVisible(e,t){return e<1||e>this.modelLineProjections.length?!1:this.modelLineProjections[e-1].isVisible()}getModelLineViewLineCount(e){return e<1||e>this.modelLineProjections.length?1:this.modelLineProjections[e-1].getViewLineCount()}setTabSize(e){return this.tabSize===e?!1:(this.tabSize=e,this._constructLines(!1,null),!0)}setWrappingSettings(e,t,i,n,s){const r=this.fontInfo.equals(e),a=this.wrappingStrategy===t,l=this.wrappingColumn===i,c=this.wrappingIndent===n,d=this.wordBreak===s;if(r&&a&&l&&c&&d)return!1;const h=r&&a&&!l&&c&&d;this.fontInfo=e,this.wrappingStrategy=t,this.wrappingColumn=i,this.wrappingIndent=n,this.wordBreak=s;let u=null;if(h){u=[];for(let f=0,g=this.modelLineProjections.length;f2&&!this.modelLineProjections[t-2].isVisible(),r=t===1?1:this.projectedModelLineLineCounts.getPrefixSum(t-1)+1;let a=0;const l=[],c=[];for(let d=0,h=n.length;dl?(d=this.projectedModelLineLineCounts.getPrefixSum(t-1)+1,h=d+l-1,g=h+1,p=g+(s-l)-1,c=!0):st?t:e|0}getActiveIndentGuide(e,t,i){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t),i=this._toValidViewLineNumber(i);const n=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),s=this.convertViewPositionToModelPosition(t,this.getViewLineMinColumn(t)),r=this.convertViewPositionToModelPosition(i,this.getViewLineMinColumn(i)),a=this.model.guides.getActiveIndentGuide(n.lineNumber,s.lineNumber,r.lineNumber),l=this.convertModelPositionToViewPosition(a.startLineNumber,1),c=this.convertModelPositionToViewPosition(a.endLineNumber,this.model.getLineMaxColumn(a.endLineNumber));return{startLineNumber:l.lineNumber,endLineNumber:c.lineNumber,indent:a.indent}}getViewLineInfo(e){e=this._toValidViewLineNumber(e);const t=this.projectedModelLineLineCounts.getIndexOf(e-1),i=t.index,n=t.remainder;return new QO(i+1,n)}getMinColumnOfViewLine(e){return this.modelLineProjections[e.modelLineNumber-1].getViewLineMinColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx)}getMaxColumnOfViewLine(e){return this.modelLineProjections[e.modelLineNumber-1].getViewLineMaxColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx)}getModelStartPositionOfViewLine(e){const t=this.modelLineProjections[e.modelLineNumber-1],i=t.getViewLineMinColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx),n=t.getModelColumnOfViewPosition(e.modelLineWrappedLineIdx,i);return new P(e.modelLineNumber,n)}getModelEndPositionOfViewLine(e){const t=this.modelLineProjections[e.modelLineNumber-1],i=t.getViewLineMaxColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx),n=t.getModelColumnOfViewPosition(e.modelLineWrappedLineIdx,i);return new P(e.modelLineNumber,n)}getViewLineInfosGroupedByModelRanges(e,t){const i=this.getViewLineInfo(e),n=this.getViewLineInfo(t),s=new Array;let r=this.getModelStartPositionOfViewLine(i),a=new Array;for(let l=i.modelLineNumber;l<=n.modelLineNumber;l++){const c=this.modelLineProjections[l-1];if(c.isVisible()){const d=l===i.modelLineNumber?i.modelLineWrappedLineIdx:0,h=l===n.modelLineNumber?n.modelLineWrappedLineIdx+1:c.getViewLineCount();for(let u=d;u{if(f.forWrappedLinesAfterColumn!==-1&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,f.forWrappedLinesAfterColumn).lineNumber>=d.modelLineWrappedLineIdx||f.forWrappedLinesBeforeOrAtColumn!==-1&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,f.forWrappedLinesBeforeOrAtColumn).lineNumberd.modelLineWrappedLineIdx)return}const p=this.convertModelPositionToViewPosition(d.modelLineNumber,f.horizontalLine.endColumn),_=this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,f.horizontalLine.endColumn);return _.lineNumber===d.modelLineWrappedLineIdx?new Kd(f.visibleColumn,g,f.className,new tp(f.horizontalLine.top,p.column),-1,-1):_.lineNumber!!f))}}return r}getViewLinesIndentGuides(e,t){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t);const i=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),n=this.convertViewPositionToModelPosition(t,this.getViewLineMaxColumn(t));let s=[];const r=[],a=[],l=i.lineNumber-1,c=n.lineNumber-1;let d=null;for(let g=l;g<=c;g++){const p=this.modelLineProjections[g];if(p.isVisible()){const _=p.getViewLineNumberOfModelPosition(0,g===l?i.column:1),b=p.getViewLineNumberOfModelPosition(0,this.model.getLineMaxColumn(g+1)),C=b-_+1;let w=0;C>1&&p.getViewLineMinColumn(this.model,g+1,b)===1&&(w=_===0?1:2),r.push(C),a.push(w),d===null&&(d=new P(g+1,0))}else d!==null&&(s=s.concat(this.model.guides.getLinesIndentGuides(d.lineNumber,g)),d=null)}d!==null&&(s=s.concat(this.model.guides.getLinesIndentGuides(d.lineNumber,n.lineNumber)),d=null);const h=t-e+1,u=new Array(h);let f=0;for(let g=0,p=s.length;gt&&(g=!0,f=t-s+1),h.getViewLinesData(this.model,c+1,u,f,s-e,i,l),s+=f,g)break}return l}validateViewPosition(e,t,i){e=this._toValidViewLineNumber(e);const n=this.projectedModelLineLineCounts.getIndexOf(e-1),s=n.index,r=n.remainder,a=this.modelLineProjections[s],l=a.getViewLineMinColumn(this.model,s+1,r),c=a.getViewLineMaxColumn(this.model,s+1,r);tc&&(t=c);const d=a.getModelColumnOfViewPosition(r,t);return this.model.validatePosition(new P(s+1,d)).equals(i)?new P(e,t):this.convertModelPositionToViewPosition(i.lineNumber,i.column)}validateViewRange(e,t){const i=this.validateViewPosition(e.startLineNumber,e.startColumn,t.getStartPosition()),n=this.validateViewPosition(e.endLineNumber,e.endColumn,t.getEndPosition());return new I(i.lineNumber,i.column,n.lineNumber,n.column)}convertViewPositionToModelPosition(e,t){const i=this.getViewLineInfo(e),n=this.modelLineProjections[i.modelLineNumber-1].getModelColumnOfViewPosition(i.modelLineWrappedLineIdx,t);return this.model.validatePosition(new P(i.modelLineNumber,n))}convertViewRangeToModelRange(e){const t=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),i=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);return new I(t.lineNumber,t.column,i.lineNumber,i.column)}convertModelPositionToViewPosition(e,t,i=2,n=!1,s=!1){const r=this.model.validatePosition(new P(e,t)),a=r.lineNumber,l=r.column;let c=a-1,d=!1;if(s)for(;c0&&!this.modelLineProjections[c].isVisible();)c--,d=!0;if(c===0&&!this.modelLineProjections[c].isVisible())return new P(n?0:1,1);const h=1+this.projectedModelLineLineCounts.getPrefixSum(c);let u;return d?s?u=this.modelLineProjections[c].getViewPositionOfModelPosition(h,1,i):u=this.modelLineProjections[c].getViewPositionOfModelPosition(h,this.model.getLineMaxColumn(c+1),i):u=this.modelLineProjections[a-1].getViewPositionOfModelPosition(h,l,i),u}convertModelRangeToViewRange(e,t=0){if(e.isEmpty()){const i=this.convertModelPositionToViewPosition(e.startLineNumber,e.startColumn,t);return I.fromPositions(i)}else{const i=this.convertModelPositionToViewPosition(e.startLineNumber,e.startColumn,1),n=this.convertModelPositionToViewPosition(e.endLineNumber,e.endColumn,0);return new I(i.lineNumber,i.column,n.lineNumber,n.column)}}getViewLineNumberOfModelPosition(e,t){let i=e-1;if(this.modelLineProjections[i].isVisible()){const s=1+this.projectedModelLineLineCounts.getPrefixSum(i);return this.modelLineProjections[i].getViewLineNumberOfModelPosition(s,t)}for(;i>0&&!this.modelLineProjections[i].isVisible();)i--;if(i===0&&!this.modelLineProjections[i].isVisible())return 1;const n=1+this.projectedModelLineLineCounts.getPrefixSum(i);return this.modelLineProjections[i].getViewLineNumberOfModelPosition(n,this.model.getLineMaxColumn(i+1))}getDecorationsInRange(e,t,i,n,s){const r=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),a=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);if(a.lineNumber-r.lineNumber<=e.endLineNumber-e.startLineNumber)return this.model.getDecorationsInRange(new I(r.lineNumber,1,a.lineNumber,a.column),t,i,n,s);let l=[];const c=r.lineNumber-1,d=a.lineNumber-1;let h=null;for(let p=c;p<=d;p++)if(this.modelLineProjections[p].isVisible())h===null&&(h=new P(p+1,p===c?r.column:1));else if(h!==null){const b=this.model.getLineMaxColumn(p);l=l.concat(this.model.getDecorationsInRange(new I(h.lineNumber,h.column,p,b),t,i,n)),h=null}h!==null&&(l=l.concat(this.model.getDecorationsInRange(new I(h.lineNumber,h.column,a.lineNumber,a.column),t,i,n)),h=null),l.sort((p,_)=>{const b=I.compareRangesUsingStarts(p.range,_.range);return b===0?p.id<_.id?-1:p.id>_.id?1:0:b});const u=[];let f=0,g=null;for(const p of l){const _=p.id;g!==_&&(g=_,u[f++]=p)}return u}getInjectedTextAt(e){const t=this.getViewLineInfo(e.lineNumber);return this.modelLineProjections[t.modelLineNumber-1].getInjectedTextAt(t.modelLineWrappedLineIdx,e.column)}normalizePosition(e,t){const i=this.getViewLineInfo(e.lineNumber);return this.modelLineProjections[i.modelLineNumber-1].normalizePosition(i.modelLineWrappedLineIdx,e,t)}getLineIndentColumn(e){const t=this.getViewLineInfo(e);return t.modelLineWrappedLineIdx===0?this.model.getLineIndentColumn(t.modelLineNumber):0}}function Doe(o){if(o.length===0)return[];const e=o.slice();e.sort(I.compareRangesUsingStarts);const t=[];let i=e[0].startLineNumber,n=e[0].endLineNumber;for(let s=1,r=e.length;sn+1?(t.push(new I(i,1,n,1)),i=a.startLineNumber,n=a.endLineNumber):a.endLineNumber>n&&(n=a.endLineNumber)}return t.push(new I(i,1,n,1)),t}class QO{constructor(e,t){this.modelLineNumber=e,this.modelLineWrappedLineIdx=t}}class XO{constructor(e,t){this.modelRange=e,this.viewLines=t}}class Ioe{constructor(e){this._lines=e}convertViewPositionToModelPosition(e){return this._lines.convertViewPositionToModelPosition(e.lineNumber,e.column)}convertViewRangeToModelRange(e){return this._lines.convertViewRangeToModelRange(e)}validateViewPosition(e,t){return this._lines.validateViewPosition(e.lineNumber,e.column,t)}validateViewRange(e,t){return this._lines.validateViewRange(e,t)}convertModelPositionToViewPosition(e,t,i,n){return this._lines.convertModelPositionToViewPosition(e.lineNumber,e.column,t,i,n)}convertModelRangeToViewRange(e,t){return this._lines.convertModelRangeToViewRange(e,t)}modelPositionIsVisible(e){return this._lines.modelPositionIsVisible(e.lineNumber,e.column)}getModelLineViewLineCount(e){return this._lines.getModelLineViewLineCount(e)}getViewLineNumberOfModelPosition(e,t){return this._lines.getViewLineNumberOfModelPosition(e,t)}}class Eoe{constructor(e){this.model=e}dispose(){}createCoordinatesConverter(){return new Noe(this)}getHiddenAreas(){return[]}setHiddenAreas(e){return!1}setTabSize(e){return!1}setWrappingSettings(e,t,i,n){return!1}createLineBreaksComputer(){const e=[];return{addRequest:(t,i,n)=>{e.push(null)},finalize:()=>e}}onModelFlushed(){}onModelLinesDeleted(e,t,i){return new WI(t,i)}onModelLinesInserted(e,t,i,n){return new HI(t,i)}onModelLineChanged(e,t,i){return[!1,new M8(t,1),null,null]}acceptVersionId(e){}getViewLineCount(){return this.model.getLineCount()}getActiveIndentGuide(e,t,i){return{startLineNumber:e,endLineNumber:e,indent:0}}getViewLinesBracketGuides(e,t,i){return new Array(t-e+1).fill([])}getViewLinesIndentGuides(e,t){const i=t-e+1,n=new Array(i);for(let s=0;st)}getModelLineViewLineCount(e){return 1}getViewLineNumberOfModelPosition(e,t){return e}}const ad=Ao.Right;class Toe{constructor(e){this.persist=0,this._requiredLanes=1,this.lanes=new Uint8Array(Math.ceil((e+1)*ad/8))}reset(e){const t=Math.ceil((e+1)*ad/8);this.lanes.length>>3]|=1<>>3]&1<>>3]&1<this._updateConfigurationViewLineCountNow(),0)),this._hasFocus=!1,this._viewportStart=X2.create(this.model),this.glyphLanes=new Toe(0),this.model.isTooLargeForTokenization())this._lines=new Eoe(this.model);else{const h=this._configuration.options,u=h.get(50),f=h.get(140),g=h.get(147),p=h.get(139),_=h.get(130);this._lines=new koe(this._editorId,this.model,n,s,u,this.model.getOptions().tabSize,f,g.wrappingColumn,p,_)}this.coordinatesConverter=this._lines.createCoordinatesConverter(),this._cursor=this._register(new hoe(i,this,this.coordinatesConverter,this.cursorConfig)),this.viewLayout=this._register(new Coe(this._configuration,this.getLineCount(),r)),this._register(this.viewLayout.onDidScroll(h=>{h.scrollTopChanged&&this._handleVisibleLinesChanged(),h.scrollTopChanged&&this._viewportStart.invalidate(),this._eventDispatcher.emitSingleViewEvent(new Zse(h)),this._eventDispatcher.emitOutgoingEvent(new Q2(h.oldScrollWidth,h.oldScrollLeft,h.oldScrollHeight,h.oldScrollTop,h.scrollWidth,h.scrollLeft,h.scrollHeight,h.scrollTop))})),this._register(this.viewLayout.onDidContentSizeChange(h=>{this._eventDispatcher.emitOutgoingEvent(h)})),this._decorations=new voe(this._editorId,this.model,this._configuration,this._lines,this.coordinatesConverter),this._registerModelEvents(),this._register(this._configuration.onDidChangeFast(h=>{try{const u=this._eventDispatcher.beginEmitViewEvents();this._onConfigurationChanged(u,h)}finally{this._eventDispatcher.endEmitViewEvents()}})),this._register(Pv.getInstance().onDidChange(()=>{this._eventDispatcher.emitSingleViewEvent(new Xse)})),this._register(this._themeService.onDidColorThemeChange(h=>{this._invalidateDecorationsColorCache(),this._eventDispatcher.emitSingleViewEvent(new Yse(h))})),this._updateConfigurationViewLineCountNow()}dispose(){super.dispose(),this._decorations.dispose(),this._lines.dispose(),this._viewportStart.dispose(),this._eventDispatcher.dispose()}createLineBreaksComputer(){return this._lines.createLineBreaksComputer()}addViewEventHandler(e){this._eventDispatcher.addViewEventHandler(e)}removeViewEventHandler(e){this._eventDispatcher.removeViewEventHandler(e)}_updateConfigurationViewLineCountNow(){this._configuration.setViewLineCount(this._lines.getViewLineCount())}getModelVisibleRanges(){const e=this.viewLayout.getLinesViewportData(),t=new I(e.startLineNumber,this.getLineMinColumn(e.startLineNumber),e.endLineNumber,this.getLineMaxColumn(e.endLineNumber));return this._toModelVisibleRanges(t)}visibleLinesStabilized(){const e=this.getModelVisibleRanges();this._attachedView.setVisibleLines(e,!0)}_handleVisibleLinesChanged(){const e=this.getModelVisibleRanges();this._attachedView.setVisibleLines(e,!1)}setHasFocus(e){this._hasFocus=e,this._cursor.setHasFocus(e),this._eventDispatcher.emitSingleViewEvent(new qse(e)),this._eventDispatcher.emitOutgoingEvent(new Y2(!e,e))}onCompositionStart(){this._eventDispatcher.emitSingleViewEvent(new Use)}onCompositionEnd(){this._eventDispatcher.emitSingleViewEvent(new $se)}_captureStableViewport(){if(this._viewportStart.isValid&&this.viewLayout.getCurrentScrollTop()>0){const e=new P(this._viewportStart.viewLineNumber,this.getLineMinColumn(this._viewportStart.viewLineNumber)),t=this.coordinatesConverter.convertViewPositionToModelPosition(e);return new e4(t,this._viewportStart.startLineDelta)}return new e4(null,0)}_onConfigurationChanged(e,t){const i=this._captureStableViewport(),n=this._configuration.options,s=n.get(50),r=n.get(140),a=n.get(147),l=n.get(139),c=n.get(130);this._lines.setWrappingSettings(s,r,a.wrappingColumn,l,c)&&(e.emitViewEvent(new s1),e.emitViewEvent(new o1),e.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(e),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this._updateConfigurationViewLineCount.schedule()),t.hasChanged(92)&&(this._decorations.reset(),e.emitViewEvent(new rd(null))),t.hasChanged(99)&&(this._decorations.reset(),e.emitViewEvent(new rd(null))),e.emitViewEvent(new Kse(t)),this.viewLayout.onConfigurationChanged(t),i.recoverViewportStart(this.coordinatesConverter,this.viewLayout),Au.shouldRecreate(t)&&(this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig))}_registerModelEvents(){this._register(this.model.onDidChangeContentOrInjectedText(e=>{try{const i=this._eventDispatcher.beginEmitViewEvents();let n=!1,s=!1;const r=e instanceof th?e.rawContentChangedEvent.changes:e.changes,a=e instanceof th?e.rawContentChangedEvent.versionId:null,l=this._lines.createLineBreaksComputer();for(const h of r)switch(h.changeType){case 4:{for(let u=0;u!p.ownerId||p.ownerId===this._editorId)),l.addRequest(f,g,null)}break}case 2:{let u=null;h.injectedText&&(u=h.injectedText.filter(f=>!f.ownerId||f.ownerId===this._editorId)),l.addRequest(h.detail,u,null);break}}const c=l.finalize(),d=new Ll(c);for(const h of r)switch(h.changeType){case 1:{this._lines.onModelFlushed(),i.emitViewEvent(new s1),this._decorations.reset(),this.viewLayout.onFlushed(this.getLineCount()),n=!0;break}case 3:{const u=this._lines.onModelLinesDeleted(a,h.fromLineNumber,h.toLineNumber);u!==null&&(i.emitViewEvent(u),this.viewLayout.onLinesDeleted(u.fromLineNumber,u.toLineNumber)),n=!0;break}case 4:{const u=d.takeCount(h.detail.length),f=this._lines.onModelLinesInserted(a,h.fromLineNumber,h.toLineNumber,u);f!==null&&(i.emitViewEvent(f),this.viewLayout.onLinesInserted(f.fromLineNumber,f.toLineNumber)),n=!0;break}case 2:{const u=d.dequeue(),[f,g,p,_]=this._lines.onModelLineChanged(a,h.lineNumber,u);s=f,g&&i.emitViewEvent(g),p&&(i.emitViewEvent(p),this.viewLayout.onLinesInserted(p.fromLineNumber,p.toLineNumber)),_&&(i.emitViewEvent(_),this.viewLayout.onLinesDeleted(_.fromLineNumber,_.toLineNumber));break}case 5:break}a!==null&&this._lines.acceptVersionId(a),this.viewLayout.onHeightMaybeChanged(),!n&&s&&(i.emitViewEvent(new o1),i.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(i),this._decorations.onLineMappingChanged())}finally{this._eventDispatcher.endEmitViewEvents()}const t=this._viewportStart.isValid;if(this._viewportStart.invalidate(),this._configuration.setModelLineCount(this.model.getLineCount()),this._updateConfigurationViewLineCountNow(),!this._hasFocus&&this.model.getAttachedEditorCount()>=2&&t){const i=this.model._getTrackedRange(this._viewportStart.modelTrackedRange);if(i){const n=this.coordinatesConverter.convertModelPositionToViewPosition(i.getStartPosition()),s=this.viewLayout.getVerticalOffsetForLineNumber(n.lineNumber);this.viewLayout.setScrollPosition({scrollTop:s+this._viewportStart.startLineDelta},1)}}try{const i=this._eventDispatcher.beginEmitViewEvents();e instanceof th&&i.emitOutgoingEvent(new loe(e.contentChangedEvent)),this._cursor.onModelContentChanged(i,e)}finally{this._eventDispatcher.endEmitViewEvents()}this._handleVisibleLinesChanged()})),this._register(this.model.onDidChangeTokens(e=>{const t=[];for(let i=0,n=e.ranges.length;i{this._eventDispatcher.emitSingleViewEvent(new Gse),this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new aoe(e))})),this._register(this.model.onDidChangeLanguage(e=>{this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new roe(e))})),this._register(this.model.onDidChangeOptions(e=>{if(this._lines.setTabSize(this.model.getOptions().tabSize)){try{const t=this._eventDispatcher.beginEmitViewEvents();t.emitViewEvent(new s1),t.emitViewEvent(new o1),t.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(t),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount())}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule()}this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new coe(e))})),this._register(this.model.onDidChangeDecorations(e=>{this._decorations.onModelDecorationsChanged(),this._eventDispatcher.emitSingleViewEvent(new rd(e)),this._eventDispatcher.emitOutgoingEvent(new ooe(e))}))}setHiddenAreas(e,t){this.hiddenAreasModel.setHiddenAreas(t,e);const i=this.hiddenAreasModel.getMergedRanges();if(i===this.previousHiddenAreas)return;this.previousHiddenAreas=i;const n=this._captureStableViewport();let s=!1;try{const r=this._eventDispatcher.beginEmitViewEvents();s=this._lines.setHiddenAreas(i),s&&(r.emitViewEvent(new s1),r.emitViewEvent(new o1),r.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(r),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this.viewLayout.onHeightMaybeChanged());const a=n.viewportStartModelPosition?.lineNumber;a&&i.some(c=>c.startLineNumber<=a&&a<=c.endLineNumber)||n.recoverViewportStart(this.coordinatesConverter,this.viewLayout)}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule(),s&&this._eventDispatcher.emitOutgoingEvent(new noe)}getVisibleRangesPlusViewportAboveBelow(){const e=this._configuration.options.get(146),t=this._configuration.options.get(67),i=Math.max(20,Math.round(e.height/t)),n=this.viewLayout.getLinesViewportData(),s=Math.max(1,n.completelyVisibleStartLineNumber-i),r=Math.min(this.getLineCount(),n.completelyVisibleEndLineNumber+i);return this._toModelVisibleRanges(new I(s,this.getLineMinColumn(s),r,this.getLineMaxColumn(r)))}getVisibleRanges(){const e=this.getCompletelyVisibleViewRange();return this._toModelVisibleRanges(e)}getHiddenAreas(){return this._lines.getHiddenAreas()}_toModelVisibleRanges(e){const t=this.coordinatesConverter.convertViewRangeToModelRange(e),i=this._lines.getHiddenAreas();if(i.length===0)return[t];const n=[];let s=0,r=t.startLineNumber,a=t.startColumn;const l=t.endLineNumber,c=t.endColumn;for(let d=0,h=i.length;dl||(r"u")return this._reduceRestoreStateCompatibility(e);const t=this.model.validatePosition(e.firstPosition),i=this.coordinatesConverter.convertModelPositionToViewPosition(t),n=this.viewLayout.getVerticalOffsetForLineNumber(i.lineNumber)-e.firstPositionDeltaTop;return{scrollLeft:e.scrollLeft,scrollTop:n}}_reduceRestoreStateCompatibility(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTopWithoutViewZones}}getTabSize(){return this.model.getOptions().tabSize}getLineCount(){return this._lines.getViewLineCount()}setViewport(e,t,i){this._viewportStart.update(this,e)}getActiveIndentGuide(e,t,i){return this._lines.getActiveIndentGuide(e,t,i)}getLinesIndentGuides(e,t){return this._lines.getViewLinesIndentGuides(e,t)}getBracketGuidesInRangeByLine(e,t,i,n){return this._lines.getViewLinesBracketGuides(e,t,i,n)}getLineContent(e){return this._lines.getViewLineContent(e)}getLineLength(e){return this._lines.getViewLineLength(e)}getLineMinColumn(e){return this._lines.getViewLineMinColumn(e)}getLineMaxColumn(e){return this._lines.getViewLineMaxColumn(e)}getLineFirstNonWhitespaceColumn(e){const t=zn(this.getLineContent(e));return t===-1?0:t+1}getLineLastNonWhitespaceColumn(e){const t=Jh(this.getLineContent(e));return t===-1?0:t+2}getMinimapDecorationsInRange(e){return this._decorations.getMinimapDecorationsInRange(e)}getDecorationsInViewport(e){return this._decorations.getDecorationsViewportData(e).decorations}getInjectedTextAt(e){return this._lines.getInjectedTextAt(e)}getViewportViewLineRenderingData(e,t){const n=this._decorations.getDecorationsViewportData(e).inlineDecorations[t-e.startLineNumber];return this._getViewLineRenderingData(t,n)}getViewLineRenderingData(e){const t=this._decorations.getInlineDecorationsOnLine(e);return this._getViewLineRenderingData(e,t)}_getViewLineRenderingData(e,t){const i=this.model.mightContainRTL(),n=this.model.mightContainNonBasicASCII(),s=this.getTabSize(),r=this._lines.getViewLineData(e);return r.inlineDecorations&&(t=[...t,...r.inlineDecorations.map(a=>a.toInlineDecoration(e))]),new zs(r.minColumn,r.maxColumn,r.content,r.continuesWithWrappedLine,i,n,r.tokens,t,s,r.startVisibleColumn)}getViewLineData(e){return this._lines.getViewLineData(e)}getMinimapLinesRenderingData(e,t,i){const n=this._lines.getViewLinesData(e,t,i);return new die(this.getTabSize(),n)}getAllOverviewRulerDecorations(e){const t=this.model.getOverviewRulerDecorations(this._editorId,rC(this._configuration.options)),i=new Roe;for(const n of t){const s=n.options,r=s.overviewRuler;if(!r)continue;const a=r.position;if(a===0)continue;const l=r.getColor(e.value),c=this.coordinatesConverter.getViewLineNumberOfModelPosition(n.range.startLineNumber,n.range.startColumn),d=this.coordinatesConverter.getViewLineNumberOfModelPosition(n.range.endLineNumber,n.range.endColumn);i.accept(l,s.zIndex,c,d,a)}return i.asArray}_invalidateDecorationsColorCache(){const e=this.model.getOverviewRulerDecorations();for(const t of e)t.options.overviewRuler?.invalidateCachedColor(),t.options.minimap?.invalidateCachedColor()}getValueInRange(e,t){const i=this.coordinatesConverter.convertViewRangeToModelRange(e);return this.model.getValueInRange(i,t)}getValueLengthInRange(e,t){const i=this.coordinatesConverter.convertViewRangeToModelRange(e);return this.model.getValueLengthInRange(i,t)}modifyPosition(e,t){const i=this.coordinatesConverter.convertViewPositionToModelPosition(e),n=this.model.modifyPosition(i,t);return this.coordinatesConverter.convertModelPositionToViewPosition(n)}deduceModelPositionRelativeToViewPosition(e,t,i){const n=this.coordinatesConverter.convertViewPositionToModelPosition(e);this.model.getEOL().length===2&&(t<0?t-=i:t+=i);const r=this.model.getOffsetAt(n)+t;return this.model.getPositionAt(r)}getPlainTextToCopy(e,t,i){const n=i?`\r +`:this.model.getEOL();e=e.slice(0),e.sort(I.compareRangesUsingStarts);let s=!1,r=!1;for(const l of e)l.isEmpty()?s=!0:r=!0;if(!r){if(!t)return"";const l=e.map(d=>d.startLineNumber);let c="";for(let d=0;d0&&l[d-1]===l[d]||(c+=this.model.getLineContent(l[d])+n);return c}if(s&&t){const l=[];let c=0;for(const d of e){const h=d.startLineNumber;d.isEmpty()?h!==c&&l.push(this.model.getLineContent(h)):l.push(this.model.getValueInRange(d,i?2:0)),c=h}return l.length===1?l[0]:l}const a=[];for(const l of e)l.isEmpty()||a.push(this.model.getValueInRange(l,i?2:0));return a.length===1?a[0]:a}getRichTextToCopy(e,t){const i=this.model.getLanguageId();if(i===Bs||e.length!==1)return null;let n=e[0];if(n.isEmpty()){if(!t)return null;const d=n.startLineNumber;n=new I(d,this.model.getLineMinColumn(d),d,this.model.getLineMaxColumn(d))}const s=this._configuration.options.get(50),r=this._getColorMap(),l=/[:;\\\/<>]/.test(s.fontFamily)||s.fontFamily===ls.fontFamily;let c;return l?c=ls.fontFamily:(c=s.fontFamily,c=c.replace(/"/g,"'"),/[,']/.test(c)||/[+ ]/.test(c)&&(c=`'${c}'`),c=`${c}, ${ls.fontFamily}`),{mode:i,html:`
    `+this._getHTMLToCopy(n,r)+"
    "}}_getHTMLToCopy(e,t){const i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn,a=this.getTabSize();let l="";for(let c=i;c<=s;c++){const d=this.model.tokenization.getLineTokens(c),h=d.getLineContent(),u=c===i?n-1:0,f=c===s?r-1:h.length;h===""?l+="
    ":l+=NG(h,d.inflate(),t,u,f,a,kn)}return l}_getColorMap(){const e=si.getColorMap(),t=["#000000"];if(e)for(let i=1,n=e.length;ithis._cursor.setStates(n,e,t,i))}getCursorColumnSelectData(){return this._cursor.getCursorColumnSelectData()}getCursorAutoClosedCharacters(){return this._cursor.getAutoClosedCharacters()}setCursorColumnSelectData(e){this._cursor.setCursorColumnSelectData(e)}getPrevEditOperationType(){return this._cursor.getPrevEditOperationType()}setPrevEditOperationType(e){this._cursor.setPrevEditOperationType(e)}getSelection(){return this._cursor.getSelection()}getSelections(){return this._cursor.getSelections()}getPosition(){return this._cursor.getPrimaryCursorState().modelState.position}setSelections(e,t,i=0){this._withViewEventsCollector(n=>this._cursor.setSelections(n,e,t,i))}saveCursorState(){return this._cursor.saveState()}restoreCursorState(e){this._withViewEventsCollector(t=>this._cursor.restoreState(t,e))}_executeCursorEdit(e){if(this._cursor.context.cursorConfig.readOnly){this._eventDispatcher.emitOutgoingEvent(new soe);return}this._withViewEventsCollector(e)}executeEdits(e,t,i){this._executeCursorEdit(n=>this._cursor.executeEdits(n,e,t,i))}startComposition(){this._executeCursorEdit(e=>this._cursor.startComposition(e))}endComposition(e){this._executeCursorEdit(t=>this._cursor.endComposition(t,e))}type(e,t){this._executeCursorEdit(i=>this._cursor.type(i,e,t))}compositionType(e,t,i,n,s){this._executeCursorEdit(r=>this._cursor.compositionType(r,e,t,i,n,s))}paste(e,t,i,n){this._executeCursorEdit(s=>this._cursor.paste(s,e,t,i,n))}cut(e){this._executeCursorEdit(t=>this._cursor.cut(t,e))}executeCommand(e,t){this._executeCursorEdit(i=>this._cursor.executeCommand(i,e,t))}executeCommands(e,t){this._executeCursorEdit(i=>this._cursor.executeCommands(i,e,t))}revealAllCursors(e,t,i=!1){this._withViewEventsCollector(n=>this._cursor.revealAll(n,e,i,0,t,0))}revealPrimaryCursor(e,t,i=!1){this._withViewEventsCollector(n=>this._cursor.revealPrimary(n,e,i,0,t,0))}revealTopMostCursor(e){const t=this._cursor.getTopMostViewPosition(),i=new I(t.lineNumber,t.column,t.lineNumber,t.column);this._withViewEventsCollector(n=>n.emitViewEvent(new bp(e,!1,i,null,0,!0,0)))}revealBottomMostCursor(e){const t=this._cursor.getBottomMostViewPosition(),i=new I(t.lineNumber,t.column,t.lineNumber,t.column);this._withViewEventsCollector(n=>n.emitViewEvent(new bp(e,!1,i,null,0,!0,0)))}revealRange(e,t,i,n,s){this._withViewEventsCollector(r=>r.emitViewEvent(new bp(e,!1,i,null,n,t,s)))}changeWhitespace(e){this.viewLayout.changeWhitespace(e)&&(this._eventDispatcher.emitSingleViewEvent(new Jse),this._eventDispatcher.emitOutgoingEvent(new ioe))}_withViewEventsCollector(e){return this._transactionalTarget.batchChanges(()=>{try{const t=this._eventDispatcher.beginEmitViewEvents();return e(t)}finally{this._eventDispatcher.endEmitViewEvents()}})}batchEvents(e){this._withViewEventsCollector(()=>{e()})}normalizePosition(e,t){return this._lines.normalizePosition(e,t)}getLineIndentColumn(e){return this._lines.getLineIndentColumn(e)}};class X2{static create(e){const t=e._setTrackedRange(null,new I(1,1,1,1),1);return new X2(e,1,!1,t,0)}get viewLineNumber(){return this._viewLineNumber}get isValid(){return this._isValid}get modelTrackedRange(){return this._modelTrackedRange}get startLineDelta(){return this._startLineDelta}constructor(e,t,i,n,s){this._model=e,this._viewLineNumber=t,this._isValid=i,this._modelTrackedRange=n,this._startLineDelta=s}dispose(){this._model._setTrackedRange(this._modelTrackedRange,null,1)}update(e,t){const i=e.coordinatesConverter.convertViewPositionToModelPosition(new P(t,e.getLineMinColumn(t))),n=e.model._setTrackedRange(this._modelTrackedRange,new I(i.lineNumber,i.column,i.lineNumber,i.column),1),s=e.viewLayout.getVerticalOffsetForLineNumber(t),r=e.viewLayout.getCurrentScrollTop();this._viewLineNumber=t,this._isValid=!0,this._modelTrackedRange=n,this._startLineDelta=r-s}invalidate(){this._isValid=!1}}class Roe{constructor(){this._asMap=Object.create(null),this.asArray=[]}accept(e,t,i,n,s){const r=this._asMap[e];if(r){const a=r.data,l=a[a.length-3],c=a[a.length-1];if(l===s&&c+1>=i){n>c&&(a[a.length-1]=n);return}a.push(s,i,n)}else{const a=new w_(e,t,[s,i,n]);this._asMap[e]=a,this.asArray.push(a)}}}class Aoe{constructor(){this.hiddenAreas=new Map,this.shouldRecompute=!1,this.ranges=[]}setHiddenAreas(e,t){const i=this.hiddenAreas.get(e);i&&JO(i,t)||(this.hiddenAreas.set(e,t),this.shouldRecompute=!0)}getMergedRanges(){if(!this.shouldRecompute)return this.ranges;this.shouldRecompute=!1;const e=Array.from(this.hiddenAreas.values()).reduce((t,i)=>Poe(t,i),[]);return JO(this.ranges,e)?this.ranges:(this.ranges=e,this.ranges)}}function Poe(o,e){const t=[];let i=0,n=0;for(;i=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Aa=function(o,e){return function(t,i){e(t,i,o)}},md,dh;let I_=(dh=class extends z{get isSimpleWidget(){return this._configuration.isSimpleWidget}get contextMenuId(){return this._configuration.contextMenuId}constructor(e,t,i,n,s,r,a,l,c,d,h,u){super(),this.languageConfigurationService=h,this._deliveryQueue=kW(),this._contributions=this._register(new Wse),this._onDidDispose=this._register(new A),this.onDidDispose=this._onDidDispose.event,this._onDidChangeModelContent=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelContent=this._onDidChangeModelContent.event,this._onDidChangeModelLanguage=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguage=this._onDidChangeModelLanguage.event,this._onDidChangeModelLanguageConfiguration=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguageConfiguration=this._onDidChangeModelLanguageConfiguration.event,this._onDidChangeModelOptions=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelOptions=this._onDidChangeModelOptions.event,this._onDidChangeModelDecorations=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelDecorations=this._onDidChangeModelDecorations.event,this._onDidChangeModelTokens=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelTokens=this._onDidChangeModelTokens.event,this._onDidChangeConfiguration=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._onWillChangeModel=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onWillChangeModel=this._onWillChangeModel.event,this._onDidChangeModel=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModel=this._onDidChangeModel.event,this._onDidChangeCursorPosition=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorPosition=this._onDidChangeCursorPosition.event,this._onDidChangeCursorSelection=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorSelection=this._onDidChangeCursorSelection.event,this._onDidAttemptReadOnlyEdit=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidAttemptReadOnlyEdit=this._onDidAttemptReadOnlyEdit.event,this._onDidLayoutChange=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidLayoutChange=this._onDidLayoutChange.event,this._editorTextFocus=this._register(new t4({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorText=this._editorTextFocus.onDidChangeToTrue,this.onDidBlurEditorText=this._editorTextFocus.onDidChangeToFalse,this._editorWidgetFocus=this._register(new t4({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorWidget=this._editorWidgetFocus.onDidChangeToTrue,this.onDidBlurEditorWidget=this._editorWidgetFocus.onDidChangeToFalse,this._onWillType=this._register(new sn(this._contributions,this._deliveryQueue)),this.onWillType=this._onWillType.event,this._onDidType=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidType=this._onDidType.event,this._onDidCompositionStart=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidCompositionStart=this._onDidCompositionStart.event,this._onDidCompositionEnd=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidCompositionEnd=this._onDidCompositionEnd.event,this._onDidPaste=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidPaste=this._onDidPaste.event,this._onMouseUp=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseUp=this._onMouseUp.event,this._onMouseDown=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDown=this._onMouseDown.event,this._onMouseDrag=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDrag=this._onMouseDrag.event,this._onMouseDrop=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDrop=this._onMouseDrop.event,this._onMouseDropCanceled=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDropCanceled=this._onMouseDropCanceled.event,this._onDropIntoEditor=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDropIntoEditor=this._onDropIntoEditor.event,this._onContextMenu=this._register(new sn(this._contributions,this._deliveryQueue)),this.onContextMenu=this._onContextMenu.event,this._onMouseMove=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseMove=this._onMouseMove.event,this._onMouseLeave=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseLeave=this._onMouseLeave.event,this._onMouseWheel=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseWheel=this._onMouseWheel.event,this._onKeyUp=this._register(new sn(this._contributions,this._deliveryQueue)),this.onKeyUp=this._onKeyUp.event,this._onKeyDown=this._register(new sn(this._contributions,this._deliveryQueue)),this.onKeyDown=this._onKeyDown.event,this._onDidContentSizeChange=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._onDidScrollChange=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidScrollChange=this._onDidScrollChange.event,this._onDidChangeViewZones=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeViewZones=this._onDidChangeViewZones.event,this._onDidChangeHiddenAreas=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeHiddenAreas=this._onDidChangeHiddenAreas.event,this._updateCounter=0,this._onBeginUpdate=this._register(new A),this.onBeginUpdate=this._onBeginUpdate.event,this._onEndUpdate=this._register(new A),this.onEndUpdate=this._onEndUpdate.event,this._actions=new Map,this._bannerDomNode=null,this._dropIntoEditorDecorations=this.createDecorationsCollection(),s.willCreateCodeEditor();const f={...t};this._domElement=e,this._overflowWidgetsDomNode=f.overflowWidgetsDomNode,delete f.overflowWidgetsDomNode,this._id=++Foe,this._decorationTypeKeysToIds={},this._decorationTypeSubtypes={},this._telemetryData=i.telemetryData,this._configuration=this._register(this._createConfiguration(i.isSimpleWidget||!1,i.contextMenuId??(i.isSimpleWidget?$e.SimpleEditorContext:$e.EditorContext),f,d)),this._register(this._configuration.onDidChange(_=>{this._onDidChangeConfiguration.fire(_);const b=this._configuration.options;if(_.hasChanged(146)){const C=b.get(146);this._onDidLayoutChange.fire(C)}})),this._contextKeyService=this._register(a.createScoped(this._domElement)),this._notificationService=c,this._codeEditorService=s,this._commandService=r,this._themeService=l,this._register(new Woe(this,this._contextKeyService)),this._register(new Hoe(this,this._contextKeyService,u)),this._instantiationService=this._register(n.createChild(new jg([De,this._contextKeyService]))),this._modelData=null,this._focusTracker=new Voe(e,this._overflowWidgetsDomNode),this._register(this._focusTracker.onChange(()=>{this._editorWidgetFocus.setValue(this._focusTracker.hasFocus())})),this._contentWidgets={},this._overlayWidgets={},this._glyphMarginWidgets={};let g;Array.isArray(i.contributions)?g=i.contributions:g=Af.getEditorContributions(),this._contributions.initialize(this,g,this._instantiationService);for(const _ of Af.getEditorActions()){if(this._actions.has(_.id)){Ze(new Error(`Cannot have two actions with the same id ${_.id}`));continue}const b=new N8(_.id,_.label,_.alias,_.metadata,_.precondition??void 0,C=>this._instantiationService.invokeFunction(w=>Promise.resolve(_.runEditorCommand(w,this,C))),this._contextKeyService);this._actions.set(b.id,b)}const p=()=>!this._configuration.options.get(92)&&this._configuration.options.get(36).enabled;this._register(new OV(this._domElement,{onDragOver:_=>{if(!p())return;const b=this.getTargetAtClientPoint(_.clientX,_.clientY);b?.position&&this.showDropIndicatorAt(b.position)},onDrop:async _=>{if(!p()||(this.removeDropIndicator(),!_.dataTransfer))return;const b=this.getTargetAtClientPoint(_.clientX,_.clientY);b?.position&&this._onDropIntoEditor.fire({position:b.position,event:_})},onDragLeave:()=>{this.removeDropIndicator()},onDragEnd:()=>{this.removeDropIndicator()}})),this._codeEditorService.addCodeEditor(this)}writeScreenReaderContent(e){this._modelData?.view.writeScreenReaderContent(e)}_createConfiguration(e,t,i,n){return new wI(e,t,i,this._domElement,n)}getId(){return this.getEditorType()+":"+this._id}getEditorType(){return yy.ICodeEditor}dispose(){this._codeEditorService.removeCodeEditor(this),this._focusTracker.dispose(),this._actions.clear(),this._contentWidgets={},this._overlayWidgets={},this._removeDecorationTypes(),this._postDetachModelCleanup(this._detachModel()),this._onDidDispose.fire(),super.dispose()}invokeWithinContext(e){return this._instantiationService.invokeFunction(e)}updateOptions(e){this._configuration.updateOptions(e||{})}getOptions(){return this._configuration.options}getOption(e){return this._configuration.options.get(e)}getRawOptions(){return this._configuration.getRawOptions()}getOverflowWidgetsDomNode(){return this._overflowWidgetsDomNode}getConfiguredWordAtPosition(e){return this._modelData?ii.getWordAtPosition(this._modelData.model,this._configuration.options.get(132),this._configuration.options.get(131),e):null}getValue(e=null){if(!this._modelData)return"";const t=!!(e&&e.preserveBOM);let i=0;return e&&e.lineEnding&&e.lineEnding===` +`?i=1:e&&e.lineEnding&&e.lineEnding===`\r +`&&(i=2),this._modelData.model.getValue(i,t)}setValue(e){try{if(this._beginUpdate(),!this._modelData)return;this._modelData.model.setValue(e)}finally{this._endUpdate()}}getModel(){return this._modelData?this._modelData.model:null}setModel(e=null){try{this._beginUpdate();const t=e;if(this._modelData===null&&t===null||this._modelData&&this._modelData.model===t)return;const i={oldModelUrl:this._modelData?.model.uri||null,newModelUrl:t?.uri||null};this._onWillChangeModel.fire(i);const n=this.hasTextFocus(),s=this._detachModel();this._attachModel(t),n&&this.hasModel()&&this.focus(),this._removeDecorationTypes(),this._onDidChangeModel.fire(i),this._postDetachModelCleanup(s),this._contributionsDisposable=this._contributions.onAfterModelAttached()}finally{this._endUpdate()}}_removeDecorationTypes(){if(this._decorationTypeKeysToIds={},this._decorationTypeSubtypes){for(const e in this._decorationTypeSubtypes){const t=this._decorationTypeSubtypes[e];for(const i in t)this._removeDecorationType(e+"-"+i)}this._decorationTypeSubtypes={}}}getVisibleRanges(){return this._modelData?this._modelData.viewModel.getVisibleRanges():[]}getVisibleRangesPlusViewportAboveBelow(){return this._modelData?this._modelData.viewModel.getVisibleRangesPlusViewportAboveBelow():[]}getWhitespaces(){return this._modelData?this._modelData.viewModel.viewLayout.getWhitespaces():[]}static _getVerticalOffsetAfterPosition(e,t,i,n){const s=e.model.validatePosition({lineNumber:t,column:i}),r=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(s);return e.viewModel.viewLayout.getVerticalOffsetAfterLineNumber(r.lineNumber,n)}getTopForLineNumber(e,t=!1){return this._modelData?md._getVerticalOffsetForPosition(this._modelData,e,1,t):-1}getTopForPosition(e,t){return this._modelData?md._getVerticalOffsetForPosition(this._modelData,e,t,!1):-1}static _getVerticalOffsetForPosition(e,t,i,n=!1){const s=e.model.validatePosition({lineNumber:t,column:i}),r=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(s);return e.viewModel.viewLayout.getVerticalOffsetForLineNumber(r.lineNumber,n)}getBottomForLineNumber(e,t=!1){if(!this._modelData)return-1;const i=this._modelData.model.getLineMaxColumn(e);return md._getVerticalOffsetAfterPosition(this._modelData,e,i,t)}setHiddenAreas(e,t){this._modelData?.viewModel.setHiddenAreas(e.map(i=>I.lift(i)),t)}getVisibleColumnFromPosition(e){if(!this._modelData)return e.column;const t=this._modelData.model.validatePosition(e),i=this._modelData.model.getOptions().tabSize;return _i.visibleColumnFromColumn(this._modelData.model.getLineContent(t.lineNumber),t.column,i)+1}getPosition(){return this._modelData?this._modelData.viewModel.getPosition():null}setPosition(e,t="api"){if(this._modelData){if(!P.isIPosition(e))throw new Error("Invalid arguments");this._modelData.viewModel.setSelections(t,[{selectionStartLineNumber:e.lineNumber,selectionStartColumn:e.column,positionLineNumber:e.lineNumber,positionColumn:e.column}])}}_sendRevealRange(e,t,i,n){if(!this._modelData)return;if(!I.isIRange(e))throw new Error("Invalid arguments");const s=this._modelData.model.validateRange(e),r=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(s);this._modelData.viewModel.revealRange("api",i,r,t,n)}revealLine(e,t=0){this._revealLine(e,0,t)}revealLineInCenter(e,t=0){this._revealLine(e,1,t)}revealLineInCenterIfOutsideViewport(e,t=0){this._revealLine(e,2,t)}revealLineNearTop(e,t=0){this._revealLine(e,5,t)}_revealLine(e,t,i){if(typeof e!="number")throw new Error("Invalid arguments");this._sendRevealRange(new I(e,1,e,1),t,!1,i)}revealPosition(e,t=0){this._revealPosition(e,0,!0,t)}revealPositionInCenter(e,t=0){this._revealPosition(e,1,!0,t)}revealPositionInCenterIfOutsideViewport(e,t=0){this._revealPosition(e,2,!0,t)}revealPositionNearTop(e,t=0){this._revealPosition(e,5,!0,t)}_revealPosition(e,t,i,n){if(!P.isIPosition(e))throw new Error("Invalid arguments");this._sendRevealRange(new I(e.lineNumber,e.column,e.lineNumber,e.column),t,i,n)}getSelection(){return this._modelData?this._modelData.viewModel.getSelection():null}getSelections(){return this._modelData?this._modelData.viewModel.getSelections():null}setSelection(e,t="api"){const i=Fe.isISelection(e),n=I.isIRange(e);if(!i&&!n)throw new Error("Invalid arguments");if(i)this._setSelectionImpl(e,t);else if(n){const s={selectionStartLineNumber:e.startLineNumber,selectionStartColumn:e.startColumn,positionLineNumber:e.endLineNumber,positionColumn:e.endColumn};this._setSelectionImpl(s,t)}}_setSelectionImpl(e,t){if(!this._modelData)return;const i=new Fe(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn);this._modelData.viewModel.setSelections(t,[i])}revealLines(e,t,i=0){this._revealLines(e,t,0,i)}revealLinesInCenter(e,t,i=0){this._revealLines(e,t,1,i)}revealLinesInCenterIfOutsideViewport(e,t,i=0){this._revealLines(e,t,2,i)}revealLinesNearTop(e,t,i=0){this._revealLines(e,t,5,i)}_revealLines(e,t,i,n){if(typeof e!="number"||typeof t!="number")throw new Error("Invalid arguments");this._sendRevealRange(new I(e,1,t,1),i,!1,n)}revealRange(e,t=0,i=!1,n=!0){this._revealRange(e,i?1:0,n,t)}revealRangeInCenter(e,t=0){this._revealRange(e,1,!0,t)}revealRangeInCenterIfOutsideViewport(e,t=0){this._revealRange(e,2,!0,t)}revealRangeNearTop(e,t=0){this._revealRange(e,5,!0,t)}revealRangeNearTopIfOutsideViewport(e,t=0){this._revealRange(e,6,!0,t)}revealRangeAtTop(e,t=0){this._revealRange(e,3,!0,t)}_revealRange(e,t,i,n){if(!I.isIRange(e))throw new Error("Invalid arguments");this._sendRevealRange(I.lift(e),t,i,n)}setSelections(e,t="api",i=0){if(this._modelData){if(!e||e.length===0)throw new Error("Invalid arguments");for(let n=0,s=e.length;n0&&this._modelData.viewModel.restoreCursorState(i):this._modelData.viewModel.restoreCursorState([i]),this._contributions.restoreViewState(t.contributionsState||{});const n=this._modelData.viewModel.reduceRestoreState(t.viewState);this._modelData.view.restoreState(n)}}handleInitialized(){this._getViewModel()?.visibleLinesStabilized()}getContribution(e){return this._contributions.get(e)}getActions(){return Array.from(this._actions.values())}getSupportedActions(){let e=this.getActions();return e=e.filter(t=>t.isSupported()),e}getAction(e){return this._actions.get(e)||null}trigger(e,t,i){i=i||{};try{switch(this._beginUpdate(),t){case"compositionStart":this._startComposition();return;case"compositionEnd":this._endComposition(e);return;case"type":{const s=i;this._type(e,s.text||"");return}case"replacePreviousChar":{const s=i;this._compositionType(e,s.text||"",s.replaceCharCnt||0,0,0);return}case"compositionType":{const s=i;this._compositionType(e,s.text||"",s.replacePrevCharCnt||0,s.replaceNextCharCnt||0,s.positionDelta||0);return}case"paste":{const s=i;this._paste(e,s.text||"",s.pasteOnNewLine||!1,s.multicursorText||null,s.mode||null,s.clipboardEvent);return}case"cut":this._cut(e);return}const n=this.getAction(t);if(n){Promise.resolve(n.run(i)).then(void 0,Ze);return}if(!this._modelData||this._triggerEditorCommand(e,t,i))return;this._triggerCommand(t,i)}finally{this._endUpdate()}}_triggerCommand(e,t){this._commandService.executeCommand(e,t)}_startComposition(){this._modelData&&(this._modelData.viewModel.startComposition(),this._onDidCompositionStart.fire())}_endComposition(e){this._modelData&&(this._modelData.viewModel.endComposition(e),this._onDidCompositionEnd.fire())}_type(e,t){!this._modelData||t.length===0||(e==="keyboard"&&this._onWillType.fire(t),this._modelData.viewModel.type(t,e),e==="keyboard"&&this._onDidType.fire(t))}_compositionType(e,t,i,n,s){this._modelData&&this._modelData.viewModel.compositionType(t,i,n,s,e)}_paste(e,t,i,n,s,r){if(!this._modelData)return;const a=this._modelData.viewModel,l=a.getSelection().getStartPosition();a.paste(t,i,n,e);const c=a.getSelection().getStartPosition();e==="keyboard"&&this._onDidPaste.fire({clipboardEvent:r,range:new I(l.lineNumber,l.column,c.lineNumber,c.column),languageId:s})}_cut(e){this._modelData&&this._modelData.viewModel.cut(e)}_triggerEditorCommand(e,t,i){const n=Af.getEditorCommand(t);return n?(i=i||{},i.source=e,this._instantiationService.invokeFunction(s=>{Promise.resolve(n.runEditorCommand(s,this,i)).then(void 0,Ze)}),!0):!1}_getViewModel(){return this._modelData?this._modelData.viewModel:null}pushUndoStop(){return!this._modelData||this._configuration.options.get(92)?!1:(this._modelData.model.pushStackElement(),!0)}popUndoStop(){return!this._modelData||this._configuration.options.get(92)?!1:(this._modelData.model.popStackElement(),!0)}executeEdits(e,t,i){if(!this._modelData||this._configuration.options.get(92))return!1;let n;return i?Array.isArray(i)?n=()=>i:n=i:n=()=>null,this._modelData.viewModel.executeEdits(e,t,n),!0}executeCommand(e,t){this._modelData&&this._modelData.viewModel.executeCommand(t,e)}executeCommands(e,t){this._modelData&&this._modelData.viewModel.executeCommands(t,e)}createDecorationsCollection(e){return new zoe(this,e)}changeDecorations(e){return this._modelData?this._modelData.model.changeDecorations(e,this._id):null}getLineDecorations(e){return this._modelData?this._modelData.model.getLineDecorations(e,this._id,rC(this._configuration.options)):null}getDecorationsInRange(e){return this._modelData?this._modelData.model.getDecorationsInRange(e,this._id,rC(this._configuration.options)):null}deltaDecorations(e,t){return this._modelData?e.length===0&&t.length===0?e:this._modelData.model.deltaDecorations(e,t,this._id):[]}removeDecorations(e){!this._modelData||e.length===0||this._modelData.model.changeDecorations(t=>{t.deltaDecorations(e,[])})}removeDecorationsByType(e){const t=this._decorationTypeKeysToIds[e];t&&this.changeDecorations(i=>i.deltaDecorations(t,[])),this._decorationTypeKeysToIds.hasOwnProperty(e)&&delete this._decorationTypeKeysToIds[e],this._decorationTypeSubtypes.hasOwnProperty(e)&&delete this._decorationTypeSubtypes[e]}getLayoutInfo(){return this._configuration.options.get(146)}createOverviewRuler(e){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.createOverviewRuler(e)}getContainerDomNode(){return this._domElement}getDomNode(){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.domNode.domNode}delegateVerticalScrollbarPointerDown(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.delegateScrollFromMouseWheelEvent(e)}layout(e,t=!1){this._configuration.observeContainer(e),t||this.render()}focus(){!this._modelData||!this._modelData.hasRealView||this._modelData.view.focus()}hasTextFocus(){return!this._modelData||!this._modelData.hasRealView?!1:this._modelData.view.isFocused()}hasWidgetFocus(){return this._focusTracker&&this._focusTracker.hasFocus()}addContentWidget(e){const t={widget:e,position:e.getPosition()};this._contentWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a content widget with the same id:"+e.getId()),this._contentWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(t)}layoutContentWidget(e){const t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){const i=this._contentWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(i)}}removeContentWidget(e){const t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){const i=this._contentWidgets[t];delete this._contentWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(i)}}addOverlayWidget(e){const t={widget:e,position:e.getPosition()};this._overlayWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(t)}layoutOverlayWidget(e){const t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){const i=this._overlayWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(i)}}removeOverlayWidget(e){const t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){const i=this._overlayWidgets[t];delete this._overlayWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(i)}}addGlyphMarginWidget(e){const t={widget:e,position:e.getPosition()};this._glyphMarginWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a glyph margin widget with the same id."),this._glyphMarginWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addGlyphMarginWidget(t)}layoutGlyphMarginWidget(e){const t=e.getId();if(this._glyphMarginWidgets.hasOwnProperty(t)){const i=this._glyphMarginWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutGlyphMarginWidget(i)}}removeGlyphMarginWidget(e){const t=e.getId();if(this._glyphMarginWidgets.hasOwnProperty(t)){const i=this._glyphMarginWidgets[t];delete this._glyphMarginWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeGlyphMarginWidget(i)}}changeViewZones(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.change(e)}getTargetAtClientPoint(e,t){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.getTargetAtClientPoint(e,t)}getScrolledVisiblePosition(e){if(!this._modelData||!this._modelData.hasRealView)return null;const t=this._modelData.model.validatePosition(e),i=this._configuration.options,n=i.get(146),s=md._getVerticalOffsetForPosition(this._modelData,t.lineNumber,t.column)-this.getScrollTop(),r=this._modelData.view.getOffsetForColumn(t.lineNumber,t.column)+n.glyphMarginWidth+n.lineNumbersWidth+n.decorationsWidth-this.getScrollLeft();return{top:s,left:r,height:i.get(67)}}getOffsetForColumn(e,t){return!this._modelData||!this._modelData.hasRealView?-1:this._modelData.view.getOffsetForColumn(e,t)}render(e=!1){!this._modelData||!this._modelData.hasRealView||this._modelData.viewModel.batchEvents(()=>{this._modelData.view.render(!0,e)})}setAriaOptions(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.setAriaOptions(e)}applyFontInfo(e){qi(e,this._configuration.options.get(50))}setBanner(e,t){this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._bannerDomNode.remove(),this._bannerDomNode=e,this._configuration.setReservedHeight(e?t:0),this._bannerDomNode&&this._domElement.prepend(this._bannerDomNode)}_attachModel(e){if(!e){this._modelData=null;return}const t=[];this._domElement.setAttribute("data-mode-id",e.getLanguageId()),this._configuration.setIsDominatedByLongLines(e.isDominatedByLongLines()),this._configuration.setModelLineCount(e.getLineCount());const i=e.onBeforeAttached(),n=new Moe(this._id,this._configuration,e,q2.create(fe(this._domElement)),G2.create(this._configuration.options),a=>fs(fe(this._domElement),a),this.languageConfigurationService,this._themeService,i,{batchChanges:a=>{try{return this._beginUpdate(),a()}finally{this._endUpdate()}}});t.push(e.onWillDispose(()=>this.setModel(null))),t.push(n.onEvent(a=>{switch(a.kind){case 0:this._onDidContentSizeChange.fire(a);break;case 1:this._editorTextFocus.setValue(a.hasFocus);break;case 2:this._onDidScrollChange.fire(a);break;case 3:this._onDidChangeViewZones.fire();break;case 4:this._onDidChangeHiddenAreas.fire();break;case 5:this._onDidAttemptReadOnlyEdit.fire();break;case 6:{if(a.reachedMaxCursorCount){const h=this.getOption(80),u=m("cursors.maximum","The number of cursors has been limited to {0}. Consider using [find and replace](https://code.visualstudio.com/docs/editor/codebasics#_find-and-replace) for larger changes or increase the editor multi cursor limit setting.",h);this._notificationService.prompt(bT.Warning,u,[{label:"Find and Replace",run:()=>{this._commandService.executeCommand("editor.action.startFindReplaceAction")}},{label:m("goToSetting","Increase Multi Cursor Limit"),run:()=>{this._commandService.executeCommand("workbench.action.openSettings2",{query:"editor.multiCursorLimit"})}}])}const l=[];for(let h=0,u=a.selections.length;h{this._paste("keyboard",s,r,a,l)},type:s=>{this._type("keyboard",s)},compositionType:(s,r,a,l)=>{this._compositionType("keyboard",s,r,a,l)},startComposition:()=>{this._startComposition()},endComposition:()=>{this._endComposition("keyboard")},cut:()=>{this._cut("keyboard")}}:t={paste:(s,r,a,l)=>{const c={text:s,pasteOnNewLine:r,multicursorText:a,mode:l};this._commandService.executeCommand("paste",c)},type:s=>{const r={text:s};this._commandService.executeCommand("type",r)},compositionType:(s,r,a,l)=>{if(a||l){const c={text:s,replacePrevCharCnt:r,replaceNextCharCnt:a,positionDelta:l};this._commandService.executeCommand("compositionType",c)}else{const c={text:s,replaceCharCnt:r};this._commandService.executeCommand("replacePreviousChar",c)}},startComposition:()=>{this._commandService.executeCommand("compositionStart",{})},endComposition:()=>{this._commandService.executeCommand("compositionEnd",{})},cut:()=>{this._commandService.executeCommand("cut",{})}};const i=new Iy(e.coordinatesConverter);return i.onKeyDown=s=>this._onKeyDown.fire(s),i.onKeyUp=s=>this._onKeyUp.fire(s),i.onContextMenu=s=>this._onContextMenu.fire(s),i.onMouseMove=s=>this._onMouseMove.fire(s),i.onMouseLeave=s=>this._onMouseLeave.fire(s),i.onMouseDown=s=>this._onMouseDown.fire(s),i.onMouseUp=s=>this._onMouseUp.fire(s),i.onMouseDrag=s=>this._onMouseDrag.fire(s),i.onMouseDrop=s=>this._onMouseDrop.fire(s),i.onMouseDropCanceled=s=>this._onMouseDropCanceled.fire(s),i.onMouseWheel=s=>this._onMouseWheel.fire(s),[new RI(t,this._configuration,this._themeService.getColorTheme(),e,i,this._overflowWidgetsDomNode,this._instantiationService),!0]}_postDetachModelCleanup(e){e?.removeAllDecorationsWithOwnerId(this._id)}_detachModel(){if(this._contributionsDisposable?.dispose(),this._contributionsDisposable=void 0,!this._modelData)return null;const e=this._modelData.model,t=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),t&&this._domElement.contains(t)&&t.remove(),this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._bannerDomNode.remove(),e}_removeDecorationType(e){this._codeEditorService.removeDecorationType(e)}hasModel(){return this._modelData!==null}showDropIndicatorAt(e){const t=[{range:new I(e.lineNumber,e.column,e.lineNumber,e.column),options:md.dropIntoEditorDecorationOptions}];this._dropIntoEditorDecorations.set(t),this.revealPosition(e,1)}removeDropIndicator(){this._dropIntoEditorDecorations.clear()}setContextValue(e,t){this._contextKeyService.createKey(e,t)}_beginUpdate(){this._updateCounter++,this._updateCounter===1&&this._onBeginUpdate.fire()}_endUpdate(){this._updateCounter--,this._updateCounter===0&&this._onEndUpdate.fire()}},md=dh,dh.dropIntoEditorDecorationOptions=kt.register({description:"workbench-dnd-target",className:"dnd-target"}),dh);I_=md=Ooe([Aa(3,ke),Aa(4,Pt),Aa(5,hi),Aa(6,De),Aa(7,en),Aa(8,mn),Aa(9,ms),Aa(10,Gn),Aa(11,Se)],I_);let Foe=0;class Boe{constructor(e,t,i,n,s,r){this.model=e,this.viewModel=t,this.view=i,this.hasRealView=n,this.listenersToRemove=s,this.attachedView=r}dispose(){xt(this.listenersToRemove),this.model.onBeforeDetached(this.attachedView),this.hasRealView&&this.view.dispose(),this.viewModel.dispose()}}class t4 extends z{constructor(e){super(),this._emitterOptions=e,this._onDidChangeToTrue=this._register(new A(this._emitterOptions)),this.onDidChangeToTrue=this._onDidChangeToTrue.event,this._onDidChangeToFalse=this._register(new A(this._emitterOptions)),this.onDidChangeToFalse=this._onDidChangeToFalse.event,this._value=0}setValue(e){const t=e?2:1;this._value!==t&&(this._value=t,this._value===2?this._onDidChangeToTrue.fire():this._value===1&&this._onDidChangeToFalse.fire())}}class sn extends A{constructor(e,t){super({deliveryQueue:t}),this._contributions=e}fire(e){this._contributions.onBeforeInteractionEvent(),super.fire(e)}}class Woe extends z{constructor(e,t){super(),this._editor=e,t.createKey("editorId",e.getId()),this._editorSimpleInput=K.editorSimpleInput.bindTo(t),this._editorFocus=K.focus.bindTo(t),this._textInputFocus=K.textInputFocus.bindTo(t),this._editorTextFocus=K.editorTextFocus.bindTo(t),this._tabMovesFocus=K.tabMovesFocus.bindTo(t),this._editorReadonly=K.readOnly.bindTo(t),this._inDiffEditor=K.inDiffEditor.bindTo(t),this._editorColumnSelection=K.columnSelection.bindTo(t),this._hasMultipleSelections=K.hasMultipleSelections.bindTo(t),this._hasNonEmptySelection=K.hasNonEmptySelection.bindTo(t),this._canUndo=K.canUndo.bindTo(t),this._canRedo=K.canRedo.bindTo(t),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromConfig())),this._register(this._editor.onDidChangeCursorSelection(()=>this._updateFromSelection())),this._register(this._editor.onDidFocusEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidFocusEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidChangeModel(()=>this._updateFromModel())),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromModel())),this._register(xv.onDidChangeTabFocus(i=>this._tabMovesFocus.set(i))),this._updateFromConfig(),this._updateFromSelection(),this._updateFromFocus(),this._updateFromModel(),this._editorSimpleInput.set(this._editor.isSimpleWidget)}_updateFromConfig(){const e=this._editor.getOptions();this._tabMovesFocus.set(xv.getTabFocusMode()),this._editorReadonly.set(e.get(92)),this._inDiffEditor.set(e.get(61)),this._editorColumnSelection.set(e.get(22))}_updateFromSelection(){const e=this._editor.getSelections();e?(this._hasMultipleSelections.set(e.length>1),this._hasNonEmptySelection.set(e.some(t=>!t.isEmpty()))):(this._hasMultipleSelections.reset(),this._hasNonEmptySelection.reset())}_updateFromFocus(){this._editorFocus.set(this._editor.hasWidgetFocus()&&!this._editor.isSimpleWidget),this._editorTextFocus.set(this._editor.hasTextFocus()&&!this._editor.isSimpleWidget),this._textInputFocus.set(this._editor.hasTextFocus())}_updateFromModel(){const e=this._editor.getModel();this._canUndo.set(!!(e&&e.canUndo())),this._canRedo.set(!!(e&&e.canRedo()))}}class Hoe extends z{constructor(e,t,i){super(),this._editor=e,this._contextKeyService=t,this._languageFeaturesService=i,this._langId=K.languageId.bindTo(t),this._hasCompletionItemProvider=K.hasCompletionItemProvider.bindTo(t),this._hasCodeActionsProvider=K.hasCodeActionsProvider.bindTo(t),this._hasCodeLensProvider=K.hasCodeLensProvider.bindTo(t),this._hasDefinitionProvider=K.hasDefinitionProvider.bindTo(t),this._hasDeclarationProvider=K.hasDeclarationProvider.bindTo(t),this._hasImplementationProvider=K.hasImplementationProvider.bindTo(t),this._hasTypeDefinitionProvider=K.hasTypeDefinitionProvider.bindTo(t),this._hasHoverProvider=K.hasHoverProvider.bindTo(t),this._hasDocumentHighlightProvider=K.hasDocumentHighlightProvider.bindTo(t),this._hasDocumentSymbolProvider=K.hasDocumentSymbolProvider.bindTo(t),this._hasReferenceProvider=K.hasReferenceProvider.bindTo(t),this._hasRenameProvider=K.hasRenameProvider.bindTo(t),this._hasSignatureHelpProvider=K.hasSignatureHelpProvider.bindTo(t),this._hasInlayHintsProvider=K.hasInlayHintsProvider.bindTo(t),this._hasDocumentFormattingProvider=K.hasDocumentFormattingProvider.bindTo(t),this._hasDocumentSelectionFormattingProvider=K.hasDocumentSelectionFormattingProvider.bindTo(t),this._hasMultipleDocumentFormattingProvider=K.hasMultipleDocumentFormattingProvider.bindTo(t),this._hasMultipleDocumentSelectionFormattingProvider=K.hasMultipleDocumentSelectionFormattingProvider.bindTo(t),this._isInEmbeddedEditor=K.isInEmbeddedEditor.bindTo(t);const n=()=>this._update();this._register(e.onDidChangeModel(n)),this._register(e.onDidChangeModelLanguage(n)),this._register(i.completionProvider.onDidChange(n)),this._register(i.codeActionProvider.onDidChange(n)),this._register(i.codeLensProvider.onDidChange(n)),this._register(i.definitionProvider.onDidChange(n)),this._register(i.declarationProvider.onDidChange(n)),this._register(i.implementationProvider.onDidChange(n)),this._register(i.typeDefinitionProvider.onDidChange(n)),this._register(i.hoverProvider.onDidChange(n)),this._register(i.documentHighlightProvider.onDidChange(n)),this._register(i.documentSymbolProvider.onDidChange(n)),this._register(i.referenceProvider.onDidChange(n)),this._register(i.renameProvider.onDidChange(n)),this._register(i.documentFormattingEditProvider.onDidChange(n)),this._register(i.documentRangeFormattingEditProvider.onDidChange(n)),this._register(i.signatureHelpProvider.onDidChange(n)),this._register(i.inlayHintsProvider.onDidChange(n)),n()}dispose(){super.dispose()}reset(){this._contextKeyService.bufferChangeEvents(()=>{this._langId.reset(),this._hasCompletionItemProvider.reset(),this._hasCodeActionsProvider.reset(),this._hasCodeLensProvider.reset(),this._hasDefinitionProvider.reset(),this._hasDeclarationProvider.reset(),this._hasImplementationProvider.reset(),this._hasTypeDefinitionProvider.reset(),this._hasHoverProvider.reset(),this._hasDocumentHighlightProvider.reset(),this._hasDocumentSymbolProvider.reset(),this._hasReferenceProvider.reset(),this._hasRenameProvider.reset(),this._hasDocumentFormattingProvider.reset(),this._hasDocumentSelectionFormattingProvider.reset(),this._hasSignatureHelpProvider.reset(),this._isInEmbeddedEditor.reset()})}_update(){const e=this._editor.getModel();if(!e){this.reset();return}this._contextKeyService.bufferChangeEvents(()=>{this._langId.set(e.getLanguageId()),this._hasCompletionItemProvider.set(this._languageFeaturesService.completionProvider.has(e)),this._hasCodeActionsProvider.set(this._languageFeaturesService.codeActionProvider.has(e)),this._hasCodeLensProvider.set(this._languageFeaturesService.codeLensProvider.has(e)),this._hasDefinitionProvider.set(this._languageFeaturesService.definitionProvider.has(e)),this._hasDeclarationProvider.set(this._languageFeaturesService.declarationProvider.has(e)),this._hasImplementationProvider.set(this._languageFeaturesService.implementationProvider.has(e)),this._hasTypeDefinitionProvider.set(this._languageFeaturesService.typeDefinitionProvider.has(e)),this._hasHoverProvider.set(this._languageFeaturesService.hoverProvider.has(e)),this._hasDocumentHighlightProvider.set(this._languageFeaturesService.documentHighlightProvider.has(e)),this._hasDocumentSymbolProvider.set(this._languageFeaturesService.documentSymbolProvider.has(e)),this._hasReferenceProvider.set(this._languageFeaturesService.referenceProvider.has(e)),this._hasRenameProvider.set(this._languageFeaturesService.renameProvider.has(e)),this._hasSignatureHelpProvider.set(this._languageFeaturesService.signatureHelpProvider.has(e)),this._hasInlayHintsProvider.set(this._languageFeaturesService.inlayHintsProvider.has(e)),this._hasDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.has(e)||this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasMultipleDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.all(e).length+this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._hasMultipleDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._isInEmbeddedEditor.set(e.uri.scheme===Te.walkThroughSnippet||e.uri.scheme===Te.vscodeChatCodeBlock)})}}class Voe extends z{constructor(e,t){super(),this._onChange=this._register(new A),this.onChange=this._onChange.event,this._hadFocus=void 0,this._hasDomElementFocus=!1,this._domFocusTracker=this._register(Ph(e)),this._overflowWidgetsDomNodeHasFocus=!1,this._register(this._domFocusTracker.onDidFocus(()=>{this._hasDomElementFocus=!0,this._update()})),this._register(this._domFocusTracker.onDidBlur(()=>{this._hasDomElementFocus=!1,this._update()})),t&&(this._overflowWidgetsDomNode=this._register(Ph(t)),this._register(this._overflowWidgetsDomNode.onDidFocus(()=>{this._overflowWidgetsDomNodeHasFocus=!0,this._update()})),this._register(this._overflowWidgetsDomNode.onDidBlur(()=>{this._overflowWidgetsDomNodeHasFocus=!1,this._update()})))}_update(){const e=this._hasDomElementFocus||this._overflowWidgetsDomNodeHasFocus;this._hadFocus!==e&&(this._hadFocus=e,this._onChange.fire(void 0))}hasFocus(){return this._hadFocus??!1}}class zoe{get length(){return this._decorationIds.length}constructor(e,t){this._editor=e,this._decorationIds=[],this._isChangingDecorations=!1,Array.isArray(t)&&t.length>0&&this.set(t)}onDidChange(e,t,i){return this._editor.onDidChangeModelDecorations(n=>{this._isChangingDecorations||e.call(t,n)},i)}getRange(e){return!this._editor.hasModel()||e>=this._decorationIds.length?null:this._editor.getModel().getDecorationRange(this._decorationIds[e])}getRanges(){if(!this._editor.hasModel())return[];const e=this._editor.getModel(),t=[];for(const i of this._decorationIds){const n=e.getDecorationRange(i);n&&t.push(n)}return t}has(e){return this._decorationIds.includes(e.id)}clear(){this._decorationIds.length!==0&&this.set([])}set(e){try{this._isChangingDecorations=!0,this._editor.changeDecorations(t=>{this._decorationIds=t.deltaDecorations(this._decorationIds,e)})}finally{this._isChangingDecorations=!1}return this._decorationIds}append(e){let t=[];try{this._isChangingDecorations=!0,this._editor.changeDecorations(i=>{t=i.deltaDecorations([],e),this._decorationIds=this._decorationIds.concat(t)})}finally{this._isChangingDecorations=!1}return t}}const Uoe=encodeURIComponent("");function cL(o){return Uoe+encodeURIComponent(o.toString())+$oe}const Koe=encodeURIComponent('');function qoe(o){return Koe+encodeURIComponent(o.toString())+joe}Sr((o,e)=>{const t=o.getColor(Y0);t&&e.addRule(`.monaco-editor .squiggly-error { background: url("data:image/svg+xml,${cL(t)}") repeat-x bottom left; }`);const i=o.getColor(Il);i&&e.addRule(`.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,${cL(i)}") repeat-x bottom left; }`);const n=o.getColor(ma);n&&e.addRule(`.monaco-editor .squiggly-info { background: url("data:image/svg+xml,${cL(n)}") repeat-x bottom left; }`);const s=o.getColor(xK);s&&e.addRule(`.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,${qoe(s)}") no-repeat bottom left; }`);const r=o.getColor(dQ);r&&e.addRule(`.monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: ${r.rgba.a}; }`)});class qh{static capture(e){if(e.getScrollTop()===0||e.hasPendingScrollAnimation())return new qh(e.getScrollTop(),e.getContentHeight(),null,0,null);let t=null,i=0;const n=e.getVisibleRanges();if(n.length>0){t=n[0].getStartPosition();const s=e.getTopForPosition(t.lineNumber,t.column);i=e.getScrollTop()-s}return new qh(e.getScrollTop(),e.getContentHeight(),t,i,e.getPosition())}constructor(e,t,i,n,s){this._initialScrollTop=e,this._initialContentHeight=t,this._visiblePosition=i,this._visiblePositionScrollDelta=n,this._cursorPosition=s}restore(e){if(!(this._initialContentHeight===e.getContentHeight()&&this._initialScrollTop===e.getScrollTop())&&this._visiblePosition){const t=e.getTopForPosition(this._visiblePosition.lineNumber,this._visiblePosition.column);e.setScrollTop(t+this._visiblePositionScrollDelta)}}restoreRelativeVerticalPositionOfCursor(e){if(this._initialContentHeight===e.getContentHeight()&&this._initialScrollTop===e.getScrollTop())return;const t=e.getPosition();if(!this._cursorPosition||!t)return;const i=e.getTopForLineNumber(t.lineNumber)-e.getTopForLineNumber(this._cursorPosition.lineNumber);e.setScrollTop(e.getScrollTop()+i,1)}}function Goe(o,e,t,i){if(o.length===0)return e;if(e.length===0)return o;const n=[];let s=0,r=0;for(;sd?(n.push(l),r++):(n.push(i(a,l)),s++,r++)}for(;s`Apply decorations from ${e.debugName}`},n=>{const s=e.read(n);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}function Bm(o,e){return o.appendChild(e),_e(()=>{e.remove()})}function Zoe(o,e){return o.prepend(e),_e(()=>{e.remove()})}class A8 extends z{get width(){return this._width}get height(){return this._height}get automaticLayout(){return this._automaticLayout}constructor(e,t){super(),this._automaticLayout=!1,this.elementSizeObserver=this._register(new g8(e,t)),this._width=Ge(this,this.elementSizeObserver.getWidth()),this._height=Ge(this,this.elementSizeObserver.getHeight()),this._register(this.elementSizeObserver.onDidChange(i=>Xt(n=>{this._width.set(this.elementSizeObserver.getWidth(),n),this._height.set(this.elementSizeObserver.getHeight(),n)})))}observe(e){this.elementSizeObserver.observe(e)}setAutomaticLayout(e){this._automaticLayout=e,e?this.elementSizeObserver.startObserving():this.elementSizeObserver.stopObserving()}}function i4(o,e,t){let i=e.get(),n=i,s=i;const r=Ge("animatedValue",i);let a=-1;const l=300;let c;t.add(Y_({createEmptyChangeSummary:()=>({animate:!1}),handleChange:(h,u)=>(h.didChange(e)&&(u.animate=u.animate||h.change),!0)},(h,u)=>{c!==void 0&&(o.cancelAnimationFrame(c),c=void 0),n=s,i=e.read(h),a=Date.now()-(u.animate?0:l),d()}));function d(){const h=Date.now()-a;s=Math.floor(Yoe(h,n,i-n,l)),h{this._actualTop.set(i,void 0)},this.onComputedHeight=i=>{this._actualHeight.set(i,void 0)}}}const a0=class a0{constructor(e,t){this._editor=e,this._domElement=t,this._overlayWidgetId=`managedOverlayWidget-${a0._counter++}`,this._overlayWidget={getId:()=>this._overlayWidgetId,getDomNode:()=>this._domElement,getPosition:()=>null},this._editor.addOverlayWidget(this._overlayWidget)}dispose(){this._editor.removeOverlayWidget(this._overlayWidget)}};a0._counter=0;let VI=a0;function Vc(o,e){return We(t=>{for(let[i,n]of Object.entries(e))n&&typeof n=="object"&&"read"in n&&(n=n.read(t)),typeof n=="number"&&(n=`${n}px`),i=i.replace(/[A-Z]/g,s=>"-"+s.toLowerCase()),o.style[i]=n})}function zv(o,e,t,i){const n=new X,s=[];return n.add(To((r,a)=>{const l=e.read(r),c=new Map,d=new Map;t&&t(!0),o.changeViewZones(h=>{for(const u of s)h.removeZone(u),i?.delete(u);s.length=0;for(const u of l){const f=h.addZone(u);u.setZoneId&&u.setZoneId(f),s.push(f),i?.add(f),c.set(u,f)}}),t&&t(!1),a.add(Y_({createEmptyChangeSummary(){return{zoneIds:[]}},handleChange(h,u){const f=d.get(h.changedObservable);return f!==void 0&&u.zoneIds.push(f),!0}},(h,u)=>{for(const f of l)f.onChange&&(d.set(f.onChange,c.get(f)),f.onChange.read(h));t&&t(!0),o.changeViewZones(f=>{for(const g of u.zoneIds)f.layoutZone(g)}),t&&t(!1)}))})),n.add({dispose(){t&&t(!0),o.changeViewZones(r=>{for(const a of s)r.removeZone(a)}),i?.clear(),t&&t(!1)}}),n}function n4(o,e){const t=xC(e,n=>n.original.startLineNumber<=o.lineNumber);if(!t)return I.fromPositions(o);if(t.original.endLineNumberExclusive<=o.lineNumber){const n=o.lineNumber-t.original.endLineNumberExclusive+t.modified.endLineNumberExclusive;return I.fromPositions(new P(n,o.column))}if(!t.innerChanges)return I.fromPositions(new P(t.modified.startLineNumber,1));const i=xC(t.innerChanges,n=>n.originalRange.getStartPosition().isBeforeOrEqual(o));if(!i){const n=o.lineNumber-t.original.startLineNumber+t.modified.startLineNumber;return I.fromPositions(new P(n,o.column))}if(i.originalRange.containsPosition(o))return i.modifiedRange;{const n=Qoe(i.originalRange.getEndPosition(),o);return I.fromPositions(n.addToPosition(i.modifiedRange.getEndPosition()))}}function Qoe(o,e){return o.lineNumber===e.lineNumber?new Po(0,e.column-o.column):new Po(e.lineNumber-o.lineNumber,e.column-1)}function Xoe(o,e){let t;return o.filter(i=>{const n=e(i,t);return t=i,n})}class Uv{static create(e,t=void 0){return new s4(e,e,t)}static createWithDisposable(e,t,i=void 0){const n=new X;return n.add(t),n.add(e),new s4(e,n,i)}}class s4 extends Uv{constructor(e,t,i){super(),this.object=e,this._disposable=t,this._debugOwner=i,this._refCount=1,this._isDisposed=!1,this._owners=[],i&&this._addOwner(i)}_addOwner(e){e&&this._owners.push(e)}createNewRef(e){return this._refCount++,e&&this._addOwner(e),new Joe(this,e)}dispose(){this._isDisposed||(this._isDisposed=!0,this._decreaseRefCount(this._debugOwner))}_decreaseRefCount(e){if(this._refCount--,this._refCount===0&&this._disposable.dispose(),e){const t=this._owners.indexOf(e);t!==-1&&this._owners.splice(t,1)}}}class Joe extends Uv{constructor(e,t){super(),this._base=e,this._debugOwner=t,this._isDisposed=!1}get object(){return this._base.object}createNewRef(e){return this._base.createNewRef(e)}dispose(){this._isDisposed||(this._isDisposed=!0,this._base._decreaseRefCount(this._debugOwner))}}var eM=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},tM=function(o,e){return function(t,i){e(t,i,o)}};const ere=Wi("diff-review-insert",ie.add,m("accessibleDiffViewerInsertIcon","Icon for 'Insert' in accessible diff viewer.")),tre=Wi("diff-review-remove",ie.remove,m("accessibleDiffViewerRemoveIcon","Icon for 'Remove' in accessible diff viewer.")),ire=Wi("diff-review-close",ie.close,m("accessibleDiffViewerCloseIcon","Icon for 'Close' in accessible diff viewer."));var Jf;let qd=(Jf=class extends z{constructor(e,t,i,n,s,r,a,l,c){super(),this._parentNode=e,this._visible=t,this._setVisible=i,this._canClose=n,this._width=s,this._height=r,this._diffs=a,this._models=l,this._instantiationService=c,this._state=cu(this,(d,h)=>{const u=this._visible.read(d);if(this._parentNode.style.visibility=u?"visible":"hidden",!u)return null;const f=h.add(this._instantiationService.createInstance(zI,this._diffs,this._models,this._setVisible,this._canClose)),g=h.add(this._instantiationService.createInstance(UI,this._parentNode,f,this._width,this._height,this._models));return{model:f,view:g}}).recomputeInitiallyAndOnChange(this._store)}next(){Xt(e=>{const t=this._visible.get();this._setVisible(!0,e),t&&this._state.get().model.nextGroup(e)})}prev(){Xt(e=>{this._setVisible(!0,e),this._state.get().model.previousGroup(e)})}close(){Xt(e=>{this._setVisible(!1,e)})}},Jf._ttPolicy=Kc("diffReview",{createHTML:e=>e}),Jf);qd=eM([tM(8,ke)],qd);let zI=class extends z{constructor(e,t,i,n,s){super(),this._diffs=e,this._models=t,this._setVisible=i,this.canClose=n,this._accessibilitySignalService=s,this._groups=Ge(this,[]),this._currentGroupIdx=Ge(this,0),this._currentElementIdx=Ge(this,0),this.groups=this._groups,this.currentGroup=this._currentGroupIdx.map((r,a)=>this._groups.read(a)[r]),this.currentGroupIndex=this._currentGroupIdx,this.currentElement=this._currentElementIdx.map((r,a)=>this.currentGroup.read(a)?.lines[r]),this._register(We(r=>{const a=this._diffs.read(r);if(!a){this._groups.set([],void 0);return}const l=nre(a,this._models.getOriginalModel().getLineCount(),this._models.getModifiedModel().getLineCount());Xt(c=>{const d=this._models.getModifiedPosition();if(d){const h=l.findIndex(u=>d?.lineNumber{const a=this.currentElement.read(r);a?.type===vn.Deleted?this._accessibilitySignalService.playSignal(rr.diffLineDeleted,{source:"accessibleDiffViewer.currentElementChanged"}):a?.type===vn.Added&&this._accessibilitySignalService.playSignal(rr.diffLineInserted,{source:"accessibleDiffViewer.currentElementChanged"})})),this._register(We(r=>{const a=this.currentElement.read(r);if(a&&a.type!==vn.Header){const l=a.modifiedLineNumber??a.diff.modified.startLineNumber;this._models.modifiedSetSelection(I.fromPositions(new P(l,1)))}}))}_goToGroupDelta(e,t){const i=this.groups.get();!i||i.length<=1||c_(t,n=>{this._currentGroupIdx.set(Re.ofLength(i.length).clipCyclic(this._currentGroupIdx.get()+e),n),this._currentElementIdx.set(0,n)})}nextGroup(e){this._goToGroupDelta(1,e)}previousGroup(e){this._goToGroupDelta(-1,e)}_goToLineDelta(e){const t=this.currentGroup.get();!t||t.lines.length<=1||Xt(i=>{this._currentElementIdx.set(Re.ofLength(t.lines.length).clip(this._currentElementIdx.get()+e),i)})}goToNextLine(){this._goToLineDelta(1)}goToPreviousLine(){this._goToLineDelta(-1)}goToLine(e){const t=this.currentGroup.get();if(!t)return;const i=t.lines.indexOf(e);i!==-1&&Xt(n=>{this._currentElementIdx.set(i,n)})}revealCurrentElementInEditor(){if(!this.canClose.get())return;this._setVisible(!1,void 0);const e=this.currentElement.get();e&&(e.type===vn.Deleted?this._models.originalReveal(I.fromPositions(new P(e.originalLineNumber,1))):this._models.modifiedReveal(e.type!==vn.Header?I.fromPositions(new P(e.modifiedLineNumber,1)):void 0))}close(){this.canClose.get()&&(this._setVisible(!1,void 0),this._models.modifiedFocus())}};zI=eM([tM(4,rb)],zI);const Sm=3;function nre(o,e,t){const i=[];for(const n of LN(o,(s,r)=>r.modified.startLineNumber-s.modified.endLineNumberExclusive<2*Sm)){const s=[];s.push(new ore);const r=new xe(Math.max(1,n[0].original.startLineNumber-Sm),Math.min(n[n.length-1].original.endLineNumberExclusive+Sm,e+1)),a=new xe(Math.max(1,n[0].modified.startLineNumber-Sm),Math.min(n[n.length-1].modified.endLineNumberExclusive+Sm,t+1));E5(n,(d,h)=>{const u=new xe(d?d.original.endLineNumberExclusive:r.startLineNumber,h?h.original.startLineNumber:r.endLineNumberExclusive),f=new xe(d?d.modified.endLineNumberExclusive:a.startLineNumber,h?h.modified.startLineNumber:a.endLineNumberExclusive);u.forEach(g=>{s.push(new lre(g,f.startLineNumber+(g-u.startLineNumber)))}),h&&(h.original.forEach(g=>{s.push(new rre(h,g))}),h.modified.forEach(g=>{s.push(new are(h,g))}))});const l=n[0].modified.join(n[n.length-1].modified),c=n[0].original.join(n[n.length-1].original);i.push(new sre(new hn(l,c),s))}return i}var vn;(function(o){o[o.Header=0]="Header",o[o.Unchanged=1]="Unchanged",o[o.Deleted=2]="Deleted",o[o.Added=3]="Added"})(vn||(vn={}));class sre{constructor(e,t){this.range=e,this.lines=t}}class ore{constructor(){this.type=vn.Header}}class rre{constructor(e,t){this.diff=e,this.originalLineNumber=t,this.type=vn.Deleted,this.modifiedLineNumber=void 0}}class are{constructor(e,t){this.diff=e,this.modifiedLineNumber=t,this.type=vn.Added,this.originalLineNumber=void 0}}class lre{constructor(e,t){this.originalLineNumber=e,this.modifiedLineNumber=t,this.type=vn.Unchanged}}let UI=class extends z{constructor(e,t,i,n,s,r){super(),this._element=e,this._model=t,this._width=i,this._height=n,this._models=s,this._languageService=r,this.domNode=this._element,this.domNode.className="monaco-component diff-review monaco-editor-background";const a=document.createElement("div");a.className="diff-review-actions",this._actionBar=this._register(new oo(a)),this._register(We(l=>{this._actionBar.clear(),this._model.canClose.read(l)&&this._actionBar.push(new Fs("diffreview.close",m("label.close","Close"),"close-diff-review "+Ee.asClassName(ire),!0,async()=>t.close()),{label:!1,icon:!0})})),this._content=document.createElement("div"),this._content.className="diff-review-content",this._content.setAttribute("role","code"),this._scrollbar=this._register(new J0(this._content,{})),un(this.domNode,this._scrollbar.getDomNode(),a),this._register(We(l=>{this._height.read(l),this._width.read(l),this._scrollbar.scanDomNode()})),this._register(_e(()=>{un(this.domNode)})),this._register(Vc(this.domNode,{width:this._width,height:this._height})),this._register(Vc(this._content,{width:this._width,height:this._height})),this._register(To((l,c)=>{this._model.currentGroup.read(l),this._render(c)})),this._register(jt(this.domNode,"keydown",l=>{(l.equals(18)||l.equals(2066)||l.equals(530))&&(l.preventDefault(),this._model.goToNextLine()),(l.equals(16)||l.equals(2064)||l.equals(528))&&(l.preventDefault(),this._model.goToPreviousLine()),(l.equals(9)||l.equals(2057)||l.equals(521)||l.equals(1033))&&(l.preventDefault(),this._model.close()),(l.equals(10)||l.equals(3))&&(l.preventDefault(),this._model.revealCurrentElementInEditor())}))}_render(e){const t=this._models.getOriginalOptions(),i=this._models.getModifiedOptions(),n=document.createElement("div");n.className="diff-review-table",n.setAttribute("role","list"),n.setAttribute("aria-label",m("ariaLabel","Accessible Diff Viewer. Use arrow up and down to navigate.")),qi(n,i.get(50)),un(this._content,n);const s=this._models.getOriginalModel(),r=this._models.getModifiedModel();if(!s||!r)return;const a=s.getOptions(),l=r.getOptions(),c=i.get(67),d=this._model.currentGroup.get();for(const h of d?.lines||[]){if(!d)break;let u;if(h.type===vn.Header){const g=document.createElement("div");g.className="diff-review-row",g.setAttribute("role","listitem");const p=d.range,_=this._model.currentGroupIndex.get(),b=this._model.groups.get().length,C=x=>x===0?m("no_lines_changed","no lines changed"):x===1?m("one_line_changed","1 line changed"):m("more_lines_changed","{0} lines changed",x),w=C(p.original.length),v=C(p.modified.length);g.setAttribute("aria-label",m({key:"header",comment:["This is the ARIA label for a git diff header.","A git diff header looks like this: @@ -154,12 +159,39 @@.","That encodes that at original line 154 (which is now line 159), 12 lines were removed/changed with 39 lines.","Variables 0 and 1 refer to the diff index out of total number of diffs.","Variables 2 and 4 will be numbers (a line number).",'Variables 3 and 5 will be "no lines changed", "1 line changed" or "X lines changed", localized separately.']},"Difference {0} of {1}: original line {2}, {3}, modified line {4}, {5}",_+1,b,p.original.startLineNumber,w,p.modified.startLineNumber,v));const y=document.createElement("div");y.className="diff-review-cell diff-review-summary",y.appendChild(document.createTextNode(`${_+1}/${b}: @@ -${p.original.startLineNumber},${p.original.length} +${p.modified.startLineNumber},${p.modified.length} @@`)),g.appendChild(y),u=g}else u=this._createRow(h,c,this._width.get(),t,s,a,i,r,l);n.appendChild(u);const f=Ce(g=>this._model.currentElement.read(g)===h);e.add(We(g=>{const p=f.read(g);u.tabIndex=p?0:-1,p&&u.focus()})),e.add(U(u,"focus",()=>{this._model.goToLine(h)}))}this._scrollbar.scanDomNode()}_createRow(e,t,i,n,s,r,a,l,c){const d=n.get(146),h=d.glyphMarginWidth+d.lineNumbersWidth,u=a.get(146),f=10+u.glyphMarginWidth+u.lineNumbersWidth;let g="diff-review-row",p="";const _="diff-review-spacer";let b=null;switch(e.type){case vn.Added:g="diff-review-row line-insert",p=" char-insert",b=ere;break;case vn.Deleted:g="diff-review-row line-delete",p=" char-delete",b=tre;break}const C=document.createElement("div");C.style.minWidth=i+"px",C.className=g,C.setAttribute("role","listitem"),C.ariaLevel="";const w=document.createElement("div");w.className="diff-review-cell",w.style.height=`${t}px`,C.appendChild(w);const v=document.createElement("span");v.style.width=h+"px",v.style.minWidth=h+"px",v.className="diff-review-line-number"+p,e.originalLineNumber!==void 0?v.appendChild(document.createTextNode(String(e.originalLineNumber))):v.innerText=" ",w.appendChild(v);const y=document.createElement("span");y.style.width=f+"px",y.style.minWidth=f+"px",y.style.paddingRight="10px",y.className="diff-review-line-number"+p,e.modifiedLineNumber!==void 0?y.appendChild(document.createTextNode(String(e.modifiedLineNumber))):y.innerText=" ",w.appendChild(y);const x=document.createElement("span");if(x.className=_,b){const N=document.createElement("span");N.className=Ee.asClassName(b),N.innerText="  ",x.appendChild(N)}else x.innerText="  ";w.appendChild(x);let L;if(e.modifiedLineNumber!==void 0){let N=this._getLineHtml(l,a,c.tabSize,e.modifiedLineNumber,this._languageService.languageIdCodec);qd._ttPolicy&&(N=qd._ttPolicy.createHTML(N)),w.insertAdjacentHTML("beforeend",N),L=l.getLineContent(e.modifiedLineNumber)}else{let N=this._getLineHtml(s,n,r.tabSize,e.originalLineNumber,this._languageService.languageIdCodec);qd._ttPolicy&&(N=qd._ttPolicy.createHTML(N)),w.insertAdjacentHTML("beforeend",N),L=s.getLineContent(e.originalLineNumber)}L.length===0&&(L=m("blankLine","blank"));let E="";switch(e.type){case vn.Unchanged:e.originalLineNumber===e.modifiedLineNumber?E=m({key:"unchangedLine",comment:["The placeholders are contents of the line and should not be translated."]},"{0} unchanged line {1}",L,e.originalLineNumber):E=m("equalLine","{0} original line {1} modified line {2}",L,e.originalLineNumber,e.modifiedLineNumber);break;case vn.Added:E=m("insertLine","+ {0} modified line {1}",L,e.modifiedLineNumber);break;case vn.Deleted:E=m("deleteLine","- {0} original line {1}",L,e.originalLineNumber);break}return C.setAttribute("aria-label",E),C}_getLineHtml(e,t,i,n,s){const r=e.getLineContent(n),a=t.get(50),l=Ni.createEmpty(r,s),c=zs.isBasicASCII(r,e.mightContainNonBasicASCII()),d=zs.containsRTL(r,c,e.mightContainRTL());return Ly(new gu(a.isMonospace&&!t.get(33),a.canUseHalfwidthRightwardsArrow,r,!1,c,d,0,l,[],i,0,a.spaceWidth,a.middotWidth,a.wsmiddotWidth,t.get(118),t.get(100),t.get(95),t.get(51)!==Mc.OFF,null)).html}};UI=eM([tM(5,qt)],UI);class cre{constructor(e){this.editors=e}getOriginalModel(){return this.editors.original.getModel()}getOriginalOptions(){return this.editors.original.getOptions()}originalReveal(e){this.editors.original.revealRange(e),this.editors.original.setSelection(e),this.editors.original.focus()}getModifiedModel(){return this.editors.modified.getModel()}getModifiedOptions(){return this.editors.modified.getOptions()}modifiedReveal(e){e&&(this.editors.modified.revealRange(e),this.editors.modified.setSelection(e)),this.editors.modified.focus()}modifiedSetSelection(e){this.editors.modified.setSelection(e)}modifiedFocus(){this.editors.modified.focus()}getModifiedPosition(){return this.editors.modified.getPosition()??void 0}}D("diffEditor.move.border","#8b8b8b9c",m("diffEditor.move.border","The border color for text that got moved in the diff editor."));D("diffEditor.moveActive.border","#FFA500",m("diffEditor.moveActive.border","The active border color for text that got moved in the diff editor."));D("diffEditor.unchangedRegionShadow",{dark:"#000000",light:"#737373BF",hcDark:"#000000",hcLight:"#737373BF"},m("diffEditor.unchangedRegionShadow","The color of the shadow around unchanged region widgets."));const dre=Wi("diff-insert",ie.add,m("diffInsertIcon","Line decoration for inserts in the diff editor.")),P8=Wi("diff-remove",ie.remove,m("diffRemoveIcon","Line decoration for removals in the diff editor.")),o4=kt.register({className:"line-insert",description:"line-insert",isWholeLine:!0,linesDecorationsClassName:"insert-sign "+Ee.asClassName(dre),marginClassName:"gutter-insert"}),r4=kt.register({className:"line-delete",description:"line-delete",isWholeLine:!0,linesDecorationsClassName:"delete-sign "+Ee.asClassName(P8),marginClassName:"gutter-delete"}),a4=kt.register({className:"line-insert",description:"line-insert",isWholeLine:!0,marginClassName:"gutter-insert"}),l4=kt.register({className:"line-delete",description:"line-delete",isWholeLine:!0,marginClassName:"gutter-delete"}),c4=kt.register({className:"char-insert",description:"char-insert",shouldFillLineOnLineBreak:!0}),hre=kt.register({className:"char-insert",description:"char-insert",isWholeLine:!0}),ure=kt.register({className:"char-insert diff-range-empty",description:"char-insert diff-range-empty"}),$I=kt.register({className:"char-delete",description:"char-delete",shouldFillLineOnLineBreak:!0}),fre=kt.register({className:"char-delete",description:"char-delete",isWholeLine:!0}),gre=kt.register({className:"char-delete diff-range-empty",description:"char-delete diff-range-empty"});var O8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},KI=function(o,e){return function(t,i){e(t,i,o)}},pd;const F8=He("diffProviderFactoryService");let jI=class{constructor(e){this.instantiationService=e}createDiffProvider(e){return this.instantiationService.createInstance(qI,e)}};jI=O8([KI(0,ke)],jI);Qe(F8,jI,1);var hh;let qI=(hh=class{constructor(e,t,i){this.editorWorkerService=t,this.telemetryService=i,this.onDidChangeEventEmitter=new A,this.onDidChange=this.onDidChangeEventEmitter.event,this.diffAlgorithm="advanced",this.diffAlgorithmOnDidChangeSubscription=void 0,this.setOptions(e)}dispose(){this.diffAlgorithmOnDidChangeSubscription?.dispose()}async computeDiff(e,t,i,n){if(typeof this.diffAlgorithm!="string")return this.diffAlgorithm.computeDiff(e,t,i,n);if(e.isDisposed()||t.isDisposed())return{changes:[],identical:!0,quitEarly:!1,moves:[]};if(e.getLineCount()===1&&e.getLineMaxColumn(1)===1)return t.getLineCount()===1&&t.getLineMaxColumn(1)===1?{changes:[],identical:!0,quitEarly:!1,moves:[]}:{changes:[new Ws(new xe(1,2),new xe(1,t.getLineCount()+1),[new Ls(e.getFullModelRange(),t.getFullModelRange())])],identical:!1,quitEarly:!1,moves:[]};const s=JSON.stringify([e.uri.toString(),t.uri.toString()]),r=JSON.stringify([e.id,t.id,e.getAlternativeVersionId(),t.getAlternativeVersionId(),JSON.stringify(i)]),a=pd.diffCache.get(s);if(a&&a.context===r)return a.result;const l=Hs.create(),c=await this.editorWorkerService.computeDiff(e.uri,t.uri,i,this.diffAlgorithm),d=l.elapsed();if(this.telemetryService.publicLog2("diffEditor.computeDiff",{timeMs:d,timedOut:c?.quitEarly??!0,detectedMoves:i.computeMoves?c?.moves.length??0:-1}),n.isCancellationRequested)return{changes:[],identical:!1,quitEarly:!0,moves:[]};if(!c)throw new Error("no diff result available");return pd.diffCache.size>10&&pd.diffCache.delete(pd.diffCache.keys().next().value),pd.diffCache.set(s,{result:c,context:r}),c}setOptions(e){let t=!1;e.diffAlgorithm&&this.diffAlgorithm!==e.diffAlgorithm&&(this.diffAlgorithmOnDidChangeSubscription?.dispose(),this.diffAlgorithmOnDidChangeSubscription=void 0,this.diffAlgorithm=e.diffAlgorithm,typeof e.diffAlgorithm!="string"&&(this.diffAlgorithmOnDidChangeSubscription=e.diffAlgorithm.onDidChange(()=>this.onDidChangeEventEmitter.fire())),t=!0),t&&this.onDidChangeEventEmitter.fire()}},pd=hh,hh.diffCache=new Map,hh);qI=pd=O8([KI(1,Zc),KI(2,$s)],qI);function iM(){return RL&&!!RL.VSCODE_DEV}function B8(o){if(iM()){const e=mre();return e.add(o),{dispose(){e.delete(o)}}}else return{dispose(){}}}function mre(){r1||(r1=new Set);const o=globalThis;return o.$hotReload_applyNewExports||(o.$hotReload_applyNewExports=e=>{const t={config:{mode:void 0},...e},i=[];for(const n of r1){const s=n(t);s&&i.push(s)}if(i.length>0)return n=>{let s=!1;for(const r of i)r(n)&&(s=!0);return s}}),r1}let r1;iM()&&B8(({oldExports:o,newSrc:e,config:t})=>{if(t.mode==="patch-prototype")return i=>{for(const n in i){const s=i[n];if(console.log(`[hot-reload] Patching prototype methods of '${n}'`,{exportedItem:s}),typeof s=="function"&&s.prototype){const r=o[n];if(r){for(const a of Object.getOwnPropertyNames(s.prototype)){const l=Object.getOwnPropertyDescriptor(s.prototype,a),c=Object.getOwnPropertyDescriptor(r.prototype,a);l?.value?.toString()!==c?.value?.toString()&&console.log(`[hot-reload] Patching prototype method '${n}.${a}'`),Object.defineProperty(r.prototype,a,l)}i[n]=r}}}return!0}});function Lo(o,e){return pre([o],e),o}function pre(o,e){iM()&&ks("reload",i=>B8(({oldExports:n})=>{if([...Object.values(n)].some(s=>o.includes(s)))return s=>(i(void 0),!0)})).read(e)}var _re=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},bre=function(o,e){return function(t,i){e(t,i,o)}};let GI=class extends z{setActiveMovedText(e){this._activeMovedText.set(e,void 0)}constructor(e,t,i){super(),this.model=e,this._options=t,this._diffProviderFactoryService=i,this._isDiffUpToDate=Ge(this,!1),this.isDiffUpToDate=this._isDiffUpToDate,this._diff=Ge(this,void 0),this.diff=this._diff,this._unchangedRegions=Ge(this,void 0),this.unchangedRegions=Ce(this,a=>this._options.hideUnchangedRegions.read(a)?this._unchangedRegions.read(a)?.regions??[]:(Xt(l=>{for(const c of this._unchangedRegions.get()?.regions||[])c.collapseAll(l)}),[])),this.movedTextToCompare=Ge(this,void 0),this._activeMovedText=Ge(this,void 0),this._hoveredMovedText=Ge(this,void 0),this.activeMovedText=Ce(this,a=>this.movedTextToCompare.read(a)??this._hoveredMovedText.read(a)??this._activeMovedText.read(a)),this._cancellationTokenSource=new In,this._diffProvider=Ce(this,a=>{const l=this._diffProviderFactoryService.createDiffProvider({diffAlgorithm:this._options.diffAlgorithm.read(a)}),c=ks("onDidChange",l.onDidChange);return{diffProvider:l,onChangeSignal:c}}),this._register(_e(()=>this._cancellationTokenSource.cancel()));const n=Q_("contentChangedSignal"),s=this._register(new ci(()=>n.trigger(void 0),200));this._register(We(a=>{const l=this._unchangedRegions.read(a);if(!l||l.regions.some(g=>g.isDragged.read(a)))return;const c=l.originalDecorationIds.map(g=>e.original.getDecorationRange(g)).map(g=>g?xe.fromRangeInclusive(g):void 0),d=l.modifiedDecorationIds.map(g=>e.modified.getDecorationRange(g)).map(g=>g?xe.fromRangeInclusive(g):void 0),h=l.regions.map((g,p)=>!c[p]||!d[p]?void 0:new dc(c[p].startLineNumber,d[p].startLineNumber,c[p].length,g.visibleLineCountTop.read(a),g.visibleLineCountBottom.read(a))).filter(_l),u=[];let f=!1;for(const g of LN(h,(p,_)=>p.getHiddenModifiedRange(a).endLineNumberExclusive===_.getHiddenModifiedRange(a).startLineNumber))if(g.length>1){f=!0;const p=g.reduce((b,C)=>b+C.lineCount,0),_=new dc(g[0].originalLineNumber,g[0].modifiedLineNumber,p,g[0].visibleLineCountTop.get(),g[g.length-1].visibleLineCountBottom.get());u.push(_)}else u.push(g[0]);if(f){const g=e.original.deltaDecorations(l.originalDecorationIds,u.map(_=>({range:_.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),p=e.modified.deltaDecorations(l.modifiedDecorationIds,u.map(_=>({range:_.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));Xt(_=>{this._unchangedRegions.set({regions:u,originalDecorationIds:g,modifiedDecorationIds:p},_)})}}));const r=(a,l,c)=>{const d=dc.fromDiffs(a.changes,e.original.getLineCount(),e.modified.getLineCount(),this._options.hideUnchangedRegionsMinimumLineCount.read(c),this._options.hideUnchangedRegionsContextLineCount.read(c));let h;const u=this._unchangedRegions.get();if(u){const _=u.originalDecorationIds.map(v=>e.original.getDecorationRange(v)).map(v=>v?xe.fromRangeInclusive(v):void 0),b=u.modifiedDecorationIds.map(v=>e.modified.getDecorationRange(v)).map(v=>v?xe.fromRangeInclusive(v):void 0);let w=Xoe(u.regions.map((v,y)=>{if(!_[y]||!b[y])return;const x=_[y].length;return new dc(_[y].startLineNumber,b[y].startLineNumber,x,Math.min(v.visibleLineCountTop.get(),x),Math.min(v.visibleLineCountBottom.get(),x-v.visibleLineCountTop.get()))}).filter(_l),(v,y)=>!y||v.modifiedLineNumber>=y.modifiedLineNumber+y.lineCount&&v.originalLineNumber>=y.originalLineNumber+y.lineCount).map(v=>new hn(v.getHiddenOriginalRange(c),v.getHiddenModifiedRange(c)));w=hn.clip(w,xe.ofLength(1,e.original.getLineCount()),xe.ofLength(1,e.modified.getLineCount())),h=hn.inverse(w,e.original.getLineCount(),e.modified.getLineCount())}const f=[];if(h)for(const _ of d){const b=h.filter(C=>C.original.intersectsStrict(_.originalUnchangedRange)&&C.modified.intersectsStrict(_.modifiedUnchangedRange));f.push(..._.setVisibleRanges(b,l))}else f.push(...d);const g=e.original.deltaDecorations(u?.originalDecorationIds||[],f.map(_=>({range:_.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),p=e.modified.deltaDecorations(u?.modifiedDecorationIds||[],f.map(_=>({range:_.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));this._unchangedRegions.set({regions:f,originalDecorationIds:g,modifiedDecorationIds:p},l)};this._register(e.modified.onDidChangeContent(a=>{if(this._diff.get()){const c=cl.fromModelContentChanges(a.changes);this._lastDiff,e.original,e.modified}this._isDiffUpToDate.set(!1,void 0),s.schedule()})),this._register(e.original.onDidChangeContent(a=>{if(this._diff.get()){const c=cl.fromModelContentChanges(a.changes);this._lastDiff,e.original,e.modified}this._isDiffUpToDate.set(!1,void 0),s.schedule()})),this._register(To(async(a,l)=>{this._options.hideUnchangedRegionsMinimumLineCount.read(a),this._options.hideUnchangedRegionsContextLineCount.read(a),s.cancel(),n.read(a);const c=this._diffProvider.read(a);c.onChangeSignal.read(a),Lo(u3,a),Lo(dk,a),this._isDiffUpToDate.set(!1,void 0);let d=[];l.add(e.original.onDidChangeContent(f=>{const g=cl.fromModelContentChanges(f.changes);d=tv(d,g)}));let h=[];l.add(e.modified.onDidChangeContent(f=>{const g=cl.fromModelContentChanges(f.changes);h=tv(h,g)}));let u=await c.diffProvider.computeDiff(e.original,e.modified,{ignoreTrimWhitespace:this._options.ignoreTrimWhitespace.read(a),maxComputationTimeMs:this._options.maxComputationTimeMs.read(a),computeMoves:this._options.showMoves.read(a)},this._cancellationTokenSource.token);this._cancellationTokenSource.token.isCancellationRequested||e.original.isDisposed()||e.modified.isDisposed()||(u=Cre(u,e.original,e.modified),u=(e.original,e.modified,void 0)??u,u=(e.original,e.modified,void 0)??u,Xt(f=>{r(u,f),this._lastDiff=u;const g=nM.fromDiffResult(u);this._diff.set(g,f),this._isDiffUpToDate.set(!0,f);const p=this.movedTextToCompare.get();this.movedTextToCompare.set(p?this._lastDiff.moves.find(_=>_.lineRangeMapping.modified.intersect(p.lineRangeMapping.modified)):void 0,f)}))}))}ensureModifiedLineIsVisible(e,t,i){if(this.diff.get()?.mappings.length===0)return;const n=this._unchangedRegions.get()?.regions||[];for(const s of n)if(s.getHiddenModifiedRange(void 0).contains(e)){s.showModifiedLine(e,t,i);return}}ensureOriginalLineIsVisible(e,t,i){if(this.diff.get()?.mappings.length===0)return;const n=this._unchangedRegions.get()?.regions||[];for(const s of n)if(s.getHiddenOriginalRange(void 0).contains(e)){s.showOriginalLine(e,t,i);return}}async waitForDiff(){await k7(this.isDiffUpToDate,e=>e)}serializeState(){return{collapsedRegions:this._unchangedRegions.get()?.regions.map(t=>({range:t.getHiddenModifiedRange(void 0).serialize()}))}}restoreSerializedState(e){const t=e.collapsedRegions?.map(n=>xe.deserialize(n.range)),i=this._unchangedRegions.get();!i||!t||Xt(n=>{for(const s of i.regions)for(const r of t)if(s.modifiedUnchangedRange.intersect(r)){s.setHiddenModifiedRange(r,n);break}})}};GI=_re([bre(2,F8)],GI);function Cre(o,e,t){return{changes:o.changes.map(i=>new Ws(i.original,i.modified,i.innerChanges?i.innerChanges.map(n=>vre(n,e,t)):void 0)),moves:o.moves,identical:o.identical,quitEarly:o.quitEarly}}function vre(o,e,t){let i=o.originalRange,n=o.modifiedRange;return i.startColumn===1&&n.startColumn===1&&(i.endColumn!==1||n.endColumn!==1)&&i.endColumn===e.getLineMaxColumn(i.endLineNumber)&&n.endColumn===t.getLineMaxColumn(n.endLineNumber)&&i.endLineNumbernew W8(t)),e.moves||[],e.identical,e.quitEarly)}constructor(e,t,i,n){this.mappings=e,this.movedTexts=t,this.identical=i,this.quitEarly=n}}class W8{constructor(e){this.lineRangeMapping=e}}class dc{static fromDiffs(e,t,i,n,s){const r=Ws.inverse(e,t,i),a=[];for(const l of r){let c=l.original.startLineNumber,d=l.modified.startLineNumber,h=l.original.length;const u=c===1&&d===1,f=c+h===t+1&&d+h===i+1;(u||f)&&h>=s+n?(u&&!f&&(h-=s),f&&!u&&(c+=s,d+=s,h-=s),a.push(new dc(c,d,h,0,0))):h>=s*2+n&&(c+=s,d+=s,h-=s*2,a.push(new dc(c,d,h,0,0)))}return a}get originalUnchangedRange(){return xe.ofLength(this.originalLineNumber,this.lineCount)}get modifiedUnchangedRange(){return xe.ofLength(this.modifiedLineNumber,this.lineCount)}constructor(e,t,i,n,s){this.originalLineNumber=e,this.modifiedLineNumber=t,this.lineCount=i,this._visibleLineCountTop=Ge(this,0),this.visibleLineCountTop=this._visibleLineCountTop,this._visibleLineCountBottom=Ge(this,0),this.visibleLineCountBottom=this._visibleLineCountBottom,this._shouldHideControls=Ce(this,l=>this.visibleLineCountTop.read(l)+this.visibleLineCountBottom.read(l)===this.lineCount&&!this.isDragged.read(l)),this.isDragged=Ge(this,void 0);const r=Math.max(Math.min(n,this.lineCount),0),a=Math.max(Math.min(s,this.lineCount-n),0);bR(n===r),bR(s===a),this._visibleLineCountTop.set(r,void 0),this._visibleLineCountBottom.set(a,void 0)}setVisibleRanges(e,t){const i=[],n=new to(e.map(l=>l.modified)).subtractFrom(this.modifiedUnchangedRange);let s=this.originalLineNumber,r=this.modifiedLineNumber;const a=this.modifiedLineNumber+this.lineCount;if(n.ranges.length===0)this.showAll(t),i.push(this);else{let l=0;for(const c of n.ranges){const d=l===n.ranges.length-1;l++;const h=(d?a:c.endLineNumberExclusive)-r,u=new dc(s,r,h,0,0);u.setHiddenModifiedRange(c,t),i.push(u),s=u.originalUnchangedRange.endLineNumberExclusive,r=u.modifiedUnchangedRange.endLineNumberExclusive}}return i}shouldHideControls(e){return this._shouldHideControls.read(e)}getHiddenOriginalRange(e){return xe.ofLength(this.originalLineNumber+this._visibleLineCountTop.read(e),this.lineCount-this._visibleLineCountTop.read(e)-this._visibleLineCountBottom.read(e))}getHiddenModifiedRange(e){return xe.ofLength(this.modifiedLineNumber+this._visibleLineCountTop.read(e),this.lineCount-this._visibleLineCountTop.read(e)-this._visibleLineCountBottom.read(e))}setHiddenModifiedRange(e,t){const i=e.startLineNumber-this.modifiedLineNumber,n=this.modifiedLineNumber+this.lineCount-e.endLineNumberExclusive;this.setState(i,n,t)}getMaxVisibleLineCountTop(){return this.lineCount-this._visibleLineCountBottom.get()}getMaxVisibleLineCountBottom(){return this.lineCount-this._visibleLineCountTop.get()}showMoreAbove(e=10,t){const i=this.getMaxVisibleLineCountTop();this._visibleLineCountTop.set(Math.min(this._visibleLineCountTop.get()+e,i),t)}showMoreBelow(e=10,t){const i=this.lineCount-this._visibleLineCountTop.get();this._visibleLineCountBottom.set(Math.min(this._visibleLineCountBottom.get()+e,i),t)}showAll(e){this._visibleLineCountBottom.set(this.lineCount-this._visibleLineCountTop.get(),e)}showModifiedLine(e,t,i){const n=e+1-(this.modifiedLineNumber+this._visibleLineCountTop.get()),s=this.modifiedLineNumber-this._visibleLineCountBottom.get()+this.lineCount-e;t===0&&n{this._contextMenuService.showContextMenu({domForShadowRoot:u?i.getDomNode()??void 0:void 0,getAnchor:()=>({x:g,y:p}),getActions:()=>{const _=[],b=n.modified.isEmpty;return _.push(new Fs("diff.clipboard.copyDeletedContent",b?n.original.length>1?m("diff.clipboard.copyDeletedLinesContent.label","Copy deleted lines"):m("diff.clipboard.copyDeletedLinesContent.single.label","Copy deleted line"):n.original.length>1?m("diff.clipboard.copyChangedLinesContent.label","Copy changed lines"):m("diff.clipboard.copyChangedLinesContent.single.label","Copy changed line"),void 0,!0,async()=>{const w=this._originalTextModel.getValueInRange(n.original.toExclusiveRange());await this._clipboardService.writeText(w)})),n.original.length>1&&_.push(new Fs("diff.clipboard.copyDeletedLineContent",b?m("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",n.original.startLineNumber+h):m("diff.clipboard.copyChangedLineContent.label","Copy changed line ({0})",n.original.startLineNumber+h),void 0,!0,async()=>{let w=this._originalTextModel.getLineContent(n.original.startLineNumber+h);w===""&&(w=this._originalTextModel.getEndOfLineSequence()===0?` +`:`\r +`),await this._clipboardService.writeText(w)})),i.getOption(92)||_.push(new Fs("diff.inline.revertChange",m("diff.inline.revertChange.label","Revert this change"),void 0,!0,async()=>{this._editor.revert(this._diff)})),_},autoSelectFirstItem:!0})};this._register(jt(this._diffActions,"mousedown",g=>{if(!g.leftButton)return;const{top:p,height:_}=gi(this._diffActions),b=Math.floor(d/3);g.preventDefault(),f(g.posx,p+_+b)})),this._register(i.onMouseMove(g=>{(g.target.type===8||g.target.type===5)&&g.target.detail.viewZoneId===this._getViewZoneId()?(h=this._updateLightBulbPosition(this._marginDomNode,g.event.browserEvent.y,d),this.visibility=!0):this.visibility=!1})),this._register(i.onMouseDown(g=>{g.event.leftButton&&(g.target.type===8||g.target.type===5)&&g.target.detail.viewZoneId===this._getViewZoneId()&&(g.event.preventDefault(),h=this._updateLightBulbPosition(this._marginDomNode,g.event.browserEvent.y,d),f(g.event.posx,g.event.posy+d))}))}_updateLightBulbPosition(e,t,i){const{top:n}=gi(e),s=t-n,r=Math.floor(s/i),a=r*i;if(this._diffActions.style.top=`${a}px`,this._viewLineCounts){let l=0;for(let c=0;co});function yre(o,e,t,i){qi(i,e.fontInfo);const n=t.length>0,s=new K_(1e4);let r=0,a=0;const l=[];for(let u=0;u');const l=e.getLineContent(),c=zs.isBasicASCII(l,n),d=zs.containsRTL(l,c,s),h=Sy(new gu(r.fontInfo.isMonospace&&!r.disableMonospaceOptimizations,r.fontInfo.canUseHalfwidthRightwardsArrow,l,!1,c,d,0,e,t,r.tabSize,0,r.fontInfo.spaceWidth,r.fontInfo.middotWidth,r.fontInfo.wsmiddotWidth,r.stopRenderingLineAfter,r.renderWhitespace,r.renderControlCharacters,r.fontLigatures!==Mc.OFF,null),a);return a.appendString(""),h.characterMapping.getHorizontalOffset(h.characterMapping.length)}var Lre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},u4=function(o,e){return function(t,i){e(t,i,o)}};let ZI=class extends z{constructor(e,t,i,n,s,r,a,l,c,d){super(),this._targetWindow=e,this._editors=t,this._diffModel=i,this._options=n,this._diffEditorWidget=s,this._canIgnoreViewZoneUpdateEvent=r,this._origViewZonesToIgnore=a,this._modViewZonesToIgnore=l,this._clipboardService=c,this._contextMenuService=d,this._originalTopPadding=Ge(this,0),this._originalScrollOffset=Ge(this,0),this._originalScrollOffsetAnimated=i4(this._targetWindow,this._originalScrollOffset,this._store),this._modifiedTopPadding=Ge(this,0),this._modifiedScrollOffset=Ge(this,0),this._modifiedScrollOffsetAnimated=i4(this._targetWindow,this._modifiedScrollOffset,this._store);const h=Ge("invalidateAlignmentsState",0),u=this._register(new ci(()=>{h.set(h.get()+1,void 0)},0));this._register(this._editors.original.onDidChangeViewZones(w=>{this._canIgnoreViewZoneUpdateEvent()||u.schedule()})),this._register(this._editors.modified.onDidChangeViewZones(w=>{this._canIgnoreViewZoneUpdateEvent()||u.schedule()})),this._register(this._editors.original.onDidChangeConfiguration(w=>{(w.hasChanged(147)||w.hasChanged(67))&&u.schedule()})),this._register(this._editors.modified.onDidChangeConfiguration(w=>{(w.hasChanged(147)||w.hasChanged(67))&&u.schedule()}));const f=this._diffModel.map(w=>w?gt(this,w.model.original.onDidChangeTokens,()=>w.model.original.tokenization.backgroundTokenizationState===2):void 0).map((w,v)=>w?.read(v)),g=Ce(w=>{const v=this._diffModel.read(w),y=v?.diff.read(w);if(!v||!y)return null;h.read(w);const L=this._options.renderSideBySide.read(w);return f4(this._editors.original,this._editors.modified,y.mappings,this._origViewZonesToIgnore,this._modViewZonesToIgnore,L)}),p=Ce(w=>{const v=this._diffModel.read(w)?.movedTextToCompare.read(w);if(!v)return null;h.read(w);const y=v.changes.map(x=>new W8(x));return f4(this._editors.original,this._editors.modified,y,this._origViewZonesToIgnore,this._modViewZonesToIgnore,!0)});function _(){const w=document.createElement("div");return w.className="diagonal-fill",w}const b=this._register(new X);this.viewZones=cu(this,(w,v)=>{b.clear();const y=g.read(w)||[],x=[],L=[],E=this._modifiedTopPadding.read(w);E>0&&L.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:E,showInHiddenAreas:!0,suppressMouseDown:!0});const N=this._originalTopPadding.read(w);N>0&&x.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:N,showInHiddenAreas:!0,suppressMouseDown:!0});const H=this._options.renderSideBySide.read(w),F=H?void 0:this._editors.modified._getViewModel()?.createLineBreaksComputer();if(F){const se=this._editors.original.getModel();for(const be of y)if(be.diff)for(let we=be.originalRange.startLineNumber;wese.getLineCount())return{orig:x,mod:L};F?.addRequest(se.getLineContent(we),null,null)}}const W=F?.finalize()??[];let j=0;const B=this._editors.modified.getOption(67),G=this._diffModel.read(w)?.movedTextToCompare.read(w),ne=this._editors.original.getModel()?.mightContainNonBasicASCII()??!1,ae=this._editors.original.getModel()?.mightContainRTL()??!1,de=sM.fromEditor(this._editors.modified);for(const se of y)if(se.diff&&!H&&(!this._options.useTrueInlineDiffRendering.read(w)||!oM(se.diff))){if(!se.originalRange.isEmpty){f.read(w);const we=document.createElement("div");we.classList.add("view-lines","line-delete","monaco-mouse-cursor-text");const Rt=this._editors.original.getModel();if(se.originalRange.endLineNumberExclusive-1>Rt.getLineCount())return{orig:x,mod:L};const ct=new Sre(se.originalRange.mapToLineArray(fi=>Rt.tokenization.getLineTokens(fi)),se.originalRange.mapToLineArray(fi=>W[j++]),ne,ae),Bt=[];for(const fi of se.diff.innerChanges||[])Bt.push(new hp(fi.originalRange.delta(-(se.diff.original.startLineNumber-1)),$I.className,0));const ht=yre(ct,de,Bt,we),ei=document.createElement("div");if(ei.className="inline-deleted-margin-view-zone",qi(ei,de.fontInfo),this._options.renderIndicators.read(w))for(let fi=0;fiA5(js),ei,this._editors.modified,se.diff,this._diffEditorWidget,ht.viewLineCounts,this._editors.original.getModel(),this._contextMenuService,this._clipboardService));for(let fi=0;fi1&&x.push({afterLineNumber:se.originalRange.startLineNumber+fi,domNode:_(),heightInPx:(po-1)*B,showInHiddenAreas:!0,suppressMouseDown:!0})}L.push({afterLineNumber:se.modifiedRange.startLineNumber-1,domNode:we,heightInPx:ht.heightInLines*B,minWidthInPx:ht.minWidthInPx,marginDomNode:ei,setZoneId(fi){js=fi},showInHiddenAreas:!0,suppressMouseDown:!0})}const be=document.createElement("div");be.className="gutter-delete",x.push({afterLineNumber:se.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:se.modifiedHeightInPx,marginDomNode:be,showInHiddenAreas:!0,suppressMouseDown:!0})}else{const be=se.modifiedHeightInPx-se.originalHeightInPx;if(be>0){if(G?.lineRangeMapping.original.delta(-1).deltaLength(2).contains(se.originalRange.endLineNumberExclusive-1))continue;x.push({afterLineNumber:se.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:be,showInHiddenAreas:!0,suppressMouseDown:!0})}else{let we=function(){const ct=document.createElement("div");return ct.className="arrow-revert-change "+Ee.asClassName(ie.arrowRight),v.add(U(ct,"mousedown",Bt=>Bt.stopPropagation())),v.add(U(ct,"click",Bt=>{Bt.stopPropagation(),s.revert(se.diff)})),ce("div",{},ct)};if(G?.lineRangeMapping.modified.delta(-1).deltaLength(2).contains(se.modifiedRange.endLineNumberExclusive-1))continue;let Rt;se.diff&&se.diff.modified.isEmpty&&this._options.shouldRenderOldRevertArrows.read(w)&&(Rt=we()),L.push({afterLineNumber:se.modifiedRange.endLineNumberExclusive-1,domNode:_(),heightInPx:-be,marginDomNode:Rt,showInHiddenAreas:!0,suppressMouseDown:!0})}}for(const se of p.read(w)??[]){if(!G?.lineRangeMapping.original.intersect(se.originalRange)||!G?.lineRangeMapping.modified.intersect(se.modifiedRange))continue;const be=se.modifiedHeightInPx-se.originalHeightInPx;be>0?x.push({afterLineNumber:se.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:be,showInHiddenAreas:!0,suppressMouseDown:!0}):L.push({afterLineNumber:se.modifiedRange.endLineNumberExclusive-1,domNode:_(),heightInPx:-be,showInHiddenAreas:!0,suppressMouseDown:!0})}return{orig:x,mod:L}});let C=!1;this._register(this._editors.original.onDidScrollChange(w=>{w.scrollLeftChanged&&!C&&(C=!0,this._editors.modified.setScrollLeft(w.scrollLeft),C=!1)})),this._register(this._editors.modified.onDidScrollChange(w=>{w.scrollLeftChanged&&!C&&(C=!0,this._editors.original.setScrollLeft(w.scrollLeft),C=!1)})),this._originalScrollTop=gt(this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=gt(this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._register(We(w=>{const v=this._originalScrollTop.read(w)-(this._originalScrollOffsetAnimated.get()-this._modifiedScrollOffsetAnimated.read(w))-(this._originalTopPadding.get()-this._modifiedTopPadding.read(w));v!==this._editors.modified.getScrollTop()&&this._editors.modified.setScrollTop(v,1)})),this._register(We(w=>{const v=this._modifiedScrollTop.read(w)-(this._modifiedScrollOffsetAnimated.get()-this._originalScrollOffsetAnimated.read(w))-(this._modifiedTopPadding.get()-this._originalTopPadding.read(w));v!==this._editors.original.getScrollTop()&&this._editors.original.setScrollTop(v,1)})),this._register(We(w=>{const v=this._diffModel.read(w)?.movedTextToCompare.read(w);let y=0;if(v){const x=this._editors.original.getTopForLineNumber(v.lineRangeMapping.original.startLineNumber,!0)-this._originalTopPadding.get();y=this._editors.modified.getTopForLineNumber(v.lineRangeMapping.modified.startLineNumber,!0)-this._modifiedTopPadding.get()-x}y>0?(this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(y,void 0)):y<0?(this._modifiedTopPadding.set(-y,void 0),this._originalTopPadding.set(0,void 0)):setTimeout(()=>{this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(0,void 0)},400),this._editors.modified.hasTextFocus()?this._originalScrollOffset.set(this._modifiedScrollOffset.get()-y,void 0,!0):this._modifiedScrollOffset.set(this._originalScrollOffset.get()+y,void 0,!0)}))}};ZI=Lre([u4(8,wy),u4(9,Lr)],ZI);function f4(o,e,t,i,n,s){const r=new Ll(g4(o,i)),a=new Ll(g4(e,n)),l=o.getOption(67),c=e.getOption(67),d=[];let h=0,u=0;function f(g,p){for(;;){let _=r.peek(),b=a.peek();if(_&&_.lineNumber>=g&&(_=void 0),b&&b.lineNumber>=p&&(b=void 0),!_&&!b)break;const C=_?_.lineNumber-h:Number.MAX_VALUE,w=b?b.lineNumber-u:Number.MAX_VALUE;Cw?(a.dequeue(),_={lineNumber:b.lineNumber-u+h,heightInPx:0}):(r.dequeue(),a.dequeue()),d.push({originalRange:xe.ofLength(_.lineNumber,1),modifiedRange:xe.ofLength(b.lineNumber,1),originalHeightInPx:l+_.heightInPx,modifiedHeightInPx:c+b.heightInPx,diff:void 0})}}for(const g of t){let w=function(v,y,x=!1){if(vF.lineNumberF+W.heightInPx,0)??0,H=a.takeWhile(F=>F.lineNumberF+W.heightInPx,0)??0;d.push({originalRange:L,modifiedRange:E,originalHeightInPx:L.length*l+N,modifiedHeightInPx:E.length*c+H,diff:g.lineRangeMapping}),C=v,b=y};const p=g.lineRangeMapping;f(p.original.startLineNumber,p.modified.startLineNumber);let _=!0,b=p.modified.startLineNumber,C=p.original.startLineNumber;if(s)for(const v of p.innerChanges||[]){v.originalRange.startColumn>1&&v.modifiedRange.startColumn>1&&w(v.originalRange.startLineNumber,v.modifiedRange.startLineNumber);const y=o.getModel(),x=v.originalRange.endLineNumber<=y.getLineCount()?y.getLineMaxColumn(v.originalRange.endLineNumber):Number.MAX_SAFE_INTEGER;v.originalRange.endColumn1&&i.push({lineNumber:l,heightInPx:r*(c-1)})}for(const l of o.getWhitespaces()){if(e.has(l.id))continue;const c=l.afterLineNumber===0?0:s.convertViewPositionToModelPosition(new P(l.afterLineNumber,1)).lineNumber;t.push({lineNumber:c,heightInPx:l.height})}return Goe(t,i,l=>l.lineNumber,(l,c)=>({lineNumber:l.lineNumber,heightInPx:l.heightInPx+c.heightInPx}))}function oM(o){return o.innerChanges?o.innerChanges.every(e=>m4(e.modifiedRange)&&m4(e.originalRange)||e.originalRange.equalsRange(new I(1,1,1,1))):!1}function m4(o){return o.startLineNumber===o.endLineNumber}const Op=class Op extends z{constructor(e,t,i,n,s){super(),this._rootElement=e,this._diffModel=t,this._originalEditorLayoutInfo=i,this._modifiedEditorLayoutInfo=n,this._editors=s,this._originalScrollTop=gt(this,this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=gt(this,this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._viewZonesChanged=ks("onDidChangeViewZones",this._editors.modified.onDidChangeViewZones),this.width=Ge(this,0),this._modifiedViewZonesChangedSignal=ks("modified.onDidChangeViewZones",this._editors.modified.onDidChangeViewZones),this._originalViewZonesChangedSignal=ks("original.onDidChangeViewZones",this._editors.original.onDidChangeViewZones),this._state=cu(this,(d,h)=>{this._element.replaceChildren();const u=this._diffModel.read(d),f=u?.diff.read(d)?.movedTexts;if(!f||f.length===0){this.width.set(0,void 0);return}this._viewZonesChanged.read(d);const g=this._originalEditorLayoutInfo.read(d),p=this._modifiedEditorLayoutInfo.read(d);if(!g||!p){this.width.set(0,void 0);return}this._modifiedViewZonesChangedSignal.read(d),this._originalViewZonesChangedSignal.read(d);const _=f.map(L=>{function E(ae,de){const se=de.getTopForLineNumber(ae.startLineNumber,!0),be=de.getTopForLineNumber(ae.endLineNumberExclusive,!0);return(se+be)/2}const N=E(L.lineRangeMapping.original,this._editors.original),H=this._originalScrollTop.read(d),F=E(L.lineRangeMapping.modified,this._editors.modified),W=this._modifiedScrollTop.read(d),j=N-H,B=F-W,G=Math.min(N,F),ne=Math.max(N,F);return{range:new Re(G,ne),from:j,to:B,fromWithoutScroll:N,toWithoutScroll:F,move:L}});_.sort(n6(rs(L=>L.fromWithoutScroll>L.toWithoutScroll,s6),rs(L=>L.fromWithoutScroll>L.toWithoutScroll?L.fromWithoutScroll:-L.toWithoutScroll,ia)));const b=rM.compute(_.map(L=>L.range)),C=10,w=g.verticalScrollbarWidth,v=(b.getTrackCount()-1)*10+C*2,y=w+v+(p.contentLeft-Op.movedCodeBlockPadding);let x=0;for(const L of _){const E=b.getTrack(x),N=w+C+E*10,H=15,F=15,W=y,j=p.glyphMarginWidth+p.lineNumbersWidth,B=18,G=document.createElementNS("http://www.w3.org/2000/svg","rect");G.classList.add("arrow-rectangle"),G.setAttribute("x",`${W-j}`),G.setAttribute("y",`${L.to-B/2}`),G.setAttribute("width",`${j}`),G.setAttribute("height",`${B}`),this._element.appendChild(G);const ne=document.createElementNS("http://www.w3.org/2000/svg","g"),ae=document.createElementNS("http://www.w3.org/2000/svg","path");ae.setAttribute("d",`M 0 ${L.from} L ${N} ${L.from} L ${N} ${L.to} L ${W-F} ${L.to}`),ae.setAttribute("fill","none"),ne.appendChild(ae);const de=document.createElementNS("http://www.w3.org/2000/svg","polygon");de.classList.add("arrow"),h.add(We(se=>{ae.classList.toggle("currentMove",L.move===u.activeMovedText.read(se)),de.classList.toggle("currentMove",L.move===u.activeMovedText.read(se))})),de.setAttribute("points",`${W-F},${L.to-H/2} ${W},${L.to} ${W-F},${L.to+H/2}`),ne.appendChild(de),this._element.appendChild(ne),x++}this.width.set(v,void 0)}),this._element=document.createElementNS("http://www.w3.org/2000/svg","svg"),this._element.setAttribute("class","moved-blocks-lines"),this._rootElement.appendChild(this._element),this._register(_e(()=>this._element.remove())),this._register(We(d=>{const h=this._originalEditorLayoutInfo.read(d),u=this._modifiedEditorLayoutInfo.read(d);!h||!u||(this._element.style.left=`${h.width-h.verticalScrollbarWidth}px`,this._element.style.height=`${h.height}px`,this._element.style.width=`${h.verticalScrollbarWidth+h.contentLeft-Op.movedCodeBlockPadding+this.width.read(d)}px`)})),this._register(X_(this._state));const r=Ce(d=>{const u=this._diffModel.read(d)?.diff.read(d);return u?u.movedTexts.map(f=>({move:f,original:new ff(wg(f.lineRangeMapping.original.startLineNumber-1),18),modified:new ff(wg(f.lineRangeMapping.modified.startLineNumber-1),18)})):[]});this._register(zv(this._editors.original,r.map(d=>d.map(h=>h.original)))),this._register(zv(this._editors.modified,r.map(d=>d.map(h=>h.modified)))),this._register(To((d,h)=>{const u=r.read(d);for(const f of u)h.add(new p4(this._editors.original,f.original,f.move,"original",this._diffModel.get())),h.add(new p4(this._editors.modified,f.modified,f.move,"modified",this._diffModel.get()))}));const a=ks("original.onDidFocusEditorWidget",d=>this._editors.original.onDidFocusEditorWidget(()=>setTimeout(()=>d(void 0),0))),l=ks("modified.onDidFocusEditorWidget",d=>this._editors.modified.onDidFocusEditorWidget(()=>setTimeout(()=>d(void 0),0)));let c="modified";this._register(Y_({createEmptyChangeSummary:()=>{},handleChange:(d,h)=>(d.didChange(a)&&(c="original"),d.didChange(l)&&(c="modified"),!0)},d=>{a.read(d),l.read(d);const h=this._diffModel.read(d);if(!h)return;const u=h.diff.read(d);let f;if(u&&c==="original"){const g=this._editors.originalCursor.read(d);g&&(f=u.movedTexts.find(p=>p.lineRangeMapping.original.contains(g.lineNumber)))}if(u&&c==="modified"){const g=this._editors.modifiedCursor.read(d);g&&(f=u.movedTexts.find(p=>p.lineRangeMapping.modified.contains(g.lineNumber)))}f!==h.movedTextToCompare.get()&&h.movedTextToCompare.set(void 0,void 0),h.setActiveMovedText(f)}))}};Op.movedCodeBlockPadding=4;let Qf=Op;class rM{static compute(e){const t=[],i=[];for(const n of e){let s=t.findIndex(r=>!r.intersectsStrict(n));s===-1&&(t.length>=6?s=$U(t,rs(a=>a.intersectWithRangeLength(n),ia)):(s=t.length,t.push(new uT))),t[s].addRange(n),i.push(s)}return new rM(t.length,i)}constructor(e,t){this._trackCount=e,this.trackPerLineIdx=t}getTrack(e){return this.trackPerLineIdx[e]}getTrackCount(){return this._trackCount}}class p4 extends J2{constructor(e,t,i,n,s){const r=tt("div.diff-hidden-lines-widget");super(e,t,r.root),this._editor=e,this._move=i,this._kind=n,this._diffModel=s,this._nodes=tt("div.diff-moved-code-block",{style:{marginRight:"4px"}},[tt("div.text-content@textContent"),tt("div.action-bar@actionBar")]),r.root.appendChild(this._nodes.root);const a=gt(this._editor.onDidLayoutChange,()=>this._editor.getLayoutInfo());this._register(Vc(this._nodes.root,{paddingRight:a.map(u=>u.verticalScrollbarWidth)}));let l;i.changes.length>0?l=this._kind==="original"?m("codeMovedToWithChanges","Code moved with changes to line {0}-{1}",this._move.lineRangeMapping.modified.startLineNumber,this._move.lineRangeMapping.modified.endLineNumberExclusive-1):m("codeMovedFromWithChanges","Code moved with changes from line {0}-{1}",this._move.lineRangeMapping.original.startLineNumber,this._move.lineRangeMapping.original.endLineNumberExclusive-1):l=this._kind==="original"?m("codeMovedTo","Code moved to line {0}-{1}",this._move.lineRangeMapping.modified.startLineNumber,this._move.lineRangeMapping.modified.endLineNumberExclusive-1):m("codeMovedFrom","Code moved from line {0}-{1}",this._move.lineRangeMapping.original.startLineNumber,this._move.lineRangeMapping.original.endLineNumberExclusive-1);const c=this._register(new oo(this._nodes.actionBar,{highlightToggledItems:!0})),d=new Fs("",l,"",!1);c.push(d,{icon:!1,label:!0});const h=new Fs("","Compare",Ee.asClassName(ie.compareChanges),!0,()=>{this._editor.focus(),this._diffModel.movedTextToCompare.set(this._diffModel.movedTextToCompare.get()===i?void 0:this._move,void 0)});this._register(We(u=>{const f=this._diffModel.movedTextToCompare.read(u)===i;h.checked=f})),c.push(h,{icon:!1,label:!0})}}class xre extends z{constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._decorations=Ce(this,s=>{const r=this._diffModel.read(s),a=r?.diff.read(s);if(!a)return null;const l=this._diffModel.read(s).movedTextToCompare.read(s),c=this._options.renderIndicators.read(s),d=this._options.showEmptyDecorations.read(s),h=[],u=[];if(!l)for(const g of a.mappings)if(g.lineRangeMapping.original.isEmpty||h.push({range:g.lineRangeMapping.original.toInclusiveRange(),options:c?r4:l4}),g.lineRangeMapping.modified.isEmpty||u.push({range:g.lineRangeMapping.modified.toInclusiveRange(),options:c?o4:a4}),g.lineRangeMapping.modified.isEmpty||g.lineRangeMapping.original.isEmpty)g.lineRangeMapping.original.isEmpty||h.push({range:g.lineRangeMapping.original.toInclusiveRange(),options:fre}),g.lineRangeMapping.modified.isEmpty||u.push({range:g.lineRangeMapping.modified.toInclusiveRange(),options:hre});else{const p=this._options.useTrueInlineDiffRendering.read(s)&&oM(g.lineRangeMapping);for(const _ of g.lineRangeMapping.innerChanges||[])if(g.lineRangeMapping.original.contains(_.originalRange.startLineNumber)&&h.push({range:_.originalRange,options:_.originalRange.isEmpty()&&d?gre:$I}),g.lineRangeMapping.modified.contains(_.modifiedRange.startLineNumber)&&u.push({range:_.modifiedRange,options:_.modifiedRange.isEmpty()&&d&&!p?ure:c4}),p){const b=r.model.original.getValueInRange(_.originalRange);u.push({range:_.modifiedRange,options:{description:"deleted-text",before:{content:b,inlineClassName:"inline-deleted-text"},zIndex:1e5,showIfCollapsed:!0}})}}if(l)for(const g of l.changes){const p=g.original.toInclusiveRange();p&&h.push({range:p,options:c?r4:l4});const _=g.modified.toInclusiveRange();_&&u.push({range:_,options:c?o4:a4});for(const b of g.innerChanges||[])h.push({range:b.originalRange,options:$I}),u.push({range:b.modifiedRange,options:c4})}const f=this._diffModel.read(s).activeMovedText.read(s);for(const g of a.movedTexts)h.push({range:g.lineRangeMapping.original.toInclusiveRange(),options:{description:"moved",blockClassName:"movedOriginal"+(g===f?" currentMove":""),blockPadding:[Qf.movedCodeBlockPadding,0,Qf.movedCodeBlockPadding,Qf.movedCodeBlockPadding]}}),u.push({range:g.lineRangeMapping.modified.toInclusiveRange(),options:{description:"moved",blockClassName:"movedModified"+(g===f?" currentMove":""),blockPadding:[4,0,4,4]}});return{originalDecorations:h,modifiedDecorations:u}}),this._register(Vv(this._editors.original,this._decorations.map(s=>s?.originalDecorations||[]))),this._register(Vv(this._editors.modified,this._decorations.map(s=>s?.modifiedDecorations||[])))}}class kre{resetSash(){this._sashRatio.set(void 0,void 0)}constructor(e,t){this._options=e,this.dimensions=t,this.sashLeft=ZT(this,i=>{const n=this._sashRatio.read(i)??this._options.splitViewDefaultRatio.read(i);return this._computeSashLeft(n,i)},(i,n)=>{const s=this.dimensions.width.get();this._sashRatio.set(i/s,n)}),this._sashRatio=Ge(this,void 0)}_computeSashLeft(e,t){const i=this.dimensions.width.read(t),n=Math.floor(this._options.splitViewDefaultRatio.read(t)*i),s=this._options.enableSplitViewResizing.read(t)?Math.floor(e*i):n,r=100;return i<=r*2?n:si-r?i-r:s}}class H8 extends z{constructor(e,t,i,n,s,r){super(),this._domNode=e,this._dimensions=t,this._enabled=i,this._boundarySashes=n,this.sashLeft=s,this._resetSash=r,this._sash=this._register(new an(this._domNode,{getVerticalSashTop:a=>0,getVerticalSashLeft:a=>this.sashLeft.get(),getVerticalSashHeight:a=>this._dimensions.height.get()},{orientation:0})),this._startSashPosition=void 0,this._register(this._sash.onDidStart(()=>{this._startSashPosition=this.sashLeft.get()})),this._register(this._sash.onDidChange(a=>{this.sashLeft.set(this._startSashPosition+(a.currentX-a.startX),void 0)})),this._register(this._sash.onDidEnd(()=>this._sash.layout())),this._register(this._sash.onDidReset(()=>this._resetSash())),this._register(We(a=>{const l=this._boundarySashes.read(a);l&&(this._sash.orthogonalEndSash=l.bottom)})),this._register(We(a=>{const l=this._enabled.read(a);this._sash.state=l?3:0,this.sashLeft.read(a),this._dimensions.height.read(a),this._sash.layout()}))}}class Dre extends z{constructor(e,t,i){super(),this._editor=e,this._domNode=t,this.itemProvider=i,this.scrollTop=gt(this,this._editor.onDidScrollChange,r=>this._editor.getScrollTop()),this.isScrollTopZero=this.scrollTop.map(r=>r===0),this.modelAttached=gt(this,this._editor.onDidChangeModel,r=>this._editor.hasModel()),this.editorOnDidChangeViewZones=ks("onDidChangeViewZones",this._editor.onDidChangeViewZones),this.editorOnDidContentSizeChange=ks("onDidContentSizeChange",this._editor.onDidContentSizeChange),this.domNodeSizeChanged=Q_("domNodeSizeChanged"),this.views=new Map,this._domNode.className="gutter monaco-editor";const n=this._domNode.appendChild(tt("div.scroll-decoration",{role:"presentation",ariaHidden:"true",style:{width:"100%"}}).root),s=new ResizeObserver(()=>{Xt(r=>{this.domNodeSizeChanged.trigger(r)})});s.observe(this._domNode),this._register(_e(()=>s.disconnect())),this._register(We(r=>{n.className=this.isScrollTopZero.read(r)?"":"scroll-decoration"})),this._register(We(r=>this.render(r)))}dispose(){super.dispose(),un(this._domNode)}render(e){if(!this.modelAttached.read(e))return;this.domNodeSizeChanged.read(e),this.editorOnDidChangeViewZones.read(e),this.editorOnDidContentSizeChange.read(e);const t=this.scrollTop.read(e),i=this._editor.getVisibleRanges(),n=new Set(this.views.keys()),s=Re.ofStartAndLength(0,this._domNode.clientHeight);if(!s.isEmpty)for(const r of i){const a=new xe(r.startLineNumber,r.endLineNumber+1),l=this.itemProvider.getIntersectingGutterItems(a,e);Xt(c=>{for(const d of l){if(!d.range.intersect(a))continue;n.delete(d.id);let h=this.views.get(d.id);if(h)h.item.set(d,c);else{const p=document.createElement("div");this._domNode.appendChild(p);const _=Ge("item",d),b=this.itemProvider.createView(_,p);h=new Ire(_,b,p),this.views.set(d.id,h)}const u=d.range.startLineNumber<=this._editor.getModel().getLineCount()?this._editor.getTopForLineNumber(d.range.startLineNumber,!0)-t:this._editor.getBottomForLineNumber(d.range.startLineNumber-1,!1)-t,g=(d.range.endLineNumberExclusive===1?Math.max(u,this._editor.getTopForLineNumber(d.range.startLineNumber,!1)-t):Math.max(u,this._editor.getBottomForLineNumber(d.range.endLineNumberExclusive-1,!0)-t))-u;h.domNode.style.top=`${u}px`,h.domNode.style.height=`${g}px`,h.gutterItemView.layout(Re.ofStartAndLength(u,g),s)}})}for(const r of n){const a=this.views.get(r);a.gutterItemView.dispose(),a.domNode.remove(),this.views.delete(r)}}}class Ire{constructor(e,t,i){this.item=e,this.gutterItemView=t,this.domNode=i}}class V8 extends Oh{constructor(e){super(),this._getContext=e}runAction(e,t){const i=this._getContext();return super.runAction(e,i)}}class _4 extends c3{constructor(e){super(),this._textModel=e}getValueOfRange(e){return this._textModel.getValueInRange(e)}get length(){const e=this._textModel.getLineCount(),t=this._textModel.getLineLength(e);return new Po(e-1,t)}}class Ere extends z{constructor(e,t,i={orientation:0}){super(),this.submenuActionViewItems=[],this.hasSecondaryActions=!1,this._onDidChangeDropdownVisibility=this._register(new IW),this.onDidChangeDropdownVisibility=this._onDidChangeDropdownVisibility.event,this.disposables=this._register(new X),i.hoverDelegate=i.hoverDelegate??this._register(QT()),this.options=i,this.toggleMenuAction=this._register(new E_(()=>this.toggleMenuActionViewItem?.show(),i.toggleMenuTitle)),this.element=document.createElement("div"),this.element.className="monaco-toolbar",e.appendChild(this.element),this.actionBar=this._register(new oo(this.element,{orientation:i.orientation,ariaLabel:i.ariaLabel,actionRunner:i.actionRunner,allowContextMenu:i.allowContextMenu,highlightToggledItems:i.highlightToggledItems,hoverDelegate:i.hoverDelegate,actionViewItemProvider:(n,s)=>{if(n.id===E_.ID)return this.toggleMenuActionViewItem=new qC(n,n.menuActions,t,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:Ee.asClassNameArray(i.moreIcon??ie.toolBarMore),anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,isMenu:!0,hoverDelegate:this.options.hoverDelegate}),this.toggleMenuActionViewItem.setActionContext(this.actionBar.context),this.disposables.add(this._onDidChangeDropdownVisibility.add(this.toggleMenuActionViewItem.onDidChangeVisibility)),this.toggleMenuActionViewItem;if(i.actionViewItemProvider){const r=i.actionViewItemProvider(n,s);if(r)return r}if(n instanceof R0){const r=new qC(n,n.actions,t,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:n.class,anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,hoverDelegate:this.options.hoverDelegate});return r.setActionContext(this.actionBar.context),this.submenuActionViewItems.push(r),this.disposables.add(this._onDidChangeDropdownVisibility.add(r.onDidChangeVisibility)),r}}}))}set actionRunner(e){this.actionBar.actionRunner=e}get actionRunner(){return this.actionBar.actionRunner}getElement(){return this.element}getItemAction(e){return this.actionBar.getAction(e)}setActions(e,t){this.clear();const i=e?e.slice(0):[];this.hasSecondaryActions=!!(t&&t.length>0),this.hasSecondaryActions&&t&&(this.toggleMenuAction.menuActions=t.slice(0),i.push(this.toggleMenuAction)),i.forEach(n=>{this.actionBar.push(n,{icon:this.options.icon??!0,label:this.options.label??!1,keybinding:this.getKeybindingLabel(n)})})}getKeybindingLabel(e){return this.options.getKeyBinding?.(e)?.getLabel()??void 0}clear(){this.submenuActionViewItems=[],this.disposables.clear(),this.actionBar.clear()}dispose(){this.clear(),this.disposables.dispose(),super.dispose()}}const l0=class l0 extends Fs{constructor(e,t){t=t||m("moreActions","More Actions..."),super(l0.ID,t,void 0,!0),this._menuActions=[],this.toggleDropdownMenu=e}async run(){this.toggleDropdownMenu()}get menuActions(){return this._menuActions}set menuActions(e){this._menuActions=e}};l0.ID="toolbar.toggle.more";let E_=l0;var z8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Do=function(o,e){return function(t,i){e(t,i,o)}};let $v=class extends Ere{constructor(e,t,i,n,s,r,a,l){super(e,s,{getKeyBinding:d=>r.lookupKeybinding(d.id)??void 0,...t,allowContextMenu:!0,skipTelemetry:typeof t?.telemetrySource=="string"}),this._options=t,this._menuService=i,this._contextKeyService=n,this._contextMenuService=s,this._keybindingService=r,this._commandService=a,this._sessionDisposables=this._store.add(new X);const c=t?.telemetrySource;c&&this._store.add(this.actionBar.onDidRun(d=>l.publicLog2("workbenchActionExecuted",{id:d.action.id,from:c})))}setActions(e,t=[],i){this._sessionDisposables.clear();const n=e.slice(),s=t.slice(),r=[];let a=0;const l=[];let c=!1;if(this._options?.hiddenItemStrategy!==-1)for(let d=0;df?.id)),h=this._options.overflowBehavior.maxItems-d.size;let u=0;for(let f=0;f=h&&(n[f]=void 0,l[f]=g))}}RM(n),RM(l),super.setActions(n,Gi.join(l,s)),(r.length>0||n.length>0)&&this._sessionDisposables.add(U(this.getElement(),"contextmenu",d=>{const h=new ur(fe(this.getElement()),d),u=this.getItemAction(h.target);if(!u)return;h.preventDefault(),h.stopPropagation();const f=[];if(u instanceof so&&u.menuKeybinding)f.push(u.menuKeybinding);else if(!(u instanceof Zm||u instanceof E_)){const p=!!this._keybindingService.lookupKeybinding(u.id);f.push(o8(this._commandService,this._keybindingService,u.id,void 0,p))}if(r.length>0){let p=!1;if(a===1&&this._options?.hiddenItemStrategy===0){p=!0;for(let _=0;_this._menuService.resetHiddenStates(i)}))),g.length!==0&&this._contextMenuService.showContextMenu({getAnchor:()=>h,getActions:()=>g,menuId:this._options?.contextMenu,menuActionOptions:{renderShortTitle:!0,...this._options?.menuOptions},skipTelemetry:typeof this._options?.telemetrySource=="string",contextKeyService:this._contextKeyService})}))}};$v=z8([Do(2,yr),Do(3,De),Do(4,Lr),Do(5,vt),Do(6,hi),Do(7,$s)],$v);let Kv=class extends $v{constructor(e,t,i,n,s,r,a,l,c){super(e,{resetMenu:t,...i},n,s,r,a,l,c),this._onDidChangeMenuItems=this._store.add(new A),this.onDidChangeMenuItems=this._onDidChangeMenuItems.event;const d=this._store.add(n.createMenu(t,s,{emitEventsForSubmenuChanges:!0})),h=()=>{const u=[],f=[];XT(d,i?.menuOptions,{primary:u,secondary:f},i?.toolbarOptions?.primaryGroup,i?.toolbarOptions?.shouldInlineSubmenu,i?.toolbarOptions?.useSeparatorsInPrimaryActions),e.classList.toggle("has-no-actions",u.length===0&&f.length===0),super.setActions(u,f)};this._store.add(d.onDidChange(()=>{h(),this._onDidChangeMenuItems.fire(this)})),h()}setActions(){throw new nt("This toolbar is populated from a menu.")}};Kv=z8([Do(3,yr),Do(4,De),Do(5,Lr),Do(6,vt),Do(7,hi),Do(8,$s)],Kv);var U8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},j1=function(o,e){return function(t,i){e(t,i,o)}};const dL=[],a1=35;let YI=class extends z{constructor(e,t,i,n,s,r,a,l,c){super(),this._diffModel=t,this._editors=i,this._options=n,this._sashLayout=s,this._boundarySashes=r,this._instantiationService=a,this._contextKeyService=l,this._menuService=c,this._menu=this._register(this._menuService.createMenu($e.DiffEditorHunkToolbar,this._contextKeyService)),this._actions=gt(this,this._menu.onDidChange,()=>this._menu.getActions()),this._hasActions=this._actions.map(d=>d.length>0),this._showSash=Ce(this,d=>this._options.renderSideBySide.read(d)&&this._hasActions.read(d)),this.width=Ce(this,d=>this._hasActions.read(d)?a1:0),this.elements=tt("div.gutter@gutter",{style:{position:"absolute",height:"100%",width:a1+"px"}},[]),this._currentDiff=Ce(this,d=>{const h=this._diffModel.read(d);if(!h)return;const u=h.diff.read(d)?.mappings,f=this._editors.modifiedCursor.read(d);if(f)return u?.find(g=>g.lineRangeMapping.modified.contains(f.lineNumber))}),this._selectedDiffs=Ce(this,d=>{const u=this._diffModel.read(d)?.diff.read(d);if(!u)return dL;const f=this._editors.modifiedSelections.read(d);if(f.every(b=>b.isEmpty()))return dL;const g=new to(f.map(b=>xe.fromRangeInclusive(b))),_=u.mappings.filter(b=>b.lineRangeMapping.innerChanges&&g.intersects(b.lineRangeMapping.modified)).map(b=>({mapping:b,rangeMappings:b.lineRangeMapping.innerChanges.filter(C=>f.some(w=>I.areIntersecting(C.modifiedRange,w)))}));return _.length===0||_.every(b=>b.rangeMappings.length===0)?dL:_}),this._register(Zoe(e,this.elements.root)),this._register(U(this.elements.root,"click",()=>{this._editors.modified.focus()})),this._register(Vc(this.elements.root,{display:this._hasActions.map(d=>d?"block":"none")})),tr(this,d=>this._showSash.read(d)?new H8(e,this._sashLayout.dimensions,this._options.enableSplitViewResizing,this._boundarySashes,ZT(this,u=>this._sashLayout.sashLeft.read(u)-a1,(u,f)=>this._sashLayout.sashLeft.set(u+a1,f)),()=>this._sashLayout.resetSash()):void 0).recomputeInitiallyAndOnChange(this._store),this._register(new Dre(this._editors.modified,this.elements.root,{getIntersectingGutterItems:(d,h)=>{const u=this._diffModel.read(h);if(!u)return[];const f=u.diff.read(h);if(!f)return[];const g=this._selectedDiffs.read(h);if(g.length>0){const _=Ws.fromRangeMappings(g.flatMap(b=>b.rangeMappings));return[new b4(_,!0,$e.DiffEditorSelectionToolbar,void 0,u.model.original.uri,u.model.modified.uri)]}const p=this._currentDiff.read(h);return f.mappings.map(_=>new b4(_.lineRangeMapping.withInnerChangesFromLineRanges(),_.lineRangeMapping===p?.lineRangeMapping,$e.DiffEditorHunkToolbar,void 0,u.model.original.uri,u.model.modified.uri))},createView:(d,h)=>this._instantiationService.createInstance(QI,d,h,this)})),this._register(U(this.elements.gutter,ee.MOUSE_WHEEL,d=>{this._editors.modified.getOption(104).handleMouseWheel&&this._editors.modified.delegateScrollFromMouseWheelEvent(d)},{passive:!1}))}computeStagedValue(e){const t=e.innerChanges??[],i=new _4(this._editors.modifiedModel.get()),n=new _4(this._editors.original.getModel());return new gT(t.map(a=>a.toTextEdit(i))).apply(n)}layout(e){this.elements.gutter.style.left=e+"px"}};YI=U8([j1(6,ke),j1(7,De),j1(8,yr)],YI);class b4{constructor(e,t,i,n,s,r){this.mapping=e,this.showAlways=t,this.menuId=i,this.rangeOverride=n,this.originalUri=s,this.modifiedUri=r}get id(){return this.mapping.modified.toString()}get range(){return this.rangeOverride??this.mapping.modified}}let QI=class extends z{constructor(e,t,i,n){super(),this._item=e,this._elements=tt("div.gutterItem",{style:{height:"20px",width:"34px"}},[tt("div.background@background",{},[]),tt("div.buttons@buttons",{},[])]),this._showAlways=this._item.map(this,r=>r.showAlways),this._menuId=this._item.map(this,r=>r.menuId),this._isSmall=Ge(this,!1),this._lastItemRange=void 0,this._lastViewRange=void 0;const s=this._register(n.createInstance(gg,"element",!0,{position:{hoverPosition:1}}));this._register(Bm(t,this._elements.root)),this._register(We(r=>{const a=this._showAlways.read(r);this._elements.root.classList.toggle("noTransition",!0),this._elements.root.classList.toggle("showAlways",a),setTimeout(()=>{this._elements.root.classList.toggle("noTransition",!1)},0)})),this._register(To((r,a)=>{this._elements.buttons.replaceChildren();const l=a.add(n.createInstance(Kv,this._elements.buttons,this._menuId.read(r),{orientation:1,hoverDelegate:s,toolbarOptions:{primaryGroup:c=>c.startsWith("primary")},overflowBehavior:{maxItems:this._isSmall.read(r)?1:3},hiddenItemStrategy:0,actionRunner:new V8(()=>{const c=this._item.get(),d=c.mapping;return{mapping:d,originalWithModifiedChanges:i.computeStagedValue(d),originalUri:c.originalUri,modifiedUri:c.modifiedUri}}),menuOptions:{shouldForwardArgs:!0}}));a.add(l.onDidChangeMenuItems(()=>{this._lastItemRange&&this.layout(this._lastItemRange,this._lastViewRange)}))}))}layout(e,t){this._lastItemRange=e,this._lastViewRange=t;let i=this._elements.buttons.clientHeight;this._isSmall.set(this._item.get().mapping.original.startLineNumber===1&&e.length<30,void 0),i=this._elements.buttons.clientHeight;const n=e.length/2-i/2,s=i;let r=e.start+n;const a=Re.tryCreate(s,t.endExclusive-s-i),l=Re.tryCreate(e.start+s,e.endExclusive-i-s);l&&a&&l.start{const n=Ql._map.get(e);n&&(Ql._map.delete(e),n.dispose(),i.dispose())})}return t}_beginUpdate(){this._updateCounter++,this._updateCounter===1&&(this._currentTransaction=new Ug(()=>{}))}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){const e=this._currentTransaction;this._currentTransaction=void 0,e.finish()}}constructor(e){super(),this.editor=e,this._updateCounter=0,this._currentTransaction=void 0,this._model=Ge(this,this.editor.getModel()),this.model=this._model,this.isReadonly=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(92)),this._versionId=iD({owner:this,lazy:!0},this.editor.getModel()?.getVersionId()??null),this.versionId=this._versionId,this._selections=iD({owner:this,equalsFn:Jk(Xk(Fe.selectionsEqual)),lazy:!0},this.editor.getSelections()??null),this.selections=this._selections,this.isFocused=gt(this,t=>{const i=this.editor.onDidFocusEditorWidget(t),n=this.editor.onDidBlurEditorWidget(t);return{dispose(){i.dispose(),n.dispose()}}},()=>this.editor.hasWidgetFocus()),this.value=ZT(this,t=>(this.versionId.read(t),this.model.read(t)?.getValue()??""),(t,i)=>{const n=this.model.get();n!==null&&t!==n.getValue()&&n.setValue(t)}),this.valueIsEmpty=Ce(this,t=>(this.versionId.read(t),this.editor.getModel()?.getValueLength()===0)),this.cursorSelection=dr({owner:this,equalsFn:Jk(Fe.selectionsEqual)},t=>this.selections.read(t)?.[0]??null),this.onDidType=Q_(this),this.scrollTop=gt(this.editor.onDidScrollChange,()=>this.editor.getScrollTop()),this.scrollLeft=gt(this.editor.onDidScrollChange,()=>this.editor.getScrollLeft()),this.layoutInfo=gt(this.editor.onDidLayoutChange,()=>this.editor.getLayoutInfo()),this.layoutInfoContentLeft=this.layoutInfo.map(t=>t.contentLeft),this.layoutInfoDecorationsLeft=this.layoutInfo.map(t=>t.decorationsLeft),this.contentWidth=gt(this.editor.onDidContentSizeChange,()=>this.editor.getContentWidth()),this._overlayWidgetCounter=0,this._register(this.editor.onBeginUpdate(()=>this._beginUpdate())),this._register(this.editor.onEndUpdate(()=>this._endUpdate())),this._register(this.editor.onDidChangeModel(()=>{this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidType(t=>{this._beginUpdate();try{this._forceUpdate(),this.onDidType.trigger(this._currentTransaction,t)}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeModelContent(t=>{this._beginUpdate();try{this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeCursorSelection(t=>{this._beginUpdate();try{this._selections.set(this.editor.getSelections(),this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}}))}forceUpdate(e){this._beginUpdate();try{return this._forceUpdate(),e?e(this._currentTransaction):void 0}finally{this._endUpdate()}}_forceUpdate(){this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,void 0),this._selections.set(this.editor.getSelections(),this._currentTransaction,void 0)}finally{this._endUpdate()}}getOption(e){return gt(this,t=>this.editor.onDidChangeConfiguration(i=>{i.hasChanged(e)&&t(void 0)}),()=>this.editor.getOption(e))}setDecorations(e){const t=new X,i=this.editor.createDecorationsCollection();return t.add(Z_({owner:this,debugName:()=>`Apply decorations from ${e.debugName}`},n=>{const s=e.read(n);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}createOverlayWidget(e){const t="observableOverlayWidget"+this._overlayWidgetCounter++,i={getDomNode:()=>e.domNode,getPosition:()=>e.position.get(),getId:()=>t,allowEditorOverflow:e.allowEditorOverflow,getMinContentWidthInPx:()=>e.minContentWidthInPx.get()};this.editor.addOverlayWidget(i);const n=We(s=>{e.position.read(s),e.minContentWidthInPx.read(s),this.editor.layoutOverlayWidget(i)});return _e(()=>{n.dispose(),this.editor.removeOverlayWidget(i)})}};Ql._map=new Map;let XI=Ql;function JI(o,e){return zZ({createEmptyChangeSummary:()=>({deltas:[],didChange:!1}),handleChange:(t,i)=>{if(t.didChange(o)){const n=t.change;n!==void 0&&i.deltas.push(n),i.didChange=!0}return!0}},(t,i)=>{const n=o.read(t);i.didChange&&e(n,i.deltas)})}function Nre(o,e){const t=new X,i=JI(o,(n,s)=>{t.clear(),e(n,s,t)});return{dispose(){i.dispose(),t.dispose()}}}var Tre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Mre=function(o,e){return function(t,i){e(t,i,o)}},q1,uh;let eE=(uh=class extends z{static setBreadcrumbsSourceFactory(e){this._breadcrumbsSourceFactory.set(e,void 0)}get isUpdatingHiddenAreas(){return this._isUpdatingHiddenAreas}constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._instantiationService=n,this._modifiedOutlineSource=tr(this,l=>{const c=this._editors.modifiedModel.read(l),d=q1._breadcrumbsSourceFactory.read(l);return!c||!d?void 0:d(c,this._instantiationService)}),this._isUpdatingHiddenAreas=!1,this._register(this._editors.original.onDidChangeCursorPosition(l=>{if(l.reason===1)return;const c=this._diffModel.get();Xt(d=>{for(const h of this._editors.original.getSelections()||[])c?.ensureOriginalLineIsVisible(h.getStartPosition().lineNumber,0,d),c?.ensureOriginalLineIsVisible(h.getEndPosition().lineNumber,0,d)})})),this._register(this._editors.modified.onDidChangeCursorPosition(l=>{if(l.reason===1)return;const c=this._diffModel.get();Xt(d=>{for(const h of this._editors.modified.getSelections()||[])c?.ensureModifiedLineIsVisible(h.getStartPosition().lineNumber,0,d),c?.ensureModifiedLineIsVisible(h.getEndPosition().lineNumber,0,d)})}));const s=this._diffModel.map((l,c)=>{const d=l?.unchangedRegions.read(c)??[];return d.length===1&&d[0].modifiedLineNumber===1&&d[0].lineCount===this._editors.modifiedModel.read(c)?.getLineCount()?[]:d});this.viewZones=cu(this,(l,c)=>{const d=this._modifiedOutlineSource.read(l);if(!d)return{origViewZones:[],modViewZones:[]};const h=[],u=[],f=this._options.renderSideBySide.read(l),g=this._options.compactMode.read(l),p=s.read(l);for(let _=0;_b.getHiddenOriginalRange(v).startLineNumber-1),w=new ff(C,12);h.push(w),c.add(new C4(this._editors.original,w,b,!f))}{const C=Ce(this,v=>b.getHiddenModifiedRange(v).startLineNumber-1),w=new ff(C,12);u.push(w),c.add(new C4(this._editors.modified,w,b))}}else{{const C=Ce(this,v=>b.getHiddenOriginalRange(v).startLineNumber-1),w=new ff(C,24);h.push(w),c.add(new v4(this._editors.original,w,b,b.originalUnchangedRange,!f,d,v=>this._diffModel.get().ensureModifiedLineIsVisible(v,2,void 0),this._options))}{const C=Ce(this,v=>b.getHiddenModifiedRange(v).startLineNumber-1),w=new ff(C,24);u.push(w),c.add(new v4(this._editors.modified,w,b,b.modifiedUnchangedRange,!1,d,v=>this._diffModel.get().ensureModifiedLineIsVisible(v,2,void 0),this._options))}}}return{origViewZones:h,modViewZones:u}});const r={description:"unchanged lines",className:"diff-unchanged-lines",isWholeLine:!0},a={description:"Fold Unchanged",glyphMarginHoverMessage:new Js(void 0,{isTrusted:!0,supportThemeIcons:!0}).appendMarkdown(m("foldUnchanged","Fold Unchanged Region")),glyphMarginClassName:"fold-unchanged "+Ee.asClassName(ie.fold),zIndex:10001};this._register(Vv(this._editors.original,Ce(this,l=>{const c=s.read(l),d=c.map(h=>({range:h.originalUnchangedRange.toInclusiveRange(),options:r}));for(const h of c)h.shouldHideControls(l)&&d.push({range:I.fromPositions(new P(h.originalLineNumber,1)),options:a});return d}))),this._register(Vv(this._editors.modified,Ce(this,l=>{const c=s.read(l),d=c.map(h=>({range:h.modifiedUnchangedRange.toInclusiveRange(),options:r}));for(const h of c)h.shouldHideControls(l)&&d.push({range:xe.ofLength(h.modifiedLineNumber,1).toInclusiveRange(),options:a});return d}))),this._register(We(l=>{const c=s.read(l);this._isUpdatingHiddenAreas=!0;try{this._editors.original.setHiddenAreas(c.map(d=>d.getHiddenOriginalRange(l).toInclusiveRange()).filter(_l)),this._editors.modified.setHiddenAreas(c.map(d=>d.getHiddenModifiedRange(l).toInclusiveRange()).filter(_l))}finally{this._isUpdatingHiddenAreas=!1}})),this._register(this._editors.modified.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){const c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;const h=d.unchangedRegions.get().find(u=>u.modifiedUnchangedRange.includes(c));if(!h)return;h.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}})),this._register(this._editors.original.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){const c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;const h=d.unchangedRegions.get().find(u=>u.originalUnchangedRange.includes(c));if(!h)return;h.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}}))}},q1=uh,uh._breadcrumbsSourceFactory=Ge(q1,()=>({dispose(){},getBreadcrumbItems(e,t){return[]}})),uh);eE=q1=Tre([Mre(3,ke)],eE);class C4 extends J2{constructor(e,t,i,n=!1){const s=tt("div.diff-hidden-lines-widget");super(e,t,s.root),this._unchangedRegion=i,this._hide=n,this._nodes=tt("div.diff-hidden-lines-compact",[tt("div.line-left",[]),tt("div.text@text",[]),tt("div.line-right",[])]),s.root.appendChild(this._nodes.root),this._hide&&this._nodes.root.replaceChildren(),this._register(We(r=>{if(!this._hide){const a=this._unchangedRegion.getHiddenModifiedRange(r).length,l=m("hiddenLines","{0} hidden lines",a);this._nodes.text.innerText=l}}))}}class v4 extends J2{constructor(e,t,i,n,s,r,a,l){const c=tt("div.diff-hidden-lines-widget");super(e,t,c.root),this._editor=e,this._unchangedRegion=i,this._unchangedRegionRange=n,this._hide=s,this._modifiedOutlineSource=r,this._revealModifiedHiddenLine=a,this._options=l,this._nodes=tt("div.diff-hidden-lines",[tt("div.top@top",{title:m("diff.hiddenLines.top","Click or drag to show more above")}),tt("div.center@content",{style:{display:"flex"}},[tt("div@first",{style:{display:"flex",justifyContent:"center",alignItems:"center",flexShrink:"0"}},[ce("a",{title:m("showUnchangedRegion","Show Unchanged Region"),role:"button",onclick:()=>{this._unchangedRegion.showAll(void 0)}},...Qd("$(unfold)"))]),tt("div@others",{style:{display:"flex",justifyContent:"center",alignItems:"center"}})]),tt("div.bottom@bottom",{title:m("diff.bottom","Click or drag to show more below"),role:"button"})]),c.root.appendChild(this._nodes.root),this._hide?un(this._nodes.first):this._register(Vc(this._nodes.first,{width:Dg(this._editor).layoutInfoContentLeft})),this._register(We(h=>{const u=this._unchangedRegion.visibleLineCountTop.read(h)+this._unchangedRegion.visibleLineCountBottom.read(h)===this._unchangedRegion.lineCount;this._nodes.bottom.classList.toggle("canMoveTop",!u),this._nodes.bottom.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(h)>0),this._nodes.top.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(h)>0),this._nodes.top.classList.toggle("canMoveBottom",!u);const f=this._unchangedRegion.isDragged.read(h),g=this._editor.getDomNode();g&&(g.classList.toggle("draggingUnchangedRegion",!!f),f==="top"?(g.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(h)>0),g.classList.toggle("canMoveBottom",!u)):f==="bottom"?(g.classList.toggle("canMoveTop",!u),g.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(h)>0)):(g.classList.toggle("canMoveTop",!1),g.classList.toggle("canMoveBottom",!1)))}));const d=this._editor;this._register(U(this._nodes.top,"mousedown",h=>{if(h.button!==0)return;this._nodes.top.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),h.preventDefault();const u=h.clientY;let f=!1;const g=this._unchangedRegion.visibleLineCountTop.get();this._unchangedRegion.isDragged.set("top",void 0);const p=fe(this._nodes.top),_=U(p,"mousemove",C=>{const v=C.clientY-u;f=f||Math.abs(v)>2;const y=Math.round(v/d.getOption(67)),x=Math.max(0,Math.min(g+y,this._unchangedRegion.getMaxVisibleLineCountTop()));this._unchangedRegion.visibleLineCountTop.set(x,void 0)}),b=U(p,"mouseup",C=>{f||this._unchangedRegion.showMoreAbove(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0),this._nodes.top.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),this._unchangedRegion.isDragged.set(void 0,void 0),_.dispose(),b.dispose()})})),this._register(U(this._nodes.bottom,"mousedown",h=>{if(h.button!==0)return;this._nodes.bottom.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),h.preventDefault();const u=h.clientY;let f=!1;const g=this._unchangedRegion.visibleLineCountBottom.get();this._unchangedRegion.isDragged.set("bottom",void 0);const p=fe(this._nodes.bottom),_=U(p,"mousemove",C=>{const v=C.clientY-u;f=f||Math.abs(v)>2;const y=Math.round(v/d.getOption(67)),x=Math.max(0,Math.min(g-y,this._unchangedRegion.getMaxVisibleLineCountBottom())),L=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.visibleLineCountBottom.set(x,void 0);const E=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(E-L))}),b=U(p,"mouseup",C=>{if(this._unchangedRegion.isDragged.set(void 0,void 0),!f){const w=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.showMoreBelow(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0);const v=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(v-w))}this._nodes.bottom.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),_.dispose(),b.dispose()})})),this._register(We(h=>{const u=[];if(!this._hide){const f=i.getHiddenModifiedRange(h).length,g=m("hiddenLines","{0} hidden lines",f),p=ce("span",{title:m("diff.hiddenLines.expandAll","Double click to unfold")},g);p.addEventListener("dblclick",C=>{C.button===0&&(C.preventDefault(),this._unchangedRegion.showAll(void 0))}),u.push(p);const _=this._unchangedRegion.getHiddenModifiedRange(h),b=this._modifiedOutlineSource.getBreadcrumbItems(_,h);if(b.length>0){u.push(ce("span",void 0,"  |  "));for(let C=0;C{this._revealModifiedHiddenLine(w.startLineNumber)}}}}un(this._nodes.others,...u)}))}}var Rre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Are=function(o,e){return function(t,i){e(t,i,o)}},Go,gl;let N_=(gl=class extends z{constructor(e,t,i,n,s,r,a){super(),this._editors=e,this._rootElement=t,this._diffModel=i,this._rootWidth=n,this._rootHeight=s,this._modifiedEditorLayoutInfo=r,this._themeService=a,this.width=Go.ENTIRE_DIFF_OVERVIEW_WIDTH;const l=gt(this._themeService.onDidColorThemeChange,()=>this._themeService.getColorTheme()),c=Ce(u=>{const f=l.read(u),g=f.getColor(PK)||(f.getColor(RK)||xk).transparent(2),p=f.getColor(OK)||(f.getColor(AK)||kk).transparent(2);return{insertColor:g,removeColor:p}}),d=ot(document.createElement("div"));d.setClassName("diffViewport"),d.setPosition("absolute");const h=tt("div.diffOverview",{style:{position:"absolute",top:"0px",width:Go.ENTIRE_DIFF_OVERVIEW_WIDTH+"px"}}).root;this._register(Bm(h,d.domNode)),this._register(jt(h,ee.POINTER_DOWN,u=>{this._editors.modified.delegateVerticalScrollbarPointerDown(u)})),this._register(U(h,ee.MOUSE_WHEEL,u=>{this._editors.modified.delegateScrollFromMouseWheelEvent(u)},{passive:!1})),this._register(Bm(this._rootElement,h)),this._register(To((u,f)=>{const g=this._diffModel.read(u),p=this._editors.original.createOverviewRuler("original diffOverviewRuler");p&&(f.add(p),f.add(Bm(h,p.getDomNode())));const _=this._editors.modified.createOverviewRuler("modified diffOverviewRuler");if(_&&(f.add(_),f.add(Bm(h,_.getDomNode()))),!p||!_)return;const b=ks("viewZoneChanged",this._editors.original.onDidChangeViewZones),C=ks("viewZoneChanged",this._editors.modified.onDidChangeViewZones),w=ks("hiddenRangesChanged",this._editors.original.onDidChangeHiddenAreas),v=ks("hiddenRangesChanged",this._editors.modified.onDidChangeHiddenAreas);f.add(We(y=>{b.read(y),C.read(y),w.read(y),v.read(y);const x=c.read(y),L=g?.diff.read(y)?.mappings;function E(F,W,j){const B=j._getViewModel();return B?F.filter(G=>G.length>0).map(G=>{const ne=B.coordinatesConverter.convertModelPositionToViewPosition(new P(G.startLineNumber,1)),ae=B.coordinatesConverter.convertModelPositionToViewPosition(new P(G.endLineNumberExclusive,1)),de=ae.lineNumber-ne.lineNumber;return new E8(ne.lineNumber,ae.lineNumber,de,W.toString())}):[]}const N=E((L||[]).map(F=>F.lineRangeMapping.original),x.removeColor,this._editors.original),H=E((L||[]).map(F=>F.lineRangeMapping.modified),x.insertColor,this._editors.modified);p?.setZones(N),_?.setZones(H)})),f.add(We(y=>{const x=this._rootHeight.read(y),L=this._rootWidth.read(y),E=this._modifiedEditorLayoutInfo.read(y);if(E){const N=Go.ENTIRE_DIFF_OVERVIEW_WIDTH-2*Go.ONE_OVERVIEW_WIDTH;p.setLayout({top:0,height:x,right:N+Go.ONE_OVERVIEW_WIDTH,width:Go.ONE_OVERVIEW_WIDTH}),_.setLayout({top:0,height:x,right:0,width:Go.ONE_OVERVIEW_WIDTH});const H=this._editors.modifiedScrollTop.read(y),F=this._editors.modifiedScrollHeight.read(y),W=this._editors.modified.getOption(104),j=new pg(W.verticalHasArrows?W.arrowSize:0,W.verticalScrollbarSize,0,E.height,F,H);d.setTop(j.getSliderPosition()),d.setHeight(j.getSliderSize())}else d.setTop(0),d.setHeight(0);h.style.height=x+"px",h.style.left=L-Go.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",d.setWidth(Go.ENTIRE_DIFF_OVERVIEW_WIDTH)}))}))}},Go=gl,gl.ONE_OVERVIEW_WIDTH=15,gl.ENTIRE_DIFF_OVERVIEW_WIDTH=gl.ONE_OVERVIEW_WIDTH*2,gl);N_=Go=Rre([Are(6,en)],N_);const hL=[];class Pre extends z{constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._widget=n,this._selectedDiffs=Ce(this,s=>{const a=this._diffModel.read(s)?.diff.read(s);if(!a)return hL;const l=this._editors.modifiedSelections.read(s);if(l.every(u=>u.isEmpty()))return hL;const c=new to(l.map(u=>xe.fromRangeInclusive(u))),h=a.mappings.filter(u=>u.lineRangeMapping.innerChanges&&c.intersects(u.lineRangeMapping.modified)).map(u=>({mapping:u,rangeMappings:u.lineRangeMapping.innerChanges.filter(f=>l.some(g=>I.areIntersecting(f.modifiedRange,g)))}));return h.length===0||h.every(u=>u.rangeMappings.length===0)?hL:h}),this._register(To((s,r)=>{if(!this._options.shouldRenderOldRevertArrows.read(s))return;const a=this._diffModel.read(s),l=a?.diff.read(s);if(!a||!l||a.movedTextToCompare.read(s))return;const c=[],d=this._selectedDiffs.read(s),h=new Set(d.map(u=>u.mapping));if(d.length>0){const u=this._editors.modifiedSelections.read(s),f=r.add(new jv(u[u.length-1].positionLineNumber,this._widget,d.flatMap(g=>g.rangeMappings),!0));this._editors.modified.addGlyphMarginWidget(f),c.push(f)}for(const u of l.mappings)if(!h.has(u)&&!u.lineRangeMapping.modified.isEmpty&&u.lineRangeMapping.innerChanges){const f=r.add(new jv(u.lineRangeMapping.modified.startLineNumber,this._widget,u.lineRangeMapping,!1));this._editors.modified.addGlyphMarginWidget(f),c.push(f)}r.add(_e(()=>{for(const u of c)this._editors.modified.removeGlyphMarginWidget(u)}))}))}}const c0=class c0 extends z{getId(){return this._id}constructor(e,t,i,n){super(),this._lineNumber=e,this._widget=t,this._diffs=i,this._revertSelection=n,this._id=`revertButton${c0.counter++}`,this._domNode=tt("div.revertButton",{title:this._revertSelection?m("revertSelectedChanges","Revert Selected Changes"):m("revertChange","Revert Change")},[BC(ie.arrowRight)]).root,this._register(U(this._domNode,ee.MOUSE_DOWN,s=>{s.button!==2&&(s.stopPropagation(),s.preventDefault())})),this._register(U(this._domNode,ee.MOUSE_UP,s=>{s.stopPropagation(),s.preventDefault()})),this._register(U(this._domNode,ee.CLICK,s=>{this._diffs instanceof hn?this._widget.revert(this._diffs):this._widget.revertRangeMappings(this._diffs),s.stopPropagation(),s.preventDefault()}))}getDomNode(){return this._domNode}getPosition(){return{lane:Ao.Right,range:{startColumn:1,startLineNumber:this._lineNumber,endColumn:1,endLineNumber:this._lineNumber},zIndex:10001}}};c0.counter=0;let jv=c0;function Pa(o,e,t){const i=o.bindTo(e);return Z_({debugName:()=>`Set Context Key "${o.key}"`},n=>{i.set(t(n))})}var Ore=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},w4=function(o,e){return function(t,i){e(t,i,o)}};let tE=class extends z{get onDidContentSizeChange(){return this._onDidContentSizeChange.event}constructor(e,t,i,n,s,r,a){super(),this.originalEditorElement=e,this.modifiedEditorElement=t,this._options=i,this._argCodeEditorWidgetOptions=n,this._createInnerEditor=s,this._instantiationService=r,this._keybindingService=a,this.original=this._register(this._createLeftHandSideEditor(this._options.editorOptions.get(),this._argCodeEditorWidgetOptions.originalEditor||{})),this.modified=this._register(this._createRightHandSideEditor(this._options.editorOptions.get(),this._argCodeEditorWidgetOptions.modifiedEditor||{})),this._onDidContentSizeChange=this._register(new A),this.modifiedScrollTop=gt(this,this.modified.onDidScrollChange,()=>this.modified.getScrollTop()),this.modifiedScrollHeight=gt(this,this.modified.onDidScrollChange,()=>this.modified.getScrollHeight()),this.modifiedObs=Dg(this.modified),this.originalObs=Dg(this.original),this.modifiedModel=this.modifiedObs.model,this.modifiedSelections=gt(this,this.modified.onDidChangeCursorSelection,()=>this.modified.getSelections()??[]),this.modifiedCursor=dr({owner:this,equalsFn:P.equals},l=>this.modifiedSelections.read(l)[0]?.getPosition()??new P(1,1)),this.originalCursor=gt(this,this.original.onDidChangeCursorPosition,()=>this.original.getPosition()??new P(1,1)),this._argCodeEditorWidgetOptions=null,this._register(Y_({createEmptyChangeSummary:()=>({}),handleChange:(l,c)=>(l.didChange(i.editorOptions)&&Object.assign(c,l.change.changedOptions),!0)},(l,c)=>{i.editorOptions.read(l),this._options.renderSideBySide.read(l),this.modified.updateOptions(this._adjustOptionsForRightHandSide(l,c)),this.original.updateOptions(this._adjustOptionsForLeftHandSide(l,c))}))}_createLeftHandSideEditor(e,t){const i=this._adjustOptionsForLeftHandSide(void 0,e),n=this._constructInnerEditor(this._instantiationService,this.originalEditorElement,i,t);return n.setContextValue("isInDiffLeftEditor",!0),n}_createRightHandSideEditor(e,t){const i=this._adjustOptionsForRightHandSide(void 0,e),n=this._constructInnerEditor(this._instantiationService,this.modifiedEditorElement,i,t);return n.setContextValue("isInDiffRightEditor",!0),n}_constructInnerEditor(e,t,i,n){const s=this._createInnerEditor(e,t,i,n);return this._register(s.onDidContentSizeChange(r=>{const a=this.original.getContentWidth()+this.modified.getContentWidth()+N_.ENTIRE_DIFF_OVERVIEW_WIDTH,l=Math.max(this.modified.getContentHeight(),this.original.getContentHeight());this._onDidContentSizeChange.fire({contentHeight:l,contentWidth:a,contentHeightChanged:r.contentHeightChanged,contentWidthChanged:r.contentWidthChanged})})),s}_adjustOptionsForLeftHandSide(e,t){const i=this._adjustOptionsForSubEditor(t);return this._options.renderSideBySide.get()?(i.unicodeHighlight=this._options.editorOptions.get().unicodeHighlight||{},i.wordWrapOverride1=this._options.diffWordWrap.get()):(i.wordWrapOverride1="off",i.wordWrapOverride2="off",i.stickyScroll={enabled:!1},i.unicodeHighlight={nonBasicASCII:!1,ambiguousCharacters:!1,invisibleCharacters:!1}),i.glyphMargin=this._options.renderSideBySide.get(),t.originalAriaLabel&&(i.ariaLabel=t.originalAriaLabel),i.ariaLabel=this._updateAriaLabel(i.ariaLabel),i.readOnly=!this._options.originalEditable.get(),i.dropIntoEditor={enabled:!i.readOnly},i.extraEditorClassName="original-in-monaco-diff-editor",i}_adjustOptionsForRightHandSide(e,t){const i=this._adjustOptionsForSubEditor(t);return t.modifiedAriaLabel&&(i.ariaLabel=t.modifiedAriaLabel),i.ariaLabel=this._updateAriaLabel(i.ariaLabel),i.wordWrapOverride1=this._options.diffWordWrap.get(),i.revealHorizontalRightPadding=Xh.revealHorizontalRightPadding.defaultValue+N_.ENTIRE_DIFF_OVERVIEW_WIDTH,i.scrollbar.verticalHasArrows=!1,i.extraEditorClassName="modified-in-monaco-diff-editor",i}_adjustOptionsForSubEditor(e){const t={...e,dimension:{height:0,width:0}};return t.inDiffEditor=!0,t.automaticLayout=!1,t.scrollbar={...t.scrollbar||{}},t.folding=!1,t.codeLens=this._options.diffCodeLens.get(),t.fixedOverflowWidgets=!0,t.minimap={...t.minimap||{}},t.minimap.enabled=!1,this._options.hideUnchangedRegions.get()?t.stickyScroll={enabled:!1}:t.stickyScroll=this._options.editorOptions.get().stickyScroll,t}_updateAriaLabel(e){e||(e="");const t=m("diff-aria-navigation-tip"," use {0} to open the accessibility help.",this._keybindingService.lookupKeybinding("editor.action.accessibilityHelp")?.getAriaLabel());return this._options.accessibilityVerbose.get()?e+t:e?e.replaceAll(t,""):""}};tE=Ore([w4(5,ke),w4(6,vt)],tE);const d0=class d0 extends z{constructor(){super(...arguments),this._id=++d0.idCounter,this._onDidDispose=this._register(new A),this.onDidDispose=this._onDidDispose.event}getId(){return this.getEditorType()+":v2:"+this._id}getVisibleColumnFromPosition(e){return this._targetEditor.getVisibleColumnFromPosition(e)}getPosition(){return this._targetEditor.getPosition()}setPosition(e,t="api"){this._targetEditor.setPosition(e,t)}revealLine(e,t=0){this._targetEditor.revealLine(e,t)}revealLineInCenter(e,t=0){this._targetEditor.revealLineInCenter(e,t)}revealLineInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealLineInCenterIfOutsideViewport(e,t)}revealLineNearTop(e,t=0){this._targetEditor.revealLineNearTop(e,t)}revealPosition(e,t=0){this._targetEditor.revealPosition(e,t)}revealPositionInCenter(e,t=0){this._targetEditor.revealPositionInCenter(e,t)}revealPositionInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealPositionInCenterIfOutsideViewport(e,t)}revealPositionNearTop(e,t=0){this._targetEditor.revealPositionNearTop(e,t)}getSelection(){return this._targetEditor.getSelection()}getSelections(){return this._targetEditor.getSelections()}setSelection(e,t="api"){this._targetEditor.setSelection(e,t)}setSelections(e,t="api"){this._targetEditor.setSelections(e,t)}revealLines(e,t,i=0){this._targetEditor.revealLines(e,t,i)}revealLinesInCenter(e,t,i=0){this._targetEditor.revealLinesInCenter(e,t,i)}revealLinesInCenterIfOutsideViewport(e,t,i=0){this._targetEditor.revealLinesInCenterIfOutsideViewport(e,t,i)}revealLinesNearTop(e,t,i=0){this._targetEditor.revealLinesNearTop(e,t,i)}revealRange(e,t=0,i=!1,n=!0){this._targetEditor.revealRange(e,t,i,n)}revealRangeInCenter(e,t=0){this._targetEditor.revealRangeInCenter(e,t)}revealRangeInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealRangeInCenterIfOutsideViewport(e,t)}revealRangeNearTop(e,t=0){this._targetEditor.revealRangeNearTop(e,t)}revealRangeNearTopIfOutsideViewport(e,t=0){this._targetEditor.revealRangeNearTopIfOutsideViewport(e,t)}revealRangeAtTop(e,t=0){this._targetEditor.revealRangeAtTop(e,t)}getSupportedActions(){return this._targetEditor.getSupportedActions()}focus(){this._targetEditor.focus()}trigger(e,t,i){this._targetEditor.trigger(e,t,i)}createDecorationsCollection(e){return this._targetEditor.createDecorationsCollection(e)}changeDecorations(e){return this._targetEditor.changeDecorations(e)}};d0.idCounter=0;let iE=d0;var Fre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Bre=function(o,e){return function(t,i){e(t,i,o)}};let nE=class{get editorOptions(){return this._options}constructor(e,t){this._accessibilityService=t,this._diffEditorWidth=Ge(this,0),this._screenReaderMode=gt(this,this._accessibilityService.onDidChangeScreenReaderOptimized,()=>this._accessibilityService.isScreenReaderOptimized()),this.couldShowInlineViewBecauseOfSize=Ce(this,n=>this._options.read(n).renderSideBySide&&this._diffEditorWidth.read(n)<=this._options.read(n).renderSideBySideInlineBreakpoint),this.renderOverviewRuler=Ce(this,n=>this._options.read(n).renderOverviewRuler),this.renderSideBySide=Ce(this,n=>this.compactMode.read(n)&&this.shouldRenderInlineViewInSmartMode.read(n)?!1:this._options.read(n).renderSideBySide&&!(this._options.read(n).useInlineViewWhenSpaceIsLimited&&this.couldShowInlineViewBecauseOfSize.read(n)&&!this._screenReaderMode.read(n))),this.readOnly=Ce(this,n=>this._options.read(n).readOnly),this.shouldRenderOldRevertArrows=Ce(this,n=>!(!this._options.read(n).renderMarginRevertIcon||!this.renderSideBySide.read(n)||this.readOnly.read(n)||this.shouldRenderGutterMenu.read(n))),this.shouldRenderGutterMenu=Ce(this,n=>this._options.read(n).renderGutterMenu),this.renderIndicators=Ce(this,n=>this._options.read(n).renderIndicators),this.enableSplitViewResizing=Ce(this,n=>this._options.read(n).enableSplitViewResizing),this.splitViewDefaultRatio=Ce(this,n=>this._options.read(n).splitViewDefaultRatio),this.ignoreTrimWhitespace=Ce(this,n=>this._options.read(n).ignoreTrimWhitespace),this.maxComputationTimeMs=Ce(this,n=>this._options.read(n).maxComputationTime),this.showMoves=Ce(this,n=>this._options.read(n).experimental.showMoves&&this.renderSideBySide.read(n)),this.isInEmbeddedEditor=Ce(this,n=>this._options.read(n).isInEmbeddedEditor),this.diffWordWrap=Ce(this,n=>this._options.read(n).diffWordWrap),this.originalEditable=Ce(this,n=>this._options.read(n).originalEditable),this.diffCodeLens=Ce(this,n=>this._options.read(n).diffCodeLens),this.accessibilityVerbose=Ce(this,n=>this._options.read(n).accessibilityVerbose),this.diffAlgorithm=Ce(this,n=>this._options.read(n).diffAlgorithm),this.showEmptyDecorations=Ce(this,n=>this._options.read(n).experimental.showEmptyDecorations),this.onlyShowAccessibleDiffViewer=Ce(this,n=>this._options.read(n).onlyShowAccessibleDiffViewer),this.compactMode=Ce(this,n=>this._options.read(n).compactMode),this.trueInlineDiffRenderingEnabled=Ce(this,n=>this._options.read(n).experimental.useTrueInlineView),this.useTrueInlineDiffRendering=Ce(this,n=>!this.renderSideBySide.read(n)&&this.trueInlineDiffRenderingEnabled.read(n)),this.hideUnchangedRegions=Ce(this,n=>this._options.read(n).hideUnchangedRegions.enabled),this.hideUnchangedRegionsRevealLineCount=Ce(this,n=>this._options.read(n).hideUnchangedRegions.revealLineCount),this.hideUnchangedRegionsContextLineCount=Ce(this,n=>this._options.read(n).hideUnchangedRegions.contextLineCount),this.hideUnchangedRegionsMinimumLineCount=Ce(this,n=>this._options.read(n).hideUnchangedRegions.minimumLineCount),this._model=Ge(this,void 0),this.shouldRenderInlineViewInSmartMode=this._model.map(this,n=>qZ(this,s=>{const r=n?.diff.read(s);return r?Wre(r,this.trueInlineDiffRenderingEnabled.read(s)):void 0})).flatten().map(this,n=>!!n),this.inlineViewHideOriginalLineNumbers=this.compactMode;const i={...e,...y4(e,Vi)};this._options=Ge(this,i)}updateOptions(e){const t=y4(e,this._options.get()),i={...this._options.get(),...e,...t};this._options.set(i,void 0,{changedOptions:e})}setWidth(e){this._diffEditorWidth.set(e,void 0)}setModel(e){this._model.set(e,void 0)}};nE=Fre([Bre(1,ms)],nE);function Wre(o,e){return o.mappings.every(t=>Hre(t.lineRangeMapping)||Vre(t.lineRangeMapping)||e&&oM(t.lineRangeMapping))}function Hre(o){return o.original.length===0}function Vre(o){return o.modified.length===0}function y4(o,e){return{enableSplitViewResizing:he(o.enableSplitViewResizing,e.enableSplitViewResizing),splitViewDefaultRatio:k6(o.splitViewDefaultRatio,.5,.1,.9),renderSideBySide:he(o.renderSideBySide,e.renderSideBySide),renderMarginRevertIcon:he(o.renderMarginRevertIcon,e.renderMarginRevertIcon),maxComputationTime:dd(o.maxComputationTime,e.maxComputationTime,0,1073741824),maxFileSize:dd(o.maxFileSize,e.maxFileSize,0,1073741824),ignoreTrimWhitespace:he(o.ignoreTrimWhitespace,e.ignoreTrimWhitespace),renderIndicators:he(o.renderIndicators,e.renderIndicators),originalEditable:he(o.originalEditable,e.originalEditable),diffCodeLens:he(o.diffCodeLens,e.diffCodeLens),renderOverviewRuler:he(o.renderOverviewRuler,e.renderOverviewRuler),diffWordWrap:Ht(o.diffWordWrap,e.diffWordWrap,["off","on","inherit"]),diffAlgorithm:Ht(o.diffAlgorithm,e.diffAlgorithm,["legacy","advanced"],{smart:"legacy",experimental:"advanced"}),accessibilityVerbose:he(o.accessibilityVerbose,e.accessibilityVerbose),experimental:{showMoves:he(o.experimental?.showMoves,e.experimental.showMoves),showEmptyDecorations:he(o.experimental?.showEmptyDecorations,e.experimental.showEmptyDecorations),useTrueInlineView:he(o.experimental?.useTrueInlineView,e.experimental.useTrueInlineView)},hideUnchangedRegions:{enabled:he(o.hideUnchangedRegions?.enabled??o.experimental?.collapseUnchangedRegions,e.hideUnchangedRegions.enabled),contextLineCount:dd(o.hideUnchangedRegions?.contextLineCount,e.hideUnchangedRegions.contextLineCount,0,1073741824),minimumLineCount:dd(o.hideUnchangedRegions?.minimumLineCount,e.hideUnchangedRegions.minimumLineCount,0,1073741824),revealLineCount:dd(o.hideUnchangedRegions?.revealLineCount,e.hideUnchangedRegions.revealLineCount,0,1073741824)},isInEmbeddedEditor:he(o.isInEmbeddedEditor,e.isInEmbeddedEditor),onlyShowAccessibleDiffViewer:he(o.onlyShowAccessibleDiffViewer,e.onlyShowAccessibleDiffViewer),renderSideBySideInlineBreakpoint:dd(o.renderSideBySideInlineBreakpoint,e.renderSideBySideInlineBreakpoint,0,1073741824),useInlineViewWhenSpaceIsLimited:he(o.useInlineViewWhenSpaceIsLimited,e.useInlineViewWhenSpaceIsLimited),renderGutterMenu:he(o.renderGutterMenu,e.renderGutterMenu),compactMode:he(o.compactMode,e.compactMode)}}var zre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Lm=function(o,e){return function(t,i){e(t,i,o)}};let qv=class extends iE{get onDidContentSizeChange(){return this._editors.onDidContentSizeChange}constructor(e,t,i,n,s,r,a,l){super(),this._domElement=e,this._parentContextKeyService=n,this._parentInstantiationService=s,this._accessibilitySignalService=a,this._editorProgressService=l,this.elements=tt("div.monaco-diff-editor.side-by-side",{style:{position:"relative",height:"100%"}},[tt("div.editor.original@original",{style:{position:"absolute",height:"100%"}}),tt("div.editor.modified@modified",{style:{position:"absolute",height:"100%"}}),tt("div.accessibleDiffViewer@accessibleDiffViewer",{style:{position:"absolute",height:"100%"}})]),this._diffModelSrc=this._register(KC(this,void 0)),this._diffModel=Ce(this,v=>this._diffModelSrc.read(v)?.object),this.onDidChangeModel=J.fromObservableLight(this._diffModel),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._domElement)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new jg([De,this._contextKeyService]))),this._boundarySashes=Ge(this,void 0),this._accessibleDiffViewerShouldBeVisible=Ge(this,!1),this._accessibleDiffViewerVisible=Ce(this,v=>this._options.onlyShowAccessibleDiffViewer.read(v)?!0:this._accessibleDiffViewerShouldBeVisible.read(v)),this._movedBlocksLinesPart=Ge(this,void 0),this._layoutInfo=Ce(this,v=>{const y=this._rootSizeObserver.width.read(v),x=this._rootSizeObserver.height.read(v);this._rootSizeObserver.automaticLayout?this.elements.root.style.height="100%":this.elements.root.style.height=x+"px";const L=this._sash.read(v),E=this._gutter.read(v),N=E?.width.read(v)??0,H=this._overviewRulerPart.read(v)?.width??0;let F,W,j,B,G;if(!!L){const ae=L.sashLeft.read(v),de=this._movedBlocksLinesPart.read(v)?.width.read(v)??0;F=0,W=ae-N-de,G=ae-N,j=ae,B=y-j-H}else{G=0;const ae=this._options.inlineViewHideOriginalLineNumbers.read(v);F=N,ae?W=0:W=Math.max(5,this._editors.originalObs.layoutInfoDecorationsLeft.read(v)),j=N+W,B=y-j-H}return this.elements.original.style.left=F+"px",this.elements.original.style.width=W+"px",this._editors.original.layout({width:W,height:x},!0),E?.layout(G),this.elements.modified.style.left=j+"px",this.elements.modified.style.width=B+"px",this._editors.modified.layout({width:B,height:x},!0),{modifiedEditor:this._editors.modified.getLayoutInfo(),originalEditor:this._editors.original.getLayoutInfo()}}),this._diffValue=this._diffModel.map((v,y)=>v?.diff.read(y)),this.onDidUpdateDiff=J.fromObservableLight(this._diffValue),r.willCreateDiffEditor(),this._contextKeyService.createKey("isInDiffEditor",!0),this._domElement.appendChild(this.elements.root),this._register(_e(()=>this.elements.root.remove())),this._rootSizeObserver=this._register(new A8(this.elements.root,t.dimension)),this._rootSizeObserver.setAutomaticLayout(t.automaticLayout??!1),this._options=this._instantiationService.createInstance(nE,t),this._register(We(v=>{this._options.setWidth(this._rootSizeObserver.width.read(v))})),this._contextKeyService.createKey(K.isEmbeddedDiffEditor.key,!1),this._register(Pa(K.isEmbeddedDiffEditor,this._contextKeyService,v=>this._options.isInEmbeddedEditor.read(v))),this._register(Pa(K.comparingMovedCode,this._contextKeyService,v=>!!this._diffModel.read(v)?.movedTextToCompare.read(v))),this._register(Pa(K.diffEditorRenderSideBySideInlineBreakpointReached,this._contextKeyService,v=>this._options.couldShowInlineViewBecauseOfSize.read(v))),this._register(Pa(K.diffEditorInlineMode,this._contextKeyService,v=>!this._options.renderSideBySide.read(v))),this._register(Pa(K.hasChanges,this._contextKeyService,v=>(this._diffModel.read(v)?.diff.read(v)?.mappings.length??0)>0)),this._editors=this._register(this._instantiationService.createInstance(tE,this.elements.original,this.elements.modified,this._options,i,(v,y,x,L)=>this._createInnerEditor(v,y,x,L))),this._register(Pa(K.diffEditorOriginalWritable,this._contextKeyService,v=>this._options.originalEditable.read(v))),this._register(Pa(K.diffEditorModifiedWritable,this._contextKeyService,v=>!this._options.readOnly.read(v))),this._register(Pa(K.diffEditorOriginalUri,this._contextKeyService,v=>this._diffModel.read(v)?.model.original.uri.toString()??"")),this._register(Pa(K.diffEditorModifiedUri,this._contextKeyService,v=>this._diffModel.read(v)?.model.modified.uri.toString()??"")),this._overviewRulerPart=tr(this,v=>this._options.renderOverviewRuler.read(v)?this._instantiationService.createInstance(Lo(N_,v),this._editors,this.elements.root,this._diffModel,this._rootSizeObserver.width,this._rootSizeObserver.height,this._layoutInfo.map(y=>y.modifiedEditor)):void 0).recomputeInitiallyAndOnChange(this._store);const c={height:this._rootSizeObserver.height,width:this._rootSizeObserver.width.map((v,y)=>v-(this._overviewRulerPart.read(y)?.width??0))};this._sashLayout=new kre(this._options,c),this._sash=tr(this,v=>{const y=this._options.renderSideBySide.read(v);return this.elements.root.classList.toggle("side-by-side",y),y?new H8(this.elements.root,c,this._options.enableSplitViewResizing,this._boundarySashes,this._sashLayout.sashLeft,()=>this._sashLayout.resetSash()):void 0}).recomputeInitiallyAndOnChange(this._store);const d=tr(this,v=>this._instantiationService.createInstance(Lo(eE,v),this._editors,this._diffModel,this._options)).recomputeInitiallyAndOnChange(this._store);tr(this,v=>this._instantiationService.createInstance(Lo(xre,v),this._editors,this._diffModel,this._options,this)).recomputeInitiallyAndOnChange(this._store);const h=new Set,u=new Set;let f=!1;const g=tr(this,v=>this._instantiationService.createInstance(Lo(ZI,v),fe(this._domElement),this._editors,this._diffModel,this._options,this,()=>f||d.get().isUpdatingHiddenAreas,h,u)).recomputeInitiallyAndOnChange(this._store),p=Ce(this,v=>{const y=g.read(v).viewZones.read(v).orig,x=d.read(v).viewZones.read(v).origViewZones;return y.concat(x)}),_=Ce(this,v=>{const y=g.read(v).viewZones.read(v).mod,x=d.read(v).viewZones.read(v).modViewZones;return y.concat(x)});this._register(zv(this._editors.original,p,v=>{f=v},h));let b;this._register(zv(this._editors.modified,_,v=>{f=v,f?b=qh.capture(this._editors.modified):(b?.restore(this._editors.modified),b=void 0)},u)),this._accessibleDiffViewer=tr(this,v=>this._instantiationService.createInstance(Lo(qd,v),this.elements.accessibleDiffViewer,this._accessibleDiffViewerVisible,(y,x)=>this._accessibleDiffViewerShouldBeVisible.set(y,x),this._options.onlyShowAccessibleDiffViewer.map(y=>!y),this._rootSizeObserver.width,this._rootSizeObserver.height,this._diffModel.map((y,x)=>y?.diff.read(x)?.mappings.map(L=>L.lineRangeMapping)),new cre(this._editors))).recomputeInitiallyAndOnChange(this._store);const C=this._accessibleDiffViewerVisible.map(v=>v?"hidden":"visible");this._register(Vc(this.elements.modified,{visibility:C})),this._register(Vc(this.elements.original,{visibility:C})),this._createDiffEditorContributions(),r.addDiffEditor(this),this._gutter=tr(this,v=>this._options.shouldRenderGutterMenu.read(v)?this._instantiationService.createInstance(Lo(YI,v),this.elements.root,this._diffModel,this._editors,this._options,this._sashLayout,this._boundarySashes):void 0),this._register(X_(this._layoutInfo)),tr(this,v=>new(Lo(Qf,v))(this.elements.root,this._diffModel,this._layoutInfo.map(y=>y.originalEditor),this._layoutInfo.map(y=>y.modifiedEditor),this._editors)).recomputeInitiallyAndOnChange(this._store,v=>{this._movedBlocksLinesPart.set(v,void 0)}),this._register(J.runAndSubscribe(this._editors.modified.onDidChangeCursorPosition,v=>this._handleCursorPositionChange(v,!0))),this._register(J.runAndSubscribe(this._editors.original.onDidChangeCursorPosition,v=>this._handleCursorPositionChange(v,!1)));const w=this._diffModel.map(this,(v,y)=>{if(v)return v.diff.read(y)===void 0&&!v.isDiffUpToDate.read(y)});this._register(To((v,y)=>{if(w.read(v)===!0){const x=this._editorProgressService.show(!0,1e3);y.add(_e(()=>x.done()))}})),this._register(To((v,y)=>{y.add(new(Lo(Pre,v))(this._editors,this._diffModel,this._options,this))})),this._register(To((v,y)=>{const x=this._diffModel.read(v);if(x)for(const L of[x.model.original,x.model.modified])y.add(L.onWillDispose(E=>{Ze(new nt("TextModel got disposed before DiffEditorWidget model got reset")),this.setModel(null)}))})),this._register(We(v=>{this._options.setModel(this._diffModel.read(v))}))}_createInnerEditor(e,t,i,n){return e.createInstance(I_,t,i,n)}_createDiffEditorContributions(){const e=Af.getDiffEditorContributions();for(const t of e)try{this._register(this._instantiationService.createInstance(t.ctor,this))}catch(i){Ze(i)}}get _targetEditor(){return this._editors.modified}getEditorType(){return yy.IDiffEditor}layout(e){this._rootSizeObserver.observe(e)}hasTextFocus(){return this._editors.original.hasTextFocus()||this._editors.modified.hasTextFocus()}saveViewState(){const e=this._editors.original.saveViewState(),t=this._editors.modified.saveViewState();return{original:e,modified:t,modelState:this._diffModel.get()?.serializeState()}}restoreViewState(e){if(e&&e.original&&e.modified){const t=e;this._editors.original.restoreViewState(t.original),this._editors.modified.restoreViewState(t.modified),t.modelState&&this._diffModel.get()?.restoreSerializedState(t.modelState)}}handleInitialized(){this._editors.original.handleInitialized(),this._editors.modified.handleInitialized()}createViewModel(e){return this._instantiationService.createInstance(GI,e,this._options)}getModel(){return this._diffModel.get()?.model??null}setModel(e){const t=e?"model"in e?Uv.create(e).createNewRef(this):Uv.create(this.createViewModel(e),this):null;this.setDiffModel(t)}setDiffModel(e,t){const i=this._diffModel.get();!e&&i&&this._accessibleDiffViewer.get().close(),this._diffModel.get()!==e?.object&&c_(t,n=>{const s=e?.object;gt.batchEventsGlobally(n,()=>{this._editors.original.setModel(s?s.model.original:null),this._editors.modified.setModel(s?s.model.modified:null)});const r=this._diffModelSrc.get()?.createNewRef(this);this._diffModelSrc.set(e?.createNewRef(this),n),setTimeout(()=>{r?.dispose()},0)})}updateOptions(e){this._options.updateOptions(e)}getContainerDomNode(){return this._domElement}getOriginalEditor(){return this._editors.original}getModifiedEditor(){return this._editors.modified}getLineChanges(){const e=this._diffModel.get()?.diff.get();return e?Ure(e):null}revert(e){const t=this._diffModel.get();!t||!t.isDiffUpToDate.get()||this._editors.modified.executeEdits("diffEditor",[{range:e.modified.toExclusiveRange(),text:t.model.original.getValueInRange(e.original.toExclusiveRange())}])}revertRangeMappings(e){const t=this._diffModel.get();if(!t||!t.isDiffUpToDate.get())return;const i=e.map(n=>({range:n.modifiedRange,text:t.model.original.getValueInRange(n.originalRange)}));this._editors.modified.executeEdits("diffEditor",i)}_goTo(e){this._editors.modified.setPosition(new P(e.lineRangeMapping.modified.startLineNumber,1)),this._editors.modified.revealRangeInCenter(e.lineRangeMapping.modified.toExclusiveRange())}goToDiff(e){const t=this._diffModel.get()?.diff.get()?.mappings;if(!t||t.length===0)return;const i=this._editors.modified.getPosition().lineNumber;let n;e==="next"?n=t.find(s=>s.lineRangeMapping.modified.startLineNumber>i)??t[0]:n=xC(t,s=>s.lineRangeMapping.modified.startLineNumber{const t=e.diff.get()?.mappings;!t||t.length===0||this._goTo(t[0])})}accessibleDiffViewerNext(){this._accessibleDiffViewer.get().next()}accessibleDiffViewerPrev(){this._accessibleDiffViewer.get().prev()}async waitForDiff(){const e=this._diffModel.get();e&&await e.waitForDiff()}mapToOtherSide(){const e=this._editors.modified.hasWidgetFocus(),t=e?this._editors.modified:this._editors.original,i=e?this._editors.original:this._editors.modified;let n;const s=t.getSelection();if(s){const r=this._diffModel.get()?.diff.get()?.mappings.map(a=>e?a.lineRangeMapping.flip():a.lineRangeMapping);if(r){const a=n4(s.getStartPosition(),r),l=n4(s.getEndPosition(),r);n=I.plusRange(a,l)}}return{destination:i,destinationSelection:n}}switchSide(){const{destination:e,destinationSelection:t}=this.mapToOtherSide();e.focus(),t&&e.setSelection(t)}exitCompareMove(){const e=this._diffModel.get();e&&e.movedTextToCompare.set(void 0,void 0)}collapseAllUnchangedRegions(){const e=this._diffModel.get()?.unchangedRegions.get();e&&Xt(t=>{for(const i of e)i.collapseAll(t)})}showAllUnchangedRegions(){const e=this._diffModel.get()?.unchangedRegions.get();e&&Xt(t=>{for(const i of e)i.showAll(t)})}_handleCursorPositionChange(e,t){if(e?.reason===3){const i=this._diffModel.get()?.diff.get()?.mappings.find(n=>t?n.lineRangeMapping.modified.contains(e.position.lineNumber):n.lineRangeMapping.original.contains(e.position.lineNumber));i?.lineRangeMapping.modified.isEmpty?this._accessibilitySignalService.playSignal(rr.diffLineDeleted,{source:"diffEditor.cursorPositionChanged"}):i?.lineRangeMapping.original.isEmpty?this._accessibilitySignalService.playSignal(rr.diffLineInserted,{source:"diffEditor.cursorPositionChanged"}):i&&this._accessibilitySignalService.playSignal(rr.diffLineModified,{source:"diffEditor.cursorPositionChanged"})}}};qv=zre([Lm(3,De),Lm(4,ke),Lm(5,Pt),Lm(6,rb),Lm(7,G_)],qv);function Ure(o){return o.mappings.map(e=>{const t=e.lineRangeMapping;let i,n,s,r,a=t.innerChanges;return t.original.isEmpty?(i=t.original.startLineNumber-1,n=0,a=void 0):(i=t.original.startLineNumber,n=t.original.endLineNumberExclusive-1),t.modified.isEmpty?(s=t.modified.startLineNumber-1,r=0,a=void 0):(s=t.modified.startLineNumber,r=t.modified.endLineNumberExclusive-1),{originalStartLineNumber:i,originalEndLineNumber:n,modifiedStartLineNumber:s,modifiedEndLineNumber:r,charChanges:a?.map(l=>({originalStartLineNumber:l.originalRange.startLineNumber,originalStartColumn:l.originalRange.startColumn,originalEndLineNumber:l.originalRange.endLineNumber,originalEndColumn:l.originalRange.endColumn,modifiedStartLineNumber:l.modifiedRange.startLineNumber,modifiedStartColumn:l.modifiedRange.startColumn,modifiedEndLineNumber:l.modifiedRange.endLineNumber,modifiedEndColumn:l.modifiedRange.endColumn}))}})}var aM=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},wt=function(o,e){return function(t,i){e(t,i,o)}};let $re=0,S4=!1;function Kre(o){if(!o){if(S4)return;S4=!0}AG(o||_t.document.body)}let Gv=class extends I_{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f){const g={...t};g.ariaLabel=g.ariaLabel||Zk.editorViewAccessibleLabel,super(e,g,{},i,n,s,r,c,d,h,u,f),l instanceof xg?this._standaloneKeybindingService=l:this._standaloneKeybindingService=null,Kre(g.ariaContainerElement),XZ((p,_)=>i.createInstance(gg,p,_,{})),JZ(a)}addCommand(e,t,i){if(!this._standaloneKeybindingService)return console.warn("Cannot add command because the editor is configured with an unrecognized KeybindingService"),null;const n="DYNAMIC_"+ ++$re,s=re.deserialize(i);return this._standaloneKeybindingService.addDynamicKeybinding(n,e,t,s),n}createContextKey(e,t){return this._contextKeyService.createKey(e,t)}addAction(e){if(typeof e.id!="string"||typeof e.label!="string"||typeof e.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");if(!this._standaloneKeybindingService)return console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),z.None;const t=e.id,i=e.label,n=re.and(re.equals("editorId",this.getId()),re.deserialize(e.precondition)),s=e.keybindings,r=re.and(n,re.deserialize(e.keybindingContext)),a=e.contextMenuGroupId||null,l=e.contextMenuOrder||0,c=(f,...g)=>Promise.resolve(e.run(this,...g)),d=new X,h=this.getId()+":"+t;if(d.add(bt.registerCommand(h,c)),a){const f={command:{id:h,title:i},when:n,group:a,order:l};d.add(Eo.appendMenuItem($e.EditorContext,f))}if(Array.isArray(s))for(const f of s)d.add(this._standaloneKeybindingService.addDynamicKeybinding(h,f,c,r));const u=new N8(h,i,i,void 0,n,(...f)=>Promise.resolve(e.run(this,...f)),this._contextKeyService);return this._actions.set(t,u),d.add(_e(()=>{this._actions.delete(t)})),d}_triggerCommand(e,t){if(this._codeEditorService instanceof NC)try{this._codeEditorService.setActiveCodeEditor(this),super._triggerCommand(e,t)}finally{this._codeEditorService.setActiveCodeEditor(null)}else super._triggerCommand(e,t)}};Gv=aM([wt(2,ke),wt(3,Pt),wt(4,hi),wt(5,De),wt(6,au),wt(7,vt),wt(8,en),wt(9,mn),wt(10,ms),wt(11,Gn),wt(12,Se)],Gv);let sE=class extends Gv{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_){const b={...t};wv(h,b,!1);const C=c.registerEditorContainer(e);typeof b.theme=="string"&&c.setTheme(b.theme),typeof b.autoDetectHighContrast<"u"&&c.setAutoDetectHighContrast(!!b.autoDetectHighContrast);const w=b.model;delete b.model,super(e,b,i,n,s,r,a,l,c,d,u,p,_),this._configurationService=h,this._standaloneThemeService=c,this._register(C);let v;if(typeof w>"u"){const y=g.getLanguageIdByMimeType(b.language)||b.language||Bs;v=$8(f,g,b.value||"",y,void 0),this._ownsModel=!0}else v=w,this._ownsModel=!1;if(this._attachModel(v),v){const y={oldModelUrl:null,newModelUrl:v.uri};this._onDidChangeModel.fire(y)}}dispose(){super.dispose()}updateOptions(e){wv(this._configurationService,e,!1),typeof e.theme=="string"&&this._standaloneThemeService.setTheme(e.theme),typeof e.autoDetectHighContrast<"u"&&this._standaloneThemeService.setAutoDetectHighContrast(!!e.autoDetectHighContrast),super.updateOptions(e)}_postDetachModelCleanup(e){super._postDetachModelCleanup(e),e&&this._ownsModel&&(e.dispose(),this._ownsModel=!1)}};sE=aM([wt(2,ke),wt(3,Pt),wt(4,hi),wt(5,De),wt(6,au),wt(7,vt),wt(8,zo),wt(9,mn),wt(10,lt),wt(11,ms),wt(12,Fi),wt(13,qt),wt(14,Gn),wt(15,Se)],sE);let oE=class extends qv{constructor(e,t,i,n,s,r,a,l,c,d,h,u){const f={...t};wv(l,f,!0);const g=r.registerEditorContainer(e);typeof f.theme=="string"&&r.setTheme(f.theme),typeof f.autoDetectHighContrast<"u"&&r.setAutoDetectHighContrast(!!f.autoDetectHighContrast),super(e,f,{},n,i,s,u,d),this._configurationService=l,this._standaloneThemeService=r,this._register(g)}dispose(){super.dispose()}updateOptions(e){wv(this._configurationService,e,!0),typeof e.theme=="string"&&this._standaloneThemeService.setTheme(e.theme),typeof e.autoDetectHighContrast<"u"&&this._standaloneThemeService.setAutoDetectHighContrast(!!e.autoDetectHighContrast),super.updateOptions(e)}_createInnerEditor(e,t,i){return e.createInstance(Gv,t,i)}getOriginalEditor(){return super.getOriginalEditor()}getModifiedEditor(){return super.getModifiedEditor()}addCommand(e,t,i){return this.getModifiedEditor().addCommand(e,t,i)}createContextKey(e,t){return this.getModifiedEditor().createContextKey(e,t)}addAction(e){return this.getModifiedEditor().addAction(e)}};oE=aM([wt(2,ke),wt(3,De),wt(4,Pt),wt(5,zo),wt(6,mn),wt(7,lt),wt(8,Lr),wt(9,G_),wt(10,wy),wt(11,rb)],oE);function $8(o,e,t,i,n){if(t=t||"",!i){const s=t.indexOf(` +`);let r=t;return s!==-1&&(r=t.substring(0,s)),L4(o,t,e.createByFilepathOrFirstLine(n||null,r),n)}return L4(o,t,e.createById(i),n)}function L4(o,e,t,i){return o.createModel(e,t,i)}var jre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},x4=function(o,e){return function(t,i){e(t,i,o)}};class qre{constructor(e,t){this.viewModel=e,this.deltaScrollVertical=t}getId(){return this.viewModel}}let Zv=class extends z{constructor(e,t,i,n,s){super(),this._container=e,this._overflowWidgetsDomNode=t,this._workbenchUIElementFactory=i,this._instantiationService=n,this._viewModel=Ge(this,void 0),this._collapsed=Ce(this,l=>this._viewModel.read(l)?.collapsed.read(l)),this._editorContentHeight=Ge(this,500),this.contentHeight=Ce(this,l=>(this._collapsed.read(l)?0:this._editorContentHeight.read(l))+this._outerEditorHeight),this._modifiedContentWidth=Ge(this,0),this._modifiedWidth=Ge(this,0),this._originalContentWidth=Ge(this,0),this._originalWidth=Ge(this,0),this.maxScroll=Ce(this,l=>{const c=this._modifiedContentWidth.read(l)-this._modifiedWidth.read(l),d=this._originalContentWidth.read(l)-this._originalWidth.read(l);return c>d?{maxScroll:c,width:this._modifiedWidth.read(l)}:{maxScroll:d,width:this._originalWidth.read(l)}}),this._elements=tt("div.multiDiffEntry",[tt("div.header@header",[tt("div.header-content",[tt("div.collapse-button@collapseButton"),tt("div.file-path",[tt("div.title.modified.show-file-icons@primaryPath",[]),tt("div.status.deleted@status",["R"]),tt("div.title.original.show-file-icons@secondaryPath",[])]),tt("div.actions@actions")])]),tt("div.editorParent",[tt("div.editorContainer@editor")])]),this.editor=this._register(this._instantiationService.createInstance(qv,this._elements.editor,{overflowWidgetsDomNode:this._overflowWidgetsDomNode},{})),this.isModifedFocused=Dg(this.editor.getModifiedEditor()).isFocused,this.isOriginalFocused=Dg(this.editor.getOriginalEditor()).isFocused,this.isFocused=Ce(this,l=>this.isModifedFocused.read(l)||this.isOriginalFocused.read(l)),this._resourceLabel=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.primaryPath)):void 0,this._resourceLabel2=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.secondaryPath)):void 0,this._dataStore=this._register(new X),this._headerHeight=40,this._lastScrollTop=-1,this._isSettingScrollTop=!1;const r=new AD(this._elements.collapseButton,{});this._register(We(l=>{r.element.className="",r.icon=this._collapsed.read(l)?ie.chevronRight:ie.chevronDown})),this._register(r.onDidClick(()=>{this._viewModel.get()?.collapsed.set(!this._collapsed.get(),void 0)})),this._register(We(l=>{this._elements.editor.style.display=this._collapsed.read(l)?"none":"block"})),this._register(this.editor.getModifiedEditor().onDidLayoutChange(l=>{const c=this.editor.getModifiedEditor().getLayoutInfo().contentWidth;this._modifiedWidth.set(c,void 0)})),this._register(this.editor.getOriginalEditor().onDidLayoutChange(l=>{const c=this.editor.getOriginalEditor().getLayoutInfo().contentWidth;this._originalWidth.set(c,void 0)})),this._register(this.editor.onDidContentSizeChange(l=>{Mm(c=>{this._editorContentHeight.set(l.contentHeight,c),this._modifiedContentWidth.set(this.editor.getModifiedEditor().getContentWidth(),c),this._originalContentWidth.set(this.editor.getOriginalEditor().getContentWidth(),c)})})),this._register(this.editor.getOriginalEditor().onDidScrollChange(l=>{if(this._isSettingScrollTop||!l.scrollTopChanged||!this._data)return;const c=l.scrollTop-this._lastScrollTop;this._data.deltaScrollVertical(c)})),this._register(We(l=>{const c=this._viewModel.read(l)?.isActive.read(l);this._elements.root.classList.toggle("active",c)})),this._container.appendChild(this._elements.root),this._outerEditorHeight=this._headerHeight,this._contextKeyService=this._register(s.createScoped(this._elements.actions));const a=this._register(this._instantiationService.createChild(new jg([De,this._contextKeyService])));this._register(a.createInstance(Kv,this._elements.actions,$e.MultiDiffEditorFileToolbar,{actionRunner:this._register(new V8(()=>this._viewModel.get()?.modifiedUri)),menuOptions:{shouldForwardArgs:!0},toolbarOptions:{primaryGroup:l=>l.startsWith("navigation")},actionViewItemProvider:(l,c)=>H7(a,l,c)}))}setScrollLeft(e){this._modifiedContentWidth.get()-this._modifiedWidth.get()>this._originalContentWidth.get()-this._originalWidth.get()?this.editor.getModifiedEditor().setScrollLeft(e):this.editor.getOriginalEditor().setScrollLeft(e)}setData(e){this._data=e;function t(n){return{...n,scrollBeyondLastLine:!1,hideUnchangedRegions:{enabled:!0},scrollbar:{vertical:"hidden",horizontal:"hidden",handleMouseWheel:!1,useShadows:!1},renderOverviewRuler:!1,fixedOverflowWidgets:!0,overviewRulerBorder:!1}}if(!e){Mm(n=>{this._viewModel.set(void 0,n),this.editor.setDiffModel(null,n),this._dataStore.clear()});return}const i=e.viewModel.documentDiffItem;if(Mm(n=>{this._resourceLabel?.setUri(e.viewModel.modifiedUri??e.viewModel.originalUri,{strikethrough:e.viewModel.modifiedUri===void 0});let s=!1,r=!1,a=!1,l="";e.viewModel.modifiedUri&&e.viewModel.originalUri&&e.viewModel.modifiedUri.path!==e.viewModel.originalUri.path?(l="R",s=!0):e.viewModel.modifiedUri?e.viewModel.originalUri||(l="A",a=!0):(l="D",r=!0),this._elements.status.classList.toggle("renamed",s),this._elements.status.classList.toggle("deleted",r),this._elements.status.classList.toggle("added",a),this._elements.status.innerText=l,this._resourceLabel2?.setUri(s?e.viewModel.originalUri:void 0,{strikethrough:!0}),this._dataStore.clear(),this._viewModel.set(e.viewModel,n),this.editor.setDiffModel(e.viewModel.diffEditorViewModelRef,n),this.editor.updateOptions(t(i.options??{}))}),i.onOptionsDidChange&&this._dataStore.add(i.onOptionsDidChange(()=>{this.editor.updateOptions(t(i.options??{}))})),e.viewModel.isAlive.recomputeInitiallyAndOnChange(this._dataStore,n=>{n||this.setData(void 0)}),e.viewModel.documentDiffItem.contextKeys)for(const[n,s]of Object.entries(e.viewModel.documentDiffItem.contextKeys))this._contextKeyService.createKey(n,s)}render(e,t,i,n){this._elements.root.style.visibility="visible",this._elements.root.style.top=`${e.start}px`,this._elements.root.style.height=`${e.length}px`,this._elements.root.style.width=`${t}px`,this._elements.root.style.position="absolute";const s=e.length-this._headerHeight,r=Math.max(0,Math.min(n.start-e.start,s));this._elements.header.style.transform=`translateY(${r}px)`,Mm(a=>{this.editor.layout({width:t-16-2,height:e.length-this._outerEditorHeight})});try{this._isSettingScrollTop=!0,this._lastScrollTop=i,this.editor.getOriginalEditor().setScrollTop(i)}finally{this._isSettingScrollTop=!1}this._elements.header.classList.toggle("shadow",r>0||i>0),this._elements.header.classList.toggle("collapsed",r===s)}hide(){this._elements.root.style.top="-100000px",this._elements.root.style.visibility="hidden"}};Zv=jre([x4(3,ke),x4(4,De)],Zv);class Gre{constructor(e){this._create=e,this._unused=new Set,this._used=new Set,this._itemData=new Map}getUnusedObj(e){let t;if(this._unused.size===0)t=this._create(e),this._itemData.set(t,e);else{const i=[...this._unused.values()];t=i.find(n=>this._itemData.get(n).getId()===e.getId())??i[0],this._unused.delete(t),this._itemData.set(t,e),t.setData(e)}return this._used.add(t),{object:t,dispose:()=>{this._used.delete(t),this._unused.size>5?t.dispose():this._unused.add(t)}}}dispose(){for(const e of this._used)e.dispose();for(const e of this._unused)e.dispose();this._used.clear(),this._unused.clear()}}var Zre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},k4=function(o,e){return function(t,i){e(t,i,o)}};let rE=class extends z{constructor(e,t,i,n,s,r){super(),this._element=e,this._dimension=t,this._viewModel=i,this._workbenchUIElementFactory=n,this._parentContextKeyService=s,this._parentInstantiationService=r,this._scrollableElements=tt("div.scrollContent",[tt("div@content",{style:{overflow:"hidden"}}),tt("div.monaco-editor@overflowWidgetsDomNode",{})]),this._scrollable=this._register(new Vg({forceIntegerValues:!1,scheduleAtNextAnimationFrame:l=>fs(fe(this._element),l),smoothScrollDuration:100})),this._scrollableElement=this._register(new X0(this._scrollableElements.root,{vertical:1,horizontal:1,useShadows:!1},this._scrollable)),this._elements=tt("div.monaco-component.multiDiffEditor",{},[tt("div",{},[this._scrollableElement.getDomNode()]),tt("div.placeholder@placeholder",{},[tt("div",[m("noChangedFiles","No Changed Files")])])]),this._sizeObserver=this._register(new A8(this._element,void 0)),this._objectPool=this._register(new Gre(l=>{const c=this._instantiationService.createInstance(Zv,this._scrollableElements.content,this._scrollableElements.overflowWidgetsDomNode,this._workbenchUIElementFactory);return c.setData(l),c})),this.scrollTop=gt(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollTop),this.scrollLeft=gt(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollLeft),this._viewItemsInfo=cu(this,(l,c)=>{const d=this._viewModel.read(l);if(!d)return{items:[],getItem:g=>{throw new nt}};const h=d.items.read(l),u=new Map;return{items:h.map(g=>{const p=c.add(new Yre(g,this._objectPool,this.scrollLeft,b=>{this._scrollableElement.setScrollPosition({scrollTop:this._scrollableElement.getScrollPosition().scrollTop+b})})),_=this._lastDocStates?.[p.getKey()];return _&&Xt(b=>{p.setViewState(_,b)}),u.set(g,p),p}),getItem:g=>u.get(g)}}),this._viewItems=this._viewItemsInfo.map(this,l=>l.items),this._spaceBetweenPx=0,this._totalHeight=this._viewItems.map(this,(l,c)=>l.reduce((d,h)=>d+h.contentHeight.read(c)+this._spaceBetweenPx,0)),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._element)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new jg([De,this._contextKeyService]))),this._lastDocStates={},this._contextKeyService.createKey(K.inMultiDiffEditor.key,!0),this._register(To((l,c)=>{const d=this._viewModel.read(l);if(d&&d.contextKeys)for(const[h,u]of Object.entries(d.contextKeys)){const f=this._contextKeyService.createKey(h,void 0);f.set(u),c.add(_e(()=>f.reset()))}}));const a=this._parentContextKeyService.createKey(K.multiDiffEditorAllCollapsed.key,!1);this._register(We(l=>{const c=this._viewModel.read(l);if(c){const d=c.items.read(l).every(h=>h.collapsed.read(l));a.set(d)}})),this._register(We(l=>{const c=this._dimension.read(l);this._sizeObserver.observe(c)})),this._register(We(l=>{const c=this._viewItems.read(l);this._elements.placeholder.classList.toggle("visible",c.length===0)})),this._scrollableElements.content.style.position="relative",this._register(We(l=>{const c=this._sizeObserver.height.read(l);this._scrollableElements.root.style.height=`${c}px`;const d=this._totalHeight.read(l);this._scrollableElements.content.style.height=`${d}px`;const h=this._sizeObserver.width.read(l);let u=h;const f=this._viewItems.read(l),g=fT(f,rs(p=>p.maxScroll.read(l).maxScroll,ia));if(g){const p=g.maxScroll.read(l);u=h+p.maxScroll}this._scrollableElement.setScrollDimensions({width:h,height:c,scrollHeight:d,scrollWidth:u})})),e.replaceChildren(this._elements.root),this._register(_e(()=>{e.replaceChildren()})),this._register(this._register(We(l=>{Mm(c=>{this.render(l)})})))}render(e){const t=this.scrollTop.read(e);let i=0,n=0,s=0;const r=this._sizeObserver.height.read(e),a=Re.ofStartAndLength(t,r),l=this._sizeObserver.width.read(e);for(const c of this._viewItems.read(e)){const d=c.contentHeight.read(e),h=Math.min(d,r),u=Re.ofStartAndLength(n,h),f=Re.ofStartAndLength(s,d);if(f.isBefore(a))i-=d-h,c.hide();else if(f.isAfter(a))c.hide();else{const g=Math.max(0,Math.min(a.start-f.start,d-h));i-=g;const p=Re.ofStartAndLength(t+i,r);c.render(u,g,l,p)}n+=h+this._spaceBetweenPx,s+=d+this._spaceBetweenPx}this._scrollableElements.content.style.transform=`translateY(${-(t+i)}px)`}};rE=Zre([k4(4,De),k4(5,ke)],rE);class Yre extends z{constructor(e,t,i,n){super(),this.viewModel=e,this._objectPool=t,this._scrollLeft=i,this._deltaScrollVertical=n,this._templateRef=this._register(KC(this,void 0)),this.contentHeight=Ce(this,s=>this._templateRef.read(s)?.object.contentHeight?.read(s)??this.viewModel.lastTemplateData.read(s).contentHeight),this.maxScroll=Ce(this,s=>this._templateRef.read(s)?.object.maxScroll.read(s)??{maxScroll:0,scrollWidth:0}),this.template=Ce(this,s=>this._templateRef.read(s)?.object),this._isHidden=Ge(this,!1),this._isFocused=Ce(this,s=>this.template.read(s)?.isFocused.read(s)??!1),this.viewModel.setIsFocused(this._isFocused,void 0),this._register(We(s=>{const r=this._scrollLeft.read(s);this._templateRef.read(s)?.object.setScrollLeft(r)})),this._register(We(s=>{const r=this._templateRef.read(s);!r||!this._isHidden.read(s)||r.object.isFocused.read(s)||this._clear()}))}dispose(){this._clear(),super.dispose()}toString(){return`VirtualViewItem(${this.viewModel.documentDiffItem.modified?.uri.toString()})`}getKey(){return this.viewModel.getKey()}setViewState(e,t){this.viewModel.collapsed.set(e.collapsed,t),this._updateTemplateData(t);const i=this.viewModel.lastTemplateData.get(),n=e.selections?.map(Fe.liftSelection);this.viewModel.lastTemplateData.set({...i,selections:n},t);const s=this._templateRef.get();s&&n&&s.object.editor.setSelections(n)}_updateTemplateData(e){const t=this._templateRef.get();t&&this.viewModel.lastTemplateData.set({contentHeight:t.object.contentHeight.get(),selections:t.object.editor.getSelections()??void 0},e)}_clear(){const e=this._templateRef.get();e&&Xt(t=>{this._updateTemplateData(t),e.object.hide(),this._templateRef.set(void 0,t)})}hide(){this._isHidden.set(!0,void 0)}render(e,t,i,n){this._isHidden.set(!1,void 0);let s=this._templateRef.get();if(!s){s=this._objectPool.getUnusedObj(new qre(this.viewModel,this._deltaScrollVertical)),this._templateRef.set(s,void 0);const r=this.viewModel.lastTemplateData.get().selections;r&&s.object.editor.setSelections(r)}s.object.render(e,i,t,n)}}D("multiDiffEditor.headerBackground",{dark:"#262626",light:"tab.inactiveBackground",hcDark:"tab.inactiveBackground",hcLight:"tab.inactiveBackground"},m("multiDiffEditor.headerBackground","The background color of the diff editor's header"));D("multiDiffEditor.background",Oo,m("multiDiffEditor.background","The background color of the multi file diff editor"));D("multiDiffEditor.border",{dark:"sideBarSectionHeader.border",light:"#cccccc",hcDark:"sideBarSectionHeader.border",hcLight:"#cccccc"},m("multiDiffEditor.border","The border color of the multi file diff editor"));var Qre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Xre=function(o,e){return function(t,i){e(t,i,o)}};let aE=class extends z{constructor(e,t,i){super(),this._element=e,this._workbenchUIElementFactory=t,this._instantiationService=i,this._dimension=Ge(this,void 0),this._viewModel=Ge(this,void 0),this._widgetImpl=cu(this,(n,s)=>(Lo(Zv,n),s.add(this._instantiationService.createInstance(Lo(rE,n),this._element,this._dimension,this._viewModel,this._workbenchUIElementFactory)))),this._register(X_(this._widgetImpl))}};aE=Qre([Xre(2,ke)],aE);function Jre(o,e,t){return pe.initialize(t||{}).createInstance(sE,o,e)}function eae(o){return pe.get(Pt).onCodeEditorAdd(t=>{o(t)})}function tae(o){return pe.get(Pt).onDiffEditorAdd(t=>{o(t)})}function iae(){return pe.get(Pt).listCodeEditors()}function nae(){return pe.get(Pt).listDiffEditors()}function sae(o,e,t){return pe.initialize(t||{}).createInstance(oE,o,e)}function oae(o,e){const t=pe.initialize(e||{});return new aE(o,{},t)}function rae(o){if(typeof o.id!="string"||typeof o.run!="function")throw new Error("Invalid command descriptor, `id` and `run` are required properties!");return bt.registerCommand(o.id,o.run)}function aae(o){if(typeof o.id!="string"||typeof o.label!="string"||typeof o.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");const e=re.deserialize(o.precondition),t=(n,...s)=>co.runEditorCommand(n,s,e,(r,a,l)=>Promise.resolve(o.run(a,...l))),i=new X;if(i.add(bt.registerCommand(o.id,t)),o.contextMenuGroupId){const n={command:{id:o.id,title:o.label},when:e,group:o.contextMenuGroupId,order:o.contextMenuOrder||0};i.add(Eo.appendMenuItem($e.EditorContext,n))}if(Array.isArray(o.keybindings)){const n=pe.get(vt);if(!(n instanceof xg))console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService");else{const s=re.and(e,re.deserialize(o.keybindingContext));i.add(n.addDynamicKeybindings(o.keybindings.map(r=>({keybinding:r,command:o.id,when:s}))))}}return i}function lae(o){return K8([o])}function K8(o){const e=pe.get(vt);return e instanceof xg?e.addDynamicKeybindings(o.map(t=>({keybinding:t.keybinding,command:t.command,commandArgs:t.commandArgs,when:re.deserialize(t.when)}))):(console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),z.None)}function cae(o,e,t){const i=pe.get(qt),n=i.getLanguageIdByMimeType(e)||e;return $8(pe.get(Fi),i,o,n,t)}function dae(o,e){const t=pe.get(qt),i=t.getLanguageIdByMimeType(e)||e||Bs;o.setLanguage(t.createById(i))}function hae(o,e,t){o&&pe.get(xa).changeOne(e,o.uri,t)}function uae(o){pe.get(xa).changeAll(o,[])}function fae(o){return pe.get(xa).read(o)}function gae(o){return pe.get(xa).onMarkerChanged(o)}function mae(o){return pe.get(Fi).getModel(o)}function pae(){return pe.get(Fi).getModels()}function _ae(o){return pe.get(Fi).onModelAdded(o)}function bae(o){return pe.get(Fi).onModelRemoved(o)}function Cae(o){return pe.get(Fi).onModelLanguageChanged(t=>{o({model:t.model,oldLanguage:t.oldLanguageId})})}function vae(o){return Yte(pe.get(Fi),o)}function wae(o,e){const t=pe.get(qt),i=pe.get(zo);return O2.colorizeElement(i,t,o,e).then(()=>{i.registerEditorContainer(o)})}function yae(o,e,t){const i=pe.get(qt);return pe.get(zo).registerEditorContainer(_t.document.body),O2.colorize(i,o,e,t)}function Sae(o,e,t=4){return pe.get(zo).registerEditorContainer(_t.document.body),O2.colorizeModelLine(o,e,t)}function Lae(o){const e=si.get(o);return e||{getInitialState:()=>a_,tokenize:(t,i,n)=>_7(o,n)}}function xae(o,e){si.getOrCreate(e);const t=Lae(e),i=va(o),n=[];let s=t.getInitialState();for(let r=0,a=i.length;r{if(!i)return null;const s=t.options?.selection;let r;return s&&typeof s.endLineNumber=="number"&&typeof s.endColumn=="number"?r=s:s&&(r={lineNumber:s.startLineNumber,column:s.startColumn}),await o.openCodeEditor(i,t.resource,r)?i:null})}function Mae(){return{create:Jre,getEditors:iae,getDiffEditors:nae,onDidCreateEditor:eae,onDidCreateDiffEditor:tae,createDiffEditor:sae,addCommand:rae,addEditorAction:aae,addKeybindingRule:lae,addKeybindingRules:K8,createModel:cae,setModelLanguage:dae,setModelMarkers:hae,getModelMarkers:fae,removeAllMarkers:uae,onDidChangeMarkers:gae,getModels:pae,getModel:mae,onDidCreateModel:_ae,onWillDisposeModel:bae,onDidChangeModelLanguage:Cae,createWebWorker:vae,colorizeElement:wae,colorize:yae,colorizeModelLine:Sae,tokenize:xae,defineTheme:kae,setTheme:Dae,remeasureFonts:Iae,registerCommand:Eae,registerLinkOpener:Nae,registerEditorOpener:Tae,AccessibilitySupport:VL,ContentWidgetPositionPreference:qL,CursorChangeReason:GL,DefaultEndOfLine:ZL,EditorAutoIndentStrategy:QL,EditorOption:XL,EndOfLinePreference:JL,EndOfLineSequence:ex,MinimapPosition:hx,MinimapSectionHeaderStyle:ux,MouseTargetType:fx,OverlayWidgetPositionPreference:px,OverviewRulerLane:_x,GlyphMarginLane:tx,RenderLineNumbersType:vx,RenderMinimap:wx,ScrollbarVisibility:Sx,ScrollType:yx,TextEditorCursorBlinkingStyle:Ex,TextEditorCursorStyle:Nx,TrackedRangeStickiness:Tx,WrappingIndent:Mx,InjectedTextCursorStops:sx,PositionAffinity:Cx,ShowLightbulbIconMode:xx,ConfigurationChangedEvent:j5,BareFontInfo:Yd,FontInfo:qx,TextModelResolvedOptions:k1,FindMatch:Qp,ApplyUpdateResult:$m,EditorZoom:Xl,createMultiFileDiffEditor:oae,EditorType:yy,EditorOptions:Xh}}function Rae(o,e){if(!e||!Array.isArray(e))return!1;for(const t of e)if(!o(t))return!1;return!0}function l1(o,e){return typeof o=="boolean"?o:e}function D4(o,e){return typeof o=="string"?o:e}function Aae(o){const e={};for(const t of o)e[t]=!0;return e}function I4(o,e=!1){e&&(o=o.map(function(i){return i.toLowerCase()}));const t=Aae(o);return e?function(i){return t[i.toLowerCase()]!==void 0&&t.hasOwnProperty(i.toLowerCase())}:function(i){return t[i]!==void 0&&t.hasOwnProperty(i)}}function lE(o,e,t){e=e.replace(/@@/g,"");let i=0,n;do n=!1,e=e.replace(/@(\w+)/g,function(r,a){n=!0;let l="";if(typeof o[a]=="string")l=o[a];else if(o[a]&&o[a]instanceof RegExp)l=o[a].source;else throw o[a]===void 0?Et(o,"language definition does not contain attribute '"+a+"', used at: "+e):Et(o,"attribute reference '"+a+"' must be a string, used at: "+e);return kd(l)?"":"(?:"+l+")"}),i++;while(n&&i<5);e=e.replace(/\x01/g,"@");const s=(o.ignoreCase?"i":"")+(o.unicode?"u":"");if(t&&e.match(/\$[sS](\d\d?)/g)){let a=null,l=null;return c=>(l&&a===c||(a=c,l=new RegExp(mie(o,e,c),s)),l)}return new RegExp(e,s)}function Pae(o,e,t,i){if(i<0)return o;if(i=100){i=i-100;const n=t.split(".");if(n.unshift(t),i=0&&(i.tokenSubst=!0),typeof t.bracket=="string")if(t.bracket==="@open")i.bracket=1;else if(t.bracket==="@close")i.bracket=-1;else throw Et(o,"a 'bracket' attribute must be either '@open' or '@close', in rule: "+e);if(t.next){if(typeof t.next!="string")throw Et(o,"the next state must be a string value in rule: "+e);{let n=t.next;if(!/^(@pop|@push|@popall)$/.test(n)&&(n[0]==="@"&&(n=n.substr(1)),n.indexOf("$")<0&&!pie(o,tc(o,n,"",[],""))))throw Et(o,"the next state '"+t.next+"' is not defined in rule: "+e);i.next=n}}return typeof t.goBack=="number"&&(i.goBack=t.goBack),typeof t.switchTo=="string"&&(i.switchTo=t.switchTo),typeof t.log=="string"&&(i.log=t.log),typeof t.nextEmbedded=="string"&&(i.nextEmbedded=t.nextEmbedded,o.usesEmbedded=!0),i}}else if(Array.isArray(t)){const i=[];for(let n=0,s=t.length;n0&&i[0]==="^",this.name=this.name+": "+i,this.regex=lE(e,"^(?:"+(this.matchOnlyAtLineStart?i.substr(1):i)+")",!0)}setAction(e,t){this.action=cE(e,this.name,t)}resolveRegex(e){return this.regex instanceof RegExp?this.regex:this.regex(e)}}function j8(o,e){if(!e||typeof e!="object")throw new Error("Monarch: expecting a language definition object");const t={languageId:o,includeLF:l1(e.includeLF,!1),noThrow:!1,maxStack:100,start:typeof e.start=="string"?e.start:null,ignoreCase:l1(e.ignoreCase,!1),unicode:l1(e.unicode,!1),tokenPostfix:D4(e.tokenPostfix,"."+o),defaultToken:D4(e.defaultToken,"source"),usesEmbedded:!1,stateNames:{},tokenizer:{},brackets:[]},i=e;i.languageId=o,i.includeLF=t.includeLF,i.ignoreCase=t.ignoreCase,i.unicode=t.unicode,i.noThrow=t.noThrow,i.usesEmbedded=t.usesEmbedded,i.stateNames=e.tokenizer,i.defaultToken=t.defaultToken;function n(r,a,l){for(const c of l){let d=c.include;if(d){if(typeof d!="string")throw Et(t,"an 'include' attribute must be a string at: "+r);if(d[0]==="@"&&(d=d.substr(1)),!e.tokenizer[d])throw Et(t,"include target '"+d+"' is not defined at: "+r);n(r+"."+d,a,e.tokenizer[d])}else{const h=new Fae(r);if(Array.isArray(c)&&c.length>=1&&c.length<=3)if(h.setRegex(i,c[0]),c.length>=3)if(typeof c[1]=="string")h.setAction(i,{token:c[1],next:c[2]});else if(typeof c[1]=="object"){const u=c[1];u.next=c[2],h.setAction(i,u)}else throw Et(t,"a next state as the last element of a rule can only be given if the action is either an object or a string, at: "+r);else h.setAction(i,c[1]);else{if(!c.regex)throw Et(t,"a rule must either be an array, or an object with a 'regex' or 'include' field at: "+r);c.name&&typeof c.name=="string"&&(h.name=c.name),c.matchOnlyAtStart&&(h.matchOnlyAtLineStart=l1(c.matchOnlyAtLineStart,!1)),h.setRegex(i,c.regex),h.setAction(i,c.action)}a.push(h)}}}if(!e.tokenizer||typeof e.tokenizer!="object")throw Et(t,"a language definition must define the 'tokenizer' attribute as an object");t.tokenizer=[];for(const r in e.tokenizer)if(e.tokenizer.hasOwnProperty(r)){t.start||(t.start=r);const a=e.tokenizer[r];t.tokenizer[r]=new Array,n("tokenizer."+r,t.tokenizer[r],a)}if(t.usesEmbedded=i.usesEmbedded,e.brackets){if(!Array.isArray(e.brackets))throw Et(t,"the 'brackets' attribute must be defined as an array")}else e.brackets=[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}];const s=[];for(const r of e.brackets){let a=r;if(a&&Array.isArray(a)&&a.length===3&&(a={token:a[2],open:a[0],close:a[1]}),a.open===a.close)throw Et(t,"open and close brackets in a 'brackets' attribute must be different: "+a.open+` + hint: use the 'bracket' attribute if matching on equal brackets is required.`);if(typeof a.open=="string"&&typeof a.token=="string"&&typeof a.close=="string")s.push({token:a.token+t.tokenPostfix,open:yl(t,a.open),close:yl(t,a.close)});else throw Et(t,"every element in the 'brackets' array must be a '{open,close,token}' object or array")}return t.brackets=s,t.noThrow=!0,t}function Bae(o){lg.registerLanguage(o)}function Wae(){let o=[];return o=o.concat(lg.getLanguages()),o}function Hae(o){return pe.get(qt).languageIdCodec.encodeLanguageId(o)}function Vae(o,e){return pe.withServices(()=>{const i=pe.get(qt).onDidRequestRichLanguageFeatures(n=>{n===o&&(i.dispose(),e())});return i})}function zae(o,e){return pe.withServices(()=>{const i=pe.get(qt).onDidRequestBasicLanguageFeatures(n=>{n===o&&(i.dispose(),e())});return i})}function Uae(o,e){if(!pe.get(qt).isRegisteredLanguageId(o))throw new Error(`Cannot set configuration for unknown language ${o}`);return pe.get(Gn).register(o,e,100)}class $ae{constructor(e,t){this._languageId=e,this._actual=t}dispose(){}getInitialState(){return this._actual.getInitialState()}tokenize(e,t,i){if(typeof this._actual.tokenize=="function")return T_.adaptTokenize(this._languageId,this._actual,e,i);throw new Error("Not supported!")}tokenizeEncoded(e,t,i){const n=this._actual.tokenizeEncoded(e,i);return new x0(n.tokens,n.endState)}}class T_{constructor(e,t,i,n){this._languageId=e,this._actual=t,this._languageService=i,this._standaloneThemeService=n}dispose(){}getInitialState(){return this._actual.getInitialState()}static _toClassicTokens(e,t){const i=[];let n=0;for(let s=0,r=e.length;s0&&s[r-1]===u)continue;let f=h.startIndex;c===0?f=0:f{const i=await Promise.resolve(e.create());return i?Kae(i)?G8(o,i):new S_(pe.get(qt),pe.get(zo),o,j8(o,i),pe.get(lt)):null});return si.registerFactory(o,t)}function Gae(o,e){if(!pe.get(qt).isRegisteredLanguageId(o))throw new Error(`Cannot set tokens provider for unknown language ${o}`);return q8(e)?lM(o,{create:()=>e}):si.register(o,G8(o,e))}function Zae(o,e){const t=i=>new S_(pe.get(qt),pe.get(zo),o,j8(o,i),pe.get(lt));return q8(e)?lM(o,{create:()=>e}):si.register(o,t(e))}function Yae(o,e){return pe.get(Se).referenceProvider.register(o,e)}function Qae(o,e){return pe.get(Se).renameProvider.register(o,e)}function Xae(o,e){return pe.get(Se).newSymbolNamesProvider.register(o,e)}function Jae(o,e){return pe.get(Se).signatureHelpProvider.register(o,e)}function ele(o,e){return pe.get(Se).hoverProvider.register(o,{provideHover:async(i,n,s,r)=>{const a=i.getWordAtPosition(n);return Promise.resolve(e.provideHover(i,n,s,r)).then(l=>{if(l)return!l.range&&a&&(l.range=new I(n.lineNumber,a.startColumn,n.lineNumber,a.endColumn)),l.range||(l.range=new I(n.lineNumber,n.column,n.lineNumber,n.column)),l})}})}function tle(o,e){return pe.get(Se).documentSymbolProvider.register(o,e)}function ile(o,e){return pe.get(Se).documentHighlightProvider.register(o,e)}function nle(o,e){return pe.get(Se).linkedEditingRangeProvider.register(o,e)}function sle(o,e){return pe.get(Se).definitionProvider.register(o,e)}function ole(o,e){return pe.get(Se).implementationProvider.register(o,e)}function rle(o,e){return pe.get(Se).typeDefinitionProvider.register(o,e)}function ale(o,e){return pe.get(Se).codeLensProvider.register(o,e)}function lle(o,e,t){return pe.get(Se).codeActionProvider.register(o,{providedCodeActionKinds:t?.providedCodeActionKinds,documentation:t?.documentation,provideCodeActions:(n,s,r,a)=>{const c=pe.get(xa).read({resource:n.uri}).filter(d=>I.areIntersectingOrTouching(d,s));return e.provideCodeActions(n,s,{markers:c,only:r.only,trigger:r.trigger},a)},resolveCodeAction:e.resolveCodeAction})}function cle(o,e){return pe.get(Se).documentFormattingEditProvider.register(o,e)}function dle(o,e){return pe.get(Se).documentRangeFormattingEditProvider.register(o,e)}function hle(o,e){return pe.get(Se).onTypeFormattingEditProvider.register(o,e)}function ule(o,e){return pe.get(Se).linkProvider.register(o,e)}function fle(o,e){return pe.get(Se).completionProvider.register(o,e)}function gle(o,e){return pe.get(Se).colorProvider.register(o,e)}function mle(o,e){return pe.get(Se).foldingRangeProvider.register(o,e)}function ple(o,e){return pe.get(Se).declarationProvider.register(o,e)}function _le(o,e){return pe.get(Se).selectionRangeProvider.register(o,e)}function ble(o,e){return pe.get(Se).documentSemanticTokensProvider.register(o,e)}function Cle(o,e){return pe.get(Se).documentRangeSemanticTokensProvider.register(o,e)}function vle(o,e){return pe.get(Se).inlineCompletionsProvider.register(o,e)}function wle(o,e){return pe.get(Se).inlineEditProvider.register(o,e)}function yle(o,e){return pe.get(Se).inlayHintsProvider.register(o,e)}function Sle(){return{register:Bae,getLanguages:Wae,onLanguage:Vae,onLanguageEncountered:zae,getEncodedLanguageId:Hae,setLanguageConfiguration:Uae,setColorMap:qae,registerTokensProviderFactory:lM,setTokensProvider:Gae,setMonarchTokensProvider:Zae,registerReferenceProvider:Yae,registerRenameProvider:Qae,registerNewSymbolNameProvider:Xae,registerCompletionItemProvider:fle,registerSignatureHelpProvider:Jae,registerHoverProvider:ele,registerDocumentSymbolProvider:tle,registerDocumentHighlightProvider:ile,registerLinkedEditingRangeProvider:nle,registerDefinitionProvider:sle,registerImplementationProvider:ole,registerTypeDefinitionProvider:rle,registerCodeLensProvider:ale,registerCodeActionProvider:lle,registerDocumentFormattingEditProvider:cle,registerDocumentRangeFormattingEditProvider:dle,registerOnTypeFormattingEditProvider:hle,registerLinkProvider:ule,registerColorProvider:gle,registerFoldingRangeProvider:mle,registerDeclarationProvider:ple,registerSelectionRangeProvider:_le,registerDocumentSemanticTokensProvider:ble,registerDocumentRangeSemanticTokensProvider:Cle,registerInlineCompletionsProvider:vle,registerInlineEditProvider:wle,registerInlayHintsProvider:yle,DocumentHighlightKind:YL,CompletionItemKind:$L,CompletionItemTag:KL,CompletionItemInsertTextRule:UL,SymbolKind:Dx,SymbolTag:Ix,IndentAction:nx,CompletionTriggerKind:jL,SignatureHelpTriggerKind:kx,InlayHintKind:ox,InlineCompletionTriggerKind:rx,InlineEditTriggerKind:ax,CodeActionTriggerType:zL,NewSymbolNameTag:gx,NewSymbolNameTriggerKind:mx,PartialAcceptTriggerKind:bx,HoverVerbosityAction:ix,FoldingRangeKind:BL,SelectedSuggestionInfo:lF}}const cM=He("IEditorCancelService"),Z8=new le("cancellableOperation",!1,m("cancellableOperation","Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));Qe(cM,class{constructor(){this._tokens=new WeakMap}add(o,e){let t=this._tokens.get(o);t||(t=o.invokeWithinContext(n=>{const s=Z8.bindTo(n.get(De)),r=new yn;return{key:s,tokens:r}}),this._tokens.set(o,t));let i;return t.key.set(!0),i=t.tokens.push(e),()=>{i&&(i(),t.key.set(!t.tokens.isEmpty()),i=void 0)}}cancel(o){const e=this._tokens.get(o);if(!e)return;const t=e.tokens.pop();t&&(t.cancel(),e.key.set(!e.tokens.isEmpty()))}},1);class Lle extends In{constructor(e,t){super(t),this.editor=e,this._unregister=e.invokeWithinContext(i=>i.get(cM).add(e,this))}dispose(){this._unregister(),super.dispose()}}ge(new class extends co{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:Z8})}runEditorCommand(o,e){o.get(cM).cancel(e)}});let xle=class dE{constructor(e,t){if(this.flags=t,(this.flags&1)!==0){const i=e.getModel();this.modelVersionId=i?$p("{0}#{1}",i.uri.toString(),i.getVersionId()):null}else this.modelVersionId=null;(this.flags&4)!==0?this.position=e.getPosition():this.position=null,(this.flags&2)!==0?this.selection=e.getSelection():this.selection=null,(this.flags&8)!==0?(this.scrollLeft=e.getScrollLeft(),this.scrollTop=e.getScrollTop()):(this.scrollLeft=-1,this.scrollTop=-1)}_equals(e){if(!(e instanceof dE))return!1;const t=e;return!(this.modelVersionId!==t.modelVersionId||this.scrollLeft!==t.scrollLeft||this.scrollTop!==t.scrollTop||!this.position&&t.position||this.position&&!t.position||this.position&&t.position&&!this.position.equals(t.position)||!this.selection&&t.selection||this.selection&&!t.selection||this.selection&&t.selection&&!this.selection.equalsRange(t.selection))}validate(e){return this._equals(new dE(e,this.flags))}};class kle extends Lle{constructor(e,t,i,n){super(e,n),this._listener=new X,t&4&&this._listener.add(e.onDidChangeCursorPosition(s=>{(!i||!I.containsPosition(i,s.position))&&this.cancel()})),t&2&&this._listener.add(e.onDidChangeCursorSelection(s=>{(!i||!I.containsRange(i,s.selection))&&this.cancel()})),t&8&&this._listener.add(e.onDidScrollChange(s=>this.cancel())),t&1&&(this._listener.add(e.onDidChangeModel(s=>this.cancel())),this._listener.add(e.onDidChangeModelContent(s=>this.cancel())))}dispose(){this._listener.dispose(),super.dispose()}}class Dle extends In{constructor(e,t){super(t),this._listener=e.onDidChangeContent(()=>this.cancel())}dispose(){this._listener.dispose(),super.dispose()}}function Y8(o){return o&&typeof o.getEditorType=="function"?o.getEditorType()===yy.ICodeEditor:!1}class E4{constructor(e){this.value=e,this._lower=e.toLowerCase()}static toKey(e){return typeof e=="string"?e.toLowerCase():e._lower}}class Ile{constructor(e){if(this._set=new Set,e)for(const t of e)this.add(t)}add(e){this._set.add(E4.toKey(e))}has(e){return this._set.has(E4.toKey(e))}}function Ele(o,e,t){const i=[],n=new Ile,s=o.ordered(t);for(const a of s)i.push(a),a.extensionId&&n.add(a.extensionId);const r=e.ordered(t);for(const a of r){if(a.extensionId){if(n.has(a.extensionId))continue;n.add(a.extensionId)}i.push({displayName:a.displayName,extensionId:a.extensionId,provideDocumentFormattingEdits(l,c,d){return a.provideDocumentRangeFormattingEdits(l,l.getFullModelRange(),c,d)}})}return i}const Fp=class Fp{static setFormatterSelector(e){return{dispose:Fp._selectors.unshift(e)}}static async select(e,t,i,n){if(e.length===0)return;const s=st.first(Fp._selectors);if(s)return await s(e,t,i,n)}};Fp._selectors=new yn;let hE=Fp;async function Nle(o,e,t,i,n,s){const r=e.documentRangeFormattingEditProvider.ordered(t);for(const a of r){const l=await Promise.resolve(a.provideDocumentRangeFormattingEdits(t,i,n,s)).catch($n);if(Ps(l))return await o.computeMoreMinimalEdits(t.uri,l)}}async function Tle(o,e,t,i,n){const s=Ele(e.documentFormattingEditProvider,e.documentRangeFormattingEditProvider,t);for(const r of s){const a=await Promise.resolve(r.provideDocumentFormattingEdits(t,i,n)).catch($n);if(Ps(a))return await o.computeMoreMinimalEdits(t.uri,a)}}function Mle(o,e,t,i,n,s,r){const a=e.onTypeFormattingEditProvider.ordered(t);return a.length===0||a[0].autoFormatTriggerCharacters.indexOf(n)<0?Promise.resolve(void 0):Promise.resolve(a[0].provideOnTypeFormattingEdits(t,i,n,s,r)).catch($n).then(l=>o.computeMoreMinimalEdits(t.uri,l))}bt.registerCommand("_executeFormatRangeProvider",async function(o,...e){const[t,i,n]=e;ai(ve.isUri(t)),ai(I.isIRange(i));const s=o.get(fo),r=o.get(Zc),a=o.get(Se),l=await s.createModelReference(t);try{return Nle(r,a,l.object.textEditorModel,I.lift(i),n,ut.None)}finally{l.dispose()}});bt.registerCommand("_executeFormatDocumentProvider",async function(o,...e){const[t,i]=e;ai(ve.isUri(t));const n=o.get(fo),s=o.get(Zc),r=o.get(Se),a=await n.createModelReference(t);try{return Tle(s,r,a.object.textEditorModel,i,ut.None)}finally{a.dispose()}});bt.registerCommand("_executeFormatOnTypeProvider",async function(o,...e){const[t,i,n,s]=e;ai(ve.isUri(t)),ai(P.isIPosition(i)),ai(typeof n=="string");const r=o.get(fo),a=o.get(Zc),l=o.get(Se),c=await r.createModelReference(t);try{return Mle(a,l,c.object.textEditorModel,P.lift(i),n,s,ut.None)}finally{c.dispose()}});Xh.wrappingIndent.defaultValue=0;Xh.glyphMargin.defaultValue=!1;Xh.autoIndent.defaultValue=3;Xh.overviewRulerLanes.defaultValue=2;hE.setFormatterSelector((o,e,t)=>Promise.resolve(o[0]));const An=cF();An.editor=Mae();An.languages=Sle();An.CancellationTokenSource;An.Emitter;An.KeyCode;An.KeyMod;An.Position;const kge=An.Range;An.Selection;An.SelectionDirection;const Dge=An.MarkerSeverity;An.MarkerTag;An.Uri;An.Token;const Ige=An.editor,Ege=An.languages,Rle=globalThis.MonacoEnvironment;(Rle?.globalAPI||typeof define=="function"&&define.amd)&&(globalThis.monaco=An);typeof globalThis.require<"u"&&typeof globalThis.require.config=="function"&&globalThis.require.config({ignoreDuplicateModules:["vscode-languageserver-types","vscode-languageserver-types/main","vscode-languageserver-textdocument","vscode-languageserver-textdocument/main","vscode-nls","vscode-nls/vscode-nls","jsonc-parser","jsonc-parser/main","vscode-uri","vscode-uri/index","vs/basic-languages/typescript/typescript"]});const Q8="editor.action.showHover",Ale="editor.action.showDefinitionPreviewHover",Ple="editor.action.scrollUpHover",Ole="editor.action.scrollDownHover",Fle="editor.action.scrollLeftHover",Ble="editor.action.scrollRightHover",Wle="editor.action.pageUpHover",Hle="editor.action.pageDownHover",Vle="editor.action.goToTopHover",zle="editor.action.goToBottomHover",Ey="editor.action.increaseHoverVerbosityLevel",Ule=m({key:"increaseHoverVerbosityLevel",comment:["Label for action that will increase the hover verbosity level."]},"Increase Hover Verbosity Level"),Ny="editor.action.decreaseHoverVerbosityLevel",$le=m({key:"decreaseHoverVerbosityLevel",comment:["Label for action that will decrease the hover verbosity level."]},"Decrease Hover Verbosity Level");function uE(o,e){return!!o[e]}class uL{constructor(e,t){this.target=e.target,this.isLeftClick=e.event.leftButton,this.isMiddleClick=e.event.middleButton,this.isRightClick=e.event.rightButton,this.hasTriggerModifier=uE(e.event,t.triggerModifier),this.hasSideBySideModifier=uE(e.event,t.triggerSideBySideModifier),this.isNoneOrSingleMouseDown=e.event.detail<=1}}class N4{constructor(e,t){this.keyCodeIsTriggerKey=e.keyCode===t.triggerKey,this.keyCodeIsSideBySideKey=e.keyCode===t.triggerSideBySideKey,this.hasTriggerModifier=uE(e,t.triggerModifier)}}class c1{constructor(e,t,i,n){this.triggerKey=e,this.triggerModifier=t,this.triggerSideBySideKey=i,this.triggerSideBySideModifier=n}equals(e){return this.triggerKey===e.triggerKey&&this.triggerModifier===e.triggerModifier&&this.triggerSideBySideKey===e.triggerSideBySideKey&&this.triggerSideBySideModifier===e.triggerSideBySideModifier}}function T4(o){return o==="altKey"?Ue?new c1(57,"metaKey",6,"altKey"):new c1(5,"ctrlKey",6,"altKey"):Ue?new c1(6,"altKey",57,"metaKey"):new c1(6,"altKey",5,"ctrlKey")}class X8 extends z{constructor(e,t){super(),this._onMouseMoveOrRelevantKeyDown=this._register(new A),this.onMouseMoveOrRelevantKeyDown=this._onMouseMoveOrRelevantKeyDown.event,this._onExecute=this._register(new A),this.onExecute=this._onExecute.event,this._onCancel=this._register(new A),this.onCancel=this._onCancel.event,this._editor=e,this._extractLineNumberFromMouseEvent=t?.extractLineNumberFromMouseEvent??(i=>i.target.position?i.target.position.lineNumber:0),this._opts=T4(this._editor.getOption(78)),this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._register(this._editor.onDidChangeConfiguration(i=>{if(i.hasChanged(78)){const n=T4(this._editor.getOption(78));if(this._opts.equals(n))return;this._opts=n,this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._onCancel.fire()}})),this._register(this._editor.onMouseMove(i=>this._onEditorMouseMove(new uL(i,this._opts)))),this._register(this._editor.onMouseDown(i=>this._onEditorMouseDown(new uL(i,this._opts)))),this._register(this._editor.onMouseUp(i=>this._onEditorMouseUp(new uL(i,this._opts)))),this._register(this._editor.onKeyDown(i=>this._onEditorKeyDown(new N4(i,this._opts)))),this._register(this._editor.onKeyUp(i=>this._onEditorKeyUp(new N4(i,this._opts)))),this._register(this._editor.onMouseDrag(()=>this._resetHandler())),this._register(this._editor.onDidChangeCursorSelection(i=>this._onDidChangeCursorSelection(i))),this._register(this._editor.onDidChangeModel(i=>this._resetHandler())),this._register(this._editor.onDidChangeModelContent(()=>this._resetHandler())),this._register(this._editor.onDidScrollChange(i=>{(i.scrollTopChanged||i.scrollLeftChanged)&&this._resetHandler()}))}_onDidChangeCursorSelection(e){e.selection&&e.selection.startColumn!==e.selection.endColumn&&this._resetHandler()}_onEditorMouseMove(e){this._lastMouseMoveEvent=e,this._onMouseMoveOrRelevantKeyDown.fire([e,null])}_onEditorMouseDown(e){this._hasTriggerKeyOnMouseDown=e.hasTriggerModifier,this._lineNumberOnMouseDown=this._extractLineNumberFromMouseEvent(e)}_onEditorMouseUp(e){const t=this._extractLineNumberFromMouseEvent(e);this._hasTriggerKeyOnMouseDown&&this._lineNumberOnMouseDown&&this._lineNumberOnMouseDown===t&&this._onExecute.fire(e)}_onEditorKeyDown(e){this._lastMouseMoveEvent&&(e.keyCodeIsTriggerKey||e.keyCodeIsSideBySideKey&&e.hasTriggerModifier)?this._onMouseMoveOrRelevantKeyDown.fire([this._lastMouseMoveEvent,e]):e.hasTriggerModifier&&this._onCancel.fire()}_onEditorKeyUp(e){e.keyCodeIsTriggerKey&&this._onCancel.fire()}_resetHandler(){this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._onCancel.fire()}}var Kle=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Oa=function(o,e){return function(t,i){e(t,i,o)}};let Gh=class extends I_{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f){super(e,{...n.getRawOptions(),overflowWidgetsDomNode:n.getOverflowWidgetsDomNode()},i,s,r,a,l,c,d,h,u,f),this._parentEditor=n,this._overwriteOptions=t,super.updateOptions(this._overwriteOptions),this._register(n.onDidChangeConfiguration(g=>this._onParentConfigurationChanged(g)))}getParentEditor(){return this._parentEditor}_onParentConfigurationChanged(e){super.updateOptions(this._parentEditor.getRawOptions()),super.updateOptions(this._overwriteOptions)}updateOptions(e){S0(this._overwriteOptions,e,!0),super.updateOptions(this._overwriteOptions)}};Gh=Kle([Oa(4,ke),Oa(5,Pt),Oa(6,hi),Oa(7,De),Oa(8,en),Oa(9,mn),Oa(10,ms),Oa(11,Gn),Oa(12,Se)],Gh);const M4=new q(new qe(0,122,204)),jle={showArrow:!0,showFrame:!0,className:"",frameColor:M4,arrowColor:M4,keepEditorSelection:!1},qle="vs.editor.contrib.zoneWidget";class Gle{constructor(e,t,i,n,s,r,a,l){this.id="",this.domNode=e,this.afterLineNumber=t,this.afterColumn=i,this.heightInLines=n,this.showInHiddenAreas=a,this.ordinal=l,this._onDomNodeTop=s,this._onComputedHeight=r}onDomNodeTop(e){this._onDomNodeTop(e)}onComputedHeight(e){this._onComputedHeight(e)}}class Zle{constructor(e,t){this._id=e,this._domNode=t}getId(){return this._id}getDomNode(){return this._domNode}getPosition(){return null}}const h0=class h0{constructor(e){this._editor=e,this._ruleName=h0._IdGenerator.nextId(),this._decorations=this._editor.createDecorationsCollection(),this._color=null,this._height=-1}dispose(){this.hide(),jx(this._ruleName)}set color(e){this._color!==e&&(this._color=e,this._updateStyle())}set height(e){this._height!==e&&(this._height=e,this._updateStyle())}_updateStyle(){jx(this._ruleName),bC(`.monaco-editor ${this._ruleName}`,`border-style: solid; border-color: transparent; border-bottom-color: ${this._color}; border-width: ${this._height}px; bottom: -${this._height}px !important; margin-left: -${this._height}px; `)}show(e){e.column===1&&(e={lineNumber:e.lineNumber,column:2}),this._decorations.set([{range:I.fromPositions(e),options:{description:"zone-widget-arrow",className:this._ruleName,stickiness:1}}])}hide(){this._decorations.clear()}};h0._IdGenerator=new HT(".arrow-decoration-");let fE=h0;class Yle{constructor(e,t={}){this._arrow=null,this._overlayWidget=null,this._resizeSash=null,this._viewZone=null,this._disposables=new X,this.container=null,this._isShowing=!1,this.editor=e,this._positionMarkerId=this.editor.createDecorationsCollection(),this.options=Ya(t),S0(this.options,jle,!1),this.domNode=document.createElement("div"),this.options.isAccessible||(this.domNode.setAttribute("aria-hidden","true"),this.domNode.setAttribute("role","presentation")),this._disposables.add(this.editor.onDidLayoutChange(i=>{const n=this._getWidth(i);this.domNode.style.width=n+"px",this.domNode.style.left=this._getLeft(i)+"px",this._onWidth(n)}))}dispose(){this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._viewZone&&this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id),this._viewZone=null}),this._positionMarkerId.clear(),this._disposables.dispose()}create(){this.domNode.classList.add("zone-widget"),this.options.className&&this.domNode.classList.add(this.options.className),this.container=document.createElement("div"),this.container.classList.add("zone-widget-container"),this.domNode.appendChild(this.container),this.options.showArrow&&(this._arrow=new fE(this.editor),this._disposables.add(this._arrow)),this._fillContainer(this.container),this._initSash(),this._applyStyles()}style(e){e.frameColor&&(this.options.frameColor=e.frameColor),e.arrowColor&&(this.options.arrowColor=e.arrowColor),this._applyStyles()}_applyStyles(){if(this.container&&this.options.frameColor){const e=this.options.frameColor.toString();this.container.style.borderTopColor=e,this.container.style.borderBottomColor=e}if(this._arrow&&this.options.arrowColor){const e=this.options.arrowColor.toString();this._arrow.color=e}}_getWidth(e){return e.width-e.minimap.minimapWidth-e.verticalScrollbarWidth}_getLeft(e){return e.minimap.minimapWidth>0&&e.minimap.minimapLeft===0?e.minimap.minimapWidth:0}_onViewZoneTop(e){this.domNode.style.top=e+"px"}_onViewZoneHeight(e){if(this.domNode.style.height=`${e}px`,this.container){const t=e-this._decoratingElementsHeight();this.container.style.height=`${t}px`;const i=this.editor.getLayoutInfo();this._doLayout(t,this._getWidth(i))}this._resizeSash?.layout()}get position(){const e=this._positionMarkerId.getRange(0);if(e)return e.getStartPosition()}show(e,t){const i=I.isIRange(e)?I.lift(e):I.fromPositions(e);this._isShowing=!0,this._showImpl(i,t),this._isShowing=!1,this._positionMarkerId.set([{range:i,options:kt.EMPTY}])}hide(){this._viewZone&&(this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id)}),this._viewZone=null),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._arrow?.hide(),this._positionMarkerId.clear()}_decoratingElementsHeight(){const e=this.editor.getOption(67);let t=0;if(this.options.showArrow){const i=Math.round(e/3);t+=2*i}if(this.options.showFrame){const i=Math.round(e/9);t+=2*i}return t}_showImpl(e,t){const i=e.getStartPosition(),n=this.editor.getLayoutInfo(),s=this._getWidth(n);this.domNode.style.width=`${s}px`,this.domNode.style.left=this._getLeft(n)+"px";const r=document.createElement("div");r.style.overflow="hidden";const a=this.editor.getOption(67);if(!this.options.allowUnlimitedHeight){const u=Math.max(12,this.editor.getLayoutInfo().height/a*.8);t=Math.min(t,u)}let l=0,c=0;if(this._arrow&&this.options.showArrow&&(l=Math.round(a/3),this._arrow.height=l,this._arrow.show(i)),this.options.showFrame&&(c=Math.round(a/9)),this.editor.changeViewZones(u=>{this._viewZone&&u.removeZone(this._viewZone.id),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this.domNode.style.top="-1000px",this._viewZone=new Gle(r,i.lineNumber,i.column,t,f=>this._onViewZoneTop(f),f=>this._onViewZoneHeight(f),this.options.showInHiddenAreas,this.options.ordinal),this._viewZone.id=u.addZone(this._viewZone),this._overlayWidget=new Zle(qle+this._viewZone.id,this.domNode),this.editor.addOverlayWidget(this._overlayWidget)}),this.container&&this.options.showFrame){const u=this.options.frameWidth?this.options.frameWidth:c;this.container.style.borderTopWidth=u+"px",this.container.style.borderBottomWidth=u+"px"}const d=t*a-this._decoratingElementsHeight();this.container&&(this.container.style.top=l+"px",this.container.style.height=d+"px",this.container.style.overflow="hidden"),this._doLayout(d,s),this.options.keepEditorSelection||this.editor.setSelection(e);const h=this.editor.getModel();if(h){const u=h.validateRange(new I(e.startLineNumber,1,e.endLineNumber+1,1));this.revealRange(u,u.startLineNumber===h.getLineCount())}}revealRange(e,t){t?this.editor.revealLineNearTop(e.endLineNumber,0):this.editor.revealRange(e,0)}setCssClass(e,t){this.container&&(t&&this.container.classList.remove(t),this.container.classList.add(e))}_onWidth(e){}_doLayout(e,t){}_relayout(e){this._viewZone&&this._viewZone.heightInLines!==e&&this.editor.changeViewZones(t=>{this._viewZone&&(this._viewZone.heightInLines=e,t.layoutZone(this._viewZone.id))})}_initSash(){if(this._resizeSash)return;this._resizeSash=this._disposables.add(new an(this.domNode,this,{orientation:1})),this.options.isResizeable||(this._resizeSash.state=0);let e;this._disposables.add(this._resizeSash.onDidStart(t=>{this._viewZone&&(e={startY:t.startY,heightInLines:this._viewZone.heightInLines})})),this._disposables.add(this._resizeSash.onDidEnd(()=>{e=void 0})),this._disposables.add(this._resizeSash.onDidChange(t=>{if(e){const i=(t.currentY-e.startY)/this.editor.getOption(67),n=i<0?Math.ceil(i):Math.floor(i),s=e.heightInLines+n;s>5&&s<35&&this._relayout(s)}}))}getHorizontalSashLeft(){return 0}getHorizontalSashTop(){return(this.domNode.style.height===null?0:parseInt(this.domNode.style.height))-this._decoratingElementsHeight()/2}getHorizontalSashWidth(){const e=this.editor.getLayoutInfo();return e.width-e.minimap.minimapWidth}}var J8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},eB=function(o,e){return function(t,i){e(t,i,o)}};const tB=He("IPeekViewService");Qe(tB,class{constructor(){this._widgets=new Map}addExclusiveWidget(o,e){const t=this._widgets.get(o);t&&(t.listener.dispose(),t.widget.dispose());const i=()=>{const n=this._widgets.get(o);n&&n.widget===e&&(n.listener.dispose(),this._widgets.delete(o))};this._widgets.set(o,{widget:e,listener:e.onDidClose(i)})}},1);var qn;(function(o){o.inPeekEditor=new le("inReferenceSearchEditor",!0,m("inReferenceSearchEditor","Whether the current code editor is embedded inside peek")),o.notInPeekEditor=o.inPeekEditor.toNegated()})(qn||(qn={}));var eg;let Yv=(eg=class{constructor(e,t){e instanceof Gh&&qn.inPeekEditor.bindTo(t)}dispose(){}},eg.ID="editor.contrib.referenceController",eg);Yv=J8([eB(1,De)],Yv);Ho(Yv.ID,Yv,0);function Qle(o){const e=o.get(Pt).getFocusedCodeEditor();return e instanceof Gh?e.getParentEditor():e}const Xle={headerBackgroundColor:q.white,primaryHeadingColor:q.fromHex("#333333"),secondaryHeadingColor:q.fromHex("#6c6c6cb3")};let Qv=class extends Yle{constructor(e,t,i){super(e,t),this.instantiationService=i,this._onDidClose=new A,this.onDidClose=this._onDidClose.event,S0(this.options,Xle,!1)}dispose(){this.disposed||(this.disposed=!0,super.dispose(),this._onDidClose.fire(this))}style(e){const t=this.options;e.headerBackgroundColor&&(t.headerBackgroundColor=e.headerBackgroundColor),e.primaryHeadingColor&&(t.primaryHeadingColor=e.primaryHeadingColor),e.secondaryHeadingColor&&(t.secondaryHeadingColor=e.secondaryHeadingColor),super.style(e)}_applyStyles(){super._applyStyles();const e=this.options;this._headElement&&e.headerBackgroundColor&&(this._headElement.style.backgroundColor=e.headerBackgroundColor.toString()),this._primaryHeading&&e.primaryHeadingColor&&(this._primaryHeading.style.color=e.primaryHeadingColor.toString()),this._secondaryHeading&&e.secondaryHeadingColor&&(this._secondaryHeading.style.color=e.secondaryHeadingColor.toString()),this._bodyElement&&e.frameColor&&(this._bodyElement.style.borderColor=e.frameColor.toString())}_fillContainer(e){this.setCssClass("peekview-widget"),this._headElement=ce(".head"),this._bodyElement=ce(".body"),this._fillHead(this._headElement),this._fillBody(this._bodyElement),e.appendChild(this._headElement),e.appendChild(this._bodyElement)}_fillHead(e,t){this._titleElement=ce(".peekview-title"),this.options.supportOnTitleClick&&(this._titleElement.classList.add("clickable"),jt(this._titleElement,"click",s=>this._onTitleClick(s))),Z(this._headElement,this._titleElement),this._fillTitleIcon(this._titleElement),this._primaryHeading=ce("span.filename"),this._secondaryHeading=ce("span.dirname"),this._metaHeading=ce("span.meta"),Z(this._titleElement,this._primaryHeading,this._secondaryHeading,this._metaHeading);const i=ce(".peekview-actions");Z(this._headElement,i);const n=this._getActionBarOptions();this._actionbarWidget=new oo(i,n),this._disposables.add(this._actionbarWidget),t||this._actionbarWidget.push(new Fs("peekview.close",m("label.close","Close"),Ee.asClassName(ie.close),!0,()=>(this.dispose(),Promise.resolve())),{label:!1,icon:!0})}_fillTitleIcon(e){}_getActionBarOptions(){return{actionViewItemProvider:H7.bind(void 0,this.instantiationService),orientation:0}}_onTitleClick(e){}setTitle(e,t){this._primaryHeading&&this._secondaryHeading&&(this._primaryHeading.innerText=e,this._primaryHeading.setAttribute("title",e),t?this._secondaryHeading.innerText=t:xn(this._secondaryHeading))}setMetaTitle(e){this._metaHeading&&(e?(this._metaHeading.innerText=e,ns(this._metaHeading)):Cn(this._metaHeading))}_doLayout(e,t){if(!this._isShowing&&e<0){this.dispose();return}const i=Math.ceil(this.editor.getOption(67)*1.2),n=Math.round(e-(i+2));this._doLayoutHead(i,t),this._doLayoutBody(n,t)}_doLayoutHead(e,t){this._headElement&&(this._headElement.style.height=`${e}px`,this._headElement.style.lineHeight=this._headElement.style.height)}_doLayoutBody(e,t){this._bodyElement&&(this._bodyElement.style.height=`${e}px`)}};Qv=J8([eB(2,ke)],Qv);const Jle=D("peekViewTitle.background",{dark:"#252526",light:"#F3F3F3",hcDark:q.black,hcLight:q.white},m("peekViewTitleBackground","Background color of the peek view title area.")),iB=D("peekViewTitleLabel.foreground",{dark:q.white,light:q.black,hcDark:q.white,hcLight:Sa},m("peekViewTitleForeground","Color of the peek view title.")),nB=D("peekViewTitleDescription.foreground",{dark:"#ccccccb3",light:"#616161",hcDark:"#FFFFFF99",hcLight:"#292929"},m("peekViewTitleInfoForeground","Color of the peek view title info.")),ece=D("peekView.border",{dark:ma,light:ma,hcDark:Ye,hcLight:Ye},m("peekViewBorder","Color of the peek view borders and arrow.")),tce=D("peekViewResult.background",{dark:"#252526",light:"#F3F3F3",hcDark:q.black,hcLight:q.white},m("peekViewResultsBackground","Background color of the peek view result list."));D("peekViewResult.lineForeground",{dark:"#bbbbbb",light:"#646465",hcDark:q.white,hcLight:Sa},m("peekViewResultsMatchForeground","Foreground color for line nodes in the peek view result list."));D("peekViewResult.fileForeground",{dark:q.white,light:"#1E1E1E",hcDark:q.white,hcLight:Sa},m("peekViewResultsFileForeground","Foreground color for file nodes in the peek view result list."));D("peekViewResult.selectionBackground",{dark:"#3399ff33",light:"#3399ff33",hcDark:null,hcLight:null},m("peekViewResultsSelectionBackground","Background color of the selected entry in the peek view result list."));D("peekViewResult.selectionForeground",{dark:q.white,light:"#6C6C6C",hcDark:q.white,hcLight:Sa},m("peekViewResultsSelectionForeground","Foreground color of the selected entry in the peek view result list."));const sB=D("peekViewEditor.background",{dark:"#001F33",light:"#F2F8FC",hcDark:q.black,hcLight:q.white},m("peekViewEditorBackground","Background color of the peek view editor."));D("peekViewEditorGutter.background",sB,m("peekViewEditorGutterBackground","Background color of the gutter in the peek view editor."));D("peekViewEditorStickyScroll.background",sB,m("peekViewEditorStickScrollBackground","Background color of sticky scroll in the peek view editor."));D("peekViewResult.matchHighlightBackground",{dark:"#ea5c004d",light:"#ea5c004d",hcDark:null,hcLight:null},m("peekViewResultsMatchHighlight","Match highlight color in the peek view result list."));D("peekViewEditor.matchHighlightBackground",{dark:"#ff8f0099",light:"#f5d802de",hcDark:null,hcLight:null},m("peekViewEditorMatchHighlight","Match highlight color in the peek view editor."));D("peekViewEditor.matchHighlightBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("peekViewEditorMatchHighlightBorder","Match highlight border in the peek view editor."));class zc{constructor(e,t,i,n){this.isProviderFirst=e,this.parent=t,this.link=i,this._rangeCallback=n,this.id=Pk.nextId()}get uri(){return this.link.uri}get range(){return this._range??this.link.targetSelectionRange??this.link.range}set range(e){this._range=e,this._rangeCallback(this)}get ariaMessage(){const e=this.parent.getPreview(this)?.preview(this.range);return e?m({key:"aria.oneReference.preview",comment:["Placeholders are: 0: filename, 1:line number, 2: column number, 3: preview snippet of source code"]},"{0} in {1} on line {2} at column {3}",e.value,Fo(this.uri),this.range.startLineNumber,this.range.startColumn):m("aria.oneReference","in {0} on line {1} at column {2}",Fo(this.uri),this.range.startLineNumber,this.range.startColumn)}}class ice{constructor(e){this._modelReference=e}dispose(){this._modelReference.dispose()}preview(e,t=8){const i=this._modelReference.object.textEditorModel;if(!i)return;const{startLineNumber:n,startColumn:s,endLineNumber:r,endColumn:a}=e,l=i.getWordUntilPosition({lineNumber:n,column:s-t}),c=new I(n,l.startColumn,n,s),d=new I(r,a,r,1073741824),h=i.getValueInRange(c).replace(/^\s+/,""),u=i.getValueInRange(e),f=i.getValueInRange(d).replace(/\s+$/,"");return{value:h+u+f,highlight:{start:h.length,end:h.length+u.length}}}}class M_{constructor(e,t){this.parent=e,this.uri=t,this.children=[],this._previews=new cs}dispose(){xt(this._previews.values()),this._previews.clear()}getPreview(e){return this._previews.get(e.uri)}get ariaMessage(){const e=this.children.length;return e===1?m("aria.fileReferences.1","1 symbol in {0}, full path {1}",Fo(this.uri),this.uri.fsPath):m("aria.fileReferences.N","{0} symbols in {1}, full path {2}",e,Fo(this.uri),this.uri.fsPath)}async resolve(e){if(this._previews.size!==0)return this;for(const t of this.children)if(!this._previews.has(t.uri))try{const i=await e.createModelReference(t.uri);this._previews.set(t.uri,new ice(i))}catch(i){Ze(i)}return this}}class ds{constructor(e,t){this.groups=[],this.references=[],this._onDidChangeReferenceRange=new A,this.onDidChangeReferenceRange=this._onDidChangeReferenceRange.event,this._links=e,this._title=t;const[i]=e;e.sort(ds._compareReferences);let n;for(const s of e)if((!n||!Tt.isEqual(n.uri,s.uri,!0))&&(n=new M_(this,s.uri),this.groups.push(n)),n.children.length===0||ds._compareReferences(s,n.children[n.children.length-1])!==0){const r=new zc(i===s,n,s,a=>this._onDidChangeReferenceRange.fire(a));this.references.push(r),n.children.push(r)}}dispose(){xt(this.groups),this._onDidChangeReferenceRange.dispose(),this.groups.length=0}clone(){return new ds(this._links,this._title)}get title(){return this._title}get isEmpty(){return this.groups.length===0}get ariaMessage(){return this.isEmpty?m("aria.result.0","No results found"):this.references.length===1?m("aria.result.1","Found 1 symbol in {0}",this.references[0].uri.fsPath):this.groups.length===1?m("aria.result.n1","Found {0} symbols in {1}",this.references.length,this.groups[0].uri.fsPath):m("aria.result.nm","Found {0} symbols in {1} files",this.references.length,this.groups.length)}nextOrPreviousReference(e,t){const{parent:i}=e;let n=i.children.indexOf(e);const s=i.children.length,r=i.parent.groups.length;return r===1||t&&n+10?(t?n=(n+1)%s:n=(n+s-1)%s,i.children[n]):(n=i.parent.groups.indexOf(i),t?(n=(n+1)%r,i.parent.groups[n].children[0]):(n=(n+r-1)%r,i.parent.groups[n].children[i.parent.groups[n].children.length-1]))}nearestReference(e,t){const i=this.references.map((n,s)=>({idx:s,prefixLen:Th(n.uri.toString(),e.toString()),offsetDist:Math.abs(n.range.startLineNumber-t.lineNumber)*100+Math.abs(n.range.startColumn-t.column)})).sort((n,s)=>n.prefixLen>s.prefixLen?-1:n.prefixLens.offsetDist?1:0)[0];if(i)return this.references[i.idx]}referenceAt(e,t){for(const i of this.references)if(i.uri.toString()===e.toString()&&I.containsPosition(i.range,t))return i}firstReference(){for(const e of this.references)if(e.isProviderFirst)return e;return this.references[0]}static _compareReferences(e,t){return Tt.compare(e.uri,t.uri)||I.compareRangesUsingStarts(e.range,t.range)}}var Ty=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},My=function(o,e){return function(t,i){e(t,i,o)}},gE;let mE=class{constructor(e){this._resolverService=e}hasChildren(e){return e instanceof ds||e instanceof M_}getChildren(e){if(e instanceof ds)return e.groups;if(e instanceof M_)return e.resolve(this._resolverService).then(t=>t.children);throw new Error("bad tree")}};mE=Ty([My(0,fo)],mE);class nce{getHeight(){return 23}getTemplateId(e){return e instanceof M_?Xv.id:Jv.id}}let pE=class{constructor(e){this._keybindingService=e}getKeyboardNavigationLabel(e){if(e instanceof zc){const t=e.parent.getPreview(e)?.preview(e.range);if(t)return t.value}return Fo(e.uri)}};pE=Ty([My(0,vt)],pE);class sce{getId(e){return e instanceof zc?e.id:e.uri}}let _E=class extends z{constructor(e,t){super(),this._labelService=t;const i=document.createElement("div");i.classList.add("reference-file"),this.file=this._register(new gv(i,{supportHighlights:!0})),this.badge=new PD(Z(i,ce(".count")),{},B7),e.appendChild(i)}set(e,t){const i=ny(e.uri);this.file.setLabel(this._labelService.getUriBasenameLabel(e.uri),this._labelService.getUriLabel(i,{relative:!0}),{title:this._labelService.getUriLabel(e.uri),matches:t});const n=e.children.length;this.badge.setCount(n),n>1?this.badge.setTitleFormat(m("referencesCount","{0} references",n)):this.badge.setTitleFormat(m("referenceCount","{0} reference",n))}};_E=Ty([My(1,Cg)],_E);var fh;let Xv=(fh=class{constructor(e){this._instantiationService=e,this.templateId=gE.id}renderTemplate(e){return this._instantiationService.createInstance(_E,e)}renderElement(e,t,i){i.set(e.element,iy(e.filterData))}disposeTemplate(e){e.dispose()}},gE=fh,fh.id="FileReferencesRenderer",fh);Xv=gE=Ty([My(0,ke)],Xv);class oce extends z{constructor(e){super(),this.label=this._register(new _c(e))}set(e,t){const i=e.parent.getPreview(e)?.preview(e.range);if(!i||!i.value)this.label.set(`${Fo(e.uri)}:${e.range.startLineNumber+1}:${e.range.startColumn+1}`);else{const{value:n,highlight:s}=i;t&&!oa.isDefault(t)?(this.label.element.classList.toggle("referenceMatch",!1),this.label.set(n,iy(t))):(this.label.element.classList.toggle("referenceMatch",!0),this.label.set(n,[s]))}}}const u0=class u0{constructor(){this.templateId=u0.id}renderTemplate(e){return new oce(e)}renderElement(e,t,i){i.set(e.element,e.filterData)}disposeTemplate(e){e.dispose()}};u0.id="OneReferenceRenderer";let Jv=u0;class rce{getWidgetAriaLabel(){return m("treeAriaLabel","References")}getAriaLabel(e){return e.ariaMessage}}var ace=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ou=function(o,e){return function(t,i){e(t,i,o)}};const f0=class f0{constructor(e,t){this._editor=e,this._model=t,this._decorations=new Map,this._decorationIgnoreSet=new Set,this._callOnDispose=new X,this._callOnModelChange=new X,this._callOnDispose.add(this._editor.onDidChangeModel(()=>this._onModelChanged())),this._onModelChanged()}dispose(){this._callOnModelChange.dispose(),this._callOnDispose.dispose(),this.removeDecorations()}_onModelChanged(){this._callOnModelChange.clear();const e=this._editor.getModel();if(e){for(const t of this._model.references)if(t.uri.toString()===e.uri.toString()){this._addDecorations(t.parent);return}}}_addDecorations(e){if(!this._editor.hasModel())return;this._callOnModelChange.add(this._editor.getModel().onDidChangeDecorations(()=>this._onDecorationChanged()));const t=[],i=[];for(let n=0,s=e.children.length;n{const s=n.deltaDecorations([],t);for(let r=0;r{s.equals(9)&&(this._keybindingService.dispatchEvent(s,s.target),s.stopPropagation())},!0)),this._tree=this._instantiationService.createInstance(cce,"ReferencesWidget",this._treeContainer,new nce,[this._instantiationService.createInstance(Xv),this._instantiationService.createInstance(Jv)],this._instantiationService.createInstance(mE),i),this._splitView.addView({onDidChange:J.None,element:this._previewContainer,minimumSize:200,maximumSize:Number.MAX_VALUE,layout:s=>{this._preview.layout({height:this._dim.height,width:s})}},av.Distribute),this._splitView.addView({onDidChange:J.None,element:this._treeContainer,minimumSize:100,maximumSize:Number.MAX_VALUE,layout:s=>{this._treeContainer.style.height=`${this._dim.height}px`,this._treeContainer.style.width=`${s}px`,this._tree.layout(this._dim.height,s)}},av.Distribute),this._disposables.add(this._splitView.onDidSashChange(()=>{this._dim.width&&(this.layoutData.ratio=this._splitView.getViewSize(0)/this._dim.width)},void 0));const n=(s,r)=>{s instanceof zc&&(r==="show"&&this._revealReference(s,!1),this._onDidSelectReference.fire({element:s,kind:r,source:"tree"}))};this._disposables.add(this._tree.onDidOpen(s=>{s.sideBySide?n(s.element,"side"):s.editorOptions.pinned?n(s.element,"goto"):n(s.element,"show")})),Cn(this._treeContainer)}_onWidth(e){this._dim&&this._doLayoutBody(this._dim.height,e)}_doLayoutBody(e,t){super._doLayoutBody(e,t),this._dim=new rt(t,e),this.layoutData.heightInLines=this._viewZone?this._viewZone.heightInLines:this.layoutData.heightInLines,this._splitView.layout(t),this._splitView.resizeView(0,t*this.layoutData.ratio)}setSelection(e){return this._revealReference(e,!0).then(()=>{this._model&&(this._tree.setSelection([e]),this._tree.setFocus([e]))})}setModel(e){return this._disposeOnNewModel.clear(),this._model=e,this._model?this._onNewModel():Promise.resolve()}_onNewModel(){return this._model?this._model.isEmpty?(this.setTitle(""),this._messageContainer.innerText=m("noResults","No results"),ns(this._messageContainer),Promise.resolve(void 0)):(Cn(this._messageContainer),this._decorationsManager=new bE(this._preview,this._model),this._disposeOnNewModel.add(this._decorationsManager),this._disposeOnNewModel.add(this._model.onDidChangeReferenceRange(e=>this._tree.rerender(e))),this._disposeOnNewModel.add(this._preview.onMouseDown(e=>{const{event:t,target:i}=e;if(t.detail!==2)return;const n=this._getFocusedReference();n&&this._onDidSelectReference.fire({element:{uri:n.uri,range:i.range},kind:t.ctrlKey||t.metaKey||t.altKey?"side":"open",source:"editor"})})),this.container.classList.add("results-loaded"),ns(this._treeContainer),ns(this._previewContainer),this._splitView.layout(this._dim.width),this.focusOnReferenceTree(),this._tree.setInput(this._model.groups.length===1?this._model.groups[0]:this._model)):Promise.resolve(void 0)}_getFocusedReference(){const[e]=this._tree.getFocus();if(e instanceof zc)return e;if(e instanceof M_&&e.children.length>0)return e.children[0]}async revealReference(e){await this._revealReference(e,!1),this._onDidSelectReference.fire({element:e,kind:"goto",source:"tree"})}async _revealReference(e,t){if(this._revealedReference===e)return;this._revealedReference=e,e.uri.scheme!==Te.inMemory?this.setTitle(Zq(e.uri),this._uriLabel.getUriLabel(ny(e.uri))):this.setTitle(m("peekView.alternateTitle","References"));const i=this._textModelResolverService.createModelReference(e.uri);this._tree.getInput()===e.parent?this._tree.reveal(e):(t&&this._tree.reveal(e.parent),await this._tree.expand(e.parent),this._tree.reveal(e));const n=await i;if(!this._model){n.dispose();return}xt(this._previewModelReference);const s=n.object;if(s){const r=this._preview.getModel()===s.textEditorModel?0:1,a=I.lift(e.range).collapseToStart();this._previewModelReference=n,this._preview.setModel(s.textEditorModel),this._preview.setSelection(a),this._preview.revealRangeInCenter(a,r)}else this._preview.setModel(this._previewNotAvailableMessage),n.dispose()}};CE=ace([Ou(3,en),Ou(4,fo),Ou(5,ke),Ou(6,tB),Ou(7,Cg),Ou(8,vt)],CE);var dce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Fu=function(o,e){return function(t,i){e(t,i,o)}},G1;const _u=new le("referenceSearchVisible",!1,m("referenceSearchVisible","Whether reference peek is visible, like 'Peek References' or 'Peek Definition'"));var gh;let R_=(gh=class{static get(e){return e.getContribution(G1.ID)}constructor(e,t,i,n,s,r,a,l){this._defaultTreeKeyboardSupport=e,this._editor=t,this._editorService=n,this._notificationService=s,this._instantiationService=r,this._storageService=a,this._configurationService=l,this._disposables=new X,this._requestIdPool=0,this._ignoreModelChangeEvent=!1,this._referenceSearchVisible=_u.bindTo(i)}dispose(){this._referenceSearchVisible.reset(),this._disposables.dispose(),this._widget?.dispose(),this._model?.dispose(),this._widget=void 0,this._model=void 0}toggleWidget(e,t,i){let n;if(this._widget&&(n=this._widget.position),this.closeWidget(),n&&e.containsPosition(n))return;this._peekMode=i,this._referenceSearchVisible.set(!0),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>{this.closeWidget()})),this._disposables.add(this._editor.onDidChangeModel(()=>{this._ignoreModelChangeEvent||this.closeWidget()}));const s="peekViewLayout",r=lce.fromJSON(this._storageService.get(s,0,"{}"));this._widget=this._instantiationService.createInstance(CE,this._editor,this._defaultTreeKeyboardSupport,r),this._widget.setTitle(m("labelLoading","Loading...")),this._widget.show(e),this._disposables.add(this._widget.onDidClose(()=>{t.cancel(),this._widget?(this._storageService.store(s,JSON.stringify(this._widget.layoutData),0,1),this._widget.isClosing||this.closeWidget(),this._widget=void 0):this.closeWidget()})),this._disposables.add(this._widget.onDidSelectReference(l=>{const{element:c,kind:d}=l;if(c)switch(d){case"open":(l.source!=="editor"||!this._configurationService.getValue("editor.stablePeek"))&&this.openReference(c,!1,!1);break;case"side":this.openReference(c,!0,!1);break;case"goto":i?this._gotoReference(c,!0):this.openReference(c,!1,!0);break}}));const a=++this._requestIdPool;t.then(l=>{if(a!==this._requestIdPool||!this._widget){l.dispose();return}return this._model?.dispose(),this._model=l,this._widget.setModel(this._model).then(()=>{if(this._widget&&this._model&&this._editor.hasModel()){this._model.isEmpty?this._widget.setMetaTitle(""):this._widget.setMetaTitle(m("metaTitle.N","{0} ({1})",this._model.title,this._model.references.length));const c=this._editor.getModel().uri,d=new P(e.startLineNumber,e.startColumn),h=this._model.nearestReference(c,d);if(h)return this._widget.setSelection(h).then(()=>{this._widget&&this._editor.getOption(87)==="editor"&&this._widget.focusOnPreviewEditor()})}})},l=>{this._notificationService.error(l)})}changeFocusBetweenPreviewAndReferences(){this._widget&&(this._widget.isPreviewEditorFocused()?this._widget.focusOnReferenceTree():this._widget.focusOnPreviewEditor())}async goToNextOrPreviousReference(e){if(!this._editor.hasModel()||!this._model||!this._widget)return;const t=this._widget.position;if(!t)return;const i=this._model.nearestReference(this._editor.getModel().uri,t);if(!i)return;const n=this._model.nextOrPreviousReference(i,e),s=this._editor.hasTextFocus(),r=this._widget.isPreviewEditorFocused();await this._widget.setSelection(n),await this._gotoReference(n,!1),s?this._editor.focus():this._widget&&r&&this._widget.focusOnPreviewEditor()}async revealReference(e){!this._editor.hasModel()||!this._model||!this._widget||await this._widget.revealReference(e)}closeWidget(e=!0){this._widget?.dispose(),this._model?.dispose(),this._referenceSearchVisible.reset(),this._disposables.clear(),this._widget=void 0,this._model=void 0,e&&this._editor.focus(),this._requestIdPool+=1}_gotoReference(e,t){this._widget?.hide(),this._ignoreModelChangeEvent=!0;const i=I.lift(e.range).collapseToStart();return this._editorService.openCodeEditor({resource:e.uri,options:{selection:i,selectionSource:"code.jump",pinned:t}},this._editor).then(n=>{if(this._ignoreModelChangeEvent=!1,!n||!this._widget){this.closeWidget();return}if(this._editor===n)this._widget.show(i),this._widget.focusOnReferenceTree();else{const s=G1.get(n),r=this._model.clone();this.closeWidget(),n.focus(),s?.toggleWidget(i,wa(a=>Promise.resolve(r)),this._peekMode??!1)}},n=>{this._ignoreModelChangeEvent=!1,Ze(n)})}openReference(e,t,i){t||this.closeWidget();const{uri:n,range:s}=e;this._editorService.openCodeEditor({resource:n,options:{selection:s,selectionSource:"code.jump",pinned:i}},this._editor,t)}},G1=gh,gh.ID="editor.contrib.referencesController",gh);R_=G1=dce([Fu(2,De),Fu(3,Pt),Fu(4,mn),Fu(5,ke),Fu(6,du),Fu(7,lt)],R_);function bu(o,e){const t=Qle(o);if(!t)return;const i=R_.get(t);i&&e(i)}Nn.registerCommandAndKeybindingRule({id:"togglePeekWidgetFocus",weight:100,primary:Vp(2089,60),when:re.or(_u,qn.inPeekEditor),handler(o){bu(o,e=>{e.changeFocusBetweenPreviewAndReferences()})}});Nn.registerCommandAndKeybindingRule({id:"goToNextReference",weight:90,primary:62,secondary:[70],when:re.or(_u,qn.inPeekEditor),handler(o){bu(o,e=>{e.goToNextOrPreviousReference(!0)})}});Nn.registerCommandAndKeybindingRule({id:"goToPreviousReference",weight:90,primary:1086,secondary:[1094],when:re.or(_u,qn.inPeekEditor),handler(o){bu(o,e=>{e.goToNextOrPreviousReference(!1)})}});bt.registerCommandAlias("goToNextReferenceFromEmbeddedEditor","goToNextReference");bt.registerCommandAlias("goToPreviousReferenceFromEmbeddedEditor","goToPreviousReference");bt.registerCommandAlias("closeReferenceSearchEditor","closeReferenceSearch");bt.registerCommand("closeReferenceSearch",o=>bu(o,e=>e.closeWidget()));Nn.registerKeybindingRule({id:"closeReferenceSearch",weight:-1,primary:9,secondary:[1033],when:re.and(qn.inPeekEditor,re.not("config.editor.stablePeek"))});Nn.registerKeybindingRule({id:"closeReferenceSearch",weight:250,primary:9,secondary:[1033],when:re.and(_u,re.not("config.editor.stablePeek"),re.or(K.editorTextFocus,W9.negate()))});Nn.registerCommandAndKeybindingRule({id:"revealReference",weight:200,primary:3,mac:{primary:3,secondary:[2066]},when:re.and(_u,z9,k2.negate(),D2.negate()),handler(o){const t=o.get(mo).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof zc&&bu(o,i=>i.revealReference(t[0]))}});Nn.registerCommandAndKeybindingRule({id:"openReferenceToSide",weight:100,primary:2051,mac:{primary:259},when:re.and(_u,z9,k2.negate(),D2.negate()),handler(o){const t=o.get(mo).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof zc&&bu(o,i=>i.openReference(t[0],!0,!0))}});bt.registerCommand("openReference",o=>{const t=o.get(mo).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof zc&&bu(o,i=>i.openReference(t[0],!1,!0))});var oB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Wm=function(o,e){return function(t,i){e(t,i,o)}};const dM=new le("hasSymbols",!1,m("hasSymbols","Whether there are symbol locations that can be navigated via keyboard-only.")),Ry=He("ISymbolNavigationService");let vE=class{constructor(e,t,i,n){this._editorService=t,this._notificationService=i,this._keybindingService=n,this._currentModel=void 0,this._currentIdx=-1,this._ignoreEditorChange=!1,this._ctxHasSymbols=dM.bindTo(e)}reset(){this._ctxHasSymbols.reset(),this._currentState?.dispose(),this._currentMessage?.dispose(),this._currentModel=void 0,this._currentIdx=-1}put(e){const t=e.parent.parent;if(t.references.length<=1){this.reset();return}this._currentModel=t,this._currentIdx=t.references.indexOf(e),this._ctxHasSymbols.set(!0),this._showMessage();const i=new wE(this._editorService),n=i.onDidChange(s=>{if(this._ignoreEditorChange)return;const r=this._editorService.getActiveCodeEditor();if(!r)return;const a=r.getModel(),l=r.getPosition();if(!a||!l)return;let c=!1,d=!1;for(const h of t.references)if(WT(h.uri,a.uri))c=!0,d=d||I.containsPosition(h.range,l);else if(c)break;(!c||!d)&&this.reset()});this._currentState=No(i,n)}revealNext(e){if(!this._currentModel)return Promise.resolve();this._currentIdx+=1,this._currentIdx%=this._currentModel.references.length;const t=this._currentModel.references[this._currentIdx];return this._showMessage(),this._ignoreEditorChange=!0,this._editorService.openCodeEditor({resource:t.uri,options:{selection:I.collapseToStart(t.range),selectionRevealType:3}},e).finally(()=>{this._ignoreEditorChange=!1})}_showMessage(){this._currentMessage?.dispose();const e=this._keybindingService.lookupKeybinding("editor.gotoNextSymbolFromResult"),t=e?m("location.kb","Symbol {0} of {1}, {2} for next",this._currentIdx+1,this._currentModel.references.length,e.getLabel()):m("location","Symbol {0} of {1}",this._currentIdx+1,this._currentModel.references.length);this._currentMessage=this._notificationService.status(t)}};vE=oB([Wm(0,De),Wm(1,Pt),Wm(2,mn),Wm(3,vt)],vE);Qe(Ry,vE,1);ge(new class extends co{constructor(){super({id:"editor.gotoNextSymbolFromResult",precondition:dM,kbOpts:{weight:100,primary:70}})}runEditorCommand(o,e){return o.get(Ry).revealNext(e)}});Nn.registerCommandAndKeybindingRule({id:"editor.gotoNextSymbolFromResult.cancel",weight:100,when:dM,primary:9,handler(o){o.get(Ry).reset()}});let wE=class{constructor(e){this._listener=new Map,this._disposables=new X,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._disposables.add(e.onCodeEditorRemove(this._onDidRemoveEditor,this)),this._disposables.add(e.onCodeEditorAdd(this._onDidAddEditor,this)),e.listCodeEditors().forEach(this._onDidAddEditor,this)}dispose(){this._disposables.dispose(),this._onDidChange.dispose(),xt(this._listener.values())}_onDidAddEditor(e){this._listener.set(e,No(e.onDidChangeCursorPosition(t=>this._onDidChange.fire({editor:e})),e.onDidChangeModelContent(t=>this._onDidChange.fire({editor:e}))))}_onDidRemoveEditor(e){this._listener.get(e)?.dispose(),this._listener.delete(e)}};wE=oB([Wm(0,Pt)],wE);var hce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},R4=function(o,e){return function(t,i){e(t,i,o)}},Z1,vc;let ca=(vc=class{static get(e){return e.getContribution(Z1.ID)}constructor(e,t,i){this._openerService=i,this._messageWidget=new Dn,this._messageListeners=new X,this._mouseOverMessage=!1,this._editor=e,this._visible=Z1.MESSAGE_VISIBLE.bindTo(t)}dispose(){this._message?.dispose(),this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,t){El(ra(e)?e.value:e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),this._message=ra(e)?oy(e,{actionHandler:{callback:n=>{this.closeMessage(),UT(this._openerService,n,ra(e)?e.isTrusted:void 0)},disposables:this._messageListeners}}):void 0,this._messageWidget.value=new A4(this._editor,t,typeof e=="string"?e:this._message.element),this._messageListeners.add(J.debounce(this._editor.onDidBlurEditorText,(n,s)=>s,0)(()=>{this._mouseOverMessage||this._messageWidget.value&&yi(Xi(),this._messageWidget.value.getDomNode())||this.closeMessage()})),this._messageListeners.add(this._editor.onDidChangeCursorPosition(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidDispose(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidChangeModel(()=>this.closeMessage())),this._messageListeners.add(U(this._messageWidget.value.getDomNode(),ee.MOUSE_ENTER,()=>this._mouseOverMessage=!0,!0)),this._messageListeners.add(U(this._messageWidget.value.getDomNode(),ee.MOUSE_LEAVE,()=>this._mouseOverMessage=!1,!0));let i;this._messageListeners.add(this._editor.onMouseMove(n=>{n.target.position&&(i?i.containsPosition(n.target.position)||this.closeMessage():i=new I(t.lineNumber-3,1,n.target.position.lineNumber+3,1))}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(A4.fadeOut(this._messageWidget.value))}},Z1=vc,vc.ID="editor.contrib.messageController",vc.MESSAGE_VISIBLE=new le("messageVisible",!1,m("messageVisible","Whether the editor is currently showing an inline message")),vc);ca=Z1=hce([R4(1,De),R4(2,Vo)],ca);const uce=co.bindToContribution(ca.get);ge(new uce({id:"leaveEditorMessage",precondition:ca.MESSAGE_VISIBLE,handler:o=>o.closeMessage(),kbOpts:{weight:130,primary:9}}));let A4=class{static fadeOut(e){const t=()=>{e.dispose(),clearTimeout(i),e.getDomNode().removeEventListener("animationend",t)},i=setTimeout(t,110);return e.getDomNode().addEventListener("animationend",t),e.getDomNode().classList.add("fadeOut"),{dispose:t}}constructor(e,{lineNumber:t,column:i},n){this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(t,t,0),this._position={lineNumber:t,column:i},this._domNode=document.createElement("div"),this._domNode.classList.add("monaco-editor-overlaymessage"),this._domNode.style.marginLeft="-6px";const s=document.createElement("div");s.classList.add("anchor","top"),this._domNode.appendChild(s);const r=document.createElement("div");typeof n=="string"?(r.classList.add("message"),r.textContent=n):(n.classList.add("message"),r.appendChild(n)),this._domNode.appendChild(r);const a=document.createElement("div");a.classList.add("anchor","below"),this._domNode.appendChild(a),this._editor.addContentWidget(this),this._domNode.classList.add("fadeIn")}dispose(){this._editor.removeContentWidget(this)}getId(){return"messageoverlay"}getDomNode(){return this._domNode}getPosition(){return{position:this._position,preference:[1,2],positionAffinity:1}}afterRender(e){this._domNode.classList.toggle("below",e===2)}};Ho(ca.ID,ca,4);function yE(o,e){return e.uri.scheme===o.uri.scheme?!0:!zx(e.uri,Te.walkThroughSnippet,Te.vscodeChatCodeBlock,Te.vscodeChatCodeCompareBlock)}async function lb(o,e,t,i,n){const r=t.ordered(o,i).map(l=>Promise.resolve(n(l,o,e)).then(void 0,c=>{$n(c)})),a=await Promise.all(r);return Ag(a.flat()).filter(l=>yE(o,l))}function Ay(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideDefinition(r,a,n))}function hM(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideDeclaration(r,a,n))}function uM(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideImplementation(r,a,n))}function fM(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideTypeDefinition(r,a,n))}function cb(o,e,t,i,n,s){return lb(e,t,o,n,async(r,a,l)=>{const c=(await r.provideReferences(a,l,{includeDeclaration:!0},s))?.filter(h=>yE(a,h));if(!i||!c||c.length!==2)return c;const d=(await r.provideReferences(a,l,{includeDeclaration:!1},s))?.filter(h=>yE(a,h));return d&&d.length===1?d:c})}async function Da(o){const e=await o(),t=new ds(e,""),i=t.references.map(n=>n.link);return t.dispose(),i}Wo("_executeDefinitionProvider",(o,e,t)=>{const i=o.get(Se),n=Ay(i.definitionProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeDefinitionProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=Ay(i.definitionProvider,e,t,!0,ut.None);return Da(()=>n)});Wo("_executeTypeDefinitionProvider",(o,e,t)=>{const i=o.get(Se),n=fM(i.typeDefinitionProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeTypeDefinitionProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=fM(i.typeDefinitionProvider,e,t,!0,ut.None);return Da(()=>n)});Wo("_executeDeclarationProvider",(o,e,t)=>{const i=o.get(Se),n=hM(i.declarationProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeDeclarationProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=hM(i.declarationProvider,e,t,!0,ut.None);return Da(()=>n)});Wo("_executeReferenceProvider",(o,e,t)=>{const i=o.get(Se),n=cb(i.referenceProvider,e,t,!1,!1,ut.None);return Da(()=>n)});Wo("_executeReferenceProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=cb(i.referenceProvider,e,t,!1,!0,ut.None);return Da(()=>n)});Wo("_executeImplementationProvider",(o,e,t)=>{const i=o.get(Se),n=uM(i.implementationProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeImplementationProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=uM(i.implementationProvider,e,t,!0,ut.None);return Da(()=>n)});Eo.appendMenuItem($e.EditorContext,{submenu:$e.EditorContextPeek,title:m("peek.submenu","Peek"),group:"navigation",order:100});class Ig{static is(e){return!e||typeof e!="object"?!1:!!(e instanceof Ig||P.isIPosition(e.position)&&e.model)}constructor(e,t){this.model=e,this.position=t}}const wo=class wo extends mz{static all(){return wo._allSymbolNavigationCommands.values()}static _patchConfig(e){const t={...e,f1:!0};if(t.menu)for(const i of st.wrap(t.menu))(i.id===$e.EditorContext||i.id===$e.EditorContextPeek)&&(i.when=re.and(e.precondition,i.when));return t}constructor(e,t){super(wo._patchConfig(t)),this.configuration=e,wo._allSymbolNavigationCommands.set(t.id,this)}runEditorCommand(e,t,i,n){if(!t.hasModel())return Promise.resolve(void 0);const s=e.get(mn),r=e.get(Pt),a=e.get(G_),l=e.get(Ry),c=e.get(Se),d=e.get(ke),h=t.getModel(),u=t.getPosition(),f=Ig.is(i)?i:new Ig(h,u),g=new kle(t,5),p=TH(this._getLocationModel(c,f.model,f.position,g.token),g.token).then(async _=>{if(!_||g.token.isCancellationRequested)return;El(_.ariaMessage);let b;if(_.referenceAt(h.uri,u)){const w=this._getAlternativeCommand(t);!wo._activeAlternativeCommands.has(w)&&wo._allSymbolNavigationCommands.has(w)&&(b=wo._allSymbolNavigationCommands.get(w))}const C=_.references.length;if(C===0){if(!this.configuration.muteMessage){const w=h.getWordAtPosition(u);ca.get(t)?.showMessage(this._getNoResultFoundMessage(w),u)}}else if(C===1&&b)wo._activeAlternativeCommands.add(this.desc.id),d.invokeFunction(w=>b.runEditorCommand(w,t,i,n).finally(()=>{wo._activeAlternativeCommands.delete(this.desc.id)}));else return this._onResult(r,l,t,_,n)},_=>{s.error(_)}).finally(()=>{g.dispose()});return a.showWhile(p,250),p}async _onResult(e,t,i,n,s){const r=this._getGoToPreference(i);if(!(i instanceof Gh)&&(this.configuration.openInPeek||r==="peek"&&n.references.length>1))this._openInPeek(i,n,s);else{const a=n.firstReference(),l=n.references.length>1&&r==="gotoAndPeek",c=await this._openReference(i,e,a,this.configuration.openToSide,!l);l&&c?this._openInPeek(c,n,s):n.dispose(),r==="goto"&&t.put(a)}}async _openReference(e,t,i,n,s){let r;if(tH(i)&&(r=i.targetSelectionRange),r||(r=i.range),!r)return;const a=await t.openCodeEditor({resource:i.uri,options:{selection:I.collapseToStart(r),selectionRevealType:3,selectionSource:"code.jump"}},e,n);if(a){if(s){const l=a.getModel(),c=a.createDecorationsCollection([{range:r,options:{description:"symbol-navigate-action-highlight",className:"symbolHighlight"}}]);setTimeout(()=>{a.getModel()===l&&c.clear()},350)}return a}}_openInPeek(e,t,i){const n=R_.get(e);n&&e.hasModel()?n.toggleWidget(i??e.getSelection(),wa(s=>Promise.resolve(t)),this.configuration.openInPeek):t.dispose()}};wo._allSymbolNavigationCommands=new Map,wo._activeAlternativeCommands=new Set;let Nl=wo;class db extends Nl{async _getLocationModel(e,t,i,n){return new ds(await Ay(e.definitionProvider,t,i,!1,n),m("def.title","Definitions"))}_getNoResultFoundMessage(e){return e&&e.word?m("noResultWord","No definition found for '{0}'",e.word):m("generic.noResults","No definition found")}_getAlternativeCommand(e){return e.getOption(58).alternativeDefinitionCommand}_getGoToPreference(e){return e.getOption(58).multipleDefinitions}}var wc;Rn((wc=class extends db{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:wc.id,title:{...di("actions.goToDecl.label","Go to Definition"),mnemonicTitle:m({key:"miGotoDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Definition")},precondition:K.hasDefinitionProvider,keybinding:[{when:K.editorTextFocus,primary:70,weight:100},{when:re.and(K.editorTextFocus,F9),primary:2118,weight:100}],menu:[{id:$e.EditorContext,group:"navigation",order:1.1},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:2}]}),bt.registerCommandAlias("editor.action.goToDeclaration",wc.id)}},wc.id="editor.action.revealDefinition",wc));var yc;Rn((yc=class extends db{constructor(){super({openToSide:!0,openInPeek:!1,muteMessage:!1},{id:yc.id,title:di("actions.goToDeclToSide.label","Open Definition to the Side"),precondition:re.and(K.hasDefinitionProvider,K.isInEmbeddedEditor.toNegated()),keybinding:[{when:K.editorTextFocus,primary:Vp(2089,70),weight:100},{when:re.and(K.editorTextFocus,F9),primary:Vp(2089,2118),weight:100}]}),bt.registerCommandAlias("editor.action.openDeclarationToTheSide",yc.id)}},yc.id="editor.action.revealDefinitionAside",yc));var Sc;Rn((Sc=class extends db{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:Sc.id,title:di("actions.previewDecl.label","Peek Definition"),precondition:re.and(K.hasDefinitionProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),keybinding:{when:K.editorTextFocus,primary:582,linux:{primary:3140},weight:100},menu:{id:$e.EditorContextPeek,group:"peek",order:2}}),bt.registerCommandAlias("editor.action.previewDeclaration",Sc.id)}},Sc.id="editor.action.peekDefinition",Sc));class rB extends Nl{async _getLocationModel(e,t,i,n){return new ds(await hM(e.declarationProvider,t,i,!1,n),m("decl.title","Declarations"))}_getNoResultFoundMessage(e){return e&&e.word?m("decl.noResultWord","No declaration found for '{0}'",e.word):m("decl.generic.noResults","No declaration found")}_getAlternativeCommand(e){return e.getOption(58).alternativeDeclarationCommand}_getGoToPreference(e){return e.getOption(58).multipleDeclarations}}var mh;Rn((mh=class extends rB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:mh.id,title:{...di("actions.goToDeclaration.label","Go to Declaration"),mnemonicTitle:m({key:"miGotoDeclaration",comment:["&& denotes a mnemonic"]},"Go to &&Declaration")},precondition:re.and(K.hasDeclarationProvider,K.isInEmbeddedEditor.toNegated()),menu:[{id:$e.EditorContext,group:"navigation",order:1.3},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:3}]})}_getNoResultFoundMessage(e){return e&&e.word?m("decl.noResultWord","No declaration found for '{0}'",e.word):m("decl.generic.noResults","No declaration found")}},mh.id="editor.action.revealDeclaration",mh));Rn(class extends rB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.peekDeclaration",title:di("actions.peekDecl.label","Peek Declaration"),precondition:re.and(K.hasDeclarationProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),menu:{id:$e.EditorContextPeek,group:"peek",order:3}})}});class aB extends Nl{async _getLocationModel(e,t,i,n){return new ds(await fM(e.typeDefinitionProvider,t,i,!1,n),m("typedef.title","Type Definitions"))}_getNoResultFoundMessage(e){return e&&e.word?m("goToTypeDefinition.noResultWord","No type definition found for '{0}'",e.word):m("goToTypeDefinition.generic.noResults","No type definition found")}_getAlternativeCommand(e){return e.getOption(58).alternativeTypeDefinitionCommand}_getGoToPreference(e){return e.getOption(58).multipleTypeDefinitions}}var ph;Rn((ph=class extends aB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:ph.ID,title:{...di("actions.goToTypeDefinition.label","Go to Type Definition"),mnemonicTitle:m({key:"miGotoTypeDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Type Definition")},precondition:K.hasTypeDefinitionProvider,keybinding:{when:K.editorTextFocus,primary:0,weight:100},menu:[{id:$e.EditorContext,group:"navigation",order:1.4},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:3}]})}},ph.ID="editor.action.goToTypeDefinition",ph));var _h;Rn((_h=class extends aB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:_h.ID,title:di("actions.peekTypeDefinition.label","Peek Type Definition"),precondition:re.and(K.hasTypeDefinitionProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),menu:{id:$e.EditorContextPeek,group:"peek",order:4}})}},_h.ID="editor.action.peekTypeDefinition",_h));class lB extends Nl{async _getLocationModel(e,t,i,n){return new ds(await uM(e.implementationProvider,t,i,!1,n),m("impl.title","Implementations"))}_getNoResultFoundMessage(e){return e&&e.word?m("goToImplementation.noResultWord","No implementation found for '{0}'",e.word):m("goToImplementation.generic.noResults","No implementation found")}_getAlternativeCommand(e){return e.getOption(58).alternativeImplementationCommand}_getGoToPreference(e){return e.getOption(58).multipleImplementations}}var bh;Rn((bh=class extends lB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:bh.ID,title:{...di("actions.goToImplementation.label","Go to Implementations"),mnemonicTitle:m({key:"miGotoImplementation",comment:["&& denotes a mnemonic"]},"Go to &&Implementations")},precondition:K.hasImplementationProvider,keybinding:{when:K.editorTextFocus,primary:2118,weight:100},menu:[{id:$e.EditorContext,group:"navigation",order:1.45},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:4}]})}},bh.ID="editor.action.goToImplementation",bh));var Ch;Rn((Ch=class extends lB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:Ch.ID,title:di("actions.peekImplementation.label","Peek Implementations"),precondition:re.and(K.hasImplementationProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),keybinding:{when:K.editorTextFocus,primary:3142,weight:100},menu:{id:$e.EditorContextPeek,group:"peek",order:5}})}},Ch.ID="editor.action.peekImplementation",Ch));class cB extends Nl{_getNoResultFoundMessage(e){return e?m("references.no","No references found for '{0}'",e.word):m("references.noGeneric","No references found")}_getAlternativeCommand(e){return e.getOption(58).alternativeReferenceCommand}_getGoToPreference(e){return e.getOption(58).multipleReferences}}Rn(class extends cB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:"editor.action.goToReferences",title:{...di("goToReferences.label","Go to References"),mnemonicTitle:m({key:"miGotoReference",comment:["&& denotes a mnemonic"]},"Go to &&References")},precondition:re.and(K.hasReferenceProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),keybinding:{when:K.editorTextFocus,primary:1094,weight:100},menu:[{id:$e.EditorContext,group:"navigation",order:1.45},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:5}]})}async _getLocationModel(e,t,i,n){return new ds(await cb(e.referenceProvider,t,i,!0,!1,n),m("ref.title","References"))}});Rn(class extends cB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.referenceSearch.trigger",title:di("references.action.label","Peek References"),precondition:re.and(K.hasReferenceProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),menu:{id:$e.EditorContextPeek,group:"peek",order:6}})}async _getLocationModel(e,t,i,n){return new ds(await cb(e.referenceProvider,t,i,!1,!1,n),m("ref.title","References"))}});class fce extends Nl{constructor(e,t,i){super(e,{id:"editor.action.goToLocation",title:di("label.generic","Go to Any Symbol"),precondition:re.and(qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated())}),this._references=t,this._gotoMultipleBehaviour=i}async _getLocationModel(e,t,i,n){return new ds(this._references,m("generic.title","Locations"))}_getNoResultFoundMessage(e){return e&&m("generic.noResult","No results for '{0}'",e.word)||""}_getGoToPreference(e){return this._gotoMultipleBehaviour??e.getOption(58).multipleReferences}_getAlternativeCommand(){return""}}bt.registerCommand({id:"editor.action.goToLocations",metadata:{description:"Go to locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:ve},{name:"position",description:"The position at which to start",constraint:P.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto`"},{name:"noResultsMessage",description:"Human readable message that shows when locations is empty."}]},handler:async(o,e,t,i,n,s,r)=>{ai(ve.isUri(e)),ai(P.isIPosition(t)),ai(Array.isArray(i)),ai(typeof n>"u"||typeof n=="string"),ai(typeof r>"u"||typeof r=="boolean");const a=o.get(Pt),l=await a.openCodeEditor({resource:e},a.getFocusedCodeEditor());if(Y8(l))return l.setPosition(t),l.revealPositionInCenterIfOutsideViewport(t,0),l.invokeWithinContext(c=>{const d=new class extends fce{_getNoResultFoundMessage(h){return s||super._getNoResultFoundMessage(h)}}({muteMessage:!s,openInPeek:!!r,openToSide:!1},i,n);c.get(ke).invokeFunction(d.run.bind(d),l)})}});bt.registerCommand({id:"editor.action.peekLocations",metadata:{description:"Peek locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:ve},{name:"position",description:"The position at which to start",constraint:P.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto`"}]},handler:async(o,e,t,i,n)=>{o.get(hi).executeCommand("editor.action.goToLocations",e,t,i,n,void 0,!0)}});bt.registerCommand({id:"editor.action.findReferences",handler:(o,e,t)=>{ai(ve.isUri(e)),ai(P.isIPosition(t));const i=o.get(Se),n=o.get(Pt);return n.openCodeEditor({resource:e},n.getFocusedCodeEditor()).then(s=>{if(!Y8(s)||!s.hasModel())return;const r=R_.get(s);if(!r)return;const a=wa(c=>cb(i.referenceProvider,s.getModel(),P.lift(t),!1,!1,c).then(d=>new ds(d,m("ref.title","References")))),l=new I(t.lineNumber,t.column,t.lineNumber,t.column);return Promise.resolve(r.toggleWidget(l,a,!1))})}});bt.registerCommandAlias("editor.action.showReferences","editor.action.peekLocations");var gce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fL=function(o,e){return function(t,i){e(t,i,o)}},Hm,Lc;let A_=(Lc=class{constructor(e,t,i,n){this.textModelResolverService=t,this.languageService=i,this.languageFeaturesService=n,this.toUnhook=new X,this.toUnhookForKeyboard=new X,this.currentWordAtPosition=null,this.previousPromise=null,this.editor=e,this.linkDecorations=this.editor.createDecorationsCollection();const s=new X8(e);this.toUnhook.add(s),this.toUnhook.add(s.onMouseMoveOrRelevantKeyDown(([r,a])=>{this.startFindDefinitionFromMouse(r,a??void 0)})),this.toUnhook.add(s.onExecute(r=>{this.isEnabled(r)&&this.gotoDefinition(r.target.position,r.hasSideBySideModifier).catch(a=>{Ze(a)}).finally(()=>{this.removeLinkDecorations()})})),this.toUnhook.add(s.onCancel(()=>{this.removeLinkDecorations(),this.currentWordAtPosition=null}))}static get(e){return e.getContribution(Hm.ID)}async startFindDefinitionFromCursor(e){await this.startFindDefinition(e),this.toUnhookForKeyboard.add(this.editor.onDidChangeCursorPosition(()=>{this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear()})),this.toUnhookForKeyboard.add(this.editor.onKeyDown(t=>{t&&(this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear())}))}startFindDefinitionFromMouse(e,t){if(e.target.type===9&&this.linkDecorations.length>0)return;if(!this.editor.hasModel()||!this.isEnabled(e,t)){this.currentWordAtPosition=null,this.removeLinkDecorations();return}const i=e.target.position;this.startFindDefinition(i)}async startFindDefinition(e){this.toUnhookForKeyboard.clear();const t=e?this.editor.getModel()?.getWordAtPosition(e):null;if(!t){this.currentWordAtPosition=null,this.removeLinkDecorations();return}if(this.currentWordAtPosition&&this.currentWordAtPosition.startColumn===t.startColumn&&this.currentWordAtPosition.endColumn===t.endColumn&&this.currentWordAtPosition.word===t.word)return;this.currentWordAtPosition=t;const i=new xle(this.editor,15);this.previousPromise&&(this.previousPromise.cancel(),this.previousPromise=null),this.previousPromise=wa(r=>this.findDefinition(e,r));let n;try{n=await this.previousPromise}catch(r){Ze(r);return}if(!n||!n.length||!i.validate(this.editor)){this.removeLinkDecorations();return}const s=n[0].originSelectionRange?I.lift(n[0].originSelectionRange):new I(e.lineNumber,t.startColumn,e.lineNumber,t.endColumn);if(n.length>1){let r=s;for(const{originSelectionRange:a}of n)a&&(r=I.plusRange(r,a));this.addDecoration(r,new Js().appendText(m("multipleResults","Click to show {0} definitions.",n.length)))}else{const r=n[0];if(!r.uri)return;this.textModelResolverService.createModelReference(r.uri).then(a=>{if(!a.object||!a.object.textEditorModel){a.dispose();return}const{object:{textEditorModel:l}}=a,{startLineNumber:c}=r.range;if(c<1||c>l.getLineCount()){a.dispose();return}const d=this.getPreviewValue(l,c,r),h=this.languageService.guessLanguageIdByFilepathOrFirstLine(l.uri);this.addDecoration(s,d?new Js().appendCodeblock(h||"",d):void 0),a.dispose()})}}getPreviewValue(e,t,i){let n=i.range;return n.endLineNumber-n.startLineNumber>=Hm.MAX_SOURCE_PREVIEW_LINES&&(n=this.getPreviewRangeBasedOnIndentation(e,t)),this.stripIndentationFromPreviewRange(e,t,n)}stripIndentationFromPreviewRange(e,t,i){let s=e.getLineFirstNonWhitespaceColumn(t);for(let a=t+1;a{const n=!t&&this.editor.getOption(89)&&!this.isInPeekEditor(i);return new db({openToSide:t,openInPeek:n,muteMessage:!0},{title:{value:"",original:""},id:"",precondition:void 0}).run(i)})}isInPeekEditor(e){const t=e.get(De);return qn.inPeekEditor.getValue(t)}dispose(){this.toUnhook.dispose(),this.toUnhookForKeyboard.dispose()}},Hm=Lc,Lc.ID="editor.contrib.gotodefinitionatposition",Lc.MAX_SOURCE_PREVIEW_LINES=8,Lc);A_=Hm=gce([fL(1,fo),fL(2,qt),fL(3,Se)],A_);Ho(A_.ID,A_,2);const dB="editor.action.inlineSuggest.commit",hB="editor.action.inlineSuggest.showPrevious",uB="editor.action.inlineSuggest.showNext";var gM=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Io=function(o,e){return function(t,i){e(t,i,o)}},Y1;let SE=class extends z{constructor(e,t,i){super(),this.editor=e,this.model=t,this.instantiationService=i,this.alwaysShowToolbar=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).showToolbar==="always"),this.sessionPosition=void 0,this.position=Ce(this,n=>{const s=this.model.read(n)?.primaryGhostText.read(n);if(!this.alwaysShowToolbar.read(n)||!s||s.parts.length===0)return this.sessionPosition=void 0,null;const r=s.parts[0].column;this.sessionPosition&&this.sessionPosition.lineNumber!==s.lineNumber&&(this.sessionPosition=void 0);const a=new P(s.lineNumber,Math.min(r,this.sessionPosition?.column??Number.MAX_SAFE_INTEGER));return this.sessionPosition=a,a}),this._register(To((n,s)=>{const r=this.model.read(n);if(!r||!this.alwaysShowToolbar.read(n))return;const a=cu((c,d)=>{const h=d.add(this.instantiationService.createInstance(Eg,this.editor,!0,this.position,r.selectedInlineCompletionIndex,r.inlineCompletionsCount,r.activeCommands));return e.addContentWidget(h),d.add(_e(()=>e.removeContentWidget(h))),d.add(We(u=>{this.position.read(u)&&r.lastTriggerKind.read(u)!==Cl.Explicit&&r.triggerExplicitly()})),h}),l=YT(this,(c,d)=>!!this.position.read(c)||!!d);s.add(We(c=>{l.read(c)&&a.read(c)}))}))}};SE=gM([Io(2,ke)],SE);const mce=Wi("inline-suggestion-hints-next",ie.chevronRight,m("parameterHintsNextIcon","Icon for show next parameter hint.")),pce=Wi("inline-suggestion-hints-previous",ie.chevronLeft,m("parameterHintsPreviousIcon","Icon for show previous parameter hint."));var xc;let Eg=(xc=class extends z{static get dropDownVisible(){return this._dropDownVisible}createCommandAction(e,t,i){const n=new Fs(e,t,i,!0,()=>this._commandService.executeCommand(e)),s=this.keybindingService.lookupKeybinding(e,this._contextKeyService);let r=t;return s&&(r=m({key:"content",comment:["A label","A keybinding"]},"{0} ({1})",t,s.getLabel())),n.tooltip=r,n}constructor(e,t,i,n,s,r,a,l,c,d,h){super(),this.editor=e,this.withBorder=t,this._position=i,this._currentSuggestionIdx=n,this._suggestionCount=s,this._extraCommands=r,this._commandService=a,this.keybindingService=c,this._contextKeyService=d,this._menuService=h,this.id=`InlineSuggestionHintsContentWidget${Y1.id++}`,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this.nodes=tt("div.inlineSuggestionsHints",{className:this.withBorder?".withBorder":""},[tt("div@toolBar")]),this.previousAction=this.createCommandAction(hB,m("previous","Previous"),Ee.asClassName(pce)),this.availableSuggestionCountAction=new Fs("inlineSuggestionHints.availableSuggestionCount","",void 0,!1),this.nextAction=this.createCommandAction(uB,m("next","Next"),Ee.asClassName(mce)),this.inlineCompletionsActionsMenus=this._register(this._menuService.createMenu($e.InlineCompletionsActions,this._contextKeyService)),this.clearAvailableSuggestionCountLabelDebounced=this._register(new ci(()=>{this.availableSuggestionCountAction.label=""},100)),this.disableButtonsDebounced=this._register(new ci(()=>{this.previousAction.enabled=this.nextAction.enabled=!1},100)),this.toolBar=this._register(l.createInstance(LE,this.nodes.toolBar,$e.InlineSuggestionToolbar,{menuOptions:{renderShortTitle:!0},toolbarOptions:{primaryGroup:u=>u.startsWith("primary")},actionViewItemProvider:(u,f)=>{if(u instanceof so)return l.createInstance(bce,u,void 0);if(u===this.availableSuggestionCountAction){const g=new _ce(void 0,u,{label:!0,icon:!1});return g.setClass("availableSuggestionCount"),g}},telemetrySource:"InlineSuggestionToolbar"})),this.toolBar.setPrependedPrimaryActions([this.previousAction,this.availableSuggestionCountAction,this.nextAction]),this._register(this.toolBar.onDidChangeDropdownVisibility(u=>{Y1._dropDownVisible=u})),this._register(We(u=>{this._position.read(u),this.editor.layoutContentWidget(this)})),this._register(We(u=>{const f=this._suggestionCount.read(u),g=this._currentSuggestionIdx.read(u);f!==void 0?(this.clearAvailableSuggestionCountLabelDebounced.cancel(),this.availableSuggestionCountAction.label=`${g+1}/${f}`):this.clearAvailableSuggestionCountLabelDebounced.schedule(),f!==void 0&&f>1?(this.disableButtonsDebounced.cancel(),this.previousAction.enabled=this.nextAction.enabled=!0):this.disableButtonsDebounced.schedule()})),this._register(We(u=>{const g=this._extraCommands.read(u).map(p=>({class:void 0,id:p.id,enabled:!0,tooltip:p.tooltip||"",label:p.title,run:_=>this._commandService.executeCommand(p.id)}));for(const[p,_]of this.inlineCompletionsActionsMenus.getActions())for(const b of _)b instanceof so&&g.push(b);g.length>0&&g.unshift(new Gi),this.toolBar.setAdditionalSecondaryActions(g)}))}getId(){return this.id}getDomNode(){return this.nodes.root}getPosition(){return{position:this._position.get(),preference:[1,2],positionAffinity:3}}},Y1=xc,xc._dropDownVisible=!1,xc.id=0,xc);Eg=Y1=gM([Io(6,hi),Io(7,ke),Io(8,vt),Io(9,De),Io(10,yr)],Eg);class _ce extends dy{constructor(){super(...arguments),this._className=void 0}setClass(e){this._className=e}render(e){super.render(e),this._className&&e.classList.add(this._className)}updateTooltip(){}}class bce extends zh{updateLabel(){const e=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!e)return super.updateLabel();if(this.label){const t=tt("div.keybinding").root;this._register(new ob(t,Ns,{disableTitle:!0,...Hee})).set(e),this.label.textContent=this._action.label,this.label.appendChild(t),this.label.classList.add("inlineSuggestionStatusBarItemLabel")}}updateTooltip(){}}let LE=class extends $v{constructor(e,t,i,n,s,r,a,l,c){super(e,{resetMenu:t,...i},n,s,r,a,l,c),this.menuId=t,this.options2=i,this.menuService=n,this.contextKeyService=s,this.menu=this._store.add(this.menuService.createMenu(this.menuId,this.contextKeyService,{emitEventsForSubmenuChanges:!0})),this.additionalActions=[],this.prependedPrimaryActions=[],this._store.add(this.menu.onDidChange(()=>this.updateToolbar())),this.updateToolbar()}updateToolbar(){const e=[],t=[];XT(this.menu,this.options2?.menuOptions,{primary:e,secondary:t},this.options2?.toolbarOptions?.primaryGroup,this.options2?.toolbarOptions?.shouldInlineSubmenu,this.options2?.toolbarOptions?.useSeparatorsInPrimaryActions),t.push(...this.additionalActions),e.unshift(...this.prependedPrimaryActions),this.setActions(e,t)}setPrependedPrimaryActions(e){li(this.prependedPrimaryActions,e,(t,i)=>t===i)||(this.prependedPrimaryActions=e,this.updateToolbar())}setAdditionalSecondaryActions(e){li(this.additionalActions,e,(t,i)=>t===i)||(this.additionalActions=e,this.updateToolbar())}};LE=gM([Io(3,yr),Io(4,De),Io(5,Lr),Io(6,vt),Io(7,hi),Io(8,$s)],LE);function Py(o,e,t){const i=gi(o);return!(ei.left+i.width||ti.top+i.height)}let Cce=class{constructor(e,t,i){this.value=e,this.isComplete=t,this.hasLoadingMessage=i}};class fB extends z{constructor(e,t){super(),this._editor=e,this._computer=t,this._onResult=this._register(new A),this.onResult=this._onResult.event,this._firstWaitScheduler=this._register(new ci(()=>this._triggerAsyncComputation(),0)),this._secondWaitScheduler=this._register(new ci(()=>this._triggerSyncComputation(),0)),this._loadingMessageScheduler=this._register(new ci(()=>this._triggerLoadingMessage(),0)),this._state=0,this._asyncIterable=null,this._asyncIterableDone=!1,this._result=[]}dispose(){this._asyncIterable&&(this._asyncIterable.cancel(),this._asyncIterable=null),super.dispose()}get _hoverTime(){return this._editor.getOption(60).delay}get _firstWaitTime(){return this._hoverTime/2}get _secondWaitTime(){return this._hoverTime-this._firstWaitTime}get _loadingMessageTime(){return 3*this._hoverTime}_setState(e,t=!0){this._state=e,t&&this._fireResult()}_triggerAsyncComputation(){this._setState(2),this._secondWaitScheduler.schedule(this._secondWaitTime),this._computer.computeAsync?(this._asyncIterableDone=!1,this._asyncIterable=FH(e=>this._computer.computeAsync(e)),(async()=>{try{for await(const e of this._asyncIterable)e&&(this._result.push(e),this._fireResult());this._asyncIterableDone=!0,(this._state===3||this._state===4)&&this._setState(0)}catch(e){Ze(e)}})()):this._asyncIterableDone=!0}_triggerSyncComputation(){this._computer.computeSync&&(this._result=this._result.concat(this._computer.computeSync())),this._setState(this._asyncIterableDone?0:3)}_triggerLoadingMessage(){this._state===3&&this._setState(4)}_fireResult(){if(this._state===1||this._state===2)return;const e=this._state===0,t=this._state===4;this._onResult.fire(new Cce(this._result.slice(0),e,t))}start(e){if(e===0)this._state===0&&(this._setState(1),this._firstWaitScheduler.schedule(this._firstWaitTime),this._loadingMessageScheduler.schedule(this._loadingMessageTime));else switch(this._state){case 0:this._triggerAsyncComputation(),this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break;case 2:this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break}}cancel(){this._firstWaitScheduler.cancel(),this._secondWaitScheduler.cancel(),this._loadingMessageScheduler.cancel(),this._asyncIterable&&(this._asyncIterable.cancel(),this._asyncIterable=null),this._result=[],this._setState(0,!1)}}class gL{constructor(e,t,i,n){this.priority=e,this.range=t,this.initialMousePosX=i,this.initialMousePosY=n,this.type=1}equals(e){return e.type===1&&this.range.equalsRange(e.range)}canAdoptVisibleHover(e,t){return e.type===1&&t.lineNumber===this.range.startLineNumber}}class Q1{constructor(e,t,i,n,s,r){this.priority=e,this.owner=t,this.range=i,this.initialMousePosX=n,this.initialMousePosY=s,this.supportsMarkerHover=r,this.type=2}equals(e){return e.type===2&&this.owner===e.owner}canAdoptVisibleHover(e,t){return e.type===2&&this.owner===e.owner}}class Ng{constructor(e){this.renderedHoverParts=e}dispose(){for(const e of this.renderedHoverParts)e.dispose()}}const Oy=new class{constructor(){this._participants=[]}register(e){this._participants.push(e)}getAll(){return this._participants}};class mM{constructor(){this._onDidWillResize=new A,this.onDidWillResize=this._onDidWillResize.event,this._onDidResize=new A,this.onDidResize=this._onDidResize.event,this._sashListener=new X,this._size=new rt(0,0),this._minSize=new rt(0,0),this._maxSize=new rt(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),this.domNode=document.createElement("div"),this._eastSash=new an(this.domNode,{getVerticalSashLeft:()=>this._size.width},{orientation:0}),this._westSash=new an(this.domNode,{getVerticalSashLeft:()=>0},{orientation:0}),this._northSash=new an(this.domNode,{getHorizontalSashTop:()=>0},{orientation:1,orthogonalEdge:ov.North}),this._southSash=new an(this.domNode,{getHorizontalSashTop:()=>this._size.height},{orientation:1,orthogonalEdge:ov.South}),this._northSash.orthogonalStartSash=this._westSash,this._northSash.orthogonalEndSash=this._eastSash,this._southSash.orthogonalStartSash=this._westSash,this._southSash.orthogonalEndSash=this._eastSash;let e,t=0,i=0;this._sashListener.add(J.any(this._northSash.onDidStart,this._eastSash.onDidStart,this._southSash.onDidStart,this._westSash.onDidStart)(()=>{e===void 0&&(this._onDidWillResize.fire(),e=this._size,t=0,i=0)})),this._sashListener.add(J.any(this._northSash.onDidEnd,this._eastSash.onDidEnd,this._southSash.onDidEnd,this._westSash.onDidEnd)(()=>{e!==void 0&&(e=void 0,t=0,i=0,this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(this._eastSash.onDidChange(n=>{e&&(i=n.currentX-n.startX,this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,east:!0}))})),this._sashListener.add(this._westSash.onDidChange(n=>{e&&(i=-(n.currentX-n.startX),this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,west:!0}))})),this._sashListener.add(this._northSash.onDidChange(n=>{e&&(t=-(n.currentY-n.startY),this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,north:!0}))})),this._sashListener.add(this._southSash.onDidChange(n=>{e&&(t=n.currentY-n.startY,this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,south:!0}))})),this._sashListener.add(J.any(this._eastSash.onDidReset,this._westSash.onDidReset)(n=>{this._preferredSize&&(this.layout(this._size.height,this._preferredSize.width),this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(J.any(this._northSash.onDidReset,this._southSash.onDidReset)(n=>{this._preferredSize&&(this.layout(this._preferredSize.height,this._size.width),this._onDidResize.fire({dimension:this._size,done:!0}))}))}dispose(){this._northSash.dispose(),this._southSash.dispose(),this._eastSash.dispose(),this._westSash.dispose(),this._sashListener.dispose(),this._onDidResize.dispose(),this._onDidWillResize.dispose(),this.domNode.remove()}enableSashes(e,t,i,n){this._northSash.state=e?3:0,this._eastSash.state=t?3:0,this._southSash.state=i?3:0,this._westSash.state=n?3:0}layout(e=this.size.height,t=this.size.width){const{height:i,width:n}=this._minSize,{height:s,width:r}=this._maxSize;e=Math.max(i,Math.min(s,e)),t=Math.max(n,Math.min(r,t));const a=new rt(t,e);rt.equals(a,this._size)||(this.domNode.style.height=e+"px",this.domNode.style.width=t+"px",this._size=a,this._northSash.layout(),this._eastSash.layout(),this._southSash.layout(),this._westSash.layout())}clearSashHoverState(){this._eastSash.clearSashHoverState(),this._westSash.clearSashHoverState(),this._northSash.clearSashHoverState(),this._southSash.clearSashHoverState()}get size(){return this._size}set maxSize(e){this._maxSize=e}get maxSize(){return this._maxSize}set minSize(e){this._minSize=e}get minSize(){return this._minSize}set preferredSize(e){this._preferredSize=e}get preferredSize(){return this._preferredSize}}const vce=30,wce=24;class yce extends z{constructor(e,t=new rt(10,10)){super(),this._editor=e,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._resizableNode=this._register(new mM),this._contentPosition=null,this._isResizing=!1,this._resizableNode.domNode.style.position="absolute",this._resizableNode.minSize=rt.lift(t),this._resizableNode.layout(t.height,t.width),this._resizableNode.enableSashes(!0,!0,!0,!0),this._register(this._resizableNode.onDidResize(i=>{this._resize(new rt(i.dimension.width,i.dimension.height)),i.done&&(this._isResizing=!1)})),this._register(this._resizableNode.onDidWillResize(()=>{this._isResizing=!0}))}get isResizing(){return this._isResizing}getDomNode(){return this._resizableNode.domNode}getPosition(){return this._contentPosition}get position(){return this._contentPosition?.position?P.lift(this._contentPosition.position):void 0}_availableVerticalSpaceAbove(e){const t=this._editor.getDomNode(),i=this._editor.getScrolledVisiblePosition(e);return!t||!i?void 0:gi(t).top+i.top-vce}_availableVerticalSpaceBelow(e){const t=this._editor.getDomNode(),i=this._editor.getScrolledVisiblePosition(e);if(!t||!i)return;const n=gi(t),s=Ah(t.ownerDocument.body),r=n.top+i.top+i.height;return s.height-r-wce}_findPositionPreference(e,t){const i=Math.min(this._availableVerticalSpaceBelow(t)??1/0,e),n=Math.min(this._availableVerticalSpaceAbove(t)??1/0,e),s=Math.min(Math.max(n,i),e),r=Math.min(e,s);let a;return this._editor.getOption(60).above?a=r<=n?1:2:a=r<=i?2:1,a===1?this._resizableNode.enableSashes(!0,!0,!1,!1):this._resizableNode.enableSashes(!1,!0,!0,!1),a}_resize(e){this._resizableNode.layout(e.height,e.width)}}var Sce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},d1=function(o,e){return function(t,i){e(t,i,o)}},Or;const P4=30,Lce=6;var kc;let xE=(kc=class extends yce{get isVisibleFromKeyboard(){return this._renderedHover?.source===1}get isVisible(){return this._hoverVisibleKey.get()??!1}get isFocused(){return this._hoverFocusedKey.get()??!1}constructor(e,t,i,n,s){const r=e.getOption(67)+8,a=150,l=new rt(a,r);super(e,l),this._configurationService=i,this._accessibilityService=n,this._keybindingService=s,this._hover=this._register(new RT),this._onDidResize=this._register(new A),this.onDidResize=this._onDidResize.event,this._minimumSize=l,this._hoverVisibleKey=K.hoverVisible.bindTo(t),this._hoverFocusedKey=K.hoverFocused.bindTo(t),Z(this._resizableNode.domNode,this._hover.containerDomNode),this._resizableNode.domNode.style.zIndex="50",this._register(this._editor.onDidLayoutChange(()=>{this.isVisible&&this._updateMaxDimensions()})),this._register(this._editor.onDidChangeConfiguration(d=>{d.hasChanged(50)&&this._updateFont()}));const c=this._register(Ph(this._resizableNode.domNode));this._register(c.onDidFocus(()=>{this._hoverFocusedKey.set(!0)})),this._register(c.onDidBlur(()=>{this._hoverFocusedKey.set(!1)})),this._setRenderedHover(void 0),this._editor.addContentWidget(this)}dispose(){super.dispose(),this._renderedHover?.dispose(),this._editor.removeContentWidget(this)}getId(){return Or.ID}static _applyDimensions(e,t,i){const n=typeof t=="number"?`${t}px`:t,s=typeof i=="number"?`${i}px`:i;e.style.width=n,e.style.height=s}_setContentsDomNodeDimensions(e,t){const i=this._hover.contentsDomNode;return Or._applyDimensions(i,e,t)}_setContainerDomNodeDimensions(e,t){const i=this._hover.containerDomNode;return Or._applyDimensions(i,e,t)}_setHoverWidgetDimensions(e,t){this._setContentsDomNodeDimensions(e,t),this._setContainerDomNodeDimensions(e,t),this._layoutContentWidget()}static _applyMaxDimensions(e,t,i){const n=typeof t=="number"?`${t}px`:t,s=typeof i=="number"?`${i}px`:i;e.style.maxWidth=n,e.style.maxHeight=s}_setHoverWidgetMaxDimensions(e,t){Or._applyMaxDimensions(this._hover.contentsDomNode,e,t),Or._applyMaxDimensions(this._hover.containerDomNode,e,t),this._hover.containerDomNode.style.setProperty("--vscode-hover-maxWidth",typeof e=="number"?`${e}px`:e),this._layoutContentWidget()}_setAdjustedHoverWidgetDimensions(e){this._setHoverWidgetMaxDimensions("none","none");const t=e.width,i=e.height;this._setHoverWidgetDimensions(t,i)}_updateResizableNodeMaxDimensions(){const e=this._findMaximumRenderingWidth()??1/0,t=this._findMaximumRenderingHeight()??1/0;this._resizableNode.maxSize=new rt(e,t),this._setHoverWidgetMaxDimensions(e,t)}_resize(e){Or._lastDimensions=new rt(e.width,e.height),this._setAdjustedHoverWidgetDimensions(e),this._resizableNode.layout(e.height,e.width),this._updateResizableNodeMaxDimensions(),this._hover.scrollbar.scanDomNode(),this._editor.layoutContentWidget(this),this._onDidResize.fire()}_findAvailableSpaceVertically(){const e=this._renderedHover?.showAtPosition;if(e)return this._positionPreference===1?this._availableVerticalSpaceAbove(e):this._availableVerticalSpaceBelow(e)}_findMaximumRenderingHeight(){const e=this._findAvailableSpaceVertically();if(!e)return;let t=Lce;return Array.from(this._hover.contentsDomNode.children).forEach(i=>{t+=i.clientHeight}),Math.min(e,t)}_isHoverTextOverflowing(){this._hover.containerDomNode.style.setProperty("--vscode-hover-whiteSpace","nowrap"),this._hover.containerDomNode.style.setProperty("--vscode-hover-sourceWhiteSpace","nowrap");const e=Array.from(this._hover.contentsDomNode.children).some(t=>t.scrollWidth>t.clientWidth);return this._hover.containerDomNode.style.removeProperty("--vscode-hover-whiteSpace"),this._hover.containerDomNode.style.removeProperty("--vscode-hover-sourceWhiteSpace"),e}_findMaximumRenderingWidth(){if(!this._editor||!this._editor.hasModel())return;const e=this._isHoverTextOverflowing(),t=typeof this._contentWidth>"u"?0:this._contentWidth-2;return e||this._hover.containerDomNode.clientWidththis._renderedHover.closestMouseDistance+4?!1:(this._renderedHover.closestMouseDistance=Math.min(this._renderedHover.closestMouseDistance,n),!0)}_setRenderedHover(e){this._renderedHover?.dispose(),this._renderedHover=e,this._hoverVisibleKey.set(!!e),this._hover.containerDomNode.classList.toggle("hidden",!e)}_updateFont(){const{fontSize:e,lineHeight:t}=this._editor.getOption(50),i=this._hover.contentsDomNode;i.style.fontSize=`${e}px`,i.style.lineHeight=`${t/e}`,Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName("code")).forEach(s=>this._editor.applyFontInfo(s))}_updateContent(e){const t=this._hover.contentsDomNode;t.style.paddingBottom="",t.textContent="",t.appendChild(e)}_layoutContentWidget(){this._editor.layoutContentWidget(this),this._hover.onContentsChanged()}_updateMaxDimensions(){const e=Math.max(this._editor.getLayoutInfo().height/4,250,Or._lastDimensions.height),t=Math.max(this._editor.getLayoutInfo().width*.66,500,Or._lastDimensions.width);this._setHoverWidgetMaxDimensions(t,e)}_render(e){this._setRenderedHover(e),this._updateFont(),this._updateContent(e.domNode),this._updateMaxDimensions(),this.onContentsChanged(),this._editor.render()}getPosition(){return this._renderedHover?{position:this._renderedHover.showAtPosition,secondaryPosition:this._renderedHover.showAtSecondaryPosition,positionAffinity:this._renderedHover.shouldAppearBeforeContent?3:void 0,preference:[this._positionPreference??1]}:null}show(e){if(!this._editor||!this._editor.hasModel())return;this._render(e);const t=Hd(this._hover.containerDomNode),i=e.showAtPosition;this._positionPreference=this._findPositionPreference(t,i)??1,this.onContentsChanged(),e.shouldFocus&&this._hover.containerDomNode.focus(),this._onDidResize.fire();const s=this._hover.containerDomNode.ownerDocument.activeElement===this._hover.containerDomNode&&e7(this._configurationService.getValue("accessibility.verbosity.hover")===!0&&this._accessibilityService.isScreenReaderOptimized(),this._keybindingService.lookupKeybinding("editor.action.accessibleView")?.getAriaLabel()??"");s&&(this._hover.contentsDomNode.ariaLabel=this._hover.contentsDomNode.textContent+", "+s)}hide(){if(!this._renderedHover)return;const e=this._renderedHover.shouldFocus||this._hoverFocusedKey.get();this._setRenderedHover(void 0),this._resizableNode.maxSize=new rt(1/0,1/0),this._resizableNode.clearSashHoverState(),this._hoverFocusedKey.set(!1),this._editor.layoutContentWidget(this),e&&this._editor.focus()}_removeConstraintsRenderNormally(){const e=this._editor.getLayoutInfo();this._resizableNode.layout(e.height,e.width),this._setHoverWidgetDimensions("auto","auto")}setMinimumDimensions(e){this._minimumSize=new rt(Math.max(this._minimumSize.width,e.width),Math.max(this._minimumSize.height,e.height)),this._updateMinimumWidth()}_updateMinimumWidth(){const e=typeof this._contentWidth>"u"?this._minimumSize.width:Math.min(this._contentWidth,this._minimumSize.width);this._resizableNode.minSize=new rt(e,this._minimumSize.height)}onContentsChanged(){this._removeConstraintsRenderNormally();const e=this._hover.containerDomNode;let t=Hd(e),i=qp(e);if(this._resizableNode.layout(t,i),this._setHoverWidgetDimensions(i,t),t=Hd(e),i=qp(e),this._contentWidth=i,this._updateMinimumWidth(),this._resizableNode.layout(t,i),this._renderedHover?.showAtPosition){const n=Hd(this._hover.containerDomNode);this._positionPreference=this._findPositionPreference(n,this._renderedHover.showAtPosition)}this._layoutContentWidget()}focus(){this._hover.containerDomNode.focus()}scrollUp(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._editor.getOption(50);this._hover.scrollbar.setScrollPosition({scrollTop:e-t.lineHeight})}scrollDown(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._editor.getOption(50);this._hover.scrollbar.setScrollPosition({scrollTop:e+t.lineHeight})}scrollLeft(){const e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e-P4})}scrollRight(){const e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e+P4})}pageUp(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e-t})}pageDown(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e+t})}goToTop(){this._hover.scrollbar.setScrollPosition({scrollTop:0})}goToBottom(){this._hover.scrollbar.setScrollPosition({scrollTop:this._hover.scrollbar.getScrollDimensions().scrollHeight})}},Or=kc,kc.ID="editor.contrib.resizableContentHoverWidget",kc._lastDimensions=new rt(0,0),kc);xE=Or=Sce([d1(1,De),d1(2,lt),d1(3,ms),d1(4,vt)],xE);function O4(o,e,t,i,n,s){const r=t+n/2,a=i+s/2,l=Math.max(Math.abs(o-r)-n/2,0),c=Math.max(Math.abs(e-a)-s/2,0);return Math.sqrt(l*l+c*c)}class ew{get anchor(){return this._anchor}set anchor(e){this._anchor=e}get shouldFocus(){return this._shouldFocus}set shouldFocus(e){this._shouldFocus=e}get source(){return this._source}set source(e){this._source=e}get insistOnKeepingHoverVisible(){return this._insistOnKeepingHoverVisible}set insistOnKeepingHoverVisible(e){this._insistOnKeepingHoverVisible=e}constructor(e,t){this._editor=e,this._participants=t,this._anchor=null,this._shouldFocus=!1,this._source=0,this._insistOnKeepingHoverVisible=!1}static _getLineDecorations(e,t){if(t.type!==1&&!t.supportsMarkerHover)return[];const i=e.getModel(),n=t.range.startLineNumber;if(n>i.getLineCount())return[];const s=i.getLineMaxColumn(n);return e.getLineDecorations(n).filter(r=>{if(r.options.isWholeLine)return!0;const a=r.range.startLineNumber===n?r.range.startColumn:1,l=r.range.endLineNumber===n?r.range.endColumn:s;if(r.options.showIfCollapsed){if(a>t.range.startColumn+1||t.range.endColumn-1>l)return!1}else if(a>t.range.startColumn||t.range.endColumn>l)return!1;return!0})}computeAsync(e){const t=this._anchor;if(!this._editor.hasModel()||!t)return Ms.EMPTY;const i=ew._getLineDecorations(this._editor,t);return Ms.merge(this._participants.map(n=>n.computeAsync?n.computeAsync(t,i,e):Ms.EMPTY))}computeSync(){if(!this._editor.hasModel()||!this._anchor)return[];const e=ew._getLineDecorations(this._editor,this._anchor);let t=[];for(const i of this._participants)t=t.concat(i.computeSync(this._anchor,e));return Ag(t)}}class gB{constructor(e,t,i){this.anchor=e,this.hoverParts=t,this.isComplete=i}filter(e){const t=this.hoverParts.filter(i=>i.isValidForHoverAnchor(e));return t.length===this.hoverParts.length?this:new xce(this,this.anchor,t,this.isComplete)}}class xce extends gB{constructor(e,t,i,n){super(t,i,n),this.original=e}filter(e){return this.original.filter(e)}}var kce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Dce=function(o,e){return function(t,i){e(t,i,o)}};const F4=ce;let kE=class extends z{get hasContent(){return this._hasContent}constructor(e){super(),this._keybindingService=e,this.actions=[],this._hasContent=!1,this.hoverElement=F4("div.hover-row.status-bar"),this.hoverElement.tabIndex=0,this.actionsElement=Z(this.hoverElement,F4("div.actions"))}addAction(e){const t=this._keybindingService.lookupKeybinding(e.commandId),i=t?t.getLabel():null;this._hasContent=!0;const n=this._register(ey.render(this.actionsElement,e,i));return this.actions.push(n),n}append(e){const t=Z(this.actionsElement,e);return this._hasContent=!0,t}};kE=kce([Dce(0,vt)],kE);class Ice{constructor(e,t,i){this.provider=e,this.hover=t,this.ordinal=i}}async function Ece(o,e,t,i,n){const s=await Promise.resolve(o.provideHover(t,i,n)).catch($n);if(!(!s||!Nce(s)))return new Ice(o,s,e)}function pM(o,e,t,i,n=!1){const r=o.ordered(e,n).map((a,l)=>Ece(a,l,e,t,i));return Ms.fromPromises(r).coalesce()}function mB(o,e,t,i,n=!1){return pM(o,e,t,i,n).map(s=>s.hover).toPromise()}Wo("_executeHoverProvider",(o,e,t)=>{const i=o.get(Se);return mB(i.hoverProvider,e,t,ut.None)});Wo("_executeHoverProvider_recursive",(o,e,t)=>{const i=o.get(Se);return mB(i.hoverProvider,e,t,ut.None,!0)});function Nce(o){const e=typeof o.range<"u",t=typeof o.contents<"u"&&o.contents&&o.contents.length>0;return e&&t}var Tce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},ld=function(o,e){return function(t,i){e(t,i,o)}};const gf=ce,Mce=Wi("hover-increase-verbosity",ie.add,m("increaseHoverVerbosity","Icon for increaseing hover verbosity.")),Rce=Wi("hover-decrease-verbosity",ie.remove,m("decreaseHoverVerbosity","Icon for decreasing hover verbosity."));class hr{constructor(e,t,i,n,s,r=void 0){this.owner=e,this.range=t,this.contents=i,this.isBeforeContent=n,this.ordinal=s,this.source=r}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}class pB{constructor(e,t,i){this.hover=e,this.hoverProvider=t,this.hoverPosition=i}supportsVerbosityAction(e){switch(e){case is.Increase:return this.hover.canIncreaseVerbosity??!1;case is.Decrease:return this.hover.canDecreaseVerbosity??!1}}}let P_=class{constructor(e,t,i,n,s,r,a,l){this._editor=e,this._languageService=t,this._openerService=i,this._configurationService=n,this._languageFeaturesService=s,this._keybindingService=r,this._hoverService=a,this._commandService=l,this.hoverOrdinal=3}createLoadingMessage(e){return new hr(this,e.range,[new Js().appendText(m("modesContentHover.loading","Loading..."))],!1,2e3)}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];const i=this._editor.getModel(),n=e.range.startLineNumber,s=i.getLineMaxColumn(n),r=[];let a=1e3;const l=i.getLineLength(n),c=i.getLanguageIdAtPosition(e.range.startLineNumber,e.range.startColumn),d=this._editor.getOption(118),h=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:c});let u=!1;d>=0&&l>d&&e.range.startColumn>=d&&(u=!0,r.push(new hr(this,e.range,[{value:m("stopped rendering","Rendering paused for long line for performance reasons. This can be configured via `editor.stopRenderingLineAfter`.")}],!1,a++))),!u&&typeof h=="number"&&l>=h&&r.push(new hr(this,e.range,[{value:m("too many characters","Tokenization is skipped for long lines for performance reasons. This can be configured via `editor.maxTokenizationLineLength`.")}],!1,a++));let f=!1;for(const g of t){const p=g.range.startLineNumber===n?g.range.startColumn:1,_=g.range.endLineNumber===n?g.range.endColumn:s,b=g.options.hoverMessage;if(!b||bg(b))continue;g.options.beforeContentClassName&&(f=!0);const C=new I(e.range.startLineNumber,p,e.range.startLineNumber,_);r.push(new hr(this,C,T5(b),f,a++))}return r}computeAsync(e,t,i){if(!this._editor.hasModel()||e.type!==1)return Ms.EMPTY;const n=this._editor.getModel(),s=this._languageFeaturesService.hoverProvider;return s.has(n)?this._getMarkdownHovers(s,n,e,i):Ms.EMPTY}_getMarkdownHovers(e,t,i,n){const s=i.range.getStartPosition();return pM(e,t,s,n).filter(l=>!bg(l.hover.contents)).map(l=>{const c=l.hover.range?I.lift(l.hover.range):i.range,d=new pB(l.hover,l.provider,s);return new hr(this,c,l.hover.contents,!1,l.ordinal,d)})}renderHoverParts(e,t){return this._renderedHoverParts=new Ace(t,e.fragment,this,this._editor,this._languageService,this._openerService,this._commandService,this._keybindingService,this._hoverService,this._configurationService,e.onContentsChanged),this._renderedHoverParts}updateMarkdownHoverVerbosityLevel(e,t,i){return Promise.resolve(this._renderedHoverParts?.updateMarkdownHoverPartVerbosityLevel(e,t,i))}};P_=Tce([ld(1,qt),ld(2,Vo),ld(3,lt),ld(4,Se),ld(5,vt),ld(6,au),ld(7,hi)],P_);class h1{constructor(e,t,i){this.hoverPart=e,this.hoverElement=t,this.disposables=i}dispose(){this.disposables.dispose()}}class Ace{constructor(e,t,i,n,s,r,a,l,c,d,h){this._hoverParticipant=i,this._editor=n,this._languageService=s,this._openerService=r,this._commandService=a,this._keybindingService=l,this._hoverService=c,this._configurationService=d,this._onFinishedRendering=h,this._ongoingHoverOperations=new Map,this._disposables=new X,this.renderedHoverParts=this._renderHoverParts(e,t,this._onFinishedRendering),this._disposables.add(_e(()=>{this.renderedHoverParts.forEach(u=>{u.dispose()}),this._ongoingHoverOperations.forEach(u=>{u.tokenSource.dispose(!0)})}))}_renderHoverParts(e,t,i){return e.sort(rs(n=>n.ordinal,ia)),e.map(n=>{const s=this._renderHoverPart(n,i);return t.appendChild(s.hoverElement),s})}_renderHoverPart(e,t){const i=this._renderMarkdownHover(e,t),n=i.hoverElement,s=e.source,r=new X;if(r.add(i),!s)return new h1(e,n,r);const a=s.supportsVerbosityAction(is.Increase),l=s.supportsVerbosityAction(is.Decrease);if(!a&&!l)return new h1(e,n,r);const c=gf("div.verbosity-actions");return n.prepend(c),r.add(this._renderHoverExpansionAction(c,is.Increase,a)),r.add(this._renderHoverExpansionAction(c,is.Decrease,l)),new h1(e,n,r)}_renderMarkdownHover(e,t){return Pce(this._editor,e,this._languageService,this._openerService,t)}_renderHoverExpansionAction(e,t,i){const n=new X,s=t===is.Increase,r=Z(e,gf(Ee.asCSSSelector(s?Mce:Rce)));r.tabIndex=0;const a=new gg("mouse",!1,{target:e,position:{hoverPosition:0}},this._configurationService,this._hoverService);if(n.add(this._hoverService.setupManagedHover(a,r,Oce(this._keybindingService,t))),!i)return r.classList.add("disabled"),n;r.classList.add("enabled");const l=()=>this._commandService.executeCommand(t===is.Increase?Ey:Ny);return n.add(new t7(r,l)),n.add(new i7(r,l,[3,10])),n}async updateMarkdownHoverPartVerbosityLevel(e,t,i=!0){const n=this._editor.getModel();if(!n)return;const s=this._getRenderedHoverPartAtIndex(t),r=s?.hoverPart.source;if(!s||!r?.supportsVerbosityAction(e))return;const a=await this._fetchHover(r,n,e);if(!a)return;const l=new pB(a,r.hoverProvider,r.hoverPosition),c=s.hoverPart,d=new hr(this._hoverParticipant,c.range,a.contents,c.isBeforeContent,c.ordinal,l),h=this._renderHoverPart(d,this._onFinishedRendering);return this._replaceRenderedHoverPartAtIndex(t,h,d),i&&this._focusOnHoverPartWithIndex(t),{hoverPart:d,hoverElement:h.hoverElement}}async _fetchHover(e,t,i){let n=i===is.Increase?1:-1;const s=e.hoverProvider,r=this._ongoingHoverOperations.get(s);r&&(r.tokenSource.cancel(),n+=r.verbosityDelta);const a=new In;this._ongoingHoverOperations.set(s,{verbosityDelta:n,tokenSource:a});const l={verbosityRequest:{verbosityDelta:n,previousHover:e.hover}};let c;try{c=await Promise.resolve(s.provideHover(t,e.hoverPosition,a.token,l))}catch(d){$n(d)}return a.dispose(),this._ongoingHoverOperations.delete(s),c}_replaceRenderedHoverPartAtIndex(e,t,i){if(e>=this.renderedHoverParts.length||e<0)return;const n=this.renderedHoverParts[e],s=n.hoverElement,r=t.hoverElement,a=Array.from(r.children);s.replaceChildren(...a);const l=new h1(i,s,t.disposables);s.focus(),n.dispose(),this.renderedHoverParts[e]=l}_focusOnHoverPartWithIndex(e){this.renderedHoverParts[e].hoverElement.focus()}_getRenderedHoverPartAtIndex(e){return this.renderedHoverParts[e]}dispose(){this._disposables.dispose()}}function Pce(o,e,t,i,n){const s=new X,r=gf("div.hover-row"),a=gf("div.hover-row-contents");r.appendChild(a);const l=e.contents;for(const d of l){if(bg(d))continue;const h=gf("div.markdown-hover"),u=Z(h,gf("div.hover-contents")),f=s.add(new Wh({editor:o},t,i));s.add(f.onDidRenderAsync(()=>{u.className="hover-contents code-hover-contents",n()}));const g=s.add(f.render(d));u.appendChild(g.element),a.appendChild(h)}return{hoverPart:e,hoverElement:r,dispose(){s.dispose()}}}function Oce(o,e){switch(e){case is.Increase:{const t=o.lookupKeybinding(Ey);return t?m("increaseVerbosityWithKb","Increase Hover Verbosity ({0})",t.getLabel()):m("increaseVerbosity","Increase Hover Verbosity")}case is.Decrease:{const t=o.lookupKeybinding(Ny);return t?m("decreaseVerbosityWithKb","Decrease Hover Verbosity ({0})",t.getLabel()):m("decreaseVerbosity","Decrease Hover Verbosity")}}}var _B=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},DE=function(o,e){return function(t,i){e(t,i,o)}};let tw=class{constructor(e){this._editorWorkerService=e}async provideDocumentColors(e,t){return this._editorWorkerService.computeDefaultDocumentColors(e.uri)}provideColorPresentations(e,t,i){const n=t.range,s=t.color,r=s.alpha,a=new q(new qe(Math.round(255*s.red),Math.round(255*s.green),Math.round(255*s.blue),r)),l=r?q.Format.CSS.formatRGB(a):q.Format.CSS.formatRGBA(a),c=r?q.Format.CSS.formatHSL(a):q.Format.CSS.formatHSLA(a),d=r?q.Format.CSS.formatHex(a):q.Format.CSS.formatHexA(a),h=[];return h.push({label:l,textEdit:{range:n,text:l}}),h.push({label:c,textEdit:{range:n,text:c}}),h.push({label:d,textEdit:{range:n,text:d}}),h}};tw=_B([DE(0,Zc)],tw);let IE=class extends z{constructor(e,t){super(),this._register(e.colorProvider.register("*",new tw(t)))}};IE=_B([DE(0,Se),DE(1,Zc)],IE);Ote(IE);async function bB(o,e,t,i=!0){return _M(new Fce,o,e,t,i)}function CB(o,e,t,i){return Promise.resolve(t.provideColorPresentations(o,e,i))}class Fce{constructor(){}async compute(e,t,i,n){const s=await e.provideDocumentColors(t,i);if(Array.isArray(s))for(const r of s)n.push({colorInfo:r,provider:e});return Array.isArray(s)}}class Bce{constructor(){}async compute(e,t,i,n){const s=await e.provideDocumentColors(t,i);if(Array.isArray(s))for(const r of s)n.push({range:r.range,color:[r.color.red,r.color.green,r.color.blue,r.color.alpha]});return Array.isArray(s)}}class Wce{constructor(e){this.colorInfo=e}async compute(e,t,i,n){const s=await e.provideColorPresentations(t,this.colorInfo,ut.None);return Array.isArray(s)&&n.push(...s),Array.isArray(s)}}async function _M(o,e,t,i,n){let s=!1,r;const a=[],l=e.ordered(t);for(let c=l.length-1;c>=0;c--){const d=l[c];if(d instanceof tw)r=d;else try{await o.compute(d,t,i,a)&&(s=!0)}catch(h){$n(h)}}return s?a:r&&n?(await o.compute(r,t,i,a),a):[]}function vB(o,e){const{colorProvider:t}=o.get(Se),i=o.get(Fi).getModel(e);if(!i)throw na();const n=o.get(lt).getValue("editor.defaultColorDecorators",{resource:e});return{model:i,colorProviderRegistry:t,isDefaultColorDecoratorsEnabled:n}}bt.registerCommand("_executeDocumentColorProvider",function(o,...e){const[t]=e;if(!(t instanceof ve))throw na();const{model:i,colorProviderRegistry:n,isDefaultColorDecoratorsEnabled:s}=vB(o,t);return _M(new Bce,n,i,ut.None,s)});bt.registerCommand("_executeColorPresentationProvider",function(o,...e){const[t,i]=e,{uri:n,range:s}=i;if(!(n instanceof ve)||!Array.isArray(t)||t.length!==4||!I.isIRange(s))throw na();const{model:r,colorProviderRegistry:a,isDefaultColorDecoratorsEnabled:l}=vB(o,n),[c,d,h,u]=t;return _M(new Wce({range:s,color:{red:c,green:d,blue:h,alpha:u}}),a,r,ut.None,l)});var Hce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},mL=function(o,e){return function(t,i){e(t,i,o)}},EE;const Vce=Object.create({});var Dc;let Tg=(Dc=class extends z{constructor(e,t,i,n){super(),this._editor=e,this._configurationService=t,this._languageFeaturesService=i,this._localToDispose=this._register(new X),this._decorationsIds=[],this._colorDatas=new Map,this._colorDecoratorIds=this._editor.createDecorationsCollection(),this._ruleFactory=new kv(this._editor),this._decoratorLimitReporter=new zce,this._colorDecorationClassRefs=this._register(new X),this._debounceInformation=n.for(i.colorProvider,"Document Colors",{min:EE.RECOMPUTE_TIME}),this._register(e.onDidChangeModel(()=>{this._isColorDecoratorsEnabled=this.isEnabled(),this.updateColors()})),this._register(e.onDidChangeModelLanguage(()=>this.updateColors())),this._register(i.colorProvider.onDidChange(()=>this.updateColors())),this._register(e.onDidChangeConfiguration(s=>{const r=this._isColorDecoratorsEnabled;this._isColorDecoratorsEnabled=this.isEnabled(),this._isDefaultColorDecoratorsEnabled=this._editor.getOption(148);const a=r!==this._isColorDecoratorsEnabled||s.hasChanged(21),l=s.hasChanged(148);(a||l)&&(this._isColorDecoratorsEnabled?this.updateColors():this.removeAllDecorations())})),this._timeoutTimer=null,this._computePromise=null,this._isColorDecoratorsEnabled=this.isEnabled(),this._isDefaultColorDecoratorsEnabled=this._editor.getOption(148),this.updateColors()}isEnabled(){const e=this._editor.getModel();if(!e)return!1;const t=e.getLanguageId(),i=this._configurationService.getValue(t);if(i&&typeof i=="object"){const n=i.colorDecorators;if(n&&n.enable!==void 0&&!n.enable)return n.enable}return this._editor.getOption(20)}static get(e){return e.getContribution(this.ID)}dispose(){this.stop(),this.removeAllDecorations(),super.dispose()}updateColors(){if(this.stop(),!this._isColorDecoratorsEnabled)return;const e=this._editor.getModel();!e||!this._languageFeaturesService.colorProvider.has(e)||(this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._timeoutTimer||(this._timeoutTimer=new wr,this._timeoutTimer.cancelAndSet(()=>{this._timeoutTimer=null,this.beginCompute()},this._debounceInformation.get(e)))})),this.beginCompute())}async beginCompute(){this._computePromise=wa(async e=>{const t=this._editor.getModel();if(!t)return[];const i=new Hs(!1),n=await bB(this._languageFeaturesService.colorProvider,t,e,this._isDefaultColorDecoratorsEnabled);return this._debounceInformation.update(t,i.elapsed()),n});try{const e=await this._computePromise;this.updateDecorations(e),this.updateColorDecorators(e),this._computePromise=null}catch(e){Ze(e)}}stop(){this._timeoutTimer&&(this._timeoutTimer.cancel(),this._timeoutTimer=null),this._computePromise&&(this._computePromise.cancel(),this._computePromise=null),this._localToDispose.clear()}updateDecorations(e){const t=e.map(i=>({range:{startLineNumber:i.colorInfo.range.startLineNumber,startColumn:i.colorInfo.range.startColumn,endLineNumber:i.colorInfo.range.endLineNumber,endColumn:i.colorInfo.range.endColumn},options:kt.EMPTY}));this._editor.changeDecorations(i=>{this._decorationsIds=i.deltaDecorations(this._decorationsIds,t),this._colorDatas=new Map,this._decorationsIds.forEach((n,s)=>this._colorDatas.set(n,e[s]))})}updateColorDecorators(e){this._colorDecorationClassRefs.clear();const t=[],i=this._editor.getOption(21);for(let s=0;sthis._colorDatas.has(n.id));return i.length===0?null:this._colorDatas.get(i[0].id)}isColorDecoration(e){return this._colorDecoratorIds.has(e)}},EE=Dc,Dc.ID="editor.contrib.colorDetector",Dc.RECOMPUTE_TIME=1e3,Dc);Tg=EE=Hce([mL(1,lt),mL(2,Se),mL(3,q0)],Tg);class zce{constructor(){this._onDidChange=new A,this._computed=0,this._limited=!1}update(e,t){(e!==this._computed||t!==this._limited)&&(this._computed=e,this._limited=t,this._onDidChange.fire())}}Ho(Tg.ID,Tg,1);class Uce{get color(){return this._color}set color(e){this._color.equals(e)||(this._color=e,this._onDidChangeColor.fire(e))}get presentation(){return this.colorPresentations[this.presentationIndex]}get colorPresentations(){return this._colorPresentations}set colorPresentations(e){this._colorPresentations=e,this.presentationIndex>e.length-1&&(this.presentationIndex=0),this._onDidChangePresentation.fire(this.presentation)}constructor(e,t,i){this.presentationIndex=i,this._onColorFlushed=new A,this.onColorFlushed=this._onColorFlushed.event,this._onDidChangeColor=new A,this.onDidChangeColor=this._onDidChangeColor.event,this._onDidChangePresentation=new A,this.onDidChangePresentation=this._onDidChangePresentation.event,this.originalColor=e,this._color=e,this._colorPresentations=t}selectNextColorPresentation(){this.presentationIndex=(this.presentationIndex+1)%this.colorPresentations.length,this.flushColor(),this._onDidChangePresentation.fire(this.presentation)}guessColorPresentation(e,t){let i=-1;for(let n=0;n{this.backgroundColor=r.getColor(RC)||q.white})),this._register(U(this._pickedColorNode,ee.CLICK,()=>this.model.selectNextColorPresentation())),this._register(U(this._originalColorNode,ee.CLICK,()=>{this.model.color=this.model.originalColor,this.model.flushColor()})),this._register(t.onDidChangeColor(this.onDidChangeColor,this)),this._register(t.onDidChangePresentation(this.onDidChangePresentation,this)),this._pickedColorNode.style.backgroundColor=q.Format.CSS.format(t.color)||"",this._pickedColorNode.classList.toggle("light",t.color.rgba.a<.5?this.backgroundColor.isLighter():t.color.isLighter()),this.onDidChangeColor(this.model.color),this.showingStandaloneColorPicker&&(this._domNode.classList.add("standalone-colorpicker"),this._closeButton=this._register(new Kce(this._domNode)))}get closeButton(){return this._closeButton}get pickedColorNode(){return this._pickedColorNode}get originalColorNode(){return this._originalColorNode}onDidChangeColor(e){this._pickedColorNode.style.backgroundColor=q.Format.CSS.format(e)||"",this._pickedColorNode.classList.toggle("light",e.rgba.a<.5?this.backgroundColor.isLighter():e.isLighter()),this.onDidChangePresentation()}onDidChangePresentation(){this._pickedColorPresentation.textContent=this.model.presentation?this.model.presentation.label:""}}class Kce extends z{constructor(e){super(),this._onClicked=this._register(new A),this.onClicked=this._onClicked.event,this._button=document.createElement("div"),this._button.classList.add("close-button"),Z(e,this._button);const t=document.createElement("div");t.classList.add("close-button-inner-div"),Z(this._button,t),Z(t,Is(".button"+Ee.asCSSSelector(Wi("color-picker-close",ie.close,m("closeIcon","Icon to close the color picker"))))).classList.add("close-icon"),this._register(U(this._button,ee.CLICK,()=>{this._onClicked.fire()}))}}class jce extends z{constructor(e,t,i,n=!1){super(),this.model=t,this.pixelRatio=i,this._insertButton=null,this._domNode=Is(".colorpicker-body"),Z(e,this._domNode),this._saturationBox=new qce(this._domNode,this.model,this.pixelRatio),this._register(this._saturationBox),this._register(this._saturationBox.onDidChange(this.onDidSaturationValueChange,this)),this._register(this._saturationBox.onColorFlushed(this.flushColor,this)),this._opacityStrip=new Gce(this._domNode,this.model,n),this._register(this._opacityStrip),this._register(this._opacityStrip.onDidChange(this.onDidOpacityChange,this)),this._register(this._opacityStrip.onColorFlushed(this.flushColor,this)),this._hueStrip=new Zce(this._domNode,this.model,n),this._register(this._hueStrip),this._register(this._hueStrip.onDidChange(this.onDidHueChange,this)),this._register(this._hueStrip.onColorFlushed(this.flushColor,this)),n&&(this._insertButton=this._register(new Yce(this._domNode)),this._domNode.classList.add("standalone-colorpicker"))}flushColor(){this.model.flushColor()}onDidSaturationValueChange({s:e,v:t}){const i=this.model.color.hsva;this.model.color=new q(new ea(i.h,e,t,i.a))}onDidOpacityChange(e){const t=this.model.color.hsva;this.model.color=new q(new ea(t.h,t.s,t.v,e))}onDidHueChange(e){const t=this.model.color.hsva,i=(1-e)*360;this.model.color=new q(new ea(i===360?0:i,t.s,t.v,t.a))}get domNode(){return this._domNode}get saturationBox(){return this._saturationBox}get enterButton(){return this._insertButton}layout(){this._saturationBox.layout(),this._opacityStrip.layout(),this._hueStrip.layout()}}class qce extends z{constructor(e,t,i){super(),this.model=t,this.pixelRatio=i,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new A,this.onColorFlushed=this._onColorFlushed.event,this._domNode=Is(".saturation-wrap"),Z(e,this._domNode),this._canvas=document.createElement("canvas"),this._canvas.className="saturation-box",Z(this._domNode,this._canvas),this.selection=Is(".saturation-selection"),Z(this._domNode,this.selection),this.layout(),this._register(U(this._domNode,ee.POINTER_DOWN,n=>this.onPointerDown(n))),this._register(this.model.onDidChangeColor(this.onDidChangeColor,this)),this.monitor=null}get domNode(){return this._domNode}onPointerDown(e){if(!e.target||!(e.target instanceof Element))return;this.monitor=this._register(new Hg);const t=gi(this._domNode);e.target!==this.selection&&this.onDidChangePosition(e.offsetX,e.offsetY),this.monitor.startMonitoring(e.target,e.pointerId,e.buttons,n=>this.onDidChangePosition(n.pageX-t.left,n.pageY-t.top),()=>null);const i=U(e.target.ownerDocument,ee.POINTER_UP,()=>{this._onColorFlushed.fire(),i.dispose(),this.monitor&&(this.monitor.stopMonitoring(!0),this.monitor=null)},!0)}onDidChangePosition(e,t){const i=Math.max(0,Math.min(1,e/this.width)),n=Math.max(0,Math.min(1,1-t/this.height));this.paintSelection(i,n),this._onDidChange.fire({s:i,v:n})}layout(){this.width=this._domNode.offsetWidth,this.height=this._domNode.offsetHeight,this._canvas.width=this.width*this.pixelRatio,this._canvas.height=this.height*this.pixelRatio,this.paint();const e=this.model.color.hsva;this.paintSelection(e.s,e.v)}paint(){const e=this.model.color.hsva,t=new q(new ea(e.h,1,1,1)),i=this._canvas.getContext("2d"),n=i.createLinearGradient(0,0,this._canvas.width,0);n.addColorStop(0,"rgba(255, 255, 255, 1)"),n.addColorStop(.5,"rgba(255, 255, 255, 0.5)"),n.addColorStop(1,"rgba(255, 255, 255, 0)");const s=i.createLinearGradient(0,0,0,this._canvas.height);s.addColorStop(0,"rgba(0, 0, 0, 0)"),s.addColorStop(1,"rgba(0, 0, 0, 1)"),i.rect(0,0,this._canvas.width,this._canvas.height),i.fillStyle=q.Format.CSS.format(t),i.fill(),i.fillStyle=n,i.fill(),i.fillStyle=s,i.fill()}paintSelection(e,t){this.selection.style.left=`${e*this.width}px`,this.selection.style.top=`${this.height-t*this.height}px`}onDidChangeColor(e){if(this.monitor&&this.monitor.isMonitoring())return;this.paint();const t=e.hsva;this.paintSelection(t.s,t.v)}}class wB extends z{constructor(e,t,i=!1){super(),this.model=t,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new A,this.onColorFlushed=this._onColorFlushed.event,i?(this.domNode=Z(e,Is(".standalone-strip")),this.overlay=Z(this.domNode,Is(".standalone-overlay"))):(this.domNode=Z(e,Is(".strip")),this.overlay=Z(this.domNode,Is(".overlay"))),this.slider=Z(this.domNode,Is(".slider")),this.slider.style.top="0px",this._register(U(this.domNode,ee.POINTER_DOWN,n=>this.onPointerDown(n))),this._register(t.onDidChangeColor(this.onDidChangeColor,this)),this.layout()}layout(){this.height=this.domNode.offsetHeight-this.slider.offsetHeight;const e=this.getValue(this.model.color);this.updateSliderPosition(e)}onDidChangeColor(e){const t=this.getValue(e);this.updateSliderPosition(t)}onPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const t=this._register(new Hg),i=gi(this.domNode);this.domNode.classList.add("grabbing"),e.target!==this.slider&&this.onDidChangeTop(e.offsetY),t.startMonitoring(e.target,e.pointerId,e.buttons,s=>this.onDidChangeTop(s.pageY-i.top),()=>null);const n=U(e.target.ownerDocument,ee.POINTER_UP,()=>{this._onColorFlushed.fire(),n.dispose(),t.stopMonitoring(!0),this.domNode.classList.remove("grabbing")},!0)}onDidChangeTop(e){const t=Math.max(0,Math.min(1,1-e/this.height));this.updateSliderPosition(t),this._onDidChange.fire(t)}updateSliderPosition(e){this.slider.style.top=`${(1-e)*this.height}px`}}class Gce extends wB{constructor(e,t,i=!1){super(e,t,i),this.domNode.classList.add("opacity-strip"),this.onDidChangeColor(this.model.color)}onDidChangeColor(e){super.onDidChangeColor(e);const{r:t,g:i,b:n}=e.rgba,s=new q(new qe(t,i,n,1)),r=new q(new qe(t,i,n,0));this.overlay.style.background=`linear-gradient(to bottom, ${s} 0%, ${r} 100%)`}getValue(e){return e.hsva.a}}class Zce extends wB{constructor(e,t,i=!1){super(e,t,i),this.domNode.classList.add("hue-strip")}getValue(e){return 1-e.hsva.h/360}}class Yce extends z{constructor(e){super(),this._onClicked=this._register(new A),this.onClicked=this._onClicked.event,this._button=Z(e,document.createElement("button")),this._button.classList.add("insert-button"),this._button.textContent="Insert",this._register(U(this._button,ee.CLICK,()=>{this._onClicked.fire()}))}get button(){return this._button}}class Qce extends xr{constructor(e,t,i,n,s=!1){super(),this.model=t,this.pixelRatio=i,this._register(Zp.getInstance(fe(e)).onDidChange(()=>this.layout())),this._domNode=Is(".colorpicker-widget"),e.appendChild(this._domNode),this.header=this._register(new $ce(this._domNode,this.model,n,s)),this.body=this._register(new jce(this._domNode,this.model,this.pixelRatio,s))}layout(){this.body.layout()}get domNode(){return this._domNode}}var yB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},SB=function(o,e){return function(t,i){e(t,i,o)}};class Xce{constructor(e,t,i,n){this.owner=e,this.range=t,this.model=i,this.provider=n,this.forceShowAtRange=!0}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}let iw=class{constructor(e,t){this._editor=e,this._themeService=t,this.hoverOrdinal=2}computeSync(e,t){return[]}computeAsync(e,t,i){return Ms.fromPromise(this._computeAsync(e,t,i))}async _computeAsync(e,t,i){if(!this._editor.hasModel())return[];const n=Tg.get(this._editor);if(!n)return[];for(const s of t){if(!n.isColorDecoration(s))continue;const r=n.getColorData(s.range.getStartPosition());if(r)return[await LB(this,this._editor.getModel(),r.colorInfo,r.provider)]}return[]}renderHoverParts(e,t){const i=xB(this,this._editor,this._themeService,t,e);if(!i)return new Ng([]);this._colorPicker=i.colorPicker;const n={hoverPart:i.hoverPart,hoverElement:this._colorPicker.domNode,dispose(){i.disposables.dispose()}};return new Ng([n])}handleResize(){this._colorPicker?.layout()}isColorPickerVisible(){return!!this._colorPicker}};iw=yB([SB(1,en)],iw);class Jce{constructor(e,t,i,n){this.owner=e,this.range=t,this.model=i,this.provider=n}}let nw=class{constructor(e,t){this._editor=e,this._themeService=t,this._color=null}async createColorHover(e,t,i){if(!this._editor.hasModel()||!Tg.get(this._editor))return null;const s=await bB(i,this._editor.getModel(),ut.None);let r=null,a=null;for(const h of s){const u=h.colorInfo;I.containsRange(u.range,e.range)&&(r=u,a=h.provider)}const l=r??e,c=a??t,d=!!r;return{colorHover:await LB(this,this._editor.getModel(),l,c),foundInEditor:d}}async updateEditorModel(e){if(!this._editor.hasModel())return;const t=e.model;let i=new I(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn);this._color&&(await X1(this._editor.getModel(),t,this._color,i,e),i=kB(this._editor,i,t))}renderHoverParts(e,t){return xB(this,this._editor,this._themeService,t,e)}set color(e){this._color=e}get color(){return this._color}};nw=yB([SB(1,en)],nw);async function LB(o,e,t,i){const n=e.getValueInRange(t.range),{red:s,green:r,blue:a,alpha:l}=t.color,c=new qe(Math.round(s*255),Math.round(r*255),Math.round(a*255),l),d=new q(c),h=await CB(e,t,i,ut.None),u=new Uce(d,[],0);return u.colorPresentations=h||[],u.guessColorPresentation(d,n),o instanceof iw?new Xce(o,I.lift(t.range),u,i):new Jce(o,I.lift(t.range),u,i)}function xB(o,e,t,i,n){if(i.length===0||!e.hasModel())return;if(n.setMinimumDimensions){const u=e.getOption(67)+8;n.setMinimumDimensions(new rt(302,u))}const s=new X,r=i[0],a=e.getModel(),l=r.model,c=s.add(new Qce(n.fragment,l,e.getOption(144),t,o instanceof nw));let d=!1,h=new I(r.range.startLineNumber,r.range.startColumn,r.range.endLineNumber,r.range.endColumn);if(o instanceof nw){const u=r.model.color;o.color=u,X1(a,l,u,h,r),s.add(l.onColorFlushed(f=>{o.color=f}))}else s.add(l.onColorFlushed(async u=>{await X1(a,l,u,h,r),d=!0,h=kB(e,h,l)}));return s.add(l.onDidChangeColor(u=>{X1(a,l,u,h,r)})),s.add(e.onDidChangeModelContent(u=>{d?d=!1:(n.hide(),e.focus())})),{hoverPart:r,colorPicker:c,disposables:s}}function kB(o,e,t){const i=[],n=t.presentation.textEdit??{range:e,text:t.presentation.label,forceMoveMarkers:!1};i.push(n),t.presentation.additionalTextEdits&&i.push(...t.presentation.additionalTextEdits);const s=I.lift(n.range),r=o.getModel()._setTrackedRange(null,s,3);return o.executeEdits("colorpicker",i),o.pushUndoStop(),o.getModel()._getTrackedRange(r)??s}async function X1(o,e,t,i,n){const s=await CB(o,{range:i,color:{red:t.rgba.r/255,green:t.rgba.g/255,blue:t.rgba.b/255,alpha:t.rgba.a}},n.provider,ut.None);e.colorPresentations=s||[]}class DB{constructor(e,t){this.range=e,this.direction=t}}class bM{constructor(e,t,i){this.hint=e,this.anchor=t,this.provider=i,this._isResolved=!1}with(e){const t=new bM(this.hint,e.anchor,this.provider);return t._isResolved=this._isResolved,t._currentResolve=this._currentResolve,t}async resolve(e){if(typeof this.provider.resolveInlayHint=="function"){if(this._currentResolve)return await this._currentResolve,e.isCancellationRequested?void 0:this.resolve(e);this._isResolved||(this._currentResolve=this._doResolve(e).finally(()=>this._currentResolve=void 0)),await this._currentResolve}}async _doResolve(e){try{const t=await Promise.resolve(this.provider.resolveInlayHint(this.hint,e));this.hint.tooltip=t?.tooltip??this.hint.tooltip,this.hint.label=t?.label??this.hint.label,this.hint.textEdits=t?.textEdits??this.hint.textEdits,this._isResolved=!0}catch(t){$n(t),this._isResolved=!1}}}const If=class If{static async create(e,t,i,n){const s=[],r=e.ordered(t).reverse().map(a=>i.map(async l=>{try{const c=await a.provideInlayHints(t,l,n);(c?.hints.length||a.onDidChangeInlayHints)&&s.push([c??If._emptyInlayHintList,a])}catch(c){$n(c)}}));if(await Promise.all(r.flat()),n.isCancellationRequested||t.isDisposed())throw new ha;return new If(i,s,t)}constructor(e,t,i){this._disposables=new X,this.ranges=e,this.provider=new Set;const n=[];for(const[s,r]of t){this._disposables.add(s),this.provider.add(r);for(const a of s.hints){const l=i.validatePosition(a.position);let c="before";const d=If._getRangeAtPosition(i,l);let h;d.getStartPosition().isBefore(l)?(h=I.fromPositions(d.getStartPosition(),l),c="after"):(h=I.fromPositions(l,d.getEndPosition()),c="before"),n.push(new bM(a,new DB(h,c),r))}}this.items=n.sort((s,r)=>P.compare(s.hint.position,r.hint.position))}dispose(){this._disposables.dispose()}static _getRangeAtPosition(e,t){const i=t.lineNumber,n=e.getWordAtPosition(t);if(n)return new I(i,n.startColumn,i,n.endColumn);e.tokenization.tokenizeIfCheap(i);const s=e.tokenization.getLineTokens(i),r=t.column-1,a=s.findTokenIndexAtOffset(r);let l=s.getStartOffset(a),c=s.getEndOffset(a);return c-l===1&&(l===r&&a>1?(l=s.getStartOffset(a-1),c=s.getEndOffset(a-1)):c===r&&aRf(f)?f.command.id:IB()));for(const f of Nl.all())h.has(f.desc.id)&&d.push(new Fs(f.desc.id,so.label(f.desc,{renderShortTitle:!0}),void 0,!0,async()=>{const g=await n.createModelReference(c.uri);try{const p=new Ig(g.object.textEditorModel,I.getStartPosition(c.range)),_=i.item.anchor.range;await a.invokeFunction(f.runEditorCommand.bind(f),e,p,_)}finally{g.dispose()}}));if(i.part.command){const{command:f}=i.part;d.push(new Gi),d.push(new Fs(f.id,f.title,void 0,!0,async()=>{try{await r.executeCommand(f.id,...f.arguments??[])}catch(g){l.notify({severity:bT.Error,source:i.item.provider.displayName,message:g})}}))}const u=e.getOption(128);s.showContextMenu({domForShadowRoot:u?e.getDomNode()??void 0:void 0,getAnchor:()=>{const f=gi(t);return{x:f.left,y:f.top+f.height+8}},getActions:()=>d,onHide:()=>{e.focus()},autoSelectFirstItem:!0})}async function ide(o,e,t,i){const s=await o.get(fo).createModelReference(i.uri);await t.invokeWithinContext(async r=>{const a=e.hasSideBySideModifier,l=r.get(De),c=qn.inPeekEditor.getValue(l),d=!a&&t.getOption(89)&&!c;return new db({openToSide:a,openInPeek:d,muteMessage:!0},{title:{value:"",original:""},id:"",precondition:void 0}).run(r,new Ig(s.object.textEditorModel,I.getStartPosition(i.range)),I.lift(i.range))}),s.dispose()}var nde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Bu=function(o,e){return function(t,i){e(t,i,o)}},Uu;class ow{constructor(){this._entries=new ou(50)}get(e){const t=ow._key(e);return this._entries.get(t)}set(e,t){const i=ow._key(e);this._entries.set(i,t)}static _key(e){return`${e.uri.toString()}/${e.getVersionId()}`}}const EB=He("IInlayHintsCache");Qe(EB,ow,1);class NE{constructor(e,t){this.item=e,this.index=t}get part(){const e=this.item.hint.label;return typeof e=="string"?{label:e}:e[this.index]}}class sde{constructor(e,t){this.part=e,this.hasTriggerModifier=t}}var ml;let TE=(ml=class{static get(e){return e.getContribution(Uu.ID)??void 0}constructor(e,t,i,n,s,r,a){this._editor=e,this._languageFeaturesService=t,this._inlayHintsCache=n,this._commandService=s,this._notificationService=r,this._instaService=a,this._disposables=new X,this._sessionDisposables=new X,this._decorationsMetadata=new Map,this._ruleFactory=new kv(this._editor),this._activeRenderMode=0,this._debounceInfo=i.for(t.inlayHintsProvider,"InlayHint",{min:25}),this._disposables.add(t.inlayHintsProvider.onDidChange(()=>this._update())),this._disposables.add(e.onDidChangeModel(()=>this._update())),this._disposables.add(e.onDidChangeModelLanguage(()=>this._update())),this._disposables.add(e.onDidChangeConfiguration(l=>{l.hasChanged(142)&&this._update()})),this._update()}dispose(){this._sessionDisposables.dispose(),this._removeAllDecorations(),this._disposables.dispose()}_update(){this._sessionDisposables.clear(),this._removeAllDecorations();const e=this._editor.getOption(142);if(e.enabled==="off")return;const t=this._editor.getModel();if(!t||!this._languageFeaturesService.inlayHintsProvider.has(t))return;if(e.enabled==="on")this._activeRenderMode=0;else{let a,l;e.enabled==="onUnlessPressed"?(a=0,l=1):(a=1,l=0),this._activeRenderMode=a,this._sessionDisposables.add(rl.getInstance().event(c=>{if(!this._editor.hasModel())return;const d=c.altKey&&c.ctrlKey&&!(c.shiftKey||c.metaKey)?l:a;if(d!==this._activeRenderMode){this._activeRenderMode=d;const h=this._editor.getModel(),u=this._copyInlayHintsWithCurrentAnchor(h);this._updateHintsDecorators([h.getFullModelRange()],u),r.schedule(0)}}))}const i=this._inlayHintsCache.get(t);i&&this._updateHintsDecorators([t.getFullModelRange()],i),this._sessionDisposables.add(_e(()=>{t.isDisposed()||this._cacheHintsForFastRestore(t)}));let n;const s=new Set,r=new ci(async()=>{const a=Date.now();n?.dispose(!0),n=new In;const l=t.onWillDispose(()=>n?.cancel());try{const c=n.token,d=await sw.create(this._languageFeaturesService.inlayHintsProvider,t,this._getHintsRanges(),c);if(r.delay=this._debounceInfo.update(t,Date.now()-a),c.isCancellationRequested){d.dispose();return}for(const h of d.provider)typeof h.onDidChangeInlayHints=="function"&&!s.has(h)&&(s.add(h),this._sessionDisposables.add(h.onDidChangeInlayHints(()=>{r.isScheduled()||r.schedule()})));this._sessionDisposables.add(d),this._updateHintsDecorators(d.ranges,d.items),this._cacheHintsForFastRestore(t)}catch(c){Ze(c)}finally{n.dispose(),l.dispose()}},this._debounceInfo.get(t));this._sessionDisposables.add(r),this._sessionDisposables.add(_e(()=>n?.dispose(!0))),r.schedule(0),this._sessionDisposables.add(this._editor.onDidScrollChange(a=>{(a.scrollTopChanged||!r.isScheduled())&&r.schedule()})),this._sessionDisposables.add(this._editor.onDidChangeModelContent(a=>{n?.cancel();const l=Math.max(r.delay,1250);r.schedule(l)})),this._sessionDisposables.add(this._installDblClickGesture(()=>r.schedule(0))),this._sessionDisposables.add(this._installLinkGesture()),this._sessionDisposables.add(this._installContextMenu())}_installLinkGesture(){const e=new X,t=e.add(new X8(this._editor)),i=new X;return e.add(i),e.add(t.onMouseMoveOrRelevantKeyDown(n=>{const[s]=n,r=this._getInlayHintLabelPart(s),a=this._editor.getModel();if(!r||!a){i.clear();return}const l=new In;i.add(_e(()=>l.dispose(!0))),r.item.resolve(l.token),this._activeInlayHintPart=r.part.command||r.part.location?new sde(r,s.hasTriggerModifier):void 0;const c=a.validatePosition(r.item.hint.position).lineNumber,d=new I(c,1,c,a.getLineMaxColumn(c)),h=this._getInlineHintsForRange(d);this._updateHintsDecorators([d],h),i.add(_e(()=>{this._activeInlayHintPart=void 0,this._updateHintsDecorators([d],h)}))})),e.add(t.onCancel(()=>i.clear())),e.add(t.onExecute(async n=>{const s=this._getInlayHintLabelPart(n);if(s){const r=s.part;r.location?this._instaService.invokeFunction(ide,n,this._editor,r.location):WL.is(r.command)&&await this._invokeCommand(r.command,s.item)}})),e}_getInlineHintsForRange(e){const t=new Set;for(const i of this._decorationsMetadata.values())e.containsRange(i.item.anchor.range)&&t.add(i.item);return Array.from(t)}_installDblClickGesture(e){return this._editor.onMouseUp(async t=>{if(t.event.detail!==2)return;const i=this._getInlayHintLabelPart(t);if(i&&(t.event.preventDefault(),await i.item.resolve(ut.None),Ps(i.item.hint.textEdits))){const n=i.item.hint.textEdits.map(s=>aa.replace(I.lift(s.range),s.text));this._editor.executeEdits("inlayHint.default",n),e()}})}_installContextMenu(){return this._editor.onContextMenu(async e=>{if(!Ei(e.event.target))return;const t=this._getInlayHintLabelPart(e);t&&await this._instaService.invokeFunction(tde,this._editor,e.event.target,t)})}_getInlayHintLabelPart(e){if(e.target.type!==6)return;const t=e.target.detail.injectedText?.options;if(t instanceof Bc&&t?.attachedData instanceof NE)return t.attachedData}async _invokeCommand(e,t){try{await this._commandService.executeCommand(e.id,...e.arguments??[])}catch(i){this._notificationService.notify({severity:bT.Error,source:t.provider.displayName,message:i})}}_cacheHintsForFastRestore(e){const t=this._copyInlayHintsWithCurrentAnchor(e);this._inlayHintsCache.set(e,t)}_copyInlayHintsWithCurrentAnchor(e){const t=new Map;for(const[i,n]of this._decorationsMetadata){if(t.has(n.item))continue;const s=e.getDecorationRange(i);if(s){const r=new DB(s,n.item.anchor.direction),a=n.item.with({anchor:r});t.set(n.item,a)}}return Array.from(t.values())}_getHintsRanges(){const t=this._editor.getModel(),i=this._editor.getVisibleRangesPlusViewportAboveBelow(),n=[];for(const s of i.sort(I.compareRangesUsingStarts)){const r=t.validateRange(new I(s.startLineNumber-30,s.startColumn,s.endLineNumber+30,s.endColumn));n.length===0||!I.areIntersectingOrTouching(n[n.length-1],r)?n.push(r):n[n.length-1]=I.plusRange(n[n.length-1],r)}return n}_updateHintsDecorators(e,t){const i=[],n=(g,p,_,b,C)=>{const w={content:_,inlineClassNameAffectsLetterSpacing:!0,inlineClassName:p.className,cursorStops:b,attachedData:C};i.push({item:g,classNameRef:p,decoration:{range:g.anchor.range,options:{description:"InlayHint",showIfCollapsed:g.anchor.range.isEmpty(),collapseOnReplaceEdit:!g.anchor.range.isEmpty(),stickiness:0,[g.anchor.direction]:this._activeRenderMode===0?w:void 0}}})},s=(g,p)=>{const _=this._ruleFactory.createClassNameRef({width:`${r/3|0}px`,display:"inline-block"});n(g,_," ",p?gr.Right:gr.None)},{fontSize:r,fontFamily:a,padding:l,isUniform:c}=this._getLayoutInfo(),d="--code-editorInlayHintsFontFamily";this._editor.getContainerDomNode().style.setProperty(d,a);let h={line:0,totalLen:0};for(const g of t){if(h.line!==g.anchor.range.startLineNumber&&(h={line:g.anchor.range.startLineNumber,totalLen:0}),h.totalLen>Uu._MAX_LABEL_LEN)continue;g.hint.paddingLeft&&s(g,!1);const p=typeof g.hint.label=="string"?[{label:g.hint.label}]:g.hint.label;for(let _=0;_0&&(y=y.slice(0,-L)+"…",x=!0),n(g,this._ruleFactory.createClassNameRef(v),ode(y),w&&!g.hint.paddingRight?gr.Right:gr.None,new NE(g,_)),x)break}if(g.hint.paddingRight&&s(g,!0),i.length>Uu._MAX_DECORATORS)break}const u=[];for(const[g,p]of this._decorationsMetadata){const _=this._editor.getModel()?.getDecorationRange(g);_&&e.some(b=>b.containsRange(_))&&(u.push(g),p.classNameRef.dispose(),this._decorationsMetadata.delete(g))}const f=qh.capture(this._editor);this._editor.changeDecorations(g=>{const p=g.deltaDecorations(u,i.map(_=>_.decoration));for(let _=0;_i)&&(s=i);const r=e.fontFamily||n;return{fontSize:s,fontFamily:r,padding:t,isUniform:!t&&r===n&&s===i}}_removeAllDecorations(){this._editor.removeDecorations(Array.from(this._decorationsMetadata.keys()));for(const e of this._decorationsMetadata.values())e.classNameRef.dispose();this._decorationsMetadata.clear()}},Uu=ml,ml.ID="editor.contrib.InlayHints",ml._MAX_DECORATORS=1500,ml._MAX_LABEL_LEN=43,ml);TE=Uu=nde([Bu(1,Se),Bu(2,q0),Bu(3,EB),Bu(4,hi),Bu(5,mn),Bu(6,ke)],TE);function ode(o){return o.replace(/[ \t]/g," ")}bt.registerCommand("_executeInlayHintProvider",async(o,...e)=>{const[t,i]=e;ai(ve.isUri(t)),ai(I.isIRange(i));const{inlayHintsProvider:n}=o.get(Se),s=await o.get(fo).createModelReference(t);try{const r=await sw.create(n,s.object.textEditorModel,[I.lift(i)],ut.None),a=r.items.map(l=>l.hint);return setTimeout(()=>r.dispose(),0),a}finally{s.dispose()}});var rde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},zl=function(o,e){return function(t,i){e(t,i,o)}};class B4 extends Q1{constructor(e,t,i,n){super(10,t,e.item.anchor.range,i,n,!0),this.part=e}}let ME=class extends P_{constructor(e,t,i,n,s,r,a,l,c){super(e,t,i,r,l,n,s,c),this._resolverService=a,this.hoverOrdinal=6}suggestHoverAnchor(e){if(!TE.get(this._editor)||e.target.type!==6)return null;const i=e.target.detail.injectedText?.options;return i instanceof Bc&&i.attachedData instanceof NE?new B4(i.attachedData,this,e.event.posx,e.event.posy):null}computeSync(){return[]}computeAsync(e,t,i){return e instanceof B4?new Ms(async n=>{const{part:s}=e;if(await s.item.resolve(i),i.isCancellationRequested)return;let r;typeof s.item.hint.tooltip=="string"?r=new Js().appendText(s.item.hint.tooltip):s.item.hint.tooltip&&(r=s.item.hint.tooltip),r&&n.emitOne(new hr(this,e.range,[r],!1,0)),Ps(s.item.hint.textEdits)&&n.emitOne(new hr(this,e.range,[new Js().appendText(m("hint.dbl","Double-click to insert"))],!1,10001));let a;if(typeof s.part.tooltip=="string"?a=new Js().appendText(s.part.tooltip):s.part.tooltip&&(a=s.part.tooltip),a&&n.emitOne(new hr(this,e.range,[a],!1,1)),s.part.location||s.part.command){let c;const h=this._editor.getOption(78)==="altKey"?Ue?m("links.navigate.kb.meta.mac","cmd + click"):m("links.navigate.kb.meta","ctrl + click"):Ue?m("links.navigate.kb.alt.mac","option + click"):m("links.navigate.kb.alt","alt + click");s.part.location&&s.part.command?c=new Js().appendText(m("hint.defAndCommand","Go to Definition ({0}), right click for more",h)):s.part.location?c=new Js().appendText(m("hint.def","Go to Definition ({0})",h)):s.part.command&&(c=new Js(`[${m("hint.cmd","Execute Command")}](${ede(s.part.command)} "${s.part.command.title}") (${h})`,{isTrusted:!0})),c&&n.emitOne(new hr(this,e.range,[c],!1,1e4))}const l=await this._resolveInlayHintLabelPartHover(s,i);for await(const c of l)n.emitOne(c)}):Ms.EMPTY}async _resolveInlayHintLabelPartHover(e,t){if(!e.part.location)return Ms.EMPTY;const{uri:i,range:n}=e.part.location,s=await this._resolverService.createModelReference(i);try{const r=s.object.textEditorModel;return this._languageFeaturesService.hoverProvider.has(r)?pM(this._languageFeaturesService.hoverProvider,r,new P(n.startLineNumber,n.startColumn),t).filter(a=>!bg(a.hover.contents)).map(a=>new hr(this,e.item.anchor.range,a.hover.contents,!1,2+a.ordinal)):Ms.EMPTY}finally{s.dispose()}}};ME=rde([zl(1,qt),zl(2,Vo),zl(3,vt),zl(4,au),zl(5,lt),zl(6,fo),zl(7,Se),zl(8,hi)],ME);class CM extends z{constructor(e,t,i,n,s,r){super();const a=t.anchor,l=t.hoverParts;this._renderedHoverParts=this._register(new RE(e,i,l,r,s));const{showAtPosition:c,showAtSecondaryPosition:d}=CM.computeHoverPositions(e,a.range,l);this.shouldAppearBeforeContent=l.some(h=>h.isBeforeContent),this.showAtPosition=c,this.showAtSecondaryPosition=d,this.initialMousePosX=a.initialMousePosX,this.initialMousePosY=a.initialMousePosY,this.shouldFocus=n.shouldFocus,this.source=n.source}get domNode(){return this._renderedHoverParts.domNode}get domNodeHasChildren(){return this._renderedHoverParts.domNodeHasChildren}get focusedHoverPartIndex(){return this._renderedHoverParts.focusedHoverPartIndex}async updateHoverVerbosityLevel(e,t,i){this._renderedHoverParts.updateHoverVerbosityLevel(e,t,i)}isColorPickerVisible(){return this._renderedHoverParts.isColorPickerVisible()}static computeHoverPositions(e,t,i){let n=1;if(e.hasModel()){const d=e._getViewModel(),h=d.coordinatesConverter,u=h.convertModelRangeToViewRange(t),f=d.getLineMinColumn(u.startLineNumber),g=new P(u.startLineNumber,f);n=h.convertViewPositionToModelPosition(g).column}const s=t.startLineNumber;let r=t.startColumn,a;for(const d of i){const h=d.range,u=h.startLineNumber===s,f=h.endLineNumber===s;if(u&&f){const p=h.startColumn,_=Math.min(r,p);r=Math.max(_,n)}d.forceShowAtRange&&(a=h)}let l,c;if(a){const d=a.getStartPosition();l=d,c=d}else l=t.getStartPosition(),c=new P(s,r);return{showAtPosition:l,showAtSecondaryPosition:c}}}class ade{constructor(e,t){this._statusBar=t,e.appendChild(this._statusBar.hoverElement)}get hoverElement(){return this._statusBar.hoverElement}get actions(){return this._statusBar.actions}dispose(){this._statusBar.dispose()}}const g0=class g0 extends z{constructor(e,t,i,n,s){super(),this._renderedParts=[],this._focusedHoverPartIndex=-1,this._context=s,this._fragment=document.createDocumentFragment(),this._register(this._renderParts(t,i,s,n)),this._register(this._registerListenersOnRenderedParts()),this._register(this._createEditorDecorations(e,i)),this._updateMarkdownAndColorParticipantInfo(t)}_createEditorDecorations(e,t){if(t.length===0)return z.None;let i=t[0].range;for(const s of t){const r=s.range;i=I.plusRange(i,r)}const n=e.createDecorationsCollection();return n.set([{range:i,options:g0._DECORATION_OPTIONS}]),_e(()=>{n.clear()})}_renderParts(e,t,i,n){const s=new kE(n),r={fragment:this._fragment,statusBar:s,...i},a=new X;for(const c of e){const d=this._renderHoverPartsForParticipant(t,c,r);a.add(d);for(const h of d.renderedHoverParts)this._renderedParts.push({type:"hoverPart",participant:c,hoverPart:h.hoverPart,hoverElement:h.hoverElement})}const l=this._renderStatusBar(this._fragment,s);return l&&(a.add(l),this._renderedParts.push({type:"statusBar",hoverElement:l.hoverElement,actions:l.actions})),_e(()=>{a.dispose()})}_renderHoverPartsForParticipant(e,t,i){const n=e.filter(r=>r.owner===t);return n.length>0?t.renderHoverParts(i,n):new Ng([])}_renderStatusBar(e,t){if(t.hasContent)return new ade(e,t)}_registerListenersOnRenderedParts(){const e=new X;return this._renderedParts.forEach((t,i)=>{const n=t.hoverElement;n.tabIndex=0,e.add(U(n,ee.FOCUS_IN,s=>{s.stopPropagation(),this._focusedHoverPartIndex=i})),e.add(U(n,ee.FOCUS_OUT,s=>{s.stopPropagation(),this._focusedHoverPartIndex=-1}))}),e}_updateMarkdownAndColorParticipantInfo(e){const t=e.find(i=>i instanceof P_&&!(i instanceof ME));t&&(this._markdownHoverParticipant=t),this._colorHoverParticipant=e.find(i=>i instanceof iw)}async updateHoverVerbosityLevel(e,t,i){if(!this._markdownHoverParticipant)return;const n=this._normalizedIndexToMarkdownHoverIndexRange(this._markdownHoverParticipant,t);if(n===void 0)return;const s=await this._markdownHoverParticipant.updateMarkdownHoverVerbosityLevel(e,n,i);s&&(this._renderedParts[t]={type:"hoverPart",participant:this._markdownHoverParticipant,hoverPart:s.hoverPart,hoverElement:s.hoverElement},this._context.onContentsChanged())}isColorPickerVisible(){return this._colorHoverParticipant?.isColorPickerVisible()??!1}_normalizedIndexToMarkdownHoverIndexRange(e,t){const i=this._renderedParts[t];if(!i||i.type!=="hoverPart"||!(i.participant===e))return;const s=this._renderedParts.findIndex(r=>r.type==="hoverPart"&&r.participant===e);if(s===-1)throw new nt;return t-s}get domNode(){return this._fragment}get domNodeHasChildren(){return this._fragment.hasChildNodes()}get focusedHoverPartIndex(){return this._focusedHoverPartIndex}};g0._DECORATION_OPTIONS=kt.register({description:"content-hover-highlight",className:"hoverHighlight"});let RE=g0;var lde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},W4=function(o,e){return function(t,i){e(t,i,o)}};let AE=class extends z{constructor(e,t,i){super(),this._editor=e,this._instantiationService=t,this._keybindingService=i,this._currentResult=null,this._onContentsChanged=this._register(new A),this.onContentsChanged=this._onContentsChanged.event,this._contentHoverWidget=this._register(this._instantiationService.createInstance(xE,this._editor)),this._participants=this._initializeHoverParticipants(),this._computer=new ew(this._editor,this._participants),this._hoverOperation=this._register(new fB(this._editor,this._computer)),this._registerListeners()}_initializeHoverParticipants(){const e=[];for(const t of Oy.getAll()){const i=this._instantiationService.createInstance(t,this._editor);e.push(i)}return e.sort((t,i)=>t.hoverOrdinal-i.hoverOrdinal),this._register(this._contentHoverWidget.onDidResize(()=>{this._participants.forEach(t=>t.handleResize?.())})),e}_registerListeners(){this._register(this._hoverOperation.onResult(t=>{if(!this._computer.anchor)return;const i=t.hasLoadingMessage?this._addLoadingMessage(t.value):t.value;this._withResult(new gB(this._computer.anchor,i,t.isComplete))}));const e=this._contentHoverWidget.getDomNode();this._register(jt(e,"keydown",t=>{t.equals(9)&&this.hide()})),this._register(jt(e,"mouseleave",t=>{this._onMouseLeave(t)})),this._register(si.onDidChange(()=>{this._contentHoverWidget.position&&this._currentResult&&this._setCurrentResult(this._currentResult)}))}_startShowingOrUpdateHover(e,t,i,n,s){if(!(this._contentHoverWidget.position&&this._currentResult))return e?(this._startHoverOperationIfNecessary(e,t,i,n,!1),!0):!1;const a=this._editor.getOption(60).sticky,l=s&&this._contentHoverWidget.isMouseGettingCloser(s.event.posx,s.event.posy);return a&&l?(e&&this._startHoverOperationIfNecessary(e,t,i,n,!0),!0):e?this._currentResult.anchor.equals(e)?!0:e.canAdoptVisibleHover(this._currentResult.anchor,this._contentHoverWidget.position)?(this._setCurrentResult(this._currentResult.filter(e)),this._startHoverOperationIfNecessary(e,t,i,n,!1),!0):(this._setCurrentResult(null),this._startHoverOperationIfNecessary(e,t,i,n,!1),!0):(this._setCurrentResult(null),!1)}_startHoverOperationIfNecessary(e,t,i,n,s){this._computer.anchor&&this._computer.anchor.equals(e)||(this._hoverOperation.cancel(),this._computer.anchor=e,this._computer.shouldFocus=n,this._computer.source=i,this._computer.insistOnKeepingHoverVisible=s,this._hoverOperation.start(t))}_setCurrentResult(e){let t=e;if(this._currentResult===t)return;t&&t.hoverParts.length===0&&(t=null),this._currentResult=t,this._currentResult?this._showHover(this._currentResult):this._hideHover()}_addLoadingMessage(e){if(!this._computer.anchor)return e;for(const t of this._participants){if(!t.createLoadingMessage)continue;const i=t.createLoadingMessage(this._computer.anchor);if(i)return e.slice(0).concat([i])}return e}_withResult(e){if(this._contentHoverWidget.position&&this._currentResult&&this._currentResult.isComplete||this._setCurrentResult(e),!e.isComplete)return;const n=e.hoverParts.length===0,s=this._computer.insistOnKeepingHoverVisible;n&&s||this._setCurrentResult(e)}_showHover(e){const t=this._getHoverContext();this._renderedContentHover=new CM(this._editor,e,this._participants,this._computer,t,this._keybindingService),this._renderedContentHover.domNodeHasChildren?this._contentHoverWidget.show(this._renderedContentHover):this._renderedContentHover.dispose()}_hideHover(){this._contentHoverWidget.hide()}_getHoverContext(){return{hide:()=>{this.hide()},onContentsChanged:()=>{this._onContentsChanged.fire(),this._contentHoverWidget.onContentsChanged()},setMinimumDimensions:n=>{this._contentHoverWidget.setMinimumDimensions(n)}}}showsOrWillShow(e){if(this._contentHoverWidget.isResizing)return!0;const i=this._findHoverAnchorCandidates(e);if(!(i.length>0))return this._startShowingOrUpdateHover(null,0,0,!1,e);const s=i[0];return this._startShowingOrUpdateHover(s,0,0,!1,e)}_findHoverAnchorCandidates(e){const t=[];for(const n of this._participants){if(!n.suggestHoverAnchor)continue;const s=n.suggestHoverAnchor(e);s&&t.push(s)}const i=e.target;switch(i.type){case 6:{t.push(new gL(0,i.range,e.event.posx,e.event.posy));break}case 7:{const n=this._editor.getOption(50).typicalHalfwidthCharacterWidth/2;if(!(!i.detail.isAfterLines&&typeof i.detail.horizontalDistanceToText=="number"&&i.detail.horizontalDistanceToTexts.priority-n.priority),t}_onMouseLeave(e){const t=this._editor.getDomNode();(!t||!Py(t,e.x,e.y))&&this.hide()}startShowingAtRange(e,t,i,n){this._startShowingOrUpdateHover(new gL(0,e,void 0,void 0),t,i,n,null)}async updateHoverVerbosityLevel(e,t,i){this._renderedContentHover?.updateHoverVerbosityLevel(e,t,i)}focusedHoverPartIndex(){return this._renderedContentHover?.focusedHoverPartIndex??-1}containsNode(e){return e?this._contentHoverWidget.getDomNode().contains(e):!1}focus(){this._contentHoverWidget.focus()}scrollUp(){this._contentHoverWidget.scrollUp()}scrollDown(){this._contentHoverWidget.scrollDown()}scrollLeft(){this._contentHoverWidget.scrollLeft()}scrollRight(){this._contentHoverWidget.scrollRight()}pageUp(){this._contentHoverWidget.pageUp()}pageDown(){this._contentHoverWidget.pageDown()}goToTop(){this._contentHoverWidget.goToTop()}goToBottom(){this._contentHoverWidget.goToBottom()}hide(){this._computer.anchor=null,this._hoverOperation.cancel(),this._setCurrentResult(null)}getDomNode(){return this._contentHoverWidget.getDomNode()}get isColorPickerVisible(){return this._renderedContentHover?.isColorPickerVisible()??!1}get isVisibleFromKeyboard(){return this._contentHoverWidget.isVisibleFromKeyboard}get isVisible(){return this._contentHoverWidget.isVisible}get isFocused(){return this._contentHoverWidget.isFocused}get isResizing(){return this._contentHoverWidget.isResizing}get widget(){return this._contentHoverWidget}};AE=lde([W4(1,ke),W4(2,vt)],AE);var cde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},H4=function(o,e){return function(t,i){e(t,i,o)}},PE,vh;let Tn=(vh=class extends z{constructor(e,t,i){super(),this._editor=e,this._instantiationService=t,this._keybindingService=i,this._onHoverContentsChanged=this._register(new A),this.shouldKeepOpenOnEditorMouseMoveOrLeave=!1,this._listenersStore=new X,this._hoverState={mouseDown:!1,activatedByDecoratorClick:!1},this._reactToEditorMouseMoveRunner=this._register(new ci(()=>this._reactToEditorMouseMove(this._mouseMoveEvent),0)),this._hookListeners(),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(60)&&(this._unhookListeners(),this._hookListeners())}))}static get(e){return e.getContribution(PE.ID)}_hookListeners(){const e=this._editor.getOption(60);this._hoverSettings={enabled:e.enabled,sticky:e.sticky,hidingDelay:e.hidingDelay},e.enabled?(this._listenersStore.add(this._editor.onMouseDown(t=>this._onEditorMouseDown(t))),this._listenersStore.add(this._editor.onMouseUp(()=>this._onEditorMouseUp())),this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))):(this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))),this._listenersStore.add(this._editor.onMouseLeave(t=>this._onEditorMouseLeave(t))),this._listenersStore.add(this._editor.onDidChangeModel(()=>{this._cancelScheduler(),this._hideWidgets()})),this._listenersStore.add(this._editor.onDidChangeModelContent(()=>this._cancelScheduler())),this._listenersStore.add(this._editor.onDidScrollChange(t=>this._onEditorScrollChanged(t)))}_unhookListeners(){this._listenersStore.clear()}_cancelScheduler(){this._mouseMoveEvent=void 0,this._reactToEditorMouseMoveRunner.cancel()}_onEditorScrollChanged(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()}_onEditorMouseDown(e){this._hoverState.mouseDown=!0,!this._shouldNotHideCurrentHoverWidget(e)&&this._hideWidgets()}_shouldNotHideCurrentHoverWidget(e){return this._isMouseOnContentHoverWidget(e)||this._isContentWidgetResizing()}_isMouseOnContentHoverWidget(e){const t=this._contentWidget?.getDomNode();return t?Py(t,e.event.posx,e.event.posy):!1}_onEditorMouseUp(){this._hoverState.mouseDown=!1}_onEditorMouseLeave(e){this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._cancelScheduler(),this._shouldNotHideCurrentHoverWidget(e))||this._hideWidgets()}_shouldNotRecomputeCurrentHoverWidget(e){const t=this._hoverSettings.sticky,i=(r,a)=>{const l=this._isMouseOnContentHoverWidget(r);return a&&l},n=r=>{const a=this._isMouseOnContentHoverWidget(r),l=this._contentWidget?.isColorPickerVisible??!1;return a&&l},s=(r,a)=>(a&&this._contentWidget?.containsNode(r.event.browserEvent.view?.document.activeElement)&&!r.event.browserEvent.view?.getSelection()?.isCollapsed)??!1;return i(e,t)||n(e)||s(e,t)}_onEditorMouseMove(e){if(this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._mouseMoveEvent=e,this._contentWidget?.isFocused||this._contentWidget?.isResizing))return;const t=this._hoverSettings.sticky;if(t&&this._contentWidget?.isVisibleFromKeyboard)return;if(this._shouldNotRecomputeCurrentHoverWidget(e)){this._reactToEditorMouseMoveRunner.cancel();return}const n=this._hoverSettings.hidingDelay;if(this._contentWidget?.isVisible&&t&&n>0){this._reactToEditorMouseMoveRunner.isScheduled()||this._reactToEditorMouseMoveRunner.schedule(n);return}this._reactToEditorMouseMove(e)}_reactToEditorMouseMove(e){if(!e)return;const i=e.target.element?.classList.contains("colorpicker-color-decoration"),n=this._editor.getOption(149),s=this._hoverSettings.enabled,r=this._hoverState.activatedByDecoratorClick;if(i&&(n==="click"&&!r||n==="hover"&&!s||n==="clickAndHover"&&!s&&!r)||!i&&!s&&!r){this._hideWidgets();return}this._tryShowHoverWidget(e)||this._hideWidgets()}_tryShowHoverWidget(e){return this._getOrCreateContentWidget().showsOrWillShow(e)}_onKeyDown(e){if(!this._editor.hasModel())return;const t=this._keybindingService.softDispatch(e,this._editor.getDomNode()),i=t.kind===1||t.kind===2&&(t.commandId===Q8||t.commandId===Ey||t.commandId===Ny)&&this._contentWidget?.isVisible;e.keyCode===5||e.keyCode===6||e.keyCode===57||e.keyCode===4||i||this._hideWidgets()}_hideWidgets(){this._hoverState.mouseDown&&this._contentWidget?.isColorPickerVisible||Eg.dropDownVisible||(this._hoverState.activatedByDecoratorClick=!1,this._contentWidget?.hide())}_getOrCreateContentWidget(){return this._contentWidget||(this._contentWidget=this._instantiationService.createInstance(AE,this._editor),this._listenersStore.add(this._contentWidget.onContentsChanged(()=>this._onHoverContentsChanged.fire()))),this._contentWidget}showContentHover(e,t,i,n,s=!1){this._hoverState.activatedByDecoratorClick=s,this._getOrCreateContentWidget().startShowingAtRange(e,t,i,n)}_isContentWidgetResizing(){return this._contentWidget?.widget.isResizing||!1}focusedHoverPartIndex(){return this._getOrCreateContentWidget().focusedHoverPartIndex()}updateHoverVerbosityLevel(e,t,i){this._getOrCreateContentWidget().updateHoverVerbosityLevel(e,t,i)}focus(){this._contentWidget?.focus()}scrollUp(){this._contentWidget?.scrollUp()}scrollDown(){this._contentWidget?.scrollDown()}scrollLeft(){this._contentWidget?.scrollLeft()}scrollRight(){this._contentWidget?.scrollRight()}pageUp(){this._contentWidget?.pageUp()}pageDown(){this._contentWidget?.pageDown()}goToTop(){this._contentWidget?.goToTop()}goToBottom(){this._contentWidget?.goToBottom()}get isColorPickerVisible(){return this._contentWidget?.isColorPickerVisible}get isHoverVisible(){return this._contentWidget?.isVisible}dispose(){super.dispose(),this._unhookListeners(),this._listenersStore.dispose(),this._contentWidget?.dispose()}},PE=vh,vh.ID="editor.contrib.contentHover",vh);Tn=PE=cde([H4(1,ke),H4(2,vt)],Tn);var Qo;(function(o){o.NoAutoFocus="noAutoFocus",o.FocusIfVisible="focusIfVisible",o.AutoFocusImmediately="autoFocusImmediately"})(Qo||(Qo={}));class dde extends bi{constructor(){super({id:Q8,label:m({key:"showOrFocusHover",comment:["Label for action that will trigger the showing/focusing of a hover in the editor.","If the hover is not visible, it will show the hover.","This allows for users to show the hover without using the mouse."]},"Show or Focus Hover"),metadata:{description:di("showOrFocusHoverDescription","Show or focus the editor hover which shows documentation, references, and other content for a symbol at the current cursor position."),args:[{name:"args",schema:{type:"object",properties:{focus:{description:"Controls if and when the hover should take focus upon being triggered by this action.",enum:[Qo.NoAutoFocus,Qo.FocusIfVisible,Qo.AutoFocusImmediately],enumDescriptions:[m("showOrFocusHover.focus.noAutoFocus","The hover will not automatically take focus."),m("showOrFocusHover.focus.focusIfVisible","The hover will take focus only if it is already visible."),m("showOrFocusHover.focus.autoFocusImmediately","The hover will automatically take focus when it appears.")],default:Qo.FocusIfVisible}}}}]},alias:"Show or Focus Hover",precondition:void 0,kbOpts:{kbExpr:K.editorTextFocus,primary:Vp(2089,2087),weight:100}})}run(e,t,i){if(!t.hasModel())return;const n=Tn.get(t);if(!n)return;const s=i?.focus;let r=Qo.FocusIfVisible;Object.values(Qo).includes(s)?r=s:typeof s=="boolean"&&s&&(r=Qo.AutoFocusImmediately);const a=c=>{const d=t.getPosition(),h=new I(d.lineNumber,d.column,d.lineNumber,d.column);n.showContentHover(h,1,1,c)},l=t.getOption(2)===2;n.isHoverVisible?r!==Qo.NoAutoFocus?n.focus():a(l):a(l||r===Qo.AutoFocusImmediately)}}class hde extends bi{constructor(){super({id:Ale,label:m({key:"showDefinitionPreviewHover",comment:["Label for action that will trigger the showing of definition preview hover in the editor.","This allows for users to show the definition preview hover without using the mouse."]},"Show Definition Preview Hover"),alias:"Show Definition Preview Hover",precondition:void 0,metadata:{description:di("showDefinitionPreviewHoverDescription","Show the definition preview hover in the editor.")}})}run(e,t){const i=Tn.get(t);if(!i)return;const n=t.getPosition();if(!n)return;const s=new I(n.lineNumber,n.column,n.lineNumber,n.column),r=A_.get(t);if(!r)return;r.startFindDefinitionFromCursor(n).then(()=>{i.showContentHover(s,1,1,!0)})}}class ude extends bi{constructor(){super({id:Ple,label:m({key:"scrollUpHover",comment:["Action that allows to scroll up in the hover widget with the up arrow when the hover widget is focused."]},"Scroll Up Hover"),alias:"Scroll Up Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:16,weight:100},metadata:{description:di("scrollUpHoverDescription","Scroll up the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollUp()}}class fde extends bi{constructor(){super({id:Ole,label:m({key:"scrollDownHover",comment:["Action that allows to scroll down in the hover widget with the up arrow when the hover widget is focused."]},"Scroll Down Hover"),alias:"Scroll Down Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:18,weight:100},metadata:{description:di("scrollDownHoverDescription","Scroll down the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollDown()}}class gde extends bi{constructor(){super({id:Fle,label:m({key:"scrollLeftHover",comment:["Action that allows to scroll left in the hover widget with the left arrow when the hover widget is focused."]},"Scroll Left Hover"),alias:"Scroll Left Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:15,weight:100},metadata:{description:di("scrollLeftHoverDescription","Scroll left the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollLeft()}}class mde extends bi{constructor(){super({id:Ble,label:m({key:"scrollRightHover",comment:["Action that allows to scroll right in the hover widget with the right arrow when the hover widget is focused."]},"Scroll Right Hover"),alias:"Scroll Right Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:17,weight:100},metadata:{description:di("scrollRightHoverDescription","Scroll right the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollRight()}}class pde extends bi{constructor(){super({id:Wle,label:m({key:"pageUpHover",comment:["Action that allows to page up in the hover widget with the page up command when the hover widget is focused."]},"Page Up Hover"),alias:"Page Up Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:11,secondary:[528],weight:100},metadata:{description:di("pageUpHoverDescription","Page up the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.pageUp()}}class _de extends bi{constructor(){super({id:Hle,label:m({key:"pageDownHover",comment:["Action that allows to page down in the hover widget with the page down command when the hover widget is focused."]},"Page Down Hover"),alias:"Page Down Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:12,secondary:[530],weight:100},metadata:{description:di("pageDownHoverDescription","Page down the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.pageDown()}}class bde extends bi{constructor(){super({id:Vle,label:m({key:"goToTopHover",comment:["Action that allows to go to the top of the hover widget with the home command when the hover widget is focused."]},"Go To Top Hover"),alias:"Go To Bottom Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:14,secondary:[2064],weight:100},metadata:{description:di("goToTopHoverDescription","Go to the top of the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.goToTop()}}class Cde extends bi{constructor(){super({id:zle,label:m({key:"goToBottomHover",comment:["Action that allows to go to the bottom in the hover widget with the end command when the hover widget is focused."]},"Go To Bottom Hover"),alias:"Go To Bottom Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:13,secondary:[2066],weight:100},metadata:{description:di("goToBottomHoverDescription","Go to the bottom of the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.goToBottom()}}class vde extends bi{constructor(){super({id:Ey,label:Ule,alias:"Increase Hover Verbosity Level",precondition:K.hoverVisible})}run(e,t,i){const n=Tn.get(t);if(!n)return;const s=i?.index!==void 0?i.index:n.focusedHoverPartIndex();n.updateHoverVerbosityLevel(is.Increase,s,i?.focus)}}class wde extends bi{constructor(){super({id:Ny,label:$le,alias:"Decrease Hover Verbosity Level",precondition:K.hoverVisible})}run(e,t,i){const n=Tn.get(t);if(!n)return;const s=i?.index!==void 0?i.index:n.focusedHoverPartIndex();Tn.get(t)?.updateHoverVerbosityLevel(is.Decrease,s,i?.focus)}}const Vr=class Vr{constructor(e){this.value=e}equals(e){return this.value===e.value}contains(e){return this.equals(e)||this.value===""||e.value.startsWith(this.value+Vr.sep)}intersects(e){return this.contains(e)||e.contains(this)}append(...e){return new Vr((this.value?[this.value,...e]:e).join(Vr.sep))}};Vr.sep=".",Vr.None=new Vr("@@none@@"),Vr.Empty=new Vr("");let ji=Vr;const Di=new class{constructor(){this.QuickFix=new ji("quickfix"),this.Refactor=new ji("refactor"),this.RefactorExtract=this.Refactor.append("extract"),this.RefactorInline=this.Refactor.append("inline"),this.RefactorMove=this.Refactor.append("move"),this.RefactorRewrite=this.Refactor.append("rewrite"),this.Notebook=new ji("notebook"),this.Source=new ji("source"),this.SourceOrganizeImports=this.Source.append("organizeImports"),this.SourceFixAll=this.Source.append("fixAll"),this.SurroundWith=this.Refactor.append("surround")}};var Uc;(function(o){o.Refactor="refactor",o.RefactorPreview="refactor preview",o.Lightbulb="lightbulb",o.Default="other (default)",o.SourceAction="source action",o.QuickFix="quick fix action",o.FixAll="fix all",o.OrganizeImports="organize imports",o.AutoFix="auto fix",o.QuickFixHover="quick fix hover window",o.OnSave="save participants",o.ProblemsView="problems view"})(Uc||(Uc={}));function yde(o,e){return!(o.include&&!o.include.intersects(e)||o.excludes&&o.excludes.some(t=>NB(e,t,o.include))||!o.includeSourceActions&&Di.Source.contains(e))}function Sde(o,e){const t=e.kind?new ji(e.kind):void 0;return!(o.include&&(!t||!o.include.contains(t))||o.excludes&&t&&o.excludes.some(i=>NB(t,i,o.include))||!o.includeSourceActions&&t&&Di.Source.contains(t)||o.onlyIncludePreferredActions&&!e.isPreferred)}function NB(o,e,t){return!(!e.contains(o)||t&&e.contains(t))}class Nd{static fromUser(e,t){return!e||typeof e!="object"?new Nd(t.kind,t.apply,!1):new Nd(Nd.getKindFromUser(e,t.kind),Nd.getApplyFromUser(e,t.apply),Nd.getPreferredUser(e))}static getApplyFromUser(e,t){switch(typeof e.apply=="string"?e.apply.toLowerCase():""){case"first":return"first";case"never":return"never";case"ifsingle":return"ifSingle";default:return t}}static getKindFromUser(e,t){return typeof e.kind=="string"?new ji(e.kind):t}static getPreferredUser(e){return typeof e.preferred=="boolean"?e.preferred:!1}constructor(e,t,i){this.kind=e,this.apply=t,this.preferred=i}}class Lde{constructor(e,t,i){this.action=e,this.provider=t,this.highlightRange=i}async resolve(e){if(this.provider?.resolveCodeAction&&!this.action.edit){let t;try{t=await this.provider.resolveCodeAction(this.action,e)}catch(i){$n(i)}t&&(this.action.edit=t.edit)}return this}}const xde="editor.action.codeAction",TB="editor.action.quickFix",kde="editor.action.autoFix",Dde="editor.action.refactor",Ide="editor.action.sourceAction",V4="editor.action.organizeImports",z4="editor.action.fixAll";class wp extends z{static codeActionsPreferredComparator(e,t){return e.isPreferred&&!t.isPreferred?-1:!e.isPreferred&&t.isPreferred?1:0}static codeActionsComparator({action:e},{action:t}){return e.isAI&&!t.isAI?1:!e.isAI&&t.isAI?-1:Ps(e.diagnostics)?Ps(t.diagnostics)?wp.codeActionsPreferredComparator(e,t):-1:Ps(t.diagnostics)?1:wp.codeActionsPreferredComparator(e,t)}constructor(e,t,i){super(),this.documentation=t,this._register(i),this.allActions=[...e].sort(wp.codeActionsComparator),this.validActions=this.allActions.filter(({action:n})=>!n.disabled)}get hasAutoFix(){return this.validActions.some(({action:e})=>!!e.kind&&Di.QuickFix.contains(new ji(e.kind))&&!!e.isPreferred)}get hasAIFix(){return this.validActions.some(({action:e})=>!!e.isAI)}get allAIFixes(){return this.validActions.every(({action:e})=>!!e.isAI)}}const U4={actions:[],documentation:void 0};async function mf(o,e,t,i,n,s){const r=i.filter||{},a={...r,excludes:[...r.excludes||[],Di.Notebook]},l={only:r.include?.value,trigger:i.type},c=new Dle(e,s),d=i.type===2,h=Ede(o,e,d?a:r),u=new X,f=h.map(async p=>{try{n.report(p);const _=await p.provideCodeActions(e,t,l,c.token);if(_&&u.add(_),c.token.isCancellationRequested)return U4;const b=(_?.actions||[]).filter(w=>w&&Sde(r,w)),C=Tde(p,b,r.include);return{actions:b.map(w=>new Lde(w,p)),documentation:C}}catch(_){if($c(_))throw _;return $n(_),U4}}),g=o.onDidChange(()=>{const p=o.all(e);li(p,h)||c.cancel()});try{const p=await Promise.all(f),_=p.map(C=>C.actions).flat(),b=[...Ag(p.map(C=>C.documentation)),...Nde(o,e,i,_)];return new wp(_,b,u)}finally{g.dispose(),c.dispose()}}function Ede(o,e,t){return o.all(e).filter(i=>i.providedCodeActionKinds?i.providedCodeActionKinds.some(n=>yde(t,new ji(n))):!0)}function*Nde(o,e,t,i){if(e&&i.length)for(const n of o.all(e))n._getAdditionalMenuItems&&(yield*n._getAdditionalMenuItems?.({trigger:t.type,only:t.filter?.include?.value},i.map(s=>s.action)))}function Tde(o,e,t){if(!o.documentation)return;const i=o.documentation.map(n=>({kind:new ji(n.kind),command:n.command}));if(t){let n;for(const s of i)s.kind.contains(t)&&(n?n.kind.contains(s.kind)&&(n=s):n=s);if(n)return n?.command}for(const n of e)if(n.kind){for(const s of i)if(s.kind.contains(new ji(n.kind)))return s.command}}var Gd;(function(o){o.OnSave="onSave",o.FromProblemsView="fromProblemsView",o.FromCodeActions="fromCodeActions",o.FromAILightbulb="fromAILightbulb"})(Gd||(Gd={}));async function Mde(o,e,t,i,n=ut.None){const s=o.get(b7),r=o.get(hi),a=o.get($s),l=o.get(mn);if(a.publicLog2("codeAction.applyCodeAction",{codeActionTitle:e.action.title,codeActionKind:e.action.kind,codeActionIsPreferred:!!e.action.isPreferred,reason:t}),await e.resolve(n),!n.isCancellationRequested&&!(e.action.edit?.edits.length&&!(await s.apply(e.action.edit,{editor:i?.editor,label:e.action.title,quotableLabel:e.action.title,code:"undoredo.codeAction",respectAutoSaveConfig:t!==Gd.OnSave,showPreview:i?.preview})).isApplied)&&e.action.command)try{await r.executeCommand(e.action.command.id,...e.action.command.arguments||[])}catch(c){const d=Rde(c);l.error(typeof d=="string"?d:m("applyCodeActionFailed","An unknown error occurred while applying the code action"))}}function Rde(o){return typeof o=="string"?o:o instanceof Error&&typeof o.message=="string"?o.message:void 0}bt.registerCommand("_executeCodeActionProvider",async function(o,e,t,i,n){if(!(e instanceof ve))throw na();const{codeActionProvider:s}=o.get(Se),r=o.get(Fi).getModel(e);if(!r)throw na();const a=Fe.isISelection(t)?Fe.liftSelection(t):I.isIRange(t)?r.validateRange(t):void 0;if(!a)throw na();const l=typeof i=="string"?new ji(i):void 0,c=await mf(s,r,a,{type:1,triggerAction:Uc.Default,filter:{includeSourceActions:!0,include:l}},rc.None,ut.None),d=[],h=Math.min(c.validActions.length,typeof n=="number"?n:0);for(let u=0;uu.action)}finally{setTimeout(()=>c.dispose(),100)}});var Ade=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Pde=function(o,e){return function(t,i){e(t,i,o)}},OE,wh;let FE=(wh=class{constructor(e){this.keybindingService=e}getResolver(){const e=new ua(()=>this.keybindingService.getKeybindings().filter(t=>OE.codeActionCommands.indexOf(t.command)>=0).filter(t=>t.resolvedKeybinding).map(t=>{let i=t.commandArgs;return t.command===V4?i={kind:Di.SourceOrganizeImports.value}:t.command===z4&&(i={kind:Di.SourceFixAll.value}),{resolvedKeybinding:t.resolvedKeybinding,...Nd.fromUser(i,{kind:ji.None,apply:"never"})}}));return t=>{if(t.kind)return this.bestKeybindingForCodeAction(t,e.value)?.resolvedKeybinding}}bestKeybindingForCodeAction(e,t){if(!e.kind)return;const i=new ji(e.kind);return t.filter(n=>n.kind.contains(i)).filter(n=>n.preferred?e.isPreferred:!0).reduceRight((n,s)=>n?n.kind.contains(s.kind)?s:n:s,void 0)}},OE=wh,wh.codeActionCommands=[Dde,xde,Ide,V4,z4],wh);FE=OE=Ade([Pde(0,vt)],FE);D("symbolIcon.arrayForeground",Pe,m("symbolIcon.arrayForeground","The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.booleanForeground",Pe,m("symbolIcon.booleanForeground","The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.classForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},m("symbolIcon.classForeground","The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.colorForeground",Pe,m("symbolIcon.colorForeground","The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.constantForeground",Pe,m("symbolIcon.constantForeground","The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.constructorForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("symbolIcon.constructorForeground","The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.enumeratorForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},m("symbolIcon.enumeratorForeground","The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.enumeratorMemberForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.enumeratorMemberForeground","The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.eventForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},m("symbolIcon.eventForeground","The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.fieldForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.fieldForeground","The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.fileForeground",Pe,m("symbolIcon.fileForeground","The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.folderForeground",Pe,m("symbolIcon.folderForeground","The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.functionForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("symbolIcon.functionForeground","The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.interfaceForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.interfaceForeground","The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.keyForeground",Pe,m("symbolIcon.keyForeground","The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.keywordForeground",Pe,m("symbolIcon.keywordForeground","The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.methodForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("symbolIcon.methodForeground","The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.moduleForeground",Pe,m("symbolIcon.moduleForeground","The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.namespaceForeground",Pe,m("symbolIcon.namespaceForeground","The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.nullForeground",Pe,m("symbolIcon.nullForeground","The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.numberForeground",Pe,m("symbolIcon.numberForeground","The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.objectForeground",Pe,m("symbolIcon.objectForeground","The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.operatorForeground",Pe,m("symbolIcon.operatorForeground","The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.packageForeground",Pe,m("symbolIcon.packageForeground","The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.propertyForeground",Pe,m("symbolIcon.propertyForeground","The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.referenceForeground",Pe,m("symbolIcon.referenceForeground","The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.snippetForeground",Pe,m("symbolIcon.snippetForeground","The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.stringForeground",Pe,m("symbolIcon.stringForeground","The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.structForeground",Pe,m("symbolIcon.structForeground","The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.textForeground",Pe,m("symbolIcon.textForeground","The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.typeParameterForeground",Pe,m("symbolIcon.typeParameterForeground","The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.unitForeground",Pe,m("symbolIcon.unitForeground","The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.variableForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.variableForeground","The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));const MB=Object.freeze({kind:ji.Empty,title:m("codeAction.widget.id.more","More Actions...")}),Ode=Object.freeze([{kind:Di.QuickFix,title:m("codeAction.widget.id.quickfix","Quick Fix")},{kind:Di.RefactorExtract,title:m("codeAction.widget.id.extract","Extract"),icon:ie.wrench},{kind:Di.RefactorInline,title:m("codeAction.widget.id.inline","Inline"),icon:ie.wrench},{kind:Di.RefactorRewrite,title:m("codeAction.widget.id.convert","Rewrite"),icon:ie.wrench},{kind:Di.RefactorMove,title:m("codeAction.widget.id.move","Move"),icon:ie.wrench},{kind:Di.SurroundWith,title:m("codeAction.widget.id.surround","Surround With"),icon:ie.surroundWith},{kind:Di.Source,title:m("codeAction.widget.id.source","Source Action"),icon:ie.symbolFile},MB]);function Fde(o,e,t){if(!e)return o.map(s=>({kind:"action",item:s,group:MB,disabled:!!s.action.disabled,label:s.action.disabled||s.action.title,canPreview:!!s.action.edit?.edits.length}));const i=Ode.map(s=>({group:s,actions:[]}));for(const s of o){const r=s.action.kind?new ji(s.action.kind):ji.None;for(const a of i)if(a.group.kind.contains(r)){a.actions.push(s);break}}const n=[];for(const s of i)if(s.actions.length){n.push({kind:"header",group:s.group});for(const r of s.actions){const a=s.group;n.push({kind:"action",item:r,group:r.action.isAI?{title:a.title,kind:a.kind,icon:ie.sparkle}:a,label:r.action.title,disabled:!!r.action.disabled,keybinding:t(r.action)})}}return n}var Bde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Wde=function(o,e){return function(t,i){e(t,i,o)}},$u;const $4=Wi("gutter-lightbulb",ie.lightBulb,m("gutterLightbulbWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor.")),K4=Wi("gutter-lightbulb-auto-fix",ie.lightbulbAutofix,m("gutterLightbulbAutoFixWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and a quick fix is available.")),j4=Wi("gutter-lightbulb-sparkle",ie.lightbulbSparkle,m("gutterLightbulbAIFixWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix is available.")),q4=Wi("gutter-lightbulb-aifix-auto-fix",ie.lightbulbSparkleAutofix,m("gutterLightbulbAIFixAutoFixWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix and a quick fix is available.")),G4=Wi("gutter-lightbulb-sparkle-filled",ie.sparkleFilled,m("gutterLightbulbSparkleFilledWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix and a quick fix is available."));var Xo;(function(o){o.Hidden={type:0};class e{constructor(i,n,s,r){this.actions=i,this.trigger=n,this.editorPosition=s,this.widgetPosition=r,this.type=1}}o.Showing=e})(Xo||(Xo={}));var pl;let BE=(pl=class extends z{constructor(e,t){super(),this._editor=e,this._keybindingService=t,this._onClick=this._register(new A),this.onClick=this._onClick.event,this._state=Xo.Hidden,this._gutterState=Xo.Hidden,this._iconClasses=[],this.lightbulbClasses=["codicon-"+$4.id,"codicon-"+q4.id,"codicon-"+K4.id,"codicon-"+j4.id,"codicon-"+G4.id],this.gutterDecoration=$u.GUTTER_DECORATION,this._domNode=ce("div.lightBulbWidget"),this._domNode.role="listbox",this._register(fn.ignoreTarget(this._domNode)),this._editor.addContentWidget(this),this._register(this._editor.onDidChangeModelContent(i=>{const n=this._editor.getModel();(this.state.type!==1||!n||this.state.editorPosition.lineNumber>=n.getLineCount())&&this.hide(),(this.gutterState.type!==1||!n||this.gutterState.editorPosition.lineNumber>=n.getLineCount())&&this.gutterHide()})),this._register(mV(this._domNode,i=>{if(this.state.type!==1)return;this._editor.focus(),i.preventDefault();const{top:n,height:s}=gi(this._domNode),r=this._editor.getOption(67);let a=Math.floor(r/3);this.state.widgetPosition.position!==null&&this.state.widgetPosition.position.lineNumber{(i.buttons&1)===1&&this.hide()})),this._register(J.runAndSubscribe(this._keybindingService.onDidUpdateKeybindings,()=>{this._preferredKbLabel=this._keybindingService.lookupKeybinding(kde)?.getLabel()??void 0,this._quickFixKbLabel=this._keybindingService.lookupKeybinding(TB)?.getLabel()??void 0,this._updateLightBulbTitleAndIcon()})),this._register(this._editor.onMouseDown(async i=>{if(!i.target.element||!this.lightbulbClasses.some(l=>i.target.element&&i.target.element.classList.contains(l))||this.gutterState.type!==1)return;this._editor.focus();const{top:n,height:s}=gi(i.target.element),r=this._editor.getOption(67);let a=Math.floor(r/3);this.gutterState.widgetPosition.position!==null&&this.gutterState.widgetPosition.position.lineNumber22,g=y=>y>2&&this._editor.getTopForLineNumber(y)===this._editor.getTopForLineNumber(y-1),p=this._editor.getLineDecorations(a);let _=!1;if(p)for(const y of p){const x=y.options.glyphMarginClassName;if(x&&!this.lightbulbClasses.some(L=>x.includes(L))){_=!0;break}}let b=a,C=1;if(!f){const y=x=>{const L=r.getLineContent(x);return/^\s*$|^\s+/.test(L)||L.length<=C};if(a>1&&!g(a-1)){const x=r.getLineCount(),L=a===x,E=a>1&&y(a-1),N=!L&&y(a+1),H=y(a),F=!N&&!E;if(!N&&!E&&!_)return this.gutterState=new Xo.Showing(e,t,i,{position:{lineNumber:b,column:C},preference:$u._posPref}),this.renderGutterLightbub(),this.hide();E||L||E&&!H?b-=1:(N||F&&H)&&(b+=1)}else if(a===1&&(a===r.getLineCount()||!y(a+1)&&!y(a)))if(this.gutterState=new Xo.Showing(e,t,i,{position:{lineNumber:b,column:C},preference:$u._posPref}),_)this.gutterHide();else return this.renderGutterLightbub(),this.hide();else if(a{this._gutterDecorationID=t.addDecoration(new I(e,0,e,0),this.gutterDecoration)})}_removeGutterDecoration(e){this._editor.changeDecorations(t=>{t.removeDecoration(e),this._gutterDecorationID=void 0})}_updateGutterDecoration(e,t){this._editor.changeDecorations(i=>{i.changeDecoration(e,new I(t,0,t,0)),i.changeDecorationOptions(e,this.gutterDecoration)})}_updateLightbulbTitle(e,t){this.state.type===1&&(t?this.title=m("codeActionAutoRun","Run: {0}",this.state.actions.validActions[0].action.title):e&&this._preferredKbLabel?this.title=m("preferredcodeActionWithKb","Show Code Actions. Preferred Quick Fix Available ({0})",this._preferredKbLabel):!e&&this._quickFixKbLabel?this.title=m("codeActionWithKb","Show Code Actions ({0})",this._quickFixKbLabel):e||(this.title=m("codeAction","Show Code Actions")))}set title(e){this._domNode.title=e}},$u=pl,pl.GUTTER_DECORATION=kt.register({description:"codicon-gutter-lightbulb-decoration",glyphMarginClassName:Ee.asClassName(ie.lightBulb),glyphMargin:{position:Ao.Left},stickiness:1}),pl.ID="editor.contrib.lightbulbWidget",pl._posPref=[0],pl);BE=$u=Bde([Wde(1,vt)],BE);var RB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},WE=function(o,e){return function(t,i){e(t,i,o)}};const AB="acceptSelectedCodeAction",PB="previewSelectedCodeAction";class Hde{get templateId(){return"header"}renderTemplate(e){e.classList.add("group-header");const t=document.createElement("span");return e.append(t),{container:e,text:t}}renderElement(e,t,i){i.text.textContent=e.group?.title??""}disposeTemplate(e){}}let HE=class{get templateId(){return"action"}constructor(e,t){this._supportsPreview=e,this._keybindingService=t}renderTemplate(e){e.classList.add(this.templateId);const t=document.createElement("div");t.className="icon",e.append(t);const i=document.createElement("span");i.className="title",e.append(i);const n=new ob(e,Ns);return{container:e,icon:t,text:i,keybinding:n}}renderElement(e,t,i){if(e.group?.icon?(i.icon.className=Ee.asClassName(e.group.icon),e.group.icon.color&&(i.icon.style.color=oe(e.group.icon.color.id))):(i.icon.className=Ee.asClassName(ie.lightBulb),i.icon.style.color="var(--vscode-editorLightBulb-foreground)"),!e.item||!e.label)return;i.text.textContent=OB(e.label),i.keybinding.set(e.keybinding),MV(!!e.keybinding,i.keybinding.element);const n=this._keybindingService.lookupKeybinding(AB)?.getLabel(),s=this._keybindingService.lookupKeybinding(PB)?.getLabel();i.container.classList.toggle("option-disabled",e.disabled),e.disabled?i.container.title=e.label:n&&s?this._supportsPreview&&e.canPreview?i.container.title=m({key:"label-preview",comment:['placeholders are keybindings, e.g "F2 to Apply, Shift+F2 to Preview"']},"{0} to Apply, {1} to Preview",n,s):i.container.title=m({key:"label",comment:['placeholder is a keybinding, e.g "F2 to Apply"']},"{0} to Apply",n):i.container.title=""}disposeTemplate(e){e.keybinding.dispose()}};HE=RB([WE(1,vt)],HE);class Vde extends UIEvent{constructor(){super("acceptSelectedAction")}}class Z4 extends UIEvent{constructor(){super("previewSelectedAction")}}function zde(o){if(o.kind==="action")return o.label}let VE=class extends z{constructor(e,t,i,n,s,r){super(),this._delegate=n,this._contextViewService=s,this._keybindingService=r,this._actionLineHeight=24,this._headerLineHeight=26,this.cts=this._register(new In),this.domNode=document.createElement("div"),this.domNode.classList.add("actionList");const a={getHeight:l=>l.kind==="header"?this._headerLineHeight:this._actionLineHeight,getTemplateId:l=>l.kind};this._list=this._register(new go(e,this.domNode,a,[new HE(t,this._keybindingService),new Hde],{keyboardSupport:!1,typeNavigationEnabled:!0,keyboardNavigationLabelProvider:{getKeyboardNavigationLabel:zde},accessibilityProvider:{getAriaLabel:l=>{if(l.kind==="action"){let c=l.label?OB(l?.label):"";return l.disabled&&(c=m({key:"customQuickFixWidget.labels",comment:["Action widget labels for accessibility."]},"{0}, Disabled Reason: {1}",c,l.disabled)),c}return null},getWidgetAriaLabel:()=>m({key:"customQuickFixWidget",comment:["An action widget option"]},"Action Widget"),getRole:l=>l.kind==="action"?"option":"separator",getWidgetRole:()=>"listbox"}})),this._list.style(hu),this._register(this._list.onMouseClick(l=>this.onListClick(l))),this._register(this._list.onMouseOver(l=>this.onListHover(l))),this._register(this._list.onDidChangeFocus(()=>this.onFocus())),this._register(this._list.onDidChangeSelection(l=>this.onListSelection(l))),this._allMenuItems=i,this._list.splice(0,this._list.length,this._allMenuItems),this._list.length&&this.focusNext()}focusCondition(e){return!e.disabled&&e.kind==="action"}hide(e){this._delegate.onHide(e),this.cts.cancel(),this._contextViewService.hideContextView()}layout(e){const t=this._allMenuItems.filter(l=>l.kind==="header").length,n=this._allMenuItems.length*this._actionLineHeight+t*this._headerLineHeight-t*this._actionLineHeight;this._list.layout(n);let s=e;if(this._allMenuItems.length>=50)s=380;else{const l=this._allMenuItems.map((c,d)=>{const h=this.domNode.ownerDocument.getElementById(this._list.getElementID(d));if(h){h.style.width="auto";const u=h.getBoundingClientRect().width;return h.style.width="",u}return 0});s=Math.max(...l,e)}const a=Math.min(n,this.domNode.ownerDocument.body.clientHeight*.7);return this._list.layout(a,s),this.domNode.style.height=`${a}px`,this._list.domFocus(),s}focusPrevious(){this._list.focusPrevious(1,!0,void 0,this.focusCondition)}focusNext(){this._list.focusNext(1,!0,void 0,this.focusCondition)}acceptSelected(e){const t=this._list.getFocus();if(t.length===0)return;const i=t[0],n=this._list.element(i);if(!this.focusCondition(n))return;const s=e?new Z4:new Vde;this._list.setSelection([i],s)}onListSelection(e){if(!e.elements.length)return;const t=e.elements[0];t.item&&this.focusCondition(t)?this._delegate.onSelect(t.item,e.browserEvent instanceof Z4):this._list.setSelection([])}onFocus(){const e=this._list.getFocus();if(e.length===0)return;const t=e[0],i=this._list.element(t);this._delegate.onFocus?.(i.item)}async onListHover(e){const t=e.element;if(t&&t.item&&this.focusCondition(t)){if(this._delegate.onHover&&!t.disabled&&t.kind==="action"){const i=await this._delegate.onHover(t.item,this.cts.token);t.canPreview=i?i.canPreview:void 0}e.index&&this._list.splice(e.index,1,[t])}this._list.setFocus(typeof e.index=="number"?[e.index]:[])}onListClick(e){e.element&&this.focusCondition(e.element)&&this._list.setFocus([])}};VE=RB([WE(4,lu),WE(5,vt)],VE);function OB(o){return o.replace(/\r\n|\r|\n/g," ")}var Ude=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},pL=function(o,e){return function(t,i){e(t,i,o)}};D("actionBar.toggledBackground",IT,m("actionBar.toggledBackground","Background color for toggled action items in action bar."));const Zh={Visible:new le("codeActionMenuVisible",!1,m("codeActionMenuVisible","Whether the action widget list is visible"))},Cu=He("actionWidgetService");let Yh=class extends z{get isVisible(){return Zh.Visible.getValue(this._contextKeyService)||!1}constructor(e,t,i){super(),this._contextViewService=e,this._contextKeyService=t,this._instantiationService=i,this._list=this._register(new Dn)}show(e,t,i,n,s,r,a){const l=Zh.Visible.bindTo(this._contextKeyService),c=this._instantiationService.createInstance(VE,e,t,i,n);this._contextViewService.showContextView({getAnchor:()=>s,render:d=>(l.set(!0),this._renderWidget(d,c,a??[])),onHide:d=>{l.reset(),this._onWidgetClosed(d)}},r,!1)}acceptSelected(e){this._list.value?.acceptSelected(e)}focusPrevious(){this._list?.value?.focusPrevious()}focusNext(){this._list?.value?.focusNext()}hide(e){this._list.value?.hide(e),this._list.clear()}_renderWidget(e,t,i){const n=document.createElement("div");if(n.classList.add("action-widget"),e.appendChild(n),this._list.value=t,this._list.value)n.appendChild(this._list.value.domNode);else throw new Error("List has no value");const s=new X,r=document.createElement("div"),a=e.appendChild(r);a.classList.add("context-view-block"),s.add(U(a,ee.MOUSE_DOWN,f=>f.stopPropagation()));const l=document.createElement("div"),c=e.appendChild(l);c.classList.add("context-view-pointerBlock"),s.add(U(c,ee.POINTER_MOVE,()=>c.remove())),s.add(U(c,ee.MOUSE_DOWN,()=>c.remove()));let d=0;if(i.length){const f=this._createActionBar(".action-widget-action-bar",i);f&&(n.appendChild(f.getContainer().parentElement),s.add(f),d=f.getContainer().offsetWidth)}const h=this._list.value?.layout(d);n.style.width=`${h}px`;const u=s.add(Ph(e));return s.add(u.onDidBlur(()=>this.hide(!0))),s}_createActionBar(e,t){if(!t.length)return;const i=ce(e),n=new oo(i);return n.push(t,{icon:!1,label:!0}),n}_onWidgetClosed(e){this._list.value?.hide(e)}};Yh=Ude([pL(0,lu),pL(1,De),pL(2,ke)],Yh);Qe(Cu,Yh,1);const hb=1100;Rn(class extends nu{constructor(){super({id:"hideCodeActionWidget",title:di("hideCodeActionWidget.title","Hide action widget"),precondition:Zh.Visible,keybinding:{weight:hb,primary:9,secondary:[1033]}})}run(o){o.get(Cu).hide(!0)}});Rn(class extends nu{constructor(){super({id:"selectPrevCodeAction",title:di("selectPrevCodeAction.title","Select previous action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.focusPrevious()}});Rn(class extends nu{constructor(){super({id:"selectNextCodeAction",title:di("selectNextCodeAction.title","Select next action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.focusNext()}});Rn(class extends nu{constructor(){super({id:AB,title:di("acceptSelected.title","Accept selected action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:3,secondary:[2137]}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.acceptSelected()}});Rn(class extends nu{constructor(){super({id:PB,title:di("previewSelected.title","Preview selected action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:2051}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.acceptSelected(!0)}});const $de=new le("supportedCodeAction",""),Y4="_typescript.applyFixAllCodeAction";class Kde extends z{constructor(e,t,i,n=250){super(),this._editor=e,this._markerService=t,this._signalChange=i,this._delay=n,this._autoTriggerTimer=this._register(new wr),this._register(this._markerService.onMarkerChanged(s=>this._onMarkerChanges(s))),this._register(this._editor.onDidChangeCursorPosition(()=>this._tryAutoTrigger()))}trigger(e){const t=this._getRangeOfSelectionUnlessWhitespaceEnclosed(e);this._signalChange(t?{trigger:e,selection:t}:void 0)}_onMarkerChanges(e){const t=this._editor.getModel();t&&e.some(i=>WT(i,t.uri))&&this._tryAutoTrigger()}_tryAutoTrigger(){this._autoTriggerTimer.cancelAndSet(()=>{this.trigger({type:2,triggerAction:Uc.Default})},this._delay)}_getRangeOfSelectionUnlessWhitespaceEnclosed(e){if(!this._editor.hasModel())return;const t=this._editor.getSelection();if(e.type===1)return t;const i=this._editor.getOption(65).enabled;if(i!==xo.Off){{if(i===xo.On)return t;if(i===xo.OnCode){if(!t.isEmpty())return t;const s=this._editor.getModel(),{lineNumber:r,column:a}=t.getPosition(),l=s.getLineContent(r);if(l.length===0)return;if(a===1){if(/\s/.test(l[0]))return}else if(a===s.getLineMaxColumn(r)){if(/\s/.test(l[l.length-1]))return}else if(/\s/.test(l[a-2])&&/\s/.test(l[a-1]))return}}return t}}}var Td;(function(o){o.Empty={type:0};class e{constructor(i,n,s){this.trigger=i,this.position=n,this._cancellablePromise=s,this.type=1,this.actions=s.catch(r=>{if($c(r))return FB;throw r})}cancel(){this._cancellablePromise.cancel()}}o.Triggered=e})(Td||(Td={}));const FB=Object.freeze({allActions:[],validActions:[],dispose:()=>{},documentation:[],hasAutoFix:!1,hasAIFix:!1,allAIFixes:!1});class jde extends z{constructor(e,t,i,n,s,r,a){super(),this._editor=e,this._registry=t,this._markerService=i,this._progressService=s,this._configurationService=r,this._telemetryService=a,this._codeActionOracle=this._register(new Dn),this._state=Td.Empty,this._onDidChangeState=this._register(new A),this.onDidChangeState=this._onDidChangeState.event,this._disposed=!1,this._supportedCodeActions=$de.bindTo(n),this._register(this._editor.onDidChangeModel(()=>this._update())),this._register(this._editor.onDidChangeModelLanguage(()=>this._update())),this._register(this._registry.onDidChange(()=>this._update())),this._register(this._editor.onDidChangeConfiguration(l=>{l.hasChanged(65)&&this._update()})),this._update()}dispose(){this._disposed||(this._disposed=!0,super.dispose(),this.setState(Td.Empty,!0))}_settingEnabledNearbyQuickfixes(){const e=this._editor?.getModel();return this._configurationService?this._configurationService.getValue("editor.codeActionWidget.includeNearbyQuickFixes",{resource:e?.uri}):!1}_update(){if(this._disposed)return;this._codeActionOracle.value=void 0,this.setState(Td.Empty);const e=this._editor.getModel();if(e&&this._registry.has(e)&&!this._editor.getOption(92)){const t=this._registry.all(e).flatMap(i=>i.providedCodeActionKinds??[]);this._supportedCodeActions.set(t.join(" ")),this._codeActionOracle.value=new Kde(this._editor,this._markerService,i=>{if(!i){this.setState(Td.Empty);return}const n=i.selection.getStartPosition(),s=wa(async l=>{if(this._settingEnabledNearbyQuickfixes()&&i.trigger.type===1&&(i.trigger.triggerAction===Uc.QuickFix||i.trigger.filter?.include?.contains(Di.QuickFix))){const c=await mf(this._registry,e,i.selection,i.trigger,rc.None,l),d=[...c.allActions];if(l.isCancellationRequested)return FB;const h=c.validActions?.some(f=>f.action.kind?Di.QuickFix.contains(new ji(f.action.kind)):!1),u=this._markerService.read({resource:e.uri});if(h){for(const f of c.validActions)f.action.command?.arguments?.some(g=>typeof g=="string"&&g.includes(Y4))&&(f.action.diagnostics=[...u.filter(g=>g.relatedInformation)]);return{validActions:c.validActions,allActions:d,documentation:c.documentation,hasAutoFix:c.hasAutoFix,hasAIFix:c.hasAIFix,allAIFixes:c.allAIFixes,dispose:()=>{c.dispose()}}}else if(!h&&u.length>0){const f=i.selection.getPosition();let g=f,p=Number.MAX_VALUE;const _=[...c.validActions];for(const C of u){const w=C.endColumn,v=C.endLineNumber,y=C.startLineNumber;if(v===f.lineNumber||y===f.lineNumber){g=new P(v,w);const x={type:i.trigger.type,triggerAction:i.trigger.triggerAction,filter:{include:i.trigger.filter?.include?i.trigger.filter?.include:Di.QuickFix},autoApply:i.trigger.autoApply,context:{notAvailableMessage:i.trigger.context?.notAvailableMessage||"",position:g}},L=new Fe(g.lineNumber,g.column,g.lineNumber,g.column),E=await mf(this._registry,e,L,x,rc.None,l);if(E.validActions.length!==0){for(const N of E.validActions)N.action.command?.arguments?.some(H=>typeof H=="string"&&H.includes(Y4))&&(N.action.diagnostics=[...u.filter(H=>H.relatedInformation)]);c.allActions.length===0&&d.push(...E.allActions),Math.abs(f.column-w)v.findIndex(y=>y.action.title===C.action.title)===w);return b.sort((C,w)=>C.action.isPreferred&&!w.action.isPreferred?-1:!C.action.isPreferred&&w.action.isPreferred||C.action.isAI&&!w.action.isAI?1:!C.action.isAI&&w.action.isAI?-1:0),{validActions:b,allActions:d,documentation:c.documentation,hasAutoFix:c.hasAutoFix,hasAIFix:c.hasAIFix,allAIFixes:c.allAIFixes,dispose:()=>{c.dispose()}}}}if(i.trigger.type===1){const c=new Hs,d=await mf(this._registry,e,i.selection,i.trigger,rc.None,l);return this._telemetryService&&this._telemetryService.publicLog2("codeAction.invokedDurations",{codeActions:d.validActions.length,duration:c.elapsed()}),d}return mf(this._registry,e,i.selection,i.trigger,rc.None,l)});i.trigger.type===1&&this._progressService?.showWhile(s,250);const r=new Td.Triggered(i.trigger,n,s);let a=!1;this._state.type===1&&(a=this._state.trigger.type===1&&r.type===1&&r.trigger.type===2&&this._state.position!==r.position),a?setTimeout(()=>{this.setState(r)},500):this.setState(r)},void 0),this._codeActionOracle.value.trigger({type:2,triggerAction:Uc.Default})}else this._supportedCodeActions.reset()}trigger(e){this._codeActionOracle.value?.trigger(e)}setState(e,t){e!==this._state&&(this._state.type===1&&this._state.cancel(),this._state=e,!t&&!this._disposed&&this._onDidChangeState.fire(e))}}var qde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Rr=function(o,e){return function(t,i){e(t,i,o)}},Ku;const Gde="quickfix-edit-highlight";var Ic;let zE=(Ic=class extends z{static get(e){return e.getContribution(Ku.ID)}constructor(e,t,i,n,s,r,a,l,c,d,h){super(),this._commandService=a,this._configurationService=l,this._actionWidgetService=c,this._instantiationService=d,this._telemetryService=h,this._activeCodeActions=this._register(new Dn),this._showDisabled=!1,this._disposed=!1,this._editor=e,this._model=this._register(new jde(this._editor,s.codeActionProvider,t,i,r,l,this._telemetryService)),this._register(this._model.onDidChangeState(u=>this.update(u))),this._lightBulbWidget=new ua(()=>{const u=this._editor.getContribution(BE.ID);return u&&this._register(u.onClick(f=>this.showCodeActionsFromLightbulb(f.actions,f))),u}),this._resolver=n.createInstance(FE),this._register(this._editor.onDidLayoutChange(()=>this._actionWidgetService.hide()))}dispose(){this._disposed=!0,super.dispose()}async showCodeActionsFromLightbulb(e,t){if(e.allAIFixes&&e.validActions.length===1){const i=e.validActions[0],n=i.action.command;n&&n.id==="inlineChat.start"&&n.arguments&&n.arguments.length>=1&&(n.arguments[0]={...n.arguments[0],autoSend:!1}),await this._applyCodeAction(i,!1,!1,Gd.FromAILightbulb);return}await this.showCodeActionList(e,t,{includeDisabledActions:!1,fromLightbulb:!0})}showCodeActions(e,t,i){return this.showCodeActionList(t,i,{includeDisabledActions:!1,fromLightbulb:!1})}manualTriggerAtCurrentPosition(e,t,i,n){if(!this._editor.hasModel())return;ca.get(this._editor)?.closeMessage();const s=this._editor.getPosition();this._trigger({type:1,triggerAction:t,filter:i,autoApply:n,context:{notAvailableMessage:e,position:s}})}_trigger(e){return this._model.trigger(e)}async _applyCodeAction(e,t,i,n){try{await this._instantiationService.invokeFunction(Mde,e,n,{preview:i,editor:this._editor})}finally{t&&this._trigger({type:2,triggerAction:Uc.QuickFix,filter:{}})}}hideLightBulbWidget(){this._lightBulbWidget.rawValue?.hide(),this._lightBulbWidget.rawValue?.gutterHide()}async update(e){if(e.type!==1){this.hideLightBulbWidget();return}let t;try{t=await e.actions}catch(n){Ze(n);return}if(!(this._disposed||this._editor.getSelection()?.startLineNumber!==e.position.lineNumber))if(this._lightBulbWidget.value?.update(t,e.trigger,e.position),e.trigger.type===1){if(e.trigger.filter?.include){const s=this.tryGetValidActionToApply(e.trigger,t);if(s){try{this.hideLightBulbWidget(),await this._applyCodeAction(s,!1,!1,Gd.FromCodeActions)}finally{t.dispose()}return}if(e.trigger.context){const r=this.getInvalidActionThatWouldHaveBeenApplied(e.trigger,t);if(r&&r.action.disabled){ca.get(this._editor)?.showMessage(r.action.disabled,e.trigger.context.position),t.dispose();return}}}const n=!!e.trigger.filter?.include;if(e.trigger.context&&(!t.allActions.length||!n&&!t.validActions.length)){ca.get(this._editor)?.showMessage(e.trigger.context.notAvailableMessage,e.trigger.context.position),this._activeCodeActions.value=t,t.dispose();return}this._activeCodeActions.value=t,this.showCodeActionList(t,this.toCoords(e.position),{includeDisabledActions:n,fromLightbulb:!1})}else this._actionWidgetService.isVisible?t.dispose():this._activeCodeActions.value=t}getInvalidActionThatWouldHaveBeenApplied(e,t){if(t.allActions.length&&(e.autoApply==="first"&&t.validActions.length===0||e.autoApply==="ifSingle"&&t.allActions.length===1))return t.allActions.find(({action:i})=>i.disabled)}tryGetValidActionToApply(e,t){if(t.validActions.length&&(e.autoApply==="first"&&t.validActions.length>0||e.autoApply==="ifSingle"&&t.validActions.length===1))return t.validActions[0]}async showCodeActionList(e,t,i){const n=this._editor.createDecorationsCollection(),s=this._editor.getDomNode();if(!s)return;const r=i.includeDisabledActions&&(this._showDisabled||e.validActions.length===0)?e.allActions:e.validActions;if(!r.length)return;const a=P.isIPosition(t)?this.toCoords(t):t,l={onSelect:async(c,d)=>{this._applyCodeAction(c,!0,!!d,i.fromLightbulb?Gd.FromAILightbulb:Gd.FromCodeActions),this._actionWidgetService.hide(!1),n.clear()},onHide:c=>{this._editor?.focus(),n.clear()},onHover:async(c,d)=>{if(d.isCancellationRequested)return;let h=!1;const u=c.action.kind;if(u){const f=new ji(u);h=[Di.RefactorExtract,Di.RefactorInline,Di.RefactorRewrite,Di.RefactorMove,Di.Source].some(p=>p.contains(f))}return{canPreview:h||!!c.action.edit?.edits.length}},onFocus:c=>{if(c&&c.action){const d=c.action.ranges,h=c.action.diagnostics;if(n.clear(),d&&d.length>0){const u=h&&h?.length>1?h.map(f=>({range:f,options:Ku.DECORATION})):d.map(f=>({range:f,options:Ku.DECORATION}));n.set(u)}else if(h&&h.length>0){const u=h.map(g=>({range:g,options:Ku.DECORATION}));n.set(u);const f=h[0];if(f.startLineNumber&&f.startColumn){const g=this._editor.getModel()?.getWordAtPosition({lineNumber:f.startLineNumber,column:f.startColumn})?.word;Hh(m("editingNewSelection","Context: {0} at line {1} and column {2}.",g,f.startLineNumber,f.startColumn))}}}else n.clear()}};this._actionWidgetService.show("codeActionWidget",!0,Fde(r,this._shouldShowHeaders(),this._resolver.getResolver()),l,a,s,this._getActionBarActions(e,t,i))}toCoords(e){if(!this._editor.hasModel())return{x:0,y:0};this._editor.revealPosition(e,1),this._editor.render();const t=this._editor.getScrolledVisiblePosition(e),i=gi(this._editor.getDomNode()),n=i.left+t.left,s=i.top+t.top+t.height;return{x:n,y:s}}_shouldShowHeaders(){const e=this._editor?.getModel();return this._configurationService.getValue("editor.codeActionWidget.showHeaders",{resource:e?.uri})}_getActionBarActions(e,t,i){if(i.fromLightbulb)return[];const n=e.documentation.map(s=>({id:s.id,label:s.title,tooltip:s.tooltip??"",class:void 0,enabled:!0,run:()=>this._commandService.executeCommand(s.id,...s.arguments??[])}));return i.includeDisabledActions&&e.validActions.length>0&&e.allActions.length!==e.validActions.length&&n.push(this._showDisabled?{id:"hideMoreActions",label:m("hideMoreActions","Hide Disabled"),enabled:!0,tooltip:"",class:void 0,run:()=>(this._showDisabled=!1,this.showCodeActionList(e,t,i))}:{id:"showMoreActions",label:m("showMoreActions","Show Disabled"),enabled:!0,tooltip:"",class:void 0,run:()=>(this._showDisabled=!0,this.showCodeActionList(e,t,i))}),n}},Ku=Ic,Ic.ID="editor.contrib.codeActionController",Ic.DECORATION=kt.register({description:"quickfix-highlight",className:Gde}),Ic);zE=Ku=qde([Rr(1,xa),Rr(2,De),Rr(3,ke),Rr(4,Se),Rr(5,G_),Rr(6,hi),Rr(7,lt),Rr(8,Cu),Rr(9,ke),Rr(10,$s)],zE);Sr((o,e)=>{((n,s)=>{s&&e.addRule(`.monaco-editor ${n} { background-color: ${s}; }`)})(".quickfix-edit-highlight",o.getColor(ll));const i=o.getColor(Ud);i&&e.addRule(`.monaco-editor .quickfix-edit-highlight { border: 1px ${mc(o.type)?"dotted":"solid"} ${i}; box-sizing: border-box; }`)});var BB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},rw=function(o,e){return function(t,i){e(t,i,o)}};class Q4{constructor(e,t,i){this.marker=e,this.index=t,this.total=i}}let UE=class{constructor(e,t,i){this._markerService=t,this._configService=i,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._dispoables=new X,this._markers=[],this._nextIdx=-1,ve.isUri(e)?this._resourceFilter=a=>a.toString()===e.toString():e&&(this._resourceFilter=e);const n=this._configService.getValue("problems.sortOrder"),s=(a,l)=>{let c=Kp(a.resource.toString(),l.resource.toString());return c===0&&(n==="position"?c=I.compareRangesUsingStarts(a,l)||Vt.compare(a.severity,l.severity):c=Vt.compare(a.severity,l.severity)||I.compareRangesUsingStarts(a,l)),c},r=()=>{this._markers=this._markerService.read({resource:ve.isUri(e)?e:void 0,severities:Vt.Error|Vt.Warning|Vt.Info}),typeof e=="function"&&(this._markers=this._markers.filter(a=>this._resourceFilter(a.resource))),this._markers.sort(s)};r(),this._dispoables.add(t.onMarkerChanged(a=>{(!this._resourceFilter||a.some(l=>this._resourceFilter(l)))&&(r(),this._nextIdx=-1,this._onDidChange.fire())}))}dispose(){this._dispoables.dispose(),this._onDidChange.dispose()}matches(e){return!this._resourceFilter&&!e?!0:!this._resourceFilter||!e?!1:this._resourceFilter(e)}get selected(){const e=this._markers[this._nextIdx];return e&&new Q4(e,this._nextIdx+1,this._markers.length)}_initIdx(e,t,i){let n=!1,s=this._markers.findIndex(r=>r.resource.toString()===e.uri.toString());s<0&&(s=SN(this._markers,{resource:e.uri},(r,a)=>Kp(r.resource.toString(),a.resource.toString())),s<0&&(s=~s));for(let r=s;rn.resource.toString()===e.toString());if(!(i<0)){for(;i=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Wu=function(o,e){return function(t,i){e(t,i,o)}},jE;class Yde{constructor(e,t,i,n,s){this._openerService=n,this._labelService=s,this._lines=0,this._longestLineLength=0,this._relatedDiagnostics=new WeakMap,this._disposables=new X,this._editor=t;const r=document.createElement("div");r.className="descriptioncontainer",this._messageBlock=document.createElement("div"),this._messageBlock.classList.add("message"),this._messageBlock.setAttribute("aria-live","assertive"),this._messageBlock.setAttribute("role","alert"),r.appendChild(this._messageBlock),this._relatedBlock=document.createElement("div"),r.appendChild(this._relatedBlock),this._disposables.add(jt(this._relatedBlock,"click",a=>{a.preventDefault();const l=this._relatedDiagnostics.get(a.target);l&&i(l)})),this._scrollable=new J3(r,{horizontal:1,vertical:1,useShadows:!1,horizontalScrollbarSize:6,verticalScrollbarSize:6}),e.appendChild(this._scrollable.getDomNode()),this._disposables.add(this._scrollable.onScroll(a=>{r.style.left=`-${a.scrollLeft}px`,r.style.top=`-${a.scrollTop}px`})),this._disposables.add(this._scrollable)}dispose(){xt(this._disposables)}update(e){const{source:t,message:i,relatedInformation:n,code:s}=e;let r=(t?.length||0)+2;s&&(typeof s=="string"?r+=s.length:r+=s.value.length);const a=va(i);this._lines=a.length,this._longestLineLength=0;for(const u of a)this._longestLineLength=Math.max(u.length+r,this._longestLineLength);xn(this._messageBlock),this._messageBlock.setAttribute("aria-label",this.getAriaLabel(e)),this._editor.applyFontInfo(this._messageBlock);let l=this._messageBlock;for(const u of a)l=document.createElement("div"),l.innerText=u,u===""&&(l.style.height=this._messageBlock.style.lineHeight),this._messageBlock.appendChild(l);if(t||s){const u=document.createElement("span");if(u.classList.add("details"),l.appendChild(u),t){const f=document.createElement("span");f.innerText=t,f.classList.add("source"),u.appendChild(f)}if(s)if(typeof s=="string"){const f=document.createElement("span");f.innerText=`(${s})`,f.classList.add("code"),u.appendChild(f)}else{this._codeLink=ce("a.code-link"),this._codeLink.setAttribute("href",`${s.target.toString()}`),this._codeLink.onclick=g=>{this._openerService.open(s.target,{allowCommands:!0}),g.preventDefault(),g.stopPropagation()};const f=Z(this._codeLink,ce("span"));f.innerText=s.value,u.appendChild(this._codeLink)}}if(xn(this._relatedBlock),this._editor.applyFontInfo(this._relatedBlock),Ps(n)){const u=this._relatedBlock.appendChild(document.createElement("div"));u.style.paddingTop=`${Math.floor(this._editor.getOption(67)*.66)}px`,this._lines+=1;for(const f of n){const g=document.createElement("div"),p=document.createElement("a");p.classList.add("filename"),p.innerText=`${this._labelService.getUriBasenameLabel(f.resource)}(${f.startLineNumber}, ${f.startColumn}): `,p.title=this._labelService.getUriLabel(f.resource),this._relatedDiagnostics.set(p,f);const _=document.createElement("span");_.innerText=f.message,g.appendChild(p),g.appendChild(_),this._lines+=1,u.appendChild(g)}}const c=this._editor.getOption(50),d=Math.ceil(c.typicalFullwidthCharacterWidth*this._longestLineLength*.75),h=c.lineHeight*this._lines;this._scrollable.setScrollDimensions({scrollWidth:d,scrollHeight:h})}layout(e,t){this._scrollable.getDomNode().style.height=`${e}px`,this._scrollable.getDomNode().style.width=`${t}px`,this._scrollable.setScrollDimensions({width:t,height:e})}getHeightInLines(){return Math.min(17,this._lines)}getAriaLabel(e){let t="";switch(e.severity){case Vt.Error:t=m("Error","Error");break;case Vt.Warning:t=m("Warning","Warning");break;case Vt.Info:t=m("Info","Info");break;case Vt.Hint:t=m("Hint","Hint");break}let i=m("marker aria","{0} at {1}. ",t,e.startLineNumber+":"+e.startColumn);const n=this._editor.getModel();return n&&e.startLineNumber<=n.getLineCount()&&e.startLineNumber>=1&&(i=`${n.getLineContent(e.startLineNumber)}, ${i}`),i}}var yh;let O_=(yh=class extends Qv{constructor(e,t,i,n,s,r,a){super(e,{showArrow:!0,showFrame:!0,isAccessible:!0,frameWidth:1},s),this._themeService=t,this._openerService=i,this._menuService=n,this._contextKeyService=r,this._labelService=a,this._callOnDispose=new X,this._onDidSelectRelatedInformation=new A,this.onDidSelectRelatedInformation=this._onDidSelectRelatedInformation.event,this._severity=Vt.Warning,this._backgroundColor=q.white,this._applyTheme(t.getColorTheme()),this._callOnDispose.add(t.onDidColorThemeChange(this._applyTheme.bind(this))),this.create()}_applyTheme(e){this._backgroundColor=e.getColor(ehe);let t=qE,i=Qde;this._severity===Vt.Warning?(t=J1,i=Xde):this._severity===Vt.Info&&(t=GE,i=Jde);const n=e.getColor(t),s=e.getColor(i);this.style({arrowColor:n,frameColor:n,headerBackgroundColor:s,primaryHeadingColor:e.getColor(iB),secondaryHeadingColor:e.getColor(nB)})}_applyStyles(){this._parentContainer&&(this._parentContainer.style.backgroundColor=this._backgroundColor?this._backgroundColor.toString():""),super._applyStyles()}dispose(){this._callOnDispose.dispose(),super.dispose()}_fillHead(e){super._fillHead(e),this._disposables.add(this._actionbarWidget.actionRunner.onWillRun(n=>this.editor.focus()));const t=[],i=this._menuService.getMenuActions(jE.TitleMenu,this._contextKeyService);XT(i,t),this._actionbarWidget.push(t,{label:!1,icon:!0,index:0})}_fillTitleIcon(e){this._icon=Z(e,ce(""))}_fillBody(e){this._parentContainer=e,e.classList.add("marker-widget"),this._parentContainer.tabIndex=0,this._parentContainer.setAttribute("role","tooltip"),this._container=document.createElement("div"),e.appendChild(this._container),this._message=new Yde(this._container,this.editor,t=>this._onDidSelectRelatedInformation.fire(t),this._openerService,this._labelService),this._disposables.add(this._message)}show(){throw new Error("call showAtMarker")}showAtMarker(e,t,i){this._container.classList.remove("stale"),this._message.update(e),this._severity=e.severity,this._applyTheme(this._themeService.getColorTheme());const n=I.lift(e),s=this.editor.getPosition(),r=s&&n.containsPosition(s)?s:n.getStartPosition();super.show(r,this.computeRequiredHeight());const a=this.editor.getModel();if(a){const l=i>1?m("problems","{0} of {1} problems",t,i):m("change","{0} of {1} problem",t,i);this.setTitle(Fo(a.uri),l)}this._icon.className=`codicon ${KE.className(Vt.toSeverity(this._severity))}`,this.editor.revealPositionNearTop(r,0),this.editor.focus()}updateMarker(e){this._container.classList.remove("stale"),this._message.update(e)}showStale(){this._container.classList.add("stale"),this._relayout()}_doLayoutBody(e,t){super._doLayoutBody(e,t),this._heightInPixel=e,this._message.layout(e,t),this._container.style.height=`${e}px`}_onWidth(e){this._message.layout(this._heightInPixel,e)}_relayout(){super._relayout(this.computeRequiredHeight())}computeRequiredHeight(){return 3+this._message.getHeightInLines()}},jE=yh,yh.TitleMenu=new $e("gotoErrorTitleMenu"),yh);O_=jE=Zde([Wu(1,en),Wu(2,Vo),Wu(3,yr),Wu(4,ke),Wu(5,De),Wu(6,Cg)],O_);const X4=t_(Y0,SK),J4=t_(Il,i_),e5=t_(ma,n_),qE=D("editorMarkerNavigationError.background",{dark:X4,light:X4,hcDark:Ye,hcLight:Ye},m("editorMarkerNavigationError","Editor marker navigation widget error color.")),Qde=D("editorMarkerNavigationError.headerBackground",{dark:Ae(qE,.1),light:Ae(qE,.1),hcDark:null,hcLight:null},m("editorMarkerNavigationErrorHeaderBackground","Editor marker navigation widget error heading background.")),J1=D("editorMarkerNavigationWarning.background",{dark:J4,light:J4,hcDark:Ye,hcLight:Ye},m("editorMarkerNavigationWarning","Editor marker navigation widget warning color.")),Xde=D("editorMarkerNavigationWarning.headerBackground",{dark:Ae(J1,.1),light:Ae(J1,.1),hcDark:"#0C141F",hcLight:Ae(J1,.2)},m("editorMarkerNavigationWarningBackground","Editor marker navigation widget warning heading background.")),GE=D("editorMarkerNavigationInfo.background",{dark:e5,light:e5,hcDark:Ye,hcLight:Ye},m("editorMarkerNavigationInfo","Editor marker navigation widget info color.")),Jde=D("editorMarkerNavigationInfo.headerBackground",{dark:Ae(GE,.1),light:Ae(GE,.1),hcDark:null,hcLight:null},m("editorMarkerNavigationInfoHeaderBackground","Editor marker navigation widget info heading background.")),ehe=D("editorMarkerNavigation.background",Oo,m("editorMarkerNavigationBackground","Editor marker navigation widget background."));var the=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},u1=function(o,e){return function(t,i){e(t,i,o)}},Vm,Sh;let Qh=(Sh=class{static get(e){return e.getContribution(Vm.ID)}constructor(e,t,i,n,s){this._markerNavigationService=t,this._contextKeyService=i,this._editorService=n,this._instantiationService=s,this._sessionDispoables=new X,this._editor=e,this._widgetVisible=HB.bindTo(this._contextKeyService)}dispose(){this._cleanUp(),this._sessionDispoables.dispose()}_cleanUp(){this._widgetVisible.reset(),this._sessionDispoables.clear(),this._widget=void 0,this._model=void 0}_getOrCreateModel(e){if(this._model&&this._model.matches(e))return this._model;let t=!1;return this._model&&(t=!0,this._cleanUp()),this._model=this._markerNavigationService.getMarkerList(e),t&&this._model.move(!0,this._editor.getModel(),this._editor.getPosition()),this._widget=this._instantiationService.createInstance(O_,this._editor),this._widget.onDidClose(()=>this.close(),this,this._sessionDispoables),this._widgetVisible.set(!0),this._sessionDispoables.add(this._model),this._sessionDispoables.add(this._widget),this._sessionDispoables.add(this._editor.onDidChangeCursorPosition(i=>{(!this._model?.selected||!I.containsPosition(this._model?.selected.marker,i.position))&&this._model?.resetIndex()})),this._sessionDispoables.add(this._model.onDidChange(()=>{if(!this._widget||!this._widget.position||!this._model)return;const i=this._model.find(this._editor.getModel().uri,this._widget.position);i?this._widget.updateMarker(i.marker):this._widget.showStale()})),this._sessionDispoables.add(this._widget.onDidSelectRelatedInformation(i=>{this._editorService.openCodeEditor({resource:i.resource,options:{pinned:!0,revealIfOpened:!0,selection:I.lift(i).collapseToStart()}},this._editor),this.close(!1)})),this._sessionDispoables.add(this._editor.onDidChangeModel(()=>this._cleanUp())),this._model}close(e=!0){this._cleanUp(),e&&this._editor.focus()}showAtMarker(e){if(this._editor.hasModel()){const t=this._getOrCreateModel(this._editor.getModel().uri);t.resetIndex(),t.move(!0,this._editor.getModel(),new P(e.startLineNumber,e.startColumn)),t.selected&&this._widget.showAtMarker(t.selected.marker,t.selected.index,t.selected.total)}}async nagivate(e,t){if(this._editor.hasModel()){const i=this._getOrCreateModel(t?void 0:this._editor.getModel().uri);if(i.move(e,this._editor.getModel(),this._editor.getPosition()),!i.selected)return;if(i.selected.marker.resource.toString()!==this._editor.getModel().uri.toString()){this._cleanUp();const n=await this._editorService.openCodeEditor({resource:i.selected.marker.resource,options:{pinned:!1,revealIfOpened:!0,selectionRevealType:2,selection:i.selected.marker}},this._editor);n&&(Vm.get(n)?.close(),Vm.get(n)?.nagivate(e,t))}else this._widget.showAtMarker(i.selected.marker,i.selected.index,i.selected.total)}}},Vm=Sh,Sh.ID="editor.contrib.markerController",Sh);Qh=Vm=the([u1(1,WB),u1(2,De),u1(3,Pt),u1(4,ke)],Qh);class Fy extends bi{constructor(e,t,i){super(i),this._next=e,this._multiFile=t}async run(e,t){t.hasModel()&&Qh.get(t)?.nagivate(this._next,this._multiFile)}}const Bd=class Bd extends Fy{constructor(){super(!0,!1,{id:Bd.ID,label:Bd.LABEL,alias:"Go to Next Problem (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:578,weight:100},menuOpts:{menuId:O_.TitleMenu,title:Bd.LABEL,icon:Wi("marker-navigation-next",ie.arrowDown,m("nextMarkerIcon","Icon for goto next marker.")),group:"navigation",order:1}})}};Bd.ID="editor.action.marker.next",Bd.LABEL=m("markerAction.next.label","Go to Next Problem (Error, Warning, Info)");let aw=Bd;const Wd=class Wd extends Fy{constructor(){super(!1,!1,{id:Wd.ID,label:Wd.LABEL,alias:"Go to Previous Problem (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:1602,weight:100},menuOpts:{menuId:O_.TitleMenu,title:Wd.LABEL,icon:Wi("marker-navigation-previous",ie.arrowUp,m("previousMarkerIcon","Icon for goto previous marker.")),group:"navigation",order:2}})}};Wd.ID="editor.action.marker.prev",Wd.LABEL=m("markerAction.previous.label","Go to Previous Problem (Error, Warning, Info)");let ZE=Wd;class ihe extends Fy{constructor(){super(!0,!0,{id:"editor.action.marker.nextInFiles",label:m("markerAction.nextInFiles.label","Go to Next Problem in Files (Error, Warning, Info)"),alias:"Go to Next Problem in Files (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:66,weight:100},menuOpts:{menuId:$e.MenubarGoMenu,title:m({key:"miGotoNextProblem",comment:["&& denotes a mnemonic"]},"Next &&Problem"),group:"6_problem_nav",order:1}})}}class nhe extends Fy{constructor(){super(!1,!0,{id:"editor.action.marker.prevInFiles",label:m("markerAction.previousInFiles.label","Go to Previous Problem in Files (Error, Warning, Info)"),alias:"Go to Previous Problem in Files (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:1090,weight:100},menuOpts:{menuId:$e.MenubarGoMenu,title:m({key:"miGotoPreviousProblem",comment:["&& denotes a mnemonic"]},"Previous &&Problem"),group:"6_problem_nav",order:2}})}}Ho(Qh.ID,Qh,4);mi(aw);mi(ZE);mi(ihe);mi(nhe);const HB=new le("markersNavigationVisible",!1),she=co.bindToContribution(Qh.get);ge(new she({id:"closeMarkersNavigation",precondition:HB,handler:o=>o.close(),kbOpts:{weight:150,kbExpr:K.focus,primary:9,secondary:[1033]}}));var ohe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},_L=function(o,e){return function(t,i){e(t,i,o)}};const bo=ce;class rhe{constructor(e,t,i){this.owner=e,this.range=t,this.marker=i}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}const t5={type:1,filter:{include:Di.QuickFix},triggerAction:Uc.QuickFixHover};let YE=class{constructor(e,t,i,n){this._editor=e,this._markerDecorationsService=t,this._openerService=i,this._languageFeaturesService=n,this.hoverOrdinal=1,this.recentMarkerCodeActionsInfo=void 0}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1&&!e.supportsMarkerHover)return[];const i=this._editor.getModel(),n=e.range.startLineNumber,s=i.getLineMaxColumn(n),r=[];for(const a of t){const l=a.range.startLineNumber===n?a.range.startColumn:1,c=a.range.endLineNumber===n?a.range.endColumn:s,d=this._markerDecorationsService.getMarker(i.uri,a);if(!d)continue;const h=new I(e.range.startLineNumber,l,e.range.startLineNumber,c);r.push(new rhe(this,h,d))}return r}renderHoverParts(e,t){if(!t.length)return new Ng([]);const i=new X,n=[];t.forEach(r=>{const a=this._renderMarkerHover(r);e.fragment.appendChild(a.hoverElement),n.push(a)});const s=t.length===1?t[0]:t.sort((r,a)=>Vt.compare(r.marker.severity,a.marker.severity))[0];return this.renderMarkerStatusbar(e,s,i),new Ng(n)}_renderMarkerHover(e){const t=new X,i=bo("div.hover-row"),n=Z(i,bo("div.marker.hover-contents")),{source:s,message:r,code:a,relatedInformation:l}=e.marker;this._editor.applyFontInfo(n);const c=Z(n,bo("span"));if(c.style.whiteSpace="pre-wrap",c.innerText=r,s||a)if(a&&typeof a!="string"){const h=bo("span");if(s){const p=Z(h,bo("span"));p.innerText=s}const u=Z(h,bo("a.code-link"));u.setAttribute("href",a.target.toString()),t.add(U(u,"click",p=>{this._openerService.open(a.target,{allowCommands:!0}),p.preventDefault(),p.stopPropagation()}));const f=Z(u,bo("span"));f.innerText=a.value;const g=Z(n,h);g.style.opacity="0.6",g.style.paddingLeft="6px"}else{const h=Z(n,bo("span"));h.style.opacity="0.6",h.style.paddingLeft="6px",h.innerText=s&&a?`${s}(${a})`:s||`(${a})`}if(Ps(l))for(const{message:h,resource:u,startLineNumber:f,startColumn:g}of l){const p=Z(n,bo("div"));p.style.marginTop="8px";const _=Z(p,bo("a"));_.innerText=`${Fo(u)}(${f}, ${g}): `,_.style.cursor="pointer",t.add(U(_,"click",C=>{if(C.stopPropagation(),C.preventDefault(),this._openerService){const w={selection:{startLineNumber:f,startColumn:g}};this._openerService.open(u,{fromUserGesture:!0,editorOptions:w}).catch(Ze)}}));const b=Z(p,bo("span"));b.innerText=h,this._editor.applyFontInfo(b)}return{hoverPart:e,hoverElement:i,dispose:()=>t.dispose()}}renderMarkerStatusbar(e,t,i){if(t.marker.severity===Vt.Error||t.marker.severity===Vt.Warning||t.marker.severity===Vt.Info){const n=Qh.get(this._editor);n&&e.statusBar.addAction({label:m("view problem","View Problem"),commandId:aw.ID,run:()=>{e.hide(),n.showAtMarker(t.marker),this._editor.focus()}})}if(!this._editor.getOption(92)){const n=e.statusBar.append(bo("div"));this.recentMarkerCodeActionsInfo&&(QC.makeKey(this.recentMarkerCodeActionsInfo.marker)===QC.makeKey(t.marker)?this.recentMarkerCodeActionsInfo.hasCodeActions||(n.textContent=m("noQuickFixes","No quick fixes available")):this.recentMarkerCodeActionsInfo=void 0);const s=this.recentMarkerCodeActionsInfo&&!this.recentMarkerCodeActionsInfo.hasCodeActions?z.None:rg(()=>n.textContent=m("checkingForQuickFixes","Checking for quick fixes..."),200,i);n.textContent||(n.textContent=" ");const r=this.getCodeActions(t.marker);i.add(_e(()=>r.cancel())),r.then(a=>{if(s.dispose(),this.recentMarkerCodeActionsInfo={marker:t.marker,hasCodeActions:a.validActions.length>0},!this.recentMarkerCodeActionsInfo.hasCodeActions){a.dispose(),n.textContent=m("noQuickFixes","No quick fixes available");return}n.style.display="none";let l=!1;i.add(_e(()=>{l||a.dispose()})),e.statusBar.addAction({label:m("quick fixes","Quick Fix..."),commandId:TB,run:c=>{l=!0;const d=zE.get(this._editor),h=gi(c);e.hide(),d?.showCodeActions(t5,a,{x:h.left,y:h.top,width:h.width,height:h.height})}})},Ze)}}getCodeActions(e){return wa(t=>mf(this._languageFeaturesService.codeActionProvider,this._editor.getModel(),new I(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),t5,rc.None,t))}};YE=ohe([_L(1,n2),_L(2,Vo),_L(3,Se)],YE);class ahe{get lineNumber(){return this._lineNumber}set lineNumber(e){this._lineNumber=e}get lane(){return this._laneOrLine}set lane(e){this._laneOrLine=e}constructor(e){this._editor=e,this._lineNumber=-1,this._laneOrLine=Ao.Center}computeSync(){const e=s=>({value:s}),t=this._editor.getLineDecorations(this._lineNumber),i=[],n=this._laneOrLine==="lineNo";if(!t)return i;for(const s of t){const r=s.options.glyphMargin?.position??Ao.Center;if(!n&&r!==this._laneOrLine)continue;const a=n?s.options.lineNumberHoverMessage:s.options.glyphMarginHoverMessage;!a||bg(a)||i.push(...T5(a).map(e))}return i}}var lhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},i5=function(o,e){return function(t,i){e(t,i,o)}},QE;const n5=ce;var Lh;let XE=(Lh=class extends z{constructor(e,t,i){super(),this._renderDisposeables=this._register(new X),this._editor=e,this._isVisible=!1,this._messages=[],this._hover=this._register(new RT),this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible),this._markdownRenderer=this._register(new Wh({editor:this._editor},t,i)),this._computer=new ahe(this._editor),this._hoverOperation=this._register(new fB(this._editor,this._computer)),this._register(this._hoverOperation.onResult(n=>{this._withResult(n.value)})),this._register(this._editor.onDidChangeModelDecorations(()=>this._onModelDecorationsChanged())),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(50)&&this._updateFont()})),this._register(jt(this._hover.containerDomNode,"mouseleave",n=>{this._onMouseLeave(n)})),this._editor.addOverlayWidget(this)}dispose(){this._editor.removeOverlayWidget(this),super.dispose()}getId(){return QE.ID}getDomNode(){return this._hover.containerDomNode}getPosition(){return null}_updateFont(){Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName("code")).forEach(t=>this._editor.applyFontInfo(t))}_onModelDecorationsChanged(){this._isVisible&&(this._hoverOperation.cancel(),this._hoverOperation.start(0))}showsOrWillShow(e){const t=e.target;return t.type===2&&t.detail.glyphMarginLane?(this._startShowingAt(t.position.lineNumber,t.detail.glyphMarginLane),!0):t.type===3?(this._startShowingAt(t.position.lineNumber,"lineNo"),!0):!1}_startShowingAt(e,t){this._computer.lineNumber===e&&this._computer.lane===t||(this._hoverOperation.cancel(),this.hide(),this._computer.lineNumber=e,this._computer.lane=t,this._hoverOperation.start(0))}hide(){this._computer.lineNumber=-1,this._hoverOperation.cancel(),this._isVisible&&(this._isVisible=!1,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible))}_withResult(e){this._messages=e,this._messages.length>0?this._renderMessages(this._computer.lineNumber,this._messages):this.hide()}_renderMessages(e,t){this._renderDisposeables.clear();const i=document.createDocumentFragment();for(const n of t){const s=n5("div.hover-row.markdown-hover"),r=Z(s,n5("div.hover-contents")),a=this._renderDisposeables.add(this._markdownRenderer.render(n.value));r.appendChild(a.element),i.appendChild(s)}this._updateContents(i),this._showAt(e)}_updateContents(e){this._hover.contentsDomNode.textContent="",this._hover.contentsDomNode.appendChild(e),this._updateFont()}_showAt(e){this._isVisible||(this._isVisible=!0,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible));const t=this._editor.getLayoutInfo(),i=this._editor.getTopForLineNumber(e),n=this._editor.getScrollTop(),s=this._editor.getOption(67),r=this._hover.containerDomNode.clientHeight,a=i-n-(r-s)/2,l=t.glyphMarginLeft+t.glyphMarginWidth+(this._computer.lane==="lineNo"?t.lineNumbersWidth:0);this._hover.containerDomNode.style.left=`${l}px`,this._hover.containerDomNode.style.top=`${Math.max(Math.round(a),0)}px`}_onMouseLeave(e){const t=this._editor.getDomNode();(!t||!Py(t,e.x,e.y))&&this.hide()}},QE=Lh,Lh.ID="editor.contrib.modesGlyphHoverWidget",Lh);XE=QE=lhe([i5(1,qt),i5(2,Vo)],XE);var che=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},dhe=function(o,e){return function(t,i){e(t,i,o)}},tg;let lw=(tg=class extends z{constructor(e,t){super(),this._editor=e,this._instantiationService=t,this.shouldKeepOpenOnEditorMouseMoveOrLeave=!1,this._listenersStore=new X,this._hoverState={mouseDown:!1},this._reactToEditorMouseMoveRunner=this._register(new ci(()=>this._reactToEditorMouseMove(this._mouseMoveEvent),0)),this._hookListeners(),this._register(this._editor.onDidChangeConfiguration(i=>{i.hasChanged(60)&&(this._unhookListeners(),this._hookListeners())}))}_hookListeners(){const e=this._editor.getOption(60);this._hoverSettings={enabled:e.enabled,sticky:e.sticky,hidingDelay:e.hidingDelay},e.enabled?(this._listenersStore.add(this._editor.onMouseDown(t=>this._onEditorMouseDown(t))),this._listenersStore.add(this._editor.onMouseUp(()=>this._onEditorMouseUp())),this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))):(this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))),this._listenersStore.add(this._editor.onMouseLeave(t=>this._onEditorMouseLeave(t))),this._listenersStore.add(this._editor.onDidChangeModel(()=>{this._cancelScheduler(),this._hideWidgets()})),this._listenersStore.add(this._editor.onDidChangeModelContent(()=>this._cancelScheduler())),this._listenersStore.add(this._editor.onDidScrollChange(t=>this._onEditorScrollChanged(t)))}_unhookListeners(){this._listenersStore.clear()}_cancelScheduler(){this._mouseMoveEvent=void 0,this._reactToEditorMouseMoveRunner.cancel()}_onEditorScrollChanged(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()}_onEditorMouseDown(e){this._hoverState.mouseDown=!0,!this._isMouseOnMarginHoverWidget(e)&&this._hideWidgets()}_isMouseOnMarginHoverWidget(e){const t=this._glyphWidget?.getDomNode();return t?Py(t,e.event.posx,e.event.posy):!1}_onEditorMouseUp(){this._hoverState.mouseDown=!1}_onEditorMouseLeave(e){this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._cancelScheduler(),this._isMouseOnMarginHoverWidget(e))||this._hideWidgets()}_shouldNotRecomputeCurrentHoverWidget(e){const t=this._hoverSettings.sticky,i=this._isMouseOnMarginHoverWidget(e);return t&&i}_onEditorMouseMove(e){if(this.shouldKeepOpenOnEditorMouseMoveOrLeave)return;if(this._mouseMoveEvent=e,this._shouldNotRecomputeCurrentHoverWidget(e)){this._reactToEditorMouseMoveRunner.cancel();return}this._reactToEditorMouseMove(e)}_reactToEditorMouseMove(e){!e||this._tryShowHoverWidget(e)||this._hideWidgets()}_tryShowHoverWidget(e){return this._getOrCreateGlyphWidget().showsOrWillShow(e)}_onKeyDown(e){this._editor.hasModel()&&(e.keyCode===5||e.keyCode===6||e.keyCode===57||e.keyCode===4||this._hideWidgets())}_hideWidgets(){this._glyphWidget?.hide()}_getOrCreateGlyphWidget(){return this._glyphWidget||(this._glyphWidget=this._instantiationService.createInstance(XE,this._editor)),this._glyphWidget}dispose(){super.dispose(),this._unhookListeners(),this._listenersStore.dispose(),this._glyphWidget?.dispose()}},tg.ID="editor.contrib.marginHover",tg);lw=che([dhe(1,ke)],lw);const By=new class{constructor(){this._implementations=[]}register(e){return this._implementations.push(e),{dispose:()=>{const t=this._implementations.indexOf(e);t!==-1&&this._implementations.splice(t,1)}}}getImplementations(){return this._implementations}};class hhe{}class uhe{}class fhe{}Ho(Tn.ID,Tn,2);Ho(lw.ID,lw,2);mi(dde);mi(hde);mi(ude);mi(fde);mi(gde);mi(mde);mi(pde);mi(_de);mi(bde);mi(Cde);mi(vde);mi(wde);Oy.register(P_);Oy.register(YE);Sr((o,e)=>{const t=o.getColor(z3);t&&(e.addRule(`.monaco-editor .monaco-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${t.transparent(.5)}; }`),e.addRule(`.monaco-editor .monaco-hover hr { border-top: 1px solid ${t.transparent(.5)}; }`),e.addRule(`.monaco-editor .monaco-hover hr { border-bottom: 0px solid ${t.transparent(.5)}; }`))});By.register(new hhe);By.register(new uhe);By.register(new fhe);const zr=class zr extends z{constructor(e,t){super(),this.contextKeyService=e,this.model=t,this.inlineCompletionVisible=zr.inlineSuggestionVisible.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentation=zr.inlineSuggestionHasIndentation.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentationLessThanTabSize=zr.inlineSuggestionHasIndentationLessThanTabSize.bindTo(this.contextKeyService),this.suppressSuggestions=zr.suppressSuggestions.bindTo(this.contextKeyService),this._register(We(i=>{const s=this.model.read(i)?.state.read(i),r=!!s?.inlineCompletion&&s?.primaryGhostText!==void 0&&!s?.primaryGhostText.isEmpty();this.inlineCompletionVisible.set(r),s?.primaryGhostText&&s?.inlineCompletion&&this.suppressSuggestions.set(s.inlineCompletion.inlineCompletion.source.inlineCompletions.suppressSuggestions)})),this._register(We(i=>{const n=this.model.read(i);let s=!1,r=!0;const a=n?.primaryGhostText.read(i);if(n?.selectedSuggestItem&&a&&a.parts.length>0){const{column:l,lines:c}=a.parts[0],d=c[0],h=n.textModel.getLineIndentColumn(a.lineNumber);if(l<=h){let f=zn(d);f===-1&&(f=d.length-1),s=f>0;const g=n.textModel.getOptions().tabSize;r=_i.visibleColumnFromColumn(d,f+1,g){t.setStyle(o.read(i))})),e}class cw{constructor(e,t){this.lineNumber=e,this.parts=t}equals(e){return this.lineNumber===e.lineNumber&&this.parts.length===e.parts.length&&this.parts.every((t,i)=>t.equals(e.parts[i]))}renderForScreenReader(e){if(this.parts.length===0)return"";const t=this.parts[this.parts.length-1],i=e.substr(0,t.column-1);return new gT([...this.parts.map(s=>new fa(I.fromPositions(new P(1,s.column)),s.lines.join(` +`)))]).applyToString(i).substring(this.parts[0].column-1)}isEmpty(){return this.parts.every(e=>e.lines.length===0)}get lineCount(){return 1+this.parts.reduce((e,t)=>e+t.lines.length-1,0)}}class JE{constructor(e,t,i){this.column=e,this.text=t,this.preview=i,this.lines=va(this.text)}equals(e){return this.column===e.column&&this.lines.length===e.lines.length&&this.lines.every((t,i)=>t===e.lines[i])}}class eN{constructor(e,t,i,n=0){this.lineNumber=e,this.columnRange=t,this.text=i,this.additionalReservedLineCount=n,this.parts=[new JE(this.columnRange.endColumnExclusive,this.text,!1)],this.newLines=va(this.text)}renderForScreenReader(e){return this.newLines.join(` +`)}get lineCount(){return this.newLines.length}isEmpty(){return this.parts.every(e=>e.lines.length===0)}equals(e){return this.lineNumber===e.lineNumber&&this.columnRange.equals(e.columnRange)&&this.newLines.length===e.newLines.length&&this.newLines.every((t,i)=>t===e.newLines[i])&&this.additionalReservedLineCount===e.additionalReservedLineCount}}function s5(o,e){return li(o,e,VB)}function VB(o,e){return o===e?!0:!o||!e?!1:o instanceof cw&&e instanceof cw||o instanceof eN&&e instanceof eN?o.equals(e):!1}const mhe=[];function phe(){return mhe}class _he{constructor(e,t){if(this.startColumn=e,this.endColumnExclusive=t,e>t)throw new nt(`startColumn ${e} cannot be after endColumnExclusive ${t}`)}toRange(e){return new I(e,this.startColumn,e,this.endColumnExclusive)}equals(e){return this.startColumn===e.startColumn&&this.endColumnExclusive===e.endColumnExclusive}}function bhe(o,e){const t=new X,i=o.createDecorationsCollection();return t.add(Z_({debugName:()=>`Apply decorations from ${e.debugName}`},n=>{const s=e.read(n);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}function Che(o,e){return new P(o.lineNumber+e.lineNumber-1,e.lineNumber===1?o.column+e.column-1:e.column)}function o5(o,e){return new P(o.lineNumber-e.lineNumber+1,o.lineNumber-e.lineNumber===0?o.column-e.column+1:o.column)}var vhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},whe=function(o,e){return function(t,i){e(t,i,o)}};const r5="ghost-text";let tN=class extends z{constructor(e,t,i){super(),this.editor=e,this.model=t,this.languageService=i,this.isDisposed=Ge(this,!1),this.currentTextModel=gt(this,this.editor.onDidChangeModel,()=>this.editor.getModel()),this.uiState=Ce(this,n=>{if(this.isDisposed.read(n))return;const s=this.currentTextModel.read(n);if(s!==this.model.targetTextModel.read(n))return;const r=this.model.ghostText.read(n);if(!r)return;const a=r instanceof eN?r.columnRange:void 0,l=[],c=[];function d(p,_){if(c.length>0){const b=c[c.length-1];_&&b.decorations.push(new As(b.content.length+1,b.content.length+1+p[0].length,_,0)),b.content+=p[0],p=p.slice(1)}for(const b of p)c.push({content:b,decorations:_?[new As(1,b.length+1,_,0)]:[]})}const h=s.getLineContent(r.lineNumber);let u,f=0;for(const p of r.parts){let _=p.lines;u===void 0?(l.push({column:p.column,text:_[0],preview:p.preview}),_=_.slice(1)):d([h.substring(f,p.column-1)],void 0),_.length>0&&(d(_,r5),u===void 0&&p.column<=h.length&&(u=p.column)),f=p.column-1}u!==void 0&&d([h.substring(f)],void 0);const g=u!==void 0?new _he(u,h.length+1):void 0;return{replacedRange:a,inlineTexts:l,additionalLines:c,hiddenRange:g,lineNumber:r.lineNumber,additionalReservedLineCount:this.model.minReservedLineCount.read(n),targetTextModel:s}}),this.decorations=Ce(this,n=>{const s=this.uiState.read(n);if(!s)return[];const r=[];s.replacedRange&&r.push({range:s.replacedRange.toRange(s.lineNumber),options:{inlineClassName:"inline-completion-text-to-replace",description:"GhostTextReplacement"}}),s.hiddenRange&&r.push({range:s.hiddenRange.toRange(s.lineNumber),options:{inlineClassName:"ghost-text-hidden",description:"ghost-text-hidden"}});for(const a of s.inlineTexts)r.push({range:I.fromPositions(new P(s.lineNumber,a.column)),options:{description:r5,after:{content:a.text,inlineClassName:a.preview?"ghost-text-decoration-preview":"ghost-text-decoration",cursorStops:gr.Left},showIfCollapsed:!0}});return r}),this.additionalLinesWidget=this._register(new yhe(this.editor,this.languageService.languageIdCodec,Ce(n=>{const s=this.uiState.read(n);return s?{lineNumber:s.lineNumber,additionalLines:s.additionalLines,minReservedLineCount:s.additionalReservedLineCount,targetTextModel:s.targetTextModel}:void 0}))),this._register(_e(()=>{this.isDisposed.set(!0,void 0)})),this._register(bhe(this.editor,this.decorations))}ownsViewZone(e){return this.additionalLinesWidget.viewZoneId===e}};tN=vhe([whe(2,qt)],tN);class yhe extends z{get viewZoneId(){return this._viewZoneId}constructor(e,t,i){super(),this.editor=e,this.languageIdCodec=t,this.lines=i,this._viewZoneId=void 0,this.editorOptionsChanged=ks("editorOptionChanged",J.filter(this.editor.onDidChangeConfiguration,n=>n.hasChanged(33)||n.hasChanged(118)||n.hasChanged(100)||n.hasChanged(95)||n.hasChanged(51)||n.hasChanged(50)||n.hasChanged(67))),this._register(We(n=>{const s=this.lines.read(n);this.editorOptionsChanged.read(n),s?this.updateLines(s.lineNumber,s.additionalLines,s.minReservedLineCount):this.clear()}))}dispose(){super.dispose(),this.clear()}clear(){this.editor.changeViewZones(e=>{this._viewZoneId&&(e.removeZone(this._viewZoneId),this._viewZoneId=void 0)})}updateLines(e,t,i){const n=this.editor.getModel();if(!n)return;const{tabSize:s}=n.getOptions();this.editor.changeViewZones(r=>{this._viewZoneId&&(r.removeZone(this._viewZoneId),this._viewZoneId=void 0);const a=Math.max(t.length,i);if(a>0){const l=document.createElement("div");She(l,s,t,this.editor.getOptions(),this.languageIdCodec),this._viewZoneId=r.addZone({afterLineNumber:e,heightInLines:a,domNode:l,afterColumnAffinity:1})}})}}function She(o,e,t,i,n){const s=i.get(33),r=i.get(118),a="none",l=i.get(95),c=i.get(51),d=i.get(50),h=i.get(67),u=new K_(1e4);u.appendString('
    ');for(let p=0,_=t.length;p<_;p++){const b=t[p],C=b.content;u.appendString('
    ');const w=D0(C),v=sg(C),y=Ni.createEmpty(C,n);Sy(new gu(d.isMonospace&&!s,d.canUseHalfwidthRightwardsArrow,C,!1,w,v,0,y,b.decorations,e,0,d.spaceWidth,d.middotWidth,d.wsmiddotWidth,r,a,l,c!==Mc.OFF,null),u),u.appendString("
    ")}u.appendString("
    "),qi(o,d);const f=u.build(),g=a5?a5.createHTML(f):f;o.innerHTML=g}const a5=Kc("editorGhostText",{createHTML:o=>o});function Lhe(o,e){const t=new J7,i=new t9(t,c=>e.getLanguageConfiguration(c)),n=new e9(new xhe([o]),i),s=vD(n,[],void 0,!0);let r="";const a=o.getLineContent();function l(c,d){if(c.kind===2)if(l(c.openingBracket,d),d=zt(d,c.openingBracket.length),c.child&&(l(c.child,d),d=zt(d,c.child.length)),c.closingBracket)l(c.closingBracket,d),d=zt(d,c.closingBracket.length);else{const u=i.getSingleLanguageBracketTokens(c.openingBracket.languageId).findClosingTokenText(c.openingBracket.bracketIds);r+=u}else if(c.kind!==3){if(c.kind===0||c.kind===1)r+=a.substring(d,zt(d,c.length));else if(c.kind===4)for(const h of c.children)l(h,d),d=zt(d,h.length)}}return l(s,Ln),r}class xhe{constructor(e){this.lines=e,this.tokenization={getLineTokens:t=>this.lines[t-1]}}getLineCount(){return this.lines.length}getLineLength(e){return this.lines[e-1].getLineContent().length}}const yo=class yo{constructor(){this.value="",this.pos=0}static isDigitCharacter(e){return e>=48&&e<=57}static isVariableCharacter(e){return e===95||e>=97&&e<=122||e>=65&&e<=90}text(e){this.value=e,this.pos=0}tokenText(e){return this.value.substr(e.pos,e.len)}next(){if(this.pos>=this.value.length)return{type:14,pos:this.pos,len:0};const e=this.pos;let t=0,i=this.value.charCodeAt(e),n;if(n=yo._table[i],typeof n=="number")return this.pos+=1,{type:n,pos:e,len:1};if(yo.isDigitCharacter(i)){n=8;do t+=1,i=this.value.charCodeAt(e+t);while(yo.isDigitCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}if(yo.isVariableCharacter(i)){n=9;do i=this.value.charCodeAt(e+ ++t);while(yo.isVariableCharacter(i)||yo.isDigitCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}n=10;do t+=1,i=this.value.charCodeAt(e+t);while(!isNaN(i)&&typeof yo._table[i]>"u"&&!yo.isDigitCharacter(i)&&!yo.isVariableCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}};yo._table={36:0,58:1,44:2,123:3,125:4,92:5,47:6,124:7,43:11,45:12,63:13};let iN=yo;class Gg{constructor(){this._children=[]}appendChild(e){return e instanceof wn&&this._children[this._children.length-1]instanceof wn?this._children[this._children.length-1].value+=e.value:(e.parent=this,this._children.push(e)),this}replace(e,t){const{parent:i}=e,n=i.children.indexOf(e),s=i.children.slice(0);s.splice(n,1,...t),i._children=s,(function r(a,l){for(const c of a)c.parent=l,r(c.children,c)})(t,i)}get children(){return this._children}get rightMostDescendant(){return this._children.length>0?this._children[this._children.length-1].rightMostDescendant:this}get snippet(){let e=this;for(;;){if(!e)return;if(e instanceof ub)return e;e=e.parent}}toString(){return this.children.reduce((e,t)=>e+t.toString(),"")}len(){return 0}}class wn extends Gg{constructor(e){super(),this.value=e}toString(){return this.value}len(){return this.value.length}clone(){return new wn(this.value)}}class zB extends Gg{}class eo extends zB{static compareByIndex(e,t){return e.index===t.index?0:e.isFinalTabstop?1:t.isFinalTabstop||e.indext.index?1:0}constructor(e){super(),this.index=e}get isFinalTabstop(){return this.index===0}get choice(){return this._children.length===1&&this._children[0]instanceof Zg?this._children[0]:void 0}clone(){const e=new eo(this.index);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map(t=>t.clone()),e}}class Zg extends Gg{constructor(){super(...arguments),this.options=[]}appendChild(e){return e instanceof wn&&(e.parent=this,this.options.push(e)),this}toString(){return this.options[0].value}len(){return this.options[0].len()}clone(){const e=new Zg;return this.options.forEach(e.appendChild,e),e}}class vM extends Gg{constructor(){super(...arguments),this.regexp=new RegExp("")}resolve(e){const t=this;let i=!1,n=e.replace(this.regexp,function(){return i=!0,t._replace(Array.prototype.slice.call(arguments,0,-2))});return!i&&this._children.some(s=>s instanceof ir&&!!s.elseValue)&&(n=this._replace([])),n}_replace(e){let t="";for(const i of this._children)if(i instanceof ir){let n=e[i.index]||"";n=i.resolve(n),t+=n}else t+=i.toString();return t}toString(){return""}clone(){const e=new vM;return e.regexp=new RegExp(this.regexp.source,(this.regexp.ignoreCase?"i":"")+(this.regexp.global?"g":"")),e._children=this.children.map(t=>t.clone()),e}}class ir extends Gg{constructor(e,t,i,n){super(),this.index=e,this.shorthandName=t,this.ifValue=i,this.elseValue=n}resolve(e){return this.shorthandName==="upcase"?e?e.toLocaleUpperCase():"":this.shorthandName==="downcase"?e?e.toLocaleLowerCase():"":this.shorthandName==="capitalize"?e?e[0].toLocaleUpperCase()+e.substr(1):"":this.shorthandName==="pascalcase"?e?this._toPascalCase(e):"":this.shorthandName==="camelcase"?e?this._toCamelCase(e):"":e&&typeof this.ifValue=="string"?this.ifValue:!e&&typeof this.elseValue=="string"?this.elseValue:e||""}_toPascalCase(e){const t=e.match(/[a-z0-9]+/gi);return t?t.map(i=>i.charAt(0).toUpperCase()+i.substr(1)).join(""):e}_toCamelCase(e){const t=e.match(/[a-z0-9]+/gi);return t?t.map((i,n)=>n===0?i.charAt(0).toLowerCase()+i.substr(1):i.charAt(0).toUpperCase()+i.substr(1)).join(""):e}clone(){return new ir(this.index,this.shorthandName,this.ifValue,this.elseValue)}}class F_ extends zB{constructor(e){super(),this.name=e}resolve(e){let t=e.resolve(this);return this.transform&&(t=this.transform.resolve(t||"")),t!==void 0?(this._children=[new wn(t)],!0):!1}clone(){const e=new F_(this.name);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map(t=>t.clone()),e}}function l5(o,e){const t=[...o];for(;t.length>0;){const i=t.shift();if(!e(i))break;t.unshift(...i.children)}}class ub extends Gg{get placeholderInfo(){if(!this._placeholders){const e=[];let t;this.walk(function(i){return i instanceof eo&&(e.push(i),t=!t||t.indexn===e?(i=!0,!1):(t+=n.len(),!0)),i?t:-1}fullLen(e){let t=0;return l5([e],i=>(t+=i.len(),!0)),t}enclosingPlaceholders(e){const t=[];let{parent:i}=e;for(;i;)i instanceof eo&&t.push(i),i=i.parent;return t}resolveVariables(e){return this.walk(t=>(t instanceof F_&&t.resolve(e)&&(this._placeholders=void 0),!0)),this}appendChild(e){return this._placeholders=void 0,super.appendChild(e)}replace(e,t){return this._placeholders=void 0,super.replace(e,t)}clone(){const e=new ub;return this._children=this.children.map(t=>t.clone()),e}walk(e){l5(this.children,e)}}class Mg{constructor(){this._scanner=new iN,this._token={type:14,pos:0,len:0}}static escape(e){return e.replace(/\$|}|\\/g,"\\$&")}static guessNeedsClipboard(e){return/\${?CLIPBOARD/.test(e)}parse(e,t,i){const n=new ub;return this.parseFragment(e,n),this.ensureFinalTabstop(n,i??!1,t??!1),n}parseFragment(e,t){const i=t.children.length;for(this._scanner.text(e),this._token=this._scanner.next();this._parse(t););const n=new Map,s=[];t.walk(l=>(l instanceof eo&&(l.isFinalTabstop?n.set(0,void 0):!n.has(l.index)&&l.children.length>0?n.set(l.index,l.children):s.push(l)),!0));const r=(l,c)=>{const d=n.get(l.index);if(!d)return;const h=new eo(l.index);h.transform=l.transform;for(const u of d){const f=u.clone();h.appendChild(f),f instanceof eo&&n.has(f.index)&&!c.has(f.index)&&(c.add(f.index),r(f,c),c.delete(f.index))}t.replace(l,[h])},a=new Set;for(const l of s)r(l,a);return t.children.slice(i)}ensureFinalTabstop(e,t,i){(t||i&&e.placeholders.length>0)&&(e.placeholders.find(s=>s.index===0)||e.appendChild(new eo(0)))}_accept(e,t){if(e===void 0||this._token.type===e){const i=t?this._scanner.tokenText(this._token):!0;return this._token=this._scanner.next(),i}return!1}_backTo(e){return this._scanner.pos=e.pos+e.len,this._token=e,!1}_until(e){const t=this._token;for(;this._token.type!==e;){if(this._token.type===14)return!1;if(this._token.type===5){const n=this._scanner.next();if(n.type!==0&&n.type!==4&&n.type!==5)return!1}this._token=this._scanner.next()}const i=this._scanner.value.substring(t.pos,this._token.pos).replace(/\\(\$|}|\\)/g,"$1");return this._token=this._scanner.next(),i}_parse(e){return this._parseEscaped(e)||this._parseTabstopOrVariableName(e)||this._parseComplexPlaceholder(e)||this._parseComplexVariable(e)||this._parseAnything(e)}_parseEscaped(e){let t;return(t=this._accept(5,!0))?(t=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||t,e.appendChild(new wn(t)),!0):!1}_parseTabstopOrVariableName(e){let t;const i=this._token;return this._accept(0)&&(t=this._accept(9,!0)||this._accept(8,!0))?(e.appendChild(/^\d+$/.test(t)?new eo(Number(t)):new F_(t)),!0):this._backTo(i)}_parseComplexPlaceholder(e){let t;const i=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(8,!0))))return this._backTo(i);const s=new eo(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(s),!0;if(!this._parse(s))return e.appendChild(new wn("${"+t+":")),s.children.forEach(e.appendChild,e),!0}else if(s.index>0&&this._accept(7)){const r=new Zg;for(;;){if(this._parseChoiceElement(r)){if(this._accept(2))continue;if(this._accept(7)&&(s.appendChild(r),this._accept(4)))return e.appendChild(s),!0}return this._backTo(i),!1}}else return this._accept(6)?this._parseTransform(s)?(e.appendChild(s),!0):(this._backTo(i),!1):this._accept(4)?(e.appendChild(s),!0):this._backTo(i)}_parseChoiceElement(e){const t=this._token,i=[];for(;!(this._token.type===2||this._token.type===7);){let n;if((n=this._accept(5,!0))?n=this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||n:n=this._accept(void 0,!0),!n)return this._backTo(t),!1;i.push(n)}return i.length===0?(this._backTo(t),!1):(e.appendChild(new wn(i.join(""))),!0)}_parseComplexVariable(e){let t;const i=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(9,!0))))return this._backTo(i);const s=new F_(t);if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(s),!0;if(!this._parse(s))return e.appendChild(new wn("${"+t+":")),s.children.forEach(e.appendChild,e),!0}else return this._accept(6)?this._parseTransform(s)?(e.appendChild(s),!0):(this._backTo(i),!1):this._accept(4)?(e.appendChild(s),!0):this._backTo(i)}_parseTransform(e){const t=new vM;let i="",n="";for(;!this._accept(6);){let s;if(s=this._accept(5,!0)){s=this._accept(6,!0)||s,i+=s;continue}if(this._token.type!==14){i+=this._accept(void 0,!0);continue}return!1}for(;!this._accept(6);){let s;if(s=this._accept(5,!0)){s=this._accept(5,!0)||this._accept(6,!0)||s,t.appendChild(new wn(s));continue}if(!(this._parseFormatString(t)||this._parseAnything(t)))return!1}for(;!this._accept(4);){if(this._token.type!==14){n+=this._accept(void 0,!0);continue}return!1}try{t.regexp=new RegExp(i,n)}catch{return!1}return e.transform=t,!0}_parseFormatString(e){const t=this._token;if(!this._accept(0))return!1;let i=!1;this._accept(3)&&(i=!0);const n=this._accept(8,!0);if(n)if(i){if(this._accept(4))return e.appendChild(new ir(Number(n))),!0;if(!this._accept(1))return this._backTo(t),!1}else return e.appendChild(new ir(Number(n))),!0;else return this._backTo(t),!1;if(this._accept(6)){const s=this._accept(9,!0);return!s||!this._accept(4)?(this._backTo(t),!1):(e.appendChild(new ir(Number(n),s)),!0)}else if(this._accept(11)){const s=this._until(4);if(s)return e.appendChild(new ir(Number(n),void 0,s,void 0)),!0}else if(this._accept(12)){const s=this._until(4);if(s)return e.appendChild(new ir(Number(n),void 0,void 0,s)),!0}else if(this._accept(13)){const s=this._until(1);if(s){const r=this._until(4);if(r)return e.appendChild(new ir(Number(n),void 0,s,r)),!0}}else{const s=this._until(4);if(s)return e.appendChild(new ir(Number(n),void 0,void 0,s)),!0}return this._backTo(t),!1}_parseAnything(e){return this._token.type!==14?(e.appendChild(new wn(this._scanner.tokenText(this._token))),this._accept(void 0),!0):!1}}async function khe(o,e,t,i,n=ut.None,s){const r=e instanceof P?Ehe(e,t):e,a=o.all(t),l=new dT;for(const b of a)b.groupId&&l.add(b.groupId,b);function c(b){if(!b.yieldsToGroupIds)return[];const C=[];for(const w of b.yieldsToGroupIds||[]){const v=l.get(w);for(const y of v)C.push(y)}return C}const d=new Map,h=new Set;function u(b,C){if(C=[...C,b],h.has(b))return C;h.add(b);try{const w=c(b);for(const v of w){const y=u(v,C);if(y)return y}}finally{h.delete(b)}}function f(b){const C=d.get(b);if(C)return C;const w=u(b,[]);w&&$n(new Error(`Inline completions: cyclic yield-to dependency detected. Path: ${w.map(y=>y.toString?y.toString():""+y).join(" -> ")}`));const v=new qN;return d.set(b,v.p),(async()=>{if(!w){const y=c(b);for(const x of y){const L=await f(x);if(L&&L.items.length>0)return}}try{return e instanceof P?await b.provideInlineCompletions(t,e,i,n):await b.provideInlineEdits?.(t,e,i,n)}catch(y){$n(y);return}})().then(y=>v.complete(y),y=>v.error(y)),v.p}const g=await Promise.all(a.map(async b=>({provider:b,completions:await f(b)}))),p=new Map,_=[];for(const b of g){const C=b.completions;if(!C)continue;const w=new Ihe(C,b.provider);_.push(w);for(const v of C.items){const y=dw.from(v,w,r,t,s);p.set(y.hash(),y)}}return new Dhe(Array.from(p.values()),new Set(p.keys()),_)}class Dhe{constructor(e,t,i){this.completions=e,this.hashs=t,this.providerResults=i}has(e){return this.hashs.has(e.hash())}dispose(){for(const e of this.providerResults)e.removeRef()}}class Ihe{constructor(e,t){this.inlineCompletions=e,this.provider=t,this.refCount=1}addRef(){this.refCount++}removeRef(){this.refCount--,this.refCount===0&&this.provider.freeInlineCompletions(this.inlineCompletions)}}class dw{static from(e,t,i,n,s){let r,a,l=e.range?I.lift(e.range):i;if(typeof e.insertText=="string"){if(r=e.insertText,s&&e.completeBracketPairs){r=c5(r,l.getStartPosition(),n,s);const c=r.length-e.insertText.length;c!==0&&(l=new I(l.startLineNumber,l.startColumn,l.endLineNumber,l.endColumn+c))}a=void 0}else if("snippet"in e.insertText){const c=e.insertText.snippet.length;if(s&&e.completeBracketPairs){e.insertText.snippet=c5(e.insertText.snippet,l.getStartPosition(),n,s);const h=e.insertText.snippet.length-c;h!==0&&(l=new I(l.startLineNumber,l.startColumn,l.endLineNumber,l.endColumn+h))}const d=new Mg().parse(e.insertText.snippet);d.children.length===1&&d.children[0]instanceof wn?(r=d.children[0].value,a=void 0):(r=d.toString(),a={snippet:e.insertText.snippet,range:l})}else z0(e.insertText);return new dw(r,e.command,l,r,a,e.additionalTextEdits||phe(),e,t)}constructor(e,t,i,n,s,r,a,l){this.filterText=e,this.command=t,this.range=i,this.insertText=n,this.snippetInfo=s,this.additionalTextEdits=r,this.sourceInlineCompletion=a,this.source=l,e=e.replace(/\r\n|\r/g,` +`),n=e.replace(/\r\n|\r/g,` +`)}withRange(e){return new dw(this.filterText,this.command,e,this.insertText,this.snippetInfo,this.additionalTextEdits,this.sourceInlineCompletion,this.source)}hash(){return JSON.stringify({insertText:this.insertText,range:this.range.toString()})}toSingleTextEdit(){return new fa(this.range,this.insertText)}}function Ehe(o,e){const t=e.getWordAtPosition(o),i=e.getLineMaxColumn(o.lineNumber);return t?new I(o.lineNumber,t.startColumn,o.lineNumber,i):I.fromPositions(o,o.with(void 0,i))}function c5(o,e,t,i){const s=t.getLineContent(e.lineNumber).substring(0,e.column-1)+o,a=t.tokenization.tokenizeLineWithEdit(e,s.length-(e.column-1),o)?.sliceAndInflate(e.column-1,s.length,0);return a?Lhe(a,i):o}function nh(o,e,t){const i=t?o.range.intersectRanges(t):o.range;if(!i)return o;const n=e.getValueInRange(i,1),s=Th(n,o.text),r=Po.ofText(n.substring(0,s)).addToPosition(o.range.getStartPosition()),a=o.text.substring(s),l=I.fromPositions(r,o.range.getEndPosition());return new fa(l,a)}function UB(o,e){return o.text.startsWith(e.text)&&Nhe(o.range,e.range)}function d5(o,e,t,i,n=0){let s=nh(o,e);if(s.range.endLineNumber!==s.range.startLineNumber)return;const r=e.getLineContent(s.range.startLineNumber),a=pi(r).length;if(s.range.startColumn-1<=a){const g=pi(s.text).length,p=r.substring(s.range.startColumn-1,a),[_,b]=[s.range.getStartPosition(),s.range.getEndPosition()],C=_.column+p.length<=b.column?_.delta(0,p.length):b,w=I.fromPositions(C,b),v=s.text.startsWith(p)?s.text.substring(p.length):s.text.substring(g);s=new fa(w,v)}const c=e.getValueInRange(s.range),d=The(c,s.text);if(!d)return;const h=s.range.startLineNumber,u=new Array;if(t==="prefix"){const g=d.filter(p=>p.originalLength===0);if(g.length>1||g.length===1&&g[0].originalStart!==c.length)return}const f=s.text.length-n;for(const g of d){const p=s.range.startColumn+g.originalStart+g.originalLength;if(t==="subwordSmart"&&i&&i.lineNumber===s.range.startLineNumber&&p0)return;if(g.modifiedLength===0)continue;const _=g.modifiedStart+g.modifiedLength,b=Math.max(g.modifiedStart,Math.min(_,f)),C=s.text.substring(g.modifiedStart,b),w=s.text.substring(b,Math.max(g.modifiedStart,_));C.length>0&&u.push(new JE(p,C,!1)),w.length>0&&u.push(new JE(p,w,!0))}return new cw(h,u)}function Nhe(o,e){return e.getStartPosition().equals(o.getStartPosition())&&e.getEndPosition().isBeforeOrEqual(o.getEndPosition())}let f1;function The(o,e){if(f1?.originalValue===o&&f1?.newValue===e)return f1?.changes;{let t=u5(o,e,!0);if(t){const i=h5(t);if(i>0){const n=u5(o,e,!1);n&&h5(n)5e3||e.length>5e3)return;function i(c){let d=0;for(let h=0,u=c.length;hd&&(d=f)}return d}const n=Math.max(i(o),i(e));function s(c){if(c<0)throw new Error("unexpected");return n+c+1}function r(c){let d=0,h=0;const u=new Int32Array(c.length);for(let f=0,g=c.length;fa},{getElements:()=>l}).ComputeDiff(!1).changes}var Mhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},f5=function(o,e){return function(t,i){e(t,i,o)}};let nN=class extends z{constructor(e,t,i,n,s){super(),this.textModel=e,this.versionId=t,this._debounceValue=i,this.languageFeaturesService=n,this.languageConfigurationService=s,this._updateOperation=this._register(new Dn),this.inlineCompletions=KC("inlineCompletions",void 0),this.suggestWidgetInlineCompletions=KC("suggestWidgetInlineCompletions",void 0),this._register(this.textModel.onDidChangeContent(()=>{this._updateOperation.clear()}))}fetch(e,t,i){const n=new Ahe(e,t,this.textModel.getVersionId()),s=t.selectedSuggestionInfo?this.suggestWidgetInlineCompletions:this.inlineCompletions;if(this._updateOperation.value?.request.satisfies(n))return this._updateOperation.value.promise;if(s.get()?.request.satisfies(n))return Promise.resolve(!0);const r=!!this._updateOperation.value;this._updateOperation.clear();const a=new In,l=(async()=>{if((r||t.triggerKind===Cl.Automatic)&&await Rhe(this._debounceValue.get(this.textModel),a.token),a.token.isCancellationRequested||this._store.isDisposed||this.textModel.getVersionId()!==n.versionId)return!1;const h=new Date,u=await khe(this.languageFeaturesService.inlineCompletionsProvider,e,this.textModel,t,a.token,this.languageConfigurationService);if(a.token.isCancellationRequested||this._store.isDisposed||this.textModel.getVersionId()!==n.versionId)return!1;const f=new Date;this._debounceValue.update(this.textModel,f.getTime()-h.getTime());const g=new Ohe(u,n,this.textModel,this.versionId);if(i){const p=i.toInlineCompletion(void 0);i.canBeReused(this.textModel,e)&&!u.has(p)&&g.prepend(i.inlineCompletion,p.range,!0)}return this._updateOperation.clear(),Xt(p=>{s.set(g,p)}),!0})(),c=new Phe(n,a,l);return this._updateOperation.value=c,l}clear(e){this._updateOperation.clear(),this.inlineCompletions.set(void 0,e),this.suggestWidgetInlineCompletions.set(void 0,e)}clearSuggestWidgetInlineCompletions(e){this._updateOperation.value?.request.context.selectedSuggestionInfo&&this._updateOperation.clear(),this.suggestWidgetInlineCompletions.set(void 0,e)}cancelUpdate(){this._updateOperation.clear()}};nN=Mhe([f5(3,Se),f5(4,Gn)],nN);function Rhe(o,e){return new Promise(t=>{let i;const n=setTimeout(()=>{i&&i.dispose(),t()},o);e&&(i=e.onCancellationRequested(()=>{clearTimeout(n),i&&i.dispose(),t()}))})}class Ahe{constructor(e,t,i){this.position=e,this.context=t,this.versionId=i}satisfies(e){return this.position.equals(e.position)&&Jk(this.context.selectedSuggestionInfo,e.context.selectedSuggestionInfo,IZ())&&(e.context.triggerKind===Cl.Automatic||this.context.triggerKind===Cl.Explicit)&&this.versionId===e.versionId}}class Phe{constructor(e,t,i){this.request=e,this.cancellationTokenSource=t,this.promise=i}dispose(){this.cancellationTokenSource.cancel()}}class Ohe{get inlineCompletions(){return this._inlineCompletions}constructor(e,t,i,n){this.inlineCompletionProviderResult=e,this.request=t,this._textModel=i,this._versionId=n,this._refCount=1,this._prependedInlineCompletionItems=[];const s=i.deltaDecorations([],e.completions.map(r=>({range:r.range,options:{description:"inline-completion-tracking-range"}})));this._inlineCompletions=e.completions.map((r,a)=>new g5(r,s[a],this._textModel,this._versionId))}clone(){return this._refCount++,this}dispose(){if(this._refCount--,this._refCount===0){setTimeout(()=>{this._textModel.isDisposed()||this._textModel.deltaDecorations(this._inlineCompletions.map(e=>e.decorationId),[])},0),this.inlineCompletionProviderResult.dispose();for(const e of this._prependedInlineCompletionItems)e.source.removeRef()}}prepend(e,t,i){i&&e.source.addRef();const n=this._textModel.deltaDecorations([],[{range:t,options:{description:"inline-completion-tracking-range"}}])[0];this._inlineCompletions.unshift(new g5(e,n,this._textModel,this._versionId)),this._prependedInlineCompletionItems.push(e)}}class g5{get forwardStable(){return this.inlineCompletion.source.inlineCompletions.enableForwardStability??!1}constructor(e,t,i,n){this.inlineCompletion=e,this.decorationId=t,this._textModel=i,this._modelVersion=n,this.semanticId=JSON.stringify([this.inlineCompletion.filterText,this.inlineCompletion.insertText,this.inlineCompletion.range.getStartPosition().toString()]),this._updatedRange=dr({owner:this,equalsFn:I.equalsRange},s=>(this._modelVersion.read(s),this._textModel.getDecorationRange(this.decorationId)))}toInlineCompletion(e){return this.inlineCompletion.withRange(this._updatedRange.read(e)??bL)}toSingleTextEdit(e){return new fa(this._updatedRange.read(e)??bL,this.inlineCompletion.insertText)}isVisible(e,t,i){const n=nh(this._toFilterTextReplacement(i),e),s=this._updatedRange.read(i);if(!s||!this.inlineCompletion.range.getStartPosition().equals(s.getStartPosition())||t.lineNumber!==n.range.startLineNumber)return!1;const r=e.getValueInRange(n.range,1),a=n.text,l=Math.max(0,t.column-n.range.startColumn);let c=a.substring(0,l),d=a.substring(l),h=r.substring(0,l),u=r.substring(l);const f=e.getLineIndentColumn(n.range.startLineNumber);return n.range.startColumn<=f&&(h=h.trimStart(),h.length===0&&(u=u.trimStart()),c=c.trimStart(),c.length===0&&(d=d.trimStart())),c.startsWith(h)&&!!r7(u,d)}canBeReused(e,t){const i=this._updatedRange.read(void 0);return!!i&&i.containsPosition(t)&&this.isVisible(e,t,void 0)&&Po.ofRange(i).isGreaterThanOrEqualTo(Po.ofRange(this.inlineCompletion.range))}_toFilterTextReplacement(e){return new fa(this._updatedRange.read(e)??bL,this.inlineCompletion.filterText)}}const bL=new I(1,1,1,1),Fhe=m("defaultLabel","input"),Bhe=m("label.preserveCaseToggle","Preserve Case");class Whe extends nb{constructor(e){super({icon:ie.preserveCase,title:Bhe+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class Hhe extends xr{constructor(e,t,i,n){super(),this._showOptionButtons=i,this.fixFocusOnOptionClickEnabled=!0,this.cachedOptionsWidth=0,this._onDidOptionChange=this._register(new A),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new A),this._onInput=this._register(new A),this._onKeyUp=this._register(new A),this._onPreserveCaseKeyDown=this._register(new A),this.onPreserveCaseKeyDown=this._onPreserveCaseKeyDown.event,this.contextViewProvider=t,this.placeholder=n.placeholder||"",this.validation=n.validation,this.label=n.label||Fhe;const s=n.appendPreserveCaseLabel||"",r=n.history||[],a=!!n.flexibleHeight,l=!!n.flexibleWidth,c=n.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new k9(this.domNode,this.contextViewProvider,{ariaLabel:this.label||"",placeholder:this.placeholder||"",validationOptions:{validation:this.validation},history:r,showHistoryHint:n.showHistoryHint,flexibleHeight:a,flexibleWidth:l,flexibleMaxHeight:c,inputBoxStyles:n.inputBoxStyles})),this.preserveCase=this._register(new Whe({appendTitle:s,isChecked:!1,...n.toggleStyles})),this._register(this.preserveCase.onChange(u=>{this._onDidOptionChange.fire(u),!u&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.preserveCase.onKeyDown(u=>{this._onPreserveCaseKeyDown.fire(u)})),this._showOptionButtons?this.cachedOptionsWidth=this.preserveCase.width():this.cachedOptionsWidth=0;const d=[this.preserveCase.domNode];this.onkeydown(this.domNode,u=>{if(u.equals(15)||u.equals(17)||u.equals(9)){const f=d.indexOf(this.domNode.ownerDocument.activeElement);if(f>=0){let g=-1;u.equals(17)?g=(f+1)%d.length:u.equals(15)&&(f===0?g=d.length-1:g=f-1),u.equals(9)?(d[f].blur(),this.inputBox.focus()):g>=0&&d[g].focus(),je.stop(u,!0)}}});const h=document.createElement("div");h.className="controls",h.style.display=this._showOptionButtons?"block":"none",h.appendChild(this.preserveCase.domNode),this.domNode.appendChild(h),e?.appendChild(this.domNode),this.onkeydown(this.inputBox.inputElement,u=>this._onKeyDown.fire(u)),this.onkeyup(this.inputBox.inputElement,u=>this._onKeyUp.fire(u)),this.oninput(this.inputBox.inputElement,u=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,u=>this._onMouseDown.fire(u))}enable(){this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.preserveCase.enable()}disable(){this.domNode.classList.add("disabled"),this.inputBox.disable(),this.preserveCase.disable()}setEnabled(e){e?this.enable():this.disable()}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getPreserveCase(){return this.preserveCase.checked}setPreserveCase(e){this.preserveCase.checked=e}focusOnPreserve(){this.preserveCase.focus()}validate(){this.inputBox?.validate()}set width(e){this.inputBox.paddingRight=this.cachedOptionsWidth,this.domNode.style.width=e+"px"}dispose(){super.dispose()}}var $B=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},KB=function(o,e){return function(t,i){e(t,i,o)}};const wM=new le("suggestWidgetVisible",!1,m("suggestWidgetVisible","Whether suggestion are visible")),yM="historyNavigationWidgetFocus",jB="historyNavigationForwardsEnabled",qB="historyNavigationBackwardsEnabled";let yp;const g1=[];function GB(o,e){if(g1.includes(e))throw new Error("Cannot register the same widget multiple times");g1.push(e);const t=new X,i=new le(yM,!1).bindTo(o),n=new le(jB,!0).bindTo(o),s=new le(qB,!0).bindTo(o),r=()=>{i.set(!0),yp=e},a=()=>{i.set(!1),yp===e&&(yp=void 0)};return M0(e.element)&&r(),t.add(e.onDidFocus(()=>r())),t.add(e.onDidBlur(()=>a())),t.add(_e(()=>{g1.splice(g1.indexOf(e),1),a()})),{historyNavigationForwardsEnablement:n,historyNavigationBackwardsEnablement:s,dispose(){t.dispose()}}}let m5=class extends D9{constructor(e,t,i,n){super(e,t,i);const s=this._register(n.createScoped(this.inputBox.element));this._register(GB(s,this.inputBox))}};m5=$B([KB(3,De)],m5);let p5=class extends Hhe{constructor(e,t,i,n,s=!1){super(e,t,s,i);const r=this._register(n.createScoped(this.inputBox.element));this._register(GB(r,this.inputBox))}};p5=$B([KB(3,De)],p5);Nn.registerCommandAndKeybindingRule({id:"history.showPrevious",weight:200,when:re.and(re.has(yM),re.equals(qB,!0),re.not("isComposing"),wM.isEqualTo(!1)),primary:16,secondary:[528],handler:o=>{yp?.showPreviousValue()}});Nn.registerCommandAndKeybindingRule({id:"history.showNext",weight:200,when:re.and(re.has(yM),re.equals(jB,!0),re.not("isComposing"),wM.isEqualTo(!1)),primary:18,secondary:[530],handler:o=>{yp?.showNextValue()}});const Ne={Visible:wM,HasFocusedSuggestion:new le("suggestWidgetHasFocusedSuggestion",!1,m("suggestWidgetHasSelection","Whether any suggestion is focused")),DetailsVisible:new le("suggestWidgetDetailsVisible",!1,m("suggestWidgetDetailsVisible","Whether suggestion details are visible")),MultipleSuggestions:new le("suggestWidgetMultipleSuggestions",!1,m("suggestWidgetMultipleSuggestions","Whether there are multiple suggestions to pick from")),MakesTextEdit:new le("suggestionMakesTextEdit",!0,m("suggestionMakesTextEdit","Whether inserting the current suggestion yields in a change or has everything already been typed")),AcceptSuggestionsOnEnter:new le("acceptSuggestionOnEnter",!0,m("acceptSuggestionOnEnter","Whether suggestions are inserted when pressing Enter")),HasInsertAndReplaceRange:new le("suggestionHasInsertAndReplaceRange",!1,m("suggestionHasInsertAndReplaceRange","Whether the current suggestion has insert and replace behaviour")),InsertMode:new le("suggestionInsertMode",void 0,{type:"string",description:m("suggestionInsertMode","Whether the default behaviour is to insert or replace")}),CanResolve:new le("suggestionCanResolve",!1,m("suggestionCanResolve","Whether the current suggestion supports to resolve further details"))},bc=new $e("suggestWidgetStatusBar");class Vhe{constructor(e,t,i,n){this.position=e,this.completion=t,this.container=i,this.provider=n,this.isInvalid=!1,this.score=oa.Default,this.distance=0,this.textLabel=typeof t.label=="string"?t.label:t.label?.label,this.labelLow=this.textLabel.toLowerCase(),this.isInvalid=!this.textLabel,this.sortTextLow=t.sortText&&t.sortText.toLowerCase(),this.filterTextLow=t.filterText&&t.filterText.toLowerCase(),this.extensionId=t.extensionId,I.isIRange(t.range)?(this.editStart=new P(t.range.startLineNumber,t.range.startColumn),this.editInsertEnd=new P(t.range.endLineNumber,t.range.endColumn),this.editReplaceEnd=new P(t.range.endLineNumber,t.range.endColumn),this.isInvalid=this.isInvalid||I.spansMultipleLines(t.range)||t.range.startLineNumber!==e.lineNumber):(this.editStart=new P(t.range.insert.startLineNumber,t.range.insert.startColumn),this.editInsertEnd=new P(t.range.insert.endLineNumber,t.range.insert.endColumn),this.editReplaceEnd=new P(t.range.replace.endLineNumber,t.range.replace.endColumn),this.isInvalid=this.isInvalid||I.spansMultipleLines(t.range.insert)||I.spansMultipleLines(t.range.replace)||t.range.insert.startLineNumber!==e.lineNumber||t.range.replace.startLineNumber!==e.lineNumber||t.range.insert.startColumn!==t.range.replace.startColumn),typeof n.resolveCompletionItem!="function"&&(this._resolveCache=Promise.resolve(),this._resolveDuration=0)}get isResolved(){return this._resolveDuration!==void 0}get resolveDuration(){return this._resolveDuration!==void 0?this._resolveDuration:-1}async resolve(e){if(!this._resolveCache){const t=e.onCancellationRequested(()=>{this._resolveCache=void 0,this._resolveDuration=void 0}),i=new Hs(!0);this._resolveCache=Promise.resolve(this.provider.resolveCompletionItem(this.completion,e)).then(n=>{Object.assign(this.completion,n),this._resolveDuration=i.elapsed()},n=>{$c(n)&&(this._resolveCache=void 0,this._resolveDuration=void 0)}).finally(()=>{t.dispose()})}return this._resolveCache}}const m0=class m0{constructor(e=2,t=new Set,i=new Set,n=new Map,s=!0){this.snippetSortOrder=e,this.kindFilter=t,this.providerFilter=i,this.providerItemsToReuse=n,this.showDeprecated=s}};m0.default=new m0;let hw=m0;class zhe{constructor(e,t,i,n){this.items=e,this.needsClipboard=t,this.durations=i,this.disposable=n}}async function ZB(o,e,t,i=hw.default,n={triggerKind:0},s=ut.None){const r=new Hs;t=t.clone();const a=e.getWordAtPosition(t),l=a?new I(t.lineNumber,a.startColumn,t.lineNumber,a.endColumn):I.fromPositions(t),c={replace:l,insert:l.setEndPosition(t.lineNumber,t.column)},d=[],h=new X,u=[];let f=!1;const g=(_,b,C)=>{let w=!1;if(!b)return w;for(const v of b.suggestions)if(!i.kindFilter.has(v.kind)){if(!i.showDeprecated&&v?.tags?.includes(1))continue;v.range||(v.range=c),v.sortText||(v.sortText=typeof v.label=="string"?v.label:v.label.label),!f&&v.insertTextRules&&v.insertTextRules&4&&(f=Mg.guessNeedsClipboard(v.insertText)),d.push(new Vhe(t,v,b,_)),w=!0}return MN(b)&&h.add(b),u.push({providerName:_._debugDisplayName??"unknown_provider",elapsedProvider:b.duration??-1,elapsedOverall:C.elapsed()}),w},p=(async()=>{})();for(const _ of o.orderedGroups(e)){let b=!1;if(await Promise.all(_.map(async C=>{if(i.providerItemsToReuse.has(C)){const w=i.providerItemsToReuse.get(C);w.forEach(v=>d.push(v)),b=b||w.length>0;return}if(!(i.providerFilter.size>0&&!i.providerFilter.has(C)))try{const w=new Hs,v=await C.provideCompletionItems(e,t,n,s);b=g(C,v,w)||b}catch(w){$n(w)}})),b||s.isCancellationRequested)break}return await p,s.isCancellationRequested?(h.dispose(),Promise.reject(new ha)):new zhe(d.sort(Khe(i.snippetSortOrder)),f,{entries:u,elapsed:r.elapsed()},h)}function SM(o,e){if(o.sortTextLow&&e.sortTextLow){if(o.sortTextLowe.sortTextLow)return 1}return o.textLabele.textLabel?1:o.completion.kind-e.completion.kind}function Uhe(o,e){if(o.completion.kind!==e.completion.kind){if(o.completion.kind===27)return-1;if(e.completion.kind===27)return 1}return SM(o,e)}function $he(o,e){if(o.completion.kind!==e.completion.kind){if(o.completion.kind===27)return 1;if(e.completion.kind===27)return-1}return SM(o,e)}const Wy=new Map;Wy.set(0,Uhe);Wy.set(2,$he);Wy.set(1,SM);function Khe(o){return Wy.get(o)}bt.registerCommand("_executeCompletionItemProvider",async(o,...e)=>{const[t,i,n,s]=e;ai(ve.isUri(t)),ai(P.isIPosition(i)),ai(typeof n=="string"||!n),ai(typeof s=="number"||!s);const{completionProvider:r}=o.get(Se),a=await o.get(fo).createModelReference(t);try{const l={incomplete:!1,suggestions:[]},c=[],d=a.object.textEditorModel.validatePosition(i),h=await ZB(r,a.object.textEditorModel,d,void 0,{triggerCharacter:n??void 0,triggerKind:n?1:0});for(const u of h.items)c.length<(s??0)&&c.push(u.resolve(ut.None)),l.incomplete=l.incomplete||u.container.incomplete,l.suggestions.push(u.completion);try{return await Promise.all(c),l}finally{setTimeout(()=>h.disposable.dispose(),100)}}finally{a.dispose()}});function jhe(o,e){o.getContribution("editor.contrib.suggestController")?.triggerSuggest(new Set().add(e),void 0,!0)}class m1{static isAllOff(e){return e.other==="off"&&e.comments==="off"&&e.strings==="off"}static isAllOn(e){return e.other==="on"&&e.comments==="on"&&e.strings==="on"}static valueFor(e,t){switch(t){case 1:return e.comments;case 2:return e.strings;default:return e.other}}}function _5(o,e=kn){return Q$(o,e)?o.charAt(0).toUpperCase()+o.slice(1):o}var qhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ghe=function(o,e){return function(t,i){e(t,i,o)}};class b5{constructor(e){this._delegates=e}resolve(e){for(const t of this._delegates){const i=t.resolve(e);if(i!==void 0)return i}}}class C5{constructor(e,t,i,n){this._model=e,this._selection=t,this._selectionIdx=i,this._overtypingCapturer=n}resolve(e){const{name:t}=e;if(t==="SELECTION"||t==="TM_SELECTED_TEXT"){let i=this._model.getValueInRange(this._selection)||void 0,n=this._selection.startLineNumber!==this._selection.endLineNumber;if(!i&&this._overtypingCapturer){const s=this._overtypingCapturer.getLastOvertypedInfo(this._selectionIdx);s&&(i=s.value,n=s.multiline)}if(i&&n&&e.snippet){const s=this._model.getLineContent(this._selection.startLineNumber),r=pi(s,0,this._selection.startColumn-1);let a=r;e.snippet.walk(c=>c===e?!1:(c instanceof wn&&(a=pi(va(c.value).pop())),!0));const l=Th(a,r);i=i.replace(/(\r\n|\r|\n)(.*)/g,(c,d,h)=>`${d}${a.substr(l)}${h}`)}return i}else{if(t==="TM_CURRENT_LINE")return this._model.getLineContent(this._selection.positionLineNumber);if(t==="TM_CURRENT_WORD"){const i=this._model.getWordAtPosition({lineNumber:this._selection.positionLineNumber,column:this._selection.positionColumn});return i&&i.word||void 0}else{if(t==="TM_LINE_INDEX")return String(this._selection.positionLineNumber-1);if(t==="TM_LINE_NUMBER")return String(this._selection.positionLineNumber);if(t==="CURSOR_INDEX")return String(this._selectionIdx);if(t==="CURSOR_NUMBER")return String(this._selectionIdx+1)}}}}class v5{constructor(e,t){this._labelService=e,this._model=t}resolve(e){const{name:t}=e;if(t==="TM_FILENAME")return uc(this._model.uri.fsPath);if(t==="TM_FILENAME_BASE"){const i=uc(this._model.uri.fsPath),n=i.lastIndexOf(".");return n<=0?i:i.slice(0,n)}else{if(t==="TM_DIRECTORY")return iF(this._model.uri.fsPath)==="."?"":this._labelService.getUriLabel(ny(this._model.uri));if(t==="TM_FILEPATH")return this._labelService.getUriLabel(this._model.uri);if(t==="RELATIVE_FILEPATH")return this._labelService.getUriLabel(this._model.uri,{relative:!0,noPrefix:!0})}}}class w5{constructor(e,t,i,n){this._readClipboardText=e,this._selectionIdx=t,this._selectionCount=i,this._spread=n}resolve(e){if(e.name!=="CLIPBOARD")return;const t=this._readClipboardText();if(t){if(this._spread){const i=t.split(/\r\n|\n|\r/).filter(n=>!hF(n));if(i.length===this._selectionCount)return i[this._selectionIdx]}return t}}}let uw=class{constructor(e,t,i){this._model=e,this._selection=t,this._languageConfigurationService=i}resolve(e){const{name:t}=e,i=this._model.getLanguageIdAtPosition(this._selection.selectionStartLineNumber,this._selection.selectionStartColumn),n=this._languageConfigurationService.getLanguageConfiguration(i).comments;if(n){if(t==="LINE_COMMENT")return n.lineCommentToken||void 0;if(t==="BLOCK_COMMENT_START")return n.blockCommentStartToken||void 0;if(t==="BLOCK_COMMENT_END")return n.blockCommentEndToken||void 0}}};uw=qhe([Ghe(2,Gn)],uw);const Ur=class Ur{constructor(){this._date=new Date}resolve(e){const{name:t}=e;if(t==="CURRENT_YEAR")return String(this._date.getFullYear());if(t==="CURRENT_YEAR_SHORT")return String(this._date.getFullYear()).slice(-2);if(t==="CURRENT_MONTH")return String(this._date.getMonth().valueOf()+1).padStart(2,"0");if(t==="CURRENT_DATE")return String(this._date.getDate().valueOf()).padStart(2,"0");if(t==="CURRENT_HOUR")return String(this._date.getHours().valueOf()).padStart(2,"0");if(t==="CURRENT_MINUTE")return String(this._date.getMinutes().valueOf()).padStart(2,"0");if(t==="CURRENT_SECOND")return String(this._date.getSeconds().valueOf()).padStart(2,"0");if(t==="CURRENT_DAY_NAME")return Ur.dayNames[this._date.getDay()];if(t==="CURRENT_DAY_NAME_SHORT")return Ur.dayNamesShort[this._date.getDay()];if(t==="CURRENT_MONTH_NAME")return Ur.monthNames[this._date.getMonth()];if(t==="CURRENT_MONTH_NAME_SHORT")return Ur.monthNamesShort[this._date.getMonth()];if(t==="CURRENT_SECONDS_UNIX")return String(Math.floor(this._date.getTime()/1e3));if(t==="CURRENT_TIMEZONE_OFFSET"){const i=this._date.getTimezoneOffset(),n=i>0?"-":"+",s=Math.trunc(Math.abs(i/60)),r=s<10?"0"+s:s,a=Math.abs(i)-s*60,l=a<10?"0"+a:a;return n+r+":"+l}}};Ur.dayNames=[m("Sunday","Sunday"),m("Monday","Monday"),m("Tuesday","Tuesday"),m("Wednesday","Wednesday"),m("Thursday","Thursday"),m("Friday","Friday"),m("Saturday","Saturday")],Ur.dayNamesShort=[m("SundayShort","Sun"),m("MondayShort","Mon"),m("TuesdayShort","Tue"),m("WednesdayShort","Wed"),m("ThursdayShort","Thu"),m("FridayShort","Fri"),m("SaturdayShort","Sat")],Ur.monthNames=[m("January","January"),m("February","February"),m("March","March"),m("April","April"),m("May","May"),m("June","June"),m("July","July"),m("August","August"),m("September","September"),m("October","October"),m("November","November"),m("December","December")],Ur.monthNamesShort=[m("JanuaryShort","Jan"),m("FebruaryShort","Feb"),m("MarchShort","Mar"),m("AprilShort","Apr"),m("MayShort","May"),m("JuneShort","Jun"),m("JulyShort","Jul"),m("AugustShort","Aug"),m("SeptemberShort","Sep"),m("OctoberShort","Oct"),m("NovemberShort","Nov"),m("DecemberShort","Dec")];let fw=Ur;class y5{constructor(e){this._workspaceService=e}resolve(e){if(!this._workspaceService)return;const t=pZ(this._workspaceService.getWorkspace());if(!gZ(t)){if(e.name==="WORKSPACE_NAME")return this._resolveWorkspaceName(t);if(e.name==="WORKSPACE_FOLDER")return this._resoveWorkspacePath(t)}}_resolveWorkspaceName(e){if(qk(e))return uc(e.uri.path);let t=uc(e.configPath.path);return t.endsWith(Gk)&&(t=t.substr(0,t.length-Gk.length-1)),t}_resoveWorkspacePath(e){if(qk(e))return _5(e.uri.fsPath);const t=uc(e.configPath.path);let i=e.configPath.fsPath;return i.endsWith(t)&&(i=i.substr(0,i.length-t.length-1)),i?_5(i):"/"}}class S5{resolve(e){const{name:t}=e;if(t==="RANDOM")return Math.random().toString().slice(-6);if(t==="RANDOM_HEX")return Math.random().toString(16).slice(-6);if(t==="UUID")return IB()}}var Zhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Yhe=function(o,e){return function(t,i){e(t,i,o)}},Zo;const So=class So{constructor(e,t,i){this._editor=e,this._snippet=t,this._snippetLineLeadingWhitespace=i,this._offset=-1,this._nestingLevel=1,this._placeholderGroups=MM(t.placeholders,eo.compareByIndex),this._placeholderGroupsIdx=-1}initialize(e){this._offset=e.newPosition}dispose(){this._placeholderDecorations&&this._editor.removeDecorations([...this._placeholderDecorations.values()]),this._placeholderGroups.length=0}_initDecorations(){if(this._offset===-1)throw new Error("Snippet not initialized!");if(this._placeholderDecorations)return;this._placeholderDecorations=new Map;const e=this._editor.getModel();this._editor.changeDecorations(t=>{for(const i of this._snippet.placeholders){const n=this._snippet.offset(i),s=this._snippet.fullLen(i),r=I.fromPositions(e.getPositionAt(this._offset+n),e.getPositionAt(this._offset+n+s)),a=i.isFinalTabstop?So._decor.inactiveFinal:So._decor.inactive,l=t.addDecoration(r,a);this._placeholderDecorations.set(i,l)}})}move(e){if(!this._editor.hasModel())return[];if(this._initDecorations(),this._placeholderGroupsIdx>=0){const n=[];for(const s of this._placeholderGroups[this._placeholderGroupsIdx])if(s.transform){const r=this._placeholderDecorations.get(s),a=this._editor.getModel().getDecorationRange(r),l=this._editor.getModel().getValueInRange(a),c=s.transform.resolve(l).split(/\r\n|\r|\n/);for(let d=1;d0&&this._editor.executeEdits("snippet.placeholderTransform",n)}let t=!1;e===!0&&this._placeholderGroupsIdx0&&(this._placeholderGroupsIdx-=1,t=!0);const i=this._editor.getModel().changeDecorations(n=>{const s=new Set,r=[];for(const a of this._placeholderGroups[this._placeholderGroupsIdx]){const l=this._placeholderDecorations.get(a),c=this._editor.getModel().getDecorationRange(l);r.push(new Fe(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn)),t=t&&this._hasPlaceholderBeenCollapsed(a),n.changeDecorationOptions(l,a.isFinalTabstop?So._decor.activeFinal:So._decor.active),s.add(a);for(const d of this._snippet.enclosingPlaceholders(a)){const h=this._placeholderDecorations.get(d);n.changeDecorationOptions(h,d.isFinalTabstop?So._decor.activeFinal:So._decor.active),s.add(d)}}for(const[a,l]of this._placeholderDecorations)s.has(a)||n.changeDecorationOptions(l,a.isFinalTabstop?So._decor.inactiveFinal:So._decor.inactive);return r});return t?this.move(e):i??[]}_hasPlaceholderBeenCollapsed(e){let t=e;for(;t;){if(t instanceof eo){const i=this._placeholderDecorations.get(t);if(this._editor.getModel().getDecorationRange(i).isEmpty()&&t.toString().length>0)return!0}t=t.parent}return!1}get isAtFirstPlaceholder(){return this._placeholderGroupsIdx<=0||this._placeholderGroups.length===0}get isAtLastPlaceholder(){return this._placeholderGroupsIdx===this._placeholderGroups.length-1}get hasPlaceholder(){return this._snippet.placeholders.length>0}get isTrivialSnippet(){if(this._snippet.placeholders.length===0)return!0;if(this._snippet.placeholders.length===1){const[e]=this._snippet.placeholders;if(e.isFinalTabstop&&this._snippet.rightMostDescendant===e)return!0}return!1}computePossibleSelections(){const e=new Map;for(const t of this._placeholderGroups){let i;for(const n of t){if(n.isFinalTabstop)break;i||(i=[],e.set(n.index,i));const s=this._placeholderDecorations.get(n),r=this._editor.getModel().getDecorationRange(s);if(!r){e.delete(n.index);break}i.push(r)}}return e}get activeChoice(){if(!this._placeholderDecorations)return;const e=this._placeholderGroups[this._placeholderGroupsIdx][0];if(!e?.choice)return;const t=this._placeholderDecorations.get(e);if(!t)return;const i=this._editor.getModel().getDecorationRange(t);if(i)return{range:i,choice:e.choice}}get hasChoice(){let e=!1;return this._snippet.walk(t=>(e=t instanceof Zg,!e)),e}merge(e){const t=this._editor.getModel();this._nestingLevel*=10,this._editor.changeDecorations(i=>{for(const n of this._placeholderGroups[this._placeholderGroupsIdx]){const s=e.shift();console.assert(s._offset!==-1),console.assert(!s._placeholderDecorations);const r=s._snippet.placeholderInfo.last.index;for(const l of s._snippet.placeholderInfo.all)l.isFinalTabstop?l.index=n.index+(r+1)/this._nestingLevel:l.index=n.index+l.index/this._nestingLevel;this._snippet.replace(n,s._snippet.children);const a=this._placeholderDecorations.get(n);i.removeDecoration(a),this._placeholderDecorations.delete(n);for(const l of s._snippet.placeholders){const c=s._snippet.offset(l),d=s._snippet.fullLen(l),h=I.fromPositions(t.getPositionAt(s._offset+c),t.getPositionAt(s._offset+c+d)),u=i.addDecoration(h,So._decor.inactive);this._placeholderDecorations.set(l,u)}}this._placeholderGroups=MM(this._snippet.placeholders,eo.compareByIndex)})}};So._decor={active:kt.register({description:"snippet-placeholder-1",stickiness:0,className:"snippet-placeholder"}),inactive:kt.register({description:"snippet-placeholder-2",stickiness:1,className:"snippet-placeholder"}),activeFinal:kt.register({description:"snippet-placeholder-3",stickiness:1,className:"finish-snippet-placeholder"}),inactiveFinal:kt.register({description:"snippet-placeholder-4",stickiness:1,className:"finish-snippet-placeholder"})};let gw=So;const L5={overwriteBefore:0,overwriteAfter:0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0};let mw=Zo=class{static adjustWhitespace(e,t,i,n,s){const r=e.getLineContent(t.lineNumber),a=pi(r,0,t.column-1);let l;return n.walk(c=>{if(!(c instanceof wn)||c.parent instanceof Zg||s&&!s.has(c))return!0;const d=c.value.split(/\r\n|\r|\n/);if(i){const u=n.offset(c);if(u===0)d[0]=e.normalizeIndentation(d[0]);else{l=l??n.toString();const f=l.charCodeAt(u-1);(f===10||f===13)&&(d[0]=e.normalizeIndentation(a+d[0]))}for(let f=1;fv.get(jk)),g=e.invokeWithinContext(v=>new v5(v.get(Cg),u)),p=()=>a,_=u.getValueInRange(Zo.adjustSelection(u,e.getSelection(),i,0)),b=u.getValueInRange(Zo.adjustSelection(u,e.getSelection(),0,n)),C=u.getLineFirstNonWhitespaceColumn(e.getSelection().positionLineNumber),w=e.getSelections().map((v,y)=>({selection:v,idx:y})).sort((v,y)=>I.compareRangesUsingStarts(v.selection,y.selection));for(const{selection:v,idx:y}of w){let x=Zo.adjustSelection(u,v,i,0),L=Zo.adjustSelection(u,v,0,n);_!==u.getValueInRange(x)&&(x=v),b!==u.getValueInRange(L)&&(L=v);const E=v.setStartPosition(x.startLineNumber,x.startColumn).setEndPosition(L.endLineNumber,L.endColumn),N=new Mg().parse(t,!0,s),H=E.getStartPosition(),F=Zo.adjustWhitespace(u,H,r||y>0&&C!==u.getLineFirstNonWhitespaceColumn(v.positionLineNumber),N);N.resolveVariables(new b5([g,new w5(p,y,w.length,e.getOption(79)==="spread"),new C5(u,v,y,l),new uw(u,v,c),new fw,new y5(f),new S5])),d[y]=aa.replace(E,N.toString()),d[y].identifier={major:y,minor:0},d[y]._isTracked=!0,h[y]=new gw(e,N,F)}return{edits:d,snippets:h}}static createEditsAndSnippetsFromEdits(e,t,i,n,s,r,a){if(!e.hasModel()||t.length===0)return{edits:[],snippets:[]};const l=[],c=e.getModel(),d=new Mg,h=new ub,u=new b5([e.invokeWithinContext(g=>new v5(g.get(Cg),c)),new w5(()=>s,0,e.getSelections().length,e.getOption(79)==="spread"),new C5(c,e.getSelection(),0,r),new uw(c,e.getSelection(),a),new fw,new y5(e.invokeWithinContext(g=>g.get(jk))),new S5]);t=t.sort((g,p)=>I.compareRangesUsingStarts(g.range,p.range));let f=0;for(let g=0;g0){const y=t[g-1].range,x=I.fromPositions(y.getEndPosition(),p.getStartPosition()),L=new wn(c.getValueInRange(x));h.appendChild(L),f+=L.value.length}const b=d.parseFragment(_,h);Zo.adjustWhitespace(c,p.getStartPosition(),!0,h,new Set(b)),h.resolveVariables(u);const C=h.toString(),w=C.slice(f);f=C.length;const v=aa.replace(p,w);v.identifier={major:g,minor:0},v._isTracked=!0,l.push(v)}return d.ensureFinalTabstop(h,i,!0),{edits:l,snippets:[new gw(e,h,"")]}}constructor(e,t,i=L5,n){this._editor=e,this._template=t,this._options=i,this._languageConfigurationService=n,this._templateMerges=[],this._snippets=[]}dispose(){xt(this._snippets)}_logInfo(){return`template="${this._template}", merged_templates="${this._templateMerges.join(" -> ")}"`}insert(){if(!this._editor.hasModel())return;const{edits:e,snippets:t}=typeof this._template=="string"?Zo.createEditsAndSnippetsFromSelections(this._editor,this._template,this._options.overwriteBefore,this._options.overwriteAfter,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer,this._languageConfigurationService):Zo.createEditsAndSnippetsFromEdits(this._editor,this._template,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer,this._languageConfigurationService);this._snippets=t,this._editor.executeEdits("snippet",e,i=>{const n=i.filter(s=>!!s.identifier);for(let s=0;sFe.fromPositions(s.range.getEndPosition()))}),this._editor.revealRange(this._editor.getSelections()[0])}merge(e,t=L5){if(!this._editor.hasModel())return;this._templateMerges.push([this._snippets[0]._nestingLevel,this._snippets[0]._placeholderGroupsIdx,e]);const{edits:i,snippets:n}=Zo.createEditsAndSnippetsFromSelections(this._editor,e,t.overwriteBefore,t.overwriteAfter,!0,t.adjustWhitespace,t.clipboardText,t.overtypingCapturer,this._languageConfigurationService);this._editor.executeEdits("snippet",i,s=>{const r=s.filter(l=>!!l.identifier);for(let l=0;lFe.fromPositions(l.range.getEndPosition()))})}next(){const e=this._move(!0);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())}prev(){const e=this._move(!1);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())}_move(e){const t=[];for(const i of this._snippets){const n=i.move(e);t.push(...n)}return t}get isAtFirstPlaceholder(){return this._snippets[0].isAtFirstPlaceholder}get isAtLastPlaceholder(){return this._snippets[0].isAtLastPlaceholder}get hasPlaceholder(){return this._snippets[0].hasPlaceholder}get hasChoice(){return this._snippets[0].hasChoice}get activeChoice(){return this._snippets[0].activeChoice}isSelectionWithinPlaceholders(){if(!this.hasPlaceholder)return!1;const e=this._editor.getSelections();if(e.length{s.push(...n.get(r))})}e.sort(I.compareRangesUsingStarts);for(const[i,n]of t){if(n.length!==e.length){t.delete(i);continue}n.sort(I.compareRangesUsingStarts);for(let s=0;s0}};mw=Zo=Zhe([Yhe(3,Gn)],mw);var Qhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},p1=function(o,e){return function(t,i){e(t,i,o)}},ju;const x5={overwriteBefore:0,overwriteAfter:0,undoStopBefore:!0,undoStopAfter:!0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0};var Jr;let Mn=(Jr=class{static get(e){return e.getContribution(ju.ID)}constructor(e,t,i,n,s){this._editor=e,this._logService=t,this._languageFeaturesService=i,this._languageConfigurationService=s,this._snippetListener=new X,this._modelVersionId=-1,this._inSnippet=ju.InSnippetMode.bindTo(n),this._hasNextTabstop=ju.HasNextTabstop.bindTo(n),this._hasPrevTabstop=ju.HasPrevTabstop.bindTo(n)}dispose(){this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._session?.dispose(),this._snippetListener.dispose()}insert(e,t){try{this._doInsert(e,typeof t>"u"?x5:{...x5,...t})}catch(i){this.cancel(),this._logService.error(i),this._logService.error("snippet_error"),this._logService.error("insert_template=",e),this._logService.error("existing_template=",this._session?this._session._logInfo():"")}}_doInsert(e,t){if(this._editor.hasModel()){if(this._snippetListener.clear(),t.undoStopBefore&&this._editor.getModel().pushStackElement(),this._session&&typeof e!="string"&&this.cancel(),this._session?(ai(typeof e=="string"),this._session.merge(e,t)):(this._modelVersionId=this._editor.getModel().getAlternativeVersionId(),this._session=new mw(this._editor,e,t,this._languageConfigurationService),this._session.insert()),t.undoStopAfter&&this._editor.getModel().pushStackElement(),this._session?.hasChoice){const i={_debugDisplayName:"snippetChoiceCompletions",provideCompletionItems:(c,d)=>{if(!this._session||c!==this._editor.getModel()||!P.equals(this._editor.getPosition(),d))return;const{activeChoice:h}=this._session;if(!h||h.choice.options.length===0)return;const u=c.getValueInRange(h.range),f=!!h.choice.options.find(p=>p.value===u),g=[];for(let p=0;p{s?.dispose(),r=!1},l=()=>{r||(s=this._languageFeaturesService.completionProvider.register({language:n.getLanguageId(),pattern:n.uri.fsPath,scheme:n.uri.scheme,exclusive:!0},i),this._snippetListener.add(s),r=!0)};this._choiceCompletions={provider:i,enable:l,disable:a}}this._updateState(),this._snippetListener.add(this._editor.onDidChangeModelContent(i=>i.isFlush&&this.cancel())),this._snippetListener.add(this._editor.onDidChangeModel(()=>this.cancel())),this._snippetListener.add(this._editor.onDidChangeCursorSelection(()=>this._updateState()))}}_updateState(){if(!(!this._session||!this._editor.hasModel())){if(this._modelVersionId===this._editor.getModel().getAlternativeVersionId())return this.cancel();if(!this._session.hasPlaceholder)return this.cancel();if(this._session.isAtLastPlaceholder||!this._session.isSelectionWithinPlaceholders())return this._editor.getModel().pushStackElement(),this.cancel();this._inSnippet.set(!0),this._hasPrevTabstop.set(!this._session.isAtFirstPlaceholder),this._hasNextTabstop.set(!this._session.isAtLastPlaceholder),this._handleChoice()}}_handleChoice(){if(!this._session||!this._editor.hasModel()){this._currentChoice=void 0;return}const{activeChoice:e}=this._session;if(!e||!this._choiceCompletions){this._choiceCompletions?.disable(),this._currentChoice=void 0;return}this._currentChoice!==e.choice&&(this._currentChoice=e.choice,this._choiceCompletions.enable(),queueMicrotask(()=>{jhe(this._editor,this._choiceCompletions.provider)}))}finish(){for(;this._inSnippet.get();)this.next()}cancel(e=!1){this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._snippetListener.clear(),this._currentChoice=void 0,this._session?.dispose(),this._session=void 0,this._modelVersionId=-1,e&&this._editor.setSelections([this._editor.getSelection()])}prev(){this._session?.prev(),this._updateState()}next(){this._session?.next(),this._updateState()}isInSnippet(){return!!this._inSnippet.get()}},ju=Jr,Jr.ID="snippetController2",Jr.InSnippetMode=new le("inSnippetMode",!1,m("inSnippetMode","Whether the editor in current in snippet mode")),Jr.HasNextTabstop=new le("hasNextTabstop",!1,m("hasNextTabstop","Whether there is a next tab stop when in snippet mode")),Jr.HasPrevTabstop=new le("hasPrevTabstop",!1,m("hasPrevTabstop","Whether there is a previous tab stop when in snippet mode")),Jr);Mn=ju=Qhe([p1(1,gs),p1(2,Se),p1(3,De),p1(4,Gn)],Mn);Ho(Mn.ID,Mn,4);const Hy=co.bindToContribution(Mn.get);ge(new Hy({id:"jumpToNextSnippetPlaceholder",precondition:re.and(Mn.InSnippetMode,Mn.HasNextTabstop),handler:o=>o.next(),kbOpts:{weight:130,kbExpr:K.textInputFocus,primary:2}}));ge(new Hy({id:"jumpToPrevSnippetPlaceholder",precondition:re.and(Mn.InSnippetMode,Mn.HasPrevTabstop),handler:o=>o.prev(),kbOpts:{weight:130,kbExpr:K.textInputFocus,primary:1026}}));ge(new Hy({id:"leaveSnippet",precondition:Mn.InSnippetMode,handler:o=>o.cancel(!0),kbOpts:{weight:130,kbExpr:K.textInputFocus,primary:9,secondary:[1033]}}));ge(new Hy({id:"acceptSnippet",precondition:Mn.InSnippetMode,handler:o=>o.finish()}));var Xhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},CL=function(o,e){return function(t,i){e(t,i,o)}};let sN=class extends z{get isAcceptingPartially(){return this._isAcceptingPartially}constructor(e,t,i,n,s,r,a,l,c,d,h,u){super(),this.textModel=e,this.selectedSuggestItem=t,this._textModelVersionId=i,this._positions=n,this._debounceValue=s,this._suggestPreviewEnabled=r,this._suggestPreviewMode=a,this._inlineSuggestMode=l,this._enabled=c,this._instantiationService=d,this._commandService=h,this._languageConfigurationService=u,this._source=this._register(this._instantiationService.createInstance(nN,this.textModel,this._textModelVersionId,this._debounceValue)),this._isActive=Ge(this,!1),this._forceUpdateExplicitlySignal=Q_(this),this._selectedInlineCompletionId=Ge(this,void 0),this._primaryPosition=Ce(this,g=>this._positions.read(g)[0]??new P(1,1)),this._isAcceptingPartially=!1,this._preserveCurrentCompletionReasons=new Set([$a.Redo,$a.Undo,$a.AcceptWord]),this._fetchInlineCompletionsPromise=HZ({owner:this,createEmptyChangeSummary:()=>({preserveCurrentCompletion:!1,inlineCompletionTriggerKind:Cl.Automatic}),handleChange:(g,p)=>(g.didChange(this._textModelVersionId)&&this._preserveCurrentCompletionReasons.has(this._getReason(g.change))?p.preserveCurrentCompletion=!0:g.didChange(this._forceUpdateExplicitlySignal)&&(p.inlineCompletionTriggerKind=Cl.Explicit),!0)},(g,p)=>{if(this._forceUpdateExplicitlySignal.read(g),!(this._enabled.read(g)&&this.selectedSuggestItem.read(g)||this._isActive.read(g))){this._source.cancelUpdate();return}this._textModelVersionId.read(g);const b=this._source.suggestWidgetInlineCompletions.get(),C=this.selectedSuggestItem.read(g);if(b&&!C){const L=this._source.inlineCompletions.get();Xt(E=>{(!L||b.request.versionId>L.request.versionId)&&this._source.inlineCompletions.set(b.clone(),E),this._source.clearSuggestWidgetInlineCompletions(E)})}const w=this._primaryPosition.read(g),v={triggerKind:p.inlineCompletionTriggerKind,selectedSuggestionInfo:C?.toSelectedSuggestionInfo()},y=this.selectedInlineCompletion.get(),x=p.preserveCurrentCompletion||y?.forwardStable?y:void 0;return this._source.fetch(w,v,x)}),this._filteredInlineCompletionItems=dr({owner:this,equalsFn:Xk()},g=>{const p=this._source.inlineCompletions.read(g);if(!p)return[];const _=this._primaryPosition.read(g);return p.inlineCompletions.filter(C=>C.isVisible(this.textModel,_,g))}),this.selectedInlineCompletionIndex=Ce(this,g=>{const p=this._selectedInlineCompletionId.read(g),_=this._filteredInlineCompletionItems.read(g),b=this._selectedInlineCompletionId===void 0?-1:_.findIndex(C=>C.semanticId===p);return b===-1?(this._selectedInlineCompletionId.set(void 0,void 0),0):b}),this.selectedInlineCompletion=Ce(this,g=>{const p=this._filteredInlineCompletionItems.read(g),_=this.selectedInlineCompletionIndex.read(g);return p[_]}),this.activeCommands=dr({owner:this,equalsFn:Xk()},g=>this.selectedInlineCompletion.read(g)?.inlineCompletion.source.inlineCompletions.commands??[]),this.lastTriggerKind=this._source.inlineCompletions.map(this,g=>g?.request.context.triggerKind),this.inlineCompletionsCount=Ce(this,g=>{if(this.lastTriggerKind.read(g)===Cl.Explicit)return this._filteredInlineCompletionItems.read(g).length}),this.state=dr({owner:this,equalsFn:(g,p)=>!g||!p?g===p:s5(g.ghostTexts,p.ghostTexts)&&g.inlineCompletion===p.inlineCompletion&&g.suggestItem===p.suggestItem},g=>{const p=this.textModel,_=this.selectedSuggestItem.read(g);if(_){const b=nh(_.toSingleTextEdit(),p),C=this._computeAugmentation(b,g);if(!this._suggestPreviewEnabled.read(g)&&!C)return;const v=C?.edit??b,y=C?C.edit.text.length-b.text.length:0,x=this._suggestPreviewMode.read(g),L=this._positions.read(g),E=[v,...vL(this.textModel,L,v)],N=E.map((F,W)=>d5(F,p,x,L[W],y)).filter(_l),H=N[0]??new cw(v.range.endLineNumber,[]);return{edits:E,primaryGhostText:H,ghostTexts:N,inlineCompletion:C?.completion,suggestItem:_}}else{if(!this._isActive.read(g))return;const b=this.selectedInlineCompletion.read(g);if(!b)return;const C=b.toSingleTextEdit(g),w=this._inlineSuggestMode.read(g),v=this._positions.read(g),y=[C,...vL(this.textModel,v,C)],x=y.map((L,E)=>d5(L,p,w,v[E],0)).filter(_l);return x[0]?{edits:y,primaryGhostText:x[0],ghostTexts:x,inlineCompletion:b,suggestItem:void 0}:void 0}}),this.ghostTexts=dr({owner:this,equalsFn:s5},g=>{const p=this.state.read(g);if(p)return p.ghostTexts}),this.primaryGhostText=dr({owner:this,equalsFn:VB},g=>{const p=this.state.read(g);if(p)return p?.primaryGhostText}),this._register(X_(this._fetchInlineCompletionsPromise));let f;this._register(We(g=>{const _=this.state.read(g)?.inlineCompletion;if(_?.semanticId!==f?.semanticId&&(f=_,_)){const b=_.inlineCompletion,C=b.source;C.provider.handleItemDidShow?.(C.inlineCompletions,b.sourceInlineCompletion,b.insertText)}}))}_getReason(e){return e?.isUndoing?$a.Undo:e?.isRedoing?$a.Redo:this.isAcceptingPartially?$a.AcceptWord:$a.Other}async trigger(e){this._isActive.set(!0,e),await this._fetchInlineCompletionsPromise.get()}async triggerExplicitly(e){c_(e,t=>{this._isActive.set(!0,t),this._forceUpdateExplicitlySignal.trigger(t)}),await this._fetchInlineCompletionsPromise.get()}stop(e){c_(e,t=>{this._isActive.set(!1,t),this._source.clear(t)})}_computeAugmentation(e,t){const i=this.textModel,n=this._source.suggestWidgetInlineCompletions.read(t),s=n?n.inlineCompletions:[this.selectedInlineCompletion.read(t)].filter(_l);return KU(s,a=>{let l=a.toSingleTextEdit(t);return l=nh(l,i,I.fromPositions(l.range.getStartPosition(),e.range.getEndPosition())),UB(l,e)?{completion:a,edit:l}:void 0})}async _deltaSelectedInlineCompletionIndex(e){await this.triggerExplicitly();const t=this._filteredInlineCompletionItems.get()||[];if(t.length>0){const i=(this.selectedInlineCompletionIndex.get()+e+t.length)%t.length;this._selectedInlineCompletionId.set(t[i].semanticId,void 0)}else this._selectedInlineCompletionId.set(void 0,void 0)}async next(){await this._deltaSelectedInlineCompletionIndex(1)}async previous(){await this._deltaSelectedInlineCompletionIndex(-1)}async accept(e){if(e.getModel()!==this.textModel)throw new nt;const t=this.state.get();if(!t||t.primaryGhostText.isEmpty()||!t.inlineCompletion)return;const i=t.inlineCompletion.toInlineCompletion(void 0);if(i.command&&i.source.addRef(),e.pushUndoStop(),i.snippetInfo)e.executeEdits("inlineSuggestion.accept",[aa.replace(i.range,""),...i.additionalTextEdits]),e.setPosition(i.snippetInfo.range.getStartPosition(),"inlineCompletionAccept"),Mn.get(e)?.insert(i.snippetInfo.snippet,{undoStopBefore:!1});else{const n=t.edits,s=k5(n).map(r=>Fe.fromPositions(r));e.executeEdits("inlineSuggestion.accept",[...n.map(r=>aa.replace(r.range,r.text)),...i.additionalTextEdits]),e.setSelections(s,"inlineCompletionAccept")}this.stop(),i.command&&(await this._commandService.executeCommand(i.command.id,...i.command.arguments||[]).then(void 0,$n),i.source.removeRef())}async acceptNextWord(e){await this._acceptNext(e,(t,i)=>{const n=this.textModel.getLanguageIdAtPosition(t.lineNumber,t.column),s=this._languageConfigurationService.getLanguageConfiguration(n),r=new RegExp(s.wordDefinition.source,s.wordDefinition.flags.replace("g","")),a=i.match(r);let l=0;a&&a.index!==void 0?a.index===0?l=a[0].length:l=a.index:l=i.length;const d=/\s+/g.exec(i);return d&&d.index!==void 0&&d.index+d[0].length{const n=i.match(/\n/);return n&&n.index!==void 0?n.index+1:i.length},1)}async _acceptNext(e,t,i){if(e.getModel()!==this.textModel)throw new nt;const n=this.state.get();if(!n||n.primaryGhostText.isEmpty()||!n.inlineCompletion)return;const s=n.primaryGhostText,r=n.inlineCompletion.toInlineCompletion(void 0);if(r.snippetInfo||r.filterText!==r.insertText){await this.accept(e);return}const a=s.parts[0],l=new P(s.lineNumber,a.column),c=a.text,d=t(l,c);if(d===c.length&&s.parts.length===1){this.accept(e);return}const h=c.substring(0,d),u=this._positions.get(),f=u[0];r.source.addRef();try{this._isAcceptingPartially=!0;try{e.pushUndoStop();const g=I.fromPositions(f,l),p=e.getModel().getValueInRange(g)+h,_=new fa(g,p),b=[_,...vL(this.textModel,u,_)],C=k5(b).map(w=>Fe.fromPositions(w));e.executeEdits("inlineSuggestion.accept",b.map(w=>aa.replace(w.range,w.text))),e.setSelections(C,"inlineCompletionPartialAccept"),e.revealPositionInCenterIfOutsideViewport(e.getPosition(),1)}finally{this._isAcceptingPartially=!1}if(r.source.provider.handlePartialAccept){const g=I.fromPositions(r.range.getStartPosition(),Po.ofText(h).addToPosition(l)),p=e.getModel().getValueInRange(g,1);r.source.provider.handlePartialAccept(r.source.inlineCompletions,r.sourceInlineCompletion,p.length,{kind:i})}}finally{r.source.removeRef()}}handleSuggestAccepted(e){const t=nh(e.toSingleTextEdit(),this.textModel),i=this._computeAugmentation(t,void 0);if(!i)return;const n=i.completion.inlineCompletion;n.source.provider.handlePartialAccept?.(n.source.inlineCompletions,n.sourceInlineCompletion,t.text.length,{kind:2})}};sN=Xhe([CL(9,ke),CL(10,hi),CL(11,Gn)],sN);var $a;(function(o){o[o.Undo=0]="Undo",o[o.Redo=1]="Redo",o[o.AcceptWord=2]="AcceptWord",o[o.Other=3]="Other"})($a||($a={}));function vL(o,e,t){if(e.length===1)return[];const i=e[0],n=e.slice(1),s=t.range.getStartPosition(),r=t.range.getEndPosition(),a=o.getValueInRange(I.fromPositions(i,r)),l=o5(i,s);if(l.lineNumber<1)return Ze(new nt(`positionWithinTextEdit line number should be bigger than 0. + Invalid subtraction between ${i.toString()} and ${s.toString()}`)),[];const c=Jhe(t.text,l);return n.map(d=>{const h=Che(o5(d,s),r),u=o.getValueInRange(I.fromPositions(d,h)),f=Th(a,u),g=I.fromPositions(d,d.delta(0,f));return new fa(g,c)})}function Jhe(o,e){let t="";const i=dH(o);for(let n=e.lineNumber-1;ns.range,I.compareRangesUsingStarts)),i=new gT(e.apply(o)).getNewRanges();return e.inverse().apply(i).map(s=>s.getEndPosition())}var eue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},D5=function(o,e){return function(t,i){e(t,i,o)}},zm;class LM{constructor(e){this.name=e}select(e,t,i){if(i.length===0)return 0;const n=i[0].score[0];for(let s=0;sl&&h.type===i[c].completion.kind&&h.insertText===i[c].completion.insertText&&(l=h.touch,a=c),i[c].completion.preselect&&r===-1)return r=c}return a!==-1?a:r!==-1?r:0}toJSON(){return this._cache.toJSON()}fromJSON(e){this._cache.clear();const t=0;for(const[i,n]of e)n.touch=t,n.type=typeof n.type=="number"?n.type:Up.fromString(n.type),this._cache.set(i,n);this._seq=this._cache.size}}class iue extends LM{constructor(){super("recentlyUsedByPrefix"),this._trie=Bf.forStrings(),this._seq=0}memorize(e,t,i){const{word:n}=e.getWordUntilPosition(t),s=`${e.getLanguageId()}/${n}`;this._trie.set(s,{type:i.completion.kind,insertText:i.completion.insertText,touch:this._seq++})}select(e,t,i){const{word:n}=e.getWordUntilPosition(t);if(!n)return super.select(e,t,i);const s=`${e.getLanguageId()}/${n}`;let r=this._trie.get(s);if(r||(r=this._trie.findSubstr(s)),r)for(let a=0;ae.push([i,t])),e.sort((t,i)=>-(t[1].touch-i[1].touch)).forEach((t,i)=>t[1].touch=i),e.slice(0,200)}fromJSON(e){if(this._trie.clear(),e.length>0){this._seq=e[0][1].touch+1;for(const[t,i]of e)i.type=typeof i.type=="number"?i.type:Up.fromString(i.type),this._trie.set(t,i)}}}var Ec;let oN=(Ec=class{constructor(e,t){this._storageService=e,this._configService=t,this._disposables=new X,this._persistSoon=new ci(()=>this._saveState(),500),this._disposables.add(e.onWillSaveState(i=>{i.reason===aD.SHUTDOWN&&this._saveState()}))}dispose(){this._disposables.dispose(),this._persistSoon.dispose()}memorize(e,t,i){this._withStrategy(e,t).memorize(e,t,i),this._persistSoon.schedule()}select(e,t,i){return this._withStrategy(e,t).select(e,t,i)}_withStrategy(e,t){const i=this._configService.getValue("editor.suggestSelection",{overrideIdentifier:e.getLanguageIdAtPosition(t.lineNumber,t.column),resource:e.uri});if(this._strategy?.name!==i){this._saveState();const n=zm._strategyCtors.get(i)||I5;this._strategy=new n;try{const r=this._configService.getValue("editor.suggest.shareSuggestSelections")?0:1,a=this._storageService.get(`${zm._storagePrefix}/${i}`,r);a&&this._strategy.fromJSON(JSON.parse(a))}catch{}}return this._strategy}_saveState(){if(this._strategy){const t=this._configService.getValue("editor.suggest.shareSuggestSelections")?0:1,i=JSON.stringify(this._strategy);this._storageService.store(`${zm._storagePrefix}/${this._strategy.name}`,i,t,1)}}},zm=Ec,Ec._strategyCtors=new Map([["recentlyUsedByPrefix",iue],["recentlyUsed",tue],["first",I5]]),Ec._storagePrefix="suggest/memories",Ec);oN=zm=eue([D5(0,du),D5(1,lt)],oN);const YB=He("ISuggestMemories");Qe(YB,oN,1);var nue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},sue=function(o,e){return function(t,i){e(t,i,o)}},rN,xh;let pw=(xh=class{constructor(e,t){this._editor=e,this._enabled=!1,this._ckAtEnd=rN.AtEnd.bindTo(t),this._configListener=this._editor.onDidChangeConfiguration(i=>i.hasChanged(124)&&this._update()),this._update()}dispose(){this._configListener.dispose(),this._selectionListener?.dispose(),this._ckAtEnd.reset()}_update(){const e=this._editor.getOption(124)==="on";if(this._enabled!==e)if(this._enabled=e,this._enabled){const t=()=>{if(!this._editor.hasModel()){this._ckAtEnd.set(!1);return}const i=this._editor.getModel(),n=this._editor.getSelection(),s=i.getWordAtPosition(n.getStartPosition());if(!s){this._ckAtEnd.set(!1);return}this._ckAtEnd.set(s.endColumn===n.getStartPosition().column)};this._selectionListener=this._editor.onDidChangeCursorSelection(t),t()}else this._selectionListener&&(this._ckAtEnd.reset(),this._selectionListener.dispose(),this._selectionListener=void 0)}},rN=xh,xh.AtEnd=new le("atEndOfWord",!1),xh);pw=rN=nue([sue(1,De)],pw);var oue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},rue=function(o,e){return function(t,i){e(t,i,o)}},Um,kh;let Rg=(kh=class{constructor(e,t){this._editor=e,this._index=0,this._ckOtherSuggestions=Um.OtherSuggestions.bindTo(t)}dispose(){this.reset()}reset(){this._ckOtherSuggestions.reset(),this._listener?.dispose(),this._model=void 0,this._acceptNext=void 0,this._ignore=!1}set({model:e,index:t},i){if(e.items.length===0){this.reset();return}if(Um._moveIndex(!0,e,t)===t){this.reset();return}this._acceptNext=i,this._model=e,this._index=t,this._listener=this._editor.onDidChangeCursorPosition(()=>{this._ignore||this.reset()}),this._ckOtherSuggestions.set(!0)}static _moveIndex(e,t,i){let n=i;for(let s=t.items.length;s>0&&(n=(n+t.items.length+(e?1:-1))%t.items.length,!(n===i||!t.items[n].completion.additionalTextEdits));s--);return n}next(){this._move(!0)}prev(){this._move(!1)}_move(e){if(this._model)try{this._ignore=!0,this._index=Um._moveIndex(e,this._model,this._index),this._acceptNext({index:this._index,item:this._model.items[this._index],model:this._model})}finally{this._ignore=!1}}},Um=kh,kh.OtherSuggestions=new le("hasOtherSuggestions",!1),kh);Rg=Um=oue([rue(1,De)],Rg);class aue{constructor(e,t,i,n){this._disposables=new X,this._disposables.add(i.onDidSuggest(s=>{s.completionModel.items.length===0&&this.reset()})),this._disposables.add(i.onDidCancel(s=>{this.reset()})),this._disposables.add(t.onDidShow(()=>this._onItem(t.getFocusedItem()))),this._disposables.add(t.onDidFocus(this._onItem,this)),this._disposables.add(t.onDidHide(this.reset,this)),this._disposables.add(e.onWillType(s=>{if(this._active&&!t.isFrozen()&&i.state!==0){const r=s.charCodeAt(s.length-1);this._active.acceptCharacters.has(r)&&e.getOption(0)&&n(this._active.item)}}))}_onItem(e){if(!e||!Ps(e.item.completion.commitCharacters)){this.reset();return}if(this._active&&this._active.item.item===e.item)return;const t=new bU;for(const i of e.item.completion.commitCharacters)i.length>0&&t.add(i.charCodeAt(0));this._active={acceptCharacters:t,item:e}}reset(){this._active=void 0}dispose(){this._disposables.dispose()}}const Ys=class Ys{async provideSelectionRanges(e,t){const i=[];for(const n of t){const s=[];i.push(s);const r=new Map;await new Promise(a=>Ys._bracketsRightYield(a,0,e,n,r)),await new Promise(a=>Ys._bracketsLeftYield(a,0,e,n,r,s))}return i}static _bracketsRightYield(e,t,i,n,s){const r=new Map,a=Date.now();for(;;){if(t>=Ys._maxRounds){e();break}if(!n){e();break}const l=i.bracketPairs.findNextBracket(n);if(!l){e();break}if(Date.now()-a>Ys._maxDuration){setTimeout(()=>Ys._bracketsRightYield(e,t+1,i,n,s));break}if(l.bracketInfo.isOpeningBracket){const d=l.bracketInfo.bracketText,h=r.has(d)?r.get(d):0;r.set(d,h+1)}else{const d=l.bracketInfo.getOpeningBrackets()[0].bracketText;let h=r.has(d)?r.get(d):0;if(h-=1,r.set(d,Math.max(0,h)),h<0){let u=s.get(d);u||(u=new yn,s.set(d,u)),u.push(l.range)}}n=l.range.getEndPosition()}}static _bracketsLeftYield(e,t,i,n,s,r){const a=new Map,l=Date.now();for(;;){if(t>=Ys._maxRounds&&s.size===0){e();break}if(!n){e();break}const c=i.bracketPairs.findPrevBracket(n);if(!c){e();break}if(Date.now()-l>Ys._maxDuration){setTimeout(()=>Ys._bracketsLeftYield(e,t+1,i,n,s,r));break}if(c.bracketInfo.isOpeningBracket){const h=c.bracketInfo.bracketText;let u=a.has(h)?a.get(h):0;if(u-=1,a.set(h,Math.max(0,u)),u<0){const f=s.get(h);if(f){const g=f.shift();f.size===0&&s.delete(h);const p=I.fromPositions(c.range.getEndPosition(),g.getStartPosition()),_=I.fromPositions(c.range.getStartPosition(),g.getEndPosition());r.push({range:p}),r.push({range:_}),Ys._addBracketLeading(i,_,r)}}}else{const h=c.bracketInfo.getOpeningBrackets()[0].bracketText,u=a.has(h)?a.get(h):0;a.set(h,u+1)}n=c.range.getStartPosition()}}static _addBracketLeading(e,t,i){if(t.startLineNumber===t.endLineNumber)return;const n=t.startLineNumber,s=e.getLineFirstNonWhitespaceColumn(n);s!==0&&s!==t.startColumn&&(i.push({range:I.fromPositions(new P(n,s),t.getEndPosition())}),i.push({range:I.fromPositions(new P(n,1),t.getEndPosition())}));const r=n-1;if(r>0){const a=e.getLineFirstNonWhitespaceColumn(r);a===t.startColumn&&a!==e.getLineLastNonWhitespaceColumn(r)&&(i.push({range:I.fromPositions(new P(r,a),t.getEndPosition())}),i.push({range:I.fromPositions(new P(r,1),t.getEndPosition())}))}}};Ys._maxDuration=30,Ys._maxRounds=2;let aN=Ys;const $r=class $r{static async create(e,t){if(!t.getOption(119).localityBonus||!t.hasModel())return $r.None;const i=t.getModel(),n=t.getPosition();if(!e.canComputeWordRanges(i.uri))return $r.None;const[s]=await new aN().provideSelectionRanges(i,[n]);if(s.length===0)return $r.None;const r=await e.computeWordRanges(i.uri,s[0].range);if(!r)return $r.None;const a=i.getWordUntilPosition(n);return delete r[a.word],new class extends $r{distance(l,c){if(!n.equals(t.getPosition()))return 0;if(c.kind===17)return 2<<20;const d=typeof c.label=="string"?c.label:c.label.label,h=r[d];if(N5(h))return 2<<20;const u=SN(h,I.fromPositions(l),I.compareRangesUsingStarts),f=u>=0?h[u]:h[Math.max(0,~u-1)];let g=s.length;for(const p of s){if(!I.containsRange(p.range,f))break;g-=1}return g}}}};$r.None=new class extends $r{distance(){return 0}};let lN=$r;class Md{constructor(e,t,i,n,s,r,a=r_.default,l=void 0){this.clipboardText=l,this._snippetCompareFn=Md._compareCompletionItems,this._items=e,this._column=t,this._wordDistance=n,this._options=s,this._refilterKind=1,this._lineContext=i,this._fuzzyScoreOptions=a,r==="top"?this._snippetCompareFn=Md._compareCompletionItemsSnippetsUp:r==="bottom"&&(this._snippetCompareFn=Md._compareCompletionItemsSnippetsDown)}get lineContext(){return this._lineContext}set lineContext(e){(this._lineContext.leadingLineContent!==e.leadingLineContent||this._lineContext.characterCountDelta!==e.characterCountDelta)&&(this._refilterKind=this._lineContext.characterCountDelta0&&i[0].container.incomplete&&e.add(t);return e}get stats(){return this._ensureCachedState(),this._stats}_ensureCachedState(){this._refilterKind!==0&&this._createCachedState()}_createCachedState(){this._itemsByProvider=new Map;const e=[],{leadingLineContent:t,characterCountDelta:i}=this._lineContext;let n="",s="";const r=this._refilterKind===1?this._items:this._filteredItems,a=[],l=!this._options.filterGraceful||r.length>2e3?_g:Bq;for(let c=0;c=f)d.score=oa.Default;else if(typeof d.completion.filterText=="string"){const p=l(n,s,g,d.completion.filterText,d.filterTextLow,0,this._fuzzyScoreOptions);if(!p)continue;Ax(d.completion.filterText,d.textLabel)===0?d.score=p:(d.score=Aq(n,s,g,d.textLabel,d.labelLow,0),d.score[0]=p[0])}else{const p=l(n,s,g,d.textLabel,d.labelLow,0,this._fuzzyScoreOptions);if(!p)continue;d.score=p}}d.idx=c,d.distance=this._wordDistance.distance(d.position,d.completion),a.push(d),e.push(d.textLabel.length)}this._filteredItems=a.sort(this._snippetCompareFn),this._refilterKind=0,this._stats={pLabelLen:e.length?LL(e.length-.85,e,(c,d)=>c-d):0}}static _compareCompletionItems(e,t){return e.score[0]>t.score[0]?-1:e.score[0]t.distance?1:e.idxt.idx?1:0}static _compareCompletionItemsSnippetsDown(e,t){if(e.completion.kind!==t.completion.kind){if(e.completion.kind===27)return 1;if(t.completion.kind===27)return-1}return Md._compareCompletionItems(e,t)}static _compareCompletionItemsSnippetsUp(e,t){if(e.completion.kind!==t.completion.kind){if(e.completion.kind===27)return-1;if(t.completion.kind===27)return 1}return Md._compareCompletionItems(e,t)}}var lue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ul=function(o,e){return function(t,i){e(t,i,o)}},cN;class cd{static shouldAutoTrigger(e){if(!e.hasModel())return!1;const t=e.getModel(),i=e.getPosition();t.tokenization.tokenizeIfCheap(i.lineNumber);const n=t.getWordAtPosition(i);return!(!n||n.endColumn!==i.column&&n.startColumn+1!==i.column||!isNaN(Number(n.word)))}constructor(e,t,i){this.leadingLineContent=e.getLineContent(t.lineNumber).substr(0,t.column-1),this.leadingWord=e.getWordUntilPosition(t),this.lineNumber=t.lineNumber,this.column=t.column,this.triggerOptions=i}}function cue(o,e,t){if(!e.getContextKeyValue(hs.inlineSuggestionVisible.key))return!0;const i=e.getContextKeyValue(hs.suppressSuggestions.key);return i!==void 0?!i:!o.getOption(62).suppressSuggestions}function due(o,e,t){if(!e.getContextKeyValue("inlineSuggestionVisible"))return!0;const i=e.getContextKeyValue(hs.suppressSuggestions.key);return i!==void 0?!i:!o.getOption(62).suppressSuggestions}let dN=cN=class{constructor(e,t,i,n,s,r,a,l,c){this._editor=e,this._editorWorkerService=t,this._clipboardService=i,this._telemetryService=n,this._logService=s,this._contextKeyService=r,this._configurationService=a,this._languageFeaturesService=l,this._envService=c,this._toDispose=new X,this._triggerCharacterListener=new X,this._triggerQuickSuggest=new wr,this._triggerState=void 0,this._completionDisposables=new X,this._onDidCancel=new A,this._onDidTrigger=new A,this._onDidSuggest=new A,this.onDidCancel=this._onDidCancel.event,this.onDidTrigger=this._onDidTrigger.event,this.onDidSuggest=this._onDidSuggest.event,this._telemetryGate=0,this._currentSelection=this._editor.getSelection()||new Fe(1,1,1,1),this._toDispose.add(this._editor.onDidChangeModel(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeModelLanguage(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeConfiguration(()=>{this._updateTriggerCharacters()})),this._toDispose.add(this._languageFeaturesService.completionProvider.onDidChange(()=>{this._updateTriggerCharacters(),this._updateActiveSuggestSession()}));let d=!1;this._toDispose.add(this._editor.onDidCompositionStart(()=>{d=!0})),this._toDispose.add(this._editor.onDidCompositionEnd(()=>{d=!1,this._onCompositionEnd()})),this._toDispose.add(this._editor.onDidChangeCursorSelection(h=>{d||this._onCursorChange(h)})),this._toDispose.add(this._editor.onDidChangeModelContent(()=>{!d&&this._triggerState!==void 0&&this._refilterCompletionItems()})),this._updateTriggerCharacters()}dispose(){xt(this._triggerCharacterListener),xt([this._onDidCancel,this._onDidSuggest,this._onDidTrigger,this._triggerQuickSuggest]),this._toDispose.dispose(),this._completionDisposables.dispose(),this.cancel()}_updateTriggerCharacters(){if(this._triggerCharacterListener.clear(),this._editor.getOption(92)||!this._editor.hasModel()||!this._editor.getOption(122))return;const e=new Map;for(const i of this._languageFeaturesService.completionProvider.all(this._editor.getModel()))for(const n of i.triggerCharacters||[]){let s=e.get(n);s||(s=new Set,e.set(n,s)),s.add(i)}const t=i=>{if(!due(this._editor,this._contextKeyService,this._configurationService)||cd.shouldAutoTrigger(this._editor))return;if(!i){const r=this._editor.getPosition();i=this._editor.getModel().getLineContent(r.lineNumber).substr(0,r.column-1)}let n="";Mh(i.charCodeAt(i.length-1))?wi(i.charCodeAt(i.length-2))&&(n=i.substr(i.length-2)):n=i.charAt(i.length-1);const s=e.get(n);if(s){const r=new Map;if(this._completionModel)for(const[a,l]of this._completionModel.getItemsByProvider())s.has(a)||r.set(a,l);this.trigger({auto:!0,triggerKind:1,triggerCharacter:n,retrigger:!!this._completionModel,clipboardText:this._completionModel?.clipboardText,completionOptions:{providerFilter:s,providerItemsToReuse:r}})}};this._triggerCharacterListener.add(this._editor.onDidType(t)),this._triggerCharacterListener.add(this._editor.onDidCompositionEnd(()=>t()))}get state(){return this._triggerState?this._triggerState.auto?2:1:0}cancel(e=!1){this._triggerState!==void 0&&(this._triggerQuickSuggest.cancel(),this._requestToken?.cancel(),this._requestToken=void 0,this._triggerState=void 0,this._completionModel=void 0,this._context=void 0,this._onDidCancel.fire({retrigger:e}))}clear(){this._completionDisposables.clear()}_updateActiveSuggestSession(){this._triggerState!==void 0&&(!this._editor.hasModel()||!this._languageFeaturesService.completionProvider.has(this._editor.getModel())?this.cancel():this.trigger({auto:this._triggerState.auto,retrigger:!0}))}_onCursorChange(e){if(!this._editor.hasModel())return;const t=this._currentSelection;if(this._currentSelection=this._editor.getSelection(),!e.selection.isEmpty()||e.reason!==0&&e.reason!==3||e.source!=="keyboard"&&e.source!=="deleteLeft"){this.cancel();return}this._triggerState===void 0&&e.reason===0?(t.containsRange(this._currentSelection)||t.getEndPosition().isBeforeOrEqual(this._currentSelection.getPosition()))&&this._doTriggerQuickSuggest():this._triggerState!==void 0&&e.reason===3&&this._refilterCompletionItems()}_onCompositionEnd(){this._triggerState===void 0?this._doTriggerQuickSuggest():this._refilterCompletionItems()}_doTriggerQuickSuggest(){m1.isAllOff(this._editor.getOption(90))||this._editor.getOption(119).snippetsPreventQuickSuggestions&&Mn.get(this._editor)?.isInSnippet()||(this.cancel(),this._triggerQuickSuggest.cancelAndSet(()=>{if(this._triggerState!==void 0||!cd.shouldAutoTrigger(this._editor)||!this._editor.hasModel()||!this._editor.hasWidgetFocus())return;const e=this._editor.getModel(),t=this._editor.getPosition(),i=this._editor.getOption(90);if(!m1.isAllOff(i)){if(!m1.isAllOn(i)){e.tokenization.tokenizeIfCheap(t.lineNumber);const n=e.tokenization.getLineTokens(t.lineNumber),s=n.getStandardTokenType(n.findTokenIndexAtOffset(Math.max(t.column-1-1,0)));if(m1.valueFor(i,s)!=="on")return}cue(this._editor,this._contextKeyService,this._configurationService)&&this._languageFeaturesService.completionProvider.has(e)&&this.trigger({auto:!0})}},this._editor.getOption(91)))}_refilterCompletionItems(){ai(this._editor.hasModel()),ai(this._triggerState!==void 0);const e=this._editor.getModel(),t=this._editor.getPosition(),i=new cd(e,t,{...this._triggerState,refilter:!0});this._onNewContext(i)}trigger(e){if(!this._editor.hasModel())return;const t=this._editor.getModel(),i=new cd(t,this._editor.getPosition(),e);this.cancel(e.retrigger),this._triggerState=e,this._onDidTrigger.fire({auto:e.auto,shy:e.shy??!1,position:this._editor.getPosition()}),this._context=i;let n={triggerKind:e.triggerKind??0};e.triggerCharacter&&(n={triggerKind:1,triggerCharacter:e.triggerCharacter}),this._requestToken=new In;const s=this._editor.getOption(113);let r=1;switch(s){case"top":r=0;break;case"bottom":r=2;break}const{itemKind:a,showDeprecated:l}=cN.createSuggestFilter(this._editor),c=new hw(r,e.completionOptions?.kindFilter??a,e.completionOptions?.providerFilter,e.completionOptions?.providerItemsToReuse,l),d=lN.create(this._editorWorkerService,this._editor),h=ZB(this._languageFeaturesService.completionProvider,t,this._editor.getPosition(),c,n,this._requestToken.token);Promise.all([h,d]).then(async([u,f])=>{if(this._requestToken?.dispose(),!this._editor.hasModel())return;let g=e?.clipboardText;if(!g&&u.needsClipboard&&(g=await this._clipboardService.readText()),this._triggerState===void 0)return;const p=this._editor.getModel(),_=new cd(p,this._editor.getPosition(),e),b={...r_.default,firstMatchCanBeWeak:!this._editor.getOption(119).matchOnWordStartOnly};if(this._completionModel=new Md(u.items,this._context.column,{leadingLineContent:_.leadingLineContent,characterCountDelta:_.column-this._context.column},f,this._editor.getOption(119),this._editor.getOption(113),b,g),this._completionDisposables.add(u.disposable),this._onNewContext(_),this._reportDurationsTelemetry(u.durations),!this._envService.isBuilt||this._envService.isExtensionDevelopment)for(const C of u.items)C.isInvalid&&this._logService.warn(`[suggest] did IGNORE invalid completion item from ${C.provider._debugDisplayName}`,C.completion)}).catch(Ze)}_reportDurationsTelemetry(e){this._telemetryGate++%230===0&&setTimeout(()=>{this._telemetryService.publicLog2("suggest.durations.json",{data:JSON.stringify(e)}),this._logService.debug("suggest.durations.json",e)})}static createSuggestFilter(e){const t=new Set;e.getOption(113)==="none"&&t.add(27);const n=e.getOption(119);return n.showMethods||t.add(0),n.showFunctions||t.add(1),n.showConstructors||t.add(2),n.showFields||t.add(3),n.showVariables||t.add(4),n.showClasses||t.add(5),n.showStructs||t.add(6),n.showInterfaces||t.add(7),n.showModules||t.add(8),n.showProperties||t.add(9),n.showEvents||t.add(10),n.showOperators||t.add(11),n.showUnits||t.add(12),n.showValues||t.add(13),n.showConstants||t.add(14),n.showEnums||t.add(15),n.showEnumMembers||t.add(16),n.showKeywords||t.add(17),n.showWords||t.add(18),n.showColors||t.add(19),n.showFiles||t.add(20),n.showReferences||t.add(21),n.showColors||t.add(22),n.showFolders||t.add(23),n.showTypeParameters||t.add(24),n.showSnippets||t.add(27),n.showUsers||t.add(25),n.showIssues||t.add(26),{itemKind:t,showDeprecated:n.showDeprecated}}_onNewContext(e){if(this._context){if(e.lineNumber!==this._context.lineNumber){this.cancel();return}if(pi(e.leadingLineContent)!==pi(this._context.leadingLineContent)){this.cancel();return}if(e.columnthis._context.leadingWord.startColumn){if(cd.shouldAutoTrigger(this._editor)&&this._context){const i=this._completionModel.getItemsByProvider();this.trigger({auto:this._context.triggerOptions.auto,retrigger:!0,clipboardText:this._completionModel.clipboardText,completionOptions:{providerItemsToReuse:i}})}return}if(e.column>this._context.column&&this._completionModel.getIncompleteProvider().size>0&&e.leadingWord.word.length!==0){const t=new Map,i=new Set;for(const[n,s]of this._completionModel.getItemsByProvider())s.length>0&&s[0].container.incomplete?i.add(n):t.set(n,s);this.trigger({auto:this._context.triggerOptions.auto,triggerKind:2,retrigger:!0,clipboardText:this._completionModel.clipboardText,completionOptions:{providerFilter:i,providerItemsToReuse:t}})}else{const t=this._completionModel.lineContext;let i=!1;if(this._completionModel.lineContext={leadingLineContent:e.leadingLineContent,characterCountDelta:e.column-this._context.column},this._completionModel.items.length===0){const n=cd.shouldAutoTrigger(this._editor);if(!this._context){this.cancel();return}if(n&&this._context.leadingWord.endColumn0,i&&e.leadingWord.word.length===0){this.cancel();return}}this._onDidSuggest.fire({completionModel:this._completionModel,triggerOptions:e.triggerOptions,isFrozen:i})}}}}};dN=cN=lue([Ul(1,Zc),Ul(2,wy),Ul(3,$s),Ul(4,gs),Ul(5,De),Ul(6,lt),Ul(7,Se),Ul(8,vT)],dN);const p0=class p0{constructor(e,t){this._disposables=new X,this._lastOvertyped=[],this._locked=!1,this._disposables.add(e.onWillType(()=>{if(this._locked||!e.hasModel())return;const i=e.getSelections(),n=i.length;let s=!1;for(let a=0;ap0._maxSelectionLength)return;this._lastOvertyped[a]={value:r.getValueInRange(l),multiline:l.startLineNumber!==l.endLineNumber}}})),this._disposables.add(t.onDidTrigger(i=>{this._locked=!0})),this._disposables.add(t.onDidCancel(i=>{this._locked=!1}))}getLastOvertypedInfo(e){if(e>=0&&e=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},wL=function(o,e){return function(t,i){e(t,i,o)}};let uN=class{constructor(e,t,i,n,s){this._menuId=t,this._menuService=n,this._contextKeyService=s,this._menuDisposables=new X,this.element=Z(e,ce(".suggest-status-bar"));const r=(a=>a instanceof so?i.createInstance(JT,a,{useComma:!0}):void 0);this._leftActions=new oo(this.element,{actionViewItemProvider:r}),this._rightActions=new oo(this.element,{actionViewItemProvider:r}),this._leftActions.domNode.classList.add("left"),this._rightActions.domNode.classList.add("right")}dispose(){this._menuDisposables.dispose(),this._leftActions.dispose(),this._rightActions.dispose(),this.element.remove()}show(){const e=this._menuService.createMenu(this._menuId,this._contextKeyService),t=()=>{const i=[],n=[];for(const[s,r]of e.getActions())s==="left"?i.push(...r):n.push(...r);this._leftActions.clear(),this._leftActions.push(i),this._rightActions.clear(),this._rightActions.push(n)};this._menuDisposables.add(e.onDidChange(()=>t())),this._menuDisposables.add(e)}hide(){this._menuDisposables.clear()}};uN=hue([wL(2,ke),wL(3,yr),wL(4,De)],uN);var uue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fue=function(o,e){return function(t,i){e(t,i,o)}};function xM(o){return!!o&&!!(o.completion.documentation||o.completion.detail&&o.completion.detail!==o.completion.label)}let fN=class{constructor(e,t){this._editor=e,this._onDidClose=new A,this.onDidClose=this._onDidClose.event,this._onDidChangeContents=new A,this.onDidChangeContents=this._onDidChangeContents.event,this._disposables=new X,this._renderDisposeable=new X,this._borderWidth=1,this._size=new rt(330,0),this.domNode=ce(".suggest-details"),this.domNode.classList.add("no-docs"),this._markdownRenderer=t.createInstance(Wh,{editor:e}),this._body=ce(".body"),this._scrollbar=new J0(this._body,{alwaysConsumeMouseWheel:!0}),Z(this.domNode,this._scrollbar.getDomNode()),this._disposables.add(this._scrollbar),this._header=Z(this._body,ce(".header")),this._close=Z(this._header,ce("span"+Ee.asCSSSelector(ie.close))),this._close.title=m("details.close","Close"),this._type=Z(this._header,ce("p.type")),this._docs=Z(this._body,ce("p.docs")),this._configureFont(),this._disposables.add(this._editor.onDidChangeConfiguration(i=>{i.hasChanged(50)&&this._configureFont()}))}dispose(){this._disposables.dispose(),this._renderDisposeable.dispose()}_configureFont(){const e=this._editor.getOptions(),t=e.get(50),i=t.getMassagedFontFamily(),n=e.get(120)||t.fontSize,s=e.get(121)||t.lineHeight,r=t.fontWeight,a=`${n}px`,l=`${s}px`;this.domNode.style.fontSize=a,this.domNode.style.lineHeight=`${s/n}`,this.domNode.style.fontWeight=r,this.domNode.style.fontFeatureSettings=t.fontFeatureSettings,this._type.style.fontFamily=i,this._close.style.height=l,this._close.style.width=l}getLayoutInfo(){const e=this._editor.getOption(121)||this._editor.getOption(50).lineHeight,t=this._borderWidth,i=t*2;return{lineHeight:e,borderWidth:t,borderHeight:i,verticalPadding:22,horizontalPadding:14}}renderLoading(){this._type.textContent=m("loading","Loading..."),this._docs.textContent="",this.domNode.classList.remove("no-docs","no-type"),this.layout(this.size.width,this.getLayoutInfo().lineHeight*2),this._onDidChangeContents.fire(this)}renderItem(e,t){this._renderDisposeable.clear();let{detail:i,documentation:n}=e.completion;if(t){let s="";s+=`score: ${e.score[0]} +`,s+=`prefix: ${e.word??"(no prefix)"} +`,s+=`word: ${e.completion.filterText?e.completion.filterText+" (filterText)":e.textLabel} +`,s+=`distance: ${e.distance} (localityBonus-setting) +`,s+=`index: ${e.idx}, based on ${e.completion.sortText&&`sortText: "${e.completion.sortText}"`||"label"} +`,s+=`commit_chars: ${e.completion.commitCharacters?.join("")} +`,n=new Js().appendCodeblock("empty",s),i=`Provider: ${e.provider._debugDisplayName}`}if(!t&&!xM(e)){this.clearContents();return}if(this.domNode.classList.remove("no-docs","no-type"),i){const s=i.length>1e5?`${i.substr(0,1e5)}…`:i;this._type.textContent=s,this._type.title=s,ns(this._type),this._type.classList.toggle("auto-wrap",!/\r?\n^\s+/gmi.test(s))}else xn(this._type),this._type.title="",Cn(this._type),this.domNode.classList.add("no-type");if(xn(this._docs),typeof n=="string")this._docs.classList.remove("markdown-docs"),this._docs.textContent=n;else if(n){this._docs.classList.add("markdown-docs"),xn(this._docs);const s=this._markdownRenderer.render(n);this._docs.appendChild(s.element),this._renderDisposeable.add(s),this._renderDisposeable.add(this._markdownRenderer.onDidRenderAsync(()=>{this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}))}this.domNode.style.userSelect="text",this.domNode.tabIndex=-1,this._close.onmousedown=s=>{s.preventDefault(),s.stopPropagation()},this._close.onclick=s=>{s.preventDefault(),s.stopPropagation(),this._onDidClose.fire()},this._body.scrollTop=0,this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}clearContents(){this.domNode.classList.add("no-docs"),this._type.textContent="",this._docs.textContent=""}get isEmpty(){return this.domNode.classList.contains("no-docs")}get size(){return this._size}layout(e,t){const i=new rt(e,t);rt.equals(i,this._size)||(this._size=i,bV(this.domNode,e,t)),this._scrollbar.scanDomNode()}scrollDown(e=8){this._body.scrollTop+=e}scrollUp(e=8){this._body.scrollTop-=e}scrollTop(){this._body.scrollTop=0}scrollBottom(){this._body.scrollTop=this._body.scrollHeight}pageDown(){this.scrollDown(80)}pageUp(){this.scrollUp(80)}set borderWidth(e){this._borderWidth=e}get borderWidth(){return this._borderWidth}};fN=uue([fue(1,ke)],fN);class gue{constructor(e,t){this.widget=e,this._editor=t,this.allowEditorOverflow=!0,this._disposables=new X,this._added=!1,this._preferAlignAtTop=!0,this._resizable=new mM,this._resizable.domNode.classList.add("suggest-details-container"),this._resizable.domNode.appendChild(e.domNode),this._resizable.enableSashes(!1,!0,!0,!1);let i,n,s=0,r=0;this._disposables.add(this._resizable.onDidWillResize(()=>{i=this._topLeft,n=this._resizable.size})),this._disposables.add(this._resizable.onDidResize(a=>{if(i&&n){this.widget.layout(a.dimension.width,a.dimension.height);let l=!1;a.west&&(r=n.width-a.dimension.width,l=!0),a.north&&(s=n.height-a.dimension.height,l=!0),l&&this._applyTopLeft({top:i.top+s,left:i.left+r})}a.done&&(i=void 0,n=void 0,s=0,r=0,this._userSize=a.dimension)})),this._disposables.add(this.widget.onDidChangeContents(()=>{this._anchorBox&&this._placeAtAnchor(this._anchorBox,this._userSize??this.widget.size,this._preferAlignAtTop)}))}dispose(){this._resizable.dispose(),this._disposables.dispose(),this.hide()}getId(){return"suggest.details"}getDomNode(){return this._resizable.domNode}getPosition(){return this._topLeft?{preference:this._topLeft}:null}show(){this._added||(this._editor.addOverlayWidget(this),this._added=!0)}hide(e=!1){this._resizable.clearSashHoverState(),this._added&&(this._editor.removeOverlayWidget(this),this._added=!1,this._anchorBox=void 0,this._topLeft=void 0),e&&(this._userSize=void 0,this.widget.clearContents())}placeAtAnchor(e,t){const i=e.getBoundingClientRect();this._anchorBox=i,this._preferAlignAtTop=t,this._placeAtAnchor(this._anchorBox,this._userSize??this.widget.size,t)}_placeAtAnchor(e,t,i){const n=Ah(this.getDomNode().ownerDocument.body),s=this.widget.getLayoutInfo(),r=new rt(220,2*s.lineHeight),a=e.top,l=(function(){const y=n.width-(e.left+e.width+s.borderWidth+s.horizontalPadding),x=-s.borderWidth+e.left+e.width,L=new rt(y,n.height-e.top-s.borderHeight-s.verticalPadding),E=L.with(void 0,e.top+e.height-s.borderHeight-s.verticalPadding);return{top:a,left:x,fit:y-t.width,maxSizeTop:L,maxSizeBottom:E,minSize:r.with(Math.min(y,r.width))}})(),c=(function(){const y=e.left-s.borderWidth-s.horizontalPadding,x=Math.max(s.horizontalPadding,e.left-t.width-s.borderWidth),L=new rt(y,n.height-e.top-s.borderHeight-s.verticalPadding),E=L.with(void 0,e.top+e.height-s.borderHeight-s.verticalPadding);return{top:a,left:x,fit:y-t.width,maxSizeTop:L,maxSizeBottom:E,minSize:r.with(Math.min(y,r.width))}})(),d=(function(){const y=e.left,x=-s.borderWidth+e.top+e.height,L=new rt(e.width-s.borderHeight,n.height-e.top-e.height-s.verticalPadding);return{top:x,left:y,fit:L.height-t.height,maxSizeBottom:L,maxSizeTop:L,minSize:r.with(L.width)}})(),h=[l,c,d],u=h.find(y=>y.fit>=0)??h.sort((y,x)=>x.fit-y.fit)[0],f=e.top+e.height-s.borderHeight;let g,p=t.height;const _=Math.max(u.maxSizeTop.height,u.maxSizeBottom.height);p>_&&(p=_);let b;i?p<=u.maxSizeTop.height?(g=!0,b=u.maxSizeTop):(g=!1,b=u.maxSizeBottom):p<=u.maxSizeBottom.height?(g=!1,b=u.maxSizeBottom):(g=!0,b=u.maxSizeTop);let{top:C,left:w}=u;!g&&p>e.height&&(C=f-p);const v=this._editor.getDomNode();if(v){const y=v.getBoundingClientRect();C-=y.top,w-=y.left}this._applyTopLeft({left:w,top:C}),this._resizable.enableSashes(!g,u===l,g,u!==l),this._resizable.minSize=u.minSize,this._resizable.maxSize=b,this._resizable.layout(p,Math.min(b.width,t.width)),this.widget.layout(this._resizable.size.width,this._resizable.size.height)}_applyTopLeft(e){this._topLeft=e,this._editor.layoutOverlayWidget(this)}}var ta;(function(o){o[o.FILE=0]="FILE",o[o.FOLDER=1]="FOLDER",o[o.ROOT_FOLDER=2]="ROOT_FOLDER"})(ta||(ta={}));const mue=/(?:\/|^)(?:([^\/]+)\/)?([^\/]+)$/;function _1(o,e,t,i,n){if(Ee.isThemeIcon(n))return[`codicon-${n.id}`,"predefined-file-icon"];if(ve.isUri(n))return[];const s=i===ta.ROOT_FOLDER?["rootfolder-icon"]:i===ta.FOLDER?["folder-icon"]:["file-icon"];if(t){let r;if(t.scheme===Te.data)r=Oc.parseMetaData(t).get(Oc.META_DATA_LABEL);else{const a=t.path.match(mue);a?(r=b1(a[2].toLowerCase()),a[1]&&s.push(`${b1(a[1].toLowerCase())}-name-dir-icon`)):r=b1(t.authority.toLowerCase())}if(i===ta.ROOT_FOLDER)s.push(`${r}-root-name-folder-icon`);else if(i===ta.FOLDER)s.push(`${r}-name-folder-icon`);else{if(r){if(s.push(`${r}-name-file-icon`),s.push("name-file-icon"),r.length<=255){const l=r.split(".");for(let c=1;c=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},yL=function(o,e){return function(t,i){e(t,i,o)}};function QB(o){return`suggest-aria-id:${o}`}const bue=Wi("suggest-more-info",ie.chevronRight,m("suggestMoreInfoIcon","Icon for more information in the suggest widget."));var lr;const Cue=new(lr=class{extract(e,t){if(e.textLabel.match(lr._regexStrict))return t[0]=e.textLabel,!0;if(e.completion.detail&&e.completion.detail.match(lr._regexStrict))return t[0]=e.completion.detail,!0;if(e.completion.documentation){const i=typeof e.completion.documentation=="string"?e.completion.documentation:e.completion.documentation.value,n=lr._regexRelaxed.exec(i);if(n&&(n.index===0||n.index+n[0].length===i.length))return t[0]=n[0],!0}return!1}},lr._regexRelaxed=/(#([\da-fA-F]{3}){1,2}|(rgb|hsl)a\(\s*(\d{1,3}%?\s*,\s*){3}(1|0?\.\d+)\)|(rgb|hsl)\(\s*\d{1,3}%?(\s*,\s*\d{1,3}%?){2}\s*\))/,lr._regexStrict=new RegExp(`^${lr._regexRelaxed.source}$`,"i"),lr);let gN=class{constructor(e,t,i,n){this._editor=e,this._modelService=t,this._languageService=i,this._themeService=n,this._onDidToggleDetails=new A,this.onDidToggleDetails=this._onDidToggleDetails.event,this.templateId="suggestion"}dispose(){this._onDidToggleDetails.dispose()}renderTemplate(e){const t=new X,i=e;i.classList.add("show-file-icons");const n=Z(e,ce(".icon")),s=Z(n,ce("span.colorspan")),r=Z(e,ce(".contents")),a=Z(r,ce(".main")),l=Z(a,ce(".icon-label.codicon")),c=Z(a,ce("span.left")),d=Z(a,ce("span.right")),h=new gv(c,{supportHighlights:!0,supportIcons:!0});t.add(h);const u=Z(c,ce("span.signature-label")),f=Z(c,ce("span.qualifier-label")),g=Z(d,ce("span.details-label")),p=Z(d,ce("span.readMore"+Ee.asCSSSelector(bue)));return p.title=m("readMore","Read More"),{root:i,left:c,right:d,icon:n,colorspan:s,iconLabel:h,iconContainer:l,parametersLabel:u,qualifierLabel:f,detailsLabel:g,readMore:p,disposables:t,configureFont:()=>{const b=this._editor.getOptions(),C=b.get(50),w=C.getMassagedFontFamily(),v=C.fontFeatureSettings,y=b.get(120)||C.fontSize,x=b.get(121)||C.lineHeight,L=C.fontWeight,E=C.letterSpacing,N=`${y}px`,H=`${x}px`,F=`${E}px`;i.style.fontSize=N,i.style.fontWeight=L,i.style.letterSpacing=F,a.style.fontFamily=w,a.style.fontFeatureSettings=v,a.style.lineHeight=H,n.style.height=H,n.style.width=H,p.style.height=H,p.style.width=H}}}renderElement(e,t,i){i.configureFont();const{completion:n}=e;i.root.id=QB(t),i.colorspan.style.backgroundColor="";const s={labelEscapeNewLines:!0,matches:iy(e.score)},r=[];if(n.kind===19&&Cue.extract(e,r))i.icon.className="icon customcolor",i.iconContainer.className="icon hide",i.colorspan.style.backgroundColor=r[0];else if(n.kind===20&&this._themeService.getFileIconTheme().hasFileIcons){i.icon.className="icon hide",i.iconContainer.className="icon hide";const a=_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:e.textLabel}),ta.FILE),l=_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:n.detail}),ta.FILE);s.extraClasses=a.length>l.length?a:l}else n.kind===23&&this._themeService.getFileIconTheme().hasFolderIcons?(i.icon.className="icon hide",i.iconContainer.className="icon hide",s.extraClasses=[_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:e.textLabel}),ta.FOLDER),_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:n.detail}),ta.FOLDER)].flat()):(i.icon.className="icon hide",i.iconContainer.className="",i.iconContainer.classList.add("suggest-icon",...Ee.asClassNameArray(Up.toIcon(n.kind))));n.tags&&n.tags.indexOf(1)>=0&&(s.extraClasses=(s.extraClasses||[]).concat(["deprecated"]),s.matches=[]),i.iconLabel.setLabel(e.textLabel,void 0,s),typeof n.label=="string"?(i.parametersLabel.textContent="",i.detailsLabel.textContent=SL(n.detail||""),i.root.classList.add("string-label")):(i.parametersLabel.textContent=SL(n.label.detail||""),i.detailsLabel.textContent=SL(n.label.description||""),i.root.classList.remove("string-label")),this._editor.getOption(119).showInlineDetails?ns(i.detailsLabel):Cn(i.detailsLabel),xM(e)?(i.right.classList.add("can-expand-details"),ns(i.readMore),i.readMore.onmousedown=a=>{a.stopPropagation(),a.preventDefault()},i.readMore.onclick=a=>{a.stopPropagation(),a.preventDefault(),this._onDidToggleDetails.fire()}):(i.right.classList.remove("can-expand-details"),Cn(i.readMore),i.readMore.onmousedown=null,i.readMore.onclick=null)}disposeTemplate(e){e.disposables.dispose()}};gN=_ue([yL(1,Fi),yL(2,qt),yL(3,en)],gN);function SL(o){return o.replace(/\r\n|\r|\n/g,"")}var vue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},C1=function(o,e){return function(t,i){e(t,i,o)}},qu;D("editorSuggestWidget.background",no,m("editorSuggestWidgetBackground","Background color of the suggest widget."));D("editorSuggestWidget.border",LT,m("editorSuggestWidgetBorder","Border color of the suggest widget."));const wue=D("editorSuggestWidget.foreground",Sa,m("editorSuggestWidgetForeground","Foreground color of the suggest widget."));D("editorSuggestWidget.selectedForeground",AC,m("editorSuggestWidgetSelectedForeground","Foreground color of the selected entry in the suggest widget."));D("editorSuggestWidget.selectedIconForeground",TT,m("editorSuggestWidgetSelectedIconForeground","Icon foreground color of the selected entry in the suggest widget."));const yue=D("editorSuggestWidget.selectedBackground",PC,m("editorSuggestWidgetSelectedBackground","Background color of the selected entry in the suggest widget."));D("editorSuggestWidget.highlightForeground",Nm,m("editorSuggestWidgetHighlightForeground","Color of the match highlights in the suggest widget."));D("editorSuggestWidget.focusHighlightForeground",Wj,m("editorSuggestWidgetFocusHighlightForeground","Color of the match highlights in the suggest widget when an item is focused."));D("editorSuggestWidgetStatus.foreground",Ae(wue,.5),m("editorSuggestWidgetStatusForeground","Foreground color of the suggest widget status."));class Sue{constructor(e,t){this._service=e,this._key=`suggestWidget.size/${t.getEditorType()}/${t instanceof Gh}`}restore(){const e=this._service.get(this._key,0)??"";try{const t=JSON.parse(e);if(rt.is(t))return rt.lift(t)}catch{}}store(e){this._service.store(this._key,JSON.stringify(e),0,1)}reset(){this._service.remove(this._key,0)}}var Nc;let mN=(Nc=class{constructor(e,t,i,n,s){this.editor=e,this._storageService=t,this._state=0,this._isAuto=!1,this._pendingLayout=new Dn,this._pendingShowDetails=new Dn,this._ignoreFocusEvents=!1,this._forceRenderingAbove=!1,this._explainMode=!1,this._showTimeout=new wr,this._disposables=new X,this._onDidSelect=new Nh,this._onDidFocus=new Nh,this._onDidHide=new A,this._onDidShow=new A,this.onDidSelect=this._onDidSelect.event,this.onDidFocus=this._onDidFocus.event,this.onDidHide=this._onDidHide.event,this.onDidShow=this._onDidShow.event,this._onDetailsKeydown=new A,this.onDetailsKeyDown=this._onDetailsKeydown.event,this.element=new mM,this.element.domNode.classList.add("editor-widget","suggest-widget"),this._contentWidget=new Lue(this,e),this._persistedSize=new Sue(t,e);class r{constructor(f,g,p=!1,_=!1){this.persistedSize=f,this.currentSize=g,this.persistHeight=p,this.persistWidth=_}}let a;this._disposables.add(this.element.onDidWillResize(()=>{this._contentWidget.lockPreference(),a=new r(this._persistedSize.restore(),this.element.size)})),this._disposables.add(this.element.onDidResize(u=>{if(this._resize(u.dimension.width,u.dimension.height),a&&(a.persistHeight=a.persistHeight||!!u.north||!!u.south,a.persistWidth=a.persistWidth||!!u.east||!!u.west),!!u.done){if(a){const{itemHeight:f,defaultSize:g}=this.getLayoutInfo(),p=Math.round(f/2);let{width:_,height:b}=this.element.size;(!a.persistHeight||Math.abs(a.currentSize.height-b)<=p)&&(b=a.persistedSize?.height??g.height),(!a.persistWidth||Math.abs(a.currentSize.width-_)<=p)&&(_=a.persistedSize?.width??g.width),this._persistedSize.store(new rt(_,b))}this._contentWidget.unlockPreference(),a=void 0}})),this._messageElement=Z(this.element.domNode,ce(".message")),this._listElement=Z(this.element.domNode,ce(".tree"));const l=this._disposables.add(s.createInstance(fN,this.editor));l.onDidClose(this.toggleDetails,this,this._disposables),this._details=new gue(l,this.editor);const c=()=>this.element.domNode.classList.toggle("no-icons",!this.editor.getOption(119).showIcons);c();const d=s.createInstance(gN,this.editor);this._disposables.add(d),this._disposables.add(d.onDidToggleDetails(()=>this.toggleDetails())),this._list=new go("SuggestWidget",this._listElement,{getHeight:u=>this.getLayoutInfo().itemHeight,getTemplateId:u=>"suggestion"},[d],{alwaysConsumeMouseWheel:!0,useShadows:!1,mouseSupport:!1,multipleSelectionSupport:!1,accessibilityProvider:{getRole:()=>"option",getWidgetAriaLabel:()=>m("suggest","Suggest"),getWidgetRole:()=>"listbox",getAriaLabel:u=>{let f=u.textLabel;if(typeof u.completion.label!="string"){const{detail:b,description:C}=u.completion.label;b&&C?f=m("label.full","{0} {1}, {2}",f,b,C):b?f=m("label.detail","{0} {1}",f,b):C&&(f=m("label.desc","{0}, {1}",f,C))}if(!u.isResolved||!this._isDetailsVisible())return f;const{documentation:g,detail:p}=u.completion,_=$p("{0}{1}",p||"",g?typeof g=="string"?g:g.value:"");return m("ariaCurrenttSuggestionReadDetails","{0}, docs: {1}",f,_)}}}),this._list.style($g({listInactiveFocusBackground:yue,listInactiveFocusOutline:Ut})),this._status=s.createInstance(uN,this.element.domNode,bc);const h=()=>this.element.domNode.classList.toggle("with-status-bar",this.editor.getOption(119).showStatusBar);h(),this._disposables.add(n.onDidColorThemeChange(u=>this._onThemeChange(u))),this._onThemeChange(n.getColorTheme()),this._disposables.add(this._list.onMouseDown(u=>this._onListMouseDownOrTap(u))),this._disposables.add(this._list.onTap(u=>this._onListMouseDownOrTap(u))),this._disposables.add(this._list.onDidChangeSelection(u=>this._onListSelection(u))),this._disposables.add(this._list.onDidChangeFocus(u=>this._onListFocus(u))),this._disposables.add(this.editor.onDidChangeCursorSelection(()=>this._onCursorSelectionChanged())),this._disposables.add(this.editor.onDidChangeConfiguration(u=>{u.hasChanged(119)&&(h(),c()),this._completionModel&&(u.hasChanged(50)||u.hasChanged(120)||u.hasChanged(121))&&this._list.splice(0,this._list.length,this._completionModel.items)})),this._ctxSuggestWidgetVisible=Ne.Visible.bindTo(i),this._ctxSuggestWidgetDetailsVisible=Ne.DetailsVisible.bindTo(i),this._ctxSuggestWidgetMultipleSuggestions=Ne.MultipleSuggestions.bindTo(i),this._ctxSuggestWidgetHasFocusedSuggestion=Ne.HasFocusedSuggestion.bindTo(i),this._disposables.add(jt(this._details.widget.domNode,"keydown",u=>{this._onDetailsKeydown.fire(u)})),this._disposables.add(this.editor.onMouseDown(u=>this._onEditorMouseDown(u)))}dispose(){this._details.widget.dispose(),this._details.dispose(),this._list.dispose(),this._status.dispose(),this._disposables.dispose(),this._loadingTimeout?.dispose(),this._pendingLayout.dispose(),this._pendingShowDetails.dispose(),this._showTimeout.dispose(),this._contentWidget.dispose(),this.element.dispose()}_onEditorMouseDown(e){this._details.widget.domNode.contains(e.target.element)?this._details.widget.domNode.focus():this.element.domNode.contains(e.target.element)&&this.editor.focus()}_onCursorSelectionChanged(){this._state!==0&&this._contentWidget.layout()}_onListMouseDownOrTap(e){typeof e.element>"u"||typeof e.index>"u"||(e.browserEvent.preventDefault(),e.browserEvent.stopPropagation(),this._select(e.element,e.index))}_onListSelection(e){e.elements.length&&this._select(e.elements[0],e.indexes[0])}_select(e,t){const i=this._completionModel;i&&(this._onDidSelect.fire({item:e,index:t,model:i}),this.editor.focus())}_onThemeChange(e){this._details.widget.borderWidth=mc(e.type)?2:1}_onListFocus(e){if(this._ignoreFocusEvents)return;if(!e.elements.length){this._currentSuggestionDetails&&(this._currentSuggestionDetails.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=void 0),this.editor.setAriaOptions({activeDescendant:void 0}),this._ctxSuggestWidgetHasFocusedSuggestion.set(!1);return}if(!this._completionModel)return;this._ctxSuggestWidgetHasFocusedSuggestion.set(!0);const t=e.elements[0],i=e.indexes[0];t!==this._focusedItem&&(this._currentSuggestionDetails?.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=t,this._list.reveal(i),this._currentSuggestionDetails=wa(async n=>{const s=rg(()=>{this._isDetailsVisible()&&this.showDetails(!0)},250),r=n.onCancellationRequested(()=>s.dispose());try{return await t.resolve(n)}finally{s.dispose(),r.dispose()}}),this._currentSuggestionDetails.then(()=>{i>=this._list.length||t!==this._list.element(i)||(this._ignoreFocusEvents=!0,this._list.splice(i,1,[t]),this._list.setFocus([i]),this._ignoreFocusEvents=!1,this._isDetailsVisible()?this.showDetails(!1):this.element.domNode.classList.remove("docs-side"),this.editor.setAriaOptions({activeDescendant:QB(i)}))}).catch(Ze)),this._onDidFocus.fire({item:t,index:i,model:this._completionModel})}_setState(e){if(this._state!==e)switch(this._state=e,this.element.domNode.classList.toggle("frozen",e===4),this.element.domNode.classList.remove("message"),e){case 0:Cn(this._messageElement,this._listElement,this._status.element),this._details.hide(!0),this._status.hide(),this._contentWidget.hide(),this._ctxSuggestWidgetVisible.reset(),this._ctxSuggestWidgetMultipleSuggestions.reset(),this._ctxSuggestWidgetHasFocusedSuggestion.reset(),this._showTimeout.cancel(),this.element.domNode.classList.remove("visible"),this._list.splice(0,this._list.length),this._focusedItem=void 0,this._cappedHeight=void 0,this._explainMode=!1;break;case 1:this.element.domNode.classList.add("message"),this._messageElement.textContent=qu.LOADING_MESSAGE,Cn(this._listElement,this._status.element),ns(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0,Hh(qu.LOADING_MESSAGE);break;case 2:this.element.domNode.classList.add("message"),this._messageElement.textContent=qu.NO_SUGGESTIONS_MESSAGE,Cn(this._listElement,this._status.element),ns(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0,Hh(qu.NO_SUGGESTIONS_MESSAGE);break;case 3:Cn(this._messageElement),ns(this._listElement,this._status.element),this._show();break;case 4:Cn(this._messageElement),ns(this._listElement,this._status.element),this._show();break;case 5:Cn(this._messageElement),ns(this._listElement,this._status.element),this._details.show(),this._show();break}}_show(){this._status.show(),this._contentWidget.show(),this._layout(this._persistedSize.restore()),this._ctxSuggestWidgetVisible.set(!0),this._showTimeout.cancelAndSet(()=>{this.element.domNode.classList.add("visible"),this._onDidShow.fire(this)},100)}showTriggered(e,t){this._state===0&&(this._contentWidget.setPosition(this.editor.getPosition()),this._isAuto=!!e,this._isAuto||(this._loadingTimeout=rg(()=>this._setState(1),t)))}showSuggestions(e,t,i,n,s){if(this._contentWidget.setPosition(this.editor.getPosition()),this._loadingTimeout?.dispose(),this._currentSuggestionDetails?.cancel(),this._currentSuggestionDetails=void 0,this._completionModel!==e&&(this._completionModel=e),i&&this._state!==2&&this._state!==0){this._setState(4);return}const r=this._completionModel.items.length,a=r===0;if(this._ctxSuggestWidgetMultipleSuggestions.set(r>1),a){this._setState(n?0:2),this._completionModel=void 0;return}this._focusedItem=void 0,this._onDidFocus.pause(),this._onDidSelect.pause();try{this._list.splice(0,this._list.length,this._completionModel.items),this._setState(i?4:3),this._list.reveal(t,0),this._list.setFocus(s?[]:[t])}finally{this._onDidFocus.resume(),this._onDidSelect.resume()}this._pendingLayout.value=pC(fe(this.element.domNode),()=>{this._pendingLayout.clear(),this._layout(this.element.size),this._details.widget.domNode.classList.remove("focused")})}focusSelected(){this._list.length>0&&this._list.setFocus([0])}selectNextPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageDown(),!0;case 1:return!this._isAuto;default:return this._list.focusNextPage(),!0}}selectNext(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusNext(1,!0),!0}}selectLast(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollBottom(),!0;case 1:return!this._isAuto;default:return this._list.focusLast(),!0}}selectPreviousPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageUp(),!0;case 1:return!this._isAuto;default:return this._list.focusPreviousPage(),!0}}selectPrevious(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusPrevious(1,!0),!1}}selectFirst(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollTop(),!0;case 1:return!this._isAuto;default:return this._list.focusFirst(),!0}}getFocusedItem(){if(this._state!==0&&this._state!==2&&this._state!==1&&this._completionModel&&this._list.getFocus().length>0)return{item:this._list.getFocusedElements()[0],index:this._list.getFocus()[0],model:this._completionModel}}toggleDetailsFocus(){this._state===5?(this._setState(3),this._details.widget.domNode.classList.remove("focused")):this._state===3&&this._isDetailsVisible()&&(this._setState(5),this._details.widget.domNode.classList.add("focused"))}toggleDetails(){this._isDetailsVisible()?(this._pendingShowDetails.clear(),this._ctxSuggestWidgetDetailsVisible.set(!1),this._setDetailsVisible(!1),this._details.hide(),this.element.domNode.classList.remove("shows-details")):(xM(this._list.getFocusedElements()[0])||this._explainMode)&&(this._state===3||this._state===5||this._state===4)&&(this._ctxSuggestWidgetDetailsVisible.set(!0),this._setDetailsVisible(!0),this.showDetails(!1))}showDetails(e){this._pendingShowDetails.value=pC(fe(this.element.domNode),()=>{this._pendingShowDetails.clear(),this._details.show(),e?this._details.widget.renderLoading():this._details.widget.renderItem(this._list.getFocusedElements()[0],this._explainMode),this._details.widget.isEmpty?this._details.hide():(this._positionDetails(),this.element.domNode.classList.add("shows-details")),this.editor.focus()})}toggleExplainMode(){this._list.getFocusedElements()[0]&&(this._explainMode=!this._explainMode,this._isDetailsVisible()?this.showDetails(!1):this.toggleDetails())}resetPersistedSize(){this._persistedSize.reset()}hideWidget(){this._pendingLayout.clear(),this._pendingShowDetails.clear(),this._loadingTimeout?.dispose(),this._setState(0),this._onDidHide.fire(this),this.element.clearSashHoverState();const e=this._persistedSize.restore(),t=Math.ceil(this.getLayoutInfo().itemHeight*4.3);e&&e.heightr&&(s=r);const a=this._completionModel?this._completionModel.stats.pLabelLen*i.typicalHalfwidthCharacterWidth:s,l=i.statusBarHeight+this._list.contentHeight+i.borderHeight,c=i.itemHeight+i.statusBarHeight,d=gi(this.editor.getDomNode()),h=this.editor.getScrolledVisiblePosition(this.editor.getPosition()),u=d.top+h.top+h.height,f=Math.min(t.height-u-i.verticalPadding,l),g=d.top+h.top-i.verticalPadding,p=Math.min(g,l);let _=Math.min(Math.max(p,f)+i.borderHeight,l);n===this._cappedHeight?.capped&&(n=this._cappedHeight.wanted),n_&&(n=_),n>f||this._forceRenderingAbove&&g>150?(this._contentWidget.setPreference(1),this.element.enableSashes(!0,!0,!1,!1),_=p):(this._contentWidget.setPreference(2),this.element.enableSashes(!1,!0,!0,!1),_=f),this.element.preferredSize=new rt(a,i.defaultSize.height),this.element.maxSize=new rt(r,_),this.element.minSize=new rt(220,c),this._cappedHeight=n===l?{wanted:this._cappedHeight?.wanted??e.height,capped:n}:void 0}this._resize(s,n)}_resize(e,t){const{width:i,height:n}=this.element.maxSize;e=Math.min(i,e),t=Math.min(n,t);const{statusBarHeight:s}=this.getLayoutInfo();this._list.layout(t-s,e),this._listElement.style.height=`${t-s}px`,this.element.layout(t,e),this._contentWidget.layout(),this._positionDetails()}_positionDetails(){this._isDetailsVisible()&&this._details.placeAtAnchor(this.element.domNode,this._contentWidget.getPosition()?.preference[0]===2)}getLayoutInfo(){const e=this.editor.getOption(50),t=bn(this.editor.getOption(121)||e.lineHeight,8,1e3),i=!this.editor.getOption(119).showStatusBar||this._state===2||this._state===1?0:t,n=this._details.widget.borderWidth,s=2*n;return{itemHeight:t,statusBarHeight:i,borderWidth:n,borderHeight:s,typicalHalfwidthCharacterWidth:e.typicalHalfwidthCharacterWidth,verticalPadding:22,horizontalPadding:14,defaultSize:new rt(430,i+12*t+s)}}_isDetailsVisible(){return this._storageService.getBoolean("expandSuggestionDocs",0,!1)}_setDetailsVisible(e){this._storageService.store("expandSuggestionDocs",e,0,0)}forceRenderingAbove(){this._forceRenderingAbove||(this._forceRenderingAbove=!0,this._layout(this._persistedSize.restore()))}stopForceRenderingAbove(){this._forceRenderingAbove=!1}},qu=Nc,Nc.LOADING_MESSAGE=m("suggestWidget.loading","Loading..."),Nc.NO_SUGGESTIONS_MESSAGE=m("suggestWidget.noSuggestions","No suggestions."),Nc);mN=qu=vue([C1(1,du),C1(2,De),C1(3,en),C1(4,ke)],mN);class Lue{constructor(e,t){this._widget=e,this._editor=t,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._preferenceLocked=!1,this._added=!1,this._hidden=!1}dispose(){this._added&&(this._added=!1,this._editor.removeContentWidget(this))}getId(){return"editor.widget.suggestWidget"}getDomNode(){return this._widget.element.domNode}show(){this._hidden=!1,this._added||(this._added=!0,this._editor.addContentWidget(this))}hide(){this._hidden||(this._hidden=!0,this.layout())}layout(){this._editor.layoutContentWidget(this)}getPosition(){return this._hidden||!this._position||!this._preference?null:{position:this._position,preference:[this._preference]}}beforeRender(){const{height:e,width:t}=this._widget.element.size,{borderWidth:i,horizontalPadding:n}=this._widget.getLayoutInfo();return new rt(t+2*i+n,e+2*i)}afterRender(e){this._widget._afterRender(e)}setPreference(e){this._preferenceLocked||(this._preference=e)}lockPreference(){this._preferenceLocked=!0}unlockPreference(){this._preferenceLocked=!1}setPosition(e){this._position=e}}var xue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Hu=function(o,e){return function(t,i){e(t,i,o)}},pN;class kue{constructor(e,t){if(this._model=e,this._position=t,this._decorationOptions=kt.register({description:"suggest-line-suffix",stickiness:1}),e.getLineMaxColumn(t.lineNumber)!==t.column){const n=e.getOffsetAt(t),s=e.getPositionAt(n+1);e.changeDecorations(r=>{this._marker&&r.removeDecoration(this._marker),this._marker=r.addDecoration(I.fromPositions(t,s),this._decorationOptions)})}}dispose(){this._marker&&!this._model.isDisposed()&&this._model.changeDecorations(e=>{e.removeDecoration(this._marker),this._marker=void 0})}delta(e){if(this._model.isDisposed()||this._position.lineNumber!==e.lineNumber)return 0;if(this._marker){const t=this._model.getDecorationRange(this._marker);return this._model.getOffsetAt(t.getStartPosition())-this._model.getOffsetAt(e)}else return this._model.getLineMaxColumn(e.lineNumber)-e.column}}var Dh;let mr=(Dh=class{static get(e){return e.getContribution(pN.ID)}constructor(e,t,i,n,s,r,a){this._memoryService=t,this._commandService=i,this._contextKeyService=n,this._instantiationService=s,this._logService=r,this._telemetryService=a,this._lineSuffix=new Dn,this._toDispose=new X,this._selectors=new Due(h=>h.priority),this._onWillInsertSuggestItem=new A,this.onWillInsertSuggestItem=this._onWillInsertSuggestItem.event,this.editor=e,this.model=s.createInstance(dN,this.editor),this._selectors.register({priority:0,select:(h,u,f)=>this._memoryService.select(h,u,f)});const l=Ne.InsertMode.bindTo(n);l.set(e.getOption(119).insertMode),this._toDispose.add(this.model.onDidTrigger(()=>l.set(e.getOption(119).insertMode))),this.widget=this._toDispose.add(new nS(fe(e.getDomNode()),()=>{const h=this._instantiationService.createInstance(mN,this.editor);this._toDispose.add(h),this._toDispose.add(h.onDidSelect(_=>this._insertSuggestion(_,0),this));const u=new aue(this.editor,h,this.model,_=>this._insertSuggestion(_,2));this._toDispose.add(u);const f=Ne.MakesTextEdit.bindTo(this._contextKeyService),g=Ne.HasInsertAndReplaceRange.bindTo(this._contextKeyService),p=Ne.CanResolve.bindTo(this._contextKeyService);return this._toDispose.add(_e(()=>{f.reset(),g.reset(),p.reset()})),this._toDispose.add(h.onDidFocus(({item:_})=>{const b=this.editor.getPosition(),C=_.editStart.column,w=b.column;let v=!0;this.editor.getOption(1)==="smart"&&this.model.state===2&&!_.completion.additionalTextEdits&&!(_.completion.insertTextRules&4)&&w-C===_.completion.insertText.length&&(v=this.editor.getModel().getValueInRange({startLineNumber:b.lineNumber,startColumn:C,endLineNumber:b.lineNumber,endColumn:w})!==_.completion.insertText),f.set(v),g.set(!P.equals(_.editInsertEnd,_.editReplaceEnd)),p.set(!!_.provider.resolveCompletionItem||!!_.completion.documentation||_.completion.detail!==_.completion.label)})),this._toDispose.add(h.onDetailsKeyDown(_=>{if(_.toKeyCodeChord().equals(new kl(!0,!1,!1,!1,33))||Ue&&_.toKeyCodeChord().equals(new kl(!1,!1,!1,!0,33))){_.stopPropagation();return}_.toKeyCodeChord().isModifierKey()||this.editor.focus()})),h})),this._overtypingCapturer=this._toDispose.add(new nS(fe(e.getDomNode()),()=>this._toDispose.add(new hN(this.editor,this.model)))),this._alternatives=this._toDispose.add(new nS(fe(e.getDomNode()),()=>this._toDispose.add(new Rg(this.editor,this._contextKeyService)))),this._toDispose.add(s.createInstance(pw,e)),this._toDispose.add(this.model.onDidTrigger(h=>{this.widget.value.showTriggered(h.auto,h.shy?250:50),this._lineSuffix.value=new kue(this.editor.getModel(),h.position)})),this._toDispose.add(this.model.onDidSuggest(h=>{if(h.triggerOptions.shy)return;let u=-1;for(const g of this._selectors.itemsOrderedByPriorityDesc)if(u=g.select(this.editor.getModel(),this.editor.getPosition(),h.completionModel.items),u!==-1)break;if(u===-1&&(u=0),this.model.state===0)return;let f=!1;if(h.triggerOptions.auto){const g=this.editor.getOption(119);g.selectionMode==="never"||g.selectionMode==="always"?f=g.selectionMode==="never":g.selectionMode==="whenTriggerCharacter"?f=h.triggerOptions.triggerKind!==1:g.selectionMode==="whenQuickSuggestion"&&(f=h.triggerOptions.triggerKind===1&&!h.triggerOptions.refilter)}this.widget.value.showSuggestions(h.completionModel,u,h.isFrozen,h.triggerOptions.auto,f)})),this._toDispose.add(this.model.onDidCancel(h=>{h.retrigger||this.widget.value.hideWidget()})),this._toDispose.add(this.editor.onDidBlurEditorWidget(()=>{this.model.cancel(),this.model.clear()}));const c=Ne.AcceptSuggestionsOnEnter.bindTo(n),d=()=>{const h=this.editor.getOption(1);c.set(h==="on"||h==="smart")};this._toDispose.add(this.editor.onDidChangeConfiguration(()=>d())),d()}dispose(){this._alternatives.dispose(),this._toDispose.dispose(),this.widget.dispose(),this.model.dispose(),this._lineSuffix.dispose(),this._onWillInsertSuggestItem.dispose()}_insertSuggestion(e,t){if(!e||!e.item){this._alternatives.value.reset(),this.model.cancel(),this.model.clear();return}if(!this.editor.hasModel())return;const i=Mn.get(this.editor);if(!i)return;this._onWillInsertSuggestItem.fire({item:e.item});const n=this.editor.getModel(),s=n.getAlternativeVersionId(),{item:r}=e,a=[],l=new In;t&1||this.editor.pushUndoStop();const c=this.getOverwriteInfo(r,!!(t&8));this._memoryService.memorize(n,this.editor.getPosition(),r);const d=r.isResolved;let h=-1,u=-1;if(Array.isArray(r.completion.additionalTextEdits)){this.model.cancel();const g=qh.capture(this.editor);this.editor.executeEdits("suggestController.additionalTextEdits.sync",r.completion.additionalTextEdits.map(p=>{let _=I.lift(p.range);if(_.startLineNumber===r.position.lineNumber&&_.startColumn>r.position.column){const b=this.editor.getPosition().column-r.position.column,C=b,w=I.spansMultipleLines(_)?0:b;_=new I(_.startLineNumber,_.startColumn+C,_.endLineNumber,_.endColumn+w)}return aa.replaceMove(_,p.text)})),g.restoreRelativeVerticalPositionOfCursor(this.editor)}else if(!d){const g=new Hs;let p;const _=n.onDidChangeContent(v=>{if(v.isFlush){l.cancel(),_.dispose();return}for(const y of v.changes){const x=I.getEndPosition(y.range);(!p||P.isBefore(x,p))&&(p=x)}}),b=t;t|=2;let C=!1;const w=this.editor.onWillType(()=>{w.dispose(),C=!0,b&2||this.editor.pushUndoStop()});a.push(r.resolve(l.token).then(()=>{if(!r.completion.additionalTextEdits||l.token.isCancellationRequested)return;if(p&&r.completion.additionalTextEdits.some(y=>P.isBefore(p,I.getStartPosition(y.range))))return!1;C&&this.editor.pushUndoStop();const v=qh.capture(this.editor);return this.editor.executeEdits("suggestController.additionalTextEdits.async",r.completion.additionalTextEdits.map(y=>aa.replaceMove(I.lift(y.range),y.text))),v.restoreRelativeVerticalPositionOfCursor(this.editor),(C||!(b&2))&&this.editor.pushUndoStop(),!0}).then(v=>{this._logService.trace("[suggest] async resolving of edits DONE (ms, applied?)",g.elapsed(),v),u=v===!0?1:v===!1?0:-2}).finally(()=>{_.dispose(),w.dispose()}))}let{insertText:f}=r.completion;if(r.completion.insertTextRules&4||(f=Mg.escape(f)),this.model.cancel(),i.insert(f,{overwriteBefore:c.overwriteBefore,overwriteAfter:c.overwriteAfter,undoStopBefore:!1,undoStopAfter:!1,adjustWhitespace:!(r.completion.insertTextRules&1),clipboardText:e.model.clipboardText,overtypingCapturer:this._overtypingCapturer.value}),t&2||this.editor.pushUndoStop(),r.completion.command)if(r.completion.command.id===_w.id)this.model.trigger({auto:!0,retrigger:!0});else{const g=new Hs;a.push(this._commandService.executeCommand(r.completion.command.id,...r.completion.command.arguments?[...r.completion.command.arguments]:[]).catch(p=>{r.completion.extensionId?$n(p):Ze(p)}).finally(()=>{h=g.elapsed()}))}t&4&&this._alternatives.value.set(e,g=>{for(l.cancel();n.canUndo();){s!==n.getAlternativeVersionId()&&n.undo(),this._insertSuggestion(g,3|(t&8?8:0));break}}),this._alertCompletionItem(r),Promise.all(a).finally(()=>{this._reportSuggestionAcceptedTelemetry(r,n,d,h,u,e.index,e.model.items),this.model.clear(),l.dispose()})}_reportSuggestionAcceptedTelemetry(e,t,i,n,s,r,a){if(Math.floor(Math.random()*100)===0)return;const l=new Map;for(let u=0;u1?c[0]:-1;this._telemetryService.publicLog2("suggest.acceptedSuggestion",{extensionId:e.extensionId?.value??"unknown",providerId:e.provider._debugDisplayName??"unknown",kind:e.completion.kind,basenameHash:ZN(Fo(t.uri)).toString(16),languageId:t.getLanguageId(),fileExtension:Yq(t.uri),resolveInfo:e.provider.resolveCompletionItem?i?1:0:-1,resolveDuration:e.resolveDuration,commandDuration:n,additionalEditsAsync:s,index:r,firstIndex:h})}getOverwriteInfo(e,t){ai(this.editor.hasModel());let i=this.editor.getOption(119).insertMode==="replace";t&&(i=!i);const n=e.position.column-e.editStart.column,s=(i?e.editReplaceEnd.column:e.editInsertEnd.column)-e.position.column,r=this.editor.getPosition().column-e.position.column,a=this._lineSuffix.value?this._lineSuffix.value.delta(this.editor.getPosition()):0;return{overwriteBefore:n+r,overwriteAfter:s+a}}_alertCompletionItem(e){if(Ps(e.completion.additionalTextEdits)){const t=m("aria.alert.snippet","Accepting '{0}' made {1} additional edits",e.textLabel,e.completion.additionalTextEdits.length);El(t)}}triggerSuggest(e,t,i){this.editor.hasModel()&&(this.model.trigger({auto:t??!1,completionOptions:{providerFilter:e,kindFilter:i?new Set:void 0}}),this.editor.revealPosition(this.editor.getPosition(),0),this.editor.focus())}triggerSuggestAndAcceptBest(e){if(!this.editor.hasModel())return;const t=this.editor.getPosition(),i=()=>{t.equals(this.editor.getPosition())&&this._commandService.executeCommand(e.fallback)},n=s=>{if(s.completion.insertTextRules&4||s.completion.additionalTextEdits)return!0;const r=this.editor.getPosition(),a=s.editStart.column,l=r.column;return l-a!==s.completion.insertText.length?!0:this.editor.getModel().getValueInRange({startLineNumber:r.lineNumber,startColumn:a,endLineNumber:r.lineNumber,endColumn:l})!==s.completion.insertText};J.once(this.model.onDidTrigger)(s=>{const r=[];J.any(this.model.onDidTrigger,this.model.onDidCancel)(()=>{xt(r),i()},void 0,r),this.model.onDidSuggest(({completionModel:a})=>{if(xt(r),a.items.length===0){i();return}const l=this._memoryService.select(this.editor.getModel(),this.editor.getPosition(),a.items),c=a.items[l];if(!n(c)){i();return}this.editor.pushUndoStop(),this._insertSuggestion({index:l,item:c,model:a},7)},void 0,r)}),this.model.trigger({auto:!1,shy:!0}),this.editor.revealPosition(t,0),this.editor.focus()}acceptSelectedSuggestion(e,t){const i=this.widget.value.getFocusedItem();let n=0;e&&(n|=4),t&&(n|=8),this._insertSuggestion(i,n)}acceptNextSuggestion(){this._alternatives.value.next()}acceptPrevSuggestion(){this._alternatives.value.prev()}cancelSuggestWidget(){this.model.cancel(),this.model.clear(),this.widget.value.hideWidget()}focusSuggestion(){this.widget.value.focusSelected()}selectNextSuggestion(){this.widget.value.selectNext()}selectNextPageSuggestion(){this.widget.value.selectNextPage()}selectLastSuggestion(){this.widget.value.selectLast()}selectPrevSuggestion(){this.widget.value.selectPrevious()}selectPrevPageSuggestion(){this.widget.value.selectPreviousPage()}selectFirstSuggestion(){this.widget.value.selectFirst()}toggleSuggestionDetails(){this.widget.value.toggleDetails()}toggleExplainMode(){this.widget.value.toggleExplainMode()}toggleSuggestionFocus(){this.widget.value.toggleDetailsFocus()}resetWidgetSize(){this.widget.value.resetPersistedSize()}forceRenderingAbove(){this.widget.value.forceRenderingAbove()}stopForceRenderingAbove(){this.widget.isInitialized&&this.widget.value.stopForceRenderingAbove()}registerSelector(e){return this._selectors.register(e)}},pN=Dh,Dh.ID="editor.contrib.suggestController",Dh);mr=pN=xue([Hu(1,YB),Hu(2,hi),Hu(3,De),Hu(4,ke),Hu(5,gs),Hu(6,$s)],mr);class Due{constructor(e){this.prioritySelector=e,this._items=new Array}register(e){if(this._items.indexOf(e)!==-1)throw new Error("Value is already registered");return this._items.push(e),this._items.sort((t,i)=>this.prioritySelector(i)-this.prioritySelector(t)),{dispose:()=>{const t=this._items.indexOf(e);t>=0&&this._items.splice(t,1)}}}get itemsOrderedByPriorityDesc(){return this._items}}const _0=class _0 extends bi{constructor(){super({id:_0.id,label:m("suggest.trigger.label","Trigger Suggest"),alias:"Trigger Suggest",precondition:re.and(K.writable,K.hasCompletionItemProvider,Ne.Visible.toNegated()),kbOpts:{kbExpr:K.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[521,2087]},weight:100}})}run(e,t,i){const n=mr.get(t);if(!n)return;let s;i&&typeof i=="object"&&i.auto===!0&&(s=!0),n.triggerSuggest(void 0,s,void 0)}};_0.id="editor.action.triggerSuggest";let _w=_0;Ho(mr.ID,mr,2);mi(_w);const Us=190,Pn=co.bindToContribution(mr.get);ge(new Pn({id:"acceptSelectedSuggestion",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion),handler(o){o.acceptSelectedSuggestion(!0,!1)},kbOpts:[{primary:2,kbExpr:re.and(Ne.Visible,K.textInputFocus),weight:Us},{primary:3,kbExpr:re.and(Ne.Visible,K.textInputFocus,Ne.AcceptSuggestionsOnEnter,Ne.MakesTextEdit),weight:Us}],menuOpts:[{menuId:bc,title:m("accept.insert","Insert"),group:"left",order:1,when:Ne.HasInsertAndReplaceRange.toNegated()},{menuId:bc,title:m("accept.insert","Insert"),group:"left",order:1,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("insert"))},{menuId:bc,title:m("accept.replace","Replace"),group:"left",order:1,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("replace"))}]}));ge(new Pn({id:"acceptAlternativeSelectedSuggestion",precondition:re.and(Ne.Visible,K.textInputFocus,Ne.HasFocusedSuggestion),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:1027,secondary:[1026]},handler(o){o.acceptSelectedSuggestion(!1,!0)},menuOpts:[{menuId:bc,group:"left",order:2,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("insert")),title:m("accept.replace","Replace")},{menuId:bc,group:"left",order:2,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("replace")),title:m("accept.insert","Insert")}]}));bt.registerCommandAlias("acceptSelectedSuggestionOnEnter","acceptSelectedSuggestion");ge(new Pn({id:"hideSuggestWidget",precondition:Ne.Visible,handler:o=>o.cancelSuggestWidget(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:9,secondary:[1033]}}));ge(new Pn({id:"selectNextSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectNextSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}}));ge(new Pn({id:"selectNextPageSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectNextPageSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:12,secondary:[2060]}}));ge(new Pn({id:"selectLastSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectLastSuggestion()}));ge(new Pn({id:"selectPrevSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectPrevSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}}));ge(new Pn({id:"selectPrevPageSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectPrevPageSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:11,secondary:[2059]}}));ge(new Pn({id:"selectFirstSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectFirstSuggestion()}));ge(new Pn({id:"focusSuggestion",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion.negate()),handler:o=>o.focusSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[2087]}}}));ge(new Pn({id:"focusAndAcceptSuggestion",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion.negate()),handler:o=>{o.focusSuggestion(),o.acceptSelectedSuggestion(!0,!1)}}));ge(new Pn({id:"toggleSuggestionDetails",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion),handler:o=>o.toggleSuggestionDetails(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[2087]}},menuOpts:[{menuId:bc,group:"right",order:1,when:re.and(Ne.DetailsVisible,Ne.CanResolve),title:m("detail.more","Show Less")},{menuId:bc,group:"right",order:1,when:re.and(Ne.DetailsVisible.toNegated(),Ne.CanResolve),title:m("detail.less","Show More")}]}));ge(new Pn({id:"toggleExplainMode",precondition:Ne.Visible,handler:o=>o.toggleExplainMode(),kbOpts:{weight:100,primary:2138}}));ge(new Pn({id:"toggleSuggestionFocus",precondition:Ne.Visible,handler:o=>o.toggleSuggestionFocus(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2570,mac:{primary:778}}}));ge(new Pn({id:"insertBestCompletion",precondition:re.and(K.textInputFocus,re.equals("config.editor.tabCompletion","on"),pw.AtEnd,Ne.Visible.toNegated(),Rg.OtherSuggestions.toNegated(),Mn.InSnippetMode.toNegated()),handler:(o,e)=>{o.triggerSuggestAndAcceptBest(Oi(e)?{fallback:"tab",...e}:{fallback:"tab"})},kbOpts:{weight:Us,primary:2}}));ge(new Pn({id:"insertNextSuggestion",precondition:re.and(K.textInputFocus,re.equals("config.editor.tabCompletion","on"),Rg.OtherSuggestions,Ne.Visible.toNegated(),Mn.InSnippetMode.toNegated()),handler:o=>o.acceptNextSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2}}));ge(new Pn({id:"insertPrevSuggestion",precondition:re.and(K.textInputFocus,re.equals("config.editor.tabCompletion","on"),Rg.OtherSuggestions,Ne.Visible.toNegated(),Mn.InSnippetMode.toNegated()),handler:o=>o.acceptPrevSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:1026}}));mi(class extends bi{constructor(){super({id:"editor.action.resetSuggestSize",label:m("suggest.reset.label","Reset Suggest Widget Size"),alias:"Reset Suggest Widget Size",precondition:void 0})}run(o,e){mr.get(e)?.resetWidgetSize()}});class Iue extends z{get selectedItem(){return this._currentSuggestItemInfo}constructor(e,t,i){super(),this.editor=e,this.suggestControllerPreselector=t,this.onWillAccept=i,this.isSuggestWidgetVisible=!1,this.isShiftKeyPressed=!1,this._isActive=!1,this._currentSuggestItemInfo=void 0,this._onDidSelectedItemChange=this._register(new A),this.onDidSelectedItemChange=this._onDidSelectedItemChange.event,this._register(e.onKeyDown(s=>{s.shiftKey&&!this.isShiftKeyPressed&&(this.isShiftKeyPressed=!0,this.update(this._isActive))})),this._register(e.onKeyUp(s=>{s.shiftKey&&this.isShiftKeyPressed&&(this.isShiftKeyPressed=!1,this.update(this._isActive))}));const n=mr.get(this.editor);if(n){this._register(n.registerSelector({priority:100,select:(a,l,c)=>{const d=this.editor.getModel();if(!d)return-1;const h=this.suggestControllerPreselector(),u=h?nh(h,d):void 0;if(!u)return-1;const f=P.lift(l),g=c.map((_,b)=>{const C=Sp.fromSuggestion(n,d,f,_,this.isShiftKeyPressed),w=nh(C.toSingleTextEdit(),d),v=UB(u,w);return{index:b,valid:v,prefixLength:w.text.length,suggestItem:_}}).filter(_=>_&&_.valid&&_.prefixLength>0),p=fT(g,rs(_=>_.prefixLength,ia));return p?p.index:-1}}));let s=!1;const r=()=>{s||(s=!0,this._register(n.widget.value.onDidShow(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})),this._register(n.widget.value.onDidHide(()=>{this.isSuggestWidgetVisible=!1,this.update(!1)})),this._register(n.widget.value.onDidFocus(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})))};this._register(J.once(n.model.onDidTrigger)(a=>{r()})),this._register(n.onWillInsertSuggestItem(a=>{const l=this.editor.getPosition(),c=this.editor.getModel();if(!l||!c)return;const d=Sp.fromSuggestion(n,c,l,a.item,this.isShiftKeyPressed);this.onWillAccept(d)}))}this.update(this._isActive)}update(e){const t=this.getSuggestItemInfo();(this._isActive!==e||!Eue(this._currentSuggestItemInfo,t))&&(this._isActive=e,this._currentSuggestItemInfo=t,this._onDidSelectedItemChange.fire())}getSuggestItemInfo(){const e=mr.get(this.editor);if(!e||!this.isSuggestWidgetVisible)return;const t=e.widget.value.getFocusedItem(),i=this.editor.getPosition(),n=this.editor.getModel();if(!(!t||!i||!n))return Sp.fromSuggestion(e,n,i,t.item,this.isShiftKeyPressed)}stopForceRenderingAbove(){mr.get(this.editor)?.stopForceRenderingAbove()}forceRenderingAbove(){mr.get(this.editor)?.forceRenderingAbove()}}class Sp{static fromSuggestion(e,t,i,n,s){let{insertText:r}=n.completion,a=!1;if(n.completion.insertTextRules&4){const c=new Mg().parse(r);c.children.length<100&&mw.adjustWhitespace(t,i,!0,c),r=c.toString(),a=!0}const l=e.getOverwriteInfo(n,s);return new Sp(I.fromPositions(i.delta(0,-l.overwriteBefore),i.delta(0,Math.max(l.overwriteAfter,0))),r,n.completion.kind,a)}constructor(e,t,i,n){this.range=e,this.insertText=t,this.completionItemKind=i,this.isSnippetText=n}equals(e){return this.range.equalsRange(e.range)&&this.insertText===e.insertText&&this.completionItemKind===e.completionItemKind&&this.isSnippetText===e.isSnippetText}toSelectedSuggestionInfo(){return new lF(this.range,this.insertText,this.completionItemKind,this.isSnippetText)}toSingleTextEdit(){return new fa(this.range,this.insertText)}}function Eue(o,e){return o===e?!0:!o||!e?!1:o.equals(e)}var Nue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Fa=function(o,e){return function(t,i){e(t,i,o)}},_N,Ih;let uo=(Ih=class extends z{static get(e){return e.getContribution(_N.ID)}constructor(e,t,i,n,s,r,a,l,c,d){super(),this.editor=e,this._instantiationService=t,this._contextKeyService=i,this._configurationService=n,this._commandService=s,this._debounceService=r,this._languageFeaturesService=a,this._accessibilitySignalService=l,this._keybindingService=c,this._accessibilityService=d,this._editorObs=Dg(this.editor),this._positions=Ce(this,u=>this._editorObs.selections.read(u)?.map(f=>f.getEndPosition())??[new P(1,1)]),this._suggestWidgetAdaptor=this._register(new Iue(this.editor,()=>(this._editorObs.forceUpdate(),this.model.get()?.selectedInlineCompletion.get()?.toSingleTextEdit(void 0)),u=>this._editorObs.forceUpdate(f=>{this.model.get()?.handleSuggestAccepted(u)}))),this._suggestWidgetSelectedItem=gt(this,u=>this._suggestWidgetAdaptor.onDidSelectedItemChange(()=>{this._editorObs.forceUpdate(f=>u(void 0))}),()=>this._suggestWidgetAdaptor.selectedItem),this._enabledInConfig=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).enabled),this._isScreenReaderEnabled=gt(this,this._accessibilityService.onDidChangeScreenReaderOptimized,()=>this._accessibilityService.isScreenReaderOptimized()),this._editorDictationInProgress=gt(this,this._contextKeyService.onDidChangeContext,()=>this._contextKeyService.getContext(this.editor.getDomNode()).getValue("editorDictation.inProgress")===!0),this._enabled=Ce(this,u=>this._enabledInConfig.read(u)&&(!this._isScreenReaderEnabled.read(u)||!this._editorDictationInProgress.read(u))),this._debounceValue=this._debounceService.for(this._languageFeaturesService.inlineCompletionsProvider,"InlineCompletionsDebounce",{min:50,max:50}),this.model=tr(this,u=>{if(this._editorObs.isReadonly.read(u))return;const f=this._editorObs.model.read(u);return f?this._instantiationService.createInstance(sN,f,this._suggestWidgetSelectedItem,this._editorObs.versionId,this._positions,this._debounceValue,gt(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(119).preview),gt(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(119).previewMode),gt(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).mode),this._enabled):void 0}).recomputeInitiallyAndOnChange(this._store),this._ghostTexts=Ce(this,u=>this.model.read(u)?.ghostTexts.read(u)??[]),this._stablizedGhostTexts=Tue(this._ghostTexts,this._store),this._ghostTextWidgets=jZ(this,this._stablizedGhostTexts,(u,f)=>f.add(this._instantiationService.createInstance(tN,this.editor,{ghostText:u,minReservedLineCount:wg(0),targetTextModel:this.model.map(g=>g?.textModel)}))).recomputeInitiallyAndOnChange(this._store),this._playAccessibilitySignal=Q_(this),this._fontFamily=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).fontFamily),this._register(new hs(this._contextKeyService,this.model)),this._register(JI(this._editorObs.onDidType,(u,f)=>{this._enabled.get()&&this.model.get()?.trigger()})),this._register(this._commandService.onDidExecuteCommand(u=>{new Set([fp.Tab.id,fp.DeleteLeft.id,fp.DeleteRight.id,dB,"acceptSelectedSuggestion"]).has(u.commandId)&&e.hasTextFocus()&&this._enabled.get()&&this._editorObs.forceUpdate(g=>{this.model.get()?.trigger(g)})})),this._register(JI(this._editorObs.selections,(u,f)=>{f.some(g=>g.reason===3||g.source==="api")&&this.model.get()?.stop()})),this._register(this.editor.onDidBlurEditorWidget(()=>{this._contextKeyService.getContextKeyValue("accessibleViewIsShown")||this._configurationService.getValue("editor.inlineSuggest.keepOnBlur")||e.getOption(62).keepOnBlur||Eg.dropDownVisible||Xt(u=>{this.model.get()?.stop(u)})})),this._register(We(u=>{const f=this.model.read(u)?.state.read(u);f?.suggestItem?f.primaryGhostText.lineCount>=2&&this._suggestWidgetAdaptor.forceRenderingAbove():this._suggestWidgetAdaptor.stopForceRenderingAbove()})),this._register(_e(()=>{this._suggestWidgetAdaptor.stopForceRenderingAbove()}));const h=YT(this,(u,f)=>{const p=this.model.read(u)?.state.read(u);return this._suggestWidgetSelectedItem.get()?f:p?.inlineCompletion?.semanticId});this._register(Nre(Ce(u=>(this._playAccessibilitySignal.read(u),h.read(u),{})),async(u,f,g)=>{const p=this.model.get(),_=p?.state.get();if(!_||!p)return;const b=p.textModel.getLineContent(_.primaryGhostText.lineNumber);await og(50,zM(g)),await k7(this._suggestWidgetSelectedItem,Es,()=>!1,zM(g)),await this._accessibilitySignalService.playSignal(rr.inlineSuggestion),this.editor.getOption(8)&&this._provideScreenReaderUpdate(_.primaryGhostText.renderForScreenReader(b))})),this._register(new SE(this.editor,this.model,this._instantiationService)),this._register(ghe(Ce(u=>{const f=this._fontFamily.read(u);return f===""||f==="default"?"":` +.monaco-editor .ghost-text-decoration, +.monaco-editor .ghost-text-decoration-preview, +.monaco-editor .ghost-text { + font-family: ${f}; +}`}))),this._register(this._configurationService.onDidChangeConfiguration(u=>{u.affectsConfiguration("accessibility.verbosity.inlineCompletions")&&this.editor.updateOptions({inlineCompletionsAccessibilityVerbose:this._configurationService.getValue("accessibility.verbosity.inlineCompletions")})})),this.editor.updateOptions({inlineCompletionsAccessibilityVerbose:this._configurationService.getValue("accessibility.verbosity.inlineCompletions")})}playAccessibilitySignal(e){this._playAccessibilitySignal.trigger(e)}_provideScreenReaderUpdate(e){const t=this._contextKeyService.getContextKeyValue("accessibleViewIsShown"),i=this._keybindingService.lookupKeybinding("editor.action.accessibleView");let n;!t&&i&&this.editor.getOption(150)&&(n=m("showAccessibleViewHint","Inspect this in the accessible view ({0})",i.getAriaLabel())),El(n?e+", "+n:e)}shouldShowHoverAt(e){const t=this.model.get()?.primaryGhostText.get();return t?t.parts.some(i=>e.containsPosition(new P(t.lineNumber,i.column))):!1}shouldShowHoverAtViewZone(e){return this._ghostTextWidgets.get()[0]?.ownsViewZone(e)??!1}},_N=Ih,Ih.ID="editor.contrib.inlineCompletionsController",Ih);uo=_N=Nue([Fa(1,ke),Fa(2,De),Fa(3,lt),Fa(4,hi),Fa(5,q0),Fa(6,Se),Fa(7,rb),Fa(8,vt),Fa(9,ms)],uo);function Tue(o,e){const t=Ge("result",[]),i=[];return e.add(We(n=>{const s=o.read(n);Xt(r=>{if(s.length!==i.length){i.length=s.length;for(let a=0;aa.set(s[l],r))})})),t}const b0=class b0 extends bi{constructor(){super({id:b0.ID,label:m("action.inlineSuggest.showNext","Show Next Inline Suggestion"),alias:"Show Next Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:100,primary:606}})}async run(e,t){uo.get(t)?.model.get()?.next()}};b0.ID=uB;let bN=b0;const C0=class C0 extends bi{constructor(){super({id:C0.ID,label:m("action.inlineSuggest.showPrevious","Show Previous Inline Suggestion"),alias:"Show Previous Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:100,primary:604}})}async run(e,t){uo.get(t)?.model.get()?.previous()}};C0.ID=hB;let CN=C0;class Mue extends bi{constructor(){super({id:"editor.action.inlineSuggest.trigger",label:m("action.inlineSuggest.trigger","Trigger Inline Suggestion"),alias:"Trigger Inline Suggestion",precondition:K.writable})}async run(e,t){const i=uo.get(t);await BZ(async n=>{await i?.model.get()?.triggerExplicitly(n),i?.playAccessibilitySignal(n)})}}class Rue extends bi{constructor(){super({id:"editor.action.inlineSuggest.acceptNextWord",label:m("action.inlineSuggest.acceptNextWord","Accept Next Word Of Inline Suggestion"),alias:"Accept Next Word Of Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:101,primary:2065,kbExpr:re.and(K.writable,hs.inlineSuggestionVisible)},menuOpts:[{menuId:$e.InlineSuggestionToolbar,title:m("acceptWord","Accept Word"),group:"primary",order:2}]})}async run(e,t){const i=uo.get(t);await i?.model.get()?.acceptNextWord(i.editor)}}class Aue extends bi{constructor(){super({id:"editor.action.inlineSuggest.acceptNextLine",label:m("action.inlineSuggest.acceptNextLine","Accept Next Line Of Inline Suggestion"),alias:"Accept Next Line Of Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:101},menuOpts:[{menuId:$e.InlineSuggestionToolbar,title:m("acceptLine","Accept Line"),group:"secondary",order:2}]})}async run(e,t){const i=uo.get(t);await i?.model.get()?.acceptNextLine(i.editor)}}class Pue extends bi{constructor(){super({id:dB,label:m("action.inlineSuggest.accept","Accept Inline Suggestion"),alias:"Accept Inline Suggestion",precondition:hs.inlineSuggestionVisible,menuOpts:[{menuId:$e.InlineSuggestionToolbar,title:m("accept","Accept"),group:"primary",order:1}],kbOpts:{primary:2,weight:200,kbExpr:re.and(hs.inlineSuggestionVisible,K.tabMovesFocus.toNegated(),hs.inlineSuggestionHasIndentationLessThanTabSize,Ne.Visible.toNegated(),K.hoverFocused.toNegated())}})}async run(e,t){const i=uo.get(t);i&&(i.model.get()?.accept(i.editor),i.editor.focus())}}const v0=class v0 extends bi{constructor(){super({id:v0.ID,label:m("action.inlineSuggest.hide","Hide Inline Suggestion"),alias:"Hide Inline Suggestion",precondition:hs.inlineSuggestionVisible,kbOpts:{weight:100,primary:9}})}async run(e,t){const i=uo.get(t);Xt(n=>{i?.model.get()?.stop(n)})}};v0.ID="editor.action.inlineSuggest.hide";let vN=v0;const w0=class w0 extends nu{constructor(){super({id:w0.ID,title:m("action.inlineSuggest.alwaysShowToolbar","Always Show Toolbar"),f1:!1,precondition:void 0,menu:[{id:$e.InlineSuggestionToolbar,group:"secondary",order:10}],toggled:re.equals("config.editor.inlineSuggest.showToolbar","always")})}async run(e,t){const i=e.get(lt),s=i.getValue("editor.inlineSuggest.showToolbar")==="always"?"onHover":"always";i.updateValue("editor.inlineSuggest.showToolbar",s)}};w0.ID="editor.action.inlineSuggest.toggleAlwaysShowToolbar";let wN=w0;var Oue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},xm=function(o,e){return function(t,i){e(t,i,o)}};class Fue{constructor(e,t,i){this.owner=e,this.range=t,this.controller=i}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}let yN=class{constructor(e,t,i,n,s,r){this._editor=e,this._languageService=t,this._openerService=i,this.accessibilityService=n,this._instantiationService=s,this._telemetryService=r,this.hoverOrdinal=4}suggestHoverAnchor(e){const t=uo.get(this._editor);if(!t)return null;const i=e.target;if(i.type===8){const n=i.detail;if(t.shouldShowHoverAtViewZone(n.viewZoneId))return new Q1(1e3,this,I.fromPositions(this._editor.getModel().validatePosition(n.positionBefore||n.position)),e.event.posx,e.event.posy,!1)}return i.type===7&&t.shouldShowHoverAt(i.range)?new Q1(1e3,this,i.range,e.event.posx,e.event.posy,!1):i.type===6&&i.detail.mightBeForeignElement&&t.shouldShowHoverAt(i.range)?new Q1(1e3,this,i.range,e.event.posx,e.event.posy,!1):null}computeSync(e,t){if(this._editor.getOption(62).showToolbar!=="onHover")return[];const i=uo.get(this._editor);return i&&i.shouldShowHoverAt(e.range)?[new Fue(this,e.range,i)]:[]}renderHoverParts(e,t){const i=new X,n=t[0];this._telemetryService.publicLog2("inlineCompletionHover.shown"),this.accessibilityService.isScreenReaderOptimized()&&!this._editor.getOption(8)&&i.add(this.renderScreenReaderText(e,n));const s=n.controller.model.get(),r=this._instantiationService.createInstance(Eg,this._editor,!1,wg(null),s.selectedInlineCompletionIndex,s.inlineCompletionsCount,s.activeCommands),a=r.getDomNode();e.fragment.appendChild(a),s.triggerExplicitly(),i.add(r);const l={hoverPart:n,hoverElement:a,dispose(){i.dispose()}};return new Ng([l])}renderScreenReaderText(e,t){const i=new X,n=ce,s=n("div.hover-row.markdown-hover"),r=Z(s,n("div.hover-contents",{"aria-live":"assertive"})),a=i.add(new Wh({editor:this._editor},this._languageService,this._openerService)),l=c=>{i.add(a.onDidRenderAsync(()=>{r.className="hover-contents code-hover-contents",e.onContentsChanged()}));const d=m("inlineSuggestionFollows","Suggestion:"),h=i.add(a.render(new Js().appendText(d).appendCodeblock("text",c)));r.replaceChildren(h.element)};return i.add(We(c=>{const d=t.controller.model.read(c)?.primaryGhostText.read(c);if(d){const h=this._editor.getModel().getLineContent(d.lineNumber);l(d.renderForScreenReader(h))}else un(r)})),e.fragment.appendChild(s),i}};yN=Oue([xm(1,qt),xm(2,Vo),xm(3,ms),xm(4,ke),xm(5,$s)],yN);class Bue{}Ho(uo.ID,uo,3);mi(Mue);mi(bN);mi(CN);mi(Rue);mi(Aue);mi(Pue);mi(vN);Rn(wN);Oy.register(yN);By.register(new Bue);export{Dge as M,kge as R,Ige as e,Ege as l}; diff --git a/deploy/dac/index.html b/deploy/dac/index.html new file mode 100644 index 00000000..eb737d0d --- /dev/null +++ b/deploy/dac/index.html @@ -0,0 +1,21 @@ + + + + + + + + + DFD WebEditor + + + + + + + + +
    + + diff --git a/deploy/online-shop/assets/codicon-BYm2YbZ6.ttf b/deploy/online-shop/assets/codicon-BYm2YbZ6.ttf new file mode 100644 index 0000000000000000000000000000000000000000..6fdfc3fa0b4e45dd90a3022f55e7137b88e47efa GIT binary patch literal 123192 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 literal 0 HcmV?d00001 diff --git a/deploy/online-shop/assets/codicon-DCmgc-ay.ttf b/deploy/online-shop/assets/codicon-DCmgc-ay.ttf new file mode 100644 index 0000000000000000000000000000000000000000..27ee4c68caef1cd22342f481420d6dbda1648012 GIT binary patch literal 80340 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%0DOF`LEiy*`&i@0 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 UoXQ~{PVi#Rf4#j20|Nj60P(lx`2YX_ literal 0 HcmV?d00001 diff --git a/deploy/online-shop/assets/fa-regular-400-BVHPE7da.woff2 b/deploy/online-shop/assets/fa-regular-400-BVHPE7da.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..2eca12b0e7b540394a3349830e5d722ed53d2992 GIT binary patch literal 18988 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

    ;chMGNtQX7BwzxTo9ZPoT_>&Uj+b8J` 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

    {})IQs7PWypp>^u_v9 z*x}57xJw65ZWm)lz~m(Wa8}6jzw$uwC1dT2lz*N^M(+CitiupOx3Dz~&Dr@usd;A% zlWLAUrvt34q_L;uWf{HdJ6)w`UZEu7g@a8cJ(XwJ%gR| zyORyy%qdfP|>!T^^mP4WZ{3E*CG zedKw*Z&}8%T+^E7SvZ$z4L+2c&&7HI4&@m-{8Mc1lNld7jtUuimKRZy9+r{Lrx^}!WzwQX{>g_fOkS@BofB1eT*FmTLME23@ zq@x(52d5%-;@+>Gdq$@ibhvSt5}pyOiMq}sbp?N`9}J4}94(4h`ej0Rkf3(YRmtA^ z)%?s);w%qGZ3HN}GyGw0bv$26&QYV#3_5HR z;q-~6cfgSbIJd&<45?E%HAbflP^I8X59c{La+tzl*+mt$sd$5zE8WE`x;PS8E{`vW zRpmyPTwcSfBY1rl%u|T*Xlx9HkH}l<;v3fUWT;usNjY|W$BPQdPLHUQPeC|NKd_Tp zCVItc0yp<)J!2F7QvO;_>Jn>lM}gHVBLLOw>P+9I}z6D;zoOPx9hOZq+&NEVYD^Wzw>IQKEq%= zue2gL8UjA4Z*a9PgHs1uTd?P{E4~4y%vE~=P%`^4D1I0}O?TqZ!f!7AKox~AT?suo zaZUZQ@`W#e5C~s>q!0hW#Wce=Zg$H9<64^e8#>cq8Fh}>nu8Ryc5)a}+aL(!y8U_r zauC-jIEFp%E+MWXf5KcQSzCaaqDdlNyZ(~L#aE-gJfA$!ddipC~SPS;HQjX_=wzgF05U>tg9aZ>8Guyz^z)$whlIjHnA}qN~MKJ4h-Dg7Ny8R118vmy%Pv%Mq(+D z8^%BC*?qHH9`G&c9}VrwnRn9*)(II4D13%>`$sOx>cX3m5`6iUK~UmxFzpJrUyZ>tZ3jHY zOy${Y-ei#+Yc1^Im-dd3&e-~#3%-<*L7%2T{!m({C0Sc5vAkyILh+A&!)oW&;LRV{ z_~eN$stVqE0AA~;i{pGl745n97RLppDUwvF zH0i!nZ*S4Bt-fJj&yZ$?gSrgz?BT;a4oaX+%?c3x)kLRK9saXviFjvRVZncYaQ zdGaLzNWZ!(y<4xe?(%5Yx%py~v0WtJ$|9pXY~6%H2_@=ns1ftG(xwiQ@8HX1@n0Mf zo+dIu7DpGDbUGCk-O-_Qk}O=GVrKmH+Jy=EdAz#U=XZVWsT9kjM0W}c8Qlq)KxO6p z!a#333vO0;diRwBUgu8>)|5DjL|6;h`;ScOD4>2&L8!P+9y(D#Gg%0DJ!II7O(Spz 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 literal 0 HcmV?d00001 diff --git a/deploy/online-shop/assets/index-BshKduTm.js b/deploy/online-shop/assets/index-BshKduTm.js new file mode 100644 index 00000000..f37abcd2 --- /dev/null +++ b/deploy/online-shop/assets/index-BshKduTm.js @@ -0,0 +1,120 @@ +import{l as wh,R as Kzt,e as RX,M as z0t}from"./monaco-editor-BSmz0_Ko.js";(function(){const h=document.createElement("link").relList;if(h&&h.supports&&h.supports("modulepreload"))return;for(const m of document.querySelectorAll('link[rel="modulepreload"]'))w(m);new MutationObserver(m=>{for(const P of m)if(P.type==="childList")for(const g of P.addedNodes)g.tagName==="LINK"&&g.rel==="modulepreload"&&w(g)}).observe(document,{childList:!0,subtree:!0});function b(m){const P={};return m.integrity&&(P.integrity=m.integrity),m.referrerPolicy&&(P.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?P.credentials="include":m.crossOrigin==="anonymous"?P.credentials="omit":P.credentials="same-origin",P}function w(m){if(m.ep)return;m.ep=!0;const P=b(m);fetch(m.href,P)}})();var fS=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function qzt(f){return f&&f.__esModule&&Object.prototype.hasOwnProperty.call(f,"default")?f.default:f}function V0t(f){if(Object.prototype.hasOwnProperty.call(f,"__esModule"))return f;var h=f.default;if(typeof h=="function"){var b=function w(){var m=!1;try{m=this instanceof w}catch{}return m?Reflect.construct(h,arguments,this.constructor):h.apply(this,arguments)};b.prototype=h.prototype}else b={};return Object.defineProperty(b,"__esModule",{value:!0}),Object.keys(f).forEach(function(w){var m=Object.getOwnPropertyDescriptor(f,w);Object.defineProperty(b,w,m.get?m:{enumerable:!0,get:function(){return f[w]}})}),b}var _ht={};var Eht;function vye(){if(Eht)return _ht;Eht=1;var f;return(function(h){(function(b){var w=typeof globalThis=="object"?globalThis:typeof fS=="object"?fS:typeof self=="object"?self:typeof this=="object"?this:C(),m=P(h);typeof w.Reflect<"u"&&(m=P(w.Reflect,m)),b(m,w),typeof w.Reflect>"u"&&(w.Reflect=h);function P(T,M){return function(_,I){Object.defineProperty(T,_,{configurable:!0,writable:!0,value:I}),M&&M(_,I)}}function g(){try{return Function("return this;")()}catch{}}function E(){try{return(0,eval)("(function() { return this; })()")}catch{}}function C(){return g()||E()}})(function(b,w){var m=Object.prototype.hasOwnProperty,P=typeof Symbol=="function",g=P&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",E=P&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",C=typeof Object.create=="function",T={__proto__:[]}instanceof Array,M=!C&&!T,_={create:C?function(){return FM(Object.create(null))}:T?function(){return FM({__proto__:null})}:function(){return FM({})},has:M?function(ft,It){return m.call(ft,It)}:function(ft,It){return It in ft},get:M?function(ft,It){return m.call(ft,It)?ft[It]:void 0}:function(ft,It){return ft[It]}},I=Object.getPrototypeOf(Function),O=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:lN(),j=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:MJ(),k=typeof WeakMap=="function"?WeakMap:NM(),x=P?Symbol.for("@reflect-metadata:registry"):void 0,R=IA(),H=vh(R);function F(ft,It,zt,zn){if(Gn(zt)){if(!Ml(ft))throw new TypeError;if(!Si(It))throw new TypeError;return me(ft,It)}else{if(!Ml(ft))throw new TypeError;if(!Lr(It))throw new TypeError;if(!Lr(zn)&&!Gn(zn)&&!pc(zn))throw new TypeError;return pc(zn)&&(zn=void 0),zt=Er(zt),ke(ft,It,zt,zn)}}b("decorate",F);function $(ft,It){function zt(zn,or){if(!Lr(zn))throw new TypeError;if(!Gn(or)&&!_o(or))throw new TypeError;Nt(ft,It,zn,or)}return zt}b("metadata",$);function W(ft,It,zt,zn){if(!Lr(zt))throw new TypeError;return Gn(zn)||(zn=Er(zn)),Nt(ft,It,zt,zn)}b("defineMetadata",W);function re(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),tt(ft,It,zt)}b("hasMetadata",re);function ae(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),De(ft,It,zt)}b("hasOwnMetadata",ae);function ce(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),ct(ft,It,zt)}b("getMetadata",ce);function J(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),Z(ft,It,zt)}b("getOwnMetadata",J);function te(ft,It){if(!Lr(ft))throw new TypeError;return Gn(It)||(It=Er(It)),ii(ft,It)}b("getMetadataKeys",te);function fe(ft,It){if(!Lr(ft))throw new TypeError;return Gn(It)||(It=Er(It)),kr(ft,It)}b("getOwnMetadataKeys",fe);function ve(ft,It,zt){if(!Lr(It))throw new TypeError;if(Gn(zt)||(zt=Er(zt)),!Lr(It))throw new TypeError;Gn(zt)||(zt=Er(zt));var zn=ed(It,zt,!1);return Gn(zn)?!1:zn.OrdinaryDeleteMetadata(ft,It,zt)}b("deleteMetadata",ve);function me(ft,It){for(var zt=ft.length-1;zt>=0;--zt){var zn=ft[zt],or=zn(It);if(!Gn(or)&&!pc(or)){if(!Si(or))throw new TypeError;It=or}}return It}function ke(ft,It,zt,zn){for(var or=ft.length-1;or>=0;--or){var uu=ft[or],Qu=uu(It,zt,zn);if(!Gn(Qu)&&!pc(Qu)){if(!Lr(Qu))throw new TypeError;zn=Qu}}return zn}function tt(ft,It,zt){var zn=De(ft,It,zt);if(zn)return!0;var or=Ia(It);return pc(or)?!1:tt(ft,or,zt)}function De(ft,It,zt){var zn=ed(It,zt,!1);return Gn(zn)?!1:jn(zn.OrdinaryHasOwnMetadata(ft,It,zt))}function ct(ft,It,zt){var zn=De(ft,It,zt);if(zn)return Z(ft,It,zt);var or=Ia(It);if(!pc(or))return ct(ft,or,zt)}function Z(ft,It,zt){var zn=ed(It,zt,!1);if(!Gn(zn))return zn.OrdinaryGetOwnMetadata(ft,It,zt)}function Nt(ft,It,zt,zn){var or=ed(zt,zn,!0);or.OrdinaryDefineOwnMetadata(ft,It,zt,zn)}function ii(ft,It){var zt=kr(ft,It),zn=Ia(ft);if(zn===null)return zt;var or=ii(zn,It);if(or.length<=0)return zt;if(zt.length<=0)return or;for(var uu=new j,Qu=[],fo=0,ni=zt;fo=0&&ni=this._keys.length?(this._index=-1,this._keys=It,this._values=It):this._index++,{value:li,done:!1}}return{value:void 0,done:!0}},fo.prototype.throw=function(ni){throw this._index>=0&&(this._index=-1,this._keys=It,this._values=It),ni},fo.prototype.return=function(ni){return this._index>=0&&(this._index=-1,this._keys=It,this._values=It),{value:ni,done:!0}},fo})(),zn=(function(){function fo(){this._keys=[],this._values=[],this._cacheKey=ft,this._cacheIndex=-2}return Object.defineProperty(fo.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),fo.prototype.has=function(ni){return this._find(ni,!1)>=0},fo.prototype.get=function(ni){var li=this._find(ni,!1);return li>=0?this._values[li]:void 0},fo.prototype.set=function(ni,li){var bi=this._find(ni,!0);return this._values[bi]=li,this},fo.prototype.delete=function(ni){var li=this._find(ni,!1);if(li>=0){for(var bi=this._keys.length,Pi=li+1;Pi0)throw new kM(F3.missingInjectionDecorator,`Found unexpected missing metadata on type "${f.name}" at constructor indexes "${b.join('", "')}". + +Are you using @inject, @multiInject or @unmanaged decorators at those indexes? + +If you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}function X0t(f){return{kind:wg.singleInjection,name:void 0,optional:!1,tags:new Map,targetName:void 0,value:f}}function oJ(f){const h=f.find((g=>g.key===Sye)),b=f.find((g=>g.key===Pye));if(f.find((g=>g.key===_ye))!==void 0)return(function(g,E){if(E!==void 0||g!==void 0)throw new kM(F3.missingInjectionDecorator,"Expected a single @inject, @multiInject or @unmanaged metadata");return{kind:wg.unmanaged}})(h,b);if(b===void 0&&h===void 0)throw new kM(F3.missingInjectionDecorator,"Expected @inject, @multiInject or @unmanaged metadata");const w=f.find((g=>g.key===rJ)),m=f.find((g=>g.key===Eye)),P=f.find((g=>g.key===yye));return{kind:h===void 0?wg.multipleInjection:wg.singleInjection,name:w?.value,optional:m!==void 0,tags:new Map(f.filter((g=>zzt.every((E=>g.key!==E)))).map((g=>[g.key,g.value]))),targetName:P?.value,value:h===void 0?b?.value:h.value}}function J0t(f,h,b){try{return oJ(b)}catch(w){throw kM.isErrorOfKind(w,F3.missingInjectionDecorator)?new kM(F3.missingInjectionDecorator,`Expected a single @inject, @multiInject or @unmanaged decorator at type "${f.name}" at constructor arguments at index "${h.toString()}"`,{cause:w}):w}}function Vzt(f){const h=N3(f,"design:paramtypes"),b=N3(f,"inversify:tagged"),w=[];if(b!==void 0)for(const[m,P]of Object.entries(b)){const g=parseInt(m);w[g]=J0t(f,g,P)}if(h!==void 0){for(let m=0;mNumber.MIN_SAFE_INTEGER)):Sht(Object,Kme,m,(P=>P+1)),m})(),this.#i=h,this.#t=void 0,this.#e=b,this.#r=new Jzt(typeof h=="string"?h:h.toString().slice(7,-1)),this.#o=w}get id(){return this.#n}get identifier(){return this.#i}get metadata(){return this.#t===void 0&&(this.#t=Yzt(this.#e)),this.#t}get name(){return this.#r}get type(){return this.#o}get serviceIdentifier(){return Hzt.is(this.#e.value)?this.#e.value.unwrap():this.#e.value}getCustomTags(){return[...this.#e.tags.entries()].map((([h,b])=>({key:h,value:b})))}getNamedTag(){return this.#e.name===void 0?null:{key:rJ,value:this.#e.name}}hasTag(h){return this.metadata.some((b=>b.key===h))}isArray(){return this.#e.kind===wg.multipleInjection}isNamed(){return this.#e.name!==void 0}isOptional(){return this.#e.optional}isTagged(){return this.#e.tags.size>0}matchesArray(h){return this.isArray()&&this.#e.value===h}matchesNamedTag(h){return this.#e.name===h}matchesTag(h){return b=>this.metadata.some((w=>w.key===h&&w.value===b))}};const tpt=f=>(function(h,b){return function(w){const m=h(w);let P=Pht(w);for(;P!==void 0&&P!==Object;){const E=b(P);for(const[C,T]of E)m.properties.has(C)||m.properties.set(C,T);P=Pht(P)}const g=[];for(const E of m.constructorArguments)if(E.kind!==wg.unmanaged){const C=E.targetName??"";g.push(new xX(C,E,"ConstructorArgument"))}for(const[E,C]of m.properties)if(C.kind!==wg.unmanaged){const T=C.targetName??E;g.push(new xX(T,C,"ClassProperty"))}return g}})(f===void 0?Gzt:h=>Wzt(h,f),f===void 0?Z0t:h=>ept(h,f)),wm="named",Qzt="unmanaged",npt="optional",ipt="inject",rpt="multi_inject",opt="inversify:tagged",cpt="inversify:tagged_props",Mht="inversify:paramtypes",spt="design:paramtypes",Cht="post_construct",jve="pre_destroy",nl={Request:"Request",Singleton:"Singleton",Transient:"Transient"},Ys={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"},upt={ConstructorArgument:"ConstructorArgument",Variable:"Variable"};let Zzt=0;function XL(){return Zzt++}class Mye{id;moduleId;activated;serviceIdentifier;implementationType;cache;dynamicValue;scope;type;factory;provider;constraint;onActivation;onDeactivation;constructor(h,b){this.id=XL(),this.activated=!1,this.serviceIdentifier=h,this.scope=b,this.type=Ys.Invalid,this.constraint=w=>!0,this.implementationType=null,this.cache=null,this.factory=null,this.provider=null,this.onActivation=null,this.onDeactivation=null,this.dynamicValue=null}clone(){const h=new Mye(this.serviceIdentifier,this.scope);return h.activated=h.scope===nl.Singleton&&this.activated,h.implementationType=this.implementationType,h.dynamicValue=this.dynamicValue,h.scope=this.scope,h.type=this.type,h.factory=this.factory,h.provider=this.provider,h.constraint=this.constraint,h.onActivation=this.onActivation,h.onDeactivation=this.onDeactivation,h.cache=this.cache,h}}const apt="Metadata key was used more than once in a parameter:",Iht="NULL argument",Tht="Key Not Found",eVt="Ambiguous match found for serviceIdentifier:",tVt="No matching bindings found for serviceIdentifier:",lpt="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.",Ave=(f,h)=>`onDeactivation() error in class ${f}: ${h}`;class nVt{getConstructorMetadata(h){return{compilerGeneratedMetadata:Reflect.getMetadata(spt,h)??[],userGeneratedMetadata:Reflect.getMetadata(opt,h)??{}}}getPropertiesMetadata(h){return Reflect.getMetadata(cpt,h)??{}}}var aA;function fpt(f){return f instanceof RangeError||f.message==="Maximum call stack size exceeded"}(function(f){f[f.MultipleBindingsAvailable=2]="MultipleBindingsAvailable",f[f.NoBindingsAvailable=0]="NoBindingsAvailable",f[f.OnlyOneBindingAvailable=1]="OnlyOneBindingAvailable"})(aA||(aA={}));function bS(f){return typeof f=="function"?f.name:typeof f=="symbol"?f.toString():f}function jht(f,h,b){let w="";const m=b(f,h);return m.length!==0&&(w=` +Registered bindings:`,m.forEach((P=>{let g="Object";P.implementationType!==null&&(g=gpt(P.implementationType)),w=`${w} + ${g}`,P.constraint.metaData&&(w=`${w} - ${P.constraint.metaData}`)}))),w}function hpt(f,h){return f.parentRequest!==null&&(f.parentRequest.serviceIdentifier===h||hpt(f.parentRequest,h))}function dpt(f){f.childRequests.forEach((h=>{if(hpt(f,h.serviceIdentifier)){const b=(function(w){return(function P(g,E=[]){const C=bS(g.serviceIdentifier);return E.push(C),g.parentRequest!==null?P(g.parentRequest,E):E})(w).reverse().join(" --> ")})(h);throw new Error(`Circular dependency found: ${b}`)}dpt(h)}))}function gpt(f){if(f.name!=null&&f.name!=="")return f.name;{const h=f.toString(),b=h.match(/^function\s*([^\s(]+)/);return b===null?`Anonymous function: ${h}`:b[1]}}function Aht(f){return`{"key":"${f.key.toString()}","value":"${f.value.toString()}"}`}class bpt{id;container;plan;currentRequest;constructor(h){this.id=XL(),this.container=h}addPlan(h){this.plan=h}setCurrentRequest(h){this.currentRequest=h}}class lA{key;value;constructor(h,b){this.key=h,this.value=b}toString(){return this.key===wm?`named: ${String(this.value).toString()} `:`tagged: { key:${this.key.toString()}, value: ${String(this.value)} }`}}class iVt{parentContext;rootRequest;constructor(h,b){this.parentContext=h,this.rootRequest=b}}function ppt(f,h){const b=(function(E){return Object.getPrototypeOf(E.prototype)?.constructor})(h);if(b===void 0||b===Object)return 0;const w=tpt(f)(b),m=w.map((E=>E.metadata.filter((C=>C.key===Qzt)))),P=[].concat.apply([],m).length,g=w.length-P;return g>0?g:ppt(f,b)}class JL{id;serviceIdentifier;parentContext;parentRequest;bindings;childRequests;target;requestScope;constructor(h,b,w,m,P){this.id=XL(),this.serviceIdentifier=h,this.parentContext=b,this.parentRequest=w,this.target=P,this.childRequests=[],this.bindings=Array.isArray(m)?m:[m],this.requestScope=w===null?new Map:null}addChildRequest(h,b,w){const m=new JL(h,this.parentContext,this,b,w);return this.childRequests.push(m),m}}function LX(f){return f._bindingDictionary}function Oht(f,h,b,w,m){let P=jL(b.container,m.serviceIdentifier),g=[];return P.length===aA.NoBindingsAvailable&&b.container.options.autoBindInjectable===!0&&typeof m.serviceIdentifier=="function"&&f.getConstructorMetadata(m.serviceIdentifier).compilerGeneratedMetadata&&(b.container.bind(m.serviceIdentifier).toSelf(),P=jL(b.container,m.serviceIdentifier)),g=h?P:P.filter((E=>{const C=new JL(E.serviceIdentifier,b,w,E,m);return E.constraint(C)})),(function(E,C,T,M,_){switch(C.length){case aA.NoBindingsAvailable:if(M.isOptional())return C;{const I=bS(E);let O=tVt;throw O+=(function(j,k){if(k.isTagged()||k.isNamed()){let x="";const R=k.getNamedTag(),H=k.getCustomTags();return R!==null&&(x+=Aht(R)+` +`),H!==null&&H.forEach((F=>{x+=Aht(F)+` +`})),` ${j} + ${j} - ${x}`}return` ${j}`})(I,M),O+=jht(_,I,jL),T!==null&&(O+=` +Trying to resolve bindings for "${bS(T.serviceIdentifier)}"`),new Error(O)}case aA.OnlyOneBindingAvailable:return C;case aA.MultipleBindingsAvailable:default:if(M.isArray())return C;{const I=bS(E);let O=`${eVt} ${I}`;throw O+=jht(_,I,jL),new Error(O)}}})(m.serviceIdentifier,g,w,m,b.container),g}function wpt(f,h){const b=h.isMultiInject?rpt:ipt,w=[new lA(b,f)];return h.customTag!==void 0&&w.push(new lA(h.customTag.key,h.customTag.value)),h.isOptional===!0&&w.push(new lA(npt,!0)),w}function mpt(f,h,b,w,m,P){let g,E;if(m===null){g=Oht(f,h,w,null,P),E=new JL(b,w,null,g,P);const C=new iVt(w,E);w.addPlan(C)}else g=Oht(f,h,w,m,P),E=m.addChildRequest(P.serviceIdentifier,g,P);g.forEach((C=>{let T=null;if(P.isArray())T=E.addChildRequest(C.serviceIdentifier,C,P);else{if(C.cache!==null)return;T=E}if(C.type===Ys.Instance&&C.implementationType!==null){const M=(function(_,I){return tpt(_)(I)})(f,C.implementationType);if(w.container.options.skipBaseClassChecks!==!0){const _=ppt(f,C.implementationType);if(M.length<_){const I=`The number of constructor arguments in the derived class ${gpt(C.implementationType)} must be >= than the number of constructor arguments of its base class.`;throw new Error(I)}}M.forEach((_=>{mpt(f,!1,_.serviceIdentifier,w,T,_)}))}}))}function jL(f,h){let b=[];const w=LX(f);return w.hasKey(h)?b=w.get(h):f.parent!==null&&(b=jL(f.parent,h)),b}function rVt(f,h,b,w,m,P=!1){const g=new bpt(h),E=(function(C,T,M){const _=wpt(T,M),I=oJ(_);if(I.kind===wg.unmanaged)throw new Error("Unexpected metadata when creating target");return new xX("",I,C)})(b,w,m);try{return mpt(f,P,w,g,null,E),g}catch(C){throw fpt(C)&&dpt(g.plan.rootRequest),C}}function bg(f){return(typeof f=="object"&&f!==null||typeof f=="function")&&typeof f.then=="function"}function vpt(f){return!!bg(f)||Array.isArray(f)&&f.some(bg)}const oVt=(f,h,b)=>{f.has(h.id)||f.set(h.id,b)},cVt=(f,h)=>{f.cache=h,f.activated=!0,bg(h)&&sVt(f,h)},sVt=async(f,h)=>{try{const b=await h;f.cache=b}catch(b){throw f.cache=null,f.activated=!1,b}};var kL;(function(f){f.DynamicValue="toDynamicValue",f.Factory="toFactory",f.Provider="toProvider"})(kL||(kL={}));function uVt(f,h,b){let w;if(h.length>0){const m=(function(g,E){return g.reduce(((C,T)=>{const M=E(T);return T.target.type===upt.ConstructorArgument?C.constructorInjections.push(M):(C.propertyRequests.push(T),C.propertyInjections.push(M)),C.isAsync||(C.isAsync=vpt(M)),C}),{constructorInjections:[],isAsync:!1,propertyInjections:[],propertyRequests:[]})})(h,b),P={...m,constr:f};w=m.isAsync?(async function(g){const E=await kht(g.constructorInjections),C=await kht(g.propertyInjections);return Dht({...g,constructorInjections:E,propertyInjections:C})})(P):Dht(P)}else w=new f;return w}function Dht(f){const h=new f.constr(...f.constructorInjections);return f.propertyRequests.forEach(((b,w)=>{const m=b.target.identifier,P=f.propertyInjections[w];b.target.isOptional()&&P===void 0||(h[m]=P)})),h}async function kht(f){const h=[];for(const b of f)Array.isArray(b)?h.push(Promise.all(b)):h.push(b);return Promise.all(h)}function Rht(f,h){const b=(function(w,m){if(Reflect.hasMetadata(Cht,w)){const E=Reflect.getMetadata(Cht,w);try{return m[E.value]?.()}catch(C){if(C instanceof Error)throw new Error((P=w.name,g=C.message,`@postConstruct error in class ${P}: ${g}`))}}var P,g})(f,h);return bg(b)?b.then((()=>h)):h}function aVt(f,h){f.scope!==nl.Singleton&&(function(b,w){const m=`Class cannot be instantiated in ${b.scope===nl.Request?"request":"transient"} scope.`;if(typeof b.onDeactivation=="function")throw new Error(Ave(w.name,m));if(Reflect.hasMetadata(jve,w))throw new Error(`@preDestroy error in class ${w.name}: ${m}`)})(f,h)}const Cye=f=>h=>{h.parentContext.setCurrentRequest(h);const b=h.bindings,w=h.childRequests,m=h.target&&h.target.isArray(),P=!(h.parentRequest&&h.parentRequest.target&&h.target&&h.parentRequest.target.matchesArray(h.target.serviceIdentifier));if(m&&P)return w.map((g=>Cye(f)(g)));{if(h.target.isOptional()&&b.length===0)return;const g=b[0];return dVt(f,h,g)}},lVt=(f,h)=>{const b=(w=>{switch(w.type){case Ys.Factory:return{factory:w.factory,factoryType:kL.Factory};case Ys.Provider:return{factory:w.provider,factoryType:kL.Provider};case Ys.DynamicValue:return{factory:w.dynamicValue,factoryType:kL.DynamicValue};default:throw new Error(`Unexpected factory type ${w.type}`)}})(f);return((w,m)=>{try{return w()}catch(P){throw fpt(P)?m():P}})((()=>b.factory.bind(f)(h)),(()=>{return new Error((w=b.factoryType,m=h.currentRequest.serviceIdentifier.toString(),`It looks like there is a circular dependency in one of the '${w}' bindings. Please investigate bindings with service identifier '${m}'.`));var w,m}))},fVt=(f,h,b)=>{let w;const m=h.childRequests;switch((P=>{let g=null;switch(P.type){case Ys.ConstantValue:case Ys.Function:g=P.cache;break;case Ys.Constructor:case Ys.Instance:g=P.implementationType;break;case Ys.DynamicValue:g=P.dynamicValue;break;case Ys.Provider:g=P.provider;break;case Ys.Factory:g=P.factory}if(g===null){const E=bS(P.serviceIdentifier);throw new Error(`Invalid binding type: ${E}`)}})(b),b.type){case Ys.ConstantValue:case Ys.Function:w=b.cache;break;case Ys.Constructor:w=b.implementationType;break;case Ys.Instance:w=(function(P,g,E,C){aVt(P,g);const T=uVt(g,E,C);return bg(T)?T.then((M=>Rht(g,M))):Rht(g,T)})(b,b.implementationType,m,Cye(f));break;default:w=lVt(b,h.parentContext)}return w},hVt=(f,h,b)=>{let w=((m,P)=>P.scope===nl.Singleton&&P.activated?P.cache:P.scope===nl.Request&&m.has(P.id)?m.get(P.id):null)(f,h);return w!==null||(w=b(),((m,P,g)=>{P.scope===nl.Singleton&&cVt(P,g),P.scope===nl.Request&&oVt(m,P,g)})(f,h,w)),w},dVt=(f,h,b)=>hVt(f,b,(()=>{let w=fVt(f,h,b);return w=bg(w)?w.then((m=>xht(h,b,m))):xht(h,b,w),w}));function xht(f,h,b){let w=gVt(f.parentContext,h,b);const m=wVt(f.parentContext.container);let P,g=m.next();do{P=g.value;const E=f.parentContext,C=f.serviceIdentifier,T=pVt(P,C);w=bg(w)?ypt(T,E,w):bVt(T,E,w),g=m.next()}while(g.done!==!0&&!LX(P).hasKey(f.serviceIdentifier));return w}const gVt=(f,h,b)=>{let w;return w=typeof h.onActivation=="function"?h.onActivation(f,b):b,w},bVt=(f,h,b)=>{let w=f.next();for(;w.done!==!0;){if(bg(b=w.value(h,b)))return ypt(f,h,b);w=f.next()}return b},ypt=async(f,h,b)=>{let w=await b,m=f.next();for(;m.done!==!0;)w=await m.value(h,w),m=f.next();return w},pVt=(f,h)=>{const b=f._activations;return b.hasKey(h)?b.get(h).values():[].values()},wVt=f=>{const h=[f];let b=f.parent;for(;b!==null;)h.push(b),b=b.parent;return{next:()=>{const w=h.pop();return w!==void 0?{done:!1,value:w}:{done:!0,value:void 0}}}},I3=(f,h)=>{const b=f.parentRequest;return b!==null&&(!!h(b)||I3(b,h))},AL=f=>h=>{const b=w=>w!==null&&w.target!==null&&w.target.matchesTag(f)(h);return b.metaData=new lA(f,h),b},IY=AL(wm),qme=f=>h=>{let b=null;if(h!==null){if(b=h.bindings[0],typeof f=="string")return b.serviceIdentifier===f;{const w=h.bindings[0].implementationType;return f===w}}return!1};class NX{_binding;constructor(h){this._binding=h}when(h){return this._binding.constraint=h,new ph(this._binding)}whenTargetNamed(h){return this._binding.constraint=IY(h),new ph(this._binding)}whenTargetIsDefault(){return this._binding.constraint=h=>h===null?!1:h.target!==null&&!h.target.isNamed()&&!h.target.isTagged(),new ph(this._binding)}whenTargetTagged(h,b){return this._binding.constraint=AL(h)(b),new ph(this._binding)}whenInjectedInto(h){return this._binding.constraint=b=>b!==null&&qme(h)(b.parentRequest),new ph(this._binding)}whenParentNamed(h){return this._binding.constraint=b=>b!==null&&IY(h)(b.parentRequest),new ph(this._binding)}whenParentTagged(h,b){return this._binding.constraint=w=>w!==null&&AL(h)(b)(w.parentRequest),new ph(this._binding)}whenAnyAncestorIs(h){return this._binding.constraint=b=>b!==null&&I3(b,qme(h)),new ph(this._binding)}whenNoAncestorIs(h){return this._binding.constraint=b=>b!==null&&!I3(b,qme(h)),new ph(this._binding)}whenAnyAncestorNamed(h){return this._binding.constraint=b=>b!==null&&I3(b,IY(h)),new ph(this._binding)}whenNoAncestorNamed(h){return this._binding.constraint=b=>b!==null&&!I3(b,IY(h)),new ph(this._binding)}whenAnyAncestorTagged(h,b){return this._binding.constraint=w=>w!==null&&I3(w,AL(h)(b)),new ph(this._binding)}whenNoAncestorTagged(h,b){return this._binding.constraint=w=>w!==null&&!I3(w,AL(h)(b)),new ph(this._binding)}whenAnyAncestorMatches(h){return this._binding.constraint=b=>b!==null&&I3(b,h),new ph(this._binding)}whenNoAncestorMatches(h){return this._binding.constraint=b=>b!==null&&!I3(b,h),new ph(this._binding)}}class ph{_binding;constructor(h){this._binding=h}onActivation(h){return this._binding.onActivation=h,new NX(this._binding)}onDeactivation(h){return this._binding.onDeactivation=h,new NX(this._binding)}}class T3{_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(h){this._binding=h,this._bindingWhenSyntax=new NX(this._binding),this._bindingOnSyntax=new ph(this._binding)}when(h){return this._bindingWhenSyntax.when(h)}whenTargetNamed(h){return this._bindingWhenSyntax.whenTargetNamed(h)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(h,b){return this._bindingWhenSyntax.whenTargetTagged(h,b)}whenInjectedInto(h){return this._bindingWhenSyntax.whenInjectedInto(h)}whenParentNamed(h){return this._bindingWhenSyntax.whenParentNamed(h)}whenParentTagged(h,b){return this._bindingWhenSyntax.whenParentTagged(h,b)}whenAnyAncestorIs(h){return this._bindingWhenSyntax.whenAnyAncestorIs(h)}whenNoAncestorIs(h){return this._bindingWhenSyntax.whenNoAncestorIs(h)}whenAnyAncestorNamed(h){return this._bindingWhenSyntax.whenAnyAncestorNamed(h)}whenAnyAncestorTagged(h,b){return this._bindingWhenSyntax.whenAnyAncestorTagged(h,b)}whenNoAncestorNamed(h){return this._bindingWhenSyntax.whenNoAncestorNamed(h)}whenNoAncestorTagged(h,b){return this._bindingWhenSyntax.whenNoAncestorTagged(h,b)}whenAnyAncestorMatches(h){return this._bindingWhenSyntax.whenAnyAncestorMatches(h)}whenNoAncestorMatches(h){return this._bindingWhenSyntax.whenNoAncestorMatches(h)}onActivation(h){return this._bindingOnSyntax.onActivation(h)}onDeactivation(h){return this._bindingOnSyntax.onDeactivation(h)}}class mVt{_binding;constructor(h){this._binding=h}inRequestScope(){return this._binding.scope=nl.Request,new T3(this._binding)}inSingletonScope(){return this._binding.scope=nl.Singleton,new T3(this._binding)}inTransientScope(){return this._binding.scope=nl.Transient,new T3(this._binding)}}class Lht{_bindingInSyntax;_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(h){this._binding=h,this._bindingWhenSyntax=new NX(this._binding),this._bindingOnSyntax=new ph(this._binding),this._bindingInSyntax=new mVt(h)}inRequestScope(){return this._bindingInSyntax.inRequestScope()}inSingletonScope(){return this._bindingInSyntax.inSingletonScope()}inTransientScope(){return this._bindingInSyntax.inTransientScope()}when(h){return this._bindingWhenSyntax.when(h)}whenTargetNamed(h){return this._bindingWhenSyntax.whenTargetNamed(h)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(h,b){return this._bindingWhenSyntax.whenTargetTagged(h,b)}whenInjectedInto(h){return this._bindingWhenSyntax.whenInjectedInto(h)}whenParentNamed(h){return this._bindingWhenSyntax.whenParentNamed(h)}whenParentTagged(h,b){return this._bindingWhenSyntax.whenParentTagged(h,b)}whenAnyAncestorIs(h){return this._bindingWhenSyntax.whenAnyAncestorIs(h)}whenNoAncestorIs(h){return this._bindingWhenSyntax.whenNoAncestorIs(h)}whenAnyAncestorNamed(h){return this._bindingWhenSyntax.whenAnyAncestorNamed(h)}whenAnyAncestorTagged(h,b){return this._bindingWhenSyntax.whenAnyAncestorTagged(h,b)}whenNoAncestorNamed(h){return this._bindingWhenSyntax.whenNoAncestorNamed(h)}whenNoAncestorTagged(h,b){return this._bindingWhenSyntax.whenNoAncestorTagged(h,b)}whenAnyAncestorMatches(h){return this._bindingWhenSyntax.whenAnyAncestorMatches(h)}whenNoAncestorMatches(h){return this._bindingWhenSyntax.whenNoAncestorMatches(h)}onActivation(h){return this._bindingOnSyntax.onActivation(h)}onDeactivation(h){return this._bindingOnSyntax.onDeactivation(h)}}class vVt{_binding;constructor(h){this._binding=h}to(h){return this._binding.type=Ys.Instance,this._binding.implementationType=h,new Lht(this._binding)}toSelf(){if(typeof this._binding.serviceIdentifier!="function")throw new Error("The toSelf function can only be applied when a constructor is used as service identifier");const h=this._binding.serviceIdentifier;return this.to(h)}toConstantValue(h){return this._binding.type=Ys.ConstantValue,this._binding.cache=h,this._binding.dynamicValue=null,this._binding.implementationType=null,this._binding.scope=nl.Singleton,new T3(this._binding)}toDynamicValue(h){return this._binding.type=Ys.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=h,this._binding.implementationType=null,new Lht(this._binding)}toConstructor(h){return this._binding.type=Ys.Constructor,this._binding.implementationType=h,this._binding.scope=nl.Singleton,new T3(this._binding)}toFactory(h){return this._binding.type=Ys.Factory,this._binding.factory=h,this._binding.scope=nl.Singleton,new T3(this._binding)}toFunction(h){if(typeof h!="function")throw new Error("Value provided to function binding must be a function!");const b=this.toConstantValue(h);return this._binding.type=Ys.Function,this._binding.scope=nl.Singleton,b}toAutoFactory(h){return this._binding.type=Ys.Factory,this._binding.factory=b=>()=>b.container.get(h),this._binding.scope=nl.Singleton,new T3(this._binding)}toAutoNamedFactory(h){return this._binding.type=Ys.Factory,this._binding.factory=b=>w=>b.container.getNamed(h,w),new T3(this._binding)}toProvider(h){return this._binding.type=Ys.Provider,this._binding.provider=h,this._binding.scope=nl.Singleton,new T3(this._binding)}toService(h){this._binding.type=Ys.DynamicValue,Object.defineProperty(this._binding,"cache",{configurable:!0,enumerable:!0,get:()=>null,set(b){}}),this._binding.dynamicValue=b=>{try{return b.container.get(h)}catch{return b.container.getAsync(h)}},this._binding.implementationType=null}}class Iye{bindings;activations;deactivations;middleware;moduleActivationStore;static of(h,b,w,m,P){const g=new Iye;return g.bindings=h,g.middleware=b,g.deactivations=m,g.activations=w,g.moduleActivationStore=P,g}}class j3{_map;constructor(){this._map=new Map}getMap(){return this._map}add(h,b){if(this._checkNonNulish(h),b==null)throw new Error(Iht);const w=this._map.get(h);w!==void 0?w.push(b):this._map.set(h,[b])}get(h){this._checkNonNulish(h);const b=this._map.get(h);if(b!==void 0)return b;throw new Error(Tht)}remove(h){if(this._checkNonNulish(h),!this._map.delete(h))throw new Error(Tht)}removeIntersection(h){this.traverse(((b,w)=>{const m=h.hasKey(b)?h.get(b):void 0;if(m!==void 0){const P=w.filter((g=>!m.some((E=>g===E))));this._setValue(b,P)}}))}removeByCondition(h){const b=[];return this._map.forEach(((w,m)=>{const P=[];for(const g of w)h(g)?b.push(g):P.push(g);this._setValue(m,P)})),b}hasKey(h){return this._checkNonNulish(h),this._map.has(h)}clone(){const h=new j3;return this._map.forEach(((b,w)=>{b.forEach((m=>{var P;h.add(w,typeof(P=m)=="object"&&P!==null&&"clone"in P&&typeof P.clone=="function"?m.clone():m)}))})),h}traverse(h){this._map.forEach(((b,w)=>{h(w,b)}))}_checkNonNulish(h){if(h==null)throw new Error(Iht)}_setValue(h,b){b.length>0?this._map.set(h,b):this._map.delete(h)}}class Tye{_map=new Map;remove(h){const b=this._map.get(h);return b===void 0?this._getEmptyHandlersStore():(this._map.delete(h),b)}addDeactivation(h,b,w){this._getModuleActivationHandlers(h).onDeactivations.add(b,w)}addActivation(h,b,w){this._getModuleActivationHandlers(h).onActivations.add(b,w)}clone(){const h=new Tye;return this._map.forEach(((b,w)=>{h._map.set(w,{onActivations:b.onActivations.clone(),onDeactivations:b.onDeactivations.clone()})})),h}_getModuleActivationHandlers(h){let b=this._map.get(h);return b===void 0&&(b=this._getEmptyHandlersStore(),this._map.set(h,b)),b}_getEmptyHandlersStore(){return{onActivations:new j3,onDeactivations:new j3}}}class FX{id;parent;options;_middleware;_bindingDictionary;_activations;_deactivations;_snapshots;_metadataReader;_moduleActivationStore;constructor(h){const b=h||{};if(typeof b!="object")throw new Error("Invalid Container constructor argument. Container options must be an object.");if(b.defaultScope===void 0)b.defaultScope=nl.Transient;else if(b.defaultScope!==nl.Singleton&&b.defaultScope!==nl.Transient&&b.defaultScope!==nl.Request)throw new Error('Invalid Container option. Default scope must be a string ("singleton" or "transient").');if(b.autoBindInjectable===void 0)b.autoBindInjectable=!1;else if(typeof b.autoBindInjectable!="boolean")throw new Error("Invalid Container option. Auto bind injectable must be a boolean");if(b.skipBaseClassChecks===void 0)b.skipBaseClassChecks=!1;else if(typeof b.skipBaseClassChecks!="boolean")throw new Error("Invalid Container option. Skip base check must be a boolean");this.options={autoBindInjectable:b.autoBindInjectable,defaultScope:b.defaultScope,skipBaseClassChecks:b.skipBaseClassChecks},this.id=XL(),this._bindingDictionary=new j3,this._snapshots=[],this._middleware=null,this._activations=new j3,this._deactivations=new j3,this.parent=null,this._metadataReader=new nVt,this._moduleActivationStore=new Tye}static merge(h,b,...w){const m=new FX,P=[h,b,...w].map((E=>LX(E))),g=LX(m);return P.forEach((E=>{var C;C=g,E.traverse(((T,M)=>{M.forEach((_=>{C.add(_.serviceIdentifier,_.clone())}))}))})),m}load(...h){const b=this._getContainerModuleHelpersFactory();for(const w of h){const m=b(w.id);w.registry(m.bindFunction,m.unbindFunction,m.isboundFunction,m.rebindFunction,m.unbindAsyncFunction,m.onActivationFunction,m.onDeactivationFunction)}}async loadAsync(...h){const b=this._getContainerModuleHelpersFactory();for(const w of h){const m=b(w.id);await w.registry(m.bindFunction,m.unbindFunction,m.isboundFunction,m.rebindFunction,m.unbindAsyncFunction,m.onActivationFunction,m.onDeactivationFunction)}}unload(...h){h.forEach((b=>{const w=this._removeModuleBindings(b.id);this._deactivateSingletons(w),this._removeModuleHandlers(b.id)}))}async unloadAsync(...h){for(const b of h){const w=this._removeModuleBindings(b.id);await this._deactivateSingletonsAsync(w),this._removeModuleHandlers(b.id)}}bind(h){return this._bind(this._buildBinding(h))}rebind(h){return this.unbind(h),this.bind(h)}async rebindAsync(h){return await this.unbindAsync(h),this.bind(h)}unbind(h){if(this._bindingDictionary.hasKey(h)){const b=this._bindingDictionary.get(h);this._deactivateSingletons(b)}this._removeServiceFromDictionary(h)}async unbindAsync(h){if(this._bindingDictionary.hasKey(h)){const b=this._bindingDictionary.get(h);await this._deactivateSingletonsAsync(b)}this._removeServiceFromDictionary(h)}unbindAll(){this._bindingDictionary.traverse(((h,b)=>{this._deactivateSingletons(b)})),this._bindingDictionary=new j3}async unbindAllAsync(){const h=[];this._bindingDictionary.traverse(((b,w)=>{h.push(this._deactivateSingletonsAsync(w))})),await Promise.all(h),this._bindingDictionary=new j3}onActivation(h,b){this._activations.add(h,b)}onDeactivation(h,b){this._deactivations.add(h,b)}isBound(h){let b=this._bindingDictionary.hasKey(h);return!b&&this.parent&&(b=this.parent.isBound(h)),b}isCurrentBound(h){return this._bindingDictionary.hasKey(h)}isBoundNamed(h,b){return this.isBoundTagged(h,wm,b)}isBoundTagged(h,b,w){let m=!1;if(this._bindingDictionary.hasKey(h)){const P=this._bindingDictionary.get(h),g=(function(E,C,T){const M=wpt(C,T),_=oJ(M);if(_.kind===wg.unmanaged)throw new Error("Unexpected metadata when creating target");const I=new xX("",_,"Variable"),O=new bpt(E);return new JL(C,O,null,[],I)})(this,h,{customTag:{key:b,value:w},isMultiInject:!1});m=P.some((E=>E.constraint(g)))}return!m&&this.parent&&(m=this.parent.isBoundTagged(h,b,w)),m}snapshot(){this._snapshots.push(Iye.of(this._bindingDictionary.clone(),this._middleware,this._activations.clone(),this._deactivations.clone(),this._moduleActivationStore.clone()))}restore(){const h=this._snapshots.pop();if(h===void 0)throw new Error("No snapshot available to restore.");this._bindingDictionary=h.bindings,this._activations=h.activations,this._deactivations=h.deactivations,this._middleware=h.middleware,this._moduleActivationStore=h.moduleActivationStore}createChild(h){const b=new FX(h||this.options);return b.parent=this,b}applyMiddleware(...h){const b=this._middleware?this._middleware:this._planAndResolve();this._middleware=h.reduce(((w,m)=>m(w)),b)}applyCustomMetadataReader(h){this._metadataReader=h}get(h){const b=this._getNotAllArgs(h,!1,!1);return this._getButThrowIfAsync(b)}async getAsync(h){const b=this._getNotAllArgs(h,!1,!1);return this._get(b)}getTagged(h,b,w){const m=this._getNotAllArgs(h,!1,!1,b,w);return this._getButThrowIfAsync(m)}async getTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!1,!1,b,w);return this._get(m)}getNamed(h,b){return this.getTagged(h,wm,b)}async getNamedAsync(h,b){return this.getTaggedAsync(h,wm,b)}getAll(h,b){const w=this._getAllArgs(h,b,!1);return this._getButThrowIfAsync(w)}async getAllAsync(h,b){const w=this._getAllArgs(h,b,!1);return this._getAll(w)}getAllTagged(h,b,w){const m=this._getNotAllArgs(h,!0,!1,b,w);return this._getButThrowIfAsync(m)}async getAllTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!0,!1,b,w);return this._getAll(m)}getAllNamed(h,b){return this.getAllTagged(h,wm,b)}async getAllNamedAsync(h,b){return this.getAllTaggedAsync(h,wm,b)}resolve(h){const b=this.isBound(h);b||this.bind(h).toSelf();const w=this.get(h);return b||this.unbind(h),w}tryGet(h){const b=this._getNotAllArgs(h,!1,!0);return this._getButThrowIfAsync(b)}async tryGetAsync(h){const b=this._getNotAllArgs(h,!1,!0);return this._get(b)}tryGetTagged(h,b,w){const m=this._getNotAllArgs(h,!1,!0,b,w);return this._getButThrowIfAsync(m)}async tryGetTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!1,!0,b,w);return this._get(m)}tryGetNamed(h,b){return this.tryGetTagged(h,wm,b)}async tryGetNamedAsync(h,b){return this.tryGetTaggedAsync(h,wm,b)}tryGetAll(h,b){const w=this._getAllArgs(h,b,!0);return this._getButThrowIfAsync(w)}async tryGetAllAsync(h,b){const w=this._getAllArgs(h,b,!0);return this._getAll(w)}tryGetAllTagged(h,b,w){const m=this._getNotAllArgs(h,!0,!0,b,w);return this._getButThrowIfAsync(m)}async tryGetAllTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!0,!0,b,w);return this._getAll(m)}tryGetAllNamed(h,b){return this.tryGetAllTagged(h,wm,b)}async tryGetAllNamedAsync(h,b){return this.tryGetAllTaggedAsync(h,wm,b)}_preDestroy(h,b){if(h!==void 0&&Reflect.hasMetadata(jve,h)){const w=Reflect.getMetadata(jve,h);return b[w.value]?.()}}_removeModuleHandlers(h){const b=this._moduleActivationStore.remove(h);this._activations.removeIntersection(b.onActivations),this._deactivations.removeIntersection(b.onDeactivations)}_removeModuleBindings(h){return this._bindingDictionary.removeByCondition((b=>b.moduleId===h))}_deactivate(h,b){const w=b==null?void 0:Object.getPrototypeOf(b).constructor;try{if(this._deactivations.hasKey(h.serviceIdentifier)){const P=this._deactivateContainer(b,this._deactivations.get(h.serviceIdentifier).values());if(bg(P))return this._handleDeactivationError(P.then((async()=>this._propagateContainerDeactivationThenBindingAndPreDestroyAsync(h,b,w))),h.serviceIdentifier)}const m=this._propagateContainerDeactivationThenBindingAndPreDestroy(h,b,w);if(bg(m))return this._handleDeactivationError(m,h.serviceIdentifier)}catch(m){if(m instanceof Error)throw new Error(Ave(bS(h.serviceIdentifier),m.message))}}async _handleDeactivationError(h,b){try{await h}catch(w){if(w instanceof Error)throw new Error(Ave(bS(b),w.message))}}_deactivateContainer(h,b){let w=b.next();for(;typeof w.value=="function";){const m=w.value(h);if(bg(m))return m.then((async()=>this._deactivateContainerAsync(h,b)));w=b.next()}}async _deactivateContainerAsync(h,b){let w=b.next();for(;typeof w.value=="function";)await w.value(h),w=b.next()}_getContainerModuleHelpersFactory(){const h=C=>T=>{const M=this._buildBinding(T);return M.moduleId=C,this._bind(M)},b=()=>C=>{this.unbind(C)},w=()=>async C=>this.unbindAsync(C),m=()=>C=>this.isBound(C),P=C=>{const T=h(C);return M=>(this.unbind(M),T(M))},g=C=>(T,M)=>{this._moduleActivationStore.addActivation(C,T,M),this.onActivation(T,M)},E=C=>(T,M)=>{this._moduleActivationStore.addDeactivation(C,T,M),this.onDeactivation(T,M)};return C=>({bindFunction:h(C),isboundFunction:m(),onActivationFunction:g(C),onDeactivationFunction:E(C),rebindFunction:P(C),unbindAsyncFunction:w(),unbindFunction:b()})}_bind(h){return this._bindingDictionary.add(h.serviceIdentifier,h),new vVt(h)}_buildBinding(h){const b=this.options.defaultScope||nl.Transient;return new Mye(h,b)}async _getAll(h){return Promise.all(this._get(h))}_get(h){const b={...h,contextInterceptor:w=>w,targetType:upt.Variable};if(this._middleware){const w=this._middleware(b);if(w==null)throw new Error("Invalid return type in middleware. Middleware must return!");return w}return this._planAndResolve()(b)}_getButThrowIfAsync(h){const b=this._get(h);if(vpt(b))throw new Error(`You are attempting to construct ${(function(w){return typeof w=="function"?`[function/class ${w.name||""}]`:typeof w=="symbol"?w.toString():`'${w}'`})(h.serviceIdentifier)} in a synchronous way but it has asynchronous dependencies.`);return b}_getAllArgs(h,b,w){return{avoidConstraints:!b?.enforceBindingConstraints,isMultiInject:!0,isOptional:w,serviceIdentifier:h}}_getNotAllArgs(h,b,w,m,P){return{avoidConstraints:!1,isMultiInject:b,isOptional:w,key:m,serviceIdentifier:h,value:P}}_getPlanMetadataFromNextArgs(h){const b={isMultiInject:h.isMultiInject};return h.key!==void 0&&(b.customTag={key:h.key,value:h.value}),h.isOptional===!0&&(b.isOptional=!0),b}_planAndResolve(){return h=>{let b=rVt(this._metadataReader,this,h.targetType,h.serviceIdentifier,this._getPlanMetadataFromNextArgs(h),h.avoidConstraints);return b=h.contextInterceptor(b),(function(m){return Cye(m.plan.rootRequest.requestScope)(m.plan.rootRequest)})(b)}}_deactivateIfSingleton(h){if(h.activated)return bg(h.cache)?h.cache.then((b=>this._deactivate(h,b))):this._deactivate(h,h.cache)}_deactivateSingletons(h){for(const b of h)if(bg(this._deactivateIfSingleton(b)))throw new Error("Attempting to unbind dependency with asynchronous destruction (@preDestroy or onDeactivation)")}async _deactivateSingletonsAsync(h){await Promise.all(h.map((async b=>this._deactivateIfSingleton(b))))}_propagateContainerDeactivationThenBindingAndPreDestroy(h,b,w){return this.parent?this._deactivate.bind(this.parent)(h,b):this._bindingDeactivationAndPreDestroy(h,b,w)}async _propagateContainerDeactivationThenBindingAndPreDestroyAsync(h,b,w){this.parent?await this._deactivate.bind(this.parent)(h,b):await this._bindingDeactivationAndPreDestroyAsync(h,b,w)}_removeServiceFromDictionary(h){try{this._bindingDictionary.remove(h)}catch{throw new Error(`Could not unbind serviceIdentifier: ${bS(h)}`)}}_bindingDeactivationAndPreDestroy(h,b,w){if(typeof h.onDeactivation=="function"){const m=h.onDeactivation(b);if(bg(m))return m.then((()=>this._preDestroy(w,b)))}return this._preDestroy(w,b)}async _bindingDeactivationAndPreDestroyAsync(h,b,w){typeof h.onDeactivation=="function"&&await h.onDeactivation(b),await this._preDestroy(w,b)}}class xf{id;registry;constructor(h){this.id=XL(),this.registry=h}}function yVt(f,h,b,w){(function(m){if(m!==void 0)throw new Error(lpt)})(h),_pt(opt,f,b.toString(),w)}function _Vt(f){let h=[];if(Array.isArray(f)){h=f;const b=(function(w){const m=new Set;for(const P of w){if(m.has(P))return P;m.add(P)}})(h.map((w=>w.key)));if(b!==void 0)throw new Error(`${apt} ${b.toString()}`)}else h=[f];return h}function _pt(f,h,b,w){const m=_Vt(w);let P={};Reflect.hasOwnMetadata(f,h)&&(P=Reflect.getMetadata(f,h));let g=P[b];if(g===void 0)g=[];else for(const E of g)if(m.some((C=>C.key===E.key)))throw new Error(`${apt} ${E.key.toString()}`);g.push(...m),P[b]=g,Reflect.defineMetadata(f,P,h)}function Ept(f){return(h,b,w)=>{typeof w=="number"?yVt(h,b,w,f):(function(m,P,g){if(m.prototype!==void 0)throw new Error(lpt);_pt(cpt,m.constructor,P,g)})(h,b,f)}}function vr(){return function(f){if(Reflect.hasOwnMetadata(Mht,f))throw new Error("Cannot apply @injectable decorator multiple times.");const h=Reflect.getMetadata(spt,f)||[];return Reflect.defineMetadata(Mht,h,f),f}}function Spt(f){return h=>(b,w,m)=>{if(h===void 0){const P=typeof b=="function"?b.name:b.constructor.name;throw new Error(`@inject called with undefined this could mean that the class ${P} has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation.`)}Ept(new lA(f,h))(b,w,m)}}const Et=Spt(ipt);function EVt(){return Ept(new lA(npt,!0))}const cJ=Spt(rpt);var d3={},vM={},Nht;function jye(){if(Nht)return vM;Nht=1,Object.defineProperty(vM,"__esModule",{value:!0}),vM.isLabeledAction=vM.LabeledAction=void 0;class f{constructor(w,m,P){this.label=w,this.actions=m,this.icon=P}}vM.LabeledAction=f;function h(b){return b!==void 0&&b.label!==void 0&&b.actions!==void 0}return vM.isLabeledAction=h,vM}var Qv={},g3={},Hme={},TY={},Fht;function SVt(){if(Fht)return TY;Fht=1,Object.defineProperty(TY,"__esModule",{value:!0}),TY.stringifyServiceIdentifier=f;function f(h){switch(typeof h){case"string":case"symbol":return h.toString();case"function":return h.name;default:throw new Error(`Unexpected ${typeof h} service id type`)}}return TY}var zme={},Bht;function PVt(){return Bht||(Bht=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.LazyServiceIdentifier=f.islazyServiceIdentifierSymbol=void 0,f.islazyServiceIdentifierSymbol=Symbol.for("@inversifyjs/common/islazyServiceIdentifier");class h{[f.islazyServiceIdentifierSymbol];#e;constructor(w){this.#e=w,this[f.islazyServiceIdentifierSymbol]=!0}static is(w){return typeof w=="object"&&w!==null&&w[f.islazyServiceIdentifierSymbol]===!0}unwrap(){return this.#e()}}f.LazyServiceIdentifier=h})(zme)),zme}var $ht;function Ove(){return $ht||($ht=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.stringifyServiceIdentifier=f.LazyServiceIdentifier=void 0;const h=SVt();Object.defineProperty(f,"stringifyServiceIdentifier",{enumerable:!0,get:function(){return h.stringifyServiceIdentifier}});const b=PVt();Object.defineProperty(f,"LazyServiceIdentifier",{enumerable:!0,get:function(){return b.LazyServiceIdentifier}})})(Hme)),Hme}var Vme={},Kht;function Lf(){return Kht||(Kht=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.NON_CUSTOM_TAG_KEYS=f.PRE_DESTROY=f.POST_CONSTRUCT=f.DESIGN_PARAM_TYPES=f.PARAM_TYPES=f.TAGGED_PROP=f.TAGGED=f.MULTI_INJECT_TAG=f.INJECT_TAG=f.OPTIONAL_TAG=f.UNMANAGED_TAG=f.NAME_TAG=f.NAMED_TAG=void 0,f.NAMED_TAG="named",f.NAME_TAG="name",f.UNMANAGED_TAG="unmanaged",f.OPTIONAL_TAG="optional",f.INJECT_TAG="inject",f.MULTI_INJECT_TAG="multi_inject",f.TAGGED="inversify:tagged",f.TAGGED_PROP="inversify:tagged_props",f.PARAM_TYPES="inversify:paramtypes",f.DESIGN_PARAM_TYPES="design:paramtypes",f.POST_CONSTRUCT="post_construct",f.PRE_DESTROY="pre_destroy";function h(){return[f.INJECT_TAG,f.MULTI_INJECT_TAG,f.NAME_TAG,f.UNMANAGED_TAG,f.NAMED_TAG,f.OPTIONAL_TAG]}f.NON_CUSTOM_TAG_KEYS=h()})(Vme)),Vme}var rm={},Wx={},b3={},qht;function Py(){if(qht)return b3;qht=1,Object.defineProperty(b3,"__esModule",{value:!0}),b3.TargetTypeEnum=b3.BindingTypeEnum=b3.BindingScopeEnum=void 0;const f={Request:"Request",Singleton:"Singleton",Transient:"Transient"};b3.BindingScopeEnum=f;const h={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"};b3.BindingTypeEnum=h;const b={ClassProperty:"ClassProperty",ConstructorArgument:"ConstructorArgument",Variable:"Variable"};return b3.TargetTypeEnum=b,b3}var jY={},Hht;function vA(){if(Hht)return jY;Hht=1,Object.defineProperty(jY,"__esModule",{value:!0}),jY.id=h;let f=0;function h(){return f++}return jY}var zht;function MVt(){if(zht)return Wx;zht=1,Object.defineProperty(Wx,"__esModule",{value:!0}),Wx.Binding=void 0;const f=Py(),h=vA();class b{id;moduleId;activated;serviceIdentifier;implementationType;cache;dynamicValue;scope;type;factory;provider;constraint;onActivation;onDeactivation;constructor(m,P){this.id=(0,h.id)(),this.activated=!1,this.serviceIdentifier=m,this.scope=P,this.type=f.BindingTypeEnum.Invalid,this.constraint=g=>!0,this.implementationType=null,this.cache=null,this.factory=null,this.provider=null,this.onActivation=null,this.onDeactivation=null,this.dynamicValue=null}clone(){const m=new b(this.serviceIdentifier,this.scope);return m.activated=m.scope===f.BindingScopeEnum.Singleton?this.activated:!1,m.implementationType=this.implementationType,m.dynamicValue=this.dynamicValue,m.scope=this.scope,m.type=this.type,m.factory=this.factory,m.provider=this.provider,m.constraint=this.constraint,m.onActivation=this.onActivation,m.onDeactivation=this.onDeactivation,m.cache=this.cache,m}}return Wx.Binding=b,Wx}var Oi={},Vht;function vg(){if(Vht)return Oi;Vht=1,Object.defineProperty(Oi,"__esModule",{value:!0}),Oi.STACK_OVERFLOW=Oi.CIRCULAR_DEPENDENCY_IN_FACTORY=Oi.ON_DEACTIVATION_ERROR=Oi.PRE_DESTROY_ERROR=Oi.POST_CONSTRUCT_ERROR=Oi.ASYNC_UNBIND_REQUIRED=Oi.MULTIPLE_POST_CONSTRUCT_METHODS=Oi.MULTIPLE_PRE_DESTROY_METHODS=Oi.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK=Oi.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE=Oi.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE=Oi.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT=Oi.ARGUMENTS_LENGTH_MISMATCH=Oi.INVALID_DECORATOR_OPERATION=Oi.INVALID_TO_SELF_VALUE=Oi.LAZY_IN_SYNC=Oi.INVALID_FUNCTION_BINDING=Oi.INVALID_MIDDLEWARE_RETURN=Oi.NO_MORE_SNAPSHOTS_AVAILABLE=Oi.INVALID_BINDING_TYPE=Oi.CIRCULAR_DEPENDENCY=Oi.UNDEFINED_INJECT_ANNOTATION=Oi.TRYING_TO_RESOLVE_BINDINGS=Oi.NOT_REGISTERED=Oi.CANNOT_UNBIND=Oi.AMBIGUOUS_MATCH=Oi.KEY_NOT_FOUND=Oi.NULL_ARGUMENT=Oi.DUPLICATED_METADATA=Oi.DUPLICATED_INJECTABLE_DECORATOR=void 0,Oi.DUPLICATED_INJECTABLE_DECORATOR="Cannot apply @injectable decorator multiple times.",Oi.DUPLICATED_METADATA="Metadata key was used more than once in a parameter:",Oi.NULL_ARGUMENT="NULL argument",Oi.KEY_NOT_FOUND="Key Not Found",Oi.AMBIGUOUS_MATCH="Ambiguous match found for serviceIdentifier:",Oi.CANNOT_UNBIND="Could not unbind serviceIdentifier:",Oi.NOT_REGISTERED="No matching bindings found for serviceIdentifier:";const f=T=>`Trying to resolve bindings for "${T}"`;Oi.TRYING_TO_RESOLVE_BINDINGS=f;const h=T=>`@inject called with undefined this could mean that the class ${T} has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation.`;Oi.UNDEFINED_INJECT_ANNOTATION=h,Oi.CIRCULAR_DEPENDENCY="Circular dependency found:",Oi.INVALID_BINDING_TYPE="Invalid binding type:",Oi.NO_MORE_SNAPSHOTS_AVAILABLE="No snapshot available to restore.",Oi.INVALID_MIDDLEWARE_RETURN="Invalid return type in middleware. Middleware must return!",Oi.INVALID_FUNCTION_BINDING="Value provided to function binding must be a function!";const b=T=>`You are attempting to construct ${C(T)} in a synchronous way but it has asynchronous dependencies.`;Oi.LAZY_IN_SYNC=b,Oi.INVALID_TO_SELF_VALUE="The toSelf function can only be applied when a constructor is used as service identifier",Oi.INVALID_DECORATOR_OPERATION="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.";const w=T=>`The number of constructor arguments in the derived class ${T} must be >= than the number of constructor arguments of its base class.`;Oi.ARGUMENTS_LENGTH_MISMATCH=w,Oi.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT="Invalid Container constructor argument. Container options must be an object.",Oi.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE='Invalid Container option. Default scope must be a string ("singleton" or "transient").',Oi.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE="Invalid Container option. Auto bind injectable must be a boolean",Oi.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK="Invalid Container option. Skip base check must be a boolean",Oi.MULTIPLE_PRE_DESTROY_METHODS="Cannot apply @preDestroy decorator multiple times in the same class",Oi.MULTIPLE_POST_CONSTRUCT_METHODS="Cannot apply @postConstruct decorator multiple times in the same class",Oi.ASYNC_UNBIND_REQUIRED="Attempting to unbind dependency with asynchronous destruction (@preDestroy or onDeactivation)";const m=(T,M)=>`@postConstruct error in class ${T}: ${M}`;Oi.POST_CONSTRUCT_ERROR=m;const P=(T,M)=>`@preDestroy error in class ${T}: ${M}`;Oi.PRE_DESTROY_ERROR=P;const g=(T,M)=>`onDeactivation() error in class ${T}: ${M}`;Oi.ON_DEACTIVATION_ERROR=g;const E=(T,M)=>`It looks like there is a circular dependency in one of the '${T}' bindings. Please investigate bindings with service identifier '${M}'.`;Oi.CIRCULAR_DEPENDENCY_IN_FACTORY=E,Oi.STACK_OVERFLOW="Maximum call stack size exceeded";function C(T){return typeof T=="function"?`[function/class ${T.name||""}]`:typeof T=="symbol"?T.toString():`'${T}'`}return Oi}var om={},Ght;function Ppt(){if(Ght)return om;Ght=1;var f=om&&om.__createBinding||(Object.create?(function(P,g,E,C){C===void 0&&(C=E);var T=Object.getOwnPropertyDescriptor(g,E);(!T||("get"in T?!g.__esModule:T.writable||T.configurable))&&(T={enumerable:!0,get:function(){return g[E]}}),Object.defineProperty(P,C,T)}):(function(P,g,E,C){C===void 0&&(C=E),P[C]=g[E]})),h=om&&om.__setModuleDefault||(Object.create?(function(P,g){Object.defineProperty(P,"default",{enumerable:!0,value:g})}):function(P,g){P.default=g}),b=om&&om.__importStar||(function(){var P=function(g){return P=Object.getOwnPropertyNames||function(E){var C=[];for(var T in E)Object.prototype.hasOwnProperty.call(E,T)&&(C[C.length]=T);return C},P(g)};return function(g){if(g&&g.__esModule)return g;var E={};if(g!=null)for(var C=P(g),T=0;T0)throw new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,`Found unexpected missing metadata on type "${w.name}" at constructor indexes "${P.join('", "')}". + +Are you using @inject, @multiInject or @unmanaged decorators at those indexes? + +If you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}return RY}var xY={},Jx={},edt;function yA(){if(edt)return Jx;edt=1,Object.defineProperty(Jx,"__esModule",{value:!0}),Jx.ClassElementMetadataKind=void 0;var f;return(function(h){h[h.multipleInjection=0]="multipleInjection",h[h.singleInjection=1]="singleInjection",h[h.unmanaged=2]="unmanaged"})(f||(Jx.ClassElementMetadataKind=f={})),Jx}var tdt;function Ipt(){if(tdt)return xY;tdt=1,Object.defineProperty(xY,"__esModule",{value:!0}),xY.getClassElementMetadataFromNewable=h;const f=yA();function h(b){return{kind:f.ClassElementMetadataKind.singleInjection,name:void 0,optional:!1,tags:new Map,targetName:void 0,value:b}}return xY}var LY={},NY={},ndt;function Aye(){if(ndt)return NY;ndt=1,Object.defineProperty(NY,"__esModule",{value:!0}),NY.getClassElementMetadataFromLegacyMetadata=m;const f=sJ(),h=uJ(),b=xM(),w=yA();function m(g){const E=g.find(j=>j.key===b.INJECT_TAG),C=g.find(j=>j.key===b.MULTI_INJECT_TAG);if(g.find(j=>j.key===b.UNMANAGED_TAG)!==void 0)return P(E,C);if(C===void 0&&E===void 0)throw new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,"Expected @inject, @multiInject or @unmanaged metadata");const M=g.find(j=>j.key===b.NAMED_TAG),_=g.find(j=>j.key===b.OPTIONAL_TAG),I=g.find(j=>j.key===b.NAME_TAG);return{kind:E===void 0?w.ClassElementMetadataKind.multipleInjection:w.ClassElementMetadataKind.singleInjection,name:M?.value,optional:_!==void 0,tags:new Map(g.filter(j=>b.NON_CUSTOM_TAG_KEYS.every(k=>j.key!==k)).map(j=>[j.key,j.value])),targetName:I?.value,value:E===void 0?C?.value:E.value}}function P(g,E){if(E!==void 0||g!==void 0)throw new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,"Expected a single @inject, @multiInject or @unmanaged metadata");return{kind:w.ClassElementMetadataKind.unmanaged}}return NY}var idt;function Tpt(){if(idt)return LY;idt=1,Object.defineProperty(LY,"__esModule",{value:!0}),LY.getConstructorArgumentMetadataFromLegacyMetadata=w;const f=sJ(),h=uJ(),b=Aye();function w(m,P,g){try{return(0,b.getClassElementMetadataFromLegacyMetadata)(g)}catch(E){throw f.InversifyCoreError.isErrorOfKind(E,h.InversifyCoreErrorKind.missingInjectionDecorator)?new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,`Expected a single @inject, @multiInject or @unmanaged decorator at type "${m.name}" at constructor arguments at index "${P.toString()}"`,{cause:E}):E}}return LY}var rdt;function IVt(){if(rdt)return kY;rdt=1,Object.defineProperty(kY,"__esModule",{value:!0}),kY.getClassMetadataConstructorArguments=P;const f=QL(),h=xM(),b=Cpt(),w=Ipt(),m=Tpt();function P(g){const E=(0,f.getReflectMetadata)(g,h.DESIGN_PARAM_TYPES),C=(0,f.getReflectMetadata)(g,h.TAGGED),T=[];if(C!==void 0)for(const[M,_]of Object.entries(C)){const I=parseInt(M);T[I]=(0,m.getConstructorArgumentMetadataFromLegacyMetadata)(g,I,_)}if(E!==void 0){for(let M=0;MNumber.MIN_SAFE_INTEGER):(0,f.updateReflectMetadata)(Object,h,w,m=>m+1),w}return UY}var pdt;function Rpt(){if(pdt)return Qx;pdt=1,Object.defineProperty(Qx,"__esModule",{value:!0}),Qx.LegacyTargetImpl=void 0;const f=Ove(),h=AVt(),b=yA(),w=xM(),m=OVt(),P=DVt(),g=kVt();let E=class{#e;#n;#i;#t;#r;#o;constructor(T,M,_){this.#n=(0,g.getTargetId)(),this.#i=T,this.#t=void 0,this.#e=M,this.#r=new m.LegacyQueryableStringImpl(typeof T=="string"?T:(0,P.getDescription)(T)),this.#o=_}get id(){return this.#n}get identifier(){return this.#i}get metadata(){return this.#t===void 0&&(this.#t=(0,h.getLegacyMetadata)(this.#e)),this.#t}get name(){return this.#r}get type(){return this.#o}get serviceIdentifier(){return f.LazyServiceIdentifier.is(this.#e.value)?this.#e.value.unwrap():this.#e.value}getCustomTags(){return[...this.#e.tags.entries()].map(([T,M])=>({key:T,value:M}))}getNamedTag(){return this.#e.name===void 0?null:{key:w.NAMED_TAG,value:this.#e.name}}hasTag(T){return this.metadata.some(M=>M.key===T)}isArray(){return this.#e.kind===b.ClassElementMetadataKind.multipleInjection}isNamed(){return this.#e.name!==void 0}isOptional(){return this.#e.optional}isTagged(){return this.#e.tags.size>0}matchesArray(T){return this.isArray()&&this.#e.value===T}matchesNamedTag(T){return this.#e.name===T}matchesTag(T){return M=>this.metadata.some(_=>_.key===T&&_.value===M)}};return Qx.LegacyTargetImpl=E,Qx}var wdt;function RVt(){if(wdt)return HY;wdt=1,Object.defineProperty(HY,"__esModule",{value:!0}),HY.getTargetsFromMetadataProviders=w;const f=yA(),h=jVt(),b=Rpt();function w(m,P){return function(E){const C=m(E);let T=(0,h.getBaseType)(E);for(;T!==void 0&&T!==Object;){const _=P(T);for(const[I,O]of _)C.properties.has(I)||C.properties.set(I,O);T=(0,h.getBaseType)(T)}const M=[];for(const _ of C.constructorArguments)if(_.kind!==f.ClassElementMetadataKind.unmanaged){const I=_.targetName??"";M.push(new b.LegacyTargetImpl(I,_,"ConstructorArgument"))}for(const[_,I]of C.properties)if(I.kind!==f.ClassElementMetadataKind.unmanaged){const O=I.targetName??_;M.push(new b.LegacyTargetImpl(O,I,"ClassProperty"))}return M}}return HY}var mdt;function xVt(){if(mdt)return Yx;mdt=1,Object.defineProperty(Yx,"__esModule",{value:!0}),Yx.getTargets=void 0;const f=Opt(),h=kpt(),b=Apt(),w=Dpt(),m=RVt(),P=g=>{const E=g===void 0?f.getClassMetadata:T=>(0,h.getClassMetadataFromMetadataReader)(T,g),C=g===void 0?b.getClassMetadataProperties:T=>(0,w.getClassMetadataPropertiesFromMetadataReader)(T,g);return(0,m.getTargetsFromMetadataProviders)(E,C)};return Yx.getTargets=P,Yx}var vdt;function xpt(){return vdt||(vdt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.LegacyTargetImpl=f.getTargets=f.getClassMetadataFromMetadataReader=f.getClassMetadata=f.getClassElementMetadataFromLegacyMetadata=f.ClassElementMetadataKind=void 0;const h=xVt();Object.defineProperty(f,"getTargets",{enumerable:!0,get:function(){return h.getTargets}});const b=Rpt();Object.defineProperty(f,"LegacyTargetImpl",{enumerable:!0,get:function(){return b.LegacyTargetImpl}});const w=Aye();Object.defineProperty(f,"getClassElementMetadataFromLegacyMetadata",{enumerable:!0,get:function(){return w.getClassElementMetadataFromLegacyMetadata}});const m=Opt();Object.defineProperty(f,"getClassMetadata",{enumerable:!0,get:function(){return m.getClassMetadata}});const P=kpt();Object.defineProperty(f,"getClassMetadataFromMetadataReader",{enumerable:!0,get:function(){return P.getClassMetadataFromMetadataReader}});const g=yA();Object.defineProperty(f,"ClassElementMetadataKind",{enumerable:!0,get:function(){return g.ClassElementMetadataKind}})})(Gme)),Gme}var eL={},ydt;function LVt(){if(ydt)return eL;ydt=1,Object.defineProperty(eL,"__esModule",{value:!0}),eL.BindingCount=void 0;var f;return(function(h){h[h.MultipleBindingsAvailable=2]="MultipleBindingsAvailable",h[h.NoBindingsAvailable=0]="NoBindingsAvailable",h[h.OnlyOneBindingAvailable=1]="OnlyOneBindingAvailable"})(f||(eL.BindingCount=f={})),eL}var dp={},_dt;function Lpt(){if(_dt)return dp;_dt=1;var f=dp&&dp.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=dp&&dp.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=dp&&dp.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M{try{return g()}catch(C){throw m(C)?E():C}};return dp.tryAndThrowErrorIfStackOverflow=P,dp}var $d={},Edt;function ZL(){if(Edt)return $d;Edt=1;var f=$d&&$d.__createBinding||(Object.create?(function(O,j,k,x){x===void 0&&(x=k);var R=Object.getOwnPropertyDescriptor(j,k);(!R||("get"in R?!j.__esModule:R.writable||R.configurable))&&(R={enumerable:!0,get:function(){return j[k]}}),Object.defineProperty(O,x,R)}):(function(O,j,k,x){x===void 0&&(x=k),O[x]=j[k]})),h=$d&&$d.__setModuleDefault||(Object.create?(function(O,j){Object.defineProperty(O,"default",{enumerable:!0,value:j})}):function(O,j){O.default=j}),b=$d&&$d.__importStar||(function(){var O=function(j){return O=Object.getOwnPropertyNames||function(k){var x=[];for(var R in k)Object.prototype.hasOwnProperty.call(k,R)&&(x[x.length]=R);return x},O(j)};return function(j){if(j&&j.__esModule)return j;var k={};if(j!=null)for(var x=O(j),R=0;R{let F="Object";H.implementationType!==null&&(F=M(H.implementationType)),x=`${x} + ${F}`,H.constraint.metaData&&(x=`${x} - ${H.constraint.metaData}`)})),x}function g(O,j){return O.parentRequest===null?!1:O.parentRequest.serviceIdentifier===j?!0:g(O.parentRequest,j)}function E(O){function j(x,R=[]){const H=m(x.serviceIdentifier);return R.push(H),x.parentRequest!==null?j(x.parentRequest,R):R}return j(O).reverse().join(" --> ")}function C(O){O.childRequests.forEach(j=>{if(g(O,j.serviceIdentifier)){const k=E(j);throw new Error(`${w.CIRCULAR_DEPENDENCY} ${k}`)}else C(j)})}function T(O,j){if(j.isTagged()||j.isNamed()){let k="";const x=j.getNamedTag(),R=j.getCustomTags();return x!==null&&(k+=I(x)+` +`),R!==null&&R.forEach(H=>{k+=I(H)+` +`}),` ${O} + ${O} - ${k}`}else return` ${O}`}function M(O){if(O.name!=null&&O.name!=="")return O.name;{const j=O.toString(),k=j.match(/^function\s*([^\s(]+)/);return k===null?`Anonymous function: ${j}`:k[1]}}function _(O){return O.toString().slice(7,-1)}function I(O){return`{"key":"${O.key.toString()}","value":"${O.value.toString()}"}`}return $d}var tL={},Sdt;function NVt(){if(Sdt)return tL;Sdt=1,Object.defineProperty(tL,"__esModule",{value:!0}),tL.Context=void 0;const f=vA();class h{id;container;plan;currentRequest;constructor(w){this.id=(0,f.id)(),this.container=w}addPlan(w){this.plan=w}setCurrentRequest(w){this.currentRequest=w}}return tL.Context=h,tL}var cm={},Pdt;function K3(){if(Pdt)return cm;Pdt=1;var f=cm&&cm.__createBinding||(Object.create?(function(P,g,E,C){C===void 0&&(C=E);var T=Object.getOwnPropertyDescriptor(g,E);(!T||("get"in T?!g.__esModule:T.writable||T.configurable))&&(T={enumerable:!0,get:function(){return g[E]}}),Object.defineProperty(P,C,T)}):(function(P,g,E,C){C===void 0&&(C=E),P[C]=g[E]})),h=cm&&cm.__setModuleDefault||(Object.create?(function(P,g){Object.defineProperty(P,"default",{enumerable:!0,value:g})}):function(P,g){P.default=g}),b=cm&&cm.__importStar||(function(){var P=function(g){return P=Object.getOwnPropertyNames||function(E){var C=[];for(var T in E)Object.prototype.hasOwnProperty.call(E,T)&&(C[C.length]=T);return C},P(g)};return function(g){if(g&&g.__esModule)return g;var E={};if(g!=null)for(var C=P(g),T=0;TR.metadata.filter(H=>H.key===P.UNMANAGED_TAG)),k=[].concat.apply([],j).length,x=O.length-k;return x>0?x:T(M,I)}})(p3)),p3}var iL={},Tdt;function KVt(){if(Tdt)return iL;Tdt=1,Object.defineProperty(iL,"__esModule",{value:!0}),iL.Request=void 0;const f=vA();class h{id;serviceIdentifier;parentContext;parentRequest;bindings;childRequests;target;requestScope;constructor(w,m,P,g,E){this.id=(0,f.id)(),this.serviceIdentifier=w,this.parentContext=m,this.parentRequest=P,this.target=E,this.childRequests=[],this.bindings=Array.isArray(g)?g:[g],this.requestScope=P===null?new Map:null}addChildRequest(w,m,P){const g=new h(w,this.parentContext,this,m,P);return this.childRequests.push(g),g}}return iL.Request=h,iL}var jdt;function Npt(){if(jdt)return hp;jdt=1;var f=hp&&hp.__createBinding||(Object.create?(function(ce,J,te,fe){fe===void 0&&(fe=te);var ve=Object.getOwnPropertyDescriptor(J,te);(!ve||("get"in ve?!J.__esModule:ve.writable||ve.configurable))&&(ve={enumerable:!0,get:function(){return J[te]}}),Object.defineProperty(ce,fe,ve)}):(function(ce,J,te,fe){fe===void 0&&(fe=te),ce[fe]=J[te]})),h=hp&&hp.__setModuleDefault||(Object.create?(function(ce,J){Object.defineProperty(ce,"default",{enumerable:!0,value:J})}):function(ce,J){ce.default=J}),b=hp&&hp.__importStar||(function(){var ce=function(J){return ce=Object.getOwnPropertyNames||function(te){var fe=[];for(var ve in te)Object.prototype.hasOwnProperty.call(te,ve)&&(fe[fe.length]=ve);return fe},ce(J)};return function(J){if(J&&J.__esModule)return J;var te={};if(J!=null)for(var fe=ce(J),ve=0;ve{const De=new j.Request(tt.serviceIdentifier,te,fe,tt,ve);return tt.constraint(De)}),F(ve.serviceIdentifier,ke,fe,ve,te.container),ke}function H(ce,J){const te=J.isMultiInject?E.MULTI_INJECT_TAG:E.INJECT_TAG,fe=[new _.Metadata(te,ce)];return J.customTag!==void 0&&fe.push(new _.Metadata(J.customTag.key,J.customTag.value)),J.isOptional===!0&&fe.push(new _.Metadata(E.OPTIONAL_TAG,!0)),fe}function F(ce,J,te,fe,ve){switch(J.length){case m.BindingCount.NoBindingsAvailable:if(fe.isOptional())return J;{const me=(0,T.getServiceIdentifierAsString)(ce);let ke=P.NOT_REGISTERED;throw ke+=(0,T.listMetadataForTarget)(me,fe),ke+=(0,T.listRegisteredBindingsForServiceIdentifier)(ve,me,W),te!==null&&(ke+=` +${P.TRYING_TO_RESOLVE_BINDINGS((0,T.getServiceIdentifierAsString)(te.serviceIdentifier))}`),new Error(ke)}case m.BindingCount.OnlyOneBindingAvailable:return J;case m.BindingCount.MultipleBindingsAvailable:default:if(fe.isArray())return J;{const me=(0,T.getServiceIdentifierAsString)(ce);let ke=`${P.AMBIGUOUS_MATCH} ${me}`;throw ke+=(0,T.listRegisteredBindingsForServiceIdentifier)(ve,me,W),new Error(ke)}}}function $(ce,J,te,fe,ve,me){let ke,tt;if(ve===null){ke=R(ce,J,fe,null,me),tt=new j.Request(te,fe,null,ke,me);const De=new I.Plan(fe,tt);fe.addPlan(De)}else ke=R(ce,J,fe,ve,me),tt=ve.addChildRequest(me.serviceIdentifier,ke,me);ke.forEach(De=>{let ct=null;if(me.isArray())ct=tt.addChildRequest(De.serviceIdentifier,De,me);else{if(De.cache!==null)return;ct=tt}if(De.type===g.BindingTypeEnum.Instance&&De.implementationType!==null){const Z=(0,O.getDependencies)(ce,De.implementationType);if(fe.container.options.skipBaseClassChecks!==!0){const Nt=(0,O.getBaseClassDependencyCount)(ce,De.implementationType);if(Z.length{$(ce,!1,Nt.serviceIdentifier,fe,ct,Nt)})}})}function W(ce,J){let te=[];const fe=k(ce);return fe.hasKey(J)?te=fe.get(J):ce.parent!==null&&(te=W(ce.parent,J)),te}function re(ce,J,te,fe,ve,me=!1){const ke=new M.Context(J),tt=x(te,fe,ve);try{return $(ce,me,fe,ke,null,tt),ke}catch(De){throw(0,C.isStackOverflowException)(De)&&(0,T.circularDependencyToException)(ke.plan.rootRequest),De}}function ae(ce,J,te){const fe=H(J,te),ve=(0,w.getClassElementMetadataFromLegacyMetadata)(fe);if(ve.kind===w.ClassElementMetadataKind.unmanaged)throw new Error("Unexpected metadata when creating target");const me=new w.LegacyTargetImpl("",ve,"Variable"),ke=new M.Context(ce);return new j.Request(J,ke,null,[],me)}return hp}var Zv={},yM={},rL={},Adt;function aJ(){if(Adt)return rL;Adt=1,Object.defineProperty(rL,"__esModule",{value:!0}),rL.isPromise=f,rL.isPromiseOrContainsPromise=h;function f(b){return(typeof b=="object"&&b!==null||typeof b=="function")&&typeof b.then=="function"}function h(b){return f(b)?!0:Array.isArray(b)&&b.some(f)}return rL}var Odt;function qVt(){if(Odt)return yM;Odt=1,Object.defineProperty(yM,"__esModule",{value:!0}),yM.saveToScope=yM.tryGetFromScope=void 0;const f=Py(),h=aJ(),b=(E,C)=>C.scope===f.BindingScopeEnum.Singleton&&C.activated?C.cache:C.scope===f.BindingScopeEnum.Request&&E.has(C.id)?E.get(C.id):null;yM.tryGetFromScope=b;const w=(E,C,T)=>{C.scope===f.BindingScopeEnum.Singleton&&P(C,T),C.scope===f.BindingScopeEnum.Request&&m(E,C,T)};yM.saveToScope=w;const m=(E,C,T)=>{E.has(C.id)||E.set(C.id,T)},P=(E,C)=>{E.cache=C,E.activated=!0,(0,h.isPromise)(C)&&g(E,C)},g=async(E,C)=>{try{const T=await C;E.cache=T}catch(T){throw E.cache=null,E.activated=!1,T}};return yM}var Kd={},oL={},Ddt;function HVt(){if(Ddt)return oL;Ddt=1,Object.defineProperty(oL,"__esModule",{value:!0}),oL.FactoryType=void 0;var f;return(function(h){h.DynamicValue="toDynamicValue",h.Factory="toFactory",h.Provider="toProvider"})(f||(oL.FactoryType=f={})),oL}var kdt;function Fpt(){if(kdt)return Kd;kdt=1;var f=Kd&&Kd.__createBinding||(Object.create?(function(M,_,I,O){O===void 0&&(O=I);var j=Object.getOwnPropertyDescriptor(_,I);(!j||("get"in j?!_.__esModule:j.writable||j.configurable))&&(j={enumerable:!0,get:function(){return _[I]}}),Object.defineProperty(M,O,j)}):(function(M,_,I,O){O===void 0&&(O=I),M[O]=_[I]})),h=Kd&&Kd.__setModuleDefault||(Object.create?(function(M,_){Object.defineProperty(M,"default",{enumerable:!0,value:_})}):function(M,_){M.default=_}),b=Kd&&Kd.__importStar||(function(){var M=function(_){return M=Object.getOwnPropertyNames||function(I){var O=[];for(var j in I)Object.prototype.hasOwnProperty.call(I,j)&&(O[O.length]=j);return O},M(_)};return function(_){if(_&&_.__esModule)return _;var I={};if(_!=null)for(var O=M(_),j=0;j_=>(...I)=>{I.forEach(O=>{M.bind(O).toService(_)})};Kd.multiBindToService=E;const C=M=>{let _=null;switch(M.type){case m.BindingTypeEnum.ConstantValue:case m.BindingTypeEnum.Function:_=M.cache;break;case m.BindingTypeEnum.Constructor:case m.BindingTypeEnum.Instance:_=M.implementationType;break;case m.BindingTypeEnum.DynamicValue:_=M.dynamicValue;break;case m.BindingTypeEnum.Provider:_=M.provider;break;case m.BindingTypeEnum.Factory:_=M.factory;break}if(_===null){const I=(0,P.getServiceIdentifierAsString)(M.serviceIdentifier);throw new Error(`${w.INVALID_BINDING_TYPE} ${I}`)}};Kd.ensureFullyBound=C;const T=M=>{switch(M.type){case m.BindingTypeEnum.Factory:return{factory:M.factory,factoryType:g.FactoryType.Factory};case m.BindingTypeEnum.Provider:return{factory:M.provider,factoryType:g.FactoryType.Provider};case m.BindingTypeEnum.DynamicValue:return{factory:M.dynamicValue,factoryType:g.FactoryType.DynamicValue};default:throw new Error(`Unexpected factory type ${M.type}`)}};return Kd.getFactoryDetails=T,Kd}var ey={},Rdt;function zVt(){if(Rdt)return ey;Rdt=1;var f=ey&&ey.__createBinding||(Object.create?(function(R,H,F,$){$===void 0&&($=F);var W=Object.getOwnPropertyDescriptor(H,F);(!W||("get"in W?!H.__esModule:W.writable||W.configurable))&&(W={enumerable:!0,get:function(){return H[F]}}),Object.defineProperty(R,$,W)}):(function(R,H,F,$){$===void 0&&($=F),R[$]=H[F]})),h=ey&&ey.__setModuleDefault||(Object.create?(function(R,H){Object.defineProperty(R,"default",{enumerable:!0,value:H})}):function(R,H){R.default=H}),b=ey&&ey.__importStar||(function(){var R=function(H){return R=Object.getOwnPropertyNames||function(F){var $=[];for(var W in F)Object.prototype.hasOwnProperty.call(F,W)&&($[$.length]=W);return $},R(H)};return function(H){if(H&&H.__esModule)return H;var F={};if(H!=null)for(var $=R(H),W=0;W<$.length;W++)$[W]!=="default"&&f(F,H,$[W]);return h(F,H),F}})();Object.defineProperty(ey,"__esModule",{value:!0}),ey.resolveInstance=x;const w=vg(),m=Py(),P=b(Lf()),g=aJ();function E(R,H){return R.reduce((F,$)=>{const W=H($);return $.target.type===m.TargetTypeEnum.ConstructorArgument?F.constructorInjections.push(W):(F.propertyRequests.push($),F.propertyInjections.push(W)),F.isAsync||(F.isAsync=(0,g.isPromiseOrContainsPromise)(W)),F},{constructorInjections:[],isAsync:!1,propertyInjections:[],propertyRequests:[]})}function C(R,H,F){let $;if(H.length>0){const W=E(H,F),re={...W,constr:R};W.isAsync?$=M(re):$=T(re)}else $=new R;return $}function T(R){const H=new R.constr(...R.constructorInjections);return R.propertyRequests.forEach((F,$)=>{const W=F.target.identifier,re=R.propertyInjections[$];(!F.target.isOptional()||re!==void 0)&&(H[W]=re)}),H}async function M(R){const H=await _(R.constructorInjections),F=await _(R.propertyInjections);return T({...R,constructorInjections:H,propertyInjections:F})}async function _(R){const H=[];for(const F of R)Array.isArray(F)?H.push(Promise.all(F)):H.push(F);return Promise.all(H)}function I(R,H){const F=O(R,H);return(0,g.isPromise)(F)?F.then(()=>H):H}function O(R,H){if(Reflect.hasMetadata(P.POST_CONSTRUCT,R)){const F=Reflect.getMetadata(P.POST_CONSTRUCT,R);try{return H[F.value]?.()}catch($){if($ instanceof Error)throw new Error((0,w.POST_CONSTRUCT_ERROR)(R.name,$.message))}}}function j(R,H){R.scope!==m.BindingScopeEnum.Singleton&&k(R,H)}function k(R,H){const F=`Class cannot be instantiated in ${R.scope===m.BindingScopeEnum.Request?"request":"transient"} scope.`;if(typeof R.onDeactivation=="function")throw new Error((0,w.ON_DEACTIVATION_ERROR)(H.name,F));if(Reflect.hasMetadata(P.PRE_DESTROY,H))throw new Error((0,w.PRE_DESTROY_ERROR)(H.name,F))}function x(R,H,F,$){j(R,H);const W=C(H,F,$);return(0,g.isPromise)(W)?W.then(re=>I(H,re)):I(H,W)}return ey}var xdt;function VVt(){if(xdt)return Zv;xdt=1;var f=Zv&&Zv.__createBinding||(Object.create?(function(ae,ce,J,te){te===void 0&&(te=J);var fe=Object.getOwnPropertyDescriptor(ce,J);(!fe||("get"in fe?!ce.__esModule:fe.writable||fe.configurable))&&(fe={enumerable:!0,get:function(){return ce[J]}}),Object.defineProperty(ae,te,fe)}):(function(ae,ce,J,te){te===void 0&&(te=J),ae[te]=ce[J]})),h=Zv&&Zv.__setModuleDefault||(Object.create?(function(ae,ce){Object.defineProperty(ae,"default",{enumerable:!0,value:ce})}):function(ae,ce){ae.default=ce}),b=Zv&&Zv.__importStar||(function(){var ae=function(ce){return ae=Object.getOwnPropertyNames||function(J){var te=[];for(var fe in J)Object.prototype.hasOwnProperty.call(J,fe)&&(te[te.length]=fe);return te},ae(ce)};return function(ce){if(ce&&ce.__esModule)return ce;var J={};if(ce!=null)for(var te=ae(ce),fe=0;fece=>{ce.parentContext.setCurrentRequest(ce);const J=ce.bindings,te=ce.childRequests,fe=ce.target&&ce.target.isArray(),ve=!ce.parentRequest||!ce.parentRequest.target||!ce.target||!ce.parentRequest.target.matchesArray(ce.target.serviceIdentifier);if(fe&&ve)return te.map(me=>_(ae)(me));{if(ce.target.isOptional()&&J.length===0)return;const me=J[0];return k(ae,ce,me)}},I=(ae,ce)=>{const J=(0,C.getFactoryDetails)(ae);return(0,T.tryAndThrowErrorIfStackOverflow)(()=>J.factory.bind(ae)(ce),()=>new Error(w.CIRCULAR_DEPENDENCY_IN_FACTORY(J.factoryType,ce.currentRequest.serviceIdentifier.toString())))},O=(ae,ce,J)=>{let te;const fe=ce.childRequests;switch((0,C.ensureFullyBound)(J),J.type){case m.BindingTypeEnum.ConstantValue:case m.BindingTypeEnum.Function:te=J.cache;break;case m.BindingTypeEnum.Constructor:te=J.implementationType;break;case m.BindingTypeEnum.Instance:te=(0,M.resolveInstance)(J,J.implementationType,fe,_(ae));break;default:te=I(J,ce.parentContext)}return te},j=(ae,ce,J)=>{let te=(0,g.tryGetFromScope)(ae,ce);return te!==null||(te=J(),(0,g.saveToScope)(ae,ce,te)),te},k=(ae,ce,J)=>j(ae,J,()=>{let te=O(ae,ce,J);return(0,E.isPromise)(te)?te=te.then(fe=>x(ce,J,fe)):te=x(ce,J,te),te});function x(ae,ce,J){let te=R(ae.parentContext,ce,J);const fe=W(ae.parentContext.container);let ve,me=fe.next();do{ve=me.value;const ke=ae.parentContext,tt=ae.serviceIdentifier,De=$(ve,tt);(0,E.isPromise)(te)?te=F(De,ke,te):te=H(De,ke,te),me=fe.next()}while(me.done!==!0&&!(0,P.getBindingDictionary)(ve).hasKey(ae.serviceIdentifier));return te}const R=(ae,ce,J)=>{let te;return typeof ce.onActivation=="function"?te=ce.onActivation(ae,J):te=J,te},H=(ae,ce,J)=>{let te=ae.next();for(;te.done!==!0;){if(J=te.value(ce,J),(0,E.isPromise)(J))return F(ae,ce,J);te=ae.next()}return J},F=async(ae,ce,J)=>{let te=await J,fe=ae.next();for(;fe.done!==!0;)te=await fe.value(ce,te),fe=ae.next();return te},$=(ae,ce)=>{const J=ae._activations;return J.hasKey(ce)?J.get(ce).values():[].values()},W=ae=>{const ce=[ae];let J=ae.parent;for(;J!==null;)ce.push(J),J=J.parent;return{next:()=>{const ve=ce.pop();return ve!==void 0?{done:!1,value:ve}:{done:!0,value:void 0}}}};function re(ae){return _(ae.plan.rootRequest.requestScope)(ae.plan.rootRequest)}return Zv}var sm={},cL={},sL={},uL={},aL={},lL={},uh={},Ldt;function Bpt(){if(Ldt)return uh;Ldt=1;var f=uh&&uh.__createBinding||(Object.create?(function(T,M,_,I){I===void 0&&(I=_);var O=Object.getOwnPropertyDescriptor(M,_);(!O||("get"in O?!M.__esModule:O.writable||O.configurable))&&(O={enumerable:!0,get:function(){return M[_]}}),Object.defineProperty(T,I,O)}):(function(T,M,_,I){I===void 0&&(I=_),T[I]=M[_]})),h=uh&&uh.__setModuleDefault||(Object.create?(function(T,M){Object.defineProperty(T,"default",{enumerable:!0,value:M})}):function(T,M){T.default=M}),b=uh&&uh.__importStar||(function(){var T=function(M){return T=Object.getOwnPropertyNames||function(_){var I=[];for(var O in _)Object.prototype.hasOwnProperty.call(_,O)&&(I[I.length]=O);return I},T(M)};return function(M){if(M&&M.__esModule)return M;var _={};if(M!=null)for(var I=T(M),O=0;O{const _=T.parentRequest;return _!==null?M(_)?!0:P(_,M):!1};uh.traverseAncerstors=P;const g=T=>M=>{const _=I=>I!==null&&I.target!==null&&I.target.matchesTag(T)(M);return _.metaData=new m.Metadata(T,M),_};uh.taggedConstraint=g;const E=g(w.NAMED_TAG);uh.namedConstraint=E;const C=T=>M=>{let _=null;if(M!==null){if(_=M.bindings[0],typeof T=="string")return _.serviceIdentifier===T;{const I=M.bindings[0].implementationType;return T===I}}return!1};return uh.typeConstraint=C,uh}var Ndt;function Oye(){if(Ndt)return lL;Ndt=1,Object.defineProperty(lL,"__esModule",{value:!0}),lL.BindingWhenSyntax=void 0;const f=Dye(),h=Bpt();class b{_binding;constructor(m){this._binding=m}when(m){return this._binding.constraint=m,new f.BindingOnSyntax(this._binding)}whenTargetNamed(m){return this._binding.constraint=(0,h.namedConstraint)(m),new f.BindingOnSyntax(this._binding)}whenTargetIsDefault(){return this._binding.constraint=m=>m===null?!1:m.target!==null&&!m.target.isNamed()&&!m.target.isTagged(),new f.BindingOnSyntax(this._binding)}whenTargetTagged(m,P){return this._binding.constraint=(0,h.taggedConstraint)(m)(P),new f.BindingOnSyntax(this._binding)}whenInjectedInto(m){return this._binding.constraint=P=>P!==null&&(0,h.typeConstraint)(m)(P.parentRequest),new f.BindingOnSyntax(this._binding)}whenParentNamed(m){return this._binding.constraint=P=>P!==null&&(0,h.namedConstraint)(m)(P.parentRequest),new f.BindingOnSyntax(this._binding)}whenParentTagged(m,P){return this._binding.constraint=g=>g!==null&&(0,h.taggedConstraint)(m)(P)(g.parentRequest),new f.BindingOnSyntax(this._binding)}whenAnyAncestorIs(m){return this._binding.constraint=P=>P!==null&&(0,h.traverseAncerstors)(P,(0,h.typeConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenNoAncestorIs(m){return this._binding.constraint=P=>P!==null&&!(0,h.traverseAncerstors)(P,(0,h.typeConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenAnyAncestorNamed(m){return this._binding.constraint=P=>P!==null&&(0,h.traverseAncerstors)(P,(0,h.namedConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenNoAncestorNamed(m){return this._binding.constraint=P=>P!==null&&!(0,h.traverseAncerstors)(P,(0,h.namedConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenAnyAncestorTagged(m,P){return this._binding.constraint=g=>g!==null&&(0,h.traverseAncerstors)(g,(0,h.taggedConstraint)(m)(P)),new f.BindingOnSyntax(this._binding)}whenNoAncestorTagged(m,P){return this._binding.constraint=g=>g!==null&&!(0,h.traverseAncerstors)(g,(0,h.taggedConstraint)(m)(P)),new f.BindingOnSyntax(this._binding)}whenAnyAncestorMatches(m){return this._binding.constraint=P=>P!==null&&(0,h.traverseAncerstors)(P,m),new f.BindingOnSyntax(this._binding)}whenNoAncestorMatches(m){return this._binding.constraint=P=>P!==null&&!(0,h.traverseAncerstors)(P,m),new f.BindingOnSyntax(this._binding)}}return lL.BindingWhenSyntax=b,lL}var Fdt;function Dye(){if(Fdt)return aL;Fdt=1,Object.defineProperty(aL,"__esModule",{value:!0}),aL.BindingOnSyntax=void 0;const f=Oye();class h{_binding;constructor(w){this._binding=w}onActivation(w){return this._binding.onActivation=w,new f.BindingWhenSyntax(this._binding)}onDeactivation(w){return this._binding.onDeactivation=w,new f.BindingWhenSyntax(this._binding)}}return aL.BindingOnSyntax=h,aL}var Bdt;function $pt(){if(Bdt)return uL;Bdt=1,Object.defineProperty(uL,"__esModule",{value:!0}),uL.BindingWhenOnSyntax=void 0;const f=Dye(),h=Oye();class b{_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(m){this._binding=m,this._bindingWhenSyntax=new h.BindingWhenSyntax(this._binding),this._bindingOnSyntax=new f.BindingOnSyntax(this._binding)}when(m){return this._bindingWhenSyntax.when(m)}whenTargetNamed(m){return this._bindingWhenSyntax.whenTargetNamed(m)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(m,P){return this._bindingWhenSyntax.whenTargetTagged(m,P)}whenInjectedInto(m){return this._bindingWhenSyntax.whenInjectedInto(m)}whenParentNamed(m){return this._bindingWhenSyntax.whenParentNamed(m)}whenParentTagged(m,P){return this._bindingWhenSyntax.whenParentTagged(m,P)}whenAnyAncestorIs(m){return this._bindingWhenSyntax.whenAnyAncestorIs(m)}whenNoAncestorIs(m){return this._bindingWhenSyntax.whenNoAncestorIs(m)}whenAnyAncestorNamed(m){return this._bindingWhenSyntax.whenAnyAncestorNamed(m)}whenAnyAncestorTagged(m,P){return this._bindingWhenSyntax.whenAnyAncestorTagged(m,P)}whenNoAncestorNamed(m){return this._bindingWhenSyntax.whenNoAncestorNamed(m)}whenNoAncestorTagged(m,P){return this._bindingWhenSyntax.whenNoAncestorTagged(m,P)}whenAnyAncestorMatches(m){return this._bindingWhenSyntax.whenAnyAncestorMatches(m)}whenNoAncestorMatches(m){return this._bindingWhenSyntax.whenNoAncestorMatches(m)}onActivation(m){return this._bindingOnSyntax.onActivation(m)}onDeactivation(m){return this._bindingOnSyntax.onDeactivation(m)}}return uL.BindingWhenOnSyntax=b,uL}var $dt;function GVt(){if($dt)return sL;$dt=1,Object.defineProperty(sL,"__esModule",{value:!0}),sL.BindingInSyntax=void 0;const f=Py(),h=$pt();class b{_binding;constructor(m){this._binding=m}inRequestScope(){return this._binding.scope=f.BindingScopeEnum.Request,new h.BindingWhenOnSyntax(this._binding)}inSingletonScope(){return this._binding.scope=f.BindingScopeEnum.Singleton,new h.BindingWhenOnSyntax(this._binding)}inTransientScope(){return this._binding.scope=f.BindingScopeEnum.Transient,new h.BindingWhenOnSyntax(this._binding)}}return sL.BindingInSyntax=b,sL}var Kdt;function UVt(){if(Kdt)return cL;Kdt=1,Object.defineProperty(cL,"__esModule",{value:!0}),cL.BindingInWhenOnSyntax=void 0;const f=GVt(),h=Dye(),b=Oye();class w{_bindingInSyntax;_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(P){this._binding=P,this._bindingWhenSyntax=new b.BindingWhenSyntax(this._binding),this._bindingOnSyntax=new h.BindingOnSyntax(this._binding),this._bindingInSyntax=new f.BindingInSyntax(P)}inRequestScope(){return this._bindingInSyntax.inRequestScope()}inSingletonScope(){return this._bindingInSyntax.inSingletonScope()}inTransientScope(){return this._bindingInSyntax.inTransientScope()}when(P){return this._bindingWhenSyntax.when(P)}whenTargetNamed(P){return this._bindingWhenSyntax.whenTargetNamed(P)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(P,g){return this._bindingWhenSyntax.whenTargetTagged(P,g)}whenInjectedInto(P){return this._bindingWhenSyntax.whenInjectedInto(P)}whenParentNamed(P){return this._bindingWhenSyntax.whenParentNamed(P)}whenParentTagged(P,g){return this._bindingWhenSyntax.whenParentTagged(P,g)}whenAnyAncestorIs(P){return this._bindingWhenSyntax.whenAnyAncestorIs(P)}whenNoAncestorIs(P){return this._bindingWhenSyntax.whenNoAncestorIs(P)}whenAnyAncestorNamed(P){return this._bindingWhenSyntax.whenAnyAncestorNamed(P)}whenAnyAncestorTagged(P,g){return this._bindingWhenSyntax.whenAnyAncestorTagged(P,g)}whenNoAncestorNamed(P){return this._bindingWhenSyntax.whenNoAncestorNamed(P)}whenNoAncestorTagged(P,g){return this._bindingWhenSyntax.whenNoAncestorTagged(P,g)}whenAnyAncestorMatches(P){return this._bindingWhenSyntax.whenAnyAncestorMatches(P)}whenNoAncestorMatches(P){return this._bindingWhenSyntax.whenNoAncestorMatches(P)}onActivation(P){return this._bindingOnSyntax.onActivation(P)}onDeactivation(P){return this._bindingOnSyntax.onDeactivation(P)}}return cL.BindingInWhenOnSyntax=w,cL}var qdt;function WVt(){if(qdt)return sm;qdt=1;var f=sm&&sm.__createBinding||(Object.create?(function(C,T,M,_){_===void 0&&(_=M);var I=Object.getOwnPropertyDescriptor(T,M);(!I||("get"in I?!T.__esModule:I.writable||I.configurable))&&(I={enumerable:!0,get:function(){return T[M]}}),Object.defineProperty(C,_,I)}):(function(C,T,M,_){_===void 0&&(_=M),C[_]=T[M]})),h=sm&&sm.__setModuleDefault||(Object.create?(function(C,T){Object.defineProperty(C,"default",{enumerable:!0,value:T})}):function(C,T){C.default=T}),b=sm&&sm.__importStar||(function(){var C=function(T){return C=Object.getOwnPropertyNames||function(M){var _=[];for(var I in M)Object.prototype.hasOwnProperty.call(M,I)&&(_[_.length]=I);return _},C(T)};return function(T){if(T&&T.__esModule)return T;var M={};if(T!=null)for(var _=C(T),I=0;I<_.length;I++)_[I]!=="default"&&f(M,T,_[I]);return h(M,T),M}})();Object.defineProperty(sm,"__esModule",{value:!0}),sm.BindingToSyntax=void 0;const w=b(vg()),m=Py(),P=UVt(),g=$pt();class E{_binding;constructor(T){this._binding=T}to(T){return this._binding.type=m.BindingTypeEnum.Instance,this._binding.implementationType=T,new P.BindingInWhenOnSyntax(this._binding)}toSelf(){if(typeof this._binding.serviceIdentifier!="function")throw new Error(w.INVALID_TO_SELF_VALUE);const T=this._binding.serviceIdentifier;return this.to(T)}toConstantValue(T){return this._binding.type=m.BindingTypeEnum.ConstantValue,this._binding.cache=T,this._binding.dynamicValue=null,this._binding.implementationType=null,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toDynamicValue(T){return this._binding.type=m.BindingTypeEnum.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=T,this._binding.implementationType=null,new P.BindingInWhenOnSyntax(this._binding)}toConstructor(T){return this._binding.type=m.BindingTypeEnum.Constructor,this._binding.implementationType=T,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toFactory(T){return this._binding.type=m.BindingTypeEnum.Factory,this._binding.factory=T,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toFunction(T){if(typeof T!="function")throw new Error(w.INVALID_FUNCTION_BINDING);const M=this.toConstantValue(T);return this._binding.type=m.BindingTypeEnum.Function,this._binding.scope=m.BindingScopeEnum.Singleton,M}toAutoFactory(T){return this._binding.type=m.BindingTypeEnum.Factory,this._binding.factory=M=>()=>M.container.get(T),this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toAutoNamedFactory(T){return this._binding.type=m.BindingTypeEnum.Factory,this._binding.factory=M=>_=>M.container.getNamed(T,_),new g.BindingWhenOnSyntax(this._binding)}toProvider(T){return this._binding.type=m.BindingTypeEnum.Provider,this._binding.provider=T,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toService(T){this._binding.type=m.BindingTypeEnum.DynamicValue,Object.defineProperty(this._binding,"cache",{configurable:!0,enumerable:!0,get(){return null},set(M){}}),this._binding.dynamicValue=M=>{try{return M.container.get(T)}catch{return M.container.getAsync(T)}},this._binding.implementationType=null}}return sm.BindingToSyntax=E,sm}var fL={},Hdt;function YVt(){if(Hdt)return fL;Hdt=1,Object.defineProperty(fL,"__esModule",{value:!0}),fL.ContainerSnapshot=void 0;class f{bindings;activations;deactivations;middleware;moduleActivationStore;static of(b,w,m,P,g){const E=new f;return E.bindings=b,E.middleware=w,E.deactivations=P,E.activations=m,E.moduleActivationStore=g,E}}return fL.ContainerSnapshot=f,fL}var um={},YY={},zdt;function XVt(){if(zdt)return YY;zdt=1,Object.defineProperty(YY,"__esModule",{value:!0}),YY.isClonable=f;function f(h){return typeof h=="object"&&h!==null&&"clone"in h&&typeof h.clone=="function"}return YY}var Vdt;function Kpt(){if(Vdt)return um;Vdt=1;var f=um&&um.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=um&&um.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=um&&um.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M{const M=E.hasKey(C)?E.get(C):void 0;if(M!==void 0){const _=T.filter(I=>!M.some(O=>I===O));this._setValue(C,_)}})}removeByCondition(E){const C=[];return this._map.forEach((T,M)=>{const _=[];for(const I of T)E(I)?C.push(I):_.push(I);this._setValue(M,_)}),C}hasKey(E){return this._checkNonNulish(E),this._map.has(E)}clone(){const E=new P;return this._map.forEach((C,T)=>{C.forEach(M=>{E.add(T,(0,m.isClonable)(M)?M.clone():M)})}),E}traverse(E){this._map.forEach((C,T)=>{E(T,C)})}_checkNonNulish(E){if(E==null)throw new Error(w.NULL_ARGUMENT)}_setValue(E,C){C.length>0?this._map.set(E,C):this._map.delete(E)}}return um.Lookup=P,um}var hL={},Gdt;function JVt(){if(Gdt)return hL;Gdt=1,Object.defineProperty(hL,"__esModule",{value:!0}),hL.ModuleActivationStore=void 0;const f=Kpt();class h{_map=new Map;remove(w){const m=this._map.get(w);return m===void 0?this._getEmptyHandlersStore():(this._map.delete(w),m)}addDeactivation(w,m,P){this._getModuleActivationHandlers(w).onDeactivations.add(m,P)}addActivation(w,m,P){this._getModuleActivationHandlers(w).onActivations.add(m,P)}clone(){const w=new h;return this._map.forEach((m,P)=>{w._map.set(P,{onActivations:m.onActivations.clone(),onDeactivations:m.onDeactivations.clone()})}),w}_getModuleActivationHandlers(w){let m=this._map.get(w);return m===void 0&&(m=this._getEmptyHandlersStore(),this._map.set(w,m)),m}_getEmptyHandlersStore(){return{onActivations:new f.Lookup,onDeactivations:new f.Lookup}}}return hL.ModuleActivationStore=h,hL}var Udt;function QVt(){if(Udt)return rm;Udt=1;var f=rm&&rm.__createBinding||(Object.create?(function(H,F,$,W){W===void 0&&(W=$);var re=Object.getOwnPropertyDescriptor(F,$);(!re||("get"in re?!F.__esModule:re.writable||re.configurable))&&(re={enumerable:!0,get:function(){return F[$]}}),Object.defineProperty(H,W,re)}):(function(H,F,$,W){W===void 0&&(W=$),H[W]=F[$]})),h=rm&&rm.__setModuleDefault||(Object.create?(function(H,F){Object.defineProperty(H,"default",{enumerable:!0,value:F})}):function(H,F){H.default=F}),b=rm&&rm.__importStar||(function(){var H=function(F){return H=Object.getOwnPropertyNames||function($){var W=[];for(var re in $)Object.prototype.hasOwnProperty.call($,re)&&(W[W.length]=re);return W},H(F)};return function(F){if(F&&F.__esModule)return F;var $={};if(F!=null)for(var W=H(F),re=0;re(0,C.getBindingDictionary)(te)),ce=(0,C.getBindingDictionary)(re);function J(te,fe){te.traverse((ve,me)=>{me.forEach(ke=>{fe.add(ke.serviceIdentifier,ke.clone())})})}return ae.forEach(te=>{J(te,ce)}),re}load(...F){const $=this._getContainerModuleHelpersFactory();for(const W of F){const re=$(W.id);W.registry(re.bindFunction,re.unbindFunction,re.isboundFunction,re.rebindFunction,re.unbindAsyncFunction,re.onActivationFunction,re.onDeactivationFunction)}}async loadAsync(...F){const $=this._getContainerModuleHelpersFactory();for(const W of F){const re=$(W.id);await W.registry(re.bindFunction,re.unbindFunction,re.isboundFunction,re.rebindFunction,re.unbindAsyncFunction,re.onActivationFunction,re.onDeactivationFunction)}}unload(...F){F.forEach($=>{const W=this._removeModuleBindings($.id);this._deactivateSingletons(W),this._removeModuleHandlers($.id)})}async unloadAsync(...F){for(const $ of F){const W=this._removeModuleBindings($.id);await this._deactivateSingletonsAsync(W),this._removeModuleHandlers($.id)}}bind(F){return this._bind(this._buildBinding(F))}rebind(F){return this.unbind(F),this.bind(F)}async rebindAsync(F){return await this.unbindAsync(F),this.bind(F)}unbind(F){if(this._bindingDictionary.hasKey(F)){const $=this._bindingDictionary.get(F);this._deactivateSingletons($)}this._removeServiceFromDictionary(F)}async unbindAsync(F){if(this._bindingDictionary.hasKey(F)){const $=this._bindingDictionary.get(F);await this._deactivateSingletonsAsync($)}this._removeServiceFromDictionary(F)}unbindAll(){this._bindingDictionary.traverse((F,$)=>{this._deactivateSingletons($)}),this._bindingDictionary=new k.Lookup}async unbindAllAsync(){const F=[];this._bindingDictionary.traverse(($,W)=>{F.push(this._deactivateSingletonsAsync(W))}),await Promise.all(F),this._bindingDictionary=new k.Lookup}onActivation(F,$){this._activations.add(F,$)}onDeactivation(F,$){this._deactivations.add(F,$)}isBound(F){let $=this._bindingDictionary.hasKey(F);return!$&&this.parent&&($=this.parent.isBound(F)),$}isCurrentBound(F){return this._bindingDictionary.hasKey(F)}isBoundNamed(F,$){return this.isBoundTagged(F,g.NAMED_TAG,$)}isBoundTagged(F,$,W){let re=!1;if(this._bindingDictionary.hasKey(F)){const ae=this._bindingDictionary.get(F),ce=(0,C.createMockRequest)(this,F,{customTag:{key:$,value:W},isMultiInject:!1});re=ae.some(J=>J.constraint(ce))}return!re&&this.parent&&(re=this.parent.isBoundTagged(F,$,W)),re}snapshot(){this._snapshots.push(j.ContainerSnapshot.of(this._bindingDictionary.clone(),this._middleware,this._activations.clone(),this._deactivations.clone(),this._moduleActivationStore.clone()))}restore(){const F=this._snapshots.pop();if(F===void 0)throw new Error(m.NO_MORE_SNAPSHOTS_AVAILABLE);this._bindingDictionary=F.bindings,this._activations=F.activations,this._deactivations=F.deactivations,this._middleware=F.middleware,this._moduleActivationStore=F.moduleActivationStore}createChild(F){const $=new R(F||this.options);return $.parent=this,$}applyMiddleware(...F){const $=this._middleware?this._middleware:this._planAndResolve();this._middleware=F.reduce((W,re)=>re(W),$)}applyCustomMetadataReader(F){this._metadataReader=F}get(F){const $=this._getNotAllArgs(F,!1,!1);return this._getButThrowIfAsync($)}async getAsync(F){const $=this._getNotAllArgs(F,!1,!1);return this._get($)}getTagged(F,$,W){const re=this._getNotAllArgs(F,!1,!1,$,W);return this._getButThrowIfAsync(re)}async getTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!1,!1,$,W);return this._get(re)}getNamed(F,$){return this.getTagged(F,g.NAMED_TAG,$)}async getNamedAsync(F,$){return this.getTaggedAsync(F,g.NAMED_TAG,$)}getAll(F,$){const W=this._getAllArgs(F,$,!1);return this._getButThrowIfAsync(W)}async getAllAsync(F,$){const W=this._getAllArgs(F,$,!1);return this._getAll(W)}getAllTagged(F,$,W){const re=this._getNotAllArgs(F,!0,!1,$,W);return this._getButThrowIfAsync(re)}async getAllTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!0,!1,$,W);return this._getAll(re)}getAllNamed(F,$){return this.getAllTagged(F,g.NAMED_TAG,$)}async getAllNamedAsync(F,$){return this.getAllTaggedAsync(F,g.NAMED_TAG,$)}resolve(F){const $=this.isBound(F);$||this.bind(F).toSelf();const W=this.get(F);return $||this.unbind(F),W}tryGet(F){const $=this._getNotAllArgs(F,!1,!0);return this._getButThrowIfAsync($)}async tryGetAsync(F){const $=this._getNotAllArgs(F,!1,!0);return this._get($)}tryGetTagged(F,$,W){const re=this._getNotAllArgs(F,!1,!0,$,W);return this._getButThrowIfAsync(re)}async tryGetTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!1,!0,$,W);return this._get(re)}tryGetNamed(F,$){return this.tryGetTagged(F,g.NAMED_TAG,$)}async tryGetNamedAsync(F,$){return this.tryGetTaggedAsync(F,g.NAMED_TAG,$)}tryGetAll(F,$){const W=this._getAllArgs(F,$,!0);return this._getButThrowIfAsync(W)}async tryGetAllAsync(F,$){const W=this._getAllArgs(F,$,!0);return this._getAll(W)}tryGetAllTagged(F,$,W){const re=this._getNotAllArgs(F,!0,!0,$,W);return this._getButThrowIfAsync(re)}async tryGetAllTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!0,!0,$,W);return this._getAll(re)}tryGetAllNamed(F,$){return this.tryGetAllTagged(F,g.NAMED_TAG,$)}async tryGetAllNamedAsync(F,$){return this.tryGetAllTaggedAsync(F,g.NAMED_TAG,$)}_preDestroy(F,$){if(F!==void 0&&Reflect.hasMetadata(g.PRE_DESTROY,F)){const W=Reflect.getMetadata(g.PRE_DESTROY,F);return $[W.value]?.()}}_removeModuleHandlers(F){const $=this._moduleActivationStore.remove(F);this._activations.removeIntersection($.onActivations),this._deactivations.removeIntersection($.onDeactivations)}_removeModuleBindings(F){return this._bindingDictionary.removeByCondition($=>$.moduleId===F)}_deactivate(F,$){const W=$==null?void 0:Object.getPrototypeOf($).constructor;try{if(this._deactivations.hasKey(F.serviceIdentifier)){const ae=this._deactivateContainer($,this._deactivations.get(F.serviceIdentifier).values());if((0,_.isPromise)(ae))return this._handleDeactivationError(ae.then(async()=>this._propagateContainerDeactivationThenBindingAndPreDestroyAsync(F,$,W)),F.serviceIdentifier)}const re=this._propagateContainerDeactivationThenBindingAndPreDestroy(F,$,W);if((0,_.isPromise)(re))return this._handleDeactivationError(re,F.serviceIdentifier)}catch(re){if(re instanceof Error)throw new Error(m.ON_DEACTIVATION_ERROR((0,O.getServiceIdentifierAsString)(F.serviceIdentifier),re.message))}}async _handleDeactivationError(F,$){try{await F}catch(W){if(W instanceof Error)throw new Error(m.ON_DEACTIVATION_ERROR((0,O.getServiceIdentifierAsString)($),W.message))}}_deactivateContainer(F,$){let W=$.next();for(;typeof W.value=="function";){const re=W.value(F);if((0,_.isPromise)(re))return re.then(async()=>this._deactivateContainerAsync(F,$));W=$.next()}}async _deactivateContainerAsync(F,$){let W=$.next();for(;typeof W.value=="function";)await W.value(F),W=$.next()}_getContainerModuleHelpersFactory(){const F=te=>fe=>{const ve=this._buildBinding(fe);return ve.moduleId=te,this._bind(ve)},$=()=>te=>{this.unbind(te)},W=()=>async te=>this.unbindAsync(te),re=()=>te=>this.isBound(te),ae=te=>{const fe=F(te);return ve=>(this.unbind(ve),fe(ve))},ce=te=>(fe,ve)=>{this._moduleActivationStore.addActivation(te,fe,ve),this.onActivation(fe,ve)},J=te=>(fe,ve)=>{this._moduleActivationStore.addDeactivation(te,fe,ve),this.onDeactivation(fe,ve)};return te=>({bindFunction:F(te),isboundFunction:re(),onActivationFunction:ce(te),onDeactivationFunction:J(te),rebindFunction:ae(te),unbindAsyncFunction:W(),unbindFunction:$()})}_bind(F){return this._bindingDictionary.add(F.serviceIdentifier,F),new M.BindingToSyntax(F)}_buildBinding(F){const $=this.options.defaultScope||P.BindingScopeEnum.Transient;return new w.Binding(F,$)}async _getAll(F){return Promise.all(this._get(F))}_get(F){const $={...F,contextInterceptor:W=>W,targetType:P.TargetTypeEnum.Variable};if(this._middleware){const W=this._middleware($);if(W==null)throw new Error(m.INVALID_MIDDLEWARE_RETURN);return W}return this._planAndResolve()($)}_getButThrowIfAsync(F){const $=this._get(F);if((0,_.isPromiseOrContainsPromise)($))throw new Error(m.LAZY_IN_SYNC(F.serviceIdentifier));return $}_getAllArgs(F,$,W){return{avoidConstraints:!($?.enforceBindingConstraints??!1),isMultiInject:!0,isOptional:W,serviceIdentifier:F}}_getNotAllArgs(F,$,W,re,ae){return{avoidConstraints:!1,isMultiInject:$,isOptional:W,key:re,serviceIdentifier:F,value:ae}}_getPlanMetadataFromNextArgs(F){const $={isMultiInject:F.isMultiInject};return F.key!==void 0&&($.customTag={key:F.key,value:F.value}),F.isOptional===!0&&($.isOptional=!0),$}_planAndResolve(){return F=>{let $=(0,C.plan)(this._metadataReader,this,F.targetType,F.serviceIdentifier,this._getPlanMetadataFromNextArgs(F),F.avoidConstraints);return $=F.contextInterceptor($),(0,T.resolve)($)}}_deactivateIfSingleton(F){if(F.activated)return(0,_.isPromise)(F.cache)?F.cache.then($=>this._deactivate(F,$)):this._deactivate(F,F.cache)}_deactivateSingletons(F){for(const $ of F){const W=this._deactivateIfSingleton($);if((0,_.isPromise)(W))throw new Error(m.ASYNC_UNBIND_REQUIRED)}}async _deactivateSingletonsAsync(F){await Promise.all(F.map(async $=>this._deactivateIfSingleton($)))}_propagateContainerDeactivationThenBindingAndPreDestroy(F,$,W){return this.parent?this._deactivate.bind(this.parent)(F,$):this._bindingDeactivationAndPreDestroy(F,$,W)}async _propagateContainerDeactivationThenBindingAndPreDestroyAsync(F,$,W){this.parent?await this._deactivate.bind(this.parent)(F,$):await this._bindingDeactivationAndPreDestroyAsync(F,$,W)}_removeServiceFromDictionary(F){try{this._bindingDictionary.remove(F)}catch{throw new Error(`${m.CANNOT_UNBIND} ${(0,O.getServiceIdentifierAsString)(F)}`)}}_bindingDeactivationAndPreDestroy(F,$,W){if(typeof F.onDeactivation=="function"){const re=F.onDeactivation($);if((0,_.isPromise)(re))return re.then(()=>this._preDestroy(W,$))}return this._preDestroy(W,$)}async _bindingDeactivationAndPreDestroyAsync(F,$,W){typeof F.onDeactivation=="function"&&await F.onDeactivation($),await this._preDestroy(W,$)}}return rm.Container=R,rm}var _M={},Wdt;function ZVt(){if(Wdt)return _M;Wdt=1,Object.defineProperty(_M,"__esModule",{value:!0}),_M.AsyncContainerModule=_M.ContainerModule=void 0;const f=vA();class h{id;registry;constructor(m){this.id=(0,f.id)(),this.registry=m}}_M.ContainerModule=h;class b{id;registry;constructor(m){this.id=(0,f.id)(),this.registry=m}}return _M.AsyncContainerModule=b,_M}var Tb={},XY={},Ydt;function eGt(){if(Ydt)return XY;Ydt=1,Object.defineProperty(XY,"__esModule",{value:!0}),XY.getFirstArrayDuplicate=f;function f(h){const b=new Set;for(const w of h){if(b.has(w))return w;b.add(w)}}return XY}var Xdt;function vS(){if(Xdt)return Tb;Xdt=1;var f=Tb&&Tb.__createBinding||(Object.create?(function(x,R,H,F){F===void 0&&(F=H);var $=Object.getOwnPropertyDescriptor(R,H);(!$||("get"in $?!R.__esModule:$.writable||$.configurable))&&($={enumerable:!0,get:function(){return R[H]}}),Object.defineProperty(x,F,$)}):(function(x,R,H,F){F===void 0&&(F=H),x[F]=R[H]})),h=Tb&&Tb.__setModuleDefault||(Object.create?(function(x,R){Object.defineProperty(x,"default",{enumerable:!0,value:R})}):function(x,R){x.default=R}),b=Tb&&Tb.__importStar||(function(){var x=function(R){return x=Object.getOwnPropertyNames||function(H){var F=[];for(var $ in H)Object.prototype.hasOwnProperty.call(H,$)&&(F[F.length]=$);return F},x(R)};return function(R){if(R&&R.__esModule)return R;var H={};if(R!=null)for(var F=x(R),$=0;$F.key));if(H!==void 0)throw new Error(`${w.DUPLICATED_METADATA} ${H.toString()}`)}else R=[x];return R}function _(x,R,H,F){const $=M(F);let W={};Reflect.hasOwnMetadata(x,R)&&(W=Reflect.getMetadata(x,R));let re=W[H];if(re===void 0)re=[];else for(const ae of re)if($.some(ce=>ce.key===ae.key))throw new Error(`${w.DUPLICATED_METADATA} ${ae.key.toString()}`);re.push(...$),W[H]=re,Reflect.defineMetadata(x,W,R)}function I(x){return(R,H,F)=>{typeof F=="number"?C(R,H,F,x):T(R,H,x)}}function O(x,R){Reflect.decorate(x,R)}function j(x,R){return function(H,F){R(H,F,x)}}function k(x,R,H){typeof H=="number"?O([j(H,x)],R):typeof H=="string"?Reflect.decorate([x],R,H):O([x],R)}return Tb}var ty={},Jdt;function tGt(){if(Jdt)return ty;Jdt=1;var f=ty&&ty.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=ty&&ty.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=ty&&ty.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M(g,E,C)=>{if(P===void 0){const T=typeof g=="function"?g.name:g.constructor.name;throw new Error((0,f.UNDEFINED_INJECT_ANNOTATION)(T))}(0,b.createTaggedDecorator)(new h.Metadata(m,P))(g,E,C)}}return QY}var t1t;function rGt(){if(t1t)return am;t1t=1;var f=am&&am.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=am&&am.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=am&&am.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M(m,P)=>{const g=new f.Metadata(b,P);if(Reflect.hasOwnMetadata(b,m.constructor))throw new Error(w);Reflect.defineMetadata(b,g,m.constructor)}}return ZY}var s1t;function aGt(){if(s1t)return fm;s1t=1;var f=fm&&fm.__createBinding||(Object.create?(function(E,C,T,M){M===void 0&&(M=T);var _=Object.getOwnPropertyDescriptor(C,T);(!_||("get"in _?!C.__esModule:_.writable||_.configurable))&&(_={enumerable:!0,get:function(){return C[T]}}),Object.defineProperty(E,M,_)}):(function(E,C,T,M){M===void 0&&(M=T),E[M]=C[T]})),h=fm&&fm.__setModuleDefault||(Object.create?(function(E,C){Object.defineProperty(E,"default",{enumerable:!0,value:C})}):function(E,C){E.default=C}),b=fm&&fm.__importStar||(function(){var E=function(C){return E=Object.getOwnPropertyNames||function(T){var M=[];for(var _ in T)Object.prototype.hasOwnProperty.call(T,_)&&(M[M.length]=_);return M},E(C)};return function(C){if(C&&C.__esModule)return C;var T={};if(C!=null)for(var M=E(C),_=0;_{this.resolve=b,this.reject=w}),this.promise.then(b=>this._state="resolved",b=>this._state="rejected")}set state(b){this._state==="unresolved"&&(this._state=b)}get state(){return this._state}}return dL.Deferred=f,dL}var gL={},d1t;function Qn(){return d1t||(d1t=1,Object.defineProperty(gL,"__esModule",{value:!0}),gL.TYPES=void 0,gL.TYPES={Action:Symbol("Action"),IActionDispatcher:Symbol("IActionDispatcher"),IActionDispatcherProvider:Symbol("IActionDispatcherProvider"),IActionHandlerInitializer:Symbol("IActionHandlerInitializer"),ActionHandlerRegistration:Symbol("ActionHandlerRegistration"),ActionHandlerRegistryProvider:Symbol("ActionHandlerRegistryProvider"),IAnchorComputer:Symbol("IAnchor"),AnimationFrameSyncer:Symbol("AnimationFrameSyncer"),IButtonHandlerRegistration:Symbol("IButtonHandlerRegistration"),ICommandPaletteActionProvider:Symbol("ICommandPaletteActionProvider"),ICommandPaletteActionProviderRegistry:Symbol("ICommandPaletteActionProviderRegistry"),CommandRegistration:Symbol("CommandRegistration"),ICommandStack:Symbol("ICommandStack"),CommandStackOptions:Symbol("CommandStackOptions"),ICommandStackProvider:Symbol("ICommandStackProvider"),IContextMenuItemProvider:Symbol.for("IContextMenuProvider"),IContextMenuProviderRegistry:Symbol.for("IContextMenuProviderRegistry"),IContextMenuService:Symbol.for("IContextMenuService"),IContextMenuServiceProvider:Symbol.for("IContextMenuServiceProvider"),DOMHelper:Symbol("DOMHelper"),IDiagramLocker:Symbol("IDiagramLocker"),IEdgeRouter:Symbol("IEdgeRouter"),IEdgeRoutePostprocessor:Symbol("IEdgeRoutePostprocessor"),IEditLabelValidationDecorator:Symbol("IEditLabelValidationDecorator"),IEditLabelValidator:Symbol("IEditLabelValidator"),HiddenModelViewer:Symbol("HiddenModelViewer"),HiddenVNodePostprocessor:Symbol("HiddenVNodeDecorator"),HoverState:Symbol("HoverState"),KeyListener:Symbol("KeyListener"),LayoutRegistration:Symbol("LayoutRegistration"),LayoutRegistry:Symbol("LayoutRegistry"),Layouter:Symbol("Layouter"),LogLevel:Symbol("LogLevel"),ILogger:Symbol("ILogger"),IModelFactory:Symbol("IModelFactory"),IModelLayoutEngine:Symbol("IModelLayoutEngine"),ModelRendererFactory:Symbol("ModelRendererFactory"),ModelSource:Symbol("ModelSource"),ModelSourceProvider:Symbol("ModelSourceProvider"),ModelViewer:Symbol("ModelViewer"),MouseListener:Symbol("MouseListener"),PatcherProvider:Symbol("PatcherProvider"),IPopupModelProvider:Symbol("IPopupModelProvider"),PopupModelViewer:Symbol("PopupModelViewer"),PopupMouseListener:Symbol("PopupMouseListener"),PopupVNodePostprocessor:Symbol("PopupVNodeDecorator"),SModelElementRegistration:Symbol("SModelElementRegistration"),SModelRegistry:Symbol("SModelRegistry"),ISnapper:Symbol("ISnapper"),SvgExporter:Symbol("SvgExporter"),ISvgExportPostprocessor:Symbol("ISvgExportPostprocessor"),IUIExtension:Symbol("IUIExtension"),UIExtensionRegistry:Symbol("UIExtensionRegistry"),IVNodePostprocessor:Symbol("IVNodePostprocessor"),ViewRegistration:Symbol("ViewRegistration"),ViewRegistry:Symbol("ViewRegistry"),IViewer:Symbol("IViewer"),ViewerOptions:Symbol("ViewerOptions"),IViewerProvider:Symbol("IViewerProvider")}),gL}var tf={},ah={},g1t;function q3(){if(g1t)return ah;g1t=1;var f=ah&&ah.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(ah,"__esModule",{value:!0}),ah.MultiInstanceRegistry=ah.InstanceRegistry=ah.FactoryRegistry=ah.ProviderRegistry=void 0;const h=Zt();let b=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");if(this.hasKey(E))throw new Error("Key is already registered: "+E);this.elements.set(E,C)}deregister(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}hasKey(E){return this.elements.has(E)}get(E,C){const T=this.elements.get(E);return T?new T(C):this.missing(E,C)}missing(E,C){throw new Error("Unknown registry key: "+E)}};ah.ProviderRegistry=b,ah.ProviderRegistry=b=f([(0,h.injectable)()],b);let w=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");if(this.hasKey(E))throw new Error(`Key is already registered: ${E}. Use \`overrideModelElement\` instead.`);this.elements.set(E,C)}override(E,C){if(E===void 0)throw new Error("Key is undefined");if(!this.hasKey(E))throw new Error(`Key is not registered: ${E}. Use \`configureModelElement\` instead.`);this.elements.set(E,C)}deregister(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}hasKey(E){return this.elements.has(E)}get(E,C){const T=this.elements.get(E);return T?T(C):this.missing(E,C)}missing(E,C){throw new Error("Unknown registry key: "+E)}};ah.FactoryRegistry=w,ah.FactoryRegistry=w=f([(0,h.injectable)()],w);let m=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");if(this.hasKey(E))throw new Error(`Key is already registered: ${E}. Use \`overrideModelElement\` instead.`);this.elements.set(E,C)}override(E,C){if(E===void 0)throw new Error("Key is undefined");if(!this.hasKey(E))throw new Error(`Key is not registered: ${E}. Use \`configureModelElement\` instead.`);this.elements.set(E,C)}deregister(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}hasKey(E){return this.elements.has(E)}get(E){const C=this.elements.get(E);return C||this.missing(E)}missing(E){throw new Error("Unknown registry key: "+E)}};ah.InstanceRegistry=m,ah.InstanceRegistry=m=f([(0,h.injectable)()],m);let P=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");const T=this.elements.get(E);T!==void 0?T.push(C):this.elements.set(E,[C])}deregisterAll(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}get(E){const C=this.elements.get(E);return C!==void 0?C:[]}};return ah.MultiInstanceRegistry=P,ah.MultiInstanceRegistry=P=f([(0,h.injectable)()],P),ah}var lh={},Xu={},b1t;function Ac(){if(b1t)return Xu;b1t=1,Object.defineProperty(Xu,"__esModule",{value:!0}),Xu.almostEquals=Xu.toRadians=Xu.toDegrees=Xu.Bounds=Xu.isBounds=Xu.Dimension=Xu.centerOfLine=Xu.angleBetweenPoints=Xu.angleOfPoint=Xu.Point=void 0;const f=_S();var h;(function(_){_.ORIGIN=Object.freeze({x:0,y:0});function I(ae,ce){return{x:ae.x+ce.x,y:ae.y+ce.y}}_.add=I;function O(ae,ce){return{x:ae.x-ce.x,y:ae.y-ce.y}}_.subtract=O;function j(ae,ce){return ae.x===ce.x&&ae.y===ce.y}_.equals=j;function k(ae,ce,J){const te=O(ce,ae),fe=x(te),ve={x:fe.x*J,y:fe.y*J};return I(ae,ve)}_.shiftTowards=k;function x(ae){const ce=R(ae);return ce===0||ce===1?_.ORIGIN:{x:ae.x/ce,y:ae.y/ce}}_.normalize=x;function R(ae){return Math.sqrt(Math.pow(ae.x,2)+Math.pow(ae.y,2))}_.magnitude=R;function H(ae,ce,J){return{x:(1-J)*ae.x+J*ce.x,y:(1-J)*ae.y+J*ce.y}}_.linear=H;function F(ae,ce){const J=ce.x-ae.x,te=ce.y-ae.y;return Math.sqrt(J*J+te*te)}_.euclideanDistance=F;function $(ae,ce){return Math.abs(ce.x-ae.x)+Math.abs(ce.y-ae.y)}_.manhattanDistance=$;function W(ae,ce){return Math.max(Math.abs(ce.x-ae.x),Math.abs(ce.y-ae.y))}_.maxDistance=W;function re(ae,ce){return ae.x*ce.x+ae.y*ce.y}_.dotProduct=re})(h||(Xu.Point=h={}));function b(_){return Math.atan2(_.y,_.x)}Xu.angleOfPoint=b;function w(_,I){const O=Math.sqrt((_.x*_.x+_.y*_.y)*(I.x*I.x+I.y*I.y));if(isNaN(O)||O===0)return NaN;const j=_.x*I.x+_.y*I.y;return Math.acos(j/O)}Xu.angleBetweenPoints=w;function m(_,I){const O={x:_.x>I.x?I.x:_.x,y:_.y>I.y?I.y:_.y,width:Math.abs(I.x-_.x),height:Math.abs(I.y-_.y)};return E.center(O)}Xu.centerOfLine=m;var P;(function(_){_.EMPTY=Object.freeze({width:-1,height:-1});function I(O){return O.width>=0&&O.height>=0}_.isValid=I})(P||(Xu.Dimension=P={}));function g(_){return(0,f.hasOwnProperty)(_,["x","y","width","height"])}Xu.isBounds=g;var E;(function(_){_.EMPTY=Object.freeze({x:0,y:0,width:-1,height:-1});function I(x,R){if(!P.isValid(x))return P.isValid(R)?R:_.EMPTY;if(!P.isValid(R))return x;const H=Math.min(x.x,R.x),F=Math.min(x.y,R.y),$=Math.max(x.x+(x.width>=0?x.width:0),R.x+(R.width>=0?R.width:0)),W=Math.max(x.y+(x.height>=0?x.height:0),R.y+(R.height>=0?R.height:0));return{x:H,y:F,width:$-H,height:W-F}}_.combine=I;function O(x,R){return{x:x.x+R.x,y:x.y+R.y,width:x.width,height:x.height}}_.translate=O;function j(x){return{x:x.x+(x.width>=0?.5*x.width:0),y:x.y+(x.height>=0?.5*x.height:0)}}_.center=j;function k(x,R){return R.x>=x.x&&R.x<=x.x+x.width&&R.y>=x.y&&R.y<=x.y+x.height}_.includes=k})(E||(Xu.Bounds=E={}));function C(_){return _*180/Math.PI}Xu.toDegrees=C;function T(_){return _*Math.PI/180}Xu.toRadians=T;function M(_,I){return Math.abs(_-I)<.001}return Xu.almostEquals=M,Xu}var Xme={},p1t;function _A(){return p1t||(p1t=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.mapIterable=f.filterIterable=f.DONE_RESULT=f.toArray=f.FluentIterableImpl=void 0;class h{constructor(C,T){this.startFn=C,this.nextFn=T}[Symbol.iterator](){const C={state:this.startFn(),next:()=>this.nextFn(C.state),[Symbol.iterator]:()=>C};return C}filter(C){return w(this,C)}map(C){return m(this,C)}forEach(C){const T=this[Symbol.iterator]();let M=0,_;do _=T.next(),_.value!==void 0&&C(_.value,M),M++;while(!_.done)}indexOf(C){const T=this[Symbol.iterator]();let M=0,_;do{if(_=T.next(),_.value===C)return M;M++}while(!_.done);return-1}}f.FluentIterableImpl=h;function b(E){if(E.constructor===Array)return E;const C=[];return E.forEach(T=>C.push(T)),C}f.toArray=b,f.DONE_RESULT=Object.freeze({done:!0,value:void 0});function w(E,C){return new h(()=>P(E),T=>{let M;do M=T.next();while(!M.done&&!C(M.value));return M})}f.filterIterable=w;function m(E,C){return new h(()=>P(E),T=>{const{done:M,value:_}=T.next();return M?f.DONE_RESULT:{done:!1,value:C(_)}})}f.mapIterable=m;function P(E){const C=E[Symbol.iterator];if(typeof C=="function")return C.call(E);const T=E.length;return typeof T=="number"&&T>=0?new g(E):{next:()=>f.DONE_RESULT}}class g{constructor(C){this.array=C,this.index=0}next(){return this.indexthis.children.length)throw new Error(`Child index ${I} out of bounds (0..${O.length})`);O.splice(I,0,_)}_.parent=this,this.index.add(_)}remove(_){const I=this.children,O=I.indexOf(_);if(O<0)throw new Error(`No such child ${_.id}`);I.splice(O,1),this.index.remove(_)}removeAll(_){const I=this.children;if(_!==void 0){for(let O=I.length-1;O>=0;O--)if(_(I[O])){const j=I.splice(O,1)[0];this.index.remove(j)}}else I.forEach(O=>{this.index.remove(O)}),I.splice(0,I.length)}move(_,I){const O=this.children,j=O.indexOf(_);if(j===-1)throw new Error(`No such child ${_.id}`);if(I<0||I>O.length-1)throw new Error(`Child index ${I} out of bounds (0..${O.length})`);O.splice(j,1),O.splice(I,0,_)}localToParent(_){return(0,f.isBounds)(_)?_:{x:_.x,y:_.y,width:-1,height:-1}}parentToLocal(_){return(0,f.isBounds)(_)?_:{x:_.x,y:_.y,width:-1,height:-1}}}lh.SParentElementImpl=m;class P extends m{}lh.SChildElementImpl=P;class g extends m{constructor(_=new T){super(),this.canvasBounds=f.Bounds.EMPTY,Object.defineProperty(this,"index",{value:_,writable:!1})}}lh.SModelRootImpl=g;const E="0123456789abcdefghijklmnopqrstuvwxyz";function C(M=8){let _="";for(let I=0;II)}}return lh.ModelIndexImpl=T,lh}var m1t;function ES(){if(m1t)return tf;m1t=1;var f=tf&&tf.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=tf&&tf.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=tf&&tf.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(tf,"__esModule",{value:!0}),tf.createFeatureSet=tf.EMPTY_ROOT=tf.SModelFactory=tf.SModelRegistry=void 0;const w=Zt(),m=Qn(),P=q3(),g=Oc();let E=class extends P.FactoryRegistry{constructor(_){super(),_.forEach(I=>{let O=this.getDefaultFeatures(I.constr);if(!O&&I.features&&I.features.enable&&(O=[]),O){const j=T(O,I.features);I.isOverride?this.override(I.type,()=>{const k=new I.constr;return k.features=j,k}):this.register(I.type,()=>{const k=new I.constr;return k.features=j,k})}else I.isOverride?this.override(I.type,()=>new I.constr):this.register(I.type,()=>new I.constr)})}getDefaultFeatures(_){let I=_;do{const O=I.DEFAULT_FEATURES;if(O)return O;I=Object.getPrototypeOf(I)}while(I)}};tf.SModelRegistry=E,tf.SModelRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.SModelElementRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);let C=class{createElement(_,I){let O;if(this.registry.hasKey(_.type)){const j=this.registry.get(_.type,void 0);if(!(j instanceof g.SChildElementImpl))throw new Error(`Element with type ${_.type} was expected to be an SChildElement.`);O=j}else O=new g.SChildElementImpl;return this.initializeChild(O,_,I)}createRoot(_){let I;if(this.registry.hasKey(_.type)){const O=this.registry.get(_.type,void 0);if(!(O instanceof g.SModelRootImpl))throw new Error(`Element with type ${_.type} was expected to be an SModelRoot.`);I=O}else I=new g.SModelRootImpl;return this.initializeRoot(I,_)}createSchema(_){const I={};for(const O in _)if(!this.isReserved(_,O)){const j=_[O];typeof j!="function"&&(I[O]=j)}return _ instanceof g.SParentElementImpl&&(I.children=_.children.map(O=>this.createSchema(O))),I}initializeElement(_,I){for(const O in I)if(!this.isReserved(_,O)){const j=I[O];typeof j!="function"&&(_[O]=j)}return _}isReserved(_,I){if(["children","parent","index"].indexOf(I)>=0)return!0;let O=_;do{const j=Object.getOwnPropertyDescriptor(O,I);if(j!==void 0)return j.get!==void 0;O=Object.getPrototypeOf(O)}while(O);return!1}initializeParent(_,I){return this.initializeElement(_,I),(0,g.isParent)(I)&&(_.children=I.children.map(O=>this.createElement(O,_))),_}initializeChild(_,I,O){return this.initializeParent(_,I),O!==void 0&&(_.parent=O),_}initializeRoot(_,I){return this.initializeParent(_,I),_.index.add(_),_}};tf.SModelFactory=C,f([(0,w.inject)(m.TYPES.SModelRegistry),h("design:type",E)],C.prototype,"registry",void 0),tf.SModelFactory=C=f([(0,w.injectable)()],C),tf.EMPTY_ROOT=Object.freeze({type:"NONE",id:"EMPTY"});function T(M,_){const I=new Set(M);if(_&&_.enable)for(const O of _.enable)I.add(O);if(_&&_.disable)for(const O of _.disable)I.delete(O);return I}return tf.createFeatureSet=T,tf}var K4={},v1t;function eN(){if(v1t)return K4;v1t=1;var f=K4&&K4.__decorate||function(w,m,P,g){var E=arguments.length,C=E<3?m:g===null?g=Object.getOwnPropertyDescriptor(m,P):g,T;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(w,m,P,g);else for(var M=w.length-1;M>=0;M--)(T=w[M])&&(C=(E<3?T(C):E>3?T(m,P,C):T(m,P))||C);return E>3&&C&&Object.defineProperty(m,P,C),C};Object.defineProperty(K4,"__esModule",{value:!0}),K4.AnimationFrameSyncer=void 0;const h=Zt();let b=class{constructor(){this.tasks=[],this.endTasks=[],this.triggered=!1}isAvailable(){return typeof requestAnimationFrame=="function"}onNextFrame(m){this.tasks.push(m),this.trigger()}onEndOfNextFrame(m){this.endTasks.push(m),this.trigger()}trigger(){this.triggered||(this.triggered=!0,this.isAvailable()?requestAnimationFrame(m=>this.run(m)):setTimeout(m=>this.run(m)))}run(m){const P=this.tasks,g=this.endTasks;this.triggered=!1,this.tasks=[],this.endTasks=[],P.forEach(E=>E.call(void 0,m)),g.forEach(E=>E.call(void 0,m))}};return K4.AnimationFrameSyncer=b,K4.AnimationFrameSyncer=b=f([(0,h.injectable)()],b),K4}var y1t;function Rye(){if(y1t)return Qv;y1t=1;var f=Qv&&Qv.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=Qv&&Qv.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)};Object.defineProperty(Qv,"__esModule",{value:!0}),Qv.ActionDispatcher=void 0;const b=Zt(),w=jc(),m=kye(),P=Qn(),g=ES(),E=eN();(0,w.setRequestContext)("client");let C=class{constructor(){this.postponedActions=[],this.requests=new Map}initialize(){return this.initialized||(this.initialized=this.actionHandlerRegistryProvider().then(M=>{this.actionHandlerRegistry=M,this.handleAction(w.SetModelAction.create(g.EMPTY_ROOT)).catch(()=>{})})),this.initialized}dispatch(M){return this.initialize().then(()=>{if(this.blockUntil!==void 0)return this.handleBlocked(M,this.blockUntil);if(this.diagramLocker.isAllowed(M))return this.handleAction(M)})}dispatchAll(M){return Promise.all(M.map(_=>this.dispatch(_)))}request(M){if(!M.requestId)return Promise.reject(new Error("Request without requestId"));const _=new m.Deferred;return this.requests.set(M.requestId,_),this.dispatch(M).catch(()=>{}),_.promise}handleAction(M){if(M.kind===w.UndoAction.KIND)return this.commandStack.undo().then(()=>{});if(M.kind===w.RedoAction.KIND)return this.commandStack.redo().then(()=>{});if((0,w.isResponseAction)(M)){const O=this.requests.get(M.responseId);if(O!==void 0){if(this.requests.delete(M.responseId),M.kind===w.RejectAction.KIND){const j=M;O.reject(new Error(j.message)),this.logger.warn(this,`Request with id ${M.responseId} failed.`,j.message,j.detail)}else O.resolve(M);return Promise.resolve()}this.logger.log(this,"No matching request for response",M)}const _=this.actionHandlerRegistry.get(M.kind);if(_.length===0){this.logger.warn(this,"Missing handler for action",M);const O=new Error(`Missing handler for action '${M.kind}'`);if((0,w.isRequestAction)(M)){const j=this.requests.get(M.requestId);j!==void 0&&(this.requests.delete(M.requestId),j.reject(O))}return Promise.reject(O)}this.logger.log(this,"Handle",M);const I=[];for(const O of _){const j=O.handle(M);(0,w.isAction)(j)?I.push(this.dispatch(j)):j!==void 0&&(I.push(this.commandStack.execute(j)),this.blockUntil=j.blockUntil)}return Promise.all(I)}handleBlocked(M,_){if(_(M)){this.blockUntil=void 0;const I=this.handleAction(M),O=this.postponedActions;this.postponedActions=[];for(const j of O)this.dispatch(j.action).then(j.resolve,j.reject);return I}else return this.logger.log(this,"Action is postponed due to block condition",M),new Promise((I,O)=>{this.postponedActions.push({action:M,resolve:I,reject:O})})}};return Qv.ActionDispatcher=C,f([(0,b.inject)(P.TYPES.ActionHandlerRegistryProvider),h("design:type",Function)],C.prototype,"actionHandlerRegistryProvider",void 0),f([(0,b.inject)(P.TYPES.ICommandStack),h("design:type",Object)],C.prototype,"commandStack",void 0),f([(0,b.inject)(P.TYPES.ILogger),h("design:type",Object)],C.prototype,"logger",void 0),f([(0,b.inject)(P.TYPES.AnimationFrameSyncer),h("design:type",E.AnimationFrameSyncer)],C.prototype,"syncer",void 0),f([(0,b.inject)(P.TYPES.IDiagramLocker),h("design:type",Object)],C.prototype,"diagramLocker",void 0),Qv.ActionDispatcher=C=f([(0,b.injectable)()],C),Qv}var Xh={},bL={},_1t;function EA(){if(_1t)return bL;_1t=1,Object.defineProperty(bL,"__esModule",{value:!0}),bL.isInjectable=void 0;function f(h){return Reflect.getMetadata("inversify:paramtypes",h)!==void 0}return bL.isInjectable=f,bL}var E1t;function lJ(){if(E1t)return Xh;E1t=1;var f=Xh&&Xh.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Xh&&Xh.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=Xh&&Xh.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(Xh,"__esModule",{value:!0}),Xh.onAction=Xh.configureActionHandler=Xh.ActionHandlerRegistry=void 0;const w=Zt(),m=Qn(),P=q3(),g=EA();let E=class extends P.MultiInstanceRegistry{constructor(_,I){super(),_.forEach(O=>this.register(O.actionKind,O.factory())),I.forEach(O=>this.initializeActionHandler(O))}initializeActionHandler(_){_.initialize(this)}};Xh.ActionHandlerRegistry=E,Xh.ActionHandlerRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.ActionHandlerRegistration)),b(0,(0,w.optional)()),b(1,(0,w.multiInject)(m.TYPES.IActionHandlerInitializer)),b(1,(0,w.optional)()),h("design:paramtypes",[Array,Array])],E);function C(M,_,I){if(typeof I=="function"){if(!(0,g.isInjectable)(I))throw new Error(`Action handlers should be @injectable: ${I.name}`);M.isBound(I)||M.bind(I).toSelf()}M.bind(m.TYPES.ActionHandlerRegistration).toDynamicValue(O=>({actionKind:_,factory:()=>O.container.get(I)}))}Xh.configureActionHandler=C;function T(M,_,I){M.bind(m.TYPES.ActionHandlerRegistration).toConstantValue({actionKind:_,factory:()=>({handle:I})})}return Xh.onAction=T,Xh}var q4={},S1t;function zpt(){if(S1t)return q4;S1t=1;var f=q4&&q4.__decorate||function(w,m,P,g){var E=arguments.length,C=E<3?m:g===null?g=Object.getOwnPropertyDescriptor(m,P):g,T;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(w,m,P,g);else for(var M=w.length-1;M>=0;M--)(T=w[M])&&(C=(E<3?T(C):E>3?T(m,P,C):T(m,P))||C);return E>3&&C&&Object.defineProperty(m,P,C),C};Object.defineProperty(q4,"__esModule",{value:!0}),q4.DefaultDiagramLocker=void 0;const h=Zt();let b=class{isAllowed(m){return!0}};return q4.DefaultDiagramLocker=b,q4.DefaultDiagramLocker=b=f([(0,h.injectable)()],b),q4}var EM={},pL={},P1t;function Vpt(){if(P1t)return pL;P1t=1,Object.defineProperty(pL,"__esModule",{value:!0}),pL.easeInOut=void 0;function f(h){return h<.5?h*h*2:1-(1-h)*(1-h)*2}return pL.easeInOut=f,pL}var M1t;function SA(){if(M1t)return EM;M1t=1,Object.defineProperty(EM,"__esModule",{value:!0}),EM.CompoundAnimation=EM.Animation=void 0;const f=Vpt();class h{constructor(m,P=f.easeInOut){this.context=m,this.ease=P,this.stopped=!1}start(){return this.stopped=!1,new Promise((m,P)=>{let g,E=0;const C=T=>{E++;let M;g===void 0?(g=T,M=0):M=T-g;const _=Math.min(1,M/this.context.duration),I=this.tween(this.ease(_),this.context);this.context.modelChanged.update(I),_===1?(this.context.logger.log(this,E*1e3/this.context.duration+" fps"),m(I)):this.stopped?(this.context.logger.log(this,"Animation stopped at "+_*100+"%"),m(I)):this.context.syncer.onNextFrame(C)};if(this.context.syncer.isAvailable())this.context.syncer.onNextFrame(C);else{const T=this.tween(1,this.context);m(T)}})}stop(){this.stopped=!0}}EM.Animation=h;class b extends h{constructor(m,P,g=[],E=f.easeInOut){super(P,E),this.model=m,this.context=P,this.components=g,this.ease=E}include(m){return this.components.push(m),this}tween(m,P){for(const g of this.components)g.tween(m,P);return this.model}}return EM.CompoundAnimation=b,EM}var su={},SM={},wL={},C1t;function fGt(){if(C1t)return wL;C1t=1,Object.defineProperty(wL,"__esModule",{value:!0}),wL.ServerActionHandlerRegistry=void 0;class f{constructor(){this.handlers=new Map}getHandler(b){return this.handlers.get(b)}onAction(b,w){this.handlers.has(b)?this.handlers.get(b).push(w):this.handlers.set(b,[w])}removeActionHandler(b,w){const m=this.handlers.get(b);if(m){const P=m.indexOf(w);P>=0&&m.splice(P,1)}}}return wL.ServerActionHandlerRegistry=f,wL}var mL={},qd={},I1t;function LM(){if(I1t)return qd;I1t=1,Object.defineProperty(qd,"__esModule",{value:!0}),qd.SModelIndex=qd.findElement=qd.getSubType=qd.getBasicType=qd.applyBounds=qd.cloneModel=void 0;function f(g){return JSON.parse(JSON.stringify(g))}qd.cloneModel=f;function h(g,E){const C=new P;C.add(g);for(const T of E.bounds){const M=C.getById(T.elementId);if(M){const _=M;T.newPosition&&(_.position={x:T.newPosition.x,y:T.newPosition.y}),T.newSize&&(_.size={width:T.newSize.width,height:T.newSize.height})}}if(E.alignments)for(const T of E.alignments){const M=C.getById(T.elementId);if(M){const _=M;_.alignment={x:T.newAlignment.x,y:T.newAlignment.y}}}}qd.applyBounds=h;function b(g){if(!g.type)return"";const E=g.type.indexOf(":");return E>=0?g.type.substring(0,E):g.type}qd.getBasicType=b;function w(g){if(!g.type)return"";const E=g.type.indexOf(":");return E>=0?g.type.substring(E+1):g.type}qd.getSubType=w;function m(g,E){if(g.id===E)return g;if(g.children)for(const C of g.children){const T=m(C,E);if(T!==void 0)return T}}qd.findElement=m;class P{constructor(){this.id2element=new Map,this.id2parent=new Map}add(E){if(E.id){if(this.contains(E))throw new Error("Duplicate ID in model: "+E.id)}else throw new Error("Model element has no ID.");if(this.id2element.set(E.id,E),Array.isArray(E.children))for(const C of E.children)this.add(C),this.id2parent.set(C.id,E);return this}remove(E){if(this.id2element.delete(E.id),Array.isArray(E.children))for(const C of E.children)this.id2parent.delete(C.id),this.remove(C);return this}contains(E){return this.id2element.has(E.id)}getById(E){return this.id2element.get(E)}getParent(E){return this.id2parent.get(E)}getRoot(E){let C=E;for(;C;){const T=this.id2parent.get(C.id);if(T===void 0)return C;C=T}throw new Error("Element has no root")}}return qd.SModelIndex=P,qd}var T1t;function hGt(){if(T1t)return mL;T1t=1,Object.defineProperty(mL,"__esModule",{value:!0}),mL.DiagramServer=void 0;const f=jc(),h=kye(),b=LM();class w{constructor(P,g){this.state={currentRoot:{type:"NONE",id:"ROOT"},revision:0},this.requests=new Map,this.dispatch=P,this.diagramGenerator=g.DiagramGenerator,this.layoutEngine=g.ModelLayoutEngine,this.actionHandlerRegistry=g.ServerActionHandlerRegistry}setModel(P){return P.revision=++this.state.revision,this.state.currentRoot=P,this.submitModel(P,!1)}updateModel(P){return P.revision=++this.state.revision,this.state.currentRoot=P,this.submitModel(P,!0)}get needsClientLayout(){return this.state.options&&this.state.options.needsClientLayout!==void 0?!!this.state.options.needsClientLayout:!0}get needsServerLayout(){return this.state.options&&this.state.options.needsServerLayout!==void 0?!!this.state.options.needsServerLayout:!1}accept(P){if((0,f.isResponseAction)(P)){const g=P.responseId,E=this.requests.get(g);if(E){if(this.requests.delete(g),P.kind===f.RejectAction.KIND){const C=P;E.reject(new Error(C.message)),console.warn(`Request with id ${P.responseId} failed: ${C.message}`,C.detail)}else E.resolve(P);return Promise.resolve()}console.info("No matching request for response:",P)}return this.handleAction(P)}request(P){P.requestId||(P.requestId="server_"+(0,f.generateRequestId)());const g=new h.Deferred;return this.requests.set(P.requestId,g),this.dispatch(P).catch(E=>{this.requests.delete(P.requestId),g.reject(E)}),g.promise}rejectRemoteRequest(P,g){P&&(0,f.isRequestAction)(P)&&this.dispatch({kind:f.RejectAction.KIND,responseId:P.requestId,message:g.message,detail:g.stack})}handleAction(P){var g,E;const C=(g=this.actionHandlerRegistry)===null||g===void 0?void 0:g.getHandler(P.kind);if(C&&C.length===1)return(E=C[0](P,this.state,this))!==null&&E!==void 0?E:Promise.resolve();if(C&&C.length>1)return Promise.all(C.map(T=>{var M;return(M=T(P,this.state,this))!==null&&M!==void 0?M:Promise.resolve()}));switch(P.kind){case f.RequestModelAction.KIND:return this.handleRequestModel(P);case f.ComputedBoundsAction.KIND:return this.handleComputedBounds(P);case f.LayoutAction.KIND:return this.handleLayout(P)}return console.warn(`Unhandled action from client: ${P.kind}`),Promise.resolve()}async handleRequestModel(P){var g;this.state.options=P.options;try{const E=await this.diagramGenerator.generate({options:(g=this.state.options)!==null&&g!==void 0?g:{},state:this.state});E.revision=++this.state.revision,this.state.currentRoot=E,await this.submitModel(this.state.currentRoot,!1,P)}catch(E){this.rejectRemoteRequest(P,E),console.error("Failed to generate diagram:",E)}}async submitModel(P,g,E){if(this.needsClientLayout)if(!this.needsServerLayout)this.dispatch({kind:f.RequestBoundsAction.KIND,newRoot:P});else{const C=f.RequestBoundsAction.create(P),T=await this.request(C),M=this.state.currentRoot;T.revision===M.revision?((0,b.applyBounds)(M,T),await this.doSubmitModel(M,g,E)):this.rejectRemoteRequest(E,new Error(`Model revision does not match: ${T.revision}`))}else await this.doSubmitModel(P,g,E)}async doSubmitModel(P,g,E){if(P.revision!==this.state.revision)return;this.needsServerLayout&&this.layoutEngine&&(P=await this.layoutEngine.layout(P));const C=P.type;if(E&&E.kind===f.RequestModelAction.KIND){const T=E.requestId,M=f.SetModelAction.create(P,T);await this.dispatch(M)}else g&&C===this.state.lastSubmittedModelType?await this.dispatch({kind:f.UpdateModelAction.KIND,newRoot:P,cause:E}):await this.dispatch({kind:f.SetModelAction.KIND,newRoot:P});this.state.lastSubmittedModelType=C}handleComputedBounds(P){return P.revision!==this.state.currentRoot.revision?Promise.reject():((0,b.applyBounds)(this.state.currentRoot,P),Promise.resolve())}async handleLayout(P){if(this.layoutEngine){if(!this.needsServerLayout){let g=(0,b.cloneModel)(this.state.currentRoot);g=await this.layoutEngine.layout(g),g.revision=++this.state.revision,this.state.currentRoot=g}await this.doSubmitModel(this.state.currentRoot,!0,P)}}}return mL.DiagramServer=w,mL}var Jme={},j1t;function dGt(){return j1t||(j1t=1,Object.defineProperty(Jme,"__esModule",{value:!0})),Jme}var PM={},A1t;function gGt(){if(A1t)return PM;A1t=1,Object.defineProperty(PM,"__esModule",{value:!0}),PM.isZoomable=PM.isScrollable=void 0;const f=_S();function h(w){return(0,f.hasOwnProperty)(w,"scroll")}PM.isScrollable=h;function b(w){return(0,f.hasOwnProperty)(w,"zoom")}return PM.isZoomable=b,PM}var Qme={},O1t;function bGt(){return O1t||(O1t=1,Object.defineProperty(Qme,"__esModule",{value:!0})),Qme}var D1t;function Sp(){return D1t||(D1t=1,(function(f){var h=SM&&SM.__createBinding||(Object.create?(function(w,m,P,g){g===void 0&&(g=P);var E=Object.getOwnPropertyDescriptor(m,P);(!E||("get"in E?!m.__esModule:E.writable||E.configurable))&&(E={enumerable:!0,get:function(){return m[P]}}),Object.defineProperty(w,g,E)}):(function(w,m,P,g){g===void 0&&(g=P),w[g]=m[P]})),b=SM&&SM.__exportStar||function(w,m){for(var P in w)P!=="default"&&!Object.prototype.hasOwnProperty.call(m,P)&&h(m,w,P)};Object.defineProperty(f,"__esModule",{value:!0}),b(fGt(),f),b(jc(),f),b(hGt(),f),b(dGt(),f),b(gGt(),f),b(kye(),f),b(Ac(),f),b(bGt(),f),b(LM(),f),b(_S(),f)})(SM)),SM}var k1t;function Ca(){if(k1t)return su;k1t=1;var f=su&&su.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k};Object.defineProperty(su,"__esModule",{value:!0}),su.ResetCommand=su.SystemCommand=su.PopupCommand=su.HiddenCommand=su.MergeableCommand=su.Command=su.isStoppableCommand=void 0,vye();const h=Zt(),b=Sp();function w(M){return M&&(0,b.hasOwnProperty)(M,"stoppableCommandKey")&&"stopExecution"in M&&typeof M.stopExecution=="function"}su.isStoppableCommand=w;let m=class{};su.Command=m,su.Command=m=f([(0,h.injectable)()],m);let P=class extends m{merge(_,I){return!1}};su.MergeableCommand=P,su.MergeableCommand=P=f([(0,h.injectable)()],P);let g=class extends m{undo(_){return _.logger.error(this,"Cannot undo a hidden command"),_.root}redo(_){return _.logger.error(this,"Cannot redo a hidden command"),_.root}};su.HiddenCommand=g,su.HiddenCommand=g=f([(0,h.injectable)()],g);let E=class extends m{};su.PopupCommand=E,su.PopupCommand=E=f([(0,h.injectable)()],E);let C=class extends m{};su.SystemCommand=C,su.SystemCommand=C=f([(0,h.injectable)()],C);let T=class extends m{};return su.ResetCommand=T,su.ResetCommand=T=f([(0,h.injectable)()],T),su}var Jh={},R1t;function kb(){if(R1t)return Jh;R1t=1;var f=Jh&&Jh.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=Jh&&Jh.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=Jh&&Jh.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(Jh,"__esModule",{value:!0}),Jh.configureCommand=Jh.CommandActionHandlerInitializer=Jh.CommandActionHandler=void 0;const w=Zt(),m=EA(),P=Qn();class g{constructor(M){this.commandRegistration=M}handle(M){return this.commandRegistration.factory(M)}}Jh.CommandActionHandler=g;let E=class{constructor(M){this.registrations=M}initialize(M){this.registrations.forEach(_=>M.register(_.kind,new g(_)))}};Jh.CommandActionHandlerInitializer=E,Jh.CommandActionHandlerInitializer=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.CommandRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);function C(T,M){if(!(0,m.isInjectable)(M))throw new Error(`Commands should be @injectable: ${M.name}`);T.isBound(M)||T.bind(M).toSelf(),T.bind(P.TYPES.CommandRegistration).toDynamicValue(_=>({kind:M.KIND,factory:I=>{const O=new w.Container;return O.parent=_.container,O.bind(P.TYPES.Action).toConstantValue(I),O.get(M)}}))}return Jh.configureCommand=C,Jh}var Zme={},x1t;function Gpt(){return x1t||(x1t=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.overrideCommandStackOptions=f.configureCommandStackOptions=f.defaultCommandStackOptions=void 0;const h=_S(),b=Qn(),w=()=>({defaultDuration:250,undoHistoryLimit:50});f.defaultCommandStackOptions=w;function m(g,E){const C=Object.assign(Object.assign({},(0,f.defaultCommandStackOptions)()),E);g.isBound(b.TYPES.CommandStackOptions)?g.rebind(b.TYPES.CommandStackOptions).toConstantValue(C):g.bind(b.TYPES.CommandStackOptions).toConstantValue(C)}f.configureCommandStackOptions=m;function P(g,E){const C=g.get(b.TYPES.CommandStackOptions);return(0,h.safeAssign)(C,E),C}f.overrideCommandStackOptions=P})(Zme)),Zme}var cy={},L1t;function Upt(){if(L1t)return cy;L1t=1;var f=cy&&cy.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=cy&&cy.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)};Object.defineProperty(cy,"__esModule",{value:!0}),cy.CommandStack=void 0;const b=Zt(),w=Qn(),m=ES(),P=Oc(),g=eN(),E=Ca();let C=class{constructor(){this.undoStack=[],this.redoStack=[],this.stoppableCommands=new Map,this.offStack=[]}initialize(){this.currentPromise=Promise.resolve({main:{model:this.modelFactory.createRoot(m.EMPTY_ROOT),modelChanged:!1},hidden:{model:this.modelFactory.createRoot(m.EMPTY_ROOT),modelChanged:!1},popup:{model:this.modelFactory.createRoot(m.EMPTY_ROOT),modelChanged:!1}})}get currentModel(){return this.currentPromise.then(_=>_.main.model)}executeAll(_){return _.forEach(I=>{this.logger.log(this,"Executing",I),this.handleCommand(I,I.execute,this.mergeOrPush)}),this.thenUpdate()}execute(_){return this.logger.log(this,"Executing",_),this.handleCommand(_,_.execute,this.mergeOrPush),this.thenUpdate()}undo(){this.undoOffStackSystemCommands(),this.undoPreceedingSystemCommands();const _=this.undoStack[this.undoStack.length-1];return _!==void 0&&!this.isBlockUndo(_)&&(this.undoStack.pop(),this.logger.log(this,"Undoing",_),this.handleCommand(_,_.undo,(I,O)=>{this.redoStack.push(I)})),this.thenUpdate()}redo(){this.undoOffStackSystemCommands();const _=this.redoStack.pop();return _!==void 0&&(this.logger.log(this,"Redoing",_),this.handleCommand(_,_.redo,(I,O)=>{this.pushToUndoStack(I)})),this.redoFollowingSystemCommands(),this.thenUpdate()}handleCommand(_,I,O){if((0,E.isStoppableCommand)(_)){const j=this.stoppableCommands.get(_.stoppableCommandKey);j&&j.stopExecution(),this.stoppableCommands.set(_.stoppableCommandKey,_)}this.currentPromise=this.currentPromise.then(j=>new Promise(k=>{let x;_ instanceof E.HiddenCommand?x="hidden":_ instanceof E.PopupCommand?x="popup":x="main";const R=this.createContext(j.main.model);let H;try{H=I.call(_,R)}catch($){this.logger.error(this,"Failed to execute command:",$),H=j[x].model}const F=T(j);H instanceof Promise?H.then($=>{x==="main"&&O.call(this,_,R),F[x]={model:$,modelChanged:!0},k(F)}):H instanceof P.SModelRootImpl?(x==="main"&&O.call(this,_,R),F[x]={model:H,modelChanged:!0},k(F)):(x==="main"&&O.call(this,_,R),F[x]={model:H.model,modelChanged:j[x].modelChanged||H.modelChanged,cause:H.cause},k(F))}))}pushToUndoStack(_){this.undoStack.push(_),this.options.undoHistoryLimit>=0&&this.undoStack.length>this.options.undoHistoryLimit&&this.undoStack.splice(0,this.undoStack.length-this.options.undoHistoryLimit)}thenUpdate(){return this.currentPromise=this.currentPromise.then(_=>{const I=T(_);return _.hidden.modelChanged&&(this.updateHidden(_.hidden.model,_.hidden.cause),I.hidden.modelChanged=!1,I.hidden.cause=void 0),_.main.modelChanged&&(this.update(_.main.model,_.main.cause),I.main.modelChanged=!1,I.main.cause=void 0),_.popup.modelChanged&&(this.updatePopup(_.popup.model,_.popup.cause),I.popup.modelChanged=!1,I.popup.cause=void 0),I}),this.currentModel}update(_,I){this.modelViewer===void 0&&(this.modelViewer=this.viewerProvider.modelViewer),this.modelViewer.update(_,I)}updateHidden(_,I){this.hiddenModelViewer===void 0&&(this.hiddenModelViewer=this.viewerProvider.hiddenModelViewer),this.hiddenModelViewer.update(_,I)}updatePopup(_,I){this.popupModelViewer===void 0&&(this.popupModelViewer=this.viewerProvider.popupModelViewer),this.popupModelViewer.update(_,I)}mergeOrPush(_,I){if(this.isBlockUndo(_)){this.undoStack=[],this.redoStack=[],this.offStack=[],this.pushToUndoStack(_);return}if(this.isPushToOffStack(_)&&this.redoStack.length>0){if(this.offStack.length>0){const O=this.offStack[this.offStack.length-1];if(O instanceof E.MergeableCommand&&O.merge(_,I))return}this.offStack.push(_);return}if(this.isPushToUndoStack(_)){if(this.offStack.forEach(O=>this.undoStack.push(O)),this.offStack=[],this.redoStack=[],this.undoStack.length>0){const O=this.undoStack[this.undoStack.length-1];if(O instanceof E.MergeableCommand&&O.merge(_,I))return}this.pushToUndoStack(_)}}undoOffStackSystemCommands(){let _=this.offStack.pop();for(;_!==void 0;)this.logger.log(this,"Undoing off-stack",_),this.handleCommand(_,_.undo,()=>{}),_=this.offStack.pop()}undoPreceedingSystemCommands(){let _=this.undoStack[this.undoStack.length-1];for(;_!==void 0&&this.isPushToOffStack(_);)this.undoStack.pop(),this.logger.log(this,"Undoing",_),this.handleCommand(_,_.undo,(I,O)=>{this.redoStack.push(I)}),_=this.undoStack[this.undoStack.length-1]}redoFollowingSystemCommands(){let _=this.redoStack[this.redoStack.length-1];for(;_!==void 0&&this.isPushToOffStack(_);)this.redoStack.pop(),this.logger.log(this,"Redoing ",_),this.handleCommand(_,_.redo,(I,O)=>{this.pushToUndoStack(I)}),_=this.redoStack[this.redoStack.length-1]}createContext(_){return{root:_,modelChanged:this,modelFactory:this.modelFactory,duration:this.options.defaultDuration,logger:this.logger,syncer:this.syncer}}isPushToOffStack(_){return _ instanceof E.SystemCommand}isPushToUndoStack(_){return!(_ instanceof E.HiddenCommand)}isBlockUndo(_){return _ instanceof E.ResetCommand}};cy.CommandStack=C,f([(0,b.inject)(w.TYPES.IModelFactory),h("design:type",Object)],C.prototype,"modelFactory",void 0),f([(0,b.inject)(w.TYPES.IViewerProvider),h("design:type",Object)],C.prototype,"viewerProvider",void 0),f([(0,b.inject)(w.TYPES.ILogger),h("design:type",Object)],C.prototype,"logger",void 0),f([(0,b.inject)(w.TYPES.AnimationFrameSyncer),h("design:type",g.AnimationFrameSyncer)],C.prototype,"syncer",void 0),f([(0,b.inject)(w.TYPES.CommandStackOptions),h("design:type",Object)],C.prototype,"options",void 0),f([(0,b.postConstruct)(),h("design:type",Function),h("design:paramtypes",[]),h("design:returntype",void 0)],C.prototype,"initialize",null),cy.CommandStack=C=f([(0,b.injectable)()],C);function T(M){return{main:Object.assign({},M.main),hidden:Object.assign({},M.hidden),popup:Object.assign({},M.popup)}}return cy}var fh={},Hd={},N1t;function My(){if(N1t)return Hd;N1t=1,Object.defineProperty(Hd,"__esModule",{value:!0}),Hd.isSVGGraphicsElement=Hd.hitsMouseEvent=Hd.getWindowScroll=Hd.isCrossSite=Hd.isMac=Hd.isCtrlOrCmd=void 0;const f=Sp();function h(E){return b()?E.metaKey:E.ctrlKey}Hd.isCtrlOrCmd=h;function b(){return window.navigator.userAgent.indexOf("Mac")!==-1}Hd.isMac=b;function w(E){if(E&&typeof window<"u"&&window.location){let C="";return window.location.protocol&&(C+=window.location.protocol+"//"),window.location.host&&(C+=window.location.host),C.length>0&&!E.startsWith(C)}return!1}Hd.isCrossSite=w;function m(){return typeof window>"u"?f.Point.ORIGIN:{x:window.pageXOffset,y:window.pageYOffset}}Hd.getWindowScroll=m;function P(E,C){const T=E.getBoundingClientRect();return C.clientX>=T.left&&C.clientX<=T.right&&C.clientY>=T.top&&C.clientY<=T.bottom}Hd.hitsMouseEvent=P;function g(E){return typeof E.getBBox=="function"}return Hd.isSVGGraphicsElement=g,Hd}var F1t;function fJ(){if(F1t)return fh;F1t=1;var f=fh&&fh.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h=fh&&fh.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)},b=fh&&fh.__param||function(I,O){return function(j,k){O(j,k,I)}};Object.defineProperty(fh,"__esModule",{value:!0}),fh.InitializeCanvasBoundsCommand=fh.InitializeCanvasBoundsAction=fh.CanvasBoundsInitializer=void 0;const w=Zt(),m=Ac(),P=Qn(),g=Oc(),E=Ca(),C=My();let T=class{decorate(O,j){return j instanceof g.SModelRootImpl&&!m.Dimension.isValid(j.canvasBounds)&&(this.rootAndVnode=[j,O]),O}postUpdate(){if(this.rootAndVnode!==void 0){const O=this.rootAndVnode[1].elm,j=this.rootAndVnode[0].canvasBounds;if(O!==void 0){const k=this.getBoundsInPage(O);(0,m.almostEquals)(k.x,j.x)&&(0,m.almostEquals)(k.y,j.y)&&(0,m.almostEquals)(k.width,j.width)&&(0,m.almostEquals)(k.height,j.width)||this.actionDispatcher.dispatch(M.create(k))}this.rootAndVnode=void 0}}getBoundsInPage(O){const j=O.getBoundingClientRect(),k=(0,C.getWindowScroll)();return{x:j.left+k.x,y:j.top+k.y,width:j.width,height:j.height}}};fh.CanvasBoundsInitializer=T,f([(0,w.inject)(P.TYPES.IActionDispatcher),h("design:type",Object)],T.prototype,"actionDispatcher",void 0),fh.CanvasBoundsInitializer=T=f([(0,w.injectable)()],T);var M;(function(I){I.KIND="initializeCanvasBounds";function O(j){return{kind:I.KIND,newCanvasBounds:j}}I.create=O})(M||(fh.InitializeCanvasBoundsAction=M={}));let _=class extends E.SystemCommand{constructor(O){super(),this.action=O}execute(O){return this.newCanvasBounds=this.action.newCanvasBounds,O.root.canvasBounds=this.newCanvasBounds,O.root}undo(O){return O.root}redo(O){return O.root}};return fh.InitializeCanvasBoundsCommand=_,_.KIND=M.KIND,fh.InitializeCanvasBoundsCommand=_=f([(0,w.injectable)(),b(0,(0,w.inject)(P.TYPES.Action)),h("design:paramtypes",[Object])],_),fh}var gp={},B1t;function xye(){if(B1t)return gp;B1t=1;var f=gp&&gp.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=gp&&gp.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=gp&&gp.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(gp,"__esModule",{value:!0}),gp.SetModelCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=fJ();let C=class extends P.ResetCommand{constructor(M){super(),this.action=M}execute(M){return this.oldRoot=M.modelFactory.createRoot(M.root),this.newRoot=M.modelFactory.createRoot(this.action.newRoot),this.newRoot}undo(M){return this.oldRoot}redo(M){return this.newRoot}get blockUntil(){return M=>M.kind===E.InitializeCanvasBoundsCommand.KIND}};return gp.SetModelCommand=C,C.KIND=m.SetModelAction.KIND,gp.SetModelCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],C),gp}var hh={},$1t;function Qh(){if($1t)return hh;$1t=1,Object.defineProperty(hh,"__esModule",{value:!0}),hh.transformToRootBounds=hh.containsSome=hh.translateBounds=hh.translatePoint=hh.findParentByFeature=hh.findParent=hh.registerModelElement=void 0;const f=Qn(),h=Oc();function b(T,M,_,I,O){T.bind(f.TYPES.SModelElementRegistration).toConstantValue({type:M,constr:_,features:I,isOverride:O})}hh.registerModelElement=b;function w(T,M){let _=T;for(;_!==void 0;){if(M(_))return _;_ instanceof h.SChildElementImpl?_=_.parent:_=void 0}return _}hh.findParent=w;function m(T,M){let _=T;for(;_!==void 0;){if(M(_))return _;_ instanceof h.SChildElementImpl?_=_.parent:_=void 0}return _}hh.findParentByFeature=m;function P(T,M,_){if(M!==_){for(;M instanceof h.SChildElementImpl;)if(T=M.localToParent(T),M=M.parent,M===_)return T;const I=[];for(;_ instanceof h.SChildElementImpl;)I.push(_),_=_.parent;if(M!==_)throw new Error("Incompatible source and target: "+M.id+", "+_.id);for(let O=I.length-1;O>=0;O--)T=I[O].parentToLocal(T)}return T}hh.translatePoint=P;function g(T,M,_){const I=P(T,M,_),O=P({x:T.x+T.width,y:T.y+T.height},M,_);return{x:I.x,y:I.y,width:O.x-I.x,height:O.y-I.y}}hh.translateBounds=g;function E(T,M){const _=O=>T.index.getById(O.id)!==void 0,I=O=>O.some(j=>_(j)||I(j.children));return I([M])}hh.containsSome=E;function C(T,M){for(;T instanceof h.SChildElementImpl;)M=T.localToParent(M),T=T.parent;return M}return hh.transformToRootBounds=C,hh}var dh={},K1t;function hJ(){if(K1t)return dh;K1t=1;var f=dh&&dh.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=dh&&dh.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=dh&&dh.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(dh,"__esModule",{value:!0}),dh.SetUIExtensionVisibilityCommand=dh.SetUIExtensionVisibilityAction=dh.UIExtensionRegistry=void 0;const w=Zt(),m=q3(),P=Ca(),g=Qn();let E=class extends m.InstanceRegistry{constructor(_=[]){super(),_.forEach(I=>this.register(I.id(),I))}};dh.UIExtensionRegistry=E,dh.UIExtensionRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.IUIExtension)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);var C;(function(M){M.KIND="setUIExtensionVisibility";function _(I){var O;return{kind:M.KIND,extensionId:I.extensionId,visible:I.visible,contextElementsId:(O=I.contextElementsId)!==null&&O!==void 0?O:[]}}M.create=_})(C||(dh.SetUIExtensionVisibilityAction=C={}));let T=class extends P.SystemCommand{constructor(_){super(),this.action=_}execute(_){const I=this.registry.get(this.action.extensionId);return I&&(this.action.visible?I.show(_.root,...this.action.contextElementsId):I.hide()),{model:_.root,modelChanged:!1}}undo(_){return{model:_.root,modelChanged:!1}}redo(_){return{model:_.root,modelChanged:!1}}};return dh.SetUIExtensionVisibilityCommand=T,T.KIND=C.KIND,f([(0,w.inject)(g.TYPES.UIExtensionRegistry),h("design:type",E)],T.prototype,"registry",void 0),dh.SetUIExtensionVisibilityCommand=T=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],T),dh}var bp={},q1t;function Lye(){if(q1t)return bp;q1t=1;var f=bp&&bp.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=bp&&bp.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(bp,"__esModule",{value:!0}),bp.AbstractUIExtension=bp.isUIExtension=void 0;const b=Zt(),w=Sp(),m=Qn();function P(E){return(0,w.hasOwnProperty)(E,"id","function")&&(0,w.hasOwnProperty)(E,"show","function")&&(0,w.hasOwnProperty)(E,"hide","function")}bp.isUIExtension=P;let g=class{show(C,...T){this.activeElement=document.activeElement,!(!this.containerElement&&!this.initialize())&&(this.onBeforeShow(this.containerElement,C,...T),this.setContainerVisible(!0))}hide(){this.setContainerVisible(!1),this.restoreFocus(),this.activeElement=null}restoreFocus(){const C=this.activeElement;C&&C.focus()}initialize(){const C=document.getElementById(this.options.baseDiv);return C?(this.containerElement=this.getOrCreateContainer(C.id),this.initializeContents(this.containerElement),C&&C.insertBefore(this.containerElement,C.firstChild),!0):(this.logger.warn(this,`Could not obtain sprotty base container for initializing UI extension ${this.id}`,this),!1)}getOrCreateContainer(C){let T=document.getElementById(this.id());return T===null&&(T=document.createElement("div"),T.id=C+"_"+this.id(),T.classList.add(this.containerClass())),T}setContainerVisible(C){this.containerElement&&(C?(this.containerElement.style.visibility="visible",this.containerElement.style.opacity="1"):(this.containerElement.style.visibility="hidden",this.containerElement.style.opacity="0"))}onBeforeShow(C,T,...M){}};return bp.AbstractUIExtension=g,f([(0,b.inject)(m.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"options",void 0),f([(0,b.inject)(m.TYPES.ILogger),h("design:type",Object)],g.prototype,"logger",void 0),bp.AbstractUIExtension=g=f([(0,b.injectable)()],g),bp}var zd={},nf={},H1t;function mh(){if(H1t)return nf;H1t=1,Object.defineProperty(nf,"__esModule",{value:!0}),nf.getAttrs=nf.on=nf.mergeStyle=nf.copyClassesFromElement=nf.copyClassesFromVNode=nf.setNamespace=nf.setClass=nf.setAttr=void 0;function f(_,I,O){E(_)[I]=O}nf.setAttr=f;function h(_,I,O){T(_)[I]=O}nf.setClass=h;function b(_,I){_.data===void 0&&(_.data={}),_.data.ns=I;const O=_.children;if(O!==void 0)for(let j=0;jh(I,j,!0))}nf.copyClassesFromVNode=w;function m(_,I){const O=_.classList;for(let j=0;j=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=zd&&zd.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=zd&&zd.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(zd,"__esModule",{value:!0}),zd.KeyListener=zd.KeyTool=void 0;const w=Zt(),m=Qn(),P=Oc(),g=mh();let E=class{constructor(M=[]){this.keyListeners=M}register(M){this.keyListeners.push(M)}deregister(M){const _=this.keyListeners.indexOf(M);_>=0&&this.keyListeners.splice(_,1)}handleEvent(M,_,I){const O=this.keyListeners.map(j=>j[M].apply(j,[_,I])).reduce((j,k)=>j.concat(k));O.length>0&&(I.preventDefault(),this.actionDispatcher.dispatchAll(O))}keyDown(M,_){this.handleEvent("keyDown",M,_)}keyUp(M,_){this.handleEvent("keyUp",M,_)}focus(){}decorate(M,_){return _ instanceof P.SModelRootImpl&&((0,g.on)(M,"focus",this.focus.bind(this,_)),(0,g.on)(M,"keydown",this.keyDown.bind(this,_)),(0,g.on)(M,"keyup",this.keyUp.bind(this,_))),M}postUpdate(){}};zd.KeyTool=E,f([(0,w.inject)(m.TYPES.IActionDispatcher),h("design:type",Object)],E.prototype,"actionDispatcher",void 0),zd.KeyTool=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.KeyListener)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);let C=class{keyDown(M,_){return[]}keyUp(M,_){return[]}};return zd.KeyListener=C,zd.KeyListener=C=f([(0,w.injectable)()],C),zd}var Qa={},sy={},V1t;function tN(){if(V1t)return sy;V1t=1;var f=sy&&sy.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M},h=sy&&sy.__metadata||function(P,g){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(P,g)};Object.defineProperty(sy,"__esModule",{value:!0}),sy.DOMHelper=void 0;const b=Zt(),w=Qn();let m=class{getPrefix(){return this.viewerOptions!==void 0&&this.viewerOptions.baseDiv!==void 0?this.viewerOptions.baseDiv+"_":""}createUniqueDOMElementId(g){return this.getPrefix()+g.id}findSModelIdByDOMElement(g){return g.id.replace(this.getPrefix(),"")}};return sy.DOMHelper=m,f([(0,b.inject)(w.TYPES.ViewerOptions),h("design:type",Object)],m.prototype,"viewerOptions",void 0),sy.DOMHelper=m=f([(0,b.injectable)()],m),sy}var G1t;function Pp(){if(G1t)return Qa;G1t=1;var f=Qa&&Qa.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=Qa&&Qa.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)},b=Qa&&Qa.__param||function(O,j){return function(k,x){j(k,x,O)}};Object.defineProperty(Qa,"__esModule",{value:!0}),Qa.MousePositionTracker=Qa.MouseListener=Qa.PopupMouseTool=Qa.MouseTool=void 0;const w=Zt(),m=jc(),P=Oc(),g=Qn(),E=tN(),C=mh();let T=class{constructor(j=[]){this.mouseListeners=j}register(j){this.mouseListeners.push(j)}deregister(j){const k=this.mouseListeners.indexOf(j);k>=0&&this.mouseListeners.splice(k,1)}getTargetElement(j,k){let x=k.target;const R=j.index;for(;x;){if(x.id){const H=R.getById(this.domHelper.findSModelIdByDOMElement(x));if(H!==void 0)return H}x=x.parentNode}}handleEvent(j,k,x){this.focusOnMouseEvent(j,k);const R=this.getTargetElement(k,x);if(!R)return;const H=this.mouseListeners.map(F=>F[j](R,x)).reduce((F,$)=>F.concat($));if(H.length>0){x.preventDefault();for(const F of H)(0,m.isAction)(F)?this.actionDispatcher.dispatch(F):F.then($=>{this.actionDispatcher.dispatch($)})}}focusOnMouseEvent(j,k){if(document&&j==="mouseDown"){const x=document.getElementById(this.domHelper.createUniqueDOMElementId(k));x!==null&&typeof x.focus=="function"&&x.focus()}}mouseOver(j,k){this.handleEvent("mouseOver",j,k)}mouseOut(j,k){this.handleEvent("mouseOut",j,k)}mouseEnter(j,k){this.handleEvent("mouseEnter",j,k)}mouseLeave(j,k){this.handleEvent("mouseLeave",j,k)}mouseDown(j,k){this.handleEvent("mouseDown",j,k)}mouseMove(j,k){this.handleEvent("mouseMove",j,k)}mouseUp(j,k){this.handleEvent("mouseUp",j,k)}wheel(j,k){this.handleEvent("wheel",j,k)}contextMenu(j,k){k.preventDefault(),this.handleEvent("contextMenu",j,k)}doubleClick(j,k){this.handleEvent("doubleClick",j,k)}decorate(j,k){return k instanceof P.SModelRootImpl&&((0,C.on)(j,"mouseover",this.mouseOver.bind(this,k)),(0,C.on)(j,"mouseout",this.mouseOut.bind(this,k)),(0,C.on)(j,"mouseenter",this.mouseEnter.bind(this,k)),(0,C.on)(j,"mouseleave",this.mouseLeave.bind(this,k)),(0,C.on)(j,"mousedown",this.mouseDown.bind(this,k)),(0,C.on)(j,"mouseup",this.mouseUp.bind(this,k)),(0,C.on)(j,"mousemove",this.mouseMove.bind(this,k)),(0,C.on)(j,"wheel",this.wheel.bind(this,k)),(0,C.on)(j,"contextmenu",this.contextMenu.bind(this,k)),(0,C.on)(j,"dblclick",this.doubleClick.bind(this,k)),(0,C.on)(j,"dragover",x=>this.handleEvent("dragOver",k,x)),(0,C.on)(j,"drop",x=>this.handleEvent("drop",k,x))),j=this.mouseListeners.reduce((x,R)=>R.decorate(x,k),j),j}postUpdate(){}};Qa.MouseTool=T,f([(0,w.inject)(g.TYPES.IActionDispatcher),h("design:type",Object)],T.prototype,"actionDispatcher",void 0),f([(0,w.inject)(g.TYPES.DOMHelper),h("design:type",E.DOMHelper)],T.prototype,"domHelper",void 0),Qa.MouseTool=T=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.MouseListener)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],T);let M=class extends T{constructor(j=[]){super(j),this.mouseListeners=j}};Qa.PopupMouseTool=M,Qa.PopupMouseTool=M=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.PopupMouseListener)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],M);let _=class{mouseOver(j,k){return[]}mouseOut(j,k){return[]}mouseEnter(j,k){return[]}mouseLeave(j,k){return[]}mouseDown(j,k){return[]}mouseMove(j,k){return[]}mouseUp(j,k){return[]}wheel(j,k){return[]}doubleClick(j,k){return[]}contextMenu(j,k){return[]}dragOver(j,k){return[]}drop(j,k){return[]}decorate(j,k){return j}};Qa.MouseListener=_,Qa.MouseListener=_=f([(0,w.injectable)()],_);let I=class extends _{mouseMove(j,k){return this.lastPosition=j.root.parentToLocal({x:k.offsetX,y:k.offsetY}),[]}get lastPositionOnDiagram(){return this.lastPosition}};return Qa.MousePositionTracker=I,Qa.MousePositionTracker=I=f([(0,w.injectable)()],I),Qa}var uy={};function pGt(f,h){return document.createElement(f,h)}function wGt(f,h,b){return document.createElementNS(f,h,b)}function mGt(){return AM(document.createDocumentFragment())}function vGt(f){return document.createTextNode(f)}function yGt(f){return document.createComment(f)}function _Gt(f,h,b){if(O3(f)){let w=f;for(;w&&O3(w);)w=AM(w).parent;f=w??f}O3(h)&&(h=AM(h,f)),b&&O3(b)&&(b=AM(b).firstChildNode),f.insertBefore(h,b)}function EGt(f,h){f.removeChild(h)}function SGt(f,h){O3(h)&&(h=AM(h,f)),f.appendChild(h)}function Wpt(f){if(O3(f)){for(;f&&O3(f);)f=AM(f).parent;return f??null}return f.parentNode}function PGt(f){var h;if(O3(f)){const b=AM(f),w=Wpt(b);if(w&&b.lastChildNode){const m=Array.from(w.childNodes),P=m.indexOf(b.lastChildNode);return(h=m[P+1])!==null&&h!==void 0?h:null}return null}return f.nextSibling}function MGt(f){return f.tagName}function CGt(f,h){f.textContent=h}function IGt(f){return f.textContent}function TGt(f){return f.nodeType===1}function jGt(f){return f.nodeType===3}function AGt(f){return f.nodeType===8}function O3(f){return f.nodeType===11}function AM(f,h){var b,w,m;const P=f;return(b=P.parent)!==null&&b!==void 0||(P.parent=h??null),(w=P.firstChildNode)!==null&&w!==void 0||(P.firstChildNode=f.firstChild),(m=P.lastChildNode)!==null&&m!==void 0||(P.lastChildNode=f.lastChild),P}const Nye={createElement:pGt,createElementNS:wGt,createTextNode:vGt,createDocumentFragment:mGt,createComment:yGt,insertBefore:_Gt,removeChild:EGt,appendChild:SGt,parentNode:Wpt,nextSibling:PGt,tagName:MGt,setTextContent:CGt,getTextContent:IGt,isElement:TGt,isText:jGt,isComment:AGt,isDocumentFragment:O3};function Yd(f,h,b,w,m){const P=h===void 0?void 0:h.key;return{sel:f,data:h,children:b,text:w,elm:m,key:P}}const RL=Array.isArray;function OM(f){return typeof f=="string"||typeof f=="number"||f instanceof String||f instanceof Number}function eve(f){return f===void 0}function og(f){return f!==void 0}const tve=Yd("",{},[],void 0,void 0);function vL(f,h){var b,w;const m=f.key===h.key,P=((b=f.data)===null||b===void 0?void 0:b.is)===((w=h.data)===null||w===void 0?void 0:w.is),g=f.sel===h.sel,E=!f.sel&&f.sel===h.sel?typeof f.text==typeof h.text:!0;return g&&m&&P&&E}function OGt(){throw new Error("The document fragment is not supported on this platform.")}function DGt(f,h){return f.isElement(h)}function kGt(f,h){return f.isDocumentFragment(h)}function RGt(f,h,b){var w;const m={};for(let P=h;P<=b;++P){const g=(w=f[P])===null||w===void 0?void 0:w.key;g!==void 0&&(m[g]=P)}return m}const xGt=["create","update","remove","destroy","pre","post"];function LGt(f,h,b){const w={create:[],update:[],remove:[],destroy:[],pre:[],post:[]},m=h!==void 0?h:Nye;for(const j of xGt)for(const k of f){const x=k[j];x!==void 0&&w[j].push(x)}function P(j){const k=j.id?"#"+j.id:"",x=j.getAttribute("class"),R=x?"."+x.split(" ").join("."):"";return Yd(m.tagName(j).toLowerCase()+k+R,{},[],void 0,j)}function g(j){return Yd(void 0,{},[],void 0,j)}function E(j,k){return function(){if(--k===0){const R=m.parentNode(j);m.removeChild(R,j)}}}function C(j,k){var x,R,H,F;let $,W=j.data;if(W!==void 0){const ce=(x=W.hook)===null||x===void 0?void 0:x.init;og(ce)&&(ce(j),W=j.data)}const re=j.children,ae=j.sel;if(ae==="!")eve(j.text)&&(j.text=""),j.elm=m.createComment(j.text);else if(ae!==void 0){const ce=ae.indexOf("#"),J=ae.indexOf(".",ce),te=ce>0?ce:ae.length,fe=J>0?J:ae.length,ve=ce!==-1||J!==-1?ae.slice(0,Math.min(te,fe)):ae,me=j.elm=og(W)&&og($=W.ns)?m.createElementNS($,ve,W):m.createElement(ve,W);for(te0&&me.setAttribute("class",ae.slice(fe+1).replace(/\./g," ")),$=0;$0&&(M.attrs=C),Object.keys(T).length>0&&(M.dataset=T),E[0]==="s"&&E[1]==="v"&&E[2]==="g"&&(E.length===3||E[3]==="."||E[3]==="#")&&dJ(M,_,E),Yd(E,M,_,void 0,f)}else return b.isText(f)?(w=b.getTextContent(f),Yd(void 0,void 0,void 0,w,f)):b.isComment(f)?(w=b.getTextContent(f),Yd("!",{},[],w,f)):Yd("",{},[],void 0,f)}const GGt="http://www.w3.org/1999/xlink",UGt="http://www.w3.org/XML/1998/namespace",U1t=58,WGt=120;function W1t(f,h){let b;const w=h.elm;let m=f.data.attrs,P=h.data.attrs;if(!(!m&&!P)&&m!==P){m=m||{},P=P||{};for(b in P){const g=P[b];m[b]!==g&&(g===!0?w.setAttribute(b,""):g===!1?w.removeAttribute(b):b.charCodeAt(0)!==WGt?w.setAttribute(b,g):b.charCodeAt(3)===U1t?w.setAttributeNS(UGt,b,g):b.charCodeAt(5)===U1t?w.setAttributeNS(GGt,b,g):w.setAttribute(b,g))}for(b in m)b in P||w.removeAttribute(b)}}const YGt={create:W1t,update:W1t};function Y1t(f,h){let b,w;const m=h.elm;let P=f.data.class,g=h.data.class;if(!(!P&&!g)&&P!==g){P=P||{},g=g||{};for(w in P)P[w]&&!Object.prototype.hasOwnProperty.call(g,w)&&m.classList.remove(w);for(w in g)b=g[w],b!==P[w]&&m.classList[b?"add":"remove"](w)}}const XGt={create:Y1t,update:Y1t},X1t=/[A-Z]/g;function J1t(f,h){const b=h.elm;let w=f.data.dataset,m=h.data.dataset,P;if(!w&&!m||w===m)return;w=w||{},m=m||{};const g=b.dataset;for(P in w)m[P]||(g?P in g&&delete g[P]:b.removeAttribute("data-"+P.replace(X1t,"-$&").toLowerCase()));for(P in m)w[P]!==m[P]&&(g?g[P]=m[P]:b.setAttribute("data-"+P.replace(X1t,"-$&").toLowerCase(),m[P]))}const JGt={create:J1t,update:J1t};function Xpt(f,h,b){if(typeof f=="function")f.call(h,b,h);else if(typeof f=="object")for(let w=0;w=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(uy,"__esModule",{value:!0}),uy.isThunk=uy.ThunkView=void 0;const h=nN,b=Zt();let w=class{render(g,E){return(0,h.h)(this.selector(g),{key:g.id,hook:{init:this.init.bind(this),prepatch:this.prepatch.bind(this)},fn:()=>this.renderAndDecorate(g,E),args:this.watchedArgs(g),thunk:!0})}renderAndDecorate(g,E){const C=this.doRender(g,E);return E.decorate(C,g),C}copyToThunk(g,E){E.elm=g.elm,g.data.fn=E.data.fn,g.data.args=E.data.args,E.data=g.data,E.children=g.children,E.text=g.text,E.elm=g.elm}init(g){const E=g.data,C=E.fn.apply(void 0,E.args);this.copyToThunk(C,g)}prepatch(g,E){const C=g.data,T=E.data;this.equals(C.args,T.args)?this.copyToThunk(g,E):this.copyToThunk(T.fn.apply(void 0,T.args),E)}equals(g,E){if(Array.isArray(g)&&Array.isArray(E)){if(g.length!==E.length)return!1;for(let C=0;C{E[I]&&(M[I]=E[I])}),Object.keys(E).forEach(I=>{if(I==="key"||I==="classNames"||I==="selector")return;const O=I.indexOf("-");if(O>0){const j=I.slice(0,O);h.includes(j)?_(j,I.slice(O+1),E[I]):_(C,I,E[I])}else M[I]||_(C,I,E[I])}),M;function _(I,O,j){const k=M[I]||(M[I]={});k[O]=j}}function m(E,C="props"){return(T,M,..._)=>{const I=typeof T=="function";return(0,f.jsx)(T,I?M:w(M,C,E),_)}}m3.JSX=m;const P=m();m3.html=P;const g=m(b,"attrs");return m3.svg=g,m3}var igt;function iN(){if(igt)return Us;igt=1;var f=Us&&Us.__decorate||function(F,$,W,re){var ae=arguments.length,ce=ae<3?$:re===null?re=Object.getOwnPropertyDescriptor($,W):re,J;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(F,$,W,re);else for(var te=F.length-1;te>=0;te--)(J=F[te])&&(ce=(ae<3?J(ce):ae>3?J($,W,ce):J($,W))||ce);return ae>3&&ce&&Object.defineProperty($,W,ce),ce},h=Us&&Us.__metadata||function(F,$){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(F,$)},b=Us&&Us.__param||function(F,$){return function(W,re){$(W,re,F)}},w;Object.defineProperty(Us,"__esModule",{value:!0}),Us.MissingView=Us.EmptyView=Us.configureView=Us.overrideModelElement=Us.configureModelElement=Us.ViewRegistry=Us.findArgValue=void 0;const m=Cy(),P=Zt(),g=Qn(),E=q3(),C=EA(),T=ES(),M=Qh(),_=Sp();function I(F,$){for(;F!==void 0&&!($ in F)&&F.parentArgs;)F=F.parentArgs;return F?F[$]:void 0}Us.findArgValue=I;let O=class extends E.InstanceRegistry{constructor($){super(),this.registerDefaults(),$.forEach(W=>{W.isOverride?this.override(W.type,W.factory()):this.register(W.type,W.factory())})}registerDefaults(){this.register(T.EMPTY_ROOT.type,new R)}missing($){return this.logger.warn(this,`no registered view for type '${$}', please configure a view in the ContainerModule`),new H}};Us.ViewRegistry=O,f([(0,P.inject)(g.TYPES.ILogger),h("design:type",Object)],O.prototype,"logger",void 0),Us.ViewRegistry=O=f([(0,P.injectable)(),b(0,(0,P.multiInject)(g.TYPES.ViewRegistration)),b(0,(0,P.optional)()),h("design:paramtypes",[Array])],O);function j(F,$,W,re,ae){(0,M.registerModelElement)(F,$,W,ae),x(F,$,re)}Us.configureModelElement=j;function k(F,$,W,re,ae){(0,M.registerModelElement)(F,$,W,ae,!0),x(F,$,re,!0)}Us.overrideModelElement=k;function x(F,$,W,re){if(typeof W=="function"){if(!(0,C.isInjectable)(W))throw new Error(`Views should be @injectable: ${W.name}`);F.isBound(W)||F.bind(W).toSelf()}F.bind(g.TYPES.ViewRegistration).toDynamicValue(ae=>({type:$,factory:()=>ae.container.get(W),isOverride:re}))}Us.configureView=x;let R=class{render($,W){return(0,m.svg)("svg",{"class-sprotty-empty":!0})}};Us.EmptyView=R,Us.EmptyView=R=f([(0,P.injectable)()],R);let H=w=class{render($,W){const re=$.position||this.getPostion($.type);return(0,m.svg)("text",{"class-sprotty-missing":!0,x:re.x,y:re.y},'missing "',$.type,'" view')}getPostion($){let W=w.positionMap.get($);return W||(W=_.Point.ORIGIN,w.positionMap.forEach(re=>W=re.y>=W.y?{x:0,y:re.y+20}:W),w.positionMap.set($,W)),W}};return Us.MissingView=H,H.positionMap=new Map,Us.MissingView=H=w=f([(0,P.injectable)()],H),Us}var ay={},rgt;function Qpt(){if(rgt)return ay;rgt=1;var f=ay&&ay.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_},h=ay&&ay.__metadata||function(g,E){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(g,E)};Object.defineProperty(ay,"__esModule",{value:!0}),ay.ViewerCache=void 0;const b=Zt(),w=Qn(),m=eN();let P=class{update(E,C){if(C!==void 0)this.delegate.update(E,C),this.cachedModel=void 0;else{const T=this.cachedModel===void 0;this.cachedModel=E,T&&this.scheduleUpdate()}}scheduleUpdate(){this.syncer.onEndOfNextFrame(()=>{this.cachedModel&&(this.delegate.update(this.cachedModel),this.cachedModel=void 0)})}};return ay.ViewerCache=P,f([(0,b.inject)(w.TYPES.IViewer),h("design:type",Object)],P.prototype,"delegate",void 0),f([(0,b.inject)(w.TYPES.AnimationFrameSyncer),h("design:type",m.AnimationFrameSyncer)],P.prototype,"syncer",void 0),ay.ViewerCache=P=f([(0,b.injectable)()],P),ay}var ive={},ogt;function Zpt(){return ogt||(ogt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.overrideViewerOptions=f.configureViewerOptions=f.defaultViewerOptions=void 0;const h=_S(),b=Qn(),w=()=>({baseDiv:"sprotty",baseClass:"sprotty",hiddenDiv:"sprotty-hidden",hiddenClass:"sprotty-hidden",popupDiv:"sprotty-popup",popupClass:"sprotty-popup",popupClosedClass:"sprotty-popup-closed",needsClientLayout:!0,needsServerLayout:!1,popupOpenDelay:1e3,popupCloseDelay:300,zoomLimits:{min:.01,max:10},horizontalScrollLimits:{min:-1e5,max:1e5},verticalScrollLimits:{min:-1e5,max:1e5}});f.defaultViewerOptions=w;function m(g,E){const C=Object.assign(Object.assign({},(0,f.defaultViewerOptions)()),E);g.isBound(b.TYPES.ViewerOptions)?g.rebind(b.TYPES.ViewerOptions).toConstantValue(C):g.bind(b.TYPES.ViewerOptions).toConstantValue(C)}f.configureViewerOptions=m;function P(g,E){const C=g.get(b.TYPES.ViewerOptions);return(0,h.safeAssign)(C,E),C}f.overrideViewerOptions=P})(ive)),ive}var Ju={},cgt;function ewt(){if(cgt)return Ju;cgt=1;var f=Ju&&Ju.__decorate||function(R,H,F,$){var W=arguments.length,re=W<3?H:$===null?$=Object.getOwnPropertyDescriptor(H,F):$,ae;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")re=Reflect.decorate(R,H,F,$);else for(var ce=R.length-1;ce>=0;ce--)(ae=R[ce])&&(re=(W<3?ae(re):W>3?ae(H,F,re):ae(H,F))||re);return W>3&&re&&Object.defineProperty(H,F,re),re},h=Ju&&Ju.__metadata||function(R,H){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(R,H)},b=Ju&&Ju.__param||function(R,H){return function(F,$){H(F,$,R)}};Object.defineProperty(Ju,"__esModule",{value:!0}),Ju.PopupModelViewer=Ju.HiddenModelViewer=Ju.ModelViewer=Ju.PatcherProvider=Ju.ModelRenderer=void 0;const w=Zt(),m=nN,P=Cy(),g=My(),E=fJ(),C=ES(),T=Qn(),M=Jpt(),_=mh();class I{constructor(H,F,$,W={}){this.viewRegistry=H,this.targetKind=F,this.postprocessors=$,this.args=W}decorate(H,F){return(0,M.isThunk)(H)?H:this.postprocessors.reduce(($,W)=>W.decorate($,F),H)}renderElement(H){const $=this.viewRegistry.get(H.type).render(H,this,this.args);if($)return this.decorate($,H)}renderChildren(H,F){const $=F?new I(this.viewRegistry,this.targetKind,this.postprocessors,Object.assign(Object.assign({},F),{parentArgs:this.args})):this;return H.children.map(W=>$.renderElement(W)).filter(W=>W!==void 0)}postUpdate(H){this.postprocessors.forEach(F=>F.postUpdate(H))}}Ju.ModelRenderer=I;let O=class{constructor(){this.patcher=(0,m.init)(this.createModules())}createModules(){return[m.propsModule,m.attributesModule,m.classModule,m.styleModule,m.eventListenersModule]}};Ju.PatcherProvider=O,Ju.PatcherProvider=O=f([(0,w.injectable)(),h("design:paramtypes",[])],O);let j=class{constructor(H,F,$){this.renderer=H("main",$),this.patcher=F.patcher}update(H,F){var $;this.logger.log(this,"rendering",H);const W=(0,P.html)("div",{id:this.options.baseDiv},this.renderer.renderElement(H));if(this.lastVDOM!==void 0){const re=this.hasFocus();(0,_.copyClassesFromVNode)(this.lastVDOM,W),this.lastVDOM=this.patcher.call(this,this.lastVDOM,W),this.restoreFocus(re)}else if(typeof document<"u"){let re=null;if(this.options.shadowRoot){const ae=($=document.getElementById(this.options.shadowRoot))===null||$===void 0?void 0:$.shadowRoot;ae&&(re=ae.getElementById(this.options.baseDiv))}else re=document.getElementById(this.options.baseDiv);re!==null?(typeof window<"u"&&window.addEventListener("resize",()=>{this.onWindowResize(W)}),(0,_.copyClassesFromElement)(re,W),(0,_.setClass)(W,this.options.baseClass,!0),this.lastVDOM=this.patcher.call(this,re,W)):this.logger.error(this,"element not in DOM:",this.options.baseDiv)}this.renderer.postUpdate(F)}hasFocus(){if(typeof document<"u"&&document.activeElement&&this.lastVDOM.children&&this.lastVDOM.children.length>0){const H=this.lastVDOM.children[0];if(typeof H=="object"){const F=H.elm;return document.activeElement===F}}return!1}restoreFocus(H){if(H&&this.lastVDOM.children&&this.lastVDOM.children.length>0){const F=this.lastVDOM.children[0];if(typeof F=="object"){const $=F.elm;$&&typeof $.focus=="function"&&$.focus()}}}onWindowResize(H){const F=document.getElementById(this.options.baseDiv);if(F!==null){const $=this.getBoundsInPage(F);this.actiondispatcher.dispatch(E.InitializeCanvasBoundsAction.create($))}}getBoundsInPage(H){const F=H.getBoundingClientRect(),$=(0,g.getWindowScroll)();return{x:F.left+$.x,y:F.top+$.y,width:F.width,height:F.height}}};Ju.ModelViewer=j,f([(0,w.inject)(T.TYPES.ViewerOptions),h("design:type",Object)],j.prototype,"options",void 0),f([(0,w.inject)(T.TYPES.ILogger),h("design:type",Object)],j.prototype,"logger",void 0),f([(0,w.inject)(T.TYPES.IActionDispatcher),h("design:type",Object)],j.prototype,"actiondispatcher",void 0),Ju.ModelViewer=j=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.ModelRendererFactory)),b(1,(0,w.inject)(T.TYPES.PatcherProvider)),b(2,(0,w.multiInject)(T.TYPES.IVNodePostprocessor)),b(2,(0,w.optional)()),h("design:paramtypes",[Function,O,Array])],j);let k=class{constructor(H,F,$){this.hiddenRenderer=H("hidden",$),this.patcher=F.patcher}update(H,F){this.logger.log(this,"rendering hidden");let $;if(H.type===C.EMPTY_ROOT.type)$=(0,P.html)("div",{id:this.options.hiddenDiv});else{const W=this.hiddenRenderer.renderElement(H);W&&(0,_.setAttr)(W,"opacity",0),$=(0,P.html)("div",{id:this.options.hiddenDiv},W)}if(this.lastHiddenVDOM!==void 0)(0,_.copyClassesFromVNode)(this.lastHiddenVDOM,$),this.lastHiddenVDOM=this.patcher.call(this,this.lastHiddenVDOM,$);else{let W=document.getElementById(this.options.hiddenDiv);W===null?(W=document.createElement("div"),document.body.appendChild(W)):(0,_.copyClassesFromElement)(W,$),(0,_.setClass)($,this.options.baseClass,!0),(0,_.setClass)($,this.options.hiddenClass,!0),this.lastHiddenVDOM=this.patcher.call(this,W,$)}this.hiddenRenderer.postUpdate(F)}};Ju.HiddenModelViewer=k,f([(0,w.inject)(T.TYPES.ViewerOptions),h("design:type",Object)],k.prototype,"options",void 0),f([(0,w.inject)(T.TYPES.ILogger),h("design:type",Object)],k.prototype,"logger",void 0),Ju.HiddenModelViewer=k=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.ModelRendererFactory)),b(1,(0,w.inject)(T.TYPES.PatcherProvider)),b(2,(0,w.multiInject)(T.TYPES.HiddenVNodePostprocessor)),b(2,(0,w.optional)()),h("design:paramtypes",[Function,O,Array])],k);let x=class{constructor(H,F,$){this.modelRendererFactory=H,this.popupRenderer=this.modelRendererFactory("popup",$),this.patcher=F.patcher}update(H,F){this.logger.log(this,"rendering popup",H);const $=H.type===C.EMPTY_ROOT.type;let W;if($)W=(0,P.html)("div",{id:this.options.popupDiv});else{const re=H.canvasBounds,ae={top:re.y+"px",left:re.x+"px"};W=(0,P.html)("div",{id:this.options.popupDiv,style:ae},this.popupRenderer.renderElement(H))}if(this.lastPopupVDOM!==void 0)(0,_.copyClassesFromVNode)(this.lastPopupVDOM,W),(0,_.setClass)(W,this.options.popupClosedClass,$),this.lastPopupVDOM=this.patcher.call(this,this.lastPopupVDOM,W);else if(typeof document<"u"){let re=document.getElementById(this.options.popupDiv);re===null?(re=document.createElement("div"),document.body.appendChild(re)):(0,_.copyClassesFromElement)(re,W),(0,_.setClass)(W,this.options.popupClass,!0),(0,_.setClass)(W,this.options.popupClosedClass,$),this.lastPopupVDOM=this.patcher.call(this,re,W)}this.popupRenderer.postUpdate(F)}};return Ju.PopupModelViewer=x,f([(0,w.inject)(T.TYPES.ViewerOptions),h("design:type",Object)],x.prototype,"options",void 0),f([(0,w.inject)(T.TYPES.ILogger),h("design:type",Object)],x.prototype,"logger",void 0),Ju.PopupModelViewer=x=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.ModelRendererFactory)),b(1,(0,w.inject)(T.TYPES.PatcherProvider)),b(2,(0,w.multiInject)(T.TYPES.PopupVNodePostprocessor)),b(2,(0,w.optional)()),h("design:paramtypes",[Function,O,Array])],x),Ju}var H4={},sgt;function twt(){if(sgt)return H4;sgt=1;var f=H4&&H4.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(H4,"__esModule",{value:!0}),H4.FocusFixPostprocessor=void 0;const h=Zt(),b=mh();let w=class{decorate(P,g){return P.sel&&P.sel.startsWith("svg")&&(0,b.setAttr)(P,"tabindex",0),P}postUpdate(){}};return H4.FocusFixPostprocessor=w,H4.FocusFixPostprocessor=w=f([(0,h.injectable)()],w),H4}var eX={},Vd={},ugt;function Bye(){if(ugt)return Vd;ugt=1;var f=Vd&&Vd.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=Vd&&Vd.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(Vd,"__esModule",{value:!0}),Vd.ConsoleLogger=Vd.NullLogger=Vd.LogLevel=void 0;const b=Zt(),w=Qn();var m;(function(E){E[E.none=0]="none",E[E.error=1]="error",E[E.warn=2]="warn",E[E.info=3]="info",E[E.log=4]="log"})(m||(Vd.LogLevel=m={}));let P=class{constructor(){this.logLevel=m.none}error(C,T,...M){}warn(C,T,...M){}info(C,T,...M){}log(C,T,...M){}};Vd.NullLogger=P,Vd.NullLogger=P=f([(0,b.injectable)()],P);let g=class{constructor(){this.logLevel=m.log,this.viewOptions={baseDiv:""}}error(C,T,...M){if(this.logLevel>=m.error)try{console.error.apply(C,this.consoleArguments(C,T,M))}catch{}}warn(C,T,...M){if(this.logLevel>=m.warn)try{console.warn.apply(C,this.consoleArguments(C,T,M))}catch{}}info(C,T,...M){if(this.logLevel>=m.info)try{console.info.apply(C,this.consoleArguments(C,T,M))}catch{}}log(C,T,...M){if(this.logLevel>=m.log)try{console.log.apply(C,this.consoleArguments(C,T,M))}catch{}}consoleArguments(C,T,M){let _;return typeof C=="object"?_=C.constructor.name:_=C,[new Date().toLocaleTimeString()+" "+this.viewOptions.baseDiv+" "+_+": "+T,...M]}};return Vd.ConsoleLogger=g,f([(0,b.inject)(w.TYPES.LogLevel),h("design:type",Number)],g.prototype,"logLevel",void 0),f([(0,b.inject)(w.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"viewOptions",void 0),Vd.ConsoleLogger=g=f([(0,b.injectable)()],g),Vd}var ly={},agt;function lUt(){if(agt)return ly;agt=1;var f=ly&&ly.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=ly&&ly.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(ly,"__esModule",{value:!0}),ly.IdPostprocessor=void 0;const b=Zt(),w=Qn(),m=tN(),P=mh();let g=class{decorate(C,T){const M=(0,P.getAttrs)(C);return M.id!==void 0&&this.logger.warn(C,"Overriding id of vnode ("+M.id+"). Make sure not to set it manually in view."),M.id=this.domHelper.createUniqueDOMElementId(T),C.key||(C.key=T.id),C}postUpdate(){}};return ly.IdPostprocessor=g,f([(0,b.inject)(w.TYPES.ILogger),h("design:type",Object)],g.prototype,"logger",void 0),f([(0,b.inject)(w.TYPES.DOMHelper),h("design:type",m.DOMHelper)],g.prototype,"domHelper",void 0),ly.IdPostprocessor=g=f([(0,b.injectable)()],g),ly}var z4={},lgt;function fUt(){if(lgt)return z4;lgt=1;var f=z4&&z4.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(z4,"__esModule",{value:!0}),z4.CssClassPostprocessor=void 0;const h=LM(),b=mh(),w=Zt();let m=class{decorate(g,E){if(E.cssClasses)for(const T of E.cssClasses)(0,b.setClass)(g,T,!0);const C=(0,h.getSubType)(E);return C&&C!==E.type&&(0,b.setClass)(g,C,!0),g}postUpdate(){}};return z4.CssClassPostprocessor=m,z4.CssClassPostprocessor=m=f([(0,w.injectable)()],m),z4}var fgt;function nwt(){if(fgt)return eX;fgt=1,Object.defineProperty(eX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=fJ(),w=Bye(),m=Rye(),P=lJ(),g=Upt(),E=Gpt(),C=ES(),T=eN(),M=ewt(),_=Zpt(),I=Pp(),O=H3(),j=twt(),k=iN(),x=Qpt(),R=tN(),H=lUt(),F=kb(),$=fUt(),W=xye(),re=hJ(),ae=zpt(),ce=new f.ContainerModule((J,te,fe)=>{J(h.TYPES.ILogger).to(w.NullLogger).inSingletonScope(),J(h.TYPES.LogLevel).toConstantValue(w.LogLevel.warn),J(h.TYPES.SModelRegistry).to(C.SModelRegistry).inSingletonScope(),J(P.ActionHandlerRegistry).toSelf().inSingletonScope(),J(h.TYPES.ActionHandlerRegistryProvider).toProvider(me=>()=>new Promise(ke=>{ke(me.container.get(P.ActionHandlerRegistry))})),J(h.TYPES.ViewRegistry).to(k.ViewRegistry).inSingletonScope(),J(h.TYPES.IModelFactory).to(C.SModelFactory).inSingletonScope(),J(h.TYPES.IActionDispatcher).to(m.ActionDispatcher).inSingletonScope(),J(h.TYPES.IActionDispatcherProvider).toProvider(me=>()=>new Promise(ke=>{ke(me.container.get(h.TYPES.IActionDispatcher))})),J(h.TYPES.IDiagramLocker).to(ae.DefaultDiagramLocker).inSingletonScope(),J(F.CommandActionHandlerInitializer).toSelf().inSingletonScope(),J(h.TYPES.IActionHandlerInitializer).toService(F.CommandActionHandlerInitializer),J(h.TYPES.ICommandStack).to(g.CommandStack).inSingletonScope(),J(h.TYPES.ICommandStackProvider).toProvider(me=>()=>new Promise(ke=>{ke(me.container.get(h.TYPES.ICommandStack))})),J(h.TYPES.CommandStackOptions).toConstantValue((0,E.defaultCommandStackOptions)()),J(M.ModelViewer).toSelf().inSingletonScope(),J(M.HiddenModelViewer).toSelf().inSingletonScope(),J(M.PopupModelViewer).toSelf().inSingletonScope(),J(h.TYPES.ModelViewer).toDynamicValue(me=>{const ke=me.container.createChild();return ke.bind(h.TYPES.IViewer).toService(M.ModelViewer),ke.bind(x.ViewerCache).toSelf(),ke.get(x.ViewerCache)}).inSingletonScope(),J(h.TYPES.PopupModelViewer).toDynamicValue(me=>{const ke=me.container.createChild();return ke.bind(h.TYPES.IViewer).toService(M.PopupModelViewer),ke.bind(x.ViewerCache).toSelf(),ke.get(x.ViewerCache)}).inSingletonScope(),J(h.TYPES.HiddenModelViewer).toService(M.HiddenModelViewer),J(h.TYPES.IViewerProvider).toDynamicValue(me=>({get modelViewer(){return me.container.get(h.TYPES.ModelViewer)},get hiddenModelViewer(){return me.container.get(h.TYPES.HiddenModelViewer)},get popupModelViewer(){return me.container.get(h.TYPES.PopupModelViewer)}})),J(h.TYPES.ViewerOptions).toConstantValue((0,_.defaultViewerOptions)()),J(h.TYPES.PatcherProvider).to(M.PatcherProvider).inSingletonScope(),J(h.TYPES.DOMHelper).to(R.DOMHelper).inSingletonScope(),J(h.TYPES.ModelRendererFactory).toFactory(me=>(ke,tt,De={})=>{const ct=me.container.get(h.TYPES.ViewRegistry);return new M.ModelRenderer(ct,ke,tt,De)}),J(H.IdPostprocessor).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(H.IdPostprocessor),J(h.TYPES.HiddenVNodePostprocessor).toService(H.IdPostprocessor),J($.CssClassPostprocessor).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService($.CssClassPostprocessor),J(h.TYPES.HiddenVNodePostprocessor).toService($.CssClassPostprocessor),J(I.MouseTool).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(I.MouseTool),J(O.KeyTool).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(O.KeyTool),J(j.FocusFixPostprocessor).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(j.FocusFixPostprocessor),J(h.TYPES.PopupVNodePostprocessor).toService(H.IdPostprocessor),J(I.PopupMouseTool).toSelf().inSingletonScope(),J(h.TYPES.PopupVNodePostprocessor).toService(I.PopupMouseTool),J(h.TYPES.AnimationFrameSyncer).to(T.AnimationFrameSyncer).inSingletonScope();const ve={bind:J,isBound:fe};(0,F.configureCommand)(ve,b.InitializeCanvasBoundsCommand),J(b.CanvasBoundsInitializer).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(b.CanvasBoundsInitializer),(0,F.configureCommand)(ve,W.SetModelCommand),J(h.TYPES.UIExtensionRegistry).to(re.UIExtensionRegistry).inSingletonScope(),(0,F.configureCommand)(ve,re.SetUIExtensionVisibilityCommand),J(I.MousePositionTracker).toSelf().inSingletonScope(),J(h.TYPES.MouseListener).toService(I.MousePositionTracker)});return eX.default=ce,eX}var Gd={},rve={},hgt;function Xs(){return hgt||(hgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.SShapeElementImpl=f.findChildrenAtPosition=f.getAbsoluteClientBounds=f.getAbsoluteBounds=f.isAlignable=f.isSizeable=f.isLayoutableChild=f.isLayoutContainer=f.isBoundsAware=f.alignFeature=f.layoutableChildFeature=f.layoutContainerFeature=f.boundsFeature=void 0;const h=Ac(),b=Oc(),w=Qh(),m=My();f.boundsFeature=Symbol("boundsFeature"),f.layoutContainerFeature=Symbol("layoutContainerFeature"),f.layoutableChildFeature=Symbol("layoutableChildFeature"),f.alignFeature=Symbol("alignFeature");function P(k){return"bounds"in k}f.isBoundsAware=P;function g(k){return P(k)&&k.hasFeature(f.layoutContainerFeature)&&"layout"in k}f.isLayoutContainer=g;function E(k){return P(k)&&k.hasFeature(f.layoutableChildFeature)}f.isLayoutableChild=E;function C(k){return k.hasFeature(f.boundsFeature)&&P(k)}f.isSizeable=C;function T(k){return k.hasFeature(f.alignFeature)&&"alignment"in k}f.isAlignable=T;function M(k){const x=(0,w.findParentByFeature)(k,P);if(x!==void 0){let R=x.bounds,H=x;for(;H instanceof b.SChildElementImpl;){const F=H.parent;R=F.localToParent(R),H=F}return R}else if(k instanceof b.SModelRootImpl){const R=k.canvasBounds;return{x:0,y:0,width:R.width,height:R.height}}else return h.Bounds.EMPTY}f.getAbsoluteBounds=M;function _(k,x,R){let H=0,F=0,$=0,W=0;const re=x.createUniqueDOMElementId(k),ae=document.getElementById(re);if(ae){const J=ae.getBoundingClientRect(),te=(0,m.getWindowScroll)();H=J.left+te.x,F=J.top+te.y,$=J.width,W=J.height}let ce=document.getElementById(R.baseDiv);if(ce)for(;ce.offsetParent instanceof HTMLElement&&(ce=ce.offsetParent);)H-=ce.offsetLeft,F-=ce.offsetTop;return{x:H,y:F,width:$,height:W}}f.getAbsoluteClientBounds=_;function I(k,x){const R=[];return O(k,x,R),R}f.findChildrenAtPosition=I;function O(k,x,R){k.children.forEach(H=>{if(P(H)&&h.Bounds.includes(H.bounds,x)&&R.push(H),H instanceof b.SParentElementImpl){const F=H.parentToLocal(x);O(H,F,R)}})}class j extends b.SChildElementImpl{constructor(){super(...arguments),this.position=h.Point.ORIGIN,this.size=h.Dimension.EMPTY}get bounds(){return{x:this.position.x,y:this.position.y,width:this.size.width,height:this.size.height}}set bounds(x){this.position={x:x.x,y:x.y},this.size={width:x.width,height:x.height}}localToParent(x){const R={x:x.x+this.position.x,y:x.y+this.position.y,width:-1,height:-1};return(0,h.isBounds)(x)&&(R.width=x.width,R.height=x.height),R}parentToLocal(x){const R={x:x.x-this.position.x,y:x.y-this.position.y,width:-1,height:-1};return(0,h.isBounds)(x)&&(R.width=x.width,R.height=x.height),R}}f.SShapeElementImpl=j})(rve)),rve}var dgt;function $ye(){if(dgt)return Gd;dgt=1;var f=Gd&&Gd.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Gd&&Gd.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=Gd&&Gd.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(Gd,"__esModule",{value:!0}),Gd.RequestBoundsCommand=Gd.SetBoundsCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=Xs();let C=class extends P.SystemCommand{constructor(_){super(),this.action=_,this.bounds=[]}execute(_){return this.action.bounds.forEach(I=>{const O=_.root.index.getById(I.elementId);O&&(0,E.isBoundsAware)(O)&&this.bounds.push({element:O,oldBounds:O.bounds,newPosition:I.newPosition,newSize:I.newSize})}),this.redo(_)}undo(_){return this.bounds.forEach(I=>I.element.bounds=I.oldBounds),_.root}redo(_){return this.bounds.forEach(I=>{I.newPosition?I.element.bounds=Object.assign(Object.assign({},I.newPosition),I.newSize):I.element.bounds=Object.assign({x:I.element.bounds.x,y:I.element.bounds.y},I.newSize)}),_.root}};Gd.SetBoundsCommand=C,C.KIND=m.SetBoundsAction.KIND,Gd.SetBoundsCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],C);let T=class extends P.HiddenCommand{constructor(_){super(),this.action=_}execute(_){return{model:_.modelFactory.createRoot(this.action.newRoot),modelChanged:!0,cause:this.action}}get blockUntil(){return _=>_.kind===m.ComputedBoundsAction.KIND}};return Gd.RequestBoundsCommand=T,T.KIND=m.RequestBoundsAction.KIND,Gd.RequestBoundsCommand=T=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],T),Gd}var MM={},rf={},ggt;function Kye(){if(ggt)return rf;ggt=1;var f=rf&&rf.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=rf&&rf.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)},b=rf&&rf.__param||function(O,j){return function(k,x){j(k,x,O)}};Object.defineProperty(rf,"__esModule",{value:!0}),rf.configureLayout=rf.StatefulLayouter=rf.Layouter=rf.LayoutRegistry=void 0;const w=Zt(),m=Ac(),P=Qn(),g=q3(),E=Xs(),C=EA();let T=class extends g.InstanceRegistry{constructor(j=[]){super(),j.forEach(k=>{this.hasKey(k.layoutKind)?this.logger.warn("Layout kind is already defined: ",k.layoutKind):this.register(k.layoutKind,k.factory())})}};rf.LayoutRegistry=T,f([(0,w.inject)(P.TYPES.ILogger),h("design:type",Object)],T.prototype,"logger",void 0),rf.LayoutRegistry=T=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.LayoutRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],T);let M=class{layout(j){new _(j,this.layoutRegistry,this.logger).layout()}};rf.Layouter=M,f([(0,w.inject)(P.TYPES.LayoutRegistry),h("design:type",T)],M.prototype,"layoutRegistry",void 0),f([(0,w.inject)(P.TYPES.ILogger),h("design:type",Object)],M.prototype,"logger",void 0),rf.Layouter=M=f([(0,w.injectable)()],M);class _{constructor(j,k,x){this.element2boundsData=j,this.layoutRegistry=k,this.log=x,this.toBeLayouted=[],j.forEach((R,H)=>{(0,E.isLayoutContainer)(H)&&this.toBeLayouted.push(H)})}getBoundsData(j){let k=this.element2boundsData.get(j),x=j.bounds;return(0,E.isLayoutContainer)(j)&&this.toBeLayouted.indexOf(j)>=0&&(x=this.doLayout(j)),k||(k={bounds:x,boundsChanged:!1,alignmentChanged:!1},this.element2boundsData.set(j,k)),k}layout(){for(;this.toBeLayouted.length>0;){const j=this.toBeLayouted[0];this.doLayout(j)}}doLayout(j){const k=this.toBeLayouted.indexOf(j);k>=0&&this.toBeLayouted.splice(k,1);const x=this.layoutRegistry.get(j.layout);x&&x.layout(j,this);const R=this.element2boundsData.get(j);return R!==void 0&&R.bounds!==void 0?R.bounds:(this.log.error(j,"Layout failed"),m.Bounds.EMPTY)}}rf.StatefulLayouter=_;function I(O,j,k){if(typeof k=="function"){if(!(0,C.isInjectable)(k))throw new Error(`Layouts be @injectable: ${k.name}`);O.isBound(k)||O.bind(k).toSelf()}O.bind(P.TYPES.LayoutRegistration).toDynamicValue(x=>({layoutKind:j,factory:()=>x.container.get(k)}))}return rf.configureLayout=I,rf}var bgt;function iwt(){return bgt||(bgt=1,(function(f){var h=MM&&MM.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},b=MM&&MM.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(f,"__esModule",{value:!0}),f.ATTR_BBOX_ELEMENT=f.HiddenBoundsUpdater=f.BoundsData=void 0;const w=Zt(),m=jc(),P=Ac(),g=My(),E=Oc(),C=Qn(),T=Kye(),M=Xs();class _{}f.BoundsData=_;let I=class{constructor(){this.element2boundsData=new Map}decorate(j,k){return((0,M.isSizeable)(k)||(0,M.isLayoutContainer)(k))&&this.element2boundsData.set(k,{vnode:j,bounds:k.bounds,boundsChanged:!1,alignmentChanged:!1}),k instanceof E.SModelRootImpl&&(this.root=k),j}postUpdate(j){if(j===void 0||j.kind!==m.RequestBoundsAction.KIND)return;const k=j;this.getBoundsFromDOM(),this.layouter.layout(this.element2boundsData);const x=[],R=[];this.element2boundsData.forEach((F,$)=>{if(F.boundsChanged&&F.bounds!==void 0){const W={elementId:$.id,newSize:{width:F.bounds.width,height:F.bounds.height}};$ instanceof E.SChildElementImpl&&(0,M.isLayoutContainer)($.parent)&&(W.newPosition={x:F.bounds.x,y:F.bounds.y}),x.push(W)}F.alignmentChanged&&F.alignment!==void 0&&R.push({elementId:$.id,newAlignment:F.alignment})});const H=this.root!==void 0?this.root.revision:void 0;this.actionDispatcher.dispatch(m.ComputedBoundsAction.create(x,{revision:H,alignments:R,requestId:k.requestId})),this.element2boundsData.clear()}getBoundsFromDOM(){this.element2boundsData.forEach((j,k)=>{if(j.bounds&&(0,M.isSizeable)(k)){const x=j.vnode;if(x&&x.elm){const R=this.getBounds(x.elm,k);(0,M.isAlignable)(k)&&!((0,P.almostEquals)(R.x,0)&&(0,P.almostEquals)(R.y,0))&&(j.alignment={x:-R.x,y:-R.y},j.alignmentChanged=!0);const H={x:k.bounds.x,y:k.bounds.y,width:R.width,height:R.height};(0,P.almostEquals)(H.x,k.bounds.x)&&(0,P.almostEquals)(H.y,k.bounds.y)&&(0,P.almostEquals)(H.width,k.bounds.width)&&(0,P.almostEquals)(H.height,k.bounds.height)||(j.bounds=H,j.boundsChanged=!0)}}})}getBounds(j,k){if(!(0,g.isSVGGraphicsElement)(j))return this.logger.error(this,"Not an SVG element:",j),P.Bounds.EMPTY;if(j.tagName==="g"){for(const R of Array.from(j.children))if(R.getAttribute(f.ATTR_BBOX_ELEMENT)!==null)return this.getBounds(R,k)}const x=j.getBBox();return{x:x.x,y:x.y,width:x.width,height:x.height}}};f.HiddenBoundsUpdater=I,h([(0,w.inject)(C.TYPES.ILogger),b("design:type",Object)],I.prototype,"logger",void 0),h([(0,w.inject)(C.TYPES.IActionDispatcher),b("design:type",Object)],I.prototype,"actionDispatcher",void 0),h([(0,w.inject)(C.TYPES.Layouter),b("design:type",T.Layouter)],I.prototype,"layouter",void 0),f.HiddenBoundsUpdater=I=h([(0,w.injectable)()],I),f.ATTR_BBOX_ELEMENT="bboxElement"})(MM)),MM}var V4={},G4={},pgt;function qye(){if(pgt)return G4;pgt=1;var f=G4&&G4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(G4,"__esModule",{value:!0}),G4.AbstractLayout=void 0;const h=Ac(),b=Oc(),w=Xs(),m=Zt();let P=class{layout(E,C){const T=C.getBoundsData(E),M=this.getLayoutOptions(E),_=this.getChildrenSize(E,M,C),I=M.paddingFactor*(M.resizeContainer?Math.max(_.width,M.minWidth):Math.max(0,this.getFixedContainerBounds(E,M,C).width)-M.paddingLeft-M.paddingRight),O=M.paddingFactor*(M.resizeContainer?Math.max(_.height,M.minHeight):Math.max(0,this.getFixedContainerBounds(E,M,C).height)-M.paddingTop-M.paddingBottom);if(I>0&&O>0){const j=this.layoutChildren(E,C,M,I,O);T.bounds=this.getFinalContainerBounds(E,j,M,I,O),T.boundsChanged=!0}}getFinalContainerBounds(E,C,T,M,_){return{x:E.bounds.x,y:E.bounds.y,width:Math.max(T.minWidth,M+T.paddingLeft+T.paddingRight),height:Math.max(T.minHeight,_+T.paddingTop+T.paddingBottom)}}getFixedContainerBounds(E,C,T){let M=E;for(;;){if((0,w.isBoundsAware)(M)){const _=M.bounds;if((0,w.isLayoutContainer)(M)&&C.resizeContainer&&T.log.error(M,"Resizable container found while detecting fixed bounds"),h.Dimension.isValid(_))return _}if(M instanceof b.SChildElementImpl)M=M.parent;else return T.log.error(M,"Cannot detect fixed bounds"),h.Bounds.EMPTY}}layoutChildren(E,C,T,M,_){let I={x:T.paddingLeft+.5*(M-M/T.paddingFactor),y:T.paddingTop+.5*(_-_/T.paddingFactor)};return E.children.forEach(O=>{if((0,w.isLayoutableChild)(O)){const j=C.getBoundsData(O),k=j.bounds,x=this.getChildLayoutOptions(O,T);k!==void 0&&h.Dimension.isValid(k)&&(I=this.layoutChild(O,j,k,x,T,I,M,_))}}),I}getDx(E,C,T){switch(E){case"left":return 0;case"center":return .5*(T-C.width);case"right":return T-C.width}}getDy(E,C,T){switch(E){case"top":return 0;case"center":return .5*(T-C.height);case"bottom":return T-C.height}}getChildLayoutOptions(E,C){const T=E.layoutOptions;return T===void 0?C:this.spread(C,T)}getLayoutOptions(E){let C=E;const T=[];for(;C!==void 0;){const M=C.layoutOptions;if(M!==void 0&&T.push(M),C instanceof b.SChildElementImpl)C=C.parent;else break}return T.reverse().reduce((M,_)=>this.spread(M,_),this.getDefaultLayoutOptions())}};return G4.AbstractLayout=P,G4.AbstractLayout=P=f([(0,m.injectable)()],P),G4}var wgt;function rwt(){if(wgt)return V4;wgt=1;var f=V4&&V4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(V4,"__esModule",{value:!0}),V4.VBoxLayouter=void 0;const h=Zt(),b=Ac(),w=qye(),m=Xs();let P=class extends w.AbstractLayout{getChildrenSize(E,C,T){let M=-1,_=0,I=!0;return E.children.forEach(O=>{if((0,m.isLayoutableChild)(O)){const j=T.getBoundsData(O).bounds;j!==void 0&&b.Dimension.isValid(j)&&(_+=j.height,I?I=!1:_+=C.vGap,M=Math.max(M,j.width))}}),{width:M,height:_}}layoutChild(E,C,T,M,_,I,O,j){const k=this.getDx(M.hAlign,T,O);return C.bounds={x:_.paddingLeft+E.bounds.x-T.x+k,y:I.y+E.bounds.y-T.y,width:T.width,height:T.height},C.boundsChanged=!0,{x:I.x,y:I.y+T.height+_.vGap}}getDefaultLayoutOptions(){return{resizeContainer:!0,paddingTop:5,paddingBottom:5,paddingLeft:5,paddingRight:5,paddingFactor:1,vGap:1,hAlign:"center",minWidth:0,minHeight:0}}spread(E,C){return Object.assign(Object.assign({},E),C)}};return V4.VBoxLayouter=P,P.KIND="vbox",V4.VBoxLayouter=P=f([(0,h.injectable)()],P),V4}var U4={},mgt;function owt(){if(mgt)return U4;mgt=1;var f=U4&&U4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(U4,"__esModule",{value:!0}),U4.HBoxLayouter=void 0;const h=Zt(),b=Ac(),w=qye(),m=Xs();let P=class extends w.AbstractLayout{getChildrenSize(E,C,T){let M=0,_=-1,I=!0;return E.children.forEach(O=>{if((0,m.isLayoutableChild)(O)){const j=T.getBoundsData(O).bounds;j!==void 0&&b.Dimension.isValid(j)&&(I?I=!1:M+=C.hGap,M+=j.width,_=Math.max(_,j.height))}}),{width:M,height:_}}layoutChild(E,C,T,M,_,I,O,j){const k=this.getDy(M.vAlign,T,j);return C.bounds={x:I.x+E.bounds.x-T.x,y:_.paddingTop+E.bounds.y-T.y+k,width:T.width,height:T.height},C.boundsChanged=!0,{x:I.x+T.width+_.hGap,y:I.y}}getDefaultLayoutOptions(){return{resizeContainer:!0,paddingTop:5,paddingBottom:5,paddingLeft:5,paddingRight:5,paddingFactor:1,hGap:1,vAlign:"center",minWidth:0,minHeight:0}}spread(E,C){return Object.assign(Object.assign({},E),C)}};return U4.HBoxLayouter=P,P.KIND="hbox",U4.HBoxLayouter=P=f([(0,h.injectable)()],P),U4}var W4={},vgt;function cwt(){if(vgt)return W4;vgt=1;var f=W4&&W4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(W4,"__esModule",{value:!0}),W4.StackLayouter=void 0;const h=Zt(),b=Ac(),w=qye(),m=Xs();let P=class extends w.AbstractLayout{getChildrenSize(E,C,T){let M=-1,_=-1;return E.children.forEach(I=>{if((0,m.isLayoutableChild)(I)){const O=T.getBoundsData(I).bounds;O!==void 0&&b.Dimension.isValid(O)&&(M=Math.max(M,O.width),_=Math.max(_,O.height))}}),{width:M,height:_}}layoutChild(E,C,T,M,_,I,O,j){const k=this.getDx(M.hAlign,T,O),x=this.getDy(M.vAlign,T,j);return C.bounds={x:_.paddingLeft+E.bounds.x-T.x+k,y:_.paddingTop+E.bounds.y-T.y+x,width:T.width,height:T.height},C.boundsChanged=!0,I}getDefaultLayoutOptions(){return{resizeContainer:!0,paddingTop:5,paddingBottom:5,paddingLeft:5,paddingRight:5,paddingFactor:1,hAlign:"center",vAlign:"center",minWidth:0,minHeight:0}}spread(E,C){return Object.assign(Object.assign({},E),C)}};return W4.StackLayouter=P,P.KIND="stack",W4.StackLayouter=P=f([(0,h.injectable)()],P),W4}var Y4={},ygt;function gJ(){if(ygt)return Y4;ygt=1;var f=Y4&&Y4.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(Y4,"__esModule",{value:!0}),Y4.ShapeView=void 0;const h=Zt(),b=Ac(),w=Xs();let m=class{isVisible(g,E){if(E.targetKind==="hidden"||!b.Dimension.isValid(g.bounds))return!0;const C=(0,w.getAbsoluteBounds)(g),T=g.root.canvasBounds;return C.x<=T.width&&C.x+C.width>=0&&C.y<=T.height&&C.y+C.height>=0}};return Y4.ShapeView=m,Y4.ShapeView=m=f([(0,h.injectable)()],m),Y4}var cg={},_gt;function bJ(){if(_gt)return cg;_gt=1;var f=cg&&cg.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=cg&&cg.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=cg&&cg.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(cg,"__esModule",{value:!0}),cg.configureButtonHandler=cg.ButtonHandlerRegistry=void 0;const w=Zt(),m=q3(),P=Qn(),g=EA();let E=class extends m.InstanceRegistry{constructor(M){super(),M.forEach(_=>this.register(_.TYPE,_.factory()))}};cg.ButtonHandlerRegistry=E,cg.ButtonHandlerRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.IButtonHandlerRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);function C(T,M,_){if(typeof _=="function"){if(!(0,g.isInjectable)(_))throw new Error(`Button handlers should be @injectable: ${_.name}`);T.isBound(_)||T.bind(_).toSelf()}T.bind(P.TYPES.IButtonHandlerRegistration).toDynamicValue(I=>({TYPE:M,factory:()=>I.container.get(_)}))}return cg.configureButtonHandler=C,cg}var yL={},ove={},Egt;function rN(){return Egt||(Egt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isFadeable=f.fadeFeature=void 0,f.fadeFeature=Symbol("fadeFeature");function h(b){return b.hasFeature(f.fadeFeature)&&b.opacity!==void 0}f.isFadeable=h})(ove)),ove}var Sgt;function swt(){if(Sgt)return yL;Sgt=1,Object.defineProperty(yL,"__esModule",{value:!0}),yL.SButtonImpl=void 0;const f=Xs(),h=rN();class b extends f.SShapeElementImpl{constructor(){super(...arguments),this.enabled=!0}}return yL.SButtonImpl=b,b.DEFAULT_FEATURES=[f.boundsFeature,f.layoutableChildFeature,h.fadeFeature],yL}var Ud={},cve={},Pgt;function uwt(){return Pgt||(Pgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.name=f.isNameable=f.nameFeature=void 0,f.nameFeature=Symbol("nameableFeature");function h(w){return w.hasFeature(f.nameFeature)}f.isNameable=h;function b(w){if(h(w))return w.name}f.name=b})(cve)),cve}var Mgt;function Hye(){if(Mgt)return Ud;Mgt=1;var f=Ud&&Ud.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=Ud&&Ud.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)},b=Ud&&Ud.__param||function(_,I){return function(O,j){I(O,j,_)}};Object.defineProperty(Ud,"__esModule",{value:!0}),Ud.RevealNamedElementActionProvider=Ud.CommandPaletteActionProviderRegistry=void 0;const w=Zt(),m=jc(),P=jye(),g=Qn(),E=_A(),C=uwt();let T=class{constructor(I=[]){this.actionProviders=I}getActions(I,O,j,k){const x=this.actionProviders.map(R=>R.getActions(I,O,j,k));return Promise.all(x).then(R=>R.reduce((H,F)=>F!==void 0?H.concat(F):H))}};Ud.CommandPaletteActionProviderRegistry=T,Ud.CommandPaletteActionProviderRegistry=T=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.ICommandPaletteActionProvider)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],T);let M=class{constructor(I){this.logger=I}getActions(I,O,j,k){return k!==void 0&&k%2===0?Promise.resolve(this.createSelectActions(I)):Promise.resolve([new P.LabeledAction("Select all",[m.SelectAllAction.create()])])}createSelectActions(I){return(0,E.toArray)(I.index.all().filter(j=>(0,C.isNameable)(j))).map(j=>new P.LabeledAction(`Reveal ${(0,C.name)(j)}`,[m.SelectAction.create({selectedElementsIDs:[j.id]}),m.CenterAction.create([j.id])],"eye"))}};return Ud.RevealNamedElementActionProvider=M,Ud.RevealNamedElementActionProvider=M=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.ILogger)),h("design:paramtypes",[Object])],M),Ud}var sg={},sve={},Cgt;function awt(){return Cgt||(Cgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.codiconCSSClasses=f.codiconCSSString=f.ANIMATION_SPIN=f.ACTION_ITEM=void 0,f.ACTION_ITEM="action-item",f.ANIMATION_SPIN="animation-spin";function h(w,m=!1,P=!1,g=[]){return b(w,m,P,g).join(" ")}f.codiconCSSString=h;function b(w,m=!1,P=!1,g=[]){const E=["codicon",`codicon-${w}`];return m&&E.push(f.ACTION_ITEM),P&&E.push(f.ANIMATION_SPIN),g.length>0&&E.push(...g),E}f.codiconCSSClasses=b})(sve)),sve}var CM={},Igt;function z3(){if(Igt)return CM;Igt=1,Object.defineProperty(CM,"__esModule",{value:!0}),CM.getActualCode=CM.matchesKeystroke=void 0;const f=My();function h(m,P,...g){if(b(m)!==P)return!1;if((0,f.isMac)()){if(m.ctrlKey!==g.findIndex(E=>E==="ctrl")>=0||m.metaKey!==g.findIndex(E=>E==="meta"||E==="ctrlCmd")>=0)return!1}else if(m.ctrlKey!==g.findIndex(E=>E==="ctrl"||E==="ctrlCmd")>=0||m.metaKey!==g.findIndex(E=>E==="meta")>=0)return!1;return!(m.altKey!==g.findIndex(E=>E==="alt")>=0||m.shiftKey!==g.findIndex(E=>E==="shift")>=0)}CM.matchesKeystroke=h;function b(m){if(m.keyCode){const P=w[m.keyCode];if(P!==void 0)return P}return m.code}CM.getActualCode=b;const w=new Array(256);return(()=>{function m(P,g){w[g]===void 0&&(w[g]=P)}m("Pause",3),m("Backspace",8),m("Tab",9),m("Enter",13),m("ShiftLeft",16),m("ShiftRight",16),m("ControlLeft",17),m("ControlRight",17),m("AltLeft",18),m("AltRight",18),m("CapsLock",20),m("Escape",27),m("Space",32),m("PageUp",33),m("PageDown",34),m("End",35),m("Home",36),m("ArrowLeft",37),m("ArrowUp",38),m("ArrowRight",39),m("ArrowDown",40),m("Insert",45),m("Delete",46),m("Digit1",49),m("Digit2",50),m("Digit3",51),m("Digit4",52),m("Digit5",53),m("Digit6",54),m("Digit7",55),m("Digit8",56),m("Digit9",57),m("Digit0",48),m("KeyA",65),m("KeyB",66),m("KeyC",67),m("KeyD",68),m("KeyE",69),m("KeyF",70),m("KeyG",71),m("KeyH",72),m("KeyI",73),m("KeyJ",74),m("KeyK",75),m("KeyL",76),m("KeyM",77),m("KeyN",78),m("KeyO",79),m("KeyP",80),m("KeyQ",81),m("KeyR",82),m("KeyS",83),m("KeyT",84),m("KeyU",85),m("KeyV",86),m("KeyW",87),m("KeyX",88),m("KeyY",89),m("KeyZ",90),m("OSLeft",91),m("MetaLeft",91),m("OSRight",92),m("MetaRight",92),m("ContextMenu",93),m("Numpad0",96),m("Numpad1",97),m("Numpad2",98),m("Numpad3",99),m("Numpad4",100),m("Numpad5",101),m("Numpad6",102),m("Numpad7",103),m("Numpad8",104),m("Numpad9",105),m("NumpadMultiply",106),m("NumpadAdd",107),m("NumpadSeparator",108),m("NumpadSubtract",109),m("NumpadDecimal",110),m("NumpadDivide",111),m("F1",112),m("F2",113),m("F3",114),m("F4",115),m("F5",116),m("F6",117),m("F7",118),m("F8",119),m("F9",120),m("F10",121),m("F11",122),m("F12",123),m("F13",124),m("F14",125),m("F15",126),m("F16",127),m("F17",128),m("F18",129),m("F19",130),m("F20",131),m("F21",132),m("F22",133),m("F23",134),m("F24",135),m("NumLock",144),m("ScrollLock",145),m("Semicolon",186),m("Equal",187),m("Comma",188),m("Minus",189),m("Period",190),m("Slash",191),m("Backquote",192),m("IntlRo",193),m("BracketLeft",219),m("Backslash",220),m("BracketRight",221),m("Quote",222),m("IntlYen",255)})(),CM}var uve={},Tgt;function Rb(){return Tgt||(Tgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isSelected=f.isSelectable=f.selectFeature=void 0,f.selectFeature=Symbol("selectFeature");function h(w){return w.hasFeature(f.selectFeature)}f.isSelectable=h;function b(w){return w!==void 0&&h(w)&&w.selected}f.isSelected=b})(uve)),uve}var OX={exports:{}},hUt=OX.exports,jgt;function dUt(){return jgt||(jgt=1,(function(f,h){(function(b,w){f.exports=w()})(hUt,(function(){function b(w){var m=document,P=w.container||m.createElement("div"),g=w.preventSubmit||0;P.id=P.id||"autocomplete-"+W();var E=P.style,C=w.debounceWaitMs||0,T=w.disableAutoSelect||!1,M=P.parentElement,_=[],I="",O=2,j=w.showOnFocus,k,x=0,R,H=!1,F=!1;if(w.minLength!==void 0&&(O=w.minLength),!w.input)throw new Error("input undefined");var $=w.input;P.className=[P.className,"autocomplete",w.className||""].join(" ").trim(),P.setAttribute("role","listbox"),$.setAttribute("role","combobox"),$.setAttribute("aria-expanded","false"),$.setAttribute("aria-autocomplete","list"),$.setAttribute("aria-controls",P.id),$.setAttribute("aria-owns",P.id),$.setAttribute("aria-activedescendant",""),$.setAttribute("aria-haspopup","listbox"),E.position="absolute";function W(){return Date.now().toString(36)+Math.random().toString(36).substring(2)}function re(){var Si=P.parentNode;Si&&Si.removeChild(P)}function ae(){R&&window.clearTimeout(R)}function ce(){P.parentNode||(M||m.body).appendChild(P)}function J(){return!!P.parentNode}function te(){x++,_=[],I="",k=void 0,$.setAttribute("aria-activedescendant",""),$.setAttribute("aria-expanded","false"),re()}function fe(){if(!J())return;$.setAttribute("aria-expanded","true"),E.height="auto",E.width=$.offsetWidth+"px";var Si=0,_o;function Au(){var cf=m.documentElement,Rs=cf.clientTop||m.body.clientTop||0,xs=cf.clientLeft||m.body.clientLeft||0,xb=window.pageYOffset||cf.scrollTop,Zh=window.pageXOffset||cf.scrollLeft;_o=$.getBoundingClientRect();var Ia=_o.top+$.offsetHeight+xb-Rs,mm=_o.left+Zh-xs;E.top=Ia+"px",E.left=mm+"px",Si=window.innerHeight-(_o.top+$.offsetHeight),Si<0&&(Si=0),E.top=Ia+"px",E.bottom="",E.left=mm+"px",E.maxHeight=Si+"px"}Au(),Au(),w.customize&&_o&&w.customize($,_o,P,Si)}function ve(){P.textContent="",$.setAttribute("aria-activedescendant","");var Si=function(xs,xb,Zh){var Ia=m.createElement("div");return Ia.textContent=xs.label||"",Ia};w.render&&(Si=w.render);var _o=function(xs,xb){var Zh=m.createElement("div");return Zh.textContent=xs,Zh};w.renderGroup&&(_o=w.renderGroup);var Au=m.createDocumentFragment(),cf=W();if(_.forEach(function(xs,xb){if(xs.group&&xs.group!==cf){cf=xs.group;var Zh=_o(xs.group,I);Zh&&(Zh.className+=" group",Au.appendChild(Zh))}var Ia=Si(xs,I,xb);Ia&&(Ia.id=P.id+"_"+xb,Ia.setAttribute("role","option"),Ia.addEventListener("click",function(mm){F=!0;try{w.onSelect(xs,$)}finally{F=!1}te(),mm.preventDefault(),mm.stopPropagation()}),xs===k&&(Ia.className+=" selected",Ia.setAttribute("aria-selected","true"),$.setAttribute("aria-activedescendant",Ia.id)),Au.appendChild(Ia))}),P.appendChild(Au),_.length<1)if(w.emptyMsg){var Rs=m.createElement("div");Rs.id=P.id+"_"+W(),Rs.className="empty",Rs.textContent=w.emptyMsg,P.appendChild(Rs),$.setAttribute("aria-activedescendant",Rs.id)}else{te();return}ce(),fe(),ct()}function me(){J()&&ve()}function ke(){me()}function tt(Si){Si.target!==P?me():Si.preventDefault()}function De(){F||gt(0)}function ct(){var Si=P.getElementsByClassName("selected");if(Si.length>0){var _o=Si[0],Au=_o.previousElementSibling;if(Au&&Au.className.indexOf("group")!==-1&&!Au.previousElementSibling&&(_o=Au),_o.offsetTopRs&&(P.scrollTop+=cf-Rs)}}}function Z(){var Si=_.indexOf(k);k=Si===-1?void 0:_[(Si+_.length-1)%_.length],ii(Si)}function Nt(){var Si=_.indexOf(k);k=_.length<1?void 0:Si===-1?_[0]:_[(Si+1)%_.length],ii(Si)}function ii(Si){_.length>0&&(jo(Si),kr(_.indexOf(k)),ct())}function kr(Si){var _o=m.getElementById(P.id+"_"+Si);_o&&(_o.classList.add("selected"),_o.setAttribute("aria-selected","true"),$.setAttribute("aria-activedescendant",_o.id))}function jo(Si){var _o=m.getElementById(P.id+"_"+Si);_o&&(_o.classList.remove("selected"),_o.removeAttribute("aria-selected"),$.removeAttribute("aria-activedescendant"))}function Gn(Si,_o){var Au=J();if(_o==="Escape")te();else{if(!Au||_.length<1)return;_o==="ArrowUp"?Z():Nt()}Si.preventDefault(),Au&&Si.stopPropagation()}function pc(Si){if(k){g===2&&Si.preventDefault(),F=!0;try{w.onSelect(k,$)}finally{F=!1}te()}g===1&&Si.preventDefault()}function ls(Si){var _o=Si.key;switch(_o){case"ArrowUp":case"ArrowDown":case"Escape":Gn(Si,_o);break;case"Enter":pc(Si);break}}function Lr(){j&>(1)}function gt(Si){$.value.length>=O||Si===1?(ae(),R=window.setTimeout(function(){return Xn($.value,Si,$.selectionStart||0)},Si===0||Si===2?C:0)):te()}function Xn(Si,_o,Au){if(!H){var cf=++x;w.fetch(Si,function(Rs){x===cf&&Rs&&(_=Rs,I=Si,k=_.length<1||T?void 0:_[0],ve())},_o,Au)}}function jn(Si){if(w.keyup){w.keyup({event:Si,fetch:function(){return gt(0)}});return}!J()&&Si.key==="ArrowDown"&>(0)}function ri(Si){w.click&&w.click({event:Si,fetch:function(){return gt(2)}})}function Er(){setTimeout(function(){m.activeElement!==$&&te()},200)}function Ml(){Xn($.value,3,$.selectionStart||0)}P.addEventListener("mousedown",function(Si){Si.stopPropagation(),Si.preventDefault()}),P.addEventListener("focus",function(){return $.focus()}),re();function yg(){$.removeEventListener("focus",Lr),$.removeEventListener("keyup",jn),$.removeEventListener("click",ri),$.removeEventListener("keydown",ls),$.removeEventListener("input",De),$.removeEventListener("blur",Er),window.removeEventListener("resize",ke),m.removeEventListener("scroll",tt,!0),$.removeAttribute("role"),$.removeAttribute("aria-expanded"),$.removeAttribute("aria-autocomplete"),$.removeAttribute("aria-controls"),$.removeAttribute("aria-activedescendant"),$.removeAttribute("aria-owns"),$.removeAttribute("aria-haspopup"),ae(),te(),H=!0}return $.addEventListener("keyup",jn),$.addEventListener("click",ri),$.addEventListener("keydown",ls),$.addEventListener("input",De),$.addEventListener("blur",Er),$.addEventListener("focus",Lr),window.addEventListener("resize",ke),m.addEventListener("scroll",tt,!0),{destroy:yg,fetch:Ml}}return b}))})(OX)),OX.exports}var Agt;function lwt(){if(Agt)return sg;Agt=1;var f=sg&&sg.__decorate||function(ce,J,te,fe){var ve=arguments.length,me=ve<3?J:fe===null?fe=Object.getOwnPropertyDescriptor(J,te):fe,ke;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")me=Reflect.decorate(ce,J,te,fe);else for(var tt=ce.length-1;tt>=0;tt--)(ke=ce[tt])&&(me=(ve<3?ke(me):ve>3?ke(J,te,me):ke(J,te))||me);return ve>3&&me&&Object.defineProperty(J,te,me),me},h=sg&&sg.__metadata||function(ce,J){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ce,J)},b=sg&&sg.__importDefault||function(ce){return ce&&ce.__esModule?ce:{default:ce}},w;Object.defineProperty(sg,"__esModule",{value:!0}),sg.CommandPaletteKeyListener=sg.CommandPalette=void 0;const m=Zt(),P=jc(),g=jye(),E=Qn(),C=Lye(),T=hJ(),M=tN(),_=H3(),I=awt(),O=_A(),j=z3(),k=Xs(),x=Rb(),R=Hye(),H=Pp(),F=b(dUt());let $=w=class extends C.AbstractUIExtension{constructor(){super(...arguments),this.loadingIndicatorClasses=(0,I.codiconCSSClasses)("loading",!1,!0,["loading"]),this.xOffset=20,this.yOffset=20,this.defaultWidth=400,this.debounceWaitMs=100,this.noCommandsMsg="No commands available",this.paletteIndex=0}id(){return w.ID}containerClass(){return"command-palette"}show(J,...te){super.show(J,...te),this.paletteIndex=0,this.contextActions=void 0,this.inputElement.value="",this.autoCompleteResult=(0,F.default)(this.autocompleteSettings(J)),this.inputElement.focus()}initializeContents(J){J.style.position="absolute",this.inputElement=document.createElement("input"),this.inputElement.style.width="100%",this.inputElement.addEventListener("keydown",te=>this.hideIfEscapeEvent(te)),this.inputElement.addEventListener("keydown",te=>this.cylceIfInvokePaletteKey(te)),this.inputElement.onblur=()=>window.setTimeout(()=>this.hide(),200),J.appendChild(this.inputElement)}hideIfEscapeEvent(J){(0,j.matchesKeystroke)(J,"Escape")&&this.hide()}cylceIfInvokePaletteKey(J){w.isInvokePaletteKey(J)&&this.cycle()}cycle(){this.contextActions=void 0,this.paletteIndex++}onBeforeShow(J,te,...fe){let ve=this.xOffset,me=this.yOffset;const ke=(0,O.toArray)(te.index.all().filter(tt=>(0,x.isSelectable)(tt)&&tt.selected));if(ke.length===1){const tt=(0,k.getAbsoluteClientBounds)(ke[0],this.domHelper,this.viewerOptions);ve+=tt.x+tt.width,me+=tt.y}else{const tt=(0,k.getAbsoluteClientBounds)(te,this.domHelper,this.viewerOptions);ve+=tt.x,me+=tt.y}J.style.left=`${ve}px`,J.style.top=`${me}px`,J.style.width=`${this.defaultWidth}px`}autocompleteSettings(J){return{input:this.inputElement,emptyMsg:this.noCommandsMsg,className:"command-palette-suggestions",debounceWaitMs:this.debounceWaitMs,showOnFocus:!0,minLength:-1,fetch:(te,fe)=>this.updateAutoCompleteActions(fe,te,J),onSelect:te=>this.onSelect(te),render:(te,fe)=>this.renderLabeledActionSuggestion(te,fe),customize:(te,fe,ve,me)=>{this.customizeSuggestionContainer(ve,fe,me)}}}onSelect(J){this.executeAction(J),this.hide()}updateAutoCompleteActions(J,te,fe){this.onLoading(),this.contextActions?(J(this.filterActions(te,this.contextActions)),this.onLoaded("success")):this.actionProviderRegistry.getActions(fe,te,this.mousePositionTracker.lastPositionOnDiagram,this.paletteIndex).then(ve=>{this.contextActions=ve,J(this.filterActions(te,ve)),this.onLoaded("success")}).catch(ve=>{this.logger.error(this,"Failed to obtain actions from command palette action providers",ve),this.onLoaded("error")})}onLoading(){this.loadingIndicator&&this.containerElement.contains(this.loadingIndicator)||(this.loadingIndicator=document.createElement("span"),this.loadingIndicator.classList.add(...this.loadingIndicatorClasses),this.containerElement.appendChild(this.loadingIndicator))}onLoaded(J){this.containerElement.contains(this.loadingIndicator)&&this.containerElement.removeChild(this.loadingIndicator)}renderLabeledActionSuggestion(J,te){const fe=document.createElement("div"),ve=re(te).split(" ").join("|"),me=new RegExp(ve,"gi");return J.icon&&this.renderIcon(fe,J.icon),te.length>0?fe.innerHTML+=J.label.replace(me,ke=>""+ke+"").replace(/ /g," "):fe.innerHTML+=J.label.replace(/ /g," "),fe}renderIcon(J,te){J.innerHTML+=``}getFontAwesomeIcon(J){return`fa fa-${J}`}getCodicon(J){return(0,I.codiconCSSString)(J)}filterActions(J,te){return(0,O.toArray)(te.filter(fe=>{const ve=fe.label.toLowerCase();return J.split(" ").every(ke=>ve.indexOf(ke.toLowerCase())!==-1)}))}customizeSuggestionContainer(J,te,fe){J.style.position="fixed",this.containerElement&&this.containerElement.appendChild(J)}hide(){super.hide(),this.autoCompleteResult&&this.autoCompleteResult.destroy()}executeAction(J){this.actionDispatcherProvider().then(te=>te.dispatchAll(W(J))).catch(te=>this.logger.error(this,"No action dispatcher available to execute command palette action",te))}};sg.CommandPalette=$,$.ID="command-palette",$.isInvokePaletteKey=ce=>(0,j.matchesKeystroke)(ce,"Space","ctrl"),f([(0,m.inject)(E.TYPES.IActionDispatcherProvider),h("design:type",Function)],$.prototype,"actionDispatcherProvider",void 0),f([(0,m.inject)(E.TYPES.ICommandPaletteActionProviderRegistry),h("design:type",R.CommandPaletteActionProviderRegistry)],$.prototype,"actionProviderRegistry",void 0),f([(0,m.inject)(E.TYPES.ViewerOptions),h("design:type",Object)],$.prototype,"viewerOptions",void 0),f([(0,m.inject)(E.TYPES.DOMHelper),h("design:type",M.DOMHelper)],$.prototype,"domHelper",void 0),f([(0,m.inject)(H.MousePositionTracker),h("design:type",H.MousePositionTracker)],$.prototype,"mousePositionTracker",void 0),sg.CommandPalette=$=w=f([(0,m.injectable)()],$);function W(ce){return(0,g.isLabeledAction)(ce)?ce.actions:(0,P.isAction)(ce)?[ce]:[]}function re(ce){return ce.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}class ae extends _.KeyListener{keyDown(J,te){if((0,j.matchesKeystroke)(te,"Escape"))return[T.SetUIExtensionVisibilityAction.create({extensionId:$.ID,visible:!1,contextElementsId:[]})];if($.isInvokePaletteKey(te)){const fe=(0,O.toArray)(J.index.all().filter(ve=>(0,x.isSelectable)(ve)&&ve.selected).map(ve=>ve.id));return[T.SetUIExtensionVisibilityAction.create({extensionId:$.ID,visible:!0,contextElementsId:fe})]}return[]}}return sg.CommandPaletteKeyListener=ae,sg}var _L={},Ogt;function gUt(){if(Ogt)return _L;Ogt=1,Object.defineProperty(_L,"__esModule",{value:!0}),_L.toAnchor=void 0;function f(h){return h instanceof HTMLElement?{x:h.offsetLeft,y:h.offsetTop}:h}return _L.toAnchor=f,_L}var Wd={},v3={},Dgt;function oN(){return Dgt||(Dgt=1,(function(f){var h=v3&&v3.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},b=v3&&v3.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)},w=v3&&v3.__param||function(I,O){return function(j,k){O(j,k,I)}};Object.defineProperty(f,"__esModule",{value:!0}),f.DeleteElementCommand=f.ResolvedDelete=f.isDeletable=f.deletableFeature=void 0;const m=Zt(),P=jc(),g=Ca(),E=Oc(),C=Qn();f.deletableFeature=Symbol("deletableFeature");function T(I){return I instanceof E.SChildElementImpl&&I.hasFeature(f.deletableFeature)}f.isDeletable=T;class M{}f.ResolvedDelete=M;let _=class extends g.Command{constructor(O){super(),this.action=O,this.resolvedDeletes=[]}execute(O){const j=O.root.index;for(const k of this.action.elementIds){const x=j.getById(k);x&&T(x)&&(this.resolvedDeletes.push({child:x,parent:x.parent}),x.parent.remove(x))}return O.root}undo(O){for(const j of this.resolvedDeletes)j.parent.add(j.child);return O.root}redo(O){for(const j of this.resolvedDeletes)j.parent.remove(j.child);return O.root}};f.DeleteElementCommand=_,_.KIND=P.DeleteElementAction.KIND,f.DeleteElementCommand=_=h([(0,m.injectable)(),w(0,(0,m.inject)(C.TYPES.Action)),b("design:paramtypes",[Object])],_)})(v3)),v3}var kgt;function zye(){if(kgt)return Wd;kgt=1;var f=Wd&&Wd.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Wd&&Wd.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=Wd&&Wd.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(Wd,"__esModule",{value:!0}),Wd.DeleteContextMenuItemProvider=Wd.ContextMenuProviderRegistry=void 0;const w=Zt(),m=Qn(),P=oN(),g=Rb(),E=Sp();let C=class{constructor(_=[]){this.menuProviders=_}getItems(_,I){const O=this.menuProviders.map(j=>j.getItems(_,I));return Promise.all(O).then(this.flattenAndRestructure)}flattenAndRestructure(_){let I=_.reduce((j,k)=>k!==void 0?j.concat(k):j,[]);const O=I.filter(j=>j.parentId);for(const j of O)if(j.parentId){const k=j.parentId.split(".");let x,R=I;for(const H of k)x=R.find(F=>H===F.id),x&&x.children&&(R=x.children);x&&(x.children?x.children.push(j):x.children=[j],I=I.filter(H=>H!==j))}return I}};Wd.ContextMenuProviderRegistry=C,Wd.ContextMenuProviderRegistry=C=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.IContextMenuItemProvider)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],C);let T=class{getItems(_,I){const O=Array.from(_.index.all().filter(g.isSelected).filter(P.isDeletable));return Promise.resolve([{id:"delete",label:"Delete",sortString:"d",group:"edit",actions:[E.DeleteElementAction.create(O.map(j=>j.id))],isEnabled:()=>O.length>0}])}};return Wd.DeleteContextMenuItemProvider=T,Wd.DeleteContextMenuItemProvider=T=f([(0,w.injectable)()],T),Wd}var pp={},Rgt;function fwt(){if(Rgt)return pp;Rgt=1;var f=pp&&pp.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=pp&&pp.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)},b=pp&&pp.__param||function(_,I){return function(O,j){I(O,j,_)}};Object.defineProperty(pp,"__esModule",{value:!0}),pp.ContextMenuMouseListener=void 0;const w=Zt(),m=jc(),P=Qh(),g=Qn(),E=Pp(),C=Rb(),T=zye();let M=class extends E.MouseListener{constructor(I,O){super(),this.contextMenuService=I,this.menuProvider=O}contextMenu(I,O){return this.showContextMenu(I,O),[]}async showContextMenu(I,O){let j;try{j=await this.contextMenuService()}catch{return}let k=!1;const x=(0,P.findParentByFeature)(I,C.isSelectable);x&&(k=x.selected,x.selected=!0);const R=I.root,H={x:O.x,y:O.y};if(I.id===R.id||(0,C.isSelected)(x)){const F=await this.menuProvider.getItems(R,H),$=()=>{x&&(x.selected=k)};j.show(F,H,$)}else{if((0,C.isSelectable)(I)){const $={selectedElementsIDs:[I.id],deselectedElementsIDs:Array.from(R.index.all().filter(C.isSelected),W=>W.id)};await this.actionDispatcher.dispatch(m.SelectAction.create($))}const F=await this.menuProvider.getItems(R,H);j.show(F,H)}}};return pp.ContextMenuMouseListener=M,f([(0,w.inject)(g.TYPES.IActionDispatcher),h("design:type",Object)],M.prototype,"actionDispatcher",void 0),pp.ContextMenuMouseListener=M=f([b(0,(0,w.inject)(g.TYPES.IContextMenuServiceProvider)),b(1,(0,w.inject)(g.TYPES.IContextMenuProviderRegistry)),h("design:paramtypes",[Function,T.ContextMenuProviderRegistry])],M),pp}var tX={},fy={},gh={},ave={},lve={},fve={},xgt;function PA(){return xgt||(xgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.hasPopupFeature=f.popupFeature=f.isHoverable=f.hoverFeedbackFeature=void 0,f.hoverFeedbackFeature=Symbol("hoverFeedbackFeature");function h(w){return w.hasFeature(f.hoverFeedbackFeature)}f.isHoverable=h,f.popupFeature=Symbol("popupFeature");function b(w){return w.hasFeature(f.popupFeature)}f.hasPopupFeature=b})(fve)),fve}var hve={},Lgt;function SS(){return Lgt||(Lgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isMoveable=f.isLocateable=f.moveFeature=void 0;const h=_S();f.moveFeature=Symbol("moveFeature");function b(m){return(0,h.hasOwnProperty)(m,"position")}f.isLocateable=b;function w(m){return m.hasFeature(f.moveFeature)&&b(m)}f.isMoveable=w})(hve)),hve}var Ngt;function Ma(){return Ngt||(Ngt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.edgeInProgressTargetHandleID=f.edgeInProgressID=f.SDanglingAnchorImpl=f.SRoutingHandleImpl=f.SConnectableElementImpl=f.getRouteBounds=f.getAbsoluteRouteBounds=f.isConnectable=f.connectableFeature=f.SRoutableElementImpl=void 0;const h=Ac(),b=Oc(),w=Xs(),m=oN(),P=Rb(),g=PA(),E=SS();class C extends b.SChildElementImpl{constructor(){super(...arguments),this.routingPoints=[]}get source(){return this.index.getById(this.sourceId)}get target(){return this.index.getById(this.targetId)}get bounds(){return this.routingPoints.reduce((x,R)=>h.Bounds.combine(x,{x:R.x,y:R.y,width:0,height:0}),h.Bounds.EMPTY)}}f.SRoutableElementImpl=C,f.connectableFeature=Symbol("connectableFeature");function T(k){return k.hasFeature(f.connectableFeature)&&k.canConnect}f.isConnectable=T;function M(k,x=k.routingPoints){let R=_(x),H=k;for(;H instanceof b.SChildElementImpl;){const F=H.parent;R=F.localToParent(R),H=F}return R}f.getAbsoluteRouteBounds=M;function _(k){const x={x:NaN,y:NaN,width:0,height:0};for(const R of k)isNaN(x.x)?(x.x=R.x,x.y=R.y):(R.xx.x+x.width&&(x.width=R.x-x.x),R.yx.y+x.height&&(x.height=R.y-x.y));return x}f.getRouteBounds=_;class I extends w.SShapeElementImpl{constructor(){super(...arguments),this.strokeWidth=0}get anchorKind(){}get incomingEdges(){return this.index.all().filter(R=>R instanceof C).filter(R=>R.targetId===this.id)}get outgoingEdges(){return this.index.all().filter(R=>R instanceof C).filter(R=>R.sourceId===this.id)}canConnect(x,R){return!0}}f.SConnectableElementImpl=I;class O extends b.SChildElementImpl{constructor(){super(...arguments),this.editMode=!1,this.hoverFeedback=!1,this.selected=!1}hasFeature(x){return O.DEFAULT_FEATURES.indexOf(x)!==-1}}f.SRoutingHandleImpl=O,O.DEFAULT_FEATURES=[P.selectFeature,E.moveFeature,g.hoverFeedbackFeature];class j extends I{constructor(){super(),this.type="dangling-anchor",this.size={width:0,height:0}}}f.SDanglingAnchorImpl=j,j.DEFAULT_FEATURES=[m.deletableFeature],f.edgeInProgressID="edge-in-progress",f.edgeInProgressTargetHandleID=f.edgeInProgressID+"-target-anchor"})(lve)),lve}var Fgt;function cN(){return Fgt||(Fgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.DEFAULT_EDGE_PLACEMENT=f.EdgePlacement=f.checkEdgePlacement=f.isEdgeLayoutable=f.edgeLayoutFeature=void 0;const h=Oc(),b=Xs(),w=Ma();f.edgeLayoutFeature=Symbol("edgeLayout");function m(E){return E instanceof h.SChildElementImpl&&E.parent instanceof w.SRoutableElementImpl&&(0,b.isBoundsAware)(E)&&E.hasFeature(f.edgeLayoutFeature)}f.isEdgeLayoutable=m;function P(E){return"edgePlacement"in E}f.checkEdgePlacement=P;class g extends Object{}f.EdgePlacement=g,f.DEFAULT_EDGE_PLACEMENT={rotate:!0,side:"top",position:.5,offset:7}})(ave)),ave}var dve={},Bgt;function sN(){return Bgt||(Bgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isWithEditableLabel=f.withEditLabelFeature=f.isEditableLabel=f.editLabelFeature=f.canEditRouting=f.editFeature=void 0;const h=Ma();f.editFeature=Symbol("editFeature");function b(P){return P instanceof h.SRoutableElementImpl&&P.hasFeature(f.editFeature)}f.canEditRouting=b,f.editLabelFeature=Symbol("editLabelFeature");function w(P){return"text"in P&&P.hasFeature(f.editLabelFeature)}f.isEditableLabel=w,f.withEditLabelFeature=Symbol("withEditLabelFeature");function m(P){return"editableLabel"in P&&P.hasFeature(f.withEditLabelFeature)}f.isWithEditableLabel=m})(dve)),dve}var EL={},gve={},dm={},$gt;function PS(){if($gt)return dm;$gt=1,Object.defineProperty(dm,"__esModule",{value:!0}),dm.limit=dm.intersection=dm.PointToPointLine=dm.Diamond=void 0;const f=Sp();class h{constructor(g){this.bounds=g}get topPoint(){return{x:this.bounds.x+this.bounds.width/2,y:this.bounds.y}}get rightPoint(){return{x:this.bounds.x+this.bounds.width,y:this.bounds.y+this.bounds.height/2}}get bottomPoint(){return{x:this.bounds.x+this.bounds.width/2,y:this.bounds.y+this.bounds.height}}get leftPoint(){return{x:this.bounds.x,y:this.bounds.y+this.bounds.height/2}}get topRightSideLine(){return new b(this.topPoint,this.rightPoint)}get topLeftSideLine(){return new b(this.topPoint,this.leftPoint)}get bottomRightSideLine(){return new b(this.bottomPoint,this.rightPoint)}get bottomLeftSideLine(){return new b(this.bottomPoint,this.leftPoint)}closestSideLine(g){const E=f.Bounds.center(this.bounds);return g.x>E.x?g.y>E.y?this.bottomRightSideLine:this.topRightSideLine:g.y>E.y?this.bottomLeftSideLine:this.topLeftSideLine}}dm.Diamond=h;class b{constructor(g,E){this.p1=g,this.p2=E}get a(){return this.p1.y-this.p2.y}get b(){return this.p2.x-this.p1.x}get c(){return this.p2.x*this.p1.y-this.p1.x*this.p2.y}get angle(){return Math.atan2(-this.a,this.b)}get slope(){if(this.b!==0)return this.a/this.b}get slopeOrMax(){return this.slope===void 0?Number.MAX_SAFE_INTEGER:this.slope}get direction(){const g=(0,f.toDegrees)(this.angle),E=g<0?360+g:g;if(E===90)return"south";if(E===0||E===360)return"east";if(E===270)return"north";if(E===180)return"west";if(E>0&&E<90)return"south-east";if(E>90&&E<180)return"south-west";if(E>180&&E<270)return"north-west";if(E>270&&E<360)return"north-east";throw new Error(`Cannot determine direction of line (${this.p1.x},${this.p1.y}) to (${this.p2.x},${this.p2.y})`)}intersection(g){if(this.hasIndistinctPoints(g))return;const E=this.p1.x,C=this.p1.y,T=this.p2.x,M=this.p2.y,_=g.p1.x,I=g.p1.y,O=g.p2.x,j=g.p2.y,k=(j-I)*(T-E)-(O-_)*(M-C);if(k===0)return;const x=(O-_)*(C-I)-(j-I)*(E-_),R=(T-E)*(C-I)-(M-C)*(E-_);if(x===0&&R===0)return;const H=x/k,F=R/k;if(H<0||H>1||F<0||F>1)return;const $=E+H*(T-E),W=C+H*(M-C);return{x:$,y:W}}hasIndistinctPoints(g){return f.Point.equals(this.p1,g.p1)||f.Point.equals(this.p1,g.p2)||f.Point.equals(this.p2,g.p1)||f.Point.equals(this.p2,g.p2)}}dm.PointToPointLine=b;function w(P,g){return{x:(P.c*g.b-g.c*P.b)/(P.a*g.b-g.a*P.b),y:(P.a*g.c-g.a*P.c)/(P.a*g.b-g.a*P.b)}}dm.intersection=w;function m(P,g){return Pg.max?g.max:P}return dm.limit=m,dm}var Kgt;function V3(){return Kgt||(Kgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.limitViewport=f.isViewport=f.viewportFeature=void 0;const h=Sp(),b=Oc(),w=PS();f.viewportFeature=Symbol("viewportFeature");function m(g){return g instanceof b.SModelRootImpl&&g.hasFeature(f.viewportFeature)&&"zoom"in g&&"scroll"in g}f.isViewport=m;function P(g,E,C,T,M){E&&!h.Dimension.isValid(E)&&(E=void 0);let _=M?(0,w.limit)(g.zoom,M):g.zoom;if(E&&C){const j=E.width/(C.max-C.min);_ae instanceof k)===void 0}get incomingEdges(){const W=this.index;return W instanceof F?W.getIncomingEdges(this):this.index.all().filter(ae=>ae instanceof x).filter(ae=>ae.targetId===this.id)}get outgoingEdges(){const W=this.index;return W instanceof F?W.getOutgoingEdges(this):this.index.all().filter(ae=>ae instanceof x).filter(ae=>ae.sourceId===this.id)}}gh.SNodeImpl=j,j.DEFAULT_FEATURES=[T.connectableFeature,m.deletableFeature,M.selectFeature,b.boundsFeature,C.moveFeature,b.layoutContainerFeature,g.fadeFeature,E.hoverFeedbackFeature,E.popupFeature];class k extends T.SConnectableElementImpl{constructor(){super(...arguments),this.selected=!1,this.hoverFeedback=!1,this.opacity=1}get incomingEdges(){const W=this.index;return W instanceof F?W.getIncomingEdges(this):super.incomingEdges.filter(re=>re instanceof x)}get outgoingEdges(){const W=this.index;return W instanceof F?W.getOutgoingEdges(this):super.outgoingEdges.filter(re=>re instanceof x)}}gh.SPortImpl=k,k.DEFAULT_FEATURES=[T.connectableFeature,M.selectFeature,b.boundsFeature,g.fadeFeature,E.hoverFeedbackFeature];class x extends T.SRoutableElementImpl{constructor(){super(...arguments),this.selected=!1,this.hoverFeedback=!1,this.opacity=1}}gh.SEdgeImpl=x,x.DEFAULT_FEATURES=[P.editFeature,m.deletableFeature,M.selectFeature,g.fadeFeature,E.hoverFeedbackFeature];class R extends b.SShapeElementImpl{constructor(){super(...arguments),this.selected=!1,this.alignment=f.Point.ORIGIN,this.opacity=1}}gh.SLabelImpl=R,R.DEFAULT_FEATURES=[b.boundsFeature,b.alignFeature,b.layoutableChildFeature,w.edgeLayoutFeature,g.fadeFeature];class H extends b.SShapeElementImpl{constructor(){super(...arguments),this.opacity=1}}gh.SCompartmentImpl=H,H.DEFAULT_FEATURES=[b.boundsFeature,b.layoutContainerFeature,b.layoutableChildFeature,g.fadeFeature];class F extends h.ModelIndexImpl{constructor(){super(...arguments),this.outgoing=new Map,this.incoming=new Map}add(W){if(super.add(W),W instanceof x){if(W.sourceId){const re=this.outgoing.get(W.sourceId);re===void 0?this.outgoing.set(W.sourceId,[W]):re.push(W)}if(W.targetId){const re=this.incoming.get(W.targetId);re===void 0?this.incoming.set(W.targetId,[W]):re.push(W)}}}remove(W){if(super.remove(W),W instanceof x){const re=this.outgoing.get(W.sourceId);if(re!==void 0){const ce=re.indexOf(W);ce>=0&&(re.length===1?this.outgoing.delete(W.sourceId):re.splice(ce,1))}const ae=this.incoming.get(W.targetId);if(ae!==void 0){const ce=ae.indexOf(W);ce>=0&&(ae.length===1?this.incoming.delete(W.targetId):ae.splice(ce,1))}}}getAttachedElements(W){return new I.FluentIterableImpl(()=>({outgoing:this.outgoing.get(W.id),incoming:this.incoming.get(W.id),nextOutgoingIndex:0,nextIncomingIndex:0}),re=>{let ae=re.nextOutgoingIndex;if(re.outgoing!==void 0&&ae=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O},b=y3&&y3.__metadata||function(C,T){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(C,T)},w=y3&&y3.__param||function(C,T){return function(M,_){T(M,_,C)}};Object.defineProperty(f,"__esModule",{value:!0}),f.AnchorComputerRegistry=f.RECTANGULAR_ANCHOR_KIND=f.ELLIPTIC_ANCHOR_KIND=f.DIAMOND_ANCHOR_KIND=void 0;const m=Zt(),P=Qn(),g=q3();f.DIAMOND_ANCHOR_KIND="diamond",f.ELLIPTIC_ANCHOR_KIND="elliptic",f.RECTANGULAR_ANCHOR_KIND="rectangular";let E=class extends g.InstanceRegistry{constructor(T){super(),T.forEach(M=>this.register(M.kind,M))}get defaultAnchorKind(){return f.RECTANGULAR_ANCHOR_KIND}get(T,M){return super.get(`${T}:${M||this.defaultAnchorKind}`)}};f.AnchorComputerRegistry=E,f.AnchorComputerRegistry=E=h([(0,m.injectable)(),w(0,(0,m.multiInject)(P.TYPES.IAnchorComputer)),b("design:paramtypes",[Array])],E)})(y3)),y3}var ag={},Ggt;function pJ(){if(Ggt)return ag;Ggt=1;var f=ag&&ag.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=ag&&ag.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)};Object.defineProperty(ag,"__esModule",{value:!0}),ag.AbstractEdgeRouter=ag.DefaultAnchors=ag.Side=void 0;const b=Zt(),w=Ac(),m=Qh(),P=Ma(),g=MS(),E=Ma();var C;(function(_){_[_.RIGHT=0]="RIGHT",_[_.LEFT=1]="LEFT",_[_.TOP=2]="TOP",_[_.BOTTOM=3]="BOTTOM"})(C||(ag.Side=C={}));class T{constructor(I,O,j){this.element=I,this.kind=j;const k=I.bounds;this.bounds=(0,m.translateBounds)(k,I.parent,O),this.left={x:this.bounds.x,y:this.bounds.y+.5*this.bounds.height,kind:j},this.right={x:this.bounds.x+this.bounds.width,y:this.bounds.y+.5*this.bounds.height,kind:j},this.top={x:this.bounds.x+.5*this.bounds.width,y:this.bounds.y,kind:j},this.bottom={x:this.bounds.x+.5*this.bounds.width,y:this.bounds.y+this.bounds.height,kind:j}}get(I){return this[C[I].toLowerCase()]}getNearestSide(I){const O=w.Point.euclideanDistance(I,this.left),j=w.Point.euclideanDistance(I,this.right),k=w.Point.euclideanDistance(I,this.top),x=w.Point.euclideanDistance(I,this.bottom);let R=C.LEFT,H=O;return j{const W=w.Point.subtract($,F),re=w.Point.subtract(O,F),ae=w.Point.dotProduct(re,W)/w.Point.dotProduct(W,W);return ae>=0&&ae<=1?w.Point.linear(F,$,ae):ae<0?F:$},k=this.route(I);let x=k[0],R=0;for(let F=0;F1)return;const j=this.route(I);if(j.length<2)return;const k=[];let x=0;for(let F=0;F1e-8&&$>=H){const W=Math.max(0,H-R)/k[F];return{segmentStart:j[F],segmentEnd:j[F+1],lambda:W}}R=$}return{segmentEnd:j.pop(),segmentStart:j.pop(),lambda:1}}addHandle(I,O,j,k){const x=new P.SRoutingHandleImpl;return x.kind=O,x.pointIndex=k,x.type=j,O==="target"&&I.id===P.edgeInProgressID&&(x.id=P.edgeInProgressTargetHandleID),I.add(x),x}getHandlePosition(I,O,j){switch(j.kind){case"source":return I.source instanceof P.SDanglingAnchorImpl?I.source.position:O[0];case"target":return I.target instanceof P.SDanglingAnchorImpl?I.target.position:O[O.length-1];default:const k=this.getInnerHandlePosition(I,O,j);if(k!==void 0)return k;if(j.pointIndex>=0&&j.pointIndexH.pointIndex!==void 0?H.pointIndex:H.kind==="target"?I.routingPoints.length:-2;let x,R;for(const H of O){const F=k(H);F<=j&&(x===void 0||F>k(x))&&(x=H),F>j&&(R===void 0||F{const x=k.handle;if(x.kind==="source"&&!(I.source instanceof P.SDanglingAnchorImpl)){const R=new P.SDanglingAnchorImpl;R.id=I.id+"_dangling-source",R.original=I.source,R.position=k.toPosition,x.root.add(R),x.danglingAnchor=R,I.sourceId=R.id}else if(x.kind==="target"&&!(I.target instanceof P.SDanglingAnchorImpl)){const R=new P.SDanglingAnchorImpl;R.id=I.id+"_dangling-target",R.original=I.target,R.position=k.toPosition,x.root.add(R),x.danglingAnchor=R,I.targetId=R.id}x.danglingAnchor&&(x.danglingAnchor.position=k.toPosition,j.splice(j.indexOf(k),1))}),j.length>0&&this.applyInnerHandleMoves(I,j),this.cleanupRoutingPoints(I,I.routingPoints,!0,!0)}cleanupRoutingPoints(I,O,j,k){const x=new T(I.source,I.parent,"source"),R=new T(I.target,I.parent,"target");this.resetRoutingPointsOnReconnect(I,O,j,x,R)}resetRoutingPointsOnReconnect(I,O,j,k,x){if(O.length===0||I.source instanceof P.SDanglingAnchorImpl||I.target instanceof P.SDanglingAnchorImpl){const R=this.getOptions(I),H=this.calculateDefaultCorners(I,k,x,R);if(O.splice(0,O.length,...H),j){let F=-2;I.children.forEach($=>{$ instanceof P.SRoutingHandleImpl&&($.kind==="target"?$.pointIndex=O.length:$.kind==="line"&&$.pointIndex>=O.length?I.remove($):F=Math.max($.pointIndex,F))});for(let $=F;$`${I.sourceId}_to_${I.targetId}_${$}`;let R=0,H=x(R);for(;I.index.getById(H)!==void 0;)H=x(++R);I.id=H;const F=I.children.find($=>$.id===P.edgeInProgressTargetHandleID);F instanceof P.SRoutingHandleImpl&&(I.remove(F),F.danglingAnchor&&F.danglingAnchor.parent.remove(F.danglingAnchor))}I.index.add(I),this.getSelfEdgeIndex(I)>-1&&(I.routingPoints=[],this.cleanupRoutingPoints(I,I.routingPoints,!0,!0))}}takeSnapshot(I){return{routingPoints:I.routingPoints.slice(),routingHandles:I.children.filter(O=>O instanceof P.SRoutingHandleImpl).map(O=>O),routedPoints:this.route(I),router:this,source:I.source,target:I.target}}applySnapshot(I,O){I.routingPoints=O.routingPoints,I.removeAll(j=>j instanceof P.SRoutingHandleImpl),I.routerKind=O.router.kind,O.routingHandles.forEach(j=>I.add(j)),O.source&&(I.sourceId=O.source.id),O.target&&(I.targetId=O.target.id),I.root.index.remove(I),I.root.index.add(I)}calculateDefaultCorners(I,O,j,k){const x=this.getSelfEdgeIndex(I);if(x>=0){const R=k.standardDistance,H=k.selfEdgeOffset*Math.min(O.bounds.width,O.bounds.height);switch(x%4){case 0:return[{x:O.get(C.RIGHT).x+R,y:O.get(C.RIGHT).y+H},{x:O.get(C.RIGHT).x+R,y:O.get(C.BOTTOM).y+R},{x:O.get(C.BOTTOM).x+H,y:O.get(C.BOTTOM).y+R}];case 1:return[{x:O.get(C.BOTTOM).x-H,y:O.get(C.BOTTOM).y+R},{x:O.get(C.LEFT).x-R,y:O.get(C.BOTTOM).y+R},{x:O.get(C.LEFT).x-R,y:O.get(C.LEFT).y+H}];case 2:return[{x:O.get(C.LEFT).x-R,y:O.get(C.LEFT).y-H},{x:O.get(C.LEFT).x-R,y:O.get(C.TOP).y-R},{x:O.get(C.TOP).x-H,y:O.get(C.TOP).y-R}];case 3:return[{x:O.get(C.TOP).x+H,y:O.get(C.TOP).y-R},{x:O.get(C.RIGHT).x+R,y:O.get(C.TOP).y-R},{x:O.get(C.RIGHT).x+R,y:O.get(C.RIGHT).y-H}]}}return[]}getSelfEdgeIndex(I){return!I.source||I.source!==I.target?-1:I.source.outgoingEdges.filter(O=>O.target===I.source).indexOf(I)}commitRoute(I,O){const j=[];for(let k=1;k=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=hy&&hy.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b;Object.defineProperty(hy,"__esModule",{value:!0}),hy.PolylineEdgeRouter=void 0;const w=Zt(),m=Ac(),P=Ma(),g=MS(),E=pJ();let C=b=class extends E.AbstractEdgeRouter{get kind(){return b.KIND}getOptions(M){return{minimalPointDistance:2,removeAngleThreshold:.1,standardDistance:20,selfEdgeOffset:.25}}route(M){const _=M.source,I=M.target;if(_===void 0||I===void 0)return[];let O,j;const k=this.getOptions(M),x=M.routingPoints.length>0?M.routingPoints:[];this.cleanupRoutingPoints(M,x,!1,!1);const R=x!==void 0?x.length:0;if(R===0){const F=m.Bounds.center(I.bounds);O=this.getTranslatedAnchor(_,F,I.parent,M,M.sourceAnchorCorrection);const $=m.Bounds.center(_.bounds);j=this.getTranslatedAnchor(I,$,_.parent,M,M.targetAnchorCorrection)}else{const F=x[0];O=this.getTranslatedAnchor(_,F,M.parent,M,M.sourceAnchorCorrection);const $=x[R-1];j=this.getTranslatedAnchor(I,$,M.parent,M,M.targetAnchorCorrection)}const H=[];H.push({kind:"source",x:O.x,y:O.y});for(let F=0;F0&&F=k.minimalPointDistance+(M.sourceAnchorCorrection||0)||F===R-1&&m.Point.maxDistance($,j)>=k.minimalPointDistance+(M.targetAnchorCorrection||0))&&H.push({kind:"linear",x:$.x,y:$.y,pointIndex:F})}return H.push({kind:"target",x:j.x,y:j.y}),this.filterEditModeHandles(H,M,k)}filterEditModeHandles(M,_,I){if(_.children.length===0)return M;let O=0;for(;Ox instanceof P.SRoutingHandleImpl&&x.kind==="junction"&&x.pointIndex===j.pointIndex);if(k!==void 0&&k.editMode&&O>0&&O{const O=I.handle,j=M.routingPoints;let k=O.pointIndex;O.kind==="line"&&(O.kind="junction",O.type="routing-point",j.splice(k+1,0,I.fromPosition||j[Math.max(k,0)]),M.children.forEach(x=>{x instanceof P.SRoutingHandleImpl&&(x===O||x.pointIndex>k)&&x.pointIndex++}),this.addHandle(M,"line","volatile-routing-point",k),k++,this.addHandle(M,"line","volatile-routing-point",k)),k>=0&&k=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=ug&&ug.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)},b=ug&&ug.__param||function(O,j){return function(k,x){j(k,x,O)}};Object.defineProperty(ug,"__esModule",{value:!0}),ug.EdgeRouting=ug.EdgeRouterRegistry=void 0;const w=Zt(),m=Oc(),P=Qn(),g=iN(),E=q3(),C=Ma(),T=wJ();function M(O){return O.routeAll!==void 0}let _=class extends E.InstanceRegistry{constructor(j){super(),j.forEach(k=>this.register(k.kind,k))}get defaultKind(){return T.PolylineEdgeRouter.KIND}get(j){return super.get(j||this.defaultKind)}routeAllChildren(j){const k=this.doRouteAllChildren(j);for(const x of this.postProcessors)x.apply(k,j);return k}doRouteAllChildren(j){const k=new I,x=new Map,R=[j];for(;R.length>0;){const H=R.shift();for(const F of H.children){if(F instanceof C.SRoutableElementImpl){const $=F.routerKind||this.defaultKind;x.has($)?x.get($).push(F):x.set($,[F])}F instanceof m.SParentElementImpl&&R.push(F)}}return x.forEach((H,F)=>{const $=this.get(F);if(M($))k.setAll($.routeAll(H,j));else for(const W of H)k.set(W.id,this.route(W))}),k}route(j,k){const x=(0,g.findArgValue)(k,"edgeRouting");if(x){const H=x.get(j.id);if(H)return H}return this.get(j.routerKind).route(j)}};ug.EdgeRouterRegistry=_,f([(0,w.multiInject)(P.TYPES.IEdgeRoutePostprocessor),(0,w.optional)(),h("design:type",Array)],_.prototype,"postProcessors",void 0),ug.EdgeRouterRegistry=_=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.IEdgeRouter)),h("design:paramtypes",[Array])],_);class I{constructor(){this.routesMap=new Map}set(j,k){this.routesMap.set(j,k)}setAll(j){j.routes.forEach((k,x)=>this.set(x,k))}get(j){return this.routesMap.get(j)}get routes(){return this.routesMap}}return ug.EdgeRouting=I,ug}var Ygt;function hwt(){if(Ygt)return fy;Ygt=1;var f=fy&&fy.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=fy&&fy.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(fy,"__esModule",{value:!0}),fy.EdgeLayoutPostprocessor=void 0;const b=Zt(),w=Ac(),m=Oc(),P=mh(),g=MA(),E=Xs(),C=cN(),T=Iy(),M=Qn(),_=SS();let I=class{decorate(j,k){var x,R,H,F;if((0,C.isEdgeLayoutable)(k)&&k.parent instanceof g.SEdgeImpl&&k.bounds!==w.Bounds.EMPTY){const $=k.bounds,W=(0,C.checkEdgePlacement)(k),re=this.getEdgePlacement(k),ae=k.parent,ce=Math.min(1,Math.max(0,re.position)),J=this.edgeRouterRegistry.get(ae.routerKind),te=J.pointAt(ae,ce);let fe="",ve=J.derivativeAt(ae,ce);if(te)if(W){switch(re.moveMode){case"edge":const me=J.findOrthogonalIntersection(ae,w.Point.add(te,$));me&&(ve=me.derivative,fe+=`translate(${me.point.x}, ${me.point.y})`);break;case"free":fe+=`translate(${((x=te?.x)!==null&&x!==void 0?x:0)+$.x}, ${((R=te?.y)!==null&&R!==void 0?R:0)+$.y})`;break;case"none":fe+=`translate(${te.x}, ${te.y})`;break;default:this.logger.error({},"No moveMode set for edge label. Skipping edge placement.");break}if(ve){const me=(0,w.toDegrees)(Math.atan2(ve.y,ve.x));if(re.rotate){let ke=me;Math.abs(me)>90&&(me<0?ke+=180:me>0&&(ke-=180)),fe+=` rotate(${ke})`;const tt=this.getRotatedAlignment(k,re,ke!==me);fe+=` translate(${tt.x}, ${tt.y})`}else{const ke=this.getAlignment(k,re,me);fe+=` translate(${ke.x}, ${ke.y})`}}}else(0,_.isMoveable)(k)?fe+=`translate(${((H=te?.x)!==null&&H!==void 0?H:0)+$.x}, ${((F=te?.y)!==null&&F!==void 0?F:0)+$.y})`:fe+=`translate(${te.x}, ${te.y})`;(0,P.setAttr)(j,"transform",fe)}return j}getRotatedAlignment(j,k,x){let R=(0,E.isAlignable)(j)?j.alignment.x:0,H=(0,E.isAlignable)(j)?j.alignment.y:0;const F=j.bounds;if(k.side==="on")return{x:R-.5*F.height,y:H-.5*F.height};if(x)switch(k.position<.3333333?R-=F.width+k.offset:k.position<.6666666?R-=.5*F.width:R+=k.offset,k.side){case"left":case"bottom":H-=k.offset+F.height;break;case"right":case"top":H+=k.offset}else switch(k.position<.3333333?R+=k.offset:k.position<.6666666?R-=.5*F.width:R-=F.width+k.offset,k.side){case"right":case"bottom":H+=-k.offset-F.height;break;case"left":case"top":H+=k.offset}return{x:R,y:H}}getEdgePlacement(j){let k=j;const x=[];for(;k!==void 0;){const H=k.edgePlacement;if(H!==void 0&&x.push(H),k instanceof m.SChildElementImpl)k=k.parent;else break}const R=x.reverse().reduce((H,F)=>Object.assign(Object.assign({},H),F),C.DEFAULT_EDGE_PLACEMENT);return R.moveMode||(R.moveMode=(0,_.isMoveable)(j)?"edge":"none"),R}getAlignment(j,k,x){const R=j.bounds,H=(0,E.isAlignable)(j)?j.alignment.x-R.width:0,F=(0,E.isAlignable)(j)?j.alignment.y-R.height:0;if(k.side==="on")return{x:H+.5*R.width,y:F+.5*R.height};const $=this.getQuadrant(x),W={x:k.offset,y:F+.5*R.height},re={x:k.offset,y:F+R.height+k.offset},ae={x:-R.width-k.offset,y:F+R.height+k.offset},ce={x:-R.width-k.offset,y:F+.5*R.height},J={x:-R.width-k.offset,y:F-k.offset},te={x:k.offset,y:F-k.offset};switch(k.side){case"left":switch($.orientation){case"west":return w.Point.linear(re,ae,$.position);case"north":return w.Point.linear(ae,J,$.position);case"east":return w.Point.linear(J,te,$.position);case"south":return w.Point.linear(te,re,$.position)}break;case"right":switch($.orientation){case"west":return w.Point.linear(J,te,$.position);case"north":return w.Point.linear(te,re,$.position);case"east":return w.Point.linear(re,ae,$.position);case"south":return w.Point.linear(ae,J,$.position)}break;case"top":switch($.orientation){case"west":return w.Point.linear(J,te,$.position);case"north":return this.linearFlip(te,W,ce,J,$.position);case"east":return w.Point.linear(J,te,$.position);case"south":return this.linearFlip(te,W,ce,J,$.position)}break;case"bottom":switch($.orientation){case"west":return w.Point.linear(re,ae,$.position);case"north":return this.linearFlip(ae,ce,W,re,$.position);case"east":return w.Point.linear(re,ae,$.position);case"south":return this.linearFlip(ae,ce,W,re,$.position)}break}return{x:0,y:0}}getQuadrant(j){return Math.abs(j)>135?{orientation:"west",position:(j>0?j-135:j+225)/90}:j<-45?{orientation:"north",position:(j+135)/90}:j<45?{orientation:"east",position:(j+45)/90}:{orientation:"south",position:(j-45)/90}}linearFlip(j,k,x,R,H){return H<.5?w.Point.linear(j,k,2*H):w.Point.linear(x,R,2*H-1)}postUpdate(){}};return fy.EdgeLayoutPostprocessor=I,f([(0,b.inject)(T.EdgeRouterRegistry),h("design:type",T.EdgeRouterRegistry)],I.prototype,"edgeRouterRegistry",void 0),f([(0,b.inject)(M.TYPES.ILogger),h("design:type",Object)],I.prototype,"logger",void 0),fy.EdgeLayoutPostprocessor=I=f([(0,b.injectable)()],I),fy}var Xgt;function Rve(){if(Xgt)return tX;Xgt=1,Object.defineProperty(tX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=hwt(),w=new f.ContainerModule(m=>{m(b.EdgeLayoutPostprocessor).toSelf().inSingletonScope(),m(h.TYPES.IVNodePostprocessor).toService(b.EdgeLayoutPostprocessor),m(h.TYPES.HiddenVNodePostprocessor).toService(b.EdgeLayoutPostprocessor)});return tX.default=w,tX}var wp={},Jgt;function bUt(){if(Jgt)return wp;Jgt=1;var f=wp&&wp.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=wp&&wp.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=wp&&wp.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(wp,"__esModule",{value:!0}),wp.CreateElementCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Oc(),E=Qn();let C=class extends P.Command{constructor(M){super(),this.action=M}execute(M){const _=M.root.index.getById(this.action.containerId);return _ instanceof g.SParentElementImpl&&(this.container=_,this.newElement=M.modelFactory.createElement(this.action.elementSchema),this.container.add(this.newElement)),M.root}undo(M){return this.container.remove(this.newElement),M.root}redo(M){return this.container.add(this.newElement),M.root}};return wp.CreateElementCommand=C,C.KIND=m.CreateElementAction.KIND,wp.CreateElementCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(E.TYPES.Action)),h("design:paramtypes",[Object])],C),wp}var pve={},Qgt;function dwt(){return Qgt||(Qgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isCreatingOnDrag=f.creatingOnDragFeature=void 0,f.creatingOnDragFeature=Symbol("creatingOnDragFeature");function h(b){return b.hasFeature(f.creatingOnDragFeature)&&b.createAction!==void 0}f.isCreatingOnDrag=h})(pve)),pve}var _3={},yl={},Zgt;function gwt(){if(Zgt)return yl;Zgt=1;var f=yl&&yl.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R};Object.defineProperty(yl,"__esModule",{value:!0}),yl.EmptyGroupView=yl.DiamondNodeView=yl.RectangularNodeView=yl.CircularNodeView=yl.SvgViewportView=void 0;const h=Cy(),b=MA(),w=gJ(),m=PS(),P=Zt();let g=class{render(O,j,k){const x=`scale(${O.zoom}) translate(${-O.scroll.x},${-O.scroll.y})`;return(0,h.svg)("svg",null,(0,h.svg)("g",{transform:x},j.renderChildren(O)))}};yl.SvgViewportView=g,yl.SvgViewportView=g=f([(0,P.injectable)()],g);let E=class extends w.ShapeView{render(O,j,k){if(!this.isVisible(O,j))return;const x=this.getRadius(O);return(0,h.svg)("g",null,(0,h.svg)("circle",{"class-sprotty-node":O instanceof b.SNodeImpl,"class-sprotty-port":O instanceof b.SPortImpl,"class-mouseover":O.hoverFeedback,"class-selected":O.selected,r:x,cx:x,cy:x}),j.renderChildren(O))}getRadius(O){const j=Math.min(O.size.width,O.size.height);return j>0?j/2:0}};yl.CircularNodeView=E,yl.CircularNodeView=E=f([(0,P.injectable)()],E);let C=class extends w.ShapeView{render(O,j,k){if(this.isVisible(O,j))return(0,h.svg)("g",null,(0,h.svg)("rect",{"class-sprotty-node":O instanceof b.SNodeImpl,"class-sprotty-port":O instanceof b.SPortImpl,"class-mouseover":O.hoverFeedback,"class-selected":O.selected,x:"0",y:"0",width:Math.max(O.size.width,0),height:Math.max(O.size.height,0)}),j.renderChildren(O))}};yl.RectangularNodeView=C,yl.RectangularNodeView=C=f([(0,P.injectable)()],C);let T=class extends w.ShapeView{render(O,j,k){if(!this.isVisible(O,j))return;const x=new m.Diamond({height:Math.max(O.size.height,0),width:Math.max(O.size.width,0),x:0,y:0}),R=`${M(x.topPoint)} ${M(x.rightPoint)} ${M(x.bottomPoint)} ${M(x.leftPoint)}`;return(0,h.svg)("g",null,(0,h.svg)("polygon",{"class-sprotty-node":O instanceof b.SNodeImpl,"class-sprotty-port":O instanceof b.SPortImpl,"class-mouseover":O.hoverFeedback,"class-selected":O.selected,points:R}),j.renderChildren(O))}};yl.DiamondNodeView=T,yl.DiamondNodeView=T=f([(0,P.injectable)()],T);function M(I){return`${I.x},${I.y}`}let _=class{render(O,j){return(0,h.svg)("g",null)}};return yl.EmptyGroupView=_,yl.EmptyGroupView=_=f([(0,P.injectable)()],_),yl}var Ws={},ebt;function Uye(){if(ebt)return Ws;ebt=1;var f=Ws&&Ws.__decorate||function(W,re,ae,ce){var J=arguments.length,te=J<3?re:ce===null?ce=Object.getOwnPropertyDescriptor(re,ae):ce,fe;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")te=Reflect.decorate(W,re,ae,ce);else for(var ve=W.length-1;ve>=0;ve--)(fe=W[ve])&&(te=(J<3?fe(te):J>3?fe(re,ae,te):fe(re,ae))||te);return J>3&&te&&Object.defineProperty(re,ae,te),te},h=Ws&&Ws.__metadata||function(W,re){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(W,re)},b=Ws&&Ws.__param||function(W,re){return function(ae,ce){re(ae,ce,W)}};Object.defineProperty(Ws,"__esModule",{value:!0}),Ws.getEditableLabel=Ws.EditLabelKeyListener=Ws.EditLabelMouseListener=Ws.ApplyLabelEditCommand=Ws.ResolvedLabelEdit=Ws.isApplyLabelEditAction=Ws.isEditLabelAction=Ws.EditLabelAction=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=Pp(),C=H3(),T=z3(),M=Rb(),_=_A(),I=sN();var O;(function(W){W.KIND="EditLabel";function re(ae){return{kind:W.KIND,labelId:ae}}W.create=re})(O||(Ws.EditLabelAction=O={}));function j(W){return(0,m.isAction)(W)&&W.kind===O.KIND&&"labelId"in W}Ws.isEditLabelAction=j;function k(W){return(0,m.isAction)(W)&&W.kind===m.ApplyLabelEditAction.KIND&&"labelId"in W&&"text"in W}Ws.isApplyLabelEditAction=k;class x{}Ws.ResolvedLabelEdit=x;let R=class extends P.Command{constructor(re){super(),this.action=re}execute(re){const ce=re.root.index.getById(this.action.labelId);return ce&&(0,I.isEditableLabel)(ce)&&(this.resolvedLabelEdit={label:ce,oldLabel:ce.text,newLabel:this.action.text},ce.text=this.action.text),re.root}undo(re){return this.resolvedLabelEdit&&(this.resolvedLabelEdit.label.text=this.resolvedLabelEdit.oldLabel),re.root}redo(re){return this.resolvedLabelEdit&&(this.resolvedLabelEdit.label.text=this.resolvedLabelEdit.newLabel),re.root}};Ws.ApplyLabelEditCommand=R,R.KIND=m.ApplyLabelEditAction.KIND,Ws.ApplyLabelEditCommand=R=f([b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],R);class H extends E.MouseListener{doubleClick(re,ae){const ce=$(re);return ce?[O.create(ce.id)]:[]}}Ws.EditLabelMouseListener=H;class F extends C.KeyListener{keyDown(re,ae){if((0,T.matchesKeystroke)(ae,"F2")){const ce=(0,_.toArray)(re.index.all().filter(J=>(0,M.isSelectable)(J)&&J.selected)).map($).filter(J=>J!==void 0);if(ce.length===1)return[O.create(ce[0].id)]}return[]}}Ws.EditLabelKeyListener=F;function $(W){if((0,I.isEditableLabel)(W))return W;if((0,I.isWithEditableLabel)(W)&&W.editableLabel)return W.editableLabel}return Ws.getEditableLabel=$,Ws}var jb={},lg={},Ab={},tbt;function CA(){if(tbt)return Ab;tbt=1;var f=Ab&&Ab.__decorate||function(C,T,M,_){var I=arguments.length,O=I<3?T:_===null?_=Object.getOwnPropertyDescriptor(T,M):_,j;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")O=Reflect.decorate(C,T,M,_);else for(var k=C.length-1;k>=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O},h=Ab&&Ab.__metadata||function(C,T){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(C,T)};Object.defineProperty(Ab,"__esModule",{value:!0}),Ab.ComputedBoundsApplicator=Ab.ModelSource=void 0;const b=Zt(),w=jc(),m=LM(),P=Qn();let g=class{initialize(T){T.register(w.RequestModelAction.KIND,this),T.register(w.ExportSvgAction.KIND,this)}};Ab.ModelSource=g,f([(0,b.inject)(P.TYPES.IActionDispatcher),h("design:type",Object)],g.prototype,"actionDispatcher",void 0),f([(0,b.inject)(P.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"viewerOptions",void 0),Ab.ModelSource=g=f([(0,b.injectable)()],g);let E=class{apply(T,M){const _=new m.SModelIndex;_.add(T);for(const I of M.bounds){const O=_.getById(I.elementId);O!==void 0&&this.applyBounds(O,I.newPosition,I.newSize)}if(M.alignments!==void 0)for(const I of M.alignments){const O=_.getById(I.elementId);O!==void 0&&this.applyAlignment(O,I.newAlignment)}return _}applyAlignment(T,M){const _=T;_.alignment={x:M.x,y:M.y}}applyBounds(T,M,_){const I=T;M&&(I.position=Object.assign({},M)),I.size=Object.assign({},_)}};return Ab.ComputedBoundsApplicator=E,Ab.ComputedBoundsApplicator=E=f([(0,b.injectable)()],E),Ab}var nbt;function mJ(){if(nbt)return lg;nbt=1;var f=lg&&lg.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=lg&&lg.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=lg&&lg.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(lg,"__esModule",{value:!0}),lg.CommitModelCommand=lg.CommitModelAction=void 0;const w=Zt(),m=Ca(),P=Qn(),g=CA();var E;(function(T){T.KIND="commitModel";function M(){return{kind:T.KIND}}T.create=M})(E||(lg.CommitModelAction=E={}));let C=class extends m.SystemCommand{constructor(M){super(),this.action=M}execute(M){return this.newModel=M.modelFactory.createSchema(M.root),this.doCommit(this.newModel,M.root,!0)}doCommit(M,_,I){const O=this.modelSource.commitModel(M);return O instanceof Promise?O.then(j=>(I&&(this.originalModel=j),_)):(I&&(this.originalModel=O),_)}undo(M){return this.doCommit(this.originalModel,M.root,!1)}redo(M){return this.doCommit(this.newModel,M.root,!1)}};return lg.CommitModelCommand=C,C.KIND=E.KIND,f([(0,w.inject)(P.TYPES.ModelSource),h("design:type",g.ModelSource)],C.prototype,"modelSource",void 0),lg.CommitModelCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(P.TYPES.Action)),h("design:paramtypes",[Object])],C),lg}var gm={},ibt;function Wye(){if(ibt)return gm;ibt=1;var f=gm&&gm.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=gm&&gm.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(gm,"__esModule",{value:!0}),gm.ZoomMouseListener=gm.getZoom=void 0;const b=Zt(),w=jc(),m=Ac(),P=Qh(),g=Qn(),E=Pp(),C=My(),T=V3(),M=PS();function _(O){let j=1;const k=(0,P.findParentByFeature)(O,T.isViewport);return k&&(j=k.zoom),j}gm.getZoom=_;class I extends E.MouseListener{wheel(j,k){const x=(0,P.findParentByFeature)(j,T.isViewport);if(!x)return[];const R=this.isScrollMode(k)?this.processScroll(x,k):this.processZoom(x,j,k);return R?[w.SetViewportAction.create(x.id,R,{animate:!1})]:[]}isScrollMode(j){return j.altKey}processScroll(j,k){return{scroll:{x:j.scroll.x+k.deltaX,y:j.scroll.y+k.deltaY},zoom:j.zoom}}processZoom(j,k,x){const R=this.getZoomFactor(x);if(R>1&&(0,m.almostEquals)(j.zoom,this.viewerOptions.zoomLimits.max)||R<1&&(0,m.almostEquals)(j.zoom,this.viewerOptions.zoomLimits.min))return;const H=(0,M.limit)(j.zoom*R,this.viewerOptions.zoomLimits),F=this.getViewportOffset(k.root,x),$=1/H-1/j.zoom;return{scroll:{x:j.scroll.x-$*F.x,y:j.scroll.y-$*F.y},zoom:H}}getViewportOffset(j,k){const x=j.canvasBounds,R=(0,C.getWindowScroll)();return{x:k.clientX+R.x-x.x,y:k.clientY+R.y-x.y}}getZoomFactor(j){return j.deltaMode===j.DOM_DELTA_PAGE?Math.exp(-j.deltaY*.5):j.deltaMode===j.DOM_DELTA_LINE?Math.exp(-j.deltaY*.05):Math.exp(-j.deltaY*.005)}}return gm.ZoomMouseListener=I,f([(0,b.inject)(g.TYPES.ViewerOptions),h("design:type",Object)],I.prototype,"viewerOptions",void 0),gm}var rbt;function bwt(){if(rbt)return jb;rbt=1;var f=jb&&jb.__decorate||function($,W,re,ae){var ce=arguments.length,J=ce<3?W:ae===null?ae=Object.getOwnPropertyDescriptor(W,re):ae,te;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")J=Reflect.decorate($,W,re,ae);else for(var fe=$.length-1;fe>=0;fe--)(te=$[fe])&&(J=(ce<3?te(J):ce>3?te(W,re,J):te(W,re))||J);return ce>3&&J&&Object.defineProperty(W,re,J),J},h=jb&&jb.__metadata||function($,W){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata($,W)},b;Object.defineProperty(jb,"__esModule",{value:!0}),jb.EditLabelUI=jb.EditLabelActionHandler=void 0;const w=Zt(),m=jc(),P=Qn(),g=Lye(),E=hJ(),C=tN(),T=mJ(),M=z3(),_=Xs(),I=Wye(),O=Uye(),j=sN();let k=class{handle(W){if((0,O.isEditLabelAction)(W))return E.SetUIExtensionVisibilityAction.create({extensionId:x.ID,visible:!0,contextElementsId:[W.labelId]})}};jb.EditLabelActionHandler=k,jb.EditLabelActionHandler=k=f([(0,w.injectable)()],k);let x=b=class extends g.AbstractUIExtension{constructor(){super(...arguments),this.validationTimeout=void 0,this.isActive=!1,this.blockApplyEditOnInvalidInput=!0,this.isCurrentLabelValid=!0}id(){return b.ID}containerClass(){return"label-edit"}get labelId(){return this.label?this.label.id:"unknown"}initializeContents(W){W.style.position="absolute",this.inputElement=document.createElement("input"),this.textAreaElement=document.createElement("textarea"),[this.inputElement,this.textAreaElement].forEach(re=>{re.onkeydown=ae=>this.applyLabelEditOnEvent(ae,"Enter"),this.configureAndAdd(re,W)})}configureAndAdd(W,re){W.style.visibility="hidden",W.style.position="absolute",W.style.top="0px",W.style.left="0px",W.addEventListener("keydown",ae=>this.hideIfEscapeEvent(ae)),W.addEventListener("keyup",ae=>this.validateLabelIfContentChange(ae,W.value)),W.addEventListener("blur",()=>window.setTimeout(()=>this.applyLabelEdit(),200)),re.appendChild(W)}get editControl(){return this.label&&this.label.isMultiLine?this.textAreaElement:this.inputElement}hideIfEscapeEvent(W){(0,M.matchesKeystroke)(W,"Escape")&&this.hide()}applyLabelEditOnEvent(W,re,...ae){(0,M.matchesKeystroke)(W,re||"Enter",...ae)&&(W.preventDefault(),this.applyLabelEdit())}validateLabelIfContentChange(W,re){(this.previousLabelContent===void 0||this.previousLabelContent!==re)&&(this.previousLabelContent=re,this.performLabelValidation(W,this.editControl.value))}async applyLabelEdit(){var W;if(this.isActive){if(((W=this.label)===null||W===void 0?void 0:W.text)===this.editControl.value){this.hide();return}if(this.blockApplyEditOnInvalidInput&&(await this.validateLabel(this.editControl.value)).severity==="error"){this.editControl.focus();return}this.actionDispatcherProvider().then(re=>re.dispatchAll([m.ApplyLabelEditAction.create(this.labelId,this.editControl.value),T.CommitModelAction.create()])).catch(re=>this.logger.error(this,"No action dispatcher available to execute apply label edit action",re)),this.hide()}}performLabelValidation(W,re){this.validationTimeout&&window.clearTimeout(this.validationTimeout),this.validationTimeout=window.setTimeout(()=>this.validateLabel(re),200)}async validateLabel(W){if(this.labelValidator&&this.label)try{const re=await this.labelValidator.validate(W,this.label);return this.isCurrentLabelValid=re.severity!=="error",this.showValidationResult(re),re}catch(re){this.logger.error(this,"Error validating edited label",re)}return this.isCurrentLabelValid=!0,{severity:"ok",message:void 0}}showValidationResult(W){this.clearValidationResult(),this.validationDecorator&&this.validationDecorator.decorate(this.editControl,W)}clearValidationResult(){this.validationDecorator&&this.validationDecorator.dispose(this.editControl)}show(W,...re){!R(re,W)||this.isActive||(super.show(W,...re),this.isActive=!0)}hide(){this.editControl.style.visibility="hidden",super.hide(),this.clearValidationResult(),this.isActive=!1,this.isCurrentLabelValid=!0,this.previousLabelContent=void 0,this.labelElement&&(this.labelElement.style.visibility="visible")}onBeforeShow(W,re,...ae){this.label=H(ae,re)[0],this.previousLabelContent=this.label.text,this.setPosition(W),this.applyTextContents(),this.applyFontStyling(),this.editControl.style.visibility="visible",this.editControl.focus()}setPosition(W){let re=0,ae=0,ce=100,J=20;if(this.label){const te=(0,I.getZoom)(this.label),fe=(0,_.getAbsoluteClientBounds)(this.label,this.domHelper,this.viewerOptions);re=fe.x+(this.label.editControlPositionCorrection?this.label.editControlPositionCorrection.x:0)*te,ae=fe.y+(this.label.editControlPositionCorrection?this.label.editControlPositionCorrection.y:0)*te,J=(this.label.editControlDimension?this.label.editControlDimension.height:J)*te,ce=(this.label.editControlDimension?this.label.editControlDimension.width:ce)*te}W.style.left=`${re}px`,W.style.top=`${ae}px`,W.style.width=`${ce}px`,this.editControl.style.width=`${ce}px`,W.style.height=`${J}px`,this.editControl.style.height=`${J}px`}applyTextContents(){this.label&&(this.editControl.value=this.label.text,this.editControl instanceof HTMLTextAreaElement?(this.editControl.selectionStart=0,this.editControl.selectionEnd=0,this.editControl.scrollTop=0,this.editControl.scrollLeft=0):this.editControl.setSelectionRange(0,this.editControl.value.length))}applyFontStyling(){if(this.label&&(this.labelElement=document.getElementById(this.domHelper.createUniqueDOMElementId(this.label)),this.labelElement)){this.labelElement.style.visibility="hidden";const W=window.getComputedStyle(this.labelElement);this.editControl.style.font=W.font,this.editControl.style.fontStyle=W.fontStyle,this.editControl.style.fontFamily=W.fontFamily,this.editControl.style.fontSize=F(W.fontSize,(0,I.getZoom)(this.label)),this.editControl.style.fontWeight=W.fontWeight,this.editControl.style.lineHeight=W.lineHeight}}};jb.EditLabelUI=x,x.ID="editLabelUi",f([(0,w.inject)(P.TYPES.IActionDispatcherProvider),h("design:type",Function)],x.prototype,"actionDispatcherProvider",void 0),f([(0,w.inject)(P.TYPES.ViewerOptions),h("design:type",Object)],x.prototype,"viewerOptions",void 0),f([(0,w.inject)(P.TYPES.DOMHelper),h("design:type",C.DOMHelper)],x.prototype,"domHelper",void 0),f([(0,w.inject)(P.TYPES.IEditLabelValidator),(0,w.optional)(),h("design:type",Object)],x.prototype,"labelValidator",void 0),f([(0,w.inject)(P.TYPES.IEditLabelValidationDecorator),(0,w.optional)(),h("design:type",Object)],x.prototype,"validationDecorator",void 0),jb.EditLabelUI=x=b=f([(0,w.injectable)()],x);function R($,W){return H($,W).length===1}function H($,W){return $.map(re=>W.index.getById(re)).filter(j.isEditableLabel)}function F($,W){return $.replace(/\d+(\.\d+)?/,re=>String(Number.parseInt(re,10)*W))}return jb}var fg={},obt;function vJ(){if(obt)return fg;obt=1;var f=fg&&fg.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h=fg&&fg.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)},b=fg&&fg.__param||function(I,O){return function(j,k){O(j,k,I)}};Object.defineProperty(fg,"__esModule",{value:!0}),fg.SwitchEditModeCommand=fg.SwitchEditModeAction=void 0;const w=Zt(),m=Ca(),P=Oc(),g=Qn(),E=Ma(),C=Iy(),T=sN();var M;(function(I){I.KIND="switchEditMode";function O(j){var k,x;return{kind:I.KIND,elementsToActivate:(k=j.elementsToActivate)!==null&&k!==void 0?k:[],elementsToDeactivate:(x=j.elementsToDeactivate)!==null&&x!==void 0?x:[]}}I.create=O})(M||(fg.SwitchEditModeAction=M={}));let _=class extends m.Command{constructor(O){super(),this.action=O,this.elementsToActivate=[],this.elementsToDeactivate=[],this.handlesToRemove=[]}execute(O){const j=O.root.index;return this.action.elementsToActivate.forEach(k=>{const x=j.getById(k);x!==void 0&&this.elementsToActivate.push(x)}),this.action.elementsToDeactivate.forEach(k=>{const x=j.getById(k);if(x!==void 0&&this.elementsToDeactivate.push(x),x instanceof E.SRoutingHandleImpl&&x.parent instanceof E.SRoutableElementImpl){const R=x.parent;this.shouldRemoveHandle(x,R)&&(this.handlesToRemove.push({handle:x,parent:R}),this.elementsToDeactivate.push(R),this.elementsToActivate.push(R))}}),this.doExecute(O)}doExecute(O){return this.handlesToRemove.forEach(j=>{j.point=j.parent.routingPoints.splice(j.handle.pointIndex,1)[0]}),this.elementsToDeactivate.forEach(j=>{j instanceof E.SRoutableElementImpl?j.removeAll(k=>k instanceof E.SRoutingHandleImpl):j instanceof E.SRoutingHandleImpl&&(j.editMode=!1,j.danglingAnchor&&j.parent instanceof E.SRoutableElementImpl&&j.danglingAnchor.original&&(j.parent.source===j.danglingAnchor?j.parent.sourceId=j.danglingAnchor.original.id:j.parent.target===j.danglingAnchor&&(j.parent.targetId=j.danglingAnchor.original.id),j.danglingAnchor.parent.remove(j.danglingAnchor),j.danglingAnchor=void 0))}),this.elementsToActivate.forEach(j=>{(0,T.canEditRouting)(j)&&j instanceof P.SParentElementImpl?this.edgeRouterRegistry.get(j.routerKind).createRoutingHandles(j):j instanceof E.SRoutingHandleImpl&&(j.editMode=!0)}),O.root}shouldRemoveHandle(O,j){return O.kind==="junction"?this.edgeRouterRegistry.route(j).find(x=>x.pointIndex===O.pointIndex)===void 0:!1}undo(O){return this.handlesToRemove.forEach(j=>{j.point!==void 0&&j.parent.routingPoints.splice(j.handle.pointIndex,0,j.point)}),this.elementsToActivate.forEach(j=>{j instanceof E.SRoutableElementImpl?j.removeAll(k=>k instanceof E.SRoutingHandleImpl):j instanceof E.SRoutingHandleImpl&&(j.editMode=!1)}),this.elementsToDeactivate.forEach(j=>{(0,T.canEditRouting)(j)?this.edgeRouterRegistry.get(j.routerKind).createRoutingHandles(j):j instanceof E.SRoutingHandleImpl&&(j.editMode=!0)}),O.root}redo(O){return this.doExecute(O)}};return fg.SwitchEditModeCommand=_,_.KIND=M.KIND,f([(0,w.inject)(C.EdgeRouterRegistry),h("design:type",C.EdgeRouterRegistry)],_.prototype,"edgeRouterRegistry",void 0),fg.SwitchEditModeCommand=_=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],_),fg}var mp={},cbt;function Yye(){if(cbt)return mp;cbt=1;var f=mp&&mp.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=mp&&mp.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=mp&&mp.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(mp,"__esModule",{value:!0}),mp.ReconnectCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=Ma(),C=Iy();let T=class extends P.Command{constructor(_){super(),this.action=_}execute(_){return this.doExecute(_),_.root}doExecute(_){const O=_.root.index.getById(this.action.routableId);if(O instanceof E.SRoutableElementImpl){const j=this.edgeRouterRegistry.get(O.routerKind),k=j.takeSnapshot(O);j.applyReconnect(O,this.action.newSourceId,this.action.newTargetId);const x=j.takeSnapshot(O);this.memento={edge:O,before:k,after:x}}}undo(_){return this.memento&&this.edgeRouterRegistry.get(this.memento.edge.routerKind).applySnapshot(this.memento.edge,this.memento.before),_.root}redo(_){return this.memento&&this.edgeRouterRegistry.get(this.memento.edge.routerKind).applySnapshot(this.memento.edge,this.memento.after),_.root}};return mp.ReconnectCommand=T,T.KIND=m.ReconnectAction.KIND,f([(0,w.inject)(C.EdgeRouterRegistry),h("design:type",C.EdgeRouterRegistry)],T.prototype,"edgeRouterRegistry",void 0),mp.ReconnectCommand=T=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],T),mp}var sbt;function pwt(){if(sbt)return _3;sbt=1,Object.defineProperty(_3,"__esModule",{value:!0}),_3.labelEditUiModule=_3.labelEditModule=_3.edgeEditModule=void 0;const f=Zt(),h=Qn(),b=kb(),w=lJ(),m=iN(),P=Ma(),g=gwt(),E=oN(),C=Uye(),T=bwt(),M=vJ(),_=Yye();return _3.edgeEditModule=new f.ContainerModule((I,O,j)=>{const k={bind:I,isBound:j};(0,b.configureCommand)(k,M.SwitchEditModeCommand),(0,b.configureCommand)(k,_.ReconnectCommand),(0,b.configureCommand)(k,E.DeleteElementCommand),(0,m.configureModelElement)(k,"dangling-anchor",P.SDanglingAnchorImpl,g.EmptyGroupView)}),_3.labelEditModule=new f.ContainerModule((I,O,j)=>{I(C.EditLabelMouseListener).toSelf().inSingletonScope(),I(h.TYPES.MouseListener).toService(C.EditLabelMouseListener),I(C.EditLabelKeyListener).toSelf().inSingletonScope(),I(h.TYPES.KeyListener).toService(C.EditLabelKeyListener),(0,b.configureCommand)({bind:I,isBound:j},C.ApplyLabelEditCommand)}),_3.labelEditUiModule=new f.ContainerModule((I,O,j)=>{const k={bind:I,isBound:j};(0,w.configureActionHandler)(k,C.EditLabelAction.KIND,T.EditLabelActionHandler),I(T.EditLabelUI).toSelf().inSingletonScope(),I(h.TYPES.IUIExtension).toService(T.EditLabelUI)}),_3}var X4={},wve={},ubt;function Xye(){return ubt||(ubt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isExpandable=f.expandFeature=void 0,f.expandFeature=Symbol("expandFeature");function h(b){return b.hasFeature(f.expandFeature)&&"expanded"in b}f.isExpandable=h})(wve)),wve}var abt;function wwt(){if(abt)return X4;abt=1;var f=X4&&X4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(X4,"__esModule",{value:!0}),X4.ExpandButtonHandler=void 0;const h=Zt(),b=jc(),w=Qh(),m=Xye();let P=class{buttonPressed(E){const C=(0,w.findParentByFeature)(E,m.isExpandable);return C!==void 0?[b.CollapseExpandAction.create({expandIds:C.expanded?[]:[C.id],collapseIds:C.expanded?[C.id]:[]})]:[]}};return X4.ExpandButtonHandler=P,P.TYPE="button:expand",X4.ExpandButtonHandler=P=f([(0,h.injectable)()],P),X4}var J4={},lbt;function pUt(){if(lbt)return J4;lbt=1;var f=J4&&J4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(J4,"__esModule",{value:!0}),J4.ExpandButtonView=void 0;const h=Cy(),b=Xye(),w=Qh(),m=Zt();let P=class{render(E,C){const T=(0,w.findParentByFeature)(E,b.isExpandable),M=T!==void 0&&T.expanded?"M 1,5 L 8,12 L 15,5 Z":"M 1,8 L 8,15 L 8,1 Z";return(0,h.svg)("g",{"class-sprotty-button":"{true}","class-enabled":"{button.enabled}"},(0,h.svg)("rect",{x:0,y:0,width:16,height:16,opacity:0}),(0,h.svg)("path",{d:M}))}};return J4.ExpandButtonView=P,J4.ExpandButtonView=P=f([(0,m.injectable)()],P),J4}var _l={},vp={},fbt;function Jye(){if(fbt)return vp;fbt=1;var f=vp&&vp.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=vp&&vp.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)};Object.defineProperty(vp,"__esModule",{value:!0}),vp.SvgExporter=vp.ExportSvgAction=void 0;const b=Zt(),w=Ac(),m=Rye(),P=Qn(),g=Xs();var E;(function(T){T.KIND="exportSvg";function M(_,I,O){return{kind:T.KIND,svg:_,responseId:I,options:O}}T.create=M})(E||(vp.ExportSvgAction=E={}));let C=class{constructor(){this.postprocessors=[]}export(M,_){var I;if(typeof document<"u"){const O=document.getElementById(this.options.hiddenDiv);if(O===null){this.log.warn(this,`Element with id ${this.options.hiddenDiv} not found. Nothing to export.`);return}const j=O.querySelector("svg");if(j===null){this.log.warn(this,`No svg element found in ${this.options.hiddenDiv} div. Nothing to export.`);return}const k=this.createSvg(j,M,(I=_?.options)!==null&&I!==void 0?I:{},_);this.actionDispatcher.dispatch(E.create(k,_?_.requestId:"",_?.options))}}createSvg(M,_,I,O){const j=new XMLSerializer,k=j.serializeToString(M),x=document.createElement("iframe");if(document.body.appendChild(x),!x.contentWindow)throw new Error("IFrame has no contentWindow");const R=x.contentWindow.document;R.open(),R.write(k),R.close();const H=R.querySelector("svg");H.removeAttribute("opacity"),I?.skipCopyStyles||this.copyStyles(M,H,["width","height","opacity","inline-size"]),H.setAttribute("version","1.1");const F=this.getBounds(_,R);H.setAttribute("viewBox",`${F.x} ${F.y} ${F.width} ${F.height}`),H.setAttribute("width",`${F.width}`),H.setAttribute("height",`${F.height}`),this.postprocessors.forEach(W=>{W.postUpdate(H,O)});const $=j.serializeToString(H);return document.body.removeChild(x),$}copyStyles(M,_,I){const O=getComputedStyle(M),j=getComputedStyle(_);let k="";for(let x=0;x{(0,g.isBoundsAware)(j)&&O.push(j.bounds)}),O.reduce((j,k)=>w.Bounds.combine(j,k))}};return vp.SvgExporter=C,f([(0,b.inject)(P.TYPES.ViewerOptions),h("design:type",Object)],C.prototype,"options",void 0),f([(0,b.inject)(P.TYPES.IActionDispatcher),h("design:type",m.ActionDispatcher)],C.prototype,"actionDispatcher",void 0),f([(0,b.inject)(P.TYPES.ILogger),h("design:type",Object)],C.prototype,"log",void 0),f([(0,b.multiInject)(P.TYPES.ISvgExportPostprocessor),(0,b.optional)(),h("design:type",Array)],C.prototype,"postprocessors",void 0),vp.SvgExporter=C=f([(0,b.injectable)()],C),vp}var hbt;function mwt(){if(hbt)return _l;hbt=1;var f=_l&&_l.__decorate||function(F,$,W,re){var ae=arguments.length,ce=ae<3?$:re===null?re=Object.getOwnPropertyDescriptor($,W):re,J;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(F,$,W,re);else for(var te=F.length-1;te>=0;te--)(J=F[te])&&(ce=(ae<3?J(ce):ae>3?J($,W,ce):J($,W))||ce);return ae>3&&ce&&Object.defineProperty($,W,ce),ce},h=_l&&_l.__metadata||function(F,$){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(F,$)},b=_l&&_l.__param||function(F,$){return function(W,re){$(W,re,F)}};Object.defineProperty(_l,"__esModule",{value:!0}),_l.ExportSvgPostprocessor=_l.ExportSvgCommand=_l.RequestExportSvgAction=_l.ExportSvgKeyListener=void 0;const w=Zt(),m=jc(),P=Ca(),g=Rb(),E=Oc(),C=H3(),T=z3(),M=Vye(),_=Jye(),I=V3(),O=PA(),j=Qn();let k=class extends C.KeyListener{keyDown($,W){return(0,T.matchesKeystroke)(W,"KeyE","ctrlCmd","shift")?[x.create()]:[]}};_l.ExportSvgKeyListener=k,_l.ExportSvgKeyListener=k=f([(0,w.injectable)()],k);var x;(function(F){F.KIND="requestExportSvg";function $(W={}){return{kind:F.KIND,requestId:(0,m.generateRequestId)(),options:W}}F.create=$})(x||(_l.RequestExportSvgAction=x={}));let R=class extends P.HiddenCommand{constructor($){super(),this.action=$}execute($){if((0,M.isExportable)($.root)){const W=$.modelFactory.createRoot($.root);if((0,M.isExportable)(W))return(0,I.isViewport)(W)&&(W.zoom=1,W.scroll={x:0,y:0}),W.index.all().forEach(re=>{(0,g.isSelectable)(re)&&re.selected&&(re.selected=!1),(0,O.isHoverable)(re)&&re.hoverFeedback&&(re.hoverFeedback=!1)}),{model:W,modelChanged:!0,cause:this.action}}return{model:$.root,modelChanged:!1}}};_l.ExportSvgCommand=R,R.KIND=x.KIND,_l.ExportSvgCommand=R=f([b(0,(0,w.inject)(j.TYPES.Action)),h("design:paramtypes",[Object])],R);let H=class{decorate($,W){return W instanceof E.SModelRootImpl&&(this.root=W),$}postUpdate($){this.root&&$!==void 0&&$.kind===x.KIND&&this.svgExporter.export(this.root,$)}};return _l.ExportSvgPostprocessor=H,f([(0,w.inject)(j.TYPES.SvgExporter),h("design:type",_.SvgExporter)],H.prototype,"svgExporter",void 0),_l.ExportSvgPostprocessor=H=f([(0,w.injectable)()],H),_l}var mve={},dbt;function wUt(){return dbt||(dbt=1,Object.defineProperty(mve,"__esModule",{value:!0})),mve}var dy={},gbt;function Qye(){if(gbt)return dy;gbt=1;var f=dy&&dy.__decorate||function(C,T,M,_){var I=arguments.length,O=I<3?T:_===null?_=Object.getOwnPropertyDescriptor(T,M):_,j;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")O=Reflect.decorate(C,T,M,_);else for(var k=C.length-1;k>=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O};Object.defineProperty(dy,"__esModule",{value:!0}),dy.ElementFader=dy.FadeAnimation=void 0;const h=Zt(),b=SA(),w=Oc(),m=mh(),P=rN();class g extends b.Animation{constructor(T,M,_,I=!1){super(_),this.model=T,this.elementFades=M,this.removeAfterFadeOut=I}tween(T,M){for(const _ of this.elementFades){const I=_.element;_.type==="in"?I.opacity=T:_.type==="out"&&(I.opacity=1-T,T===1&&this.removeAfterFadeOut&&I instanceof w.SChildElementImpl&&I.parent.remove(I))}return this.model}}dy.FadeAnimation=g;let E=class{decorate(T,M){return(0,P.isFadeable)(M)&&M.opacity!==1&&(0,m.setAttr)(T,"opacity",M.opacity),T}postUpdate(){}};return dy.ElementFader=E,dy.ElementFader=E=f([(0,h.injectable)()],E),dy}var Ms={},bbt;function vwt(){if(bbt)return Ms;bbt=1;var f=Ms&&Ms.__decorate||function(ae,ce,J,te){var fe=arguments.length,ve=fe<3?ce:te===null?te=Object.getOwnPropertyDescriptor(ce,J):te,me;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ve=Reflect.decorate(ae,ce,J,te);else for(var ke=ae.length-1;ke>=0;ke--)(me=ae[ke])&&(ve=(fe<3?me(ve):fe>3?me(ce,J,ve):me(ce,J))||ve);return fe>3&&ve&&Object.defineProperty(ce,J,ve),ve},h=Ms&&Ms.__metadata||function(ae,ce){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ae,ce)},b=Ms&&Ms.__param||function(ae,ce){return function(J,te){ce(J,te,ae)}};Object.defineProperty(Ms,"__esModule",{value:!0}),Ms.ClosePopupActionHandler=Ms.HoverKeyListener=Ms.PopupHoverMouseListener=Ms.HoverMouseListener=Ms.AbstractHoverMouseListener=Ms.SetPopupModelCommand=Ms.HoverFeedbackCommand=void 0;const w=Zt(),m=jc(),P=Ac(),g=z3(),E=Qn(),C=Oc(),T=Pp(),M=Ca(),_=ES(),I=H3(),O=Qh(),j=Xs(),k=PA();let x=class extends M.SystemCommand{constructor(ce){super(),this.action=ce}execute(ce){const te=ce.root.index.getById(this.action.mouseoverElement);return te&&(0,k.isHoverable)(te)&&(te.hoverFeedback=this.action.mouseIsOver),this.redo(ce)}undo(ce){return ce.root}redo(ce){return ce.root}};Ms.HoverFeedbackCommand=x,x.KIND=m.HoverFeedbackAction.KIND,Ms.HoverFeedbackCommand=x=f([(0,w.injectable)(),b(0,(0,w.inject)(E.TYPES.Action)),h("design:paramtypes",[Object])],x);let R=class extends M.PopupCommand{constructor(ce){super(),this.action=ce}execute(ce){return this.oldRoot=ce.root,this.newRoot=ce.modelFactory.createRoot(this.action.newRoot),this.newRoot}undo(ce){return this.oldRoot}redo(ce){return this.newRoot}};Ms.SetPopupModelCommand=R,R.KIND=m.SetPopupModelAction.KIND,Ms.SetPopupModelCommand=R=f([(0,w.injectable)(),b(0,(0,w.inject)(E.TYPES.Action)),h("design:paramtypes",[Object])],R);class H extends T.MouseListener{mouseDown(ce,J){return this.mouseIsDown=!0,[]}mouseUp(ce,J){return this.mouseIsDown=!1,[]}stopMouseOutTimer(){this.state.mouseOutTimer!==void 0&&(window.clearTimeout(this.state.mouseOutTimer),this.state.mouseOutTimer=void 0)}startMouseOutTimer(){return this.stopMouseOutTimer(),new Promise(ce=>{this.state.mouseOutTimer=window.setTimeout(()=>{this.state.popupOpen=!1,this.state.previousPopupElement=void 0,ce(m.SetPopupModelAction.create({type:_.EMPTY_ROOT.type,id:_.EMPTY_ROOT.id}))},this.options.popupCloseDelay)})}stopMouseOverTimer(){this.state.mouseOverTimer!==void 0&&(window.clearTimeout(this.state.mouseOverTimer),this.state.mouseOverTimer=void 0)}}Ms.AbstractHoverMouseListener=H,f([(0,w.inject)(E.TYPES.ViewerOptions),h("design:type",Object)],H.prototype,"options",void 0),f([(0,w.inject)(E.TYPES.HoverState),h("design:type",Object)],H.prototype,"state",void 0);let F=class extends H{computePopupBounds(ce,J){let te={x:-5,y:20};const fe=(0,j.getAbsoluteBounds)(ce),ve=ce.root.canvasBounds,me=P.Bounds.translate(fe,ve),ke=me.x+me.width-J.x,tt=me.y+me.height-J.y;tt<=ke&&this.allowSidePosition(ce,"below",tt)?te={x:-5,y:Math.round(tt+5)}:ke<=tt&&this.allowSidePosition(ce,"right",ke)&&(te={x:Math.round(ke+5),y:-5});let De=J.x+te.x;const ct=ve.x+ve.width;De>ct&&(De=ct);let Z=J.y+te.y;const Nt=ve.y+ve.height;return Z>Nt&&(Z=Nt),{x:De,y:Z,width:-1,height:-1}}allowSidePosition(ce,J,te){return!(ce instanceof C.SModelRootImpl)&&te<=150}startMouseOverTimer(ce,J){return this.stopMouseOverTimer(),new Promise(te=>{this.state.mouseOverTimer=window.setTimeout(()=>{const fe=this.computePopupBounds(ce,{x:J.pageX,y:J.pageY});te(m.RequestPopupModelAction.create({elementId:ce.id,bounds:fe})),this.state.popupOpen=!0,this.state.previousPopupElement=ce},this.options.popupOpenDelay)})}mouseOver(ce,J){const te=[];if(!this.mouseIsDown){const fe=(0,O.findParent)(ce,k.hasPopupFeature);this.state.popupOpen&&(fe===void 0||this.state.previousPopupElement!==void 0&&this.state.previousPopupElement.id!==fe.id)?te.push(this.startMouseOutTimer()):(this.stopMouseOverTimer(),this.stopMouseOutTimer()),fe!==void 0&&(this.state.previousPopupElement===void 0||this.state.previousPopupElement.id!==fe.id)&&te.push(this.startMouseOverTimer(fe,J)),this.lastHoverFeedbackElementId&&(te.push(m.HoverFeedbackAction.create({mouseoverElement:this.lastHoverFeedbackElementId,mouseIsOver:!1})),this.lastHoverFeedbackElementId=void 0);const ve=(0,O.findParentByFeature)(ce,k.isHoverable);ve!==void 0&&(te.push(m.HoverFeedbackAction.create({mouseoverElement:ve.id,mouseIsOver:!0})),this.lastHoverFeedbackElementId=ve.id)}return te}mouseOut(ce,J){const te=[];if(!this.mouseIsDown){const fe=this.getElementFromEventPosition(J);if(!this.isSprottyPopup(fe)){if(this.state.popupOpen){const me=(0,O.findParent)(ce,k.hasPopupFeature);this.state.previousPopupElement!==void 0&&me!==void 0&&this.state.previousPopupElement.id===me.id&&te.push(this.startMouseOutTimer())}this.stopMouseOverTimer();const ve=(0,O.findParentByFeature)(ce,k.isHoverable);ve!==void 0&&(te.push(m.HoverFeedbackAction.create({mouseoverElement:ve.id,mouseIsOver:!1})),this.lastHoverFeedbackElementId&&this.lastHoverFeedbackElementId!==ve.id&&te.push(m.HoverFeedbackAction.create({mouseoverElement:this.lastHoverFeedbackElementId,mouseIsOver:!1})),this.lastHoverFeedbackElementId=void 0)}}return te}getElementFromEventPosition(ce){return document.elementFromPoint(ce.x,ce.y)}isSprottyPopup(ce){return ce?ce.id===this.options.popupDiv||!!ce.parentElement&&this.isSprottyPopup(ce.parentElement):!1}mouseMove(ce,J){const te=[];if(!this.mouseIsDown){this.state.previousPopupElement!==void 0&&this.closeOnMouseMove(this.state.previousPopupElement,J)&&te.push(this.startMouseOutTimer());const fe=(0,O.findParent)(ce,k.hasPopupFeature);fe!==void 0&&(this.state.previousPopupElement===void 0||this.state.previousPopupElement.id!==fe.id)&&te.push(this.startMouseOverTimer(fe,J))}return te}closeOnMouseMove(ce,J){return ce instanceof C.SModelRootImpl}};Ms.HoverMouseListener=F,f([(0,w.inject)(E.TYPES.ViewerOptions),h("design:type",Object)],F.prototype,"options",void 0),Ms.HoverMouseListener=F=f([(0,w.injectable)()],F);let $=class extends H{mouseOut(ce,J){return[this.startMouseOutTimer()]}mouseOver(ce,J){return this.stopMouseOutTimer(),this.stopMouseOverTimer(),[]}};Ms.PopupHoverMouseListener=$,Ms.PopupHoverMouseListener=$=f([(0,w.injectable)()],$);class W extends I.KeyListener{keyDown(ce,J){return(0,g.matchesKeystroke)(J,"Escape")?[m.SetPopupModelAction.create({type:_.EMPTY_ROOT.type,id:_.EMPTY_ROOT.id})]:[]}}Ms.HoverKeyListener=W;let re=class{constructor(){this.popupOpen=!1}handle(ce){if(ce.kind===R.KIND)this.popupOpen=ce.newRoot.type!==_.EMPTY_ROOT.type;else if(this.popupOpen)return m.SetPopupModelAction.create({id:_.EMPTY_ROOT.id,type:_.EMPTY_ROOT.type})}};return Ms.ClosePopupActionHandler=re,Ms.ClosePopupActionHandler=re=f([(0,w.injectable)()],re),Ms}var vve={},pbt;function Zye(){return pbt||(pbt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.SIssue=f.SIssueMarker=f.SIssueMarkerImpl=f.SDecoration=f.isDecoration=f.decorationFeature=void 0;const h=Xs(),b=PA();f.decorationFeature=Symbol("decorationFeature");function w(E){return E.hasFeature(f.decorationFeature)}f.isDecoration=w;class m extends h.SShapeElementImpl{}f.SDecoration=m,m.DEFAULT_FEATURES=[f.decorationFeature,h.boundsFeature,b.hoverFeedbackFeature,b.popupFeature];class P extends m{}f.SIssueMarkerImpl=P,f.SIssueMarker=P;class g{}f.SIssue=g})(vve)),vve}var Q4={},wbt;function ywt(){if(wbt)return Q4;wbt=1;var f=Q4&&Q4.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(Q4,"__esModule",{value:!0}),Q4.IssueMarkerView=void 0;const h=Cy(),b=mh(),w=Zt();let m=class{render(g,E){const C=.008928571428571428,T=`scale(${C}, ${C})`,M=this.getMaxSeverity(g),_=(0,h.svg)("g",{"class-sprotty-issue":!0},(0,h.svg)("g",{transform:T},(0,h.svg)("path",{d:this.getPath(M)})));return(0,b.setClass)(_,"sprotty-"+M,!0),_}getMaxSeverity(g){let E="info";for(const C of g.issues.map(T=>T.severity))(C==="error"||C==="warning"&&E==="info")&&(E=C);return E}getPath(g){switch(g){case"error":case"warning":return"M768 128q209 0 385.5 103t279.5 279.5 103 385.5-103 385.5-279.5 279.5-385.5 103-385.5-103-279.5-279.5-103-385.5 103-385.5 279.5-279.5 385.5-103zm128 1247v-190q0-14-9-23.5t-22-9.5h-192q-13 0-23 10t-10 23v190q0 13 10 23t23 10h192q13 0 22-9.5t9-23.5zm-2-344l18-621q0-12-10-18-10-8-24-8h-220q-14 0-24 8-10 6-10 18l17 621q0 10 10 17.5t24 7.5h185q14 0 23.5-7.5t10.5-17.5z";case"info":return"M1024 1376v-160q0-14-9-23t-23-9h-96v-512q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v160q0 14 9 23t23 9h96v320h-96q-14 0-23 9t-9 23v160q0 14 9 23t23 9h448q14 0 23-9t9-23zm-128-896v-160q0-14-9-23t-23-9h-192q-14 0-23 9t-9 23v160q0 14 9 23t23 9h192q14 0 23-9t9-23zm640 416q0 209-103 385.5t-279.5 279.5-385.5 103-385.5-103-279.5-279.5-103-385.5 103-385.5 279.5-279.5 385.5-103 385.5 103 279.5 279.5 103 385.5z"}}};return Q4.IssueMarkerView=m,Q4.IssueMarkerView=m=f([(0,w.injectable)()],m),Q4}var gy={},mbt;function _wt(){if(mbt)return gy;mbt=1;var f=gy&&gy.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=gy&&gy.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)};Object.defineProperty(gy,"__esModule",{value:!0}),gy.DecorationPlacer=void 0;const b=Zt(),w=Oc(),m=Zye(),P=mh(),g=Xs(),E=Ma(),C=Iy(),T=Sp();let M=class{decorate(I,O){if((0,m.isDecoration)(O)){const j=this.getPosition(O),k="translate("+j.x+", "+j.y+")";(0,P.setAttr)(I,"transform",k)}return I}getPosition(I){if(I instanceof w.SChildElementImpl&&I.parent instanceof E.SRoutableElementImpl){const O=this.edgeRouterRegistry.route(I.parent);if(O.length>1){const j=Math.floor(.5*(O.length-1)),k=(0,g.isSizeable)(I)?{x:-.5*I.bounds.width,y:-.5*I.bounds.width}:T.Point.ORIGIN;return{x:.5*(O[j].x+O[j+1].x)+k.x,y:.5*(O[j].y+O[j+1].y)+k.y}}}return(0,g.isSizeable)(I)?{x:-.666*I.bounds.width,y:-.666*I.bounds.height}:T.Point.ORIGIN}postUpdate(){}};return gy.DecorationPlacer=M,f([(0,b.inject)(C.EdgeRouterRegistry),h("design:type",C.EdgeRouterRegistry)],M.prototype,"edgeRouterRegistry",void 0),gy.DecorationPlacer=M=f([(0,b.injectable)()],M),gy}var El={};class mUt{constructor(h=[],b=vUt){if(this.data=h,this.length=this.data.length,this.compare=b,this.length>0)for(let w=(this.length>>1)-1;w>=0;w--)this._down(w)}push(h){this.data.push(h),this.length++,this._up(this.length-1)}pop(){if(this.length===0)return;const h=this.data[0],b=this.data.pop();return this.length--,this.length>0&&(this.data[0]=b,this._down(0)),h}peek(){return this.data[0]}_up(h){const{data:b,compare:w}=this,m=b[h];for(;h>0;){const P=h-1>>1,g=b[P];if(w(m,g)>=0)break;b[h]=g,h=P}b[h]=m}_down(h){const{data:b,compare:w}=this,m=this.length>>1,P=b[h];for(;h=0)break;b[h]=E,h=g}b[h]=P}}function vUt(f,h){return fh?1:0}const yUt=Object.freeze(Object.defineProperty({__proto__:null,default:mUt},Symbol.toStringTag,{value:"Module"})),Ewt=V0t(yUt);var Za={},vbt;function Swt(){if(vbt)return Za;vbt=1;var f=Za&&Za.__importDefault||function(_){return _&&_.__esModule?_:{default:_}};Object.defineProperty(Za,"__esModule",{value:!0}),Za.intersectionOfSegments=Za.getSegmentIndex=Za.checkWhichSegmentHasRightEndpointFirst=Za.runSweep=Za.Segment=Za.SweepEvent=Za.checkWhichEventIsLeft=Za.addRoute=void 0;const h=f(Ewt),b=PS();function w(_,I,O){if(I.length<1)return;let j=I[0],k;for(let x=0;x0?(H.isLeftEndpoint=!0,R.isLeftEndpoint=!1):(R.isLeftEndpoint=!0,H.isLeftEndpoint=!1),O.push(R),O.push(H),j=k}}Za.addRoute=w;function m(_,I){return _.point.x>I.point.x?1:_.point.xI.point.y?1:-1:1}Za.checkWhichEventIsLeft=m;class P{constructor(I,O,j){this.edgeId=I,this.point=O,this.segmentIndex=j}}Za.SweepEvent=P;class g{constructor(I){this.leftSweepEvent=I,this.rightSweepEvent=I.otherEvent}}Za.Segment=g;function E(_){const I=[],O=new h.default([],C);for(;_.length;){const j=_.pop();if(j?.isLeftEndpoint){const k=new g(j);for(let x=0;xI.rightSweepEvent.point.x?1:_.rightSweepEvent.point.x=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=El&&El.__importDefault||function(_){return _&&_.__esModule?_:{default:_}};Object.defineProperty(El,"__esModule",{value:!0}),El.IntersectionFinder=El.BY_DESCENDING_X_THEN_DESCENDING_Y=El.BY_X_THEN_DESCENDING_Y=El.BY_DESCENDING_X_THEN_Y=El.BY_X_THEN_Y=El.isIntersectingRoutedPoint=void 0;const b=Zt(),w=h(Ewt),m=Swt();function P(_){return _!==void 0&&"intersections"in _&&"kind"in _}El.isIntersectingRoutedPoint=P;const g=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?_.intersectionPoint.y-I.intersectionPoint.y:_.intersectionPoint.x-I.intersectionPoint.x;El.BY_X_THEN_Y=g;const E=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?_.intersectionPoint.y-I.intersectionPoint.y:I.intersectionPoint.x-_.intersectionPoint.x;El.BY_DESCENDING_X_THEN_Y=E;const C=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?I.intersectionPoint.y-_.intersectionPoint.y:_.intersectionPoint.x-I.intersectionPoint.x;El.BY_X_THEN_DESCENDING_Y=C;const T=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?I.intersectionPoint.y-_.intersectionPoint.y:I.intersectionPoint.x-_.intersectionPoint.x;El.BY_DESCENDING_X_THEN_DESCENDING_Y=T;let M=class{apply(I){const O=this.find(I);this.addToRouting(O,I)}find(I){const O=new w.default(void 0,m.checkWhichEventIsLeft);return I.routes.forEach((j,k)=>{this.isSupportedRoute(j)&&(0,m.addRoute)(k,j,O)}),(0,m.runSweep)(O)}isSupportedRoute(I){return I.find(O=>O.kind!=="source"&&O.kind!=="target"&&O.kind!=="linear")===void 0}addToRouting(I,O){for(const j of I){const k=O.get(j.routable1),x=O.get(j.routable2);this.addIntersectionToRoutedPoint(j,k,j.segmentIndex1),this.addIntersectionToRoutedPoint(j,x,j.segmentIndex2)}}addIntersectionToRoutedPoint(I,O,j){if(O&&O.length>j){const k=O[j+1];if(P(k))k.intersections.push(I);else{const x=Object.assign(Object.assign({},k),{intersections:[I]});O[j+1]=x}}}};return El.IntersectionFinder=M,El.IntersectionFinder=M=f([(0,b.injectable)()],M),El}var Z4={},_bt;function Pwt(){if(_bt)return Z4;_bt=1;var f=Z4&&Z4.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(Z4,"__esModule",{value:!0}),Z4.JunctionFinder=void 0;const h=Zt(),b=MA();let w=class{constructor(){this.edgesMap=new Map,this.sourcesMap=new Map,this.targetsMap=new Map}apply(P,g){this.findJunctions(P,g)}findJunctions(P,g){Array.from(g.index.all().filter(C=>C instanceof b.SEdgeImpl)).forEach(C=>{this.edgesMap.set(C.id,C);const T=this.sourcesMap.get(C.sourceId);T?T.add(C.id):this.sourcesMap.set(C.sourceId,new Set([C.id]));const M=this.targetsMap.get(C.targetId);M?M.add(C.id):this.targetsMap.set(C.targetId,new Set([C.id]))}),P.routes.forEach((C,T)=>{const M=this.edgesMap.get(T);M&&(this.findJunctionPointsWithSameSource(M,C,P),this.findJunctionPointsWithSameTarget(M,C,P))})}findJunctionPointsWithSameSource(P,g,E){const C=this.sourcesMap.get(P.sourceId);if(!C)return;const M=Array.from(C).filter(_=>_!==P.id).map(_=>E.get(_)).filter(_=>_!==void 0);for(const _ of M){const I=this.getJunctionIndex(g,_);I===-1||I===0||this.setJunctionPoints(g,_,I)}}findJunctionPointsWithSameTarget(P,g,E){const C=this.targetsMap.get(P.targetId);if(!C)return;const M=Array.from(C).filter(_=>_!==P.id).map(_=>E.get(_)).filter(_=>_!==void 0);g.reverse();for(const _ of M){_.reverse();const I=this.getJunctionIndex(g,_);I===-1||I===0||(this.setJunctionPoints(g,_,I),_.reverse())}g.reverse()}setJunctionPoints(P,g,E){const C=this.getSegmentDirection(P[E-1],P[E]),T=this.getSegmentDirection(g[E-1],g[E]);if(C!==T)this.setPreviousPointAsJunction(P,g,E);else if(C==="left"||C==="right"){if(P[E].y!==g[E].y){this.setPreviousPointAsJunction(P,g,E);return}P[E].isJunction=C==="left"?P[E].x>g[E].x:P[E].xP[E].x:g[E].xg[E].y:P[E].yP[E].y:g[E].y0?"right":"left":C>0?"down":"up"}getJunctionIndex(P,g){let E=0;for(;E=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=by&&by.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(by,"__esModule",{value:!0}),by.JunctionPostProcessor=void 0;const b=Zt(),w=Sp(),m=Qn(),P=CA();let g=class{constructor(){this.isFirstRender=!0}decorate(C,T){return C}postUpdate(C){this.currentModel!==this.modelSource.model&&(this.isFirstRender=!0),C?.kind===w.RequestBoundsAction.KIND&&this.isFirstRender&&(document.querySelectorAll(`#${this.viewerOptions.hiddenDiv} > svg > g > g.sprotty-junction`).forEach(O=>O.remove()),document.querySelectorAll(`#${this.viewerOptions.baseDiv} > svg > g > g.sprotty-junction`).forEach(O=>O.remove()));const T=document.querySelector(`#${this.viewerOptions.hiddenDiv} > svg > g`),M=document.querySelector(`#${this.viewerOptions.baseDiv} > svg > g`);if(T){const _=Array.from(document.querySelectorAll(`#${this.viewerOptions.hiddenDiv} > svg > g > g > g.sprotty-junction`));_.forEach(I=>{I.remove()}),T.append(..._)}if(M){const _=Array.from(document.querySelectorAll(`#${this.viewerOptions.baseDiv} > svg > g > g > g.sprotty-junction`));_.forEach(I=>{I.remove()}),M.append(..._)}this.currentModel=this.modelSource.model,this.isFirstRender=!1}};return by.JunctionPostProcessor=g,f([(0,b.inject)(m.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"viewerOptions",void 0),f([(0,b.inject)(m.TYPES.ModelSource),h("design:type",P.ModelSource)],g.prototype,"modelSource",void 0),by.JunctionPostProcessor=g=f([(0,b.injectable)()],g),by}var el={},Sbt;function yJ(){if(Sbt)return el;Sbt=1;var f=el&&el.__decorate||function(tt,De,ct,Z){var Nt=arguments.length,ii=Nt<3?De:Z===null?Z=Object.getOwnPropertyDescriptor(De,ct):Z,kr;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ii=Reflect.decorate(tt,De,ct,Z);else for(var jo=tt.length-1;jo>=0;jo--)(kr=tt[jo])&&(ii=(Nt<3?kr(ii):Nt>3?kr(De,ct,ii):kr(De,ct))||ii);return Nt>3&&ii&&Object.defineProperty(De,ct,ii),ii},h=el&&el.__metadata||function(tt,De){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(tt,De)},b=el&&el.__param||function(tt,De){return function(ct,Z){De(ct,Z,tt)}},w;Object.defineProperty(el,"__esModule",{value:!0}),el.LocationPostprocessor=el.MoveMouseListener=el.MorphEdgesAnimation=el.MoveAnimation=el.MoveCommand=void 0;const m=Zt(),P=Ac(),g=jc(),E=SA(),C=Ca(),T=Oc(),M=Qh(),_=Qn(),I=Pp(),O=mh(),j=MA(),k=mJ(),x=Xs(),R=dwt(),H=vJ(),F=Yye(),$=Ma(),W=Iy(),re=cN(),ae=Rb(),ce=V3(),J=SS();let te=w=class extends C.MergeableCommand{constructor(De){super(),this.action=De,this.resolvedMoves=new Map,this.edgeMementi=[],this.stoppableCommandKey=w.KIND}stopExecution(){this.animation&&(this.animation.stop(),this.animation=void 0)}execute(De){const ct=De.root.index,Z=new Map,Nt=new Map;return this.action.moves.forEach(ii=>{const kr=ct.getById(ii.elementId);if(kr instanceof $.SRoutingHandleImpl&&this.edgeRouterRegistry){const jo=kr.parent;if(jo instanceof $.SRoutableElementImpl){const Gn=this.resolveHandleMove(kr,jo,ii);if(Gn){let pc=Z.get(jo);pc||(pc=[],Z.set(jo,pc)),pc.push(Gn)}}}else if(kr&&(0,J.isLocateable)(kr)){const jo=this.resolveElementMove(kr,ii);if(jo&&(this.resolvedMoves.set(jo.element.id,jo),this.edgeRouterRegistry)){const Gn=ls=>{ct.getAttachedElements(ls).forEach(Lr=>{if(Lr instanceof $.SRoutableElementImpl&&!this.isChildOfMovedElements(Lr)){const gt=Nt.get(Lr),Xn=P.Point.subtract(jo.toPosition,jo.fromPosition),jn=gt?P.Point.linear(gt,Xn,.5):Xn;Nt.set(Lr,jn)}})},pc=ls=>{(0,T.isParent)(ls)&&ls.children.forEach(Lr=>{Lr instanceof T.SModelElementImpl&&(Lr instanceof $.SConnectableElementImpl&&Gn(Lr),pc(Lr))})};pc(kr),Gn(kr)}}}),this.doMove(Z,Nt),this.action.animate?(this.undoMove(),(this.animation=new E.CompoundAnimation(De.root,De,[new fe(De.root,this.resolvedMoves,De,!1),new ve(De.root,this.edgeMementi,De,!1)])).start()):De.root}resolveHandleMove(De,ct,Z){let Nt=Z.fromPosition;if(!Nt){const ii=this.edgeRouterRegistry.get(ct.routerKind);Nt=ii.getHandlePosition(ct,ii.route(ct),De)}if(Nt)return{handle:De,fromPosition:Nt,toPosition:Z.toPosition}}resolveElementMove(De,ct){const Z=ct.fromPosition||{x:De.position.x,y:De.position.y};return{element:De,fromPosition:Z,toPosition:ct.toPosition}}doMove(De,ct){this.resolvedMoves.forEach(Z=>{Z.element.position=Z.toPosition}),De.forEach((Z,Nt)=>{const ii=this.edgeRouterRegistry.get(Nt.routerKind),kr=ii.takeSnapshot(Nt);ii.applyHandleMoves(Nt,Z);const jo=ii.takeSnapshot(Nt);this.edgeMementi.push({edge:Nt,before:kr,after:jo})}),ct.forEach((Z,Nt)=>{if(!De.get(Nt)){const ii=this.edgeRouterRegistry.get(Nt.routerKind),kr=ii.takeSnapshot(Nt);if(this.isAttachedEdge(Nt))Nt.routingPoints=Nt.routingPoints.map(Gn=>P.Point.add(Gn,Z));else{const Gn=(0,ae.isSelectable)(Nt)&&Nt.selected;ii.cleanupRoutingPoints(Nt,Nt.routingPoints,Gn,this.action.finished)}const jo=ii.takeSnapshot(Nt);this.edgeMementi.push({edge:Nt,before:kr,after:jo})}})}isChildOfMovedElements(De){const ct=De.parent;return Array.from(this.resolvedMoves.values()).map(Z=>Z.element.id).includes(ct.id)?!0:ct instanceof T.SChildElementImpl?this.isChildOfMovedElements(ct):!1}isAttachedEdge(De){const ct=De.source,Z=De.target,Nt=ii=>!!this.resolvedMoves.get(ii.id)||this.isChildOfMovedElements(ii);return!!(ct&&Z&&Nt(ct)&&Nt(Z))}undoMove(){this.resolvedMoves.forEach(De=>{De.element.position=De.fromPosition}),this.edgeMementi.forEach(De=>{this.edgeRouterRegistry.get(De.edge.routerKind).applySnapshot(De.edge,De.before)})}undo(De){return new E.CompoundAnimation(De.root,De,[new fe(De.root,this.resolvedMoves,De,!0),new ve(De.root,this.edgeMementi,De,!0)]).start()}redo(De){return new E.CompoundAnimation(De.root,De,[new fe(De.root,this.resolvedMoves,De,!1),new ve(De.root,this.edgeMementi,De,!1)]).start()}merge(De,ct){if(!this.action.animate&&De instanceof w)return De.resolvedMoves.forEach((Z,Nt)=>{const ii=this.resolvedMoves.get(Nt);ii?ii.toPosition=Z.toPosition:this.resolvedMoves.set(Nt,Z)}),De.edgeMementi.forEach(Z=>{const Nt=this.edgeMementi.find(ii=>ii.edge.id===Z.edge.id);Nt?Nt.after=Z.after:this.edgeMementi.push(Z)}),!0;if(De instanceof F.ReconnectCommand){const Z=De.memento;if(Z){const Nt=this.edgeMementi.find(ii=>ii.edge.id===Z.edge.id);Nt?Nt.after=Z.after:this.edgeMementi.push(Z)}return!0}return!1}};el.MoveCommand=te,te.KIND=g.MoveAction.KIND,f([(0,m.inject)(W.EdgeRouterRegistry),(0,m.optional)(),h("design:type",W.EdgeRouterRegistry)],te.prototype,"edgeRouterRegistry",void 0),el.MoveCommand=te=w=f([(0,m.injectable)(),b(0,(0,m.inject)(_.TYPES.Action)),h("design:paramtypes",[Object])],te);class fe extends E.Animation{constructor(De,ct,Z,Nt=!1){super(Z),this.model=De,this.elementMoves=ct,this.reverse=Nt}tween(De){return this.elementMoves.forEach(ct=>{this.reverse?ct.element.position={x:(1-De)*ct.toPosition.x+De*ct.fromPosition.x,y:(1-De)*ct.toPosition.y+De*ct.fromPosition.y}:ct.element.position={x:(1-De)*ct.fromPosition.x+De*ct.toPosition.x,y:(1-De)*ct.fromPosition.y+De*ct.toPosition.y}}),this.model}}el.MoveAnimation=fe;class ve extends E.Animation{constructor(De,ct,Z,Nt=!1){super(Z),this.model=De,this.reverse=Nt,this.expanded=[],ct.forEach(ii=>{const kr=this.reverse?ii.after:ii.before,jo=this.reverse?ii.before:ii.after,Gn=kr.routedPoints,pc=jo.routedPoints,ls=Math.max(Gn.length,pc.length);this.expanded.push({startExpandedRoute:this.growToSize(Gn,ls),endExpandedRoute:this.growToSize(pc,ls),memento:ii})})}midPoint(De){const ct=De.edge,Z=De.edge.source,Nt=De.edge.target;return P.Point.linear((0,M.translatePoint)(P.Bounds.center(Z.bounds),Z.parent,ct.parent),(0,M.translatePoint)(P.Bounds.center(Nt.bounds),Nt.parent,ct.parent),.5)}start(){return this.expanded.forEach(De=>{De.memento.edge.removeAll(ct=>ct instanceof $.SRoutingHandleImpl)}),super.start()}tween(De){return De===1?this.expanded.forEach(ct=>{const Z=ct.memento;this.reverse?Z.before.router.applySnapshot(Z.edge,Z.before):Z.after.router.applySnapshot(Z.edge,Z.after)}):this.expanded.forEach(ct=>{const Z=[];for(let kr=1;kr(jo+ls)*ii;)++ls;jo+=ls;for(let Lr=0;Lr(0,ae.isSelectable)(Z)&&Z.selected));ct.forEach(Z=>{if(!this.isChildOfSelected(ct,Z)){if((0,J.isMoveable)(Z))this.elementId2startPos.set(Z.id,Z.position);else if(Z instanceof $.SRoutingHandleImpl){const Nt=this.getHandlePosition(Z);Nt&&this.elementId2startPos.set(Z.id,Nt)}}})}isChildOfSelected(De,ct){for(;ct instanceof T.SChildElementImpl;)if(ct=ct.parent,(0,J.isMoveable)(ct)&&De.has(ct))return!0;return!1}getElementMoves(De,ct,Z){if(!this.startDragPosition)return;const Nt=[],ii=(0,M.findParentByFeature)(De,ce.isViewport),kr=ii?ii.zoom:1,jo={x:(ct.pageX-this.startDragPosition.x)/kr,y:(ct.pageY-this.startDragPosition.y)/kr};if(this.elementId2startPos.forEach((Gn,pc)=>{const ls=De.root.index.getById(pc);if(ls){const Lr=this.createElementMove(ls,Gn,jo,ct);Lr&&Nt.push(Lr)}}),Nt.length>0)return g.MoveAction.create(Nt,{animate:!1,finished:Z})}createElementMove(De,ct,Z,Nt){const ii=this.snap({x:ct.x+Z.x,y:ct.y+Z.y},De,!Nt.shiftKey);if((0,J.isMoveable)(De))return{elementId:De.id,elementType:De.type,fromPosition:{x:De.position.x,y:De.position.y},toPosition:ii};if(De instanceof $.SRoutingHandleImpl){const kr=this.getHandlePosition(De);if(kr!==void 0)return{elementId:De.id,elementType:De.type,fromPosition:kr,toPosition:ii}}}snap(De,ct,Z){return Z&&this.snapper?this.snapper.snap(De,ct):De}getHandlePosition(De){if(this.edgeRouterRegistry){const ct=De.parent;if(!(ct instanceof $.SRoutableElementImpl))return;const Z=this.edgeRouterRegistry.get(ct.routerKind),Nt=Z.route(ct);return Z.getHandlePosition(ct,Nt,De)}}mouseEnter(De,ct){return De instanceof T.SModelRootImpl&&ct.buttons===0&&!this.startDragPosition&&this.mouseUp(De,ct),[]}mouseUp(De,ct){const Z=[];if(this.startDragPosition){const Nt=this.getElementMoves(De,ct,!0);Nt&&Z.push(Nt),De.root.index.all().forEach(ii=>{ii instanceof $.SRoutingHandleImpl&&Z.push(...this.deactivateRoutingHandle(ii,De,ct))})}if(!Z.some(Nt=>Nt.kind===g.ReconnectAction.KIND)){const Nt=De.root.index.getById($.edgeInProgressID);Nt instanceof T.SChildElementImpl&&Z.push(this.deleteEdgeInProgress(Nt))}return this.hasDragged&&Z.push(k.CommitModelAction.create()),this.hasDragged=!1,this.startDragPosition=void 0,this.elementId2startPos.clear(),Z}deactivateRoutingHandle(De,ct,Z){const Nt=[],ii=De.parent;if(ii instanceof $.SRoutableElementImpl&&De.danglingAnchor){const kr=this.getHandlePosition(De);if(kr){const jo=(0,M.translatePoint)(kr,De.parent,De.root),Gn=(0,x.findChildrenAtPosition)(ct.root,jo).find(pc=>(0,$.isConnectable)(pc)&&pc.canConnect(ii,De.kind));Gn&&this.hasDragged&&Nt.push(g.ReconnectAction.create({routableId:De.parent.id,newSourceId:De.kind==="source"?Gn.id:ii.sourceId,newTargetId:De.kind==="target"?Gn.id:ii.targetId}))}}return De.editMode&&Nt.push(H.SwitchEditModeAction.create({elementsToDeactivate:[De.id]})),Nt}deleteEdgeInProgress(De){const ct=[];return ct.push($.edgeInProgressID),De.children.forEach(Z=>{Z instanceof $.SRoutingHandleImpl&&Z.danglingAnchor&&ct.push(Z.danglingAnchor.id)}),g.DeleteElementAction.create(ct)}decorate(De,ct){return De}}el.MoveMouseListener=me,f([(0,m.inject)(W.EdgeRouterRegistry),(0,m.optional)(),h("design:type",W.EdgeRouterRegistry)],me.prototype,"edgeRouterRegistry",void 0),f([(0,m.inject)(_.TYPES.ISnapper),(0,m.optional)(),h("design:type",Object)],me.prototype,"snapper",void 0);let ke=class{decorate(De,ct){if((0,re.isEdgeLayoutable)(ct)&&ct.parent instanceof j.SEdgeImpl)return De;let Z="";if((0,J.isLocateable)(ct)&&ct instanceof T.SChildElementImpl&&ct.parent!==void 0){const Nt=ct.position;(Nt.x!==0||Nt.y!==0)&&(Z="translate("+Nt.x+", "+Nt.y+")")}if((0,x.isAlignable)(ct)){const Nt=ct.alignment;(Nt.x!==0||Nt.y!==0)&&(Z.length>0&&(Z+=" "),Z+="translate("+Nt.x+", "+Nt.y+")")}return Z.length>0&&(0,O.setAttr)(De,"transform",Z),De}postUpdate(){}};return el.LocationPostprocessor=ke,el.LocationPostprocessor=ke=f([(0,m.injectable)()],ke),el}var eS={},Pbt;function _Ut(){if(Pbt)return eS;Pbt=1;var f=eS&&eS.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(eS,"__esModule",{value:!0}),eS.CenterGridSnapper=void 0;const h=Zt(),b=Xs();let w=class{get gridX(){return 10}get gridY(){return 10}snap(P,g){return g&&(0,b.isBoundsAware)(g)?{x:Math.round((P.x+.5*g.bounds.width)/this.gridX)*this.gridX-.5*g.bounds.width,y:Math.round((P.y+.5*g.bounds.height)/this.gridY)*this.gridY-.5*g.bounds.height}:{x:Math.round(P.x/this.gridX)*this.gridX,y:Math.round(P.y/this.gridY)*this.gridY}}};return eS.CenterGridSnapper=w,eS.CenterGridSnapper=w=f([(0,h.injectable)()],w),eS}var SL={},yve={},Mbt;function Cwt(){return Mbt||(Mbt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isOpenable=f.openFeature=void 0,f.openFeature=Symbol("openFeature");function h(b){return b.hasFeature(f.openFeature)}f.isOpenable=h})(yve)),yve}var Cbt;function Iwt(){if(Cbt)return SL;Cbt=1,Object.defineProperty(SL,"__esModule",{value:!0}),SL.OpenMouseListener=void 0;const f=jc(),h=Pp(),b=Qh(),w=Cwt();class m extends h.MouseListener{doubleClick(g,E){const C=(0,b.findParentByFeature)(g,w.isOpenable);return C!==void 0?[f.OpenAction.create(C.id)]:[]}}return SL.OpenMouseListener=m,SL}var bm={},Ibt;function t2e(){if(Ibt)return bm;Ibt=1,Object.defineProperty(bm,"__esModule",{value:!0}),bm.getModelBounds=bm.getProjectedBounds=bm.getProjections=bm.isProjectable=void 0;const f=Ac(),h=_S(),b=Qh(),w=Xs();function m(T){return(0,h.hasOwnProperty)(T,"projectionCssClasses")}bm.isProjectable=m;function P(T){let M;for(const _ of T.children){if(m(_)&&_.projectionCssClasses.length>0){const I=g(_);if(I){const O={elementId:_.id,projectedBounds:I,cssClasses:_.projectionCssClasses};M?M.push(O):M=[O]}}if(_.children.length>0){const I=P(_);I&&(M?M.push(...I):M=I)}}return M}bm.getProjections=P;function g(T){const M=T.parent;if(T.projectedBounds){let _=T.projectedBounds;return(0,w.isBoundsAware)(M)&&(_=(0,b.transformToRootBounds)(M,_)),_}else if((0,w.isBoundsAware)(T)){let _=T.bounds;return _=(0,b.transformToRootBounds)(M,_),_}}bm.getProjectedBounds=g;const E=1e9;function C(T){let M=E,_=E,I=-E,O=-E;const j=(0,w.isBoundsAware)(T)?T.bounds:void 0;if(j&&f.Dimension.isValid(j))M=j.x,_=j.y,I=M+j.width,O=_+j.height;else for(const k of T.children)if((0,w.isBoundsAware)(k)){const x=k.bounds;M=Math.min(M,x.x),_=Math.min(_,x.y),I=Math.max(I,x.x+x.width),O=Math.max(O,x.y+x.height)}if(M=Math.min(M,T.scroll.x),_=Math.min(_,T.scroll.y),I=Math.max(I,T.scroll.x+T.canvasBounds.width/T.zoom),O=Math.max(O,T.scroll.y+T.canvasBounds.height/T.zoom),M=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I};Object.defineProperty(tS,"__esModule",{value:!0}),tS.ProjectedViewportView=void 0;const h=Cy(),b=Zt(),w=nN,m=mh(),P=t2e();let g=class{render(C,T,M){const _=(0,h.html)("div",{"class-sprotty-root":!0},this.renderSvg(C,T,M),this.renderProjections(C,T,M));return(0,m.setAttr)(_,"tabindex",0),_}renderSvg(C,T,M){const _=`scale(${C.zoom}) translate(${-C.scroll.x},${-C.scroll.y})`,I="http://www.w3.org/2000/svg";return(0,w.h)("svg",{ns:I},(0,w.h)("g",{ns:I,attrs:{transform:_}},T.renderChildren(C)))}renderProjections(C,T,M){var _;if(C.zoom<=0)return[];const I=(0,P.getModelBounds)(C);if(!I)return[];const O=(_=(0,P.getProjections)(C))!==null&&_!==void 0?_:[];return[this.renderProjectionBar(O,C,I,"vertical"),this.renderProjectionBar(O,C,I,"horizontal")]}renderProjectionBar(C,T,M,_){const I={modelBounds:M,orientation:_};return I.factor=_==="horizontal"?T.canvasBounds.width/M.width:T.canvasBounds.height/M.height,I.zoomedFactor=I.factor/T.zoom,(0,h.html)("div",{"class-sprotty-projection-bar":!0,"class-horizontal":_==="horizontal","class-vertical":_==="vertical"},this.renderViewport(T,I),C.map(O=>this.renderProjection(O,T,I)))}renderViewport(C,T){let M,_;T.orientation==="horizontal"?(M=C.canvasBounds.width,_=(C.scroll.x-T.modelBounds.x)*T.factor):(M=C.canvasBounds.height,_=(C.scroll.y-T.modelBounds.y)*T.factor);let I=M*T.zoomedFactor;_<0?(I+=_,_=0):_>M&&(_=M),I<0?I=0:_+I>M&&(I=M-_);const O=T.orientation==="horizontal"?{left:`${_}px`,width:`${I}px`}:{top:`${_}px`,height:`${I}px`};return(0,h.html)("div",{"class-sprotty-viewport":!0,style:O})}renderProjection(C,T,M){let _,I,O;M.orientation==="horizontal"?(_=T.canvasBounds.width,I=(C.projectedBounds.x-M.modelBounds.x)*M.factor,O=C.projectedBounds.width*M.factor):(_=T.canvasBounds.height,I=(C.projectedBounds.y-M.modelBounds.y)*M.factor,O=C.projectedBounds.height*M.factor),I<0?(O+=I,I=0):I>_&&(I=_),O<0?O=0:I+O>_&&(O=_-I);const j=M.orientation==="horizontal"?{left:`${I}px`,width:`${O}px`}:{top:`${I}px`,height:`${O}px`},k=(0,h.html)("div",{id:`${M.orientation}-projection:${C.elementId}`,"class-sprotty-projection":!0,style:j});return C.cssClasses.forEach(x=>(0,m.setClass)(k,x,!0)),k}};return tS.ProjectedViewportView=g,tS.ProjectedViewportView=g=f([(0,b.injectable)()],g),tS}var hg={},dg={},jbt;function n2e(){if(jbt)return dg;jbt=1;var f=dg&&dg.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k};Object.defineProperty(dg,"__esModule",{value:!0}),dg.DiamondAnchor=dg.RectangleAnchor=dg.EllipseAnchor=void 0;const h=MS(),b=PS(),w=Zt(),m=wJ(),P=Ac();let g=class{get kind(){return m.PolylineEdgeRouter.KIND+":"+h.ELLIPTIC_ANCHOR_KIND}getAnchor(_,I,O=0){const j=_.bounds,k=P.Bounds.center(j),x=k.x-I.x,R=k.y-I.y,H=Math.sqrt(x*x+R*R),F=x/H||0,$=R/H||0;return{x:k.x-F*(.5*j.width+O),y:k.y-$*(.5*j.height+O)}}};dg.EllipseAnchor=g,dg.EllipseAnchor=g=f([(0,w.injectable)()],g);let E=class{get kind(){return m.PolylineEdgeRouter.KIND+":"+h.RECTANGULAR_ANCHOR_KIND}getAnchor(_,I,O=0){const j=_.bounds,k=P.Bounds.center(j),x=new C(k,I);if(!(0,P.almostEquals)(k.y,I.y)){const R=this.getXIntersection(j.y,k,I);R>=j.x&&R<=j.x+j.width&&x.addCandidate(R,j.y-O);const H=this.getXIntersection(j.y+j.height,k,I);H>=j.x&&H<=j.x+j.width&&x.addCandidate(H,j.y+j.height+O)}if(!(0,P.almostEquals)(k.x,I.x)){const R=this.getYIntersection(j.x,k,I);R>=j.y&&R<=j.y+j.height&&x.addCandidate(j.x-O,R);const H=this.getYIntersection(j.x+j.width,k,I);H>=j.y&&H<=j.y+j.height&&x.addCandidate(j.x+j.width+O,H)}return x.best}getXIntersection(_,I,O){const j=(_-I.y)/(O.y-I.y);return(O.x-I.x)*j+I.x}getYIntersection(_,I,O){const j=(_-I.x)/(O.x-I.x);return(O.y-I.y)*j+I.y}};dg.RectangleAnchor=E,dg.RectangleAnchor=E=f([(0,w.injectable)()],E);class C{constructor(_,I){this.centerPoint=_,this.refPoint=I,this.currentDist=-1}addCandidate(_,I){const O=this.refPoint.x-_,j=this.refPoint.y-I,k=O*O+j*j;(this.currentDist<0||k=0;ae--)(re=x[ae])&&(W=($<3?re(W):$>3?re(R,H,W):re(R,H))||W);return $>3&&W&&Object.defineProperty(R,H,W),W},h=of&&of.__metadata||function(x,R){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(x,R)},b=of&&of.__param||function(x,R){return function(H,F){R(H,F,x)}},w;Object.defineProperty(of,"__esModule",{value:!0}),of.AddRemoveBezierSegmentCommand=of.AddRemoveBezierSegmentAction=of.BezierMouseListener=of.BezierEdgeRouter=void 0;const m=Zt(),P=Ac(),g=Ma(),E=Iy(),C=pJ(),T=Pp(),M=Ca(),_=Qn();let I=w=class extends C.AbstractEdgeRouter{get kind(){return w.KIND}route(R){if(!R.source||!R.target)return[];const H=R.routingPoints.length,F=R.source,$=R.target,W=[];if(W.push({kind:"source",x:0,y:0}),H===0){const[te,fe]=this.createDefaultBezierHandles(F.position,$.position);W.push({kind:"bezier-control-after",x:te.x,y:te.y,pointIndex:0}),W.push({kind:"bezier-control-before",x:fe.x,y:fe.y,pointIndex:1}),R.routingPoints.push(te),R.routingPoints.push(fe)}else if(H>=2)for(let te=0;te2?R.routingPoints[2]:$.position,ae=H>2?R.routingPoints[R.routingPoints.length-3]:F.position,ce=this.getTranslatedAnchor(F,re,$.parent,R,R.sourceAnchorCorrection),J=this.getTranslatedAnchor($,ae,F.parent,R,R.targetAnchorCorrection);return W[0]={kind:"source",x:ce.x,y:ce.y},W[W.length-1]={kind:"target",x:J.x,y:J.y},W}createDefaultBezierHandles(R,H){const F={x:R.x-w.DEFAULT_BEZIER_HANDLE_OFFSET,y:R.y},$={x:H.x+w.DEFAULT_BEZIER_HANDLE_OFFSET,y:H.y};return[F,$]}createRoutingHandles(R){this.route(R),this.rebuildHandles(R)}rebuildHandles(R){this.addHandle(R,"source","routing-point",-2),this.addHandle(R,"bezier-control-after","bezier-routing-point",0),this.addHandle(R,"bezier-add","bezier-create-routing-point",0);const H=R.routingPoints.length;if(H>2)for(let F=1;F0){for(const W of H)if(W.pointIndex!==void 0&&W.pointIndex===F&&W.kind==="bezier-junction"){$={x:W.x,y:W.y};break}}return $}applyHandleMoves(R,H){H.forEach(F=>{const $=F.handle;let W={x:0,y:0},re,ae,ce;const J=F.toPosition;switch($.kind){case"bezier-control-before":case"bezier-control-after":this.moveBezierControlPair(J,F.handle.pointIndex,R);break;case"bezier-junction":const te=$.pointIndex;te>=0&&teJ instanceof g.SRoutingHandleImpl),this.rebuildHandles(H)}removeBezierSegment(R,H){H.routingPoints.splice(R-1,3),H.removeAll($=>$ instanceof g.SRoutingHandleImpl),this.rebuildHandles(H)}moveBezierControlPair(R,H,F){if(H>=0&&H=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O};Object.defineProperty(hg,"__esModule",{value:!0}),hg.BezierDiamondAnchor=hg.BezierRectangleAnchor=hg.BezierEllipseAnchor=void 0;const h=MS(),b=Zt(),w=n2e(),m=i2e();let P=class extends w.EllipseAnchor{get kind(){return m.BezierEdgeRouter.KIND+":"+h.ELLIPTIC_ANCHOR_KIND}};hg.BezierEllipseAnchor=P,hg.BezierEllipseAnchor=P=f([(0,b.injectable)()],P);let g=class extends w.RectangleAnchor{get kind(){return m.BezierEdgeRouter.KIND+":"+h.RECTANGULAR_ANCHOR_KIND}};hg.BezierRectangleAnchor=g,hg.BezierRectangleAnchor=g=f([(0,b.injectable)()],g);let E=class extends w.DiamondAnchor{get kind(){return m.BezierEdgeRouter.KIND+":"+h.DIAMOND_ANCHOR_KIND}};return hg.BezierDiamondAnchor=E,hg.BezierDiamondAnchor=E=f([(0,b.injectable)()],E),hg}var gg={},PL={},Dbt;function r2e(){if(Dbt)return PL;Dbt=1,Object.defineProperty(PL,"__esModule",{value:!0}),PL.ManhattanEdgeRouter=void 0;const f=Ac(),h=Qh(),b=pJ(),w=Ma();class m extends b.AbstractEdgeRouter{get kind(){return m.KIND}getOptions(g){return{standardDistance:20,minimalPointDistance:3,selfEdgeOffset:.25}}route(g){if(!g.source||!g.target)return[];const E=this.createRoutedCorners(g),C=E[0]||(0,h.translatePoint)(f.Bounds.center(g.target.bounds),g.target.parent,g.parent),T=this.getTranslatedAnchor(g.source,C,g.parent,g,g.sourceAnchorCorrection),M=E[E.length-1]||(0,h.translatePoint)(f.Bounds.center(g.source.bounds),g.source.parent,g.parent),_=this.getTranslatedAnchor(g.target,M,g.parent,g,g.targetAnchorCorrection);if(!T||!_)return[];const I=[];return I.push(Object.assign({kind:"source"},T)),E.forEach(O=>I.push(O)),I.push(Object.assign({kind:"target"},_)),I}createRoutedCorners(g){const E=new b.DefaultAnchors(g.source,g.parent,"source"),C=new b.DefaultAnchors(g.target,g.parent,"target");if(g.routingPoints.length>0){const _=g.routingPoints.slice();if(this.cleanupRoutingPoints(g,_,!1,!0),_.length>0)return _.map((I,O)=>Object.assign({kind:"linear",pointIndex:O},I))}const T=this.getOptions(g);return this.calculateDefaultCorners(g,E,C,T).map(_=>Object.assign({kind:"linear"},_))}createRoutingHandles(g){const E=this.route(g);if(this.commitRoute(g,E),E.length>0){this.addHandle(g,"source","routing-point",-2);for(let C=0;C{const I=_.handle,O=I.pointIndex,j=this.correctX(T,O,_.toPosition.x,M),k=this.correctY(T,O,_.toPosition.y,M);I.kind==="manhattan-50%"&&(O<0?T.length===0?(T.push({x:j,y:k}),I.pointIndex=0):(0,f.almostEquals)(C[0].x,C[1].x)?this.alignX(T,0,j):this.alignY(T,0,k):O0&&Math.abs(C-g[E-1].x)=0&&E0&&Math.abs(C-g[E-1].y)=0&&E=0&&f.Bounds.includes(_.bounds,E[I]);--I)E.splice(I,1),C&&this.removeHandle(g,I);if(E.length>=2){const I=this.getOptions(g);for(let O=E.length-2;O>=0;--O)f.Point.manhattanDistance(E[O],E[O+1]){T instanceof w.SRoutingHandleImpl&&(T.pointIndex>E?--T.pointIndex:T.pointIndex===E&&C.push(T))}),C.forEach(T=>g.remove(T))}addAdditionalCorner(g,E,C,T,M){if(E.length===0)return;const _=C.kind==="source"?E[0]:E[E.length-1],I=C.kind==="source"?0:E.length,O=I-(C.kind==="source"?1:0);let j;if(E.length>1)j=I===0?(0,f.almostEquals)(E[0].x,E[1].x):(0,f.almostEquals)(E[E.length-1].x,E[E.length-2].x);else{const k=T.getNearestSide(_);j=k===b.Side.TOP||k===b.Side.BOTTOM}if(j){if(_.yC.get(b.Side.BOTTOM).y){const k={x:C.get(b.Side.TOP).x,y:_.y};E.splice(I,0,k),M&&(g.children.forEach(x=>{x instanceof w.SRoutingHandleImpl&&x.pointIndex>=O&&++x.pointIndex}),this.addHandle(g,"manhattan-50%","volatile-routing-point",O))}}else if(_.xC.get(b.Side.RIGHT).x){const k={x:_.x,y:C.get(b.Side.LEFT).y};E.splice(I,0,k),M&&(g.children.forEach(x=>{x instanceof w.SRoutingHandleImpl&&x.pointIndex>=O&&++x.pointIndex}),this.addHandle(g,"manhattan-50%","volatile-routing-point",O))}}manhattanify(g,E){for(let C=1;C0)return M;const _=this.getBestConnectionAnchors(g,E,C,T),I=_.source,O=_.target,j=[],k=E.get(I);let x=C.get(O);switch(I){case b.Side.RIGHT:switch(O){case b.Side.BOTTOM:j.push({x:x.x,y:k.y});break;case b.Side.TOP:j.push({x:x.x,y:k.y});break;case b.Side.RIGHT:j.push({x:Math.max(k.x,x.x)+1.5*T.standardDistance,y:k.y}),j.push({x:Math.max(k.x,x.x)+1.5*T.standardDistance,y:x.y});break;case b.Side.LEFT:x.y!==k.y&&(j.push({x:(k.x+x.x)/2,y:k.y}),j.push({x:(k.x+x.x)/2,y:x.y}));break}break;case b.Side.LEFT:switch(O){case b.Side.BOTTOM:j.push({x:x.x,y:k.y});break;case b.Side.TOP:j.push({x:x.x,y:k.y});break;default:x=C.get(b.Side.RIGHT),x.y!==k.y&&(j.push({x:(k.x+x.x)/2,y:k.y}),j.push({x:(k.x+x.x)/2,y:x.y}));break}break;case b.Side.TOP:switch(O){case b.Side.RIGHT:x.x-k.x>0?(j.push({x:k.x,y:k.y-T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:k.y-T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;case b.Side.LEFT:x.x-k.x<0?(j.push({x:k.x,y:k.y-T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:k.y-T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;case b.Side.TOP:j.push({x:k.x,y:Math.min(k.y,x.y)-1.5*T.standardDistance}),j.push({x:x.x,y:Math.min(k.y,x.y)-1.5*T.standardDistance});break;case b.Side.BOTTOM:x.x!==k.x&&(j.push({x:k.x,y:(k.y+x.y)/2}),j.push({x:x.x,y:(k.y+x.y)/2}));break}break;case b.Side.BOTTOM:switch(O){case b.Side.RIGHT:x.x-k.x>0?(j.push({x:k.x,y:k.y+T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:k.y+T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;case b.Side.LEFT:x.x-k.x<0?(j.push({x:k.x,y:k.y+T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:k.y+T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;default:x=C.get(b.Side.TOP),x.x!==k.x&&(j.push({x:k.x,y:(k.y+x.y)/2}),j.push({x:x.x,y:(k.y+x.y)/2}));break}break}return j}getBestConnectionAnchors(g,E,C,T){let M=E.get(b.Side.RIGHT),_=C.get(b.Side.LEFT);if(_.x-M.x>T.standardDistance)return{source:b.Side.RIGHT,target:b.Side.LEFT};if(M=E.get(b.Side.LEFT),_=C.get(b.Side.RIGHT),M.x-_.x>T.standardDistance)return{source:b.Side.LEFT,target:b.Side.RIGHT};if(M=E.get(b.Side.TOP),_=C.get(b.Side.BOTTOM),M.y-_.y>T.standardDistance)return{source:b.Side.TOP,target:b.Side.BOTTOM};if(M=E.get(b.Side.BOTTOM),_=C.get(b.Side.TOP),_.y-M.y>T.standardDistance)return{source:b.Side.BOTTOM,target:b.Side.TOP};if(M=E.get(b.Side.RIGHT),_=C.get(b.Side.TOP),_.x-M.x>.5*T.standardDistance&&_.y-M.y>T.standardDistance)return{source:b.Side.RIGHT,target:b.Side.TOP};if(_=C.get(b.Side.BOTTOM),_.x-M.x>.5*T.standardDistance&&M.y-_.y>T.standardDistance)return{source:b.Side.RIGHT,target:b.Side.BOTTOM};if(M=E.get(b.Side.LEFT),_=C.get(b.Side.BOTTOM),M.x-_.x>.5*T.standardDistance&&M.y-_.y>T.standardDistance)return{source:b.Side.LEFT,target:b.Side.BOTTOM};if(_=C.get(b.Side.TOP),M.x-_.x>.5*T.standardDistance&&_.y-M.y>T.standardDistance)return{source:b.Side.LEFT,target:b.Side.TOP};if(M=E.get(b.Side.TOP),_=C.get(b.Side.RIGHT),M.y-_.y>.5*T.standardDistance&&M.x-_.x>T.standardDistance)return{source:b.Side.TOP,target:b.Side.RIGHT};if(_=C.get(b.Side.LEFT),M.y-_.y>.5*T.standardDistance&&_.x-M.x>T.standardDistance)return{source:b.Side.TOP,target:b.Side.LEFT};if(M=E.get(b.Side.BOTTOM),_=C.get(b.Side.RIGHT),_.y-M.y>.5*T.standardDistance&&M.x-_.x>T.standardDistance)return{source:b.Side.BOTTOM,target:b.Side.RIGHT};if(_=C.get(b.Side.LEFT),_.y-M.y>.5*T.standardDistance&&_.x-M.x>T.standardDistance)return{source:b.Side.BOTTOM,target:b.Side.LEFT};if(M=E.get(b.Side.TOP),_=C.get(b.Side.TOP),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)){if(M.y-_.y<0){if(Math.abs(M.x-_.x)>(E.bounds.width+T.standardDistance)/2)return{source:b.Side.TOP,target:b.Side.TOP}}else if(Math.abs(M.x-_.x)>C.bounds.width/2)return{source:b.Side.TOP,target:b.Side.TOP}}if(M=E.get(b.Side.RIGHT),_=C.get(b.Side.RIGHT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)){if(M.x-_.x>0){if(Math.abs(M.y-_.y)>(E.bounds.height+T.standardDistance)/2)return{source:b.Side.RIGHT,target:b.Side.RIGHT}}else if(Math.abs(M.y-_.y)>C.bounds.height/2)return{source:b.Side.RIGHT,target:b.Side.RIGHT}}return M=E.get(b.Side.TOP),_=C.get(b.Side.RIGHT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.TOP,target:b.Side.RIGHT}:(_=C.get(b.Side.LEFT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.TOP,target:b.Side.LEFT}:(M=E.get(b.Side.BOTTOM),_=C.get(b.Side.RIGHT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.BOTTOM,target:b.Side.RIGHT}:(_=C.get(b.Side.LEFT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.BOTTOM,target:b.Side.LEFT}:{source:b.Side.RIGHT,target:b.Side.BOTTOM})))}}return PL.ManhattanEdgeRouter=m,m.KIND="manhattan",PL}var kbt;function jwt(){if(kbt)return gg;kbt=1;var f=gg&&gg.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h,b,w;Object.defineProperty(gg,"__esModule",{value:!0}),gg.ManhattanEllipticAnchor=gg.ManhattanDiamondAnchor=gg.ManhattanRectangularAnchor=void 0;const m=Ac(),P=PS(),g=MS(),E=r2e(),C=Zt();let T=h=class{get kind(){return h.KIND}getAnchor(O,j,k){const x=O.bounds;if(x.width<=0||x.height<=0)return x;const R={x:x.x-k,y:x.y-k,width:x.width+2*k,height:x.height+2*k};return j.x>=R.x&&R.x+R.width>=j.x?j.y=R.y&&R.y+R.height>=j.y?j.x=R.x&&j.x<=R.x+R.width?R.x+.5*R.width>=j.x?($=new P.PointToPointLine(j,{x:j.x,y:H.y}),j.y=R.y&&j.y<=R.y+R.height&&(R.y+.5*R.height>=j.y?($=new P.PointToPointLine(j,{x:H.x,y:j.y}),j.x=R.x&&R.x+R.width>=j.x){$+=F.x;const re=.5*R.height*Math.sqrt(1-F.x*F.x/(.25*R.width*R.width));F.y<0?W-=re:W+=re}else if(j.y>=R.y&&R.y+R.height>=j.y){W+=F.y;const re=.5*R.width*Math.sqrt(1-F.y*F.y/(.25*R.height*R.height));F.x<0?$-=re:$+=re}return{x:$,y:W}}};return gg.ManhattanEllipticAnchor=_,_.KIND=E.ManhattanEdgeRouter.KIND+":"+g.ELLIPTIC_ANCHOR_KIND,gg.ManhattanEllipticAnchor=_=w=f([(0,C.injectable)()],_),gg}var nS={},Rbt;function Awt(){if(Rbt)return nS;Rbt=1;var f=nS&&nS.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(nS,"__esModule",{value:!0}),nS.RoutableView=void 0;const h=Zt(),b=Ma();let w=class{isVisible(P,g,E){if(E.targetKind==="hidden"||g.length===0)return!0;const C=(0,b.getAbsoluteRouteBounds)(P,g),T=P.root.canvasBounds;return C.x<=T.width&&C.x+C.width>=0&&C.y<=T.height&&C.y+C.height>=0}};return nS.RoutableView=w,nS.RoutableView=w=f([(0,h.injectable)()],w),nS}var Pa={},py={},xbt;function Owt(){if(xbt)return py;xbt=1;var f=py&&py.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_},h=py&&py.__metadata||function(g,E){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(g,E)};Object.defineProperty(py,"__esModule",{value:!0}),py.ModelRequestCommand=void 0;const b=Zt(),w=Qn(),m=Ca();let P=class extends m.SystemCommand{execute(E){const C=this.retrieveResult(E);return this.actionDispatcher.dispatch(C),{model:E.root,modelChanged:!1}}undo(E){return{model:E.root,modelChanged:!1}}redo(E){return{model:E.root,modelChanged:!1}}};return py.ModelRequestCommand=P,f([(0,b.inject)(w.TYPES.IActionDispatcher),h("design:type",Object)],P.prototype,"actionDispatcher",void 0),py.ModelRequestCommand=P=f([(0,b.injectable)()],P),py}var pm={},Lbt;function o2e(){if(Lbt)return pm;Lbt=1;var f=pm&&pm.__decorate||function(x,R,H,F){var $=arguments.length,W=$<3?R:F===null?F=Object.getOwnPropertyDescriptor(R,H):F,re;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")W=Reflect.decorate(x,R,H,F);else for(var ae=x.length-1;ae>=0;ae--)(re=x[ae])&&(W=($<3?re(W):$>3?re(R,H,W):re(R,H))||W);return $>3&&W&&Object.defineProperty(R,H,W),W},h=pm&&pm.__metadata||function(x,R){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(x,R)};Object.defineProperty(pm,"__esModule",{value:!0}),pm.findViewportScrollbar=pm.ScrollMouseListener=void 0;const b=Zt(),w=jc(),m=Ac(),P=Oc(),g=Pp(),E=Qh(),C=V3(),T=SS(),M=Ma(),_=t2e(),I=My(),O=Qn();class j extends g.MouseListener{constructor(){super(...arguments),this.scrollbarMouseDownDelay=200}mouseDown(R,H){if((0,E.findParentByFeature)(R,T.isMoveable)===void 0&&!(R instanceof M.SRoutingHandleImpl)){const $=(0,E.findParentByFeature)(R,C.isViewport);if($){if(this.lastScrollPosition={x:H.pageX,y:H.pageY},this.scrollbar=this.getScrollbar(H),this.scrollbar)return window.clearTimeout(this.scrollbarMouseDownTimeout),this.moveScrollBar($,H,this.scrollbar,!0).map(W=>new Promise(re=>{this.scrollbarMouseDownTimeout=window.setTimeout(()=>re(W),this.scrollbarMouseDownDelay)}))}else this.lastScrollPosition=void 0,this.scrollbar=void 0}return[]}mouseMove(R,H){if(H.buttons===0)return this.mouseUp(R,H);if(this.scrollbar){window.clearTimeout(this.scrollbarMouseDownTimeout);const F=(0,E.findParentByFeature)(R,C.isViewport);if(F)return this.moveScrollBar(F,H,this.scrollbar)}if(this.lastScrollPosition){const F=(0,E.findParentByFeature)(R,C.isViewport);if(F)return this.dragCanvas(F,H,this.lastScrollPosition)}return[]}mouseEnter(R,H){return R instanceof P.SModelRootImpl&&H.buttons===0&&this.mouseUp(R,H),[]}mouseUp(R,H){return this.lastScrollPosition=void 0,this.scrollbar=void 0,[]}doubleClick(R,H){if((0,E.findParentByFeature)(R,C.isViewport)){const $=this.getScrollbar(H);if($){window.clearTimeout(this.scrollbarMouseDownTimeout);const W=this.findClickTarget($,H);let re;if(W&&W.id.startsWith("horizontal-projection:")?re=W.id.substring(22):W&&W.id.startsWith("vertical-projection:")&&(re=W.id.substring(20)),re)return[w.CenterAction.create([re],{animate:!0,retainZoom:!0})]}}return[]}dragCanvas(R,H,F){let $=(H.pageX-F.x)/R.zoom;($>0&&(0,m.almostEquals)(R.scroll.x,this.viewerOptions.horizontalScrollLimits.min)||$<0&&(0,m.almostEquals)(R.scroll.x,this.viewerOptions.horizontalScrollLimits.max-R.canvasBounds.width/R.zoom))&&($=0);let W=(H.pageY-F.y)/R.zoom;if((W>0&&(0,m.almostEquals)(R.scroll.y,this.viewerOptions.verticalScrollLimits.min)||W<0&&(0,m.almostEquals)(R.scroll.y,this.viewerOptions.verticalScrollLimits.max-R.canvasBounds.height/R.zoom))&&(W=0),$===0&&W===0)return[];const re={scroll:{x:R.scroll.x-$,y:R.scroll.y-W},zoom:R.zoom};return this.lastScrollPosition={x:H.pageX,y:H.pageY},[w.SetViewportAction.create(R.id,re,{animate:!1})]}moveScrollBar(R,H,F,$=!1){const W=(0,_.getModelBounds)(R);if(!W||R.zoom<=0)return[];const re=F.getBoundingClientRect();let ae;if(this.getScrollbarOrientation(F)==="horizontal"){if(re.width<=0)return[];const ce=R.canvasBounds.width/(R.zoom*W.width)*re.width;let J=H.clientX-re.x-ce/2;if(J<0?J=0:J>re.width-ce&&(J=re.width-ce),ae={x:W.x+J/re.width*W.width,y:R.scroll.y},ae.xthis.viewerOptions.horizontalScrollLimits.max-R.canvasBounds.width/R.zoom&&(ae.x=this.viewerOptions.horizontalScrollLimits.max-R.canvasBounds.width/R.zoom),(0,m.almostEquals)(ae.x,R.scroll.x))return[]}else{if(re.height<=0)return[];const ce=R.canvasBounds.height/(R.zoom*W.height)*re.height;let J=H.clientY-re.y-ce/2;if(J<0?J=0:J>re.height-ce&&(J=re.height-ce),ae={x:R.scroll.x,y:W.y+J/re.height*W.height},ae.ythis.viewerOptions.verticalScrollLimits.max-R.canvasBounds.height/R.zoom&&(ae.y=this.viewerOptions.verticalScrollLimits.max-R.canvasBounds.height/R.zoom),(0,m.almostEquals)(ae.y,R.scroll.y))return[]}return[w.SetViewportAction.create(R.id,{scroll:ae,zoom:R.zoom},{animate:$})]}getScrollbar(R){return k(R)}getScrollbarOrientation(R){return R.classList.contains("horizontal")?"horizontal":"vertical"}findClickTarget(R,H){const F=Array.from(R.children).filter($=>$.id&&$.classList.contains("sprotty-projection")&&(0,I.hitsMouseEvent)($,H));if(F.length>0)return F[F.length-1]}}pm.ScrollMouseListener=j,f([(0,b.inject)(O.TYPES.ViewerOptions),h("design:type",Object)],j.prototype,"viewerOptions",void 0);function k(x){let R=x.target;for(;R;){if(R.classList&&R.classList.contains("sprotty-projection-bar"))return R;R=R.parentElement}}return pm.findViewportScrollbar=k,pm}var Nbt;function Dwt(){if(Nbt)return Pa;Nbt=1;var f=Pa&&Pa.__decorate||function(ve,me,ke,tt){var De=arguments.length,ct=De<3?me:tt===null?tt=Object.getOwnPropertyDescriptor(me,ke):tt,Z;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ct=Reflect.decorate(ve,me,ke,tt);else for(var Nt=ve.length-1;Nt>=0;Nt--)(Z=ve[Nt])&&(ct=(De<3?Z(ct):De>3?Z(me,ke,ct):Z(me,ke))||ct);return De>3&&ct&&Object.defineProperty(me,ke,ct),ct},h=Pa&&Pa.__metadata||function(ve,me){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ve,me)},b=Pa&&Pa.__param||function(ve,me){return function(ke,tt){me(ke,tt,ve)}};Object.defineProperty(Pa,"__esModule",{value:!0}),Pa.SelectKeyboardListener=Pa.GetSelectionCommand=Pa.SelectMouseListener=Pa.SelectAllCommand=Pa.SelectCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Owt(),E=Oc(),C=Qh(),T=Qn(),M=H3(),_=Pp(),I=mh(),O=My(),j=_A(),k=z3(),x=bJ(),R=swt(),H=vJ(),F=Ma(),$=Ma(),W=o2e(),re=Rb();let ae=class extends P.Command{constructor(me){super(),this.action=me,this.selected=[],this.deselected=[]}execute(me){const ke=me.root;return this.action.selectedElementsIDs.forEach(tt=>{const De=ke.index.getById(tt);De instanceof E.SChildElementImpl&&(0,re.isSelectable)(De)&&this.selected.push(De)}),this.action.deselectedElementsIDs.forEach(tt=>{const De=ke.index.getById(tt);De instanceof E.SChildElementImpl&&(0,re.isSelectable)(De)&&this.deselected.push(De)}),this.redo(me)}undo(me){for(const ke of this.selected)ke.selected=!1;for(const ke of this.deselected)ke.selected=!0;return me.root}redo(me){for(const ke of this.deselected)ke.selected=!1;for(const ke of this.selected)ke.selected=!0;return me.root}};Pa.SelectCommand=ae,ae.KIND=m.SelectAction.KIND,Pa.SelectCommand=ae=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.Action)),h("design:paramtypes",[Object])],ae);let ce=class extends P.Command{constructor(me){super(),this.action=me,this.previousSelection={}}execute(me){return this.selectAll(me.root,this.action.select),me.root}selectAll(me,ke){(0,re.isSelectable)(me)&&(this.previousSelection[me.id]=me.selected,me.selected=ke);for(const tt of me.children)this.selectAll(tt,ke)}undo(me){const ke=me.root.index;return Object.keys(this.previousSelection).forEach(tt=>{const De=ke.getById(tt);De!==void 0&&(0,re.isSelectable)(De)&&(De.selected=this.previousSelection[tt])}),me.root}redo(me){return this.selectAll(me.root,this.action.select),me.root}};Pa.SelectAllCommand=ce,ce.KIND=m.SelectAllAction.KIND,Pa.SelectAllCommand=ce=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.Action)),h("design:paramtypes",[Object])],ce);class J extends _.MouseListener{constructor(){super(...arguments),this.wasSelected=!1,this.hasDragged=!1,this.isMouseDown=!1}mouseDown(me,ke){if(ke.button!==0)return[];this.isMouseDown=!0;const tt=this.handleButton(me,ke);if(tt)return tt;const De=(0,C.findParentByFeature)(me,re.isSelectable);if((De!==void 0||me instanceof E.SModelRootImpl)&&(this.hasDragged=!1),De!==void 0){let ct=[];if((0,O.isCtrlOrCmd)(ke)||(ct=this.collectElementsToDeselect(me,De)),De.selected){if((0,O.isCtrlOrCmd)(ke))return this.wasSelected=!1,this.handleDeselectTarget(De,ke);this.wasSelected=!0}else return this.wasSelected=!1,this.handleSelectTarget(De,ct,ke)}return[]}collectElementsToDeselect(me,ke){return(0,j.toArray)(me.root.index.all().filter(tt=>(0,re.isSelectable)(tt)&&tt.selected&&!(ke instanceof F.SRoutingHandleImpl&&tt===ke.parent)))}handleButton(me,ke){if(this.buttonHandlerRegistry!==void 0&&me instanceof R.SButtonImpl&&me.enabled){const tt=this.buttonHandlerRegistry.get(me.type);if(tt!==void 0)return tt.buttonPressed(me)}}handleSelectTarget(me,ke,tt){const De=[];De.push(m.SelectAction.create({selectedElementsIDs:[me.id],deselectedElementsIDs:ke.map(Z=>Z.id)})),De.push(m.BringToFrontAction.create([me.id]));const ct=ke.filter(Z=>Z instanceof $.SRoutableElementImpl).map(Z=>Z.id);return me instanceof $.SRoutableElementImpl?De.push(H.SwitchEditModeAction.create({elementsToActivate:[me.id],elementsToDeactivate:ct})):ct.length>0&&De.push(H.SwitchEditModeAction.create({elementsToDeactivate:ct})),De}handleDeselectTarget(me,ke){const tt=[];return tt.push(m.SelectAction.create({selectedElementsIDs:[],deselectedElementsIDs:[me.id]})),me instanceof $.SRoutableElementImpl&&tt.push(H.SwitchEditModeAction.create({elementsToDeactivate:[me.id]})),tt}handleDeselectAll(me,ke){const tt=[];tt.push(m.SelectAction.create({selectedElementsIDs:[],deselectedElementsIDs:me.map(ct=>ct.id)}));const De=me.filter(ct=>ct instanceof $.SRoutableElementImpl).map(ct=>ct.id);return De.length>0&&tt.push(H.SwitchEditModeAction.create({elementsToDeactivate:De})),tt}mouseMove(me,ke){return this.hasDragged=this.isMouseDown,[]}mouseUp(me,ke){if(ke.button===0&&!this.hasDragged){const tt=(0,C.findParentByFeature)(me,re.isSelectable);if(tt!==void 0){if(this.wasSelected)return[m.SelectAction.create({selectedElementsIDs:[tt.id],deselectedElementsIDs:[]})]}else if(me instanceof E.SModelRootImpl&&!(0,W.findViewportScrollbar)(ke)||!(me instanceof E.SModelRootImpl))return this.handleDeselectAll(this.collectElementsToDeselect(me,void 0),ke)}return this.isMouseDown=!1,this.hasDragged=!1,[]}decorate(me,ke){const tt=(0,C.findParentByFeature)(ke,re.isSelectable);return tt!==void 0&&(0,I.setClass)(me,"selected",tt.selected),me}}Pa.SelectMouseListener=J,f([(0,w.inject)(x.ButtonHandlerRegistry),(0,w.optional)(),h("design:type",x.ButtonHandlerRegistry)],J.prototype,"buttonHandlerRegistry",void 0);let te=class extends g.ModelRequestCommand{constructor(me){super(),this.action=me,this.previousSelection={}}retrieveResult(me){const ke=me.root.index.all().filter(tt=>(0,re.isSelectable)(tt)&&tt.selected).map(tt=>tt.id);return m.SelectionResult.create((0,j.toArray)(ke),this.action.requestId)}};Pa.GetSelectionCommand=te,te.KIND=m.GetSelectionAction.KIND,Pa.GetSelectionCommand=te=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.Action)),h("design:paramtypes",[Object])],te);class fe extends M.KeyListener{keyDown(me,ke){return(0,k.matchesKeystroke)(ke,"KeyA","ctrlCmd")?[m.SelectAllAction.create()]:[]}}return Pa.SelectKeyboardListener=fe,Pa}var ML={},Fbt;function kwt(){if(Fbt)return ML;Fbt=1,Object.defineProperty(ML,"__esModule",{value:!0}),ML.UndoRedoKeyListener=void 0;const f=jc(),h=z3(),b=H3(),w=My();class m extends b.KeyListener{keyDown(g,E){return(0,h.matchesKeystroke)(E,"KeyZ","ctrlCmd")?[f.UndoAction.create()]:(0,h.matchesKeystroke)(E,"KeyZ","ctrlCmd","shift")||!(0,w.isMac)()&&(0,h.matchesKeystroke)(E,"KeyY","ctrlCmd")?[f.RedoAction.create()]:[]}}return ML.UndoRedoKeyListener=m,ML}var E3={},Bbt;function c2e(){if(Bbt)return E3;Bbt=1,Object.defineProperty(E3,"__esModule",{value:!0}),E3.applyMatches=E3.ModelMatcher=E3.forEachMatch=void 0;const f=Oc(),h=Sp();function b(P,g){Object.keys(P).forEach(E=>g(E,P[E]))}E3.forEachMatch=b;class w{match(g,E){const C={};return this.matchLeft(g,C),this.matchRight(E,C),C}matchLeft(g,E,C){let T=E[g.id];if(T!==void 0?(T.left=g,T.leftParentId=C):(T={left:g,leftParentId:C},E[g.id]=T),(0,f.isParent)(g))for(const M of g.children)this.matchLeft(M,E,g.id)}matchRight(g,E,C){let T=E[g.id];if(T!==void 0?(T.right=g,T.rightParentId=C):(T={right:g,rightParentId:C},E[g.id]=T),(0,f.isParent)(g))for(const M of g.children)this.matchRight(M,E,g.id)}}E3.ModelMatcher=w;function m(P,g,E){P instanceof f.SModelRootImpl?E=P.index:E===void 0&&(E=new h.SModelIndex,E.add(P));for(const C of g){let T=!1;if(C.left!==void 0&&C.leftParentId!==void 0){const M=E.getById(C.leftParentId);if(M!==void 0&&M.children!==void 0){const _=M.children.indexOf(C.left);_>=0&&(C.right!==void 0&&C.leftParentId===C.rightParentId?(M.children.splice(_,1,C.right),T=!0):M.children.splice(_,1)),E.remove(C.left)}}if(!T&&C.right!==void 0&&C.rightParentId!==void 0){const M=E.getById(C.rightParentId);M!==void 0&&(M.children===void 0&&(M.children=[]),M.children.push(C.right))}}}return E3.applyMatches=m,E3}var yp={},CL={},$bt;function SUt(){if($bt)return CL;$bt=1,Object.defineProperty(CL,"__esModule",{value:!0}),CL.ResizeAnimation=void 0;const f=SA();class h extends f.Animation{constructor(w,m,P,g=!1){super(P),this.model=w,this.elementResizes=m,this.reverse=g}tween(w){return this.elementResizes.forEach(m=>{const P=m.element,g=this.reverse?{width:(1-w)*m.toDimension.width+w*m.fromDimension.width,height:(1-w)*m.toDimension.height+w*m.fromDimension.height}:{width:(1-w)*m.fromDimension.width+w*m.toDimension.width,height:(1-w)*m.fromDimension.height+w*m.toDimension.height};P.bounds={x:P.bounds.x,y:P.bounds.y,width:g.width,height:g.height}}),this.model}}return CL.ResizeAnimation=h,CL}var Kbt;function s2e(){if(Kbt)return yp;Kbt=1;var f=yp&&yp.__decorate||function(ce,J,te,fe){var ve=arguments.length,me=ve<3?J:fe===null?fe=Object.getOwnPropertyDescriptor(J,te):fe,ke;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")me=Reflect.decorate(ce,J,te,fe);else for(var tt=ce.length-1;tt>=0;tt--)(ke=ce[tt])&&(me=(ve<3?ke(me):ve>3?ke(J,te,me):ke(J,te))||me);return ve>3&&me&&Object.defineProperty(J,te,me),me},h=yp&&yp.__metadata||function(ce,J){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ce,J)},b=yp&&yp.__param||function(ce,J){return function(te,fe){J(te,fe,ce)}};Object.defineProperty(yp,"__esModule",{value:!0}),yp.UpdateModelCommand=void 0;const w=Zt(),m=jc(),P=Ac(),g=SA(),E=Ca(),C=Qye(),T=Oc(),M=yJ(),_=rN(),I=SS(),O=Xs(),j=Gye(),k=Rb(),x=c2e(),R=SUt(),H=Qn(),F=V3(),$=Iy(),W=Ma(),re=Qh();let ae=class extends E.Command{constructor(J){super(),this.action=J}execute(J){let te;return this.action.newRoot!==void 0?te=J.modelFactory.createRoot(this.action.newRoot):(te=J.modelFactory.createRoot(J.root),this.action.matches!==void 0&&this.applyMatches(te,this.action.matches,J)),this.oldRoot=J.root,this.newRoot=te,this.performUpdate(this.oldRoot,this.newRoot,J)}performUpdate(J,te,fe){if((this.action.animate===void 0||this.action.animate)&&J.id===te.id){let ve;this.action.matches===void 0?ve=new x.ModelMatcher().match(J,te):ve=this.convertToMatchResult(this.action.matches,J,te);const me=this.computeAnimation(te,ve,fe);return me instanceof g.Animation?me.start():me}else return J.type===te.type&&P.Dimension.isValid(J.canvasBounds)&&(te.canvasBounds=J.canvasBounds),(0,F.isViewport)(J)&&(0,F.isViewport)(te)&&(te.zoom=J.zoom,te.scroll=J.scroll),te}applyMatches(J,te,fe){const ve=J.index;for(const me of te)if(me.left!==void 0){const ke=ve.getById(me.left.id);ke instanceof T.SChildElementImpl&&ke.parent.remove(ke)}for(const me of te)if(me.right!==void 0){const ke=fe.modelFactory.createElement(me.right);let tt;me.rightParentId!==void 0&&(tt=ve.getById(me.rightParentId)),tt instanceof T.SParentElementImpl?tt.add(ke):J.add(ke)}}convertToMatchResult(J,te,fe){const ve={};for(const me of J){const ke={};let tt;me.left!==void 0&&(tt=me.left.id,ke.left=te.index.getById(tt),ke.leftParentId=me.leftParentId),me.right!==void 0&&(tt=me.right.id,ke.right=fe.index.getById(tt),ke.rightParentId=me.rightParentId),tt!==void 0&&(ve[tt]=ke)}return ve}computeAnimation(J,te,fe){const ve={fades:[]};(0,x.forEachMatch)(te,(ke,tt)=>{if(tt.left!==void 0&&tt.right!==void 0)this.updateElement(tt.left,tt.right,ve);else if(tt.right!==void 0){const De=tt.right;(0,_.isFadeable)(De)&&(De.opacity=0,ve.fades.push({element:De,type:"in"}))}else if(tt.left instanceof T.SChildElementImpl){const De=tt.left;if((0,_.isFadeable)(De)&&tt.leftParentId!==void 0&&!(0,re.containsSome)(J,De)){const ct=J.index.getById(tt.leftParentId);if(ct instanceof T.SParentElementImpl){const Z=fe.modelFactory.createElement(De);ct.add(Z),ve.fades.push({element:Z,type:"out"})}}}});const me=this.createAnimations(ve,J,fe);return me.length>=2?new g.CompoundAnimation(J,fe,me):me.length===1?me[0]:J}updateElement(J,te,fe){if((0,I.isLocateable)(J)&&(0,I.isLocateable)(te)){const ve=J.position,me=te.position;(!(0,P.almostEquals)(ve.x,me.x)||!(0,P.almostEquals)(ve.y,me.y))&&(fe.moves===void 0&&(fe.moves=[]),fe.moves.push({element:te,fromPosition:ve,toPosition:me}),te.position=ve)}(0,O.isSizeable)(J)&&(0,O.isSizeable)(te)&&(P.Dimension.isValid(te.bounds)?(!(0,P.almostEquals)(J.bounds.width,te.bounds.width)||!(0,P.almostEquals)(J.bounds.height,te.bounds.height))&&(fe.resizes===void 0&&(fe.resizes=[]),fe.resizes.push({element:te,fromDimension:{width:J.bounds.width,height:J.bounds.height},toDimension:{width:te.bounds.width,height:te.bounds.height}})):te.bounds={x:te.bounds.x,y:te.bounds.y,width:J.bounds.width,height:J.bounds.height}),J instanceof W.SRoutableElementImpl&&te instanceof W.SRoutableElementImpl&&this.edgeRouterRegistry&&(fe.edgeMementi===void 0&&(fe.edgeMementi=[]),fe.edgeMementi.push({edge:te,before:this.takeSnapshot(J),after:this.takeSnapshot(te)})),(0,k.isSelectable)(J)&&(0,k.isSelectable)(te)&&(te.selected=J.selected),J instanceof T.SModelRootImpl&&te instanceof T.SModelRootImpl&&(te.canvasBounds=J.canvasBounds),J instanceof j.ViewportRootElementImpl&&te instanceof j.ViewportRootElementImpl&&(te.scroll=J.scroll,te.zoom=J.zoom)}takeSnapshot(J){return this.edgeRouterRegistry.get(J.routerKind).takeSnapshot(J)}createAnimations(J,te,fe){const ve=[];if(J.fades.length>0&&ve.push(new C.FadeAnimation(te,J.fades,fe,!0)),J.moves!==void 0&&J.moves.length>0){const me=new Map;for(const ke of J.moves)me.set(ke.element.id,ke);ve.push(new M.MoveAnimation(te,me,fe,!1))}if(J.resizes!==void 0&&J.resizes.length>0){const me=new Map;for(const ke of J.resizes)me.set(ke.element.id,ke);ve.push(new R.ResizeAnimation(te,me,fe,!1))}return J.edgeMementi!==void 0&&J.edgeMementi.length>0&&ve.push(new M.MorphEdgesAnimation(te,J.edgeMementi,fe,!1)),ve}undo(J){return this.performUpdate(this.newRoot,this.oldRoot,J)}redo(J){return this.performUpdate(this.oldRoot,this.newRoot,J)}};return yp.UpdateModelCommand=ae,ae.KIND=m.UpdateModelAction.KIND,f([(0,w.inject)($.EdgeRouterRegistry),(0,w.optional)(),h("design:type",$.EdgeRouterRegistry)],ae.prototype,"edgeRouterRegistry",void 0),yp.UpdateModelCommand=ae=f([(0,w.injectable)(),b(0,(0,w.inject)(H.TYPES.Action)),h("design:paramtypes",[Object])],ae),yp}var Sl={},bh={},qbt;function _J(){if(qbt)return bh;qbt=1;var f=bh&&bh.__decorate||function(k,x,R,H){var F=arguments.length,$=F<3?x:H===null?H=Object.getOwnPropertyDescriptor(x,R):H,W;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")$=Reflect.decorate(k,x,R,H);else for(var re=k.length-1;re>=0;re--)(W=k[re])&&($=(F<3?W($):F>3?W(x,R,$):W(x,R))||$);return F>3&&$&&Object.defineProperty(x,R,$),$},h=bh&&bh.__metadata||function(k,x){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(k,x)},b=bh&&bh.__param||function(k,x){return function(R,H){x(R,H,k)}},w;Object.defineProperty(bh,"__esModule",{value:!0}),bh.ViewportAnimation=bh.GetViewportCommand=bh.SetViewportCommand=void 0;const m=Zt(),P=jc(),g=Ac(),E=Ca(),C=SA(),T=V3(),M=Qn(),_=Owt();let I=w=class extends E.MergeableCommand{constructor(x){super(),this.action=x,this.newViewport=x.newViewport}execute(x){const R=x.root,H=R.index.getById(this.action.elementId);if(H&&(0,T.isViewport)(H)){this.element=H,this.oldViewport={scroll:this.element.scroll,zoom:this.element.zoom};const{zoomLimits:F,horizontalScrollLimits:$,verticalScrollLimits:W}=this.viewerOptions;return this.newViewport=(0,T.limitViewport)(this.newViewport,R.canvasBounds,$,W,F),this.setViewport(H,this.oldViewport,this.newViewport,x)}return x.root}setViewport(x,R,H,F){if(x&&(0,T.isViewport)(x)){if(this.action.animate)return new j(x,R,H,F).start();x.scroll=H.scroll,x.zoom=H.zoom}return F.root}undo(x){return this.setViewport(this.element,this.newViewport,this.oldViewport,x)}redo(x){return this.setViewport(this.element,this.oldViewport,this.newViewport,x)}merge(x,R){return!this.action.animate&&x instanceof w&&this.element===x.element?(this.newViewport=x.newViewport,!0):!1}};bh.SetViewportCommand=I,I.KIND=P.SetViewportAction.KIND,f([(0,m.inject)(M.TYPES.ViewerOptions),h("design:type",Object)],I.prototype,"viewerOptions",void 0),bh.SetViewportCommand=I=w=f([(0,m.injectable)(),b(0,(0,m.inject)(M.TYPES.Action)),h("design:paramtypes",[Object])],I);let O=class extends _.ModelRequestCommand{constructor(x){super(),this.action=x}retrieveResult(x){const R=x.root;let H;return(0,T.isViewport)(R)?H={scroll:R.scroll,zoom:R.zoom}:H={scroll:g.Point.ORIGIN,zoom:1},P.ViewportResult.create(H,R.canvasBounds,this.action.requestId)}};bh.GetViewportCommand=O,O.KIND=P.GetViewportAction.KIND,bh.GetViewportCommand=O=f([b(0,(0,m.inject)(M.TYPES.Action)),h("design:paramtypes",[Object])],O);class j extends C.Animation{constructor(x,R,H,F){super(F),this.element=x,this.oldViewport=R,this.newViewport=H,this.context=F,this.zoomFactor=Math.log(H.zoom/R.zoom)}tween(x,R){return this.element.scroll={x:(1-x)*this.oldViewport.scroll.x+x*this.newViewport.scroll.x,y:(1-x)*this.oldViewport.scroll.y+x*this.newViewport.scroll.y},this.element.zoom=this.oldViewport.zoom*Math.exp(x*this.zoomFactor),R.root}}return bh.ViewportAnimation=j,bh}var Hbt;function u2e(){if(Hbt)return Sl;Hbt=1;var f=Sl&&Sl.__decorate||function(F,$,W,re){var ae=arguments.length,ce=ae<3?$:re===null?re=Object.getOwnPropertyDescriptor($,W):re,J;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(F,$,W,re);else for(var te=F.length-1;te>=0;te--)(J=F[te])&&(ce=(ae<3?J(ce):ae>3?J($,W,ce):J($,W))||ce);return ae>3&&ce&&Object.defineProperty($,W,ce),ce},h=Sl&&Sl.__metadata||function(F,$){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(F,$)},b=Sl&&Sl.__param||function(F,$){return function(W,re){$(W,re,F)}};Object.defineProperty(Sl,"__esModule",{value:!0}),Sl.CenterKeyboardListener=Sl.FitToScreenCommand=Sl.CenterCommand=Sl.BoundsAwareViewportCommand=void 0;const w=jc(),m=Ac(),P=z3(),g=Oc(),E=Ca(),C=H3(),T=Xs(),M=Rb(),_=_J(),I=V3(),O=Zt(),j=Qn();let k=class extends E.Command{constructor($){super(),this.animate=$}initialize($){if(!(0,I.isViewport)($))return;this.oldViewport={scroll:$.scroll,zoom:$.zoom};const W=[];if(this.getElementIds().forEach(re=>{const ae=$.index.getById(re);ae&&(0,T.isBoundsAware)(ae)&&W.push(this.boundsInViewport(ae,ae.bounds,$))}),W.length===0&&$.index.all().forEach(re=>{(0,M.isSelectable)(re)&&re.selected&&(0,T.isBoundsAware)(re)&&W.push(this.boundsInViewport(re,re.bounds,$))}),W.length===0&&$.index.all().forEach(re=>{(0,T.isBoundsAware)(re)&&W.push(this.boundsInViewport(re,re.bounds,$))}),W.length!==0){const re=W.reduce((ae,ce)=>m.Bounds.combine(ae,ce));if(m.Dimension.isValid(re)){const ae=this.getNewViewport(re,$);if(ae){const{zoomLimits:ce,horizontalScrollLimits:J,verticalScrollLimits:te}=this.viewerOptions;this.newViewport=(0,I.limitViewport)(ae,$.canvasBounds,J,te,ce)}}}}boundsInViewport($,W,re){return $ instanceof g.SChildElementImpl&&$.parent!==re?this.boundsInViewport($.parent,$.parent.localToParent(W),re):W}execute($){return this.initialize($.root),this.redo($)}undo($){const W=$.root;if((0,I.isViewport)(W)&&this.newViewport!==void 0&&!this.equal(this.newViewport,this.oldViewport)){if(this.animate)return new _.ViewportAnimation(W,this.newViewport,this.oldViewport,$).start();W.scroll=this.oldViewport.scroll,W.zoom=this.oldViewport.zoom}return W}redo($){const W=$.root;if((0,I.isViewport)(W)&&this.newViewport!==void 0&&!this.equal(this.newViewport,this.oldViewport)){if(this.animate)return new _.ViewportAnimation(W,this.oldViewport,this.newViewport,$).start();W.scroll=this.newViewport.scroll,W.zoom=this.newViewport.zoom}return W}equal($,W){return(0,m.almostEquals)($.zoom,W.zoom)&&(0,m.almostEquals)($.scroll.x,W.scroll.x)&&(0,m.almostEquals)($.scroll.y,W.scroll.y)}};Sl.BoundsAwareViewportCommand=k,f([(0,O.inject)(j.TYPES.ViewerOptions),h("design:type",Object)],k.prototype,"viewerOptions",void 0),Sl.BoundsAwareViewportCommand=k=f([(0,O.injectable)(),h("design:paramtypes",[Boolean])],k);let x=class extends k{constructor($){super($.animate),this.action=$}getElementIds(){return this.action.elementIds}getNewViewport($,W){if(!m.Dimension.isValid(W.canvasBounds))return;let re=1;this.action.retainZoom&&(0,I.isViewport)(W)?re=W.zoom:this.action.zoomScale&&(re=this.action.zoomScale);const ae=m.Bounds.center($);return{scroll:{x:ae.x-.5*W.canvasBounds.width/re,y:ae.y-.5*W.canvasBounds.height/re},zoom:re}}};Sl.CenterCommand=x,x.KIND=w.CenterAction.KIND,Sl.CenterCommand=x=f([b(0,(0,O.inject)(j.TYPES.Action)),h("design:paramtypes",[Object])],x);let R=class extends k{constructor($){super($.animate),this.action=$}getElementIds(){return this.action.elementIds}getNewViewport($,W){if(!m.Dimension.isValid(W.canvasBounds))return;const re=m.Bounds.center($),ae=this.action.padding===void 0?0:2*this.action.padding;let ce=Math.min(W.canvasBounds.width/($.width+ae),W.canvasBounds.height/($.height+ae));return this.action.maxZoom!==void 0&&(ce=Math.min(ce,this.action.maxZoom)),ce===1/0&&(ce=1),{scroll:{x:re.x-.5*W.canvasBounds.width/ce,y:re.y-.5*W.canvasBounds.height/ce},zoom:ce}}};Sl.FitToScreenCommand=R,R.KIND=w.FitToScreenAction.KIND,Sl.FitToScreenCommand=R=f([b(0,(0,O.inject)(j.TYPES.Action)),h("design:paramtypes",[Object])],R);class H extends C.KeyListener{keyDown($,W){return(0,P.matchesKeystroke)(W,"KeyC","ctrlCmd","shift")?[w.CenterAction.create([])]:(0,P.matchesKeystroke)(W,"KeyF","ctrlCmd","shift")?[w.FitToScreenAction.create([])]:[]}}return Sl.CenterKeyboardListener=H,Sl}var _p={},zbt;function Rwt(){if(zbt)return _p;zbt=1;var f=_p&&_p.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=_p&&_p.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=_p&&_p.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(_p,"__esModule",{value:!0}),_p.BringToFrontCommand=void 0;const w=Zt(),m=jc(),P=Qn(),g=Oc(),E=Ca(),C=Ma();let T=class extends E.Command{constructor(_){super(),this.action=_,this.selected=[]}execute(_){const I=_.root;return this.action.elementIDs.forEach(O=>{const j=I.index.getById(O);j instanceof C.SRoutableElementImpl&&(j.source&&this.addToSelection(j.source),j.target&&this.addToSelection(j.target)),j instanceof g.SChildElementImpl&&this.addToSelection(j),this.includeConnectedEdges(j)}),this.redo(_)}includeConnectedEdges(_){if(_ instanceof C.SConnectableElementImpl&&(_.incomingEdges.forEach(I=>this.addToSelection(I)),_.outgoingEdges.forEach(I=>this.addToSelection(I))),_ instanceof g.SParentElementImpl)for(const I of _.children)this.includeConnectedEdges(I)}addToSelection(_){this.selected.push({element:_,index:_.parent.children.indexOf(_)})}undo(_){for(let I=this.selected.length-1;I>=0;I--){const O=this.selected[I],j=O.element;j.parent.move(j,O.index)}return _.root}redo(_){for(let I=0;I{(0,P.configureCommand)({bind:M,isBound:I},b.SetBoundsCommand),(0,P.configureCommand)({bind:M,isBound:I},b.RequestBoundsCommand),M(w.HiddenBoundsUpdater).toSelf().inSingletonScope(),M(h.TYPES.HiddenVNodePostprocessor).toService(w.HiddenBoundsUpdater),M(h.TYPES.Layouter).to(m.Layouter).inSingletonScope(),M(h.TYPES.LayoutRegistry).to(m.LayoutRegistry).inSingletonScope(),(0,m.configureLayout)({bind:M,isBound:I},E.VBoxLayouter.KIND,E.VBoxLayouter),(0,m.configureLayout)({bind:M,isBound:I},g.HBoxLayouter.KIND,g.HBoxLayouter),(0,m.configureLayout)({bind:M,isBound:I},C.StackLayouter.KIND,C.StackLayouter)});return nX.default=T,nX}var iX={},Gbt;function Lwt(){if(Gbt)return iX;Gbt=1,Object.defineProperty(iX,"__esModule",{value:!0});const f=Zt(),h=bJ(),b=new f.ContainerModule(w=>{w(h.ButtonHandlerRegistry).toSelf().inSingletonScope()});return iX.default=b,iX}var rX={},Ubt;function Nwt(){if(Ubt)return rX;Ubt=1,Object.defineProperty(rX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Hye(),w=lwt(),m=new f.ContainerModule(P=>{P(w.CommandPalette).toSelf().inSingletonScope(),P(h.TYPES.IUIExtension).toService(w.CommandPalette),P(w.CommandPaletteKeyListener).toSelf().inSingletonScope(),P(h.TYPES.KeyListener).toService(w.CommandPaletteKeyListener),P(b.CommandPaletteActionProviderRegistry).toSelf().inSingletonScope(),P(h.TYPES.ICommandPaletteActionProviderRegistry).toService(b.CommandPaletteActionProviderRegistry)});return rX.default=m,rX}var oX={},Wbt;function Fwt(){if(Wbt)return oX;Wbt=1,Object.defineProperty(oX,"__esModule",{value:!0});const f=Zt(),h=zye(),b=fwt(),w=Qn(),m=new f.ContainerModule(P=>{P(w.TYPES.IContextMenuServiceProvider).toProvider(g=>()=>new Promise((E,C)=>{g.container.isBound(w.TYPES.IContextMenuService)?E(g.container.get(w.TYPES.IContextMenuService)):C()})),P(b.ContextMenuMouseListener).toSelf().inSingletonScope(),P(w.TYPES.MouseListener).toService(b.ContextMenuMouseListener),P(w.TYPES.IContextMenuProviderRegistry).to(h.ContextMenuProviderRegistry)});return oX.default=m,oX}var cX={},Ybt;function Bwt(){if(Ybt)return cX;Ybt=1,Object.defineProperty(cX,"__esModule",{value:!0});const f=iN(),h=Zt(),b=Zye(),w=ywt(),m=Qn(),P=_wt(),g=new h.ContainerModule((E,C,T)=>{(0,f.configureModelElement)({bind:E,isBound:T},"marker",b.SIssueMarkerImpl,w.IssueMarkerView),E(P.DecorationPlacer).toSelf().inSingletonScope(),E(m.TYPES.IVNodePostprocessor).toService(P.DecorationPlacer)});return cX.default=g,cX}var sX={},Xbt;function PUt(){if(Xbt)return sX;Xbt=1,Object.defineProperty(sX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=e2e(),w=new f.ContainerModule(m=>{m(b.IntersectionFinder).toSelf().inSingletonScope(),m(h.TYPES.IEdgeRoutePostprocessor).toService(b.IntersectionFinder)});return sX.default=w,sX}var uX={},Jbt;function MUt(){if(Jbt)return uX;Jbt=1,Object.defineProperty(uX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Pwt(),w=Mwt(),m=new f.ContainerModule(P=>{P(b.JunctionFinder).toSelf().inSingletonScope(),P(h.TYPES.IEdgeRoutePostprocessor).toService(b.JunctionFinder),P(w.JunctionPostProcessor).toSelf().inSingletonScope(),P(h.TYPES.IVNodePostprocessor).toService(w.JunctionPostProcessor),P(h.TYPES.HiddenVNodePostprocessor).toService(w.JunctionPostProcessor)});return uX.default=m,uX}var aX={},Qbt;function $wt(){if(Qbt)return aX;Qbt=1,Object.defineProperty(aX,"__esModule",{value:!0});const f=Zt(),h=bJ(),b=wwt(),w=new f.ContainerModule((m,P,g)=>{(0,h.configureButtonHandler)({bind:m,isBound:g},b.ExpandButtonHandler.TYPE,b.ExpandButtonHandler)});return aX.default=w,aX}var lX={},Zbt;function Kwt(){if(Zbt)return lX;Zbt=1,Object.defineProperty(lX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=mwt(),w=Jye(),m=kb(),P=new f.ContainerModule((g,E,C)=>{g(b.ExportSvgKeyListener).toSelf().inSingletonScope(),g(h.TYPES.KeyListener).toService(b.ExportSvgKeyListener),g(b.ExportSvgPostprocessor).toSelf().inSingletonScope(),g(h.TYPES.HiddenVNodePostprocessor).toService(b.ExportSvgPostprocessor),(0,m.configureCommand)({bind:g,isBound:C},b.ExportSvgCommand),g(h.TYPES.SvgExporter).to(w.SvgExporter).inSingletonScope()});return lX.default=P,lX}var fX={},e0t;function qwt(){if(e0t)return fX;e0t=1,Object.defineProperty(fX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Qye(),w=new f.ContainerModule(m=>{m(b.ElementFader).toSelf().inSingletonScope(),m(h.TYPES.IVNodePostprocessor).toService(b.ElementFader)});return fX.default=w,fX}var hX={},wy={},t0t;function CUt(){if(t0t)return wy;t0t=1;var f=wy&&wy.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M},h=wy&&wy.__metadata||function(P,g){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(P,g)};Object.defineProperty(wy,"__esModule",{value:!0}),wy.PopupPositionUpdater=void 0;const b=Zt(),w=Qn();let m=class{decorate(g,E){return g}postUpdate(){const g=document.getElementById(this.options.popupDiv);if(g!==null&&typeof window<"u"){const E=g.getBoundingClientRect();window.innerHeight{M(w.PopupPositionUpdater).toSelf().inSingletonScope(),M(h.TYPES.PopupVNodePostprocessor).toService(w.PopupPositionUpdater),M(b.HoverMouseListener).toSelf().inSingletonScope(),M(h.TYPES.MouseListener).toService(b.HoverMouseListener),M(b.PopupHoverMouseListener).toSelf().inSingletonScope(),M(h.TYPES.PopupMouseListener).toService(b.PopupHoverMouseListener),M(b.HoverKeyListener).toSelf().inSingletonScope(),M(h.TYPES.KeyListener).toService(b.HoverKeyListener),M(h.TYPES.HoverState).toConstantValue({mouseOverTimer:void 0,mouseOutTimer:void 0,popupOpen:!1,previousPopupElement:void 0}),M(b.ClosePopupActionHandler).toSelf().inSingletonScope();const O={bind:M,isBound:I};(0,m.configureCommand)(O,b.HoverFeedbackCommand),(0,m.configureCommand)(O,b.SetPopupModelCommand),(0,P.configureActionHandler)(O,b.SetPopupModelCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,g.FitToScreenCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,g.CenterCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,E.SetViewportCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,C.MoveCommand.KIND,b.ClosePopupActionHandler)});return hX.default=T,hX}var dX={},i0t;function zwt(){if(i0t)return dX;i0t=1,Object.defineProperty(dX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=yJ(),w=kb(),m=new f.ContainerModule((P,g,E)=>{P(b.MoveMouseListener).toSelf().inSingletonScope(),P(h.TYPES.MouseListener).toService(b.MoveMouseListener),(0,w.configureCommand)({bind:P,isBound:E},b.MoveCommand),P(b.LocationPostprocessor).toSelf().inSingletonScope(),P(h.TYPES.IVNodePostprocessor).toService(b.LocationPostprocessor),P(h.TYPES.HiddenVNodePostprocessor).toService(b.LocationPostprocessor)});return dX.default=m,dX}var gX={},r0t;function Vwt(){if(r0t)return gX;r0t=1,Object.defineProperty(gX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Iwt(),w=new f.ContainerModule(m=>{m(b.OpenMouseListener).toSelf().inSingletonScope(),m(h.TYPES.MouseListener).toService(b.OpenMouseListener)});return gX.default=w,gX}var bX={},o0t;function Gwt(){if(o0t)return bX;o0t=1,Object.defineProperty(bX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=r2e(),w=wJ(),m=jwt(),P=n2e(),g=MS(),E=Iy(),C=i2e(),T=Twt(),M=kb(),_=new f.ContainerModule((I,O,j)=>{I(E.EdgeRouterRegistry).toSelf().inSingletonScope(),I(g.AnchorComputerRegistry).toSelf().inSingletonScope(),I(b.ManhattanEdgeRouter).toSelf().inSingletonScope(),I(h.TYPES.IEdgeRouter).toService(b.ManhattanEdgeRouter),I(m.ManhattanEllipticAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(m.ManhattanEllipticAnchor),I(m.ManhattanRectangularAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(m.ManhattanRectangularAnchor),I(m.ManhattanDiamondAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(m.ManhattanDiamondAnchor),I(w.PolylineEdgeRouter).toSelf().inSingletonScope(),I(h.TYPES.IEdgeRouter).toService(w.PolylineEdgeRouter),I(P.EllipseAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(P.EllipseAnchor),I(P.RectangleAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(P.RectangleAnchor),I(P.DiamondAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(P.DiamondAnchor),I(C.BezierEdgeRouter).toSelf().inSingletonScope(),I(h.TYPES.IEdgeRouter).toService(C.BezierEdgeRouter),I(T.BezierEllipseAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(T.BezierEllipseAnchor),I(T.BezierRectangleAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(T.BezierRectangleAnchor),I(T.BezierDiamondAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(T.BezierDiamondAnchor),(0,M.configureCommand)({bind:I,isBound:j},C.AddRemoveBezierSegmentCommand)});return bX.default=_,bX}var pX={},c0t;function Uwt(){if(c0t)return pX;c0t=1,Object.defineProperty(pX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Dwt(),w=kb(),m=new f.ContainerModule((P,g,E)=>{(0,w.configureCommand)({bind:P,isBound:E},b.SelectCommand),(0,w.configureCommand)({bind:P,isBound:E},b.SelectAllCommand),(0,w.configureCommand)({bind:P,isBound:E},b.GetSelectionCommand),P(b.SelectKeyboardListener).toSelf().inSingletonScope(),P(h.TYPES.KeyListener).toService(b.SelectKeyboardListener),P(b.SelectMouseListener).toSelf().inSingletonScope(),P(h.TYPES.MouseListener).toService(b.SelectMouseListener)});return pX.default=m,pX}var wX={},s0t;function Wwt(){if(s0t)return wX;s0t=1,Object.defineProperty(wX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=kwt(),w=new f.ContainerModule(m=>{m(b.UndoRedoKeyListener).toSelf().inSingletonScope(),m(h.TYPES.KeyListener).toService(b.UndoRedoKeyListener)});return wX.default=w,wX}var mX={},u0t;function Ywt(){if(u0t)return mX;u0t=1,Object.defineProperty(mX,"__esModule",{value:!0});const f=Zt(),h=kb(),b=s2e(),w=new f.ContainerModule((m,P,g)=>{(0,h.configureCommand)({bind:m,isBound:g},b.UpdateModelCommand)});return mX.default=w,mX}var vX={},a0t;function Xwt(){if(a0t)return vX;a0t=1,Object.defineProperty(vX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=u2e(),w=_J(),m=o2e(),P=Wye(),g=kb(),E=new f.ContainerModule((C,T,M)=>{(0,g.configureCommand)({bind:C,isBound:M},b.CenterCommand),(0,g.configureCommand)({bind:C,isBound:M},b.FitToScreenCommand),(0,g.configureCommand)({bind:C,isBound:M},w.SetViewportCommand),(0,g.configureCommand)({bind:C,isBound:M},w.GetViewportCommand),C(b.CenterKeyboardListener).toSelf().inSingletonScope(),C(h.TYPES.KeyListener).toService(b.CenterKeyboardListener),C(m.ScrollMouseListener).toSelf().inSingletonScope(),C(P.ZoomMouseListener).toSelf().inSingletonScope(),C(h.TYPES.MouseListener).toService(m.ScrollMouseListener),C(h.TYPES.MouseListener).toService(P.ZoomMouseListener)});return vX.default=E,vX}var yX={},l0t;function Jwt(){if(l0t)return yX;l0t=1,Object.defineProperty(yX,"__esModule",{value:!0});const f=Zt(),h=kb(),b=Rwt(),w=new f.ContainerModule((m,P,g)=>{(0,h.configureCommand)({bind:m,isBound:g},b.BringToFrontCommand)});return yX.default=w,yX}var Go={},f0t;function IUt(){if(f0t)return Go;f0t=1;var f=Go&&Go.__decorate||function(ce,J,te,fe){var ve=arguments.length,me=ve<3?J:fe===null?fe=Object.getOwnPropertyDescriptor(J,te):fe,ke;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")me=Reflect.decorate(ce,J,te,fe);else for(var tt=ce.length-1;tt>=0;tt--)(ke=ce[tt])&&(me=(ve<3?ke(me):ve>3?ke(J,te,me):ke(J,te))||me);return ve>3&&me&&Object.defineProperty(J,te,me),me},h=Go&&Go.__metadata||function(ce,J){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ce,J)};Object.defineProperty(Go,"__esModule",{value:!0}),Go.SBezierControlHandleView=Go.SBezierCreateHandleView=Go.SCompartmentView=Go.SLabelView=Go.SRoutingHandleView=Go.BezierCurveEdgeView=Go.PolylineEdgeViewWithGapsOnIntersections=Go.JumpingPolylineEdgeView=Go.PolylineEdgeView=Go.SGraphView=void 0;const b=Zt(),w=Ac(),m=LM(),P=mh(),g=gJ(),E=e2e(),C=cN(),T=Ma(),M=Iy(),_=Awt(),I=Cy(),O=PS();let j=class{render(J,te){const fe=this.edgeRouterRegistry.routeAllChildren(J),ve=`scale(${J.zoom}) translate(${-J.scroll.x},${-J.scroll.y})`;return(0,I.svg)("svg",{"class-sprotty-graph":!0},(0,I.svg)("g",{transform:ve},te.renderChildren(J,{edgeRouting:fe})))}};Go.SGraphView=j,f([(0,b.inject)(M.EdgeRouterRegistry),h("design:type",M.EdgeRouterRegistry)],j.prototype,"edgeRouterRegistry",void 0),Go.SGraphView=j=f([(0,b.injectable)()],j);let k=class extends _.RoutableView{render(J,te,fe){const ve=this.edgeRouterRegistry.route(J,fe);return ve.length===0?this.renderDanglingEdge("Cannot compute route",J,te):this.isVisible(J,ve,te)?(0,I.svg)("g",{"class-sprotty-edge":!0,"class-mouseover":J.hoverFeedback},this.renderLine(J,ve,te,fe),this.renderAdditionals(J,ve,te),this.renderJunctionPoints(J,ve,te,fe),te.renderChildren(J,{route:ve})):J.children.length===0?void 0:(0,I.svg)("g",null,te.renderChildren(J,{route:ve}))}renderJunctionPoints(J,te,fe,ve){const ke=[];for(let tt=1;tt0)return(0,I.svg)("g",{"class-sprotty-junction":!0},ke)}renderLine(J,te,fe,ve){const me=te[0];let ke=`M ${me.x},${me.y}`;for(let tt=1;tt=Math.abs(te.slopeOrMax)}createGapPath(J,te){const fe=w.Point.shiftTowards(J,te.p1,this.skipOffsetBefore),ve=w.Point.shiftTowards(J,te.p2,this.skipOffsetAfter);return` L ${fe.x},${fe.y} M ${ve.x},${ve.y}`}};Go.PolylineEdgeViewWithGapsOnIntersections=R,Go.PolylineEdgeViewWithGapsOnIntersections=R=f([(0,b.injectable)()],R);let H=class extends _.RoutableView{render(J,te,fe){const ve=this.edgeRouterRegistry.route(J,fe);return ve.length===0?this.renderDanglingEdge("Cannot compute route",J,te):this.isVisible(J,ve,te)?(0,I.svg)("g",{"class-sprotty-edge":!0,"class-mouseover":J.hoverFeedback},this.renderLine(J,ve,te,fe),this.renderAdditionals(J,ve,te),te.renderChildren(J,{route:ve})):J.children.length===0?void 0:(0,I.svg)("g",null,te.renderChildren(J,{route:ve}))}renderLine(J,te,fe,ve){let me="";if(te.length>=4){me+=this.buildMainSegment(te);const ke=te.length-4;if(ke>0&&ke%3===0)for(let tt=4;tt{g(b.TYPES.ModelSourceProvider).toProvider(T=>()=>new Promise(M=>{M(T.container.get(b.TYPES.ModelSource))})),(0,h.configureCommand)({bind:g,isBound:C},w.CommitModelCommand),g(b.TYPES.IActionHandlerInitializer).toService(b.TYPES.ModelSource),g(m.ComputedBoundsApplicator).toSelf().inSingletonScope()});return _X.default=P,_X}var d0t;function TUt(){if(d0t)return IM;d0t=1;var f=IM&&IM.__importDefault||function(ae){return ae&&ae.__esModule?ae:{default:ae}};Object.defineProperty(IM,"__esModule",{value:!0}),IM.loadDefaultModules=void 0;const h=f(nwt()),b=f(Qwt()),w=f(xwt()),m=f(Lwt()),P=f(Nwt()),g=f(Fwt()),E=f(Bwt()),C=f(Rve()),T=pwt(),M=f($wt()),_=f(Kwt()),I=f(qwt()),O=f(Hwt()),j=f(zwt()),k=f(Vwt()),x=f(Gwt()),R=f(Uwt()),H=f(Wwt()),F=f(Ywt()),$=f(Xwt()),W=f(Jwt());function re(ae,ce){const J=[h.default,b.default,w.default,m.default,P.default,g.default,E.default,T.edgeEditModule,C.default,M.default,_.default,I.default,O.default,T.labelEditModule,T.labelEditUiModule,j.default,k.default,x.default,R.default,H.default,F.default,$.default,W.default];if(ce&&ce.exclude)for(const te of ce.exclude){const fe=J.indexOf(te);fe>=0&&J.splice(fe,1)}ae.load(...J)}return IM.loadDefaultModules=re,IM}var Ob={},EX={},g0t;function jUt(){if(g0t)return EX;g0t=1,Object.defineProperty(EX,"__esModule",{value:!0});const f=nN;function h(k){const x={},R=(W,re)=>{if(re!=="style"&&re!=="class"){const ae=E(k[re]);W?W[re]=ae:W={[re]:ae}}return W},H=Object.keys(k).reduce(R,null);H&&(x.attrs=H);const F=b(k);F&&(x.style=F);const $=w(k);return $&&(x.class=$),x}function b(k){const x=(R,H)=>{const F=H.split(":"),$=m(F[0].trim());if($){const W=F[1].replace("!important","").trim();R?R[$]=W:R={[$]:W}}return R};try{return k.style.split(";").reduce(x,null)}catch{return null}}function w(k){const x=(R,H)=>(H=H.trim(),H&&(R?R[H]=!0:R={[H]:!0}),R);try{return k.class.split(" ").reduce(x,null)}catch{return null}}function m(k){return k=k.replace(/-(\w)/g,function(H,F){return F.toUpperCase()}),`${k.charAt(0).toLowerCase()}${k.substring(1)}`}const P=new RegExp("&[a-z0-9#]+;","gi");let g=null;function E(k){return g||(g=document.createElement("div")),k.replace(P,x=>g===null?"":(g.innerHTML=x,g.textContent===null?"":g.textContent))}function C(k,x){let R=k,H=null;const F=[],$=W=>{const re=W.firstChild;re!==null&&(H=W),R=re};for(x(R,H),$(R);;){for(;R;)F.push(R),x(R,H),$(R);const W=F.pop();if(R=W||null,!F.length)break;if(H=F[F.length-1],R){const re=R.nextSibling;re==null&&(H=F[F.length-1]),R=re}}}let T=null;const M=new Map;let _=!1;function I(k,x){let R;switch(x!==null&&(R=M.get(x)),k?.nodeType){case 1:{if(R===void 0)return;R.children=R.children?R.children:[];const H=R.children,F=k.attributes,$={};for(let re=0;re0?F[F.length-1]:null;!_&&typeof $!="string"&&$!==null&&$.sel===void 0?$.text=$.text+H:F.push((0,f.vnode)(void 0,void 0,void 0,H,void 0)),_=!1}break}case 8:{_=!0;break}case 9:{T=(0,f.vnode)(void 0,void 0,[],void 0,void 0),M.set(k,T);break}}}function O(k){const x=k?.children;return typeof x>"u"?null:x.length===1&&typeof x[0]!="string"?x[0]:null}function j(k){var x,R;const H=new window.DOMParser;if(H===void 0||k===void 0||k==="")return null;const F=H.parseFromString(k,"application/xml");if(((x=F?.firstChild)===null||x===void 0?void 0:x.nodeName)==="parsererror"){const $=`${(R=F?.firstChild)===null||R===void 0?void 0:R.textContent}`;return(0,f.h)("parsererror",[$])}return _=!1,T=null,C(F,I),T===null?null:O(T)}return EX.default=j,EX}var as={},b0t;function Zwt(){if(b0t)return as;b0t=1,Object.defineProperty(as,"__esModule",{value:!0}),as.ForeignObjectElement=as.ForeignObjectElementImpl=as.ShapedPreRenderedElement=as.ShapedPreRenderedElementImpl=as.PreRenderedElement=as.PreRenderedElementImpl=as.HtmlRoot=as.HtmlRootImpl=as.RectangularPort=as.CircularPort=as.DiamondNode=as.RectangularNode=as.CircularNode=void 0;const f=Ac(),h=Oc(),b=Xs(),w=SS(),m=Rb(),P=MA(),g=MS();class E extends P.SNodeImpl{get anchorKind(){return g.ELLIPTIC_ANCHOR_KIND}}as.CircularNode=E;class C extends P.SNodeImpl{get anchorKind(){return g.RECTANGULAR_ANCHOR_KIND}}as.RectangularNode=C;class T extends P.SNodeImpl{get anchorKind(){return g.DIAMOND_ANCHOR_KIND}}as.DiamondNode=T;class M extends P.SPortImpl{get anchorKind(){return g.ELLIPTIC_ANCHOR_KIND}}as.CircularPort=M;class _ extends P.SPortImpl{get anchorKind(){return g.RECTANGULAR_ANCHOR_KIND}}as.RectangularPort=_;class I extends h.SModelRootImpl{constructor(){super(...arguments),this.classes=[]}}as.HtmlRootImpl=I,as.HtmlRoot=I;class O extends h.SChildElementImpl{}as.PreRenderedElementImpl=O,as.PreRenderedElement=O;class j extends O{constructor(){super(...arguments),this.position=f.Point.ORIGIN,this.size=f.Dimension.EMPTY,this.selected=!1,this.alignment=f.Point.ORIGIN}get bounds(){return{x:this.position.x,y:this.position.y,width:this.size.width,height:this.size.height}}set bounds(R){this.position={x:R.x,y:R.y},this.size={width:R.width,height:R.height}}}as.ShapedPreRenderedElementImpl=j,j.DEFAULT_FEATURES=[w.moveFeature,b.boundsFeature,m.selectFeature,b.alignFeature],as.ShapedPreRenderedElement=j;class k extends j{get bounds(){return f.Dimension.isValid(this.size)?{x:this.position.x,y:this.position.y,width:this.size.width,height:this.size.height}:(0,b.isBoundsAware)(this.parent)?{x:this.position.x,y:this.position.y,width:this.parent.bounds.width,height:this.parent.bounds.height}:f.Bounds.EMPTY}}return as.ForeignObjectElementImpl=k,as.ForeignObjectElement=k,as}var p0t;function AUt(){if(p0t)return Ob;p0t=1;var f=Ob&&Ob.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Ob&&Ob.__importDefault||function(M){return M&&M.__esModule?M:{default:M}};Object.defineProperty(Ob,"__esModule",{value:!0}),Ob.ForeignObjectView=Ob.PreRenderedView=void 0;const b=Cy(),w=Zt(),m=h(jUt()),P=mh(),g=gJ(),E=Zwt();let C=class extends g.ShapeView{render(_,I){if(_ instanceof E.ShapedPreRenderedElementImpl&&!this.isVisible(_,I))return;const O=(0,m.default)(_.code);if(O!==null)return this.correctNamespace(O),O}correctNamespace(_){(_.sel==="svg"||_.sel==="g")&&(0,P.setNamespace)(_,"http://www.w3.org/2000/svg")}};Ob.PreRenderedView=C,Ob.PreRenderedView=C=f([(0,w.injectable)()],C);let T=class{render(_,I){const O=(0,m.default)(_.code);if(O===null)return;const j=(0,b.svg)("g",null,(0,b.svg)("foreignObject",{requiredFeatures:"http://www.w3.org/TR/SVG11/feature#Extensibility",height:_.bounds.height,width:_.bounds.width,x:0,y:0},O),I.renderChildren(_));return(0,P.setAttr)(j,"class",_.type),(0,P.setNamespace)(O,_.namespace),j}};return Ob.ForeignObjectView=T,Ob.ForeignObjectView=T=f([(0,w.injectable)()],T),Ob}var iS={},w0t;function OUt(){if(w0t)return iS;w0t=1;var f=iS&&iS.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(iS,"__esModule",{value:!0}),iS.HtmlRootView=void 0;const h=Cy(),b=Zt(),w=mh();let m=class{render(g,E){const C=(0,h.html)("div",null,E.renderChildren(g));for(const T of g.classes)(0,w.setClass)(C,T,!0);return C}};return iS.HtmlRootView=m,iS.HtmlRootView=m=f([(0,b.injectable)()],m),iS}var Ep={},DX={exports:{}},DUt=DX.exports,m0t;function emt(){return m0t||(m0t=1,(function(f,h){(function(b,w){w()})(DUt,function(){function b(T,M){return typeof M>"u"?M={autoBom:!1}:typeof M!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),M={autoBom:!M}),M.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(T.type)?new Blob(["\uFEFF",T],{type:T.type}):T}function w(T,M,_){var I=new XMLHttpRequest;I.open("GET",T),I.responseType="blob",I.onload=function(){C(I.response,M,_)},I.onerror=function(){console.error("could not download file")},I.send()}function m(T){var M=new XMLHttpRequest;M.open("HEAD",T,!1);try{M.send()}catch{}return 200<=M.status&&299>=M.status}function P(T){try{T.dispatchEvent(new MouseEvent("click"))}catch{var M=document.createEvent("MouseEvents");M.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),T.dispatchEvent(M)}}var g=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof fS=="object"&&fS.global===fS?fS:void 0,E=g.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),C=g.saveAs||(typeof window!="object"||window!==g?function(){}:"download"in HTMLAnchorElement.prototype&&!E?function(T,M,_){var I=g.URL||g.webkitURL,O=document.createElement("a");M=M||T.name||"download",O.download=M,O.rel="noopener",typeof T=="string"?(O.href=T,O.origin===location.origin?P(O):m(O.href)?w(T,M,_):P(O,O.target="_blank")):(O.href=I.createObjectURL(T),setTimeout(function(){I.revokeObjectURL(O.href)},4e4),setTimeout(function(){P(O)},0))}:"msSaveOrOpenBlob"in navigator?function(T,M,_){if(M=M||T.name||"download",typeof T!="string")navigator.msSaveOrOpenBlob(b(T,_),M);else if(m(T))w(T,M,_);else{var I=document.createElement("a");I.href=T,I.target="_blank",setTimeout(function(){P(I)})}}:function(T,M,_,I){if(I=I||open("","_blank"),I&&(I.document.title=I.document.body.innerText="downloading..."),typeof T=="string")return w(T,M,_);var O=T.type==="application/octet-stream",j=/constructor/i.test(g.HTMLElement)||g.safari,k=/CriOS\/[\d]+/.test(navigator.userAgent);if((k||O&&j||E)&&typeof FileReader<"u"){var x=new FileReader;x.onloadend=function(){var F=x.result;F=k?F:F.replace(/^data:[^;]*;/,"data:attachment/file;"),I?I.location.href=F:location=F,I=null},x.readAsDataURL(T)}else{var R=g.URL||g.webkitURL,H=R.createObjectURL(T);I?I.location=H:location.href=H,I=null,setTimeout(function(){R.revokeObjectURL(H)},4e4)}});g.saveAs=C.saveAs=C,f.exports=C})})(DX)),DX.exports}var v0t;function tmt(){if(v0t)return Ep;v0t=1;var f=Ep&&Ep.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=Ep&&Ep.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(Ep,"__esModule",{value:!0}),Ep.DiagramServerProxy=Ep.ServerStatusAction=void 0;const b=emt(),w=Zt(),m=jc(),P=xye(),g=Qn(),E=$ye(),C=s2e(),T=CA();class M{constructor(){this.kind=M.KIND}}Ep.ServerStatusAction=M,M.KIND="serverStatus";const _="__receivedFromServer";let I=class extends T.ModelSource{constructor(){super(...arguments),this.currentRoot={type:"NONE",id:"ROOT"}}get model(){return this.currentRoot}initialize(j){super.initialize(j),j.register(m.ComputedBoundsAction.KIND,this),j.register(E.RequestBoundsCommand.KIND,this),j.register(m.RequestPopupModelAction.KIND,this),j.register(m.CollapseExpandAction.KIND,this),j.register(m.CollapseExpandAllAction.KIND,this),j.register(m.OpenAction.KIND,this),j.register(M.KIND,this),this.clientId||(this.clientId=this.viewerOptions.baseDiv)}handle(j){this.handleLocally(j)&&this.forwardToServer(j)}forwardToServer(j){const k={clientId:this.clientId,action:j};this.logger.log(this,"sending",k),this.sendMessage(k)}messageReceived(j){const k=typeof j=="string"?JSON.parse(j):j;(0,m.isActionMessage)(k)&&k.action?(!k.clientId||k.clientId===this.clientId)&&(k.action[_]=!0,this.logger.log(this,"receiving",k),this.actionDispatcher.dispatch(k.action).then(()=>{this.storeNewModel(k.action)})):this.logger.error(this,"received data is not an action message",k)}handleLocally(j){switch(this.storeNewModel(j),j.kind){case m.ComputedBoundsAction.KIND:return this.handleComputedBounds(j);case m.RequestModelAction.KIND:return this.handleRequestModel(j);case E.RequestBoundsCommand.KIND:return!1;case m.ExportSvgAction.KIND:return this.handleExportSvgAction(j);case M.KIND:return this.handleServerStateAction(j)}return!j[_]}storeNewModel(j){if(j.kind===P.SetModelCommand.KIND||j.kind===C.UpdateModelCommand.KIND||j.kind===E.RequestBoundsCommand.KIND){const k=j.newRoot;k&&(this.currentRoot=k,(j.kind===P.SetModelCommand.KIND||j.kind===C.UpdateModelCommand.KIND)&&(this.lastSubmittedModelType=k.type))}}handleRequestModel(j){const k=Object.assign({needsClientLayout:this.viewerOptions.needsClientLayout,needsServerLayout:this.viewerOptions.needsServerLayout},j.options),x=Object.assign(Object.assign({},j),{options:k});return this.forwardToServer(x),!1}handleComputedBounds(j){if(this.viewerOptions.needsServerLayout)return!0;{const k=this.currentRoot;return this.computedBoundsApplicator.apply(k,j),k.type===this.lastSubmittedModelType?this.actionDispatcher.dispatch(m.UpdateModelAction.create(k)):this.actionDispatcher.dispatch(m.SetModelAction.create(k)),this.lastSubmittedModelType=k.type,!1}}handleExportSvgAction(j){const k=new Blob([j.svg],{type:"text/plain;charset=utf-8"});return(0,b.saveAs)(k,"diagram.svg"),!1}handleServerStateAction(j){return!1}commitModel(j){const k=this.currentRoot;return this.currentRoot=j,k}};return Ep.DiagramServerProxy=I,f([(0,w.inject)(g.TYPES.ILogger),h("design:type",Object)],I.prototype,"logger",void 0),f([(0,w.inject)(T.ComputedBoundsApplicator),h("design:type",T.ComputedBoundsApplicator)],I.prototype,"computedBoundsApplicator",void 0),Ep.DiagramServerProxy=I=f([(0,w.injectable)()],I),Ep}var my={},y0t;function kUt(){if(y0t)return my;y0t=1;var f=my&&my.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h=my&&my.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)};Object.defineProperty(my,"__esModule",{value:!0}),my.LocalModelSource=void 0;const b=emt(),w=Zt(),m=jc(),P=Sp(),g=LM(),E=Qn(),C=ES(),T=c2e(),M=CA();let _=class extends M.ModelSource{constructor(){super(...arguments),this.currentRoot=C.EMPTY_ROOT}get model(){return this.currentRoot}set model(O){this.setModel(O)}initialize(O){super.initialize(O),O.register(m.ComputedBoundsAction.KIND,this),O.register(m.RequestPopupModelAction.KIND,this)}setModel(O){return this.currentRoot=O,this.submitModel(O,!1)}commitModel(O){const j=this.currentRoot;return this.currentRoot=O,j}updateModel(O){return O===void 0?this.submitModel(this.currentRoot,!0):(this.currentRoot=O,this.submitModel(O,!0))}async getSelection(){const O=await this.actionDispatcher.request(P.GetSelectionAction.create()),j=[];return this.gatherSelectedElements(this.currentRoot,new Set(O.selectedElementsIDs),j),j}gatherSelectedElements(O,j,k){if(j.has(O.id)&&k.push(O),O.children)for(const x of O.children)this.gatherSelectedElements(x,j,k)}async getViewport(){const O=await this.actionDispatcher.request(P.GetViewportAction.create());return{scroll:O.viewport.scroll,zoom:O.viewport.zoom,canvasBounds:O.canvasBounds}}async submitModel(O,j,k){if(this.viewerOptions.needsClientLayout){const x=await this.actionDispatcher.request(m.RequestBoundsAction.create(O)),R=this.computedBoundsApplicator.apply(this.currentRoot,x);await this.doSubmitModel(O,j,k,R)}else await this.doSubmitModel(O,j,k)}async doSubmitModel(O,j,k,x){if(this.layoutEngine!==void 0)try{const H=this.layoutEngine.layout(O,x);H instanceof Promise?O=await H:H!==void 0&&(O=H)}catch(H){this.logger.error(this,H.toString(),H.stack)}const R=this.lastSubmittedModelType;if(this.lastSubmittedModelType=O.type,k&&k.kind===m.RequestModelAction.KIND&&k.requestId){const H=k;await this.actionDispatcher.dispatch(m.SetModelAction.create(O,H.requestId))}else if(j&&O.type===R){const H=Array.isArray(j)?j:O;await this.actionDispatcher.dispatch(m.UpdateModelAction.create(H,{animate:!0,cause:k}))}else await this.actionDispatcher.dispatch(m.SetModelAction.create(O))}applyMatches(O){const j=this.currentRoot;return(0,T.applyMatches)(j,O),this.submitModel(j,O)}addElements(O){const j=[];for(const k of O){const x=k;typeof x.element=="object"&&typeof x.parentId=="string"?j.push({right:x.element,rightParentId:x.parentId}):typeof x.id=="string"&&j.push({right:x,rightParentId:this.currentRoot.id})}return this.applyMatches(j)}removeElements(O){const j=[],k=new g.SModelIndex;k.add(this.currentRoot);for(const x of O){const R=x;if(R.elementId!==void 0&&R.parentId!==void 0){const H=k.getById(R.elementId);H!==void 0&&j.push({left:H,leftParentId:R.parentId})}else{const H=k.getById(R);H!==void 0&&j.push({left:H,leftParentId:this.currentRoot.id})}}return this.applyMatches(j)}handle(O){switch(O.kind){case m.RequestModelAction.KIND:this.handleRequestModel(O);break;case m.ComputedBoundsAction.KIND:this.computedBoundsApplicator.apply(this.currentRoot,O);break;case m.RequestPopupModelAction.KIND:this.handleRequestPopupModel(O);break;case m.ExportSvgAction.KIND:this.handleExportSvgAction(O);break}}handleRequestModel(O){this.submitModel(this.currentRoot,!1,O)}handleRequestPopupModel(O){if(this.popupModelProvider!==void 0){const j=(0,g.findElement)(this.currentRoot,O.elementId),k=this.popupModelProvider.getPopupModel(O,j);k!==void 0&&(k.canvasBounds=O.bounds,this.actionDispatcher.dispatch(m.SetPopupModelAction.create(k,O.requestId)))}}handleExportSvgAction(O){const j=new Blob([O.svg],{type:"text/plain;charset=utf-8"});(0,b.saveAs)(j,"diagram.svg")}};return my.LocalModelSource=_,f([(0,w.inject)(E.TYPES.ILogger),h("design:type",Object)],_.prototype,"logger",void 0),f([(0,w.inject)(M.ComputedBoundsApplicator),h("design:type",M.ComputedBoundsApplicator)],_.prototype,"computedBoundsApplicator",void 0),f([(0,w.inject)(E.TYPES.IPopupModelProvider),(0,w.optional)(),h("design:type",Object)],_.prototype,"popupModelProvider",void 0),f([(0,w.inject)(E.TYPES.IModelLayoutEngine),(0,w.optional)(),h("design:type",Object)],_.prototype,"layoutEngine",void 0),my.LocalModelSource=_=f([(0,w.injectable)()],_),my}var vy={},_0t;function RUt(){if(_0t)return vy;_0t=1;var f=vy&&vy.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=vy&&vy.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(vy,"__esModule",{value:!0}),vy.ForwardingLogger=void 0;const b=Zt(),w=jc(),m=Bye(),P=Qn();let g=class{error(C,T,...M){this.logLevel>=m.LogLevel.error&&this.forward(C,T,m.LogLevel.error,M)}warn(C,T,...M){this.logLevel>=m.LogLevel.warn&&this.forward(C,T,m.LogLevel.warn,M)}info(C,T,...M){this.logLevel>=m.LogLevel.info&&this.forward(C,T,m.LogLevel.info,M)}log(C,T,...M){if(this.logLevel>=m.LogLevel.log)try{const _=typeof C=="object"?C.constructor.name:String(C);console.log.apply(C,[_+": "+T,...M])}catch{}}forward(C,T,M,_){const I=new Date,O=w.LoggingAction.create({message:T,severity:m.LogLevel[M],time:I.toLocaleTimeString(),caller:typeof C=="object"?C.constructor.name:String(C),params:_.map(j=>JSON.stringify(j))});this.modelSourceProvider().then(j=>{try{j.handle(O)}catch(k){try{console.log.apply(C,[T,O,k])}catch{}}})}};return vy.ForwardingLogger=g,f([(0,b.inject)(P.TYPES.ModelSourceProvider),h("design:type",Function)],g.prototype,"modelSourceProvider",void 0),f([(0,b.inject)(P.TYPES.LogLevel),h("design:type",Number)],g.prototype,"logLevel",void 0),vy.ForwardingLogger=g=f([(0,b.injectable)()],g),vy}var rS={},E0t;function xUt(){if(E0t)return rS;E0t=1;var f=rS&&rS.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(rS,"__esModule",{value:!0}),rS.WebSocketDiagramServerProxy=void 0;const h=Zt(),b=tmt();let w=class extends b.DiagramServerProxy{listen(P){P.addEventListener("message",g=>{this.messageReceived(g.data)}),P.addEventListener("error",g=>{this.logger.error(this,"error event received",g)}),this.webSocket=P}disconnect(){this.webSocket&&(this.webSocket.close(),this.webSocket=void 0)}sendMessage(P){if(this.webSocket)this.webSocket.send(JSON.stringify(P));else throw new Error("WebSocket is not connected")}};return rS.WebSocketDiagramServerProxy=w,rS.WebSocketDiagramServerProxy=w=f([(0,h.injectable)()],w),rS}var S3={},S0t;function LUt(){if(S0t)return S3;S0t=1,Object.defineProperty(S3,"__esModule",{value:!0}),S3.ColorMap=S3.toSVG=S3.rgb=void 0;function f(w,m,P){return{red:w,green:m,blue:P}}S3.rgb=f;function h(w){return"rgb("+w.red+","+w.green+","+w.blue+")"}S3.toSVG=h;class b{constructor(m){this.stops=m}getColor(m){m=Math.max(0,Math.min(.99999999,m));const P=Math.floor(m*this.stops.length);return this.stops[P]}}return S3.ColorMap=b,S3}var P0t;function NUt(){return P0t||(P0t=1,(function(f){var h=d3&&d3.__createBinding||(Object.create?(function(te,fe,ve,me){me===void 0&&(me=ve);var ke=Object.getOwnPropertyDescriptor(fe,ve);(!ke||("get"in ke?!fe.__esModule:ke.writable||ke.configurable))&&(ke={enumerable:!0,get:function(){return fe[ve]}}),Object.defineProperty(te,me,ke)}):(function(te,fe,ve,me){me===void 0&&(me=ve),te[me]=fe[ve]})),b=d3&&d3.__exportStar||function(te,fe){for(var ve in te)ve!=="default"&&!Object.prototype.hasOwnProperty.call(fe,ve)&&h(fe,te,ve)},w=d3&&d3.__importDefault||function(te){return te&&te.__esModule?te:{default:te}};Object.defineProperty(f,"__esModule",{value:!0}),f.modelSourceModule=f.zorderModule=f.viewportModule=f.updateModule=f.undoRedoModule=f.selectModule=f.routingModule=f.openModule=f.moveModule=f.hoverModule=f.fadeModule=f.exportModule=f.expandModule=f.edgeLayoutModule=f.edgeJunctionModule=f.edgeIntersectionModule=f.decorationModule=f.contextMenuModule=f.commandPaletteModule=f.buttonModule=f.boundsModule=f.defaultModule=void 0,b(jye(),f),b(Rye(),f),b(lJ(),f),b(zpt(),f),b(eN(),f),b(SA(),f),b(Vpt(),f),b(Ca(),f),b(kb(),f),b(Gpt(),f),b(Upt(),f),b(fJ(),f),b(xye(),f),b(ES(),f),b(Qh(),f),b(Oc(),f),b(hJ(),f),b(Lye(),f),b(H3(),f),b(Pp(),f),b(Jpt(),f),b(iN(),f),b(Qpt(),f),b(Zpt(),f),b(ewt(),f),b(twt(),f),b(mh(),f),b(Qn(),f);const m=w(nwt());f.defaultModule=m.default,b($ye(),f),b(iwt(),f),b(Kye(),f),b(Xs(),f),b(rwt(),f),b(owt(),f),b(cwt(),f),b(gJ(),f),b(bJ(),f),b(swt(),f),b(Hye(),f),b(lwt(),f),b(gUt(),f),b(zye(),f),b(fwt(),f),b(Rve(),f),b(hwt(),f),b(cN(),f),b(bUt(),f),b(dwt(),f),b(pwt(),f),b(oN(),f),b(Uye(),f),b(bwt(),f),b(vJ(),f),b(sN(),f),b(Yye(),f),b(wwt(),f),b(Xye(),f),b(pUt(),f),b(mwt(),f),b(Vye(),f),b(Jye(),f),b(wUt(),f),b(Qye(),f),b(rN(),f),b(vwt(),f),b(PA(),f),b(Zye(),f),b(ywt(),f),b(_wt(),f),b(e2e(),f),b(Swt(),f),b(Pwt(),f),b(Mwt(),f),b(SS(),f),b(yJ(),f),b(_Ut(),f),b(uwt(),f),b(Iwt(),f),b(Cwt(),f),b(t2e(),f),b(EUt(),f),b(MS(),f),b(pJ(),f),b(Twt(),f),b(i2e(),f),b(jwt(),f),b(r2e(),f),b(Ma(),f),b(n2e(),f),b(wJ(),f),b(Iy(),f),b(Awt(),f),b(Rb(),f),b(Dwt(),f),b(kwt(),f),b(c2e(),f),b(s2e(),f),b(u2e(),f),b(V3(),f),b(o2e(),f),b(Gye(),f),b(_J(),f),b(Wye(),f),b(Rwt(),f);const P=w(xwt());f.boundsModule=P.default;const g=w(Lwt());f.buttonModule=g.default;const E=w(Nwt());f.commandPaletteModule=E.default;const C=w(Fwt());f.contextMenuModule=C.default;const T=w(Bwt());f.decorationModule=T.default;const M=w(PUt());f.edgeIntersectionModule=M.default;const _=w(MUt());f.edgeJunctionModule=_.default;const I=w(Rve());f.edgeLayoutModule=I.default;const O=w($wt());f.expandModule=O.default;const j=w(Kwt());f.exportModule=j.default;const k=w(qwt());f.fadeModule=k.default;const x=w(Hwt());f.hoverModule=x.default;const R=w(zwt());f.moveModule=R.default;const H=w(Vwt());f.openModule=H.default;const F=w(Gwt());f.routingModule=F.default;const $=w(Uwt());f.selectModule=$.default;const W=w(Wwt());f.undoRedoModule=W.default;const re=w(Ywt());f.updateModule=re.default;const ae=w(Xwt());f.viewportModule=ae.default;const ce=w(Jwt());f.zorderModule=ce.default,b(MA(),f),b(IUt(),f),b(TUt(),f),b(AUt(),f),b(OUt(),f),b(Cy(),f),b(Zwt(),f),b(gwt(),f),b(mJ(),f),b(tmt(),f),b(kUt(),f),b(RUt(),f),b(CA(),f),b(xUt(),f);const J=w(Qwt());f.modelSourceModule=J.default,b(My(),f),b(awt(),f),b(LUt(),f),b(PS(),f),b(EA(),f),b(Bye(),f),b(q3(),f)})(d3)),d3}var de=NUt(),FUt=Object.getOwnPropertyDescriptor,BUt=(f,h,b,w)=>{for(var m=w>1?void 0:w?FUt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let RM=class extends de.AbstractUIExtension{constructor(f,h){super(),this.chevronPosition=f,this.chevronOrientation=h,this.mainCheckbox=document.createElement("input")}mainCheckbox;initializeContents(f){f.classList.add("ui-float"),this.mainCheckbox.type="checkbox";const h=this.id()+"-checkbox";this.mainCheckbox.id=h,this.mainCheckbox.classList.add("accordion-state"),this.mainCheckbox.hidden=!0;const b=document.createElement("label");b.htmlFor=h;const w=document.createElement("div");w.classList.add(`chevron-${this.chevronPosition}`,"accordion-button"),this.chevronOrientation==="up"&&w.classList.add("flip-chevron"),this.initializeHeaderContent(w),b.appendChild(w);const m=document.createElement("div");m.classList.add("accordion-content");const P=document.createElement("div");this.initializeHidableContent(P),m.appendChild(P),f.appendChild(this.mainCheckbox),f.appendChild(b),f.appendChild(m)}toggleStatus(){this.mainCheckbox.checked=!this.mainCheckbox.checked}};RM=BUt([vr()],RM);const $Ut="0c4087a2ade4b238222af521037e3d6e69d79513",M0t={hash:$Ut};var KUt=Object.defineProperty,qUt=Object.getOwnPropertyDescriptor,HUt=(f,h,b)=>h in f?KUt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,zUt=(f,h,b,w)=>{for(var m=w>1?void 0:w?qUt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},VUt=(f,h,b)=>HUt(f,h+"",b);let pS=class extends RM{constructor(){super("right","up")}id(){return pS.ID}containerClass(){return pS.ID}initializeHidableContent(f){f.innerHTML=` +

    CTRL+Space: Command Palette

    +

    CTRL+Z: Undo

    +

    CTRL+Shift+Z: Redo

    +

    Del: Delete selected elements

    +

    T: Toggle Label Type Edit UI

    +

    CTRL+O: Load diagram from json

    +

    CTRL+Shift+O: Open default diagram

    +

    CTRL+S: Save diagram to json

    +

    CTRL+L: Automatically layout diagram

    +

    CTRL+Shift+F: Fit diagram to screen

    +

    CTRL+C: Copy selected elements

    +

    CTRL+V: Paste previously copied elements

    +

    Esc: Disable current creation tool

    +

    Toggle Creation Tool: Refer to key in the tool palette

    + `,f.appendChild(this.buildCommitHash())}initializeHeaderContent(f){f.classList.add("help-accordion-icon"),f.innerText="Keyboard Shortcuts | Help"}buildCommitHash(){const f=document.createElement("div");f.id="hashHolder",f.innerHTML="Commit:";const h=document.createElement("a");return h.innerHTML=M0t.hash.substring(0,6),h.href=`https://github.com/DataFlowAnalysis/OnlineEditor/tree/${M0t.hash}`,h.id="hash",h.target="_blank",f.appendChild(h),f}};VUt(pS,"ID","help-ui");pS=zUt([vr()],pS);const Db={CreationTool:Symbol("CreationTool"),DefaultUIElement:Symbol("DefaultUIElement")},GUt=new xf(f=>{f(pS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(pS),f(Db.DefaultUIElement).toService(pS)}),OL=Symbol("StartUpAgent");var UUt=Object.getOwnPropertyDescriptor,WUt=(f,h,b,w)=>{for(var m=w>1?void 0:w?UUt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},C0t=(f,h)=>(b,w)=>h(b,w,f);let xve=class{constructor(f,h){this.actionDispatcher=f,this.defaultUiElements=h}run(){const f=this.defaultUiElements.map(h=>de.SetUIExtensionVisibilityAction.create({extensionId:h.id(),visible:!0}));this.actionDispatcher.dispatchAll(f)}};xve=WUt([vr(),C0t(0,Et(de.TYPES.IActionDispatcher)),C0t(1,cJ(Db.DefaultUIElement))],xve);var mg=Sp();const YUt=75;var xL;(f=>{function h(b,w=!0){const m=b.children?.filter(P=>mg.getBasicType(P)==="node").map(P=>P.id)??[];return mg.FitToScreenAction.create(m,{padding:YUt,animate:w})}f.create=h})(xL||(xL={}));function SX(f){throw new Error('Could not dynamically require "'+f+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var _ve={exports:{}},I0t;function XUt(){return I0t||(I0t=1,(function(f,h){(function(b){f.exports=b()})(function(){return(function(){function b(w,m,P){function g(T,M){if(!m[T]){if(!w[T]){var _=typeof SX=="function"&&SX;if(!M&&_)return _(T,!0);if(E)return E(T,!0);var I=new Error("Cannot find module '"+T+"'");throw I.code="MODULE_NOT_FOUND",I}var O=m[T]={exports:{}};w[T][0].call(O.exports,function(j){var k=w[T][1][j];return g(k||j)},O,O.exports,b,w,m,P)}return m[T].exports}for(var E=typeof SX=="function"&&SX,C=0;C0&&arguments[0]!==void 0?arguments[0]:{},I=_.defaultLayoutOptions,O=I===void 0?{}:I,j=_.algorithms,k=j===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:j,x=_.workerFactory,R=_.workerUrl;if(g(this,T),this.defaultLayoutOptions=O,this.initialized=!1,typeof R>"u"&&typeof x>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var H=x;typeof R<"u"&&typeof x>"u"&&(H=function(W){return new Worker(W)});var F=H(R);if(typeof F.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new C(F),this.worker.postMessage({cmd:"register",algorithms:k}).then(function($){return M.initialized=!0}).catch(console.err)}return P(T,[{key:"layout",value:function(_){var I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},O=I.layoutOptions,j=O===void 0?this.defaultLayoutOptions:O,k=I.logging,x=k===void 0?!1:k,R=I.measureExecutionTime,H=R===void 0?!1:R;return _?this.worker.postMessage({cmd:"layout",graph:_,layoutOptions:j,options:{logging:x,measureExecutionTime:H}}):Promise.reject(new Error("Missing mandatory parameter 'graph'."))}},{key:"knownLayoutAlgorithms",value:function(){return this.worker.postMessage({cmd:"algorithms"})}},{key:"knownLayoutOptions",value:function(){return this.worker.postMessage({cmd:"options"})}},{key:"knownLayoutCategories",value:function(){return this.worker.postMessage({cmd:"categories"})}},{key:"terminateWorker",value:function(){this.worker.terminate()}}]),T})();m.default=E;var C=(function(){function T(M){var _=this;if(g(this,T),M===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=M,this.worker.onmessage=function(I){setTimeout(function(){_.receive(_,I)},0)}}return P(T,[{key:"postMessage",value:function(_){var I=this.id||0;this.id=I+1,_.id=I;var O=this;return new Promise(function(j,k){O.resolvers[I]=function(x,R){x?(O.convertGwtStyleError(x),k(x)):j(R)},O.worker.postMessage(_)})}},{key:"receive",value:function(_,I){var O=I.data,j=_.resolvers[O.id];j&&(delete _.resolvers[O.id],O.error?j(O.error):j(null,O.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(_){if(_){var I=_.__java$exception;I&&(I.cause&&I.cause.backingJsObject&&(_.cause=I.cause.backingJsObject,this.convertGwtStyleError(_.cause)),delete _.__java$exception)}}}]),T})()},{}],2:[function(b,w,m){(function(P){(function(){var g;typeof window<"u"?g=window:typeof P<"u"?g=P:typeof self<"u"&&(g=self);var E;function C(){}function T(){}function M(){}function _(){}function I(){}function O(){}function j(){}function k(){}function x(){}function R(){}function H(){}function F(){}function $(){}function W(){}function re(){}function ae(){}function ce(){}function J(){}function te(){}function fe(){}function ve(){}function me(){}function ke(){}function tt(){}function De(){}function ct(){}function Z(){}function Nt(){}function ii(){}function kr(){}function jo(){}function Gn(){}function pc(){}function ls(){}function Lr(){}function gt(){}function Xn(){}function jn(){}function ri(){}function Er(){}function Ml(){}function yg(){}function Si(){}function _o(){}function Au(){}function cf(){}function Rs(){}function xs(){}function xb(){}function Zh(){}function Ia(){}function mm(){}function IA(){}function vh(){}function Mp(){}function ed(){}function lN(){}function MJ(){}function NM(){}function FM(){}function ft(){}function It(){}function zt(){}function zn(){}function or(){}function uu(){}function Qu(){}function fo(){}function ni(){}function li(){}function bi(){}function Pi(){}function Eo(){}function fs(){}function au(){}function e1(){}function TA(){}function fN(){}function hN(){}function w2e(){}function m2e(){}function v2e(){}function y2e(){}function _2e(){}function E2e(){}function S2e(){}function P2e(){}function M2e(){}function C2e(){}function I2e(){}function T2e(){}function j2e(){}function CJ(){}function A2e(){}function O2e(){}function D2e(){}function k2e(){}function dN(){}function gN(){}function jA(){}function R2e(){}function x2e(){}function bN(){}function L2e(){}function N2e(){}function F2e(){}function AA(){}function B2e(){}function $2e(){}function K2e(){}function q2e(){}function H2e(){}function z2e(){}function V2e(){}function G2e(){}function U2e(){}function IJ(){}function W2e(){}function Y2e(){}function X2e(){}function J2e(){}function Q2e(){}function TJ(){}function Z2e(){}function e3e(){}function t3e(){}function n3e(){}function i3e(){}function r3e(){}function o3e(){}function c3e(){}function s3e(){}function u3e(){}function a3e(){}function l3e(){}function f3e(){}function h3e(){}function pN(){}function d3e(){}function g3e(){}function b3e(){}function p3e(){}function w3e(){}function jJ(){}function m3e(){}function v3e(){}function y3e(){}function _3e(){}function E3e(){}function S3e(){}function P3e(){}function M3e(){}function C3e(){}function I3e(){}function T3e(){}function j3e(){}function A3e(){}function O3e(){}function D3e(){}function k3e(){}function R3e(){}function x3e(){}function L3e(){}function N3e(){}function F3e(){}function B3e(){}function $3e(){}function K3e(){}function q3e(){}function H3e(){}function z3e(){}function V3e(){}function G3e(){}function U3e(){}function W3e(){}function Y3e(){}function X3e(){}function J3e(){}function Q3e(){}function Z3e(){}function e_e(){}function t_e(){}function n_e(){}function i_e(){}function r_e(){}function o_e(){}function c_e(){}function s_e(){}function u_e(){}function a_e(){}function l_e(){}function f_e(){}function h_e(){}function d_e(){}function g_e(){}function b_e(){}function p_e(){}function w_e(){}function m_e(){}function v_e(){}function y_e(){}function __e(){}function E_e(){}function S_e(){}function P_e(){}function M_e(){}function C_e(){}function I_e(){}function T_e(){}function j_e(){}function A_e(){}function O_e(){}function D_e(){}function k_e(){}function R_e(){}function x_e(){}function L_e(){}function N_e(){}function F_e(){}function B_e(){}function $_e(){}function K_e(){}function q_e(){}function H_e(){}function z_e(){}function V_e(){}function G_e(){}function U_e(){}function W_e(){}function Y_e(){}function X_e(){}function J_e(){}function Q_e(){}function Z_e(){}function eEe(){}function tEe(){}function nEe(){}function iEe(){}function rEe(){}function oEe(){}function cEe(){}function sEe(){}function uEe(){}function aEe(){}function AJ(){}function lEe(){}function fEe(){}function hEe(){}function dEe(){}function gEe(){}function bEe(){}function pEe(){}function wEe(){}function mEe(){}function vEe(){}function yEe(){}function _Ee(){}function EEe(){}function SEe(){}function PEe(){}function MEe(){}function CEe(){}function IEe(){}function TEe(){}function jEe(){}function AEe(){}function OEe(){}function DEe(){}function kEe(){}function REe(){}function xEe(){}function LEe(){}function NEe(){}function FEe(){}function BEe(){}function $Ee(){}function KEe(){}function qEe(){}function HEe(){}function zEe(){}function VEe(){}function GEe(){}function UEe(){}function WEe(){}function YEe(){}function XEe(){}function JEe(){}function QEe(){}function ZEe(){}function e4e(){}function t4e(){}function n4e(){}function i4e(){}function r4e(){}function o4e(){}function c4e(){}function s4e(){}function u4e(){}function a4e(){}function l4e(){}function f4e(){}function h4e(){}function d4e(){}function g4e(){}function b4e(){}function p4e(){}function w4e(){}function m4e(){}function v4e(){}function y4e(){}function _4e(){}function E4e(){}function OJ(){}function S4e(){}function P4e(){}function M4e(){}function C4e(){}function I4e(){}function T4e(){}function j4e(){}function A4e(){}function O4e(){}function D4e(){}function k4e(){}function R4e(){}function x4e(){}function L4e(){}function N4e(){}function F4e(){}function B4e(){}function $4e(){}function K4e(){}function q4e(){}function DJ(){}function H4e(){}function z4e(){}function V4e(){}function G4e(){}function U4e(){}function W4e(){}function kJ(){}function RJ(){}function Y4e(){}function xJ(){}function LJ(){}function X4e(){}function J4e(){}function Q4e(){}function Z4e(){}function eSe(){}function tSe(){}function nSe(){}function iSe(){}function rSe(){}function NJ(){}function oSe(){}function cSe(){}function sSe(){}function uSe(){}function aSe(){}function lSe(){}function fSe(){}function hSe(){}function dSe(){}function gSe(){}function bSe(){}function pSe(){}function wSe(){}function mSe(){}function vSe(){}function ySe(){}function _Se(){}function ESe(){}function SSe(){}function PSe(){}function MSe(){}function CSe(){}function ISe(){}function TSe(){}function jSe(){}function ASe(){}function OSe(){}function DSe(){}function kSe(){}function RSe(){}function xSe(){}function LSe(){}function NSe(){}function FSe(){}function BSe(){}function $Se(){}function KSe(){}function qSe(){}function HSe(){}function zSe(){}function VSe(){}function GSe(){}function USe(){}function WSe(){}function YSe(){}function XSe(){}function JSe(){}function QSe(){}function ZSe(){}function e5e(){}function t5e(){}function n5e(){}function i5e(){}function r5e(){}function o5e(){}function c5e(){}function s5e(){}function u5e(){}function a5e(){}function l5e(){}function f5e(){}function h5e(){}function d5e(){}function g5e(){}function b5e(){}function p5e(){}function w5e(){}function m5e(){}function wN(){}function mN(){}function vN(){}function v5e(){}function y5e(){}function _5e(){}function E5e(){}function S5e(){}function FJ(){}function P5e(){}function M5e(){}function Smt(){}function C5e(){}function I5e(){}function T5e(){}function j5e(){}function A5e(){}function O5e(){}function D5e(){}function _g(){}function k5e(){}function Ay(){}function BJ(){}function R5e(){}function x5e(){}function L5e(){}function N5e(){}function F5e(){}function B5e(){}function $5e(){}function K5e(){}function q5e(){}function H5e(){}function z5e(){}function V5e(){}function G5e(){}function U5e(){}function W5e(){}function Y5e(){}function X5e(){}function J5e(){}function Q5e(){}function Z5e(){}function e6e(){}function He(){}function t6e(){}function n6e(){}function i6e(){}function r6e(){}function o6e(){}function c6e(){}function s6e(){}function u6e(){}function a6e(){}function l6e(){}function yN(){}function f6e(){}function h6e(){}function d6e(){}function g6e(){}function b6e(){}function $J(){}function OA(){}function DA(){}function p6e(){}function KJ(){}function kA(){}function w6e(){}function m6e(){}function v6e(){}function y6e(){}function _6e(){}function E6e(){}function RA(){}function S6e(){}function P6e(){}function M6e(){}function xA(){}function C6e(){}function qJ(){}function I6e(){}function _N(){}function HJ(){}function T6e(){}function j6e(){}function A6e(){}function O6e(){}function Pmt(){}function D6e(){}function k6e(){}function R6e(){}function x6e(){}function L6e(){}function N6e(){}function F6e(){}function B6e(){}function $6e(){}function K6e(){}function G3(){}function EN(){}function q6e(){}function H6e(){}function z6e(){}function V6e(){}function G6e(){}function U6e(){}function W6e(){}function Y6e(){}function X6e(){}function J6e(){}function Q6e(){}function Z6e(){}function ePe(){}function tPe(){}function nPe(){}function iPe(){}function rPe(){}function oPe(){}function cPe(){}function sPe(){}function uPe(){}function aPe(){}function lPe(){}function fPe(){}function hPe(){}function dPe(){}function gPe(){}function bPe(){}function pPe(){}function wPe(){}function mPe(){}function vPe(){}function yPe(){}function _Pe(){}function EPe(){}function SPe(){}function PPe(){}function MPe(){}function CPe(){}function IPe(){}function TPe(){}function jPe(){}function APe(){}function OPe(){}function DPe(){}function kPe(){}function RPe(){}function xPe(){}function LPe(){}function NPe(){}function FPe(){}function BPe(){}function $Pe(){}function KPe(){}function qPe(){}function HPe(){}function zPe(){}function VPe(){}function GPe(){}function UPe(){}function WPe(){}function YPe(){}function XPe(){}function JPe(){}function QPe(){}function ZPe(){}function eMe(){}function tMe(){}function nMe(){}function iMe(){}function rMe(){}function oMe(){}function cMe(){}function sMe(){}function uMe(){}function aMe(){}function lMe(){}function fMe(){}function hMe(){}function dMe(){}function gMe(){}function bMe(){}function pMe(){}function wMe(){}function mMe(){}function vMe(){}function yMe(){}function _Me(){}function EMe(){}function SMe(){}function PMe(){}function MMe(){}function CMe(){}function IMe(){}function TMe(){}function jMe(){}function AMe(){}function OMe(){}function DMe(){}function kMe(){}function RMe(){}function zJ(){}function xMe(){}function LMe(){}function SN(){DS()}function NMe(){bK()}function FMe(){o6()}function BMe(){A7()}function $Me(){Hce()}function KMe(){dl()}function qMe(){ece()}function HMe(){NI()}function zMe(){nC()}function VMe(){tC()}function GMe(){TC()}function UMe(){Y8e()}function WMe(){h2()}function YMe(){f9()}function XMe(){cBe()}function JMe(){vKe()}function QMe(){FBe()}function ZMe(){tNe()}function eCe(){iE()}function tCe(){I1()}function nCe(){yKe()}function iCe(){WNe()}function rCe(){Lue()}function oCe(){sVe()}function cCe(){nNe()}function sCe(){Oe()}function uCe(){eNe()}function aCe(){_Ke()}function lCe(){Pqe()}function fCe(){rNe()}function hCe(){HBe()}function dCe(){X8e()}function gCe(){Pse()}function bCe(){ow()}function pCe(){WKe()}function wCe(){KI()}function mCe(){zq()}function vCe(){JK()}function yCe(){A0()}function _Ce(){yre()}function ECe(){iNe()}function SCe(){bYe()}function PCe(){_se()}function MCe(){Lq()}function CCe(){bO()}function ICe(){N7()}function VJ(){kn()}function TCe(){QO()}function jCe(){Toe()}function GJ(){nD()}function il(){zke()}function UJ(){Z$()}function ACe(){uue()}function WJ(e){yt(e)}function OCe(e){this.a=e}function LA(e){this.a=e}function DCe(e){this.a=e}function kCe(e){this.a=e}function RCe(e){this.a=e}function xCe(e){this.a=e}function LCe(e){this.a=e}function NCe(e){this.a=e}function YJ(e){this.a=e}function XJ(e){this.a=e}function FCe(e){this.a=e}function PN(e){this.a=e}function BCe(e){this.a=e}function MN(e){this.a=e}function $Ce(e){this.a=e}function CN(e){this.a=e}function KCe(e){this.a=e}function IN(e){this.a=e}function qCe(e){this.a=e}function HCe(e){this.a=e}function zCe(e){this.a=e}function JJ(e){this.b=e}function VCe(e){this.c=e}function GCe(e){this.a=e}function UCe(e){this.a=e}function WCe(e){this.a=e}function YCe(e){this.a=e}function XCe(e){this.a=e}function JCe(e){this.a=e}function QCe(e){this.a=e}function ZCe(e){this.a=e}function eIe(e){this.a=e}function tIe(e){this.a=e}function nIe(e){this.a=e}function iIe(e){this.a=e}function rIe(e){this.a=e}function QJ(e){this.a=e}function ZJ(e){this.a=e}function NA(e){this.a=e}function BM(e){this.a=e}function Eg(){this.a=[]}function oIe(e,t){e.a=t}function Mmt(e,t){e.a=t}function Cmt(e,t){e.b=t}function Imt(e,t){e.b=t}function Tmt(e,t){e.b=t}function eQ(e,t){e.j=t}function jmt(e,t){e.g=t}function Amt(e,t){e.i=t}function Omt(e,t){e.c=t}function Dmt(e,t){e.d=t}function kmt(e,t){e.d=t}function Rmt(e,t){e.c=t}function Sg(e,t){e.k=t}function xmt(e,t){e.c=t}function tQ(e,t){e.c=t}function nQ(e,t){e.a=t}function Lmt(e,t){e.a=t}function Nmt(e,t){e.f=t}function Fmt(e,t){e.a=t}function Bmt(e,t){e.b=t}function TN(e,t){e.d=t}function FA(e,t){e.i=t}function iQ(e,t){e.o=t}function $mt(e,t){e.r=t}function Kmt(e,t){e.a=t}function qmt(e,t){e.b=t}function cIe(e,t){e.e=t}function Hmt(e,t){e.f=t}function rQ(e,t){e.g=t}function zmt(e,t){e.e=t}function Vmt(e,t){e.f=t}function Gmt(e,t){e.f=t}function Umt(e,t){e.n=t}function Wmt(e,t){e.a=t}function Ymt(e,t){e.a=t}function Xmt(e,t){e.c=t}function Jmt(e,t){e.c=t}function Qmt(e,t){e.d=t}function Zmt(e,t){e.e=t}function evt(e,t){e.g=t}function tvt(e,t){e.a=t}function nvt(e,t){e.c=t}function ivt(e,t){e.d=t}function rvt(e,t){e.e=t}function ovt(e,t){e.f=t}function cvt(e,t){e.j=t}function svt(e,t){e.a=t}function uvt(e,t){e.b=t}function avt(e,t){e.a=t}function sIe(e){e.b=e.a}function uIe(e){e.c=e.d.d}function CS(e){this.d=e}function Pg(e){this.a=e}function U3(e){this.a=e}function oQ(e){this.a=e}function yh(e){this.a=e}function $M(e){this.a=e}function aIe(e){this.a=e}function cQ(e){this.a=e}function KM(e){this.a=e}function sQ(e){this.a=e}function uQ(e){this.a=e}function aQ(e){this.a=e}function Cp(e){this.a=e}function qM(e){this.a=e}function HM(e){this.a=e}function lQ(e){this.b=e}function W3(e){this.b=e}function Y3(e){this.b=e}function jN(e){this.a=e}function lIe(e){this.a=e}function fQ(e){this.a=e}function AN(e){this.c=e}function q(e){this.c=e}function fIe(e){this.c=e}function hQ(e){this.a=e}function dQ(e){this.a=e}function gQ(e){this.a=e}function bQ(e){this.a=e}function Un(e){this.a=e}function hIe(e){this.a=e}function pQ(e){this.a=e}function wQ(e){this.a=e}function dIe(e){this.a=e}function gIe(e){this.a=e}function IS(e){this.a=e}function bIe(e){this.a=e}function pIe(e){this.a=e}function wIe(e){this.a=e}function mIe(e){this.a=e}function vIe(e){this.a=e}function yIe(e){this.a=e}function _Ie(e){this.a=e}function EIe(e){this.a=e}function SIe(e){this.a=e}function PIe(e){this.a=e}function MIe(e){this.a=e}function CIe(e){this.a=e}function IIe(e){this.a=e}function TIe(e){this.a=e}function jIe(e){this.a=e}function AIe(e){this.a=e}function OIe(e){this.a=e}function zM(e){this.a=e}function DIe(e){this.a=e}function kIe(e){this.a=e}function BA(e){this.a=e}function RIe(e){this.a=e}function xIe(e){this.a=e}function X3(e){this.a=e}function mQ(e){this.a=e}function LIe(e){this.a=e}function NIe(e){this.a=e}function FIe(e){this.a=e}function BIe(e){this.a=e}function $Ie(e){this.a=e}function vQ(e){this.a=e}function yQ(e){this.a=e}function _Q(e){this.a=e}function $A(e){this.a=e}function KA(e){this.e=e}function J3(e){this.a=e}function KIe(e){this.a=e}function Oy(e){this.a=e}function EQ(e){this.a=e}function qIe(e){this.a=e}function HIe(e){this.a=e}function zIe(e){this.a=e}function VIe(e){this.a=e}function GIe(e){this.a=e}function UIe(e){this.a=e}function WIe(e){this.a=e}function YIe(e){this.a=e}function XIe(e){this.a=e}function JIe(e){this.a=e}function QIe(e){this.a=e}function SQ(e){this.a=e}function ZIe(e){this.a=e}function eTe(e){this.a=e}function tTe(e){this.a=e}function nTe(e){this.a=e}function iTe(e){this.a=e}function rTe(e){this.a=e}function oTe(e){this.a=e}function cTe(e){this.a=e}function sTe(e){this.a=e}function uTe(e){this.a=e}function aTe(e){this.a=e}function lTe(e){this.a=e}function fTe(e){this.a=e}function hTe(e){this.a=e}function dTe(e){this.a=e}function gTe(e){this.a=e}function bTe(e){this.a=e}function pTe(e){this.a=e}function wTe(e){this.a=e}function mTe(e){this.a=e}function vTe(e){this.a=e}function yTe(e){this.a=e}function _Te(e){this.a=e}function ETe(e){this.a=e}function STe(e){this.a=e}function PTe(e){this.a=e}function MTe(e){this.a=e}function CTe(e){this.a=e}function ITe(e){this.a=e}function TTe(e){this.a=e}function jTe(e){this.a=e}function ATe(e){this.a=e}function OTe(e){this.a=e}function DTe(e){this.a=e}function kTe(e){this.a=e}function RTe(e){this.a=e}function xTe(e){this.a=e}function LTe(e){this.c=e}function NTe(e){this.b=e}function FTe(e){this.a=e}function BTe(e){this.a=e}function $Te(e){this.a=e}function KTe(e){this.a=e}function qTe(e){this.a=e}function HTe(e){this.a=e}function zTe(e){this.a=e}function VTe(e){this.a=e}function GTe(e){this.a=e}function UTe(e){this.a=e}function WTe(e){this.a=e}function YTe(e){this.a=e}function XTe(e){this.a=e}function JTe(e){this.a=e}function QTe(e){this.a=e}function ZTe(e){this.a=e}function eje(e){this.a=e}function tje(e){this.a=e}function nje(e){this.a=e}function ije(e){this.a=e}function rje(e){this.a=e}function oje(e){this.a=e}function cje(e){this.a=e}function sje(e){this.a=e}function t1(e){this.a=e}function Dy(e){this.a=e}function uje(e){this.a=e}function aje(e){this.a=e}function lje(e){this.a=e}function fje(e){this.a=e}function hje(e){this.a=e}function dje(e){this.a=e}function gje(e){this.a=e}function bje(e){this.a=e}function pje(e){this.a=e}function wje(e){this.a=e}function mje(e){this.a=e}function vje(e){this.a=e}function yje(e){this.a=e}function _je(e){this.a=e}function Eje(e){this.a=e}function Sje(e){this.a=e}function qA(e){this.a=e}function Pje(e){this.a=e}function Mje(e){this.a=e}function Cje(e){this.a=e}function Ije(e){this.a=e}function Tje(e){this.a=e}function jje(e){this.a=e}function Aje(e){this.a=e}function Oje(e){this.a=e}function Dje(e){this.a=e}function kje(e){this.a=e}function Rje(e){this.a=e}function xje(e){this.a=e}function Lje(e){this.a=e}function Nje(e){this.a=e}function Fje(e){this.a=e}function Bje(e){this.a=e}function $je(e){this.a=e}function Kje(e){this.a=e}function qje(e){this.a=e}function Hje(e){this.a=e}function zje(e){this.a=e}function Vje(e){this.a=e}function Gje(e){this.a=e}function Uje(e){this.a=e}function Wje(e){this.a=e}function Yje(e){this.a=e}function Xje(e){this.a=e}function Jje(e){this.a=e}function PQ(e){this.a=e}function hi(e){this.b=e}function Qje(e){this.f=e}function MQ(e){this.a=e}function Zje(e){this.a=e}function eAe(e){this.a=e}function tAe(e){this.a=e}function nAe(e){this.a=e}function iAe(e){this.a=e}function rAe(e){this.a=e}function oAe(e){this.a=e}function cAe(e){this.a=e}function VM(e){this.a=e}function sAe(e){this.a=e}function uAe(e){this.b=e}function CQ(e){this.c=e}function HA(e){this.e=e}function aAe(e){this.a=e}function zA(e){this.a=e}function VA(e){this.a=e}function ON(e){this.a=e}function lAe(e){this.a=e}function fAe(e){this.d=e}function IQ(e){this.a=e}function TQ(e){this.a=e}function Lb(e){this.e=e}function lvt(){this.a=0}function vm(){z7e(this)}function Se(){NF(this)}function en(){Is(this)}function DN(){Wxe(this)}function hAe(){}function Nb(){this.c=ume}function fvt(e,t){t.Wb(e)}function dAe(e,t){e.b+=t}function gAe(e){e.b=new YN}function V(e){return e.e}function hvt(e){return e.a}function dvt(e){return e.a}function gvt(e){return e.a}function bvt(e){return e.a}function pvt(e){return e.a}function wvt(){return null}function mvt(){return null}function vvt(){gZ(),AHt()}function yvt(e){e.b.tf(e.e)}function TS(e,t){e.b=t-e.b}function jS(e,t){e.a=t-e.a}function bAe(e,t){t.ad(e.a)}function _vt(e,t){Ji(t,e)}function Evt(e,t,n){e.Od(n,t)}function GM(e,t){e.e=t,t.b=e}function jQ(e){hf(),this.a=e}function pAe(e){hf(),this.a=e}function wAe(e){hf(),this.a=e}function AQ(e){Hp(),this.a=e}function mAe(e){T_(),lG.be(e)}function Mg(){IDe.call(this)}function OQ(){IDe.call(this)}function DQ(){Mg.call(this)}function kN(){Mg.call(this)}function vAe(){Mg.call(this)}function UM(){Mg.call(this)}function hs(){Mg.call(this)}function AS(){Mg.call(this)}function sn(){Mg.call(this)}function Ou(){Mg.call(this)}function yAe(){Mg.call(this)}function tc(){Mg.call(this)}function _Ae(){Mg.call(this)}function EAe(){this.a=this}function GA(){this.Bb|=256}function SAe(){this.b=new M7e}function kQ(){kQ=Z,new en}function RQ(){DQ.call(this)}function PAe(e,t){e.length=t}function UA(e,t){Ee(e.a,t)}function Svt(e,t){Vce(e.c,t)}function Pvt(e,t){Yi(e.b,t)}function Mvt(e,t){P7(e.a,t)}function Cvt(e,t){PK(e.a,t)}function Q3(e,t){Bn(e.e,t)}function ky(e){$7(e.c,e.b)}function Ivt(e,t){e.kc().Nb(t)}function xQ(e){this.a=MAt(e)}function er(){this.a=new en}function MAe(){this.a=new en}function WA(){this.a=new Se}function RN(){this.a=new Se}function LQ(){this.a=new Se}function Zu(){this.a=new bi}function Cg(){this.a=new nBe}function NQ(){this.a=new IJ}function FQ(){this.a=new K8e}function CAe(){this.a=new jNe}function BQ(){this.a=new VLe}function $Q(){this.a=new bke}function IAe(){this.a=new Se}function KQ(){this.a=new Se}function TAe(){this.a=new Se}function jAe(){this.a=new Se}function AAe(){this.d=new Se}function OAe(){this.a=new er}function DAe(){this.a=new en}function kAe(){this.b=new en}function RAe(){this.b=new Se}function qQ(){this.e=new Se}function xAe(){this.d=new Se}function LAe(){this.a=new tCe}function NAe(){Se.call(this)}function HQ(){WA.call(this)}function FAe(){i8.call(this)}function BAe(){KQ.call(this)}function xN(){OS.call(this)}function OS(){hAe.call(this)}function Ry(){hAe.call(this)}function zQ(){Ry.call(this)}function $Ae(){ELe.call(this)}function KAe(){ELe.call(this)}function qAe(){JQ.call(this)}function HAe(){JQ.call(this)}function zAe(){JQ.call(this)}function VAe(){QQ.call(this)}function ds(){wi.call(this)}function VQ(){b6e.call(this)}function GQ(){b6e.call(this)}function GAe(){u9e.call(this)}function UAe(){u9e.call(this)}function WAe(){en.call(this)}function YAe(){en.call(this)}function XAe(){en.call(this)}function JAe(){er.call(this)}function LN(){pKe.call(this)}function QAe(){GA.call(this)}function NN(){Eee.call(this)}function FN(){Eee.call(this)}function UQ(){en.call(this)}function BN(){en.call(this)}function ZAe(){en.call(this)}function WQ(){xA.call(this)}function e9e(){xA.call(this)}function t9e(){WQ.call(this)}function n9e(){zJ.call(this)}function i9e(e){K$e.call(this,e)}function r9e(e){K$e.call(this,e)}function YQ(e){YJ.call(this,e)}function XQ(e){O8e.call(this,e)}function Tvt(e){XQ.call(this,e)}function jvt(e){O8e.call(this,e)}function Z3(){this.a=new wi}function JQ(){this.a=new er}function QQ(){this.a=new en}function o9e(){this.a=new Se}function c9e(){this.j=new Se}function ZQ(){this.a=new p5e}function s9e(){this.a=new n8e}function u9e(){this.a=new M6e}function $N(){$N=Z,rG=new C9e}function KN(){KN=Z,iG=new M9e}function DS(){DS=Z,nG=new T}function YA(){YA=Z,sG=new MDe}function Avt(e){XQ.call(this,e)}function Ovt(e){XQ.call(this,e)}function a9e(e){w$.call(this,e)}function l9e(e){w$.call(this,e)}function f9e(e){Nke.call(this,e)}function qN(e){JDt.call(this,e)}function Fb(e){jp.call(this,e)}function kS(e){s9.call(this,e)}function eZ(e){s9.call(this,e)}function h9e(e){s9.call(this,e)}function No(e){JRe.call(this,e)}function d9e(e){No.call(this,e)}function xy(){BM.call(this,{})}function XA(e){d_(),this.a=e}function RS(e){e.b=null,e.c=0}function Dvt(e,t){e.e=t,gWe(e,t)}function kvt(e,t){e.a=t,Nkt(e)}function HN(e,t,n){e.a[t.g]=n}function Rvt(e,t,n){ZOt(n,e,t)}function xvt(e,t){c_t(t.i,e.n)}function g9e(e,t){sjt(e).td(t)}function Lvt(e,t){return e*e/t}function b9e(e,t){return e.g-t.g}function Nvt(e){return new NA(e)}function Fvt(e){return new qp(e)}function JA(e){No.call(this,e)}function ho(e){No.call(this,e)}function p9e(e){No.call(this,e)}function zN(e){JRe.call(this,e)}function VN(e){mre(),this.a=e}function w9e(e){Hke(),this.a=e}function Ip(e){_B(),this.f=e}function GN(e){_B(),this.f=e}function e_(e){No.call(this,e)}function St(e){No.call(this,e)}function Ao(e){No.call(this,e)}function m9e(e){No.call(this,e)}function Ly(e){No.call(this,e)}function Be(e){return yt(e),e}function ge(e){return yt(e),e}function WM(e){return yt(e),e}function tZ(e){return yt(e),e}function Bvt(e){return yt(e),e}function xS(e){return e.b==e.c}function Tp(e){return!!e&&e.b}function $vt(e){return!!e&&e.k}function Kvt(e){return!!e&&e.j}function Js(e){yt(e),this.a=e}function nZ(e){return Vg(e),e}function LS(e){gne(e,e.length)}function td(e){No.call(this,e)}function sf(e){No.call(this,e)}function UN(e){No.call(this,e)}function ym(e){No.call(this,e)}function NS(e){No.call(this,e)}function an(e){No.call(this,e)}function WN(e){$ee.call(this,e,0)}function YN(){Wne.call(this,12,3)}function iZ(){iZ=Z,rhe=new te}function v9e(){v9e=Z,ihe=new C}function QA(){QA=Z,cP=new $}function y9e(){y9e=Z,Jtt=new re}function _9e(){throw V(new sn)}function rZ(){throw V(new sn)}function E9e(){throw V(new sn)}function qvt(){throw V(new sn)}function Hvt(){throw V(new sn)}function zvt(){throw V(new sn)}function XN(){this.a=ln(nn(zr))}function Ny(e){hf(),this.a=nn(e)}function S9e(e,t){e.Td(t),t.Sd(e)}function Vvt(e,t){e.a.ec().Mc(t)}function Gvt(e,t,n){e.c.lf(t,n)}function oZ(e){ho.call(this,e)}function uf(e){St.call(this,e)}function nd(){$M.call(this,"")}function FS(){$M.call(this,"")}function n1(){$M.call(this,"")}function _m(){$M.call(this,"")}function cZ(e){ho.call(this,e)}function t_(e){W3.call(this,e)}function JN(e){W9.call(this,e)}function P9e(e){t_.call(this,e)}function M9e(){MN.call(this,null)}function C9e(){MN.call(this,null)}function ZA(){ZA=Z,T_()}function I9e(){I9e=Z,snt=C7t()}function T9e(e){return e.a?e.b:0}function Uvt(e){return e.a?e.b:0}function Wvt(e,t){return e.a-t.a}function Yvt(e,t){return e.a-t.a}function Xvt(e,t){return e.a-t.a}function e9(e,t){return Fie(e,t)}function G(e,t){return WLe(e,t)}function Jvt(e,t){return t in e.a}function j9e(e,t){return e.f=t,e}function Qvt(e,t){return e.b=t,e}function A9e(e,t){return e.c=t,e}function Zvt(e,t){return e.g=t,e}function sZ(e,t){return e.a=t,e}function uZ(e,t){return e.f=t,e}function eyt(e,t){return e.k=t,e}function aZ(e,t){return e.a=t,e}function tyt(e,t){return e.e=t,e}function lZ(e,t){return e.e=t,e}function nyt(e,t){return e.f=t,e}function iyt(e,t){e.b=!0,e.d=t}function ryt(e,t){e.b=new go(t)}function oyt(e,t,n){t.td(e.a[n])}function cyt(e,t,n){t.we(e.a[n])}function syt(e,t){return e.b-t.b}function uyt(e,t){return e.g-t.g}function ayt(e,t){return e.s-t.s}function lyt(e,t){return e?0:t-1}function O9e(e,t){return e?0:t-1}function fyt(e,t){return e?t-1:0}function hyt(e,t){return t.Yf(e)}function Bb(e,t){return e.b=t,e}function t9(e,t){return e.a=t,e}function $b(e,t){return e.c=t,e}function Kb(e,t){return e.d=t,e}function qb(e,t){return e.e=t,e}function fZ(e,t){return e.f=t,e}function BS(e,t){return e.a=t,e}function n_(e,t){return e.b=t,e}function i_(e,t){return e.c=t,e}function Ge(e,t){return e.c=t,e}function lt(e,t){return e.b=t,e}function Ue(e,t){return e.d=t,e}function We(e,t){return e.e=t,e}function dyt(e,t){return e.f=t,e}function Ye(e,t){return e.g=t,e}function Xe(e,t){return e.a=t,e}function Je(e,t){return e.i=t,e}function Qe(e,t){return e.j=t,e}function D9e(e,t){return e.k=t,e}function gyt(e,t){return e.j=t,e}function byt(e,t){I1(),Bo(t,e)}function pyt(e,t,n){lSt(e.a,t,n)}function k9e(e){Xxe.call(this,e)}function hZ(e){Xxe.call(this,e)}function n9(e){rB.call(this,e)}function R9e(e){kAt.call(this,e)}function i1(e){d0.call(this,e)}function x9e(e){GB.call(this,e)}function L9e(e){GB.call(this,e)}function N9e(){wee.call(this,"")}function Tr(){this.a=0,this.b=0}function F9e(){this.b=0,this.a=0}function B9e(e,t){e.b=0,Zp(e,t)}function wyt(e,t){e.c=t,e.b=!0}function $9e(e,t){return e.c._b(t)}function rl(e){return e.e&&e.e()}function QN(e){return e?e.d:null}function K9e(e,t){return dHe(e.b,t)}function myt(e){return e?e.g:null}function vyt(e){return e?e.i:null}function r1(e){return Sh(e),e.o}function Hb(){Hb=Z,oft=NOt()}function q9e(){q9e=Z,lr=Y7t()}function r_(){r_=Z,sme=BOt()}function H9e(){H9e=Z,Hft=FOt()}function dZ(){dZ=Z,cc=Rkt()}function gZ(){gZ=Z,Z1=V_()}function z9e(){throw V(new sn)}function V9e(){throw V(new sn)}function G9e(){throw V(new sn)}function U9e(){throw V(new sn)}function W9e(){throw V(new sn)}function Y9e(){throw V(new sn)}function i9(e){this.a=new Fy(e)}function bZ(e){zXe(),HHt(this,e)}function o1(e){this.a=new MB(e)}function Em(e,t){for(;e.ye(t););}function pZ(e,t){for(;e.sd(t););}function Sm(e,t){return e.a+=t,e}function ZN(e,t){return e.a+=t,e}function id(e,t){return e.a+=t,e}function zb(e,t){return e.a+=t,e}function $S(e){return b1(e),e.a}function r9(e){return e.b!=e.d.c}function X9e(e){return e.l|e.m<<22}function wZ(e,t){return e.d[t.p]}function J9e(e,t){return SNt(e,t)}function mZ(e,t,n){e.splice(t,n)}function Q9e(e){e.c?xWe(e):LWe(e)}function o9(e){this.a=0,this.b=e}function Z9e(){this.a=new JI(y0e)}function e8e(){this.b=new JI(c0e)}function t8e(){this.b=new JI(jW)}function n8e(){this.b=new JI(jW)}function i8e(){throw V(new sn)}function r8e(){throw V(new sn)}function o8e(){throw V(new sn)}function c8e(){throw V(new sn)}function s8e(){throw V(new sn)}function u8e(){throw V(new sn)}function a8e(){throw V(new sn)}function l8e(){throw V(new sn)}function f8e(){throw V(new sn)}function h8e(){throw V(new sn)}function yyt(){throw V(new tc)}function _yt(){throw V(new tc)}function YM(e){this.a=new d8e(e)}function d8e(e){DIt(this,e,D7t())}function XM(e){return!e||Rxe(e)}function JM(e){return Zl[e]!=-1}function Eyt(){Sk!=0&&(Sk=0),Pk=-1}function g8e(){tG==null&&(tG=[])}function Syt(e,t){Oq(he(e.a),t)}function Pyt(e,t){Oq(he(e.a),t)}function QM(e,t){Dm.call(this,e,t)}function o_(e,t){QM.call(this,e,t)}function vZ(e,t){this.b=e,this.c=t}function b8e(e,t){this.b=e,this.a=t}function p8e(e,t){this.a=e,this.b=t}function w8e(e,t){this.a=e,this.b=t}function m8e(e,t){this.a=e,this.b=t}function v8e(e,t){this.a=e,this.b=t}function y8e(e,t){this.a=e,this.b=t}function _8e(e,t){this.a=e,this.b=t}function E8e(e,t){this.a=e,this.b=t}function S8e(e,t){this.a=e,this.b=t}function P8e(e,t){this.b=e,this.a=t}function M8e(e,t){this.b=e,this.a=t}function C8e(e,t){this.b=e,this.a=t}function I8e(e,t){this.b=e,this.a=t}function pn(e,t){this.f=e,this.g=t}function c_(e,t){this.e=e,this.d=t}function Vb(e,t){this.g=e,this.i=t}function eF(e,t){this.a=e,this.b=t}function T8e(e,t){this.a=e,this.f=t}function j8e(e,t){this.b=e,this.c=t}function Myt(e,t){this.a=e,this.b=t}function A8e(e,t){this.a=e,this.b=t}function tF(e,t){this.a=e,this.b=t}function O8e(e){jee(e.dc()),this.c=e}function c9(e){this.b=c(nn(e),83)}function D8e(e){this.a=c(nn(e),83)}function jp(e){this.a=c(nn(e),15)}function k8e(e){this.a=c(nn(e),15)}function s9(e){this.b=c(nn(e),47)}function u9(){this.q=new g.Date}function Nf(){Nf=Z,vhe=new Nt}function s_(){s_=Z,n4=new tt}function KS(e){return e.f.c+e.g.c}function ZM(e,t){return e.b.Hc(t)}function R8e(e,t){return e.b.Ic(t)}function x8e(e,t){return e.b.Qc(t)}function L8e(e,t){return e.b.Hc(t)}function N8e(e,t){return e.c.uc(t)}function _h(e,t){return e.a._b(t)}function F8e(e,t){return $n(e.c,t)}function B8e(e,t){return tu(e.b,t)}function $8e(e,t){return e>t&&t0}function iF(e,t){return uc(e,t)<0}function US(e,t){return e.a.get(t)}function Fyt(e,t){return t.split(e)}function oOe(e,t){return tu(e.e,t)}function IZ(e){return yt(e),!1}function m9(e){bt.call(this,e,21)}function Byt(e,t){LLe.call(this,e,t)}function v9(e,t){pn.call(this,e,t)}function rF(e,t){pn.call(this,e,t)}function TZ(e){FB(),Nke.call(this,e)}function jZ(e,t){$Re(e,e.length,t)}function rC(e,t){bxe(e,e.length,t)}function $yt(e,t,n){t.ud(e.a.Ge(n))}function Kyt(e,t,n){t.we(e.a.Fe(n))}function qyt(e,t,n){t.td(e.a.Kb(n))}function Hyt(e,t,n){e.Mb(n)&&t.td(n)}function WS(e,t,n){e.splice(t,0,n)}function zyt(e,t){return bs(e.e,t)}function y9(e,t){this.d=e,this.e=t}function cOe(e,t){this.b=e,this.a=t}function sOe(e,t){this.b=e,this.a=t}function AZ(e,t){this.b=e,this.a=t}function uOe(e,t){this.a=e,this.b=t}function aOe(e,t){this.a=e,this.b=t}function lOe(e,t){this.a=e,this.b=t}function fOe(e,t){this.a=e,this.b=t}function $y(e,t){this.a=e,this.b=t}function OZ(e,t){this.b=e,this.a=t}function DZ(e,t){this.b=e,this.a=t}function _9(e,t){pn.call(this,e,t)}function E9(e,t){pn.call(this,e,t)}function kZ(e,t){pn.call(this,e,t)}function RZ(e,t){pn.call(this,e,t)}function Pm(e,t){pn.call(this,e,t)}function oF(e,t){pn.call(this,e,t)}function cF(e,t){pn.call(this,e,t)}function sF(e,t){pn.call(this,e,t)}function S9(e,t){pn.call(this,e,t)}function xZ(e,t){pn.call(this,e,t)}function uF(e,t){pn.call(this,e,t)}function oC(e,t){pn.call(this,e,t)}function P9(e,t){pn.call(this,e,t)}function aF(e,t){pn.call(this,e,t)}function YS(e,t){pn.call(this,e,t)}function LZ(e,t){pn.call(this,e,t)}function Li(e,t){pn.call(this,e,t)}function M9(e,t){pn.call(this,e,t)}function hOe(e,t){this.a=e,this.b=t}function dOe(e,t){this.a=e,this.b=t}function gOe(e,t){this.a=e,this.b=t}function bOe(e,t){this.a=e,this.b=t}function pOe(e,t){this.a=e,this.b=t}function wOe(e,t){this.a=e,this.b=t}function mOe(e,t){this.a=e,this.b=t}function vOe(e,t){this.a=e,this.b=t}function yOe(e,t){this.a=e,this.b=t}function NZ(e,t){this.b=e,this.a=t}function _Oe(e,t){this.b=e,this.a=t}function EOe(e,t){this.b=e,this.a=t}function SOe(e,t){this.b=e,this.a=t}function l_(e,t){this.c=e,this.d=t}function POe(e,t){this.e=e,this.d=t}function MOe(e,t){this.a=e,this.b=t}function COe(e,t){this.b=t,this.c=e}function C9(e,t){pn.call(this,e,t)}function cC(e,t){pn.call(this,e,t)}function lF(e,t){pn.call(this,e,t)}function XS(e,t){pn.call(this,e,t)}function FZ(e,t){pn.call(this,e,t)}function fF(e,t){pn.call(this,e,t)}function hF(e,t){pn.call(this,e,t)}function sC(e,t){pn.call(this,e,t)}function BZ(e,t){pn.call(this,e,t)}function dF(e,t){pn.call(this,e,t)}function JS(e,t){pn.call(this,e,t)}function $Z(e,t){pn.call(this,e,t)}function QS(e,t){pn.call(this,e,t)}function ZS(e,t){pn.call(this,e,t)}function Op(e,t){pn.call(this,e,t)}function gF(e,t){pn.call(this,e,t)}function bF(e,t){pn.call(this,e,t)}function KZ(e,t){pn.call(this,e,t)}function e5(e,t){pn.call(this,e,t)}function pF(e,t){pn.call(this,e,t)}function I9(e,t){pn.call(this,e,t)}function uC(e,t){pn.call(this,e,t)}function aC(e,t){pn.call(this,e,t)}function Ky(e,t){pn.call(this,e,t)}function wF(e,t){pn.call(this,e,t)}function qZ(e,t){pn.call(this,e,t)}function mF(e,t){pn.call(this,e,t)}function vF(e,t){pn.call(this,e,t)}function HZ(e,t){pn.call(this,e,t)}function yF(e,t){pn.call(this,e,t)}function _F(e,t){pn.call(this,e,t)}function EF(e,t){pn.call(this,e,t)}function SF(e,t){pn.call(this,e,t)}function zZ(e,t){pn.call(this,e,t)}function IOe(e,t){this.b=e,this.a=t}function TOe(e,t){this.a=e,this.b=t}function jOe(e,t){this.a=e,this.b=t}function AOe(e,t){this.a=e,this.b=t}function OOe(e,t){this.a=e,this.b=t}function VZ(e,t){pn.call(this,e,t)}function GZ(e,t){pn.call(this,e,t)}function DOe(e,t){this.b=e,this.d=t}function UZ(e,t){pn.call(this,e,t)}function WZ(e,t){pn.call(this,e,t)}function kOe(e,t){this.a=e,this.b=t}function ROe(e,t){this.a=e,this.b=t}function T9(e,t){pn.call(this,e,t)}function t5(e,t){pn.call(this,e,t)}function YZ(e,t){pn.call(this,e,t)}function XZ(e,t){pn.call(this,e,t)}function JZ(e,t){pn.call(this,e,t)}function PF(e,t){pn.call(this,e,t)}function QZ(e,t){pn.call(this,e,t)}function MF(e,t){pn.call(this,e,t)}function j9(e,t){pn.call(this,e,t)}function CF(e,t){pn.call(this,e,t)}function IF(e,t){pn.call(this,e,t)}function lC(e,t){pn.call(this,e,t)}function TF(e,t){pn.call(this,e,t)}function ZZ(e,t){pn.call(this,e,t)}function fC(e,t){pn.call(this,e,t)}function eee(e,t){pn.call(this,e,t)}function Vyt(e,t){return bs(e.c,t)}function Gyt(e,t){return bs(t.b,e)}function Uyt(e,t){return-e.b.Je(t)}function tee(e,t){return bs(e.g,t)}function hC(e,t){pn.call(this,e,t)}function qy(e,t){pn.call(this,e,t)}function xOe(e,t){this.a=e,this.b=t}function LOe(e,t){this.a=e,this.b=t}function $e(e,t){this.a=e,this.b=t}function n5(e,t){pn.call(this,e,t)}function i5(e,t){pn.call(this,e,t)}function dC(e,t){pn.call(this,e,t)}function jF(e,t){pn.call(this,e,t)}function A9(e,t){pn.call(this,e,t)}function r5(e,t){pn.call(this,e,t)}function AF(e,t){pn.call(this,e,t)}function O9(e,t){pn.call(this,e,t)}function Mm(e,t){pn.call(this,e,t)}function gC(e,t){pn.call(this,e,t)}function o5(e,t){pn.call(this,e,t)}function c5(e,t){pn.call(this,e,t)}function bC(e,t){pn.call(this,e,t)}function D9(e,t){pn.call(this,e,t)}function Cm(e,t){pn.call(this,e,t)}function k9(e,t){pn.call(this,e,t)}function NOe(e,t){this.a=e,this.b=t}function FOe(e,t){this.a=e,this.b=t}function BOe(e,t){this.a=e,this.b=t}function $Oe(e,t){this.a=e,this.b=t}function KOe(e,t){this.a=e,this.b=t}function qOe(e,t){this.a=e,this.b=t}function yr(e,t){this.a=e,this.b=t}function R9(e,t){pn.call(this,e,t)}function HOe(e,t){this.a=e,this.b=t}function zOe(e,t){this.a=e,this.b=t}function VOe(e,t){this.a=e,this.b=t}function GOe(e,t){this.a=e,this.b=t}function UOe(e,t){this.a=e,this.b=t}function WOe(e,t){this.a=e,this.b=t}function YOe(e,t){this.b=e,this.a=t}function XOe(e,t){this.b=e,this.a=t}function JOe(e,t){this.b=e,this.a=t}function QOe(e,t){this.b=e,this.a=t}function ZOe(e,t){this.a=e,this.b=t}function e7e(e,t){this.a=e,this.b=t}function Wyt(e,t){PLt(e.a,c(t,56))}function t7e(e,t){LCt(e.a,c(t,11))}function Yyt(e,t){return m_(),t!=e}function n7e(){return I9e(),new snt}function i7e(){i$(),this.b=new er}function r7e(){U7(),this.a=new er}function o7e(){Une(),nne.call(this)}function Hy(e,t){pn.call(this,e,t)}function c7e(e,t){this.a=e,this.b=t}function s7e(e,t){this.a=e,this.b=t}function x9(e,t){this.a=e,this.b=t}function u7e(e,t){this.a=e,this.b=t}function a7e(e,t){this.a=e,this.b=t}function l7e(e,t){this.a=e,this.b=t}function f7e(e,t){this.d=e,this.b=t}function nee(e,t){this.d=e,this.e=t}function h7e(e,t){this.f=e,this.c=t}function pC(e,t){this.b=e,this.c=t}function iee(e,t){this.i=e,this.g=t}function d7e(e,t){this.e=e,this.a=t}function g7e(e,t){this.a=e,this.b=t}function ree(e,t){e.i=null,NO(e,t)}function Xyt(e,t){e&&Kn(Gj,e,t)}function b7e(e,t){return xK(e.a,t)}function L9(e){return jI(e.c,e.b)}function Uo(e){return e?e.dd():null}function le(e){return e??null}function Dp(e){return typeof e===M2}function kp(e){return typeof e===Nue}function fr(e){return typeof e===_H}function u1(e,t){return e.Hd().Xb(t)}function N9(e,t){return hTt(e.Kc(),t)}function Ub(e,t){return uc(e,t)==0}function Jyt(e,t){return uc(e,t)>=0}function s5(e,t){return uc(e,t)!=0}function Qyt(e){return""+(yt(e),e)}function wC(e,t){return e.substr(t)}function p7e(e){return Bs(e),e.d.gc()}function OF(e){return WRt(e,e.c),e}function F9(e){return y5(e==null),e}function u5(e,t){return e.a+=""+t,e}function co(e,t){return e.a+=""+t,e}function a5(e,t){return e.a+=""+t,e}function nc(e,t){return e.a+=""+t,e}function wn(e,t){return e.a+=""+t,e}function oee(e,t){return e.a+=""+t,e}function w7e(e,t){Ri(e,t,e.a,e.a.a)}function Tg(e,t){Ri(e,t,e.c.b,e.c)}function Zyt(e,t,n){CVe(t,Pq(e,n))}function e2t(e,t,n){CVe(t,Pq(e,n))}function t2t(e,t){UCt(new $t(e),t)}function m7e(e,t){e.q.setTime(l0(t))}function v7e(e,t){fne.call(this,e,t)}function y7e(e,t){fne.call(this,e,t)}function DF(e,t){fne.call(this,e,t)}function _7e(e){Is(this),G5(this,e)}function cee(e){return pt(e,0),null}function ol(e){return e.a=0,e.b=0,e}function E7e(e,t){return e.a=t.g+1,e}function n2t(e,t){return e.j[t.p]==2}function see(e){return FSt(c(e,79))}function S7e(){S7e=Z,tit=vn(KK())}function P7e(){P7e=Z,mrt=vn(cWe())}function M7e(){this.b=new Fy(Xp(12))}function C7e(){this.b=0,this.a=!1}function I7e(){this.b=0,this.a=!1}function l5(e){this.a=e,SN.call(this)}function T7e(e){this.a=e,SN.call(this)}function ut(e,t){Wi.call(this,e,t)}function kF(e,t){Fp.call(this,e,t)}function Im(e,t){iee.call(this,e,t)}function RF(e,t){X_.call(this,e,t)}function j7e(e,t){mC.call(this,e,t)}function In(e,t){p9(),Kn(Fx,e,t)}function xF(e,t){return fu(e.a,0,t)}function A7e(e,t){return e.a.a.a.cc(t)}function O7e(e,t){return le(e)===le(t)}function i2t(e,t){return zi(e.a,t.a)}function r2t(e,t){return Uc(e.a,t.a)}function o2t(e,t){return hxe(e.a,t.a)}function af(e,t){return e.indexOf(t)}function Wb(e,t){return e==t?0:e?1:-1}function B9(e){return e<10?"0"+e:""+e}function c2t(e){return nn(e),new l5(e)}function D7e(e){return Bc(e.l,e.m,e.h)}function f_(e){return xi((yt(e),e))}function s2t(e){return xi((yt(e),e))}function k7e(e,t){return Uc(e.g,t.g)}function Oo(e){return typeof e===Nue}function u2t(e){return e==V0||e==Ow}function a2t(e){return e==V0||e==Aw}function uee(e){return Do(e.b.b,e,0)}function R7e(e){this.a=n7e(),this.b=e}function x7e(e){this.a=n7e(),this.b=e}function l2t(e,t){return Ee(e.a,t),t}function f2t(e,t){return Ee(e.c,t),e}function L7e(e,t){return wu(e.a,t),e}function h2t(e,t){return ka(),t.a+=e}function d2t(e,t){return ka(),t.a+=e}function g2t(e,t){return ka(),t.c+=e}function aee(e,t){L_(e,0,e.length,t)}function Eh(){pQ.call(this,new Ng)}function N7e(){m8.call(this,0,0,0,0)}function zy(){Ru.call(this,0,0,0,0)}function go(e){this.a=e.a,this.b=e.b}function a1(e){return e==ga||e==Va}function h_(e){return e==Gh||e==Vh}function F7e(e){return e==Bv||e==Fv}function Tm(e){return e!=Xl&&e!=Y1}function Qs(e){return e.Lg()&&e.Mg()}function B7e(e){return R8(c(e,118))}function $9(e){return wu(new tr,e)}function $7e(e,t){return new X_(t,e)}function b2t(e,t){return new X_(t,e)}function lee(e,t,n){jO(e,t),AO(e,n)}function K9(e,t,n){p0(e,t),b0(e,n)}function Cl(e,t,n){es(e,t),ts(e,n)}function q9(e,t,n){$_(e,t),q_(e,n)}function H9(e,t,n){K_(e,t),H_(e,n)}function LF(e,t){nE(e,t),z_(e,e.D)}function fee(e){h7e.call(this,e,!0)}function K7e(e,t,n){ete.call(this,e,t,n)}function l1(e){T1(),pTt.call(this,e)}function q7e(){v9.call(this,"Head",1)}function H7e(){v9.call(this,"Tail",3)}function NF(e){e.c=oe(xt,xe,1,0,5,1)}function z7e(e){e.a=oe(xt,xe,1,8,5,1)}function V7e(e){Zc(e.xf(),new kIe(e))}function jm(e){return e!=null?fi(e):0}function p2t(e,t){return Jp(t,jl(e))}function w2t(e,t){return Jp(t,jl(e))}function m2t(e,t){return e[e.length]=t}function v2t(e,t){return e[e.length]=t}function hee(e){return m4t(e.b.Kc(),e.a)}function y2t(e,t){return LO(LB(e.d),t)}function _2t(e,t){return LO(LB(e.g),t)}function E2t(e,t){return LO(LB(e.j),t)}function Yr(e,t){Wi.call(this,e.b,t)}function Yb(e){m8.call(this,e,e,e,e)}function dee(e){return e.b&&rH(e),e.a}function gee(e){return e.b&&rH(e),e.c}function S2t(e,t){Vl||(e.b=t)}function FF(e,t,n){return vi(e,t,n),n}function G7e(e,t,n){vi(e.c[t.g],t.g,n)}function P2t(e,t,n){c(e.c,69).Xh(t,n)}function M2t(e,t,n){Cl(n,n.i+e,n.j+t)}function C2t(e,t){on(dc(e.a),cNe(t))}function I2t(e,t){on(Ns(e.a),sNe(t))}function f5(e){Ln(),Lb.call(this,e)}function T2t(e){return e==null?0:fi(e)}function U7e(){U7e=Z,uW=new n6(iY)}function un(){un=Z,new W7e,new Se}function W7e(){new en,new en,new en}function bee(){bee=Z,kQ(),ohe=new en}function Il(){Il=Z,g.Math.log(2)}function Du(){Du=Z,sh=(eOe(),fft)}function j2t(){throw V(new td(Ltt))}function A2t(){throw V(new td(Ltt))}function O2t(){throw V(new td(Ntt))}function D2t(){throw V(new td(Ntt))}function Y7e(e){this.a=e,kte.call(this,e)}function BF(e){this.a=e,c9.call(this,e)}function $F(e){this.a=e,c9.call(this,e)}function cr(e,t){wB(e.c,e.c.length,t)}function Fo(e){return e.at?1:0}function J7e(e,t){return uc(e,t)>0?e:t}function Bc(e,t,n){return{l:e,m:t,h:n}}function k2t(e,t){e.a!=null&&t7e(t,e.a)}function Q7e(e){e.a=new ii,e.c=new ii}function z9(e){this.b=e,this.a=new Se}function Z7e(e){this.b=new F2e,this.a=e}function wee(e){ate.call(this),this.a=e}function eDe(){v9.call(this,"Range",2)}function tDe(){fce(),this.a=new JI(kde)}function R2t(e,t){nn(t),Rm(e).Jc(new R)}function x2t(e,t){return hu(),t.n.b+=e}function L2t(e,t,n){return Kn(e.g,n,t)}function N2t(e,t,n){return Kn(e.k,n,t)}function F2t(e,t){return Kn(e.a,t.a,t)}function Am(e,t,n){return Ooe(t,n,e.c)}function mee(e){return new $e(e.c,e.d)}function B2t(e){return new $e(e.c,e.d)}function Wo(e){return new $e(e.a,e.b)}function nDe(e,t){return uqt(e.a,t,null)}function $2t(e){Rr(e,null),br(e,null)}function iDe(e){o$(e,null),c$(e,null)}function rDe(){mC.call(this,null,null)}function oDe(){Q9.call(this,null,null)}function vee(e){this.a=e,en.call(this)}function K2t(e){this.b=(st(),new AN(e))}function V9(e){e.j=oe(mhe,we,310,0,0,1)}function q2t(e,t,n){e.c.Vc(t,c(n,133))}function H2t(e,t,n){e.c.ji(t,c(n,133))}function cDe(e,t){Xt(e),e.Gc(c(t,15))}function h5(e,t){return PKt(e.c,e.b,t)}function z2t(e,t){return new TDe(e.Kc(),t)}function KF(e,t){return HTt(e.Kc(),t)!=-1}function yee(e,t){return e.a.Bc(t)!=null}function G9(e){return e.Ob()?e.Pb():null}function sDe(e){return pf(e,0,e.length)}function Q(e,t){return e!=null&&VK(e,t)}function V2t(e,t){e.q.setHours(t),_6(e,t)}function uDe(e,t){e.c&&(zte(t),RLe(t))}function G2t(e,t,n){c(e.Kb(n),164).Nb(t)}function U2t(e,t,n){return tqt(e,t,n),n}function aDe(e,t,n){e.a=t^1502,e.b=n^ez}function qF(e,t,n){return e.a[t.g][n.g]}function Tl(e,t){return e.a[t.c.p][t.p]}function W2t(e,t){return e.e[t.c.p][t.p]}function Y2t(e,t){return e.c[t.c.p][t.p]}function X2t(e,t){return e.j[t.p]=oLt(t)}function J2t(e,t){return Sie(e.f,t.tg())}function Q2t(e,t){return Sie(e.b,t.tg())}function Z2t(e,t){return e.a0?t*t/e:t*t*100}function P3t(e,t){return e>0?t/(e*e):t*100}function M3t(e,t,n){return Ee(t,DHe(e,n))}function C3t(e,t,n){bO(),e.Xe(t)&&n.td(e)}function b_(e,t,n){var i;i=e.Zc(t),i.Rb(n)}function xp(e,t,n){return e.a+=t,e.b+=n,e}function I3t(e,t,n){return e.a*=t,e.b*=n,e}function _C(e,t,n){return e.a-=t,e.b-=n,e}function zee(e,t){return e.a=t.a,e.b=t.b,e}function t8(e){return e.a=-e.a,e.b=-e.b,e}function $De(e){this.c=e,this.a=1,this.b=1}function KDe(e){this.c=e,es(e,0),ts(e,0)}function qDe(e){wi.call(this),q5(this,e)}function HDe(e){vH(),gAe(this),this.mf(e)}function zDe(e,t){GS(),mC.call(this,e,t)}function Vee(e,t){rd(),Q9.call(this,e,t)}function VDe(e,t){rd(),Q9.call(this,e,t)}function GDe(e,t){rd(),Vee.call(this,e,t)}function Zs(e,t,n){iu.call(this,e,t,n,2)}function YF(e,t){Du(),w8.call(this,e,t)}function UDe(e,t){Du(),YF.call(this,e,t)}function Gee(e,t){Du(),YF.call(this,e,t)}function WDe(e,t){Du(),Gee.call(this,e,t)}function Uee(e,t){Du(),w8.call(this,e,t)}function YDe(e,t){Du(),Uee.call(this,e,t)}function XDe(e,t){Du(),w8.call(this,e,t)}function T3t(e,t){return e.c.Fc(c(t,133))}function Wee(e,t,n){return oD(iI(e,t),n)}function j3t(e,t,n){return t.Qk(e.e,e.c,n)}function A3t(e,t,n){return t.Rk(e.e,e.c,n)}function XF(e,t){return S1(e.e,c(t,49))}function O3t(e,t,n){e6(Ns(e.a),t,sNe(n))}function D3t(e,t,n){e6(dc(e.a),t,cNe(n))}function Yee(e,t){t.$modCount=e.$modCount}function w5(){w5=Z,KP=new hi("root")}function p_(){p_=Z,Wj=new GAe,new UAe}function JDe(){this.a=new u0,this.b=new u0}function Xee(){pKe.call(this),this.Bb|=Vr}function QDe(){pn.call(this,"GROW_TREE",0)}function k3t(e){return e==null?null:Jqt(e)}function R3t(e){return e==null?null:okt(e)}function x3t(e){return e==null?null:Ro(e)}function L3t(e){return e==null?null:Ro(e)}function Sh(e){e.o==null&&kxt(e)}function Fe(e){return y5(e==null||Dp(e)),e}function Te(e){return y5(e==null||kp(e)),e}function ln(e){return y5(e==null||fr(e)),e}function Jee(e){this.q=new g.Date(l0(e))}function EC(e,t){this.c=e,c_.call(this,e,t)}function n8(e,t){this.a=e,EC.call(this,e,t)}function N3t(e,t){this.d=e,uIe(this),this.b=t}function Qee(e,t){I$.call(this,e),this.a=t}function Zee(e,t){I$.call(this,e),this.a=t}function F3t(e){Coe.call(this,0,0),this.f=e}function ete(e,t,n){dO.call(this,e,t,n,null)}function ZDe(e,t,n){dO.call(this,e,t,n,null)}function B3t(e,t,n){return e.ue(t,n)<=0?n:t}function $3t(e,t,n){return e.ue(t,n)<=0?t:n}function K3t(e,t){return c(h0(e.b,t),149)}function q3t(e,t){return c(h0(e.c,t),229)}function JF(e){return c(Ne(e.a,e.b),287)}function eke(e){return new $e(e.c,e.d+e.a)}function tke(e){return hu(),F7e(c(e,197))}function Lp(){Lp=Z,ude=nt((ou(),Cb))}function H3t(e,t){t.a?TNt(e,t):HF(e.a,t.b)}function nke(e,t){Vl||Ee(e.a,t)}function z3t(e,t){return tC(),Y_(t.d.i,e)}function V3t(e,t){return h2(),new rYe(t,e)}function ff(e,t){return FC(t,iae),e.f=t,e}function tte(e,t,n){return n=yu(e,t,3,n),n}function nte(e,t,n){return n=yu(e,t,6,n),n}function ite(e,t,n){return n=yu(e,t,9,n),n}function SC(e,t,n){++e.j,e.Ki(),M$(e,t,n)}function ike(e,t,n){++e.j,e.Hi(t,e.oi(t,n))}function rke(e,t,n){var i;i=e.Zc(t),i.Rb(n)}function oke(e,t,n){return wue(e.c,e.b,t,n)}function rte(e,t){return(t&Fn)%e.d.length}function Wi(e,t){hi.call(this,e),this.a=t}function ote(e,t){CQ.call(this,e),this.a=t}function QF(e,t){CQ.call(this,e),this.a=t}function cke(e,t){this.c=e,d0.call(this,t)}function ske(e,t){this.a=e,uAe.call(this,t)}function PC(e,t){this.a=e,uAe.call(this,t)}function uke(e){this.a=(pu(e,mw),new Dc(e))}function ake(e){this.a=(pu(e,mw),new Dc(e))}function MC(e){return!e.a&&(e.a=new H),e.a}function lke(e){return e>8?0:e+1}function G3t(e,t){return Pt(),e==t?0:e?1:-1}function cte(e,t,n){return Xy(e,c(t,22),n)}function U3t(e,t,n){return e.apply(t,n)}function fke(e,t,n){return e.a+=pf(t,0,n),e}function ste(e,t){var n;return n=e.e,e.e=t,n}function W3t(e,t){var n;n=e[ZH],n.call(e,t)}function Y3t(e,t){var n;n=e[ZH],n.call(e,t)}function Np(e,t){e.a.Vc(e.b,t),++e.b,e.c=-1}function hke(e){Is(e.e),e.d.b=e.d,e.d.a=e.d}function CC(e){e.b?CC(e.b):e.f.c.zc(e.e,e.d)}function X3t(e,t,n){Ig(),oIe(e,t.Ce(e.a,n))}function J3t(e,t){return QN(WHe(e.a,t,!0))}function Q3t(e,t){return QN(YHe(e.a,t,!0))}function Da(e,t){return e9(new Array(t),e)}function ZF(e){return String.fromCharCode(e)}function Z3t(e){return e==null?null:e.message}function dke(){this.a=new Se,this.b=new Se}function gke(){this.a=new IJ,this.b=new SAe}function bke(){this.b=new Tr,this.c=new Se}function ute(){this.d=new Tr,this.e=new Tr}function ate(){this.n=new Tr,this.o=new Tr}function i8(){this.n=new Ry,this.i=new zy}function pke(){this.a=new YMe,this.b=new L4e}function wke(){this.a=new Se,this.d=new Se}function mke(){this.b=new er,this.a=new er}function vke(){this.b=new en,this.a=new en}function yke(){this.b=new e8e,this.a=new FSe}function _ke(){i8.call(this),this.a=new Tr}function m5(e){PTt.call(this,e,(wO(),pG))}function lte(e,t,n,i){m8.call(this,e,t,n,i)}function e_t(e,t,n){n!=null&&RO(t,nq(e,n))}function t_t(e,t,n){n!=null&&xO(t,nq(e,n))}function fte(e,t,n){return n=yu(e,t,11,n),n}function Wn(e,t){return e.a+=t.a,e.b+=t.b,e}function hr(e,t){return e.a-=t.a,e.b-=t.b,e}function n_t(e,t){return e.n.a=(yt(t),t+10)}function i_t(e,t){return e.n.a=(yt(t),t+10)}function r_t(e,t){return t==e||pE(z7(t),e)}function Eke(e,t){return Kn(e.a,t,"")==null}function o_t(e,t){return tC(),!Y_(t.d.i,e)}function c_t(e,t){a1(e.f)?Sxt(e,t):sDt(e,t)}function s_t(e,t){var n;return n=t.Hh(e.a),n}function Fp(e,t){ho.call(this,J6+e+ub+t)}function Uy(e,t,n,i){Me.call(this,e,t,n,i)}function hte(e,t,n,i){Me.call(this,e,t,n,i)}function Ske(e,t,n,i){hte.call(this,e,t,n,i)}function Pke(e,t,n,i){T8.call(this,e,t,n,i)}function eB(e,t,n,i){T8.call(this,e,t,n,i)}function dte(e,t,n,i){T8.call(this,e,t,n,i)}function Mke(e,t,n,i){eB.call(this,e,t,n,i)}function gte(e,t,n,i){eB.call(this,e,t,n,i)}function dt(e,t,n,i){dte.call(this,e,t,n,i)}function Cke(e,t,n,i){gte.call(this,e,t,n,i)}function Ike(e,t,n,i){hne.call(this,e,t,n,i)}function Tke(e,t,n){this.a=e,$ee.call(this,t,n)}function jke(e,t,n){this.c=t,this.b=n,this.a=e}function u_t(e,t,n){return e.d=c(t.Kb(n),164)}function bte(e,t){return e.Aj().Nh().Kh(e,t)}function pte(e,t){return e.Aj().Nh().Ih(e,t)}function Ake(e,t){return yt(e),le(e)===le(t)}function rt(e,t){return yt(e),le(e)===le(t)}function tB(e,t){return QN(WHe(e.a,t,!1))}function nB(e,t){return QN(YHe(e.a,t,!1))}function a_t(e,t){return e.b.sd(new aOe(e,t))}function l_t(e,t){return e.b.sd(new lOe(e,t))}function Oke(e,t){return e.b.sd(new fOe(e,t))}function wte(e,t,n){return e.lastIndexOf(t,n)}function f_t(e,t,n){return zi(e[t.b],e[n.b])}function h_t(e,t){return pe(t,(Oe(),lj),e)}function d_t(e,t){return Uc(t.a.d.p,e.a.d.p)}function g_t(e,t){return Uc(e.a.d.p,t.a.d.p)}function b_t(e,t){return zi(e.c-e.s,t.c-t.s)}function Dke(e){return e.c?Do(e.c.a,e,0):-1}function p_t(e){return e<100?null:new i1(e)}function Wy(e){return e==Mb||e==ch||e==Ic}function kke(e,t){return Q(t,15)&&BWe(e.c,t)}function w_t(e,t){Vl||t&&(e.d=t)}function iB(e,t){var n;return n=t,!!$re(e,n)}function mte(e,t){this.c=e,AB.call(this,e,t)}function Rke(e){this.c=e,DF.call(this,dD,0)}function xke(e,t){E4t.call(this,e,e.length,t)}function m_t(e,t,n){return c(e.c,69).lk(t,n)}function r8(e,t,n){return c(e.c,69).mk(t,n)}function v_t(e,t,n){return j3t(e,c(t,332),n)}function vte(e,t,n){return A3t(e,c(t,332),n)}function y_t(e,t,n){return kVe(e,c(t,332),n)}function Lke(e,t,n){return mDt(e,c(t,332),n)}function v5(e,t){return t==null?null:tw(e.b,t)}function yte(e){return kp(e)?(yt(e),e):e.ke()}function o8(e){return!isNaN(e)&&!isFinite(e)}function Nke(e){hf(),this.a=(st(),new t_(e))}function IC(e){m_(),this.d=e,this.a=new vm}function ku(e,t,n){this.a=e,this.b=t,this.c=n}function Fke(e,t,n){this.a=e,this.b=t,this.c=n}function Bke(e,t,n){this.d=e,this.b=n,this.a=t}function rB(e){Q7e(this),na(this),qr(this,e)}function ps(e){NF(this),xte(this.c,0,e.Pc())}function $ke(e){nu(e.a),NBe(e.c,e.b),e.b=null}function Kke(e){this.a=e,Nf(),ns(Date.now())}function qke(){qke=Z,Bhe=new C,Ok=new C}function oB(){oB=Z,Ahe=new kr,unt=new jo}function Hke(){Hke=Z,pft=oe(xt,xe,1,0,5,1)}function zke(){zke=Z,Rft=oe(xt,xe,1,0,5,1)}function _te(){_te=Z,xft=oe(xt,xe,1,0,5,1)}function hf(){hf=Z,new jQ((st(),st(),Qr))}function __t(e){return wO(),mn((WBe(),fnt),e)}function E_t(e){return Fl(),mn((dBe(),wnt),e)}function S_t(e){return p7(),mn((yFe(),Snt),e)}function P_t(e){return EO(),mn((_Fe(),Pnt),e)}function M_t(e){return X7(),mn((sqe(),Mnt),e)}function C_t(e){return al(),mn((lBe(),Tnt),e)}function I_t(e){return Ts(),mn((fBe(),Ant),e)}function T_t(e){return Qc(),mn((hBe(),Dnt),e)}function j_t(e){return fD(),mn((S7e(),tit),e)}function A_t(e){return v0(),mn((XBe(),iit),e)}function O_t(e){return m2(),mn((JBe(),oit),e)}function D_t(e){return c6(),mn((QBe(),uit),e)}function k_t(e){return l9(),mn((QNe(),ait),e)}function R_t(e){return SO(),mn((EFe(),Cit),e)}function x_t(e){return $5(),mn((gBe(),Uit),e)}function L_t(e){return Hr(),mn((T$e(),Jit),e)}function N_t(e){return Q_(),mn((YBe(),nrt),e)}function F_t(e){return y0(),mn((bBe(),urt),e)}function Ete(e,t){if(!e)throw V(new St(t))}function B_t(e){return Dt(),mn((Y$e(),hrt),e)}function Ste(e){m8.call(this,e.d,e.c,e.a,e.b)}function cB(e){m8.call(this,e.d,e.c,e.a,e.b)}function Pte(e,t,n){this.b=e,this.c=t,this.a=n}function c8(e,t,n){this.b=e,this.a=t,this.c=n}function Vke(e,t,n){this.a=e,this.b=t,this.c=n}function Mte(e,t,n){this.a=e,this.b=t,this.c=n}function Gke(e,t,n){this.a=e,this.b=t,this.c=n}function Cte(e,t,n){this.a=e,this.b=t,this.c=n}function Uke(e,t,n){this.b=e,this.a=t,this.c=n}function s8(e,t,n){this.e=t,this.b=e,this.d=n}function $_t(e,t,n){return Ig(),e.a.Od(t,n),t}function sB(e){var t;return t=new Pi,t.e=e,t}function Ite(e){var t;return t=new AAe,t.b=e,t}function TC(){TC=Z,zk=new f_e,Vk=new h_e}function ka(){ka=Z,Crt=new WEe,Irt=new YEe}function K_t(e){return YO(),mn((e$e(),_rt),e)}function q_t(e){return Nl(),mn((n$e(),Art),e)}function H_t(e){return W7(),mn((XKe(),Frt),e)}function z_t(e){return y2(),mn((Q$e(),Brt),e)}function V_t(e){return gO(),mn((TFe(),$rt),e)}function G_t(e){return f2(),mn((pBe(),Krt),e)}function U_t(e){return Zm(),mn((S$e(),Drt),e)}function W_t(e){return m0(),mn((vBe(),Nrt),e)}function Y_t(e){return DO(),mn((wBe(),qrt),e)}function X_t(e){return Qg(),mn((_$e(),Hrt),e)}function J_t(e){return uI(),mn((PFe(),zrt),e)}function Q_t(e){return zg(),mn((mBe(),Grt),e)}function Z_t(e){return F7(),mn((nKe(),Urt),e)}function eEt(e){return eI(),mn((MFe(),Wrt),e)}function tEt(e){return $I(),mn((eKe(),Yrt),e)}function nEt(e){return mE(),mn((Z$e(),Xrt),e)}function iEt(e){return to(),mn((Eqe(),Jrt),e)}function rEt(e){return J_(),mn((_Be(),Qrt),e)}function oEt(e){return Oh(),mn((yBe(),eot),e)}function cEt(e){return iO(),mn((jFe(),tot),e)}function sEt(e){return Ku(),mn((P$e(),not),e)}function uEt(e){return R7(),mn((tKe(),wst),e)}function aEt(e){return X5(),mn((EBe(),mst),e)}function lEt(e){return rw(),mn((i$e(),vst),e)}function fEt(e){return Zr(),mn((MBe(),Mst),e)}function hEt(e){return iv(),mn((YKe(),_st),e)}function dEt(e){return kh(),mn((PBe(),Est),e)}function gEt(e){return rI(),mn((IFe(),Sst),e)}function bEt(e){return VO(),mn((SBe(),Cst),e)}function pEt(e){return s6(),mn((E$e(),yst),e)}function wEt(e){return WC(),mn((CFe(),Ist),e)}function mEt(e){return rE(),mn((IBe(),Tst),e)}function vEt(e){return HO(),mn((TBe(),jst),e)}function yEt(e){return XO(),mn((CBe(),Ast),e)}function _Et(e){return w0(),mn((jBe(),Hst),e)}function EEt(e){return F5(),mn((OFe(),Wst),e)}function SEt(e){return gf(),mn((DFe(),tut),e)}function PEt(e){return Al(),mn((kFe(),iut),e)}function MEt(e){return cl(),mn((AFe(),mut),e)}function CEt(e){return s0(),mn((RFe(),Mut),e)}function IEt(e){return dE(),mn((ZBe(),Cut),e)}function TEt(e){return d6(),mn((iKe(),Tut),e)}function jEt(e){return Y8(),mn((NFe(),qut),e)}function AEt(e){return $O(),mn((LFe(),Wut),e)}function OEt(e){return Z8(),mn((xFe(),Hut),e)}function DEt(e){return s7(),mn((ABe(),Xut),e)}function kEt(e){return pO(),mn((FFe(),Jut),e)}function REt(e){return EI(),mn((OBe(),Qut),e)}function xEt(e){return C7(),mn((t$e(),dat),e)}function LEt(e){return zO(),mn((kBe(),gat),e)}function NEt(e){return c7(),mn((DBe(),bat),e)}function FEt(e){return PE(),mn((I$e(),xat),e)}function BEt(e){return TI(),mn((RBe(),Lat),e)}function $Et(e){return h9(),mn((XNe(),Nat),e)}function KEt(e){return d9(),mn((YNe(),Bat),e)}function qEt(e){return YC(),mn(($Fe(),$at),e)}function HEt(e){return qI(),mn((M$e(),Kat),e)}function zEt(e){return zS(),mn((JNe(),ilt),e)}function VEt(e){return mI(),mn((BFe(),rlt),e)}function GEt(e){return fl(),mn((C$e(),llt),e)}function UEt(e){return yd(),mn((JKe(),hlt),e)}function WEt(e){return Gf(),mn((J$e(),dlt),e)}function YEt(e){return sw(),mn((X$e(),vlt),e)}function XEt(e){return Jr(),mn((P7e(),mrt),e)}function JEt(e){return G_(),mn((SFe(),wrt),e)}function QEt(e){return eo(),mn((j$e(),Rlt),e)}function ZEt(e){return xl(),mn((LBe(),xlt),e)}function e4t(e){return Lh(),mn((c$e(),Llt),e)}function t4t(e){return L7(),mn((oKe(),Nlt),e)}function n4t(e){return Rh(),mn((xBe(),Blt),e)}function i4t(e){return mu(),mn((o$e(),Klt),e)}function r4t(e){return fw(),mn((cqe(),qlt),e)}function o4t(e){return Um(),mn((A$e(),Hlt),e)}function c4t(e){return wr(),mn((V$e(),zlt),e)}function s4t(e){return js(),mn((rKe(),Vlt),e)}function u4t(e){return ou(),mn((u$e(),Jlt),e)}function a4t(e){return Ks(),mn((Sqe(),Qlt),e)}function l4t(e){return Ie(),mn((O$e(),Glt),e)}function f4t(e){return l7(),mn((s$e(),Zlt),e)}function h4t(e){return ru(),mn((r$e(),nft),e)}function d4t(e){return _E(),mn((QKe(),bft),e)}function g4t(e,t){return yt(e),e+(yt(t),t)}function b4t(e,t){return Nf(),on(he(e.a),t)}function p4t(e,t){return Nf(),on(he(e.a),t)}function uB(e,t){this.c=e,this.a=t,this.b=t-e}function Wke(e,t,n){this.a=e,this.b=t,this.c=n}function Tte(e,t,n){this.a=e,this.b=t,this.c=n}function jte(e,t,n){this.a=e,this.b=t,this.c=n}function Yke(e,t,n){this.a=e,this.b=t,this.c=n}function Xke(e,t,n){this.a=e,this.b=t,this.c=n}function cd(e,t,n){this.e=e,this.a=t,this.c=n}function Jke(e,t,n){Du(),Kne.call(this,e,t,n)}function aB(e,t,n){Du(),Mne.call(this,e,t,n)}function Ate(e,t,n){Du(),Mne.call(this,e,t,n)}function Ote(e,t,n){Du(),Mne.call(this,e,t,n)}function Qke(e,t,n){Du(),aB.call(this,e,t,n)}function Dte(e,t,n){Du(),aB.call(this,e,t,n)}function Zke(e,t,n){Du(),Dte.call(this,e,t,n)}function eRe(e,t,n){Du(),Ate.call(this,e,t,n)}function tRe(e,t,n){Du(),Ote.call(this,e,t,n)}function jC(e,t){return nn(e),nn(t),new E8e(e,t)}function Yy(e,t){return nn(e),nn(t),new gRe(e,t)}function w4t(e,t){return nn(e),nn(t),new bRe(e,t)}function m4t(e,t){return nn(e),nn(t),new P8e(e,t)}function c(e,t){return y5(e==null||VK(e,t)),e}function w_(e){var t;return t=new Se,F$(t,e),t}function v4t(e){var t;return t=new er,F$(t,e),t}function nRe(e){var t;return t=new FQ,Q$(t,e),t}function AC(e){var t;return t=new wi,Q$(t,e),t}function y4t(e){return!e.e&&(e.e=new Se),e.e}function _4t(e){return!e.c&&(e.c=new G3),e.c}function Ee(e,t){return e.c[e.c.length]=t,!0}function iRe(e,t){this.c=e,this.b=t,this.a=!1}function kte(e){this.d=e,uIe(this),this.b=dSt(e.d)}function rRe(){this.a=";,;",this.b="",this.c=""}function E4t(e,t,n){oxe.call(this,t,n),this.a=e}function oRe(e,t,n){this.b=e,v7e.call(this,t,n)}function Rte(e,t,n){this.c=e,y9.call(this,t,n)}function xte(e,t,n){ise(n,0,e,t,n.length,!1)}function Bf(e,t,n,i,r){e.b=t,e.c=n,e.d=i,e.a=r}function S4t(e,t){t&&(e.b=t,e.a=(b1(t),t.a))}function Lte(e,t,n,i,r){e.d=t,e.c=n,e.a=i,e.b=r}function Nte(e){var t,n;t=e.b,n=e.c,e.b=n,e.c=t}function Fte(e){var t,n;n=e.d,t=e.a,e.d=t,e.a=n}function Bte(e){return y1(jSt(Oo(e)?ia(e):e))}function P4t(e,t){return Uc(_Re(e.d),_Re(t.d))}function M4t(e,t){return t==(Ie(),Mt)?e.c:e.d}function m_(){m_=Z,r0e=(Ie(),Mt),XR=jt}function cRe(){this.b=ge(Te(Le((dl(),kG))))}function sRe(e){return Ig(),oe(xt,xe,1,e,5,1)}function C4t(e){return new $e(e.c+e.b,e.d+e.a)}function I4t(e,t){return f9(),Uc(e.d.p,t.d.p)}function lB(e){return Lt(e.b!=0),Fu(e,e.a.a)}function T4t(e){return Lt(e.b!=0),Fu(e,e.c.b)}function $te(e,t){if(!e)throw V(new p9e(t))}function u8(e,t){if(!e)throw V(new St(t))}function Kte(e,t,n){l_.call(this,e,t),this.b=n}function OC(e,t,n){nee.call(this,e,t),this.c=n}function uRe(e,t,n){B$e.call(this,t,n),this.d=e}function qte(e){_te(),xA.call(this),this.th(e)}function aRe(e,t,n){this.a=e,Im.call(this,t,n)}function lRe(e,t,n){this.a=e,Im.call(this,t,n)}function a8(e,t,n){nee.call(this,e,t),this.c=n}function fRe(){k_(),USt.call(this,(c1(),_a))}function hRe(e){return e!=null&&!OK(e,oM,cM)}function j4t(e,t){return(_He(e)<<4|_He(t))&Ni}function A4t(e,t){return k8(),ZK(e,t),new Bxe(e,t)}function jg(e,t){var n;e.n&&(n=t,Ee(e.f,n))}function v_(e,t,n){var i;i=new qp(n),ul(e,t,i)}function O4t(e,t){var n;return n=e.c,cre(e,t),n}function Hte(e,t){return t<0?e.g=-1:e.g=t,e}function l8(e,t){return bIt(e),e.a*=t,e.b*=t,e}function dRe(e,t,n,i,r){e.c=t,e.d=n,e.b=i,e.a=r}function Cn(e,t){return Ri(e,t,e.c.b,e.c),!0}function zte(e){e.a.b=e.b,e.b.a=e.a,e.a=e.b=null}function fB(e){this.b=e,this.a=e0(this.b.a).Ed()}function gRe(e,t){this.b=e,this.a=t,SN.call(this)}function bRe(e,t){this.a=e,this.b=t,SN.call(this)}function pRe(e,t){oxe.call(this,t,1040),this.a=e}function DC(e){return e==0||isNaN(e)?e:e<0?-1:1}function D4t(e){return t2(),Uf(e)==yi(M1(e))}function k4t(e){return t2(),M1(e)==yi(Uf(e))}function Zb(e,t){return f6(e,new l_(t.a,t.b))}function R4t(e){return!Kr(e)&&e.c.i.c==e.d.i.c}function f8(e){var t;return t=e.n,e.a.b+t.d+t.a}function wRe(e){var t;return t=e.n,e.e.b+t.d+t.a}function Vte(e){var t;return t=e.n,e.e.a+t.b+t.c}function mRe(e){return Ln(),new $f(0,e)}function x4t(e){return e.a?e.a:VB(e)}function y5(e){if(!e)throw V(new e_(null))}function vRe(){vRe=Z,wY=(st(),new jN(GV))}function h8(){h8=Z,new qoe(($N(),rG),(KN(),iG))}function yRe(){yRe=Z,dhe=oe($r,we,19,256,0,1)}function hB(e,t,n,i){woe.call(this,e,t,n,i,0,0)}function L4t(e,t,n){return Kn(e.b,c(n.b,17),t)}function N4t(e,t,n){return Kn(e.b,c(n.b,17),t)}function F4t(e,t){return Ee(e,new $e(t.a,t.b))}function B4t(e,t){return e.c=t)throw V(new RQ)}function _St(e,t,n){return vi(t,0,Yte(t[0],n[0])),t}function ESt(e,t,n){t.Ye(n,ge(Te(Bt(e.b,n)))*e.a)}function rxe(e,t,n){return ov(),U_(e,t)&&U_(e,n)}function M5(e){return js(),!e.Hc(Wh)&&!e.Hc(X1)}function C8(e){return new $e(e.c+e.b/2,e.d+e.a/2)}function PB(e,t){return t.kh()?S1(e.b,c(t,49)):t}function fne(e,t){this.e=e,this.d=(t&64)!=0?t|mf:t}function oxe(e,t){this.c=0,this.d=e,this.b=t|64|mf}function I8(e){this.b=new Dc(11),this.a=(xm(),e)}function MB(e){this.b=null,this.a=(xm(),e||Ihe)}function cxe(e){this.a=jze(e.a),this.b=new ps(e.b)}function sxe(e){this.b=e,Vy.call(this,e),lDe(this)}function uxe(e){this.b=e,vC.call(this,e),fDe(this)}function Kp(e,t,n){this.a=e,Uy.call(this,t,n,5,6)}function hne(e,t,n,i){this.b=e,qi.call(this,t,n,i)}function sr(e,t,n,i,r){A$.call(this,e,t,n,i,r,-1)}function C5(e,t,n,i,r){QC.call(this,e,t,n,i,r,-1)}function Me(e,t,n,i){qi.call(this,e,t,n),this.b=i}function T8(e,t,n,i){OC.call(this,e,t,n),this.b=i}function axe(e){h7e.call(this,e,!1),this.a=!1}function lxe(e,t){this.b=e,VCe.call(this,e.b),this.a=t}function fxe(e,t){Hp(),Myt.call(this,e,n7(new Js(t)))}function j8(e,t){return Ln(),new Cne(e,t,0)}function CB(e,t){return Ln(),new Cne(6,e,t)}function SSt(e,t){return rt(e.substr(0,t.length),t)}function tu(e,t){return fr(t)?WB(e,t):!!Po(e.f,t)}function Sr(e,t){for(yt(t);e.Ob();)t.td(e.Pb())}function km(e,t,n){T1(),this.e=e,this.d=t,this.a=n}function sd(e,t,n,i){var r;r=e.i,r.i=t,r.a=n,r.b=i}function dne(e){var t;for(t=e;t.f;)t=t.f;return t}function Qy(e){var t;return t=Y5(e),Lt(t!=null),t}function PSt(e){var t;return t=aAt(e),Lt(t!=null),t}function __(e,t){var n;return n=e.a.gc(),Pie(t,n),n-t}function gne(e,t){var n;for(n=0;n0?g.Math.log(e/t):-100}function hxe(e,t){return uc(e,t)<0?-1:uc(e,t)>0?1:0}function vne(e,t,n){return iXe(e,c(t,46),c(n,167))}function dxe(e,t){return c(ane(e0(e.a)).Xb(t),42).cd()}function kSt(e,t){return nIt(t,e.length),new pRe(e,t)}function AB(e,t){this.d=e,$t.call(this,e),this.e=t}function t0(e){this.d=(yt(e),e),this.a=0,this.c=dD}function yne(e,t){Lb.call(this,1),this.a=e,this.b=t}function gxe(e,t){return e.c?gxe(e.c,t):Ee(e.b,t),e}function RSt(e,t,n){var i;return i=Yp(e,t),g$(e,t,n),i}function _ne(e,t){var n;return n=e.slice(0,t),Fie(n,e)}function bxe(e,t,n){var i;for(i=0;i=e.g}function BB(e,t,n){var i;return i=X$(e,t,n),Yse(e,i)}function Zy(e,t){var n;n=e.a.length,Yp(e,n),g$(e,n,t)}function Axe(e,t){var n;n=console[e],n.call(console,t)}function Oxe(e,t){var n;++e.j,n=e.Vi(),e.Ii(e.oi(n,t))}function GSt(e,t,n){c(t.b,65),Zc(t.a,new Tte(e,n,t))}function Mne(e,t,n){HA.call(this,t),this.a=e,this.b=n}function Cne(e,t,n){Lb.call(this,e),this.a=t,this.b=n}function Ine(e,t,n){this.a=e,CQ.call(this,t),this.b=n}function Dxe(e,t,n){this.a=e,iie.call(this,8,t,null,n)}function USt(e){this.a=(yt(yn),yn),this.b=e,new UQ}function kxe(e){this.c=e,this.b=this.c.a,this.a=this.c.e}function Tne(e){this.c=e,this.b=e.a.d.a,Yee(e.a.e,this)}function nu(e){Rp(e.c!=-1),e.d.$c(e.c),e.b=e.c,e.c=-1}function j5(e){return g.Math.sqrt(e.a*e.a+e.b*e.b)}function i0(e,t){return y_(t,e.a.c.length),Ne(e.a,t)}function df(e,t){return le(e)===le(t)||e!=null&&$n(e,t)}function WSt(e){return 0>=e?new yZ:RIt(e-1)}function YSt(e){return tm?WB(tm,e):!1}function Rxe(e){return e?e.dc():!e.Kc().Ob()}function Nr(e){return!e.a&&e.c?e.c.b:e.a}function XSt(e){return!e.a&&(e.a=new qi(J1,e,4)),e.a}function r0(e){return!e.d&&(e.d=new qi(oo,e,1)),e.d}function yt(e){if(e==null)throw V(new AS);return e}function A5(e){e.c?e.c.He():(e.d=!0,tNt(e))}function b1(e){e.c?b1(e.c):(Wg(e),e.d=!0)}function xxe(e){Dne(e.a),e.b=oe(xt,xe,1,e.b.length,5,1)}function JSt(e,t){return Uc(t.j.c.length,e.j.c.length)}function QSt(e,t){e.c<0||e.b.b=0?e.Bh(n):ose(e,t)}function Lxe(e){var t,n;return t=e.c.i.c,n=e.d.i.c,t==n}function e5t(e){if(e.p!=4)throw V(new hs);return e.e}function t5t(e){if(e.p!=3)throw V(new hs);return e.e}function n5t(e){if(e.p!=6)throw V(new hs);return e.f}function i5t(e){if(e.p!=6)throw V(new hs);return e.k}function r5t(e){if(e.p!=3)throw V(new hs);return e.j}function o5t(e){if(e.p!=4)throw V(new hs);return e.j}function jne(e){return!e.b&&(e.b=new zA(new BN)),e.b}function o0(e){return e.c==-2&&nvt(e,SDt(e.g,e.b)),e.c}function P_(e,t){var n;return n=RB("",e),n.n=t,n.i=1,n}function c5t(e,t){vB(c(t.b,65),e),Zc(t.a,new mQ(e))}function s5t(e,t){on((!e.a&&(e.a=new PC(e,e)),e.a),t)}function Nxe(e,t){this.b=e,AB.call(this,e,t),lDe(this)}function Fxe(e,t){this.b=e,mte.call(this,e,t),fDe(this)}function Ane(e,t,n,i){Vb.call(this,e,t),this.d=n,this.a=i}function D8(e,t,n,i){Vb.call(this,e,n),this.a=t,this.f=i}function Bxe(e,t){K2t.call(this,xIt(nn(e),nn(t))),this.a=t}function $xe(){Nce.call(this,lb,(H9e(),Hft)),jKt(this)}function Kxe(){Nce.call(this,la,(r_(),sme)),F$t(this)}function qxe(){pn.call(this,"DELAUNAY_TRIANGULATION",0)}function u5t(e){return String.fromCharCode.apply(null,e)}function Kn(e,t,n){return fr(t)?bo(e,t,n):Kc(e.f,t,n)}function One(e){return st(),e?e.ve():(xm(),xm(),jhe)}function a5t(e,t,n){return d2(),n.pg(e,c(t.cd(),146))}function Hxe(e,t){return h8(),new qoe(new PDe(e),new SDe(t))}function l5t(e){return pu(e,MH),PO(xr(xr(5,e),e/10|0))}function k8(){k8=Z,qtt=new qN(U(G(fb,1),gD,42,0,[]))}function zxe(e){return!e.d&&(e.d=new W3(e.c.Cc())),e.d}function M_(e){return!e.a&&(e.a=new P9e(e.c.vc())),e.a}function Vxe(e){return!e.b&&(e.b=new t_(e.c.ec())),e.b}function qf(e,t){for(;t-- >0;)e=e<<1|(e<0?1:0);return e}function wc(e,t){return le(e)===le(t)||e!=null&&$n(e,t)}function f5t(e,t){return Pt(),c(t.b,19).ai&&++i,i}function Mh(e){var t,n;return n=(t=new Nb,t),B_(n,e),n}function zB(e){var t,n;return n=(t=new Nb,t),$ce(n,e),n}function C5t(e,t){var n;return n=Bt(e.f,t),wre(t,n),null}function VB(e){var t;return t=NIt(e),t||null}function tLe(e){return!e.b&&(e.b=new Me(rr,e,12,3)),e.b}function I5t(e){return e!=null&&ZM(Bx,e.toLowerCase())}function T5t(e,t){return zi(ws(e)*eu(e),ws(t)*eu(t))}function j5t(e,t){return zi(ws(e)*eu(e),ws(t)*eu(t))}function A5t(e,t){return zi(e.d.c+e.d.b/2,t.d.c+t.d.b/2)}function O5t(e,t){return zi(e.g.c+e.g.b/2,t.g.c+t.g.b/2)}function nLe(e,t,n){n.a?ts(e,t.b-e.f/2):es(e,t.a-e.g/2)}function iLe(e,t,n,i){this.a=e,this.b=t,this.c=n,this.d=i}function rLe(e,t,n,i){this.a=e,this.b=t,this.c=n,this.d=i}function kg(e,t,n,i){this.e=e,this.a=t,this.c=n,this.d=i}function oLe(e,t,n,i){this.a=e,this.c=t,this.d=n,this.b=i}function cLe(e,t,n,i){Du(),QFe.call(this,t,n,i),this.a=e}function sLe(e,t,n,i){Du(),QFe.call(this,t,n,i),this.a=e}function uLe(e,t){this.a=e,N3t.call(this,e,c(e.d,15).Zc(t))}function GB(e){this.f=e,this.c=this.f.e,e.f>0&&yVe(this)}function aLe(e,t,n,i){this.b=e,this.c=i,DF.call(this,t,n)}function lLe(e){return Lt(e.b=0&&rt(e.substr(n,t.length),t)}function p1(e,t,n,i,r,o,u){return new p$(e.e,t,n,i,r,o,u)}function ILe(e,t,n,i,r,o){this.a=e,H$.call(this,t,n,i,r,o)}function TLe(e,t,n,i,r,o){this.a=e,H$.call(this,t,n,i,r,o)}function jLe(e,t){this.g=e,this.d=U(G(nh,1),Ed,10,0,[t])}function ud(e,t){this.e=e,this.a=xt,this.b=QWe(t),this.c=t}function ALe(e,t){i8.call(this),Gie(this),this.a=e,this.c=t}function BC(e,t,n,i){vi(e.c[t.g],n.g,i),vi(e.c[n.g],t.g,i)}function JB(e,t,n,i){vi(e.c[t.g],t.g,n),vi(e.b[t.g],t.g,i)}function Z5t(){return WC(),U(G(Ybe,1),_e,376,0,[rW,pj])}function e6t(){return eI(),U(G(K1e,1),_e,479,0,[$1e,mR])}function t6t(){return uI(),U(G(F1e,1),_e,419,0,[pR,N1e])}function n6t(){return gO(),U(G(A1e,1),_e,422,0,[j1e,oU])}function i6t(){return iO(),U(G(ege,1),_e,420,0,[yU,Z1e])}function r6t(){return rI(),U(G(Vbe,1),_e,421,0,[tW,nW])}function o6t(){return F5(),U(G(Ust,1),_e,523,0,[xP,RP])}function c6t(){return cl(),U(G(wut,1),_e,520,0,[Vw,z1])}function s6t(){return gf(),U(G(eut,1),_e,516,0,[ip,jd])}function u6t(){return Al(),U(G(nut,1),_e,515,0,[yb,Wl])}function a6t(){return s0(),U(G(Put,1),_e,455,0,[V1,$v])}function l6t(){return Z8(),U(G(v0e,1),_e,425,0,[vW,m0e])}function f6t(){return Y8(),U(G(w0e,1),_e,480,0,[mW,p0e])}function h6t(){return $O(),U(G(y0e,1),_e,495,0,[cx,I4])}function d6t(){return pO(),U(G(E0e,1),_e,426,0,[_0e,SW])}function g6t(){return mI(),U(G(Mpe,1),_e,429,0,[bx,Ppe])}function b6t(){return YC(),U(G(ipe,1),_e,430,0,[DW,dx])}function p6t(){return p7(),U(G(qhe,1),_e,428,0,[vG,Khe])}function w6t(){return EO(),U(G(zhe,1),_e,427,0,[Hhe,yG])}function m6t(){return SO(),U(G(mde,1),_e,424,0,[OG,Bk])}function v6t(){return G_(),U(G(prt,1),_e,511,0,[ZT,zG])}function z8(e,t,n,i){return n>=0?e.jh(t,n,i):e.Sg(null,n,i)}function QB(e){return e.b.b==0?e.a.$e():lB(e.b)}function y6t(e){if(e.p!=5)throw V(new hs);return tn(e.f)}function _6t(e){if(e.p!=5)throw V(new hs);return tn(e.k)}function $ne(e){return le(e.a)===le((Z$(),gY))&&EKt(e),e.a}function OLe(e){this.a=c(nn(e),271),this.b=(st(),new kee(e))}function DLe(e,t){Kmt(this,new $e(e.a,e.b)),qmt(this,AC(t))}function s0(){s0=Z,V1=new WZ(j2,0),$v=new WZ(A2,1)}function gf(){gf=Z,ip=new GZ(A2,0),jd=new GZ(j2,1)}function u0(){Ovt.call(this,new Fy(Xp(12))),jee(!0),this.a=2}function ZB(e,t,n){Ln(),Lb.call(this,e),this.b=t,this.a=n}function Kne(e,t,n){Du(),HA.call(this,t),this.a=e,this.b=n}function kLe(e){i8.call(this),Gie(this),this.a=e,this.c=!0}function RLe(e){var t;t=e.c.d.b,e.b=t,e.a=e.c.d,t.a=e.c.d.b=e}function V8(e){var t;TIt(e.a),V7e(e.a),t=new BA(e.a),poe(t)}function E6t(e,t){HWe(e,!0),Zc(e.e.wf(),new Pte(e,!0,t))}function G8(e,t){return dFe(t),MIt(e,oe(Qt,_n,25,t,15,1),t)}function S6t(e,t){return t2(),e==yi(Uf(t))||e==yi(M1(t))}function mc(e,t){return t==null?Uo(Po(e.f,null)):US(e.g,t)}function P6t(e){return e.b==0?null:(Lt(e.b!=0),Fu(e,e.a.a))}function xi(e){return Math.max(Math.min(e,Fn),-2147483648)|0}function M6t(e,t){var n=aG[e.charCodeAt(0)];return n??e}function U8(e,t){return B8(e,"set1"),B8(t,"set2"),new A8e(e,t)}function C6t(e,t){var n;return n=yIt(e.f,t),Wn(t8(n),e.f.d)}function D5(e,t){var n,i;return n=t,i=new Er,OXe(e,n,i),i.d}function e$(e,t,n,i){var r;r=new _ke,t.a[n.g]=r,Xy(e.b,i,r)}function qne(e,t,n){var i;i=e.Yg(t),i>=0?e.sh(i,n):Ose(e,t,n)}function Lm(e,t,n){X8(),e&&Kn(fY,e,t),e&&Kn(Gj,e,n)}function xLe(e,t,n){this.i=new Se,this.b=e,this.g=t,this.a=n}function W8(e,t,n){this.c=new Se,this.e=e,this.f=t,this.b=n}function Hne(e,t,n){this.a=new Se,this.e=e,this.f=t,this.c=n}function LLe(e,t){V9(this),this.f=t,this.g=e,F8(this),this._d()}function $C(e,t){var n;n=e.q.getHours(),e.q.setDate(t),_6(e,n)}function NLe(e,t){var n;for(nn(t),n=e.a;n;n=n.c)t.Od(n.g,n.i)}function FLe(e){var t;return t=new i9(Xp(e.length)),Rre(t,e),t}function I6t(e){function t(){}return t.prototype=e||{},new t}function T6t(e,t){return dqe(e,t)?(fKe(e),!0):!1}function Ch(e,t){if(t==null)throw V(new AS);return M9t(e,t)}function j6t(e){if(e.qe())return null;var t=e.n;return Ek[t]}function KC(e){return e.Db>>16!=3?null:c(e.Cb,33)}function jl(e){return e.Db>>16!=9?null:c(e.Cb,33)}function BLe(e){return e.Db>>16!=6?null:c(e.Cb,79)}function $Le(e){return e.Db>>16!=7?null:c(e.Cb,235)}function KLe(e){return e.Db>>16!=7?null:c(e.Cb,160)}function yi(e){return e.Db>>16!=11?null:c(e.Cb,33)}function qLe(e,t){var n;return n=e.Yg(t),n>=0?e.lh(n):jq(e,t)}function HLe(e,t){var n;return n=new Wte(t),zVe(n,e),new ps(n)}function zne(e){var t;return t=e.d,t=e.si(e.f),on(e,t),t.Ob()}function zLe(e,t){return e.b+=t.b,e.c+=t.c,e.d+=t.d,e.a+=t.a,e}function t$(e,t){return g.Math.abs(e)0}function VLe(){this.a=new Eh,this.e=new er,this.g=0,this.i=0}function GLe(e){this.a=e,this.b=oe(zst,we,1944,e.e.length,0,2)}function n$(e,t,n){var i;i=kqe(e,t,n),e.b=new BO(i.c.length)}function Al(){Al=Z,yb=new VZ(uz,0),Wl=new VZ("UP",1)}function Y8(){Y8=Z,mW=new YZ(cZe,0),p0e=new YZ("FAN",1)}function X8(){X8=Z,fY=new en,Gj=new en,Xyt(cnt,new E6e)}function O6t(e){if(e.p!=0)throw V(new hs);return s5(e.f,0)}function D6t(e){if(e.p!=0)throw V(new hs);return s5(e.k,0)}function ULe(e){return e.Db>>16!=3?null:c(e.Cb,147)}function j_(e){return e.Db>>16!=6?null:c(e.Cb,235)}function zp(e){return e.Db>>16!=17?null:c(e.Cb,26)}function WLe(e,t){var n=e.a=e.a||[];return n[t]||(n[t]=e.le(t))}function k6t(e,t){var n;return n=e.a.get(t),n??new Array}function R6t(e,t){var n;n=e.q.getHours(),e.q.setMonth(t),_6(e,n)}function bo(e,t,n){return t==null?Kc(e.f,null,n):_0(e.g,t,n)}function k5(e,t,n,i,r,o){return new Ah(e.e,t,e.aj(),n,i,r,o)}function qC(e,t,n){return e.a=fu(e.a,0,t)+(""+n)+wC(e.a,t),e}function x6t(e,t,n){return Ee(e.a,(k8(),ZK(t,n),new Vb(t,n))),e}function Vne(e){return Oee(e.c),e.e=e.a=e.c,e.c=e.c.c,++e.d,e.a.f}function YLe(e){return Oee(e.e),e.c=e.a=e.e,e.e=e.e.e,--e.d,e.a.f}function br(e,t){e.d&&Jc(e.d.e,e),e.d=t,e.d&&Ee(e.d.e,e)}function Rr(e,t){e.c&&Jc(e.c.g,e),e.c=t,e.c&&Ee(e.c.g,e)}function po(e,t){e.c&&Jc(e.c.a,e),e.c=t,e.c&&Ee(e.c.a,e)}function Bo(e,t){e.i&&Jc(e.i.j,e),e.i=t,e.i&&Ee(e.i.j,e)}function XLe(e,t,n){this.a=t,this.c=e,this.b=(nn(n),new ps(n))}function JLe(e,t,n){this.a=t,this.c=e,this.b=(nn(n),new ps(n))}function QLe(e,t){this.a=e,this.c=Wo(this.a),this.b=new H8(t)}function L6t(e){var t;return Wg(e),t=new er,si(e,new CIe(t))}function Vp(e,t){if(e<0||e>t)throw V(new ho(Xue+e+Jue+t))}function Gne(e,t){return qRe(e.a,t)?pne(e,c(t,22).g,null):null}function N6t(e){return vK(),Pt(),c(e.a,81).d.e!=0}function ZLe(){ZLe=Z,Vtt=vn((YA(),U(G(ztt,1),_e,538,0,[sG])))}function eNe(){eNe=Z,Ost=Cs(new tr,(Hr(),Io),(Jr(),ej))}function Une(){Une=Z,Dst=Cs(new tr,(Hr(),Io),(Jr(),ej))}function tNe(){tNe=Z,Rst=Cs(new tr,(Hr(),Io),(Jr(),ej))}function nNe(){nNe=Z,Yst=Nn(new tr,(Hr(),Io),(Jr(),dP))}function hu(){hu=Z,Qst=Nn(new tr,(Hr(),Io),(Jr(),dP))}function iNe(){iNe=Z,Zst=Nn(new tr,(Hr(),Io),(Jr(),dP))}function i$(){i$=Z,rut=Nn(new tr,(Hr(),Io),(Jr(),dP))}function rNe(){rNe=Z,zut=Cs(new tr,(dE(),NP),(d6(),aW))}function xg(e,t,n,i){this.c=e,this.d=i,o$(this,t),c$(this,n)}function i2(e){this.c=new wi,this.b=e.b,this.d=e.c,this.a=e.a}function r$(e){this.a=g.Math.cos(e),this.b=g.Math.sin(e)}function o$(e,t){e.a&&Jc(e.a.k,e),e.a=t,e.a&&Ee(e.a.k,e)}function c$(e,t){e.b&&Jc(e.b.f,e),e.b=t,e.b&&Ee(e.b.f,e)}function oNe(e,t){GSt(e,e.b,e.c),c(e.b.b,65),t&&c(t.b,65).b}function F6t(e,t){aoe(e,t),Q(e.Cb,88)&&lw(Ls(c(e.Cb,88)),2)}function s$(e,t){Q(e.Cb,88)&&lw(Ls(c(e.Cb,88)),4),kc(e,t)}function J8(e,t){Q(e.Cb,179)&&(c(e.Cb,179).tb=null),kc(e,t)}function vc(e,t){return Wr(),N$(t)?new d8(t,e):new pC(t,e)}function B6t(e,t){var n,i;n=t.c,i=n!=null,i&&Zy(e,new qp(t.c))}function cNe(e){var t,n;return n=(r_(),t=new Nb,t),B_(n,e),n}function sNe(e){var t,n;return n=(r_(),t=new Nb,t),B_(n,e),n}function uNe(e,t){var n;return n=new ta(e),t.c[t.c.length]=n,n}function aNe(e,t){var n;return n=c(tw(n2(e.a),t),14),n?n.gc():0}function lNe(e){var t;return Wg(e),t=(xm(),xm(),The),CO(e,t)}function fNe(e){for(var t;;)if(t=e.Pb(),!e.Ob())return t}function Wne(e,t){jvt.call(this,new Fy(Xp(e))),pu(t,PJe),this.a=t}function Hf(e,t,n){mHe(t,n,e.gc()),this.c=e,this.a=t,this.b=n-t}function hNe(e,t,n){var i;mHe(t,n,e.c.length),i=n-t,mZ(e.c,t,i)}function $6t(e,t){aDe(e,tn(Xi(h1(t,24),wD)),tn(Xi(t,wD)))}function pt(e,t){if(e<0||e>=t)throw V(new ho(Xue+e+Jue+t))}function fn(e,t){if(e<0||e>=t)throw V(new cZ(Xue+e+Jue+t))}function bt(e,t){this.b=(yt(e),e),this.a=(t&vw)==0?t|64|mf:t}function dNe(e){z7e(this),PAe(this.a,Dre(g.Math.max(8,e))<<1)}function Ol(e){return Ko(U(G(ir,1),we,8,0,[e.i.n,e.n,e.a]))}function K6t(){return Fl(),U(G(Hs,1),_e,132,0,[Fhe,Su,Tw])}function q6t(){return al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])}function H6t(){return Ts(),U(G(jnt,1),_e,461,0,[jf,N1,qa])}function z6t(){return Qc(),U(G(Ont,1),_e,462,0,[pl,F1,Ha])}function V6t(){return y0(),U(G(Lde,1),_e,423,0,[Mv,xde,KG])}function G6t(){return $5(),U(G(Dde,1),_e,379,0,[xG,RG,LG])}function U6t(){return X5(),U(G(xbe,1),_e,378,0,[YU,Rbe,VR])}function W6t(){return f2(),U(G(D1e,1),_e,314,0,[H2,nj,O1e])}function Y6t(){return DO(),U(G(R1e,1),_e,337,0,[k1e,bR,cU])}function X6t(){return zg(),U(G(Vrt,1),_e,450,0,[aU,d4,jv])}function J6t(){return m0(),U(G(XG,1),_e,361,0,[U0,$1,G0])}function Q6t(){return Oh(),U(G(Zrt,1),_e,303,0,[rj,Ov,z2])}function Z6t(){return J_(),U(G(vU,1),_e,292,0,[wU,mU,ij])}function ePt(){return Zr(),U(G(Pst,1),_e,452,0,[OP,Os,Fc])}function tPt(){return kh(),U(G(zbe,1),_e,339,0,[H1,Hbe,eW])}function nPt(){return VO(),U(G(Wbe,1),_e,375,0,[Gbe,iW,Ube])}function iPt(){return XO(),U(G(t0e,1),_e,377,0,[sW,M4,zw])}function rPt(){return rE(),U(G(Jbe,1),_e,336,0,[oW,Xbe,DP])}function oPt(){return HO(),U(G(e0e,1),_e,338,0,[Zbe,cW,Qbe])}function cPt(){return w0(),U(G(qst,1),_e,454,0,[wj,kP,YR])}function sPt(){return s7(),U(G(Yut,1),_e,442,0,[EW,yW,_W])}function uPt(){return EI(),U(G(M0e,1),_e,380,0,[sx,S0e,P0e])}function aPt(){return c7(),U(G(H0e,1),_e,381,0,[q0e,TW,K0e])}function lPt(){return zO(),U(G(B0e,1),_e,293,0,[IW,F0e,N0e])}function fPt(){return TI(),U(G(jW,1),_e,437,0,[lx,fx,hx])}function hPt(){return Rh(),U(G(Dwe,1),_e,334,0,[Mx,kd,XP])}function dPt(){return xl(),U(G(ywe,1),_e,272,0,[A4,Ww,O4])}function gPt(e,t){return xxt(e,t,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function bPt(e,t,n){var i;return i=P6(e,t,!1),i.b<=t&&i.a<=n}function gNe(e,t,n){var i;i=new TSe,i.b=t,i.a=n,++t.b,Ee(e.d,i)}function pPt(e,t){var n;return n=(yt(e),e).g,Hee(!!n),yt(t),n(t)}function Yne(e,t){var n,i;return i=__(e,t),n=e.a.Zc(i),new j8e(e,n)}function wPt(e){return e.Db>>16!=6?null:c(Dq(e),235)}function mPt(e){if(e.p!=2)throw V(new hs);return tn(e.f)&Ni}function vPt(e){if(e.p!=2)throw V(new hs);return tn(e.k)&Ni}function yPt(e){return e.a==(k_(),Hx)&&tvt(e,Jxt(e.g,e.b)),e.a}function r2(e){return e.d==(k_(),Hx)&&ivt(e,zFt(e.g,e.b)),e.d}function K(e){return Lt(e.ai?1:0}function bNe(e,t){var n,i;return n=D$(t),i=n,c(Bt(e.c,i),19).a}function pNe(e,t){var n;for(n=e+"";n.length0&&e.a[--e.d]==0;);e.a[e.d++]==0&&(e.e=0)}function xNe(e){return e.a?e.e.length==0?e.a.a:e.a.a+(""+e.e):e.c}function OPt(e){return!!e.a&&Ns(e.a.a).i!=0&&!(e.b&&XK(e.b))}function DPt(e){return!!e.u&&dc(e.u.a).i!=0&&!(e.n&&YK(e.n))}function LNe(e){return gB(e.e.Hd().gc()*e.c.Hd().gc(),16,new kCe(e))}function kPt(e,t){return hxe(ns(e.q.getTime()),ns(t.q.getTime()))}function bf(e){return c(Bl(e,oe(qG,Pz,17,e.c.length,0,1)),474)}function HC(e){return c(Bl(e,oe(nh,Ed,10,e.c.length,0,1)),193)}function RPt(e){return hu(),!Kr(e)&&!(!Kr(e)&&e.c.i.c==e.d.i.c)}function NNe(e,t,n){var i;i=(nn(e),new ps(e)),lOt(new XLe(i,t,n))}function zC(e,t,n){var i;i=(nn(e),new ps(e)),fOt(new JLe(i,t,n))}function FNe(e,t){var n;return n=1-t,e.a[n]=FO(e.a[n],n),FO(e,t)}function BNe(e,t){var n;e.e=new ZQ,n=dw(t),cr(n,e.c),DWe(e,n,0)}function pr(e,t,n,i){var r;r=new BJ,r.a=t,r.b=n,r.c=i,Cn(e.a,r)}function je(e,t,n,i){var r;r=new BJ,r.a=t,r.b=n,r.c=i,Cn(e.b,r)}function xa(e){var t,n,i;return t=new vxe,n=Jq(t,e),vqt(t),i=n,i}function tie(){var e,t,n;return t=(n=(e=new Nb,e),n),Ee(wme,t),t}function eO(e){return e.j.c=oe(xt,xe,1,0,5,1),Dne(e.c),g5t(e.a),e}function Nm(e){return HS(),Q(e.g,10)?c(e.g,10):null}function xPt(e){return Rm(e).dc()?!1:(R2t(e,new ae),!0)}function LPt(e){if(!("stack"in e))try{throw e}catch{}return e}function VC(e,t){if(e<0||e>=t)throw V(new ho(Ykt(e,t)));return e}function $Ne(e,t,n){if(e<0||tn)throw V(new ho(ykt(e,t,n)))}function f$(e,t){if(Yi(e.a,t),t.d)throw V(new No(GJe));t.d=e}function h$(e,t){if(t.$modCount!=e.$modCount)throw V(new Ou)}function KNe(e,t){return Q(t,42)?tq(e.a,c(t,42)):!1}function qNe(e,t){return Q(t,42)?tq(e.a,c(t,42)):!1}function HNe(e,t){return Q(t,42)?tq(e.a,c(t,42)):!1}function NPt(e,t){return e.a<=e.b?(t.ud(e.a++),!0):!1}function l0(e){var t;return Oo(e)?(t=e,t==-0?0:t):GCt(e)}function tO(e){var t;return b1(e),t=new Xn,Em(e.a,new PIe(t)),t}function zNe(e){var t;return b1(e),t=new gt,Em(e.a,new SIe(t)),t}function _r(e,t){this.a=e,CS.call(this,e),Vp(t,e.gc()),this.b=t}function nie(e){this.e=e,this.b=this.e.a.entries(),this.a=new Array}function FPt(e){return gB(e.e.Hd().gc()*e.c.Hd().gc(),273,new DCe(e))}function nO(e){return new Dc((pu(e,MH),PO(xr(xr(5,e),e/10|0))))}function VNe(e){return c(Bl(e,oe(drt,SQe,11,e.c.length,0,1)),1943)}function BPt(e,t,n){return n.f.c.length>0?vne(e.a,t,n):vne(e.b,t,n)}function $Pt(e,t,n){e.d&&Jc(e.d.e,e),e.d=t,e.d&&Bp(e.d.e,n,e)}function d$(e,t){kHt(t,e),Fte(e.d),Fte(c(B(e,(Oe(),FR)),207))}function x5(e,t){DHt(t,e),Nte(e.d),Nte(c(B(e,(Oe(),FR)),207))}function f0(e,t){var n,i;return n=Ch(e,t),i=null,n&&(i=n.fe()),i}function A_(e,t){var n,i;return n=Yp(e,t),i=null,n&&(i=n.ie()),i}function L5(e,t){var n,i;return n=Ch(e,t),i=null,n&&(i=n.ie()),i}function Ih(e,t){var n,i;return n=Ch(e,t),i=null,n&&(i=Uce(n)),i}function KPt(e,t,n){var i;return i=fE(n),Z7(e.g,i,t),Z7(e.i,t,n),t}function qPt(e,t,n){var i;i=p9t();try{return U3t(e,t,n)}finally{ZPt(i)}}function GNe(e){var t;t=e.Wg(),this.a=Q(t,69)?c(t,69).Zh():t.Kc()}function tr(){c9e.call(this),this.j.c=oe(xt,xe,1,0,5,1),this.a=-1}function iie(e,t,n,i){this.d=e,this.n=t,this.g=n,this.o=i,this.p=-1}function UNe(e,t,n,i){this.e=i,this.d=null,this.c=e,this.a=t,this.b=n}function rie(e,t,n){this.d=new xTe(this),this.e=e,this.i=t,this.f=n}function iO(){iO=Z,yU=new KZ(FE,0),Z1e=new KZ("TOP_LEFT",1)}function WNe(){WNe=Z,i0e=Hxe(Ce(1),Ce(4)),n0e=Hxe(Ce(1),Ce(2))}function YNe(){YNe=Z,Bat=vn((d9(),U(G(Fat,1),_e,551,0,[OW])))}function XNe(){XNe=Z,Nat=vn((h9(),U(G(npe,1),_e,482,0,[AW])))}function JNe(){JNe=Z,ilt=vn((zS(),U(G(Spe,1),_e,530,0,[Sj])))}function QNe(){QNe=Z,ait=vn((l9(),U(G(fde,1),_e,481,0,[CG])))}function HPt(){return v0(),U(G(nit,1),_e,406,0,[zT,HT,PG,MG])}function zPt(){return wO(),U(G(Ak,1),_e,297,0,[pG,Rhe,xhe,Lhe])}function VPt(){return c6(),U(G(sit,1),_e,394,0,[YT,xk,Lk,XT])}function GPt(){return m2(),U(G(rit,1),_e,323,0,[GT,VT,UT,WT])}function UPt(){return Q_(),U(G(trt,1),_e,405,0,[V0,Ow,Aw,Pv])}function WPt(){return YO(),U(G(yrt,1),_e,360,0,[WG,uR,aR,tj])}function ZNe(e,t,n,i){return Q(n,54)?new BDe(e,t,n,i):new une(e,t,n,i)}function YPt(){return Nl(),U(G(jrt,1),_e,411,0,[q2,u4,a4,YG])}function XPt(e){var t;return e.j==(Ie(),Yt)&&(t=_Ue(e),bs(t,jt))}function JPt(e,t){var n;n=t.a,Rr(n,t.c.d),br(n,t.d.d),Qp(n.a,e.n)}function eFe(e,t){return c(Qb(P8(c(Vn(e.k,t),15).Oc(),Cv)),113)}function tFe(e,t){return c(Qb(M8(c(Vn(e.k,t),15).Oc(),Cv)),113)}function QPt(e){return new bt(YIt(c(e.a.dd(),14).gc(),e.a.cd()),16)}function O_(e){return Q(e,14)?c(e,14).dc():!e.Kc().Ob()}function o2(e){return HS(),Q(e.g,145)?c(e.g,145):null}function nFe(e){if(e.e.g!=e.b)throw V(new Ou);return!!e.c&&e.d>0}function Pn(e){return Lt(e.b!=e.d.c),e.c=e.b,e.b=e.b.a,++e.a,e.c.c}function oie(e,t){yt(t),vi(e.a,e.c,t),e.c=e.c+1&e.a.length-1,iVe(e)}function w1(e,t){yt(t),e.b=e.b-1&e.a.length-1,vi(e.a,e.b,t),iVe(e)}function iFe(e,t){var n;for(n=e.j.c.length;n0&&bc(e.g,0,t,0,e.i),t}function sFe(e,t){p9();var n;return n=c(Bt(Fx,e),55),!n||n.wj(t)}function fMt(e){if(e.p!=1)throw V(new hs);return tn(e.f)<<24>>24}function hMt(e){if(e.p!=1)throw V(new hs);return tn(e.k)<<24>>24}function dMt(e){if(e.p!=7)throw V(new hs);return tn(e.k)<<16>>16}function gMt(e){if(e.p!=7)throw V(new hs);return tn(e.f)<<16>>16}function Th(e){var t;for(t=0;e.Ob();)e.Pb(),t=xr(t,1);return PO(t)}function uFe(e,t){var n;return n=new _m,e.xd(n),n.a+="..",t.yd(n),n.a}function bMt(e,t,n){var i;i=c(Bt(e.g,n),57),Ee(e.a.c,new yr(t,i))}function pMt(e,t,n){return SB(Te(Uo(Po(e.f,t))),Te(Uo(Po(e.f,n))))}function rO(e,t,n){return tD(e,t,n,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function wMt(e,t,n){return IE(e,t,n,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function mMt(e,t,n){return Kxt(e,t,n,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function uie(e,t){return e==(Dt(),Ui)&&t==Ui?4:e==Ui||t==Ui?8:32}function aFe(e,t){return le(t)===le(e)?"(this Map)":t==null?rs:Ro(t)}function vMt(e,t){return c(t==null?Uo(Po(e.f,null)):US(e.g,t),281)}function lFe(e,t,n){var i;return i=fE(n),Kn(e.b,i,t),Kn(e.c,t,n),t}function fFe(e,t){var n;for(n=t;n;)xp(e,n.i,n.j),n=yi(n);return e}function aie(e,t){var n;return n=NC(w_(new k$(e,t))),b8(new k$(e,t)),n}function zf(e,t){Wr();var n;return n=c(e,66).Mj(),ZDt(n,t),n.Ok(t)}function yMt(e,t,n,i,r){var o;o=Gxt(r,n,i),Ee(t,zkt(r,o)),xDt(e,r,t)}function hFe(e,t,n){e.i=0,e.e=0,t!=n&&(Nqe(e,t,n),Lqe(e,t,n))}function lie(e,t){var n;n=e.q.getHours(),e.q.setFullYear(t+O1),_6(e,n)}function _Mt(e,t,n){if(n){var i=n.ee();e.a[t]=i(n)}else delete e.a[t]}function g$(e,t,n){if(n){var i=n.ee();n=i(n)}else n=void 0;e.a[t]=n}function dFe(e){if(e<0)throw V(new m9e("Negative array size: "+e))}function dc(e){return e.n||(Ls(e),e.n=new GRe(e,oo,e),So(e)),e.n}function N5(e){return Lt(e.a=0&&e.a[n]===t[n];n--);return n<0}function mFe(e,t){iE();var n;return n=e.j.g-t.j.g,n!=0?n:0}function vFe(e,t){return yt(t),e.a!=null?cSt(t.Kb(e.a)):jk}function oO(e){var t;return e?new Wte(e):(t=new Eh,Q$(t,e),t)}function gu(e,t){var n;return t.b.Kb(f$e(e,t.c.Ee(),(n=new TIe(t),n)))}function cO(e){Oce(),aDe(this,tn(Xi(h1(e,24),wD)),tn(Xi(e,wD)))}function yFe(){yFe=Z,Snt=vn((p7(),U(G(qhe,1),_e,428,0,[vG,Khe])))}function _Fe(){_Fe=Z,Pnt=vn((EO(),U(G(zhe,1),_e,427,0,[Hhe,yG])))}function EFe(){EFe=Z,Cit=vn((SO(),U(G(mde,1),_e,424,0,[OG,Bk])))}function SFe(){SFe=Z,wrt=vn((G_(),U(G(prt,1),_e,511,0,[ZT,zG])))}function PFe(){PFe=Z,zrt=vn((uI(),U(G(F1e,1),_e,419,0,[pR,N1e])))}function MFe(){MFe=Z,Wrt=vn((eI(),U(G(K1e,1),_e,479,0,[$1e,mR])))}function CFe(){CFe=Z,Ist=vn((WC(),U(G(Ybe,1),_e,376,0,[rW,pj])))}function IFe(){IFe=Z,Sst=vn((rI(),U(G(Vbe,1),_e,421,0,[tW,nW])))}function TFe(){TFe=Z,$rt=vn((gO(),U(G(A1e,1),_e,422,0,[j1e,oU])))}function jFe(){jFe=Z,tot=vn((iO(),U(G(ege,1),_e,420,0,[yU,Z1e])))}function AFe(){AFe=Z,mut=vn((cl(),U(G(wut,1),_e,520,0,[Vw,z1])))}function OFe(){OFe=Z,Wst=vn((F5(),U(G(Ust,1),_e,523,0,[xP,RP])))}function DFe(){DFe=Z,tut=vn((gf(),U(G(eut,1),_e,516,0,[ip,jd])))}function kFe(){kFe=Z,iut=vn((Al(),U(G(nut,1),_e,515,0,[yb,Wl])))}function RFe(){RFe=Z,Mut=vn((s0(),U(G(Put,1),_e,455,0,[V1,$v])))}function xFe(){xFe=Z,Hut=vn((Z8(),U(G(v0e,1),_e,425,0,[vW,m0e])))}function LFe(){LFe=Z,Wut=vn(($O(),U(G(y0e,1),_e,495,0,[cx,I4])))}function NFe(){NFe=Z,qut=vn((Y8(),U(G(w0e,1),_e,480,0,[mW,p0e])))}function FFe(){FFe=Z,Jut=vn((pO(),U(G(E0e,1),_e,426,0,[_0e,SW])))}function BFe(){BFe=Z,rlt=vn((mI(),U(G(Mpe,1),_e,429,0,[bx,Ppe])))}function $Fe(){$Fe=Z,$at=vn((YC(),U(G(ipe,1),_e,430,0,[DW,dx])))}function F5(){F5=Z,xP=new zZ("UPPER",0),RP=new zZ("LOWER",1)}function MMt(e,t){var n;n=new xy,Rg(n,"x",t.a),Rg(n,"y",t.b),Zy(e,n)}function CMt(e,t){var n;n=new xy,Rg(n,"x",t.a),Rg(n,"y",t.b),Zy(e,n)}function IMt(e,t){var n,i;i=!1;do n=Tqe(e,t),i=i|n;while(n);return i}function die(e,t){var n,i;for(n=t,i=0;n>0;)i+=e.a[n],n-=n&-n;return i}function KFe(e,t){var n;for(n=t;n;)xp(e,-n.i,-n.j),n=yi(n);return e}function Mr(e,t){var n,i;for(yt(t),i=e.Kc();i.Ob();)n=i.Pb(),t.td(n)}function qFe(e,t){var n;return n=t.cd(),new Vb(n,e.e.pc(n,c(t.dd(),14)))}function Ri(e,t,n,i){var r;r=new ii,r.c=t,r.b=n,r.a=i,i.b=n.a=r,++e.b}function Lu(e,t,n){var i;return i=(pt(t,e.c.length),e.c[t]),e.c[t]=n,i}function TMt(e,t,n){return c(t==null?Kc(e.f,null,n):_0(e.g,t,n),281)}function m$(e){return e.c&&e.d?Xne(e.c)+"->"+Xne(e.d):"e_"+Xb(e)}function D_(e,t){return(Wg(e),$S(new ht(e,new Nie(t,e.a)))).sd(i4)}function jMt(){return Hr(),U(G(kde,1),_e,356,0,[Af,B1,Hc,Pc,Io])}function AMt(){return Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])}function OMt(e){return ZA(),function(){return qPt(e,this,arguments)}}function DMt(){return Date.now?Date.now():new Date().getTime()}function Kr(e){return!e.c||!e.d?!1:!!e.c.i&&e.c.i==e.d.i}function HFe(e){if(!e.c.Sb())throw V(new tc);return e.a=!0,e.c.Ub()}function GC(e){e.i=0,rC(e.b,null),rC(e.c,null),e.a=null,e.e=null,++e.g}function gie(e){Byt.call(this,e==null?rs:Ro(e),Q(e,78)?c(e,78):null)}function zFe(e){bJe(),gAe(this),this.a=new wi,Kre(this,e),Cn(this.a,e)}function VFe(){NF(this),this.b=new $e(Ii,Ii),this.a=new $e($i,$i)}function GFe(e,t){this.c=0,this.b=t,y7e.call(this,e,17493),this.a=this.c}function v$(e){sO(),!Vl&&(this.c=e,this.e=!0,this.a=new Se)}function sO(){sO=Z,Vl=!0,dnt=!1,gnt=!1,pnt=!1,bnt=!1}function bie(e,t){return Q(t,149)?rt(e.c,c(t,149).c):!1}function pie(e,t){var n;return n=0,e&&(n+=e.f.a/2),t&&(n+=t.f.a/2),n}function y$(e,t){var n;return n=c(h0(e.d,t),23),n||c(h0(e.e,t),23)}function UFe(e){this.b=e,$t.call(this,e),this.a=c(vt(this.b.a,4),126)}function WFe(e){this.b=e,Gy.call(this,e),this.a=c(vt(this.b.a,4),126)}function Ls(e){return e.t||(e.t=new rAe(e),e6(new w9e(e),0,e.t)),e.t}function kMt(){return eo(),U(G(WP,1),_e,103,0,[ih,Va,ga,Vh,Gh])}function RMt(){return Um(),U(G(QP,1),_e,249,0,[W1,Nj,kwe,JP,Rwe])}function xMt(){return fl(),U(G(Dd,1),_e,175,0,[Tt,ar,kf,_b,Od])}function LMt(){return qI(),U(G(spe,1),_e,316,0,[rpe,kW,cpe,RW,ope])}function NMt(){return s6(),U(G(Nbe,1),_e,315,0,[Lbe,QU,ZU,jP,AP])}function FMt(){return Qg(),U(G(L1e,1),_e,335,0,[sU,x1e,uU,pP,bP])}function BMt(){return PE(),U(G(Rat,1),_e,355,0,[Kv,e3,HP,qP,zP])}function $Mt(){return Zm(),U(G(Ort,1),_e,363,0,[fR,dR,gR,hR,lR])}function KMt(){return Ku(),U(G(dge,1),_e,163,0,[aj,_P,K1,EP,xw])}function k_(){k_=Z;var e,t;qx=(r_(),t=new GA,t),Hx=(e=new LN,e)}function YFe(e){var t;return e.c||(t=e.r,Q(t,88)&&(e.c=c(t,26))),e.c}function qMt(e){return e.e=3,e.d=e.Yb(),e.e!=2?(e.e=0,!0):!1}function _$(e){var t,n,i;return t=e&qs,n=e>>22&qs,i=e<0?Kh:0,Bc(t,n,i)}function HMt(e){var t,n,i,r;for(n=e,i=0,r=n.length;i0?UHe(e,t):bWe(e,-t)}function wie(e,t){return t==0||e.e==0?e:t>0?bWe(e,t):UHe(e,-t)}function rn(e){if(dn(e))return e.c=e.a,e.a.Pb();throw V(new tc)}function JFe(e){var t,n;return t=e.c.i,n=e.d.i,t.k==(Dt(),Bi)&&n.k==Bi}function E$(e){var t;return t=new c0,Mo(t,e),pe(t,(Oe(),yo),null),t}function S$(e,t,n){var i;return i=e.Yg(t),i>=0?e._g(i,n,!0):j0(e,t,n)}function mie(e,t,n,i){var r;for(r=0;rt)throw V(new ho(ese(e,t,"index")));return e}function P$(e,t,n,i){var r;return r=oe(Qt,_n,25,t,15,1),nDt(r,e,t,n,i),r}function VMt(e,t){var n;n=e.q.getHours()+(t/60|0),e.q.setMinutes(t),_6(e,n)}function GMt(e,t){return g.Math.min(m1(t.a,e.d.d.c),m1(t.b,e.d.d.c))}function u2(e,t){return fr(t)?t==null?wse(e.f,null):lqe(e.g,t):wse(e.f,t)}function Rl(e){this.c=e,this.a=new q(this.c.a),this.b=new q(this.c.b)}function uO(){this.e=new Se,this.c=new Se,this.d=new Se,this.b=new Se}function nBe(){this.g=new LQ,this.b=new LQ,this.a=new Se,this.k=new Se}function iBe(e,t,n){this.a=e,this.c=t,this.d=n,Ee(t.e,this),Ee(n.b,this)}function rBe(e,t){v7e.call(this,t.rd(),t.qd()&-6),yt(e),this.a=e,this.b=t}function oBe(e,t){y7e.call(this,t.rd(),t.qd()&-6),yt(e),this.a=e,this.b=t}function Mie(e,t){DF.call(this,t.rd(),t.qd()&-6),yt(e),this.a=e,this.b=t}function aO(e,t,n){this.a=e,this.b=t,this.c=n,Ee(e.t,this),Ee(t.i,this)}function lO(){this.b=new wi,this.a=new wi,this.b=new wi,this.a=new wi}function fO(){fO=Z,VP=new hi("org.eclipse.elk.labels.labelManager")}function cBe(){cBe=Z,P1e=new Wi("separateLayerConnections",(YO(),WG))}function cl(){cl=Z,Vw=new UZ("REGULAR",0),z1=new UZ("CRITICAL",1)}function WC(){WC=Z,rW=new HZ("STACKED",0),pj=new HZ("SEQUENCED",1)}function YC(){YC=Z,DW=new ZZ("FIXED",0),dx=new ZZ("CENTER_NODE",1)}function UMt(e,t){var n;return n=JKt(e,t),e.b=new BO(n.c.length),aKt(e,n)}function WMt(e,t,n){var i;return++e.e,--e.f,i=c(e.d[t].$c(n),133),i.dd()}function sBe(e){var t;return e.a||(t=e.r,Q(t,148)&&(e.a=c(t,148))),e.a}function Cie(e){if(e.a){if(e.e)return Cie(e.e)}else return e;return null}function YMt(e,t){return e.pt.p?-1:0}function hO(e,t){return yt(t),e.c=0,"Initial capacity must not be negative")}function lBe(){lBe=Z,Tnt=vn((al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])))}function fBe(){fBe=Z,Ant=vn((Ts(),U(G(jnt,1),_e,461,0,[jf,N1,qa])))}function hBe(){hBe=Z,Dnt=vn((Qc(),U(G(Ont,1),_e,462,0,[pl,F1,Ha])))}function dBe(){dBe=Z,wnt=vn((Fl(),U(G(Hs,1),_e,132,0,[Fhe,Su,Tw])))}function gBe(){gBe=Z,Uit=vn(($5(),U(G(Dde,1),_e,379,0,[xG,RG,LG])))}function bBe(){bBe=Z,urt=vn((y0(),U(G(Lde,1),_e,423,0,[Mv,xde,KG])))}function pBe(){pBe=Z,Krt=vn((f2(),U(G(D1e,1),_e,314,0,[H2,nj,O1e])))}function wBe(){wBe=Z,qrt=vn((DO(),U(G(R1e,1),_e,337,0,[k1e,bR,cU])))}function mBe(){mBe=Z,Grt=vn((zg(),U(G(Vrt,1),_e,450,0,[aU,d4,jv])))}function vBe(){vBe=Z,Nrt=vn((m0(),U(G(XG,1),_e,361,0,[U0,$1,G0])))}function yBe(){yBe=Z,eot=vn((Oh(),U(G(Zrt,1),_e,303,0,[rj,Ov,z2])))}function _Be(){_Be=Z,Qrt=vn((J_(),U(G(vU,1),_e,292,0,[wU,mU,ij])))}function EBe(){EBe=Z,mst=vn((X5(),U(G(xbe,1),_e,378,0,[YU,Rbe,VR])))}function SBe(){SBe=Z,Cst=vn((VO(),U(G(Wbe,1),_e,375,0,[Gbe,iW,Ube])))}function PBe(){PBe=Z,Est=vn((kh(),U(G(zbe,1),_e,339,0,[H1,Hbe,eW])))}function MBe(){MBe=Z,Mst=vn((Zr(),U(G(Pst,1),_e,452,0,[OP,Os,Fc])))}function CBe(){CBe=Z,Ast=vn((XO(),U(G(t0e,1),_e,377,0,[sW,M4,zw])))}function IBe(){IBe=Z,Tst=vn((rE(),U(G(Jbe,1),_e,336,0,[oW,Xbe,DP])))}function TBe(){TBe=Z,jst=vn((HO(),U(G(e0e,1),_e,338,0,[Zbe,cW,Qbe])))}function jBe(){jBe=Z,Hst=vn((w0(),U(G(qst,1),_e,454,0,[wj,kP,YR])))}function ABe(){ABe=Z,Xut=vn((s7(),U(G(Yut,1),_e,442,0,[EW,yW,_W])))}function OBe(){OBe=Z,Qut=vn((EI(),U(G(M0e,1),_e,380,0,[sx,S0e,P0e])))}function DBe(){DBe=Z,bat=vn((c7(),U(G(H0e,1),_e,381,0,[q0e,TW,K0e])))}function kBe(){kBe=Z,gat=vn((zO(),U(G(B0e,1),_e,293,0,[IW,F0e,N0e])))}function RBe(){RBe=Z,Lat=vn((TI(),U(G(jW,1),_e,437,0,[lx,fx,hx])))}function xBe(){xBe=Z,Blt=vn((Rh(),U(G(Dwe,1),_e,334,0,[Mx,kd,XP])))}function LBe(){LBe=Z,xlt=vn((xl(),U(G(ywe,1),_e,272,0,[A4,Ww,O4])))}function nCt(){return wr(),U(G(xwe,1),_e,98,0,[Y1,Xl,k4,Mb,ch,Ic])}function Fg(e,t){return!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),xK(e.o,t)}function iCt(e){return!e.g&&(e.g=new kA),!e.g.d&&(e.g.d=new tAe(e)),e.g.d}function rCt(e){return!e.g&&(e.g=new kA),!e.g.a&&(e.g.a=new nAe(e)),e.g.a}function oCt(e){return!e.g&&(e.g=new kA),!e.g.b&&(e.g.b=new eAe(e)),e.g.b}function XC(e){return!e.g&&(e.g=new kA),!e.g.c&&(e.g.c=new iAe(e)),e.g.c}function cCt(e,t,n){var i,r;for(r=new X_(t,e),i=0;in||t=0?e._g(n,!0,!0):j0(e,t,!0)}function SCt(e,t){return zi(ge(Te(B(e,(ye(),J0)))),ge(Te(B(t,J0))))}function HBe(){HBe=Z,Vut=M0(M0(b9(new tr,(dE(),LP)),(d6(),ex)),lW)}function PCt(e,t,n){var i;return i=kqe(e,t,n),e.b=new BO(i.c.length),qse(e,i)}function MCt(e){if(e.b<=0)throw V(new tc);return--e.b,e.a-=e.c.c,Ce(e.a)}function CCt(e){var t;if(!e.a)throw V(new Uxe);return t=e.a,e.a=yi(e.a),t}function ICt(e){for(;!e.a;)if(!Oke(e.c,new MIe(e)))return!1;return!0}function l2(e){var t;return nn(e),Q(e,198)?(t=c(e,198),t):new zCe(e)}function TCt(e){bO(),c(e.We((kn(),Uw)),174).Fc((js(),Fj)),e.Ye(ZW,null)}function bO(){bO=Z,slt=new O5e,alt=new D5e,ult=hjt((kn(),ZW),slt,G1,alt)}function pO(){pO=Z,_0e=new QZ("LEAF_NUMBER",0),SW=new QZ("NODE_SIZE",1)}function jCt(e,t,n){e.a=t,e.c=n,e.b.a.$b(),na(e.d),e.e.a.c=oe(xt,xe,1,0,5,1)}function O$(e){e.a=oe(Qt,_n,25,e.b+1,15,1),e.c=oe(Qt,_n,25,e.b,15,1),e.d=0}function ACt(e,t){e.a.ue(t.d,e.b)>0&&(Ee(e.c,new Kte(t.c,t.d,e.d)),e.b=t.d)}function Lie(e,t){if(e.g==null||t>=e.i)throw V(new kF(t,e.i));return e.g[t]}function zBe(e,t,n){if(tE(e,n),n!=null&&!e.wj(n))throw V(new kN);return n}function VBe(e){var t;if(e.Ek())for(t=e.i-1;t>=0;--t)ee(e,t);return sie(e)}function OCt(e){var t,n;if(!e.b)return null;for(n=e.b;t=n.a[0];)n=t;return n}function DCt(e,t){var n,i;return dFe(t),n=(i=e.slice(0,t),Fie(i,e)),n.length=t,n}function L_(e,t,n,i){var r;i=(xm(),i||Ihe),r=e.slice(t,n),tse(r,e,t,n,-t,i)}function Nu(e,t,n,i,r){return t<0?j0(e,n,i):c(n,66).Nj().Pj(e,e.yh(),t,i,r)}function kCt(e){return Q(e,172)?""+c(e,172).a:e==null?null:Ro(e)}function RCt(e){return Q(e,172)?""+c(e,172).a:e==null?null:Ro(e)}function GBe(e,t){if(t.a)throw V(new No(GJe));Yi(e.a,t),t.a=e,!e.j&&(e.j=t)}function Nie(e,t){DF.call(this,t.rd(),t.qd()&-16449),yt(e),this.a=e,this.c=t}function UBe(e,t){var n,i;return i=t/e.c.Hd().gc()|0,n=t%e.c.Hd().gc(),a2(e,i,n)}function Ts(){Ts=Z,jf=new cF(j2,0),N1=new cF(FE,1),qa=new cF(A2,2)}function wO(){wO=Z,pG=new v9("All",0),Rhe=new q7e,xhe=new eDe,Lhe=new H7e}function WBe(){WBe=Z,fnt=vn((wO(),U(G(Ak,1),_e,297,0,[pG,Rhe,xhe,Lhe])))}function YBe(){YBe=Z,nrt=vn((Q_(),U(G(trt,1),_e,405,0,[V0,Ow,Aw,Pv])))}function XBe(){XBe=Z,iit=vn((v0(),U(G(nit,1),_e,406,0,[zT,HT,PG,MG])))}function JBe(){JBe=Z,oit=vn((m2(),U(G(rit,1),_e,323,0,[GT,VT,UT,WT])))}function QBe(){QBe=Z,uit=vn((c6(),U(G(sit,1),_e,394,0,[YT,xk,Lk,XT])))}function ZBe(){ZBe=Z,Cut=vn((dE(),U(G(c0e,1),_e,393,0,[ZR,LP,vj,NP])))}function e$e(){e$e=Z,_rt=vn((YO(),U(G(yrt,1),_e,360,0,[WG,uR,aR,tj])))}function t$e(){t$e=Z,dat=vn((C7(),U(G(L0e,1),_e,340,0,[CW,R0e,x0e,k0e])))}function n$e(){n$e=Z,Art=vn((Nl(),U(G(jrt,1),_e,411,0,[q2,u4,a4,YG])))}function i$e(){i$e=Z,vst=vn((rw(),U(G(JU,1),_e,197,0,[GR,XU,Bv,Fv])))}function r$e(){r$e=Z,nft=vn((ru(),U(G(tft,1),_e,396,0,[Tu,Hwe,qwe,zwe])))}function o$e(){o$e=Z,Klt=vn((mu(),U(G($lt,1),_e,285,0,[Lj,rh,U1,xj])))}function c$e(){c$e=Z,Llt=vn((Lh(),U(G(iY,1),_e,218,0,[nY,Rj,D4,o3])))}function s$e(){s$e=Z,Zlt=vn((l7(),U(G(Kwe,1),_e,311,0,[cY,Fwe,$we,Bwe])))}function u$e(){u$e=Z,Jlt=vn((ou(),U(G(tM,1),_e,374,0,[$j,Cb,Bj,Yw])))}function a$e(){a$e=Z,nD(),Mme=Ii,rht=$i,Cme=new KM(Ii),oht=new KM($i)}function eI(){eI=Z,$1e=new $Z(qh,0),mR=new $Z("IMPROVE_STRAIGHTNESS",1)}function xCt(e,t){return m_(),Ee(e,new yr(t,Ce(t.e.c.length+t.g.c.length)))}function LCt(e,t){return m_(),Ee(e,new yr(t,Ce(t.e.c.length+t.g.c.length)))}function Fie(e,t){return oI(t)!=10&&U(Fs(t),t.hm,t.__elementTypeId$,oI(t),e),e}function Jc(e,t){var n;return n=Do(e,t,0),n==-1?!1:(ad(e,n),!0)}function l$e(e,t){var n;return n=c(u2(e.e,t),387),n?(zte(n),n.e):null}function N_(e){var t;return Oo(e)&&(t=0-e,!isNaN(t))?t:y1(Z_(e))}function Do(e,t,n){for(;n=0?_7(e,n,!0,!0):j0(e,t,!0)}function Hie(e,t){HS();var n,i;return n=o2(e),i=o2(t),!!n&&!!i&&!Cze(n.k,i.k)}function BCt(e,t){es(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function $Ct(e,t){ts(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function KCt(e,t){p0(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function qCt(e,t){b0(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function b$e(e){(this.q?this.q:(st(),st(),th)).Ac(e.q?e.q:(st(),st(),th))}function HCt(e,t){return Q(t,99)&&(c(t,18).Bb&Vr)!=0?new RF(t,e):new X_(t,e)}function zCt(e,t){return Q(t,99)&&(c(t,18).Bb&Vr)!=0?new RF(t,e):new X_(t,e)}function p$e(e,t){ade=new AA,cit=t,aP=e,c(aP.b,65),jie(aP,ade,null),aXe(aP)}function L$(e,t,n){var i;return i=e.g[t],d5(e,t,e.oi(t,n)),e.gi(t,n,i),e.ci(),i}function _O(e,t){var n;return n=e.Xc(t),n>=0?(e.$c(n),!0):!1}function N$(e){var t;return e.d!=e.r&&(t=ra(e),e.e=!!t&&t.Cj()==Zet,e.d=t),e.e}function F$(e,t){var n;for(nn(e),nn(t),n=!1;t.Ob();)n=n|e.Fc(t.Pb());return n}function h0(e,t){var n;return n=c(Bt(e.e,t),387),n?(uDe(e,n),n.e):null}function w$e(e){var t,n;return t=e/60|0,n=e%60,n==0?""+t:""+t+":"+(""+n)}function $o(e,t){var n,i;return Wg(e),i=new Mie(t,e.a),n=new Rke(i),new ht(e,n)}function Yp(e,t){var n=e.a[t],i=(iK(),fG)[typeof n];return i?i(n):Ure(typeof n)}function VCt(e){switch(e.g){case 0:return Fn;case 1:return-1;default:return 0}}function GCt(e){return lce(e,(F_(),uhe))<0?-u3t(Z_(e)):e.l+e.m*T2+e.h*nb}function oI(e){return e.__elementTypeCategory$==null?10:e.__elementTypeCategory$}function B$(e){var t;return t=e.b.c.length==0?null:Ne(e.b,0),t!=null&&Y$(e,0),t}function m$e(e,t){for(;t[0]=0;)++t[0]}function cI(e,t){this.e=t,this.a=fqe(e),this.a<54?this.f=l0(e):this.c=DI(e)}function v$e(e,t,n,i){Ln(),Lb.call(this,26),this.c=e,this.a=t,this.d=n,this.b=i}function Vf(e,t,n){var i,r;for(i=10,r=0;re.a[i]&&(i=n);return i}function QCt(e,t){var n;return n=E0(e.e.c,t.e.c),n==0?zi(e.e.d,t.e.d):n}function Fm(e,t){return t.e==0||e.e==0?t4:(yE(),$q(e,t))}function ZCt(e,t){if(!e)throw V(new St(nNt("Enum constant undefined: %s",t)))}function K5(){K5=Z,ort=new o3e,crt=new i3e,irt=new l3e,rrt=new f3e,srt=new h3e}function EO(){EO=Z,Hhe=new RZ("BY_SIZE",0),yG=new RZ("BY_SIZE_AND_SHAPE",1)}function SO(){SO=Z,OG=new xZ("EADES",0),Bk=new xZ("FRUCHTERMAN_REINGOLD",1)}function uI(){uI=Z,pR=new BZ("READING_DIRECTION",0),N1e=new BZ("ROTATION",1)}function _$e(){_$e=Z,Hrt=vn((Qg(),U(G(L1e,1),_e,335,0,[sU,x1e,uU,pP,bP])))}function E$e(){E$e=Z,yst=vn((s6(),U(G(Nbe,1),_e,315,0,[Lbe,QU,ZU,jP,AP])))}function S$e(){S$e=Z,Drt=vn((Zm(),U(G(Ort,1),_e,363,0,[fR,dR,gR,hR,lR])))}function P$e(){P$e=Z,not=vn((Ku(),U(G(dge,1),_e,163,0,[aj,_P,K1,EP,xw])))}function M$e(){M$e=Z,Kat=vn((qI(),U(G(spe,1),_e,316,0,[rpe,kW,cpe,RW,ope])))}function C$e(){C$e=Z,llt=vn((fl(),U(G(Dd,1),_e,175,0,[Tt,ar,kf,_b,Od])))}function I$e(){I$e=Z,xat=vn((PE(),U(G(Rat,1),_e,355,0,[Kv,e3,HP,qP,zP])))}function T$e(){T$e=Z,Jit=vn((Hr(),U(G(kde,1),_e,356,0,[Af,B1,Hc,Pc,Io])))}function j$e(){j$e=Z,Rlt=vn((eo(),U(G(WP,1),_e,103,0,[ih,Va,ga,Vh,Gh])))}function A$e(){A$e=Z,Hlt=vn((Um(),U(G(QP,1),_e,249,0,[W1,Nj,kwe,JP,Rwe])))}function O$e(){O$e=Z,Glt=vn((Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])))}function $$(e,t){var n;return n=c(Bt(e.a,t),134),n||(n=new bN,Kn(e.a,t,n)),n}function D$e(e){var t;return t=c(B(e,(ye(),W0)),305),t?t.a==e:!1}function k$e(e){var t;return t=c(B(e,(ye(),W0)),305),t?t.i==e:!1}function R$e(e,t){return yt(t),lne(e),e.d.Ob()?(t.td(e.d.Pb()),!0):!1}function PO(e){return uc(e,Fn)>0?Fn:uc(e,Ar)<0?Ar:tn(e)}function Xp(e){return e<3?(pu(e,TJe),e+1):e=0&&t=-.01&&e.a<=ql&&(e.a=0),e.b>=-.01&&e.b<=ql&&(e.b=0),e}function L$e(e,t){return t==(oB(),oB(),unt)?e.toLocaleLowerCase():e.toLowerCase()}function Vie(e){return((e.i&2)!=0?"interface ":(e.i&1)!=0?"":"class ")+(Sh(e),e.o)}function mo(e){var t,n;n=(t=new NN,t),on((!e.q&&(e.q=new Me(ya,e,11,10)),e.q),n)}function eIt(e,t){var n;return n=t>0?t-1:t,D9e(gyt(sKe(Hte(new Z3,n),e.n),e.j),e.k)}function tIt(e,t,n,i){var r;e.j=-1,gse(e,Wce(e,t,n),(Wr(),r=c(t,66).Mj(),r.Ok(i)))}function N$e(e){this.g=e,this.f=new Se,this.a=g.Math.min(this.g.c.c,this.g.d.c)}function F$e(e){this.b=new Se,this.a=new Se,this.c=new Se,this.d=new Se,this.e=e}function B$e(e,t){this.a=new en,this.e=new en,this.b=(X5(),VR),this.c=e,this.b=t}function $$e(e,t,n){i8.call(this),Gie(this),this.a=e,this.c=n,this.b=t.d,this.f=t.e}function K$e(e){this.d=e,this.c=e.c.vc().Kc(),this.b=null,this.a=null,this.e=(YA(),sG)}function d0(e){if(e<0)throw V(new St("Illegal Capacity: "+e));this.g=this.ri(e)}function nIt(e,t){if(0>e||e>t)throw V(new oZ("fromIndex: 0, toIndex: "+e+Uue+t))}function iIt(e){var t;if(e.a==e.b.a)throw V(new tc);return t=e.a,e.c=t,e.a=e.a.e,t}function MO(e){var t;Rp(!!e.c),t=e.c.a,Fu(e.d,e.c),e.b==e.c?e.b=t:--e.a,e.c=null}function CO(e,t){var n;return Wg(e),n=new aLe(e,e.a.rd(),e.a.qd()|4,t),new ht(e,n)}function rIt(e,t){var n,i;return n=c(tw(e.d,t),14),n?(i=t,e.e.pc(i,n)):null}function IO(e,t){var n,i;for(i=e.Kc();i.Ob();)n=c(i.Pb(),70),pe(n,(ye(),W2),t)}function oIt(e){var t;return t=ge(Te(B(e,(Oe(),Id)))),t<0&&(t=0,pe(e,Id,t)),t}function cIt(e,t,n){var i;i=g.Math.max(0,e.b/2-.5),a6(n,i,1),Ee(t,new dOe(n,i))}function sIt(e,t,n){var i;return i=e.a.e[c(t.a,10).p]-e.a.e[c(n.a,10).p],xi(DC(i))}function q$e(e,t,n,i,r,o){var u;u=E$(i),Rr(u,r),br(u,o),it(e.a,i,new c8(u,t,n.f))}function H$e(e,t){var n;if(n=QI(e.Tg(),t),!n)throw V(new St(x1+t+PV));return n}function Jp(e,t){var n;for(n=e;yi(n);)if(n=yi(n),n==t)return!0;return!1}function uIt(e,t){var n,i,r;for(i=t.a.cd(),n=c(t.a.dd(),14).gc(),r=0;r0&&(e.a/=t,e.b/=t),e}function bu(e){var t;return e.w?e.w:(t=wPt(e),t&&!t.kh()&&(e.w=t),t)}function pIt(e){var t;return e==null?null:(t=c(e,190),wDt(t,t.length))}function ee(e,t){if(e.g==null||t>=e.i)throw V(new kF(t,e.i));return e.li(t,e.g[t])}function wIt(e){var t,n;for(t=e.a.d.j,n=e.c.d.j;t!=n;)Fa(e.b,t),t=r7(t);Fa(e.b,t)}function mIt(e){var t;for(t=0;t=14&&t<=16))),e}function U$e(e,t,n){var i=function(){return e.apply(i,arguments)};return t.apply(i,n),i}function W$e(e,t,n){var i,r;i=t;do r=ge(e.p[i.p])+n,e.p[i.p]=r,i=e.a[i.p];while(i!=t)}function B_(e,t){var n,i;i=e.a,n=Qjt(e,t,null),i!=t&&!e.e&&(n=AE(e,t,n)),n&&n.Fi()}function Uie(e,t){return Il(),Na(A1),g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)}function Wie(e,t){return Il(),Na(A1),g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)}function _It(e,t){return I1(),Uc(e.b.c.length-e.e.c.length,t.b.c.length-t.e.c.length)}function Bm(e,t){return vyt(z5(e,t,tn(jr(Xf,qf(tn(jr(t==null?0:fi(t),Jf)),15)))))}function Y$e(){Y$e=Z,hrt=vn((Dt(),U(G(HG,1),_e,267,0,[Ui,ur,Bi,Mc,cu,Gl])))}function X$e(){X$e=Z,vlt=vn((sw(),U(G(zW,1),_e,291,0,[HW,jj,Tj,qW,Cj,Ij])))}function J$e(){J$e=Z,dlt=vn((Gf(),U(G(Ape,1),_e,248,0,[$W,Pj,Mj,mx,px,wx])))}function Q$e(){Q$e=Z,Brt=vn((y2(),U(G(h4,1),_e,227,0,[f4,gP,l4,Dw,Tv,Iv])))}function Z$e(){Z$e=Z,Xrt=vn((mE(),U(G(Q1e,1),_e,275,0,[wP,W1e,J1e,X1e,Y1e,U1e])))}function eKe(){eKe=Z,Yrt=vn(($I(),U(G(G1e,1),_e,274,0,[vR,H1e,V1e,q1e,z1e,bU])))}function tKe(){tKe=Z,wst=vn((R7(),U(G(kbe,1),_e,313,0,[WU,Obe,UU,Abe,Dbe,zR])))}function nKe(){nKe=Z,Urt=vn((F7(),U(G(B1e,1),_e,276,0,[fU,lU,dU,hU,gU,wR])))}function iKe(){iKe=Z,Tut=vn((d6(),U(G(Iut,1),_e,327,0,[ex,lW,hW,fW,dW,aW])))}function rKe(){rKe=Z,Vlt=vn((js(),U(G(Cx,1),_e,273,0,[X1,Wh,Fj,eM,ZP,c3])))}function oKe(){oKe=Z,Nlt=vn((L7(),U(G(Cwe,1),_e,312,0,[rY,Swe,Mwe,_we,Pwe,Ewe])))}function EIt(){return fw(),U(G(ro,1),_e,93,0,[Ga,Uh,Ua,Ya,oh,pa,Mu,Wa,ba])}function jO(e,t){var n;n=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,0,n,e.a))}function AO(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,1,n,e.b))}function $_(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,3,n,e.b))}function b0(e,t){var n;n=e.f,e.f=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,3,n,e.f))}function p0(e,t){var n;n=e.g,e.g=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,4,n,e.g))}function es(e,t){var n;n=e.i,e.i=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,5,n,e.i))}function ts(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,6,n,e.j))}function K_(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,1,n,e.j))}function q_(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,4,n,e.c))}function H_(e,t){var n;n=e.k,e.k=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,2,n,e.k))}function q$(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new b$(e,2,n,e.d))}function hd(e,t){var n;n=e.s,e.s=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new b$(e,4,n,e.s))}function Zp(e,t){var n;n=e.t,e.t=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new b$(e,5,n,e.t))}function z_(e,t){var n;n=e.F,e.F=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,5,n,t))}function aI(e,t){var n;return n=c(Bt((p9(),Fx),e),55),n?n.xj(t):oe(xt,xe,1,t,5,1)}function Dh(e,t){var n,i;return n=t in e.a,n&&(i=Ch(e,t).he(),i)?i.a:null}function SIt(e,t){var n,i,r;return n=(i=(Hb(),r=new KJ,r),t&&Lse(i,t),i),ire(n,e),n}function cKe(e,t,n){if(tE(e,n),!e.Bk()&&n!=null&&!e.wj(n))throw V(new kN);return n}function sKe(e,t){return e.n=t,e.n?(e.f=new Se,e.e=new Se):(e.f=null,e.e=null),e}function hn(e,t,n,i,r,o){var u;return u=RB(e,t),aKe(n,u),u.i=r?8:0,u.f=i,u.e=r,u.g=o,u}function Yie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=1,this.c=e,this.a=n}function Xie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=2,this.c=e,this.a=n}function Jie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=6,this.c=e,this.a=n}function Qie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=7,this.c=e,this.a=n}function Zie(e,t,n,i,r){this.d=t,this.j=i,this.e=r,this.o=-1,this.p=4,this.c=e,this.a=n}function uKe(e,t){var n,i,r,o;for(i=t,r=0,o=i.length;r=0),S9t(e.d,e.c)<0&&(e.a=e.a-1&e.d.a.length-1,e.b=e.d.c),e.c=-1}function ere(e){return e.a<54?e.f<0?-1:e.f>0?1:0:(!e.c&&(e.c=SI(e.f)),e.c).e}function Na(e){if(!(e>=0))throw V(new St("tolerance ("+e+") must be >= 0"));return e}function V_(){return FW||(FW=new JWe,zm(FW,U(G(Sv,1),xe,130,0,[new VJ]))),FW}function Zr(){Zr=Z,OP=new mF(R6,0),Os=new mF("INPUT",1),Fc=new mF("OUTPUT",2)}function DO(){DO=Z,k1e=new hF("ARD",0),bR=new hF("MSD",1),cU=new hF("MANUAL",2)}function w0(){w0=Z,wj=new SF("BARYCENTER",0),kP=new SF(xQe,1),YR=new SF(LQe,2)}function lI(e,t){var n;if(n=e.gc(),t<0||t>n)throw V(new Fp(t,n));return new mte(e,t)}function hKe(e,t){var n;return Q(t,42)?e.c.Mc(t):(n=xK(e,t),d7(e,t),n)}function uo(e,t,n){return Ug(e,t),kc(e,n),hd(e,0),Zp(e,1),pd(e,!0),bd(e,!0),e}function pu(e,t){if(e<0)throw V(new St(t+" cannot be negative but was: "+e));return e}function dKe(e,t){var n,i;for(n=0,i=e.gc();n0?c(Ne(n.a,i-1),10):null}function H5(e,t){var n;n=e.k,e.k=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,2,n,e.k))}function RO(e,t){var n;n=e.f,e.f=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,8,n,e.f))}function xO(e,t){var n;n=e.i,e.i=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,7,n,e.i))}function ire(e,t){var n;n=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,8,n,e.a))}function rre(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,0,n,e.b))}function ore(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,0,n,e.b))}function cre(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,1,n,e.c))}function sre(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,1,n,e.c))}function z$(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,4,n,e.c))}function ure(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,1,n,e.d))}function V$(e,t){var n;n=e.D,e.D=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,2,n,e.D))}function G$(e,t){e.r>0&&e.c0&&e.g!=0&&G$(e.i,t/e.r*e.i.d))}function DIt(e,t,n){var i;e.b=t,e.a=n,i=(e.a&512)==512?new n9e:new zJ,e.c=WNt(i,e.b,e.a)}function EKe(e,t){return Bh(e.e,t)?(Wr(),N$(t)?new d8(t,e):new pC(t,e)):new g7e(t,e)}function LO(e,t){return myt(V5(e.a,t,tn(jr(Xf,qf(tn(jr(t==null?0:fi(t),Jf)),15)))))}function kIt(e,t,n){return Wp(e,new vIe(t),new lN,new yIe(n),U(G(Hs,1),_e,132,0,[]))}function RIt(e){var t,n;return 0>e?new yZ:(t=e+1,n=new GFe(t,e),new Zee(null,n))}function xIt(e,t){st();var n;return n=new Fy(1),fr(e)?bo(n,e,t):Kc(n.f,e,t),new AN(n)}function LIt(e,t){var n,i;return n=e.o+e.p,i=t.o+t.p,nt?(t<<=1,t>0?t:j6):t}function U$(e){switch(Aee(e.e!=3),e.e){case 2:return!1;case 0:return!0}return qMt(e)}function PKe(e,t){var n;return Q(t,8)?(n=c(t,8),e.a==n.a&&e.b==n.b):!1}function W$(e,t,n){var i,r,o;return o=t>>5,r=t&31,i=Xi($p(e.n[n][o],tn(Ph(r,1))),3),i}function FIt(e,t){var n,i;for(i=t.vc().Kc();i.Ob();)n=c(i.Pb(),42),O7(e,n.cd(),n.dd())}function BIt(e,t){var n;n=new AA,c(t.b,65),c(t.b,65),c(t.b,65),Zc(t.a,new jte(e,n,t))}function are(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,21,n,e.b))}function lre(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,11,n,e.d))}function NO(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,13,n,e.j))}function MKe(e,t,n){var i,r,o;for(o=e.a.length-1,r=e.b,i=0;i>>31;i!=0&&(e[n]=i)}function YIt(e,t){st();var n,i;for(i=new Se,n=0;n0&&(this.g=this.ri(this.i+(this.i/8|0)+1),e.Qc(this.g))}function Ci(e,t){a8.call(this,Nft,e,t),this.b=this,this.a=qc(e.Tg(),at(this.e.Tg(),this.c))}function G5(e,t){var n,i;for(yt(t),i=t.vc().Kc();i.Ob();)n=c(i.Pb(),42),e.zc(n.cd(),n.dd())}function oTt(e,t,n){var i;for(i=n.Kc();i.Ob();)if(!rO(e,t,i.Pb()))return!1;return!0}function cTt(e,t,n,i,r){var o;return n&&(o=di(t.Tg(),e.c),r=n.gh(t,-1-(o==-1?i:o),null,r)),r}function sTt(e,t,n,i,r){var o;return n&&(o=di(t.Tg(),e.c),r=n.ih(t,-1-(o==-1?i:o),null,r)),r}function zKe(e){var t;if(e.b==-2){if(e.e==0)t=-1;else for(t=0;e.a[t]==0;t++);e.b=t}return e.b}function VKe(e){switch(e.g){case 2:return Ie(),Mt;case 4:return Ie(),jt;default:return e}}function GKe(e){switch(e.g){case 1:return Ie(),Yt;case 3:return Ie(),_t;default:return e}}function uTt(e){var t,n,i;return e.j==(Ie(),_t)&&(t=_Ue(e),n=bs(t,jt),i=bs(t,Mt),i||i&&n)}function aTt(e){var t,n;return t=c(e.e&&e.e(),9),n=c(_ne(t,t.length),9),new ku(t,n,t.length)}function lTt(e,t){Wt(t,RQe,1),poe(Ayt(new BA((qS(),new qB(e,!1,!1,new jJ))))),qt(t)}function fI(e,t){return Pt(),fr(e)?Sie(e,ln(t)):kp(e)?SB(e,Te(t)):Dp(e)?gSt(e,Fe(t)):e.wd(t)}function pre(e,t){t.q=e,e.d=g.Math.max(e.d,t.r),e.b+=t.d+(e.a.c.length==0?0:e.c),Ee(e.a,t)}function U_(e,t){var n,i,r,o;return r=e.c,n=e.c+e.b,o=e.d,i=e.d+e.a,t.a>r&&t.ao&&t.b1||e.Ob())return++e.a,e.g=0,t=e.i,e.Ob(),t;throw V(new tc)}function ETt(e){U7e();var t;return iOe(uW,e)||(t=new ASe,t.a=e,cte(uW,e,t)),c(so(uW,e),635)}function ia(e){var t,n,i,r;return r=e,i=0,r<0&&(r+=nb,i=Kh),n=xi(r/T2),t=xi(r-n*T2),Bc(t,n,i)}function hI(e){var t,n,i;for(i=0,n=new By(e.a);n.a>22),r=e.h+t.h+(i>>22),Bc(n&qs,i&qs,r&Kh)}function hqe(e,t){var n,i,r;return n=e.l-t.l,i=e.m-t.m+(n>>22),r=e.h-t.h+(i>>22),Bc(n&qs,i&qs,r&Kh)}function pI(e){var t;return e<128?(t=(IRe(),hhe)[e],!t&&(t=hhe[e]=new cQ(e)),t):new cQ(e)}function gi(e){var t;return Q(e,78)?e:(t=e&&e.__java$exception,t||(t=new tHe(e),mAe(t)),t)}function wI(e){if(Q(e,186))return c(e,118);if(e)return null;throw V(new Ly(set))}function dqe(e,t){if(t==null)return!1;for(;e.a!=e.b;)if($n(t,t7(e)))return!0;return!1}function Ere(e){return e.a.Ob()?!0:e.a!=e.d?!1:(e.a=new nie(e.e.f),e.a.Ob())}function Hi(e,t){var n,i;return n=t.Pc(),i=n.length,i==0?!1:(xte(e.c,e.c.length,n),!0)}function NTt(e,t,n){var i,r;for(r=t.vc().Kc();r.Ob();)i=c(r.Pb(),42),e.yc(i.cd(),i.dd(),n);return e}function gqe(e,t){var n,i;for(i=new q(e.b);i.a=0,"Negative initial capacity"),u8(t>=0,"Non-positive load factor"),Is(this)}function rK(e,t,n){return e>=128?!1:e<64?s5(Xi(Ph(1,e),n),0):s5(Xi(Ph(1,e-64),t),0)}function GTt(e,t){return!e||!t||e==t?!1:E0(e.b.c,t.b.c+t.b.b)<0&&E0(t.b.c,e.b.c+e.b.b)<0}function Cqe(e){var t,n,i;return n=e.n,i=e.o,t=e.d,new Ru(n.a-t.b,n.b-t.d,i.a+(t.b+t.c),i.b+(t.d+t.a))}function UTt(e){var t,n,i,r;for(n=e.a,i=0,r=n.length;ii)throw V(new Fp(t,i));return e.hi()&&(n=HLe(e,n)),e.Vh(t,n)}function yI(e,t,n){return n==null?(!e.q&&(e.q=new en),u2(e.q,t)):(!e.q&&(e.q=new en),Kn(e.q,t,n)),e}function pe(e,t,n){return n==null?(!e.q&&(e.q=new en),u2(e.q,t)):(!e.q&&(e.q=new en),Kn(e.q,t,n)),e}function Iqe(e){var t,n;return n=new uO,Mo(n,e),pe(n,(v1(),K2),e),t=new en,JBt(e,n,t),Sqt(e,n,t),n}function XTt(e){ov();var t,n,i;for(n=oe(ir,we,8,2,0,1),i=0,t=0;t<2;t++)i+=.5,n[t]=O8t(i,e);return n}function Tqe(e,t){var n,i,r,o;for(n=!1,i=e.a[t].length,o=0;o>=1);return t}function Aqe(e){var t,n;return n=WI(e.h),n==32?(t=WI(e.m),t==32?WI(e.l)+32:t+20-10):n-12}function Y5(e){var t;return t=e.a[e.b],t==null?null:(vi(e.a,e.b,null),e.b=e.b+1&e.a.length-1,t)}function Oqe(e){var t,n;return t=e.t-e.k[e.o.p]*e.d+e.j[e.o.p]>e.f,n=e.u+e.e[e.o.p]*e.d>e.f*e.s*e.d,t||n}function JO(e,t,n){var i,r;return i=new T$(t,n),r=new Er,e.b=EWe(e,e.b,i,r),r.b||++e.c,e.b.b=!1,r.d}function Dqe(e,t,n){var i,r,o,u;for(u=Q5(t,n),o=0,r=u.Kc();r.Ob();)i=c(r.Pb(),11),Kn(e.c,i,Ce(o++))}function _1(e){var t,n;for(n=new q(e.a.b);n.an&&(n=e[t]);return n}function kqe(e,t,n){var i;return i=new Se,Bse(e,t,i,(Ie(),jt),!0,!1),Bse(e,n,i,Mt,!1,!1),i}function cK(e,t,n){var i,r,o,u;return o=null,u=t,r=f0(u,"labels"),i=new ZOe(e,n),o=(bxt(i.a,i.b,r),r),o}function QTt(e,t,n,i){var r;return r=Cse(e,t,n,i),!r&&(r=Zjt(e,n,i),r&&!uv(e,t,r))?null:r}function ZTt(e,t,n,i){var r;return r=Ise(e,t,n,i),!r&&(r=SK(e,n,i),r&&!uv(e,t,r))?null:r}function Rqe(e,t){var n;for(n=0;n1||t>=0&&e.b<3)}function _I(e){var t,n,i;for(t=new ds,i=Mn(e,0);i.b!=i.d.c;)n=c(Pn(i),8),b_(t,0,new go(n));return t}function Vg(e){var t,n;for(n=new q(e.a.b);n.ai?1:0}function Kre(e,t){return rWe(e,t)?(it(e.b,c(B(t,(ye(),kw)),21),t),Cn(e.a,t),!0):!1}function fjt(e){var t,n;t=c(B(e,(ye(),As)),10),t&&(n=t.c,Jc(n.a,t),n.a.c.length==0&&Jc(Nr(t).b,n))}function $qe(e){return Vl?oe(hnt,qJe,572,0,0,1):c(Bl(e.a,oe(hnt,qJe,572,e.a.c.length,0,1)),842)}function hjt(e,t,n,i){return k8(),new qN(U(G(fb,1),gD,42,0,[(ZK(e,t),new Vb(e,t)),(ZK(n,i),new Vb(n,i))]))}function Hm(e,t,n){var i,r;return r=(i=new NN,i),uo(r,t,n),on((!e.q&&(e.q=new Me(ya,e,11,10)),e.q),r),r}function lK(e){var t,n,i,r;for(r=Fyt(hft,e),n=r.length,i=oe(Re,we,2,n,6,1),t=0;t=e.b.c.length||(qre(e,2*t+1),n=2*t+2,n=0&&e[i]===t[i];i--);return i<0?0:iF(Xi(e[i],no),Xi(t[i],no))?-1:1}function djt(e,t){var n,i;for(i=Mn(e,0);i.b!=i.d.c;)n=c(Pn(i),214),n.e.length>0&&(t.td(n),n.i&&sAt(n))}function hK(e,t){var n,i;return i=c(vt(e.a,4),126),n=oe(hY,KV,415,t,0,1),i!=null&&bc(i,0,n,0,i.length),n}function qqe(e,t){var n;return n=new Hq((e.f&256)!=0,e.i,e.a,e.d,(e.f&16)!=0,e.j,e.g,t),e.e!=null||(n.c=e),n}function gjt(e,t){var n,i;for(i=e.Zb().Cc().Kc();i.Ob();)if(n=c(i.Pb(),14),n.Hc(t))return!0;return!1}function dK(e,t,n,i,r){var o,u;for(u=n;u<=r;u++)for(o=t;o<=i;o++)if(Ym(e,o,u))return!0;return!1}function Hqe(e,t,n){var i,r,o,u;for(yt(n),u=!1,o=e.Zc(t),r=n.Kc();r.Ob();)i=r.Pb(),o.Rb(i),u=!0;return u}function bjt(e,t){var n;return e===t?!0:Q(t,83)?(n=c(t,83),zce(e0(e),n.vc())):!1}function zqe(e,t,n){var i,r;for(r=n.Kc();r.Ob();)if(i=c(r.Pb(),42),e.re(t,i.dd()))return!0;return!1}function Vqe(e,t,n){return e.d[t.p][n.p]||(f8t(e,t,n),e.d[t.p][n.p]=!0,e.d[n.p][t.p]=!0),e.a[t.p][n.p]}function tE(e,t){if(!e.ai()&&t==null)throw V(new St("The 'no null' constraint is violated"));return t}function nE(e,t){e.D==null&&e.B!=null&&(e.D=e.B,e.B=null),V$(e,t==null?null:(yt(t),t)),e.C&&e.yk(null)}function pjt(e,t){var n;return!e||e==t||!nr(t,(ye(),X0))?!1:(n=c(B(t,(ye(),X0)),10),n!=e)}function gK(e){switch(e.i){case 2:return!0;case 1:return!1;case-1:++e.c;default:return e.pl()}}function Gqe(e){switch(e.i){case-2:return!0;case-1:return!1;case 1:--e.c;default:return e.ql()}}function Uqe(e){LLe.call(this,"The given string does not match the expected format for individual spacings.",e)}function ru(){ru=Z,Tu=new R9("ELK",0),Hwe=new R9("JSON",1),qwe=new R9("DOT",2),zwe=new R9("SVG",3)}function EI(){EI=Z,sx=new MF(qh,0),S0e=new MF("RADIAL_COMPACTION",1),P0e=new MF("WEDGE_COMPACTION",2)}function Fl(){Fl=Z,Fhe=new rF("CONCURRENT",0),Su=new rF("IDENTITY_FINISH",1),Tw=new rF("UNORDERED",2)}function bK(){bK=Z,dde=(l9(),CG),hde=new ut(uae,dde),lit=new hi(aae),fit=new hi(lae),hit=new hi(fae)}function iE(){iE=Z,C1e=new Z_e,I1e=new eEe,Prt=new tEe,Srt=new nEe,Ert=new iEe,M1e=(yt(Ert),new pc)}function rE(){rE=Z,oW=new yF("CONSERVATIVE",0),Xbe=new yF("CONSERVATIVE_SOFT",1),DP=new yF("SLOPPY",2)}function QO(){QO=Z,Owe=new Yb(15),Flt=new Yr((kn(),Sb),Owe),YP=i3,Iwe=_lt,Twe=Eb,Awe=Vv,jwe=_x}function pK(e,t,n){var i,r,o;for(i=new wi,o=Mn(n,0);o.b!=o.d.c;)r=c(Pn(o),8),Cn(i,new go(r));Hqe(e,t,i)}function wjt(e){var t,n,i;for(t=0,i=oe(ir,we,8,e.b,0,1),n=Mn(e,0);n.b!=n.d.c;)i[t++]=c(Pn(n),8);return i}function zre(e){var t;return t=(!e.a&&(e.a=new Me(Yh,e,9,5)),e.a),t.i!=0?xyt(c(ee(t,0),678)):null}function mjt(e,t){var n;return n=xr(e,t),iF(u$(e,t),0)|Jyt(u$(e,n),0)?n:xr(dD,u$($p(n,63),1))}function vjt(e,t){var n;n=Le((kK(),HR))!=null&&t.wg()!=null?ge(Te(t.wg()))/ge(Te(Le(HR))):1,Kn(e.b,t,n)}function yjt(e,t){var n,i;return n=c(e.d.Bc(t),14),n?(i=e.e.hc(),i.Gc(n),e.e.d-=n.gc(),n.$b(),i):null}function Vre(e,t){var n,i;if(i=e.c[t],i!=0)for(e.c[t]=0,e.d-=i,n=t+1;n0)return y_(t-1,e.a.c.length),ad(e.a,t-1);throw V(new yAe)}function _jt(e,t,n){if(t<0)throw V(new ho(wZe+t));tt)throw V(new St(mD+e+HJe+t));if(e<0||t>n)throw V(new oZ(mD+e+Yue+t+Uue+n))}function Xqe(e){if(!e.a||(e.a.i&8)==0)throw V(new Ao("Enumeration class expected for layout option "+e.f))}function ew(e){var t;++e.j,e.i==0?e.g=null:e.iUD?e-n>UD:n-e>UD}function mK(e,t){return!e||t&&!e.j||Q(e,124)&&c(e,124).a.b==0?0:e.Re()}function e7(e,t){return!e||t&&!e.k||Q(e,124)&&c(e,124).a.a==0?0:e.Se()}function SI(e){return T1(),e<0?e!=-1?new $oe(-1,-e):gG:e<=10?Che[xi(e)]:new $oe(1,e)}function Ure(e){throw iK(),V(new d9e("Unexpected typeof result '"+e+"'; please report this bug to the GWT team"))}function tHe(e){v9e(),V9(this),F8(this),this.e=e,gWe(this,e),this.g=e==null?rs:Ro(e),this.a="",this.b=e,this.a=""}function Wre(){this.a=new y5e,this.f=new uje(this),this.b=new aje(this),this.i=new lje(this),this.e=new fje(this)}function nHe(){Avt.call(this,new Oie(Xp(16))),pu(2,PJe),this.b=2,this.a=new Ane(null,null,0,null),GM(this.a,this.a)}function X5(){X5=Z,YU=new pF("DUMMY_NODE_OVER",0),Rbe=new pF("DUMMY_NODE_UNDER",1),VR=new pF("EQUAL",2)}function vK(){vK=Z,FG=FLe(U(G(WP,1),_e,103,0,[(eo(),ga),Va])),BG=FLe(U(G(WP,1),_e,103,0,[Gh,Vh]))}function yK(e){return(Ie(),cs).Hc(e.j)?ge(Te(B(e,(ye(),m4)))):Ko(U(G(ir,1),we,8,0,[e.i.n,e.n,e.a])).b}function Cjt(e){var t,n,i,r;for(i=e.b.a,n=i.a.ec().Kc();n.Ob();)t=c(n.Pb(),561),r=new WUe(t,e.e,e.f),Ee(e.g,r)}function Ug(e,t){var n,i,r;i=e.nk(t,null),r=null,t&&(r=(r_(),n=new Nb,n),B_(r,e.r)),i=$l(e,r,i),i&&i.Fi()}function Ijt(e,t){var n,i;for(i=$s(e.d,1)!=0,n=!0;n;)n=!1,n=t.c.Tf(t.e,i),n=n|ZI(e,t,i,!1),i=!i;hre(e)}function Yre(e,t){var n,i,r;return i=!1,n=t.q.d,t.dr&&(TVe(t.q,r),i=n!=t.q.d)),i}function iHe(e,t){var n,i,r,o,u,a,l,d;return l=t.i,d=t.j,i=e.f,r=i.i,o=i.j,u=l-r,a=d-o,n=g.Math.sqrt(u*u+a*a),n}function Xre(e,t){var n,i;return i=g7(e),i||(n=(hH(),jGe(t)),i=new fAe(n),on(i.Vk(),e)),i}function PI(e,t){var n,i;return n=c(e.c.Bc(t),14),n?(i=e.hc(),i.Gc(n),e.d-=n.gc(),n.$b(),e.mc(i)):e.jc()}function rHe(e,t){var n;for(n=0;n=e.c.b:e.a<=e.c.b))throw V(new tc);return t=e.a,e.a+=e.c.c,++e.b,Ce(t)}function Ajt(e){var t;return t=new N$e(e),zC(e.a,srt,new Js(U(G(QT,1),xe,369,0,[t]))),t.d&&Ee(t.f,t.d),t.f}function _K(e){var t;return t=new wee(e.a),Mo(t,e),pe(t,(ye(),Hn),e),t.o.a=e.g,t.o.b=e.f,t.n.a=e.i,t.n.b=e.j,t}function Ojt(e,t,n,i){var r,o;for(o=e.Kc();o.Ob();)r=c(o.Pb(),70),r.n.a=t.a+(i.a-r.o.a)/2,r.n.b=t.b,t.b+=r.o.b+n}function Djt(e,t,n){var i,r;for(r=t.a.a.ec().Kc();r.Ob();)if(i=c(r.Pb(),57),wLe(e,i,n))return!0;return!1}function kjt(e){var t,n;for(n=new q(e.r);n.a=0?t:-t;i>0;)i%2==0?(n*=n,i=i/2|0):(r*=n,i-=1);return t<0?1/r:r}function Njt(e,t){var n,i,r;for(r=1,n=e,i=t>=0?t:-t;i>0;)i%2==0?(n*=n,i=i/2|0):(r*=n,i-=1);return t<0?1/r:r}function fHe(e){var t,n;if(e!=null)for(n=0;n0&&(n=c(Ne(e.a,e.a.c.length-1),570),Kre(n,t))||Ee(e.a,new zFe(t))}function qjt(e){ka();var t,n;t=e.d.c-e.e.c,n=c(e.g,145),Zc(n.b,new wTe(t)),Zc(n.c,new mTe(t)),Mr(n.i,new vTe(t))}function bHe(e){var t;return t=new n1,t.a+="VerticalSegment ",nc(t,e.e),t.a+=" ",wn(t,Iee(new XN,new q(e.k))),t.a}function Hjt(e){var t;return t=c(h0(e.c.c,""),229),t||(t=new i2(i_(n_(new Ay,""),"Other")),Xg(e.c.c,"",t)),t}function J5(e){var t;return(e.Db&64)!=0?Ba(e):(t=new ea(Ba(e)),t.a+=" (name: ",co(t,e.zb),t.a+=")",t.a)}function toe(e,t,n){var i,r;return r=e.sb,e.sb=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,4,r,t),n?n.Ei(i):n=i),n}function EK(e,t){var n,i,r;for(n=0,r=qo(e,t).Kc();r.Ob();)i=c(r.Pb(),11),n+=B(i,(ye(),As))!=null?1:0;return n}function Vm(e,t,n){var i,r,o;for(i=0,o=Mn(e,0);o.b!=o.d.c&&(r=ge(Te(Pn(o))),!(r>n));)r>=t&&++i;return i}function zjt(e,t,n){var i,r;return i=new Ah(e.e,3,13,null,(r=t.c,r||(ot(),Ql)),wd(e,t),!1),n?n.Ei(i):n=i,n}function Vjt(e,t,n){var i,r;return i=new Ah(e.e,4,13,(r=t.c,r||(ot(),Ql)),null,wd(e,t),!1),n?n.Ei(i):n=i,n}function noe(e,t,n){var i,r;return r=e.r,e.r=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,8,r,e.r),n?n.Ei(i):n=i),n}function gd(e,t){var n,i;return n=c(t,676),i=n.vk(),!i&&n.wk(i=Q(t,88)?new f7e(e,c(t,26)):new DNe(e,c(t,148))),i}function MI(e,t,n){var i;e.qi(e.i+1),i=e.oi(t,n),t!=e.i&&bc(e.g,t,e.g,t+1,e.i-t),vi(e.g,t,i),++e.i,e.bi(t,n),e.ci()}function Gjt(e,t){var n;return t.a&&(n=t.a.a.length,e.a?wn(e.a,e.b):e.a=new lu(e.d),RNe(e.a,t.a,t.d.length,n)),e}function Ujt(e,t){var n,i,r,o;if(t.vi(e.a),o=c(vt(e.a,8),1936),o!=null)for(n=o,i=0,r=n.length;in)throw V(new ho(mD+e+Yue+t+", size: "+n));if(e>t)throw V(new St(mD+e+HJe+t))}function $u(e,t,n){if(t<0)ose(e,n);else{if(!n.Ij())throw V(new St(x1+n.ne()+W6));c(n,66).Nj().Vj(e,e.yh(),t)}}function Xjt(e,t,n,i,r,o,u,a){var l;for(l=n;o=i||t=65&&e<=70?e-65+10:e>=97&&e<=102?e-97+10:e>=48&&e<=57?e-48:0}function EHe(e){var t;return(e.Db&64)!=0?Ba(e):(t=new ea(Ba(e)),t.a+=" (source: ",co(t,e.d),t.a+=")",t.a)}function Qjt(e,t,n){var i,r;return r=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,5,r,e.a),n?Mce(n,i):n=i),n}function bd(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,2,n,t))}function roe(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,8,n,t))}function i7(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,8,n,t))}function pd(e,t){var n;n=(e.Bb&512)!=0,t?e.Bb|=512:e.Bb&=-513,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,3,n,t))}function ooe(e,t){var n;n=(e.Bb&512)!=0,t?e.Bb|=512:e.Bb&=-513,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,9,n,t))}function Z5(e,t){var n;return e.b==-1&&e.a&&(n=e.a.Gj(),e.b=n?e.c.Xg(e.a.aj(),n):di(e.c.Tg(),e.a)),e.c.Og(e.b,t)}function Ce(e){var t,n;return e>-129&&e<128?(t=e+128,n=(yRe(),dhe)[t],!n&&(n=dhe[t]=new sQ(e)),n):new sQ(e)}function oE(e){var t,n;return e>-129&&e<128?(t=e+128,n=(CRe(),whe)[t],!n&&(n=whe[t]=new aQ(e)),n):new aQ(e)}function coe(e){var t,n;return t=e.k,t==(Dt(),Bi)?(n=c(B(e,(ye(),Zo)),61),n==(Ie(),_t)||n==Yt):!1}function Zjt(e,t,n){var i,r,o;return o=(r=EE(e.b,t),r),o&&(i=c(oD(iI(e,o),""),26),i)?Cse(e,i,t,n):null}function SK(e,t,n){var i,r,o;return o=(r=EE(e.b,t),r),o&&(i=c(oD(iI(e,o),""),26),i)?Ise(e,i,t,n):null}function SHe(e,t){var n,i;for(i=new $t(e);i.e!=i.i.gc();)if(n=c(Vt(i),138),le(t)===le(n))return!0;return!1}function e6(e,t,n){var i;if(i=e.gc(),t>i)throw V(new Fp(t,i));if(e.hi()&&e.Hc(n))throw V(new St(RT));e.Xh(t,n)}function eAt(e,t){var n;if(n=Bm(e.i,t),n==null)throw V(new sf("Node did not exist in input."));return wre(t,n),null}function tAt(e,t){var n;if(n=QI(e,t),Q(n,322))return c(n,34);throw V(new St(x1+t+"' is not a valid attribute"))}function nAt(e,t,n){var i,r;for(r=Q(t,99)&&(c(t,18).Bb&Vr)!=0?new RF(t,e):new X_(t,e),i=0;it?1:e==t?e==0?zi(1/e,1/t):0:isNaN(e)?isNaN(t)?0:1:-1}function fAt(e,t){Wt(t,"Sort end labels",1),Di(si($o(new ht(null,new bt(e.b,16)),new V3e),new G3e),new U3e),qt(t)}function t6(e,t,n){var i,r;return e.ej()?(r=e.fj(),i=Aq(e,t,n),e.$i(e.Zi(7,Ce(n),i,t,r)),i):Aq(e,t,n)}function PK(e,t){var n,i,r;e.d==null?(++e.e,--e.f):(r=t.cd(),n=t.Sh(),i=(n&Fn)%e.d.length,WMt(e,i,KUe(e,i,n,r)))}function cE(e,t){var n;n=(e.Bb&Ka)!=0,t?e.Bb|=Ka:e.Bb&=-1025,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,10,n,t))}function sE(e,t){var n;n=(e.Bb&vw)!=0,t?e.Bb|=vw:e.Bb&=-4097,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,12,n,t))}function uE(e,t){var n;n=(e.Bb&Es)!=0,t?e.Bb|=Es:e.Bb&=-8193,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,15,n,t))}function aE(e,t){var n;n=(e.Bb&Iw)!=0,t?e.Bb|=Iw:e.Bb&=-2049,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,11,n,t))}function hAt(e,t){var n;return n=zi(e.b.c,t.b.c),n!=0||(n=zi(e.a.a,t.a.a),n!=0)?n:zi(e.a.b,t.a.b)}function dAt(e,t){var n;if(n=Bt(e.k,t),n==null)throw V(new sf("Port did not exist in input."));return wre(t,n),null}function gAt(e){var t,n;for(n=GUe(bu(e)).Kc();n.Ob();)if(t=ln(n.Pb()),y6(e,t))return EMt((tOe(),Pft),t);return null}function bAt(e,t){var n,i,r,o,u;for(u=qc(e.e.Tg(),t),o=0,n=c(e.g,119),r=0;r>10)+wT&Ni,t[1]=(e&1023)+56320&Ni,pf(t,0,t.length)}function o7(e){var t,n;return n=c(B(e,(Oe(),Pu)),103),n==(eo(),ih)?(t=ge(Te(B(e,TR))),t>=1?Va:Vh):n}function mAt(e){switch(c(B(e,(Oe(),zh)),218).g){case 1:return new D4e;case 3:return new N4e;default:return new O4e}}function Wg(e){if(e.c)Wg(e.c);else if(e.d)throw V(new Ao("Stream already terminated, can't be modified or used"))}function IK(e){var t;return(e.Db&64)!=0?Ba(e):(t=new ea(Ba(e)),t.a+=" (identifier: ",co(t,e.k),t.a+=")",t.a)}function IHe(e,t,n){var i,r;return i=(Hb(),r=new OA,r),jO(i,t),AO(i,n),e&&on((!e.a&&(e.a=new qi(ma,e,5)),e.a),i),i}function TK(e,t,n,i){var r,o;return yt(i),yt(n),r=e.xc(t),o=r==null?n:q8e(c(r,15),c(n,14)),o==null?e.Bc(t):e.zc(t,o),o}function nt(e){var t,n,i,r;return n=(t=c(rl((i=e.gm,r=i.f,r==bn?i:r)),9),new ku(t,c(Da(t,t.length),9),0)),Fa(n,e),n}function vAt(e,t,n){var i,r;for(r=e.a.ec().Kc();r.Ob();)if(i=c(r.Pb(),10),bI(n,c(Ne(t,i.p),14)))return i;return null}function yAt(e,t,n){var i;try{ejt(e,t,n)}catch(r){throw r=gi(r),Q(r,597)?(i=r,V(new gie(i))):V(r)}return t}function P1(e,t){var n;return Oo(e)&&Oo(t)&&(n=e-t,pT>1,e.k=n-1>>1}function jK(){Oce();var e,t,n;n=pzt+++Date.now(),e=xi(g.Math.floor(n*vT))&wD,t=xi(n-e*Gue),this.a=e^1502,this.b=t^ez}function xh(e){var t,n,i;for(t=new Se,i=new q(e.j);i.a34028234663852886e22?Ii:t<-34028234663852886e22?$i:t}function THe(e){return e-=e>>1&1431655765,e=(e>>2&858993459)+(e&858993459),e=(e>>4)+e&252645135,e+=e>>8,e+=e>>16,e&63}function jHe(e){var t,n,i,r;for(t=new ake(e.Hd().gc()),r=0,i=l2(e.Hd().Kc());i.Ob();)n=i.Pb(),x6t(t,n,Ce(r++));return ckt(t.a)}function CAt(e,t){var n,i,r;for(r=new en,i=t.vc().Kc();i.Ob();)n=c(i.Pb(),42),Kn(r,n.cd(),wTt(e,c(n.dd(),15)));return r}function hoe(e,t){e.n.c.length==0&&Ee(e.n,new W8(e.s,e.t,e.i)),Ee(e.b,t),Woe(c(Ne(e.n,e.n.c.length-1),211),t),BYe(e,t)}function Gm(e){return(e.c!=e.b.b||e.i!=e.g.b)&&(e.a.c=oe(xt,xe,1,0,5,1),Hi(e.a,e.b),Hi(e.a,e.g),e.c=e.b.b,e.i=e.g.b),e.a}function AK(e,t){var n,i,r;for(r=0,i=c(t.Kb(e),20).Kc();i.Ob();)n=c(i.Pb(),17),Be(Fe(B(n,(ye(),Ul))))||++r;return r}function IAt(e,t){var n,i,r;i=Nm(t),r=ge(Te(iw(i,(Oe(),za)))),n=g.Math.max(0,r/2-.5),a6(t,n,1),Ee(e,new _Oe(t,n))}function Ku(){Ku=Z,aj=new aC(qh,0),_P=new aC("FIRST",1),K1=new aC(NQe,2),EP=new aC("LAST",3),xw=new aC(FQe,4)}function Lh(){Lh=Z,nY=new A9(R6,0),Rj=new A9("POLYLINE",1),D4=new A9("ORTHOGONAL",2),o3=new A9("SPLINES",3)}function c7(){c7=Z,q0e=new IF("ASPECT_RATIO_DRIVEN",0),TW=new IF("MAX_SCALE_DRIVEN",1),K0e=new IF("AREA_DRIVEN",2)}function TI(){TI=Z,lx=new TF("P1_STRUCTURE",0),fx=new TF("P2_PROCESSING_ORDER",1),hx=new TF("P3_EXECUTION",2)}function s7(){s7=Z,EW=new PF("OVERLAP_REMOVAL",0),yW=new PF("COMPACTION",1),_W=new PF("GRAPH_SIZE_CALCULATION",2)}function E0(e,t){return Il(),Na(A1),g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t))}function AHe(e,t){var n,i;for(n=Mn(e,0);n.b!=n.d.c;){if(i=WM(Te(Pn(n))),i==t)return;if(i>t){l$(n);break}}RC(n,t)}function Ze(e,t){var n,i,r,o,u;if(n=t.f,Xg(e.c.d,n,t),t.g!=null)for(r=t.g,o=0,u=r.length;ot&&i.ue(e[o-1],e[o])>0;--o)u=e[o],vi(e,o,e[o-1]),vi(e,o-1,u)}function qu(e,t,n,i){if(t<0)Ose(e,n,i);else{if(!n.Ij())throw V(new St(x1+n.ne()+W6));c(n,66).Nj().Tj(e,e.yh(),t,i)}}function u7(e,t){if(t==e.d)return e.e;if(t==e.e)return e.d;throw V(new St("Node "+t+" not part of edge "+e))}function jAt(e,t){switch(t.g){case 2:return e.b;case 1:return e.c;case 4:return e.d;case 3:return e.a;default:return!1}}function OHe(e,t){switch(t.g){case 2:return e.b;case 1:return e.c;case 4:return e.d;case 3:return e.a;default:return!1}}function doe(e,t,n,i){switch(t){case 3:return e.f;case 4:return e.g;case 5:return e.i;case 6:return e.j}return ioe(e,t,n,i)}function AAt(e){return e.k!=(Dt(),Ui)?!1:D_(new ht(null,new t0(new Kt(Ht(Vi(e).a.Kc(),new j)))),new v4e)}function OAt(e){return e.e==null?e:(!e.c&&(e.c=new Hq((e.f&256)!=0,e.i,e.a,e.d,(e.f&16)!=0,e.j,e.g,null)),e.c)}function DAt(e,t){return e.h==bT&&e.m==0&&e.l==0?(t&&(L1=Bc(0,0,0)),D7e((F_(),she))):(t&&(L1=Bc(e.l,e.m,e.h)),Bc(0,0,0))}function Ro(e){var t;return Array.isArray(e)&&e.im===ct?r1(Fs(e))+"@"+(t=fi(e)>>>0,t.toString(16)):e.toString()}function n6(e){var t;this.a=(t=c(e.e&&e.e(),9),new ku(t,c(Da(t,t.length),9),0)),this.b=oe(xt,xe,1,this.a.a.length,5,1)}function kAt(e){var t,n,i;for(this.a=new Eh,i=new q(e);i.a0&&(fn(t-1,e.length),e.charCodeAt(t-1)==58)&&!OK(e,oM,cM))}function OK(e,t,n){var i,r;for(i=0,r=e.length;i=r)return t.c+n;return t.c+t.b.gc()}function FAt(e,t){p_();var n,i,r,o;for(i=VBe(e),r=t,L_(i,0,i.length,r),n=0;n0&&(i+=r,++n);return n>1&&(i+=e.d*(n-1)),i}function boe(e){var t,n,i;for(i=new nd,i.a+="[",t=0,n=e.gc();t0&&this.b>0&&Xte(this.c,this.b,this.a)}function moe(e){kK(),this.c=kl(U(G(Rzt,1),xe,831,0,[bst])),this.b=new en,this.a=e,Kn(this.b,HR,1),Zc(pst,new yje(this))}function DHe(e,t){var n;return e.d?tu(e.b,t)?c(Bt(e.b,t),51):(n=t.Kf(),Kn(e.b,t,n),n):t.Kf()}function voe(e,t){var n;return le(e)===le(t)?!0:Q(t,91)?(n=c(t,91),e.e==n.e&&e.d==n.d&&PMt(e,n.a)):!1}function b2(e){switch(Ie(),e.g){case 4:return _t;case 1:return jt;case 3:return Yt;case 2:return Mt;default:return Vo}}function yoe(e,t){switch(t){case 3:return e.f!=0;case 4:return e.g!=0;case 5:return e.i!=0;case 6:return e.j!=0}return vre(e,t)}function zAt(e){switch(e.g){case 0:return new d5e;case 1:return new g5e;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function kHe(e){switch(e.g){case 0:return new h5e;case 1:return new b5e;default:throw V(new St(Mz+(e.f!=null?e.f:""+e.g)))}}function RHe(e){switch(e.g){case 0:return new QQ;case 1:return new VAe;default:throw V(new St(JD+(e.f!=null?e.f:""+e.g)))}}function VAt(e){switch(e.g){case 1:return new c5e;case 2:return new JDe;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function GAt(e){var t,n;if(e.b)return e.b;for(n=Vl?null:e.d;n;){if(t=Vl?null:n.b,t)return t;n=Vl?null:n.d}return a_(),Nhe}function UAt(e){var t,n,i;return e.e==0?0:(t=e.d<<5,n=e.a[e.d-1],e.e<0&&(i=zKe(e),i==e.d-1&&(--n,n=n|0)),t-=WI(n),t)}function WAt(e){var t,n,i;return e>5,t=e&31,i=oe(Qt,_n,25,n+1,15,1),i[n]=1<3;)r*=10,--o;e=(e+(r>>1))/r|0}return i.i=e,!0}function XAt(e){return vK(),Pt(),!!(OHe(c(e.a,81).j,c(e.b,103))||c(e.a,81).d.e!=0&&OHe(c(e.a,81).j,c(e.b,103)))}function JAt(e){bO(),c(e.We((kn(),G1)),174).Hc((Ks(),jx))&&(c(e.We(Uw),174).Fc((js(),c3)),c(e.We(G1),174).Mc(jx))}function LHe(e,t){var n,i;if(t){for(n=0;n=0;--i)for(t=n[i],r=0;r>1,this.k=t-1>>1}function i9t(e,t){Wt(t,"End label post-processing",1),Di(si($o(new ht(null,new bt(e.b,16)),new N3e),new F3e),new B3e),qt(t)}function r9t(e,t,n){var i,r;return i=ge(e.p[t.i.p])+ge(e.d[t.i.p])+t.n.b+t.a.b,r=ge(e.p[n.i.p])+ge(e.d[n.i.p])+n.n.b+n.a.b,r-i}function o9t(e,t,n){var i,r;for(i=Xi(n,no),r=0;uc(i,0)!=0&&r0&&(fn(0,t.length),t.charCodeAt(0)==43)?t.substr(1):t))}function s9t(e){var t;return e==null?null:new l1((t=Ec(e,!0),t.length>0&&(fn(0,t.length),t.charCodeAt(0)==43)?t.substr(1):t))}function Ioe(e,t){var n;return e.i>0&&(t.lengthe.i&&vi(t,e.i,null),t}function Rc(e,t,n){var i,r,o;return e.ej()?(i=e.i,o=e.fj(),MI(e,i,t),r=e.Zi(3,null,t,i,o),n?n.Ei(r):n=r):MI(e,e.i,t),n}function u9t(e,t,n){var i,r;return i=new Ah(e.e,4,10,(r=t.c,Q(r,88)?c(r,26):(ot(),Ea)),null,wd(e,t),!1),n?n.Ei(i):n=i,n}function a9t(e,t,n){var i,r;return i=new Ah(e.e,3,10,null,(r=t.c,Q(r,88)?c(r,26):(ot(),Ea)),wd(e,t),!1),n?n.Ei(i):n=i,n}function BHe(e){Lp();var t;return t=new go(c(e.e.We((kn(),Vv)),8)),e.B.Hc((Ks(),R4))&&(t.a<=0&&(t.a=20),t.b<=0&&(t.b=20)),t}function $He(e){rw();var t;return(e.q?e.q:(st(),st(),th))._b((Oe(),Z0))?t=c(B(e,Z0),197):t=c(B(Nr(e),CP),197),t}function iw(e,t){var n,i;return i=null,nr(e,(Oe(),KR))&&(n=c(B(e,KR),94),n.Xe(t)&&(i=n.We(t))),i==null&&(i=B(Nr(e),t)),i}function KHe(e,t){var n,i,r;return Q(t,42)?(n=c(t,42),i=n.cd(),r=tw(e.Rc(),i),df(r,n.dd())&&(r!=null||e.Rc()._b(i))):!1}function xK(e,t){var n,i,r;return e.f>0?(e.qj(),i=t==null?0:fi(t),r=(i&Fn)%e.d.length,n=KUe(e,r,i,t),n!=-1):!1}function ll(e,t){var n,i,r;return e.f>0&&(e.qj(),i=t==null?0:fi(t),r=(i&Fn)%e.d.length,n=fse(e,r,i,t),n)?n.dd():null}function jI(e,t){var n,i,r,o;for(o=qc(e.e.Tg(),t),n=c(e.g,119),r=0;r1?Dl(Ph(t.a[1],32),Xi(t.a[0],no)):Xi(t.a[0],no),l0(jr(t.e,n))))}function AI(e,t){var n;return Oo(e)&&Oo(t)&&(n=e%t,pT>5,t&=31,r=e.d+n+(t==0?0:1),i=oe(Qt,_n,25,r,15,1),lDt(i,e.a,n,t),o=new km(e.e,r,i),R5(o),o}function joe(e,t,n){var i,r;i=c(mc(N4,t),117),r=c(mc(hM,t),117),n?(bo(N4,e,i),bo(hM,e,r)):(bo(hM,e,i),bo(N4,e,r))}function WHe(e,t,n){var i,r,o;for(r=null,o=e.b;o;){if(i=e.a.ue(t,o.d),n&&i==0)return o;i>=0?o=o.a[1]:(r=o,o=o.a[0])}return r}function YHe(e,t,n){var i,r,o;for(r=null,o=e.b;o;){if(i=e.a.ue(t,o.d),n&&i==0)return o;i<=0?o=o.a[0]:(r=o,o=o.a[1])}return r}function g9t(e,t,n,i){var r,o,u;return r=!1,YKt(e.f,n,i)&&(B9t(e.f,e.a[t][n],e.a[t][i]),o=e.a[t],u=o[i],o[i]=o[n],o[n]=u,r=!0),r}function Aoe(e,t,n,i,r){var o,u,a;for(u=r;t.b!=t.c;)o=c(Qy(t),10),a=c(qo(o,i).Xb(0),11),e.d[a.p]=u++,n.c[n.c.length]=a;return u}function Ooe(e,t,n){var i,r,o,u,a;return u=e.k,a=t.k,i=n[u.g][a.g],r=Te(iw(e,i)),o=Te(iw(t,i)),g.Math.max((yt(r),r),(yt(o),o))}function b9t(e,t,n){var i,r,o,u;for(i=n/e.c.length,r=0,u=new q(e);u.a2e3&&(Wtt=e,Pk=g.setTimeout(Eyt,10))),Sk++==0?(XCt((iZ(),rhe)),!0):!1}function w9t(e,t){var n,i,r;for(i=new Kt(Ht(Vi(e).a.Kc(),new j));dn(i);)if(n=c(rn(i),17),r=n.d.i,r.c==t)return!1;return!0}function Doe(e,t){var n,i;if(Q(t,245)){i=c(t,245);try{return n=e.vd(i),n==0}catch(r){if(r=gi(r),!Q(r,205))throw V(r)}}return!1}function m9t(){return Error.stackTraceLimit>0?(g.Error.stackTraceLimit=Error.stackTraceLimit=64,!0):"stack"in new Error}function v9t(e,t){return Il(),Il(),Na(A1),(g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t)))>0}function koe(e,t){return Il(),Il(),Na(A1),(g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t)))<0}function QHe(e,t){return Il(),Il(),Na(A1),(g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t)))<=0}function NK(e,t){for(var n=0;!t[n]||t[n]=="";)n++;for(var i=t[n++];nYH)return n.fh();if(i=n.Zg(),i||n==e)break}return i}function Roe(e){return X8(),Q(e,156)?c(Bt(Gj,cnt),288).vg(e):tu(Gj,Fs(e))?c(Bt(Gj,Fs(e)),288).vg(e):null}function _9t(e){if(b7(GE,e))return Pt(),ZE;if(b7(_V,e))return Pt(),hb;throw V(new St("Expecting true or false"))}function E9t(e,t){if(t.c==e)return t.d;if(t.d==e)return t.c;throw V(new St("Input edge is not connected to the input port."))}function rze(e,t){return e.e>t.e?1:e.et.d?e.e:e.d=48&&e<48+g.Math.min(10,10)?e-48:e>=97&&e<97?e-97+10:e>=65&&e<65?e-65+10:-1}function cze(e,t){var n;return le(t)===le(e)?!0:!Q(t,21)||(n=c(t,21),n.gc()!=e.gc())?!1:e.Ic(n)}function S9t(e,t){var n,i,r,o;return i=e.a.length-1,n=t-e.b&i,o=e.c-t&i,r=e.c-e.b&i,LDe(n=o?(Ejt(e,t),-1):(Sjt(e,t),1)}function P9t(e,t){var n,i;for(n=(fn(t,e.length),e.charCodeAt(t)),i=t+1;it.e?1:e.ft.f?1:fi(e)-fi(t)}function b7(e,t){return yt(e),t==null?!1:rt(e,t)?!0:e.length==t.length&&rt(e.toLowerCase(),t.toLowerCase())}function k9t(e,t){var n,i,r,o;for(i=0,r=t.gc();i0&&uc(e,128)<0?(t=tn(e)+128,n=(MRe(),ghe)[t],!n&&(n=ghe[t]=new uQ(e)),n):new uQ(e)}function uze(e,t){var n,i;return n=t.Hh(e.a),n&&(i=ln(ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),Dn)),i!=null)?i:t.ne()}function R9t(e,t){var n,i;return n=t.Hh(e.a),n&&(i=ln(ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),Dn)),i!=null)?i:t.ne()}function x9t(e,t){i$();var n,i;for(i=new Kt(Ht(xh(e).a.Kc(),new j));dn(i);)if(n=c(rn(i),17),n.d.i==t||n.c.i==t)return n;return null}function Noe(e,t,n){this.c=e,this.f=new Se,this.e=new Tr,this.j=new Gte,this.n=new Gte,this.b=t,this.g=new Ru(t.c,t.d,t.b,t.a),this.a=n}function FK(e){var t,n,i,r;for(this.a=new Eh,this.d=new er,this.e=0,n=e,i=0,r=n.length;i0):!1}function fze(e){var t;le(Ke(e,(kn(),qv)))===le((Rh(),Mx))&&(yi(e)?(t=c(Ke(yi(e),qv),334),ao(e,qv,t)):ao(e,qv,XP))}function B9t(e,t,n){var i,r;vq(e.e,t,n,(Ie(),Mt)),vq(e.i,t,n,jt),e.a&&(r=c(B(t,(ye(),Hn)),11),i=c(B(n,Hn),11),a$(e.g,r,i))}function hze(e,t,n){var i,r,o;i=t.c.p,o=t.p,e.b[i][o]=new jLe(e,t),n&&(e.a[i][o]=new LTe(t),r=c(B(t,(ye(),X0)),10),r&&it(e.d,r,t))}function dze(e,t){var n,i,r;if(Ee(Fk,e),t.Fc(e),n=c(Bt(AG,e),21),n)for(r=n.Kc();r.Ob();)i=c(r.Pb(),33),Do(Fk,i,0)!=-1||dze(i,t)}function $9t(e,t,n){var i;(dnt?(GAt(e),!0):gnt||pnt?(a_(),!0):bnt&&(a_(),!1))&&(i=new Kke(t),i.b=n,HDt(e,i))}function BK(e,t){var n;n=!e.A.Hc((ou(),Cb))||e.q==(wr(),Ic),e.u.Hc((js(),Wh))?n?uHt(e,t):HXe(e,t):e.u.Hc(X1)&&(n?Iqt(e,t):iJe(e,t))}function hE(e,t){var n,i;if(++e.j,t!=null&&(n=(i=e.a.Cb,Q(i,97)?c(i,97).Jg():null),xRt(t,n))){p2(e.a,4,n);return}p2(e.a,4,c(t,126))}function gze(e,t,n){return new Ru(g.Math.min(e.a,t.a)-n/2,g.Math.min(e.b,t.b)-n/2,g.Math.abs(e.a-t.a)+n,g.Math.abs(e.b-t.b)+n)}function K9t(e,t){var n,i;return n=Uc(e.a.c.p,t.a.c.p),n!=0?n:(i=Uc(e.a.d.i.p,t.a.d.i.p),i!=0?i:Uc(t.a.d.p,e.a.d.p))}function q9t(e,t,n){var i,r,o,u;return o=t.j,u=n.j,o!=u?o.g-u.g:(i=e.f[t.p],r=e.f[n.p],i==0&&r==0?0:i==0?-1:r==0?1:zi(i,r))}function bze(e,t,n){var i,r,o;if(!n[t.d])for(n[t.d]=!0,r=new q(Gm(t));r.a=r)return r;for(t=t>0?t:0;ti&&vi(t,i,null),t}function wze(e,t){var n,i;for(i=e.a.length,t.lengthi&&vi(t,i,null),t}function Xg(e,t,n){var i,r,o;return r=c(Bt(e.e,t),387),r?(o=ste(r,n),uDe(e,r),o):(i=new Rte(e,t,n),Kn(e.e,t,i),RLe(i),null)}function V9t(e){var t;if(e==null)return null;if(t=Bxt(Ec(e,!0)),t==null)throw V(new UN("Invalid hexBinary value: '"+e+"'"));return t}function DI(e){return T1(),uc(e,0)<0?uc(e,-1)!=0?new Ece(-1,N_(e)):gG:uc(e,10)<=0?Che[tn(e)]:new Ece(1,e)}function KK(){return fD(),U(G(eit,1),_e,159,0,[Qnt,Jnt,Znt,Hnt,qnt,znt,Unt,Gnt,Vnt,Xnt,Ynt,Wnt,$nt,Bnt,Knt,Nnt,Lnt,Fnt,Rnt,knt,xnt,SG])}function mze(e){var t;this.d=new Se,this.j=new Tr,this.g=new Tr,t=e.g.b,this.f=c(B(Nr(t),(Oe(),Pu)),103),this.e=ge(Te(m7(t,Hw)))}function vze(e){this.b=new Se,this.e=new Se,this.d=e,this.a=!$S(si(new ht(null,new t0(new Rl(e.b))),new IS(new y4e))).sd((Ig(),i4))}function fl(){fl=Z,Tt=new hC("PARENTS",0),ar=new hC("NODES",1),kf=new hC("EDGES",2),_b=new hC("PORTS",3),Od=new hC("LABELS",4)}function Um(){Um=Z,W1=new gC("DISTRIBUTED",0),Nj=new gC("JUSTIFIED",1),kwe=new gC("BEGIN",2),JP=new gC(FE,3),Rwe=new gC("END",4)}function G9t(e){var t;switch(t=e.yi(null),t){case 10:return 0;case 15:return 1;case 14:return 2;case 11:return 3;case 21:return 4}return-1}function qK(e){switch(e.g){case 1:return eo(),Gh;case 4:return eo(),ga;case 2:return eo(),Va;case 3:return eo(),Vh}return eo(),ih}function U9t(e,t,n){var i;switch(i=n.q.getFullYear()-O1+O1,i<0&&(i=-i),t){case 1:e.a+=i;break;case 2:Vf(e,i%100,2);break;default:Vf(e,i,t)}}function Mn(e,t){var n,i;if(Vp(t,e.b),t>=e.b>>1)for(i=e.c,n=e.b;n>t;--n)i=i.b;else for(i=e.a.a,n=0;n=64&&t<128&&(r=Dl(r,Ph(1,t-64)));return r}function m7(e,t){var n,i;return i=null,nr(e,(kn(),r3))&&(n=c(B(e,r3),94),n.Xe(t)&&(i=n.We(t))),i==null&&Nr(e)&&(i=B(Nr(e),t)),i}function Eze(e,t){var n,i,r;r=t.d.i,i=r.k,!(i==(Dt(),Ui)||i==Gl)&&(n=new Kt(Ht(Vi(r).a.Kc(),new j)),dn(n)&&Kn(e.k,t,c(rn(n),17)))}function HK(e,t){var n,i,r;return i=at(e.Tg(),t),n=t-e.Ah(),n<0?(r=e.Yg(i),r>=0?e.lh(r):jq(e,i)):n<0?jq(e,i):c(i,66).Nj().Sj(e,e.yh(),n)}function Le(e){var t;if(Q(e.a,4)){if(t=Roe(e.a),t==null)throw V(new Ao(vZe+e.b+"'. "+mZe+(Sh(Uj),Uj.k)+gfe));return t}else return e.a}function X9t(e){var t;if(e==null)return null;if(t=pHt(Ec(e,!0)),t==null)throw V(new UN("Invalid base64Binary value: '"+e+"'"));return t}function Vt(e){var t;try{return t=e.i.Xb(e.e),e.mj(),e.g=e.e++,t}catch(n){throw n=gi(n),Q(n,73)?(e.mj(),V(new tc)):V(n)}}function zK(e){var t;try{return t=e.c.ki(e.e),e.mj(),e.g=e.e++,t}catch(n){throw n=gi(n),Q(n,73)?(e.mj(),V(new tc)):V(n)}}function o6(){o6=Z,pde=(kn(),hwe),TG=zpe,dit=n3,bde=Sb,wit=(A7(),Whe),pit=Ghe,mit=Xhe,bit=Vhe,git=(bK(),hde),IG=lit,gde=fit,Nk=hit}function v7(e){switch(SZ(),this.c=new Se,this.d=e,e.g){case 0:case 2:this.a=One(Rde),this.b=Ii;break;case 3:case 1:this.a=Rde,this.b=$i}}function Sze(e,t,n){var i,r;if(e.c)es(e.c,e.c.i+t),ts(e.c,e.c.j+n);else for(r=new q(e.b);r.a0&&(Ee(e.b,new iRe(t.a,n)),i=t.a.length,0i&&(t.a+=sDe(oe(Yu,vf,25,-i,15,1))))}function Pze(e,t){var n,i,r;for(n=e.o,r=c(c(Vn(e.r,t),21),84).Kc();r.Ob();)i=c(r.Pb(),111),i.e.a=Z8t(i,n.a),i.e.b=n.b*ge(Te(i.b.We(Rk)))}function Q9t(e,t){var n,i,r,o;return r=e.k,n=ge(Te(B(e,(ye(),J0)))),o=t.k,i=ge(Te(B(t,J0))),o!=(Dt(),Bi)?-1:r!=Bi?1:n==i?0:n=0?e.hh(t,n,i):(e.eh()&&(i=(r=e.Vg(),r>=0?e.Qg(i):e.eh().ih(e,-1-r,null,i))),e.Sg(t,n,i))}function Boe(e,t){switch(t){case 7:!e.e&&(e.e=new dt(rr,e,7,4)),Xt(e.e);return;case 8:!e.d&&(e.d=new dt(rr,e,8,5)),Xt(e.d);return}Moe(e,t)}function hl(e,t){var n;n=e.Zc(t);try{return n.Pb()}catch(i){throw i=gi(i),Q(i,109)?V(new ho("Can't get element "+t)):V(i)}}function $oe(e,t){this.e=e,t=0&&(n.d=e.t);break;case 3:e.t>=0&&(n.a=e.t)}e.C&&(n.b=e.C.b,n.c=e.C.c)}function m2(){m2=Z,GT=new E9(yD,0),VT=new E9(az,1),UT=new E9(lz,2),WT=new E9(fz,3),GT.a=!1,VT.a=!0,UT.a=!1,WT.a=!0}function c6(){c6=Z,YT=new _9(yD,0),xk=new _9(az,1),Lk=new _9(lz,2),XT=new _9(fz,3),YT.a=!1,xk.a=!0,Lk.a=!1,XT.a=!0}function i8t(e){var t;t=e.a;do t=c(rn(new Kt(Ht(ko(t).a.Kc(),new j))),17).c.i,t.k==(Dt(),ur)&&e.b.Fc(t);while(t.k==(Dt(),ur));e.b=Kg(e.b)}function r8t(e){var t,n,i;for(i=e.c.a,e.p=(nn(i),new ps(i)),n=new q(i);n.an.b)return!0}return!1}function VK(e,t){return fr(e)?!!Ktt[t]:e.hm?!!e.hm[t]:kp(e)?!!$tt[t]:Dp(e)?!!Btt[t]:!1}function ao(e,t,n){return n==null?(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),d7(e.o,t)):(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),O7(e.o,t,n)),e}function u8t(e,t,n,i){var r,o;o=t.Xe((kn(),zv))?c(t.We(zv),21):e.j,r=Jjt(o),r!=(fD(),SG)&&(n&&!xoe(r)||Vce($xt(e,r,i),t))}function _7(e,t,n,i){var r,o,u;return o=at(e.Tg(),t),r=t-e.Ah(),r<0?(u=e.Yg(o),u>=0?e._g(u,n,!0):j0(e,o,n)):c(o,66).Nj().Pj(e,e.yh(),r,n,i)}function a8t(e,t,n,i){var r,o,u;n.mh(t)&&(Wr(),N$(t)?(r=c(n.ah(t),153),k9t(e,r)):(o=(u=t,u?c(i,49).xh(u):null),o&&fvt(n.ah(t),o)))}function l8t(e){switch(e.g){case 1:return v0(),zT;case 3:return v0(),HT;case 2:return v0(),MG;case 4:return v0(),PG;default:return null}}function Koe(e){switch(typeof e){case _H:return md(e);case Nue:return xi(e);case M2:return Pt(),e?1231:1237;default:return e==null?0:Xb(e)}}function f8t(e,t,n){if(e.e)switch(e.b){case 1:$5t(e.c,t,n);break;case 0:K5t(e.c,t,n)}else hFe(e.c,t,n);e.a[t.p][n.p]=e.c.i,e.a[n.p][t.p]=e.c.e}function jze(e){var t,n;if(e==null)return null;for(n=oe(nh,we,193,e.length,0,2),t=0;t=0)return r;if(e.Fk()){for(i=0;i=r)throw V(new Fp(t,r));if(e.hi()&&(i=e.Xc(n),i>=0&&i!=t))throw V(new St(RT));return e.mi(t,n)}function qoe(e,t){if(this.a=c(nn(e),245),this.b=c(nn(t),245),e.vd(t)>0||e==(KN(),iG)||t==($N(),rG))throw V(new St("Invalid range: "+uFe(e,t)))}function Aze(e){var t,n;for(this.b=new Se,this.c=e,this.a=!1,n=new q(e.a);n.a0),(t&-t)==t)return xi(t*$s(e,31)*4656612873077393e-25);do n=$s(e,31),i=n%t;while(n-i+(t-1)<0);return xi(i)}function md(e){qke();var t,n,i;return n=":"+e,i=Ok[n],i!=null?xi((yt(i),i)):(i=Bhe[n],t=i==null?iNt(e):xi((yt(i),i)),D5t(),Ok[n]=t,t)}function Dze(e,t,n){Wt(n,"Compound graph preprocessor",1),e.a=new u0,FXe(e,t,null),z$t(e,t),CLt(e),pe(t,(ye(),rge),e.a),e.a=null,Is(e.b),qt(n)}function g8t(e,t,n){switch(n.g){case 1:e.a=t.a/2,e.b=0;break;case 2:e.a=t.a,e.b=t.b/2;break;case 3:e.a=t.a/2,e.b=t.b;break;case 4:e.a=0,e.b=t.b/2}}function b8t(e){var t,n,i;for(i=c(Vn(e.a,(Zm(),dR)),15).Kc();i.Ob();)n=c(i.Pb(),101),t=tce(n),E_(e,n,t[0],(m0(),G0),0),E_(e,n,t[1],U0,1)}function p8t(e){var t,n,i;for(i=c(Vn(e.a,(Zm(),gR)),15).Kc();i.Ob();)n=c(i.Pb(),101),t=tce(n),E_(e,n,t[0],(m0(),G0),0),E_(e,n,t[1],U0,1)}function GK(e){switch(e.g){case 0:return null;case 1:return new DKe;case 2:return new ZQ;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function kI(e,t,n){var i,r;for(FTt(e,t-e.s,n-e.t),r=new q(e.n);r.a1&&(o=d8t(e,t)),o}function UK(e){var t;return e.f&&e.f.kh()&&(t=c(e.f,49),e.f=c(S1(e,t),82),e.f!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,8,t,e.f))),e.f}function WK(e){var t;return e.i&&e.i.kh()&&(t=c(e.i,49),e.i=c(S1(e,t),82),e.i!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,7,t,e.i))),e.i}function Xr(e){var t;return e.b&&(e.b.Db&64)!=0&&(t=e.b,e.b=c(S1(e,t),18),e.b!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,21,t,e.b))),e.b}function P7(e,t){var n,i,r;e.d==null?(++e.e,++e.f):(i=t.Sh(),kLt(e,e.f+1),r=(i&Fn)%e.d.length,n=e.d[r],!n&&(n=e.d[r]=e.uj()),n.Fc(t),++e.f)}function Voe(e,t,n){var i;return t.Kj()?!1:t.Zj()!=-2?(i=t.zj(),i==null?n==null:$n(i,n)):t.Hj()==e.e.Tg()&&n==null}function M7(){var e;pu(16,TJe),e=SKe(16),this.b=oe(cG,dT,317,e,0,1),this.c=oe(cG,dT,317,e,0,1),this.a=null,this.e=null,this.i=0,this.f=e-1,this.g=0}function Nh(e){ate.call(this),this.k=(Dt(),Ui),this.j=(pu(6,mw),new Dc(6)),this.b=(pu(2,mw),new Dc(2)),this.d=new xN,this.f=new zQ,this.a=e}function m8t(e){var t,n;e.c.length<=1||(t=AWe(e,(Ie(),Yt)),mGe(e,c(t.a,19).a,c(t.b,19).a),n=AWe(e,Mt),mGe(e,c(n.a,19).a,c(n.b,19).a))}function s6(){s6=Z,Lbe=new uC("SIMPLE",0),QU=new uC(Iz,1),ZU=new uC("LINEAR_SEGMENTS",2),jP=new uC("BRANDES_KOEPF",3),AP=new uC(eZe,4)}function Goe(e,t,n){Wy(c(B(t,(Oe(),ji)),98))||($ie(e,t,vd(t,n)),$ie(e,t,vd(t,(Ie(),Yt))),$ie(e,t,vd(t,_t)),st(),cr(t.j,new RTe(e)))}function kze(e,t,n,i){var r,o,u;for(r=c(Vn(i?e.a:e.b,t),21),u=r.Kc();u.Ob();)if(o=c(u.Pb(),33),Y7(e,n,o))return!0;return!1}function YK(e){var t,n;for(n=new $t(e);n.e!=n.i.gc();)if(t=c(Vt(n),87),t.e||(!t.d&&(t.d=new qi(oo,t,1)),t.d).i!=0)return!0;return!1}function XK(e){var t,n;for(n=new $t(e);n.e!=n.i.gc();)if(t=c(Vt(n),87),t.e||(!t.d&&(t.d=new qi(oo,t,1)),t.d).i!=0)return!0;return!1}function v8t(e){var t,n,i;for(t=0,i=new q(e.c.a);i.a102?-1:e<=57?e-48:e<65?-1:e<=70?e-65+10:e<97?-1:e-97+10}function ZK(e,t){if(e==null)throw V(new Ly("null key in entry: null="+t));if(t==null)throw V(new Ly("null value in entry: "+e+"=null"))}function y8t(e,t){for(var n,i;e.Ob();)if(!t.Ob()||(n=e.Pb(),i=t.Pb(),!(le(n)===le(i)||n!=null&&$n(n,i))))return!1;return!t.Ob()}function xze(e,t){var n;return n=U(G(gr,1),lo,25,15,[mK(e.a[0],t),mK(e.a[1],t),mK(e.a[2],t)]),e.d&&(n[0]=g.Math.max(n[0],n[2]),n[2]=n[0]),n}function Lze(e,t){var n;return n=U(G(gr,1),lo,25,15,[e7(e.a[0],t),e7(e.a[1],t),e7(e.a[2],t)]),e.d&&(n[0]=g.Math.max(n[0],n[2]),n[2]=n[0]),n}function Qg(){Qg=Z,sU=new sC("GREEDY",0),x1e=new sC($Qe,1),uU=new sC(Iz,2),pP=new sC("MODEL_ORDER",3),bP=new sC("GREEDY_MODEL_ORDER",4)}function Nze(e,t){var n,i,r;for(e.b[t.g]=1,i=Mn(t.d,0);i.b!=i.d.c;)n=c(Pn(i),188),r=n.c,e.b[r.g]==1?Cn(e.a,n):e.b[r.g]==2?e.b[r.g]=1:Nze(e,r)}function _8t(e,t){var n,i,r;for(r=new Dc(t.gc()),i=t.Kc();i.Ob();)n=c(i.Pb(),286),n.c==n.f?vE(e,n,n.c):vkt(e,n)||(r.c[r.c.length]=n);return r}function E8t(e,t,n){var i,r,o,u,a;for(a=e.r+t,e.r+=t,e.d+=n,i=n/e.n.c.length,r=0,u=new q(e.n);u.ao&&vi(t,o,null),t}function L8t(e,t){var n,i;if(i=e.gc(),t==null){for(n=0;n0&&(l+=r),d[p]=u,u+=a*(l+i)}function Vze(e){var t,n,i;for(i=e.f,e.n=oe(gr,lo,25,i,15,1),e.d=oe(gr,lo,25,i,15,1),t=0;t0?e.c:0),++r;e.b=i,e.d=o}function H8t(e,t){var n,i,r,o,u;for(i=0,r=0,n=0,u=new q(t);u.a0?e.g:0),++n;e.c=r,e.d=i}function Xze(e,t){var n;return n=U(G(gr,1),lo,25,15,[zoe(e,(al(),Jo),t),zoe(e,Nc,t),zoe(e,Qo,t)]),e.f&&(n[0]=g.Math.max(n[0],n[2]),n[2]=n[0]),n}function z8t(e,t,n){var i;try{Q7(e,t+e.j,n+e.k,!1,!0)}catch(r){throw r=gi(r),Q(r,73)?(i=r,V(new ho(i.g+ED+t+zr+n+")."))):V(r)}}function V8t(e,t,n){var i;try{Q7(e,t+e.j,n+e.k,!0,!1)}catch(r){throw r=gi(r),Q(r,73)?(i=r,V(new ho(i.g+ED+t+zr+n+")."))):V(r)}}function Jze(e){var t;nr(e,(Oe(),Q0))&&(t=c(B(e,Q0),21),t.Hc((fw(),Ga))?(t.Mc(Ga),t.Fc(Ua)):t.Hc(Ua)&&(t.Mc(Ua),t.Fc(Ga)))}function Qze(e){var t;nr(e,(Oe(),Q0))&&(t=c(B(e,Q0),21),t.Hc((fw(),Ya))?(t.Mc(Ya),t.Fc(pa)):t.Hc(pa)&&(t.Mc(pa),t.Fc(Ya)))}function G8t(e,t,n){Wt(n,"Self-Loop ordering",1),Di(Yc(si(si($o(new ht(null,new bt(t.b,16)),new cEe),new sEe),new uEe),new aEe),new uTe(e)),qt(n)}function xI(e,t,n,i){var r,o;for(r=t;r0&&(r.b+=t),r}function T7(e,t){var n,i,r;for(r=new Tr,i=e.Kc();i.Ob();)n=c(i.Pb(),37),v6(n,0,r.b),r.b+=n.f.b+t,r.a=g.Math.max(r.a,n.f.a);return r.a>0&&(r.a+=t),r}function eVe(e){var t,n,i;for(i=Fn,n=new q(e.a);n.a>16==6?e.Cb.ih(e,5,ml,t):(i=Xr(c(at((n=c(vt(e,16),26),n||e.zh()),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function J8t(e){T_();var t=e.e;if(t&&t.stack){var n=t.stack,i=t+` +`;return n.substring(0,i.length)==i&&(n=n.substring(i.length)),n.split(` +`)}return[]}function Q8t(e){var t;return t=(wKe(),Ztt),t[e>>>28]|t[e>>24&15]<<4|t[e>>20&15]<<8|t[e>>16&15]<<12|t[e>>12&15]<<16|t[e>>8&15]<<20|t[e>>4&15]<<24|t[e&15]<<28}function iVe(e){var t,n,i;e.b==e.c&&(i=e.a.length,n=Dre(g.Math.max(8,i))<<1,e.b!=0?(t=Da(e.a,n),MKe(e,t,i),e.a=t,e.b=0):PAe(e.a,n),e.c=i)}function Z8t(e,t){var n;return n=e.b,n.Xe((kn(),zs))?n.Hf()==(Ie(),Mt)?-n.rf().a-ge(Te(n.We(zs))):t+ge(Te(n.We(zs))):n.Hf()==(Ie(),Mt)?-n.rf().a:t}function LI(e){var t;return e.b.c.length!=0&&c(Ne(e.b,0),70).a?c(Ne(e.b,0),70).a:(t=VB(e),t??""+(e.c?Do(e.c.a,e,0):-1))}function j7(e){var t;return e.f.c.length!=0&&c(Ne(e.f,0),70).a?c(Ne(e.f,0),70).a:(t=VB(e),t??""+(e.i?Do(e.i.j,e,0):-1))}function eOt(e,t){var n,i;if(t<0||t>=e.gc())return null;for(n=t;n0?e.c:0),r=g.Math.max(r,t.d),++i;e.e=o,e.b=r}function nOt(e){var t,n;if(!e.b)for(e.b=nO(c(e.f,118).Ag().i),n=new $t(c(e.f,118).Ag());n.e!=n.i.gc();)t=c(Vt(n),137),Ee(e.b,new GN(t));return e.b}function iOt(e,t){var n,i,r;if(t.dc())return p_(),p_(),Wj;for(n=new cke(e,t.gc()),r=new $t(e);r.e!=r.i.gc();)i=Vt(r),t.Hc(i)&&on(n,i);return n}function Zoe(e,t,n,i){return t==0?i?(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),e.o):(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),XC(e.o)):_7(e,t,n,i)}function sq(e){var t,n;if(e.rb)for(t=0,n=e.rb.i;t>22),r+=i>>22,r<0)?!1:(e.l=n&qs,e.m=i&qs,e.h=r&Kh,!0)}function sOt(e,t,n,i,r,o,u){var a,l;return!(t.Ae()&&(l=e.a.ue(n,i),l<0||l==0)||t.Be()&&(a=e.a.ue(n,o),a>0||a==0))}function uOt(e,t){iE();var n;if(n=e.j.g-t.j.g,n!=0)return 0;switch(e.j.g){case 2:return AK(t,I1e)-AK(e,I1e);case 4:return AK(e,C1e)-AK(t,C1e)}return 0}function aOt(e){switch(e.g){case 0:return lU;case 1:return fU;case 2:return hU;case 3:return dU;case 4:return wR;case 5:return gU;default:return null}}function vo(e,t,n){var i,r;return i=(r=new FN,Ug(r,t),kc(r,n),on((!e.c&&(e.c=new Me(cp,e,12,10)),e.c),r),r),hd(i,0),Zp(i,1),pd(i,!0),bd(i,!0),i}function v2(e,t){var n,i;if(t>=e.i)throw V(new kF(t,e.i));return++e.j,n=e.g[t],i=e.i-t-1,i>0&&bc(e.g,t+1,e.g,t,i),vi(e.g,--e.i,null),e.fi(t,n),e.ci(),n}function rVe(e,t){var n,i;return e.Db>>16==17?e.Cb.ih(e,21,va,t):(i=Xr(c(at((n=c(vt(e,16),26),n||e.zh()),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function lOt(e){var t,n,i,r;for(st(),cr(e.c,e.a),r=new q(e.c);r.an.a.c.length))throw V(new St("index must be >= 0 and <= layer node count"));e.c&&Jc(e.c.a,e),e.c=n,n&&Bp(n.a,t,e)}function aVe(e,t){var n,i,r;for(i=new Kt(Ht(xh(e).a.Kc(),new j));dn(i);)return n=c(rn(i),17),r=c(t.Kb(n),10),new LA(nn(r.n.b+r.o.b/2));return DS(),DS(),nG}function lVe(e,t){this.c=new en,this.a=e,this.b=t,this.d=c(B(e,(ye(),Rv)),304),le(B(e,(Oe(),hbe)))===le((eI(),mR))?this.e=new KAe:this.e=new $Ae}function pOt(e,t){var n,i,r,o;for(o=0,i=new q(e);i.a>16==6?e.Cb.ih(e,6,rr,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Ox)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function oce(e,t){var n,i;return e.Db>>16==7?e.Cb.ih(e,1,Hj,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Gwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function cce(e,t){var n,i;return e.Db>>16==9?e.Cb.ih(e,9,Ei,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Wwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function hVe(e,t){var n,i;return e.Db>>16==5?e.Cb.ih(e,9,$x,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),xd)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function sce(e,t){var n,i;return e.Db>>16==3?e.Cb.ih(e,0,Vj,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),Rd)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function dVe(e,t){var n,i;return e.Db>>16==7?e.Cb.ih(e,6,ml,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),Nd)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function gVe(){this.a=new y6e,this.g=new M7,this.j=new M7,this.b=new en,this.d=new M7,this.i=new M7,this.k=new en,this.c=new en,this.e=new en,this.f=new en}function yOt(e,t,n){var i,r,o;for(n<0&&(n=0),o=e.i,r=n;rYH)return gE(e,i);if(i==e)return!0}}return!1}function EOt(e){switch(X9(),e.q.g){case 5:QGe(e,(Ie(),_t)),QGe(e,Yt);break;case 4:UUe(e,(Ie(),_t)),UUe(e,Yt);break;default:UXe(e,(Ie(),_t)),UXe(e,Yt)}}function SOt(e){switch(X9(),e.q.g){case 5:dUe(e,(Ie(),jt)),dUe(e,Mt);break;case 4:Pze(e,(Ie(),jt)),Pze(e,Mt);break;default:WXe(e,(Ie(),jt)),WXe(e,Mt)}}function POt(e){var t,n;t=c(B(e,(dl(),Rit)),19),t?(n=t.a,n==0?pe(e,(v1(),qk),new jK):pe(e,(v1(),qk),new cO(n))):pe(e,(v1(),qk),new cO(1))}function MOt(e,t){var n;switch(n=e.i,t.g){case 1:return-(e.n.b+e.o.b);case 2:return e.n.a-n.o.a;case 3:return e.n.b-n.o.b;case 4:return-(e.n.a+e.o.a)}return 0}function COt(e,t){switch(e.g){case 0:return t==(Ku(),K1)?uR:aR;case 1:return t==(Ku(),K1)?uR:tj;case 2:return t==(Ku(),K1)?tj:aR;default:return tj}}function FI(e,t){var n,i,r;for(Jc(e.a,t),e.e-=t.r+(e.a.c.length==0?0:e.c),r=Ule,i=new q(e.a);i.a>16==3?e.Cb.ih(e,12,Ei,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Vwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function ace(e,t){var n,i;return e.Db>>16==11?e.Cb.ih(e,10,Ei,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Uwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function bVe(e,t){var n,i;return e.Db>>16==10?e.Cb.ih(e,11,va,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),Ld)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function pVe(e,t){var n,i;return e.Db>>16==10?e.Cb.ih(e,12,ya,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),em)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function ra(e){var t;return(e.Bb&1)==0&&e.r&&e.r.kh()&&(t=c(e.r,49),e.r=c(S1(e,t),138),e.r!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,8,t,e.r))),e.r}function aq(e,t,n){var i;return i=U(G(gr,1),lo,25,15,[Rce(e,(al(),Jo),t,n),Rce(e,Nc,t,n),Rce(e,Qo,t,n)]),e.f&&(i[0]=g.Math.max(i[0],i[2]),i[2]=i[0]),i}function IOt(e,t){var n,i,r;if(r=_8t(e,t),r.c.length!=0)for(cr(r,new D_e),n=r.c.length,i=0;i>19,d=t.h>>19,l!=d?d-l:(r=e.h,a=t.h,r!=a?r-a:(i=e.m,u=t.m,i!=u?i-u:(n=e.l,o=t.l,n-o)))}function A7(){A7=Z,Jhe=(X7(),_G),Xhe=new ut(Que,Jhe),Yhe=(EO(),yG),Whe=new ut(Zue,Yhe),Uhe=(p7(),vG),Ghe=new ut(eae,Uhe),Vhe=new ut(tae,(Pt(),!0))}function a6(e,t,n){var i,r;i=t*n,Q(e.g,145)?(r=o2(e),r.f.d?r.f.a||(e.d.a+=i+ql):(e.d.d-=i+ql,e.d.a+=i+ql)):Q(e.g,10)&&(e.d.d-=i,e.d.a+=2*i)}function wVe(e,t,n){var i,r,o,u,a;for(r=e[n.g],a=new q(t.d);a.a0?e.g:0),++n;t.b=i,t.e=r}function mVe(e){var t,n,i;if(i=e.b,$8e(e.i,i.length)){for(n=i.length*2,e.b=oe(cG,dT,317,n,0,1),e.c=oe(cG,dT,317,n,0,1),e.f=n-1,e.i=0,t=e.a;t;t=t.c)VI(e,t,t);++e.g}}function xOt(e,t,n,i){var r,o,u,a;for(r=0;ru&&(a=u/i),r>o&&(l=o/r),lf(e,g.Math.min(a,l)),e}function NOt(){nD();var e,t;try{if(t=c(yce((c1(),_a),WE),2014),t)return t}catch(n){if(n=gi(n),Q(n,102))e=n,sne((un(),e));else throw V(n)}return new p6e}function FOt(){a$e();var e,t;try{if(t=c(yce((c1(),_a),lb),2024),t)return t}catch(n){if(n=gi(n),Q(n,102))e=n,sne((un(),e));else throw V(n)}return new xPe}function BOt(){nD();var e,t;try{if(t=c(yce((c1(),_a),la),1941),t)return t}catch(n){if(n=gi(n),Q(n,102))e=n,sne((un(),e));else throw V(n)}return new q6e}function $Ot(e,t,n){var i,r;return r=e.e,e.e=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,4,r,t),n?n.Ei(i):n=i),r!=t&&(t?n=AE(e,H7(e,t),n):n=AE(e,e.a,n)),n}function vVe(){u9.call(this),this.e=-1,this.a=!1,this.p=Ar,this.k=-1,this.c=-1,this.b=-1,this.g=!1,this.f=-1,this.j=-1,this.n=-1,this.i=-1,this.d=-1,this.o=Ar}function KOt(e,t){var n,i,r;if(i=e.b.d.d,e.a||(i+=e.b.d.a),r=t.b.d.d,t.a||(r+=t.b.d.a),n=zi(i,r),n==0){if(!e.a&&t.a)return-1;if(!t.a&&e.a)return 1}return n}function qOt(e,t){var n,i,r;if(i=e.b.b.d,e.a||(i+=e.b.b.a),r=t.b.b.d,t.a||(r+=t.b.b.a),n=zi(i,r),n==0){if(!e.a&&t.a)return-1;if(!t.a&&e.a)return 1}return n}function HOt(e,t){var n,i,r;if(i=e.b.g.d,e.a||(i+=e.b.g.a),r=t.b.g.d,t.a||(r+=t.b.g.a),n=zi(i,r),n==0){if(!e.a&&t.a)return-1;if(!t.a&&e.a)return 1}return n}function fce(){fce=Z,Wit=Cs(Nn(Nn(Nn(new tr,(Hr(),Pc),(Jr(),h1e)),Pc,d1e),Io,g1e),Io,t1e),Xit=Nn(Nn(new tr,Pc,Wde),Pc,n1e),Yit=Cs(new tr,Io,r1e)}function zOt(e){var t,n,i,r,o;for(t=c(B(e,(ye(),yP)),83),o=e.n,i=t.Cc().Kc();i.Ob();)n=c(i.Pb(),306),r=n.i,r.c+=o.a,r.d+=o.b,n.c?xWe(n):LWe(n);pe(e,yP,null)}function VOt(e,t,n){var i,r;switch(r=e.b,i=r.d,t.g){case 1:return-i.d-n;case 2:return r.o.a+i.c+n;case 3:return r.o.b+i.a+n;case 4:return-i.b-n;default:return-1}}function GOt(e){var t,n,i,r,o;if(i=0,r=$E,e.b)for(t=0;t<360;t++)n=t*.017453292519943295,tue(e,e.d,0,0,pv,n),o=e.b.ig(e.d),o0&&(u=(o&Fn)%e.d.length,r=fse(e,u,o,t),r)?(a=r.ed(n),a):(i=e.tj(o,t,n),e.c.Fc(i),null)}function gce(e,t){var n,i,r,o;switch(gd(e,t)._k()){case 3:case 2:{for(n=sv(t),r=0,o=n.i;r=0;i--)if(rt(e[i].d,t)||rt(e[i].d,n)){e.length>=i+1&&e.splice(0,i+1);break}return e}function BI(e,t){var n;return Oo(e)&&Oo(t)&&(n=e/t,pT0&&(e.b+=2,e.a+=i):(e.b+=1,e.a+=g.Math.min(i,r))}function CVe(e,t){var n,i;if(i=!1,fr(t)&&(i=!0,Zy(e,new qp(ln(t)))),i||Q(t,236)&&(i=!0,Zy(e,(n=yte(c(t,236)),new NA(n)))),!i)throw V(new zN(jfe))}function l7t(e,t,n,i){var r,o,u;return r=new Ah(e.e,1,10,(u=t.c,Q(u,88)?c(u,26):(ot(),Ea)),(o=n.c,Q(o,88)?c(o,26):(ot(),Ea)),wd(e,t),!1),i?i.Ei(r):i=r,i}function wce(e){var t,n;switch(c(B(Nr(e),(Oe(),rbe)),420).g){case 0:return t=e.n,n=e.o,new $e(t.a+n.a/2,t.b+n.b/2);case 1:return new go(e.n);default:return null}}function $I(){$I=Z,vR=new QS(qh,0),H1e=new QS("LEFTUP",1),V1e=new QS("RIGHTUP",2),q1e=new QS("LEFTDOWN",3),z1e=new QS("RIGHTDOWN",4),bU=new QS("BALANCED",5)}function f7t(e,t,n){var i,r,o;if(i=zi(e.a[t.p],e.a[n.p]),i==0){if(r=c(B(t,(ye(),U2)),15),o=c(B(n,U2),15),r.Hc(n))return-1;if(o.Hc(t))return 1}return i}function h7t(e){switch(e.g){case 1:return new u5e;case 2:return new a5e;case 3:return new s5e;case 0:return null;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function mce(e,t,n){switch(t){case 1:!e.n&&(e.n=new Me(Lo,e,1,7)),Xt(e.n),!e.n&&(e.n=new Me(Lo,e,1,7)),Mi(e.n,c(n,14));return;case 2:H5(e,ln(n));return}Fre(e,t,n)}function vce(e,t,n){switch(t){case 3:b0(e,ge(Te(n)));return;case 4:p0(e,ge(Te(n)));return;case 5:es(e,ge(Te(n)));return;case 6:ts(e,ge(Te(n)));return}mce(e,t,n)}function D7(e,t,n){var i,r,o;o=(i=new FN,i),r=$l(o,t,null),r&&r.Fi(),kc(o,n),on((!e.c&&(e.c=new Me(cp,e,12,10)),e.c),o),hd(o,0),Zp(o,1),pd(o,!0),bd(o,!0)}function yce(e,t){var n,i,r;return n=US(e.g,t),Q(n,235)?(r=c(n,235),r.Qh()==null,r.Nh()):Q(n,498)?(i=c(n,1938),r=i.b,r):null}function d7t(e,t,n,i){var r,o;return nn(t),nn(n),o=c(v5(e.d,t),19),g$e(!!o,"Row %s not in %s",t,e.e),r=c(v5(e.b,n),19),g$e(!!r,"Column %s not in %s",n,e.c),vqe(e,o.a,r.a,i)}function IVe(e,t,n,i,r,o,u){var a,l,d,p,v;if(p=r[o],d=o==u-1,a=d?i:0,v=Wze(a,p),i!=10&&U(G(e,u-o),t[o],n[o],a,v),!d)for(++o,l=0;l1||a==-1?(o=c(l,15),r.Wb(y9t(e,o))):r.Wb(Jq(e,c(l,56)))))}function y7t(e,t,n,i){g8e();var r=tG;function o(){for(var u=0;ucV)return n;r>-1e-6&&++n}return n}function Sce(e,t){var n;t!=e.b?(n=null,e.b&&(n=z8(e.b,e,-4,n)),t&&(n=w2(t,e,-4,n)),n=aHe(e,t,n),n&&n.Fi()):(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,t,t))}function AVe(e,t){var n;t!=e.f?(n=null,e.f&&(n=z8(e.f,e,-1,n)),t&&(n=w2(t,e,-1,n)),n=lHe(e,t,n),n&&n.Fi()):(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,0,t,t))}function OVe(e){var t,n,i;if(e==null)return null;if(n=c(e,15),n.dc())return"";for(i=new nd,t=n.Kc();t.Ob();)co(i,(Jn(),ln(t.Pb()))),i.a+=" ";return xF(i,i.a.length-1)}function DVe(e){var t,n,i;if(e==null)return null;if(n=c(e,15),n.dc())return"";for(i=new nd,t=n.Kc();t.Ob();)co(i,(Jn(),ln(t.Pb()))),i.a+=" ";return xF(i,i.a.length-1)}function T7t(e,t,n){var i,r;return i=e.c[t.c.p][t.p],r=e.c[n.c.p][n.p],i.a!=null&&r.a!=null?SB(i.a,r.a):i.a!=null?-1:r.a!=null?1:0}function j7t(e,t){var n,i,r,o,u,a;if(t)for(o=t.a.length,n=new Og(o),a=(n.b-n.a)*n.c<0?(s1(),ig):new f1(n);a.Ob();)u=c(a.Pb(),19),r=A_(t,u.a),i=new kje(e),m5t(i.a,r)}function A7t(e,t){var n,i,r,o,u,a;if(t)for(o=t.a.length,n=new Og(o),a=(n.b-n.a)*n.c<0?(s1(),ig):new f1(n);a.Ob();)u=c(a.Pb(),19),r=A_(t,u.a),i=new Pje(e),w5t(i.a,r)}function O7t(e){var t;if(e!=null&&e.length>0&&Pr(e,e.length-1)==33)try{return t=jGe(fu(e,0,e.length-1)),t.e==null}catch(n){if(n=gi(n),!Q(n,32))throw V(n)}return!1}function kVe(e,t,n){var i,r,o;return i=t.ak(),o=t.dd(),r=i.$j()?p1(e,3,i,null,o,IE(e,i,o,Q(i,99)&&(c(i,18).Bb&Vr)!=0),!0):p1(e,1,i,i.zj(),o,-1,!0),n?n.Ei(r):n=r,n}function D7t(){var e,t,n;for(t=0,e=0;e<1;e++){if(n=bse((fn(e,1),"X".charCodeAt(e))),n==0)throw V(new an("Unknown Option: "+"X".substr(e)));t|=n}return t}function k7t(e,t,n){var i,r,o;switch(i=Nr(t),r=o7(i),o=new gc,Bo(o,t),n.g){case 1:Ji(o,II(b2(r)));break;case 2:Ji(o,b2(r))}return pe(o,(Oe(),$w),Te(B(e,$w))),o}function Pce(e){var t,n;return t=c(rn(new Kt(Ht(ko(e.a).a.Kc(),new j))),17),n=c(rn(new Kt(Ht(Vi(e.a).a.Kc(),new j))),17),Be(Fe(B(t,(ye(),Ul))))||Be(Fe(B(n,Ul)))}function Zm(){Zm=Z,fR=new cC("ONE_SIDE",0),dR=new cC("TWO_SIDES_CORNER",1),gR=new cC("TWO_SIDES_OPPOSING",2),hR=new cC("THREE_SIDES",3),lR=new cC("FOUR_SIDES",4)}function dq(e,t,n,i,r){var o,u;o=c(gu(si(t.Oc(),new T4e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),u=c(qg(e.b,n,i),15),r==0?u.Wc(0,o):u.Gc(o)}function R7t(e,t){var n,i,r,o,u;for(o=new q(t.a);o.a0&&oVe(this,this.c-1,(Ie(),jt)),this.c0&&e[0].length>0&&(this.c=Be(Fe(B(Nr(e[0][0]),(ye(),cge))))),this.a=oe(Fst,we,2018,e.length,0,2),this.b=oe(Bst,we,2019,e.length,0,2),this.d=new nHe}function B7t(e){return e.c.length==0?!1:(pt(0,e.c.length),c(e.c[0],17)).c.i.k==(Dt(),ur)?!0:D_(Yc(new ht(null,new bt(e,16)),new sSe),new uSe)}function $7t(e,t,n){return Wt(n,"Tree layout",1),eO(e.b),Kf(e.b,(dE(),ZR),ZR),Kf(e.b,LP,LP),Kf(e.b,vj,vj),Kf(e.b,NP,NP),e.a=cD(e.b,t),bNt(e,t,yc(n,1)),qt(n),t}function xVe(e,t){var n,i,r,o,u,a,l;for(a=dw(t),o=t.f,l=t.g,u=g.Math.sqrt(o*o+l*l),r=0,i=new q(a);i.a=0?(n=BI(e,pD),i=AI(e,pD)):(t=$p(e,1),n=BI(t,5e8),i=AI(t,5e8),i=xr(Ph(i,1),Xi(e,1))),Dl(Ph(i,32),Xi(n,no))}function FVe(e,t,n){var i,r;switch(i=(Lt(t.b!=0),c(Fu(t,t.a.a),8)),n.g){case 0:i.b=0;break;case 2:i.b=e.f;break;case 3:i.a=0;break;default:i.a=e.g}return r=Mn(t,0),RC(r,i),t}function BVe(e,t,n,i){var r,o,u,a,l;switch(l=e.b,o=t.d,u=o.j,a=Foe(u,l.d[u.g],n),r=Wn(Wo(o.n),o.a),o.j.g){case 1:case 3:a.a+=r.a;break;case 2:case 4:a.b+=r.b}Ri(i,a,i.c.b,i.c)}function Q7t(e,t,n){var i,r,o,u;for(u=Do(e.e,t,0),o=new qQ,o.b=n,i=new _r(e.e,u);i.b1;t>>=1)(t&1)!=0&&(i=Fm(i,n)),n.d==1?n=Fm(n,n):n=new aze(mYe(n.a,n.d,oe(Qt,_n,25,n.d<<1,15,1)));return i=Fm(i,n),i}function Oce(){Oce=Z;var e,t,n,i;for(Dhe=oe(gr,lo,25,25,15,1),khe=oe(gr,lo,25,33,15,1),i=152587890625e-16,t=32;t>=0;t--)khe[t]=i,i*=.5;for(n=1,e=24;e>=0;e--)Dhe[e]=n,n*=.5}function rDt(e){var t,n;if(Be(Fe(Ke(e,(Oe(),Bw))))){for(n=new Kt(Ht(Fh(e).a.Kc(),new j));dn(n);)if(t=c(rn(n),79),T0(t)&&Be(Fe(Ke(t,pb))))return!0}return!1}function $Ve(e,t){var n,i,r;Yi(e.f,t)&&(t.b=e,i=t.c,Do(e.j,i,0)!=-1||Ee(e.j,i),r=t.d,Do(e.j,r,0)!=-1||Ee(e.j,r),n=t.a.b,n.c.length!=0&&(!e.i&&(e.i=new mze(e)),yTt(e.i,n)))}function oDt(e){var t,n,i,r,o;return n=e.c.d,i=n.j,r=e.d.d,o=r.j,i==o?n.p=0&&rt(e.substr(t,3),"GMT")||t>=0&&rt(e.substr(t,3),"UTC"))&&(n[0]=t+3),rue(e,n,i)}function sDt(e,t){var n,i,r,o,u;for(o=e.g.a,u=e.g.b,i=new q(e.d);i.an;o--)e[o]|=t[o-n-1]>>>u,e[o-1]=t[o-n-1]<=e.f)break;o.c[o.c.length]=n}return o}function kce(e){var t,n,i,r;for(t=null,r=new q(e.wf());r.a0&&bc(e.g,t,e.g,t+i,a),u=n.Kc(),e.i+=i,r=0;ro&&SSt(d,L$e(n[a],Ahe))&&(r=a,o=l);return r>=0&&(i[0]=t+o),r}function gDt(e,t){var n;if(n=k7e(e.b.Hf(),t.b.Hf()),n!=0)return n;switch(e.b.Hf().g){case 1:case 2:return Uc(e.b.sf(),t.b.sf());case 3:case 4:return Uc(t.b.sf(),e.b.sf())}return 0}function bDt(e){var t,n,i;for(i=e.e.c.length,e.a=Ag(Qt,[we,_n],[48,25],15,[i,i],2),n=new q(e.c);n.a>4&15,o=e[i]&15,u[r++]=Ywe[n],u[r++]=Ywe[o];return pf(u,0,u.length)}function mDt(e,t,n){var i,r,o;return i=t.ak(),o=t.dd(),r=i.$j()?p1(e,4,i,o,null,IE(e,i,o,Q(i,99)&&(c(i,18).Bb&Vr)!=0),!0):p1(e,i.Kj()?2:1,i,o,i.zj(),-1,!0),n?n.Ei(r):n=r,n}function is(e){var t,n;return e>=Vr?(t=wT+(e-Vr>>10&1023)&Ni,n=56320+(e-Vr&1023)&Ni,String.fromCharCode(t)+(""+String.fromCharCode(n))):String.fromCharCode(e&Ni)}function vDt(e,t){Lp();var n,i,r,o;return r=c(c(Vn(e.r,t),21),84),r.gc()>=2?(i=c(r.Kc().Pb(),111),n=e.u.Hc((js(),eM)),o=e.u.Hc(c3),!i.a&&!n&&(r.gc()==2||o)):!1}function HVe(e,t,n,i,r){var o,u,a;for(o=CWe(e,t,n,i,r),a=!1;!o;)K7(e,r,!0),a=!0,o=CWe(e,t,n,i,r);a&&K7(e,r,!1),u=nK(r),u.c.length!=0&&(e.d&&e.d.lg(u),HVe(e,r,n,i,u))}function L7(){L7=Z,rY=new r5(qh,0),Swe=new r5("DIRECTED",1),Mwe=new r5("UNDIRECTED",2),_we=new r5("ASSOCIATION",3),Pwe=new r5("GENERALIZATION",4),Ewe=new r5("DEPENDENCY",5)}function yDt(e,t){var n;if(!jl(e))throw V(new Ao(FZe));switch(n=jl(e),t.g){case 1:return-(e.j+e.f);case 2:return e.i-n.g;case 3:return e.j-n.f;case 4:return-(e.i+e.g)}return 0}function wE(e,t){var n,i;for(yt(t),i=e.b.c.length,Ee(e.b,t);i>0;){if(n=i,i=(i-1)/2|0,e.a.ue(Ne(e.b,i),t)<=0)return Lu(e.b,n,t),!0;Lu(e.b,n,Ne(e.b,i))}return Lu(e.b,i,t),!0}function Rce(e,t,n,i){var r,o;if(r=0,n)r=e7(e.a[n.g][t.g],i);else for(o=0;o=a)}function xce(e,t,n,i){var r;if(r=!1,fr(i)&&(r=!0,v_(t,n,ln(i))),r||Dp(i)&&(r=!0,xce(e,t,n,i)),r||Q(i,236)&&(r=!0,Rg(t,n,c(i,236))),!r)throw V(new zN(jfe))}function EDt(e,t){var n,i,r;if(n=t.Hh(e.a),n&&(r=ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),aa),r!=null)){for(i=1;i<(vs(),vme).length;++i)if(rt(vme[i],r))return i}return 0}function SDt(e,t){var n,i,r;if(n=t.Hh(e.a),n&&(r=ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),aa),r!=null)){for(i=1;i<(vs(),yme).length;++i)if(rt(yme[i],r))return i}return 0}function zVe(e,t){var n,i,r,o;if(yt(t),o=e.a.gc(),o0?1:0;o.a[r]!=n;)o=o.a[r],r=e.a.ue(n.d,o.d)>0?1:0;o.a[r]=i,i.b=n.b,i.a[0]=n.a[0],i.a[1]=n.a[1],n.a[0]=null,n.a[1]=null}function CDt(e){js();var t,n;return t=ui(Wh,U(G(Cx,1),_e,273,0,[X1])),!(hI(U8(t,e))>1||(n=ui(eM,U(G(Cx,1),_e,273,0,[ZP,c3])),hI(U8(n,e))>1))}function Nce(e,t){var n;n=mc((c1(),_a),e),Q(n,498)?bo(_a,e,new a7e(this,t)):bo(_a,e,this),yq(this,t),t==(r_(),sme)?(this.wb=c(this,1939),c(t,1941)):this.wb=(g1(),wt)}function IDt(e){var t,n,i;if(e==null)return null;for(t=null,n=0;n=_d?"error":i>=900?"warn":i>=800?"info":"log"),Axe(n,e.a),e.b&&Nse(t,n,e.b,"Exception: ",!0))}function B(e,t){var n,i;return i=(!e.q&&(e.q=new en),Bt(e.q,t)),i??(n=t.wg(),Q(n,4)&&(n==null?(!e.q&&(e.q=new en),u2(e.q,t)):(!e.q&&(e.q=new en),Kn(e.q,t,n))),n)}function Hr(){Hr=Z,Af=new oC("P1_CYCLE_BREAKING",0),B1=new oC("P2_LAYERING",1),Hc=new oC("P3_NODE_ORDERING",2),Pc=new oC("P4_NODE_PLACEMENT",3),Io=new oC("P5_EDGE_ROUTING",4)}function WVe(e,t){var n,i,r,o,u;for(r=t==1?BG:FG,i=r.a.ec().Kc();i.Ob();)for(n=c(i.Pb(),103),u=c(Vn(e.f.c,n),21).Kc();u.Ob();)o=c(u.Pb(),46),Jc(e.b.b,o.b),Jc(e.b.a,c(o.b,81).d)}function TDt(e,t){K5();var n;if(e.c==t.c){if(e.b==t.b||ZIt(e.b,t.b)){if(n=u2t(e.b)?1:-1,e.a&&!t.a)return n;if(!e.a&&t.a)return-n}return Uc(e.b.g,t.b.g)}else return zi(e.c,t.c)}function jDt(e,t){var n;Wt(t,"Hierarchical port position processing",1),n=e.b,n.c.length>0&&dYe((pt(0,n.c.length),c(n.c[0],29)),e),n.c.length>1&&dYe(c(Ne(n,n.c.length-1),29),e),qt(t)}function YVe(e,t){var n,i,r;if(Bce(e,t))return!0;for(i=new q(t);i.a=r||t<0)throw V(new ho(xV+t+ub+r));if(n>=r||n<0)throw V(new ho(LV+n+ub+r));return t!=n?i=(o=e.Ti(n),e.Hi(t,o),o):i=e.Oi(n),i}function QVe(e){var t,n,i;if(i=e,e)for(t=0,n=e.Ug();n;n=n.Ug()){if(++t>YH)return QVe(n);if(i=n,n==e)throw V(new Ao("There is a cycle in the containment hierarchy of "+e))}return i}function C1(e){var t,n,i;for(i=new Hg(zr,"[","]"),n=e.Kc();n.Ob();)t=n.Pb(),jh(i,le(t)===le(e)?"(this Collection)":t==null?rs:Ro(t));return i.a?i.e.length==0?i.a.a:i.a.a+(""+i.e):i.c}function Bce(e,t){var n,i;if(i=!1,t.gc()<2)return!1;for(n=0;ni&&(fn(t-1,e.length),e.charCodeAt(t-1)<=32);)--t;return i>0||t1&&(e.j.b+=e.e)):(e.j.a+=n.a,e.j.b=g.Math.max(e.j.b,n.b),e.d.c.length>1&&(e.j.a+=e.e))}function I1(){I1=Z,Rrt=U(G(Gr,1),ac,61,0,[(Ie(),_t),jt,Yt]),krt=U(G(Gr,1),ac,61,0,[jt,Yt,Mt]),xrt=U(G(Gr,1),ac,61,0,[Yt,Mt,_t]),Lrt=U(G(Gr,1),ac,61,0,[Mt,_t,jt])}function ODt(e,t,n,i){var r,o,u,a,l,d,p;if(u=e.c.d,a=e.d.d,u.j!=a.j)for(p=e.b,r=u.j,l=null;r!=a.j;)l=t==0?r7(r):uoe(r),o=Foe(r,p.d[r.g],n),d=Foe(l,p.d[l.g],n),Cn(i,Wn(o,d)),r=l}function DDt(e,t,n,i){var r,o,u,a,l;return u=cVe(e.a,t,n),a=c(u.a,19).a,o=c(u.b,19).a,i&&(l=c(B(t,(ye(),As)),10),r=c(B(n,As),10),l&&r&&(hFe(e.b,l,r),a+=e.b.i,o+=e.b.e)),a>o}function eGe(e){var t,n,i,r,o,u,a,l,d;for(this.a=jze(e),this.b=new Se,n=e,i=0,r=n.length;iJF(e.d).c?(e.i+=e.g.c,LK(e.d)):JF(e.d).c>JF(e.g).c?(e.e+=e.d.c,LK(e.g)):(e.i+=ORe(e.g),e.e+=ORe(e.d),LK(e.g),LK(e.d))}function xDt(e,t,n){var i,r,o,u;for(o=t.q,u=t.r,new xg((cl(),z1),t,o,1),new xg(z1,o,u,1),r=new q(n);r.aa&&(l=a/i),r>o&&(d=o/r),u=g.Math.min(l,d),e.a+=u*(t.a-e.a),e.b+=u*(t.b-e.b)}function BDt(e,t,n,i,r){var o,u;for(u=!1,o=c(Ne(n.b,0),33);e$t(e,t,o,i,r)&&(u=!0,m7t(n,o),n.b.c.length!=0);)o=c(Ne(n.b,0),33);return n.b.c.length==0&&FI(n.j,n),u&&I7(t.q),u}function $Dt(e,t){ov();var n,i,r,o;if(t.b<2)return!1;for(o=Mn(t,0),n=c(Pn(o),8),i=n;o.b!=o.d.c;){if(r=c(Pn(o),8),Bq(e,i,r))return!0;i=r}return!!Bq(e,i,n)}function Kce(e,t,n,i){var r,o;return n==0?(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),r8(e.o,t,i)):(o=c(at((r=c(vt(e,16),26),r||e.zh()),n),66),o.Nj().Rj(e,$c(e),n-Ft(e.zh()),t,i))}function yq(e,t){var n;t!=e.sb?(n=null,e.sb&&(n=c(e.sb,49).ih(e,1,iM,n)),t&&(n=c(t,49).gh(e,1,iM,n)),n=toe(e,t,n),n&&n.Fi()):(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,4,t,t))}function KDt(e,t){var n,i,r,o;if(t)r=Dh(t,"x"),n=new Aje(e),$_(n.a,(yt(r),r)),o=Dh(t,"y"),i=new Oje(e),q_(i.a,(yt(o),o));else throw V(new sf("All edge sections need an end point."))}function qDt(e,t){var n,i,r,o;if(t)r=Dh(t,"x"),n=new Ije(e),K_(n.a,(yt(r),r)),o=Dh(t,"y"),i=new Tje(e),H_(i.a,(yt(o),o));else throw V(new sf("All edge sections need a start point."))}function HDt(e,t){var n,i,r,o,u,a,l;for(i=$qe(e),o=0,a=i.length;o>22-t,r=e.h<>22-t):t<44?(n=0,i=e.l<>44-t):(n=0,i=0,r=e.l<e)throw V(new St("k must be smaller than n"));return t==0||t==e?1:e==0?0:bce(e)/(bce(t)*bce(e-t))}function qce(e,t){var n,i,r,o;for(n=new fee(e);n.g==null&&!n.c?zne(n):n.g==null||n.i!=0&&c(n.g[n.i-1],47).Ob();)if(o=c(q7(n),56),Q(o,160))for(i=c(o,160),r=0;r>4],t[n*2+1]=Vx[o&15];return pf(t,0,t.length)}function ckt(e){k8();var t,n,i;switch(i=e.c.length,i){case 0:return qtt;case 1:return t=c(zGe(new q(e)),42),A4t(t.cd(),t.dd());default:return n=c(Bl(e,oe(fb,gD,42,e.c.length,0,1)),165),new qN(n)}}function skt(e){var t,n,i,r,o,u;for(t=new vm,n=new vm,w1(t,e),w1(n,e);n.b!=n.c;)for(r=c(Qy(n),37),u=new q(r.a);u.a0&&tT(e,n,t),r):HRt(e,t,n)}function uGe(e,t,n){var i,r,o,u;if(t.b!=0){for(i=new wi,u=Mn(t,0);u.b!=u.d.c;)o=c(Pn(u),86),qr(i,Pre(o)),r=o.e,r.a=c(B(o,(ic(),wW)),19).a,r.b=c(B(o,u0e),19).a;uGe(e,i,yc(n,i.b/e.a|0))}}function aGe(e,t){var n,i,r,o,u;if(e.e<=t||bPt(e,e.g,t))return e.g;for(o=e.r,i=e.g,u=e.r,r=(o-i)/2+i;i+11&&(e.e.b+=e.a)):(e.e.a+=n.a,e.e.b=g.Math.max(e.e.b,n.b),e.d.c.length>1&&(e.e.a+=e.a))}function hkt(e){var t,n,i,r;switch(r=e.i,t=r.b,i=r.j,n=r.g,r.a.g){case 0:n.a=(e.g.b.o.a-i.a)/2;break;case 1:n.a=t.d.n.a+t.d.a.a;break;case 2:n.a=t.d.n.a+t.d.a.a-i.a;break;case 3:n.b=t.d.n.b+t.d.a.b}}function lGe(e,t,n,i,r){if(ii&&(e.a=i),e.br&&(e.b=r),e}function dkt(e){if(Q(e,149))return qLt(c(e,149));if(Q(e,229))return BAt(c(e,229));if(Q(e,23))return GDt(c(e,23));throw V(new St(Afe+C1(new Js(U(G(xt,1),xe,1,5,[e])))))}function gkt(e,t,n,i,r){var o,u,a;for(o=!0,u=0;u>>r|n[u+i+1]<>>r,++u}return o}function Gce(e,t,n,i){var r,o,u;if(t.k==(Dt(),ur)){for(o=new Kt(Ht(ko(t).a.Kc(),new j));dn(o);)if(r=c(rn(o),17),u=r.c.i.k,u==ur&&e.c.a[r.c.i.c.p]==i&&e.c.a[t.c.p]==n)return!0}return!1}function bkt(e,t){var n,i,r,o;return t&=63,n=e.h&Kh,t<22?(o=n>>>t,r=e.m>>t|n<<22-t,i=e.l>>t|e.m<<22-t):t<44?(o=0,r=n>>>t-22,i=e.m>>t-22|e.h<<44-t):(o=0,r=0,i=n>>>t-44),Bc(i&qs,r&qs,o&Kh)}function fGe(e,t,n,i){var r;this.b=i,this.e=e==(w0(),kP),r=t[n],this.d=Ag(Gs,[we,Zf],[177,25],16,[r.length,r.length],2),this.a=Ag(Qt,[we,_n],[48,25],15,[r.length,r.length],2),this.c=new Tce(t,n)}function pkt(e){var t,n,i;for(e.k=new Wne((Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])).length,e.j.c.length),i=new q(e.j);i.a=n)return vE(e,t,i.p),!0;return!1}function dGe(e){var t;return(e.Db&64)!=0?_q(e):(t=new lu(vfe),!e.a||wn(wn((t.a+=' "',t),e.a),'"'),wn(zb(wn(zb(wn(zb(wn(zb((t.a+=" (",t),e.i),","),e.j)," | "),e.g),","),e.f),")"),t.a)}function gGe(e,t,n){var i,r,o,u,a;for(a=qc(e.e.Tg(),t),r=c(e.g,119),i=0,u=0;un?ese(e,n,"start index"):t<0||t>n?ese(t,n,"end index"):m6("end index (%s) must not be less than start index (%s)",U(G(xt,1),xe,1,5,[Ce(t),Ce(e)]))}function pGe(e,t){var n,i,r,o;for(i=0,r=e.length;i0&&wGe(e,o,n));t.p=0}function ze(e){var t;this.c=new wi,this.f=e.e,this.e=e.d,this.i=e.g,this.d=e.c,this.b=e.b,this.k=e.j,this.a=e.a,e.i?this.j=e.i:this.j=(t=c(rl(Dd),9),new ku(t,c(Da(t,t.length),9),0)),this.g=e.f}function Ekt(e){var t,n,i,r;for(t=Dg(wn(new lu("Predicates."),"and"),40),n=!0,r=new CS(e);r.b0?a[u-1]:oe(nh,Ed,10,0,0,1),r=a[u],d=u=0?e.Bh(r):ose(e,i);else throw V(new St(x1+i.ne()+W6));else throw V(new St(YZe+t+XZe));else $u(e,n,i)}function Uce(e){var t,n;if(n=null,t=!1,Q(e,204)&&(t=!0,n=c(e,204).a),t||Q(e,258)&&(t=!0,n=""+c(e,258).a),t||Q(e,483)&&(t=!0,n=""+c(e,483).a),!t)throw V(new zN(jfe));return n}function _Ge(e,t){var n,i;if(e.f){for(;t.Ob();)if(n=c(t.Pb(),72),i=n.ak(),Q(i,99)&&(c(i,18).Bb&rc)!=0&&(!e.e||i.Gj()!=x4||i.aj()!=0)&&n.dd()!=null)return t.Ub(),!0;return!1}else return t.Ob()}function EGe(e,t){var n,i;if(e.f){for(;t.Sb();)if(n=c(t.Ub(),72),i=n.ak(),Q(i,99)&&(c(i,18).Bb&rc)!=0&&(!e.e||i.Gj()!=x4||i.aj()!=0)&&n.dd()!=null)return t.Pb(),!0;return!1}else return t.Sb()}function Wce(e,t,n){var i,r,o,u,a,l;for(l=qc(e.e.Tg(),t),i=0,a=e.i,r=c(e.g,119),u=0;u1&&(t.c[t.c.length]=o))}function Ckt(e){var t,n,i,r;for(n=new wi,qr(n,e.o),i=new HQ;n.b!=0;)t=c(n.b==0?null:(Lt(n.b!=0),Fu(n,n.a.a)),508),r=tJe(e,t,!0),r&&Ee(i.a,t);for(;i.a.c.length!=0;)t=c(Wqe(i),508),tJe(e,t,!1)}function yd(){yd=Z,Ipe=new qy(R6,0),Dr=new qy("BOOLEAN",1),oc=new qy("INT",2),T4=new qy("STRING",3),To=new qy("DOUBLE",4),Ai=new qy("ENUM",5),t3=new qy("ENUMSET",6),Yl=new qy("OBJECT",7)}function h6(e,t){var n,i,r,o,u;i=g.Math.min(e.c,t.c),o=g.Math.min(e.d,t.d),r=g.Math.max(e.c+e.b,t.c+t.b),u=g.Math.max(e.d+e.a,t.d+t.a),r=(r/2|0))for(this.e=i?i.c:null,this.d=r;n++0;)Vne(this);this.b=t,this.a=null}function jkt(e,t){var n,i;t.a?QLt(e,t):(n=c(nB(e.b,t.b),57),n&&n==e.a[t.b.f]&&n.a&&n.a!=t.b.a&&n.c.Fc(t.b),i=c(tB(e.b,t.b),57),i&&e.a[i.f]==t.b&&i.a&&i.a!=t.b.a&&t.b.c.Fc(i),HF(e.b,t.b))}function PGe(e,t){var n,i;if(n=c(so(e.b,t),124),c(c(Vn(e.r,t),21),84).dc()){n.n.b=0,n.n.c=0;return}n.n.b=e.C.b,n.n.c=e.C.c,e.A.Hc((ou(),Cb))&&WWe(e,t),i=o8t(e,t),Kq(e,t)==(Um(),W1)&&(i+=2*e.w),n.a.a=i}function MGe(e,t){var n,i;if(n=c(so(e.b,t),124),c(c(Vn(e.r,t),21),84).dc()){n.n.d=0,n.n.a=0;return}n.n.d=e.C.d,n.n.a=e.C.a,e.A.Hc((ou(),Cb))&&YWe(e,t),i=c8t(e,t),Kq(e,t)==(Um(),W1)&&(i+=2*e.w),n.a.b=i}function Akt(e,t){var n,i,r,o;for(o=new Se,i=new q(t);i.an.a&&(i.Hc((sw(),Cj))?r=(t.a-n.a)/2:i.Hc(Ij)&&(r=t.a-n.a)),t.b>n.b&&(i.Hc((sw(),jj))?o=(t.b-n.b)/2:i.Hc(Tj)&&(o=t.b-n.b)),Lce(e,r,o)}function kGe(e,t,n,i,r,o,u,a,l,d,p,v,A){Q(e.Cb,88)&&lw(Ls(c(e.Cb,88)),4),kc(e,n),e.f=u,sE(e,a),aE(e,l),cE(e,d),uE(e,p),pd(e,v),lE(e,A),bd(e,!0),hd(e,r),e.ok(o),Ug(e,t),i!=null&&(e.i=null,NO(e,i))}function RGe(e){var t,n;if(e.f){for(;e.n>0;){if(t=c(e.k.Xb(e.n-1),72),n=t.ak(),Q(n,99)&&(c(n,18).Bb&rc)!=0&&(!e.e||n.Gj()!=x4||n.aj()!=0)&&t.dd()!=null)return!0;--e.n}return!1}else return e.n>0}function ese(e,t,n){if(e<0)return m6(mJe,U(G(xt,1),xe,1,5,[n,Ce(e)]));if(t<0)throw V(new St(vJe+t));return m6("%s (%s) must not be greater than size (%s)",U(G(xt,1),xe,1,5,[n,Ce(e),Ce(t)]))}function tse(e,t,n,i,r,o){var u,a,l,d;if(u=i-n,u<7){TAt(t,n,i,o);return}if(l=n+r,a=i+r,d=l+(a-l>>1),tse(t,e,l,d,-r,o),tse(t,e,d,a,-r,o),o.ue(e[d-1],e[d])<=0){for(;n=0?e.sh(o,n):Ose(e,r,n);else throw V(new St(x1+r.ne()+W6));else throw V(new St(YZe+t+XZe));else qu(e,i,r,n)}function xGe(e){var t,n,i,r;if(n=c(e,49).qh(),n)try{if(i=null,t=EE((c1(),_a),wYe(OAt(n))),t&&(r=t.rh(),r&&(i=r.Wk(Bvt(n.e)))),i&&i!=e)return xGe(i)}catch(o){if(o=gi(o),!Q(o,60))throw V(o)}return e}function Kc(e,t,n){var i,r,o,u;if(u=t==null?0:e.b.se(t),r=(i=e.a.get(u),i??new Array),r.length==0)e.a.set(u,r);else if(o=Jqe(e,t,r),o)return o.ed(n);return vi(r,r.length,new y9(t,n)),++e.c,q8(e.b),null}function LGe(e,t){var n,i;return eO(e.a),Kf(e.a,($O(),cx),cx),Kf(e.a,I4,I4),i=new tr,Nn(i,I4,(s7(),EW)),le(Ke(t,(ow(),MW)))!==le((EI(),sx))&&Nn(i,I4,yW),Nn(i,I4,_W),L7e(e.a,i),n=cD(e.a,t),n}function NGe(e){if(!e)return y9e(),Jtt;var t=e.valueOf?e.valueOf():e;if(t!==e){var n=fG[typeof t];return n?n(t):Ure(typeof t)}else return e instanceof Array||e instanceof g.Array?new QJ(e):new BM(e)}function FGe(e,t,n){var i,r,o;switch(o=e.o,i=c(so(e.p,n),244),r=i.i,r.b=UI(i),r.a=GI(i),r.b=g.Math.max(r.b,o.a),r.b>o.a&&!t&&(r.b=o.a),r.c=-(r.b-o.a)/2,n.g){case 1:r.d=-r.a;break;case 3:r.d=o.b}eH(i),tH(i)}function BGe(e,t,n){var i,r,o;switch(o=e.o,i=c(so(e.p,n),244),r=i.i,r.b=UI(i),r.a=GI(i),r.a=g.Math.max(r.a,o.b),r.a>o.b&&!t&&(r.a=o.b),r.d=-(r.a-o.b)/2,n.g){case 4:r.c=-r.b;break;case 2:r.c=o.a}eH(i),tH(i)}function Vkt(e,t){var n,i,r,o,u;if(!t.dc()){if(r=c(t.Xb(0),128),t.gc()==1){hWe(e,r,r,1,0,t);return}for(n=1;n0)try{r=vu(t,Ar,Fn)}catch(o){throw o=gi(o),Q(o,127)?(i=o,V(new mO(i))):V(o)}return n=(!e.a&&(e.a=new ON(e)),e.a),r=0?c(ee(n,r),56):null}function Ykt(e,t){if(e<0)return m6(mJe,U(G(xt,1),xe,1,5,["index",Ce(e)]));if(t<0)throw V(new St(vJe+t));return m6("%s (%s) must be less than size (%s)",U(G(xt,1),xe,1,5,["index",Ce(e),Ce(t)]))}function Xkt(e){var t,n,i,r,o;if(e==null)return rs;for(o=new Hg(zr,"[","]"),n=e,i=0,r=n.length;i0)for(u=e.c.d,a=e.d.d,r=lf(hr(new $e(a.a,a.b),u),1/(i+1)),o=new $e(u.a,u.b),n=new q(e.a);n.a=0?e._g(n,!0,!0):j0(e,r,!0),153)),c(i,215).ol(t);else throw V(new St(x1+t.ne()+W6))}function cse(e){var t,n;return e>-0x800000000000&&e<0x800000000000?e==0?0:(t=e<0,t&&(e=-e),n=xi(g.Math.floor(g.Math.log(e)/.6931471805599453)),(!t||e!=g.Math.pow(2,n))&&++n,n):fqe(ns(e))}function aRt(e){var t,n,i,r,o,u,a;for(o=new Eh,n=new q(e);n.a2&&a.e.b+a.j.b<=2&&(r=a,i=u),o.a.zc(r,o),r.q=i);return o}function UGe(e,t){var n,i,r;return i=new Nh(e),Mo(i,t),pe(i,(ye(),CR),t),pe(i,(Oe(),ji),(wr(),Ic)),pe(i,Of,(Gf(),wx)),Sg(i,(Dt(),Bi)),n=new gc,Bo(n,i),Ji(n,(Ie(),Mt)),r=new gc,Bo(r,i),Ji(r,jt),i}function WGe(e){switch(e.g){case 0:return new VN((w0(),wj));case 1:return new aCe;case 2:return new pCe;default:throw V(new St("No implementation is available for the crossing minimizer "+(e.f!=null?e.f:""+e.g)))}}function YGe(e,t){var n,i,r,o,u;for(e.c[t.p]=!0,Ee(e.a,t),u=new q(t.j);u.a=o)u.$b();else for(r=u.Kc(),i=0;i0?rZ():u<0&&ZGe(e,t,-u),!0):!1}function GI(e){var t,n,i,r,o,u,a;if(a=0,e.b==0){for(u=xze(e,!0),t=0,i=u,r=0,o=i.length;r0&&(a+=n,++t);t>1&&(a+=e.c*(t-1))}else a=T9e(BKe(x8(si(TB(e.a),new au),new e1)));return a>0?a+e.n.d+e.n.a:0}function UI(e){var t,n,i,r,o,u,a;if(a=0,e.b==0)a=T9e(BKe(x8(si(TB(e.a),new Eo),new fs)));else{for(u=Lze(e,!0),t=0,i=u,r=0,o=i.length;r0&&(a+=n,++t);t>1&&(a+=e.c*(t-1))}return a>0?a+e.n.b+e.n.c:0}function wRt(e,t){var n,i,r,o;for(o=c(so(e.b,t),124),n=o.a,r=c(c(Vn(e.r,t),21),84).Kc();r.Ob();)i=c(r.Pb(),111),i.c&&(n.a=g.Math.max(n.a,Vte(i.c)));if(n.a>0)switch(t.g){case 2:o.n.c=e.s;break;case 4:o.n.b=e.s}}function mRt(e,t){var n,i,r;return n=c(B(t,(dl(),r4)),19).a-c(B(e,r4),19).a,n==0?(i=hr(Wo(c(B(e,(v1(),JT)),8)),c(B(e,fP),8)),r=hr(Wo(c(B(t,JT),8)),c(B(t,fP),8)),zi(i.a*i.b,r.a*r.b)):n}function vRt(e,t){var n,i,r;return n=c(B(t,(A0(),ox)),19).a-c(B(e,ox),19).a,n==0?(i=hr(Wo(c(B(e,(ic(),yj)),8)),c(B(e,FP),8)),r=hr(Wo(c(B(t,yj),8)),c(B(t,FP),8)),zi(i.a*i.b,r.a*r.b)):n}function eUe(e){var t,n;return n=new n1,n.a+="e_",t=TTt(e),t!=null&&(n.a+=""+t),e.c&&e.d&&(wn((n.a+=" ",n),j7(e.c)),wn(nc((n.a+="[",n),e.c.i),"]"),wn((n.a+=Sz,n),j7(e.d)),wn(nc((n.a+="[",n),e.d.i),"]")),n.a}function tUe(e){switch(e.g){case 0:return new fCe;case 1:return new hCe;case 2:return new lCe;case 3:return new dCe;default:throw V(new St("No implementation is available for the layout phase "+(e.f!=null?e.f:""+e.g)))}}function use(e,t,n,i,r){var o;switch(o=0,r.g){case 1:o=g.Math.max(0,t.b+e.b-(n.b+i));break;case 3:o=g.Math.max(0,-e.b-i);break;case 2:o=g.Math.max(0,-e.a-i);break;case 4:o=g.Math.max(0,t.a+e.a-(n.a+i))}return o}function yRt(e,t,n){var i,r,o,u,a;if(n)for(r=n.a.length,i=new Og(r),a=(i.b-i.a)*i.c<0?(s1(),ig):new f1(i);a.Ob();)u=c(a.Pb(),19),o=A_(n,u.a),Sfe in o.a||kV in o.a?OFt(e,o,t):NHt(e,o,t),r3t(c(Bt(e.b,fE(o)),79))}function ase(e){var t,n;switch(e.b){case-1:return!0;case 0:return n=e.t,n>1||n==-1?(e.b=-1,!0):(t=ra(e),t&&(Wr(),t.Cj()==Zet)?(e.b=-1,!0):(e.b=1,!1));default:case 1:return!1}}function _Rt(e,t){var n,i,r,o,u;for(i=(!t.s&&(t.s=new Me(us,t,21,17)),t.s),o=null,r=0,u=i.i;r=0&&i=0?e._g(n,!0,!0):j0(e,r,!0),153)),c(i,215).ll(t);throw V(new St(x1+t.ne()+PV))}function CRt(){MZ();var e;return Fft?c(EE((c1(),_a),la),1939):(In(fb,new IPe),sqt(),e=c(Q(mc((c1(),_a),la),547)?mc(_a,la):new Kxe,547),Fft=!0,izt(e),uzt(e),Kn((PZ(),cme),e,new H6e),bo(_a,la,e),e)}function IRt(e,t){var n,i,r,o;e.j=-1,Qs(e.e)?(n=e.i,o=e.i!=0,UC(e,t),i=new Ah(e.e,3,e.c,null,t,n,o),r=t.Qk(e.e,e.c,null),r=kVe(e,t,r),r?(r.Ei(i),r.Fi()):Bn(e.e,i)):(UC(e,t),r=t.Qk(e.e,e.c,null),r&&r.Fi())}function B7(e,t){var n,i,r;if(r=0,i=t[0],i>=e.length)return-1;for(n=(fn(i,e.length),e.charCodeAt(i));n>=48&&n<=57&&(r=r*10+(n-48),++i,!(i>=e.length));)n=(fn(i,e.length),e.charCodeAt(i));return i>t[0]?t[0]=i:r=-1,r}function TRt(e){var t,n,i,r,o;return r=c(e.a,19).a,o=c(e.b,19).a,n=r,i=o,t=g.Math.max(g.Math.abs(r),g.Math.abs(o)),r<=0&&r==o?(n=0,i=o-1):r==-t&&o!=t?(n=o,i=r,o>=0&&++n):(n=-o,i=r),new yr(Ce(n),Ce(i))}function jRt(e,t,n,i){var r,o,u,a,l,d;for(r=0;r=0&&d>=0&&l=e.i)throw V(new ho(xV+t+ub+e.i));if(n>=e.i)throw V(new ho(LV+n+ub+e.i));return i=e.g[n],t!=n&&(t>16),t=i>>16&16,n=16-t,e=e>>t,i=e-256,t=i>>16&8,n+=t,e<<=t,i=e-vw,t=i>>16&4,n+=t,e<<=t,i=e-mf,t=i>>16&2,n+=t,e<<=t,i=e>>14,t=i&~(i>>1),n+2-t)}function ORt(e){t2();var t,n,i,r;for(Fk=new Se,AG=new en,jG=new Se,t=(!e.a&&(e.a=new Me(Ei,e,10,11)),e.a),aHt(t),r=new $t(t);r.e!=r.i.gc();)i=c(Vt(r),33),Do(Fk,i,0)==-1&&(n=new Se,Ee(jG,n),dze(i,n));return jG}function DRt(e,t,n){var i,r,o,u;e.a=n.b.d,Q(t,352)?(r=rv(c(t,79),!1,!1),o=HI(r),i=new FIe(e),Mr(o,i),rT(o,r),t.We((kn(),Hv))!=null&&Mr(c(t.We(Hv),74),i)):(u=c(t,470),u.Hg(u.Dg()+e.a.a),u.Ig(u.Eg()+e.a.b))}function iUe(e,t){var n,i,r,o,u,a,l,d;for(d=ge(Te(B(t,(Oe(),IP)))),l=e[0].n.a+e[0].o.a+e[0].d.c+d,a=1;a=0?n:(a=j5(hr(new $e(u.c+u.b/2,u.d+u.a/2),new $e(o.c+o.b/2,o.d+o.a/2))),-(MYe(o,u)-1)*a)}function RRt(e,t,n){var i;Di(new ht(null,(!n.a&&(n.a=new Me(mi,n,6,6)),new bt(n.a,16))),new KOe(e,t)),Di(new ht(null,(!n.n&&(n.n=new Me(Lo,n,1,7)),new bt(n.n,16))),new qOe(e,t)),i=c(Ke(n,(kn(),Hv)),74),i&&gre(i,e,t)}function j0(e,t,n){var i,r,o;if(o=uv((vs(),Ir),e.Tg(),t),o)return Wr(),c(o,66).Oj()||(o=r2(wo(Ir,o))),r=(i=e.Yg(o),c(i>=0?e._g(i,!0,!0):j0(e,o,!0),153)),c(r,215).hl(t,n);throw V(new St(x1+t.ne()+PV))}function fse(e,t,n,i){var r,o,u,a,l;if(r=e.d[t],r){if(o=r.g,l=r.i,i!=null){for(a=0;a=n&&(i=t,d=(l.c+l.a)/2,u=d-n,l.c<=d-n&&(r=new uB(l.c,u),Bp(e,i++,r)),a=d+n,a<=l.a&&(o=new uB(a,l.a),Vp(i,e.c.length),WS(e.c,i,o)))}function hse(e){var t;if(!e.c&&e.g==null)e.d=e.si(e.f),on(e,e.d),t=e.d;else{if(e.g==null)return!0;if(e.i==0)return!1;t=c(e.g[e.i-1],47)}return t==e.b&&null.km>=null.jm()?(q7(e),hse(e)):t.Ob()}function FRt(e,t,n){var i,r,o,u,a;if(a=n,!a&&(a=Hte(new Z3,0)),Wt(a,yQe,1),MXe(e.c,t),u=QKt(e.a,t),u.gc()==1)sXe(c(u.Xb(0),37),a);else for(o=1/u.gc(),r=u.Kc();r.Ob();)i=c(r.Pb(),37),sXe(i,yc(a,o));Gvt(e.a,u,t),QNt(t),qt(a)}function cUe(e){if(this.a=e,e.c.i.k==(Dt(),Bi))this.c=e.c,this.d=c(B(e.c.i,(ye(),Zo)),61);else if(e.d.i.k==Bi)this.c=e.d,this.d=c(B(e.d.i,(ye(),Zo)),61);else throw V(new St("Edge "+e+" is not an external edge."))}function sUe(e,t){var n,i,r;r=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,r,e.b)),t?t!=e&&(kc(e,t.zb),q$(e,t.d),n=(i=t.c,i??t.zb),z$(e,n==null||rt(n,t.zb)?null:n)):(kc(e,null),q$(e,0),z$(e,null))}function uUe(e){var t,n;if(e.f){for(;e.n=u)throw V(new Fp(t,u));return r=n[t],u==1?i=null:(i=oe(hY,KV,415,u-1,0,1),bc(n,0,i,0,t),o=u-t-1,o>0&&bc(n,t+1,i,t,o)),hE(e,i),OGe(e,t,r),r}function E2(){E2=Z,a3=c(ee(he((dZ(),cc).qb),6),34),u3=c(ee(he(cc.qb),3),34),mY=c(ee(he(cc.qb),4),34),vY=c(ee(he(cc.qb),5),18),k7(a3),k7(u3),k7(mY),k7(vY),qft=new Js(U(G(us,1),yv,170,0,[a3,u3]))}function hUe(e,t){var n;this.d=new OS,this.b=t,this.e=new go(t.qf()),n=e.u.Hc((js(),Fj)),e.u.Hc(Wh)?e.D?this.a=n&&!t.If():this.a=!0:e.u.Hc(X1)?n?this.a=!(t.zf().Kc().Ob()||t.Bf().Kc().Ob()):this.a=!1:this.a=!1}function dUe(e,t){var n,i,r,o;for(n=e.o.a,o=c(c(Vn(e.r,t),21),84).Kc();o.Ob();)r=c(o.Pb(),111),r.e.a=(i=r.b,i.Xe((kn(),zs))?i.Hf()==(Ie(),Mt)?-i.rf().a-ge(Te(i.We(zs))):n+ge(Te(i.We(zs))):i.Hf()==(Ie(),Mt)?-i.rf().a:n)}function gUe(e,t){var n,i,r,o;n=c(B(e,(Oe(),Pu)),103),o=c(Ke(t,_4),61),r=c(B(e,ji),98),r!=(wr(),Xl)&&r!=Y1?o==(Ie(),Vo)&&(o=lue(t,n),o==Vo&&(o=b2(n))):(i=cXe(t),i>0?o=b2(n):o=II(b2(n))),ao(t,_4,o)}function qRt(e,t){var n,i,r,o,u;for(u=e.j,t.a!=t.b&&cr(u,new E4e),r=u.c.length/2|0,i=0;i0&&tT(e,n,t),o):i.a!=null?(tT(e,t,n),-1):r.a!=null?(tT(e,n,t),1):0}function bUe(e,t){var n,i,r,o;e.ej()?(n=e.Vi(),o=e.fj(),++e.j,e.Hi(n,e.oi(n,t)),i=e.Zi(3,null,t,n,o),e.bj()?(r=e.cj(t,null),r?(r.Ei(i),r.Fi()):e.$i(i)):e.$i(i)):(Oxe(e,t),e.bj()&&(r=e.cj(t,null),r&&r.Fi()))}function $7(e,t){var n,i,r,o,u;for(u=qc(e.e.Tg(),t),r=new RA,n=c(e.g,119),o=e.i;--o>=0;)i=n[o],u.rl(i.ak())&&on(r,i);!rJe(e,r)&&Qs(e.e)&&Q3(e,t.$j()?p1(e,6,t,(st(),Qr),null,-1,!1):p1(e,t.Kj()?2:1,t,null,null,-1,!1))}function yE(){yE=Z;var e,t;for($2=oe(Ev,we,91,32,0,1),uP=oe(Ev,we,91,32,0,1),e=1,t=0;t<=18;t++)$2[t]=DI(e),uP[t]=DI(Ph(e,t)),e=jr(e,5);for(;tu)||t.q&&(i=t.C,u=i.c.c.a-i.o.a/2,r=i.n.a-n,r>u)))}function VRt(e,t){var n;Wt(t,"Partition preprocessing",1),n=c(gu(si($o(si(new ht(null,new bt(e.a,16)),new Y_e),new X_e),new J_e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),Di(n.Oc(),new Q_e),qt(t)}function pUe(e){i$();var t,n,i,r,o,u,a;for(n=new Ng,r=new q(e.e.b);r.a1?e.e*=ge(e.a):e.f/=ge(e.a),Cjt(e),O9t(e),dFt(e),pe(e.b,(o6(),Nk),e.g)}function yUe(e,t,n){var i,r,o,u,a,l;for(i=0,l=n,t||(i=n*(e.c.length-1),l*=-1),o=new q(e);o.a=0?(t||(t=new FS,i>0&&co(t,e.substr(0,i))),t.a+="\\",S_(t,n&Ni)):t&&S_(t,n&Ni);return t?t.a:e}function ext(e){var t;if(!e.a)throw V(new Ao("IDataType class expected for layout option "+e.f));if(t=uMt(e.a),t==null)throw V(new Ao("Couldn't create new instance of property '"+e.f+"'. "+mZe+(Sh(Uj),Uj.k)+gfe));return c(t,414)}function Dq(e){var t,n,i,r,o;return o=e.eh(),o&&o.kh()&&(r=S1(e,o),r!=o)?(n=e.Vg(),i=(t=e.Vg(),t>=0?e.Qg(null):e.eh().ih(e,-1-t,null,null)),e.Rg(c(r,49),n),i&&i.Fi(),e.Lg()&&e.Mg()&&n>-1&&Bn(e,new sr(e,9,n,o,r)),r):o}function MUe(e){var t,n,i,r,o,u,a,l;for(u=0,o=e.f.e,i=0;i>5,r>=e.d)return e.e<0;if(n=e.a[r],t=1<<(t&31),e.e<0){if(i=zKe(e),r>16)),15).Xc(o),a0&&(!(a1(e.a.c)&&t.n.d)&&!(h_(e.a.c)&&t.n.b)&&(t.g.d+=g.Math.max(0,i/2-.5)),!(a1(e.a.c)&&t.n.a)&&!(h_(e.a.c)&&t.n.c)&&(t.g.a-=i-1))}function TUe(e){var t,n,i,r,o;if(r=new Se,o=_Ye(e,r),t=c(B(e,(ye(),As)),10),t)for(i=new q(t.j);i.a>t,o=e.m>>t|n<<22-t,r=e.l>>t|e.m<<22-t):t<44?(u=i?Kh:0,o=n>>t-22,r=e.m>>t-22|n<<44-t):(u=i?Kh:0,o=i?qs:0,r=n>>t-44),Bc(r&qs,o&qs,u&Kh)}function kq(e){var t,n,i,r,o,u;for(this.c=new Se,this.d=e,i=Ii,r=Ii,t=$i,n=$i,u=Mn(e,0);u.b!=u.d.c;)o=c(Pn(u),8),i=g.Math.min(i,o.a),r=g.Math.min(r,o.b),t=g.Math.max(t,o.a),n=g.Math.max(n,o.b);this.a=new Ru(i,r,t-i,n-r)}function OUe(e,t){var n,i,r,o,u,a;for(o=new q(e.b);o.a0&&Q(t,42)&&(e.a.qj(),d=c(t,42),l=d.cd(),o=l==null?0:fi(l),u=rte(e.a,o),n=e.a.d[u],n)){for(i=c(n.g,367),p=n.i,a=0;a=2)for(n=r.Kc(),t=Te(n.Pb());n.Ob();)o=t,t=Te(n.Pb()),i=g.Math.min(i,(yt(t),t-(yt(o),o)));return i}function fxt(e,t){var n,i,r,o,u;i=new wi,Ri(i,t,i.c.b,i.c);do for(n=(Lt(i.b!=0),c(Fu(i,i.a.a),86)),e.b[n.g]=1,o=Mn(n.d,0);o.b!=o.d.c;)r=c(Pn(o),188),u=r.c,e.b[u.g]==1?Cn(e.a,r):e.b[u.g]==2?e.b[u.g]=1:Ri(i,u,i.c.b,i.c);while(i.b!=0)}function hxt(e,t){var n,i,r;if(le(t)===le(nn(e)))return!0;if(!Q(t,15)||(i=c(t,15),r=e.gc(),r!=i.gc()))return!1;if(Q(i,54)){for(n=0;n0&&(r=n),u=new q(e.f.e);u.a0?(t-=1,n-=1):i>=0&&r<0?(t+=1,n+=1):i>0&&r>=0?(t-=1,n+=1):(t+=1,n-=1),new yr(Ce(t),Ce(n))}function Axt(e,t){return e.ct.c?1:e.bt.b?1:e.a!=t.a?fi(e.a)-fi(t.a):e.d==(F5(),xP)&&t.d==RP?-1:e.d==RP&&t.d==xP?1:0}function FUe(e,t){var n,i,r,o,u;return o=t.a,o.c.i==t.b?u=o.d:u=o.c,o.c.i==t.b?i=o.c:i=o.d,r=r9t(e.a,u,i),r>0&&r<$E?(n=wxt(e.a,i.i,r,e.c),W$e(e.a,i.i,-n),n>0):r<0&&-r<$E?(n=mxt(e.a,i.i,-r,e.c),W$e(e.a,i.i,n),n>0):!1}function Oxt(e,t,n,i){var r,o,u,a,l,d,p,v;for(r=(t-e.d)/e.c.c.length,o=0,e.a+=n,e.d=t,v=new q(e.c);v.a>24;return u}function kxt(e){if(e.pe()){var t=e.c;t.qe()?e.o="["+t.n:t.pe()?e.o="["+t.ne():e.o="[L"+t.ne()+";",e.b=t.me()+"[]",e.k=t.oe()+"[]";return}var n=e.j,i=e.d;i=i.split("/"),e.o=NK(".",[n,NK("$",i)]),e.b=NK(".",[n,NK(".",i)]),e.k=i[i.length-1]}function Rxt(e,t){var n,i,r,o,u;for(u=null,o=new q(e.e.a);o.a=0;t-=2)for(n=0;n<=t;n+=2)(e.b[n]>e.b[n+2]||e.b[n]===e.b[n+2]&&e.b[n+1]>e.b[n+3])&&(i=e.b[n+2],e.b[n+2]=e.b[n],e.b[n]=i,i=e.b[n+3],e.b[n+3]=e.b[n+1],e.b[n+1]=i);e.c=!0}}function BUe(e,t){var n,i,r,o,u,a,l,d;for(u=t==1?BG:FG,o=u.a.ec().Kc();o.Ob();)for(r=c(o.Pb(),103),l=c(Vn(e.f.c,r),21).Kc();l.Ob();)switch(a=c(l.Pb(),46),i=c(a.b,81),d=c(a.a,189),n=d.c,r.g){case 2:case 1:i.g.d+=n;break;case 4:case 3:i.g.c+=n}}function Nxt(e,t){var n,i,r,o,u,a,l,d,p;for(d=-1,p=0,u=e,a=0,l=u.length;a0&&++p;++d}return p}function Ba(e){var t,n;return n=new lu(r1(e.gm)),n.a+="@",wn(n,(t=fi(e)>>>0,t.toString(16))),e.kh()?(n.a+=" (eProxyURI: ",nc(n,e.qh()),e.$g()&&(n.a+=" eClass: ",nc(n,e.$g())),n.a+=")"):e.$g()&&(n.a+=" (eClass: ",nc(n,e.$g()),n.a+=")"),n.a}function p6(e){var t,n,i,r;if(e.e)throw V(new Ao((Sh(mG),rz+mG.k+oz)));for(e.d==(eo(),ih)&&uD(e,ga),n=new q(e.a.a);n.a>24}return n}function $xt(e,t,n){var i,r,o;if(r=c(so(e.i,t),306),!r)if(r=new $$e(e.d,t,n),Xy(e.i,t,r),xoe(t))n3t(e.a,t.c,t.b,r);else switch(o=Ikt(t),i=c(so(e.p,o),244),o.g){case 1:case 3:r.j=!0,HN(i,t.b,r);break;case 4:case 2:r.k=!0,HN(i,t.c,r)}return r}function Kxt(e,t,n,i){var r,o,u,a,l,d;if(a=new RA,l=qc(e.e.Tg(),t),r=c(e.g,119),Wr(),c(t,66).Oj())for(u=0;u=0)return r;for(o=1,a=new q(t.j);a.a0&&t.ue((pt(r-1,e.c.length),c(e.c[r-1],10)),o)>0;)Lu(e,r,(pt(r-1,e.c.length),c(e.c[r-1],10))),--r;pt(r,e.c.length),e.c[r]=o}n.a=new en,n.b=new en}function qxt(e,t,n){var i,r,o,u,a,l,d,p;for(p=(i=c(t.e&&t.e(),9),new ku(i,c(Da(i,i.length),9),0)),l=gw(n,"[\\[\\]\\s,]+"),o=l,u=0,a=o.length;u0&&(!(a1(e.a.c)&&t.n.d)&&!(h_(e.a.c)&&t.n.b)&&(t.g.d-=g.Math.max(0,i/2-.5)),!(a1(e.a.c)&&t.n.a)&&!(h_(e.a.c)&&t.n.c)&&(t.g.a+=g.Math.max(0,i-1)))}function zUe(e,t,n){var i,r;if((e.c-e.b&e.a.length-1)==2)t==(Ie(),_t)||t==jt?(IO(c(Y5(e),15),(mu(),rh)),IO(c(Y5(e),15),U1)):(IO(c(Y5(e),15),(mu(),U1)),IO(c(Y5(e),15),rh));else for(r=new O5(e);r.a!=r.b;)i=c(t7(r),15),IO(i,n)}function zxt(e,t){var n,i,r,o,u,a,l;for(r=w_(new MQ(e)),a=new _r(r,r.c.length),o=w_(new MQ(t)),l=new _r(o,o.c.length),u=null;a.b>0&&l.b>0&&(n=(Lt(a.b>0),c(a.a.Xb(a.c=--a.b),33)),i=(Lt(l.b>0),c(l.a.Xb(l.c=--l.b),33)),n==i);)u=n;return u}function $s(e,t){var n,i,r,o,u,a;return o=e.a*ez+e.b*1502,a=e.b*ez+11,n=g.Math.floor(a*vT),o+=n,a-=n*Gue,o%=Gue,e.a=o,e.b=a,t<=24?g.Math.floor(e.a*Dhe[t]):(r=e.a*(1<=2147483648&&(i-=XH),i)}function VUe(e,t,n){var i,r,o,u;bNe(e,t)>bNe(e,n)?(i=qo(n,(Ie(),jt)),e.d=i.dc()?0:dB(c(i.Xb(0),11)),u=qo(t,Mt),e.b=u.dc()?0:dB(c(u.Xb(0),11))):(r=qo(n,(Ie(),Mt)),e.d=r.dc()?0:dB(c(r.Xb(0),11)),o=qo(t,jt),e.b=o.dc()?0:dB(c(o.Xb(0),11)))}function GUe(e){var t,n,i,r,o,u,a;if(e&&(t=e.Hh(la),t&&(u=ln(ll((!t.b&&(t.b=new Zs((ot(),Ur),ec,t)),t.b),"conversionDelegates")),u!=null))){for(a=new Se,i=gw(u,"\\w+"),r=0,o=i.length;re.c));u++)r.a>=e.s&&(o<0&&(o=u),a=u);return l=(e.s+e.c)/2,o>=0&&(i=IFt(e,t,o,a),l=Lyt((pt(i,t.c.length),c(t.c[i],329))),NRt(t,i,n)),l}function Lq(){Lq=Z,Pat=new Yr((kn(),n3),1.3),G0e=Gpe,Z0e=new Yb(15),Oat=new Yr(Sb,Z0e),kat=new Yr(Pb,15),Mat=vx,Tat=Eb,jat=Vv,Aat=G1,Iat=zv,X0e=kj,Dat=Uw,Q0e=(_se(),_at),Y0e=vat,J0e=yat,epe=Eat,U0e=mat,W0e=yx,Cat=Wpe,Ej=wat,V0e=pat,tpe=Sat}function cn(e,t,n){var i,r,o,u,a,l,d;for(u=(o=new qJ,o),ure(u,(yt(t),t)),d=(!u.b&&(u.b=new Zs((ot(),Ur),ec,u)),u.b),l=1;l0&&yKt(this,r)}function Tse(e,t,n,i,r,o){var u,a,l;if(!r[t.b]){for(r[t.b]=!0,u=i,!u&&(u=new uO),Ee(u.e,t),l=o[t.b].Kc();l.Ob();)a=c(l.Pb(),282),!(a.d==n||a.c==n)&&(a.c!=t&&Tse(e,a.c,t,u,r,o),a.d!=t&&Tse(e,a.d,t,u,r,o),Ee(u.c,a),Hi(u.d,a.b));return u}return null}function Uxt(e){var t,n,i,r,o,u,a;for(t=0,r=new q(e.e);r.a=2}function Wxt(e,t){var n,i,r,o;for(Wt(t,"Self-Loop pre-processing",1),i=new q(e.a);i.a1||(t=ui(Ga,U(G(ro,1),_e,93,0,[Uh,Ua])),hI(U8(t,e))>1)||(i=ui(Ya,U(G(ro,1),_e,93,0,[oh,pa])),hI(U8(i,e))>1))}function Jxt(e,t){var n,i,r;return n=t.Hh(e.a),n&&(r=ln(ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),"affiliation")),r!=null)?(i=Y9(r,is(35)),i==-1?SK(e,S5(e,bu(t.Hj())),r):i==0?SK(e,null,r.substr(1)):SK(e,r.substr(0,i),r.substr(i+1))):null}function Qxt(e){var t,n,i;try{return e==null?rs:Ro(e)}catch(r){if(r=gi(r),Q(r,102))return t=r,i=r1(Fs(e))+"@"+(n=(Nf(),Koe(e)>>>0),n.toString(16)),$9t(BTt(),(a_(),"Exception during lenientFormat for "+i),t),"<"+i+" threw "+r1(t.gm)+">";throw V(r)}}function YUe(e){switch(e.g){case 0:return new nCe;case 1:return new JMe;case 2:return new J8e;case 3:return new Z4e;case 4:return new mke;case 5:return new iCe;default:throw V(new St("No implementation is available for the layerer "+(e.f!=null?e.f:""+e.g)))}}function jse(e,t,n){var i,r,o;for(o=new q(e.t);o.a0&&(i.b.n-=i.c,i.b.n<=0&&i.b.u>0&&Cn(t,i.b));for(r=new q(e.i);r.a0&&(i.a.u-=i.c,i.a.u<=0&&i.a.n>0&&Cn(n,i.a))}function q7(e){var t,n,i,r,o;if(e.g==null&&(e.d=e.si(e.f),on(e,e.d),e.c))return o=e.f,o;if(t=c(e.g[e.i-1],47),r=t.Pb(),e.e=t,n=e.si(r),n.Ob())e.d=n,on(e,n);else for(e.d=null;!t.Ob()&&(vi(e.g,--e.i,null),e.i!=0);)i=c(e.g[e.i-1],47),t=i;return r}function Zxt(e,t){var n,i,r,o,u,a;if(i=t,r=i.ak(),Bh(e.e,r)){if(r.hi()&&rO(e,r,i.dd()))return!1}else for(a=qc(e.e.Tg(),r),n=c(e.g,119),o=0;o1||n>1)return 2;return t+n==1?2:0}function JUe(e,t,n){var i,r,o,u,a;for(Wt(n,"ELK Force",1),Be(Fe(Ke(t,(dl(),_de))))||V8((i=new zM((Ap(),new Ip(t))),i)),a=Iqe(t),POt(a),ijt(e,c(B(a,yde),424)),u=$Ye(e.a,a),o=u.Kc();o.Ob();)r=c(o.Pb(),231),BFt(e.b,r,yc(n,1/u.gc()));a=ZXe(u),XXe(a),qt(n)}function cLt(e,t){var n,i,r,o,u;if(Wt(t,"Breaking Point Processor",1),Cqt(e),Be(Fe(B(e,(Oe(),Tbe))))){for(r=new q(e.b);r.a=0?e._g(i,!0,!0):j0(e,o,!0),153)),c(r,215).ml(t,n)}else throw V(new St(x1+t.ne()+W6))}function lLt(e,t){var n,i,r,o,u;for(n=new Se,r=$o(new ht(null,new bt(e,16)),new GSe),o=$o(new ht(null,new bt(e,16)),new USe),u=NCt(QMt(x8(HLt(U(G(vzt,1),xe,833,0,[r,o])),new WSe))),i=1;i=2*t&&Ee(n,new uB(u[i-1]+t,u[i]-t));return n}function fLt(e,t,n){Wt(n,"Eades radial",1),n.n&&t&&Ra(n,xa(t),(ru(),Tu)),e.d=c(Ke(t,(w5(),KP)),33),e.c=ge(Te(Ke(t,(ow(),ax)))),e.e=GK(c(Ke(t,_j),293)),e.a=zAt(c(Ke(t,D0e),426)),e.b=h7t(c(Ke(t,O0e),340)),GOt(e),n.n&&t&&Ra(n,xa(t),(ru(),Tu))}function hLt(e,t,n){var i,r,o,u,a,l,d,p;if(n)for(o=n.a.length,i=new Og(o),a=(i.b-i.a)*i.c<0?(s1(),ig):new f1(i);a.Ob();)u=c(a.Pb(),19),r=A_(n,u.a),r&&(l=lMt(e,(d=(Hb(),p=new GQ,p),t&&Dse(d,t),d),r),H5(l,Ih(r,If)),x7(r,l),nse(r,l),cK(e,r,l))}function z7(e){var t,n,i,r,o,u;if(!e.j){if(u=new O6e,t=sM,o=t.a.zc(e,t),o==null){for(i=new $t(So(e));i.e!=i.i.gc();)n=c(Vt(i),26),r=z7(n),Mi(u,r),on(u,n);t.a.Bc(e)!=null}ew(u),e.j=new Im((c(ee(he((g1(),wt).o),11),18),u.i),u.g),Ls(e).b&=-33}return e.j}function dLt(e){var t,n,i,r;if(e==null)return null;if(i=Ec(e,!0),r=$T.length,rt(i.substr(i.length-r,r),$T)){if(n=i.length,n==4){if(t=(fn(0,i.length),i.charCodeAt(0)),t==43)return Cme;if(t==45)return oht}else if(n==3)return Cme}return new xQ(i)}function gLt(e){var t,n,i;return n=e.l,(n&n-1)!=0||(i=e.m,(i&i-1)!=0)||(t=e.h,(t&t-1)!=0)||t==0&&i==0&&n==0?-1:t==0&&i==0&&n!=0?tre(n):t==0&&i!=0&&n==0?tre(i)+22:t!=0&&i==0&&n==0?tre(t)+44:-1}function bLt(e,t){var n,i,r,o,u;for(Wt(t,"Edge joining",1),n=Be(Fe(B(e,(Oe(),zU)))),r=new q(e.b);r.a1)for(r=new q(e.a);r.a0),o.a.Xb(o.c=--o.b),Np(o,r),Lt(o.b3&&Vf(e,0,t-3))}function vLt(e){var t,n,i,r;return le(B(e,(Oe(),Fw)))===le((Rh(),kd))?!e.e&&le(B(e,lj))!==le((J_(),ij)):(i=c(B(e,DU),292),r=Be(Fe(B(e,kU)))||le(B(e,PP))===le((f2(),nj)),t=c(B(e,Vge),19).a,n=e.a.c.length,!r&&i!=(J_(),ij)&&(t==0||t>n))}function yLt(e){var t,n;for(n=0;n0);n++);if(n>0&&n0);t++);return t>0&&n>16!=6&&t){if(gE(e,t))throw V(new St(Y6+wUe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?rce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,6,i)),i=nte(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,6,t,t))}function Dse(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=9&&t){if(gE(e,t))throw V(new St(Y6+ZWe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?cce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,9,i)),i=ite(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,9,t,t))}function Fq(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=3&&t){if(gE(e,t))throw V(new St(Y6+QYe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?uce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,12,i)),i=tte(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,t,t))}function SE(e){var t,n,i,r,o;if(i=ra(e),o=e.j,o==null&&i)return e.$j()?null:i.zj();if(Q(i,148)){if(n=i.Aj(),n&&(r=n.Nh(),r!=e.i)){if(t=c(i,148),t.Ej())try{e.g=r.Kh(t,o)}catch(u){if(u=gi(u),Q(u,78))e.g=null;else throw V(u)}e.i=r}return e.g}return null}function eWe(e){var t;return t=new Se,Ee(t,new $y(new $e(e.c,e.d),new $e(e.c+e.b,e.d))),Ee(t,new $y(new $e(e.c,e.d),new $e(e.c,e.d+e.a))),Ee(t,new $y(new $e(e.c+e.b,e.d+e.a),new $e(e.c+e.b,e.d))),Ee(t,new $y(new $e(e.c+e.b,e.d+e.a),new $e(e.c,e.d+e.a))),t}function tWe(e,t,n,i){var r,o,u;if(u=pce(t,n),i.c[i.c.length]=t,e.j[u.p]==-1||e.j[u.p]==2||e.a[t.p])return i;for(e.j[u.p]=-1,o=new Kt(Ht(xh(u).a.Kc(),new j));dn(o);)if(r=c(rn(o),17),!(!(!Kr(r)&&!(!Kr(r)&&r.c.i.c==r.d.i.c))||r==t))return tWe(e,r,u,i);return i}function _Lt(e,t,n){var i,r,o;for(o=t.a.ec().Kc();o.Ob();)r=c(o.Pb(),79),i=c(Bt(e.b,r),266),!i&&(yi(Uf(r))==yi(M1(r))?LNt(e,r,n):Uf(r)==yi(M1(r))?Bt(e.c,r)==null&&Bt(e.b,M1(r))!=null&&RXe(e,r,n,!1):Bt(e.d,r)==null&&Bt(e.b,Uf(r))!=null&&RXe(e,r,n,!0))}function ELt(e,t){var n,i,r,o,u,a,l;for(r=e.Kc();r.Ob();)for(i=c(r.Pb(),10),a=new gc,Bo(a,i),Ji(a,(Ie(),jt)),pe(a,(ye(),IR),(Pt(),!0)),u=t.Kc();u.Ob();)o=c(u.Pb(),10),l=new gc,Bo(l,o),Ji(l,Mt),pe(l,IR,!0),n=new c0,pe(n,IR,!0),Rr(n,a),br(n,l)}function SLt(e,t,n,i){var r,o,u,a;r=XHe(e,t,n),o=XHe(e,n,t),u=c(Bt(e.c,t),112),a=c(Bt(e.c,n),112),ri.b.g&&(o.c[o.c.length]=i);return o}function PE(){PE=Z,Kv=new lC("CANDIDATE_POSITION_LAST_PLACED_RIGHT",0),e3=new lC("CANDIDATE_POSITION_LAST_PLACED_BELOW",1),HP=new lC("CANDIDATE_POSITION_WHOLE_DRAWING_RIGHT",2),qP=new lC("CANDIDATE_POSITION_WHOLE_DRAWING_BELOW",3),zP=new lC("WHOLE_DRAWING",4)}function PLt(e,t){if(Q(t,239))return eAt(e,c(t,33));if(Q(t,186))return dAt(e,c(t,118));if(Q(t,354))return C5t(e,c(t,137));if(Q(t,352))return XBt(e,c(t,79));if(t)return null;throw V(new St(Afe+C1(new Js(U(G(xt,1),xe,1,5,[t])))))}function MLt(e){var t,n,i,r,o,u,a;for(o=new wi,r=new q(e.d.a);r.a1)for(t=Jb((n=new Cg,++e.b,n),e.d),a=Mn(o,0);a.b!=a.d.c;)u=c(Pn(a),121),$a(Aa(ja(Oa(Ta(new Zu,1),0),t),u))}function kse(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=11&&t){if(gE(e,t))throw V(new St(Y6+Jse(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?ace(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,10,i)),i=fte(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,11,t,t))}function CLt(e){var t,n,i,r;for(i=new Gg(new Pg(e.b).a);i.b;)n=g0(i),r=c(n.cd(),11),t=c(n.dd(),10),pe(t,(ye(),Hn),r),pe(r,As,t),pe(r,cj,(Pt(),!0)),Ji(r,c(B(t,Zo),61)),B(t,Zo),pe(r.i,(Oe(),ji),(wr(),k4)),c(B(Nr(r.i),Cc),21).Fc((to(),p4))}function ILt(e,t,n){var i,r,o,u,a,l;if(o=0,u=0,e.c)for(l=new q(e.d.i.j);l.ao.a?-1:r.al){for(p=e.d,e.d=oe(Jwe,Bfe,63,2*l+4,0,1),o=0;o=9223372036854776e3?(F_(),che):(r=!1,e<0&&(r=!0,e=-e),i=0,e>=nb&&(i=xi(e/nb),e-=i*nb),n=0,e>=T2&&(n=xi(e/T2),e-=n*T2),t=xi(e),o=Bc(t,n,i),r&&oK(o),o)}function NLt(e,t){var n,i,r,o;for(n=!t||!e.u.Hc((js(),Wh)),o=0,r=new q(e.e.Cf());r.a=-t&&i==t?new yr(Ce(n-1),Ce(i)):new yr(Ce(n),Ce(i-1))}function cWe(){return Jr(),U(G(Izt,1),_e,77,0,[e1e,Jde,hP,VG,v1e,Xk,cR,s4,w1e,u1e,b1e,c4,m1e,o1e,y1e,Vde,eR,GG,Wk,iR,E1e,nR,Gde,p1e,S1e,rR,_1e,Yk,n1e,d1e,h1e,sR,Yde,Uk,Qk,Wde,o4,l1e,c1e,g1e,dP,Qde,Xde,f1e,s1e,Zk,oR,Ude,tR,a1e,Jk,i1e,t1e,ej,Gk,r1e,Zde])}function KLt(e,t,n){e.d=0,e.b=0,t.k==(Dt(),Mc)&&n.k==Mc&&c(B(t,(ye(),Hn)),10)==c(B(n,Hn),10)&&(D$(t).j==(Ie(),_t)?VUe(e,t,n):VUe(e,n,t)),t.k==Mc&&n.k==ur?D$(t).j==(Ie(),_t)?e.d=1:e.b=1:n.k==Mc&&t.k==ur&&(D$(n).j==(Ie(),_t)?e.b=1:e.d=1),T8t(e,t,n)}function qLt(e){var t,n,i,r,o,u,a,l,d,p,v;return v=Dce(e),t=e.a,l=t!=null,l&&v_(v,"category",e.a),r=XM(new U3(e.d)),u=!r,u&&(d=new Eg,ul(v,"knownOptions",d),n=new Wje(d),Mr(new U3(e.d),n)),o=XM(e.g),a=!o,a&&(p=new Eg,ul(v,"supportedFeatures",p),i=new Yje(p),Mr(e.g,i)),v}function HLt(e){var t,n,i,r,o,u,a,l,d;for(i=!1,t=336,n=0,o=new uke(e.length),a=e,l=0,d=a.length;l>16!=7&&t){if(gE(e,t))throw V(new St(Y6+dGe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?oce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=c(t,49).gh(e,1,Hj,i)),i=ine(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,7,t,t))}function sWe(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=3&&t){if(gE(e,t))throw V(new St(Y6+EHe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?sce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=c(t,49).gh(e,0,Vj,i)),i=rne(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,t,t))}function $q(e,t){yE();var n,i,r,o,u,a,l,d,p;return t.d>e.d&&(a=e,e=t,t=a),t.d<63?kNt(e,t):(u=(e.d&-2)<<4,d=wie(e,u),p=wie(t,u),i=nH(e,c2(d,u)),r=nH(t,c2(p,u)),l=$q(d,p),n=$q(i,r),o=$q(nH(d,i),nH(r,p)),o=lH(lH(o,l),n),o=c2(o,u),l=c2(l,u<<1),lH(lH(l,o),n))}function VLt(e,t,n){var i,r,o,u,a;for(u=Q5(e,n),a=oe(nh,Ed,10,t.length,0,1),i=0,o=u.Kc();o.Ob();)r=c(o.Pb(),11),Be(Fe(B(r,(ye(),cj))))&&(a[i++]=c(B(r,As),10));if(i=0;o+=n?1:-1)u=u|t.c.Sf(l,o,n,i&&!Be(Fe(B(t.j,(ye(),Y0))))&&!Be(Fe(B(t.j,(ye(),kv))))),u=u|t.q._f(l,o,n),u=u|GWe(e,l[o],n,i);return Yi(e.c,t),u}function G7(e,t,n){var i,r,o,u,a,l,d,p,v,A;for(p=VNe(e.j),v=0,A=p.length;v1&&(e.a=!0),sSt(c(n.b,65),Wn(Wo(c(t.b,65).c),lf(hr(Wo(c(n.b,65).a),c(t.b,65).a),r))),oNe(e,t),uWe(e,n)}function aWe(e){var t,n,i,r,o,u,a;for(o=new q(e.a.a);o.a0&&o>0?u.p=t++:i>0?u.p=n++:o>0?u.p=r++:u.p=n++}st(),cr(e.j,new z_e)}function XLt(e){var t,n;n=null,t=c(Ne(e.g,0),17);do{if(n=t.d.i,nr(n,(ye(),da)))return c(B(n,da),11).i;if(n.k!=(Dt(),Ui)&&dn(new Kt(Ht(Vi(n).a.Kc(),new j))))t=c(rn(new Kt(Ht(Vi(n).a.Kc(),new j))),17);else if(n.k!=Ui)return null}while(n&&n.k!=(Dt(),Ui));return n}function JLt(e,t){var n,i,r,o,u,a,l,d,p;for(a=t.j,u=t.g,l=c(Ne(a,a.c.length-1),113),p=(pt(0,a.c.length),c(a.c[0],113)),d=oq(e,u,l,p),o=1;od&&(l=n,p=r,d=i);t.a=p,t.c=l}function QLt(e,t){var n,i;if(i=kC(e.b,t.b),!i)throw V(new Ao("Invalid hitboxes for scanline constraint calculation."));(pqe(t.b,c(Q3t(e.b,t.b),57))||pqe(t.b,c(J3t(e.b,t.b),57)))&&(Nf(),t.b+""),e.a[t.b.f]=c(nB(e.b,t.b),57),n=c(tB(e.b,t.b),57),n&&(e.a[n.f]=t.b)}function $a(e){if(!e.a.d||!e.a.e)throw V(new Ao((Sh(Cnt),Cnt.k+" must have a source and target "+(Sh(sde),sde.k)+" specified.")));if(e.a.d==e.a.e)throw V(new Ao("Network simplex does not support self-loops: "+e.a+" "+e.a.d+" "+e.a.e));return J9(e.a.d.g,e.a),J9(e.a.e.b,e.a),e.a}function ZLt(e,t,n){var i,r,o,u,a,l,d;for(d=new o1(new UTe(e)),u=U(G(drt,1),SQe,11,0,[t,n]),a=0,l=u.length;al-e.b&&al-e.a&&a0&&++D;++A}return D}function aNt(e,t){var n,i,r,o,u;for(u=c(B(t,(A0(),g0e)),425),o=Mn(t.b,0);o.b!=o.d.c;)if(r=c(Pn(o),86),e.b[r.g]==0){switch(u.g){case 0:Nze(e,r);break;case 1:fxt(e,r)}e.b[r.g]=2}for(i=Mn(e.a,0);i.b!=i.d.c;)n=c(Pn(i),188),nw(n.b.d,n,!0),nw(n.c.b,n,!0);pe(t,(ic(),s0e),e.a)}function qc(e,t){Wr();var n,i,r,o;return t?t==(Jn(),iht)||(t==Vft||t==Ib||t==zft)&&e!=Pme?new jue(e,t):(i=c(t,677),n=i.pk(),n||(C_(wo((vs(),Ir),t)),n=i.pk()),o=(!n.i&&(n.i=new en),n.i),r=c(Uo(Po(o.f,e)),1942),!r&&Kn(o,e,r=new jue(e,t)),r):Kft}function lNt(e,t){var n,i,r,o,u,a,l,d,p;for(l=c(B(e,(ye(),Hn)),11),d=Ko(U(G(ir,1),we,8,0,[l.i.n,l.n,l.a])).a,p=e.i.n.b,n=bf(e.e),r=n,o=0,u=r.length;o0?o.a?(a=o.b.rf().a,n>a&&(r=(n-a)/2,o.d.b=r,o.d.c=r)):o.d.c=e.s+n:M5(e.u)&&(i=kce(o.b),i.c<0&&(o.d.b=-i.c),i.c+i.b>o.b.rf().a&&(o.d.c=i.c+i.b-o.b.rf().a))}function gNt(e,t){var n,i,r,o;for(Wt(t,"Semi-Interactive Crossing Minimization Processor",1),n=!1,r=new q(e.b);r.a=0){if(t==n)return new yr(Ce(-t-1),Ce(-t-1));if(t==-n)return new yr(Ce(-t),Ce(n+1))}return g.Math.abs(t)>g.Math.abs(n)?t<0?new yr(Ce(-t),Ce(n)):new yr(Ce(-t),Ce(n+1)):new yr(Ce(t+1),Ce(n))}function wNt(e){var t,n;n=c(B(e,(Oe(),zc)),163),t=c(B(e,(ye(),gb)),303),n==(Ku(),K1)?(pe(e,zc,aj),pe(e,gb,(Oh(),Ov))):n==xw?(pe(e,zc,aj),pe(e,gb,(Oh(),z2))):t==(Oh(),Ov)?(pe(e,zc,K1),pe(e,gb,rj)):t==z2&&(pe(e,zc,xw),pe(e,gb,rj))}function U7(){U7=Z,mj=new OSe,hut=Nn(new tr,(Hr(),Hc),(Jr(),Wk)),but=Cs(Nn(new tr,Hc,nR),Io,tR),put=M0(M0(b9(Cs(Nn(new tr,Af,cR),Io,oR),Pc),rR),sR),dut=Cs(Nn(Nn(Nn(new tr,B1,Xk),Pc,Qk),Pc,o4),Io,Jk),gut=Cs(Nn(Nn(new tr,Pc,o4),Pc,Uk),Io,Gk)}function w6(){w6=Z,vut=Nn(Cs(new tr,(Hr(),Io),(Jr(),i1e)),Hc,Wk),Sut=M0(M0(b9(Cs(Nn(new tr,Af,cR),Io,oR),Pc),rR),sR),yut=Cs(Nn(Nn(Nn(new tr,B1,Xk),Pc,Qk),Pc,o4),Io,Jk),Eut=Nn(Nn(new tr,Hc,nR),Io,tR),_ut=Cs(Nn(Nn(new tr,Pc,o4),Pc,Uk),Io,Gk)}function mNt(e,t,n,i,r){var o,u;(!Kr(t)&&t.c.i.c==t.d.i.c||!PKe(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])),n))&&!Kr(t)&&(t.c==r?b_(t.a,0,new go(n)):Cn(t.a,new go(n)),i&&!_h(e.a,n)&&(u=c(B(t,(Oe(),yo)),74),u||(u=new ds,pe(t,yo,u)),o=new go(n),Ri(u,o,u.c.b,u.c),Yi(e.a,o)))}function vNt(e){var t,n;for(n=new Kt(Ht(ko(e).a.Kc(),new j));dn(n);)if(t=c(rn(n),17),t.c.i.k!=(Dt(),cu))throw V(new ym(Cz+LI(e)+"' has its layer constraint set to FIRST, but has at least one incoming edge that does not come from a FIRST_SEPARATE node. That must not happen."))}function yNt(e,t,n){var i,r,o,u,a,l,d;if(r=THe(e.Db&254),r==0)e.Eb=n;else{if(r==1)a=oe(xt,xe,1,2,5,1),o=rq(e,t),o==0?(a[0]=n,a[1]=e.Eb):(a[0]=e.Eb,a[1]=n);else for(a=oe(xt,xe,1,r+1,5,1),u=$g(e.Eb),i=2,l=0,d=0;i<=128;i<<=1)i==t?a[d++]=n:(e.Db&i)!=0&&(a[d++]=u[l++]);e.Eb=a}e.Db|=t}function fWe(e,t,n){var i,r,o,u;for(this.b=new Se,r=0,i=0,u=new q(e);u.a0&&(o=c(Ne(this.b,0),167),r+=o.o,i+=o.p),r*=2,i*=2,t>1?r=xi(g.Math.ceil(r*t)):i=xi(g.Math.ceil(i/t)),this.a=new Coe(r,i)}function hWe(e,t,n,i,r,o){var u,a,l,d,p,v,A,D,L,N,z,Y;for(p=i,t.j&&t.o?(D=c(Bt(e.f,t.A),57),N=D.d.c+D.d.b,--p):N=t.a.c+t.a.b,v=r,n.q&&n.o?(D=c(Bt(e.f,n.C),57),d=D.d.c,++v):d=n.a.c,z=d-N,l=g.Math.max(2,v-p),a=z/l,L=N+a,A=p;A=0;u+=r?1:-1){for(a=t[u],l=i==(Ie(),jt)?r?qo(a,i):Kg(qo(a,i)):r?Kg(qo(a,i)):qo(a,i),o&&(e.c[a.p]=l.gc()),v=l.Kc();v.Ob();)p=c(v.Pb(),11),e.d[p.p]=d++;Hi(n,l)}}function dWe(e,t,n){var i,r,o,u,a,l,d,p;for(o=ge(Te(e.b.Kc().Pb())),d=ge(Te(jTt(t.b))),i=lf(Wo(e.a),d-n),r=lf(Wo(t.a),n-o),p=Wn(i,r),lf(p,1/(d-o)),this.a=p,this.b=new Se,a=!0,u=e.b.Kc(),u.Pb();u.Ob();)l=ge(Te(u.Pb())),a&&l-n>cV&&(this.b.Fc(n),a=!1),this.b.Fc(l);a&&this.b.Fc(n)}function _Nt(e){var t,n,i,r;if(DFt(e,e.n),e.d.c.length>0){for(LS(e.c);mse(e,c(K(new q(e.e.a)),121))>5,t&=31,i>=e.d)return e.e<0?(T1(),gG):(T1(),t4);if(o=e.d-i,r=oe(Qt,_n,25,o+1,15,1),gkt(r,o,e.a,i,t),e.e<0){for(n=0;n0&&e.a[n]<<32-t!=0){for(n=0;n=0?!1:(n=uv((vs(),Ir),r,t),n?(i=n.Zj(),(i>1||i==-1)&&o0(wo(Ir,n))!=3):!0)):!1}function MNt(e,t,n,i){var r,o,u,a,l;return a=Co(c(ee((!t.b&&(t.b=new dt(Ut,t,4,7)),t.b),0),82)),l=Co(c(ee((!t.c&&(t.c=new dt(Ut,t,5,8)),t.c),0),82)),yi(a)==yi(l)||Jp(l,a)?null:(u=KC(t),u==n?i:(o=c(Bt(e.a,u),10),o&&(r=o.e,r)?r:null))}function CNt(e,t){var n;switch(n=c(B(e,(Oe(),RR)),276),Wt(t,"Label side selection ("+n+")",1),n.g){case 0:OUe(e,(mu(),rh));break;case 1:OUe(e,(mu(),U1));break;case 2:GYe(e,(mu(),rh));break;case 3:GYe(e,(mu(),U1));break;case 4:IWe(e,(mu(),rh));break;case 5:IWe(e,(mu(),U1))}qt(t)}function $se(e,t,n){var i,r,o,u,a,l;if(i=fyt(n,e.length),u=e[i],u[0].k==(Dt(),Bi))for(o=O9e(n,u.length),l=t.j,r=0;r0&&(n[0]+=e.d,u-=n[0]),n[2]>0&&(n[2]+=e.d,u-=n[2]),o=g.Math.max(0,u),n[1]=g.Math.max(n[1],u),vie(e,Nc,r.c+i.b+n[0]-(n[1]-u)/2,n),t==Nc&&(e.c.b=o,e.c.c=r.c+i.b+(o-u)/2)}function PWe(){this.c=oe(gr,lo,25,(Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])).length,15,1),this.b=oe(gr,lo,25,U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt]).length,15,1),this.a=oe(gr,lo,25,U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt]).length,15,1),jZ(this.c,Ii),jZ(this.b,$i),jZ(this.a,$i)}function _c(e,t,n){var i,r,o,u;if(t<=n?(r=t,o=n):(r=n,o=t),i=0,e.b==null)e.b=oe(Qt,_n,25,2,15,1),e.b[0]=r,e.b[1]=o,e.c=!0;else{if(i=e.b.length,e.b[i-1]+1==r){e.b[i-1]=o;return}u=oe(Qt,_n,25,i+2,15,1),bc(e.b,0,u,0,i),e.b=u,e.b[i-1]>=r&&(e.c=!1,e.a=!1),e.b[i++]=r,e.b[i]=o,e.c||tv(e)}}function RNt(e,t,n){var i,r,o,u,a,l,d;for(d=t.d,e.a=new Dc(d.c.length),e.c=new en,a=new q(d);a.a=0?e._g(d,!1,!0):j0(e,n,!1),58));e:for(o=v.Kc();o.Ob();){for(r=c(o.Pb(),56),p=0;p1;)hw(r,r.i-1);return i}function BNt(e,t){var n,i,r,o,u,a,l;for(Wt(t,"Comment post-processing",1),o=new q(e.b);o.ae.d[u.p]&&(n+=die(e.b,o),w1(e.a,Ce(o)));for(;!xS(e.a);)zie(e.b,c(Qy(e.a),19).a)}return n}function TWe(e,t,n){var i,r,o,u;for(o=(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i,r=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));r.e!=r.i.gc();)i=c(Vt(r),33),(!i.a&&(i.a=new Me(Ei,i,10,11)),i.a).i==0||(o+=TWe(e,i,!1));if(n)for(u=yi(t);u;)o+=(!u.a&&(u.a=new Me(Ei,u,10,11)),u.a).i,u=yi(u);return o}function hw(e,t){var n,i,r,o;return e.ej()?(i=null,r=e.fj(),e.ij()&&(i=e.kj(e.pi(t),null)),n=e.Zi(4,o=v2(e,t),null,t,r),e.bj()&&o!=null&&(i=e.dj(o,i)),i?(i.Ei(n),i.Fi()):e.$i(n),o):(o=v2(e,t),e.bj()&&o!=null&&(i=e.dj(o,null),i&&i.Fi()),o)}function KNt(e){var t,n,i,r,o,u,a,l,d,p;for(d=e.a,t=new er,l=0,i=new q(e.d);i.aa.d&&(p=a.d+a.a+d));n.c.d=p,t.a.zc(n,t),l=g.Math.max(l,n.c.d+n.c.a)}return l}function to(){to=Z,yR=new Op("COMMENTS",0),Gu=new Op("EXTERNAL_PORTS",1),mP=new Op("HYPEREDGES",2),_R=new Op("HYPERNODES",3),p4=new Op("NON_FREE_PORTS",4),Av=new Op("NORTH_SOUTH_PORTS",5),vP=new Op(qQe,6),g4=new Op("CENTER_LABELS",7),b4=new Op("END_LABELS",8),ER=new Op("PARTITIONS",9)}function dw(e){var t,n,i,r,o;for(r=new Se,t=new _5((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a)),i=new Kt(Ht(Fh(e).a.Kc(),new j));dn(i);)n=c(rn(i),79),Q(ee((!n.b&&(n.b=new dt(Ut,n,4,7)),n.b),0),186)||(o=Co(c(ee((!n.c&&(n.c=new dt(Ut,n,5,8)),n.c),0),82)),t.a._b(o)||(r.c[r.c.length]=o));return r}function qNt(e){var t,n,i,r,o,u;for(o=new er,t=new _5((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a)),r=new Kt(Ht(Fh(e).a.Kc(),new j));dn(r);)i=c(rn(r),79),Q(ee((!i.b&&(i.b=new dt(Ut,i,4,7)),i.b),0),186)||(u=Co(c(ee((!i.c&&(i.c=new dt(Ut,i,5,8)),i.c),0),82)),t.a._b(u)||(n=o.a.zc(u,o),n==null));return o}function HNt(e,t,n,i,r){return i<0?(i=ev(e,r,U(G(Re,1),we,2,6,[TH,jH,AH,OH,C2,DH,kH,RH,xH,LH,NH,FH]),t),i<0&&(i=ev(e,r,U(G(Re,1),we,2,6,["Jan","Feb","Mar","Apr",C2,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),t)),i<0?!1:(n.k=i,!0)):i>0?(n.k=i-1,!0):!1}function zNt(e,t,n,i,r){return i<0?(i=ev(e,r,U(G(Re,1),we,2,6,[TH,jH,AH,OH,C2,DH,kH,RH,xH,LH,NH,FH]),t),i<0&&(i=ev(e,r,U(G(Re,1),we,2,6,["Jan","Feb","Mar","Apr",C2,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),t)),i<0?!1:(n.k=i,!0)):i>0?(n.k=i-1,!0):!1}function VNt(e,t,n,i,r,o){var u,a,l,d;if(a=32,i<0){if(t[0]>=e.length||(a=Pr(e,t[0]),a!=43&&a!=45)||(++t[0],i=B7(e,t),i<0))return!1;a==45&&(i=-i)}return a==32&&t[0]-n==2&&r.b==2&&(l=new u9,d=l.q.getFullYear()-O1+O1-80,u=d%100,o.a=i==u,i+=(d/100|0)*100+(i=d&&(l=i);l&&(p=g.Math.max(p,l.a.o.a)),p>A&&(v=d,A=p)}return v}function WNt(e,t,n){var i,r,o;if(e.e=n,e.d=0,e.b=0,e.f=1,e.i=t,(e.e&16)==16&&(e.i=RFt(e.i)),e.j=e.i.length,xn(e),o=P0(e),e.d!=e.j)throw V(new an(gn((un(),fet))));if(e.g){for(i=0;ifZe?cr(l,e.b):i<=fZe&&i>hZe?cr(l,e.d):i<=hZe&&i>dZe?cr(l,e.c):i<=dZe&&cr(l,e.a),o=DWe(e,l,o);return r}function T1(){T1=Z;var e;for(Ck=new ld(1,1),bG=new ld(1,10),t4=new ld(0,0),gG=new ld(-1,1),Che=U(G(Ev,1),we,91,0,[t4,Ck,new ld(1,2),new ld(1,3),new ld(1,4),new ld(1,5),new ld(1,6),new ld(1,7),new ld(1,8),new ld(1,9),bG]),Ik=oe(Ev,we,91,32,0,1),e=0;e1,a&&(i=new $e(r,n.b),Cn(t.a,i)),q5(t.a,U(G(ir,1),we,8,0,[A,v]))}function NWe(e){Gb(e,new Zg(qb(Bb(Kb($b(new _g,ZD),"ELK Randomizer"),'Distributes the nodes randomly on the plane, leading to very obfuscating layouts. Can be useful to demonstrate the power of "real" layout algorithms.'),new l6e))),je(e,ZD,N0,Lwe),je(e,ZD,_w,15),je(e,ZD,MD,Ce(0)),je(e,ZD,D2,KE)}function Hse(){Hse=Z;var e,t,n,i,r,o;for(fM=oe(Ps,vv,25,255,15,1),Vx=oe(Yu,vf,25,16,15,1),t=0;t<255;t++)fM[t]=-1;for(n=57;n>=48;n--)fM[n]=n-48<<24>>24;for(i=70;i>=65;i--)fM[i]=i-65+10<<24>>24;for(r=102;r>=97;r--)fM[r]=r-97+10<<24>>24;for(o=0;o<10;o++)Vx[o]=48+o&Ni;for(e=10;e<=15;e++)Vx[e]=65+e-10&Ni}function Y7(e,t,n){var i,r,o,u,a,l,d,p;return a=t.i-e.g/2,l=n.i-e.g/2,d=t.j-e.g/2,p=n.j-e.g/2,o=t.g+e.g/2,u=n.g+e.g/2,i=t.f+e.g/2,r=n.f+e.g/2,a>19!=0)return"-"+FWe(Z_(e));for(n=e,i="";!(n.l==0&&n.m==0&&n.h==0);){if(r=_$(pD),n=_ue(n,r,!0),t=""+X9e(L1),!(n.l==0&&n.m==0&&n.h==0))for(o=9-t.length;o>0;o--)t="0"+t;i=t+i}return i}function eFt(){if(!Object.create||!Object.getOwnPropertyNames)return!1;var e="__proto__",t=Object.create(null);if(t[e]!==void 0)return!1;var n=Object.getOwnPropertyNames(t);return!(n.length!=0||(t[e]=42,t[e]!==42)||Object.getOwnPropertyNames(t).length==0)}function tFt(e){var t,n,i,r,o,u,a;for(t=!1,n=0,r=new q(e.d.b);r.a=e.a||!Ace(t,n))return-1;if(O_(c(i.Kb(t),20)))return 1;for(r=0,u=c(i.Kb(t),20).Kc();u.Ob();)if(o=c(u.Pb(),17),l=o.c.i==t?o.d.i:o.c.i,a=Vse(e,l,n,i),a==-1||(r=g.Math.max(r,a),r>e.c-1))return-1;return r+1}function BWe(e,t){var n,i,r,o,u,a;if(le(t)===le(e))return!0;if(!Q(t,15)||(i=c(t,15),a=e.gc(),i.gc()!=a))return!1;if(u=i.Kc(),e.ni()){for(n=0;n0){if(e.qj(),t!=null){for(o=0;o>24;case 97:case 98:case 99:case 100:case 101:case 102:return e-97+10<<24>>24;case 65:case 66:case 67:case 68:case 69:case 70:return e-65+10<<24>>24;default:throw V(new uf("Invalid hexadecimal"))}}function oFt(e,t,n){var i,r,o,u;for(Wt(n,"Processor order nodes",2),e.a=ge(Te(B(t,(A0(),b0e)))),r=new wi,u=Mn(t.b,0);u.b!=u.d.c;)o=c(Pn(u),86),Be(Fe(B(o,(ic(),Gw))))&&Ri(r,o,r.c.b,r.c);i=(Lt(r.b!=0),c(r.a.a.c,86)),oXe(e,i),!n.b&&G$(n,1),Xse(e,i,0-ge(Te(B(i,(ic(),ix))))/2,0),!n.b&&G$(n,1),qt(n)}function X7(){X7=Z,ode=new Pm("SPIRAL",0),tde=new Pm("LINE_BY_LINE",1),nde=new Pm("MANHATTAN",2),ede=new Pm("JITTER",3),_G=new Pm("QUADRANTS_LINE_BY_LINE",4),rde=new Pm("QUADRANTS_MANHATTAN",5),ide=new Pm("QUADRANTS_JITTER",6),Zhe=new Pm("COMBINE_LINE_BY_LINE_MANHATTAN",7),Qhe=new Pm("COMBINE_JITTER_MANHATTAN",8)}function KWe(e,t,n,i){var r,o,u,a,l,d;for(l=lq(e,n),d=lq(t,n),r=!1;l&&d&&(i||tOt(l,d,n));)u=lq(l,n),a=lq(d,n),tI(t),tI(e),o=l.c,gH(l,!1),gH(d,!1),n?(cw(t,d.p,o),t.p=d.p,cw(e,l.p+1,o),e.p=l.p):(cw(e,l.p,o),e.p=l.p,cw(t,d.p+1,o),t.p=d.p),po(l,null),po(d,null),l=u,d=a,r=!0;return r}function cFt(e,t,n,i){var r,o,u,a,l;for(r=!1,o=!1,a=new q(i.j);a.a=t.length)throw V(new ho("Greedy SwitchDecider: Free layer not in graph."));this.c=t[e],this.e=new IC(i),X$(this.e,this.c,(Ie(),Mt)),this.i=new IC(i),X$(this.i,this.c,jt),this.f=new BRe(this.c),this.a=!o&&r.i&&!r.s&&this.c[0].k==(Dt(),Bi),this.a&&Skt(this,e,t.length)}function HWe(e,t){var n,i,r,o,u,a;o=!e.B.Hc((Ks(),Kj)),u=e.B.Hc(oY),e.a=new FHe(u,o,e.c),e.n&&xne(e.a.n,e.n),HN(e.g,(al(),Nc),e.a),t||(i=new r6(1,o,e.c),i.n.a=e.k,Xy(e.p,(Ie(),_t),i),r=new r6(1,o,e.c),r.n.d=e.k,Xy(e.p,Yt,r),a=new r6(0,o,e.c),a.n.c=e.k,Xy(e.p,Mt,a),n=new r6(0,o,e.c),n.n.b=e.k,Xy(e.p,jt,n))}function uFt(e){var t,n,i;switch(t=c(B(e.d,(Oe(),zh)),218),t.g){case 2:n=FHt(e);break;case 3:n=(i=new Se,Di(si(Yc($o($o(new ht(null,new bt(e.d.b,16)),new c4e),new s4e),new u4e),new UEe),new STe(i)),i);break;default:throw V(new Ao("Compaction not supported for "+t+" edges."))}cKt(e,n),Mr(new U3(e.g),new _Te(e))}function aFt(e,t){var n;return n=new bN,t&&Mo(n,c(Bt(e.a,Hj),94)),Q(t,470)&&Mo(n,c(Bt(e.a,zj),94)),Q(t,354)?(Mo(n,c(Bt(e.a,Lo),94)),n):(Q(t,82)&&Mo(n,c(Bt(e.a,Ut),94)),Q(t,239)?(Mo(n,c(Bt(e.a,Ei),94)),n):Q(t,186)?(Mo(n,c(Bt(e.a,Vs),94)),n):(Q(t,352)&&Mo(n,c(Bt(e.a,rr),94)),n))}function dl(){dl=Z,r4=new Yr((kn(),Sx),Ce(1)),Kk=new Yr(Pb,80),Lit=new Yr(dwe,5),Iit=new Yr(n3,KE),Rit=new Yr(eY,Ce(1)),xit=new Yr(tY,(Pt(),!0)),Ede=new Yb(50),Dit=new Yr(Sb,Ede),vde=yx,Sde=UP,Tit=new Yr(VW,!1),_de=kj,Oit=G1,Ait=Eb,jit=zv,kit=Uw,yde=(Hce(),yit),kG=Pit,$k=vit,DG=_it,Pde=Sit}function lFt(e){var t,n,i,r,o,u,a,l;for(l=new VFe,a=new q(e.a);a.a0&&t=0)return!1;if(t.p=n.b,Ee(n.e,t),r==(Dt(),ur)||r==Mc){for(u=new q(t.j);u.a1||u==-1)&&(o|=16),(r.Bb&rc)!=0&&(o|=64)),(n.Bb&Vr)!=0&&(o|=Iw),o|=Ka):Q(t,457)?o|=512:(i=t.Bj(),i&&(i.i&1)!=0&&(o|=256)),(e.Bb&512)!=0&&(o|=128),o}function m6(e,t){var n,i,r,o,u;for(e=e==null?rs:(yt(e),e),r=0;re.d[a.p]&&(n+=die(e.b,o),w1(e.a,Ce(o)))):++u;for(n+=e.b.d*u;!xS(e.a);)zie(e.b,c(Qy(e.a),19).a)}return n}function vFt(e,t){var n;return e.f==wY?(n=o0(wo((vs(),Ir),t)),e.e?n==4&&t!=(E2(),a3)&&t!=(E2(),u3)&&t!=(E2(),mY)&&t!=(E2(),vY):n==2):e.d&&(e.d.Hc(t)||e.d.Hc(r2(wo((vs(),Ir),t)))||e.d.Hc(uv((vs(),Ir),e.b,t)))?!0:e.f&&Rse((vs(),e.f),LC(wo(Ir,t)))?(n=o0(wo(Ir,t)),e.e?n==4:n==2):!1}function yFt(e,t,n,i){var r,o,u,a,l,d,p,v;return u=c(Ke(n,(kn(),i3)),8),l=u.a,p=u.b+e,r=g.Math.atan2(p,l),r<0&&(r+=pv),r+=t,r>pv&&(r-=pv),a=c(Ke(i,i3),8),d=a.a,v=a.b+e,o=g.Math.atan2(v,d),o<0&&(o+=pv),o+=t,o>pv&&(o-=pv),Il(),Na(1e-10),g.Math.abs(r-o)<=1e-10||r==o||isNaN(r)&&isNaN(o)?0:ro?1:Wb(isNaN(r),isNaN(o))}function Vq(e){var t,n,i,r,o,u,a;for(a=new en,i=new q(e.a.b);i.a=e.o)throw V(new RQ);a=t>>5,u=t&31,o=Ph(1,tn(Ph(u,1))),r?e.n[n][a]=Dl(e.n[n][a],o):e.n[n][a]=Xi(e.n[n][a],Bte(o)),o=Ph(o,1),i?e.n[n][a]=Dl(e.n[n][a],o):e.n[n][a]=Xi(e.n[n][a],Bte(o))}catch(l){throw l=gi(l),Q(l,320)?V(new ho(hz+e.o+"*"+e.p+dz+t+zr+n+gz)):V(l)}}function Xse(e,t,n,i){var r,o,u;t&&(o=ge(Te(B(t,(ic(),Ad))))+i,u=n+ge(Te(B(t,ix)))/2,pe(t,wW,Ce(tn(ns(g.Math.round(o))))),pe(t,u0e,Ce(tn(ns(g.Math.round(u))))),t.d.b==0||Xse(e,c(G9((r=Mn(new t1(t).a.d,0),new Dy(r))),86),n+ge(Te(B(t,ix)))+e.a,i+ge(Te(B(t,C4)))),B(t,pW)!=null&&Xse(e,c(B(t,pW),86),n,i))}function EFt(e,t){var n,i,r,o,u,a,l,d,p,v,A;for(l=Nr(t.a),r=ge(Te(B(l,(Oe(),vb))))*2,p=ge(Te(B(l,Nv))),d=g.Math.max(r,p),o=oe(gr,lo,25,t.f-t.c+1,15,1),i=-d,n=0,a=t.b.Kc();a.Ob();)u=c(a.Pb(),10),i+=e.a[u.c.p]+d,o[n++]=i;for(i+=e.a[t.a.c.p]+d,o[n++]=i,A=new q(t.e);A.a0&&(i=(!e.n&&(e.n=new Me(Lo,e,1,7)),c(ee(e.n,0),137)).a,!i||wn(wn((t.a+=' "',t),i),'"'))),wn(zb(wn(zb(wn(zb(wn(zb((t.a+=" (",t),e.i),","),e.j)," | "),e.g),","),e.f),")"),t.a)}function ZWe(e){var t,n,i;return(e.Db&64)!=0?_q(e):(t=new lu(_fe),n=e.k,n?wn(wn((t.a+=' "',t),n),'"'):(!e.n&&(e.n=new Me(Lo,e,1,7)),e.n.i>0&&(i=(!e.n&&(e.n=new Me(Lo,e,1,7)),c(ee(e.n,0),137)).a,!i||wn(wn((t.a+=' "',t),i),'"'))),wn(zb(wn(zb(wn(zb(wn(zb((t.a+=" (",t),e.i),","),e.j)," | "),e.g),","),e.f),")"),t.a)}function Uq(e,t){var n,i,r,o,u,a,l;if(t==null||t.length==0)return null;if(r=c(mc(e.a,t),149),!r){for(i=(a=new yh(e.b).a.vc().Kc(),new Cp(a));i.a.Ob();)if(n=(o=c(i.a.Pb(),42),c(o.dd(),149)),u=n.c,l=t.length,rt(u.substr(u.length-l,l),t)&&(t.length==u.length||Pr(u,u.length-t.length-1)==46)){if(r)return null;r=n}r&&bo(e.a,t,r)}return r}function MFt(e,t){var n,i,r,o;return n=new E2e,i=c(gu(Yc(new ht(null,new bt(e.f,16)),n),Wp(new Rs,new xs,new Mp,new ed,U(G(Hs,1),_e,132,0,[(Fl(),Tw),Su]))),21),r=i.gc(),i=c(gu(Yc(new ht(null,new bt(t.f,16)),n),Wp(new Rs,new xs,new Mp,new ed,U(G(Hs,1),_e,132,0,[Tw,Su]))),21),o=i.gc(),rr.p?(Ji(o,Yt),o.d&&(a=o.o.b,t=o.a.b,o.a.b=a-t)):o.j==Yt&&r.p>e.p&&(Ji(o,_t),o.d&&(a=o.o.b,t=o.a.b,o.a.b=-(a-t)));break}return r}function IFt(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L;if(o=n,n1,a&&(i=new $e(r,n.b),Cn(t.a,i)),q5(t.a,U(G(ir,1),we,8,0,[A,v]))}function Wq(e,t,n){var i,r,o,u,a,l;if(t)if(n<=-1){if(i=at(t.Tg(),-1-n),Q(i,99))return c(i,18);for(u=c(t.ah(i),153),a=0,l=u.gc();a0){for(r=l.length;r>0&&l[r-1]=="";)--r;r=40,u&&FBt(e),q$t(e),_Nt(e),n=PHe(e),i=0;n&&i0&&Cn(e.f,o)):(e.c[u]-=d+1,e.c[u]<=0&&e.a[u]>0&&Cn(e.e,o))))}function ZFt(e){var t,n,i,r,o,u,a,l,d;for(a=new o1(c(nn(new P2e),62)),d=$i,n=new q(e.d);n.a=0&&ln?t:n;d<=v;++d)d==n?a=i++:(o=r[d],p=L.rl(o.ak()),d==t&&(l=d==v&&!p?i-1:i),p&&++i);return A=c(t6(e,t,n),72),a!=l&&Q3(e,new QC(e.e,7,u,Ce(a),D.dd(),l)),A}}else return c(Aq(e,t,n),72);return c(t6(e,t,n),72)}function iBt(e,t){var n,i,r,o,u,a,l;for(Wt(t,"Port order processing",1),l=c(B(e,(Oe(),vbe)),421),i=new q(e.b);i.a=0&&(a=cOt(e,u),!(a&&(d<22?l.l|=1<>>1,u.m=p>>>1|(v&1)<<21,u.l=A>>>1|(p&1)<<21,--d;return n&&oK(l),o&&(i?(L1=Z_(e),r&&(L1=hqe(L1,(F_(),she)))):L1=Bc(e.l,e.m,e.h)),l}function cBt(e,t){var n,i,r,o,u,a,l,d,p,v;for(d=e.e[t.c.p][t.p]+1,l=t.c.a.c.length+1,a=new q(e.a);a.a0&&(fn(0,e.length),e.charCodeAt(0)==45||(fn(0,e.length),e.charCodeAt(0)==43))?1:0,i=u;in)throw V(new uf(L0+e+'"'));return a}function sBt(e){var t,n,i,r,o,u,a;for(u=new wi,o=new q(e.a);o.a1)&&t==1&&c(e.a[e.b],10).k==(Dt(),cu)?P2(c(e.a[e.b],10),(mu(),rh)):i&&(!n||(e.c-e.b&e.a.length-1)>1)&&t==1&&c(e.a[e.c-1&e.a.length-1],10).k==(Dt(),cu)?P2(c(e.a[e.c-1&e.a.length-1],10),(mu(),U1)):(e.c-e.b&e.a.length-1)==2?(P2(c(Y5(e),10),(mu(),rh)),P2(c(Y5(e),10),U1)):tLt(e,r),fie(e)}function lBt(e,t,n){var i,r,o,u,a;for(o=0,r=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));r.e!=r.i.gc();)i=c(Vt(r),33),u="",(!i.n&&(i.n=new Me(Lo,i,1,7)),i.n).i==0||(u=c(ee((!i.n&&(i.n=new Me(Lo,i,1,7)),i.n),0),137).a),a=new uK(o++,t,u),Mo(a,i),pe(a,(ic(),$P),i),a.e.b=i.j+i.f/2,a.f.a=g.Math.max(i.g,1),a.e.a=i.i+i.g/2,a.f.b=g.Math.max(i.f,1),Cn(t.b,a),Kc(n.f,i,a)}function fBt(e){var t,n,i,r,o;i=c(B(e,(ye(),Hn)),33),o=c(Ke(i,(Oe(),wb)),174).Hc((ou(),Cb)),e.e||(r=c(B(e,Cc),21),t=new $e(e.f.a+e.d.b+e.d.c,e.f.b+e.d.d+e.d.a),r.Hc((to(),Gu))?(ao(i,ji,(wr(),Ic)),k0(i,t.a,t.b,!1,!0)):Be(Fe(Ke(i,$U)))||k0(i,t.a,t.b,!0,!0)),o?ao(i,wb,nt(Cb)):ao(i,wb,(n=c(rl(tM),9),new ku(n,c(Da(n,n.length),9),0)))}function rue(e,t,n){var i,r,o,u;if(t[0]>=e.length)return n.o=0,!0;switch(Pr(e,t[0])){case 43:r=1;break;case 45:r=-1;break;default:return n.o=0,!0}if(++t[0],o=t[0],u=B7(e,t),u==0&&t[0]==o)return!1;if(t[0]=0&&a!=n&&(o=new sr(e,1,a,u,null),i?i.Ei(o):i=o),n>=0&&(o=new sr(e,1,n,a==n?u:null,t),i?i.Ei(o):i=o)),i}function wYe(e){var t,n,i;if(e.b==null){if(i=new nd,e.i!=null&&(co(i,e.i),i.a+=":"),(e.f&256)!=0){for((e.f&256)!=0&&e.a!=null&&(I5t(e.i)||(i.a+="//"),co(i,e.a)),e.d!=null&&(i.a+="/",co(i,e.d)),(e.f&16)!=0&&(i.a+="/"),t=0,n=e.j.length;tA?!1:(v=(l=P6(i,A,!1),l.a),p+a+v<=t.b&&(JC(n,o-n.s),n.c=!0,JC(i,o-n.s),kI(i,n.s,n.t+n.d+a),i.k=!0,pre(n.q,i),D=!0,r&&(OO(t,i),i.j=t,e.c.length>u&&(FI((pt(u,e.c.length),c(e.c[u],200)),i),(pt(u,e.c.length),c(e.c[u],200)).a.c.length==0&&ad(e,u)))),D)}function vBt(e,t){var n,i,r,o,u,a;if(Wt(t,"Partition midprocessing",1),r=new u0,Di(si(new ht(null,new bt(e.a,16)),new G_e),new sTe(r)),r.d!=0){for(a=c(gu(lNe((o=r.i,new ht(null,(o||(r.i=new Dm(r,r.c))).Nc()))),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),i=a.Kc(),n=c(i.Pb(),19);i.Ob();)u=c(i.Pb(),19),ELt(c(Vn(r,n),21),c(Vn(r,u),21)),n=u;qt(t)}}function yYe(e,t,n){var i,r,o,u,a,l,d,p;if(t.p==0){for(t.p=1,u=n,u||(r=new Se,o=(i=c(rl(Gr),9),new ku(i,c(Da(i,i.length),9),0)),u=new yr(r,o)),c(u.a,15).Fc(t),t.k==(Dt(),Bi)&&c(u.b,21).Fc(c(B(t,(ye(),Zo)),61)),l=new q(t.j);l.a0){if(r=c(e.Ab.g,1934),t==null){for(o=0;o1)for(i=new q(r);i.an.s&&aa&&(a=r,p.c=oe(xt,xe,1,0,5,1)),r==a&&Ee(p,new yr(n.c.i,n)));st(),cr(p,e.c),Bp(e.b,l.p,p)}}function MBt(e,t){var n,i,r,o,u,a,l,d,p;for(u=new q(t.b);u.aa&&(a=r,p.c=oe(xt,xe,1,0,5,1)),r==a&&Ee(p,new yr(n.d.i,n)));st(),cr(p,e.c),Bp(e.f,l.p,p)}}function EYe(e){Gb(e,new Zg(qb(Bb(Kb($b(new _g,$0),"ELK Box"),"Algorithm for packing of unconnected boxes, i.e. graphs without edges."),new X5e))),je(e,$0,N0,xpe),je(e,$0,_w,15),je(e,$0,ST,Ce(0)),je(e,$0,XD,Le(Dpe)),je(e,$0,gv,Le(blt)),je(e,$0,k2,Le(plt)),je(e,$0,D2,yZe),je(e,$0,PT,Le(kpe)),je(e,$0,R2,Le(Rpe)),je(e,$0,bfe,Le(KW)),je(e,$0,zD,Le(glt))}function SYe(e,t){var n,i,r,o,u,a,l,d,p;if(r=e.i,u=r.o.a,o=r.o.b,u<=0&&o<=0)return Ie(),Vo;switch(d=e.n.a,p=e.n.b,a=e.o.a,n=e.o.b,t.g){case 2:case 1:if(d<0)return Ie(),Mt;if(d+a>u)return Ie(),jt;break;case 4:case 3:if(p<0)return Ie(),_t;if(p+n>o)return Ie(),Yt}return l=(d+a/2)/u,i=(p+n/2)/o,l+i<=1&&l-i<=0?(Ie(),Mt):l+i>=1&&l-i>=0?(Ie(),jt):i<.5?(Ie(),_t):(Ie(),Yt)}function CBt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(n=!1,p=ge(Te(B(t,(Oe(),np)))),L=A1*p,r=new q(t.b);r.al+L&&(N=v.g+A.g,A.a=(A.g*A.a+v.g*v.a)/N,A.g=N,v.f=A,n=!0)),o=a,v=A;return n}function PYe(e,t,n,i,r,o,u){var a,l,d,p,v,A;for(A=new zy,d=t.Kc();d.Ob();)for(a=c(d.Pb(),839),v=new q(a.wf());v.a0?a.a?(d=a.b.rf().b,r>d&&(e.v||a.c.d.c.length==1?(u=(r-d)/2,a.d.d=u,a.d.a=u):(n=c(Ne(a.c.d,0),181).rf().b,i=(n-d)/2,a.d.d=g.Math.max(0,i),a.d.a=r-i-d))):a.d.a=e.t+r:M5(e.u)&&(o=kce(a.b),o.d<0&&(a.d.d=-o.d),o.d+o.a>a.b.rf().b&&(a.d.a=o.d+o.a-a.b.rf().b))}function jBt(e,t){var n;switch(oI(e)){case 6:return fr(t);case 7:return kp(t);case 8:return Dp(t);case 3:return Array.isArray(t)&&(n=oI(t),!(n>=14&&n<=16));case 11:return t!=null&&typeof t===EH;case 12:return t!=null&&(typeof t===aT||typeof t==EH);case 0:return VK(t,e.__elementTypeId$);case 2:return jB(t)&&t.im!==ct;case 1:return jB(t)&&t.im!==ct||VK(t,e.__elementTypeId$);default:return!0}}function MYe(e,t){var n,i,r,o;return i=g.Math.min(g.Math.abs(e.c-(t.c+t.b)),g.Math.abs(e.c+e.b-t.c)),o=g.Math.min(g.Math.abs(e.d-(t.d+t.a)),g.Math.abs(e.d+e.a-t.d)),n=g.Math.abs(e.c+e.b/2-(t.c+t.b/2)),n>e.b/2+t.b/2||(r=g.Math.abs(e.d+e.a/2-(t.d+t.a/2)),r>e.a/2+t.a/2)?1:n==0&&r==0?0:n==0?o/r+1:r==0?i/n+1:g.Math.min(i/n,o/r)+1}function CYe(e,t){var n,i,r,o,u,a;return r=ere(e),a=ere(t),r==a?e.e==t.e&&e.a<54&&t.a<54?e.ft.f?1:0:(i=e.e-t.e,n=(e.d>0?e.d:g.Math.floor((e.a-1)*NJe)+1)-(t.d>0?t.d:g.Math.floor((t.a-1)*NJe)+1),n>i+1?r:n0&&(u=Fm(u,WYe(i))),rze(o,u))):r0&&e.d!=($5(),LG)&&(a+=u*(i.d.a+e.a[t.b][i.b]*(t.d.a-i.d.a)/n)),n>0&&e.d!=($5(),RG)&&(l+=u*(i.d.b+e.a[t.b][i.b]*(t.d.b-i.d.b)/n)));switch(e.d.g){case 1:return new $e(a/o,t.d.b);case 2:return new $e(t.d.a,l/o);default:return new $e(a/o,l/o)}}function IYe(e,t){iE();var n,i,r,o,u;if(u=c(B(e.i,(Oe(),ji)),98),o=e.j.g-t.j.g,o!=0||!(u==(wr(),Mb)||u==ch||u==Ic))return 0;if(u==(wr(),Mb)&&(n=c(B(e,Td),19),i=c(B(t,Td),19),n&&i&&(r=n.a-i.a,r!=0)))return r;switch(e.j.g){case 1:return zi(e.n.a,t.n.a);case 2:return zi(e.n.b,t.n.b);case 3:return zi(t.n.a,e.n.a);case 4:return zi(t.n.b,e.n.b);default:throw V(new Ao(Pae))}}function TYe(e){var t,n,i,r,o,u;for(n=(!e.a&&(e.a=new qi(ma,e,5)),e.a).i+2,u=new Dc(n),Ee(u,new $e(e.j,e.k)),Di(new ht(null,(!e.a&&(e.a=new qi(ma,e,5)),new bt(e.a,16))),new Eje(u)),Ee(u,new $e(e.b,e.c)),t=1;t0&&(vI(l,!1,(eo(),ga)),vI(l,!0,Va)),Zc(t.g,new vOe(e,n)),Kn(e.g,t,n)}function AYe(){AYe=Z;var e;for(bhe=U(G(Qt,1),_n,25,15,[-1,-1,30,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5]),hG=oe(Qt,_n,25,37,15,1),ent=U(G(Qt,1),_n,25,15,[-1,-1,63,40,32,28,25,23,21,20,19,19,18,18,17,17,16,16,16,15,15,15,15,14,14,14,14,14,14,13,13,13,13,13,13,13,13]),phe=oe(rg,WH,25,37,14,1),e=2;e<=36;e++)hG[e]=xi(g.Math.pow(e,bhe[e])),phe[e]=BI(dD,hG[e])}function OBt(e){var t;if((!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i!=1)throw V(new St(BZe+(!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i));return t=new ds,wI(c(ee((!e.b&&(e.b=new dt(Ut,e,4,7)),e.b),0),82))&&qr(t,hJe(e,wI(c(ee((!e.b&&(e.b=new dt(Ut,e,4,7)),e.b),0),82)),!1)),wI(c(ee((!e.c&&(e.c=new dt(Ut,e,5,8)),e.c),0),82))&&qr(t,hJe(e,wI(c(ee((!e.c&&(e.c=new dt(Ut,e,5,8)),e.c),0),82)),!0)),t}function OYe(e,t){var n,i,r,o,u;for(t.d?r=e.a.c==(gf(),ip)?ko(t.b):Vi(t.b):r=e.a.c==(gf(),jd)?ko(t.b):Vi(t.b),o=!1,i=new Kt(Ht(r.a.Kc(),new j));dn(i);)if(n=c(rn(i),17),u=Be(e.a.f[e.a.g[t.b.p].p]),!(!u&&!Kr(n)&&n.c.i.c==n.d.i.c)&&!(Be(e.a.n[e.a.g[t.b.p].p])||Be(e.a.n[e.a.g[t.b.p].p]))&&(o=!0,_h(e.b,e.a.g[K8t(n,t.b).p])))return t.c=!0,t.a=n,t;return t.c=o,t.a=null,t}function DBt(e,t,n,i,r){var o,u,a,l,d,p,v;for(st(),cr(e,new s6e),a=new _r(e,0),v=new Se,o=0;a.bo*2?(p=new TO(v),d=ws(u)/eu(u),l=mH(p,t,new Ry,n,i,r,d),Wn(ol(p.e),l),v.c=oe(xt,xe,1,0,5,1),o=0,v.c[v.c.length]=p,v.c[v.c.length]=u,o=ws(p)*eu(p)+ws(u)*eu(u)):(v.c[v.c.length]=u,o+=ws(u)*eu(u));return v}function cue(e,t,n){var i,r,o,u,a,l,d;if(i=n.gc(),i==0)return!1;if(e.ej())if(l=e.fj(),_oe(e,t,n),u=i==1?e.Zi(3,null,n.Kc().Pb(),t,l):e.Zi(5,null,n,t,l),e.bj()){for(a=i<100?null:new i1(i),o=t+i,r=t;r0){for(u=0;u>16==-15&&e.Cb.nh()&&R$(new A$(e.Cb,9,13,n,e.c,wd(Ns(c(e.Cb,59)),e))):Q(e.Cb,88)&&e.Db>>16==-23&&e.Cb.nh()&&(t=e.c,Q(t,88)||(t=(ot(),Ea)),Q(n,88)||(n=(ot(),Ea)),R$(new A$(e.Cb,9,10,n,t,wd(dc(c(e.Cb,26)),e)))))),e.c}function kBt(e,t){var n,i,r,o,u,a,l,d,p,v;for(Wt(t,"Hypernodes processing",1),r=new q(e.b);r.an);return r}function kYe(e,t){var n,i,r;i=$s(e.d,1)!=0,!Be(Fe(B(t.j,(ye(),Y0))))&&!Be(Fe(B(t.j,kv)))||le(B(t.j,(Oe(),q1)))===le((kh(),H1))?t.c.Tf(t.e,i):i=Be(Fe(B(t.j,Y0))),ZI(e,t,i,!0),Be(Fe(B(t.j,kv)))&&pe(t.j,kv,(Pt(),!1)),Be(Fe(B(t.j,Y0)))&&(pe(t.j,Y0,(Pt(),!1)),pe(t.j,kv,!0)),n=Cq(e,t);do{if(hre(e),n==0)return 0;i=!i,r=n,ZI(e,t,i,!1),n=Cq(e,t)}while(r>n);return r}function RYe(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L;if(t==n)return!0;if(t=pse(e,t),n=pse(e,n),i=QK(t),i){if(p=QK(n),p!=i)return p?(l=i.Dj(),L=p.Dj(),l==L&&l!=null):!1;if(u=(!t.d&&(t.d=new qi(oo,t,1)),t.d),o=u.i,A=(!n.d&&(n.d=new qi(oo,n,1)),n.d),o==A.i){for(d=0;d0,a=u7(t,o),Nee(n?a.b:a.g,t),Gm(a).c.length==1&&Ri(i,a,i.c.b,i.c),r=new yr(o,t),w1(e.o,r),Jc(e.e.a,o))}function FYe(e,t){var n,i,r,o,u,a,l;return i=g.Math.abs(C8(e.b).a-C8(t.b).a),a=g.Math.abs(C8(e.b).b-C8(t.b).b),r=0,l=0,n=1,u=1,i>e.b.b/2+t.b.b/2&&(r=g.Math.min(g.Math.abs(e.b.c-(t.b.c+t.b.b)),g.Math.abs(e.b.c+e.b.b-t.b.c)),n=1-r/i),a>e.b.a/2+t.b.a/2&&(l=g.Math.min(g.Math.abs(e.b.d-(t.b.d+t.b.a)),g.Math.abs(e.b.d+e.b.a-t.b.d)),u=1-l/a),o=g.Math.min(n,u),(1-o)*g.Math.sqrt(i*i+a*a)}function BBt(e){var t,n,i,r;for(wH(e,e.e,e.f,(s0(),V1),!0,e.c,e.i),wH(e,e.e,e.f,V1,!1,e.c,e.i),wH(e,e.e,e.f,$v,!0,e.c,e.i),wH(e,e.e,e.f,$v,!1,e.c,e.i),KBt(e,e.c,e.e,e.f,e.i),i=new _r(e.i,0);i.b=65;n--)Zl[n]=n-65<<24>>24;for(i=122;i>=97;i--)Zl[i]=i-97+26<<24>>24;for(r=57;r>=48;r--)Zl[r]=r-48+52<<24>>24;for(Zl[43]=62,Zl[47]=63,o=0;o<=25;o++)Fd[o]=65+o&Ni;for(u=26,l=0;u<=51;++u,l++)Fd[u]=97+l&Ni;for(e=52,a=0;e<=61;++e,a++)Fd[e]=48+a&Ni;Fd[62]=43,Fd[63]=47}function $Bt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D;if(e.dc())return new Tr;for(d=0,v=0,r=e.Kc();r.Ob();)i=c(r.Pb(),37),o=i.f,d=g.Math.max(d,o.a),v+=o.a*o.b;for(d=g.Math.max(d,g.Math.sqrt(v)*ge(Te(B(c(e.Kc().Pb(),37),(Oe(),TR))))),A=0,D=0,l=0,n=t,a=e.Kc();a.Ob();)u=c(a.Pb(),37),p=u.f,A+p.a>d&&(A=0,D+=l+t,l=0),v6(u,A,D),n=g.Math.max(n,A+p.a),l=g.Math.max(l,p.b),A+=p.a+t;return new $e(n+t,D+l+t)}function KBt(e,t,n,i,r){var o,u,a,l,d,p,v;for(u=new q(t);u.ao)return Ie(),jt;break;case 4:case 3:if(l<0)return Ie(),_t;if(l+e.f>r)return Ie(),Yt}return u=(a+e.g/2)/o,n=(l+e.f/2)/r,u+n<=1&&u-n<=0?(Ie(),Mt):u+n>=1&&u-n>=0?(Ie(),jt):n<.5?(Ie(),_t):(Ie(),Yt)}function qBt(e,t,n,i,r){var o,u;if(o=xr(Xi(t[0],no),Xi(i[0],no)),e[0]=tn(o),o=h1(o,32),n>=r){for(u=1;u0&&(r.b[u++]=0,r.b[u++]=o.b[0]-1),t=1;t0&&(TN(l,l.d-r.d),r.c==(cl(),z1)&&Fmt(l,l.a-r.d),l.d<=0&&l.i>0&&Ri(t,l,t.c.b,t.c)));for(o=new q(e.f);o.a0&&(FA(a,a.i-r.d),r.c==(cl(),z1)&&Bmt(a,a.b-r.d),a.i<=0&&a.d>0&&Ri(n,a,n.c.b,n.c)))}function HBt(e,t,n){var i,r,o,u,a,l,d,p;for(Wt(n,"Processor compute fanout",1),Is(e.b),Is(e.a),a=null,o=Mn(t.b,0);!a&&o.b!=o.d.c;)d=c(Pn(o),86),Be(Fe(B(d,(ic(),Gw))))&&(a=d);for(l=new wi,Ri(l,a,l.c.b,l.c),YXe(e,l),p=Mn(t.b,0);p.b!=p.d.c;)d=c(Pn(p),86),u=ln(B(d,(ic(),BP))),r=mc(e.b,u)!=null?c(mc(e.b,u),19).a:0,pe(d,tx,Ce(r)),i=1+(mc(e.a,u)!=null?c(mc(e.a,u),19).a:0),pe(d,jut,Ce(i));qt(n)}function zBt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L;for(A=I7t(e,n),l=0;l0),i.a.Xb(i.c=--i.b),v>A+l&&nu(i);for(u=new q(D);u.a0),i.a.Xb(i.c=--i.b)}}function VBt(){Ln();var e,t,n,i,r,o;if(_Y)return _Y;for(e=new du(4),pw(e,j1(ZV,!0)),I6(e,j1("M",!0)),I6(e,j1("C",!0)),o=new du(4),i=0;i<11;i++)_c(o,i,i);return t=new du(4),pw(t,j1("M",!0)),_c(t,4448,4607),_c(t,65438,65439),r=new f5(2),eb(r,e),eb(r,dM),n=new f5(2),n.$l(v8(o,j1("L",!0))),n.$l(t),n=new Gp(3,n),n=new yne(r,n),_Y=n,_Y}function GBt(e){var t,n;if(t=ln(Ke(e,(kn(),GP))),!eqe(t,e)&&!Fg(e,j4)&&((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a).i!=0||Be(Fe(Ke(e,Oj)))))if(t==null||uw(t).length==0){if(!eqe(kt,e))throw n=wn(wn(new lu("Unable to load default layout algorithm "),kt)," for unconfigured node "),sD(e,n),V(new ym(n.a))}else throw n=wn(wn(new lu("Layout algorithm '"),t),"' not found for "),sD(e,n),V(new ym(n.a))}function eH(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;if(n=e.i,t=e.n,e.b==0)for(D=n.c+t.b,A=n.b-t.b-t.c,u=e.a,l=0,p=u.length;l0&&(v-=i[0]+e.c,i[0]+=e.c),i[2]>0&&(v-=i[2]+e.c),i[1]=g.Math.max(i[1],v),_8(e.a[1],n.c+t.b+i[0]-(i[1]-v)/2,i[1]);for(o=e.a,a=0,d=o.length;a0?(e.n.c.length-1)*e.i:0,i=new q(e.n);i.a1)for(i=Mn(r,0);i.b!=i.d.c;)for(n=c(Pn(i),231),o=0,l=new q(n.e);l.a0&&(t[0]+=e.c,v-=t[0]),t[2]>0&&(v-=t[2]+e.c),t[1]=g.Math.max(t[1],v),E8(e.a[1],i.d+n.d+t[0]-(t[1]-v)/2,t[1]);else for(L=i.d+n.d,D=i.a-n.d-n.a,u=e.a,l=0,p=u.length;l=0&&o!=n))throw V(new St(RT));for(r=0,l=0;l0||E0(r.b.d,e.b.d+e.b.a)==0&&i.b<0||E0(r.b.d+r.b.a,e.b.d)==0&&i.b>0){a=0;break}}else a=g.Math.min(a,qGe(e,r,i));a=g.Math.min(a,qYe(e,o,a,i))}return a}function rT(e,t){var n,i,r,o,u,a,l;if(e.b<2)throw V(new St("The vector chain must contain at least a source and a target point."));for(r=(Lt(e.b!=0),c(e.a.a.c,8)),H9(t,r.a,r.b),l=new Vy((!t.a&&(t.a=new qi(ma,t,5)),t.a)),u=Mn(e,1);u.age(Tl(u.g,u.d[0]).a)?(Lt(l.b>0),l.a.Xb(l.c=--l.b),Np(l,u),r=!0):a.e&&a.e.gc()>0&&(o=(!a.e&&(a.e=new Se),a.e).Mc(t),d=(!a.e&&(a.e=new Se),a.e).Mc(n),(o||d)&&((!a.e&&(a.e=new Se),a.e).Fc(u),++u.c));r||(i.c[i.c.length]=u)}function VYe(e){var t,n,i;if(Tm(c(B(e,(Oe(),ji)),98)))for(n=new q(e.j);n.a>>0,"0"+t.toString(16)),i="\\x"+fu(n,n.length-2,n.length)):e>=Vr?(n=(t=e>>>0,"0"+t.toString(16)),i="\\v"+fu(n,n.length-6,n.length)):i=""+String.fromCharCode(e&Ni)}return i}function nH(e,t){var n,i,r,o,u,a,l,d,p,v;if(u=e.e,l=t.e,l==0)return e;if(u==0)return t.e==0?t:new km(-t.e,t.d,t.a);if(o=e.d,a=t.d,o+a==2)return n=Xi(e.a[0],no),i=Xi(t.a[0],no),u<0&&(n=N_(n)),l<0&&(i=N_(i)),DI(P1(n,i));if(r=o!=a?o>a?1:-1:Hre(e.a,t.a,o),r==-1)v=-l,p=u==l?P$(t.a,a,e.a,o):C$(t.a,a,e.a,o);else if(v=u,u==l){if(r==0)return T1(),t4;p=P$(e.a,o,t.a,a)}else p=C$(e.a,o,t.a,a);return d=new km(v,p.length,p),R5(d),d}function due(e){var t,n,i,r,o,u;for(this.e=new Se,this.a=new Se,n=e.b-1;n<3;n++)b_(e,0,c(hl(e,0),8));if(e.b<4)throw V(new St("At (least dimension + 1) control points are necessary!"));for(this.b=3,this.d=!0,this.c=!1,Fxt(this,e.b+this.b-1),u=new Se,o=new q(this.e),t=0;t=t.o&&n.f<=t.f||t.a*.5<=n.f&&t.a*1.5>=n.f){if(u=c(Ne(t.n,t.n.c.length-1),211),u.e+u.d+n.g+r<=i&&(o=c(Ne(t.n,t.n.c.length-1),211),o.f-e.f+n.f<=e.b||e.a.c.length==1))return hoe(t,n),!0;if(t.s+n.g<=i&&(t.t+t.d+n.f+r<=e.b||e.a.c.length==1))return Ee(t.b,n),a=c(Ne(t.n,t.n.c.length-1),211),Ee(t.n,new W8(t.s,a.f+a.a+t.i,t.i)),Woe(c(Ne(t.n,t.n.c.length-1),211),n),BYe(t,n),!0}return!1}function UYe(e,t,n){var i,r,o,u;return e.ej()?(r=null,o=e.fj(),i=e.Zi(1,u=L$(e,t,n),n,t,o),e.bj()&&!(e.ni()&&u!=null?$n(u,n):le(u)===le(n))?(u!=null&&(r=e.dj(u,r)),r=e.cj(n,r),e.ij()&&(r=e.lj(u,n,r)),r?(r.Ei(i),r.Fi()):e.$i(i)):(e.ij()&&(r=e.lj(u,n,r)),r?(r.Ei(i),r.Fi()):e.$i(i)),u):(u=L$(e,t,n),e.bj()&&!(e.ni()&&u!=null?$n(u,n):le(u)===le(n))&&(r=null,u!=null&&(r=e.dj(u,null)),r=e.cj(n,r),r&&r.Fi()),u)}function _6(e,t){var n,i,r,o,u,a,l,d;t%=24,e.q.getHours()!=t&&(i=new g.Date(e.q.getTime()),i.setDate(i.getDate()+1),a=e.q.getTimezoneOffset()-i.getTimezoneOffset(),a>0&&(l=a/60|0,d=a%60,r=e.q.getDate(),n=e.q.getHours(),n+l>=24&&++r,o=new g.Date(e.q.getFullYear(),e.q.getMonth(),r,t+l,e.q.getMinutes()+d,e.q.getSeconds(),e.q.getMilliseconds()),e.q.setTime(o.getTime()))),u=e.q.getTime(),e.q.setTime(u+36e5),e.q.getHours()!=t&&e.q.setTime(u)}function t$t(e,t){var n,i,r,o,u;if(Wt(t,"Path-Like Graph Wrapping",1),e.b.c.length==0){qt(t);return}if(r=new yse(e),u=(r.i==null&&(r.i=dre(r,new kJ)),ge(r.i)*r.f),n=u/(r.i==null&&(r.i=dre(r,new kJ)),ge(r.i)),r.b>n){qt(t);return}switch(c(B(e,(Oe(),VU)),337).g){case 2:o=new xJ;break;case 0:o=new DJ;break;default:o=new LJ}if(i=o.Vf(e,r),!o.Wf())switch(c(B(e,qR),338).g){case 2:i=HGe(r,i);break;case 1:i=qVe(r,i)}Q$t(e,r,i),qt(t)}function n$t(e,t){var n,i,r,o;if($6t(e.d,e.e),e.c.a.$b(),ge(Te(B(t.j,(Oe(),OR))))!=0||ge(Te(B(t.j,OR)))!=0)for(n=$E,le(B(t.j,q1))!==le((kh(),H1))&&pe(t.j,(ye(),Y0),(Pt(),!0)),o=c(B(t.j,TP),19).a,r=0;rr&&++d,Ee(u,(pt(a+d,t.c.length),c(t.c[a+d],19))),l+=(pt(a+d,t.c.length),c(t.c[a+d],19)).a-i,++n;n1&&(l>ws(a)*eu(a)/2||u.b==0)&&(v=new TO(A),p=ws(a)/eu(a),d=mH(v,t,new Ry,n,i,r,p),Wn(ol(v.e),d),a=v,D.c[D.c.length]=v,l=0,A.c=oe(xt,xe,1,0,5,1)));return Hi(D,A),D}function o$t(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N;if(n.mh(t)&&(p=(D=t,D?c(i,49).xh(D):null),p))if(N=n.bh(t,e.a),L=t.t,L>1||L==-1)if(v=c(N,69),A=c(p,69),v.dc())A.$b();else for(u=!!Xr(t),o=0,a=e.a?v.Kc():v.Zh();a.Ob();)d=c(a.Pb(),56),r=c(h0(e,d),56),r?(u?(l=A.Xc(r),l==-1?A.Xh(o,r):o!=l&&A.ji(o,r)):A.Xh(o,r),++o):e.b&&!u&&(A.Xh(o,d),++o);else N==null?p.Wb(null):(r=h0(e,N),r==null?e.b&&!Xr(t)&&p.Wb(N):p.Wb(r))}function c$t(e,t){var n,i,r,o,u,a,l,d;for(n=new l_e,r=new Kt(Ht(ko(t).a.Kc(),new j));dn(r);)if(i=c(rn(r),17),!Kr(i)&&(a=i.c.i,Ace(a,Vk))){if(d=Vse(e,a,Vk,zk),d==-1)continue;n.b=g.Math.max(n.b,d),!n.a&&(n.a=new Se),Ee(n.a,a)}for(u=new Kt(Ht(Vi(t).a.Kc(),new j));dn(u);)if(o=c(rn(u),17),!Kr(o)&&(l=o.d.i,Ace(l,zk))){if(d=Vse(e,l,zk,Vk),d==-1)continue;n.d=g.Math.max(n.d,d),!n.c&&(n.c=new Se),Ee(n.c,l)}return n}function WYe(e){yE();var t,n,i,r;if(t=xi(e),e1e6)throw V(new JA("power of ten too big"));if(e<=Fn)return c2(YI($2[1],t),t);for(i=YI($2[1],Fn),r=i,n=ns(e-Fn),t=xi(e%Fn);uc(n,Fn)>0;)r=Fm(r,i),n=P1(n,Fn);for(r=Fm(r,YI($2[1],t)),r=c2(r,Fn),n=ns(e-Fn);uc(n,Fn)>0;)r=c2(r,Fn),n=P1(n,Fn);return r=c2(r,t),r}function s$t(e,t){var n,i,r,o,u,a,l,d,p;for(Wt(t,"Hierarchical port dummy size processing",1),l=new Se,p=new Se,i=ge(Te(B(e,(Oe(),Lv)))),n=i*2,o=new q(e.b);o.ad&&i>d)p=a,d=ge(t.p[a.p])+ge(t.d[a.p])+a.o.b+a.d.a;else{r=!1,n.n&&jg(n,"bk node placement breaks on "+a+" which should have been after "+p);break}if(!r)break}return n.n&&jg(n,t+" is feasible: "+r),r}function h$t(e,t,n,i){var r,o,u,a,l,d,p;for(a=-1,p=new q(e);p.a=z&&e.e[l.p]>L*e.b||ne>=n*z)&&(A.c[A.c.length]=a,a=new Se,qr(u,o),o.a.$b(),d-=p,D=g.Math.max(D,d*e.b+N),d+=ne,ie=ne,ne=0,p=0,N=0);return new yr(D,A)}function p$t(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;for(n=(d=new yh(e.c.b).a.vc().Kc(),new Cp(d));n.a.Ob();)t=(a=c(n.a.Pb(),42),c(a.dd(),149)),r=t.a,r==null&&(r=""),i=q3t(e.c,r),!i&&r.length==0&&(i=Hjt(e)),i&&!nw(i.c,t,!1)&&Cn(i.c,t);for(u=Mn(e.a,0);u.b!=u.d.c;)o=c(Pn(u),478),p=y$(e.c,o.a),D=y$(e.c,o.b),p&&D&&Cn(p.c,new yr(D,o.c));for(na(e.a),A=Mn(e.b,0);A.b!=A.d.c;)v=c(Pn(A),478),t=K3t(e.c,v.a),l=y$(e.c,v.b),t&&l&&Oyt(t,l,v.c);na(e.b)}function w$t(e,t,n){var i,r,o,u,a,l,d,p,v,A,D;o=new BM(e),u=new gVe,r=(GC(u.g),GC(u.j),Is(u.b),GC(u.d),GC(u.i),Is(u.k),Is(u.c),Is(u.e),D=JGe(u,o,null),$Ue(u,o),D),t&&(d=new BM(t),a=I$t(d),qce(r,U(G(Cpe,1),xe,527,0,[a]))),A=!1,v=!1,n&&(d=new BM(n),ik in d.a&&(A=Ch(d,ik).ge().a),aet in d.a&&(v=Ch(d,aet).ge().a)),p=D9e(sKe(new Z3,A),v),lkt(new I5e,r,p),ik in o.a&&ul(o,ik,null),(A||v)&&(l=new xy,zYe(p,l,A,v),ul(o,ik,l)),i=new Bje(u),rjt(new fee(r),i)}function m$t(e,t,n){var i,r,o,u,a,l,d,p,v;for(u=new vVe,d=U(G(Qt,1),_n,25,15,[0]),r=-1,o=0,i=0,l=0;l0){if(r<0&&p.a&&(r=l,o=d[0],i=0),r>=0){if(a=p.b,l==r&&(a-=i++,a==0))return 0;if(!JXe(t,d,p,a,u)){l=r-1,d[0]=o;continue}}else if(r=-1,!JXe(t,d,p,0,u))return 0}else{if(r=-1,Pr(p.c,0)==32){if(v=d[0],m$e(t,d),d[0]>v)continue}else if(Q5t(t,p.c,d[0])){d[0]+=p.c.length;continue}return 0}return Qqt(u,n)?d[0]:0}function S6(e){var t,n,i,r,o,u,a,l;if(!e.f){if(l=new HJ,a=new HJ,t=sM,u=t.a.zc(e,t),u==null){for(o=new $t(So(e));o.e!=o.i.gc();)r=c(Vt(o),26),Mi(l,S6(r));t.a.Bc(e)!=null,t.a.gc()==0}for(i=(!e.s&&(e.s=new Me(us,e,21,17)),new $t(e.s));i.e!=i.i.gc();)n=c(Vt(i),170),Q(n,99)&&on(a,c(n,18));ew(a),e.r=new lRe(e,(c(ee(he((g1(),wt).o),6),18),a.i),a.g),Mi(l,e.r),ew(l),e.f=new Im((c(ee(he(wt.o),5),18),l.i),l.g),Ls(e).b&=-3}return e.f}function v$t(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L;for(u=e.o,i=oe(Qt,_n,25,u,15,1),r=oe(Qt,_n,25,u,15,1),n=e.p,t=oe(Qt,_n,25,n,15,1),o=oe(Qt,_n,25,n,15,1),d=0;d=0&&!Ym(e,p,v);)--v;r[p]=v}for(D=0;D=0&&!Ym(e,a,L);)--a;o[L]=a}for(l=0;lt[A]&&Ai[l]&&Q7(e,l,A,!1,!0)}function gue(e){var t,n,i,r,o,u,a,l;n=Be(Fe(B(e,(dl(),Tit)))),o=e.a.c.d,a=e.a.d.d,n?(u=lf(hr(new $e(a.a,a.b),o),.5),l=lf(Wo(e.e),.5),t=hr(Wn(new $e(o.a,o.b),u),l),zee(e.d,t)):(r=ge(Te(B(e.a,Lit))),i=e.d,o.a>=a.a?o.b>=a.b?(i.a=a.a+(o.a-a.a)/2+r,i.b=a.b+(o.b-a.b)/2-r-e.e.b):(i.a=a.a+(o.a-a.a)/2+r,i.b=o.b+(a.b-o.b)/2+r):o.b>=a.b?(i.a=o.a+(a.a-o.a)/2+r,i.b=a.b+(o.b-a.b)/2+r):(i.a=o.a+(a.a-o.a)/2+r,i.b=o.b+(a.b-o.b)/2-r-e.e.b))}function Ec(e,t){var n,i,r,o,u,a,l;if(e==null)return null;if(o=e.length,o==0)return"";for(l=oe(Yu,vf,25,o,15,1),Aie(0,o,e.length),Aie(0,o,l.length),pxe(e,0,o,l,0),n=null,a=t,r=0,u=0;r0?fu(n.a,0,o-1):""):e.substr(0,o-1):n?n.a:e}function JYe(e){Gb(e,new Zg(qb(Bb(Kb($b(new _g,ob),"ELK DisCo"),"Layouter for arranging unconnected subgraphs. The subgraphs themselves are, by default, not laid out."),new K2e))),je(e,ob,pz,Le(pde)),je(e,ob,wz,Le(TG)),je(e,ob,D2,Le(dit)),je(e,ob,N0,Le(bde)),je(e,ob,Zue,Le(wit)),je(e,ob,eae,Le(pit)),je(e,ob,Que,Le(mit)),je(e,ob,tae,Le(bit)),je(e,ob,uae,Le(git)),je(e,ob,aae,Le(IG)),je(e,ob,lae,Le(gde)),je(e,ob,fae,Le(Nk))}function bue(e,t,n,i){var r,o,u,a,l,d,p,v,A;if(o=new Nh(e),Sg(o,(Dt(),Mc)),pe(o,(Oe(),ji),(wr(),Ic)),r=0,t){for(u=new gc,pe(u,(ye(),Hn),t),pe(o,Hn,t.i),Ji(u,(Ie(),Mt)),Bo(u,o),A=bf(t.e),d=A,p=0,v=d.length;p0)if(n-=i.length-t,n>=0){for(r.a+="0.";n>db.length;n-=db.length)jRe(r,db);fke(r,db,xi(n)),wn(r,i.substr(t))}else n=t-n,wn(r,fu(i,t,xi(n))),r.a+=".",wn(r,wC(i,xi(n)));else{for(wn(r,i.substr(t));n<-db.length;n+=db.length)jRe(r,db);fke(r,db,xi(-n))}return r.a}function pue(e,t,n,i){var r,o,u,a,l,d,p,v,A;return l=hr(new $e(n.a,n.b),e),d=l.a*t.b-l.b*t.a,p=t.a*i.b-t.b*i.a,v=(l.a*i.b-l.b*i.a)/p,A=d/p,p==0?d==0?(r=Wn(new $e(n.a,n.b),lf(new $e(i.a,i.b),.5)),o=m1(e,r),u=m1(Wn(new $e(e.a,e.b),t),r),a=g.Math.sqrt(i.a*i.a+i.b*i.b)*.5,o=0&&v<=1&&A>=0&&A<=1?Wn(new $e(e.a,e.b),lf(new $e(t.a,t.b),v)):null}function _$t(e,t,n){var i,r,o,u,a;if(i=c(B(e,(Oe(),OU)),21),n.a>t.a&&(i.Hc((sw(),Cj))?e.c.a+=(n.a-t.a)/2:i.Hc(Ij)&&(e.c.a+=n.a-t.a)),n.b>t.b&&(i.Hc((sw(),jj))?e.c.b+=(n.b-t.b)/2:i.Hc(Tj)&&(e.c.b+=n.b-t.b)),c(B(e,(ye(),Cc)),21).Hc((to(),Gu))&&(n.a>t.a||n.b>t.b))for(a=new q(e.a);a.at.a&&(i.Hc((sw(),Cj))?e.c.a+=(n.a-t.a)/2:i.Hc(Ij)&&(e.c.a+=n.a-t.a)),n.b>t.b&&(i.Hc((sw(),jj))?e.c.b+=(n.b-t.b)/2:i.Hc(Tj)&&(e.c.b+=n.b-t.b)),c(B(e,(ye(),Cc)),21).Hc((to(),Gu))&&(n.a>t.a||n.b>t.b))for(u=new q(e.a);u.at&&(r=0,o+=p.b+n,v.c[v.c.length]=p,p=new Zne(o,n),i=new aK(0,p.f,p,n),OO(p,i),r=0),i.b.c.length==0||l.f>=i.o&&l.f<=i.f||i.a*.5<=l.f&&i.a*1.5>=l.f?hoe(i,l):(u=new aK(i.s+i.r+n,p.f,p,n),OO(p,u),hoe(u,l)),r=l.i+l.g;return v.c[v.c.length]=p,v}function sv(e){var t,n,i,r,o,u,a,l;if(!e.a){if(e.o=null,l=new oAe(e),t=new T6e,n=sM,a=n.a.zc(e,n),a==null){for(u=new $t(So(e));u.e!=u.i.gc();)o=c(Vt(u),26),Mi(l,sv(o));n.a.Bc(e)!=null,n.a.gc()==0}for(r=(!e.s&&(e.s=new Me(us,e,21,17)),new $t(e.s));r.e!=r.i.gc();)i=c(Vt(r),170),Q(i,322)&&on(t,c(i,34));ew(t),e.k=new aRe(e,(c(ee(he((g1(),wt).o),7),18),t.i),t.g),Mi(l,e.k),ew(l),e.a=new Im((c(ee(he(wt.o),4),18),l.i),l.g),Ls(e).b&=-2}return e.a}function M$t(e,t,n,i,r,o,u){var a,l,d,p,v,A;return v=!1,l=oWe(n.q,t.f+t.b-n.q.f),A=r-(n.q.e+l-u),A=(pt(o,e.c.length),c(e.c[o],200)).e,p=(a=P6(i,A,!1),a.a),p>t.b&&!d)?!1:((d||p<=t.b)&&(d&&p>t.b?(n.d=p,JC(n,aGe(n,p))):(TVe(n.q,l),n.c=!0),JC(i,r-(n.s+n.r)),kI(i,n.q.e+n.q.d,t.f),OO(t,i),e.c.length>o&&(FI((pt(o,e.c.length),c(e.c[o],200)),i),(pt(o,e.c.length),c(e.c[o],200)).a.c.length==0&&ad(e,o)),v=!0),v)}function wue(e,t,n,i){var r,o,u,a,l,d,p;if(p=qc(e.e.Tg(),t),r=0,o=c(e.g,119),l=null,Wr(),c(t,66).Oj()){for(a=0;ae.o.a&&(p=(l-e.o.a)/2,a.b=g.Math.max(a.b,p),a.c=g.Math.max(a.c,p))}}function I$t(e){var t,n,i,r,o,u,a,l;for(o=new ANe,f2t(o,(d2(),olt)),i=(r=J$(e,oe(Re,we,2,0,6,1)),new CS(new Js(new tF(e,r).b)));i.b0?e.i:0)>t&&l>0&&(o=0,u+=l+e.i,r=g.Math.max(r,A),i+=l+e.i,l=0,A=0,n&&(++v,Ee(e.n,new W8(e.s,u,e.i))),a=0),A+=d.g+(a>0?e.i:0),l=g.Math.max(l,d.f),n&&Woe(c(Ne(e.n,v),211),d),o+=d.g+(a>0?e.i:0),++a;return r=g.Math.max(r,A),i+=l,n&&(e.r=r,e.d=i,Qoe(e.j)),new Ru(e.s,e.t,r,i)}function bc(e,t,n,i,r){Nf();var o,u,a,l,d,p,v,A,D;if(wne(e,"src"),wne(n,"dest"),A=Fs(e),l=Fs(n),$te((A.i&4)!=0,"srcType is not an array"),$te((l.i&4)!=0,"destType is not an array"),v=A.c,u=l.c,$te((v.i&1)!=0?v==u:(u.i&1)==0,"Array types don't match"),D=e.length,d=n.length,t<0||i<0||r<0||t+r>D||i+r>d)throw V(new DQ);if((v.i&1)==0&&A!=l)if(p=$g(e),o=$g(n),le(e)===le(n)&&ti;)vi(o,a,p[--t]);else for(a=i+r;i0&&ise(e,t,n,i,r,!0)}function cH(){cH=Z,nnt=U(G(Qt,1),_n,25,15,[Ar,1162261467,j6,1220703125,362797056,1977326743,j6,387420489,pD,214358881,429981696,815730721,1475789056,170859375,268435456,410338673,612220032,893871739,128e7,1801088541,113379904,148035889,191102976,244140625,308915776,387420489,481890304,594823321,729e6,887503681,j6,1291467969,1544804416,1838265625,60466176]),int=U(G(Qt,1),_n,25,15,[-1,-1,31,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5])}function T$t(e){var t,n,i,r,o,u,a,l;for(r=new q(e.b);r.a=e.b.length?(o[r++]=u.b[i++],o[r++]=u.b[i++]):i>=u.b.length?(o[r++]=e.b[n++],o[r++]=e.b[n++]):u.b[i]0?e.i:0)),++t;for($At(e.n,l),e.d=n,e.r=i,e.g=0,e.f=0,e.e=0,e.o=Ii,e.p=Ii,o=new q(e.b);o.a0&&(r=(!e.n&&(e.n=new Me(Lo,e,1,7)),c(ee(e.n,0),137)).a,!r||wn(wn((t.a+=' "',t),r),'"'))),n=(!e.b&&(e.b=new dt(Ut,e,4,7)),!(e.b.i<=1&&(!e.c&&(e.c=new dt(Ut,e,5,8)),e.c.i<=1))),n?t.a+=" [":t.a+=" ",wn(t,Iee(new XN,new $t(e.b))),n&&(t.a+="]"),t.a+=Sz,n&&(t.a+="["),wn(t,Iee(new XN,new $t(e.c))),n&&(t.a+="]"),t.a)}function sH(e,t){var n,i,r,o,u,a,l;if(e.a){if(a=e.a.ne(),l=null,a!=null?t.a+=""+a:(u=e.a.Dj(),u!=null&&(o=af(u,is(91)),o!=-1?(l=u.substr(o),t.a+=""+fu(u==null?rs:(yt(u),u),0,o)):t.a+=""+u)),e.d&&e.d.i!=0){for(r=!0,t.a+="<",i=new $t(e.d);i.e!=i.i.gc();)n=c(Vt(i),87),r?r=!1:t.a+=zr,sH(n,t);t.a+=">"}l!=null&&(t.a+=""+l)}else e.e?(a=e.e.zb,a!=null&&(t.a+=""+a)):(t.a+="?",e.b?(t.a+=" super ",sH(e.b,t)):e.f&&(t.a+=" extends ",sH(e.f,t)))}function O$t(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At;for(be=e.c,Pe=t.c,n=Do(be.a,e,0),i=Do(Pe.a,t,0),ne=c(S0(e,(Zr(),Os)).Kc().Pb(),11),et=c(S0(e,Fc).Kc().Pb(),11),ue=c(S0(t,Os).Kc().Pb(),11),At=c(S0(t,Fc).Kc().Pb(),11),Y=bf(ne.e),Ae=bf(et.g),ie=bf(ue.e),Ve=bf(At.g),cw(e,i,Pe),u=ie,p=0,L=u.length;pp?new xg((cl(),Vw),n,t,d-p):d>0&&p>0&&(new xg((cl(),Vw),t,n,0),new xg(Vw,n,t,0))),u)}function eXe(e,t){var n,i,r,o,u,a;for(u=new Gg(new Pg(e.f.b).a);u.b;){if(o=g0(u),r=c(o.cd(),594),t==1){if(r.gf()!=(eo(),Gh)&&r.gf()!=Vh)continue}else if(r.gf()!=(eo(),ga)&&r.gf()!=Va)continue;switch(i=c(c(o.dd(),46).b,81),a=c(c(o.dd(),46).a,189),n=a.c,r.gf().g){case 2:i.g.c=e.e.a,i.g.b=g.Math.max(1,i.g.b+n);break;case 1:i.g.c=i.g.c+n,i.g.b=g.Math.max(1,i.g.b-n);break;case 4:i.g.d=e.e.b,i.g.a=g.Math.max(1,i.g.a+n);break;case 3:i.g.d=i.g.d+n,i.g.a=g.Math.max(1,i.g.a-n)}}}function D$t(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(a=oe(Qt,_n,25,t.b.c.length,15,1),d=oe(HG,_e,267,t.b.c.length,0,1),l=oe(nh,Ed,10,t.b.c.length,0,1),v=e.a,A=0,D=v.length;A0&&l[i]&&(L=Am(e.b,l[i],r)),N=g.Math.max(N,r.c.c.b+L);for(o=new q(p.e);o.a1)throw V(new St(BT));l||(o=zf(t,i.Kc().Pb()),u.Fc(o))}return Tre(e,Wce(e,t,n),u)}function x$t(e,t){var n,i,r,o;for(mIt(t.b.j),Di(Yc(new ht(null,new bt(t.d,16)),new R4e),new x4e),o=new q(t.d);o.ae.o.b||(n=qo(e,jt),a=t.d+t.a+(n.gc()-1)*u,a>e.o.b)))}function lH(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;if(u=e.e,l=t.e,u==0)return t;if(l==0)return e;if(o=e.d,a=t.d,o+a==2)return n=Xi(e.a[0],no),i=Xi(t.a[0],no),u==l?(p=xr(n,i),L=tn(p),D=tn($p(p,32)),D==0?new ld(u,L):new km(u,2,U(G(Qt,1),_n,25,15,[L,D]))):DI(u<0?P1(i,n):P1(n,i));if(u==l)A=u,v=o>=a?C$(e.a,o,t.a,a):C$(t.a,a,e.a,o);else{if(r=o!=a?o>a?1:-1:Hre(e.a,t.a,o),r==0)return T1(),t4;r==1?(A=u,v=P$(e.a,o,t.a,a)):(A=l,v=P$(t.a,a,e.a,o))}return d=new km(A,v.length,v),R5(d),d}function fH(e,t,n,i,r,o,u){var a,l,d,p,v,A,D;return v=Be(Fe(B(t,(Oe(),fbe)))),A=null,o==(Zr(),Os)&&i.c.i==n?A=i.c:o==Fc&&i.d.i==n&&(A=i.d),d=u,!d||!v||A?(p=(Ie(),Vo),A?p=A.j:Tm(c(B(n,ji),98))&&(p=o==Os?Mt:jt),l=B$t(e,t,n,o,p,i),a=E$((Nr(n),i)),o==Os?(Rr(a,c(Ne(l.j,0),11)),br(a,r)):(Rr(a,r),br(a,c(Ne(l.j,0),11))),d=new vHe(i,a,l,c(B(l,(ye(),Hn)),11),o,!A)):(Ee(d.e,i),D=g.Math.max(ge(Te(B(d.d,Id))),ge(Te(B(i,Id)))),pe(d.d,Id,D)),it(e.a,i,new c8(d.d,t,o)),d}function oD(e,t){var n,i,r,o,u,a,l,d,p,v;if(p=null,e.d&&(p=c(mc(e.d,t),138)),!p){if(o=e.a.Mh(),v=o.i,!e.d||KS(e.d)!=v){for(l=new en,e.d&&G5(l,e.d),d=l.f.c+l.g.c,a=d;a0?(D=(L-1)*n,a&&(D+=i),p&&(D+=i),D=e.b[r+1])r+=2;else if(n0)for(i=new ps(c(Vn(e.a,o),21)),st(),cr(i,new _Q(t)),r=new _r(o.b,0);r.bbe)?(l=2,u=Fn):l==0?(l=1,u=Ae):(l=0,u=Ae)):(D=Ae>=u||u-Ae0?1:Wb(isNaN(i),isNaN(0)))>=0^(Na(Mf),(g.Math.abs(a)<=Mf||a==0||isNaN(a)&&isNaN(0)?0:a<0?-1:a>0?1:Wb(isNaN(a),isNaN(0)))>=0)?g.Math.max(a,i):(Na(Mf),(g.Math.abs(i)<=Mf||i==0||isNaN(i)&&isNaN(0)?0:i<0?-1:i>0?1:Wb(isNaN(i),isNaN(0)))>0?g.Math.sqrt(a*a+i*i):-g.Math.sqrt(a*a+i*i))}function eb(e,t){var n,i,r,o,u,a;if(t){if(!e.a&&(e.a=new WA),e.e==2){UA(e.a,t);return}if(t.e==1){for(r=0;r=Vr?co(n,foe(i)):S_(n,i&Ni),u=new ZB(10,null,0),CSt(e.a,u,a-1)):(n=(u.bm().length+o,new FS),co(n,u.bm())),t.e==0?(i=t._l(),i>=Vr?co(n,foe(i)):S_(n,i&Ni)):co(n,t.bm()),c(u,521).b=n.a}}function uXe(e){var t,n,i,r,o;return e.g!=null?e.g:e.a<32?(e.g=lHt(ns(e.f),xi(e.e)),e.g):(r=yH((!e.c&&(e.c=SI(e.f)),e.c),0),e.e==0?r:(t=(!e.c&&(e.c=SI(e.f)),e.c).e<0?2:1,n=r.length,i=-e.e+n-t,o=new n1,o.a+=""+r,e.e>0&&i>=-6?i>=0?qC(o,n-xi(e.e),"."):(o.a=fu(o.a,0,t-1)+"0."+wC(o.a,t-1),qC(o,t+1,pf(db,0,-xi(i)-1))):(n-t>=1&&(qC(o,t,"."),++n),qC(o,n,"E"),i>0&&qC(o,++n,"+"),qC(o,++n,""+P5(ns(i)))),e.g=o.a,e.g))}function Q$t(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(!n.dc()){for(a=0,A=0,i=n.Kc(),L=c(i.Pb(),19).a;a1&&(l=d.mg(l,e.a,a));return l.c.length==1?c(Ne(l,l.c.length-1),220):l.c.length==2?K$t((pt(0,l.c.length),c(l.c[0],220)),(pt(1,l.c.length),c(l.c[1],220)),u,o):null}function aXe(e){var t,n,i,r,o,u;for(Zc(e.a,new L2e),n=new q(e.a);n.a=g.Math.abs(i.b)?(i.b=0,o.d+o.a>u.d&&o.du.c&&o.c0){if(t=new iee(e.i,e.g),n=e.i,o=n<100?null:new i1(n),e.ij())for(i=0;i0){for(a=e.g,d=e.i,B5(e),o=d<100?null:new i1(d),i=0;i>13|(e.m&15)<<9,r=e.m>>4&8191,o=e.m>>17|(e.h&255)<<5,u=(e.h&1048320)>>8,a=t.l&8191,l=t.l>>13|(t.m&15)<<9,d=t.m>>4&8191,p=t.m>>17|(t.h&255)<<5,v=(t.h&1048320)>>8,Ve=n*a,et=i*a,At=r*a,Ot=o*a,Jt=u*a,l!=0&&(et+=n*l,At+=i*l,Ot+=r*l,Jt+=o*l),d!=0&&(At+=n*d,Ot+=i*d,Jt+=r*d),p!=0&&(Ot+=n*p,Jt+=i*p),v!=0&&(Jt+=n*v),D=Ve&qs,L=(et&511)<<13,A=D+L,z=Ve>>22,Y=et>>9,ie=(At&262143)<<4,ne=(Ot&31)<<17,N=z+Y+ie+ne,be=At>>18,Pe=Ot>>5,Ae=(Jt&4095)<<8,ue=be+Pe+Ae,N+=A>>22,A&=qs,ue+=N>>22,N&=qs,ue&=Kh,Bc(A,N,ue)}function lXe(e){var t,n,i,r,o,u,a;if(a=c(Ne(e.j,0),11),a.g.c.length!=0&&a.e.c.length!=0)throw V(new Ao("Interactive layout does not support NORTH/SOUTH ports with incoming _and_ outgoing edges."));if(a.g.c.length!=0){for(o=Ii,n=new q(a.g);n.a4)if(e.wj(t)){if(e.rk()){if(r=c(t,49),i=r.Ug(),l=i==e.e&&(e.Dk()?r.Og(r.Vg(),e.zk())==e.Ak():-1-r.Vg()==e.aj()),e.Ek()&&!l&&!i&&r.Zg()){for(o=0;o0&&(d=e.n.a/o);break;case 2:case 4:r=e.i.o.b,r>0&&(d=e.n.b/r)}pe(e,(ye(),J0),d)}if(l=e.o,u=e.a,i)u.a=i.a,u.b=i.b,e.d=!0;else if(t!=Xl&&t!=Y1&&a!=Vo)switch(a.g){case 1:u.a=l.a/2;break;case 2:u.a=l.a,u.b=l.b/2;break;case 3:u.a=l.a/2,u.b=l.b;break;case 4:u.b=l.b/2}else u.a=l.a/2,u.b=l.b/2}function C6(e){var t,n,i,r,o,u,a,l,d,p;if(e.ej())if(p=e.Vi(),l=e.fj(),p>0)if(t=new bre(e.Gi()),n=p,o=n<100?null:new i1(n),SC(e,n,t.g),r=n==1?e.Zi(4,ee(t,0),null,0,l):e.Zi(6,t,null,-1,l),e.bj()){for(i=new $t(t);i.e!=i.i.gc();)o=e.dj(Vt(i),o);o?(o.Ei(r),o.Fi()):e.$i(r)}else o?(o.Ei(r),o.Fi()):e.$i(r);else SC(e,e.Vi(),e.Wi()),e.$i(e.Zi(6,(st(),Qr),null,-1,l));else if(e.bj())if(p=e.Vi(),p>0){for(a=e.Wi(),d=p,SC(e,p,a),o=d<100?null:new i1(d),i=0;ie.d[u.p]&&(n+=die(e.b,o)*c(l.b,19).a,w1(e.a,Ce(o)));for(;!xS(e.a);)zie(e.b,c(Qy(e.a),19).a)}return n}function lKt(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;for(v=new go(c(Ke(e,(N7(),Rpe)),8)),v.a=g.Math.max(v.a-n.b-n.c,0),v.b=g.Math.max(v.b-n.d-n.a,0),r=Te(Ke(e,Ope)),(r==null||(yt(r),r<=0))&&(r=1.3),a=new Se,L=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));L.e!=L.i.gc();)D=c(Vt(L),33),u=new KDe(D),a.c[a.c.length]=u;switch(A=c(Ke(e,KW),311),A.g){case 3:z=DBt(a,t,v.a,v.b,(d=i,yt(r),d));break;case 1:z=r$t(a,t,v.a,v.b,(p=i,yt(r),p));break;default:z=dKt(a,t,v.a,v.b,(l=i,yt(r),l))}o=new TO(z),N=mH(o,t,n,v.a,v.b,i,(yt(r),r)),k0(e,N.a,N.b,!1,!0)}function fKt(e,t){var n,i,r,o;n=t.b,o=new ps(n.j),r=0,i=n.j,i.c=oe(xt,xe,1,0,5,1),n0(c(qg(e.b,(Ie(),_t),(m0(),U0)),15),n),r=xI(o,r,new f4e,i),n0(c(qg(e.b,_t,$1),15),n),r=xI(o,r,new l4e,i),n0(c(qg(e.b,_t,G0),15),n),n0(c(qg(e.b,jt,U0),15),n),n0(c(qg(e.b,jt,$1),15),n),r=xI(o,r,new h4e,i),n0(c(qg(e.b,jt,G0),15),n),n0(c(qg(e.b,Yt,U0),15),n),r=xI(o,r,new d4e,i),n0(c(qg(e.b,Yt,$1),15),n),r=xI(o,r,new g4e,i),n0(c(qg(e.b,Yt,G0),15),n),n0(c(qg(e.b,Mt,U0),15),n),r=xI(o,r,new M4e,i),n0(c(qg(e.b,Mt,$1),15),n),n0(c(qg(e.b,Mt,G0),15),n)}function hKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(Wt(t,"Layer size calculation",1),p=Ii,d=$i,r=!1,a=new q(e.b);a.a.5?Y-=u*2*(L-.5):L<.5&&(Y+=o*2*(.5-L)),r=a.d.b,Yz.a-N-p&&(Y=z.a-N-p),a.n.a=t+Y}}function dKt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z;for(a=oe(gr,lo,25,e.c.length,15,1),A=new I8(new c6e),nce(A,e),d=0,N=new Se;A.b.c.length!=0;)if(u=c(A.b.c.length==0?null:Ne(A.b,0),157),d>1&&ws(u)*eu(u)/2>a[0]){for(o=0;oa[o];)++o;L=new Hf(N,0,o+1),v=new TO(L),p=ws(u)/eu(u),l=mH(v,t,new Ry,n,i,r,p),Wn(ol(v.e),l),R_(wE(A,v)),D=new Hf(N,o+1,N.c.length),nce(A,D),N.c=oe(xt,xe,1,0,5,1),d=0,$Re(a,a.length,0)}else z=A.b.c.length==0?null:Ne(A.b,0),z!=null&&Y$(A,0),d>0&&(a[d]=a[d-1]),a[d]+=ws(u)*eu(u),++d,N.c[N.c.length]=u;return N}function gKt(e){var t,n,i,r,o;if(i=c(B(e,(Oe(),zc)),163),i==(Ku(),K1)){for(n=new Kt(Ht(ko(e).a.Kc(),new j));dn(n);)if(t=c(rn(n),17),!JFe(t))throw V(new ym(Cz+LI(e)+"' has its layer constraint set to FIRST_SEPARATE, but has at least one incoming edge. FIRST_SEPARATE nodes must not have incoming edges."))}else if(i==xw){for(o=new Kt(Ht(Vi(e).a.Kc(),new j));dn(o);)if(r=c(rn(o),17),!JFe(r))throw V(new ym(Cz+LI(e)+"' has its layer constraint set to LAST_SEPARATE, but has at least one outgoing edge. LAST_SEPARATE nodes must not have outgoing edges."))}}function bKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;for(Wt(t,"Label dummy removal",1),i=ge(Te(B(e,(Oe(),Z2)))),r=ge(Te(B(e,Hw))),d=c(B(e,Pu),103),l=new q(e.b);l.a0&&wGe(e,a,v);for(r=new q(v);r.a>19!=0&&(t=Z_(t),l=!l),u=gLt(t),o=!1,r=!1,i=!1,e.h==bT&&e.m==0&&e.l==0)if(r=!0,o=!0,u==-1)e=D7e((F_(),che)),i=!0,l=!l;else return a=vse(e,u),l&&oK(a),n&&(L1=Bc(0,0,0)),a;else e.h>>19!=0&&(o=!0,e=Z_(e),i=!0,l=!l);return u!=-1?tjt(e,u,l,o,n):lce(e,t)<0?(n&&(o?L1=Z_(e):L1=Bc(e.l,e.m,e.h)),Bc(0,0,0)):oBt(i?e:Bc(e.l,e.m,e.h),t,l,o,r,n)}function cD(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;if(e.e&&e.c.ct.f||t.g>e.f)){for(n=0,i=0,u=e.w.a.ec().Kc();u.Ob();)r=c(u.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,t.g,t.f)&&++n;for(a=e.r.a.ec().Kc();a.Ob();)r=c(a.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,t.g,t.f)&&--n;for(l=t.w.a.ec().Kc();l.Ob();)r=c(l.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,e.g,e.f)&&++i;for(o=t.r.a.ec().Kc();o.Ob();)r=c(o.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,e.g,e.f)&&--i;n=0)return r=PAt(e,t.substr(1,u-1)),p=t.substr(u+1,l-(u+1)),vHt(e,p,r)}else{if(n=-1,fhe==null&&(fhe=new RegExp("\\d")),fhe.test(String.fromCharCode(a))&&(n=wte(t,is(46),l-1),n>=0)){i=c(S$(e,H$e(e,t.substr(1,n-1)),!1),58),d=0;try{d=vu(t.substr(n+1),Ar,Fn)}catch(A){throw A=gi(A),Q(A,127)?(o=A,V(new mO(o))):V(A)}if(d=0)return n;switch(o0(wo(e,n))){case 2:{if(rt("",gd(e,n.Hj()).ne())){if(l=LC(wo(e,n)),a=C_(wo(e,n)),p=Cse(e,t,l,a),p)return p;for(r=Zse(e,t),u=0,v=r.gc();u1)throw V(new St(BT));for(p=qc(e.e.Tg(),t),i=c(e.g,119),u=0;u1,d=new Rl(A.b);Fo(d.a)||Fo(d.b);)l=c(Fo(d.a)?K(d.a):K(d.b),17),v=l.c==A?l.d:l.c,g.Math.abs(Ko(U(G(ir,1),we,8,0,[v.i.n,v.n,v.a])).b-u.b)>1&&mNt(e,l,u,o,A)}}function IKt(e){var t,n,i,r,o,u;if(r=new _r(e.e,0),i=new _r(e.a,0),e.d)for(n=0;ncV;){for(o=t,u=0;g.Math.abs(t-o)0),r.a.Xb(r.c=--r.b),zBt(e,e.b-u,o,i,r),Lt(r.b0),i.a.Xb(i.c=--i.b)}if(!e.d)for(n=0;n0?(e.f[p.p]=D/(p.e.c.length+p.g.c.length),e.c=g.Math.min(e.c,e.f[p.p]),e.b=g.Math.max(e.b,e.f[p.p])):a&&(e.f[p.p]=D)}}function jKt(e){e.b=null,e.bb=null,e.fb=null,e.qb=null,e.a=null,e.c=null,e.d=null,e.e=null,e.f=null,e.n=null,e.M=null,e.L=null,e.Q=null,e.R=null,e.K=null,e.db=null,e.eb=null,e.g=null,e.i=null,e.j=null,e.k=null,e.gb=null,e.o=null,e.p=null,e.q=null,e.r=null,e.$=null,e.ib=null,e.S=null,e.T=null,e.t=null,e.s=null,e.u=null,e.v=null,e.w=null,e.B=null,e.A=null,e.C=null,e.D=null,e.F=null,e.G=null,e.H=null,e.I=null,e.J=null,e.P=null,e.Z=null,e.U=null,e.V=null,e.W=null,e.X=null,e.Y=null,e._=null,e.ab=null,e.cb=null,e.hb=null,e.nb=null,e.lb=null,e.mb=null,e.ob=null,e.pb=null,e.jb=null,e.kb=null,e.N=!1,e.O=!1}function AKt(e,t,n){var i,r,o,u;for(Wt(n,"Graph transformation ("+e.a+")",1),u=a0(t.a),o=new q(t.b);o.a0&&(e.a=l+(D-1)*o,t.c.b+=e.a,t.f.b+=e.a)),L.a.gc()!=0&&(A=new DB(1,o),D=Mue(A,t,L,N,t.f.b+l-t.c.b),D>0&&(t.f.b+=l+(D-1)*o))}function jE(e,t){var n,i,r,o;o=e.F,t==null?(e.F=null,nE(e,null)):(e.F=(yt(t),t),i=af(t,is(60)),i!=-1?(r=t.substr(0,i),af(t,is(46))==-1&&!rt(r,M2)&&!rt(r,Q6)&&!rt(r,ck)&&!rt(r,Z6)&&!rt(r,eP)&&!rt(r,tP)&&!rt(r,nP)&&!rt(r,iP)&&(r=ett),n=Y9(t,is(62)),n!=-1&&(r+=""+t.substr(n+1)),nE(e,r)):(r=t,af(t,is(46))==-1&&(i=af(t,is(91)),i!=-1&&(r=t.substr(0,i)),!rt(r,M2)&&!rt(r,Q6)&&!rt(r,ck)&&!rt(r,Z6)&&!rt(r,eP)&&!rt(r,tP)&&!rt(r,nP)&&!rt(r,iP)?(r=ett,i!=-1&&(r+=""+t.substr(i))):r=t),nE(e,r),r==t&&(e.F=e.D))),(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,5,o,t))}function DKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;if(N=t.b.c.length,!(N<3)){for(D=oe(Qt,_n,25,N,15,1),v=0,p=new q(t.b);p.au)&&Yi(e.b,c(z.b,17));++a}o=u}}}function Eue(e,t){var n;if(t==null||rt(t,rs)||t.length==0&&e.k!=(yd(),t3))return null;switch(e.k.g){case 1:return b7(t,GE)?(Pt(),ZE):b7(t,_V)?(Pt(),hb):null;case 2:try{return Ce(vu(t,Ar,Fn))}catch(i){if(i=gi(i),Q(i,127))return null;throw V(i)}case 4:try{return aw(t)}catch(i){if(i=gi(i),Q(i,127))return null;throw V(i)}case 3:return t;case 5:return Xqe(e),nUe(e,t);case 6:return Xqe(e),qxt(e,e.a,t);case 7:try{return n=ext(e),n.Jf(t),n}catch(i){if(i=gi(i),Q(i,32))return null;throw V(i)}default:throw V(new Ao("Invalid type set for this layout option."))}}function kKt(e){K5();var t,n,i,r,o,u,a;for(a=new IAe,n=new q(e);n.a=a.b.c)&&(a.b=t),(!a.c||t.c<=a.c.c)&&(a.d=a.c,a.c=t),(!a.e||t.d>=a.e.d)&&(a.e=t),(!a.f||t.d<=a.f.d)&&(a.f=t);return i=new v7((Q_(),V0)),zC(e,crt,new Js(U(G(QT,1),xe,369,0,[i]))),u=new v7(Ow),zC(e,ort,new Js(U(G(QT,1),xe,369,0,[u]))),r=new v7(Aw),zC(e,rrt,new Js(U(G(QT,1),xe,369,0,[r]))),o=new v7(Pv),zC(e,irt,new Js(U(G(QT,1),xe,369,0,[o]))),Nq(i.c,V0),Nq(r.c,Aw),Nq(o.c,Pv),Nq(u.c,Ow),a.a.c=oe(xt,xe,1,0,5,1),Hi(a.a,i.c),Hi(a.a,Kg(r.c)),Hi(a.a,o.c),Hi(a.a,Kg(u.c)),a}function Sue(e){var t;switch(e.d){case 1:{if(e.hj())return e.o!=-2;break}case 2:{if(e.hj())return e.o==-2;break}case 3:case 5:case 4:case 6:case 7:return e.o>-2;default:return!1}switch(t=e.gj(),e.p){case 0:return t!=null&&Be(Fe(t))!=s5(e.k,0);case 1:return t!=null&&c(t,217).a!=tn(e.k)<<24>>24;case 2:return t!=null&&c(t,172).a!=(tn(e.k)&Ni);case 6:return t!=null&&s5(c(t,162).a,e.k);case 5:return t!=null&&c(t,19).a!=tn(e.k);case 7:return t!=null&&c(t,184).a!=tn(e.k)<<16>>16;case 3:return t!=null&&ge(Te(t))!=e.j;case 4:return t!=null&&c(t,155).a!=e.j;default:return t==null?e.n!=null:!$n(t,e.n)}}function sT(e,t,n){var i,r,o,u;return e.Fk()&&e.Ek()&&(u=PB(e,c(n,56)),le(u)!==le(n))?(e.Oi(t),e.Ui(t,zBe(e,t,u)),e.rk()&&(o=(r=c(n,49),e.Dk()?e.Bk()?r.ih(e.b,Xr(c(at(Xc(e.b),e.aj()),18)).n,c(at(Xc(e.b),e.aj()).Yj(),26).Bj(),null):r.ih(e.b,di(r.Tg(),Xr(c(at(Xc(e.b),e.aj()),18))),null,null):r.ih(e.b,-1-e.aj(),null,null)),!c(u,49).eh()&&(o=(i=c(u,49),e.Dk()?e.Bk()?i.gh(e.b,Xr(c(at(Xc(e.b),e.aj()),18)).n,c(at(Xc(e.b),e.aj()).Yj(),26).Bj(),o):i.gh(e.b,di(i.Tg(),Xr(c(at(Xc(e.b),e.aj()),18))),null,o):i.gh(e.b,-1-e.aj(),null,o))),o&&o.Fi()),Qs(e.b)&&e.$i(e.Zi(9,n,u,t,!1)),u):n}function gXe(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;for(p=ge(Te(B(e,(Oe(),tp)))),i=ge(Te(B(e,Ebe))),A=new yN,pe(A,tp,p+i),d=t,Y=d.d,N=d.c.i,ie=d.d.i,z=uee(N.c),ne=uee(ie.c),r=new Se,v=z;v<=ne;v++)a=new Nh(e),Sg(a,(Dt(),ur)),pe(a,(ye(),Hn),d),pe(a,ji,(wr(),Ic)),pe(a,KR,A),D=c(Ne(e.b,v),29),v==z?cw(a,D.a.c.length-n,D):po(a,D),ue=ge(Te(B(d,Id))),ue<0&&(ue=0,pe(d,Id,ue)),a.o.b=ue,L=g.Math.floor(ue/2),u=new gc,Ji(u,(Ie(),Mt)),Bo(u,a),u.n.b=L,l=new gc,Ji(l,jt),Bo(l,a),l.n.b=L,br(d,u),o=new c0,Mo(o,d),pe(o,yo,null),Rr(o,l),br(o,Y),LOt(a,d,o),r.c[r.c.length]=o,d=o;return r}function gH(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;for(l=c(vd(e,(Ie(),Mt)).Kc().Pb(),11).e,D=c(vd(e,jt).Kc().Pb(),11).g,a=l.c.length,ne=Ol(c(Ne(e.j,0),11));a-- >0;){for(N=(pt(0,l.c.length),c(l.c[0],17)),r=(pt(0,D.c.length),c(D.c[0],17)),ie=r.d.e,o=Do(ie,r,0),$Pt(N,r.d,o),Rr(r,null),br(r,null),L=N.a,t&&Cn(L,new go(ne)),i=Mn(r.a,0);i.b!=i.d.c;)n=c(Pn(i),8),Cn(L,new go(n));for(Y=N.b,A=new q(r.b);A.a0&&(u=g.Math.max(u,qKe(e.C.b+i.d.b,r))),p=i,v=r,A=o;e.C&&e.C.c>0&&(D=A+e.C.c,d&&(D+=p.d.c),u=g.Math.max(u,(Il(),Na(ql),g.Math.abs(v-1)<=ql||v==1||isNaN(v)&&isNaN(1)?0:D/(1-v)))),n.n.b=0,n.a.a=u}function pXe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D;if(n=c(so(e.b,t),124),l=c(c(Vn(e.r,t),21),84),l.dc()){n.n.d=0,n.n.a=0;return}for(d=e.u.Hc((js(),Wh)),u=0,e.A.Hc((ou(),Cb))&&YWe(e,t),a=l.Kc(),p=null,A=0,v=0;a.Ob();)i=c(a.Pb(),111),o=ge(Te(i.b.We((X9(),Rk)))),r=i.b.rf().b,p?(D=v+p.d.a+e.w+i.d.d,u=g.Math.max(u,(Il(),Na(ql),g.Math.abs(A-o)<=ql||A==o||isNaN(A)&&isNaN(o)?0:D/(o-A)))):e.C&&e.C.d>0&&(u=g.Math.max(u,qKe(e.C.d+i.d.d,o))),p=i,A=o,v=r;e.C&&e.C.a>0&&(D=v+e.C.a,d&&(D+=p.d.a),u=g.Math.max(u,(Il(),Na(ql),g.Math.abs(A-1)<=ql||A==1||isNaN(A)&&isNaN(1)?0:D/(1-A)))),n.n.d=0,n.a.b=u}function wXe(e,t,n){var i,r,o,u,a,l;for(this.g=e,a=t.d.length,l=n.d.length,this.d=oe(nh,Ed,10,a+l,0,1),u=0;u0?K$(this,this.f/this.a):Tl(t.g,t.d[0]).a!=null&&Tl(n.g,n.d[0]).a!=null?K$(this,(ge(Tl(t.g,t.d[0]).a)+ge(Tl(n.g,n.d[0]).a))/2):Tl(t.g,t.d[0]).a!=null?K$(this,Tl(t.g,t.d[0]).a):Tl(n.g,n.d[0]).a!=null&&K$(this,Tl(n.g,n.d[0]).a)}function RKt(e,t){var n,i,r,o,u,a,l,d,p,v;for(e.a=new Mxe(aTt(WP)),i=new q(t.a);i.a=1&&(z-u>0&&v>=0?(l.n.a+=N,l.n.b+=o*u):z-u<0&&p>=0&&(l.n.a+=N*z,l.n.b+=o));e.o.a=t.a,e.o.b=t.b,pe(e,(Oe(),wb),(ou(),i=c(rl(tM),9),new ku(i,c(Da(i,i.length),9),0)))}function FKt(e,t,n,i,r,o){var u;if(!(t==null||!OK(t,ime,rme)))throw V(new St("invalid scheme: "+t));if(!e&&!(n!=null&&af(n,is(35))==-1&&n.length>0&&(fn(0,n.length),n.charCodeAt(0)!=47)))throw V(new St("invalid opaquePart: "+n));if(e&&!(t!=null&&ZM(Bx,t.toLowerCase()))&&!(n==null||!OK(n,oM,cM)))throw V(new St(Ket+n));if(e&&t!=null&&ZM(Bx,t.toLowerCase())&&!O7t(n))throw V(new St(Ket+n));if(!xAt(i))throw V(new St("invalid device: "+i));if(!Tjt(r))throw u=r==null?"invalid segments: null":"invalid segment: "+Pjt(r),V(new St(u));if(!(o==null||af(o,is(35))==-1))throw V(new St("invalid query: "+o))}function BKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;for(Wt(t,"Calculate Graph Size",1),t.n&&e&&Ra(t,xa(e),(ru(),Tu)),a=$E,l=$E,o=Ule,u=Ule,v=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));v.e!=v.i.gc();)d=c(Vt(v),33),L=d.i,N=d.j,Y=d.g,i=d.f,r=c(Ke(d,(kn(),Dj)),142),a=g.Math.min(a,L-r.b),l=g.Math.min(l,N-r.d),o=g.Math.max(o,L+Y+r.c),u=g.Math.max(u,N+i+r.a);for(D=c(Ke(e,(kn(),Sb)),116),A=new $e(a-D.b,l-D.d),p=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));p.e!=p.i.gc();)d=c(Vt(p),33),es(d,d.i-A.a),ts(d,d.j-A.b);z=o-a+(D.b+D.c),n=u-l+(D.d+D.a),p0(e,z),b0(e,n),t.n&&e&&Ra(t,xa(e),(ru(),Tu))}function yXe(e){var t,n,i,r,o,u,a,l,d,p;for(i=new Se,u=new q(e.e.a);u.a0){y7(e,n,0),n.a+=String.fromCharCode(i),r=P9t(t,o),y7(e,n,r),o+=r-1;continue}i==39?o+11)for(N=oe(Qt,_n,25,e.b.b.c.length,15,1),v=0,d=new q(e.b.b);d.a=a&&r<=l)a<=r&&o<=l?(n[p++]=r,n[p++]=o,i+=2):a<=r?(n[p++]=r,n[p++]=l,e.b[i]=l+1,u+=2):o<=l?(n[p++]=a,n[p++]=o,i+=2):(n[p++]=a,n[p++]=l,e.b[i]=l+1);else if(lA1)&&a<10);lZ(e.c,new n3e),_Xe(e),TSt(e.c),LKt(e.f)}function HKt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(Be(Fe(B(n,(Oe(),Bw)))))for(a=new q(n.j);a.a=2){for(l=Mn(n,0),u=c(Pn(l),8),a=c(Pn(l),8);a.a0&&vI(d,!0,(eo(),Va)),a.k==(Dt(),Bi)&&Wxe(d),Kn(e.f,a,t)}}function UKt(e,t,n){var i,r,o,u,a,l,d,p,v,A;switch(Wt(n,"Node promotion heuristic",1),e.g=t,Zqt(e),e.q=c(B(t,(Oe(),FU)),260),p=c(B(e.g,ube),19).a,o=new K_e,e.q.g){case 2:case 1:TE(e,o);break;case 3:for(e.q=(iv(),WR),TE(e,o),l=0,a=new q(e.a);a.ae.j&&(e.q=gj,TE(e,o));break;case 4:for(e.q=(iv(),WR),TE(e,o),d=0,r=new q(e.b);r.ae.k&&(e.q=bj,TE(e,o));break;case 6:A=xi(g.Math.ceil(e.f.length*p/100)),TE(e,new iTe(A));break;case 5:v=xi(g.Math.ceil(e.d*p/100)),TE(e,new rTe(v));break;default:TE(e,o)}$Nt(e,t),qt(n)}function SXe(e,t,n){var i,r,o,u;this.j=e,this.e=Ice(e),this.o=this.j.e,this.i=!!this.o,this.p=this.i?c(Ne(n,Nr(this.o).p),214):null,r=c(B(e,(ye(),Cc)),21),this.g=r.Hc((to(),Gu)),this.b=new Se,this.d=new VHe(this.e),u=c(B(this.j,Y2),230),this.q=MTt(t,u,this.e),this.k=new GLe(this),o=kl(U(G(Trt,1),xe,225,0,[this,this.d,this.k,this.q])),t==(w0(),wj)&&!Be(Fe(B(e,(Oe(),Lw))))?(i=new jce(this.e),o.c[o.c.length]=i,this.c=new rie(i,u,c(this.q,402))):t==wj&&Be(Fe(B(e,(Oe(),Lw))))?(i=new jce(this.e),o.c[o.c.length]=i,this.c=new TKe(i,u,c(this.q,402))):this.c=new COe(t,this),Ee(o,this.c),rXe(o,this.e),this.s=jHt(this.k)}function WKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;for(v=c(G9((u=Mn(new t1(t).a.d,0),new Dy(u))),86),L=v?c(B(v,(ic(),bW)),86):null,r=1;v&&L;){for(l=0,ue=0,n=v,i=L,a=0;a=e.i?(++e.i,Ee(e.a,Ce(1)),Ee(e.b,p)):(i=e.c[t.p][1],Lu(e.a,d,Ce(c(Ne(e.a,d),19).a+1-i)),Lu(e.b,d,ge(Te(Ne(e.b,d)))+p-i*e.e)),(e.q==(iv(),gj)&&(c(Ne(e.a,d),19).a>e.j||c(Ne(e.a,d-1),19).a>e.j)||e.q==bj&&(ge(Te(Ne(e.b,d)))>e.k||ge(Te(Ne(e.b,d-1)))>e.k))&&(l=!1),u=new Kt(Ht(ko(t).a.Kc(),new j));dn(u);)o=c(rn(u),17),a=o.c.i,e.f[a.p]==d&&(v=PXe(e,a),r=r+c(v.a,19).a,l=l&&Be(Fe(v.b)));return e.f[t.p]=d,r=r+e.c[t.p][0],new yr(Ce(r),(Pt(),!!l))}function Mue(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y;for(v=new en,u=new Se,GGe(e,n,e.d.fg(),u,v),GGe(e,i,e.d.gg(),u,v),e.b=.2*(N=xUe($o(new ht(null,new bt(u,16)),new YSe)),z=xUe($o(new ht(null,new bt(u,16)),new XSe)),g.Math.min(N,z)),o=0,a=0;a=2&&(Y=iWe(u,!0,A),!e.e&&(e.e=new sje(e)),C9t(e.e,Y,u,e.b)),NVe(u,A),lqt(u),D=-1,p=new q(u);p.aa)}function XKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(n=c(B(e,(Oe(),ji)),98),u=e.f,o=e.d,a=u.a+o.b+o.c,l=0-o.d-e.c.b,p=u.b+o.d+o.a-e.c.b,d=new Se,v=new Se,r=new q(t);r.a0),c(p.a.Xb(p.c=--p.b),17));o!=i&&p.b>0;)e.a[o.p]=!0,e.a[i.p]=!0,o=(Lt(p.b>0),c(p.a.Xb(p.c=--p.b),17));p.b>0&&nu(p)}}function TXe(e,t,n){var i,r,o,u,a,l,d,p,v;if(e.a!=t.Aj())throw V(new St(UE+t.ne()+K0));if(i=gd((vs(),Ir),t).$k(),i)return i.Aj().Nh().Ih(i,n);if(u=gd(Ir,t).al(),u){if(n==null)return null;if(a=c(n,15),a.dc())return"";for(v=new nd,o=a.Kc();o.Ob();)r=o.Pb(),co(v,u.Aj().Nh().Ih(u,r)),v.a+=" ";return xF(v,v.a.length-1)}if(p=gd(Ir,t).bl(),!p.dc()){for(d=p.Kc();d.Ob();)if(l=c(d.Pb(),148),l.wj(n))try{if(v=l.Aj().Nh().Ih(l,n),v!=null)return v}catch(A){if(A=gi(A),!Q(A,102))throw V(A)}throw V(new St("Invalid value: '"+n+"' for datatype :"+t.ne()))}return c(t,834).Fj(),n==null?null:Q(n,172)?""+c(n,172).a:Fs(n)==Mk?nDe(rM[0],c(n,199)):Ro(n)}function nqt(e){var t,n,i,r,o,u,a,l,d,p;for(d=new wi,a=new wi,o=new q(e);o.a-1){for(r=Mn(a,0);r.b!=r.d.c;)i=c(Pn(r),128),i.v=u;for(;a.b!=0;)for(i=c(uq(a,0),128),n=new q(i.i);n.a0&&(n+=l.n.a+l.o.a/2,++v),L=new q(l.j);L.a0&&(n/=v),Y=oe(gr,lo,25,i.a.c.length,15,1),a=0,d=new q(i.a);d.a=a&&r<=l)a<=r&&o<=l?i+=2:a<=r?(e.b[i]=l+1,u+=2):o<=l?(n[p++]=r,n[p++]=a-1,i+=2):(n[p++]=r,n[p++]=a-1,e.b[i]=l+1,u+=2);else if(l0?r-=864e5:r+=864e5,l=new Jee(xr(ns(t.q.getTime()),r))),p=new _m,d=e.a.length,o=0;o=97&&i<=122||i>=65&&i<=90){for(u=o+1;u=d)throw V(new St("Missing trailing '"));u+10&&n.c==0&&(!t&&(t=new Se),t.c[t.c.length]=n);if(t)for(;t.c.length!=0;){if(n=c(ad(t,0),233),n.b&&n.b.c.length>0){for(o=(!n.b&&(n.b=new Se),new q(n.b));o.aDo(e,n,0))return new yr(r,n)}else if(ge(Tl(r.g,r.d[0]).a)>ge(Tl(n.g,n.d[0]).a))return new yr(r,n)}for(a=(!n.e&&(n.e=new Se),n.e).Kc();a.Ob();)u=c(a.Pb(),233),l=(!u.b&&(u.b=new Se),u.b),Vp(0,l.c.length),WS(l.c,0,n),u.c==l.c.length&&(t.c[t.c.length]=u)}return null}function kXe(e,t){var n,i,r,o,u,a,l,d,p;if(e==null)return rs;if(l=t.a.zc(e,t),l!=null)return"[...]";for(n=new Hg(zr,"[","]"),r=e,o=0,u=r.length;o=14&&p<=16))?t.a._b(i)?(n.a?wn(n.a,n.b):n.a=new lu(n.d),a5(n.a,"[...]")):(a=$g(i),d=new _5(t),jh(n,kXe(a,d))):Q(i,177)?jh(n,Zkt(c(i,177))):Q(i,190)?jh(n,q7t(c(i,190))):Q(i,195)?jh(n,QDt(c(i,195))):Q(i,2012)?jh(n,H7t(c(i,2012))):Q(i,48)?jh(n,Qkt(c(i,48))):Q(i,364)?jh(n,hRt(c(i,364))):Q(i,832)?jh(n,Jkt(c(i,832))):Q(i,104)&&jh(n,Xkt(c(i,104))):jh(n,i==null?rs:Ro(i));return n.a?n.e.length==0?n.a.a:n.a.a+(""+n.e):n.c}function RXe(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;for(a=rv(t,!1,!1),Y=HI(a),i&&(Y=_I(Y)),ne=ge(Te(Ke(t,(o6(),TG)))),z=(Lt(Y.b!=0),c(Y.a.a.c,8)),v=c(hl(Y,1),8),Y.b>2?(p=new Se,Hi(p,new Hf(Y,1,Y.b)),o=dJe(p,ne+e.a),ie=new kq(o),Mo(ie,t),n.c[n.c.length]=ie):i?ie=c(Bt(e.b,Uf(t)),266):ie=c(Bt(e.b,M1(t)),266),l=Uf(t),i&&(l=M1(t)),u=mkt(z,l),d=ne+e.a,u.a?(d+=g.Math.abs(z.b-v.b),N=new $e(v.a,(v.b+z.b)/2)):(d+=g.Math.abs(z.a-v.a),N=new $e((v.a+z.a)/2,v.b)),i?Kn(e.d,t,new Xoe(ie,u,N,d)):Kn(e.c,t,new Xoe(ie,u,N,d)),Kn(e.b,t,ie),L=(!t.n&&(t.n=new Me(Lo,t,1,7)),t.n),D=new $t(L);D.e!=D.i.gc();)A=c(Vt(D),137),r=eT(e,A,!0,0,0),n.c[n.c.length]=r}function lqt(e){var t,n,i,r,o,u,a,l,d,p;for(d=new Se,a=new Se,u=new q(e);u.a-1){for(o=new q(a);o.a0)&&(iQ(l,g.Math.min(l.o,r.o-1)),FA(l,l.i-1),l.i==0&&(a.c[a.c.length]=l))}}function AE(e,t,n){var i,r,o,u,a,l,d;if(d=e.c,!t&&(t=ume),e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&(l=new sr(e,1,2,d,e.c),n?n.Ei(l):n=l),d!=t){if(Q(e.Cb,284))e.Db>>16==-10?n=c(e.Cb,284).nk(t,n):e.Db>>16==-15&&(!t&&(t=(ot(),Ql)),!d&&(d=(ot(),Ql)),e.Cb.nh()&&(l=new Ah(e.Cb,1,13,d,t,wd(Ns(c(e.Cb,59)),e),!1),n?n.Ei(l):n=l));else if(Q(e.Cb,88))e.Db>>16==-23&&(Q(t,88)||(t=(ot(),Ea)),Q(d,88)||(d=(ot(),Ea)),e.Cb.nh()&&(l=new Ah(e.Cb,1,10,d,t,wd(dc(c(e.Cb,26)),e),!1),n?n.Ei(l):n=l));else if(Q(e.Cb,444))for(a=c(e.Cb,836),u=(!a.b&&(a.b=new zA(new BN)),a.b),o=(i=new Gg(new Pg(u.a).a),new VA(i));o.a.b;)r=c(g0(o.a).cd(),87),n=AE(r,H7(r,a),n)}return n}function fqt(e,t){var n,i,r,o,u,a,l,d,p,v,A;for(u=Be(Fe(Ke(e,(Oe(),Bw)))),A=c(Ke(e,Kw),21),l=!1,d=!1,v=new $t((!e.c&&(e.c=new Me(Vs,e,9,9)),e.c));v.e!=v.i.gc()&&(!l||!d);){for(o=c(Vt(v),118),a=0,r=d1(Ll(U(G(zl,1),xe,20,0,[(!o.d&&(o.d=new dt(rr,o,8,5)),o.d),(!o.e&&(o.e=new dt(rr,o,7,4)),o.e)])));dn(r)&&(i=c(rn(r),79),p=u&&T0(i)&&Be(Fe(Ke(i,pb))),n=fXe((!i.b&&(i.b=new dt(Ut,i,4,7)),i.b),o)?e==yi(Co(c(ee((!i.c&&(i.c=new dt(Ut,i,5,8)),i.c),0),82))):e==yi(Co(c(ee((!i.b&&(i.b=new dt(Ut,i,4,7)),i.b),0),82))),!((p||n)&&(++a,a>1))););(a>0||A.Hc((js(),Wh))&&(!o.n&&(o.n=new Me(Lo,o,1,7)),o.n).i>0)&&(l=!0),a>1&&(d=!0)}l&&t.Fc((to(),Gu)),d&&t.Fc((to(),mP))}function xXe(e){var t,n,i,r,o,u,a,l,d,p,v,A;if(A=c(Ke(e,(kn(),Eb)),21),A.dc())return null;if(a=0,u=0,A.Hc((ou(),$j))){for(p=c(Ke(e,UP),98),i=2,n=2,r=2,o=2,t=yi(e)?c(Ke(yi(e),rp),103):c(Ke(e,rp),103),d=new $t((!e.c&&(e.c=new Me(Vs,e,9,9)),e.c));d.e!=d.i.gc();)if(l=c(Vt(d),118),v=c(Ke(l,Gv),61),v==(Ie(),Vo)&&(v=lue(l,t),ao(l,Gv,v)),p==(wr(),Ic))switch(v.g){case 1:i=g.Math.max(i,l.i+l.g);break;case 2:n=g.Math.max(n,l.j+l.f);break;case 3:r=g.Math.max(r,l.i+l.g);break;case 4:o=g.Math.max(o,l.j+l.f)}else switch(v.g){case 1:i+=l.g+2;break;case 2:n+=l.f+2;break;case 3:r+=l.g+2;break;case 4:o+=l.f+2}a=g.Math.max(i,r),u=g.Math.max(n,o)}return k0(e,a,u,!0,!0)}function bH(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;for(ie=c(gu(CO(si(new ht(null,new bt(t.d,16)),new ITe(n)),new TTe(n)),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),v=Fn,p=Ar,l=new q(t.b.j);l.a0,d?d&&(A=Y.p,u?++A:--A,v=c(Ne(Y.c.a,A),10),i=Cqe(v),D=!(Bq(i,Pe,n[0])||rxe(i,Pe,n[0]))):D=!0),L=!1,be=t.D.i,be&&be.c&&a.e&&(p=u&&be.p>0||!u&&be.p0&&(t.a+=zr),sD(c(Vt(a),160),t);for(t.a+=Sz,l=new Vy((!i.c&&(i.c=new dt(Ut,i,5,8)),i.c));l.e!=l.i.gc();)l.e>0&&(t.a+=zr),sD(c(Vt(l),160),t);t.a+=")"}}function wqt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D;if(o=c(B(e,(ye(),Hn)),79),!!o){for(i=e.a,r=new go(n),Wn(r,s7t(e)),Y_(e.d.i,e.c.i)?(A=e.c,v=Ko(U(G(ir,1),we,8,0,[A.n,A.a])),hr(v,n)):v=Ol(e.c),Ri(i,v,i.a,i.a.a),D=Ol(e.d),B(e,TU)!=null&&Wn(D,c(B(e,TU),8)),Ri(i,D,i.c.b,i.c),Qp(i,r),u=rv(o,!0,!0),RO(u,c(ee((!o.b&&(o.b=new dt(Ut,o,4,7)),o.b),0),82)),xO(u,c(ee((!o.c&&(o.c=new dt(Ut,o,5,8)),o.c),0),82)),rT(i,u),p=new q(e.b);p.a=0){for(l=null,a=new _r(p.a,d+1);a.bu?1:Wb(isNaN(0),isNaN(u)))<0&&(Na(Mf),(g.Math.abs(u-1)<=Mf||u==1||isNaN(u)&&isNaN(1)?0:u<1?-1:u>1?1:Wb(isNaN(u),isNaN(1)))<0)&&(Na(Mf),(g.Math.abs(0-a)<=Mf||a==0||isNaN(0)&&isNaN(a)?0:0a?1:Wb(isNaN(0),isNaN(a)))<0)&&(Na(Mf),(g.Math.abs(a-1)<=Mf||a==1||isNaN(a)&&isNaN(1)?0:a<1?-1:a>1?1:Wb(isNaN(a),isNaN(1)))<0)),o)}function vqt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe;for(v=new Tne(new wQ(e));v.b!=v.c.a.d;)for(p=$Be(v),a=c(p.d,56),t=c(p.e,56),u=a.Tg(),N=0,ue=(u.i==null&&wf(u),u.i).length;N=0&&N=d.c.c.length?p=uie((Dt(),Ui),ur):p=uie((Dt(),ur),ur),p*=2,o=n.a.g,n.a.g=g.Math.max(o,o+(p-o)),u=n.b.g,n.b.g=g.Math.max(u,u+(p-u)),r=t}}function Eqt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be;for(be=nRe(e),p=new Se,a=e.c.length,v=a-1,A=a+1;be.a.c!=0;){for(;n.b!=0;)ne=(Lt(n.b!=0),c(Fu(n,n.a.a),112)),D5(be.a,ne)!=null,ne.g=v--,fue(ne,t,n,i);for(;t.b!=0;)ue=(Lt(t.b!=0),c(Fu(t,t.a.a),112)),D5(be.a,ue)!=null,ue.g=A++,fue(ue,t,n,i);for(d=Ar,Y=(u=new m5(new b5(new qM(be.a).a).b),new HM(u));iC(Y.a.a);){if(z=(o=e8(Y.a),c(o.cd(),112)),!i&&z.b>0&&z.a<=0){p.c=oe(xt,xe,1,0,5,1),p.c[p.c.length]=z;break}N=z.i-z.d,N>=d&&(N>d&&(p.c=oe(xt,xe,1,0,5,1),d=N),p.c[p.c.length]=z)}p.c.length!=0&&(l=c(Ne(p,S7(r,p.c.length)),112),D5(be.a,l)!=null,l.g=A++,fue(l,t,n,i),p.c=oe(xt,xe,1,0,5,1))}for(ie=e.c.length+1,L=new q(e);L.a0&&(A.d+=p.n.d,A.d+=p.d),A.a>0&&(A.a+=p.n.a,A.a+=p.d),A.b>0&&(A.b+=p.n.b,A.b+=p.d),A.c>0&&(A.c+=p.n.c,A.c+=p.d),A}function NXe(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L;for(A=n.d,v=n.c,o=new $e(n.f.a+n.d.b+n.d.c,n.f.b+n.d.d+n.d.a),u=o.b,d=new q(e.a);d.a0&&(e.c[t.c.p][t.p].d+=$s(e.i,24)*vT*.07000000029802322-.03500000014901161,e.c[t.c.p][t.p].a=e.c[t.c.p][t.p].d/e.c[t.c.p][t.p].b)}}function Aqt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;for(L=new q(e);L.ai.d,i.d=g.Math.max(i.d,t),a&&n&&(i.d=g.Math.max(i.d,i.a),i.a=i.d+r);break;case 3:n=t>i.a,i.a=g.Math.max(i.a,t),a&&n&&(i.a=g.Math.max(i.a,i.d),i.d=i.a+r);break;case 2:n=t>i.c,i.c=g.Math.max(i.c,t),a&&n&&(i.c=g.Math.max(i.b,i.c),i.b=i.c+r);break;case 4:n=t>i.b,i.b=g.Math.max(i.b,t),a&&n&&(i.b=g.Math.max(i.b,i.c),i.c=i.b+r)}}}function Rqt(e){var t,n,i,r,o,u,a,l,d,p,v;for(d=new q(e);d.a0||p.j==Mt&&p.e.c.length-p.g.c.length<0)){t=!1;break}for(r=new q(p.g);r.a=d&&be>=z&&(A+=L.n.b+N.n.b+N.a.b-ue,++a));if(n)for(u=new q(ie.e);u.a=d&&be>=z&&(A+=L.n.b+N.n.b+N.a.b-ue,++a))}a>0&&(Pe+=A/a,++D)}D>0?(t.a=r*Pe/D,t.g=D):(t.a=0,t.g=0)}function Lqt(e,t){var n,i,r,o,u,a,l,d,p,v,A;for(r=new q(e.a.b);r.a$i||t.o==yb&&p0&&es(Y,ue*Pe),be>0&&ts(Y,be*Ae);for(U5(e.b,new U2e),t=new Se,a=new Gg(new Pg(e.c).a);a.b;)u=g0(a),i=c(u.cd(),79),n=c(u.dd(),395).a,r=rv(i,!1,!1),v=FVe(Uf(i),HI(r),n),rT(v,r),ne=XVe(i),ne&&Do(t,ne,0)==-1&&(t.c[t.c.length]=ne,nLe(ne,(Lt(v.b!=0),c(v.a.a.c,8)),n));for(z=new Gg(new Pg(e.d).a);z.b;)N=g0(z),i=c(N.cd(),79),n=c(N.dd(),395).a,r=rv(i,!1,!1),v=FVe(M1(i),_I(HI(r)),n),v=_I(v),rT(v,r),ne=JVe(i),ne&&Do(t,ne,0)==-1&&(t.c[t.c.length]=ne,nLe(ne,(Lt(v.b!=0),c(v.c.b.c,8)),n))}function $Xe(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae;if(n.c.length!=0){for(D=new Se,A=new q(n);A.a1)for(D=new vue(L,ne,i),Mr(ne,new kOe(e,D)),u.c[u.c.length]=D,v=ne.a.ec().Kc();v.Ob();)p=c(v.Pb(),46),Jc(o,p.b);if(a.a.gc()>1)for(D=new vue(L,a,i),Mr(a,new ROe(e,D)),u.c[u.c.length]=D,v=a.a.ec().Kc();v.Ob();)p=c(v.Pb(),46),Jc(o,p.b)}}function qXe(e){Gb(e,new Zg(t9(qb(Bb(Kb($b(new _g,Cf),"ELK Radial"),'A radial layout provider which is based on the algorithm of Peter Eades published in "Drawing free trees.", published by International Institute for Advanced Study of Social Information Science, Fujitsu Limited in 1991. The radial layouter takes a tree and places the nodes in radial order around the root. The nodes of the same tree level are placed on the same radius.'),new f5e),Cf))),je(e,Cf,VD,Le(fat)),je(e,Cf,_w,Le(hat)),je(e,Cf,gv,Le(sat)),je(e,Cf,R2,Le(uat)),je(e,Cf,k2,Le(aat)),je(e,Cf,qE,Le(cat)),je(e,Cf,N6,Le(A0e)),je(e,Cf,HE,Le(lat)),je(e,Cf,fV,Le(PW)),je(e,Cf,lV,Le(MW)),je(e,Cf,Zle,Le(O0e)),je(e,Cf,Yle,Le(ux)),je(e,Cf,Xle,Le(ax)),je(e,Cf,Jle,Le(_j)),je(e,Cf,Qle,Le(D0e))}function Tue(e){var t;if(this.r=v5t(new TA,new fN),this.b=new n6(c(nn(Gr),290)),this.p=new n6(c(nn(Gr),290)),this.i=new n6(c(nn(eit),290)),this.e=e,this.o=new go(e.rf()),this.D=e.Df()||Be(Fe(e.We((kn(),Oj)))),this.A=c(e.We((kn(),Eb)),21),this.B=c(e.We(G1),21),this.q=c(e.We(UP),98),this.u=c(e.We(Uw),21),!CDt(this.u))throw V(new ym("Invalid port label placement: "+this.u));if(this.v=Be(Fe(e.We(lwe))),this.j=c(e.We(zv),21),!Xxt(this.j))throw V(new ym("Invalid node label placement: "+this.j));this.n=c(u6(e,Jpe),116),this.k=ge(Te(u6(e,Px))),this.d=ge(Te(u6(e,gwe))),this.w=ge(Te(u6(e,vwe))),this.s=ge(Te(u6(e,bwe))),this.t=ge(Te(u6(e,pwe))),this.C=c(u6(e,wwe),142),this.c=2*this.d,t=!this.B.Hc((Ks(),Kj)),this.f=new r6(0,t,0),this.g=new r6(1,t,0),HN(this.f,(al(),Nc),this.g)}function Vqt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At;for(ne=0,L=0,D=0,A=1,ie=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));ie.e!=ie.i.gc();)z=c(Vt(ie),33),A+=Th(new Kt(Ht(Fh(z).a.Kc(),new j))),Ve=z.g,L=g.Math.max(L,Ve),v=z.f,D=g.Math.max(D,v),ne+=Ve*v;for(N=(!e.a&&(e.a=new Me(Ei,e,10,11)),e.a).i,u=ne+2*i*i*A*N,o=g.Math.sqrt(u),l=g.Math.max(o*n,L),a=g.Math.max(o/n,D),Y=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));Y.e!=Y.i.gc();)z=c(Vt(Y),33),et=r.b+($s(t,26)*A6+$s(t,27)*O6)*(l-z.g),At=r.b+($s(t,26)*A6+$s(t,27)*O6)*(a-z.f),es(z,et),ts(z,At);for(Ae=l+(r.b+r.c),Pe=a+(r.d+r.a),be=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));be.e!=be.i.gc();)for(ue=c(Vt(be),33),p=new Kt(Ht(Fh(ue).a.Kc(),new j));dn(p);)d=c(rn(p),79),b6(d)||GHt(d,t,Ae,Pe);Ae+=r.b+r.c,Pe+=r.d+r.a,k0(e,Ae,Pe,!1,!0)}function aD(e){var t,n,i,r,o,u,a,l,d,p,v;if(e==null)throw V(new uf(rs));if(d=e,o=e.length,l=!1,o>0&&(t=(fn(0,e.length),e.charCodeAt(0)),(t==45||t==43)&&(e=e.substr(1),--o,l=t==45)),o==0)throw V(new uf(L0+d+'"'));for(;e.length>0&&(fn(0,e.length),e.charCodeAt(0)==48);)e=e.substr(1),--o;if(o>(AYe(),ent)[10])throw V(new uf(L0+d+'"'));for(r=0;r0&&(v=-parseInt(e.substr(0,i),10),e=e.substr(i),o-=i,n=!1);o>=u;){if(i=parseInt(e.substr(0,u),10),e=e.substr(u),o-=u,n)n=!1;else{if(uc(v,a)<0)throw V(new uf(L0+d+'"'));v=jr(v,p)}v=P1(v,i)}if(uc(v,0)>0)throw V(new uf(L0+d+'"'));if(!l&&(v=N_(v),uc(v,0)<0))throw V(new uf(L0+d+'"'));return v}function jue(e,t){vRe();var n,i,r,o,u,a,l;if(this.a=new vee(this),this.b=e,this.c=t,this.f=IB(wo((vs(),Ir),t)),this.f.dc())if((a=gce(Ir,e))==t)for(this.e=!0,this.d=new Se,this.f=new v6e,this.f.Fc(lb),c(oD(iI(Ir,bu(e)),""),26)==e&&this.f.Fc(S5(Ir,bu(e))),r=Yq(Ir,e).Kc();r.Ob();)switch(i=c(r.Pb(),170),o0(wo(Ir,i))){case 4:{this.d.Fc(i);break}case 5:{this.f.Gc(IB(wo(Ir,i)));break}}else if(Wr(),c(t,66).Oj())for(this.e=!0,this.f=null,this.d=new Se,u=0,l=(e.i==null&&wf(e),e.i).length;u=0&&u0&&(c(so(e.b,t),124).a.b=n)}function Gqt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;for(Wt(t,"Comment pre-processing",1),n=0,l=new q(e.a);l.a0&&(l=(fn(0,t.length),t.charCodeAt(0)),l!=64)){if(l==37&&(v=t.lastIndexOf("%"),d=!1,v!=0&&(v==A-1||(d=(fn(v+1,t.length),t.charCodeAt(v+1)==46))))){if(u=t.substr(1,v-1),ne=rt("%",u)?null:Oue(u),i=0,d)try{i=vu(t.substr(v+2),Ar,Fn)}catch(ue){throw ue=gi(ue),Q(ue,127)?(a=ue,V(new mO(a))):V(ue)}for(z=fre(e.Wg());z.Ob();)if(L=UO(z),Q(L,510)&&(r=c(L,590),ie=r.d,(ne==null?ie==null:rt(ne,ie))&&i--==0))return r;return null}if(p=t.lastIndexOf("."),D=p==-1?t:t.substr(0,p),n=0,p!=-1)try{n=vu(t.substr(p+1),Ar,Fn)}catch(ue){if(ue=gi(ue),Q(ue,127))D=t;else throw V(ue)}for(D=rt("%",D)?null:Oue(D),N=fre(e.Wg());N.Ob();)if(L=UO(N),Q(L,191)&&(o=c(L,191),Y=o.ne(),(D==null?Y==null:rt(D,Y))&&n--==0))return o;return null}return dXe(e,t)}function Yqt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot;for(Pe=new Se,L=new q(e.b);L.a=t.length)return{done:!0};var r=t[i++];return{value:[r,n.get(r)],done:!1}}}},eFt()||(e.prototype.createObject=function(){return{}},e.prototype.get=function(t){return this.obj[":"+t]},e.prototype.set=function(t,n){this.obj[":"+t]=n},e.prototype[ZH]=function(t){delete this.obj[":"+t]},e.prototype.keys=function(){var t=[];for(var n in this.obj)n.charCodeAt(0)==58&&t.push(n.substring(1));return t}),e}function Jqt(e){aue();var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(e==null)return null;if(v=e.length*8,v==0)return"";for(a=v%24,D=v/24|0,A=a!=0?D+1:D,o=null,o=oe(Yu,vf,25,A*4,15,1),d=0,p=0,t=0,n=0,i=0,u=0,r=0,l=0;l>24,d=(t&3)<<24>>24,L=(t&-128)==0?t>>2<<24>>24:(t>>2^192)<<24>>24,N=(n&-128)==0?n>>4<<24>>24:(n>>4^240)<<24>>24,z=(i&-128)==0?i>>6<<24>>24:(i>>6^252)<<24>>24,o[u++]=Fd[L],o[u++]=Fd[N|d<<4],o[u++]=Fd[p<<2|z],o[u++]=Fd[i&63];return a==8?(t=e[r],d=(t&3)<<24>>24,L=(t&-128)==0?t>>2<<24>>24:(t>>2^192)<<24>>24,o[u++]=Fd[L],o[u++]=Fd[d<<4],o[u++]=61,o[u++]=61):a==16&&(t=e[r],n=e[r+1],p=(n&15)<<24>>24,d=(t&3)<<24>>24,L=(t&-128)==0?t>>2<<24>>24:(t>>2^192)<<24>>24,N=(n&-128)==0?n>>4<<24>>24:(n>>4^240)<<24>>24,o[u++]=Fd[L],o[u++]=Fd[N|d<<4],o[u++]=Fd[p<<2],o[u++]=61),pf(o,0,o.length)}function Qqt(e,t){var n,i,r,o,u,a,l;if(e.e==0&&e.p>0&&(e.p=-(e.p-1)),e.p>Ar&&lie(t,e.p-O1),u=t.q.getDate(),$C(t,1),e.k>=0&&R6t(t,e.k),e.c>=0?$C(t,e.c):e.k>=0?(l=new Ore(t.q.getFullYear()-O1,t.q.getMonth(),35),i=35-l.q.getDate(),$C(t,g.Math.min(i,u))):$C(t,u),e.f<0&&(e.f=t.q.getHours()),e.b>0&&e.f<12&&(e.f+=12),V2t(t,e.f==24&&e.g?0:e.f),e.j>=0&&VMt(t,e.j),e.n>=0&&aCt(t,e.n),e.i>=0&&m7e(t,xr(jr(BI(ns(t.q.getTime()),_d),_d),e.i)),e.a&&(r=new u9,lie(r,r.q.getFullYear()-O1-80),iF(ns(t.q.getTime()),ns(r.q.getTime()))&&lie(t,r.q.getFullYear()-O1+100)),e.d>=0){if(e.c==-1)n=(7+e.d-t.q.getDay())%7,n>3&&(n-=7),a=t.q.getMonth(),$C(t,t.q.getDate()+n),t.q.getMonth()!=a&&$C(t,t.q.getDate()+(n>0?-7:7));else if(t.q.getDay()!=e.d)return!1}return e.o>Ar&&(o=t.q.getTimezoneOffset(),m7e(t,xr(ns(t.q.getTime()),(e.o-o)*60*_d))),!0}function VXe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;if(r=B(t,(ye(),Hn)),!!Q(r,239)){for(L=c(r,33),N=t.e,A=new go(t.c),o=t.d,A.a+=o.b,A.b+=o.d,ue=c(Ke(L,(Oe(),$R)),174),bs(ue,(Ks(),Ix))&&(D=c(Ke(L,gbe),116),Mmt(D,o.a),kmt(D,o.d),Cmt(D,o.b),Rmt(D,o.c)),n=new Se,p=new q(t.a);p.a0&&Ee(e.p,p),Ee(e.o,p);t-=i,D=l+t,d+=t*e.e,Lu(e.a,a,Ce(D)),Lu(e.b,a,d),e.j=g.Math.max(e.j,D),e.k=g.Math.max(e.k,d),e.d+=t,t+=N}}function Ie(){Ie=Z;var e;Vo=new bC(R6,0),_t=new bC(yD,1),jt=new bC(az,2),Yt=new bC(lz,3),Mt=new bC(fz,4),Jl=(st(),new t_((e=c(rl(Gr),9),new ku(e,c(Da(e,e.length),9),0)))),Xa=dd(ui(_t,U(G(Gr,1),ac,61,0,[]))),Uu=dd(ui(jt,U(G(Gr,1),ac,61,0,[]))),Cu=dd(ui(Yt,U(G(Gr,1),ac,61,0,[]))),wa=dd(ui(Mt,U(G(Gr,1),ac,61,0,[]))),cs=dd(ui(_t,U(G(Gr,1),ac,61,0,[Yt]))),Vc=dd(ui(jt,U(G(Gr,1),ac,61,0,[Mt]))),Ja=dd(ui(_t,U(G(Gr,1),ac,61,0,[Mt]))),Ds=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt]))),Iu=dd(ui(Yt,U(G(Gr,1),ac,61,0,[Mt]))),Wu=dd(ui(jt,U(G(Gr,1),ac,61,0,[Yt]))),ks=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt,Mt]))),os=dd(ui(jt,U(G(Gr,1),ac,61,0,[Yt,Mt]))),ss=dd(ui(_t,U(G(Gr,1),ac,61,0,[Yt,Mt]))),Ss=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt,Yt]))),Tc=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt,Yt,Mt])))}function YXe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;if(t.b!=0){for(D=new wi,a=null,L=null,i=xi(g.Math.floor(g.Math.log(t.b)*g.Math.LOG10E)+1),l=0,ne=Mn(t,0);ne.b!=ne.d.c;)for(Y=c(Pn(ne),86),le(L)!==le(B(Y,(ic(),BP)))&&(L=ln(B(Y,BP)),l=0),L!=null?a=L+pNe(l++,i):a=pNe(l++,i),pe(Y,BP,a),z=(r=Mn(new t1(Y).a.d,0),new Dy(r));r9(z.a);)N=c(Pn(z.a),188).c,Ri(D,N,D.c.b,D.c),pe(N,BP,a);for(A=new en,u=0;u=l){Lt(Y.b>0),Y.a.Xb(Y.c=--Y.b);break}else N.a>d&&(r?(Hi(r.b,N.b),r.a=g.Math.max(r.a,N.a),nu(Y)):(Ee(N.b,v),N.c=g.Math.min(N.c,d),N.a=g.Math.max(N.a,l),r=N));r||(r=new RAe,r.c=d,r.a=l,Np(Y,r),Ee(r.b,v))}for(a=t.b,p=0,z=new q(i);z.aa?1:0:(e.b&&(e.b._b(o)&&(r=c(e.b.xc(o),19).a),e.b._b(l)&&(a=c(e.b.xc(l),19).a)),ra?1:0)):t.e.c.length!=0&&n.g.c.length!=0?1:-1}function nHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae;for(Wt(t,BQe,1),N=new Se,Pe=new Se,d=new q(e.b);d.a0&&(ne-=D),yue(u,ne),p=0,A=new q(u.a);A.a0),a.a.Xb(a.c=--a.b)),l=.4*i*p,!o&&a.bt.d.c){if(D=e.c[t.a.d],z=e.c[v.a.d],D==z)continue;$a(Aa(ja(Oa(Ta(new Zu,1),100),D),z))}}}}}function Oue(e){hH();var t,n,i,r,o,u,a,l;if(e==null)return null;if(r=af(e,is(37)),r<0)return e;for(l=new lu(e.substr(0,r)),t=oe(Ps,vv,25,4,15,1),a=0,i=0,u=e.length;rr+2&&rK((fn(r+1,e.length),e.charCodeAt(r+1)),tme,nme)&&rK((fn(r+2,e.length),e.charCodeAt(r+2)),tme,nme))if(n=j4t((fn(r+1,e.length),e.charCodeAt(r+1)),(fn(r+2,e.length),e.charCodeAt(r+2))),r+=2,i>0?(n&192)==128?t[a++]=n<<24>>24:i=0:n>=128&&((n&224)==192?(t[a++]=n<<24>>24,i=2):(n&240)==224?(t[a++]=n<<24>>24,i=3):(n&248)==240&&(t[a++]=n<<24>>24,i=4)),i>0){if(a==i){switch(a){case 2:{Dg(l,((t[0]&31)<<6|t[1]&63)&Ni);break}case 3:{Dg(l,((t[0]&15)<<12|(t[1]&63)<<6|t[2]&63)&Ni);break}}a=0,i=0}}else{for(o=0;o0){if(u+i>e.length)return!1;a=B7(e.substr(0,u+i),t)}else a=B7(e,t);switch(o){case 71:return a=ev(e,u,U(G(Re,1),we,2,6,[OJe,DJe]),t),r.e=a,!0;case 77:return HNt(e,t,r,a,u);case 76:return zNt(e,t,r,a,u);case 69:return xkt(e,t,u,r);case 99:return Lkt(e,t,u,r);case 97:return a=ev(e,u,U(G(Re,1),we,2,6,["AM","PM"]),t),r.b=a,!0;case 121:return VNt(e,t,u,a,n,r);case 100:return a<=0?!1:(r.c=a,!0);case 83:return a<0?!1:YAt(a,u,t[0],r);case 104:a==12&&(a=0);case 75:case 72:return a<0?!1:(r.f=a,r.g=!1,!0);case 107:return a<0?!1:(r.f=a,r.g=!0,!0);case 109:return a<0?!1:(r.j=a,!0);case 115:return a<0?!1:(r.n=a,!0);case 90:if(uPe&&(L.c=Pe-L.b),Ee(u.d,new yB(L,soe(u,L))),ie=t==_t?g.Math.max(ie,N.b+d.b.rf().b):g.Math.min(ie,N.b));for(ie+=t==_t?e.t:-e.t,ne=Soe((u.e=ie,u)),ne>0&&(c(so(e.b,t),124).a.b=ne),p=A.Kc();p.Ob();)d=c(p.Pb(),111),!(!d.c||d.c.d.c.length<=0)&&(L=d.c.i,L.c-=d.e.a,L.d-=d.e.b)}function aHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;for(t=new en,l=new $t(e);l.e!=l.i.gc();){for(a=c(Vt(l),33),n=new er,Kn(AG,a,n),D=new q2e,r=c(gu(new ht(null,new t0(new Kt(Ht(XI(a).a.Kc(),new j)))),KRe(D,Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)])))),83),lKe(n,c(r.xc((Pt(),!0)),14),new H2e),i=c(gu(si(c(r.xc(!1),15).Lc(),new z2e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[Su]))),15),u=i.Kc();u.Ob();)o=c(u.Pb(),79),A=XVe(o),A&&(d=c(Uo(Po(t.f,A)),21),d||(d=pWe(A),Kc(t.f,A,d)),qr(n,d));for(r=c(gu(new ht(null,new t0(new Kt(Ht(Fh(a).a.Kc(),new j)))),KRe(D,Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[Su])))),83),lKe(n,c(r.xc(!0),14),new V2e),i=c(gu(si(c(r.xc(!1),15).Lc(),new G2e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[Su]))),15),v=i.Kc();v.Ob();)p=c(v.Pb(),79),A=JVe(p),A&&(d=c(Uo(Po(t.f,A)),21),d||(d=pWe(A),Kc(t.f,A,d)),qr(n,d))}}function lHt(e,t){cH();var n,i,r,o,u,a,l,d,p,v,A,D,L,N;if(l=uc(e,0)<0,l&&(e=N_(e)),uc(e,0)==0)switch(t){case 0:return"0";case 1:return LE;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return D=new n1,t<0?D.a+="0E+":D.a+="0E",D.a+=t==Ar?"2147483648":""+-t,D.a}p=18,v=oe(Yu,vf,25,p+1,15,1),n=p,N=e;do d=N,N=BI(N,10),v[--n]=tn(xr(48,P1(d,jr(N,10))))&Ni;while(uc(N,0)!=0);if(r=P1(P1(P1(p,n),t),1),t==0)return l&&(v[--n]=45),pf(v,n,p-n);if(t>0&&uc(r,-6)>=0){if(uc(r,0)>=0){for(o=n+tn(r),a=p-1;a>=o;a--)v[a+1]=v[a];return v[++o]=46,l&&(v[--n]=45),pf(v,n,p-n+1)}for(u=2;iF(u,xr(N_(r),1));u++)v[--n]=48;return v[--n]=46,v[--n]=48,l&&(v[--n]=45),pf(v,n,p-n)}return L=n+1,i=p,A=new _m,l&&(A.a+="-"),i-L>=1?(Dg(A,v[n]),A.a+=".",A.a+=pf(v,n+1,p-n-1)):A.a+=pf(v,n,p-n),A.a+="E",uc(r,0)>0&&(A.a+="+"),A.a+=""+P5(r),A.a}function fHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D;if(e.e.a.$b(),e.f.a.$b(),e.c.c=oe(xt,xe,1,0,5,1),e.i.c=oe(xt,xe,1,0,5,1),e.g.a.$b(),t)for(u=new q(t.a);u.a=1&&(be-d>0&&L>=0?(es(v,v.i+ue),ts(v,v.j+l*d)):be-d<0&&D>=0&&(es(v,v.i+ue*be),ts(v,v.j+l)));return ao(e,(kn(),Eb),(ou(),o=c(rl(tM),9),new ku(o,c(Da(o,o.length),9),0))),new $e(Pe,p)}function QXe(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L;if(D=yi(Co(c(ee((!e.b&&(e.b=new dt(Ut,e,4,7)),e.b),0),82))),L=yi(Co(c(ee((!e.c&&(e.c=new dt(Ut,e,5,8)),e.c),0),82))),v=D==L,a=new Tr,t=c(Ke(e,(QO(),Iwe)),74),t&&t.b>=2){if((!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i==0)n=(Hb(),r=new DA,r),on((!e.a&&(e.a=new Me(mi,e,6,6)),e.a),n);else if((!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i>1)for(A=new Vy((!e.a&&(e.a=new Me(mi,e,6,6)),e.a));A.e!=A.i.gc();)l6(A);rT(t,c(ee((!e.a&&(e.a=new Me(mi,e,6,6)),e.a),0),202))}if(v)for(i=new $t((!e.a&&(e.a=new Me(mi,e,6,6)),e.a));i.e!=i.i.gc();)for(n=c(Vt(i),202),d=new $t((!n.a&&(n.a=new qi(ma,n,5)),n.a));d.e!=d.i.gc();)l=c(Vt(d),469),a.a=g.Math.max(a.a,l.a),a.b=g.Math.max(a.b,l.b);for(u=new $t((!e.n&&(e.n=new Me(Lo,e,1,7)),e.n));u.e!=u.i.gc();)o=c(Vt(u),137),p=c(Ke(o,YP),8),p&&Cl(o,p.a,p.b),v&&(a.a=g.Math.max(a.a,o.i+o.g),a.b=g.Math.max(a.b,o.j+o.f));return a}function hHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve;for(ne=t.c.length,r=new cv(e.a,n,null,null),Ve=oe(gr,lo,25,ne,15,1),N=oe(gr,lo,25,ne,15,1),L=oe(gr,lo,25,ne,15,1),z=0,a=0;aVe[l]&&(z=l),v=new q(e.a.b);v.aD&&(o&&(Tg(Pe,A),Tg(Ve,Ce(d.b-1))),ti=n.b,Zi+=A+t,A=0,p=g.Math.max(p,n.b+n.c+Jt)),es(a,ti),ts(a,Zi),p=g.Math.max(p,ti+Jt+n.c),A=g.Math.max(A,v),ti+=Jt+t;if(p=g.Math.max(p,i),Ot=Zi+A+n.a,OtEf,et=g.Math.abs(A.b-L.b)>Ef,(!n&&Ve&&et||n&&(Ve||et))&&Cn(z.a,ue)),qr(z.a,i),i.b==0?A=ue:A=(Lt(i.b!=0),c(i.c.b.c,8)),ATt(D,v,N),KKe(r)==Ae&&(Nr(Ae.i)!=r.a&&(N=new Tr,Yce(N,Nr(Ae.i),ie)),pe(z,TU,N)),ekt(D,z,ie),p.a.zc(D,p);Rr(z,be),br(z,Ae)}for(d=p.a.ec().Kc();d.Ob();)l=c(d.Pb(),17),Rr(l,null),br(l,null);qt(t)}function ZXe(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;if(e.gc()==1)return c(e.Xb(0),231);if(e.gc()<=0)return new uO;for(r=e.Kc();r.Ob();){for(n=c(r.Pb(),231),L=0,p=Fn,v=Fn,l=Ar,d=Ar,D=new q(n.e);D.aa&&(ne=0,ue+=u+Y,u=0),QFt(N,n,ne,ue),t=g.Math.max(t,ne+z.a),u=g.Math.max(u,z.b),ne+=z.a+Y;return N}function eJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;switch(p=new ds,e.a.g){case 3:A=c(B(t.e,(ye(),bb)),15),D=c(B(t.j,bb),15),L=c(B(t.f,bb),15),n=c(B(t.e,xv),15),i=c(B(t.j,xv),15),r=c(B(t.f,xv),15),u=new Se,Hi(u,A),D.Jc(new W4e),Hi(u,Q(D,152)?s2(c(D,152)):Q(D,131)?c(D,131).a:Q(D,54)?new Fb(D):new jp(D)),Hi(u,L),o=new Se,Hi(o,n),Hi(o,Q(i,152)?s2(c(i,152)):Q(i,131)?c(i,131).a:Q(i,54)?new Fb(i):new jp(i)),Hi(o,r),pe(t.f,bb,u),pe(t.f,xv,o),pe(t.f,hge,t.f),pe(t.e,bb,null),pe(t.e,xv,null),pe(t.j,bb,null),pe(t.j,xv,null);break;case 1:qr(p,t.e.a),Cn(p,t.i.n),qr(p,Kg(t.j.a)),Cn(p,t.a.n),qr(p,t.f.a);break;default:qr(p,t.e.a),qr(p,Kg(t.j.a)),qr(p,t.f.a)}na(t.f.a),qr(t.f.a,p),Rr(t.f,t.e.c),a=c(B(t.e,(Oe(),yo)),74),d=c(B(t.j,yo),74),l=c(B(t.f,yo),74),(a||d||l)&&(v=new ds,mne(v,l),mne(v,d),mne(v,a),pe(t.f,yo,v)),Rr(t.j,null),br(t.j,null),Rr(t.e,null),br(t.e,null),po(t.a,null),po(t.i,null),t.g&&eJe(e,t.g)}function pHt(e){aue();var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(e==null||(o=yO(e),L=iAt(o),L%4!=0))return null;if(N=L/4|0,N==0)return oe(Ps,vv,25,0,15,1);for(v=null,t=0,n=0,i=0,r=0,u=0,a=0,l=0,d=0,D=0,A=0,p=0,v=oe(Ps,vv,25,N*3,15,1);D>4)<<24>>24,v[A++]=((n&15)<<4|i>>2&15)<<24>>24,v[A++]=(i<<6|r)<<24>>24}return!JM(u=o[p++])||!JM(a=o[p++])?null:(t=Zl[u],n=Zl[a],l=o[p++],d=o[p++],Zl[l]==-1||Zl[d]==-1?l==61&&d==61?(n&15)!=0?null:(z=oe(Ps,vv,25,D*3+1,15,1),bc(v,0,z,0,D*3),z[A]=(t<<2|n>>4)<<24>>24,z):l!=61&&d==61?(i=Zl[l],(i&3)!=0?null:(z=oe(Ps,vv,25,D*3+2,15,1),bc(v,0,z,0,D*3),z[A++]=(t<<2|n>>4)<<24>>24,z[A]=((n&15)<<4|i>>2&15)<<24>>24,z)):null:(i=Zl[l],r=Zl[d],v[A++]=(t<<2|n>>4)<<24>>24,v[A++]=((n&15)<<4|i>>2&15)<<24>>24,v[A++]=(i<<6|r)<<24>>24,v))}function wHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be;for(Wt(t,BQe,1),L=c(B(e,(Oe(),zh)),218),r=new q(e.b);r.a=2){for(N=!0,A=new q(o.j),n=c(K(A),11),D=null;A.a0&&(r=c(Ne(z.c.a,Pe-1),10),u=e.i[r.p],Ve=g.Math.ceil(Am(e.n,r,z)),o=be.a.e-z.d.d-(u.a.e+r.o.b+r.d.a)-Ve),d=Ii,Pe0&&Ae.a.e.e-Ae.a.a-(Ae.b.e.e-Ae.b.a)<0,L=ne.a.e.e-ne.a.a-(ne.b.e.e-ne.b.a)<0&&Ae.a.e.e-Ae.a.a-(Ae.b.e.e-Ae.b.a)>0,D=ne.a.e.e+ne.b.aAe.b.e.e+Ae.a.a,ue=0,!N&&!L&&(A?o+v>0?ue=v:d-i>0&&(ue=i):D&&(o+a>0?ue=a:d-ie>0&&(ue=ie))),be.a.e+=ue,be.b&&(be.d.e+=ue),!1))}function nJe(e,t,n){var i,r,o,u,a,l,d,p,v,A;if(i=new Ru(t.qf().a,t.qf().b,t.rf().a,t.rf().b),r=new zy,e.c)for(u=new q(t.wf());u.ad&&(i.a+=sDe(oe(Yu,vf,25,-d,15,1))),i.a+="Is",af(l,is(32))>=0)for(r=0;r=i.o.b/2}else ie=!v;ie?(Y=c(B(i,(ye(),X2)),15),Y?A?o=Y:(r=c(B(i,V2),15),r?Y.gc()<=r.gc()?o=Y:o=r:(o=new Se,pe(i,V2,o))):(o=new Se,pe(i,X2,o))):(r=c(B(i,(ye(),V2)),15),r?v?o=r:(Y=c(B(i,X2),15),Y?r.gc()<=Y.gc()?o=r:o=Y:(o=new Se,pe(i,X2,o))):(o=new Se,pe(i,V2,o))),o.Fc(e),pe(e,(ye(),SR),n),t.d==n?(br(t,null),n.e.c.length+n.g.c.length==0&&Bo(n,null),fjt(n)):(Rr(t,null),n.e.c.length+n.g.c.length==0&&Bo(n,null)),na(t.a)}function _Ht(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti;for(ie=new _r(e.b,0),p=t.Kc(),L=0,d=c(p.Pb(),19).a,be=0,n=new er,Ae=new Eh;ie.b=e.a&&(i=c$t(e,ie),p=g.Math.max(p,i.b),ue=g.Math.max(ue,i.d),Ee(a,new yr(ie,i)));for(Ve=new Se,d=0;d0),z.a.Xb(z.c=--z.b),et=new ta(e.b),Np(z,et),Lt(z.b0?(d=0,z&&(d+=a),d+=(et-1)*u,ne&&(d+=a),Ve&&ne&&(d=g.Math.max(d,oNt(ne,u,ie,Ae))),d0){for(A=p<100?null:new i1(p),d=new bre(t),L=d.g,Y=oe(Qt,_n,25,p,15,1),i=0,ue=new d0(p),r=0;r=0;)if(D!=null?$n(D,L[l]):le(D)===le(L[l])){Y.length<=i&&(z=Y,Y=oe(Qt,_n,25,2*Y.length,15,1),bc(z,0,Y,0,i)),Y[i++]=r,on(ue,L[l]);break e}if(D=D,le(D)===le(a))break}}if(d=ue,L=ue.g,p=i,i>Y.length&&(z=Y,Y=oe(Qt,_n,25,i,15,1),bc(z,0,Y,0,i)),i>0){for(ne=!0,o=0;o=0;)v2(e,Y[u]);if(i!=p){for(r=p;--r>=i;)v2(d,r);z=Y,Y=oe(Qt,_n,25,i,15,1),bc(z,0,Y,0,i)}t=d}}}else for(t=iOt(e,t),r=e.i;--r>=0;)t.Hc(e.g[r])&&(v2(e,r),ne=!0);if(ne){if(Y!=null){for(n=t.gc(),v=n==1?k5(e,4,t.Kc().Pb(),null,Y[0],N):k5(e,6,t,Y,Y[0],N),A=n<100?null:new i1(n),r=t.Kc();r.Ob();)D=r.Pb(),A=vte(e,c(D,72),A);A?(A.Ei(v),A.Fi()):Bn(e.e,v)}else{for(A=p_t(t.gc()),r=t.Kc();r.Ob();)D=r.Pb(),A=vte(e,c(D,72),A);A&&A.Fi()}return!0}else return!1}function CHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;for(n=new Aze(t),n.a||aBt(t),d=lFt(t),l=new u0,z=new PWe,N=new q(t.a);N.a0||n.o==Wl&&r0?(v=c(Ne(A.c.a,u-1),10),Ve=Am(e.b,A,v),z=A.n.b-A.d.d-(v.n.b+v.o.b+v.d.a+Ve)):z=A.n.b-A.d.d,d=g.Math.min(z,d),uu?ME(e,t,n):ME(e,n,t),ru?1:0}return i=c(B(t,(ye(),hc)),19).a,o=c(B(n,hc),19).a,i>o?ME(e,t,n):ME(e,n,t),io?1:0}function Due(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie;if(Be(Fe(Ke(t,(kn(),Ex)))))return st(),st(),Qr;if(d=(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i!=0,v=gRt(t),p=!v.dc(),d||p){if(r=c(Ke(t,j4),149),!r)throw V(new ym("Resolved algorithm is not set; apply a LayoutAlgorithmResolver before computing layout."));if(ie=tee(r,(_E(),xx)),fze(t),!d&&p&&!ie)return st(),st(),Qr;if(l=new Se,le(Ke(t,qv))===le((Rh(),kd))&&(tee(r,kx)||tee(r,Dx)))for(D=UWe(e,t),L=new wi,qr(L,(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));L.b!=0;)A=c(L.b==0?null:(Lt(L.b!=0),Fu(L,L.a.a)),33),fze(A),Y=le(Ke(A,qv))===le(XP),Y||Fg(A,GP)&&!bie(r,Ke(A,j4))?(a=Due(e,A,n,i),Hi(l,a),ao(A,qv,XP),lYe(A)):qr(L,(!A.a&&(A.a=new Me(Ei,A,10,11)),A.a));else for(D=(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i,u=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));u.e!=u.i.gc();)o=c(Vt(u),33),a=Due(e,o,n,i),Hi(l,a),lYe(o);for(z=new q(l);z.a=0?D=b2(a):D=II(b2(a)),e.Ye(_4,D)),d=new Tr,A=!1,e.Xe(ep)?(zee(d,c(e.We(ep),8)),A=!0):t3t(d,u.a/2,u.b/2),D.g){case 4:pe(p,zc,(Ku(),K1)),pe(p,MR,(zg(),jv)),p.o.b=u.b,N<0&&(p.o.a=-N),Ji(v,(Ie(),jt)),A||(d.a=u.a),d.a-=u.a;break;case 2:pe(p,zc,(Ku(),xw)),pe(p,MR,(zg(),d4)),p.o.b=u.b,N<0&&(p.o.a=-N),Ji(v,(Ie(),Mt)),A||(d.a=0);break;case 1:pe(p,gb,(Oh(),Ov)),p.o.a=u.a,N<0&&(p.o.b=-N),Ji(v,(Ie(),Yt)),A||(d.b=u.b),d.b-=u.b;break;case 3:pe(p,gb,(Oh(),z2)),p.o.a=u.a,N<0&&(p.o.b=-N),Ji(v,(Ie(),_t)),A||(d.b=0)}if(zee(v.n,d),pe(p,ep,d),t==Mb||t==ch||t==Ic){if(L=0,t==Mb&&e.Xe(Td))switch(D.g){case 1:case 2:L=c(e.We(Td),19).a;break;case 3:case 4:L=-c(e.We(Td),19).a}else switch(D.g){case 4:case 2:L=o.b,t==ch&&(L/=r.b);break;case 1:case 3:L=o.a,t==ch&&(L/=r.a)}pe(p,J0,L)}return pe(p,Zo,D),p}function jHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et;if(n=ge(Te(B(e.a.j,(Oe(),Gge)))),n<-1||!e.a.i||Wy(c(B(e.a.o,ji),98))||qo(e.a.o,(Ie(),jt)).gc()<2&&qo(e.a.o,Mt).gc()<2)return!0;if(e.a.c.Rf())return!1;for(be=0,ue=0,ne=new Se,l=e.a.e,d=0,p=l.length;d=n}function AHt(){gZ();function e(i){var r=this;this.dispatch=function(o){var u=o.data;switch(u.cmd){case"algorithms":var a=Eoe((st(),new W3(new yh(Z1.b))));i.postMessage({id:u.id,data:a});break;case"categories":var l=Eoe((st(),new W3(new yh(Z1.c))));i.postMessage({id:u.id,data:l});break;case"options":var d=Eoe((st(),new W3(new yh(Z1.d))));i.postMessage({id:u.id,data:d});break;case"register":NKt(u.algorithms),i.postMessage({id:u.id});break;case"layout":w$t(u.graph,u.layoutOptions||{},u.options||{}),i.postMessage({id:u.id,data:u.graph});break}},this.saveDispatch=function(o){try{r.dispatch(o)}catch(u){i.postMessage({id:o.data.id,error:u})}}}function t(i){var r=this;this.dispatcher=new e({postMessage:function(o){r.onmessage({data:o})}}),this.postMessage=function(o){setTimeout(function(){r.dispatcher.saveDispatch({data:o})},0)}}if(typeof document===iz&&typeof self!==iz){var n=new e(self);self.onmessage=n.saveDispatch}else typeof w!==iz&&w.exports&&(Object.defineProperty(m,"__esModule",{value:!0}),w.exports={default:t,Worker:t})}function OHt(e){e.N||(e.N=!0,e.b=Xo(e,0),_i(e.b,0),_i(e.b,1),_i(e.b,2),e.bb=Xo(e,1),_i(e.bb,0),_i(e.bb,1),e.fb=Xo(e,2),_i(e.fb,3),_i(e.fb,4),oi(e.fb,5),e.qb=Xo(e,3),_i(e.qb,0),oi(e.qb,1),oi(e.qb,2),_i(e.qb,3),_i(e.qb,4),oi(e.qb,5),_i(e.qb,6),e.a=On(e,4),e.c=On(e,5),e.d=On(e,6),e.e=On(e,7),e.f=On(e,8),e.g=On(e,9),e.i=On(e,10),e.j=On(e,11),e.k=On(e,12),e.n=On(e,13),e.o=On(e,14),e.p=On(e,15),e.q=On(e,16),e.s=On(e,17),e.r=On(e,18),e.t=On(e,19),e.u=On(e,20),e.v=On(e,21),e.w=On(e,22),e.B=On(e,23),e.A=On(e,24),e.C=On(e,25),e.D=On(e,26),e.F=On(e,27),e.G=On(e,28),e.H=On(e,29),e.J=On(e,30),e.I=On(e,31),e.K=On(e,32),e.M=On(e,33),e.L=On(e,34),e.P=On(e,35),e.Q=On(e,36),e.R=On(e,37),e.S=On(e,38),e.T=On(e,39),e.U=On(e,40),e.V=On(e,41),e.X=On(e,42),e.W=On(e,43),e.Y=On(e,44),e.Z=On(e,45),e.$=On(e,46),e._=On(e,47),e.ab=On(e,48),e.cb=On(e,49),e.db=On(e,50),e.eb=On(e,51),e.gb=On(e,52),e.hb=On(e,53),e.ib=On(e,54),e.jb=On(e,55),e.kb=On(e,56),e.lb=On(e,57),e.mb=On(e,58),e.nb=On(e,59),e.ob=On(e,60),e.pb=On(e,61))}function DHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;if(ie=0,t.f.a==0)for(z=new q(e);z.ad&&(pt(d,t.c.length),c(t.c[d],200)).a.c.length==0;)Jc(t,(pt(d,t.c.length),t.c[d]));if(!l){--o;continue}if(mBt(t,p,r,l,A,n,d,i)){v=!0;continue}if(A){if(M$t(t,p,r,l,n,d,i)){v=!0;continue}else if(Yre(p,r)){r.c=!0,v=!0;continue}}else if(Yre(p,r)){r.c=!0,v=!0;continue}if(v)continue}if(Yre(p,r)){r.c=!0,v=!0,l&&(l.k=!1);continue}else I7(r.q)}return v}function mH(e,t,n,i,r,o,u){var a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi;for(N=0,At=0,d=new q(e.b);d.aN&&(o&&(Tg(Pe,D),Tg(Ve,Ce(p.b-1)),Ee(e.d,L),a.c=oe(xt,xe,1,0,5,1)),ti=n.b,Zi+=D+t,D=0,v=g.Math.max(v,n.b+n.c+Jt)),a.c[a.c.length]=l,Sze(l,ti,Zi),v=g.Math.max(v,ti+Jt+n.c),D=g.Math.max(D,A),ti+=Jt+t,L=l;if(Hi(e.a,a),Ee(e.d,c(Ne(a,a.c.length-1),157)),v=g.Math.max(v,i),Ot=Zi+D+n.a,Ot1&&(u=g.Math.min(u,g.Math.abs(c(hl(a.a,1),8).b-p.b)))));else for(N=new q(t.j);N.ar&&(o=A.a-r,u=Fn,i.c=oe(xt,xe,1,0,5,1),r=A.a),A.a>=r&&(i.c[i.c.length]=a,a.a.b>1&&(u=g.Math.min(u,g.Math.abs(c(hl(a.a,a.a.b-2),8).b-A.b)))));if(i.c.length!=0&&o>t.o.a/2&&u>t.o.b/2){for(D=new gc,Bo(D,t),Ji(D,(Ie(),_t)),D.n.a=t.o.a/2,Y=new gc,Bo(Y,t),Ji(Y,Yt),Y.n.a=t.o.a/2,Y.n.b=t.o.b,l=new q(i);l.a=d.b?Rr(a,Y):Rr(a,D)):(d=c(T4t(a.a),8),z=a.a.b==0?Ol(a.c):c(Z9(a.a),8),z.b>=d.b?br(a,Y):br(a,D)),v=c(B(a,(Oe(),yo)),74),v&&nw(v,d,!0);t.n.a=r-t.o.a/2}}function NHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi,ju,Sa;if(At=null,Jt=t,Ot=lFe(e,cFe(n),Jt),H5(Ot,Ih(Jt,If)),ti=c(Bm(e.g,_2(Ch(Jt,IV))),33),A=Ch(Jt,"sourcePort"),i=null,A&&(i=_2(A)),Zi=c(Bm(e.j,i),118),!ti)throw a=fE(Jt),L="An edge must have a source node (edge id: '"+a,N=L+YE,V(new sf(N));if(Zi&&!df(jl(Zi),ti))throw l=Ih(Jt,If),z="The source port of an edge must be a port of the edge's source node (edge id: '"+l,Y=z+YE,V(new sf(Y));if(Ve=(!Ot.b&&(Ot.b=new dt(Ut,Ot,4,7)),Ot.b),o=null,Zi?o=Zi:o=ti,on(Ve,o),ju=c(Bm(e.g,_2(Ch(Jt,Ofe))),33),D=Ch(Jt,"targetPort"),r=null,D&&(r=_2(D)),Sa=c(Bm(e.j,r),118),!ju)throw v=fE(Jt),ie="An edge must have a target node (edge id: '"+v,ne=ie+YE,V(new sf(ne));if(Sa&&!df(jl(Sa),ju))throw d=Ih(Jt,If),ue="The target port of an edge must be a port of the edge's target node (edge id: '"+d,be=ue+YE,V(new sf(be));if(et=(!Ot.c&&(Ot.c=new dt(Ut,Ot,5,8)),Ot.c),u=null,Sa?u=Sa:u=ju,on(et,u),(!Ot.b&&(Ot.b=new dt(Ut,Ot,4,7)),Ot.b).i==0||(!Ot.c&&(Ot.c=new dt(Ut,Ot,5,8)),Ot.c).i==0)throw p=Ih(Jt,If),Pe=net+p,Ae=Pe+YE,V(new sf(Ae));return x7(Jt,Ot),Ixt(Jt,Ot),At=cK(e,Jt,Ot),At}function sJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At;return v=$Bt(Wc(e,(Ie(),Jl)),t),L=Xm(Wc(e,Xa),t),ue=Xm(Wc(e,Cu),t),Ve=T7(Wc(e,wa),t),A=T7(Wc(e,Uu),t),ie=Xm(Wc(e,Ja),t),N=Xm(Wc(e,Ds),t),Pe=Xm(Wc(e,Iu),t),be=Xm(Wc(e,Wu),t),et=T7(Wc(e,Vc),t),Y=Xm(Wc(e,cs),t),ne=Xm(Wc(e,ks),t),Ae=Xm(Wc(e,os),t),At=T7(Wc(e,ss),t),D=T7(Wc(e,Ss),t),z=Xm(Wc(e,Tc),t),n=qm(U(G(gr,1),lo,25,15,[ie.a,Ve.a,Pe.a,At.a])),i=qm(U(G(gr,1),lo,25,15,[L.a,v.a,ue.a,z.a])),r=Y.a,o=qm(U(G(gr,1),lo,25,15,[N.a,A.a,be.a,D.a])),d=qm(U(G(gr,1),lo,25,15,[ie.b,L.b,N.b,ne.b])),l=qm(U(G(gr,1),lo,25,15,[Ve.b,v.b,A.b,z.b])),p=et.b,a=qm(U(G(gr,1),lo,25,15,[Pe.b,ue.b,be.b,Ae.b])),fd(Wc(e,Jl),n+r,d+p),fd(Wc(e,Tc),n+r,d+p),fd(Wc(e,Xa),n+r,0),fd(Wc(e,Cu),n+r,d+p+l),fd(Wc(e,wa),0,d+p),fd(Wc(e,Uu),n+r+i,d+p),fd(Wc(e,Ds),n+r+i,0),fd(Wc(e,Iu),0,d+p+l),fd(Wc(e,Wu),n+r+i,d+p+l),fd(Wc(e,Vc),0,d),fd(Wc(e,cs),n,0),fd(Wc(e,os),0,d+p+l),fd(Wc(e,Ss),n+r+i,0),u=new Tr,u.a=qm(U(G(gr,1),lo,25,15,[n+i+r+o,et.a,ne.a,Ae.a])),u.b=qm(U(G(gr,1),lo,25,15,[d+l+p+a,Y.b,At.b,D.b])),u}function FHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;for(N=new Se,A=new q(e.d.b);A.ar.d.d+r.d.a?p.f.d=!0:(p.f.d=!0,p.f.a=!0))),i.b!=i.d.c&&(t=n);p&&(o=c(Bt(e.f,u.d.i),57),t.bo.d.d+o.d.a?p.f.d=!0:(p.f.d=!0,p.f.a=!0))}for(a=new Kt(Ht(ko(D).a.Kc(),new j));dn(a);)u=c(rn(a),17),u.a.b!=0&&(t=c(Z9(u.a),8),u.d.j==(Ie(),_t)&&(z=new E6(t,new $e(t.a,r.d.d),r,u),z.f.a=!0,z.a=u.d,N.c[N.c.length]=z),u.d.j==Yt&&(z=new E6(t,new $e(t.a,r.d.d+r.d.a),r,u),z.f.d=!0,z.a=u.d,N.c[N.c.length]=z))}return N}function BHt(e,t,n){var i,r,o,u,a,l,d,p,v;if(Wt(n,"Network simplex node placement",1),e.e=t,e.n=c(B(t,(ye(),Rv)),304),nKt(e),L7t(e),Di($o(new ht(null,new bt(e.e.b,16)),new fSe),new eje(e)),Di(si($o(si($o(new ht(null,new bt(e.e.b,16)),new PSe),new MSe),new CSe),new ISe),new ZTe(e)),Be(Fe(B(e.e,(Oe(),MP))))&&(u=yc(n,1),Wt(u,"Straight Edges Pre-Processing",1),_qt(e),qt(u)),w8t(e.f),o=c(B(t,TP),19).a*e.f.a.c.length,Xq(sZ(uZ(sB(e.f),o),!1),yc(n,1)),e.d.a.gc()!=0){for(u=yc(n,1),Wt(u,"Flexible Where Space Processing",1),a=c(Qb(M8(Yc(new ht(null,new bt(e.f.a,16)),new hSe),new oSe)),19).a,l=c(Qb(P8(Yc(new ht(null,new bt(e.f.a,16)),new dSe),new cSe)),19).a,d=l-a,p=Jb(new Cg,e.f),v=Jb(new Cg,e.f),$a(Aa(ja(Ta(Oa(new Zu,2e4),d),p),v)),Di(si(si(TB(e.i),new gSe),new bSe),new Jxe(a,p,d,v)),r=e.d.a.ec().Kc();r.Ob();)i=c(r.Pb(),213),i.g=1;Xq(sZ(uZ(sB(e.f),o),!1),yc(u,1)),qt(u)}Be(Fe(B(t,MP)))&&(u=yc(n,1),Wt(u,"Straight Edges Post-Processing",1),Ckt(e),qt(u)),oqt(e),e.e=null,e.f=null,e.i=null,e.c=null,Is(e.k),e.j=null,e.a=null,e.o=null,e.d.a.$b(),qt(n)}function $Ht(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be;for(a=new q(e.a.b);a.a0)if(i=v.gc(),d=xi(g.Math.floor((i+1)/2))-1,r=xi(g.Math.ceil((i+1)/2))-1,t.o==Wl)for(p=r;p>=d;p--)t.a[ue.p]==ue&&(N=c(v.Xb(p),46),L=c(N.a,10),!_h(n,N.b)&&D>e.b.e[L.p]&&(t.a[L.p]=ue,t.g[ue.p]=t.g[L.p],t.a[ue.p]=t.g[ue.p],t.f[t.g[ue.p].p]=(Pt(),!!(Be(t.f[t.g[ue.p].p])&ue.k==(Dt(),ur))),D=e.b.e[L.p]));else for(p=d;p<=r;p++)t.a[ue.p]==ue&&(Y=c(v.Xb(p),46),z=c(Y.a,10),!_h(n,Y.b)&&D=L&&(ie>L&&(D.c=oe(xt,xe,1,0,5,1),L=ie),D.c[D.c.length]=u);D.c.length!=0&&(A=c(Ne(D,S7(t,D.c.length)),128),Ot.a.Bc(A)!=null,A.s=N++,jse(A,et,Pe),D.c=oe(xt,xe,1,0,5,1))}for(ue=e.c.length+1,a=new q(e);a.aAt.s&&(nu(n),Jc(At.i,i),i.c>0&&(i.a=At,Ee(At.t,i),i.b=Ae,Ee(Ae.i,i)))}function kue(e){var t,n,i,r,o;switch(t=e.c,t){case 11:return e.Ml();case 12:return e.Ol();case 14:return e.Ql();case 15:return e.Tl();case 16:return e.Rl();case 17:return e.Ul();case 21:return xn(e),Ln(),Ln(),dM;case 10:switch(e.a){case 65:return e.yl();case 90:return e.Dl();case 122:return e.Kl();case 98:return e.El();case 66:return e.zl();case 60:return e.Jl();case 62:return e.Hl()}}switch(o=xHt(e),t=e.c,t){case 3:return e.Zl(o);case 4:return e.Xl(o);case 5:return e.Yl(o);case 0:if(e.a==123&&e.d=48&&t<=57){for(i=t-48;r=48&&t<=57;)if(i=i*10+t-48,i<0)throw V(new an(gn((un(),Nfe))))}else throw V(new an(gn((un(),Det))));if(n=i,t==44){if(r>=e.j)throw V(new an(gn((un(),Ret))));if((t=Pr(e.i,r++))>=48&&t<=57){for(n=t-48;r=48&&t<=57;)if(n=n*10+t-48,n<0)throw V(new an(gn((un(),Nfe))));if(i>n)throw V(new an(gn((un(),xet))))}else n=-1}if(t!=125)throw V(new an(gn((un(),ket))));e.sl(r)?(o=(Ln(),Ln(),new Gp(9,o)),e.d=r+1):(o=(Ln(),Ln(),new Gp(3,o)),e.d=r),o.dm(i),o.cm(n),xn(e)}}return o}function uJe(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot;for(N=new Dc(t.b),ue=new Dc(t.b),A=new Dc(t.b),Ve=new Dc(t.b),z=new Dc(t.b),Ae=Mn(t,0);Ae.b!=Ae.d.c;)for(be=c(Pn(Ae),11),a=new q(be.g);a.a0,Y=be.g.c.length>0,d&&Y?A.c[A.c.length]=be:d?N.c[N.c.length]=be:Y&&(ue.c[ue.c.length]=be);for(L=new q(N);L.a1)for(L=new Vy((!e.a&&(e.a=new Me(mi,e,6,6)),e.a));L.e!=L.i.gc();)l6(L);for(u=c(ee((!e.a&&(e.a=new Me(mi,e,6,6)),e.a),0),202),z=ti,ti>be+ue?z=be+ue:tiPe+N?Y=Pe+N:Zibe-ue&&zPe-N&&Yti+Jt?Ve=ti+Jt:beZi+Ae?et=Zi+Ae:Peti-Jt&&VeZi-Ae&&etn&&(A=n-1),D=eA+$s(t,24)*vT*v-v/2,D<0?D=1:D>i&&(D=i-1),r=(Hb(),l=new OA,l),jO(r,A),AO(r,D),on((!u.a&&(u.a=new qi(ma,u,5)),u.a),r)}function Oe(){Oe=Z,KU=(kn(),jlt),_be=Alt,hj=hwe,za=Olt,Z2=dwe,tp=Dlt,Hw=gwe,S4=bwe,P4=pwe,qU=Px,np=Pb,HU=klt,IP=vwe,KR=r3,fj=(Lue(),Cct),Lv=Ict,vb=Tct,Nv=jct,hst=new Yr(Sx,Ce(0)),E4=Sct,ybe=Pct,Q2=Mct,jbe=Jct,Ebe=Dct,Sbe=xct,VU=qct,Pbe=Fct,Mbe=$ct,qR=tst,GU=Qct,Ibe=Uct,Cbe=Vct,Tbe=Yct,Z0=wct,CP=mct,LU=xot,Qge=Not,bbe=new Yb(12),gbe=new Yr(Sb,bbe),Yge=(Lh(),D4),zh=new Yr(qpe,Yge),$w=new Yr(zs,0),dst=new Yr(eY,Ce(1)),TR=new Yr(n3,KE),mb=Ex,ji=UP,_4=Gv,ost=Aj,Of=ylt,Fw=qv,gst=new Yr(tY,(Pt(),!0)),Bw=Oj,pb=UW,wb=Eb,$R=G1,$U=_x,Wge=(eo(),ih),Pu=new Yr(rp,Wge),Q0=zv,FR=Jpe,Kw=Uw,fst=ZW,mbe=lwe,wbe=(Um(),Nj),new Yr(owe,wbe),ust=YW,ast=XW,lst=JW,sst=WW,zU=Oct,abe=oct,FU=rct,TP=Act,zc=Jot,Nw=Iot,PP=Cot,Lw=dot,Vge=got,DU=mot,lj=bot,kU=Pot,lbe=cct,fbe=sct,rbe=Vot,BR=_ct,BU=lct,NU=$ot,dbe=bct,Jge=kot,xU=Rot,OU=vx,hbe=uct,AR=cot,qge=oot,jR=rot,tbe=Hot,ebe=qot,nbe=zot,v4=Vv,yo=Hv,Id=zpe,Df=GW,RU=VW,Gge=yot,Td=QW,SP=Slt,xR=Plt,ep=swe,pbe=Mlt,y4=Clt,cbe=Zot,sbe=tct,qw=i3,jU=iot,ube=ict,RR=Aot,kR=jot,NR=Dj,obe=Wot,MP=hct,dj=wwe,Uge=Tot,vbe=Ect,Xge=Oot,cst=Xot,rst=Eot,ibe=Wpe,LR=Qot,DR=Sot,q1=hot,zge=lot,OR=uot,Hge=aot,AU=fot,J2=sot,Zge=Kot}function yH(e,t){cH();var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae;if(ne=e.e,p=e.d,r=e.a,ne==0)switch(t){case 0:return"0";case 1:return LE;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return Y=new n1,Y.a+="0E",Y.a+=-t,Y.a}if(N=p*10+1+7,z=oe(Yu,vf,25,N+1,15,1),n=N,p==1)if(o=r[0],o<0){Ae=Xi(o,no);do v=Ae,Ae=BI(Ae,10),z[--n]=48+tn(P1(v,jr(Ae,10)))&Ni;while(uc(Ae,0)!=0)}else{Ae=o;do v=Ae,Ae=Ae/10|0,z[--n]=48+(v-Ae*10)&Ni;while(Ae!=0)}else{ue=oe(Qt,_n,25,p,15,1),Pe=p,bc(r,0,ue,0,Pe);e:for(;;){for(ie=0,a=Pe-1;a>=0;a--)be=xr(Ph(ie,32),Xi(ue[a],no)),D=J7t(be),ue[a]=tn(D),ie=tn(h1(D,32));L=tn(ie),A=n;do z[--n]=48+L%10&Ni;while((L=L/10|0)!=0&&n!=0);for(i=9-A+n,u=0;u0;u++)z[--n]=48;for(l=Pe-1;ue[l]==0;l--)if(l==0)break e;Pe=l+1}for(;z[n]==48;)++n}return d=ne<0,d&&(z[--n]=45),pf(z,n,N-n)}function fJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe;switch(e.c=t,e.g=new en,n=(Ap(),new Ip(e.c)),i=new BA(n),poe(i),ne=ln(Ke(e.c,(KI(),fpe))),l=c(Ke(e.c,LW),316),be=c(Ke(e.c,NW),429),u=c(Ke(e.c,upe),482),ue=c(Ke(e.c,xW),430),e.j=ge(Te(Ke(e.c,zat))),a=e.a,l.g){case 0:a=e.a;break;case 1:a=e.b;break;case 2:a=e.i;break;case 3:a=e.e;break;case 4:a=e.f;break;default:throw V(new St(JD+(l.f!=null?l.f:""+l.g)))}if(e.d=new xLe(a,be,u),pe(e.d,(W_(),lP),Fe(Ke(e.c,qat))),e.d.c=Be(Fe(Ke(e.c,ape))),$8(e.c).i==0)return e.d;for(v=new $t($8(e.c));v.e!=v.i.gc();){for(p=c(Vt(v),33),D=p.g/2,A=p.f/2,Pe=new $e(p.i+D,p.j+A);tu(e.g,Pe);)xp(Pe,(g.Math.random()-.5)*Ef,(g.Math.random()-.5)*Ef);N=c(Ke(p,(kn(),Dj)),142),z=new QLe(Pe,new Ru(Pe.a-D-e.j/2-N.b,Pe.b-A-e.j/2-N.d,p.g+e.j+(N.b+N.c),p.f+e.j+(N.d+N.a))),Ee(e.d.i,z),Kn(e.g,Pe,new yr(z,p))}switch(ue.g){case 0:if(ne==null)e.d.d=c(Ne(e.d.i,0),65);else for(ie=new q(e.d.i);ie.a1&&Ri(p,Y,p.c.b,p.c),MO(r)));Y=ie}return p}function UHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi,ju,Sa,ef;for(Wt(n,"Greedy cycle removal",1),ne=t.a,ef=ne.c.length,e.a=oe(Qt,_n,25,ef,15,1),e.c=oe(Qt,_n,25,ef,15,1),e.b=oe(Qt,_n,25,ef,15,1),d=0,Y=new q(ne);Y.a0?Jt+1:1);for(u=new q(Pe.g);u.a0?Jt+1:1)}e.c[d]==0?Cn(e.e,N):e.a[d]==0&&Cn(e.f,N),++d}for(L=-1,D=1,v=new Se,e.d=c(B(t,(ye(),Y2)),230);ef>0;){for(;e.e.b!=0;)Zi=c(lB(e.e),10),e.b[Zi.p]=L--,nue(e,Zi),--ef;for(;e.f.b!=0;)ju=c(lB(e.f),10),e.b[ju.p]=D++,nue(e,ju),--ef;if(ef>0){for(A=Ar,ie=new q(ne);ie.a=A&&(ue>A&&(v.c=oe(xt,xe,1,0,5,1),A=ue),v.c[v.c.length]=N));p=e.Zf(v),e.b[p.p]=D++,nue(e,p),--ef}}for(ti=ne.c.length+1,d=0;de.b[Sa]&&(D0(i,!0),pe(t,oj,(Pt(),!0)));e.a=null,e.c=null,e.b=null,na(e.f),na(e.e),qt(n)}function dJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;for(i=new Se,a=new Se,z=t/2,D=e.gc(),r=c(e.Xb(0),8),Y=c(e.Xb(1),8),L=Rq(r.a,r.b,Y.a,Y.b,z),Ee(i,(pt(0,L.c.length),c(L.c[0],8))),Ee(a,(pt(1,L.c.length),c(L.c[1],8))),d=2;d=0;l--)Cn(n,(pt(l,u.c.length),c(u.c[l],8)));return n}function WHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;if(u=!0,v=null,i=null,r=null,t=!1,D=_ft,d=null,o=null,a=0,l=$K(e,a,ime,rme),l=0&&rt(e.substr(a,2),"//")?(a+=2,l=$K(e,a,oM,cM),i=e.substr(a,l-a),a=l):v!=null&&(a==e.length||(fn(a,e.length),e.charCodeAt(a)!=47))&&(u=!1,l=Ree(e,is(35),a),l==-1&&(l=e.length),i=e.substr(a,l-a),a=l);if(!n&&a0&&Pr(p,p.length-1)==58&&(r=p,a=l)),a=e.j){e.a=-1,e.c=1;return}if(t=Pr(e.i,e.d++),e.a=t,e.b==1){switch(t){case 92:if(i=10,e.d>=e.j)throw V(new an(gn((un(),rk))));e.a=Pr(e.i,e.d++);break;case 45:(e.e&512)==512&&e.d=e.j||Pr(e.i,e.d)!=63)break;if(++e.d>=e.j)throw V(new an(gn((un(),FV))));switch(t=Pr(e.i,e.d++),t){case 58:i=13;break;case 61:i=14;break;case 33:i=15;break;case 91:i=19;break;case 62:i=18;break;case 60:if(e.d>=e.j)throw V(new an(gn((un(),FV))));if(t=Pr(e.i,e.d++),t==61)i=16;else if(t==33)i=17;else throw V(new an(gn((un(),det))));break;case 35:for(;e.d=e.j)throw V(new an(gn((un(),rk))));e.a=Pr(e.i,e.d++);break;default:i=0}e.c=i}function XHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt;if(Ae=c(B(e,(Oe(),ji)),98),Ae!=(wr(),Xl)&&Ae!=Y1){for(L=e.b,D=L.c.length,p=new Dc((pu(D+2,MH),PO(xr(xr(5,D+2),(D+2)/10|0)))),N=new Dc((pu(D+2,MH),PO(xr(xr(5,D+2),(D+2)/10|0)))),Ee(p,new en),Ee(p,new en),Ee(N,new Se),Ee(N,new Se),Pe=new Se,t=0;t=be||!w9t(Y,i))&&(i=uNe(t,p)),po(Y,i),o=new Kt(Ht(ko(Y).a.Kc(),new j));dn(o);)r=c(rn(o),17),!e.a[r.p]&&(N=r.c.i,--e.e[N.p],e.e[N.p]==0&&R_(wE(D,N)));for(d=p.c.length-1;d>=0;--d)Ee(t.b,(pt(d,p.c.length),c(p.c[d],29)));t.a.c=oe(xt,xe,1,0,5,1),qt(n)}function gJe(e){var t,n,i,r,o,u,a,l,d;for(e.b=1,xn(e),t=null,e.c==0&&e.a==94?(xn(e),t=(Ln(),Ln(),new du(4)),_c(t,0,JE),a=new du(4)):a=(Ln(),Ln(),new du(4)),r=!0;(d=e.c)!=1;){if(d==0&&e.a==93&&!r){t&&(I6(t,a),a=t);break}if(n=e.a,i=!1,d==10)switch(n){case 100:case 68:case 119:case 87:case 115:case 83:pw(a,CE(n)),i=!0;break;case 105:case 73:case 99:case 67:n=(pw(a,CE(n)),-1),n<0&&(i=!0);break;case 112:case 80:if(l=lse(e,n),!l)throw V(new an(gn((un(),BV))));pw(a,l),i=!0;break;default:n=zse(e)}else if(d==24&&!r){if(t&&(I6(t,a),a=t),o=gJe(e),I6(a,o),e.c!=0||e.a!=93)throw V(new an(gn((un(),Pet))));break}if(xn(e),!i){if(d==0){if(n==91)throw V(new an(gn((un(),xfe))));if(n==93)throw V(new an(gn((un(),Lfe))));if(n==45&&!r&&e.a!=93)throw V(new an(gn((un(),$V))))}if(e.c!=0||e.a!=45||n==45&&r)_c(a,n,n);else{if(xn(e),(d=e.c)==1)throw V(new an(gn((un(),ok))));if(d==0&&e.a==93)_c(a,n,n),_c(a,45,45);else{if(d==0&&e.a==93||d==24)throw V(new an(gn((un(),$V))));if(u=e.a,d==0){if(u==91)throw V(new an(gn((un(),xfe))));if(u==93)throw V(new an(gn((un(),Lfe))));if(u==45)throw V(new an(gn((un(),$V))))}else d==10&&(u=zse(e));if(xn(e),n>u)throw V(new an(gn((un(),Iet))));_c(a,n,u)}}}r=!1}if(e.c==1)throw V(new an(gn((un(),ok))));return tv(a),M6(a),e.b=0,xn(e),a}function QHt(e){cn(e.c,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#decimal"])),cn(e.d,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#integer"])),cn(e.e,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#boolean"])),cn(e.f,yn,U(G(Re,1),we,2,6,[Or,"EBoolean",Dn,"EBoolean:Object"])),cn(e.i,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#byte"])),cn(e.g,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#hexBinary"])),cn(e.j,yn,U(G(Re,1),we,2,6,[Or,"EByte",Dn,"EByte:Object"])),cn(e.n,yn,U(G(Re,1),we,2,6,[Or,"EChar",Dn,"EChar:Object"])),cn(e.t,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#double"])),cn(e.u,yn,U(G(Re,1),we,2,6,[Or,"EDouble",Dn,"EDouble:Object"])),cn(e.F,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#float"])),cn(e.G,yn,U(G(Re,1),we,2,6,[Or,"EFloat",Dn,"EFloat:Object"])),cn(e.I,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#int"])),cn(e.J,yn,U(G(Re,1),we,2,6,[Or,"EInt",Dn,"EInt:Object"])),cn(e.N,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#long"])),cn(e.O,yn,U(G(Re,1),we,2,6,[Or,"ELong",Dn,"ELong:Object"])),cn(e.Z,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#short"])),cn(e.$,yn,U(G(Re,1),we,2,6,[Or,"EShort",Dn,"EShort:Object"])),cn(e._,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#string"]))}function ZHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt;if(e.c.length==1)return pt(0,e.c.length),c(e.c[0],135);if(e.c.length<=0)return new lO;for(l=new q(e);l.av&&(Ot=0,Jt+=p+Ae,p=0),aLt(be,u,Ot,Jt),t=g.Math.max(t,Ot+Pe.a),p=g.Math.max(p,Pe.b),Ot+=Pe.a+Ae;for(ue=new en,n=new en,et=new q(e);et.axq(o))&&(v=o);for(!v&&(v=(pt(0,z.c.length),c(z.c[0],180))),N=new q(t.b);N.a=-1900?1:0,n>=4?wn(e,U(G(Re,1),we,2,6,[OJe,DJe])[a]):wn(e,U(G(Re,1),we,2,6,["BC","AD"])[a]);break;case 121:U9t(e,n,i);break;case 77:JFt(e,n,i);break;case 107:l=r.q.getHours(),l==0?Vf(e,24,n):Vf(e,l,n);break;case 83:mLt(e,n,r);break;case 69:p=i.q.getDay(),n==5?wn(e,U(G(Re,1),we,2,6,["S","M","T","W","T","F","S"])[p]):n==4?wn(e,U(G(Re,1),we,2,6,[BH,$H,KH,qH,HH,zH,VH])[p]):wn(e,U(G(Re,1),we,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[p]);break;case 97:r.q.getHours()>=12&&r.q.getHours()<24?wn(e,U(G(Re,1),we,2,6,["AM","PM"])[1]):wn(e,U(G(Re,1),we,2,6,["AM","PM"])[0]);break;case 104:v=r.q.getHours()%12,v==0?Vf(e,12,n):Vf(e,v,n);break;case 75:A=r.q.getHours()%12,Vf(e,A,n);break;case 72:D=r.q.getHours(),Vf(e,D,n);break;case 99:L=i.q.getDay(),n==5?wn(e,U(G(Re,1),we,2,6,["S","M","T","W","T","F","S"])[L]):n==4?wn(e,U(G(Re,1),we,2,6,[BH,$H,KH,qH,HH,zH,VH])[L]):n==3?wn(e,U(G(Re,1),we,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[L]):Vf(e,L,1);break;case 76:N=i.q.getMonth(),n==5?wn(e,U(G(Re,1),we,2,6,["J","F","M","A","M","J","J","A","S","O","N","D"])[N]):n==4?wn(e,U(G(Re,1),we,2,6,[TH,jH,AH,OH,C2,DH,kH,RH,xH,LH,NH,FH])[N]):n==3?wn(e,U(G(Re,1),we,2,6,["Jan","Feb","Mar","Apr",C2,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"])[N]):Vf(e,N+1,n);break;case 81:z=i.q.getMonth()/3|0,n<4?wn(e,U(G(Re,1),we,2,6,["Q1","Q2","Q3","Q4"])[z]):wn(e,U(G(Re,1),we,2,6,["1st quarter","2nd quarter","3rd quarter","4th quarter"])[z]);break;case 100:Y=i.q.getDate(),Vf(e,Y,n);break;case 109:d=r.q.getMinutes(),Vf(e,d,n);break;case 115:u=r.q.getSeconds(),Vf(e,u,n);break;case 122:n<4?wn(e,o.c[0]):wn(e,o.c[1]);break;case 118:wn(e,o.b);break;case 90:n<3?wn(e,sRt(o)):n==3?wn(e,lRt(o)):wn(e,fRt(o.a));break;default:return!1}return!0}function xue(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti;if(tYe(t),l=c(ee((!t.b&&(t.b=new dt(Ut,t,4,7)),t.b),0),82),p=c(ee((!t.c&&(t.c=new dt(Ut,t,5,8)),t.c),0),82),a=Co(l),d=Co(p),u=(!t.a&&(t.a=new Me(mi,t,6,6)),t.a).i==0?null:c(ee((!t.a&&(t.a=new Me(mi,t,6,6)),t.a),0),202),Ae=c(Bt(e.a,a),10),Ot=c(Bt(e.a,d),10),Ve=null,Jt=null,Q(l,186)&&(Pe=c(Bt(e.a,l),299),Q(Pe,11)?Ve=c(Pe,11):Q(Pe,10)&&(Ae=c(Pe,10),Ve=c(Ne(Ae.j,0),11))),Q(p,186)&&(At=c(Bt(e.a,p),299),Q(At,11)?Jt=c(At,11):Q(At,10)&&(Ot=c(At,10),Jt=c(Ne(Ot.j,0),11))),!Ae||!Ot)throw V(new NS("The source or the target of edge "+t+" could not be found. This usually happens when an edge connects a node laid out by ELK Layered to a node in another level of hierarchy laid out by either another instance of ELK Layered or another layout algorithm alltogether. The former can be solved by setting the hierarchyHandling option to INCLUDE_CHILDREN."));for(N=new c0,Mo(N,t),pe(N,(ye(),Hn),t),pe(N,(Oe(),yo),null),D=c(B(i,Cc),21),Ae==Ot&&D.Fc((to(),vP)),Ve||(be=(Zr(),Fc),et=null,u&&Tm(c(B(Ae,ji),98))&&(et=new $e(u.j,u.k),fFe(et,KC(t)),KFe(et,n),Jp(d,a)&&(be=Os,Wn(et,Ae.n))),Ve=ZYe(Ae,et,be,i)),Jt||(be=(Zr(),Os),ti=null,u&&Tm(c(B(Ot,ji),98))&&(ti=new $e(u.b,u.c),fFe(ti,KC(t)),KFe(ti,n)),Jt=ZYe(Ot,ti,be,Nr(Ot))),Rr(N,Ve),br(N,Jt),(Ve.e.c.length>1||Ve.g.c.length>1||Jt.e.c.length>1||Jt.g.c.length>1)&&D.Fc((to(),mP)),A=new $t((!t.n&&(t.n=new Me(Lo,t,1,7)),t.n));A.e!=A.i.gc();)if(v=c(Vt(A),137),!Be(Fe(Ke(v,mb)))&&v.a)switch(z=_K(v),Ee(N.b,z),c(B(z,Df),272).g){case 1:case 2:D.Fc((to(),b4));break;case 0:D.Fc((to(),g4)),pe(z,Df,(xl(),A4))}if(o=c(B(i,PP),314),Y=c(B(i,BR),315),r=o==(f2(),nj)||Y==(s6(),QU),u&&(!u.a&&(u.a=new qi(ma,u,5)),u.a).i!=0&&r){for(ie=HI(u),L=new ds,ue=Mn(ie,0);ue.b!=ue.d.c;)ne=c(Pn(ue),8),Cn(L,new go(ne));pe(N,sge,L)}return N}function izt(e){e.gb||(e.gb=!0,e.b=Xo(e,0),_i(e.b,18),oi(e.b,19),e.a=Xo(e,1),_i(e.a,1),oi(e.a,2),oi(e.a,3),oi(e.a,4),oi(e.a,5),e.o=Xo(e,2),_i(e.o,8),_i(e.o,9),oi(e.o,10),oi(e.o,11),oi(e.o,12),oi(e.o,13),oi(e.o,14),oi(e.o,15),oi(e.o,16),oi(e.o,17),oi(e.o,18),oi(e.o,19),oi(e.o,20),oi(e.o,21),oi(e.o,22),oi(e.o,23),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),e.p=Xo(e,3),_i(e.p,2),_i(e.p,3),_i(e.p,4),_i(e.p,5),oi(e.p,6),oi(e.p,7),mo(e.p),mo(e.p),e.q=Xo(e,4),_i(e.q,8),e.v=Xo(e,5),oi(e.v,9),mo(e.v),mo(e.v),mo(e.v),e.w=Xo(e,6),_i(e.w,2),_i(e.w,3),_i(e.w,4),oi(e.w,5),e.B=Xo(e,7),oi(e.B,1),mo(e.B),mo(e.B),mo(e.B),e.Q=Xo(e,8),oi(e.Q,0),mo(e.Q),e.R=Xo(e,9),_i(e.R,1),e.S=Xo(e,10),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),e.T=Xo(e,11),oi(e.T,10),oi(e.T,11),oi(e.T,12),oi(e.T,13),oi(e.T,14),mo(e.T),mo(e.T),e.U=Xo(e,12),_i(e.U,2),_i(e.U,3),oi(e.U,4),oi(e.U,5),oi(e.U,6),oi(e.U,7),mo(e.U),e.V=Xo(e,13),oi(e.V,10),e.W=Xo(e,14),_i(e.W,18),_i(e.W,19),_i(e.W,20),oi(e.W,21),oi(e.W,22),oi(e.W,23),e.bb=Xo(e,15),_i(e.bb,10),_i(e.bb,11),_i(e.bb,12),_i(e.bb,13),_i(e.bb,14),_i(e.bb,15),_i(e.bb,16),oi(e.bb,17),mo(e.bb),mo(e.bb),e.eb=Xo(e,16),_i(e.eb,2),_i(e.eb,3),_i(e.eb,4),_i(e.eb,5),_i(e.eb,6),_i(e.eb,7),oi(e.eb,8),oi(e.eb,9),e.ab=Xo(e,17),_i(e.ab,0),_i(e.ab,1),e.H=Xo(e,18),oi(e.H,0),oi(e.H,1),oi(e.H,2),oi(e.H,3),oi(e.H,4),oi(e.H,5),mo(e.H),e.db=Xo(e,19),oi(e.db,2),e.c=On(e,20),e.d=On(e,21),e.e=On(e,22),e.f=On(e,23),e.i=On(e,24),e.g=On(e,25),e.j=On(e,26),e.k=On(e,27),e.n=On(e,28),e.r=On(e,29),e.s=On(e,30),e.t=On(e,31),e.u=On(e,32),e.fb=On(e,33),e.A=On(e,34),e.C=On(e,35),e.D=On(e,36),e.F=On(e,37),e.G=On(e,38),e.I=On(e,39),e.J=On(e,40),e.L=On(e,41),e.M=On(e,42),e.N=On(e,43),e.O=On(e,44),e.P=On(e,45),e.X=On(e,46),e.Y=On(e,47),e.Z=On(e,48),e.$=On(e,49),e._=On(e,50),e.cb=On(e,51),e.K=On(e,52))}function kn(){kn=Z;var e,t;GP=new hi(_Ze),j4=new hi(EZe),Npe=(Gf(),$W),ylt=new ut(Ele,Npe),n3=new ut(D2,null),_lt=new hi(pfe),Bpe=(sw(),ui(HW,U(G(zW,1),_e,291,0,[qW]))),vx=new ut(zD,Bpe),Aj=new ut(DT,(Pt(),!1)),$pe=(eo(),ih),rp=new ut(Mle,$pe),Hpe=(Lh(),nY),qpe=new ut(AT,Hpe),Gpe=new ut(XD,!1),Upe=(Rh(),Mx),qv=new ut(HD,Upe),iwe=new Yb(12),Sb=new ut(N0,iwe),yx=new ut(PT,!1),Wpe=new ut(iV,!1),kj=new ut(N6,!1),uwe=(wr(),Y1),UP=new ut(Ez,uwe),i3=new hi(VD),Sx=new hi(ST),eY=new hi(MD),tY=new hi(L6),Ype=new ds,Hv=new ut(Rle,Ype),Slt=new ut(Nle,!1),Plt=new ut(Fle,!1),Xpe=new OS,Dj=new ut($le,Xpe),Ex=new ut(yle,!1),Tlt=new ut(SZe,1),new ut(PZe,!0),Ce(0),new ut(MZe,Ce(100)),new ut(CZe,!1),Ce(0),new ut(IZe,Ce(4e3)),Ce(0),new ut(TZe,Ce(400)),new ut(jZe,!1),new ut(AZe,!1),new ut(OZe,!0),new ut(DZe,!1),Fpe=(l7(),cY),Elt=new ut(bfe,Fpe),jlt=new ut(ule,10),Alt=new ut(ale,10),hwe=new ut(pz,20),Olt=new ut(lle,10),dwe=new ut(_z,2),Dlt=new ut(fle,10),gwe=new ut(hle,0),Px=new ut(ble,5),bwe=new ut(dle,1),pwe=new ut(gle,1),Pb=new ut(_w,20),klt=new ut(ple,10),vwe=new ut(wle,10),r3=new hi(mle),mwe=new N7e,wwe=new ut(Kle,mwe),Clt=new hi(nV),rwe=!1,Mlt=new ut(tV,rwe),Qpe=new Yb(5),Jpe=new ut(Cle,Qpe),Zpe=(fw(),t=c(rl(ro),9),new ku(t,c(Da(t,t.length),9),0)),zv=new ut(qE,Zpe),cwe=(Um(),W1),owe=new ut(jle,cwe),YW=new hi(Ale),XW=new hi(Ole),JW=new hi(Dle),WW=new hi(kle),ewe=(e=c(rl(tM),9),new ku(e,c(Da(e,e.length),9),0)),Eb=new ut(gv,ewe),nwe=nt((Ks(),R4)),G1=new ut(k2,nwe),twe=new $e(0,0),Vv=new ut(R2,twe),_x=new ut(eV,!1),Kpe=(xl(),A4),GW=new ut(xle,Kpe),VW=new ut(CD,!1),Ce(1),new ut(kZe,null),swe=new hi(Ble),QW=new hi(Lle),fwe=(Ie(),Vo),Gv=new ut(_le,fwe),zs=new hi(vle),awe=(js(),nt(X1)),Uw=new ut(HE,awe),ZW=new ut(Ile,!1),lwe=new ut(Tle,!0),Oj=new ut(Sle,!1),UW=new ut(Ple,!1),zpe=new ut(wz,1),Vpe=(L7(),rY),new ut(RZe,Vpe),Ilt=!0}function ye(){ye=Z;var e,t;Hn=new hi(mae),ige=new hi("coordinateOrigin"),CU=new hi("processors"),nge=new Wi("compoundNode",(Pt(),!1)),cj=new Wi("insideConnections",!1),sge=new hi("originalBendpoints"),uge=new hi("originalDummyNodePosition"),age=new hi("originalLabelEdge"),uj=new hi("representedLabels"),yP=new hi("endLabels"),G2=new hi("endLabel.origin"),W2=new Wi("labelSide",(mu(),Lj)),Dv=new Wi("maxEdgeThickness",0),Ul=new Wi("reversed",!1),Y2=new hi(pQe),wl=new Wi("longEdgeSource",null),da=new Wi("longEdgeTarget",null),Rw=new Wi("longEdgeHasLabelDummies",!1),sj=new Wi("longEdgeBeforeLabelDummy",!1),MR=new Wi("edgeConstraint",(zg(),aU)),X0=new hi("inLayerLayoutUnit"),gb=new Wi("inLayerConstraint",(Oh(),rj)),U2=new Wi("inLayerSuccessorConstraint",new Se),cge=new Wi("inLayerSuccessorConstraintBetweenNonDummies",!1),As=new hi("portDummy"),PR=new Wi("crossingHint",Ce(0)),Cc=new Wi("graphProperties",(t=c(rl(pU),9),new ku(t,c(Da(t,t.length),9),0))),Zo=new Wi("externalPortSide",(Ie(),Vo)),oge=new Wi("externalPortSize",new Tr),_U=new hi("externalPortReplacedDummies"),CR=new hi("externalPortReplacedDummy"),kw=new Wi("externalPortConnections",(e=c(rl(Gr),9),new ku(e,c(Da(e,e.length),9),0))),J0=new Wi(uQe,0),tge=new hi("barycenterAssociates"),X2=new hi("TopSideComments"),V2=new hi("BottomSideComments"),SR=new hi("CommentConnectionPort"),SU=new Wi("inputCollect",!1),MU=new Wi("outputCollect",!1),oj=new Wi("cyclic",!1),rge=new hi("crossHierarchyMap"),TU=new hi("targetOffset"),new Wi("splineLabelSize",new Tr),Rv=new hi("spacings"),IR=new Wi("partitionConstraint",!1),W0=new hi("breakingPoint.info"),hge=new hi("splines.survivingEdge"),bb=new hi("splines.route.start"),xv=new hi("splines.edgeChain"),fge=new hi("originalPortConstraints"),w4=new hi("selfLoopHolder"),m4=new hi("splines.nsPortY"),hc=new hi("modelOrder"),PU=new hi("longEdgeTargetNode"),Y0=new Wi(HQe,!1),kv=new Wi(HQe,!1),EU=new hi("layerConstraints.hiddenNodes"),lge=new hi("layerConstraints.opposidePort"),IU=new hi("targetNode.modelOrder")}function Lue(){Lue=Z,Sge=(uI(),pR),Tot=new ut(Cae,Sge),$ot=new ut(Iae,(Pt(),!1)),jge=(iO(),yU),Vot=new ut(AD,jge),cct=new ut(Tae,!1),sct=new ut(jae,!0),iot=new ut(Aae,!1),Nge=(rI(),tW),Ect=new ut(Oae,Nge),Ce(1),Act=new ut(Dae,Ce(7)),Oct=new ut(kae,!1),Kot=new ut(Rae,!1),Ege=(Qg(),sU),Iot=new ut(Tz,Ege),Dge=(R7(),WU),oct=new ut(TT,Dge),Age=(Ku(),aj),Jot=new ut(xae,Age),Ce(-1),Xot=new ut(Lae,Ce(-1)),Ce(-1),Qot=new ut(Nae,Ce(-1)),Ce(-1),Zot=new ut(jz,Ce(4)),Ce(-1),tct=new ut(Az,Ce(2)),Oge=(iv(),UR),rct=new ut(Oz,Oge),Ce(0),ict=new ut(Dz,Ce(0)),Wot=new ut(kz,Ce(Fn)),_ge=(f2(),H2),Cot=new ut(K6,_ge),dot=new ut(Fae,!1),yot=new ut(Rz,.1),Pot=new ut(xz,!1),Ce(-1),Eot=new ut(Bae,Ce(-1)),Ce(-1),Sot=new ut($ae,Ce(-1)),Ce(0),got=new ut(Kae,Ce(40)),yge=(J_(),mU),mot=new ut(Lz,yge),vge=ij,bot=new ut(OD,vge),Lge=(s6(),jP),_ct=new ut(bv,Lge),hct=new hi(DD),kge=(eI(),mR),uct=new ut(Nz,kge),Rge=($I(),vR),lct=new ut(Fz,Rge),bct=new ut(Bz,.3),wct=new hi($z),xge=(rw(),GR),mct=new ut(Kz,xge),Cge=(VO(),iW),kot=new ut(qae,Cge),Ige=(WC(),rW),Rot=new ut(Hae,Ige),Tge=(rE(),DP),xot=new ut(kD,Tge),Not=new ut(RD,.2),Oot=new ut(qz,2),Cct=new ut(zae,null),Tct=new ut(Vae,10),Ict=new ut(Gae,10),jct=new ut(Uae,20),Ce(0),Sct=new ut(Wae,Ce(0)),Ce(0),Pct=new ut(Yae,Ce(0)),Ce(0),Mct=new ut(Xae,Ce(0)),rot=new ut(Hz,!1),bge=(mE(),wP),cot=new ut(Jae,bge),gge=(gO(),oU),oot=new ut(Qae,gge),Hot=new ut(xD,!1),Ce(0),qot=new ut(zz,Ce(16)),Ce(0),zot=new ut(Vz,Ce(5)),$ge=(XO(),sW),Jct=new ut(Hh,$ge),Dct=new ut(LD,10),xct=new ut(ND,1),Bge=(DO(),bR),qct=new ut(q6,Bge),Fct=new hi(Gz),Fge=Ce(1),Ce(0),$ct=new ut(Uz,Fge),Kge=(HO(),cW),tst=new ut(FD,Kge),Qct=new hi(BD),Uct=new ut($D,!0),Vct=new ut(KD,2),Yct=new ut(Wz,!0),Mge=(F7(),wR),Aot=new ut(Zae,Mge),Pge=(y2(),f4),jot=new ut(ele,Pge),mge=(kh(),H1),hot=new ut(qD,mge),fot=new ut(tle,!1),pge=(y0(),Mv),sot=new ut(Yz,pge),wge=(X5(),YU),lot=new ut(nle,wge),uot=new ut(Xz,0),aot=new ut(Jz,0),Uot=uU,Got=nj,ect=zR,nct=zR,Yot=UU,_ot=(Rh(),kd),Mot=H2,vot=H2,pot=H2,wot=kd,dct=AP,gct=jP,act=jP,fct=jP,pct=ZU,yct=AP,vct=AP,Lot=(Lh(),o3),Fot=o3,Bot=DP,Dot=Rj,kct=M4,Rct=zw,Lct=M4,Nct=zw,Hct=M4,zct=zw,Bct=cU,Kct=bR,nst=M4,ist=zw,Zct=M4,est=zw,Wct=zw,Gct=zw,Xct=zw}function Jr(){Jr=Z,e1e=new Li("DIRECTION_PREPROCESSOR",0),Jde=new Li("COMMENT_PREPROCESSOR",1),hP=new Li("EDGE_AND_LAYER_CONSTRAINT_EDGE_REVERSER",2),VG=new Li("INTERACTIVE_EXTERNAL_PORT_POSITIONER",3),v1e=new Li("PARTITION_PREPROCESSOR",4),Xk=new Li("LABEL_DUMMY_INSERTER",5),cR=new Li("SELF_LOOP_PREPROCESSOR",6),s4=new Li("LAYER_CONSTRAINT_PREPROCESSOR",7),w1e=new Li("PARTITION_MIDPROCESSOR",8),u1e=new Li("HIGH_DEGREE_NODE_LAYER_PROCESSOR",9),b1e=new Li("NODE_PROMOTION",10),c4=new Li("LAYER_CONSTRAINT_POSTPROCESSOR",11),m1e=new Li("PARTITION_POSTPROCESSOR",12),o1e=new Li("HIERARCHICAL_PORT_CONSTRAINT_PROCESSOR",13),y1e=new Li("SEMI_INTERACTIVE_CROSSMIN_PROCESSOR",14),Vde=new Li("BREAKING_POINT_INSERTER",15),eR=new Li("LONG_EDGE_SPLITTER",16),GG=new Li("PORT_SIDE_PROCESSOR",17),Wk=new Li("INVERTED_PORT_PROCESSOR",18),iR=new Li("PORT_LIST_SORTER",19),E1e=new Li("SORT_BY_INPUT_ORDER_OF_MODEL",20),nR=new Li("NORTH_SOUTH_PORT_PREPROCESSOR",21),Gde=new Li("BREAKING_POINT_PROCESSOR",22),p1e=new Li(xQe,23),S1e=new Li(LQe,24),rR=new Li("SELF_LOOP_PORT_RESTORER",25),_1e=new Li("SINGLE_EDGE_GRAPH_WRAPPER",26),Yk=new Li("IN_LAYER_CONSTRAINT_PROCESSOR",27),n1e=new Li("END_NODE_PORT_LABEL_MANAGEMENT_PROCESSOR",28),d1e=new Li("LABEL_AND_NODE_SIZE_PROCESSOR",29),h1e=new Li("INNERMOST_NODE_MARGIN_CALCULATOR",30),sR=new Li("SELF_LOOP_ROUTER",31),Yde=new Li("COMMENT_NODE_MARGIN_CALCULATOR",32),Uk=new Li("END_LABEL_PREPROCESSOR",33),Qk=new Li("LABEL_DUMMY_SWITCHER",34),Wde=new Li("CENTER_LABEL_MANAGEMENT_PROCESSOR",35),o4=new Li("LABEL_SIDE_SELECTOR",36),l1e=new Li("HYPEREDGE_DUMMY_MERGER",37),c1e=new Li("HIERARCHICAL_PORT_DUMMY_SIZE_PROCESSOR",38),g1e=new Li("LAYER_SIZE_AND_GRAPH_HEIGHT_CALCULATOR",39),dP=new Li("HIERARCHICAL_PORT_POSITION_PROCESSOR",40),Qde=new Li("CONSTRAINTS_POSTPROCESSOR",41),Xde=new Li("COMMENT_POSTPROCESSOR",42),f1e=new Li("HYPERNODE_PROCESSOR",43),s1e=new Li("HIERARCHICAL_PORT_ORTHOGONAL_EDGE_ROUTER",44),Zk=new Li("LONG_EDGE_JOINER",45),oR=new Li("SELF_LOOP_POSTPROCESSOR",46),Ude=new Li("BREAKING_POINT_REMOVER",47),tR=new Li("NORTH_SOUTH_PORT_POSTPROCESSOR",48),a1e=new Li("HORIZONTAL_COMPACTOR",49),Jk=new Li("LABEL_DUMMY_REMOVER",50),i1e=new Li("FINAL_SPLINE_BENDPOINTS_CALCULATOR",51),t1e=new Li("END_LABEL_SORTER",52),ej=new Li("REVERSED_EDGE_RESTORER",53),Gk=new Li("END_LABEL_POSTPROCESSOR",54),r1e=new Li("HIERARCHICAL_NODE_RESIZER",55),Zde=new Li("DIRECTION_POSTPROCESSOR",56)}function rzt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi,ju,Sa,ef,Ux,eA,gM,tA,B4,EY,mht,SY,Bd,lp,$4,nA,iA,f3,PY,bM,vht,Fme,fp,pM,MY,h3,wM,im,mM,CY,yht;for(Fme=0,ti=t,Sa=0,eA=ti.length;Sa0&&(e.a[Bd.p]=Fme++)}for(wM=0,Zi=n,ef=0,gM=Zi.length;ef0;){for(Bd=(Lt(iA.b>0),c(iA.a.Xb(iA.c=--iA.b),11)),nA=0,a=new q(Bd.e);a.a0&&(Bd.j==(Ie(),_t)?(e.a[Bd.p]=wM,++wM):(e.a[Bd.p]=wM+tA+EY,++EY))}wM+=EY}for($4=new en,L=new Eh,Jt=t,ju=0,Ux=Jt.length;jud.b&&(d.b=f3)):Bd.i.c==vht&&(f3d.c&&(d.c=f3));for(L_(N,0,N.length,null),h3=oe(Qt,_n,25,N.length,15,1),i=oe(Qt,_n,25,wM+1,15,1),Y=0;Y0;)Ae%2>0&&(r+=CY[Ae+1]),Ae=(Ae-1)/2|0,++CY[Ae];for(et=oe(Gst,xe,362,N.length*2,0,1),ue=0;ue'?":rt(det,e)?"'(?<' or '(? toIndex: ",Yue=", toIndex: ",Xue="Index: ",Jue=", Size: ",NE="org.eclipse.elk.alg.common",Zn={62:1},zJe="org.eclipse.elk.alg.common.compaction",VJe="Scanline/EventHandler",Qf="org.eclipse.elk.alg.common.compaction.oned",GJe="CNode belongs to another CGroup.",UJe="ISpacingsHandler/1",rz="The ",oz=" instance has been finished already.",WJe="The direction ",YJe=" is not supported by the CGraph instance.",XJe="OneDimensionalCompactor",JJe="OneDimensionalCompactor/lambda$0$Type",QJe="Quadruplet",ZJe="ScanlineConstraintCalculator",eQe="ScanlineConstraintCalculator/ConstraintsScanlineHandler",tQe="ScanlineConstraintCalculator/ConstraintsScanlineHandler/lambda$0$Type",nQe="ScanlineConstraintCalculator/Timestamp",iQe="ScanlineConstraintCalculator/lambda$0$Type",yf={169:1,45:1},cz="org.eclipse.elk.alg.common.compaction.options",zo="org.eclipse.elk.core.data",Que="org.eclipse.elk.polyomino.traversalStrategy",Zue="org.eclipse.elk.polyomino.lowLevelSort",eae="org.eclipse.elk.polyomino.highLevelSort",tae="org.eclipse.elk.polyomino.fill",ca={130:1},sz="polyomino",k6="org.eclipse.elk.alg.common.networksimplex",Zf={177:1,3:1,4:1},rQe="org.eclipse.elk.alg.common.nodespacing",ib="org.eclipse.elk.alg.common.nodespacing.cellsystem",FE="CENTER",oQe={212:1,326:1},nae={3:1,4:1,5:1,595:1},j2="LEFT",A2="RIGHT",iae="Vertical alignment cannot be null",rae="BOTTOM",vD="org.eclipse.elk.alg.common.nodespacing.internal",R6="UNDEFINED",ql=.01,yT="org.eclipse.elk.alg.common.nodespacing.internal.algorithm",cQe="LabelPlacer/lambda$0$Type",sQe="LabelPlacer/lambda$1$Type",uQe="portRatioOrPosition",BE="org.eclipse.elk.alg.common.overlaps",uz="DOWN",_f="org.eclipse.elk.alg.common.polyomino",yD="NORTH",az="EAST",lz="SOUTH",fz="WEST",_D="org.eclipse.elk.alg.common.polyomino.structures",oae="Direction",hz="Grid is only of size ",dz=". Requested point (",gz=") is out of bounds.",ED=" Given center based coordinates were (",_T="org.eclipse.elk.graph.properties",aQe="IPropertyHolder",cae={3:1,94:1,134:1},O2="org.eclipse.elk.alg.common.spore",lQe="org.eclipse.elk.alg.common.utils",rb={209:1},hv="org.eclipse.elk.core",fQe="Connected Components Compaction",hQe="org.eclipse.elk.alg.disco",SD="org.eclipse.elk.alg.disco.graph",bz="org.eclipse.elk.alg.disco.options",sae="CompactionStrategy",uae="org.eclipse.elk.disco.componentCompaction.strategy",aae="org.eclipse.elk.disco.componentCompaction.componentLayoutAlgorithm",lae="org.eclipse.elk.disco.debug.discoGraph",fae="org.eclipse.elk.disco.debug.discoPolys",dQe="componentCompaction",ob="org.eclipse.elk.disco",pz="org.eclipse.elk.spacing.componentComponent",wz="org.eclipse.elk.edge.thickness",D2="org.eclipse.elk.aspectRatio",N0="org.eclipse.elk.padding",dv="org.eclipse.elk.alg.disco.transform",mz=1.5707963267948966,$E=17976931348623157e292,yw={3:1,4:1,5:1,192:1},hae={3:1,6:1,4:1,5:1,106:1,120:1},dae="org.eclipse.elk.alg.force",gae="ComponentsProcessor",gQe="ComponentsProcessor/1",ET="org.eclipse.elk.alg.force.graph",bQe="Component Layout",bae="org.eclipse.elk.alg.force.model",PD="org.eclipse.elk.force.model",pae="org.eclipse.elk.force.iterations",wae="org.eclipse.elk.force.repulsivePower",vz="org.eclipse.elk.force.temperature",Ef=.001,yz="org.eclipse.elk.force.repulsion",x6="org.eclipse.elk.alg.force.options",KE=1.600000023841858,_u="org.eclipse.elk.force",ST="org.eclipse.elk.priority",_w="org.eclipse.elk.spacing.nodeNode",_z="org.eclipse.elk.spacing.edgeLabel",MD="org.eclipse.elk.randomSeed",L6="org.eclipse.elk.separateConnectedComponents",PT="org.eclipse.elk.interactive",Ez="org.eclipse.elk.portConstraints",CD="org.eclipse.elk.edgeLabels.inline",N6="org.eclipse.elk.omitNodeMicroLayout",k2="org.eclipse.elk.nodeSize.options",gv="org.eclipse.elk.nodeSize.constraints",qE="org.eclipse.elk.nodeLabels.placement",HE="org.eclipse.elk.portLabels.placement",mae="origin",pQe="random",wQe="boundingBox.upLeft",mQe="boundingBox.lowRight",vae="org.eclipse.elk.stress.fixed",yae="org.eclipse.elk.stress.desiredEdgeLength",_ae="org.eclipse.elk.stress.dimension",Eae="org.eclipse.elk.stress.epsilon",Sae="org.eclipse.elk.stress.iterationLimit",D1="org.eclipse.elk.stress",vQe="ELK Stress",R2="org.eclipse.elk.nodeSize.minimum",ID="org.eclipse.elk.alg.force.stress",yQe="Layered layout",x2="org.eclipse.elk.alg.layered",MT="org.eclipse.elk.alg.layered.compaction.components",F6="org.eclipse.elk.alg.layered.compaction.oned",TD="org.eclipse.elk.alg.layered.compaction.oned.algs",cb="org.eclipse.elk.alg.layered.compaction.recthull",Sf="org.eclipse.elk.alg.layered.components",qh="NONE",ac={3:1,6:1,4:1,9:1,5:1,122:1},_Qe={3:1,6:1,4:1,5:1,141:1,106:1,120:1},jD="org.eclipse.elk.alg.layered.compound",Ti={51:1},Lc="org.eclipse.elk.alg.layered.graph",Sz=" -> ",EQe="Not supported by LGraph",Pae="Port side is undefined",Pz={3:1,6:1,4:1,5:1,474:1,141:1,106:1,120:1},Ed={3:1,6:1,4:1,5:1,141:1,193:1,203:1,106:1,120:1},SQe={3:1,6:1,4:1,5:1,141:1,1943:1,203:1,106:1,120:1},PQe=`([{"' \r +`,MQe=`)]}"' \r +`,CQe="The given string contains parts that cannot be parsed as numbers.",CT="org.eclipse.elk.core.math",IQe={3:1,4:1,142:1,207:1,414:1},TQe={3:1,4:1,116:1,207:1,414:1},kt="org.eclipse.elk.layered",Sd="org.eclipse.elk.alg.layered.graph.transform",jQe="ElkGraphImporter",AQe="ElkGraphImporter/lambda$0$Type",OQe="ElkGraphImporter/lambda$1$Type",DQe="ElkGraphImporter/lambda$2$Type",kQe="ElkGraphImporter/lambda$4$Type",RQe="Node margin calculation",Ct="org.eclipse.elk.alg.layered.intermediate",xQe="ONE_SIDED_GREEDY_SWITCH",LQe="TWO_SIDED_GREEDY_SWITCH",Mz="No implementation is available for the layout processor ",Mae="IntermediateProcessorStrategy",Cz="Node '",NQe="FIRST_SEPARATE",FQe="LAST_SEPARATE",BQe="Odd port side processing",Ki="org.eclipse.elk.alg.layered.intermediate.compaction",B6="org.eclipse.elk.alg.layered.intermediate.greedyswitch",eh="org.eclipse.elk.alg.layered.p3order.counting",IT={225:1},L2="org.eclipse.elk.alg.layered.intermediate.loops",Eu="org.eclipse.elk.alg.layered.intermediate.loops.ordering",k1="org.eclipse.elk.alg.layered.intermediate.loops.routing",$6="org.eclipse.elk.alg.layered.intermediate.preserveorder",Pf="org.eclipse.elk.alg.layered.intermediate.wrapping",lc="org.eclipse.elk.alg.layered.options",Iz="INTERACTIVE",$Qe="DEPTH_FIRST",KQe="EDGE_LENGTH",qQe="SELF_LOOPS",HQe="firstTryWithInitialOrder",Cae="org.eclipse.elk.layered.directionCongruency",Iae="org.eclipse.elk.layered.feedbackEdges",AD="org.eclipse.elk.layered.interactiveReferencePoint",Tae="org.eclipse.elk.layered.mergeEdges",jae="org.eclipse.elk.layered.mergeHierarchyEdges",Aae="org.eclipse.elk.layered.allowNonFlowPortsToSwitchSides",Oae="org.eclipse.elk.layered.portSortingStrategy",Dae="org.eclipse.elk.layered.thoroughness",kae="org.eclipse.elk.layered.unnecessaryBendpoints",Rae="org.eclipse.elk.layered.generatePositionAndLayerIds",Tz="org.eclipse.elk.layered.cycleBreaking.strategy",TT="org.eclipse.elk.layered.layering.strategy",xae="org.eclipse.elk.layered.layering.layerConstraint",Lae="org.eclipse.elk.layered.layering.layerChoiceConstraint",Nae="org.eclipse.elk.layered.layering.layerId",jz="org.eclipse.elk.layered.layering.minWidth.upperBoundOnWidth",Az="org.eclipse.elk.layered.layering.minWidth.upperLayerEstimationScalingFactor",Oz="org.eclipse.elk.layered.layering.nodePromotion.strategy",Dz="org.eclipse.elk.layered.layering.nodePromotion.maxIterations",kz="org.eclipse.elk.layered.layering.coffmanGraham.layerBound",K6="org.eclipse.elk.layered.crossingMinimization.strategy",Fae="org.eclipse.elk.layered.crossingMinimization.forceNodeModelOrder",Rz="org.eclipse.elk.layered.crossingMinimization.hierarchicalSweepiness",xz="org.eclipse.elk.layered.crossingMinimization.semiInteractive",Bae="org.eclipse.elk.layered.crossingMinimization.positionChoiceConstraint",$ae="org.eclipse.elk.layered.crossingMinimization.positionId",Kae="org.eclipse.elk.layered.crossingMinimization.greedySwitch.activationThreshold",Lz="org.eclipse.elk.layered.crossingMinimization.greedySwitch.type",OD="org.eclipse.elk.layered.crossingMinimization.greedySwitchHierarchical.type",bv="org.eclipse.elk.layered.nodePlacement.strategy",DD="org.eclipse.elk.layered.nodePlacement.favorStraightEdges",Nz="org.eclipse.elk.layered.nodePlacement.bk.edgeStraightening",Fz="org.eclipse.elk.layered.nodePlacement.bk.fixedAlignment",Bz="org.eclipse.elk.layered.nodePlacement.linearSegments.deflectionDampening",$z="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility",Kz="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility.default",qae="org.eclipse.elk.layered.edgeRouting.selfLoopDistribution",Hae="org.eclipse.elk.layered.edgeRouting.selfLoopOrdering",kD="org.eclipse.elk.layered.edgeRouting.splines.mode",RD="org.eclipse.elk.layered.edgeRouting.splines.sloppy.layerSpacingFactor",qz="org.eclipse.elk.layered.edgeRouting.polyline.slopedEdgeZoneWidth",zae="org.eclipse.elk.layered.spacing.baseValue",Vae="org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers",Gae="org.eclipse.elk.layered.spacing.edgeEdgeBetweenLayers",Uae="org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers",Wae="org.eclipse.elk.layered.priority.direction",Yae="org.eclipse.elk.layered.priority.shortness",Xae="org.eclipse.elk.layered.priority.straightness",Hz="org.eclipse.elk.layered.compaction.connectedComponents",Jae="org.eclipse.elk.layered.compaction.postCompaction.strategy",Qae="org.eclipse.elk.layered.compaction.postCompaction.constraints",xD="org.eclipse.elk.layered.highDegreeNodes.treatment",zz="org.eclipse.elk.layered.highDegreeNodes.threshold",Vz="org.eclipse.elk.layered.highDegreeNodes.treeHeight",Hh="org.eclipse.elk.layered.wrapping.strategy",LD="org.eclipse.elk.layered.wrapping.additionalEdgeSpacing",ND="org.eclipse.elk.layered.wrapping.correctionFactor",q6="org.eclipse.elk.layered.wrapping.cutting.strategy",Gz="org.eclipse.elk.layered.wrapping.cutting.cuts",Uz="org.eclipse.elk.layered.wrapping.cutting.msd.freedom",FD="org.eclipse.elk.layered.wrapping.validify.strategy",BD="org.eclipse.elk.layered.wrapping.validify.forbiddenIndices",$D="org.eclipse.elk.layered.wrapping.multiEdge.improveCuts",KD="org.eclipse.elk.layered.wrapping.multiEdge.distancePenalty",Wz="org.eclipse.elk.layered.wrapping.multiEdge.improveWrappedEdges",Zae="org.eclipse.elk.layered.edgeLabels.sideSelection",ele="org.eclipse.elk.layered.edgeLabels.centerLabelPlacementStrategy",qD="org.eclipse.elk.layered.considerModelOrder.strategy",tle="org.eclipse.elk.layered.considerModelOrder.noModelOrder",Yz="org.eclipse.elk.layered.considerModelOrder.components",nle="org.eclipse.elk.layered.considerModelOrder.longEdgeStrategy",Xz="org.eclipse.elk.layered.considerModelOrder.crossingCounterNodeInfluence",Jz="org.eclipse.elk.layered.considerModelOrder.crossingCounterPortInfluence",Qz="layering",zQe="layering.minWidth",VQe="layering.nodePromotion",jT="crossingMinimization",HD="org.eclipse.elk.hierarchyHandling",GQe="crossingMinimization.greedySwitch",UQe="nodePlacement",WQe="nodePlacement.bk",YQe="edgeRouting",AT="org.eclipse.elk.edgeRouting",Hl="spacing",ile="priority",rle="compaction",XQe="compaction.postCompaction",JQe="Specifies whether and how post-process compaction is applied.",ole="highDegreeNodes",cle="wrapping",QQe="wrapping.cutting",ZQe="wrapping.validify",sle="wrapping.multiEdge",Zz="edgeLabels",OT="considerModelOrder",ule="org.eclipse.elk.spacing.commentComment",ale="org.eclipse.elk.spacing.commentNode",lle="org.eclipse.elk.spacing.edgeEdge",fle="org.eclipse.elk.spacing.edgeNode",hle="org.eclipse.elk.spacing.labelLabel",dle="org.eclipse.elk.spacing.labelPortHorizontal",gle="org.eclipse.elk.spacing.labelPortVertical",ble="org.eclipse.elk.spacing.labelNode",ple="org.eclipse.elk.spacing.nodeSelfLoop",wle="org.eclipse.elk.spacing.portPort",mle="org.eclipse.elk.spacing.individual",vle="org.eclipse.elk.port.borderOffset",yle="org.eclipse.elk.noLayout",_le="org.eclipse.elk.port.side",DT="org.eclipse.elk.debugMode",Ele="org.eclipse.elk.alignment",Sle="org.eclipse.elk.insideSelfLoops.activate",Ple="org.eclipse.elk.insideSelfLoops.yo",eV="org.eclipse.elk.nodeSize.fixedGraphSize",Mle="org.eclipse.elk.direction",Cle="org.eclipse.elk.nodeLabels.padding",Ile="org.eclipse.elk.portLabels.nextToPortIfPossible",Tle="org.eclipse.elk.portLabels.treatAsGroup",jle="org.eclipse.elk.portAlignment.default",Ale="org.eclipse.elk.portAlignment.north",Ole="org.eclipse.elk.portAlignment.south",Dle="org.eclipse.elk.portAlignment.west",kle="org.eclipse.elk.portAlignment.east",zD="org.eclipse.elk.contentAlignment",Rle="org.eclipse.elk.junctionPoints",xle="org.eclipse.elk.edgeLabels.placement",Lle="org.eclipse.elk.port.index",Nle="org.eclipse.elk.commentBox",Fle="org.eclipse.elk.hypernode",Ble="org.eclipse.elk.port.anchor",tV="org.eclipse.elk.partitioning.activate",nV="org.eclipse.elk.partitioning.partition",VD="org.eclipse.elk.position",$le="org.eclipse.elk.margins",Kle="org.eclipse.elk.spacing.portsSurrounding",iV="org.eclipse.elk.interactiveLayout",fc="org.eclipse.elk.core.util",qle={3:1,4:1,5:1,593:1},eZe="NETWORK_SIMPLEX",Sc={123:1,51:1},GD="org.eclipse.elk.alg.layered.p1cycles",Ew="org.eclipse.elk.alg.layered.p2layers",Hle={402:1,225:1},tZe={832:1,3:1,4:1},_s="org.eclipse.elk.alg.layered.p3order",io="org.eclipse.elk.alg.layered.p4nodes",nZe={3:1,4:1,5:1,840:1},Mf=1e-5,R1="org.eclipse.elk.alg.layered.p4nodes.bk",rV="org.eclipse.elk.alg.layered.p5edges",gl="org.eclipse.elk.alg.layered.p5edges.orthogonal",oV="org.eclipse.elk.alg.layered.p5edges.orthogonal.direction",cV=1e-6,Sw="org.eclipse.elk.alg.layered.p5edges.splines",sV=.09999999999999998,UD=1e-8,iZe=4.71238898038469,rZe=3.141592653589793,H6="org.eclipse.elk.alg.mrtree",z6="org.eclipse.elk.alg.mrtree.graph",N2="org.eclipse.elk.alg.mrtree.intermediate",oZe="Set neighbors in level",cZe="DESCENDANTS",zle="org.eclipse.elk.mrtree.weighting",Vle="org.eclipse.elk.mrtree.searchOrder",WD="org.eclipse.elk.alg.mrtree.options",Pd="org.eclipse.elk.mrtree",sZe="org.eclipse.elk.tree",Gle="org.eclipse.elk.alg.radial",pv=6.283185307179586,Ule=5e-324,uZe="org.eclipse.elk.alg.radial.intermediate",uV="org.eclipse.elk.alg.radial.intermediate.compaction",aZe={3:1,4:1,5:1,106:1},Wle="org.eclipse.elk.alg.radial.intermediate.optimization",aV="No implementation is available for the layout option ",V6="org.eclipse.elk.alg.radial.options",Yle="org.eclipse.elk.radial.orderId",Xle="org.eclipse.elk.radial.radius",lV="org.eclipse.elk.radial.compactor",fV="org.eclipse.elk.radial.compactionStepSize",Jle="org.eclipse.elk.radial.sorter",Qle="org.eclipse.elk.radial.wedgeCriteria",Zle="org.eclipse.elk.radial.optimizationCriteria",Cf="org.eclipse.elk.radial",lZe="org.eclipse.elk.alg.radial.p1position.wedge",efe="org.eclipse.elk.alg.radial.sorting",fZe=5.497787143782138,hZe=3.9269908169872414,dZe=2.356194490192345,gZe="org.eclipse.elk.alg.rectpacking",YD="org.eclipse.elk.alg.rectpacking.firstiteration",hV="org.eclipse.elk.alg.rectpacking.options",tfe="org.eclipse.elk.rectpacking.optimizationGoal",nfe="org.eclipse.elk.rectpacking.lastPlaceShift",ife="org.eclipse.elk.rectpacking.currentPosition",rfe="org.eclipse.elk.rectpacking.desiredPosition",ofe="org.eclipse.elk.rectpacking.onlyFirstIteration",cfe="org.eclipse.elk.rectpacking.rowCompaction",dV="org.eclipse.elk.rectpacking.expandToAspectRatio",sfe="org.eclipse.elk.rectpacking.targetWidth",XD="org.eclipse.elk.expandNodes",sa="org.eclipse.elk.rectpacking",kT="org.eclipse.elk.alg.rectpacking.util",JD="No implementation available for ",Pw="org.eclipse.elk.alg.spore",Mw="org.eclipse.elk.alg.spore.options",F0="org.eclipse.elk.sporeCompaction",gV="org.eclipse.elk.underlyingLayoutAlgorithm",ufe="org.eclipse.elk.processingOrder.treeConstruction",afe="org.eclipse.elk.processingOrder.spanningTreeCostFunction",bV="org.eclipse.elk.processingOrder.preferredRoot",pV="org.eclipse.elk.processingOrder.rootSelection",wV="org.eclipse.elk.structure.structureExtractionStrategy",lfe="org.eclipse.elk.compaction.compactionStrategy",ffe="org.eclipse.elk.compaction.orthogonal",hfe="org.eclipse.elk.overlapRemoval.maxIterations",dfe="org.eclipse.elk.overlapRemoval.runScanline",mV="processingOrder",bZe="overlapRemoval",zE="org.eclipse.elk.sporeOverlap",pZe="org.eclipse.elk.alg.spore.p1structure",vV="org.eclipse.elk.alg.spore.p2processingorder",yV="org.eclipse.elk.alg.spore.p3execution",wZe="Invalid index: ",VE="org.eclipse.elk.core.alg",wv={331:1},Cw={288:1},mZe="Make sure its type is registered with the ",gfe=" utility class.",GE="true",_V="false",vZe="Couldn't clone property '",B0=.05,ua="org.eclipse.elk.core.options",yZe=1.2999999523162842,$0="org.eclipse.elk.box",bfe="org.eclipse.elk.box.packingMode",_Ze="org.eclipse.elk.algorithm",EZe="org.eclipse.elk.resolvedAlgorithm",pfe="org.eclipse.elk.bendPoints",azt="org.eclipse.elk.labelManager",SZe="org.eclipse.elk.scaleFactor",PZe="org.eclipse.elk.animate",MZe="org.eclipse.elk.animTimeFactor",CZe="org.eclipse.elk.layoutAncestors",IZe="org.eclipse.elk.maxAnimTime",TZe="org.eclipse.elk.minAnimTime",jZe="org.eclipse.elk.progressBar",AZe="org.eclipse.elk.validateGraph",OZe="org.eclipse.elk.validateOptions",DZe="org.eclipse.elk.zoomToFit",lzt="org.eclipse.elk.font.name",kZe="org.eclipse.elk.font.size",RZe="org.eclipse.elk.edge.type",xZe="partitioning",LZe="nodeLabels",QD="portAlignment",EV="nodeSize",SV="port",wfe="portLabels",NZe="insideSelfLoops",G6="org.eclipse.elk.fixed",ZD="org.eclipse.elk.random",FZe="port must have a parent node to calculate the port side",BZe="The edge needs to have exactly one edge section. Found: ",U6="org.eclipse.elk.core.util.adapters",Hu="org.eclipse.emf.ecore",mv="org.eclipse.elk.graph",$Ze="EMapPropertyHolder",KZe="ElkBendPoint",qZe="ElkGraphElement",HZe="ElkConnectableShape",mfe="ElkEdge",zZe="ElkEdgeSection",VZe="EModelElement",GZe="ENamedElement",vfe="ElkLabel",yfe="ElkNode",_fe="ElkPort",UZe={92:1,90:1},F2="org.eclipse.emf.common.notify.impl",x1="The feature '",W6="' is not a valid changeable feature",WZe="Expecting null",PV="' is not a valid feature",YZe="The feature ID",XZe=" is not a valid feature ID",rc=32768,JZe={105:1,92:1,90:1,56:1,49:1,97:1},mt="org.eclipse.emf.ecore.impl",sb="org.eclipse.elk.graph.impl",Y6="Recursive containment not allowed for ",UE="The datatype '",K0="' is not a valid classifier",MV="The value '",vv={190:1,3:1,4:1},CV="The class '",WE="http://www.eclipse.org/elk/ElkGraph",Ka=1024,Efe="property",X6="value",IV="source",QZe="properties",ZZe="identifier",TV="height",jV="width",AV="parent",OV="text",DV="children",eet="hierarchical",Sfe="sources",kV="targets",Pfe="sections",ek="bendPoints",Mfe="outgoingShape",Cfe="incomingShape",Ife="outgoingSections",Tfe="incomingSections",Br="org.eclipse.emf.common.util",jfe="Severe implementation error in the Json to ElkGraph importer.",If="id",Cr="org.eclipse.elk.graph.json",Afe="Unhandled parameter types: ",tet="startPoint",net="An edge must have at least one source and one target (edge id: '",YE="').",iet="Referenced edge section does not exist: ",ret=" (edge id: '",Ofe="target",oet="sourcePoint",cet="targetPoint",tk="group",Dn="name",set="connectableShape cannot be null",uet="edge cannot be null",RV="Passed edge is not 'simple'.",nk="org.eclipse.elk.graph.util",RT="The 'no duplicates' constraint is violated",xV="targetIndex=",ub=", size=",LV="sourceIndex=",Tf={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1},NV={3:1,4:1,20:1,28:1,52:1,14:1,47:1,15:1,54:1,67:1,63:1,58:1,588:1},ik="logging",aet="measureExecutionTime",fet="parser.parse.1",het="parser.parse.2",rk="parser.next.1",FV="parser.next.2",det="parser.next.3",get="parser.next.4",ab="parser.factor.1",Dfe="parser.factor.2",bet="parser.factor.3",pet="parser.factor.4",wet="parser.factor.5",met="parser.factor.6",vet="parser.atom.1",yet="parser.atom.2",_et="parser.atom.3",kfe="parser.atom.4",BV="parser.atom.5",Rfe="parser.cc.1",ok="parser.cc.2",Eet="parser.cc.3",Pet="parser.cc.5",xfe="parser.cc.6",Lfe="parser.cc.7",$V="parser.cc.8",Met="parser.ope.1",Cet="parser.ope.2",Iet="parser.ope.3",Md="parser.descape.1",Tet="parser.descape.2",jet="parser.descape.3",Aet="parser.descape.4",Oet="parser.descape.5",zu="parser.process.1",Det="parser.quantifier.1",ket="parser.quantifier.2",Ret="parser.quantifier.3",xet="parser.quantifier.4",Nfe="parser.quantifier.5",Let="org.eclipse.emf.common.notify",Ffe={415:1,672:1},Net={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1},xT={366:1,143:1},J6="index=",KV={3:1,4:1,5:1,126:1},Fet={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,58:1},Bfe={3:1,6:1,4:1,5:1,192:1},Bet={3:1,4:1,5:1,165:1,367:1},$et=";/?:@&=+$,",Ket="invalid authority: ",qet="EAnnotation",Het="ETypedElement",zet="EStructuralFeature",Vet="EAttribute",Get="EClassifier",Uet="EEnumLiteral",Wet="EGenericType",Yet="EOperation",Xet="EParameter",Jet="EReference",Qet="ETypeParameter",ai="org.eclipse.emf.ecore.util",qV={76:1},$fe={3:1,20:1,14:1,15:1,58:1,589:1,76:1,69:1,95:1},Zet="org.eclipse.emf.ecore.util.FeatureMap$Entry",Es=8192,Iw=2048,Q6="byte",ck="char",Z6="double",eP="float",tP="int",nP="long",iP="short",ett="java.lang.Object",yv={3:1,4:1,5:1,247:1},Kfe={3:1,4:1,5:1,673:1},ttt={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,69:1},xo={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,69:1,95:1},LT="mixed",yn="http:///org/eclipse/emf/ecore/util/ExtendedMetaData",aa="kind",ntt={3:1,4:1,5:1,674:1},qfe={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1,76:1,69:1,95:1},sk={20:1,28:1,52:1,14:1,15:1,58:1,69:1},uk={47:1,125:1,279:1},ak={72:1,332:1},lk="The value of type '",fk="' must be of type '",_v=1316,la="http://www.eclipse.org/emf/2002/Ecore",hk=-32768,q0="constraints",Or="baseType",itt="getEStructuralFeature",rtt="getFeatureID",rP="feature",ott="getOperationID",Hfe="operation",ctt="defaultValue",stt="eTypeParameters",utt="isInstance",att="getEEnumLiteral",ltt="eContainingClass",Tn={55:1},ftt={3:1,4:1,5:1,119:1},htt="org.eclipse.emf.ecore.resource",dtt={92:1,90:1,591:1,1935:1},HV="org.eclipse.emf.ecore.resource.impl",zfe="unspecified",NT="simple",dk="attribute",gtt="attributeWildcard",gk="element",zV="elementWildcard",bl="collapse",VV="itemType",bk="namespace",FT="##targetNamespace",fa="whiteSpace",Vfe="wildcards",lb="http://www.eclipse.org/emf/2003/XMLType",GV="##any",XE="uninitialized",BT="The multiplicity constraint is violated",pk="org.eclipse.emf.ecore.xml.type",btt="ProcessingInstruction",ptt="SimpleAnyType",wtt="XMLTypeDocumentRoot",Fi="org.eclipse.emf.ecore.xml.type.impl",$T="INF",mtt="processing",vtt="ENTITIES_._base",Gfe="minLength",Ufe="ENTITY",wk="NCName",ytt="IDREFS_._base",Wfe="integer",UV="token",WV="pattern",_tt="[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",Yfe="\\i\\c*",Ett="[\\i-[:]][\\c-[:]]*",Stt="nonPositiveInteger",KT="maxInclusive",Xfe="NMTOKEN",Ptt="NMTOKENS_._base",Jfe="nonNegativeInteger",qT="minInclusive",Mtt="normalizedString",Ctt="unsignedByte",Itt="unsignedInt",Ttt="18446744073709551615",jtt="unsignedShort",Att="processingInstruction",Cd="org.eclipse.emf.ecore.xml.type.internal",JE=1114111,Ott="Internal Error: shorthands: \\u",oP="xml:isDigit",YV="xml:isWord",XV="xml:isSpace",JV="xml:isNameChar",QV="xml:isInitialNameChar",Dtt="09٠٩۰۹०९০৯੦੯૦૯୦୯௧௯౦౯೦೯൦൯๐๙໐໙༠༩",ktt="AZazÀÖØöøıĴľŁňŊžƀǃǍǰǴǵǺȗɐʨʻˁΆΆΈΊΌΌΎΡΣώϐϖϚϚϜϜϞϞϠϠϢϳЁЌЎяёќўҁҐӄӇӈӋӌӐӫӮӵӸӹԱՖՙՙաֆאתװײءغفيٱڷںھۀێېۓەەۥۦअहऽऽक़ॡঅঌএঐওনপরললশহড়ঢ়য়ৡৰৱਅਊਏਐਓਨਪਰਲਲ਼ਵਸ਼ਸਹਖ਼ੜਫ਼ਫ਼ੲੴઅઋઍઍએઑઓનપરલળવહઽઽૠૠଅଌଏଐଓନପରଲଳଶହଽଽଡ଼ଢ଼ୟୡஅஊஎஐஒகஙசஜஜஞடணதநபமவஷஹఅఌఎఐఒనపళవహౠౡಅಌಎಐಒನಪಳವಹೞೞೠೡഅഌഎഐഒനപഹൠൡกฮะะาำเๅກຂຄຄງຈຊຊຍຍດທນຟມຣລລວວສຫອຮະະາຳຽຽເໄཀཇཉཀྵႠჅაჶᄀᄀᄂᄃᄅᄇᄉᄉᄋᄌᄎᄒᄼᄼᄾᄾᅀᅀᅌᅌᅎᅎᅐᅐᅔᅕᅙᅙᅟᅡᅣᅣᅥᅥᅧᅧᅩᅩᅭᅮᅲᅳᅵᅵᆞᆞᆨᆨᆫᆫᆮᆯᆷᆸᆺᆺᆼᇂᇫᇫᇰᇰᇹᇹḀẛẠỹἀἕἘἝἠὅὈὍὐὗὙὙὛὛὝὝὟώᾀᾴᾶᾼιιῂῄῆῌῐΐῖΊῠῬῲῴῶῼΩΩKÅ℮℮ↀↂ〇〇〡〩ぁゔァヺㄅㄬ一龥가힣",Rtt="Private Use",ZV="ASSIGNED",eG="\0€ÿĀſƀɏɐʯʰ˿̀ͯͰϿЀӿ԰֏֐׿؀ۿ܀ݏހ޿ऀॿঀ৿਀੿઀૿଀୿஀௿ఀ౿ಀ೿ഀൿ඀෿฀๿຀໿ༀ࿿က႟Ⴀჿᄀᇿሀ፿Ꭰ᏿᐀ᙿ ᚟ᚠ᛿ក៿᠀᢯Ḁỿἀ῿ ⁰₟₠⃏⃐⃿℀⅏⅐↏←⇿∀⋿⌀⏿␀␿⑀⑟①⓿─╿▀▟■◿☀⛿✀➿⠀⣿⺀⻿⼀⿟⿰⿿ 〿぀ゟ゠ヿ㄀ㄯ㄰㆏㆐㆟ㆠㆿ㈀㋿㌀㏿㐀䶵一鿿ꀀ꒏꒐꓏가힣豈﫿ffﭏﭐ﷿︠︯︰﹏﹐﹯ﹰ﻾\uFEFF\uFEFF＀￯",Qfe="UNASSIGNED",QE={3:1,117:1},xtt="org.eclipse.emf.ecore.xml.type.util",mk={3:1,4:1,5:1,368:1},Zfe="org.eclipse.xtext.xbase.lib",Ltt="Cannot add elements to a Range",Ntt="Cannot set elements in a Range",Ftt="Cannot remove elements from a Range",vk="locale",yk="default",_k="user.agent",s,Ek,tG;g.goog=g.goog||{},g.goog.global=g.goog.global||g,LDt(),y(1,null,{},C),s.Fb=function(t){return O7e(this,t)},s.Gb=function(){return this.gm},s.Hb=function(){return Xb(this)},s.Ib=function(){var t;return r1(Fs(this))+"@"+(t=fi(this)>>>0,t.toString(16))},s.equals=function(e){return this.Fb(e)},s.hashCode=function(){return this.Hb()},s.toString=function(){return this.Ib()};var Btt,$tt,Ktt;y(290,1,{290:1,2026:1},Are),s.le=function(t){var n;return n=new Are,n.i=4,t>1?n.c=WLe(this,t-1):n.c=this,n},s.me=function(){return Sh(this),this.b},s.ne=function(){return r1(this)},s.oe=function(){return Sh(this),this.k},s.pe=function(){return(this.i&4)!=0},s.qe=function(){return(this.i&1)!=0},s.Ib=function(){return Vie(this)},s.i=0;var xt=S(Ho,"Object",1),ehe=S(Ho,"Class",290);y(1998,1,lT),S(fT,"Optional",1998),y(1170,1998,lT,T),s.Fb=function(t){return t===this},s.Hb=function(){return 2040732332},s.Ib=function(){return"Optional.absent()"},s.Jb=function(t){return nn(t),DS(),nG};var nG;S(fT,"Absent",1170),y(628,1,{},XN),S(fT,"Joiner",628);var fzt=pi(fT,"Predicate");y(582,1,{169:1,582:1,3:1,45:1},OCe),s.Mb=function(t){return Rqe(this,t)},s.Lb=function(t){return Rqe(this,t)},s.Fb=function(t){var n;return Q(t,582)?(n=c(t,582),Sse(this.a,n.a)):!1},s.Hb=function(){return xre(this.a)+306654252},s.Ib=function(){return Ekt(this.a)},S(fT,"Predicates/AndPredicate",582),y(408,1998,{408:1,3:1},LA),s.Fb=function(t){var n;return Q(t,408)?(n=c(t,408),$n(this.a,n.a)):!1},s.Hb=function(){return 1502476572+fi(this.a)},s.Ib=function(){return yJe+this.a+")"},s.Jb=function(t){return new LA(B8(t.Kb(this.a),"the Function passed to Optional.transform() must not return null."))},S(fT,"Present",408),y(198,1,OE),s.Nb=function(t){Sr(this,t)},s.Qb=function(){_9e()},S(qe,"UnmodifiableIterator",198),y(1978,198,DE),s.Qb=function(){_9e()},s.Rb=function(t){throw V(new sn)},s.Wb=function(t){throw V(new sn)},S(qe,"UnmodifiableListIterator",1978),y(386,1978,DE),s.Ob=function(){return this.c0},s.Pb=function(){if(this.c>=this.d)throw V(new tc);return this.Xb(this.c++)},s.Tb=function(){return this.c},s.Ub=function(){if(this.c<=0)throw V(new tc);return this.Xb(--this.c)},s.Vb=function(){return this.c-1},s.c=0,s.d=0,S(qe,"AbstractIndexedListIterator",386),y(699,198,OE),s.Ob=function(){return U$(this)},s.Pb=function(){return Bie(this)},s.e=1,S(qe,"AbstractIterator",699),y(1986,1,{224:1}),s.Zb=function(){var t;return t=this.f,t||(this.f=this.ac())},s.Fb=function(t){return fK(this,t)},s.Hb=function(){return fi(this.Zb())},s.dc=function(){return this.gc()==0},s.ec=function(){return Jy(this)},s.Ib=function(){return Ro(this.Zb())},S(qe,"AbstractMultimap",1986),y(726,1986,tb),s.$b=function(){kO(this)},s._b=function(t){return $9e(this,t)},s.ac=function(){return new c_(this,this.c)},s.ic=function(t){return this.hc()},s.bc=function(){return new Dm(this,this.c)},s.jc=function(){return this.mc(this.hc())},s.kc=function(){return new r9e(this)},s.lc=function(){return mq(this.c.vc().Nc(),new _,64,this.d)},s.cc=function(t){return Vn(this,t)},s.fc=function(t){return PI(this,t)},s.gc=function(){return this.d},s.mc=function(t){return st(),new W3(t)},s.nc=function(){return new i9e(this)},s.oc=function(){return mq(this.c.Cc().Nc(),new M,64,this.d)},s.pc=function(t,n){return new dO(this,t,n,null)},s.d=0,S(qe,"AbstractMapBasedMultimap",726),y(1631,726,tb),s.hc=function(){return new Dc(this.a)},s.jc=function(){return st(),st(),Qr},s.cc=function(t){return c(Vn(this,t),15)},s.fc=function(t){return c(PI(this,t),15)},s.Zb=function(){return n2(this)},s.Fb=function(t){return fK(this,t)},s.qc=function(t){return c(Vn(this,t),15)},s.rc=function(t){return c(PI(this,t),15)},s.mc=function(t){return NC(c(t,15))},s.pc=function(t,n){return ZNe(this,t,c(n,15),null)},S(qe,"AbstractListMultimap",1631),y(732,1,dr),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.c.Ob()||this.e.Ob()},s.Pb=function(){var t;return this.e.Ob()||(t=c(this.c.Pb(),42),this.b=t.cd(),this.a=c(t.dd(),14),this.e=this.a.Kc()),this.sc(this.b,this.e.Pb())},s.Qb=function(){this.e.Qb(),this.a.dc()&&this.c.Qb(),--this.d.d},S(qe,"AbstractMapBasedMultimap/Itr",732),y(1099,732,dr,i9e),s.sc=function(t,n){return n},S(qe,"AbstractMapBasedMultimap/1",1099),y(1100,1,{},M),s.Kb=function(t){return c(t,14).Nc()},S(qe,"AbstractMapBasedMultimap/1methodref$spliterator$Type",1100),y(1101,732,dr,r9e),s.sc=function(t,n){return new Vb(t,n)},S(qe,"AbstractMapBasedMultimap/2",1101);var the=pi(Gt,"Map");y(1967,1,x0),s.wc=function(t){U5(this,t)},s.yc=function(t,n,i){return TK(this,t,n,i)},s.$b=function(){this.vc().$b()},s.tc=function(t){return tq(this,t)},s._b=function(t){return!!Cce(this,t,!1)},s.uc=function(t){var n,i,r;for(i=this.vc().Kc();i.Ob();)if(n=c(i.Pb(),42),r=n.dd(),le(t)===le(r)||t!=null&&$n(t,r))return!0;return!1},s.Fb=function(t){var n,i,r;if(t===this)return!0;if(!Q(t,83)||(r=c(t,83),this.gc()!=r.gc()))return!1;for(i=r.vc().Kc();i.Ob();)if(n=c(i.Pb(),42),!this.tc(n))return!1;return!0},s.xc=function(t){return Uo(Cce(this,t,!1))},s.Hb=function(){return Mre(this.vc())},s.dc=function(){return this.gc()==0},s.ec=function(){return new U3(this)},s.zc=function(t,n){throw V(new td("Put not supported on this map"))},s.Ac=function(t){G5(this,t)},s.Bc=function(t){return Uo(Cce(this,t,!0))},s.gc=function(){return this.vc().gc()},s.Ib=function(){return LVe(this)},s.Cc=function(){return new yh(this)},S(Gt,"AbstractMap",1967),y(1987,1967,x0),s.bc=function(){return new c9(this)},s.vc=function(){return QRe(this)},s.ec=function(){var t;return t=this.g,t||(this.g=this.bc())},s.Cc=function(){var t;return t=this.i,t||(this.i=new D8e(this))},S(qe,"Maps/ViewCachingAbstractMap",1987),y(389,1987,x0,c_),s.xc=function(t){return rIt(this,t)},s.Bc=function(t){return yjt(this,t)},s.$b=function(){this.d==this.e.c?this.e.$b():b8(new Ute(this))},s._b=function(t){return dHe(this.d,t)},s.Ec=function(){return new xCe(this)},s.Dc=function(){return this.Ec()},s.Fb=function(t){return this===t||$n(this.d,t)},s.Hb=function(){return fi(this.d)},s.ec=function(){return this.e.ec()},s.gc=function(){return this.d.gc()},s.Ib=function(){return Ro(this.d)},S(qe,"AbstractMapBasedMultimap/AsMap",389);var zl=pi(Ho,"Iterable");y(28,1,ww),s.Jc=function(t){Mr(this,t)},s.Lc=function(){return this.Oc()},s.Nc=function(){return new bt(this,0)},s.Oc=function(){return new ht(null,this.Nc())},s.Fc=function(t){throw V(new td("Add not supported on this collection"))},s.Gc=function(t){return qr(this,t)},s.$b=function(){Dne(this)},s.Hc=function(t){return nw(this,t,!1)},s.Ic=function(t){return bI(this,t)},s.dc=function(){return this.gc()==0},s.Mc=function(t){return nw(this,t,!0)},s.Pc=function(){return cne(this)},s.Qc=function(t){return RI(this,t)},s.Ib=function(){return C1(this)},S(Gt,"AbstractCollection",28);var ha=pi(Gt,"Set");y(Kl,28,ys),s.Nc=function(){return new bt(this,1)},s.Fb=function(t){return cze(this,t)},s.Hb=function(){return Mre(this)},S(Gt,"AbstractSet",Kl),y(1970,Kl,ys),S(qe,"Sets/ImprovedAbstractSet",1970),y(1971,1970,ys),s.$b=function(){this.Rc().$b()},s.Hc=function(t){return KHe(this,t)},s.dc=function(){return this.Rc().dc()},s.Mc=function(t){var n;return this.Hc(t)?(n=c(t,42),this.Rc().ec().Mc(n.cd())):!1},s.gc=function(){return this.Rc().gc()},S(qe,"Maps/EntrySet",1971),y(1097,1971,ys,xCe),s.Hc=function(t){return eoe(this.a.d.vc(),t)},s.Kc=function(){return new Ute(this.a)},s.Rc=function(){return this.a},s.Mc=function(t){var n;return eoe(this.a.d.vc(),t)?(n=c(t,42),zMt(this.a.e,n.cd()),!0):!1},s.Nc=function(){return jC(this.a.d.vc().Nc(),new LCe(this.a))},S(qe,"AbstractMapBasedMultimap/AsMap/AsMapEntries",1097),y(1098,1,{},LCe),s.Kb=function(t){return qFe(this.a,c(t,42))},S(qe,"AbstractMapBasedMultimap/AsMap/AsMapEntries/0methodref$wrapEntry$Type",1098),y(730,1,dr,Ute),s.Nb=function(t){Sr(this,t)},s.Pb=function(){var t;return t=c(this.b.Pb(),42),this.a=c(t.dd(),14),qFe(this.c,t)},s.Ob=function(){return this.b.Ob()},s.Qb=function(){Km(!!this.a),this.b.Qb(),this.c.e.d-=this.a.gc(),this.a.$b(),this.a=null},S(qe,"AbstractMapBasedMultimap/AsMap/AsMapIterator",730),y(532,1970,ys,c9),s.$b=function(){this.b.$b()},s.Hc=function(t){return this.b._b(t)},s.Jc=function(t){nn(t),this.b.wc(new ZCe(t))},s.dc=function(){return this.b.dc()},s.Kc=function(){return new kS(this.b.vc().Kc())},s.Mc=function(t){return this.b._b(t)?(this.b.Bc(t),!0):!1},s.gc=function(){return this.b.gc()},S(qe,"Maps/KeySet",532),y(318,532,ys,Dm),s.$b=function(){var t;b8((t=this.b.vc().Kc(),new vZ(this,t)))},s.Ic=function(t){return this.b.ec().Ic(t)},s.Fb=function(t){return this===t||$n(this.b.ec(),t)},s.Hb=function(){return fi(this.b.ec())},s.Kc=function(){var t;return t=this.b.vc().Kc(),new vZ(this,t)},s.Mc=function(t){var n,i;return i=0,n=c(this.b.Bc(t),14),n&&(i=n.gc(),n.$b(),this.a.d-=i),i>0},s.Nc=function(){return this.b.ec().Nc()},S(qe,"AbstractMapBasedMultimap/KeySet",318),y(731,1,dr,vZ),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.c.Ob()},s.Pb=function(){return this.a=c(this.c.Pb(),42),this.a.cd()},s.Qb=function(){var t;Km(!!this.a),t=c(this.a.dd(),14),this.c.Qb(),this.b.a.d-=t.gc(),t.$b(),this.a=null},S(qe,"AbstractMapBasedMultimap/KeySet/1",731),y(491,389,{83:1,161:1},EC),s.bc=function(){return this.Sc()},s.ec=function(){return this.Tc()},s.Sc=function(){return new QM(this.c,this.Uc())},s.Tc=function(){var t;return t=this.b,t||(this.b=this.Sc())},s.Uc=function(){return c(this.d,161)},S(qe,"AbstractMapBasedMultimap/SortedAsMap",491),y(542,491,_Je,n8),s.bc=function(){return new o_(this.a,c(c(this.d,161),171))},s.Sc=function(){return new o_(this.a,c(c(this.d,161),171))},s.ec=function(){var t;return t=this.b,c(t||(this.b=new o_(this.a,c(c(this.d,161),171))),271)},s.Tc=function(){var t;return t=this.b,c(t||(this.b=new o_(this.a,c(c(this.d,161),171))),271)},s.Uc=function(){return c(c(this.d,161),171)},S(qe,"AbstractMapBasedMultimap/NavigableAsMap",542),y(490,318,EJe,QM),s.Nc=function(){return this.b.ec().Nc()},S(qe,"AbstractMapBasedMultimap/SortedKeySet",490),y(388,490,Fue,o_),S(qe,"AbstractMapBasedMultimap/NavigableKeySet",388),y(541,28,ww,dO),s.Fc=function(t){var n,i;return Bs(this),i=this.d.dc(),n=this.d.Fc(t),n&&(++this.f.d,i&&CC(this)),n},s.Gc=function(t){var n,i,r;return t.dc()?!1:(r=(Bs(this),this.d.gc()),n=this.d.Gc(t),n&&(i=this.d.gc(),this.f.d+=i-r,r==0&&CC(this)),n)},s.$b=function(){var t;t=(Bs(this),this.d.gc()),t!=0&&(this.d.$b(),this.f.d-=t,y8(this))},s.Hc=function(t){return Bs(this),this.d.Hc(t)},s.Ic=function(t){return Bs(this),this.d.Ic(t)},s.Fb=function(t){return t===this?!0:(Bs(this),$n(this.d,t))},s.Hb=function(){return Bs(this),fi(this.d)},s.Kc=function(){return Bs(this),new kte(this)},s.Mc=function(t){var n;return Bs(this),n=this.d.Mc(t),n&&(--this.f.d,y8(this)),n},s.gc=function(){return p7e(this)},s.Nc=function(){return Bs(this),this.d.Nc()},s.Ib=function(){return Bs(this),Ro(this.d)},S(qe,"AbstractMapBasedMultimap/WrappedCollection",541);var Vu=pi(Gt,"List");y(728,541,{20:1,28:1,14:1,15:1},une),s.ad=function(t){$m(this,t)},s.Nc=function(){return Bs(this),this.d.Nc()},s.Vc=function(t,n){var i;Bs(this),i=this.d.dc(),c(this.d,15).Vc(t,n),++this.a.d,i&&CC(this)},s.Wc=function(t,n){var i,r,o;return n.dc()?!1:(o=(Bs(this),this.d.gc()),i=c(this.d,15).Wc(t,n),i&&(r=this.d.gc(),this.a.d+=r-o,o==0&&CC(this)),i)},s.Xb=function(t){return Bs(this),c(this.d,15).Xb(t)},s.Xc=function(t){return Bs(this),c(this.d,15).Xc(t)},s.Yc=function(){return Bs(this),new Y7e(this)},s.Zc=function(t){return Bs(this),new uLe(this,t)},s.$c=function(t){var n;return Bs(this),n=c(this.d,15).$c(t),--this.a.d,y8(this),n},s._c=function(t,n){return Bs(this),c(this.d,15)._c(t,n)},s.bd=function(t,n){return Bs(this),ZNe(this.a,this.e,c(this.d,15).bd(t,n),this.b?this.b:this)},S(qe,"AbstractMapBasedMultimap/WrappedList",728),y(1096,728,{20:1,28:1,14:1,15:1,54:1},BDe),S(qe,"AbstractMapBasedMultimap/RandomAccessWrappedList",1096),y(620,1,dr,kte),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return I_(this),this.b.Ob()},s.Pb=function(){return I_(this),this.b.Pb()},s.Qb=function(){EDe(this)},S(qe,"AbstractMapBasedMultimap/WrappedCollection/WrappedIterator",620),y(729,620,Wf,Y7e,uLe),s.Qb=function(){EDe(this)},s.Rb=function(t){var n;n=p7e(this.a)==0,(I_(this),c(this.b,125)).Rb(t),++this.a.a.d,n&&CC(this.a)},s.Sb=function(){return(I_(this),c(this.b,125)).Sb()},s.Tb=function(){return(I_(this),c(this.b,125)).Tb()},s.Ub=function(){return(I_(this),c(this.b,125)).Ub()},s.Vb=function(){return(I_(this),c(this.b,125)).Vb()},s.Wb=function(t){(I_(this),c(this.b,125)).Wb(t)},S(qe,"AbstractMapBasedMultimap/WrappedList/WrappedListIterator",729),y(727,541,EJe,ete),s.Nc=function(){return Bs(this),this.d.Nc()},S(qe,"AbstractMapBasedMultimap/WrappedSortedSet",727),y(1095,727,Fue,K7e),S(qe,"AbstractMapBasedMultimap/WrappedNavigableSet",1095),y(1094,541,ys,ZDe),s.Nc=function(){return Bs(this),this.d.Nc()},S(qe,"AbstractMapBasedMultimap/WrappedSet",1094),y(1103,1,{},_),s.Kb=function(t){return XMt(c(t,42))},S(qe,"AbstractMapBasedMultimap/lambda$1$Type",1103),y(1102,1,{},NCe),s.Kb=function(t){return new Vb(this.a,t)},S(qe,"AbstractMapBasedMultimap/lambda$2$Type",1102);var fb=pi(Gt,"Map/Entry");y(345,1,hD),s.Fb=function(t){var n;return Q(t,42)?(n=c(t,42),df(this.cd(),n.cd())&&df(this.dd(),n.dd())):!1},s.Hb=function(){var t,n;return t=this.cd(),n=this.dd(),(t==null?0:fi(t))^(n==null?0:fi(n))},s.ed=function(t){throw V(new sn)},s.Ib=function(){return this.cd()+"="+this.dd()},S(qe,SJe,345),y(1988,28,ww),s.$b=function(){this.fd().$b()},s.Hc=function(t){var n;return Q(t,42)?(n=c(t,42),APt(this.fd(),n.cd(),n.dd())):!1},s.Mc=function(t){var n;return Q(t,42)?(n=c(t,42),kNe(this.fd(),n.cd(),n.dd())):!1},s.gc=function(){return this.fd().d},S(qe,"Multimaps/Entries",1988),y(733,1988,ww,YJ),s.Kc=function(){return this.a.kc()},s.fd=function(){return this.a},s.Nc=function(){return this.a.lc()},S(qe,"AbstractMultimap/Entries",733),y(734,733,ys,YQ),s.Nc=function(){return this.a.lc()},s.Fb=function(t){return zce(this,t)},s.Hb=function(){return RKe(this)},S(qe,"AbstractMultimap/EntrySet",734),y(735,28,ww,XJ),s.$b=function(){this.a.$b()},s.Hc=function(t){return gjt(this.a,t)},s.Kc=function(){return this.a.nc()},s.gc=function(){return this.a.d},s.Nc=function(){return this.a.oc()},S(qe,"AbstractMultimap/Values",735),y(1989,28,{835:1,20:1,28:1,14:1}),s.Jc=function(t){nn(t),Rm(this).Jc(new QCe(t))},s.Nc=function(){var t;return t=Rm(this).Nc(),mq(t,new ce,64|t.qd()&1296,this.a.d)},s.Fc=function(t){return rZ(),!0},s.Gc=function(t){return nn(this),nn(t),Q(t,543)?xPt(c(t,835)):!t.dc()&&F$(this,t.Kc())},s.Hc=function(t){var n;return n=c(tw(n2(this.a),t),14),(n?n.gc():0)>0},s.Fb=function(t){return Txt(this,t)},s.Hb=function(){return fi(Rm(this))},s.dc=function(){return Rm(this).dc()},s.Mc=function(t){return ZGe(this,t,1)>0},s.Ib=function(){return Ro(Rm(this))},S(qe,"AbstractMultiset",1989),y(1991,1970,ys),s.$b=function(){kO(this.a.a)},s.Hc=function(t){var n,i;return Q(t,492)?(i=c(t,416),c(i.a.dd(),14).gc()<=0?!1:(n=aNe(this.a,i.a.cd()),n==c(i.a.dd(),14).gc())):!1},s.Mc=function(t){var n,i,r,o;return Q(t,492)&&(i=c(t,416),n=i.a.cd(),r=c(i.a.dd(),14).gc(),r!=0)?(o=this.a,pRt(o,n,r)):!1},S(qe,"Multisets/EntrySet",1991),y(1109,1991,ys,FCe),s.Kc=function(){return new h9e(QRe(n2(this.a.a)).Kc())},s.gc=function(){return n2(this.a.a).gc()},S(qe,"AbstractMultiset/EntrySet",1109),y(619,726,tb),s.hc=function(){return this.gd()},s.jc=function(){return this.hd()},s.cc=function(t){return this.jd(t)},s.fc=function(t){return this.kd(t)},s.Zb=function(){var t;return t=this.f,t||(this.f=this.ac())},s.hd=function(){return st(),st(),Tk},s.Fb=function(t){return fK(this,t)},s.jd=function(t){return c(Vn(this,t),21)},s.kd=function(t){return c(PI(this,t),21)},s.mc=function(t){return st(),new t_(c(t,21))},s.pc=function(t,n){return new ZDe(this,t,c(n,21))},S(qe,"AbstractSetMultimap",619),y(1657,619,tb),s.hc=function(){return new o1(this.b)},s.gd=function(){return new o1(this.b)},s.jc=function(){return Sne(new o1(this.b))},s.hd=function(){return Sne(new o1(this.b))},s.cc=function(t){return c(c(Vn(this,t),21),84)},s.jd=function(t){return c(c(Vn(this,t),21),84)},s.fc=function(t){return c(c(PI(this,t),21),84)},s.kd=function(t){return c(c(PI(this,t),21),84)},s.mc=function(t){return Q(t,271)?Sne(c(t,271)):(st(),new kee(c(t,84)))},s.Zb=function(){var t;return t=this.f,t||(this.f=Q(this.c,171)?new n8(this,c(this.c,171)):Q(this.c,161)?new EC(this,c(this.c,161)):new c_(this,this.c))},s.pc=function(t,n){return Q(n,271)?new K7e(this,t,c(n,271)):new ete(this,t,c(n,84))},S(qe,"AbstractSortedSetMultimap",1657),y(1658,1657,tb),s.Zb=function(){var t;return t=this.f,c(c(t||(this.f=Q(this.c,171)?new n8(this,c(this.c,171)):Q(this.c,161)?new EC(this,c(this.c,161)):new c_(this,this.c)),161),171)},s.ec=function(){var t;return t=this.i,c(c(t||(this.i=Q(this.c,171)?new o_(this,c(this.c,171)):Q(this.c,161)?new QM(this,c(this.c,161)):new Dm(this,this.c)),84),271)},s.bc=function(){return Q(this.c,171)?new o_(this,c(this.c,171)):Q(this.c,161)?new QM(this,c(this.c,161)):new Dm(this,this.c)},S(qe,"AbstractSortedKeySortedSetMultimap",1658),y(2010,1,{1947:1}),s.Fb=function(t){return o7t(this,t)},s.Hb=function(){var t;return Mre((t=this.g,t||(this.g=new PN(this))))},s.Ib=function(){var t;return LVe((t=this.f,t||(this.f=new Mee(this))))},S(qe,"AbstractTable",2010),y(665,Kl,ys,PN),s.$b=function(){E9e()},s.Hc=function(t){var n,i;return Q(t,468)?(n=c(t,682),i=c(tw(_xe(this.a),u1(n.c.e,n.b)),83),!!i&&eoe(i.vc(),new Vb(u1(n.c.c,n.a),a2(n.c,n.b,n.a)))):!1},s.Kc=function(){return H5t(this.a)},s.Mc=function(t){var n,i;return Q(t,468)?(n=c(t,682),i=c(tw(_xe(this.a),u1(n.c.e,n.b)),83),!!i&&Kjt(i.vc(),new Vb(u1(n.c.c,n.a),a2(n.c,n.b,n.a)))):!1},s.gc=function(){return kRe(this.a)},s.Nc=function(){return FPt(this.a)},S(qe,"AbstractTable/CellSet",665),y(1928,28,ww,BCe),s.$b=function(){E9e()},s.Hc=function(t){return X7t(this.a,t)},s.Kc=function(){return z5t(this.a)},s.gc=function(){return kRe(this.a)},s.Nc=function(){return LNe(this.a)},S(qe,"AbstractTable/Values",1928),y(1632,1631,tb),S(qe,"ArrayListMultimapGwtSerializationDependencies",1632),y(513,1632,tb,YN,Wne),s.hc=function(){return new Dc(this.a)},s.a=0,S(qe,"ArrayListMultimap",513),y(664,2010,{664:1,1947:1,3:1},aUe),S(qe,"ArrayTable",664),y(1924,386,DE,pDe),s.Xb=function(t){return new jre(this.a,t)},S(qe,"ArrayTable/1",1924),y(1925,1,{},DCe),s.ld=function(t){return new jre(this.a,t)},S(qe,"ArrayTable/1methodref$getCell$Type",1925),y(2011,1,{682:1}),s.Fb=function(t){var n;return t===this?!0:Q(t,468)?(n=c(t,682),df(u1(this.c.e,this.b),u1(n.c.e,n.b))&&df(u1(this.c.c,this.a),u1(n.c.c,n.a))&&df(a2(this.c,this.b,this.a),a2(n.c,n.b,n.a))):!1},s.Hb=function(){return ZO(U(G(xt,1),xe,1,5,[u1(this.c.e,this.b),u1(this.c.c,this.a),a2(this.c,this.b,this.a)]))},s.Ib=function(){return"("+u1(this.c.e,this.b)+","+u1(this.c.c,this.a)+")="+a2(this.c,this.b,this.a)},S(qe,"Tables/AbstractCell",2011),y(468,2011,{468:1,682:1},jre),s.a=0,s.b=0,s.d=0,S(qe,"ArrayTable/2",468),y(1927,1,{},kCe),s.ld=function(t){return UBe(this.a,t)},S(qe,"ArrayTable/2methodref$getValue$Type",1927),y(1926,386,DE,wDe),s.Xb=function(t){return UBe(this.a,t)},S(qe,"ArrayTable/3",1926),y(1979,1967,x0),s.$b=function(){b8(this.kc())},s.vc=function(){return new eIe(this)},s.lc=function(){return new Yxe(this.kc(),this.gc())},S(qe,"Maps/IteratorBasedAbstractMap",1979),y(828,1979,x0),s.$b=function(){throw V(new sn)},s._b=function(t){return K9e(this.c,t)},s.kc=function(){return new mDe(this,this.c.b.c.gc())},s.lc=function(){return gB(this.c.b.c.gc(),16,new RCe(this))},s.xc=function(t){var n;return n=c(v5(this.c,t),19),n?this.nd(n.a):null},s.dc=function(){return this.c.b.c.dc()},s.ec=function(){return EB(this.c)},s.zc=function(t,n){var i;if(i=c(v5(this.c,t),19),!i)throw V(new St(this.md()+" "+t+" not in "+EB(this.c)));return this.od(i.a,n)},s.Bc=function(t){throw V(new sn)},s.gc=function(){return this.c.b.c.gc()},S(qe,"ArrayTable/ArrayMap",828),y(1923,1,{},RCe),s.ld=function(t){return Sxe(this.a,t)},S(qe,"ArrayTable/ArrayMap/0methodref$getEntry$Type",1923),y(1921,345,hD,_8e),s.cd=function(){return o3t(this.a,this.b)},s.dd=function(){return this.a.nd(this.b)},s.ed=function(t){return this.a.od(this.b,t)},s.b=0,S(qe,"ArrayTable/ArrayMap/1",1921),y(1922,386,DE,mDe),s.Xb=function(t){return Sxe(this.a,t)},S(qe,"ArrayTable/ArrayMap/2",1922),y(1920,828,x0,lxe),s.md=function(){return"Column"},s.nd=function(t){return a2(this.b,this.a,t)},s.od=function(t,n){return vqe(this.b,this.a,t,n)},s.a=0,S(qe,"ArrayTable/Row",1920),y(829,828,x0,Mee),s.nd=function(t){return new lxe(this.a,t)},s.zc=function(t,n){return c(n,83),qvt()},s.od=function(t,n){return c(n,83),Hvt()},s.md=function(){return"Row"},S(qe,"ArrayTable/RowMap",829),y(1120,1,oa,E8e),s.qd=function(){return this.a.qd()&-262},s.rd=function(){return this.a.rd()},s.Nb=function(t){this.a.Nb(new w8e(t,this.b))},s.sd=function(t){return this.a.sd(new p8e(t,this.b))},S(qe,"CollectSpliterators/1",1120),y(1121,1,Rt,p8e),s.td=function(t){this.a.td(this.b.Kb(t))},S(qe,"CollectSpliterators/1/lambda$0$Type",1121),y(1122,1,Rt,w8e),s.td=function(t){this.a.td(this.b.Kb(t))},S(qe,"CollectSpliterators/1/lambda$1$Type",1122),y(1123,1,oa,UNe),s.qd=function(){return this.a},s.rd=function(){return this.d&&(this.b=J7e(this.b,this.d.rd())),J7e(this.b,0)},s.Nb=function(t){this.d&&(this.d.Nb(t),this.d=null),this.c.Nb(new b8e(this.e,t)),this.b=0},s.sd=function(t){for(;;){if(this.d&&this.d.sd(t))return s5(this.b,dD)&&(this.b=P1(this.b,1)),!0;if(this.d=null,!this.c.sd(new m8e(this,this.e)))return!1}},s.a=0,s.b=0,S(qe,"CollectSpliterators/1FlatMapSpliterator",1123),y(1124,1,Rt,m8e),s.td=function(t){u_t(this.a,this.b,t)},S(qe,"CollectSpliterators/1FlatMapSpliterator/lambda$0$Type",1124),y(1125,1,Rt,b8e),s.td=function(t){G2t(this.b,this.a,t)},S(qe,"CollectSpliterators/1FlatMapSpliterator/lambda$1$Type",1125),y(1117,1,oa,jke),s.qd=function(){return 16464|this.b},s.rd=function(){return this.a.rd()},s.Nb=function(t){this.a.xe(new y8e(t,this.c))},s.sd=function(t){return this.a.ye(new v8e(t,this.c))},s.b=0,S(qe,"CollectSpliterators/1WithCharacteristics",1117),y(1118,1,hT,v8e),s.ud=function(t){this.a.td(this.b.ld(t))},S(qe,"CollectSpliterators/1WithCharacteristics/lambda$0$Type",1118),y(1119,1,hT,y8e),s.ud=function(t){this.a.td(this.b.ld(t))},S(qe,"CollectSpliterators/1WithCharacteristics/lambda$1$Type",1119),y(245,1,SH),s.wd=function(t){return this.vd(c(t,245))},s.vd=function(t){var n;return t==($N(),rG)?1:t==(KN(),iG)?-1:(n=(h8(),fI(this.a,t.a)),n!=0?n:Q(this,519)==Q(t,519)?0:Q(this,519)?1:-1)},s.zd=function(){return this.a},s.Fb=function(t){return Doe(this,t)},S(qe,"Cut",245),y(1761,245,SH,M9e),s.vd=function(t){return t==this?0:1},s.xd=function(t){throw V(new OQ)},s.yd=function(t){t.a+="+∞)"},s.zd=function(){throw V(new Ao(MJe))},s.Hb=function(){return Nf(),Koe(this)},s.Ad=function(t){return!1},s.Ib=function(){return"+∞"};var iG;S(qe,"Cut/AboveAll",1761),y(519,245,{245:1,519:1,3:1,35:1},SDe),s.xd=function(t){nc((t.a+="(",t),this.a)},s.yd=function(t){Dg(nc(t,this.a),93)},s.Hb=function(){return~fi(this.a)},s.Ad=function(t){return h8(),fI(this.a,t)<0},s.Ib=function(){return"/"+this.a+"\\"},S(qe,"Cut/AboveValue",519),y(1760,245,SH,C9e),s.vd=function(t){return t==this?0:-1},s.xd=function(t){t.a+="(-∞"},s.yd=function(t){throw V(new OQ)},s.zd=function(){throw V(new Ao(MJe))},s.Hb=function(){return Nf(),Koe(this)},s.Ad=function(t){return!0},s.Ib=function(){return"-∞"};var rG;S(qe,"Cut/BelowAll",1760),y(1762,245,SH,PDe),s.xd=function(t){nc((t.a+="[",t),this.a)},s.yd=function(t){Dg(nc(t,this.a),41)},s.Hb=function(){return fi(this.a)},s.Ad=function(t){return h8(),fI(this.a,t)<=0},s.Ib=function(){return"\\"+this.a+"/"},S(qe,"Cut/BelowValue",1762),y(537,1,Yf),s.Jc=function(t){Mr(this,t)},s.Ib=function(){return wAt(c(B8(this,"use Optional.orNull() instead of Optional.or(null)"),20).Kc())},S(qe,"FluentIterable",537),y(433,537,Yf,l5),s.Kc=function(){return new Kt(Ht(this.a.Kc(),new j))},S(qe,"FluentIterable/2",433),y(1046,537,Yf,T7e),s.Kc=function(){return d1(this)},S(qe,"FluentIterable/3",1046),y(708,386,DE,Cee),s.Xb=function(t){return this.a[t].Kc()},S(qe,"FluentIterable/3/1",708),y(1972,1,{}),s.Ib=function(){return Ro(this.Bd().b)},S(qe,"ForwardingObject",1972),y(1973,1972,CJe),s.Bd=function(){return this.Cd()},s.Jc=function(t){Mr(this,t)},s.Lc=function(){return this.Oc()},s.Nc=function(){return new bt(this,0)},s.Oc=function(){return new ht(null,this.Nc())},s.Fc=function(t){return this.Cd(),V9e()},s.Gc=function(t){return this.Cd(),G9e()},s.$b=function(){this.Cd(),U9e()},s.Hc=function(t){return this.Cd().Hc(t)},s.Ic=function(t){return this.Cd().Ic(t)},s.dc=function(){return this.Cd().b.dc()},s.Kc=function(){return this.Cd().Kc()},s.Mc=function(t){return this.Cd(),W9e()},s.gc=function(){return this.Cd().b.gc()},s.Pc=function(){return this.Cd().Pc()},s.Qc=function(t){return this.Cd().Qc(t)},S(qe,"ForwardingCollection",1973),y(1980,28,Bue),s.Kc=function(){return this.Ed()},s.Fc=function(t){throw V(new sn)},s.Gc=function(t){throw V(new sn)},s.$b=function(){throw V(new sn)},s.Hc=function(t){return t!=null&&nw(this,t,!1)},s.Dd=function(){switch(this.gc()){case 0:return Hp(),Hp(),oG;case 1:return Hp(),new bB(nn(this.Ed().Pb()));default:return new fxe(this,this.Pc())}},s.Mc=function(t){throw V(new sn)},S(qe,"ImmutableCollection",1980),y(712,1980,Bue,jQ),s.Kc=function(){return l2(this.a.Kc())},s.Hc=function(t){return t!=null&&this.a.Hc(t)},s.Ic=function(t){return this.a.Ic(t)},s.dc=function(){return this.a.dc()},s.Ed=function(){return l2(this.a.Kc())},s.gc=function(){return this.a.gc()},s.Pc=function(){return this.a.Pc()},s.Qc=function(t){return this.a.Qc(t)},s.Ib=function(){return Ro(this.a)},S(qe,"ForwardingImmutableCollection",712),y(152,1980,T6),s.Kc=function(){return this.Ed()},s.Yc=function(){return this.Fd(0)},s.Zc=function(t){return this.Fd(t)},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.bd=function(t,n){return this.Gd(t,n)},s.Vc=function(t,n){throw V(new sn)},s.Wc=function(t,n){throw V(new sn)},s.Fb=function(t){return hxt(this,t)},s.Hb=function(){return STt(this)},s.Xc=function(t){return t==null?-1:L8t(this,t)},s.Ed=function(){return this.Fd(0)},s.Fd=function(t){return Kee(this,t)},s.$c=function(t){throw V(new sn)},s._c=function(t,n){throw V(new sn)},s.Gd=function(t,n){var i;return n7((i=new k8e(this),new Hf(i,t,n)))};var oG;S(qe,"ImmutableList",152),y(2006,152,T6),s.Kc=function(){return l2(this.Hd().Kc())},s.bd=function(t,n){return n7(this.Hd().bd(t,n))},s.Hc=function(t){return t!=null&&this.Hd().Hc(t)},s.Ic=function(t){return this.Hd().Ic(t)},s.Fb=function(t){return $n(this.Hd(),t)},s.Xb=function(t){return u1(this,t)},s.Hb=function(){return fi(this.Hd())},s.Xc=function(t){return this.Hd().Xc(t)},s.dc=function(){return this.Hd().dc()},s.Ed=function(){return l2(this.Hd().Kc())},s.gc=function(){return this.Hd().gc()},s.Gd=function(t,n){return n7(this.Hd().bd(t,n))},s.Pc=function(){return this.Hd().Qc(oe(xt,xe,1,this.Hd().gc(),5,1))},s.Qc=function(t){return this.Hd().Qc(t)},s.Ib=function(){return Ro(this.Hd())},S(qe,"ForwardingImmutableList",2006),y(714,1,kE),s.vc=function(){return e0(this)},s.wc=function(t){U5(this,t)},s.ec=function(){return EB(this)},s.yc=function(t,n,i){return TK(this,t,n,i)},s.Cc=function(){return this.Ld()},s.$b=function(){throw V(new sn)},s._b=function(t){return this.xc(t)!=null},s.uc=function(t){return this.Ld().Hc(t)},s.Jd=function(){return new pAe(this)},s.Kd=function(){return new wAe(this)},s.Fb=function(t){return bjt(this,t)},s.Hb=function(){return e0(this).Hb()},s.dc=function(){return this.gc()==0},s.zc=function(t,n){return zvt()},s.Bc=function(t){throw V(new sn)},s.Ib=function(){return UDt(this)},s.Ld=function(){return this.e?this.e:this.e=this.Kd()},s.c=null,s.d=null,s.e=null;var qtt;S(qe,"ImmutableMap",714),y(715,714,kE),s._b=function(t){return K9e(this,t)},s.uc=function(t){return N8e(this.b,t)},s.Id=function(){return hHe(new $Ce(this))},s.Jd=function(){return hHe(Vxe(this.b))},s.Kd=function(){return hf(),new jQ(zxe(this.b))},s.Fb=function(t){return F8e(this.b,t)},s.xc=function(t){return v5(this,t)},s.Hb=function(){return fi(this.b.c)},s.dc=function(){return this.b.c.dc()},s.gc=function(){return this.b.c.gc()},s.Ib=function(){return Ro(this.b.c)},S(qe,"ForwardingImmutableMap",715),y(1974,1973,PH),s.Bd=function(){return this.Md()},s.Cd=function(){return this.Md()},s.Nc=function(){return new bt(this,1)},s.Fb=function(t){return t===this||this.Md().Fb(t)},s.Hb=function(){return this.Md().Hb()},S(qe,"ForwardingSet",1974),y(1069,1974,PH,$Ce),s.Bd=function(){return M_(this.a.b)},s.Cd=function(){return M_(this.a.b)},s.Hc=function(t){if(Q(t,42)&&c(t,42).cd()==null)return!1;try{return L8e(M_(this.a.b),t)}catch(n){if(n=gi(n),Q(n,205))return!1;throw V(n)}},s.Md=function(){return M_(this.a.b)},s.Qc=function(t){var n;return n=CLe(M_(this.a.b),t),M_(this.a.b).b.gc()=0?"+":"")+(i/60|0),n=B9(g.Math.abs(i)%60),(GVe(),rnt)[this.q.getDay()]+" "+ont[this.q.getMonth()]+" "+B9(this.q.getDate())+" "+B9(this.q.getHours())+":"+B9(this.q.getMinutes())+":"+B9(this.q.getSeconds())+" GMT"+t+n+" "+this.q.getFullYear()};var Mk=S(Gt,"Date",199);y(1915,199,xJe,vVe),s.a=!1,s.b=0,s.c=0,s.d=0,s.e=0,s.f=0,s.g=!1,s.i=0,s.j=0,s.k=0,s.n=0,s.o=0,s.p=0,S("com.google.gwt.i18n.shared.impl","DateRecord",1915),y(1966,1,{}),s.fe=function(){return null},s.ge=function(){return null},s.he=function(){return null},s.ie=function(){return null},s.je=function(){return null},S(I2,"JSONValue",1966),y(216,1966,{216:1},Eg,QJ),s.Fb=function(t){return Q(t,216)?Jne(this.a,c(t,216).a):!1},s.ee=function(){return hvt},s.Hb=function(){return Fne(this.a)},s.fe=function(){return this},s.Ib=function(){var t,n,i;for(i=new lu("["),n=0,t=this.a.length;n0&&(i.a+=","),nc(i,Yp(this,n));return i.a+="]",i.a},S(I2,"JSONArray",216),y(483,1966,{483:1},ZJ),s.ee=function(){return dvt},s.ge=function(){return this},s.Ib=function(){return Pt(),""+this.a},s.a=!1;var Ytt,Xtt;S(I2,"JSONBoolean",483),y(985,60,$h,d9e),S(I2,"JSONException",985),y(1023,1966,{},re),s.ee=function(){return mvt},s.Ib=function(){return rs};var Jtt;S(I2,"JSONNull",1023),y(258,1966,{258:1},NA),s.Fb=function(t){return Q(t,258)?this.a==c(t,258).a:!1},s.ee=function(){return gvt},s.Hb=function(){return f_(this.a)},s.he=function(){return this},s.Ib=function(){return this.a+""},s.a=0,S(I2,"JSONNumber",258),y(183,1966,{183:1},xy,BM),s.Fb=function(t){return Q(t,183)?Jne(this.a,c(t,183).a):!1},s.ee=function(){return bvt},s.Hb=function(){return Fne(this.a)},s.ie=function(){return this},s.Ib=function(){var t,n,i,r,o,u,a;for(a=new lu("{"),t=!0,u=J$(this,oe(Re,we,2,0,6,1)),i=u,r=0,o=i.length;r=0?":"+this.c:"")+")"},s.c=0;var mhe=S(Ho,"StackTraceElement",310);Ktt={3:1,475:1,35:1,2:1};var Re=S(Ho,$ue,2);y(107,418,{475:1},nd,FS,ea),S(Ho,"StringBuffer",107),y(100,418,{475:1},n1,_m,lu),S(Ho,"StringBuilder",100),y(687,73,UH,cZ),S(Ho,"StringIndexOutOfBoundsException",687),y(2043,1,{});var vhe;y(844,1,{},Gn),s.Kb=function(t){return c(t,78).e},S(Ho,"Throwable/lambda$0$Type",844),y(41,60,{3:1,102:1,60:1,78:1,41:1},sn,td),S(Ho,"UnsupportedOperationException",41),y(240,236,{3:1,35:1,236:1,240:1},cI,bZ),s.wd=function(t){return CYe(this,c(t,240))},s.ke=function(){return aw(uXe(this))},s.Fb=function(t){var n;return this===t?!0:Q(t,240)?(n=c(t,240),this.e==n.e&&CYe(this,n)==0):!1},s.Hb=function(){var t;return this.b!=0?this.b:this.a<54?(t=ns(this.f),this.b=tn(Xi(t,-1)),this.b=33*this.b+tn(Xi(h1(t,32),-1)),this.b=17*this.b+xi(this.e),this.b):(this.b=17*cHe(this.c)+xi(this.e),this.b)},s.Ib=function(){return uXe(this)},s.a=0,s.b=0,s.d=0,s.e=0,s.f=0;var tnt,db,yhe,_he,Ehe,She,Phe,Mhe,dG=S("java.math","BigDecimal",240);y(91,236,{3:1,35:1,236:1,91:1},$oe,ld,km,Ece,aze,l1),s.wd=function(t){return rze(this,c(t,91))},s.ke=function(){return aw(yH(this,0))},s.Fb=function(t){return voe(this,t)},s.Hb=function(){return cHe(this)},s.Ib=function(){return yH(this,0)},s.b=-2,s.c=0,s.d=0,s.e=0;var gG,Ck,Che,bG,Ik,t4,Ev=S("java.math","BigInteger",91),nnt,int,$2,uP;y(488,1967,x0),s.$b=function(){Is(this)},s._b=function(t){return tu(this,t)},s.uc=function(t){return zqe(this,t,this.g)||zqe(this,t,this.f)},s.vc=function(){return new Pg(this)},s.xc=function(t){return Bt(this,t)},s.zc=function(t,n){return Kn(this,t,n)},s.Bc=function(t){return u2(this,t)},s.gc=function(){return KS(this)},S(Gt,"AbstractHashMap",488),y(261,Kl,ys,Pg),s.$b=function(){this.a.$b()},s.Hc=function(t){return qNe(this,t)},s.Kc=function(){return new Gg(this.a)},s.Mc=function(t){var n;return qNe(this,t)?(n=c(t,42).cd(),this.a.Bc(n),!0):!1},s.gc=function(){return this.a.gc()},S(Gt,"AbstractHashMap/EntrySet",261),y(262,1,dr,Gg),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return g0(this)},s.Ob=function(){return this.b},s.Qb=function(){BBe(this)},s.b=!1,S(Gt,"AbstractHashMap/EntrySetIterator",262),y(417,1,dr,CS),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return iC(this)},s.Pb=function(){return lLe(this)},s.Qb=function(){nu(this)},s.b=0,s.c=-1,S(Gt,"AbstractList/IteratorImpl",417),y(96,417,Wf,_r),s.Qb=function(){nu(this)},s.Rb=function(t){Np(this,t)},s.Sb=function(){return this.b>0},s.Tb=function(){return this.b},s.Ub=function(){return Lt(this.b>0),this.a.Xb(this.c=--this.b)},s.Vb=function(){return this.b-1},s.Wb=function(t){Rp(this.c!=-1),this.a._c(this.c,t)},S(Gt,"AbstractList/ListIteratorImpl",96),y(219,52,xE,Hf),s.Vc=function(t,n){Vp(t,this.b),this.c.Vc(this.a+t,n),++this.b},s.Xb=function(t){return pt(t,this.b),this.c.Xb(this.a+t)},s.$c=function(t){var n;return pt(t,this.b),n=this.c.$c(this.a+t),--this.b,n},s._c=function(t,n){return pt(t,this.b),this.c._c(this.a+t,n)},s.gc=function(){return this.b},s.a=0,s.b=0,S(Gt,"AbstractList/SubList",219),y(384,Kl,ys,U3),s.$b=function(){this.a.$b()},s.Hc=function(t){return this.a._b(t)},s.Kc=function(){var t;return t=this.a.vc().Kc(),new oQ(t)},s.Mc=function(t){return this.a._b(t)?(this.a.Bc(t),!0):!1},s.gc=function(){return this.a.gc()},S(Gt,"AbstractMap/1",384),y(691,1,dr,oQ),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.a.Ob()},s.Pb=function(){var t;return t=c(this.a.Pb(),42),t.cd()},s.Qb=function(){this.a.Qb()},S(Gt,"AbstractMap/1/1",691),y(226,28,ww,yh),s.$b=function(){this.a.$b()},s.Hc=function(t){return this.a.uc(t)},s.Kc=function(){var t;return t=this.a.vc().Kc(),new Cp(t)},s.gc=function(){return this.a.gc()},S(Gt,"AbstractMap/2",226),y(294,1,dr,Cp),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.a.Ob()},s.Pb=function(){var t;return t=c(this.a.Pb(),42),t.dd()},s.Qb=function(){this.a.Qb()},S(Gt,"AbstractMap/2/1",294),y(484,1,{484:1,42:1}),s.Fb=function(t){var n;return Q(t,42)?(n=c(t,42),wc(this.d,n.cd())&&wc(this.e,n.dd())):!1},s.cd=function(){return this.d},s.dd=function(){return this.e},s.Hb=function(){return jm(this.d)^jm(this.e)},s.ed=function(t){return ste(this,t)},s.Ib=function(){return this.d+"="+this.e},S(Gt,"AbstractMap/AbstractEntry",484),y(383,484,{484:1,383:1,42:1},y9),S(Gt,"AbstractMap/SimpleEntry",383),y(1984,1,JH),s.Fb=function(t){var n;return Q(t,42)?(n=c(t,42),wc(this.cd(),n.cd())&&wc(this.dd(),n.dd())):!1},s.Hb=function(){return jm(this.cd())^jm(this.dd())},s.Ib=function(){return this.cd()+"="+this.dd()},S(Gt,SJe,1984),y(1992,1967,_Je),s.tc=function(t){return XFe(this,t)},s._b=function(t){return iB(this,t)},s.vc=function(){return new lQ(this)},s.xc=function(t){var n;return n=t,Uo($re(this,n))},s.ec=function(){return new qM(this)},S(Gt,"AbstractNavigableMap",1992),y(739,Kl,ys,lQ),s.Hc=function(t){return Q(t,42)&&XFe(this.b,c(t,42))},s.Kc=function(){return new m5(this.b)},s.Mc=function(t){var n;return Q(t,42)?(n=c(t,42),NBe(this.b,n)):!1},s.gc=function(){return this.b.c},S(Gt,"AbstractNavigableMap/EntrySet",739),y(493,Kl,Fue,qM),s.Nc=function(){return new m9(this)},s.$b=function(){RS(this.a)},s.Hc=function(t){return iB(this.a,t)},s.Kc=function(){var t;return t=new m5(new b5(this.a).b),new HM(t)},s.Mc=function(t){return iB(this.a,t)?(D5(this.a,t),!0):!1},s.gc=function(){return this.a.c},S(Gt,"AbstractNavigableMap/NavigableKeySet",493),y(494,1,dr,HM),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return iC(this.a.a)},s.Pb=function(){var t;return t=e8(this.a),t.cd()},s.Qb=function(){$ke(this.a)},S(Gt,"AbstractNavigableMap/NavigableKeySet/1",494),y(2004,28,ww),s.Fc=function(t){return R_(wE(this,t)),!0},s.Gc=function(t){return yt(t),u8(t!=this,"Can't add a queue to itself"),qr(this,t)},s.$b=function(){for(;B$(this)!=null;);},S(Gt,"AbstractQueue",2004),y(302,28,{4:1,20:1,28:1,14:1},vm,dNe),s.Fc=function(t){return oie(this,t),!0},s.$b=function(){fie(this)},s.Hc=function(t){return dqe(new O5(this),t)},s.dc=function(){return xS(this)},s.Kc=function(){return new O5(this)},s.Mc=function(t){return T6t(new O5(this),t)},s.gc=function(){return this.c-this.b&this.a.length-1},s.Nc=function(){return new bt(this,272)},s.Qc=function(t){var n;return n=this.c-this.b&this.a.length-1,t.lengthn&&vi(t,n,null),t},s.b=0,s.c=0,S(Gt,"ArrayDeque",302),y(446,1,dr,O5),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.a!=this.b},s.Pb=function(){return t7(this)},s.Qb=function(){fKe(this)},s.a=0,s.b=0,s.c=-1,S(Gt,"ArrayDeque/IteratorImpl",446),y(12,52,FJe,Se,Dc,ps),s.Vc=function(t,n){Bp(this,t,n)},s.Fc=function(t){return Ee(this,t)},s.Wc=function(t,n){return Gre(this,t,n)},s.Gc=function(t){return Hi(this,t)},s.$b=function(){this.c=oe(xt,xe,1,0,5,1)},s.Hc=function(t){return Do(this,t,0)!=-1},s.Jc=function(t){Zc(this,t)},s.Xb=function(t){return Ne(this,t)},s.Xc=function(t){return Do(this,t,0)},s.dc=function(){return this.c.length==0},s.Kc=function(){return new q(this)},s.$c=function(t){return ad(this,t)},s.Mc=function(t){return Jc(this,t)},s.Ud=function(t,n){hNe(this,t,n)},s._c=function(t,n){return Lu(this,t,n)},s.gc=function(){return this.c.length},s.ad=function(t){cr(this,t)},s.Pc=function(){return GF(this)},s.Qc=function(t){return Bl(this,t)};var hzt=S(Gt,"ArrayList",12);y(7,1,dr,q),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return Fo(this)},s.Pb=function(){return K(this)},s.Qb=function(){I5(this)},s.a=0,s.b=-1,S(Gt,"ArrayList/1",7),y(2013,g.Function,{},ve),s.te=function(t,n){return zi(t,n)},y(154,52,BJe,Js),s.Hc=function(t){return dKe(this,t)!=-1},s.Jc=function(t){var n,i,r,o;for(yt(t),i=this.a,r=0,o=i.length;r>>0,t.toString(16)))},s.f=0,s.i=$i;var Dk=S(Qf,"CNode",57);y(814,1,{},$Q),S(Qf,"CNode/CNodeBuilder",814);var vnt;y(1525,1,{},or),s.Oe=function(t,n){return 0},s.Pe=function(t,n){return 0},S(Qf,UJe,1525),y(1790,1,{},uu),s.Le=function(t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;for(p=Ii,r=new q(t.a.b);r.ar.d.c||r.d.c==u.d.c&&r.d.b0?t+this.n.d+this.n.a:0},s.Se=function(){var t,n,i,r,o;if(o=0,this.e)this.b?o=this.b.a:this.a[1][1]&&(o=this.a[1][1].Se());else if(this.g)o=goe(this,aq(this,null,!0));else for(n=(al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])),i=0,r=n.length;i0?o+this.n.b+this.n.c:0},s.Te=function(){var t,n,i,r,o;if(this.g)for(t=aq(this,null,!1),i=(al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])),r=0,o=i.length;r0&&(r[0]+=this.d,i-=r[0]),r[2]>0&&(r[2]+=this.d,i-=r[2]),this.c.a=g.Math.max(0,i),this.c.d=n.d+t.d+(this.c.a-i)/2,r[1]=g.Math.max(r[1],i),mie(this,Nc,n.d+t.d+r[0]-(r[1]-i)/2,r)},s.b=null,s.d=0,s.e=!1,s.f=!1,s.g=!1;var EG=0,kk=0;S(ib,"GridContainerCell",1473),y(461,22,{3:1,35:1,22:1,461:1},cF);var N1,jf,qa,jnt=hn(ib,"HorizontalLabelAlignment",461,bn,H6t,I_t),Ant;y(306,212,{212:1,306:1},kLe,$$e,ALe),s.Re=function(){return wRe(this)},s.Se=function(){return Vte(this)},s.a=0,s.c=!1;var Ezt=S(ib,"LabelCell",306);y(244,326,{212:1,326:1,244:1},r6),s.Re=function(){return GI(this)},s.Se=function(){return UI(this)},s.Te=function(){eH(this)},s.Ue=function(){tH(this)},s.b=0,s.c=0,s.d=!1,S(ib,"StripContainerCell",244),y(1626,1,Rn,Eo),s.Mb=function(t){return $vt(c(t,212))},S(ib,"StripContainerCell/lambda$0$Type",1626),y(1627,1,{},fs),s.Fe=function(t){return c(t,212).Se()},S(ib,"StripContainerCell/lambda$1$Type",1627),y(1628,1,Rn,au),s.Mb=function(t){return Kvt(c(t,212))},S(ib,"StripContainerCell/lambda$2$Type",1628),y(1629,1,{},e1),s.Fe=function(t){return c(t,212).Re()},S(ib,"StripContainerCell/lambda$3$Type",1629),y(462,22,{3:1,35:1,22:1,462:1},sF);var Ha,F1,pl,Ont=hn(ib,"VerticalLabelAlignment",462,bn,z6t,T_t),Dnt;y(789,1,{},Tue),s.c=0,s.d=0,s.k=0,s.s=0,s.t=0,s.v=!1,s.w=0,s.D=!1,S(vD,"NodeContext",789),y(1471,1,Zn,TA),s.ue=function(t,n){return k7e(c(t,61),c(n,61))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(vD,"NodeContext/0methodref$comparePortSides$Type",1471),y(1472,1,Zn,fN),s.ue=function(t,n){return gDt(c(t,111),c(n,111))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(vD,"NodeContext/1methodref$comparePortContexts$Type",1472),y(159,22,{3:1,35:1,22:1,159:1},Bu);var knt,Rnt,xnt,Lnt,Nnt,Fnt,Bnt,$nt,Knt,qnt,Hnt,znt,Vnt,Gnt,Unt,Wnt,Ynt,Xnt,Jnt,Qnt,Znt,SG,eit=hn(vD,"NodeLabelLocation",159,bn,KK,j_t),tit;y(111,1,{111:1},hUe),s.a=!1,S(vD,"PortContext",111),y(1476,1,Rt,hN),s.td=function(t){Q9e(c(t,306))},S(yT,cQe,1476),y(1477,1,Rn,w2e),s.Mb=function(t){return!!c(t,111).c},S(yT,sQe,1477),y(1478,1,Rt,m2e),s.td=function(t){Q9e(c(t,111).c)},S(yT,"LabelPlacer/lambda$2$Type",1478);var ude;y(1475,1,Rt,y2e),s.td=function(t){Lp(),yvt(c(t,111))},S(yT,"NodeLabelAndSizeUtilities/lambda$0$Type",1475),y(790,1,Rt,Pte),s.td=function(t){Dyt(this.b,this.c,this.a,c(t,181))},s.a=!1,s.c=!1,S(yT,"NodeLabelCellCreator/lambda$0$Type",790),y(1474,1,Rt,RIe),s.td=function(t){Svt(this.a,c(t,181))},S(yT,"PortContextCreator/lambda$0$Type",1474);var Rk;y(1829,1,{},_2e),S(BE,"GreedyRectangleStripOverlapRemover",1829),y(1830,1,Zn,v2e),s.ue=function(t,n){return l3t(c(t,222),c(n,222))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(BE,"GreedyRectangleStripOverlapRemover/0methodref$compareByYCoordinate$Type",1830),y(1786,1,{},AAe),s.a=5,s.e=0,S(BE,"RectangleStripOverlapRemover",1786),y(1787,1,Zn,S2e),s.ue=function(t,n){return f3t(c(t,222),c(n,222))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(BE,"RectangleStripOverlapRemover/0methodref$compareLeftRectangleBorders$Type",1787),y(1789,1,Zn,P2e),s.ue=function(t,n){return xSt(c(t,222),c(n,222))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(BE,"RectangleStripOverlapRemover/1methodref$compareRightRectangleBorders$Type",1789),y(406,22,{3:1,35:1,22:1,406:1},S9);var HT,PG,MG,zT,nit=hn(BE,"RectangleStripOverlapRemover/OverlapRemovalDirection",406,bn,HPt,A_t),iit;y(222,1,{222:1},yB),S(BE,"RectangleStripOverlapRemover/RectangleNode",222),y(1788,1,Rt,xIe),s.td=function(t){B8t(this.a,c(t,222))},S(BE,"RectangleStripOverlapRemover/lambda$1$Type",1788),y(1304,1,Zn,M2e),s.ue=function(t,n){return V$t(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator",1304),y(1307,1,{},C2e),s.Kb=function(t){return c(t,324).a},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$0$Type",1307),y(1308,1,Rn,I2e),s.Mb=function(t){return c(t,323).a},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$1$Type",1308),y(1309,1,Rn,T2e),s.Mb=function(t){return c(t,323).a},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$2$Type",1309),y(1302,1,Zn,j2e),s.ue=function(t,n){return MFt(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator",1302),y(1305,1,{},E2e),s.Kb=function(t){return c(t,324).a},S(_f,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator/lambda$0$Type",1305),y(767,1,Zn,CJ),s.ue=function(t,n){return ITt(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinNumOfExtensionsComparator",767),y(1300,1,Zn,A2e),s.ue=function(t,n){return LIt(c(t,321),c(n,321))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinPerimeterComparator",1300),y(1301,1,Zn,O2e),s.ue=function(t,n){return h8t(c(t,321),c(n,321))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinPerimeterComparatorWithShape",1301),y(1303,1,Zn,D2e),s.ue=function(t,n){return WFt(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator",1303),y(1306,1,{},k2e),s.Kb=function(t){return c(t,324).a},S(_f,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator/lambda$0$Type",1306),y(777,1,{},OZ),s.Ce=function(t,n){return BPt(this,c(t,46),c(n,167))},S(_f,"SuccessorCombination",777),y(644,1,{},dN),s.Ce=function(t,n){var i;return TRt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorJitter",644),y(643,1,{},gN),s.Ce=function(t,n){var i;return pNt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorLineByLine",643),y(568,1,{},jA),s.Ce=function(t,n){var i;return jxt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorManhattan",568),y(1356,1,{},R2e),s.Ce=function(t,n){var i;return $Lt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorMaxNormWindingInMathPosSense",1356),y(400,1,{},X3),s.Ce=function(t,n){return vne(this,t,n)},s.c=!1,s.d=!1,s.e=!1,s.f=!1,S(_f,"SuccessorQuadrantsGeneric",400),y(1357,1,{},x2e),s.Kb=function(t){return c(t,324).a},S(_f,"SuccessorQuadrantsGeneric/lambda$0$Type",1357),y(323,22,{3:1,35:1,22:1,323:1},E9),s.a=!1;var VT,GT,UT,WT,rit=hn(_D,oae,323,bn,GPt,O_t),oit;y(1298,1,{}),s.Ib=function(){var t,n,i,r,o,u;for(i=" ",t=Ce(0),o=0;o=0?"b"+t+"["+m$(this.a)+"]":"b["+m$(this.a)+"]"):"b_"+Xb(this)},S(ET,"FBendpoint",559),y(282,134,{3:1,282:1,94:1,134:1},dke),s.Ib=function(){return m$(this)},S(ET,"FEdge",282),y(231,134,{3:1,231:1,94:1,134:1},uO);var Pzt=S(ET,"FGraph",231);y(447,357,{3:1,447:1,357:1,94:1,134:1},pFe),s.Ib=function(){return this.b==null||this.b.length==0?"l["+m$(this.a)+"]":"l_"+this.b},S(ET,"FLabel",447),y(144,357,{3:1,144:1,357:1,94:1,134:1},Cxe),s.Ib=function(){return Xne(this)},s.b=0,S(ET,"FNode",144),y(2003,1,{}),s.bf=function(t){sue(this,t)},s.cf=function(){Yze(this)},s.d=0,S(bae,"AbstractForceModel",2003),y(631,2003,{631:1},oqe),s.af=function(t,n){var i,r,o,u,a;return VGe(this.f,t,n),o=hr(Wo(n.d),t.d),a=g.Math.sqrt(o.a*o.a+o.b*o.b),r=g.Math.max(0,a-j5(t.e)/2-j5(n.e)/2),i=xqe(this.e,t,n),i>0?u=-DSt(r,this.c)*i:u=P3t(r,this.b)*c(B(t,(dl(),r4)),19).a,lf(o,u/a),o},s.bf=function(t){sue(this,t),this.a=c(B(t,(dl(),$k)),19).a,this.c=ge(Te(B(t,Kk))),this.b=ge(Te(B(t,DG)))},s.df=function(t){return t0&&(u-=Lvt(r,this.a)*i),lf(o,u*this.b/a),o},s.bf=function(t){var n,i,r,o,u,a,l;for(sue(this,t),this.b=ge(Te(B(t,(dl(),kG)))),this.c=this.b/c(B(t,$k),19).a,r=t.e.c.length,u=0,o=0,l=new q(t.e);l.a0},s.a=0,s.b=0,s.c=0,S(bae,"FruchtermanReingoldModel",632),y(849,1,ca,$Me),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,PD),""),"Force Model"),"Determines the model for force calculation."),wde),(yd(),Ai)),mde),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,pae),""),"Iterations"),"The number of iterations on the force model."),Ce(300)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,wae),""),"Repulsive Power"),"Determines how many bend points are added to the edge; such bend points are regarded as repelling particles in the force model"),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,vz),""),"FR Temperature"),"The temperature is used as a scaling factor for particle displacements."),Ef),To),mr),nt(Tt)))),pr(t,vz,PD,Mit),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,yz),""),"Eades Repulsion"),"Factor for repulsive forces in Eades' model."),5),To),mr),nt(Tt)))),pr(t,yz,PD,Eit),GXe((new KMe,t))};var vit,yit,wde,_it,Eit,Sit,Pit,Mit;S(x6,"ForceMetaDataProvider",849),y(424,22,{3:1,35:1,22:1,424:1},xZ);var OG,Bk,mde=hn(x6,"ForceModelStrategy",424,bn,m6t,R_t),Cit;y(988,1,ca,KMe),s.Qe=function(t){GXe(t)};var Iit,Tit,vde,$k,yde,jit,Ait,Oit,_de,Dit,Ede,Sde,kit,r4,Rit,DG,Pde,xit,Lit,Kk,kG;S(x6,"ForceOptions",988),y(989,1,{},Y2e),s.$e=function(){var t;return t=new NQ,t},s._e=function(t){},S(x6,"ForceOptions/ForceFactory",989);var JT,fP,K2,qk;y(850,1,ca,qMe),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,vae),""),"Fixed Position"),"Prevent that the node is moved by the layout algorithm."),(Pt(),!1)),(yd(),Dr)),Qi),nt((fl(),ar))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,yae),""),"Desired Edge Length"),"Either specified for parent nodes or for individual edges, where the latter takes higher precedence."),100),To),mr),ui(Tt,U(G(Dd,1),_e,175,0,[kf]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_ae),""),"Layout Dimension"),"Dimensions that are permitted to be altered during layout."),Mde),Ai),Dde),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Eae),""),"Stress Epsilon"),"Termination criterion for the iterative process."),Ef),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Sae),""),"Iteration Limit"),"Maximum number of performed iterations. Takes higher precedence than 'epsilon'."),Ce(Fn)),oc),$r),nt(Tt)))),AXe((new HMe,t))};var Nit,Fit,Mde,Bit,$it,Kit;S(x6,"StressMetaDataProvider",850),y(992,1,ca,HMe),s.Qe=function(t){AXe(t)};var Hk,Cde,Ide,Tde,jde,Ade,qit,Hit,zit,Vit,Ode,Git;S(x6,"StressOptions",992),y(993,1,{},X2e),s.$e=function(){var t;return t=new gke,t},s._e=function(t){},S(x6,"StressOptions/StressFactory",993),y(1128,209,rb,gke),s.Ze=function(t,n){var i,r,o,u,a;for(Wt(n,vQe,1),Be(Fe(Ke(t,(NI(),jde))))?Be(Fe(Ke(t,Ode)))||V8((i=new zM((Ap(),new Ip(t))),i)):JUe(new NQ,t,yc(n,1)),o=Iqe(t),r=$Ye(this.a,o),a=r.Kc();a.Ob();)u=c(a.Pb(),231),!(u.e.c.length<=1)&&(H$t(this.b,u),_xt(this.b),Zc(u.d,new J2e));o=ZXe(r),XXe(o),qt(n)},S(ID,"StressLayoutProvider",1128),y(1129,1,Rt,J2e),s.td=function(t){gue(c(t,447))},S(ID,"StressLayoutProvider/lambda$0$Type",1129),y(990,1,{},SAe),s.c=0,s.e=0,s.g=0,S(ID,"StressMajorization",990),y(379,22,{3:1,35:1,22:1,379:1},uF);var RG,xG,LG,Dde=hn(ID,"StressMajorization/Dimension",379,bn,G6t,x_t),Uit;y(991,1,Zn,BIe),s.ue=function(t,n){return f_t(this.a,c(t,144),c(n,144))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(ID,"StressMajorization/lambda$0$Type",991),y(1229,1,{},jNe),S(x2,"ElkLayered",1229),y(1230,1,Rt,Q2e),s.td=function(t){ERt(c(t,37))},S(x2,"ElkLayered/lambda$0$Type",1230),y(1231,1,Rt,$Ie),s.td=function(t){h_t(this.a,c(t,37))},S(x2,"ElkLayered/lambda$1$Type",1231),y(1263,1,{},tDe);var Wit,Yit,Xit;S(x2,"GraphConfigurator",1263),y(759,1,Rt,vQ),s.td=function(t){iGe(this.a,c(t,10))},S(x2,"GraphConfigurator/lambda$0$Type",759),y(760,1,{},TJ),s.Kb=function(t){return fce(),new ht(null,new bt(c(t,29).a,16))},S(x2,"GraphConfigurator/lambda$1$Type",760),y(761,1,Rt,yQ),s.td=function(t){iGe(this.a,c(t,10))},S(x2,"GraphConfigurator/lambda$2$Type",761),y(1127,209,rb,CAe),s.Ze=function(t,n){var i;i=l$t(new DAe,t),le(Ke(t,(Oe(),Fw)))===le((Rh(),kd))?qAt(this.a,i,n):FRt(this.a,i,n),VXe(new VMe,i)},S(x2,"LayeredLayoutProvider",1127),y(356,22,{3:1,35:1,22:1,356:1},oC);var Af,B1,Hc,Pc,Io,kde=hn(x2,"LayeredPhases",356,bn,jMt,L_t),Jit;y(1651,1,{},gKe),s.i=0;var Qit;S(MT,"ComponentsToCGraphTransformer",1651);var Zit;y(1652,1,{},Z2e),s.ef=function(t,n){return g.Math.min(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},s.ff=function(t,n){return g.Math.min(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},S(MT,"ComponentsToCGraphTransformer/1",1652),y(81,1,{81:1}),s.i=0,s.k=!0,s.o=$i;var NG=S(F6,"CNode",81);y(460,81,{460:1,81:1},Lee,Noe),s.Ib=function(){return""},S(MT,"ComponentsToCGraphTransformer/CRectNode",460),y(1623,1,{},e3e);var FG,BG;S(MT,"OneDimensionalComponentsCompaction",1623),y(1624,1,{},t3e),s.Kb=function(t){return N6t(c(t,46))},s.Fb=function(t){return this===t},S(MT,"OneDimensionalComponentsCompaction/lambda$0$Type",1624),y(1625,1,{},n3e),s.Kb=function(t){return XAt(c(t,46))},s.Fb=function(t){return this===t},S(MT,"OneDimensionalComponentsCompaction/lambda$1$Type",1625),y(1654,1,{},Mxe),S(F6,"CGraph",1654),y(189,1,{189:1},FK),s.b=0,s.c=0,s.e=0,s.g=!0,s.i=$i,S(F6,"CGroup",189),y(1653,1,{},c3e),s.ef=function(t,n){return g.Math.max(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},s.ff=function(t,n){return g.Math.max(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},S(F6,UJe,1653),y(1655,1,{},rUe),s.d=!1;var ert,$G=S(F6,XJe,1655);y(1656,1,{},s3e),s.Kb=function(t){return EZ(),Pt(),c(c(t,46).a,81).d.e!=0},s.Fb=function(t){return this===t},S(F6,JJe,1656),y(823,1,{},Gte),s.a=!1,s.b=!1,s.c=!1,s.d=!1,S(F6,QJe,823),y(1825,1,{},HRe),S(TD,ZJe,1825);var QT=pi(cb,VJe);y(1826,1,{369:1},yLe),s.Ke=function(t){ONt(this,c(t,466))},S(TD,eQe,1826),y(1827,1,Zn,u3e),s.ue=function(t,n){return O5t(c(t,81),c(n,81))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(TD,tQe,1827),y(466,1,{466:1},NZ),s.a=!1,S(TD,nQe,466),y(1828,1,Zn,a3e),s.ue=function(t,n){return HOt(c(t,466),c(n,466))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(TD,iQe,1828),y(140,1,{140:1},l_,Kte),s.Fb=function(t){var n;return t==null||Mzt!=Fs(t)?!1:(n=c(t,140),wc(this.c,n.c)&&wc(this.d,n.d))},s.Hb=function(){return ZO(U(G(xt,1),xe,1,5,[this.c,this.d]))},s.Ib=function(){return"("+this.c+zr+this.d+(this.a?"cx":"")+this.b+")"},s.a=!0,s.c=0,s.d=0;var Mzt=S(cb,"Point",140);y(405,22,{3:1,35:1,22:1,405:1},P9);var V0,Aw,Pv,Ow,trt=hn(cb,"Point/Quadrant",405,bn,UPt,N_t),nrt;y(1642,1,{},IAe),s.b=null,s.c=null,s.d=null,s.e=null,s.f=null;var irt,rrt,ort,crt,srt;S(cb,"RectilinearConvexHull",1642),y(574,1,{369:1},v7),s.Ke=function(t){ACt(this,c(t,140))},s.b=0;var Rde;S(cb,"RectilinearConvexHull/MaximalElementsEventHandler",574),y(1644,1,Zn,r3e),s.ue=function(t,n){return y5t(Te(t),Te(n))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/MaximalElementsEventHandler/lambda$0$Type",1644),y(1643,1,{369:1},N$e),s.Ke=function(t){zLt(this,c(t,140))},s.a=0,s.b=null,s.c=null,s.d=null,s.e=null,S(cb,"RectilinearConvexHull/RectangleEventHandler",1643),y(1645,1,Zn,o3e),s.ue=function(t,n){return SPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$0$Type",1645),y(1646,1,Zn,i3e),s.ue=function(t,n){return PPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$1$Type",1646),y(1647,1,Zn,l3e),s.ue=function(t,n){return CPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$2$Type",1647),y(1648,1,Zn,f3e),s.ue=function(t,n){return MPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$3$Type",1648),y(1649,1,Zn,h3e),s.ue=function(t,n){return TDt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$4$Type",1649),y(1650,1,{},JLe),S(cb,"Scanline",1650),y(2005,1,{}),S(Sf,"AbstractGraphPlacer",2005),y(325,1,{325:1},HDe),s.mf=function(t){return this.nf(t)?(it(this.b,c(B(t,(ye(),kw)),21),t),!0):!1},s.nf=function(t){var n,i,r,o;for(n=c(B(t,(ye(),kw)),21),o=c(Vn(ei,n),21),r=o.Kc();r.Ob();)if(i=c(r.Pb(),21),!c(Vn(this.b,i),15).dc())return!1;return!0};var ei;S(Sf,"ComponentGroup",325),y(765,2005,{},KQ),s.of=function(t){var n,i;for(i=new q(this.a);i.aL&&(Pe=0,Ae+=D+o,D=0),Y=a.c,v6(a,Pe+Y.a,Ae+Y.b),ol(Y),i=g.Math.max(i,Pe+ne.a),D=g.Math.max(D,ne.b),Pe+=ne.a+o;if(n.f.a=i,n.f.b=Ae+D,Be(Fe(B(u,jR)))){for(r=new pN,Rue(r,t,o),A=t.Kc();A.Ob();)v=c(A.Pb(),37),Wn(ol(v.c),r.e);Wn(ol(n.f),r.a)}Rie(n,t)},S(Sf,"SimpleRowGraphPlacer",1291),y(1292,1,Zn,b3e),s.ue=function(t,n){return CTt(c(t,37),c(n,37))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Sf,"SimpleRowGraphPlacer/1",1292);var art;y(1262,1,yf,p3e),s.Lb=function(t){var n;return n=c(B(c(t,243).b,(Oe(),yo)),74),!!n&&n.b!=0},s.Fb=function(t){return this===t},s.Mb=function(t){var n;return n=c(B(c(t,243).b,(Oe(),yo)),74),!!n&&n.b!=0},S(jD,"CompoundGraphPostprocessor/1",1262),y(1261,1,Ti,kAe),s.pf=function(t,n){Dze(this,c(t,37),n)},S(jD,"CompoundGraphPreprocessor",1261),y(441,1,{441:1},vHe),s.c=!1,S(jD,"CompoundGraphPreprocessor/ExternalPort",441),y(243,1,{243:1},c8),s.Ib=function(){return UF(this.c)+":"+eUe(this.b)},S(jD,"CrossHierarchyEdge",243),y(763,1,Zn,_Q),s.ue=function(t,n){return bOt(this,c(t,243),c(n,243))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(jD,"CrossHierarchyEdgeComparator",763),y(299,134,{3:1,299:1,94:1,134:1}),s.p=0,S(Lc,"LGraphElement",299),y(17,299,{3:1,17:1,299:1,94:1,134:1},c0),s.Ib=function(){return eUe(this)};var qG=S(Lc,"LEdge",17);y(37,299,{3:1,20:1,37:1,299:1,94:1,134:1},nre),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return new q(this.b)},s.Ib=function(){return this.b.c.length==0?"G-unlayered"+C1(this.a):this.a.c.length==0?"G-layered"+C1(this.b):"G[layerless"+C1(this.a)+", layers"+C1(this.b)+"]"};var lrt=S(Lc,"LGraph",37),frt;y(657,1,{}),s.qf=function(){return this.e.n},s.We=function(t){return B(this.e,t)},s.rf=function(){return this.e.o},s.sf=function(){return this.e.p},s.Xe=function(t){return nr(this.e,t)},s.tf=function(t){this.e.n.a=t.a,this.e.n.b=t.b},s.uf=function(t){this.e.o.a=t.a,this.e.o.b=t.b},s.vf=function(t){this.e.p=t},S(Lc,"LGraphAdapters/AbstractLShapeAdapter",657),y(577,1,{839:1},$A),s.wf=function(){var t,n;if(!this.b)for(this.b=Ff(this.a.b.c.length),n=new q(this.a.b);n.a0&&oHe((fn(n-1,t.length),t.charCodeAt(n-1)),MQe);)--n;if(u> ",t),j7(i)),wn(nc((t.a+="[",t),i.i),"]")),t.a},s.c=!0,s.d=!1;var Bde,$de,Kde,qde,Hde,zde,drt=S(Lc,"LPort",11);y(397,1,Yf,J3),s.Jc=function(t){Mr(this,t)},s.Kc=function(){var t;return t=new q(this.a.e),new KIe(t)},S(Lc,"LPort/1",397),y(1290,1,dr,KIe),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(K(this.a),17).c},s.Ob=function(){return Fo(this.a)},s.Qb=function(){I5(this.a)},S(Lc,"LPort/1/1",1290),y(359,1,Yf,Oy),s.Jc=function(t){Mr(this,t)},s.Kc=function(){var t;return t=new q(this.a.g),new EQ(t)},S(Lc,"LPort/2",359),y(762,1,dr,EQ),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(K(this.a),17).d},s.Ob=function(){return Fo(this.a)},s.Qb=function(){I5(this.a)},S(Lc,"LPort/2/1",762),y(1283,1,Yf,yOe),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return new Rl(this)},S(Lc,"LPort/CombineIter",1283),y(201,1,dr,Rl),s.Nb=function(t){Sr(this,t)},s.Qb=function(){z9e()},s.Ob=function(){return p5(this)},s.Pb=function(){return Fo(this.a)?K(this.a):K(this.b)},S(Lc,"LPort/CombineIter/1",201),y(1285,1,yf,m3e),s.Lb=function(t){return txe(t)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).e.c.length!=0},S(Lc,"LPort/lambda$0$Type",1285),y(1284,1,yf,v3e),s.Lb=function(t){return nxe(t)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).g.c.length!=0},S(Lc,"LPort/lambda$1$Type",1284),y(1286,1,yf,y3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),_t)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),_t)},S(Lc,"LPort/lambda$2$Type",1286),y(1287,1,yf,_3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),jt)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),jt)},S(Lc,"LPort/lambda$3$Type",1287),y(1288,1,yf,E3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),Yt)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),Yt)},S(Lc,"LPort/lambda$4$Type",1288),y(1289,1,yf,S3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),Mt)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),Mt)},S(Lc,"LPort/lambda$5$Type",1289),y(29,299,{3:1,20:1,299:1,29:1,94:1,134:1},ta),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return new q(this.a)},s.Ib=function(){return"L_"+Do(this.b.b,this,0)+C1(this.a)},S(Lc,"Layer",29),y(1342,1,{},DAe),S(Sd,jQe,1342),y(1346,1,{},P3e),s.Kb=function(t){return Co(c(t,82))},S(Sd,"ElkGraphImporter/0methodref$connectableShapeToNode$Type",1346),y(1349,1,{},M3e),s.Kb=function(t){return Co(c(t,82))},S(Sd,"ElkGraphImporter/1methodref$connectableShapeToNode$Type",1349),y(1343,1,Rt,qIe),s.td=function(t){gUe(this.a,c(t,118))},S(Sd,AQe,1343),y(1344,1,Rt,HIe),s.td=function(t){gUe(this.a,c(t,118))},S(Sd,OQe,1344),y(1345,1,{},C3e),s.Kb=function(t){return new ht(null,new bt(b5t(c(t,79)),16))},S(Sd,DQe,1345),y(1347,1,Rn,zIe),s.Mb=function(t){return p2t(this.a,c(t,33))},S(Sd,kQe,1347),y(1348,1,{},I3e),s.Kb=function(t){return new ht(null,new bt(p5t(c(t,79)),16))},S(Sd,"ElkGraphImporter/lambda$5$Type",1348),y(1350,1,Rn,VIe),s.Mb=function(t){return w2t(this.a,c(t,33))},S(Sd,"ElkGraphImporter/lambda$7$Type",1350),y(1351,1,Rn,T3e),s.Mb=function(t){return k5t(c(t,79))},S(Sd,"ElkGraphImporter/lambda$8$Type",1351),y(1278,1,{},VMe);var grt;S(Sd,"ElkGraphLayoutTransferrer",1278),y(1279,1,Rn,GIe),s.Mb=function(t){return o_t(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$0$Type",1279),y(1280,1,Rt,UIe),s.td=function(t){tC(),Ee(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$1$Type",1280),y(1281,1,Rn,WIe),s.Mb=function(t){return z3t(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$2$Type",1281),y(1282,1,Rt,YIe),s.td=function(t){tC(),Ee(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$3$Type",1282),y(1485,1,Ti,j3e),s.pf=function(t,n){GIt(c(t,37),n)},S(Ct,"CommentNodeMarginCalculator",1485),y(1486,1,{},A3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"CommentNodeMarginCalculator/lambda$0$Type",1486),y(1487,1,Rt,O3e),s.td=function(t){C$t(c(t,10))},S(Ct,"CommentNodeMarginCalculator/lambda$1$Type",1487),y(1488,1,Ti,D3e),s.pf=function(t,n){BNt(c(t,37),n)},S(Ct,"CommentPostprocessor",1488),y(1489,1,Ti,k3e),s.pf=function(t,n){Gqt(c(t,37),n)},S(Ct,"CommentPreprocessor",1489),y(1490,1,Ti,R3e),s.pf=function(t,n){uLt(c(t,37),n)},S(Ct,"ConstraintsPostprocessor",1490),y(1491,1,Ti,x3e),s.pf=function(t,n){bTt(c(t,37),n)},S(Ct,"EdgeAndLayerConstraintEdgeReverser",1491),y(1492,1,Ti,L3e),s.pf=function(t,n){i9t(c(t,37),n)},S(Ct,"EndLabelPostprocessor",1492),y(1493,1,{},N3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"EndLabelPostprocessor/lambda$0$Type",1493),y(1494,1,Rn,F3e),s.Mb=function(t){return J5t(c(t,10))},S(Ct,"EndLabelPostprocessor/lambda$1$Type",1494),y(1495,1,Rt,B3e),s.td=function(t){zOt(c(t,10))},S(Ct,"EndLabelPostprocessor/lambda$2$Type",1495),y(1496,1,Ti,$3e),s.pf=function(t,n){kkt(c(t,37),n)},S(Ct,"EndLabelPreprocessor",1496),y(1497,1,{},K3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"EndLabelPreprocessor/lambda$0$Type",1497),y(1498,1,Rt,Gke),s.td=function(t){kyt(this.a,this.b,this.c,c(t,10))},s.a=0,s.b=0,s.c=!1,S(Ct,"EndLabelPreprocessor/lambda$1$Type",1498),y(1499,1,Rn,q3e),s.Mb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),O4))},S(Ct,"EndLabelPreprocessor/lambda$2$Type",1499),y(1500,1,Rt,XIe),s.td=function(t){Cn(this.a,c(t,70))},S(Ct,"EndLabelPreprocessor/lambda$3$Type",1500),y(1501,1,Rn,H3e),s.Mb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),Ww))},S(Ct,"EndLabelPreprocessor/lambda$4$Type",1501),y(1502,1,Rt,JIe),s.td=function(t){Cn(this.a,c(t,70))},S(Ct,"EndLabelPreprocessor/lambda$5$Type",1502),y(1551,1,Ti,zMe),s.pf=function(t,n){fAt(c(t,37),n)};var brt;S(Ct,"EndLabelSorter",1551),y(1552,1,Zn,z3e),s.ue=function(t,n){return K9t(c(t,456),c(n,456))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"EndLabelSorter/1",1552),y(456,1,{456:1},hLe),S(Ct,"EndLabelSorter/LabelGroup",456),y(1553,1,{},V3e),s.Kb=function(t){return nC(),new ht(null,new bt(c(t,29).a,16))},S(Ct,"EndLabelSorter/lambda$0$Type",1553),y(1554,1,Rn,G3e),s.Mb=function(t){return nC(),c(t,10).k==(Dt(),Ui)},S(Ct,"EndLabelSorter/lambda$1$Type",1554),y(1555,1,Rt,U3e),s.td=function(t){zDt(c(t,10))},S(Ct,"EndLabelSorter/lambda$2$Type",1555),y(1556,1,Rn,W3e),s.Mb=function(t){return nC(),le(B(c(t,70),(Oe(),Df)))===le((xl(),Ww))},S(Ct,"EndLabelSorter/lambda$3$Type",1556),y(1557,1,Rn,Y3e),s.Mb=function(t){return nC(),le(B(c(t,70),(Oe(),Df)))===le((xl(),O4))},S(Ct,"EndLabelSorter/lambda$4$Type",1557),y(1503,1,Ti,X3e),s.pf=function(t,n){N$t(this,c(t,37))},s.b=0,s.c=0,S(Ct,"FinalSplineBendpointsCalculator",1503),y(1504,1,{},J3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"FinalSplineBendpointsCalculator/lambda$0$Type",1504),y(1505,1,{},Q3e),s.Kb=function(t){return new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ct,"FinalSplineBendpointsCalculator/lambda$1$Type",1505),y(1506,1,Rn,Z3e),s.Mb=function(t){return!Kr(c(t,17))},S(Ct,"FinalSplineBendpointsCalculator/lambda$2$Type",1506),y(1507,1,Rn,e_e),s.Mb=function(t){return nr(c(t,17),(ye(),bb))},S(Ct,"FinalSplineBendpointsCalculator/lambda$3$Type",1507),y(1508,1,Rt,QIe),s.td=function(t){XFt(this.a,c(t,128))},S(Ct,"FinalSplineBendpointsCalculator/lambda$4$Type",1508),y(1509,1,Rt,t_e),s.td=function(t){Mq(c(t,17).a)},S(Ct,"FinalSplineBendpointsCalculator/lambda$5$Type",1509),y(792,1,Ti,SQ),s.pf=function(t,n){AKt(this,c(t,37),n)},S(Ct,"GraphTransformer",792),y(511,22,{3:1,35:1,22:1,511:1},LZ);var zG,ZT,prt=hn(Ct,"GraphTransformer/Mode",511,bn,v6t,JEt),wrt;y(1510,1,Ti,n_e),s.pf=function(t,n){cNt(c(t,37),n)},S(Ct,"HierarchicalNodeResizingProcessor",1510),y(1511,1,Ti,i_e),s.pf=function(t,n){KIt(c(t,37),n)},S(Ct,"HierarchicalPortConstraintProcessor",1511),y(1512,1,Zn,r_e),s.ue=function(t,n){return Q9t(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"HierarchicalPortConstraintProcessor/NodeComparator",1512),y(1513,1,Ti,o_e),s.pf=function(t,n){s$t(c(t,37),n)},S(Ct,"HierarchicalPortDummySizeProcessor",1513),y(1514,1,Ti,c_e),s.pf=function(t,n){rFt(this,c(t,37),n)},s.a=0,S(Ct,"HierarchicalPortOrthogonalEdgeRouter",1514),y(1515,1,Zn,s_e),s.ue=function(t,n){return a3t(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"HierarchicalPortOrthogonalEdgeRouter/1",1515),y(1516,1,Zn,u_e),s.ue=function(t,n){return SCt(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"HierarchicalPortOrthogonalEdgeRouter/2",1516),y(1517,1,Ti,a_e),s.pf=function(t,n){jDt(c(t,37),n)},S(Ct,"HierarchicalPortPositionProcessor",1517),y(1518,1,Ti,GMe),s.pf=function(t,n){PHt(this,c(t,37))},s.a=0,s.c=0;var zk,Vk;S(Ct,"HighDegreeNodeLayeringProcessor",1518),y(571,1,{571:1},l_e),s.b=-1,s.d=-1,S(Ct,"HighDegreeNodeLayeringProcessor/HighDegreeNodeInformation",571),y(1519,1,{},f_e),s.Kb=function(t){return TC(),ko(c(t,10))},s.Fb=function(t){return this===t},S(Ct,"HighDegreeNodeLayeringProcessor/lambda$0$Type",1519),y(1520,1,{},h_e),s.Kb=function(t){return TC(),Vi(c(t,10))},s.Fb=function(t){return this===t},S(Ct,"HighDegreeNodeLayeringProcessor/lambda$1$Type",1520),y(1526,1,Ti,d_e),s.pf=function(t,n){xBt(this,c(t,37),n)},S(Ct,"HyperedgeDummyMerger",1526),y(793,1,{},Cte),s.a=!1,s.b=!1,s.c=!1,S(Ct,"HyperedgeDummyMerger/MergeState",793),y(1527,1,{},g_e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"HyperedgeDummyMerger/lambda$0$Type",1527),y(1528,1,{},b_e),s.Kb=function(t){return new ht(null,new bt(c(t,10).j,16))},S(Ct,"HyperedgeDummyMerger/lambda$1$Type",1528),y(1529,1,Rt,p_e),s.td=function(t){c(t,11).p=-1},S(Ct,"HyperedgeDummyMerger/lambda$2$Type",1529),y(1530,1,Ti,w_e),s.pf=function(t,n){kBt(c(t,37),n)},S(Ct,"HypernodesProcessor",1530),y(1531,1,Ti,m_e),s.pf=function(t,n){RBt(c(t,37),n)},S(Ct,"InLayerConstraintProcessor",1531),y(1532,1,Ti,v_e),s.pf=function(t,n){lTt(c(t,37),n)},S(Ct,"InnermostNodeMarginCalculator",1532),y(1533,1,Ti,y_e),s.pf=function(t,n){Kqt(this,c(t,37))},s.a=$i,s.b=$i,s.c=Ii,s.d=Ii;var Czt=S(Ct,"InteractiveExternalPortPositioner",1533);y(1534,1,{},__e),s.Kb=function(t){return c(t,17).d.i},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$0$Type",1534),y(1535,1,{},ZIe),s.Kb=function(t){return h3t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$1$Type",1535),y(1536,1,{},E_e),s.Kb=function(t){return c(t,17).c.i},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$2$Type",1536),y(1537,1,{},eTe),s.Kb=function(t){return d3t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$3$Type",1537),y(1538,1,{},tTe),s.Kb=function(t){return n_t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$4$Type",1538),y(1539,1,{},nTe),s.Kb=function(t){return i_t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$5$Type",1539),y(77,22,{3:1,35:1,22:1,77:1,234:1},Li),s.Kf=function(){switch(this.g){case 15:return new H4e;case 22:return new z4e;case 47:return new U4e;case 28:case 35:return new k_e;case 32:return new j3e;case 42:return new D3e;case 1:return new k3e;case 41:return new R3e;case 56:return new SQ((G_(),ZT));case 0:return new SQ((G_(),zG));case 2:return new x3e;case 54:return new L3e;case 33:return new $3e;case 51:return new X3e;case 55:return new n_e;case 13:return new i_e;case 38:return new o_e;case 44:return new c_e;case 40:return new a_e;case 9:return new GMe;case 49:return new DDe;case 37:return new d_e;case 43:return new w_e;case 27:return new m_e;case 30:return new v_e;case 3:return new y_e;case 18:return new P_e;case 29:return new M_e;case 5:return new UMe;case 50:return new S_e;case 34:return new WMe;case 36:return new R_e;case 52:return new zMe;case 11:return new L_e;case 7:return new XMe;case 39:return new N_e;case 45:return new F_e;case 16:return new B_e;case 10:return new $_e;case 48:return new q_e;case 21:return new H_e;case 23:return new VN((w0(),kP));case 8:return new V_e;case 12:return new U_e;case 4:return new W_e;case 19:return new eCe;case 17:return new rEe;case 53:return new oEe;case 6:return new wEe;case 25:return new LAe;case 46:return new lEe;case 31:return new pke;case 14:return new MEe;case 26:return new X4e;case 20:return new AEe;case 24:return new VN((w0(),YR));default:throw V(new St(Mz+(this.f!=null?this.f:""+this.g)))}};var Vde,Gde,Ude,Wde,Yde,Xde,Jde,Qde,Zde,e1e,hP,Gk,Uk,t1e,n1e,i1e,r1e,o1e,c1e,s1e,dP,u1e,a1e,l1e,f1e,h1e,VG,Wk,Yk,d1e,Xk,Jk,Qk,o4,c4,s4,g1e,Zk,eR,b1e,tR,nR,p1e,w1e,m1e,v1e,iR,GG,ej,rR,oR,cR,sR,y1e,_1e,E1e,S1e,Izt=hn(Ct,Mae,77,bn,cWe,XEt),mrt;y(1540,1,Ti,P_e),s.pf=function(t,n){Hqt(c(t,37),n)},S(Ct,"InvertedPortProcessor",1540),y(1541,1,Ti,M_e),s.pf=function(t,n){HFt(c(t,37),n)},S(Ct,"LabelAndNodeSizeProcessor",1541),y(1542,1,Rn,C_e),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"LabelAndNodeSizeProcessor/lambda$0$Type",1542),y(1543,1,Rn,I_e),s.Mb=function(t){return c(t,10).k==(Dt(),Bi)},S(Ct,"LabelAndNodeSizeProcessor/lambda$1$Type",1543),y(1544,1,Rt,Uke),s.td=function(t){Ryt(this.b,this.a,this.c,c(t,10))},s.a=!1,s.c=!1,S(Ct,"LabelAndNodeSizeProcessor/lambda$2$Type",1544),y(1545,1,Ti,UMe),s.pf=function(t,n){dqt(c(t,37),n)};var vrt;S(Ct,"LabelDummyInserter",1545),y(1546,1,yf,T_e),s.Lb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),A4))},s.Fb=function(t){return this===t},s.Mb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),A4))},S(Ct,"LabelDummyInserter/1",1546),y(1547,1,Ti,S_e),s.pf=function(t,n){bKt(c(t,37),n)},S(Ct,"LabelDummyRemover",1547),y(1548,1,Rn,j_e),s.Mb=function(t){return Be(Fe(B(c(t,70),(Oe(),RU))))},S(Ct,"LabelDummyRemover/lambda$0$Type",1548),y(1359,1,Ti,WMe),s.pf=function(t,n){zKt(this,c(t,37),n)},s.a=null;var UG;S(Ct,"LabelDummySwitcher",1359),y(286,1,{286:1},rYe),s.c=0,s.d=null,s.f=0,S(Ct,"LabelDummySwitcher/LabelDummyInfo",286),y(1360,1,{},A_e),s.Kb=function(t){return h2(),new ht(null,new bt(c(t,29).a,16))},S(Ct,"LabelDummySwitcher/lambda$0$Type",1360),y(1361,1,Rn,O_e),s.Mb=function(t){return h2(),c(t,10).k==(Dt(),cu)},S(Ct,"LabelDummySwitcher/lambda$1$Type",1361),y(1362,1,{},oTe),s.Kb=function(t){return V3t(this.a,c(t,10))},S(Ct,"LabelDummySwitcher/lambda$2$Type",1362),y(1363,1,Rt,cTe),s.td=function(t){zSt(this.a,c(t,286))},S(Ct,"LabelDummySwitcher/lambda$3$Type",1363),y(1364,1,Zn,D_e),s.ue=function(t,n){return mSt(c(t,286),c(n,286))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"LabelDummySwitcher/lambda$4$Type",1364),y(791,1,Ti,k_e),s.pf=function(t,n){tCt(c(t,37),n)},S(Ct,"LabelManagementProcessor",791),y(1549,1,Ti,R_e),s.pf=function(t,n){CNt(c(t,37),n)},S(Ct,"LabelSideSelector",1549),y(1550,1,Rn,x_e),s.Mb=function(t){return Be(Fe(B(c(t,70),(Oe(),RU))))},S(Ct,"LabelSideSelector/lambda$0$Type",1550),y(1558,1,Ti,L_e),s.pf=function(t,n){u$t(c(t,37),n)},S(Ct,"LayerConstraintPostprocessor",1558),y(1559,1,Ti,XMe),s.pf=function(t,n){Ext(c(t,37),n)};var P1e;S(Ct,"LayerConstraintPreprocessor",1559),y(360,22,{3:1,35:1,22:1,360:1},M9);var tj,uR,aR,WG,yrt=hn(Ct,"LayerConstraintPreprocessor/HiddenNodeConnections",360,bn,WPt,K_t),_rt;y(1560,1,Ti,N_e),s.pf=function(t,n){hKt(c(t,37),n)},S(Ct,"LayerSizeAndGraphHeightCalculator",1560),y(1561,1,Ti,F_e),s.pf=function(t,n){bLt(c(t,37),n)},S(Ct,"LongEdgeJoiner",1561),y(1562,1,Ti,B_e),s.pf=function(t,n){U$t(c(t,37),n)},S(Ct,"LongEdgeSplitter",1562),y(1563,1,Ti,$_e),s.pf=function(t,n){UKt(this,c(t,37),n)},s.d=0,s.e=0,s.i=0,s.j=0,s.k=0,s.n=0,S(Ct,"NodePromotion",1563),y(1564,1,{},K_e),s.Kb=function(t){return c(t,46),Pt(),!0},s.Fb=function(t){return this===t},S(Ct,"NodePromotion/lambda$0$Type",1564),y(1565,1,{},iTe),s.Kb=function(t){return f5t(this.a,c(t,46))},s.Fb=function(t){return this===t},s.a=0,S(Ct,"NodePromotion/lambda$1$Type",1565),y(1566,1,{},rTe),s.Kb=function(t){return h5t(this.a,c(t,46))},s.Fb=function(t){return this===t},s.a=0,S(Ct,"NodePromotion/lambda$2$Type",1566),y(1567,1,Ti,q_e),s.pf=function(t,n){wHt(c(t,37),n)},S(Ct,"NorthSouthPortPostprocessor",1567),y(1568,1,Ti,H_e),s.pf=function(t,n){nHt(c(t,37),n)},S(Ct,"NorthSouthPortPreprocessor",1568),y(1569,1,Zn,z_e),s.ue=function(t,n){return OTt(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"NorthSouthPortPreprocessor/lambda$0$Type",1569),y(1570,1,Ti,V_e),s.pf=function(t,n){vBt(c(t,37),n)},S(Ct,"PartitionMidprocessor",1570),y(1571,1,Rn,G_e),s.Mb=function(t){return nr(c(t,10),(Oe(),y4))},S(Ct,"PartitionMidprocessor/lambda$0$Type",1571),y(1572,1,Rt,sTe),s.td=function(t){R5t(this.a,c(t,10))},S(Ct,"PartitionMidprocessor/lambda$1$Type",1572),y(1573,1,Ti,U_e),s.pf=function(t,n){xLt(c(t,37),n)},S(Ct,"PartitionPostprocessor",1573),y(1574,1,Ti,W_e),s.pf=function(t,n){VRt(c(t,37),n)},S(Ct,"PartitionPreprocessor",1574),y(1575,1,Rn,Y_e),s.Mb=function(t){return nr(c(t,10),(Oe(),y4))},S(Ct,"PartitionPreprocessor/lambda$0$Type",1575),y(1576,1,{},X_e),s.Kb=function(t){return new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ct,"PartitionPreprocessor/lambda$1$Type",1576),y(1577,1,Rn,J_e),s.Mb=function(t){return F9t(c(t,17))},S(Ct,"PartitionPreprocessor/lambda$2$Type",1577),y(1578,1,Rt,Q_e),s.td=function(t){KTt(c(t,17))},S(Ct,"PartitionPreprocessor/lambda$3$Type",1578),y(1579,1,Ti,eCe),s.pf=function(t,n){iBt(c(t,37),n)};var M1e,Ert,Srt,Prt,C1e,I1e;S(Ct,"PortListSorter",1579),y(1580,1,{},Z_e),s.Kb=function(t){return iE(),c(t,11).e},S(Ct,"PortListSorter/lambda$0$Type",1580),y(1581,1,{},eEe),s.Kb=function(t){return iE(),c(t,11).g},S(Ct,"PortListSorter/lambda$1$Type",1581),y(1582,1,Zn,tEe),s.ue=function(t,n){return mFe(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"PortListSorter/lambda$2$Type",1582),y(1583,1,Zn,nEe),s.ue=function(t,n){return uOt(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"PortListSorter/lambda$3$Type",1583),y(1584,1,Zn,iEe),s.ue=function(t,n){return IYe(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"PortListSorter/lambda$4$Type",1584),y(1585,1,Ti,rEe),s.pf=function(t,n){pxt(c(t,37),n)},S(Ct,"PortSideProcessor",1585),y(1586,1,Ti,oEe),s.pf=function(t,n){wFt(c(t,37),n)},S(Ct,"ReversedEdgeRestorer",1586),y(1591,1,Ti,LAe),s.pf=function(t,n){G8t(this,c(t,37),n)},S(Ct,"SelfLoopPortRestorer",1591),y(1592,1,{},cEe),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"SelfLoopPortRestorer/lambda$0$Type",1592),y(1593,1,Rn,sEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SelfLoopPortRestorer/lambda$1$Type",1593),y(1594,1,Rn,uEe),s.Mb=function(t){return nr(c(t,10),(ye(),w4))},S(Ct,"SelfLoopPortRestorer/lambda$2$Type",1594),y(1595,1,{},aEe),s.Kb=function(t){return c(B(c(t,10),(ye(),w4)),403)},S(Ct,"SelfLoopPortRestorer/lambda$3$Type",1595),y(1596,1,Rt,uTe),s.td=function(t){tkt(this.a,c(t,403))},S(Ct,"SelfLoopPortRestorer/lambda$4$Type",1596),y(794,1,Rt,AJ),s.td=function(t){pkt(c(t,101))},S(Ct,"SelfLoopPortRestorer/lambda$5$Type",794),y(1597,1,Ti,lEe),s.pf=function(t,n){t8t(c(t,37),n)},S(Ct,"SelfLoopPostProcessor",1597),y(1598,1,{},fEe),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"SelfLoopPostProcessor/lambda$0$Type",1598),y(1599,1,Rn,hEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SelfLoopPostProcessor/lambda$1$Type",1599),y(1600,1,Rn,dEe),s.Mb=function(t){return nr(c(t,10),(ye(),w4))},S(Ct,"SelfLoopPostProcessor/lambda$2$Type",1600),y(1601,1,Rt,gEe),s.td=function(t){u7t(c(t,10))},S(Ct,"SelfLoopPostProcessor/lambda$3$Type",1601),y(1602,1,{},bEe),s.Kb=function(t){return new ht(null,new bt(c(t,101).f,1))},S(Ct,"SelfLoopPostProcessor/lambda$4$Type",1602),y(1603,1,Rt,aTe),s.td=function(t){JPt(this.a,c(t,409))},S(Ct,"SelfLoopPostProcessor/lambda$5$Type",1603),y(1604,1,Rn,pEe),s.Mb=function(t){return!!c(t,101).i},S(Ct,"SelfLoopPostProcessor/lambda$6$Type",1604),y(1605,1,Rt,lTe),s.td=function(t){xvt(this.a,c(t,101))},S(Ct,"SelfLoopPostProcessor/lambda$7$Type",1605),y(1587,1,Ti,wEe),s.pf=function(t,n){Wxt(c(t,37),n)},S(Ct,"SelfLoopPreProcessor",1587),y(1588,1,{},mEe),s.Kb=function(t){return new ht(null,new bt(c(t,101).f,1))},S(Ct,"SelfLoopPreProcessor/lambda$0$Type",1588),y(1589,1,{},vEe),s.Kb=function(t){return c(t,409).a},S(Ct,"SelfLoopPreProcessor/lambda$1$Type",1589),y(1590,1,Rt,yEe),s.td=function(t){$2t(c(t,17))},S(Ct,"SelfLoopPreProcessor/lambda$2$Type",1590),y(1606,1,Ti,pke),s.pf=function(t,n){VDt(this,c(t,37),n)},S(Ct,"SelfLoopRouter",1606),y(1607,1,{},_Ee),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"SelfLoopRouter/lambda$0$Type",1607),y(1608,1,Rn,EEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SelfLoopRouter/lambda$1$Type",1608),y(1609,1,Rn,SEe),s.Mb=function(t){return nr(c(t,10),(ye(),w4))},S(Ct,"SelfLoopRouter/lambda$2$Type",1609),y(1610,1,{},PEe),s.Kb=function(t){return c(B(c(t,10),(ye(),w4)),403)},S(Ct,"SelfLoopRouter/lambda$3$Type",1610),y(1611,1,Rt,hOe),s.td=function(t){M5t(this.a,this.b,c(t,403))},S(Ct,"SelfLoopRouter/lambda$4$Type",1611),y(1612,1,Ti,MEe),s.pf=function(t,n){gNt(c(t,37),n)},S(Ct,"SemiInteractiveCrossMinProcessor",1612),y(1613,1,Rn,CEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$0$Type",1613),y(1614,1,Rn,IEe),s.Mb=function(t){return DRe(c(t,10))._b((Oe(),qw))},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$1$Type",1614),y(1615,1,Zn,TEe),s.ue=function(t,n){return HIt(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$2$Type",1615),y(1616,1,{},jEe),s.Ce=function(t,n){return q5t(c(t,10),c(n,10))},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$3$Type",1616),y(1618,1,Ti,AEe),s.pf=function(t,n){a$t(c(t,37),n)},S(Ct,"SortByInputModelProcessor",1618),y(1619,1,Rn,OEe),s.Mb=function(t){return c(t,11).g.c.length!=0},S(Ct,"SortByInputModelProcessor/lambda$0$Type",1619),y(1620,1,Rt,fTe),s.td=function(t){_kt(this.a,c(t,11))},S(Ct,"SortByInputModelProcessor/lambda$1$Type",1620),y(1693,803,{},IKe),s.Me=function(t){var n,i,r,o;switch(this.c=t,this.a.g){case 2:n=new Se,Di(si(new ht(null,new bt(this.c.a.b,16)),new VEe),new wOe(this,n)),zI(this,new REe),Zc(n,new xEe),n.c=oe(xt,xe,1,0,5,1),Di(si(new ht(null,new bt(this.c.a.b,16)),new LEe),new dTe(n)),zI(this,new NEe),Zc(n,new FEe),n.c=oe(xt,xe,1,0,5,1),i=X7e($Ke(x8(new ht(null,new bt(this.c.a.b,16)),new gTe(this))),new BEe),Di(new ht(null,new bt(this.c.a.a,16)),new gOe(i,n)),zI(this,new KEe),Zc(n,new DEe),n.c=oe(xt,xe,1,0,5,1);break;case 3:r=new Se,zI(this,new kEe),o=X7e($Ke(x8(new ht(null,new bt(this.c.a.b,16)),new hTe(this))),new $Ee),Di(si(new ht(null,new bt(this.c.a.b,16)),new qEe),new pOe(o,r)),zI(this,new HEe),Zc(r,new zEe),r.c=oe(xt,xe,1,0,5,1);break;default:throw V(new _Ae)}},s.b=0,S(Ki,"EdgeAwareScanlineConstraintCalculation",1693),y(1694,1,yf,kEe),s.Lb=function(t){return Q(c(t,57).g,145)},s.Fb=function(t){return this===t},s.Mb=function(t){return Q(c(t,57).g,145)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$0$Type",1694),y(1695,1,{},hTe),s.Fe=function(t){return eRt(this.a,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$1$Type",1695),y(1703,1,bD,dOe),s.Vd=function(){a6(this.a,this.b,-1)},s.b=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$10$Type",1703),y(1705,1,yf,REe),s.Lb=function(t){return Q(c(t,57).g,145)},s.Fb=function(t){return this===t},s.Mb=function(t){return Q(c(t,57).g,145)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$11$Type",1705),y(1706,1,Rt,xEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$12$Type",1706),y(1707,1,Rn,LEe),s.Mb=function(t){return Q(c(t,57).g,10)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$13$Type",1707),y(1709,1,Rt,dTe),s.td=function(t){IAt(this.a,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$14$Type",1709),y(1708,1,bD,_Oe),s.Vd=function(){a6(this.b,this.a,-1)},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$15$Type",1708),y(1710,1,yf,NEe),s.Lb=function(t){return Q(c(t,57).g,10)},s.Fb=function(t){return this===t},s.Mb=function(t){return Q(c(t,57).g,10)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$16$Type",1710),y(1711,1,Rt,FEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$17$Type",1711),y(1712,1,{},gTe),s.Fe=function(t){return tRt(this.a,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$18$Type",1712),y(1713,1,{},BEe),s.De=function(){return 0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$19$Type",1713),y(1696,1,{},$Ee),s.De=function(){return 0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$2$Type",1696),y(1715,1,Rt,gOe),s.td=function(t){uSt(this.a,this.b,c(t,307))},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$20$Type",1715),y(1714,1,bD,bOe),s.Vd=function(){NUe(this.a,this.b,-1)},s.b=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$21$Type",1714),y(1716,1,yf,KEe),s.Lb=function(t){return c(t,57),!0},s.Fb=function(t){return this===t},s.Mb=function(t){return c(t,57),!0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$22$Type",1716),y(1717,1,Rt,DEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$23$Type",1717),y(1697,1,Rn,qEe),s.Mb=function(t){return Q(c(t,57).g,10)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$3$Type",1697),y(1699,1,Rt,pOe),s.td=function(t){aSt(this.a,this.b,c(t,57))},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$4$Type",1699),y(1698,1,bD,EOe),s.Vd=function(){a6(this.b,this.a,-1)},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$5$Type",1698),y(1700,1,yf,HEe),s.Lb=function(t){return c(t,57),!0},s.Fb=function(t){return this===t},s.Mb=function(t){return c(t,57),!0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$6$Type",1700),y(1701,1,Rt,zEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$7$Type",1701),y(1702,1,Rn,VEe),s.Mb=function(t){return Q(c(t,57).g,145)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$8$Type",1702),y(1704,1,Rt,wOe),s.td=function(t){cIt(this.a,this.b,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$9$Type",1704),y(1521,1,Ti,DDe),s.pf=function(t,n){eKt(this,c(t,37),n)};var Mrt;S(Ki,"HorizontalGraphCompactor",1521),y(1522,1,{},bTe),s.Oe=function(t,n){var i,r,o;return Hie(t,n)||(i=Nm(t),r=Nm(n),i&&i.k==(Dt(),Bi)||r&&r.k==(Dt(),Bi))?0:(o=c(B(this.a.a,(ye(),Rv)),304),g3t(o,i?i.k:(Dt(),ur),r?r.k:(Dt(),ur)))},s.Pe=function(t,n){var i,r,o;return Hie(t,n)?1:(i=Nm(t),r=Nm(n),o=c(B(this.a.a,(ye(),Rv)),304),Fee(o,i?i.k:(Dt(),ur),r?r.k:(Dt(),ur)))},S(Ki,"HorizontalGraphCompactor/1",1522),y(1523,1,{},GEe),s.Ne=function(t,n){return HS(),t.a.i==0},S(Ki,"HorizontalGraphCompactor/lambda$0$Type",1523),y(1524,1,{},pTe),s.Ne=function(t,n){return F5t(this.a,t,n)},S(Ki,"HorizontalGraphCompactor/lambda$1$Type",1524),y(1664,1,{},h$e);var Crt,Irt;S(Ki,"LGraphToCGraphTransformer",1664),y(1672,1,Rn,UEe),s.Mb=function(t){return t!=null},S(Ki,"LGraphToCGraphTransformer/0methodref$nonNull$Type",1672),y(1665,1,{},WEe),s.Kb=function(t){return ka(),Ro(B(c(c(t,57).g,10),(ye(),Hn)))},S(Ki,"LGraphToCGraphTransformer/lambda$0$Type",1665),y(1666,1,{},YEe),s.Kb=function(t){return ka(),bHe(c(c(t,57).g,145))},S(Ki,"LGraphToCGraphTransformer/lambda$1$Type",1666),y(1675,1,Rn,XEe),s.Mb=function(t){return ka(),Q(c(t,57).g,10)},S(Ki,"LGraphToCGraphTransformer/lambda$10$Type",1675),y(1676,1,Rt,JEe),s.td=function(t){N5t(c(t,57))},S(Ki,"LGraphToCGraphTransformer/lambda$11$Type",1676),y(1677,1,Rn,QEe),s.Mb=function(t){return ka(),Q(c(t,57).g,145)},S(Ki,"LGraphToCGraphTransformer/lambda$12$Type",1677),y(1681,1,Rt,ZEe),s.td=function(t){qjt(c(t,57))},S(Ki,"LGraphToCGraphTransformer/lambda$13$Type",1681),y(1678,1,Rt,wTe),s.td=function(t){h2t(this.a,c(t,8))},s.a=0,S(Ki,"LGraphToCGraphTransformer/lambda$14$Type",1678),y(1679,1,Rt,mTe),s.td=function(t){g2t(this.a,c(t,110))},s.a=0,S(Ki,"LGraphToCGraphTransformer/lambda$15$Type",1679),y(1680,1,Rt,vTe),s.td=function(t){d2t(this.a,c(t,8))},s.a=0,S(Ki,"LGraphToCGraphTransformer/lambda$16$Type",1680),y(1682,1,{},e4e),s.Kb=function(t){return ka(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ki,"LGraphToCGraphTransformer/lambda$17$Type",1682),y(1683,1,Rn,t4e),s.Mb=function(t){return ka(),Kr(c(t,17))},S(Ki,"LGraphToCGraphTransformer/lambda$18$Type",1683),y(1684,1,Rt,yTe),s.td=function(t){WCt(this.a,c(t,17))},S(Ki,"LGraphToCGraphTransformer/lambda$19$Type",1684),y(1668,1,Rt,_Te),s.td=function(t){TPt(this.a,c(t,145))},S(Ki,"LGraphToCGraphTransformer/lambda$2$Type",1668),y(1685,1,{},n4e),s.Kb=function(t){return ka(),new ht(null,new bt(c(t,29).a,16))},S(Ki,"LGraphToCGraphTransformer/lambda$20$Type",1685),y(1686,1,{},i4e),s.Kb=function(t){return ka(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ki,"LGraphToCGraphTransformer/lambda$21$Type",1686),y(1687,1,{},r4e),s.Kb=function(t){return ka(),c(B(c(t,17),(ye(),bb)),15)},S(Ki,"LGraphToCGraphTransformer/lambda$22$Type",1687),y(1688,1,Rn,o4e),s.Mb=function(t){return p3t(c(t,15))},S(Ki,"LGraphToCGraphTransformer/lambda$23$Type",1688),y(1689,1,Rt,ETe),s.td=function(t){Vkt(this.a,c(t,15))},S(Ki,"LGraphToCGraphTransformer/lambda$24$Type",1689),y(1667,1,Rt,mOe),s.td=function(t){bMt(this.a,this.b,c(t,145))},S(Ki,"LGraphToCGraphTransformer/lambda$3$Type",1667),y(1669,1,{},c4e),s.Kb=function(t){return ka(),new ht(null,new bt(c(t,29).a,16))},S(Ki,"LGraphToCGraphTransformer/lambda$4$Type",1669),y(1670,1,{},s4e),s.Kb=function(t){return ka(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ki,"LGraphToCGraphTransformer/lambda$5$Type",1670),y(1671,1,{},u4e),s.Kb=function(t){return ka(),c(B(c(t,17),(ye(),bb)),15)},S(Ki,"LGraphToCGraphTransformer/lambda$6$Type",1671),y(1673,1,Rt,STe),s.td=function(t){SRt(this.a,c(t,15))},S(Ki,"LGraphToCGraphTransformer/lambda$8$Type",1673),y(1674,1,Rt,vOe),s.td=function(t){L2t(this.a,this.b,c(t,145))},S(Ki,"LGraphToCGraphTransformer/lambda$9$Type",1674),y(1663,1,{},a4e),s.Le=function(t){var n,i,r,o,u;for(this.a=t,this.d=new RN,this.c=oe(sde,xe,121,this.a.a.a.c.length,0,1),this.b=0,i=new q(this.a.a.a);i.a=z&&(Ee(u,Ce(v)),ne=g.Math.max(ne,ue[v-1]-A),l+=N,Y+=ue[v-1]-Y,A=ue[v-1],N=d[v]),N=g.Math.max(N,d[v]),++v;l+=N}L=g.Math.min(1/ne,1/n.b/l),L>r&&(r=L,i=u)}return i},s.Wf=function(){return!1},S(Pf,"MSDCutIndexHeuristic",802),y(1617,1,Ti,X4e),s.pf=function(t,n){t$t(c(t,37),n)},S(Pf,"SingleEdgeGraphWrapper",1617),y(227,22,{3:1,35:1,22:1,227:1},XS);var Iv,l4,f4,Dw,gP,Tv,h4=hn(lc,"CenterEdgeLabelPlacementStrategy",227,bn,hCt,z_t),Brt;y(422,22,{3:1,35:1,22:1,422:1},FZ);var j1e,oU,A1e=hn(lc,"ConstraintCalculationStrategy",422,bn,n6t,V_t),$rt;y(314,22,{3:1,35:1,22:1,314:1,246:1,234:1},fF),s.Kf=function(){return WGe(this)},s.Xf=function(){return WGe(this)};var nj,H2,O1e,D1e=hn(lc,"CrossingMinimizationStrategy",314,bn,W6t,G_t),Krt;y(337,22,{3:1,35:1,22:1,337:1},hF);var k1e,cU,bR,R1e=hn(lc,"CuttingStrategy",337,bn,Y6t,Y_t),qrt;y(335,22,{3:1,35:1,22:1,335:1,246:1,234:1},sC),s.Kf=function(){return RUe(this)},s.Xf=function(){return RUe(this)};var x1e,sU,bP,uU,pP,L1e=hn(lc,"CycleBreakingStrategy",335,bn,FMt,X_t),Hrt;y(419,22,{3:1,35:1,22:1,419:1},BZ);var pR,N1e,F1e=hn(lc,"DirectionCongruency",419,bn,t6t,J_t),zrt;y(450,22,{3:1,35:1,22:1,450:1},dF);var d4,aU,jv,Vrt=hn(lc,"EdgeConstraint",450,bn,X6t,Q_t),Grt;y(276,22,{3:1,35:1,22:1,276:1},JS);var lU,fU,hU,dU,wR,gU,B1e=hn(lc,"EdgeLabelSideSelection",276,bn,pCt,Z_t),Urt;y(479,22,{3:1,35:1,22:1,479:1},$Z);var mR,$1e,K1e=hn(lc,"EdgeStraighteningStrategy",479,bn,e6t,eEt),Wrt;y(274,22,{3:1,35:1,22:1,274:1},QS);var bU,q1e,H1e,vR,z1e,V1e,G1e=hn(lc,"FixedAlignment",274,bn,gCt,tEt),Yrt;y(275,22,{3:1,35:1,22:1,275:1},ZS);var U1e,W1e,Y1e,X1e,wP,J1e,Q1e=hn(lc,"GraphCompactionStrategy",275,bn,dCt,nEt),Xrt;y(256,22,{3:1,35:1,22:1,256:1},Op);var g4,yR,b4,Gu,mP,_R,p4,Av,ER,vP,pU=hn(lc,"GraphProperties",256,bn,tTt,iEt),Jrt;y(292,22,{3:1,35:1,22:1,292:1},gF);var ij,wU,mU,vU=hn(lc,"GreedySwitchType",292,bn,Z6t,rEt),Qrt;y(303,22,{3:1,35:1,22:1,303:1},bF);var z2,rj,Ov,Zrt=hn(lc,"InLayerConstraint",303,bn,Q6t,oEt),eot;y(420,22,{3:1,35:1,22:1,420:1},KZ);var yU,Z1e,ege=hn(lc,"InteractiveReferencePoint",420,bn,i6t,cEt),tot,tge,V2,W0,SR,nge,ige,PR,rge,oj,MR,yP,G2,kw,_U,CR,Zo,oge,Y0,Cc,EU,SU,cj,gb,X0,U2,cge,W2,sj,Rw,wl,da,PU,Dv,hc,Hn,sge,uge,age,lge,fge,MU,IR,As,J0,CU,Y2,uj,Ul,kv,w4,Rv,xv,m4,bb,hge,IU,TU,X2;y(163,22,{3:1,35:1,22:1,163:1},aC);var _P,K1,EP,xw,aj,dge=hn(lc,"LayerConstraint",163,bn,KMt,sEt),not;y(848,1,ca,rCe),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Cae),""),"Direction Congruency"),"Specifies how drawings of the same graph with different layout directions compare to each other: either a natural reading direction is preserved or the drawings are rotated versions of each other."),Sge),(yd(),Ai)),F1e),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Iae),""),"Feedback Edges"),"Whether feedback edges should be highlighted by routing around the nodes."),(Pt(),!1)),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,AD),""),"Interactive Reference Point"),"Determines which point of a node is considered by interactive layout phases."),jge),Ai),ege),nt(Tt)))),pr(t,AD,Tz,Uot),pr(t,AD,K6,Got),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Tae),""),"Merge Edges"),"Edges that have no ports are merged so they touch the connected nodes at the same points. When this option is disabled, one port is created for each edge directly connected to a node. When it is enabled, all such incoming edges share an input port, and all outgoing edges share an output port."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jae),""),"Merge Hierarchy-Crossing Edges"),"If hierarchical layout is active, hierarchy-crossing edges use as few hierarchical ports as possible. They are broken by the algorithm, with hierarchical ports inserted as required. Usually, one such port is created for each edge at each hierarchy crossing point. With this option set to true, we try to create as few hierarchical ports as possible in the process. In particular, all edges that form a hyperedge can share a port."),!0),Dr),Qi),nt(Tt)))),Ze(t,new ze(dyt(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Aae),""),"Allow Non-Flow Ports To Switch Sides"),"Specifies whether non-flow ports may switch sides if their node's port constraints are either FIXED_SIDE or FIXED_ORDER. A non-flow port is a port on a side that is not part of the currently configured layout flow. For instance, given a left-to-right layout direction, north and south ports would be considered non-flow ports. Further note that the underlying criterium whether to switch sides or not solely relies on the minimization of edge crossings. Hence, edge length and other aesthetics criteria are not addressed."),!1),Dr),Qi),nt(_b)),U(G(Re,1),we,2,6,["org.eclipse.elk.layered.northOrSouthPort"])))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Oae),""),"Port Sorting Strategy"),"Only relevant for nodes with FIXED_SIDE port constraints. Determines the way a node's ports are distributed on the sides of a node if their order is not prescribed. The option is set on parent nodes."),Nge),Ai),Vbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Dae),""),"Thoroughness"),"How much effort should be spent to produce a nice layout."),Ce(7)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,kae),""),"Add Unnecessary Bendpoints"),"Adds bend points even if an edge does not change direction. If true, each long edge dummy will contribute a bend point to its edges and hierarchy-crossing edges will always get a bend point where they cross hierarchy boundaries. By default, bend points are only added where an edge changes direction."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Rae),""),"Generate Position and Layer IDs"),"If enabled position id and layer id are generated, which are usually only used internally when setting the interactiveLayout option. This option should be specified on the root node."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Tz),"cycleBreaking"),"Cycle Breaking Strategy"),"Strategy for cycle breaking. Cycle breaking looks for cycles in the graph and determines which edges to reverse to break the cycles. Reversed edges will end up pointing to the opposite direction of regular edges (that is, reversed edges will point left if edges usually point right)."),Ege),Ai),L1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,TT),Qz),"Node Layering Strategy"),"Strategy for node layering."),Dge),Ai),kbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xae),Qz),"Layer Constraint"),"Determines a constraint on the placement of the node regarding the layering."),Age),Ai),dge),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Lae),Qz),"Layer Choice Constraint"),"Allows to set a constraint regarding the layer placement of a node. Let i be the value of teh constraint. Assumed the drawing has n layers and i < n. If set to i, it expresses that the node should be placed in i-th layer. Should i>=n be true then the node is placed in the last layer of the drawing. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Nae),Qz),"Layer ID"),"Layer identifier that was calculated by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jz),zQe),"Upper Bound On Width [MinWidth Layerer]"),"Defines a loose upper bound on the width of the MinWidth layerer. If set to '-1' multiple values are tested and the best result is selected."),Ce(4)),oc),$r),nt(Tt)))),pr(t,jz,TT,ect),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Az),zQe),"Upper Layer Estimation Scaling Factor [MinWidth Layerer]"),"Multiplied with Upper Bound On Width for defining an upper bound on the width of layers which haven't been determined yet, but whose maximum width had been (roughly) estimated by the MinWidth algorithm. Compensates for too high estimations. If set to '-1' multiple values are tested and the best result is selected."),Ce(2)),oc),$r),nt(Tt)))),pr(t,Az,TT,nct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Oz),VQe),"Node Promotion Strategy"),"Reduces number of dummy nodes after layering phase (if possible)."),Oge),Ai),qbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Dz),VQe),"Max Node Promotion Iterations"),"Limits the number of iterations for node promotion."),Ce(0)),oc),$r),nt(Tt)))),pr(t,Dz,Oz,null),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,kz),"layering.coffmanGraham"),"Layer Bound"),"The maximum number of nodes allowed per layer."),Ce(Fn)),oc),$r),nt(Tt)))),pr(t,kz,TT,Yot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,K6),jT),"Crossing Minimization Strategy"),"Strategy for crossing minimization."),_ge),Ai),D1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Fae),jT),"Force Node Model Order"),"The node order given by the model does not change to produce a better layout. E.g. if node A is before node B in the model this is not changed during crossing minimization. This assumes that the node model order is already respected before crossing minimization. This can be achieved by setting considerModelOrder.strategy to NODES_AND_EDGES."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Rz),jT),"Hierarchical Sweepiness"),"How likely it is to use cross-hierarchy (1) vs bottom-up (-1)."),.1),To),mr),nt(Tt)))),pr(t,Rz,HD,_ot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xz),jT),"Semi-Interactive Crossing Minimization"),"Preserves the order of nodes within a layer but still minimizes crossings between edges connecting long edge dummies. Derives the desired order from positions specified by the 'org.eclipse.elk.position' layout option. Requires a crossing minimization strategy that is able to process 'in-layer' constraints."),!1),Dr),Qi),nt(Tt)))),pr(t,xz,K6,Mot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Bae),jT),"Position Choice Constraint"),"Allows to set a constraint regarding the position placement of a node in a layer. Assumed the layer in which the node placed includes n other nodes and i < n. If set to i, it expresses that the node should be placed at the i-th position. Should i>=n be true then the node is placed at the last position in the layer. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,$ae),jT),"Position ID"),"Position within a layer that was determined by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Kae),GQe),"Greedy Switch Activation Threshold"),"By default it is decided automatically if the greedy switch is activated or not. The decision is based on whether the size of the input graph (without dummy nodes) is smaller than the value of this option. A '0' enforces the activation."),Ce(40)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Lz),GQe),"Greedy Switch Crossing Minimization"),"Greedy Switch strategy for crossing minimization. The greedy switch heuristic is executed after the regular crossing minimization as a post-processor. Note that if 'hierarchyHandling' is set to 'INCLUDE_CHILDREN', the 'greedySwitchHierarchical.type' option must be used."),yge),Ai),vU),nt(Tt)))),pr(t,Lz,K6,vot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,OD),"crossingMinimization.greedySwitchHierarchical"),"Greedy Switch Crossing Minimization (hierarchical)"),"Activates the greedy switch heuristic in case hierarchical layout is used. The differences to the non-hierarchical case (see 'greedySwitch.type') are: 1) greedy switch is inactive by default, 3) only the option value set on the node at which hierarchical layout starts is relevant, and 2) if it's activated by the user, it properly addresses hierarchy-crossing edges."),vge),Ai),vU),nt(Tt)))),pr(t,OD,K6,pot),pr(t,OD,HD,wot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,bv),UQe),"Node Placement Strategy"),"Strategy for node placement."),Lge),Ai),Nbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,DD),UQe),"Favor Straight Edges Over Balancing"),"Favor straight edges over a balanced node placement. The default behavior is determined automatically based on the used 'edgeRouting'. For an orthogonal style it is set to true, for all other styles to false."),Dr),Qi),nt(Tt)))),pr(t,DD,bv,dct),pr(t,DD,bv,gct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Nz),WQe),"BK Edge Straightening"),"Specifies whether the Brandes Koepf node placer tries to increase the number of straight edges at the expense of diagram size. There is a subtle difference to the 'favorStraightEdges' option, which decides whether a balanced placement of the nodes is desired, or not. In bk terms this means combining the four alignments into a single balanced one, or not. This option on the other hand tries to straighten additional edges during the creation of each of the four alignments."),kge),Ai),K1e),nt(Tt)))),pr(t,Nz,bv,act),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Fz),WQe),"BK Fixed Alignment"),"Tells the BK node placer to use a certain alignment (out of its four) instead of the one producing the smallest height, or the combination of all four."),Rge),Ai),G1e),nt(Tt)))),pr(t,Fz,bv,fct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Bz),"nodePlacement.linearSegments"),"Linear Segments Deflection Dampening"),"Dampens the movement of nodes to keep the diagram from getting too large."),.3),To),mr),nt(Tt)))),pr(t,Bz,bv,pct),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,$z),"nodePlacement.networkSimplex"),"Node Flexibility"),"Aims at shorter and straighter edges. Two configurations are possible: (a) allow ports to move freely on the side they are assigned to (the order is always defined beforehand), (b) additionally allow to enlarge a node wherever it helps. If this option is not configured for a node, the 'nodeFlexibility.default' value is used, which is specified for the node's parent."),Ai),JU),nt(ar)))),pr(t,$z,bv,yct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Kz),"nodePlacement.networkSimplex.nodeFlexibility"),"Node Flexibility Default"),"Default value of the 'nodeFlexibility' option for the children of a hierarchical node."),xge),Ai),JU),nt(Tt)))),pr(t,Kz,bv,vct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qae),YQe),"Self-Loop Distribution"),"Alter the distribution of the loops around the node. It only takes effect for PortConstraints.FREE."),Cge),Ai),Wbe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Hae),YQe),"Self-Loop Ordering"),"Alter the ordering of the loops they can either be stacked or sequenced. It only takes effect for PortConstraints.FREE."),Ige),Ai),Ybe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,kD),"edgeRouting.splines"),"Spline Routing Mode"),"Specifies the way control points are assembled for each individual edge. CONSERVATIVE ensures that edges are properly routed around the nodes but feels rather orthogonal at times. SLOPPY uses fewer control points to obtain curvier edge routes but may result in edges overlapping nodes."),Tge),Ai),Jbe),nt(Tt)))),pr(t,kD,AT,Lot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,RD),"edgeRouting.splines.sloppy"),"Sloppy Spline Layer Spacing Factor"),"Spacing factor for routing area between layers when using sloppy spline routing."),.2),To),mr),nt(Tt)))),pr(t,RD,AT,Fot),pr(t,RD,kD,Bot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qz),"edgeRouting.polyline"),"Sloped Edge Zone Width"),"Width of the strip to the left and to the right of each layer where the polyline edge router is allowed to refrain from ensuring that edges are routed horizontally. This prevents awkward bend points for nodes that extent almost to the edge of their layer."),2),To),mr),nt(Tt)))),pr(t,qz,AT,Dot),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,zae),Hl),"Spacing Base Value"),"An optional base value for all other layout options of the 'spacing' group. It can be used to conveniently alter the overall 'spaciousness' of the drawing. Whenever an explicit value is set for the other layout options, this base value will have no effect. The base value is not inherited, i.e. it must be set for each hierarchical node."),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Vae),Hl),"Edge Node Between Layers Spacing"),"The spacing to be preserved between nodes and edges that are routed next to the node's layer. For the spacing between nodes and edges that cross the node's layer 'spacing.edgeNode' is used."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Gae),Hl),"Edge Edge Between Layer Spacing"),"Spacing to be preserved between pairs of edges that are routed between the same pair of layers. Note that 'spacing.edgeEdge' is used for the spacing between pairs of edges crossing the same layer."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Uae),Hl),"Node Node Between Layers Spacing"),"The spacing to be preserved between any pair of nodes of two adjacent layers. Note that 'spacing.nodeNode' is used for the spacing between nodes within the layer itself."),20),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Wae),ile),"Direction Priority"),"Defines how important it is to have a certain edge point into the direction of the overall layout. This option is evaluated during the cycle breaking phase."),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Yae),ile),"Shortness Priority"),"Defines how important it is to keep an edge as short as possible. This option is evaluated during the layering phase."),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Xae),ile),"Straightness Priority"),"Defines how important it is to keep an edge straight, i.e. aligned with one of the two axes. This option is evaluated during node placement."),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Hz),rle),fQe),"Tries to further compact components (disconnected sub-graphs)."),!1),Dr),Qi),nt(Tt)))),pr(t,Hz,L6,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Jae),XQe),"Post Compaction Strategy"),JQe),bge),Ai),Q1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Qae),XQe),"Post Compaction Constraint Calculation"),JQe),gge),Ai),A1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xD),ole),"High Degree Node Treatment"),"Makes room around high degree nodes to place leafs and trees."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,zz),ole),"High Degree Node Threshold"),"Whether a node is considered to have a high degree."),Ce(16)),oc),$r),nt(Tt)))),pr(t,zz,xD,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Vz),ole),"High Degree Node Maximum Tree Height"),"Maximum height of a subtree connected to a high degree node to be moved to separate layers."),Ce(5)),oc),$r),nt(Tt)))),pr(t,Vz,xD,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Hh),cle),"Graph Wrapping Strategy"),"For certain graphs and certain prescribed drawing areas it may be desirable to split the laid out graph into chunks that are placed side by side. The edges that connect different chunks are 'wrapped' around from the end of one chunk to the start of the other chunk. The points between the chunks are referred to as 'cuts'."),$ge),Ai),t0e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,LD),cle),"Additional Wrapped Edges Spacing"),"To visually separate edges that are wrapped from regularly routed edges an additional spacing value can be specified in form of this layout option. The spacing is added to the regular edgeNode spacing."),10),To),mr),nt(Tt)))),pr(t,LD,Hh,kct),pr(t,LD,Hh,Rct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ND),cle),"Correction Factor for Wrapping"),"At times and for certain types of graphs the executed wrapping may produce results that are consistently biased in the same fashion: either wrapping to often or to rarely. This factor can be used to correct the bias. Internally, it is simply multiplied with the 'aspect ratio' layout option."),1),To),mr),nt(Tt)))),pr(t,ND,Hh,Lct),pr(t,ND,Hh,Nct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,q6),QQe),"Cutting Strategy"),"The strategy by which the layer indexes are determined at which the layering crumbles into chunks."),Bge),Ai),R1e),nt(Tt)))),pr(t,q6,Hh,Hct),pr(t,q6,Hh,zct),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Gz),QQe),"Manually Specified Cuts"),"Allows the user to specify her own cuts for a certain graph."),Yl),Vu),nt(Tt)))),pr(t,Gz,q6,Bct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Uz),"wrapping.cutting.msd"),"MSD Freedom"),"The MSD cutting strategy starts with an initial guess on the number of chunks the graph should be split into. The freedom specifies how much the strategy may deviate from this guess. E.g. if an initial number of 3 is computed, a freedom of 1 allows 2, 3, and 4 cuts."),Fge),oc),$r),nt(Tt)))),pr(t,Uz,q6,Kct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,FD),ZQe),"Validification Strategy"),"When wrapping graphs, one can specify indices that are not allowed as split points. The validification strategy makes sure every computed split point is allowed."),Kge),Ai),e0e),nt(Tt)))),pr(t,FD,Hh,nst),pr(t,FD,Hh,ist),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,BD),ZQe),"Valid Indices for Wrapping"),null),Yl),Vu),nt(Tt)))),pr(t,BD,Hh,Zct),pr(t,BD,Hh,est),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,$D),sle),"Improve Cuts"),"For general graphs it is important that not too many edges wrap backwards. Thus a compromise between evenly-distributed cuts and the total number of cut edges is sought."),!0),Dr),Qi),nt(Tt)))),pr(t,$D,Hh,Wct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,KD),sle),"Distance Penalty When Improving Cuts"),null),2),To),mr),nt(Tt)))),pr(t,KD,Hh,Gct),pr(t,KD,$D,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Wz),sle),"Improve Wrapped Edges"),"The initial wrapping is performed in a very simple way. As a consequence, edges that wrap from one chunk to another may be unnecessarily long. Activating this option tries to shorten such edges."),!0),Dr),Qi),nt(Tt)))),pr(t,Wz,Hh,Xct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Zae),Zz),"Edge Label Side Selection"),"Method to decide on edge label sides."),Mge),Ai),B1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ele),Zz),"Edge Center Label Placement Strategy"),"Determines in which layer center labels of long edges should be placed."),Pge),Ai),h4),ui(Tt,U(G(Dd,1),_e,175,0,[Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qD),OT),"Consider Model Order"),"Preserves the order of nodes and edges in the model file if this does not lead to additional edge crossings. Depending on the strategy this is not always possible since the node and edge order might be conflicting."),mge),Ai),zbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,tle),OT),"No Model Order"),"Set on a node to not set a model order for this node even though it is a real node."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Yz),OT),"Consider Model Order for Components"),"If set to NONE the usual ordering strategy (by cumulative node priority and size of nodes) is used. INSIDE_PORT_SIDES orders the components with external ports only inside the groups with the same port side. FORCE_MODEL_ORDER enforces the mode order on components. This option might produce bad alignments and sub optimal drawings in terms of used area since the ordering should be respected."),pge),Ai),Lde),nt(Tt)))),pr(t,Yz,L6,null),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,nle),OT),"Long Edge Ordering Strategy"),"Indicates whether long edges are sorted under, over, or equal to nodes that have no connection to a previous layer in a left-to-right or right-to-left layout. Under and over changes to right and left in a vertical layout."),wge),Ai),xbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Xz),OT),"Crossing Counter Node Order Influence"),"Indicates with what percentage (1 for 100%) violations of the node model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal node order. Defaults to no influence (0)."),0),To),mr),nt(Tt)))),pr(t,Xz,qD,null),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Jz),OT),"Crossing Counter Port Order Influence"),"Indicates with what percentage (1 for 100%) violations of the port model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal port order. Defaults to no influence (0)."),0),To),mr),nt(Tt)))),pr(t,Jz,qD,null),pJe((new sCe,t))};var iot,rot,oot,gge,cot,bge,sot,pge,uot,aot,lot,wge,fot,hot,mge,dot,got,bot,vge,pot,wot,mot,yge,vot,yot,_ot,Eot,Sot,Pot,Mot,Cot,_ge,Iot,Ege,Tot,Sge,jot,Pge,Aot,Mge,Oot,Dot,kot,Cge,Rot,Ige,xot,Tge,Lot,Not,Fot,Bot,$ot,Kot,qot,Hot,zot,Vot,jge,Got,Uot,Wot,Yot,Xot,Jot,Age,Qot,Zot,ect,tct,nct,ict,rct,Oge,oct,Dge,cct,sct,uct,kge,act,lct,Rge,fct,hct,dct,gct,bct,pct,wct,mct,xge,vct,yct,_ct,Lge,Ect,Nge,Sct,Pct,Mct,Cct,Ict,Tct,jct,Act,Oct,Dct,kct,Rct,xct,Lct,Nct,Fct,Bct,$ct,Fge,Kct,qct,Bge,Hct,zct,Vct,Gct,Uct,Wct,Yct,Xct,Jct,$ge,Qct,Zct,est,tst,Kge,nst,ist;S(lc,"LayeredMetaDataProvider",848),y(986,1,ca,sCe),s.Qe=function(t){pJe(t)};var Of,jU,TR,SP,jR,qge,AR,J2,OR,Hge,zge,AU,q1,OU,Lw,Vge,lj,DU,Gge,rst,DR,kU,PP,Nw,ost,Pu,Uge,Wge,kR,RU,Df,RR,zh,Yge,Xge,Jge,xU,LU,Qge,Id,NU,Zge,Fw,ebe,tbe,nbe,xR,Bw,pb,ibe,rbe,yo,obe,cst,zc,LR,cbe,sbe,ube,FU,abe,NR,lbe,fbe,FR,Q0,hbe,BU,MP,dbe,Z0,CP,BR,wb,$U,v4,$R,mb,gbe,bbe,pbe,y4,wbe,sst,ust,ast,lst,ep,$w,ji,Td,fst,Kw,mbe,_4,vbe,qw,hst,E4,ybe,Q2,dst,gst,fj,KU,_be,hj,za,Lv,Z2,tp,vb,KR,Hw,qU,S4,P4,np,Nv,HU,dj,IP,TP,zU,Ebe,Sbe,Pbe,Mbe,VU,Cbe,Ibe,Tbe,jbe,GU,qR;S(lc,"LayeredOptions",986),y(987,1,{},Q4e),s.$e=function(){var t;return t=new CAe,t},s._e=function(t){},S(lc,"LayeredOptions/LayeredFactory",987),y(1372,1,{}),s.a=0;var bst;S(fc,"ElkSpacings/AbstractSpacingsBuilder",1372),y(779,1372,{},moe);var HR,pst;S(lc,"LayeredSpacings/LayeredSpacingsBuilder",779),y(313,22,{3:1,35:1,22:1,313:1,246:1,234:1},e5),s.Kf=function(){return YUe(this)},s.Xf=function(){return YUe(this)};var UU,Abe,Obe,zR,WU,Dbe,kbe=hn(lc,"LayeringStrategy",313,bn,bCt,uEt),wst;y(378,22,{3:1,35:1,22:1,378:1},pF);var YU,Rbe,VR,xbe=hn(lc,"LongEdgeOrderingStrategy",378,bn,U6t,aEt),mst;y(197,22,{3:1,35:1,22:1,197:1},I9);var Fv,Bv,GR,XU,JU=hn(lc,"NodeFlexibility",197,bn,eMt,lEt),vst;y(315,22,{3:1,35:1,22:1,315:1,246:1,234:1},uC),s.Kf=function(){return kUe(this)},s.Xf=function(){return kUe(this)};var jP,QU,ZU,AP,Lbe,Nbe=hn(lc,"NodePlacementStrategy",315,bn,NMt,pEt),yst;y(260,22,{3:1,35:1,22:1,260:1},Ky);var Fbe,gj,Bbe,$be,bj,Kbe,UR,WR,qbe=hn(lc,"NodePromotionStrategy",260,bn,gIt,hEt),_st;y(339,22,{3:1,35:1,22:1,339:1},wF);var Hbe,H1,eW,zbe=hn(lc,"OrderingStrategy",339,bn,tPt,dEt),Est;y(421,22,{3:1,35:1,22:1,421:1},qZ);var tW,nW,Vbe=hn(lc,"PortSortingStrategy",421,bn,r6t,gEt),Sst;y(452,22,{3:1,35:1,22:1,452:1},mF);var Os,Fc,OP,Pst=hn(lc,"PortType",452,bn,ePt,fEt),Mst;y(375,22,{3:1,35:1,22:1,375:1},vF);var Gbe,iW,Ube,Wbe=hn(lc,"SelfLoopDistributionStrategy",375,bn,nPt,bEt),Cst;y(376,22,{3:1,35:1,22:1,376:1},HZ);var pj,rW,Ybe=hn(lc,"SelfLoopOrderingStrategy",376,bn,Z5t,wEt),Ist;y(304,1,{304:1},mXe),S(lc,"Spacings",304),y(336,22,{3:1,35:1,22:1,336:1},yF);var oW,Xbe,DP,Jbe=hn(lc,"SplineRoutingMode",336,bn,rPt,mEt),Tst;y(338,22,{3:1,35:1,22:1,338:1},_F);var cW,Qbe,Zbe,e0e=hn(lc,"ValidifyStrategy",338,bn,oPt,vEt),jst;y(377,22,{3:1,35:1,22:1,377:1},EF);var zw,sW,M4,t0e=hn(lc,"WrappingStrategy",377,bn,iPt,yEt),Ast;y(1383,1,Sc,uCe),s.Yf=function(t){return c(t,37),Ost},s.pf=function(t,n){Y$t(this,c(t,37),n)};var Ost;S(GD,"DepthFirstCycleBreaker",1383),y(782,1,Sc,nne),s.Yf=function(t){return c(t,37),Dst},s.pf=function(t,n){UHt(this,c(t,37),n)},s.Zf=function(t){return c(Ne(t,S7(this.d,t.c.length)),10)};var Dst;S(GD,"GreedyCycleBreaker",782),y(1386,782,Sc,o7e),s.Zf=function(t){var n,i,r,o;for(o=null,n=Fn,r=new q(t);r.a1&&(Be(Fe(B(Nr((pt(0,t.c.length),c(t.c[0],10))),(Oe(),Lw))))?HUe(t,this.d,c(this,660)):(st(),cr(t,this.d)),aqe(this.e,t))},s.Sf=function(t,n,i,r){var o,u,a,l,d,p,v;for(n!=RRe(i,t.length)&&(u=t[n-(i?1:-1)],Iie(this.f,u,i?(Zr(),Fc):(Zr(),Os))),o=t[n][0],v=!r||o.k==(Dt(),Bi),p=kl(t[n]),this.ag(p,v,!1,i),a=0,d=new q(p);d.a"),t0?n$(this.a,t[n-1],t[n]):!i&&n1&&(Be(Fe(B(Nr((pt(0,t.c.length),c(t.c[0],10))),(Oe(),Lw))))?HUe(t,this.d,this):(st(),cr(t,this.d)),Be(Fe(B(Nr((pt(0,t.c.length),c(t.c[0],10))),Lw)))||aqe(this.e,t))},S(_s,"ModelOrderBarycenterHeuristic",660),y(1803,1,Zn,HTe),s.ue=function(t,n){return akt(this.a,c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_s,"ModelOrderBarycenterHeuristic/lambda$0$Type",1803),y(1403,1,Sc,pCe),s.Yf=function(t){var n;return c(t,37),n=$9(Vst),Nn(n,(Hr(),Hc),(Jr(),iR)),n},s.pf=function(t,n){W5t((c(t,37),n))};var Vst;S(_s,"NoCrossingMinimizer",1403),y(796,402,Hle,hZ),s.$f=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L;switch(A=this.g,i.g){case 1:{for(o=0,u=0,v=new q(t.j);v.a1&&(o.j==(Ie(),jt)?this.b[t]=!0:o.j==Mt&&t>0&&(this.b[t-1]=!0))},s.f=0,S(eh,"AllCrossingsCounter",1798),y(587,1,{},BO),s.b=0,s.d=0,S(eh,"BinaryIndexedTree",587),y(524,1,{},IC);var r0e,XR;S(eh,"CrossingsCounter",524),y(1906,1,Zn,zTe),s.ue=function(t,n){return J4t(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$0$Type",1906),y(1907,1,Zn,VTe),s.ue=function(t,n){return Q4t(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$1$Type",1907),y(1908,1,Zn,GTe),s.ue=function(t,n){return Z4t(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$2$Type",1908),y(1909,1,Zn,UTe),s.ue=function(t,n){return eSt(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$3$Type",1909),y(1910,1,Rt,WTe),s.td=function(t){xCt(this.a,c(t,11))},S(eh,"CrossingsCounter/lambda$4$Type",1910),y(1911,1,Rn,YTe),s.Mb=function(t){return Yyt(this.a,c(t,11))},S(eh,"CrossingsCounter/lambda$5$Type",1911),y(1912,1,Rt,XTe),s.td=function(t){t7e(this,t)},S(eh,"CrossingsCounter/lambda$6$Type",1912),y(1913,1,Rt,IOe),s.td=function(t){var n;m_(),w1(this.b,(n=this.a,c(t,11),n))},S(eh,"CrossingsCounter/lambda$7$Type",1913),y(826,1,yf,NJ),s.Lb=function(t){return m_(),nr(c(t,11),(ye(),As))},s.Fb=function(t){return this===t},s.Mb=function(t){return m_(),nr(c(t,11),(ye(),As))},S(eh,"CrossingsCounter/lambda$8$Type",826),y(1905,1,{},JTe),S(eh,"HyperedgeCrossingsCounter",1905),y(467,1,{35:1,467:1},wke),s.wd=function(t){return D9t(this,c(t,467))},s.b=0,s.c=0,s.e=0,s.f=0;var Tzt=S(eh,"HyperedgeCrossingsCounter/Hyperedge",467);y(362,1,{35:1,362:1},N8),s.wd=function(t){return Axt(this,c(t,362))},s.b=0,s.c=0;var Gst=S(eh,"HyperedgeCrossingsCounter/HyperedgeCorner",362);y(523,22,{3:1,35:1,22:1,523:1},zZ);var RP,xP,Ust=hn(eh,"HyperedgeCrossingsCounter/HyperedgeCorner/Type",523,bn,o6t,EEt),Wst;y(1405,1,Sc,cCe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Yst:null},s.pf=function(t,n){JOt(this,c(t,37),n)};var Yst;S(io,"InteractiveNodePlacer",1405),y(1406,1,Sc,oCe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Xst:null},s.pf=function(t,n){x8t(this,c(t,37),n)};var Xst,JR,QR;S(io,"LinearSegmentsNodePlacer",1406),y(257,1,{35:1,257:1},qQ),s.wd=function(t){return syt(this,c(t,257))},s.Fb=function(t){var n;return Q(t,257)?(n=c(t,257),this.b==n.b):!1},s.Hb=function(){return this.b},s.Ib=function(){return"ls"+C1(this.e)},s.a=0,s.b=0,s.c=-1,s.d=-1,s.g=0;var Jst=S(io,"LinearSegmentsNodePlacer/LinearSegment",257);y(1408,1,Sc,zRe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Qst:null},s.pf=function(t,n){BHt(this,c(t,37),n)},s.b=0,s.g=0;var Qst;S(io,"NetworkSimplexPlacer",1408),y(1427,1,Zn,oSe),s.ue=function(t,n){return Uc(c(t,19).a,c(n,19).a)},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(io,"NetworkSimplexPlacer/0methodref$compare$Type",1427),y(1429,1,Zn,cSe),s.ue=function(t,n){return Uc(c(t,19).a,c(n,19).a)},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(io,"NetworkSimplexPlacer/1methodref$compare$Type",1429),y(649,1,{649:1},TOe);var jzt=S(io,"NetworkSimplexPlacer/EdgeRep",649);y(401,1,{401:1},Rne),s.b=!1;var Azt=S(io,"NetworkSimplexPlacer/NodeRep",401);y(508,12,{3:1,4:1,20:1,28:1,52:1,12:1,14:1,15:1,54:1,508:1},NAe),S(io,"NetworkSimplexPlacer/Path",508),y(1409,1,{},sSe),s.Kb=function(t){return c(t,17).d.i.k},S(io,"NetworkSimplexPlacer/Path/lambda$0$Type",1409),y(1410,1,Rn,uSe),s.Mb=function(t){return c(t,267)==(Dt(),ur)},S(io,"NetworkSimplexPlacer/Path/lambda$1$Type",1410),y(1411,1,{},aSe),s.Kb=function(t){return c(t,17).d.i},S(io,"NetworkSimplexPlacer/Path/lambda$2$Type",1411),y(1412,1,Rn,QTe),s.Mb=function(t){return tke($He(c(t,10)))},S(io,"NetworkSimplexPlacer/Path/lambda$3$Type",1412),y(1413,1,Rn,lSe),s.Mb=function(t){return $4t(c(t,11))},S(io,"NetworkSimplexPlacer/lambda$0$Type",1413),y(1414,1,Rt,jOe),s.td=function(t){N2t(this.a,this.b,c(t,11))},S(io,"NetworkSimplexPlacer/lambda$1$Type",1414),y(1423,1,Rt,ZTe),s.td=function(t){iRt(this.a,c(t,17))},S(io,"NetworkSimplexPlacer/lambda$10$Type",1423),y(1424,1,{},fSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$11$Type",1424),y(1425,1,Rt,eje),s.td=function(t){ZNt(this.a,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$12$Type",1425),y(1426,1,{},hSe),s.Kb=function(t){return hu(),Ce(c(t,121).e)},S(io,"NetworkSimplexPlacer/lambda$13$Type",1426),y(1428,1,{},dSe),s.Kb=function(t){return hu(),Ce(c(t,121).e)},S(io,"NetworkSimplexPlacer/lambda$15$Type",1428),y(1430,1,Rn,gSe),s.Mb=function(t){return hu(),c(t,401).c.k==(Dt(),Ui)},S(io,"NetworkSimplexPlacer/lambda$17$Type",1430),y(1431,1,Rn,bSe),s.Mb=function(t){return hu(),c(t,401).c.j.c.length>1},S(io,"NetworkSimplexPlacer/lambda$18$Type",1431),y(1432,1,Rt,Jxe),s.td=function(t){HAt(this.c,this.b,this.d,this.a,c(t,401))},s.c=0,s.d=0,S(io,"NetworkSimplexPlacer/lambda$19$Type",1432),y(1415,1,{},pSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$2$Type",1415),y(1433,1,Rt,tje),s.td=function(t){x2t(this.a,c(t,11))},s.a=0,S(io,"NetworkSimplexPlacer/lambda$20$Type",1433),y(1434,1,{},wSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$21$Type",1434),y(1435,1,Rt,nje),s.td=function(t){X2t(this.a,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$22$Type",1435),y(1436,1,Rn,mSe),s.Mb=function(t){return tke(t)},S(io,"NetworkSimplexPlacer/lambda$23$Type",1436),y(1437,1,{},vSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$24$Type",1437),y(1438,1,Rn,ije),s.Mb=function(t){return n2t(this.a,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$25$Type",1438),y(1439,1,Rt,AOe),s.td=function(t){Mkt(this.a,this.b,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$26$Type",1439),y(1440,1,Rn,ySe),s.Mb=function(t){return hu(),!Kr(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$27$Type",1440),y(1441,1,Rn,_Se),s.Mb=function(t){return hu(),!Kr(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$28$Type",1441),y(1442,1,{},rje),s.Ce=function(t,n){return U2t(this.a,c(t,29),c(n,29))},S(io,"NetworkSimplexPlacer/lambda$29$Type",1442),y(1416,1,{},ESe),s.Kb=function(t){return hu(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(io,"NetworkSimplexPlacer/lambda$3$Type",1416),y(1417,1,Rn,SSe),s.Mb=function(t){return hu(),RPt(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$4$Type",1417),y(1418,1,Rt,oje),s.td=function(t){QBt(this.a,c(t,17))},S(io,"NetworkSimplexPlacer/lambda$5$Type",1418),y(1419,1,{},PSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$6$Type",1419),y(1420,1,Rn,MSe),s.Mb=function(t){return hu(),c(t,10).k==(Dt(),Ui)},S(io,"NetworkSimplexPlacer/lambda$7$Type",1420),y(1421,1,{},CSe),s.Kb=function(t){return hu(),new ht(null,new t0(new Kt(Ht(xh(c(t,10)).a.Kc(),new j))))},S(io,"NetworkSimplexPlacer/lambda$8$Type",1421),y(1422,1,Rn,ISe),s.Mb=function(t){return hu(),R4t(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$9$Type",1422),y(1404,1,Sc,ECe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Zst:null},s.pf=function(t,n){k$t(c(t,37),n)};var Zst;S(io,"SimpleNodePlacer",1404),y(180,1,{180:1},cv),s.Ib=function(){var t;return t="",this.c==(gf(),ip)?t+=A2:this.c==jd&&(t+=j2),this.o==(Al(),yb)?t+=uz:this.o==Wl?t+="UP":t+="BALANCED",t},S(R1,"BKAlignedLayout",180),y(516,22,{3:1,35:1,22:1,516:1},GZ);var jd,ip,eut=hn(R1,"BKAlignedLayout/HDirection",516,bn,s6t,SEt),tut;y(515,22,{3:1,35:1,22:1,515:1},VZ);var yb,Wl,nut=hn(R1,"BKAlignedLayout/VDirection",515,bn,u6t,PEt),iut;y(1634,1,{},OOe),S(R1,"BKAligner",1634),y(1637,1,{},lVe),S(R1,"BKCompactor",1637),y(654,1,{654:1},TSe),s.a=0,S(R1,"BKCompactor/ClassEdge",654),y(458,1,{458:1},xAe),s.a=null,s.b=0,S(R1,"BKCompactor/ClassNode",458),y(1407,1,Sc,i7e),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?rut:null},s.pf=function(t,n){ezt(this,c(t,37),n)},s.d=!1;var rut;S(R1,"BKNodePlacer",1407),y(1635,1,{},jSe),s.d=0,S(R1,"NeighborhoodInformation",1635),y(1636,1,Zn,cje),s.ue=function(t,n){return sIt(this,c(t,46),c(n,46))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(R1,"NeighborhoodInformation/NeighborComparator",1636),y(808,1,{}),S(R1,"ThresholdStrategy",808),y(1763,808,{},$Ae),s.bg=function(t,n,i){return this.a.o==(Al(),Wl)?Ii:$i},s.cg=function(){},S(R1,"ThresholdStrategy/NullThresholdStrategy",1763),y(579,1,{579:1},DOe),s.c=!1,s.d=!1,S(R1,"ThresholdStrategy/Postprocessable",579),y(1764,808,{},KAe),s.bg=function(t,n,i){var r,o,u;return o=n==i,r=this.a.a[i.p]==n,o||r?(u=t,this.a.c==(gf(),ip)?(o&&(u=uH(this,n,!0)),!isNaN(u)&&!isFinite(u)&&r&&(u=uH(this,i,!1))):(o&&(u=uH(this,n,!0)),!isNaN(u)&&!isFinite(u)&&r&&(u=uH(this,i,!1))),u):t},s.cg=function(){for(var t,n,i,r,o;this.d.b!=0;)o=c(P6t(this.d),579),r=OYe(this,o),r.a&&(t=r.a,i=Be(this.a.f[this.a.g[o.b.p].p]),!(!i&&!Kr(t)&&t.c.i.c==t.d.i.c)&&(n=FUe(this,o),n||l2t(this.e,o)));for(;this.e.a.c.length!=0;)FUe(this,c(Wqe(this.e),579))},S(R1,"ThresholdStrategy/SimpleThresholdStrategy",1764),y(635,1,{635:1,246:1,234:1},ASe),s.Kf=function(){return rqe(this)},s.Xf=function(){return rqe(this)};var uW;S(rV,"EdgeRouterFactory",635),y(1458,1,Sc,SCe),s.Yf=function(t){return DNt(c(t,37))},s.pf=function(t,n){$$t(c(t,37),n)};var out,cut,sut,uut,aut,o0e,lut,fut;S(rV,"OrthogonalEdgeRouter",1458),y(1451,1,Sc,r7e),s.Yf=function(t){return n7t(c(t,37))},s.pf=function(t,n){cHt(this,c(t,37),n)};var hut,dut,gut,but,mj,put;S(rV,"PolylineEdgeRouter",1451),y(1452,1,yf,OSe),s.Lb=function(t){return _re(c(t,10))},s.Fb=function(t){return this===t},s.Mb=function(t){return _re(c(t,10))},S(rV,"PolylineEdgeRouter/1",1452),y(1809,1,Rn,DSe),s.Mb=function(t){return c(t,129).c==(cl(),z1)},S(gl,"HyperEdgeCycleDetector/lambda$0$Type",1809),y(1810,1,{},kSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$1$Type",1810),y(1811,1,Rn,RSe),s.Mb=function(t){return c(t,129).c==(cl(),z1)},S(gl,"HyperEdgeCycleDetector/lambda$2$Type",1811),y(1812,1,{},xSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$3$Type",1812),y(1813,1,{},LSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$4$Type",1813),y(1814,1,{},NSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$5$Type",1814),y(112,1,{35:1,112:1},dI),s.wd=function(t){return uyt(this,c(t,112))},s.Fb=function(t){var n;return Q(t,112)?(n=c(t,112),this.g==n.g):!1},s.Hb=function(){return this.g},s.Ib=function(){var t,n,i,r;for(t=new lu("{"),r=new q(this.n);r.a"+this.b+" ("+v3t(this.c)+")"},s.d=0,S(gl,"HyperEdgeSegmentDependency",129),y(520,22,{3:1,35:1,22:1,520:1},UZ);var z1,Vw,wut=hn(gl,"HyperEdgeSegmentDependency/DependencyType",520,bn,c6t,MEt),mut;y(1815,1,{},sje),S(gl,"HyperEdgeSegmentSplitter",1815),y(1816,1,{},F9e),s.a=0,s.b=0,S(gl,"HyperEdgeSegmentSplitter/AreaRating",1816),y(329,1,{329:1},uB),s.a=0,s.b=0,s.c=0,S(gl,"HyperEdgeSegmentSplitter/FreeArea",329),y(1817,1,Zn,VSe),s.ue=function(t,n){return b_t(c(t,112),c(n,112))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(gl,"HyperEdgeSegmentSplitter/lambda$0$Type",1817),y(1818,1,Rt,Qxe),s.td=function(t){yMt(this.a,this.d,this.c,this.b,c(t,112))},s.b=0,S(gl,"HyperEdgeSegmentSplitter/lambda$1$Type",1818),y(1819,1,{},GSe),s.Kb=function(t){return new ht(null,new bt(c(t,112).e,16))},S(gl,"HyperEdgeSegmentSplitter/lambda$2$Type",1819),y(1820,1,{},USe),s.Kb=function(t){return new ht(null,new bt(c(t,112).j,16))},S(gl,"HyperEdgeSegmentSplitter/lambda$3$Type",1820),y(1821,1,{},WSe),s.Fe=function(t){return ge(Te(t))},S(gl,"HyperEdgeSegmentSplitter/lambda$4$Type",1821),y(655,1,{},DB),s.a=0,s.b=0,s.c=0,S(gl,"OrthogonalRoutingGenerator",655),y(1638,1,{},YSe),s.Kb=function(t){return new ht(null,new bt(c(t,112).e,16))},S(gl,"OrthogonalRoutingGenerator/lambda$0$Type",1638),y(1639,1,{},XSe),s.Kb=function(t){return new ht(null,new bt(c(t,112).j,16))},S(gl,"OrthogonalRoutingGenerator/lambda$1$Type",1639),y(661,1,{}),S(oV,"BaseRoutingDirectionStrategy",661),y(1807,661,{},qAe),s.dg=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;if(!(t.r&&!t.q))for(v=n+t.o*i,p=new q(t.n);p.aEf&&(u=v,o=t,r=new $e(A,u),Cn(a.a,r),O0(this,a,o,r,!1),D=t.r,D&&(L=ge(Te(hl(D.e,0))),r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1),u=n+D.o*i,o=D,r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1)),r=new $e(z,u),Cn(a.a,r),O0(this,a,o,r,!1)))},s.eg=function(t){return t.i.n.a+t.n.a+t.a.a},s.fg=function(){return Ie(),Yt},s.gg=function(){return Ie(),_t},S(oV,"NorthToSouthRoutingStrategy",1807),y(1808,661,{},HAe),s.dg=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;if(!(t.r&&!t.q))for(v=n-t.o*i,p=new q(t.n);p.aEf&&(u=v,o=t,r=new $e(A,u),Cn(a.a,r),O0(this,a,o,r,!1),D=t.r,D&&(L=ge(Te(hl(D.e,0))),r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1),u=n-D.o*i,o=D,r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1)),r=new $e(z,u),Cn(a.a,r),O0(this,a,o,r,!1)))},s.eg=function(t){return t.i.n.a+t.n.a+t.a.a},s.fg=function(){return Ie(),_t},s.gg=function(){return Ie(),Yt},S(oV,"SouthToNorthRoutingStrategy",1808),y(1806,661,{},zAe),s.dg=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;if(!(t.r&&!t.q))for(v=n+t.o*i,p=new q(t.n);p.aEf&&(u=v,o=t,r=new $e(u,A),Cn(a.a,r),O0(this,a,o,r,!0),D=t.r,D&&(L=ge(Te(hl(D.e,0))),r=new $e(u,L),Cn(a.a,r),O0(this,a,o,r,!0),u=n+D.o*i,o=D,r=new $e(u,L),Cn(a.a,r),O0(this,a,o,r,!0)),r=new $e(u,z),Cn(a.a,r),O0(this,a,o,r,!0)))},s.eg=function(t){return t.i.n.b+t.n.b+t.a.b},s.fg=function(){return Ie(),jt},s.gg=function(){return Ie(),Mt},S(oV,"WestToEastRoutingStrategy",1806),y(813,1,{},due),s.Ib=function(){return C1(this.a)},s.b=0,s.c=!1,s.d=!1,s.f=0,S(Sw,"NubSpline",813),y(407,1,{407:1},dWe,DLe),S(Sw,"NubSpline/PolarCP",407),y(1453,1,Sc,nVe),s.Yf=function(t){return V7t(c(t,37))},s.pf=function(t,n){MHt(this,c(t,37),n)};var vut,yut,_ut,Eut,Sut;S(Sw,"SplineEdgeRouter",1453),y(268,1,{268:1},aO),s.Ib=function(){return this.a+" ->("+this.c+") "+this.b},s.c=0,S(Sw,"SplineEdgeRouter/Dependency",268),y(455,22,{3:1,35:1,22:1,455:1},WZ);var V1,$v,Put=hn(Sw,"SplineEdgeRouter/SideToProcess",455,bn,a6t,CEt),Mut;y(1454,1,Rn,HSe),s.Mb=function(t){return w6(),!c(t,128).o},S(Sw,"SplineEdgeRouter/lambda$0$Type",1454),y(1455,1,{},qSe),s.Ge=function(t){return w6(),c(t,128).v+1},S(Sw,"SplineEdgeRouter/lambda$1$Type",1455),y(1456,1,Rt,kOe),s.td=function(t){L4t(this.a,this.b,c(t,46))},S(Sw,"SplineEdgeRouter/lambda$2$Type",1456),y(1457,1,Rt,ROe),s.td=function(t){N4t(this.a,this.b,c(t,46))},S(Sw,"SplineEdgeRouter/lambda$3$Type",1457),y(128,1,{35:1,128:1},AGe,vue),s.wd=function(t){return ayt(this,c(t,128))},s.b=0,s.e=!1,s.f=0,s.g=0,s.j=!1,s.k=!1,s.n=0,s.o=!1,s.p=!1,s.q=!1,s.s=0,s.u=0,s.v=0,s.F=0,S(Sw,"SplineSegment",128),y(459,1,{459:1},zSe),s.a=0,s.b=!1,s.c=!1,s.d=!1,s.e=!1,s.f=0,S(Sw,"SplineSegment/EdgeInformation",459),y(1234,1,{},FSe),S(H6,gae,1234),y(1235,1,Zn,BSe),s.ue=function(t,n){return vRt(c(t,135),c(n,135))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(H6,gQe,1235),y(1233,1,{},e8e),S(H6,"MrTree",1233),y(393,22,{3:1,35:1,22:1,393:1,246:1,234:1},T9),s.Kf=function(){return tUe(this)},s.Xf=function(){return tUe(this)};var ZR,LP,vj,NP,c0e=hn(H6,"TreeLayoutPhases",393,bn,tMt,IEt),Cut;y(1130,209,rb,yke),s.Ze=function(t,n){var i,r,o,u,a,l,d;for(Be(Fe(Ke(t,(A0(),h0e))))||V8((i=new zM((Ap(),new Ip(t))),i)),a=(l=new lO,Mo(l,t),pe(l,(ic(),$P),t),d=new en,lBt(t,l,d),IBt(t,l,d),l),u=yBt(this.a,a),o=new q(u);o.a"+Q8(this.c):"e_"+fi(this)},S(z6,"TEdge",188),y(135,134,{3:1,135:1,94:1,134:1},lO),s.Ib=function(){var t,n,i,r,o;for(o=null,r=Mn(this.b,0);r.b!=r.d.c;)i=c(Pn(r),86),o+=(i.c==null||i.c.length==0?"n_"+i.g:"n_"+i.c)+` +`;for(n=Mn(this.a,0);n.b!=n.d.c;)t=c(Pn(n),188),o+=(t.b&&t.c?Q8(t.b)+"->"+Q8(t.c):"e_"+fi(t))+` +`;return o};var Ozt=S(z6,"TGraph",135);y(633,502,{3:1,502:1,633:1,94:1,134:1}),S(z6,"TShape",633),y(86,633,{3:1,502:1,86:1,633:1,94:1,134:1},uK),s.Ib=function(){return Q8(this)};var Dzt=S(z6,"TNode",86);y(255,1,Yf,t1),s.Jc=function(t){Mr(this,t)},s.Kc=function(){var t;return t=Mn(this.a.d,0),new Dy(t)},S(z6,"TNode/2",255),y(358,1,dr,Dy),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(Pn(this.a),188).c},s.Ob=function(){return r9(this.a)},s.Qb=function(){MO(this.a)},S(z6,"TNode/2/1",358),y(1840,1,Ti,vke),s.pf=function(t,n){HBt(this,c(t,135),n)},S(N2,"FanProcessor",1840),y(327,22,{3:1,35:1,22:1,327:1,234:1},t5),s.Kf=function(){switch(this.g){case 0:return new o9e;case 1:return new vke;case 2:return new ZSe;case 3:return new JSe;case 4:return new t5e;case 5:return new n5e;default:throw V(new St(Mz+(this.f!=null?this.f:""+this.g)))}};var aW,lW,fW,hW,dW,ex,Iut=hn(N2,Mae,327,bn,wCt,TEt),Tut;y(1843,1,Ti,JSe),s.pf=function(t,n){Mxt(this,c(t,135),n)},s.a=0,S(N2,"LevelHeightProcessor",1843),y(1844,1,Yf,QSe),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return st(),s_(),n4},S(N2,"LevelHeightProcessor/1",1844),y(1841,1,Ti,ZSe),s.pf=function(t,n){Dkt(this,c(t,135),n)},s.a=0,S(N2,"NeighborsProcessor",1841),y(1842,1,Yf,e5e),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return st(),s_(),n4},S(N2,"NeighborsProcessor/1",1842),y(1845,1,Ti,t5e),s.pf=function(t,n){Pxt(this,c(t,135),n)},s.a=0,S(N2,"NodePositionProcessor",1845),y(1839,1,Ti,o9e),s.pf=function(t,n){X$t(this,c(t,135))},S(N2,"RootProcessor",1839),y(1846,1,Ti,n5e),s.pf=function(t,n){oAt(c(t,135))},S(N2,"Untreeifyer",1846);var yj,FP,jut,gW,tx,BP,bW,nx,ix,C4,$P,rx,Ad,s0e,Aut,pW,Gw,wW,u0e;y(851,1,ca,_Ce),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,zle),""),"Weighting of Nodes"),"Which weighting to use when computing a node order."),l0e),(yd(),Ai)),w0e),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Vle),""),"Search Order"),"Which search order to use when computing a spanning tree."),a0e),Ai),v0e),nt(Tt)))),IXe((new yCe,t))};var Out,a0e,Dut,l0e;S(WD,"MrTreeMetaDataProvider",851),y(994,1,ca,yCe),s.Qe=function(t){IXe(t)};var kut,f0e,Rut,xut,Lut,Nut,h0e,Fut,d0e,But,ox,g0e,$ut,b0e,Kut;S(WD,"MrTreeOptions",994),y(995,1,{},i5e),s.$e=function(){var t;return t=new yke,t},s._e=function(t){},S(WD,"MrTreeOptions/MrtreeFactory",995),y(480,22,{3:1,35:1,22:1,480:1},YZ);var mW,p0e,w0e=hn(WD,"OrderWeighting",480,bn,f6t,jEt),qut;y(425,22,{3:1,35:1,22:1,425:1},XZ);var m0e,vW,v0e=hn(WD,"TreeifyingOrder",425,bn,l6t,OEt),Hut;y(1459,1,Sc,fCe),s.Yf=function(t){return c(t,135),zut},s.pf=function(t,n){rTt(this,c(t,135),n)};var zut;S("org.eclipse.elk.alg.mrtree.p1treeify","DFSTreeifyer",1459),y(1460,1,Sc,hCe),s.Yf=function(t){return c(t,135),Vut},s.pf=function(t,n){qkt(this,c(t,135),n)};var Vut;S("org.eclipse.elk.alg.mrtree.p2order","NodeOrderer",1460),y(1461,1,Sc,lCe),s.Yf=function(t){return c(t,135),Gut},s.pf=function(t,n){oFt(this,c(t,135),n)},s.a=0;var Gut;S("org.eclipse.elk.alg.mrtree.p3place","NodePlacer",1461),y(1462,1,Sc,dCe),s.Yf=function(t){return c(t,135),Uut},s.pf=function(t,n){OOt(c(t,135),n)};var Uut;S("org.eclipse.elk.alg.mrtree.p4route","EdgeRouter",1462);var KP;y(495,22,{3:1,35:1,22:1,495:1,246:1,234:1},JZ),s.Kf=function(){return kHe(this)},s.Xf=function(){return kHe(this)};var cx,I4,y0e=hn(Gle,"RadialLayoutPhases",495,bn,h6t,AEt),Wut;y(1131,209,rb,Z9e),s.Ze=function(t,n){var i,r,o,u,a,l;if(i=LGe(this,t),Wt(n,"Radial layout",i.c.length),Be(Fe(Ke(t,(ow(),A0e))))||V8((r=new zM((Ap(),new Ip(t))),r)),l=W7t(t),ao(t,(w5(),KP),l),!l)throw V(new St("The given graph is not a tree!"));for(o=ge(Te(Ke(t,ax))),o==0&&(o=XGe(t)),ao(t,ax,o),a=new q(LGe(this,t));a.a0&&rHe((fn(n-1,t.length),t.charCodeAt(n-1)),MQe);)--n;if(r>=n)throw V(new St("The given string does not contain any numbers."));if(o=gw(t.substr(r,n-r),`,|;|\r| +`),o.length!=2)throw V(new St("Exactly two numbers are expected, "+o.length+" were found."));try{this.a=aw(uw(o[0])),this.b=aw(uw(o[1]))}catch(u){throw u=gi(u),Q(u,127)?(i=u,V(new St(CQe+i))):V(u)}},s.Ib=function(){return"("+this.a+","+this.b+")"},s.a=0,s.b=0;var ir=S(CT,"KVector",8);y(74,68,{3:1,4:1,20:1,28:1,52:1,14:1,68:1,15:1,74:1,414:1},ds,n9,qDe),s.Pc=function(){return wjt(this)},s.Jf=function(t){var n,i,r,o,u,a;r=gw(t,`,|;|\\(|\\)|\\[|\\]|\\{|\\}| | | +`),na(this);try{for(i=0,u=0,o=0,a=0;i0&&(u%2==0?o=aw(r[i]):a=aw(r[i]),u>0&&u%2!=0&&Cn(this,new $e(o,a)),++u),++i}catch(l){throw l=gi(l),Q(l,127)?(n=l,V(new St("The given string does not match the expected format for vectors."+n))):V(l)}},s.Ib=function(){var t,n,i;for(t=new lu("("),n=Mn(this,0);n.b!=n.d.c;)i=c(Pn(n),8),wn(t,i.a+","+i.b),n.b!=n.d.c&&(t.a+="; ");return(t.a+=")",t).a};var jpe=S(CT,"KVectorChain",74);y(248,22,{3:1,35:1,22:1,248:1},n5);var $W,px,wx,Pj,Mj,mx,Ape=hn(ua,"Alignment",248,bn,fCt,WEt),dlt;y(979,1,ca,ICe),s.Qe=function(t){EYe(t)};var Ope,KW,glt,Dpe,kpe,blt,Rpe,plt,wlt,xpe,Lpe,mlt;S(ua,"BoxLayouterOptions",979),y(980,1,{},X5e),s.$e=function(){var t;return t=new r6e,t},s._e=function(t){},S(ua,"BoxLayouterOptions/BoxFactory",980),y(291,22,{3:1,35:1,22:1,291:1},i5);var Cj,qW,Ij,Tj,jj,HW,zW=hn(ua,"ContentAlignment",291,bn,lCt,YEt),vlt;y(684,1,ca,VJ),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,_Ze),""),"Layout Algorithm"),"Select a specific layout algorithm."),(yd(),T4)),Re),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,EZe),""),"Resolved Layout Algorithm"),"Meta data associated with the selected algorithm."),Yl),xzt),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ele),""),"Alignment"),"Alignment of the selected node relative to other nodes; the exact meaning depends on the used algorithm."),Npe),Ai),Ape),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,D2),""),"Aspect Ratio"),"The desired aspect ratio of the drawing, that is the quotient of width by height."),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,pfe),""),"Bend Points"),"A fixed list of bend points for the edge. This is used by the 'Fixed Layout' algorithm to specify a pre-defined routing for an edge. The vector chain must include the source point, any bend points, and the target point, so it must have at least two points."),Yl),jpe),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,zD),""),"Content Alignment"),"Specifies how the content of a node are aligned. Each node can individually control the alignment of its contents. I.e. if a node should be aligned top left in its parent node, the parent node should specify that option."),Bpe),t3),zW),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,DT),""),"Debug Mode"),"Whether additional debug information shall be generated."),(Pt(),!1)),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Mle),""),oae),"Overall direction of edges: horizontal (right / left) or vertical (down / up)."),$pe),Ai),WP),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,AT),""),"Edge Routing"),"What kind of edge routing style should be applied for the content of a parent node. Algorithms may also set this option to single edges in order to mark them as splines. The bend point list of edges with this option set to SPLINES must be interpreted as control points for a piecewise cubic spline."),Hpe),Ai),iY),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,XD),""),"Expand Nodes"),"If active, nodes are expanded to fill the area of their parent."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,HD),""),"Hierarchy Handling"),"Determines whether separate layout runs are triggered for different compound nodes in a hierarchical graph. Setting a node's hierarchy handling to `INCLUDE_CHILDREN` will lay out that node and all of its descendants in a single layout run, until a descendant is encountered which has its hierarchy handling set to `SEPARATE_CHILDREN`. In general, `SEPARATE_CHILDREN` will ensure that a new layout run is triggered for a node with that setting. Including multiple levels of hierarchy in a single layout run may allow cross-hierarchical edges to be laid out properly. If the root node is set to `INHERIT` (or not set at all), the default behavior is `SEPARATE_CHILDREN`."),Upe),Ai),Dwe),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,N0),""),"Padding"),"The padding to be left to a parent element's border when placing child elements. This can also serve as an output option of a layout algorithm if node size calculation is setup appropriately."),iwe),Yl),Fde),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,PT),""),"Interactive"),"Whether the algorithm should be run in interactive mode for the content of a parent node. What this means exactly depends on how the specific algorithm interprets this option. Usually in the interactive mode algorithms try to modify the current layout as little as possible."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,iV),""),"interactive Layout"),"Whether the graph should be changeable interactively and by setting constraints"),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,N6),""),"Omit Node Micro Layout"),"Node micro layout comprises the computation of node dimensions (if requested), the placement of ports and their labels, and the placement of node labels. The functionality is implemented independent of any specific layout algorithm and shouldn't have any negative impact on the layout algorithm's performance itself. Yet, if any unforeseen behavior occurs, this option allows to deactivate the micro layout."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ez),""),"Port Constraints"),"Defines constraints of the position of the ports of a node."),uwe),Ai),xwe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,VD),""),"Position"),"The position of a node, port, or label. This is used by the 'Fixed Layout' algorithm to specify a pre-defined position."),Yl),ir),ui(ar,U(G(Dd,1),_e,175,0,[_b,Od]))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,ST),""),"Priority"),"Defines the priority of an object; its meaning depends on the specific layout algorithm and the context where it is used."),oc),$r),ui(ar,U(G(Dd,1),_e,175,0,[kf]))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,MD),""),"Randomization Seed"),"Seed used for pseudo-random number generators to control the layout algorithm. If the value is 0, the seed shall be determined pseudo-randomly (e.g. from the system time)."),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,L6),""),"Separate Connected Components"),"Whether each connected component should be processed separately."),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Rle),""),"Junction Points"),"This option is not used as option, but as output of the layout algorithms. It is attached to edges and determines the points where junction symbols should be drawn in order to represent hyperedges with orthogonal routing. Whether such points are computed depends on the chosen layout algorithm and edge routing style. The points are put into the vector chain with no specific order."),Ype),Yl),jpe),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Nle),""),"Comment Box"),"Whether the node should be regarded as a comment box instead of a regular node. In that case its placement should be similar to how labels are handled. Any edges incident to a comment box specify to which graph elements the comment is related."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Fle),""),"Hypernode"),"Whether the node should be handled as a hypernode."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,azt),""),"Label Manager"),"Label managers can shorten labels upon a layout algorithm's request."),Yl),$zt),ui(Tt,U(G(Dd,1),_e,175,0,[Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,$le),""),"Margins"),"Margins define additional space around the actual bounds of a graph element. For instance, ports or labels being placed on the outside of a node's border might introduce such a margin. The margin is used to guarantee non-overlap of other graph elements with those ports or labels."),Xpe),Yl),Nde),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,yle),""),"No Layout"),"No layout is done for the associated element. This is used to mark parts of a diagram to avoid their inclusion in the layout graph, or to mark parts of the layout graph to prevent layout engines from processing them. If you wish to exclude the contents of a compound node from automatic layout, while the node itself is still considered on its own layer, use the 'Fixed Layout' algorithm for that node."),!1),Dr),Qi),ui(ar,U(G(Dd,1),_e,175,0,[kf,_b,Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,SZe),""),"Scale Factor"),"The scaling factor to be applied to the corresponding node in recursive layout. It causes the corresponding node's size to be adjusted, and its ports and labels to be sized and placed accordingly after the layout of that node has been determined (and before the node itself and its siblings are arranged). The scaling is not reverted afterwards, so the resulting layout graph contains the adjusted size and position data. This option is currently not supported if 'Layout Hierarchy' is set."),1),To),mr),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,PZe),""),"Animate"),"Whether the shift from the old layout to the new computed layout shall be animated."),!0),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,MZe),""),"Animation Time Factor"),"Factor for computation of animation time. The higher the value, the longer the animation time. If the value is 0, the resulting time is always equal to the minimum defined by 'Minimal Animation Time'."),Ce(100)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,CZe),""),"Layout Ancestors"),"Whether the hierarchy levels on the path from the selected element to the root of the diagram shall be included in the layout process."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,IZe),""),"Maximal Animation Time"),"The maximal time for animations, in milliseconds."),Ce(4e3)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,TZe),""),"Minimal Animation Time"),"The minimal time for animations, in milliseconds."),Ce(400)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jZe),""),"Progress Bar"),"Whether a progress bar shall be displayed during layout computations."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,AZe),""),"Validate Graph"),"Whether the graph shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,OZe),""),"Validate Options"),"Whether layout options shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!0),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,DZe),""),"Zoom to Fit"),"Whether the zoom level shall be set to view the whole diagram after layout."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,bfe),"box"),"Box Layout Mode"),"Configures the packing mode used by the {@link BoxLayoutProvider}. If SIMPLE is not required (neither priorities are used nor the interactive mode), GROUP_DEC can improve the packing and decrease the area. GROUP_MIXED and GROUP_INC may, in very specific scenarios, work better."),Fpe),Ai),Kwe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ule),Hl),"Comment Comment Spacing"),"Spacing to be preserved between a comment box and other comment boxes connected to the same node. The space left between comment boxes of different nodes is controlled by the node-node spacing."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ale),Hl),"Comment Node Spacing"),"Spacing to be preserved between a node and its connected comment boxes. The space left between a node and the comments of another node is controlled by the node-node spacing."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,pz),Hl),"Components Spacing"),"Spacing to be preserved between pairs of connected components. This option is only relevant if 'separateConnectedComponents' is activated."),20),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,lle),Hl),"Edge Spacing"),"Spacing to be preserved between any two edges. Note that while this can somewhat easily be satisfied for the segments of orthogonally drawn edges, it is harder for general polylines or splines."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_z),Hl),"Edge Label Spacing"),"The minimal distance to be preserved between a label and the edge it is associated with. Note that the placement of a label is influenced by the 'edgelabels.placement' option."),2),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,fle),Hl),"Edge Node Spacing"),"Spacing to be preserved between nodes and edges."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,hle),Hl),"Label Spacing"),"Determines the amount of space to be left between two labels of the same graph element."),0),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ble),Hl),"Label Node Spacing"),"Spacing to be preserved between labels and the border of node they are associated with. Note that the placement of a label is influenced by the 'nodelabels.placement' option."),5),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,dle),Hl),"Horizontal spacing between Label and Port"),"Horizontal spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,gle),Hl),"Vertical spacing between Label and Port"),"Vertical spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_w),Hl),"Node Spacing"),"The minimal distance to be preserved between each two nodes."),20),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ple),Hl),"Node Self Loop Spacing"),"Spacing to be preserved between a node and its self loops."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,wle),Hl),"Port Spacing"),"Spacing between pairs of ports of the same node."),10),To),mr),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,mle),Hl),"Individual Spacing"),"Allows to specify individual spacing values for graph elements that shall be different from the value specified for the element's parent."),Yl),eft),ui(ar,U(G(Dd,1),_e,175,0,[kf,_b,Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Kle),Hl),"Additional Port Space"),"Additional space around the sets of ports on each node side. For each side of a node, this option can reserve additional space before and after the ports on each side. For example, a top spacing of 20 makes sure that the first port on the western and eastern side is 20 units away from the northern border."),mwe),Yl),Nde),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,nV),xZe),"Layout Partition"),"Partition to which the node belongs. This requires Layout Partitioning to be active. Nodes with lower partition IDs will appear to the left of nodes with higher partition IDs (assuming a left-to-right layout direction)."),oc),$r),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),pr(t,nV,tV,Ilt),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,tV),xZe),"Layout Partitioning"),"Whether to activate partitioned layout. This will allow to group nodes through the Layout Partition option. a pair of nodes with different partition indices is then placed such that the node with lower index is placed to the left of the other node (with left-to-right layout direction). Depending on the layout algorithm, this may only be guaranteed to work if all nodes have a layout partition configured, or at least if edges that cross partitions are not part of a partition-crossing cycle."),rwe),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Cle),LZe),"Node Label Padding"),"Define padding for node labels that are placed inside of a node."),Qpe),Yl),Fde),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qE),LZe),"Node Label Placement"),"Hints for where node labels are to be placed; if empty, the node label's position is not modified."),Zpe),t3),ro),ui(ar,U(G(Dd,1),_e,175,0,[Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jle),QD),"Port Alignment"),"Defines the default port distribution for a node. May be overridden for each side individually."),cwe),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Ale),QD),"Port Alignment (North)"),"Defines how ports on the northern side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Ole),QD),"Port Alignment (South)"),"Defines how ports on the southern side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Dle),QD),"Port Alignment (West)"),"Defines how ports on the western side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,kle),QD),"Port Alignment (East)"),"Defines how ports on the eastern side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,gv),EV),"Node Size Constraints"),"What should be taken into account when calculating a node's size. Empty size constraints specify that a node's size is already fixed and should not be changed."),ewe),t3),tM),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,k2),EV),"Node Size Options"),"Options modifying the behavior of the size constraints set on a node. Each member of the set specifies something that should be taken into account when calculating node sizes. The empty set corresponds to no further modifications."),nwe),t3),Nwe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,R2),EV),"Node Size Minimum"),"The minimal size to which a node can be reduced."),twe),Yl),ir),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,eV),EV),"Fixed Graph Size"),"By default, the fixed layout provider will enlarge a graph until it is large enough to contain its children. If this option is set, it won't do so."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xle),Zz),"Edge Label Placement"),"Gives a hint on where to put edge labels."),Kpe),Ai),ywe),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,CD),Zz),"Inline Edge Labels"),"If true, an edge label is placed directly on its edge. May only apply to center edge labels. This kind of label placement is only advisable if the label's rendering is such that it is not crossed by its edge and thus stays legible."),!1),Dr),Qi),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,lzt),"font"),"Font Name"),"Font name used for a label."),T4),Re),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,kZe),"font"),"Font Size"),"Font size used for a label."),oc),$r),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Ble),SV),"Port Anchor Offset"),"The offset to the port position where connections shall be attached."),Yl),ir),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Lle),SV),"Port Index"),"The index of a port in the fixed order around a node. The order is assumed as clockwise, starting with the leftmost port on the top side. This option must be set if 'Port Constraints' is set to FIXED_ORDER and no specific positions are given for the ports. Additionally, the option 'Port Side' must be defined in this case."),oc),$r),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_le),SV),"Port Side"),"The side of a node on which a port is situated. This option must be set if 'Port Constraints' is set to FIXED_SIDE or FIXED_ORDER and no specific positions are given for the ports."),fwe),Ai),Gr),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,vle),SV),"Port Border Offset"),"The offset of ports on the node border. With a positive offset the port is moved outside of the node, while with a negative offset the port is moved towards the inside. An offset of 0 means that the port is placed directly on the node border, i.e. if the port side is north, the port's south border touches the nodes's north border; if the port side is east, the port's west border touches the nodes's east border; if the port side is south, the port's north border touches the node's south border; if the port side is west, the port's east border touches the node's west border."),To),mr),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,HE),wfe),"Port Label Placement"),"Decides on a placement method for port labels; if empty, the node label's position is not modified."),awe),t3),Cx),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ile),wfe),"Port Labels Next to Port"),"Use 'portLabels.placement': NEXT_TO_PORT_OF_POSSIBLE."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Tle),wfe),"Treat Port Labels as Group"),"If this option is true (default), the labels of a port will be treated as a group when it comes to centering them next to their port. If this option is false, only the first label will be centered next to the port, with the others being placed below. This only applies to labels of eastern and western ports and will have no effect if labels are not placed next to their port."),!0),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Sle),NZe),"Activate Inside Self Loops"),"Whether this node allows to route self loops inside of it instead of around it. If set to true, this will make the node a compound node if it isn't already, and will require the layout algorithm to support compound nodes with hierarchical ports."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ple),NZe),"Inside Self Loop"),"Whether a self loop should be routed inside a node instead of around that node."),!1),Dr),Qi),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,wz),"edge"),"Edge Thickness"),"The thickness of an edge. This is a hint on the line width used to draw an edge, possibly requiring more space to be reserved for it."),1),To),mr),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,RZe),"edge"),"Edge Type"),"The type of an edge. This is usually used for UML class diagrams, where associations must be handled differently from generalizations."),Vpe),Ai),Cwe),nt(kf)))),VS(t,new i2(BS(i_(n_(new Ay,kt),"Layered"),'The layer-based method was introduced by Sugiyama, Tagawa and Toda in 1981. It emphasizes the direction of edges by pointing as many edges as possible into the same direction. The nodes are arranged in layers, which are sometimes called "hierarchies", and then reordered such that the number of edge crossings is minimized. Afterwards, concrete coordinates are computed for the nodes and edge bend points.'))),VS(t,new i2(BS(i_(n_(new Ay,"org.eclipse.elk.orthogonal"),"Orthogonal"),`Orthogonal methods that follow the "topology-shape-metrics" approach by Batini, Nardelli and Tamassia '86. The first phase determines the topology of the drawing by applying a planarization technique, which results in a planar representation of the graph. The orthogonal shape is computed in the second phase, which aims at minimizing the number of edge bends, and is called orthogonalization. The third phase leads to concrete coordinates for nodes and edge bend points by applying a compaction method, thus defining the metrics.`))),VS(t,new i2(BS(i_(n_(new Ay,_u),"Force"),"Layout algorithms that follow physical analogies by simulating a system of attractive and repulsive forces. The first successful method of this kind was proposed by Eades in 1984."))),VS(t,new i2(BS(i_(n_(new Ay,"org.eclipse.elk.circle"),"Circle"),"Circular layout algorithms emphasize cycles or biconnected components of a graph by arranging them in circles. This is useful if a drawing is desired where such components are clearly grouped, or where cycles are shown as prominent OPTIONS of the graph."))),VS(t,new i2(BS(i_(n_(new Ay,sZe),"Tree"),"Specialized layout methods for trees, i.e. acyclic graphs. The regular structure of graphs that have no undirected cycles can be emphasized using an algorithm of this type."))),VS(t,new i2(BS(i_(n_(new Ay,"org.eclipse.elk.planar"),"Planar"),"Algorithms that require a planar or upward planar graph. Most of these algorithms are theoretically interesting, but not practically usable."))),VS(t,new i2(BS(i_(n_(new Ay,Cf),"Radial"),"Radial layout algorithms usually position the nodes of the graph on concentric circles."))),sYe((new TCe,t)),EYe((new ICe,t)),NWe((new jCe,t))};var GP,ylt,Npe,n3,_lt,Elt,Fpe,Slt,vx,Bpe,Aj,rp,$pe,VW,GW,Kpe,qpe,Hpe,zpe,Vpe,Gpe,qv,Upe,Plt,Oj,UW,yx,Wpe,Hv,Ype,Dj,Xpe,Jpe,Qpe,zv,Zpe,Eb,ewe,_x,Vv,twe,G1,nwe,Ex,kj,Sb,iwe,Mlt,rwe,Clt,Ilt,owe,cwe,WW,YW,XW,JW,swe,zs,UP,uwe,QW,ZW,Uw,awe,lwe,Gv,fwe,i3,Sx,eY,j4,Tlt,tY,jlt,Alt,hwe,Olt,dwe,Dlt,r3,gwe,Px,bwe,pwe,Pb,klt,wwe,mwe,vwe;S(ua,"CoreOptions",684),y(103,22,{3:1,35:1,22:1,103:1},dC);var Vh,ga,Va,ih,Gh,WP=hn(ua,oae,103,bn,kMt,QEt),Rlt;y(272,22,{3:1,35:1,22:1,272:1},jF);var A4,Ww,O4,ywe=hn(ua,"EdgeLabelPlacement",272,bn,dPt,ZEt),xlt;y(218,22,{3:1,35:1,22:1,218:1},A9);var D4,Rj,o3,nY,iY=hn(ua,"EdgeRouting",218,bn,oMt,e4t),Llt;y(312,22,{3:1,35:1,22:1,312:1},r5);var _we,Ewe,Swe,Pwe,rY,Mwe,Cwe=hn(ua,"EdgeType",312,bn,vCt,t4t),Nlt;y(977,1,ca,TCe),s.Qe=function(t){sYe(t)};var Iwe,Twe,jwe,Awe,Flt,Owe,YP;S(ua,"FixedLayouterOptions",977),y(978,1,{},a6e),s.$e=function(){var t;return t=new n6e,t},s._e=function(t){},S(ua,"FixedLayouterOptions/FixedFactory",978),y(334,22,{3:1,35:1,22:1,334:1},AF);var kd,Mx,XP,Dwe=hn(ua,"HierarchyHandling",334,bn,hPt,n4t),Blt;y(285,22,{3:1,35:1,22:1,285:1},O9);var rh,U1,xj,Lj,$lt=hn(ua,"LabelSide",285,bn,rMt,i4t),Klt;y(93,22,{3:1,35:1,22:1,93:1},Mm);var Uh,Ga,ba,Ua,Mu,Wa,pa,oh,Ya,ro=hn(ua,"NodeLabelPlacement",93,bn,EIt,r4t),qlt;y(249,22,{3:1,35:1,22:1,249:1},gC);var kwe,JP,W1,Rwe,Nj,QP=hn(ua,"PortAlignment",249,bn,RMt,o4t),Hlt;y(98,22,{3:1,35:1,22:1,98:1},o5);var Mb,Ic,ch,k4,Xl,Y1,xwe=hn(ua,"PortConstraints",98,bn,nCt,c4t),zlt;y(273,22,{3:1,35:1,22:1,273:1},c5);var ZP,eM,Wh,Fj,X1,c3,Cx=hn(ua,"PortLabelPlacement",273,bn,mCt,s4t),Vlt;y(61,22,{3:1,35:1,22:1,61:1},bC);var jt,_t,Uu,Wu,os,Vc,Jl,Xa,Ds,Ss,Tc,ks,cs,ss,Ja,Cu,Iu,wa,Yt,Vo,Mt,Gr=hn(ua,"PortSide",61,bn,AMt,l4t),Glt;y(981,1,ca,jCe),s.Qe=function(t){NWe(t)};var Ult,Wlt,Lwe,Ylt,Xlt;S(ua,"RandomLayouterOptions",981),y(982,1,{},l6e),s.$e=function(){var t;return t=new d6e,t},s._e=function(t){},S(ua,"RandomLayouterOptions/RandomFactory",982),y(374,22,{3:1,35:1,22:1,374:1},D9);var Yw,Bj,$j,Cb,tM=hn(ua,"SizeConstraint",374,bn,iMt,u4t),Jlt;y(259,22,{3:1,35:1,22:1,259:1},Cm);var Kj,Ix,R4,oY,qj,nM,Tx,jx,Ax,Nwe=hn(ua,"SizeOptions",259,bn,jIt,a4t),Qlt;y(370,1,{1949:1},Z3),s.b=!1,s.c=0,s.d=-1,s.e=null,s.f=null,s.g=-1,s.j=!1,s.k=!1,s.n=!1,s.o=0,s.q=0,s.r=0,S(fc,"BasicProgressMonitor",370),y(972,209,rb,r6e),s.Ze=function(t,n){var i,r,o,u,a,l,d,p,v;Wt(n,"Box layout",2),o=WM(Te(Ke(t,(N7(),mlt)))),u=c(Ke(t,wlt),116),i=Be(Fe(Ke(t,Dpe))),r=Be(Fe(Ke(t,kpe))),c(Ke(t,KW),311).g===0?(a=(l=new ps((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a)),st(),cr(l,new vje(r)),l),d=Qce(t),p=Te(Ke(t,Ope)),(p==null||(yt(p),p<=0))&&(p=1.3),v=gHt(a,o,u,d.a,d.b,i,(yt(p),p)),k0(t,v.a,v.b,!1,!0)):lKt(t,o,u,i),qt(n)},S(fc,"BoxLayoutProvider",972),y(973,1,Zn,vje),s.ue=function(t,n){return DLt(this,c(t,33),c(n,33))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},s.a=!1,S(fc,"BoxLayoutProvider/1",973),y(157,1,{157:1},TO,KDe),s.Ib=function(){return this.c?Jse(this.c):C1(this.b)},S(fc,"BoxLayoutProvider/Group",157),y(311,22,{3:1,35:1,22:1,311:1},k9);var Fwe,Bwe,$we,cY,Kwe=hn(fc,"BoxLayoutProvider/PackingMode",311,bn,cMt,f4t),Zlt;y(974,1,Zn,o6e),s.ue=function(t,n){return x5t(c(t,157),c(n,157))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(fc,"BoxLayoutProvider/lambda$0$Type",974),y(975,1,Zn,c6e),s.ue=function(t,n){return T5t(c(t,157),c(n,157))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(fc,"BoxLayoutProvider/lambda$1$Type",975),y(976,1,Zn,s6e),s.ue=function(t,n){return j5t(c(t,157),c(n,157))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(fc,"BoxLayoutProvider/lambda$2$Type",976),y(1365,1,{831:1},u6e),s.qg=function(t,n){return g9(),!Q(n,160)||J9e((d2(),c(t,160)),n)},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$0$Type",1365),y(1366,1,Rt,yje),s.td=function(t){vjt(this.a,c(t,146))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$1$Type",1366),y(1367,1,Rt,i6e),s.td=function(t){c(t,94),g9()},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$2$Type",1367),y(1371,1,Rt,_je),s.td=function(t){zIt(this.a,c(t,94))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$3$Type",1371),y(1369,1,Rn,NOe),s.Mb=function(t){return ojt(this.a,this.b,c(t,146))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$4$Type",1369),y(1368,1,Rn,FOe),s.Mb=function(t){return E3t(this.a,this.b,c(t,831))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$5$Type",1368),y(1370,1,Rt,BOe),s.td=function(t){ESt(this.a,this.b,c(t,146))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$6$Type",1370),y(935,1,{},t6e),s.Kb=function(t){return B7e(t)},s.Fb=function(t){return this===t},S(fc,"ElkUtil/lambda$0$Type",935),y(936,1,Rt,$Oe),s.td=function(t){RRt(this.a,this.b,c(t,79))},s.a=0,s.b=0,S(fc,"ElkUtil/lambda$1$Type",936),y(937,1,Rt,KOe),s.td=function(t){Rvt(this.a,this.b,c(t,202))},s.a=0,s.b=0,S(fc,"ElkUtil/lambda$2$Type",937),y(938,1,Rt,qOe),s.td=function(t){M2t(this.a,this.b,c(t,137))},s.a=0,s.b=0,S(fc,"ElkUtil/lambda$3$Type",938),y(939,1,Rt,Eje),s.td=function(t){F4t(this.a,c(t,469))},S(fc,"ElkUtil/lambda$4$Type",939),y(342,1,{35:1,342:1},lvt),s.wd=function(t){return Z2t(this,c(t,236))},s.Fb=function(t){var n;return Q(t,342)?(n=c(t,342),this.a==n.a):!1},s.Hb=function(){return xi(this.a)},s.Ib=function(){return this.a+" (exclusive)"},s.a=0,S(fc,"ExclusiveBounds/ExclusiveLowerBound",342),y(1138,209,rb,n6e),s.Ze=function(t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et;for(Wt(n,"Fixed Layout",1),u=c(Ke(t,(kn(),qpe)),218),A=0,D=0,ne=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));ne.e!=ne.i.gc();){for(Y=c(Vt(ne),33),et=c(Ke(Y,(QO(),YP)),8),et&&(Cl(Y,et.a,et.b),c(Ke(Y,Twe),174).Hc((ou(),Yw))&&(L=c(Ke(Y,Awe),8),L.a>0&&L.b>0&&k0(Y,L.a,L.b,!0,!0))),A=g.Math.max(A,Y.i+Y.g),D=g.Math.max(D,Y.j+Y.f),p=new $t((!Y.n&&(Y.n=new Me(Lo,Y,1,7)),Y.n));p.e!=p.i.gc();)l=c(Vt(p),137),et=c(Ke(l,YP),8),et&&Cl(l,et.a,et.b),A=g.Math.max(A,Y.i+l.i+l.g),D=g.Math.max(D,Y.j+l.j+l.f);for(Pe=new $t((!Y.c&&(Y.c=new Me(Vs,Y,9,9)),Y.c));Pe.e!=Pe.i.gc();)for(be=c(Vt(Pe),118),et=c(Ke(be,YP),8),et&&Cl(be,et.a,et.b),Ae=Y.i+be.i,Ve=Y.j+be.j,A=g.Math.max(A,Ae+be.g),D=g.Math.max(D,Ve+be.f),d=new $t((!be.n&&(be.n=new Me(Lo,be,1,7)),be.n));d.e!=d.i.gc();)l=c(Vt(d),137),et=c(Ke(l,YP),8),et&&Cl(l,et.a,et.b),A=g.Math.max(A,Ae+l.i+l.g),D=g.Math.max(D,Ve+l.j+l.f);for(o=new Kt(Ht(Fh(Y).a.Kc(),new j));dn(o);)i=c(rn(o),79),v=QXe(i),A=g.Math.max(A,v.a),D=g.Math.max(D,v.b);for(r=new Kt(Ht(XI(Y).a.Kc(),new j));dn(r);)i=c(rn(r),79),yi(Uf(i))!=t&&(v=QXe(i),A=g.Math.max(A,v.a),D=g.Math.max(D,v.b))}if(u==(Lh(),D4))for(ie=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));ie.e!=ie.i.gc();)for(Y=c(Vt(ie),33),r=new Kt(Ht(Fh(Y).a.Kc(),new j));dn(r);)i=c(rn(r),79),a=OBt(i),a.b==0?ao(i,Hv,null):ao(i,Hv,a);Be(Fe(Ke(t,(QO(),jwe))))||(ue=c(Ke(t,Flt),116),z=A+ue.b+ue.c,N=D+ue.d+ue.a,k0(t,z,N,!0,!0)),qt(n)},S(fc,"FixedLayoutProvider",1138),y(373,134,{3:1,414:1,373:1,94:1,134:1},yN,b$e),s.Jf=function(t){var n,i,r,o,u,a,l,d,p;if(t)try{for(d=gw(t,";,;"),u=d,a=0,l=u.length;a>16&Ni|n^r<<16},s.Kc=function(){return new Sje(this)},s.Ib=function(){return this.a==null&&this.b==null?"pair(null,null)":this.a==null?"pair(null,"+Ro(this.b)+")":this.b==null?"pair("+Ro(this.a)+",null)":"pair("+Ro(this.a)+","+Ro(this.b)+")"},S(fc,"Pair",46),y(983,1,dr,Sje),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return!this.c&&(!this.b&&this.a.a!=null||this.a.b!=null)},s.Pb=function(){if(!this.c&&!this.b&&this.a.a!=null)return this.b=!0,this.a.a;if(!this.c&&this.a.b!=null)return this.c=!0,this.a.b;throw V(new tc)},s.Qb=function(){throw this.c&&this.a.b!=null?this.a.b=null:this.b&&this.a.a!=null&&(this.a.a=null),V(new hs)},s.b=!1,s.c=!1,S(fc,"Pair/1",983),y(448,1,{448:1},Zxe),s.Fb=function(t){return wc(this.a,c(t,448).a)&&wc(this.c,c(t,448).c)&&wc(this.d,c(t,448).d)&&wc(this.b,c(t,448).b)},s.Hb=function(){return ZO(U(G(xt,1),xe,1,5,[this.a,this.c,this.d,this.b]))},s.Ib=function(){return"("+this.a+zr+this.c+zr+this.d+zr+this.b+")"},S(fc,"Quadruple",448),y(1126,209,rb,d6e),s.Ze=function(t,n){var i,r,o,u,a;if(Wt(n,"Random Layout",1),(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i==0){qt(n);return}u=c(Ke(t,(Toe(),Ylt)),19),u&&u.a!=0?o=new cO(u.a):o=new jK,i=WM(Te(Ke(t,Ult))),a=WM(Te(Ke(t,Xlt))),r=c(Ke(t,Wlt),116),Vqt(t,o,i,a,r),qt(n)},S(fc,"RandomLayoutProvider",1126);var ift;y(553,1,{}),s.qf=function(){return new $e(this.f.i,this.f.j)},s.We=function(t){return MLe(t,(kn(),zs))?Ke(this.f,rft):Ke(this.f,t)},s.rf=function(){return new $e(this.f.g,this.f.f)},s.sf=function(){return this.g},s.Xe=function(t){return Fg(this.f,t)},s.tf=function(t){es(this.f,t.a),ts(this.f,t.b)},s.uf=function(t){p0(this.f,t.a),b0(this.f,t.b)},s.vf=function(t){this.g=t},s.g=0;var rft;S(U6,"ElkGraphAdapters/AbstractElkGraphElementAdapter",553),y(554,1,{839:1},qA),s.wf=function(){var t,n;if(!this.b)for(this.b=nO(R8(this.a).i),n=new $t(R8(this.a));n.e!=n.i.gc();)t=c(Vt(n),137),Ee(this.b,new GN(t));return this.b},s.b=null,S(U6,"ElkGraphAdapters/ElkEdgeAdapter",554),y(301,553,{},Ip),s.xf=function(){return Zze(this)},s.a=null,S(U6,"ElkGraphAdapters/ElkGraphAdapter",301),y(630,553,{181:1},GN),S(U6,"ElkGraphAdapters/ElkLabelAdapter",630),y(629,553,{680:1},VF),s.wf=function(){return U8t(this)},s.Af=function(){var t;return t=c(Ke(this.f,(kn(),Dj)),142),!t&&(t=new OS),t},s.Cf=function(){return W8t(this)},s.Ef=function(t){var n;n=new cB(t),ao(this.f,(kn(),Dj),n)},s.Ff=function(t){ao(this.f,(kn(),Sb),new Ste(t))},s.yf=function(){return this.d},s.zf=function(){var t,n;if(!this.a)for(this.a=new Se,n=new Kt(Ht(XI(c(this.f,33)).a.Kc(),new j));dn(n);)t=c(rn(n),79),Ee(this.a,new qA(t));return this.a},s.Bf=function(){var t,n;if(!this.c)for(this.c=new Se,n=new Kt(Ht(Fh(c(this.f,33)).a.Kc(),new j));dn(n);)t=c(rn(n),79),Ee(this.c,new qA(t));return this.c},s.Df=function(){return $8(c(this.f,33)).i!=0||Be(Fe(c(this.f,33).We((kn(),Oj))))},s.Gf=function(){FCt(this,(Ap(),ift))},s.a=null,s.b=null,s.c=null,s.d=null,s.e=null,S(U6,"ElkGraphAdapters/ElkNodeAdapter",629),y(1266,553,{838:1},Qje),s.wf=function(){return nOt(this)},s.zf=function(){var t,n;if(!this.a)for(this.a=Ff(c(this.f,118).xg().i),n=new $t(c(this.f,118).xg());n.e!=n.i.gc();)t=c(Vt(n),79),Ee(this.a,new qA(t));return this.a},s.Bf=function(){var t,n;if(!this.c)for(this.c=Ff(c(this.f,118).yg().i),n=new $t(c(this.f,118).yg());n.e!=n.i.gc();)t=c(Vt(n),79),Ee(this.c,new qA(t));return this.c},s.Hf=function(){return c(c(this.f,118).We((kn(),Gv)),61)},s.If=function(){var t,n,i,r,o,u,a,l;for(r=jl(c(this.f,118)),i=new $t(c(this.f,118).yg());i.e!=i.i.gc();)for(t=c(Vt(i),79),l=new $t((!t.c&&(t.c=new dt(Ut,t,5,8)),t.c));l.e!=l.i.gc();){if(a=c(Vt(l),82),Jp(Co(a),r))return!0;if(Co(a)==r&&Be(Fe(Ke(t,(kn(),UW)))))return!0}for(n=new $t(c(this.f,118).xg());n.e!=n.i.gc();)for(t=c(Vt(n),79),u=new $t((!t.b&&(t.b=new dt(Ut,t,4,7)),t.b));u.e!=u.i.gc();)if(o=c(Vt(u),82),Jp(Co(o),r))return!0;return!1},s.a=null,s.b=null,s.c=null,S(U6,"ElkGraphAdapters/ElkPortAdapter",1266),y(1267,1,Zn,g6e),s.ue=function(t,n){return PFt(c(t,118),c(n,118))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(U6,"ElkGraphAdapters/PortComparator",1267);var J1=pi(Hu,"EObject"),x4=pi(mv,$Ze),ma=pi(mv,KZe),Hj=pi(mv,qZe),zj=pi(mv,"ElkShape"),Ut=pi(mv,HZe),rr=pi(mv,mfe),mi=pi(mv,zZe),Vj=pi(Hu,VZe),iM=pi(Hu,"EFactory"),oft,sY=pi(Hu,GZe),ml=pi(Hu,"EPackage"),lr,cft,sft,Vwe,Ox,uft,Gwe,Uwe,Wwe,Q1,aft,lft,Lo=pi(mv,vfe),Ei=pi(mv,yfe),Vs=pi(mv,_fe);y(90,1,UZe),s.Jg=function(){return this.Kg(),null},s.Kg=function(){return null},s.Lg=function(){return this.Kg(),!1},s.Mg=function(){return!1},s.Ng=function(t){Bn(this,t)},S(F2,"BasicNotifierImpl",90),y(97,90,JZe),s.nh=function(){return Qs(this)},s.Og=function(t,n){return t},s.Pg=function(){throw V(new sn)},s.Qg=function(t){var n;return n=Xr(c(at(this.Tg(),this.Vg()),18)),this.eh().ih(this,n.n,n.f,t)},s.Rg=function(t,n){throw V(new sn)},s.Sg=function(t,n,i){return yu(this,t,n,i)},s.Tg=function(){var t;return this.Pg()&&(t=this.Pg().ck(),t)?t:this.zh()},s.Ug=function(){return Dq(this)},s.Vg=function(){throw V(new sn)},s.Wg=function(){var t,n;return n=this.ph().dk(),!n&&this.Pg().ik(n=(GS(),t=$ne(wf(this.Tg())),t==null?bY:new mC(this,t))),n},s.Xg=function(t,n){return t},s.Yg=function(t){var n;return n=t.Gj(),n?t.aj():di(this.Tg(),t)},s.Zg=function(){var t;return t=this.Pg(),t?t.fk():null},s.$g=function(){return this.Pg()?this.Pg().ck():null},s._g=function(t,n,i){return _7(this,t,n,i)},s.ah=function(t){return x_(this,t)},s.bh=function(t,n){return S$(this,t,n)},s.dh=function(){var t;return t=this.Pg(),!!t&&t.gk()},s.eh=function(){throw V(new sn)},s.fh=function(){return g7(this)},s.gh=function(t,n,i,r){return w2(this,t,n,r)},s.hh=function(t,n,i){var r;return r=c(at(this.Tg(),n),66),r.Nj().Qj(this,this.yh(),n-this.Ah(),t,i)},s.ih=function(t,n,i,r){return z8(this,t,n,r)},s.jh=function(t,n,i){var r;return r=c(at(this.Tg(),n),66),r.Nj().Rj(this,this.yh(),n-this.Ah(),t,i)},s.kh=function(){return!!this.Pg()&&!!this.Pg().ek()},s.lh=function(t){return HK(this,t)},s.mh=function(t){return qLe(this,t)},s.oh=function(t){return dXe(this,t)},s.ph=function(){throw V(new sn)},s.qh=function(){return this.Pg()?this.Pg().ek():null},s.rh=function(){return g7(this)},s.sh=function(t,n){Iq(this,t,n)},s.th=function(t){this.ph().hk(t)},s.uh=function(t){this.ph().kk(t)},s.vh=function(t){this.ph().jk(t)},s.wh=function(t,n){var i,r,o,u;return u=this.Zg(),u&&t&&(n=Fr(u.Vk(),this,n),u.Zk(this)),r=this.eh(),r&&((Wq(this,this.eh(),this.Vg()).Bb&Vr)!=0?(o=r.fh(),o&&(t?!u&&o.Zk(this):o.Yk(this))):(n=(i=this.Vg(),i>=0?this.Qg(n):this.eh().ih(this,-1-i,null,n)),n=this.Sg(null,-1,n))),this.uh(t),n},s.xh=function(t){var n,i,r,o,u,a,l,d;if(i=this.Tg(),u=di(i,t),n=this.Ah(),u>=n)return c(t,66).Nj().Uj(this,this.yh(),u-n);if(u<=-1)if(a=uv((vs(),Ir),i,t),a){if(Wr(),c(a,66).Oj()||(a=r2(wo(Ir,a))),o=(r=this.Yg(a),c(r>=0?this._g(r,!0,!0):j0(this,a,!0),153)),d=a.Zj(),d>1||d==-1)return c(c(o,215).hl(t,!1),76)}else throw V(new St(x1+t.ne()+PV));else if(t.$j())return r=this.Yg(t),c(r>=0?this._g(r,!1,!0):j0(this,t,!1),76);return l=new u7e(this,t),l},s.yh=function(){return Kie(this)},s.zh=function(){return(g1(),wt).S},s.Ah=function(){return Ft(this.zh())},s.Bh=function(t){Eq(this,t)},s.Ib=function(){return Ba(this)},S(mt,"BasicEObjectImpl",97);var fft;y(114,97,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1}),s.Ch=function(t){var n;return n=qie(this),n[t]},s.Dh=function(t,n){var i;i=qie(this),vi(i,t,n)},s.Eh=function(t){var n;n=qie(this),vi(n,t,null)},s.Jg=function(){return c(vt(this,4),126)},s.Kg=function(){throw V(new sn)},s.Lg=function(){return(this.Db&4)!=0},s.Pg=function(){throw V(new sn)},s.Fh=function(t){p2(this,2,t)},s.Rg=function(t,n){this.Db=n<<16|this.Db&255,this.Fh(t)},s.Tg=function(){return Xc(this)},s.Vg=function(){return this.Db>>16},s.Wg=function(){var t,n;return GS(),n=$ne(wf((t=c(vt(this,16),26),t||this.zh()))),n==null?bY:new mC(this,n)},s.Mg=function(){return(this.Db&1)==0},s.Zg=function(){return c(vt(this,128),1935)},s.$g=function(){return c(vt(this,16),26)},s.dh=function(){return(this.Db&32)!=0},s.eh=function(){return c(vt(this,2),49)},s.kh=function(){return(this.Db&64)!=0},s.ph=function(){throw V(new sn)},s.qh=function(){return c(vt(this,64),281)},s.th=function(t){p2(this,16,t)},s.uh=function(t){p2(this,128,t)},s.vh=function(t){p2(this,64,t)},s.yh=function(){return $c(this)},s.Db=0,S(mt,"MinimalEObjectImpl",114),y(115,114,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s.Fh=function(t){this.Cb=t},s.eh=function(){return this.Cb},S(mt,"MinimalEObjectImpl/Container",115),y(1985,115,{105:1,413:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return Zoe(this,t,n,i)},s.jh=function(t,n,i){return Kce(this,t,n,i)},s.lh=function(t){return Qne(this,t)},s.sh=function(t,n){Fre(this,t,n)},s.zh=function(){return xc(),lft},s.Bh=function(t){Ire(this,t)},s.Ve=function(){return yze(this)},s.We=function(t){return Ke(this,t)},s.Xe=function(t){return Fg(this,t)},s.Ye=function(t,n){return ao(this,t,n)},S(sb,"EMapPropertyHolderImpl",1985),y(567,115,{105:1,469:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},OA),s._g=function(t,n,i){switch(t){case 0:return this.a;case 1:return this.b}return _7(this,t,n,i)},s.lh=function(t){switch(t){case 0:return this.a!=0;case 1:return this.b!=0}return HK(this,t)},s.sh=function(t,n){switch(t){case 0:jO(this,ge(Te(n)));return;case 1:AO(this,ge(Te(n)));return}Iq(this,t,n)},s.zh=function(){return xc(),cft},s.Bh=function(t){switch(t){case 0:jO(this,0);return;case 1:AO(this,0);return}Eq(this,t)},s.Ib=function(){var t;return(this.Db&64)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (x: ",Sm(t,this.a),t.a+=", y: ",Sm(t,this.b),t.a+=")",t.a)},s.a=0,s.b=0,S(sb,"ElkBendPointImpl",567),y(723,1985,{105:1,413:1,160:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return ioe(this,t,n,i)},s.hh=function(t,n,i){return pq(this,t,n,i)},s.jh=function(t,n,i){return eK(this,t,n,i)},s.lh=function(t){return vre(this,t)},s.sh=function(t,n){mce(this,t,n)},s.zh=function(){return xc(),uft},s.Bh=function(t){Zre(this,t)},s.zg=function(){return this.k},s.Ag=function(){return R8(this)},s.Ib=function(){return IK(this)},s.k=null,S(sb,"ElkGraphElementImpl",723),y(724,723,{105:1,413:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return doe(this,t,n,i)},s.lh=function(t){return yoe(this,t)},s.sh=function(t,n){vce(this,t,n)},s.zh=function(){return xc(),aft},s.Bh=function(t){Moe(this,t)},s.Bg=function(){return this.f},s.Cg=function(){return this.g},s.Dg=function(){return this.i},s.Eg=function(){return this.j},s.Fg=function(t,n){K9(this,t,n)},s.Gg=function(t,n){Cl(this,t,n)},s.Hg=function(t){es(this,t)},s.Ig=function(t){ts(this,t)},s.Ib=function(){return _q(this)},s.f=0,s.g=0,s.i=0,s.j=0,S(sb,"ElkShapeImpl",724),y(725,724,{105:1,413:1,82:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return Uoe(this,t,n,i)},s.hh=function(t,n,i){return hce(this,t,n,i)},s.jh=function(t,n,i){return dce(this,t,n,i)},s.lh=function(t){return Lre(this,t)},s.sh=function(t,n){Ese(this,t,n)},s.zh=function(){return xc(),sft},s.Bh=function(t){Boe(this,t)},s.xg=function(){return!this.d&&(this.d=new dt(rr,this,8,5)),this.d},s.yg=function(){return!this.e&&(this.e=new dt(rr,this,7,4)),this.e},S(sb,"ElkConnectableShapeImpl",725),y(352,723,{105:1,413:1,79:1,160:1,352:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},$J),s.Qg=function(t){return uce(this,t)},s._g=function(t,n,i){switch(t){case 3:return KC(this);case 4:return!this.b&&(this.b=new dt(Ut,this,4,7)),this.b;case 5:return!this.c&&(this.c=new dt(Ut,this,5,8)),this.c;case 6:return!this.a&&(this.a=new Me(mi,this,6,6)),this.a;case 7:return Pt(),!this.b&&(this.b=new dt(Ut,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i<=1));case 8:return Pt(),!!b6(this);case 9:return Pt(),!!T0(this);case 10:return Pt(),!this.b&&(this.b=new dt(Ut,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i!=0)}return ioe(this,t,n,i)},s.hh=function(t,n,i){var r;switch(n){case 3:return this.Cb&&(i=(r=this.Db>>16,r>=0?uce(this,i):this.Cb.ih(this,-1-r,null,i))),tte(this,c(t,33),i);case 4:return!this.b&&(this.b=new dt(Ut,this,4,7)),Rc(this.b,t,i);case 5:return!this.c&&(this.c=new dt(Ut,this,5,8)),Rc(this.c,t,i);case 6:return!this.a&&(this.a=new Me(mi,this,6,6)),Rc(this.a,t,i)}return pq(this,t,n,i)},s.jh=function(t,n,i){switch(n){case 3:return tte(this,null,i);case 4:return!this.b&&(this.b=new dt(Ut,this,4,7)),Fr(this.b,t,i);case 5:return!this.c&&(this.c=new dt(Ut,this,5,8)),Fr(this.c,t,i);case 6:return!this.a&&(this.a=new Me(mi,this,6,6)),Fr(this.a,t,i)}return eK(this,t,n,i)},s.lh=function(t){switch(t){case 3:return!!KC(this);case 4:return!!this.b&&this.b.i!=0;case 5:return!!this.c&&this.c.i!=0;case 6:return!!this.a&&this.a.i!=0;case 7:return!this.b&&(this.b=new dt(Ut,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i<=1));case 8:return b6(this);case 9:return T0(this);case 10:return!this.b&&(this.b=new dt(Ut,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i!=0)}return vre(this,t)},s.sh=function(t,n){switch(t){case 3:Fq(this,c(n,33));return;case 4:!this.b&&(this.b=new dt(Ut,this,4,7)),Xt(this.b),!this.b&&(this.b=new dt(Ut,this,4,7)),Mi(this.b,c(n,14));return;case 5:!this.c&&(this.c=new dt(Ut,this,5,8)),Xt(this.c),!this.c&&(this.c=new dt(Ut,this,5,8)),Mi(this.c,c(n,14));return;case 6:!this.a&&(this.a=new Me(mi,this,6,6)),Xt(this.a),!this.a&&(this.a=new Me(mi,this,6,6)),Mi(this.a,c(n,14));return}mce(this,t,n)},s.zh=function(){return xc(),Vwe},s.Bh=function(t){switch(t){case 3:Fq(this,null);return;case 4:!this.b&&(this.b=new dt(Ut,this,4,7)),Xt(this.b);return;case 5:!this.c&&(this.c=new dt(Ut,this,5,8)),Xt(this.c);return;case 6:!this.a&&(this.a=new Me(mi,this,6,6)),Xt(this.a);return}Zre(this,t)},s.Ib=function(){return QYe(this)},S(sb,"ElkEdgeImpl",352),y(439,1985,{105:1,413:1,202:1,439:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},DA),s.Qg=function(t){return rce(this,t)},s._g=function(t,n,i){switch(t){case 1:return this.j;case 2:return this.k;case 3:return this.b;case 4:return this.c;case 5:return!this.a&&(this.a=new qi(ma,this,5)),this.a;case 6:return BLe(this);case 7:return n?WK(this):this.i;case 8:return n?UK(this):this.f;case 9:return!this.g&&(this.g=new dt(mi,this,9,10)),this.g;case 10:return!this.e&&(this.e=new dt(mi,this,10,9)),this.e;case 11:return this.d}return Zoe(this,t,n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 6:return this.Cb&&(i=(o=this.Db>>16,o>=0?rce(this,i):this.Cb.ih(this,-1-o,null,i))),nte(this,c(t,79),i);case 9:return!this.g&&(this.g=new dt(mi,this,9,10)),Rc(this.g,t,i);case 10:return!this.e&&(this.e=new dt(mi,this,10,9)),Rc(this.e,t,i)}return u=c(at((r=c(vt(this,16),26),r||(xc(),Ox)),n),66),u.Nj().Qj(this,$c(this),n-Ft((xc(),Ox)),t,i)},s.jh=function(t,n,i){switch(n){case 5:return!this.a&&(this.a=new qi(ma,this,5)),Fr(this.a,t,i);case 6:return nte(this,null,i);case 9:return!this.g&&(this.g=new dt(mi,this,9,10)),Fr(this.g,t,i);case 10:return!this.e&&(this.e=new dt(mi,this,10,9)),Fr(this.e,t,i)}return Kce(this,t,n,i)},s.lh=function(t){switch(t){case 1:return this.j!=0;case 2:return this.k!=0;case 3:return this.b!=0;case 4:return this.c!=0;case 5:return!!this.a&&this.a.i!=0;case 6:return!!BLe(this);case 7:return!!this.i;case 8:return!!this.f;case 9:return!!this.g&&this.g.i!=0;case 10:return!!this.e&&this.e.i!=0;case 11:return this.d!=null}return Qne(this,t)},s.sh=function(t,n){switch(t){case 1:K_(this,ge(Te(n)));return;case 2:H_(this,ge(Te(n)));return;case 3:$_(this,ge(Te(n)));return;case 4:q_(this,ge(Te(n)));return;case 5:!this.a&&(this.a=new qi(ma,this,5)),Xt(this.a),!this.a&&(this.a=new qi(ma,this,5)),Mi(this.a,c(n,14));return;case 6:ZUe(this,c(n,79));return;case 7:xO(this,c(n,82));return;case 8:RO(this,c(n,82));return;case 9:!this.g&&(this.g=new dt(mi,this,9,10)),Xt(this.g),!this.g&&(this.g=new dt(mi,this,9,10)),Mi(this.g,c(n,14));return;case 10:!this.e&&(this.e=new dt(mi,this,10,9)),Xt(this.e),!this.e&&(this.e=new dt(mi,this,10,9)),Mi(this.e,c(n,14));return;case 11:lre(this,ln(n));return}Fre(this,t,n)},s.zh=function(){return xc(),Ox},s.Bh=function(t){switch(t){case 1:K_(this,0);return;case 2:H_(this,0);return;case 3:$_(this,0);return;case 4:q_(this,0);return;case 5:!this.a&&(this.a=new qi(ma,this,5)),Xt(this.a);return;case 6:ZUe(this,null);return;case 7:xO(this,null);return;case 8:RO(this,null);return;case 9:!this.g&&(this.g=new dt(mi,this,9,10)),Xt(this.g);return;case 10:!this.e&&(this.e=new dt(mi,this,10,9)),Xt(this.e);return;case 11:lre(this,null);return}Ire(this,t)},s.Ib=function(){return wUe(this)},s.b=0,s.c=0,s.d=null,s.j=0,s.k=0,S(sb,"ElkEdgeSectionImpl",439),y(150,115,{105:1,92:1,90:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),s._g=function(t,n,i){var r;return t==0?(!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab):Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.hh=function(t,n,i){var r,o;return n==0?(!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i)):(o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Qj(this,$c(this),n-Ft(this.zh()),t,i))},s.jh=function(t,n,i){var r,o;return n==0?(!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i)):(o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i))},s.lh=function(t){var n;return t==0?!!this.Ab&&this.Ab.i!=0:xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.oh=function(t){return Aue(this,t)},s.sh=function(t,n){var i;if(t===0){!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.uh=function(t){p2(this,128,t)},s.zh=function(){return ot(),jft},s.Bh=function(t){var n;if(t===0){!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.Gh=function(){this.Bb|=1},s.Hh=function(t){return y6(this,t)},s.Bb=0,S(mt,"EModelElementImpl",150),y(704,150,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},GJ),s.Ih=function(t,n){return TXe(this,t,n)},s.Jh=function(t){var n,i,r,o,u;if(this.a!=bu(t)||(t.Bb&256)!=0)throw V(new St(CV+t.zb+K0));for(r=So(t);dc(r.a).i!=0;){if(i=c(sT(r,0,(n=c(ee(dc(r.a),0),87),u=n.c,Q(u,88)?c(u,26):(ot(),Ea))),26),I0(i))return o=bu(i).Nh().Jh(i),c(o,49).th(t),o;r=So(i)}return(t.D!=null?t.D:t.B)=="java.util.Map$Entry"?new SRe(t):new qte(t)},s.Kh=function(t,n){return R0(this,t,n)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.a}return Nu(this,t-Ft((ot(),ng)),at((r=c(vt(this,16),26),r||ng),t),n,i)},s.hh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 1:return this.a&&(i=c(this.a,49).ih(this,4,ml,i)),Jre(this,c(t,235),i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),ng)),n),66),o.Nj().Qj(this,$c(this),n-Ft((ot(),ng)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 1:return Jre(this,null,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),ng)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),ng)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return!!this.a}return xu(this,t-Ft((ot(),ng)),at((n=c(vt(this,16),26),n||ng),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:ZVe(this,c(n,235));return}qu(this,t-Ft((ot(),ng)),at((i=c(vt(this,16),26),i||ng),t),n)},s.zh=function(){return ot(),ng},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:ZVe(this,null);return}$u(this,t-Ft((ot(),ng)),at((n=c(vt(this,16),26),n||ng),t))};var rM,Ywe,hft;S(mt,"EFactoryImpl",704),y(Ka,704,{105:1,2014:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},p6e),s.Ih=function(t,n){switch(t.yj()){case 12:return c(n,146).tg();case 13:return Ro(n);default:throw V(new St(UE+t.ne()+K0))}},s.Jh=function(t){var n,i,r,o,u,a,l,d;switch(t.G==-1&&(t.G=(n=bu(t),n?wd(n.Mh(),t):-1)),t.G){case 4:return u=new KJ,u;case 6:return a=new VQ,a;case 7:return l=new GQ,l;case 8:return r=new $J,r;case 9:return i=new OA,i;case 10:return o=new DA,o;case 11:return d=new w6e,d;default:throw V(new St(CV+t.zb+K0))}},s.Kh=function(t,n){switch(t.yj()){case 13:case 12:return null;default:throw V(new St(UE+t.ne()+K0))}},S(sb,"ElkGraphFactoryImpl",Ka),y(438,150,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),s.Wg=function(){var t,n;return n=(t=c(vt(this,16),26),$ne(wf(t||this.zh()))),n==null?(GS(),GS(),bY):new zDe(this,n)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.ne()}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:this.Lh(ln(n));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),Aft},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:this.Lh(null);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.ne=function(){return this.zb},s.Lh=function(t){kc(this,t)},s.Ib=function(){return J5(this)},s.zb=null,S(mt,"ENamedElementImpl",438),y(179,438,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},PLe),s.Qg=function(t){return dVe(this,t)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.yb;case 3:return this.xb;case 4:return this.sb;case 5:return!this.rb&&(this.rb=new Kp(this,vl,this)),this.rb;case 6:return!this.vb&&(this.vb=new Uy(ml,this,6,7)),this.vb;case 7:return n?this.Db>>16==7?c(this.Cb,235):null:$Le(this)}return Nu(this,t-Ft((ot(),Nd)),at((r=c(vt(this,16),26),r||Nd),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 4:return this.sb&&(i=c(this.sb,49).ih(this,1,iM,i)),toe(this,c(t,471),i);case 5:return!this.rb&&(this.rb=new Kp(this,vl,this)),Rc(this.rb,t,i);case 6:return!this.vb&&(this.vb=new Uy(ml,this,6,7)),Rc(this.vb,t,i);case 7:return this.Cb&&(i=(o=this.Db>>16,o>=0?dVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,7,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),Nd)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),Nd)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 4:return toe(this,null,i);case 5:return!this.rb&&(this.rb=new Kp(this,vl,this)),Fr(this.rb,t,i);case 6:return!this.vb&&(this.vb=new Uy(ml,this,6,7)),Fr(this.vb,t,i);case 7:return yu(this,null,7,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),Nd)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),Nd)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.yb!=null;case 3:return this.xb!=null;case 4:return!!this.sb;case 5:return!!this.rb&&this.rb.i!=0;case 6:return!!this.vb&&this.vb.i!=0;case 7:return!!$Le(this)}return xu(this,t-Ft((ot(),Nd)),at((n=c(vt(this,16),26),n||Nd),t))},s.oh=function(t){var n;return n=GLt(this,t),n||Aue(this,t)},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:qO(this,ln(n));return;case 3:KO(this,ln(n));return;case 4:yq(this,c(n,471));return;case 5:!this.rb&&(this.rb=new Kp(this,vl,this)),Xt(this.rb),!this.rb&&(this.rb=new Kp(this,vl,this)),Mi(this.rb,c(n,14));return;case 6:!this.vb&&(this.vb=new Uy(ml,this,6,7)),Xt(this.vb),!this.vb&&(this.vb=new Uy(ml,this,6,7)),Mi(this.vb,c(n,14));return}qu(this,t-Ft((ot(),Nd)),at((i=c(vt(this,16),26),i||Nd),t),n)},s.vh=function(t){var n,i;if(t&&this.rb)for(i=new $t(this.rb);i.e!=i.i.gc();)n=Vt(i),Q(n,351)&&(c(n,351).w=null);p2(this,64,t)},s.zh=function(){return ot(),Nd},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:qO(this,null);return;case 3:KO(this,null);return;case 4:yq(this,null);return;case 5:!this.rb&&(this.rb=new Kp(this,vl,this)),Xt(this.rb);return;case 6:!this.vb&&(this.vb=new Uy(ml,this,6,7)),Xt(this.vb);return}$u(this,t-Ft((ot(),Nd)),at((n=c(vt(this,16),26),n||Nd),t))},s.Gh=function(){sq(this)},s.Mh=function(){return!this.rb&&(this.rb=new Kp(this,vl,this)),this.rb},s.Nh=function(){return this.sb},s.Oh=function(){return this.ub},s.Ph=function(){return this.xb},s.Qh=function(){return this.yb},s.Rh=function(t){this.ub=t},s.Ib=function(){var t;return(this.Db&64)!=0?J5(this):(t=new ea(J5(this)),t.a+=" (nsURI: ",co(t,this.yb),t.a+=", nsPrefix: ",co(t,this.xb),t.a+=")",t.a)},s.xb=null,s.yb=null,S(mt,"EPackageImpl",179),y(555,179,{105:1,2016:1,555:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},CUe),s.q=!1,s.r=!1;var dft=!1;S(sb,"ElkGraphPackageImpl",555),y(354,724,{105:1,413:1,160:1,137:1,470:1,354:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},KJ),s.Qg=function(t){return oce(this,t)},s._g=function(t,n,i){switch(t){case 7:return KLe(this);case 8:return this.a}return doe(this,t,n,i)},s.hh=function(t,n,i){var r;return n===7?(this.Cb&&(i=(r=this.Db>>16,r>=0?oce(this,i):this.Cb.ih(this,-1-r,null,i))),ine(this,c(t,160),i)):pq(this,t,n,i)},s.jh=function(t,n,i){return n==7?ine(this,null,i):eK(this,t,n,i)},s.lh=function(t){switch(t){case 7:return!!KLe(this);case 8:return!rt("",this.a)}return yoe(this,t)},s.sh=function(t,n){switch(t){case 7:Lse(this,c(n,160));return;case 8:ire(this,ln(n));return}vce(this,t,n)},s.zh=function(){return xc(),Gwe},s.Bh=function(t){switch(t){case 7:Lse(this,null);return;case 8:ire(this,"");return}Moe(this,t)},s.Ib=function(){return dGe(this)},s.a="",S(sb,"ElkLabelImpl",354),y(239,725,{105:1,413:1,82:1,160:1,33:1,470:1,239:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},VQ),s.Qg=function(t){return ace(this,t)},s._g=function(t,n,i){switch(t){case 9:return!this.c&&(this.c=new Me(Vs,this,9,9)),this.c;case 10:return!this.a&&(this.a=new Me(Ei,this,10,11)),this.a;case 11:return yi(this);case 12:return!this.b&&(this.b=new Me(rr,this,12,3)),this.b;case 13:return Pt(),!this.a&&(this.a=new Me(Ei,this,10,11)),this.a.i>0}return Uoe(this,t,n,i)},s.hh=function(t,n,i){var r;switch(n){case 9:return!this.c&&(this.c=new Me(Vs,this,9,9)),Rc(this.c,t,i);case 10:return!this.a&&(this.a=new Me(Ei,this,10,11)),Rc(this.a,t,i);case 11:return this.Cb&&(i=(r=this.Db>>16,r>=0?ace(this,i):this.Cb.ih(this,-1-r,null,i))),fte(this,c(t,33),i);case 12:return!this.b&&(this.b=new Me(rr,this,12,3)),Rc(this.b,t,i)}return hce(this,t,n,i)},s.jh=function(t,n,i){switch(n){case 9:return!this.c&&(this.c=new Me(Vs,this,9,9)),Fr(this.c,t,i);case 10:return!this.a&&(this.a=new Me(Ei,this,10,11)),Fr(this.a,t,i);case 11:return fte(this,null,i);case 12:return!this.b&&(this.b=new Me(rr,this,12,3)),Fr(this.b,t,i)}return dce(this,t,n,i)},s.lh=function(t){switch(t){case 9:return!!this.c&&this.c.i!=0;case 10:return!!this.a&&this.a.i!=0;case 11:return!!yi(this);case 12:return!!this.b&&this.b.i!=0;case 13:return!this.a&&(this.a=new Me(Ei,this,10,11)),this.a.i>0}return Lre(this,t)},s.sh=function(t,n){switch(t){case 9:!this.c&&(this.c=new Me(Vs,this,9,9)),Xt(this.c),!this.c&&(this.c=new Me(Vs,this,9,9)),Mi(this.c,c(n,14));return;case 10:!this.a&&(this.a=new Me(Ei,this,10,11)),Xt(this.a),!this.a&&(this.a=new Me(Ei,this,10,11)),Mi(this.a,c(n,14));return;case 11:kse(this,c(n,33));return;case 12:!this.b&&(this.b=new Me(rr,this,12,3)),Xt(this.b),!this.b&&(this.b=new Me(rr,this,12,3)),Mi(this.b,c(n,14));return}Ese(this,t,n)},s.zh=function(){return xc(),Uwe},s.Bh=function(t){switch(t){case 9:!this.c&&(this.c=new Me(Vs,this,9,9)),Xt(this.c);return;case 10:!this.a&&(this.a=new Me(Ei,this,10,11)),Xt(this.a);return;case 11:kse(this,null);return;case 12:!this.b&&(this.b=new Me(rr,this,12,3)),Xt(this.b);return}Boe(this,t)},s.Ib=function(){return Jse(this)},S(sb,"ElkNodeImpl",239),y(186,725,{105:1,413:1,82:1,160:1,118:1,470:1,186:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},GQ),s.Qg=function(t){return cce(this,t)},s._g=function(t,n,i){return t==9?jl(this):Uoe(this,t,n,i)},s.hh=function(t,n,i){var r;return n===9?(this.Cb&&(i=(r=this.Db>>16,r>=0?cce(this,i):this.Cb.ih(this,-1-r,null,i))),ite(this,c(t,33),i)):hce(this,t,n,i)},s.jh=function(t,n,i){return n==9?ite(this,null,i):dce(this,t,n,i)},s.lh=function(t){return t==9?!!jl(this):Lre(this,t)},s.sh=function(t,n){if(t===9){Dse(this,c(n,33));return}Ese(this,t,n)},s.zh=function(){return xc(),Wwe},s.Bh=function(t){if(t===9){Dse(this,null);return}Boe(this,t)},s.Ib=function(){return ZWe(this)},S(sb,"ElkPortImpl",186);var gft=pi(Br,"BasicEMap/Entry");y(1092,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,114:1,115:1},w6e),s.Fb=function(t){return this===t},s.cd=function(){return this.b},s.Hb=function(){return Xb(this)},s.Uh=function(t){rre(this,c(t,146))},s._g=function(t,n,i){switch(t){case 0:return this.b;case 1:return this.c}return _7(this,t,n,i)},s.lh=function(t){switch(t){case 0:return!!this.b;case 1:return this.c!=null}return HK(this,t)},s.sh=function(t,n){switch(t){case 0:rre(this,c(n,146));return;case 1:sre(this,n);return}Iq(this,t,n)},s.zh=function(){return xc(),Q1},s.Bh=function(t){switch(t){case 0:rre(this,null);return;case 1:sre(this,null);return}Eq(this,t)},s.Sh=function(){var t;return this.a==-1&&(t=this.b,this.a=t?fi(t):0),this.a},s.dd=function(){return this.c},s.Th=function(t){this.a=t},s.ed=function(t){var n;return n=this.c,sre(this,t),n},s.Ib=function(){var t;return(this.Db&64)!=0?Ba(this):(t=new n1,wn(wn(wn(t,this.b?this.b.tg():rs),Sz),g5(this.c)),t.a)},s.a=-1,s.c=null;var op=S(sb,"ElkPropertyToValueMapEntryImpl",1092);y(984,1,{},y6e),S(Cr,"JsonAdapter",984),y(210,60,$h,sf),S(Cr,"JsonImportException",210),y(857,1,{},gVe),S(Cr,"JsonImporter",857),y(891,1,{},HOe),S(Cr,"JsonImporter/lambda$0$Type",891),y(892,1,{},zOe),S(Cr,"JsonImporter/lambda$1$Type",892),y(900,1,{},Pje),S(Cr,"JsonImporter/lambda$10$Type",900),y(902,1,{},VOe),S(Cr,"JsonImporter/lambda$11$Type",902),y(903,1,{},GOe),S(Cr,"JsonImporter/lambda$12$Type",903),y(909,1,{},rLe),S(Cr,"JsonImporter/lambda$13$Type",909),y(908,1,{},iLe),S(Cr,"JsonImporter/lambda$14$Type",908),y(904,1,{},UOe),S(Cr,"JsonImporter/lambda$15$Type",904),y(905,1,{},WOe),S(Cr,"JsonImporter/lambda$16$Type",905),y(906,1,{},YOe),S(Cr,"JsonImporter/lambda$17$Type",906),y(907,1,{},XOe),S(Cr,"JsonImporter/lambda$18$Type",907),y(912,1,{},Mje),S(Cr,"JsonImporter/lambda$19$Type",912),y(893,1,{},Cje),S(Cr,"JsonImporter/lambda$2$Type",893),y(910,1,{},Ije),S(Cr,"JsonImporter/lambda$20$Type",910),y(911,1,{},Tje),S(Cr,"JsonImporter/lambda$21$Type",911),y(915,1,{},jje),S(Cr,"JsonImporter/lambda$22$Type",915),y(913,1,{},Aje),S(Cr,"JsonImporter/lambda$23$Type",913),y(914,1,{},Oje),S(Cr,"JsonImporter/lambda$24$Type",914),y(917,1,{},Dje),S(Cr,"JsonImporter/lambda$25$Type",917),y(916,1,{},kje),S(Cr,"JsonImporter/lambda$26$Type",916),y(918,1,Rt,JOe),s.td=function(t){_Ct(this.b,this.a,ln(t))},S(Cr,"JsonImporter/lambda$27$Type",918),y(919,1,Rt,QOe),s.td=function(t){ECt(this.b,this.a,ln(t))},S(Cr,"JsonImporter/lambda$28$Type",919),y(920,1,{},ZOe),S(Cr,"JsonImporter/lambda$29$Type",920),y(896,1,{},Rje),S(Cr,"JsonImporter/lambda$3$Type",896),y(921,1,{},e7e),S(Cr,"JsonImporter/lambda$30$Type",921),y(922,1,{},xje),S(Cr,"JsonImporter/lambda$31$Type",922),y(923,1,{},Lje),S(Cr,"JsonImporter/lambda$32$Type",923),y(924,1,{},Nje),S(Cr,"JsonImporter/lambda$33$Type",924),y(925,1,{},Fje),S(Cr,"JsonImporter/lambda$34$Type",925),y(859,1,{},Bje),S(Cr,"JsonImporter/lambda$35$Type",859),y(929,1,{},Yke),S(Cr,"JsonImporter/lambda$36$Type",929),y(926,1,Rt,$je),s.td=function(t){MMt(this.a,c(t,469))},S(Cr,"JsonImporter/lambda$37$Type",926),y(927,1,Rt,c7e),s.td=function(t){Zyt(this.a,this.b,c(t,202))},S(Cr,"JsonImporter/lambda$38$Type",927),y(928,1,Rt,s7e),s.td=function(t){e2t(this.a,this.b,c(t,202))},S(Cr,"JsonImporter/lambda$39$Type",928),y(894,1,{},Kje),S(Cr,"JsonImporter/lambda$4$Type",894),y(930,1,Rt,qje),s.td=function(t){CMt(this.a,c(t,8))},S(Cr,"JsonImporter/lambda$40$Type",930),y(895,1,{},Hje),S(Cr,"JsonImporter/lambda$5$Type",895),y(899,1,{},zje),S(Cr,"JsonImporter/lambda$6$Type",899),y(897,1,{},Vje),S(Cr,"JsonImporter/lambda$7$Type",897),y(898,1,{},Gje),S(Cr,"JsonImporter/lambda$8$Type",898),y(901,1,{},Uje),S(Cr,"JsonImporter/lambda$9$Type",901),y(948,1,Rt,Wje),s.td=function(t){Zy(this.a,new qp(ln(t)))},S(Cr,"JsonMetaDataConverter/lambda$0$Type",948),y(949,1,Rt,Yje),s.td=function(t){qSt(this.a,c(t,237))},S(Cr,"JsonMetaDataConverter/lambda$1$Type",949),y(950,1,Rt,Xje),s.td=function(t){B6t(this.a,c(t,149))},S(Cr,"JsonMetaDataConverter/lambda$2$Type",950),y(951,1,Rt,Jje),s.td=function(t){HSt(this.a,c(t,175))},S(Cr,"JsonMetaDataConverter/lambda$3$Type",951),y(237,22,{3:1,35:1,22:1,237:1},Hy);var Dx,kx,uY,Rx,xx,Lx,aY,lY,Nx=hn(_T,"GraphFeature",237,bn,fIt,d4t),bft;y(13,1,{35:1,146:1},hi,Wi,ut,Yr),s.wd=function(t){return Q2t(this,c(t,146))},s.Fb=function(t){return MLe(this,t)},s.wg=function(){return Le(this)},s.tg=function(){return this.b},s.Hb=function(){return md(this.b)},s.Ib=function(){return this.b},S(_T,"Property",13),y(818,1,Zn,PQ),s.ue=function(t,n){return pAt(this,c(t,94),c(n,94))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_T,"PropertyHolderComparator",818),y(695,1,dr,MQ),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return CCt(this)},s.Qb=function(){z9e()},s.Ob=function(){return!!this.a},S(nk,"ElkGraphUtil/AncestorIterator",695);var Xwe=pi(Br,"EList");y(67,52,{20:1,28:1,52:1,14:1,15:1,67:1,58:1}),s.Vc=function(t,n){e6(this,t,n)},s.Fc=function(t){return on(this,t)},s.Wc=function(t,n){return Tre(this,t,n)},s.Gc=function(t){return Mi(this,t)},s.Zh=function(){return new Gy(this)},s.$h=function(){return new vC(this)},s._h=function(t){return lI(this,t)},s.ai=function(){return!0},s.bi=function(t,n){},s.ci=function(){},s.di=function(t,n){M$(this,t,n)},s.ei=function(t,n,i){},s.fi=function(t,n){},s.gi=function(t,n,i){},s.Fb=function(t){return BWe(this,t)},s.Hb=function(){return Sre(this)},s.hi=function(){return!1},s.Kc=function(){return new $t(this)},s.Yc=function(){return new Vy(this)},s.Zc=function(t){var n;if(n=this.gc(),t<0||t>n)throw V(new Fp(t,n));return new AB(this,t)},s.ji=function(t,n){this.ii(t,this.Xc(n))},s.Mc=function(t){return _O(this,t)},s.li=function(t,n){return n},s._c=function(t,n){return Wm(this,t,n)},s.Ib=function(){return boe(this)},s.ni=function(){return!0},s.oi=function(t,n){return tE(this,n)},S(Br,"AbstractEList",67),y(63,67,Tf,RA,d0,bre),s.Vh=function(t,n){return wq(this,t,n)},s.Wh=function(t){return Kze(this,t)},s.Xh=function(t,n){MI(this,t,n)},s.Yh=function(t){UC(this,t)},s.pi=function(t){return Lie(this,t)},s.$b=function(){B5(this)},s.Hc=function(t){return pE(this,t)},s.Xb=function(t){return ee(this,t)},s.qi=function(t){var n,i,r;++this.j,i=this.g==null?0:this.g.length,t>i&&(r=this.g,n=i+(i/2|0)+4,n=0?(this.$c(n),!0):!1},s.mi=function(t,n){return this.Ui(t,this.oi(t,n))},s.gc=function(){return this.Vi()},s.Pc=function(){return this.Wi()},s.Qc=function(t){return this.Xi(t)},s.Ib=function(){return this.Yi()},S(Br,"DelegatingEList",1995),y(1996,1995,Net),s.Vh=function(t,n){return cue(this,t,n)},s.Wh=function(t){return this.Vh(this.Vi(),t)},s.Xh=function(t,n){PUe(this,t,n)},s.Yh=function(t){bUe(this,t)},s.ai=function(){return!this.bj()},s.$b=function(){C6(this)},s.Zi=function(t,n,i,r,o){return new ILe(this,t,n,i,r,o)},s.$i=function(t){Bn(this.Ai(),t)},s._i=function(){return null},s.aj=function(){return-1},s.Ai=function(){return null},s.bj=function(){return!1},s.cj=function(t,n){return n},s.dj=function(t,n){return n},s.ej=function(){return!1},s.fj=function(){return!this.Ri()},s.ii=function(t,n){var i,r;return this.ej()?(r=this.fj(),i=Fce(this,t,n),this.$i(this.Zi(7,Ce(n),i,t,r)),i):Fce(this,t,n)},s.$c=function(t){var n,i,r,o;return this.ej()?(i=null,r=this.fj(),n=this.Zi(4,o=g8(this,t),null,t,r),this.bj()&&o?(i=this.dj(o,i),i?(i.Ei(n),i.Fi()):this.$i(n)):i?(i.Ei(n),i.Fi()):this.$i(n),o):(o=g8(this,t),this.bj()&&o&&(i=this.dj(o,null),i&&i.Fi()),o)},s.mi=function(t,n){return DYe(this,t,n)},S(F2,"DelegatingNotifyingListImpl",1996),y(143,1,xT),s.Ei=function(t){return Mce(this,t)},s.Fi=function(){R$(this)},s.xi=function(){return this.d},s._i=function(){return null},s.gj=function(){return null},s.yi=function(t){return-1},s.zi=function(){return mWe(this)},s.Ai=function(){return null},s.Bi=function(){return Kse(this)},s.Ci=function(){return this.o<0?this.o<-2?-2-this.o-1:-1:this.o},s.hj=function(){return!1},s.Di=function(t){var n,i,r,o,u,a,l,d,p,v,A;switch(this.d){case 1:case 2:switch(o=t.xi(),o){case 1:case 2:if(u=t.Ai(),le(u)===le(this.Ai())&&this.yi(null)==t.yi(null))return this.g=t.zi(),t.xi()==1&&(this.d=1),!0}case 4:{switch(o=t.xi(),o){case 4:{if(u=t.Ai(),le(u)===le(this.Ai())&&this.yi(null)==t.yi(null))return p=Sue(this),d=this.o<0?this.o<-2?-2-this.o-1:-1:this.o,a=t.Ci(),this.d=6,A=new d0(2),d<=a?(on(A,this.n),on(A,t.Bi()),this.g=U(G(Qt,1),_n,25,15,[this.o=d,a+1])):(on(A,t.Bi()),on(A,this.n),this.g=U(G(Qt,1),_n,25,15,[this.o=a,d])),this.n=A,p||(this.o=-2-this.o-1),!0;break}}break}case 6:{switch(o=t.xi(),o){case 4:{if(u=t.Ai(),le(u)===le(this.Ai())&&this.yi(null)==t.yi(null)){for(p=Sue(this),a=t.Ci(),v=c(this.g,48),r=oe(Qt,_n,25,v.length+1,15,1),n=0;n>>0,n.toString(16))),r.a+=" (eventType: ",this.d){case 1:{r.a+="SET";break}case 2:{r.a+="UNSET";break}case 3:{r.a+="ADD";break}case 5:{r.a+="ADD_MANY";break}case 4:{r.a+="REMOVE";break}case 6:{r.a+="REMOVE_MANY";break}case 7:{r.a+="MOVE";break}case 8:{r.a+="REMOVING_ADAPTER";break}case 9:{r.a+="RESOLVE";break}default:{ZN(r,this.d);break}}if(cYe(this)&&(r.a+=", touch: true"),r.a+=", position: ",ZN(r,this.o<0?this.o<-2?-2-this.o-1:-1:this.o),r.a+=", notifier: ",u5(r,this.Ai()),r.a+=", feature: ",u5(r,this._i()),r.a+=", oldValue: ",u5(r,Kse(this)),r.a+=", newValue: ",this.d==6&&Q(this.g,48)){for(i=c(this.g,48),r.a+="[",t=0;t10?((!this.b||this.c.j!=this.a)&&(this.b=new _5(this),this.a=this.j),_h(this.b,t)):pE(this,t)},s.ni=function(){return!0},s.a=0,S(Br,"AbstractEList/1",953),y(295,73,UH,Fp),S(Br,"AbstractEList/BasicIndexOutOfBoundsException",295),y(40,1,dr,$t),s.Nb=function(t){Sr(this,t)},s.mj=function(){if(this.i.j!=this.f)throw V(new Ou)},s.nj=function(){return Vt(this)},s.Ob=function(){return this.e!=this.i.gc()},s.Pb=function(){return this.nj()},s.Qb=function(){l6(this)},s.e=0,s.f=0,s.g=-1,S(Br,"AbstractEList/EIterator",40),y(278,40,Wf,Vy,AB),s.Qb=function(){l6(this)},s.Rb=function(t){HHe(this,t)},s.oj=function(){var t;try{return t=this.d.Xb(--this.e),this.mj(),this.g=this.e,t}catch(n){throw n=gi(n),Q(n,73)?(this.mj(),V(new tc)):V(n)}},s.pj=function(t){zze(this,t)},s.Sb=function(){return this.e!=0},s.Tb=function(){return this.e},s.Ub=function(){return this.oj()},s.Vb=function(){return this.e-1},s.Wb=function(t){this.pj(t)},S(Br,"AbstractEList/EListIterator",278),y(341,40,dr,Gy),s.nj=function(){return zK(this)},s.Qb=function(){throw V(new sn)},S(Br,"AbstractEList/NonResolvingEIterator",341),y(385,278,Wf,vC,mte),s.Rb=function(t){throw V(new sn)},s.nj=function(){var t;try{return t=this.c.ki(this.e),this.mj(),this.g=this.e++,t}catch(n){throw n=gi(n),Q(n,73)?(this.mj(),V(new tc)):V(n)}},s.oj=function(){var t;try{return t=this.c.ki(--this.e),this.mj(),this.g=this.e,t}catch(n){throw n=gi(n),Q(n,73)?(this.mj(),V(new tc)):V(n)}},s.Qb=function(){throw V(new sn)},s.Wb=function(t){throw V(new sn)},S(Br,"AbstractEList/NonResolvingEListIterator",385),y(1982,67,Fet),s.Vh=function(t,n){var i,r,o,u,a,l,d,p,v,A,D;if(o=n.gc(),o!=0){for(p=c(vt(this.a,4),126),v=p==null?0:p.length,D=v+o,r=hK(this,D),A=v-t,A>0&&bc(p,t,r,t+o,A),d=n.Kc(),a=0;ai)throw V(new Fp(t,i));return new Fxe(this,t)},s.$b=function(){var t,n;++this.j,t=c(vt(this.a,4),126),n=t==null?0:t.length,hE(this,null),M$(this,n,t)},s.Hc=function(t){var n,i,r,o,u;if(n=c(vt(this.a,4),126),n!=null){if(t!=null){for(r=n,o=0,u=r.length;o=i)throw V(new Fp(t,i));return n[t]},s.Xc=function(t){var n,i,r;if(n=c(vt(this.a,4),126),n!=null){if(t!=null){for(i=0,r=n.length;ii)throw V(new Fp(t,i));return new Nxe(this,t)},s.ii=function(t,n){var i,r,o;if(i=JHe(this),o=i==null?0:i.length,t>=o)throw V(new ho(xV+t+ub+o));if(n>=o)throw V(new ho(LV+n+ub+o));return r=i[n],t!=n&&(t0&&bc(t,0,n,0,i),n},s.Qc=function(t){var n,i,r;return n=c(vt(this.a,4),126),r=n==null?0:n.length,r>0&&(t.lengthr&&vi(t,r,null),t};var pft;S(Br,"ArrayDelegatingEList",1982),y(1038,40,dr,UFe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},s.Qb=function(){l6(this),this.a=c(vt(this.b.a,4),126)},S(Br,"ArrayDelegatingEList/EIterator",1038),y(706,278,Wf,sxe,Nxe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},s.pj=function(t){zze(this,t),this.a=c(vt(this.b.a,4),126)},s.Qb=function(){l6(this),this.a=c(vt(this.b.a,4),126)},S(Br,"ArrayDelegatingEList/EListIterator",706),y(1039,341,dr,WFe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},S(Br,"ArrayDelegatingEList/NonResolvingEIterator",1039),y(707,385,Wf,uxe,Fxe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},S(Br,"ArrayDelegatingEList/NonResolvingEListIterator",707),y(606,295,UH,kF),S(Br,"BasicEList/BasicIndexOutOfBoundsException",606),y(696,63,Tf,iee),s.Vc=function(t,n){throw V(new sn)},s.Fc=function(t){throw V(new sn)},s.Wc=function(t,n){throw V(new sn)},s.Gc=function(t){throw V(new sn)},s.$b=function(){throw V(new sn)},s.qi=function(t){throw V(new sn)},s.Kc=function(){return this.Zh()},s.Yc=function(){return this.$h()},s.Zc=function(t){return this._h(t)},s.ii=function(t,n){throw V(new sn)},s.ji=function(t,n){throw V(new sn)},s.$c=function(t){throw V(new sn)},s.Mc=function(t){throw V(new sn)},s._c=function(t,n){throw V(new sn)},S(Br,"BasicEList/UnmodifiableEList",696),y(705,1,{3:1,20:1,14:1,15:1,58:1,589:1}),s.Vc=function(t,n){q2t(this,t,c(n,42))},s.Fc=function(t){return T3t(this,c(t,42))},s.Jc=function(t){Mr(this,t)},s.Xb=function(t){return c(ee(this.c,t),133)},s.ii=function(t,n){return c(this.c.ii(t,n),42)},s.ji=function(t,n){H2t(this,t,c(n,42))},s.Lc=function(){return new ht(null,new bt(this,16))},s.$c=function(t){return c(this.c.$c(t),42)},s._c=function(t,n){return LSt(this,t,c(n,42))},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.Oc=function(){return new ht(null,new bt(this,16))},s.Wc=function(t,n){return this.c.Wc(t,n)},s.Gc=function(t){return this.c.Gc(t)},s.$b=function(){this.c.$b()},s.Hc=function(t){return this.c.Hc(t)},s.Ic=function(t){return bI(this.c,t)},s.qj=function(){var t,n,i;if(this.d==null){for(this.d=oe(Jwe,Bfe,63,2*this.f+1,0,1),i=this.e,this.f=0,n=this.c.Kc();n.e!=n.i.gc();)t=c(n.nj(),133),P7(this,t);this.e=i}},s.Fb=function(t){return kke(this,t)},s.Hb=function(){return Sre(this.c)},s.Xc=function(t){return this.c.Xc(t)},s.rj=function(){this.c=new Zje(this)},s.dc=function(){return this.f==0},s.Kc=function(){return this.c.Kc()},s.Yc=function(){return this.c.Yc()},s.Zc=function(t){return this.c.Zc(t)},s.sj=function(){return XC(this)},s.tj=function(t,n,i){return new Xke(t,n,i)},s.uj=function(){return new P6e},s.Mc=function(t){return hKe(this,t)},s.gc=function(){return this.f},s.bd=function(t,n){return new Hf(this.c,t,n)},s.Pc=function(){return this.c.Pc()},s.Qc=function(t){return this.c.Qc(t)},s.Ib=function(){return boe(this.c)},s.e=0,s.f=0,S(Br,"BasicEMap",705),y(1033,63,Tf,Zje),s.bi=function(t,n){Mvt(this,c(n,133))},s.ei=function(t,n,i){var r;++(r=this,c(n,133),r).a.e},s.fi=function(t,n){Cvt(this,c(n,133))},s.gi=function(t,n,i){b3t(this,c(n,133),c(i,133))},s.di=function(t,n){nqe(this.a)},S(Br,"BasicEMap/1",1033),y(1034,63,Tf,P6e),s.ri=function(t){return oe(Nzt,Bet,612,t,0,1)},S(Br,"BasicEMap/2",1034),y(1035,Kl,ys,eAe),s.$b=function(){this.a.c.$b()},s.Hc=function(t){return xK(this.a,t)},s.Kc=function(){return this.a.f==0?(p_(),Wj.a):new x9e(this.a)},s.Mc=function(t){var n;return n=this.a.f,d7(this.a,t),this.a.f!=n},s.gc=function(){return this.a.f},S(Br,"BasicEMap/3",1035),y(1036,28,ww,tAe),s.$b=function(){this.a.c.$b()},s.Hc=function(t){return $We(this.a,t)},s.Kc=function(){return this.a.f==0?(p_(),Wj.a):new L9e(this.a)},s.gc=function(){return this.a.f},S(Br,"BasicEMap/4",1036),y(1037,Kl,ys,nAe),s.$b=function(){this.a.c.$b()},s.Hc=function(t){var n,i,r,o,u,a,l,d,p;if(this.a.f>0&&Q(t,42)&&(this.a.qj(),d=c(t,42),l=d.cd(),o=l==null?0:fi(l),u=rte(this.a,o),n=this.a.d[u],n)){for(i=c(n.g,367),p=n.i,a=0;a"+this.c},s.a=0;var Nzt=S(Br,"BasicEMap/EntryImpl",612);y(536,1,{},kA),S(Br,"BasicEMap/View",536);var Wj;y(768,1,{}),s.Fb=function(t){return Sse((st(),Qr),t)},s.Hb=function(){return xre((st(),Qr))},s.Ib=function(){return C1((st(),Qr))},S(Br,"ECollections/BasicEmptyUnmodifiableEList",768),y(1312,1,Wf,M6e),s.Nb=function(t){Sr(this,t)},s.Rb=function(t){throw V(new sn)},s.Ob=function(){return!1},s.Sb=function(){return!1},s.Pb=function(){throw V(new tc)},s.Tb=function(){return 0},s.Ub=function(){throw V(new tc)},s.Vb=function(){return-1},s.Qb=function(){throw V(new sn)},s.Wb=function(t){throw V(new sn)},S(Br,"ECollections/BasicEmptyUnmodifiableEList/1",1312),y(1310,768,{20:1,14:1,15:1,58:1},GAe),s.Vc=function(t,n){i8e()},s.Fc=function(t){return r8e()},s.Wc=function(t,n){return o8e()},s.Gc=function(t){return c8e()},s.$b=function(){s8e()},s.Hc=function(t){return!1},s.Ic=function(t){return!1},s.Jc=function(t){Mr(this,t)},s.Xb=function(t){return cee((st(),t)),null},s.Xc=function(t){return-1},s.dc=function(){return!0},s.Kc=function(){return this.a},s.Yc=function(){return this.a},s.Zc=function(t){return this.a},s.ii=function(t,n){return u8e()},s.ji=function(t,n){a8e()},s.Lc=function(){return new ht(null,new bt(this,16))},s.$c=function(t){return l8e()},s.Mc=function(t){return f8e()},s._c=function(t,n){return h8e()},s.gc=function(){return 0},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.Oc=function(){return new ht(null,new bt(this,16))},s.bd=function(t,n){return st(),new Hf(Qr,t,n)},s.Pc=function(){return cne((st(),Qr))},s.Qc=function(t){return st(),RI(Qr,t)},S(Br,"ECollections/EmptyUnmodifiableEList",1310),y(1311,768,{20:1,14:1,15:1,58:1,589:1},UAe),s.Vc=function(t,n){i8e()},s.Fc=function(t){return r8e()},s.Wc=function(t,n){return o8e()},s.Gc=function(t){return c8e()},s.$b=function(){s8e()},s.Hc=function(t){return!1},s.Ic=function(t){return!1},s.Jc=function(t){Mr(this,t)},s.Xb=function(t){return cee((st(),t)),null},s.Xc=function(t){return-1},s.dc=function(){return!0},s.Kc=function(){return this.a},s.Yc=function(){return this.a},s.Zc=function(t){return this.a},s.ii=function(t,n){return u8e()},s.ji=function(t,n){a8e()},s.Lc=function(){return new ht(null,new bt(this,16))},s.$c=function(t){return l8e()},s.Mc=function(t){return f8e()},s._c=function(t,n){return h8e()},s.gc=function(){return 0},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.Oc=function(){return new ht(null,new bt(this,16))},s.bd=function(t,n){return st(),new Hf(Qr,t,n)},s.Pc=function(){return cne((st(),Qr))},s.Qc=function(t){return st(),RI(Qr,t)},s.sj=function(){return st(),st(),th},S(Br,"ECollections/EmptyUnmodifiableEMap",1311);var Zwe=pi(Br,"Enumerator"),Fx;y(281,1,{281:1},Hq),s.Fb=function(t){var n;return this===t?!0:Q(t,281)?(n=c(t,281),this.f==n.f&&iSt(this.i,n.i)&&pB(this.a,(this.f&256)!=0?(n.f&256)!=0?n.a:null:(n.f&256)!=0?null:n.a)&&pB(this.d,n.d)&&pB(this.g,n.g)&&pB(this.e,n.e)&&J9t(this,n)):!1},s.Hb=function(){return this.f},s.Ib=function(){return wYe(this)},s.f=0;var wft=0,mft=0,vft=0,yft=0,eme=0,tme=0,nme=0,ime=0,rme=0,_ft,oM=0,cM=0,Eft=0,Sft=0,Bx,ome;S(Br,"URI",281),y(1091,43,fv,WAe),s.zc=function(t,n){return c(bo(this,ln(t),c(n,281)),281)},S(Br,"URI/URICache",1091),y(497,63,Tf,v6e,p8),s.hi=function(){return!0},S(Br,"UniqueEList",497),y(581,60,$h,mO),S(Br,"WrappedException",581);var Sn=pi(Hu,qet),Xw=pi(Hu,Het),us=pi(Hu,zet),Jw=pi(Hu,Vet),vl=pi(Hu,Get),va=pi(Hu,"EClass"),dY=pi(Hu,"EDataType"),Pft;y(1183,43,fv,YAe),s.xc=function(t){return fr(t)?mc(this,t):Uo(Po(this.f,t))},S(Hu,"EDataType/Internal/ConversionDelegate/Factory/Registry/Impl",1183);var $x=pi(Hu,"EEnum"),Yh=pi(Hu,Uet),oo=pi(Hu,Wet),ya=pi(Hu,Yet),_a,cp=pi(Hu,Xet),Qw=pi(Hu,Jet);y(1029,1,{},m6e),s.Ib=function(){return"NIL"},S(Hu,"EStructuralFeature/Internal/DynamicValueHolder/1",1029);var Mft;y(1028,43,fv,XAe),s.xc=function(t){return fr(t)?mc(this,t):Uo(Po(this.f,t))},S(Hu,"EStructuralFeature/Internal/SettingDelegate/Factory/Registry/Impl",1028);var Gc=pi(Hu,Qet),s3=pi(Hu,"EValidator/PatternMatcher"),cme,sme,wt,Rd,Zw,eg,Cft,Ift,Tft,tg,xd,ng,sp,Ql,jft,Aft,Ea,Ld,Oft,Nd,em,Uv,Ur,Dft,kft,up,Kx=pi(ai,"FeatureMap/Entry");y(535,1,{72:1},x9),s.ak=function(){return this.a},s.dd=function(){return this.b},S(mt,"BasicEObjectImpl/1",535),y(1027,1,qV,u7e),s.Wj=function(t){return S$(this.a,this.b,t)},s.fj=function(){return qLe(this.a,this.b)},s.Wb=function(t){qne(this.a,this.b,t)},s.Xj=function(){ZSt(this.a,this.b)},S(mt,"BasicEObjectImpl/4",1027),y(1983,1,{108:1}),s.bk=function(t){this.e=t==0?Rft:oe(xt,xe,1,t,5,1)},s.Ch=function(t){return this.e[t]},s.Dh=function(t,n){this.e[t]=n},s.Eh=function(t){this.e[t]=null},s.ck=function(){return this.c},s.dk=function(){throw V(new sn)},s.ek=function(){throw V(new sn)},s.fk=function(){return this.d},s.gk=function(){return this.e!=null},s.hk=function(t){this.c=t},s.ik=function(t){throw V(new sn)},s.jk=function(t){throw V(new sn)},s.kk=function(t){this.d=t};var Rft;S(mt,"BasicEObjectImpl/EPropertiesHolderBaseImpl",1983),y(185,1983,{108:1},il),s.dk=function(){return this.a},s.ek=function(){return this.b},s.ik=function(t){this.a=t},s.jk=function(t){this.b=t},S(mt,"BasicEObjectImpl/EPropertiesHolderImpl",185),y(506,97,JZe,xA),s.Kg=function(){return this.f},s.Pg=function(){return this.k},s.Rg=function(t,n){this.g=t,this.i=n},s.Tg=function(){return(this.j&2)==0?this.zh():this.ph().ck()},s.Vg=function(){return this.i},s.Mg=function(){return(this.j&1)!=0},s.eh=function(){return this.g},s.kh=function(){return(this.j&4)!=0},s.ph=function(){return!this.k&&(this.k=new il),this.k},s.th=function(t){this.ph().hk(t),t?this.j|=2:this.j&=-3},s.vh=function(t){this.ph().jk(t),t?this.j|=4:this.j&=-5},s.zh=function(){return(g1(),wt).S},s.i=0,s.j=1,S(mt,"EObjectImpl",506),y(780,506,{105:1,92:1,90:1,56:1,108:1,49:1,97:1},qte),s.Ch=function(t){return this.e[t]},s.Dh=function(t,n){this.e[t]=n},s.Eh=function(t){this.e[t]=null},s.Tg=function(){return this.d},s.Yg=function(t){return di(this.d,t)},s.$g=function(){return this.d},s.dh=function(){return this.e!=null},s.ph=function(){return!this.k&&(this.k=new C6e),this.k},s.th=function(t){this.d=t},s.yh=function(){var t;return this.e==null&&(t=Ft(this.d),this.e=t==0?xft:oe(xt,xe,1,t,5,1)),this},s.Ah=function(){return 0};var xft;S(mt,"DynamicEObjectImpl",780),y(1376,780,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1},SRe),s.Fb=function(t){return this===t},s.Hb=function(){return Xb(this)},s.th=function(t){this.d=t,this.b=QI(t,"key"),this.c=QI(t,X6)},s.Sh=function(){var t;return this.a==-1&&(t=x$(this,this.b),this.a=t==null?0:fi(t)),this.a},s.cd=function(){return x$(this,this.b)},s.dd=function(){return x$(this,this.c)},s.Th=function(t){this.a=t},s.Uh=function(t){qne(this,this.b,t)},s.ed=function(t){var n;return n=x$(this,this.c),qne(this,this.c,t),n},s.a=0,S(mt,"DynamicEObjectImpl/BasicEMapEntry",1376),y(1377,1,{108:1},C6e),s.bk=function(t){throw V(new sn)},s.Ch=function(t){throw V(new sn)},s.Dh=function(t,n){throw V(new sn)},s.Eh=function(t){throw V(new sn)},s.ck=function(){throw V(new sn)},s.dk=function(){return this.a},s.ek=function(){return this.b},s.fk=function(){return this.c},s.gk=function(){throw V(new sn)},s.hk=function(t){throw V(new sn)},s.ik=function(t){this.a=t},s.jk=function(t){this.b=t},s.kk=function(t){this.c=t},S(mt,"DynamicEObjectImpl/DynamicEPropertiesHolderImpl",1377),y(510,150,{105:1,92:1,90:1,590:1,147:1,56:1,108:1,49:1,97:1,510:1,150:1,114:1,115:1},qJ),s.Qg=function(t){return sce(this,t)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.d;case 2:return i?(!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),this.b):(!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),XC(this.b));case 3:return ULe(this);case 4:return!this.a&&(this.a=new qi(J1,this,4)),this.a;case 5:return!this.c&&(this.c=new Om(J1,this,5)),this.c}return Nu(this,t-Ft((ot(),Rd)),at((r=c(vt(this,16),26),r||Rd),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 3:return this.Cb&&(i=(o=this.Db>>16,o>=0?sce(this,i):this.Cb.ih(this,-1-o,null,i))),rne(this,c(t,147),i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),Rd)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),Rd)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 2:return!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),r8(this.b,t,i);case 3:return rne(this,null,i);case 4:return!this.a&&(this.a=new qi(J1,this,4)),Fr(this.a,t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),Rd)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),Rd)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.d!=null;case 2:return!!this.b&&this.b.f!=0;case 3:return!!ULe(this);case 4:return!!this.a&&this.a.i!=0;case 5:return!!this.c&&this.c.i!=0}return xu(this,t-Ft((ot(),Rd)),at((n=c(vt(this,16),26),n||Rd),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:q4t(this,ln(n));return;case 2:!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),GO(this.b,n);return;case 3:sWe(this,c(n,147));return;case 4:!this.a&&(this.a=new qi(J1,this,4)),Xt(this.a),!this.a&&(this.a=new qi(J1,this,4)),Mi(this.a,c(n,14));return;case 5:!this.c&&(this.c=new Om(J1,this,5)),Xt(this.c),!this.c&&(this.c=new Om(J1,this,5)),Mi(this.c,c(n,14));return}qu(this,t-Ft((ot(),Rd)),at((i=c(vt(this,16),26),i||Rd),t),n)},s.zh=function(){return ot(),Rd},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:ure(this,null);return;case 2:!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),this.b.c.$b();return;case 3:sWe(this,null);return;case 4:!this.a&&(this.a=new qi(J1,this,4)),Xt(this.a);return;case 5:!this.c&&(this.c=new Om(J1,this,5)),Xt(this.c);return}$u(this,t-Ft((ot(),Rd)),at((n=c(vt(this,16),26),n||Rd),t))},s.Ib=function(){return EHe(this)},s.d=null,S(mt,"EAnnotationImpl",510),y(151,705,$fe,iu),s.Xh=function(t,n){P2t(this,t,c(n,42))},s.lk=function(t,n){return m_t(this,c(t,42),n)},s.pi=function(t){return c(c(this.c,69).pi(t),133)},s.Zh=function(){return c(this.c,69).Zh()},s.$h=function(){return c(this.c,69).$h()},s._h=function(t){return c(this.c,69)._h(t)},s.mk=function(t,n){return r8(this,t,n)},s.Wj=function(t){return c(this.c,76).Wj(t)},s.rj=function(){},s.fj=function(){return c(this.c,76).fj()},s.tj=function(t,n,i){var r;return r=c(bu(this.b).Nh().Jh(this.b),133),r.Th(t),r.Uh(n),r.ed(i),r},s.uj=function(){return new IQ(this)},s.Wb=function(t){GO(this,t)},s.Xj=function(){c(this.c,76).Xj()},S(ai,"EcoreEMap",151),y(158,151,$fe,Zs),s.qj=function(){var t,n,i,r,o,u;if(this.d==null){for(u=oe(Jwe,Bfe,63,2*this.f+1,0,1),i=this.c.Kc();i.e!=i.i.gc();)n=c(i.nj(),133),r=n.Sh(),o=(r&Fn)%u.length,t=u[o],!t&&(t=u[o]=new IQ(this)),t.Fc(n);this.d=u}},S(mt,"EAnnotationImpl/1",158),y(284,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,472:1,49:1,97:1,150:1,284:1,114:1,115:1}),s._g=function(t,n,i){var r,o;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),!!this.$j();case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i)}return o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i)},s.lh=function(t){var n,i;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0)}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:this.Lh(ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:this.ok(c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),kft},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:this.Lh(null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:this.ok(1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.Gh=function(){ra(this),this.Bb|=1},s.Yj=function(){return ra(this)},s.Zj=function(){return this.t},s.$j=function(){var t;return t=this.t,t>1||t==-1},s.hi=function(){return(this.Bb&512)!=0},s.nk=function(t,n){return noe(this,t,n)},s.ok=function(t){Zp(this,t)},s.Ib=function(){return dse(this)},s.s=0,s.t=1,S(mt,"ETypedElementImpl",284),y(449,284,{105:1,92:1,90:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,449:1,284:1,114:1,115:1,677:1}),s.Qg=function(t){return rVe(this,t)},s._g=function(t,n,i){var r,o;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),!!this.$j();case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return Pt(),(this.Bb&Ka)!=0;case 11:return Pt(),(this.Bb&Iw)!=0;case 12:return Pt(),(this.Bb&vw)!=0;case 13:return this.j;case 14:return SE(this);case 15:return Pt(),(this.Bb&Es)!=0;case 16:return Pt(),(this.Bb&mf)!=0;case 17:return zp(this)}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 17:return this.Cb&&(i=(o=this.Db>>16,o>=0?rVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,17,i)}return u=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),u.Nj().Qj(this,$c(this),n-Ft(this.zh()),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i);case 17:return yu(this,null,17,i)}return o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i)},s.lh=function(t){var n,i;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return(this.Bb&Ka)==0;case 11:return(this.Bb&Iw)!=0;case 12:return(this.Bb&vw)!=0;case 13:return this.j!=null;case 14:return SE(this)!=null;case 15:return(this.Bb&Es)!=0;case 16:return(this.Bb&mf)!=0;case 17:return!!zp(this)}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:s$(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:this.ok(c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 10:cE(this,Be(Fe(n)));return;case 11:aE(this,Be(Fe(n)));return;case 12:sE(this,Be(Fe(n)));return;case 13:ree(this,ln(n));return;case 15:uE(this,Be(Fe(n)));return;case 16:lE(this,Be(Fe(n)));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),Dft},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),4),kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:this.ok(1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 10:cE(this,!0);return;case 11:aE(this,!1);return;case 12:sE(this,!1);return;case 13:this.i=null,NO(this,null);return;case 15:uE(this,!1);return;case 16:lE(this,!1);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.Gh=function(){C_(wo((vs(),Ir),this)),ra(this),this.Bb|=1},s.Gj=function(){return this.f},s.zj=function(){return SE(this)},s.Hj=function(){return zp(this)},s.Lj=function(){return null},s.pk=function(){return this.k},s.aj=function(){return this.n},s.Mj=function(){return k7(this)},s.Nj=function(){var t,n,i,r,o,u,a,l,d;return this.p||(i=zp(this),(i.i==null&&wf(i),i.i).length,r=this.Lj(),r&&Ft(zp(r)),o=ra(this),a=o.Bj(),t=a?(a.i&1)!=0?a==Gs?Qi:a==Qt?$r:a==nm?e4:a==gr?mr:a==rg?H0:a==Jv?z0:a==Ps?B2:sP:a:null,n=SE(this),l=o.zj(),EAt(this),(this.Bb&mf)!=0&&((u=gce((vs(),Ir),i))&&u!=this||(u=r2(wo(Ir,this))))?this.p=new l7e(this,u):this.$j()?this.rk()?r?(this.Bb&Es)!=0?t?this.sk()?this.p=new kg(47,t,this,r):this.p=new kg(5,t,this,r):this.sk()?this.p=new Lg(46,this,r):this.p=new Lg(4,this,r):t?this.sk()?this.p=new kg(49,t,this,r):this.p=new kg(7,t,this,r):this.sk()?this.p=new Lg(48,this,r):this.p=new Lg(6,this,r):(this.Bb&Es)!=0?t?t==fb?this.p=new cd(50,gft,this):this.sk()?this.p=new cd(43,t,this):this.p=new cd(1,t,this):this.sk()?this.p=new ud(42,this):this.p=new ud(0,this):t?t==fb?this.p=new cd(41,gft,this):this.sk()?this.p=new cd(45,t,this):this.p=new cd(3,t,this):this.sk()?this.p=new ud(44,this):this.p=new ud(2,this):Q(o,148)?t==Kx?this.p=new ud(40,this):(this.Bb&512)!=0?(this.Bb&Es)!=0?t?this.p=new cd(9,t,this):this.p=new ud(8,this):t?this.p=new cd(11,t,this):this.p=new ud(10,this):(this.Bb&Es)!=0?t?this.p=new cd(13,t,this):this.p=new ud(12,this):t?this.p=new cd(15,t,this):this.p=new ud(14,this):r?(d=r.t,d>1||d==-1?this.sk()?(this.Bb&Es)!=0?t?this.p=new kg(25,t,this,r):this.p=new Lg(24,this,r):t?this.p=new kg(27,t,this,r):this.p=new Lg(26,this,r):(this.Bb&Es)!=0?t?this.p=new kg(29,t,this,r):this.p=new Lg(28,this,r):t?this.p=new kg(31,t,this,r):this.p=new Lg(30,this,r):this.sk()?(this.Bb&Es)!=0?t?this.p=new kg(33,t,this,r):this.p=new Lg(32,this,r):t?this.p=new kg(35,t,this,r):this.p=new Lg(34,this,r):(this.Bb&Es)!=0?t?this.p=new kg(37,t,this,r):this.p=new Lg(36,this,r):t?this.p=new kg(39,t,this,r):this.p=new Lg(38,this,r)):this.sk()?(this.Bb&Es)!=0?t?this.p=new cd(17,t,this):this.p=new ud(16,this):t?this.p=new cd(19,t,this):this.p=new ud(18,this):(this.Bb&Es)!=0?t?this.p=new cd(21,t,this):this.p=new ud(20,this):t?this.p=new cd(23,t,this):this.p=new ud(22,this):this.qk()?this.sk()?this.p=new Jke(c(o,26),this,r):this.p=new Kne(c(o,26),this,r):Q(o,148)?t==Kx?this.p=new ud(40,this):(this.Bb&Es)!=0?t?this.p=new YRe(n,l,this,(RK(),a==Qt?gme:a==Gs?ame:a==rg?bme:a==nm?dme:a==gr?hme:a==Jv?pme:a==Ps?lme:a==Yu?fme:pY)):this.p=new sLe(c(o,148),n,l,this):t?this.p=new WRe(n,l,this,(RK(),a==Qt?gme:a==Gs?ame:a==rg?bme:a==nm?dme:a==gr?hme:a==Jv?pme:a==Ps?lme:a==Yu?fme:pY)):this.p=new cLe(c(o,148),n,l,this):this.rk()?r?(this.Bb&Es)!=0?this.sk()?this.p=new Zke(c(o,26),this,r):this.p=new Dte(c(o,26),this,r):this.sk()?this.p=new Qke(c(o,26),this,r):this.p=new aB(c(o,26),this,r):(this.Bb&Es)!=0?this.sk()?this.p=new WDe(c(o,26),this):this.p=new Gee(c(o,26),this):this.sk()?this.p=new UDe(c(o,26),this):this.p=new YF(c(o,26),this):this.sk()?r?(this.Bb&Es)!=0?this.p=new eRe(c(o,26),this,r):this.p=new Ate(c(o,26),this,r):(this.Bb&Es)!=0?this.p=new YDe(c(o,26),this):this.p=new Uee(c(o,26),this):r?(this.Bb&Es)!=0?this.p=new tRe(c(o,26),this,r):this.p=new Ote(c(o,26),this,r):(this.Bb&Es)!=0?this.p=new XDe(c(o,26),this):this.p=new w8(c(o,26),this)),this.p},s.Ij=function(){return(this.Bb&Ka)!=0},s.qk=function(){return!1},s.rk=function(){return!1},s.Jj=function(){return(this.Bb&mf)!=0},s.Oj=function(){return N$(this)},s.sk=function(){return!1},s.Kj=function(){return(this.Bb&Es)!=0},s.tk=function(t){this.k=t},s.Lh=function(t){s$(this,t)},s.Ib=function(){return J7(this)},s.e=!1,s.n=0,S(mt,"EStructuralFeatureImpl",449),y(322,449,{105:1,92:1,90:1,34:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,322:1,150:1,449:1,284:1,114:1,115:1,677:1},LN),s._g=function(t,n,i){var r,o;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),!!ase(this);case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return Pt(),(this.Bb&Ka)!=0;case 11:return Pt(),(this.Bb&Iw)!=0;case 12:return Pt(),(this.Bb&vw)!=0;case 13:return this.j;case 14:return SE(this);case 15:return Pt(),(this.Bb&Es)!=0;case 16:return Pt(),(this.Bb&mf)!=0;case 17:return zp(this);case 18:return Pt(),(this.Bb&rc)!=0;case 19:return n?tK(this):sBe(this)}return Nu(this,t-Ft((ot(),Zw)),at((r=c(vt(this,16),26),r||Zw),t),n,i)},s.lh=function(t){var n,i;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return ase(this);case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return(this.Bb&Ka)==0;case 11:return(this.Bb&Iw)!=0;case 12:return(this.Bb&vw)!=0;case 13:return this.j!=null;case 14:return SE(this)!=null;case 15:return(this.Bb&Es)!=0;case 16:return(this.Bb&mf)!=0;case 17:return!!zp(this);case 18:return(this.Bb&rc)!=0;case 19:return!!sBe(this)}return xu(this,t-Ft((ot(),Zw)),at((n=c(vt(this,16),26),n||Zw),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:s$(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:B9e(this,c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 10:cE(this,Be(Fe(n)));return;case 11:aE(this,Be(Fe(n)));return;case 12:sE(this,Be(Fe(n)));return;case 13:ree(this,ln(n));return;case 15:uE(this,Be(Fe(n)));return;case 16:lE(this,Be(Fe(n)));return;case 18:CK(this,Be(Fe(n)));return}qu(this,t-Ft((ot(),Zw)),at((i=c(vt(this,16),26),i||Zw),t),n)},s.zh=function(){return ot(),Zw},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),4),kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:this.b=0,Zp(this,1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 10:cE(this,!0);return;case 11:aE(this,!1);return;case 12:sE(this,!1);return;case 13:this.i=null,NO(this,null);return;case 15:uE(this,!1);return;case 16:lE(this,!1);return;case 18:CK(this,!1);return}$u(this,t-Ft((ot(),Zw)),at((n=c(vt(this,16),26),n||Zw),t))},s.Gh=function(){tK(this),C_(wo((vs(),Ir),this)),ra(this),this.Bb|=1},s.$j=function(){return ase(this)},s.nk=function(t,n){return this.b=0,this.a=null,noe(this,t,n)},s.ok=function(t){B9e(this,t)},s.Ib=function(){var t;return(this.Db&64)!=0?J7(this):(t=new ea(J7(this)),t.a+=" (iD: ",id(t,(this.Bb&rc)!=0),t.a+=")",t.a)},s.b=0,S(mt,"EAttributeImpl",322),y(351,438,{105:1,92:1,90:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,351:1,150:1,114:1,115:1,676:1}),s.uk=function(t){return t.Tg()==this},s.Qg=function(t){return cq(this,t)},s.Rg=function(t,n){this.w=null,this.Db=n<<16|this.Db&255,this.Cb=t},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return I0(this);case 4:return this.zj();case 5:return this.F;case 6:return n?bu(this):j_(this);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),this.A}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 6:return this.Cb&&(i=(o=this.Db>>16,o>=0?cq(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,6,i)}return u=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),u.Nj().Qj(this,$c(this),n-Ft(this.zh()),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 6:return yu(this,null,6,i);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),Fr(this.A,t,i)}return o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!I0(this);case 4:return this.zj()!=null;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!j_(this);case 7:return!!this.A&&this.A.i!=0}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:J8(this,ln(n));return;case 2:LF(this,ln(n));return;case 5:jE(this,ln(n));return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A),!this.A&&(this.A=new gs(Gc,this,7)),Mi(this.A,c(n,14));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),Cft},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,179)&&(c(this.Cb,179).tb=null),kc(this,null);return;case 2:nE(this,null),z_(this,this.D);return;case 5:jE(this,null);return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.yj=function(){var t;return this.G==-1&&(this.G=(t=bu(this),t?wd(t.Mh(),this):-1)),this.G},s.zj=function(){return null},s.Aj=function(){return bu(this)},s.vk=function(){return this.v},s.Bj=function(){return I0(this)},s.Cj=function(){return this.D!=null?this.D:this.B},s.Dj=function(){return this.F},s.wj=function(t){return Qq(this,t)},s.wk=function(t){this.v=t},s.xk=function(t){NKe(this,t)},s.yk=function(t){this.C=t},s.Lh=function(t){J8(this,t)},s.Ib=function(){return a7(this)},s.C=null,s.D=null,s.G=-1,S(mt,"EClassifierImpl",351),y(88,351,{105:1,92:1,90:1,26:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,88:1,351:1,150:1,473:1,114:1,115:1,676:1},UJ),s.uk=function(t){return r_t(this,t.Tg())},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return I0(this);case 4:return null;case 5:return this.F;case 6:return n?bu(this):j_(this);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),this.A;case 8:return Pt(),(this.Bb&256)!=0;case 9:return Pt(),(this.Bb&512)!=0;case 10:return So(this);case 11:return!this.q&&(this.q=new Me(ya,this,11,10)),this.q;case 12:return sv(this);case 13:return S6(this);case 14:return S6(this),this.r;case 15:return sv(this),this.k;case 16:return Zce(this);case 17:return iH(this);case 18:return wf(this);case 19:return z7(this);case 20:return sv(this),this.o;case 21:return!this.s&&(this.s=new Me(us,this,21,17)),this.s;case 22:return dc(this);case 23:return qq(this)}return Nu(this,t-Ft((ot(),eg)),at((r=c(vt(this,16),26),r||eg),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 6:return this.Cb&&(i=(o=this.Db>>16,o>=0?cq(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,6,i);case 11:return!this.q&&(this.q=new Me(ya,this,11,10)),Rc(this.q,t,i);case 21:return!this.s&&(this.s=new Me(us,this,21,17)),Rc(this.s,t,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),eg)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),eg)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 6:return yu(this,null,6,i);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),Fr(this.A,t,i);case 11:return!this.q&&(this.q=new Me(ya,this,11,10)),Fr(this.q,t,i);case 21:return!this.s&&(this.s=new Me(us,this,21,17)),Fr(this.s,t,i);case 22:return Fr(dc(this),t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),eg)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),eg)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!I0(this);case 4:return!1;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!j_(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)!=0;case 9:return(this.Bb&512)!=0;case 10:return!!this.u&&dc(this.u.a).i!=0&&!(this.n&&YK(this.n));case 11:return!!this.q&&this.q.i!=0;case 12:return sv(this).i!=0;case 13:return S6(this).i!=0;case 14:return S6(this),this.r.i!=0;case 15:return sv(this),this.k.i!=0;case 16:return Zce(this).i!=0;case 17:return iH(this).i!=0;case 18:return wf(this).i!=0;case 19:return z7(this).i!=0;case 20:return sv(this),!!this.o;case 21:return!!this.s&&this.s.i!=0;case 22:return!!this.n&&YK(this.n);case 23:return qq(this).i!=0}return xu(this,t-Ft((ot(),eg)),at((n=c(vt(this,16),26),n||eg),t))},s.oh=function(t){var n;return n=this.i==null||this.q&&this.q.i!=0?null:QI(this,t),n||Aue(this,t)},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:J8(this,ln(n));return;case 2:LF(this,ln(n));return;case 5:jE(this,ln(n));return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A),!this.A&&(this.A=new gs(Gc,this,7)),Mi(this.A,c(n,14));return;case 8:roe(this,Be(Fe(n)));return;case 9:ooe(this,Be(Fe(n)));return;case 10:C6(So(this)),Mi(So(this),c(n,14));return;case 11:!this.q&&(this.q=new Me(ya,this,11,10)),Xt(this.q),!this.q&&(this.q=new Me(ya,this,11,10)),Mi(this.q,c(n,14));return;case 21:!this.s&&(this.s=new Me(us,this,21,17)),Xt(this.s),!this.s&&(this.s=new Me(us,this,21,17)),Mi(this.s,c(n,14));return;case 22:Xt(dc(this)),Mi(dc(this),c(n,14));return}qu(this,t-Ft((ot(),eg)),at((i=c(vt(this,16),26),i||eg),t),n)},s.zh=function(){return ot(),eg},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,179)&&(c(this.Cb,179).tb=null),kc(this,null);return;case 2:nE(this,null),z_(this,this.D);return;case 5:jE(this,null);return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A);return;case 8:roe(this,!1);return;case 9:ooe(this,!1);return;case 10:this.u&&C6(this.u);return;case 11:!this.q&&(this.q=new Me(ya,this,11,10)),Xt(this.q);return;case 21:!this.s&&(this.s=new Me(us,this,21,17)),Xt(this.s);return;case 22:this.n&&Xt(this.n);return}$u(this,t-Ft((ot(),eg)),at((n=c(vt(this,16),26),n||eg),t))},s.Gh=function(){var t,n;if(sv(this),S6(this),Zce(this),iH(this),wf(this),z7(this),qq(this),B5(_4t(Ls(this))),this.s)for(t=0,n=this.s.i;t=0;--n)ee(this,n);return Ioe(this,t)},s.Xj=function(){Xt(this)},s.oi=function(t,n){return cKe(this,t,n)},S(ai,"EcoreEList",622),y(496,622,xo,OC),s.ai=function(){return!1},s.aj=function(){return this.c},s.bj=function(){return!1},s.Fk=function(){return!0},s.hi=function(){return!0},s.li=function(t,n){return n},s.ni=function(){return!1},s.c=0,S(ai,"EObjectEList",496),y(85,496,xo,qi),s.bj=function(){return!0},s.Dk=function(){return!1},s.rk=function(){return!0},S(ai,"EObjectContainmentEList",85),y(545,85,xo,U9),s.ci=function(){this.b=!0},s.fj=function(){return this.b},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.b,this.b=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.b=!1},s.b=!1,S(ai,"EObjectContainmentEList/Unsettable",545),y(1140,545,xo,GRe),s.ii=function(t,n){var i,r;return i=c(t6(this,t,n),87),Qs(this.e)&&Q3(this,new QC(this.a,7,(ot(),Ift),Ce(n),(r=i.c,Q(r,88)?c(r,26):Ea),t)),i},s.jj=function(t,n){return a9t(this,c(t,87),n)},s.kj=function(t,n){return u9t(this,c(t,87),n)},s.lj=function(t,n,i){return l7t(this,c(t,87),c(n,87),i)},s.Zi=function(t,n,i,r,o){switch(t){case 3:return k5(this,t,n,i,r,this.i>1);case 5:return k5(this,t,n,i,r,this.i-c(i,15).gc()>0);default:return new Ah(this.e,t,this.c,n,i,r,!0)}},s.ij=function(){return!0},s.fj=function(){return YK(this)},s.Xj=function(){Xt(this)},S(mt,"EClassImpl/1",1140),y(1154,1153,Ffe),s.ui=function(t){var n,i,r,o,u,a,l;if(i=t.xi(),i!=8){if(r=G9t(t),r==0)switch(i){case 1:case 9:{l=t.Bi(),l!=null&&(n=Ls(c(l,473)),!n.c&&(n.c=new G3),_O(n.c,t.Ai())),a=t.zi(),a!=null&&(o=c(a,473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),on(n.c,c(t.Ai(),26))));break}case 3:{a=t.zi(),a!=null&&(o=c(a,473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),on(n.c,c(t.Ai(),26))));break}case 5:{if(a=t.zi(),a!=null)for(u=c(a,14).Kc();u.Ob();)o=c(u.Pb(),473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),on(n.c,c(t.Ai(),26)));break}case 4:{l=t.Bi(),l!=null&&(o=c(l,473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),_O(n.c,t.Ai())));break}case 6:{if(l=t.Bi(),l!=null)for(u=c(l,14).Kc();u.Ob();)o=c(u.Pb(),473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),_O(n.c,t.Ai()));break}}this.Hk(r)}},s.Hk=function(t){VWe(this,t)},s.b=63,S(mt,"ESuperAdapter",1154),y(1155,1154,Ffe,rAe),s.Hk=function(t){lw(this,t)},S(mt,"EClassImpl/10",1155),y(1144,696,xo),s.Vh=function(t,n){return wq(this,t,n)},s.Wh=function(t){return Kze(this,t)},s.Xh=function(t,n){MI(this,t,n)},s.Yh=function(t){UC(this,t)},s.pi=function(t){return Lie(this,t)},s.mi=function(t,n){return L$(this,t,n)},s.lk=function(t,n){throw V(new sn)},s.Zh=function(){return new Gy(this)},s.$h=function(){return new vC(this)},s._h=function(t){return lI(this,t)},s.mk=function(t,n){throw V(new sn)},s.Wj=function(t){return this},s.fj=function(){return this.i!=0},s.Wb=function(t){throw V(new sn)},s.Xj=function(){throw V(new sn)},S(ai,"EcoreEList/UnmodifiableEList",1144),y(319,1144,xo,Im),s.ni=function(){return!1},S(ai,"EcoreEList/UnmodifiableEList/FastCompare",319),y(1147,319,xo,jqe),s.Xc=function(t){var n,i,r;if(Q(t,170)&&(n=c(t,170),i=n.aj(),i!=-1)){for(r=this.i;i4)if(this.wj(t)){if(this.rk()){if(r=c(t,49),i=r.Ug(),l=i==this.b&&(this.Dk()?r.Og(r.Vg(),c(at(Xc(this.b),this.aj()).Yj(),26).Bj())==Xr(c(at(Xc(this.b),this.aj()),18)).n:-1-r.Vg()==this.aj()),this.Ek()&&!l&&!i&&r.Zg()){for(o=0;o1||r==-1)):!1},s.Dk=function(){var t,n,i;return n=at(Xc(this.b),this.aj()),Q(n,99)?(t=c(n,18),i=Xr(t),!!i):!1},s.Ek=function(){var t,n;return n=at(Xc(this.b),this.aj()),Q(n,99)?(t=c(n,18),(t.Bb&Vr)!=0):!1},s.Xc=function(t){var n,i,r,o;if(r=this.Qi(t),r>=0)return r;if(this.Fk()){for(i=0,o=this.Vi();i=0;--t)sT(this,t,this.Oi(t));return this.Wi()},s.Qc=function(t){var n;if(this.Ek())for(n=this.Vi()-1;n>=0;--n)sT(this,n,this.Oi(n));return this.Xi(t)},s.Xj=function(){C6(this)},s.oi=function(t,n){return zBe(this,t,n)},S(ai,"DelegatingEcoreEList",742),y(1150,742,qfe,ske),s.Hi=function(t,n){D3t(this,t,c(n,26))},s.Ii=function(t){C2t(this,c(t,26))},s.Oi=function(t){var n,i;return n=c(ee(dc(this.a),t),87),i=n.c,Q(i,88)?c(i,26):(ot(),Ea)},s.Ti=function(t){var n,i;return n=c(hw(dc(this.a),t),87),i=n.c,Q(i,88)?c(i,26):(ot(),Ea)},s.Ui=function(t,n){return k8t(this,t,c(n,26))},s.ai=function(){return!1},s.Zi=function(t,n,i,r,o){return null},s.Ji=function(){return new cAe(this)},s.Ki=function(){Xt(dc(this.a))},s.Li=function(t){return yHe(this,t)},s.Mi=function(t){var n,i;for(i=t.Kc();i.Ob();)if(n=i.Pb(),!yHe(this,n))return!1;return!0},s.Ni=function(t){var n,i,r;if(Q(t,15)&&(r=c(t,15),r.gc()==dc(this.a).i)){for(n=r.Kc(),i=new $t(this);n.Ob();)if(le(n.Pb())!==le(Vt(i)))return!1;return!0}return!1},s.Pi=function(){var t,n,i,r,o;for(i=1,n=new $t(dc(this.a));n.e!=n.i.gc();)t=c(Vt(n),87),r=(o=t.c,Q(o,88)?c(o,26):(ot(),Ea)),i=31*i+(r?Xb(r):0);return i},s.Qi=function(t){var n,i,r,o;for(r=0,i=new $t(dc(this.a));i.e!=i.i.gc();){if(n=c(Vt(i),87),le(t)===le((o=n.c,Q(o,88)?c(o,26):(ot(),Ea))))return r;++r}return-1},s.Ri=function(){return dc(this.a).i==0},s.Si=function(){return null},s.Vi=function(){return dc(this.a).i},s.Wi=function(){var t,n,i,r,o,u;for(u=dc(this.a).i,o=oe(xt,xe,1,u,5,1),i=0,n=new $t(dc(this.a));n.e!=n.i.gc();)t=c(Vt(n),87),o[i++]=(r=t.c,Q(r,88)?c(r,26):(ot(),Ea));return o},s.Xi=function(t){var n,i,r,o,u,a,l;for(l=dc(this.a).i,t.lengthl&&vi(t,l,null),r=0,i=new $t(dc(this.a));i.e!=i.i.gc();)n=c(Vt(i),87),u=(a=n.c,Q(a,88)?c(a,26):(ot(),Ea)),vi(t,r++,u);return t},s.Yi=function(){var t,n,i,r,o;for(o=new nd,o.a+="[",t=dc(this.a),n=0,r=dc(this.a).i;n>16,o>=0?cq(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,6,i);case 9:return!this.a&&(this.a=new Me(Yh,this,9,5)),Rc(this.a,t,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),tg)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),tg)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 6:return yu(this,null,6,i);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),Fr(this.A,t,i);case 9:return!this.a&&(this.a=new Me(Yh,this,9,5)),Fr(this.a,t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),tg)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),tg)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!I0(this);case 4:return!!zre(this);case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!j_(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)==0;case 9:return!!this.a&&this.a.i!=0}return xu(this,t-Ft((ot(),tg)),at((n=c(vt(this,16),26),n||tg),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:J8(this,ln(n));return;case 2:LF(this,ln(n));return;case 5:jE(this,ln(n));return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A),!this.A&&(this.A=new gs(Gc,this,7)),Mi(this.A,c(n,14));return;case 8:i7(this,Be(Fe(n)));return;case 9:!this.a&&(this.a=new Me(Yh,this,9,5)),Xt(this.a),!this.a&&(this.a=new Me(Yh,this,9,5)),Mi(this.a,c(n,14));return}qu(this,t-Ft((ot(),tg)),at((i=c(vt(this,16),26),i||tg),t),n)},s.zh=function(){return ot(),tg},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,179)&&(c(this.Cb,179).tb=null),kc(this,null);return;case 2:nE(this,null),z_(this,this.D);return;case 5:jE(this,null);return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A);return;case 8:i7(this,!0);return;case 9:!this.a&&(this.a=new Me(Yh,this,9,5)),Xt(this.a);return}$u(this,t-Ft((ot(),tg)),at((n=c(vt(this,16),26),n||tg),t))},s.Gh=function(){var t,n;if(this.a)for(t=0,n=this.a.i;t>16==5?c(this.Cb,671):null}return Nu(this,t-Ft((ot(),xd)),at((r=c(vt(this,16),26),r||xd),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 5:return this.Cb&&(i=(o=this.Db>>16,o>=0?hVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,5,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),xd)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),xd)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 5:return yu(this,null,5,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),xd)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),xd)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.d!=0;case 3:return!!this.b;case 4:return this.c!=null;case 5:return!!(this.Db>>16==5&&c(this.Cb,671))}return xu(this,t-Ft((ot(),xd)),at((n=c(vt(this,16),26),n||xd),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:q$(this,c(n,19).a);return;case 3:sUe(this,c(n,1940));return;case 4:z$(this,ln(n));return}qu(this,t-Ft((ot(),xd)),at((i=c(vt(this,16),26),i||xd),t),n)},s.zh=function(){return ot(),xd},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:q$(this,0);return;case 3:sUe(this,null);return;case 4:z$(this,null);return}$u(this,t-Ft((ot(),xd)),at((n=c(vt(this,16),26),n||xd),t))},s.Ib=function(){var t;return t=this.c,t??this.zb},s.b=null,s.c=null,s.d=0,S(mt,"EEnumLiteralImpl",573);var Fzt=pi(mt,"EFactoryImpl/InternalEDateTimeFormat");y(489,1,{2015:1},VM),S(mt,"EFactoryImpl/1ClientInternalEDateTimeFormat",489),y(241,115,{105:1,92:1,90:1,87:1,56:1,108:1,49:1,97:1,241:1,114:1,115:1},Nb),s.Sg=function(t,n,i){var r;return i=yu(this,t,n,i),this.e&&Q(t,170)&&(r=H7(this,this.e),r!=this.c&&(i=AE(this,r,i))),i},s._g=function(t,n,i){var r;switch(t){case 0:return this.f;case 1:return!this.d&&(this.d=new qi(oo,this,1)),this.d;case 2:return n?eD(this):this.c;case 3:return this.b;case 4:return this.e;case 5:return n?QK(this):this.a}return Nu(this,t-Ft((ot(),sp)),at((r=c(vt(this,16),26),r||sp),t),n,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return lHe(this,null,i);case 1:return!this.d&&(this.d=new qi(oo,this,1)),Fr(this.d,t,i);case 3:return aHe(this,null,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),sp)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),sp)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.f;case 1:return!!this.d&&this.d.i!=0;case 2:return!!this.c;case 3:return!!this.b;case 4:return!!this.e;case 5:return!!this.a}return xu(this,t-Ft((ot(),sp)),at((n=c(vt(this,16),26),n||sp),t))},s.sh=function(t,n){var i;switch(t){case 0:AVe(this,c(n,87));return;case 1:!this.d&&(this.d=new qi(oo,this,1)),Xt(this.d),!this.d&&(this.d=new qi(oo,this,1)),Mi(this.d,c(n,14));return;case 3:Sce(this,c(n,87));return;case 4:$ce(this,c(n,836));return;case 5:B_(this,c(n,138));return}qu(this,t-Ft((ot(),sp)),at((i=c(vt(this,16),26),i||sp),t),n)},s.zh=function(){return ot(),sp},s.Bh=function(t){var n;switch(t){case 0:AVe(this,null);return;case 1:!this.d&&(this.d=new qi(oo,this,1)),Xt(this.d);return;case 3:Sce(this,null);return;case 4:$ce(this,null);return;case 5:B_(this,null);return}$u(this,t-Ft((ot(),sp)),at((n=c(vt(this,16),26),n||sp),t))},s.Ib=function(){var t;return t=new lu(Ba(this)),t.a+=" (expression: ",sH(this,t),t.a+=")",t.a};var ume;S(mt,"EGenericTypeImpl",241),y(1969,1964,sk),s.Xh=function(t,n){rke(this,t,n)},s.lk=function(t,n){return rke(this,this.gc(),t),n},s.pi=function(t){return hl(this.Gi(),t)},s.Zh=function(){return this.$h()},s.Gi=function(){return new lAe(this)},s.$h=function(){return this._h(0)},s._h=function(t){return this.Gi().Zc(t)},s.mk=function(t,n){return nw(this,t,!0),n},s.ii=function(t,n){var i,r;return r=uq(this,n),i=this.Zc(t),i.Rb(r),r},s.ji=function(t,n){var i;nw(this,n,!0),i=this.Zc(t),i.Rb(n)},S(ai,"AbstractSequentialInternalEList",1969),y(486,1969,sk,mC),s.pi=function(t){return hl(this.Gi(),t)},s.Zh=function(){return this.b==null?(rd(),rd(),Yj):this.Jk()},s.Gi=function(){return new j7e(this.a,this.b)},s.$h=function(){return this.b==null?(rd(),rd(),Yj):this.Jk()},s._h=function(t){var n,i;if(this.b==null){if(t<0||t>1)throw V(new ho(J6+t+", size=0"));return rd(),rd(),Yj}for(i=this.Jk(),n=0;n0;)if(n=this.c[--this.d],(!this.e||n.Gj()!=x4||n.aj()!=0)&&(!this.Mk()||this.b.mh(n))){if(u=this.b.bh(n,this.Lk()),this.f=(Wr(),c(n,66).Oj()),this.f||n.$j()){if(this.Lk()?(r=c(u,15),this.k=r):(r=c(u,69),this.k=this.j=r),Q(this.k,54)?(this.o=this.k.gc(),this.n=this.o):this.p=this.j?this.j._h(this.k.gc()):this.k.Zc(this.k.gc()),this.p?EGe(this,this.p):RGe(this))return o=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?(t=c(o,72),t.ak(),i=t.dd(),this.i=i):(i=o,this.i=i),this.g=-3,!0}else if(u!=null)return this.k=null,this.p=null,i=u,this.i=i,this.g=-2,!0}return this.k=null,this.p=null,this.g=-1,!1}else return o=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?(t=c(o,72),t.ak(),i=t.dd(),this.i=i):(i=o,this.i=i),this.g=-3,!0}},s.Pb=function(){return UO(this)},s.Tb=function(){return this.a},s.Ub=function(){var t;if(this.g<-1||this.Sb())return--this.a,this.g=0,t=this.i,this.Sb(),t;throw V(new tc)},s.Vb=function(){return this.a-1},s.Qb=function(){throw V(new sn)},s.Lk=function(){return!1},s.Wb=function(t){throw V(new sn)},s.Mk=function(){return!0},s.a=0,s.d=0,s.f=!1,s.g=0,s.n=0,s.o=0;var Yj;S(ai,"EContentsEList/FeatureIteratorImpl",279),y(697,279,uk,Vee),s.Lk=function(){return!0},S(ai,"EContentsEList/ResolvingFeatureIteratorImpl",697),y(1157,697,uk,GDe),s.Mk=function(){return!1},S(mt,"ENamedElementImpl/1/1",1157),y(1158,279,uk,VDe),s.Mk=function(){return!1},S(mt,"ENamedElementImpl/1/2",1158),y(36,143,xT,Up,b$,sr,A$,Ah,La,Yie,yNe,Xie,_Ne,yie,ENe,Zie,SNe,_ie,PNe,Jie,MNe,C5,QC,UB,Qie,CNe,Eie,INe),s._i=function(){return kie(this)},s.gj=function(){var t;return t=kie(this),t?t.zj():null},s.yi=function(t){return this.b==-1&&this.a&&(this.b=this.c.Xg(this.a.aj(),this.a.Gj())),this.c.Og(this.b,t)},s.Ai=function(){return this.c},s.hj=function(){var t;return t=kie(this),t?t.Kj():!1},s.b=-1,S(mt,"ENotificationImpl",36),y(399,284,{105:1,92:1,90:1,147:1,191:1,56:1,59:1,108:1,472:1,49:1,97:1,150:1,399:1,284:1,114:1,115:1},NN),s.Qg=function(t){return bVe(this,t)},s._g=function(t,n,i){var r,o,u;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),u=this.t,u>1||u==-1;case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?c(this.Cb,26):null;case 11:return!this.d&&(this.d=new gs(Gc,this,11)),this.d;case 12:return!this.c&&(this.c=new Me(cp,this,12,10)),this.c;case 13:return!this.a&&(this.a=new PC(this,this)),this.a;case 14:return Ns(this)}return Nu(this,t-Ft((ot(),Ld)),at((r=c(vt(this,16),26),r||Ld),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 10:return this.Cb&&(i=(o=this.Db>>16,o>=0?bVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,10,i);case 12:return!this.c&&(this.c=new Me(cp,this,12,10)),Rc(this.c,t,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),Ld)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),Ld)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i);case 10:return yu(this,null,10,i);case 11:return!this.d&&(this.d=new gs(Gc,this,11)),Fr(this.d,t,i);case 12:return!this.c&&(this.c=new Me(cp,this,12,10)),Fr(this.c,t,i);case 14:return Fr(Ns(this),t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),Ld)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),Ld)),t,i)},s.lh=function(t){var n,i,r;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return r=this.t,r>1||r==-1;case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return!!(this.Db>>16==10&&c(this.Cb,26));case 11:return!!this.d&&this.d.i!=0;case 12:return!!this.c&&this.c.i!=0;case 13:return!!this.a&&Ns(this.a.a).i!=0&&!(this.b&&XK(this.b));case 14:return!!this.b&&XK(this.b)}return xu(this,t-Ft((ot(),Ld)),at((n=c(vt(this,16),26),n||Ld),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:Zp(this,c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 11:!this.d&&(this.d=new gs(Gc,this,11)),Xt(this.d),!this.d&&(this.d=new gs(Gc,this,11)),Mi(this.d,c(n,14));return;case 12:!this.c&&(this.c=new Me(cp,this,12,10)),Xt(this.c),!this.c&&(this.c=new Me(cp,this,12,10)),Mi(this.c,c(n,14));return;case 13:!this.a&&(this.a=new PC(this,this)),C6(this.a),!this.a&&(this.a=new PC(this,this)),Mi(this.a,c(n,14));return;case 14:Xt(Ns(this)),Mi(Ns(this),c(n,14));return}qu(this,t-Ft((ot(),Ld)),at((i=c(vt(this,16),26),i||Ld),t),n)},s.zh=function(){return ot(),Ld},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:Zp(this,1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 11:!this.d&&(this.d=new gs(Gc,this,11)),Xt(this.d);return;case 12:!this.c&&(this.c=new Me(cp,this,12,10)),Xt(this.c);return;case 13:this.a&&C6(this.a);return;case 14:this.b&&Xt(this.b);return}$u(this,t-Ft((ot(),Ld)),at((n=c(vt(this,16),26),n||Ld),t))},s.Gh=function(){var t,n;if(this.c)for(t=0,n=this.c.i;tl&&vi(t,l,null),r=0,i=new $t(Ns(this.a));i.e!=i.i.gc();)n=c(Vt(i),87),u=(a=n.c,a||(ot(),Ql)),vi(t,r++,u);return t},s.Yi=function(){var t,n,i,r,o;for(o=new nd,o.a+="[",t=Ns(this.a),n=0,r=Ns(this.a).i;n1);case 5:return k5(this,t,n,i,r,this.i-c(i,15).gc()>0);default:return new Ah(this.e,t,this.c,n,i,r,!0)}},s.ij=function(){return!0},s.fj=function(){return XK(this)},s.Xj=function(){Xt(this)},S(mt,"EOperationImpl/2",1341),y(498,1,{1938:1,498:1},a7e),S(mt,"EPackageImpl/1",498),y(16,85,xo,Me),s.zk=function(){return this.d},s.Ak=function(){return this.b},s.Dk=function(){return!0},s.b=0,S(ai,"EObjectContainmentWithInverseEList",16),y(353,16,xo,Uy),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentWithInverseEList/Resolving",353),y(298,353,xo,Kp),s.ci=function(){this.a.tb=null},S(mt,"EPackageImpl/2",298),y(1228,1,{},Pmt),S(mt,"EPackageImpl/3",1228),y(718,43,fv,UQ),s._b=function(t){return fr(t)?WB(this,t):!!Po(this.f,t)},S(mt,"EPackageRegistryImpl",718),y(509,284,{105:1,92:1,90:1,147:1,191:1,56:1,2017:1,108:1,472:1,49:1,97:1,150:1,509:1,284:1,114:1,115:1},FN),s.Qg=function(t){return pVe(this,t)},s._g=function(t,n,i){var r,o,u;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),u=this.t,u>1||u==-1;case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?c(this.Cb,59):null}return Nu(this,t-Ft((ot(),em)),at((r=c(vt(this,16),26),r||em),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 10:return this.Cb&&(i=(o=this.Db>>16,o>=0?pVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,10,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),em)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),em)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i);case 10:return yu(this,null,10,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),em)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),em)),t,i)},s.lh=function(t){var n,i,r;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return r=this.t,r>1||r==-1;case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return!!(this.Db>>16==10&&c(this.Cb,59))}return xu(this,t-Ft((ot(),em)),at((n=c(vt(this,16),26),n||em),t))},s.zh=function(){return ot(),em},S(mt,"EParameterImpl",509),y(99,449,{105:1,92:1,90:1,147:1,191:1,56:1,18:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,99:1,449:1,284:1,114:1,115:1,677:1},Xee),s._g=function(t,n,i){var r,o,u,a;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),a=this.t,a>1||a==-1;case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return Pt(),(this.Bb&Ka)!=0;case 11:return Pt(),(this.Bb&Iw)!=0;case 12:return Pt(),(this.Bb&vw)!=0;case 13:return this.j;case 14:return SE(this);case 15:return Pt(),(this.Bb&Es)!=0;case 16:return Pt(),(this.Bb&mf)!=0;case 17:return zp(this);case 18:return Pt(),(this.Bb&rc)!=0;case 19:return Pt(),u=Xr(this),!!(u&&(u.Bb&rc)!=0);case 20:return Pt(),(this.Bb&Vr)!=0;case 21:return n?Xr(this):this.b;case 22:return n?kre(this):YFe(this);case 23:return!this.a&&(this.a=new Om(Jw,this,23)),this.a}return Nu(this,t-Ft((ot(),Uv)),at((r=c(vt(this,16),26),r||Uv),t),n,i)},s.lh=function(t){var n,i,r,o;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return o=this.t,o>1||o==-1;case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return(this.Bb&Ka)==0;case 11:return(this.Bb&Iw)!=0;case 12:return(this.Bb&vw)!=0;case 13:return this.j!=null;case 14:return SE(this)!=null;case 15:return(this.Bb&Es)!=0;case 16:return(this.Bb&mf)!=0;case 17:return!!zp(this);case 18:return(this.Bb&rc)!=0;case 19:return r=Xr(this),!!r&&(r.Bb&rc)!=0;case 20:return(this.Bb&Vr)==0;case 21:return!!this.b;case 22:return!!YFe(this);case 23:return!!this.a&&this.a.i!=0}return xu(this,t-Ft((ot(),Uv)),at((n=c(vt(this,16),26),n||Uv),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:s$(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:Zp(this,c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 10:cE(this,Be(Fe(n)));return;case 11:aE(this,Be(Fe(n)));return;case 12:sE(this,Be(Fe(n)));return;case 13:ree(this,ln(n));return;case 15:uE(this,Be(Fe(n)));return;case 16:lE(this,Be(Fe(n)));return;case 18:F6t(this,Be(Fe(n)));return;case 20:loe(this,Be(Fe(n)));return;case 21:are(this,c(n,18));return;case 23:!this.a&&(this.a=new Om(Jw,this,23)),Xt(this.a),!this.a&&(this.a=new Om(Jw,this,23)),Mi(this.a,c(n,14));return}qu(this,t-Ft((ot(),Uv)),at((i=c(vt(this,16),26),i||Uv),t),n)},s.zh=function(){return ot(),Uv},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),4),kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:Zp(this,1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 10:cE(this,!0);return;case 11:aE(this,!1);return;case 12:sE(this,!1);return;case 13:this.i=null,NO(this,null);return;case 15:uE(this,!1);return;case 16:lE(this,!1);return;case 18:aoe(this,!1),Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),2);return;case 20:loe(this,!0);return;case 21:are(this,null);return;case 23:!this.a&&(this.a=new Om(Jw,this,23)),Xt(this.a);return}$u(this,t-Ft((ot(),Uv)),at((n=c(vt(this,16),26),n||Uv),t))},s.Gh=function(){kre(this),C_(wo((vs(),Ir),this)),ra(this),this.Bb|=1},s.Lj=function(){return Xr(this)},s.qk=function(){var t;return t=Xr(this),!!t&&(t.Bb&rc)!=0},s.rk=function(){return(this.Bb&rc)!=0},s.sk=function(){return(this.Bb&Vr)!=0},s.nk=function(t,n){return this.c=null,noe(this,t,n)},s.Ib=function(){var t;return(this.Db&64)!=0?J7(this):(t=new ea(J7(this)),t.a+=" (containment: ",id(t,(this.Bb&rc)!=0),t.a+=", resolveProxies: ",id(t,(this.Bb&Vr)!=0),t.a+=")",t.a)},S(mt,"EReferenceImpl",99),y(548,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,548:1,114:1,115:1},D6e),s.Fb=function(t){return this===t},s.cd=function(){return this.b},s.dd=function(){return this.c},s.Hb=function(){return Xb(this)},s.Uh=function(t){H4t(this,ln(t))},s.ed=function(t){return O4t(this,ln(t))},s._g=function(t,n,i){var r;switch(t){case 0:return this.b;case 1:return this.c}return Nu(this,t-Ft((ot(),Ur)),at((r=c(vt(this,16),26),r||Ur),t),n,i)},s.lh=function(t){var n;switch(t){case 0:return this.b!=null;case 1:return this.c!=null}return xu(this,t-Ft((ot(),Ur)),at((n=c(vt(this,16),26),n||Ur),t))},s.sh=function(t,n){var i;switch(t){case 0:z4t(this,ln(n));return;case 1:cre(this,ln(n));return}qu(this,t-Ft((ot(),Ur)),at((i=c(vt(this,16),26),i||Ur),t),n)},s.zh=function(){return ot(),Ur},s.Bh=function(t){var n;switch(t){case 0:ore(this,null);return;case 1:cre(this,null);return}$u(this,t-Ft((ot(),Ur)),at((n=c(vt(this,16),26),n||Ur),t))},s.Sh=function(){var t;return this.a==-1&&(t=this.b,this.a=t==null?0:md(t)),this.a},s.Th=function(t){this.a=t},s.Ib=function(){var t;return(this.Db&64)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (key: ",co(t,this.b),t.a+=", value: ",co(t,this.c),t.a+=")",t.a)},s.a=-1,s.b=null,s.c=null;var ec=S(mt,"EStringToStringMapEntryImpl",548),Nft=pi(ai,"FeatureMap/Entry/Internal");y(565,1,ak),s.Ok=function(t){return this.Pk(c(t,49))},s.Pk=function(t){return this.Ok(t)},s.Fb=function(t){var n,i;return this===t?!0:Q(t,72)?(n=c(t,72),n.ak()==this.c?(i=this.dd(),i==null?n.dd()==null:$n(i,n.dd())):!1):!1},s.ak=function(){return this.c},s.Hb=function(){var t;return t=this.dd(),fi(this.c)^(t==null?0:fi(t))},s.Ib=function(){var t,n;return t=this.c,n=bu(t.Hj()).Ph(),t.ne(),(n!=null&&n.length!=0?n+":"+t.ne():t.ne())+"="+this.dd()},S(mt,"EStructuralFeatureImpl/BasicFeatureMapEntry",565),y(776,565,ak,ote),s.Pk=function(t){return new ote(this.c,t)},s.dd=function(){return this.a},s.Qk=function(t,n,i){return cTt(this,t,this.a,n,i)},s.Rk=function(t,n,i){return sTt(this,t,this.a,n,i)},S(mt,"EStructuralFeatureImpl/ContainmentUpdatingFeatureMapEntry",776),y(1314,1,{},l7e),s.Pj=function(t,n,i,r,o){var u;return u=c(x_(t,this.b),215),u.nl(this.a).Wj(r)},s.Qj=function(t,n,i,r,o){var u;return u=c(x_(t,this.b),215),u.el(this.a,r,o)},s.Rj=function(t,n,i,r,o){var u;return u=c(x_(t,this.b),215),u.fl(this.a,r,o)},s.Sj=function(t,n,i){var r;return r=c(x_(t,this.b),215),r.nl(this.a).fj()},s.Tj=function(t,n,i,r){var o;o=c(x_(t,this.b),215),o.nl(this.a).Wb(r)},s.Uj=function(t,n,i){return c(x_(t,this.b),215).nl(this.a)},s.Vj=function(t,n,i){var r;r=c(x_(t,this.b),215),r.nl(this.a).Xj()},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateFeatureMapDelegator",1314),y(89,1,{},cd,kg,ud,Lg),s.Pj=function(t,n,i,r,o){var u;if(u=n.Ch(i),u==null&&n.Dh(i,u=lD(this,t)),!o)switch(this.e){case 50:case 41:return c(u,589).sj();case 40:return c(u,215).kl()}return u},s.Qj=function(t,n,i,r,o){var u,a;return a=n.Ch(i),a==null&&n.Dh(i,a=lD(this,t)),u=c(a,69).lk(r,o),u},s.Rj=function(t,n,i,r,o){var u;return u=n.Ch(i),u!=null&&(o=c(u,69).mk(r,o)),o},s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null&&c(r,76).fj()},s.Tj=function(t,n,i,r){var o;o=c(n.Ch(i),76),!o&&n.Dh(i,o=lD(this,t)),o.Wb(r)},s.Uj=function(t,n,i){var r,o;return o=n.Ch(i),o==null&&n.Dh(i,o=lD(this,t)),Q(o,76)?c(o,76):(r=c(n.Ch(i),15),new aAe(r))},s.Vj=function(t,n,i){var r;r=c(n.Ch(i),76),!r&&n.Dh(i,r=lD(this,t)),r.Xj()},s.b=0,s.e=0,S(mt,"EStructuralFeatureImpl/InternalSettingDelegateMany",89),y(504,1,{}),s.Qj=function(t,n,i,r,o){throw V(new sn)},s.Rj=function(t,n,i,r,o){throw V(new sn)},s.Uj=function(t,n,i){return new oLe(this,t,n,i)};var sh;S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingle",504),y(1331,1,qV,oLe),s.Wj=function(t){return this.a.Pj(this.c,this.d,this.b,t,!0)},s.fj=function(){return this.a.Sj(this.c,this.d,this.b)},s.Wb=function(t){this.a.Tj(this.c,this.d,this.b,t)},s.Xj=function(){this.a.Vj(this.c,this.d,this.b)},s.b=0,S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingle/1",1331),y(769,504,{},Kne),s.Pj=function(t,n,i,r,o){return Wq(t,t.eh(),t.Vg())==this.b?this.sk()&&r?Dq(t):t.eh():null},s.Qj=function(t,n,i,r,o){var u,a;return t.eh()&&(o=(u=t.Vg(),u>=0?t.Qg(o):t.eh().ih(t,-1-u,null,o))),a=di(t.Tg(),this.e),t.Sg(r,a,o)},s.Rj=function(t,n,i,r,o){var u;return u=di(t.Tg(),this.e),t.Sg(null,u,o)},s.Sj=function(t,n,i){var r;return r=di(t.Tg(),this.e),!!t.eh()&&t.Vg()==r},s.Tj=function(t,n,i,r){var o,u,a,l,d;if(r!=null&&!Qq(this.a,r))throw V(new e_(lk+(Q(r,56)?_ce(c(r,56).Tg()):Vie(Fs(r)))+fk+this.a+"'"));if(o=t.eh(),a=di(t.Tg(),this.e),le(r)!==le(o)||t.Vg()!=a&&r!=null){if(gE(t,c(r,56)))throw V(new St(Y6+t.Ib()));d=null,o&&(d=(u=t.Vg(),u>=0?t.Qg(d):t.eh().ih(t,-1-u,null,d))),l=c(r,49),l&&(d=l.gh(t,di(l.Tg(),this.b),null,d)),d=t.Sg(l,a,d),d&&d.Fi()}else t.Lg()&&t.Mg()&&Bn(t,new sr(t,1,a,r,r))},s.Vj=function(t,n,i){var r,o,u,a;r=t.eh(),r?(a=(o=t.Vg(),o>=0?t.Qg(null):t.eh().ih(t,-1-o,null,null)),u=di(t.Tg(),this.e),a=t.Sg(null,u,a),a&&a.Fi()):t.Lg()&&t.Mg()&&Bn(t,new C5(t,1,this.e,null,null))},s.sk=function(){return!1},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainer",769),y(1315,769,{},Jke),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainerResolving",1315),y(563,504,{}),s.Pj=function(t,n,i,r,o){var u;return u=n.Ch(i),u==null?this.b:le(u)===le(sh)?null:u},s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null&&(le(r)===le(sh)||!$n(r,this.b))},s.Tj=function(t,n,i,r){var o,u;t.Lg()&&t.Mg()?(o=(u=n.Ch(i),u==null?this.b:le(u)===le(sh)?null:u),r==null?this.c!=null?(n.Dh(i,null),r=this.b):this.b!=null?n.Dh(i,sh):n.Dh(i,null):(this.Sk(r),n.Dh(i,r)),Bn(t,this.d.Tk(t,1,this.e,o,r))):r==null?this.c!=null?n.Dh(i,null):this.b!=null?n.Dh(i,sh):n.Dh(i,null):(this.Sk(r),n.Dh(i,r))},s.Vj=function(t,n,i){var r,o;t.Lg()&&t.Mg()?(r=(o=n.Ch(i),o==null?this.b:le(o)===le(sh)?null:o),n.Eh(i),Bn(t,this.d.Tk(t,1,this.e,r,this.b))):n.Eh(i)},s.Sk=function(t){throw V(new vAe)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData",563),y(_v,1,{},k6e),s.Tk=function(t,n,i,r,o){return new C5(t,n,i,r,o)},s.Uk=function(t,n,i,r,o,u){return new UB(t,n,i,r,o,u)};var ame,lme,fme,hme,dme,gme,bme,pY,pme;S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator",_v),y(1332,_v,{},R6e),s.Tk=function(t,n,i,r,o){return new Eie(t,n,i,Be(Fe(r)),Be(Fe(o)))},s.Uk=function(t,n,i,r,o,u){return new INe(t,n,i,Be(Fe(r)),Be(Fe(o)),u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/1",1332),y(1333,_v,{},x6e),s.Tk=function(t,n,i,r,o){return new Yie(t,n,i,c(r,217).a,c(o,217).a)},s.Uk=function(t,n,i,r,o,u){return new yNe(t,n,i,c(r,217).a,c(o,217).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/2",1333),y(1334,_v,{},L6e),s.Tk=function(t,n,i,r,o){return new Xie(t,n,i,c(r,172).a,c(o,172).a)},s.Uk=function(t,n,i,r,o,u){return new _Ne(t,n,i,c(r,172).a,c(o,172).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/3",1334),y(1335,_v,{},N6e),s.Tk=function(t,n,i,r,o){return new yie(t,n,i,ge(Te(r)),ge(Te(o)))},s.Uk=function(t,n,i,r,o,u){return new ENe(t,n,i,ge(Te(r)),ge(Te(o)),u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/4",1335),y(1336,_v,{},F6e),s.Tk=function(t,n,i,r,o){return new Zie(t,n,i,c(r,155).a,c(o,155).a)},s.Uk=function(t,n,i,r,o,u){return new SNe(t,n,i,c(r,155).a,c(o,155).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/5",1336),y(1337,_v,{},B6e),s.Tk=function(t,n,i,r,o){return new _ie(t,n,i,c(r,19).a,c(o,19).a)},s.Uk=function(t,n,i,r,o,u){return new PNe(t,n,i,c(r,19).a,c(o,19).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/6",1337),y(1338,_v,{},$6e),s.Tk=function(t,n,i,r,o){return new Jie(t,n,i,c(r,162).a,c(o,162).a)},s.Uk=function(t,n,i,r,o,u){return new MNe(t,n,i,c(r,162).a,c(o,162).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/7",1338),y(1339,_v,{},K6e),s.Tk=function(t,n,i,r,o){return new Qie(t,n,i,c(r,184).a,c(o,184).a)},s.Uk=function(t,n,i,r,o,u){return new CNe(t,n,i,c(r,184).a,c(o,184).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/8",1339),y(1317,563,{},cLe),s.Sk=function(t){if(!this.a.wj(t))throw V(new e_(lk+Fs(t)+fk+this.a+"'"))},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataDynamic",1317),y(1318,563,{},WRe),s.Sk=function(t){},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataStatic",1318),y(770,563,{}),s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null},s.Tj=function(t,n,i,r){var o,u;t.Lg()&&t.Mg()?(o=!0,u=n.Ch(i),u==null?(o=!1,u=this.b):le(u)===le(sh)&&(u=null),r==null?this.c!=null?(n.Dh(i,null),r=this.b):n.Dh(i,sh):(this.Sk(r),n.Dh(i,r)),Bn(t,this.d.Uk(t,1,this.e,u,r,!o))):r==null?this.c!=null?n.Dh(i,null):n.Dh(i,sh):(this.Sk(r),n.Dh(i,r))},s.Vj=function(t,n,i){var r,o;t.Lg()&&t.Mg()?(r=!0,o=n.Ch(i),o==null?(r=!1,o=this.b):le(o)===le(sh)&&(o=null),n.Eh(i),Bn(t,this.d.Uk(t,2,this.e,o,this.b,r))):n.Eh(i)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettable",770),y(1319,770,{},sLe),s.Sk=function(t){if(!this.a.wj(t))throw V(new e_(lk+Fs(t)+fk+this.a+"'"))},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableDynamic",1319),y(1320,770,{},YRe),s.Sk=function(t){},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableStatic",1320),y(398,504,{},w8),s.Pj=function(t,n,i,r,o){var u,a,l,d,p;if(p=n.Ch(i),this.Kj()&&le(p)===le(sh))return null;if(this.sk()&&r&&p!=null){if(l=c(p,49),l.kh()&&(d=S1(t,l),l!=d)){if(!Qq(this.a,d))throw V(new e_(lk+Fs(d)+fk+this.a+"'"));n.Dh(i,p=d),this.rk()&&(u=c(d,49),a=l.ih(t,this.b?di(l.Tg(),this.b):-1-di(t.Tg(),this.e),null,null),!u.eh()&&(a=u.gh(t,this.b?di(u.Tg(),this.b):-1-di(t.Tg(),this.e),null,a)),a&&a.Fi()),t.Lg()&&t.Mg()&&Bn(t,new C5(t,9,this.e,l,d))}return p}else return p},s.Qj=function(t,n,i,r,o){var u,a;return a=n.Ch(i),le(a)===le(sh)&&(a=null),n.Dh(i,r),this.bj()?le(a)!==le(r)&&a!=null&&(u=c(a,49),o=u.ih(t,di(u.Tg(),this.b),null,o)):this.rk()&&a!=null&&(o=c(a,49).ih(t,-1-di(t.Tg(),this.e),null,o)),t.Lg()&&t.Mg()&&(!o&&(o=new i1(4)),o.Ei(new C5(t,1,this.e,a,r))),o},s.Rj=function(t,n,i,r,o){var u;return u=n.Ch(i),le(u)===le(sh)&&(u=null),n.Eh(i),t.Lg()&&t.Mg()&&(!o&&(o=new i1(4)),this.Kj()?o.Ei(new C5(t,2,this.e,u,null)):o.Ei(new C5(t,1,this.e,u,null))),o},s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null},s.Tj=function(t,n,i,r){var o,u,a,l,d;if(r!=null&&!Qq(this.a,r))throw V(new e_(lk+(Q(r,56)?_ce(c(r,56).Tg()):Vie(Fs(r)))+fk+this.a+"'"));d=n.Ch(i),l=d!=null,this.Kj()&&le(d)===le(sh)&&(d=null),a=null,this.bj()?le(d)!==le(r)&&(d!=null&&(o=c(d,49),a=o.ih(t,di(o.Tg(),this.b),null,a)),r!=null&&(o=c(r,49),a=o.gh(t,di(o.Tg(),this.b),null,a))):this.rk()&&le(d)!==le(r)&&(d!=null&&(a=c(d,49).ih(t,-1-di(t.Tg(),this.e),null,a)),r!=null&&(a=c(r,49).gh(t,-1-di(t.Tg(),this.e),null,a))),r==null&&this.Kj()?n.Dh(i,sh):n.Dh(i,r),t.Lg()&&t.Mg()?(u=new UB(t,1,this.e,d,r,this.Kj()&&!l),a?(a.Ei(u),a.Fi()):Bn(t,u)):a&&a.Fi()},s.Vj=function(t,n,i){var r,o,u,a,l;l=n.Ch(i),a=l!=null,this.Kj()&&le(l)===le(sh)&&(l=null),u=null,l!=null&&(this.bj()?(r=c(l,49),u=r.ih(t,di(r.Tg(),this.b),null,u)):this.rk()&&(u=c(l,49).ih(t,-1-di(t.Tg(),this.e),null,u))),n.Eh(i),t.Lg()&&t.Mg()?(o=new UB(t,this.Kj()?2:1,this.e,l,null,a),u?(u.Ei(o),u.Fi()):Bn(t,o)):u&&u.Fi()},s.bj=function(){return!1},s.rk=function(){return!1},s.sk=function(){return!1},s.Kj=function(){return!1},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObject",398),y(564,398,{},YF),s.rk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainment",564),y(1323,564,{},UDe),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentResolving",1323),y(772,564,{},Gee),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettable",772),y(1325,772,{},WDe),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettableResolving",1325),y(640,564,{},aB),s.bj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverse",640),y(1324,640,{},Qke),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseResolving",1324),y(773,640,{},Dte),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettable",773),y(1326,773,{},Zke),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettableResolving",1326),y(641,398,{},Uee),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolving",641),y(1327,641,{},YDe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingUnsettable",1327),y(774,641,{},Ate),s.bj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverse",774),y(1328,774,{},eRe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverseUnsettable",1328),y(1321,398,{},XDe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectUnsettable",1321),y(771,398,{},Ote),s.bj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverse",771),y(1322,771,{},tRe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverseUnsettable",1322),y(775,565,ak,Ine),s.Pk=function(t){return new Ine(this.a,this.c,t)},s.dd=function(){return this.b},s.Qk=function(t,n,i){return sCt(this,t,this.b,i)},s.Rk=function(t,n,i){return uCt(this,t,this.b,i)},S(mt,"EStructuralFeatureImpl/InverseUpdatingFeatureMapEntry",775),y(1329,1,qV,aAe),s.Wj=function(t){return this.a},s.fj=function(){return Q(this.a,95)?c(this.a,95).fj():!this.a.dc()},s.Wb=function(t){this.a.$b(),this.a.Gc(c(t,15))},s.Xj=function(){Q(this.a,95)?c(this.a,95).Xj():this.a.$b()},S(mt,"EStructuralFeatureImpl/SettingMany",1329),y(1330,565,ak,bFe),s.Ok=function(t){return new QF((Jn(),lM),this.b.Ih(this.a,t))},s.dd=function(){return null},s.Qk=function(t,n,i){return i},s.Rk=function(t,n,i){return i},S(mt,"EStructuralFeatureImpl/SimpleContentFeatureMapEntry",1330),y(642,565,ak,QF),s.Ok=function(t){return new QF(this.c,t)},s.dd=function(){return this.a},s.Qk=function(t,n,i){return i},s.Rk=function(t,n,i){return i},S(mt,"EStructuralFeatureImpl/SimpleFeatureMapEntry",642),y(391,497,Tf,G3),s.ri=function(t){return oe(va,xe,26,t,0,1)},s.ni=function(){return!1},S(mt,"ESuperAdapter/1",391),y(444,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,836:1,49:1,97:1,150:1,444:1,114:1,115:1},EN),s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return!this.a&&(this.a=new E5(this,oo,this)),this.a}return Nu(this,t-Ft((ot(),up)),at((r=c(vt(this,16),26),r||up),t),n,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 2:return!this.a&&(this.a=new E5(this,oo,this)),Fr(this.a,t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),up)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),up)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return!!this.a&&this.a.i!=0}return xu(this,t-Ft((ot(),up)),at((n=c(vt(this,16),26),n||up),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:!this.a&&(this.a=new E5(this,oo,this)),Xt(this.a),!this.a&&(this.a=new E5(this,oo,this)),Mi(this.a,c(n,14));return}qu(this,t-Ft((ot(),up)),at((i=c(vt(this,16),26),i||up),t),n)},s.zh=function(){return ot(),up},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:!this.a&&(this.a=new E5(this,oo,this)),Xt(this.a);return}$u(this,t-Ft((ot(),up)),at((n=c(vt(this,16),26),n||up),t))},S(mt,"ETypeParameterImpl",444),y(445,85,xo,E5),s.cj=function(t,n){return uDt(this,c(t,87),n)},s.dj=function(t,n){return aDt(this,c(t,87),n)},S(mt,"ETypeParameterImpl/1",445),y(634,43,fv,BN),s.ec=function(){return new zA(this)},S(mt,"ETypeParameterImpl/2",634),y(556,Kl,ys,zA),s.Fc=function(t){return Eke(this,c(t,87))},s.Gc=function(t){var n,i,r;for(r=!1,i=t.Kc();i.Ob();)n=c(i.Pb(),87),Kn(this.a,n,"")==null&&(r=!0);return r},s.$b=function(){Is(this.a)},s.Hc=function(t){return tu(this.a,t)},s.Kc=function(){var t;return t=new Gg(new Pg(this.a).a),new VA(t)},s.Mc=function(t){return uBe(this,t)},s.gc=function(){return KS(this.a)},S(mt,"ETypeParameterImpl/2/1",556),y(557,1,dr,VA),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(g0(this.a).cd(),87)},s.Ob=function(){return this.a.b},s.Qb=function(){BBe(this.a)},S(mt,"ETypeParameterImpl/2/1/1",557),y(1276,43,fv,ZAe),s._b=function(t){return fr(t)?WB(this,t):!!Po(this.f,t)},s.xc=function(t){var n,i;return n=fr(t)?mc(this,t):Uo(Po(this.f,t)),Q(n,837)?(i=c(n,837),n=i._j(),Kn(this,c(t,235),n),n):n??(t==null?(nF(),Bft):null)},S(mt,"EValidatorRegistryImpl",1276),y(1313,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,1941:1,49:1,97:1,150:1,114:1,115:1},q6e),s.Ih=function(t,n){switch(t.yj()){case 21:case 22:case 23:case 24:case 26:case 31:case 32:case 37:case 38:case 39:case 40:case 43:case 44:case 48:case 49:case 20:return n==null?null:Ro(n);case 25:return pIt(n);case 27:return kCt(n);case 28:return RCt(n);case 29:return n==null?null:nDe(rM[0],c(n,199));case 41:return n==null?"":r1(c(n,290));case 42:return Ro(n);case 50:return ln(n);default:throw V(new St(UE+t.ne()+K0))}},s.Jh=function(t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;switch(t.G==-1&&(t.G=(D=bu(t),D?wd(D.Mh(),t):-1)),t.G){case 0:return i=new LN,i;case 1:return n=new qJ,n;case 2:return r=new UJ,r;case 4:return o=new GA,o;case 5:return u=new QAe,u;case 6:return a=new EAe,a;case 7:return l=new GJ,l;case 10:return p=new xA,p;case 11:return v=new NN,v;case 12:return A=new PLe,A;case 13:return L=new FN,L;case 14:return N=new Xee,N;case 17:return z=new D6e,z;case 18:return d=new Nb,d;case 19:return Y=new EN,Y;default:throw V(new St(CV+t.zb+K0))}},s.Kh=function(t,n){switch(t.yj()){case 20:return n==null?null:new bZ(n);case 21:return n==null?null:new l1(n);case 23:case 22:return n==null?null:_9t(n);case 26:case 24:return n==null?null:sI(vu(n,-128,127)<<24>>24);case 25:return Dxt(n);case 27:return rOt(n);case 28:return oOt(n);case 29:return IDt(n);case 32:case 31:return n==null?null:aw(n);case 38:case 37:return n==null?null:new xQ(n);case 40:case 39:return n==null?null:Ce(vu(n,Ar,Fn));case 41:return null;case 42:return n==null,null;case 44:case 43:return n==null?null:Yg(aD(n));case 49:case 48:return n==null?null:oE(vu(n,hk,32767)<<16>>16);case 50:return n;default:throw V(new St(UE+t.ne()+K0))}},S(mt,"EcoreFactoryImpl",1313),y(547,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,1939:1,49:1,97:1,150:1,179:1,547:1,114:1,115:1,675:1},Kxe),s.gb=!1,s.hb=!1;var wme,Fft=!1;S(mt,"EcorePackageImpl",547),y(1184,1,{837:1},H6e),s._j=function(){return CDe(),$ft},S(mt,"EcorePackageImpl/1",1184),y(1193,1,Tn,z6e),s.wj=function(t){return Q(t,147)},s.xj=function(t){return oe(Vj,xe,147,t,0,1)},S(mt,"EcorePackageImpl/10",1193),y(1194,1,Tn,V6e),s.wj=function(t){return Q(t,191)},s.xj=function(t){return oe(sY,xe,191,t,0,1)},S(mt,"EcorePackageImpl/11",1194),y(1195,1,Tn,G6e),s.wj=function(t){return Q(t,56)},s.xj=function(t){return oe(J1,xe,56,t,0,1)},S(mt,"EcorePackageImpl/12",1195),y(1196,1,Tn,U6e),s.wj=function(t){return Q(t,399)},s.xj=function(t){return oe(ya,Kfe,59,t,0,1)},S(mt,"EcorePackageImpl/13",1196),y(1197,1,Tn,W6e),s.wj=function(t){return Q(t,235)},s.xj=function(t){return oe(ml,xe,235,t,0,1)},S(mt,"EcorePackageImpl/14",1197),y(1198,1,Tn,Y6e),s.wj=function(t){return Q(t,509)},s.xj=function(t){return oe(cp,xe,2017,t,0,1)},S(mt,"EcorePackageImpl/15",1198),y(1199,1,Tn,X6e),s.wj=function(t){return Q(t,99)},s.xj=function(t){return oe(Qw,yv,18,t,0,1)},S(mt,"EcorePackageImpl/16",1199),y(1200,1,Tn,J6e),s.wj=function(t){return Q(t,170)},s.xj=function(t){return oe(us,yv,170,t,0,1)},S(mt,"EcorePackageImpl/17",1200),y(1201,1,Tn,Q6e),s.wj=function(t){return Q(t,472)},s.xj=function(t){return oe(Xw,xe,472,t,0,1)},S(mt,"EcorePackageImpl/18",1201),y(1202,1,Tn,Z6e),s.wj=function(t){return Q(t,548)},s.xj=function(t){return oe(ec,Bet,548,t,0,1)},S(mt,"EcorePackageImpl/19",1202),y(1185,1,Tn,ePe),s.wj=function(t){return Q(t,322)},s.xj=function(t){return oe(Jw,yv,34,t,0,1)},S(mt,"EcorePackageImpl/2",1185),y(1203,1,Tn,tPe),s.wj=function(t){return Q(t,241)},s.xj=function(t){return oe(oo,ntt,87,t,0,1)},S(mt,"EcorePackageImpl/20",1203),y(1204,1,Tn,nPe),s.wj=function(t){return Q(t,444)},s.xj=function(t){return oe(Gc,xe,836,t,0,1)},S(mt,"EcorePackageImpl/21",1204),y(1205,1,Tn,iPe),s.wj=function(t){return Dp(t)},s.xj=function(t){return oe(Qi,we,476,t,8,1)},S(mt,"EcorePackageImpl/22",1205),y(1206,1,Tn,rPe),s.wj=function(t){return Q(t,190)},s.xj=function(t){return oe(Ps,we,190,t,0,2)},S(mt,"EcorePackageImpl/23",1206),y(1207,1,Tn,oPe),s.wj=function(t){return Q(t,217)},s.xj=function(t){return oe(B2,we,217,t,0,1)},S(mt,"EcorePackageImpl/24",1207),y(1208,1,Tn,cPe),s.wj=function(t){return Q(t,172)},s.xj=function(t){return oe(sP,we,172,t,0,1)},S(mt,"EcorePackageImpl/25",1208),y(1209,1,Tn,sPe),s.wj=function(t){return Q(t,199)},s.xj=function(t){return oe(Mk,we,199,t,0,1)},S(mt,"EcorePackageImpl/26",1209),y(1210,1,Tn,uPe),s.wj=function(t){return!1},s.xj=function(t){return oe(xme,xe,2110,t,0,1)},S(mt,"EcorePackageImpl/27",1210),y(1211,1,Tn,aPe),s.wj=function(t){return kp(t)},s.xj=function(t){return oe(mr,we,333,t,7,1)},S(mt,"EcorePackageImpl/28",1211),y(1212,1,Tn,lPe),s.wj=function(t){return Q(t,58)},s.xj=function(t){return oe(Xwe,yw,58,t,0,1)},S(mt,"EcorePackageImpl/29",1212),y(1186,1,Tn,fPe),s.wj=function(t){return Q(t,510)},s.xj=function(t){return oe(Sn,{3:1,4:1,5:1,1934:1},590,t,0,1)},S(mt,"EcorePackageImpl/3",1186),y(1213,1,Tn,hPe),s.wj=function(t){return Q(t,573)},s.xj=function(t){return oe(Zwe,xe,1940,t,0,1)},S(mt,"EcorePackageImpl/30",1213),y(1214,1,Tn,dPe),s.wj=function(t){return Q(t,153)},s.xj=function(t){return oe(Eme,yw,153,t,0,1)},S(mt,"EcorePackageImpl/31",1214),y(1215,1,Tn,gPe),s.wj=function(t){return Q(t,72)},s.xj=function(t){return oe(Kx,ftt,72,t,0,1)},S(mt,"EcorePackageImpl/32",1215),y(1216,1,Tn,bPe),s.wj=function(t){return Q(t,155)},s.xj=function(t){return oe(e4,we,155,t,0,1)},S(mt,"EcorePackageImpl/33",1216),y(1217,1,Tn,pPe),s.wj=function(t){return Q(t,19)},s.xj=function(t){return oe($r,we,19,t,0,1)},S(mt,"EcorePackageImpl/34",1217),y(1218,1,Tn,wPe),s.wj=function(t){return Q(t,290)},s.xj=function(t){return oe(ehe,xe,290,t,0,1)},S(mt,"EcorePackageImpl/35",1218),y(1219,1,Tn,mPe),s.wj=function(t){return Q(t,162)},s.xj=function(t){return oe(H0,we,162,t,0,1)},S(mt,"EcorePackageImpl/36",1219),y(1220,1,Tn,vPe),s.wj=function(t){return Q(t,83)},s.xj=function(t){return oe(the,xe,83,t,0,1)},S(mt,"EcorePackageImpl/37",1220),y(1221,1,Tn,yPe),s.wj=function(t){return Q(t,591)},s.xj=function(t){return oe(mme,xe,591,t,0,1)},S(mt,"EcorePackageImpl/38",1221),y(1222,1,Tn,_Pe),s.wj=function(t){return!1},s.xj=function(t){return oe(Lme,xe,2111,t,0,1)},S(mt,"EcorePackageImpl/39",1222),y(1187,1,Tn,EPe),s.wj=function(t){return Q(t,88)},s.xj=function(t){return oe(va,xe,26,t,0,1)},S(mt,"EcorePackageImpl/4",1187),y(1223,1,Tn,SPe),s.wj=function(t){return Q(t,184)},s.xj=function(t){return oe(z0,we,184,t,0,1)},S(mt,"EcorePackageImpl/40",1223),y(1224,1,Tn,PPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(mt,"EcorePackageImpl/41",1224),y(1225,1,Tn,MPe),s.wj=function(t){return Q(t,588)},s.xj=function(t){return oe(Qwe,xe,588,t,0,1)},S(mt,"EcorePackageImpl/42",1225),y(1226,1,Tn,CPe),s.wj=function(t){return!1},s.xj=function(t){return oe(Nme,we,2112,t,0,1)},S(mt,"EcorePackageImpl/43",1226),y(1227,1,Tn,IPe),s.wj=function(t){return Q(t,42)},s.xj=function(t){return oe(fb,gD,42,t,0,1)},S(mt,"EcorePackageImpl/44",1227),y(1188,1,Tn,TPe),s.wj=function(t){return Q(t,138)},s.xj=function(t){return oe(vl,xe,138,t,0,1)},S(mt,"EcorePackageImpl/5",1188),y(1189,1,Tn,jPe),s.wj=function(t){return Q(t,148)},s.xj=function(t){return oe(dY,xe,148,t,0,1)},S(mt,"EcorePackageImpl/6",1189),y(1190,1,Tn,APe),s.wj=function(t){return Q(t,457)},s.xj=function(t){return oe($x,xe,671,t,0,1)},S(mt,"EcorePackageImpl/7",1190),y(1191,1,Tn,OPe),s.wj=function(t){return Q(t,573)},s.xj=function(t){return oe(Yh,xe,678,t,0,1)},S(mt,"EcorePackageImpl/8",1191),y(1192,1,Tn,DPe),s.wj=function(t){return Q(t,471)},s.xj=function(t){return oe(iM,xe,471,t,0,1)},S(mt,"EcorePackageImpl/9",1192),y(1025,1982,Fet,w9e),s.bi=function(t,n){Ujt(this,c(n,415))},s.fi=function(t,n){OGe(this,t,c(n,415))},S(mt,"MinimalEObjectImpl/1ArrayDelegatingAdapterList",1025),y(1026,143,xT,Dxe),s.Ai=function(){return this.a.a},S(mt,"MinimalEObjectImpl/1ArrayDelegatingAdapterList/1",1026),y(1053,1052,{},W7e),S("org.eclipse.emf.ecore.plugin","EcorePlugin",1053);var mme=pi(htt,"Resource");y(781,1378,dtt),s.Yk=function(t){},s.Zk=function(t){},s.Vk=function(){return!this.a&&(this.a=new ON(this)),this.a},s.Wk=function(t){var n,i,r,o,u;if(r=t.length,r>0)if(fn(0,t.length),t.charCodeAt(0)==47){for(u=new Dc(4),o=1,n=1;n0&&(t=t.substr(0,i)));return bRt(this,t)},s.Xk=function(){return this.c},s.Ib=function(){var t;return r1(this.gm)+"@"+(t=fi(this)>>>0,t.toString(16))+" uri='"+this.d+"'"},s.b=!1,S(HV,"ResourceImpl",781),y(1379,781,dtt,fAe),S(HV,"BinaryResourceImpl",1379),y(1169,694,NV),s.si=function(t){return Q(t,56)?X5t(this,c(t,56)):Q(t,591)?new $t(c(t,591).Vk()):le(t)===le(this.f)?c(t,14).Kc():(p_(),Wj.a)},s.Ob=function(){return hse(this)},s.a=!1,S(ai,"EcoreUtil/ContentTreeIterator",1169),y(1380,1169,NV,axe),s.si=function(t){return le(t)===le(this.f)?c(t,15).Kc():new GNe(c(t,56))},S(HV,"ResourceImpl/5",1380),y(648,1994,ttt,ON),s.Hc=function(t){return this.i<=4?pE(this,t):Q(t,49)&&c(t,49).Zg()==this.a},s.bi=function(t,n){t==this.i-1&&(this.a.b||(this.a.b=!0))},s.di=function(t,n){t==0?this.a.b||(this.a.b=!0):M$(this,t,n)},s.fi=function(t,n){},s.gi=function(t,n,i){},s.aj=function(){return 2},s.Ai=function(){return this.a},s.bj=function(){return!0},s.cj=function(t,n){var i;return i=c(t,49),n=i.wh(this.a,n),n},s.dj=function(t,n){var i;return i=c(t,49),i.wh(null,n)},s.ej=function(){return!1},s.hi=function(){return!0},s.ri=function(t){return oe(J1,xe,56,t,0,1)},s.ni=function(){return!1},S(HV,"ResourceImpl/ContentsEList",648),y(957,1964,xE,lAe),s.Zc=function(t){return this.a._h(t)},s.gc=function(){return this.a.gc()},S(ai,"AbstractSequentialInternalEList/1",957);var vme,yme,Ir,_me;y(624,1,{},fRe);var qx,Hx;S(ai,"BasicExtendedMetaData",624),y(1160,1,{},f7e),s.$k=function(){return null},s._k=function(){return this.a==-2&&Wmt(this,EDt(this.d,this.b)),this.a},s.al=function(){return null},s.bl=function(){return st(),st(),Qr},s.ne=function(){return this.c==XE&&Xmt(this,uze(this.d,this.b)),this.c},s.cl=function(){return 0},s.a=-2,s.c=XE,S(ai,"BasicExtendedMetaData/EClassExtendedMetaDataImpl",1160),y(1161,1,{},DNe),s.$k=function(){return this.a==(k_(),qx)&&Ymt(this,FLt(this.f,this.b)),this.a},s._k=function(){return 0},s.al=function(){return this.c==(k_(),qx)&&Jmt(this,BLt(this.f,this.b)),this.c},s.bl=function(){return!this.d&&Qmt(this,FFt(this.f,this.b)),this.d},s.ne=function(){return this.e==XE&&Zmt(this,uze(this.f,this.b)),this.e},s.cl=function(){return this.g==-2&&evt(this,K7t(this.f,this.b)),this.g},s.e=XE,s.g=-2,S(ai,"BasicExtendedMetaData/EDataTypeExtendedMetaDataImpl",1161),y(1159,1,{},d7e),s.b=!1,s.c=!1,S(ai,"BasicExtendedMetaData/EPackageExtendedMetaDataImpl",1159),y(1162,1,{},ONe),s.c=-2,s.e=XE,s.f=XE,S(ai,"BasicExtendedMetaData/EStructuralFeatureExtendedMetaDataImpl",1162),y(585,622,xo,a8),s.aj=function(){return this.c},s.Fk=function(){return!1},s.li=function(t,n){return n},s.c=0,S(ai,"EDataTypeEList",585);var Eme=pi(ai,"FeatureMap");y(75,585,{3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},Ci),s.Vc=function(t,n){RLt(this,t,c(n,72))},s.Fc=function(t){return Zxt(this,c(t,72))},s.Yh=function(t){BSt(this,c(t,72))},s.cj=function(t,n){return v_t(this,c(t,72),n)},s.dj=function(t,n){return vte(this,c(t,72),n)},s.ii=function(t,n){return nBt(this,t,n)},s.li=function(t,n){return xKt(this,t,c(n,72))},s._c=function(t,n){return PNt(this,t,c(n,72))},s.jj=function(t,n){return y_t(this,c(t,72),n)},s.kj=function(t,n){return Lke(this,c(t,72),n)},s.lj=function(t,n,i){return P7t(this,c(t,72),c(n,72),i)},s.oi=function(t,n){return bq(this,t,c(n,72))},s.dl=function(t,n){return eue(this,t,n)},s.Wc=function(t,n){var i,r,o,u,a,l,d,p,v;for(p=new d0(n.gc()),o=n.Kc();o.Ob();)if(r=c(o.Pb(),72),u=r.ak(),Bh(this.e,u))(!u.hi()||!rO(this,u,r.dd())&&!pE(p,r))&&on(p,r);else{for(v=qc(this.e.Tg(),u),i=c(this.g,119),a=!0,l=0;l=0;)if(n=t[this.c],this.k.rl(n.ak()))return this.j=this.f?n:n.dd(),this.i=-2,!0;return this.i=-1,this.g=-1,!1},S(ai,"BasicFeatureMap/FeatureEIterator",410),y(662,410,Wf,RF),s.Lk=function(){return!0},S(ai,"BasicFeatureMap/ResolvingFeatureEIterator",662),y(955,486,sk,rDe),s.Gi=function(){return this},S(ai,"EContentsEList/1",955),y(956,486,sk,j7e),s.Lk=function(){return!1},S(ai,"EContentsEList/2",956),y(954,279,uk,oDe),s.Nk=function(t){},s.Ob=function(){return!1},s.Sb=function(){return!1},S(ai,"EContentsEList/FeatureIteratorImpl/1",954),y(825,585,xo,Pee),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EDataTypeEList/Unsettable",825),y(1849,585,xo,dDe),s.hi=function(){return!0},S(ai,"EDataTypeUniqueEList",1849),y(1850,825,xo,gDe),s.hi=function(){return!0},S(ai,"EDataTypeUniqueEList/Unsettable",1850),y(139,85,xo,gs),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentEList/Resolving",139),y(1163,545,xo,hDe),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentEList/Unsettable/Resolving",1163),y(748,16,xo,hte),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EObjectContainmentWithInverseEList/Unsettable",748),y(1173,748,xo,Ske),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentWithInverseEList/Unsettable/Resolving",1173),y(743,496,xo,See),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EObjectEList/Unsettable",743),y(328,496,xo,Om),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectResolvingEList",328),y(1641,743,xo,bDe),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectResolvingEList/Unsettable",1641),y(1381,1,{},kPe);var Bft;S(ai,"EObjectValidator",1381),y(546,496,xo,T8),s.zk=function(){return this.d},s.Ak=function(){return this.b},s.bj=function(){return!0},s.Dk=function(){return!0},s.b=0,S(ai,"EObjectWithInverseEList",546),y(1176,546,xo,Pke),s.Ck=function(){return!0},S(ai,"EObjectWithInverseEList/ManyInverse",1176),y(625,546,xo,eB),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EObjectWithInverseEList/Unsettable",625),y(1175,625,xo,Mke),s.Ck=function(){return!0},S(ai,"EObjectWithInverseEList/Unsettable/ManyInverse",1175),y(749,546,xo,dte),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectWithInverseResolvingEList",749),y(31,749,xo,dt),s.Ck=function(){return!0},S(ai,"EObjectWithInverseResolvingEList/ManyInverse",31),y(750,625,xo,gte),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectWithInverseResolvingEList/Unsettable",750),y(1174,750,xo,Cke),s.Ck=function(){return!0},S(ai,"EObjectWithInverseResolvingEList/Unsettable/ManyInverse",1174),y(1164,622,xo),s.ai=function(){return(this.b&1792)==0},s.ci=function(){this.b|=1},s.Bk=function(){return(this.b&4)!=0},s.bj=function(){return(this.b&40)!=0},s.Ck=function(){return(this.b&16)!=0},s.Dk=function(){return(this.b&8)!=0},s.Ek=function(){return(this.b&Iw)!=0},s.rk=function(){return(this.b&32)!=0},s.Fk=function(){return(this.b&Ka)!=0},s.wj=function(t){return this.d?sFe(this.d,t):this.ak().Yj().wj(t)},s.fj=function(){return(this.b&2)!=0?(this.b&1)!=0:this.i!=0},s.hi=function(){return(this.b&128)!=0},s.Xj=function(){var t;Xt(this),(this.b&2)!=0&&(Qs(this.e)?(t=(this.b&1)!=0,this.b&=-2,Q3(this,new La(this.e,2,di(this.e.Tg(),this.ak()),t,!1))):this.b&=-2)},s.ni=function(){return(this.b&1536)==0},s.b=0,S(ai,"EcoreEList/Generic",1164),y(1165,1164,xo,pLe),s.ak=function(){return this.a},S(ai,"EcoreEList/Dynamic",1165),y(747,63,Tf,IQ),s.ri=function(t){return aI(this.a.a,t)},S(ai,"EcoreEMap/1",747),y(746,85,xo,hne),s.bi=function(t,n){P7(this.b,c(n,133))},s.di=function(t,n){nqe(this.b)},s.ei=function(t,n,i){var r;++(r=this.b,c(n,133),r).e},s.fi=function(t,n){PK(this.b,c(n,133))},s.gi=function(t,n,i){PK(this.b,c(i,133)),le(i)===le(n)&&c(i,133).Th(T2t(c(n,133).cd())),P7(this.b,c(n,133))},S(ai,"EcoreEMap/DelegateEObjectContainmentEList",746),y(1171,151,$fe,bKe),S(ai,"EcoreEMap/Unsettable",1171),y(1172,746,xo,Ike),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EcoreEMap/Unsettable/UnsettableDelegateEObjectContainmentEList",1172),y(1168,228,fv,vxe),s.a=!1,s.b=!1,S(ai,"EcoreUtil/Copier",1168),y(745,1,dr,GNe),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return qHe(this)},s.Pb=function(){var t;return qHe(this),t=this.b,this.b=null,t},s.Qb=function(){this.a.Qb()},S(ai,"EcoreUtil/ProperContentIterator",745),y(1382,1381,{},ACe);var $ft;S(ai,"EcoreValidator",1382);var Kft;pi(ai,"FeatureMapUtil/Validator"),y(1260,1,{1942:1},RPe),s.rl=function(t){return!0},S(ai,"FeatureMapUtil/1",1260),y(757,1,{1942:1},jue),s.rl=function(t){var n;return this.c==t?!0:(n=Fe(Bt(this.a,t)),n==null?vFt(this,t)?(eBe(this.a,t,(Pt(),ZE)),!0):(eBe(this.a,t,(Pt(),hb)),!1):n==(Pt(),ZE))},s.e=!1;var wY;S(ai,"FeatureMapUtil/BasicValidator",757),y(758,43,fv,vee),S(ai,"FeatureMapUtil/BasicValidator/Cache",758),y(501,52,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,69:1,95:1},pC),s.Vc=function(t,n){wWe(this.c,this.b,t,n)},s.Fc=function(t){return eue(this.c,this.b,t)},s.Wc=function(t,n){return R$t(this.c,this.b,t,n)},s.Gc=function(t){return h5(this,t)},s.Xh=function(t,n){tIt(this.c,this.b,t,n)},s.lk=function(t,n){return Wse(this.c,this.b,t,n)},s.pi=function(t){return iD(this.c,this.b,t,!1)},s.Zh=function(){return $7e(this.c,this.b)},s.$h=function(){return b2t(this.c,this.b)},s._h=function(t){return cCt(this.c,this.b,t)},s.mk=function(t,n){return oke(this,t,n)},s.$b=function(){ky(this)},s.Hc=function(t){return rO(this.c,this.b,t)},s.Ic=function(t){return oTt(this.c,this.b,t)},s.Xb=function(t){return iD(this.c,this.b,t,!0)},s.Wj=function(t){return this},s.Xc=function(t){return wMt(this.c,this.b,t)},s.dc=function(){return L9(this)},s.fj=function(){return!jI(this.c,this.b)},s.Kc=function(){return HCt(this.c,this.b)},s.Yc=function(){return zCt(this.c,this.b)},s.Zc=function(t){return nAt(this.c,this.b,t)},s.ii=function(t,n){return xYe(this.c,this.b,t,n)},s.ji=function(t,n){eCt(this.c,this.b,t,n)},s.$c=function(t){return gGe(this.c,this.b,t)},s.Mc=function(t){return $Ft(this.c,this.b,t)},s._c=function(t,n){return KYe(this.c,this.b,t,n)},s.Wb=function(t){$7(this.c,this.b),h5(this,c(t,15))},s.gc=function(){return bAt(this.c,this.b)},s.Pc=function(){return gPt(this.c,this.b)},s.Qc=function(t){return mMt(this.c,this.b,t)},s.Ib=function(){var t,n;for(n=new nd,n.a+="[",t=$7e(this.c,this.b);gK(t);)co(n,g5(E7(t))),gK(t)&&(n.a+=zr);return n.a+="]",n.a},s.Xj=function(){$7(this.c,this.b)},S(ai,"FeatureMapUtil/FeatureEList",501),y(627,36,xT,p$),s.yi=function(t){return Z5(this,t)},s.Di=function(t){var n,i,r,o,u,a,l;switch(this.d){case 1:case 2:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.g=t.zi(),t.xi()==1&&(this.d=1),!0;break}case 3:{switch(o=t.xi(),o){case 3:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.d=5,n=new d0(2),on(n,this.g),on(n,t.zi()),this.g=n,!0;break}}break}case 5:{switch(o=t.xi(),o){case 3:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return i=c(this.g,14),i.Fc(t.zi()),!0;break}}break}case 4:{switch(o=t.xi(),o){case 3:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.d=1,this.g=t.zi(),!0;break}case 4:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.d=6,l=new d0(2),on(l,this.n),on(l,t.Bi()),this.n=l,a=U(G(Qt,1),_n,25,15,[this.o,t.Ci()]),this.g=a,!0;break}}break}case 6:{switch(o=t.xi(),o){case 4:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return i=c(this.n,14),i.Fc(t.Bi()),a=c(this.g,48),r=oe(Qt,_n,25,a.length+1,15,1),bc(a,0,r,0,a.length),r[a.length]=t.Ci(),this.g=r,!0;break}}break}}return!1},S(ai,"FeatureMapUtil/FeatureENotificationImpl",627),y(552,501,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},d8),s.dl=function(t,n){return eue(this.c,t,n)},s.el=function(t,n,i){return Wse(this.c,t,n,i)},s.fl=function(t,n,i){return wue(this.c,t,n,i)},s.gl=function(){return this},s.hl=function(t,n){return cT(this.c,t,n)},s.il=function(t){return c(iD(this.c,this.b,t,!1),72).ak()},s.jl=function(t){return c(iD(this.c,this.b,t,!1),72).dd()},s.kl=function(){return this.a},s.ll=function(t){return!jI(this.c,t)},s.ml=function(t,n){rD(this.c,t,n)},s.nl=function(t){return EKe(this.c,t)},s.ol=function(t){Gze(this.c,t)},S(ai,"FeatureMapUtil/FeatureFeatureMap",552),y(1259,1,qV,g7e),s.Wj=function(t){return iD(this.b,this.a,-1,t)},s.fj=function(){return!jI(this.b,this.a)},s.Wb=function(t){rD(this.b,this.a,t)},s.Xj=function(){$7(this.b,this.a)},S(ai,"FeatureMapUtil/FeatureValue",1259);var u3,mY,vY,a3,qft,Xj=pi(pk,"AnyType");y(666,60,$h,UN),S(pk,"InvalidDatatypeValueException",666);var zx=pi(pk,btt),Jj=pi(pk,ptt),Sme=pi(pk,wtt),Hft,cc,Pme,Ib,zft,Vft,Gft,Uft,Wft,Yft,Xft,Jft,Qft,Zft,eht,Wv,tht,Yv,uM,nht,ap,Qj,Zj,iht,aM,lM;y(830,506,{105:1,92:1,90:1,56:1,49:1,97:1,843:1},WQ),s._g=function(t,n,i){switch(t){case 0:return i?(!this.c&&(this.c=new Ci(this,0)),this.c):(!this.c&&(this.c=new Ci(this,0)),this.c.b);case 1:return i?(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)):(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).kl();case 2:return i?(!this.b&&(this.b=new Ci(this,2)),this.b):(!this.b&&(this.b=new Ci(this,2)),this.b.b)}return Nu(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.jh=function(t,n,i){var r;switch(n){case 0:return!this.c&&(this.c=new Ci(this,0)),nT(this.c,t,i);case 1:return(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),69)).mk(t,i);case 2:return!this.b&&(this.b=new Ci(this,2)),nT(this.b,t,i)}return r=c(at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),n),66),r.Nj().Rj(this,Kie(this),n-Ft(this.zh()),t,i)},s.lh=function(t){switch(t){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).dc();case 2:return!!this.b&&this.b.i!=0}return xu(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),xC(this.c,n);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).Wb(n);return;case 2:!this.b&&(this.b=new Ci(this,2)),xC(this.b,n);return}qu(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),Pme},s.Bh=function(t){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),Xt(this.c);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).$b();return;case 2:!this.b&&(this.b=new Ci(this,2)),Xt(this.b);return}$u(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t))},s.Ib=function(){var t;return(this.j&4)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (mixed: ",u5(t,this.c),t.a+=", anyAttribute: ",u5(t,this.b),t.a+=")",t.a)},S(Fi,"AnyTypeImpl",830),y(667,506,{105:1,92:1,90:1,56:1,49:1,97:1,2021:1,667:1},LPe),s._g=function(t,n,i){switch(t){case 0:return this.a;case 1:return this.b}return Nu(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.lh=function(t){switch(t){case 0:return this.a!=null;case 1:return this.b!=null}return xu(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:svt(this,ln(n));return;case 1:uvt(this,ln(n));return}qu(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),Wv},s.Bh=function(t){switch(t){case 0:this.a=null;return;case 1:this.b=null;return}$u(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t))},s.Ib=function(){var t;return(this.j&4)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (data: ",co(t,this.a),t.a+=", target: ",co(t,this.b),t.a+=")",t.a)},s.a=null,s.b=null,S(Fi,"ProcessingInstructionImpl",667),y(668,830,{105:1,92:1,90:1,56:1,49:1,97:1,843:1,2022:1,668:1},t9e),s._g=function(t,n,i){switch(t){case 0:return i?(!this.c&&(this.c=new Ci(this,0)),this.c):(!this.c&&(this.c=new Ci(this,0)),this.c.b);case 1:return i?(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)):(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).kl();case 2:return i?(!this.b&&(this.b=new Ci(this,2)),this.b):(!this.b&&(this.b=new Ci(this,2)),this.b.b);case 3:return!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0));case 4:return bte(this.a,(!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0))));case 5:return this.a}return Nu(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.lh=function(t){switch(t){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).dc();case 2:return!!this.b&&this.b.i!=0;case 3:return!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0))!=null;case 4:return bte(this.a,(!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0))))!=null;case 5:return!!this.a}return xu(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),xC(this.c,n);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).Wb(n);return;case 2:!this.b&&(this.b=new Ci(this,2)),xC(this.b,n);return;case 3:eie(this,ln(n));return;case 4:eie(this,pte(this.a,n));return;case 5:avt(this,c(n,148));return}qu(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),Yv},s.Bh=function(t){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),Xt(this.c);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).$b();return;case 2:!this.b&&(this.b=new Ci(this,2)),Xt(this.b);return;case 3:!this.c&&(this.c=new Ci(this,0)),rD(this.c,(Jn(),uM),null);return;case 4:eie(this,pte(this.a,null));return;case 5:this.a=null;return}$u(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t))},S(Fi,"SimpleAnyTypeImpl",668),y(669,506,{105:1,92:1,90:1,56:1,49:1,97:1,2023:1,669:1},e9e),s._g=function(t,n,i){switch(t){case 0:return i?(!this.a&&(this.a=new Ci(this,0)),this.a):(!this.a&&(this.a=new Ci(this,0)),this.a.b);case 1:return i?(!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),this.b):(!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),XC(this.b));case 2:return i?(!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),this.c):(!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),XC(this.c));case 3:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),Qj));case 4:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),Zj));case 5:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),aM));case 6:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),lM))}return Nu(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.jh=function(t,n,i){var r;switch(n){case 0:return!this.a&&(this.a=new Ci(this,0)),nT(this.a,t,i);case 1:return!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),r8(this.b,t,i);case 2:return!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),r8(this.c,t,i);case 5:return!this.a&&(this.a=new Ci(this,0)),oke(vc(this.a,(Jn(),aM)),t,i)}return r=c(at((this.j&2)==0?(Jn(),ap):(!this.k&&(this.k=new il),this.k).ck(),n),66),r.Nj().Rj(this,Kie(this),n-Ft((Jn(),ap)),t,i)},s.lh=function(t){switch(t){case 0:return!!this.a&&this.a.i!=0;case 1:return!!this.b&&this.b.f!=0;case 2:return!!this.c&&this.c.f!=0;case 3:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),Qj)));case 4:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),Zj)));case 5:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),aM)));case 6:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),lM)))}return xu(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:!this.a&&(this.a=new Ci(this,0)),xC(this.a,n);return;case 1:!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),GO(this.b,n);return;case 2:!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),GO(this.c,n);return;case 3:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Qj))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,Qj),c(n,14));return;case 4:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Zj))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,Zj),c(n,14));return;case 5:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),aM))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,aM),c(n,14));return;case 6:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),lM))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,lM),c(n,14));return}qu(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),ap},s.Bh=function(t){switch(t){case 0:!this.a&&(this.a=new Ci(this,0)),Xt(this.a);return;case 1:!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),this.b.c.$b();return;case 2:!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),this.c.c.$b();return;case 3:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Qj)));return;case 4:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Zj)));return;case 5:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),aM)));return;case 6:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),lM)));return}$u(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t))},s.Ib=function(){var t;return(this.j&4)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (mixed: ",u5(t,this.a),t.a+=")",t.a)},S(Fi,"XMLTypeDocumentRootImpl",669),y(1919,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1,2024:1},xPe),s.Ih=function(t,n){switch(t.yj()){case 7:case 8:case 9:case 10:case 16:case 22:case 23:case 24:case 25:case 26:case 32:case 33:case 34:case 36:case 37:case 44:case 45:case 50:case 51:case 53:case 55:case 56:case 57:case 58:case 60:case 61:case 4:return n==null?null:Ro(n);case 19:case 28:case 29:case 35:case 38:case 39:case 41:case 46:case 52:case 54:case 5:return ln(n);case 6:return k3t(c(n,190));case 12:case 47:case 49:case 11:return TXe(this,t,n);case 13:return n==null?null:y$t(c(n,240));case 15:case 14:return n==null?null:ASt(ge(Te(n)));case 17:return OVe((Jn(),n));case 18:return OVe(n);case 21:case 20:return n==null?null:OSt(c(n,155).a);case 27:return R3t(c(n,190));case 30:return Uze((Jn(),c(n,15)));case 31:return Uze(c(n,15));case 40:return L3t((Jn(),n));case 42:return DVe((Jn(),n));case 43:return DVe(n);case 59:case 48:return x3t((Jn(),n));default:throw V(new St(UE+t.ne()+K0))}},s.Jh=function(t){var n,i,r,o,u;switch(t.G==-1&&(t.G=(i=bu(t),i?wd(i.Mh(),t):-1)),t.G){case 0:return n=new WQ,n;case 1:return r=new LPe,r;case 2:return o=new t9e,o;case 3:return u=new e9e,u;default:throw V(new St(CV+t.zb+K0))}},s.Kh=function(t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie;switch(t.yj()){case 5:case 52:case 4:return n;case 6:return X9t(n);case 8:case 7:return n==null?null:N7t(n);case 9:return n==null?null:sI(vu((r=Ec(n,!0),r.length>0&&(fn(0,r.length),r.charCodeAt(0)==43)?r.substr(1):r),-128,127)<<24>>24);case 10:return n==null?null:sI(vu((o=Ec(n,!0),o.length>0&&(fn(0,o.length),o.charCodeAt(0)==43)?o.substr(1):o),-128,127)<<24>>24);case 11:return ln(R0(this,(Jn(),Gft),n));case 12:return ln(R0(this,(Jn(),Uft),n));case 13:return n==null?null:new bZ(Ec(n,!0));case 15:case 14:return rLt(n);case 16:return ln(R0(this,(Jn(),Wft),n));case 17:return ZHe((Jn(),n));case 18:return ZHe(n);case 28:case 29:case 35:case 38:case 39:case 41:case 54:case 19:return Ec(n,!0);case 21:case 20:return dLt(n);case 22:return ln(R0(this,(Jn(),Yft),n));case 23:return ln(R0(this,(Jn(),Xft),n));case 24:return ln(R0(this,(Jn(),Jft),n));case 25:return ln(R0(this,(Jn(),Qft),n));case 26:return ln(R0(this,(Jn(),Zft),n));case 27:return V9t(n);case 30:return eze((Jn(),n));case 31:return eze(n);case 32:return n==null?null:Ce(vu((v=Ec(n,!0),v.length>0&&(fn(0,v.length),v.charCodeAt(0)==43)?v.substr(1):v),Ar,Fn));case 33:return n==null?null:new l1((A=Ec(n,!0),A.length>0&&(fn(0,A.length),A.charCodeAt(0)==43)?A.substr(1):A));case 34:return n==null?null:Ce(vu((D=Ec(n,!0),D.length>0&&(fn(0,D.length),D.charCodeAt(0)==43)?D.substr(1):D),Ar,Fn));case 36:return n==null?null:Yg(aD((L=Ec(n,!0),L.length>0&&(fn(0,L.length),L.charCodeAt(0)==43)?L.substr(1):L)));case 37:return n==null?null:Yg(aD((N=Ec(n,!0),N.length>0&&(fn(0,N.length),N.charCodeAt(0)==43)?N.substr(1):N)));case 40:return s9t((Jn(),n));case 42:return tze((Jn(),n));case 43:return tze(n);case 44:return n==null?null:new l1((z=Ec(n,!0),z.length>0&&(fn(0,z.length),z.charCodeAt(0)==43)?z.substr(1):z));case 45:return n==null?null:new l1((Y=Ec(n,!0),Y.length>0&&(fn(0,Y.length),Y.charCodeAt(0)==43)?Y.substr(1):Y));case 46:return Ec(n,!1);case 47:return ln(R0(this,(Jn(),eht),n));case 59:case 48:return c9t((Jn(),n));case 49:return ln(R0(this,(Jn(),tht),n));case 50:return n==null?null:oE(vu((ie=Ec(n,!0),ie.length>0&&(fn(0,ie.length),ie.charCodeAt(0)==43)?ie.substr(1):ie),hk,32767)<<16>>16);case 51:return n==null?null:oE(vu((u=Ec(n,!0),u.length>0&&(fn(0,u.length),u.charCodeAt(0)==43)?u.substr(1):u),hk,32767)<<16>>16);case 53:return ln(R0(this,(Jn(),nht),n));case 55:return n==null?null:oE(vu((a=Ec(n,!0),a.length>0&&(fn(0,a.length),a.charCodeAt(0)==43)?a.substr(1):a),hk,32767)<<16>>16);case 56:return n==null?null:oE(vu((l=Ec(n,!0),l.length>0&&(fn(0,l.length),l.charCodeAt(0)==43)?l.substr(1):l),hk,32767)<<16>>16);case 57:return n==null?null:Yg(aD((d=Ec(n,!0),d.length>0&&(fn(0,d.length),d.charCodeAt(0)==43)?d.substr(1):d)));case 58:return n==null?null:Yg(aD((p=Ec(n,!0),p.length>0&&(fn(0,p.length),p.charCodeAt(0)==43)?p.substr(1):p)));case 60:return n==null?null:Ce(vu((i=Ec(n,!0),i.length>0&&(fn(0,i.length),i.charCodeAt(0)==43)?i.substr(1):i),Ar,Fn));case 61:return n==null?null:Ce(vu(Ec(n,!0),Ar,Fn));default:throw V(new St(UE+t.ne()+K0))}};var rht,Mme,oht,Cme;S(Fi,"XMLTypeFactoryImpl",1919),y(586,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1,1945:1,586:1},$xe),s.N=!1,s.O=!1;var cht=!1;S(Fi,"XMLTypePackageImpl",586),y(1852,1,{837:1},NPe),s._j=function(){return uue(),bht},S(Fi,"XMLTypePackageImpl/1",1852),y(1861,1,Tn,FPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/10",1861),y(1862,1,Tn,BPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/11",1862),y(1863,1,Tn,$Pe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/12",1863),y(1864,1,Tn,KPe),s.wj=function(t){return kp(t)},s.xj=function(t){return oe(mr,we,333,t,7,1)},S(Fi,"XMLTypePackageImpl/13",1864),y(1865,1,Tn,qPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/14",1865),y(1866,1,Tn,HPe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/15",1866),y(1867,1,Tn,zPe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/16",1867),y(1868,1,Tn,VPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/17",1868),y(1869,1,Tn,GPe),s.wj=function(t){return Q(t,155)},s.xj=function(t){return oe(e4,we,155,t,0,1)},S(Fi,"XMLTypePackageImpl/18",1869),y(1870,1,Tn,UPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/19",1870),y(1853,1,Tn,WPe),s.wj=function(t){return Q(t,843)},s.xj=function(t){return oe(Xj,xe,843,t,0,1)},S(Fi,"XMLTypePackageImpl/2",1853),y(1871,1,Tn,YPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/20",1871),y(1872,1,Tn,XPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/21",1872),y(1873,1,Tn,JPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/22",1873),y(1874,1,Tn,QPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/23",1874),y(1875,1,Tn,ZPe),s.wj=function(t){return Q(t,190)},s.xj=function(t){return oe(Ps,we,190,t,0,2)},S(Fi,"XMLTypePackageImpl/24",1875),y(1876,1,Tn,eMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/25",1876),y(1877,1,Tn,tMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/26",1877),y(1878,1,Tn,nMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/27",1878),y(1879,1,Tn,iMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/28",1879),y(1880,1,Tn,rMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/29",1880),y(1854,1,Tn,oMe),s.wj=function(t){return Q(t,667)},s.xj=function(t){return oe(zx,xe,2021,t,0,1)},S(Fi,"XMLTypePackageImpl/3",1854),y(1881,1,Tn,cMe),s.wj=function(t){return Q(t,19)},s.xj=function(t){return oe($r,we,19,t,0,1)},S(Fi,"XMLTypePackageImpl/30",1881),y(1882,1,Tn,sMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/31",1882),y(1883,1,Tn,uMe),s.wj=function(t){return Q(t,162)},s.xj=function(t){return oe(H0,we,162,t,0,1)},S(Fi,"XMLTypePackageImpl/32",1883),y(1884,1,Tn,aMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/33",1884),y(1885,1,Tn,lMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/34",1885),y(1886,1,Tn,fMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/35",1886),y(1887,1,Tn,hMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/36",1887),y(1888,1,Tn,dMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/37",1888),y(1889,1,Tn,gMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/38",1889),y(1890,1,Tn,bMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/39",1890),y(1855,1,Tn,pMe),s.wj=function(t){return Q(t,668)},s.xj=function(t){return oe(Jj,xe,2022,t,0,1)},S(Fi,"XMLTypePackageImpl/4",1855),y(1891,1,Tn,wMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/40",1891),y(1892,1,Tn,mMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/41",1892),y(1893,1,Tn,vMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/42",1893),y(1894,1,Tn,yMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/43",1894),y(1895,1,Tn,_Me),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/44",1895),y(1896,1,Tn,EMe),s.wj=function(t){return Q(t,184)},s.xj=function(t){return oe(z0,we,184,t,0,1)},S(Fi,"XMLTypePackageImpl/45",1896),y(1897,1,Tn,SMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/46",1897),y(1898,1,Tn,PMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/47",1898),y(1899,1,Tn,MMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/48",1899),y(O1,1,Tn,CMe),s.wj=function(t){return Q(t,184)},s.xj=function(t){return oe(z0,we,184,t,0,1)},S(Fi,"XMLTypePackageImpl/49",O1),y(1856,1,Tn,IMe),s.wj=function(t){return Q(t,669)},s.xj=function(t){return oe(Sme,xe,2023,t,0,1)},S(Fi,"XMLTypePackageImpl/5",1856),y(1901,1,Tn,TMe),s.wj=function(t){return Q(t,162)},s.xj=function(t){return oe(H0,we,162,t,0,1)},S(Fi,"XMLTypePackageImpl/50",1901),y(1902,1,Tn,jMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/51",1902),y(1903,1,Tn,AMe),s.wj=function(t){return Q(t,19)},s.xj=function(t){return oe($r,we,19,t,0,1)},S(Fi,"XMLTypePackageImpl/52",1903),y(1857,1,Tn,OMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/6",1857),y(1858,1,Tn,DMe),s.wj=function(t){return Q(t,190)},s.xj=function(t){return oe(Ps,we,190,t,0,2)},S(Fi,"XMLTypePackageImpl/7",1858),y(1859,1,Tn,kMe),s.wj=function(t){return Dp(t)},s.xj=function(t){return oe(Qi,we,476,t,8,1)},S(Fi,"XMLTypePackageImpl/8",1859),y(1860,1,Tn,RMe),s.wj=function(t){return Q(t,217)},s.xj=function(t){return oe(B2,we,217,t,0,1)},S(Fi,"XMLTypePackageImpl/9",1860);var Zl,Fd,fM,Vx,X;y(50,60,$h,an),S(Cd,"RegEx/ParseException",50),y(820,1,{},zJ),s.sl=function(t){return ti*16)throw V(new an(gn((un(),Tet))));i=i*16+o}while(!0);if(this.a!=125)throw V(new an(gn((un(),jet))));if(i>JE)throw V(new an(gn((un(),Aet))));t=i}else{if(o=0,this.c!=0||(o=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(i=o,xn(this),this.c!=0||(o=Jg(this.a))<0)throw V(new an(gn((un(),Md))));i=i*16+o,t=i}break;case 117:if(r=0,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));n=n*16+r,t=n;break;case 118:if(xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,n>JE)throw V(new an(gn((un(),"parser.descappe.4"))));t=n;break;case 65:case 90:case 122:throw V(new an(gn((un(),Oet))))}return t},s.ul=function(t){var n,i;switch(t){case 100:i=(this.e&32)==32?j1("Nd",!0):(Ln(),Gx);break;case 68:i=(this.e&32)==32?j1("Nd",!1):(Ln(),Dme);break;case 119:i=(this.e&32)==32?j1("IsWord",!0):(Ln(),F4);break;case 87:i=(this.e&32)==32?j1("IsWord",!1):(Ln(),Rme);break;case 115:i=(this.e&32)==32?j1("IsSpace",!0):(Ln(),l3);break;case 83:i=(this.e&32)==32?j1("IsSpace",!1):(Ln(),kme);break;default:throw V(new No((n=t,Ott+n.toString(16))))}return i},s.vl=function(t){var n,i,r,o,u,a,l,d,p,v,A,D;for(this.b=1,xn(this),n=null,this.c==0&&this.a==94?(xn(this),t?v=(Ln(),Ln(),new du(5)):(n=(Ln(),Ln(),new du(4)),_c(n,0,JE),v=new du(4))):v=(Ln(),Ln(),new du(4)),o=!0;(D=this.c)!=1&&!(D==0&&this.a==93&&!o);){if(o=!1,i=this.a,r=!1,D==10)switch(i){case 100:case 68:case 119:case 87:case 115:case 83:pw(v,this.ul(i)),r=!0;break;case 105:case 73:case 99:case 67:i=this.Ll(v,i),i<0&&(r=!0);break;case 112:case 80:if(A=lse(this,i),!A)throw V(new an(gn((un(),BV))));pw(v,A),r=!0;break;default:i=this.tl()}else if(D==20){if(a=g_(this.i,58,this.d),a<0)throw V(new an(gn((un(),Rfe))));if(l=!0,Pr(this.i,this.d)==94&&(++this.d,l=!1),u=fu(this.i,this.d,a),d=KBe(u,l,(this.e&512)==512),!d)throw V(new an(gn((un(),Eet))));if(pw(v,d),r=!0,a+1>=this.j||Pr(this.i,a+1)!=93)throw V(new an(gn((un(),Rfe))));this.d=a+2}if(xn(this),!r)if(this.c!=0||this.a!=45)_c(v,i,i);else{if(xn(this),(D=this.c)==1)throw V(new an(gn((un(),ok))));D==0&&this.a==93?(_c(v,i,i),_c(v,45,45)):(p=this.a,D==10&&(p=this.tl()),xn(this),_c(v,i,p))}(this.e&Ka)==Ka&&this.c==0&&this.a==44&&xn(this)}if(this.c==1)throw V(new an(gn((un(),ok))));return n&&(I6(n,v),v=n),tv(v),M6(v),this.b=0,xn(this),v},s.wl=function(){var t,n,i,r;for(i=this.vl(!1);(r=this.c)!=7;)if(t=this.a,r==0&&(t==45||t==38)||r==4){if(xn(this),this.c!=9)throw V(new an(gn((un(),Met))));if(n=this.vl(!1),r==4)pw(i,n);else if(t==45)I6(i,n);else if(t==38)EXe(i,n);else throw V(new No("ASSERT"))}else throw V(new an(gn((un(),Cet))));return xn(this),i},s.xl=function(){var t,n;return t=this.a-48,n=(Ln(),Ln(),new ZB(12,null,t)),!this.g&&(this.g=new WA),UA(this.g,new TQ(t)),xn(this),n},s.yl=function(){return xn(this),Ln(),aht},s.zl=function(){return xn(this),Ln(),uht},s.Al=function(){throw V(new an(gn((un(),zu))))},s.Bl=function(){throw V(new an(gn((un(),zu))))},s.Cl=function(){return xn(this),ujt()},s.Dl=function(){return xn(this),Ln(),fht},s.El=function(){return xn(this),Ln(),dht},s.Fl=function(){var t;if(this.d>=this.j||((t=Pr(this.i,this.d++))&65504)!=64)throw V(new an(gn((un(),vet))));return xn(this),Ln(),Ln(),new $f(0,t-64)},s.Gl=function(){return xn(this),VBt()},s.Hl=function(){return xn(this),Ln(),ght},s.Il=function(){var t;return t=(Ln(),Ln(),new $f(0,105)),xn(this),t},s.Jl=function(){return xn(this),Ln(),hht},s.Kl=function(){return xn(this),Ln(),lht},s.Ll=function(t,n){return this.tl()},s.Ml=function(){return xn(this),Ln(),Ame},s.Nl=function(){var t,n,i,r,o;if(this.d+1>=this.j)throw V(new an(gn((un(),pet))));if(r=-1,n=null,t=Pr(this.i,this.d),49<=t&&t<=57){if(r=t-48,!this.g&&(this.g=new WA),UA(this.g,new TQ(r)),++this.d,Pr(this.i,this.d)!=41)throw V(new an(gn((un(),ab))));++this.d}else switch(t==63&&--this.d,xn(this),n=kue(this),n.e){case 20:case 21:case 22:case 23:break;case 8:if(this.c!=7)throw V(new an(gn((un(),ab))));break;default:throw V(new an(gn((un(),wet))))}if(xn(this),o=P0(this),i=null,o.e==2){if(o.em()!=2)throw V(new an(gn((un(),met))));i=o.am(1),o=o.am(0)}if(this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),Ln(),Ln(),new v$e(r,n,o,i)},s.Ol=function(){return xn(this),Ln(),Ome},s.Pl=function(){var t;if(xn(this),t=j8(24,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Ql=function(){var t;if(xn(this),t=j8(20,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Rl=function(){var t;if(xn(this),t=j8(22,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Sl=function(){var t,n,i,r,o;for(t=0,i=0,n=-1;this.d=this.j)throw V(new an(gn((un(),Dfe))));if(n==45){for(++this.d;this.d=this.j)throw V(new an(gn((un(),Dfe))))}if(n==58){if(++this.d,xn(this),r=Pxe(P0(this),t,i),this.c!=7)throw V(new an(gn((un(),ab))));xn(this)}else if(n==41)++this.d,xn(this),r=Pxe(P0(this),t,i);else throw V(new an(gn((un(),bet))));return r},s.Tl=function(){var t;if(xn(this),t=j8(21,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Ul=function(){var t;if(xn(this),t=j8(23,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Vl=function(){var t,n;if(xn(this),t=this.f++,n=CB(P0(this),t),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),n},s.Wl=function(){var t;if(xn(this),t=CB(P0(this),0),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Xl=function(t){return xn(this),this.c==5?(xn(this),v8(t,(Ln(),Ln(),new Gp(9,t)))):v8(t,(Ln(),Ln(),new Gp(3,t)))},s.Yl=function(t){var n;return xn(this),n=(Ln(),Ln(),new f5(2)),this.c==5?(xn(this),eb(n,dM),eb(n,t)):(eb(n,t),eb(n,dM)),n},s.Zl=function(t){return xn(this),this.c==5?(xn(this),Ln(),Ln(),new Gp(9,t)):(Ln(),Ln(),new Gp(3,t))},s.a=0,s.b=0,s.c=0,s.d=0,s.e=0,s.f=1,s.g=null,s.j=0,S(Cd,"RegEx/RegexParser",820),y(1824,820,{},n9e),s.sl=function(t){return!1},s.tl=function(){return zse(this)},s.ul=function(t){return CE(t)},s.vl=function(t){return gJe(this)},s.wl=function(){throw V(new an(gn((un(),zu))))},s.xl=function(){throw V(new an(gn((un(),zu))))},s.yl=function(){throw V(new an(gn((un(),zu))))},s.zl=function(){throw V(new an(gn((un(),zu))))},s.Al=function(){return xn(this),CE(67)},s.Bl=function(){return xn(this),CE(73)},s.Cl=function(){throw V(new an(gn((un(),zu))))},s.Dl=function(){throw V(new an(gn((un(),zu))))},s.El=function(){throw V(new an(gn((un(),zu))))},s.Fl=function(){return xn(this),CE(99)},s.Gl=function(){throw V(new an(gn((un(),zu))))},s.Hl=function(){throw V(new an(gn((un(),zu))))},s.Il=function(){return xn(this),CE(105)},s.Jl=function(){throw V(new an(gn((un(),zu))))},s.Kl=function(){throw V(new an(gn((un(),zu))))},s.Ll=function(t,n){return pw(t,CE(n)),-1},s.Ml=function(){return xn(this),Ln(),Ln(),new $f(0,94)},s.Nl=function(){throw V(new an(gn((un(),zu))))},s.Ol=function(){return xn(this),Ln(),Ln(),new $f(0,36)},s.Pl=function(){throw V(new an(gn((un(),zu))))},s.Ql=function(){throw V(new an(gn((un(),zu))))},s.Rl=function(){throw V(new an(gn((un(),zu))))},s.Sl=function(){throw V(new an(gn((un(),zu))))},s.Tl=function(){throw V(new an(gn((un(),zu))))},s.Ul=function(){throw V(new an(gn((un(),zu))))},s.Vl=function(){var t;if(xn(this),t=CB(P0(this),0),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Wl=function(){throw V(new an(gn((un(),zu))))},s.Xl=function(t){return xn(this),v8(t,(Ln(),Ln(),new Gp(3,t)))},s.Yl=function(t){var n;return xn(this),n=(Ln(),Ln(),new f5(2)),eb(n,t),eb(n,dM),n},s.Zl=function(t){return xn(this),Ln(),Ln(),new Gp(3,t)};var Xv=null,L4=null;S(Cd,"RegEx/ParserForXMLSchema",1824),y(117,1,QE,Lb),s.$l=function(t){throw V(new No("Not supported."))},s._l=function(){return-1},s.am=function(t){return null},s.bm=function(){return null},s.cm=function(t){},s.dm=function(t){},s.em=function(){return 0},s.Ib=function(){return this.fm(0)},s.fm=function(t){return this.e==11?".":""},s.e=0;var Ime,N4,hM,sht,Tme,tm=null,Gx,yY=null,jme,dM,_Y=null,Ame,Ome,Dme,kme,Rme,uht,l3,aht,lht,fht,hht,F4,dht,ght,Bzt=S(Cd,"RegEx/Token",117);y(136,117,{3:1,136:1,117:1},du),s.fm=function(t){var n,i,r;if(this.e==4)if(this==jme)i=".";else if(this==Gx)i="\\d";else if(this==F4)i="\\w";else if(this==l3)i="\\s";else{for(r=new nd,r.a+="[",n=0;n0&&(r.a+=","),this.b[n]===this.b[n+1]?co(r,oT(this.b[n])):(co(r,oT(this.b[n])),r.a+="-",co(r,oT(this.b[n+1])));r.a+="]",i=r.a}else if(this==Dme)i="\\D";else if(this==Rme)i="\\W";else if(this==kme)i="\\S";else{for(r=new nd,r.a+="[^",n=0;n0&&(r.a+=","),this.b[n]===this.b[n+1]?co(r,oT(this.b[n])):(co(r,oT(this.b[n])),r.a+="-",co(r,oT(this.b[n+1])));r.a+="]",i=r.a}return i},s.a=!1,s.c=!1,S(Cd,"RegEx/RangeToken",136),y(584,1,{584:1},TQ),s.a=0,S(Cd,"RegEx/RegexParser/ReferencePosition",584),y(583,1,{3:1,583:1},d8e),s.Fb=function(t){var n;return t==null||!Q(t,583)?!1:(n=c(t,583),rt(this.b,n.b)&&this.a==n.a)},s.Hb=function(){return md(this.b+"/"+Fse(this.a))},s.Ib=function(){return this.c.fm(this.a)},s.a=0,S(Cd,"RegEx/RegularExpression",583),y(223,117,QE,$f),s._l=function(){return this.a},s.fm=function(t){var n,i,r;switch(this.e){case 0:switch(this.a){case 124:case 42:case 43:case 63:case 40:case 41:case 46:case 91:case 123:case 92:r="\\"+ZF(this.a&Ni);break;case 12:r="\\f";break;case 10:r="\\n";break;case 13:r="\\r";break;case 9:r="\\t";break;case 27:r="\\e";break;default:this.a>=Vr?(i=(n=this.a>>>0,"0"+n.toString(16)),r="\\v"+fu(i,i.length-6,i.length)):r=""+ZF(this.a&Ni)}break;case 8:this==Ame||this==Ome?r=""+ZF(this.a&Ni):r="\\"+ZF(this.a&Ni);break;default:r=null}return r},s.a=0,S(Cd,"RegEx/Token/CharToken",223),y(309,117,QE,Gp),s.am=function(t){return this.a},s.cm=function(t){this.b=t},s.dm=function(t){this.c=t},s.em=function(){return 1},s.fm=function(t){var n;if(this.e==3)if(this.c<0&&this.b<0)n=this.a.fm(t)+"*";else if(this.c==this.b)n=this.a.fm(t)+"{"+this.c+"}";else if(this.c>=0&&this.b>=0)n=this.a.fm(t)+"{"+this.c+","+this.b+"}";else if(this.c>=0&&this.b<0)n=this.a.fm(t)+"{"+this.c+",}";else throw V(new No("Token#toString(): CLOSURE "+this.c+zr+this.b));else if(this.c<0&&this.b<0)n=this.a.fm(t)+"*?";else if(this.c==this.b)n=this.a.fm(t)+"{"+this.c+"}?";else if(this.c>=0&&this.b>=0)n=this.a.fm(t)+"{"+this.c+","+this.b+"}?";else if(this.c>=0&&this.b<0)n=this.a.fm(t)+"{"+this.c+",}?";else throw V(new No("Token#toString(): NONGREEDYCLOSURE "+this.c+zr+this.b));return n},s.b=0,s.c=0,S(Cd,"RegEx/Token/ClosureToken",309),y(821,117,QE,yne),s.am=function(t){return t==0?this.a:this.b},s.em=function(){return 2},s.fm=function(t){var n;return this.b.e==3&&this.b.am(0)==this.a?n=this.a.fm(t)+"+":this.b.e==9&&this.b.am(0)==this.a?n=this.a.fm(t)+"+?":n=this.a.fm(t)+(""+this.b.fm(t)),n},S(Cd,"RegEx/Token/ConcatToken",821),y(1822,117,QE,v$e),s.am=function(t){if(t==0)return this.d;if(t==1)return this.b;throw V(new No("Internal Error: "+t))},s.em=function(){return this.b?2:1},s.fm=function(t){var n;return this.c>0?n="(?("+this.c+")":this.a.e==8?n="(?("+this.a+")":n="(?"+this.a,this.b?n+=this.d+"|"+this.b+")":n+=this.d+")",n},s.c=0,S(Cd,"RegEx/Token/ConditionToken",1822),y(1823,117,QE,vNe),s.am=function(t){return this.b},s.em=function(){return 1},s.fm=function(t){return"(?"+(this.a==0?"":Fse(this.a))+(this.c==0?"":Fse(this.c))+":"+this.b.fm(t)+")"},s.a=0,s.c=0,S(Cd,"RegEx/Token/ModifierToken",1823),y(822,117,QE,Cne),s.am=function(t){return this.a},s.em=function(){return 1},s.fm=function(t){var n;switch(n=null,this.e){case 6:this.b==0?n="(?:"+this.a.fm(t)+")":n="("+this.a.fm(t)+")";break;case 20:n="(?="+this.a.fm(t)+")";break;case 21:n="(?!"+this.a.fm(t)+")";break;case 22:n="(?<="+this.a.fm(t)+")";break;case 23:n="(?"+this.a.fm(t)+")"}return n},s.b=0,S(Cd,"RegEx/Token/ParenToken",822),y(521,117,{3:1,117:1,521:1},ZB),s.bm=function(){return this.b},s.fm=function(t){return this.e==12?"\\"+this.a:ZRt(this.b)},s.a=0,S(Cd,"RegEx/Token/StringToken",521),y(465,117,QE,f5),s.$l=function(t){eb(this,t)},s.am=function(t){return c(i0(this.a,t),117)},s.em=function(){return this.a?this.a.a.c.length:0},s.fm=function(t){var n,i,r,o,u;if(this.e==1){if(this.a.a.c.length==2)n=c(i0(this.a,0),117),i=c(i0(this.a,1),117),i.e==3&&i.am(0)==n?o=n.fm(t)+"+":i.e==9&&i.am(0)==n?o=n.fm(t)+"+?":o=n.fm(t)+(""+i.fm(t));else{for(u=new nd,r=0;r=this.c.b:this.a<=this.c.b},s.Sb=function(){return this.b>0},s.Tb=function(){return this.b},s.Vb=function(){return this.b-1},s.Qb=function(){throw V(new td(Ftt))},s.a=0,s.b=0,S(Zfe,"ExclusiveRange/RangeIterator",254);var Yu=P_(ck,"C"),Qt=P_(tP,"I"),Gs=P_(M2,"Z"),rg=P_(nP,"J"),Ps=P_(Q6,"B"),gr=P_(Z6,"D"),nm=P_(eP,"F"),Jv=P_(iP,"S"),$zt=pi("org.eclipse.elk.core.labels","ILabelManager"),xme=pi(Br,"DiagnosticChain"),Lme=pi(htt,"ResourceSet"),Nme=S(Br,"InvocationTargetException",null),pht=(ZA(),OMt),wht=wht=y7t;CIt(vvt),QIt("permProps",[[[vk,yk],[_k,"gecko1_8"]],[[vk,yk],[_k,"ie10"]],[[vk,yk],[_k,"ie8"]],[[vk,yk],[_k,"ie9"]],[[vk,yk],[_k,"safari"]]]),wht(null,"elk",null)}).call(this)}).call(this,typeof fS<"u"?fS:typeof self<"u"?self:typeof window<"u"?window:{})},{}],3:[function(b,w,m){function P(M,_){if(!(M instanceof _))throw new TypeError("Cannot call a class as a function")}function g(M,_){if(!M)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return _&&(typeof _=="object"||typeof _=="function")?_:M}function E(M,_){if(typeof _!="function"&&_!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof _);M.prototype=Object.create(_&&_.prototype,{constructor:{value:M,enumerable:!1,writable:!0,configurable:!0}}),_&&(Object.setPrototypeOf?Object.setPrototypeOf(M,_):M.__proto__=_)}var C=b("./elk-api.js").default,T=(function(M){E(_,M);function _(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};P(this,_);var O=Object.assign({},I),j=!1;try{b.resolve("web-worker"),j=!0}catch{}if(I.workerUrl)if(j){var k=b("web-worker");O.workerFactory=function(H){return new k(H)}}else console.warn(`Web worker requested but 'web-worker' package not installed. +Consider installing the package or pass your own 'workerFactory' to ELK's constructor. +... Falling back to non-web worker version.`);if(!O.workerFactory){var x=b("./elk-worker.min.js"),R=x.Worker;O.workerFactory=function(H){return new R(H)}}return g(this,(_.__proto__||Object.getPrototypeOf(_)).call(this,O))}return _})(C);Object.defineProperty(w.exports,"__esModule",{value:!0}),w.exports=T,T.default=T},{"./elk-api.js":1,"./elk-worker.min.js":2,"web-worker":4}],4:[function(b,w,m){w.exports=Worker},{}]},{},[3])(3)})})(_ve)),_ve.exports}var JUt=XUt();const QUt=qzt(JUt);var TM={},Eve={},P3={},T0t;function ZUt(){if(T0t)return P3;T0t=1,Object.defineProperty(P3,"__esModule",{value:!0}),P3.DefaultLayoutConfigurator=P3.DefaultElementFilter=P3.ElkLayoutEngine=void 0;const f=LM();class h{constructor(g,E=new w,C=new m,T,M){this.filter=E,this.configurator=C,this.preprocessor=T,this.postprocessor=M,this.elk=g()}layout(g,E){if(this.getBasicType(g)!=="graph")return g;E||(E=new f.SModelIndex,E.add(g));const C=this.transformGraph(g,E);return this.preprocessor&&this.preprocessor.preprocess(C,g,E),this.elk.layout(C).then(T=>(this.postprocessor&&this.postprocessor.postprocess(T,g,E),this.applyLayout(T,E),g))}getBasicType(g){return(0,f.getBasicType)(g)}transformGraph(g,E){const C={id:g.id,layoutOptions:this.configurator.apply(g,E)};return g.children&&(C.children=g.children.filter(T=>this.getBasicType(T)==="node"&&this.filter.apply(T,E)).map(T=>this.transformNode(T,E)),C.edges=g.children.filter(T=>this.getBasicType(T)==="edge"&&this.filter.apply(T,E)).map(T=>this.transformEdge(T,E))),C}transformNode(g,E){var C,T,M;const _={id:g.id,layoutOptions:this.configurator.apply(g,E)};if(g.children){const I={top:0,right:0,bottom:0,left:0};_.children=this.transformCompartment(g,E,I),(I.top!==0||I.right!==0||I.bottom!==0||I.left!==0)&&((C=_.layoutOptions)!==null&&C!==void 0||(_.layoutOptions={}),(T=(M=_.layoutOptions)["org.eclipse.elk.padding"])!==null&&T!==void 0||(M["org.eclipse.elk.padding"]=`[top=${I.top},left=${I.left},bottom=${I.bottom},right=${I.right}]`)),_.edges=g.children.filter(O=>this.getBasicType(O)==="edge"&&this.filter.apply(O,E)).map(O=>this.transformEdge(O,E)),_.labels=g.children.filter(O=>this.getBasicType(O)==="label"&&this.filter.apply(O,E)).map(O=>this.transformLabel(O,E)),_.ports=g.children.filter(O=>this.getBasicType(O)==="port"&&this.filter.apply(O,E)).map(O=>this.transformPort(O,E))}return this.transformShape(_,g),_}transformCompartment(g,E,C){if(!g.children)return;const T=g.children.filter(M=>this.getBasicType(M)==="node"&&this.filter.apply(M,E));if(T.length>0)return T.map(M=>this.transformNode(M,E));for(const M of g.children)if(this.getBasicType(M)==="compartment"&&this.filter.apply(M,E)){const _=M;g.layout&&(_.position&&(C.left+=_.position.x,C.top+=_.position.y),_.size&&g.size&&(C.right+=g.size.width-_.size.width-(_.position?_.position.x:0),C.bottom+=g.size.height-_.size.height-(_.position?_.position.y:0)));const I=this.transformCompartment(_,E,C);if(I)return I}}transformEdge(g,E){const C={id:g.id,sources:[g.sourceId],targets:[g.targetId],layoutOptions:this.configurator.apply(g,E)};g.children&&(C.labels=g.children.filter(M=>this.getBasicType(M)==="label"&&this.filter.apply(M,E)).map(M=>this.transformLabel(M,E)));const T=g.routingPoints;return T&&T.length>=2&&(C.sections=[{id:g.id+":section",startPoint:T[0],bendPoints:T.slice(1,T.length-1),endPoint:T[T.length-1]}]),C}transformLabel(g,E){const C={id:g.id,text:g.text,layoutOptions:this.configurator.apply(g,E)};return this.transformShape(C,g),C}transformPort(g,E){const C={id:g.id,layoutOptions:this.configurator.apply(g,E)};return g.children&&(C.labels=g.children.filter(T=>this.getBasicType(T)==="label"&&this.filter.apply(T,E)).map(T=>this.transformLabel(T,E))),this.transformShape(C,g),C}transformShape(g,E){E.position&&(g.x=E.position.x,g.y=E.position.y),E.size&&(g.width=E.size.width,g.height=E.size.height)}applyLayout(g,E){const C=E.getById(g.id);if(C&&this.getBasicType(C)==="node"&&this.applyShape(C,g,E),g.children)for(const T of g.children)this.applyLayout(T,E);if(g.edges)for(const T of g.edges){const M=E.getById(T.id);M&&this.getBasicType(M)==="edge"&&this.applyEdge(M,T,E)}if(g.ports)for(const T of g.ports){const M=E.getById(T.id);M&&this.getBasicType(M)==="port"&&this.applyShape(M,T,E)}}applyShape(g,E,C){if(E.x!==void 0&&E.y!==void 0&&(g.position={x:E.x,y:E.y}),E.width!==void 0&&E.height!==void 0&&(g.size={width:E.width,height:E.height}),E.labels)for(const T of E.labels){const M=T.id&&C.getById(T.id);M&&this.applyShape(M,T,C)}}applyEdge(g,E,C){const T=[];if(E.sections&&E.sections.length>0){const M=E.sections[0];M.startPoint&&T.push(M.startPoint),M.bendPoints&&T.push(...M.bendPoints),M.endPoint&&T.push(M.endPoint)}else b(E)&&(E.sourcePoint&&T.push(E.sourcePoint),E.bendPoints&&T.push(...E.bendPoints),E.targetPoint&&T.push(E.targetPoint));g.routingPoints=T,E.labels&&E.labels.forEach(M=>{const _=M.id&&C.getById(M.id);_&&this.applyShape(_,M,C)})}}P3.ElkLayoutEngine=h;function b(P){return typeof P.source=="string"&&typeof P.target=="string"}class w{apply(g,E){switch(this.getBasicType(g)){case"node":return this.filterNode(g,E);case"edge":return this.filterEdge(g,E);case"label":return this.filterLabel(g,E);case"port":return this.filterPort(g,E);case"compartment":return this.filterCompartment(g,E);default:return!0}}getBasicType(g){return(0,f.getBasicType)(g)}filterNode(g,E){return!0}filterEdge(g,E){const C=E.getById(g.sourceId);if(!C)return!1;const T=this.getBasicType(C);if(T==="node"&&!this.filterNode(C,E)||T==="port"&&!this.filterPort(C,E))return!1;const M=E.getById(g.targetId);if(!M)return!1;const _=this.getBasicType(M);return!(_==="node"&&!this.filterNode(M,E)||_==="port"&&!this.filterPort(M,E))}filterLabel(g,E){return!0}filterPort(g,E){return!0}filterCompartment(g,E){return!0}}P3.DefaultElementFilter=w;class m{apply(g,E){switch(this.getBasicType(g)){case"graph":return this.graphOptions(g,E);case"node":return this.nodeOptions(g,E);case"edge":return this.edgeOptions(g,E);case"label":return this.labelOptions(g,E);case"port":return this.portOptions(g,E);default:return}}getBasicType(g){return(0,f.getBasicType)(g)}graphOptions(g,E){}nodeOptions(g,E){}edgeOptions(g,E){}labelOptions(g,E){}portOptions(g,E){}}return P3.DefaultLayoutConfigurator=m,P3}var j0t;function eWt(){return j0t||(j0t=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.elkLayoutModule=f.ILayoutPostprocessor=f.ILayoutPreprocessor=f.DefaultLayoutConfigurator=f.ILayoutConfigurator=f.DefaultElementFilter=f.IElementFilter=f.ElkFactory=f.ElkLayoutEngine=void 0;const h=Zt(),b=ZUt();f.ElkLayoutEngine=(0,h.injectable)()(b.ElkLayoutEngine),f.ElkFactory=Symbol("ElkFactory"),f.IElementFilter=Symbol("IElementFilter"),f.DefaultElementFilter=(0,h.injectable)()(b.DefaultElementFilter),f.ILayoutConfigurator=Symbol("ILayoutConfigurator"),f.DefaultLayoutConfigurator=(0,h.injectable)()(b.DefaultLayoutConfigurator),f.ILayoutPreprocessor=Symbol("ILayoutPreprocessor"),f.ILayoutPostprocessor=Symbol("ILayoutPostprocessor"),f.elkLayoutModule=new h.ContainerModule(w=>{w(f.ElkLayoutEngine).toDynamicValue(m=>{const P=m.container.get(f.ElkFactory),g=m.container.get(f.IElementFilter),E=m.container.get(f.ILayoutConfigurator),C=m.container.isBound(f.ILayoutPreprocessor)?m.container.get(f.ILayoutPreprocessor):void 0,T=m.container.isBound(f.ILayoutPostprocessor)?m.container.get(f.ILayoutPostprocessor):void 0;return new f.ElkLayoutEngine(P,g,E,C,T)}).inSingletonScope(),w(f.IElementFilter).to(f.DefaultElementFilter),w(f.ILayoutConfigurator).to(f.DefaultLayoutConfigurator)})})(Eve)),Eve}var A0t;function tWt(){return A0t||(A0t=1,(function(f){var h=TM&&TM.__createBinding||(Object.create?(function(w,m,P,g){g===void 0&&(g=P);var E=Object.getOwnPropertyDescriptor(m,P);(!E||("get"in E?!m.__esModule:E.writable||E.configurable))&&(E={enumerable:!0,get:function(){return m[P]}}),Object.defineProperty(w,g,E)}):(function(w,m,P,g){g===void 0&&(g=P),w[g]=m[P]})),b=TM&&TM.__exportStar||function(w,m){for(var P in w)P!=="default"&&!Object.prototype.hasOwnProperty.call(m,P)&&h(m,w,P)};Object.defineProperty(f,"__esModule",{value:!0}),b(eWt(),f)})(TM)),TM}var R3=tWt(),Xd=(f=>(f.LINES="Lines",f.WRAPPING="Wrapping Lines",f.CIRCLES="Circles",f))(Xd||{});function PX(f){const h=f.value||f.placeholder,{width:b}=uN(h,window.getComputedStyle(f).font),w=f.classList.contains("label-type-name")?2:8,m=b+w;f.style.width=m+"px"}const O0t=new Map;function uN(f,h="11pt sans-serif"){if(!f||f.length===0)return{width:20,height:20};h==""&&(h="11pt sans-serif");let b=O0t.get(h);if(!b){const E=document.createElement("canvas").getContext("2d");if(!E)throw new Error("Could not create canvas context used to measure text width");E.font=h,b={context:E,cache:new Map},O0t.set(h,b)}const{context:w,cache:m}=b,P=m.get(f);if(P)return P;{const g=w.measureText(f),E={width:Math.ceil(g.width),height:Math.ceil(g.actualBoundingBoxAscent+g.actualBoundingBoxDescent)};return m.set(f,E),E}}var nWt=Object.getOwnPropertyDescriptor,nmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?nWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},DL=(f,h)=>(b,w)=>h(b,w,f);class x3 extends R3.DefaultLayoutConfigurator{static _method=Xd.LINES;set method(h){x3._method=h}get method(){return x3._method}graphOptions(){return{[Xd.LINES]:{"org.eclipse.elk.algorithm":"org.eclipse.elk.layered","org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers":"30.0","org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers":"20.0","org.eclipse.elk.port.borderOffset":"14.0","org.eclipse.elk.omitNodeMicroLayout":"true","org.eclipse.elk.layered.nodePlacement.favorStraightEdges":"false"},[Xd.WRAPPING]:{"org.eclipse.elk.algorithm":"org.eclipse.elk.layered","org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers":"10.0","org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers":"5.0","org.eclipse.elk.edgeRouting":"ORTHOGONAL","org.eclipse.elk.layered.layering.strategy":"COFFMAN_GRAHAM","org.eclipse.elk.layered.compaction.postCompaction.strategy":"LEFT_RIGHT_CONSTRAINT_LOCKING","org.eclipse.elk.layered.wrapping.strategy":"MULTI_EDGE","org.eclipse.elk.layered.wrapping.correctionFactor":"2.0","org.eclipse.elk.omitNodeMicroLayout":"true","org.eclipse.elk.port.borderOffset":"14.0"},[Xd.CIRCLES]:{"org.eclipse.elk.algorithm":"org.eclipse.elk.stress","org.eclipse.elk.force.repulsion":"5.0","org.eclipse.elk.force.iterations":"100","org.eclipse.elk.force.repulsivePower":"1","org.eclipse.elk.omitNodeMicroLayout":"true"}}[this.method]}}const iWt=()=>new QUt({algorithms:["layered","stress"]});let $X=class extends R3.ElkLayoutEngine{constructor(f,h,b,w){super(f,h,b,void 0,w),this.configurator=b,this.postprocessor=w}transformShape(f,h){h.position&&(f.x=h.position.x,f.y=h.position.y),"bounds"in h&&(f.width=h.bounds.width??h.size.width,f.height=h.bounds.height??h.size.height)}transformEdge(f,h){const b=super.transformEdge(f,h);return b.sections=[],b}transformLabel(f,h){const b=super.transformLabel(f,h);if(this.configurator.method===Xd.WRAPPING)return b;const w=uN(f.text??"");return b.height=w.height,b.width=w.width,b}applyShape(f,h,b){if(this.getBasicType(f)==="port"&&f instanceof de.SChildElementImpl&&de.isBoundsAware(f.parent)){const P=f.parent;h.x!==void 0&&h.width!==void 0&&h.y!==void 0&&h.height!==void 0&&(this.configurator.method===Xd.CIRCLES?(h.x<=0&&(h.x-=h.width/2),h.y<=0&&(h.y-=h.height/2),h.x>=P.bounds.width&&(h.x-=h.width/2),h.y>=P.bounds.height&&(h.y-=h.height/2)):(h.x<=0&&(h.x+=h.width/2),h.y<=0&&(h.y+=h.height/2),h.x>=P.bounds.width&&(h.x-=h.width/2),h.y>=P.bounds.height&&(h.y-=h.height/2)))}super.applyShape(f,h,b);const w=b.getParent(f.id),m=w?this.getBasicType(w):"unknown";this.getBasicType(f)==="label"&&m=="edge"&&(f.size={width:-1,height:-1})}applyEdge(f,h,b){this.configurator.method===Xd.CIRCLES&&(h.sections=[]),super.applyEdge(f,h,b)}};$X=nmt([vr(),DL(0,Et(R3.ElkFactory)),DL(1,Et(R3.IElementFilter)),DL(2,Et(x3)),DL(3,Et(R3.ILayoutPostprocessor))],$X);let Lve=class{constructor(f){this.configurator=f}portToNodes=new Map;connectedPorts=new Map;nodeSquares=new Map;postprocess(f){if(this.configurator.method===Xd.CIRCLES&&(this.connectedPorts=new Map,!(!f.edges||!f.children))){for(const h of f.edges)for(const b of h.sources){this.connectedPorts.has(b)||this.connectedPorts.set(b,[]);for(const w of h.targets)this.connectedPorts.has(w)||this.connectedPorts.set(w,[]),this.connectedPorts.get(b)?.push(w),this.connectedPorts.get(w)?.push(b)}this.portToNodes=new Map,this.nodeSquares=new Map;for(const h of f.children)if(h.ports){for(const b of h.ports)this.portToNodes.set(b.id,h.id);this.nodeSquares.set(h.id,this.getNodeSquare(h))}for(const[h,b]of this.connectedPorts){if(b.length===0)continue;const w=b.map(x=>{const R=this.getLine(h,x),H=this.portToNodes.get(h);if(!H)return{x:0,y:0};const F=this.nodeSquares.get(H);return F?this.getIntersection(F,R):{x:0,y:0}}),m={x:w.reduce((x,R)=>x+R.x,0)/w.length,y:w.reduce((x,R)=>x+R.y,0)/w.length},P=this.portToNodes.get(h);if(!P)continue;const g=this.nodeSquares.get(P);if(!g)continue;const E={x:m.x,y:m.y},C={x1:g.x,y1:g.y,x2:g.x+g.width,y2:g.y},T={x1:g.x,y1:g.y+g.height,x2:g.x+g.width,y2:g.y+g.height},M={x1:g.x,y1:g.y,x2:g.x,y2:g.y+g.height},_={x1:g.x+g.width,y1:g.y,x2:g.x+g.width,y2:g.y+g.height},I=[{distance:Math.abs(m.y-g.y),dimension:"y",edge:C},{distance:Math.abs(m.y-(g.y+g.height)),dimension:"y",edge:T},{distance:Math.abs(m.x-g.x),dimension:"x",edge:M},{distance:Math.abs(m.x-(g.x+g.width)),dimension:"x",edge:_}];I.sort((x,R)=>x.distance-R.distance);const O=I[0].edge;I[0].dimension==="y"?(E.x=D0t(m.x,O.x1,O.x2),E.y=O.y1):(E.x=O.x1,E.y=D0t(m.y,O.y1,O.y2));const j=f.children.find(x=>x.id===P);if(!j)continue;const k=j.ports?.find(x=>x.id===h);k&&(k.x=E.x-(j.x??0),k.y=E.y-(j.y??0))}}}getNodeSquare(f){return{x:f.x??0,y:f.y??0,width:f.width??0,height:f.height??0}}getCenter(f){return{x:f.x+f.width/2,y:f.y+f.height/2}}getLine(f,h){const b=this.portToNodes.get(f),w=this.portToNodes.get(h);if(!b||!w)return{x1:0,y1:0,x2:0,y2:0};const m=this.nodeSquares.get(b),P=this.nodeSquares.get(w),g=this.getCenter(m),E=this.getCenter(P);return{x1:g.x,y1:g.y,x2:E.x,y2:E.y}}getIntersection(f,h){const b={x:f.x,y:f.y},w={x:f.x+f.width,y:f.y},m={x:f.x,y:f.y+f.height},P={x:f.x+f.width,y:f.y+f.height};return[this.getLineIntersection(h,{x1:b.x,y1:b.y,x2:w.x,y2:w.y}),this.getLineIntersection(h,{x1:w.x,y1:w.y,x2:P.x,y2:P.y}),this.getLineIntersection(h,{x1:P.x,y1:P.y,x2:m.x,y2:m.y}),this.getLineIntersection(h,{x1:m.x,y1:m.y,x2:b.x,y2:b.y})].filter(C=>C.x>=Math.min(h.x1,h.x2)&&C.x<=Math.max(h.x1,h.x2)&&C.y>=Math.min(h.y1,h.y2)&&C.y<=Math.max(h.y1,h.y2))[0]??{x:0,y:0}}getLineIntersection(f,h){const b=f.x1,w=f.y1,m=f.x2,P=f.y2,g=h.x1,E=h.y1,C=h.x2,T=h.y2,M=(b-m)*(E-T)-(w-P)*(g-C);if(M===0)return{x:0,y:0};const _=((b*P-w*m)*(g-C)-(b-m)*(g*T-E*C))/M,I=((b*P-w*m)*(E-T)-(w-P)*(g*T-E*C))/M;return{x:_,y:I}}};Lve=nmt([vr(),DL(0,Et(x3))],Lve);function D0t(f,h,b){const w=Math.min(h,b),m=Math.max(h,b);return Math.max(w,Math.min(m,f))}class Jd extends de.AbstractUIExtension{static ID="loading-indicator";loadingIndicatorWrapper;loadingIndicatorText;waitTimeout;id(){return Jd.ID}containerClass(){return Jd.ID}initializeContents(h){this.loadingIndicatorWrapper=document.createElement("div"),this.loadingIndicatorWrapper.id="loading-indicator-wrapper",this.loadingIndicatorWrapper.style.display="none";const b=document.createElement("div");b.id="turning-circle",this.loadingIndicatorWrapper.appendChild(b),this.loadingIndicatorText=document.createElement("div"),this.loadingIndicatorText.id="loading-indicator-text",this.loadingIndicatorWrapper.appendChild(this.loadingIndicatorText),h.appendChild(this.loadingIndicatorWrapper)}showIndicator(h){this.waitTimeout=setTimeout(()=>{this.waitTimeout&&this.loadingIndicatorWrapper&&(this.loadingIndicatorWrapper.style.display="flex",this.loadingIndicatorText&&(this.loadingIndicatorText.innerText=h||"Loading..."),this.loadingIndicatorWrapper.focus(),this.waitTimeout=void 0)},200)}hideIndicator(){this.waitTimeout&&(clearTimeout(this.waitTimeout),this.waitTimeout=void 0),this.loadingIndicatorWrapper&&(this.loadingIndicatorWrapper.style.display="none")}}var rWt=Object.getOwnPropertyDescriptor,oWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?rWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},MX=(f,h)=>(b,w)=>h(b,w,f),D3;(f=>{f.KIND="layoutModel";function h(b){return{kind:f.KIND,layoutMethod:b}}f.create=h})(D3||(D3={}));let Nve=class extends de.Command{constructor(f,h,b,w){super(),this.action=f,this.layoutEngine=h,this.configurator=b,this.loadingIndicator=w}static KIND=D3.KIND;oldRoot;newModel;async execute(f){this.loadingIndicator.showIndicator("Layouting..."),this.oldRoot=f.root,this.configurator.method=this.action.layoutMethod;const h=await this.layoutEngine.layout(f.root);return this.newModel=h,this.loadingIndicator.hideIndicator(),this.newModel}undo(f){return this.oldRoot??f.root}redo(f){return this.newModel??f.root}};Nve=oWt([MX(0,Et(de.TYPES.Action)),MX(1,Et(de.TYPES.IModelLayoutEngine)),MX(2,Et(x3)),MX(3,Et(Jd))],Nve);class Ey extends de.Command{constructor(h,b,w,m,P,g,E){super(),this.logger=h,this.labelTypeRegistry=b,this.constraintRegistry=w,this.editorModeController=m,this.actionDispatcher=P,this.fileName=g,this.loadingIndicator=E}blockUntil=Ey.loadBlockUntilFn;static loadBlockUntilFn=h=>h.kind==="initializeCanvasBounds";oldRoot;newRoot;oldLabelTypes;oldEditorMode;oldFileName;oldConstrains;file;async execute(h){if(this.loadingIndicator.showIndicator("Loading model..."),this.oldRoot=h.root,this.file=await this.getFile(h).catch(()=>{}),!this.file)return this.loadingIndicator.hide(),this.actionDispatcher.dispatch(de.InitializeCanvasBoundsAction.create(this.oldRoot.canvasBounds)),this.oldRoot;try{const b=Ey.preprocessModelSchema(this.file.content.model);this.newRoot=h.modelFactory.createRoot(b),this.logger.info(this,"Model loaded successfully"),this.oldLabelTypes=this.labelTypeRegistry.getLabelTypes();const w=this.file.content.labelTypes;this.labelTypeRegistry.clearLabelTypes(),w?(this.labelTypeRegistry.setLabelTypes(w),this.logger.info(this,"Label types loaded successfully")):this.labelTypeRegistry.clearLabelTypes(),this.oldEditorMode=this.editorModeController.get();const m=this.file.content.mode;m?this.editorModeController.set(m):this.editorModeController.setDefault(),this.logger.info(this,"Editor mode loaded successfully"),this.oldConstrains=this.constraintRegistry.getConstraintList();const P=this.file.content.constraints;return P?this.constraintRegistry.setConstraintsFromArray(P):this.constraintRegistry.clearConstraints(),this.postLoadActions(),this.oldFileName=this.fileName.getName(),this.fileName.setName(this.file.fileName),this.loadingIndicator.hide(),this.newRoot}catch(b){return this.logger.error(this,"Error loading model",b),this.newRoot=this.oldRoot,this.actionDispatcher.dispatch(de.InitializeCanvasBoundsAction.create(this.oldRoot.canvasBounds)),this.loadingIndicator.hide(),this.oldRoot}}undo(h){return this.loadingIndicator.showIndicator("Reverting model load..."),this.oldLabelTypes?this.labelTypeRegistry.setLabelTypes(this.oldLabelTypes):this.labelTypeRegistry.clearLabelTypes(),this.oldEditorMode?this.editorModeController.set(this.oldEditorMode):this.editorModeController.setDefault(),this.oldEditorMode&&this.editorModeController.set(this.oldEditorMode),this.oldConstrains&&this.constraintRegistry.setConstraintsFromArray(this.oldConstrains),this.fileName.setName(this.oldFileName??"diagram"),this.loadingIndicator.hide(),this.oldRoot??h.modelFactory.createRoot(de.EMPTY_ROOT)}redo(h){this.loadingIndicator.showIndicator("Re-applying model load...");const b=this.file?.content.labelTypes;this.labelTypeRegistry.clearLabelTypes(),b?(this.labelTypeRegistry.setLabelTypes(b),this.logger.info(this,"Label types loaded successfully")):this.labelTypeRegistry.clearLabelTypes();const w=this.file?.content.mode;w?this.editorModeController.set(w):this.editorModeController.setDefault(),this.logger.info(this,"Editor mode loaded successfully");const m=this.file?.content.constraints;return m?this.constraintRegistry.setConstraintsFromArray(m):this.constraintRegistry.clearConstraints(),this.fileName.setName(this.file?.fileName??"diagram"),this.loadingIndicator.hide(),this.newRoot??this.oldRoot??h.modelFactory.createRoot(de.EMPTY_ROOT)}static preprocessModelSchema(h){return"features"in h&&delete h.features,"canvasBounds"in h&&delete h.canvasBounds,h.children&&h.children.forEach(b=>this.preprocessModelSchema(b)),h}async postLoadActions(){return this.newRoot?(this.newRoot.children.filter(b=>b instanceof de.SNodeImpl).some(b=>de.isLocateable(b)&&b.position.x===0&&b.position.y===0)&&await this.actionDispatcher.dispatch(D3.create(Xd.LINES)),this.actionDispatcher.dispatch(xL.create(this.newRoot,!1))):void 0}}const cWt={canvasBounds:{x:0,y:0,width:1278,height:1324},scroll:{x:181.68489464915504,y:-12.838536201820945},zoom:6.057478948161569,position:{x:0,y:0},size:{width:-1,height:-1},features:{},type:"graph",id:"root",children:[{position:{x:84,y:54},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"User",labels:[{labelTypeId:"gvia09",labelTypeValueId:"g10hr"}],ports:[{position:{x:58.5,y:7},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"nhcrad",type:"port:dfd-input",children:[]},{position:{x:31,y:38.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set Sensitivity.Personal",features:{},id:"4wbyft",type:"port:dfd-output",children:[]},{position:{x:58.5,y:25.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set Sensitivity.Public",features:{},id:"wksxi8",type:"port:dfd-output",children:[]}],features:{},id:"7oii5l",type:"node:input-output",children:[]},{position:{x:249,y:67},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"view",labels:[],ports:[{position:{x:-3.5,y:13},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"ti4ri7",type:"port:dfd-input",children:[]},{position:{x:58.5,y:13},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward request",features:{},id:"bsqjm",type:"port:dfd-output",children:[]}],features:{},id:"0bh7yh",type:"node:function",children:[]},{position:{x:249,y:22},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"display",labels:[],ports:[{position:{x:58.5,y:15},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"0hfzu",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:9},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward items",features:{},id:"y1p7qq",type:"port:dfd-output",children:[]}],features:{},id:"4myuyr",type:"node:function",children:[]},{position:{x:364,y:152},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"encrypt",labels:[],ports:[{position:{x:-3.5,y:15.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"kqjy4g",type:"port:dfd-input",children:[]},{position:{x:29,y:-3.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward data +set Encryption.Encrypted`,features:{},id:"3wntc",type:"port:dfd-output",children:[]}],features:{},id:"3n988k",type:"node:function",children:[]},{position:{x:104,y:157},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"buy",labels:[],ports:[{position:{x:19,y:-3.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"2331e8",type:"port:dfd-input",children:[]},{position:{x:58.5,y:10.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward data",features:{},id:"vnkg73",type:"port:dfd-output",children:[]}],features:{},id:"z9v1jp",type:"node:function",children:[]},{position:{x:233.5,y:157},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"process",labels:[],ports:[{position:{x:-3.5,y:10.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"xyepdb",type:"port:dfd-input",children:[]},{position:{x:59.5,y:10.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward data",features:{},id:"eedb56",type:"port:dfd-output",children:[]}],features:{},id:"js61f",type:"node:function",children:[]},{position:{x:422.5,y:59},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Database",labels:[{labelTypeId:"gvia09",labelTypeValueId:"5hnugm"}],ports:[{position:{x:-3.5,y:23},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"scljwi",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set Sensitivity.Public",features:{},id:"1j7bn5",type:"port:dfd-output",children:[]}],features:{},id:"8j2r1g",type:"node:storage",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"vq8g3l",type:"edge:arrow",sourceId:"4wbyft",targetId:"2331e8",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"xrzc19",type:"edge:arrow",sourceId:"vnkg73",targetId:"xyepdb",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"ufflto",type:"edge:arrow",sourceId:"eedb56",targetId:"kqjy4g",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"ojjvtp",type:"edge:arrow",sourceId:"3wntc",targetId:"scljwi",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"c9n88l",type:"edge:arrow",sourceId:"bsqjm",targetId:"scljwi",text:"request",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"uflsc",type:"edge:arrow",sourceId:"wksxi8",targetId:"ti4ri7",text:"request",routerKind:"polyline",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"n81f3b",type:"edge:arrow",sourceId:"1j7bn5",targetId:"0hfzu",text:"items",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"hi397b",type:"edge:arrow",sourceId:"y1p7qq",targetId:"nhcrad",text:"items",children:[]}]},sWt=[{id:"4h3wzk",name:"Sensitivity",values:[{id:"zzvphn",text:"Personal"},{id:"veaan9",text:"Public"}]},{id:"gvia09",name:"Location",values:[{id:"g10hr",text:"EU"},{id:"5hnugm",text:"nonEU"}]},{id:"84rllz",name:"Encryption",values:[{id:"2r6xe6",text:"Encrypted"}]}],uWt=[{name:"Test",constraint:"data Sensitivity.Personal neverFlows vertex Location.nonEU"}],aWt="edit",lWt=1,fWt={model:cWt,labelTypes:sWt,constraints:uWt,mode:aWt,version:lWt},hWt={canvasBounds:{x:0,y:0,width:2333.75,height:1168.75},scroll:{x:-105.89197860962565,y:-63},zoom:3.0837730870712403,position:{x:0,y:0},size:{width:-1,height:-1},features:{},type:"graph",id:"root",children:[{position:{x:222,y:75},size:{width:71,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Mother",labels:[{labelTypeId:"vljvh",labelTypeValueId:"z2vuaa"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"6bvsh7",type:"port:dfd-input",children:[]},{position:{x:67.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set TraversedNodes.mother",features:{},id:"pzv6hg",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"3lqxlo",type:"node:input-output",children:[]},{position:{x:226.5,y:199},size:{width:62,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Dad",labels:[{labelTypeId:"vljvh",labelTypeValueId:"oqq2r"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"rva68j",type:"port:dfd-input",children:[]},{position:{x:58.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture +set TraversedNodes.dad`,features:{},id:"f6wz2q",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"wocqg",type:"node:input-output",children:[]},{position:{x:211,y:137},size:{width:63,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Aunt",labels:[{labelTypeId:"vljvh",labelTypeValueId:"vb0xw"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"j6a32",type:"port:dfd-input",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"mhu9ma",type:"node:input-output",children:[]},{position:{x:570,y:99.41666666666666},size:{width:125,height:78},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Family Pictures",labels:[{labelTypeId:"9jr84l",labelTypeValueId:"01mazd"},{labelTypeId:"6drw8l",labelTypeValueId:"dhfohg"},{labelTypeId:"6drw8l",labelTypeValueId:"qsj85"},{labelTypeId:"6drw8l",labelTypeValueId:"7p1lcu"}],ports:[{position:{x:-3.5,y:49.66666666666667},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"efr68k",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:21.333333333333336},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture +set TraversedNodes.pictureStorage +set Read.Aunt`,features:{},id:"l7yqhg",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"050esr",type:"node:storage",children:[]},{position:{x:211,y:12},size:{width:100,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Indexing Bot",labels:[{labelTypeId:"vljvh",labelTypeValueId:"1cnzie"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"h5c7l",type:"port:dfd-input",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"fagty",type:"node:input-output",children:[]},{position:{x:12,y:78},size:{width:105,height:36},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Read Pictures",labels:[],ports:[{position:{x:101.5,y:7.333333333333332},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"hmhlg5",type:"port:dfd-input",children:[]},{position:{x:101.5,y:14.499999999999998},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture +set TraversedNodes.readPicture`,features:{},id:"9fv3si",type:"port:dfd-output",children:[]},{position:{x:101.5,y:21.666666666666664},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture +set TraversedNodes.readPicture`,features:{},id:"b4g3ml",type:"port:dfd-output",children:[]},{position:{x:101.5,y:28.83333333333333},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture +set TraversedNodes.readPicture`,features:{},id:"tj9ox",type:"port:dfd-output",children:[]},{position:{x:101.5,y:.16666666666666607},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture +set TraversedNodes.readPicture`,features:{},id:"j4hq8ov",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"2ksl0i",type:"node:function",children:[]},{routingPoints:[{x:563,y:124.25},{x:543,y:124.25},{x:543,y:64},{x:154,y:64},{x:154,y:88.83333333333333},{x:124,y:88.83333333333333}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"xw3tf",type:"edge:arrow",sourceId:"l7yqhg",targetId:"hmhlg5",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:96},{x:215,y:96}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"wr13pw",type:"edge:arrow",sourceId:"9fv3si",targetId:"6bvsh7",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:103.16666666666666},{x:154,y:103.16666666666666},{x:154,y:158},{x:204,y:158}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"osynnp",type:"edge:arrow",sourceId:"b4g3ml",targetId:"j6a32",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:110.33333333333333},{x:144,y:110.33333333333333},{x:144,y:220},{x:219.5,y:220}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"ymvkcs",type:"edge:arrow",sourceId:"tj9ox",targetId:"rva68j",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:81.66666666666667},{x:144,y:81.66666666666667},{x:144,y:33},{x:204,y:33}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"ryd2n",type:"edge:arrow",sourceId:"j4hq8ov",targetId:"h5c7l",labels:null,ports:null,children:[]},{position:{x:388,y:140},size:{width:98,height:36},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Add Pictures",labels:[],ports:[{position:{x:94.5,y:14.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward mother_picture +set TraversedNodes.addPicture`,features:{},id:"i75rub",type:"port:dfd-output",children:[]},{position:{x:-3.5,y:21.666666666666668},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"q9uoh2",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:7.333333333333334},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"y7wy2c",type:"port:dfd-input",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"d2erj",type:"node:function",children:[]},{routingPoints:[{x:493,y:158},{x:543,y:158},{x:543,y:152.58333333333331},{x:563,y:152.58333333333331}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"c9na5t",type:"edge:arrow",sourceId:"i75rub",targetId:"efr68k",labels:null,ports:null,children:[]},{routingPoints:[{x:295.5,y:220},{x:361,y:220},{x:361,y:165.16666666666666},{x:381,y:165.16666666666666}],selected:!1,hoverFeedback:!1,opacity:1,text:"dad_picture",features:{},id:"pd8t5y",type:"edge:arrow",sourceId:"f6wz2q",targetId:"q9uoh2",labels:null,ports:null,children:[]},{routingPoints:[{x:300,y:96},{x:361,y:96},{x:361,y:150.83333333333334},{x:381,y:150.83333333333334}],selected:!1,hoverFeedback:!1,opacity:1,text:"mother_picture",features:{},id:"ekx5wq",type:"edge:arrow",sourceId:"pzv6hg",targetId:"y7wy2c",labels:null,ports:null,children:[]}]},dWt=[{id:"vljvh",name:"Identity",values:[{id:"z2vuaa",text:"Mother"},{id:"oqq2r",text:"Dad"},{id:"vb0xw",text:"Aunt"},{id:"1cnzie",text:"IndexingBot"}]},{id:"6drw8l",name:"Read",values:[{id:"7p1lcu",text:"Mother"},{id:"qsj85",text:"Dad"},{id:"dhfohg",text:"Aunt"},{id:"e8kf57",text:"IndexingBot"}]},{id:"9jr84l",name:"Owner",values:[{id:"01mazd",text:"Mother"}]},{id:"4qmig",name:"TraversedNodes",values:[{id:"6p4cbg",text:"addPicture"},{id:"igu1hs",text:"pictureStorage"},{id:"yqu7nt",text:"readPicture"},{id:"huqgc6",text:"mother"},{id:"as8h9i",text:"dad"},{id:"0noedq",text:"aunt"},{id:"33ryia",text:"indexingBot"}]}],gWt=[{name:"Isolation",constraint:"data !Read.IndexingBot neverFlows vertex Identity.IndexingBot"}],bWt="edit",pWt=1,wWt={model:hWt,labelTypes:dWt,constraints:gWt,mode:bWt,version:pWt};function L3(){return Math.random().toString(36).substring(7)}class Zd{labelTypes=[];updateCallbacks=[];registerLabelType(h){const b={id:L3(),name:h,values:[]};return this.labelTypes.push(b),this._registerLabelTypeValue(b.id,"Value",!0),this.labelTypeChanged(),b}unregisterLabelType(h){this.labelTypes=this.labelTypes.filter(b=>b.id!==h),this.labelTypeChanged()}updateLabelTypeName(h,b){const w=this.labelTypes.find(m=>m.id===h);if(!w)throw`No Label Type with id ${h} found`;w.name=b,this.labelTypeChanged()}setLabelTypes(h){this.labelTypes=h,this.labelTypeChanged()}registerLabelTypeValue(h,b){return this._registerLabelTypeValue(h,b)}_registerLabelTypeValue(h,b,w=!1){const m={id:L3(),text:b},P=this.labelTypes.find(g=>g.id===h);if(!P)throw`No Label Type with id ${h} found`;return P.values.push(m),w||this.labelTypeChanged(),m}unregisterLabelTypeValue(h,b){const w=this.labelTypes.find(m=>m.id===h);if(!w)throw`No Label Type with id ${h} found`;w.values=w.values.filter(m=>m.id!==b),this.labelTypeChanged()}updateLabelTypeValueText(h,b,w){const m=this.labelTypes.find(g=>g.id===h);if(!m)throw`No Label Type with id ${h} found`;const P=m.values.find(g=>g.id===b);if(!P)throw`Label Type ${m.name} has no value with id ${b}`;P.text=w,this.labelTypeChanged()}clearLabelTypes(){this.labelTypes=[],this.updateCallbacks.forEach(h=>h())}labelTypeChanged(){this.updateCallbacks.forEach(h=>h())}onUpdate(h){this.updateCallbacks.push(h)}getLabelTypes(){return this.labelTypes}getLabelType(h){return this.labelTypes.find(b=>b.id===h)}}class Ty{name="diagram";getName(){return this.name}setName(h){const b=h.lastIndexOf(".");this.name=b===-1?h:h.substring(0,b),document.title=this.name+".json - DFD WebEditor"}}const sc={Theme:Symbol("Theme"),Mode:Symbol("EditorMode"),HideEdgeNames:Symbol("HideEdgeNames"),SimplifyNodeNames:Symbol("SimplifyNodeNames"),ShownLabels:Symbol("ShownLabels")};var mWt=Object.getOwnPropertyDescriptor,vWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?mWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let Qd=class{constraints=[];updateCallbacks=[];selectedConstraints=this.constraints.map(f=>f.name);setConstraints(f){this.constraints=this.splitIntoConstraintTexts(f).map(h=>this.mapToConstraint(h)),this.constraintListChanged()}setConstraintsFromArray(f){this.constraints=f.map(h=>({name:h.name,constraint:h.constraint})),this.constraintListChanged()}setSelectedConstraints(f){this.selectedConstraints=f}getSelectedConstraints(){return this.selectedConstraints}clearConstraints(){this.constraints=[],this.constraintListChanged()}constraintListChanged(){this.updateCallbacks.forEach(f=>f())}onUpdate(f){this.updateCallbacks.push(f)}getConstraintsAsText(){return this.constraints.map(f=>`- ${f.name}: ${f.constraint}`).join(` +`)}getConstraintList(){return this.constraints}selectedContainsAllConstraints(){return this.getConstraintList().map(f=>f.name).every(f=>this.getSelectedConstraints().includes(f))}setAllConstraintsAsSelected(){this.selectedConstraints=this.constraints.map(f=>f.name)}splitIntoConstraintTexts(f){const h=[];let b="";for(const w of f)w.startsWith("- ")?(b!==""&&h.push(b),b=w):b+=` +${w}`;return b!==""&&h.push(b),h}mapToConstraint(f){const h=f.split(/(\s+)/);if(h.length<3)return{name:"",constraint:""};let b=h[2];b.endsWith(":")&&(b=b.slice(0,-1));let w="";for(let m=4;m{for(var m=w>1?void 0:w?yWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},oS=(f,h)=>(b,w)=>h(b,w,f),dA;(f=>{f.KIND="loadDefaultDiagram";function h(){return{kind:f.KIND}}f.create=h})(dA||(dA={}));let Fve=class extends Ey{static KIND=dA.KIND;constructor(f,h,b,w,m,P,g,E){super(h,b,w,m,P,g,E)}async getFile(){return this.loadOnlineShop()}async loadOnlineShop(){return{fileName:"online-shop",content:fWt}}async loadDAC(){return{fileName:"dac",content:wWt}}};Fve=_Wt([oS(0,Et(de.TYPES.Action)),oS(1,Et(de.TYPES.ILogger)),oS(2,Et(Zd)),oS(3,Et(Qd)),oS(4,Et(sc.Mode)),oS(5,Et(de.TYPES.IActionDispatcher)),oS(6,Et(Ty)),oS(7,Et(Jd))],Fve);var EWt=Object.getOwnPropertyDescriptor,SWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?EWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},cS=(f,h)=>(b,w)=>h(b,w,f),KX;(f=>{f.KIND="loadUrl";function h(b){return{kind:f.KIND,url:b}}f.create=h})(KX||(KX={}));let Bve=class extends Ey{constructor(f,h,b,w,m,P,g,E){super(h,b,w,m,P,g,E),this.action=f}static KIND=KX.KIND;async getFile(){const f=await fetch(this.action.url).then(w=>w.json()),h=this.action.url.split("/"),b=h[h.length-1];return{content:f,fileName:b}}};Bve=SWt([cS(0,Et(de.TYPES.Action)),cS(1,Et(de.TYPES.ILogger)),cS(2,Et(Zd)),cS(3,Et(Qd)),cS(4,Et(sc.Mode)),cS(5,Et(de.TYPES.IActionDispatcher)),cS(6,Et(Ty)),cS(7,Et(Jd))],Bve);var PWt=Object.getOwnPropertyDescriptor,MWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?PWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},CWt=(f,h)=>(b,w)=>h(b,w,f);let $ve=class{constructor(f){this.actionDispatcher=f}run(){const h=new URLSearchParams(window.location.search).get("file");this.actionDispatcher.dispatch(h!=null?KX.create(h):dA.create())}};$ve=MWt([CWt(0,Et(de.TYPES.IActionDispatcher))],$ve);var IWt=Object.defineProperty,TWt=Object.getOwnPropertyDescriptor,jWt=(f,h,b)=>h in f?IWt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,AWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?TWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},k0t=(f,h)=>(b,w)=>h(b,w,f),OWt=(f,h,b)=>jWt(f,h+"",b);let Sy=class{constructor(f,h){this.logger=f,this.fileName=h,this.init()}webSocket;webSocketId=-1;lastRequest={};init(){this.webSocket=new WebSocket(Sy.WS_URL),this.webSocket.onopen=()=>{this.logger.log(this,"WebSocket connection established.")},this.webSocket.onclose=()=>{this.logger.log(this,"WebSocket connection closed. Reconnecting..."),this.reject(new Error("WebSocket connection closed")),this.init()},this.webSocket.onerror=()=>{this.logger.log(this,"WebSocket error occurred."),this.reject(new Error("WebSocket error occurred")),this.init()},this.webSocket.onmessage=f=>{const h=f.data;if(this.logger.log(this,"WebSocket message received: "+h),h.startsWith("Error:")&&this.reject(new Error(h)),h.startsWith("ID assigned:")){const b=h.split(":");this.webSocketId=parseInt(b[1].trim()),this.logger.log(this,"WebSocket ID assigned: "+this.webSocketId);return}this.lastRequest.resolve?(this.lastRequest.resolve(h),this.lastRequest.resolve=void 0,this.lastRequest.reject=void 0):this.logger.log(this,"No pending request to resolve.")}}reject(f){this.lastRequest.reject&&(this.lastRequest.reject(f),this.lastRequest.resolve=void 0,this.lastRequest.reject=void 0)}async requestDiagram(f){const h=await this.sendMessage(f),b=h.split(":")[0],w=h.replace(b+":","");return{fileName:b,content:JSON.parse(w)}}sendMessage(f){const h=new Promise((b,w)=>{this.lastRequest.resolve=b,this.lastRequest.reject=w});return!this.webSocket||this.webSocket.readyState!==WebSocket.OPEN?(this.reject(new Error("WebSocket is not connected")),h):(this.webSocket.send(this.webSocketId+":"+this.fileName.getName()+":"+f),h)}};OWt(Sy,"WS_URL","ws://localhost:3000/events/");Sy=AWt([vr(),k0t(0,Et(de.TYPES.ILogger)),k0t(1,Et(Ty))],Sy);var DWt=Object.getOwnPropertyDescriptor,kWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?DWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},RWt=(f,h)=>(b,w)=>h(b,w,f);let Kve=class{constructor(f){}run(){}};Kve=kWt([RWt(0,Et(Sy))],Kve);var qX;(f=>{f.KIND="hide-edge-names";function h(){return{kind:f.KIND}}f.create=h})(qX||(qX={}));class xWt extends de.Command{static KIND=qX.KIND;execute(h){return h.root}undo(h){return h.root}redo(h){return h.root}}var LWt=Object.getOwnPropertyDescriptor,imt=(f,h,b,w)=>{for(var m=w>1?void 0:w?LWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},NWt=(f,h)=>(b,w)=>h(b,w,f);class a2e extends de.SEdgeImpl{text;get editableLabel(){const h=this.children.find(b=>b.type.startsWith("label"));if(h&&de.isEditableLabel(h))return h}}let qve=class extends de.PolylineEdgeViewWithGapsOnIntersections{constructor(f){super(),this.hideEdgeNames=f}renderAdditionals(f,h,b){const w=super.renderAdditionals(f,h,b),m=h[h.length-2],P=h[h.length-1],g=de.svg("path",{"class-arrow":!0,d:"M 0.5,0 L 10,-4 L 10,4 Z",transform:`rotate(${mg.toDegrees(mg.angleOfPoint({x:m.x-P.x,y:m.y-P.y}))} ${P.x} ${P.y}) translate(${P.x} ${P.y})`,style:{opacity:f.opacity.toString()}});return w.push(g),w}renderLine(f,h){const b=h[0];let w=`M ${b.x},${b.y}`;for(let m=1;m{for(var m=w>1?void 0:w?BWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let gA=class extends rmt{getName(){const f=[];if(this.incomingEdges.forEach(h=>{if(h instanceof a2e){const b=h.editableLabel?.text;b&&f.push(b)}else return}),f.length!==0)return f.sort().join("|")}canConnect(f,h){return h==="target"}};gA=$Wt([vr()],gA);class KWt extends de.ShapeView{render(h,b){if(!this.isVisible(h,b))return;const{width:w,height:m}=h.bounds;return de.svg("g",{"class-sprotty-port":!0,"class-selected":h.selected,style:{opacity:h.opacity.toString()}},de.svg("rect",{x:"0",y:"0",width:w,height:m}),de.svg("text",{x:w/2,y:m/2,"class-port-text":!0},"I"),b.renderChildren(h))}}var omt=Object.defineProperty,qWt=Object.getOwnPropertyDescriptor,HWt=(f,h,b)=>h in f?omt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,l2e=(f,h,b,w)=>{for(var m=w>1?void 0:w?qWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&omt(h,b,m),m},zWt=(f,h)=>(b,w)=>h(b,w,f),VWt=(f,h,b)=>HWt(f,h+"",b);class x0t extends de.CenterGridSnapper{constructor(h){super(),this.gridSize=h}get gridX(){return this.gridSize}get gridY(){return this.gridSize}}let Hve=class{nodeSnapper=new x0t(5);portSnapper=new x0t(2.5);snapPort(f,h){const b=h.parent;if(b instanceof de.SPortImpl||!de.isBoundsAware(b))return f;const w=b.bounds,m=(_,I,O)=>Math.min(Math.max(_,I),O);f=this.portSnapper.snap(f,h);const P=m(f.x,0,w.width),g=m(f.y,0,w.height),C=[{x:P,y:0},{x:0,y:g},{x:w.width,y:g},{x:P,y:w.height}].reduce((_,I)=>Math.hypot(I.x-f.x,I.y-f.y){if(b instanceof de.SPortImpl){const w={...b.position},{width:m,height:P}=b.bounds;w.x+=m/2,w.y+=P/2,b.position=h.snap(w,b)}})}const cmt=Symbol("dfd-label-feature");function smt(f){return f.features?.has(cmt)??!1}var UWt=Object.defineProperty,WWt=Object.getOwnPropertyDescriptor,YWt=(f,h,b)=>h in f?UWt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,XWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?WWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Sve=(f,h)=>(b,w)=>h(b,w,f),JWt=(f,h,b)=>YWt(f,h+"",b),zX;(f=>{function h(b,w){return{kind:bA.KIND,action:"add",labelAssignment:b,element:w}}f.create=h})(zX||(zX={}));var Vve;(f=>{function h(b,w){return{kind:bA.KIND,action:"remove",labelAssignment:b,element:w}}f.create=h})(Vve||(Vve={}));let bA=class{constructor(f,h,b){this.action=f,this.editorModeController=h,this.snapper=b}elements;execute(f){if(this.editorModeController.isReadOnly())return f.root;if(this.action.element)this.elements=[this.action.element];else{const h=umt(f.root.children);this.elements=h.filter(b=>de.isSelected(b)&&smt(b))}return this.action.action=="add"?this.addLabel():this.removeLabel(),f.root}undo(f){return this.editorModeController.isReadOnly()||(this.action.action=="add"?this.removeLabel():this.addLabel()),f.root}redo(f){return this.editorModeController.isReadOnly()||(this.action.action=="add"?this.addLabel():this.removeLabel()),f.root}addLabel(){this.elements?.forEach(f=>{f.labels.find(b=>b.labelTypeId===this.action.labelAssignment.labelTypeId&&b.labelTypeValueId===this.action.labelAssignment.labelTypeValueId)!==void 0||(f.labels.push(this.action.labelAssignment),f instanceof de.SNodeImpl&&zve(f,this.snapper))})}removeLabel(){this.elements?.forEach(f=>{const h=f.labels,b=h.findIndex(w=>w.labelTypeId==this.action.labelAssignment.labelTypeId&&w.labelTypeValueId==this.action.labelAssignment.labelTypeValueId);b>=0&&(h.splice(b,1),f instanceof de.SNodeImpl&&zve(f,this.snapper))})}};JWt(bA,"KIND","labelAction");bA=XWt([vr(),Sve(0,Et(de.TYPES.Action)),Sve(1,Et(sc.Mode)),Sve(2,Et(de.TYPES.ISnapper))],bA);function umt(f){const h=[];for(const b of f)h.push(b),"children"in b&&h.push(...umt(b.children));return h}var QWt=Object.defineProperty,ZWt=Object.getOwnPropertyDescriptor,eYt=(f,h,b)=>h in f?QWt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,tYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?ZWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},L0t=(f,h)=>(b,w)=>h(b,w,f),EJ=(f,h,b)=>eYt(f,typeof h!="symbol"?h+"":h,b);let Rf=class{constructor(f,h){this.actionDispatcher=f,this.labelTypeRegistry=h}getLabel(f){const h=this.labelTypeRegistry.getLabelType(f.labelTypeId),b=h?.values.find(w=>w.id===f.labelTypeValueId);if(!(!h||!b))return{type:h,value:b}}computeLabelContent(f){const h=this.getLabel(f);if(!h)return["",0];const b=`${h.type.name}: ${h.value.text}`,w=uN(b,"5pt sans-serif").width+Rf.LABEL_TEXT_PADDING;return[b,w]}renderSingleNodeLabel(f,h,b,w){const[m,P]=this.computeLabelContent(h),g=b-P/2,E=b+P/2,C=Rf.LABEL_HEIGHT,T=C/2,M=()=>{this.actionDispatcher.dispatch(Vve.create(h,f))};return de.svg("g",{"class-node-label":!0},de.svg("rect",{x:g,y:w,width:P,height:C,rx:T,ry:T}),de.svg("text",{x:b,y:w+C/2},m),f.hoverFeedback?de.svg("g",{"class-label-delete":!0,on:{click:M}},de.svg("circle",{cx:E,cy:w,r:T*.8}),de.svg("text",{x:E,y:w},"X")):void 0)}sortLabels(f){f.sort((h,b)=>{const w=this.getLabel(h),m=this.getLabel(b);return!w||!m?0:w.type.namem.type.name?1:w.value.text.localeCompare(m.value.text)})}renderNodeLabels(f,h,b=0,w=Rf.LABEL_SPACING_HEIGHT){return this.sortLabels(f.labels),de.svg("g",null,f.labels.map((m,P)=>{const g=f.bounds.width/2,E=h+P*w;return this.renderSingleNodeLabel(f,m,g+b,E)}))}};EJ(Rf,"LABEL_HEIGHT",10);EJ(Rf,"LABEL_SPACE_BETWEEN",2);EJ(Rf,"LABEL_SPACING_HEIGHT",Rf.LABEL_HEIGHT+Rf.LABEL_SPACE_BETWEEN);EJ(Rf,"LABEL_TEXT_PADDING",8);Rf=tYt([vr(),L0t(0,Et(de.TYPES.IActionDispatcher)),L0t(1,Et(Zd))],Rf);var nYt=Object.defineProperty,iYt=(f,h,b,w)=>{for(var m=void 0,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(h,b,m)||m);return m&&nYt(h,b,m),m};const amt=class uA extends de.SNodeImpl{static DEFAULT_FEATURES=[...de.SNodeImpl.DEFAULT_FEATURES,de.withEditLabelFeature,cmt];static DEFAULT_WIDTH=50;static WIDTH_PADDING=12;static NODE_COLOR="var(--color-primary)";static HIGHLIGHTED_COLOR="var(--color-highlighted)";dfdNodeLabelRenderer;text="";color;labels=[];ports=[];hideLabels=!1;minimumWidth=uA.DEFAULT_WIDTH;annotations=[];constructor(){super()}get editableLabel(){const h=this.children.find(b=>b.type==="label:positional");if(h&&de.isEditableLabel(h))return h}calculateWidth(){if(this.hideLabels)return this.minimumWidth+uA.WIDTH_PADDING;const h=uN(this.text).width,b=this.labels.map(m=>this.dfdNodeLabelRenderer?.computeLabelContent(m)[1]??0);return Math.max(...b,h,uA.DEFAULT_WIDTH)+uA.WIDTH_PADDING}calculateHeight(){return this.labels.length>0&&!this.hideLabels?this.labelStartHeight()+this.labels.length*Rf.LABEL_SPACING_HEIGHT+Rf.LABEL_SPACE_BETWEEN:this.noLabelHeight()}get bounds(){return{x:this.position.x,y:this.position.y,width:this.calculateWidth(),height:this.calculateHeight()}}getAvailableInputs(){return this.children.filter(h=>h instanceof gA).map(h=>h).map(h=>h.getName())}getEdgeTexts(h){return this.children.filter(w=>w instanceof gA).map(w=>w).flatMap(w=>w.incomingEdges).filter(w=>w instanceof a2e).map(w=>w).filter(h).map(w=>w.editableLabel?.text??"")}geViewStyleObject(){const h={opacity:this.opacity.toString()};return h["--border"]="#FFFFFF",this.color&&(h["--color"]=this.color),h}setColor(h,b=!0){(b||this.color===uA.NODE_COLOR)&&(this.color=h)}};iYt([Et(Rf)],amt.prototype,"dfdNodeLabelRenderer");let jy=amt;var rYt=Object.getOwnPropertyDescriptor,lmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?rYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Pve=(f,h)=>(b,w)=>h(b,w,f);let VX=class{plainNames;anonymousNames;nextNummber=1;constructor(){this.plainNames=new Map,this.anonymousNames=new Map}setPlainName(f){f.editableLabel&&this.plainNames.has(f.id)&&(f.editableLabel.text=this.plainNames.get(f.id))}setAnonymousName(f){f instanceof jy&&f.editableLabel&&this.plainNames.set(f.id,f.editableLabel.text),this.anonymousNames.has(f.id)||(this.anonymousNames.set(f.id,this.nextNummber),this.nextNummber++),f.editableLabel&&(f.editableLabel.text=this.anonymousNames.get(f.id).toString())}};VX=lmt([vr()],VX);var GX;(f=>{f.KIND="simplify-node-names";function h(){return{kind:f.KIND}}f.create=h})(GX||(GX={}));let Gve=class extends de.Command{constructor(f,h,b){super(),this.nodeNameRegistry=h,this.simplifyNodeNames=b}static KIND=GX.KIND;execute(f){return this.iterate(f.root,h=>this.simplifyNodeNames.get()?this.nodeNameRegistry.setAnonymousName(h):this.nodeNameRegistry.setPlainName(h)),f.root}undo(f){return f.root}redo(f){return f.root}iterate(f,h){f instanceof jy&&h(f);for(const b of f.children)this.iterate(b,h)}};Gve=lmt([Pve(0,Et(de.TYPES.Action)),Pve(1,Et(VX)),Pve(2,Et(sc.SimplifyNodeNames))],Gve);function oYt(f,h,b){f.registerListener(()=>{f.isReadOnly()||(h.set(!1),b.set(!1))}),h.registerListener(w=>{w&&f.set("view")}),b.registerListener(w=>{w&&f.set("view")})}function cYt(f,h,b){b.registerListener(()=>f.dispatch(qX.create())),h.registerListener(()=>f.dispatch(GX.create()))}class SJ{value;listeners=[];constructor(h){this.value=h}get(){return this.value}set(h){const b=this.value;this.value=h,b!==h&&this.listeners.forEach(w=>w(h))}registerListener(h){this.listeners.push(h)}}class N0t extends SJ{constructor(h=!1){super(h)}}var DM=(f=>(f.LIGHT="Light",f.DARK="Dark",f.SYSTEM_DEFAULT="System Default",f))(DM||{});class fA extends SJ{static SYSTEM_DEFAULT=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"Dark":"Light";static LOCAL_STORAGE_KEY="dfdwebeditor:theme";constructor(){super(localStorage.getItem(fA.LOCAL_STORAGE_KEY)??fA.SYSTEM_DEFAULT)}getTheme(){const h=this.get();return h==="System Default"?fA.SYSTEM_DEFAULT:h}}const fmt=Symbol("ThemeSwitchable");function sYt(f,h){f.registerListener(()=>{F0t(f,h)}),F0t(f,h)}function F0t(f,h){const b=document.querySelector(":root"),w=document.querySelector("#sprotty"),m=f.getTheme()==="Dark"?"dark":"light";b.setAttribute("data-theme",m),w.setAttribute("data-theme",m),localStorage.setItem(fA.LOCAL_STORAGE_KEY,f.get()),h.forEach(P=>P.switchTheme(f.getTheme()))}var uYt=Object.getOwnPropertyDescriptor,aYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?uYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},rA=(f,h)=>(b,w)=>h(b,w,f);let Uve=class{constructor(f,h,b,w,m,P){this.themeManager=f,this.hideEdgeNames=h,this.simplifyNodeNames=b,this.editorModeController=w,this.switchables=m,this.actionDispatcher=P}run(){oYt(this.editorModeController,this.simplifyNodeNames,this.hideEdgeNames),sYt(this.themeManager,this.switchables),cYt(this.actionDispatcher,this.simplifyNodeNames,this.hideEdgeNames)}};Uve=aYt([rA(0,Et(sc.Theme)),rA(1,Et(sc.HideEdgeNames)),rA(2,Et(sc.SimplifyNodeNames)),rA(3,Et(sc.Mode)),rA(4,cJ(fmt)),rA(5,Et(de.TYPES.IActionDispatcher))],Uve);const lYt=new xf(f=>{f(OL).to(xve),f(OL).to($ve),f(OL).to(Kve),f(OL).to(Uve)}),fYt=new xf((f,h,b,w)=>{f(de.TYPES.ModelSource).to(de.LocalModelSource).inSingletonScope(),w(de.TYPES.ILogger).to(de.ConsoleLogger).inSingletonScope(),w(de.TYPES.LogLevel).toConstantValue(de.LogLevel.log);const m={bind:f,unbind:h,isBound:b,rebind:w};de.configureViewerOptions(m,{zoomLimits:{min:.05,max:20}})});class CX{constructor(){}static buildDeleteButton(){const h=document.createElement("button");h.classList.add("delete-button");const b=document.createElement("span");return b.classList.add("codicon","codicon-trash"),h.appendChild(b),h}static buildAddButton(h){const b=document.createElement("button");b.classList.add("add-button");const w=document.createElement("span");w.classList.add("codicon","codicon-add"),b.appendChild(w);const m=document.createElement("span");return m.innerText=h,b.appendChild(m),b}}var hYt=Object.getOwnPropertyDescriptor,dYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?hYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},gYt=(f,h)=>(b,w)=>h(b,w,f);const hmt="application/x-label-assignment";let Wve=class extends de.MouseListener{constructor(f){super(),this.logger=f}dragOver(f,h){return h.preventDefault(),[]}drop(f,h){const b=h.dataTransfer?.getData(hmt);if(!b)return[];const w=dmt(f);if(!w)return this.logger.info(this,"Aborted drop of label assignment because the target element nor the parent elements have the dfd label feature"),[];if(!(w instanceof de.SNodeImpl))return this.logger.info(this,"Aborted drop of label assignment because the target element is not a node"),[];const m=JSON.parse(b);return this.logger.info(this,"Adding label assignment to element",w,m),[zX.create(m,w),de.CommitModelAction.create()]}};Wve=dYt([vr(),gYt(0,Et(de.TYPES.ILogger))],Wve);function dmt(f){if(smt(f))return f;if("parent"in f)return dmt(f.parent)}function aN(f){if(!f||f.length==0)return[];const h=[];for(const[b,w]of f.entries()){const m=w.split(/(\s+)/);let P=0;for(let g=0;g0&&h.push({text:E,line:b+1,column:P+1}),P+=E.length}(w.match(/\s$/)||w.length==0)&&h.push({text:"",line:b+1,column:P+1})}return h}function B0t(f,h,b){const w=aN(f),m=Yve(w,h,h,0,b);for(let g=0;g=f.length)return[];if(!P&&f[w].column==1&&b.some(C=>C.word.verify(f[w].text).length===0))return Yve(f,b,b,w,m,!0);let g=f[w].text;for(const E of h)E.word.replace&&(g=E.word.replace(g,m));return[{...f[w],newText:g},...Yve(f,h.flatMap(E=>E.children),b,w+1,m)]}function f2e(f,h){return Xve(f,h,0,!1,h,!0)}function Xve(f,h,b,w,m,P=!1){if(b>=f.length)return h.length==0||w?[]:[{message:"Unexpected end of line",line:f[b-1].line,startColumn:f[b-1].column+f[b-1].text.length-1,endColumn:f[b-1].column+f[b-1].text.length}];if(!P&&f[b].column==1&&m.some(T=>T.word.verify(f[b].text).length===0))return Xve(f,m,b,!1,m,!0);const g=[];let E=[];for(const C of h){const T=C.word.verify(f[b].text);if(T.length>0){g.push({message:T[0],startColumn:f[b].column,endColumn:f[b].column+f[b].text.length,line:f[b].line});continue}const M=Xve(f,C.children,b+1,C.canBeFinal||!1,m);if(M.length==0)return[];E=E.concat(M)}return E.length>0?$0t(E):$0t(g)}function $0t(f){const h=new Set;return f.filter(b=>{const w=`${b.line}-${b.startColumn}-${b.endColumn}-${b.message}`;return h.has(w)?!1:(h.add(w),!0)})}class tl{constructor(h){this.word=h}verify(h){return h===this.word?[]:[`Expected keyword "${this.word}"`]}completionOptions(){return[{insertText:this.word,kind:wh.CompletionItemKind.Keyword}]}}class bYt{verify(h){return h.length>0?[]:["Expected a symbol"]}completionOptions(){return[]}}class oA{constructor(h){this.word=h}verify(h){return h.startsWith("!")?this.word.verify(h.substring(1)):this.word.verify(h)}completionOptions(h){return h.startsWith("!")?this.word.completionOptions(h.substring(1)).map(w=>({...w,startOffset:(w.startOffset??0)+1})):this.word.completionOptions(h)}replace(h,b){return this.word.replace?h.startsWith("!")?this.replace(h.substring(1),b):this.word.replace(h,b):h}}class Mve{constructor(h){this.word=h}verify(h){const b=h.split(",");for(const w of b){const m=this.word.verify(w);if(m.length>0)return m}return[]}completionOptions(h){const b=h.split(","),w=b[b.length-1];return this.word.completionOptions(w)}replace(h,b){return this.word.replace?h.split(",").map(m=>this.word.replace(m,b)).join(","):h}}const IX="dfd-assignment-language",pYt=["forward","assign","set","unset"],wYt=[...pYt,"if","from"],mYt=["TRUE","FALSE"],vYt={keywords:[...wYt,...mYt],operators:["=","||","&&","!"],symbols:/[=>{function h(g,E){return[b(E,"set"),b(E,"unset"),w(g),m(E,g)]}f.buildTree=h;function b(g,E){const C={word:new Mve(new Jve(g)),children:[]};return{word:new tl(E),children:[C]}}function w(g){const E={word:new Mve(new Qve(g)),children:[]};return{word:new tl("forward"),children:[E]}}function m(g,E){const C={word:new tl("from"),children:[{word:new Mve(new Qve(E)),children:[]}]},T={word:new tl("if"),children:P(g,C,E)};return{word:new tl("assign"),children:[{word:new Jve(g),children:[T]}]}}function P(g,E,C){const T=["&&","||"].map(_=>({word:new tl(_),children:[]})),M=[new tl("TRUE"),new tl("FALSE"),new _Yt(g,C)].map(_=>({word:_,children:[...T,E],canBeFinal:!0}));return T.forEach(_=>{_.children=M}),M}})(NL||(NL={}));class yYt{constructor(h){this.port=h}getAvailableInputs(){const h=this.port.parent;return h instanceof jy?h.getAvailableInputs().filter(b=>b!==void 0):[]}}class Jve{constructor(h){this.labelTypeRegistry=h}completionOptions(h){const b=h.split(".");if(b.length==1)return this.labelTypeRegistry.getLabelTypes().map(w=>({insertText:w.name,kind:wh.CompletionItemKind.Class}));if(b.length==2){const w=this.labelTypeRegistry.getLabelTypes().find(m=>m.name===b[0]);return w?w.values.map(m=>({insertText:m.text,kind:wh.CompletionItemKind.Enum,startOffset:b[0].length+1})):[]}return[]}verify(h){const b=h.split(".");if(b.length>2)return["Expected at most 2 parts in characteristic selector"];const w=this.labelTypeRegistry.getLabelTypes().find(P=>P.name===b[0]);return w?b.length<2?["Expected characteristic to have value"]:b[1].startsWith("$")&&b[1].length>=2?[]:w.values.find(P=>P.text===b[1])?[]:['Unknown label value "'+b[1]+'" for type "'+b[0]+'"']:['Unknown label type "'+b[0]+'"']}replace(h,b){return b.type=="label"&&h==b.old?b.replacement:h}}class Qve extends yYt{completionOptions(){return this.getAvailableInputs().map(b=>({insertText:b,kind:wh.CompletionItemKind.Variable}))}verify(h){return this.getAvailableInputs().includes(h)?[]:[`Unknown input "${h}"`]}}class _Yt{inputWord;labelWord;constructor(h,b){this.inputWord=new Qve(b),this.labelWord=new Jve(h)}completionOptions(h){const b=this.getParts(h);return b[1]===void 0?this.inputWord.completionOptions().map(w=>({...w,insertText:w.insertText})):b.length>=2?this.labelWord.completionOptions(b[1]).map(w=>({...w,insertText:w.insertText,startOffset:(w.startOffset??0)+b[0].length+1})):[]}verify(h){const b=this.getParts(h),w=this.inputWord.verify(b[0]);if(w.length>0)return w;if(b[1]===void 0)return["Expected input and label separated by a dot"];const m=this.labelWord.verify(b[1]);return[...w,...m]}replaceWord(h,b){const[w,m]=this.getParts(h);return b.type=="label"&&m===b.old?w+"."+b.replacement:h}getParts(h){if(h.includes(".")){const b=h.indexOf("."),w=h.substring(0,b),m=h.substring(b+1);return[w,m]}return[h,void 0]}}var EYt=Object.defineProperty,SYt=Object.getOwnPropertyDescriptor,h2e=(f,h,b,w)=>{for(var m=w>1?void 0:w?SYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&EYt(h,b,m),m};let pA=class extends rmt{behavior="";validBehavior=!0;tree;labelTypeRegistry;constructor(){super()}get editableLabel(){const f=this.children.find(h=>h.type==="label:invisible");if(f&&de.isEditableLabel(f))return f}canConnect(f,h){return h==="source"}geViewStyleObject(){const f={opacity:this.opacity.toString()};return this.validBehavior||(f["--port-border"]="#ff0000",f["--port-color"]="#ff6961"),f}setBehavior(f){if(this.behavior=f,f===""){this.validBehavior=!0;return}if(!this.tree){if(!this.labelTypeRegistry)return;this.tree=NL.buildTree(this,this.labelTypeRegistry)}const h=f2e(aN(this.behavior.split(` +`)),this.tree);this.validBehavior=h.length===0}getBehavior(){return this.behavior}};h2e([Et(Zd)],pA.prototype,"labelTypeRegistry",2);pA=h2e([vr()],pA);let Zve=class extends de.ShapeView{render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds;return de.svg("g",{"class-sprotty-port":!0,"class-selected":f.selected,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w}),de.svg("text",{x:b/2,y:w/2,"class-port-text":!0},"O"),h.renderChildren(f))}};Zve=h2e([vr()],Zve);const TX="dfd-constraint",PYt={keywords:["data","vertex","neverFlows","to","where","named","present","empty","type"],symbols:/[=>{function h(_,I){const O=m(),j={word:new tl("where"),children:O},k=w(_,I);k.forEach(ce=>{b(ce).forEach(J=>{J.canBeFinal=!0,J.children.push(j)})});const x={word:new tl("vertex"),children:k},R={word:new tl("neverFlows"),children:[x,j],canBeFinal:!0},H={word:new tl("data"),children:[]},F=w(_,I);F.forEach(ce=>{b(ce).forEach(J=>{J.children.push(H),J.children.push(R)})});const $={word:new tl("vertex"),children:F},W=w(_,I);W.forEach(ce=>{b(ce).forEach(J=>{J.children.push($),J.children.push(R)})}),H.children=W;const re={word:new C,children:[$,H]};return[{word:new tl("-"),children:[re]}]}f.buildTree=h;function b(_){if(_.children.length==0)return[_];let I=[];for(const O of _.children)I=I.concat(b(O));return I}function w(_,I){const O={word:new tl("type"),children:[new oA(new tl("EXTERNAL")),new oA(new tl("PROCESS")),new oA(new tl("STORE"))].map(R=>({word:R,children:[]}))},j={word:new oA(new E(I)),children:[]},k={word:new oA(new M(I)),children:[]},x={word:new tl("named"),children:[{word:new T(_),children:[]}]};return[O,j,k,x]}function m(){const _={word:new tl("present"),children:[{word:new oA(new g),children:[]}]},I={word:new tl("empty"),children:[{word:new P,children:[]}]};return[_,I]}class P{constraintVariableReference;constructor(){this.constraintVariableReference=new g}completionOptions(I){return I.startsWith("intersection(")?I.substring(13,I.length-1).split(",").length>2?[]:this.constraintVariableReference.completionOptions():"intersection(".includes(I)?[{label:"intersection()",insertText:"intersection($0)",insertTextRules:wh.CompletionItemInsertTextRule.InsertAsSnippet,kind:wh.CompletionItemKind.Function}]:[]}verify(I){if(!I.startsWith("intersection("))return['Expected keyword "intersection"'];const O=I.substring(13,I.length-1).split(",");return O.length>2?['Expected at most 2 attributes in "intersection"']:O.flatMap(j=>this.constraintVariableReference.verify(j))}}class g extends bYt{}class E{constructor(I){this.labelTypeRegistry=I}completionOptions(I){const O=I.split(".");if(O.length==1)return this.labelTypeRegistry.getLabelTypes().map(j=>({insertText:j.name,kind:wh.CompletionItemKind.Class}));if(O.length==2){const j=this.labelTypeRegistry.getLabelTypes().find(x=>x.name===O[0]);if(!j)return[];const k=j.values.map(x=>({insertText:x.text,kind:wh.CompletionItemKind.Enum,startOffset:O[0].length+1}));return k.push({insertText:"$"+j.name,kind:wh.CompletionItemKind.Variable,startOffset:O[0].length+1}),k}return[]}verify(I){const O=I.split(".");if(O.length>2)return["Expected at most 2 parts in characteristic selector"];const j=this.labelTypeRegistry.getLabelTypes().find(x=>x.name===O[0]);return j?O.length<2?["Expected characteristic to have value"]:O[1].startsWith("$")&&O[1].length>=2?[]:j.values.find(x=>x.text===O[1])?[]:['Unknown label value "'+O[1]+'" for type "'+O[0]+'"']:['Unknown label type "'+O[0]+'"']}replace(I,O){return O.type=="label"&&I==O.old?O.replacement:I}}class C{completionOptions(I){return I.length===0?[]:[{insertText:":",kind:wh.CompletionItemKind.Keyword}]}verify(I){return I.split(":")[0].length===0?["Expected a name"]:I.endsWith(":")?[]:['Expected ":" at the end of name']}}class T{constructor(I){this.modelSource=I}completionOptions(){return this.getAllPortNames().map(I=>({insertText:I,kind:wh.CompletionItemKind.Variable}))}verify(I){return this.getAllPortNames().includes(I)?[]:['Unknown variable name "'+I+'"']}getAllPortNames(){const I=new Map,O=this.modelSource.model;if(O.children===void 0)return[];for(const j of O.children){const k=j;if(k.text!==void 0&&k.targetId!==void 0){const x=k.text,R=k.targetId;I.has(R)?I.get(R)?.push(x):I.set(R,[x])}}return Array.from(I.keys()).map(j=>I.get(j).sort().join("|"))}}class M{characteristicSelectorData;constructor(I){this.characteristicSelectorData=new E(I)}completionOptions(I){const O=I.split(","),j=O[O.length-1];return this.characteristicSelectorData.completionOptions(j)}verify(I){const O=I.split(",");for(let j=0;j0)return k}return[]}replace(I,O){return this.characteristicSelectorData.replace?I.split(",").map(k=>this.characteristicSelectorData.replace(k,O)).join(","):I}}})(UX||(UX={}));var MYt=Object.getOwnPropertyDescriptor,CYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?MYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},jX=(f,h)=>(b,w)=>h(b,w,f),FL;(f=>{f.KIND="replace-action";function h(b){return{kind:f.KIND,replacements:b}}f.create=h})(FL||(FL={}));let eye=class extends de.Command{constructor(f,h,b,w){super(),this.action=f,this.constraintRegistry=h,this.labelTypeRegistry=b,this.localModelSource=w}static KIND=FL.KIND;execute(f){this.iterateForPorts(f.root);for(const h of this.action.replacements)this.constraintRegistry.setConstraints(B0t(this.constraintRegistry.getConstraintsAsText().split(` +`),UX.buildTree(this.localModelSource,this.labelTypeRegistry),h));return f.root}undo(f){return f.root}redo(f){return f.root}iterateForPorts(f){if(f instanceof pA)for(const h of this.action.replacements)f.setBehavior(B0t(f.getBehavior().split(` +`),NL.buildTree(f,this.labelTypeRegistry),h).join(` +`));for(const h of f.children)this.iterateForPorts(h)}};eye=CYt([jX(0,Et(de.TYPES.Action)),jX(1,Et(Qd)),jX(2,Et(Zd)),jX(3,Et(de.TYPES.ModelSource))],eye);var Pl=z3(),IYt=Object.getOwnPropertyDescriptor,TYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?IYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Cve=(f,h)=>(b,w)=>h(b,w,f);let hS=class extends RM{constructor(f,h,b){super("left","down"),this.labelTypeRegistry=f,this.actionDispatcher=h,this.editorModeController=b,f.onUpdate(()=>this.renderLabelTypes())}static ID="label-type-editor-ui";labelSectionContainer;id(){return hS.ID}containerClass(){return hS.ID}initializeHidableContent(f){const h=CX.buildAddButton("Label Type");h.onclick=()=>{this.editorModeController.isReadOnly()||this.labelTypeRegistry.registerLabelType("")},this.labelSectionContainer=document.createElement("div"),this.renderLabelTypes(),f.appendChild(this.labelSectionContainer),f.appendChild(h)}initializeHeaderContent(f){f.innerText="Label Types"}renderLabelTypes(){if(!this.labelSectionContainer)return;const f=this.labelSectionContainer.scrollWidth,h=this.labelSectionContainer.scrollHeight;this.labelSectionContainer.style.width=`${f}px`,this.labelSectionContainer.style.height=`${h}px`;const b=document.createDocumentFragment(),w=this.labelTypeRegistry.getLabelTypes();for(let m=0;mthis.onInputHandler(g,b),PX(b),setTimeout(()=>PX(b),0),b.onchange=()=>{if(this.editorModeController.isReadOnly())return;const g=f.values.map(E=>({old:`${f.name}.${E}`,replacement:`${b.value}.${E}`,type:"label"}));this.labelTypeRegistry.updateLabelTypeName(f.id,b.value),this.actionDispatcher.dispatch(FL.create(g))},b.onfocus=()=>{this.editorModeController.isReadOnly()&&b.blur()};for(let g=0;g{this.editorModeController.isReadOnly()||this.labelTypeRegistry.registerLabelTypeValue(f.id,"")},w.onclick=()=>{this.editorModeController.isReadOnly()||this.labelTypeRegistry.unregisterLabelType(f.id)},h.appendChild(b),h.appendChild(w),h.appendChild(m),h.appendChild(P),h}buildLabelTypeValue(f,h){const b=document.createElement("div");b.classList.add("label-type-value");const w=document.createElement("input");w.classList.add("label-type-value-name");const m=CX.buildDeleteButton(),P=f.values[h];return w.value=P.text,w.placeholder="Value",w.oninput=g=>this.onInputHandler(g,w),w.style.width="0px",setTimeout(()=>PX(w),0),w.onchange=()=>{if(this.editorModeController.isReadOnly())return;const g=[{old:`${f.name}.${P.text}`,replacement:`${f.name}.${w.value}`,type:"label"}];this.labelTypeRegistry.updateLabelTypeValueText(f.id,P.id,w.value),this.actionDispatcher.dispatch(FL.create(g))},m.onclick=()=>{this.editorModeController.isReadOnly()||this.labelTypeRegistry.unregisterLabelTypeValue(f.id,P.id)},w.draggable=!0,w.ondragstart=g=>{if(this.editorModeController.isReadOnly())return;const E={labelTypeId:f.id,labelTypeValueId:P.id},C=JSON.stringify(E);g.dataTransfer?.setData(hmt,C)},w.onclick=()=>{this.editorModeController.isReadOnly()||w.getAttribute("clicked")!=="true"&&(w.setAttribute("clicked","true"),setTimeout(()=>{w.getAttribute("clicked")==="true"&&(this.actionDispatcher.dispatch(zX.create({labelTypeId:f.id,labelTypeValueId:P.id})),w.removeAttribute("clicked"))},500))},w.ondblclick=()=>{this.editorModeController.isReadOnly()||(w.removeAttribute("clicked"),w.focus())},w.onfocus=g=>{if(this.editorModeController.isReadOnly()){w.blur();return}w.getAttribute("clicked")!=="true"&&(g.preventDefault(),setTimeout(()=>{w.blur()},0))},b.appendChild(w),b.appendChild(m),b}onInputHandler(f,h){f.data?.match(/^[a-zA-Z0-9]*$/)||f.preventDefault(),PX(h)}keyDown(f,h){return Pl.matchesKeystroke(h,"KeyT")&&this.toggleStatus(),[]}keyUp(){return[]}};hS=TYt([Cve(0,Et(Zd)),Cve(1,Et(de.TYPES.IActionDispatcher)),Cve(2,Et(sc.Mode))],hS);const jYt=new xf((f,h,b)=>{f(Zd).toSelf().inSingletonScope(),f(hS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(hS),f(Db.DefaultUIElement).to(hS),f(de.TYPES.KeyListener).toService(hS),de.configureCommand({bind:f,isBound:b},bA),de.configureCommand({bind:f,isBound:b},eye),f(de.TYPES.MouseListener).to(Wve)});function AYt(f,h){const b=document.createElement("input");b.type="file",b.accept=f.join(","),b.multiple=h>1;const w=new Promise((m,P)=>{b.onchange=()=>{if(!b.files||b.files.length!==h){P("No file selected");return}m(Array.from(b.files))},b.oncancel=()=>{P("Canceled file selection")}});return b.click(),w}function OYt(f){return new Promise((h,b)=>{const w=new FileReader;w.onload=()=>h({fileName:f.name,content:w.result}),w.onerror=()=>b(w.error),w.readAsText(f)})}async function d2e(f,h){const b=await AYt(f,h).catch(()=>[]);return Promise.all(b.map(OYt))}function DYt(f){return d2e(f,1).then(h=>h?h[0]:void 0)}var kYt=Object.getOwnPropertyDescriptor,RYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?kYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},M3=(f,h)=>(b,w)=>h(b,w,f),WX;(f=>{f.KIND="loadDfdAndDdFile";function h(){return{kind:f.KIND}}f.create=h})(WX||(WX={}));let tye=class extends Ey{constructor(f,h,b,w,m,P,g,E,C){super(h,b,w,m,E,P,C),this.dfdWebSocket=g}static KIND=WX.KIND;async getFile(){const f=await d2e([".dataflowdiagram",".datadictionary"],2),h=f.find(m=>m.fileName.endsWith(".dataflowdiagram"))?.content,b=f.find(m=>m.fileName.endsWith(".datadictionary"))?.content;if(!h||!b)return;const w=this.fileName.getName();return this.fileName.setName(f[0].fileName),this.dfdWebSocket.requestDiagram("DFD:"+h+` +:DD: +`+b).catch(m=>{throw this.fileName.setName(w),m})}};tye=RYt([M3(0,Et(de.TYPES.Action)),M3(1,Et(de.TYPES.ILogger)),M3(2,Et(Zd)),M3(3,Et(Qd)),M3(4,Et(sc.Mode)),M3(5,Et(Ty)),M3(6,Et(Sy)),M3(7,Et(de.TYPES.IActionDispatcher)),M3(8,Et(Jd))],tye);var xYt=Object.getOwnPropertyDescriptor,LYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?xYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},sS=(f,h)=>(b,w)=>h(b,w,f),BL;(f=>{f.KIND="loadJsonFile";function h(){return{kind:f.KIND}}f.create=h})(BL||(BL={}));let nye=class extends Ey{static KIND=BL.KIND;constructor(f,h,b,w,m,P,g,E){super(h,b,w,m,P,g,E)}async getFile(){const f=await DYt(["application/json"]);if(f)return this.fileName.setName(f.fileName),{fileName:f.fileName,content:JSON.parse(f.content)}}};nye=LYt([sS(0,Et(de.TYPES.Action)),sS(1,Et(de.TYPES.ILogger)),sS(2,Et(Zd)),sS(3,Et(Qd)),sS(4,Et(sc.Mode)),sS(5,Et(de.TYPES.IActionDispatcher)),sS(6,Et(Ty)),sS(7,Et(Jd))],nye);var NYt=Object.getOwnPropertyDescriptor,FYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?NYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},C3=(f,h)=>(b,w)=>h(b,w,f),YX;(f=>{f.KIND="loadPcmFile";function h(){return{kind:f.KIND}}f.create=h})(YX||(YX={}));let hA=class extends Ey{constructor(f,h,b,w,m,P,g,E,C){super(h,b,w,m,P,g,C),this.dfdWebSocket=E}static KIND=YX.KIND;static FILE_ENDINGS=[".pddc",".allocation",".nodecharacteristics",".repository",".resourceenvironment",".system",".usagemodel"];async getFile(){const f=await d2e(hA.FILE_ENDINGS,hA.FILE_ENDINGS.length);if(hA.FILE_ENDINGS.some(b=>!f.find(w=>w.fileName.endsWith(b))))throw new Error("Please select one file of each required type: .pddc, .allocation, .nodecharacteristics, .repository, .resourceenvironment, .system, .usagemodel");const h=this.fileName.getName();return this.fileName.setName(f[0].fileName),this.dfdWebSocket.requestDiagram(f.map(b=>`${b.fileName}:${b.content}`).join("---FILE---")).catch(b=>{throw this.fileName.setName(h),b})}};hA=FYt([C3(0,Et(de.TYPES.Action)),C3(1,Et(de.TYPES.ILogger)),C3(2,Et(Zd)),C3(3,Et(Qd)),C3(4,Et(sc.Mode)),C3(5,Et(de.TYPES.IActionDispatcher)),C3(6,Et(Ty)),C3(7,Et(Sy)),C3(8,Et(Jd))],hA);var BYt=Object.getOwnPropertyDescriptor,$Yt=(f,h,b,w)=>{for(var m=w>1?void 0:w?BYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let iye=class extends de.SModelFactory{createElement(f,h){if(f instanceof de.SModelElementImpl)return super.createElement(f,h);if(f.type==="node:storage"||f.type==="node:function"||f.type==="node:input-output"){const w=f;f.children=f.children??[];for(const m of w.ports)"features"in m&&delete m.features;f.children.push(...w.ports,{type:"label:positional",text:w.text??"",id:f.id+"-label"})}if(f.type==="edge:arrow"){const w=f;f.children=f.children??[],f.children.push({type:"label:filled-background",text:w.text??"",id:f.id+"-label",edgePlacement:{position:.5,side:"on",rotate:!1}})}"features"in f&&delete f.features;const b=super.createElement(f,h);return b.features===void 0&&(b.features=new Set),b}createSchema(f){const h=super.createSchema(f);if(h.type==="node:storage"||h.type==="node:function"||h.type==="node:input-output"){const b=h,w=b.children?.filter(P=>mg.getBasicType(P)==="port")??[];b.ports=w;const m=h.children?.find(P=>P.type==="label:positional");return m&&(b.text=m.text),b.children=[],b}if(h.type==="edge:arrow"){const b=h,w=h.children?.find(m=>m.type==="label:filled-background");return w&&(b.text=w.text),b.children=[],b}return h}};iye=$Yt([vr()],iye);const gmt=1;class KYt extends de.Command{constructor(h,b,w){super(),this.labelTypeRegistry=h,this.constraintRegistry=b,this.editorModeController=w}createSavedDiagram(h){return{model:h.modelFactory.createSchema(h.root),labelTypes:this.labelTypeRegistry.getLabelTypes(),constraints:this.constraintRegistry.getConstraintList(),mode:this.editorModeController.get(),version:gmt}}}class bmt extends KYt{constructor(h,b,w,m){super(h,b,w),this.loadingIndicator=m}async execute(h){this.loadingIndicator.showIndicator("Saving diagram...");const b=await this.getFiles(h);for(const w of b)this.downloadFile(w);return this.loadingIndicator.hide(),h.root}undo(h){return h.root}redo(h){return h.root}downloadFile(h){const b=document.createElement("a"),w=new Blob([h.content],{type:"application/json"});b.href=URL.createObjectURL(w),b.download=h.fileName,b.click(),URL.revokeObjectURL(b.href),b.remove()}}var qYt=Object.getOwnPropertyDescriptor,HYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?qYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},cA=(f,h)=>(b,w)=>h(b,w,f),$L;(f=>{f.KIND="saveJsonFile";function h(){return{kind:f.KIND}}f.create=h})($L||($L={}));let rye=class extends bmt{constructor(f,h,b,w,m,P){super(h,b,w,P),this.fileName=m}static KIND=$L.KIND;getFiles(f){const h={fileName:this.fileName.getName()+".json",content:JSON.stringify(this.createSavedDiagram(f))};return Promise.resolve([h])}};rye=HYt([cA(0,Et(de.TYPES.Action)),cA(1,Et(Zd)),cA(2,Et(Qd)),cA(3,Et(sc.Mode)),cA(4,Et(Ty)),cA(5,Et(Jd))],rye);var zYt=Object.getOwnPropertyDescriptor,VYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?zYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},jM=(f,h)=>(b,w)=>h(b,w,f),XX;(f=>{f.KIND="saveDfdAndDdFile";function h(){return{kind:f.KIND}}f.create=h})(XX||(XX={}));let KL=class extends bmt{constructor(f,h,b,w,m,P,g){super(h,b,w,g),this.dfdWebSocket=m,this.fileName=P}static KIND=XX.KIND;static CLOSING_TAG="";async getFiles(f){const h=this.createSavedDiagram(f),b=await this.dfdWebSocket.sendMessage("Json2DFD:"+JSON.stringify(h)),w=b.indexOf(KL.CLOSING_TAG)+KL.CLOSING_TAG.length,m=b.substring(0,w).trim(),P=b.substring(w).trim(),g=this.fileName.getName();return Promise.resolve([{fileName:g+".dataflowdiagram",content:m},{fileName:g+".datadictionary",content:P}])}};KL=VYt([jM(0,Et(de.TYPES.Action)),jM(1,Et(Zd)),jM(2,Et(Qd)),jM(3,Et(sc.Mode)),jM(4,Et(Sy)),jM(5,Et(Ty)),jM(6,Et(Jd))],KL);var GYt=Object.getOwnPropertyDescriptor,UYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?GYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let qL=class{violations=[];listeners=[];updateViolations(f){this.violations=f,this.listeners.forEach(h=>h(this.violations))}onViolationsChanged(f){this.listeners.push(f)}getViolations(){return this.violations}};qL=UYt([vr()],qL);var WYt=Object.getOwnPropertyDescriptor,YYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?WYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},yy=(f,h)=>(b,w)=>h(b,w,f),HL;(f=>{f.KIND="analyze";function h(){return{kind:f.KIND}}f.create=h})(HL||(HL={}));let oye=class extends Ey{constructor(f,h,b,w,m,P,g,E,C,T){super(h,b,w,m,E,P,C),this.dfdWebSocket=g,this.violationService=T}static KIND=HL.KIND;async getFile(f){const h={model:f.modelFactory.createSchema(f.root),labelTypes:this.labelTypeRegistry.getLabelTypes(),constraints:this.constraintRegistry.getConstraintList(),mode:this.editorModeController.get(),version:gmt},b=await this.dfdWebSocket.requestDiagram("Json:"+JSON.stringify(h));if(b&&b.content){const w=b.content.violations||[];this.violationService.updateViolations(w),b.content.violations=w}return b}};oye=YYt([yy(0,Et(de.TYPES.Action)),yy(1,Et(de.TYPES.ILogger)),yy(2,Et(Zd)),yy(3,Et(Qd)),yy(4,Et(sc.Mode)),yy(5,Et(Ty)),yy(6,Et(Sy)),yy(7,Et(de.TYPES.IActionDispatcher)),yy(8,Et(Jd)),yy(9,Et(qL))],oye);const XYt=new xf((f,h,b,w)=>{const m={bind:f,unbind:h,isBound:b,rebind:w};de.configureCommand(m,Fve),de.configureCommand(m,nye),de.configureCommand(m,tye),de.configureCommand(m,hA),de.configureCommand(m,Bve),de.configureCommand(m,rye),de.configureCommand(m,KL),de.configureCommand(m,oye),w(de.TYPES.IModelFactory).to(iye)});var JYt=Object.defineProperty,QYt=Object.getOwnPropertyDescriptor,ZYt=(f,h,b)=>h in f?JYt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,pmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?QYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},eXt=(f,h)=>(b,w)=>h(b,w,f),g2e=(f,h,b)=>ZYt(f,typeof h!="symbol"?h+"":h,b);let pg=class extends jy{noLabelHeight(){return pg.TEXT_HEIGHT}labelStartHeight(){return pg.LABEL_START_HEIGHT}calculateWidth(){return super.calculateWidth()+pg.LEFT_PADDING}};g2e(pg,"TEXT_HEIGHT",32);g2e(pg,"LABEL_START_HEIGHT",28);g2e(pg,"LEFT_PADDING",10);pg=pmt([vr()],pg);let cye=class extends de.ShapeView{constructor(f){super(),this.labelRenderer=f}render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds,m=pg.LEFT_PADDING/2;return de.svg("g",{"class-sprotty-node":!0,"class-storage":!0,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w,stroke:"red"}),de.svg("line",{x1:pg.LEFT_PADDING,y1:"0",x2:pg.LEFT_PADDING,y2:w}),h.renderChildren(f,{xPosition:b/2+m,yPosition:pg.TEXT_HEIGHT/2}),this.labelRenderer.renderNodeLabels(f,pg.LABEL_START_HEIGHT,m))}};cye=pmt([vr(),eXt(0,Et(Rf))],cye);var tXt=Object.getOwnPropertyDescriptor,nXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?tXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},iXt=(f,h)=>(b,w)=>h(b,w,f);class _y extends jy{static TEXT_HEIGHT=28;static SEPARATOR_NO_LABEL_PADDING=4;static SEPARATOR_LABEL_PADDING=4;static LABEL_START_HEIGHT=this.TEXT_HEIGHT+this.SEPARATOR_LABEL_PADDING;static BORDER_RADIUS=5;noLabelHeight(){return _y.LABEL_START_HEIGHT+_y.SEPARATOR_NO_LABEL_PADDING}labelStartHeight(){return _y.LABEL_START_HEIGHT}}let sye=class extends de.ShapeView{constructor(f){super(),this.labelRenderer=f}render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds,m=_y.BORDER_RADIUS;return de.svg("g",{"class-sprotty-node":!0,"class-function":!0,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w,rx:m,ry:m}),de.svg("line",{x1:"0",y1:_y.TEXT_HEIGHT,x2:b,y2:_y.TEXT_HEIGHT}),h.renderChildren(f,{xPosition:b/2,yPosition:_y.TEXT_HEIGHT/2}),this.labelRenderer.renderNodeLabels(f,_y.LABEL_START_HEIGHT))}};sye=nXt([vr(),iXt(0,Et(Rf))],sye);var rXt=Object.defineProperty,oXt=Object.getOwnPropertyDescriptor,cXt=(f,h,b)=>h in f?rXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,wmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?oXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},sXt=(f,h)=>(b,w)=>h(b,w,f),mmt=(f,h,b)=>cXt(f,typeof h!="symbol"?h+"":h,b);let B3=class extends jy{noLabelHeight(){return B3.TEXT_HEIGHT}labelStartHeight(){return B3.LABEL_START_HEIGHT}};mmt(B3,"TEXT_HEIGHT",32);mmt(B3,"LABEL_START_HEIGHT",28);B3=wmt([vr()],B3);let uye=class extends de.ShapeView{constructor(f){super(),this.labelRenderer=f}render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds;return de.svg("g",{"class-sprotty-node":!0,"class-io":!0,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w}),h.renderChildren(f,{xPosition:b/2,yPosition:B3.TEXT_HEIGHT/2}),this.labelRenderer.renderNodeLabels(f,B3.LABEL_START_HEIGHT))}};uye=wmt([vr(),sXt(0,Et(Rf))],uye);var uXt=Object.getOwnPropertyDescriptor,aXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?uXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let aye=class extends de.ShapeView{getPosition(f,h){if(h&&"xPosition"in h&&"yPosition"in h)return{x:h.xPosition,y:h.yPosition};{const b=f.parent?.bounds,w=b?.width??0,m=b?.height??0;return{x:w/2,y:m/2}}}render(f,h,b){const w=this.getPosition(f,b);return de.svg("text",{"class-sprotty-label":!0,x:w.x,y:w.y},f.text)}};aye=aXt([vr()],aye);var lXt=Object.defineProperty,fXt=Object.getOwnPropertyDescriptor,hXt=(f,h,b)=>h in f?lXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,dXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?fXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},gXt=(f,h,b)=>hXt(f,h+"",b);let wA=class extends de.ShapeView{render(f,h){if(!this.isVisible(f,h))return;const b=uN(f.text),w=b.width+wA.PADDING,m=b.height+wA.PADDING;return de.svg("g",{"class-label-background":!0},f.text?de.svg("rect",{x:-w/2,y:-m/2,width:w,height:m}):void 0,de.svg("text",{"class-sprotty-label":!0},f.text))}};gXt(wA,"PADDING",5);wA=dXt([vr()],wA);var bXt=Object.getOwnPropertyDescriptor,pXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?bXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let lye=class{cssClass="label-validation-results";decorate(f,h){const b=f.parentElement;if(b&&h.severity!=="ok"){const w=document.createElement("span");w.innerText=h.message??h.severity,w.classList.add(this.cssClass),w.style.top=`${f.clientHeight}px`,b.appendChild(w)}}dispose(f){const h=f.parentElement;h&&h.querySelector(`span.${this.cssClass}`)?.remove()}};lye=pXt([vr()],lye);var wXt=Object.getOwnPropertyDescriptor,mXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?wXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let fye=class{async validate(f,h){if(!(h instanceof de.SChildElementImpl))return{severity:"ok"};const b=h.parent;if(!(b instanceof de.SEdgeImpl))return{severity:"ok"};if(f.includes(" "))return{severity:"error",message:"Input name cannot contain spaces"};if(f.includes(","))return{severity:"error",message:"Input name cannot contain commas"};if(f.length==0)return{severity:"error",message:"Input name cannot be empty"};const w=b,m=w.target;return m instanceof gA?m.parent.getEdgeTexts(C=>C.id!==w.id).find(C=>C.toLowerCase()===f.toLowerCase())?{severity:"error",message:"Input name already used"}:{severity:"ok"}:{severity:"ok"}}};fye=mXt([vr()],fye);class K0t extends de.EditLabelUI{onBeforeShow(h,b,...w){super.onBeforeShow(h,b,...w),(window.scrollX!==0||window.scrollY!==0)&&window.scrollTo(0,0)}}var dS=(f=>(f.INCOMING="Incoming",f.OUTGOING="Outgoing",f.ALL="All",f))(dS||{});class vXt extends SJ{constructor(){super("All")}}var yXt=Object.defineProperty,_Xt=Object.getOwnPropertyDescriptor,EXt=(f,h,b)=>h in f?yXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,vmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?_Xt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},hye=(f,h)=>(b,w)=>h(b,w,f),SXt=(f,h,b)=>EXt(f,h+"",b);let zL=class extends de.MouseListener{constructor(f){super(),this.actionDispatcher=f}stillTimeout;lastTarget;lastPosition={x:0,y:0};mouseMove(f,h){const b=this.findDfdNode(f);return b?(this.lastPosition={x:h.clientX,y:h.clientY},b===this.lastTarget?[]:(this.stillTimeout=setTimeout(()=>{this.stillTimeout=void 0,b.opacity===1&&this.showPopup(b)},500),this.lastTarget!==b?(this.lastTarget=b,this.hidePopup()):[])):(this.stillTimeout&&(clearTimeout(this.stillTimeout),this.stillTimeout=void 0),this.hidePopup())}findDfdNode(f){return f instanceof jy?f:f instanceof de.SChildElementImpl&&f.parent?this.findDfdNode(f.parent):void 0}showPopup(f){f.annotations&&this.actionDispatcher.dispatch(de.SetUIExtensionVisibilityAction.create({extensionId:yS.ID,visible:!0,contextElementsId:[f.id]}))}hidePopup(){return[de.SetUIExtensionVisibilityAction.create({extensionId:yS.ID,visible:!1})]}getMousePosition(){return this.lastPosition}};zL=vmt([hye(0,Et(de.TYPES.IActionDispatcher))],zL);let yS=class extends de.AbstractUIExtension{constructor(f,h){super(),this.mouseListener=f,this.shownLabels=h}annotationParagraph=document.createElement("p");id(){return yS.ID}containerClass(){return this.id()}initializeContents(f){f.classList.add("ui-float"),f.appendChild(this.annotationParagraph)}onBeforeShow(f,h,...b){if(b.length!==1){this.annotationParagraph.innerText="UI Error: Expected exactly one context element id, but got "+b.length;return}const w=h.index.getById(b[0]);if(!(w instanceof jy)){this.annotationParagraph.innerText="UI Error: Expected context element to be a DfdNodeImpl, but got "+w;return}this.annotationParagraph.innerText="";const m=this.mouseListener.getMousePosition(),P={x:m.x-2,y:m.y-2};f.style.left=`${P.x}px`,f.style.top=`${P.y}px`,f.style.overflowY="auto",this.annotationParagraph.style.whiteSpace="normal",this.annotationParagraph.style.wordBreak="break-word";const g=window.innerWidth,E=window.innerHeight;if(f.style.maxWidth=`${Math.max(g-P.x-50,100)}px`,f.style.maxHeight=`${Math.max(E-P.y-50,50)}px`,!w.annotations||w.annotations.length==0){this.annotationParagraph.innerText="No errors";return}this.annotationParagraph.innerHTML="";const C=this.shownLabels.get();w.annotations.forEach(T=>{if((C===dS.INCOMING||C===dS.ALL)&&T.message.trim().startsWith("Incoming")||(C===dS.OUTGOING||C===dS.ALL)&&T.message.trim().startsWith("Propagated")||T.message.startsWith("Constraint")){const M=document.createElement("div");if(M.style.display="flex",M.style.alignItems="center",M.style.gap="6px",T.icon){const I=document.createElement("i");I.classList.add("fa",`fa-${T.icon}`),M.appendChild(I)}const _=document.createElement("span");_.innerText=T.message,M.appendChild(_),this.annotationParagraph.appendChild(M)}})}};SXt(yS,"ID","dfd-node-annotation-ui");yS=vmt([vr(),hye(0,Et(zL)),hye(1,Et(sc.ShownLabels))],yS);const PXt=new xf((f,h,b,w)=>{const m={bind:f,unbind:h,isBound:b,rebind:w};f(de.TYPES.IEditLabelValidator).to(fye).inSingletonScope(),f(de.TYPES.IEditLabelValidationDecorator).to(lye).inSingletonScope(),de.configureActionHandler(m,de.EditLabelAction.KIND,de.EditLabelActionHandler),f(K0t).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(K0t),f(de.TYPES.ISnapper).to(Hve).inSingletonScope(),f(de.TYPES.MouseListener).to(GWt).inSingletonScope(),de.configureCommand(m,LL),f(yS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(yS),f(zL).toSelf().inSingletonScope(),f(de.TYPES.MouseListener).toService(zL),de.configureModelElement(m,"graph",de.SGraphImpl,de.SGraphView),de.configureModelElement(m,"node:storage",pg,cye),de.configureModelElement(m,"node:function",_y,sye),de.configureModelElement(m,"node:input-output",B3,uye),de.configureModelElement(m,"edge:arrow",a2e,qve,{enable:[de.withEditLabelFeature]}),de.configureModelElement(m,"routing-point",de.SRoutingHandleImpl,HX),de.configureModelElement(m,"volatile-routing-point",de.SRoutingHandleImpl,HX),de.configureModelElement(m,"port:dfd-input",gA,KWt),de.configureModelElement(m,"port:dfd-output",pA,Zve),de.configureModelElement(m,"label",de.SLabelImpl,de.SLabelView,{enable:[de.editLabelFeature]}),de.configureModelElement(m,"label:positional",de.SLabelImpl,aye,{enable:[de.editLabelFeature]}),de.configureModelElement(m,"label:filled-background",de.SLabelImpl,wA,{enable:[de.editLabelFeature]}),f(Rf).toSelf().inSingletonScope()}),MXt=new xf(f=>{f(Sy).toSelf().inSingletonScope()});var CXt=Object.getOwnPropertyDescriptor,IXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?CXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let JX=class{async getActions(f){const h=xL.create(f),b=de.CommitModelAction.create();return[new lS("Load",[new de.LabeledAction("Load diagram from JSON",[BL.create(),b],"json"),new de.LabeledAction("Load DFD and DD",[WX.create(),b],"coffee"),new de.LabeledAction("Load Palladio",[YX.create(),b],"fa-puzzle-piece")],"go-to-file"),new lS("Save",[new de.LabeledAction("Save diagram as JSON",[$L.create()],"json"),new de.LabeledAction("Save diagram as DFD and DD",[XX.create()],"coffee")],"save"),new de.LabeledAction("Load default diagram",[dA.create(),b],"clear-all"),new de.LabeledAction("Fit to Screen",[h],"screen-normal"),new lS("Layout diagram (Method: Lines)",[new de.LabeledAction("Layout: Lines",[D3.create(Xd.LINES),b,h],"grabber"),new de.LabeledAction("Layout: Wrapping Lines",[D3.create(Xd.WRAPPING),b,h],"word-wrap"),new de.LabeledAction("Layout: Circles",[D3.create(Xd.CIRCLES),b,h],"circle-large")],"layout",[D3.create(Xd.LINES),b,h])]}};JX=IXt([vr()],JX);class lS extends de.LabeledAction{constructor(h,b,w,m=[]){super(h,m,w),this.children=b}}var TXt=Object.defineProperty,jXt=Object.getOwnPropertyDescriptor,AXt=(f,h,b)=>h in f?TXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,OXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?jXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},DXt=(f,h,b)=>AXt(f,h+"",b);let mA=class extends de.CommandPalette{suggestionElement;index=-1;childIndex=-1;insideChild=!1;actions=[];filteredActions=[];initializeContents(f){f.style.position="absolute",f.style.top="100px",f.style.left="100px",this.inputElement=document.createElement("input"),this.inputElement.style.width="100%",this.inputElement.addEventListener("keydown",h=>this.processKeyStrokeInInput(h)),this.inputElement.addEventListener("input",()=>this.updateSuggestions()),this.inputElement.onblur=()=>window.setTimeout(()=>this.hide(),200),this.suggestionElement=document.createElement("div"),this.suggestionElement.className="command-palette-suggestions-holder",f.appendChild(this.inputElement),f.appendChild(this.suggestionElement)}show(f,...h){super.show(f,...h),this.autoCompleteResult.destroy(),this.index=-1,this.childIndex=-1,this.insideChild=!1,this.filteredActions=[],this.actions=[],this.suggestionElement.innerHTML="",this.inputElement.value="",this.inputElement.focus(),this.actionProviderRegistry.getActions(f,"",this.mousePositionTracker.lastPositionOnDiagram).then(b=>this.actions=b).then(()=>this.updateSuggestions())}updateSuggestions(){if(!this.suggestionElement)return;this.suggestionElement.innerHTML="";const f=this.inputElement.value.toLowerCase();this.filteredActions=[];for(const h of this.actions){if(this.matchFilter(h,f)){this.filteredActions.push(h);continue}if(h instanceof lS){const b=h.children.filter(w=>this.matchFilter(w,f));if(b.length>0){this.filteredActions.push(new lS(h.label,b,h.icon));continue}}}this.index>=this.filteredActions.length&&(this.index=-1);for(const[h,b]of this.filteredActions.entries()){const w=this.renderSuggestion(b);h===this.index&&(w.classList.add("expanded"),this.insideChild||w.classList.add("selected")),this.suggestionElement.appendChild(w)}}renderSuggestion(f){const h=document.createElement("div");h.className="command-palette-suggestion";const b=document.createElement("span");b.className=this.getIconClasses(f.icon),h.appendChild(b);const w=document.createElement("span");w.className="command-palette-suggestion-label",w.innerText=f.label,h.appendChild(w);const m=document.createElement("span");if(h.appendChild(m),f instanceof lS){m.className="codicon codicon-chevron-right",h.appendChild(m);const P=document.createElement("div");P.className="command-palette-suggestion-children";for(const[g,E]of f.children.entries()){const C=this.renderSuggestion(E);this.insideChild&&this.childIndex===g&&C.classList.add("selected"),P.appendChild(C)}h.appendChild(P)}return h.addEventListener("click",()=>{f instanceof lS||this.executeAction(f)}),h}getIconClasses(f){return f?f.startsWith("fa-")?"fa-solid "+f:f.startsWith("codicon-")?"codicon "+f:"codicon codicon-"+f:"codicon codicon-gear"}matchFilter(f,h){return f.label.toLowerCase().includes(h)}id(){return mA.ID}containerClass(){return mA.ID}processKeyStrokeInInput(f){Pl.matchesKeystroke(f,"Escape")&&this.hide(),Pl.matchesKeystroke(f,"ArrowDown")&&(this.insideChild?this.childIndex=(this.childIndex+1)%this.filteredActions[this.index].children.length:this.index===-1?this.index=0:this.index=(this.index+1)%this.suggestionElement.children.length),Pl.matchesKeystroke(f,"ArrowUp")&&(this.insideChild?this.childIndex=(this.childIndex-1+this.filteredActions[this.index].children.length)%this.filteredActions[this.index].children.length:this.index===-1?this.index=this.suggestionElement.children.length-1:this.index=(this.index-1+this.suggestionElement.children.length)%this.suggestionElement.children.length),Pl.matchesKeystroke(f,"ArrowRight")&&!this.insideChild&&this.filteredActions[this.index]instanceof lS&&(f.preventDefault(),this.insideChild=!0,this.childIndex=0),Pl.matchesKeystroke(f,"ArrowLeft")&&this.insideChild&&(f.preventDefault(),this.insideChild=!1,this.childIndex=-1),Pl.matchesKeystroke(f,"Enter")&&(this.insideChild?this.executeAction(this.filteredActions[this.index].children[this.childIndex]):this.index!==-1&&this.executeAction(this.filteredActions[this.index]),this.hide()),this.updateSuggestions()}executeAction(f){this.actionDispatcherProvider().then(h=>h.dispatchAll(f.actions)).catch(h=>this.logger.error(this,"No action dispatcher available to execute command palette action",h))}};DXt(mA,"ID","command-palette");mA=OXt([vr()],mA);class kXt extends de.CommandStack{isPushToUndoStack(h){return!(h instanceof de.HiddenCommand||h instanceof de.SelectCommand||h instanceof de.SetViewportCommand||h instanceof de.BringToFrontCommand||h instanceof de.FitToScreenCommand||h instanceof de.CenterCommand)}}const RXt=new xf((f,h,b,w)=>{w(de.CommandPalette).to(mA).inSingletonScope(),f(JX).toSelf().inSingletonScope(),f(de.TYPES.ICommandPaletteActionProvider).toService(JX),w(de.TYPES.ICommandStack).to(kXt).inSingletonScope()});class xXt extends de.KeyListener{keyDown(h,b){return Pl.matchesKeystroke(b,"KeyL","ctrlCmd")?(b.preventDefault(),[D3.create(Xd.LINES),de.CommitModelAction.create(),xL.create(h.root)]):[]}}const LXt=new xf((f,h,b,w)=>{f($X).toSelf().inSingletonScope(),f(de.TYPES.IModelLayoutEngine).toService($X),f(x3).to(x3),w(R3.ILayoutConfigurator).to(x3),f(R3.ILayoutPostprocessor).to(Lve).inSingletonScope(),f(R3.ElkFactory).toConstantValue(iWt),f(de.TYPES.KeyListener).to(xXt).inSingletonScope();const m={bind:f,unbind:h,isBound:b,rebind:w};de.configureCommand(m,Nve)}),NXt=new xf(f=>{f(Ty).toSelf().inSingletonScope()});var FXt=Object.defineProperty,BXt=Object.getOwnPropertyDescriptor,$Xt=(f,h,b)=>h in f?FXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,KXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?BXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},IL=(f,h)=>(b,w)=>h(b,w,f),qXt=(f,h,b)=>$Xt(f,h+"",b);let wS=class extends RM{constructor(f,h,b,w,m){super("right","up"),this.themeManager=f,this.shownLabels=h,this.hideEdgeNames=b,this.simplifyNodeNames=w,this.editorModeController=m}id(){return wS.ID}containerClass(){return wS.ID}initializeHidableContent(f){const h=document.createElement("div");h.id="settings-content",f.appendChild(h),this.addDropDown(h,"Theme",this.themeManager,[DM.SYSTEM_DEFAULT,DM.LIGHT,DM.DARK]),this.addDropDown(h,"Shown Labels",this.shownLabels,[dS.INCOMING,dS.OUTGOING,dS.ALL]),this.addBooleanSwitch(h,"Hide Edge Names",this.hideEdgeNames),this.addBooleanSwitch(h,"Simplify Node Names",this.simplifyNodeNames),this.addSwitch(h,"Read Only",this.editorModeController,{true:"view",false:"edit"})}initializeHeaderContent(f){f.classList.add("settings-accordion-icon"),f.innerText="Settings"}addBooleanSwitch(f,h,b){this.addSwitch(f,h,b,{true:!0,false:!1})}addSwitch(f,h,b,w){const m={[w.true.toString()]:!0,[w.false.toString()]:!1},P=document.createElement("label");P.textContent=h,P.htmlFor=`setting-${h.toLowerCase().replace(/\s+/g,"-")}`;const g=document.createElement("label");g.classList.add("switch");const E=document.createElement("input");E.type="checkbox",E.id=`setting-${h.toLowerCase().replace(/\s+/g,"-")}`,E.checked=m[b.get().toString()],g.appendChild(E);const C=document.createElement("span");C.classList.add("slider","round"),g.appendChild(C),f.appendChild(P),f.appendChild(g),g.addEventListener("change",()=>{b.set(w[E.checked?"true":"false"])}),b.registerListener(T=>{E.checked=m[T.toString()]})}addDropDown(f,h,b,w){const m=document.createElement("label");m.textContent=h,m.htmlFor=`setting-${h.toLowerCase().replace(/\s+/g,"-")}`;const P=document.createElement("select");for(const g of w){const E=document.createElement("option");E.value=g.toString(),E.innerText=g.toString(),P.appendChild(E)}P.value=b.get().toString(),P.onchange=()=>{const g=w.find(E=>E.toString()===P.value);g&&b.set(g)},f.appendChild(m),f.appendChild(P)}};qXt(wS,"ID","settings-ui");wS=KXt([vr(),IL(0,Et(sc.Theme)),IL(1,Et(sc.ShownLabels)),IL(2,Et(sc.HideEdgeNames)),IL(3,Et(sc.SimplifyNodeNames)),IL(4,Et(sc.Mode))],wS);class HXt extends SJ{constructor(){super("edit")}setDefault(){this.set("edit")}isReadOnly(){return this.get()!=="edit"}}const zXt=new xf((f,h,b)=>{f(wS).toSelf().inSingletonScope(),f(Db.DefaultUIElement).toService(wS),f(de.TYPES.IUIExtension).toService(wS),f(sc.Theme).to(fA).inSingletonScope(),f(sc.HideEdgeNames).to(N0t).inSingletonScope(),f(sc.SimplifyNodeNames).to(N0t).inSingletonScope(),f(sc.Mode).to(HXt).inSingletonScope(),f(sc.ShownLabels).to(vXt).inSingletonScope();const w={bind:f,isBound:b};de.configureCommand(w,xWt),de.configureCommand(w,Gve),f(VX).toSelf().inSingletonScope()});var ymt=Object.defineProperty,VXt=Object.getOwnPropertyDescriptor,GXt=(f,h,b)=>h in f?ymt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,PJ=(f,h,b,w)=>{for(var m=w>1?void 0:w?VXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&ymt(h,b,m),m},aS=(f,h)=>(b,w)=>h(b,w,f),UXt=(f,h,b)=>GXt(f,h+"",b);let VL=class extends de.MouseListener{constructor(f,h,b,w,m,P,g){super(),this.mouseTool=f,this.mousePositionTracker=h,this.modelFactory=b,this.actionDispatcher=w,this.commandStack=m,this.snapper=P,this.logger=g}element;previewOpacity=.5;insertIntoGraphRootAfterCreation=!0;elementType="";async createElement(){const f=this.createElementSchema();f.opacity??=this.previewOpacity;const h=this.modelFactory.createElement(f);return this.insertIntoGraphRootAfterCreation&&(await this.commandStack.executeAll([])).add(h),h}enable(f){this.elementType=f,this.mouseTool.register(this),this.createElement().then(h=>{this.element=h,this.logger.log(this,"Created element",h),this.mousePositionTracker.lastPositionOnDiagram&&this.updateElementPosition(this.mousePositionTracker.lastPositionOnDiagram)}).catch(h=>{this.logger.error(this,"Failed to create element",h)})}disable(){if(this.mouseTool.deregister(this),this.element){let f;try{f=this.element.root}catch{}this.element.parent?.remove(this.element),this.element=void 0,f&&this.commandStack.update(f),this.logger.info(this,"Cancelled element creation")}}finishPlacingElement(){if(this.element){const f=this.element.parent;f.remove(this.element),this.element.opacity=1,this.actionDispatcher.dispatch(QX.create(this.element,f)),this.logger.log(this,"Finalized element creation of element",this.element),this.element=void 0}this.disable()}updateElementPosition(f){if(!this.element)return;const h={...f};if(this.element instanceof de.SEdgeImpl)this.element.targetId&&this.element.target&&(mg.Point.equals(this.element.target.position,h)||(this.element.target.position=h,this.commandStack.update(this.element.root)));else{const b=this.element.position;if(this.element instanceof de.SNodeImpl){const{width:m,height:P}=this.element.bounds;h.x-=m/2,h.y-=P/2}else if(this.element instanceof de.SPortImpl){const m=this.element.parent;m instanceof de.SNodeImpl&&(h.x-=m.position.x,h.y-=m.position.y)}const w=this.snapper.snap(h,this.element);mg.Point.equals(b,w)||(this.element.position=w,this.commandStack.update(this.element.root))}}mouseMove(f,h){const b=this.calculateMousePosition(f,h);return this.updateElementPosition(b),[]}mouseDown(f,h){return h.preventDefault(),this.finishPlacingElement(),[de.CommitModelAction.create()]}calculateMousePosition(f,h){const b=f.root,w=m=>{const P=b.scroll[m],E=(m==="x"?h.offsetX:h.offsetY)/b.zoom;return P+E};return{x:w("x"),y:w("y")}}};VL=PJ([vr(),aS(0,Et(de.MouseTool)),aS(1,Et(de.MousePositionTracker)),aS(2,Et(de.TYPES.IModelFactory)),aS(3,Et(de.TYPES.IActionDispatcher)),aS(4,Et(de.TYPES.ICommandStack)),aS(5,Et(de.TYPES.ISnapper)),aS(6,Et(de.TYPES.ILogger))],VL);var QX;(f=>{f.TYPE="addElementToGraph";function h(b,w){return{kind:f.TYPE,element:b,parent:w}}f.create=h})(QX||(QX={}));let ZX=class{constructor(f){this.action=f}execute(f){return this.action.parent.add(this.action.element),f.root}undo(f){return this.action.element.parent.remove(this.action.element),f.root}redo(f){return this.execute(f)}};UXt(ZX,"KIND",QX.TYPE);ZX=PJ([vr(),aS(0,Et(de.TYPES.Action))],ZX);let GL=class extends de.KeyListener{tools=[];keyDown(f,h){return h.key==="Escape"&&this.disableAllTools(),[]}disableAllTools(){this.tools.forEach(f=>f.disable())}};PJ([cJ(Db.CreationTool)],GL.prototype,"tools",2);GL=PJ([vr()],GL);var WXt=Object.getOwnPropertyDescriptor,YXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?WXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let UL=class extends VL{edgeTargetElement;insertIntoGraphRootAfterCreation=!1;createElementSchema(){return{id:L3(),type:this.elementType,sourceId:"",targetId:""}}disable(){this.edgeTargetElement&&(this.edgeTargetElement.parent?.remove(this.edgeTargetElement),this.edgeTargetElement=void 0),super.disable()}mouseDown(f,h){if(!this.element)return[];const b=this.findConnectable(f);if(!b)return[];if(this.element.sourceId){if(b.canConnect(this.element,"target")){this.element.targetId=b.id;const w=super.mouseDown(b,h);return this.disable(),w}}else if(b.canConnect(this.element,"source")){this.element.sourceId=b.id;const w=f.root;w.add(this.element),this.edgeTargetElement=this.modelFactory.createElement({id:L3(),type:"empty-node",position:this.calculateMousePosition(f,h)}),w.add(this.edgeTargetElement),this.element.targetId=this.edgeTargetElement.id}return[]}findConnectable(f){if(de.isConnectable(f))return f;if("parent"in f&&f.parent)return this.findConnectable(f.parent)}};UL=YXt([vr()],UL);var XXt=Object.getOwnPropertyDescriptor,JXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?XXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let WL=class extends VL{createElementSchema(){const f=this.elementType.replace("node:",""),h=f.charAt(0).toUpperCase()+f.slice(1);return{id:L3(),type:this.elementType,text:h,ports:[],labels:[]}}};WL=JXt([vr()],WL);var QXt=Object.getOwnPropertyDescriptor,ZXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?QXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let YL=class extends VL{createElementSchema(){return{id:L3(),type:this.elementType,opacity:0}}mouseMove(f,h){if(!this.element)return[];const b=this.element.parent,w=this.findNodeElement(f);return w?b!==w&&f instanceof de.SChildElementImpl&&(this.element.opacity=this.previewOpacity,b.remove(this.element),f.add(this.element),this.commandStack.update(this.element.root)):b!==f.root&&(this.element.opacity=0,b.remove(this.element),f.root.add(this.element),this.commandStack.update(this.element.root)),super.mouseMove(f,h)}mouseDown(f,h){return this.element?.parent===f.root?(this.disable(),[de.CommitModelAction.create()]):super.mouseDown(f,h)}findNodeElement(f){if(f.type.startsWith("node"))return f;if(f instanceof de.SChildElementImpl&&f.parent instanceof de.SShapeElementImpl)return this.findNodeElement(f.parent)}};YL=ZXt([vr()],YL);var eJt=Object.defineProperty,tJt=Object.getOwnPropertyDescriptor,nJt=(f,h,b)=>h in f?eJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,iJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?tJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},uS=(f,h)=>(b,w)=>h(b,w,f),rJt=(f,h,b)=>nJt(f,h+"",b);let A3=class extends de.AbstractUIExtension{constructor(f,h,b,w,m,P,g){super(),this.actionDispatcher=f,this.patcherProvider=h,this.nodeCreationTool=b,this.edgeCreationTool=w,this.portCreationTool=m,this.allTools=P,this.editorModeController=g}keyboardShortcuts=new Map;id(){return A3.ID}containerClass(){return"tool-palette"}initializeContents(f){f.classList.add("ui-float"),document.addEventListener("keydown",h=>{Pl.matchesKeystroke(h,"Escape")&&this.disableTools()}),this.addTool(f,this.nodeCreationTool,"Storage node",h=>h.enable("node:storage"),de.svg("g",null,de.svg("rect",{x:"10%",y:"20%",width:"80%",height:"60%","stroke-width":"1"}),de.svg("line",{x1:"25%",y1:"20%",x2:"25%",y2:"80%","stroke-width":"1"}),de.svg("text",{x:"55%",y:"50%"},"Sto")),"Digit1"),this.addTool(f,this.nodeCreationTool,"Input/Output node",h=>h.enable("node:input-output"),de.svg("g",null,de.svg("rect",{x:"10%",y:"20%",width:"80%",height:"60%","stroke-width":"1"}),de.svg("text",{x:"50%",y:"50%"},"IO")),"Digit2"),this.addTool(f,this.nodeCreationTool,"Function node",h=>h.enable("node:function"),de.svg("g",null,de.svg("rect",{x:"10%",y:"20%",width:"80%",height:"60%",rx:"20%",ry:"20%"}),de.svg("line",{x1:"10%",y1:"65%",x2:"90%",y2:"65%"}),de.svg("text",{x:"50%",y:"44%"},"Fun")),"Digit3"),this.addTool(f,this.edgeCreationTool,"Edge",h=>h.enable("edge:arrow"),de.svg("g",null,de.svg("path",{d:"M 4,4 L 22,22","attrs-stroke-width":"2"}),de.svg("path",{d:"M 0,0 L -3,3 L 6,6 L 3,-3 Z",transform:"translate(22,22)","attrs-stroke-width":"2","class-fill":!0})),"Digit4"),this.addTool(f,this.portCreationTool,"Input port",h=>h.enable("port:dfd-input"),de.svg("g",null,de.svg("rect",{x:"25%",y:"25%",width:"50%",height:"50%"}),de.svg("text",{x:"50%",y:"50%"},"I")),"Digit5"),this.addTool(f,this.portCreationTool,"Output port",h=>h.enable("port:dfd-output"),de.svg("g",null,de.svg("rect",{x:"25%",y:"25%",width:"50%",height:"50%"}),de.svg("text",{x:"50%",y:"50%"},"O")),"Digit6"),f.classList.add("tool-palette")}addTool(f,h,b,w,m,P){const g=document.createElement("div");g.classList.add("tool"),g.addEventListener("click",()=>{g.classList.contains("active")||this.editorModeController?.isReadOnly()?(h.disable(),g.classList.remove("active")):(this.disableTools(),w(h),g.classList.add("active"))}),f.appendChild(g);const E=document.createElement("div");g.appendChild(E);const C=de.svg("svg",{width:"32",height:"32"},de.svg("title",null,b),m);this.patcherProvider.patcher(E,C);const T=document.createElement("kbd");T.classList.add("shortcut"),T.textContent=P?.replace("Key","").replace("Digit","")??"",g.appendChild(T),P&&(this.keyboardShortcuts.set(P,()=>{g.click()}),P.startsWith("Digit")&&this.keyboardShortcuts.set(P.replace("Digit","Numpad"),()=>{g.click()}))}disableTools(){this.allTools.forEach(f=>f.disable()),this.markAllToolsInactive()}markAllToolsInactive(){this.containerElement&&this.containerElement.childNodes.forEach(f=>{f instanceof HTMLElement&&f.classList.remove("active")})}handle(f){f.kind===de.CommitModelAction.KIND&&this.markAllToolsInactive()}keyDown(f,h){return this.keyboardShortcuts.forEach((b,w)=>{Pl.matchesKeystroke(h,w)&&b()}),[]}keyUp(){return[]}};rJt(A3,"ID","tool-palette");A3=iJt([vr(),uS(0,Et(de.TYPES.IActionDispatcher)),uS(1,Et(de.TYPES.PatcherProvider)),uS(2,Et(WL)),uS(3,Et(UL)),uS(4,Et(YL)),uS(5,cJ(Db.CreationTool)),uS(6,Et(sc.Mode)),uS(6,EVt())],A3);const oJt=new xf((f,h,b,w)=>{const m={bind:f,unbind:h,isBound:b,rebind:w};f(GL).toSelf().inSingletonScope(),f(de.TYPES.KeyListener).toService(GL),de.configureModelElement(m,"empty-node",de.SNodeImpl,de.EmptyView),de.configureCommand(m,ZX),f(WL).toSelf().inSingletonScope(),f(Db.CreationTool).toService(WL),f(UL).toSelf().inSingletonScope(),f(Db.CreationTool).toService(UL),f(YL).toSelf().inSingletonScope(),f(Db.CreationTool).toService(YL),f(A3).toSelf().inSingletonScope(),de.configureActionHandler(m,de.CommitModelAction.KIND,A3),f(de.TYPES.IUIExtension).toService(A3),f(de.TYPES.KeyListener).toService(A3),f(Db.DefaultUIElement).toService(A3)});function cJt(f,h){return sJt(kX(f,h,0,h),f)}function kX(f,h,b,w,m=!1,P=!1){if(!P&&f[b].column==1){if(w.some(C=>C.word.verify(f[b].text).length===0))return kX(f,w,b,w,m,!0);if(m||h.length==0)return kX(f,[...w,...h],b,w,m,!0)}let g=[];if(b==f.length-1){for(const E of h)g=g.concat(E.word.completionOptions(f[b].text));return g}for(const E of h)E.word.verify(f[b].text).length>0||(g=g.concat(kX(f,E.children,b+1,w,E.canBeFinal||!1)));return g}function sJt(f,h){const b=[],w=f.filter((m,P)=>f.findIndex(g=>g.insertText===m.insertText&&g.kind===m.kind)===P);for(const m of w){const P=uJt(m,h);b.push(P)}return b}function uJt(f,h){const b=h.length==0?1:h[h.length-1].column,w=h.length==0?1:h[h.length-1].line;return{insertText:f.insertText,kind:f.kind,label:f.label??f.insertText,insertTextRules:f.insertTextRules,range:new Kzt(w,b+(f.startOffset??0),w,b+(f.startOffset??0))}}class _mt{constructor(h){this.tree=h}triggerCharacters=[".","("," ",","];provideCompletionItems(h,b){const w=h.getLinesContent(),m=[];for(let C=0;C{for(var m=w>1?void 0:w?aJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let eJ=class{selectedTfgs=new Set;getSelectedTfgs(){return this.selectedTfgs}clearTfgs(){this.selectedTfgs=new Set}addTfg(f){this.selectedTfgs.add(f)}constructor(){}};eJ=lJt([vr()],eJ);var fJt=Object.getOwnPropertyDescriptor,hJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?fJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Ive=(f,h)=>(b,w)=>h(b,w,f);function Tve(f,h,b,w){w.clearTfgs(),b.setSelectedConstraints(f);const m=h.children.filter(P=>mg.getBasicType(P)==="node");return f.length===0?(m.forEach(P=>{P.setColor("var(--color-primary)")}),h):(m.forEach(P=>{const g=P.annotations;let E=!1;b.selectedContainsAllConstraints()&&g.forEach(C=>{C.message.startsWith("Constraint")&&(E=!0,P.setColor(C.color))}),f.forEach(C=>{g.forEach(T=>{T.message.startsWith("Constraint ")&&T.message.split(" ")[1]===C&&(P.setColor(T.color),E=!0,w.addTfg(T.tfg))})}),E||P.setColor("var(--color-primary)")}),m.forEach(P=>{P.annotations.filter(E=>w.getSelectedTfgs().has(E.tfg)).length>0&&P.setColor("var(--color-highlighted)",!1)}),h)}var gS;(f=>{f.KIND="select-constraints";function h(b){return{kind:f.KIND,selectedConstraintNames:b}}f.create=h})(gS||(gS={}));let dye=class extends de.Command{constructor(f,h,b){super(),this.action=f,this.constraintRegistry=h,this.tfgManager=b}static KIND=gS.KIND;oldConstraintSelection;execute(f){return this.oldConstraintSelection=this.constraintRegistry.getSelectedConstraints(),Tve(this.action.selectedConstraintNames,f.root,this.constraintRegistry,this.tfgManager)}undo(f){return Tve(this.oldConstraintSelection??[],f.root,this.constraintRegistry,this.tfgManager)}redo(f){return Tve(this.action.selectedConstraintNames,f.root,this.constraintRegistry,this.tfgManager)}};dye=hJt([Ive(0,Et(de.TYPES.Action)),Ive(1,Et(Qd)),Ive(2,Et(eJ))],dye);var dJt=Object.defineProperty,gJt=Object.getOwnPropertyDescriptor,bJt=(f,h,b)=>h in f?dJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,pJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?gJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},sA=(f,h)=>(b,w)=>h(b,w,f),wJt=(f,h,b)=>bJt(f,h+"",b);let k3=class extends RM{constructor(f,h,b,w,m,P){super("left","up"),this.constraintRegistry=f,this.dispatcher=w,this.editorModeController=m,this.themeManager=P,this.constraintRegistry=f,m.registerListener(()=>{this.editor?.updateOptions({readOnly:m.isReadOnly()})}),f.onUpdate(()=>{this.editor&&this.editor.getValue()!==this.constraintRegistry.getConstraintsAsText()&&this.editor.setValue(this.constraintRegistry.getConstraintsAsText()||"")}),this.tree=UX.buildTree(b,h)}editorContainer=document.createElement("div");validationLabel=document.createElement("div");editor;optionsMenu;ignoreCheckboxChange=!1;tree;id(){return k3.ID}containerClass(){return k3.ID}initializeHeaderContent(f){f.id="constraint-menu-expand-title",f.innerText="Constraints",f.appendChild(this.buildOptionsButton())}initializeHidableContent(f){const h=document.createElement("div");h.id="constraint-menu-content",h.appendChild(this.buildConstraintInputWrapper()),f.appendChild(h)}initializeContents(f){super.initializeContents(f),f.appendChild(this.buildRunButton())}buildConstraintInputWrapper(){const f=document.createElement("div");f.id="constraint-menu-input",f.appendChild(this.editorContainer),this.validationLabel.id="validation-label",this.validationLabel.classList.add("valid"),this.validationLabel.innerText="Valid constraints",f.appendChild(this.validationLabel);const h=document.createElement("div");h.innerHTML="Press CTRL+Space for autocompletion",f.appendChild(h),wh.register({id:TX}),wh.setMonarchTokensProvider(TX,PYt),wh.registerCompletionItemProvider(TX,new _mt(this.tree));const b=this.themeManager.getTheme()===DM.DARK?"vs-dark":"vs";return this.editor=RX.create(this.editorContainer,{minimap:{enabled:!1},folding:!1,wordBasedSuggestions:"off",scrollBeyondLastLine:!1,theme:b,wordWrap:"on",language:TX,scrollBeyondLastColumn:0,scrollbar:{horizontal:"hidden",vertical:"auto",alwaysConsumeMouseWheel:!1},lineNumbers:"on",readOnly:this.editorModeController.isReadOnly()}),this.editor.setValue(this.constraintRegistry.getConstraintsAsText()||""),this.editor.onDidChangeModelContent(()=>{if(!this.editor)return;const w=this.editor?.getModel();if(!w)return;this.constraintRegistry.setConstraints(w.getLinesContent());const m=w.getLinesContent(),P=[];if(!(m.length==0||m.length==1&&m[0]==="")){const E=f2e(aN(m),this.tree);P.push(...E.map(C=>({severity:z0t.Error,startLineNumber:C.line,startColumn:C.startColumn,endLineNumber:C.line,endColumn:C.endColumn,message:C.message})))}this.validationLabel.innerText=P.length==0?"Valid constraints":`Invalid constraints: ${P.length} errors`,this.validationLabel.classList.toggle("valid",P.length==0),RX.setModelMarkers(w,"constraint",P)}),f}buildRunButton(){const f=document.createElement("div");f.id="run-button-container";const h=document.createElement("button");return h.id="run-button",h.innerHTML="Run",h.onclick=()=>{this.dispatcher.dispatchAll([HL.create(),gS.create(this.constraintRegistry.getConstraintList().map(b=>b.name))])},f.appendChild(h),f}onBeforeShow(){this.resizeEditor()}resizeEditor(){const f=this.editor;if(!f)return;const h=f.getContentHeight(),w=100+f.getValue().split(` +`).reduce((T,M)=>Math.max(T,M.length),0)*8,m=(T,M)=>Math.min(M[1],Math.max(M[0],T)),P=[200,200],g=[500,750],E=m(h,P),C=m(w,g);f.layout({height:E,width:C})}switchTheme(f){this.editor?.updateOptions({theme:f==DM.DARK?"vs-dark":"vs"})}buildOptionsButton(){const f=document.createElement("button");return f.id="constraint-options-button",f.title="Filter…",f.innerHTML='',f.onclick=()=>this.toggleOptionsMenu(),f}toggleOptionsMenu(){if(this.optionsMenu!==void 0){this.optionsMenu.remove(),this.optionsMenu=void 0;return}this.optionsMenu=document.createElement("div"),this.optionsMenu.id="constraint-options-menu";const f=document.createElement("label");f.classList.add("options-item");const h=document.createElement("input");h.type="checkbox",h.value="ALL",h.checked=this.constraintRegistry.getConstraintList().map(m=>m.name).every(m=>this.constraintRegistry.getSelectedConstraints().includes(m)),h.onchange=()=>{if(this.optionsMenu){this.ignoreCheckboxChange=!0;try{h.checked?(this.optionsMenu.querySelectorAll("input[type=checkbox]").forEach(m=>{m!==h&&(m.checked=!0)}),this.dispatcher.dispatch(gS.create(this.constraintRegistry.getConstraintList().map(m=>m.name)))):(this.optionsMenu.querySelectorAll("input[type=checkbox]").forEach(m=>{m!==h&&(m.checked=!1)}),this.dispatcher.dispatch(gS.create([])))}finally{this.ignoreCheckboxChange=!1}}},f.appendChild(h),f.appendChild(document.createTextNode("All constraints")),this.optionsMenu.appendChild(f),this.constraintRegistry.getConstraintList().forEach(m=>{const P=document.createElement("label");P.classList.add("options-item");const g=document.createElement("input");g.type="checkbox",g.value=m.name,g.checked=this.constraintRegistry.getSelectedConstraints().includes(g.value),g.onchange=()=>{if(this.ignoreCheckboxChange)return;const E=this.optionsMenu.querySelectorAll("input[type=checkbox]"),C=Array.from(E).filter(M=>M!==h),T=C.filter(M=>M.checked).map(M=>M.value);h.checked=C.every(M=>M.checked),this.dispatcher.dispatch(gS.create(T))},P.appendChild(g),P.appendChild(document.createTextNode(m.name)),this.optionsMenu.appendChild(P)}),this.editorContainer.appendChild(this.optionsMenu);const w=m=>{const P=m.target;if(!this.optionsMenu||this.optionsMenu.contains(P))return;const g=document.getElementById("constraint-options-button");g&&g.contains(P)||(this.optionsMenu.remove(),this.optionsMenu=void 0,document.removeEventListener("click",w))};document.addEventListener("click",w)}};wJt(k3,"ID","constraint-menu");k3=pJt([vr(),sA(0,Et(Qd)),sA(1,Et(Zd)),sA(2,Et(de.TYPES.ModelSource)),sA(3,Et(de.TYPES.IActionDispatcher)),sA(4,Et(sc.Mode)),sA(5,Et(sc.Theme))],k3);const mJt=new xf((f,h,b)=>{f(Qd).toSelf().inSingletonScope(),f(k3).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(k3),f(Db.DefaultUIElement).toService(k3),f(fmt).toService(k3),f(eJ).toSelf().inSingletonScope(),de.configureCommand({bind:f,isBound:b},dye)});var vJt=Object.defineProperty,yJt=Object.getOwnPropertyDescriptor,_Jt=(f,h,b)=>h in f?vJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,EJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?yJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},TL=(f,h)=>(b,w)=>h(b,w,f),SJt=(f,h,b)=>_Jt(f,h+"",b);let $3=class extends de.AbstractUIExtension{constructor(f,h,b,w,m){super(),this.labelTypeRegistry=f,this.editorModeController=h,this.themeManager=b,this.viewerOptions=w,this.domHelper=m,h.registerListener(()=>{this.editor?.updateOptions({readOnly:this.editorModeController.isReadOnly()})})}port;tree;editorContainer=document.createElement("div");validationLabel=document.createElement("div");unavailableInputsLabel=document.createElement("div");editor;id(){return $3.ID}containerClass(){return $3.ID}initializeContents(f){f.classList.add("ui-float"),f.appendChild(this.unavailableInputsLabel),this.unavailableInputsLabel.classList.add("unavailable-inputs"),f.appendChild(this.editorContainer),this.editorContainer.classList.add("monaco-container"),f.appendChild(this.validationLabel),this.validationLabel.classList.add("validation-label");const h=document.createElement("div");h.innerHTML="Press CTRL+Space for autocompletion",f.appendChild(h),wh.register({id:IX}),wh.setMonarchTokensProvider(IX,vYt);const b=this.themeManager.getTheme()===DM.DARK?"vs-dark":"vs";this.editor=RX.create(this.editorContainer,{minimap:{enabled:!1},lineNumbersMinChars:3,folding:!1,wordBasedSuggestions:"off",scrollBeyondLastLine:!1,theme:b,language:IX,readOnly:this.editorModeController.isReadOnly()}),this.editor.onDidChangeModelContent(()=>{this.validate()}),this.editor.onDidContentSizeChange(()=>{this.resizeEditor()}),this.labelTypeRegistry?.onUpdate(()=>{setTimeout(()=>{this.editor&&this.port&&this.editor?.setValue(this.port?.getBehavior())},0)}),f.addEventListener("keydown",w=>{Pl.matchesKeystroke(w,"Escape")&&this.hide()})}onBeforeShow(f,h,...b){if(b.length!==1)throw new Error("Expected exactly one context element id which should be the port that shall be shown in the UI.");this.setPort(h.index.getById(b[0]),f),this.checkForUnavailableInputs(),this.resizeEditor(),this.editor?.focus()}setPort(f,h){this.port=f;const b=de.getAbsoluteClientBounds(this.port,this.domHelper,this.viewerOptions);if(h.style.left=`${b.x}px`,h.style.top=`${b.y}px`,this.tree=NL.buildTree(f,this.labelTypeRegistry),wh.registerCompletionItemProvider(IX,new _mt(this.tree)),!this.editor)throw new Error("Expected editor to be initialized");this.editor.setValue(f.getBehavior())}checkForUnavailableInputs(){if(!this.port)throw new Error("Expected Assignment Edit Ui to be assigned to a port");const f=this.port.parent;if(!(f instanceof jy))throw new Error("Expected parent to be a DfdNodeImpl.");const b=f.getAvailableInputs().filter(w=>w===void 0).length;if(b>0){const w=b>1?`There are ${b} inputs that don't have a named edge and cannot be used`:`There is ${b} input that doesn't have a named edge and cannot be used`;this.unavailableInputsLabel.innerText=w,this.unavailableInputsLabel.style.display="block"}else this.unavailableInputsLabel.innerText="",this.unavailableInputsLabel.style.display="none"}resizeEditor(){if(!this.editor)return;const f=this.editor.getContentHeight(),b=100+this.editor.getValue().split(` +`).reduce((C,T)=>Math.max(C,T.length),0)*8,w=(C,T)=>Math.min(T[1],Math.max(T[0],C)),m=[100,350],P=[275,650],g=w(f,m),E=w(b,P);this.editor.layout({height:g,width:E})}validate(){if(!this.editor||!this.tree)return;const f=this.editor?.getModel();if(!f)return;const h=f.getLinesContent();this.port?.setBehavior(h.join(` +`));const b=[];if(!(h.length==0||h.length==1&&h[0]==="")){const m=f2e(aN(h),this.tree);b.push(...m.map(P=>({severity:z0t.Error,startLineNumber:P.line,startColumn:P.startColumn,endLineNumber:P.line,endColumn:P.endColumn,message:P.message})))}b.length==0?(this.validationLabel.innerText="Assignments are valid",this.validationLabel.classList.remove("validation-error"),this.validationLabel.classList.add("validation-success")):(this.validationLabel.innerText=`Assignments are invalid: ${b.length} error${b.length===1?"":"s"}.`,this.validationLabel.classList.remove("validation-success"),this.validationLabel.classList.add("validation-error")),RX.setModelMarkers(f,"constraint",b)}};SJt($3,"ID","assignment-edit-ui");$3=EJt([vr(),TL(0,Et(Zd)),TL(1,Et(sc.Mode)),TL(2,Et(sc.Theme)),TL(3,Et(de.TYPES.ViewerOptions)),TL(4,Et(de.TYPES.DOMHelper))],$3);var PJt=Object.getOwnPropertyDescriptor,MJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?PJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let gye=class extends de.MouseListener{editUIVisible=!1;mouseDown(f){return this.editUIVisible?(this.editUIVisible=!1,[de.SetUIExtensionVisibilityAction.create({extensionId:$3.ID,visible:!1,contextElementsId:[f.id]})]):[]}doubleClick(f){return f instanceof pA?(this.editUIVisible=!0,[de.SetUIExtensionVisibilityAction.create({extensionId:$3.ID,visible:!0,contextElementsId:[f.id]})]):[]}};gye=MJt([vr()],gye);const CJt=new xf(f=>{f($3).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService($3),f(de.TYPES.MouseListener).to(gye).inSingletonScope()});var IJt=Object.defineProperty,TJt=Object.getOwnPropertyDescriptor,b2e=(f,h,b,w)=>{for(var m=w>1?void 0:w?TJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&IJt(h,b,m),m},jJt=(f,h)=>(b,w)=>h(b,w,f);let bye=class extends de.EditLabelMouseListener{constructor(f){super(),this.editorModeController=f}doubleClick(f,h){return this.editorModeController.isReadOnly()?[]:super.doubleClick(f,h)}};bye=b2e([vr(),jJt(0,Et(sc.Mode))],bye);let tJ=class extends de.DeleteElementCommand{editorModeController;execute(f){return this.editorModeController?.isReadOnly()?f.root:super.execute(f)}undo(f){return this.editorModeController?.isReadOnly()?f.root:super.undo(f)}redo(f){return this.editorModeController?.isReadOnly()?f.root:super.redo(f)}};b2e([Et(sc.Mode)],tJ.prototype,"editorModeController",2);tJ=b2e([vr()],tJ);const AJt=new xf((f,h,b,w)=>{w(de.EditLabelMouseListener).to(bye),w(de.DeleteElementCommand).to(tJ)}),OJt=new xf(f=>{f(Jd).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(Jd),f(Db.DefaultUIElement).toService(Jd)});class q0t extends de.KeyListener{keyDown(h,b){return Pl.matchesKeystroke(b,"Delete")?this.deleteSelectedElements(h):[]}deleteSelectedElements(h){const b=h.root.index,m=Array.from(b.all().filter(P=>de.isDeletable(P)&&de.isSelectable(P)&&P.selected).filter(P=>P.id!==P.root.id)).flatMap(P=>{const g=[P.id];return P instanceof de.SConnectableElementImpl&&g.push(...this.getEdgeIdsOfElement(P)),P instanceof de.SChildElementImpl&&P.children.forEach(E=>{g.push(E.id),E instanceof de.SConnectableElementImpl&&g.push(...this.getEdgeIdsOfElement(E))}),g});if(m.length>0){const P=[...new Set(m)];return[mg.DeleteElementAction.create(P),de.CommitModelAction.create()]}else return[]}getEdgeIdsOfElement(h){return[...h.incomingEdges.map(b=>b.id),...h.outgoingEdges.map(b=>b.id)]}}var DJt=Object.defineProperty,kJt=Object.getOwnPropertyDescriptor,RJt=(f,h,b)=>h in f?DJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,Emt=(f,h,b,w)=>{for(var m=w>1?void 0:w?kJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},pye=(f,h)=>(b,w)=>h(b,w,f),xJt=(f,h,b)=>RJt(f,h+"",b);let wye=class{constructor(f){this.mousePositionTracker=f}copyElements=[];keyUp(){return[]}keyDown(f,h){return Pl.matchesKeystroke(h,"KeyC","ctrl")?this.copy(f.root):Pl.matchesKeystroke(h,"KeyV","ctrl")?this.paste():[]}copy(f){return this.copyElements=[],f.index.all().filter(h=>de.isSelected(h)).forEach(h=>this.copyElements.push(h)),[]}paste(){const f=this.mousePositionTracker.lastPositionOnDiagram??{x:0,y:0};return[nJ.create(this.copyElements,f),de.CommitModelAction.create()]}};wye=Emt([vr(),pye(0,Et(de.MousePositionTracker))],wye);var nJ;(f=>{f.KIND="paste-clipboard-elements";function h(b,w){return{kind:f.KIND,copyElements:b,targetPosition:w}}f.create=h})(nJ||(nJ={}));let iJ=class extends de.Command{constructor(f,h){super(),this.action=f,this.editorModeController=h}newElements=[];copyElementIdMapping={};computeElementOffset(){const f={x:1/0,y:1/0};return this.action.copyElements.forEach(h=>{h instanceof de.SNodeImpl&&(h.position.x{if(!(b instanceof de.SNodeImpl))return;const w=JSON.parse(JSON.stringify(f.modelFactory.createSchema(b)));"features"in w&&(w.features=void 0),w.id=L3(),this.copyElementIdMapping[b.id]=w.id,"position"in w&&(w.position=mg.Point.add(b.position,h)),b instanceof jy&&w.ports.forEach(P=>{const g=P.id;P.id=L3(),this.copyElementIdMapping[g]=P.id});const m=f.modelFactory.createElement(w,f.root);this.newElements.push(m)}),this.action.copyElements.forEach(b=>{if(!(b instanceof de.SEdgeImpl))return;const w=this.copyElementIdMapping[b.sourceId],m=this.copyElementIdMapping[b.targetId];if(!w||!m)return;const P=JSON.parse(JSON.stringify(f.modelFactory.createSchema(b)));Ey.preprocessModelSchema(P),P.id=L3(),this.copyElementIdMapping[b.id]=P.id,P.sourceId=w,P.targetId=m;const g=f.modelFactory.createElement(P);this.newElements.push(g)}),this.newElements.forEach(b=>{f.root.add(b)}),f.root}undo(f){return this.editorModeController?.isReadOnly()||this.newElements.forEach(h=>{f.root.remove(h)}),f.root}redo(f){return this.editorModeController?.isReadOnly()||this.newElements.forEach(h=>{f.root.add(h)}),f.root}};xJt(iJ,"KIND",nJ.KIND);iJ=Emt([vr(),pye(0,Et(de.TYPES.Action)),pye(1,Et(sc.Mode))],iJ);var LJt=Object.getOwnPropertyDescriptor,NJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?LJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},FJt=(f,h)=>(b,w)=>h(b,w,f);let mye=class extends de.KeyListener{constructor(f){super(),this.constraintRegistry=f}keyDown(f,h){return Pl.matchesKeystroke(h,"KeyO","ctrlCmd")?(h.preventDefault(),[BL.create(),de.CommitModelAction.create()]):Pl.matchesKeystroke(h,"KeyO","ctrlCmd","shift")?(h.preventDefault(),[dA.create(),de.CommitModelAction.create()]):Pl.matchesKeystroke(h,"KeyS","ctrlCmd")?(h.preventDefault(),[$L.create()]):Pl.matchesKeystroke(h,"KeyA","ctrlCmd","shift")?(h.preventDefault(),[HL.create(),gS.create(this.constraintRegistry.getConstraintList().map(b=>b.name)),de.CommitModelAction.create()]):[]}};mye=NJt([vr(),FJt(0,Et(Qd))],mye);class H0t extends de.KeyListener{keyDown(h,b){return Pl.matchesKeystroke(b,"KeyC","ctrlCmd","shift")?[mg.CenterAction.create([])]:Pl.matchesKeystroke(b,"KeyF","ctrlCmd","shift")?[mg.FitToScreenAction.create([h.root.id])]:[]}}const BJt=new xf((f,h,b,w)=>{f(q0t).toSelf().inSingletonScope(),f(de.TYPES.KeyListener).toService(q0t);const m={bind:f,unbind:h,isBound:b,rebind:w};f(de.TYPES.KeyListener).to(wye).inSingletonScope(),de.configureCommand(m,iJ),f(de.TYPES.KeyListener).to(mye).inSingletonScope(),f(H0t).toSelf().inSingletonScope(),w(de.CenterKeyboardListener).toService(H0t)});var $Jt=Object.defineProperty,KJt=Object.getOwnPropertyDescriptor,qJt=(f,h,b)=>h in f?$Jt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,HJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?KJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},zJt=(f,h)=>(b,w)=>h(b,w,f),VJt=(f,h,b)=>qJt(f,h+"",b);let mS=class extends RM{constructor(f){super("left","up"),this.violationService=f}id(){return mS.ID}containerClass(){return mS.ID}initializeHeaderContent(f){f.innerText="Violation Summary"}initializeHidableContent(f){f.innerHTML=` +
    + + +
    +
    +
    +
    +

    + No violation data found. Run a Analysis first. +

    +
    +
    + +
    +
    +

    + No violation data found. Run a Analysis first, then enter your API key to generate an AI summary. +

    +
    +
    + + +
    +
    + +
    +
    +
    + `,this.violationService.onViolationsChanged(h=>{this.updateSimpleTab(f,h)}),this.setupTabLogic(f),this.setupGenerateLogic(f)}setupGenerateLogic(f){f.querySelector("#generate-btn").addEventListener("click",()=>{})}setupTabLogic(f){const h=f.querySelectorAll(".tab-btn"),b=f.querySelectorAll(".tab-pane");h.forEach(w=>{w.addEventListener("click",()=>{const m=w.getAttribute("data-tab");h.forEach(P=>P.classList.remove("active")),b.forEach(P=>P.classList.remove("active")),w.classList.add("active"),f.querySelector(`#${m}-summary`)?.classList.add("active")})})}updateSimpleTab(f,h){const b=f.querySelector("#simple-summary .summary-text");if(!b)return;if(h.length===0){b.innerHTML='

    No violations found. Everything looks good!

    ';return}const w=h.map(m=>` +
    + Violated constraint: ${m.constraint}
    + Flow of violation cause : ${m.violationCauseGraph.join(", ")} +
    + `).join("");b.innerHTML=` +
    Found ${h.length} issues:
    +
    ${w}
    + `}};VJt(mS,"ID","violation-ui");mS=HJt([vr(),zJt(0,Et(qL))],mS);const GJt=new xf(f=>{f(mS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(mS),f(Db.DefaultUIElement).toService(mS),f(qL).toSelf().inSingletonScope()}),p2e=new FX;de.loadDefaultModules(p2e,{exclude:[de.labelEditUiModule]});p2e.load(GUt,fYt,lYt,jYt,PXt,XYt,MXt,RXt,R3.elkLayoutModule,LXt,NXt,zXt,oJt,mJt,CJt,AJt,OJt,BJt,GJt);const UJt=p2e.getAll(OL);for(const f of UJt)f.run(); diff --git a/deploy/online-shop/assets/index-CX3bR72r.css b/deploy/online-shop/assets/index-CX3bR72r.css new file mode 100644 index 00000000..1817db48 --- /dev/null +++ b/deploy/online-shop/assets/index-CX3bR72r.css @@ -0,0 +1 @@ +.sprotty{padding:0;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.sprotty-root{position:relative}.sprotty-hidden{display:block;position:absolute;width:0px;height:0px}.sprotty-popup{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;position:absolute;background:#fff;border-radius:5px;border:1px solid;max-width:400px;min-width:100px}.sprotty-popup>div{margin:10px}.sprotty-popup-closed{display:none}.sprotty-projection-bar.horizontal{position:absolute;width:100%;height:20px;left:0;bottom:0}.sprotty-projection-bar.vertical{position:absolute;width:20px;height:100%;right:0;top:0}.sprotty-viewport{z-index:1;border-style:solid;border-width:2px}.sprotty-projection-bar.horizontal .sprotty-projection,.sprotty-projection-bar.horizontal .sprotty-viewport{position:absolute;height:100%;top:0}.sprotty-projection-bar.vertical .sprotty-projection,.sprotty-projection-bar.vertical .sprotty-viewport{position:absolute;width:100%;left:0}@keyframes spin{to{transform:rotate(360deg)}}.animation-spin{animation:spin 1.5s linear infinite}.sprotty-missing{stroke-width:1;stroke:red;fill:red;font-size:14pt;text-anchor:start}.sprotty-junction{stroke:#000;stroke-width:1;fill:#fff}.ui-float{position:absolute;border-radius:10px;background-color:var(--color-primary)}kbd{background-color:var(--color-primary);color:var(--color-foreground);border-radius:3px;border:1px solid var(--color-foreground);box-shadow:0 1px 1px var(--color-foreground),0 2px 0 0 var(--color-background) inset;display:inline-block;font-size:.85em;font-weight:700;line-height:1;padding:2px 4px;white-space:nowrap}body{background-color:var(--color-background);color:var(--color-foreground);padding:0;margin:0;overflow:hidden}#sprotty{position:relative;height:100vh;width:100vw;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:0}svg.sprotty-graph{width:100%;height:100%;outline:none}.sprotty-hidden{display:none}:root{--color-foreground: #000;--color-background: #fff;--color-primary: #dfdfdf;--color-spacer: #e5e5e5;--color-error: #f00;--color-valid: #00b600;--color-highlighted: #77777a;--color-tool-palette-hover: #ccc;--color-tool-palette-selected: #bbb;--dark-mode: 0}:root[data-theme=dark]{--color-foreground: #fff;--color-background: #1d1c22;--color-spacer: var(--color-background);--color-primary: #302e38;--color-valid: #0f0;--color-tool-palette-hover: #f00;--color-tool-palette-selected: #f00;--dark-mode: 1}#sprotty[data-theme=dark] div{color-scheme:dark}@font-face{font-family:codicon;font-display:block;src:url(./codicon-BYm2YbZ6.ttf?c7330ef9199d97dc5b8aae3449a5dc27) format("truetype")}.codicon[class*=codicon-]{font: 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none;-ms-user-select:none}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:.5}.codicon-modifier-hidden{opacity:0}.codicon-loading{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.codicon-add:before{content:""}.codicon-plus:before{content:""}.codicon-gist-new:before{content:""}.codicon-repo-create:before{content:""}.codicon-lightbulb:before{content:""}.codicon-light-bulb:before{content:""}.codicon-repo:before{content:""}.codicon-repo-delete:before{content:""}.codicon-gist-fork:before{content:""}.codicon-repo-forked:before{content:""}.codicon-git-pull-request:before{content:""}.codicon-git-pull-request-abandoned:before{content:""}.codicon-record-keys:before{content:""}.codicon-keyboard:before{content:""}.codicon-tag:before{content:""}.codicon-git-pull-request-label:before{content:""}.codicon-tag-add:before{content:""}.codicon-tag-remove:before{content:""}.codicon-person:before{content:""}.codicon-person-follow:before{content:""}.codicon-person-outline:before{content:""}.codicon-person-filled:before{content:""}.codicon-source-control:before{content:""}.codicon-mirror:before{content:""}.codicon-mirror-public:before{content:""}.codicon-star:before{content:""}.codicon-star-add:before{content:""}.codicon-star-delete:before{content:""}.codicon-star-empty:before{content:""}.codicon-comment:before{content:""}.codicon-comment-add:before{content:""}.codicon-alert:before{content:""}.codicon-warning:before{content:""}.codicon-search:before{content:""}.codicon-search-save:before{content:""}.codicon-log-out:before{content:""}.codicon-sign-out:before{content:""}.codicon-log-in:before{content:""}.codicon-sign-in:before{content:""}.codicon-eye:before{content:""}.codicon-eye-unwatch:before{content:""}.codicon-eye-watch:before{content:""}.codicon-circle-filled:before{content:""}.codicon-primitive-dot:before{content:""}.codicon-close-dirty:before{content:""}.codicon-debug-breakpoint:before{content:""}.codicon-debug-breakpoint-disabled:before{content:""}.codicon-debug-hint:before{content:""}.codicon-terminal-decoration-success:before{content:""}.codicon-primitive-square:before{content:""}.codicon-edit:before{content:""}.codicon-pencil:before{content:""}.codicon-info:before{content:""}.codicon-issue-opened:before{content:""}.codicon-gist-private:before{content:""}.codicon-git-fork-private:before{content:""}.codicon-lock:before{content:""}.codicon-mirror-private:before{content:""}.codicon-close:before{content:""}.codicon-remove-close:before{content:""}.codicon-x:before{content:""}.codicon-repo-sync:before{content:""}.codicon-sync:before{content:""}.codicon-clone:before{content:""}.codicon-desktop-download:before{content:""}.codicon-beaker:before{content:""}.codicon-microscope:before{content:""}.codicon-vm:before{content:""}.codicon-device-desktop:before{content:""}.codicon-file:before{content:""}.codicon-more:before{content:""}.codicon-ellipsis:before{content:""}.codicon-kebab-horizontal:before{content:""}.codicon-mail-reply:before{content:""}.codicon-reply:before{content:""}.codicon-organization:before{content:""}.codicon-organization-filled:before{content:""}.codicon-organization-outline:before{content:""}.codicon-new-file:before{content:""}.codicon-file-add:before{content:""}.codicon-new-folder:before{content:""}.codicon-file-directory-create:before{content:""}.codicon-trash:before{content:""}.codicon-trashcan:before{content:""}.codicon-history:before{content:""}.codicon-clock:before{content:""}.codicon-folder:before{content:""}.codicon-file-directory:before{content:""}.codicon-symbol-folder:before{content:""}.codicon-logo-github:before{content:""}.codicon-mark-github:before{content:""}.codicon-github:before{content:""}.codicon-terminal:before{content:""}.codicon-console:before{content:""}.codicon-repl:before{content:""}.codicon-zap:before{content:""}.codicon-symbol-event:before{content:""}.codicon-error:before{content:""}.codicon-stop:before{content:""}.codicon-variable:before{content:""}.codicon-symbol-variable:before{content:""}.codicon-array:before{content:""}.codicon-symbol-array:before{content:""}.codicon-symbol-module:before{content:""}.codicon-symbol-package:before{content:""}.codicon-symbol-namespace:before{content:""}.codicon-symbol-object:before{content:""}.codicon-symbol-method:before{content:""}.codicon-symbol-function:before{content:""}.codicon-symbol-constructor:before{content:""}.codicon-symbol-boolean:before{content:""}.codicon-symbol-null:before{content:""}.codicon-symbol-numeric:before{content:""}.codicon-symbol-number:before{content:""}.codicon-symbol-structure:before{content:""}.codicon-symbol-struct:before{content:""}.codicon-symbol-parameter:before{content:""}.codicon-symbol-type-parameter:before{content:""}.codicon-symbol-key:before{content:""}.codicon-symbol-text:before{content:""}.codicon-symbol-reference:before{content:""}.codicon-go-to-file:before{content:""}.codicon-symbol-enum:before{content:""}.codicon-symbol-value:before{content:""}.codicon-symbol-ruler:before{content:""}.codicon-symbol-unit:before{content:""}.codicon-activate-breakpoints:before{content:""}.codicon-archive:before{content:""}.codicon-arrow-both:before{content:""}.codicon-arrow-down:before{content:""}.codicon-arrow-left:before{content:""}.codicon-arrow-right:before{content:""}.codicon-arrow-small-down:before{content:""}.codicon-arrow-small-left:before{content:""}.codicon-arrow-small-right:before{content:""}.codicon-arrow-small-up:before{content:""}.codicon-arrow-up:before{content:""}.codicon-bell:before{content:""}.codicon-bold:before{content:""}.codicon-book:before{content:""}.codicon-bookmark:before{content:""}.codicon-debug-breakpoint-conditional-unverified:before{content:""}.codicon-debug-breakpoint-conditional:before{content:""}.codicon-debug-breakpoint-conditional-disabled:before{content:""}.codicon-debug-breakpoint-data-unverified:before{content:""}.codicon-debug-breakpoint-data:before{content:""}.codicon-debug-breakpoint-data-disabled:before{content:""}.codicon-debug-breakpoint-log-unverified:before{content:""}.codicon-debug-breakpoint-log:before{content:""}.codicon-debug-breakpoint-log-disabled:before{content:""}.codicon-briefcase:before{content:""}.codicon-broadcast:before{content:""}.codicon-browser:before{content:""}.codicon-bug:before{content:""}.codicon-calendar:before{content:""}.codicon-case-sensitive:before{content:""}.codicon-check:before{content:""}.codicon-checklist:before{content:""}.codicon-chevron-down:before{content:""}.codicon-chevron-left:before{content:""}.codicon-chevron-right:before{content:""}.codicon-chevron-up:before{content:""}.codicon-chrome-close:before{content:""}.codicon-chrome-maximize:before{content:""}.codicon-chrome-minimize:before{content:""}.codicon-chrome-restore:before{content:""}.codicon-circle-outline:before{content:""}.codicon-circle:before{content:""}.codicon-debug-breakpoint-unverified:before{content:""}.codicon-terminal-decoration-incomplete:before{content:""}.codicon-circle-slash:before{content:""}.codicon-circuit-board:before{content:""}.codicon-clear-all:before{content:""}.codicon-clippy:before{content:""}.codicon-close-all:before{content:""}.codicon-cloud-download:before{content:""}.codicon-cloud-upload:before{content:""}.codicon-code:before{content:""}.codicon-collapse-all:before{content:""}.codicon-color-mode:before{content:""}.codicon-comment-discussion:before{content:""}.codicon-credit-card:before{content:""}.codicon-dash:before{content:""}.codicon-dashboard:before{content:""}.codicon-database:before{content:""}.codicon-debug-continue:before{content:""}.codicon-debug-disconnect:before{content:""}.codicon-debug-pause:before{content:""}.codicon-debug-restart:before{content:""}.codicon-debug-start:before{content:""}.codicon-debug-step-into:before{content:""}.codicon-debug-step-out:before{content:""}.codicon-debug-step-over:before{content:""}.codicon-debug-stop:before{content:""}.codicon-debug:before{content:""}.codicon-device-camera-video:before{content:""}.codicon-device-camera:before{content:""}.codicon-device-mobile:before{content:""}.codicon-diff-added:before{content:""}.codicon-diff-ignored:before{content:""}.codicon-diff-modified:before{content:""}.codicon-diff-removed:before{content:""}.codicon-diff-renamed:before{content:""}.codicon-diff:before{content:""}.codicon-diff-sidebyside:before{content:""}.codicon-discard:before{content:""}.codicon-editor-layout:before{content:""}.codicon-empty-window:before{content:""}.codicon-exclude:before{content:""}.codicon-extensions:before{content:""}.codicon-eye-closed:before{content:""}.codicon-file-binary:before{content:""}.codicon-file-code:before{content:""}.codicon-file-media:before{content:""}.codicon-file-pdf:before{content:""}.codicon-file-submodule:before{content:""}.codicon-file-symlink-directory:before{content:""}.codicon-file-symlink-file:before{content:""}.codicon-file-zip:before{content:""}.codicon-files:before{content:""}.codicon-filter:before{content:""}.codicon-flame:before{content:""}.codicon-fold-down:before{content:""}.codicon-fold-up:before{content:""}.codicon-fold:before{content:""}.codicon-folder-active:before{content:""}.codicon-folder-opened:before{content:""}.codicon-gear:before{content:""}.codicon-gift:before{content:""}.codicon-gist-secret:before{content:""}.codicon-gist:before{content:""}.codicon-git-commit:before{content:""}.codicon-git-compare:before{content:""}.codicon-compare-changes:before{content:""}.codicon-git-merge:before{content:""}.codicon-github-action:before{content:""}.codicon-github-alt:before{content:""}.codicon-globe:before{content:""}.codicon-grabber:before{content:""}.codicon-graph:before{content:""}.codicon-gripper:before{content:""}.codicon-heart:before{content:""}.codicon-home:before{content:""}.codicon-horizontal-rule:before{content:""}.codicon-hubot:before{content:""}.codicon-inbox:before{content:""}.codicon-issue-reopened:before{content:""}.codicon-issues:before{content:""}.codicon-italic:before{content:""}.codicon-jersey:before{content:""}.codicon-json:before{content:""}.codicon-bracket:before{content:""}.codicon-kebab-vertical:before{content:""}.codicon-key:before{content:""}.codicon-law:before{content:""}.codicon-lightbulb-autofix:before{content:""}.codicon-link-external:before{content:""}.codicon-link:before{content:""}.codicon-list-ordered:before{content:""}.codicon-list-unordered:before{content:""}.codicon-live-share:before{content:""}.codicon-loading:before{content:""}.codicon-location:before{content:""}.codicon-mail-read:before{content:""}.codicon-mail:before{content:""}.codicon-markdown:before{content:""}.codicon-megaphone:before{content:""}.codicon-mention:before{content:""}.codicon-milestone:before{content:""}.codicon-git-pull-request-milestone:before{content:""}.codicon-mortar-board:before{content:""}.codicon-move:before{content:""}.codicon-multiple-windows:before{content:""}.codicon-mute:before{content:""}.codicon-no-newline:before{content:""}.codicon-note:before{content:""}.codicon-octoface:before{content:""}.codicon-open-preview:before{content:""}.codicon-package:before{content:""}.codicon-paintcan:before{content:""}.codicon-pin:before{content:""}.codicon-play:before{content:""}.codicon-run:before{content:""}.codicon-plug:before{content:""}.codicon-preserve-case:before{content:""}.codicon-preview:before{content:""}.codicon-project:before{content:""}.codicon-pulse:before{content:""}.codicon-question:before{content:""}.codicon-quote:before{content:""}.codicon-radio-tower:before{content:""}.codicon-reactions:before{content:""}.codicon-references:before{content:""}.codicon-refresh:before{content:""}.codicon-regex:before{content:""}.codicon-remote-explorer:before{content:""}.codicon-remote:before{content:""}.codicon-remove:before{content:""}.codicon-replace-all:before{content:""}.codicon-replace:before{content:""}.codicon-repo-clone:before{content:""}.codicon-repo-force-push:before{content:""}.codicon-repo-pull:before{content:""}.codicon-repo-push:before{content:""}.codicon-report:before{content:""}.codicon-request-changes:before{content:""}.codicon-rocket:before{content:""}.codicon-root-folder-opened:before{content:""}.codicon-root-folder:before{content:""}.codicon-rss:before{content:""}.codicon-ruby:before{content:""}.codicon-save-all:before{content:""}.codicon-save-as:before{content:""}.codicon-save:before{content:""}.codicon-screen-full:before{content:""}.codicon-screen-normal:before{content:""}.codicon-search-stop:before{content:""}.codicon-server:before{content:""}.codicon-settings-gear:before{content:""}.codicon-settings:before{content:""}.codicon-shield:before{content:""}.codicon-smiley:before{content:""}.codicon-sort-precedence:before{content:""}.codicon-split-horizontal:before{content:""}.codicon-split-vertical:before{content:""}.codicon-squirrel:before{content:""}.codicon-star-full:before{content:""}.codicon-star-half:before{content:""}.codicon-symbol-class:before{content:""}.codicon-symbol-color:before{content:""}.codicon-symbol-constant:before{content:""}.codicon-symbol-enum-member:before{content:""}.codicon-symbol-field:before{content:""}.codicon-symbol-file:before{content:""}.codicon-symbol-interface:before{content:""}.codicon-symbol-keyword:before{content:""}.codicon-symbol-misc:before{content:""}.codicon-symbol-operator:before{content:""}.codicon-symbol-property:before{content:""}.codicon-wrench:before{content:""}.codicon-wrench-subaction:before{content:""}.codicon-symbol-snippet:before{content:""}.codicon-tasklist:before{content:""}.codicon-telescope:before{content:""}.codicon-text-size:before{content:""}.codicon-three-bars:before{content:""}.codicon-thumbsdown:before{content:""}.codicon-thumbsup:before{content:""}.codicon-tools:before{content:""}.codicon-triangle-down:before{content:""}.codicon-triangle-left:before{content:""}.codicon-triangle-right:before{content:""}.codicon-triangle-up:before{content:""}.codicon-twitter:before{content:""}.codicon-unfold:before{content:""}.codicon-unlock:before{content:""}.codicon-unmute:before{content:""}.codicon-unverified:before{content:""}.codicon-verified:before{content:""}.codicon-versions:before{content:""}.codicon-vm-active:before{content:""}.codicon-vm-outline:before{content:""}.codicon-vm-running:before{content:""}.codicon-watch:before{content:""}.codicon-whitespace:before{content:""}.codicon-whole-word:before{content:""}.codicon-window:before{content:""}.codicon-word-wrap:before{content:""}.codicon-zoom-in:before{content:""}.codicon-zoom-out:before{content:""}.codicon-list-filter:before{content:""}.codicon-list-flat:before{content:""}.codicon-list-selection:before{content:""}.codicon-selection:before{content:""}.codicon-list-tree:before{content:""}.codicon-debug-breakpoint-function-unverified:before{content:""}.codicon-debug-breakpoint-function:before{content:""}.codicon-debug-breakpoint-function-disabled:before{content:""}.codicon-debug-stackframe-active:before{content:""}.codicon-circle-small-filled:before{content:""}.codicon-debug-stackframe-dot:before{content:""}.codicon-terminal-decoration-mark:before{content:""}.codicon-debug-stackframe:before{content:""}.codicon-debug-stackframe-focused:before{content:""}.codicon-debug-breakpoint-unsupported:before{content:""}.codicon-symbol-string:before{content:""}.codicon-debug-reverse-continue:before{content:""}.codicon-debug-step-back:before{content:""}.codicon-debug-restart-frame:before{content:""}.codicon-debug-alt:before{content:""}.codicon-call-incoming:before{content:""}.codicon-call-outgoing:before{content:""}.codicon-menu:before{content:""}.codicon-expand-all:before{content:""}.codicon-feedback:before{content:""}.codicon-git-pull-request-reviewer:before{content:""}.codicon-group-by-ref-type:before{content:""}.codicon-ungroup-by-ref-type:before{content:""}.codicon-account:before{content:""}.codicon-git-pull-request-assignee:before{content:""}.codicon-bell-dot:before{content:""}.codicon-debug-console:before{content:""}.codicon-library:before{content:""}.codicon-output:before{content:""}.codicon-run-all:before{content:""}.codicon-sync-ignored:before{content:""}.codicon-pinned:before{content:""}.codicon-github-inverted:before{content:""}.codicon-server-process:before{content:""}.codicon-server-environment:before{content:""}.codicon-pass:before{content:""}.codicon-issue-closed:before{content:""}.codicon-stop-circle:before{content:""}.codicon-play-circle:before{content:""}.codicon-record:before{content:""}.codicon-debug-alt-small:before{content:""}.codicon-vm-connect:before{content:""}.codicon-cloud:before{content:""}.codicon-merge:before{content:""}.codicon-export:before{content:""}.codicon-graph-left:before{content:""}.codicon-magnet:before{content:""}.codicon-notebook:before{content:""}.codicon-redo:before{content:""}.codicon-check-all:before{content:""}.codicon-pinned-dirty:before{content:""}.codicon-pass-filled:before{content:""}.codicon-circle-large-filled:before{content:""}.codicon-circle-large:before{content:""}.codicon-circle-large-outline:before{content:""}.codicon-combine:before{content:""}.codicon-gather:before{content:""}.codicon-table:before{content:""}.codicon-variable-group:before{content:""}.codicon-type-hierarchy:before{content:""}.codicon-type-hierarchy-sub:before{content:""}.codicon-type-hierarchy-super:before{content:""}.codicon-git-pull-request-create:before{content:""}.codicon-run-above:before{content:""}.codicon-run-below:before{content:""}.codicon-notebook-template:before{content:""}.codicon-debug-rerun:before{content:""}.codicon-workspace-trusted:before{content:""}.codicon-workspace-untrusted:before{content:""}.codicon-workspace-unknown:before{content:""}.codicon-terminal-cmd:before{content:""}.codicon-terminal-debian:before{content:""}.codicon-terminal-linux:before{content:""}.codicon-terminal-powershell:before{content:""}.codicon-terminal-tmux:before{content:""}.codicon-terminal-ubuntu:before{content:""}.codicon-terminal-bash:before{content:""}.codicon-arrow-swap:before{content:""}.codicon-copy:before{content:""}.codicon-person-add:before{content:""}.codicon-filter-filled:before{content:""}.codicon-wand:before{content:""}.codicon-debug-line-by-line:before{content:""}.codicon-inspect:before{content:""}.codicon-layers:before{content:""}.codicon-layers-dot:before{content:""}.codicon-layers-active:before{content:""}.codicon-compass:before{content:""}.codicon-compass-dot:before{content:""}.codicon-compass-active:before{content:""}.codicon-azure:before{content:""}.codicon-issue-draft:before{content:""}.codicon-git-pull-request-closed:before{content:""}.codicon-git-pull-request-draft:before{content:""}.codicon-debug-all:before{content:""}.codicon-debug-coverage:before{content:""}.codicon-run-errors:before{content:""}.codicon-folder-library:before{content:""}.codicon-debug-continue-small:before{content:""}.codicon-beaker-stop:before{content:""}.codicon-graph-line:before{content:""}.codicon-graph-scatter:before{content:""}.codicon-pie-chart:before{content:""}.codicon-bracket-dot:before{content:""}.codicon-bracket-error:before{content:""}.codicon-lock-small:before{content:""}.codicon-azure-devops:before{content:""}.codicon-verified-filled:before{content:""}.codicon-newline:before{content:""}.codicon-layout:before{content:""}.codicon-layout-activitybar-left:before{content:""}.codicon-layout-activitybar-right:before{content:""}.codicon-layout-panel-left:before{content:""}.codicon-layout-panel-center:before{content:""}.codicon-layout-panel-justify:before{content:""}.codicon-layout-panel-right:before{content:""}.codicon-layout-panel:before{content:""}.codicon-layout-sidebar-left:before{content:""}.codicon-layout-sidebar-right:before{content:""}.codicon-layout-statusbar:before{content:""}.codicon-layout-menubar:before{content:""}.codicon-layout-centered:before{content:""}.codicon-target:before{content:""}.codicon-indent:before{content:""}.codicon-record-small:before{content:""}.codicon-error-small:before{content:""}.codicon-terminal-decoration-error:before{content:""}.codicon-arrow-circle-down:before{content:""}.codicon-arrow-circle-left:before{content:""}.codicon-arrow-circle-right:before{content:""}.codicon-arrow-circle-up:before{content:""}.codicon-layout-sidebar-right-off:before{content:""}.codicon-layout-panel-off:before{content:""}.codicon-layout-sidebar-left-off:before{content:""}.codicon-blank:before{content:""}.codicon-heart-filled:before{content:""}.codicon-map:before{content:""}.codicon-map-horizontal:before{content:""}.codicon-fold-horizontal:before{content:""}.codicon-map-filled:before{content:""}.codicon-map-horizontal-filled:before{content:""}.codicon-fold-horizontal-filled:before{content:""}.codicon-circle-small:before{content:""}.codicon-bell-slash:before{content:""}.codicon-bell-slash-dot:before{content:""}.codicon-comment-unresolved:before{content:""}.codicon-git-pull-request-go-to-changes:before{content:""}.codicon-git-pull-request-new-changes:before{content:""}.codicon-search-fuzzy:before{content:""}.codicon-comment-draft:before{content:""}.codicon-send:before{content:""}.codicon-sparkle:before{content:""}.codicon-insert:before{content:""}.codicon-mic:before{content:""}.codicon-thumbsdown-filled:before{content:""}.codicon-thumbsup-filled:before{content:""}.codicon-coffee:before{content:""}.codicon-snake:before{content:""}.codicon-game:before{content:""}.codicon-vr:before{content:""}.codicon-chip:before{content:""}.codicon-piano:before{content:""}.codicon-music:before{content:""}.codicon-mic-filled:before{content:""}.codicon-repo-fetch:before{content:""}.codicon-copilot:before{content:""}.codicon-lightbulb-sparkle:before{content:""}.codicon-robot:before{content:""}.codicon-sparkle-filled:before{content:""}.codicon-diff-single:before{content:""}.codicon-diff-multiple:before{content:""}.codicon-surround-with:before{content:""}.codicon-share:before{content:""}.codicon-git-stash:before{content:""}.codicon-git-stash-apply:before{content:""}.codicon-git-stash-pop:before{content:""}.codicon-vscode:before{content:""}.codicon-vscode-insiders:before{content:""}.codicon-code-oss:before{content:""}.codicon-run-coverage:before{content:""}.codicon-run-all-coverage:before{content:""}.codicon-coverage:before{content:""}.codicon-github-project:before{content:""}.codicon-map-vertical:before{content:""}.codicon-fold-vertical:before{content:""}.codicon-map-vertical-filled:before{content:""}.codicon-fold-vertical-filled:before{content:""}.codicon-go-to-search:before{content:""}.codicon-percentage:before{content:""}.codicon-sort-percentage:before{content:""}.codicon-attach:before{content:""}.codicon-go-to-editing-session:before{content:""}.codicon-edit-session:before{content:""}.codicon-code-review:before{content:""}.codicon-copilot-warning:before{content:""}.codicon-python:before{content:""}.codicon-copilot-large:before{content:""}.codicon-copilot-warning-large:before{content:""}.codicon-keyboard-tab:before{content:""}.codicon-copilot-blocked:before{content:""}.codicon-copilot-not-connected:before{content:""}.codicon-flag:before{content:""}.codicon-lightbulb-empty:before{content:""}.codicon-symbol-method-arrow:before{content:""}.codicon-copilot-unavailable:before{content:""}.codicon-repo-pinned:before{content:""}.codicon-keyboard-tab-above:before{content:""}.codicon-keyboard-tab-below:before{content:""}.codicon-git-pull-request-done:before{content:""}.codicon-mcp:before{content:""}.codicon-extensions-large:before{content:""}.codicon-layout-panel-dock:before{content:""}.codicon-layout-sidebar-left-dock:before{content:""}.codicon-layout-sidebar-right-dock:before{content:""}.codicon-copilot-in-progress:before{content:""}.codicon-copilot-error:before{content:""}.codicon-copilot-success:before{content:""}.codicon-chat-sparkle:before{content:""}.codicon-search-sparkle:before{content:""}.codicon-edit-sparkle:before{content:""}.codicon-copilot-snooze:before{content:""}.codicon-send-to-remote-agent:before{content:""}.codicon-comment-discussion-sparkle:before{content:""}.codicon-chat-sparkle-warning:before{content:""}.codicon-chat-sparkle-error:before{content:""}.codicon-collection:before{content:""}.codicon-new-collection:before{content:""}.codicon-thinking:before{content:""}.codicon-build:before{content:""}.codicon-comment-discussion-quote:before{content:""}.codicon-cursor:before{content:""}.codicon-eraser:before{content:""}.codicon-file-text:before{content:""}.codicon-quotes:before{content:""}.codicon-rename:before{content:""}.codicon-run-with-deps:before{content:""}.codicon-debug-connected:before{content:""}.codicon-strikethrough:before{content:""}.codicon-open-in-product:before{content:""}.codicon-index-zero:before{content:""}.codicon-agent:before{content:""}.codicon-edit-code:before{content:""}.codicon-repo-selected:before{content:""}.codicon-skip:before{content:""}.codicon-merge-into:before{content:""}.codicon-git-branch-changes:before{content:""}.codicon-git-branch-staged-changes:before{content:""}.codicon-git-branch-conflicts:before{content:""}.codicon-git-branch:before{content:""}.codicon-git-branch-create:before{content:""}.codicon-git-branch-delete:before{content:""}.codicon-search-large:before{content:""}.codicon-terminal-git-bash:before{content:""}.codicon-window-active:before{content:""}.codicon-forward:before{content:""}.codicon-download:before{content:""}.codicon-clockface:before{content:""}.codicon-unarchive:before{content:""}.codicon-session-in-progress:before{content:""}.codicon-collection-small:before{content:""}.codicon-vm-small:before{content:""}.codicon-cloud-small:before{content:""}.codicon-git-fetch:before{content:""}.codicon-vm-pending:before{content:""}.fa,.fa-brands,.fa-classic,.fa-regular,.fa-solid,.fab,.far,.fas{--_fa-family:var(--fa-family,var(--fa-style-family,"Font Awesome 7 Free"));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:var(--fa-display,inline-block);font-family:var(--_fa-family);font-feature-settings:normal;font-style:normal;font-synthesis:none;font-variant:normal;font-weight:var(--fa-style,900);line-height:1;text-align:center;text-rendering:auto;width:var(--fa-width,1.25em)}:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before{content:var(--fa)/""}@supports not (content:""/""){:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before{content:var(--fa)}}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-ul{list-style-type:none;margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0}.fa-ul>li{position:relative}.fa-li{inset-inline-start:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.0625em) var(--fa-border-style,solid) var(--fa-border-color,#eee);box-sizing:var(--fa-border-box-sizing,content-box);padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.fa-pull-end,.fa-pull-right{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media(prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation:none!important;transition:none!important}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{--fa-width:100%;inset:0;position:absolute;text-align:center;width:var(--fa-width);z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-0{--fa:"0"}.fa-1{--fa:"1"}.fa-2{--fa:"2"}.fa-3{--fa:"3"}.fa-4{--fa:"4"}.fa-5{--fa:"5"}.fa-6{--fa:"6"}.fa-7{--fa:"7"}.fa-8{--fa:"8"}.fa-9{--fa:"9"}.fa-exclamation{--fa:"!"}.fa-hashtag{--fa:"#"}.fa-dollar,.fa-dollar-sign,.fa-usd{--fa:"$"}.fa-percent,.fa-percentage{--fa:"%"}.fa-asterisk{--fa:"*"}.fa-add,.fa-plus{--fa:"+"}.fa-less-than{--fa:"<"}.fa-equals{--fa:"="}.fa-greater-than{--fa:">"}.fa-question{--fa:"?"}.fa-at{--fa:"@"}.fa-a{--fa:"A"}.fa-b{--fa:"B"}.fa-c{--fa:"C"}.fa-d{--fa:"D"}.fa-e{--fa:"E"}.fa-f{--fa:"F"}.fa-g{--fa:"G"}.fa-h{--fa:"H"}.fa-i{--fa:"I"}.fa-j{--fa:"J"}.fa-k{--fa:"K"}.fa-l{--fa:"L"}.fa-m{--fa:"M"}.fa-n{--fa:"N"}.fa-o{--fa:"O"}.fa-p{--fa:"P"}.fa-q{--fa:"Q"}.fa-r{--fa:"R"}.fa-s{--fa:"S"}.fa-t{--fa:"T"}.fa-u{--fa:"U"}.fa-v{--fa:"V"}.fa-w{--fa:"W"}.fa-x{--fa:"X"}.fa-y{--fa:"Y"}.fa-z{--fa:"Z"}.fa-faucet{--fa:""}.fa-faucet-drip{--fa:""}.fa-house-chimney-window{--fa:""}.fa-house-signal{--fa:""}.fa-temperature-arrow-down,.fa-temperature-down{--fa:""}.fa-temperature-arrow-up,.fa-temperature-up{--fa:""}.fa-trailer{--fa:""}.fa-bacteria{--fa:""}.fa-bacterium{--fa:""}.fa-box-tissue{--fa:""}.fa-hand-holding-medical{--fa:""}.fa-hand-sparkles{--fa:""}.fa-hands-bubbles,.fa-hands-wash{--fa:""}.fa-handshake-alt-slash,.fa-handshake-simple-slash,.fa-handshake-slash{--fa:""}.fa-head-side-cough{--fa:""}.fa-head-side-cough-slash{--fa:""}.fa-head-side-mask{--fa:""}.fa-head-side-virus{--fa:""}.fa-house-chimney-user{--fa:""}.fa-house-laptop,.fa-laptop-house{--fa:""}.fa-lungs-virus{--fa:""}.fa-people-arrows,.fa-people-arrows-left-right{--fa:""}.fa-plane-slash{--fa:""}.fa-pump-medical{--fa:""}.fa-pump-soap{--fa:""}.fa-shield-virus{--fa:""}.fa-sink{--fa:""}.fa-soap{--fa:""}.fa-stopwatch-20{--fa:""}.fa-shop-slash,.fa-store-alt-slash{--fa:""}.fa-store-slash{--fa:""}.fa-toilet-paper-slash{--fa:""}.fa-users-slash{--fa:""}.fa-virus{--fa:""}.fa-virus-slash{--fa:""}.fa-viruses{--fa:""}.fa-vest{--fa:""}.fa-vest-patches{--fa:""}.fa-arrow-trend-down{--fa:""}.fa-arrow-trend-up{--fa:""}.fa-arrow-up-from-bracket{--fa:""}.fa-austral-sign{--fa:""}.fa-baht-sign{--fa:""}.fa-bitcoin-sign{--fa:""}.fa-bolt-lightning{--fa:""}.fa-book-bookmark{--fa:""}.fa-camera-rotate{--fa:""}.fa-cedi-sign{--fa:""}.fa-chart-column{--fa:""}.fa-chart-gantt{--fa:""}.fa-clapperboard{--fa:""}.fa-clover{--fa:""}.fa-code-compare{--fa:""}.fa-code-fork{--fa:""}.fa-code-pull-request{--fa:""}.fa-colon-sign{--fa:""}.fa-cruzeiro-sign{--fa:""}.fa-display{--fa:""}.fa-dong-sign{--fa:""}.fa-elevator{--fa:""}.fa-filter-circle-xmark{--fa:""}.fa-florin-sign{--fa:""}.fa-folder-closed{--fa:""}.fa-franc-sign{--fa:""}.fa-guarani-sign{--fa:""}.fa-gun{--fa:""}.fa-hands-clapping{--fa:""}.fa-home-user,.fa-house-user{--fa:""}.fa-indian-rupee,.fa-indian-rupee-sign,.fa-inr{--fa:""}.fa-kip-sign{--fa:""}.fa-lari-sign{--fa:""}.fa-litecoin-sign{--fa:""}.fa-manat-sign{--fa:""}.fa-mask-face{--fa:""}.fa-mill-sign{--fa:""}.fa-money-bills{--fa:""}.fa-naira-sign{--fa:""}.fa-notdef{--fa:""}.fa-panorama{--fa:""}.fa-peseta-sign{--fa:""}.fa-peso-sign{--fa:""}.fa-plane-up{--fa:""}.fa-rupiah-sign{--fa:""}.fa-stairs{--fa:""}.fa-timeline{--fa:""}.fa-truck-front{--fa:""}.fa-try,.fa-turkish-lira,.fa-turkish-lira-sign{--fa:""}.fa-vault{--fa:""}.fa-magic-wand-sparkles,.fa-wand-magic-sparkles{--fa:""}.fa-wheat-alt,.fa-wheat-awn{--fa:""}.fa-wheelchair-alt,.fa-wheelchair-move{--fa:""}.fa-bangladeshi-taka-sign{--fa:""}.fa-bowl-rice{--fa:""}.fa-person-pregnant{--fa:""}.fa-home-lg,.fa-house-chimney{--fa:""}.fa-house-crack{--fa:""}.fa-house-medical{--fa:""}.fa-cent-sign{--fa:""}.fa-plus-minus{--fa:""}.fa-sailboat{--fa:""}.fa-section{--fa:""}.fa-shrimp{--fa:""}.fa-brazilian-real-sign{--fa:""}.fa-chart-simple{--fa:""}.fa-diagram-next{--fa:""}.fa-diagram-predecessor{--fa:""}.fa-diagram-successor{--fa:""}.fa-earth-oceania,.fa-globe-oceania{--fa:""}.fa-bug-slash{--fa:""}.fa-file-circle-plus{--fa:""}.fa-shop-lock{--fa:""}.fa-virus-covid{--fa:""}.fa-virus-covid-slash{--fa:""}.fa-anchor-circle-check{--fa:""}.fa-anchor-circle-exclamation{--fa:""}.fa-anchor-circle-xmark{--fa:""}.fa-anchor-lock{--fa:""}.fa-arrow-down-up-across-line{--fa:""}.fa-arrow-down-up-lock{--fa:""}.fa-arrow-right-to-city{--fa:""}.fa-arrow-up-from-ground-water{--fa:""}.fa-arrow-up-from-water-pump{--fa:""}.fa-arrow-up-right-dots{--fa:""}.fa-arrows-down-to-line{--fa:""}.fa-arrows-down-to-people{--fa:""}.fa-arrows-left-right-to-line{--fa:""}.fa-arrows-spin{--fa:""}.fa-arrows-split-up-and-left{--fa:""}.fa-arrows-to-circle{--fa:""}.fa-arrows-to-dot{--fa:""}.fa-arrows-to-eye{--fa:""}.fa-arrows-turn-right{--fa:""}.fa-arrows-turn-to-dots{--fa:""}.fa-arrows-up-to-line{--fa:""}.fa-bore-hole{--fa:""}.fa-bottle-droplet{--fa:""}.fa-bottle-water{--fa:""}.fa-bowl-food{--fa:""}.fa-boxes-packing{--fa:""}.fa-bridge{--fa:""}.fa-bridge-circle-check{--fa:""}.fa-bridge-circle-exclamation{--fa:""}.fa-bridge-circle-xmark{--fa:""}.fa-bridge-lock{--fa:""}.fa-bridge-water{--fa:""}.fa-bucket{--fa:""}.fa-bugs{--fa:""}.fa-building-circle-arrow-right{--fa:""}.fa-building-circle-check{--fa:""}.fa-building-circle-exclamation{--fa:""}.fa-building-circle-xmark{--fa:""}.fa-building-flag{--fa:""}.fa-building-lock{--fa:""}.fa-building-ngo{--fa:""}.fa-building-shield{--fa:""}.fa-building-un{--fa:""}.fa-building-user{--fa:""}.fa-building-wheat{--fa:""}.fa-burst{--fa:""}.fa-car-on{--fa:""}.fa-car-tunnel{--fa:""}.fa-child-combatant,.fa-child-rifle{--fa:""}.fa-children{--fa:""}.fa-circle-nodes{--fa:""}.fa-clipboard-question{--fa:""}.fa-cloud-showers-water{--fa:""}.fa-computer{--fa:""}.fa-cubes-stacked{--fa:""}.fa-envelope-circle-check{--fa:""}.fa-explosion{--fa:""}.fa-ferry{--fa:""}.fa-file-circle-exclamation{--fa:""}.fa-file-circle-minus{--fa:""}.fa-file-circle-question{--fa:""}.fa-file-shield{--fa:""}.fa-fire-burner{--fa:""}.fa-fish-fins{--fa:""}.fa-flask-vial{--fa:""}.fa-glass-water{--fa:""}.fa-glass-water-droplet{--fa:""}.fa-group-arrows-rotate{--fa:""}.fa-hand-holding-hand{--fa:""}.fa-handcuffs{--fa:""}.fa-hands-bound{--fa:""}.fa-hands-holding-child{--fa:""}.fa-hands-holding-circle{--fa:""}.fa-heart-circle-bolt{--fa:""}.fa-heart-circle-check{--fa:""}.fa-heart-circle-exclamation{--fa:""}.fa-heart-circle-minus{--fa:""}.fa-heart-circle-plus{--fa:""}.fa-heart-circle-xmark{--fa:""}.fa-helicopter-symbol{--fa:""}.fa-helmet-un{--fa:""}.fa-hill-avalanche{--fa:""}.fa-hill-rockslide{--fa:""}.fa-house-circle-check{--fa:""}.fa-house-circle-exclamation{--fa:""}.fa-house-circle-xmark{--fa:""}.fa-house-fire{--fa:""}.fa-house-flag{--fa:""}.fa-house-flood-water{--fa:""}.fa-house-flood-water-circle-arrow-right{--fa:""}.fa-house-lock{--fa:""}.fa-house-medical-circle-check{--fa:""}.fa-house-medical-circle-exclamation{--fa:""}.fa-house-medical-circle-xmark{--fa:""}.fa-house-medical-flag{--fa:""}.fa-house-tsunami{--fa:""}.fa-jar{--fa:""}.fa-jar-wheat{--fa:""}.fa-jet-fighter-up{--fa:""}.fa-jug-detergent{--fa:""}.fa-kitchen-set{--fa:""}.fa-land-mine-on{--fa:""}.fa-landmark-flag{--fa:""}.fa-laptop-file{--fa:""}.fa-lines-leaning{--fa:""}.fa-location-pin-lock{--fa:""}.fa-locust{--fa:""}.fa-magnifying-glass-arrow-right{--fa:""}.fa-magnifying-glass-chart{--fa:""}.fa-mars-and-venus-burst{--fa:""}.fa-mask-ventilator{--fa:""}.fa-mattress-pillow{--fa:""}.fa-mobile-retro{--fa:""}.fa-money-bill-transfer{--fa:""}.fa-money-bill-trend-up{--fa:""}.fa-money-bill-wheat{--fa:""}.fa-mosquito{--fa:""}.fa-mosquito-net{--fa:""}.fa-mound{--fa:""}.fa-mountain-city{--fa:""}.fa-mountain-sun{--fa:""}.fa-oil-well{--fa:""}.fa-people-group{--fa:""}.fa-people-line{--fa:""}.fa-people-pulling{--fa:""}.fa-people-robbery{--fa:""}.fa-people-roof{--fa:""}.fa-person-arrow-down-to-line{--fa:""}.fa-person-arrow-up-from-line{--fa:""}.fa-person-breastfeeding{--fa:""}.fa-person-burst{--fa:""}.fa-person-cane{--fa:""}.fa-person-chalkboard{--fa:""}.fa-person-circle-check{--fa:""}.fa-person-circle-exclamation{--fa:""}.fa-person-circle-minus{--fa:""}.fa-person-circle-plus{--fa:""}.fa-person-circle-question{--fa:""}.fa-person-circle-xmark{--fa:""}.fa-person-dress-burst{--fa:""}.fa-person-drowning{--fa:""}.fa-person-falling{--fa:""}.fa-person-falling-burst{--fa:""}.fa-person-half-dress{--fa:""}.fa-person-harassing{--fa:""}.fa-person-military-pointing{--fa:""}.fa-person-military-rifle{--fa:""}.fa-person-military-to-person{--fa:""}.fa-person-rays{--fa:""}.fa-person-rifle{--fa:""}.fa-person-shelter{--fa:""}.fa-person-walking-arrow-loop-left{--fa:""}.fa-person-walking-arrow-right{--fa:""}.fa-person-walking-dashed-line-arrow-right{--fa:""}.fa-person-walking-luggage{--fa:""}.fa-plane-circle-check{--fa:""}.fa-plane-circle-exclamation{--fa:""}.fa-plane-circle-xmark{--fa:""}.fa-plane-lock{--fa:""}.fa-plate-wheat{--fa:""}.fa-plug-circle-bolt{--fa:""}.fa-plug-circle-check{--fa:""}.fa-plug-circle-exclamation{--fa:""}.fa-plug-circle-minus{--fa:""}.fa-plug-circle-plus{--fa:""}.fa-plug-circle-xmark{--fa:""}.fa-ranking-star{--fa:""}.fa-road-barrier{--fa:""}.fa-road-bridge{--fa:""}.fa-road-circle-check{--fa:""}.fa-road-circle-exclamation{--fa:""}.fa-road-circle-xmark{--fa:""}.fa-road-lock{--fa:""}.fa-road-spikes{--fa:""}.fa-rug{--fa:""}.fa-sack-xmark{--fa:""}.fa-school-circle-check{--fa:""}.fa-school-circle-exclamation{--fa:""}.fa-school-circle-xmark{--fa:""}.fa-school-flag{--fa:""}.fa-school-lock{--fa:""}.fa-sheet-plastic{--fa:""}.fa-shield-cat{--fa:""}.fa-shield-dog{--fa:""}.fa-shield-heart{--fa:""}.fa-square-nfi{--fa:""}.fa-square-person-confined{--fa:""}.fa-square-virus{--fa:""}.fa-rod-asclepius,.fa-rod-snake,.fa-staff-aesculapius,.fa-staff-snake{--fa:""}.fa-sun-plant-wilt{--fa:""}.fa-tarp{--fa:""}.fa-tarp-droplet{--fa:""}.fa-tent{--fa:""}.fa-tent-arrow-down-to-line{--fa:""}.fa-tent-arrow-left-right{--fa:""}.fa-tent-arrow-turn-left{--fa:""}.fa-tent-arrows-down{--fa:""}.fa-tents{--fa:""}.fa-toilet-portable{--fa:""}.fa-toilets-portable{--fa:""}.fa-tower-cell{--fa:""}.fa-tower-observation{--fa:""}.fa-tree-city{--fa:""}.fa-trowel{--fa:""}.fa-trowel-bricks{--fa:""}.fa-truck-arrow-right{--fa:""}.fa-truck-droplet{--fa:""}.fa-truck-field{--fa:""}.fa-truck-field-un{--fa:""}.fa-truck-plane{--fa:""}.fa-users-between-lines{--fa:""}.fa-users-line{--fa:""}.fa-users-rays{--fa:""}.fa-users-rectangle{--fa:""}.fa-users-viewfinder{--fa:""}.fa-vial-circle-check{--fa:""}.fa-vial-virus{--fa:""}.fa-wheat-awn-circle-exclamation{--fa:""}.fa-worm{--fa:""}.fa-xmarks-lines{--fa:""}.fa-child-dress{--fa:""}.fa-child-reaching{--fa:""}.fa-file-circle-check{--fa:""}.fa-file-circle-xmark{--fa:""}.fa-person-through-window{--fa:""}.fa-plant-wilt{--fa:""}.fa-stapler{--fa:""}.fa-train-tram{--fa:""}.fa-table-cells-column-lock{--fa:""}.fa-table-cells-row-lock{--fa:""}.fa-thumb-tack-slash,.fa-thumbtack-slash{--fa:""}.fa-table-cells-row-unlock{--fa:""}.fa-chart-diagram{--fa:""}.fa-comment-nodes{--fa:""}.fa-file-fragment{--fa:""}.fa-file-half-dashed{--fa:""}.fa-hexagon-nodes{--fa:""}.fa-hexagon-nodes-bolt{--fa:""}.fa-square-binary{--fa:""}.fa-pentagon{--fa:""}.fa-non-binary{--fa:""}.fa-spiral{--fa:""}.fa-mobile-vibrate{--fa:""}.fa-single-quote-left{--fa:""}.fa-single-quote-right{--fa:""}.fa-bus-side{--fa:""}.fa-heptagon,.fa-septagon{--fa:""}.fa-glass-martini,.fa-martini-glass-empty{--fa:""}.fa-music{--fa:""}.fa-magnifying-glass,.fa-search{--fa:""}.fa-heart{--fa:""}.fa-star{--fa:""}.fa-user,.fa-user-alt,.fa-user-large{--fa:""}.fa-film,.fa-film-alt,.fa-film-simple{--fa:""}.fa-table-cells-large,.fa-th-large{--fa:""}.fa-table-cells,.fa-th{--fa:""}.fa-table-list,.fa-th-list{--fa:""}.fa-check{--fa:""}.fa-close,.fa-multiply,.fa-remove,.fa-times,.fa-xmark{--fa:""}.fa-magnifying-glass-plus,.fa-search-plus{--fa:""}.fa-magnifying-glass-minus,.fa-search-minus{--fa:""}.fa-power-off{--fa:""}.fa-signal,.fa-signal-5,.fa-signal-perfect{--fa:""}.fa-cog,.fa-gear{--fa:""}.fa-home,.fa-home-alt,.fa-home-lg-alt,.fa-house{--fa:""}.fa-clock,.fa-clock-four{--fa:""}.fa-road{--fa:""}.fa-download{--fa:""}.fa-inbox{--fa:""}.fa-arrow-right-rotate,.fa-arrow-rotate-forward,.fa-arrow-rotate-right,.fa-redo{--fa:""}.fa-arrows-rotate,.fa-refresh,.fa-sync{--fa:""}.fa-list-alt,.fa-rectangle-list{--fa:""}.fa-lock{--fa:""}.fa-flag{--fa:""}.fa-headphones,.fa-headphones-alt,.fa-headphones-simple{--fa:""}.fa-volume-off{--fa:""}.fa-volume-down,.fa-volume-low{--fa:""}.fa-volume-high,.fa-volume-up{--fa:""}.fa-qrcode{--fa:""}.fa-barcode{--fa:""}.fa-tag{--fa:""}.fa-tags{--fa:""}.fa-book{--fa:""}.fa-bookmark{--fa:""}.fa-print{--fa:""}.fa-camera,.fa-camera-alt{--fa:""}.fa-font{--fa:""}.fa-bold{--fa:""}.fa-italic{--fa:""}.fa-text-height{--fa:""}.fa-text-width{--fa:""}.fa-align-left{--fa:""}.fa-align-center{--fa:""}.fa-align-right{--fa:""}.fa-align-justify{--fa:""}.fa-list,.fa-list-squares{--fa:""}.fa-dedent,.fa-outdent{--fa:""}.fa-indent{--fa:""}.fa-video,.fa-video-camera{--fa:""}.fa-image{--fa:""}.fa-location-pin,.fa-map-marker{--fa:""}.fa-adjust,.fa-circle-half-stroke{--fa:""}.fa-droplet,.fa-tint{--fa:""}.fa-edit,.fa-pen-to-square{--fa:""}.fa-arrows,.fa-arrows-up-down-left-right{--fa:""}.fa-backward-step,.fa-step-backward{--fa:""}.fa-backward-fast,.fa-fast-backward{--fa:""}.fa-backward{--fa:""}.fa-play{--fa:""}.fa-pause{--fa:""}.fa-stop{--fa:""}.fa-forward{--fa:""}.fa-fast-forward,.fa-forward-fast{--fa:""}.fa-forward-step,.fa-step-forward{--fa:""}.fa-eject{--fa:""}.fa-chevron-left{--fa:""}.fa-chevron-right{--fa:""}.fa-circle-plus,.fa-plus-circle{--fa:""}.fa-circle-minus,.fa-minus-circle{--fa:""}.fa-circle-xmark,.fa-times-circle,.fa-xmark-circle{--fa:""}.fa-check-circle,.fa-circle-check{--fa:""}.fa-circle-question,.fa-question-circle{--fa:""}.fa-circle-info,.fa-info-circle{--fa:""}.fa-crosshairs{--fa:""}.fa-ban,.fa-cancel{--fa:""}.fa-arrow-left{--fa:""}.fa-arrow-right{--fa:""}.fa-arrow-up{--fa:""}.fa-arrow-down{--fa:""}.fa-mail-forward,.fa-share{--fa:""}.fa-expand{--fa:""}.fa-compress{--fa:""}.fa-minus,.fa-subtract{--fa:""}.fa-circle-exclamation,.fa-exclamation-circle{--fa:""}.fa-gift{--fa:""}.fa-leaf{--fa:""}.fa-fire{--fa:""}.fa-eye{--fa:""}.fa-eye-slash{--fa:""}.fa-exclamation-triangle,.fa-triangle-exclamation,.fa-warning{--fa:""}.fa-plane{--fa:""}.fa-calendar-alt,.fa-calendar-days{--fa:""}.fa-random,.fa-shuffle{--fa:""}.fa-comment{--fa:""}.fa-magnet{--fa:""}.fa-chevron-up{--fa:""}.fa-chevron-down{--fa:""}.fa-retweet{--fa:""}.fa-cart-shopping,.fa-shopping-cart{--fa:""}.fa-folder,.fa-folder-blank{--fa:""}.fa-folder-open{--fa:""}.fa-arrows-up-down,.fa-arrows-v{--fa:""}.fa-arrows-h,.fa-arrows-left-right{--fa:""}.fa-bar-chart,.fa-chart-bar{--fa:""}.fa-camera-retro{--fa:""}.fa-key{--fa:""}.fa-cogs,.fa-gears{--fa:""}.fa-comments{--fa:""}.fa-star-half{--fa:""}.fa-arrow-right-from-bracket,.fa-sign-out{--fa:""}.fa-thumb-tack,.fa-thumbtack{--fa:""}.fa-arrow-up-right-from-square,.fa-external-link{--fa:""}.fa-arrow-right-to-bracket,.fa-sign-in{--fa:""}.fa-trophy{--fa:""}.fa-upload{--fa:""}.fa-lemon{--fa:""}.fa-phone{--fa:""}.fa-phone-square,.fa-square-phone{--fa:""}.fa-unlock{--fa:""}.fa-credit-card,.fa-credit-card-alt{--fa:""}.fa-feed,.fa-rss{--fa:""}.fa-hard-drive,.fa-hdd{--fa:""}.fa-bullhorn{--fa:""}.fa-certificate{--fa:""}.fa-hand-point-right{--fa:""}.fa-hand-point-left{--fa:""}.fa-hand-point-up{--fa:""}.fa-hand-point-down{--fa:""}.fa-arrow-circle-left,.fa-circle-arrow-left{--fa:""}.fa-arrow-circle-right,.fa-circle-arrow-right{--fa:""}.fa-arrow-circle-up,.fa-circle-arrow-up{--fa:""}.fa-arrow-circle-down,.fa-circle-arrow-down{--fa:""}.fa-globe{--fa:""}.fa-wrench{--fa:""}.fa-list-check,.fa-tasks{--fa:""}.fa-filter{--fa:""}.fa-briefcase{--fa:""}.fa-arrows-alt,.fa-up-down-left-right{--fa:""}.fa-users{--fa:""}.fa-chain,.fa-link{--fa:""}.fa-cloud{--fa:""}.fa-flask{--fa:""}.fa-cut,.fa-scissors{--fa:""}.fa-copy{--fa:""}.fa-paperclip{--fa:""}.fa-floppy-disk,.fa-save{--fa:""}.fa-square{--fa:""}.fa-bars,.fa-navicon{--fa:""}.fa-list-dots,.fa-list-ul{--fa:""}.fa-list-1-2,.fa-list-numeric,.fa-list-ol{--fa:""}.fa-strikethrough{--fa:""}.fa-underline{--fa:""}.fa-table{--fa:""}.fa-magic,.fa-wand-magic{--fa:""}.fa-truck{--fa:""}.fa-money-bill{--fa:""}.fa-caret-down{--fa:""}.fa-caret-up{--fa:""}.fa-caret-left{--fa:""}.fa-caret-right{--fa:""}.fa-columns,.fa-table-columns{--fa:""}.fa-sort,.fa-unsorted{--fa:""}.fa-sort-desc,.fa-sort-down{--fa:""}.fa-sort-asc,.fa-sort-up{--fa:""}.fa-envelope{--fa:""}.fa-arrow-left-rotate,.fa-arrow-rotate-back,.fa-arrow-rotate-backward,.fa-arrow-rotate-left,.fa-undo{--fa:""}.fa-gavel,.fa-legal{--fa:""}.fa-bolt,.fa-zap{--fa:""}.fa-sitemap{--fa:""}.fa-umbrella{--fa:""}.fa-file-clipboard,.fa-paste{--fa:""}.fa-lightbulb{--fa:""}.fa-arrow-right-arrow-left,.fa-exchange{--fa:""}.fa-cloud-arrow-down,.fa-cloud-download,.fa-cloud-download-alt{--fa:""}.fa-cloud-arrow-up,.fa-cloud-upload,.fa-cloud-upload-alt{--fa:""}.fa-user-doctor,.fa-user-md{--fa:""}.fa-stethoscope{--fa:""}.fa-suitcase{--fa:""}.fa-bell{--fa:""}.fa-coffee,.fa-mug-saucer{--fa:""}.fa-hospital,.fa-hospital-alt,.fa-hospital-wide{--fa:""}.fa-ambulance,.fa-truck-medical{--fa:""}.fa-medkit,.fa-suitcase-medical{--fa:""}.fa-fighter-jet,.fa-jet-fighter{--fa:""}.fa-beer,.fa-beer-mug-empty{--fa:""}.fa-h-square,.fa-square-h{--fa:""}.fa-plus-square,.fa-square-plus{--fa:""}.fa-angle-double-left,.fa-angles-left{--fa:""}.fa-angle-double-right,.fa-angles-right{--fa:""}.fa-angle-double-up,.fa-angles-up{--fa:""}.fa-angle-double-down,.fa-angles-down{--fa:""}.fa-angle-left{--fa:""}.fa-angle-right{--fa:""}.fa-angle-up{--fa:""}.fa-angle-down{--fa:""}.fa-laptop{--fa:""}.fa-tablet-button{--fa:""}.fa-mobile-button{--fa:""}.fa-quote-left,.fa-quote-left-alt{--fa:""}.fa-quote-right,.fa-quote-right-alt{--fa:""}.fa-spinner{--fa:""}.fa-circle{--fa:""}.fa-face-smile,.fa-smile{--fa:""}.fa-face-frown,.fa-frown{--fa:""}.fa-face-meh,.fa-meh{--fa:""}.fa-gamepad{--fa:""}.fa-keyboard{--fa:""}.fa-flag-checkered{--fa:""}.fa-terminal{--fa:""}.fa-code{--fa:""}.fa-mail-reply-all,.fa-reply-all{--fa:""}.fa-location-arrow{--fa:""}.fa-crop{--fa:""}.fa-code-branch{--fa:""}.fa-chain-broken,.fa-chain-slash,.fa-link-slash,.fa-unlink{--fa:""}.fa-info{--fa:""}.fa-superscript{--fa:""}.fa-subscript{--fa:""}.fa-eraser{--fa:""}.fa-puzzle-piece{--fa:""}.fa-microphone{--fa:""}.fa-microphone-slash{--fa:""}.fa-shield,.fa-shield-blank{--fa:""}.fa-calendar{--fa:""}.fa-fire-extinguisher{--fa:""}.fa-rocket{--fa:""}.fa-chevron-circle-left,.fa-circle-chevron-left{--fa:""}.fa-chevron-circle-right,.fa-circle-chevron-right{--fa:""}.fa-chevron-circle-up,.fa-circle-chevron-up{--fa:""}.fa-chevron-circle-down,.fa-circle-chevron-down{--fa:""}.fa-anchor{--fa:""}.fa-unlock-alt,.fa-unlock-keyhole{--fa:""}.fa-bullseye{--fa:""}.fa-ellipsis,.fa-ellipsis-h{--fa:""}.fa-ellipsis-v,.fa-ellipsis-vertical{--fa:""}.fa-rss-square,.fa-square-rss{--fa:""}.fa-circle-play,.fa-play-circle{--fa:""}.fa-ticket{--fa:""}.fa-minus-square,.fa-square-minus{--fa:""}.fa-arrow-turn-up,.fa-level-up{--fa:""}.fa-arrow-turn-down,.fa-level-down{--fa:""}.fa-check-square,.fa-square-check{--fa:""}.fa-pen-square,.fa-pencil-square,.fa-square-pen{--fa:""}.fa-external-link-square,.fa-square-arrow-up-right{--fa:""}.fa-share-from-square,.fa-share-square{--fa:""}.fa-compass{--fa:""}.fa-caret-square-down,.fa-square-caret-down{--fa:""}.fa-caret-square-up,.fa-square-caret-up{--fa:""}.fa-caret-square-right,.fa-square-caret-right{--fa:""}.fa-eur,.fa-euro,.fa-euro-sign{--fa:""}.fa-gbp,.fa-pound-sign,.fa-sterling-sign{--fa:""}.fa-rupee,.fa-rupee-sign{--fa:""}.fa-cny,.fa-jpy,.fa-rmb,.fa-yen,.fa-yen-sign{--fa:""}.fa-rouble,.fa-rub,.fa-ruble,.fa-ruble-sign{--fa:""}.fa-krw,.fa-won,.fa-won-sign{--fa:""}.fa-file{--fa:""}.fa-file-alt,.fa-file-lines,.fa-file-text{--fa:""}.fa-arrow-down-a-z,.fa-sort-alpha-asc,.fa-sort-alpha-down{--fa:""}.fa-arrow-up-a-z,.fa-sort-alpha-up{--fa:""}.fa-arrow-down-wide-short,.fa-sort-amount-asc,.fa-sort-amount-down{--fa:""}.fa-arrow-up-wide-short,.fa-sort-amount-up{--fa:""}.fa-arrow-down-1-9,.fa-sort-numeric-asc,.fa-sort-numeric-down{--fa:""}.fa-arrow-up-1-9,.fa-sort-numeric-up{--fa:""}.fa-thumbs-up{--fa:""}.fa-thumbs-down{--fa:""}.fa-arrow-down-long,.fa-long-arrow-down{--fa:""}.fa-arrow-up-long,.fa-long-arrow-up{--fa:""}.fa-arrow-left-long,.fa-long-arrow-left{--fa:""}.fa-arrow-right-long,.fa-long-arrow-right{--fa:""}.fa-female,.fa-person-dress{--fa:""}.fa-male,.fa-person{--fa:""}.fa-sun{--fa:""}.fa-moon{--fa:""}.fa-archive,.fa-box-archive{--fa:""}.fa-bug{--fa:""}.fa-caret-square-left,.fa-square-caret-left{--fa:""}.fa-circle-dot,.fa-dot-circle{--fa:""}.fa-wheelchair{--fa:""}.fa-lira-sign{--fa:""}.fa-shuttle-space,.fa-space-shuttle{--fa:""}.fa-envelope-square,.fa-square-envelope{--fa:""}.fa-bank,.fa-building-columns,.fa-institution,.fa-museum,.fa-university{--fa:""}.fa-graduation-cap,.fa-mortar-board{--fa:""}.fa-language{--fa:""}.fa-fax{--fa:""}.fa-building{--fa:""}.fa-child{--fa:""}.fa-paw{--fa:""}.fa-cube{--fa:""}.fa-cubes{--fa:""}.fa-recycle{--fa:""}.fa-automobile,.fa-car{--fa:""}.fa-cab,.fa-taxi{--fa:""}.fa-tree{--fa:""}.fa-database{--fa:""}.fa-file-pdf{--fa:""}.fa-file-word{--fa:""}.fa-file-excel{--fa:""}.fa-file-powerpoint{--fa:""}.fa-file-image{--fa:""}.fa-file-archive,.fa-file-zipper{--fa:""}.fa-file-audio{--fa:""}.fa-file-video{--fa:""}.fa-file-code{--fa:""}.fa-life-ring{--fa:""}.fa-circle-notch{--fa:""}.fa-paper-plane{--fa:""}.fa-clock-rotate-left,.fa-history{--fa:""}.fa-header,.fa-heading{--fa:""}.fa-paragraph{--fa:""}.fa-sliders,.fa-sliders-h{--fa:""}.fa-share-alt,.fa-share-nodes{--fa:""}.fa-share-alt-square,.fa-square-share-nodes{--fa:""}.fa-bomb{--fa:""}.fa-futbol,.fa-futbol-ball,.fa-soccer-ball{--fa:""}.fa-teletype,.fa-tty{--fa:""}.fa-binoculars{--fa:""}.fa-plug{--fa:""}.fa-newspaper{--fa:""}.fa-wifi,.fa-wifi-3,.fa-wifi-strong{--fa:""}.fa-calculator{--fa:""}.fa-bell-slash{--fa:""}.fa-trash{--fa:""}.fa-copyright{--fa:""}.fa-eye-dropper,.fa-eye-dropper-empty,.fa-eyedropper{--fa:""}.fa-paint-brush,.fa-paintbrush{--fa:""}.fa-birthday-cake,.fa-cake,.fa-cake-candles{--fa:""}.fa-area-chart,.fa-chart-area{--fa:""}.fa-chart-pie,.fa-pie-chart{--fa:""}.fa-chart-line,.fa-line-chart{--fa:""}.fa-toggle-off{--fa:""}.fa-toggle-on{--fa:""}.fa-bicycle{--fa:""}.fa-bus{--fa:""}.fa-closed-captioning{--fa:""}.fa-ils,.fa-shekel,.fa-shekel-sign,.fa-sheqel,.fa-sheqel-sign{--fa:""}.fa-cart-plus{--fa:""}.fa-cart-arrow-down{--fa:""}.fa-diamond{--fa:""}.fa-ship{--fa:""}.fa-user-secret{--fa:""}.fa-motorcycle{--fa:""}.fa-street-view{--fa:""}.fa-heart-pulse,.fa-heartbeat{--fa:""}.fa-venus{--fa:""}.fa-mars{--fa:""}.fa-mercury{--fa:""}.fa-mars-and-venus{--fa:""}.fa-transgender,.fa-transgender-alt{--fa:""}.fa-venus-double{--fa:""}.fa-mars-double{--fa:""}.fa-venus-mars{--fa:""}.fa-mars-stroke{--fa:""}.fa-mars-stroke-up,.fa-mars-stroke-v{--fa:""}.fa-mars-stroke-h,.fa-mars-stroke-right{--fa:""}.fa-neuter{--fa:""}.fa-genderless{--fa:""}.fa-server{--fa:""}.fa-user-plus{--fa:""}.fa-user-times,.fa-user-xmark{--fa:""}.fa-bed{--fa:""}.fa-train{--fa:""}.fa-subway,.fa-train-subway{--fa:""}.fa-battery,.fa-battery-5,.fa-battery-full{--fa:""}.fa-battery-4,.fa-battery-three-quarters{--fa:""}.fa-battery-3,.fa-battery-half{--fa:""}.fa-battery-2,.fa-battery-quarter{--fa:""}.fa-battery-0,.fa-battery-empty{--fa:""}.fa-arrow-pointer,.fa-mouse-pointer{--fa:""}.fa-i-cursor{--fa:""}.fa-object-group{--fa:""}.fa-object-ungroup{--fa:""}.fa-note-sticky,.fa-sticky-note{--fa:""}.fa-clone{--fa:""}.fa-balance-scale,.fa-scale-balanced{--fa:""}.fa-hourglass-1,.fa-hourglass-start{--fa:""}.fa-hourglass-2,.fa-hourglass-half{--fa:""}.fa-hourglass-3,.fa-hourglass-end{--fa:""}.fa-hourglass,.fa-hourglass-empty{--fa:""}.fa-hand-back-fist,.fa-hand-rock{--fa:""}.fa-hand,.fa-hand-paper{--fa:""}.fa-hand-scissors{--fa:""}.fa-hand-lizard{--fa:""}.fa-hand-spock{--fa:""}.fa-hand-pointer{--fa:""}.fa-hand-peace{--fa:""}.fa-trademark{--fa:""}.fa-registered{--fa:""}.fa-television,.fa-tv,.fa-tv-alt{--fa:""}.fa-calendar-plus{--fa:""}.fa-calendar-minus{--fa:""}.fa-calendar-times,.fa-calendar-xmark{--fa:""}.fa-calendar-check{--fa:""}.fa-industry{--fa:""}.fa-map-pin{--fa:""}.fa-map-signs,.fa-signs-post{--fa:""}.fa-map{--fa:""}.fa-comment-alt,.fa-message{--fa:""}.fa-circle-pause,.fa-pause-circle{--fa:""}.fa-circle-stop,.fa-stop-circle{--fa:""}.fa-bag-shopping,.fa-shopping-bag{--fa:""}.fa-basket-shopping,.fa-shopping-basket{--fa:""}.fa-universal-access{--fa:""}.fa-blind,.fa-person-walking-with-cane{--fa:""}.fa-audio-description{--fa:""}.fa-phone-volume,.fa-volume-control-phone{--fa:""}.fa-braille{--fa:""}.fa-assistive-listening-systems,.fa-ear-listen{--fa:""}.fa-american-sign-language-interpreting,.fa-asl-interpreting,.fa-hands-american-sign-language-interpreting,.fa-hands-asl-interpreting{--fa:""}.fa-deaf,.fa-deafness,.fa-ear-deaf,.fa-hard-of-hearing{--fa:""}.fa-hands,.fa-sign-language,.fa-signing{--fa:""}.fa-eye-low-vision,.fa-low-vision{--fa:""}.fa-handshake,.fa-handshake-alt,.fa-handshake-simple{--fa:""}.fa-envelope-open{--fa:""}.fa-address-book,.fa-contact-book{--fa:""}.fa-address-card,.fa-contact-card,.fa-vcard{--fa:""}.fa-circle-user,.fa-user-circle{--fa:""}.fa-id-badge{--fa:""}.fa-drivers-license,.fa-id-card{--fa:""}.fa-temperature-4,.fa-temperature-full,.fa-thermometer-4,.fa-thermometer-full{--fa:""}.fa-temperature-3,.fa-temperature-three-quarters,.fa-thermometer-3,.fa-thermometer-three-quarters{--fa:""}.fa-temperature-2,.fa-temperature-half,.fa-thermometer-2,.fa-thermometer-half{--fa:""}.fa-temperature-1,.fa-temperature-quarter,.fa-thermometer-1,.fa-thermometer-quarter{--fa:""}.fa-temperature-0,.fa-temperature-empty,.fa-thermometer-0,.fa-thermometer-empty{--fa:""}.fa-shower{--fa:""}.fa-bath,.fa-bathtub{--fa:""}.fa-podcast{--fa:""}.fa-window-maximize{--fa:""}.fa-window-minimize{--fa:""}.fa-window-restore{--fa:""}.fa-square-xmark,.fa-times-square,.fa-xmark-square{--fa:""}.fa-microchip{--fa:""}.fa-snowflake{--fa:""}.fa-spoon,.fa-utensil-spoon{--fa:""}.fa-cutlery,.fa-utensils{--fa:""}.fa-rotate-back,.fa-rotate-backward,.fa-rotate-left,.fa-undo-alt{--fa:""}.fa-trash-alt,.fa-trash-can{--fa:""}.fa-rotate,.fa-sync-alt{--fa:""}.fa-stopwatch{--fa:""}.fa-right-from-bracket,.fa-sign-out-alt{--fa:""}.fa-right-to-bracket,.fa-sign-in-alt{--fa:""}.fa-redo-alt,.fa-rotate-forward,.fa-rotate-right{--fa:""}.fa-poo{--fa:""}.fa-images{--fa:""}.fa-pencil,.fa-pencil-alt{--fa:""}.fa-pen{--fa:""}.fa-pen-alt,.fa-pen-clip{--fa:""}.fa-octagon{--fa:""}.fa-down-long,.fa-long-arrow-alt-down{--fa:""}.fa-left-long,.fa-long-arrow-alt-left{--fa:""}.fa-long-arrow-alt-right,.fa-right-long{--fa:""}.fa-long-arrow-alt-up,.fa-up-long{--fa:""}.fa-hexagon{--fa:""}.fa-file-edit,.fa-file-pen{--fa:""}.fa-expand-arrows-alt,.fa-maximize{--fa:""}.fa-clipboard{--fa:""}.fa-arrows-alt-h,.fa-left-right{--fa:""}.fa-arrows-alt-v,.fa-up-down{--fa:""}.fa-alarm-clock{--fa:""}.fa-arrow-alt-circle-down,.fa-circle-down{--fa:""}.fa-arrow-alt-circle-left,.fa-circle-left{--fa:""}.fa-arrow-alt-circle-right,.fa-circle-right{--fa:""}.fa-arrow-alt-circle-up,.fa-circle-up{--fa:""}.fa-external-link-alt,.fa-up-right-from-square{--fa:""}.fa-external-link-square-alt,.fa-square-up-right{--fa:""}.fa-exchange-alt,.fa-right-left{--fa:""}.fa-repeat{--fa:""}.fa-code-commit{--fa:""}.fa-code-merge{--fa:""}.fa-desktop,.fa-desktop-alt{--fa:""}.fa-gem{--fa:""}.fa-level-down-alt,.fa-turn-down{--fa:""}.fa-level-up-alt,.fa-turn-up{--fa:""}.fa-lock-open{--fa:""}.fa-location-dot,.fa-map-marker-alt{--fa:""}.fa-microphone-alt,.fa-microphone-lines{--fa:""}.fa-mobile-alt,.fa-mobile-screen-button{--fa:""}.fa-mobile,.fa-mobile-android,.fa-mobile-phone{--fa:""}.fa-mobile-android-alt,.fa-mobile-screen{--fa:""}.fa-money-bill-1,.fa-money-bill-alt{--fa:""}.fa-phone-slash{--fa:""}.fa-image-portrait,.fa-portrait{--fa:""}.fa-mail-reply,.fa-reply{--fa:""}.fa-shield-alt,.fa-shield-halved{--fa:""}.fa-tablet-alt,.fa-tablet-screen-button{--fa:""}.fa-tablet,.fa-tablet-android{--fa:""}.fa-ticket-alt,.fa-ticket-simple{--fa:""}.fa-rectangle-times,.fa-rectangle-xmark,.fa-times-rectangle,.fa-window-close{--fa:""}.fa-compress-alt,.fa-down-left-and-up-right-to-center{--fa:""}.fa-expand-alt,.fa-up-right-and-down-left-from-center{--fa:""}.fa-baseball-bat-ball{--fa:""}.fa-baseball,.fa-baseball-ball{--fa:""}.fa-basketball,.fa-basketball-ball{--fa:""}.fa-bowling-ball{--fa:""}.fa-chess{--fa:""}.fa-chess-bishop{--fa:""}.fa-chess-board{--fa:""}.fa-chess-king{--fa:""}.fa-chess-knight{--fa:""}.fa-chess-pawn{--fa:""}.fa-chess-queen{--fa:""}.fa-chess-rook{--fa:""}.fa-dumbbell{--fa:""}.fa-football,.fa-football-ball{--fa:""}.fa-golf-ball,.fa-golf-ball-tee{--fa:""}.fa-hockey-puck{--fa:""}.fa-broom-ball,.fa-quidditch,.fa-quidditch-broom-ball{--fa:""}.fa-square-full{--fa:""}.fa-ping-pong-paddle-ball,.fa-table-tennis,.fa-table-tennis-paddle-ball{--fa:""}.fa-volleyball,.fa-volleyball-ball{--fa:""}.fa-allergies,.fa-hand-dots{--fa:""}.fa-band-aid,.fa-bandage{--fa:""}.fa-box{--fa:""}.fa-boxes,.fa-boxes-alt,.fa-boxes-stacked{--fa:""}.fa-briefcase-medical{--fa:""}.fa-burn,.fa-fire-flame-simple{--fa:""}.fa-capsules{--fa:""}.fa-clipboard-check{--fa:""}.fa-clipboard-list{--fa:""}.fa-diagnoses,.fa-person-dots-from-line{--fa:""}.fa-dna{--fa:""}.fa-dolly,.fa-dolly-box{--fa:""}.fa-cart-flatbed,.fa-dolly-flatbed{--fa:""}.fa-file-medical{--fa:""}.fa-file-medical-alt,.fa-file-waveform{--fa:""}.fa-first-aid,.fa-kit-medical{--fa:""}.fa-circle-h,.fa-hospital-symbol{--fa:""}.fa-id-card-alt,.fa-id-card-clip{--fa:""}.fa-notes-medical{--fa:""}.fa-pallet{--fa:""}.fa-pills{--fa:""}.fa-prescription-bottle{--fa:""}.fa-prescription-bottle-alt,.fa-prescription-bottle-medical{--fa:""}.fa-bed-pulse,.fa-procedures{--fa:""}.fa-shipping-fast,.fa-truck-fast{--fa:""}.fa-smoking{--fa:""}.fa-syringe{--fa:""}.fa-tablets{--fa:""}.fa-thermometer{--fa:""}.fa-vial{--fa:""}.fa-vials{--fa:""}.fa-warehouse{--fa:""}.fa-weight,.fa-weight-scale{--fa:""}.fa-x-ray{--fa:""}.fa-box-open{--fa:""}.fa-comment-dots,.fa-commenting{--fa:""}.fa-comment-slash{--fa:""}.fa-couch{--fa:""}.fa-circle-dollar-to-slot,.fa-donate{--fa:""}.fa-dove{--fa:""}.fa-hand-holding{--fa:""}.fa-hand-holding-heart{--fa:""}.fa-hand-holding-dollar,.fa-hand-holding-usd{--fa:""}.fa-hand-holding-droplet,.fa-hand-holding-water{--fa:""}.fa-hands-holding{--fa:""}.fa-hands-helping,.fa-handshake-angle{--fa:""}.fa-parachute-box{--fa:""}.fa-people-carry,.fa-people-carry-box{--fa:""}.fa-piggy-bank{--fa:""}.fa-ribbon{--fa:""}.fa-route{--fa:""}.fa-seedling,.fa-sprout{--fa:""}.fa-sign,.fa-sign-hanging{--fa:""}.fa-face-smile-wink,.fa-smile-wink{--fa:""}.fa-tape{--fa:""}.fa-truck-loading,.fa-truck-ramp-box{--fa:""}.fa-truck-moving{--fa:""}.fa-video-slash{--fa:""}.fa-wine-glass{--fa:""}.fa-user-astronaut{--fa:""}.fa-user-check{--fa:""}.fa-user-clock{--fa:""}.fa-user-cog,.fa-user-gear{--fa:""}.fa-user-edit,.fa-user-pen{--fa:""}.fa-user-friends,.fa-user-group{--fa:""}.fa-user-graduate{--fa:""}.fa-user-lock{--fa:""}.fa-user-minus{--fa:""}.fa-user-ninja{--fa:""}.fa-user-shield{--fa:""}.fa-user-alt-slash,.fa-user-large-slash,.fa-user-slash{--fa:""}.fa-user-tag{--fa:""}.fa-user-tie{--fa:""}.fa-users-cog,.fa-users-gear{--fa:""}.fa-balance-scale-left,.fa-scale-unbalanced{--fa:""}.fa-balance-scale-right,.fa-scale-unbalanced-flip{--fa:""}.fa-blender{--fa:""}.fa-book-open{--fa:""}.fa-broadcast-tower,.fa-tower-broadcast{--fa:""}.fa-broom{--fa:""}.fa-blackboard,.fa-chalkboard{--fa:""}.fa-chalkboard-teacher,.fa-chalkboard-user{--fa:""}.fa-church{--fa:""}.fa-coins{--fa:""}.fa-compact-disc{--fa:""}.fa-crow{--fa:""}.fa-crown{--fa:""}.fa-dice{--fa:""}.fa-dice-five{--fa:""}.fa-dice-four{--fa:""}.fa-dice-one{--fa:""}.fa-dice-six{--fa:""}.fa-dice-three{--fa:""}.fa-dice-two{--fa:""}.fa-divide{--fa:""}.fa-door-closed{--fa:""}.fa-door-open{--fa:""}.fa-feather{--fa:""}.fa-frog{--fa:""}.fa-gas-pump{--fa:""}.fa-glasses{--fa:""}.fa-greater-than-equal{--fa:""}.fa-helicopter{--fa:""}.fa-infinity{--fa:""}.fa-kiwi-bird{--fa:""}.fa-less-than-equal{--fa:""}.fa-memory{--fa:""}.fa-microphone-alt-slash,.fa-microphone-lines-slash{--fa:""}.fa-money-bill-wave{--fa:""}.fa-money-bill-1-wave,.fa-money-bill-wave-alt{--fa:""}.fa-money-check{--fa:""}.fa-money-check-alt,.fa-money-check-dollar{--fa:""}.fa-not-equal{--fa:""}.fa-palette{--fa:""}.fa-parking,.fa-square-parking{--fa:""}.fa-diagram-project,.fa-project-diagram{--fa:""}.fa-receipt{--fa:""}.fa-robot{--fa:""}.fa-ruler{--fa:""}.fa-ruler-combined{--fa:""}.fa-ruler-horizontal{--fa:""}.fa-ruler-vertical{--fa:""}.fa-school{--fa:""}.fa-screwdriver{--fa:""}.fa-shoe-prints{--fa:""}.fa-skull{--fa:""}.fa-ban-smoking,.fa-smoking-ban{--fa:""}.fa-store{--fa:""}.fa-shop,.fa-store-alt{--fa:""}.fa-bars-staggered,.fa-reorder,.fa-stream{--fa:""}.fa-stroopwafel{--fa:""}.fa-toolbox{--fa:""}.fa-shirt,.fa-t-shirt,.fa-tshirt{--fa:""}.fa-person-walking,.fa-walking{--fa:""}.fa-wallet{--fa:""}.fa-angry,.fa-face-angry{--fa:""}.fa-archway{--fa:""}.fa-atlas,.fa-book-atlas{--fa:""}.fa-award{--fa:""}.fa-backspace,.fa-delete-left{--fa:""}.fa-bezier-curve{--fa:""}.fa-bong{--fa:""}.fa-brush{--fa:""}.fa-bus-alt,.fa-bus-simple{--fa:""}.fa-cannabis{--fa:""}.fa-check-double{--fa:""}.fa-cocktail,.fa-martini-glass-citrus{--fa:""}.fa-bell-concierge,.fa-concierge-bell{--fa:""}.fa-cookie{--fa:""}.fa-cookie-bite{--fa:""}.fa-crop-alt,.fa-crop-simple{--fa:""}.fa-digital-tachograph,.fa-tachograph-digital{--fa:""}.fa-dizzy,.fa-face-dizzy{--fa:""}.fa-compass-drafting,.fa-drafting-compass{--fa:""}.fa-drum{--fa:""}.fa-drum-steelpan{--fa:""}.fa-feather-alt,.fa-feather-pointed{--fa:""}.fa-file-contract{--fa:""}.fa-file-arrow-down,.fa-file-download{--fa:""}.fa-arrow-right-from-file,.fa-file-export{--fa:""}.fa-arrow-right-to-file,.fa-file-import{--fa:""}.fa-file-invoice{--fa:""}.fa-file-invoice-dollar{--fa:""}.fa-file-prescription{--fa:""}.fa-file-signature{--fa:""}.fa-file-arrow-up,.fa-file-upload{--fa:""}.fa-fill{--fa:""}.fa-fill-drip{--fa:""}.fa-fingerprint{--fa:""}.fa-fish{--fa:""}.fa-face-flushed,.fa-flushed{--fa:""}.fa-face-frown-open,.fa-frown-open{--fa:""}.fa-glass-martini-alt,.fa-martini-glass{--fa:""}.fa-earth-africa,.fa-globe-africa{--fa:""}.fa-earth,.fa-earth-america,.fa-earth-americas,.fa-globe-americas{--fa:""}.fa-earth-asia,.fa-globe-asia{--fa:""}.fa-face-grimace,.fa-grimace{--fa:""}.fa-face-grin,.fa-grin{--fa:""}.fa-face-grin-wide,.fa-grin-alt{--fa:""}.fa-face-grin-beam,.fa-grin-beam{--fa:""}.fa-face-grin-beam-sweat,.fa-grin-beam-sweat{--fa:""}.fa-face-grin-hearts,.fa-grin-hearts{--fa:""}.fa-face-grin-squint,.fa-grin-squint{--fa:""}.fa-face-grin-squint-tears,.fa-grin-squint-tears{--fa:""}.fa-face-grin-stars,.fa-grin-stars{--fa:""}.fa-face-grin-tears,.fa-grin-tears{--fa:""}.fa-face-grin-tongue,.fa-grin-tongue{--fa:""}.fa-face-grin-tongue-squint,.fa-grin-tongue-squint{--fa:""}.fa-face-grin-tongue-wink,.fa-grin-tongue-wink{--fa:""}.fa-face-grin-wink,.fa-grin-wink{--fa:""}.fa-grid-horizontal,.fa-grip,.fa-grip-horizontal{--fa:""}.fa-grid-vertical,.fa-grip-vertical{--fa:""}.fa-headset{--fa:""}.fa-highlighter{--fa:""}.fa-hot-tub,.fa-hot-tub-person{--fa:""}.fa-hotel{--fa:""}.fa-joint{--fa:""}.fa-face-kiss,.fa-kiss{--fa:""}.fa-face-kiss-beam,.fa-kiss-beam{--fa:""}.fa-face-kiss-wink-heart,.fa-kiss-wink-heart{--fa:""}.fa-face-laugh,.fa-laugh{--fa:""}.fa-face-laugh-beam,.fa-laugh-beam{--fa:""}.fa-face-laugh-squint,.fa-laugh-squint{--fa:""}.fa-face-laugh-wink,.fa-laugh-wink{--fa:""}.fa-cart-flatbed-suitcase,.fa-luggage-cart{--fa:""}.fa-map-location,.fa-map-marked{--fa:""}.fa-map-location-dot,.fa-map-marked-alt{--fa:""}.fa-marker{--fa:""}.fa-medal{--fa:""}.fa-face-meh-blank,.fa-meh-blank{--fa:""}.fa-face-rolling-eyes,.fa-meh-rolling-eyes{--fa:""}.fa-monument{--fa:""}.fa-mortar-pestle{--fa:""}.fa-paint-roller{--fa:""}.fa-passport{--fa:""}.fa-pen-fancy{--fa:""}.fa-pen-nib{--fa:""}.fa-pen-ruler,.fa-pencil-ruler{--fa:""}.fa-plane-arrival{--fa:""}.fa-plane-departure{--fa:""}.fa-prescription{--fa:""}.fa-face-sad-cry,.fa-sad-cry{--fa:""}.fa-face-sad-tear,.fa-sad-tear{--fa:""}.fa-shuttle-van,.fa-van-shuttle{--fa:""}.fa-signature{--fa:""}.fa-face-smile-beam,.fa-smile-beam{--fa:""}.fa-solar-panel{--fa:""}.fa-spa{--fa:""}.fa-splotch{--fa:""}.fa-spray-can{--fa:""}.fa-stamp{--fa:""}.fa-star-half-alt,.fa-star-half-stroke{--fa:""}.fa-suitcase-rolling{--fa:""}.fa-face-surprise,.fa-surprise{--fa:""}.fa-swatchbook{--fa:""}.fa-person-swimming,.fa-swimmer{--fa:""}.fa-ladder-water,.fa-swimming-pool,.fa-water-ladder{--fa:""}.fa-droplet-slash,.fa-tint-slash{--fa:""}.fa-face-tired,.fa-tired{--fa:""}.fa-tooth{--fa:""}.fa-umbrella-beach{--fa:""}.fa-weight-hanging{--fa:""}.fa-wine-glass-alt,.fa-wine-glass-empty{--fa:""}.fa-air-freshener,.fa-spray-can-sparkles{--fa:""}.fa-apple-alt,.fa-apple-whole{--fa:""}.fa-atom{--fa:""}.fa-bone{--fa:""}.fa-book-open-reader,.fa-book-reader{--fa:""}.fa-brain{--fa:""}.fa-car-alt,.fa-car-rear{--fa:""}.fa-battery-car,.fa-car-battery{--fa:""}.fa-car-burst,.fa-car-crash{--fa:""}.fa-car-side{--fa:""}.fa-charging-station{--fa:""}.fa-diamond-turn-right,.fa-directions{--fa:""}.fa-draw-polygon,.fa-vector-polygon{--fa:""}.fa-laptop-code{--fa:""}.fa-layer-group{--fa:""}.fa-location,.fa-location-crosshairs{--fa:""}.fa-lungs{--fa:""}.fa-microscope{--fa:""}.fa-oil-can{--fa:""}.fa-poop{--fa:""}.fa-shapes,.fa-triangle-circle-square{--fa:""}.fa-star-of-life{--fa:""}.fa-dashboard,.fa-gauge,.fa-gauge-med,.fa-tachometer-alt-average{--fa:""}.fa-gauge-high,.fa-tachometer-alt,.fa-tachometer-alt-fast{--fa:""}.fa-gauge-simple,.fa-gauge-simple-med,.fa-tachometer-average{--fa:""}.fa-gauge-simple-high,.fa-tachometer,.fa-tachometer-fast{--fa:""}.fa-teeth{--fa:""}.fa-teeth-open{--fa:""}.fa-masks-theater,.fa-theater-masks{--fa:""}.fa-traffic-light{--fa:""}.fa-truck-monster{--fa:""}.fa-truck-pickup{--fa:""}.fa-ad,.fa-rectangle-ad{--fa:""}.fa-ankh{--fa:""}.fa-bible,.fa-book-bible{--fa:""}.fa-briefcase-clock,.fa-business-time{--fa:""}.fa-city{--fa:""}.fa-comment-dollar{--fa:""}.fa-comments-dollar{--fa:""}.fa-cross{--fa:""}.fa-dharmachakra{--fa:""}.fa-envelope-open-text{--fa:""}.fa-folder-minus{--fa:""}.fa-folder-plus{--fa:""}.fa-filter-circle-dollar,.fa-funnel-dollar{--fa:""}.fa-gopuram{--fa:""}.fa-hamsa{--fa:""}.fa-bahai,.fa-haykal{--fa:""}.fa-jedi{--fa:""}.fa-book-journal-whills,.fa-journal-whills{--fa:""}.fa-kaaba{--fa:""}.fa-khanda{--fa:""}.fa-landmark{--fa:""}.fa-envelopes-bulk,.fa-mail-bulk{--fa:""}.fa-menorah{--fa:""}.fa-mosque{--fa:""}.fa-om{--fa:""}.fa-pastafarianism,.fa-spaghetti-monster-flying{--fa:""}.fa-peace{--fa:""}.fa-place-of-worship{--fa:""}.fa-poll,.fa-square-poll-vertical{--fa:""}.fa-poll-h,.fa-square-poll-horizontal{--fa:""}.fa-person-praying,.fa-pray{--fa:""}.fa-hands-praying,.fa-praying-hands{--fa:""}.fa-book-quran,.fa-quran{--fa:""}.fa-magnifying-glass-dollar,.fa-search-dollar{--fa:""}.fa-magnifying-glass-location,.fa-search-location{--fa:""}.fa-socks{--fa:""}.fa-square-root-alt,.fa-square-root-variable{--fa:""}.fa-star-and-crescent{--fa:""}.fa-star-of-david{--fa:""}.fa-synagogue{--fa:""}.fa-scroll-torah,.fa-torah{--fa:""}.fa-torii-gate{--fa:""}.fa-vihara{--fa:""}.fa-volume-mute,.fa-volume-times,.fa-volume-xmark{--fa:""}.fa-yin-yang{--fa:""}.fa-blender-phone{--fa:""}.fa-book-dead,.fa-book-skull{--fa:""}.fa-campground{--fa:""}.fa-cat{--fa:""}.fa-chair{--fa:""}.fa-cloud-moon{--fa:""}.fa-cloud-sun{--fa:""}.fa-cow{--fa:""}.fa-dice-d20{--fa:""}.fa-dice-d6{--fa:""}.fa-dog{--fa:""}.fa-dragon{--fa:""}.fa-drumstick-bite{--fa:""}.fa-dungeon{--fa:""}.fa-file-csv{--fa:""}.fa-fist-raised,.fa-hand-fist{--fa:""}.fa-ghost{--fa:""}.fa-hammer{--fa:""}.fa-hanukiah{--fa:""}.fa-hat-wizard{--fa:""}.fa-hiking,.fa-person-hiking{--fa:""}.fa-hippo{--fa:""}.fa-horse{--fa:""}.fa-house-chimney-crack,.fa-house-damage{--fa:""}.fa-hryvnia,.fa-hryvnia-sign{--fa:""}.fa-mask{--fa:""}.fa-mountain{--fa:""}.fa-network-wired{--fa:""}.fa-otter{--fa:""}.fa-ring{--fa:""}.fa-person-running,.fa-running{--fa:""}.fa-scroll{--fa:""}.fa-skull-crossbones{--fa:""}.fa-slash{--fa:""}.fa-spider{--fa:""}.fa-toilet-paper,.fa-toilet-paper-alt,.fa-toilet-paper-blank{--fa:""}.fa-tractor{--fa:""}.fa-user-injured{--fa:""}.fa-vr-cardboard{--fa:""}.fa-wand-sparkles{--fa:""}.fa-wind{--fa:""}.fa-wine-bottle{--fa:""}.fa-cloud-meatball{--fa:""}.fa-cloud-moon-rain{--fa:""}.fa-cloud-rain{--fa:""}.fa-cloud-showers-heavy{--fa:""}.fa-cloud-sun-rain{--fa:""}.fa-democrat{--fa:""}.fa-flag-usa{--fa:""}.fa-hurricane{--fa:""}.fa-landmark-alt,.fa-landmark-dome{--fa:""}.fa-meteor{--fa:""}.fa-person-booth{--fa:""}.fa-poo-bolt,.fa-poo-storm{--fa:""}.fa-rainbow{--fa:""}.fa-republican{--fa:""}.fa-smog{--fa:""}.fa-temperature-high{--fa:""}.fa-temperature-low{--fa:""}.fa-cloud-bolt,.fa-thunderstorm{--fa:""}.fa-tornado{--fa:""}.fa-volcano{--fa:""}.fa-check-to-slot,.fa-vote-yea{--fa:""}.fa-water{--fa:""}.fa-baby{--fa:""}.fa-baby-carriage,.fa-carriage-baby{--fa:""}.fa-biohazard{--fa:""}.fa-blog{--fa:""}.fa-calendar-day{--fa:""}.fa-calendar-week{--fa:""}.fa-candy-cane{--fa:""}.fa-carrot{--fa:""}.fa-cash-register{--fa:""}.fa-compress-arrows-alt,.fa-minimize{--fa:""}.fa-dumpster{--fa:""}.fa-dumpster-fire{--fa:""}.fa-ethernet{--fa:""}.fa-gifts{--fa:""}.fa-champagne-glasses,.fa-glass-cheers{--fa:""}.fa-glass-whiskey,.fa-whiskey-glass{--fa:""}.fa-earth-europe,.fa-globe-europe{--fa:""}.fa-grip-lines{--fa:""}.fa-grip-lines-vertical{--fa:""}.fa-guitar{--fa:""}.fa-heart-broken,.fa-heart-crack{--fa:""}.fa-holly-berry{--fa:""}.fa-horse-head{--fa:""}.fa-icicles{--fa:""}.fa-igloo{--fa:""}.fa-mitten{--fa:""}.fa-mug-hot{--fa:""}.fa-radiation{--fa:""}.fa-circle-radiation,.fa-radiation-alt{--fa:""}.fa-restroom{--fa:""}.fa-satellite{--fa:""}.fa-satellite-dish{--fa:""}.fa-sd-card{--fa:""}.fa-sim-card{--fa:""}.fa-person-skating,.fa-skating{--fa:""}.fa-person-skiing,.fa-skiing{--fa:""}.fa-person-skiing-nordic,.fa-skiing-nordic{--fa:""}.fa-sleigh{--fa:""}.fa-comment-sms,.fa-sms{--fa:""}.fa-person-snowboarding,.fa-snowboarding{--fa:""}.fa-snowman{--fa:""}.fa-snowplow{--fa:""}.fa-tenge,.fa-tenge-sign{--fa:""}.fa-toilet{--fa:""}.fa-screwdriver-wrench,.fa-tools{--fa:""}.fa-cable-car,.fa-tram{--fa:""}.fa-fire-alt,.fa-fire-flame-curved{--fa:""}.fa-bacon{--fa:""}.fa-book-medical{--fa:""}.fa-bread-slice{--fa:""}.fa-cheese{--fa:""}.fa-clinic-medical,.fa-house-chimney-medical{--fa:""}.fa-clipboard-user{--fa:""}.fa-comment-medical{--fa:""}.fa-crutch{--fa:""}.fa-disease{--fa:""}.fa-egg{--fa:""}.fa-folder-tree{--fa:""}.fa-burger,.fa-hamburger{--fa:""}.fa-hand-middle-finger{--fa:""}.fa-hard-hat,.fa-hat-hard,.fa-helmet-safety{--fa:""}.fa-hospital-user{--fa:""}.fa-hotdog{--fa:""}.fa-ice-cream{--fa:""}.fa-laptop-medical{--fa:""}.fa-pager{--fa:""}.fa-pepper-hot{--fa:""}.fa-pizza-slice{--fa:""}.fa-sack-dollar{--fa:""}.fa-book-tanakh,.fa-tanakh{--fa:""}.fa-bars-progress,.fa-tasks-alt{--fa:""}.fa-trash-arrow-up,.fa-trash-restore{--fa:""}.fa-trash-can-arrow-up,.fa-trash-restore-alt{--fa:""}.fa-user-nurse{--fa:""}.fa-wave-square{--fa:""}.fa-biking,.fa-person-biking{--fa:""}.fa-border-all{--fa:""}.fa-border-none{--fa:""}.fa-border-style,.fa-border-top-left{--fa:""}.fa-digging,.fa-person-digging{--fa:""}.fa-fan{--fa:""}.fa-heart-music-camera-bolt,.fa-icons{--fa:""}.fa-phone-alt,.fa-phone-flip{--fa:""}.fa-phone-square-alt,.fa-square-phone-flip{--fa:""}.fa-photo-film,.fa-photo-video{--fa:""}.fa-remove-format,.fa-text-slash{--fa:""}.fa-arrow-down-z-a,.fa-sort-alpha-desc,.fa-sort-alpha-down-alt{--fa:""}.fa-arrow-up-z-a,.fa-sort-alpha-up-alt{--fa:""}.fa-arrow-down-short-wide,.fa-sort-amount-desc,.fa-sort-amount-down-alt{--fa:""}.fa-arrow-up-short-wide,.fa-sort-amount-up-alt{--fa:""}.fa-arrow-down-9-1,.fa-sort-numeric-desc,.fa-sort-numeric-down-alt{--fa:""}.fa-arrow-up-9-1,.fa-sort-numeric-up-alt{--fa:""}.fa-spell-check{--fa:""}.fa-voicemail{--fa:""}.fa-hat-cowboy{--fa:""}.fa-hat-cowboy-side{--fa:""}.fa-computer-mouse,.fa-mouse{--fa:""}.fa-radio{--fa:""}.fa-record-vinyl{--fa:""}.fa-walkie-talkie{--fa:""}.fa-caravan{--fa:""}:host,:root{--fa-family-brands:"Font Awesome 7 Brands";--fa-font-brands:normal 400 1em/1 var(--fa-family-brands)}@font-face{font-family:"Font Awesome 7 Brands";font-style:normal;font-weight:400;font-display:block;src:url(./fa-brands-400-BfBXV7Mm.woff2)}.fa-brands,.fa-classic.fa-brands,.fab{--fa-family:var(--fa-family-brands);--fa-style:400}.fa-firefox-browser{--fa:""}.fa-ideal{--fa:""}.fa-microblog{--fa:""}.fa-pied-piper-square,.fa-square-pied-piper{--fa:""}.fa-unity{--fa:""}.fa-dailymotion{--fa:""}.fa-instagram-square,.fa-square-instagram{--fa:""}.fa-mixer{--fa:""}.fa-shopify{--fa:""}.fa-deezer{--fa:""}.fa-edge-legacy{--fa:""}.fa-google-pay{--fa:""}.fa-rust{--fa:""}.fa-tiktok{--fa:""}.fa-unsplash{--fa:""}.fa-cloudflare{--fa:""}.fa-guilded{--fa:""}.fa-hive{--fa:""}.fa-42-group,.fa-innosoft{--fa:""}.fa-instalod{--fa:""}.fa-octopus-deploy{--fa:""}.fa-perbyte{--fa:""}.fa-uncharted{--fa:""}.fa-watchman-monitoring{--fa:""}.fa-wodu{--fa:""}.fa-wirsindhandwerk,.fa-wsh{--fa:""}.fa-bots{--fa:""}.fa-cmplid{--fa:""}.fa-bilibili{--fa:""}.fa-golang{--fa:""}.fa-pix{--fa:""}.fa-sitrox{--fa:""}.fa-hashnode{--fa:""}.fa-meta{--fa:""}.fa-padlet{--fa:""}.fa-nfc-directional{--fa:""}.fa-nfc-symbol{--fa:""}.fa-screenpal{--fa:""}.fa-space-awesome{--fa:""}.fa-square-font-awesome{--fa:""}.fa-gitlab-square,.fa-square-gitlab{--fa:""}.fa-odysee{--fa:""}.fa-stubber{--fa:""}.fa-debian{--fa:""}.fa-shoelace{--fa:""}.fa-threads{--fa:""}.fa-square-threads{--fa:""}.fa-square-x-twitter{--fa:""}.fa-x-twitter{--fa:""}.fa-opensuse{--fa:""}.fa-letterboxd{--fa:""}.fa-square-letterboxd{--fa:""}.fa-mintbit{--fa:""}.fa-google-scholar{--fa:""}.fa-brave{--fa:""}.fa-brave-reverse{--fa:""}.fa-pixiv{--fa:""}.fa-upwork{--fa:""}.fa-webflow{--fa:""}.fa-signal-messenger{--fa:""}.fa-bluesky{--fa:""}.fa-jxl{--fa:""}.fa-square-upwork{--fa:""}.fa-web-awesome{--fa:""}.fa-square-web-awesome{--fa:""}.fa-square-web-awesome-stroke{--fa:""}.fa-dart-lang{--fa:""}.fa-flutter{--fa:""}.fa-files-pinwheel{--fa:""}.fa-css{--fa:""}.fa-square-bluesky{--fa:""}.fa-openai{--fa:""}.fa-square-linkedin{--fa:""}.fa-cash-app{--fa:""}.fa-disqus{--fa:""}.fa-11ty,.fa-eleventy{--fa:""}.fa-kakao-talk{--fa:""}.fa-linktree{--fa:""}.fa-notion{--fa:""}.fa-pandora{--fa:""}.fa-pixelfed{--fa:""}.fa-tidal{--fa:""}.fa-vsco{--fa:""}.fa-w3c{--fa:""}.fa-lumon{--fa:""}.fa-lumon-drop{--fa:""}.fa-square-figma{--fa:""}.fa-tex{--fa:""}.fa-duolingo{--fa:""}.fa-square-twitter,.fa-twitter-square{--fa:""}.fa-facebook-square,.fa-square-facebook{--fa:""}.fa-linkedin{--fa:""}.fa-github-square,.fa-square-github{--fa:""}.fa-twitter{--fa:""}.fa-facebook{--fa:""}.fa-github{--fa:""}.fa-pinterest{--fa:""}.fa-pinterest-square,.fa-square-pinterest{--fa:""}.fa-google-plus-square,.fa-square-google-plus{--fa:""}.fa-google-plus-g{--fa:""}.fa-linkedin-in{--fa:""}.fa-github-alt{--fa:""}.fa-maxcdn{--fa:""}.fa-html5{--fa:""}.fa-css3{--fa:""}.fa-btc{--fa:""}.fa-youtube{--fa:""}.fa-xing{--fa:""}.fa-square-xing,.fa-xing-square{--fa:""}.fa-dropbox{--fa:""}.fa-stack-overflow{--fa:""}.fa-instagram{--fa:""}.fa-flickr{--fa:""}.fa-adn{--fa:""}.fa-bitbucket{--fa:""}.fa-tumblr{--fa:""}.fa-square-tumblr,.fa-tumblr-square{--fa:""}.fa-apple{--fa:""}.fa-windows{--fa:""}.fa-android{--fa:""}.fa-linux{--fa:""}.fa-dribbble{--fa:""}.fa-skype{--fa:""}.fa-foursquare{--fa:""}.fa-trello{--fa:""}.fa-gratipay{--fa:""}.fa-vk{--fa:""}.fa-weibo{--fa:""}.fa-renren{--fa:""}.fa-pagelines{--fa:""}.fa-stack-exchange{--fa:""}.fa-square-vimeo,.fa-vimeo-square{--fa:""}.fa-slack,.fa-slack-hash{--fa:""}.fa-wordpress{--fa:""}.fa-openid{--fa:""}.fa-yahoo{--fa:""}.fa-google{--fa:""}.fa-reddit{--fa:""}.fa-reddit-square,.fa-square-reddit{--fa:""}.fa-stumbleupon-circle{--fa:""}.fa-stumbleupon{--fa:""}.fa-delicious{--fa:""}.fa-digg{--fa:""}.fa-pied-piper-pp{--fa:""}.fa-pied-piper-alt{--fa:""}.fa-drupal{--fa:""}.fa-joomla{--fa:""}.fa-behance{--fa:""}.fa-behance-square,.fa-square-behance{--fa:""}.fa-steam{--fa:""}.fa-square-steam,.fa-steam-square{--fa:""}.fa-spotify{--fa:""}.fa-deviantart{--fa:""}.fa-soundcloud{--fa:""}.fa-vine{--fa:""}.fa-codepen{--fa:""}.fa-jsfiddle{--fa:""}.fa-rebel{--fa:""}.fa-empire{--fa:""}.fa-git-square,.fa-square-git{--fa:""}.fa-git{--fa:""}.fa-hacker-news{--fa:""}.fa-tencent-weibo{--fa:""}.fa-qq{--fa:""}.fa-weixin{--fa:""}.fa-slideshare{--fa:""}.fa-twitch{--fa:""}.fa-yelp{--fa:""}.fa-paypal{--fa:""}.fa-google-wallet{--fa:""}.fa-cc-visa{--fa:""}.fa-cc-mastercard{--fa:""}.fa-cc-discover{--fa:""}.fa-cc-amex{--fa:""}.fa-cc-paypal{--fa:""}.fa-cc-stripe{--fa:""}.fa-lastfm{--fa:""}.fa-lastfm-square,.fa-square-lastfm{--fa:""}.fa-ioxhost{--fa:""}.fa-angellist{--fa:""}.fa-buysellads{--fa:""}.fa-connectdevelop{--fa:""}.fa-dashcube{--fa:""}.fa-forumbee{--fa:""}.fa-leanpub{--fa:""}.fa-sellsy{--fa:""}.fa-shirtsinbulk{--fa:""}.fa-simplybuilt{--fa:""}.fa-skyatlas{--fa:""}.fa-pinterest-p{--fa:""}.fa-whatsapp{--fa:""}.fa-viacoin{--fa:""}.fa-medium,.fa-medium-m{--fa:""}.fa-y-combinator{--fa:""}.fa-optin-monster{--fa:""}.fa-opencart{--fa:""}.fa-expeditedssl{--fa:""}.fa-cc-jcb{--fa:""}.fa-cc-diners-club{--fa:""}.fa-creative-commons{--fa:""}.fa-gg{--fa:""}.fa-gg-circle{--fa:""}.fa-odnoklassniki{--fa:""}.fa-odnoklassniki-square,.fa-square-odnoklassniki{--fa:""}.fa-get-pocket{--fa:""}.fa-wikipedia-w{--fa:""}.fa-safari{--fa:""}.fa-chrome{--fa:""}.fa-firefox{--fa:""}.fa-opera{--fa:""}.fa-internet-explorer{--fa:""}.fa-contao{--fa:""}.fa-500px{--fa:""}.fa-amazon{--fa:""}.fa-houzz{--fa:""}.fa-vimeo-v{--fa:""}.fa-black-tie{--fa:""}.fa-fonticons{--fa:""}.fa-reddit-alien{--fa:""}.fa-edge{--fa:""}.fa-codiepie{--fa:""}.fa-modx{--fa:""}.fa-fort-awesome{--fa:""}.fa-usb{--fa:""}.fa-product-hunt{--fa:""}.fa-mixcloud{--fa:""}.fa-scribd{--fa:""}.fa-bluetooth{--fa:""}.fa-bluetooth-b{--fa:""}.fa-gitlab{--fa:""}.fa-wpbeginner{--fa:""}.fa-wpforms{--fa:""}.fa-envira{--fa:""}.fa-glide{--fa:""}.fa-glide-g{--fa:""}.fa-viadeo{--fa:""}.fa-square-viadeo,.fa-viadeo-square{--fa:""}.fa-snapchat,.fa-snapchat-ghost{--fa:""}.fa-snapchat-square,.fa-square-snapchat{--fa:""}.fa-pied-piper{--fa:""}.fa-first-order{--fa:""}.fa-yoast{--fa:""}.fa-themeisle{--fa:""}.fa-google-plus{--fa:""}.fa-font-awesome,.fa-font-awesome-flag,.fa-font-awesome-logo-full{--fa:""}.fa-linode{--fa:""}.fa-quora{--fa:""}.fa-free-code-camp{--fa:""}.fa-telegram,.fa-telegram-plane{--fa:""}.fa-bandcamp{--fa:""}.fa-grav{--fa:""}.fa-etsy{--fa:""}.fa-imdb{--fa:""}.fa-ravelry{--fa:""}.fa-sellcast{--fa:""}.fa-superpowers{--fa:""}.fa-wpexplorer{--fa:""}.fa-meetup{--fa:""}.fa-font-awesome-alt,.fa-square-font-awesome-stroke{--fa:""}.fa-accessible-icon{--fa:""}.fa-accusoft{--fa:""}.fa-adversal{--fa:""}.fa-affiliatetheme{--fa:""}.fa-algolia{--fa:""}.fa-amilia{--fa:""}.fa-angrycreative{--fa:""}.fa-app-store{--fa:""}.fa-app-store-ios{--fa:""}.fa-apper{--fa:""}.fa-asymmetrik{--fa:""}.fa-audible{--fa:""}.fa-avianex{--fa:""}.fa-aws{--fa:""}.fa-bimobject{--fa:""}.fa-bitcoin{--fa:""}.fa-bity{--fa:""}.fa-blackberry{--fa:""}.fa-blogger{--fa:""}.fa-blogger-b{--fa:""}.fa-buromobelexperte{--fa:""}.fa-centercode{--fa:""}.fa-cloudscale{--fa:""}.fa-cloudsmith{--fa:""}.fa-cloudversify{--fa:""}.fa-cpanel{--fa:""}.fa-css3-alt{--fa:""}.fa-cuttlefish{--fa:""}.fa-d-and-d{--fa:""}.fa-deploydog{--fa:""}.fa-deskpro{--fa:""}.fa-digital-ocean{--fa:""}.fa-discord{--fa:""}.fa-discourse{--fa:""}.fa-dochub{--fa:""}.fa-docker{--fa:""}.fa-draft2digital{--fa:""}.fa-dribbble-square,.fa-square-dribbble{--fa:""}.fa-dyalog{--fa:""}.fa-earlybirds{--fa:""}.fa-erlang{--fa:""}.fa-facebook-f{--fa:""}.fa-facebook-messenger{--fa:""}.fa-firstdraft{--fa:""}.fa-fonticons-fi{--fa:""}.fa-fort-awesome-alt{--fa:""}.fa-freebsd{--fa:""}.fa-gitkraken{--fa:""}.fa-gofore{--fa:""}.fa-goodreads{--fa:""}.fa-goodreads-g{--fa:""}.fa-google-drive{--fa:""}.fa-google-play{--fa:""}.fa-gripfire{--fa:""}.fa-grunt{--fa:""}.fa-gulp{--fa:""}.fa-hacker-news-square,.fa-square-hacker-news{--fa:""}.fa-hire-a-helper{--fa:""}.fa-hotjar{--fa:""}.fa-hubspot{--fa:""}.fa-itunes{--fa:""}.fa-itunes-note{--fa:""}.fa-jenkins{--fa:""}.fa-joget{--fa:""}.fa-js{--fa:""}.fa-js-square,.fa-square-js{--fa:""}.fa-keycdn{--fa:""}.fa-kickstarter,.fa-square-kickstarter{--fa:""}.fa-kickstarter-k{--fa:""}.fa-laravel{--fa:""}.fa-line{--fa:""}.fa-lyft{--fa:""}.fa-magento{--fa:""}.fa-medapps{--fa:""}.fa-medrt{--fa:""}.fa-microsoft{--fa:""}.fa-mix{--fa:""}.fa-mizuni{--fa:""}.fa-monero{--fa:""}.fa-napster{--fa:""}.fa-node-js{--fa:""}.fa-npm{--fa:""}.fa-ns8{--fa:""}.fa-nutritionix{--fa:""}.fa-page4{--fa:""}.fa-palfed{--fa:""}.fa-patreon{--fa:""}.fa-periscope{--fa:""}.fa-phabricator{--fa:""}.fa-phoenix-framework{--fa:""}.fa-playstation{--fa:""}.fa-pushed{--fa:""}.fa-python{--fa:""}.fa-red-river{--fa:""}.fa-rendact,.fa-wpressr{--fa:""}.fa-replyd{--fa:""}.fa-resolving{--fa:""}.fa-rocketchat{--fa:""}.fa-rockrms{--fa:""}.fa-schlix{--fa:""}.fa-searchengin{--fa:""}.fa-servicestack{--fa:""}.fa-sistrix{--fa:""}.fa-speakap{--fa:""}.fa-staylinked{--fa:""}.fa-steam-symbol{--fa:""}.fa-sticker-mule{--fa:""}.fa-studiovinari{--fa:""}.fa-supple{--fa:""}.fa-uber{--fa:""}.fa-uikit{--fa:""}.fa-uniregistry{--fa:""}.fa-untappd{--fa:""}.fa-ussunnah{--fa:""}.fa-vaadin{--fa:""}.fa-viber{--fa:""}.fa-vimeo{--fa:""}.fa-vnv{--fa:""}.fa-square-whatsapp,.fa-whatsapp-square{--fa:""}.fa-whmcs{--fa:""}.fa-wordpress-simple{--fa:""}.fa-xbox{--fa:""}.fa-yandex{--fa:""}.fa-yandex-international{--fa:""}.fa-apple-pay{--fa:""}.fa-cc-apple-pay{--fa:""}.fa-fly{--fa:""}.fa-node{--fa:""}.fa-osi{--fa:""}.fa-react{--fa:""}.fa-autoprefixer{--fa:""}.fa-less{--fa:""}.fa-sass{--fa:""}.fa-vuejs{--fa:""}.fa-angular{--fa:""}.fa-aviato{--fa:""}.fa-ember{--fa:""}.fa-gitter{--fa:""}.fa-hooli{--fa:""}.fa-strava{--fa:""}.fa-stripe{--fa:""}.fa-stripe-s{--fa:""}.fa-typo3{--fa:""}.fa-amazon-pay{--fa:""}.fa-cc-amazon-pay{--fa:""}.fa-ethereum{--fa:""}.fa-korvue{--fa:""}.fa-elementor{--fa:""}.fa-square-youtube,.fa-youtube-square{--fa:""}.fa-flipboard{--fa:""}.fa-hips{--fa:""}.fa-php{--fa:""}.fa-quinscape{--fa:""}.fa-readme{--fa:""}.fa-java{--fa:""}.fa-pied-piper-hat{--fa:""}.fa-creative-commons-by{--fa:""}.fa-creative-commons-nc{--fa:""}.fa-creative-commons-nc-eu{--fa:""}.fa-creative-commons-nc-jp{--fa:""}.fa-creative-commons-nd{--fa:""}.fa-creative-commons-pd{--fa:""}.fa-creative-commons-pd-alt{--fa:""}.fa-creative-commons-remix{--fa:""}.fa-creative-commons-sa{--fa:""}.fa-creative-commons-sampling{--fa:""}.fa-creative-commons-sampling-plus{--fa:""}.fa-creative-commons-share{--fa:""}.fa-creative-commons-zero{--fa:""}.fa-ebay{--fa:""}.fa-keybase{--fa:""}.fa-mastodon{--fa:""}.fa-r-project{--fa:""}.fa-researchgate{--fa:""}.fa-teamspeak{--fa:""}.fa-first-order-alt{--fa:""}.fa-fulcrum{--fa:""}.fa-galactic-republic{--fa:""}.fa-galactic-senate{--fa:""}.fa-jedi-order{--fa:""}.fa-mandalorian{--fa:""}.fa-old-republic{--fa:""}.fa-phoenix-squadron{--fa:""}.fa-sith{--fa:""}.fa-trade-federation{--fa:""}.fa-wolf-pack-battalion{--fa:""}.fa-hornbill{--fa:""}.fa-mailchimp{--fa:""}.fa-megaport{--fa:""}.fa-nimblr{--fa:""}.fa-rev{--fa:""}.fa-shopware{--fa:""}.fa-squarespace{--fa:""}.fa-themeco{--fa:""}.fa-weebly{--fa:""}.fa-wix{--fa:""}.fa-ello{--fa:""}.fa-hackerrank{--fa:""}.fa-kaggle{--fa:""}.fa-markdown{--fa:""}.fa-neos{--fa:""}.fa-zhihu{--fa:""}.fa-alipay{--fa:""}.fa-the-red-yeti{--fa:""}.fa-critical-role{--fa:""}.fa-d-and-d-beyond{--fa:""}.fa-dev{--fa:""}.fa-fantasy-flight-games{--fa:""}.fa-wizards-of-the-coast{--fa:""}.fa-think-peaks{--fa:""}.fa-reacteurope{--fa:""}.fa-artstation{--fa:""}.fa-atlassian{--fa:""}.fa-canadian-maple-leaf{--fa:""}.fa-centos{--fa:""}.fa-confluence{--fa:""}.fa-dhl{--fa:""}.fa-diaspora{--fa:""}.fa-fedex{--fa:""}.fa-fedora{--fa:""}.fa-figma{--fa:""}.fa-intercom{--fa:""}.fa-invision{--fa:""}.fa-jira{--fa:""}.fa-mendeley{--fa:""}.fa-raspberry-pi{--fa:""}.fa-redhat{--fa:""}.fa-sketch{--fa:""}.fa-sourcetree{--fa:""}.fa-suse{--fa:""}.fa-ubuntu{--fa:""}.fa-ups{--fa:""}.fa-usps{--fa:""}.fa-yarn{--fa:""}.fa-airbnb{--fa:""}.fa-battle-net{--fa:""}.fa-bootstrap{--fa:""}.fa-buffer{--fa:""}.fa-chromecast{--fa:""}.fa-evernote{--fa:""}.fa-itch-io{--fa:""}.fa-salesforce{--fa:""}.fa-speaker-deck{--fa:""}.fa-symfony{--fa:""}.fa-waze{--fa:""}.fa-yammer{--fa:""}.fa-git-alt{--fa:""}.fa-stackpath{--fa:""}.fa-cotton-bureau{--fa:""}.fa-buy-n-large{--fa:""}.fa-mdb{--fa:""}.fa-orcid{--fa:""}.fa-swift{--fa:""}.fa-umbraco{--fa:""}:host,:root{--fa-font-regular:normal 400 1em/1 var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:400;font-display:block;src:url(./fa-regular-400-BVHPE7da.woff2)}.far{--fa-family:var(--fa-family-classic)}.fa-regular,.far{--fa-style:400}:host,:root{--fa-family-classic:"Font Awesome 7 Free";--fa-font-solid:normal 900 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:900;font-display:block;src:url(./fa-solid-900-8GirhLYJ.woff2)}.fas{--fa-style:900}.fa-classic,.fas{--fa-family:var(--fa-family-classic)}.fa-solid{--fa-style:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(./fa-brands-400-BfBXV7Mm.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(./fa-solid-900-8GirhLYJ.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(./fa-regular-400-BVHPE7da.woff2) format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(./fa-solid-900-8GirhLYJ.woff2) format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(./fa-brands-400-BfBXV7Mm.woff2) format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(./fa-regular-400-BVHPE7da.woff2) format("woff2");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:FontAwesome;font-display:block;src:url(data:font/woff2;base64,d09GMk9UVE8AAA/IAAkAAAAAIi4AAA9/A4EBAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYCJAQGBmADgRwFiH0AghwHIA22GYUWESMRdnLSigfwXxK0JUN3PWgtIVtGtFABIUcjR8vMKvVNUhctBQIndOh7wFzNSdpf090C0MDGNSSuod3GJyMkmSUKlm72kk6vLpKqU4SDLlGqOoHx7wzNIRzzvZseTSBF/CoWaAkVRa5inol55lqxm5oz/9pr/qq+GXmakr21m0KxnJeWZ3dOoSo0//sTGj5e/r///znN1cDq77IugUrslFAFYg2CIfrG8Y3Q37GCqLAnZVKJvSuQC/x0zjP8v7/fp1rJjZ8tzGQcKS6iBFIAJMtql0EBKwIFJDuugO7Ztucm55fDg6nLQiMNIEFoAX1WesldzzU7W7qlB5C8/++0N/TOuYAMJkEJWxa0H6VUF8my5XljyWqW/HtHCdpC8/dzpf3Zo1xxtyzxz6xshdvbIjqxeb2f7J8c5YBze4Ccu5kUEBWBI0AH7IDAk6uwKytrZI3u+Oomu9N+Ch7edEI2hmbmj9mR4KGCCO1OI0Dr/VoFnpZiOoC03o/+9KGeq7f9lSyoBfSRrC9Amv8NNQXkv9dga9kX4SPg6q20ZH4KKkGH7ZxcnL4NSQJ3bNjDCltkZrMsvFjN7LHIvUfNiVvGzRR5g2liAY8ep1zeXndi8cn0bUAk+Rdo+H2aN3ibf00mnl6cTgSTzGQi2PwMLyybUdSOvMvrfRwevuNCicEtAc7iNqM5uMOiDXd5AXgoUDKe4wSrl3nYrJiJ5dgWy5eZNmGBqPqM7SiyHxMG13JMyioCC01sSbFISoxYYmjOYqngylWrJo0avhAvkN+mBQx+0Q/EuqY/MKvU/6QZOMFPn8YVKyFyLf/LwdGlvyBChm501AWTjv/yEZr7ZH17ZBCTYxHSc7VDmT9AFoyEi6CHBl359As9DQ82B5suxNn3j4gMt+UxWSNNYZZQvW8yZzIvpkfcsB9IM5scuJuxZ+gYJ1yo5FvehXBoyRMNnMS9UkW8OOc0MMSN2jR1ry3AabQk+JogpOfRBxzLQ6FlJ2OAKkDymQgcW9xTi3N58PQJMI1CpuCI5kjHZahelKvRmSv2ue23LAciStmv+qMxQMnoseN2TIh3nYzeu5gDMxPesxbeaVPhgpl1YJmQaT3p1uPa1l1QhEhsavLU+p3RJIxFqOwqyqks0qiMPn+ufnYItSTrkSg46sjY07FeCST6L1G6yVZZA2yuHrPmLfvQd7z6pC2GlriWzHIa3OjGNaElbS9udWlddmD03CQBYiOxu4x5MJj9aty8+8AtN195+WXnHXvMkeNHDepdrGj100fvPXPfPXedUS6QTH6OC8SLjm/RC7INBP1psFtAuh/jut1At7ug28Oumya6dSRdewT9u6fdi8KNPu45gM6I0glL5B4A5FS5OD6rJV07pr01Tbe7DNCfricygjae+C8jaQlwudWMKcHzYSyjgDACa+78r8uoVNCuVt7QVZyQLL8TeXFxjQoILPBnv12E3VdiCtFHfhcuFVlENkpnn2H/SXxVqpIlyc3yF4pgxXblcOUDlbeqTC1Xn9KUaxfCEQ5ZDvsdWhyTHXc4xTiPFe9zSekzvX2uzy5XoflexesHfIjl6zaU7k0eJ7GkJRisvss6IthIXzDKJNgOafeXL1zY+OrZ2RWDrpkmcPqRR0ALgU2f5sPNsN5mzE7tGsX/CsEmx07579/v/0rKfyU/B9xewNKUpWHBHGbSwWLhbS+nLAwOaSF2mpv37S0/A/N7tx/MR+H37AN49NY/GwSdrdlKnwmsNXUd0tTVHOFmclEYIQgaGkBICGSuZ2Zc1ZkgP6RM2kJWRDpVWXSeUXND5gKE1JyQkTqNKOsaR7iRmE+pgsyJlfylH6GUWXsT4uqgTL4XmmnNBvTSIeYa4auJkXz9tYBP6kI9QqqfU+wpBYuGK8AgbUZh6gA5zBkSrotIcz5B9ZUVMbvF5XkimQGmEkJDFtup83hwGaecgpTfOY8wQkjFBzHim294LkTOH5ONcFRwicEpLaxkTBrpwgUgBlRdiBbKSaPvsPwgNe+QUgccBUKDlOTvIscppyB76uemdhAoSqlahohzaq7UyX1ypuqk1WitUALYdpVCZjsbLNPWInJ/Wes1k6pryh+M6SRpjCbelogDZqvZoKqmSIjR31Kygf6f65K5G/LTlgDb0MVco6lFM67rlKt9moYigNgIdq9yZOjHuvIR2PQxkiarNVcVl9zfdHZiykproVioWsEItpndkPRp+9f1iEFZrhiBIGSl9F51vg6hluZQK1vrAmvXWTvJBc0mVVWMsuULNSugE0RQP9YSpt/9U5ZGBkV6UFpG3YtQk8V8RYcxEvldZR5I30VGzICwLSbvPXh/sd8AvSSvFjJZCB+d6PnyuEek88l8lBPR+BJaCYxfwwA0qhk0mcY4Z4w7NSIui2Spk3wgIpgJhpzfTmKALCrJLZCAScME5kqCYdqz+RVLJFffGEwnooYqpsl7EEYSN0SqBE30aFd04GY8/GVnAGNw86+H/zWjfEohq3YYxm0LulET5J7JoTAIGWn0CYlrS9e/DgdlMOlMMM2U/9dKwRHEda8hq2OZM8rY5I00yY9eXn4zGnIsmAASXcciw0TcLGE9Be859qlRjbeNBLjn/fu9kbEK/E0YQQ31G+2zQY3SuUUVjsBLePiL/6+46JcWPTyrzXIohckV6wVMt4jguZ/DT85pkL1XgabxDej/lYMB5gkvnpz879KLsg1b4DuSzocNzAOx8K39A+BeuhzA0bwHxKtUqlvryMsHHRjDoAqCdgrT6/MrNJIl8BAha+So2Z3q4y7bsHc2oWKDc3jqafI8EzgA8xbpBJ8JJKRRDnt7UXS0YwcEKRXGPKiGlDgD3ugGi52DrG2MM8+AO83Woq8P9JT6ox9mlDCwZhyDETO3JmvjwFnCPfnw45a5stJ9j1QK+bzOqv2jqUZBNibfaIdOl1eA1kQ7h2dQI8DTZTUXVFJmzyIlJVwFsTapQBQqjqdr4qXGfoma0Qnna96oFnEPDNrdtcWgvWAvEUqs4GC8mVtbJ8omjqeYiro6oT8pq3ip63X6up32Y4gP1PUX6APTS9osERNRRXR9i/+YulbmAd3XfI0eWF1ubK2AI4NK8ygBll5Oq4JoKJ127LhN21X7NfXV+7k0Rgtlu8hpjgyapeonI0xI1cn6T61Xpq5rpx3VT7g/pSGipIRrGWKB9tY56llBi0myy5NmDZRGrbd4OInkwyiXMhKjtl/T1iC5iId7UOocDRvAnozZYbGHekzqtCExsN/jToMDp2hoAT2/g7ySVayA/KCUxm07sANSKQ+JgVVb7bDjedw2hLw9aOsGPOucwfNDNPQ82R4kBooORoE6uEc368C/4EV6ptNehiCxci9VcrbhBugYGilx8skc9pfwz7f4lcUujBZqGRT7Yj9/GeF9uY9sli0x+jZku4B7V5CtDAsvQE+x4CGiGMrHlBnjZ0bH0PihMmF80fW1oCF2ZNt7v3jHuzgavrvcNTa8/Mf+lA28ePHHhdmlDs8Ijtsw41mQAzvwgOKGD1MfShiSoHyiyJrdYqp0/sF6cC6ZcQcwPs1nKZaFuzYcmZ63tyiDyriD0nlUmMlvEVDQLq09dX5+a/BCmp3giaHXbgvBDWB6GUeYkCJoe0RHFAuTiC7EWEtxIjYMlowP2ID2zjgBYs0FN4eE5IuVNZgWg21O/9fbq/bbBR+RDrc2rLVjxpO+anAx69iHLY8Rwbgn6BgDS4KZvlyRdNypPcT4G0RcEvfduSXZK9vbOhvOqxLHo0L53u3tM2fQ1171UqgFwaN7/iNt0KPwFbvwYwjhFlnWBIKVFEMvvpaVQNC18E19gVmLOadcxghyPsO0e9GzdZqJbAXKAazc/8ObOkWFE3IWDAnZDxLnMwOjzchyp7RASRrhFEiUFFsYUZZGhB5+IW2DBTHDEDOBSjHt/IyKa+I2YgshSBQUvjdFHVFSnRM7MLrKBcRwFxNCXuKIWxkkDZ3+GNSME7+HNFfwO/1sPObe41m+JMcl5i4nO+f7sAWpd3LiiRQKWk4dBljDES8g2BQw2ivsHIW4+jD/wt59GA//0G8vh/oQ5lvznmwzL8LRG9sCdLI+9lzbhO05llkvRHx2KbZmKzhzwqUGwYQo01QBjU9dhD4so8lPnjgxcUjV0SIEMK4oIhJD7FTYlJhAMCAvn9kKjWCzYoSFkOXbiZ9YkeBAyWHrMwq8OGUy2/ExrEh6VZNtBrZRyYayz4FnJlTvuR/zj9Jll0FK/h5zjG4lJQ84Rrz/PlWhF67tuOAAReg8QlviW7BqX0z6dNNNWjHPAf0783geYmU3uu+nMa96e7VTkIwddJvmc7uBmfrcbhKZC0RHpV/nFU6Q48pogAXcnadHcERQnjZYlsKgbAkz/PvinZmQWXZBy19p5MhAQE40OBPxz+fYZgK99OPNnJXHxomMWB7La/SnlBrolWVgu/xaRI7zL8ALVqePUC9iPvuUW3N3XZI6J6uRiMrebvG9YDIbfHGAXDedDHIpyu79Uq4D91aqY3+ABiG8rsVnRg1L5xpsOLVt51LUQTvrEAtUMqzOzqK2T2t2zP772rd/ZY6fUp1uF6ePhpWeIxiqoWyhNsRA69AZrcY5o5zVFHUIBwtfsdxjAkFKhVFxVByV78qjlajtlsg1clS7RI9XJ/f2gjjXdB/xy3u+B7Z1szrwPh1m8nMticlqfZJWvPGLmjcJBohzT5z1F63AWaocmFtuAY1ePeBY30R4kfL7aE9+GetD5Hvj8eGMZ3up6qQxKgieGx69dhLxDSY+nQ5FI3LRfrLhMDFvEwF2uOoME+/Gh0MqYxkm4s05u6D4DyLBRemu4kMtB6Nv/NOFUZPitzFD8qL8o0r+kYrPnnsY0vWZd5GEzsCREC+Wz3APkfzeqsAp0tZw0lLrhuy2DNy1E1VNM1LqdhIO45OPIwT3rftapv3Bq7mdNHFSgnKIkN8flMKWHNJF9U1BMQglWyx3EZ7e5f02oBD3RnnUPJn1p0wir+pGFraC2kyNDOKF8tvhNtQ4Hcy0KjTgZz2eIU55xre6wlnEltXkEBDbif0x/5SQnkBBsVWmb3r49ic42aAZm9yFY1aRg7n+S55ntbIbUFoODVCE879nRYAuMN+ACxenLXW8IjGFgtIdIwdl+hm8IjDZChcfQWQE4njeBgZtMFXgB6tKKFfpy23VFRCE125CitD/JeFiLDnXDHDSEnA6F9x0fPn4hNuPX1WQu8Z38LPLmCxI8nJVmHouX1lTh3BMEinPhg07NI3cNPSeEiWEBfG4rV6SAQMAAAA=) format("woff2");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a}.help-ui{left:20px;bottom:20px;padding:10px}.help-ui .help-accordion-icon:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M464%20256a208%20208%200%201%200%20-416%200%20208%20208%200%201%200%20416%200zM0%20256a256%20256%200%201%201%20512%200%20256%20256%200%201%201%20-512%200zm256-80c-17.7%200-32%2014.3-32%2032%200%2013.3-10.7%2024-24%2024s-24-10.7-24-24c0-44.2%2035.8-80%2080-80s80%2035.8%2080%2080c0%2047.2-36%2067.2-56%2074.5l0%203.8c0%2013.3-10.7%2024-24%2024s-24-10.7-24-24l0-8.1c0-20.5%2014.8-35.2%2030.1-40.2%206.4-2.1%2013.2-5.5%2018.2-10.3%204.3-4.2%207.7-10%207.7-19.6%200-17.7-14.3-32-32-32zM224%20368a32%2032%200%201%201%2064%200%2032%2032%200%201%201%20-64%200z'/%3e%3c/svg%3e");display:inline-block;filter:invert(var(--dark-mode));height:16px;width:16px;background-size:16px 16px;vertical-align:text-top;margin-right:4px}.help-ui #hashHolder{font-size:small;margin-top:4px;display:flex;gap:2px}.accordion-content{display:grid;transition:grid-template-rows .3s ease,grid-template-columns .3s cubic-bezier(.7,0,1,.6),padding-top .3s ease;grid-template-rows:0fr;grid-template-columns:0fr;padding-top:0}.accordion-state:checked~.accordion-content{grid-template-rows:1fr;grid-template-columns:1fr;transition:grid-template-rows .3s ease,grid-template-columns .3s cubic-bezier(0,.7,.4,1),padding-top .3s ease;padding-top:8px}.accordion-content *{overflow:hidden;white-space:nowrap;text-overflow:clip}.accordion-button{-webkit-user-select:none;user-select:none;--chevron-scale: 1}.accordion-button.flip-chevron{--chevron-scale: -1}.accordion-button.chevron-right{padding-right:2em}.accordion-button.chevron-left{padding-left:2em}.accordion-button.chevron-right:after{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20448%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M201.4%20406.6c12.5%2012.5%2032.8%2012.5%2045.3%200l192-192c12.5-12.5%2012.5-32.8%200-45.3s-32.8-12.5-45.3%200L224%20338.7%2054.6%20169.4c-12.5-12.5-32.8-12.5-45.3%200s-12.5%2032.8%200%2045.3l192%20192z'/%3e%3c/svg%3e");right:1em;position:absolute;display:inline-block;filter:invert(var(--dark-mode));width:16px;height:16px;background-size:16px 16px;vertical-align:text-top;transition:transform .5s ease;transform:scaleY(var(--chevron-scale))}.accordion-button.chevron-left:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20448%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M201.4%20406.6c12.5%2012.5%2032.8%2012.5%2045.3%200l192-192c12.5-12.5%2012.5-32.8%200-45.3s-32.8-12.5-45.3%200L224%20338.7%2054.6%20169.4c-12.5-12.5-32.8-12.5-45.3%200s-12.5%2032.8%200%2045.3l192%20192z'/%3e%3c/svg%3e");left:1em;position:absolute;display:inline-block;filter:invert(var(--dark-mode));width:16px;height:16px;background-size:16px 16px;vertical-align:text-top;transition:transform .5s ease;transform:scaleY(var(--chevron-scale))}.accordion-state:checked~label .accordion-button:after{transform:scaleY(calc(var(--chevron-scale) * -1))}.accordion-state:checked~label .accordion-button:before{transform:scaleY(calc(var(--chevron-scale) * -1))}#loading-indicator-wrapper{position:fixed;inset:0;z-index:9999;width:100vw;height:100vh;flex-direction:column;justify-content:center;align-items:center;gap:20px;font-size:xx-large;font-weight:700;color:#fff;background-color:#000c}#turning-circle{border:20px solid white;border-top:20px solid #3498db;border-radius:9999px;width:100px;height:100px;animation:spin 2s linear infinite}button.delete-button,button.add-button{background-color:transparent;border:none;cursor:pointer;padding:0}.label-type-editor-ui{padding:10px;top:150px;right:40px;max-height:calc(100vh - 210px);overflow:auto}.label-type-editor-ui *{color:var(--color-foreground)}.label-type-editor-ui .codicon{vertical-align:middle}.label-type-editor-ui hr{height:1px;border:0;background-color:var(--color-foreground)}.label-type-editor-ui input{background-color:transparent;outline:none;border:none}.label-type-editor-ui .label-type-name{font-size:12pt}.label-type-editor-ui .label-type-values,.label-type-editor-ui .label-type-value-add{margin-left:10px}.label-type-value input{background-color:var(--color-background);text-align:center;border:1px solid var(--color-foreground);border-radius:15px;padding:3px;margin:4px}.sprotty-node rect,.sprotty-node line,.sprotty-node circle{stroke:var(--color-foreground);stroke-width:1;fill:color-mix(in srgb,var(--color-primary),var(--color, transparent) 40%)}.sprotty-node .node-label text{font-size:5pt}.sprotty-node .node-label rect,.sprotty-node .node-label .label-delete circle{fill:var(--color-primary);stroke:var(--color-foreground);stroke-width:.5}.sprotty-node .node-label .label-delete text{fill:var(--color-foreground);font-size:5px}.sprotty-edge{stroke:var(--color-foreground);fill:none;stroke-width:1}.sprotty-edge .sprotty-edge path.select-path{stroke:transparent;stroke-width:8}.sprotty-edge .arrow{fill:var(--color-foreground);stroke:none}.sprotty-edge .label-background rect{fill:var(--color-background);stroke-width:0}.sprotty-edge>.sprotty-routing-handle{fill:var(--color-foreground);stroke:none}.sprotty-port rect{stroke:var(--port-border, var(--color-foreground));fill:color-mix(in srgb,var(--port-color, var(--color-primary)),var(--color-background) 25%);stroke-width:.5}.sprotty-port .port-text{font-size:4pt}.sprotty-node.selected circle,.sprotty-node.selected rect,.sprotty-node.selected line,.sprotty-edge.selected{stroke-width:2}.sprotty-port.selected rect{stroke-width:1}text{stroke-width:0;fill:var(--color-foreground);font-family:Arial,sans-serif;font-size:11pt;text-anchor:middle;dominant-baseline:central;-webkit-user-select:none;user-select:none}.sprotty-missing{stroke-width:1;stroke:var(--color-error);fill:var(--color-error)}.label-edit .label-validation-results{position:absolute;background-color:var(--color-primary);padding:8px;border-radius:5px}.label-edit .label-validation-results:before{width:16px;height:16px;background-size:16px 16px;margin-right:4px;content:"";display:inline-block;vertical-align:middle;background-color:var(--color-error);-webkit-mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M256%20512a256%20256%200%201%201%200-512%20256%20256%200%201%201%200%20512zm0-192a32%2032%200%201%200%200%2064%2032%2032%200%201%200%200-64zm0-192c-18.2%200-32.7%2015.5-31.4%2033.7l7.4%20104c.9%2012.6%2011.4%2022.3%2023.9%2022.3%2012.6%200%2023-9.7%2023.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z'/%3e%3c/svg%3e");mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M256%20512a256%20256%200%201%201%200-512%20256%20256%200%201%201%200%20512zm0-192a32%2032%200%201%200%200%2064%2032%2032%200%201%200%200-64zm0-192c-18.2%200-32.7%2015.5-31.4%2033.7l7.4%20104c.9%2012.6%2011.4%2022.3%2023.9%2022.3%2012.6%200%2023-9.7%2023.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z'/%3e%3c/svg%3e")}.dfd-node-annotation-ui{white-space:nowrap}.dfd-node-annotation-ui p{margin:12px}.dfd-node-annotation-ui i.fa{margin-right:5px}.command-palette{transition:opacity .2s ease-in-out;display:flex;flex-direction:column;row-gap:4px;width:350px}.command-palette input{color:var(--color-foreground);background:var(--color-primary)}.command-palette-suggestions-holder{width:100%}.command-palette-suggestion{display:grid;grid-template-columns:24px 1fr 24px 0px;background:var(--color-primary);overflow:visible;height:20px;min-width:100%;white-space:nowrap;width:100%;cursor:pointer}.command-palette-suggestion:hover,.command-palette-suggestion.selected{background:var(--color-background)}.command-palette-suggestion-children{position:relative;top:0;right:0;display:none;background:var(--color-primary);width:fit-content;height:fit-content;border-left:4px solid var(--color-spacer);box-shadow:0 4px 8px #0003,0 6px 20px #00000030}.command-palette-suggestion:hover>.command-palette-suggestion-children,.command-palette-suggestion.expanded>.command-palette-suggestion-children{display:block}.command-palette .fa-solid{text-align:center}.command-palette{transition:opacity .3s linear;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;display:flex;align-items:center}.command-palette input{width:100%;display:flex}.command-palette span.loading{position:absolute;right:5px}.command-palette-suggestions{background:#fff;z-index:1000;overflow:auto;box-sizing:border-box;border:1px solid rgba(60,60,60,.6);box-shadow:0 4px 8px #0003,0 6px 20px #00000030}.command-palette-suggestions .icon{padding-right:.3em;display:flex;align-self:center}.command-palette-suggestions em{font-weight:700;font-style:normal}.command-palette-suggestions>div{padding:0 4px;display:flex}.command-palette-suggestions .group{background:#eee}.command-palette-suggestions>div:hover:not(.group),.command-palette-suggestions>div.selected{cursor:pointer}.command-palette-suggestions>div:hover:not(.group){background:#e0e0e0}.command-palette-suggestions>div.selected{background:#bbdefb}div.settings-ui{left:20px;bottom:70px;padding:10px}.settings-accordion-icon:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M195.1%209.5C198.1-5.3%20211.2-16%20226.4-16l59.8%200c15.2%200%2028.3%2010.7%2031.3%2025.5L332%2079.5c14.1%206%2027.3%2013.7%2039.3%2022.8l67.8-22.5c14.4-4.8%2030.2%201.2%2037.8%2014.4l29.9%2051.8c7.6%2013.2%204.9%2029.8-6.5%2039.9L447%20233.3c.9%207.4%201.3%2015%201.3%2022.7s-.5%2015.3-1.3%2022.7l53.4%2047.5c11.4%2010.1%2014%2026.8%206.5%2039.9l-29.9%2051.8c-7.6%2013.1-23.4%2019.2-37.8%2014.4l-67.8-22.5c-12.1%209.1-25.3%2016.7-39.3%2022.8l-14.4%2069.9c-3.1%2014.9-16.2%2025.5-31.3%2025.5l-59.8%200c-15.2%200-28.3-10.7-31.3-25.5l-14.4-69.9c-14.1-6-27.2-13.7-39.3-22.8L73.5%20432.3c-14.4%204.8-30.2-1.2-37.8-14.4L5.8%20366.1c-7.6-13.2-4.9-29.8%206.5-39.9l53.4-47.5c-.9-7.4-1.3-15-1.3-22.7s.5-15.3%201.3-22.7L12.3%20185.8c-11.4-10.1-14-26.8-6.5-39.9L35.7%2094.1c7.6-13.2%2023.4-19.2%2037.8-14.4l67.8%2022.5c12.1-9.1%2025.3-16.7%2039.3-22.8L195.1%209.5zM256.3%20336a80%2080%200%201%200%20-.6-160%2080%2080%200%201%200%20.6%20160z'/%3e%3c/svg%3e");display:inline-block;filter:invert(var(--dark-mode));height:16px;width:16px;background-size:16px 16px;vertical-align:text-top;margin-right:4px}#settings-content{display:grid;gap:8px 6px;align-items:center}#settings-content>label{grid-column-start:1}#settings-content>input,#settings-content>select,#settings-content>label.switch{grid-column-start:2}#settings-content select{background-color:var(--color-background);color:var(--color-foreground);border:1px solid var(--color-foreground);border-radius:6px}.switch input:disabled+.slider{background-color:color-mix(in srgb,var(--color-primary) 50%,#555 50%)}.switch input:disabled+.slider:before{background-color:color-mix(in srgb,var(--color-background) 50%,#555 50%)}.switch{position:relative;display:inline-block;width:30px;height:17px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-background);-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:"";height:13px;width:13px;left:2px;bottom:2px;background-color:var(--color-primary);-webkit-transition:.3s;transition:.3s}input:checked+.slider{background-color:var(--color-background)}input:checked+.slider:before{-webkit-transform:translateX(13px);-ms-transform:translateX(13px);transform:translate(13px);background-color:var(--color-foreground)}.slider.round{border-radius:17px}.slider.round:before{border-radius:50%}.tool-palette{top:40px;padding:3px;right:40px;-webkit-user-select:none;user-select:none;display:grid;grid-template-columns:1fr 1fr 1fr}.tool-palette .tool{width:32px;height:32px;border-radius:5px;padding:2px;margin:2px}.tool-palette .tool svg line,.tool-palette .tool svg path,.tool-palette .tool svg rect,.tool-palette .tool svg circle{stroke:var(--color-foreground);fill:transparent}.tool-palette .tool svg .fill{fill:var(--color-foreground)}.tool-palette .tool svg text{fill:var(--color-foreground);font-size:10px;font-family:sans-serif;text-anchor:middle;dominant-baseline:central}.tool-palette .tool:hover{cursor:pointer;background-color:var(--color-tool-palette-hover)}.tool-palette .tool.active{background-color:var(--color-tool-palette-selected)}.tool-palette .tool .shortcut{position:relative;bottom:16px;left:-4px;font-size:.75em;transition:opacity .3s ease-in-out;opacity:0}body.help-enabled .tool-palette .tool .shortcut{opacity:1}div.constraint-menu{right:20px;bottom:20px;padding:10px}.accordion-content:has(.monaco-editor.focused) *{overflow:visible}#constraint-menu-expand-title{padding-right:85px}#run-button-container{position:absolute;right:6px;bottom:6px;width:80px;z-index:50}#run-button{background-color:green;color:#fff;border:none;border-radius:8px;padding:5px 10px;text-align:center;text-decoration:none;display:inline-block;width:100%;cursor:pointer}#run-button:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20448%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M91.2%2036.9c-12.4-6.8-27.4-6.5-39.6%20.7S32%2057.9%2032%2072l0%20368c0%2014.1%207.5%2027.2%2019.6%2034.4s27.2%207.5%2039.6%20.7l336-184c12.8-7%2020.8-20.5%2020.8-35.1s-8-28.1-20.8-35.1l-336-184z'/%3e%3c/svg%3e");display:inline-block;filter:invert(1);height:16px;width:16px;background-size:16px 16px;vertical-align:text-top}#constraint-menu-input{min-width:300px}#constraint-menu-input *{overflow:visible}#constraint-menu-input .overflow-guard{overflow:hidden}#validation-label{height:1rem;color:var(--color-error)}#validation-label.valid{color:var(--color-valid)}#constraint-menu-list{grid-row-start:1;grid-row-end:2;grid-column-start:2;overflow:scroll;max-height:210px}#constraint-menu-list *{color:var(--color-foreground)}.constrain-label input{background-color:var(--color-background);text-align:center;border:1px solid var(--color-foreground);border-radius:15px;padding:3px;margin:4px}.constrain-label.selected input{border:2px solid var(--color-foreground)}.constrain-label button{background-color:transparent;border:none;cursor:pointer;padding:0}.constraint-add{padding:0;border:none;background-color:transparent;cursor:pointer;display:flex;align-items:center;gap:5px}#constraint-options-button{position:absolute;top:6px;right:6px;background:transparent;border:none;font-size:1.2em;cursor:pointer;color:var(--color-foreground);padding:2px}#constraint-options-menu{position:absolute;top:30px;right:6px;background:var(--color-background);border:1px solid var(--color-foreground);border-radius:4px;padding:8px;z-index:100;box-shadow:0 2px 6px #0003}#constraint-options-menu .options-item{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:.9em;color:var(--color-foreground)}#constraint-options-menu .options-item:last-child{margin-bottom:0}.assignment-edit-ui{position:absolute;padding:10px;-webkit-user-select:none;user-select:none;background:var(--color-primary)}.assignment-edit-ui div.unavailable-inputs{padding-bottom:5px}.assignment-edit-ui div.validation-label.validation-error{color:var(--color-error)}.assignment-edit-ui div.validation-label.validation-success{color:var(--color-valid)}.violation-ui{right:20px;bottom:70px;padding:10px;max-width:30vw}.violation-ui .tab-pane{display:none;font-size:13px;max-width:100%}.violation-ui .tab-pane.active{display:block}.violation-ui .violation-tabs{display:flex;margin-bottom:10px}.violation-ui .tab-btn{flex:1;padding:5px;cursor:pointer;border:none;background:none;font-size:12px;color:var(--sprotty-label-color)}.violation-ui .tab-btn.active{border-bottom:2px solid #007acc;font-weight:700}.violation-ui #ai-api-key{background-color:var(--color-background);color:var(--color-foreground);border:1px solid var(--color-foreground);border-radius:6px}.violation-ui .api-key-container{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;margin-bottom:15px;padding:5px}.violation-ui .api-key-container label{font-size:11px;font-weight:700;white-space:nowrap}.violation-ui .api-key-container input{width:100%;padding:4px 8px;font-size:12px;border:1px solid var(--color-foreground);border-radius:3px;background:var(--sprotty-input-background, var(--color-background));color:var(--sprotty-label-color);box-sizing:border-box}.violation-ui .button-container{display:flex;justify-content:flex-end;margin-bottom:20px}.violation-ui .generate-btn{background-color:var(--sprotty-button-background, #007acc);color:var(--sprotty-button-foreground, #ffffff);border:none;padding:6px 12px;font-size:12px;border-radius:4px;cursor:pointer}.violation-ui .summary-text{width:100%;display:block;white-space:normal;word-wrap:break-word;overflow-wrap:anywhere;max-height:250px;overflow-y:auto}.violation-ui .summary-text p{margin:0;display:block;width:100%;white-space:normal}.violation-ui .status-info{display:block;width:100%;color:#636e72;font-style:italic;font-size:.9em;line-height:1.4;text-align:center;padding:20px 10px;box-sizing:border-box;margin:0 auto}.violation-ui .violation-item{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1);text-align:left} diff --git a/deploy/online-shop/assets/monaco-editor-B8Nwu8CH.css b/deploy/online-shop/assets/monaco-editor-B8Nwu8CH.css new file mode 100644 index 00000000..fa4c03b9 --- /dev/null +++ b/deploy/online-shop/assets/monaco-editor-B8Nwu8CH.css @@ -0,0 +1 @@ +.monaco-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,system-ui,Ubuntu,Droid Sans,sans-serif;--monaco-monospace-font: "SF Mono", Monaco, Menlo, Consolas, "Ubuntu Mono", "Liberation Mono", "DejaVu Sans Mono", "Courier New", monospace}.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-hover p{margin:0}.monaco-aria-container{position:absolute!important;top:0;height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%)}.monaco-editor,.monaco-diff-editor .synthetic-focus,.monaco-diff-editor [tabindex="0"]:focus,.monaco-diff-editor [tabindex="-1"]:focus,.monaco-diff-editor button:focus,.monaco-diff-editor input[type=button]:focus,.monaco-diff-editor input[type=checkbox]:focus,.monaco-diff-editor input[type=search]:focus,.monaco-diff-editor input[type=text]:focus,.monaco-diff-editor select:focus,.monaco-diff-editor textarea:focus{outline-width:1px;outline-style:solid;outline-offset:-1px;outline-color:var(--vscode-focusBorder);opacity:1}.monaco-workbench .workbench-hover{position:relative;font-size:13px;line-height:19px;z-index:40;overflow:hidden;max-width:700px;background:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px;color:var(--vscode-editorHoverWidget-foreground);box-shadow:0 2px 8px var(--vscode-widget-shadow)}.monaco-workbench .workbench-hover hr{border-bottom:none}.monaco-workbench .workbench-hover:not(.skip-fade-in){animation:fadein .1s linear}.monaco-workbench .workbench-hover.compact{font-size:12px}.monaco-workbench .workbench-hover.compact .hover-contents{padding:2px 8px}.monaco-workbench .workbench-hover-container.locked .workbench-hover{outline:1px solid var(--vscode-editorHoverWidget-border)}.monaco-workbench .workbench-hover-container.locked .workbench-hover:focus,.monaco-workbench .workbench-hover-lock:focus{outline:1px solid var(--vscode-focusBorder)}.monaco-workbench .workbench-hover-container.locked .workbench-hover-lock:hover{background:var(--vscode-toolbar-hoverBackground)}.monaco-workbench .workbench-hover-pointer{position:absolute;z-index:41;pointer-events:none}.monaco-workbench .workbench-hover-pointer:after{content:"";position:absolute;width:5px;height:5px;background-color:var(--vscode-editorHoverWidget-background);border-right:1px solid var(--vscode-editorHoverWidget-border);border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-workbench .locked .workbench-hover-pointer:after{width:4px;height:4px;border-right-width:2px;border-bottom-width:2px}.monaco-workbench .workbench-hover-pointer.left{left:-3px}.monaco-workbench .workbench-hover-pointer.right{right:3px}.monaco-workbench .workbench-hover-pointer.top{top:-3px}.monaco-workbench .workbench-hover-pointer.bottom{bottom:3px}.monaco-workbench .workbench-hover-pointer.left:after{transform:rotate(135deg)}.monaco-workbench .workbench-hover-pointer.right:after{transform:rotate(315deg)}.monaco-workbench .workbench-hover-pointer.top:after{transform:rotate(225deg)}.monaco-workbench .workbench-hover-pointer.bottom:after{transform:rotate(45deg)}.monaco-workbench .workbench-hover a{color:var(--vscode-textLink-foreground)}.monaco-workbench .workbench-hover a:focus{outline:1px solid;outline-offset:-1px;text-decoration:underline;outline-color:var(--vscode-focusBorder)}.monaco-workbench .workbench-hover a:hover,.monaco-workbench .workbench-hover a:active{color:var(--vscode-textLink-activeForeground)}.monaco-workbench .workbench-hover code{background:var(--vscode-textCodeBlock-background)}.monaco-workbench .workbench-hover .hover-row .actions{background:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-workbench .workbench-hover.right-aligned{left:1px}.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions{flex-direction:row-reverse}.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions .action-container{margin-right:0;margin-left:16px}.monaco-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.monaco-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity .8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.scrollbar>.slider{background:var(--vscode-scrollbarSlider-background)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-scrollable-element>.scrollbar>.slider.active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-hover{cursor:default;position:absolute;overflow:hidden;user-select:text;-webkit-user-select:text;box-sizing:border-box;animation:fadein .1s linear;line-height:1.5em;white-space:var(--vscode-hover-whiteSpace, normal)}.monaco-hover.hidden{display:none}.monaco-hover a:hover:not(.disabled){cursor:pointer}.monaco-hover .hover-contents:not(.html-hover-contents){padding:4px 8px}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:var(--vscode-hover-maxWidth, 500px);word-wrap:break-word}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100%}.monaco-hover p,.monaco-hover .code,.monaco-hover ul,.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{margin:8px 0}.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{line-height:1.1}.monaco-hover code{font-family:var(--monaco-monospace-font)}.monaco-hover hr{box-sizing:border-box;border-left:0px;border-right:0px;margin:4px -8px -4px;height:1px}.monaco-hover p:first-child,.monaco-hover .code:first-child,.monaco-hover ul:first-child{margin-top:0}.monaco-hover p:last-child,.monaco-hover .code:last-child,.monaco-hover ul:last-child{margin-bottom:0}.monaco-hover ul,.monaco-hover ol{padding-left:20px}.monaco-hover li>p{margin-bottom:0}.monaco-hover li>ul{margin-top:0}.monaco-hover code{border-radius:3px;padding:0 .4em}.monaco-hover .monaco-tokenized-source{white-space:var(--vscode-hover-sourceWhiteSpace, pre-wrap)}.monaco-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-hover .hover-row.status-bar .info{font-style:italic;padding:0 8px}.monaco-hover .hover-row.status-bar .actions{display:flex;padding:0 8px;width:100%}.monaco-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-hover .hover-row.status-bar .actions .action-container a{color:var(--vscode-textLink-foreground);text-decoration:var(--text-link-decoration)}.monaco-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-hover .hover-contents a.code-link:hover,.monaco-hover .hover-contents a.code-link{color:inherit}.monaco-hover .hover-contents a.code-link:before{content:"("}.monaco-hover .hover-contents a.code-link:after{content:")"}.monaco-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground)}.monaco-hover .hover-contents a.code-link>span:hover{color:var(--vscode-textLink-activeForeground)}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span{margin-bottom:4px;display:inline-block}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span.codicon{margin-bottom:2px}.monaco-hover-content .action-container a{-webkit-user-select:none;user-select:none}.monaco-hover-content .action-container.disabled{pointer-events:none;opacity:.4;cursor:default}.monaco-editor .rendered-markdown kbd{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow);vertical-align:middle;padding:1px 3px}.rendered-markdown li:has(input[type=checkbox]){list-style-type:none}.monaco-aria-container{position:absolute;left:-999em}.context-view{position:absolute}.context-view.fixed{all:initial;font-family:inherit;font-size:13px;position:fixed;color:inherit}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{user-select:none;-webkit-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list .monaco-scrollable-element>.scrollbar.vertical,.monaco-pane-view>.monaco-split-view2.vertical>.monaco-scrollable-element>.scrollbar.vertical{z-index:14}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-single,.monaco-list.selection-multiple{outline:0!important}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute;z-index:1000}.monaco-list-type-filter-message{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-select-box-dropdown-padding{--dropdown-padding-top: 1px;--dropdown-padding-bottom: 1px}.hc-black .monaco-select-box-dropdown-padding,.hc-light .monaco-select-box-dropdown-padding{--dropdown-padding-top: 3px;--dropdown-padding-bottom: 4px}.monaco-select-box-dropdown-container{display:none;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown *{margin:0}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown a:focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown code{line-height:15px;font-family:var(--monaco-monospace-font)}.monaco-select-box-dropdown-container.visible{display:flex;flex-direction:column;text-align:left;width:1px;overflow:hidden;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container{flex:0 0 auto;align-self:flex-start;padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom);padding-left:1px;padding-right:1px;width:100%;overflow:hidden;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane{padding:5px}.hc-black .monaco-select-box-dropdown-container>.select-box-dropdown-list-container{padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom)}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row{cursor:pointer}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-text{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-detail{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left;opacity:.7}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-decorator-right{text-overflow:ellipsis;overflow:hidden;padding-right:10px;white-space:nowrap;float:right}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.visually-hidden{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control{flex:1 1 auto;align-self:flex-start;opacity:0}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div{overflow:hidden;max-height:0px}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div>.option-text-width-control{padding-left:4px;padding-right:8px;white-space:nowrap}.monaco-select-box{width:100%;cursor:pointer;border-radius:2px}.monaco-select-box-dropdown-container{font-size:13px;font-weight:400;text-transform:none}.monaco-action-bar .action-item.select-container{cursor:default}.monaco-action-bar .action-item .monaco-select-box{cursor:pointer;min-width:100px;min-height:18px;padding:2px 23px 2px 8px}.mac .monaco-action-bar .action-item .monaco-select-box{font-size:11px;border-radius:5px}.monaco-action-bar{white-space:nowrap;height:100%}.monaco-action-bar .actions-container{display:flex;margin:0 auto;padding:0;height:100%;width:100%;align-items:center}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar .action-item{display:block;align-items:center;justify-content:center;cursor:pointer;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar .action-item .icon,.monaco-action-bar .action-item .codicon{display:block}.monaco-action-bar .action-item .codicon{display:flex;align-items:center;width:16px;height:16px}.monaco-action-bar .action-label{display:flex;font-size:11px;padding:3px;border-radius:5px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:before,.monaco-action-bar .action-item.disabled .action-label:hover{color:var(--vscode-disabledForeground)}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:.8em;margin-right:.8em}.monaco-action-bar .action-item .action-label.separator{width:1px;height:16px;margin:5px 4px!important;cursor:default;min-width:1px;padding:0;background-color:#bbb}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;flex:1;max-width:170px;min-width:60px;display:flex;align-items:center;justify-content:center;margin-right:10px}.monaco-action-bar .action-item.action-dropdown-item{display:flex}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator{display:flex;align-items:center;cursor:default}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator>div{width:1px}.monaco-dropdown{height:100%;padding:0}.monaco-dropdown>.dropdown-label{cursor:pointer;height:100%;display:flex;align-items:center;justify-content:center}.monaco-dropdown>.dropdown-label>.action-label.disabled{cursor:default}.monaco-dropdown-with-primary{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-primary>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.monaco-action-bar .action-item.menu-entry .action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-action-bar .action-item.menu-entry.text-only .action-label{color:var(--vscode-descriptionForeground);overflow:hidden;border-radius:2px}.monaco-action-bar .action-item.menu-entry.text-only.use-comma:not(:last-of-type) .action-label:after{content:", "}.monaco-action-bar .action-item.menu-entry.text-only+.action-item:not(.text-only)>.monaco-dropdown .action-label{color:var(--vscode-descriptionForeground)}.monaco-dropdown-with-default{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-default>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-default>.action-container.menu-entry>.action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.quick-input-widget{font-size:13px}.quick-input-widget .monaco-highlighted-label .highlight{color:#0066bf}.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight{color:#9dddff}.vs-dark .quick-input-widget .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .quick-input-widget .monaco-highlighted-label .highlight{color:#f38518}.hc-light .quick-input-widget .monaco-highlighted-label .highlight{color:#0f4a85}.monaco-keybinding>.monaco-keybinding-key{background-color:#ddd6;border:solid 1px rgba(204,204,204,.4);border-bottom-color:#bbb6;box-shadow:inset 0 -1px #bbb6;color:#555}.hc-black .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px rgb(111,195,223);box-shadow:none;color:#fff}.hc-light .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px #0F4A85;box-shadow:none;color:#292929}.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:#8080802b;border:solid 1px rgba(51,51,51,.6);border-bottom-color:#4449;box-shadow:inset 0 -1px #4449;color:#ccc}.monaco-custom-toggle{margin-left:2px;float:left;cursor:pointer;overflow:hidden;width:20px;height:20px;border-radius:3px;border:1px solid transparent;padding:1px;box-sizing:border-box;user-select:none;-webkit-user-select:none}.monaco-custom-toggle:hover{background-color:var(--vscode-inputOption-hoverBackground)}.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{border:1px dashed var(--vscode-focusBorder)}.hc-black .monaco-custom-toggle,.hc-light .monaco-custom-toggle,.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{background:none}.monaco-custom-toggle.monaco-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px!important}.monaco-action-bar .checkbox-action-item{display:flex;align-items:center;border-radius:2px;padding-right:2px}.monaco-action-bar .checkbox-action-item:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-action-bar .checkbox-action-item>.monaco-custom-toggle.monaco-checkbox{margin-right:4px}.monaco-action-bar .checkbox-action-item>.checkbox-label{font-size:12px}.monaco-custom-toggle.monaco-checkbox:not(.checked):before{visibility:hidden}.quick-input-widget{position:absolute;width:600px;z-index:2550;left:50%;margin-left:-300px;-webkit-app-region:no-drag;border-radius:6px}.quick-input-titlebar{display:flex;align-items:center;border-top-right-radius:5px;border-top-left-radius:5px}.quick-input-left-action-bar{display:flex;margin-left:4px;flex:1}.quick-input-inline-action-bar{margin:2px 0 0 5px}.quick-input-title{padding:3px 0;text-align:center;text-overflow:ellipsis;overflow:hidden}.quick-input-right-action-bar{display:flex;margin-right:4px;flex:1}.quick-input-right-action-bar>.actions-container{justify-content:flex-end}.quick-input-titlebar .monaco-action-bar .action-label.codicon{background-position:center;background-repeat:no-repeat;padding:2px}.quick-input-description{margin:6px 6px 6px 11px}.quick-input-header .quick-input-description{margin:4px 2px;flex:1}.quick-input-header{display:flex;padding:8px 6px 2px}.quick-input-widget.hidden-input .quick-input-header{padding:0;margin-bottom:0}.quick-input-and-message{display:flex;flex-direction:column;flex-grow:1;min-width:0;position:relative}.quick-input-check-all{align-self:center;margin:0}.quick-input-filter{flex-grow:1;display:flex;position:relative}.quick-input-box{flex-grow:1}.quick-input-widget.show-checkboxes .quick-input-box,.quick-input-widget.show-checkboxes .quick-input-message{margin-left:5px}.quick-input-visible-count{position:absolute;left:-10000px}.quick-input-count{align-self:center;position:absolute;right:4px;display:flex;align-items:center}.quick-input-count .monaco-count-badge{vertical-align:middle;padding:2px 4px;border-radius:2px;min-height:auto;line-height:normal}.quick-input-action{margin-left:6px}.quick-input-action .monaco-text-button{font-size:11px;padding:0 6px;display:flex;height:25px;align-items:center}.quick-input-message{margin-top:-1px;padding:5px;overflow-wrap:break-word}.quick-input-message>.codicon{margin:0 .2em;vertical-align:text-bottom}.quick-input-message a{color:inherit}.quick-input-progress.monaco-progress-container{position:relative}.quick-input-list{line-height:22px}.quick-input-widget.hidden-input .quick-input-list{margin-top:4px;padding-bottom:4px}.quick-input-list .monaco-list{overflow:hidden;max-height:440px;padding-bottom:5px}.quick-input-list .monaco-scrollable-element{padding:0 5px}.quick-input-list .quick-input-list-entry{box-sizing:border-box;overflow:hidden;display:flex;padding:0 6px}.quick-input-list .quick-input-list-entry.quick-input-list-separator-border{border-top-width:1px;border-top-style:solid}.quick-input-list .monaco-list-row{border-radius:3px}.quick-input-list .monaco-list-row[data-index="0"] .quick-input-list-entry.quick-input-list-separator-border{border-top-style:none}.quick-input-list .quick-input-list-label{overflow:hidden;display:flex;height:100%;flex:1}.quick-input-list .quick-input-list-checkbox{align-self:center;margin:0}.quick-input-list .quick-input-list-icon{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;display:flex;align-items:center;justify-content:center}.quick-input-list .quick-input-list-rows{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%;flex:1;margin-left:5px}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-rows{margin-left:10px}.quick-input-widget .quick-input-list .quick-input-list-checkbox{display:none}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-checkbox{display:inline}.quick-input-list .quick-input-list-rows>.quick-input-list-row{display:flex;align-items:center}.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label,.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.quick-input-list .quick-input-list-rows>.quick-input-list-row .codicon[class*=codicon-]{vertical-align:text-bottom}.quick-input-list .quick-input-list-rows .monaco-highlighted-label>span{opacity:1}.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding{margin-right:8px}.quick-input-list .quick-input-list-label-meta{opacity:.7;line-height:normal;text-overflow:ellipsis;overflow:hidden}.quick-input-list .monaco-list .monaco-list-row .monaco-highlighted-label .highlight{font-weight:700;background-color:unset;color:var(--vscode-list-highlightForeground)!important}.quick-input-list .monaco-list .monaco-list-row.focused .monaco-highlighted-label .highlight{color:var(--vscode-list-focusHighlightForeground)!important}.quick-input-list .quick-input-list-entry .quick-input-list-separator{margin-right:4px}.quick-input-list .quick-input-list-entry-action-bar{display:flex;flex:0;overflow:visible}.quick-input-list .quick-input-list-entry-action-bar .action-label{display:none}.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon{margin-right:4px;padding:2px}.quick-input-list .quick-input-list-entry-action-bar{margin-top:1px}.quick-input-list .quick-input-list-entry-action-bar{margin-right:4px}.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label,.quick-input-list .quick-input-list-entry.focus-inside .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.passive-focused .quick-input-list-entry-action-bar .action-label{display:flex}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator{color:inherit}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key{background:none}.quick-input-list .quick-input-list-separator-as-item{padding:4px 6px;font-size:12px}.quick-input-list .quick-input-list-separator-as-item .label-name{font-weight:600}.quick-input-list .quick-input-list-separator-as-item .label-description{opacity:1!important}.quick-input-list .monaco-tree-sticky-row .quick-input-list-entry.quick-input-list-separator-as-item.quick-input-list-separator-border{border-top-style:none}.quick-input-list .monaco-tree-sticky-row{padding:0 5px}.quick-input-list .monaco-tl-twistie{display:none!important}.monaco-text-button{box-sizing:border-box;display:flex;width:100%;padding:4px;border-radius:2px;text-align:center;cursor:pointer;justify-content:center;align-items:center;border:1px solid var(--vscode-button-border, transparent);line-height:18px}.monaco-text-button:focus{outline-offset:2px!important}.monaco-text-button:hover{text-decoration:none!important}.monaco-button.disabled:focus,.monaco-button.disabled{opacity:.4!important;cursor:default}.monaco-text-button .codicon{margin:0 .2em;color:inherit!important}.monaco-text-button.monaco-text-button-with-short-label{flex-direction:row;flex-wrap:wrap;padding:0 4px;overflow:hidden;height:28px}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label{flex-basis:100%}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{flex-grow:1;width:0;overflow:hidden}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label,.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{display:flex;justify-content:center;align-items:center;font-weight:400;font-style:inherit;padding:4px 0}.monaco-button-dropdown{display:flex;cursor:pointer}.monaco-button-dropdown.disabled{cursor:default}.monaco-button-dropdown>.monaco-button:focus{outline-offset:-1px!important}.monaco-button-dropdown.disabled>.monaco-button.disabled,.monaco-button-dropdown.disabled>.monaco-button.disabled:focus,.monaco-button-dropdown.disabled>.monaco-button-dropdown-separator{opacity:.4!important}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-right-width:0!important}.monaco-button-dropdown .monaco-button-dropdown-separator{padding:4px 0;cursor:default}.monaco-button-dropdown .monaco-button-dropdown-separator>div{height:100%;width:1px}.monaco-button-dropdown>.monaco-button.monaco-dropdown-button{border:1px solid var(--vscode-button-border, transparent);border-left-width:0!important;border-radius:0 2px 2px 0;display:flex;align-items:center}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-radius:2px 0 0 2px}.monaco-description-button{display:flex;flex-direction:column;align-items:center;margin:4px 5px}.monaco-description-button .monaco-button-description{font-style:italic;font-size:11px;padding:4px 20px}.monaco-description-button .monaco-button-label,.monaco-description-button .monaco-button-description{display:flex;justify-content:center;align-items:center}.monaco-description-button .monaco-button-label>.codicon,.monaco-description-button .monaco-button-description>.codicon{margin:0 .2em;color:inherit!important}.monaco-button.default-colors,.monaco-button-dropdown.default-colors>.monaco-button{color:var(--vscode-button-foreground);background-color:var(--vscode-button-background)}.monaco-button.default-colors:hover,.monaco-button-dropdown.default-colors>.monaco-button:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-button.default-colors.secondary,.monaco-button-dropdown.default-colors>.monaco-button.secondary{color:var(--vscode-button-secondaryForeground);background-color:var(--vscode-button-secondaryBackground)}.monaco-button.default-colors.secondary:hover,.monaco-button-dropdown.default-colors>.monaco-button.secondary:hover{background-color:var(--vscode-button-secondaryHoverBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator{background-color:var(--vscode-button-background);border-top:1px solid var(--vscode-button-border);border-bottom:1px solid var(--vscode-button-border)}.monaco-button-dropdown.default-colors .monaco-button.secondary+.monaco-button-dropdown-separator{background-color:var(--vscode-button-secondaryBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator>div{background-color:var(--vscode-button-separator)}.monaco-count-badge{padding:3px 6px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;box-sizing:border-box}.monaco-count-badge.long{padding:2px 3px;border-radius:2px;min-height:auto;line-height:normal}.monaco-progress-container{width:100%;height:2px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:2px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;transition:width .1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{animation-name:progress;animation-duration:4s;animation-iteration-count:infinite;transform:translateZ(0);animation-timing-function:linear}.monaco-progress-container.infinite.infinite-long-running .progress-bit{animation-timing-function:steps(100)}@keyframes progress{0%{transform:translate(0) scaleX(1)}50%{transform:translate(2500%) scaleX(3)}to{transform:translate(4900%) scaleX(1)}}.monaco-inputbox{position:relative;display:block;padding:0;box-sizing:border-box;border-radius:2px;font-size:inherit}.monaco-inputbox>.ibwrapper>.input,.monaco-inputbox>.ibwrapper>.mirror{padding:4px 6px}.monaco-inputbox>.ibwrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.ibwrapper>.input{display:inline-block;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.ibwrapper>input{text-overflow:ellipsis}.monaco-inputbox>.ibwrapper>textarea.input{display:block;scrollbar-width:none;outline:none}.monaco-inputbox>.ibwrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.ibwrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.ibwrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;box-sizing:border-box;padding:.4em;font-size:12px;line-height:17px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.monaco-findInput.highlight-0 .controls,.hc-light .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-0 .1s linear 0s}.monaco-findInput.highlight-1 .controls,.hc-light .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-1 .1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-dark-0 .1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-dark-1 .1s linear 0s}@keyframes monaco-findInput-highlight-0{0%{background:#fdff00cc}to{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:#fdff00cc}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:#ffffff70}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:#ffffff70}99%{background:transparent}}:root{--vscode-sash-size: 4px;--vscode-sash-hover-size: 4px}.monaco-sash{position:absolute;z-index:35;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.vertical{cursor:ew-resize;top:0;width:var(--vscode-sash-size);height:100%}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:var(--vscode-sash-size)}.monaco-sash:not(.disabled)>.orthogonal-drag-handle{content:" ";height:calc(var(--vscode-sash-size) * 2);width:calc(var(--vscode-sash-size) * 2);z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.start,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.end{cursor:nwse-resize}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.end,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.start{cursor:nesw-resize}.monaco-sash.vertical>.orthogonal-drag-handle.start{left:calc(var(--vscode-sash-size) * -.5);top:calc(var(--vscode-sash-size) * -1)}.monaco-sash.vertical>.orthogonal-drag-handle.end{left:calc(var(--vscode-sash-size) * -.5);bottom:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.start{top:calc(var(--vscode-sash-size) * -.5);left:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.end{top:calc(var(--vscode-sash-size) * -.5);right:calc(var(--vscode-sash-size) * -1)}.monaco-sash:before{content:"";pointer-events:none;position:absolute;width:100%;height:100%;background:transparent}.monaco-workbench:not(.reduce-motion) .monaco-sash:before{transition:background-color .1s ease-out}.monaco-sash.hover:before,.monaco-sash.active:before{background:var(--vscode-sash-hoverBorder)}.monaco-sash.vertical:before{width:var(--vscode-sash-hover-size);left:calc(50% - (var(--vscode-sash-hover-size) / 2))}.monaco-sash.horizontal:before{height:var(--vscode-sash-hover-size);top:calc(50% - (var(--vscode-sash-hover-size) / 2))}.pointer-events-disabled{pointer-events:none!important}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:#0ff3}.monaco-sash.debug:not(.disabled)>.orthogonal-drag-handle{background:red}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:initial}.monaco-split-view2>.monaco-scrollable-element{width:100%;height:100%}.monaco-split-view2>.monaco-scrollable-element>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view{white-space:initial;position:absolute}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{content:" ";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-table{display:flex;flex-direction:column;position:relative;height:100%;width:100%;white-space:nowrap;overflow:hidden}.monaco-table>.monaco-split-view2{border-bottom:1px solid transparent}.monaco-table>.monaco-list{flex:1}.monaco-table-tr{display:flex;height:100%}.monaco-table-th{width:100%;height:100%;font-weight:700;overflow:hidden;text-overflow:ellipsis}.monaco-table-th,.monaco-table-td{box-sizing:border-box;flex-shrink:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{content:"";position:absolute;left:calc(var(--vscode-sash-size) / 2);width:0;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2,.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{transition:border-color .2s ease-out}.monaco-tl-row{display:flex;height:100%;align-items:center;position:relative}.monaco-tl-row.disabled{cursor:default}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;box-sizing:border-box;height:100%;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-tl-indent>.indent-guide{transition:border-color .1s linear}.monaco-tl-twistie,.monaco-tl-contents{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;flex-shrink:0;width:16px;display:flex!important;align-items:center;justify-content:center;transform:translate(3px)}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie:before{border-radius:20px}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-tree-item-loading:before{animation:codicon-spin 1.25s steps(30) infinite}.monaco-tree-type-filter{position:absolute;top:0;display:flex;padding:3px;max-width:200px;z-index:100;margin:0 6px;border:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-workbench:not(.reduce-motion) .monaco-tree-type-filter{transition:top .3s}.monaco-tree-type-filter.disabled{top:-40px!important}.monaco-tree-type-filter-grab{display:flex!important;align-items:center;justify-content:center;cursor:grab;margin-right:2px}.monaco-tree-type-filter-grab.grabbing{cursor:grabbing}.monaco-tree-type-filter-input{flex:1}.monaco-tree-type-filter-input .monaco-inputbox{height:23px}.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.input,.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.mirror{padding:2px 4px}.monaco-tree-type-filter-input .monaco-findInput>.controls{top:2px}.monaco-tree-type-filter-actionbar{margin-left:4px}.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label{padding:2px}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container{position:absolute;top:0;left:0;width:100%;height:0;z-index:13;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row.monaco-list-row{position:absolute;width:100%;opacity:1!important;overflow:hidden;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row:hover{background-color:var(--vscode-list-hoverBackground)!important;cursor:pointer}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty,.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty .monaco-tree-sticky-container-shadow{display:none}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow{position:absolute;bottom:-3px;left:0;height:0px;width:100%}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container[tabindex="0"]:focus{outline:none}.monaco-icon-label{display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit!important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;flex-shrink:0}.monaco-icon-label-iconpath{width:16px;height:16px;padding-left:2px;margin-top:2px;display:flex}.monaco-icon-label-container.disabled{color:var(--vscode-disabledForeground)}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-suffix-container>.label-suffix{opacity:.7;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;margin-left:.5em;font-size:.9em;white-space:pre}.monaco-icon-label.nowrap>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{white-space:nowrap}.vs .monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.95}.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{font-style:italic}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:.66}.monaco-icon-label.italic:after{font-style:italic}.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{text-decoration:line-through}.monaco-icon-label:after{opacity:.75;font-size:90%;font-weight:600;margin:auto 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description{opacity:.8}.monaco-keybinding{display:flex;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border-style:solid;border-width:1px;border-radius:3px;vertical-align:middle;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%;color:var(--vscode-editor-foreground);background-color:var(--vscode-editor-background);overflow-wrap:initial}.monaco-editor-background{background-color:var(--vscode-editor-background)}.monaco-editor .rangeHighlight{background-color:var(--vscode-editor-rangeHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-rangeHighlightBorder)}.monaco-editor.hc-black .rangeHighlight,.monaco-editor.hc-light .rangeHighlight{border-style:dotted}.monaco-editor .symbolHighlight{background-color:var(--vscode-editor-symbolHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-symbolHighlightBorder)}.monaco-editor.hc-black .symbolHighlight,.monaco-editor.hc-light .symbolHighlight{border-style:dotted}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .view-overlays>div,.monaco-editor .margin-view-overlays>div{position:absolute;width:100%}.monaco-editor .squiggly-error{border-bottom:4px double var(--vscode-editorError-border)}.monaco-editor .squiggly-error:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorError-background)}.monaco-editor .squiggly-warning{border-bottom:4px double var(--vscode-editorWarning-border)}.monaco-editor .squiggly-warning:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorWarning-background)}.monaco-editor .squiggly-info{border-bottom:4px double var(--vscode-editorInfo-border)}.monaco-editor .squiggly-info:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorInfo-background)}.monaco-editor .squiggly-hint{border-bottom:2px dotted var(--vscode-editorHint-border)}.monaco-editor.showUnused .squiggly-unnecessary{border-bottom:2px dashed var(--vscode-editorUnnecessaryCode-border)}.monaco-editor.showDeprecated .squiggly-inline-deprecated{text-decoration:line-through;text-decoration-color:var(--vscode-editor-foreground, inherit)}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent;z-index:-10}.monaco-editor .inputarea.ime-input{z-index:10;caret-color:var(--vscode-editorCursor-foreground);color:var(--vscode-editor-foreground)}.monaco-editor .margin-view-overlays .line-numbers{bottom:0;font-variant-numeric:tabular-nums;position:absolute;text-align:right;display:inline-block;vertical-align:middle;box-sizing:border-box;cursor:default}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .line-numbers{color:var(--vscode-editorLineNumber-foreground)}.monaco-editor .line-numbers.active-line-number{color:var(--vscode-editorLineNumber-activeForeground)}.monaco-editor .margin{background-color:var(--vscode-editorGutter-background)}.monaco-mouse-cursor-text{cursor:text}.monaco-editor .blockDecorations-container{position:absolute;top:0;pointer-events:none}.monaco-editor .blockDecorations-block{position:absolute;box-sizing:border-box}.monaco-editor .view-overlays .current-line,.monaco-editor .margin-view-overlays .current-line{display:block;position:absolute;left:0;top:0;box-sizing:border-box;height:100%}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute;height:100%}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .glyph-margin-widgets .cgmr{position:absolute;display:flex;align-items:center;justify-content:center}.monaco-editor .glyph-margin-widgets .cgmr.codicon-modifier-spin:before{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.monaco-editor .lines-content .core-guide{position:absolute;box-sizing:border-box;height:100%}.mtkcontrol{color:#fff!important;background:#960000!important}.mtkoverflow{background-color:var(--vscode-button-background, var(--vscode-editor-background));color:var(--vscode-button-foreground, var(--vscode-editor-foreground));border-width:1px;border-style:solid;border-color:var(--vscode-contrastBorder);border-radius:2px;padding:4px;cursor:pointer}.mtkoverflow:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{user-select:none;-webkit-user-select:none}.monaco-editor.mac .lines-content:hover,.monaco-editor.mac .view-line:hover,.monaco-editor.mac .view-lines:hover{user-select:text;-webkit-user-select:text;-ms-user-select:text}.monaco-editor.enable-user-select{user-select:initial;-webkit-user-select:initial}.monaco-editor .view-lines{white-space:nowrap}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .lines-content>.view-lines>.view-line>span{top:0;bottom:0;position:absolute}.monaco-editor .mtkw{color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .mtkz{display:inline-block;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover:hover .minimap-slider,.monaco-editor .minimap.slider-mouseover .minimap-slider.active{opacity:1}.monaco-editor .minimap-slider .minimap-slider-horizontal{background:var(--vscode-minimapSlider-background)}.monaco-editor .minimap-slider:hover .minimap-slider-horizontal{background:var(--vscode-minimapSlider-hoverBackground)}.monaco-editor .minimap-slider.active .minimap-slider-horizontal{background:var(--vscode-minimapSlider-activeBackground)}.monaco-editor .minimap-shadow-visible{box-shadow:var(--vscode-scrollbar-shadow) -6px 0 6px -6px inset}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor.no-minimap-shadow .minimap-shadow-visible{position:absolute;left:-1px;width:1px}.minimap.autohide{opacity:0;transition:opacity .5s}.minimap.autohide:hover{opacity:1}.monaco-editor .minimap{z-index:5}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0;box-shadow:1px 0 0 0 var(--vscode-editorRuler-foreground) inset}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .focused .selected-text{background-color:var(--vscode-editor-selectionBackground)}.monaco-editor .selected-text{background-color:var(--vscode-editor-inactiveSelectionBackground)}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor.hc-light .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-light .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-light .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-light .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;overflow:hidden;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{background:transparent!important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent!important}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent!important}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate}.cursor-phase{animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate}.monaco-editor .mwh{position:absolute;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .diff-hidden-lines-widget{width:100%}.monaco-editor .diff-hidden-lines{height:0px;transform:translateY(-10px);font-size:13px;line-height:14px}.monaco-editor .diff-hidden-lines:not(.dragging) .top:hover,.monaco-editor .diff-hidden-lines:not(.dragging) .bottom:hover,.monaco-editor .diff-hidden-lines .top.dragging,.monaco-editor .diff-hidden-lines .bottom.dragging{background-color:var(--vscode-focusBorder)}.monaco-editor .diff-hidden-lines .top,.monaco-editor .diff-hidden-lines .bottom{transition:background-color .1s ease-out;height:4px;background-color:transparent;background-clip:padding-box;border-bottom:2px solid transparent;border-top:4px solid transparent}.monaco-editor.draggingUnchangedRegion.canMoveTop:not(.canMoveBottom) *,.monaco-editor .diff-hidden-lines .top.canMoveTop:not(.canMoveBottom),.monaco-editor .diff-hidden-lines .bottom.canMoveTop:not(.canMoveBottom){cursor:n-resize!important}.monaco-editor.draggingUnchangedRegion:not(.canMoveTop).canMoveBottom *,.monaco-editor .diff-hidden-lines .top:not(.canMoveTop).canMoveBottom,.monaco-editor .diff-hidden-lines .bottom:not(.canMoveTop).canMoveBottom{cursor:s-resize!important}.monaco-editor.draggingUnchangedRegion.canMoveTop.canMoveBottom *,.monaco-editor .diff-hidden-lines .top.canMoveTop.canMoveBottom,.monaco-editor .diff-hidden-lines .bottom.canMoveTop.canMoveBottom{cursor:ns-resize!important}.monaco-editor .diff-hidden-lines .top{transform:translateY(4px)}.monaco-editor .diff-hidden-lines .bottom{transform:translateY(-6px)}.monaco-editor .diff-unchanged-lines{background:var(--vscode-diffEditor-unchangedCodeBackground)}.monaco-editor .noModificationsOverlay{z-index:1;background:var(--vscode-editor-background);display:flex;justify-content:center;align-items:center}.monaco-editor .diff-hidden-lines .center{background:var(--vscode-diffEditor-unchangedRegionBackground);color:var(--vscode-diffEditor-unchangedRegionForeground);overflow:hidden;display:block;text-overflow:ellipsis;white-space:nowrap;height:24px;box-shadow:inset 0 -5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow),inset 0 5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow)}.monaco-editor .diff-hidden-lines .center span.codicon{vertical-align:middle}.monaco-editor .diff-hidden-lines .center a:hover .codicon{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .diff-hidden-lines div.breadcrumb-item{cursor:pointer}.monaco-editor .diff-hidden-lines div.breadcrumb-item:hover{color:var(--vscode-editorLink-activeForeground)}.monaco-editor .movedOriginal,.monaco-editor .movedModified{border:2px solid var(--vscode-diffEditor-move-border)}.monaco-editor .movedOriginal.currentMove,.monaco-editor .movedModified.currentMove{border:2px solid var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path.currentMove{stroke:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path{pointer-events:visiblestroke}.monaco-diff-editor .moved-blocks-lines .arrow{fill:var(--vscode-diffEditor-move-border)}.monaco-diff-editor .moved-blocks-lines .arrow.currentMove{fill:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines .arrow-rectangle{fill:var(--vscode-editor-background)}.monaco-diff-editor .moved-blocks-lines{position:absolute;pointer-events:none}.monaco-diff-editor .moved-blocks-lines path{fill:none;stroke:var(--vscode-diffEditor-move-border);stroke-width:2}.monaco-editor .char-delete.diff-range-empty{margin-left:-1px;border-left:solid var(--vscode-diffEditor-removedTextBackground) 3px}.monaco-editor .char-insert.diff-range-empty{border-left:solid var(--vscode-diffEditor-insertedTextBackground) 3px}.monaco-editor .fold-unchanged{cursor:pointer}.monaco-diff-editor .diff-moved-code-block{display:flex;justify-content:flex-end;margin-top:-4px}.monaco-diff-editor .diff-moved-code-block .action-bar .action-label.codicon{width:12px;height:12px;font-size:12px}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor .diffOverview .diffViewport{z-index:10}.monaco-diff-editor.vs .diffOverview{background:#00000008}.monaco-diff-editor.vs-dark .diffOverview{background:#ffffff03}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar{background:#0000}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:#ababab66}.modified-in-monaco-diff-editor.hc-black .slider.active,.modified-in-monaco-diff-editor.hc-light .slider.active{background:none}.monaco-editor .insert-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-diff-editor .delete-sign{font-size:11px!important;opacity:.7!important;display:flex!important;align-items:center}.monaco-editor.hc-black .insert-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .delete-sign,.monaco-editor.hc-light .insert-sign,.monaco-diff-editor.hc-light .insert-sign,.monaco-editor.hc-light .delete-sign,.monaco-diff-editor.hc-light .delete-sign{opacity:1}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .inline-added-margin-view-zone{text-align:right}.monaco-editor .arrow-revert-change{z-index:10;position:absolute}.monaco-editor .arrow-revert-change:hover{cursor:pointer}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-editor .char-insert,.monaco-diff-editor .char-insert{background-color:var(--vscode-diffEditor-insertedTextBackground)}.monaco-editor .line-insert,.monaco-diff-editor .line-insert{background-color:var(--vscode-diffEditor-insertedLineBackground, var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .line-insert,.monaco-editor .char-insert{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-insertedTextBorder)}.monaco-editor.hc-black .line-insert,.monaco-editor.hc-light .line-insert,.monaco-editor.hc-black .char-insert,.monaco-editor.hc-light .char-insert{border-style:dashed}.monaco-editor .line-delete,.monaco-editor .char-delete{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-removedTextBorder)}.monaco-editor.hc-black .line-delete,.monaco-editor.hc-light .line-delete,.monaco-editor.hc-black .char-delete,.monaco-editor.hc-light .char-delete{border-style:dashed}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .gutter-insert,.monaco-diff-editor .gutter-insert{background-color:var(--vscode-diffEditorGutter-insertedLineBackground, var(--vscode-diffEditor-insertedLineBackground), var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .char-delete,.monaco-diff-editor .char-delete,.monaco-editor .inline-deleted-text{background-color:var(--vscode-diffEditor-removedTextBackground)}.monaco-editor .inline-deleted-text{text-decoration:line-through}.monaco-editor .line-delete,.monaco-diff-editor .line-delete{background-color:var(--vscode-diffEditor-removedLineBackground, var(--vscode-diffEditor-removedTextBackground))}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .gutter-delete,.monaco-diff-editor .gutter-delete{background-color:var(--vscode-diffEditorGutter-removedLineBackground, var(--vscode-diffEditor-removedLineBackground), var(--vscode-diffEditor-removedTextBackground))}.monaco-diff-editor.side-by-side .editor.modified{box-shadow:-6px 0 5px -5px var(--vscode-scrollbar-shadow);border-left:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor.side-by-side .editor.original{box-shadow:6px 0 5px -5px var(--vscode-scrollbar-shadow);border-right:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor .diffViewport{background:var(--vscode-scrollbarSlider-background)}.monaco-diff-editor .diffViewport:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-diff-editor .diffViewport:active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .diagonal-fill{background-image:linear-gradient(-45deg,var(--vscode-diffEditor-diagonalFill) 12.5%,#0000 12.5%,#0000 50%,var(--vscode-diffEditor-diagonalFill) 50%,var(--vscode-diffEditor-diagonalFill) 62.5%,#0000 62.5%,#0000 100%);background-size:8px 8px}.monaco-diff-editor .gutter{position:relative;overflow:hidden;flex-shrink:0;flex-grow:0}.monaco-diff-editor .gutter>div{position:absolute}.monaco-diff-editor .gutter .gutterItem{opacity:0;transition:opacity .7s}.monaco-diff-editor .gutter .gutterItem.showAlways{opacity:1;transition:none}.monaco-diff-editor .gutter .gutterItem.noTransition{transition:none}.monaco-diff-editor .gutter:hover .gutterItem{opacity:1;transition:opacity .1s ease-in-out}.monaco-diff-editor .gutter .gutterItem .background{position:absolute;height:100%;left:50%;width:1px;border-left:2px var(--vscode-menu-border) solid}.monaco-diff-editor .gutter .gutterItem .buttons{position:absolute;width:100%;display:flex;justify-content:center;align-items:center}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar{height:fit-content}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar{line-height:1}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container{width:fit-content;border-radius:4px;background:var(--vscode-editorGutter-commentRangeForeground)}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container .action-item:hover{background:var(--vscode-toolbar-hoverBackground)}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container .action-item .action-label{padding:1px 2px}.monaco-diff-editor .diff-hidden-lines-compact{display:flex;height:11px}.monaco-diff-editor .diff-hidden-lines-compact .line-left,.monaco-diff-editor .diff-hidden-lines-compact .line-right{height:1px;border-top:1px solid;border-color:var(--vscode-editorCodeLens-foreground);opacity:.5;margin:auto;width:100%}.monaco-diff-editor .diff-hidden-lines-compact .line-left{width:20px}.monaco-diff-editor .diff-hidden-lines-compact .text{color:var(--vscode-editorCodeLens-foreground);text-wrap:nowrap;font-size:11px;line-height:11px;margin:0 4px}.monaco-component.diff-review{user-select:none;-webkit-user-select:none;z-index:99}.monaco-diff-editor .diff-review{position:absolute}.monaco-component.diff-review .diff-review-line-number{text-align:right;display:inline-block;color:var(--vscode-editorLineNumber-foreground)}.monaco-component.diff-review .diff-review-summary{padding-left:10px}.monaco-component.diff-review .diff-review-shadow{position:absolute;box-shadow:var(--vscode-scrollbar-shadow) 0 -6px 6px -6px inset}.monaco-component.diff-review .diff-review-row{white-space:pre}.monaco-component.diff-review .diff-review-table{display:table;min-width:100%}.monaco-component.diff-review .diff-review-row{display:table-row;width:100%}.monaco-component.diff-review .diff-review-spacer{display:inline-block;width:10px;vertical-align:middle}.monaco-component.diff-review .diff-review-spacer>.codicon{font-size:9px!important}.monaco-component.diff-review .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px;z-index:100}.monaco-component.diff-review .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-component.diff-review .revertButton{cursor:pointer}.monaco-toolbar{height:100%}.monaco-toolbar .toolbar-toggle-more{display:inline-block;padding:0}.monaco-component.multiDiffEditor{background:var(--vscode-multiDiffEditor-background);position:relative;height:100%;width:100%;overflow-y:hidden}.monaco-component.multiDiffEditor>div{position:absolute;top:0;left:0;height:100%;width:100%}.monaco-component.multiDiffEditor>div.placeholder{visibility:hidden;display:grid;place-items:center;place-content:center}.monaco-component.multiDiffEditor>div.placeholder.visible{visibility:visible}.monaco-component.multiDiffEditor .active{--vscode-multiDiffEditor-border: var(--vscode-focusBorder)}.monaco-component.multiDiffEditor .multiDiffEntry{display:flex;flex-direction:column;flex:1;overflow:hidden}.monaco-component.multiDiffEditor .multiDiffEntry .collapse-button{margin:0 5px;cursor:pointer}.monaco-component.multiDiffEditor .multiDiffEntry .collapse-button a{display:block}.monaco-component.multiDiffEditor .multiDiffEntry .header{z-index:1000;background:var(--vscode-editor-background)}.monaco-component.multiDiffEditor .multiDiffEntry .header:not(.collapsed) .header-content{border-bottom:1px solid var(--vscode-sideBarSectionHeader-border)}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content{margin:8px 0 0;padding:4px 5px;border-top:1px solid var(--vscode-multiDiffEditor-border);display:flex;align-items:center;color:var(--vscode-foreground);background:var(--vscode-multiDiffEditor-headerBackground)}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content.shadow{box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path{display:flex;flex:1;min-width:0}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .title{font-size:14px;line-height:22px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .title.original{flex:1;min-width:0;text-overflow:ellipsis}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .status{font-weight:600;opacity:.75;margin:0 10px;line-height:22px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .actions{padding:0 8px}.monaco-component.multiDiffEditor .multiDiffEntry .editorParent{flex:1;display:flex;flex-direction:column;border-bottom:1px solid var(--vscode-multiDiffEditor-border);overflow:hidden}.monaco-component.multiDiffEditor .multiDiffEntry .editorContainer{flex:1}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .peekview-widget .head{box-sizing:border-box;display:flex;justify-content:space-between;flex-wrap:nowrap}.monaco-editor .peekview-widget .head .peekview-title{display:flex;align-items:baseline;font-size:13px;margin-left:20px;min-width:0;text-overflow:ellipsis;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title.clickable{cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:.9em;margin-left:.5em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monaco-editor .peekview-widget .head .peekview-title .dirname,.monaco-editor .peekview-widget .head .peekview-title .filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px;align-self:center}.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon{color:inherit!important}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px;background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-lineForeground)}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:inline-flex;width:100%;height:100%;color:var(--vscode-peekViewResult-fileForeground)}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground)!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight{background-color:var(--vscode-peekViewResult-matchHighlightBackground)}.monaco-editor .reference-zone-widget .preview .reference-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .reference-zone-widget .preview .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight{border:1px dotted var(--vscode-contrastActiveBorder, transparent);box-sizing:border-box}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px;z-index:10000}.monaco-editor .monaco-editor-overlaymessage.below{padding-bottom:0;padding-top:8px;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{animation:fadeIn .15s ease-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{animation:fadeOut .1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:2px 4px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-inputValidation-infoBorder);border-radius:3px}.monaco-editor .monaco-editor-overlaymessage .message p{margin-block:0px}.monaco-editor .monaco-editor-overlaymessage .message a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-editor-overlaymessage .message a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor.hc-black .monaco-editor-overlaymessage .message,.monaco-editor.hc-light .monaco-editor-overlaymessage .message{border-width:2px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0!important;height:0!important;border-color:transparent;border-style:solid;z-index:1000;border-width:8px;position:absolute;left:2px}.monaco-editor .monaco-editor-overlaymessage .anchor.top{border-bottom-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage .anchor.below{border-top-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top,.monaco-editor .monaco-editor-overlaymessage.below .anchor.below{display:none}.monaco-editor .monaco-editor-overlaymessage.below .anchor.top{display:inherit;top:-8px}.monaco-editor .inlineSuggestionsHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineSuggestionsHints a,.monaco-editor .inlineSuggestionsHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineSuggestionsHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a{display:flex;min-width:19px;justify-content:center}.monaco-editor .inlineSuggestionStatusBarItemLabel{margin-right:2px}.colorpicker-widget{height:190px;user-select:none;-webkit-user-select:none}.colorpicker-color-decoration,.hc-light .colorpicker-color-decoration{border:solid .1em #000;box-sizing:border-box;margin:.1em .2em 0;width:.8em;height:.8em;line-height:.8em;display:inline-block;cursor:pointer}.hc-black .colorpicker-color-decoration,.vs-dark .colorpicker-color-decoration{border:solid .1em #eee}.colorpicker-header{display:flex;height:24px;position:relative;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-header .picked-color{width:240px;display:flex;align-items:center;justify-content:center;line-height:24px;cursor:pointer;color:#fff;flex:1;white-space:nowrap;overflow:hidden}.colorpicker-header .picked-color .picked-color-presentation{white-space:nowrap;margin-left:5px;margin-right:5px}.colorpicker-header .picked-color .codicon{color:inherit;font-size:14px}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.standalone-colorpicker{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header.standalone-colorpicker{border-bottom:none}.colorpicker-header .close-button{cursor:pointer;background-color:var(--vscode-editorHoverWidget-background);border-left:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header .close-button-inner-div{width:100%;height:100%;text-align:center}.colorpicker-header .close-button-inner-div:hover{background-color:var(--vscode-toolbar-hoverBackground)}.colorpicker-header .close-icon{padding:3px}.colorpicker-body{display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid rgb(255,255,255);border-radius:100%;box-shadow:0 0 2px #000c;position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .standalone-strip{width:25px;height:122px}.colorpicker-body .hue-strip{position:relative;margin-left:8px;cursor:grab;background:linear-gradient(to bottom,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:grab;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;box-sizing:border-box;border:1px solid rgba(255,255,255,.71);box-shadow:0 0 1px #000000d9}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.colorpicker-body .standalone-strip .standalone-overlay{height:122px;pointer-events:none}.standalone-colorpicker-body{display:block;border:1px solid transparent;border-bottom:1px solid var(--vscode-editorHoverWidget-border);overflow:hidden}.colorpicker-body .insert-button{position:absolute;height:20px;width:58px;padding:0;right:8px;bottom:8px;background:var(--vscode-button-background);color:var(--vscode-button-foreground);border-radius:2px;border:none;cursor:pointer}.colorpicker-body .insert-button:hover{background:var(--vscode-button-hoverBackground)}.monaco-editor .hoverHighlight{background-color:var(--vscode-editor-hoverHighlightBackground)}.monaco-editor .monaco-hover-content{padding-right:2px;padding-bottom:2px;box-sizing:border-box}.monaco-editor .monaco-hover{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px}.monaco-editor .monaco-hover a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .monaco-hover .hover-row{display:flex}.monaco-editor .monaco-hover .hover-row .hover-row-contents{min-width:0;display:flex;flex-direction:column}.monaco-editor .monaco-hover .hover-row .verbosity-actions{display:flex;flex-direction:column;padding-left:5px;padding-right:5px;justify-content:end;border-right:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon{cursor:pointer;font-size:11px}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon.enabled{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon.disabled{opacity:.6}.monaco-editor .monaco-hover .hover-row .actions{background-color:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-editor .monaco-hover code{background-color:var(--vscode-textCodeBlock-background)}@font-face{font-family:codicon;font-display:block;src:url(./codicon-DCmgc-ay.ttf) format("truetype")}.codicon[class*=codicon-]{font: 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none}.codicon-wrench-subaction{opacity:.5}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin,.codicon-notebook-state-executing.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:.4}.codicon-loading,.codicon-tree-item-loading:before{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.monaco-editor .codicon.codicon-symbol-array,.monaco-workbench .codicon.codicon-symbol-array{color:var(--vscode-symbolIcon-arrayForeground)}.monaco-editor .codicon.codicon-symbol-boolean,.monaco-workbench .codicon.codicon-symbol-boolean{color:var(--vscode-symbolIcon-booleanForeground)}.monaco-editor .codicon.codicon-symbol-class,.monaco-workbench .codicon.codicon-symbol-class{color:var(--vscode-symbolIcon-classForeground)}.monaco-editor .codicon.codicon-symbol-method,.monaco-workbench .codicon.codicon-symbol-method{color:var(--vscode-symbolIcon-methodForeground)}.monaco-editor .codicon.codicon-symbol-color,.monaco-workbench .codicon.codicon-symbol-color{color:var(--vscode-symbolIcon-colorForeground)}.monaco-editor .codicon.codicon-symbol-constant,.monaco-workbench .codicon.codicon-symbol-constant{color:var(--vscode-symbolIcon-constantForeground)}.monaco-editor .codicon.codicon-symbol-constructor,.monaco-workbench .codicon.codicon-symbol-constructor{color:var(--vscode-symbolIcon-constructorForeground)}.monaco-editor .codicon.codicon-symbol-value,.monaco-workbench .codicon.codicon-symbol-value,.monaco-editor .codicon.codicon-symbol-enum,.monaco-workbench .codicon.codicon-symbol-enum{color:var(--vscode-symbolIcon-enumeratorForeground)}.monaco-editor .codicon.codicon-symbol-enum-member,.monaco-workbench .codicon.codicon-symbol-enum-member{color:var(--vscode-symbolIcon-enumeratorMemberForeground)}.monaco-editor .codicon.codicon-symbol-event,.monaco-workbench .codicon.codicon-symbol-event{color:var(--vscode-symbolIcon-eventForeground)}.monaco-editor .codicon.codicon-symbol-field,.monaco-workbench .codicon.codicon-symbol-field{color:var(--vscode-symbolIcon-fieldForeground)}.monaco-editor .codicon.codicon-symbol-file,.monaco-workbench .codicon.codicon-symbol-file{color:var(--vscode-symbolIcon-fileForeground)}.monaco-editor .codicon.codicon-symbol-folder,.monaco-workbench .codicon.codicon-symbol-folder{color:var(--vscode-symbolIcon-folderForeground)}.monaco-editor .codicon.codicon-symbol-function,.monaco-workbench .codicon.codicon-symbol-function{color:var(--vscode-symbolIcon-functionForeground)}.monaco-editor .codicon.codicon-symbol-interface,.monaco-workbench .codicon.codicon-symbol-interface{color:var(--vscode-symbolIcon-interfaceForeground)}.monaco-editor .codicon.codicon-symbol-key,.monaco-workbench .codicon.codicon-symbol-key{color:var(--vscode-symbolIcon-keyForeground)}.monaco-editor .codicon.codicon-symbol-keyword,.monaco-workbench .codicon.codicon-symbol-keyword{color:var(--vscode-symbolIcon-keywordForeground)}.monaco-editor .codicon.codicon-symbol-module,.monaco-workbench .codicon.codicon-symbol-module{color:var(--vscode-symbolIcon-moduleForeground)}.monaco-editor .codicon.codicon-symbol-namespace,.monaco-workbench .codicon.codicon-symbol-namespace{color:var(--vscode-symbolIcon-namespaceForeground)}.monaco-editor .codicon.codicon-symbol-null,.monaco-workbench .codicon.codicon-symbol-null{color:var(--vscode-symbolIcon-nullForeground)}.monaco-editor .codicon.codicon-symbol-number,.monaco-workbench .codicon.codicon-symbol-number{color:var(--vscode-symbolIcon-numberForeground)}.monaco-editor .codicon.codicon-symbol-object,.monaco-workbench .codicon.codicon-symbol-object{color:var(--vscode-symbolIcon-objectForeground)}.monaco-editor .codicon.codicon-symbol-operator,.monaco-workbench .codicon.codicon-symbol-operator{color:var(--vscode-symbolIcon-operatorForeground)}.monaco-editor .codicon.codicon-symbol-package,.monaco-workbench .codicon.codicon-symbol-package{color:var(--vscode-symbolIcon-packageForeground)}.monaco-editor .codicon.codicon-symbol-property,.monaco-workbench .codicon.codicon-symbol-property{color:var(--vscode-symbolIcon-propertyForeground)}.monaco-editor .codicon.codicon-symbol-reference,.monaco-workbench .codicon.codicon-symbol-reference{color:var(--vscode-symbolIcon-referenceForeground)}.monaco-editor .codicon.codicon-symbol-snippet,.monaco-workbench .codicon.codicon-symbol-snippet{color:var(--vscode-symbolIcon-snippetForeground)}.monaco-editor .codicon.codicon-symbol-string,.monaco-workbench .codicon.codicon-symbol-string{color:var(--vscode-symbolIcon-stringForeground)}.monaco-editor .codicon.codicon-symbol-struct,.monaco-workbench .codicon.codicon-symbol-struct{color:var(--vscode-symbolIcon-structForeground)}.monaco-editor .codicon.codicon-symbol-text,.monaco-workbench .codicon.codicon-symbol-text{color:var(--vscode-symbolIcon-textForeground)}.monaco-editor .codicon.codicon-symbol-type-parameter,.monaco-workbench .codicon.codicon-symbol-type-parameter{color:var(--vscode-symbolIcon-typeParameterForeground)}.monaco-editor .codicon.codicon-symbol-unit,.monaco-workbench .codicon.codicon-symbol-unit{color:var(--vscode-symbolIcon-unitForeground)}.monaco-editor .codicon.codicon-symbol-variable,.monaco-workbench .codicon.codicon-symbol-variable{color:var(--vscode-symbolIcon-variableForeground)}.monaco-editor .lightBulbWidget{display:flex;align-items:center;justify-content:center}.monaco-editor .lightBulbWidget:hover{cursor:pointer}.monaco-editor .lightBulbWidget.codicon-light-bulb,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle-autofix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .lightBulbWidget.codicon-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.monaco-editor .lightBulbWidget:before{position:relative;z-index:2}.monaco-editor .lightBulbWidget:after{position:absolute;top:0;left:0;content:"";display:block;width:100%;height:100%;opacity:.3;z-index:1}.monaco-editor .glyph-margin-widgets .cgmr[class*=codicon-gutter-lightbulb]{display:block;cursor:pointer}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb,.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-auto-fix,.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-aifix-auto-fix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.action-widget{font-size:13px;min-width:160px;max-width:80vw;z-index:40;display:block;width:100%;border:1px solid var(--vscode-editorWidget-border)!important;border-radius:5px;background-color:var(--vscode-editorActionList-background);color:var(--vscode-editorActionList-foreground);padding:4px;box-shadow:0 2px 8px var(--vscode-widget-shadow)}.context-view-block{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:-1}.context-view-pointerBlock{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:2}.action-widget .monaco-list{user-select:none;-webkit-user-select:none;border:none!important;border-width:0!important}.action-widget .monaco-list:focus:before{outline:0!important}.action-widget .monaco-list .monaco-scrollable-element{overflow:visible}.action-widget .monaco-list .monaco-list-row{padding:0 10px;white-space:nowrap;cursor:pointer;touch-action:none;width:100%;border-radius:4px}.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled){background-color:var(--vscode-editorActionList-focusBackground)!important;color:var(--vscode-editorActionList-focusForeground);outline:1px solid var(--vscode-menu-selectionBorder, transparent);outline-offset:-1px}.action-widget .monaco-list-row.group-header{color:var(--vscode-descriptionForeground)!important;font-weight:600;font-size:12px}.action-widget .monaco-list-row.group-header:not(:first-of-type){margin-top:2px}.action-widget .monaco-list .group-header,.action-widget .monaco-list .option-disabled,.action-widget .monaco-list .option-disabled:before,.action-widget .monaco-list .option-disabled .focused,.action-widget .monaco-list .option-disabled .focused:before{cursor:default!important;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background-color:transparent!important;outline:0 solid!important}.action-widget .monaco-list-row.action{display:flex;gap:8px;align-items:center}.action-widget .monaco-list-row.action.option-disabled,.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,.action-widget .monaco-list-row.action.option-disabled .codicon,.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled{color:var(--vscode-disabledForeground)}.action-widget .monaco-list-row.action:not(.option-disabled) .codicon{color:inherit}.action-widget .monaco-list-row.action .title{flex:1;overflow:hidden;text-overflow:ellipsis}.action-widget .monaco-list-row.action .monaco-keybinding>.monaco-keybinding-key{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow)}.action-widget .action-widget-action-bar{background-color:var(--vscode-editorActionList-background);border-top:1px solid var(--vscode-editorHoverWidget-border);margin-top:2px}.action-widget .action-widget-action-bar:before{display:block;content:"";width:100%}.action-widget .action-widget-action-bar .actions-container{padding:3px 8px 0}.action-widget-action-bar .action-label{color:var(--vscode-textLink-activeForeground);font-size:12px;line-height:22px;padding:0;pointer-events:all}.action-widget-action-bar .action-item{margin-right:16px;pointer-events:none}.action-widget-action-bar .action-label:hover{background-color:transparent!important}.monaco-action-bar .actions-container.highlight-toggled .action-label.checked{background:var(--vscode-actionBar-toggledBackground)!important}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;user-select:text;-webkit-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:flex;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-activeForeground)}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer;color:var(--vscode-textLink-activeForeground)}.monaco-editor .zone-widget .codicon.codicon-error,.markers-panel .marker-icon.error,.markers-panel .marker-icon .codicon.codicon-error,.text-search-provider-messages .providerMessage .codicon.codicon-error,.extensions-viewlet>.extensions .codicon.codicon-error,.extension-editor .codicon.codicon-error,.preferences-editor .codicon.codicon-error{color:var(--vscode-problemsErrorIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-warning,.markers-panel .marker-icon.warning,.markers-panel .marker-icon .codicon.codicon-warning,.text-search-provider-messages .providerMessage .codicon.codicon-warning,.extensions-viewlet>.extensions .codicon.codicon-warning,.extension-editor .codicon.codicon-warning,.preferences-editor .codicon.codicon-warning{color:var(--vscode-problemsWarningIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-info,.markers-panel .marker-icon.info,.markers-panel .marker-icon .codicon.codicon-info,.text-search-provider-messages .providerMessage .codicon.codicon-info,.extensions-viewlet>.extensions .codicon.codicon-info,.extension-editor .codicon.codicon-info,.preferences-editor .codicon.codicon-info{color:var(--vscode-problemsInfoIcon-foreground)}.monaco-editor .suggest-preview-additional-widget{white-space:nowrap}.monaco-editor .suggest-preview-additional-widget .content-spacer{color:transparent;white-space:pre}.monaco-editor .suggest-preview-additional-widget .button{display:inline-block;cursor:pointer;text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-hidden{opacity:0;font-size:0}.monaco-editor .ghost-text-decoration,.monaco-editor .suggest-preview-text .ghost-text{font-style:italic}.monaco-editor .ghost-text-decoration,.monaco-editor .ghost-text-decoration-preview,.monaco-editor .suggest-preview-text .ghost-text{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.monaco-editor .snippet-placeholder{min-width:2px;outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetTabstopHighlightBorder, transparent)}.monaco-editor .finish-snippet-placeholder{outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetFinalTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetFinalTabstopHighlightBorder, transparent)}.monaco-editor .suggest-widget{width:430px;z-index:40;display:flex;flex-direction:column;border-radius:3px}.monaco-editor .suggest-widget.message{flex-direction:row;align-items:center}.monaco-editor .suggest-widget,.monaco-editor .suggest-details{flex:0 1 auto;width:100%;border-style:solid;border-width:1px;border-color:var(--vscode-editorSuggestWidget-border);background-color:var(--vscode-editorSuggestWidget-background)}.monaco-editor.hc-black .suggest-widget,.monaco-editor.hc-black .suggest-details,.monaco-editor.hc-light .suggest-widget,.monaco-editor.hc-light .suggest-details{border-width:2px}.monaco-editor .suggest-widget .suggest-status-bar{box-sizing:border-box;display:none;flex-flow:row nowrap;justify-content:space-between;width:100%;font-size:80%;padding:0 4px;border-top:1px solid var(--vscode-editorSuggestWidget-border);overflow:hidden}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{display:flex}.monaco-editor .suggest-widget .suggest-status-bar .left{padding-right:8px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label{color:var(--vscode-editorSuggestWidgetStatus-foreground)}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label{margin-right:0}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label:after{content:", ";margin-right:.3em}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%;width:100%}.monaco-editor .suggest-widget .monaco-list{user-select:none;-webkit-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:flex;-mox-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused{color:var(--vscode-editorSuggestWidget-selectedForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon{color:var(--vscode-editorSuggestWidget-selectedIconForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused)>.contents>.main .monaco-icon-label{color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-highlightForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-focusHighlightForeground)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:6px;right:2px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label{overflow:hidden;text-overflow:ellipsis;opacity:.6}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:12px;opacity:.4;font-size:85%;line-height:initial;text-overflow:ellipsis;overflow:hidden;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{font-size:85%;margin-left:1.1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label)>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-shrink:1;flex-grow:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:0}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.left>.monaco-icon-label{max-width:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;flex-shrink:4;max-width:70%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:inline-block}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:flex;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 .3em;border:.1em solid #000;width:.7em;height:.7em;display:inline-block}.monaco-editor .suggest-details-container{z-index:41}.monaco-editor .suggest-details{display:flex;flex-direction:column;cursor:default;color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-details.focused{border-color:var(--vscode-focusBorder)}.monaco-editor .suggest-details a{color:var(--vscode-textLink-foreground)}.monaco-editor .suggest-details a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .suggest-details code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .suggest-details.no-docs{display:none}.monaco-editor .suggest-details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-details>.monaco-scrollable-element>.body{box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type{flex:2;overflow:hidden;text-overflow:ellipsis;opacity:.7;white-space:pre;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type.auto-wrap{white-space:normal;word-break:break-all}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-details.no-type>.monaco-scrollable-element>.body>.docs{margin-right:24px;overflow:hidden}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:initial;min-height:calc(1rem + 8px)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .monaco-tokenized-source{white-space:pre}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .codicon{vertical-align:sub}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-details ul,.monaco-editor .suggest-details ol{padding-left:20px}.monaco-editor .suggest-details p code{font-family:var(--monaco-monospace-font)}.monaco-link{color:var(--vscode-textLink-foreground)}.monaco-link:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .sticky-widget{overflow:hidden}.monaco-editor .sticky-widget-line-numbers{float:left;background-color:inherit}.monaco-editor .sticky-widget-lines-scrollable{display:inline-block;position:absolute;overflow:hidden;width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit}.monaco-editor .sticky-widget-lines{position:absolute;background-color:inherit}.monaco-editor .sticky-line-number,.monaco-editor .sticky-line-content{color:var(--vscode-editorLineNumber-foreground);white-space:nowrap;display:inline-block;position:absolute;background-color:inherit}.monaco-editor .sticky-line-number .codicon-folding-expanded,.monaco-editor .sticky-line-number .codicon-folding-collapsed{float:right;transition:var(--vscode-editorStickyScroll-foldingOpacityTransition)}.monaco-editor .sticky-line-content{width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit;white-space:nowrap}.monaco-editor .sticky-line-number-inner{display:inline-block;text-align:right}.monaco-editor .sticky-widget{border-bottom:1px solid var(--vscode-editorStickyScroll-border)}.monaco-editor .sticky-line-content:hover{background-color:var(--vscode-editorStickyScrollHover-background);cursor:pointer}.monaco-editor .sticky-widget{width:100%;box-shadow:var(--vscode-editorStickyScroll-shadow) 0 4px 2px -2px;z-index:4;background-color:var(--vscode-editorStickyScroll-background);right:initial!important}.monaco-editor .sticky-widget.peek{background-color:var(--vscode-peekViewEditorStickyScroll-background)}.monaco-editor div.inline-edits-widget{--widget-color: var(--vscode-notifications-background)}.monaco-editor div.inline-edits-widget .promptEditor .monaco-editor{--vscode-editor-placeholder-foreground: var(--vscode-editorGhostText-foreground)}.monaco-editor div.inline-edits-widget .toolbar,.monaco-editor div.inline-edits-widget .promptEditor{opacity:0;transition:opacity .2s ease-in-out}:is(.monaco-editor div.inline-edits-widget:hover,.monaco-editor div.inline-edits-widget.focused) .toolbar,:is(.monaco-editor div.inline-edits-widget:hover,.monaco-editor div.inline-edits-widget.focused) .promptEditor{opacity:1}.monaco-editor div.inline-edits-widget .preview .monaco-editor{--vscode-editor-background: var(--widget-color)}.monaco-editor div.inline-edits-widget .preview .monaco-editor .mtk1{color:var(--vscode-editorGhostText-foreground)}.monaco-editor div.inline-edits-widget .preview .monaco-editor .view-overlays .current-line-exact,.monaco-editor div.inline-edits-widget .preview .monaco-editor .current-line-margin{border:none}.monaco-editor div.inline-edits-widget svg .gradient-start{stop-color:var(--vscode-editor-background)}.monaco-editor div.inline-edits-widget svg .gradient-stop{stop-color:var(--widget-color)}.monaco-editor .inlineEditSideBySide{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);white-space:pre}.monaco-editor .inlineEditHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineEditHints a,.monaco-editor .inlineEditHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineEditHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineEditHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineEditStatusBarItemLabel{margin-right:2px}.monaco-editor .inline-edit-remove{background-color:var(--vscode-editorGhostText-background);font-style:italic}.monaco-editor .inline-edit-hidden{opacity:0;font-size:0}.monaco-editor .inline-edit-decoration,.monaco-editor .suggest-preview-text .inline-edit{font-style:italic}.monaco-editor .inline-completion-text-to-replace{text-decoration:underline;text-underline-position:under}.monaco-editor .inline-edit-decoration,.monaco-editor .inline-edit-decoration-preview,.monaco-editor .suggest-preview-text .inline-edit{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.post-edit-widget{box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:1px solid var(--vscode-widget-border, transparent);border-radius:4px;background-color:var(--vscode-editorWidget-background);overflow:hidden}.post-edit-widget .monaco-button{padding:2px;border:none;border-radius:0}.post-edit-widget .monaco-button:hover{background-color:var(--vscode-button-secondaryHoverBackground)!important}.post-edit-widget .monaco-button .codicon{margin:0}.editor-banner{box-sizing:border-box;cursor:default;width:100%;font-size:12px;display:flex;overflow:visible;height:26px;background:var(--vscode-banner-background)}.editor-banner .icon-container{display:flex;flex-shrink:0;align-items:center;padding:0 6px 0 10px}.editor-banner .icon-container.custom-icon{background-repeat:no-repeat;background-position:center center;background-size:16px;width:16px;padding:0;margin:0 6px 0 10px}.editor-banner .message-container{display:flex;align-items:center;line-height:26px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-banner .message-container p{margin-block-start:0;margin-block-end:0}.editor-banner .message-actions-container{flex-grow:1;flex-shrink:0;line-height:26px;margin:0 4px}.editor-banner .message-actions-container a.monaco-button{width:inherit;margin:2px 8px;padding:0 12px}.editor-banner .message-actions-container a{padding:3px;margin-left:12px;text-decoration:underline}.editor-banner .action-container{padding:0 10px 0 6px}.editor-banner{background-color:var(--vscode-banner-background)}.editor-banner,.editor-banner .action-container .codicon,.editor-banner .message-actions-container .monaco-link{color:var(--vscode-banner-foreground)}.editor-banner .icon-container .codicon{color:var(--vscode-banner-iconForeground)}.monaco-editor .rename-box{z-index:100;color:inherit;border-radius:4px}.monaco-editor .rename-box.preview{padding:4px 4px 0}.monaco-editor .rename-box .rename-input-with-button{padding:3px;border-radius:2px;width:calc(100% - 8px)}.monaco-editor .rename-box .rename-input{width:calc(100% - 8px);padding:0}.monaco-editor .rename-box .rename-input:focus{outline:none}.monaco-editor .rename-box .rename-suggestions-button{display:flex;align-items:center;padding:3px;background-color:transparent;border:none;border-radius:5px;cursor:pointer}.monaco-editor .rename-box .rename-suggestions-button:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-editor .rename-box .rename-candidate-list-container .monaco-list-row{border-radius:2px}.monaco-editor .rename-box .rename-label{display:none;opacity:.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .parameter-hints-widget{z-index:39;display:flex;flex-direction:column;line-height:1.5em;cursor:default;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.hc-black .monaco-editor .parameter-hints-widget,.hc-light .monaco-editor .parameter-hints-widget{border-width:2px}.monaco-editor .parameter-hints-widget>.phwrapper{max-width:440px;display:flex;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.multiple .body:before{content:"";display:block;height:100%;position:absolute;opacity:.5;border-left:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .monaco-scrollable-element,.monaco-editor .parameter-hints-widget .body{display:flex;flex:1;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px;position:relative}.monaco-editor .parameter-hints-widget .signature.has-docs:after{content:"";display:block;position:absolute;left:0;width:100%;padding-top:4px;opacity:.5;border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget .code{font-family:var(--vscode-parameterHintsWidget-editorFontFamily),var(--vscode-parameterHintsWidget-editorFontFamilyDefault)}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs a{color:var(--vscode-textLink-foreground)}.monaco-editor .parameter-hints-widget .docs a:hover{color:var(--vscode-textLink-activeForeground);cursor:pointer}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:initial}.monaco-editor .parameter-hints-widget .docs code{font-family:var(--monaco-monospace-font);border-radius:3px;padding:0 .4em;background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source,.monaco-editor .parameter-hints-widget .docs .code{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .controls{display:none;flex-direction:column;align-items:center;min-width:22px;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{color:var(--vscode-editorHoverWidget-highlightForeground);font-weight:700}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:.5em}.monaco-editor .focused .selectionHighlight{background-color:var(--vscode-editor-selectionHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-selectionHighlightBorder)}.monaco-editor.hc-black .focused .selectionHighlight,.monaco-editor.hc-light .focused .selectionHighlight{border-style:dotted}.monaco-editor .wordHighlight{background-color:var(--vscode-editor-wordHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightBorder)}.monaco-editor.hc-black .wordHighlight,.monaco-editor.hc-light .wordHighlight{border-style:dotted}.monaco-editor .wordHighlightStrong{background-color:var(--vscode-editor-wordHighlightStrongBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightStrongBorder)}.monaco-editor.hc-black .wordHighlightStrong,.monaco-editor.hc-light .wordHighlightStrong{border-style:dotted}.monaco-editor .wordHighlightText{background-color:var(--vscode-editor-wordHighlightTextBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightTextBorder)}.monaco-editor.hc-black .wordHighlightText,.monaco-editor.hc-light .wordHighlightText{border-style:dotted}.monaco-editor .find-widget{position:absolute;z-index:35;height:33px;overflow:hidden;line-height:19px;transition:transform .2s linear;padding:0 4px;box-sizing:border-box;transform:translateY(calc(-100% - 10px));box-shadow:0 0 8px 2px var(--vscode-widget-shadow);color:var(--vscode-editorWidget-foreground);border-left:1px solid var(--vscode-widget-border);border-right:1px solid var(--vscode-widget-border);border-bottom:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px;background-color:var(--vscode-editorWidget-background)}.monaco-workbench.reduce-motion .monaco-editor .find-widget{transition:transform 0ms linear}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px;outline-color:var(--vscode-focusBorder)}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:3px 25px 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:flex;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{display:flex;flex:initial;margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button{width:16px;height:16px;padding:3px;border-radius:5px;flex:initial;margin-left:3px;background-position:center center;background-repeat:no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}.monaco-editor .find-widget .codicon-find-selection{width:22px;height:22px;padding:3px;border-radius:5px}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;border-radius:0;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{color:var(--vscode-disabledForeground);cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:flex;vertical-align:middle;flex:auto;flex-grow:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .find-widget.no-results .matchesCount{color:var(--vscode-errorForeground)}.monaco-editor .findMatch{animation-duration:0;animation-name:inherit!important;background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor .currentFindMatch{background-color:var(--vscode-editor-findMatchBackground);border:2px solid var(--vscode-editor-findMatchBorder);padding:1px;box-sizing:border-box}.monaco-editor .findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor .find-widget .monaco-sash{left:0!important;background-color:var(--vscode-editorWidget-resizeBorder, var(--vscode-editorWidget-border))}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-editor .find-widget .button:not(.disabled):hover,.monaco-editor .find-widget .codicon-find-selection:hover{background-color:var(--vscode-toolbar-hoverBackground)!important}.monaco-editor.findMatch{background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor.currentFindMatch{background-color:var(--vscode-editor-findMatchBackground)}.monaco-editor.findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor.findMatch{background-color:var(--vscode-editorWidget-background)}.monaco-editor .find-widget>.button.codicon-widget-close{position:absolute;top:5px;right:4px}.monaco-editor .findOptionsWidget{background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground);box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:2px solid var(--vscode-contrastBorder)}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis;white-space:nowrap;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize);padding-right:calc(var(--vscode-editorCodeLens-fontSize)*.5);font-feature-settings:var(--vscode-editorCodeLens-fontFeatureSettings);font-family:var(--vscode-editorCodeLens-fontFamily),var(--vscode-editorCodeLens-fontFamilyDefault)}.monaco-editor .codelens-decoration>span,.monaco-editor .codelens-decoration>a{user-select:none;-webkit-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration>a:hover .codicon{color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor!important;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize)}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{animation:fadein .1s linear}.monaco-editor .unicode-highlight{border:1px solid var(--vscode-editorUnicodeHighlight-border);background-color:var(--vscode-editorUnicodeHighlight-background);box-sizing:border-box}.monaco-editor{--vscode-editor-placeholder-foreground: var(--vscode-editorGhostText-foreground)}.monaco-editor .editorPlaceholder{top:0;position:absolute;overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap;pointer-events:none;color:var(--vscode-editor-placeholder-foreground)}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .linked-editing-decoration{background-color:var(--vscode-editor-linkedEditingBackground);min-width:1px}.monaco-editor.vs .valueSetReplacement{outline:solid 2px var(--vscode-editorBracketMatch-border)}.inline-editor-progress-decoration{display:inline-block;width:1em;height:1em}.inline-progress-widget{display:flex!important;justify-content:center;align-items:center}.inline-progress-widget .icon{font-size:80%!important}.inline-progress-widget:hover .icon{font-size:90%!important;animation:none}.inline-progress-widget:hover .icon:before{content:var(--vscode-icon-x-content);font-family:var(--vscode-icon-x-font-family)}.monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-editor .margin-view-overlays .codicon-folding-collapsed{cursor:pointer;opacity:0;transition:opacity .5s;display:flex;align-items:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-collapsed{transition:initial}.monaco-editor .margin-view-overlays:hover .codicon,.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon.codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons{opacity:1}.monaco-editor .inline-folded:after{color:var(--vscode-editor-foldPlaceholderForeground);margin:.1em .2em 0;content:"⋯";display:inline;line-height:1em;cursor:pointer}.monaco-editor .folded-background{background-color:var(--vscode-editor-foldBackground)}.monaco-editor .cldr.codicon.codicon-folding-expanded,.monaco-editor .cldr.codicon.codicon-folding-collapsed,.monaco-editor .cldr.codicon.codicon-folding-manual-expanded,.monaco-editor .cldr.codicon.codicon-folding-manual-collapsed{color:var(--vscode-editorGutter-foldingControlForeground)!important}.monaco-editor.vs .dnd-target,.monaco-editor.hc-light .dnd-target{border-right:2px dotted black;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #AEAFAD;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines,.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.hc-light.mac.mouse-default .view-lines{cursor:default}.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines,.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.hc-light.mac.mouse-copy .view-lines{cursor:copy}.monaco-editor .bracket-match{box-sizing:border-box;background-color:var(--vscode-editorBracketMatch-background);border:1px solid var(--vscode-editorBracketMatch-border)}.monaco-editor .selection-anchor{background-color:#007acc;width:2px!important}.monaco-editor .tokens-inspect-widget{z-index:50;user-select:text;-webkit-user-select:text;padding:10px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor.hc-black .tokens-inspect-widget,.monaco-editor.hc-light .tokens-inspect-widget{border-width:2px}.monaco-editor .tokens-inspect-widget .tokens-inspect-separator{height:1px;border:0;background-color:var(--vscode-editorHoverWidget-border)}.monaco-editor .tokens-inspect-widget .tm-token{font-family:var(--monaco-monospace-font)}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:var(--monaco-monospace-font);text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:var(--monaco-monospace-font)}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjNDI0MjQyIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #F6F6F6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjQzVDNUM1Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #252526} diff --git a/deploy/online-shop/assets/monaco-editor-BSmz0_Ko.js b/deploy/online-shop/assets/monaco-editor-BSmz0_Ko.js new file mode 100644 index 00000000..6833df7d --- /dev/null +++ b/deploy/online-shop/assets/monaco-editor-BSmz0_Ko.js @@ -0,0 +1,676 @@ +function Gs(o,e=0){return o[o.length-(1+e)]}function XB(o){if(o.length===0)throw new Error("Invalid tail call");return[o.slice(0,o.length-1),o[o.length-1]]}function li(o,e,t=(i,n)=>i===n){if(o===e)return!0;if(!o||!e||o.length!==e.length)return!1;for(let i=0,n=o.length;it(o[i],e))}function e6(o,e){let t=0,i=o-1;for(;t<=i;){const n=(t+i)/2|0,s=e(n);if(s<0)t=n+1;else if(s>0)i=n-1;else return n}return-(t+1)}function LL(o,e,t){if(o=o|0,o>=e.length)throw new TypeError("invalid index");const i=e[Math.floor(e.length*Math.random())],n=[],s=[],r=[];for(const a of e){const l=t(a,i);l<0?n.push(a):l>0?s.push(a):r.push(a)}return o!!e)}function RM(o){let e=0;for(let t=0;t0}function Eh(o,e=t=>t){const t=new Set;return o.filter(i=>{const n=e(i);return t.has(n)?!1:(t.add(n),!0)})}function xN(o,e){return o.length>0?o[0]:e}function Bn(o,e){let t=typeof e=="number"?o:0;typeof e=="number"?t=o:(t=0,e=o);const i=[];if(t<=e)for(let n=t;ne;n--)i.push(n);return i}function y0(o,e,t){const i=o.slice(0,e),n=o.slice(e);return i.concat(t,n)}function $y(o,e){const t=o.indexOf(e);t>-1&&(o.splice(t,1),o.unshift(e))}function bb(o,e){const t=o.indexOf(e);t>-1&&(o.splice(t,1),o.push(e))}function xL(o,e){for(const t of e)o.push(t)}function T5(o){return Array.isArray(o)?o:[o]}function i6(o,e,t){const i=M5(o,e),n=o.length,s=t.length;o.length=n+s;for(let r=n-1;r>=i;r--)o[r+s]=o[r];for(let r=0;r0}o.isGreaterThan=i;function n(s){return s===0}o.isNeitherLessOrGreaterThan=n,o.greaterThan=1,o.lessThan=-1,o.neitherLessOrGreaterThan=0})(Bp||(Bp={}));function rs(o,e){return(t,i)=>e(o(t),o(i))}function n6(...o){return(e,t)=>{for(const i of o){const n=i(e,t);if(!Bp.isNeitherLessOrGreaterThan(n))return n}return Bp.neitherLessOrGreaterThan}}const ia=(o,e)=>o-e,s6=(o,e)=>ia(o?1:0,e?1:0);function o6(o){return(e,t)=>-o(e,t)}class Ll{constructor(e){this.items=e,this.firstIdx=0,this.lastIdx=this.items.length-1}get length(){return this.lastIdx-this.firstIdx+1}takeWhile(e){let t=this.firstIdx;for(;t=0&&e(this.items[t]);)t--;const i=t===this.lastIdx?null:this.items.slice(t+1,this.lastIdx+1);return this.lastIdx=t,i}peek(){if(this.length!==0)return this.items[this.firstIdx]}dequeue(){const e=this.items[this.firstIdx];return this.firstIdx++,e}takeCount(e){const t=this.items.slice(this.firstIdx,this.firstIdx+e);return this.firstIdx+=e,t}}const pf=class pf{constructor(e){this.iterate=e}toArray(){const e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(e){return new pf(t=>this.iterate(i=>e(i)?t(i):!0))}map(e){return new pf(t=>this.iterate(i=>t(e(i))))}findLast(e){let t;return this.iterate(i=>(e(i)&&(t=i),!0)),t}findLastMaxBy(e){let t,i=!0;return this.iterate(n=>((i||Bp.isGreaterThan(e(n,t)))&&(i=!1,t=n),!0)),t}};pf.empty=new pf(e=>{});let Zd=pf;class eC{constructor(e){this._indexMap=e}static createSortPermutation(e,t){const i=Array.from(e.keys()).sort((n,s)=>t(e[n],e[s]));return new eC(i)}apply(e){return e.map((t,i)=>e[this._indexMap[i]])}inverse(){const e=this._indexMap.slice();for(let t=0;t"u"}function _l(o){return!xs(o)}function xs(o){return Es(o)||o===null}function ai(o,e){if(!o)throw new Error("Unexpected type")}function A5(o){if(xs(o))throw new Error("Assertion Failed: argument is undefined or null");return o}function tC(o){return typeof o=="function"}function a6(o,e){const t=Math.min(o.length,e.length);for(let i=0;i{e[t]=i&&typeof i=="object"?Ya(i):i}),e}function c6(o){if(!o||typeof o!="object")return o;const e=[o];for(;e.length>0;){const t=e.shift();Object.freeze(t);for(const i in t)if(P5.call(t,i)){const n=t[i];typeof n=="object"&&!Object.isFrozen(n)&&!r6(n)&&e.push(n)}}return o}const P5=Object.prototype.hasOwnProperty;function O5(o,e){return kL(o,e,new Set)}function kL(o,e,t){if(xs(o))return o;const i=e(o);if(typeof i<"u")return i;if(Array.isArray(o)){const n=[];for(const s of o)n.push(kL(s,e,t));return n}if(Oi(o)){if(t.has(o))throw new Error("Cannot clone recursive data-structure");t.add(o);const n={};for(const s in o)P5.call(o,s)&&(n[s]=kL(o[s],e,t));return t.delete(o),n}return o}function S0(o,e,t=!0){return Oi(o)?(Oi(e)&&Object.keys(e).forEach(i=>{i in o?t&&(Oi(o[i])&&Oi(e[i])?S0(o[i],e[i],t):o[i]=e[i]):o[i]=e[i]}),o):e}function as(o,e){if(o===e)return!0;if(o==null||e===null||e===void 0||typeof o!=typeof e||typeof o!="object"||Array.isArray(o)!==Array.isArray(e))return!1;let t,i;if(Array.isArray(o)){if(o.length!==e.length)return!1;for(t=0;tfunction(){const s=Array.prototype.slice.call(arguments,0);return e(n,s)},i={};for(const n of o)i[n]=t(n);return i}function F5(){return globalThis._VSCODE_NLS_MESSAGES}function kN(){return globalThis._VSCODE_NLS_LANGUAGE}const u6=kN()==="pseudo"||typeof document<"u"&&document.location&&document.location.hash.indexOf("pseudo=true")>=0;function iC(o,e){let t;return e.length===0?t=o:t=o.replace(/\{(\d+)\}/g,(i,n)=>{const s=n[0],r=e[s];let a=i;return typeof r=="string"?a=r:(typeof r=="number"||typeof r=="boolean"||r===void 0||r===null)&&(a=String(r)),a}),u6&&(t="["+t.replace(/[aouei]/g,"$&$&")+"]"),t}function m(o,e,...t){return iC(typeof o=="number"?B5(o,e):e,t)}function B5(o,e){const t=F5()?.[o];if(typeof t!="string"){if(typeof e=="string")return e;throw new Error(`!!! NLS MISSING: ${o} !!!`)}return t}function di(o,e,...t){let i;typeof o=="number"?i=B5(o,e):i=e;const n=iC(i,t);return{value:n,original:e===i?n:iC(e,t)}}const Gu="en";let nC=!1,sC=!1,v1=!1,W5=!1,DN=!1,IN=!1,H5=!1,Cb,Ky=Gu,OM=Gu,f6,Ba;const bl=globalThis;let Qs;typeof bl.vscode<"u"&&typeof bl.vscode.process<"u"?Qs=bl.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(Qs=process);const g6=typeof Qs?.versions?.electron=="string",m6=g6&&Qs?.type==="renderer";if(typeof Qs=="object"){nC=Qs.platform==="win32",sC=Qs.platform==="darwin",v1=Qs.platform==="linux",v1&&Qs.env.SNAP&&Qs.env.SNAP_REVISION,Qs.env.CI||Qs.env.BUILD_ARTIFACTSTAGINGDIRECTORY,Cb=Gu,Ky=Gu;const o=Qs.env.VSCODE_NLS_CONFIG;if(o)try{const e=JSON.parse(o);Cb=e.userLocale,OM=e.osLocale,Ky=e.resolvedLanguage||Gu,f6=e.languagePack?.translationsConfigFile}catch{}W5=!0}else typeof navigator=="object"&&!m6?(Ba=navigator.userAgent,nC=Ba.indexOf("Windows")>=0,sC=Ba.indexOf("Macintosh")>=0,IN=(Ba.indexOf("Macintosh")>=0||Ba.indexOf("iPad")>=0||Ba.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,v1=Ba.indexOf("Linux")>=0,H5=Ba?.indexOf("Mobi")>=0,DN=!0,Ky=kN()||Gu,Cb=navigator.language.toLowerCase(),OM=Cb):console.error("Unable to resolve platform.");const kn=nC,Ue=sC,Un=v1,oC=W5,Og=DN,p6=DN&&typeof bl.importScripts=="function",_6=p6?bl.origin:void 0,Tc=IN,V5=H5,da=Ba,b6=typeof bl.postMessage=="function"&&!bl.importScripts,z5=(()=>{if(b6){const o=[];bl.addEventListener("message",t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let i=0,n=o.length;i{const i=++e;o.push({id:i,callback:t}),bl.postMessage({vscodeScheduleAsyncWork:i},"*")}}return o=>setTimeout(o)})(),Ns=sC||IN?2:nC?1:3;let FM=!0,BM=!1;function C6(){if(!BM){BM=!0;const o=new Uint8Array(2);o[0]=1,o[1]=2,FM=new Uint16Array(o.buffer)[0]===513}return FM}const U5=!!(da&&da.indexOf("Chrome")>=0),v6=!!(da&&da.indexOf("Firefox")>=0),w6=!!(!U5&&da&&da.indexOf("Safari")>=0),y6=!!(da&&da.indexOf("Edg/")>=0),S6=!!(da&&da.indexOf("Android")>=0),Qi={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0,bracketPairColorizationOptions:{enabled:!0,independentColorPoolPerBracketType:!1}};var st;(function(o){function e(v){return v&&typeof v=="object"&&typeof v[Symbol.iterator]=="function"}o.is=e;const t=Object.freeze([]);function i(){return t}o.empty=i;function*n(v){yield v}o.single=n;function s(v){return e(v)?v:n(v)}o.wrap=s;function r(v){return v||t}o.from=r;function*a(v){for(let y=v.length-1;y>=0;y--)yield v[y]}o.reverse=a;function l(v){return!v||v[Symbol.iterator]().next().done===!0}o.isEmpty=l;function c(v){return v[Symbol.iterator]().next().value}o.first=c;function d(v,y){let x=0;for(const L of v)if(y(L,x++))return!0;return!1}o.some=d;function h(v,y){for(const x of v)if(y(x))return x}o.find=h;function*u(v,y){for(const x of v)y(x)&&(yield x)}o.filter=u;function*f(v,y){let x=0;for(const L of v)yield y(L,x++)}o.map=f;function*g(v,y){let x=0;for(const L of v)yield*y(L,x++)}o.flatMap=g;function*p(...v){for(const y of v)yield*y}o.concat=p;function _(v,y,x){let L=x;for(const E of v)L=y(L,E);return L}o.reduce=_;function*b(v,y,x=v.length){for(y<0&&(y+=v.length),x<0?x+=v.length:x>v.length&&(x=v.length);y{n||(n=!0,this._remove(i))}}shift(){if(this._first!==Ci.Undefined){const e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==Ci.Undefined){const e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==Ci.Undefined&&e.next!==Ci.Undefined){const t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===Ci.Undefined&&e.next===Ci.Undefined?(this._first=Ci.Undefined,this._last=Ci.Undefined):e.next===Ci.Undefined?(this._last=this._last.prev,this._last.next=Ci.Undefined):e.prev===Ci.Undefined&&(this._first=this._first.next,this._first.prev=Ci.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==Ci.Undefined;)yield e.element,e=e.next}}const $5="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";function L6(o=""){let e="(-?\\d*\\.\\d\\w*)|([^";for(const t of $5)o.indexOf(t)>=0||(e+="\\"+t);return e+="\\s]+)",new RegExp(e,"g")}const EN=L6();function NN(o){let e=EN;if(o&&o instanceof RegExp)if(o.global)e=o;else{let t="g";o.ignoreCase&&(t+="i"),o.multiline&&(t+="m"),o.unicode&&(t+="u"),e=new RegExp(o.source,t)}return e.lastIndex=0,e}const K5=new yn;K5.unshift({maxLen:1e3,windowSize:15,timeBudget:150});function Wp(o,e,t,i,n){if(e=NN(e),n||(n=st.first(K5)),t.length>n.maxLen){let c=o-n.maxLen/2;return c<0?c=0:i+=c,t=t.substring(c,o+n.maxLen/2),Wp(o,e,t,i,n)}const s=Date.now(),r=o-1-i;let a=-1,l=null;for(let c=1;!(Date.now()-s>=n.timeBudget);c++){const d=r-n.windowSize*c;e.lastIndex=Math.max(0,d);const h=x6(e,t,r,a);if(!h&&l||(l=h,d<=0))break;a=d}if(l){const c={word:l[0],startColumn:i+1+l.index,endColumn:i+1+l.index+l[0].length};return e.lastIndex=0,c}return null}function x6(o,e,t,i){let n;for(;n=o.exec(e);){const s=n.index||0;if(s<=t&&o.lastIndex>=t)return n;if(i>0&&s>i)return null}return null}const Ar=8;class j5{constructor(e){this._values=e}hasChanged(e){return this._values[e]}}class q5{constructor(){this.stableMinimapLayoutInput=null,this.stableFitMaxMinimapScale=0,this.stableFitRemainingWidth=0}}class Mt{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return L0(e,t)}compute(e,t,i){return i}}class $m{constructor(e,t){this.newValue=e,this.didChange=t}}function L0(o,e){if(typeof o!="object"||typeof e!="object"||!o||!e)return new $m(e,o!==e);if(Array.isArray(o)||Array.isArray(e)){const i=Array.isArray(o)&&Array.isArray(e)&&li(o,e);return new $m(e,!i)}let t=!1;for(const i in e)if(e.hasOwnProperty(i)){const n=L0(o[i],e[i]);n.didChange&&(o[i]=n.newValue,t=!0)}return new $m(o,t)}class B_{constructor(e){this.schema=void 0,this.id=e,this.name="_never_",this.defaultValue=void 0}applyUpdate(e,t){return L0(e,t)}validate(e){return this.defaultValue}}class Fg{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return L0(e,t)}validate(e){return typeof e>"u"?this.defaultValue:e}compute(e,t,i){return i}}function he(o,e){return typeof o>"u"?e:o==="false"?!1:!!o}class Je extends Fg{constructor(e,t,i,n=void 0){typeof n<"u"&&(n.type="boolean",n.default=i),super(e,t,i,n)}validate(e){return he(e,this.defaultValue)}}function dd(o,e,t,i){if(typeof o>"u")return e;let n=parseInt(o,10);return isNaN(n)?e:(n=Math.max(t,n),n=Math.min(i,n),n|0)}class pt extends Fg{static clampedInt(e,t,i,n){return dd(e,t,i,n)}constructor(e,t,i,n,s,r=void 0){typeof r<"u"&&(r.type="integer",r.default=i,r.minimum=n,r.maximum=s),super(e,t,i,r),this.minimum=n,this.maximum=s}validate(e){return pt.clampedInt(e,this.defaultValue,this.minimum,this.maximum)}}function k6(o,e,t,i){if(typeof o>"u")return e;const n=Ts.float(o,e);return Ts.clamp(n,t,i)}class Ts extends Fg{static clamp(e,t,i){return ei?i:e}static float(e,t){if(typeof e=="number")return e;if(typeof e>"u")return t;const i=parseFloat(e);return isNaN(i)?t:i}constructor(e,t,i,n,s){typeof s<"u"&&(s.type="number",s.default=i),super(e,t,i,s),this.validationFn=n}validate(e){return this.validationFn(Ts.float(e,this.defaultValue))}}class dn extends Fg{static string(e,t){return typeof e!="string"?t:e}constructor(e,t,i,n=void 0){typeof n<"u"&&(n.type="string",n.default=i),super(e,t,i,n)}validate(e){return dn.string(e,this.defaultValue)}}function Ht(o,e,t,i){return typeof o!="string"?e:i&&o in i?i[o]:t.indexOf(o)===-1?e:o}class Wt extends Fg{constructor(e,t,i,n,s=void 0){typeof s<"u"&&(s.type="string",s.enum=n,s.default=i),super(e,t,i,s),this._allowedValues=n}validate(e){return Ht(e,this.defaultValue,this._allowedValues)}}class vb extends Mt{constructor(e,t,i,n,s,r,a=void 0){typeof a<"u"&&(a.type="string",a.enum=s,a.default=n),super(e,t,i,a),this._allowedValues=s,this._convert=r}validate(e){return typeof e!="string"?this.defaultValue:this._allowedValues.indexOf(e)===-1?this.defaultValue:this._convert(e)}}function D6(o){switch(o){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}class I6 extends Mt{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[m("accessibilitySupport.auto","Use platform APIs to detect when a Screen Reader is attached."),m("accessibilitySupport.on","Optimize for usage with a Screen Reader."),m("accessibilitySupport.off","Assume a screen reader is not attached.")],default:"auto",tags:["accessibility"],description:m("accessibilitySupport","Controls if the UI should run in a mode where it is optimized for screen readers.")})}validate(e){switch(e){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}compute(e,t,i){return i===0?e.accessibilitySupport:i}}class E6 extends Mt{constructor(){const e={insertSpace:!0,ignoreEmptyLines:!0};super(23,"comments",e,{"editor.comments.insertSpace":{type:"boolean",default:e.insertSpace,description:m("comments.insertSpace","Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:e.ignoreEmptyLines,description:m("comments.ignoreEmptyLines","Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{insertSpace:he(t.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:he(t.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}}function N6(o){switch(o){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}var Ai;(function(o){o[o.Line=1]="Line",o[o.Block=2]="Block",o[o.Underline=3]="Underline",o[o.LineThin=4]="LineThin",o[o.BlockOutline=5]="BlockOutline",o[o.UnderlineThin=6]="UnderlineThin"})(Ai||(Ai={}));function T6(o){switch(o){case"line":return Ai.Line;case"block":return Ai.Block;case"underline":return Ai.Underline;case"line-thin":return Ai.LineThin;case"block-outline":return Ai.BlockOutline;case"underline-thin":return Ai.UnderlineThin}}class M6 extends B_{constructor(){super(143)}compute(e,t,i){const n=["monaco-editor"];return t.get(39)&&n.push(t.get(39)),e.extraEditorClassName&&n.push(e.extraEditorClassName),t.get(74)==="default"?n.push("mouse-default"):t.get(74)==="copy"&&n.push("mouse-copy"),t.get(112)&&n.push("showUnused"),t.get(141)&&n.push("showDeprecated"),n.join(" ")}}class R6 extends Je{constructor(){super(37,"emptySelectionClipboard",!0,{description:m("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})}compute(e,t,i){return i&&e.emptySelectionClipboard}}class A6 extends Mt{constructor(){const e={cursorMoveOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0};super(41,"find",e,{"editor.find.cursorMoveOnType":{type:"boolean",default:e.cursorMoveOnType,description:m("find.cursorMoveOnType","Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:e.seedSearchStringFromSelection,enumDescriptions:[m("editor.find.seedSearchStringFromSelection.never","Never seed search string from the editor selection."),m("editor.find.seedSearchStringFromSelection.always","Always seed search string from the editor selection, including word at cursor position."),m("editor.find.seedSearchStringFromSelection.selection","Only seed search string from the editor selection.")],description:m("find.seedSearchStringFromSelection","Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:e.autoFindInSelection,enumDescriptions:[m("editor.find.autoFindInSelection.never","Never turn on Find in Selection automatically (default)."),m("editor.find.autoFindInSelection.always","Always turn on Find in Selection automatically."),m("editor.find.autoFindInSelection.multiline","Turn on Find in Selection automatically when multiple lines of content are selected.")],description:m("find.autoFindInSelection","Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:e.globalFindClipboard,description:m("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:Ue},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:e.addExtraSpaceOnTop,description:m("find.addExtraSpaceOnTop","Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")},"editor.find.loop":{type:"boolean",default:e.loop,description:m("find.loop","Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{cursorMoveOnType:he(t.cursorMoveOnType,this.defaultValue.cursorMoveOnType),seedSearchStringFromSelection:typeof e.seedSearchStringFromSelection=="boolean"?e.seedSearchStringFromSelection?"always":"never":Ht(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:typeof e.autoFindInSelection=="boolean"?e.autoFindInSelection?"always":"never":Ht(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:he(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:he(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:he(t.loop,this.defaultValue.loop)}}}const Ka=class Ka extends Mt{constructor(){super(51,"fontLigatures",Ka.OFF,{anyOf:[{type:"boolean",description:m("fontLigatures","Enables/Disables font ligatures ('calt' and 'liga' font features). Change this to a string for fine-grained control of the 'font-feature-settings' CSS property.")},{type:"string",description:m("fontFeatureSettings","Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:m("fontLigaturesGeneral","Configures font ligatures or font features. Can be either a boolean to enable/disable ligatures or a string for the value of the CSS 'font-feature-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"||e.length===0?Ka.OFF:e==="true"?Ka.ON:e:e?Ka.ON:Ka.OFF}};Ka.OFF='"liga" off, "calt" off',Ka.ON='"liga" on, "calt" on';let Mc=Ka;const ja=class ja extends Mt{constructor(){super(54,"fontVariations",ja.OFF,{anyOf:[{type:"boolean",description:m("fontVariations","Enables/Disables the translation from font-weight to font-variation-settings. Change this to a string for fine-grained control of the 'font-variation-settings' CSS property.")},{type:"string",description:m("fontVariationSettings","Explicit 'font-variation-settings' CSS property. A boolean can be passed instead if one only needs to translate font-weight to font-variation-settings.")}],description:m("fontVariationsGeneral","Configures font variations. Can be either a boolean to enable/disable the translation from font-weight to font-variation-settings or a string for the value of the CSS 'font-variation-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"?ja.OFF:e==="true"?ja.TRANSLATE:e:e?ja.TRANSLATE:ja.OFF}compute(e,t,i){return e.fontInfo.fontVariationSettings}};ja.OFF="normal",ja.TRANSLATE="translate";let Hp=ja;class P6 extends B_{constructor(){super(50)}compute(e,t,i){return e.fontInfo}}class O6 extends Fg{constructor(){super(52,"fontSize",ls.fontSize,{type:"number",minimum:6,maximum:100,default:ls.fontSize,description:m("fontSize","Controls the font size in pixels.")})}validate(e){const t=Ts.float(e,this.defaultValue);return t===0?ls.fontSize:Ts.clamp(t,6,100)}compute(e,t,i){return e.fontInfo.fontSize}}const Br=class Br extends Mt{constructor(){super(53,"fontWeight",ls.fontWeight,{anyOf:[{type:"number",minimum:Br.MINIMUM_VALUE,maximum:Br.MAXIMUM_VALUE,errorMessage:m("fontWeightErrorMessage",'Only "normal" and "bold" keywords or numbers between 1 and 1000 are allowed.')},{type:"string",pattern:"^(normal|bold|1000|[1-9][0-9]{0,2})$"},{enum:Br.SUGGESTION_VALUES}],default:ls.fontWeight,description:m("fontWeight",'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(e){return e==="normal"||e==="bold"?e:String(pt.clampedInt(e,ls.fontWeight,Br.MINIMUM_VALUE,Br.MAXIMUM_VALUE))}};Br.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"],Br.MINIMUM_VALUE=1,Br.MAXIMUM_VALUE=1e3;let IL=Br;class F6 extends Mt{constructor(){const e={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",multipleTests:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:"",alternativeTestsCommand:""},t={type:"string",enum:["peek","gotoAndPeek","goto"],default:e.multiple,enumDescriptions:[m("editor.gotoLocation.multiple.peek","Show Peek view of the results (default)"),m("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a Peek view"),m("editor.gotoLocation.multiple.goto","Go to the primary result and enable Peek-less navigation to others")]},i=["","editor.action.referenceSearch.trigger","editor.action.goToReferences","editor.action.peekImplementation","editor.action.goToImplementation","editor.action.peekTypeDefinition","editor.action.goToTypeDefinition","editor.action.peekDeclaration","editor.action.revealDeclaration","editor.action.peekDefinition","editor.action.revealDefinitionAside","editor.action.revealDefinition"];super(58,"gotoLocation",e,{"editor.gotoLocation.multiple":{deprecationMessage:m("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":{description:m("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleTypeDefinitions":{description:m("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleDeclarations":{description:m("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleImplementations":{description:m("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleReferences":{description:m("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist."),...t},"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:e.alternativeDefinitionCommand,enum:i,description:m("alternativeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:e.alternativeTypeDefinitionCommand,enum:i,description:m("alternativeTypeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:e.alternativeDeclarationCommand,enum:i,description:m("alternativeDeclarationCommand","Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:e.alternativeImplementationCommand,enum:i,description:m("alternativeImplementationCommand","Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:e.alternativeReferenceCommand,enum:i,description:m("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{multiple:Ht(t.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:t.multipleDefinitions??Ht(t.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:t.multipleTypeDefinitions??Ht(t.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:t.multipleDeclarations??Ht(t.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:t.multipleImplementations??Ht(t.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:t.multipleReferences??Ht(t.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),multipleTests:t.multipleTests??Ht(t.multipleTests,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:dn.string(t.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:dn.string(t.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:dn.string(t.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:dn.string(t.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:dn.string(t.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand),alternativeTestsCommand:dn.string(t.alternativeTestsCommand,this.defaultValue.alternativeTestsCommand)}}}class B6 extends Mt{constructor(){const e={enabled:!0,delay:300,hidingDelay:300,sticky:!0,above:!0};super(60,"hover",e,{"editor.hover.enabled":{type:"boolean",default:e.enabled,description:m("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:e.delay,minimum:0,maximum:1e4,description:m("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:e.sticky,description:m("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.hidingDelay":{type:"integer",minimum:0,default:e.hidingDelay,description:m("hover.hidingDelay","Controls the delay in milliseconds after which the hover is hidden. Requires `editor.hover.sticky` to be enabled.")},"editor.hover.above":{type:"boolean",default:e.above,description:m("hover.above","Prefer showing hovers above the line, if there's space.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),delay:pt.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:he(t.sticky,this.defaultValue.sticky),hidingDelay:pt.clampedInt(t.hidingDelay,this.defaultValue.hidingDelay,0,6e5),above:he(t.above,this.defaultValue.above)}}}class Ef extends B_{constructor(){super(146)}compute(e,t,i){return Ef.computeLayout(t,{memory:e.memory,outerWidth:e.outerWidth,outerHeight:e.outerHeight,isDominatedByLongLines:e.isDominatedByLongLines,lineHeight:e.fontInfo.lineHeight,viewLineCount:e.viewLineCount,lineNumbersDigitCount:e.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:e.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:e.fontInfo.maxDigitWidth,pixelRatio:e.pixelRatio,glyphMarginDecorationLaneCount:e.glyphMarginDecorationLaneCount})}static computeContainedMinimapLineCount(e){const t=e.height/e.lineHeight,i=Math.floor(e.paddingTop/e.lineHeight);let n=Math.floor(e.paddingBottom/e.lineHeight);e.scrollBeyondLastLine&&(n=Math.max(n,t-1));const s=(i+e.viewLineCount+n)/(e.pixelRatio*e.height),r=Math.floor(e.viewLineCount/s);return{typicalViewportLineCount:t,extraLinesBeforeFirstLine:i,extraLinesBeyondLastLine:n,desiredRatio:s,minimapLineCount:r}}static _computeMinimapLayout(e,t){const i=e.outerWidth,n=e.outerHeight,s=e.pixelRatio;if(!e.minimap.enabled)return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(s*n),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:n};const r=t.stableMinimapLayoutInput,a=r&&e.outerHeight===r.outerHeight&&e.lineHeight===r.lineHeight&&e.typicalHalfwidthCharacterWidth===r.typicalHalfwidthCharacterWidth&&e.pixelRatio===r.pixelRatio&&e.scrollBeyondLastLine===r.scrollBeyondLastLine&&e.paddingTop===r.paddingTop&&e.paddingBottom===r.paddingBottom&&e.minimap.enabled===r.minimap.enabled&&e.minimap.side===r.minimap.side&&e.minimap.size===r.minimap.size&&e.minimap.showSlider===r.minimap.showSlider&&e.minimap.renderCharacters===r.minimap.renderCharacters&&e.minimap.maxColumn===r.minimap.maxColumn&&e.minimap.scale===r.minimap.scale&&e.verticalScrollbarWidth===r.verticalScrollbarWidth&&e.isViewportWrapping===r.isViewportWrapping,l=e.lineHeight,c=e.typicalHalfwidthCharacterWidth,d=e.scrollBeyondLastLine,h=e.minimap.renderCharacters;let u=s>=2?Math.round(e.minimap.scale*2):e.minimap.scale;const f=e.minimap.maxColumn,g=e.minimap.size,p=e.minimap.side,_=e.verticalScrollbarWidth,b=e.viewLineCount,C=e.remainingWidth,w=e.isViewportWrapping,v=h?2:3;let y=Math.floor(s*n);const x=y/s;let L=!1,E=!1,N=v*u,H=u/s,F=1;if(g==="fill"||g==="fit"){const{typicalViewportLineCount:de,extraLinesBeforeFirstLine:se,extraLinesBeyondLastLine:be,desiredRatio:we,minimapLineCount:Rt}=Ef.computeContainedMinimapLineCount({viewLineCount:b,scrollBeyondLastLine:d,paddingTop:e.paddingTop,paddingBottom:e.paddingBottom,height:n,lineHeight:l,pixelRatio:s});if(b/Rt>1)L=!0,E=!0,u=1,N=1,H=u/s;else{let Bt=!1,ht=u+1;if(g==="fit"){const ei=Math.ceil((se+b+be)*N);w&&a&&C<=t.stableFitRemainingWidth?(Bt=!0,ht=t.stableFitMaxMinimapScale):Bt=ei>y}if(g==="fill"||Bt){L=!0;const ei=u;N=Math.min(l*s,Math.max(1,Math.floor(1/we))),w&&a&&C<=t.stableFitRemainingWidth&&(ht=t.stableFitMaxMinimapScale),u=Math.min(ht,Math.max(1,Math.floor(N/v))),u>ei&&(F=Math.min(2,u/ei)),H=u/s/F,y=Math.ceil(Math.max(de,se+b+be)*N),w?(t.stableMinimapLayoutInput=e,t.stableFitRemainingWidth=C,t.stableFitMaxMinimapScale=u):(t.stableMinimapLayoutInput=null,t.stableFitRemainingWidth=0)}}}const W=Math.floor(f*H),j=Math.min(W,Math.max(0,Math.floor((C-_-2)*H/(c+H)))+Ar);let B=Math.floor(s*j);const G=B/s;B=Math.floor(B*F);const ne=h?1:2,ae=p==="left"?0:i-j-_;return{renderMinimap:ne,minimapLeft:ae,minimapWidth:j,minimapHeightIsEditorHeight:L,minimapIsSampling:E,minimapScale:u,minimapLineHeight:N,minimapCanvasInnerWidth:B,minimapCanvasInnerHeight:y,minimapCanvasOuterWidth:G,minimapCanvasOuterHeight:x}}static computeLayout(e,t){const i=t.outerWidth|0,n=t.outerHeight|0,s=t.lineHeight|0,r=t.lineNumbersDigitCount|0,a=t.typicalHalfwidthCharacterWidth,l=t.maxDigitWidth,c=t.pixelRatio,d=t.viewLineCount,h=e.get(138),u=h==="inherit"?e.get(137):h,f=u==="inherit"?e.get(133):u,g=e.get(136),p=t.isDominatedByLongLines,_=e.get(57),b=e.get(68).renderType!==0,C=e.get(69),w=e.get(106),v=e.get(84),y=e.get(73),x=e.get(104),L=x.verticalScrollbarSize,E=x.verticalHasArrows,N=x.arrowSize,H=x.horizontalScrollbarSize,F=e.get(43),W=e.get(111)!=="never";let j=e.get(66);F&&W&&(j+=16);let B=0;if(b){const fi=Math.max(r,C);B=Math.round(fi*l)}let G=0;_&&(G=s*t.glyphMarginDecorationLaneCount);let ne=0,ae=ne+G,de=ae+B,se=de+j;const be=i-G-B-j;let we=!1,Rt=!1,ct=-1;u==="inherit"&&p?(we=!0,Rt=!0):f==="on"||f==="bounded"?Rt=!0:f==="wordWrapColumn"&&(ct=g);const Bt=Ef._computeMinimapLayout({outerWidth:i,outerHeight:n,lineHeight:s,typicalHalfwidthCharacterWidth:a,pixelRatio:c,scrollBeyondLastLine:w,paddingTop:v.top,paddingBottom:v.bottom,minimap:y,verticalScrollbarWidth:L,viewLineCount:d,remainingWidth:be,isViewportWrapping:Rt},t.memory||new q5);Bt.renderMinimap!==0&&Bt.minimapLeft===0&&(ne+=Bt.minimapWidth,ae+=Bt.minimapWidth,de+=Bt.minimapWidth,se+=Bt.minimapWidth);const ht=be-Bt.minimapWidth,ei=Math.max(1,Math.floor((ht-L-2)/a)),js=E?N:0;return Rt&&(ct=Math.max(1,ei),f==="bounded"&&(ct=Math.min(ct,g))),{width:i,height:n,glyphMarginLeft:ne,glyphMarginWidth:G,glyphMarginDecorationLaneCount:t.glyphMarginDecorationLaneCount,lineNumbersLeft:ae,lineNumbersWidth:B,decorationsLeft:de,decorationsWidth:j,contentLeft:se,contentWidth:ht,minimap:Bt,viewportColumn:ei,isWordWrapMinified:we,isViewportWrapping:Rt,wrappingColumn:ct,verticalScrollbarWidth:L,horizontalScrollbarHeight:H,overviewRuler:{top:js,width:L,height:n-2*js,right:0}}}}class W6 extends Mt{constructor(){super(140,"wrappingStrategy","simple",{"editor.wrappingStrategy":{enumDescriptions:[m("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),m("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],type:"string",enum:["simple","advanced"],default:"simple",description:m("wrappingStrategy","Controls the algorithm that computes wrapping points. Note that when in accessibility mode, advanced will be used for the best experience.")}})}validate(e){return Ht(e,"simple",["simple","advanced"])}compute(e,t,i){return t.get(2)===2?"advanced":i}}var xo;(function(o){o.Off="off",o.OnCode="onCode",o.On="on"})(xo||(xo={}));class H6 extends Mt{constructor(){const e={enabled:xo.OnCode};super(65,"lightbulb",e,{"editor.lightbulb.enabled":{type:"string",tags:["experimental"],enum:[xo.Off,xo.OnCode,xo.On],default:e.enabled,enumDescriptions:[m("editor.lightbulb.enabled.off","Disable the code action menu."),m("editor.lightbulb.enabled.onCode","Show the code action menu when the cursor is on lines with code."),m("editor.lightbulb.enabled.on","Show the code action menu when the cursor is on lines with code or on empty lines.")],description:m("enabled","Enables the Code Action lightbulb in the editor.")}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{enabled:Ht(e.enabled,this.defaultValue.enabled,[xo.Off,xo.OnCode,xo.On])}}}class V6 extends Mt{constructor(){const e={enabled:!0,maxLineCount:5,defaultModel:"outlineModel",scrollWithEditor:!0};super(116,"stickyScroll",e,{"editor.stickyScroll.enabled":{type:"boolean",default:e.enabled,description:m("editor.stickyScroll.enabled","Shows the nested current scopes during the scroll at the top of the editor."),tags:["experimental"]},"editor.stickyScroll.maxLineCount":{type:"number",default:e.maxLineCount,minimum:1,maximum:20,description:m("editor.stickyScroll.maxLineCount","Defines the maximum number of sticky lines to show.")},"editor.stickyScroll.defaultModel":{type:"string",enum:["outlineModel","foldingProviderModel","indentationModel"],default:e.defaultModel,description:m("editor.stickyScroll.defaultModel","Defines the model to use for determining which lines to stick. If the outline model does not exist, it will fall back on the folding provider model which falls back on the indentation model. This order is respected in all three cases.")},"editor.stickyScroll.scrollWithEditor":{type:"boolean",default:e.scrollWithEditor,description:m("editor.stickyScroll.scrollWithEditor","Enable scrolling of Sticky Scroll with the editor's horizontal scrollbar.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),maxLineCount:pt.clampedInt(t.maxLineCount,this.defaultValue.maxLineCount,1,20),defaultModel:Ht(t.defaultModel,this.defaultValue.defaultModel,["outlineModel","foldingProviderModel","indentationModel"]),scrollWithEditor:he(t.scrollWithEditor,this.defaultValue.scrollWithEditor)}}}class z6 extends Mt{constructor(){const e={enabled:"on",fontSize:0,fontFamily:"",padding:!1};super(142,"inlayHints",e,{"editor.inlayHints.enabled":{type:"string",default:e.enabled,description:m("inlayHints.enable","Enables the inlay hints in the editor."),enum:["on","onUnlessPressed","offUnlessPressed","off"],markdownEnumDescriptions:[m("editor.inlayHints.on","Inlay hints are enabled"),m("editor.inlayHints.onUnlessPressed","Inlay hints are showing by default and hide when holding {0}",Ue?"Ctrl+Option":"Ctrl+Alt"),m("editor.inlayHints.offUnlessPressed","Inlay hints are hidden by default and show when holding {0}",Ue?"Ctrl+Option":"Ctrl+Alt"),m("editor.inlayHints.off","Inlay hints are disabled")]},"editor.inlayHints.fontSize":{type:"number",default:e.fontSize,markdownDescription:m("inlayHints.fontSize","Controls font size of inlay hints in the editor. As default the {0} is used when the configured value is less than {1} or greater than the editor font size.","`#editor.fontSize#`","`5`")},"editor.inlayHints.fontFamily":{type:"string",default:e.fontFamily,markdownDescription:m("inlayHints.fontFamily","Controls font family of inlay hints in the editor. When set to empty, the {0} is used.","`#editor.fontFamily#`")},"editor.inlayHints.padding":{type:"boolean",default:e.padding,description:m("inlayHints.padding","Enables the padding around the inlay hints in the editor.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return typeof t.enabled=="boolean"&&(t.enabled=t.enabled?"on":"off"),{enabled:Ht(t.enabled,this.defaultValue.enabled,["on","off","offUnlessPressed","onUnlessPressed"]),fontSize:pt.clampedInt(t.fontSize,this.defaultValue.fontSize,0,100),fontFamily:dn.string(t.fontFamily,this.defaultValue.fontFamily),padding:he(t.padding,this.defaultValue.padding)}}}class U6 extends Mt{constructor(){super(66,"lineDecorationsWidth",10)}validate(e){return typeof e=="string"&&/^\d+(\.\d+)?ch$/.test(e)?-parseFloat(e.substring(0,e.length-2)):pt.clampedInt(e,this.defaultValue,0,1e3)}compute(e,t,i){return i<0?pt.clampedInt(-i*e.fontInfo.typicalHalfwidthCharacterWidth,this.defaultValue,0,1e3):i}}class $6 extends Ts{constructor(){super(67,"lineHeight",ls.lineHeight,e=>Ts.clamp(e,0,150),{markdownDescription:m("lineHeight",`Controls the line height. + - Use 0 to automatically compute the line height from the font size. + - Values between 0 and 8 will be used as a multiplier with the font size. + - Values greater than or equal to 8 will be used as effective values.`)})}compute(e,t,i){return e.fontInfo.lineHeight}}class K6 extends Mt{constructor(){const e={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",autohide:!1,renderCharacters:!0,maxColumn:120,scale:1,showRegionSectionHeaders:!0,showMarkSectionHeaders:!0,sectionHeaderFontSize:9,sectionHeaderLetterSpacing:1};super(73,"minimap",e,{"editor.minimap.enabled":{type:"boolean",default:e.enabled,description:m("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.autohide":{type:"boolean",default:e.autohide,description:m("minimap.autohide","Controls whether the minimap is hidden automatically.")},"editor.minimap.size":{type:"string",enum:["proportional","fill","fit"],enumDescriptions:[m("minimap.size.proportional","The minimap has the same size as the editor contents (and might scroll)."),m("minimap.size.fill","The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling)."),m("minimap.size.fit","The minimap will shrink as necessary to never be larger than the editor (no scrolling).")],default:e.size,description:m("minimap.size","Controls the size of the minimap.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:e.side,description:m("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:e.showSlider,description:m("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:e.scale,minimum:1,maximum:3,enum:[1,2,3],description:m("minimap.scale","Scale of content drawn in the minimap: 1, 2 or 3.")},"editor.minimap.renderCharacters":{type:"boolean",default:e.renderCharacters,description:m("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:e.maxColumn,description:m("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")},"editor.minimap.showRegionSectionHeaders":{type:"boolean",default:e.showRegionSectionHeaders,description:m("minimap.showRegionSectionHeaders","Controls whether named regions are shown as section headers in the minimap.")},"editor.minimap.showMarkSectionHeaders":{type:"boolean",default:e.showMarkSectionHeaders,description:m("minimap.showMarkSectionHeaders","Controls whether MARK: comments are shown as section headers in the minimap.")},"editor.minimap.sectionHeaderFontSize":{type:"number",default:e.sectionHeaderFontSize,description:m("minimap.sectionHeaderFontSize","Controls the font size of section headers in the minimap.")},"editor.minimap.sectionHeaderLetterSpacing":{type:"number",default:e.sectionHeaderLetterSpacing,description:m("minimap.sectionHeaderLetterSpacing","Controls the amount of space (in pixels) between characters of section header. This helps the readability of the header in small font sizes.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),autohide:he(t.autohide,this.defaultValue.autohide),size:Ht(t.size,this.defaultValue.size,["proportional","fill","fit"]),side:Ht(t.side,this.defaultValue.side,["right","left"]),showSlider:Ht(t.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:he(t.renderCharacters,this.defaultValue.renderCharacters),scale:pt.clampedInt(t.scale,1,1,3),maxColumn:pt.clampedInt(t.maxColumn,this.defaultValue.maxColumn,1,1e4),showRegionSectionHeaders:he(t.showRegionSectionHeaders,this.defaultValue.showRegionSectionHeaders),showMarkSectionHeaders:he(t.showMarkSectionHeaders,this.defaultValue.showMarkSectionHeaders),sectionHeaderFontSize:Ts.clamp(t.sectionHeaderFontSize??this.defaultValue.sectionHeaderFontSize,4,32),sectionHeaderLetterSpacing:Ts.clamp(t.sectionHeaderLetterSpacing??this.defaultValue.sectionHeaderLetterSpacing,0,5)}}}function j6(o){return o==="ctrlCmd"?Ue?"metaKey":"ctrlKey":"altKey"}class q6 extends Mt{constructor(){super(84,"padding",{top:0,bottom:0},{"editor.padding.top":{type:"number",default:0,minimum:0,maximum:1e3,description:m("padding.top","Controls the amount of space between the top edge of the editor and the first line.")},"editor.padding.bottom":{type:"number",default:0,minimum:0,maximum:1e3,description:m("padding.bottom","Controls the amount of space between the bottom edge of the editor and the last line.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{top:pt.clampedInt(t.top,0,0,1e3),bottom:pt.clampedInt(t.bottom,0,0,1e3)}}}class G6 extends Mt{constructor(){const e={enabled:!0,cycle:!0};super(86,"parameterHints",e,{"editor.parameterHints.enabled":{type:"boolean",default:e.enabled,description:m("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:e.cycle,description:m("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),cycle:he(t.cycle,this.defaultValue.cycle)}}}class Z6 extends B_{constructor(){super(144)}compute(e,t,i){return e.pixelRatio}}class Y6 extends Mt{constructor(){super(88,"placeholder",void 0)}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e:this.defaultValue}}class Q6 extends Mt{constructor(){const e={other:"on",comments:"off",strings:"off"},t=[{type:"boolean"},{type:"string",enum:["on","inline","off"],enumDescriptions:[m("on","Quick suggestions show inside the suggest widget"),m("inline","Quick suggestions show as ghost text"),m("off","Quick suggestions are disabled")]}];super(90,"quickSuggestions",e,{type:"object",additionalProperties:!1,properties:{strings:{anyOf:t,default:e.strings,description:m("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{anyOf:t,default:e.comments,description:m("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{anyOf:t,default:e.other,description:m("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}},default:e,markdownDescription:m("quickSuggestions","Controls whether suggestions should automatically show up while typing. This can be controlled for typing in comments, strings, and other code. Quick suggestion can be configured to show as ghost text or with the suggest widget. Also be aware of the {0}-setting which controls if suggestions are triggered by special characters.","`#editor.suggestOnTriggerCharacters#`")}),this.defaultValue=e}validate(e){if(typeof e=="boolean"){const c=e?"on":"off";return{comments:c,strings:c,other:c}}if(!e||typeof e!="object")return this.defaultValue;const{other:t,comments:i,strings:n}=e,s=["on","inline","off"];let r,a,l;return typeof t=="boolean"?r=t?"on":"off":r=Ht(t,this.defaultValue.other,s),typeof i=="boolean"?a=i?"on":"off":a=Ht(i,this.defaultValue.comments,s),typeof n=="boolean"?l=n?"on":"off":l=Ht(n,this.defaultValue.strings,s),{other:r,comments:a,strings:l}}}class X6 extends Mt{constructor(){super(68,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[m("lineNumbers.off","Line numbers are not rendered."),m("lineNumbers.on","Line numbers are rendered as absolute number."),m("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),m("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:m("lineNumbers","Controls the display of line numbers.")})}validate(e){let t=this.defaultValue.renderType,i=this.defaultValue.renderFn;return typeof e<"u"&&(typeof e=="function"?(t=4,i=e):e==="interval"?t=3:e==="relative"?t=2:e==="on"?t=1:t=0),{renderType:t,renderFn:i}}}function rC(o){const e=o.get(99);return e==="editable"?o.get(92):e!=="on"}class J6 extends Mt{constructor(){const e=[],t={type:"number",description:m("rulers.size","Number of monospace characters at which this editor ruler will render.")};super(103,"rulers",e,{type:"array",items:{anyOf:[t,{type:["object"],properties:{column:t,color:{type:"string",description:m("rulers.color","Color of this editor ruler."),format:"color-hex"}}}]},default:e,description:m("rulers","Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.")})}validate(e){if(Array.isArray(e)){const t=[];for(const i of e)if(typeof i=="number")t.push({column:pt.clampedInt(i,0,0,1e4),color:null});else if(i&&typeof i=="object"){const n=i;t.push({column:pt.clampedInt(n.column,0,0,1e4),color:n.color})}return t.sort((i,n)=>i.column-n.column),t}return this.defaultValue}}class eW extends Mt{constructor(){super(93,"readOnlyMessage",void 0)}validate(e){return!e||typeof e!="object"?this.defaultValue:e}}function WM(o,e){if(typeof o!="string")return e;switch(o){case"hidden":return 2;case"visible":return 3;default:return 1}}let tW=class extends Mt{constructor(){const e={vertical:1,horizontal:1,arrowSize:11,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,horizontalScrollbarSize:12,horizontalSliderSize:12,verticalScrollbarSize:14,verticalSliderSize:14,handleMouseWheel:!0,alwaysConsumeMouseWheel:!0,scrollByPage:!1,ignoreHorizontalScrollbarInContentHeight:!1};super(104,"scrollbar",e,{"editor.scrollbar.vertical":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[m("scrollbar.vertical.auto","The vertical scrollbar will be visible only when necessary."),m("scrollbar.vertical.visible","The vertical scrollbar will always be visible."),m("scrollbar.vertical.fit","The vertical scrollbar will always be hidden.")],default:"auto",description:m("scrollbar.vertical","Controls the visibility of the vertical scrollbar.")},"editor.scrollbar.horizontal":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[m("scrollbar.horizontal.auto","The horizontal scrollbar will be visible only when necessary."),m("scrollbar.horizontal.visible","The horizontal scrollbar will always be visible."),m("scrollbar.horizontal.fit","The horizontal scrollbar will always be hidden.")],default:"auto",description:m("scrollbar.horizontal","Controls the visibility of the horizontal scrollbar.")},"editor.scrollbar.verticalScrollbarSize":{type:"number",default:e.verticalScrollbarSize,description:m("scrollbar.verticalScrollbarSize","The width of the vertical scrollbar.")},"editor.scrollbar.horizontalScrollbarSize":{type:"number",default:e.horizontalScrollbarSize,description:m("scrollbar.horizontalScrollbarSize","The height of the horizontal scrollbar.")},"editor.scrollbar.scrollByPage":{type:"boolean",default:e.scrollByPage,description:m("scrollbar.scrollByPage","Controls whether clicks scroll by page or jump to click position.")},"editor.scrollbar.ignoreHorizontalScrollbarInContentHeight":{type:"boolean",default:e.ignoreHorizontalScrollbarInContentHeight,description:m("scrollbar.ignoreHorizontalScrollbarInContentHeight","When set, the horizontal scrollbar will not increase the size of the editor's content.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e,i=pt.clampedInt(t.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),n=pt.clampedInt(t.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:pt.clampedInt(t.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:WM(t.vertical,this.defaultValue.vertical),horizontal:WM(t.horizontal,this.defaultValue.horizontal),useShadows:he(t.useShadows,this.defaultValue.useShadows),verticalHasArrows:he(t.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:he(t.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:he(t.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:he(t.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:i,horizontalSliderSize:pt.clampedInt(t.horizontalSliderSize,i,0,1e3),verticalScrollbarSize:n,verticalSliderSize:pt.clampedInt(t.verticalSliderSize,n,0,1e3),scrollByPage:he(t.scrollByPage,this.defaultValue.scrollByPage),ignoreHorizontalScrollbarInContentHeight:he(t.ignoreHorizontalScrollbarInContentHeight,this.defaultValue.ignoreHorizontalScrollbarInContentHeight)}}};const $o="inUntrustedWorkspace",ed={allowedCharacters:"editor.unicodeHighlight.allowedCharacters",invisibleCharacters:"editor.unicodeHighlight.invisibleCharacters",nonBasicASCII:"editor.unicodeHighlight.nonBasicASCII",ambiguousCharacters:"editor.unicodeHighlight.ambiguousCharacters",includeComments:"editor.unicodeHighlight.includeComments",includeStrings:"editor.unicodeHighlight.includeStrings",allowedLocales:"editor.unicodeHighlight.allowedLocales"};class iW extends Mt{constructor(){const e={nonBasicASCII:$o,invisibleCharacters:!0,ambiguousCharacters:!0,includeComments:$o,includeStrings:!0,allowedCharacters:{},allowedLocales:{_os:!0,_vscode:!0}};super(126,"unicodeHighlight",e,{[ed.nonBasicASCII]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,$o],default:e.nonBasicASCII,description:m("unicodeHighlight.nonBasicASCII","Controls whether all non-basic ASCII characters are highlighted. Only characters between U+0020 and U+007E, tab, line-feed and carriage-return are considered basic ASCII.")},[ed.invisibleCharacters]:{restricted:!0,type:"boolean",default:e.invisibleCharacters,description:m("unicodeHighlight.invisibleCharacters","Controls whether characters that just reserve space or have no width at all are highlighted.")},[ed.ambiguousCharacters]:{restricted:!0,type:"boolean",default:e.ambiguousCharacters,description:m("unicodeHighlight.ambiguousCharacters","Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.")},[ed.includeComments]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,$o],default:e.includeComments,description:m("unicodeHighlight.includeComments","Controls whether characters in comments should also be subject to Unicode highlighting.")},[ed.includeStrings]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,$o],default:e.includeStrings,description:m("unicodeHighlight.includeStrings","Controls whether characters in strings should also be subject to Unicode highlighting.")},[ed.allowedCharacters]:{restricted:!0,type:"object",default:e.allowedCharacters,description:m("unicodeHighlight.allowedCharacters","Defines allowed characters that are not being highlighted."),additionalProperties:{type:"boolean"}},[ed.allowedLocales]:{restricted:!0,type:"object",additionalProperties:{type:"boolean"},default:e.allowedLocales,description:m("unicodeHighlight.allowedLocales","Unicode characters that are common in allowed locales are not being highlighted.")}})}applyUpdate(e,t){let i=!1;t.allowedCharacters&&e&&(as(e.allowedCharacters,t.allowedCharacters)||(e={...e,allowedCharacters:t.allowedCharacters},i=!0)),t.allowedLocales&&e&&(as(e.allowedLocales,t.allowedLocales)||(e={...e,allowedLocales:t.allowedLocales},i=!0));const n=super.applyUpdate(e,t);return i?new $m(n.newValue,!0):n}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{nonBasicASCII:Nf(t.nonBasicASCII,$o,[!0,!1,$o]),invisibleCharacters:he(t.invisibleCharacters,this.defaultValue.invisibleCharacters),ambiguousCharacters:he(t.ambiguousCharacters,this.defaultValue.ambiguousCharacters),includeComments:Nf(t.includeComments,$o,[!0,!1,$o]),includeStrings:Nf(t.includeStrings,$o,[!0,!1,$o]),allowedCharacters:this.validateBooleanMap(e.allowedCharacters,this.defaultValue.allowedCharacters),allowedLocales:this.validateBooleanMap(e.allowedLocales,this.defaultValue.allowedLocales)}}validateBooleanMap(e,t){if(typeof e!="object"||!e)return t;const i={};for(const[n,s]of Object.entries(e))s===!0&&(i[n]=!0);return i}}class nW extends Mt{constructor(){const e={enabled:!0,mode:"subwordSmart",showToolbar:"onHover",suppressSuggestions:!1,keepOnBlur:!1,fontFamily:"default"};super(62,"inlineSuggest",e,{"editor.inlineSuggest.enabled":{type:"boolean",default:e.enabled,description:m("inlineSuggest.enabled","Controls whether to automatically show inline suggestions in the editor.")},"editor.inlineSuggest.showToolbar":{type:"string",default:e.showToolbar,enum:["always","onHover","never"],enumDescriptions:[m("inlineSuggest.showToolbar.always","Show the inline suggestion toolbar whenever an inline suggestion is shown."),m("inlineSuggest.showToolbar.onHover","Show the inline suggestion toolbar when hovering over an inline suggestion."),m("inlineSuggest.showToolbar.never","Never show the inline suggestion toolbar.")],description:m("inlineSuggest.showToolbar","Controls when to show the inline suggestion toolbar.")},"editor.inlineSuggest.suppressSuggestions":{type:"boolean",default:e.suppressSuggestions,description:m("inlineSuggest.suppressSuggestions","Controls how inline suggestions interact with the suggest widget. If enabled, the suggest widget is not shown automatically when inline suggestions are available.")},"editor.inlineSuggest.fontFamily":{type:"string",default:e.fontFamily,description:m("inlineSuggest.fontFamily","Controls the font family of the inline suggestions.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),mode:Ht(t.mode,this.defaultValue.mode,["prefix","subword","subwordSmart"]),showToolbar:Ht(t.showToolbar,this.defaultValue.showToolbar,["always","onHover","never"]),suppressSuggestions:he(t.suppressSuggestions,this.defaultValue.suppressSuggestions),keepOnBlur:he(t.keepOnBlur,this.defaultValue.keepOnBlur),fontFamily:dn.string(t.fontFamily,this.defaultValue.fontFamily)}}}class sW extends Mt{constructor(){const e={enabled:!1,showToolbar:"onHover",fontFamily:"default",keepOnBlur:!1};super(63,"experimentalInlineEdit",e,{"editor.experimentalInlineEdit.enabled":{type:"boolean",default:e.enabled,description:m("inlineEdit.enabled","Controls whether to show inline edits in the editor.")},"editor.experimentalInlineEdit.showToolbar":{type:"string",default:e.showToolbar,enum:["always","onHover","never"],enumDescriptions:[m("inlineEdit.showToolbar.always","Show the inline edit toolbar whenever an inline suggestion is shown."),m("inlineEdit.showToolbar.onHover","Show the inline edit toolbar when hovering over an inline suggestion."),m("inlineEdit.showToolbar.never","Never show the inline edit toolbar.")],description:m("inlineEdit.showToolbar","Controls when to show the inline edit toolbar.")},"editor.experimentalInlineEdit.fontFamily":{type:"string",default:e.fontFamily,description:m("inlineEdit.fontFamily","Controls the font family of the inline edit.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),showToolbar:Ht(t.showToolbar,this.defaultValue.showToolbar,["always","onHover","never"]),fontFamily:dn.string(t.fontFamily,this.defaultValue.fontFamily),keepOnBlur:he(t.keepOnBlur,this.defaultValue.keepOnBlur)}}}class oW extends Mt{constructor(){const e={enabled:Qi.bracketPairColorizationOptions.enabled,independentColorPoolPerBracketType:Qi.bracketPairColorizationOptions.independentColorPoolPerBracketType};super(15,"bracketPairColorization",e,{"editor.bracketPairColorization.enabled":{type:"boolean",default:e.enabled,markdownDescription:m("bracketPairColorization.enabled","Controls whether bracket pair colorization is enabled or not. Use {0} to override the bracket highlight colors.","`#workbench.colorCustomizations#`")},"editor.bracketPairColorization.independentColorPoolPerBracketType":{type:"boolean",default:e.independentColorPoolPerBracketType,description:m("bracketPairColorization.independentColorPoolPerBracketType","Controls whether each bracket type has its own independent color pool.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),independentColorPoolPerBracketType:he(t.independentColorPoolPerBracketType,this.defaultValue.independentColorPoolPerBracketType)}}}class rW extends Mt{constructor(){const e={bracketPairs:!1,bracketPairsHorizontal:"active",highlightActiveBracketPair:!0,indentation:!0,highlightActiveIndentation:!0};super(16,"guides",e,{"editor.guides.bracketPairs":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[m("editor.guides.bracketPairs.true","Enables bracket pair guides."),m("editor.guides.bracketPairs.active","Enables bracket pair guides only for the active bracket pair."),m("editor.guides.bracketPairs.false","Disables bracket pair guides.")],default:e.bracketPairs,description:m("editor.guides.bracketPairs","Controls whether bracket pair guides are enabled or not.")},"editor.guides.bracketPairsHorizontal":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[m("editor.guides.bracketPairsHorizontal.true","Enables horizontal guides as addition to vertical bracket pair guides."),m("editor.guides.bracketPairsHorizontal.active","Enables horizontal guides only for the active bracket pair."),m("editor.guides.bracketPairsHorizontal.false","Disables horizontal bracket pair guides.")],default:e.bracketPairsHorizontal,description:m("editor.guides.bracketPairsHorizontal","Controls whether horizontal bracket pair guides are enabled or not.")},"editor.guides.highlightActiveBracketPair":{type:"boolean",default:e.highlightActiveBracketPair,description:m("editor.guides.highlightActiveBracketPair","Controls whether the editor should highlight the active bracket pair.")},"editor.guides.indentation":{type:"boolean",default:e.indentation,description:m("editor.guides.indentation","Controls whether the editor should render indent guides.")},"editor.guides.highlightActiveIndentation":{type:["boolean","string"],enum:[!0,"always",!1],enumDescriptions:[m("editor.guides.highlightActiveIndentation.true","Highlights the active indent guide."),m("editor.guides.highlightActiveIndentation.always","Highlights the active indent guide even if bracket guides are highlighted."),m("editor.guides.highlightActiveIndentation.false","Do not highlight the active indent guide.")],default:e.highlightActiveIndentation,description:m("editor.guides.highlightActiveIndentation","Controls whether the editor should highlight the active indent guide.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{bracketPairs:Nf(t.bracketPairs,this.defaultValue.bracketPairs,[!0,!1,"active"]),bracketPairsHorizontal:Nf(t.bracketPairsHorizontal,this.defaultValue.bracketPairsHorizontal,[!0,!1,"active"]),highlightActiveBracketPair:he(t.highlightActiveBracketPair,this.defaultValue.highlightActiveBracketPair),indentation:he(t.indentation,this.defaultValue.indentation),highlightActiveIndentation:Nf(t.highlightActiveIndentation,this.defaultValue.highlightActiveIndentation,[!0,!1,"always"])}}}function Nf(o,e,t){const i=t.indexOf(o);return i===-1?e:t[i]}class aW extends Mt{constructor(){const e={insertMode:"insert",filterGraceful:!0,snippetsPreventQuickSuggestions:!1,localityBonus:!1,shareSuggestSelections:!1,selectionMode:"always",showIcons:!0,showStatusBar:!1,preview:!1,previewMode:"subwordSmart",showInlineDetails:!0,showMethods:!0,showFunctions:!0,showConstructors:!0,showDeprecated:!0,matchOnWordStartOnly:!0,showFields:!0,showVariables:!0,showClasses:!0,showStructs:!0,showInterfaces:!0,showModules:!0,showProperties:!0,showEvents:!0,showOperators:!0,showUnits:!0,showValues:!0,showConstants:!0,showEnums:!0,showEnumMembers:!0,showKeywords:!0,showWords:!0,showColors:!0,showFiles:!0,showReferences:!0,showFolders:!0,showTypeParameters:!0,showSnippets:!0,showUsers:!0,showIssues:!0};super(119,"suggest",e,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[m("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),m("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:e.insertMode,description:m("suggest.insertMode","Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.filterGraceful":{type:"boolean",default:e.filterGraceful,description:m("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:e.localityBonus,description:m("suggest.localityBonus","Controls whether sorting favors words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:e.shareSuggestSelections,markdownDescription:m("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.selectionMode":{type:"string",enum:["always","never","whenTriggerCharacter","whenQuickSuggestion"],enumDescriptions:[m("suggest.insertMode.always","Always select a suggestion when automatically triggering IntelliSense."),m("suggest.insertMode.never","Never select a suggestion when automatically triggering IntelliSense."),m("suggest.insertMode.whenTriggerCharacter","Select a suggestion only when triggering IntelliSense from a trigger character."),m("suggest.insertMode.whenQuickSuggestion","Select a suggestion only when triggering IntelliSense as you type.")],default:e.selectionMode,markdownDescription:m("suggest.selectionMode","Controls whether a suggestion is selected when the widget shows. Note that this only applies to automatically triggered suggestions ({0} and {1}) and that a suggestion is always selected when explicitly invoked, e.g via `Ctrl+Space`.","`#editor.quickSuggestions#`","`#editor.suggestOnTriggerCharacters#`")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:e.snippetsPreventQuickSuggestions,description:m("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:e.showIcons,description:m("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.showStatusBar":{type:"boolean",default:e.showStatusBar,description:m("suggest.showStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")},"editor.suggest.preview":{type:"boolean",default:e.preview,description:m("suggest.preview","Controls whether to preview the suggestion outcome in the editor.")},"editor.suggest.showInlineDetails":{type:"boolean",default:e.showInlineDetails,description:m("suggest.showInlineDetails","Controls whether suggest details show inline with the label or only in the details widget.")},"editor.suggest.maxVisibleSuggestions":{type:"number",deprecationMessage:m("suggest.maxVisibleSuggestions.dep","This setting is deprecated. The suggest widget can now be resized.")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:m("deprecated","This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.")},"editor.suggest.showMethods":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showDeprecated":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showDeprecated","When enabled IntelliSense shows `deprecated`-suggestions.")},"editor.suggest.matchOnWordStartOnly":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.matchOnWordStartOnly","When enabled IntelliSense filtering requires that the first character matches on a word start. For example, `c` on `Console` or `WebContext` but _not_ on `description`. When disabled IntelliSense will show more results but still sorts them by match quality.")},"editor.suggest.showFields":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.showUsers":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showUsers","When enabled IntelliSense shows `user`-suggestions.")},"editor.suggest.showIssues":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showIssues","When enabled IntelliSense shows `issues`-suggestions.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{insertMode:Ht(t.insertMode,this.defaultValue.insertMode,["insert","replace"]),filterGraceful:he(t.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:he(t.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:he(t.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:he(t.shareSuggestSelections,this.defaultValue.shareSuggestSelections),selectionMode:Ht(t.selectionMode,this.defaultValue.selectionMode,["always","never","whenQuickSuggestion","whenTriggerCharacter"]),showIcons:he(t.showIcons,this.defaultValue.showIcons),showStatusBar:he(t.showStatusBar,this.defaultValue.showStatusBar),preview:he(t.preview,this.defaultValue.preview),previewMode:Ht(t.previewMode,this.defaultValue.previewMode,["prefix","subword","subwordSmart"]),showInlineDetails:he(t.showInlineDetails,this.defaultValue.showInlineDetails),showMethods:he(t.showMethods,this.defaultValue.showMethods),showFunctions:he(t.showFunctions,this.defaultValue.showFunctions),showConstructors:he(t.showConstructors,this.defaultValue.showConstructors),showDeprecated:he(t.showDeprecated,this.defaultValue.showDeprecated),matchOnWordStartOnly:he(t.matchOnWordStartOnly,this.defaultValue.matchOnWordStartOnly),showFields:he(t.showFields,this.defaultValue.showFields),showVariables:he(t.showVariables,this.defaultValue.showVariables),showClasses:he(t.showClasses,this.defaultValue.showClasses),showStructs:he(t.showStructs,this.defaultValue.showStructs),showInterfaces:he(t.showInterfaces,this.defaultValue.showInterfaces),showModules:he(t.showModules,this.defaultValue.showModules),showProperties:he(t.showProperties,this.defaultValue.showProperties),showEvents:he(t.showEvents,this.defaultValue.showEvents),showOperators:he(t.showOperators,this.defaultValue.showOperators),showUnits:he(t.showUnits,this.defaultValue.showUnits),showValues:he(t.showValues,this.defaultValue.showValues),showConstants:he(t.showConstants,this.defaultValue.showConstants),showEnums:he(t.showEnums,this.defaultValue.showEnums),showEnumMembers:he(t.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:he(t.showKeywords,this.defaultValue.showKeywords),showWords:he(t.showWords,this.defaultValue.showWords),showColors:he(t.showColors,this.defaultValue.showColors),showFiles:he(t.showFiles,this.defaultValue.showFiles),showReferences:he(t.showReferences,this.defaultValue.showReferences),showFolders:he(t.showFolders,this.defaultValue.showFolders),showTypeParameters:he(t.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:he(t.showSnippets,this.defaultValue.showSnippets),showUsers:he(t.showUsers,this.defaultValue.showUsers),showIssues:he(t.showIssues,this.defaultValue.showIssues)}}}class lW extends Mt{constructor(){super(114,"smartSelect",{selectLeadingAndTrailingWhitespace:!0,selectSubwords:!0},{"editor.smartSelect.selectLeadingAndTrailingWhitespace":{description:m("selectLeadingAndTrailingWhitespace","Whether leading and trailing whitespace should always be selected."),default:!0,type:"boolean"},"editor.smartSelect.selectSubwords":{description:m("selectSubwords","Whether subwords (like 'foo' in 'fooBar' or 'foo_bar') should be selected."),default:!0,type:"boolean"}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{selectLeadingAndTrailingWhitespace:he(e.selectLeadingAndTrailingWhitespace,this.defaultValue.selectLeadingAndTrailingWhitespace),selectSubwords:he(e.selectSubwords,this.defaultValue.selectSubwords)}}}class cW extends Mt{constructor(){const e=[];super(131,"wordSegmenterLocales",e,{anyOf:[{description:m("wordSegmenterLocales","Locales to be used for word segmentation when doing word related navigations or operations. Specify the BCP 47 language tag of the word you wish to recognize (e.g., ja, zh-CN, zh-Hant-TW, etc.)."),type:"string"},{description:m("wordSegmenterLocales","Locales to be used for word segmentation when doing word related navigations or operations. Specify the BCP 47 language tag of the word you wish to recognize (e.g., ja, zh-CN, zh-Hant-TW, etc.)."),type:"array",items:{type:"string"}}]})}validate(e){if(typeof e=="string"&&(e=[e]),Array.isArray(e)){const t=[];for(const i of e)if(typeof i=="string")try{Intl.Segmenter.supportedLocalesOf(i).length>0&&t.push(i)}catch{}return t}return this.defaultValue}}class dW extends Mt{constructor(){super(139,"wrappingIndent",1,{"editor.wrappingIndent":{type:"string",enum:["none","same","indent","deepIndent"],enumDescriptions:[m("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),m("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),m("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),m("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:m("wrappingIndent","Controls the indentation of wrapped lines."),default:"same"}})}validate(e){switch(e){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}return 1}compute(e,t,i){return t.get(2)===2?0:i}}class hW extends B_{constructor(){super(147)}compute(e,t,i){const n=t.get(146);return{isDominatedByLongLines:e.isDominatedByLongLines,isWordWrapMinified:n.isWordWrapMinified,isViewportWrapping:n.isViewportWrapping,wrappingColumn:n.wrappingColumn}}}class uW extends Mt{constructor(){const e={enabled:!0,showDropSelector:"afterDrop"};super(36,"dropIntoEditor",e,{"editor.dropIntoEditor.enabled":{type:"boolean",default:e.enabled,markdownDescription:m("dropIntoEditor.enabled","Controls whether you can drag and drop a file into a text editor by holding down the `Shift` key (instead of opening the file in an editor).")},"editor.dropIntoEditor.showDropSelector":{type:"string",markdownDescription:m("dropIntoEditor.showDropSelector","Controls if a widget is shown when dropping files into the editor. This widget lets you control how the file is dropped."),enum:["afterDrop","never"],enumDescriptions:[m("dropIntoEditor.showDropSelector.afterDrop","Show the drop selector widget after a file is dropped into the editor."),m("dropIntoEditor.showDropSelector.never","Never show the drop selector widget. Instead the default drop provider is always used.")],default:"afterDrop"}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),showDropSelector:Ht(t.showDropSelector,this.defaultValue.showDropSelector,["afterDrop","never"])}}}class fW extends Mt{constructor(){const e={enabled:!0,showPasteSelector:"afterPaste"};super(85,"pasteAs",e,{"editor.pasteAs.enabled":{type:"boolean",default:e.enabled,markdownDescription:m("pasteAs.enabled","Controls whether you can paste content in different ways.")},"editor.pasteAs.showPasteSelector":{type:"string",markdownDescription:m("pasteAs.showPasteSelector","Controls if a widget is shown when pasting content in to the editor. This widget lets you control how the file is pasted."),enum:["afterPaste","never"],enumDescriptions:[m("pasteAs.showPasteSelector.afterPaste","Show the paste selector widget after content is pasted into the editor."),m("pasteAs.showPasteSelector.never","Never show the paste selector widget. Instead the default pasting behavior is always used.")],default:"afterPaste"}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),showPasteSelector:Ht(t.showPasteSelector,this.defaultValue.showPasteSelector,["afterPaste","never"])}}}const gW="Consolas, 'Courier New', monospace",mW="Menlo, Monaco, 'Courier New', monospace",pW="'Droid Sans Mono', 'monospace', monospace",ls={fontFamily:Ue?mW:Un?pW:gW,fontWeight:"normal",fontSize:Ue?12:14,lineHeight:0,letterSpacing:0},Zu=[];function Q(o){return Zu[o.id]=o,o}const Xh={acceptSuggestionOnCommitCharacter:Q(new Je(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:m("acceptSuggestionOnCommitCharacter","Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.")})),acceptSuggestionOnEnter:Q(new Wt(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",m("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:m("acceptSuggestionOnEnter","Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:Q(new I6),accessibilityPageSize:Q(new pt(3,"accessibilityPageSize",10,1,1073741824,{description:m("accessibilityPageSize","Controls the number of lines in the editor that can be read out by a screen reader at once. When we detect a screen reader we automatically set the default to be 500. Warning: this has a performance implication for numbers larger than the default."),tags:["accessibility"]})),ariaLabel:Q(new dn(4,"ariaLabel",m("editorViewAccessibleLabel","Editor content"))),ariaRequired:Q(new Je(5,"ariaRequired",!1,void 0)),screenReaderAnnounceInlineSuggestion:Q(new Je(8,"screenReaderAnnounceInlineSuggestion",!0,{description:m("screenReaderAnnounceInlineSuggestion","Control whether inline suggestions are announced by a screen reader."),tags:["accessibility"]})),autoClosingBrackets:Q(new Wt(6,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",m("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),m("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:m("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingComments:Q(new Wt(7,"autoClosingComments","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",m("editor.autoClosingComments.languageDefined","Use language configurations to determine when to autoclose comments."),m("editor.autoClosingComments.beforeWhitespace","Autoclose comments only when the cursor is to the left of whitespace."),""],description:m("autoClosingComments","Controls whether the editor should automatically close comments after the user adds an opening comment.")})),autoClosingDelete:Q(new Wt(9,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",m("editor.autoClosingDelete.auto","Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:m("autoClosingDelete","Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:Q(new Wt(10,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",m("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:m("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:Q(new Wt(11,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",m("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),m("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:m("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:Q(new vb(12,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],D6,{enumDescriptions:[m("editor.autoIndent.none","The editor will not insert indentation automatically."),m("editor.autoIndent.keep","The editor will keep the current line's indentation."),m("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),m("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),m("editor.autoIndent.full","The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.")],description:m("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:Q(new Je(13,"automaticLayout",!1)),autoSurround:Q(new Wt(14,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[m("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),m("editor.autoSurround.quotes","Surround with quotes but not brackets."),m("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:m("autoSurround","Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),bracketPairColorization:Q(new oW),bracketPairGuides:Q(new rW),stickyTabStops:Q(new Je(117,"stickyTabStops",!1,{description:m("stickyTabStops","Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:Q(new Je(17,"codeLens",!0,{description:m("codeLens","Controls whether the editor shows CodeLens.")})),codeLensFontFamily:Q(new dn(18,"codeLensFontFamily","",{description:m("codeLensFontFamily","Controls the font family for CodeLens.")})),codeLensFontSize:Q(new pt(19,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,markdownDescription:m("codeLensFontSize","Controls the font size in pixels for CodeLens. When set to 0, 90% of `#editor.fontSize#` is used.")})),colorDecorators:Q(new Je(20,"colorDecorators",!0,{description:m("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),colorDecoratorActivatedOn:Q(new Wt(149,"colorDecoratorsActivatedOn","clickAndHover",["clickAndHover","hover","click"],{enumDescriptions:[m("editor.colorDecoratorActivatedOn.clickAndHover","Make the color picker appear both on click and hover of the color decorator"),m("editor.colorDecoratorActivatedOn.hover","Make the color picker appear on hover of the color decorator"),m("editor.colorDecoratorActivatedOn.click","Make the color picker appear on click of the color decorator")],description:m("colorDecoratorActivatedOn","Controls the condition to make a color picker appear from a color decorator")})),colorDecoratorsLimit:Q(new pt(21,"colorDecoratorsLimit",500,1,1e6,{markdownDescription:m("colorDecoratorsLimit","Controls the max number of color decorators that can be rendered in an editor at once.")})),columnSelection:Q(new Je(22,"columnSelection",!1,{description:m("columnSelection","Enable that the selection with the mouse and keys is doing column selection.")})),comments:Q(new E6),contextmenu:Q(new Je(24,"contextmenu",!0)),copyWithSyntaxHighlighting:Q(new Je(25,"copyWithSyntaxHighlighting",!0,{description:m("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:Q(new vb(26,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],N6,{description:m("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:Q(new Wt(27,"cursorSmoothCaretAnimation","off",["off","explicit","on"],{enumDescriptions:[m("cursorSmoothCaretAnimation.off","Smooth caret animation is disabled."),m("cursorSmoothCaretAnimation.explicit","Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture."),m("cursorSmoothCaretAnimation.on","Smooth caret animation is always enabled.")],description:m("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:Q(new vb(28,"cursorStyle",Ai.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],T6,{description:m("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:Q(new pt(29,"cursorSurroundingLines",0,0,1073741824,{description:m("cursorSurroundingLines","Controls the minimal number of visible leading lines (minimum 0) and trailing lines (minimum 1) surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.")})),cursorSurroundingLinesStyle:Q(new Wt(30,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[m("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),m("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],markdownDescription:m("cursorSurroundingLinesStyle","Controls when `#editor.cursorSurroundingLines#` should be enforced.")})),cursorWidth:Q(new pt(31,"cursorWidth",0,0,1073741824,{markdownDescription:m("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:Q(new Je(32,"disableLayerHinting",!1)),disableMonospaceOptimizations:Q(new Je(33,"disableMonospaceOptimizations",!1)),domReadOnly:Q(new Je(34,"domReadOnly",!1)),dragAndDrop:Q(new Je(35,"dragAndDrop",!0,{description:m("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:Q(new R6),dropIntoEditor:Q(new uW),stickyScroll:Q(new V6),experimentalWhitespaceRendering:Q(new Wt(38,"experimentalWhitespaceRendering","svg",["svg","font","off"],{enumDescriptions:[m("experimentalWhitespaceRendering.svg","Use a new rendering method with svgs."),m("experimentalWhitespaceRendering.font","Use a new rendering method with font characters."),m("experimentalWhitespaceRendering.off","Use the stable rendering method.")],description:m("experimentalWhitespaceRendering","Controls whether whitespace is rendered with a new, experimental method.")})),extraEditorClassName:Q(new dn(39,"extraEditorClassName","")),fastScrollSensitivity:Q(new Ts(40,"fastScrollSensitivity",5,o=>o<=0?5:o,{markdownDescription:m("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:Q(new A6),fixedOverflowWidgets:Q(new Je(42,"fixedOverflowWidgets",!1)),folding:Q(new Je(43,"folding",!0,{description:m("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:Q(new Wt(44,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[m("foldingStrategy.auto","Use a language-specific folding strategy if available, else the indentation-based one."),m("foldingStrategy.indentation","Use the indentation-based folding strategy.")],description:m("foldingStrategy","Controls the strategy for computing folding ranges.")})),foldingHighlight:Q(new Je(45,"foldingHighlight",!0,{description:m("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),foldingImportsByDefault:Q(new Je(46,"foldingImportsByDefault",!1,{description:m("foldingImportsByDefault","Controls whether the editor automatically collapses import ranges.")})),foldingMaximumRegions:Q(new pt(47,"foldingMaximumRegions",5e3,10,65e3,{description:m("foldingMaximumRegions","The maximum number of foldable regions. Increasing this value may result in the editor becoming less responsive when the current source has a large number of foldable regions.")})),unfoldOnClickAfterEndOfLine:Q(new Je(48,"unfoldOnClickAfterEndOfLine",!1,{description:m("unfoldOnClickAfterEndOfLine","Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:Q(new dn(49,"fontFamily",ls.fontFamily,{description:m("fontFamily","Controls the font family.")})),fontInfo:Q(new P6),fontLigatures2:Q(new Mc),fontSize:Q(new O6),fontWeight:Q(new IL),fontVariations:Q(new Hp),formatOnPaste:Q(new Je(55,"formatOnPaste",!1,{description:m("formatOnPaste","Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.")})),formatOnType:Q(new Je(56,"formatOnType",!1,{description:m("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:Q(new Je(57,"glyphMargin",!0,{description:m("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:Q(new F6),hideCursorInOverviewRuler:Q(new Je(59,"hideCursorInOverviewRuler",!1,{description:m("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),hover:Q(new B6),inDiffEditor:Q(new Je(61,"inDiffEditor",!1)),letterSpacing:Q(new Ts(64,"letterSpacing",ls.letterSpacing,o=>Ts.clamp(o,-5,20),{description:m("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:Q(new H6),lineDecorationsWidth:Q(new U6),lineHeight:Q(new $6),lineNumbers:Q(new X6),lineNumbersMinChars:Q(new pt(69,"lineNumbersMinChars",5,1,300)),linkedEditing:Q(new Je(70,"linkedEditing",!1,{description:m("linkedEditing","Controls whether the editor has linked editing enabled. Depending on the language, related symbols such as HTML tags, are updated while editing.")})),links:Q(new Je(71,"links",!0,{description:m("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:Q(new Wt(72,"matchBrackets","always",["always","near","never"],{description:m("matchBrackets","Highlight matching brackets.")})),minimap:Q(new K6),mouseStyle:Q(new Wt(74,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:Q(new Ts(75,"mouseWheelScrollSensitivity",1,o=>o===0?1:o,{markdownDescription:m("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:Q(new Je(76,"mouseWheelZoom",!1,{markdownDescription:Ue?m("mouseWheelZoom.mac","Zoom the font of the editor when using mouse wheel and holding `Cmd`."):m("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:Q(new Je(77,"multiCursorMergeOverlapping",!0,{description:m("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:Q(new vb(78,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],j6,{markdownEnumDescriptions:[m("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),m("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:m({key:"multiCursorModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add multiple cursors with the mouse. The Go to Definition and Open Link mouse gestures will adapt such that they do not conflict with the [multicursor modifier](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).")})),multiCursorPaste:Q(new Wt(79,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[m("multiCursorPaste.spread","Each cursor pastes a single line of the text."),m("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:m("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),multiCursorLimit:Q(new pt(80,"multiCursorLimit",1e4,1,1e5,{markdownDescription:m("multiCursorLimit","Controls the max number of cursors that can be in an active editor at once.")})),occurrencesHighlight:Q(new Wt(81,"occurrencesHighlight","singleFile",["off","singleFile","multiFile"],{markdownEnumDescriptions:[m("occurrencesHighlight.off","Does not highlight occurrences."),m("occurrencesHighlight.singleFile","Highlights occurrences only in the current file."),m("occurrencesHighlight.multiFile","Experimental: Highlights occurrences across all valid open files.")],markdownDescription:m("occurrencesHighlight","Controls whether occurrences should be highlighted across open files.")})),overviewRulerBorder:Q(new Je(82,"overviewRulerBorder",!0,{description:m("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:Q(new pt(83,"overviewRulerLanes",3,0,3)),padding:Q(new q6),pasteAs:Q(new fW),parameterHints:Q(new G6),peekWidgetDefaultFocus:Q(new Wt(87,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[m("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),m("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:m("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),placeholder:Q(new Y6),definitionLinkOpensInPeek:Q(new Je(89,"definitionLinkOpensInPeek",!1,{description:m("definitionLinkOpensInPeek","Controls whether the Go to Definition mouse gesture always opens the peek widget.")})),quickSuggestions:Q(new Q6),quickSuggestionsDelay:Q(new pt(91,"quickSuggestionsDelay",10,0,1073741824,{description:m("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:Q(new Je(92,"readOnly",!1)),readOnlyMessage:Q(new eW),renameOnType:Q(new Je(94,"renameOnType",!1,{description:m("renameOnType","Controls whether the editor auto renames on type."),markdownDeprecationMessage:m("renameOnTypeDeprecate","Deprecated, use `editor.linkedEditing` instead.")})),renderControlCharacters:Q(new Je(95,"renderControlCharacters",!0,{description:m("renderControlCharacters","Controls whether the editor should render control characters."),restricted:!0})),renderFinalNewline:Q(new Wt(96,"renderFinalNewline",Un?"dimmed":"on",["off","on","dimmed"],{description:m("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:Q(new Wt(97,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",m("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:m("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderLineHighlightOnlyWhenFocus:Q(new Je(98,"renderLineHighlightOnlyWhenFocus",!1,{description:m("renderLineHighlightOnlyWhenFocus","Controls if the editor should render the current line highlight only when the editor is focused.")})),renderValidationDecorations:Q(new Wt(99,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:Q(new Wt(100,"renderWhitespace","selection",["none","boundary","selection","trailing","all"],{enumDescriptions:["",m("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),m("renderWhitespace.selection","Render whitespace characters only on selected text."),m("renderWhitespace.trailing","Render only trailing whitespace characters."),""],description:m("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:Q(new pt(101,"revealHorizontalRightPadding",15,0,1e3)),roundedSelection:Q(new Je(102,"roundedSelection",!0,{description:m("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:Q(new J6),scrollbar:Q(new tW),scrollBeyondLastColumn:Q(new pt(105,"scrollBeyondLastColumn",4,0,1073741824,{description:m("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:Q(new Je(106,"scrollBeyondLastLine",!0,{description:m("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),scrollPredominantAxis:Q(new Je(107,"scrollPredominantAxis",!0,{description:m("scrollPredominantAxis","Scroll only along the predominant axis when scrolling both vertically and horizontally at the same time. Prevents horizontal drift when scrolling vertically on a trackpad.")})),selectionClipboard:Q(new Je(108,"selectionClipboard",!0,{description:m("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:Un})),selectionHighlight:Q(new Je(109,"selectionHighlight",!0,{description:m("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:Q(new Je(110,"selectOnLineNumbers",!0)),showFoldingControls:Q(new Wt(111,"showFoldingControls","mouseover",["always","never","mouseover"],{enumDescriptions:[m("showFoldingControls.always","Always show the folding controls."),m("showFoldingControls.never","Never show the folding controls and reduce the gutter size."),m("showFoldingControls.mouseover","Only show the folding controls when the mouse is over the gutter.")],description:m("showFoldingControls","Controls when the folding controls on the gutter are shown.")})),showUnused:Q(new Je(112,"showUnused",!0,{description:m("showUnused","Controls fading out of unused code.")})),showDeprecated:Q(new Je(141,"showDeprecated",!0,{description:m("showDeprecated","Controls strikethrough deprecated variables.")})),inlayHints:Q(new z6),snippetSuggestions:Q(new Wt(113,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[m("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),m("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),m("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),m("snippetSuggestions.none","Do not show snippet suggestions.")],description:m("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smartSelect:Q(new lW),smoothScrolling:Q(new Je(115,"smoothScrolling",!1,{description:m("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:Q(new pt(118,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:Q(new aW),inlineSuggest:Q(new nW),inlineEdit:Q(new sW),inlineCompletionsAccessibilityVerbose:Q(new Je(150,"inlineCompletionsAccessibilityVerbose",!1,{description:m("inlineCompletionsAccessibilityVerbose","Controls whether the accessibility hint should be provided to screen reader users when an inline completion is shown.")})),suggestFontSize:Q(new pt(120,"suggestFontSize",0,0,1e3,{markdownDescription:m("suggestFontSize","Font size for the suggest widget. When set to {0}, the value of {1} is used.","`0`","`#editor.fontSize#`")})),suggestLineHeight:Q(new pt(121,"suggestLineHeight",0,0,1e3,{markdownDescription:m("suggestLineHeight","Line height for the suggest widget. When set to {0}, the value of {1} is used. The minimum value is 8.","`0`","`#editor.lineHeight#`")})),suggestOnTriggerCharacters:Q(new Je(122,"suggestOnTriggerCharacters",!0,{description:m("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:Q(new Wt(123,"suggestSelection","first",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[m("suggestSelection.first","Always select the first suggestion."),m("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),m("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:m("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:Q(new Wt(124,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[m("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),m("tabCompletion.off","Disable tab completions."),m("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:m("tabCompletion","Enables tab completions.")})),tabIndex:Q(new pt(125,"tabIndex",0,-1,1073741824)),unicodeHighlight:Q(new iW),unusualLineTerminators:Q(new Wt(127,"unusualLineTerminators","prompt",["auto","off","prompt"],{enumDescriptions:[m("unusualLineTerminators.auto","Unusual line terminators are automatically removed."),m("unusualLineTerminators.off","Unusual line terminators are ignored."),m("unusualLineTerminators.prompt","Unusual line terminators prompt to be removed.")],description:m("unusualLineTerminators","Remove unusual line terminators that might cause problems.")})),useShadowDOM:Q(new Je(128,"useShadowDOM",!0)),useTabStops:Q(new Je(129,"useTabStops",!0,{description:m("useTabStops","Spaces and tabs are inserted and deleted in alignment with tab stops.")})),wordBreak:Q(new Wt(130,"wordBreak","normal",["normal","keepAll"],{markdownEnumDescriptions:[m("wordBreak.normal","Use the default line break rule."),m("wordBreak.keepAll","Word breaks should not be used for Chinese/Japanese/Korean (CJK) text. Non-CJK text behavior is the same as for normal.")],description:m("wordBreak","Controls the word break rules used for Chinese/Japanese/Korean (CJK) text.")})),wordSegmenterLocales:Q(new cW),wordSeparators:Q(new dn(132,"wordSeparators",$5,{description:m("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:Q(new Wt(133,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[m("wordWrap.off","Lines will never wrap."),m("wordWrap.on","Lines will wrap at the viewport width."),m({key:"wordWrap.wordWrapColumn",comment:["- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at `#editor.wordWrapColumn#`."),m({key:"wordWrap.bounded",comment:["- viewport means the edge of the visible window size.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:m({key:"wordWrap",comment:["- 'off', 'on', 'wordWrapColumn' and 'bounded' refer to values the setting can take and should not be localized.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:Q(new dn(134,"wordWrapBreakAfterCharacters"," })]?|/&.,;¢°′″‰℃、。。、¢,.:;?!%・・ゝゞヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ァィゥェォャュョッー”〉》」』】〕)]}」")),wordWrapBreakBeforeCharacters:Q(new dn(135,"wordWrapBreakBeforeCharacters","([{‘“〈《「『【〔([{「£¥$£¥++")),wordWrapColumn:Q(new pt(136,"wordWrapColumn",80,1,1073741824,{markdownDescription:m({key:"wordWrapColumn",comment:["- `editor.wordWrap` refers to a different setting and should not be localized.","- 'wordWrapColumn' and 'bounded' refer to values the different setting can take and should not be localized."]},"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapOverride1:Q(new Wt(137,"wordWrapOverride1","inherit",["off","on","inherit"])),wordWrapOverride2:Q(new Wt(138,"wordWrapOverride2","inherit",["off","on","inherit"])),editorClassName:Q(new M6),defaultColorDecorators:Q(new Je(148,"defaultColorDecorators",!1,{markdownDescription:m("defaultColorDecorators","Controls whether inline color decorations should be shown using the default document color provider")})),pixelRatio:Q(new Z6),tabFocusMode:Q(new Je(145,"tabFocusMode",!1,{markdownDescription:m("tabFocusMode","Controls whether the editor receives tabs or defers them to the workbench for navigation.")})),layoutInfo:Q(new Ef),wrappingInfo:Q(new hW),wrappingIndent:Q(new dW),wrappingStrategy:Q(new W6)};class _W{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?ig.isErrorNoTelemetry(e)?new ig(e.message+` + +`+e.stack):new Error(e.message+` + +`+e.stack):e},0)}}emit(e){this.listeners.forEach(t=>{t(e)})}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}}const G5=new _W;function Ze(o){$c(o)||G5.onUnexpectedError(o)}function $n(o){$c(o)||G5.onUnexpectedExternalError(o)}function HM(o){if(o instanceof Error){const{name:e,message:t}=o,i=o.stacktrace||o.stack;return{$isError:!0,name:e,message:t,stack:i,noTelemetry:ig.isErrorNoTelemetry(o)}}return o}const aC="Canceled";function $c(o){return o instanceof ha?!0:o instanceof Error&&o.name===aC&&o.message===aC}class ha extends Error{constructor(){super(aC),this.name=this.message}}function bW(){const o=new Error(aC);return o.name=o.message,o}function na(o){return o?new Error(`Illegal argument: ${o}`):new Error("Illegal argument")}function TN(o){return o?new Error(`Illegal state: ${o}`):new Error("Illegal state")}class CW extends Error{constructor(e){super("NotSupported"),e&&(this.message=e)}}class ig extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof ig)return e;const t=new ig;return t.message=e.message,t.stack=e.stack,t}static isErrorNoTelemetry(e){return e.name==="CodeExpectedError"}}class nt extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,nt.prototype)}}function ng(o,e){const t=this;let i=!1,n;return function(){return i||(i=!0,n=o.apply(t,arguments)),n}}function MN(o){return typeof o=="object"&&o!==null&&typeof o.dispose=="function"&&o.dispose.length===0}function xt(o){if(st.is(o)){const e=[];for(const t of o)if(t)try{t.dispose()}catch(i){e.push(i)}if(e.length===1)throw e[0];if(e.length>1)throw new AggregateError(e,"Encountered errors while disposing of store");return Array.isArray(o)?[]:o}else if(o)return o.dispose(),o}function No(...o){return _e(()=>xt(o))}function _e(o){return{dispose:ng(()=>{o()})}}const bw=class bw{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{xt(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?bw.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e}deleteAndLeak(e){e&&this._toDispose.has(e)&&this._toDispose.delete(e)}};bw.DISABLE_DISPOSED_WARNING=!1;let X=bw;const kM=class kM{constructor(){this._store=new X,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}};kM.None=Object.freeze({dispose(){}});let z=kM;class Dn{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){this._isDisposed||e===this._value||(this._value?.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}}class vW{constructor(e){this.object=e}dispose(){}}class RN{constructor(){this._store=new Map,this._isDisposed=!1}dispose(){this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{xt(this._store.values())}finally{this._store.clear()}}get(e){return this._store.get(e)}set(e,t,i=!1){this._isDisposed&&console.warn(new Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),i||this._store.get(e)?.dispose(),this._store.set(e,t)}deleteAndDispose(e){this._store.get(e)?.dispose(),this._store.delete(e)}[Symbol.iterator](){return this._store[Symbol.iterator]()}}const wW=globalThis.performance&&typeof globalThis.performance.now=="function";class Hs{static create(e){return new Hs(e)}constructor(e){this._now=wW&&e===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}}var J;(function(o){o.None=()=>z.None;function e(j,B){return u(j,()=>{},0,void 0,!0,void 0,B)}o.defer=e;function t(j){return(B,G=null,ne)=>{let ae=!1,de;return de=j(se=>{if(!ae)return de?de.dispose():ae=!0,B.call(G,se)},null,ne),ae&&de.dispose(),de}}o.once=t;function i(j,B){return o.once(o.filter(j,B))}o.onceIf=i;function n(j,B,G){return d((ne,ae=null,de)=>j(se=>ne.call(ae,B(se)),null,de),G)}o.map=n;function s(j,B,G){return d((ne,ae=null,de)=>j(se=>{B(se),ne.call(ae,se)},null,de),G)}o.forEach=s;function r(j,B,G){return d((ne,ae=null,de)=>j(se=>B(se)&&ne.call(ae,se),null,de),G)}o.filter=r;function a(j){return j}o.signal=a;function l(...j){return(B,G=null,ne)=>{const ae=No(...j.map(de=>de(se=>B.call(G,se))));return h(ae,ne)}}o.any=l;function c(j,B,G,ne){let ae=G;return n(j,de=>(ae=B(ae,de),ae),ne)}o.reduce=c;function d(j,B){let G;const ne={onWillAddFirstListener(){G=j(ae.fire,ae)},onDidRemoveLastListener(){G?.dispose()}},ae=new A(ne);return B?.add(ae),ae.event}function h(j,B){return B instanceof Array?B.push(j):B&&B.add(j),j}function u(j,B,G=100,ne=!1,ae=!1,de,se){let be,we,Rt,ct=0,Bt;const ht={leakWarningThreshold:de,onWillAddFirstListener(){be=j(js=>{ct++,we=B(we,js),ne&&!Rt&&(ei.fire(we),we=void 0),Bt=()=>{const fi=we;we=void 0,Rt=void 0,(!ne||ct>1)&&ei.fire(fi),ct=0},typeof G=="number"?(clearTimeout(Rt),Rt=setTimeout(Bt,G)):Rt===void 0&&(Rt=0,queueMicrotask(Bt))})},onWillRemoveListener(){ae&&ct>0&&Bt?.()},onDidRemoveLastListener(){Bt=void 0,be.dispose()}},ei=new A(ht);return se?.add(ei),ei.event}o.debounce=u;function f(j,B=0,G){return o.debounce(j,(ne,ae)=>ne?(ne.push(ae),ne):[ae],B,void 0,!0,void 0,G)}o.accumulate=f;function g(j,B=(ne,ae)=>ne===ae,G){let ne=!0,ae;return r(j,de=>{const se=ne||!B(de,ae);return ne=!1,ae=de,se},G)}o.latch=g;function p(j,B,G){return[o.filter(j,B,G),o.filter(j,ne=>!B(ne),G)]}o.split=p;function _(j,B=!1,G=[],ne){let ae=G.slice(),de=j(we=>{ae?ae.push(we):be.fire(we)});ne&&ne.add(de);const se=()=>{ae?.forEach(we=>be.fire(we)),ae=null},be=new A({onWillAddFirstListener(){de||(de=j(we=>be.fire(we)),ne&&ne.add(de))},onDidAddFirstListener(){ae&&(B?setTimeout(se):se())},onDidRemoveLastListener(){de&&de.dispose(),de=null}});return ne&&ne.add(be),be.event}o.buffer=_;function b(j,B){return(ne,ae,de)=>{const se=B(new w);return j(function(be){const we=se.evaluate(be);we!==C&&ne.call(ae,we)},void 0,de)}}o.chain=b;const C=Symbol("HaltChainable");class w{constructor(){this.steps=[]}map(B){return this.steps.push(B),this}forEach(B){return this.steps.push(G=>(B(G),G)),this}filter(B){return this.steps.push(G=>B(G)?G:C),this}reduce(B,G){let ne=G;return this.steps.push(ae=>(ne=B(ne,ae),ne)),this}latch(B=(G,ne)=>G===ne){let G=!0,ne;return this.steps.push(ae=>{const de=G||!B(ae,ne);return G=!1,ne=ae,de?ae:C}),this}evaluate(B){for(const G of this.steps)if(B=G(B),B===C)break;return B}}function v(j,B,G=ne=>ne){const ne=(...be)=>se.fire(G(...be)),ae=()=>j.on(B,ne),de=()=>j.removeListener(B,ne),se=new A({onWillAddFirstListener:ae,onDidRemoveLastListener:de});return se.event}o.fromNodeEventEmitter=v;function y(j,B,G=ne=>ne){const ne=(...be)=>se.fire(G(...be)),ae=()=>j.addEventListener(B,ne),de=()=>j.removeEventListener(B,ne),se=new A({onWillAddFirstListener:ae,onDidRemoveLastListener:de});return se.event}o.fromDOMEventEmitter=y;function x(j){return new Promise(B=>t(j)(B))}o.toPromise=x;function L(j){const B=new A;return j.then(G=>{B.fire(G)},()=>{B.fire(void 0)}).finally(()=>{B.dispose()}),B.event}o.fromPromise=L;function E(j,B){return j(G=>B.fire(G))}o.forward=E;function N(j,B,G){return B(G),j(ne=>B(ne))}o.runAndSubscribe=N;class H{constructor(B,G){this._observable=B,this._counter=0,this._hasChanged=!1;const ne={onWillAddFirstListener:()=>{B.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{B.removeObserver(this)}};this.emitter=new A(ne),G&&G.add(this.emitter)}beginUpdate(B){this._counter++}handlePossibleChange(B){}handleChange(B,G){this._hasChanged=!0}endUpdate(B){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function F(j,B){return new H(j,B).emitter.event}o.fromObservable=F;function W(j){return(B,G,ne)=>{let ae=0,de=!1;const se={beginUpdate(){ae++},endUpdate(){ae--,ae===0&&(j.reportChanges(),de&&(de=!1,B.call(G)))},handlePossibleChange(){},handleChange(){de=!0}};j.addObserver(se),j.reportChanges();const be={dispose(){j.removeObserver(se)}};return ne instanceof X?ne.add(be):Array.isArray(ne)&&ne.push(be),be}}o.fromObservableLight=W})(J||(J={}));const _f=class _f{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${_f._idPool++}`,_f.all.add(this)}start(e){this._stopWatch=new Hs,this.listenerCount=e}stop(){if(this._stopWatch){const e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}};_f.all=new Set,_f._idPool=0;let EL=_f,yW=-1;const Cw=class Cw{constructor(e,t,i=(Cw._idPool++).toString(16).padStart(3,"0")){this._errorHandler=e,this.threshold=t,this.name=i,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(e,t){const i=this.threshold;if(i<=0||t{const s=this._stacks.get(e.value)||0;this._stacks.set(e.value,s-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,t=0;for(const[i,n]of this._stacks)(!e||t{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){const a=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(a);const l=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],c=new LW(`${a}. HINT: Stack shows most frequent listener (${l[1]}-times)`,l[0]);return(this._options?.onListenerError||Ze)(c),z.None}if(this._disposed)return z.None;t&&(e=e.bind(t));const n=new jy(e);let s;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(n.stack=AN.create(),s=this._leakageMon.check(n.stack,this._size+1)),this._listeners?this._listeners instanceof jy?(this._deliveryQueue??=new Z5,this._listeners=[this._listeners,n]):this._listeners.push(n):(this._options?.onWillAddFirstListener?.(this),this._listeners=n,this._options?.onDidAddFirstListener?.(this)),this._size++;const r=_e(()=>{s?.(),this._removeListener(n)});return i instanceof X?i.add(r):Array.isArray(i)&&i.push(r),r},this._event}_removeListener(e){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(this._size===1){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}const t=this._listeners,i=t.indexOf(e);if(i===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,t[i]=void 0;const n=this._deliveryQueue.current===this;if(this._size*xW<=t.length){let s=0;for(let r=0;r0}}const kW=()=>new Z5;class Z5{constructor(){this.i=-1,this.end=0}enqueue(e,t,i){this.i=0,this.end=i,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}}class Nh extends A{constructor(e){super(e),this._isPaused=0,this._eventQueue=new yn,this._mergeFn=e?.merge}pause(){this._isPaused++}resume(){if(this._isPaused!==0&&--this._isPaused===0)if(this._mergeFn){if(this._eventQueue.size>0){const e=Array.from(this._eventQueue);this._eventQueue.clear(),super.fire(this._mergeFn(e))}}else for(;!this._isPaused&&this._eventQueue.size!==0;)super.fire(this._eventQueue.shift())}fire(e){this._size&&(this._isPaused!==0?this._eventQueue.push(e):super.fire(e))}}class Y5 extends Nh{constructor(e){super(e),this._delay=e.delay??100}fire(e){this._handle||(this.pause(),this._handle=setTimeout(()=>{this._handle=void 0,this.resume()},this._delay)),super.fire(e)}}class DW extends A{constructor(e){super(e),this._queuedEvents=[],this._mergeFn=e?.merge}fire(e){this.hasListeners()&&(this._queuedEvents.push(e),this._queuedEvents.length===1&&queueMicrotask(()=>{this._mergeFn?super.fire(this._mergeFn(this._queuedEvents)):this._queuedEvents.forEach(t=>super.fire(t)),this._queuedEvents=[]}))}}class IW{constructor(){this.hasListeners=!1,this.events=[],this.emitter=new A({onWillAddFirstListener:()=>this.onFirstListenerAdd(),onDidRemoveLastListener:()=>this.onLastListenerRemove()})}get event(){return this.emitter.event}add(e){const t={event:e,listener:null};return this.events.push(t),this.hasListeners&&this.hook(t),_e(ng(()=>{this.hasListeners&&this.unhook(t);const n=this.events.indexOf(t);this.events.splice(n,1)}))}onFirstListenerAdd(){this.hasListeners=!0,this.events.forEach(e=>this.hook(e))}onLastListenerRemove(){this.hasListeners=!1,this.events.forEach(e=>this.unhook(e))}hook(e){e.listener=e.event(t=>this.emitter.fire(t))}unhook(e){e.listener?.dispose(),e.listener=null}dispose(){this.emitter.dispose();for(const e of this.events)e.listener?.dispose();this.events=[]}}class W_{constructor(){this.data=[]}wrapEvent(e,t,i){return(n,s,r)=>e(a=>{const l=this.data[this.data.length-1];if(!t){l?l.buffers.push(()=>n.call(s,a)):n.call(s,a);return}const c=l;if(!c){n.call(s,t(i,a));return}c.items??=[],c.items.push(a),c.buffers.length===0&&l.buffers.push(()=>{c.reducedResult??=i?c.items.reduce(t,i):c.items.reduce(t),n.call(s,c.reducedResult)})},void 0,r)}bufferEvents(e){const t={buffers:new Array};this.data.push(t);const i=e();return this.data.pop(),t.buffers.forEach(n=>n()),i}}class VM{constructor(){this.listening=!1,this.inputEvent=J.None,this.inputEventListener=z.None,this.emitter=new A({onDidAddFirstListener:()=>{this.listening=!0,this.inputEventListener=this.inputEvent(this.emitter.fire,this.emitter)},onDidRemoveLastListener:()=>{this.listening=!1,this.inputEventListener.dispose()}}),this.event=this.emitter.event}set input(e){this.inputEvent=e,this.listening&&(this.inputEventListener.dispose(),this.inputEventListener=e(this.emitter.fire,this.emitter))}dispose(){this.inputEventListener.dispose(),this.emitter.dispose()}}const Q5=Object.freeze(function(o,e){const t=setTimeout(o.bind(e),0);return{dispose(){clearTimeout(t)}}});var ut;(function(o){function e(t){return t===o.None||t===o.Cancelled||t instanceof w1?!0:!t||typeof t!="object"?!1:typeof t.isCancellationRequested=="boolean"&&typeof t.onCancellationRequested=="function"}o.isCancellationToken=e,o.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:J.None}),o.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Q5})})(ut||(ut={}));class w1{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?Q5:(this._emitter||(this._emitter=new A),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class In{constructor(e){this._token=void 0,this._parentListener=void 0,this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new w1),this._token}cancel(){this._token?this._token instanceof w1&&this._token.cancel():this._token=ut.Cancelled}dispose(e=!1){e&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof w1&&this._token.dispose():this._token=ut.None}}function zM(o){const e=new In;return o.add({dispose(){e.cancel()}}),e.token}class PN{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}}const y1=new PN,TL=new PN,ML=new PN,X5=new Array(230),EW=Object.create(null),NW=Object.create(null),ON=[];for(let o=0;o<=193;o++)ON[o]=-1;(function(){const e=[[1,0,"None",0,"unknown",0,"VK_UNKNOWN","",""],[1,1,"Hyper",0,"",0,"","",""],[1,2,"Super",0,"",0,"","",""],[1,3,"Fn",0,"",0,"","",""],[1,4,"FnLock",0,"",0,"","",""],[1,5,"Suspend",0,"",0,"","",""],[1,6,"Resume",0,"",0,"","",""],[1,7,"Turbo",0,"",0,"","",""],[1,8,"Sleep",0,"",0,"VK_SLEEP","",""],[1,9,"WakeUp",0,"",0,"","",""],[0,10,"KeyA",31,"A",65,"VK_A","",""],[0,11,"KeyB",32,"B",66,"VK_B","",""],[0,12,"KeyC",33,"C",67,"VK_C","",""],[0,13,"KeyD",34,"D",68,"VK_D","",""],[0,14,"KeyE",35,"E",69,"VK_E","",""],[0,15,"KeyF",36,"F",70,"VK_F","",""],[0,16,"KeyG",37,"G",71,"VK_G","",""],[0,17,"KeyH",38,"H",72,"VK_H","",""],[0,18,"KeyI",39,"I",73,"VK_I","",""],[0,19,"KeyJ",40,"J",74,"VK_J","",""],[0,20,"KeyK",41,"K",75,"VK_K","",""],[0,21,"KeyL",42,"L",76,"VK_L","",""],[0,22,"KeyM",43,"M",77,"VK_M","",""],[0,23,"KeyN",44,"N",78,"VK_N","",""],[0,24,"KeyO",45,"O",79,"VK_O","",""],[0,25,"KeyP",46,"P",80,"VK_P","",""],[0,26,"KeyQ",47,"Q",81,"VK_Q","",""],[0,27,"KeyR",48,"R",82,"VK_R","",""],[0,28,"KeyS",49,"S",83,"VK_S","",""],[0,29,"KeyT",50,"T",84,"VK_T","",""],[0,30,"KeyU",51,"U",85,"VK_U","",""],[0,31,"KeyV",52,"V",86,"VK_V","",""],[0,32,"KeyW",53,"W",87,"VK_W","",""],[0,33,"KeyX",54,"X",88,"VK_X","",""],[0,34,"KeyY",55,"Y",89,"VK_Y","",""],[0,35,"KeyZ",56,"Z",90,"VK_Z","",""],[0,36,"Digit1",22,"1",49,"VK_1","",""],[0,37,"Digit2",23,"2",50,"VK_2","",""],[0,38,"Digit3",24,"3",51,"VK_3","",""],[0,39,"Digit4",25,"4",52,"VK_4","",""],[0,40,"Digit5",26,"5",53,"VK_5","",""],[0,41,"Digit6",27,"6",54,"VK_6","",""],[0,42,"Digit7",28,"7",55,"VK_7","",""],[0,43,"Digit8",29,"8",56,"VK_8","",""],[0,44,"Digit9",30,"9",57,"VK_9","",""],[0,45,"Digit0",21,"0",48,"VK_0","",""],[1,46,"Enter",3,"Enter",13,"VK_RETURN","",""],[1,47,"Escape",9,"Escape",27,"VK_ESCAPE","",""],[1,48,"Backspace",1,"Backspace",8,"VK_BACK","",""],[1,49,"Tab",2,"Tab",9,"VK_TAB","",""],[1,50,"Space",10,"Space",32,"VK_SPACE","",""],[0,51,"Minus",88,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[0,52,"Equal",86,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[0,53,"BracketLeft",92,"[",219,"VK_OEM_4","[","OEM_4"],[0,54,"BracketRight",94,"]",221,"VK_OEM_6","]","OEM_6"],[0,55,"Backslash",93,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,56,"IntlHash",0,"",0,"","",""],[0,57,"Semicolon",85,";",186,"VK_OEM_1",";","OEM_1"],[0,58,"Quote",95,"'",222,"VK_OEM_7","'","OEM_7"],[0,59,"Backquote",91,"`",192,"VK_OEM_3","`","OEM_3"],[0,60,"Comma",87,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[0,61,"Period",89,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[0,62,"Slash",90,"/",191,"VK_OEM_2","/","OEM_2"],[1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL","",""],[1,64,"F1",59,"F1",112,"VK_F1","",""],[1,65,"F2",60,"F2",113,"VK_F2","",""],[1,66,"F3",61,"F3",114,"VK_F3","",""],[1,67,"F4",62,"F4",115,"VK_F4","",""],[1,68,"F5",63,"F5",116,"VK_F5","",""],[1,69,"F6",64,"F6",117,"VK_F6","",""],[1,70,"F7",65,"F7",118,"VK_F7","",""],[1,71,"F8",66,"F8",119,"VK_F8","",""],[1,72,"F9",67,"F9",120,"VK_F9","",""],[1,73,"F10",68,"F10",121,"VK_F10","",""],[1,74,"F11",69,"F11",122,"VK_F11","",""],[1,75,"F12",70,"F12",123,"VK_F12","",""],[1,76,"PrintScreen",0,"",0,"","",""],[1,77,"ScrollLock",84,"ScrollLock",145,"VK_SCROLL","",""],[1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE","",""],[1,79,"Insert",19,"Insert",45,"VK_INSERT","",""],[1,80,"Home",14,"Home",36,"VK_HOME","",""],[1,81,"PageUp",11,"PageUp",33,"VK_PRIOR","",""],[1,82,"Delete",20,"Delete",46,"VK_DELETE","",""],[1,83,"End",13,"End",35,"VK_END","",""],[1,84,"PageDown",12,"PageDown",34,"VK_NEXT","",""],[1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",""],[1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",""],[1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",""],[1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",""],[1,89,"NumLock",83,"NumLock",144,"VK_NUMLOCK","",""],[1,90,"NumpadDivide",113,"NumPad_Divide",111,"VK_DIVIDE","",""],[1,91,"NumpadMultiply",108,"NumPad_Multiply",106,"VK_MULTIPLY","",""],[1,92,"NumpadSubtract",111,"NumPad_Subtract",109,"VK_SUBTRACT","",""],[1,93,"NumpadAdd",109,"NumPad_Add",107,"VK_ADD","",""],[1,94,"NumpadEnter",3,"",0,"","",""],[1,95,"Numpad1",99,"NumPad1",97,"VK_NUMPAD1","",""],[1,96,"Numpad2",100,"NumPad2",98,"VK_NUMPAD2","",""],[1,97,"Numpad3",101,"NumPad3",99,"VK_NUMPAD3","",""],[1,98,"Numpad4",102,"NumPad4",100,"VK_NUMPAD4","",""],[1,99,"Numpad5",103,"NumPad5",101,"VK_NUMPAD5","",""],[1,100,"Numpad6",104,"NumPad6",102,"VK_NUMPAD6","",""],[1,101,"Numpad7",105,"NumPad7",103,"VK_NUMPAD7","",""],[1,102,"Numpad8",106,"NumPad8",104,"VK_NUMPAD8","",""],[1,103,"Numpad9",107,"NumPad9",105,"VK_NUMPAD9","",""],[1,104,"Numpad0",98,"NumPad0",96,"VK_NUMPAD0","",""],[1,105,"NumpadDecimal",112,"NumPad_Decimal",110,"VK_DECIMAL","",""],[0,106,"IntlBackslash",97,"OEM_102",226,"VK_OEM_102","",""],[1,107,"ContextMenu",58,"ContextMenu",93,"","",""],[1,108,"Power",0,"",0,"","",""],[1,109,"NumpadEqual",0,"",0,"","",""],[1,110,"F13",71,"F13",124,"VK_F13","",""],[1,111,"F14",72,"F14",125,"VK_F14","",""],[1,112,"F15",73,"F15",126,"VK_F15","",""],[1,113,"F16",74,"F16",127,"VK_F16","",""],[1,114,"F17",75,"F17",128,"VK_F17","",""],[1,115,"F18",76,"F18",129,"VK_F18","",""],[1,116,"F19",77,"F19",130,"VK_F19","",""],[1,117,"F20",78,"F20",131,"VK_F20","",""],[1,118,"F21",79,"F21",132,"VK_F21","",""],[1,119,"F22",80,"F22",133,"VK_F22","",""],[1,120,"F23",81,"F23",134,"VK_F23","",""],[1,121,"F24",82,"F24",135,"VK_F24","",""],[1,122,"Open",0,"",0,"","",""],[1,123,"Help",0,"",0,"","",""],[1,124,"Select",0,"",0,"","",""],[1,125,"Again",0,"",0,"","",""],[1,126,"Undo",0,"",0,"","",""],[1,127,"Cut",0,"",0,"","",""],[1,128,"Copy",0,"",0,"","",""],[1,129,"Paste",0,"",0,"","",""],[1,130,"Find",0,"",0,"","",""],[1,131,"AudioVolumeMute",117,"AudioVolumeMute",173,"VK_VOLUME_MUTE","",""],[1,132,"AudioVolumeUp",118,"AudioVolumeUp",175,"VK_VOLUME_UP","",""],[1,133,"AudioVolumeDown",119,"AudioVolumeDown",174,"VK_VOLUME_DOWN","",""],[1,134,"NumpadComma",110,"NumPad_Separator",108,"VK_SEPARATOR","",""],[0,135,"IntlRo",115,"ABNT_C1",193,"VK_ABNT_C1","",""],[1,136,"KanaMode",0,"",0,"","",""],[0,137,"IntlYen",0,"",0,"","",""],[1,138,"Convert",0,"",0,"","",""],[1,139,"NonConvert",0,"",0,"","",""],[1,140,"Lang1",0,"",0,"","",""],[1,141,"Lang2",0,"",0,"","",""],[1,142,"Lang3",0,"",0,"","",""],[1,143,"Lang4",0,"",0,"","",""],[1,144,"Lang5",0,"",0,"","",""],[1,145,"Abort",0,"",0,"","",""],[1,146,"Props",0,"",0,"","",""],[1,147,"NumpadParenLeft",0,"",0,"","",""],[1,148,"NumpadParenRight",0,"",0,"","",""],[1,149,"NumpadBackspace",0,"",0,"","",""],[1,150,"NumpadMemoryStore",0,"",0,"","",""],[1,151,"NumpadMemoryRecall",0,"",0,"","",""],[1,152,"NumpadMemoryClear",0,"",0,"","",""],[1,153,"NumpadMemoryAdd",0,"",0,"","",""],[1,154,"NumpadMemorySubtract",0,"",0,"","",""],[1,155,"NumpadClear",131,"Clear",12,"VK_CLEAR","",""],[1,156,"NumpadClearEntry",0,"",0,"","",""],[1,0,"",5,"Ctrl",17,"VK_CONTROL","",""],[1,0,"",4,"Shift",16,"VK_SHIFT","",""],[1,0,"",6,"Alt",18,"VK_MENU","",""],[1,0,"",57,"Meta",91,"VK_COMMAND","",""],[1,157,"ControlLeft",5,"",0,"VK_LCONTROL","",""],[1,158,"ShiftLeft",4,"",0,"VK_LSHIFT","",""],[1,159,"AltLeft",6,"",0,"VK_LMENU","",""],[1,160,"MetaLeft",57,"",0,"VK_LWIN","",""],[1,161,"ControlRight",5,"",0,"VK_RCONTROL","",""],[1,162,"ShiftRight",4,"",0,"VK_RSHIFT","",""],[1,163,"AltRight",6,"",0,"VK_RMENU","",""],[1,164,"MetaRight",57,"",0,"VK_RWIN","",""],[1,165,"BrightnessUp",0,"",0,"","",""],[1,166,"BrightnessDown",0,"",0,"","",""],[1,167,"MediaPlay",0,"",0,"","",""],[1,168,"MediaRecord",0,"",0,"","",""],[1,169,"MediaFastForward",0,"",0,"","",""],[1,170,"MediaRewind",0,"",0,"","",""],[1,171,"MediaTrackNext",124,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK","",""],[1,172,"MediaTrackPrevious",125,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK","",""],[1,173,"MediaStop",126,"MediaStop",178,"VK_MEDIA_STOP","",""],[1,174,"Eject",0,"",0,"","",""],[1,175,"MediaPlayPause",127,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE","",""],[1,176,"MediaSelect",128,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT","",""],[1,177,"LaunchMail",129,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL","",""],[1,178,"LaunchApp2",130,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2","",""],[1,179,"LaunchApp1",0,"",0,"VK_MEDIA_LAUNCH_APP1","",""],[1,180,"SelectTask",0,"",0,"","",""],[1,181,"LaunchScreenSaver",0,"",0,"","",""],[1,182,"BrowserSearch",120,"BrowserSearch",170,"VK_BROWSER_SEARCH","",""],[1,183,"BrowserHome",121,"BrowserHome",172,"VK_BROWSER_HOME","",""],[1,184,"BrowserBack",122,"BrowserBack",166,"VK_BROWSER_BACK","",""],[1,185,"BrowserForward",123,"BrowserForward",167,"VK_BROWSER_FORWARD","",""],[1,186,"BrowserStop",0,"",0,"VK_BROWSER_STOP","",""],[1,187,"BrowserRefresh",0,"",0,"VK_BROWSER_REFRESH","",""],[1,188,"BrowserFavorites",0,"",0,"VK_BROWSER_FAVORITES","",""],[1,189,"ZoomToggle",0,"",0,"","",""],[1,190,"MailReply",0,"",0,"","",""],[1,191,"MailForward",0,"",0,"","",""],[1,192,"MailSend",0,"",0,"","",""],[1,0,"",114,"KeyInComposition",229,"","",""],[1,0,"",116,"ABNT_C2",194,"VK_ABNT_C2","",""],[1,0,"",96,"OEM_8",223,"VK_OEM_8","",""],[1,0,"",0,"",0,"VK_KANA","",""],[1,0,"",0,"",0,"VK_HANGUL","",""],[1,0,"",0,"",0,"VK_JUNJA","",""],[1,0,"",0,"",0,"VK_FINAL","",""],[1,0,"",0,"",0,"VK_HANJA","",""],[1,0,"",0,"",0,"VK_KANJI","",""],[1,0,"",0,"",0,"VK_CONVERT","",""],[1,0,"",0,"",0,"VK_NONCONVERT","",""],[1,0,"",0,"",0,"VK_ACCEPT","",""],[1,0,"",0,"",0,"VK_MODECHANGE","",""],[1,0,"",0,"",0,"VK_SELECT","",""],[1,0,"",0,"",0,"VK_PRINT","",""],[1,0,"",0,"",0,"VK_EXECUTE","",""],[1,0,"",0,"",0,"VK_SNAPSHOT","",""],[1,0,"",0,"",0,"VK_HELP","",""],[1,0,"",0,"",0,"VK_APPS","",""],[1,0,"",0,"",0,"VK_PROCESSKEY","",""],[1,0,"",0,"",0,"VK_PACKET","",""],[1,0,"",0,"",0,"VK_DBE_SBCSCHAR","",""],[1,0,"",0,"",0,"VK_DBE_DBCSCHAR","",""],[1,0,"",0,"",0,"VK_ATTN","",""],[1,0,"",0,"",0,"VK_CRSEL","",""],[1,0,"",0,"",0,"VK_EXSEL","",""],[1,0,"",0,"",0,"VK_EREOF","",""],[1,0,"",0,"",0,"VK_PLAY","",""],[1,0,"",0,"",0,"VK_ZOOM","",""],[1,0,"",0,"",0,"VK_NONAME","",""],[1,0,"",0,"",0,"VK_PA1","",""],[1,0,"",0,"",0,"VK_OEM_CLEAR","",""]],t=[],i=[];for(const n of e){const[s,r,a,l,c,d,h,u,f]=n;if(i[r]||(i[r]=!0,EW[a]=r,NW[a.toLowerCase()]=r,s&&(ON[r]=l)),!t[l]){if(t[l]=!0,!c)throw new Error(`String representation missing for key code ${l} around scan code ${a}`);y1.define(l,c),TL.define(l,u||c),ML.define(l,f||u||c)}d&&(X5[d]=l)}})();var el;(function(o){function e(a){return y1.keyCodeToStr(a)}o.toString=e;function t(a){return y1.strToKeyCode(a)}o.fromString=t;function i(a){return TL.keyCodeToStr(a)}o.toUserSettingsUS=i;function n(a){return ML.keyCodeToStr(a)}o.toUserSettingsGeneral=n;function s(a){return TL.strToKeyCode(a)||ML.strToKeyCode(a)}o.fromUserSettings=s;function r(a){if(a>=98&&a<=113)return null;switch(a){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return y1.keyCodeToStr(a)}o.toElectronAccelerator=r})(el||(el={}));function Vp(o,e){const t=(e&65535)<<16>>>0;return(o|t)>>>0}var UM={};let Tf;const qy=globalThis.vscode;if(typeof qy<"u"&&typeof qy.process<"u"){const o=qy.process;Tf={get platform(){return o.platform},get arch(){return o.arch},get env(){return o.env},cwd(){return o.cwd()}}}else typeof process<"u"&&typeof process?.versions?.node=="string"?Tf={get platform(){return process.platform},get arch(){return process.arch},get env(){return UM},cwd(){return UM.VSCODE_CWD||process.cwd()}}:Tf={get platform(){return kn?"win32":Ue?"darwin":"linux"},get arch(){},get env(){return{}},cwd(){return"/"}};const lC=Tf.cwd,RL=Tf.env,TW=Tf.platform,MW=65,RW=97,AW=90,PW=122,hc=46,on=47,vs=92,Wl=58,OW=63;class J5 extends Error{constructor(e,t,i){let n;typeof t=="string"&&t.indexOf("not ")===0?(n="must not be",t=t.replace(/^not /,"")):n="must be";const s=e.indexOf(".")!==-1?"property":"argument";let r=`The "${e}" ${s} ${n} of type ${t}`;r+=`. Received type ${typeof i}`,super(r),this.code="ERR_INVALID_ARG_TYPE"}}function FW(o,e){if(o===null||typeof o!="object")throw new J5(e,"Object",o)}function ki(o,e){if(typeof o!="string")throw new J5(e,"string",o)}const Tl=TW==="win32";function at(o){return o===on||o===vs}function AL(o){return o===on}function Hl(o){return o>=MW&&o<=AW||o>=RW&&o<=PW}function cC(o,e,t,i){let n="",s=0,r=-1,a=0,l=0;for(let c=0;c<=o.length;++c){if(c2){const d=n.lastIndexOf(t);d===-1?(n="",s=0):(n=n.slice(0,d),s=n.length-1-n.lastIndexOf(t)),r=c,a=0;continue}else if(n.length!==0){n="",s=0,r=c,a=0;continue}}e&&(n+=n.length>0?`${t}..`:"..",s=2)}else n.length>0?n+=`${t}${o.slice(r+1,c)}`:n=o.slice(r+1,c),s=c-r-1;r=c,a=0}else l===hc&&a!==-1?++a:a=-1}return n}function BW(o){return o?`${o[0]==="."?"":"."}${o}`:""}function eF(o,e){FW(e,"pathObject");const t=e.dir||e.root,i=e.base||`${e.name||""}${BW(e.ext)}`;return t?t===e.root?`${t}${i}`:`${t}${o}${i}`:i}const Vn={resolve(...o){let e="",t="",i=!1;for(let n=o.length-1;n>=-1;n--){let s;if(n>=0){if(s=o[n],ki(s,`paths[${n}]`),s.length===0)continue}else e.length===0?s=lC():(s=RL[`=${e}`]||lC(),(s===void 0||s.slice(0,2).toLowerCase()!==e.toLowerCase()&&s.charCodeAt(2)===vs)&&(s=`${e}\\`));const r=s.length;let a=0,l="",c=!1;const d=s.charCodeAt(0);if(r===1)at(d)&&(a=1,c=!0);else if(at(d))if(c=!0,at(s.charCodeAt(1))){let h=2,u=h;for(;h2&&at(s.charCodeAt(2))&&(c=!0,a=3));if(l.length>0)if(e.length>0){if(l.toLowerCase()!==e.toLowerCase())continue}else e=l;if(i){if(e.length>0)break}else if(t=`${s.slice(a)}\\${t}`,i=c,c&&e.length>0)break}return t=cC(t,!i,"\\",at),i?`${e}\\${t}`:`${e}${t}`||"."},normalize(o){ki(o,"path");const e=o.length;if(e===0)return".";let t=0,i,n=!1;const s=o.charCodeAt(0);if(e===1)return AL(s)?"\\":o;if(at(s))if(n=!0,at(o.charCodeAt(1))){let a=2,l=a;for(;a2&&at(o.charCodeAt(2))&&(n=!0,t=3));let r=t0&&at(o.charCodeAt(e-1))&&(r+="\\"),i===void 0?n?`\\${r}`:r:n?`${i}\\${r}`:`${i}${r}`},isAbsolute(o){ki(o,"path");const e=o.length;if(e===0)return!1;const t=o.charCodeAt(0);return at(t)||e>2&&Hl(t)&&o.charCodeAt(1)===Wl&&at(o.charCodeAt(2))},join(...o){if(o.length===0)return".";let e,t;for(let s=0;s0&&(e===void 0?e=t=r:e+=`\\${r}`)}if(e===void 0)return".";let i=!0,n=0;if(typeof t=="string"&&at(t.charCodeAt(0))){++n;const s=t.length;s>1&&at(t.charCodeAt(1))&&(++n,s>2&&(at(t.charCodeAt(2))?++n:i=!1))}if(i){for(;n=2&&(e=`\\${e.slice(n)}`)}return Vn.normalize(e)},relative(o,e){if(ki(o,"from"),ki(e,"to"),o===e)return"";const t=Vn.resolve(o),i=Vn.resolve(e);if(t===i||(o=t.toLowerCase(),e=i.toLowerCase(),o===e))return"";let n=0;for(;nn&&o.charCodeAt(s-1)===vs;)s--;const r=s-n;let a=0;for(;aa&&e.charCodeAt(l-1)===vs;)l--;const c=l-a,d=rd){if(e.charCodeAt(a+u)===vs)return i.slice(a+u+1);if(u===2)return i.slice(a+u)}r>d&&(o.charCodeAt(n+u)===vs?h=u:u===2&&(h=3)),h===-1&&(h=0)}let f="";for(u=n+h+1;u<=s;++u)(u===s||o.charCodeAt(u)===vs)&&(f+=f.length===0?"..":"\\..");return a+=h,f.length>0?`${f}${i.slice(a,l)}`:(i.charCodeAt(a)===vs&&++a,i.slice(a,l))},toNamespacedPath(o){if(typeof o!="string"||o.length===0)return o;const e=Vn.resolve(o);if(e.length<=2)return o;if(e.charCodeAt(0)===vs){if(e.charCodeAt(1)===vs){const t=e.charCodeAt(2);if(t!==OW&&t!==hc)return`\\\\?\\UNC\\${e.slice(2)}`}}else if(Hl(e.charCodeAt(0))&&e.charCodeAt(1)===Wl&&e.charCodeAt(2)===vs)return`\\\\?\\${e}`;return o},dirname(o){ki(o,"path");const e=o.length;if(e===0)return".";let t=-1,i=0;const n=o.charCodeAt(0);if(e===1)return at(n)?o:".";if(at(n)){if(t=i=1,at(o.charCodeAt(1))){let a=2,l=a;for(;a2&&at(o.charCodeAt(2))?3:2,i=t);let s=-1,r=!0;for(let a=e-1;a>=i;--a)if(at(o.charCodeAt(a))){if(!r){s=a;break}}else r=!1;if(s===-1){if(t===-1)return".";s=t}return o.slice(0,s)},basename(o,e){e!==void 0&&ki(e,"suffix"),ki(o,"path");let t=0,i=-1,n=!0,s;if(o.length>=2&&Hl(o.charCodeAt(0))&&o.charCodeAt(1)===Wl&&(t=2),e!==void 0&&e.length>0&&e.length<=o.length){if(e===o)return"";let r=e.length-1,a=-1;for(s=o.length-1;s>=t;--s){const l=o.charCodeAt(s);if(at(l)){if(!n){t=s+1;break}}else a===-1&&(n=!1,a=s+1),r>=0&&(l===e.charCodeAt(r)?--r===-1&&(i=s):(r=-1,i=a))}return t===i?i=a:i===-1&&(i=o.length),o.slice(t,i)}for(s=o.length-1;s>=t;--s)if(at(o.charCodeAt(s))){if(!n){t=s+1;break}}else i===-1&&(n=!1,i=s+1);return i===-1?"":o.slice(t,i)},extname(o){ki(o,"path");let e=0,t=-1,i=0,n=-1,s=!0,r=0;o.length>=2&&o.charCodeAt(1)===Wl&&Hl(o.charCodeAt(0))&&(e=i=2);for(let a=o.length-1;a>=e;--a){const l=o.charCodeAt(a);if(at(l)){if(!s){i=a+1;break}continue}n===-1&&(s=!1,n=a+1),l===hc?t===-1?t=a:r!==1&&(r=1):t!==-1&&(r=-1)}return t===-1||n===-1||r===0||r===1&&t===n-1&&t===i+1?"":o.slice(t,n)},format:eF.bind(null,"\\"),parse(o){ki(o,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(o.length===0)return e;const t=o.length;let i=0,n=o.charCodeAt(0);if(t===1)return at(n)?(e.root=e.dir=o,e):(e.base=e.name=o,e);if(at(n)){if(i=1,at(o.charCodeAt(1))){let h=2,u=h;for(;h0&&(e.root=o.slice(0,i));let s=-1,r=i,a=-1,l=!0,c=o.length-1,d=0;for(;c>=i;--c){if(n=o.charCodeAt(c),at(n)){if(!l){r=c+1;break}continue}a===-1&&(l=!1,a=c+1),n===hc?s===-1?s=c:d!==1&&(d=1):s!==-1&&(d=-1)}return a!==-1&&(s===-1||d===0||d===1&&s===a-1&&s===r+1?e.base=e.name=o.slice(r,a):(e.name=o.slice(r,s),e.base=o.slice(r,a),e.ext=o.slice(s,a))),r>0&&r!==i?e.dir=o.slice(0,r-1):e.dir=e.root,e},sep:"\\",delimiter:";",win32:null,posix:null},WW=(()=>{if(Tl){const o=/\\/g;return()=>{const e=lC().replace(o,"/");return e.slice(e.indexOf("/"))}}return()=>lC()})(),oi={resolve(...o){let e="",t=!1;for(let i=o.length-1;i>=-1&&!t;i--){const n=i>=0?o[i]:WW();ki(n,`paths[${i}]`),n.length!==0&&(e=`${n}/${e}`,t=n.charCodeAt(0)===on)}return e=cC(e,!t,"/",AL),t?`/${e}`:e.length>0?e:"."},normalize(o){if(ki(o,"path"),o.length===0)return".";const e=o.charCodeAt(0)===on,t=o.charCodeAt(o.length-1)===on;return o=cC(o,!e,"/",AL),o.length===0?e?"/":t?"./":".":(t&&(o+="/"),e?`/${o}`:o)},isAbsolute(o){return ki(o,"path"),o.length>0&&o.charCodeAt(0)===on},join(...o){if(o.length===0)return".";let e;for(let t=0;t0&&(e===void 0?e=i:e+=`/${i}`)}return e===void 0?".":oi.normalize(e)},relative(o,e){if(ki(o,"from"),ki(e,"to"),o===e||(o=oi.resolve(o),e=oi.resolve(e),o===e))return"";const t=1,i=o.length,n=i-t,s=1,r=e.length-s,a=na){if(e.charCodeAt(s+c)===on)return e.slice(s+c+1);if(c===0)return e.slice(s+c)}else n>a&&(o.charCodeAt(t+c)===on?l=c:c===0&&(l=0));let d="";for(c=t+l+1;c<=i;++c)(c===i||o.charCodeAt(c)===on)&&(d+=d.length===0?"..":"/..");return`${d}${e.slice(s+l)}`},toNamespacedPath(o){return o},dirname(o){if(ki(o,"path"),o.length===0)return".";const e=o.charCodeAt(0)===on;let t=-1,i=!0;for(let n=o.length-1;n>=1;--n)if(o.charCodeAt(n)===on){if(!i){t=n;break}}else i=!1;return t===-1?e?"/":".":e&&t===1?"//":o.slice(0,t)},basename(o,e){e!==void 0&&ki(e,"ext"),ki(o,"path");let t=0,i=-1,n=!0,s;if(e!==void 0&&e.length>0&&e.length<=o.length){if(e===o)return"";let r=e.length-1,a=-1;for(s=o.length-1;s>=0;--s){const l=o.charCodeAt(s);if(l===on){if(!n){t=s+1;break}}else a===-1&&(n=!1,a=s+1),r>=0&&(l===e.charCodeAt(r)?--r===-1&&(i=s):(r=-1,i=a))}return t===i?i=a:i===-1&&(i=o.length),o.slice(t,i)}for(s=o.length-1;s>=0;--s)if(o.charCodeAt(s)===on){if(!n){t=s+1;break}}else i===-1&&(n=!1,i=s+1);return i===-1?"":o.slice(t,i)},extname(o){ki(o,"path");let e=-1,t=0,i=-1,n=!0,s=0;for(let r=o.length-1;r>=0;--r){const a=o.charCodeAt(r);if(a===on){if(!n){t=r+1;break}continue}i===-1&&(n=!1,i=r+1),a===hc?e===-1?e=r:s!==1&&(s=1):e!==-1&&(s=-1)}return e===-1||i===-1||s===0||s===1&&e===i-1&&e===t+1?"":o.slice(e,i)},format:eF.bind(null,"/"),parse(o){ki(o,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(o.length===0)return e;const t=o.charCodeAt(0)===on;let i;t?(e.root="/",i=1):i=0;let n=-1,s=0,r=-1,a=!0,l=o.length-1,c=0;for(;l>=i;--l){const d=o.charCodeAt(l);if(d===on){if(!a){s=l+1;break}continue}r===-1&&(a=!1,r=l+1),d===hc?n===-1?n=l:c!==1&&(c=1):n!==-1&&(c=-1)}if(r!==-1){const d=s===0&&t?1:s;n===-1||c===0||c===1&&n===r-1&&n===s+1?e.base=e.name=o.slice(d,r):(e.name=o.slice(d,n),e.base=o.slice(d,r),e.ext=o.slice(n,r))}return s>0?e.dir=o.slice(0,s-1):t&&(e.dir="/"),e},sep:"/",delimiter:":",win32:null,posix:null};oi.win32=Vn.win32=Vn;oi.posix=Vn.posix=oi;const tF=Tl?Vn.normalize:oi.normalize,HW=Tl?Vn.join:oi.join,VW=Tl?Vn.resolve:oi.resolve,zW=Tl?Vn.relative:oi.relative,iF=Tl?Vn.dirname:oi.dirname,uc=Tl?Vn.basename:oi.basename,UW=Tl?Vn.extname:oi.extname,fc=Tl?Vn.sep:oi.sep,$W=/^\w[\w\d+.-]*$/,KW=/^\//,jW=/^\/\//;function qW(o,e){if(!o.scheme&&e)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${o.authority}", path: "${o.path}", query: "${o.query}", fragment: "${o.fragment}"}`);if(o.scheme&&!$W.test(o.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(o.path){if(o.authority){if(!KW.test(o.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(jW.test(o.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}function GW(o,e){return!o&&!e?"file":o}function ZW(o,e){switch(o){case"https":case"http":case"file":e?e[0]!==nr&&(e=nr+e):e=nr;break}return e}const ti="",nr="/",YW=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class ve{static isUri(e){return e instanceof ve?!0:e?typeof e.authority=="string"&&typeof e.fragment=="string"&&typeof e.path=="string"&&typeof e.query=="string"&&typeof e.scheme=="string"&&typeof e.fsPath=="string"&&typeof e.with=="function"&&typeof e.toString=="function":!1}constructor(e,t,i,n,s,r=!1){typeof e=="object"?(this.scheme=e.scheme||ti,this.authority=e.authority||ti,this.path=e.path||ti,this.query=e.query||ti,this.fragment=e.fragment||ti):(this.scheme=GW(e,r),this.authority=t||ti,this.path=ZW(this.scheme,i||ti),this.query=n||ti,this.fragment=s||ti,qW(this,r))}get fsPath(){return dC(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:i,path:n,query:s,fragment:r}=e;return t===void 0?t=this.scheme:t===null&&(t=ti),i===void 0?i=this.authority:i===null&&(i=ti),n===void 0?n=this.path:n===null&&(n=ti),s===void 0?s=this.query:s===null&&(s=ti),r===void 0?r=this.fragment:r===null&&(r=ti),t===this.scheme&&i===this.authority&&n===this.path&&s===this.query&&r===this.fragment?this:new xu(t,i,n,s,r)}static parse(e,t=!1){const i=YW.exec(e);return i?new xu(i[2]||ti,wb(i[4]||ti),wb(i[5]||ti),wb(i[7]||ti),wb(i[9]||ti),t):new xu(ti,ti,ti,ti,ti)}static file(e){let t=ti;if(kn&&(e=e.replace(/\\/g,nr)),e[0]===nr&&e[1]===nr){const i=e.indexOf(nr,2);i===-1?(t=e.substring(2),e=nr):(t=e.substring(2,i),e=e.substring(i)||nr)}return new xu("file",t,e,ti,ti)}static from(e,t){return new xu(e.scheme,e.authority,e.path,e.query,e.fragment,t)}static joinPath(e,...t){if(!e.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let i;return kn&&e.scheme==="file"?i=ve.file(Vn.join(dC(e,!0),...t)).path:i=oi.join(e.path,...t),e.with({path:i})}toString(e=!1){return PL(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof ve)return e;{const t=new xu(e);return t._formatted=e.external??null,t._fsPath=e._sep===nF?e.fsPath??null:null,t}}else return e}}const nF=kn?1:void 0;class xu extends ve{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=dC(this,!1)),this._fsPath}toString(e=!1){return e?PL(this,!0):(this._formatted||(this._formatted=PL(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=nF),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}const sF={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function $M(o,e,t){let i,n=-1;for(let s=0;s=97&&r<=122||r>=65&&r<=90||r>=48&&r<=57||r===45||r===46||r===95||r===126||e&&r===47||t&&r===91||t&&r===93||t&&r===58)n!==-1&&(i+=encodeURIComponent(o.substring(n,s)),n=-1),i!==void 0&&(i+=o.charAt(s));else{i===void 0&&(i=o.substr(0,s));const a=sF[r];a!==void 0?(n!==-1&&(i+=encodeURIComponent(o.substring(n,s)),n=-1),i+=a):n===-1&&(n=s)}}return n!==-1&&(i+=encodeURIComponent(o.substring(n))),i!==void 0?i:o}function QW(o){let e;for(let t=0;t1&&o.scheme==="file"?t=`//${o.authority}${o.path}`:o.path.charCodeAt(0)===47&&(o.path.charCodeAt(1)>=65&&o.path.charCodeAt(1)<=90||o.path.charCodeAt(1)>=97&&o.path.charCodeAt(1)<=122)&&o.path.charCodeAt(2)===58?e?t=o.path.substr(1):t=o.path[1].toLowerCase()+o.path.substr(2):t=o.path,kn&&(t=t.replace(/\//g,"\\")),t}function PL(o,e){const t=e?QW:$M;let i="",{scheme:n,authority:s,path:r,query:a,fragment:l}=o;if(n&&(i+=n,i+=":"),(s||n==="file")&&(i+=nr,i+=nr),s){let c=s.indexOf("@");if(c!==-1){const d=s.substr(0,c);s=s.substr(c+1),c=d.lastIndexOf(":"),c===-1?i+=t(d,!1,!1):(i+=t(d.substr(0,c),!1,!1),i+=":",i+=t(d.substr(c+1),!1,!0)),i+="@"}s=s.toLowerCase(),c=s.lastIndexOf(":"),c===-1?i+=t(s,!1,!0):(i+=t(s.substr(0,c),!1,!0),i+=s.substr(c))}if(r){if(r.length>=3&&r.charCodeAt(0)===47&&r.charCodeAt(2)===58){const c=r.charCodeAt(1);c>=65&&c<=90&&(r=`/${String.fromCharCode(c+32)}:${r.substr(3)}`)}else if(r.length>=2&&r.charCodeAt(1)===58){const c=r.charCodeAt(0);c>=65&&c<=90&&(r=`${String.fromCharCode(c+32)}:${r.substr(2)}`)}i+=t(r,!0,!1)}return a&&(i+="?",i+=t(a,!1,!1)),l&&(i+="#",i+=e?l:$M(l,!1,!1)),i}function oF(o){try{return decodeURIComponent(o)}catch{return o.length>3?o.substr(0,3)+oF(o.substr(3)):o}}const KM=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function wb(o){return o.match(KM)?o.replace(KM,e=>oF(e)):o}class P{constructor(e,t){this.lineNumber=e,this.column=t}with(e=this.lineNumber,t=this.column){return e===this.lineNumber&&t===this.column?this:new P(e,t)}delta(e=0,t=0){return this.with(this.lineNumber+e,this.column+t)}equals(e){return P.equals(this,e)}static equals(e,t){return!e&&!t?!0:!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(e){return P.isBefore(this,e)}static isBefore(e,t){return e.lineNumberi||e===i&&t>n?(this.startLineNumber=i,this.startColumn=n,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=i,this.endColumn=n)}isEmpty(){return Mi.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return Mi.containsPosition(this,e)}static containsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.columne.endColumn)}static strictContainsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.column<=e.startColumn||t.lineNumber===e.endLineNumber&&t.column>=e.endColumn)}containsRange(e){return Mi.containsRange(this,e)}static containsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumne.endColumn)}strictContainsRange(e){return Mi.strictContainsRange(this,e)}static strictContainsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn||t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)}plusRange(e){return Mi.plusRange(this,e)}static plusRange(e,t){let i,n,s,r;return t.startLineNumbere.endLineNumber?(s=t.endLineNumber,r=t.endColumn):t.endLineNumber===e.endLineNumber?(s=t.endLineNumber,r=Math.max(t.endColumn,e.endColumn)):(s=e.endLineNumber,r=e.endColumn),new Mi(i,n,s,r)}intersectRanges(e){return Mi.intersectRanges(this,e)}static intersectRanges(e,t){let i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn;const a=t.startLineNumber,l=t.startColumn,c=t.endLineNumber,d=t.endColumn;return ic?(s=c,r=d):s===c&&(r=Math.min(r,d)),i>s||i===s&&n>r?null:new Mi(i,n,s,r)}equalsRange(e){return Mi.equalsRange(this,e)}static equalsRange(e,t){return!e&&!t?!0:!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn}getEndPosition(){return Mi.getEndPosition(this)}static getEndPosition(e){return new P(e.endLineNumber,e.endColumn)}getStartPosition(){return Mi.getStartPosition(this)}static getStartPosition(e){return new P(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,t){return new Mi(this.startLineNumber,this.startColumn,e,t)}setStartPosition(e,t){return new Mi(e,t,this.endLineNumber,this.endColumn)}collapseToStart(){return Mi.collapseToStart(this)}static collapseToStart(e){return new Mi(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}collapseToEnd(){return Mi.collapseToEnd(this)}static collapseToEnd(e){return new Mi(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn)}delta(e){return new Mi(this.startLineNumber+e,this.startColumn,this.endLineNumber+e,this.endColumn)}static fromPositions(e,t=e){return new Mi(e.lineNumber,e.column,t.lineNumber,t.column)}static lift(e){return e?new Mi(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):null}static isIRange(e){return e&&typeof e.startLineNumber=="number"&&typeof e.startColumn=="number"&&typeof e.endLineNumber=="number"&&typeof e.endColumn=="number"}static areIntersectingOrTouching(e,t){return!(e.endLineNumbere.startLineNumber}toJSON(){return this}};class Fe extends I{constructor(e,t,i,n){super(e,t,i,n),this.selectionStartLineNumber=e,this.selectionStartColumn=t,this.positionLineNumber=i,this.positionColumn=n}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(e){return Fe.selectionsEqual(this,e)}static selectionsEqual(e,t){return e.selectionStartLineNumber===t.selectionStartLineNumber&&e.selectionStartColumn===t.selectionStartColumn&&e.positionLineNumber===t.positionLineNumber&&e.positionColumn===t.positionColumn}getDirection(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1}setEndPosition(e,t){return this.getDirection()===0?new Fe(this.startLineNumber,this.startColumn,e,t):new Fe(e,t,this.startLineNumber,this.startColumn)}getPosition(){return new P(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new P(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(e,t){return this.getDirection()===0?new Fe(e,t,this.endLineNumber,this.endColumn):new Fe(this.endLineNumber,this.endColumn,e,t)}static fromPositions(e,t=e){return new Fe(e.lineNumber,e.column,t.lineNumber,t.column)}static fromRange(e,t){return t===0?new Fe(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new Fe(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn)}static liftSelection(e){return new Fe(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn)}static selectionsArrEqual(e,t){if(e&&!t||!e&&t)return!1;if(!e&&!t)return!0;if(e.length!==t.length)return!1;for(let i=0,n=e.length;i{this._tokenizationSupports.get(e)===t&&(this._tokenizationSupports.delete(e),this.handleChange([e]))})}get(e){return this._tokenizationSupports.get(e)||null}registerFactory(e,t){this._factories.get(e)?.dispose();const i=new eH(this,e,t);return this._factories.set(e,i),_e(()=>{const n=this._factories.get(e);!n||n!==i||(this._factories.delete(e),n.dispose())})}async getOrCreate(e){const t=this.get(e);if(t)return t;const i=this._factories.get(e);return!i||i.isResolved?null:(await i.resolve(),this.get(e))}isResolved(e){if(this.get(e))return!0;const i=this._factories.get(e);return!!(!i||i.isResolved)}setColorMap(e){this._colorMap=e,this._onDidChange.fire({changedLanguages:Array.from(this._tokenizationSupports.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}};class eH extends z{get isResolved(){return this._isResolved}constructor(e,t,i){super(),this._registry=e,this._languageId=t,this._factory=i,this._isDisposed=!1,this._resolvePromise=null,this._isResolved=!1}dispose(){this._isDisposed=!0,super.dispose()}async resolve(){return this._resolvePromise||(this._resolvePromise=this._create()),this._resolvePromise}async _create(){const e=await this._factory.tokenizationSupport;this._isResolved=!0,e&&!this._isDisposed&&this._register(this._registry.register(this._languageId,e))}}let zp=class{constructor(e,t,i){this.offset=e,this.type=t,this.language=i,this._tokenBrand=void 0}toString(){return"("+this.offset+", "+this.type+")"}};class FN{constructor(e,t){this.tokens=e,this.endState=t,this._tokenizationResultBrand=void 0}}class x0{constructor(e,t){this.tokens=e,this.endState=t,this._encodedTokenizationResultBrand=void 0}}var is;(function(o){o[o.Increase=0]="Increase",o[o.Decrease=1]="Decrease"})(is||(is={}));var Up;(function(o){const e=new Map;e.set(0,ie.symbolMethod),e.set(1,ie.symbolFunction),e.set(2,ie.symbolConstructor),e.set(3,ie.symbolField),e.set(4,ie.symbolVariable),e.set(5,ie.symbolClass),e.set(6,ie.symbolStruct),e.set(7,ie.symbolInterface),e.set(8,ie.symbolModule),e.set(9,ie.symbolProperty),e.set(10,ie.symbolEvent),e.set(11,ie.symbolOperator),e.set(12,ie.symbolUnit),e.set(13,ie.symbolValue),e.set(15,ie.symbolEnum),e.set(14,ie.symbolConstant),e.set(15,ie.symbolEnum),e.set(16,ie.symbolEnumMember),e.set(17,ie.symbolKeyword),e.set(27,ie.symbolSnippet),e.set(18,ie.symbolText),e.set(19,ie.symbolColor),e.set(20,ie.symbolFile),e.set(21,ie.symbolReference),e.set(22,ie.symbolCustomColor),e.set(23,ie.symbolFolder),e.set(24,ie.symbolTypeParameter),e.set(25,ie.account),e.set(26,ie.issues);function t(s){let r=e.get(s);return r||(console.info("No codicon found for CompletionItemKind "+s),r=ie.symbolProperty),r}o.toIcon=t;const i=new Map;i.set("method",0),i.set("function",1),i.set("constructor",2),i.set("field",3),i.set("variable",4),i.set("class",5),i.set("struct",6),i.set("interface",7),i.set("module",8),i.set("property",9),i.set("event",10),i.set("operator",11),i.set("unit",12),i.set("value",13),i.set("constant",14),i.set("enum",15),i.set("enum-member",16),i.set("enumMember",16),i.set("keyword",17),i.set("snippet",27),i.set("text",18),i.set("color",19),i.set("file",20),i.set("reference",21),i.set("customcolor",22),i.set("folder",23),i.set("type-parameter",24),i.set("typeParameter",24),i.set("account",25),i.set("issue",26);function n(s,r){let a=i.get(s);return typeof a>"u"&&!r&&(a=9),a}o.fromString=n})(Up||(Up={}));var Cl;(function(o){o[o.Automatic=0]="Automatic",o[o.Explicit=1]="Explicit"})(Cl||(Cl={}));class lF{constructor(e,t,i,n){this.range=e,this.text=t,this.completionKind=i,this.isSnippetText=n}equals(e){return I.lift(this.range).equalsRange(e.range)&&this.text===e.text&&this.completionKind===e.completionKind&&this.isSnippetText===e.isSnippetText}}var jM;(function(o){o[o.Automatic=0]="Automatic",o[o.PasteAs=1]="PasteAs"})(jM||(jM={}));var qM;(function(o){o[o.Invoke=1]="Invoke",o[o.TriggerCharacter=2]="TriggerCharacter",o[o.ContentChange=3]="ContentChange"})(qM||(qM={}));var GM;(function(o){o[o.Text=0]="Text",o[o.Read=1]="Read",o[o.Write=2]="Write"})(GM||(GM={}));function tH(o){return o&&ve.isUri(o.uri)&&I.isIRange(o.range)&&(I.isIRange(o.originSelectionRange)||I.isIRange(o.targetSelectionRange))}m("Array","array"),m("Boolean","boolean"),m("Class","class"),m("Constant","constant"),m("Constructor","constructor"),m("Enum","enumeration"),m("EnumMember","enumeration member"),m("Event","event"),m("Field","field"),m("File","file"),m("Function","function"),m("Interface","interface"),m("Key","key"),m("Method","method"),m("Module","module"),m("Namespace","namespace"),m("Null","null"),m("Number","number"),m("Object","object"),m("Operator","operator"),m("Package","package"),m("Property","property"),m("String","string"),m("Struct","struct"),m("TypeParameter","type parameter"),m("Variable","variable");var FL;(function(o){const e=new Map;e.set(0,ie.symbolFile),e.set(1,ie.symbolModule),e.set(2,ie.symbolNamespace),e.set(3,ie.symbolPackage),e.set(4,ie.symbolClass),e.set(5,ie.symbolMethod),e.set(6,ie.symbolProperty),e.set(7,ie.symbolField),e.set(8,ie.symbolConstructor),e.set(9,ie.symbolEnum),e.set(10,ie.symbolInterface),e.set(11,ie.symbolFunction),e.set(12,ie.symbolVariable),e.set(13,ie.symbolConstant),e.set(14,ie.symbolString),e.set(15,ie.symbolNumber),e.set(16,ie.symbolBoolean),e.set(17,ie.symbolArray),e.set(18,ie.symbolObject),e.set(19,ie.symbolKey),e.set(20,ie.symbolNull),e.set(21,ie.symbolEnumMember),e.set(22,ie.symbolStruct),e.set(23,ie.symbolEvent),e.set(24,ie.symbolOperator),e.set(25,ie.symbolTypeParameter);function t(i){let n=e.get(i);return n||(console.info("No codicon found for SymbolKind "+i),n=ie.symbolProperty),n}o.toIcon=t})(FL||(FL={}));const vo=class vo{static fromValue(e){switch(e){case"comment":return vo.Comment;case"imports":return vo.Imports;case"region":return vo.Region}return new vo(e)}constructor(e){this.value=e}};vo.Comment=new vo("comment"),vo.Imports=new vo("imports"),vo.Region=new vo("region");let BL=vo;var ZM;(function(o){o[o.AIGenerated=1]="AIGenerated"})(ZM||(ZM={}));var YM;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(YM||(YM={}));var WL;(function(o){function e(t){return!t||typeof t!="object"?!1:typeof t.id=="string"&&typeof t.title=="string"}o.is=e})(WL||(WL={}));var hC;(function(o){o[o.Type=1]="Type",o[o.Parameter=2]="Parameter"})(hC||(hC={}));class iH{constructor(e){this.createSupport=e,this._tokenizationSupport=null}dispose(){this._tokenizationSupport&&this._tokenizationSupport.then(e=>{e&&e.dispose()})}get tokenizationSupport(){return this._tokenizationSupport||(this._tokenizationSupport=this.createSupport()),this._tokenizationSupport}}const si=new aF,HL=new aF;var QM;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(QM||(QM={}));var VL;(function(o){o[o.Unknown=0]="Unknown",o[o.Disabled=1]="Disabled",o[o.Enabled=2]="Enabled"})(VL||(VL={}));var zL;(function(o){o[o.Invoke=1]="Invoke",o[o.Auto=2]="Auto"})(zL||(zL={}));var UL;(function(o){o[o.None=0]="None",o[o.KeepWhitespace=1]="KeepWhitespace",o[o.InsertAsSnippet=4]="InsertAsSnippet"})(UL||(UL={}));var $L;(function(o){o[o.Method=0]="Method",o[o.Function=1]="Function",o[o.Constructor=2]="Constructor",o[o.Field=3]="Field",o[o.Variable=4]="Variable",o[o.Class=5]="Class",o[o.Struct=6]="Struct",o[o.Interface=7]="Interface",o[o.Module=8]="Module",o[o.Property=9]="Property",o[o.Event=10]="Event",o[o.Operator=11]="Operator",o[o.Unit=12]="Unit",o[o.Value=13]="Value",o[o.Constant=14]="Constant",o[o.Enum=15]="Enum",o[o.EnumMember=16]="EnumMember",o[o.Keyword=17]="Keyword",o[o.Text=18]="Text",o[o.Color=19]="Color",o[o.File=20]="File",o[o.Reference=21]="Reference",o[o.Customcolor=22]="Customcolor",o[o.Folder=23]="Folder",o[o.TypeParameter=24]="TypeParameter",o[o.User=25]="User",o[o.Issue=26]="Issue",o[o.Snippet=27]="Snippet"})($L||($L={}));var KL;(function(o){o[o.Deprecated=1]="Deprecated"})(KL||(KL={}));var jL;(function(o){o[o.Invoke=0]="Invoke",o[o.TriggerCharacter=1]="TriggerCharacter",o[o.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"})(jL||(jL={}));var qL;(function(o){o[o.EXACT=0]="EXACT",o[o.ABOVE=1]="ABOVE",o[o.BELOW=2]="BELOW"})(qL||(qL={}));var GL;(function(o){o[o.NotSet=0]="NotSet",o[o.ContentFlush=1]="ContentFlush",o[o.RecoverFromMarkers=2]="RecoverFromMarkers",o[o.Explicit=3]="Explicit",o[o.Paste=4]="Paste",o[o.Undo=5]="Undo",o[o.Redo=6]="Redo"})(GL||(GL={}));var ZL;(function(o){o[o.LF=1]="LF",o[o.CRLF=2]="CRLF"})(ZL||(ZL={}));var YL;(function(o){o[o.Text=0]="Text",o[o.Read=1]="Read",o[o.Write=2]="Write"})(YL||(YL={}));var QL;(function(o){o[o.None=0]="None",o[o.Keep=1]="Keep",o[o.Brackets=2]="Brackets",o[o.Advanced=3]="Advanced",o[o.Full=4]="Full"})(QL||(QL={}));var XL;(function(o){o[o.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",o[o.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",o[o.accessibilitySupport=2]="accessibilitySupport",o[o.accessibilityPageSize=3]="accessibilityPageSize",o[o.ariaLabel=4]="ariaLabel",o[o.ariaRequired=5]="ariaRequired",o[o.autoClosingBrackets=6]="autoClosingBrackets",o[o.autoClosingComments=7]="autoClosingComments",o[o.screenReaderAnnounceInlineSuggestion=8]="screenReaderAnnounceInlineSuggestion",o[o.autoClosingDelete=9]="autoClosingDelete",o[o.autoClosingOvertype=10]="autoClosingOvertype",o[o.autoClosingQuotes=11]="autoClosingQuotes",o[o.autoIndent=12]="autoIndent",o[o.automaticLayout=13]="automaticLayout",o[o.autoSurround=14]="autoSurround",o[o.bracketPairColorization=15]="bracketPairColorization",o[o.guides=16]="guides",o[o.codeLens=17]="codeLens",o[o.codeLensFontFamily=18]="codeLensFontFamily",o[o.codeLensFontSize=19]="codeLensFontSize",o[o.colorDecorators=20]="colorDecorators",o[o.colorDecoratorsLimit=21]="colorDecoratorsLimit",o[o.columnSelection=22]="columnSelection",o[o.comments=23]="comments",o[o.contextmenu=24]="contextmenu",o[o.copyWithSyntaxHighlighting=25]="copyWithSyntaxHighlighting",o[o.cursorBlinking=26]="cursorBlinking",o[o.cursorSmoothCaretAnimation=27]="cursorSmoothCaretAnimation",o[o.cursorStyle=28]="cursorStyle",o[o.cursorSurroundingLines=29]="cursorSurroundingLines",o[o.cursorSurroundingLinesStyle=30]="cursorSurroundingLinesStyle",o[o.cursorWidth=31]="cursorWidth",o[o.disableLayerHinting=32]="disableLayerHinting",o[o.disableMonospaceOptimizations=33]="disableMonospaceOptimizations",o[o.domReadOnly=34]="domReadOnly",o[o.dragAndDrop=35]="dragAndDrop",o[o.dropIntoEditor=36]="dropIntoEditor",o[o.emptySelectionClipboard=37]="emptySelectionClipboard",o[o.experimentalWhitespaceRendering=38]="experimentalWhitespaceRendering",o[o.extraEditorClassName=39]="extraEditorClassName",o[o.fastScrollSensitivity=40]="fastScrollSensitivity",o[o.find=41]="find",o[o.fixedOverflowWidgets=42]="fixedOverflowWidgets",o[o.folding=43]="folding",o[o.foldingStrategy=44]="foldingStrategy",o[o.foldingHighlight=45]="foldingHighlight",o[o.foldingImportsByDefault=46]="foldingImportsByDefault",o[o.foldingMaximumRegions=47]="foldingMaximumRegions",o[o.unfoldOnClickAfterEndOfLine=48]="unfoldOnClickAfterEndOfLine",o[o.fontFamily=49]="fontFamily",o[o.fontInfo=50]="fontInfo",o[o.fontLigatures=51]="fontLigatures",o[o.fontSize=52]="fontSize",o[o.fontWeight=53]="fontWeight",o[o.fontVariations=54]="fontVariations",o[o.formatOnPaste=55]="formatOnPaste",o[o.formatOnType=56]="formatOnType",o[o.glyphMargin=57]="glyphMargin",o[o.gotoLocation=58]="gotoLocation",o[o.hideCursorInOverviewRuler=59]="hideCursorInOverviewRuler",o[o.hover=60]="hover",o[o.inDiffEditor=61]="inDiffEditor",o[o.inlineSuggest=62]="inlineSuggest",o[o.inlineEdit=63]="inlineEdit",o[o.letterSpacing=64]="letterSpacing",o[o.lightbulb=65]="lightbulb",o[o.lineDecorationsWidth=66]="lineDecorationsWidth",o[o.lineHeight=67]="lineHeight",o[o.lineNumbers=68]="lineNumbers",o[o.lineNumbersMinChars=69]="lineNumbersMinChars",o[o.linkedEditing=70]="linkedEditing",o[o.links=71]="links",o[o.matchBrackets=72]="matchBrackets",o[o.minimap=73]="minimap",o[o.mouseStyle=74]="mouseStyle",o[o.mouseWheelScrollSensitivity=75]="mouseWheelScrollSensitivity",o[o.mouseWheelZoom=76]="mouseWheelZoom",o[o.multiCursorMergeOverlapping=77]="multiCursorMergeOverlapping",o[o.multiCursorModifier=78]="multiCursorModifier",o[o.multiCursorPaste=79]="multiCursorPaste",o[o.multiCursorLimit=80]="multiCursorLimit",o[o.occurrencesHighlight=81]="occurrencesHighlight",o[o.overviewRulerBorder=82]="overviewRulerBorder",o[o.overviewRulerLanes=83]="overviewRulerLanes",o[o.padding=84]="padding",o[o.pasteAs=85]="pasteAs",o[o.parameterHints=86]="parameterHints",o[o.peekWidgetDefaultFocus=87]="peekWidgetDefaultFocus",o[o.placeholder=88]="placeholder",o[o.definitionLinkOpensInPeek=89]="definitionLinkOpensInPeek",o[o.quickSuggestions=90]="quickSuggestions",o[o.quickSuggestionsDelay=91]="quickSuggestionsDelay",o[o.readOnly=92]="readOnly",o[o.readOnlyMessage=93]="readOnlyMessage",o[o.renameOnType=94]="renameOnType",o[o.renderControlCharacters=95]="renderControlCharacters",o[o.renderFinalNewline=96]="renderFinalNewline",o[o.renderLineHighlight=97]="renderLineHighlight",o[o.renderLineHighlightOnlyWhenFocus=98]="renderLineHighlightOnlyWhenFocus",o[o.renderValidationDecorations=99]="renderValidationDecorations",o[o.renderWhitespace=100]="renderWhitespace",o[o.revealHorizontalRightPadding=101]="revealHorizontalRightPadding",o[o.roundedSelection=102]="roundedSelection",o[o.rulers=103]="rulers",o[o.scrollbar=104]="scrollbar",o[o.scrollBeyondLastColumn=105]="scrollBeyondLastColumn",o[o.scrollBeyondLastLine=106]="scrollBeyondLastLine",o[o.scrollPredominantAxis=107]="scrollPredominantAxis",o[o.selectionClipboard=108]="selectionClipboard",o[o.selectionHighlight=109]="selectionHighlight",o[o.selectOnLineNumbers=110]="selectOnLineNumbers",o[o.showFoldingControls=111]="showFoldingControls",o[o.showUnused=112]="showUnused",o[o.snippetSuggestions=113]="snippetSuggestions",o[o.smartSelect=114]="smartSelect",o[o.smoothScrolling=115]="smoothScrolling",o[o.stickyScroll=116]="stickyScroll",o[o.stickyTabStops=117]="stickyTabStops",o[o.stopRenderingLineAfter=118]="stopRenderingLineAfter",o[o.suggest=119]="suggest",o[o.suggestFontSize=120]="suggestFontSize",o[o.suggestLineHeight=121]="suggestLineHeight",o[o.suggestOnTriggerCharacters=122]="suggestOnTriggerCharacters",o[o.suggestSelection=123]="suggestSelection",o[o.tabCompletion=124]="tabCompletion",o[o.tabIndex=125]="tabIndex",o[o.unicodeHighlighting=126]="unicodeHighlighting",o[o.unusualLineTerminators=127]="unusualLineTerminators",o[o.useShadowDOM=128]="useShadowDOM",o[o.useTabStops=129]="useTabStops",o[o.wordBreak=130]="wordBreak",o[o.wordSegmenterLocales=131]="wordSegmenterLocales",o[o.wordSeparators=132]="wordSeparators",o[o.wordWrap=133]="wordWrap",o[o.wordWrapBreakAfterCharacters=134]="wordWrapBreakAfterCharacters",o[o.wordWrapBreakBeforeCharacters=135]="wordWrapBreakBeforeCharacters",o[o.wordWrapColumn=136]="wordWrapColumn",o[o.wordWrapOverride1=137]="wordWrapOverride1",o[o.wordWrapOverride2=138]="wordWrapOverride2",o[o.wrappingIndent=139]="wrappingIndent",o[o.wrappingStrategy=140]="wrappingStrategy",o[o.showDeprecated=141]="showDeprecated",o[o.inlayHints=142]="inlayHints",o[o.editorClassName=143]="editorClassName",o[o.pixelRatio=144]="pixelRatio",o[o.tabFocusMode=145]="tabFocusMode",o[o.layoutInfo=146]="layoutInfo",o[o.wrappingInfo=147]="wrappingInfo",o[o.defaultColorDecorators=148]="defaultColorDecorators",o[o.colorDecoratorsActivatedOn=149]="colorDecoratorsActivatedOn",o[o.inlineCompletionsAccessibilityVerbose=150]="inlineCompletionsAccessibilityVerbose"})(XL||(XL={}));var JL;(function(o){o[o.TextDefined=0]="TextDefined",o[o.LF=1]="LF",o[o.CRLF=2]="CRLF"})(JL||(JL={}));var ex;(function(o){o[o.LF=0]="LF",o[o.CRLF=1]="CRLF"})(ex||(ex={}));var tx;(function(o){o[o.Left=1]="Left",o[o.Center=2]="Center",o[o.Right=3]="Right"})(tx||(tx={}));var ix;(function(o){o[o.Increase=0]="Increase",o[o.Decrease=1]="Decrease"})(ix||(ix={}));var nx;(function(o){o[o.None=0]="None",o[o.Indent=1]="Indent",o[o.IndentOutdent=2]="IndentOutdent",o[o.Outdent=3]="Outdent"})(nx||(nx={}));var sx;(function(o){o[o.Both=0]="Both",o[o.Right=1]="Right",o[o.Left=2]="Left",o[o.None=3]="None"})(sx||(sx={}));var ox;(function(o){o[o.Type=1]="Type",o[o.Parameter=2]="Parameter"})(ox||(ox={}));var rx;(function(o){o[o.Automatic=0]="Automatic",o[o.Explicit=1]="Explicit"})(rx||(rx={}));var ax;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(ax||(ax={}));var lx;(function(o){o[o.DependsOnKbLayout=-1]="DependsOnKbLayout",o[o.Unknown=0]="Unknown",o[o.Backspace=1]="Backspace",o[o.Tab=2]="Tab",o[o.Enter=3]="Enter",o[o.Shift=4]="Shift",o[o.Ctrl=5]="Ctrl",o[o.Alt=6]="Alt",o[o.PauseBreak=7]="PauseBreak",o[o.CapsLock=8]="CapsLock",o[o.Escape=9]="Escape",o[o.Space=10]="Space",o[o.PageUp=11]="PageUp",o[o.PageDown=12]="PageDown",o[o.End=13]="End",o[o.Home=14]="Home",o[o.LeftArrow=15]="LeftArrow",o[o.UpArrow=16]="UpArrow",o[o.RightArrow=17]="RightArrow",o[o.DownArrow=18]="DownArrow",o[o.Insert=19]="Insert",o[o.Delete=20]="Delete",o[o.Digit0=21]="Digit0",o[o.Digit1=22]="Digit1",o[o.Digit2=23]="Digit2",o[o.Digit3=24]="Digit3",o[o.Digit4=25]="Digit4",o[o.Digit5=26]="Digit5",o[o.Digit6=27]="Digit6",o[o.Digit7=28]="Digit7",o[o.Digit8=29]="Digit8",o[o.Digit9=30]="Digit9",o[o.KeyA=31]="KeyA",o[o.KeyB=32]="KeyB",o[o.KeyC=33]="KeyC",o[o.KeyD=34]="KeyD",o[o.KeyE=35]="KeyE",o[o.KeyF=36]="KeyF",o[o.KeyG=37]="KeyG",o[o.KeyH=38]="KeyH",o[o.KeyI=39]="KeyI",o[o.KeyJ=40]="KeyJ",o[o.KeyK=41]="KeyK",o[o.KeyL=42]="KeyL",o[o.KeyM=43]="KeyM",o[o.KeyN=44]="KeyN",o[o.KeyO=45]="KeyO",o[o.KeyP=46]="KeyP",o[o.KeyQ=47]="KeyQ",o[o.KeyR=48]="KeyR",o[o.KeyS=49]="KeyS",o[o.KeyT=50]="KeyT",o[o.KeyU=51]="KeyU",o[o.KeyV=52]="KeyV",o[o.KeyW=53]="KeyW",o[o.KeyX=54]="KeyX",o[o.KeyY=55]="KeyY",o[o.KeyZ=56]="KeyZ",o[o.Meta=57]="Meta",o[o.ContextMenu=58]="ContextMenu",o[o.F1=59]="F1",o[o.F2=60]="F2",o[o.F3=61]="F3",o[o.F4=62]="F4",o[o.F5=63]="F5",o[o.F6=64]="F6",o[o.F7=65]="F7",o[o.F8=66]="F8",o[o.F9=67]="F9",o[o.F10=68]="F10",o[o.F11=69]="F11",o[o.F12=70]="F12",o[o.F13=71]="F13",o[o.F14=72]="F14",o[o.F15=73]="F15",o[o.F16=74]="F16",o[o.F17=75]="F17",o[o.F18=76]="F18",o[o.F19=77]="F19",o[o.F20=78]="F20",o[o.F21=79]="F21",o[o.F22=80]="F22",o[o.F23=81]="F23",o[o.F24=82]="F24",o[o.NumLock=83]="NumLock",o[o.ScrollLock=84]="ScrollLock",o[o.Semicolon=85]="Semicolon",o[o.Equal=86]="Equal",o[o.Comma=87]="Comma",o[o.Minus=88]="Minus",o[o.Period=89]="Period",o[o.Slash=90]="Slash",o[o.Backquote=91]="Backquote",o[o.BracketLeft=92]="BracketLeft",o[o.Backslash=93]="Backslash",o[o.BracketRight=94]="BracketRight",o[o.Quote=95]="Quote",o[o.OEM_8=96]="OEM_8",o[o.IntlBackslash=97]="IntlBackslash",o[o.Numpad0=98]="Numpad0",o[o.Numpad1=99]="Numpad1",o[o.Numpad2=100]="Numpad2",o[o.Numpad3=101]="Numpad3",o[o.Numpad4=102]="Numpad4",o[o.Numpad5=103]="Numpad5",o[o.Numpad6=104]="Numpad6",o[o.Numpad7=105]="Numpad7",o[o.Numpad8=106]="Numpad8",o[o.Numpad9=107]="Numpad9",o[o.NumpadMultiply=108]="NumpadMultiply",o[o.NumpadAdd=109]="NumpadAdd",o[o.NUMPAD_SEPARATOR=110]="NUMPAD_SEPARATOR",o[o.NumpadSubtract=111]="NumpadSubtract",o[o.NumpadDecimal=112]="NumpadDecimal",o[o.NumpadDivide=113]="NumpadDivide",o[o.KEY_IN_COMPOSITION=114]="KEY_IN_COMPOSITION",o[o.ABNT_C1=115]="ABNT_C1",o[o.ABNT_C2=116]="ABNT_C2",o[o.AudioVolumeMute=117]="AudioVolumeMute",o[o.AudioVolumeUp=118]="AudioVolumeUp",o[o.AudioVolumeDown=119]="AudioVolumeDown",o[o.BrowserSearch=120]="BrowserSearch",o[o.BrowserHome=121]="BrowserHome",o[o.BrowserBack=122]="BrowserBack",o[o.BrowserForward=123]="BrowserForward",o[o.MediaTrackNext=124]="MediaTrackNext",o[o.MediaTrackPrevious=125]="MediaTrackPrevious",o[o.MediaStop=126]="MediaStop",o[o.MediaPlayPause=127]="MediaPlayPause",o[o.LaunchMediaPlayer=128]="LaunchMediaPlayer",o[o.LaunchMail=129]="LaunchMail",o[o.LaunchApp2=130]="LaunchApp2",o[o.Clear=131]="Clear",o[o.MAX_VALUE=132]="MAX_VALUE"})(lx||(lx={}));var cx;(function(o){o[o.Hint=1]="Hint",o[o.Info=2]="Info",o[o.Warning=4]="Warning",o[o.Error=8]="Error"})(cx||(cx={}));var dx;(function(o){o[o.Unnecessary=1]="Unnecessary",o[o.Deprecated=2]="Deprecated"})(dx||(dx={}));var hx;(function(o){o[o.Inline=1]="Inline",o[o.Gutter=2]="Gutter"})(hx||(hx={}));var ux;(function(o){o[o.Normal=1]="Normal",o[o.Underlined=2]="Underlined"})(ux||(ux={}));var fx;(function(o){o[o.UNKNOWN=0]="UNKNOWN",o[o.TEXTAREA=1]="TEXTAREA",o[o.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",o[o.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",o[o.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",o[o.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",o[o.CONTENT_TEXT=6]="CONTENT_TEXT",o[o.CONTENT_EMPTY=7]="CONTENT_EMPTY",o[o.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",o[o.CONTENT_WIDGET=9]="CONTENT_WIDGET",o[o.OVERVIEW_RULER=10]="OVERVIEW_RULER",o[o.SCROLLBAR=11]="SCROLLBAR",o[o.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",o[o.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"})(fx||(fx={}));var gx;(function(o){o[o.AIGenerated=1]="AIGenerated"})(gx||(gx={}));var mx;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(mx||(mx={}));var px;(function(o){o[o.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",o[o.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",o[o.TOP_CENTER=2]="TOP_CENTER"})(px||(px={}));var _x;(function(o){o[o.Left=1]="Left",o[o.Center=2]="Center",o[o.Right=4]="Right",o[o.Full=7]="Full"})(_x||(_x={}));var bx;(function(o){o[o.Word=0]="Word",o[o.Line=1]="Line",o[o.Suggest=2]="Suggest"})(bx||(bx={}));var Cx;(function(o){o[o.Left=0]="Left",o[o.Right=1]="Right",o[o.None=2]="None",o[o.LeftOfInjectedText=3]="LeftOfInjectedText",o[o.RightOfInjectedText=4]="RightOfInjectedText"})(Cx||(Cx={}));var vx;(function(o){o[o.Off=0]="Off",o[o.On=1]="On",o[o.Relative=2]="Relative",o[o.Interval=3]="Interval",o[o.Custom=4]="Custom"})(vx||(vx={}));var wx;(function(o){o[o.None=0]="None",o[o.Text=1]="Text",o[o.Blocks=2]="Blocks"})(wx||(wx={}));var yx;(function(o){o[o.Smooth=0]="Smooth",o[o.Immediate=1]="Immediate"})(yx||(yx={}));var Sx;(function(o){o[o.Auto=1]="Auto",o[o.Hidden=2]="Hidden",o[o.Visible=3]="Visible"})(Sx||(Sx={}));var Lx;(function(o){o[o.LTR=0]="LTR",o[o.RTL=1]="RTL"})(Lx||(Lx={}));var xx;(function(o){o.Off="off",o.OnCode="onCode",o.On="on"})(xx||(xx={}));var kx;(function(o){o[o.Invoke=1]="Invoke",o[o.TriggerCharacter=2]="TriggerCharacter",o[o.ContentChange=3]="ContentChange"})(kx||(kx={}));var Dx;(function(o){o[o.File=0]="File",o[o.Module=1]="Module",o[o.Namespace=2]="Namespace",o[o.Package=3]="Package",o[o.Class=4]="Class",o[o.Method=5]="Method",o[o.Property=6]="Property",o[o.Field=7]="Field",o[o.Constructor=8]="Constructor",o[o.Enum=9]="Enum",o[o.Interface=10]="Interface",o[o.Function=11]="Function",o[o.Variable=12]="Variable",o[o.Constant=13]="Constant",o[o.String=14]="String",o[o.Number=15]="Number",o[o.Boolean=16]="Boolean",o[o.Array=17]="Array",o[o.Object=18]="Object",o[o.Key=19]="Key",o[o.Null=20]="Null",o[o.EnumMember=21]="EnumMember",o[o.Struct=22]="Struct",o[o.Event=23]="Event",o[o.Operator=24]="Operator",o[o.TypeParameter=25]="TypeParameter"})(Dx||(Dx={}));var Ix;(function(o){o[o.Deprecated=1]="Deprecated"})(Ix||(Ix={}));var Ex;(function(o){o[o.Hidden=0]="Hidden",o[o.Blink=1]="Blink",o[o.Smooth=2]="Smooth",o[o.Phase=3]="Phase",o[o.Expand=4]="Expand",o[o.Solid=5]="Solid"})(Ex||(Ex={}));var Nx;(function(o){o[o.Line=1]="Line",o[o.Block=2]="Block",o[o.Underline=3]="Underline",o[o.LineThin=4]="LineThin",o[o.BlockOutline=5]="BlockOutline",o[o.UnderlineThin=6]="UnderlineThin"})(Nx||(Nx={}));var Tx;(function(o){o[o.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",o[o.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",o[o.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",o[o.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"})(Tx||(Tx={}));var Mx;(function(o){o[o.None=0]="None",o[o.Same=1]="Same",o[o.Indent=2]="Indent",o[o.DeepIndent=3]="DeepIndent"})(Mx||(Mx={}));const bf=class bf{static chord(e,t){return Vp(e,t)}};bf.CtrlCmd=2048,bf.Shift=1024,bf.Alt=512,bf.WinCtrl=256;let Rx=bf;function cF(){return{editor:void 0,languages:void 0,CancellationTokenSource:In,Emitter:A,KeyCode:lx,KeyMod:Rx,Position:P,Range:I,Selection:Fe,SelectionDirection:Lx,MarkerSeverity:cx,MarkerTag:dx,Uri:ve,Token:zp}}function nH(o,e){const t=o;typeof t.vscodeWindowId!="number"&&Object.defineProperty(t,"vscodeWindowId",{get:()=>e})}const _t=window;function dF(o){return o}class sH{constructor(e,t){this.lastCache=void 0,this.lastArgKey=void 0,typeof e=="function"?(this._fn=e,this._computeKey=dF):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);return this.lastArgKey!==t&&(this.lastArgKey=t,this.lastCache=this._fn(e)),this.lastCache}}class XM{get cachedValues(){return this._map}constructor(e,t){this._map=new Map,this._map2=new Map,typeof e=="function"?(this._fn=e,this._computeKey=dF):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);if(this._map2.has(t))return this._map2.get(t);const i=this._fn(e);return this._map.set(e,i),this._map2.set(t,i),i}}class ua{constructor(e){this.executor=e,this._didRun=!1}get value(){if(!this._didRun)try{this._value=this.executor()}catch(e){this._error=e}finally{this._didRun=!0}if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}function hF(o){return!o||typeof o!="string"?!0:o.trim().length===0}const oH=/{(\d+)}/g;function $p(o,...e){return e.length===0?o:o.replace(oH,function(t,i){const n=parseInt(i,10);return isNaN(n)||n<0||n>=e.length?t:e[n]})}function rH(o){return o.replace(/[<>"'&]/g,e=>{switch(e){case"<":return"<";case">":return">";case'"':return""";case"'":return"'";case"&":return"&"}return e})}function Km(o){return o.replace(/[<>&]/g,function(e){switch(e){case"<":return"<";case">":return">";case"&":return"&";default:return e}})}function xl(o){return o.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function k0(o,e){if(!o||!e)return o;const t=e.length;if(t===0||o.length===0)return o;let i=0;for(;o.indexOf(e,i)===i;)i=i+t;return o.substring(i)}function aH(o,e){if(!o||!e)return o;const t=e.length,i=o.length;if(t===0||i===0)return o;let n=i,s=-1;for(;s=o.lastIndexOf(e,n-1),!(s===-1||s+t!==n);){if(s===0)return"";n=s}return o.substring(0,n)}function lH(o){return o.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}function uF(o,e,t={}){if(!o)throw new Error("Cannot create regex from empty string");e||(o=xl(o)),t.wholeWord&&(/\B/.test(o.charAt(0))||(o="\\b"+o),/\B/.test(o.charAt(o.length-1))||(o=o+"\\b"));let i="";return t.global&&(i+="g"),t.matchCase||(i+="i"),t.multiline&&(i+="m"),t.unicode&&(i+="u"),new RegExp(o,i)}function cH(o){return o.source==="^"||o.source==="^$"||o.source==="$"||o.source==="^\\s*$"?!1:!!(o.exec("")&&o.lastIndex===0)}function va(o){return o.split(/\r\n|\r|\n/)}function dH(o){const e=[],t=o.split(/(\r\n|\r|\n)/);for(let i=0;i=0;t--){const i=o.charCodeAt(t);if(i!==32&&i!==9)return t}return-1}function Kp(o,e){return oe?1:0}function BN(o,e,t=0,i=o.length,n=0,s=e.length){for(;tc)return 1}const r=i-t,a=s-n;return ra?1:0}function Ax(o,e){return H_(o,e,0,o.length,0,e.length)}function H_(o,e,t=0,i=o.length,n=0,s=e.length){for(;t=128||c>=128)return BN(o.toLowerCase(),e.toLowerCase(),t,i,n,s);Yu(l)&&(l-=32),Yu(c)&&(c-=32);const d=l-c;if(d!==0)return d}const r=i-t,a=s-n;return ra?1:0}function yb(o){return o>=48&&o<=57}function Yu(o){return o>=97&&o<=122}function ql(o){return o>=65&&o<=90}function Qu(o,e){return o.length===e.length&&H_(o,e)===0}function WN(o,e){const t=e.length;return e.length>o.length?!1:H_(o,e,0,t)===0}function Th(o,e){const t=Math.min(o.length,e.length);let i;for(i=0;i1){const i=o.charCodeAt(e-2);if(wi(i))return HN(i,t)}return t}class VN{get offset(){return this._offset}constructor(e,t=0){this._str=e,this._len=e.length,this._offset=t}setOffset(e){this._offset=e}prevCodePoint(){const e=hH(this._str,this._offset);return this._offset-=e>=65536?2:1,e}nextCodePoint(){const e=uC(this._str,this._len,this._offset);return this._offset+=e>=65536?2:1,e}eol(){return this._offset>=this._len}}class fC{get offset(){return this._iterator.offset}constructor(e,t=0){this._iterator=new VN(e,t)}nextGraphemeLength(){const e=gC.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.nextCodePoint());for(;!t.eol();){const s=t.offset,r=e.getGraphemeBreakType(t.nextCodePoint());if(JM(n,r)){t.setOffset(s);break}n=r}return t.offset-i}prevGraphemeLength(){const e=gC.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.prevCodePoint());for(;t.offset>0;){const s=t.offset,r=e.getGraphemeBreakType(t.prevCodePoint());if(JM(r,n)){t.setOffset(s);break}n=r}return i-t.offset}eol(){return this._iterator.eol()}}function zN(o,e){return new fC(o,e).nextGraphemeLength()}function fF(o,e){return new fC(o,e).prevGraphemeLength()}function uH(o,e){e>0&&Mh(o.charCodeAt(e))&&e--;const t=e+zN(o,e);return[t-fF(o,t),t]}let Gy;function fH(){return/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDC7\uFDF0-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE35\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDD23\uDE80-\uDEA9\uDEAD-\uDF45\uDF51-\uDF81\uDF86-\uDFF6]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD4B-\uDFFF]|\uD83B[\uDC00-\uDEBB])/}function sg(o){return Gy||(Gy=fH()),Gy.test(o)}const gH=/^[\t\n\r\x20-\x7E]*$/;function D0(o){return gH.test(o)}const gF=/[\u2028\u2029]/;function mF(o){return gF.test(o)}function Rc(o){return o>=11904&&o<=55215||o>=63744&&o<=64255||o>=65281&&o<=65374}function UN(o){return o>=127462&&o<=127487||o===8986||o===8987||o===9200||o===9203||o>=9728&&o<=10175||o===11088||o===11093||o>=127744&&o<=128591||o>=128640&&o<=128764||o>=128992&&o<=129008||o>=129280&&o<=129535||o>=129648&&o<=129782}const mH="\uFEFF";function $N(o){return!!(o&&o.length>0&&o.charCodeAt(0)===65279)}function pF(o){return o=o%52,o<26?String.fromCharCode(97+o):String.fromCharCode(65+o-26)}function JM(o,e){return o===0?e!==5&&e!==7:o===2&&e===3?!1:o===4||o===2||o===3||e===4||e===2||e===3?!0:!(o===8&&(e===8||e===9||e===11||e===12)||(o===11||o===9)&&(e===9||e===10)||(o===12||o===10)&&e===10||e===5||e===13||e===7||o===1||o===13&&e===14||o===6&&e===6)}const Rd=class Rd{static getInstance(){return Rd._INSTANCE||(Rd._INSTANCE=new Rd),Rd._INSTANCE}constructor(){this._data=pH()}getGraphemeBreakType(e){if(e<32)return e===10?3:e===13?2:4;if(e<127)return 0;const t=this._data,i=t.length/3;let n=1;for(;n<=i;)if(et[3*n+1])n=2*n+1;else return t[3*n+2];return 0}};Rd._INSTANCE=null;let gC=Rd;function pH(){return JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}function _H(o,e){if(o===0)return 0;const t=bH(o,e);if(t!==void 0)return t;const i=new VN(e,o);return i.prevCodePoint(),i.offset}function bH(o,e){const t=new VN(e,o);let i=t.prevCodePoint();for(;CH(i)||i===65039||i===8419;){if(t.offset===0)return;i=t.prevCodePoint()}if(!UN(i))return;let n=t.offset;return n>0&&t.prevCodePoint()===8205&&(n=t.offset),n}function CH(o){return 127995<=o&&o<=127999}const vH=" ",Wr=class Wr{static getInstance(e){return Wr.cache.get(Array.from(e))}static getLocales(){return Wr._locales.value}constructor(e){this.confusableDictionary=e}isAmbiguous(e){return this.confusableDictionary.has(e)}getPrimaryConfusable(e){return this.confusableDictionary.get(e)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}};Wr.ambiguousCharacterData=new ua(()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,8218,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,8242,96,1370,96,1523,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71922,67,71913,67,65315,67,8557,67,8450,67,8493,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71919,87,71910,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,66293,90,71909,90,65338,90,8484,90,8488,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65297,49,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"cs":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"es":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"fr":[65374,126,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"it":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ja":[8211,45,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65292,44,65307,59],"ko":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pt-BR":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ru":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"zh-hans":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41],"zh-hant":[8211,45,65374,126,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65307,59]}')),Wr.cache=new sH({getCacheKey:JSON.stringify},e=>{function t(d){const h=new Map;for(let u=0;u!d.startsWith("_")&&d in s);r.length===0&&(r=["_default"]);let a;for(const d of r){const h=t(s[d]);a=n(a,h)}const l=t(s._common),c=i(l,a);return new Wr(c)}),Wr._locales=new ua(()=>Object.keys(Wr.ambiguousCharacterData.value).filter(e=>!e.startsWith("_")));let jp=Wr;const Cf=class Cf{static getRawData(){return JSON.parse("[9,10,11,12,13,32,127,160,173,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8203,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12288,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999]")}static getData(){return this._data||(this._data=new Set(Cf.getRawData())),this._data}static isInvisibleCharacter(e){return Cf.getData().has(e)}static get codePoints(){return Cf.getData()}};Cf._data=void 0;let jm=Cf;const vw=class vw{constructor(){this.mapWindowIdToZoomFactor=new Map}getZoomFactor(e){return this.mapWindowIdToZoomFactor.get(this.getWindowId(e))??1}getWindowId(e){return e.vscodeWindowId}};vw.INSTANCE=new vw;let Ox=vw;function _F(o,e,t){typeof e=="string"&&(e=o.matchMedia(e)),e.addEventListener("change",t)}function wH(o){return Ox.INSTANCE.getZoomFactor(o)}const Bg=navigator.userAgent,Mo=Bg.indexOf("Firefox")>=0,I0=Bg.indexOf("AppleWebKit")>=0,V_=Bg.indexOf("Chrome")>=0,Ac=!V_&&Bg.indexOf("Safari")>=0,bF=!V_&&!Ac&&I0;Bg.indexOf("Electron/")>=0;const eR=Bg.indexOf("Android")>=0;let Zy=!1;if(typeof _t.matchMedia=="function"){const o=_t.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),e=_t.matchMedia("(display-mode: fullscreen)");Zy=o.matches,_F(_t,o,({matches:t})=>{Zy&&e.matches||(Zy=t)})}const KN={clipboard:{writeText:oC||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:oC||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},pointerEvents:_t.PointerEvent&&("ontouchstart"in _t||navigator.maxTouchPoints>0)};function Fx(o,e){if(typeof o=="number"){if(o===0)return null;const t=(o&65535)>>>0,i=(o&4294901760)>>>16;return i!==0?new Yy([Sb(t,e),Sb(i,e)]):new Yy([Sb(t,e)])}else{const t=[];for(let i=0;i{const r=e.token.onCancellationRequested(()=>{r.dispose(),s(new ha)});Promise.resolve(t).then(a=>{r.dispose(),e.dispose(),n(a)},a=>{r.dispose(),e.dispose(),s(a)})});return new class{cancel(){e.cancel(),e.dispose()}then(n,s){return i.then(n,s)}catch(n){return this.then(void 0,n)}finally(n){return i.finally(n)}}}function TH(o,e,t){return new Promise((i,n)=>{const s=e.onCancellationRequested(()=>{s.dispose(),i(t)});o.then(i,n).finally(()=>s.dispose())})}class MH{constructor(){this.isDisposed=!1,this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null}queue(e){if(this.isDisposed)return Promise.reject(new Error("Throttler is disposed"));if(this.activePromise){if(this.queuedPromiseFactory=e,!this.queuedPromise){const t=()=>{if(this.queuedPromise=null,this.isDisposed)return;const i=this.queue(this.queuedPromiseFactory);return this.queuedPromiseFactory=null,i};this.queuedPromise=new Promise(i=>{this.activePromise.then(t,t).then(i)})}return new Promise((t,i)=>{this.queuedPromise.then(t,i)})}return this.activePromise=e(),new Promise((t,i)=>{this.activePromise.then(n=>{this.activePromise=null,t(n)},n=>{this.activePromise=null,i(n)})})}dispose(){this.isDisposed=!0}}const RH=(o,e)=>{let t=!0;const i=setTimeout(()=>{t=!1,e()},o);return{isTriggered:()=>t,dispose:()=>{clearTimeout(i),t=!1}}},AH=o=>{let e=!0;return queueMicrotask(()=>{e&&(e=!1,o())}),{isTriggered:()=>e,dispose:()=>{e=!1}}};class z_{constructor(e){this.defaultDelay=e,this.deferred=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}trigger(e,t=this.defaultDelay){this.task=e,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise((n,s)=>{this.doResolve=n,this.doReject=s}).then(()=>{if(this.completionPromise=null,this.doResolve=null,this.task){const n=this.task;return this.task=null,n()}}));const i=()=>{this.deferred=null,this.doResolve?.(null)};return this.deferred=t===CF?AH(i):RH(t,i),this.completionPromise}isTriggered(){return!!this.deferred?.isTriggered()}cancel(){this.cancelTimeout(),this.completionPromise&&(this.doReject?.(new ha),this.completionPromise=null)}cancelTimeout(){this.deferred?.dispose(),this.deferred=null}dispose(){this.cancel()}}class vF{constructor(e){this.delayer=new z_(e),this.throttler=new MH}trigger(e,t){return this.delayer.trigger(()=>this.throttler.queue(e),t)}cancel(){this.delayer.cancel()}dispose(){this.delayer.dispose(),this.throttler.dispose()}}function og(o,e){return e?new Promise((t,i)=>{const n=setTimeout(()=>{s.dispose(),t()},o),s=e.onCancellationRequested(()=>{clearTimeout(n),s.dispose(),i(new ha)})}):wa(t=>og(o,t))}function rg(o,e=0,t){const i=setTimeout(()=>{o(),t&&n.dispose()},e),n=_e(()=>{clearTimeout(i),t?.deleteAndLeak(n)});return t?.add(n),n}class wr{constructor(e,t){this._isDisposed=!1,this._token=-1,typeof e=="function"&&typeof t=="number"&&this.setIfNotSet(e,t)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(e,t){if(this._isDisposed)throw new nt("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,e()},t)}setIfNotSet(e,t){if(this._isDisposed)throw new nt("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,e()},t))}}class jN{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(e,t,i=globalThis){if(this.isDisposed)throw new nt("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();const n=i.setInterval(()=>{e()},t);this.disposable=_e(()=>{i.clearInterval(n),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}}class ci{constructor(e,t){this.timeoutToken=-1,this.runner=e,this.timeout=t,this.timeoutHandler=this.onTimeout.bind(this)}dispose(){this.cancel(),this.runner=null}cancel(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=-1)}schedule(e=this.timeout){this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,e)}get delay(){return this.timeout}set delay(e){this.timeout=e}isScheduled(){return this.timeoutToken!==-1}onTimeout(){this.timeoutToken=-1,this.runner&&this.doRun()}doRun(){this.runner?.()}}let wF,qm;(function(){typeof globalThis.requestIdleCallback!="function"||typeof globalThis.cancelIdleCallback!="function"?qm=(o,e)=>{z5(()=>{if(t)return;const i=Date.now()+15;e(Object.freeze({didTimeout:!0,timeRemaining(){return Math.max(0,i-Date.now())}}))});let t=!1;return{dispose(){t||(t=!0)}}}:qm=(o,e,t)=>{const i=o.requestIdleCallback(e,typeof t=="number"?{timeout:t}:void 0);let n=!1;return{dispose(){n||(n=!0,o.cancelIdleCallback(i))}}},wF=o=>qm(globalThis,o)})();class yF{constructor(e,t){this._didRun=!1,this._executor=()=>{try{this._value=t()}catch(i){this._error=i}finally{this._didRun=!0}},this._handle=qm(e,()=>this._executor())}dispose(){this._handle.dispose()}get value(){if(this._didRun||(this._handle.dispose(),this._executor()),this._error)throw this._error;return this._value}get isInitialized(){return this._didRun}}class PH extends yF{constructor(e){super(globalThis,e)}}class qN{get isRejected(){return this.outcome?.outcome===1}get isSettled(){return!!this.outcome}constructor(){this.p=new Promise((e,t)=>{this.completeCallback=e,this.errorCallback=t})}complete(e){return new Promise(t=>{this.completeCallback(e),this.outcome={outcome:0,value:e},t()})}error(e){return new Promise(t=>{this.errorCallback(e),this.outcome={outcome:1,value:e},t()})}cancel(){return this.error(new ha)}}var Wx;(function(o){async function e(i){let n;const s=await Promise.all(i.map(r=>r.then(a=>a,a=>{n||(n=a)})));if(typeof n<"u")throw n;return s}o.settled=e;function t(i){return new Promise(async(n,s)=>{try{await i(n,s)}catch(r){s(r)}})}o.withAsyncBody=t})(Wx||(Wx={}));const es=class es{static fromArray(e){return new es(t=>{t.emitMany(e)})}static fromPromise(e){return new es(async t=>{t.emitMany(await e)})}static fromPromises(e){return new es(async t=>{await Promise.all(e.map(async i=>t.emitOne(await i)))})}static merge(e){return new es(async t=>{await Promise.all(e.map(async i=>{for await(const n of i)t.emitOne(n)}))})}constructor(e,t){this._state=0,this._results=[],this._error=null,this._onReturn=t,this._onStateChanged=new A,queueMicrotask(async()=>{const i={emitOne:n=>this.emitOne(n),emitMany:n=>this.emitMany(n),reject:n=>this.reject(n)};try{await Promise.resolve(e(i)),this.resolve()}catch(n){this.reject(n)}finally{i.emitOne=void 0,i.emitMany=void 0,i.reject=void 0}})}[Symbol.asyncIterator](){let e=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(e(this._onReturn?.(),{done:!0,value:void 0})}}static map(e,t){return new es(async i=>{for await(const n of e)i.emitOne(t(n))})}map(e){return es.map(this,e)}static filter(e,t){return new es(async i=>{for await(const n of e)t(n)&&i.emitOne(n)})}filter(e){return es.filter(this,e)}static coalesce(e){return es.filter(e,t=>!!t)}coalesce(){return es.coalesce(this)}static async toPromise(e){const t=[];for await(const i of e)t.push(i);return t}toPromise(){return es.toPromise(this)}emitOne(e){this._state===0&&(this._results.push(e),this._onStateChanged.fire())}emitMany(e){this._state===0&&(this._results=this._results.concat(e),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(e){this._state===0&&(this._state=2,this._error=e,this._onStateChanged.fire())}};es.EMPTY=es.fromArray([]);let Ms=es;class OH extends Ms{constructor(e,t){super(t),this._source=e}cancel(){this._source.cancel()}}function FH(o){const e=new In,t=o(e.token);return new OH(e,async i=>{const n=e.token.onCancellationRequested(()=>{n.dispose(),e.dispose(),i.reject(new ha)});try{for await(const s of t){if(e.token.isCancellationRequested)return;i.emitOne(s)}n.dispose(),e.dispose()}catch(s){n.dispose(),e.dispose(),i.reject(s)}})}const{entries:SF,setPrototypeOf:iR,isFrozen:BH,getPrototypeOf:WH,getOwnPropertyDescriptor:HH}=Object;let{freeze:us,seal:Ro,create:LF}=Object,{apply:Hx,construct:Vx}=typeof Reflect<"u"&&Reflect;us||(us=function(e){return e});Ro||(Ro=function(e){return e});Hx||(Hx=function(e,t,i){return e.apply(t,i)});Vx||(Vx=function(e,t){return new e(...t)});const Lb=lo(Array.prototype.forEach),nR=lo(Array.prototype.pop),im=lo(Array.prototype.push),S1=lo(String.prototype.toLowerCase),Qy=lo(String.prototype.toString),sR=lo(String.prototype.match),nm=lo(String.prototype.replace),VH=lo(String.prototype.indexOf),zH=lo(String.prototype.trim),Yo=lo(Object.prototype.hasOwnProperty),Qn=lo(RegExp.prototype.test),sm=UH(TypeError);function lo(o){return function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),n=1;n2&&arguments[2]!==void 0?arguments[2]:S1;iR&&iR(o,null);let i=e.length;for(;i--;){let n=e[i];if(typeof n=="string"){const s=t(n);s!==n&&(BH(e)||(e[i]=s),n=s)}o[n]=!0}return o}function $H(o){for(let e=0;e/gm),ZH=Ro(/\${[\w\W]*}/gm),YH=Ro(/^data-[\-\w.\u00B7-\uFFFF]/),QH=Ro(/^aria-[\-\w]+$/),xF=Ro(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),XH=Ro(/^(?:\w+script|data):/i),JH=Ro(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),kF=Ro(/^html$/i),eV=Ro(/^[a-z][.\w]*(-[.\w]+)+$/i);var cR=Object.freeze({__proto__:null,MUSTACHE_EXPR:qH,ERB_EXPR:GH,TMPLIT_EXPR:ZH,DATA_ATTR:YH,ARIA_ATTR:QH,IS_ALLOWED_URI:xF,IS_SCRIPT_OR_DATA:XH,ATTR_WHITESPACE:JH,DOCTYPE_NAME:kF,CUSTOM_ELEMENT:eV});const rm={element:1,text:3,progressingInstruction:7,comment:8,document:9},tV=function(){return typeof window>"u"?null:window},iV=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let i=null;const n="data-tt-policy-suffix";t&&t.hasAttribute(n)&&(i=t.getAttribute(n));const s="dompurify"+(i?"#"+i:"");try{return e.createPolicy(s,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return console.warn("TrustedTypes policy "+s+" could not be created."),null}};function DF(){let o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:tV();const e=Oe=>DF(Oe);if(e.version="3.1.7",e.removed=[],!o||!o.document||o.document.nodeType!==rm.document)return e.isSupported=!1,e;let{document:t}=o;const i=t,n=i.currentScript,{DocumentFragment:s,HTMLTemplateElement:r,Node:a,Element:l,NodeFilter:c,NamedNodeMap:d=o.NamedNodeMap||o.MozNamedAttrMap,HTMLFormElement:h,DOMParser:u,trustedTypes:f}=o,g=l.prototype,p=om(g,"cloneNode"),_=om(g,"remove"),b=om(g,"nextSibling"),C=om(g,"childNodes"),w=om(g,"parentNode");if(typeof r=="function"){const Oe=t.createElement("template");Oe.content&&Oe.content.ownerDocument&&(t=Oe.content.ownerDocument)}let v,y="";const{implementation:x,createNodeIterator:L,createDocumentFragment:E,getElementsByTagName:N}=t,{importNode:H}=i;let F={};e.isSupported=typeof SF=="function"&&typeof w=="function"&&x&&x.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:W,ERB_EXPR:j,TMPLIT_EXPR:B,DATA_ATTR:G,ARIA_ATTR:ne,IS_SCRIPT_OR_DATA:ae,ATTR_WHITESPACE:de,CUSTOM_ELEMENT:se}=cR;let{IS_ALLOWED_URI:be}=cR,we=null;const Rt=mt({},[...oR,...Xy,...Jy,...eS,...rR]);let ct=null;const Bt=mt({},[...aR,...tS,...lR,...xb]);let ht=Object.seal(LF(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ei=null,js=null,fi=!0,po=!0,Al=!1,fb=!0,Pl=!1,Yg=!0,Ia=!1,Qg=!1,Xg=!1,Ol=!1,vu=!1,wu=!1,Yc=!0,gb=!1;const mb="user-content-";let yu=!0,Qc=!1,Dr={},Fl=null;const Su=mt({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let pb=null;const Xc=mt({},["audio","video","img","source","image","track"]);let Ea=null;const bs=mt({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ir="http://www.w3.org/1998/Math/MathML",Na="http://www.w3.org/2000/svg",Ti="http://www.w3.org/1999/xhtml";let _o=Ti,Lu=!1,Uo=null;const Ot=mt({},[Ir,Na,Ti],Qy);let Jc=null;const Vy=["application/xhtml+xml","text/html"],zy="text/html";let Hi=null,Bl=null;const Uy=t.createElement("form"),_b=function($){return $ instanceof RegExp||$ instanceof Function},Jg=function(){let $=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(Bl&&Bl===$)){if((!$||typeof $!="object")&&($={}),$=hd($),Jc=Vy.indexOf($.PARSER_MEDIA_TYPE)===-1?zy:$.PARSER_MEDIA_TYPE,Hi=Jc==="application/xhtml+xml"?Qy:S1,we=Yo($,"ALLOWED_TAGS")?mt({},$.ALLOWED_TAGS,Hi):Rt,ct=Yo($,"ALLOWED_ATTR")?mt({},$.ALLOWED_ATTR,Hi):Bt,Uo=Yo($,"ALLOWED_NAMESPACES")?mt({},$.ALLOWED_NAMESPACES,Qy):Ot,Ea=Yo($,"ADD_URI_SAFE_ATTR")?mt(hd(bs),$.ADD_URI_SAFE_ATTR,Hi):bs,pb=Yo($,"ADD_DATA_URI_TAGS")?mt(hd(Xc),$.ADD_DATA_URI_TAGS,Hi):Xc,Fl=Yo($,"FORBID_CONTENTS")?mt({},$.FORBID_CONTENTS,Hi):Su,ei=Yo($,"FORBID_TAGS")?mt({},$.FORBID_TAGS,Hi):{},js=Yo($,"FORBID_ATTR")?mt({},$.FORBID_ATTR,Hi):{},Dr=Yo($,"USE_PROFILES")?$.USE_PROFILES:!1,fi=$.ALLOW_ARIA_ATTR!==!1,po=$.ALLOW_DATA_ATTR!==!1,Al=$.ALLOW_UNKNOWN_PROTOCOLS||!1,fb=$.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Pl=$.SAFE_FOR_TEMPLATES||!1,Yg=$.SAFE_FOR_XML!==!1,Ia=$.WHOLE_DOCUMENT||!1,Ol=$.RETURN_DOM||!1,vu=$.RETURN_DOM_FRAGMENT||!1,wu=$.RETURN_TRUSTED_TYPE||!1,Xg=$.FORCE_BODY||!1,Yc=$.SANITIZE_DOM!==!1,gb=$.SANITIZE_NAMED_PROPS||!1,yu=$.KEEP_CONTENT!==!1,Qc=$.IN_PLACE||!1,be=$.ALLOWED_URI_REGEXP||xF,_o=$.NAMESPACE||Ti,ht=$.CUSTOM_ELEMENT_HANDLING||{},$.CUSTOM_ELEMENT_HANDLING&&_b($.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(ht.tagNameCheck=$.CUSTOM_ELEMENT_HANDLING.tagNameCheck),$.CUSTOM_ELEMENT_HANDLING&&_b($.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(ht.attributeNameCheck=$.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),$.CUSTOM_ELEMENT_HANDLING&&typeof $.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(ht.allowCustomizedBuiltInElements=$.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Pl&&(po=!1),vu&&(Ol=!0),Dr&&(we=mt({},rR),ct=[],Dr.html===!0&&(mt(we,oR),mt(ct,aR)),Dr.svg===!0&&(mt(we,Xy),mt(ct,tS),mt(ct,xb)),Dr.svgFilters===!0&&(mt(we,Jy),mt(ct,tS),mt(ct,xb)),Dr.mathMl===!0&&(mt(we,eS),mt(ct,lR),mt(ct,xb))),$.ADD_TAGS&&(we===Rt&&(we=hd(we)),mt(we,$.ADD_TAGS,Hi)),$.ADD_ATTR&&(ct===Bt&&(ct=hd(ct)),mt(ct,$.ADD_ATTR,Hi)),$.ADD_URI_SAFE_ATTR&&mt(Ea,$.ADD_URI_SAFE_ATTR,Hi),$.FORBID_CONTENTS&&(Fl===Su&&(Fl=hd(Fl)),mt(Fl,$.FORBID_CONTENTS,Hi)),yu&&(we["#text"]=!0),Ia&&mt(we,["html","head","body"]),we.table&&(mt(we,["tbody"]),delete ei.tbody),$.TRUSTED_TYPES_POLICY){if(typeof $.TRUSTED_TYPES_POLICY.createHTML!="function")throw sm('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof $.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw sm('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');v=$.TRUSTED_TYPES_POLICY,y=v.createHTML("")}else v===void 0&&(v=iV(f,n)),v!==null&&typeof y=="string"&&(y=v.createHTML(""));us&&us($),Bl=$}},Xe=mt({},["mi","mo","mn","ms","mtext"]),T=mt({},["annotation-xml"]),M=mt({},["title","style","font","a","script"]),R=mt({},[...Xy,...Jy,...KH]),O=mt({},[...eS,...jH]),V=function($){let ue=w($);(!ue||!ue.tagName)&&(ue={namespaceURI:_o,tagName:"template"});const Ie=S1($.tagName),ui=S1(ue.tagName);return Uo[$.namespaceURI]?$.namespaceURI===Na?ue.namespaceURI===Ti?Ie==="svg":ue.namespaceURI===Ir?Ie==="svg"&&(ui==="annotation-xml"||Xe[ui]):!!R[Ie]:$.namespaceURI===Ir?ue.namespaceURI===Ti?Ie==="math":ue.namespaceURI===Na?Ie==="math"&&T[ui]:!!O[Ie]:$.namespaceURI===Ti?ue.namespaceURI===Na&&!T[ui]||ue.namespaceURI===Ir&&!Xe[ui]?!1:!O[Ie]&&(M[Ie]||!R[Ie]):!!(Jc==="application/xhtml+xml"&&Uo[$.namespaceURI]):!1},Y=function($){im(e.removed,{element:$});try{w($).removeChild($)}catch{_($)}},te=function($,ue){try{im(e.removed,{attribute:ue.getAttributeNode($),from:ue})}catch{im(e.removed,{attribute:null,from:ue})}if(ue.removeAttribute($),$==="is"&&!ct[$])if(Ol||vu)try{Y(ue)}catch{}else try{ue.setAttribute($,"")}catch{}},me=function($){let ue=null,Ie=null;if(Xg)$=""+$;else{const pn=sR($,/^[\r\n\t ]+/);Ie=pn&&pn[0]}Jc==="application/xhtml+xml"&&_o===Ti&&($=''+$+"");const ui=v?v.createHTML($):$;if(_o===Ti)try{ue=new u().parseFromString(ui,Jc)}catch{}if(!ue||!ue.documentElement){ue=x.createDocument(_o,"template",null);try{ue.documentElement.innerHTML=Lu?y:ui}catch{}}const On=ue.body||ue.documentElement;return $&&Ie&&On.insertBefore(t.createTextNode(Ie),On.childNodes[0]||null),_o===Ti?N.call(ue,Ia?"html":"body")[0]:Ia?ue.documentElement:On},ye=function($){return L.call($.ownerDocument||$,$,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},Ve=function($){return $ instanceof h&&(typeof $.nodeName!="string"||typeof $.textContent!="string"||typeof $.removeChild!="function"||!($.attributes instanceof d)||typeof $.removeAttribute!="function"||typeof $.setAttribute!="function"||typeof $.namespaceURI!="string"||typeof $.insertBefore!="function"||typeof $.hasChildNodes!="function")},ft=function($){return typeof a=="function"&&$ instanceof a},Ct=function($,ue,Ie){F[$]&&Lb(F[$],ui=>{ui.call(e,ue,Ie,Bl)})},Si=function($){let ue=null;if(Ct("beforeSanitizeElements",$,null),Ve($))return Y($),!0;const Ie=Hi($.nodeName);if(Ct("uponSanitizeElement",$,{tagName:Ie,allowedTags:we}),$.hasChildNodes()&&!ft($.firstElementChild)&&Qn(/<[/\w]/g,$.innerHTML)&&Qn(/<[/\w]/g,$.textContent)||$.nodeType===rm.progressingInstruction||Yg&&$.nodeType===rm.comment&&Qn(/<[/\w]/g,$.data))return Y($),!0;if(!we[Ie]||ei[Ie]){if(!ei[Ie]&&Zn(Ie)&&(ht.tagNameCheck instanceof RegExp&&Qn(ht.tagNameCheck,Ie)||ht.tagNameCheck instanceof Function&&ht.tagNameCheck(Ie)))return!1;if(yu&&!Fl[Ie]){const ui=w($)||$.parentNode,On=C($)||$.childNodes;if(On&&ui){const pn=On.length;for(let Cs=pn-1;Cs>=0;--Cs){const Er=p(On[Cs],!0);Er.__removalCount=($.__removalCount||0)+1,ui.insertBefore(Er,b($))}}}return Y($),!0}return $ instanceof l&&!V($)||(Ie==="noscript"||Ie==="noembed"||Ie==="noframes")&&Qn(/<\/no(script|embed|frames)/i,$.innerHTML)?(Y($),!0):(Pl&&$.nodeType===rm.text&&(ue=$.textContent,Lb([W,j,B],ui=>{ue=nm(ue,ui," ")}),$.textContent!==ue&&(im(e.removed,{element:$.cloneNode()}),$.textContent=ue)),Ct("afterSanitizeElements",$,null),!1)},Gt=function($,ue,Ie){if(Yc&&(ue==="id"||ue==="name")&&(Ie in t||Ie in Uy))return!1;if(!(po&&!js[ue]&&Qn(G,ue))){if(!(fi&&Qn(ne,ue))){if(!ct[ue]||js[ue]){if(!(Zn($)&&(ht.tagNameCheck instanceof RegExp&&Qn(ht.tagNameCheck,$)||ht.tagNameCheck instanceof Function&&ht.tagNameCheck($))&&(ht.attributeNameCheck instanceof RegExp&&Qn(ht.attributeNameCheck,ue)||ht.attributeNameCheck instanceof Function&&ht.attributeNameCheck(ue))||ue==="is"&&ht.allowCustomizedBuiltInElements&&(ht.tagNameCheck instanceof RegExp&&Qn(ht.tagNameCheck,Ie)||ht.tagNameCheck instanceof Function&&ht.tagNameCheck(Ie))))return!1}else if(!Ea[ue]){if(!Qn(be,nm(Ie,de,""))){if(!((ue==="src"||ue==="xlink:href"||ue==="href")&&$!=="script"&&VH(Ie,"data:")===0&&pb[$])){if(!(Al&&!Qn(ae,nm(Ie,de,"")))){if(Ie)return!1}}}}}}return!0},Zn=function($){return $!=="annotation-xml"&&sR($,se)},qs=function($){Ct("beforeSanitizeAttributes",$,null);const{attributes:ue}=$;if(!ue)return;const Ie={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ct};let ui=ue.length;for(;ui--;){const On=ue[ui],{name:pn,namespaceURI:Cs,value:Er}=On,tm=Hi(pn);let Yn=pn==="value"?Er:zH(Er);if(Ie.attrName=tm,Ie.attrValue=Yn,Ie.keepAttr=!0,Ie.forceKeepAttr=void 0,Ct("uponSanitizeAttribute",$,Ie),Yn=Ie.attrValue,Ie.forceKeepAttr||(te(pn,$),!Ie.keepAttr))continue;if(!fb&&Qn(/\/>/i,Yn)){te(pn,$);continue}Pl&&Lb([W,j,B],TM=>{Yn=nm(Yn,TM," ")});const NM=Hi($.nodeName);if(Gt(NM,tm,Yn)){if(gb&&(tm==="id"||tm==="name")&&(te(pn,$),Yn=mb+Yn),Yg&&Qn(/((--!?|])>)|<\/(style|title)/i,Yn)){te(pn,$);continue}if(v&&typeof f=="object"&&typeof f.getAttributeType=="function"&&!Cs)switch(f.getAttributeType(NM,tm)){case"TrustedHTML":{Yn=v.createHTML(Yn);break}case"TrustedScriptURL":{Yn=v.createScriptURL(Yn);break}}try{Cs?$.setAttributeNS(Cs,pn,Yn):$.setAttribute(pn,Yn),Ve($)?Y($):nR(e.removed)}catch{}}}Ct("afterSanitizeAttributes",$,null)},em=function Oe($){let ue=null;const Ie=ye($);for(Ct("beforeSanitizeShadowDOM",$,null);ue=Ie.nextNode();)Ct("uponSanitizeShadowNode",ue,null),!Si(ue)&&(ue.content instanceof s&&Oe(ue.content),qs(ue));Ct("afterSanitizeShadowDOM",$,null)};return e.sanitize=function(Oe){let $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ue=null,Ie=null,ui=null,On=null;if(Lu=!Oe,Lu&&(Oe=""),typeof Oe!="string"&&!ft(Oe))if(typeof Oe.toString=="function"){if(Oe=Oe.toString(),typeof Oe!="string")throw sm("dirty is not a string, aborting")}else throw sm("toString is not a function");if(!e.isSupported)return Oe;if(Qg||Jg($),e.removed=[],typeof Oe=="string"&&(Qc=!1),Qc){if(Oe.nodeName){const Er=Hi(Oe.nodeName);if(!we[Er]||ei[Er])throw sm("root node is forbidden and cannot be sanitized in-place")}}else if(Oe instanceof a)ue=me(""),Ie=ue.ownerDocument.importNode(Oe,!0),Ie.nodeType===rm.element&&Ie.nodeName==="BODY"||Ie.nodeName==="HTML"?ue=Ie:ue.appendChild(Ie);else{if(!Ol&&!Pl&&!Ia&&Oe.indexOf("<")===-1)return v&&wu?v.createHTML(Oe):Oe;if(ue=me(Oe),!ue)return Ol?null:wu?y:""}ue&&Xg&&Y(ue.firstChild);const pn=ye(Qc?Oe:ue);for(;ui=pn.nextNode();)Si(ui)||(ui.content instanceof s&&em(ui.content),qs(ui));if(Qc)return Oe;if(Ol){if(vu)for(On=E.call(ue.ownerDocument);ue.firstChild;)On.appendChild(ue.firstChild);else On=ue;return(ct.shadowroot||ct.shadowrootmode)&&(On=H.call(i,On,!0)),On}let Cs=Ia?ue.outerHTML:ue.innerHTML;return Ia&&we["!doctype"]&&ue.ownerDocument&&ue.ownerDocument.doctype&&ue.ownerDocument.doctype.name&&Qn(kF,ue.ownerDocument.doctype.name)&&(Cs=" +`+Cs),Pl&&Lb([W,j,B],Er=>{Cs=nm(Cs,Er," ")}),v&&wu?v.createHTML(Cs):Cs},e.setConfig=function(){let Oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Jg(Oe),Qg=!0},e.clearConfig=function(){Bl=null,Qg=!1},e.isValidAttribute=function(Oe,$,ue){Bl||Jg({});const Ie=Hi(Oe),ui=Hi($);return Gt(Ie,ui,ue)},e.addHook=function(Oe,$){typeof $=="function"&&(F[Oe]=F[Oe]||[],im(F[Oe],$))},e.removeHook=function(Oe){if(F[Oe])return nR(F[Oe])},e.removeHooks=function(Oe){F[Oe]&&(F[Oe]=[])},e.removeAllHooks=function(){F={}},e}var ya=DF();ya.version;ya.isSupported;const IF=ya.sanitize;ya.setConfig;ya.clearConfig;ya.isValidAttribute;const EF=ya.addHook,NF=ya.removeHook;ya.removeHooks;ya.removeAllHooks;var Te;(function(o){o.inMemory="inmemory",o.vscode="vscode",o.internal="private",o.walkThrough="walkThrough",o.walkThroughSnippet="walkThroughSnippet",o.http="http",o.https="https",o.file="file",o.mailto="mailto",o.untitled="untitled",o.data="data",o.command="command",o.vscodeRemote="vscode-remote",o.vscodeRemoteResource="vscode-remote-resource",o.vscodeManagedRemoteResource="vscode-managed-remote-resource",o.vscodeUserData="vscode-userdata",o.vscodeCustomEditor="vscode-custom-editor",o.vscodeNotebookCell="vscode-notebook-cell",o.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",o.vscodeNotebookCellMetadataDiff="vscode-notebook-cell-metadata-diff",o.vscodeNotebookCellOutput="vscode-notebook-cell-output",o.vscodeNotebookCellOutputDiff="vscode-notebook-cell-output-diff",o.vscodeNotebookMetadata="vscode-notebook-metadata",o.vscodeInteractiveInput="vscode-interactive-input",o.vscodeSettings="vscode-settings",o.vscodeWorkspaceTrust="vscode-workspace-trust",o.vscodeTerminal="vscode-terminal",o.vscodeChatCodeBlock="vscode-chat-code-block",o.vscodeChatCodeCompareBlock="vscode-chat-code-compare-block",o.vscodeChatSesssion="vscode-chat-editor",o.webviewPanel="webview-panel",o.vscodeWebview="vscode-webview",o.extension="extension",o.vscodeFileResource="vscode-file",o.tmp="tmp",o.vsls="vsls",o.vscodeSourceControl="vscode-scm",o.commentsInput="comment",o.codeSetting="code-setting",o.outputChannel="output"})(Te||(Te={}));function GN(o,e){return ve.isUri(o)?Qu(o.scheme,e):WN(o,e+":")}function zx(o,...e){return e.some(t=>GN(o,t))}const nV="tkn";class sV{constructor(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null,this._serverRootPath="/"}setPreferredWebSchema(e){this._preferredWebSchema=e}get _remoteResourcesPath(){return oi.join(this._serverRootPath,Te.vscodeRemoteResource)}rewrite(e){if(this._delegate)try{return this._delegate(e)}catch(a){return Ze(a),e}const t=e.authority;let i=this._hosts[t];i&&i.indexOf(":")!==-1&&i.indexOf("[")===-1&&(i=`[${i}]`);const n=this._ports[t],s=this._connectionTokens[t];let r=`path=${encodeURIComponent(e.path)}`;return typeof s=="string"&&(r+=`&${nV}=${encodeURIComponent(s)}`),ve.from({scheme:Og?this._preferredWebSchema:Te.vscodeRemoteResource,authority:`${i}:${n}`,path:this._remoteResourcesPath,query:r})}}const TF=new sV,oV="vscode-app",Lp=class Lp{asBrowserUri(e){const t=this.toUri(e);return this.uriToBrowserUri(t)}uriToBrowserUri(e){return e.scheme===Te.vscodeRemote?TF.rewrite(e):e.scheme===Te.file&&(oC||_6===`${Te.vscodeFileResource}://${Lp.FALLBACK_AUTHORITY}`)?e.with({scheme:Te.vscodeFileResource,authority:e.authority||Lp.FALLBACK_AUTHORITY,query:null,fragment:null}):e}toUri(e,t){if(ve.isUri(e))return e;if(globalThis._VSCODE_FILE_ROOT){const i=globalThis._VSCODE_FILE_ROOT;if(/^\w[\w\d+.-]*:\/\//.test(i))return ve.joinPath(ve.parse(i,!0),e);const n=HW(i,e);return ve.file(n)}return ve.parse(t.toUrl(e))}};Lp.FALLBACK_AUTHORITY=oV;let Ux=Lp;const E0=new Ux;var $x;(function(o){const e=new Map([["1",{"Cross-Origin-Opener-Policy":"same-origin"}],["2",{"Cross-Origin-Embedder-Policy":"require-corp"}],["3",{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}]]);o.CoopAndCoep=Object.freeze(e.get("3"));const t="vscode-coi";function i(s){let r;typeof s=="string"?r=new URL(s).searchParams:s instanceof URL?r=s.searchParams:ve.isUri(s)&&(r=new URL(s.toString(!0)).searchParams);const a=r?.get(t);if(a)return e.get(a)}o.getHeadersFromQuery=i;function n(s,r,a){if(!globalThis.crossOriginIsolated)return;const l=r&&a?"3":a?"2":"1";s instanceof URLSearchParams?s.set(t,l):s[t]=l}o.addSearchParam=n})($x||($x={}));function ZN(o){return N0(o,0)}function N0(o,e){switch(typeof o){case"object":return o===null?ol(349,e):Array.isArray(o)?aV(o,e):lV(o,e);case"string":return YN(o,e);case"boolean":return rV(o,e);case"number":return ol(o,e);case"undefined":return ol(937,e);default:return ol(617,e)}}function ol(o,e){return(e<<5)-e+o|0}function rV(o,e){return ol(o?433:863,e)}function YN(o,e){e=ol(149417,e);for(let t=0,i=o.length;tN0(i,t),e)}function lV(o,e){return e=ol(181387,e),Object.keys(o).sort().reduce((t,i)=>(t=YN(i,t),N0(o[i],t)),e)}function iS(o,e,t=32){const i=t-e,n=~((1<>>i)>>>0}function dR(o,e=0,t=o.byteLength,i=0){for(let n=0;nt.toString(16).padStart(2,"0")).join(""):cV((o>>>0).toString(16),e/4)}const ww=class ww{constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(e){const t=e.length;if(t===0)return;const i=this._buff;let n=this._buffLen,s=this._leftoverHighSurrogate,r,a;for(s!==0?(r=s,a=-1,s=0):(r=e.charCodeAt(0),a=0);;){let l=r;if(wi(r))if(a+1>>6,e[t++]=128|(i&63)>>>0):i<65536?(e[t++]=224|(i&61440)>>>12,e[t++]=128|(i&4032)>>>6,e[t++]=128|(i&63)>>>0):(e[t++]=240|(i&1835008)>>>18,e[t++]=128|(i&258048)>>>12,e[t++]=128|(i&4032)>>>6,e[t++]=128|(i&63)>>>0),t>=64&&(this._step(),t-=64,this._totalLen+=64,e[0]=e[64],e[1]=e[65],e[2]=e[66]),t}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),am(this._h0)+am(this._h1)+am(this._h2)+am(this._h3)+am(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,dR(this._buff,this._buffLen),this._buffLen>56&&(this._step(),dR(this._buff));const e=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(e/4294967296),!1),this._buffDV.setUint32(60,e%4294967296,!1),this._step()}_step(){const e=ww._bigBlock32,t=this._buffDV;for(let h=0;h<64;h+=4)e.setUint32(h,t.getUint32(h,!1),!1);for(let h=64;h<320;h+=4)e.setUint32(h,iS(e.getUint32(h-12,!1)^e.getUint32(h-32,!1)^e.getUint32(h-56,!1)^e.getUint32(h-64,!1),1),!1);let i=this._h0,n=this._h1,s=this._h2,r=this._h3,a=this._h4,l,c,d;for(let h=0;h<80;h++)h<20?(l=n&s|~n&r,c=1518500249):h<40?(l=n^s^r,c=1859775393):h<60?(l=n&s|n&r|s&r,c=2400959708):(l=n^s^r,c=3395469782),d=iS(i,5)+l+a+c+e.getUint32(h*4,!1)&4294967295,a=r,r=s,s=iS(n,30),n=i,i=d;this._h0=this._h0+i&4294967295,this._h1=this._h1+n&4294967295,this._h2=this._h2+s&4294967295,this._h3=this._h3+r&4294967295,this._h4=this._h4+a&4294967295}};ww._bigBlock32=new DataView(new ArrayBuffer(320));let Kx=ww;const{getWindow:fe,getWindows:MF,getWindowsCount:dV,getWindowId:mC,getWindowById:hR,onDidRegisterWindow:T0,onWillUnregisterWindow:hV,onDidUnregisterWindow:uV}=(function(){const o=new Map;nH(_t,1);const e={window:_t,disposables:new X};o.set(_t.vscodeWindowId,e);const t=new A,i=new A,n=new A;function s(r,a){return(typeof r=="number"?o.get(r):void 0)??(a?e:void 0)}return{onDidRegisterWindow:t.event,onWillUnregisterWindow:n.event,onDidUnregisterWindow:i.event,registerWindow(r){if(o.has(r.vscodeWindowId))return z.None;const a=new X,l={window:r,disposables:a.add(new X)};return o.set(r.vscodeWindowId,l),a.add(_e(()=>{o.delete(r.vscodeWindowId),i.fire(r)})),a.add(U(r,ee.BEFORE_UNLOAD,()=>{n.fire(r)})),t.fire(l),a},getWindows(){return o.values()},getWindowsCount(){return o.size},getWindowId(r){return r.vscodeWindowId},hasWindow(r){return o.has(r)},getWindowById:s,getWindow(r){const a=r;if(a?.ownerDocument?.defaultView)return a.ownerDocument.defaultView.window;const l=r;return l?.view?l.view.window:_t},getDocument(r){return fe(r).document}}})();function xn(o){for(;o.firstChild;)o.firstChild.remove()}class fV{constructor(e,t,i,n){this._node=e,this._type=t,this._handler=i,this._options=n||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}}function U(o,e,t,i){return new fV(o,e,t,i)}function RF(o,e){return function(t){return e(new ur(o,t))}}function gV(o){return function(e){return o(new Nt(e))}}const jt=function(e,t,i,n){let s=i;return t==="click"||t==="mousedown"||t==="contextmenu"?s=RF(fe(e),i):(t==="keydown"||t==="keypress"||t==="keyup")&&(s=gV(i)),U(e,t,s,n)},mV=function(e,t,i){const n=RF(fe(e),t);return pV(e,n,i)};function pV(o,e,t){return U(o,Tc&&KN.pointerEvents?ee.POINTER_DOWN:ee.MOUSE_DOWN,e,t)}function kb(o,e,t){return qm(o,e,t)}class nS extends yF{constructor(e,t){super(e,t)}}let pC,fs;class QN extends jN{constructor(e){super(),this.defaultTarget=e&&fe(e)}cancelAndSet(e,t,i){return super.cancelAndSet(e,t,i??this.defaultTarget)}}class sS{constructor(e,t=0){this._runner=e,this.priority=t,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(e){Ze(e)}}static sort(e,t){return t.priority-e.priority}}(function(){const o=new Map,e=new Map,t=new Map,i=new Map,n=s=>{t.set(s,!1);const r=o.get(s)??[];for(e.set(s,r),o.set(s,[]),i.set(s,!0);r.length>0;)r.sort(sS.sort),r.shift().execute();i.set(s,!1)};fs=(s,r,a=0)=>{const l=mC(s),c=new sS(r,a);let d=o.get(l);return d||(d=[],o.set(l,d)),d.push(c),t.get(l)||(t.set(l,!0),s.requestAnimationFrame(()=>n(l))),c},pC=(s,r,a)=>{const l=mC(s);if(i.get(l)){const c=new sS(r,a);let d=e.get(l);return d||(d=[],e.set(l,d)),d.push(c),c}else return fs(s,r,a)}})();function XN(o){return fe(o).getComputedStyle(o,null)}function Ah(o,e){const t=fe(o),i=t.document;if(o!==i.body)return new rt(o.clientWidth,o.clientHeight);if(Tc&&t?.visualViewport)return new rt(t.visualViewport.width,t.visualViewport.height);if(t?.innerWidth&&t.innerHeight)return new rt(t.innerWidth,t.innerHeight);if(i.body&&i.body.clientWidth&&i.body.clientHeight)return new rt(i.body.clientWidth,i.body.clientHeight);if(i.documentElement&&i.documentElement.clientWidth&&i.documentElement.clientHeight)return new rt(i.documentElement.clientWidth,i.documentElement.clientHeight);throw new Error("Unable to figure out browser width and height")}class Yt{static convertToPixels(e,t){return parseFloat(t)||0}static getDimension(e,t,i){const n=XN(e),s=n?n.getPropertyValue(t):"0";return Yt.convertToPixels(e,s)}static getBorderLeftWidth(e){return Yt.getDimension(e,"border-left-width","borderLeftWidth")}static getBorderRightWidth(e){return Yt.getDimension(e,"border-right-width","borderRightWidth")}static getBorderTopWidth(e){return Yt.getDimension(e,"border-top-width","borderTopWidth")}static getBorderBottomWidth(e){return Yt.getDimension(e,"border-bottom-width","borderBottomWidth")}static getPaddingLeft(e){return Yt.getDimension(e,"padding-left","paddingLeft")}static getPaddingRight(e){return Yt.getDimension(e,"padding-right","paddingRight")}static getPaddingTop(e){return Yt.getDimension(e,"padding-top","paddingTop")}static getPaddingBottom(e){return Yt.getDimension(e,"padding-bottom","paddingBottom")}static getMarginLeft(e){return Yt.getDimension(e,"margin-left","marginLeft")}static getMarginTop(e){return Yt.getDimension(e,"margin-top","marginTop")}static getMarginRight(e){return Yt.getDimension(e,"margin-right","marginRight")}static getMarginBottom(e){return Yt.getDimension(e,"margin-bottom","marginBottom")}}const Ad=class Ad{constructor(e,t){this.width=e,this.height=t}with(e=this.width,t=this.height){return e!==this.width||t!==this.height?new Ad(e,t):this}static is(e){return typeof e=="object"&&typeof e.height=="number"&&typeof e.width=="number"}static lift(e){return e instanceof Ad?e:new Ad(e.width,e.height)}static equals(e,t){return e===t?!0:!e||!t?!1:e.width===t.width&&e.height===t.height}};Ad.None=new Ad(0,0);let rt=Ad;function _V(o){let e=o.offsetParent,t=o.offsetTop,i=o.offsetLeft;for(;(o=o.parentNode)!==null&&o!==o.ownerDocument.body&&o!==o.ownerDocument.documentElement;){t-=o.scrollTop;const n=PF(o)?null:XN(o);n&&(i-=n.direction!=="rtl"?o.scrollLeft:-o.scrollLeft),o===e&&(i+=Yt.getBorderLeftWidth(o),t+=Yt.getBorderTopWidth(o),t+=o.offsetTop,i+=o.offsetLeft,e=o.offsetParent)}return{left:i,top:t}}function bV(o,e,t){typeof e=="number"&&(o.style.width=`${e}px`),typeof t=="number"&&(o.style.height=`${t}px`)}function gi(o){const e=o.getBoundingClientRect(),t=fe(o);return{left:e.left+t.scrollX,top:e.top+t.scrollY,width:e.width,height:e.height}}function AF(o){let e=o,t=1;do{const i=XN(e).zoom;i!=null&&i!=="1"&&(t*=i),e=e.parentElement}while(e!==null&&e!==e.ownerDocument.documentElement);return t}function qp(o){const e=Yt.getMarginLeft(o)+Yt.getMarginRight(o);return o.offsetWidth+e}function oS(o){const e=Yt.getBorderLeftWidth(o)+Yt.getBorderRightWidth(o),t=Yt.getPaddingLeft(o)+Yt.getPaddingRight(o);return o.offsetWidth-e-t}function CV(o){const e=Yt.getBorderTopWidth(o)+Yt.getBorderBottomWidth(o),t=Yt.getPaddingTop(o)+Yt.getPaddingBottom(o);return o.offsetHeight-e-t}function Hd(o){const e=Yt.getMarginTop(o)+Yt.getMarginBottom(o);return o.offsetHeight+e}function yi(o,e){return!!e?.contains(o)}function vV(o,e,t){for(;o&&o.nodeType===o.ELEMENT_NODE;){if(o.classList.contains(e))return o;if(t){if(typeof t=="string"){if(o.classList.contains(t))return null}else if(o===t)return null}o=o.parentNode}return null}function rS(o,e,t){return!!vV(o,e,t)}function PF(o){return o&&!!o.host&&!!o.mode}function _C(o){return!!ag(o)}function ag(o){for(;o.parentNode;){if(o===o.ownerDocument?.body)return null;o=o.parentNode}return PF(o)?o:null}function Xi(){let o=JN().activeElement;for(;o?.shadowRoot;)o=o.shadowRoot.activeElement;return o}function M0(o){return Xi()===o}function OF(o){return yi(Xi(),o)}function JN(){return dV()<=1?_t.document:Array.from(MF()).map(({window:e})=>e.document).find(e=>e.hasFocus())??_t.document}function km(){return JN().defaultView?.window??_t}const eT=new Map;function wV(){return new yV}class yV{constructor(){this._currentCssStyle="",this._styleSheet=void 0}setStyle(e){e!==this._currentCssStyle&&(this._currentCssStyle=e,this._styleSheet?this._styleSheet.innerText=e:this._styleSheet=Vs(_t.document.head,t=>t.innerText=e))}dispose(){this._styleSheet&&(this._styleSheet.remove(),this._styleSheet=void 0)}}function Vs(o=_t.document.head,e,t){const i=document.createElement("style");if(i.type="text/css",i.media="screen",e?.(i),o.appendChild(i),t&&t.add(_e(()=>i.remove())),o===_t.document.head){const n=new Set;eT.set(i,n);for(const{window:s,disposables:r}of MF()){if(s===_t)continue;const a=r.add(SV(i,n,s));t?.add(a)}}return i}function SV(o,e,t){const i=new X,n=o.cloneNode(!0);t.document.head.appendChild(n),i.add(_e(()=>n.remove()));for(const s of BF(o))n.sheet?.insertRule(s.cssText,n.sheet?.cssRules.length);return i.add(LV.observe(o,i,{childList:!0})(()=>{n.textContent=o.textContent})),e.add(n),i.add(_e(()=>e.delete(n))),i}const LV=new class{constructor(){this.mutationObservers=new Map}observe(o,e,t){let i=this.mutationObservers.get(o);i||(i=new Map,this.mutationObservers.set(o,i));const n=ZN(t);let s=i.get(n);if(s)s.users+=1;else{const r=new A,a=new MutationObserver(c=>r.fire(c));a.observe(o,t);const l=s={users:1,observer:a,onDidMutate:r.event};e.add(_e(()=>{l.users-=1,l.users===0&&(r.dispose(),a.disconnect(),i?.delete(n),i?.size===0&&this.mutationObservers.delete(o))})),i.set(n,s)}return s.onDidMutate}};let aS=null;function FF(){return aS||(aS=Vs()),aS}function BF(o){return o?.sheet?.rules?o.sheet.rules:o?.sheet?.cssRules?o.sheet.cssRules:[]}function bC(o,e,t=FF()){if(!(!t||!e)){t.sheet?.insertRule(`${o} {${e}}`,0);for(const i of eT.get(t)??[])bC(o,e,i)}}function jx(o,e=FF()){if(!e)return;const t=BF(e),i=[];for(let n=0;n=0;n--)e.sheet?.deleteRule(i[n]);for(const n of eT.get(e)??[])jx(o,n)}function xV(o){return typeof o.selectorText=="string"}function Ei(o){return o instanceof HTMLElement||o instanceof fe(o).HTMLElement}function uR(o){return o instanceof HTMLAnchorElement||o instanceof fe(o).HTMLAnchorElement}function kV(o){return o instanceof SVGElement||o instanceof fe(o).SVGElement}function tT(o){return o instanceof MouseEvent||o instanceof fe(o).MouseEvent}function Qa(o){return o instanceof KeyboardEvent||o instanceof fe(o).KeyboardEvent}const ee={CLICK:"click",AUXCLICK:"auxclick",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",POINTER_LEAVE:"pointerleave",CONTEXT_MENU:"contextmenu",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",CHANGE:"change",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",DRAG_START:"dragstart",DRAG:"drag",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend"};function DV(o){const e=o;return!!(e&&typeof e.preventDefault=="function"&&typeof e.stopPropagation=="function")}const je={stop:(o,e)=>(o.preventDefault(),e&&o.stopPropagation(),o)};function IV(o){const e=[];for(let t=0;o&&o.nodeType===o.ELEMENT_NODE;t++)e[t]=o.scrollTop,o=o.parentNode;return e}function EV(o,e){for(let t=0;o&&o.nodeType===o.ELEMENT_NODE;t++)o.scrollTop!==e[t]&&(o.scrollTop=e[t]),o=o.parentNode}class CC extends z{static hasFocusWithin(e){if(Ei(e)){const t=ag(e),i=t?t.activeElement:e.ownerDocument.activeElement;return yi(i,e)}else{const t=e;return yi(t.document.activeElement,t.document)}}constructor(e){super(),this._onDidFocus=this._register(new A),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new A),this.onDidBlur=this._onDidBlur.event;let t=CC.hasFocusWithin(e),i=!1;const n=()=>{i=!1,t||(t=!0,this._onDidFocus.fire())},s=()=>{t&&(i=!0,(Ei(e)?fe(e):e).setTimeout(()=>{i&&(i=!1,t=!1,this._onDidBlur.fire())},0))};this._refreshStateHandler=()=>{CC.hasFocusWithin(e)!==t&&(t?s():n())},this._register(U(e,ee.FOCUS,n,!0)),this._register(U(e,ee.BLUR,s,!0)),Ei(e)&&(this._register(U(e,ee.FOCUS_IN,()=>this._refreshStateHandler())),this._register(U(e,ee.FOCUS_OUT,()=>this._refreshStateHandler())))}}function Ph(o){return new CC(o)}function NV(o,e){return o.after(e),e}function Z(o,...e){if(o.append(...e),e.length===1&&typeof e[0]!="string")return e[0]}function iT(o,e){return o.insertBefore(e,o.firstChild),e}function un(o,...e){o.innerText="",Z(o,...e)}const TV=/([\w\-]+)?(#([\w\-]+))?((\.([\w\-]+))*)/;var Gp;(function(o){o.HTML="http://www.w3.org/1999/xhtml",o.SVG="http://www.w3.org/2000/svg"})(Gp||(Gp={}));function WF(o,e,t,...i){const n=TV.exec(e);if(!n)throw new Error("Bad use of emmet");const s=n[1]||"div";let r;return o!==Gp.HTML?r=document.createElementNS(o,s):r=document.createElement(s),n[3]&&(r.id=n[3]),n[4]&&(r.className=n[4].replace(/\./g," ").trim()),t&&Object.entries(t).forEach(([a,l])=>{typeof l>"u"||(/^on\w+$/.test(a)?r[a]=l:a==="selected"?l&&r.setAttribute(a,"true"):r.setAttribute(a,l))}),r.append(...i),r}function ce(o,e,...t){return WF(Gp.HTML,o,e,...t)}ce.SVG=function(o,e,...t){return WF(Gp.SVG,o,e,...t)};function MV(o,...e){o?ns(...e):Cn(...e)}function ns(...o){for(const e of o)e.style.display="",e.removeAttribute("aria-hidden")}function Cn(...o){for(const e of o)e.style.display="none",e.setAttribute("aria-hidden","true")}function fR(o,e){const t=o.devicePixelRatio*e;return Math.max(1,Math.floor(t))/o.devicePixelRatio}function HF(o){_t.open(o,"_blank","noopener")}function RV(o,e){const t=()=>{e(),i=fs(o,t)};let i=fs(o,t);return _e(()=>i.dispose())}TF.setPreferredWebSchema(/^https:/.test(_t.location.href)?"https":"http");function Dl(o){return o?`url('${E0.uriToBrowserUri(o).toString(!0).replace(/'/g,"%27")}')`:"url('')"}function lS(o){return`'${o.replace(/'/g,"%27")}'`}function vl(o,e){if(o!==void 0){const t=o.match(/^\s*var\((.+)\)$/);if(t){const i=t[1].split(",",2);return i.length===2&&(e=vl(i[1].trim(),e)),`var(${i[0]}, ${e})`}return o}return e}function AV(o,e=!1){const t=document.createElement("a");return EF("afterSanitizeAttributes",i=>{for(const n of["href","src"])if(i.hasAttribute(n)){const s=i.getAttribute(n);if(n==="href"&&s.startsWith("#"))continue;if(t.href=s,!o.includes(t.protocol.replace(/:$/,""))){if(e&&n==="src"&&t.href.startsWith("data:"))continue;i.removeAttribute(n)}}}),_e(()=>{NF("afterSanitizeAttributes")})}const PV=Object.freeze(["a","abbr","b","bdo","blockquote","br","caption","cite","code","col","colgroup","dd","del","details","dfn","div","dl","dt","em","figcaption","figure","h1","h2","h3","h4","h5","h6","hr","i","img","input","ins","kbd","label","li","mark","ol","p","pre","q","rp","rt","ruby","samp","small","small","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","time","tr","tt","u","ul","var","video","wbr"]);class rl extends A{constructor(){super(),this._subscriptions=new X,this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1},this._subscriptions.add(J.runAndSubscribe(T0,({window:e,disposables:t})=>this.registerListeners(e,t),{window:_t,disposables:this._subscriptions}))}registerListeners(e,t){t.add(U(e,"keydown",i=>{if(i.defaultPrevented)return;const n=new Nt(i);if(!(n.keyCode===6&&i.repeat)){if(i.altKey&&!this._keyStatus.altKey)this._keyStatus.lastKeyPressed="alt";else if(i.ctrlKey&&!this._keyStatus.ctrlKey)this._keyStatus.lastKeyPressed="ctrl";else if(i.metaKey&&!this._keyStatus.metaKey)this._keyStatus.lastKeyPressed="meta";else if(i.shiftKey&&!this._keyStatus.shiftKey)this._keyStatus.lastKeyPressed="shift";else if(n.keyCode!==6)this._keyStatus.lastKeyPressed=void 0;else return;this._keyStatus.altKey=i.altKey,this._keyStatus.ctrlKey=i.ctrlKey,this._keyStatus.metaKey=i.metaKey,this._keyStatus.shiftKey=i.shiftKey,this._keyStatus.lastKeyPressed&&(this._keyStatus.event=i,this.fire(this._keyStatus))}},!0)),t.add(U(e,"keyup",i=>{i.defaultPrevented||(!i.altKey&&this._keyStatus.altKey?this._keyStatus.lastKeyReleased="alt":!i.ctrlKey&&this._keyStatus.ctrlKey?this._keyStatus.lastKeyReleased="ctrl":!i.metaKey&&this._keyStatus.metaKey?this._keyStatus.lastKeyReleased="meta":!i.shiftKey&&this._keyStatus.shiftKey?this._keyStatus.lastKeyReleased="shift":this._keyStatus.lastKeyReleased=void 0,this._keyStatus.lastKeyPressed!==this._keyStatus.lastKeyReleased&&(this._keyStatus.lastKeyPressed=void 0),this._keyStatus.altKey=i.altKey,this._keyStatus.ctrlKey=i.ctrlKey,this._keyStatus.metaKey=i.metaKey,this._keyStatus.shiftKey=i.shiftKey,this._keyStatus.lastKeyReleased&&(this._keyStatus.event=i,this.fire(this._keyStatus)))},!0)),t.add(U(e.document.body,"mousedown",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),t.add(U(e.document.body,"mouseup",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),t.add(U(e.document.body,"mousemove",i=>{i.buttons&&(this._keyStatus.lastKeyPressed=void 0)},!0)),t.add(U(e,"blur",()=>{this.resetKeyStatus()}))}get keyStatus(){return this._keyStatus}resetKeyStatus(){this.doResetKeyStatus(),this.fire(this._keyStatus)}doResetKeyStatus(){this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1}}static getInstance(){return rl.instance||(rl.instance=new rl),rl.instance}dispose(){super.dispose(),this._subscriptions.dispose()}}class OV extends z{constructor(e,t){super(),this.element=e,this.callbacks=t,this.counter=0,this.dragStartTime=0,this.registerListeners()}registerListeners(){this.callbacks.onDragStart&&this._register(U(this.element,ee.DRAG_START,e=>{this.callbacks.onDragStart?.(e)})),this.callbacks.onDrag&&this._register(U(this.element,ee.DRAG,e=>{this.callbacks.onDrag?.(e)})),this._register(U(this.element,ee.DRAG_ENTER,e=>{this.counter++,this.dragStartTime=e.timeStamp,this.callbacks.onDragEnter?.(e)})),this._register(U(this.element,ee.DRAG_OVER,e=>{e.preventDefault(),this.callbacks.onDragOver?.(e,e.timeStamp-this.dragStartTime)})),this._register(U(this.element,ee.DRAG_LEAVE,e=>{this.counter--,this.counter===0&&(this.dragStartTime=0,this.callbacks.onDragLeave?.(e))})),this._register(U(this.element,ee.DRAG_END,e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDragEnd?.(e)})),this._register(U(this.element,ee.DROP,e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDrop?.(e)}))}}const FV=/(?[\w\-]+)?(?:#(?[\w\-]+))?(?(?:\.(?:[\w\-]+))*)(?:@(?(?:[\w\_])+))?/;function tt(o,...e){let t,i;Array.isArray(e[0])?(t={},i=e[0]):(t=e[0]||{},i=e[1]);const n=FV.exec(o);if(!n||!n.groups)throw new Error("Bad use of h");const s=n.groups.tag||"div",r=document.createElement(s);n.groups.id&&(r.id=n.groups.id);const a=[];if(n.groups.class)for(const c of n.groups.class.split("."))c!==""&&a.push(c);if(t.className!==void 0)for(const c of t.className.split("."))c!==""&&a.push(c);a.length>0&&(r.className=a.join(" "));const l={};if(n.groups.name&&(l[n.groups.name]=r),i)for(const c of i)Ei(c)?r.appendChild(c):typeof c=="string"?r.append(c):"root"in c&&(Object.assign(l,c),r.appendChild(c.root));for(const[c,d]of Object.entries(t))if(c!=="className")if(c==="style")for(const[h,u]of Object.entries(d))r.style.setProperty(gR(h),typeof u=="number"?u+"px":""+u);else c==="tabIndex"?r.tabIndex=d:r.setAttribute(gR(c),d.toString());return l.root=r,l}function gR(o){return o.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}class BV extends z{constructor(e){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._listener=()=>this._handleChange(e,!0),this._mediaQueryList=null,this._handleChange(e,!1)}_handleChange(e,t){this._mediaQueryList?.removeEventListener("change",this._listener),this._mediaQueryList=e.matchMedia(`(resolution: ${e.devicePixelRatio}dppx)`),this._mediaQueryList.addEventListener("change",this._listener),t&&this._onDidChange.fire()}}class WV extends z{get value(){return this._value}constructor(e){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._value=this._getPixelRatio(e);const t=this._register(new BV(e));this._register(t.onDidChange(()=>{this._value=this._getPixelRatio(e),this._onDidChange.fire(this._value)}))}_getPixelRatio(e){const t=document.createElement("canvas").getContext("2d"),i=e.devicePixelRatio||1,n=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return i/n}}class HV{constructor(){this.mapWindowIdToPixelRatioMonitor=new Map}_getOrCreatePixelRatioMonitor(e){const t=mC(e);let i=this.mapWindowIdToPixelRatioMonitor.get(t);return i||(i=new WV(e),this.mapWindowIdToPixelRatioMonitor.set(t,i),J.once(uV)(({vscodeWindowId:n})=>{n===t&&(i?.dispose(),this.mapWindowIdToPixelRatioMonitor.delete(t))})),i}getInstance(e){return this._getOrCreatePixelRatioMonitor(e)}}const Zp=new HV;class VF{constructor(e){this.domNode=e,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingLeft="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(e){const t=Ko(e);this._maxWidth!==t&&(this._maxWidth=t,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){const t=Ko(e);this._width!==t&&(this._width=t,this.domNode.style.width=this._width)}setHeight(e){const t=Ko(e);this._height!==t&&(this._height=t,this.domNode.style.height=this._height)}setTop(e){const t=Ko(e);this._top!==t&&(this._top=t,this.domNode.style.top=this._top)}setLeft(e){const t=Ko(e);this._left!==t&&(this._left=t,this.domNode.style.left=this._left)}setBottom(e){const t=Ko(e);this._bottom!==t&&(this._bottom=t,this.domNode.style.bottom=this._bottom)}setRight(e){const t=Ko(e);this._right!==t&&(this._right=t,this.domNode.style.right=this._right)}setPaddingLeft(e){const t=Ko(e);this._paddingLeft!==t&&(this._paddingLeft=t,this.domNode.style.paddingLeft=this._paddingLeft)}setFontFamily(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(e){const t=Ko(e);this._fontSize!==t&&(this._fontSize=t,this.domNode.style.fontSize=this._fontSize)}setFontStyle(e){this._fontStyle!==e&&(this._fontStyle=e,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(e){this._fontVariationSettings!==e&&(this._fontVariationSettings=e,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(e){this._textDecoration!==e&&(this._textDecoration=e,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(e){const t=Ko(e);this._lineHeight!==t&&(this._lineHeight=t,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){const t=Ko(e);this._letterSpacing!==t&&(this._letterSpacing=t,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)}toggleClassName(e,t){this.domNode.classList.toggle(e,t),this._className=this.domNode.className}setDisplay(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)}setPosition(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)}setColor(e){this._color!==e&&(this._color=e,this.domNode.style.color=this._color)}setBackgroundColor(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(e){this._boxShadow!==e&&(this._boxShadow=e,this.domNode.style.boxShadow=e)}setContain(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)}setAttribute(e,t){this.domNode.setAttribute(e,t)}removeAttribute(e){this.domNode.removeAttribute(e)}appendChild(e){this.domNode.appendChild(e.domNode)}removeChild(e){this.domNode.removeChild(e.domNode)}}function Ko(o){return typeof o=="number"?`${o}px`:o}function ot(o){return new VF(o)}function qi(o,e){o instanceof VF?(o.setFontFamily(e.getMassagedFontFamily()),o.setFontWeight(e.fontWeight),o.setFontSize(e.fontSize),o.setFontFeatureSettings(e.fontFeatureSettings),o.setFontVariationSettings(e.fontVariationSettings),o.setLineHeight(e.lineHeight),o.setLetterSpacing(e.letterSpacing)):(o.style.fontFamily=e.getMassagedFontFamily(),o.style.fontWeight=e.fontWeight,o.style.fontSize=e.fontSize+"px",o.style.fontFeatureSettings=e.fontFeatureSettings,o.style.fontVariationSettings=e.fontVariationSettings,o.style.lineHeight=e.lineHeight+"px",o.style.letterSpacing=e.letterSpacing+"px")}class VV{constructor(e,t){this.chr=e,this.type=t,this.width=0}fulfill(e){this.width=e}}class nT{constructor(e,t){this._bareFontInfo=e,this._requests=t,this._container=null,this._testElements=null}read(e){this._createDomElements(),e.document.body.appendChild(this._container),this._readFromDomElements(),this._container?.remove(),this._container=null,this._testElements=null}_createDomElements(){const e=document.createElement("div");e.style.position="absolute",e.style.top="-50000px",e.style.width="50000px";const t=document.createElement("div");qi(t,this._bareFontInfo),e.appendChild(t);const i=document.createElement("div");qi(i,this._bareFontInfo),i.style.fontWeight="bold",e.appendChild(i);const n=document.createElement("div");qi(n,this._bareFontInfo),n.style.fontStyle="italic",e.appendChild(n);const s=[];for(const r of this._requests){let a;r.type===0&&(a=t),r.type===2&&(a=i),r.type===1&&(a=n),a.appendChild(document.createElement("br"));const l=document.createElement("span");nT._render(l,r),a.appendChild(l),s.push(l)}this._container=e,this._testElements=s}static _render(e,t){if(t.chr===" "){let i=" ";for(let n=0;n<8;n++)i+=i;e.innerText=i}else{let i=t.chr;for(let n=0;n<8;n++)i+=i;e.textContent=i}}_readFromDomElements(){for(let e=0,t=this._requests.length;e{this._evictUntrustedReadingsTimeout=-1,this._evictUntrustedReadings(e)},5e3))}_evictUntrustedReadings(e){const t=this._ensureCache(e),i=t.getValues();let n=!1;for(const s of i)s.isTrusted||(n=!0,t.remove(s));n&&this._onDidChange.fire()}readFontInfo(e,t){const i=this._ensureCache(e);if(!i.has(t)){let n=this._actualReadFontInfo(e,t);(n.typicalHalfwidthCharacterWidth<=2||n.typicalFullwidthCharacterWidth<=2||n.spaceWidth<=2||n.maxDigitWidth<=2)&&(n=new qx({pixelRatio:Zp.getInstance(e).value,fontFamily:n.fontFamily,fontWeight:n.fontWeight,fontSize:n.fontSize,fontFeatureSettings:n.fontFeatureSettings,fontVariationSettings:n.fontVariationSettings,lineHeight:n.lineHeight,letterSpacing:n.letterSpacing,isMonospace:n.isMonospace,typicalHalfwidthCharacterWidth:Math.max(n.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(n.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:n.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(n.spaceWidth,5),middotWidth:Math.max(n.middotWidth,5),wsmiddotWidth:Math.max(n.wsmiddotWidth,5),maxDigitWidth:Math.max(n.maxDigitWidth,5)},!1)),this._writeToCache(e,t,n)}return i.get(t)}_createRequest(e,t,i,n){const s=new VV(e,t);return i.push(s),n?.push(s),s}_actualReadFontInfo(e,t){const i=[],n=[],s=this._createRequest("n",0,i,n),r=this._createRequest("m",0,i,null),a=this._createRequest(" ",0,i,n),l=this._createRequest("0",0,i,n),c=this._createRequest("1",0,i,n),d=this._createRequest("2",0,i,n),h=this._createRequest("3",0,i,n),u=this._createRequest("4",0,i,n),f=this._createRequest("5",0,i,n),g=this._createRequest("6",0,i,n),p=this._createRequest("7",0,i,n),_=this._createRequest("8",0,i,n),b=this._createRequest("9",0,i,n),C=this._createRequest("→",0,i,n),w=this._createRequest("→",0,i,null),v=this._createRequest("·",0,i,n),y=this._createRequest("⸱",0,i,null),x="|/-_ilm%";for(let F=0,W=x.length;F.001){E=!1;break}}let H=!0;return E&&w.width!==N&&(H=!1),w.width>C.width&&(H=!1),new qx({pixelRatio:Zp.getInstance(e).value,fontFamily:t.fontFamily,fontWeight:t.fontWeight,fontSize:t.fontSize,fontFeatureSettings:t.fontFeatureSettings,fontVariationSettings:t.fontVariationSettings,lineHeight:t.lineHeight,letterSpacing:t.letterSpacing,isMonospace:E,typicalHalfwidthCharacterWidth:s.width,typicalFullwidthCharacterWidth:r.width,canUseHalfwidthRightwardsArrow:H,spaceWidth:a.width,middotWidth:v.width,wsmiddotWidth:y.width,maxDigitWidth:L},!0)}}class jV{constructor(){this._keys=Object.create(null),this._values=Object.create(null)}has(e){const t=e.getId();return!!this._values[t]}get(e){const t=e.getId();return this._values[t]}put(e,t){const i=e.getId();this._keys[i]=e,this._values[i]=t}remove(e){const t=e.getId();delete this._keys[t],delete this._values[t]}getValues(){return Object.keys(this._keys).map(e=>this._values[e])}}const Gx=new KV;var fr;(function(o){o.serviceIds=new Map,o.DI_TARGET="$di$target",o.DI_DEPENDENCIES="$di$dependencies";function e(t){return t[o.DI_DEPENDENCIES]||[]}o.getServiceDependencies=e})(fr||(fr={}));const ke=He("instantiationService");function qV(o,e,t){e[fr.DI_TARGET]===e?e[fr.DI_DEPENDENCIES].push({id:o,index:t}):(e[fr.DI_DEPENDENCIES]=[{id:o,index:t}],e[fr.DI_TARGET]=e)}function He(o){if(fr.serviceIds.has(o))return fr.serviceIds.get(o);const e=function(t,i,n){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");qV(e,t,n)};return e.toString=()=>o,fr.serviceIds.set(o,e),e}const Pt=He("codeEditorService"),Fi=He("modelService"),fo=He("textModelService");class Fs extends z{constructor(e,t="",i="",n=!0,s){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._enabled=!0,this._id=e,this._label=t,this._cssClass=i,this._enabled=n,this._actionCallback=s}get id(){return this._id}get label(){return this._label}set label(e){this._setLabel(e)}_setLabel(e){this._label!==e&&(this._label=e,this._onDidChange.fire({label:e}))}get tooltip(){return this._tooltip||""}set tooltip(e){this._setTooltip(e)}_setTooltip(e){this._tooltip!==e&&(this._tooltip=e,this._onDidChange.fire({tooltip:e}))}get class(){return this._cssClass}set class(e){this._setClass(e)}_setClass(e){this._cssClass!==e&&(this._cssClass=e,this._onDidChange.fire({class:e}))}get enabled(){return this._enabled}set enabled(e){this._setEnabled(e)}_setEnabled(e){this._enabled!==e&&(this._enabled=e,this._onDidChange.fire({enabled:e}))}get checked(){return this._checked}set checked(e){this._setChecked(e)}_setChecked(e){this._checked!==e&&(this._checked=e,this._onDidChange.fire({checked:e}))}async run(e,t){this._actionCallback&&await this._actionCallback(e)}}class Oh extends z{constructor(){super(...arguments),this._onWillRun=this._register(new A),this.onWillRun=this._onWillRun.event,this._onDidRun=this._register(new A),this.onDidRun=this._onDidRun.event}async run(e,t){if(!e.enabled)return;this._onWillRun.fire({action:e});let i;try{await this.runAction(e,t)}catch(n){i=n}this._onDidRun.fire({action:e,error:i})}async runAction(e,t){await e.run(t)}}const xp=class xp{constructor(){this.id=xp.ID,this.label="",this.tooltip="",this.class="separator",this.enabled=!1,this.checked=!1}static join(...e){let t=[];for(const i of e)i.length&&(t.length?t=[...t,new xp,...i]:t=i);return t}async run(){}};xp.ID="vs.actions.separator";let Gi=xp;class R0{get actions(){return this._actions}constructor(e,t,i,n){this.tooltip="",this.enabled=!0,this.checked=void 0,this.id=e,this.label=t,this.class=n,this._actions=i}async run(){}}const yw=class yw extends Fs{constructor(){super(yw.ID,m("submenu.empty","(empty)"),void 0,!1)}};yw.ID="vs.actions.empty";let Zx=yw;function Mf(o){return{id:o.id,label:o.label,tooltip:o.tooltip??o.label,class:o.class,enabled:o.enabled??!0,checked:o.checked,run:async(...e)=>o.run(...e)}}var Yx;(function(o){function e(t){return t&&typeof t=="object"&&typeof t.id=="string"}o.isThemeColor=e})(Yx||(Yx={}));var Ee;(function(o){o.iconNameSegment="[A-Za-z0-9]+",o.iconNameExpression="[A-Za-z0-9-]+",o.iconModifierExpression="~[A-Za-z]+",o.iconNameCharacter="[A-Za-z0-9~-]";const e=new RegExp(`^(${o.iconNameExpression})(${o.iconModifierExpression})?$`);function t(u){const f=e.exec(u.id);if(!f)return t(ie.error);const[,g,p]=f,_=["codicon","codicon-"+g];return p&&_.push("codicon-modifier-"+p.substring(1)),_}o.asClassNameArray=t;function i(u){return t(u).join(" ")}o.asClassName=i;function n(u){return"."+t(u).join(".")}o.asCSSSelector=n;function s(u){return u&&typeof u=="object"&&typeof u.id=="string"&&(typeof u.color>"u"||Yx.isThemeColor(u.color))}o.isThemeIcon=s;const r=new RegExp(`^\\$\\((${o.iconNameExpression}(?:${o.iconModifierExpression})?)\\)$`);function a(u){const f=r.exec(u);if(!f)return;const[,g]=f;return{id:g}}o.fromString=a;function l(u){return{id:u}}o.fromId=l;function c(u,f){let g=u.id;const p=g.lastIndexOf("~");return p!==-1&&(g=g.substring(0,p)),f&&(g=`${g}~${f}`),{id:g}}o.modify=c;function d(u){const f=u.id.lastIndexOf("~");if(f!==-1)return u.id.substring(f+1)}o.getModifier=d;function h(u,f){return u.id===f.id&&u.color?.id===f.color?.id}o.isEqual=h})(Ee||(Ee={}));const hi=He("commandService"),bt=new class{constructor(){this._commands=new Map,this._onDidRegisterCommand=new A,this.onDidRegisterCommand=this._onDidRegisterCommand.event}registerCommand(o,e){if(!o)throw new Error("invalid command");if(typeof o=="string"){if(!e)throw new Error("invalid command");return this.registerCommand({id:o,handler:e})}if(o.metadata&&Array.isArray(o.metadata.args)){const r=[];for(const l of o.metadata.args)r.push(l.constraint);const a=o.handler;o.handler=function(l,...c){return a6(c,r),a(l,...c)}}const{id:t}=o;let i=this._commands.get(t);i||(i=new yn,this._commands.set(t,i));const n=i.unshift(o),s=_e(()=>{n(),this._commands.get(t)?.isEmpty()&&this._commands.delete(t)});return this._onDidRegisterCommand.fire(t),s}registerCommandAlias(o,e){return bt.registerCommand(o,(t,...i)=>t.get(hi).executeCommand(e,...i))}getCommand(o){const e=this._commands.get(o);if(!(!e||e.isEmpty()))return st.first(e)}getCommands(){const o=new Map;for(const e of this._commands.keys()){const t=this.getCommand(e);t&&o.set(e,t)}return o}};bt.registerCommand("noop",()=>{});function dS(...o){switch(o.length){case 1:return m("contextkey.scanner.hint.didYouMean1","Did you mean {0}?",o[0]);case 2:return m("contextkey.scanner.hint.didYouMean2","Did you mean {0} or {1}?",o[0],o[1]);case 3:return m("contextkey.scanner.hint.didYouMean3","Did you mean {0}, {1} or {2}?",o[0],o[1],o[2]);default:return}}const GV=m("contextkey.scanner.hint.didYouForgetToOpenOrCloseQuote","Did you forget to open or close the quote?"),ZV=m("contextkey.scanner.hint.didYouForgetToEscapeSlash","Did you forget to escape the '/' (slash) character? Put two backslashes before it to escape, e.g., '\\\\/'.");var fl;let lm=(fl=class{constructor(){this._input="",this._start=0,this._current=0,this._tokens=[],this._errors=[],this.stringRe=/[a-zA-Z0-9_<>\-\./\\:\*\?\+\[\]\^,#@;"%\$\p{L}-]+/uy}static getLexeme(e){switch(e.type){case 0:return"(";case 1:return")";case 2:return"!";case 3:return e.isTripleEq?"===":"==";case 4:return e.isTripleEq?"!==":"!=";case 5:return"<";case 6:return"<=";case 7:return">=";case 8:return">=";case 9:return"=~";case 10:return e.lexeme;case 11:return"true";case 12:return"false";case 13:return"in";case 14:return"not";case 15:return"&&";case 16:return"||";case 17:return e.lexeme;case 18:return e.lexeme;case 19:return e.lexeme;case 20:return"EOF";default:throw TN(`unhandled token type: ${JSON.stringify(e)}; have you forgotten to add a case?`)}}reset(e){return this._input=e,this._start=0,this._current=0,this._tokens=[],this._errors=[],this}scan(){for(;!this._isAtEnd();)switch(this._start=this._current,this._advance()){case 40:this._addToken(0);break;case 41:this._addToken(1);break;case 33:if(this._match(61)){const t=this._match(61);this._tokens.push({type:4,offset:this._start,isTripleEq:t})}else this._addToken(2);break;case 39:this._quotedString();break;case 47:this._regex();break;case 61:if(this._match(61)){const t=this._match(61);this._tokens.push({type:3,offset:this._start,isTripleEq:t})}else this._match(126)?this._addToken(9):this._error(dS("==","=~"));break;case 60:this._addToken(this._match(61)?6:5);break;case 62:this._addToken(this._match(61)?8:7);break;case 38:this._match(38)?this._addToken(15):this._error(dS("&&"));break;case 124:this._match(124)?this._addToken(16):this._error(dS("||"));break;case 32:case 13:case 9:case 10:case 160:break;default:this._string()}return this._start=this._current,this._addToken(20),Array.from(this._tokens)}_match(e){return this._isAtEnd()||this._input.charCodeAt(this._current)!==e?!1:(this._current++,!0)}_advance(){return this._input.charCodeAt(this._current++)}_peek(){return this._isAtEnd()?0:this._input.charCodeAt(this._current)}_addToken(e){this._tokens.push({type:e,offset:this._start})}_error(e){const t=this._start,i=this._input.substring(this._start,this._current),n={type:19,offset:this._start,lexeme:i};this._errors.push({offset:t,lexeme:i,additionalInfo:e}),this._tokens.push(n)}_string(){this.stringRe.lastIndex=this._start;const e=this.stringRe.exec(this._input);if(e){this._current=this._start+e[0].length;const t=this._input.substring(this._start,this._current),i=fl._keywords.get(t);i?this._addToken(i):this._tokens.push({type:17,lexeme:t,offset:this._start})}}_quotedString(){for(;this._peek()!==39&&!this._isAtEnd();)this._advance();if(this._isAtEnd()){this._error(GV);return}this._advance(),this._tokens.push({type:18,lexeme:this._input.substring(this._start+1,this._current-1),offset:this._start+1})}_regex(){let e=this._current,t=!1,i=!1;for(;;){if(e>=this._input.length){this._current=e,this._error(ZV);return}const s=this._input.charCodeAt(e);if(t)t=!1;else if(s===47&&!i){e++;break}else s===91?i=!0:s===92?t=!0:s===93&&(i=!1);e++}for(;e=this._input.length}},fl._regexFlags=new Set(["i","g","s","m","y","u"].map(e=>e.charCodeAt(0))),fl._keywords=new Map([["not",14],["in",13],["false",12],["true",11]]),fl);const Ji=new Map;Ji.set("false",!1);Ji.set("true",!0);Ji.set("isMac",Ue);Ji.set("isLinux",Un);Ji.set("isWindows",kn);Ji.set("isWeb",Og);Ji.set("isMacNative",Ue&&!Og);Ji.set("isEdge",y6);Ji.set("isFirefox",v6);Ji.set("isChrome",U5);Ji.set("isSafari",w6);const YV=Object.prototype.hasOwnProperty,QV={regexParsingWithErrorRecovery:!0},XV=m("contextkey.parser.error.emptyString","Empty context key expression"),JV=m("contextkey.parser.error.emptyString.hint","Did you forget to write an expression? You can also put 'false' or 'true' to always evaluate to false or true, respectively."),ez=m("contextkey.parser.error.noInAfterNot","'in' after 'not'."),mR=m("contextkey.parser.error.closingParenthesis","closing parenthesis ')'"),tz=m("contextkey.parser.error.unexpectedToken","Unexpected token"),iz=m("contextkey.parser.error.unexpectedToken.hint","Did you forget to put && or || before the token?"),nz=m("contextkey.parser.error.unexpectedEOF","Unexpected end of expression"),sz=m("contextkey.parser.error.unexpectedEOF.hint","Did you forget to put a context key?");var Xr;let oz=(Xr=class{constructor(e=QV){this._config=e,this._scanner=new lm,this._tokens=[],this._current=0,this._parsingErrors=[],this._flagsGYRe=/g|y/g}parse(e){if(e===""){this._parsingErrors.push({message:XV,offset:0,lexeme:"",additionalInfo:JV});return}this._tokens=this._scanner.reset(e).scan(),this._current=0,this._parsingErrors=[];try{const t=this._expr();if(!this._isAtEnd()){const i=this._peek(),n=i.type===17?iz:void 0;throw this._parsingErrors.push({message:tz,offset:i.offset,lexeme:lm.getLexeme(i),additionalInfo:n}),Xr._parseError}return t}catch(t){if(t!==Xr._parseError)throw t;return}}_expr(){return this._or()}_or(){const e=[this._and()];for(;this._matchOne(16);){const t=this._and();e.push(t)}return e.length===1?e[0]:re.or(...e)}_and(){const e=[this._term()];for(;this._matchOne(15);){const t=this._term();e.push(t)}return e.length===1?e[0]:re.and(...e)}_term(){if(this._matchOne(2)){const e=this._peek();switch(e.type){case 11:return this._advance(),En.INSTANCE;case 12:return this._advance(),Kn.INSTANCE;case 0:{this._advance();const t=this._expr();return this._consume(1,mR),t?.negate()}case 17:return this._advance(),tu.create(e.lexeme);default:throw this._errExpectedButGot("KEY | true | false | '(' expression ')'",e)}}return this._primary()}_primary(){const e=this._peek();switch(e.type){case 11:return this._advance(),re.true();case 12:return this._advance(),re.false();case 0:{this._advance();const t=this._expr();return this._consume(1,mR),t}case 17:{const t=e.lexeme;if(this._advance(),this._matchOne(9)){const n=this._peek();if(!this._config.regexParsingWithErrorRecovery){if(this._advance(),n.type!==10)throw this._errExpectedButGot("REGEX",n);const s=n.lexeme,r=s.lastIndexOf("/"),a=r===s.length-1?void 0:this._removeFlagsGY(s.substring(r+1));let l;try{l=new RegExp(s.substring(1,r),a)}catch{throw this._errExpectedButGot("REGEX",n)}return Yp.create(t,l)}switch(n.type){case 10:case 19:{const s=[n.lexeme];this._advance();let r=this._peek(),a=0;for(let u=0;u=0){const c=s.slice(a+1,l),d=s[l+1]==="i"?"i":"";try{r=new RegExp(c,d)}catch{throw this._errExpectedButGot("REGEX",n)}}}if(r===null)throw this._errExpectedButGot("REGEX",n);return Yp.create(t,r)}default:throw this._errExpectedButGot("REGEX",this._peek())}}if(this._matchOne(14)){this._consume(13,ez);const n=this._value();return re.notIn(t,n)}switch(this._peek().type){case 3:{this._advance();const n=this._value();if(this._previous().type===18)return re.equals(t,n);switch(n){case"true":return re.has(t);case"false":return re.not(t);default:return re.equals(t,n)}}case 4:{this._advance();const n=this._value();if(this._previous().type===18)return re.notEquals(t,n);switch(n){case"true":return re.not(t);case"false":return re.has(t);default:return re.notEquals(t,n)}}case 5:return this._advance(),H0.create(t,this._value());case 6:return this._advance(),V0.create(t,this._value());case 7:return this._advance(),B0.create(t,this._value());case 8:return this._advance(),W0.create(t,this._value());case 13:return this._advance(),re.in(t,this._value());default:return re.has(t)}}case 20:throw this._parsingErrors.push({message:nz,offset:e.offset,lexeme:"",additionalInfo:sz}),Xr._parseError;default:throw this._errExpectedButGot(`true | false | KEY + | KEY '=~' REGEX + | KEY ('==' | '!=' | '<' | '<=' | '>' | '>=' | 'in' | 'not' 'in') value`,this._peek())}}_value(){const e=this._peek();switch(e.type){case 17:case 18:return this._advance(),e.lexeme;case 11:return this._advance(),"true";case 12:return this._advance(),"false";case 13:return this._advance(),"in";default:return""}}_removeFlagsGY(e){return e.replaceAll(this._flagsGYRe,"")}_previous(){return this._tokens[this._current-1]}_matchOne(e){return this._check(e)?(this._advance(),!0):!1}_advance(){return this._isAtEnd()||this._current++,this._previous()}_consume(e,t){if(this._check(e))return this._advance();throw this._errExpectedButGot(t,this._peek())}_errExpectedButGot(e,t,i){const n=m("contextkey.parser.error.expectedButGot",`Expected: {0} +Received: '{1}'.`,e,lm.getLexeme(t)),s=t.offset,r=lm.getLexeme(t);return this._parsingErrors.push({message:n,offset:s,lexeme:r,additionalInfo:i}),Xr._parseError}_check(e){return this._peek().type===e}_peek(){return this._tokens[this._current]}_isAtEnd(){return this._peek().type===20}},Xr._parseError=new Error,Xr);const DM=class DM{static false(){return En.INSTANCE}static true(){return Kn.INSTANCE}static has(e){return eu.create(e)}static equals(e,t){return U_.create(e,t)}static notEquals(e,t){return O0.create(e,t)}static regex(e,t){return Yp.create(e,t)}static in(e,t){return A0.create(e,t)}static notIn(e,t){return P0.create(e,t)}static not(e){return tu.create(e)}static and(...e){return Vd.create(e,null,!0)}static or(...e){return tl.create(e,null,!0)}static deserialize(e){return e==null?void 0:this._parser.parse(e)}};DM._parser=new oz({regexParsingWithErrorRecovery:!1});let re=DM;function rz(o,e){const t=o?o.substituteConstants():void 0,i=e?e.substituteConstants():void 0;return!t&&!i?!0:!t||!i?!1:t.equals(i)}function Gm(o,e){return o.cmp(e)}const Sw=class Sw{constructor(){this.type=0}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!1}serialize(){return"false"}keys(){return[]}negate(){return Kn.INSTANCE}};Sw.INSTANCE=new Sw;let En=Sw;const Lw=class Lw{constructor(){this.type=1}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!0}serialize(){return"true"}keys(){return[]}negate(){return En.INSTANCE}};Lw.INSTANCE=new Lw;let Kn=Lw;class eu{static create(e,t=null){const i=Ji.get(e);return typeof i=="boolean"?i?Kn.INSTANCE:En.INSTANCE:new eu(e,t)}constructor(e,t){this.key=e,this.negated=t,this.type=2}cmp(e){return e.type!==this.type?this.type-e.type:UF(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=Ji.get(this.key);return typeof e=="boolean"?e?Kn.INSTANCE:En.INSTANCE:this}evaluate(e){return!!e.getValue(this.key)}serialize(){return this.key}keys(){return[this.key]}negate(){return this.negated||(this.negated=tu.create(this.key,this)),this.negated}}class U_{static create(e,t,i=null){if(typeof t=="boolean")return t?eu.create(e,i):tu.create(e,i);const n=Ji.get(e);return typeof n=="boolean"?t===(n?"true":"false")?Kn.INSTANCE:En.INSTANCE:new U_(e,t,i)}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=4}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){const e=Ji.get(this.key);if(typeof e=="boolean"){const t=e?"true":"false";return this.value===t?Kn.INSTANCE:En.INSTANCE}return this}evaluate(e){return e.getValue(this.key)==this.value}serialize(){return`${this.key} == '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=O0.create(this.key,this.value,this)),this.negated}}class A0{static create(e,t){return new A0(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=10,this.negated=null}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.valueKey,e.key,e.valueKey)}equals(e){return e.type===this.type?this.key===e.key&&this.valueKey===e.valueKey:!1}substituteConstants(){return this}evaluate(e){const t=e.getValue(this.valueKey),i=e.getValue(this.key);return Array.isArray(t)?t.includes(i):typeof i=="string"&&typeof t=="object"&&t!==null?YV.call(t,i):!1}serialize(){return`${this.key} in '${this.valueKey}'`}keys(){return[this.key,this.valueKey]}negate(){return this.negated||(this.negated=P0.create(this.key,this.valueKey)),this.negated}}class P0{static create(e,t){return new P0(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=11,this._negated=A0.create(e,t)}cmp(e){return e.type!==this.type?this.type-e.type:this._negated.cmp(e._negated)}equals(e){return e.type===this.type?this._negated.equals(e._negated):!1}substituteConstants(){return this}evaluate(e){return!this._negated.evaluate(e)}serialize(){return`${this.key} not in '${this.valueKey}'`}keys(){return this._negated.keys()}negate(){return this._negated}}class O0{static create(e,t,i=null){if(typeof t=="boolean")return t?tu.create(e,i):eu.create(e,i);const n=Ji.get(e);return typeof n=="boolean"?t===(n?"true":"false")?En.INSTANCE:Kn.INSTANCE:new O0(e,t,i)}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=5}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){const e=Ji.get(this.key);if(typeof e=="boolean"){const t=e?"true":"false";return this.value===t?En.INSTANCE:Kn.INSTANCE}return this}evaluate(e){return e.getValue(this.key)!=this.value}serialize(){return`${this.key} != '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=U_.create(this.key,this.value,this)),this.negated}}class tu{static create(e,t=null){const i=Ji.get(e);return typeof i=="boolean"?i?En.INSTANCE:Kn.INSTANCE:new tu(e,t)}constructor(e,t){this.key=e,this.negated=t,this.type=3}cmp(e){return e.type!==this.type?this.type-e.type:UF(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=Ji.get(this.key);return typeof e=="boolean"?e?En.INSTANCE:Kn.INSTANCE:this}evaluate(e){return!e.getValue(this.key)}serialize(){return`!${this.key}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=eu.create(this.key,this)),this.negated}}function F0(o,e){if(typeof o=="string"){const t=parseFloat(o);isNaN(t)||(o=t)}return typeof o=="string"||typeof o=="number"?e(o):En.INSTANCE}class B0{static create(e,t,i=null){return F0(t,n=>new B0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=12}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))>this.value}serialize(){return`${this.key} > ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=V0.create(this.key,this.value,this)),this.negated}}class W0{static create(e,t,i=null){return F0(t,n=>new W0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=13}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))>=this.value}serialize(){return`${this.key} >= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=H0.create(this.key,this.value,this)),this.negated}}class H0{static create(e,t,i=null){return F0(t,n=>new H0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=14}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))new V0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=15}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))<=this.value}serialize(){return`${this.key} <= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=B0.create(this.key,this.value,this)),this.negated}}class Yp{static create(e,t){return new Yp(e,t)}constructor(e,t){this.key=e,this.regexp=t,this.type=7,this.negated=null}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.keye.key)return 1;const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return ti?1:0}equals(e){if(e.type===this.type){const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return this.key===e.key&&t===i}return!1}substituteConstants(){return this}evaluate(e){const t=e.getValue(this.key);return this.regexp?this.regexp.test(t):!1}serialize(){const e=this.regexp?`/${this.regexp.source}/${this.regexp.flags}`:"/invalid/";return`${this.key} =~ ${e}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=sT.create(this)),this.negated}}class sT{static create(e){return new sT(e)}constructor(e){this._actual=e,this.type=8}cmp(e){return e.type!==this.type?this.type-e.type:this._actual.cmp(e._actual)}equals(e){return e.type===this.type?this._actual.equals(e._actual):!1}substituteConstants(){return this}evaluate(e){return!this._actual.evaluate(e)}serialize(){return`!(${this._actual.serialize()})`}keys(){return this._actual.keys()}negate(){return this._actual}}function zF(o){let e=null;for(let t=0,i=o.length;te.expr.length)return 1;for(let t=0,i=this.expr.length;t1;){const r=n[n.length-1];if(r.type!==9)break;n.pop();const a=n.pop(),l=n.length===0,c=tl.create(r.expr.map(d=>Vd.create([d,a],null,i)),null,l);c&&(n.push(c),n.sort(Gm))}if(n.length===1)return n[0];if(i){for(let r=0;re.serialize()).join(" && ")}keys(){const e=[];for(const t of this.expr)e.push(...t.keys());return e}negate(){if(!this.negated){const e=[];for(const t of this.expr)e.push(t.negate());this.negated=tl.create(e,this,!0)}return this.negated}}class tl{static create(e,t,i){return tl._normalizeArr(e,t,i)}constructor(e,t){this.expr=e,this.negated=t,this.type=9}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.expr.lengthe.expr.length)return 1;for(let t=0,i=this.expr.length;te.serialize()).join(" || ")}keys(){const e=[];for(const t of this.expr)e.push(...t.keys());return e}negate(){if(!this.negated){const e=[];for(const t of this.expr)e.push(t.negate());for(;e.length>1;){const t=e.shift(),i=e.shift(),n=[];for(const s of _R(t))for(const r of _R(i))n.push(Vd.create([s,r],null,!1));e.unshift(tl.create(n,null,!1))}this.negated=tl.create(e,this,!0)}return this.negated}}const vf=class vf extends eu{static all(){return vf._info.values()}constructor(e,t,i){super(e,null),this._defaultValue=t,typeof i=="object"?vf._info.push({...i,key:e}):i!==!0&&vf._info.push({key:e,description:i,type:t!=null?typeof t:void 0})}bindTo(e){return e.createKey(this.key,this._defaultValue)}getValue(e){return e.getContextKeyValue(this.key)}toNegated(){return this.negate()}isEqualTo(e){return U_.create(this.key,e)}};vf._info=[];let le=vf;const De=He("contextKeyService");function UF(o,e){return oe?1:0}function iu(o,e,t,i){return ot?1:ei?1:0}function Qx(o,e){if(o.type===0||e.type===1)return!0;if(o.type===9)return e.type===9?pR(o.expr,e.expr):!1;if(e.type===9){for(const t of e.expr)if(Qx(o,t))return!0;return!1}if(o.type===6){if(e.type===6)return pR(e.expr,o.expr);for(const t of o.expr)if(Qx(t,e))return!0;return!1}return o.equals(e)}function pR(o,e){let t=0,i=0;for(;t{a(),this._cachedMergedKeybindings=null})}getDefaultKeybindings(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=Array.from(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(cz)),this._cachedMergedKeybindings.slice(0)}}const Nn=new rT,lz={EditorModes:"platform.keybindingsRegistry"};Bi.add(lz.EditorModes,Nn);function cz(o,e){if(o.weight1!==e.weight1)return o.weight1-e.weight1;if(o.command&&e.command){if(o.commande.command)return 1}return o.weight2-e.weight2}var dz=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},CR=function(o,e){return function(t,i){e(t,i,o)}},L1;function Rf(o){return o.command!==void 0}function hz(o){return o.submenu!==void 0}const k=class k{constructor(e){if(k._instances.has(e))throw new TypeError(`MenuId with identifier '${e}' already exists. Use MenuId.for(ident) or a unique identifier`);k._instances.set(e,this),this.id=e}};k._instances=new Map,k.CommandPalette=new k("CommandPalette"),k.DebugBreakpointsContext=new k("DebugBreakpointsContext"),k.DebugCallStackContext=new k("DebugCallStackContext"),k.DebugConsoleContext=new k("DebugConsoleContext"),k.DebugVariablesContext=new k("DebugVariablesContext"),k.NotebookVariablesContext=new k("NotebookVariablesContext"),k.DebugHoverContext=new k("DebugHoverContext"),k.DebugWatchContext=new k("DebugWatchContext"),k.DebugToolBar=new k("DebugToolBar"),k.DebugToolBarStop=new k("DebugToolBarStop"),k.DebugCallStackToolbar=new k("DebugCallStackToolbar"),k.DebugCreateConfiguration=new k("DebugCreateConfiguration"),k.EditorContext=new k("EditorContext"),k.SimpleEditorContext=new k("SimpleEditorContext"),k.EditorContent=new k("EditorContent"),k.EditorLineNumberContext=new k("EditorLineNumberContext"),k.EditorContextCopy=new k("EditorContextCopy"),k.EditorContextPeek=new k("EditorContextPeek"),k.EditorContextShare=new k("EditorContextShare"),k.EditorTitle=new k("EditorTitle"),k.EditorTitleRun=new k("EditorTitleRun"),k.EditorTitleContext=new k("EditorTitleContext"),k.EditorTitleContextShare=new k("EditorTitleContextShare"),k.EmptyEditorGroup=new k("EmptyEditorGroup"),k.EmptyEditorGroupContext=new k("EmptyEditorGroupContext"),k.EditorTabsBarContext=new k("EditorTabsBarContext"),k.EditorTabsBarShowTabsSubmenu=new k("EditorTabsBarShowTabsSubmenu"),k.EditorTabsBarShowTabsZenModeSubmenu=new k("EditorTabsBarShowTabsZenModeSubmenu"),k.EditorActionsPositionSubmenu=new k("EditorActionsPositionSubmenu"),k.ExplorerContext=new k("ExplorerContext"),k.ExplorerContextShare=new k("ExplorerContextShare"),k.ExtensionContext=new k("ExtensionContext"),k.GlobalActivity=new k("GlobalActivity"),k.CommandCenter=new k("CommandCenter"),k.CommandCenterCenter=new k("CommandCenterCenter"),k.LayoutControlMenuSubmenu=new k("LayoutControlMenuSubmenu"),k.LayoutControlMenu=new k("LayoutControlMenu"),k.MenubarMainMenu=new k("MenubarMainMenu"),k.MenubarAppearanceMenu=new k("MenubarAppearanceMenu"),k.MenubarDebugMenu=new k("MenubarDebugMenu"),k.MenubarEditMenu=new k("MenubarEditMenu"),k.MenubarCopy=new k("MenubarCopy"),k.MenubarFileMenu=new k("MenubarFileMenu"),k.MenubarGoMenu=new k("MenubarGoMenu"),k.MenubarHelpMenu=new k("MenubarHelpMenu"),k.MenubarLayoutMenu=new k("MenubarLayoutMenu"),k.MenubarNewBreakpointMenu=new k("MenubarNewBreakpointMenu"),k.PanelAlignmentMenu=new k("PanelAlignmentMenu"),k.PanelPositionMenu=new k("PanelPositionMenu"),k.ActivityBarPositionMenu=new k("ActivityBarPositionMenu"),k.MenubarPreferencesMenu=new k("MenubarPreferencesMenu"),k.MenubarRecentMenu=new k("MenubarRecentMenu"),k.MenubarSelectionMenu=new k("MenubarSelectionMenu"),k.MenubarShare=new k("MenubarShare"),k.MenubarSwitchEditorMenu=new k("MenubarSwitchEditorMenu"),k.MenubarSwitchGroupMenu=new k("MenubarSwitchGroupMenu"),k.MenubarTerminalMenu=new k("MenubarTerminalMenu"),k.MenubarViewMenu=new k("MenubarViewMenu"),k.MenubarHomeMenu=new k("MenubarHomeMenu"),k.OpenEditorsContext=new k("OpenEditorsContext"),k.OpenEditorsContextShare=new k("OpenEditorsContextShare"),k.ProblemsPanelContext=new k("ProblemsPanelContext"),k.SCMInputBox=new k("SCMInputBox"),k.SCMChangesSeparator=new k("SCMChangesSeparator"),k.SCMChangesContext=new k("SCMChangesContext"),k.SCMIncomingChanges=new k("SCMIncomingChanges"),k.SCMIncomingChangesContext=new k("SCMIncomingChangesContext"),k.SCMIncomingChangesSetting=new k("SCMIncomingChangesSetting"),k.SCMOutgoingChanges=new k("SCMOutgoingChanges"),k.SCMOutgoingChangesContext=new k("SCMOutgoingChangesContext"),k.SCMOutgoingChangesSetting=new k("SCMOutgoingChangesSetting"),k.SCMIncomingChangesAllChangesContext=new k("SCMIncomingChangesAllChangesContext"),k.SCMIncomingChangesHistoryItemContext=new k("SCMIncomingChangesHistoryItemContext"),k.SCMOutgoingChangesAllChangesContext=new k("SCMOutgoingChangesAllChangesContext"),k.SCMOutgoingChangesHistoryItemContext=new k("SCMOutgoingChangesHistoryItemContext"),k.SCMChangeContext=new k("SCMChangeContext"),k.SCMResourceContext=new k("SCMResourceContext"),k.SCMResourceContextShare=new k("SCMResourceContextShare"),k.SCMResourceFolderContext=new k("SCMResourceFolderContext"),k.SCMResourceGroupContext=new k("SCMResourceGroupContext"),k.SCMSourceControl=new k("SCMSourceControl"),k.SCMSourceControlInline=new k("SCMSourceControlInline"),k.SCMSourceControlTitle=new k("SCMSourceControlTitle"),k.SCMHistoryTitle=new k("SCMHistoryTitle"),k.SCMTitle=new k("SCMTitle"),k.SearchContext=new k("SearchContext"),k.SearchActionMenu=new k("SearchActionContext"),k.StatusBarWindowIndicatorMenu=new k("StatusBarWindowIndicatorMenu"),k.StatusBarRemoteIndicatorMenu=new k("StatusBarRemoteIndicatorMenu"),k.StickyScrollContext=new k("StickyScrollContext"),k.TestItem=new k("TestItem"),k.TestItemGutter=new k("TestItemGutter"),k.TestProfilesContext=new k("TestProfilesContext"),k.TestMessageContext=new k("TestMessageContext"),k.TestMessageContent=new k("TestMessageContent"),k.TestPeekElement=new k("TestPeekElement"),k.TestPeekTitle=new k("TestPeekTitle"),k.TestCallStack=new k("TestCallStack"),k.TouchBarContext=new k("TouchBarContext"),k.TitleBarContext=new k("TitleBarContext"),k.TitleBarTitleContext=new k("TitleBarTitleContext"),k.TunnelContext=new k("TunnelContext"),k.TunnelPrivacy=new k("TunnelPrivacy"),k.TunnelProtocol=new k("TunnelProtocol"),k.TunnelPortInline=new k("TunnelInline"),k.TunnelTitle=new k("TunnelTitle"),k.TunnelLocalAddressInline=new k("TunnelLocalAddressInline"),k.TunnelOriginInline=new k("TunnelOriginInline"),k.ViewItemContext=new k("ViewItemContext"),k.ViewContainerTitle=new k("ViewContainerTitle"),k.ViewContainerTitleContext=new k("ViewContainerTitleContext"),k.ViewTitle=new k("ViewTitle"),k.ViewTitleContext=new k("ViewTitleContext"),k.CommentEditorActions=new k("CommentEditorActions"),k.CommentThreadTitle=new k("CommentThreadTitle"),k.CommentThreadActions=new k("CommentThreadActions"),k.CommentThreadAdditionalActions=new k("CommentThreadAdditionalActions"),k.CommentThreadTitleContext=new k("CommentThreadTitleContext"),k.CommentThreadCommentContext=new k("CommentThreadCommentContext"),k.CommentTitle=new k("CommentTitle"),k.CommentActions=new k("CommentActions"),k.CommentsViewThreadActions=new k("CommentsViewThreadActions"),k.InteractiveToolbar=new k("InteractiveToolbar"),k.InteractiveCellTitle=new k("InteractiveCellTitle"),k.InteractiveCellDelete=new k("InteractiveCellDelete"),k.InteractiveCellExecute=new k("InteractiveCellExecute"),k.InteractiveInputExecute=new k("InteractiveInputExecute"),k.InteractiveInputConfig=new k("InteractiveInputConfig"),k.ReplInputExecute=new k("ReplInputExecute"),k.IssueReporter=new k("IssueReporter"),k.NotebookToolbar=new k("NotebookToolbar"),k.NotebookStickyScrollContext=new k("NotebookStickyScrollContext"),k.NotebookCellTitle=new k("NotebookCellTitle"),k.NotebookCellDelete=new k("NotebookCellDelete"),k.NotebookCellInsert=new k("NotebookCellInsert"),k.NotebookCellBetween=new k("NotebookCellBetween"),k.NotebookCellListTop=new k("NotebookCellTop"),k.NotebookCellExecute=new k("NotebookCellExecute"),k.NotebookCellExecuteGoTo=new k("NotebookCellExecuteGoTo"),k.NotebookCellExecutePrimary=new k("NotebookCellExecutePrimary"),k.NotebookDiffCellInputTitle=new k("NotebookDiffCellInputTitle"),k.NotebookDiffCellMetadataTitle=new k("NotebookDiffCellMetadataTitle"),k.NotebookDiffCellOutputsTitle=new k("NotebookDiffCellOutputsTitle"),k.NotebookOutputToolbar=new k("NotebookOutputToolbar"),k.NotebookOutlineFilter=new k("NotebookOutlineFilter"),k.NotebookOutlineActionMenu=new k("NotebookOutlineActionMenu"),k.NotebookEditorLayoutConfigure=new k("NotebookEditorLayoutConfigure"),k.NotebookKernelSource=new k("NotebookKernelSource"),k.BulkEditTitle=new k("BulkEditTitle"),k.BulkEditContext=new k("BulkEditContext"),k.TimelineItemContext=new k("TimelineItemContext"),k.TimelineTitle=new k("TimelineTitle"),k.TimelineTitleContext=new k("TimelineTitleContext"),k.TimelineFilterSubMenu=new k("TimelineFilterSubMenu"),k.AccountsContext=new k("AccountsContext"),k.SidebarTitle=new k("SidebarTitle"),k.PanelTitle=new k("PanelTitle"),k.AuxiliaryBarTitle=new k("AuxiliaryBarTitle"),k.AuxiliaryBarHeader=new k("AuxiliaryBarHeader"),k.TerminalInstanceContext=new k("TerminalInstanceContext"),k.TerminalEditorInstanceContext=new k("TerminalEditorInstanceContext"),k.TerminalNewDropdownContext=new k("TerminalNewDropdownContext"),k.TerminalTabContext=new k("TerminalTabContext"),k.TerminalTabEmptyAreaContext=new k("TerminalTabEmptyAreaContext"),k.TerminalStickyScrollContext=new k("TerminalStickyScrollContext"),k.WebviewContext=new k("WebviewContext"),k.InlineCompletionsActions=new k("InlineCompletionsActions"),k.InlineEditsActions=new k("InlineEditsActions"),k.InlineEditActions=new k("InlineEditActions"),k.NewFile=new k("NewFile"),k.MergeInput1Toolbar=new k("MergeToolbar1Toolbar"),k.MergeInput2Toolbar=new k("MergeToolbar2Toolbar"),k.MergeBaseToolbar=new k("MergeBaseToolbar"),k.MergeInputResultToolbar=new k("MergeToolbarResultToolbar"),k.InlineSuggestionToolbar=new k("InlineSuggestionToolbar"),k.InlineEditToolbar=new k("InlineEditToolbar"),k.ChatContext=new k("ChatContext"),k.ChatCodeBlock=new k("ChatCodeblock"),k.ChatCompareBlock=new k("ChatCompareBlock"),k.ChatMessageTitle=new k("ChatMessageTitle"),k.ChatExecute=new k("ChatExecute"),k.ChatExecuteSecondary=new k("ChatExecuteSecondary"),k.ChatInputSide=new k("ChatInputSide"),k.AccessibleView=new k("AccessibleView"),k.MultiDiffEditorFileToolbar=new k("MultiDiffEditorFileToolbar"),k.DiffEditorHunkToolbar=new k("DiffEditorHunkToolbar"),k.DiffEditorSelectionToolbar=new k("DiffEditorSelectionToolbar");let $e=k;const yr=He("menuService"),kp=class kp{static for(e){let t=this._all.get(e);return t||(t=new kp(e),this._all.set(e,t)),t}static merge(e){const t=new Set;for(const i of e)i instanceof kp&&t.add(i.id);return t}constructor(e){this.id=e,this.has=t=>t===e}};kp._all=new Map;let _d=kp;const Eo=new class{constructor(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new DW({merge:_d.merge}),this.onDidChangeMenu=this._onDidChangeMenu.event}addCommand(o){return this._commands.set(o.id,o),this._onDidChangeMenu.fire(_d.for($e.CommandPalette)),_e(()=>{this._commands.delete(o.id)&&this._onDidChangeMenu.fire(_d.for($e.CommandPalette))})}getCommand(o){return this._commands.get(o)}getCommands(){const o=new Map;return this._commands.forEach((e,t)=>o.set(t,e)),o}appendMenuItem(o,e){let t=this._menuItems.get(o);t||(t=new yn,this._menuItems.set(o,t));const i=t.push(e);return this._onDidChangeMenu.fire(_d.for(o)),_e(()=>{i(),this._onDidChangeMenu.fire(_d.for(o))})}appendMenuItems(o){const e=new X;for(const{id:t,item:i}of o)e.add(this.appendMenuItem(t,i));return e}getMenuItems(o){let e;return this._menuItems.has(o)?e=[...this._menuItems.get(o)]:e=[],o===$e.CommandPalette&&this._appendImplicitItems(e),e}_appendImplicitItems(o){const e=new Set;for(const t of o)Rf(t)&&(e.add(t.command.id),t.alt&&e.add(t.alt.id));this._commands.forEach((t,i)=>{e.has(i)||o.push({command:t})})}};class Zm extends R0{constructor(e,t,i){super(`submenuitem.${e.submenu.id}`,typeof e.title=="string"?e.title:e.title.value,i,"submenu"),this.item=e,this.hideActions=t}}let so=L1=class{static label(e,t){return t?.renderShortTitle&&e.shortTitle?typeof e.shortTitle=="string"?e.shortTitle:e.shortTitle.value:typeof e.title=="string"?e.title:e.title.value}constructor(e,t,i,n,s,r,a){this.hideActions=n,this.menuKeybinding=s,this._commandService=a,this.id=e.id,this.label=L1.label(e,i),this.tooltip=(typeof e.tooltip=="string"?e.tooltip:e.tooltip?.value)??"",this.enabled=!e.precondition||r.contextMatchesRules(e.precondition),this.checked=void 0;let l;if(e.toggled){const c=e.toggled.condition?e.toggled:{condition:e.toggled};this.checked=r.contextMatchesRules(c.condition),this.checked&&c.tooltip&&(this.tooltip=typeof c.tooltip=="string"?c.tooltip:c.tooltip.value),this.checked&&Ee.isThemeIcon(c.icon)&&(l=c.icon),this.checked&&c.title&&(this.label=typeof c.title=="string"?c.title:c.title.value)}l||(l=Ee.isThemeIcon(e.icon)?e.icon:void 0),this.item=e,this.alt=t?new L1(t,void 0,i,n,void 0,r,a):void 0,this._options=i,this.class=l&&Ee.asClassName(l)}run(...e){let t=[];return this._options?.arg&&(t=[...t,this._options.arg]),this._options?.shouldForwardArgs&&(t=[...t,...e]),this._commandService.executeCommand(this.id,...t)}};so=L1=dz([CR(5,De),CR(6,hi)],so);class nu{constructor(e){this.desc=e}}function Rn(o){const e=[],t=new o,{f1:i,menu:n,keybinding:s,...r}=t.desc;if(bt.getCommand(r.id))throw new Error(`Cannot register two commands with the same id: ${r.id}`);if(e.push(bt.registerCommand({id:r.id,handler:(a,...l)=>t.run(a,...l),metadata:r.metadata})),Array.isArray(n))for(const a of n)e.push(Eo.appendMenuItem(a.id,{command:{...r,precondition:a.precondition===null?void 0:r.precondition},...a}));else n&&e.push(Eo.appendMenuItem(n.id,{command:{...r,precondition:n.precondition===null?void 0:r.precondition},...n}));if(i&&(e.push(Eo.appendMenuItem($e.CommandPalette,{command:r,when:r.precondition})),e.push(Eo.addCommand(r))),Array.isArray(s))for(const a of s)e.push(Nn.registerKeybindingRule({...a,id:r.id,when:r.precondition?re.and(r.precondition,a.when):a.when}));else s&&e.push(Nn.registerKeybindingRule({...s,id:r.id,when:r.precondition?re.and(r.precondition,s.when):s.when}));return{dispose(){xt(e)}}}const $s=He("telemetryService"),gs=He("logService");var Wn;(function(o){o[o.Off=0]="Off",o[o.Trace=1]="Trace",o[o.Debug=2]="Debug",o[o.Info=3]="Info",o[o.Warning=4]="Warning",o[o.Error=5]="Error"})(Wn||(Wn={}));const $F=Wn.Info;class KF extends z{constructor(){super(...arguments),this.level=$F,this._onDidChangeLogLevel=this._register(new A),this.onDidChangeLogLevel=this._onDidChangeLogLevel.event}setLevel(e){this.level!==e&&(this.level=e,this._onDidChangeLogLevel.fire(this.level))}getLevel(){return this.level}checkLogLevel(e){return this.level!==Wn.Off&&this.level<=e}}class uz extends KF{constructor(e=$F,t=!0){super(),this.useColors=t,this.setLevel(e)}trace(e,...t){this.checkLogLevel(Wn.Trace)&&(this.useColors?console.log("%cTRACE","color: #888",e,...t):console.log(e,...t))}debug(e,...t){this.checkLogLevel(Wn.Debug)&&(this.useColors?console.log("%cDEBUG","background: #eee; color: #888",e,...t):console.log(e,...t))}info(e,...t){this.checkLogLevel(Wn.Info)&&(this.useColors?console.log("%c INFO","color: #33f",e,...t):console.log(e,...t))}warn(e,...t){this.checkLogLevel(Wn.Warning)&&(this.useColors?console.log("%c WARN","color: #993",e,...t):console.log(e,...t))}error(e,...t){this.checkLogLevel(Wn.Error)&&(this.useColors?console.log("%c ERR","color: #f33",e,...t):console.error(e,...t))}}class fz extends KF{constructor(e){super(),this.loggers=e,e.length&&this.setLevel(e[0].getLevel())}setLevel(e){for(const t of this.loggers)t.setLevel(e);super.setLevel(e)}trace(e,...t){for(const i of this.loggers)i.trace(e,...t)}debug(e,...t){for(const i of this.loggers)i.debug(e,...t)}info(e,...t){for(const i of this.loggers)i.info(e,...t)}warn(e,...t){for(const i of this.loggers)i.warn(e,...t)}error(e,...t){for(const i of this.loggers)i.error(e,...t)}dispose(){for(const e of this.loggers)e.dispose();super.dispose()}}function gz(o){switch(o){case Wn.Trace:return"trace";case Wn.Debug:return"debug";case Wn.Info:return"info";case Wn.Warning:return"warn";case Wn.Error:return"error";case Wn.Off:return"off"}}new le("logLevel",gz(Wn.Info));class U0{constructor(e){this.id=e.id,this.precondition=e.precondition,this._kbOpts=e.kbOpts,this._menuOpts=e.menuOpts,this.metadata=e.metadata}register(){if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts){const e=Array.isArray(this._kbOpts)?this._kbOpts:[this._kbOpts];for(const t of e){let i=t.kbExpr;this.precondition&&(i?i=re.and(i,this.precondition):i=this.precondition);const n={id:this.id,weight:t.weight,args:t.args,when:i,primary:t.primary,secondary:t.secondary,win:t.win,linux:t.linux,mac:t.mac};Nn.registerKeybindingRule(n)}}bt.registerCommand({id:this.id,handler:(e,t)=>this.runCommand(e,t),metadata:this.metadata})}_registerMenuItem(e){Eo.appendMenuItem(e.menuId,{group:e.group,command:{id:this.id,title:e.title,icon:e.icon,precondition:this.precondition},when:e.when,order:e.order})}}class aT extends U0{constructor(){super(...arguments),this._implementations=[]}addImplementation(e,t,i,n){return this._implementations.push({priority:e,name:t,implementation:i,when:n}),this._implementations.sort((s,r)=>r.priority-s.priority),{dispose:()=>{for(let s=0;s{if(a.get(De).contextMatchesRules(i??void 0))return n(a,r,t)})}runCommand(e,t){return co.runEditorCommand(e,t,this.precondition,(i,n,s)=>this.runEditorCommand(i,n,s))}}class bi extends co{static convertOptions(e){let t;Array.isArray(e.menuOpts)?t=e.menuOpts:e.menuOpts?t=[e.menuOpts]:t=[];function i(n){return n.menuId||(n.menuId=$e.EditorContext),n.title||(n.title=e.label),n.when=re.and(e.precondition,n.when),n}return Array.isArray(e.contextMenuOpts)?t.push(...e.contextMenuOpts.map(i)):e.contextMenuOpts&&t.push(i(e.contextMenuOpts)),e.menuOpts=t,e}constructor(e){super(bi.convertOptions(e)),this.label=e.label,this.alias=e.alias}runEditorCommand(e,t,i){return this.reportTelemetry(e,t),this.run(e,t,i||{})}reportTelemetry(e,t){e.get($s).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class mz extends nu{run(e,...t){const i=e.get(Pt),n=i.getFocusedCodeEditor()||i.getActiveCodeEditor();if(n)return n.invokeWithinContext(s=>{const r=s.get(De),a=s.get(gs);if(!r.contextMatchesRules(this.desc.precondition??void 0)){a.debug("[EditorAction2] NOT running command because its precondition is FALSE",this.desc.id,this.desc.precondition?.serialize());return}return this.runEditorCommand(s,n,...t)})}}function Wo(o,e){bt.registerCommand(o,function(t,...i){const n=t.get(ke),[s,r]=i;ai(ve.isUri(s)),ai(P.isIPosition(r));const a=t.get(Fi).getModel(s);if(a){const l=P.lift(r);return n.invokeFunction(e,a,l,...i.slice(2))}return t.get(fo).createModelReference(s).then(l=>new Promise((c,d)=>{try{const h=n.invokeFunction(e,l.object.textEditorModel,P.lift(r),i.slice(2));c(h)}catch(h){d(h)}}).finally(()=>{l.dispose()}))})}function ge(o){return cr.INSTANCE.registerEditorCommand(o),o}function mi(o){const e=new o;return cr.INSTANCE.registerEditorAction(e),e}function Ho(o,e,t){cr.INSTANCE.registerEditorContribution(o,e,t)}var Af;(function(o){function e(r){return cr.INSTANCE.getEditorCommand(r)}o.getEditorCommand=e;function t(){return cr.INSTANCE.getEditorActions()}o.getEditorActions=t;function i(){return cr.INSTANCE.getEditorContributions()}o.getEditorContributions=i;function n(r){return cr.INSTANCE.getEditorContributions().filter(a=>r.indexOf(a.id)>=0)}o.getSomeEditorContributions=n;function s(){return cr.INSTANCE.getDiffEditorContributions()}o.getDiffEditorContributions=s})(Af||(Af={}));const pz={EditorCommonContributions:"editor.contributions"},xw=class xw{constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(e,t,i){this.editorContributions.push({id:e,ctor:t,instantiation:i})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(e){e.register(),this.editorActions.push(e)}getEditorActions(){return this.editorActions}registerEditorCommand(e){e.register(),this.editorCommands[e.id]=e}getEditorCommand(e){return this.editorCommands[e]||null}};xw.INSTANCE=new xw;let cr=xw;Bi.add(pz.EditorCommonContributions,cr.INSTANCE);function $_(o){return o.register(),o}const qF=$_(new aT({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2104},menuOpts:[{menuId:$e.MenubarEditMenu,group:"1_do",title:m({key:"miUndo",comment:["&& denotes a mnemonic"]},"&&Undo"),order:1},{menuId:$e.CommandPalette,group:"",title:m("undo","Undo"),order:1}]}));$_(new jF(qF,{id:"default:undo",precondition:void 0}));const GF=$_(new aT({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:[{menuId:$e.MenubarEditMenu,group:"1_do",title:m({key:"miRedo",comment:["&& denotes a mnemonic"]},"&&Redo"),order:2},{menuId:$e.CommandPalette,group:"",title:m("redo","Redo"),order:1}]}));$_(new jF(GF,{id:"default:redo",precondition:void 0}));const _z=$_(new aT({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:[{menuId:$e.MenubarSelectionMenu,group:"1_basic",title:m({key:"miSelectAll",comment:["&& denotes a mnemonic"]},"&&Select All"),order:1},{menuId:$e.CommandPalette,group:"",title:m("selectAll","Select All"),order:1}]})),bz="modulepreload",Cz=function(o,e){return new URL(o,e).href},vR={},vz=function(e,t,i){let n=Promise.resolve();if(t&&t.length>0){let c=function(d){return Promise.all(d.map(h=>Promise.resolve(h).then(u=>({status:"fulfilled",value:u}),u=>({status:"rejected",reason:u}))))};const r=document.getElementsByTagName("link"),a=document.querySelector("meta[property=csp-nonce]"),l=a?.nonce||a?.getAttribute("nonce");n=c(t.map(d=>{if(d=Cz(d,i),d in vR)return;vR[d]=!0;const h=d.endsWith(".css"),u=h?'[rel="stylesheet"]':"";if(i)for(let g=r.length-1;g>=0;g--){const p=r[g];if(p.href===d&&(!h||p.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${d}"]${u}`))return;const f=document.createElement("link");if(f.rel=h?"stylesheet":bz,h||(f.as="script"),f.crossOrigin="",f.href=d,l&&f.setAttribute("nonce",l),document.head.appendChild(f),h)return new Promise((g,p)=>{f.addEventListener("load",g),f.addEventListener("error",()=>p(new Error(`Unable to preload CSS for ${d}`)))})}))}function s(r){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=r,window.dispatchEvent(a),!a.defaultPrevented)throw r}return n.then(r=>{for(const a of r||[])a.status==="rejected"&&s(a.reason);return e().catch(s)})},wR="default",wz="$initialize";let yR=!1;function Xx(o){Og&&(yR||(yR=!0,console.warn("Could not create web worker(s). Falling back to loading web worker code in main thread, which might cause UI freezes. Please see https://github.com/microsoft/monaco-editor#faq")),console.warn(o.message))}class yz{constructor(e,t,i,n,s){this.vsWorker=e,this.req=t,this.channel=i,this.method=n,this.args=s,this.type=0}}class SR{constructor(e,t,i,n){this.vsWorker=e,this.seq=t,this.res=i,this.err=n,this.type=1}}class Sz{constructor(e,t,i,n,s){this.vsWorker=e,this.req=t,this.channel=i,this.eventName=n,this.arg=s,this.type=2}}class Lz{constructor(e,t,i){this.vsWorker=e,this.req=t,this.event=i,this.type=3}}class xz{constructor(e,t){this.vsWorker=e,this.req=t,this.type=4}}class kz{constructor(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(e){this._workerId=e}sendMessage(e,t,i){const n=String(++this._lastSentReq);return new Promise((s,r)=>{this._pendingReplies[n]={resolve:s,reject:r},this._send(new yz(this._workerId,n,e,t,i))})}listen(e,t,i){let n=null;const s=new A({onWillAddFirstListener:()=>{n=String(++this._lastSentReq),this._pendingEmitters.set(n,s),this._send(new Sz(this._workerId,n,e,t,i))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(n),this._send(new xz(this._workerId,n)),n=null}});return s.event}handleMessage(e){!e||!e.vsWorker||this._workerId!==-1&&e.vsWorker!==this._workerId||this._handleMessage(e)}createProxyToRemoteChannel(e,t){const i={get:(n,s)=>(typeof s=="string"&&!n[s]&&(YF(s)?n[s]=r=>this.listen(e,s,r):ZF(s)?n[s]=this.listen(e,s,void 0):s.charCodeAt(0)===36&&(n[s]=async(...r)=>(await t?.(),this.sendMessage(e,s,r)))),n[s])};return new Proxy(Object.create(null),i)}_handleMessage(e){switch(e.type){case 1:return this._handleReplyMessage(e);case 0:return this._handleRequestMessage(e);case 2:return this._handleSubscribeEventMessage(e);case 3:return this._handleEventMessage(e);case 4:return this._handleUnsubscribeEventMessage(e)}}_handleReplyMessage(e){if(!this._pendingReplies[e.seq]){console.warn("Got reply to unknown seq");return}const t=this._pendingReplies[e.seq];if(delete this._pendingReplies[e.seq],e.err){let i=e.err;e.err.$isError&&(i=new Error,i.name=e.err.name,i.message=e.err.message,i.stack=e.err.stack),t.reject(i);return}t.resolve(e.res)}_handleRequestMessage(e){const t=e.req;this._handler.handleMessage(e.channel,e.method,e.args).then(n=>{this._send(new SR(this._workerId,t,n,void 0))},n=>{n.detail instanceof Error&&(n.detail=HM(n.detail)),this._send(new SR(this._workerId,t,void 0,HM(n)))})}_handleSubscribeEventMessage(e){const t=e.req,i=this._handler.handleEvent(e.channel,e.eventName,e.arg)(n=>{this._send(new Lz(this._workerId,t,n))});this._pendingEvents.set(t,i)}_handleEventMessage(e){if(!this._pendingEmitters.has(e.req)){console.warn("Got event for unknown req");return}this._pendingEmitters.get(e.req).fire(e.event)}_handleUnsubscribeEventMessage(e){if(!this._pendingEvents.has(e.req)){console.warn("Got unsubscribe for unknown req");return}this._pendingEvents.get(e.req).dispose(),this._pendingEvents.delete(e.req)}_send(e){const t=[];if(e.type===0)for(let i=0;i{this._protocol.handleMessage(s)},s=>{Ze(s)})),this._protocol=new kz({sendMessage:(s,r)=>{this._worker.postMessage(s,r)},handleMessage:(s,r,a)=>this._handleMessage(s,r,a),handleEvent:(s,r,a)=>this._handleEvent(s,r,a)}),this._protocol.setWorkerId(this._worker.getId());let i=null;const n=globalThis.require;typeof n<"u"&&typeof n.getConfig=="function"?i=n.getConfig():typeof globalThis.requirejs<"u"&&(i=globalThis.requirejs.s.contexts._.config),this._onModuleLoaded=this._protocol.sendMessage(wR,wz,[this._worker.getId(),JSON.parse(JSON.stringify(i)),t.amdModuleId]),this.proxy=this._protocol.createProxyToRemoteChannel(wR,async()=>{await this._onModuleLoaded}),this._onModuleLoaded.catch(s=>{this._onError("Worker failed to load "+t.amdModuleId,s)})}_handleMessage(e,t,i){const n=this._localChannels.get(e);if(!n)return Promise.reject(new Error(`Missing channel ${e} on main thread`));if(typeof n[t]!="function")return Promise.reject(new Error(`Missing method ${t} on main thread channel ${e}`));try{return Promise.resolve(n[t].apply(n,i))}catch(s){return Promise.reject(s)}}_handleEvent(e,t,i){const n=this._localChannels.get(e);if(!n)throw new Error(`Missing channel ${e} on main thread`);if(YF(t)){const s=n[t].call(n,i);if(typeof s!="function")throw new Error(`Missing dynamic event ${t} on main thread channel ${e}.`);return s}if(ZF(t)){const s=n[t];if(typeof s!="function")throw new Error(`Missing event ${t} on main thread channel ${e}.`);return s}throw new Error(`Malformed event name ${t}`)}setChannel(e,t){this._localChannels.set(e,t)}_onError(e,t){console.error(e),console.info(t)}}function ZF(o){return o[0]==="o"&&o[1]==="n"&&ql(o.charCodeAt(2))}function YF(o){return/^onDynamic/.test(o)&&ql(o.charCodeAt(9))}function Kc(o,e){const t=globalThis.MonacoEnvironment;if(t?.createTrustedTypesPolicy)try{return t.createTrustedTypesPolicy(o,e)}catch(i){Ze(i);return}try{return globalThis.trustedTypes?.createPolicy(o,e)}catch(i){Ze(i);return}}let Xu;typeof self=="object"&&self.constructor&&self.constructor.name==="DedicatedWorkerGlobalScope"&&globalThis.workerttPolicy!==void 0?Xu=globalThis.workerttPolicy:Xu=Kc("defaultWorkerFactory",{createScriptURL:o=>o});function Iz(o,e){const t=globalThis.MonacoEnvironment;if(t){if(typeof t.getWorker=="function")return t.getWorker("workerMain.js",e);if(typeof t.getWorkerUrl=="function"){const i=t.getWorkerUrl("workerMain.js",e);return new Worker(Xu?Xu.createScriptURL(i):i,{name:e,type:"module"})}}if(o){const i=Ez(e,o.toString(!0)),n=new Worker(Xu?Xu.createScriptURL(i):i,{name:e,type:"module"});return Nz(n)}throw new Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}function Ez(o,e,t){if(!(/^((http:)|(https:)|(file:)|(vscode-file:))/.test(e)&&e.substring(0,globalThis.origin.length)!==globalThis.origin)){const s=e.lastIndexOf("?"),r=e.lastIndexOf("#",s),a=s>0?new URLSearchParams(e.substring(s+1,~r?r:void 0)):new URLSearchParams;$x.addSearchParam(a,!0,!0),a.toString()?e=`${e}?${a.toString()}#${o}`:e=`${e}#${o}`}const n=new Blob([Ag([`/*${o}*/`,void 0,`globalThis._VSCODE_NLS_MESSAGES = ${JSON.stringify(F5())};`,`globalThis._VSCODE_NLS_LANGUAGE = ${JSON.stringify(kN())};`,`globalThis._VSCODE_FILE_ROOT = '${globalThis._VSCODE_FILE_ROOT}';`,"const ttPolicy = globalThis.trustedTypes?.createPolicy('defaultWorkerFactory', { createScriptURL: value => value });","globalThis.workerttPolicy = ttPolicy;",`await import(ttPolicy?.createScriptURL('${e}') ?? '${e}');`,"globalThis.postMessage({ type: 'vscode-worker-ready' });",`/*${o}*/`]).join("")],{type:"application/javascript"});return URL.createObjectURL(n)}function Nz(o){return new Promise((e,t)=>{o.onmessage=function(i){i.data.type==="vscode-worker-ready"&&(o.onmessage=null,e(o))},o.onerror=t})}function Tz(o){return typeof o.then=="function"}class Mz extends z{constructor(e,t,i,n,s,r){super(),this.id=i,this.label=n;const a=Iz(e,n);Tz(a)?this.worker=a:this.worker=Promise.resolve(a),this.postMessage(t,[]),this.worker.then(l=>{l.onmessage=function(c){s(c.data)},l.onmessageerror=r,typeof l.addEventListener=="function"&&l.addEventListener("error",r)}),this._register(_e(()=>{this.worker?.then(l=>{l.onmessage=null,l.onmessageerror=null,l.removeEventListener("error",r),l.terminate()}),this.worker=null}))}getId(){return this.id}postMessage(e,t){this.worker?.then(i=>{try{i.postMessage(e,t)}catch(n){Ze(n),Ze(new Error(`FAILED to post message to '${this.label}'-worker`,{cause:n}))}})}}class Rz{constructor(e,t){this.amdModuleId=e,this.label=t,this.esmModuleLocation=E0.asBrowserUri(`${e}.esm.js`)}}const kw=class kw{constructor(){this._webWorkerFailedBeforeError=!1}create(e,t,i){const n=++kw.LAST_WORKER_ID;if(this._webWorkerFailedBeforeError)throw this._webWorkerFailedBeforeError;return new Mz(e.esmModuleLocation,e.amdModuleId,n,e.label||"anonymous"+n,t,s=>{Xx(s),this._webWorkerFailedBeforeError=s,i(s)})}};kw.LAST_WORKER_ID=0;let Jx=kw;function Az(o,e){const t=typeof o=="string"?new Rz(o,e):o;return new Dz(new Jx,t)}var Sn;(function(o){o[o.None=0]="None",o[o.Indent=1]="Indent",o[o.IndentOutdent=2]="IndentOutdent",o[o.Outdent=3]="Outdent"})(Sn||(Sn={}));class uS{constructor(e){if(this._neutralCharacter=null,this._neutralCharacterSearched=!1,this.open=e.open,this.close=e.close,this._inString=!0,this._inComment=!0,this._inRegEx=!0,Array.isArray(e.notIn))for(let t=0,i=e.notIn.length;tnew uS(t)):e.brackets?this._autoClosingPairs=e.brackets.map(t=>new uS({open:t[0],close:t[1]})):this._autoClosingPairs=[],e.__electricCharacterSupport&&e.__electricCharacterSupport.docComment){const t=e.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new uS({open:t.open,close:t.close||""}))}this._autoCloseBeforeForQuotes=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES,this._autoCloseBeforeForBrackets=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS,this._surroundingPairs=e.surroundingPairs||this._autoClosingPairs}getAutoClosingPairs(){return this._autoClosingPairs}getAutoCloseBeforeSet(e){return e?this._autoCloseBeforeForQuotes:this._autoCloseBeforeForBrackets}getSurroundingPairs(){return this._surroundingPairs}};wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES=`;:.,=}])> + `,wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS=`'"\`;:.,=}])> + `;let ek=wf;function zd(o,e){const t=o.getCount(),i=o.findTokenIndexAtOffset(e),n=o.getLanguageId(i);let s=i;for(;s+10&&o.getLanguageId(r-1)===n;)r--;return new Oz(o,n,r,s+1,o.getStartOffset(r),o.getEndOffset(s))}class Oz{constructor(e,t,i,n,s,r){this._scopedLineTokensBrand=void 0,this._actual=e,this.languageId=t,this._firstTokenIndex=i,this._lastTokenIndex=n,this.firstCharOffset=s,this._lastCharOffset=r,this.languageIdCodec=e.languageIdCodec}getLineContent(){return this._actual.getLineContent().substring(this.firstCharOffset,this._lastCharOffset)}getLineLength(){return this._lastCharOffset-this.firstCharOffset}getActualLineContentBefore(e){return this._actual.getLineContent().substring(0,this.firstCharOffset+e)}getTokenCount(){return this._lastTokenIndex-this._firstTokenIndex}findTokenIndexAtOffset(e){return this._actual.findTokenIndexAtOffset(e+this.firstCharOffset)-this._firstTokenIndex}getStandardTokenType(e){return this._actual.getStandardTokenType(e+this._firstTokenIndex)}toIViewLineTokens(){return this._actual.sliceAndInflate(this.firstCharOffset,this._lastCharOffset,0)}}function Pr(o){return(o&3)!==0}const LR=typeof Buffer<"u";let fS;class lT{static wrap(e){return LR&&!Buffer.isBuffer(e)&&(e=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),new lT(e)}constructor(e){this.buffer=e,this.byteLength=this.buffer.byteLength}toString(){return LR?this.buffer.toString():(fS||(fS=new TextDecoder),fS.decode(this.buffer))}}function Fz(o,e){return o[e+0]<<0>>>0|o[e+1]<<8>>>0}function Bz(o,e,t){o[t+0]=e&255,e=e>>>8,o[t+1]=e&255}function Jo(o,e){return o[e]*2**24+o[e+1]*2**16+o[e+2]*2**8+o[e+3]}function er(o,e,t){o[t+3]=e,e=e>>>8,o[t+2]=e,e=e>>>8,o[t+1]=e,e=e>>>8,o[t]=e}function xR(o,e){return o[e]}function kR(o,e,t){o[t]=e}let gS;function QF(){return gS||(gS=new TextDecoder("UTF-16LE")),gS}let mS;function Wz(){return mS||(mS=new TextDecoder("UTF-16BE")),mS}let pS;function XF(){return pS||(pS=C6()?QF():Wz()),pS}function Hz(o,e,t){const i=new Uint16Array(o.buffer,e,t);return t>0&&(i[0]===65279||i[0]===65534)?Vz(o,e,t):QF().decode(i)}function Vz(o,e,t){const i=[];let n=0;for(let s=0;s=this._capacity){this._flushBuffer(),this._completedStrings[this._completedStrings.length]=e;return}for(let i=0;i[r[0].toLowerCase(),r[1].toLowerCase()]);const t=[];for(let r=0;r{const[l,c]=r,[d,h]=a;return l===d||l===h||c===d||c===h},n=(r,a)=>{const l=Math.min(r,a),c=Math.max(r,a);for(let d=0;d0&&s.push({open:a,close:l})}return s}class Uz{constructor(e,t){this._richEditBracketsBrand=void 0;const i=zz(t);this.brackets=i.map((n,s)=>new vC(e,s,n.open,n.close,$z(n.open,n.close,i,s),Kz(n.open,n.close,i,s))),this.forwardRegex=jz(this.brackets),this.reversedRegex=qz(this.brackets),this.textIsBracket={},this.textIsOpenBracket={},this.maxBracketLength=0;for(const n of this.brackets){for(const s of n.open)this.textIsBracket[s]=n,this.textIsOpenBracket[s]=!0,this.maxBracketLength=Math.max(this.maxBracketLength,s.length);for(const s of n.close)this.textIsBracket[s]=n,this.textIsOpenBracket[s]=!1,this.maxBracketLength=Math.max(this.maxBracketLength,s.length)}}}function JF(o,e,t,i){for(let n=0,s=e.length;n=0&&i.push(a);for(const a of r.close)a.indexOf(o)>=0&&i.push(a)}}function e3(o,e){return o.length-e.length}function $0(o){if(o.length<=1)return o;const e=[],t=new Set;for(const i of o)t.has(i)||(e.push(i),t.add(i));return e}function $z(o,e,t,i){let n=[];n=n.concat(o),n=n.concat(e);for(let s=0,r=n.length;s=0;r--)n[s++]=i.charCodeAt(r);return XF().decode(n)}let e=null,t=null;return function(n){return e!==n&&(e=n,t=o(e)),t}})();class Co{static _findPrevBracketInText(e,t,i,n){const s=i.match(e);if(!s)return null;const r=i.length-(s.index||0),a=s[0].length,l=n+r;return new I(t,l-a+1,t,l+1)}static findPrevBracketInRange(e,t,i,n,s){const a=cT(i).substring(i.length-s,i.length-n);return this._findPrevBracketInText(e,t,a,n)}static findNextBracketInText(e,t,i,n){const s=i.match(e);if(!s)return null;const r=s.index||0,a=s[0].length;if(a===0)return null;const l=n+r;return new I(t,l+1,t,l+1+a)}static findNextBracketInRange(e,t,i,n,s){const r=i.substring(n,s);return this.findNextBracketInText(e,t,r,n)}}class Zz{constructor(e){this._richEditBrackets=e}getElectricCharacters(){const e=[];if(this._richEditBrackets)for(const t of this._richEditBrackets.brackets)for(const i of t.close){const n=i.charAt(i.length-1);e.push(n)}return Eh(e)}onElectricCharacter(e,t,i){if(!this._richEditBrackets||this._richEditBrackets.brackets.length===0)return null;const n=t.findTokenIndexAtOffset(i-1);if(Pr(t.getStandardTokenType(n)))return null;const s=this._richEditBrackets.reversedRegex,r=t.getLineContent().substring(0,i-1)+e,a=Co.findPrevBracketInRange(s,1,r,0,r.length);if(!a)return null;const l=r.substring(a.startColumn-1,a.endColumn-1).toLowerCase();if(this._richEditBrackets.textIsOpenBracket[l])return null;const d=t.getActualLineContentBefore(a.startColumn-1);return/^\s*$/.test(d)?{matchOpenBracket:l}:null}}function Db(o){return o.global&&(o.lastIndex=0),!0}class Yz{constructor(e){this._indentationRules=e}shouldIncrease(e){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&Db(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(e))}shouldDecrease(e){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&Db(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(e))}shouldIndentNextLine(e){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&Db(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(e))}shouldIgnore(e){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&Db(this._indentationRules.unIndentedLinePattern)&&this._indentationRules.unIndentedLinePattern.test(e))}getIndentMetadata(e){let t=0;return this.shouldIncrease(e)&&(t+=1),this.shouldDecrease(e)&&(t+=2),this.shouldIndentNextLine(e)&&(t+=4),this.shouldIgnore(e)&&(t+=8),t}}class Ju{constructor(e){e=e||{},e.brackets=e.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],e.brackets.forEach(t=>{const i=Ju._createOpenBracketRegExp(t[0]),n=Ju._createCloseBracketRegExp(t[1]);i&&n&&this._brackets.push({open:t[0],openRegExp:i,close:t[1],closeRegExp:n})}),this._regExpRules=e.onEnterRules||[]}onEnter(e,t,i,n){if(e>=3)for(let s=0,r=this._regExpRules.length;sc.reg?(c.reg.lastIndex=0,c.reg.test(c.text)):!0))return a.action}if(e>=2&&i.length>0&&n.length>0)for(let s=0,r=this._brackets.length;s=2&&i.length>0){for(let s=0,r=this._brackets.length;s"u"?t:s}function Xz(o){return o.replace(/[\[\]]/g,"")}const qt=He("languageService");class Gr{constructor(e,t=[],i=!1){this.ctor=e,this.staticArguments=t,this.supportsDelayedInstantiation=i}}const n3=[];function Qe(o,e,t){e instanceof Gr||(e=new Gr(e,[],!!t)),n3.push([o,e])}function IR(){return n3}const il=Object.freeze({text:"text/plain",binary:"application/octet-stream",unknown:"application/unknown",markdown:"text/markdown",latex:"text/latex",uriList:"text/uri-list"}),K0={JSONContribution:"base.contributions.json"};function Jz(o){return o.length>0&&o.charAt(o.length-1)==="#"?o.substring(0,o.length-1):o}class eU{constructor(){this._onDidChangeSchema=new A,this.schemasById={}}registerSchema(e,t){this.schemasById[Jz(e)]=t,this._onDidChangeSchema.fire(e)}notifySchemaChanged(e){this._onDidChangeSchema.fire(e)}}const tU=new eU;Bi.add(K0.JSONContribution,tU);const su={Configuration:"base.contributions.configuration"},Ib="vscode://schemas/settings/resourceLanguage",ER=Bi.as(K0.JSONContribution);class iU{constructor(){this.registeredConfigurationDefaults=[],this.overrideIdentifiers=new Set,this._onDidSchemaChange=new A,this._onDidUpdateConfiguration=new A,this.configurationDefaultsOverrides=new Map,this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:m("defaultLanguageConfigurationOverrides.title","Default Language Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultLanguageConfigurationOverridesNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!0,allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.policyConfigurations=new Map,this.excludedConfigurationProperties={},ER.registerSchema(Ib,this.resourceLanguageSettingsSchema),this.registerOverridePropertyPatternKey()}registerConfiguration(e,t=!0){this.registerConfigurations([e],t)}registerConfigurations(e,t=!0){const i=new Set;this.doRegisterConfigurations(e,t,i),ER.registerSchema(Ib,this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:i})}registerDefaultConfigurations(e){const t=new Set;this.doRegisterDefaultConfigurations(e,t),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:t,defaultsOverrides:!0})}doRegisterDefaultConfigurations(e,t){this.registeredConfigurationDefaults.push(...e);const i=[];for(const{overrides:n,source:s}of e)for(const r in n){t.add(r);const a=this.configurationDefaultsOverrides.get(r)??this.configurationDefaultsOverrides.set(r,{configurationDefaultOverrides:[]}).get(r),l=n[r];if(a.configurationDefaultOverrides.push({value:l,source:s}),Pc.test(r)){const c=this.mergeDefaultConfigurationsForOverrideIdentifier(r,l,s,a.configurationDefaultOverrideValue);if(!c)continue;a.configurationDefaultOverrideValue=c,this.updateDefaultOverrideProperty(r,c,s),i.push(...wC(r))}else{const c=this.mergeDefaultConfigurationsForConfigurationProperty(r,l,s,a.configurationDefaultOverrideValue);if(!c)continue;a.configurationDefaultOverrideValue=c;const d=this.configurationProperties[r];d&&(this.updatePropertyDefaultValue(r,d),this.updateSchema(r,d))}}this.doRegisterOverrideIdentifiers(i)}updateDefaultOverrideProperty(e,t,i){const n={type:"object",default:t.value,description:m("defaultLanguageConfiguration.description","Configure settings to be overridden for the {0} language.",Xz(e)),$ref:Ib,defaultDefaultValue:t.value,source:i,defaultValueSource:i};this.configurationProperties[e]=n,this.defaultLanguageConfigurationOverridesNode.properties[e]=n}mergeDefaultConfigurationsForOverrideIdentifier(e,t,i,n){const s=n?.value||{},r=n?.source??new Map;if(!(r instanceof Map)){console.error("objectConfigurationSources is not a Map");return}for(const a of Object.keys(t)){const l=t[a];if(Oi(l)&&(Es(s[a])||Oi(s[a]))){if(s[a]={...s[a]??{},...l},i)for(const d in l)r.set(`${a}.${d}`,i)}else s[a]=l,i?r.set(a,i):r.delete(a)}return{value:s,source:r}}mergeDefaultConfigurationsForConfigurationProperty(e,t,i,n){const s=this.configurationProperties[e],r=n?.value??s?.defaultDefaultValue;let a=i;if(Oi(t)&&(s!==void 0&&s.type==="object"||s===void 0&&(Es(r)||Oi(r)))){if(a=n?.source??new Map,!(a instanceof Map)){console.error("defaultValueSource is not a Map");return}for(const c in t)i&&a.set(`${e}.${c}`,i);t={...Oi(r)?r:{},...t}}return{value:t,source:a}}registerOverrideIdentifiers(e){this.doRegisterOverrideIdentifiers(e),this._onDidSchemaChange.fire()}doRegisterOverrideIdentifiers(e){for(const t of e)this.overrideIdentifiers.add(t);this.updateOverridePropertyPatternKey()}doRegisterConfigurations(e,t,i){e.forEach(n=>{this.validateAndRegisterProperties(n,t,n.extensionInfo,n.restrictedProperties,void 0,i),this.configurationContributors.push(n),this.registerJSONConfiguration(n)})}validateAndRegisterProperties(e,t=!0,i,n,s=3,r){s=xs(e.scope)?s:e.scope;const a=e.properties;if(a)for(const c in a){const d=a[c];if(t&&oU(c,d)){delete a[c];continue}if(d.source=i,d.defaultDefaultValue=a[c].default,this.updatePropertyDefaultValue(c,d),Pc.test(c)?d.scope=void 0:(d.scope=xs(d.scope)?s:d.scope,d.restricted=xs(d.restricted)?!!n?.includes(c):d.restricted),a[c].hasOwnProperty("included")&&!a[c].included){this.excludedConfigurationProperties[c]=a[c],delete a[c];continue}else this.configurationProperties[c]=a[c],a[c].policy?.name&&this.policyConfigurations.set(a[c].policy.name,c);!a[c].deprecationMessage&&a[c].markdownDeprecationMessage&&(a[c].deprecationMessage=a[c].markdownDeprecationMessage),r.add(c)}const l=e.allOf;if(l)for(const c of l)this.validateAndRegisterProperties(c,t,i,n,s,r)}getConfigurationProperties(){return this.configurationProperties}getPolicyConfigurations(){return this.policyConfigurations}registerJSONConfiguration(e){const t=i=>{const n=i.properties;if(n)for(const r in n)this.updateSchema(r,n[r]);i.allOf?.forEach(t)};t(e)}updateSchema(e,t){switch(t.scope){case 1:break;case 2:break;case 6:break;case 3:break;case 4:break;case 5:this.resourceLanguageSettingsSchema.properties[e]=t;break}}updateOverridePropertyPatternKey(){for(const e of this.overrideIdentifiers.values()){const t=`[${e}]`,i={type:"object",description:m("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:m("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:Ib};this.updatePropertyDefaultValue(t,i)}}registerOverridePropertyPatternKey(){m("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),m("overrideSettings.errorMessage","This setting does not support per-language configuration."),this._onDidSchemaChange.fire()}updatePropertyDefaultValue(e,t){const i=this.configurationDefaultsOverrides.get(e)?.configurationDefaultOverrideValue;let n,s;i&&(!t.disallowConfigurationDefault||!i.source)&&(n=i.value,s=i.source),Es(n)&&(n=t.defaultDefaultValue,s=void 0),Es(n)&&(n=sU(t.type)),t.default=n,t.defaultValueSource=s}}const s3="\\[([^\\]]+)\\]",NR=new RegExp(s3,"g"),nU=`^(${s3})+$`,Pc=new RegExp(nU);function wC(o){const e=[];if(Pc.test(o)){let t=NR.exec(o);for(;t?.length;){const i=t[1].trim();i&&e.push(i),t=NR.exec(o)}}return Eh(e)}function sU(o){switch(Array.isArray(o)?o[0]:o){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}const x1=new iU;Bi.add(su.Configuration,x1);function oU(o,e){return o.trim()?Pc.test(o)?m("config.property.languageDefault","Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",o):x1.getConfigurationProperties()[o]!==void 0?m("config.property.duplicate","Cannot register '{0}'. This property is already registered.",o):e.policy?.name&&x1.getPolicyConfigurations().get(e.policy?.name)!==void 0?m("config.policy.duplicate","Cannot register '{0}'. The associated policy {1} is already registered with {2}.",o,e.policy?.name,x1.getPolicyConfigurations().get(e.policy?.name)):null:m("config.property.empty","Cannot register an empty property")}const rU={ModesRegistry:"editor.modesRegistry"};class aU{constructor(){this._onDidChangeLanguages=new A,this.onDidChangeLanguages=this._onDidChangeLanguages.event,this._languages=[]}registerLanguage(e){return this._languages.push(e),this._onDidChangeLanguages.fire(void 0),{dispose:()=>{for(let t=0,i=this._languages.length;t{const l=new Set;return{info:new dU(this,a,l),closing:l}}),s=new XM(a=>{const l=new Set,c=new Set;return{info:new hU(this,a,l,c),opening:l,openingColorized:c}});for(const[a,l]of i){const c=n.get(a),d=s.get(l);c.closing.add(d.info),d.opening.add(c.info)}const r=t.colorizedBracketPairs?TR(t.colorizedBracketPairs):i.filter(a=>!(a[0]==="<"&&a[1]===">"));for(const[a,l]of r){const c=n.get(a),d=s.get(l);c.closing.add(d.info),d.openingColorized.add(c.info),d.opening.add(c.info)}this._openingBrackets=new Map([...n.cachedValues].map(([a,l])=>[a,l.info])),this._closingBrackets=new Map([...s.cachedValues].map(([a,l])=>[a,l.info]))}get openingBrackets(){return[...this._openingBrackets.values()]}get closingBrackets(){return[...this._closingBrackets.values()]}getOpeningBracketInfo(e){return this._openingBrackets.get(e)}getClosingBracketInfo(e){return this._closingBrackets.get(e)}getBracketInfo(e){return this.getOpeningBracketInfo(e)||this.getClosingBracketInfo(e)}getBracketRegExp(e){const t=Array.from([...this._openingBrackets.keys(),...this._closingBrackets.keys()]);return j_(t,e)}}function TR(o){return o.filter(([e,t])=>e!==""&&t!=="")}class o3{constructor(e,t){this.config=e,this.bracketText=t}get languageId(){return this.config.languageId}}class dU extends o3{constructor(e,t,i){super(e,t),this.openedBrackets=i,this.isOpeningBracket=!0}}class hU extends o3{constructor(e,t,i,n){super(e,t),this.openingBrackets=i,this.openingColorizedBrackets=n,this.isOpeningBracket=!1}closes(e){return e.config!==this.config?!1:this.openingBrackets.has(e)}closesColorized(e){return e.config!==this.config?!1:this.openingColorizedBrackets.has(e)}getOpeningBrackets(){return[...this.openingBrackets]}}var uU=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},MR=function(o,e){return function(t,i){e(t,i,o)}};class _S{constructor(e){this.languageId=e}affects(e){return this.languageId?this.languageId===e:!0}}const Gn=He("languageConfigurationService");let ik=class extends z{constructor(e,t){super(),this.configurationService=e,this.languageService=t,this._registry=this._register(new pU),this.onDidChangeEmitter=this._register(new A),this.onDidChange=this.onDidChangeEmitter.event,this.configurations=new Map;const i=new Set(Object.values(nk));this._register(this.configurationService.onDidChangeConfiguration(n=>{const s=n.change.keys.some(a=>i.has(a)),r=n.change.overrides.filter(([a,l])=>l.some(c=>i.has(c))).map(([a])=>a);if(s)this.configurations.clear(),this.onDidChangeEmitter.fire(new _S(void 0));else for(const a of r)this.languageService.isRegisteredLanguageId(a)&&(this.configurations.delete(a),this.onDidChangeEmitter.fire(new _S(a)))})),this._register(this._registry.onDidChange(n=>{this.configurations.delete(n.languageId),this.onDidChangeEmitter.fire(new _S(n.languageId))}))}register(e,t,i){return this._registry.register(e,t,i)}getLanguageConfiguration(e){let t=this.configurations.get(e);return t||(t=fU(e,this._registry,this.configurationService,this.languageService),this.configurations.set(e,t)),t}};ik=uU([MR(0,lt),MR(1,qt)],ik);function fU(o,e,t,i){let n=e.getLanguageConfiguration(o);if(!n){if(!i.isRegisteredLanguageId(o))return new Pf(o,{});n=new Pf(o,{})}const s=gU(n.languageId,t),r=a3([n.underlyingConfig,s]);return new Pf(n.languageId,r)}const nk={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function gU(o,e){const t=e.getValue(nk.brackets,{overrideIdentifier:o}),i=e.getValue(nk.colorizedBracketPairs,{overrideIdentifier:o});return{brackets:RR(t),colorizedBracketPairs:RR(i)}}function RR(o){if(Array.isArray(o))return o.map(e=>{if(!(!Array.isArray(e)||e.length!==2))return[e[0],e[1]]}).filter(e=>!!e)}function r3(o,e,t){const i=o.getLineContent(e);let n=pi(i);return n.length>t-1&&(n=n.substring(0,t-1)),n}class mU{constructor(e){this.languageId=e,this._resolved=null,this._entries=[],this._order=0,this._resolved=null}register(e,t){const i=new AR(e,t,++this._order);return this._entries.push(i),this._resolved=null,_e(()=>{for(let n=0;ne.configuration)))}}function a3(o){let e={comments:void 0,brackets:void 0,wordPattern:void 0,indentationRules:void 0,onEnterRules:void 0,autoClosingPairs:void 0,surroundingPairs:void 0,autoCloseBefore:void 0,folding:void 0,colorizedBracketPairs:void 0,__electricCharacterSupport:void 0};for(const t of o)e={comments:t.comments||e.comments,brackets:t.brackets||e.brackets,wordPattern:t.wordPattern||e.wordPattern,indentationRules:t.indentationRules||e.indentationRules,onEnterRules:t.onEnterRules||e.onEnterRules,autoClosingPairs:t.autoClosingPairs||e.autoClosingPairs,surroundingPairs:t.surroundingPairs||e.surroundingPairs,autoCloseBefore:t.autoCloseBefore||e.autoCloseBefore,folding:t.folding||e.folding,colorizedBracketPairs:t.colorizedBracketPairs||e.colorizedBracketPairs,__electricCharacterSupport:t.__electricCharacterSupport||e.__electricCharacterSupport};return e}class AR{constructor(e,t,i){this.configuration=e,this.priority=t,this.order=i}static cmp(e,t){return e.priority===t.priority?e.order-t.order:e.priority-t.priority}}class PR{constructor(e){this.languageId=e}}class pU extends z{constructor(){super(),this._entries=new Map,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._register(this.register(Bs,{brackets:[["(",")"],["[","]"],["{","}"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],colorizedBracketPairs:[],folding:{offSide:!0}},0))}register(e,t,i=0){let n=this._entries.get(e);n||(n=new mU(e),this._entries.set(e,n));const s=n.register(t,i);return this._onDidChange.fire(new PR(e)),_e(()=>{s.dispose(),this._onDidChange.fire(new PR(e))})}getLanguageConfiguration(e){return this._entries.get(e)?.getResolvedConfiguration()||null}}class Pf{constructor(e,t){this.languageId=e,this.underlyingConfig=t,this._brackets=null,this._electricCharacter=null,this._onEnterSupport=this.underlyingConfig.brackets||this.underlyingConfig.indentationRules||this.underlyingConfig.onEnterRules?new Ju(this.underlyingConfig):null,this.comments=Pf._handleComments(this.underlyingConfig),this.characterPair=new ek(this.underlyingConfig),this.wordDefinition=this.underlyingConfig.wordPattern||EN,this.indentationRules=this.underlyingConfig.indentationRules,this.underlyingConfig.indentationRules?this.indentRulesSupport=new Yz(this.underlyingConfig.indentationRules):this.indentRulesSupport=null,this.foldingRules=this.underlyingConfig.folding||{},this.bracketsNew=new cU(e,this.underlyingConfig)}getWordDefinition(){return NN(this.wordDefinition)}get brackets(){return!this._brackets&&this.underlyingConfig.brackets&&(this._brackets=new Uz(this.languageId,this.underlyingConfig.brackets)),this._brackets}get electricCharacter(){return this._electricCharacter||(this._electricCharacter=new Zz(this.brackets)),this._electricCharacter}onEnter(e,t,i,n){return this._onEnterSupport?this._onEnterSupport.onEnter(e,t,i,n):null}getAutoClosingPairs(){return new Pz(this.characterPair.getAutoClosingPairs())}getAutoCloseBeforeSet(e){return this.characterPair.getAutoCloseBeforeSet(e)}getSurroundingPairs(){return this.characterPair.getSurroundingPairs()}static _handleComments(e){const t=e.comments;if(!t)return null;const i={};if(t.lineComment&&(i.lineCommentToken=t.lineComment),t.blockComment){const[n,s]=t.blockComment;i.blockCommentStartToken=n,i.blockCommentEndToken=s}return i}}Qe(Gn,ik,1);class $l{constructor(e,t,i,n){this.originalStart=e,this.originalLength=t,this.modifiedStart=i,this.modifiedLength=n}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}class OR{constructor(e){this.source=e}getElements(){const e=this.source,t=new Int32Array(e.length);for(let i=0,n=e.length;i0||this.m_modifiedCount>0)&&this.m_changes.push(new $l(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824}AddOriginalElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_originalCount++}AddModifiedElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_modifiedCount++}getChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes}getReverseChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes}}class Yr{constructor(e,t,i=null){this.ContinueProcessingPredicate=i,this._originalSequence=e,this._modifiedSequence=t;const[n,s,r]=Yr._getElements(e),[a,l,c]=Yr._getElements(t);this._hasStrings=r&&c,this._originalStringElements=n,this._originalElementsOrHash=s,this._modifiedStringElements=a,this._modifiedElementsOrHash=l,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(e){return e.length>0&&typeof e[0]=="string"}static _getElements(e){const t=e.getElements();if(Yr._isStringArray(t)){const i=new Int32Array(t.length);for(let n=0,s=t.length;n=e&&n>=i&&this.ElementsAreEqual(t,n);)t--,n--;if(e>t||i>n){let h;return i<=n?(ku.Assert(e===t+1,"originalStart should only be one more than originalEnd"),h=[new $l(e,0,i,n-i+1)]):e<=t?(ku.Assert(i===n+1,"modifiedStart should only be one more than modifiedEnd"),h=[new $l(e,t-e+1,i,0)]):(ku.Assert(e===t+1,"originalStart should only be one more than originalEnd"),ku.Assert(i===n+1,"modifiedStart should only be one more than modifiedEnd"),h=[]),h}const r=[0],a=[0],l=this.ComputeRecursionPoint(e,t,i,n,r,a,s),c=r[0],d=a[0];if(l!==null)return l;if(!s[0]){const h=this.ComputeDiffRecursive(e,c,i,d,s);let u=[];return s[0]?u=[new $l(c+1,t-(c+1)+1,d+1,n-(d+1)+1)]:u=this.ComputeDiffRecursive(c+1,t,d+1,n,s),this.ConcatenateChanges(h,u)}return[new $l(e,t-e+1,i,n-i+1)]}WALKTRACE(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_,b,C){let w=null,v=null,y=new FR,x=t,L=i,E=f[0]-_[0]-n,N=-1073741824,H=this.m_forwardHistory.length-1;do{const F=E+e;F===x||F=0&&(c=this.m_forwardHistory[H],e=c[0],x=1,L=c.length-1)}while(--H>=-1);if(w=y.getReverseChanges(),C[0]){let F=f[0]+1,W=_[0]+1;if(w!==null&&w.length>0){const j=w[w.length-1];F=Math.max(F,j.getOriginalEnd()),W=Math.max(W,j.getModifiedEnd())}v=[new $l(F,u-F+1,W,p-W+1)]}else{y=new FR,x=r,L=a,E=f[0]-_[0]-l,N=1073741824,H=b?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const F=E+s;F===x||F=d[F+1]?(h=d[F+1]-1,g=h-E-l,h>N&&y.MarkNextChange(),N=h+1,y.AddOriginalElement(h+1,g+1),E=F+1-s):(h=d[F-1],g=h-E-l,h>N&&y.MarkNextChange(),N=h,y.AddModifiedElement(h+1,g+1),E=F-1-s),H>=0&&(d=this.m_reverseHistory[H],s=d[0],x=1,L=d.length-1)}while(--H>=-1);v=y.getChanges()}return this.ConcatenateChanges(w,v)}ComputeRecursionPoint(e,t,i,n,s,r,a){let l=0,c=0,d=0,h=0,u=0,f=0;e--,i--,s[0]=0,r[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];const g=t-e+(n-i),p=g+1,_=new Int32Array(p),b=new Int32Array(p),C=n-i,w=t-e,v=e-i,y=t-n,L=(w-C)%2===0;_[C]=e,b[w]=t,a[0]=!1;for(let E=1;E<=g/2+1;E++){let N=0,H=0;d=this.ClipDiagonalBound(C-E,E,C,p),h=this.ClipDiagonalBound(C+E,E,C,p);for(let W=d;W<=h;W+=2){W===d||WN+H&&(N=l,H=c),!L&&Math.abs(W-w)<=E-1&&l>=b[W])return s[0]=l,r[0]=c,j<=b[W]&&E<=1448?this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a):null}const F=(N-e+(H-i)-E)/2;if(this.ContinueProcessingPredicate!==null&&!this.ContinueProcessingPredicate(N,F))return a[0]=!0,s[0]=N,r[0]=H,F>0&&E<=1448?this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a):(e++,i++,[new $l(e,t-e+1,i,n-i+1)]);u=this.ClipDiagonalBound(w-E,E,w,p),f=this.ClipDiagonalBound(w+E,E,w,p);for(let W=u;W<=f;W+=2){W===u||W=b[W+1]?l=b[W+1]-1:l=b[W-1],c=l-(W-w)-y;const j=l;for(;l>e&&c>i&&this.ElementsAreEqual(l,c);)l--,c--;if(b[W]=l,L&&Math.abs(W-C)<=E&&l<=_[W])return s[0]=l,r[0]=c,j>=_[W]&&E<=1448?this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a):null}if(E<=1447){let W=new Int32Array(h-d+2);W[0]=C-d+1,Du.Copy2(_,d,W,1,h-d+1),this.m_forwardHistory.push(W),W=new Int32Array(f-u+2),W[0]=w-u+1,Du.Copy2(b,u,W,1,f-u+1),this.m_reverseHistory.push(W)}}return this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a)}PrettifyChanges(e){for(let t=0;t0,a=i.modifiedLength>0;for(;i.originalStart+i.originalLength=0;t--){const i=e[t];let n=0,s=0;if(t>0){const h=e[t-1];n=h.originalStart+h.originalLength,s=h.modifiedStart+h.modifiedLength}const r=i.originalLength>0,a=i.modifiedLength>0;let l=0,c=this._boundaryScore(i.originalStart,i.originalLength,i.modifiedStart,i.modifiedLength);for(let h=1;;h++){const u=i.originalStart-h,f=i.modifiedStart-h;if(uc&&(c=p,l=h)}i.originalStart-=l,i.modifiedStart-=l;const d=[null];if(t>0&&this.ChangesOverlap(e[t-1],e[t],d)){e[t-1]=d[0],e.splice(t,1),t++;continue}}if(this._hasStrings)for(let t=1,i=e.length;t0&&f>l&&(l=f,c=h,d=u)}return l>0?[c,d]:null}_contiguousSequenceScore(e,t,i){let n=0;for(let s=0;s=this._originalElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._originalStringElements[e])}_OriginalRegionIsBoundary(e,t){if(this._OriginalIsBoundary(e)||this._OriginalIsBoundary(e-1))return!0;if(t>0){const i=e+t;if(this._OriginalIsBoundary(i-1)||this._OriginalIsBoundary(i))return!0}return!1}_ModifiedIsBoundary(e){return e<=0||e>=this._modifiedElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[e])}_ModifiedRegionIsBoundary(e,t){if(this._ModifiedIsBoundary(e)||this._ModifiedIsBoundary(e-1))return!0;if(t>0){const i=e+t;if(this._ModifiedIsBoundary(i-1)||this._ModifiedIsBoundary(i))return!0}return!1}_boundaryScore(e,t,i,n){const s=this._OriginalRegionIsBoundary(e,t)?1:0,r=this._ModifiedRegionIsBoundary(i,n)?1:0;return s+r}ConcatenateChanges(e,t){const i=[];if(e.length===0||t.length===0)return t.length>0?t:e;if(this.ChangesOverlap(e[e.length-1],t[0],i)){const n=new Array(e.length+t.length-1);return Du.Copy(e,0,n,0,e.length-1),n[e.length-1]=i[0],Du.Copy(t,1,n,e.length,t.length-1),n}else{const n=new Array(e.length+t.length);return Du.Copy(e,0,n,0,e.length),Du.Copy(t,0,n,e.length,t.length),n}}ChangesOverlap(e,t,i){if(ku.Assert(e.originalStart<=t.originalStart,"Left change is not less than or equal to right change"),ku.Assert(e.modifiedStart<=t.modifiedStart,"Left change is not less than or equal to right change"),e.originalStart+e.originalLength>=t.originalStart||e.modifiedStart+e.modifiedLength>=t.modifiedStart){const n=e.originalStart;let s=e.originalLength;const r=e.modifiedStart;let a=e.modifiedLength;return e.originalStart+e.originalLength>=t.originalStart&&(s=t.originalStart+t.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=t.modifiedStart&&(a=t.modifiedStart+t.modifiedLength-e.modifiedStart),i[0]=new $l(n,s,r,a),!0}else return i[0]=null,!1}ClipDiagonalBound(e,t,i,n){if(e>=0&&e255?255:o|0}function Iu(o){return o<0?0:o>4294967295?4294967295:o|0}class Wg{constructor(e){const t=yC(e);this._defaultValue=t,this._asciiMap=Wg._createAsciiMap(t),this._map=new Map}static _createAsciiMap(e){const t=new Uint8Array(256);return t.fill(e),t}set(e,t){const i=yC(t);e>=0&&e<256?this._asciiMap[e]=i:this._map.set(e,i)}get(e){return e>=0&&e<256?this._asciiMap[e]:this._map.get(e)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class bU{constructor(){this._actual=new Wg(0)}add(e){this._actual.set(e,1)}has(e){return this._actual.get(e)===1}clear(){return this._actual.clear()}}class CU{constructor(e,t,i){const n=new Uint8Array(e*t);for(let s=0,r=e*t;st&&(t=l),a>i&&(i=a),c>i&&(i=c)}t++,i++;const n=new CU(i,t,0);for(let s=0,r=e.length;s=this._maxCharCode?0:this._states.get(e,t)}}let bS=null;function wU(){return bS===null&&(bS=new vU([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),bS}let dm=null;function yU(){if(dm===null){dm=new Wg(0);const o=` <>'"、。。、,.:;‘〈「『〔([{「」}])〕』」〉’`~…`;for(let t=0;tn);if(n>0){const a=t.charCodeAt(n-1),l=t.charCodeAt(r);(a===40&&l===41||a===91&&l===93||a===123&&l===125)&&r--}return{range:{startLineNumber:i,startColumn:n+1,endLineNumber:i,endColumn:r+2},url:t.substring(n,r+1)}}static computeLinks(e,t=wU()){const i=yU(),n=[];for(let s=1,r=e.getLineCount();s<=r;s++){const a=e.getLineContent(s),l=a.length;let c=0,d=0,h=0,u=1,f=!1,g=!1,p=!1,_=!1;for(;c=0?(n+=i?1:-1,n<0?n=e.length-1:n%=e.length,e[n]):null}};Dw.INSTANCE=new Dw;let sk=Dw;const Dp=class Dp{static getChannel(e){return e.getChannel(Dp.CHANNEL_NAME)}static setChannel(e,t){e.setChannel(Dp.CHANNEL_NAME,t)}};Dp.CHANNEL_NAME="editorWorkerHost";let ok=Dp;var BR,WR;class LU{constructor(e,t){this.uri=e,this.value=t}}function xU(o){return Array.isArray(o)}const Pd=class Pd{constructor(e,t){if(this[BR]="ResourceMap",e instanceof Pd)this.map=new Map(e.map),this.toKey=t??Pd.defaultToKey;else if(xU(e)){this.map=new Map,this.toKey=t??Pd.defaultToKey;for(const[i,n]of e)this.set(i,n)}else this.map=new Map,this.toKey=e??Pd.defaultToKey}set(e,t){return this.map.set(this.toKey(e),new LU(e,t)),this}get(e){return this.map.get(this.toKey(e))?.value}has(e){return this.map.has(this.toKey(e))}get size(){return this.map.size}clear(){this.map.clear()}delete(e){return this.map.delete(this.toKey(e))}forEach(e,t){typeof t<"u"&&(e=e.bind(t));for(const[i,n]of this.map)e(n.value,n.uri,this)}*values(){for(const e of this.map.values())yield e.value}*keys(){for(const e of this.map.values())yield e.uri}*entries(){for(const e of this.map.values())yield[e.uri,e.value]}*[(BR=Symbol.toStringTag,Symbol.iterator)](){for(const[,e]of this.map)yield[e.uri,e.value]}};Pd.defaultToKey=e=>e.toString();let cs=Pd;class kU{constructor(){this[WR]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,t=0){const i=this._map.get(e);if(i)return t!==0&&this.touch(i,t),i.value}set(e,t,i=0){let n=this._map.get(e);if(n)n.value=t,i!==0&&this.touch(n,i);else{switch(n={key:e,value:t,next:void 0,previous:void 0},i){case 0:this.addItemLast(n);break;case 1:this.addItemFirst(n);break;case 2:this.addItemLast(n);break;default:this.addItemLast(n);break}this._map.set(e,n),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){const t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){const i=this._state;let n=this._head;for(;n;){if(t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),this._state!==i)throw new Error("LinkedMap got modified during iteration.");n=n.next}}keys(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:i.key,done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}values(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:i.value,done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}entries(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:[i.key,i.value],done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}[(WR=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._head,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.next,i--;this._head=t,this._size=i,t&&(t.previous=void 0),this._state++}trimNew(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._tail,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.previous,i--;this._tail=t,this._size=i,t&&(t.next=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw new Error("Invalid list");this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw new Error("Invalid list");this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{const t=e.next,i=e.previous;if(!t||!i)throw new Error("Invalid list");t.previous=i,i.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,t){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(t!==1&&t!==2)){if(t===1){if(e===this._head)return;const i=e.next,n=e.previous;e===this._tail?(n.next=void 0,this._tail=n):(i.previous=n,n.next=i),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(t===2){if(e===this._tail)return;const i=e.next,n=e.previous;e===this._head?(i.previous=void 0,this._head=i):(i.previous=n,n.next=i),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){const e=[];return this.forEach((t,i)=>{e.push([i,t])}),e}fromJSON(e){this.clear();for(const[t,i]of e)this.set(t,i)}}class DU extends kU{constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get(e,t=2){return super.get(e,t)}peek(e){return super.get(e,0)}set(e,t){return super.set(e,t,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}class ou extends DU{constructor(e,t=1){super(e,t)}trim(e){this.trimOld(e)}set(e,t){return super.set(e,t),this.checkTrim(),this}}class IU{constructor(e){if(this._m1=new Map,this._m2=new Map,e)for(const[t,i]of e)this.set(t,i)}clear(){this._m1.clear(),this._m2.clear()}set(e,t){this._m1.set(e,t),this._m2.set(t,e)}get(e){return this._m1.get(e)}getKey(e){return this._m2.get(e)}delete(e){const t=this._m1.get(e);return t===void 0?!1:(this._m1.delete(e),this._m2.delete(t),!0)}keys(){return this._m1.keys()}values(){return this._m1.values()}}class dT{constructor(){this.map=new Map}add(e,t){let i=this.map.get(e);i||(i=new Set,this.map.set(e,i)),i.add(t)}delete(e,t){const i=this.map.get(e);i&&(i.delete(t),i.size===0&&this.map.delete(e))}forEach(e,t){const i=this.map.get(e);i&&i.forEach(t)}get(e){const t=this.map.get(e);return t||new Set}}class EU extends Wg{constructor(e,t){super(0),this._segmenter=null,this._cachedLine=null,this._cachedSegments=[],this.intlSegmenterLocales=t,this.intlSegmenterLocales.length>0?this._segmenter=new Intl.Segmenter(this.intlSegmenterLocales,{granularity:"word"}):this._segmenter=null;for(let i=0,n=e.length;it)break;i=n}return i}findNextIntlWordAtOrAfterOffset(e,t){for(const i of this._getIntlSegmenterWordsOnLine(e))if(!(i.index=0;let t=null;try{t=uF(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:e,global:!0,unicode:!0})}catch{return null}if(!t)return null;let i=!this.isRegex&&!e;return i&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(i=this.matchCase),new TU(t,this.wordSeparators?cg(this.wordSeparators,[]):null,i?this.searchString:null)}}function PU(o){if(!o||o.length===0)return!1;for(let e=0,t=o.length;e=t)break;const n=o.charCodeAt(e);if(n===110||n===114||n===87)return!0}}return!1}function bd(o,e,t){if(!t)return new Qp(o,null);const i=[];for(let n=0,s=e.length;n>0);t[s]>=e?n=s-1:t[s+1]>=e?(i=s,n=s):i=s+1}return i+1}}class Eb{static findMatches(e,t,i,n,s){const r=t.parseSearchRequest();return r?r.regex.multiline?this._doFindMatchesMultiline(e,i,new ef(r.wordSeparators,r.regex),n,s):this._doFindMatchesLineByLine(e,i,r,n,s):[]}static _getMultilineMatchRange(e,t,i,n,s,r){let a,l=0;n?(l=n.findLineFeedCountBeforeOffset(s),a=t+s+l):a=t+s;let c;if(n){const f=n.findLineFeedCountBeforeOffset(s+r.length)-l;c=a+r.length+f}else c=a+r.length;const d=e.getPositionAt(a),h=e.getPositionAt(c);return new I(d.lineNumber,d.column,h.lineNumber,h.column)}static _doFindMatchesMultiline(e,t,i,n,s){const r=e.getOffsetAt(t.getStartPosition()),a=e.getValueInRange(t,1),l=e.getEOL()===`\r +`?new VR(a):null,c=[];let d=0,h;for(i.reset(0);h=i.next(a);)if(c[d++]=bd(this._getMultilineMatchRange(e,r,a,l,h.index,h[0]),h,n),d>=s)return c;return c}static _doFindMatchesLineByLine(e,t,i,n,s){const r=[];let a=0;if(t.startLineNumber===t.endLineNumber){const c=e.getLineContent(t.startLineNumber).substring(t.startColumn-1,t.endColumn-1);return a=this._findMatchesInLine(i,c,t.startLineNumber,t.startColumn-1,a,r,n,s),r}const l=e.getLineContent(t.startLineNumber).substring(t.startColumn-1);a=this._findMatchesInLine(i,l,t.startLineNumber,t.startColumn-1,a,r,n,s);for(let c=t.startLineNumber+1;c=l))return s;return s}const d=new ef(e.wordSeparators,e.regex);let h;d.reset(0);do if(h=d.next(t),h&&(r[s++]=bd(new I(i,h.index+1+n,i,h.index+1+h[0].length+n),h,a),s>=l))return s;while(h);return s}static findNextMatch(e,t,i,n){const s=t.parseSearchRequest();if(!s)return null;const r=new ef(s.wordSeparators,s.regex);return s.regex.multiline?this._doFindNextMatchMultiline(e,i,r,n):this._doFindNextMatchLineByLine(e,i,r,n)}static _doFindNextMatchMultiline(e,t,i,n){const s=new P(t.lineNumber,1),r=e.getOffsetAt(s),a=e.getLineCount(),l=e.getValueInRange(new I(s.lineNumber,s.column,a,e.getLineMaxColumn(a)),1),c=e.getEOL()===`\r +`?new VR(l):null;i.reset(t.column-1);const d=i.next(l);return d?bd(this._getMultilineMatchRange(e,r,l,c,d.index,d[0]),d,n):t.lineNumber!==1||t.column!==1?this._doFindNextMatchMultiline(e,new P(1,1),i,n):null}static _doFindNextMatchLineByLine(e,t,i,n){const s=e.getLineCount(),r=t.lineNumber,a=e.getLineContent(r),l=this._findFirstMatchInLine(i,a,r,t.column,n);if(l)return l;for(let c=1;c<=s;c++){const d=(r+c-1)%s,h=e.getLineContent(d+1),u=this._findFirstMatchInLine(i,h,d+1,1,n);if(u)return u}return null}static _findFirstMatchInLine(e,t,i,n,s){e.reset(n-1);const r=e.next(t);return r?bd(new I(i,r.index+1,i,r.index+1+r[0].length),r,s):null}static findPreviousMatch(e,t,i,n){const s=t.parseSearchRequest();if(!s)return null;const r=new ef(s.wordSeparators,s.regex);return s.regex.multiline?this._doFindPreviousMatchMultiline(e,i,r,n):this._doFindPreviousMatchLineByLine(e,i,r,n)}static _doFindPreviousMatchMultiline(e,t,i,n){const s=this._doFindMatchesMultiline(e,new I(1,1,t.lineNumber,t.column),i,n,10*AU);if(s.length>0)return s[s.length-1];const r=e.getLineCount();return t.lineNumber!==r||t.column!==e.getLineMaxColumn(r)?this._doFindPreviousMatchMultiline(e,new P(r,e.getLineMaxColumn(r)),i,n):null}static _doFindPreviousMatchLineByLine(e,t,i,n){const s=e.getLineCount(),r=t.lineNumber,a=e.getLineContent(r).substring(0,t.column-1),l=this._findLastMatchInLine(i,a,r,n);if(l)return l;for(let c=1;c<=s;c++){const d=(s+r-c-1)%s,h=e.getLineContent(d+1),u=this._findLastMatchInLine(i,h,d+1,n);if(u)return u}return null}static _findLastMatchInLine(e,t,i,n){let s=null,r;for(e.reset(0);r=e.next(t);)s=bd(new I(i,r.index+1,i,r.index+1+r[0].length),r,n);return s}}function OU(o,e,t,i,n){if(i===0)return!0;const s=e.charCodeAt(i-1);if(o.get(s)!==0||s===13||s===10)return!0;if(n>0){const r=e.charCodeAt(i);if(o.get(r)!==0)return!0}return!1}function FU(o,e,t,i,n){if(i+n===t)return!0;const s=e.charCodeAt(i+n);if(o.get(s)!==0||s===13||s===10)return!0;if(n>0){const r=e.charCodeAt(i+n-1);if(o.get(r)!==0)return!0}return!1}function hT(o,e,t,i,n){return OU(o,e,t,i,n)&&FU(o,e,t,i,n)}class ef{constructor(e,t){this._wordSeparators=e,this._searchRegex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(e){this._searchRegex.lastIndex=e,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(e){const t=e.length;let i;do{if(this._prevMatchStartIndex+this._prevMatchLength===t||(i=this._searchRegex.exec(e),!i))return null;const n=i.index,s=i[0].length;if(n===this._prevMatchStartIndex&&s===this._prevMatchLength){if(s===0){uC(e,t,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=n,this._prevMatchLength=s,!this._wordSeparators||hT(this._wordSeparators,e,t,n,s))return i}while(i);return null}}class BU{static computeUnicodeHighlights(e,t,i){const n=i?i.startLineNumber:1,s=i?i.endLineNumber:e.getLineCount(),r=new zR(t),a=r.getCandidateCodePoints();let l;a==="allNonBasicAscii"?l=new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):l=new RegExp(`${WU(Array.from(a))}`,"g");const c=new ef(null,l),d=[];let h=!1,u,f=0,g=0,p=0;e:for(let _=n,b=s;_<=b;_++){const C=e.getLineContent(_),w=C.length;c.reset(0);do if(u=c.next(C),u){let v=u.index,y=u.index+u[0].length;if(v>0){const N=C.charCodeAt(v-1);wi(N)&&v--}if(y+1=1e3){h=!0;break e}d.push(new I(_,v+1,_,y+1))}}while(u)}return{ranges:d,hasMore:h,ambiguousCharacterCount:f,invisibleCharacterCount:g,nonBasicAsciiCharacterCount:p}}static computeUnicodeHighlightReason(e,t){const i=new zR(t);switch(i.shouldHighlightNonBasicASCII(e,null)){case 0:return null;case 2:return{kind:1};case 3:{const s=e.codePointAt(0),r=i.ambiguousCharacters.getPrimaryConfusable(s),a=jp.getLocales().filter(l=>!jp.getInstance(new Set([...t.allowedLocales,l])).isAmbiguous(s));return{kind:0,confusableWith:String.fromCodePoint(r),notAmbiguousInLocales:a}}case 1:return{kind:2}}}}function WU(o,e){return`[${xl(o.map(i=>String.fromCodePoint(i)).join(""))}]`}class zR{constructor(e){this.options=e,this.allowedCodePoints=new Set(e.allowedCodePoints),this.ambiguousCharacters=jp.getInstance(new Set(e.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";const e=new Set;if(this.options.invisibleCharacters)for(const t of jm.codePoints)UR(String.fromCodePoint(t))||e.add(t);if(this.options.ambiguousCharacters)for(const t of this.ambiguousCharacters.getConfusableCodePoints())e.add(t);for(const t of this.allowedCodePoints)e.delete(t);return e}shouldHighlightNonBasicASCII(e,t){const i=e.codePointAt(0);if(this.allowedCodePoints.has(i))return 0;if(this.options.nonBasicASCII)return 1;let n=!1,s=!1;if(t)for(const r of t){const a=r.codePointAt(0),l=D0(r);n=n||l,!l&&!this.ambiguousCharacters.isAmbiguous(a)&&!jm.isInvisibleCharacter(a)&&(s=!0)}return!n&&s?0:this.options.invisibleCharacters&&!UR(e)&&jm.isInvisibleCharacter(i)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(i)?3:0}}function UR(o){return o===" "||o===` +`||o===" "}class D1{constructor(e,t,i){this.changes=e,this.moves=t,this.hitTimeout=i}}class l3{constructor(e,t){this.lineRangeMapping=e,this.changes=t}}class Re{static addRange(e,t){let i=0;for(;it))return new Re(e,t)}static ofLength(e){return new Re(0,e)}static ofStartAndLength(e,t){return new Re(e,e+t)}constructor(e,t){if(this.start=e,this.endExclusive=t,e>t)throw new nt(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(e){return new Re(this.start+e,this.endExclusive+e)}deltaStart(e){return new Re(this.start+e,this.endExclusive)}deltaEnd(e){return new Re(this.start,this.endExclusive+e)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}contains(e){return this.start<=e&&e=e.endExclusive}slice(e){return e.slice(this.start,this.endExclusive)}substring(e){return e.substring(this.start,this.endExclusive)}clip(e){if(this.isEmpty)throw new nt(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,e))}clipCyclic(e){if(this.isEmpty)throw new nt(`Invalid clipping range: ${this.toString()}`);return e=this.endExclusive?this.start+(e-this.start)%this.length:e}forEach(e){for(let t=this.start;te.toString()).join(", ")}intersectsStrict(e){let t=0;for(;te+t.length,0)}}function xC(o,e){const t=HU(o,e);if(t!==-1)return o[t]}function HU(o,e,t=o.length-1){for(let i=t;i>=0;i--){const n=o[i];if(e(n))return i}return-1}function dg(o,e){const t=Xp(o,e);return t===-1?void 0:o[t]}function Xp(o,e,t=0,i=o.length){let n=t,s=i;for(;n0&&(t=n)}return t}function zU(o,e){if(o.length===0)return;let t=o[0];for(let i=1;i=0&&(t=n)}return t}function UU(o,e){return fT(o,(t,i)=>-e(t,i))}function $U(o,e){if(o.length===0)return-1;let t=0;for(let i=1;i0&&(t=i)}return t}function KU(o,e){for(const t of o){const i=e(t);if(i!==void 0)return i}}let xe=class Wa{static fromRangeInclusive(e){return new Wa(e.startLineNumber,e.endLineNumber+1)}static joinMany(e){if(e.length===0)return[];let t=new to(e[0].slice());for(let i=1;it)throw new nt(`startLineNumber ${e} cannot be after endLineNumberExclusive ${t}`);this.startLineNumber=e,this.endLineNumberExclusive=t}contains(e){return this.startLineNumber<=e&&en.endLineNumberExclusive>=e.startLineNumber),i=Xp(this._normalizedRanges,n=>n.startLineNumber<=e.endLineNumberExclusive)+1;if(t===i)this._normalizedRanges.splice(t,0,e);else if(t===i-1){const n=this._normalizedRanges[t];this._normalizedRanges[t]=n.join(e)}else{const n=this._normalizedRanges[t].join(this._normalizedRanges[i-1]).join(e);this._normalizedRanges.splice(t,i-t,n)}}contains(e){const t=dg(this._normalizedRanges,i=>i.startLineNumber<=e);return!!t&&t.endLineNumberExclusive>e}intersects(e){const t=dg(this._normalizedRanges,i=>i.startLineNumbere.startLineNumber}getUnion(e){if(this._normalizedRanges.length===0)return e;if(e._normalizedRanges.length===0)return this;const t=[];let i=0,n=0,s=null;for(;i=r.startLineNumber?s=new xe(s.startLineNumber,Math.max(s.endLineNumberExclusive,r.endLineNumberExclusive)):(t.push(s),s=r)}return s!==null&&t.push(s),new to(t)}subtractFrom(e){const t=rk(this._normalizedRanges,r=>r.endLineNumberExclusive>=e.startLineNumber),i=Xp(this._normalizedRanges,r=>r.startLineNumber<=e.endLineNumberExclusive)+1;if(t===i)return new to([e]);const n=[];let s=e.startLineNumber;for(let r=t;rs&&n.push(new xe(s,a.startLineNumber)),s=a.endLineNumberExclusive}return se.toString()).join(", ")}getIntersection(e){const t=[];let i=0,n=0;for(;it.delta(e)))}}const Zl=class Zl{static betweenPositions(e,t){return e.lineNumber===t.lineNumber?new Zl(0,t.column-e.column):new Zl(t.lineNumber-e.lineNumber,t.column-1)}static ofRange(e){return Zl.betweenPositions(e.getStartPosition(),e.getEndPosition())}static ofText(e){let t=0,i=0;for(const n of e)n===` +`?(t++,i=0):i++;return new Zl(t,i)}constructor(e,t){this.lineCount=e,this.columnCount=t}isGreaterThanOrEqualTo(e){return this.lineCount!==e.lineCount?this.lineCount>e.lineCount:this.columnCount>=e.columnCount}createRange(e){return this.lineCount===0?new I(e.lineNumber,e.column,e.lineNumber,e.column+this.columnCount):new I(e.lineNumber,e.column,e.lineNumber+this.lineCount,this.columnCount+1)}addToPosition(e){return this.lineCount===0?new P(e.lineNumber,e.column+this.columnCount):new P(e.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}};Zl.zero=new Zl(0,0);let Po=Zl;class jU{constructor(e){this.text=e,this.lineStartOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let t=0;toT(e,(t,i)=>t.range.getEndPosition().isBeforeOrEqual(i.range.getStartPosition())))}apply(e){let t="",i=new P(1,1);for(const s of this.edits){const r=s.range,a=r.getStartPosition(),l=r.getEndPosition(),c=$R(i,a);c.isEmpty()||(t+=e.getValueOfRange(c)),t+=s.text,i=l}const n=$R(i,e.endPositionExclusive);return n.isEmpty()||(t+=e.getValueOfRange(n)),t}applyToString(e){const t=new qU(e);return this.apply(t)}getNewRanges(){const e=[];let t=0,i=0,n=0;for(const s of this.edits){const r=Po.ofText(s.text),a=P.lift({lineNumber:s.range.startLineNumber+i,column:s.range.startColumn+(s.range.startLineNumber===t?n:0)}),l=r.createRange(a);e.push(l),i=l.endLineNumber-s.range.endLineNumber,n=l.endColumn-s.range.endColumn,t=s.range.endLineNumber}return e}}class fa{constructor(e,t){this.range=e,this.text=t}toSingleEditOperation(){return{range:this.range,text:this.text}}}function $R(o,e){if(o.lineNumber===e.lineNumber&&o.column===Number.MAX_SAFE_INTEGER)return I.fromPositions(e,e);if(!o.isBeforeOrEqual(e))throw new nt("start must be before end");return new I(o.lineNumber,o.column,e.lineNumber,e.column)}class c3{get endPositionExclusive(){return this.length.addToPosition(new P(1,1))}}class qU extends c3{constructor(e){super(),this.value=e,this._t=new jU(this.value)}getValueOfRange(e){return this._t.getOffsetRange(e).substring(this.value)}get length(){return this._t.textLength}}class hn{static inverse(e,t,i){const n=[];let s=1,r=1;for(const l of e){const c=new hn(new xe(s,l.original.startLineNumber),new xe(r,l.modified.startLineNumber));c.modified.isEmpty||n.push(c),s=l.original.endLineNumberExclusive,r=l.modified.endLineNumberExclusive}const a=new hn(new xe(s,t+1),new xe(r,i+1));return a.modified.isEmpty||n.push(a),n}static clip(e,t,i){const n=[];for(const s of e){const r=s.original.intersect(t),a=s.modified.intersect(i);r&&!r.isEmpty&&a&&!a.isEmpty&&n.push(new hn(r,a))}return n}constructor(e,t){this.original=e,this.modified=t}toString(){return`{${this.original.toString()}->${this.modified.toString()}}`}flip(){return new hn(this.modified,this.original)}join(e){return new hn(this.original.join(e.original),this.modified.join(e.modified))}toRangeMapping(){const e=this.original.toInclusiveRange(),t=this.modified.toInclusiveRange();if(e&&t)return new Ls(e,t);if(this.original.startLineNumber===1||this.modified.startLineNumber===1){if(!(this.modified.startLineNumber===1&&this.original.startLineNumber===1))throw new nt("not a valid diff");return new Ls(new I(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new I(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1))}else return new Ls(new I(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),new I(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER))}toRangeMapping2(e,t){if(KR(this.original.endLineNumberExclusive,e)&&KR(this.modified.endLineNumberExclusive,t))return new Ls(new I(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new I(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1));if(!this.original.isEmpty&&!this.modified.isEmpty)return new Ls(I.fromPositions(new P(this.original.startLineNumber,1),Nu(new P(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),e)),I.fromPositions(new P(this.modified.startLineNumber,1),Nu(new P(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)));if(this.original.startLineNumber>1&&this.modified.startLineNumber>1)return new Ls(I.fromPositions(Nu(new P(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER),e),Nu(new P(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),e)),I.fromPositions(Nu(new P(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER),t),Nu(new P(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)));throw new nt}}function Nu(o,e){if(o.lineNumber<1)return new P(1,1);if(o.lineNumber>e.length)return new P(e.length,e[e.length-1].length+1);const t=e[o.lineNumber-1];return o.column>t.length+1?new P(o.lineNumber,t.length+1):o}function KR(o,e){return o>=1&&o<=e.length}class Ws extends hn{static fromRangeMappings(e){const t=xe.join(e.map(n=>xe.fromRangeInclusive(n.originalRange))),i=xe.join(e.map(n=>xe.fromRangeInclusive(n.modifiedRange)));return new Ws(t,i,e)}constructor(e,t,i){super(e,t),this.innerChanges=i}flip(){return new Ws(this.modified,this.original,this.innerChanges?.map(e=>e.flip()))}withInnerChangesFromLineRanges(){return new Ws(this.original,this.modified,[this.toRangeMapping()])}}class Ls{static assertSorted(e){for(let t=1;t${this.modifiedRange.toString()}}`}flip(){return new Ls(this.modifiedRange,this.originalRange)}toTextEdit(e){const t=e.getValueOfRange(this.modifiedRange);return new fa(this.originalRange,t)}}const GU=3;class ZU{computeDiff(e,t,i){const s=new XU(e,t,{maxComputationTime:i.maxComputationTimeMs,shouldIgnoreTrimWhitespace:i.ignoreTrimWhitespace,shouldComputeCharChanges:!0,shouldMakePrettyDiff:!0,shouldPostProcessCharChanges:!0}).computeDiff(),r=[];let a=null;for(const l of s.changes){let c;l.originalEndLineNumber===0?c=new xe(l.originalStartLineNumber+1,l.originalStartLineNumber+1):c=new xe(l.originalStartLineNumber,l.originalEndLineNumber+1);let d;l.modifiedEndLineNumber===0?d=new xe(l.modifiedStartLineNumber+1,l.modifiedStartLineNumber+1):d=new xe(l.modifiedStartLineNumber,l.modifiedEndLineNumber+1);let h=new Ws(c,d,l.charChanges?.map(u=>new Ls(new I(u.originalStartLineNumber,u.originalStartColumn,u.originalEndLineNumber,u.originalEndColumn),new I(u.modifiedStartLineNumber,u.modifiedStartColumn,u.modifiedEndLineNumber,u.modifiedEndColumn))));a&&(a.modified.endLineNumberExclusive===h.modified.startLineNumber||a.original.endLineNumberExclusive===h.original.startLineNumber)&&(h=new Ws(a.original.join(h.original),a.modified.join(h.modified),a.innerChanges&&h.innerChanges?a.innerChanges.concat(h.innerChanges):void 0),r.pop()),r.push(h),a=h}return Fh(()=>oT(r,(l,c)=>c.original.startLineNumber-l.original.endLineNumberExclusive===c.modified.startLineNumber-l.modified.endLineNumberExclusive&&l.original.endLineNumberExclusive(e===10?"\\n":String.fromCharCode(e))+`-(${this._lineNumbers[t]},${this._columns[t]})`).join(", ")+"]"}_assertIndex(e,t){if(e<0||e>=t.length)throw new Error("Illegal index")}getElements(){return this._charCodes}getStartLineNumber(e){return e>0&&e===this._lineNumbers.length?this.getEndLineNumber(e-1):(this._assertIndex(e,this._lineNumbers),this._lineNumbers[e])}getEndLineNumber(e){return e===-1?this.getStartLineNumber(e+1):(this._assertIndex(e,this._lineNumbers),this._charCodes[e]===10?this._lineNumbers[e]+1:this._lineNumbers[e])}getStartColumn(e){return e>0&&e===this._columns.length?this.getEndColumn(e-1):(this._assertIndex(e,this._columns),this._columns[e])}getEndColumn(e){return e===-1?this.getStartColumn(e+1):(this._assertIndex(e,this._columns),this._charCodes[e]===10?1:this._columns[e]+1)}}class Of{constructor(e,t,i,n,s,r,a,l){this.originalStartLineNumber=e,this.originalStartColumn=t,this.originalEndLineNumber=i,this.originalEndColumn=n,this.modifiedStartLineNumber=s,this.modifiedStartColumn=r,this.modifiedEndLineNumber=a,this.modifiedEndColumn=l}static createFromDiffChange(e,t,i){const n=t.getStartLineNumber(e.originalStart),s=t.getStartColumn(e.originalStart),r=t.getEndLineNumber(e.originalStart+e.originalLength-1),a=t.getEndColumn(e.originalStart+e.originalLength-1),l=i.getStartLineNumber(e.modifiedStart),c=i.getStartColumn(e.modifiedStart),d=i.getEndLineNumber(e.modifiedStart+e.modifiedLength-1),h=i.getEndColumn(e.modifiedStart+e.modifiedLength-1);return new Of(n,s,r,a,l,c,d,h)}}function QU(o){if(o.length<=1)return o;const e=[o[0]];let t=e[0];for(let i=1,n=o.length;i0&&t.originalLength<20&&t.modifiedLength>0&&t.modifiedLength<20&&s()){const f=i.createCharSequence(e,t.originalStart,t.originalStart+t.originalLength-1),g=n.createCharSequence(e,t.modifiedStart,t.modifiedStart+t.modifiedLength-1);if(f.getElements().length>0&&g.getElements().length>0){let p=d3(f,g,s,!0).changes;a&&(p=QU(p)),u=[];for(let _=0,b=p.length;_1&&p>1;){const _=u.charCodeAt(g-2),b=f.charCodeAt(p-2);if(_!==b)break;g--,p--}(g>1||p>1)&&this._pushTrimWhitespaceCharChange(n,s+1,1,g,r+1,1,p)}{let g=lk(u,1),p=lk(f,1);const _=u.length+1,b=f.length+1;for(;g<_&&p!0;const e=Date.now();return()=>Date.now()-e{i.push(vi.fromOffsetPairs(n?n.getEndExclusives():al.zero,s?s.getStarts():new al(t,(n?n.seq2Range.endExclusive-n.seq1Range.endExclusive:0)+t)))}),i}static fromOffsetPairs(e,t){return new vi(new Re(e.offset1,t.offset1),new Re(e.offset2,t.offset2))}static assertSorted(e){let t;for(const i of e){if(t&&!(t.seq1Range.endExclusive<=i.seq1Range.start&&t.seq2Range.endExclusive<=i.seq2Range.start))throw new nt("Sequence diffs must be sorted");t=i}}constructor(e,t){this.seq1Range=e,this.seq2Range=t}swap(){return new vi(this.seq2Range,this.seq1Range)}toString(){return`${this.seq1Range} <-> ${this.seq2Range}`}join(e){return new vi(this.seq1Range.join(e.seq1Range),this.seq2Range.join(e.seq2Range))}delta(e){return e===0?this:new vi(this.seq1Range.delta(e),this.seq2Range.delta(e))}deltaStart(e){return e===0?this:new vi(this.seq1Range.deltaStart(e),this.seq2Range.deltaStart(e))}deltaEnd(e){return e===0?this:new vi(this.seq1Range.deltaEnd(e),this.seq2Range.deltaEnd(e))}intersect(e){const t=this.seq1Range.intersect(e.seq1Range),i=this.seq2Range.intersect(e.seq2Range);if(!(!t||!i))return new vi(t,i)}getStarts(){return new al(this.seq1Range.start,this.seq2Range.start)}getEndExclusives(){return new al(this.seq1Range.endExclusive,this.seq2Range.endExclusive)}}const Od=class Od{constructor(e,t){this.offset1=e,this.offset2=t}toString(){return`${this.offset1} <-> ${this.offset2}`}delta(e){return e===0?this:new Od(this.offset1+e,this.offset2+e)}equals(e){return this.offset1===e.offset1&&this.offset2===e.offset2}};Od.zero=new Od(0,0),Od.max=new Od(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER);let al=Od;const Ew=class Ew{isValid(){return!0}};Ew.instance=new Ew;let Jp=Ew;class JU{constructor(e){if(this.timeout=e,this.startTime=Date.now(),this.valid=!0,e<=0)throw new nt("timeout must be positive")}isValid(){if(!(Date.now()-this.startTime0&&p>0&&r.get(g-1,p-1)===3&&(C+=a.get(g-1,p-1)),C+=n?n(g,p):1):C=-1;const w=Math.max(_,b,C);if(w===C){const v=g>0&&p>0?a.get(g-1,p-1):0;a.set(g,p,v+1),r.set(g,p,3)}else w===_?(a.set(g,p,0),r.set(g,p,1)):w===b&&(a.set(g,p,0),r.set(g,p,2));s.set(g,p,w)}const l=[];let c=e.length,d=t.length;function h(g,p){(g+1!==c||p+1!==d)&&l.push(new vi(new Re(g+1,c),new Re(p+1,d))),c=g,d=p}let u=e.length-1,f=t.length-1;for(;u>=0&&f>=0;)r.get(u,f)===3?(h(u,f),u--,f--):r.get(u,f)===1?u--:f--;return h(-1,-1),l.reverse(),new wl(l,!1)}}class h3{compute(e,t,i=Jp.instance){if(e.length===0||t.length===0)return wl.trivial(e,t);const n=e,s=t;function r(p,_){for(;pn.length||v>s.length)continue;const y=r(w,v);l.set(d,y);const x=w===b?c.get(d+1):c.get(d-1);if(c.set(d,y!==w?new GR(x,w,v,y-w):x),l.get(d)===n.length&&l.get(d)-d===s.length)break e}}let h=c.get(d);const u=[];let f=n.length,g=s.length;for(;;){const p=h?h.x+h.length:0,_=h?h.y+h.length:0;if((p!==f||_!==g)&&u.push(new vi(new Re(p,f),new Re(_,g))),!h)break;f=h.x,g=h.y,h=h.prev}return u.reverse(),new wl(u,!1)}}class GR{constructor(e,t,i,n){this.prev=e,this.x=t,this.y=i,this.length=n}}class t${constructor(){this.positiveArr=new Int32Array(10),this.negativeArr=new Int32Array(10)}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){if(e<0){if(e=-e-1,e>=this.negativeArr.length){const i=this.negativeArr;this.negativeArr=new Int32Array(i.length*2),this.negativeArr.set(i)}this.negativeArr[e]=t}else{if(e>=this.positiveArr.length){const i=this.positiveArr;this.positiveArr=new Int32Array(i.length*2),this.positiveArr.set(i)}this.positiveArr[e]=t}}}class i${constructor(){this.positiveArr=[],this.negativeArr=[]}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){e<0?(e=-e-1,this.negativeArr[e]=t):this.positiveArr[e]=t}}class IC{constructor(e,t,i){this.lines=e,this.range=t,this.considerWhitespaceChanges=i,this.elements=[],this.firstElementOffsetByLineIdx=[],this.lineStartOffsets=[],this.trimmedWsLengthsByLineIdx=[],this.firstElementOffsetByLineIdx.push(0);for(let n=this.range.startLineNumber;n<=this.range.endLineNumber;n++){let s=e[n-1],r=0;n===this.range.startLineNumber&&this.range.startColumn>1&&(r=this.range.startColumn-1,s=s.substring(r)),this.lineStartOffsets.push(r);let a=0;if(!i){const c=s.trimStart();a=s.length-c.length,s=c.trimEnd()}this.trimmedWsLengthsByLineIdx.push(a);const l=n===this.range.endLineNumber?Math.min(this.range.endColumn-1-r-a,s.length):s.length;for(let c=0;cString.fromCharCode(t)).join("")}getElement(e){return this.elements[e]}get length(){return this.elements.length}getBoundaryScore(e){const t=YR(e>0?this.elements[e-1]:-1),i=YR(es<=e),n=e-this.firstElementOffsetByLineIdx[i];return new P(this.range.startLineNumber+i,1+this.lineStartOffsets[i]+n+(n===0&&t==="left"?0:this.trimmedWsLengthsByLineIdx[i]))}translateRange(e){const t=this.translateOffset(e.start,"right"),i=this.translateOffset(e.endExclusive,"left");return i.isBefore(t)?I.fromPositions(i,i):I.fromPositions(t,i)}findWordContaining(e){if(e<0||e>=this.elements.length||!wS(this.elements[e]))return;let t=e;for(;t>0&&wS(this.elements[t-1]);)t--;let i=e;for(;in<=e.start)??0,i=VU(this.firstElementOffsetByLineIdx,n=>e.endExclusive<=n)??this.elements.length;return new Re(t,i)}}function wS(o){return o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57}const n$={0:0,1:0,2:0,3:10,4:2,5:30,6:3,7:10,8:10};function ZR(o){return n$[o]}function YR(o){return o===10?8:o===13?7:ck(o)?6:o>=97&&o<=122?0:o>=65&&o<=90?1:o>=48&&o<=57?2:o===-1?3:o===44||o===59?5:4}function s$(o,e,t,i,n,s){let{moves:r,excludedChanges:a}=r$(o,e,t,s);if(!s.isValid())return[];const l=o.filter(d=>!a.has(d)),c=a$(l,i,n,e,t,s);return xL(r,c),r=l$(r),r=r.filter(d=>{const h=d.original.toOffsetRange().slice(e).map(f=>f.trim());return h.join(` +`).length>=15&&o$(h,f=>f.length>=2)>=2}),r=c$(o,r),r}function o$(o,e){let t=0;for(const i of o)e(i)&&t++;return t}function r$(o,e,t,i){const n=[],s=o.filter(l=>l.modified.isEmpty&&l.original.length>=3).map(l=>new DC(l.original,e,l)),r=new Set(o.filter(l=>l.original.isEmpty&&l.modified.length>=3).map(l=>new DC(l.modified,t,l))),a=new Set;for(const l of s){let c=-1,d;for(const h of r){const u=l.computeSimilarity(h);u>c&&(c=u,d=h)}if(c>.9&&d&&(r.delete(d),n.push(new hn(l.range,d.range)),a.add(l.source),a.add(d.source)),!i.isValid())return{moves:n,excludedChanges:a}}return{moves:n,excludedChanges:a}}function a$(o,e,t,i,n,s){const r=[],a=new dT;for(const u of o)for(let f=u.original.startLineNumber;fu.modified.startLineNumber,ia));for(const u of o){let f=[];for(let g=u.modified.startLineNumber;g{for(const v of f)if(v.originalLineRange.endLineNumberExclusive+1===C.endLineNumberExclusive&&v.modifiedLineRange.endLineNumberExclusive+1===_.endLineNumberExclusive){v.originalLineRange=new xe(v.originalLineRange.startLineNumber,C.endLineNumberExclusive),v.modifiedLineRange=new xe(v.modifiedLineRange.startLineNumber,_.endLineNumberExclusive),b.push(v);return}const w={modifiedLineRange:_,originalLineRange:C};l.push(w),b.push(w)}),f=b}if(!s.isValid())return[]}l.sort(o6(rs(u=>u.modifiedLineRange.length,ia)));const c=new to,d=new to;for(const u of l){const f=u.modifiedLineRange.startLineNumber-u.originalLineRange.startLineNumber,g=c.subtractFrom(u.modifiedLineRange),p=d.subtractFrom(u.originalLineRange).getWithDelta(f),_=g.getIntersection(p);for(const b of _.ranges){if(b.length<3)continue;const C=b,w=b.delta(-f);r.push(new hn(w,C)),c.addRange(C),d.addRange(w)}}r.sort(rs(u=>u.original.startLineNumber,ia));const h=new kC(o);for(let u=0;ux.original.startLineNumber<=f.original.startLineNumber),p=dg(o,x=>x.modified.startLineNumber<=f.modified.startLineNumber),_=Math.max(f.original.startLineNumber-g.original.startLineNumber,f.modified.startLineNumber-p.modified.startLineNumber),b=h.findLastMonotonous(x=>x.original.startLineNumberx.modified.startLineNumberi.length||L>n.length||c.contains(L)||d.contains(x)||!QR(i[x-1],n[L-1],s))break}v>0&&(d.addRange(new xe(f.original.startLineNumber-v,f.original.startLineNumber)),c.addRange(new xe(f.modified.startLineNumber-v,f.modified.startLineNumber)));let y;for(y=0;yi.length||L>n.length||c.contains(L)||d.contains(x)||!QR(i[x-1],n[L-1],s))break}y>0&&(d.addRange(new xe(f.original.endLineNumberExclusive,f.original.endLineNumberExclusive+y)),c.addRange(new xe(f.modified.endLineNumberExclusive,f.modified.endLineNumberExclusive+y))),(v>0||y>0)&&(r[u]=new hn(new xe(f.original.startLineNumber-v,f.original.endLineNumberExclusive+y),new xe(f.modified.startLineNumber-v,f.modified.endLineNumberExclusive+y)))}return r}function QR(o,e,t){if(o.trim()===e.trim())return!0;if(o.length>300&&e.length>300)return!1;const n=new h3().compute(new IC([o],new I(1,1,1,o.length),!1),new IC([e],new I(1,1,1,e.length),!1),t);let s=0;const r=vi.invert(n.diffs,o.length);for(const d of r)d.seq1Range.forEach(h=>{ck(o.charCodeAt(h))||s++});function a(d){let h=0;for(let u=0;ue.length?o:e);return s/l>.6&&l>10}function l$(o){if(o.length===0)return o;o.sort(rs(t=>t.original.startLineNumber,ia));const e=[o[0]];for(let t=1;t=0&&r>=0&&s+r<=2){e[e.length-1]=i.join(n);continue}e.push(n)}return e}function c$(o,e){const t=new kC(o);return e=e.filter(i=>{const n=t.findLastMonotonous(a=>a.original.startLineNumbera.modified.startLineNumber0&&(a=a.delta(c))}n.push(a)}return i.length>0&&n.push(i[i.length-1]),n}function d$(o,e,t){if(!o.getBoundaryScore||!e.getBoundaryScore)return t;for(let i=0;i0?t[i-1]:void 0,s=t[i],r=i+1=i.start&&o.seq2Range.start-r>=n.start&&t.isStronglyEqual(o.seq2Range.start-r,o.seq2Range.endExclusive-r)&&r<100;)r++;r--;let a=0;for(;o.seq1Range.start+ac&&(c=g,l=d)}return o.delta(l)}function h$(o,e,t){const i=[];for(const n of t){const s=i[i.length-1];if(!s){i.push(n);continue}n.seq1Range.start-s.seq1Range.endExclusive<=2||n.seq2Range.start-s.seq2Range.endExclusive<=2?i[i.length-1]=new vi(s.seq1Range.join(n.seq1Range),s.seq2Range.join(n.seq2Range)):i.push(n)}return i}function u$(o,e,t){const i=vi.invert(t,o.length),n=[];let s=new al(0,0);function r(l,c){if(l.offset10;){const _=i[0];if(!(_.seq1Range.intersects(u.seq1Range)||_.seq2Range.intersects(u.seq2Range)))break;const C=o.findWordContaining(_.seq1Range.start),w=e.findWordContaining(_.seq2Range.start),v=new vi(C,w),y=v.intersect(_);if(g+=y.seq1Range.length,p+=y.seq2Range.length,u=u.join(v),u.seq1Range.endExclusive>=_.seq1Range.endExclusive)i.shift();else break}g+p<(u.seq1Range.length+u.seq2Range.length)*2/3&&n.push(u),s=u.getEndExclusives()}for(;i.length>0;){const l=i.shift();l.seq1Range.isEmpty||(r(l.getStarts(),l),r(l.getEndExclusives().delta(-1),l))}return f$(t,n)}function f$(o,e){const t=[];for(;o.length>0||e.length>0;){const i=o[0],n=e[0];let s;i&&(!n||i.seq1Range.start0&&t[t.length-1].seq1Range.endExclusive>=s.seq1Range.start?t[t.length-1]=t[t.length-1].join(s):t.push(s)}return t}function g$(o,e,t){let i=t;if(i.length===0)return i;let n=0,s;do{s=!1;const r=[i[0]];for(let a=1;a5||f.seq1Range.length+f.seq2Range.length>5)};const l=i[a],c=r[r.length-1];d(c,l)?(s=!0,r[r.length-1]=r[r.length-1].join(l)):r.push(l)}i=r}while(n++<10&&s);return i}function m$(o,e,t){let i=t;if(i.length===0)return i;let n=0,s;do{s=!1;const a=[i[0]];for(let l=1;l5||p.length>500)return!1;const b=o.getText(p).trim();if(b.length>20||b.split(/\r\n|\r|\n/).length>1)return!1;const C=o.countLinesIn(f.seq1Range),w=f.seq1Range.length,v=e.countLinesIn(f.seq2Range),y=f.seq2Range.length,x=o.countLinesIn(g.seq1Range),L=g.seq1Range.length,E=e.countLinesIn(g.seq2Range),N=g.seq2Range.length,H=130;function F(W){return Math.min(W,H)}return Math.pow(Math.pow(F(C*40+w),1.5)+Math.pow(F(v*40+y),1.5),1.5)+Math.pow(Math.pow(F(x*40+L),1.5)+Math.pow(F(E*40+N),1.5),1.5)>(H**1.5)**1.5*1.3};const c=i[l],d=a[a.length-1];h(d,c)?(s=!0,a[a.length-1]=a[a.length-1].join(c)):a.push(c)}i=a}while(n++<10&&s);const r=[];return t6(i,(a,l,c)=>{let d=l;function h(b){return b.length>0&&b.trim().length<=3&&l.seq1Range.length+l.seq2Range.length>100}const u=o.extendToFullLines(l.seq1Range),f=o.getText(new Re(u.start,l.seq1Range.start));h(f)&&(d=d.deltaStart(-f.length));const g=o.getText(new Re(l.seq1Range.endExclusive,u.endExclusive));h(g)&&(d=d.deltaEnd(g.length));const p=vi.fromOffsetPairs(a?a.getEndExclusives():al.zero,c?c.getStarts():al.max),_=d.intersect(p);r.length>0&&_.getStarts().equals(r[r.length-1].getEndExclusives())?r[r.length-1]=r[r.length-1].join(_):r.push(_)}),r}class eA{constructor(e,t){this.trimmedHash=e,this.lines=t}getElement(e){return this.trimmedHash[e]}get length(){return this.trimmedHash.length}getBoundaryScore(e){const t=e===0?0:tA(this.lines[e-1]),i=e===this.lines.length?0:tA(this.lines[e]);return 1e3-(t+i)}getText(e){return this.lines.slice(e.start,e.endExclusive).join(` +`)}isStronglyEqual(e,t){return this.lines[e]===this.lines[t]}}function tA(o){let e=0;for(;ey===x))return new D1([],[],!1);if(e.length===1&&e[0].length===0||t.length===1&&t[0].length===0)return new D1([new Ws(new xe(1,e.length+1),new xe(1,t.length+1),[new Ls(new I(1,1,e.length,e[e.length-1].length+1),new I(1,1,t.length,t[t.length-1].length+1))])],[],!1);const n=i.maxComputationTimeMs===0?Jp.instance:new JU(i.maxComputationTimeMs),s=!i.ignoreTrimWhitespace,r=new Map;function a(y){let x=r.get(y);return x===void 0&&(x=r.size,r.set(y,x)),x}const l=e.map(y=>a(y.trim())),c=t.map(y=>a(y.trim())),d=new eA(l,e),h=new eA(c,t),u=d.length+h.length<1700?this.dynamicProgrammingDiffing.compute(d,h,n,(y,x)=>e[y]===t[x]?t[x].length===0?.1:1+Math.log(1+t[x].length):.99):this.myersDiffingAlgorithm.compute(d,h,n);let f=u.diffs,g=u.hitTimeout;f=dk(d,h,f),f=g$(d,h,f);const p=[],_=y=>{if(s)for(let x=0;xy.seq1Range.start-b===y.seq2Range.start-C);const x=y.seq1Range.start-b;_(x),b=y.seq1Range.endExclusive,C=y.seq2Range.endExclusive;const L=this.refineDiff(e,t,y,n,s);L.hitTimeout&&(g=!0);for(const E of L.mappings)p.push(E)}_(e.length-b);const w=iA(p,e,t);let v=[];return i.computeMoves&&(v=this.computeMoves(w,e,t,l,c,n,s)),Fh(()=>{function y(L,E){if(L.lineNumber<1||L.lineNumber>E.length)return!1;const N=E[L.lineNumber-1];return!(L.column<1||L.column>N.length+1)}function x(L,E){return!(L.startLineNumber<1||L.startLineNumber>E.length+1||L.endLineNumberExclusive<1||L.endLineNumberExclusive>E.length+1)}for(const L of w){if(!L.innerChanges)return!1;for(const E of L.innerChanges)if(!(y(E.modifiedRange.getStartPosition(),t)&&y(E.modifiedRange.getEndPosition(),t)&&y(E.originalRange.getStartPosition(),e)&&y(E.originalRange.getEndPosition(),e)))return!1;if(!x(L.modified,t)||!x(L.original,e))return!1}return!0}),new D1(w,v,g)}computeMoves(e,t,i,n,s,r,a){return s$(e,t,i,n,s,r).map(d=>{const h=this.refineDiff(t,i,new vi(d.original.toOffsetRange(),d.modified.toOffsetRange()),r,a),u=iA(h.mappings,t,i,!0);return new l3(d,u)})}refineDiff(e,t,i,n,s){const a=_$(i).toRangeMapping2(e,t),l=new IC(e,a.originalRange,s),c=new IC(t,a.modifiedRange,s),d=l.length+c.length<500?this.dynamicProgrammingDiffing.compute(l,c,n):this.myersDiffingAlgorithm.compute(l,c,n);let h=d.diffs;return h=dk(l,c,h),h=u$(l,c,h),h=h$(l,c,h),h=m$(l,c,h),{mappings:h.map(f=>new Ls(l.translateRange(f.seq1Range),c.translateRange(f.seq2Range))),hitTimeout:d.hitTimeout}}}function iA(o,e,t,i=!1){const n=[];for(const s of LN(o.map(r=>p$(r,e,t)),(r,a)=>r.original.overlapOrTouch(a.original)||r.modified.overlapOrTouch(a.modified))){const r=s[0],a=s[s.length-1];n.push(new Ws(r.original.join(a.original),r.modified.join(a.modified),s.map(l=>l.innerChanges[0])))}return Fh(()=>!i&&n.length>0&&(n[0].modified.startLineNumber!==n[0].original.startLineNumber||t.length-n[n.length-1].modified.endLineNumberExclusive!==e.length-n[n.length-1].original.endLineNumberExclusive)?!1:oT(n,(s,r)=>r.original.startLineNumber-s.original.endLineNumberExclusive===r.modified.startLineNumber-s.modified.endLineNumberExclusive&&s.original.endLineNumberExclusive=t[o.modifiedRange.startLineNumber-1].length&&o.originalRange.startColumn-1>=e[o.originalRange.startLineNumber-1].length&&o.originalRange.startLineNumber<=o.originalRange.endLineNumber+n&&o.modifiedRange.startLineNumber<=o.modifiedRange.endLineNumber+n&&(i=1);const s=new xe(o.originalRange.startLineNumber+i,o.originalRange.endLineNumber+1+n),r=new xe(o.modifiedRange.startLineNumber+i,o.modifiedRange.endLineNumber+1+n);return new Ws(s,r,[o])}function _$(o){return new hn(new xe(o.seq1Range.start+1,o.seq1Range.endExclusive+1),new xe(o.seq2Range.start+1,o.seq2Range.endExclusive+1))}const nA={getLegacy:()=>new ZU,getDefault:()=>new u3};function gc(o,e){const t=Math.pow(10,e);return Math.round(o*t)/t}class qe{constructor(e,t,i,n=1){this._rgbaBrand=void 0,this.r=Math.min(255,Math.max(0,e))|0,this.g=Math.min(255,Math.max(0,t))|0,this.b=Math.min(255,Math.max(0,i))|0,this.a=gc(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.r===t.r&&e.g===t.g&&e.b===t.b&&e.a===t.a}}class ko{constructor(e,t,i,n){this._hslaBrand=void 0,this.h=Math.max(Math.min(360,e),0)|0,this.s=gc(Math.max(Math.min(1,t),0),3),this.l=gc(Math.max(Math.min(1,i),0),3),this.a=gc(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.l===t.l&&e.a===t.a}static fromRGBA(e){const t=e.r/255,i=e.g/255,n=e.b/255,s=e.a,r=Math.max(t,i,n),a=Math.min(t,i,n);let l=0,c=0;const d=(a+r)/2,h=r-a;if(h>0){switch(c=Math.min(d<=.5?h/(2*d):h/(2-2*d),1),r){case t:l=(i-n)/h+(i1&&(i-=1),i<1/6?e+(t-e)*6*i:i<1/2?t:i<2/3?e+(t-e)*(2/3-i)*6:e}static toRGBA(e){const t=e.h/360,{s:i,l:n,a:s}=e;let r,a,l;if(i===0)r=a=l=n;else{const c=n<.5?n*(1+i):n+i-n*i,d=2*n-c;r=ko._hue2rgb(d,c,t+1/3),a=ko._hue2rgb(d,c,t),l=ko._hue2rgb(d,c,t-1/3)}return new qe(Math.round(r*255),Math.round(a*255),Math.round(l*255),s)}}class ea{constructor(e,t,i,n){this._hsvaBrand=void 0,this.h=Math.max(Math.min(360,e),0)|0,this.s=gc(Math.max(Math.min(1,t),0),3),this.v=gc(Math.max(Math.min(1,i),0),3),this.a=gc(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.v===t.v&&e.a===t.a}static fromRGBA(e){const t=e.r/255,i=e.g/255,n=e.b/255,s=Math.max(t,i,n),r=Math.min(t,i,n),a=s-r,l=s===0?0:a/s;let c;return a===0?c=0:s===t?c=((i-n)/a%6+6)%6:s===i?c=(n-t)/a+2:c=(t-i)/a+4,new ea(Math.round(c*60),l,s,e.a)}static toRGBA(e){const{h:t,s:i,v:n,a:s}=e,r=n*i,a=r*(1-Math.abs(t/60%2-1)),l=n-r;let[c,d,h]=[0,0,0];return t<60?(c=r,d=a):t<120?(c=a,d=r):t<180?(d=r,h=a):t<240?(d=a,h=r):t<300?(c=a,h=r):t<=360&&(c=r,h=a),c=Math.round((c+l)*255),d=Math.round((d+l)*255),h=Math.round((h+l)*255),new qe(c,d,h,s)}}const Kt=class Kt{static fromHex(e){return Kt.Format.CSS.parseHex(e)||Kt.red}static equals(e,t){return!e&&!t?!0:!e||!t?!1:e.equals(t)}get hsla(){return this._hsla?this._hsla:ko.fromRGBA(this.rgba)}get hsva(){return this._hsva?this._hsva:ea.fromRGBA(this.rgba)}constructor(e){if(e)if(e instanceof qe)this.rgba=e;else if(e instanceof ko)this._hsla=e,this.rgba=ko.toRGBA(e);else if(e instanceof ea)this._hsva=e,this.rgba=ea.toRGBA(e);else throw new Error("Invalid color ctor argument");else throw new Error("Color needs a value")}equals(e){return!!e&&qe.equals(this.rgba,e.rgba)&&ko.equals(this.hsla,e.hsla)&&ea.equals(this.hsva,e.hsva)}getRelativeLuminance(){const e=Kt._relativeLuminanceForComponent(this.rgba.r),t=Kt._relativeLuminanceForComponent(this.rgba.g),i=Kt._relativeLuminanceForComponent(this.rgba.b),n=.2126*e+.7152*t+.0722*i;return gc(n,4)}static _relativeLuminanceForComponent(e){const t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)}isLighter(){return(this.rgba.r*299+this.rgba.g*587+this.rgba.b*114)/1e3>=128}isLighterThan(e){const t=this.getRelativeLuminance(),i=e.getRelativeLuminance();return t>i}isDarkerThan(e){const t=this.getRelativeLuminance(),i=e.getRelativeLuminance();return t0)for(const n of i){const s=n.filter(c=>c!==void 0),r=s[1],a=s[2];if(!a)continue;let l;if(r==="rgb"){const c=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*\)$/gm;l=sA(hm(o,n),um(a,c),!1)}else if(r==="rgba"){const c=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;l=sA(hm(o,n),um(a,c),!0)}else if(r==="hsl"){const c=/^\(\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*\)$/gm;l=oA(hm(o,n),um(a,c),!1)}else if(r==="hsla"){const c=/^\(\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;l=oA(hm(o,n),um(a,c),!0)}else r==="#"&&(l=b$(hm(o,n),r+a));l&&e.push(l)}return e}function v$(o){return!o||typeof o.getValue!="function"||typeof o.positionAt!="function"?[]:C$(o)}const rA=new RegExp("\\bMARK:\\s*(.*)$","d"),w$=/^-+|-+$/g;function y$(o,e){let t=[];if(e.findRegionSectionHeaders&&e.foldingRules?.markers){const i=S$(o,e);t=t.concat(i)}if(e.findMarkSectionHeaders){const i=L$(o);t=t.concat(i)}return t}function S$(o,e){const t=[],i=o.getLineCount();for(let n=1;n<=i;n++){const s=o.getLineContent(n),r=s.match(e.foldingRules.markers.start);if(r){const a={startLineNumber:n,startColumn:r[0].length+1,endLineNumber:n,endColumn:s.length+1};if(a.endColumn>a.startColumn){const l={range:a,...g3(s.substring(r[0].length)),shouldBeInComments:!1};(l.text||l.hasSeparatorLine)&&t.push(l)}}}return t}function L$(o){const e=[],t=o.getLineCount();for(let i=1;i<=t;i++){const n=o.getLineContent(i);x$(n,i,e)}return e}function x$(o,e,t){rA.lastIndex=0;const i=rA.exec(o);if(i){const n=i.indices[1][0]+1,s=i.indices[1][1]+1,r={startLineNumber:e,startColumn:n,endLineNumber:e,endColumn:s};if(r.endColumn>r.startColumn){const a={range:r,...g3(i[1]),shouldBeInComments:!0};(a.text||a.hasSeparatorLine)&&t.push(a)}}}function g3(o){o=o.trim();const e=o.startsWith("-");return o=o.replace(w$,""),{text:o,hasSeparatorLine:e}}class k${constructor(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(e,t){e=Iu(e);const i=this.values,n=this.prefixSum,s=t.length;return s===0?!1:(this.values=new Uint32Array(i.length+s),this.values.set(i.subarray(0,e),0),this.values.set(i.subarray(e),e+s),this.values.set(t,e),e-1=0&&this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(e,t){return e=Iu(e),t=Iu(t),this.values[e]===t?!1:(this.values[e]=t,e-1=i.length)return!1;const s=i.length-e;return t>=s&&(t=s),t===0?!1:(this.values=new Uint32Array(i.length-t),this.values.set(i.subarray(0,e),0),this.values.set(i.subarray(e+t),e),this.prefixSum=new Uint32Array(this.values.length),e-1=0&&this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return this.values.length===0?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(e){return e<0?0:(e=Iu(e),this._getPrefixSum(e))}_getPrefixSum(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];let t=this.prefixSumValidIndex[0]+1;t===0&&(this.prefixSum[0]=this.values[0],t++),e>=this.values.length&&(e=this.values.length-1);for(let i=t;i<=e;i++)this.prefixSum[i]=this.prefixSum[i-1]+this.values[i];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]}getIndexOf(e){e=Math.floor(e),this.getTotalSum();let t=0,i=this.values.length-1,n=0,s=0,r=0;for(;t<=i;)if(n=t+(i-t)/2|0,s=this.prefixSum[n],r=s-this.values[n],e=s)t=n+1;else break;return new m3(n,e-r)}}class D${constructor(e){this._values=e,this._isValid=!1,this._validEndIndex=-1,this._prefixSum=[],this._indexBySum=[]}getTotalSum(){return this._ensureValid(),this._indexBySum.length}getPrefixSum(e){return this._ensureValid(),e===0?0:this._prefixSum[e-1]}getIndexOf(e){this._ensureValid();const t=this._indexBySum[e],i=t>0?this._prefixSum[t-1]:0;return new m3(t,e-i)}removeValues(e,t){this._values.splice(e,t),this._invalidate(e)}insertValues(e,t){this._values=y0(this._values,e,t),this._invalidate(e)}_invalidate(e){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,e-1)}_ensureValid(){if(!this._isValid){for(let e=this._validEndIndex+1,t=this._values.length;e0?this._prefixSum[e-1]:0;this._prefixSum[e]=n+i;for(let s=0;sthis._checkStopModelSync(),Math.round(aA/2)),this._register(n)}}dispose(){for(const e in this._syncedModels)xt(this._syncedModels[e]);this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),super.dispose()}ensureSyncedResources(e,t=!1){for(const i of e){const n=i.toString();this._syncedModels[n]||this._beginModelSync(i,t),this._syncedModels[n]&&(this._syncedModelsLastUsedTime[n]=new Date().getTime())}}_checkStopModelSync(){const e=new Date().getTime(),t=[];for(const i in this._syncedModelsLastUsedTime)e-this._syncedModelsLastUsedTime[i]>aA&&t.push(i);for(const i of t)this._stopModelSync(i)}_beginModelSync(e,t){const i=this._modelService.getModel(e);if(!i||!t&&i.isTooLargeForSyncing())return;const n=e.toString();this._proxy.$acceptNewModel({url:i.uri.toString(),lines:i.getLinesContent(),EOL:i.getEOL(),versionId:i.getVersionId()});const s=new X;s.add(i.onDidChangeContent(r=>{this._proxy.$acceptModelChanged(n.toString(),r)})),s.add(i.onWillDispose(()=>{this._stopModelSync(n)})),s.add(_e(()=>{this._proxy.$acceptRemovedModel(n)})),this._syncedModels[n]=s}_stopModelSync(e){const t=this._syncedModels[e];delete this._syncedModels[e],delete this._syncedModelsLastUsedTime[e],xt(t)}}class N${constructor(){this._models=Object.create(null)}getModel(e){return this._models[e]}getModels(){const e=[];return Object.keys(this._models).forEach(t=>e.push(this._models[t])),e}$acceptNewModel(e){this._models[e.url]=new T$(ve.parse(e.url),e.lines,e.EOL,e.versionId)}$acceptModelChanged(e,t){if(!this._models[e])return;this._models[e].onEvents(t)}$acceptRemovedModel(e){this._models[e]&&delete this._models[e]}}class T$ extends I${get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}findMatches(e){const t=[];for(let i=0;ithis._lines.length)t=this._lines.length,i=this._lines[t-1].length+1,n=!0;else{const s=this._lines[t-1].length+1;i<1?(i=1,n=!0):i>s&&(i=s,n=!0)}return n?{lineNumber:t,column:i}:e}}const Nw=class Nw{constructor(){this._workerTextModelSyncServer=new N$}dispose(){}_getModel(e){return this._workerTextModelSyncServer.getModel(e)}_getModels(){return this._workerTextModelSyncServer.getModels()}$acceptNewModel(e){this._workerTextModelSyncServer.$acceptNewModel(e)}$acceptModelChanged(e,t){this._workerTextModelSyncServer.$acceptModelChanged(e,t)}$acceptRemovedModel(e){this._workerTextModelSyncServer.$acceptRemovedModel(e)}async $computeUnicodeHighlights(e,t,i){const n=this._getModel(e);return n?BU.computeUnicodeHighlights(n,t,i):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}}async $findSectionHeaders(e,t){const i=this._getModel(e);return i?y$(i,t):[]}async $computeDiff(e,t,i,n){const s=this._getModel(e),r=this._getModel(t);return!s||!r?null:I1.computeDiff(s,r,i,n)}static computeDiff(e,t,i,n){const s=n==="advanced"?nA.getDefault():nA.getLegacy(),r=e.getLinesContent(),a=t.getLinesContent(),l=s.computeDiff(r,a,i),c=l.changes.length>0?!1:this._modelsAreIdentical(e,t);function d(h){return h.map(u=>[u.original.startLineNumber,u.original.endLineNumberExclusive,u.modified.startLineNumber,u.modified.endLineNumberExclusive,u.innerChanges?.map(f=>[f.originalRange.startLineNumber,f.originalRange.startColumn,f.originalRange.endLineNumber,f.originalRange.endColumn,f.modifiedRange.startLineNumber,f.modifiedRange.startColumn,f.modifiedRange.endLineNumber,f.modifiedRange.endColumn])])}return{identical:c,quitEarly:l.hitTimeout,changes:d(l.changes),moves:l.moves.map(h=>[h.lineRangeMapping.original.startLineNumber,h.lineRangeMapping.original.endLineNumberExclusive,h.lineRangeMapping.modified.startLineNumber,h.lineRangeMapping.modified.endLineNumberExclusive,d(h.changes)])}}static _modelsAreIdentical(e,t){const i=e.getLineCount(),n=t.getLineCount();if(i!==n)return!1;for(let s=1;s<=i;s++){const r=e.getLineContent(s),a=t.getLineContent(s);if(r!==a)return!1}return!0}async $computeMoreMinimalEdits(e,t,i){const n=this._getModel(e);if(!n)return t;const s=[];let r;t=t.slice(0).sort((l,c)=>{if(l.range&&c.range)return I.compareRangesUsingStarts(l.range,c.range);const d=l.range?0:1,h=c.range?0:1;return d-h});let a=0;for(let l=1;lI1._diffLimit){s.push({range:l,text:c});continue}const u=_U(h,c,i),f=n.offsetAt(I.lift(l).getStartPosition());for(const g of u){const p=n.positionAt(f+g.originalStart),_=n.positionAt(f+g.originalStart+g.originalLength),b={text:c.substr(g.modifiedStart,g.modifiedLength),range:{startLineNumber:p.lineNumber,startColumn:p.column,endLineNumber:_.lineNumber,endColumn:_.column}};n.getValueInRange(b.range)!==b.text&&s.push(b)}}return typeof r=="number"&&s.push({eol:r,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),s}async $computeLinks(e){const t=this._getModel(e);return t?SU(t):null}async $computeDefaultDocumentColors(e){const t=this._getModel(e);return t?v$(t):null}async $textualSuggest(e,t,i,n){const s=new Hs,r=new RegExp(i,n),a=new Set;e:for(const l of e){const c=this._getModel(l);if(c){for(const d of c.words(r))if(!(d===t||!isNaN(Number(d)))&&(a.add(d),a.size>I1._suggestionsLimit))break e}}return{words:Array.from(a),duration:s.elapsed()}}async $computeWordRanges(e,t,i,n){const s=this._getModel(e);if(!s)return Object.create(null);const r=new RegExp(i,n),a=Object.create(null);for(let l=t.startLineNumber;lthis._host.$fhr(a,l)),getMirrorModels:()=>this._getModels()};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(r,t),Promise.resolve(DL(this._foreignModule))):new Promise((a,l)=>{const c=d=>{this._foreignModule=d.create(r,t),a(DL(this._foreignModule))};{const d=E0.asBrowserUri(`${e}.js`).toString(!0);vz(()=>import(`${d}`),[],import.meta.url).then(c).catch(l)}})}$fmr(e,t){if(!this._foreignModule||typeof this._foreignModule[e]!="function")return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(i){return Promise.reject(i)}}}typeof importScripts=="function"&&(globalThis.monaco=cF());const pT=He("textResourceConfigurationService"),p3=He("textResourcePropertiesService"),Se=He("ILanguageFeaturesService");var _T=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Cd=function(o,e){return function(t,i){e(t,i,o)}};const lA=300*1e3;function vd(o,e){const t=o.getModel(e);return!(!t||t.isTooLargeForSyncing())}let uk=class extends z{constructor(e,t,i,n,s,r){super(),this._languageConfigurationService=s,this._modelService=t,this._workerManager=this._register(new fk(e,this._modelService)),this._logService=n,this._register(r.linkProvider.register({language:"*",hasAccessToAllModels:!0},{provideLinks:async(a,l)=>{if(!vd(this._modelService,a.uri))return Promise.resolve({links:[]});const d=await(await this._workerWithResources([a.uri])).$computeLinks(a.uri.toString());return d&&{links:d}}})),this._register(r.completionProvider.register("*",new M$(this._workerManager,i,this._modelService,this._languageConfigurationService)))}dispose(){super.dispose()}canComputeUnicodeHighlights(e){return vd(this._modelService,e)}async computedUnicodeHighlights(e,t,i){return(await this._workerWithResources([e])).$computeUnicodeHighlights(e.toString(),t,i)}async computeDiff(e,t,i,n){const r=await(await this._workerWithResources([e,t],!0)).$computeDiff(e.toString(),t.toString(),i,n);if(!r)return null;return{identical:r.identical,quitEarly:r.quitEarly,changes:l(r.changes),moves:r.moves.map(c=>new l3(new hn(new xe(c[0],c[1]),new xe(c[2],c[3])),l(c[4])))};function l(c){return c.map(d=>new Ws(new xe(d[0],d[1]),new xe(d[2],d[3]),d[4]?.map(h=>new Ls(new I(h[0],h[1],h[2],h[3]),new I(h[4],h[5],h[6],h[7])))))}}async computeMoreMinimalEdits(e,t,i=!1){if(Ps(t)){if(!vd(this._modelService,e))return Promise.resolve(t);const n=Hs.create(),s=this._workerWithResources([e]).then(r=>r.$computeMoreMinimalEdits(e.toString(),t,i));return s.finally(()=>this._logService.trace("FORMAT#computeMoreMinimalEdits",e.toString(!0),n.elapsed())),Promise.race([s,og(1e3).then(()=>t)])}else return Promise.resolve(void 0)}canNavigateValueSet(e){return vd(this._modelService,e)}async navigateValueSet(e,t,i){const n=this._modelService.getModel(e);if(!n)return null;const s=this._languageConfigurationService.getLanguageConfiguration(n.getLanguageId()).getWordDefinition(),r=s.source,a=s.flags;return(await this._workerWithResources([e])).$navigateValueSet(e.toString(),t,i,r,a)}canComputeWordRanges(e){return vd(this._modelService,e)}async computeWordRanges(e,t){const i=this._modelService.getModel(e);if(!i)return Promise.resolve(null);const n=this._languageConfigurationService.getLanguageConfiguration(i.getLanguageId()).getWordDefinition(),s=n.source,r=n.flags;return(await this._workerWithResources([e])).$computeWordRanges(e.toString(),t,s,r)}async findSectionHeaders(e,t){return(await this._workerWithResources([e])).$findSectionHeaders(e.toString(),t)}async computeDefaultDocumentColors(e){return(await this._workerWithResources([e])).$computeDefaultDocumentColors(e.toString())}async _workerWithResources(e,t=!1){return await(await this._workerManager.withWorker()).workerWithSyncedResources(e,t)}};uk=_T([Cd(1,Fi),Cd(2,pT),Cd(3,gs),Cd(4,Gn),Cd(5,Se)],uk);class M${constructor(e,t,i,n){this.languageConfigurationService=n,this._debugDisplayName="wordbasedCompletions",this._workerManager=e,this._configurationService=t,this._modelService=i}async provideCompletionItems(e,t){const i=this._configurationService.getValue(e.uri,t,"editor");if(i.wordBasedSuggestions==="off")return;const n=[];if(i.wordBasedSuggestions==="currentDocument")vd(this._modelService,e.uri)&&n.push(e.uri);else for(const h of this._modelService.getModels())vd(this._modelService,h.uri)&&(h===e?n.unshift(h.uri):(i.wordBasedSuggestions==="allDocuments"||h.getLanguageId()===e.getLanguageId())&&n.push(h.uri));if(n.length===0)return;const s=this.languageConfigurationService.getLanguageConfiguration(e.getLanguageId()).getWordDefinition(),r=e.getWordAtPosition(t),a=r?new I(t.lineNumber,r.startColumn,t.lineNumber,r.endColumn):I.fromPositions(t),l=a.setEndPosition(t.lineNumber,t.column),d=await(await this._workerManager.withWorker()).textualSuggest(n,r?.word,s);if(d)return{duration:d.duration,suggestions:d.words.map(h=>({kind:18,label:h,insertText:h,range:{insert:l,replace:a}}))}}}let fk=class extends z{constructor(e,t){super(),this._workerDescriptor=e,this._modelService=t,this._editorWorkerClient=null,this._lastWorkerUsedTime=new Date().getTime(),this._register(new QN).cancelAndSet(()=>this._checkStopIdleWorker(),Math.round(lA/2),_t),this._register(this._modelService.onModelRemoved(n=>this._checkStopEmptyWorker()))}dispose(){this._editorWorkerClient&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null),super.dispose()}_checkStopEmptyWorker(){if(!this._editorWorkerClient)return;this._modelService.getModels().length===0&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}_checkStopIdleWorker(){if(!this._editorWorkerClient)return;new Date().getTime()-this._lastWorkerUsedTime>lA&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}withWorker(){return this._lastWorkerUsedTime=new Date().getTime(),this._editorWorkerClient||(this._editorWorkerClient=new EC(this._workerDescriptor,!1,this._modelService)),Promise.resolve(this._editorWorkerClient)}};fk=_T([Cd(1,Fi)],fk);class R${constructor(e){this._instance=e,this.proxy=this._instance}dispose(){this._instance.dispose()}setChannel(e,t){throw new Error("Not supported")}}let EC=class extends z{constructor(e,t,i){super(),this._workerDescriptor=e,this._disposed=!1,this._modelService=i,this._keepIdleModels=t,this._worker=null,this._modelManager=null}fhr(e,t){throw new Error("Not implemented!")}_getOrCreateWorker(){if(!this._worker)try{this._worker=this._register(Az(this._workerDescriptor)),ok.setChannel(this._worker,this._createEditorWorkerHost())}catch(e){Xx(e),this._worker=this._createFallbackLocalWorker()}return this._worker}async _getProxy(){try{const e=this._getOrCreateWorker().proxy;return await e.$ping(),e}catch(e){return Xx(e),this._worker=this._createFallbackLocalWorker(),this._worker.proxy}}_createFallbackLocalWorker(){return new R$(new I1(this._createEditorWorkerHost(),null))}_createEditorWorkerHost(){return{$fhr:(e,t)=>this.fhr(e,t)}}_getOrCreateModelManager(e){return this._modelManager||(this._modelManager=this._register(new E$(e,this._modelService,this._keepIdleModels))),this._modelManager}async workerWithSyncedResources(e,t=!1){if(this._disposed)return Promise.reject(bW());const i=await this._getProxy();return this._getOrCreateModelManager(i).ensureSyncedResources(e,t),i}async textualSuggest(e,t,i){const n=await this.workerWithSyncedResources(e),s=i.source,r=i.flags;return n.$textualSuggest(e.map(a=>a.toString()),t,s,r)}dispose(){super.dispose(),this._disposed=!0}};EC=_T([Cd(2,Fi)],EC);var io;(function(o){o.DARK="dark",o.LIGHT="light",o.HIGH_CONTRAST_DARK="hcDark",o.HIGH_CONTRAST_LIGHT="hcLight"})(io||(io={}));function mc(o){return o===io.HIGH_CONTRAST_DARK||o===io.HIGH_CONTRAST_LIGHT}function j0(o){return o===io.DARK||o===io.HIGH_CONTRAST_DARK}const en=He("themeService");function Xs(o){return{id:o}}function gk(o){switch(o){case io.DARK:return"vs-dark";case io.HIGH_CONTRAST_DARK:return"hc-black";case io.HIGH_CONTRAST_LIGHT:return"hc-light";default:return"vs"}}const _3={ThemingContribution:"base.contributions.theming"};class A${constructor(){this.themingParticipants=[],this.themingParticipants=[],this.onThemingParticipantAddedEmitter=new A}onColorThemeChange(e){return this.themingParticipants.push(e),this.onThemingParticipantAddedEmitter.fire(e),_e(()=>{const t=this.themingParticipants.indexOf(e);this.themingParticipants.splice(t,1)})}getThemingParticipants(){return this.themingParticipants}}const b3=new A$;Bi.add(_3.ThemingContribution,b3);function Sr(o){return b3.onColorThemeChange(o)}class P$ extends z{constructor(e){super(),this.themeService=e,this.theme=e.getColorTheme(),this._register(this.themeService.onDidColorThemeChange(t=>this.onThemeChange(t)))}onThemeChange(e){this.theme=e,this.updateStyles()}updateStyles(){}}var O$=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},F$=function(o,e){return function(t,i){e(t,i,o)}};let mk=class extends z{constructor(e){super(),this._themeService=e,this._onWillCreateCodeEditor=this._register(new A),this._onCodeEditorAdd=this._register(new A),this.onCodeEditorAdd=this._onCodeEditorAdd.event,this._onCodeEditorRemove=this._register(new A),this.onCodeEditorRemove=this._onCodeEditorRemove.event,this._onWillCreateDiffEditor=this._register(new A),this._onDiffEditorAdd=this._register(new A),this.onDiffEditorAdd=this._onDiffEditorAdd.event,this._onDiffEditorRemove=this._register(new A),this.onDiffEditorRemove=this._onDiffEditorRemove.event,this._decorationOptionProviders=new Map,this._codeEditorOpenHandlers=new yn,this._modelProperties=new Map,this._codeEditors=Object.create(null),this._diffEditors=Object.create(null),this._globalStyleSheet=null}willCreateCodeEditor(){this._onWillCreateCodeEditor.fire()}addCodeEditor(e){this._codeEditors[e.getId()]=e,this._onCodeEditorAdd.fire(e)}removeCodeEditor(e){delete this._codeEditors[e.getId()]&&this._onCodeEditorRemove.fire(e)}listCodeEditors(){return Object.keys(this._codeEditors).map(e=>this._codeEditors[e])}willCreateDiffEditor(){this._onWillCreateDiffEditor.fire()}addDiffEditor(e){this._diffEditors[e.getId()]=e,this._onDiffEditorAdd.fire(e)}listDiffEditors(){return Object.keys(this._diffEditors).map(e=>this._diffEditors[e])}getFocusedCodeEditor(){let e=null;const t=this.listCodeEditors();for(const i of t){if(i.hasTextFocus())return i;i.hasWidgetFocus()&&(e=i)}return e}removeDecorationType(e){const t=this._decorationOptionProviders.get(e);t&&(t.refCount--,t.refCount<=0&&(this._decorationOptionProviders.delete(e),t.dispose(),this.listCodeEditors().forEach(i=>i.removeDecorationsByType(e))))}setModelProperty(e,t,i){const n=e.toString();let s;this._modelProperties.has(n)?s=this._modelProperties.get(n):(s=new Map,this._modelProperties.set(n,s)),s.set(t,i)}getModelProperty(e,t){const i=e.toString();if(this._modelProperties.has(i))return this._modelProperties.get(i).get(t)}async openCodeEditor(e,t,i){for(const n of this._codeEditorOpenHandlers){const s=await n(e,t,i);if(s!==null)return s}return null}registerCodeEditorOpenHandler(e){const t=this._codeEditorOpenHandlers.unshift(e);return _e(t)}};mk=O$([F$(0,en)],mk);var B$=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},cA=function(o,e){return function(t,i){e(t,i,o)}};let NC=class extends mk{constructor(e,t){super(t),this._register(this.onCodeEditorAdd(()=>this._checkContextKey())),this._register(this.onCodeEditorRemove(()=>this._checkContextKey())),this._editorIsOpen=e.createKey("editorIsOpen",!1),this._activeCodeEditor=null,this._register(this.registerCodeEditorOpenHandler(async(i,n,s)=>n?this.doOpenEditor(n,i):null))}_checkContextKey(){let e=!1;for(const t of this.listCodeEditors())if(!t.isSimpleWidget){e=!0;break}this._editorIsOpen.set(e)}setActiveCodeEditor(e){this._activeCodeEditor=e}getActiveCodeEditor(){return this._activeCodeEditor}doOpenEditor(e,t){if(!this.findModel(e,t.resource)){if(t.resource){const s=t.resource.scheme;if(s===Te.http||s===Te.https)return HF(t.resource.toString()),e}return null}const n=t.options?t.options.selection:null;if(n)if(typeof n.endLineNumber=="number"&&typeof n.endColumn=="number")e.setSelection(n),e.revealRangeInCenter(n,1);else{const s={lineNumber:n.startLineNumber,column:n.startColumn};e.setPosition(s),e.revealPositionInCenter(s,1)}return e}findModel(e,t){const i=e.getModel();return i&&i.uri.toString()!==t.toString()?null:i}};NC=B$([cA(0,De),cA(1,en)],NC);Qe(Pt,NC,0);const jc=He("layoutService");var C3=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},v3=function(o,e){return function(t,i){e(t,i,o)}};let TC=class{get mainContainer(){return xN(this._codeEditorService.listCodeEditors())?.getContainerDomNode()??_t.document.body}get activeContainer(){return(this._codeEditorService.getFocusedCodeEditor()??this._codeEditorService.getActiveCodeEditor())?.getContainerDomNode()??this.mainContainer}get mainContainerDimension(){return Ah(this.mainContainer)}get activeContainerDimension(){return Ah(this.activeContainer)}get containers(){return Ag(this._codeEditorService.listCodeEditors().map(e=>e.getContainerDomNode()))}getContainer(){return this.activeContainer}whenContainerStylesLoaded(){}focus(){this._codeEditorService.getFocusedCodeEditor()?.focus()}constructor(e){this._codeEditorService=e,this.onDidLayoutMainContainer=J.None,this.onDidLayoutActiveContainer=J.None,this.onDidLayoutContainer=J.None,this.onDidChangeActiveContainer=J.None,this.onDidAddContainer=J.None,this.mainContainerOffset={top:0,quickPickTop:0},this.activeContainerOffset={top:0,quickPickTop:0}}};TC=C3([v3(0,Pt)],TC);let pk=class extends TC{get mainContainer(){return this._container}constructor(e,t){super(t),this._container=e}};pk=C3([v3(1,Pt)],pk);Qe(jc,TC,1);var e_;(function(o){o[o.Ignore=0]="Ignore",o[o.Info=1]="Info",o[o.Warning=2]="Warning",o[o.Error=3]="Error"})(e_||(e_={}));(function(o){const e="error",t="warning",i="warn",n="info",s="ignore";function r(l){return l?Qu(e,l)?o.Error:Qu(t,l)||Qu(i,l)?o.Warning:Qu(n,l)?o.Info:o.Ignore:o.Ignore}o.fromValue=r;function a(l){switch(l){case o.Error:return e;case o.Warning:return t;case o.Info:return n;default:return s}}o.toString=a})(e_||(e_={}));const Qt=e_,w3=He("dialogService");var bT=Qt;const mn=He("notificationService");class W${}const CT=He("undoRedoService");class y3{constructor(e,t){this.resource=e,this.elements=t}}const yf=class yf{constructor(){this.id=yf._ID++,this.order=1}nextOrder(){return this.id===0?0:this.order++}};yf._ID=0,yf.None=new yf;let _k=yf;const Sf=class Sf{constructor(){this.id=Sf._ID++,this.order=1}nextOrder(){return this.id===0?0:this.order++}};Sf._ID=0,Sf.None=new Sf;let wd=Sf;var H$=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},dA=function(o,e){return function(t,i){e(t,i,o)}};function Nb(o){return o.scheme===Te.file?o.fsPath:o.path}let S3=0;class Tb{constructor(e,t,i,n,s,r,a){this.id=++S3,this.type=0,this.actual=e,this.label=e.label,this.confirmBeforeUndo=e.confirmBeforeUndo||!1,this.resourceLabel=t,this.strResource=i,this.resourceLabels=[this.resourceLabel],this.strResources=[this.strResource],this.groupId=n,this.groupOrder=s,this.sourceId=r,this.sourceOrder=a,this.isValid=!0}setValid(e){this.isValid=e}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.isValid?" VALID":"INVALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class hA{constructor(e,t){this.resourceLabel=e,this.reason=t}}class uA{constructor(){this.elements=new Map}createMessage(){const e=[],t=[];for(const[,n]of this.elements)(n.reason===0?e:t).push(n.resourceLabel);const i=[];return e.length>0&&i.push(m({key:"externalRemoval",comment:["{0} is a list of filenames"]},"The following files have been closed and modified on disk: {0}.",e.join(", "))),t.length>0&&i.push(m({key:"noParallelUniverses",comment:["{0} is a list of filenames"]},"The following files have been modified in an incompatible way: {0}.",t.join(", "))),i.join(` +`)}get size(){return this.elements.size}has(e){return this.elements.has(e)}set(e,t){this.elements.set(e,t)}delete(e){return this.elements.delete(e)}}class V${constructor(e,t,i,n,s,r,a){this.id=++S3,this.type=1,this.actual=e,this.label=e.label,this.confirmBeforeUndo=e.confirmBeforeUndo||!1,this.resourceLabels=t,this.strResources=i,this.groupId=n,this.groupOrder=s,this.sourceId=r,this.sourceOrder=a,this.removedResources=null,this.invalidatedResources=null}canSplit(){return typeof this.actual.split=="function"}removeResource(e,t,i){this.removedResources||(this.removedResources=new uA),this.removedResources.has(t)||this.removedResources.set(t,new hA(e,i))}setValid(e,t,i){i?this.invalidatedResources&&(this.invalidatedResources.delete(t),this.invalidatedResources.size===0&&(this.invalidatedResources=null)):(this.invalidatedResources||(this.invalidatedResources=new uA),this.invalidatedResources.has(t)||this.invalidatedResources.set(t,new hA(e,0)))}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.invalidatedResources?"INVALID":" VALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class L3{constructor(e,t){this.resourceLabel=e,this.strResource=t,this._past=[],this._future=[],this.locked=!1,this.versionId=1}dispose(){for(const e of this._past)e.type===1&&e.removeResource(this.resourceLabel,this.strResource,0);for(const e of this._future)e.type===1&&e.removeResource(this.resourceLabel,this.strResource,0);this.versionId++}toString(){const e=[];e.push(`* ${this.strResource}:`);for(let t=0;t=0;t--)e.push(` * [REDO] ${this._future[t]}`);return e.join(` +`)}flushAllElements(){this._past=[],this._future=[],this.versionId++}_setElementValidFlag(e,t){e.type===1?e.setValid(this.resourceLabel,this.strResource,t):e.setValid(t)}setElementsValidFlag(e,t){for(const i of this._past)t(i.actual)&&this._setElementValidFlag(i,e);for(const i of this._future)t(i.actual)&&this._setElementValidFlag(i,e)}pushElement(e){for(const t of this._future)t.type===1&&t.removeResource(this.resourceLabel,this.strResource,1);this._future=[],this._past.push(e),this.versionId++}createSnapshot(e){const t=[];for(let i=0,n=this._past.length;i=0;i--)t.push(this._future[i].id);return new y3(e,t)}restoreSnapshot(e){const t=e.elements.length;let i=!0,n=0,s=-1;for(let a=0,l=this._past.length;a=t||c.id!==e.elements[n])&&(i=!1,s=0),!i&&c.type===1&&c.removeResource(this.resourceLabel,this.strResource,0)}let r=-1;for(let a=this._future.length-1;a>=0;a--,n++){const l=this._future[a];i&&(n>=t||l.id!==e.elements[n])&&(i=!1,r=a),!i&&l.type===1&&l.removeResource(this.resourceLabel,this.strResource,0)}s!==-1&&(this._past=this._past.slice(0,s)),r!==-1&&(this._future=this._future.slice(r+1)),this.versionId++}getElements(){const e=[],t=[];for(const i of this._past)e.push(i.actual);for(const i of this._future)t.push(i.actual);return{past:e,future:t}}getClosestPastElement(){return this._past.length===0?null:this._past[this._past.length-1]}getSecondClosestPastElement(){return this._past.length<2?null:this._past[this._past.length-2]}getClosestFutureElement(){return this._future.length===0?null:this._future[this._future.length-1]}hasPastElements(){return this._past.length>0}hasFutureElements(){return this._future.length>0}splitPastWorkspaceElement(e,t){for(let i=this._past.length-1;i>=0;i--)if(this._past[i]===e){t.has(this.strResource)?this._past[i]=t.get(this.strResource):this._past.splice(i,1);break}this.versionId++}splitFutureWorkspaceElement(e,t){for(let i=this._future.length-1;i>=0;i--)if(this._future[i]===e){t.has(this.strResource)?this._future[i]=t.get(this.strResource):this._future.splice(i,1);break}this.versionId++}moveBackward(e){this._past.pop(),this._future.push(e),this.versionId++}moveForward(e){this._future.pop(),this._past.push(e),this.versionId++}}class yS{constructor(e){this.editStacks=e,this._versionIds=[];for(let t=0,i=this.editStacks.length;tt.sourceOrder)&&(t=r,i=n)}return[t,i]}canUndo(e){if(e instanceof wd){const[,i]=this._findClosestUndoElementWithSource(e.id);return!!i}const t=this.getUriComparisonKey(e);return this._editStacks.has(t)?this._editStacks.get(t).hasPastElements():!1}_onError(e,t){Ze(e);for(const i of t.strResources)this.removeElements(i);this._notificationService.error(e)}_acquireLocks(e){for(const t of e.editStacks)if(t.locked)throw new Error("Cannot acquire edit stack lock");for(const t of e.editStacks)t.locked=!0;return()=>{for(const t of e.editStacks)t.locked=!1}}_safeInvokeWithLocks(e,t,i,n,s){const r=this._acquireLocks(i);let a;try{a=t()}catch(l){return r(),n.dispose(),this._onError(l,e)}return a?a.then(()=>(r(),n.dispose(),s()),l=>(r(),n.dispose(),this._onError(l,e))):(r(),n.dispose(),s())}async _invokeWorkspacePrepare(e){if(typeof e.actual.prepareUndoRedo>"u")return z.None;const t=e.actual.prepareUndoRedo();return typeof t>"u"?z.None:t}_invokeResourcePrepare(e,t){if(e.actual.type!==1||typeof e.actual.prepareUndoRedo>"u")return t(z.None);const i=e.actual.prepareUndoRedo();return i?MN(i)?t(i):i.then(n=>t(n)):t(z.None)}_getAffectedEditStacks(e){const t=[];for(const i of e.strResources)t.push(this._editStacks.get(i)||x3);return new yS(t)}_tryToSplitAndUndo(e,t,i,n){if(t.canSplit())return this._splitPastWorkspaceElement(t,i),this._notificationService.warn(n),new Mb(this._undo(e,0,!0));for(const s of t.strResources)this.removeElements(s);return this._notificationService.warn(n),new Mb}_checkWorkspaceUndo(e,t,i,n){if(t.removedResources)return this._tryToSplitAndUndo(e,t,t.removedResources,m({key:"cannotWorkspaceUndo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not undo '{0}' across all files. {1}",t.label,t.removedResources.createMessage()));if(n&&t.invalidatedResources)return this._tryToSplitAndUndo(e,t,t.invalidatedResources,m({key:"cannotWorkspaceUndo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not undo '{0}' across all files. {1}",t.label,t.invalidatedResources.createMessage()));const s=[];for(const a of i.editStacks)a.getClosestPastElement()!==t&&s.push(a.resourceLabel);if(s.length>0)return this._tryToSplitAndUndo(e,t,null,m({key:"cannotWorkspaceUndoDueToChanges",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because changes were made to {1}",t.label,s.join(", ")));const r=[];for(const a of i.editStacks)a.locked&&r.push(a.resourceLabel);return r.length>0?this._tryToSplitAndUndo(e,t,null,m({key:"cannotWorkspaceUndoDueToInProgressUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because there is already an undo or redo operation running on {1}",t.label,r.join(", "))):i.isValid()?null:this._tryToSplitAndUndo(e,t,null,m({key:"cannotWorkspaceUndoDueToInMeantimeUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because an undo or redo operation occurred in the meantime",t.label))}_workspaceUndo(e,t,i){const n=this._getAffectedEditStacks(t),s=this._checkWorkspaceUndo(e,t,n,!1);return s?s.returnValue:this._confirmAndExecuteWorkspaceUndo(e,t,n,i)}_isPartOfUndoGroup(e){if(!e.groupId)return!1;for(const[,t]of this._editStacks){const i=t.getClosestPastElement();if(i){if(i===e){const n=t.getSecondClosestPastElement();if(n&&n.groupId===e.groupId)return!0}if(i.groupId===e.groupId)return!0}}return!1}async _confirmAndExecuteWorkspaceUndo(e,t,i,n){if(t.canSplit()&&!this._isPartOfUndoGroup(t)){let a;(function(d){d[d.All=0]="All",d[d.This=1]="This",d[d.Cancel=2]="Cancel"})(a||(a={}));const{result:l}=await this._dialogService.prompt({type:Qt.Info,message:m("confirmWorkspace","Would you like to undo '{0}' across all files?",t.label),buttons:[{label:m({key:"ok",comment:["{0} denotes a number that is > 1, && denotes a mnemonic"]},"&&Undo in {0} Files",i.editStacks.length),run:()=>a.All},{label:m({key:"nok",comment:["&& denotes a mnemonic"]},"Undo this &&File"),run:()=>a.This}],cancelButton:{run:()=>a.Cancel}});if(l===a.Cancel)return;if(l===a.This)return this._splitPastWorkspaceElement(t,null),this._undo(e,0,!0);const c=this._checkWorkspaceUndo(e,t,i,!1);if(c)return c.returnValue;n=!0}let s;try{s=await this._invokeWorkspacePrepare(t)}catch(a){return this._onError(a,t)}const r=this._checkWorkspaceUndo(e,t,i,!0);if(r)return s.dispose(),r.returnValue;for(const a of i.editStacks)a.moveBackward(t);return this._safeInvokeWithLocks(t,()=>t.actual.undo(),i,s,()=>this._continueUndoInGroup(t.groupId,n))}_resourceUndo(e,t,i){if(!t.isValid){e.flushAllElements();return}if(e.locked){const n=m({key:"cannotResourceUndoDueToInProgressUndoRedo",comment:["{0} is a label for an operation."]},"Could not undo '{0}' because there is already an undo or redo operation running.",t.label);this._notificationService.warn(n);return}return this._invokeResourcePrepare(t,n=>(e.moveBackward(t),this._safeInvokeWithLocks(t,()=>t.actual.undo(),new yS([e]),n,()=>this._continueUndoInGroup(t.groupId,i))))}_findClosestUndoElementInGroup(e){if(!e)return[null,null];let t=null,i=null;for(const[n,s]of this._editStacks){const r=s.getClosestPastElement();r&&r.groupId===e&&(!t||r.groupOrder>t.groupOrder)&&(t=r,i=n)}return[t,i]}_continueUndoInGroup(e,t){if(!e)return;const[,i]=this._findClosestUndoElementInGroup(e);if(i)return this._undo(i,0,t)}undo(e){if(e instanceof wd){const[,t]=this._findClosestUndoElementWithSource(e.id);return t?this._undo(t,e.id,!1):void 0}return typeof e=="string"?this._undo(e,0,!1):this._undo(this.getUriComparisonKey(e),0,!1)}_undo(e,t=0,i){if(!this._editStacks.has(e))return;const n=this._editStacks.get(e),s=n.getClosestPastElement();if(!s)return;if(s.groupId){const[a,l]=this._findClosestUndoElementInGroup(s.groupId);if(s!==a&&l)return this._undo(l,t,i)}return(s.sourceId!==t||s.confirmBeforeUndo)&&!i?this._confirmAndContinueUndo(e,t,s):s.type===1?this._workspaceUndo(e,s,i):this._resourceUndo(n,s,i)}async _confirmAndContinueUndo(e,t,i){if((await this._dialogService.confirm({message:m("confirmDifferentSource","Would you like to undo '{0}'?",i.label),primaryButton:m({key:"confirmDifferentSource.yes",comment:["&& denotes a mnemonic"]},"&&Yes"),cancelButton:m("confirmDifferentSource.no","No")})).confirmed)return this._undo(e,t,!0)}_findClosestRedoElementWithSource(e){if(!e)return[null,null];let t=null,i=null;for(const[n,s]of this._editStacks){const r=s.getClosestFutureElement();r&&r.sourceId===e&&(!t||r.sourceOrder0)return this._tryToSplitAndRedo(e,t,null,m({key:"cannotWorkspaceRedoDueToChanges",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because changes were made to {1}",t.label,s.join(", ")));const r=[];for(const a of i.editStacks)a.locked&&r.push(a.resourceLabel);return r.length>0?this._tryToSplitAndRedo(e,t,null,m({key:"cannotWorkspaceRedoDueToInProgressUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because there is already an undo or redo operation running on {1}",t.label,r.join(", "))):i.isValid()?null:this._tryToSplitAndRedo(e,t,null,m({key:"cannotWorkspaceRedoDueToInMeantimeUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because an undo or redo operation occurred in the meantime",t.label))}_workspaceRedo(e,t){const i=this._getAffectedEditStacks(t),n=this._checkWorkspaceRedo(e,t,i,!1);return n?n.returnValue:this._executeWorkspaceRedo(e,t,i)}async _executeWorkspaceRedo(e,t,i){let n;try{n=await this._invokeWorkspacePrepare(t)}catch(r){return this._onError(r,t)}const s=this._checkWorkspaceRedo(e,t,i,!0);if(s)return n.dispose(),s.returnValue;for(const r of i.editStacks)r.moveForward(t);return this._safeInvokeWithLocks(t,()=>t.actual.redo(),i,n,()=>this._continueRedoInGroup(t.groupId))}_resourceRedo(e,t){if(!t.isValid){e.flushAllElements();return}if(e.locked){const i=m({key:"cannotResourceRedoDueToInProgressUndoRedo",comment:["{0} is a label for an operation."]},"Could not redo '{0}' because there is already an undo or redo operation running.",t.label);this._notificationService.warn(i);return}return this._invokeResourcePrepare(t,i=>(e.moveForward(t),this._safeInvokeWithLocks(t,()=>t.actual.redo(),new yS([e]),i,()=>this._continueRedoInGroup(t.groupId))))}_findClosestRedoElementInGroup(e){if(!e)return[null,null];let t=null,i=null;for(const[n,s]of this._editStacks){const r=s.getClosestFutureElement();r&&r.groupId===e&&(!t||r.groupOrder=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fA=function(o,e){return function(t,i){e(t,i,o)}};const q0=He("ILanguageFeatureDebounceService");var MC;(function(o){const e=new WeakMap;let t=0;function i(n){let s=e.get(n);return s===void 0&&(s=++t,e.set(n,s)),s}o.of=i})(MC||(MC={}));class $${constructor(e){this._default=e}get(e){return this._default}update(e,t){return this._default}default(){return this._default}}class K${constructor(e,t,i,n,s,r){this._logService=e,this._name=t,this._registry=i,this._default=n,this._min=s,this._max=r,this._cache=new ou(50,.7)}_key(e){return e.id+this._registry.all(e).reduce((t,i)=>N0(MC.of(i),t),0)}get(e){const t=this._key(e),i=this._cache.get(t);return i?bn(i.value,this._min,this._max):this.default()}update(e,t){const i=this._key(e);let n=this._cache.get(i);n||(n=new z$(6),this._cache.set(i,n));const s=bn(n.update(t),this._min,this._max);return GN(e.uri,"output")||this._logService.trace(`[DEBOUNCE: ${this._name}] for ${e.uri.toString()} is ${s}ms`),s}_overall(){const e=new k3;for(const[,t]of this._cache)e.update(t.value);return e.value}default(){const e=this._overall()|0||this._default;return bn(e,this._min,this._max)}}let Ck=class{constructor(e,t){this._logService=e,this._data=new Map,this._isDev=t.isExtensionDevelopment||!t.isBuilt}for(e,t,i){const n=i?.min??50,s=i?.max??n**2,r=i?.key??void 0,a=`${MC.of(e)},${n}${r?","+r:""}`;let l=this._data.get(a);return l||(this._isDev?(this._logService.debug(`[DEBOUNCE: ${t}] is disabled in developed mode`),l=new $$(n*1.5)):l=new K$(this._logService,t,e,this._overallAverage()|0||n*1.5,n,s),this._data.set(a,l)),l}_overallAverage(){const e=new k3;for(const t of this._data.values())e.update(t.default());return e.value}};Ck=U$([fA(0,gs),fA(1,vT)],Ck);Qe(q0,Ck,1);class sr{static getLanguageId(e){return(e&255)>>>0}static getTokenType(e){return(e&768)>>>8}static containsBalancedBrackets(e){return(e&1024)!==0}static getFontStyle(e){return(e&30720)>>>11}static getForeground(e){return(e&16744448)>>>15}static getBackground(e){return(e&4278190080)>>>24}static getClassNameFromMetadata(e){let i="mtk"+this.getForeground(e);const n=this.getFontStyle(e);return n&1&&(i+=" mtki"),n&2&&(i+=" mtkb"),n&4&&(i+=" mtku"),n&8&&(i+=" mtks"),i}static getInlineStyleFromMetadata(e,t){const i=this.getForeground(e),n=this.getFontStyle(e);let s=`color: ${t[i]};`;n&1&&(s+="font-style: italic;"),n&2&&(s+="font-weight: bold;");let r="";return n&4&&(r+=" underline"),n&8&&(r+=" line-through"),r&&(s+=`text-decoration:${r};`),s}static getPresentationFromMetadata(e){const t=this.getForeground(e),i=this.getFontStyle(e);return{foreground:t,italic:!!(i&1),bold:!!(i&2),underline:!!(i&4),strikethrough:!!(i&8)}}}function hg(o){let e=0,t=0,i=0,n=0;for(let s=0,r=o.length;s=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},SS=function(o,e){return function(t,i){e(t,i,o)}};let vk=class{constructor(e,t,i,n){this._legend=e,this._themeService=t,this._languageService=i,this._logService=n,this._hasWarnedOverlappingTokens=!1,this._hasWarnedInvalidLengthTokens=!1,this._hasWarnedInvalidEditStart=!1,this._hashTable=new wk}getMetadata(e,t,i){const n=this._languageService.languageIdCodec.encodeLanguageId(i),s=this._hashTable.get(e,t,n);let r;if(s)r=s.metadata;else{let a=this._legend.tokenTypes[e];const l=[];if(a){let c=t;for(let h=0;c>0&&h>1;const d=this._themeService.getColorTheme().getTokenStyleMetadata(a,l,i);if(typeof d>"u")r=2147483647;else{if(r=0,typeof d.italic<"u"){const h=(d.italic?1:0)<<11;r|=h|1}if(typeof d.bold<"u"){const h=(d.bold?2:0)<<11;r|=h|2}if(typeof d.underline<"u"){const h=(d.underline?4:0)<<11;r|=h|4}if(typeof d.strikethrough<"u"){const h=(d.strikethrough?8:0)<<11;r|=h|8}if(d.foreground){const h=d.foreground<<15;r|=h|16}r===0&&(r=2147483647)}}else r=2147483647,a="not-in-legend";this._hashTable.add(e,t,n,r)}return r}warnOverlappingSemanticTokens(e,t){this._hasWarnedOverlappingTokens||(this._hasWarnedOverlappingTokens=!0,this._logService.warn(`Overlapping semantic tokens detected at lineNumber ${e}, column ${t}`))}warnInvalidLengthSemanticTokens(e,t){this._hasWarnedInvalidLengthTokens||(this._hasWarnedInvalidLengthTokens=!0,this._logService.warn(`Semantic token with invalid length detected at lineNumber ${e}, column ${t}`))}warnInvalidEditStart(e,t,i,n,s){this._hasWarnedInvalidEditStart||(this._hasWarnedInvalidEditStart=!0,this._logService.warn(`Invalid semantic tokens edit detected (previousResultId: ${e}, resultId: ${t}) at edit #${i}: The provided start offset ${n} is outside the previous data (length ${s}).`))}};vk=j$([SS(1,en),SS(2,qt),SS(3,gs)],vk);class q${constructor(e,t,i,n){this.tokenTypeIndex=e,this.tokenModifierSet=t,this.languageId=i,this.metadata=n,this.next=null}}const qa=class qa{constructor(){this._elementsCount=0,this._currentLengthIndex=0,this._currentLength=qa._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1=this._growCount){const s=this._elements;this._currentLengthIndex++,this._currentLength=qa._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},LS=function(o,e){return function(t,i){e(t,i,o)}};let yk=class extends z{constructor(e,t,i){super(),this._themeService=e,this._logService=t,this._languageService=i,this._caches=new WeakMap,this._register(this._themeService.onDidColorThemeChange(()=>{this._caches=new WeakMap}))}getStyling(e){return this._caches.has(e)||this._caches.set(e,new vk(e.getLegend(),this._themeService,this._languageService,this._logService)),this._caches.get(e)}};yk=Z$([LS(0,en),LS(1,gs),LS(2,qt)],yk);Qe(G$,yk,1);function Vl(o){return o===47||o===92}function D3(o){return o.replace(/[\\/]/g,oi.sep)}function Y$(o){return o.indexOf("/")===-1&&(o=D3(o)),/^[a-zA-Z]:(\/|$)/.test(o)&&(o="/"+o),o}function gA(o,e=oi.sep){if(!o)return"";const t=o.length,i=o.charCodeAt(0);if(Vl(i)){if(Vl(o.charCodeAt(1))&&!Vl(o.charCodeAt(2))){let s=3;const r=s;for(;so.length)return!1;if(t){if(!WN(o,e))return!1;if(e.length===o.length)return!0;let s=e.length;return e.charAt(e.length-1)===i&&s--,o.charAt(s)===i}return e.charAt(e.length-1)!==i&&(e+=i),o.indexOf(e)===0}function I3(o){return o>=65&&o<=90||o>=97&&o<=122}function Q$(o,e=kn){return e?I3(o.charCodeAt(0))&&o.charCodeAt(1)===58:!1}const Rb="**",mA="/",E1="[/\\\\]",N1="[^/\\\\]",X$=/\//g;function pA(o,e){switch(o){case 0:return"";case 1:return`${N1}*?`;default:return`(?:${E1}|${N1}+${E1}${e?`|${E1}${N1}+`:""})*?`}}function _A(o,e){if(!o)return[];const t=[];let i=!1,n=!1,s="";for(const r of o){switch(r){case e:if(!i&&!n){t.push(s),s="";continue}break;case"{":i=!0;break;case"}":i=!1;break;case"[":n=!0;break;case"]":n=!1;break}s+=r}return s&&t.push(s),t}function E3(o){if(!o)return"";let e="";const t=_A(o,mA);if(t.every(i=>i===Rb))e=".*";else{let i=!1;t.forEach((n,s)=>{if(n===Rb){if(i)return;e+=pA(2,s===t.length-1)}else{let r=!1,a="",l=!1,c="";for(const d of n){if(d!=="}"&&r){a+=d;continue}if(l&&(d!=="]"||!c)){let h;d==="-"?h=d:(d==="^"||d==="!")&&!c?h="^":d===mA?h="":h=xl(d),c+=h;continue}switch(d){case"{":r=!0;continue;case"[":l=!0;continue;case"}":{const u=`(?:${_A(a,",").map(f=>E3(f)).join("|")})`;e+=u,r=!1,a="";break}case"]":{e+="["+c+"]",l=!1,c="";break}case"?":e+=N1;continue;case"*":e+=pA(1);continue;default:e+=xl(d)}}swT(a,e)).filter(a=>a!==sa),o),i=t.length;if(!i)return sa;if(i===1)return t[0];const n=function(a,l){for(let c=0,d=t.length;c!!a.allBasenames);s&&(n.allBasenames=s.allBasenames);const r=t.reduce((a,l)=>l.allPaths?a.concat(l.allPaths):a,[]);return r.length&&(n.allPaths=r),n}function wA(o,e,t){const i=fc===oi.sep,n=i?o:o.replace(X$,fc),s=fc+n,r=oi.sep+o;let a;return t?a=function(l,c){return typeof l=="string"&&(l===n||l.endsWith(s)||!i&&(l===o||l.endsWith(r)))?e:null}:a=function(l,c){return typeof l=="string"&&(l===n||!i&&l===o)?e:null},a.allPaths=[(t?"*/":"./")+o],a}function lK(o){try{const e=new RegExp(`^${E3(o)}$`);return function(t){return e.lastIndex=0,typeof t=="string"&&e.test(t)?o:null}}catch{return sa}}function cK(o,e,t){return!o||typeof e!="string"?!1:N3(o)(e,void 0,t)}function N3(o,e={}){if(!o)return CA;if(typeof o=="string"||dK(o)){const t=wT(o,e);if(t===sa)return CA;const i=function(n,s){return!!t(n,s)};return t.allBasenames&&(i.allBasenames=t.allBasenames),t.allPaths&&(i.allPaths=t.allPaths),i}return hK(o,e)}function dK(o){const e=o;return e?typeof e.base=="string"&&typeof e.pattern=="string":!1}function hK(o,e){const t=T3(Object.getOwnPropertyNames(o).map(a=>uK(a,o[a],e)).filter(a=>a!==sa)),i=t.length;if(!i)return sa;if(!t.some(a=>!!a.requiresSiblings)){if(i===1)return t[0];const a=function(d,h){let u;for(let f=0,g=t.length;f{for(const f of u){const g=await f;if(typeof g=="string")return g}return null})():null},l=t.find(d=>!!d.allBasenames);l&&(a.allBasenames=l.allBasenames);const c=t.reduce((d,h)=>h.allPaths?d.concat(h.allPaths):d,[]);return c.length&&(a.allPaths=c),a}const n=function(a,l,c){let d,h;for(let u=0,f=t.length;u{for(const u of h){const f=await u;if(typeof f=="string")return f}return null})():null},s=t.find(a=>!!a.allBasenames);s&&(n.allBasenames=s.allBasenames);const r=t.reduce((a,l)=>l.allPaths?a.concat(l.allPaths):a,[]);return r.length&&(n.allPaths=r),n}function uK(o,e,t){if(e===!1)return sa;const i=wT(o,t);if(i===sa)return sa;if(typeof e=="boolean")return i;if(e){const n=e.when;if(typeof n=="string"){const s=(r,a,l,c)=>{if(!c||!i(r,a))return null;const d=n.replace("$(basename)",()=>l),h=c(d);return Bx(h)?h.then(u=>u?o:null):h?o:null};return s.requiresSiblings=!0,s}}return i}function T3(o,e){const t=o.filter(a=>!!a.basenames);if(t.length<2)return o;const i=t.reduce((a,l)=>{const c=l.basenames;return c?a.concat(c):a},[]);let n;if(e){n=[];for(let a=0,l=i.length;a{const c=l.patterns;return c?a.concat(c):a},[]);const s=function(a,l){if(typeof a!="string")return null;if(!l){let d;for(d=a.length;d>0;d--){const h=a.charCodeAt(d-1);if(h===47||h===92)break}l=a.substr(d)}const c=i.indexOf(l);return c!==-1?n[c]:null};s.basenames=i,s.patterns=n,s.allBasenames=i;const r=o.filter(a=>!a.basenames);return r.push(s),r}function M3(o,e,t,i,n,s){if(Array.isArray(o)){let r=0;for(const a of o){const l=M3(a,e,t,i,n,s);if(l===10)return l;l>r&&(r=l)}return r}else{if(typeof o=="string")return i?o==="*"?5:o===t?10:0:0;if(o){const{language:r,pattern:a,scheme:l,hasAccessToAllModels:c,notebookType:d}=o;if(!i&&!c)return 0;d&&n&&(e=n);let h=0;if(l)if(l===e.scheme)h=10;else if(l==="*")h=5;else return 0;if(r)if(r===t)h=10;else if(r==="*")h=Math.max(h,5);else return 0;if(d)if(d===s)h=10;else if(d==="*"&&s!==void 0)h=Math.max(h,5);else return 0;if(a){let u;if(typeof a=="string"?u=a:u={...a,base:tF(a.base)},u===e.fsPath||cK(u,e.fsPath))h=10;else return 0}return h}else return 0}}function R3(o){return typeof o=="string"?!1:Array.isArray(o)?o.every(R3):!!o.exclusive}class yA{constructor(e,t,i,n,s){this.uri=e,this.languageId=t,this.notebookUri=i,this.notebookType=n,this.recursive=s}equals(e){return this.notebookType===e.notebookType&&this.languageId===e.languageId&&this.uri.toString()===e.uri.toString()&&this.notebookUri?.toString()===e.notebookUri?.toString()&&this.recursive===e.recursive}}class Ft{constructor(e){this._notebookInfoResolver=e,this._clock=0,this._entries=[],this._onDidChange=new A,this.onDidChange=this._onDidChange.event}register(e,t){let i={selector:e,provider:t,_score:-1,_time:this._clock++};return this._entries.push(i),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),_e(()=>{if(i){const n=this._entries.indexOf(i);n>=0&&(this._entries.splice(n,1),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),i=void 0)}})}has(e){return this.all(e).length>0}all(e){if(!e)return[];this._updateScores(e,!1);const t=[];for(const i of this._entries)i._score>0&&t.push(i.provider);return t}ordered(e,t=!1){const i=[];return this._orderedForEach(e,t,n=>i.push(n.provider)),i}orderedGroups(e){const t=[];let i,n;return this._orderedForEach(e,!1,s=>{i&&n===s._score?i.push(s.provider):(n=s._score,i=[s.provider],t.push(i))}),t}_orderedForEach(e,t,i){this._updateScores(e,t);for(const n of this._entries)n._score>0&&i(n)}_updateScores(e,t){const i=this._notebookInfoResolver?.(e.uri),n=i?new yA(e.uri,e.getLanguageId(),i.uri,i.type,t):new yA(e.uri,e.getLanguageId(),void 0,void 0,t);if(!this._lastCandidate?.equals(n)){this._lastCandidate=n;for(const s of this._entries)if(s._score=M3(s.selector,n.uri,n.languageId,RU(e),n.notebookUri,n.notebookType),R3(s.selector)&&s._score>0)if(t)s._score=0;else{for(const r of this._entries)r._score=0;s._score=1e3;break}this._entries.sort(Ft._compareByScoreAndTime)}}static _compareByScoreAndTime(e,t){return e._scoret._score?-1:Dm(e.selector)&&!Dm(t.selector)?1:!Dm(e.selector)&&Dm(t.selector)?-1:e._timet._time?-1:0}}function Dm(o){return typeof o=="string"?!1:Array.isArray(o)?o.some(Dm):!!o.isBuiltin}class fK{constructor(){this.referenceProvider=new Ft(this._score.bind(this)),this.renameProvider=new Ft(this._score.bind(this)),this.newSymbolNamesProvider=new Ft(this._score.bind(this)),this.codeActionProvider=new Ft(this._score.bind(this)),this.definitionProvider=new Ft(this._score.bind(this)),this.typeDefinitionProvider=new Ft(this._score.bind(this)),this.declarationProvider=new Ft(this._score.bind(this)),this.implementationProvider=new Ft(this._score.bind(this)),this.documentSymbolProvider=new Ft(this._score.bind(this)),this.inlayHintsProvider=new Ft(this._score.bind(this)),this.colorProvider=new Ft(this._score.bind(this)),this.codeLensProvider=new Ft(this._score.bind(this)),this.documentFormattingEditProvider=new Ft(this._score.bind(this)),this.documentRangeFormattingEditProvider=new Ft(this._score.bind(this)),this.onTypeFormattingEditProvider=new Ft(this._score.bind(this)),this.signatureHelpProvider=new Ft(this._score.bind(this)),this.hoverProvider=new Ft(this._score.bind(this)),this.documentHighlightProvider=new Ft(this._score.bind(this)),this.multiDocumentHighlightProvider=new Ft(this._score.bind(this)),this.selectionRangeProvider=new Ft(this._score.bind(this)),this.foldingRangeProvider=new Ft(this._score.bind(this)),this.linkProvider=new Ft(this._score.bind(this)),this.inlineCompletionsProvider=new Ft(this._score.bind(this)),this.inlineEditProvider=new Ft(this._score.bind(this)),this.completionProvider=new Ft(this._score.bind(this)),this.linkedEditingRangeProvider=new Ft(this._score.bind(this)),this.documentRangeSemanticTokensProvider=new Ft(this._score.bind(this)),this.documentSemanticTokensProvider=new Ft(this._score.bind(this)),this.documentDropEditProvider=new Ft(this._score.bind(this)),this.documentPasteEditProvider=new Ft(this._score.bind(this))}_score(e){return this._notebookTypeResolver?.(e)}}Qe(Se,fK,1);function yT(o){return`--vscode-${o.replace(/\./g,"-")}`}function oe(o){return`var(${yT(o)})`}function gK(o,e){return`var(${yT(o)}, ${e})`}function mK(o){return o!==null&&typeof o=="object"&&"light"in o&&"dark"in o}const A3={ColorContribution:"base.contributions.colors"},pK="default";class _K{constructor(){this._onDidChangeSchema=new A,this.onDidChangeSchema=this._onDidChangeSchema.event,this.colorSchema={type:"object",properties:{}},this.colorReferenceSchema={type:"string",enum:[],enumDescriptions:[]},this.colorsById={}}registerColor(e,t,i,n=!1,s){const r={id:e,description:i,defaults:t,needsTransparency:n,deprecationMessage:s};this.colorsById[e]=r;const a={type:"string",format:"color-hex",defaultSnippets:[{body:"${1:#ff0000}"}]};return s&&(a.deprecationMessage=s),n&&(a.pattern="^#(?:(?[0-9a-fA-f]{3}[0-9a-eA-E])|(?:[0-9a-fA-F]{6}(?:(?![fF]{2})(?:[0-9a-fA-F]{2}))))?$",a.patternErrorMessage=m("transparecyRequired","This color must be transparent or it will obscure content")),this.colorSchema.properties[e]={description:i,oneOf:[a,{type:"string",const:pK,description:m("useDefault","Use the default color.")}]},this.colorReferenceSchema.enum.push(e),this.colorReferenceSchema.enumDescriptions.push(i),this._onDidChangeSchema.fire(),e}getColors(){return Object.keys(this.colorsById).map(e=>this.colorsById[e])}resolveDefaultColor(e,t){const i=this.colorsById[e];if(i?.defaults){const n=mK(i.defaults)?i.defaults[t.type]:i.defaults;return jo(n,t)}}getColorSchema(){return this.colorSchema}toString(){const e=(t,i)=>{const n=t.indexOf(".")===-1?0:1,s=i.indexOf(".")===-1?0:1;return n!==s?n-s:t.localeCompare(i)};return Object.keys(this.colorsById).sort(e).map(t=>`- \`${t}\`: ${this.colorsById[t].description}`).join(` +`)}}const G0=new _K;Bi.add(A3.ColorContribution,G0);function D(o,e,t,i,n){return G0.registerColor(o,e,t,i,n)}function bK(o,e){switch(o.op){case 0:return jo(o.value,e)?.darken(o.factor);case 1:return jo(o.value,e)?.lighten(o.factor);case 2:return jo(o.value,e)?.transparent(o.factor);case 3:{const t=jo(o.background,e);return t?jo(o.value,e)?.makeOpaque(t):jo(o.value,e)}case 4:for(const t of o.values){const i=jo(t,e);if(i)return i}return;case 6:return jo(e.defines(o.if)?o.then:o.else,e);case 5:{const t=jo(o.value,e);if(!t)return;const i=jo(o.background,e);return i?t.isDarkerThan(i)?q.getLighterColor(t,i,o.factor).transparent(o.transparency):q.getDarkerColor(t,i,o.factor).transparent(o.transparency):t.transparent(o.factor*o.transparency)}default:throw z0()}}function ru(o,e){return{op:0,value:o,factor:e}}function pr(o,e){return{op:1,value:o,factor:e}}function Ae(o,e){return{op:2,value:o,factor:e}}function t_(...o){return{op:4,values:o}}function CK(o,e,t){return{op:6,if:o,then:e,else:t}}function SA(o,e,t,i){return{op:5,value:o,background:e,factor:t,transparency:i}}function jo(o,e){if(o!==null){if(typeof o=="string")return o[0]==="#"?q.fromHex(o):e.getColor(o);if(o instanceof q)return o;if(typeof o=="object")return bK(o,e)}}const P3="vscode://schemas/workbench-colors",O3=Bi.as(K0.JSONContribution);O3.registerSchema(P3,G0.getColorSchema());const LA=new ci(()=>O3.notifySchemaChanged(P3),200);G0.onDidChangeSchema(()=>{LA.isScheduled()||LA.schedule()});const Pe=D("foreground",{dark:"#CCCCCC",light:"#616161",hcDark:"#FFFFFF",hcLight:"#292929"},m("foreground","Overall foreground color. This color is only used if not overridden by a component."));D("disabledForeground",{dark:"#CCCCCC80",light:"#61616180",hcDark:"#A5A5A5",hcLight:"#7F7F7F"},m("disabledForeground","Overall foreground for disabled elements. This color is only used if not overridden by a component."));D("errorForeground",{dark:"#F48771",light:"#A1260D",hcDark:"#F48771",hcLight:"#B5200D"},m("errorForeground","Overall foreground color for error messages. This color is only used if not overridden by a component."));D("descriptionForeground",{light:"#717171",dark:Ae(Pe,.7),hcDark:Ae(Pe,.7),hcLight:Ae(Pe,.7)},m("descriptionForeground","Foreground color for description text providing additional information, for example for a label."));const Lk=D("icon.foreground",{dark:"#C5C5C5",light:"#424242",hcDark:"#FFFFFF",hcLight:"#292929"},m("iconForeground","The default color for icons in the workbench.")),ga=D("focusBorder",{dark:"#007FD4",light:"#0090F1",hcDark:"#F38518",hcLight:"#006BBD"},m("focusBorder","Overall border color for focused elements. This color is only used if not overridden by a component.")),Ye=D("contrastBorder",{light:null,dark:null,hcDark:"#6FC3DF",hcLight:"#0F4A85"},m("contrastBorder","An extra border around elements to separate them from others for greater contrast.")),Ut=D("contrastActiveBorder",{light:null,dark:null,hcDark:ga,hcLight:ga},m("activeContrastBorder","An extra border around active elements to separate them from others for greater contrast."));D("selection.background",null,m("selectionBackground","The background color of text selections in the workbench (e.g. for input fields or text areas). Note that this does not apply to selections within the editor."));const vK=D("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},m("textLinkForeground","Foreground color for links in text."));D("textLink.activeForeground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},m("textLinkActiveForeground","Foreground color for links in text when clicked on and on mouse hover."));D("textSeparator.foreground",{light:"#0000002e",dark:"#ffffff2e",hcDark:q.black,hcLight:"#292929"},m("textSeparatorForeground","Color for text separators."));D("textPreformat.foreground",{light:"#A31515",dark:"#D7BA7D",hcDark:"#000000",hcLight:"#FFFFFF"},m("textPreformatForeground","Foreground color for preformatted text segments."));D("textPreformat.background",{light:"#0000001A",dark:"#FFFFFF1A",hcDark:"#FFFFFF",hcLight:"#09345f"},m("textPreformatBackground","Background color for preformatted text segments."));D("textBlockQuote.background",{light:"#f2f2f2",dark:"#222222",hcDark:null,hcLight:"#F2F2F2"},m("textBlockQuoteBackground","Background color for block quotes in text."));D("textBlockQuote.border",{light:"#007acc80",dark:"#007acc80",hcDark:q.white,hcLight:"#292929"},m("textBlockQuoteBorder","Border color for block quotes in text."));D("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hcDark:q.black,hcLight:"#F2F2F2"},m("textCodeBlockBackground","Background color for code blocks in text."));D("sash.hoverBorder",ga,m("sashActiveBorder","Border color of active sashes."));const T1=D("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hcDark:q.black,hcLight:"#0F4A85"},m("badgeBackground","Badge background color. Badges are small information labels, e.g. for search results count.")),wK=D("badge.foreground",{dark:q.white,light:"#333",hcDark:q.white,hcLight:q.white},m("badgeForeground","Badge foreground color. Badges are small information labels, e.g. for search results count.")),ST=D("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hcDark:null,hcLight:null},m("scrollbarShadow","Scrollbar shadow to indicate that the view is scrolled.")),F3=D("scrollbarSlider.background",{dark:q.fromHex("#797979").transparent(.4),light:q.fromHex("#646464").transparent(.4),hcDark:Ae(Ye,.6),hcLight:Ae(Ye,.4)},m("scrollbarSliderBackground","Scrollbar slider background color.")),B3=D("scrollbarSlider.hoverBackground",{dark:q.fromHex("#646464").transparent(.7),light:q.fromHex("#646464").transparent(.7),hcDark:Ae(Ye,.8),hcLight:Ae(Ye,.8)},m("scrollbarSliderHoverBackground","Scrollbar slider background color when hovering.")),W3=D("scrollbarSlider.activeBackground",{dark:q.fromHex("#BFBFBF").transparent(.4),light:q.fromHex("#000000").transparent(.6),hcDark:Ye,hcLight:Ye},m("scrollbarSliderActiveBackground","Scrollbar slider background color when clicked on.")),yK=D("progressBar.background",{dark:q.fromHex("#0E70C0"),light:q.fromHex("#0E70C0"),hcDark:Ye,hcLight:Ye},m("progressBarBackground","Background color of the progress bar that can show for long running operations.")),Oo=D("editor.background",{light:"#ffffff",dark:"#1E1E1E",hcDark:q.black,hcLight:q.white},m("editorBackground","Editor background color.")),Sa=D("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:q.white,hcLight:Pe},m("editorForeground","Editor default foreground color."));D("editorStickyScroll.background",Oo,m("editorStickyScrollBackground","Background color of sticky scroll in the editor"));D("editorStickyScrollHover.background",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:q.fromHex("#0F4A85").transparent(.1)},m("editorStickyScrollHoverBackground","Background color of sticky scroll on hover in the editor"));D("editorStickyScroll.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("editorStickyScrollBorder","Border color of sticky scroll in the editor"));D("editorStickyScroll.shadow",ST,m("editorStickyScrollShadow"," Shadow color of sticky scroll in the editor"));const no=D("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:q.white},m("editorWidgetBackground","Background color of editor widgets, such as find/replace.")),Z0=D("editorWidget.foreground",Pe,m("editorWidgetForeground","Foreground color of editor widgets, such as find/replace.")),LT=D("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hcDark:Ye,hcLight:Ye},m("editorWidgetBorder","Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget."));D("editorWidget.resizeBorder",null,m("editorWidgetResizeBorder","Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget."));D("editorError.background",null,m("editorError.background","Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);const Y0=D("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},m("editorError.foreground","Foreground color of error squigglies in the editor.")),SK=D("editorError.border",{dark:null,light:null,hcDark:q.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},m("errorBorder","If set, color of double underlines for errors in the editor.")),LK=D("editorWarning.background",null,m("editorWarning.background","Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),Il=D("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD370",hcLight:"#895503"},m("editorWarning.foreground","Foreground color of warning squigglies in the editor.")),i_=D("editorWarning.border",{dark:null,light:null,hcDark:q.fromHex("#FFCC00").transparent(.8),hcLight:q.fromHex("#FFCC00").transparent(.8)},m("warningBorder","If set, color of double underlines for warnings in the editor."));D("editorInfo.background",null,m("editorInfo.background","Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);const ma=D("editorInfo.foreground",{dark:"#3794FF",light:"#1a85ff",hcDark:"#3794FF",hcLight:"#1a85ff"},m("editorInfo.foreground","Foreground color of info squigglies in the editor.")),n_=D("editorInfo.border",{dark:null,light:null,hcDark:q.fromHex("#3794FF").transparent(.8),hcLight:"#292929"},m("infoBorder","If set, color of double underlines for infos in the editor.")),xK=D("editorHint.foreground",{dark:q.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},m("editorHint.foreground","Foreground color of hint squigglies in the editor."));D("editorHint.border",{dark:null,light:null,hcDark:q.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},m("hintBorder","If set, color of double underlines for hints in the editor."));const kK=D("editorLink.activeForeground",{dark:"#4E94CE",light:q.blue,hcDark:q.cyan,hcLight:"#292929"},m("activeLinkForeground","Color of active links.")),tf=D("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},m("editorSelectionBackground","Color of the editor selection.")),DK=D("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:q.white},m("editorSelectionForeground","Color of the selected text for high contrast.")),H3=D("editor.inactiveSelectionBackground",{light:Ae(tf,.5),dark:Ae(tf,.5),hcDark:Ae(tf,.7),hcLight:Ae(tf,.5)},m("editorInactiveSelection","Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),V3=D("editor.selectionHighlightBackground",{light:SA(tf,Oo,.3,.6),dark:SA(tf,Oo,.3,.6),hcDark:null,hcLight:null},m("editorSelectionHighlight","Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:Ut,hcLight:Ut},m("editorSelectionHighlightBorder","Border color for regions with the same content as the selection."));D("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},m("editorFindMatch","Color of the current search match."));D("editor.findMatchForeground",null,m("editorFindMatchForeground","Text color of the current search match."));const ll=D("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},m("findMatchHighlight","Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.findMatchHighlightForeground",null,m("findMatchHighlightForeground","Foreground color of the other search matches."),!0);D("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},m("findRangeHighlight","Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.findMatchBorder",{light:null,dark:null,hcDark:Ut,hcLight:Ut},m("editorFindMatchBorder","Border color of the current search match."));const Ud=D("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:Ut,hcLight:Ut},m("findMatchHighlightBorder","Border color of the other search matches."));D("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:Ae(Ut,.4),hcLight:Ae(Ut,.4)},m("findRangeHighlightBorder","Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},m("hoverHighlight","Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0);const RC=D("editorHoverWidget.background",no,m("hoverBackground","Background color of the editor hover."));D("editorHoverWidget.foreground",Z0,m("hoverForeground","Foreground color of the editor hover."));const z3=D("editorHoverWidget.border",LT,m("hoverBorder","Border color of the editor hover."));D("editorHoverWidget.statusBarBackground",{dark:pr(RC,.2),light:ru(RC,.05),hcDark:no,hcLight:no},m("statusBarBackground","Background color of the editor hover status bar."));const xT=D("editorInlayHint.foreground",{dark:"#969696",light:"#969696",hcDark:q.white,hcLight:q.black},m("editorInlayHintForeground","Foreground color of inline hints")),kT=D("editorInlayHint.background",{dark:Ae(T1,.1),light:Ae(T1,.1),hcDark:Ae(q.white,.1),hcLight:Ae(T1,.1)},m("editorInlayHintBackground","Background color of inline hints")),IK=D("editorInlayHint.typeForeground",xT,m("editorInlayHintForegroundTypes","Foreground color of inline hints for types")),EK=D("editorInlayHint.typeBackground",kT,m("editorInlayHintBackgroundTypes","Background color of inline hints for types")),NK=D("editorInlayHint.parameterForeground",xT,m("editorInlayHintForegroundParameter","Foreground color of inline hints for parameters")),TK=D("editorInlayHint.parameterBackground",kT,m("editorInlayHintBackgroundParameter","Background color of inline hints for parameters")),MK=D("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},m("editorLightBulbForeground","The color used for the lightbulb actions icon."));D("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("editorLightBulbAutoFixForeground","The color used for the lightbulb auto fix actions icon."));D("editorLightBulbAi.foreground",MK,m("editorLightBulbAiForeground","The color used for the lightbulb AI icon."));D("editor.snippetTabstopHighlightBackground",{dark:new q(new qe(124,124,124,.3)),light:new q(new qe(10,50,100,.2)),hcDark:new q(new qe(124,124,124,.3)),hcLight:new q(new qe(10,50,100,.2))},m("snippetTabstopHighlightBackground","Highlight background color of a snippet tabstop."));D("editor.snippetTabstopHighlightBorder",null,m("snippetTabstopHighlightBorder","Highlight border color of a snippet tabstop."));D("editor.snippetFinalTabstopHighlightBackground",null,m("snippetFinalTabstopHighlightBackground","Highlight background color of the final tabstop of a snippet."));D("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new q(new qe(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},m("snippetFinalTabstopHighlightBorder","Highlight border color of the final tabstop of a snippet."));const xk=new q(new qe(155,185,85,.2)),kk=new q(new qe(255,0,0,.2)),RK=D("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c40",hcDark:null,hcLight:null},m("diffEditorInserted","Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),AK=D("diffEditor.removedTextBackground",{dark:"#ff000033",light:"#ff000033",hcDark:null,hcLight:null},m("diffEditorRemoved","Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0);D("diffEditor.insertedLineBackground",{dark:xk,light:xk,hcDark:null,hcLight:null},m("diffEditorInsertedLines","Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0);D("diffEditor.removedLineBackground",{dark:kk,light:kk,hcDark:null,hcLight:null},m("diffEditorRemovedLines","Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0);D("diffEditorGutter.insertedLineBackground",null,m("diffEditorInsertedLineGutter","Background color for the margin where lines got inserted."));D("diffEditorGutter.removedLineBackground",null,m("diffEditorRemovedLineGutter","Background color for the margin where lines got removed."));const PK=D("diffEditorOverview.insertedForeground",null,m("diffEditorOverviewInserted","Diff overview ruler foreground for inserted content.")),OK=D("diffEditorOverview.removedForeground",null,m("diffEditorOverviewRemoved","Diff overview ruler foreground for removed content."));D("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},m("diffEditorInsertedOutline","Outline color for the text that got inserted."));D("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},m("diffEditorRemovedOutline","Outline color for text that got removed."));D("diffEditor.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("diffEditorBorder","Border color between the two text editors."));D("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},m("diffDiagonalFill","Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views."));D("diffEditor.unchangedRegionBackground","sideBar.background",m("diffEditor.unchangedRegionBackground","The background color of unchanged blocks in the diff editor."));D("diffEditor.unchangedRegionForeground","foreground",m("diffEditor.unchangedRegionForeground","The foreground color of unchanged blocks in the diff editor."));D("diffEditor.unchangedCodeBackground",{dark:"#74747429",light:"#b8b8b829",hcDark:null,hcLight:null},m("diffEditor.unchangedCodeBackground","The background color of unchanged code in the diff editor."));const q_=D("widget.shadow",{dark:Ae(q.black,.36),light:Ae(q.black,.16),hcDark:null,hcLight:null},m("widgetShadow","Shadow color of widgets such as find/replace inside the editor.")),FK=D("widget.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("widgetBorder","Border color of widgets such as find/replace inside the editor.")),xA=D("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},m("toolbarHoverBackground","Toolbar background when hovering over actions using the mouse"));D("toolbar.hoverOutline",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("toolbarHoverOutline","Toolbar outline when hovering over actions using the mouse"));D("toolbar.activeBackground",{dark:pr(xA,.1),light:ru(xA,.1),hcDark:null,hcLight:null},m("toolbarActiveBackground","Toolbar background when holding the mouse over actions"));const BK=D("breadcrumb.foreground",Ae(Pe,.8),m("breadcrumbsFocusForeground","Color of focused breadcrumb items.")),WK=D("breadcrumb.background",Oo,m("breadcrumbsBackground","Background color of breadcrumb items.")),kA=D("breadcrumb.focusForeground",{light:ru(Pe,.2),dark:pr(Pe,.1),hcDark:pr(Pe,.1),hcLight:pr(Pe,.1)},m("breadcrumbsFocusForeground","Color of focused breadcrumb items.")),HK=D("breadcrumb.activeSelectionForeground",{light:ru(Pe,.2),dark:pr(Pe,.1),hcDark:pr(Pe,.1),hcLight:pr(Pe,.1)},m("breadcrumbsSelectedForeground","Color of selected breadcrumb items."));D("breadcrumbPicker.background",no,m("breadcrumbsSelectedBackground","Background color of breadcrumb item picker."));const U3=.5,DA=q.fromHex("#40C8AE").transparent(U3),IA=q.fromHex("#40A6FF").transparent(U3),EA=q.fromHex("#606060").transparent(.4),DT=.4,ug=1,Dk=D("merge.currentHeaderBackground",{dark:DA,light:DA,hcDark:null,hcLight:null},m("mergeCurrentHeaderBackground","Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);D("merge.currentContentBackground",Ae(Dk,DT),m("mergeCurrentContentBackground","Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const Ik=D("merge.incomingHeaderBackground",{dark:IA,light:IA,hcDark:null,hcLight:null},m("mergeIncomingHeaderBackground","Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);D("merge.incomingContentBackground",Ae(Ik,DT),m("mergeIncomingContentBackground","Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const Ek=D("merge.commonHeaderBackground",{dark:EA,light:EA,hcDark:null,hcLight:null},m("mergeCommonHeaderBackground","Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);D("merge.commonContentBackground",Ae(Ek,DT),m("mergeCommonContentBackground","Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const fg=D("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},m("mergeBorder","Border color on headers and the splitter in inline merge-conflicts."));D("editorOverviewRuler.currentContentForeground",{dark:Ae(Dk,ug),light:Ae(Dk,ug),hcDark:fg,hcLight:fg},m("overviewRulerCurrentContentForeground","Current overview ruler foreground for inline merge-conflicts."));D("editorOverviewRuler.incomingContentForeground",{dark:Ae(Ik,ug),light:Ae(Ik,ug),hcDark:fg,hcLight:fg},m("overviewRulerIncomingContentForeground","Incoming overview ruler foreground for inline merge-conflicts."));D("editorOverviewRuler.commonContentForeground",{dark:Ae(Ek,ug),light:Ae(Ek,ug),hcDark:fg,hcLight:fg},m("overviewRulerCommonContentForeground","Common ancestor overview ruler foreground for inline merge-conflicts."));D("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:"#AB5A00"},m("overviewRulerFindMatchForeground","Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0);D("editorOverviewRuler.selectionHighlightForeground","#A0A0A0CC",m("overviewRulerSelectionHighlightForeground","Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0);const VK=D("problemsErrorIcon.foreground",Y0,m("problemsErrorIconForeground","The color used for the problems error icon.")),zK=D("problemsWarningIcon.foreground",Il,m("problemsWarningIconForeground","The color used for the problems warning icon.")),UK=D("problemsInfoIcon.foreground",ma,m("problemsInfoIconForeground","The color used for the problems info icon.")),$K=D("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hcDark:"#AB5A00",hcLight:"#0F4A85"},m("minimapFindMatchHighlight","Minimap marker color for find matches."),!0);D("minimap.selectionOccurrenceHighlight",{light:"#c9c9c9",dark:"#676767",hcDark:"#ffffff",hcLight:"#0F4A85"},m("minimapSelectionOccurrenceHighlight","Minimap marker color for repeating editor selections."),!0);const NA=D("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hcDark:"#ffffff",hcLight:"#0F4A85"},m("minimapSelectionHighlight","Minimap marker color for the editor selection."),!0),KK=D("minimap.infoHighlight",{dark:ma,light:ma,hcDark:n_,hcLight:n_},m("minimapInfo","Minimap marker color for infos.")),jK=D("minimap.warningHighlight",{dark:Il,light:Il,hcDark:i_,hcLight:i_},m("overviewRuleWarning","Minimap marker color for warnings.")),qK=D("minimap.errorHighlight",{dark:new q(new qe(255,18,18,.7)),light:new q(new qe(255,18,18,.7)),hcDark:new q(new qe(255,50,50,1)),hcLight:"#B5200D"},m("minimapError","Minimap marker color for errors.")),GK=D("minimap.background",null,m("minimapBackground","Minimap background color.")),ZK=D("minimap.foregroundOpacity",q.fromHex("#000f"),m("minimapForegroundOpacity",'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.'));D("minimapSlider.background",Ae(F3,.5),m("minimapSliderBackground","Minimap slider background color."));D("minimapSlider.hoverBackground",Ae(B3,.5),m("minimapSliderHoverBackground","Minimap slider background color when hovering."));D("minimapSlider.activeBackground",Ae(W3,.5),m("minimapSliderActiveBackground","Minimap slider background color when clicked on."));D("charts.foreground",Pe,m("chartsForeground","The foreground color used in charts."));D("charts.lines",Ae(Pe,.5),m("chartsLines","The color used for horizontal lines in charts."));D("charts.red",Y0,m("chartsRed","The red color used in chart visualizations."));D("charts.blue",ma,m("chartsBlue","The blue color used in chart visualizations."));D("charts.yellow",Il,m("chartsYellow","The yellow color used in chart visualizations."));D("charts.orange",$K,m("chartsOrange","The orange color used in chart visualizations."));D("charts.green",{dark:"#89D185",light:"#388A34",hcDark:"#89D185",hcLight:"#374e06"},m("chartsGreen","The green color used in chart visualizations."));D("charts.purple",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("chartsPurple","The purple color used in chart visualizations."));const YK=D("input.background",{dark:"#3C3C3C",light:q.white,hcDark:q.black,hcLight:q.white},m("inputBoxBackground","Input box background.")),QK=D("input.foreground",Pe,m("inputBoxForeground","Input box foreground.")),XK=D("input.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("inputBoxBorder","Input box border.")),$3=D("inputOption.activeBorder",{dark:"#007ACC",light:"#007ACC",hcDark:Ye,hcLight:Ye},m("inputBoxActiveOptionBorder","Border color of activated options in input fields.")),JK=D("inputOption.hoverBackground",{dark:"#5a5d5e80",light:"#b8b8b850",hcDark:null,hcLight:null},m("inputOption.hoverBackground","Background color of activated options in input fields.")),IT=D("inputOption.activeBackground",{dark:Ae(ga,.4),light:Ae(ga,.2),hcDark:q.transparent,hcLight:q.transparent},m("inputOption.activeBackground","Background hover color of options in input fields.")),K3=D("inputOption.activeForeground",{dark:q.white,light:q.black,hcDark:Pe,hcLight:Pe},m("inputOption.activeForeground","Foreground color of activated options in input fields."));D("input.placeholderForeground",{light:Ae(Pe,.5),dark:Ae(Pe,.5),hcDark:Ae(Pe,.7),hcLight:Ae(Pe,.7)},m("inputPlaceholderForeground","Input box foreground color for placeholder text."));const ej=D("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hcDark:q.black,hcLight:q.white},m("inputValidationInfoBackground","Input validation background color for information severity.")),tj=D("inputValidation.infoForeground",{dark:null,light:null,hcDark:null,hcLight:Pe},m("inputValidationInfoForeground","Input validation foreground color for information severity.")),ij=D("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hcDark:Ye,hcLight:Ye},m("inputValidationInfoBorder","Input validation border color for information severity.")),nj=D("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hcDark:q.black,hcLight:q.white},m("inputValidationWarningBackground","Input validation background color for warning severity.")),sj=D("inputValidation.warningForeground",{dark:null,light:null,hcDark:null,hcLight:Pe},m("inputValidationWarningForeground","Input validation foreground color for warning severity.")),oj=D("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hcDark:Ye,hcLight:Ye},m("inputValidationWarningBorder","Input validation border color for warning severity.")),rj=D("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hcDark:q.black,hcLight:q.white},m("inputValidationErrorBackground","Input validation background color for error severity.")),aj=D("inputValidation.errorForeground",{dark:null,light:null,hcDark:null,hcLight:Pe},m("inputValidationErrorForeground","Input validation foreground color for error severity.")),lj=D("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hcDark:Ye,hcLight:Ye},m("inputValidationErrorBorder","Input validation border color for error severity.")),Q0=D("dropdown.background",{dark:"#3C3C3C",light:q.white,hcDark:q.black,hcLight:q.white},m("dropdownBackground","Dropdown background.")),cj=D("dropdown.listBackground",{dark:null,light:null,hcDark:q.black,hcLight:q.white},m("dropdownListBackground","Dropdown list background.")),ET=D("dropdown.foreground",{dark:"#F0F0F0",light:Pe,hcDark:q.white,hcLight:Pe},m("dropdownForeground","Dropdown foreground.")),NT=D("dropdown.border",{dark:Q0,light:"#CECECE",hcDark:Ye,hcLight:Ye},m("dropdownBorder","Dropdown border.")),j3=D("button.foreground",q.white,m("buttonForeground","Button foreground color.")),dj=D("button.separator",Ae(j3,.4),m("buttonSeparator","Button separator color.")),Im=D("button.background",{dark:"#0E639C",light:"#007ACC",hcDark:null,hcLight:"#0F4A85"},m("buttonBackground","Button background color.")),hj=D("button.hoverBackground",{dark:pr(Im,.2),light:ru(Im,.2),hcDark:Im,hcLight:Im},m("buttonHoverBackground","Button background color when hovering.")),uj=D("button.border",Ye,m("buttonBorder","Button border color.")),fj=D("button.secondaryForeground",{dark:q.white,light:q.white,hcDark:q.white,hcLight:Pe},m("buttonSecondaryForeground","Secondary button foreground color.")),Nk=D("button.secondaryBackground",{dark:"#3A3D41",light:"#5F6A79",hcDark:null,hcLight:q.white},m("buttonSecondaryBackground","Secondary button background color.")),gj=D("button.secondaryHoverBackground",{dark:pr(Nk,.2),light:ru(Nk,.2),hcDark:null,hcLight:null},m("buttonSecondaryHoverBackground","Secondary button background color when hovering.")),Em=D("radio.activeForeground",K3,m("radioActiveForeground","Foreground color of active radio option.")),mj=D("radio.activeBackground",IT,m("radioBackground","Background color of active radio option.")),pj=D("radio.activeBorder",$3,m("radioActiveBorder","Border color of the active radio option.")),_j=D("radio.inactiveForeground",null,m("radioInactiveForeground","Foreground color of inactive radio option.")),bj=D("radio.inactiveBackground",null,m("radioInactiveBackground","Background color of inactive radio option.")),Cj=D("radio.inactiveBorder",{light:Ae(Em,.2),dark:Ae(Em,.2),hcDark:Ae(Em,.4),hcLight:Ae(Em,.2)},m("radioInactiveBorder","Border color of the inactive radio option.")),vj=D("radio.inactiveHoverBackground",JK,m("radioHoverBackground","Background color of inactive active radio option when hovering.")),wj=D("checkbox.background",Q0,m("checkbox.background","Background color of checkbox widget."));D("checkbox.selectBackground",no,m("checkbox.select.background","Background color of checkbox widget when the element it's in is selected."));const yj=D("checkbox.foreground",ET,m("checkbox.foreground","Foreground color of checkbox widget.")),Sj=D("checkbox.border",NT,m("checkbox.border","Border color of checkbox widget."));D("checkbox.selectBorder",Lk,m("checkbox.select.border","Border color of checkbox widget when the element it's in is selected."));const Lj=D("keybindingLabel.background",{dark:new q(new qe(128,128,128,.17)),light:new q(new qe(221,221,221,.4)),hcDark:q.transparent,hcLight:q.transparent},m("keybindingLabelBackground","Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),xj=D("keybindingLabel.foreground",{dark:q.fromHex("#CCCCCC"),light:q.fromHex("#555555"),hcDark:q.white,hcLight:Pe},m("keybindingLabelForeground","Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),kj=D("keybindingLabel.border",{dark:new q(new qe(51,51,51,.6)),light:new q(new qe(204,204,204,.4)),hcDark:new q(new qe(111,195,223)),hcLight:Ye},m("keybindingLabelBorder","Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),Dj=D("keybindingLabel.bottomBorder",{dark:new q(new qe(68,68,68,.6)),light:new q(new qe(187,187,187,.4)),hcDark:new q(new qe(111,195,223)),hcLight:Pe},m("keybindingLabelBottomBorder","Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.")),Ij=D("list.focusBackground",null,m("listFocusBackground","List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Ej=D("list.focusForeground",null,m("listFocusForeground","List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Nj=D("list.focusOutline",{dark:ga,light:ga,hcDark:Ut,hcLight:Ut},m("listFocusOutline","List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Tj=D("list.focusAndSelectionOutline",null,m("listFocusAndSelectionOutline","List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not.")),Bh=D("list.activeSelectionBackground",{dark:"#04395E",light:"#0060C0",hcDark:null,hcLight:q.fromHex("#0F4A85").transparent(.1)},m("listActiveSelectionBackground","List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),s_=D("list.activeSelectionForeground",{dark:q.white,light:q.white,hcDark:null,hcLight:null},m("listActiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),q3=D("list.activeSelectionIconForeground",null,m("listActiveSelectionIconForeground","List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Mj=D("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hcDark:null,hcLight:q.fromHex("#0F4A85").transparent(.1)},m("listInactiveSelectionBackground","List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Rj=D("list.inactiveSelectionForeground",null,m("listInactiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Aj=D("list.inactiveSelectionIconForeground",null,m("listInactiveSelectionIconForeground","List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Pj=D("list.inactiveFocusBackground",null,m("listInactiveFocusBackground","List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Oj=D("list.inactiveFocusOutline",null,m("listInactiveFocusOutline","List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),G3=D("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:q.white.transparent(.1),hcLight:q.fromHex("#0F4A85").transparent(.1)},m("listHoverBackground","List/Tree background when hovering over items using the mouse.")),Z3=D("list.hoverForeground",null,m("listHoverForeground","List/Tree foreground when hovering over items using the mouse.")),Fj=D("list.dropBackground",{dark:"#062F4A",light:"#D6EBFF",hcDark:null,hcLight:null},m("listDropBackground","List/Tree drag and drop background when moving items over other items when using the mouse.")),Bj=D("list.dropBetweenBackground",{dark:Lk,light:Lk,hcDark:null,hcLight:null},m("listDropBetweenBackground","List/Tree drag and drop border color when moving items between items when using the mouse.")),Nm=D("list.highlightForeground",{dark:"#2AAAFF",light:"#0066BF",hcDark:ga,hcLight:ga},m("highlight","List/Tree foreground color of the match highlights when searching inside the list/tree.")),Wj=D("list.focusHighlightForeground",{dark:Nm,light:CK(Bh,Nm,"#BBE7FF"),hcDark:Nm,hcLight:Nm},m("listFocusHighlightForeground","List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree."));D("list.invalidItemForeground",{dark:"#B89500",light:"#B89500",hcDark:"#B89500",hcLight:"#B5200D"},m("invalidItemForeground","List/Tree foreground color for invalid items, for example an unresolved root in explorer."));D("list.errorForeground",{dark:"#F88070",light:"#B01011",hcDark:null,hcLight:null},m("listErrorForeground","Foreground color of list items containing errors."));D("list.warningForeground",{dark:"#CCA700",light:"#855F00",hcDark:null,hcLight:null},m("listWarningForeground","Foreground color of list items containing warnings."));const Hj=D("listFilterWidget.background",{light:ru(no,0),dark:pr(no,0),hcDark:no,hcLight:no},m("listFilterWidgetBackground","Background color of the type filter widget in lists and trees.")),Vj=D("listFilterWidget.outline",{dark:q.transparent,light:q.transparent,hcDark:"#f38518",hcLight:"#007ACC"},m("listFilterWidgetOutline","Outline color of the type filter widget in lists and trees.")),zj=D("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hcDark:Ye,hcLight:Ye},m("listFilterWidgetNoMatchesOutline","Outline color of the type filter widget in lists and trees, when there are no matches.")),Uj=D("listFilterWidget.shadow",q_,m("listFilterWidgetShadow","Shadow color of the type filter widget in lists and trees."));D("list.filterMatchBackground",{dark:ll,light:ll,hcDark:null,hcLight:null},m("listFilterMatchHighlight","Background color of the filtered match."));D("list.filterMatchBorder",{dark:Ud,light:Ud,hcDark:Ye,hcLight:Ut},m("listFilterMatchHighlightBorder","Border color of the filtered match."));D("list.deemphasizedForeground",{dark:"#8C8C8C",light:"#8E8E90",hcDark:"#A7A8A9",hcLight:"#666666"},m("listDeemphasizedForeground","List/Tree foreground color for items that are deemphasized."));const Y3=D("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hcDark:"#a9a9a9",hcLight:"#a5a5a5"},m("treeIndentGuidesStroke","Tree stroke color for the indentation guides.")),$j=D("tree.inactiveIndentGuidesStroke",Ae(Y3,.4),m("treeInactiveIndentGuidesStroke","Tree stroke color for the indentation guides that are not active.")),Kj=D("tree.tableColumnsBorder",{dark:"#CCCCCC20",light:"#61616120",hcDark:null,hcLight:null},m("tableColumnsBorder","Table border color between columns.")),jj=D("tree.tableOddRowsBackground",{dark:Ae(Pe,.04),light:Ae(Pe,.04),hcDark:null,hcLight:null},m("tableOddRowsBackgroundColor","Background color for odd table rows."));D("editorActionList.background",no,m("editorActionListBackground","Action List background color."));D("editorActionList.foreground",Z0,m("editorActionListForeground","Action List foreground color."));D("editorActionList.focusForeground",s_,m("editorActionListFocusForeground","Action List foreground color for the focused item."));D("editorActionList.focusBackground",Bh,m("editorActionListFocusBackground","Action List background color for the focused item."));const qj=D("menu.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("menuBorder","Border color of menus.")),Gj=D("menu.foreground",ET,m("menuForeground","Foreground color of menu items.")),Zj=D("menu.background",Q0,m("menuBackground","Background color of menu items.")),Yj=D("menu.selectionForeground",s_,m("menuSelectionForeground","Foreground color of the selected menu item in menus.")),Qj=D("menu.selectionBackground",Bh,m("menuSelectionBackground","Background color of the selected menu item in menus.")),Xj=D("menu.selectionBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("menuSelectionBorder","Border color of the selected menu item in menus.")),Jj=D("menu.separatorBackground",{dark:"#606060",light:"#D4D4D4",hcDark:Ye,hcLight:Ye},m("menuSeparatorBackground","Color of a separator menu item in menus.")),TA=D("quickInput.background",no,m("pickerBackground","Quick picker background color. The quick picker widget is the container for pickers like the command palette.")),eq=D("quickInput.foreground",Z0,m("pickerForeground","Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.")),tq=D("quickInputTitle.background",{dark:new q(new qe(255,255,255,.105)),light:new q(new qe(0,0,0,.06)),hcDark:"#000000",hcLight:q.white},m("pickerTitleBackground","Quick picker title background color. The quick picker widget is the container for pickers like the command palette.")),Q3=D("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hcDark:q.white,hcLight:"#0F4A85"},m("pickerGroupForeground","Quick picker color for grouping labels.")),iq=D("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hcDark:q.white,hcLight:"#0F4A85"},m("pickerGroupBorder","Quick picker color for grouping borders.")),MA=D("quickInput.list.focusBackground",null,"",void 0,m("quickInput.list.focusBackground deprecation","Please use quickInputList.focusBackground instead")),AC=D("quickInputList.focusForeground",s_,m("quickInput.listFocusForeground","Quick picker foreground color for the focused item.")),TT=D("quickInputList.focusIconForeground",q3,m("quickInput.listFocusIconForeground","Quick picker icon foreground color for the focused item.")),PC=D("quickInputList.focusBackground",{dark:t_(MA,Bh),light:t_(MA,Bh),hcDark:null,hcLight:null},m("quickInput.listFocusBackground","Quick picker background color for the focused item."));D("search.resultsInfoForeground",{light:Pe,dark:Ae(Pe,.65),hcDark:Pe,hcLight:Pe},m("search.resultsInfoForeground","Color of the text in the search viewlet's completion message."));D("searchEditor.findMatchBackground",{light:Ae(ll,.66),dark:Ae(ll,.66),hcDark:ll,hcLight:ll},m("searchEditor.queryMatch","Color of the Search Editor query matches."));D("searchEditor.findMatchBorder",{light:Ae(Ud,.66),dark:Ae(Ud,.66),hcDark:Ud,hcLight:Ud},m("searchEditor.editorFindMatchBorder","Border color of the Search Editor query matches."));var nq=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},RA=function(o,e){return function(t,i){e(t,i,o)}};const au=He("hoverService");let gg=class extends z{get delay(){return this.isInstantlyHovering()?0:this._delay}constructor(e,t,i={},n,s){super(),this.placement=e,this.instantHover=t,this.overrideOptions=i,this.configurationService=n,this.hoverService=s,this.lastHoverHideTime=0,this.timeLimit=200,this.hoverDisposables=this._register(new X),this._delay=this.configurationService.getValue("workbench.hover.delay"),this._register(this.configurationService.onDidChangeConfiguration(r=>{r.affectsConfiguration("workbench.hover.delay")&&(this._delay=this.configurationService.getValue("workbench.hover.delay"))}))}showHover(e,t){const i=typeof this.overrideOptions=="function"?this.overrideOptions(e,t):this.overrideOptions;this.hoverDisposables.clear();const n=Ei(e.target)?[e.target]:e.target.targetElements;for(const r of n)this.hoverDisposables.add(jt(r,"keydown",a=>{a.equals(9)&&this.hoverService.hideHover()}));const s=Ei(e.content)?void 0:e.content.toString();return this.hoverService.showHover({...e,...i,persistence:{hideOnKeyDown:!0,...i.persistence},id:s,appearance:{...e.appearance,compact:!0,skipFadeInAnimation:this.isInstantlyHovering(),...i.appearance}},t)}isInstantlyHovering(){return this.instantHover&&Date.now()-this.lastHoverHideTime{try{e.releasePointerCapture(t)}catch{}}))}catch{r=fe(e)}this._hooks.add(U(r,ee.POINTER_MOVE,a=>{if(a.buttons!==i){this.stopMonitoring(!0);return}a.preventDefault(),this._pointerMoveCallback(a)})),this._hooks.add(U(r,ee.POINTER_UP,a=>this.stopMonitoring(!0)))}}function Jt(o,e,t){let i=null,n=null;if(typeof t.value=="function"?(i="value",n=t.value,n.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof t.get=="function"&&(i="get",n=t.get),!n)throw new Error("not supported");const s=`$memoize$${e}`;t[i]=function(...r){return this.hasOwnProperty(s)||Object.defineProperty(this,s,{configurable:!1,enumerable:!1,writable:!1,value:n.apply(this,r)}),this[s]}}var sq=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},St;(function(o){o.Tap="-monaco-gesturetap",o.Change="-monaco-gesturechange",o.Start="-monaco-gesturestart",o.End="-monaco-gesturesend",o.Contextmenu="-monaco-gesturecontextmenu"})(St||(St={}));const $i=class $i extends z{constructor(){super(),this.dispatched=!1,this.targets=new yn,this.ignoreTargets=new yn,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(J.runAndSubscribe(T0,({window:e,disposables:t})=>{t.add(U(e.document,"touchstart",i=>this.onTouchStart(i),{passive:!1})),t.add(U(e.document,"touchend",i=>this.onTouchEnd(e,i))),t.add(U(e.document,"touchmove",i=>this.onTouchMove(i),{passive:!1}))},{window:_t,disposables:this._store}))}static addTarget(e){if(!$i.isTouchDevice())return z.None;$i.INSTANCE||($i.INSTANCE=new $i);const t=$i.INSTANCE.targets.push(e);return _e(t)}static ignoreTarget(e){if(!$i.isTouchDevice())return z.None;$i.INSTANCE||($i.INSTANCE=new $i);const t=$i.INSTANCE.ignoreTargets.push(e);return _e(t)}static isTouchDevice(){return"ontouchstart"in _t||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(e){const t=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let i=0,n=e.targetTouches.length;i=$i.HOLD_DELAY&&Math.abs(l.initialPageX-Gs(l.rollingPageX))<30&&Math.abs(l.initialPageY-Gs(l.rollingPageY))<30){const d=this.newGestureEvent(St.Contextmenu,l.initialTarget);d.pageX=Gs(l.rollingPageX),d.pageY=Gs(l.rollingPageY),this.dispatchEvent(d)}else if(n===1){const d=Gs(l.rollingPageX),h=Gs(l.rollingPageY),u=Gs(l.rollingTimestamps)-l.rollingTimestamps[0],f=d-l.rollingPageX[0],g=h-l.rollingPageY[0],p=[...this.targets].filter(_=>l.initialTarget instanceof Node&&_.contains(l.initialTarget));this.inertia(e,p,i,Math.abs(f)/u,f>0?1:-1,d,Math.abs(g)/u,g>0?1:-1,h)}this.dispatchEvent(this.newGestureEvent(St.End,l.initialTarget)),delete this.activeTouches[a.identifier]}this.dispatched&&(t.preventDefault(),t.stopPropagation(),this.dispatched=!1)}newGestureEvent(e,t){const i=document.createEvent("CustomEvent");return i.initEvent(e,!1,!0),i.initialTarget=t,i.tapCount=0,i}dispatchEvent(e){if(e.type===St.Tap){const t=new Date().getTime();let i=0;t-this._lastSetTapCountTime>$i.CLEAR_TAP_COUNT_TIME?i=1:i=2,this._lastSetTapCountTime=t,e.tapCount=i}else(e.type===St.Change||e.type===St.Contextmenu)&&(this._lastSetTapCountTime=0);if(e.initialTarget instanceof Node){for(const i of this.ignoreTargets)if(i.contains(e.initialTarget))return;const t=[];for(const i of this.targets)if(i.contains(e.initialTarget)){let n=0,s=e.initialTarget;for(;s&&s!==i;)n++,s=s.parentElement;t.push([n,i])}t.sort((i,n)=>i[0]-n[0]);for(const[i,n]of t)n.dispatchEvent(e),this.dispatched=!0}}inertia(e,t,i,n,s,r,a,l,c){this.handle=fs(e,()=>{const d=Date.now(),h=d-i;let u=0,f=0,g=!0;n+=$i.SCROLL_FRICTION*h,a+=$i.SCROLL_FRICTION*h,n>0&&(g=!1,u=s*n*h),a>0&&(g=!1,f=l*a*h);const p=this.newGestureEvent(St.Change);p.translationX=u,p.translationY=f,t.forEach(_=>_.dispatchEvent(p)),g||this.inertia(e,t,d,n,s,r+u,a,l,c+f)})}onTouchMove(e){const t=Date.now();for(let i=0,n=e.changedTouches.length;i3&&(r.rollingPageX.shift(),r.rollingPageY.shift(),r.rollingTimestamps.shift()),r.rollingPageX.push(s.pageX),r.rollingPageY.push(s.pageY),r.rollingTimestamps.push(t)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}};$i.SCROLL_FRICTION=-.005,$i.HOLD_DELAY=700,$i.CLEAR_TAP_COUNT_TIME=400;let fn=$i;sq([Jt],fn,"isTouchDevice",null);let xr=class extends z{onclick(e,t){this._register(U(e,ee.CLICK,i=>t(new ur(fe(e),i))))}onmousedown(e,t){this._register(U(e,ee.MOUSE_DOWN,i=>t(new ur(fe(e),i))))}onmouseover(e,t){this._register(U(e,ee.MOUSE_OVER,i=>t(new ur(fe(e),i))))}onmouseleave(e,t){this._register(U(e,ee.MOUSE_LEAVE,i=>t(new ur(fe(e),i))))}onkeydown(e,t){this._register(U(e,ee.KEY_DOWN,i=>t(new Nt(i))))}onkeyup(e,t){this._register(U(e,ee.KEY_UP,i=>t(new Nt(i))))}oninput(e,t){this._register(U(e,ee.INPUT,t))}onblur(e,t){this._register(U(e,ee.BLUR,t))}onfocus(e,t){this._register(U(e,ee.FOCUS,t))}ignoreGesture(e){return fn.ignoreTarget(e)}};const mg=11;class oq extends xr{constructor(e){super(),this._onActivate=e.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=e.bgWidth+"px",this.bgDomNode.style.height=e.bgHeight+"px",typeof e.top<"u"&&(this.bgDomNode.style.top="0px"),typeof e.left<"u"&&(this.bgDomNode.style.left="0px"),typeof e.bottom<"u"&&(this.bgDomNode.style.bottom="0px"),typeof e.right<"u"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=e.className,this.domNode.classList.add(...Ee.asClassNameArray(e.icon)),this.domNode.style.position="absolute",this.domNode.style.width=mg+"px",this.domNode.style.height=mg+"px",typeof e.top<"u"&&(this.domNode.style.top=e.top+"px"),typeof e.left<"u"&&(this.domNode.style.left=e.left+"px"),typeof e.bottom<"u"&&(this.domNode.style.bottom=e.bottom+"px"),typeof e.right<"u"&&(this.domNode.style.right=e.right+"px"),this._pointerMoveMonitor=this._register(new Hg),this._register(jt(this.bgDomNode,ee.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._register(jt(this.domNode,ee.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._pointerdownRepeatTimer=this._register(new QN),this._pointerdownScheduleRepeatTimer=this._register(new wr)}_arrowPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const t=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,fe(e))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(t,200),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,i=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),e.preventDefault()}}class rq extends z{constructor(e,t,i){super(),this._visibility=e,this._visibleClassName=t,this._invisibleClassName=i,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new wr)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this._updateShouldBeVisible())}setShouldBeVisible(e){this._rawShouldBeVisible=e,this._updateShouldBeVisible()}_applyVisibilitySetting(){return this._visibility===2?!1:this._visibility===3?!0:this._rawShouldBeVisible}_updateShouldBeVisible(){const e=this._applyVisibilitySetting();this._shouldBeVisible!==e&&(this._shouldBeVisible=e,this.ensureVisibility())}setIsNeeded(e){this._isNeeded!==e&&(this._isNeeded=e,this.ensureVisibility())}setDomNode(e){this._domNode=e,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded){this._hide(!1);return}this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(e){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(e?" fade":"")))}}const aq=140;class X3 extends xr{constructor(e){super(),this._lazyRender=e.lazyRender,this._host=e.host,this._scrollable=e.scrollable,this._scrollByPage=e.scrollByPage,this._scrollbarState=e.scrollbarState,this._visibilityController=this._register(new rq(e.visibility,"visible scrollbar "+e.extraScrollbarClassName,"invisible scrollbar "+e.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new Hg),this._shouldRender=!0,this.domNode=ot(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(U(this.domNode.domNode,ee.POINTER_DOWN,t=>this._domNodePointerDown(t)))}_createArrow(e){const t=this._register(new oq(e));this.domNode.domNode.appendChild(t.bgDomNode),this.domNode.domNode.appendChild(t.domNode)}_createSlider(e,t,i,n){this.slider=ot(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(e),this.slider.setLeft(t),typeof i=="number"&&this.slider.setWidth(i),typeof n=="number"&&this.slider.setHeight(n),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(U(this.slider.domNode,ee.POINTER_DOWN,s=>{s.button===0&&(s.preventDefault(),this._sliderPointerDown(s))})),this.onclick(this.slider.domNode,s=>{s.leftButton&&s.stopPropagation()})}_onElementSize(e){return this._scrollbarState.setVisibleSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(e){return this._scrollbarState.setScrollSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(e){return this._scrollbarState.setScrollPosition(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(e){e.target===this.domNode.domNode&&this._onPointerDown(e)}delegatePointerDown(e){const t=this.domNode.domNode.getClientRects()[0].top,i=t+this._scrollbarState.getSliderPosition(),n=t+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),s=this._sliderPointerPosition(e);i<=s&&s<=n?e.button===0&&(e.preventDefault(),this._sliderPointerDown(e)):this._onPointerDown(e)}_onPointerDown(e){let t,i;if(e.target===this.domNode.domNode&&typeof e.offsetX=="number"&&typeof e.offsetY=="number")t=e.offsetX,i=e.offsetY;else{const s=gi(this.domNode.domNode);t=e.pageX-s.left,i=e.pageY-s.top}const n=this._pointerDownRelativePosition(t,i);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(n):this._scrollbarState.getDesiredScrollPositionFromOffset(n)),e.button===0&&(e.preventDefault(),this._sliderPointerDown(e))}_sliderPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const t=this._sliderPointerPosition(e),i=this._sliderOrthogonalPointerPosition(e),n=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,s=>{const r=this._sliderOrthogonalPointerPosition(s),a=Math.abs(r-i);if(kn&&a>aq){this._setDesiredScrollPositionNow(n.getScrollPosition());return}const c=this._sliderPointerPosition(s)-t;this._setDesiredScrollPositionNow(n.getDesiredScrollPositionFromDelta(c))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(e){const t={};this.writeScrollPosition(t,e),this._scrollable.setScrollPositionNow(t)}updateScrollbarSize(e){this._updateScrollbarSize(e),this._scrollbarState.setScrollbarSize(e),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}}const lq=20;class pg{constructor(e,t,i,n,s,r){this._scrollbarSize=Math.round(t),this._oppositeScrollbarSize=Math.round(i),this._arrowSize=Math.round(e),this._visibleSize=n,this._scrollSize=s,this._scrollPosition=r,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new pg(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(e){const t=Math.round(e);return this._visibleSize!==t?(this._visibleSize=t,this._refreshComputedValues(),!0):!1}setScrollSize(e){const t=Math.round(e);return this._scrollSize!==t?(this._scrollSize=t,this._refreshComputedValues(),!0):!1}setScrollPosition(e){const t=Math.round(e);return this._scrollPosition!==t?(this._scrollPosition=t,this._refreshComputedValues(),!0):!1}setScrollbarSize(e){this._scrollbarSize=Math.round(e)}setOppositeScrollbarSize(e){this._oppositeScrollbarSize=Math.round(e)}static _computeValues(e,t,i,n,s){const r=Math.max(0,i-e),a=Math.max(0,r-2*t),l=n>0&&n>i;if(!l)return{computedAvailableSize:Math.round(r),computedIsNeeded:l,computedSliderSize:Math.round(a),computedSliderRatio:0,computedSliderPosition:0};const c=Math.round(Math.max(lq,Math.floor(i*a/n))),d=(a-c)/(n-i),h=s*d;return{computedAvailableSize:Math.round(r),computedIsNeeded:l,computedSliderSize:Math.round(c),computedSliderRatio:d,computedSliderPosition:Math.round(h)}}_refreshComputedValues(){const e=pg._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=e.computedAvailableSize,this._computedIsNeeded=e.computedIsNeeded,this._computedSliderSize=e.computedSliderSize,this._computedSliderRatio=e.computedSliderRatio,this._computedSliderPosition=e.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(e){if(!this._computedIsNeeded)return 0;const t=e-this._arrowSize-this._computedSliderSize/2;return Math.round(t/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(e){if(!this._computedIsNeeded)return 0;const t=e-this._arrowSize;let i=this._scrollPosition;return tthis._host.onMouseWheel(new Rh(null,1,0))}),this._createArrow({className:"scra",icon:ie.scrollbarButtonRight,top:a,left:void 0,bottom:void 0,right:r,bgWidth:t.arrowSize,bgHeight:t.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new Rh(null,-1,0))})}this._createSlider(Math.floor((t.horizontalScrollbarSize-t.horizontalSliderSize)/2),0,void 0,t.horizontalSliderSize)}_updateSlider(e,t){this.slider.setWidth(e),this.slider.setLeft(t)}_renderDomNode(e,t){this.domNode.setWidth(e),this.domNode.setHeight(t),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(e.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return e}_sliderPointerPosition(e){return e.pageX}_sliderOrthogonalPointerPosition(e){return e.pageY}_updateScrollbarSize(e){this.slider.setHeight(e)}writeScrollPosition(e,t){e.scrollLeft=t}updateOptions(e){this.updateScrollbarSize(e.horizontal===2?0:e.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._visibilityController.setVisibility(e.horizontal),this._scrollByPage=e.scrollByPage}}class dq extends X3{constructor(e,t,i){const n=e.getScrollDimensions(),s=e.getCurrentScrollPosition();if(super({lazyRender:t.lazyRender,host:i,scrollbarState:new pg(t.verticalHasArrows?t.arrowSize:0,t.vertical===2?0:t.verticalScrollbarSize,0,n.height,n.scrollHeight,s.scrollTop),visibility:t.vertical,extraScrollbarClassName:"vertical",scrollable:e,scrollByPage:t.scrollByPage}),t.verticalHasArrows){const r=(t.arrowSize-mg)/2,a=(t.verticalScrollbarSize-mg)/2;this._createArrow({className:"scra",icon:ie.scrollbarButtonUp,top:r,left:a,bottom:void 0,right:void 0,bgWidth:t.verticalScrollbarSize,bgHeight:t.arrowSize,onActivate:()=>this._host.onMouseWheel(new Rh(null,0,1))}),this._createArrow({className:"scra",icon:ie.scrollbarButtonDown,top:void 0,left:a,bottom:r,right:void 0,bgWidth:t.verticalScrollbarSize,bgHeight:t.arrowSize,onActivate:()=>this._host.onMouseWheel(new Rh(null,0,-1))})}this._createSlider(0,Math.floor((t.verticalScrollbarSize-t.verticalSliderSize)/2),t.verticalSliderSize,void 0)}_updateSlider(e,t){this.slider.setHeight(e),this.slider.setTop(t)}_renderDomNode(e,t){this.domNode.setWidth(t),this.domNode.setHeight(e),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(e.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return t}_sliderPointerPosition(e){return e.pageY}_sliderOrthogonalPointerPosition(e){return e.pageX}_updateScrollbarSize(e){this.slider.setWidth(e)}writeScrollPosition(e,t){e.scrollTop=t}updateOptions(e){this.updateScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(e.vertical),this._scrollByPage=e.scrollByPage}}class OC{constructor(e,t,i,n,s,r,a){this._forceIntegerValues=e,this._scrollStateBrand=void 0,this._forceIntegerValues&&(t=t|0,i=i|0,n=n|0,s=s|0,r=r|0,a=a|0),this.rawScrollLeft=n,this.rawScrollTop=a,t<0&&(t=0),n+t>i&&(n=i-t),n<0&&(n=0),s<0&&(s=0),a+s>r&&(a=r-s),a<0&&(a=0),this.width=t,this.scrollWidth=i,this.scrollLeft=n,this.height=s,this.scrollHeight=r,this.scrollTop=a}equals(e){return this.rawScrollLeft===e.rawScrollLeft&&this.rawScrollTop===e.rawScrollTop&&this.width===e.width&&this.scrollWidth===e.scrollWidth&&this.scrollLeft===e.scrollLeft&&this.height===e.height&&this.scrollHeight===e.scrollHeight&&this.scrollTop===e.scrollTop}withScrollDimensions(e,t){return new OC(this._forceIntegerValues,typeof e.width<"u"?e.width:this.width,typeof e.scrollWidth<"u"?e.scrollWidth:this.scrollWidth,t?this.rawScrollLeft:this.scrollLeft,typeof e.height<"u"?e.height:this.height,typeof e.scrollHeight<"u"?e.scrollHeight:this.scrollHeight,t?this.rawScrollTop:this.scrollTop)}withScrollPosition(e){return new OC(this._forceIntegerValues,this.width,this.scrollWidth,typeof e.scrollLeft<"u"?e.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof e.scrollTop<"u"?e.scrollTop:this.rawScrollTop)}createScrollEvent(e,t){const i=this.width!==e.width,n=this.scrollWidth!==e.scrollWidth,s=this.scrollLeft!==e.scrollLeft,r=this.height!==e.height,a=this.scrollHeight!==e.scrollHeight,l=this.scrollTop!==e.scrollTop;return{inSmoothScrolling:t,oldWidth:e.width,oldScrollWidth:e.scrollWidth,oldScrollLeft:e.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:e.height,oldScrollHeight:e.scrollHeight,oldScrollTop:e.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:i,scrollWidthChanged:n,scrollLeftChanged:s,heightChanged:r,scrollHeightChanged:a,scrollTopChanged:l}}}class Vg extends z{constructor(e){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new A),this.onScroll=this._onScroll.event,this._smoothScrollDuration=e.smoothScrollDuration,this._scheduleAtNextAnimationFrame=e.scheduleAtNextAnimationFrame,this._state=new OC(e.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(e){this._smoothScrollDuration=e}validateScrollPosition(e){return this._state.withScrollPosition(e)}getScrollDimensions(){return this._state}setScrollDimensions(e,t){const i=this._state.withScrollDimensions(e,t);this._setState(i,!!this._smoothScrolling),this._smoothScrolling?.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(e){const t=this._state.withScrollPosition(e);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(t,!1)}setScrollPositionSmooth(e,t){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(e);if(this._smoothScrolling){e={scrollLeft:typeof e.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:e.scrollLeft,scrollTop:typeof e.scrollTop>"u"?this._smoothScrolling.to.scrollTop:e.scrollTop};const i=this._state.withScrollPosition(e);if(this._smoothScrolling.to.scrollLeft===i.scrollLeft&&this._smoothScrolling.to.scrollTop===i.scrollTop)return;let n;t?n=new o_(this._smoothScrolling.from,i,this._smoothScrolling.startTime,this._smoothScrolling.duration):n=this._smoothScrolling.combine(this._state,i,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=n}else{const i=this._state.withScrollPosition(e);this._smoothScrolling=o_.start(this._state,i,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}hasPendingScrollAnimation(){return!!this._smoothScrolling}_performSmoothScrolling(){if(!this._smoothScrolling)return;const e=this._smoothScrolling.tick(),t=this._state.withScrollPosition(e);if(this._setState(t,!0),!!this._smoothScrolling){if(e.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(e,t){const i=this._state;i.equals(e)||(this._state=e,this._onScroll.fire(this._state.createScrollEvent(i,t)))}}class AA{constructor(e,t,i){this.scrollLeft=e,this.scrollTop=t,this.isDone=i}}function kS(o,e){const t=e-o;return function(i){return o+t*fq(i)}}function hq(o,e,t){return function(i){return i2.5*i){let s,r;return e0&&Math.abs(e.deltaY)>0)return 1;let i=.5;if((!this._isAlmostInt(e.deltaX)||!this._isAlmostInt(e.deltaY))&&(i+=.25),t){const n=Math.abs(e.deltaX),s=Math.abs(e.deltaY),r=Math.abs(t.deltaX),a=Math.abs(t.deltaY),l=Math.max(Math.min(n,r),1),c=Math.max(Math.min(s,a),1),d=Math.max(n,r),h=Math.max(s,a);d%l===0&&h%c===0&&(i-=.5)}return Math.min(Math.max(i,0),1)}_isAlmostInt(e){return Math.abs(Math.round(e)-e)<.01}};Tw.INSTANCE=new Tw;let FC=Tw;class MT extends xr{get options(){return this._options}constructor(e,t,i){super(),this._onScroll=this._register(new A),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new A),e.style.overflow="hidden",this._options=pq(t),this._scrollable=i,this._register(this._scrollable.onScroll(s=>{this._onWillScroll.fire(s),this._onDidScroll(s),this._onScroll.fire(s)}));const n={onMouseWheel:s=>this._onMouseWheel(s),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new dq(this._scrollable,this._options,n)),this._horizontalScrollbar=this._register(new cq(this._scrollable,this._options,n)),this._domNode=document.createElement("div"),this._domNode.className="monaco-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.style.overflow="hidden",this._domNode.appendChild(e),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=ot(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=ot(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=ot(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,s=>this._onMouseOver(s)),this.onmouseleave(this._listenOnDomNode,s=>this._onMouseLeave(s)),this._hideTimeout=this._register(new wr),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}dispose(){this._mouseWheelToDispose=xt(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(e){this._verticalScrollbar.delegatePointerDown(e)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(e){this._scrollable.setScrollDimensions(e,!1)}updateClassName(e){this._options.className=e,Ue&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className}updateOptions(e){typeof e.handleMouseWheel<"u"&&(this._options.handleMouseWheel=e.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof e.mouseWheelScrollSensitivity<"u"&&(this._options.mouseWheelScrollSensitivity=e.mouseWheelScrollSensitivity),typeof e.fastScrollSensitivity<"u"&&(this._options.fastScrollSensitivity=e.fastScrollSensitivity),typeof e.scrollPredominantAxis<"u"&&(this._options.scrollPredominantAxis=e.scrollPredominantAxis),typeof e.horizontal<"u"&&(this._options.horizontal=e.horizontal),typeof e.vertical<"u"&&(this._options.vertical=e.vertical),typeof e.horizontalScrollbarSize<"u"&&(this._options.horizontalScrollbarSize=e.horizontalScrollbarSize),typeof e.verticalScrollbarSize<"u"&&(this._options.verticalScrollbarSize=e.verticalScrollbarSize),typeof e.scrollByPage<"u"&&(this._options.scrollByPage=e.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}delegateScrollFromMouseWheelEvent(e){this._onMouseWheel(new Rh(e))}_setListeningToMouseWheel(e){if(this._mouseWheelToDispose.length>0!==e&&(this._mouseWheelToDispose=xt(this._mouseWheelToDispose),e)){const i=n=>{this._onMouseWheel(new Rh(n))};this._mouseWheelToDispose.push(U(this._listenOnDomNode,ee.MOUSE_WHEEL,i,{passive:!1}))}}_onMouseWheel(e){if(e.browserEvent?.defaultPrevented)return;const t=FC.INSTANCE;t.acceptStandardWheelEvent(e);let i=!1;if(e.deltaY||e.deltaX){let s=e.deltaY*this._options.mouseWheelScrollSensitivity,r=e.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&r+s===0?r=s=0:Math.abs(s)>=Math.abs(r)?r=0:s=0),this._options.flipAxes&&([s,r]=[r,s]);const a=!Ue&&e.browserEvent&&e.browserEvent.shiftKey;(this._options.scrollYToX||a)&&!r&&(r=s,s=0),e.browserEvent&&e.browserEvent.altKey&&(r=r*this._options.fastScrollSensitivity,s=s*this._options.fastScrollSensitivity);const l=this._scrollable.getFutureScrollPosition();let c={};if(s){const d=PA*s,h=l.scrollTop-(d<0?Math.floor(d):Math.ceil(d));this._verticalScrollbar.writeScrollPosition(c,h)}if(r){const d=PA*r,h=l.scrollLeft-(d<0?Math.floor(d):Math.ceil(d));this._horizontalScrollbar.writeScrollPosition(c,h)}c=this._scrollable.validateScrollPosition(c),(l.scrollLeft!==c.scrollLeft||l.scrollTop!==c.scrollTop)&&(this._options.mouseWheelSmoothScroll&&t.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(c):this._scrollable.setScrollPositionNow(c),i=!0)}let n=i;!n&&this._options.alwaysConsumeMouseWheel&&(n=!0),!n&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(n=!0),n&&(e.preventDefault(),e.stopPropagation())}_onDidScroll(e){this._shouldRender=this._horizontalScrollbar.onDidScroll(e)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(e)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){const e=this._scrollable.getCurrentScrollPosition(),t=e.scrollTop>0,i=e.scrollLeft>0,n=i?" left":"",s=t?" top":"",r=i||t?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${n}`),this._topShadowDomNode.setClassName(`shadow${s}`),this._topLeftShadowDomNode.setClassName(`shadow${r}${s}${n}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(e){this._mouseIsOver=!1,this._hide()}_onMouseOver(e){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),gq)}}class J3 extends MT{constructor(e,t){t=t||{},t.mouseWheelSmoothScroll=!1;const i=new Vg({forceIntegerValues:!0,smoothScrollDuration:0,scheduleAtNextAnimationFrame:n=>fs(fe(e),n)});super(e,t,i),this._register(i)}setScrollPosition(e){this._scrollable.setScrollPositionNow(e)}}class X0 extends MT{constructor(e,t,i){super(e,t,i)}setScrollPosition(e){e.reuseAnimation?this._scrollable.setScrollPositionSmooth(e,e.reuseAnimation):this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}}class J0 extends MT{constructor(e,t){t=t||{},t.mouseWheelSmoothScroll=!1;const i=new Vg({forceIntegerValues:!1,smoothScrollDuration:0,scheduleAtNextAnimationFrame:n=>fs(fe(e),n)});super(e,t,i),this._register(i),this._element=e,this._register(this.onScroll(n=>{n.scrollTopChanged&&(this._element.scrollTop=n.scrollTop),n.scrollLeftChanged&&(this._element.scrollLeft=n.scrollLeft)})),this.scanDomNode()}setScrollPosition(e){this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}scanDomNode(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})}}function pq(o){const e={lazyRender:typeof o.lazyRender<"u"?o.lazyRender:!1,className:typeof o.className<"u"?o.className:"",useShadows:typeof o.useShadows<"u"?o.useShadows:!0,handleMouseWheel:typeof o.handleMouseWheel<"u"?o.handleMouseWheel:!0,flipAxes:typeof o.flipAxes<"u"?o.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof o.consumeMouseWheelIfScrollbarIsNeeded<"u"?o.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof o.alwaysConsumeMouseWheel<"u"?o.alwaysConsumeMouseWheel:!1,scrollYToX:typeof o.scrollYToX<"u"?o.scrollYToX:!1,mouseWheelScrollSensitivity:typeof o.mouseWheelScrollSensitivity<"u"?o.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof o.fastScrollSensitivity<"u"?o.fastScrollSensitivity:5,scrollPredominantAxis:typeof o.scrollPredominantAxis<"u"?o.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof o.mouseWheelSmoothScroll<"u"?o.mouseWheelSmoothScroll:!0,arrowSize:typeof o.arrowSize<"u"?o.arrowSize:11,listenOnDomNode:typeof o.listenOnDomNode<"u"?o.listenOnDomNode:null,horizontal:typeof o.horizontal<"u"?o.horizontal:1,horizontalScrollbarSize:typeof o.horizontalScrollbarSize<"u"?o.horizontalScrollbarSize:10,horizontalSliderSize:typeof o.horizontalSliderSize<"u"?o.horizontalSliderSize:0,horizontalHasArrows:typeof o.horizontalHasArrows<"u"?o.horizontalHasArrows:!1,vertical:typeof o.vertical<"u"?o.vertical:1,verticalScrollbarSize:typeof o.verticalScrollbarSize<"u"?o.verticalScrollbarSize:10,verticalHasArrows:typeof o.verticalHasArrows<"u"?o.verticalHasArrows:!1,verticalSliderSize:typeof o.verticalSliderSize<"u"?o.verticalSliderSize:0,scrollByPage:typeof o.scrollByPage<"u"?o.scrollByPage:!1};return e.horizontalSliderSize=typeof o.horizontalSliderSize<"u"?o.horizontalSliderSize:e.horizontalScrollbarSize,e.verticalSliderSize=typeof o.verticalSliderSize<"u"?o.verticalSliderSize:e.verticalScrollbarSize,Ue&&(e.className+=" mac"),e}const Ab=ce;let RT=class extends z{constructor(){super(),this.containerDomNode=document.createElement("div"),this.containerDomNode.className="monaco-hover",this.containerDomNode.tabIndex=0,this.containerDomNode.setAttribute("role","tooltip"),this.contentsDomNode=document.createElement("div"),this.contentsDomNode.className="monaco-hover-content",this.scrollbar=this._register(new J0(this.contentsDomNode,{consumeMouseWheelIfScrollbarIsNeeded:!0})),this.containerDomNode.appendChild(this.scrollbar.getDomNode())}onContentsChanged(){this.scrollbar.scanDomNode()}};class ey extends z{static render(e,t,i){return new ey(e,t,i)}constructor(e,t,i){super(),this.actionLabel=t.label,this.actionKeybindingLabel=i,this.actionContainer=Z(e,Ab("div.action-container")),this.actionContainer.setAttribute("tabindex","0"),this.action=Z(this.actionContainer,Ab("a.action")),this.action.setAttribute("role","button"),t.iconClass&&Z(this.action,Ab(`span.icon.${t.iconClass}`));const n=Z(this.action,Ab("span"));n.textContent=i?`${t.label} (${i})`:t.label,this._store.add(new t7(this.actionContainer,t.run)),this._store.add(new i7(this.actionContainer,t.run,[3,10])),this.setEnabled(!0)}setEnabled(e){e?(this.actionContainer.classList.remove("disabled"),this.actionContainer.removeAttribute("aria-disabled")):(this.actionContainer.classList.add("disabled"),this.actionContainer.setAttribute("aria-disabled","true"))}}function e7(o,e){return o&&e?m("acessibleViewHint","Inspect this in the accessible view with {0}.",e):o?m("acessibleViewHintNoKbOpen","Inspect this in the accessible view via the command Open Accessible View which is currently not triggerable via keybinding."):""}class t7 extends z{constructor(e,t){super(),this._register(U(e,ee.CLICK,i=>{i.stopPropagation(),i.preventDefault(),t(e)}))}}class i7 extends z{constructor(e,t,i){super(),this._register(U(e,ee.KEY_DOWN,n=>{const s=new Nt(n);i.some(r=>s.equals(r))&&(n.stopPropagation(),n.preventDefault(),t(e))}))}}const Vo=He("openerService");function _q(o){let e;const t=/^L?(\d+)(?:,(\d+))?(-L?(\d+)(?:,(\d+))?)?/.exec(o.fragment);return t&&(e={startLineNumber:parseInt(t[1]),startColumn:t[2]?parseInt(t[2]):1,endLineNumber:t[4]?parseInt(t[4]):void 0,endColumn:t[4]?t[5]?parseInt(t[5]):1:void 0},o=o.with({fragment:""})),{selection:e,uri:o}}class ze{get event(){return this.emitter.event}constructor(e,t,i){const n=s=>this.emitter.fire(s);this.emitter=new A({onWillAddFirstListener:()=>e.addEventListener(t,n,i),onDidRemoveLastListener:()=>e.removeEventListener(t,n,i)})}dispose(){this.emitter.dispose()}}function bq(o,e={}){const t=AT(e);return t.textContent=o,t}function Cq(o,e={}){const t=AT(e);return n7(t,wq(o,!!e.renderCodeSegments),e.actionHandler,e.renderCodeSegments),t}function AT(o){const e=o.inline?"span":"div",t=document.createElement(e);return o.className&&(t.className=o.className),t}class vq{constructor(e){this.source=e,this.index=0}eos(){return this.index>=this.source.length}next(){const e=this.peek();return this.advance(),e}peek(){return this.source[this.index]}advance(){this.index++}}function n7(o,e,t,i){let n;if(e.type===2)n=document.createTextNode(e.content||"");else if(e.type===3)n=document.createElement("b");else if(e.type===4)n=document.createElement("i");else if(e.type===7&&i)n=document.createElement("code");else if(e.type===5&&t){const s=document.createElement("a");t.disposables.add(jt(s,"click",r=>{t.callback(String(e.index),r)})),n=s}else e.type===8?n=document.createElement("br"):e.type===1&&(n=o);n&&o!==n&&o.appendChild(n),n&&Array.isArray(e.children)&&e.children.forEach(s=>{n7(n,s,t,i)})}function wq(o,e){const t={type:1,children:[]};let i=0,n=t;const s=[],r=new vq(o);for(;!r.eos();){let a=r.next();const l=a==="\\"&&Tk(r.peek(),e)!==0;if(l&&(a=r.next()),!l&&yq(a,e)&&a===r.peek()){r.advance(),n.type===2&&(n=s.pop());const c=Tk(a,e);if(n.type===c||n.type===5&&c===6)n=s.pop();else{const d={type:c,children:[]};c===5&&(d.index=i,i++),n.children.push(d),s.push(n),n=d}}else if(a===` +`)n.type===2&&(n=s.pop()),n.children.push({type:8});else if(n.type!==2){const c={type:2,content:a};n.children.push(c),s.push(n),n=c}else n.content+=a}return n.type===2&&(n=s.pop()),t}function yq(o,e){return Tk(o,e)!==0}function Tk(o,e){switch(o){case"*":return 3;case"_":return 4;case"[":return 5;case"]":return 6;case"`":return e?7:0;default:return 0}}const Sq=new RegExp(`(\\\\)?\\$\\((${Ee.iconNameExpression}(?:${Ee.iconModifierExpression})?)\\)`,"g");function Qd(o){const e=new Array;let t,i=0,n=0;for(;(t=Sq.exec(o))!==null;){n=t.index||0,i0?[{start:0,end:e.length}]:[]:null}function Lq(o,e){const t=e.toLowerCase().indexOf(o.toLowerCase());return t===-1?null:[{start:t,end:t+o.length}]}function r7(o,e){return Mk(o.toLowerCase(),e.toLowerCase(),0,0)}function Mk(o,e,t,i){if(t===o.length)return[];if(i===e.length)return null;if(o[t]===e[i]){let n=null;return(n=Mk(o,e,t+1,i+1))?l7({start:i,end:i+1},n):null}return Mk(o,e,t,i+1)}function PT(o){return 97<=o&&o<=122}function ty(o){return 65<=o&&o<=90}function OT(o){return 48<=o&&o<=57}function xq(o){return o===32||o===9||o===10||o===13}const kq=new Set;"()[]{}<>`'\"-/;:,.?!".split("").forEach(o=>kq.add(o.charCodeAt(0)));function a7(o){return PT(o)||ty(o)||OT(o)}function l7(o,e){return e.length===0?e=[o]:o.end===e[0].start?e[0].start=o.start:e.unshift(o),e}function c7(o,e){for(let t=e;t0&&!a7(o.charCodeAt(t-1)))return t}return o.length}function Rk(o,e,t,i){if(t===o.length)return[];if(i===e.length)return null;if(o[t]!==e[i].toLowerCase())return null;{let n=null,s=i+1;for(n=Rk(o,e,t+1,i+1);!n&&(s=c7(e,s)).6}function Eq(o){const{upperPercent:e,lowerPercent:t,alphaPercent:i,numericPercent:n}=o;return t>.2&&e<.8&&i>.6&&n<.2}function Nq(o){let e=0,t=0,i=0,n=0;for(let s=0;s60&&(e=e.substring(0,60));const t=Dq(e);if(!Eq(t)){if(!Iq(t))return null;e=e.toLowerCase()}let i=null,n=0;for(o=o.toLowerCase();n"u")return[];const e=[],t=o[1];for(let i=o.length-1;i>1;i--){const n=o[i]+t,s=e[e.length-1];s&&s.end===n?s.end=n+1:e.push({start:n,end:n+1})}return e}const sc=128;function FT(){const o=[],e=[];for(let t=0;t<=sc;t++)e[t]=0;for(let t=0;t<=sc;t++)o.push(e.slice(0));return o}function h7(o){const e=[];for(let t=0;t<=o;t++)e[t]=0;return e}const u7=h7(2*sc),Ak=h7(2*sc),Ta=FT(),td=FT(),Pb=FT();function Ob(o,e){if(e<0||e>=o.length)return!1;const t=o.codePointAt(e);switch(t){case 95:case 45:case 46:case 32:case 47:case 92:case 39:case 34:case 58:case 36:case 60:case 62:case 40:case 41:case 91:case 93:case 123:case 125:return!0;case void 0:return!1;default:return!!UN(t)}}function BA(o,e){if(e<0||e>=o.length)return!1;switch(o.charCodeAt(e)){case 32:case 9:return!0;default:return!1}}function M1(o,e,t){return e[o]!==t[o]}function Pq(o,e,t,i,n,s,r=!1){for(;esc?sc:o.length,l=i.length>sc?sc:i.length;if(t>=a||s>=l||a-t>l-s||!Pq(e,t,a,n,s,l,!0))return;Oq(a,l,t,s,e,n);let c=1,d=1,h=t,u=s;const f=[!1];for(c=1,h=t;hC,N=E?td[c][d-1]+(Ta[c][d-1]>0?-5:0):0,H=u>C+1&&Ta[c][d-1]>0,F=H?td[c][d-2]+(Ta[c][d-2]>0?-5:0):0;if(H&&(!E||F>=N)&&(!x||F>=L))td[c][d]=F,Pb[c][d]=3,Ta[c][d]=0;else if(E&&(!x||N>=L))td[c][d]=N,Pb[c][d]=2,Ta[c][d]=0;else if(x)td[c][d]=L,Pb[c][d]=1,Ta[c][d]=Ta[c-1][d-1]+1;else throw new Error("not possible")}}if(!f[0]&&!r.firstMatchCanBeWeak)return;c--,d--;const g=[td[c][d],s];let p=0,_=0;for(;c>=1;){let C=d;do{const w=Pb[c][C];if(w===3)C=C-2;else if(w===2)C=C-1;else break}while(C>=1);p>1&&e[t+c-1]===n[s+d-1]&&!M1(C+s-1,i,n)&&p+1>Ta[c][C]&&(C=d),C===d?p++:p=1,_||(_=C),c--,d=C-1,g.push(d)}l-s===a&&r.boostFullMatch&&(g[0]+=2);const b=_-a;return g[0]-=b,g}function Oq(o,e,t,i,n,s){let r=o-1,a=e-1;for(;r>=t&&a>=i;)n[r]===s[a]&&(Ak[r]=a,r--),a--}function Fq(o,e,t,i,n,s,r,a,l,c,d){if(e[t]!==s[r])return Number.MIN_SAFE_INTEGER;let h=1,u=!1;return r===t-i?h=o[t]===n[r]?7:5:M1(r,n,s)&&(r===0||!M1(r-1,n,s))?(h=o[t]===n[r]?7:5,u=!0):Ob(s,r)&&(r===0||!Ob(s,r-1))?h=5:(Ob(s,r-1)||BA(s,r-1))&&(h=5,u=!0),h>1&&t===i&&(d[0]=!0),u||(u=M1(r,n,s)||Ob(s,r-1)||BA(s,r-1)),t===i?r>l&&(h-=u?3:5):c?h+=u?2:0:h+=u?0:1,r+1===a&&(h-=u?3:5),h}function Bq(o,e,t,i,n,s,r){return Wq(o,e,t,i,n,s,!0,r)}function Wq(o,e,t,i,n,s,r,a){let l=_g(o,e,t,i,n,s,a);if(o.length>=3){const c=Math.min(7,o.length-1);for(let d=t+1;dl[0])&&(l=u))}}}return l}function Hq(o,e){if(e+1>=o.length)return;const t=o[e],i=o[e+1];if(t!==i)return o.slice(0,e)+i+t+o.slice(e+2)}const Vq="$(",BT=new RegExp(`\\$\\(${Ee.iconNameExpression}(?:${Ee.iconModifierExpression})?\\)`,"g"),zq=new RegExp(`(\\\\)?${BT.source}`,"g");function Uq(o){return o.replace(zq,(e,t)=>t?e:`\\${e}`)}const $q=new RegExp(`\\\\${BT.source}`,"g");function Kq(o){return o.replace($q,e=>`\\${e}`)}const jq=new RegExp(`(\\s)?(\\\\)?${BT.source}(\\s)?`,"g");function f7(o){return o.indexOf(Vq)===-1?o:o.replace(jq,(e,t,i,n)=>i?e:t||n||"")}function qq(o){return o?o.replace(/\$\((.*?)\)/g,(e,t)=>` ${t} `).trim():""}const DS=new RegExp(`\\$\\(${Ee.iconNameCharacter}+\\)`,"g");function Tm(o){DS.lastIndex=0;let e="";const t=[];let i=0;for(;;){const n=DS.lastIndex,s=DS.exec(o),r=o.substring(n,s?.index);if(r.length>0){e+=r;for(let a=0;agA(i).length&&i[i.length-1]===t}else{const i=e.path;return i.length>1&&i.charCodeAt(i.length-1)===47&&!/^[a-zA-Z]:(\/$|\\$)/.test(e.fsPath)}}removeTrailingPathSeparator(e,t=fc){return VA(e,t)?e.with({path:e.path.substr(0,e.path.length-1)}):e}addTrailingPathSeparator(e,t=fc){let i=!1;if(e.scheme===Te.file){const n=Ma(e);i=n!==void 0&&n.length===gA(n).length&&n[n.length-1]===t}else{t="/";const n=e.path;i=n.length===1&&n.charCodeAt(n.length-1)===47}return!i&&!VA(e,t)?e.with({path:e.path+"/"}):e}}const Tt=new Gq(()=>!1),WT=Tt.isEqual.bind(Tt);Tt.isEqualOrParent.bind(Tt);Tt.getComparisonKey.bind(Tt);const Zq=Tt.basenameOrAuthority.bind(Tt),Fo=Tt.basename.bind(Tt),Yq=Tt.extname.bind(Tt),ny=Tt.dirname.bind(Tt);Tt.joinPath.bind(Tt);const Qq=Tt.normalizePath.bind(Tt);Tt.relativePath.bind(Tt);const WA=Tt.resolvePath.bind(Tt);Tt.isAbsolutePath.bind(Tt);const HA=Tt.isEqualAuthority.bind(Tt),VA=Tt.hasTrailingPathSeparator.bind(Tt);Tt.removeTrailingPathSeparator.bind(Tt);Tt.addTrailingPathSeparator.bind(Tt);var Oc;(function(o){o.META_DATA_LABEL="label",o.META_DATA_DESCRIPTION="description",o.META_DATA_SIZE="size",o.META_DATA_MIME="mime";function e(t){const i=new Map;t.path.substring(t.path.indexOf(";")+1,t.path.lastIndexOf(";")).split(";").forEach(r=>{const[a,l]=r.split(":");a&&l&&i.set(a,l)});const s=t.path.substring(0,t.path.indexOf(";"));return s&&i.set(o.META_DATA_MIME,s),i}o.parseMetaData=e})(Oc||(Oc={}));class Js{constructor(e="",t=!1){if(this.value=e,typeof this.value!="string")throw na("value");typeof t=="boolean"?(this.isTrusted=t,this.supportThemeIcons=!1,this.supportHtml=!1):(this.isTrusted=t.isTrusted??void 0,this.supportThemeIcons=t.supportThemeIcons??!1,this.supportHtml=t.supportHtml??!1)}appendText(e,t=0){return this.value+=Jq(this.supportThemeIcons?Uq(e):e).replace(/([ \t]+)/g,(i,n)=>" ".repeat(n.length)).replace(/\>/gm,"\\>").replace(/\n/g,t===1?`\\ +`:` + +`),this}appendMarkdown(e){return this.value+=e,this}appendCodeblock(e,t){return this.value+=` +${eG(t,e)} +`,this}appendLink(e,t,i){return this.value+="[",this.value+=this._escape(t,"]"),this.value+="](",this.value+=this._escape(String(e),")"),i&&(this.value+=` "${this._escape(this._escape(i,'"'),")")}"`),this.value+=")",this}_escape(e,t){const i=new RegExp(xl(t),"g");return e.replace(i,(n,s)=>e.charAt(s-1)!=="\\"?`\\${n}`:n)}}function bg(o){return ra(o)?!o.value:Array.isArray(o)?o.every(bg):!0}function ra(o){return o instanceof Js?!0:o&&typeof o=="object"?typeof o.value=="string"&&(typeof o.isTrusted=="boolean"||typeof o.isTrusted=="object"||o.isTrusted===void 0)&&(typeof o.supportThemeIcons=="boolean"||o.supportThemeIcons===void 0):!1}function Xq(o,e){return o===e?!0:!o||!e?!1:o.value===e.value&&o.isTrusted===e.isTrusted&&o.supportThemeIcons===e.supportThemeIcons&&o.supportHtml===e.supportHtml&&(o.baseUri===e.baseUri||!!o.baseUri&&!!e.baseUri&&WT(ve.from(o.baseUri),ve.from(e.baseUri)))}function Jq(o){return o.replace(/[\\`*_{}[\]()#+\-!~]/g,"\\$&")}function eG(o,e){const t=o.match(/^`+/gm)?.reduce((n,s)=>n.length>s.length?n:s).length??0,i=t>=3?t+1:3;return[`${"`".repeat(i)}${e}`,o,`${"`".repeat(i)}`].join(` +`)}function Fb(o){return o.replace(/"/g,""")}function ES(o){return o&&o.replace(/\\([\\`*_{}[\]()#+\-.!~])/g,"$1")}function tG(o){const e=[],t=o.split("|").map(n=>n.trim());o=t[0];const i=t[1];if(i){const n=/height=(\d+)/.exec(i),s=/width=(\d+)/.exec(i),r=n?n[1]:"",a=s?s[1]:"",l=isFinite(parseInt(a)),c=isFinite(parseInt(r));l&&e.push(`width="${a}"`),c&&e.push(`height="${r}"`)}return{href:o,dimensions:e}}class HT{constructor(e){this._prefix=e,this._lastId=0}nextId(){return this._prefix+ ++this._lastId}}const Pk=new HT("id#");let tn={};(function(){function o(e,t){t(tn)}o.amd=!0,(function(e,t){typeof o=="function"&&o.amd?o(["exports"],t):typeof exports=="object"&&typeof module<"u"?t(exports):(e=typeof globalThis<"u"?globalThis:e||self,t(e.marked={}))})(this,(function(e){function t(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}e.defaults=t();function i(Xe){e.defaults=Xe}const n=/[&<>"']/,s=new RegExp(n.source,"g"),r=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,a=new RegExp(r.source,"g"),l={"&":"&","<":"<",">":">",'"':""","'":"'"},c=Xe=>l[Xe];function d(Xe,T){if(T){if(n.test(Xe))return Xe.replace(s,c)}else if(r.test(Xe))return Xe.replace(a,c);return Xe}const h=/(^|[^\[])\^/g;function u(Xe,T){let M=typeof Xe=="string"?Xe:Xe.source;T=T||"";const R={replace:(O,V)=>{let Y=typeof V=="string"?V:V.source;return Y=Y.replace(h,"$1"),M=M.replace(O,Y),R},getRegex:()=>new RegExp(M,T)};return R}function f(Xe){try{Xe=encodeURI(Xe).replace(/%25/g,"%")}catch{return null}return Xe}const g={exec:()=>null};function p(Xe,T){const M=Xe.replace(/\|/g,(V,Y,te)=>{let me=!1,ye=Y;for(;--ye>=0&&te[ye]==="\\";)me=!me;return me?"|":" |"}),R=M.split(/ \|/);let O=0;if(R[0].trim()||R.shift(),R.length>0&&!R[R.length-1].trim()&&R.pop(),T)if(R.length>T)R.splice(T);else for(;R.length{const V=O.match(/^\s+/);if(V===null)return O;const[Y]=V;return Y.length>=R.length?O.slice(R.length):O}).join(` +`)}class v{options;rules;lexer;constructor(T){this.options=T||e.defaults}space(T){const M=this.rules.block.newline.exec(T);if(M&&M[0].length>0)return{type:"space",raw:M[0]}}code(T){const M=this.rules.block.code.exec(T);if(M){const R=M[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:M[0],codeBlockStyle:"indented",text:this.options.pedantic?R:_(R,` +`)}}}fences(T){const M=this.rules.block.fences.exec(T);if(M){const R=M[0],O=w(R,M[3]||"");return{type:"code",raw:R,lang:M[2]?M[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):M[2],text:O}}}heading(T){const M=this.rules.block.heading.exec(T);if(M){let R=M[2].trim();if(/#$/.test(R)){const O=_(R,"#");(this.options.pedantic||!O||/ $/.test(O))&&(R=O.trim())}return{type:"heading",raw:M[0],depth:M[1].length,text:R,tokens:this.lexer.inline(R)}}}hr(T){const M=this.rules.block.hr.exec(T);if(M)return{type:"hr",raw:_(M[0],` +`)}}blockquote(T){const M=this.rules.block.blockquote.exec(T);if(M){let R=_(M[0],` +`).split(` +`),O="",V="";const Y=[];for(;R.length>0;){let te=!1;const me=[];let ye;for(ye=0;ye/.test(R[ye]))me.push(R[ye]),te=!0;else if(!te)me.push(R[ye]);else break;R=R.slice(ye);const Ve=me.join(` +`),ft=Ve.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` + $1`).replace(/^ {0,3}>[ \t]?/gm,"");O=O?`${O} +${Ve}`:Ve,V=V?`${V} +${ft}`:ft;const Ct=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(ft,Y,!0),this.lexer.state.top=Ct,R.length===0)break;const Si=Y[Y.length-1];if(Si?.type==="code")break;if(Si?.type==="blockquote"){const Gt=Si,Zn=Gt.raw+` +`+R.join(` +`),qs=this.blockquote(Zn);Y[Y.length-1]=qs,O=O.substring(0,O.length-Gt.raw.length)+qs.raw,V=V.substring(0,V.length-Gt.text.length)+qs.text;break}else if(Si?.type==="list"){const Gt=Si,Zn=Gt.raw+` +`+R.join(` +`),qs=this.list(Zn);Y[Y.length-1]=qs,O=O.substring(0,O.length-Si.raw.length)+qs.raw,V=V.substring(0,V.length-Gt.raw.length)+qs.raw,R=Zn.substring(Y[Y.length-1].raw.length).split(` +`);continue}}return{type:"blockquote",raw:O,tokens:Y,text:V}}}list(T){let M=this.rules.block.list.exec(T);if(M){let R=M[1].trim();const O=R.length>1,V={type:"list",raw:"",ordered:O,start:O?+R.slice(0,-1):"",loose:!1,items:[]};R=O?`\\d{1,9}\\${R.slice(-1)}`:`\\${R}`,this.options.pedantic&&(R=O?R:"[*+-]");const Y=new RegExp(`^( {0,3}${R})((?:[ ][^\\n]*)?(?:\\n|$))`);let te=!1;for(;T;){let me=!1,ye="",Ve="";if(!(M=Y.exec(T))||this.rules.block.hr.test(T))break;ye=M[0],T=T.substring(ye.length);let ft=M[2].split(` +`,1)[0].replace(/^\t+/,em=>" ".repeat(3*em.length)),Ct=T.split(` +`,1)[0],Si=!ft.trim(),Gt=0;if(this.options.pedantic?(Gt=2,Ve=ft.trimStart()):Si?Gt=M[1].length+1:(Gt=M[2].search(/[^ ]/),Gt=Gt>4?1:Gt,Ve=ft.slice(Gt),Gt+=M[1].length),Si&&/^ *$/.test(Ct)&&(ye+=Ct+` +`,T=T.substring(Ct.length+1),me=!0),!me){const em=new RegExp(`^ {0,${Math.min(3,Gt-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),Oe=new RegExp(`^ {0,${Math.min(3,Gt-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),$=new RegExp(`^ {0,${Math.min(3,Gt-1)}}(?:\`\`\`|~~~)`),ue=new RegExp(`^ {0,${Math.min(3,Gt-1)}}#`);for(;T;){const Ie=T.split(` +`,1)[0];if(Ct=Ie,this.options.pedantic&&(Ct=Ct.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),$.test(Ct)||ue.test(Ct)||em.test(Ct)||Oe.test(T))break;if(Ct.search(/[^ ]/)>=Gt||!Ct.trim())Ve+=` +`+Ct.slice(Gt);else{if(Si||ft.search(/[^ ]/)>=4||$.test(ft)||ue.test(ft)||Oe.test(ft))break;Ve+=` +`+Ct}!Si&&!Ct.trim()&&(Si=!0),ye+=Ie+` +`,T=T.substring(Ie.length+1),ft=Ct.slice(Gt)}}V.loose||(te?V.loose=!0:/\n *\n *$/.test(ye)&&(te=!0));let Zn=null,qs;this.options.gfm&&(Zn=/^\[[ xX]\] /.exec(Ve),Zn&&(qs=Zn[0]!=="[ ] ",Ve=Ve.replace(/^\[[ xX]\] +/,""))),V.items.push({type:"list_item",raw:ye,task:!!Zn,checked:qs,loose:!1,text:Ve,tokens:[]}),V.raw+=ye}V.items[V.items.length-1].raw=V.items[V.items.length-1].raw.trimEnd(),V.items[V.items.length-1].text=V.items[V.items.length-1].text.trimEnd(),V.raw=V.raw.trimEnd();for(let me=0;meft.type==="space"),Ve=ye.length>0&&ye.some(ft=>/\n.*\n/.test(ft.raw));V.loose=Ve}if(V.loose)for(let me=0;me$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",V=M[3]?M[3].substring(1,M[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):M[3];return{type:"def",tag:R,raw:M[0],href:O,title:V}}}table(T){const M=this.rules.block.table.exec(T);if(!M||!/[:|]/.test(M[2]))return;const R=p(M[1]),O=M[2].replace(/^\||\| *$/g,"").split("|"),V=M[3]&&M[3].trim()?M[3].replace(/\n[ \t]*$/,"").split(` +`):[],Y={type:"table",raw:M[0],header:[],align:[],rows:[]};if(R.length===O.length){for(const te of O)/^ *-+: *$/.test(te)?Y.align.push("right"):/^ *:-+: *$/.test(te)?Y.align.push("center"):/^ *:-+ *$/.test(te)?Y.align.push("left"):Y.align.push(null);for(let te=0;te({text:me,tokens:this.lexer.inline(me),header:!1,align:Y.align[ye]})));return Y}}lheading(T){const M=this.rules.block.lheading.exec(T);if(M)return{type:"heading",raw:M[0],depth:M[2].charAt(0)==="="?1:2,text:M[1],tokens:this.lexer.inline(M[1])}}paragraph(T){const M=this.rules.block.paragraph.exec(T);if(M){const R=M[1].charAt(M[1].length-1)===` +`?M[1].slice(0,-1):M[1];return{type:"paragraph",raw:M[0],text:R,tokens:this.lexer.inline(R)}}}text(T){const M=this.rules.block.text.exec(T);if(M)return{type:"text",raw:M[0],text:M[0],tokens:this.lexer.inline(M[0])}}escape(T){const M=this.rules.inline.escape.exec(T);if(M)return{type:"escape",raw:M[0],text:d(M[1])}}tag(T){const M=this.rules.inline.tag.exec(T);if(M)return!this.lexer.state.inLink&&/^
    /i.test(M[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(M[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(M[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:M[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:M[0]}}link(T){const M=this.rules.inline.link.exec(T);if(M){const R=M[2].trim();if(!this.options.pedantic&&/^$/.test(R))return;const Y=_(R.slice(0,-1),"\\");if((R.length-Y.length)%2===0)return}else{const Y=b(M[2],"()");if(Y>-1){const me=(M[0].indexOf("!")===0?5:4)+M[1].length+Y;M[2]=M[2].substring(0,Y),M[0]=M[0].substring(0,me).trim(),M[3]=""}}let O=M[2],V="";if(this.options.pedantic){const Y=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(O);Y&&(O=Y[1],V=Y[3])}else V=M[3]?M[3].slice(1,-1):"";return O=O.trim(),/^$/.test(R)?O=O.slice(1):O=O.slice(1,-1)),C(M,{href:O&&O.replace(this.rules.inline.anyPunctuation,"$1"),title:V&&V.replace(this.rules.inline.anyPunctuation,"$1")},M[0],this.lexer)}}reflink(T,M){let R;if((R=this.rules.inline.reflink.exec(T))||(R=this.rules.inline.nolink.exec(T))){const O=(R[2]||R[1]).replace(/\s+/g," "),V=M[O.toLowerCase()];if(!V){const Y=R[0].charAt(0);return{type:"text",raw:Y,text:Y}}return C(R,V,R[0],this.lexer)}}emStrong(T,M,R=""){let O=this.rules.inline.emStrongLDelim.exec(T);if(!O||O[3]&&R.match(/[\p{L}\p{N}]/u))return;if(!(O[1]||O[2]||"")||!R||this.rules.inline.punctuation.exec(R)){const Y=[...O[0]].length-1;let te,me,ye=Y,Ve=0;const ft=O[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(ft.lastIndex=0,M=M.slice(-1*T.length+Y);(O=ft.exec(M))!=null;){if(te=O[1]||O[2]||O[3]||O[4]||O[5]||O[6],!te)continue;if(me=[...te].length,O[3]||O[4]){ye+=me;continue}else if((O[5]||O[6])&&Y%3&&!((Y+me)%3)){Ve+=me;continue}if(ye-=me,ye>0)continue;me=Math.min(me,me+ye+Ve);const Ct=[...O[0]][0].length,Si=T.slice(0,Y+O.index+Ct+me);if(Math.min(Y,me)%2){const Zn=Si.slice(1,-1);return{type:"em",raw:Si,text:Zn,tokens:this.lexer.inlineTokens(Zn)}}const Gt=Si.slice(2,-2);return{type:"strong",raw:Si,text:Gt,tokens:this.lexer.inlineTokens(Gt)}}}}codespan(T){const M=this.rules.inline.code.exec(T);if(M){let R=M[2].replace(/\n/g," ");const O=/[^ ]/.test(R),V=/^ /.test(R)&&/ $/.test(R);return O&&V&&(R=R.substring(1,R.length-1)),R=d(R,!0),{type:"codespan",raw:M[0],text:R}}}br(T){const M=this.rules.inline.br.exec(T);if(M)return{type:"br",raw:M[0]}}del(T){const M=this.rules.inline.del.exec(T);if(M)return{type:"del",raw:M[0],text:M[2],tokens:this.lexer.inlineTokens(M[2])}}autolink(T){const M=this.rules.inline.autolink.exec(T);if(M){let R,O;return M[2]==="@"?(R=d(M[1]),O="mailto:"+R):(R=d(M[1]),O=R),{type:"link",raw:M[0],text:R,href:O,tokens:[{type:"text",raw:R,text:R}]}}}url(T){let M;if(M=this.rules.inline.url.exec(T)){let R,O;if(M[2]==="@")R=d(M[0]),O="mailto:"+R;else{let V;do V=M[0],M[0]=this.rules.inline._backpedal.exec(M[0])?.[0]??"";while(V!==M[0]);R=d(M[0]),M[1]==="www."?O="http://"+M[0]:O=M[0]}return{type:"link",raw:M[0],text:R,href:O,tokens:[{type:"text",raw:R,text:R}]}}}inlineText(T){const M=this.rules.inline.text.exec(T);if(M){let R;return this.lexer.state.inRawBlock?R=M[0]:R=d(M[0]),{type:"text",raw:M[0],text:R}}}}const y=/^(?: *(?:\n|$))+/,x=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,L=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,E=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,N=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,H=/(?:[*+-]|\d{1,9}[.)])/,F=u(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,H).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),W=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,j=/^[^\n]+/,B=/(?!\s*\])(?:\\.|[^\[\]\\])+/,G=u(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",B).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),ne=u(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,H).getRegex(),ae="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",de=/|$))/,se=u("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",de).replace("tag",ae).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),be=u(W).replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ae).getRegex(),Rt={blockquote:u(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",be).getRegex(),code:x,def:G,fences:L,heading:N,hr:E,html:se,lheading:F,list:ne,newline:y,paragraph:be,table:g,text:j},ct=u("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ae).getRegex(),Bt={...Rt,table:ct,paragraph:u(W).replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",ct).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ae).getRegex()},ht={...Rt,html:u(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",de).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:g,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:u(W).replace("hr",E).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",F).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},ei=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,js=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,fi=/^( {2,}|\\)\n(?!\s*$)/,po=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,Yg=u(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Al).getRegex(),Ia=u("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Al).getRegex(),Qg=u("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Al).getRegex(),Xg=u(/\\([punct])/,"gu").replace(/punct/g,Al).getRegex(),Ol=u(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),vu=u(de).replace("(?:-->|$)","-->").getRegex(),wu=u("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",vu).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Yc=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,gb=u(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Yc).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),mb=u(/^!?\[(label)\]\[(ref)\]/).replace("label",Yc).replace("ref",B).getRegex(),yu=u(/^!?\[(ref)\](?:\[\])?/).replace("ref",B).getRegex(),Qc=u("reflink|nolink(?!\\()","g").replace("reflink",mb).replace("nolink",yu).getRegex(),Dr={_backpedal:g,anyPunctuation:Xg,autolink:Ol,blockSkip:Pl,br:fi,code:js,del:g,emStrongLDelim:Yg,emStrongRDelimAst:Ia,emStrongRDelimUnd:Qg,escape:ei,link:gb,nolink:yu,punctuation:fb,reflink:mb,reflinkSearch:Qc,tag:wu,text:po,url:g},Fl={...Dr,link:u(/^!?\[(label)\]\((.*?)\)/).replace("label",Yc).getRegex(),reflink:u(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Yc).getRegex()},Su={...Dr,escape:u(ei).replace("])","~|])").getRegex(),url:u(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\me+" ".repeat(ye.length));let O,V,Y;for(;T;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(te=>(O=te.call({lexer:this},T,M))?(T=T.substring(O.raw.length),M.push(O),!0):!1))){if(O=this.tokenizer.space(T)){T=T.substring(O.raw.length),O.raw.length===1&&M.length>0?M[M.length-1].raw+=` +`:M.push(O);continue}if(O=this.tokenizer.code(T)){T=T.substring(O.raw.length),V=M[M.length-1],V&&(V.type==="paragraph"||V.type==="text")?(V.raw+=` +`+O.raw,V.text+=` +`+O.text,this.inlineQueue[this.inlineQueue.length-1].src=V.text):M.push(O);continue}if(O=this.tokenizer.fences(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.heading(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.hr(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.blockquote(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.list(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.html(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.def(T)){T=T.substring(O.raw.length),V=M[M.length-1],V&&(V.type==="paragraph"||V.type==="text")?(V.raw+=` +`+O.raw,V.text+=` +`+O.raw,this.inlineQueue[this.inlineQueue.length-1].src=V.text):this.tokens.links[O.tag]||(this.tokens.links[O.tag]={href:O.href,title:O.title});continue}if(O=this.tokenizer.table(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.lheading(T)){T=T.substring(O.raw.length),M.push(O);continue}if(Y=T,this.options.extensions&&this.options.extensions.startBlock){let te=1/0;const me=T.slice(1);let ye;this.options.extensions.startBlock.forEach(Ve=>{ye=Ve.call({lexer:this},me),typeof ye=="number"&&ye>=0&&(te=Math.min(te,ye))}),te<1/0&&te>=0&&(Y=T.substring(0,te+1))}if(this.state.top&&(O=this.tokenizer.paragraph(Y))){V=M[M.length-1],R&&V?.type==="paragraph"?(V.raw+=` +`+O.raw,V.text+=` +`+O.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=V.text):M.push(O),R=Y.length!==T.length,T=T.substring(O.raw.length);continue}if(O=this.tokenizer.text(T)){T=T.substring(O.raw.length),V=M[M.length-1],V&&V.type==="text"?(V.raw+=` +`+O.raw,V.text+=` +`+O.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=V.text):M.push(O);continue}if(T){const te="Infinite loop on byte: "+T.charCodeAt(0);if(this.options.silent){console.error(te);break}else throw new Error(te)}}return this.state.top=!0,M}inline(T,M=[]){return this.inlineQueue.push({src:T,tokens:M}),M}inlineTokens(T,M=[]){let R,O,V,Y=T,te,me,ye;if(this.tokens.links){const Ve=Object.keys(this.tokens.links);if(Ve.length>0)for(;(te=this.tokenizer.rules.inline.reflinkSearch.exec(Y))!=null;)Ve.includes(te[0].slice(te[0].lastIndexOf("[")+1,-1))&&(Y=Y.slice(0,te.index)+"["+"a".repeat(te[0].length-2)+"]"+Y.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(te=this.tokenizer.rules.inline.blockSkip.exec(Y))!=null;)Y=Y.slice(0,te.index)+"["+"a".repeat(te[0].length-2)+"]"+Y.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(te=this.tokenizer.rules.inline.anyPunctuation.exec(Y))!=null;)Y=Y.slice(0,te.index)+"++"+Y.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;T;)if(me||(ye=""),me=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(Ve=>(R=Ve.call({lexer:this},T,M))?(T=T.substring(R.raw.length),M.push(R),!0):!1))){if(R=this.tokenizer.escape(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.tag(T)){T=T.substring(R.raw.length),O=M[M.length-1],O&&R.type==="text"&&O.type==="text"?(O.raw+=R.raw,O.text+=R.text):M.push(R);continue}if(R=this.tokenizer.link(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.reflink(T,this.tokens.links)){T=T.substring(R.raw.length),O=M[M.length-1],O&&R.type==="text"&&O.type==="text"?(O.raw+=R.raw,O.text+=R.text):M.push(R);continue}if(R=this.tokenizer.emStrong(T,Y,ye)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.codespan(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.br(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.del(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.autolink(T)){T=T.substring(R.raw.length),M.push(R);continue}if(!this.state.inLink&&(R=this.tokenizer.url(T))){T=T.substring(R.raw.length),M.push(R);continue}if(V=T,this.options.extensions&&this.options.extensions.startInline){let Ve=1/0;const ft=T.slice(1);let Ct;this.options.extensions.startInline.forEach(Si=>{Ct=Si.call({lexer:this},ft),typeof Ct=="number"&&Ct>=0&&(Ve=Math.min(Ve,Ct))}),Ve<1/0&&Ve>=0&&(V=T.substring(0,Ve+1))}if(R=this.tokenizer.inlineText(V)){T=T.substring(R.raw.length),R.raw.slice(-1)!=="_"&&(ye=R.raw.slice(-1)),me=!0,O=M[M.length-1],O&&O.type==="text"?(O.raw+=R.raw,O.text+=R.text):M.push(R);continue}if(T){const Ve="Infinite loop on byte: "+T.charCodeAt(0);if(this.options.silent){console.error(Ve);break}else throw new Error(Ve)}}return M}}class Ir{options;parser;constructor(T){this.options=T||e.defaults}space(T){return""}code({text:T,lang:M,escaped:R}){const O=(M||"").match(/^\S*/)?.[0],V=T.replace(/\n$/,"")+` +`;return O?'
    '+(R?V:d(V,!0))+`
    +`:"
    "+(R?V:d(V,!0))+`
    +`}blockquote({tokens:T}){return`
    +${this.parser.parse(T)}
    +`}html({text:T}){return T}heading({tokens:T,depth:M}){return`${this.parser.parseInline(T)} +`}hr(T){return`
    +`}list(T){const M=T.ordered,R=T.start;let O="";for(let te=0;te +`+O+" +`}listitem(T){let M="";if(T.task){const R=this.checkbox({checked:!!T.checked});T.loose?T.tokens.length>0&&T.tokens[0].type==="paragraph"?(T.tokens[0].text=R+" "+T.tokens[0].text,T.tokens[0].tokens&&T.tokens[0].tokens.length>0&&T.tokens[0].tokens[0].type==="text"&&(T.tokens[0].tokens[0].text=R+" "+T.tokens[0].tokens[0].text)):T.tokens.unshift({type:"text",raw:R+" ",text:R+" "}):M+=R+" "}return M+=this.parser.parse(T.tokens,!!T.loose),`
  • ${M}
  • +`}checkbox({checked:T}){return"'}paragraph({tokens:T}){return`

    ${this.parser.parseInline(T)}

    +`}table(T){let M="",R="";for(let V=0;V${O}`),` + +`+M+` +`+O+`
    +`}tablerow({text:T}){return` +${T} +`}tablecell(T){const M=this.parser.parseInline(T.tokens),R=T.header?"th":"td";return(T.align?`<${R} align="${T.align}">`:`<${R}>`)+M+` +`}strong({tokens:T}){return`${this.parser.parseInline(T)}`}em({tokens:T}){return`${this.parser.parseInline(T)}`}codespan({text:T}){return`${T}`}br(T){return"
    "}del({tokens:T}){return`${this.parser.parseInline(T)}`}link({href:T,title:M,tokens:R}){const O=this.parser.parseInline(R),V=f(T);if(V===null)return O;T=V;let Y='
    ",Y}image({href:T,title:M,text:R}){const O=f(T);if(O===null)return R;T=O;let V=`${R}{const te=V[Y].flat(1/0);R=R.concat(this.walkTokens(te,M))}):V.tokens&&(R=R.concat(this.walkTokens(V.tokens,M)))}}return R}use(...T){const M=this.defaults.extensions||{renderers:{},childTokens:{}};return T.forEach(R=>{const O={...R};if(O.async=this.defaults.async||O.async||!1,R.extensions&&(R.extensions.forEach(V=>{if(!V.name)throw new Error("extension name required");if("renderer"in V){const Y=M.renderers[V.name];Y?M.renderers[V.name]=function(...te){let me=V.renderer.apply(this,te);return me===!1&&(me=Y.apply(this,te)),me}:M.renderers[V.name]=V.renderer}if("tokenizer"in V){if(!V.level||V.level!=="block"&&V.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const Y=M[V.level];Y?Y.unshift(V.tokenizer):M[V.level]=[V.tokenizer],V.start&&(V.level==="block"?M.startBlock?M.startBlock.push(V.start):M.startBlock=[V.start]:V.level==="inline"&&(M.startInline?M.startInline.push(V.start):M.startInline=[V.start]))}"childTokens"in V&&V.childTokens&&(M.childTokens[V.name]=V.childTokens)}),O.extensions=M),R.renderer){const V=this.defaults.renderer||new Ir(this.defaults);for(const Y in R.renderer){if(!(Y in V))throw new Error(`renderer '${Y}' does not exist`);if(["options","parser"].includes(Y))continue;const te=Y,me=R.renderer[te],ye=V[te];V[te]=(...Ve)=>{let ft=me.apply(V,Ve);return ft===!1&&(ft=ye.apply(V,Ve)),ft||""}}O.renderer=V}if(R.tokenizer){const V=this.defaults.tokenizer||new v(this.defaults);for(const Y in R.tokenizer){if(!(Y in V))throw new Error(`tokenizer '${Y}' does not exist`);if(["options","rules","lexer"].includes(Y))continue;const te=Y,me=R.tokenizer[te],ye=V[te];V[te]=(...Ve)=>{let ft=me.apply(V,Ve);return ft===!1&&(ft=ye.apply(V,Ve)),ft}}O.tokenizer=V}if(R.hooks){const V=this.defaults.hooks||new _o;for(const Y in R.hooks){if(!(Y in V))throw new Error(`hook '${Y}' does not exist`);if(Y==="options")continue;const te=Y,me=R.hooks[te],ye=V[te];_o.passThroughHooks.has(Y)?V[te]=Ve=>{if(this.defaults.async)return Promise.resolve(me.call(V,Ve)).then(Ct=>ye.call(V,Ct));const ft=me.call(V,Ve);return ye.call(V,ft)}:V[te]=(...Ve)=>{let ft=me.apply(V,Ve);return ft===!1&&(ft=ye.apply(V,Ve)),ft}}O.hooks=V}if(R.walkTokens){const V=this.defaults.walkTokens,Y=R.walkTokens;O.walkTokens=function(te){let me=[];return me.push(Y.call(this,te)),V&&(me=me.concat(V.call(this,te))),me}}this.defaults={...this.defaults,...O}}),this}setOptions(T){return this.defaults={...this.defaults,...T},this}lexer(T,M){return bs.lex(T,M??this.defaults)}parser(T,M){return Ti.parse(T,M??this.defaults)}parseMarkdown(T,M){return(O,V)=>{const Y={...V},te={...this.defaults,...Y},me=this.onError(!!te.silent,!!te.async);if(this.defaults.async===!0&&Y.async===!1)return me(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof O>"u"||O===null)return me(new Error("marked(): input parameter is undefined or null"));if(typeof O!="string")return me(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(O)+", string expected"));if(te.hooks&&(te.hooks.options=te),te.async)return Promise.resolve(te.hooks?te.hooks.preprocess(O):O).then(ye=>T(ye,te)).then(ye=>te.hooks?te.hooks.processAllTokens(ye):ye).then(ye=>te.walkTokens?Promise.all(this.walkTokens(ye,te.walkTokens)).then(()=>ye):ye).then(ye=>M(ye,te)).then(ye=>te.hooks?te.hooks.postprocess(ye):ye).catch(me);try{te.hooks&&(O=te.hooks.preprocess(O));let ye=T(O,te);te.hooks&&(ye=te.hooks.processAllTokens(ye)),te.walkTokens&&this.walkTokens(ye,te.walkTokens);let Ve=M(ye,te);return te.hooks&&(Ve=te.hooks.postprocess(Ve)),Ve}catch(ye){return me(ye)}}}onError(T,M){return R=>{if(R.message+=` +Please report this to https://github.com/markedjs/marked.`,T){const O="

    An error occurred:

    "+d(R.message+"",!0)+"
    ";return M?Promise.resolve(O):O}if(M)return Promise.reject(R);throw R}}}const Uo=new Lu;function Ot(Xe,T){return Uo.parse(Xe,T)}Ot.options=Ot.setOptions=function(Xe){return Uo.setOptions(Xe),Ot.defaults=Uo.defaults,i(Ot.defaults),Ot},Ot.getDefaults=t,Ot.defaults=e.defaults,Ot.use=function(...Xe){return Uo.use(...Xe),Ot.defaults=Uo.defaults,i(Ot.defaults),Ot},Ot.walkTokens=function(Xe,T){return Uo.walkTokens(Xe,T)},Ot.parseInline=Uo.parseInline,Ot.Parser=Ti,Ot.parser=Ti.parse,Ot.Renderer=Ir,Ot.TextRenderer=Na,Ot.Lexer=bs,Ot.lexer=bs.lex,Ot.Tokenizer=v,Ot.Hooks=_o,Ot.parse=Ot;const Jc=Ot.options,Vy=Ot.setOptions,zy=Ot.use,Hi=Ot.walkTokens,Bl=Ot.parseInline,Uy=Ot,_b=Ti.parse,Jg=bs.lex;e.Hooks=_o,e.Lexer=bs,e.Marked=Lu,e.Parser=Ti,e.Renderer=Ir,e.TextRenderer=Na,e.Tokenizer=v,e.getDefaults=t,e.lexer=Jg,e.marked=Ot,e.options=Jc,e.parse=Uy,e.parseInline=Bl,e.parser=_b,e.setOptions=Vy,e.use=zy,e.walkTokens=Hi}))})();tn.Hooks||exports.Hooks;tn.Lexer||exports.Lexer;tn.Marked||exports.Marked;tn.Parser||exports.Parser;var g7=tn.Renderer||exports.Renderer;tn.TextRenderer||exports.TextRenderer;tn.Tokenizer||exports.Tokenizer;var iG=tn.defaults||exports.defaults;tn.getDefaults||exports.getDefaults;var sy=tn.lexer||exports.lexer;tn.marked||exports.marked;tn.options||exports.options;var m7=tn.parse||exports.parse;tn.parseInline||exports.parseInline;var nG=tn.parser||exports.parser;tn.setOptions||exports.setOptions;tn.use||exports.use;tn.walkTokens||exports.walkTokens;function sG(o){return JSON.stringify(o,oG)}function Ok(o){let e=JSON.parse(o);return e=Fk(e),e}function oG(o,e){return e instanceof RegExp?{$mid:2,source:e.source,flags:e.flags}:e}function Fk(o,e=0){if(!o||e>200)return o;if(typeof o=="object"){switch(o.$mid){case 1:return ve.revive(o);case 2:return new RegExp(o.source,o.flags);case 17:return new Date(o.source)}if(o instanceof lT||o instanceof Uint8Array)return o;if(Array.isArray(o))for(let t=0;t{let i=[],n=[];return o&&({href:o,dimensions:i}=tG(o),n.push(`src="${Fb(o)}"`)),t&&n.push(`alt="${Fb(t)}"`),e&&n.push(`title="${Fb(e)}"`),i.length&&(n=n.concat(i)),""},paragraph({tokens:o}){return`

    ${this.parser.parseInline(o)}

    `},link({href:o,title:e,tokens:t}){let i=this.parser.parseInline(t);return typeof o!="string"?"":(o===i&&(i=ES(i)),e=typeof e=="string"?Fb(ES(e)):"",o=ES(o),o=o.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"),`
    ${i}`)}});function oy(o,e={},t={}){const i=new X;let n=!1;const s=AT(e),r=function(p){let _;try{_=Ok(decodeURIComponent(p))}catch{}return _?(_=O5(_,b=>{if(o.uris&&o.uris[b])return ve.revive(o.uris[b])}),encodeURIComponent(JSON.stringify(_))):p},a=function(p,_){const b=o.uris&&o.uris[p];let C=ve.revive(b);return _?p.startsWith(Te.data+":")?p:(C||(C=ve.parse(p)),E0.uriToBrowserUri(C).toString(!0)):!C||ve.parse(p).toString()===C.toString()?p:(C.query&&(C=C.with({query:r(C.query)})),C.toString())},l=new g7;l.image=NS.image,l.link=NS.link,l.paragraph=NS.paragraph;const c=[],d=[];if(e.codeBlockRendererSync?l.code=({text:p,lang:_})=>{const b=Pk.nextId(),C=e.codeBlockRendererSync(zA(_),p);return d.push([b,C]),`
    ${Km(p)}
    `}:e.codeBlockRenderer&&(l.code=({text:p,lang:_})=>{const b=Pk.nextId(),C=e.codeBlockRenderer(zA(_),p);return c.push(C.then(w=>[b,w])),`
    ${Km(p)}
    `}),e.actionHandler){const p=function(C){let w=C.target;if(!(w.tagName!=="A"&&(w=w.parentElement,!w||w.tagName!=="A")))try{let v=w.dataset.href;v&&(o.baseUri&&(v=TS(ve.from(o.baseUri),v)),e.actionHandler.callback(v,C))}catch(v){Ze(v)}finally{C.preventDefault()}},_=e.actionHandler.disposables.add(new ze(s,"click")),b=e.actionHandler.disposables.add(new ze(s,"auxclick"));e.actionHandler.disposables.add(J.any(_.event,b.event)(C=>{const w=new ur(fe(s),C);!w.leftButton&&!w.middleButton||p(w)})),e.actionHandler.disposables.add(U(s,"keydown",C=>{const w=new Nt(C);!w.equals(10)&&!w.equals(3)||p(w)}))}o.supportHtml||(l.html=({text:p})=>e.sanitizerOptions?.replaceWithPlaintext?Km(p):(o.isTrusted?p.match(/^(]+>)|(<\/\s*span>)$/):void 0)?p:""),t.renderer=l;let h=o.value??"";h.length>1e5&&(h=`${h.substr(0,1e5)}…`),o.supportThemeIcons&&(h=Kq(h));let u;if(e.fillInIncompleteTokens){const p={...iG,...t},_=sy(h,p),b=bG(_);u=nG(b,p)}else u=m7(h,{...t,async:!1});o.supportThemeIcons&&(u=Qd(u).map(_=>typeof _=="string"?_:_.outerHTML).join(""));const g=new DOMParser().parseFromString(Bk({isTrusted:o.isTrusted,...e.sanitizerOptions},u),"text/html");if(g.body.querySelectorAll("img, audio, video, source").forEach(p=>{const _=p.getAttribute("src");if(_){let b=_;try{o.baseUri&&(b=TS(ve.from(o.baseUri),b))}catch{}if(p.setAttribute("src",a(b,!0)),e.remoteImageIsAllowed){const C=ve.parse(b);C.scheme!==Te.file&&C.scheme!==Te.data&&!e.remoteImageIsAllowed(C)&&p.replaceWith(ce("",void 0,p.outerHTML))}}}),g.body.querySelectorAll("a").forEach(p=>{const _=p.getAttribute("href");if(p.setAttribute("href",""),!_||/^data:|javascript:/i.test(_)||/^command:/i.test(_)&&!o.isTrusted||/^command:(\/\/\/)?_workbench\.downloadResource/i.test(_))p.replaceWith(...p.childNodes);else{let b=a(_,!1);o.baseUri&&(b=TS(ve.from(o.baseUri),_)),p.dataset.href=b}}),s.innerHTML=Bk({isTrusted:o.isTrusted,...e.sanitizerOptions},g.body.innerHTML),c.length>0)Promise.all(c).then(p=>{if(n)return;const _=new Map(p),b=s.querySelectorAll("div[data-code]");for(const C of b){const w=_.get(C.dataset.code??"");w&&un(C,w)}e.asyncRenderCallback?.()});else if(d.length>0){const p=new Map(d),_=s.querySelectorAll("div[data-code]");for(const b of _){const C=p.get(b.dataset.code??"");C&&un(b,C)}}if(e.asyncRenderCallback)for(const p of s.getElementsByTagName("img")){const _=i.add(U(p,"load",()=>{_.dispose(),e.asyncRenderCallback()}))}return{element:s,dispose:()=>{n=!0,i.dispose()}}}function zA(o){if(!o)return"";const e=o.split(/[\s+|:|,|\{|\?]/,1);return e.length?e[0]:o}function TS(o,e){return/^\w[\w\d+.-]*:/.test(e)?e:o.path.endsWith("/")?WA(o,e).toString():WA(ny(o),e).toString()}const rG=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"];function Bk(o,e){const{config:t,allowedSchemes:i}=lG(o),n=new X;n.add(UA("uponSanitizeAttribute",(s,r)=>{if(r.attrName==="style"||r.attrName==="class"){if(s.tagName==="SPAN"){if(r.attrName==="style"){r.keepAttr=/^(color\:(#[0-9a-fA-F]+|var\(--vscode(-[a-zA-Z]+)+\));)?(background-color\:(#[0-9a-fA-F]+|var\(--vscode(-[a-zA-Z]+)+\));)?(border-radius:[0-9]+px;)?$/.test(r.attrValue);return}else if(r.attrName==="class"){r.keepAttr=/^codicon codicon-[a-z\-]+( codicon-modifier-[a-z\-]+)?$/.test(r.attrValue);return}}r.keepAttr=!1;return}else if(s.tagName==="INPUT"&&s.attributes.getNamedItem("type")?.value==="checkbox"){if(r.attrName==="type"&&r.attrValue==="checkbox"||r.attrName==="disabled"||r.attrName==="checked"){r.keepAttr=!0;return}r.keepAttr=!1}})),n.add(UA("uponSanitizeElement",(s,r)=>{if(r.tagName==="input"&&(s.attributes.getNamedItem("type")?.value==="checkbox"?s.setAttribute("disabled",""):o.replaceWithPlaintext||s.remove()),o.replaceWithPlaintext&&!r.allowedTags[r.tagName]&&r.tagName!=="body"&&s.parentElement){let a,l;if(r.tagName==="#comment")a=``;else{const u=rG.includes(r.tagName),f=s.attributes.length?" "+Array.from(s.attributes).map(g=>`${g.name}="${g.value}"`).join(" "):"";a=`<${r.tagName}${f}>`,u||(l=``)}const c=document.createDocumentFragment(),d=s.parentElement.ownerDocument.createTextNode(a);c.appendChild(d);const h=l?s.parentElement.ownerDocument.createTextNode(l):void 0;for(;s.firstChild;)c.appendChild(s.firstChild);h&&c.appendChild(h),s.nodeType===Node.COMMENT_NODE?s.parentElement.insertBefore(c,s):s.parentElement.replaceChild(c,s)}})),n.add(AV(i));try{return IF(e,{...t,RETURN_TRUSTED_TYPE:!0})}finally{n.dispose()}}const aG=["align","autoplay","alt","checked","class","colspan","controls","data-code","data-href","disabled","draggable","height","href","loop","muted","playsinline","poster","rowspan","src","style","target","title","type","width","start"];function lG(o){const e=[Te.http,Te.https,Te.mailto,Te.data,Te.file,Te.vscodeFileResource,Te.vscodeRemote,Te.vscodeRemoteResource];return o.isTrusted&&e.push(Te.command),{config:{ALLOWED_TAGS:o.allowedTags??[...PV],ALLOWED_ATTR:aG,ALLOW_UNKNOWN_PROTOCOLS:!0},allowedSchemes:e}}function cG(o){return typeof o=="string"?o:dG(o)}function dG(o,e){let t=o.value??"";t.length>1e5&&(t=`${t.substr(0,1e5)}…`);const i=m7(t,{async:!1,renderer:fG.value}).replace(/&(#\d+|[a-zA-Z]+);/g,n=>hG.get(n)??n);return Bk({isTrusted:!1},i).toString()}const hG=new Map([[""",'"'],[" "," "],["&","&"],["'","'"],["<","<"],[">",">"]]);function uG(){const o=new g7;return o.code=({text:e})=>e,o.blockquote=({text:e})=>e+` +`,o.html=e=>"",o.heading=function({tokens:e}){return this.parser.parseInline(e)+` +`},o.hr=()=>"",o.list=function({items:e}){return e.map(t=>this.listitem(t)).join(` +`)+` +`},o.listitem=({text:e})=>e+` +`,o.paragraph=function({tokens:e}){return this.parser.parseInline(e)+` +`},o.table=function({header:e,rows:t}){return e.map(i=>this.tablecell(i)).join(" ")+` +`+t.map(i=>i.map(n=>this.tablecell(n)).join(" ")).join(` +`)+` +`},o.tablerow=({text:e})=>e,o.tablecell=function({tokens:e}){return this.parser.parseInline(e)},o.strong=({text:e})=>e,o.em=({text:e})=>e,o.codespan=({text:e})=>e,o.br=e=>` +`,o.del=({text:e})=>e,o.image=e=>"",o.text=({text:e})=>e,o.link=({text:e})=>e,o}const fG=new ua(o=>uG());function HC(o){let e="";return o.forEach(t=>{e+=t.raw}),e}function p7(o){if(o.tokens)for(let e=o.tokens.length-1;e>=0;e--){const t=o.tokens[e];if(t.type==="text"){const i=t.raw.split(` +`),n=i[i.length-1];if(n.includes("`"))return vG(o);if(n.includes("**"))return kG(o);if(n.match(/\*\w/))return wG(o);if(n.match(/(^|\s)__\w/))return DG(o);if(n.match(/(^|\s)_\w/))return yG(o);if(gG(n)||mG(n)&&o.tokens.slice(0,e).some(s=>s.type==="text"&&s.raw.match(/\[[^\]]*$/))){const s=o.tokens.slice(e+1);return s[0]?.type==="link"&&s[1]?.type==="text"&&s[1].raw.match(/^ *"[^"]*$/)||n.match(/^[^"]* +"[^"]*$/)?LG(o):SG(o)}else if(n.match(/(^|\s)\[\w*/))return xG(o)}}}function gG(o){return!!o.match(/(^|\s)\[.*\]\(\w*/)}function mG(o){return!!o.match(/^[^\[]*\]\([^\)]*$/)}function pG(o){const e=o.items[o.items.length-1],t=e.tokens?e.tokens[e.tokens.length-1]:void 0;let i;if(t?.type==="text"&&!("inRawBlock"in e)&&(i=p7(t)),!i||i.type!=="paragraph")return;const n=HC(o.items.slice(0,-1)),s=e.raw.match(/^(\s*(-|\d+\.|\*) +)/)?.[0];if(!s)return;const r=s+HC(e.tokens.slice(0,-1))+i.raw,a=sy(n+r)[0];if(a.type==="list")return a}const _G=3;function bG(o){for(let e=0;e<_G;e++){const t=CG(o);if(t)o=t;else break}return o}function CG(o){let e,t;for(e=0;e"u"&&r.match(/^\s*\|/)){const a=r.match(/(\|[^\|]+)(?=\||$)/g);a&&(i=a.length)}else if(typeof i=="number")if(r.match(/^\s*\|/)){if(s!==t.length-1)return;n=!0}else return}if(typeof i=="number"&&i>0){const s=n?t.slice(0,-1).join(` +`):e,r=!!s.match(/\|\s*$/),a=s+(r?"":"|")+` +|${" --- |".repeat(i)}`;return sy(a)}}function UA(o,e){return EF(o,e),_e(()=>NF(o))}const Ga=class Ga{static createEmpty(e,t){const i=Ga.defaultTokenMetadata,n=new Uint32Array(2);return n[0]=e.length,n[1]=i,new Ga(n,e,t)}static createFromTextAndMetadata(e,t){let i=0,n="";const s=new Array;for(const{text:r,metadata:a}of e)s.push(i+r.length,a),i+=r.length,n+=r;return new Ga(new Uint32Array(s),n,t)}constructor(e,t,i){this._lineTokensBrand=void 0,this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=t,this.languageIdCodec=i}equals(e){return e instanceof Ga?this.slicedEquals(e,0,this._tokensCount):!1}slicedEquals(e,t,i){if(this._text!==e._text||this._tokensCount!==e._tokensCount)return!1;const n=t<<1,s=n+(i<<1);for(let r=n;r0?this._tokens[e-1<<1]:0}getMetadata(e){return this._tokens[(e<<1)+1]}getLanguageId(e){const t=this._tokens[(e<<1)+1],i=sr.getLanguageId(t);return this.languageIdCodec.decodeLanguageId(i)}getStandardTokenType(e){const t=this._tokens[(e<<1)+1];return sr.getTokenType(t)}getForeground(e){const t=this._tokens[(e<<1)+1];return sr.getForeground(t)}getClassName(e){const t=this._tokens[(e<<1)+1];return sr.getClassNameFromMetadata(t)}getInlineStyle(e,t){const i=this._tokens[(e<<1)+1];return sr.getInlineStyleFromMetadata(i,t)}getPresentation(e){const t=this._tokens[(e<<1)+1];return sr.getPresentationFromMetadata(t)}getEndOffset(e){return this._tokens[e<<1]}findTokenIndexAtOffset(e){return Ga.findIndexInTokensArray(this._tokens,e)}inflate(){return this}sliceAndInflate(e,t,i){return new VT(this,e,t,i)}static convertToEndOffset(e,t){const n=(e.length>>>1)-1;for(let s=0;s>>1)-1;for(;it&&(n=s)}return i}withInserted(e){if(e.length===0)return this;let t=0,i=0,n="";const s=new Array;let r=0;for(;;){const a=tr){n+=this._text.substring(r,l.offset);const c=this._tokens[(t<<1)+1];s.push(n.length,c),r=l.offset}n+=l.text,s.push(n.length,l.tokenMetadata),i++}else break}return new Ga(new Uint32Array(s),n,this.languageIdCodec)}getTokenText(e){const t=this.getStartOffset(e),i=this.getEndOffset(e);return this._text.substring(t,i)}forEach(e){const t=this.getCount();for(let i=0;i>>0;let Ni=Ga;class VT{constructor(e,t,i,n){this._source=e,this._startOffset=t,this._endOffset=i,this._deltaOffset=n,this._firstTokenIndex=e.findTokenIndexAtOffset(t),this.languageIdCodec=e.languageIdCodec,this._tokensCount=0;for(let s=this._firstTokenIndex,r=e.getCount();s=i);s++)this._tokensCount++}getMetadata(e){return this._source.getMetadata(this._firstTokenIndex+e)}getLanguageId(e){return this._source.getLanguageId(this._firstTokenIndex+e)}getLineContent(){return this._source.getLineContent().substring(this._startOffset,this._endOffset)}equals(e){return e instanceof VT?this._startOffset===e._startOffset&&this._endOffset===e._endOffset&&this._deltaOffset===e._deltaOffset&&this._source.slicedEquals(e._source,this._firstTokenIndex,this._tokensCount):!1}getCount(){return this._tokensCount}getStandardTokenType(e){return this._source.getStandardTokenType(this._firstTokenIndex+e)}getForeground(e){return this._source.getForeground(this._firstTokenIndex+e)}getEndOffset(e){const t=this._source.getEndOffset(this._firstTokenIndex+e);return Math.min(this._endOffset,t)-this._startOffset+this._deltaOffset}getClassName(e){return this._source.getClassName(this._firstTokenIndex+e)}getInlineStyle(e,t){return this._source.getInlineStyle(this._firstTokenIndex+e,t)}getPresentation(e){return this._source.getPresentation(this._firstTokenIndex+e)}findTokenIndexAtOffset(e){return this._source.findTokenIndexAtOffset(e+this._startOffset-this._deltaOffset)-this._firstTokenIndex}getTokenText(e){const t=this._firstTokenIndex+e,i=this._source.getStartOffset(t),n=this._source.getEndOffset(t);let s=this._source.getTokenText(t);return ithis._endOffset&&(s=s.substring(0,s.length-(n-this._endOffset))),s}forEach(e){for(let t=0;t>>0,new x0(t,e===null?a_:e)}const $A={getInitialState:()=>a_,tokenizeEncoded:(o,e,t)=>zT(0,t)};async function EG(o,e,t){if(!t)return KA(e,o.languageIdCodec,$A);const i=await si.getOrCreate(t);return KA(e,o.languageIdCodec,i||$A)}function NG(o,e,t,i,n,s,r){let a="
    ",l=i,c=0,d=!0;for(let h=0,u=e.getCount();h0;)r&&d?(g+=" ",d=!1):(g+=" ",d=!0),_--;break}case 60:g+="<",d=!1;break;case 62:g+=">",d=!1;break;case 38:g+="&",d=!1;break;case 0:g+="�",d=!1;break;case 65279:case 8232:case 8233:case 133:g+="�",d=!1;break;case 13:g+="​",d=!1;break;case 32:r&&d?(g+=" ",d=!1):(g+=" ",d=!0);break;default:g+=String.fromCharCode(p),d=!1}}if(a+=`${g}`,f>n||l>=n)break}return a+="
    ",a}function KA(o,e,t){let i='
    ';const n=va(o);let s=t.getInitialState();for(let r=0,a=n.length;r0&&(i+="
    ");const c=t.tokenizeEncoded(l,!0,s);Ni.convertToEndOffset(c.tokens,l.length);const h=new Ni(c.tokens,l,e).inflate();let u=0;for(let f=0,g=h.getCount();f${Km(l.substring(u,_))}`,u=_}s=c.endState}return i+="
    ",i}var TG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},jA=function(o,e){return function(t,i){e(t,i,o)}},Wk,sh;let Wh=(sh=class{constructor(e,t,i){this._options=e,this._languageService=t,this._openerService=i,this._onDidRenderAsync=new A,this.onDidRenderAsync=this._onDidRenderAsync.event}dispose(){this._onDidRenderAsync.dispose()}render(e,t,i){if(!e)return{element:document.createElement("span"),dispose:()=>{}};const n=new X,s=n.add(oy(e,{...this._getRenderOptions(e,n),...t},i));return s.element.classList.add("rendered-markdown"),{element:s.element,dispose:()=>n.dispose()}}_getRenderOptions(e,t){return{codeBlockRenderer:async(i,n)=>{let s;i?s=this._languageService.getLanguageIdByLanguageName(i):this._options.editor&&(s=this._options.editor.getModel()?.getLanguageId()),s||(s=Bs);const r=await EG(this._languageService,n,s),a=document.createElement("span");if(a.innerHTML=Wk._ttpTokenizer?.createHTML(r)??r,this._options.editor){const l=this._options.editor.getOption(50);qi(a,l)}else this._options.codeBlockFontFamily&&(a.style.fontFamily=this._options.codeBlockFontFamily);return this._options.codeBlockFontSize!==void 0&&(a.style.fontSize=this._options.codeBlockFontSize),a},asyncRenderCallback:()=>this._onDidRenderAsync.fire(),actionHandler:{callback:i=>UT(this._openerService,i,e.isTrusted),disposables:t}}}},Wk=sh,sh._ttpTokenizer=Kc("tokenizeToString",{createHTML(e){return e}}),sh);Wh=Wk=TG([jA(1,qt),jA(2,Vo)],Wh);async function UT(o,e,t){try{return await o.open(e,{fromUserGesture:!0,allowContributedOpeners:!0,allowCommands:MG(t)})}catch(i){return Ze(i),!1}}function MG(o){return o===!0?!0:o&&Array.isArray(o.enabledCommands)?o.enabledCommands:!1}const ms=He("accessibilityService"),RG=new le("accessibilityModeEnabled",!1),qA=2e4;let yd,R1,Hk,A1,Vk;function AG(o){yd=document.createElement("div"),yd.className="monaco-aria-container";const e=()=>{const i=document.createElement("div");return i.className="monaco-alert",i.setAttribute("role","alert"),i.setAttribute("aria-atomic","true"),yd.appendChild(i),i};R1=e(),Hk=e();const t=()=>{const i=document.createElement("div");return i.className="monaco-status",i.setAttribute("aria-live","polite"),i.setAttribute("aria-atomic","true"),yd.appendChild(i),i};A1=t(),Vk=t(),o.appendChild(yd)}function El(o){yd&&(R1.textContent!==o?(xn(Hk),VC(R1,o)):(xn(R1),VC(Hk,o)))}function Hh(o){yd&&(A1.textContent!==o?(xn(Vk),VC(A1,o)):(xn(A1),VC(Vk,o)))}function VC(o,e){xn(o),e.length>qA&&(e=e.substr(0,qA)),o.textContent=e,o.style.visibility="hidden",o.style.visibility="visible"}var PG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fm=function(o,e){return function(t,i){e(t,i,o)}};const Nr=ce;let zk=class extends xr{get _targetWindow(){return fe(this._target.targetElements[0])}get _targetDocumentElement(){return fe(this._target.targetElements[0]).document.documentElement}get isDisposed(){return this._isDisposed}get isMouseIn(){return this._lockMouseTracker.isMouseIn}get domNode(){return this._hover.containerDomNode}get onDispose(){return this._onDispose.event}get onRequestLayout(){return this._onRequestLayout.event}get anchor(){return this._hoverPosition===2?0:1}get x(){return this._x}get y(){return this._y}get isLocked(){return this._isLocked}set isLocked(e){this._isLocked!==e&&(this._isLocked=e,this._hoverContainer.classList.toggle("locked",this._isLocked))}constructor(e,t,i,n,s,r){super(),this._keybindingService=t,this._configurationService=i,this._openerService=n,this._instantiationService=s,this._accessibilityService=r,this._messageListeners=new X,this._isDisposed=!1,this._forcePosition=!1,this._x=0,this._y=0,this._isLocked=!1,this._enableFocusTraps=!1,this._addedFocusTrap=!1,this._onDispose=this._register(new A),this._onRequestLayout=this._register(new A),this._linkHandler=e.linkHandler||(u=>UT(this._openerService,u,ra(e.content)?e.content.isTrusted:void 0)),this._target="targetElements"in e.target?e.target:new OG(e.target),this._hoverPointer=e.appearance?.showPointer?Nr("div.workbench-hover-pointer"):void 0,this._hover=this._register(new RT),this._hover.containerDomNode.classList.add("workbench-hover","fadeIn"),e.appearance?.compact&&this._hover.containerDomNode.classList.add("workbench-hover","compact"),e.appearance?.skipFadeInAnimation&&this._hover.containerDomNode.classList.add("skip-fade-in"),e.additionalClasses&&this._hover.containerDomNode.classList.add(...e.additionalClasses),e.position?.forcePosition&&(this._forcePosition=!0),e.trapFocus&&(this._enableFocusTraps=!0),this._hoverPosition=e.position?.hoverPosition??3,this.onmousedown(this._hover.containerDomNode,u=>u.stopPropagation()),this.onkeydown(this._hover.containerDomNode,u=>{u.equals(9)&&this.dispose()}),this._register(U(this._targetWindow,"blur",()=>this.dispose()));const a=Nr("div.hover-row.markdown-hover"),l=Nr("div.hover-contents");if(typeof e.content=="string")l.textContent=e.content,l.style.whiteSpace="pre-wrap";else if(Ei(e.content))l.appendChild(e.content),l.classList.add("html-hover-contents");else{const u=e.content,f=this._instantiationService.createInstance(Wh,{codeBlockFontFamily:this._configurationService.getValue("editor").fontFamily||ls.fontFamily}),{element:g}=f.render(u,{actionHandler:{callback:p=>this._linkHandler(p),disposables:this._messageListeners},asyncRenderCallback:()=>{l.classList.add("code-hover-contents"),this.layout(),this._onRequestLayout.fire()}});l.appendChild(g)}if(a.appendChild(l),this._hover.contentsDomNode.appendChild(a),e.actions&&e.actions.length>0){const u=Nr("div.hover-row.status-bar"),f=Nr("div.actions");e.actions.forEach(g=>{const p=this._keybindingService.lookupKeybinding(g.commandId),_=p?p.getLabel():null;ey.render(f,{label:g.label,commandId:g.commandId,run:b=>{g.run(b),this.dispose()},iconClass:g.iconClass},_)}),u.appendChild(f),this._hover.containerDomNode.appendChild(u)}this._hoverContainer=Nr("div.workbench-hover-container"),this._hoverPointer&&this._hoverContainer.appendChild(this._hoverPointer),this._hoverContainer.appendChild(this._hover.containerDomNode);let c;if(e.actions&&e.actions.length>0?c=!1:e.persistence?.hideOnHover===void 0?c=typeof e.content=="string"||ra(e.content)&&!e.content.value.includes("](")&&!e.content.value.includes(""):c=e.persistence.hideOnHover,e.appearance?.showHoverHint){const u=Nr("div.hover-row.status-bar"),f=Nr("div.info");f.textContent=m("hoverhint","Hold {0} key to mouse over",Ue?"Option":"Alt"),u.appendChild(f),this._hover.containerDomNode.appendChild(u)}const d=[...this._target.targetElements];c||d.push(this._hoverContainer);const h=this._register(new GA(d));if(this._register(h.onMouseOut(()=>{this._isLocked||this.dispose()})),c){const u=[...this._target.targetElements,this._hoverContainer];this._lockMouseTracker=this._register(new GA(u)),this._register(this._lockMouseTracker.onMouseOut(()=>{this._isLocked||this.dispose()}))}else this._lockMouseTracker=h}addFocusTrap(){if(!this._enableFocusTraps||this._addedFocusTrap)return;this._addedFocusTrap=!0;const e=this._hover.containerDomNode,t=this.findLastFocusableChild(this._hover.containerDomNode);if(t){const i=iT(this._hoverContainer,Nr("div")),n=Z(this._hoverContainer,Nr("div"));i.tabIndex=0,n.tabIndex=0,this._register(U(n,"focus",s=>{e.focus(),s.preventDefault()})),this._register(U(i,"focus",s=>{t.focus(),s.preventDefault()}))}}findLastFocusableChild(e){if(e.hasChildNodes())for(let t=0;t=0)return s}const n=this.findLastFocusableChild(i);if(n)return n}}render(e){e.appendChild(this._hoverContainer);const i=this._hoverContainer.contains(this._hoverContainer.ownerDocument.activeElement)&&e7(this._configurationService.getValue("accessibility.verbosity.hover")===!0&&this._accessibilityService.isScreenReaderOptimized(),this._keybindingService.lookupKeybinding("editor.action.accessibleView")?.getAriaLabel());i&&Hh(i),this.layout(),this.addFocusTrap()}layout(){this._hover.containerDomNode.classList.remove("right-aligned"),this._hover.contentsDomNode.style.maxHeight="";const e=d=>{const h=AF(d),u=d.getBoundingClientRect();return{top:u.top*h,bottom:u.bottom*h,right:u.right*h,left:u.left*h}},t=this._target.targetElements.map(d=>e(d)),{top:i,right:n,bottom:s,left:r}=t[0],a=n-r,l=s-i,c={top:i,right:n,bottom:s,left:r,width:a,height:l,center:{x:r+a/2,y:i+l/2}};if(this.adjustHorizontalHoverPosition(c),this.adjustVerticalHoverPosition(c),this.adjustHoverMaxHeight(c),this._hoverContainer.style.padding="",this._hoverContainer.style.margin="",this._hoverPointer){switch(this._hoverPosition){case 1:c.left+=3,c.right+=3,this._hoverContainer.style.paddingLeft="3px",this._hoverContainer.style.marginLeft="-3px";break;case 0:c.left-=3,c.right-=3,this._hoverContainer.style.paddingRight="3px",this._hoverContainer.style.marginRight="-3px";break;case 2:c.top+=3,c.bottom+=3,this._hoverContainer.style.paddingTop="3px",this._hoverContainer.style.marginTop="-3px";break;case 3:c.top-=3,c.bottom-=3,this._hoverContainer.style.paddingBottom="3px",this._hoverContainer.style.marginBottom="-3px";break}c.center.x=c.left+a/2,c.center.y=c.top+l/2}this.computeXCordinate(c),this.computeYCordinate(c),this._hoverPointer&&(this._hoverPointer.classList.remove("top"),this._hoverPointer.classList.remove("left"),this._hoverPointer.classList.remove("right"),this._hoverPointer.classList.remove("bottom"),this.setHoverPointerPosition(c)),this._hover.onContentsChanged()}computeXCordinate(e){const t=this._hover.containerDomNode.clientWidth+2;this._target.x!==void 0?this._x=this._target.x:this._hoverPosition===1?this._x=e.right:this._hoverPosition===0?this._x=e.left-t:(this._hoverPointer?this._x=e.center.x-this._hover.containerDomNode.clientWidth/2:this._x=e.left,this._x+t>=this._targetDocumentElement.clientWidth&&(this._hover.containerDomNode.classList.add("right-aligned"),this._x=Math.max(this._targetDocumentElement.clientWidth-t-2,this._targetDocumentElement.clientLeft))),this._xthis._targetWindow.innerHeight&&(this._y=e.bottom)}adjustHorizontalHoverPosition(e){if(this._target.x!==void 0)return;const t=this._hoverPointer?3:0;if(this._forcePosition){const i=t+2;this._hoverPosition===1?this._hover.containerDomNode.style.maxWidth=`${this._targetDocumentElement.clientWidth-e.right-i}px`:this._hoverPosition===0&&(this._hover.containerDomNode.style.maxWidth=`${e.left-i}px`);return}this._hoverPosition===1?this._targetDocumentElement.clientWidth-e.right=this._hover.containerDomNode.clientWidth+t?this._hoverPosition=0:this._hoverPosition=2):this._hoverPosition===0&&(e.left=this._hover.containerDomNode.clientWidth+t?this._hoverPosition=1:this._hoverPosition=2),e.left-this._hover.containerDomNode.clientWidth-t<=this._targetDocumentElement.clientLeft&&(this._hoverPosition=1))}adjustVerticalHoverPosition(e){if(this._target.y!==void 0||this._forcePosition)return;const t=this._hoverPointer?3:0;this._hoverPosition===3?e.top-this._hover.containerDomNode.clientHeight-t<0&&(this._hoverPosition=2):this._hoverPosition===2&&e.bottom+this._hover.containerDomNode.clientHeight+t>this._targetWindow.innerHeight&&(this._hoverPosition=3)}adjustHoverMaxHeight(e){let t=this._targetWindow.innerHeight/2;if(this._forcePosition){const i=(this._hoverPointer?3:0)+2;this._hoverPosition===3?t=Math.min(t,e.top-i):this._hoverPosition===2&&(t=Math.min(t,this._targetWindow.innerHeight-e.bottom-i))}if(this._hover.containerDomNode.style.maxHeight=`${t}px`,this._hover.contentsDomNode.clientHeighte.height?this._hoverPointer.style.top=`${e.center.y-(this._y-t)-3}px`:this._hoverPointer.style.top=`${Math.round(t/2)-3}px`;break}case 3:case 2:{this._hoverPointer.classList.add(this._hoverPosition===3?"bottom":"top");const t=this._hover.containerDomNode.clientWidth;let i=Math.round(t/2)-3;const n=this._x+i;(ne.right)&&(i=e.center.x-this._x-3),this._hoverPointer.style.left=`${i}px`;break}}}focus(){this._hover.containerDomNode.focus()}dispose(){this._isDisposed||(this._onDispose.fire(),this._hoverContainer.remove(),this._messageListeners.dispose(),this._target.dispose(),super.dispose()),this._isDisposed=!0}};zk=PG([fm(1,vt),fm(2,lt),fm(3,Vo),fm(4,ke),fm(5,ms)],zk);class GA extends xr{get onMouseOut(){return this._onMouseOut.event}get isMouseIn(){return this._isMouseIn}constructor(e){super(),this._elements=e,this._isMouseIn=!0,this._onMouseOut=this._register(new A),this._elements.forEach(t=>this.onmouseover(t,()=>this._onTargetMouseOver(t))),this._elements.forEach(t=>this.onmouseleave(t,()=>this._onTargetMouseLeave(t)))}_onTargetMouseOver(e){this._isMouseIn=!0,this._clearEvaluateMouseStateTimeout(e)}_onTargetMouseLeave(e){this._isMouseIn=!1,this._evaluateMouseState(e)}_evaluateMouseState(e){this._clearEvaluateMouseStateTimeout(e),this._mouseTimeout=fe(e).setTimeout(()=>this._fireIfMouseOutside(),0)}_clearEvaluateMouseStateTimeout(e){this._mouseTimeout&&(fe(e).clearTimeout(this._mouseTimeout),this._mouseTimeout=void 0)}_fireIfMouseOutside(){this._isMouseIn||this._onMouseOut.fire()}}class OG{constructor(e){this._element=e,this.targetElements=[this._element]}dispose(){}}var Yi;(function(o){function e(s,r){if(s.start>=r.end||r.start>=s.end)return{start:0,end:0};const a=Math.max(s.start,r.start),l=Math.min(s.end,r.end);return l-a<=0?{start:0,end:0}:{start:a,end:l}}o.intersect=e;function t(s){return s.end-s.start<=0}o.isEmpty=t;function i(s,r){return!t(e(s,r))}o.intersects=i;function n(s,r){const a=[],l={start:s.start,end:Math.min(r.start,s.end)},c={start:Math.max(r.end,s.start),end:s.end};return t(l)||a.push(l),t(c)||a.push(c),a}o.relativeComplement=n})(Yi||(Yi={}));function FG(o){const e=o;return!!e&&typeof e.x=="number"&&typeof e.y=="number"}var oc;(function(o){o[o.AVOID=0]="AVOID",o[o.ALIGN=1]="ALIGN"})(oc||(oc={}));function nf(o,e,t){const i=t.mode===oc.ALIGN?t.offset:t.offset+t.size,n=t.mode===oc.ALIGN?t.offset+t.size:t.offset;return t.position===0?e<=o-i?i:e<=n?n-e:Math.max(o-e,0):e<=n?n-e:e<=o-i?i:0}const Lf=class Lf extends z{constructor(e,t){super(),this.container=null,this.useFixedPosition=!1,this.useShadowDOM=!1,this.delegate=null,this.toDisposeOnClean=z.None,this.toDisposeOnSetContainer=z.None,this.shadowRoot=null,this.shadowRootHostElement=null,this.view=ce(".context-view"),Cn(this.view),this.setContainer(e,t),this._register(_e(()=>this.setContainer(null,1)))}setContainer(e,t){this.useFixedPosition=t!==1;const i=this.useShadowDOM;if(this.useShadowDOM=t===3,!(e===this.container&&i===this.useShadowDOM)&&(this.container&&(this.toDisposeOnSetContainer.dispose(),this.view.remove(),this.shadowRoot&&(this.shadowRoot=null,this.shadowRootHostElement?.remove(),this.shadowRootHostElement=null),this.container=null),e)){if(this.container=e,this.useShadowDOM){this.shadowRootHostElement=ce(".shadow-root-host"),this.container.appendChild(this.shadowRootHostElement),this.shadowRoot=this.shadowRootHostElement.attachShadow({mode:"open"});const s=document.createElement("style");s.textContent=BG,this.shadowRoot.appendChild(s),this.shadowRoot.appendChild(this.view),this.shadowRoot.appendChild(ce("slot"))}else this.container.appendChild(this.view);const n=new X;Lf.BUBBLE_UP_EVENTS.forEach(s=>{n.add(jt(this.container,s,r=>{this.onDOMEvent(r,!1)}))}),Lf.BUBBLE_DOWN_EVENTS.forEach(s=>{n.add(jt(this.container,s,r=>{this.onDOMEvent(r,!0)},!0))}),this.toDisposeOnSetContainer=n}}show(e){this.isVisible()&&this.hide(),xn(this.view),this.view.className="context-view monaco-component",this.view.style.top="0px",this.view.style.left="0px",this.view.style.zIndex=`${2575+(e.layer??0)}`,this.view.style.position=this.useFixedPosition?"fixed":"absolute",ns(this.view),this.toDisposeOnClean=e.render(this.view)||z.None,this.delegate=e,this.doLayout(),this.delegate.focus?.()}getViewElement(){return this.view}layout(){if(this.isVisible()){if(this.delegate.canRelayout===!1&&!(Tc&&KN.pointerEvents)){this.hide();return}this.delegate?.layout?.(),this.doLayout()}}doLayout(){if(!this.isVisible())return;const e=this.delegate.getAnchor();let t;if(Ei(e)){const u=gi(e),f=AF(e);t={top:u.top*f,left:u.left*f,width:u.width*f,height:u.height*f}}else FG(e)?t={top:e.y,left:e.x,width:e.width||1,height:e.height||2}:t={top:e.posy,left:e.posx,width:2,height:2};const i=qp(this.view),n=Hd(this.view),s=this.delegate.anchorPosition||0,r=this.delegate.anchorAlignment||0,a=this.delegate.anchorAxisAlignment||0;let l,c;const d=km();if(a===0){const u={offset:t.top-d.pageYOffset,size:t.height,position:s===0?0:1},f={offset:t.left,size:t.width,position:r===0?0:1,mode:oc.ALIGN};l=nf(d.innerHeight,n,u)+d.pageYOffset,Yi.intersects({start:l,end:l+n},{start:u.offset,end:u.offset+u.size})&&(f.mode=oc.AVOID),c=nf(d.innerWidth,i,f)}else{const u={offset:t.left,size:t.width,position:r===0?0:1},f={offset:t.top,size:t.height,position:s===0?0:1,mode:oc.ALIGN};c=nf(d.innerWidth,i,u),Yi.intersects({start:c,end:c+i},{start:u.offset,end:u.offset+u.size})&&(f.mode=oc.AVOID),l=nf(d.innerHeight,n,f)+d.pageYOffset}this.view.classList.remove("top","bottom","left","right"),this.view.classList.add(s===0?"bottom":"top"),this.view.classList.add(r===0?"left":"right"),this.view.classList.toggle("fixed",this.useFixedPosition);const h=gi(this.container);this.view.style.top=`${l-(this.useFixedPosition?gi(this.view).top:h.top)}px`,this.view.style.left=`${c-(this.useFixedPosition?gi(this.view).left:h.left)}px`,this.view.style.width="initial"}hide(e){const t=this.delegate;this.delegate=null,t?.onHide&&t.onHide(e),this.toDisposeOnClean.dispose(),Cn(this.view)}isVisible(){return!!this.delegate}onDOMEvent(e,t){this.delegate&&(this.delegate.onDOMEvent?this.delegate.onDOMEvent(e,fe(e).document.activeElement):t&&!yi(e.target,this.container)&&this.hide())}dispose(){this.hide(),super.dispose()}};Lf.BUBBLE_UP_EVENTS=["click","keydown","focus","blur"],Lf.BUBBLE_DOWN_EVENTS=["click"];let Uk=Lf;const BG=` + :host { + all: initial; /* 1st rule so subsequent properties are reset. */ + } + + .codicon[class*='codicon-'] { + font: normal normal normal 16px/1 codicon; + display: inline-block; + text-decoration: none; + text-rendering: auto; + text-align: center; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + } + + :host { + font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "HelveticaNeue-Light", system-ui, "Ubuntu", "Droid Sans", sans-serif; + } + + :host-context(.mac) { font-family: -apple-system, BlinkMacSystemFont, sans-serif; } + :host-context(.mac:lang(zh-Hans)) { font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", sans-serif; } + :host-context(.mac:lang(zh-Hant)) { font-family: -apple-system, BlinkMacSystemFont, "PingFang TC", sans-serif; } + :host-context(.mac:lang(ja)) { font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic Pro", sans-serif; } + :host-context(.mac:lang(ko)) { font-family: -apple-system, BlinkMacSystemFont, "Nanum Gothic", "Apple SD Gothic Neo", "AppleGothic", sans-serif; } + + :host-context(.windows) { font-family: "Segoe WPC", "Segoe UI", sans-serif; } + :host-context(.windows:lang(zh-Hans)) { font-family: "Segoe WPC", "Segoe UI", "Microsoft YaHei", sans-serif; } + :host-context(.windows:lang(zh-Hant)) { font-family: "Segoe WPC", "Segoe UI", "Microsoft Jhenghei", sans-serif; } + :host-context(.windows:lang(ja)) { font-family: "Segoe WPC", "Segoe UI", "Yu Gothic UI", "Meiryo UI", sans-serif; } + :host-context(.windows:lang(ko)) { font-family: "Segoe WPC", "Segoe UI", "Malgun Gothic", "Dotom", sans-serif; } + + :host-context(.linux) { font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif; } + :host-context(.linux:lang(zh-Hans)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans SC", "Source Han Sans CN", "Source Han Sans", sans-serif; } + :host-context(.linux:lang(zh-Hant)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans TC", "Source Han Sans TW", "Source Han Sans", sans-serif; } + :host-context(.linux:lang(ja)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans J", "Source Han Sans JP", "Source Han Sans", sans-serif; } + :host-context(.linux:lang(ko)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans K", "Source Han Sans JR", "Source Han Sans", "UnDotum", "FBaekmuk Gulim", sans-serif; } +`;var WG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},HG=function(o,e){return function(t,i){e(t,i,o)}};let zC=class extends z{constructor(e){super(),this.layoutService=e,this.contextView=this._register(new Uk(this.layoutService.mainContainer,1)),this.layout(),this._register(e.onDidLayoutContainer(()=>this.layout()))}showContextView(e,t,i){let n;t?t===this.layoutService.getContainer(fe(t))?n=1:i?n=3:n=2:n=1,this.contextView.setContainer(t??this.layoutService.activeContainer,n),this.contextView.show(e);const s={close:()=>{this.openContextView===s&&this.hideContextView()}};return this.openContextView=s,s}layout(){this.contextView.layout()}hideContextView(e){this.contextView.hide(e),this.openContextView=void 0}};zC=WG([HG(0,jc)],zC);class VG extends zC{getContextViewElement(){return this.contextView.getViewElement()}}class zG{constructor(e,t,i){this.hoverDelegate=e,this.target=t,this.fadeInAnimation=i}async update(e,t,i){if(this._cancellationTokenSource&&(this._cancellationTokenSource.dispose(!0),this._cancellationTokenSource=void 0),this.isDisposed)return;let n;if(e===void 0||Os(e)||Ei(e))n=e;else if(!tC(e.markdown))n=e.markdown??e.markdownNotSupportedFallback;else{this._hoverWidget||this.show(m("iconLabel.loading","Loading..."),t,i),this._cancellationTokenSource=new In;const s=this._cancellationTokenSource.token;if(n=await e.markdown(s),n===void 0&&(n=e.markdownNotSupportedFallback),this.isDisposed||s.isCancellationRequested)return}this.show(n,t,i)}show(e,t,i){const n=this._hoverWidget;if(this.hasContent(e)){const s={content:e,target:this.target,actions:i?.actions,linkHandler:i?.linkHandler,trapFocus:i?.trapFocus,appearance:{showPointer:this.hoverDelegate.placement==="element",skipFadeInAnimation:!this.fadeInAnimation||!!n,showHoverHint:i?.appearance?.showHoverHint},position:{hoverPosition:2}};this._hoverWidget=this.hoverDelegate.showHover(s,t)}n?.dispose()}hasContent(e){return e?ra(e)?!!e.value:!0:!1}get isDisposed(){return this._hoverWidget?.isDisposed}dispose(){this._hoverWidget?.dispose(),this._cancellationTokenSource?.dispose(!0),this._cancellationTokenSource=void 0}}var UG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},gm=function(o,e){return function(t,i){e(t,i,o)}};let $k=class extends z{constructor(e,t,i,n,s){super(),this._instantiationService=e,this._keybindingService=i,this._layoutService=n,this._accessibilityService=s,this._managedHovers=new Map,t.onDidShowContextMenu(()=>this.hideHover()),this._contextViewHandler=this._register(new zC(this._layoutService))}showHover(e,t,i){if(ZA(this._currentHoverOptions)===ZA(e)||this._currentHover&&this._currentHoverOptions?.persistence?.sticky)return;this._currentHoverOptions=e,this._lastHoverOptions=e;const n=e.trapFocus||this._accessibilityService.isScreenReaderOptimized(),s=Xi();i||(n&&s?s.classList.contains("monaco-hover")||(this._lastFocusedElementBeforeOpen=s):this._lastFocusedElementBeforeOpen=void 0);const r=new X,a=this._instantiationService.createInstance(zk,e);if(e.persistence?.sticky&&(a.isLocked=!0),a.onDispose(()=>{this._currentHover?.domNode&&OF(this._currentHover.domNode)&&this._lastFocusedElementBeforeOpen?.focus(),this._currentHoverOptions===e&&(this._currentHoverOptions=void 0),r.dispose()},void 0,r),!e.container){const l=Ei(e.target)?e.target:e.target.targetElements[0];e.container=this._layoutService.getContainer(fe(l))}if(this._contextViewHandler.showContextView(new $G(a,t),e.container),a.onRequestLayout(()=>this._contextViewHandler.layout(),void 0,r),e.persistence?.sticky)r.add(U(fe(e.container).document,ee.MOUSE_DOWN,l=>{yi(l.target,a.domNode)||this.doHideHover()}));else{if("targetElements"in e.target)for(const c of e.target.targetElements)r.add(U(c,ee.CLICK,()=>this.hideHover()));else r.add(U(e.target,ee.CLICK,()=>this.hideHover()));const l=Xi();if(l){const c=fe(l).document;r.add(U(l,ee.KEY_DOWN,d=>this._keyDown(d,a,!!e.persistence?.hideOnKeyDown))),r.add(U(c,ee.KEY_DOWN,d=>this._keyDown(d,a,!!e.persistence?.hideOnKeyDown))),r.add(U(l,ee.KEY_UP,d=>this._keyUp(d,a))),r.add(U(c,ee.KEY_UP,d=>this._keyUp(d,a)))}}if("IntersectionObserver"in _t){const l=new IntersectionObserver(d=>this._intersectionChange(d,a),{threshold:0}),c="targetElements"in e.target?e.target.targetElements[0]:e.target;l.observe(c),r.add(_e(()=>l.disconnect()))}return this._currentHover=a,a}hideHover(){this._currentHover?.isLocked||!this._currentHoverOptions||this.doHideHover()}doHideHover(){this._currentHover=void 0,this._currentHoverOptions=void 0,this._contextViewHandler.hideContextView()}_intersectionChange(e,t){e[e.length-1].isIntersecting||t.dispose()}showAndFocusLastHover(){this._lastHoverOptions&&this.showHover(this._lastHoverOptions,!0,!0)}_keyDown(e,t,i){if(e.key==="Alt"){t.isLocked=!0;return}const n=new Nt(e);this._keybindingService.resolveKeyboardEvent(n).getSingleModifierDispatchChords().some(r=>!!r)||this._keybindingService.softDispatch(n,n.target).kind!==0||i&&(!this._currentHoverOptions?.trapFocus||e.key!=="Tab")&&(this.hideHover(),this._lastFocusedElementBeforeOpen?.focus())}_keyUp(e,t){e.key==="Alt"&&(t.isLocked=!1,t.isMouseIn||(this.hideHover(),this._lastFocusedElementBeforeOpen?.focus()))}setupManagedHover(e,t,i,n){t.setAttribute("custom-hover","true"),t.title!==""&&(console.warn("HTML element already has a title attribute, which will conflict with the custom hover. Please remove the title attribute."),console.trace("Stack trace:",t.title),t.title="");let s,r;const a=(w,v)=>{const y=r!==void 0;w&&(r?.dispose(),r=void 0),v&&(s?.dispose(),s=void 0),y&&(e.onDidHideHover?.(),r=void 0)},l=(w,v,y,x)=>new wr(async()=>{(!r||r.isDisposed)&&(r=new zG(e,y||t,w>0),await r.update(typeof i=="function"?i():i,v,{...n,trapFocus:x}))},w);let c=!1;const d=U(t,ee.MOUSE_DOWN,()=>{c=!0,a(!0,!0)},!0),h=U(t,ee.MOUSE_UP,()=>{c=!1},!0),u=U(t,ee.MOUSE_LEAVE,w=>{c=!1,a(!1,w.fromElement===t)},!0),f=w=>{if(s)return;const v=new X,y={targetElements:[t],dispose:()=>{}};if(e.placement===void 0||e.placement==="mouse"){const x=L=>{y.x=L.x+10,Ei(L.target)&&YA(L.target,t)!==t&&a(!0,!0)};v.add(U(t,ee.MOUSE_MOVE,x,!0))}s=v,!(Ei(w.target)&&YA(w.target,t)!==t)&&v.add(l(e.delay,!1,y))},g=U(t,ee.MOUSE_OVER,f,!0),p=()=>{if(c||s)return;const w={targetElements:[t],dispose:()=>{}},v=new X,y=()=>a(!0,!0);v.add(U(t,ee.BLUR,y,!0)),v.add(l(e.delay,!1,w)),s=v};let _;const b=t.tagName.toLowerCase();b!=="input"&&b!=="textarea"&&(_=U(t,ee.FOCUS,p,!0));const C={show:w=>{a(!1,!0),l(0,w,void 0,w)},hide:()=>{a(!0,!0)},update:async(w,v)=>{i=w,await r?.update(i,void 0,v)},dispose:()=>{this._managedHovers.delete(t),g.dispose(),u.dispose(),d.dispose(),h.dispose(),_?.dispose(),a(!0,!0)}};return this._managedHovers.set(t,C),C}showManagedHover(e){const t=this._managedHovers.get(e);t&&t.show(!0)}dispose(){this._managedHovers.forEach(e=>e.dispose()),super.dispose()}};$k=UG([gm(0,ke),gm(1,Lr),gm(2,vt),gm(3,jc),gm(4,ms)],$k);function ZA(o){if(o!==void 0)return o?.id??o}class $G{get anchorPosition(){return this._hover.anchor}constructor(e,t=!1){this._hover=e,this._focus=t,this.layer=1}render(e){return this._hover.render(e),this._focus&&this._hover.focus(),this._hover}getAnchor(){return{x:this._hover.x,y:this._hover.y}}layout(){this._hover.layout()}}function YA(o,e){for(e=e??fe(o).document.body;!o.hasAttribute("custom-hover")&&o!==e;)o=o.parentElement;return o}Qe(au,$k,1);Sr((o,e)=>{const t=o.getColor(z3);t&&(e.addRule(`.monaco-workbench .workbench-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${t.transparent(.5)}; }`),e.addRule(`.monaco-workbench .workbench-hover hr { border-top: 1px solid ${t.transparent(.5)}; }`))});const b7=He("IWorkspaceEditService");class $T{constructor(e){this.metadata=e}static convert(e){return e.edits.map(t=>{if(Xd.is(t))return Xd.lift(t);if(Ff.is(t))return Ff.lift(t);throw new Error("Unsupported edit")})}}class Xd extends $T{static is(e){return e instanceof Xd?!0:Oi(e)&&ve.isUri(e.resource)&&Oi(e.textEdit)}static lift(e){return e instanceof Xd?e:new Xd(e.resource,e.textEdit,e.versionId,e.metadata)}constructor(e,t,i=void 0,n){super(n),this.resource=e,this.textEdit=t,this.versionId=i}}class Ff extends $T{static is(e){return e instanceof Ff?!0:Oi(e)&&(!!e.newResource||!!e.oldResource)}static lift(e){return e instanceof Ff?e:new Ff(e.oldResource,e.newResource,e.options,e.metadata)}constructor(e,t,i={},n){super(n),this.oldResource=e,this.newResource=t,this.options=i}}const Vi={enableSplitViewResizing:!0,renderSideBySide:!0,renderMarginRevertIcon:!0,renderGutterMenu:!0,maxComputationTime:5e3,maxFileSize:50,ignoreTrimWhitespace:!0,renderIndicators:!0,originalEditable:!1,diffCodeLens:!1,renderOverviewRuler:!0,diffWordWrap:"inherit",diffAlgorithm:"advanced",accessibilityVerbose:!1,experimental:{showMoves:!1,showEmptyDecorations:!0,useTrueInlineView:!1},hideUnchangedRegions:{enabled:!1,contextLineCount:3,minimumLineCount:3,revealLineCount:20},isInEmbeddedEditor:!1,onlyShowAccessibleDiffViewer:!1,renderSideBySideInlineBreakpoint:900,useInlineViewWhenSpaceIsLimited:!0,compactMode:!1},KG=Object.freeze({id:"editor",order:5,type:"object",title:m("editorConfigurationTitle","Editor"),scope:5}),UC={...KG,properties:{"editor.tabSize":{type:"number",default:Qi.tabSize,minimum:1,markdownDescription:m("tabSize","The number of spaces a tab is equal to. This setting is overridden based on the file contents when {0} is on.","`#editor.detectIndentation#`")},"editor.indentSize":{anyOf:[{type:"string",enum:["tabSize"]},{type:"number",minimum:1}],default:"tabSize",markdownDescription:m("indentSize",'The number of spaces used for indentation or `"tabSize"` to use the value from `#editor.tabSize#`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.')},"editor.insertSpaces":{type:"boolean",default:Qi.insertSpaces,markdownDescription:m("insertSpaces","Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when {0} is on.","`#editor.detectIndentation#`")},"editor.detectIndentation":{type:"boolean",default:Qi.detectIndentation,markdownDescription:m("detectIndentation","Controls whether {0} and {1} will be automatically detected when a file is opened based on the file contents.","`#editor.tabSize#`","`#editor.insertSpaces#`")},"editor.trimAutoWhitespace":{type:"boolean",default:Qi.trimAutoWhitespace,description:m("trimAutoWhitespace","Remove trailing auto inserted whitespace.")},"editor.largeFileOptimizations":{type:"boolean",default:Qi.largeFileOptimizations,description:m("largeFileOptimizations","Special handling for large files to disable certain memory intensive features.")},"editor.wordBasedSuggestions":{enum:["off","currentDocument","matchingDocuments","allDocuments"],default:"matchingDocuments",enumDescriptions:[m("wordBasedSuggestions.off","Turn off Word Based Suggestions."),m("wordBasedSuggestions.currentDocument","Only suggest words from the active document."),m("wordBasedSuggestions.matchingDocuments","Suggest words from all open documents of the same language."),m("wordBasedSuggestions.allDocuments","Suggest words from all open documents.")],description:m("wordBasedSuggestions","Controls whether completions should be computed based on words in the document and from which documents they are computed.")},"editor.semanticHighlighting.enabled":{enum:[!0,!1,"configuredByTheme"],enumDescriptions:[m("semanticHighlighting.true","Semantic highlighting enabled for all color themes."),m("semanticHighlighting.false","Semantic highlighting disabled for all color themes."),m("semanticHighlighting.configuredByTheme","Semantic highlighting is configured by the current color theme's `semanticHighlighting` setting.")],default:"configuredByTheme",description:m("semanticHighlighting.enabled","Controls whether the semanticHighlighting is shown for the languages that support it.")},"editor.stablePeek":{type:"boolean",default:!1,markdownDescription:m("stablePeek","Keep peek editors open even when double-clicking their content or when hitting `Escape`.")},"editor.maxTokenizationLineLength":{type:"integer",default:2e4,description:m("maxTokenizationLineLength","Lines above this length will not be tokenized for performance reasons")},"editor.experimental.asyncTokenization":{type:"boolean",default:!0,description:m("editor.experimental.asyncTokenization","Controls whether the tokenization should happen asynchronously on a web worker."),tags:["experimental"]},"editor.experimental.asyncTokenizationLogging":{type:"boolean",default:!1,description:m("editor.experimental.asyncTokenizationLogging","Controls whether async tokenization should be logged. For debugging only.")},"editor.experimental.asyncTokenizationVerification":{type:"boolean",default:!1,description:m("editor.experimental.asyncTokenizationVerification","Controls whether async tokenization should be verified against legacy background tokenization. Might slow down tokenization. For debugging only."),tags:["experimental"]},"editor.experimental.treeSitterTelemetry":{type:"boolean",default:!1,markdownDescription:m("editor.experimental.treeSitterTelemetry","Controls whether tree sitter parsing should be turned on and telemetry collected. Setting `editor.experimental.preferTreeSitter` for specific languages will take precedence."),tags:["experimental"]},"editor.language.brackets":{type:["array","null"],default:null,description:m("schema.brackets","Defines the bracket symbols that increase or decrease the indentation."),items:{type:"array",items:[{type:"string",description:m("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:m("schema.closeBracket","The closing bracket character or string sequence.")}]}},"editor.language.colorizedBracketPairs":{type:["array","null"],default:null,description:m("schema.colorizedBracketPairs","Defines the bracket pairs that are colorized by their nesting level if bracket pair colorization is enabled."),items:{type:"array",items:[{type:"string",description:m("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:m("schema.closeBracket","The closing bracket character or string sequence.")}]}},"diffEditor.maxComputationTime":{type:"number",default:Vi.maxComputationTime,description:m("maxComputationTime","Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.")},"diffEditor.maxFileSize":{type:"number",default:Vi.maxFileSize,description:m("maxFileSize","Maximum file size in MB for which to compute diffs. Use 0 for no limit.")},"diffEditor.renderSideBySide":{type:"boolean",default:Vi.renderSideBySide,description:m("sideBySide","Controls whether the diff editor shows the diff side by side or inline.")},"diffEditor.renderSideBySideInlineBreakpoint":{type:"number",default:Vi.renderSideBySideInlineBreakpoint,description:m("renderSideBySideInlineBreakpoint","If the diff editor width is smaller than this value, the inline view is used.")},"diffEditor.useInlineViewWhenSpaceIsLimited":{type:"boolean",default:Vi.useInlineViewWhenSpaceIsLimited,description:m("useInlineViewWhenSpaceIsLimited","If enabled and the editor width is too small, the inline view is used.")},"diffEditor.renderMarginRevertIcon":{type:"boolean",default:Vi.renderMarginRevertIcon,description:m("renderMarginRevertIcon","When enabled, the diff editor shows arrows in its glyph margin to revert changes.")},"diffEditor.renderGutterMenu":{type:"boolean",default:Vi.renderGutterMenu,description:m("renderGutterMenu","When enabled, the diff editor shows a special gutter for revert and stage actions.")},"diffEditor.ignoreTrimWhitespace":{type:"boolean",default:Vi.ignoreTrimWhitespace,description:m("ignoreTrimWhitespace","When enabled, the diff editor ignores changes in leading or trailing whitespace.")},"diffEditor.renderIndicators":{type:"boolean",default:Vi.renderIndicators,description:m("renderIndicators","Controls whether the diff editor shows +/- indicators for added/removed changes.")},"diffEditor.codeLens":{type:"boolean",default:Vi.diffCodeLens,description:m("codeLens","Controls whether the editor shows CodeLens.")},"diffEditor.wordWrap":{type:"string",enum:["off","on","inherit"],default:Vi.diffWordWrap,markdownEnumDescriptions:[m("wordWrap.off","Lines will never wrap."),m("wordWrap.on","Lines will wrap at the viewport width."),m("wordWrap.inherit","Lines will wrap according to the {0} setting.","`#editor.wordWrap#`")]},"diffEditor.diffAlgorithm":{type:"string",enum:["legacy","advanced"],default:Vi.diffAlgorithm,markdownEnumDescriptions:[m("diffAlgorithm.legacy","Uses the legacy diffing algorithm."),m("diffAlgorithm.advanced","Uses the advanced diffing algorithm.")],tags:["experimental"]},"diffEditor.hideUnchangedRegions.enabled":{type:"boolean",default:Vi.hideUnchangedRegions.enabled,markdownDescription:m("hideUnchangedRegions.enabled","Controls whether the diff editor shows unchanged regions.")},"diffEditor.hideUnchangedRegions.revealLineCount":{type:"integer",default:Vi.hideUnchangedRegions.revealLineCount,markdownDescription:m("hideUnchangedRegions.revealLineCount","Controls how many lines are used for unchanged regions."),minimum:1},"diffEditor.hideUnchangedRegions.minimumLineCount":{type:"integer",default:Vi.hideUnchangedRegions.minimumLineCount,markdownDescription:m("hideUnchangedRegions.minimumLineCount","Controls how many lines are used as a minimum for unchanged regions."),minimum:1},"diffEditor.hideUnchangedRegions.contextLineCount":{type:"integer",default:Vi.hideUnchangedRegions.contextLineCount,markdownDescription:m("hideUnchangedRegions.contextLineCount","Controls how many lines are used as context when comparing unchanged regions."),minimum:1},"diffEditor.experimental.showMoves":{type:"boolean",default:Vi.experimental.showMoves,markdownDescription:m("showMoves","Controls whether the diff editor should show detected code moves.")},"diffEditor.experimental.showEmptyDecorations":{type:"boolean",default:Vi.experimental.showEmptyDecorations,description:m("showEmptyDecorations","Controls whether the diff editor shows empty decorations to see where characters got inserted or deleted.")},"diffEditor.experimental.useTrueInlineView":{type:"boolean",default:Vi.experimental.useTrueInlineView,description:m("useTrueInlineView","If enabled and the editor uses the inline view, word changes are rendered inline.")}}};function jG(o){return typeof o.type<"u"||typeof o.anyOf<"u"}for(const o of Zu){const e=o.schema;if(typeof e<"u")if(jG(e))UC.properties[`editor.${o.name}`]=e;else for(const t in e)Object.hasOwnProperty.call(e,t)&&(UC.properties[t]=e[t])}let Bb=null;function C7(){return Bb===null&&(Bb=Object.create(null),Object.keys(UC.properties).forEach(o=>{Bb[o]=!0})),Bb}function qG(o){return C7()[`editor.${o}`]||!1}function GG(o){return C7()[`diffEditor.${o}`]||!1}const ZG=Bi.as(su.Configuration);ZG.registerConfiguration(UC);class aa{static insert(e,t){return{range:new I(e.lineNumber,e.column,e.lineNumber,e.column),text:t,forceMoveMarkers:!0}}static delete(e){return{range:e,text:null}}static replace(e,t){return{range:e,text:t}}static replaceMove(e,t){return{range:e,text:t,forceMoveMarkers:!0}}}function Wb(o){return Object.isFrozen(o)?o:c6(o)}class Pi{static createEmptyModel(e){return new Pi({},[],[],void 0,e)}constructor(e,t,i,n,s){this._contents=e,this._keys=t,this._overrides=i,this.raw=n,this.logService=s,this.overrideConfigurations=new Map}get rawConfiguration(){if(!this._rawConfiguration)if(this.raw?.length){const e=this.raw.map(t=>{if(t instanceof Pi)return t;const i=new YG("",this.logService);return i.parseRaw(t),i.configurationModel});this._rawConfiguration=e.reduce((t,i)=>i===t?i:t.merge(i),e[0])}else this._rawConfiguration=this;return this._rawConfiguration}get contents(){return this._contents}get overrides(){return this._overrides}get keys(){return this._keys}isEmpty(){return this._keys.length===0&&Object.keys(this._contents).length===0&&this._overrides.length===0}getValue(e){return e?DR(this.contents,e):this.contents}inspect(e,t){const i=this;return{get value(){return Wb(i.rawConfiguration.getValue(e))},get override(){return t?Wb(i.rawConfiguration.getOverrideValue(e,t)):void 0},get merged(){return Wb(t?i.rawConfiguration.override(t).getValue(e):i.rawConfiguration.getValue(e))},get overrides(){const n=[];for(const{contents:s,identifiers:r,keys:a}of i.rawConfiguration.overrides){const l=new Pi(s,a,[],void 0,i.logService).getValue(e);l!==void 0&&n.push({identifiers:r,value:l})}return n.length?Wb(n):void 0}}}getOverrideValue(e,t){const i=this.getContentsForOverrideIdentifer(t);return i?e?DR(i,e):i:void 0}override(e){let t=this.overrideConfigurations.get(e);return t||(t=this.createOverrideConfigurationModel(e),this.overrideConfigurations.set(e,t)),t}merge(...e){const t=Ya(this.contents),i=Ya(this.overrides),n=[...this.keys],s=this.raw?.length?[...this.raw]:[this];for(const r of e)if(s.push(...r.raw?.length?r.raw:[r]),!r.isEmpty()){this.mergeContents(t,r.contents);for(const a of r.overrides){const[l]=i.filter(c=>li(c.identifiers,a.identifiers));l?(this.mergeContents(l.contents,a.contents),l.keys.push(...a.keys),l.keys=Eh(l.keys)):i.push(Ya(a))}for(const a of r.keys)n.indexOf(a)===-1&&n.push(a)}return new Pi(t,n,i,s.every(r=>r instanceof Pi)?void 0:s,this.logService)}createOverrideConfigurationModel(e){const t=this.getContentsForOverrideIdentifer(e);if(!t||typeof t!="object"||!Object.keys(t).length)return this;const i={};for(const n of Eh([...Object.keys(this.contents),...Object.keys(t)])){let s=this.contents[n];const r=t[n];r&&(typeof s=="object"&&typeof r=="object"?(s=Ya(s),this.mergeContents(s,r)):s=r),i[n]=s}return new Pi(i,this.keys,this.overrides,void 0,this.logService)}mergeContents(e,t){for(const i of Object.keys(t)){if(i in e&&Oi(e[i])&&Oi(t[i])){this.mergeContents(e[i],t[i]);continue}e[i]=Ya(t[i])}}getContentsForOverrideIdentifer(e){let t=null,i=null;const n=s=>{s&&(i?this.mergeContents(i,s):i=Ya(s))};for(const s of this.overrides)s.identifiers.length===1&&s.identifiers[0]===e?t=s.contents:s.identifiers.includes(e)&&n(s.contents);return n(t),i}toJSON(){return{contents:this.contents,overrides:this.overrides,keys:this.keys}}setValue(e,t){this.updateValue(e,t,!1)}removeValue(e){const t=this.keys.indexOf(e);t!==-1&&(this.keys.splice(t,1),Qz(this.contents,e),Pc.test(e)&&this.overrides.splice(this.overrides.findIndex(i=>li(i.identifiers,wC(e))),1))}updateValue(e,t,i){if(t3(this.contents,e,t,n=>this.logService.error(n)),i=i||this.keys.indexOf(e)===-1,i&&this.keys.push(e),Pc.test(e)){const n=wC(e),s={identifiers:n,keys:Object.keys(this.contents[e]),contents:tk(this.contents[e],a=>this.logService.error(a))},r=this.overrides.findIndex(a=>li(a.identifiers,n));r!==-1?this.overrides[r]=s:this.overrides.push(s)}}}class YG{constructor(e,t){this._name=e,this.logService=t,this._raw=null,this._configurationModel=null,this._restrictedConfigurations=[]}get configurationModel(){return this._configurationModel||Pi.createEmptyModel(this.logService)}parseRaw(e,t){this._raw=e;const{contents:i,keys:n,overrides:s,restricted:r,hasExcludedProperties:a}=this.doParseRaw(e,t);this._configurationModel=new Pi(i,n,s,a?[e]:void 0,this.logService),this._restrictedConfigurations=r||[]}doParseRaw(e,t){const i=Bi.as(su.Configuration).getConfigurationProperties(),n=this.filter(e,i,!0,t);e=n.raw;const s=tk(e,l=>this.logService.error(`Conflict in settings file ${this._name}: ${l}`)),r=Object.keys(e),a=this.toOverrides(e,l=>this.logService.error(`Conflict in settings file ${this._name}: ${l}`));return{contents:s,keys:r,overrides:a,restricted:n.restricted,hasExcludedProperties:n.hasExcludedProperties}}filter(e,t,i,n){let s=!1;if(!n?.scopes&&!n?.skipRestricted&&!n?.exclude?.length)return{raw:e,restricted:[],hasExcludedProperties:s};const r={},a=[];for(const l in e)if(Pc.test(l)&&i){const c=this.filter(e[l],t,!1,n);r[l]=c.raw,s=s||c.hasExcludedProperties,a.push(...c.restricted)}else{const c=t[l],d=c?typeof c.scope<"u"?c.scope:3:void 0;c?.restricted&&a.push(l),!n.exclude?.includes(l)&&(n.include?.includes(l)||(d===void 0||n.scopes===void 0||n.scopes.includes(d))&&!(n.skipRestricted&&c?.restricted))?r[l]=e[l]:s=!0}return{raw:r,restricted:a,hasExcludedProperties:s}}toOverrides(e,t){const i=[];for(const n of Object.keys(e))if(Pc.test(n)){const s={};for(const r in e[n])s[r]=e[n][r];i.push({identifiers:wC(n),keys:Object.keys(s),contents:tk(s,t)})}return i}}class QG{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f){this.key=e,this.overrides=t,this._value=i,this.overrideIdentifiers=n,this.defaultConfiguration=s,this.policyConfiguration=r,this.applicationConfiguration=a,this.userConfiguration=l,this.localUserConfiguration=c,this.remoteUserConfiguration=d,this.workspaceConfiguration=h,this.folderConfigurationModel=u,this.memoryConfigurationModel=f}toInspectValue(e){return e?.value!==void 0||e?.override!==void 0||e?.overrides!==void 0?e:void 0}get userInspectValue(){return this._userInspectValue||(this._userInspectValue=this.userConfiguration.inspect(this.key,this.overrides.overrideIdentifier)),this._userInspectValue}get user(){return this.toInspectValue(this.userInspectValue)}}class ry{constructor(e,t,i,n,s,r,a,l,c,d){this._defaultConfiguration=e,this._policyConfiguration=t,this._applicationConfiguration=i,this._localUserConfiguration=n,this._remoteUserConfiguration=s,this._workspaceConfiguration=r,this._folderConfigurations=a,this._memoryConfiguration=l,this._memoryConfigurationByResource=c,this.logService=d,this._workspaceConsolidatedConfiguration=null,this._foldersConsolidatedConfigurations=new cs,this._userConfiguration=null}getValue(e,t,i){return this.getConsolidatedConfigurationModel(e,t,i).getValue(e)}updateValue(e,t,i={}){let n;i.resource?(n=this._memoryConfigurationByResource.get(i.resource),n||(n=Pi.createEmptyModel(this.logService),this._memoryConfigurationByResource.set(i.resource,n))):n=this._memoryConfiguration,t===void 0?n.removeValue(e):n.setValue(e,t),i.resource||(this._workspaceConsolidatedConfiguration=null)}inspect(e,t,i){const n=this.getConsolidatedConfigurationModel(e,t,i),s=this.getFolderConfigurationModelForResource(t.resource,i),r=t.resource?this._memoryConfigurationByResource.get(t.resource)||this._memoryConfiguration:this._memoryConfiguration,a=new Set;for(const l of n.overrides)for(const c of l.identifiers)n.getOverrideValue(e,c)!==void 0&&a.add(c);return new QG(e,t,n.getValue(e),a.size?[...a]:void 0,this._defaultConfiguration,this._policyConfiguration.isEmpty()?void 0:this._policyConfiguration,this.applicationConfiguration.isEmpty()?void 0:this.applicationConfiguration,this.userConfiguration,this.localUserConfiguration,this.remoteUserConfiguration,i?this._workspaceConfiguration:void 0,s||void 0,r)}get applicationConfiguration(){return this._applicationConfiguration}get userConfiguration(){return this._userConfiguration||(this._userConfiguration=this._remoteUserConfiguration.isEmpty()?this._localUserConfiguration:this._localUserConfiguration.merge(this._remoteUserConfiguration)),this._userConfiguration}get localUserConfiguration(){return this._localUserConfiguration}get remoteUserConfiguration(){return this._remoteUserConfiguration}getConsolidatedConfigurationModel(e,t,i){let n=this.getConsolidatedConfigurationModelForResource(t,i);return t.overrideIdentifier&&(n=n.override(t.overrideIdentifier)),!this._policyConfiguration.isEmpty()&&this._policyConfiguration.getValue(e)!==void 0&&(n=n.merge(this._policyConfiguration)),n}getConsolidatedConfigurationModelForResource({resource:e},t){let i=this.getWorkspaceConsolidatedConfiguration();if(t&&e){const n=t.getFolder(e);n&&(i=this.getFolderConsolidatedConfiguration(n.uri)||i);const s=this._memoryConfigurationByResource.get(e);s&&(i=i.merge(s))}return i}getWorkspaceConsolidatedConfiguration(){return this._workspaceConsolidatedConfiguration||(this._workspaceConsolidatedConfiguration=this._defaultConfiguration.merge(this.applicationConfiguration,this.userConfiguration,this._workspaceConfiguration,this._memoryConfiguration)),this._workspaceConsolidatedConfiguration}getFolderConsolidatedConfiguration(e){let t=this._foldersConsolidatedConfigurations.get(e);if(!t){const i=this.getWorkspaceConsolidatedConfiguration(),n=this._folderConfigurations.get(e);n?(t=i.merge(n),this._foldersConsolidatedConfigurations.set(e,t)):t=i}return t}getFolderConfigurationModelForResource(e,t){if(t&&e){const i=t.getFolder(e);if(i)return this._folderConfigurations.get(i.uri)}}toData(){return{defaults:{contents:this._defaultConfiguration.contents,overrides:this._defaultConfiguration.overrides,keys:this._defaultConfiguration.keys},policy:{contents:this._policyConfiguration.contents,overrides:this._policyConfiguration.overrides,keys:this._policyConfiguration.keys},application:{contents:this.applicationConfiguration.contents,overrides:this.applicationConfiguration.overrides,keys:this.applicationConfiguration.keys},user:{contents:this.userConfiguration.contents,overrides:this.userConfiguration.overrides,keys:this.userConfiguration.keys},workspace:{contents:this._workspaceConfiguration.contents,overrides:this._workspaceConfiguration.overrides,keys:this._workspaceConfiguration.keys},folders:[...this._folderConfigurations.keys()].reduce((e,t)=>{const{contents:i,overrides:n,keys:s}=this._folderConfigurations.get(t);return e.push([t,{contents:i,overrides:n,keys:s}]),e},[])}}static parse(e,t){const i=this.parseConfigurationModel(e.defaults,t),n=this.parseConfigurationModel(e.policy,t),s=this.parseConfigurationModel(e.application,t),r=this.parseConfigurationModel(e.user,t),a=this.parseConfigurationModel(e.workspace,t),l=e.folders.reduce((c,d)=>(c.set(ve.revive(d[0]),this.parseConfigurationModel(d[1],t)),c),new cs);return new ry(i,n,s,r,Pi.createEmptyModel(t),a,l,Pi.createEmptyModel(t),new cs,t)}static parseConfigurationModel(e,t){return new Pi(e.contents,e.keys,e.overrides,void 0,t)}}class XG{constructor(e,t,i,n,s){this.change=e,this.previous=t,this.currentConfiguraiton=i,this.currentWorkspace=n,this.logService=s,this._marker=` +`,this._markerCode1=this._marker.charCodeAt(0),this._markerCode2=46,this.affectedKeys=new Set,this._previousConfiguration=void 0;for(const r of e.keys)this.affectedKeys.add(r);for(const[,r]of e.overrides)for(const a of r)this.affectedKeys.add(a);this._affectsConfigStr=this._marker;for(const r of this.affectedKeys)this._affectsConfigStr+=r+this._marker}get previousConfiguration(){return!this._previousConfiguration&&this.previous&&(this._previousConfiguration=ry.parse(this.previous.data,this.logService)),this._previousConfiguration}affectsConfiguration(e,t){const i=this._marker+e,n=this._affectsConfigStr.indexOf(i);if(n<0)return!1;const s=n+i.length;if(s>=this._affectsConfigStr.length)return!1;const r=this._affectsConfigStr.charCodeAt(s);if(r!==this._markerCode1&&r!==this._markerCode2)return!1;if(t){const a=this.previousConfiguration?this.previousConfiguration.getValue(e,t,this.previous?.workspace):void 0,l=this.currentConfiguraiton.getValue(e,t,this.currentWorkspace);return!as(a,l)}return!0}}class JG{constructor(){this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._enabled=!0}get enabled(){return this._enabled}enable(){this._enabled=!0,this._onDidChange.fire()}disable(){this._enabled=!1,this._onDidChange.fire()}}const Qm=new JG,$C={kind:0},eZ={kind:1};function tZ(o,e,t){return{kind:2,commandId:o,commandArgs:e,isBubble:t}}class Xm{constructor(e,t,i){this._log=i,this._defaultKeybindings=e,this._defaultBoundCommands=new Map;for(const n of e){const s=n.command;s&&s.charAt(0)!=="-"&&this._defaultBoundCommands.set(s,!0)}this._map=new Map,this._lookupMap=new Map,this._keybindings=Xm.handleRemovals([].concat(e).concat(t));for(let n=0,s=this._keybindings.length;n"u"){this._map.set(e,[t]),this._addToLookupMap(t);return}for(let n=i.length-1;n>=0;n--){const s=i[n];if(s.command===t.command)continue;let r=!0;for(let a=1;a"u"?(t=[e],this._lookupMap.set(e.command,t)):t.push(e)}_removeFromLookupMap(e){if(!e.command)return;const t=this._lookupMap.get(e.command);if(!(typeof t>"u")){for(let i=0,n=t.length;i"u"||i.length===0)return null;if(i.length===1)return i[0];for(let n=i.length-1;n>=0;n--){const s=i[n];if(t.contextMatchesRules(s.when))return s}return i[i.length-1]}resolve(e,t,i){const n=[...t,i];this._log(`| Resolving ${n}`);const s=this._map.get(n[0]);if(s===void 0)return this._log("\\ No keybinding entries."),$C;let r=null;if(n.length<2)r=s;else{r=[];for(let l=0,c=s.length;ld.chords.length)continue;let h=!0;for(let u=1;u=0;i--){const n=t[i];if(Xm._contextMatchesRules(e,n.when))return n}return null}static _contextMatchesRules(e,t){return t?t.evaluate(e):!0}}function QA(o){return o?`${o.serialize()}`:"no when condition"}function XA(o){return o.extensionId?o.isBuiltinExtension?`built-in extension ${o.extensionId}`:`user extension ${o.extensionId}`:o.isDefault?"built-in":"user"}const iZ=/^(cursor|delete|undo|redo|tab|editor\.action\.clipboard)/;class nZ extends z{get onDidUpdateKeybindings(){return this._onDidUpdateKeybindings?this._onDidUpdateKeybindings.event:J.None}get inChordMode(){return this._currentChords.length>0}constructor(e,t,i,n,s){super(),this._contextKeyService=e,this._commandService=t,this._telemetryService=i,this._notificationService=n,this._logService=s,this._onDidUpdateKeybindings=this._register(new A),this._currentChords=[],this._currentChordChecker=new jN,this._currentChordStatusMessage=null,this._ignoreSingleModifiers=sf.EMPTY,this._currentSingleModifier=null,this._currentSingleModifierClearTimeout=new wr,this._currentlyDispatchingCommandId=null,this._logging=!1}dispose(){super.dispose()}_log(e){this._logging&&this._logService.info(`[KeybindingService]: ${e}`)}getKeybindings(){return this._getResolver().getKeybindings()}lookupKeybinding(e,t){const i=this._getResolver().lookupPrimaryKeybinding(e,t||this._contextKeyService);if(i)return i.resolvedKeybinding}dispatchEvent(e,t){return this._dispatch(e,t)}softDispatch(e,t){this._log("/ Soft dispatching keyboard event");const i=this.resolveKeyboardEvent(e);if(i.hasMultipleChords())return console.warn("keyboard event should not be mapped to multiple chords"),$C;const[n]=i.getDispatchChords();if(n===null)return this._log("\\ Keyboard event cannot be dispatched"),$C;const s=this._contextKeyService.getContext(t),r=this._currentChords.map((({keypress:a})=>a));return this._getResolver().resolve(s,r,n)}_scheduleLeaveChordMode(){const e=Date.now();this._currentChordChecker.cancelAndSet(()=>{if(!this._documentHasFocus()){this._leaveChordMode();return}Date.now()-e>5e3&&this._leaveChordMode()},500)}_expectAnotherChord(e,t){switch(this._currentChords.push({keypress:e,label:t}),this._currentChords.length){case 0:throw TN("impossible");case 1:this._currentChordStatusMessage=this._notificationService.status(m("first.chord","({0}) was pressed. Waiting for second key of chord...",t));break;default:{const i=this._currentChords.map(({label:n})=>n).join(", ");this._currentChordStatusMessage=this._notificationService.status(m("next.chord","({0}) was pressed. Waiting for next key of chord...",i))}}this._scheduleLeaveChordMode(),Qm.enabled&&Qm.disable()}_leaveChordMode(){this._currentChordStatusMessage&&(this._currentChordStatusMessage.dispose(),this._currentChordStatusMessage=null),this._currentChordChecker.cancel(),this._currentChords=[],Qm.enable()}_dispatch(e,t){return this._doDispatch(this.resolveKeyboardEvent(e),t,!1)}_singleModifierDispatch(e,t){const i=this.resolveKeyboardEvent(e),[n]=i.getSingleModifierDispatchChords();if(n)return this._ignoreSingleModifiers.has(n)?(this._log(`+ Ignoring single modifier ${n} due to it being pressed together with other keys.`),this._ignoreSingleModifiers=sf.EMPTY,this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1):(this._ignoreSingleModifiers=sf.EMPTY,this._currentSingleModifier===null?(this._log(`+ Storing single modifier for possible chord ${n}.`),this._currentSingleModifier=n,this._currentSingleModifierClearTimeout.cancelAndSet(()=>{this._log("+ Clearing single modifier due to 300ms elapsed."),this._currentSingleModifier=null},300),!1):n===this._currentSingleModifier?(this._log(`/ Dispatching single modifier chord ${n} ${n}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,this._doDispatch(i,t,!0)):(this._log(`+ Clearing single modifier due to modifier mismatch: ${this._currentSingleModifier} ${n}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1));const[s]=i.getChords();return this._ignoreSingleModifiers=new sf(s),this._currentSingleModifier!==null&&this._log("+ Clearing single modifier due to other key up."),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1}_doDispatch(e,t,i=!1){let n=!1;if(e.hasMultipleChords())return console.warn("Unexpected keyboard event mapped to multiple chords"),!1;let s=null,r=null;if(i){const[d]=e.getSingleModifierDispatchChords();s=d,r=d?[d]:[]}else[s]=e.getDispatchChords(),r=this._currentChords.map(({keypress:d})=>d);if(s===null)return this._log("\\ Keyboard event cannot be dispatched in keydown phase."),n;const a=this._contextKeyService.getContext(t),l=e.getLabel(),c=this._getResolver().resolve(a,r,s);switch(c.kind){case 0:{if(this._logService.trace("KeybindingService#dispatch",l,"[ No matching keybinding ]"),this.inChordMode){const d=this._currentChords.map(({label:h})=>h).join(", ");this._log(`+ Leaving multi-chord mode: Nothing bound to "${d}, ${l}".`),this._notificationService.status(m("missing.chord","The key combination ({0}, {1}) is not a command.",d,l),{hideAfter:10*1e3}),this._leaveChordMode(),n=!0}return n}case 1:return this._logService.trace("KeybindingService#dispatch",l,"[ Several keybindings match - more chords needed ]"),n=!0,this._expectAnotherChord(s,l),this._log(this._currentChords.length===1?"+ Entering multi-chord mode...":"+ Continuing multi-chord mode..."),n;case 2:{if(this._logService.trace("KeybindingService#dispatch",l,`[ Will dispatch command ${c.commandId} ]`),c.commandId===null||c.commandId===""){if(this.inChordMode){const d=this._currentChords.map(({label:h})=>h).join(", ");this._log(`+ Leaving chord mode: Nothing bound to "${d}, ${l}".`),this._notificationService.status(m("missing.chord","The key combination ({0}, {1}) is not a command.",d,l),{hideAfter:10*1e3}),this._leaveChordMode(),n=!0}}else{this.inChordMode&&this._leaveChordMode(),c.isBubble||(n=!0),this._log(`+ Invoking command ${c.commandId}.`),this._currentlyDispatchingCommandId=c.commandId;try{typeof c.commandArgs>"u"?this._commandService.executeCommand(c.commandId).then(void 0,d=>this._notificationService.warn(d)):this._commandService.executeCommand(c.commandId,c.commandArgs).then(void 0,d=>this._notificationService.warn(d))}finally{this._currentlyDispatchingCommandId=null}iZ.test(c.commandId)||this._telemetryService.publicLog2("workbenchActionExecuted",{id:c.commandId,from:"keybinding",detail:e.getUserSettingsLabel()??void 0})}return n}}}mightProducePrintableCharacter(e){return e.ctrlKey||e.metaKey?!1:e.keyCode>=31&&e.keyCode<=56||e.keyCode>=21&&e.keyCode<=30}}const Mw=class Mw{constructor(e){this._ctrlKey=e?e.ctrlKey:!1,this._shiftKey=e?e.shiftKey:!1,this._altKey=e?e.altKey:!1,this._metaKey=e?e.metaKey:!1}has(e){switch(e){case"ctrl":return this._ctrlKey;case"shift":return this._shiftKey;case"alt":return this._altKey;case"meta":return this._metaKey}}};Mw.EMPTY=new Mw(null);let sf=Mw;class JA{constructor(e,t,i,n,s,r,a){this._resolvedKeybindingItemBrand=void 0,this.resolvedKeybinding=e,this.chords=e?Kk(e.getDispatchChords()):[],e&&this.chords.length===0&&(this.chords=Kk(e.getSingleModifierDispatchChords())),this.bubble=t?t.charCodeAt(0)===94:!1,this.command=this.bubble?t.substr(1):t,this.commandArgs=i,this.when=n,this.isDefault=s,this.extensionId=r,this.isBuiltinExtension=a}}function Kk(o){const e=[];for(let t=0,i=o.length;tthis._getLabel(e))}getAriaLabel(){return sZ.toLabel(this._os,this._chords,e=>this._getAriaLabel(e))}getElectronAccelerator(){return this._chords.length>1||this._chords[0].isDuplicateModifierCase()?null:oZ.toLabel(this._os,this._chords,e=>this._getElectronAccelerator(e))}getUserSettingsLabel(){return rZ.toLabel(this._os,this._chords,e=>this._getUserSettingsLabel(e))}hasMultipleChords(){return this._chords.length>1}getChords(){return this._chords.map(e=>this._getChord(e))}_getChord(e){return new yH(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,this._getLabel(e),this._getAriaLabel(e))}getDispatchChords(){return this._chords.map(e=>this._getChordDispatch(e))}getSingleModifierDispatchChords(){return this._chords.map(e=>this._getSingleModifierChordDispatch(e))}}class l_ extends lZ{constructor(e,t){super(t,e)}_keyCodeToUILabel(e){if(this._os===2)switch(e){case 15:return"←";case 16:return"↑";case 17:return"→";case 18:return"↓"}return el.toString(e)}_getLabel(e){return e.isDuplicateModifierCase()?"":this._keyCodeToUILabel(e.keyCode)}_getAriaLabel(e){return e.isDuplicateModifierCase()?"":el.toString(e.keyCode)}_getElectronAccelerator(e){return el.toElectronAccelerator(e.keyCode)}_getUserSettingsLabel(e){if(e.isDuplicateModifierCase())return"";const t=el.toUserSettingsUS(e.keyCode);return t&&t.toLowerCase()}_getChordDispatch(e){return l_.getDispatchStr(e)}static getDispatchStr(e){if(e.isModifierKey())return null;let t="";return e.ctrlKey&&(t+="ctrl+"),e.shiftKey&&(t+="shift+"),e.altKey&&(t+="alt+"),e.metaKey&&(t+="meta+"),t+=el.toString(e.keyCode),t}_getSingleModifierChordDispatch(e){return e.keyCode===5&&!e.shiftKey&&!e.altKey&&!e.metaKey?"ctrl":e.keyCode===4&&!e.ctrlKey&&!e.altKey&&!e.metaKey?"shift":e.keyCode===6&&!e.ctrlKey&&!e.shiftKey&&!e.metaKey?"alt":e.keyCode===57&&!e.ctrlKey&&!e.shiftKey&&!e.altKey?"meta":null}static _scanCodeToKeyCode(e){const t=ON[e];if(t!==-1)return t;switch(e){case 10:return 31;case 11:return 32;case 12:return 33;case 13:return 34;case 14:return 35;case 15:return 36;case 16:return 37;case 17:return 38;case 18:return 39;case 19:return 40;case 20:return 41;case 21:return 42;case 22:return 43;case 23:return 44;case 24:return 45;case 25:return 46;case 26:return 47;case 27:return 48;case 28:return 49;case 29:return 50;case 30:return 51;case 31:return 52;case 32:return 53;case 33:return 54;case 34:return 55;case 35:return 56;case 36:return 22;case 37:return 23;case 38:return 24;case 39:return 25;case 40:return 26;case 41:return 27;case 42:return 28;case 43:return 29;case 44:return 30;case 45:return 21;case 51:return 88;case 52:return 86;case 53:return 92;case 54:return 94;case 55:return 93;case 56:return 0;case 57:return 85;case 58:return 95;case 59:return 91;case 60:return 87;case 61:return 89;case 62:return 90;case 106:return 97}return 0}static _toKeyCodeChord(e){if(!e)return null;if(e instanceof kl)return e;const t=this._scanCodeToKeyCode(e.scanCode);return t===0?null:new kl(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,t)}static resolveKeybinding(e,t){const i=Kk(e.chords.map(n=>this._toKeyCodeChord(n)));return i.length>0?[new l_(i,t)]:[]}}const Cg=He("labelService"),cZ=He("progressService"),EM=class EM{constructor(e){this.callback=e}report(e){this._value=e,this.callback(this._value)}};EM.None=Object.freeze({report(){}});let rc=EM;const G_=He("editorProgressService");class dZ{constructor(){this._value="",this._pos=0}reset(e){return this._value=e,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos=0;t--,this._valueLen--){const i=this._value.charCodeAt(t);if(!(i===47||this._splitOnBackslash&&i===92))break}return this.next()}hasNext(){return this._to!1,t=()=>!1){return new Bf(new fZ(e,t))}static forStrings(){return new Bf(new dZ)}static forConfigKeys(){return new Bf(new hZ)}constructor(e){this._iter=e}clear(){this._root=void 0}set(e,t){const i=this._iter.reset(e);let n;this._root||(this._root=new Hb,this._root.segment=i.value());const s=[];for(n=this._root;;){const a=i.cmp(n.segment);if(a>0)n.left||(n.left=new Hb,n.left.segment=i.value()),s.push([-1,n]),n=n.left;else if(a<0)n.right||(n.right=new Hb,n.right.segment=i.value()),s.push([1,n]),n=n.right;else if(i.hasNext())i.next(),n.mid||(n.mid=new Hb,n.mid.segment=i.value()),s.push([0,n]),n=n.mid;else break}const r=n.value;n.value=t,n.key=e;for(let a=s.length-1;a>=0;a--){const l=s[a][1];l.updateHeight();const c=l.balanceFactor();if(c<-1||c>1){const d=s[a][0],h=s[a+1][0];if(d===1&&h===1)s[a][1]=l.rotateLeft();else if(d===-1&&h===-1)s[a][1]=l.rotateRight();else if(d===1&&h===-1)l.right=s[a+1][1]=s[a+1][1].rotateRight(),s[a][1]=l.rotateLeft();else if(d===-1&&h===1)l.left=s[a+1][1]=s[a+1][1].rotateLeft(),s[a][1]=l.rotateRight();else throw new Error;if(a>0)switch(s[a-1][0]){case-1:s[a-1][1].left=s[a][1];break;case 1:s[a-1][1].right=s[a][1];break;case 0:s[a-1][1].mid=s[a][1];break}else this._root=s[0][1]}}return r}get(e){return this._getNode(e)?.value}_getNode(e){const t=this._iter.reset(e);let i=this._root;for(;i;){const n=t.cmp(i.segment);if(n>0)i=i.left;else if(n<0)i=i.right;else if(t.hasNext())t.next(),i=i.mid;else break}return i}has(e){const t=this._getNode(e);return!(t?.value===void 0&&t?.mid===void 0)}delete(e){return this._delete(e,!1)}deleteSuperstr(e){return this._delete(e,!0)}_delete(e,t){const i=this._iter.reset(e),n=[];let s=this._root;for(;s;){const r=i.cmp(s.segment);if(r>0)n.push([-1,s]),s=s.left;else if(r<0)n.push([1,s]),s=s.right;else if(i.hasNext())i.next(),n.push([0,s]),s=s.mid;else break}if(s){if(t?(s.left=void 0,s.mid=void 0,s.right=void 0,s.height=1):(s.key=void 0,s.value=void 0),!s.mid&&!s.value)if(s.left&&s.right){const r=this._min(s.right);if(r.key){const{key:a,value:l,segment:c}=r;this._delete(r.key,!1),s.key=a,s.value=l,s.segment=c}}else{const r=s.left??s.right;if(n.length>0){const[a,l]=n[n.length-1];switch(a){case-1:l.left=r;break;case 0:l.mid=r;break;case 1:l.right=r;break}}else this._root=r}for(let r=n.length-1;r>=0;r--){const a=n[r][1];a.updateHeight();const l=a.balanceFactor();if(l>1?(a.right.balanceFactor()>=0||(a.right=a.right.rotateRight()),n[r][1]=a.rotateLeft()):l<-1&&(a.left.balanceFactor()<=0||(a.left=a.left.rotateLeft()),n[r][1]=a.rotateRight()),r>0)switch(n[r-1][0]){case-1:n[r-1][1].left=n[r][1];break;case 1:n[r-1][1].right=n[r][1];break;case 0:n[r-1][1].mid=n[r][1];break}else this._root=n[0][1]}}}_min(e){for(;e.left;)e=e.left;return e}findSubstr(e){const t=this._iter.reset(e);let i=this._root,n;for(;i;){const s=t.cmp(i.segment);if(s>0)i=i.left;else if(s<0)i=i.right;else if(t.hasNext())t.next(),n=i.value||n,i=i.mid;else break}return i&&i.value||n}findSuperstr(e){return this._findSuperstrOrElement(e,!1)}_findSuperstrOrElement(e,t){const i=this._iter.reset(e);let n=this._root;for(;n;){const s=i.cmp(n.segment);if(s>0)n=n.left;else if(s<0)n=n.right;else if(i.hasNext())i.next(),n=n.mid;else return n.mid?this._entries(n.mid):t?n.value:void 0}}forEach(e){for(const[t,i]of this)e(i,t)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(e){const t=[];return this._dfsEntries(e,t),t[Symbol.iterator]()}_dfsEntries(e,t){e&&(e.left&&this._dfsEntries(e.left,t),e.value&&t.push([e.key,e.value]),e.mid&&this._dfsEntries(e.mid,t),e.right&&this._dfsEntries(e.right,t))}}const jk=He("contextService");function qk(o){const e=o;return typeof e?.id=="string"&&ve.isUri(e.uri)}function gZ(o){return typeof o?.id=="string"&&!qk(o)&&!_Z(o)}const mZ={id:"empty-window"};function pZ(o,e){if(typeof o=="string"||typeof o>"u")return typeof o=="string"?{id:uc(o)}:mZ;const t=o;return t.configuration?{id:t.id,configPath:t.configuration}:t.folders.length===1?{id:t.id,uri:t.folders[0].uri}:{id:t.id}}function _Z(o){const e=o;return typeof e?.id=="string"&&ve.isUri(e.configPath)}class bZ{constructor(e,t){this.raw=t,this.uri=e.uri,this.index=e.index,this.name=e.name}toJSON(){return{uri:this.uri,name:this.name,index:this.index}}}const Gk="code-workspace";m("codeWorkspace","Code Workspace");const CZ="4064f6ec-cb38-4ad0-af64-ee6467e63c82";var eP;(function(o){o.inspectTokensAction=m("inspectTokens","Developer: Inspect Tokens")})(eP||(eP={}));var tP;(function(o){o.gotoLineActionLabel=m("gotoLineActionLabel","Go to Line/Column...")})(tP||(tP={}));var iP;(function(o){o.helpQuickAccessActionLabel=m("helpQuickAccess","Show all Quick Access Providers")})(iP||(iP={}));var nP;(function(o){o.quickCommandActionLabel=m("quickCommandActionLabel","Command Palette"),o.quickCommandHelp=m("quickCommandActionHelp","Show And Run Commands")})(nP||(nP={}));var sP;(function(o){o.quickOutlineActionLabel=m("quickOutlineActionLabel","Go to Symbol..."),o.quickOutlineByCategoryActionLabel=m("quickOutlineByCategoryActionLabel","Go to Symbol by Category...")})(sP||(sP={}));var Zk;(function(o){o.editorViewAccessibleLabel=m("editorViewAccessibleLabel","Editor content")})(Zk||(Zk={}));var oP;(function(o){o.toggleHighContrast=m("toggleHighContrast","Toggle High Contrast Theme")})(oP||(oP={}));var Yk;(function(o){o.bulkEditServiceSummary=m("bulkEditServiceSummary","Made {0} edits in {1} files")})(Yk||(Yk={}));const vZ=He("workspaceTrustManagementService");let vg=[],jT=[],v7=[];function Vb(o,e=!1){wZ(o,!1,e)}function wZ(o,e,t){const i=yZ(o,e);vg.push(i),i.userConfigured?v7.push(i):jT.push(i),t&&!i.userConfigured&&vg.forEach(n=>{n.mime===i.mime||n.userConfigured||(i.extension&&n.extension===i.extension&&console.warn(`Overwriting extension <<${i.extension}>> to now point to mime <<${i.mime}>>`),i.filename&&n.filename===i.filename&&console.warn(`Overwriting filename <<${i.filename}>> to now point to mime <<${i.mime}>>`),i.filepattern&&n.filepattern===i.filepattern&&console.warn(`Overwriting filepattern <<${i.filepattern}>> to now point to mime <<${i.mime}>>`),i.firstline&&n.firstline===i.firstline&&console.warn(`Overwriting firstline <<${i.firstline}>> to now point to mime <<${i.mime}>>`))})}function yZ(o,e){return{id:o.id,mime:o.mime,filename:o.filename,extension:o.extension,filepattern:o.filepattern,firstline:o.firstline,userConfigured:e,filenameLowercase:o.filename?o.filename.toLowerCase():void 0,extensionLowercase:o.extension?o.extension.toLowerCase():void 0,filepatternLowercase:o.filepattern?N3(o.filepattern.toLowerCase()):void 0,filepatternOnPath:o.filepattern?o.filepattern.indexOf(oi.sep)>=0:!1}}function SZ(){vg=vg.filter(o=>o.userConfigured),jT=[]}function LZ(o,e){return xZ(o,e).map(t=>t.id)}function xZ(o,e){let t;if(o)switch(o.scheme){case Te.file:t=o.fsPath;break;case Te.data:{t=Oc.parseMetaData(o).get(Oc.META_DATA_LABEL);break}case Te.vscodeNotebookCell:t=void 0;break;default:t=o.path}if(!t)return[{id:"unknown",mime:il.unknown}];t=t.toLowerCase();const i=uc(t),n=rP(t,i,v7);if(n)return[n,{id:Bs,mime:il.text}];const s=rP(t,i,jT);if(s)return[s,{id:Bs,mime:il.text}];if(e){const r=kZ(e);if(r)return[r,{id:Bs,mime:il.text}]}return[{id:"unknown",mime:il.unknown}]}function rP(o,e,t){let i,n,s;for(let r=t.length-1;r>=0;r--){const a=t[r];if(e===a.filenameLowercase){i=a;break}if(a.filepattern&&(!n||a.filepattern.length>n.filepattern.length)){const l=a.filepatternOnPath?o:e;a.filepatternLowercase?.(l)&&(n=a)}a.extension&&(!s||a.extension.length>s.extension.length)&&e.endsWith(a.extensionLowercase)&&(s=a)}if(i)return i;if(n)return n;if(s)return s}function kZ(o){if($N(o)&&(o=o.substr(1)),o.length>0)for(let e=vg.length-1;e>=0;e--){const t=vg[e];if(!t.firstline)continue;const i=o.match(t.firstline);if(i&&i.length>0)return t}}const zb=Object.prototype.hasOwnProperty,aP="vs.editor.nullLanguage";class DZ{constructor(){this._languageIdToLanguage=[],this._languageToLanguageId=new Map,this._register(aP,0),this._register(Bs,1),this._nextLanguageId=2}_register(e,t){this._languageIdToLanguage[t]=e,this._languageToLanguageId.set(e,t)}register(e){if(this._languageToLanguageId.has(e))return;const t=this._nextLanguageId++;this._register(e,t)}encodeLanguageId(e){return this._languageToLanguageId.get(e)||0}decodeLanguageId(e){return this._languageIdToLanguage[e]||aP}}const Ep=class Ep extends z{constructor(e=!0,t=!1){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,Ep.instanceCount++,this._warnOnOverwrite=t,this.languageIdCodec=new DZ,this._dynamicLanguages=[],this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},e&&(this._initializeFromRegistry(),this._register(lg.onDidChangeLanguages(i=>{this._initializeFromRegistry()})))}dispose(){Ep.instanceCount--,super.dispose()}_initializeFromRegistry(){this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},SZ();const e=[].concat(lg.getLanguages()).concat(this._dynamicLanguages);this._registerLanguages(e)}_registerLanguages(e){for(const t of e)this._registerLanguage(t);this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Object.keys(this._languages).forEach(t=>{const i=this._languages[t];i.name&&(this._nameMap[i.name]=i.identifier),i.aliases.forEach(n=>{this._lowercaseNameMap[n.toLowerCase()]=i.identifier}),i.mimetypes.forEach(n=>{this._mimeTypesMap[n]=i.identifier})}),Bi.as(su.Configuration).registerOverrideIdentifiers(this.getRegisteredLanguageIds()),this._onDidChange.fire()}_registerLanguage(e){const t=e.id;let i;zb.call(this._languages,t)?i=this._languages[t]:(this.languageIdCodec.register(t),i={identifier:t,name:null,mimetypes:[],aliases:[],extensions:[],filenames:[],configurationFiles:[],icons:[]},this._languages[t]=i),this._mergeLanguage(i,e)}_mergeLanguage(e,t){const i=t.id;let n=null;if(Array.isArray(t.mimetypes)&&t.mimetypes.length>0&&(e.mimetypes.push(...t.mimetypes),n=t.mimetypes[0]),n||(n=`text/x-${i}`,e.mimetypes.push(n)),Array.isArray(t.extensions)){t.configuration?e.extensions=t.extensions.concat(e.extensions):e.extensions=e.extensions.concat(t.extensions);for(const a of t.extensions)Vb({id:i,mime:n,extension:a},this._warnOnOverwrite)}if(Array.isArray(t.filenames))for(const a of t.filenames)Vb({id:i,mime:n,filename:a},this._warnOnOverwrite),e.filenames.push(a);if(Array.isArray(t.filenamePatterns))for(const a of t.filenamePatterns)Vb({id:i,mime:n,filepattern:a},this._warnOnOverwrite);if(typeof t.firstLine=="string"&&t.firstLine.length>0){let a=t.firstLine;a.charAt(0)!=="^"&&(a="^"+a);try{const l=new RegExp(a);cH(l)||Vb({id:i,mime:n,firstline:l},this._warnOnOverwrite)}catch(l){console.warn(`[${t.id}]: Invalid regular expression \`${a}\`: `,l)}}e.aliases.push(i);let s=null;if(typeof t.aliases<"u"&&Array.isArray(t.aliases)&&(t.aliases.length===0?s=[null]:s=t.aliases),s!==null)for(const a of s)!a||a.length===0||e.aliases.push(a);const r=s!==null&&s.length>0;if(!(r&&s[0]===null)){const a=(r?s[0]:null)||i;(r||!e.name)&&(e.name=a)}t.configuration&&e.configurationFiles.push(t.configuration),t.icon&&e.icons.push(t.icon)}isRegisteredLanguageId(e){return e?zb.call(this._languages,e):!1}getRegisteredLanguageIds(){return Object.keys(this._languages)}getLanguageIdByLanguageName(e){const t=e.toLowerCase();return zb.call(this._lowercaseNameMap,t)?this._lowercaseNameMap[t]:null}getLanguageIdByMimeType(e){return e&&zb.call(this._mimeTypesMap,e)?this._mimeTypesMap[e]:null}guessLanguageIdByFilepathOrFirstLine(e,t){return!e&&!t?[]:LZ(e,t)}};Ep.instanceCount=0;let Qk=Ep;const ho=(o,e)=>o===e;function Xk(o=ho){return(e,t)=>li(e,t,o)}function IZ(){return(o,e)=>o.equals(e)}function Jk(o,e,t){if(t!==void 0){const i=o;return i==null||e===void 0||e===null?e===i:t(i,e)}else{const i=o;return(n,s)=>n==null||s===void 0||s===null?s===n:i(n,s)}}class gn{constructor(e,t,i){this.owner=e,this.debugNameSource=t,this.referenceFn=i}getDebugName(e){return EZ(e,this)}}const lP=new Map,eD=new WeakMap;function EZ(o,e){const t=eD.get(o);if(t)return t;const i=NZ(o,e);if(i){let n=lP.get(i)??0;n++,lP.set(i,n);const s=n===1?i:`${i}#${n}`;return eD.set(o,s),s}}function NZ(o,e){const t=eD.get(o);if(t)return t;const i=e.owner?MZ(e.owner)+".":"";let n;const s=e.debugNameSource;if(s!==void 0)if(typeof s=="function"){if(n=s(),n!==void 0)return i+n}else return i+s;const r=e.referenceFn;if(r!==void 0&&(n=qT(r),n!==void 0))return i+n;if(e.owner!==void 0){const a=TZ(e.owner,o);if(a!==void 0)return i+a}}function TZ(o,e){for(const t in o)if(o[t]===e)return t}const cP=new Map,dP=new WeakMap;function MZ(o){const e=dP.get(o);if(e)return e;const t=RZ(o);let i=cP.get(t)??0;i++,cP.set(t,i);const n=i===1?t:`${t}#${i}`;return dP.set(o,n),n}function RZ(o){const e=o.constructor;return e?e.name:"Object"}function qT(o){const e=o.toString(),i=/\/\*\*\s*@description\s*([^*]*)\*\//.exec(e);return(i?i[1]:void 0)?.trim()}let AZ;function w7(){return AZ}let y7;function PZ(o){y7=o}let S7;function OZ(o){S7=o}let tD;function FZ(o){tD=o}class L7{get TChange(){return null}reportChanges(){this.get()}read(e){return e?e.readObservable(this):this.get()}map(e,t){const i=t===void 0?void 0:e,n=t===void 0?e:t;return tD({owner:i,debugName:()=>{const s=qT(n);if(s!==void 0)return s;const a=/^\s*\(?\s*([a-zA-Z_$][a-zA-Z_$0-9]*)\s*\)?\s*=>\s*\1(?:\??)\.([a-zA-Z_$][a-zA-Z_$0-9]*)\s*$/.exec(n.toString());if(a)return`${this.debugName}.${a[2]}`;if(!i)return`${this.debugName} (mapped)`},debugReferenceFn:n},s=>n(this.read(s),s))}flatten(){return tD({owner:void 0,debugName:()=>`${this.debugName} (flattened)`},e=>this.read(e).read(e))}recomputeInitiallyAndOnChange(e,t){return e.add(y7(this,t)),this}keepObserved(e){return e.add(S7(this)),this}}class zg extends L7{constructor(){super(...arguments),this.observers=new Set}addObserver(e){const t=this.observers.size;this.observers.add(e),t===0&&this.onFirstObserverAdded()}removeObserver(e){this.observers.delete(e)&&this.observers.size===0&&this.onLastObserverRemoved()}onFirstObserverAdded(){}onLastObserverRemoved(){}}function Xt(o,e){const t=new Ug(o,e);try{o(t)}finally{t.finish()}}let Ub;function Mm(o){if(Ub)o(Ub);else{const e=new Ug(o,void 0);Ub=e;try{o(e)}finally{e.finish(),Ub=void 0}}}async function BZ(o,e){const t=new Ug(o,e);try{await o(t)}finally{t.finish()}}function c_(o,e,t){o?e(o):Xt(e,t)}class Ug{constructor(e,t){this._fn=e,this._getDebugName=t,this.updatingObservers=[]}getDebugName(){return this._getDebugName?this._getDebugName():qT(this._fn)}updateObserver(e,t){this.updatingObservers.push({observer:e,observable:t}),e.beginUpdate(t)}finish(){const e=this.updatingObservers;for(let t=0;t{},()=>`Setting ${this.debugName}`));try{const s=this._value;this._setValue(e),w7()?.handleObservableChanged(this,{oldValue:s,newValue:e,change:i,didChange:!0,hadValue:!0});for(const r of this.observers)t.updateObserver(r,this),r.handleChange(this,i)}finally{n&&n.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}function KC(o,e){let t;return typeof o=="string"?t=new gn(void 0,o,void 0):t=new gn(o,void 0,void 0),new WZ(t,e,ho)}class WZ extends GT{_setValue(e){this._value!==e&&(this._value&&this._value.dispose(),this._value=e)}dispose(){this._value?.dispose()}}function Ce(o,e){return e!==void 0?new Vh(new gn(o,void 0,e),e,void 0,void 0,void 0,ho):new Vh(new gn(void 0,void 0,o),o,void 0,void 0,void 0,ho)}function ZT(o,e,t){return new VZ(new gn(o,void 0,e),e,void 0,void 0,void 0,ho,t)}function dr(o,e){return new Vh(new gn(o.owner,o.debugName,o.debugReferenceFn),e,void 0,void 0,o.onLastObserverRemoved,o.equalsFn??ho)}FZ(dr);function HZ(o,e){return new Vh(new gn(o.owner,o.debugName,void 0),e,o.createEmptyChangeSummary,o.handleChange,void 0,o.equalityComparer??ho)}function cu(o,e){let t,i;e===void 0?(t=o,i=void 0):(i=o,t=e);const n=new X;return new Vh(new gn(i,void 0,t),s=>(n.clear(),t(s,n)),void 0,void 0,()=>n.dispose(),ho)}function tr(o,e){let t,i;e===void 0?(t=o,i=void 0):(i=o,t=e);let n;return new Vh(new gn(i,void 0,t),s=>{n?n.clear():n=new X;const r=t(s);return r&&n.add(r),r},void 0,void 0,()=>{n&&(n.dispose(),n=void 0)},ho)}class Vh extends zg{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,n,s=void 0,r){super(),this._debugNameData=e,this._computeFn=t,this.createChangeSummary=i,this._handleChange=n,this._handleLastObserverRemoved=s,this._equalityComparator=r,this.state=0,this.value=void 0,this.updateCount=0,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=void 0,this.changeSummary=this.createChangeSummary?.()}onLastObserverRemoved(){this.state=0,this.value=void 0;for(const e of this.dependencies)e.removeObserver(this);this.dependencies.clear(),this._handleLastObserverRemoved?.()}get(){if(this.observers.size===0){const e=this._computeFn(this,this.createChangeSummary?.());return this.onLastObserverRemoved(),e}else{do{if(this.state===1){for(const e of this.dependencies)if(e.reportChanges(),this.state===2)break}this.state===1&&(this.state=3),this._recomputeIfNeeded()}while(this.state!==3);return this.value}}_recomputeIfNeeded(){if(this.state===3)return;const e=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=e;const t=this.state!==0,i=this.value;this.state=3;const n=this.changeSummary;this.changeSummary=this.createChangeSummary?.();try{this.value=this._computeFn(this,n)}finally{for(const r of this.dependenciesToBeRemoved)r.removeObserver(this);this.dependenciesToBeRemoved.clear()}if(t&&!this._equalityComparator(i,this.value))for(const r of this.observers)r.handleChange(this,void 0)}toString(){return`LazyDerived<${this.debugName}>`}beginUpdate(e){this.updateCount++;const t=this.updateCount===1;if(this.state===3&&(this.state=1,!t))for(const i of this.observers)i.handlePossibleChange(this);if(t)for(const i of this.observers)i.beginUpdate(this)}endUpdate(e){if(this.updateCount--,this.updateCount===0){const t=[...this.observers];for(const i of t)i.endUpdate(this)}Fh(()=>this.updateCount>=0)}handlePossibleChange(e){if(this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){this.state=1;for(const t of this.observers)t.handlePossibleChange(this)}}handleChange(e,t){if(this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){const i=this._handleChange?this._handleChange({changedObservable:e,change:t,didChange:s=>s===e},this.changeSummary):!0,n=this.state===3;if(i&&(this.state===1||n)&&(this.state=2,n))for(const s of this.observers)s.handlePossibleChange(this)}}readObservable(e){e.addObserver(this);const t=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),t}addObserver(e){const t=!this.observers.has(e)&&this.updateCount>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){const t=this.observers.has(e)&&this.updateCount>0;super.removeObserver(e),t&&e.endUpdate(this)}}class VZ extends Vh{constructor(e,t,i,n,s=void 0,r,a){super(e,t,i,n,s,r),this.set=a}}function We(o){return new ly(new gn(void 0,void 0,o),o,void 0,void 0)}function Z_(o,e){return new ly(new gn(o.owner,o.debugName,o.debugReferenceFn??e),e,void 0,void 0)}function Y_(o,e){return new ly(new gn(o.owner,o.debugName,o.debugReferenceFn??e),e,o.createEmptyChangeSummary,o.handleChange)}function zZ(o,e){const t=new X,i=Y_({owner:o.owner,debugName:o.debugName,debugReferenceFn:o.debugReferenceFn??e,createEmptyChangeSummary:o.createEmptyChangeSummary,handleChange:o.handleChange},(n,s)=>{t.clear(),e(n,s,t)});return _e(()=>{i.dispose(),t.dispose()})}function To(o){const e=new X,t=Z_({owner:void 0,debugName:void 0,debugReferenceFn:o},i=>{e.clear(),o(i,e)});return _e(()=>{t.dispose(),e.dispose()})}class ly{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,n){this._debugNameData=e,this._runFn=t,this.createChangeSummary=i,this._handleChange=n,this.state=2,this.updateCount=0,this.disposed=!1,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=this.createChangeSummary?.(),this._runIfNeeded()}dispose(){this.disposed=!0;for(const e of this.dependencies)e.removeObserver(this);this.dependencies.clear()}_runIfNeeded(){if(this.state===3)return;const e=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=e,this.state=3;const t=this.disposed;try{if(!t){w7()?.handleAutorunTriggered(this);const i=this.changeSummary;this.changeSummary=this.createChangeSummary?.(),this._runFn(this,i)}}finally{for(const i of this.dependenciesToBeRemoved)i.removeObserver(this);this.dependenciesToBeRemoved.clear()}}toString(){return`Autorun<${this.debugName}>`}beginUpdate(){this.state===3&&(this.state=1),this.updateCount++}endUpdate(){if(this.updateCount===1)do{if(this.state===1){this.state=3;for(const e of this.dependencies)if(e.reportChanges(),this.state===2)break}this._runIfNeeded()}while(this.state!==3);this.updateCount--,Fh(()=>this.updateCount>=0)}handlePossibleChange(e){this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(this.state=1)}handleChange(e,t){this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(!this._handleChange||this._handleChange({changedObservable:e,change:t,didChange:n=>n===e},this.changeSummary))&&(this.state=2)}readObservable(e){if(this.disposed)return e.get();e.addObserver(this);const t=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),t}}(function(o){o.Observer=ly})(We||(We={}));function wg(o){return new UZ(o)}class UZ extends L7{constructor(e){super(),this.value=e}get debugName(){return this.toString()}get(){return this.value}addObserver(e){}removeObserver(e){}toString(){return`Const: ${this.value}`}}function gt(...o){let e,t,i;return o.length===3?[e,t,i]=o:[t,i]=o,new of(new gn(e,void 0,i),t,i,()=>of.globalTransaction,ho)}class of extends zg{constructor(e,t,i,n,s){super(),this._debugNameData=e,this.event=t,this._getValue=i,this._getTransaction=n,this._equalityComparator=s,this.hasValue=!1,this.handleEvent=r=>{const a=this._getValue(r),l=this.value;(!this.hasValue||!this._equalityComparator(l,a))&&(this.value=a,this.hasValue&&c_(this._getTransaction(),d=>{for(const h of this.observers)d.updateObserver(h,this),h.handleChange(this,void 0)},()=>{const d=this.getDebugName();return"Event fired"+(d?`: ${d}`:"")}),this.hasValue=!0)}}getDebugName(){return this._debugNameData.getDebugName(this)}get debugName(){const e=this.getDebugName();return"From Event"+(e?`: ${e}`:"")}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0,this.hasValue=!1,this.value=void 0}get(){return this.subscription?(this.hasValue||this.handleEvent(void 0),this.value):this._getValue(void 0)}}(function(o){o.Observer=of;function e(t,i){let n=!1;of.globalTransaction===void 0&&(of.globalTransaction=t,n=!0);try{i()}finally{n&&(of.globalTransaction=void 0)}}o.batchEventsGlobally=e})(gt||(gt={}));function ks(o,e){return new $Z(o,e)}class $Z extends zg{constructor(e,t){super(),this.debugName=e,this.event=t,this.handleEvent=()=>{Xt(i=>{for(const n of this.observers)i.updateObserver(n,this),n.handleChange(this,void 0)},()=>this.debugName)}}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0}get(){}}function Q_(o){return typeof o=="string"?new hP(o):new hP(void 0,o)}class hP extends zg{get debugName(){return new gn(this._owner,this._debugName,void 0).getDebugName(this)??"Observable Signal"}toString(){return this.debugName}constructor(e,t){super(),this._debugName=e,this._owner=t}trigger(e,t){if(!e){Xt(i=>{this.trigger(i,t)},()=>`Trigger signal ${this.debugName}`);return}for(const i of this.observers)e.updateObserver(i,this),i.handleChange(this,t)}get(){}}function KZ(o){const e=new x7(!1,void 0);return o.addObserver(e),_e(()=>{o.removeObserver(e)})}OZ(KZ);function X_(o,e){const t=new x7(!0,e);return o.addObserver(t),e?e(o.get()):o.reportChanges(),_e(()=>{o.removeObserver(t)})}PZ(X_);class x7{constructor(e,t){this._forceRecompute=e,this._handleValue=t,this._counter=0}beginUpdate(e){this._counter++}endUpdate(e){this._counter--,this._counter===0&&this._forceRecompute&&(this._handleValue?this._handleValue(e.get()):e.reportChanges())}handlePossibleChange(e){}handleChange(e,t){}}function YT(o,e){let t;return dr({owner:o,debugReferenceFn:e},n=>(t=e(n,t),t))}function jZ(o,e,t,i){let n=new uP(t,i);return dr({debugReferenceFn:t,owner:o,onLastObserverRemoved:()=>{n.dispose(),n=new uP(t)}},r=>(n.setItems(e.read(r)),n.getItems()))}class uP{constructor(e,t){this._map=e,this._keySelector=t,this._cache=new Map,this._items=[]}dispose(){this._cache.forEach(e=>e.store.dispose()),this._cache.clear()}setItems(e){const t=[],i=new Set(this._cache.keys());for(const n of e){const s=this._keySelector?this._keySelector(n):n;let r=this._cache.get(s);if(r)i.delete(s);else{const a=new X;r={out:this._map(n,a),store:a},this._cache.set(s,r)}t.push(r.out)}for(const n of i)this._cache.get(n).store.dispose(),this._cache.delete(n);this._items=t}getItems(){return this._items}}function qZ(o,e){return YT(o,(t,i)=>i??e(t))}function k7(o,e,t,i){return e||(e=n=>n!=null),new Promise((n,s)=>{let r=!0,a=!1;const l=o.map(d=>({isFinished:e(d),error:t?t(d):!1,state:d})),c=We(d=>{const{isFinished:h,error:u,state:f}=l.read(d);(h||u)&&(r?a=!0:c.dispose(),u?s(u===!0?f:u):n(f))});if(i){const d=i.onCancellationRequested(()=>{c.dispose(),d.dispose(),s(new ha)});if(i.isCancellationRequested){c.dispose(),d.dispose(),s(new ha);return}}r=!1,a&&c.dispose()})}class GZ extends zg{get debugName(){return this._debugNameData.getDebugName(this)??"LazyObservableValue"}constructor(e,t,i){super(),this._debugNameData=e,this._equalityComparator=i,this._isUpToDate=!0,this._deltas=[],this._updateCounter=0,this._value=t}get(){return this._update(),this._value}_update(){if(!this._isUpToDate)if(this._isUpToDate=!0,this._deltas.length>0){for(const e of this.observers)for(const t of this._deltas)e.handleChange(this,t);this._deltas.length=0}else for(const e of this.observers)e.handleChange(this,void 0)}_beginUpdate(){if(this._updateCounter++,this._updateCounter===1)for(const e of this.observers)e.beginUpdate(this)}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){this._update();const e=[...this.observers];for(const t of e)t.endUpdate(this)}}addObserver(e){const t=!this.observers.has(e)&&this._updateCounter>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){const t=this.observers.has(e)&&this._updateCounter>0;super.removeObserver(e),t&&e.endUpdate(this)}set(e,t,i){if(i===void 0&&this._equalityComparator(this._value,e))return;let n;t||(t=n=new Ug(()=>{},()=>`Setting ${this.debugName}`));try{if(this._isUpToDate=!1,this._setValue(e),i!==void 0&&this._deltas.push(i),t.updateObserver({beginUpdate:()=>this._beginUpdate(),endUpdate:()=>this._endUpdate(),handleChange:(s,r)=>{},handlePossibleChange:s=>{}},this),this._updateCounter>1)for(const s of this.observers)s.handlePossibleChange(this)}finally{n&&n.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}function iD(o,e){return o.lazy?new GZ(new gn(o.owner,o.debugName,void 0),e,o.equalsFn??ho):new GT(new gn(o.owner,o.debugName,void 0),e,o.equalsFn??ho)}const Np=class Np extends z{constructor(e=!1){super(),this._onDidRequestBasicLanguageFeatures=this._register(new A),this.onDidRequestBasicLanguageFeatures=this._onDidRequestBasicLanguageFeatures.event,this._onDidRequestRichLanguageFeatures=this._register(new A),this.onDidRequestRichLanguageFeatures=this._onDidRequestRichLanguageFeatures.event,this._onDidChange=this._register(new A({leakWarningThreshold:200})),this.onDidChange=this._onDidChange.event,this._requestedBasicLanguages=new Set,this._requestedRichLanguages=new Set,Np.instanceCount++,this._registry=this._register(new Qk(!0,e)),this.languageIdCodec=this._registry.languageIdCodec,this._register(this._registry.onDidChange(()=>this._onDidChange.fire()))}dispose(){Np.instanceCount--,super.dispose()}isRegisteredLanguageId(e){return this._registry.isRegisteredLanguageId(e)}getLanguageIdByLanguageName(e){return this._registry.getLanguageIdByLanguageName(e)}getLanguageIdByMimeType(e){return this._registry.getLanguageIdByMimeType(e)}guessLanguageIdByFilepathOrFirstLine(e,t){const i=this._registry.guessLanguageIdByFilepathOrFirstLine(e,t);return xN(i,null)}createById(e){return new fP(this.onDidChange,()=>this._createAndGetLanguageIdentifier(e))}createByFilepathOrFirstLine(e,t){return new fP(this.onDidChange,()=>{const i=this.guessLanguageIdByFilepathOrFirstLine(e,t);return this._createAndGetLanguageIdentifier(i)})}_createAndGetLanguageIdentifier(e){return(!e||!this.isRegisteredLanguageId(e))&&(e=Bs),e}requestBasicLanguageFeatures(e){this._requestedBasicLanguages.has(e)||(this._requestedBasicLanguages.add(e),this._onDidRequestBasicLanguageFeatures.fire(e))}requestRichLanguageFeatures(e){this._requestedRichLanguages.has(e)||(this._requestedRichLanguages.add(e),this.requestBasicLanguageFeatures(e),si.getOrCreate(e),this._onDidRequestRichLanguageFeatures.fire(e))}};Np.instanceCount=0;let nD=Np;class fP{constructor(e,t){this._value=gt(this,e,()=>t()),this.onDidChange=J.fromObservable(this._value)}get languageId(){return this._value.get()}}const D7={TEXT:il.text},ZZ=()=>({get delay(){return-1},dispose:()=>{},showHover:()=>{}});let cy=ZZ;const YZ=new ua(()=>cy("mouse",!1)),QZ=new ua(()=>cy("element",!1));function XZ(o){cy=o}function Ks(o){return o==="element"?QZ.value:YZ.value}function QT(){return cy("element",!0)}let I7={showHover:()=>{},hideHover:()=>{},showAndFocusLastHover:()=>{},setupManagedHover:()=>null,showManagedHover:()=>{}};function JZ(o){I7=o}function La(){return I7}class eY{constructor(e){this.spliceables=e}splice(e,t,i){this.spliceables.forEach(n=>n.splice(e,t,i))}}class id extends Error{constructor(e,t){super(`ListError [${e}] ${t}`)}}function gP(o,e){const t=[];for(const i of e){if(o.start>=i.range.end)continue;if(o.ende.concat(t),[]))}class nY{get paddingTop(){return this._paddingTop}set paddingTop(e){this._size=this._size+e-this._paddingTop,this._paddingTop=e}constructor(e){this.groups=[],this._size=0,this._paddingTop=0,this._paddingTop=e??0,this._size=this._paddingTop}splice(e,t,i=[]){const n=i.length-t,s=gP({start:0,end:e},this.groups),r=gP({start:e+t,end:Number.POSITIVE_INFINITY},this.groups).map(l=>({range:sD(l.range,n),size:l.size})),a=i.map((l,c)=>({range:{start:e+c,end:e+c+1},size:l.size}));this.groups=iY(s,a,r),this._size=this._paddingTop+this.groups.reduce((l,c)=>l+c.size*(c.range.end-c.range.start),0)}get count(){const e=this.groups.length;return e?this.groups[e-1].range.end:0}get size(){return this._size}indexAt(e){if(e<0)return-1;if(e{for(const i of e)this.getRenderer(t).disposeTemplate(i.templateData),i.templateData=null}),this.cache.clear(),this.transactionNodesPendingRemoval.clear()}getRenderer(e){const t=this.renderers.get(e);if(!t)throw new Error(`No renderer found for ${e}`);return t}}var Ml=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};const nd={CurrentDragAndDropData:void 0},Tr={useShadows:!0,verticalScrollMode:1,setRowLineHeight:!0,setRowHeight:!0,supportDynamicHeights:!1,dnd:{getDragElements(o){return[o]},getDragURI(){return null},onDragStart(){},onDragOver(){return!1},drop(){},dispose(){}},horizontalScrolling:!1,transformOptimization:!0,alwaysConsumeMouseWheel:!0};class J_{constructor(e){this.elements=e}update(){}getData(){return this.elements}}class oY{constructor(e){this.elements=e}update(){}getData(){return this.elements}}class rY{constructor(){this.types=[],this.files=[]}update(e){if(e.types&&this.types.splice(0,this.types.length,...e.types),e.files){this.files.splice(0,this.files.length);for(let t=0;tn,e?.getPosInSet?this.getPosInSet=e.getPosInSet.bind(e):this.getPosInSet=(t,i)=>i+1,e?.getRole?this.getRole=e.getRole.bind(e):this.getRole=t=>"listitem",e?.isChecked?this.isChecked=e.isChecked.bind(e):this.isChecked=t=>{}}}const Rw=class Rw{get contentHeight(){return this.rangeMap.size}get onDidScroll(){return this.scrollableElement.onScroll}get scrollableElementDomNode(){return this.scrollableElement.getDomNode()}get horizontalScrolling(){return this._horizontalScrolling}set horizontalScrolling(e){if(e!==this._horizontalScrolling){if(e&&this.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");if(this._horizontalScrolling=e,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this._horizontalScrolling){for(const t of this.items)this.measureItemWidth(t);this.updateScrollWidth(),this.scrollableElement.setScrollDimensions({width:oS(this.domNode)}),this.rowsContainer.style.width=`${Math.max(this.scrollWidth||0,this.renderWidth)}px`}else this.scrollableElementWidthDelayer.cancel(),this.scrollableElement.setScrollDimensions({width:this.renderWidth,scrollWidth:this.renderWidth}),this.rowsContainer.style.width=""}}constructor(e,t,i,n=Tr){if(this.virtualDelegate=t,this.domId=`list_id_${++Rw.InstanceCount}`,this.renderers=new Map,this.renderWidth=0,this._scrollHeight=0,this.scrollableElementUpdateDisposable=null,this.scrollableElementWidthDelayer=new z_(50),this.splicing=!1,this.dragOverAnimationStopDisposable=z.None,this.dragOverMouseY=0,this.canDrop=!1,this.currentDragFeedbackDisposable=z.None,this.onDragLeaveTimeout=z.None,this.disposables=new X,this._onDidChangeContentHeight=new A,this._onDidChangeContentWidth=new A,this.onDidChangeContentHeight=J.latch(this._onDidChangeContentHeight.event,void 0,this.disposables),this._horizontalScrolling=!1,n.horizontalScrolling&&n.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");this.items=[],this.itemId=0,this.rangeMap=this.createRangeMap(n.paddingTop??0);for(const r of i)this.renderers.set(r.templateId,r);this.cache=this.disposables.add(new sY(this.renderers)),this.lastRenderTop=0,this.lastRenderHeight=0,this.domNode=document.createElement("div"),this.domNode.className="monaco-list",this.domNode.classList.add(this.domId),this.domNode.tabIndex=0,this.domNode.classList.toggle("mouse-support",typeof n.mouseSupport=="boolean"?n.mouseSupport:!0),this._horizontalScrolling=n.horizontalScrolling??Tr.horizontalScrolling,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this.paddingBottom=typeof n.paddingBottom>"u"?0:n.paddingBottom,this.accessibilityProvider=new lY(n.accessibilityProvider),this.rowsContainer=document.createElement("div"),this.rowsContainer.className="monaco-list-rows",(n.transformOptimization??Tr.transformOptimization)&&(this.rowsContainer.style.transform="translate3d(0px, 0px, 0px)",this.rowsContainer.style.overflow="hidden",this.rowsContainer.style.contain="strict"),this.disposables.add(fn.addTarget(this.rowsContainer)),this.scrollable=this.disposables.add(new Vg({forceIntegerValues:!0,smoothScrollDuration:n.smoothScrolling??!1?125:0,scheduleAtNextAnimationFrame:r=>fs(fe(this.domNode),r)})),this.scrollableElement=this.disposables.add(new X0(this.rowsContainer,{alwaysConsumeMouseWheel:n.alwaysConsumeMouseWheel??Tr.alwaysConsumeMouseWheel,horizontal:1,vertical:n.verticalScrollMode??Tr.verticalScrollMode,useShadows:n.useShadows??Tr.useShadows,mouseWheelScrollSensitivity:n.mouseWheelScrollSensitivity,fastScrollSensitivity:n.fastScrollSensitivity,scrollByPage:n.scrollByPage},this.scrollable)),this.domNode.appendChild(this.scrollableElement.getDomNode()),e.appendChild(this.domNode),this.scrollableElement.onScroll(this.onScroll,this,this.disposables),this.disposables.add(U(this.rowsContainer,St.Change,r=>this.onTouchChange(r))),this.disposables.add(U(this.scrollableElement.getDomNode(),"scroll",r=>r.target.scrollTop=0)),this.disposables.add(U(this.domNode,"dragover",r=>this.onDragOver(this.toDragEvent(r)))),this.disposables.add(U(this.domNode,"drop",r=>this.onDrop(this.toDragEvent(r)))),this.disposables.add(U(this.domNode,"dragleave",r=>this.onDragLeave(this.toDragEvent(r)))),this.disposables.add(U(this.domNode,"dragend",r=>this.onDragEnd(r))),this.setRowLineHeight=n.setRowLineHeight??Tr.setRowLineHeight,this.setRowHeight=n.setRowHeight??Tr.setRowHeight,this.supportDynamicHeights=n.supportDynamicHeights??Tr.supportDynamicHeights,this.dnd=n.dnd??this.disposables.add(Tr.dnd),this.layout(n.initialSize?.height,n.initialSize?.width)}updateOptions(e){e.paddingBottom!==void 0&&(this.paddingBottom=e.paddingBottom,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),e.smoothScrolling!==void 0&&this.scrollable.setSmoothScrollDuration(e.smoothScrolling?125:0),e.horizontalScrolling!==void 0&&(this.horizontalScrolling=e.horizontalScrolling);let t;if(e.scrollByPage!==void 0&&(t={...t??{},scrollByPage:e.scrollByPage}),e.mouseWheelScrollSensitivity!==void 0&&(t={...t??{},mouseWheelScrollSensitivity:e.mouseWheelScrollSensitivity}),e.fastScrollSensitivity!==void 0&&(t={...t??{},fastScrollSensitivity:e.fastScrollSensitivity}),t&&this.scrollableElement.updateOptions(t),e.paddingTop!==void 0&&e.paddingTop!==this.rangeMap.paddingTop){const i=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),n=e.paddingTop-this.rangeMap.paddingTop;this.rangeMap.paddingTop=e.paddingTop,this.render(i,Math.max(0,this.lastRenderTop+n),this.lastRenderHeight,void 0,void 0,!0),this.setScrollTop(this.lastRenderTop),this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.lastRenderTop,this.lastRenderHeight)}}createRangeMap(e){return new nY(e)}splice(e,t,i=[]){if(this.splicing)throw new Error("Can't run recursive splices.");this.splicing=!0;try{return this._splice(e,t,i)}finally{this.splicing=!1,this._onDidChangeContentHeight.fire(this.contentHeight)}}_splice(e,t,i=[]){const n=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),s={start:e,end:e+t},r=Yi.intersect(n,s),a=new Map;for(let y=r.end-1;y>=r.start;y--){const x=this.items[y];if(x.dragStartDisposable.dispose(),x.checkedDisposable.dispose(),x.row){let L=a.get(x.templateId);L||(L=[],a.set(x.templateId,L));const E=this.renderers.get(x.templateId);E&&E.disposeElement&&E.disposeElement(x.element,y,x.row.templateData,x.size),L.unshift(x.row)}x.row=null,x.stale=!0}const l={start:e+t,end:this.items.length},c=Yi.intersect(l,n),d=Yi.relativeComplement(l,n),h=i.map(y=>({id:String(this.itemId++),element:y,templateId:this.virtualDelegate.getTemplateId(y),size:this.virtualDelegate.getHeight(y),width:void 0,hasDynamicHeight:!!this.virtualDelegate.hasDynamicHeight&&this.virtualDelegate.hasDynamicHeight(y),lastDynamicHeightWidth:void 0,row:null,uri:void 0,dropTarget:!1,dragStartDisposable:z.None,checkedDisposable:z.None,stale:!1}));let u;e===0&&t>=this.items.length?(this.rangeMap=this.createRangeMap(this.rangeMap.paddingTop),this.rangeMap.splice(0,0,h),u=this.items,this.items=h):(this.rangeMap.splice(e,t,h),u=this.items.splice(e,t,...h));const f=i.length-t,g=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),p=sD(c,f),_=Yi.intersect(g,p);for(let y=_.start;y<_.end;y++)this.updateItemInDOM(this.items[y],y);const b=Yi.relativeComplement(p,g);for(const y of b)for(let x=y.start;xsD(y,f)),v=[{start:e,end:e+i.length},...C].map(y=>Yi.intersect(g,y)).reverse();for(const y of v)for(let x=y.end-1;x>=y.start;x--){const L=this.items[x],N=a.get(L.templateId)?.pop();this.insertItemInDOM(x,N)}for(const y of a.values())for(const x of y)this.cache.release(x);return this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight),u.map(y=>y.element)}eventuallyUpdateScrollDimensions(){this._scrollHeight=this.contentHeight,this.rowsContainer.style.height=`${this._scrollHeight}px`,this.scrollableElementUpdateDisposable||(this.scrollableElementUpdateDisposable=fs(fe(this.domNode),()=>{this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight}),this.updateScrollWidth(),this.scrollableElementUpdateDisposable=null}))}eventuallyUpdateScrollWidth(){if(!this.horizontalScrolling){this.scrollableElementWidthDelayer.cancel();return}this.scrollableElementWidthDelayer.trigger(()=>this.updateScrollWidth())}updateScrollWidth(){if(!this.horizontalScrolling)return;let e=0;for(const t of this.items)typeof t.width<"u"&&(e=Math.max(e,t.width));this.scrollWidth=e,this.scrollableElement.setScrollDimensions({scrollWidth:e===0?0:e+10}),this._onDidChangeContentWidth.fire(this.scrollWidth)}rerender(){if(this.supportDynamicHeights){for(const e of this.items)e.lastDynamicHeightWidth=void 0;this._rerender(this.lastRenderTop,this.lastRenderHeight)}}get length(){return this.items.length}get renderHeight(){return this.scrollableElement.getScrollDimensions().height}get firstVisibleIndex(){return this.getRenderRange(this.lastRenderTop,this.lastRenderHeight).start}element(e){return this.items[e].element}indexOf(e){return this.items.findIndex(t=>t.element===e)}domElement(e){const t=this.items[e].row;return t&&t.domNode}elementHeight(e){return this.items[e].size}elementTop(e){return this.rangeMap.positionAt(e)}indexAt(e){return this.rangeMap.indexAt(e)}indexAfter(e){return this.rangeMap.indexAfter(e)}layout(e,t){const i={height:typeof e=="number"?e:CV(this.domNode)};this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,i.scrollHeight=this.scrollHeight),this.scrollableElement.setScrollDimensions(i),typeof t<"u"&&(this.renderWidth=t,this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight)),this.horizontalScrolling&&this.scrollableElement.setScrollDimensions({width:typeof t=="number"?t:oS(this.domNode)})}render(e,t,i,n,s,r=!1){const a=this.getRenderRange(t,i),l=Yi.relativeComplement(a,e).reverse(),c=Yi.relativeComplement(e,a);if(r){const d=Yi.intersect(e,a);for(let h=d.start;h{for(const d of c)for(let h=d.start;h=d.start;h--)this.insertItemInDOM(h)}),n!==void 0&&(this.rowsContainer.style.left=`-${n}px`),this.rowsContainer.style.top=`-${t}px`,this.horizontalScrolling&&s!==void 0&&(this.rowsContainer.style.width=`${Math.max(s,this.renderWidth)}px`),this.lastRenderTop=t,this.lastRenderHeight=i}insertItemInDOM(e,t){const i=this.items[e];if(!i.row)if(t)i.row=t,i.stale=!0;else{const l=this.cache.alloc(i.templateId);i.row=l.row,i.stale||=l.isReusingConnectedDomNode}const n=this.accessibilityProvider.getRole(i.element)||"listitem";i.row.domNode.setAttribute("role",n);const s=this.accessibilityProvider.isChecked(i.element);if(typeof s=="boolean")i.row.domNode.setAttribute("aria-checked",String(!!s));else if(s){const l=c=>i.row.domNode.setAttribute("aria-checked",String(!!c));l(s.value),i.checkedDisposable=s.onDidChange(()=>l(s.value))}if(i.stale||!i.row.domNode.parentElement){const l=this.items.at(e+1)?.row?.domNode??null;(i.row.domNode.parentElement!==this.rowsContainer||i.row.domNode.nextElementSibling!==l)&&this.rowsContainer.insertBefore(i.row.domNode,l),i.stale=!1}this.updateItemInDOM(i,e);const r=this.renderers.get(i.templateId);if(!r)throw new Error(`No renderer found for template id ${i.templateId}`);r?.renderElement(i.element,e,i.row.templateData,i.size);const a=this.dnd.getDragURI(i.element);i.dragStartDisposable.dispose(),i.row.domNode.draggable=!!a,a&&(i.dragStartDisposable=U(i.row.domNode,"dragstart",l=>this.onDragStart(i.element,a,l))),this.horizontalScrolling&&(this.measureItemWidth(i),this.eventuallyUpdateScrollWidth())}measureItemWidth(e){if(!e.row||!e.row.domNode)return;e.row.domNode.style.width="fit-content",e.width=oS(e.row.domNode);const t=fe(e.row.domNode).getComputedStyle(e.row.domNode);t.paddingLeft&&(e.width+=parseFloat(t.paddingLeft)),t.paddingRight&&(e.width+=parseFloat(t.paddingRight)),e.row.domNode.style.width=""}updateItemInDOM(e,t){e.row.domNode.style.top=`${this.elementTop(t)}px`,this.setRowHeight&&(e.row.domNode.style.height=`${e.size}px`),this.setRowLineHeight&&(e.row.domNode.style.lineHeight=`${e.size}px`),e.row.domNode.setAttribute("data-index",`${t}`),e.row.domNode.setAttribute("data-last-element",t===this.length-1?"true":"false"),e.row.domNode.setAttribute("data-parity",t%2===0?"even":"odd"),e.row.domNode.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(e.element,t,this.length))),e.row.domNode.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(e.element,t))),e.row.domNode.setAttribute("id",this.getElementDomId(t)),e.row.domNode.classList.toggle("drop-target",e.dropTarget)}removeItemFromDOM(e){const t=this.items[e];if(t.dragStartDisposable.dispose(),t.checkedDisposable.dispose(),t.row){const i=this.renderers.get(t.templateId);i&&i.disposeElement&&i.disposeElement(t.element,e,t.row.templateData,t.size),this.cache.release(t.row),t.row=null}this.horizontalScrolling&&this.eventuallyUpdateScrollWidth()}getScrollTop(){return this.scrollableElement.getScrollPosition().scrollTop}setScrollTop(e,t){this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),this.scrollableElement.setScrollPosition({scrollTop:e,reuseAnimation:t})}get scrollTop(){return this.getScrollTop()}set scrollTop(e){this.setScrollTop(e)}get scrollHeight(){return this._scrollHeight+(this.horizontalScrolling?10:0)+this.paddingBottom}get onMouseClick(){return J.map(this.disposables.add(new ze(this.domNode,"click")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseDblClick(){return J.map(this.disposables.add(new ze(this.domNode,"dblclick")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseMiddleClick(){return J.filter(J.map(this.disposables.add(new ze(this.domNode,"auxclick")).event,e=>this.toMouseEvent(e),this.disposables),e=>e.browserEvent.button===1,this.disposables)}get onMouseDown(){return J.map(this.disposables.add(new ze(this.domNode,"mousedown")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseOver(){return J.map(this.disposables.add(new ze(this.domNode,"mouseover")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseOut(){return J.map(this.disposables.add(new ze(this.domNode,"mouseout")).event,e=>this.toMouseEvent(e),this.disposables)}get onContextMenu(){return J.any(J.map(this.disposables.add(new ze(this.domNode,"contextmenu")).event,e=>this.toMouseEvent(e),this.disposables),J.map(this.disposables.add(new ze(this.domNode,St.Contextmenu)).event,e=>this.toGestureEvent(e),this.disposables))}get onTouchStart(){return J.map(this.disposables.add(new ze(this.domNode,"touchstart")).event,e=>this.toTouchEvent(e),this.disposables)}get onTap(){return J.map(this.disposables.add(new ze(this.rowsContainer,St.Tap)).event,e=>this.toGestureEvent(e),this.disposables)}toMouseEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element;return{browserEvent:e,index:t,element:n}}toTouchEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element;return{browserEvent:e,index:t,element:n}}toGestureEvent(e){const t=this.getItemIndexFromEventTarget(e.initialTarget||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element;return{browserEvent:e,index:t,element:n}}toDragEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element,s=this.getTargetSector(e,t);return{browserEvent:e,index:t,element:n,sector:s}}onScroll(e){try{const t=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight);this.render(t,e.scrollTop,e.height,e.scrollLeft,e.scrollWidth),this.supportDynamicHeights&&this._rerender(e.scrollTop,e.height,e.inSmoothScrolling)}catch(t){throw console.error("Got bad scroll event:",e),t}}onTouchChange(e){e.preventDefault(),e.stopPropagation(),this.scrollTop-=e.translationY}onDragStart(e,t,i){if(!i.dataTransfer)return;const n=this.dnd.getDragElements(e);if(i.dataTransfer.effectAllowed="copyMove",i.dataTransfer.setData(D7.TEXT,t),i.dataTransfer.setDragImage){let s;this.dnd.getDragLabel&&(s=this.dnd.getDragLabel(n,i)),typeof s>"u"&&(s=String(n.length));const r=ce(".monaco-drag-image");r.textContent=s,(c=>{for(;c&&!c.classList.contains("monaco-workbench");)c=c.parentElement;return c||this.domNode.ownerDocument})(this.domNode).appendChild(r),i.dataTransfer.setDragImage(r,-10,-10),setTimeout(()=>r.remove(),0)}this.domNode.classList.add("dragging"),this.currentDragData=new J_(n),nd.CurrentDragAndDropData=new oY(n),this.dnd.onDragStart?.(this.currentDragData,i)}onDragOver(e){if(e.browserEvent.preventDefault(),this.onDragLeaveTimeout.dispose(),nd.CurrentDragAndDropData&&nd.CurrentDragAndDropData.getData()==="vscode-ui"||(this.setupDragAndDropScrollTopAnimation(e.browserEvent),!e.browserEvent.dataTransfer))return!1;if(!this.currentDragData)if(nd.CurrentDragAndDropData)this.currentDragData=nd.CurrentDragAndDropData;else{if(!e.browserEvent.dataTransfer.types)return!1;this.currentDragData=new rY}const t=this.dnd.onDragOver(this.currentDragData,e.element,e.index,e.sector,e.browserEvent);if(this.canDrop=typeof t=="boolean"?t:t.accept,!this.canDrop)return this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),!1;e.browserEvent.dataTransfer.dropEffect=typeof t!="boolean"&&t.effect?.type===0?"copy":"move";let i;typeof t!="boolean"&&t.feedback?i=t.feedback:typeof e.index>"u"?i=[-1]:i=[e.index],i=Eh(i).filter(s=>s>=-1&&ss-r),i=i[0]===-1?[-1]:i;let n=typeof t!="boolean"&&t.effect&&t.effect.position?t.effect.position:"drop-target";if(aY(this.currentDragFeedback,i)&&this.currentDragFeedbackPosition===n)return!0;if(this.currentDragFeedback=i,this.currentDragFeedbackPosition=n,this.currentDragFeedbackDisposable.dispose(),i[0]===-1)this.domNode.classList.add(n),this.rowsContainer.classList.add(n),this.currentDragFeedbackDisposable=_e(()=>{this.domNode.classList.remove(n),this.rowsContainer.classList.remove(n)});else{if(i.length>1&&n!=="drop-target")throw new Error("Can't use multiple feedbacks with position different than 'over'");n==="drop-target-after"&&i[0]{for(const s of i){const r=this.items[s];r.dropTarget=!1,r.row?.domNode.classList.remove(n)}})}return!0}onDragLeave(e){this.onDragLeaveTimeout.dispose(),this.onDragLeaveTimeout=rg(()=>this.clearDragOverFeedback(),100,this.disposables),this.currentDragData&&this.dnd.onDragLeave?.(this.currentDragData,e.element,e.index,e.browserEvent)}onDrop(e){if(!this.canDrop)return;const t=this.currentDragData;this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,nd.CurrentDragAndDropData=void 0,!(!t||!e.browserEvent.dataTransfer)&&(e.browserEvent.preventDefault(),t.update(e.browserEvent.dataTransfer),this.dnd.drop(t,e.element,e.index,e.sector,e.browserEvent))}onDragEnd(e){this.canDrop=!1,this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,nd.CurrentDragAndDropData=void 0,this.dnd.onDragEnd?.(e)}clearDragOverFeedback(){this.currentDragFeedback=void 0,this.currentDragFeedbackPosition=void 0,this.currentDragFeedbackDisposable.dispose(),this.currentDragFeedbackDisposable=z.None}setupDragAndDropScrollTopAnimation(e){if(!this.dragOverAnimationDisposable){const t=_V(this.domNode).top;this.dragOverAnimationDisposable=RV(fe(this.domNode),this.animateDragAndDropScrollTop.bind(this,t))}this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationStopDisposable=rg(()=>{this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)},1e3,this.disposables),this.dragOverMouseY=e.pageY}animateDragAndDropScrollTop(e){if(this.dragOverMouseY===void 0)return;const t=this.dragOverMouseY-e,i=this.renderHeight-35;t<35?this.scrollTop+=Math.max(-14,Math.floor(.3*(t-35))):t>i&&(this.scrollTop+=Math.min(14,Math.floor(.3*(t-i))))}teardownDragAndDropScrollTopAnimation(){this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)}getTargetSector(e,t){if(t===void 0)return;const i=e.offsetY/this.items[t].size,n=Math.floor(i/.25);return bn(n,0,3)}getItemIndexFromEventTarget(e){const t=this.scrollableElement.getDomNode();let i=e;for(;(Ei(i)||kV(i))&&i!==this.rowsContainer&&t.contains(i);){const n=i.getAttribute("data-index");if(n){const s=Number(n);if(!isNaN(s))return s}i=i.parentElement}}getRenderRange(e,t){return{start:this.rangeMap.indexAt(e),end:this.rangeMap.indexAfter(e+t-1)}}_rerender(e,t,i){const n=this.getRenderRange(e,t);let s,r;e===this.elementTop(n.start)?(s=n.start,r=0):n.end-n.start>1&&(s=n.start+1,r=this.elementTop(s)-e);let a=0;for(;;){const l=this.getRenderRange(e,t);let c=!1;for(let d=l.start;d=u.start;f--)this.insertItemInDOM(f);for(let u=l.start;u=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};class cY{constructor(e){this.trait=e,this.renderedElements=[]}get templateId(){return`template:${this.trait.name}`}renderTemplate(e){return e}renderElement(e,t,i){const n=this.renderedElements.findIndex(s=>s.templateData===i);if(n>=0){const s=this.renderedElements[n];this.trait.unrender(i),s.index=t}else{const s={index:t,templateData:i};this.renderedElements.push(s)}this.trait.renderIndex(t,i)}splice(e,t,i){const n=[];for(const s of this.renderedElements)s.index=e+t&&n.push({index:s.index+i-t,templateData:s.templateData});this.renderedElements=n}renderIndexes(e){for(const{index:t,templateData:i}of this.renderedElements)e.indexOf(t)>-1&&this.trait.renderIndex(t,i)}disposeTemplate(e){const t=this.renderedElements.findIndex(i=>i.templateData===e);t<0||this.renderedElements.splice(t,1)}}let jC=class{get name(){return this._trait}get renderer(){return new cY(this)}constructor(e){this._trait=e,this.indexes=[],this.sortedIndexes=[],this._onChange=new A,this.onChange=this._onChange.event}splice(e,t,i){const n=i.length-t,s=e+t,r=[];let a=0;for(;a=s;)r.push(this.sortedIndexes[a++]+n);this.renderer.splice(e,t,i.length),this._set(r,r)}renderIndex(e,t){t.classList.toggle(this._trait,this.contains(e))}unrender(e){e.classList.remove(this._trait)}set(e,t){return this._set(e,[...e].sort(pP),t)}_set(e,t,i){const n=this.indexes,s=this.sortedIndexes;this.indexes=e,this.sortedIndexes=t;const r=oD(s,e);return this.renderer.renderIndexes(r),this._onChange.fire({indexes:e,browserEvent:i}),n}get(){return this.indexes}contains(e){return SN(this.sortedIndexes,e,pP)>=0}dispose(){xt(this._onChange)}};Gc([Jt],jC.prototype,"renderer",null);class dY extends jC{constructor(e){super("selected"),this.setAriaSelected=e}renderIndex(e,t){super.renderIndex(e,t),this.setAriaSelected&&(this.contains(e)?t.setAttribute("aria-selected","true"):t.setAttribute("aria-selected","false"))}}class MS{constructor(e,t,i){this.trait=e,this.view=t,this.identityProvider=i}splice(e,t,i){if(!this.identityProvider)return this.trait.splice(e,t,new Array(i.length).fill(!1));const n=this.trait.get().map(a=>this.identityProvider.getId(this.view.element(a)).toString());if(n.length===0)return this.trait.splice(e,t,new Array(i.length).fill(!1));const s=new Set(n),r=i.map(a=>s.has(this.identityProvider.getId(a).toString()));this.trait.splice(e,t,r)}}function pc(o){return o.tagName==="INPUT"||o.tagName==="TEXTAREA"}function eb(o,e){return o.classList.contains(e)?!0:o.classList.contains("monaco-list")||!o.parentElement?!1:eb(o.parentElement,e)}function Rm(o){return eb(o,"monaco-editor")}function hY(o){return eb(o,"monaco-custom-toggle")}function uY(o){return eb(o,"action-item")}function Jm(o){return eb(o,"monaco-tree-sticky-row")}function d_(o){return o.classList.contains("monaco-tree-sticky-container")}function E7(o){return o.tagName==="A"&&o.classList.contains("monaco-button")||o.tagName==="DIV"&&o.classList.contains("monaco-button-dropdown")?!0:o.classList.contains("monaco-list")||!o.parentElement?!1:E7(o.parentElement)}class N7{get onKeyDown(){return J.chain(this.disposables.add(new ze(this.view.domNode,"keydown")).event,e=>e.filter(t=>!pc(t.target)).map(t=>new Nt(t)))}constructor(e,t,i){this.list=e,this.view=t,this.disposables=new X,this.multipleSelectionDisposables=new X,this.multipleSelectionSupport=i.multipleSelectionSupport,this.disposables.add(this.onKeyDown(n=>{switch(n.keyCode){case 3:return this.onEnter(n);case 16:return this.onUpArrow(n);case 18:return this.onDownArrow(n);case 11:return this.onPageUpArrow(n);case 12:return this.onPageDownArrow(n);case 9:return this.onEscape(n);case 31:this.multipleSelectionSupport&&(Ue?n.metaKey:n.ctrlKey)&&this.onCtrlA(n)}}))}updateOptions(e){e.multipleSelectionSupport!==void 0&&(this.multipleSelectionSupport=e.multipleSelectionSupport)}onEnter(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(this.list.getFocus(),e.browserEvent)}onUpArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusPrevious(1,!1,e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onDownArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusNext(1,!1,e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onPageUpArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusPreviousPage(e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onPageDownArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusNextPage(e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onCtrlA(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(Bn(this.list.length),e.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus()}onEscape(e){this.list.getSelection().length&&(e.preventDefault(),e.stopPropagation(),this.list.setSelection([],e.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus())}dispose(){this.disposables.dispose(),this.multipleSelectionDisposables.dispose()}}Gc([Jt],N7.prototype,"onKeyDown",null);var Qr;(function(o){o[o.Automatic=0]="Automatic",o[o.Trigger=1]="Trigger"})(Qr||(Qr={}));var rf;(function(o){o[o.Idle=0]="Idle",o[o.Typing=1]="Typing"})(rf||(rf={}));const fY=new class{mightProducePrintableCharacter(o){return o.ctrlKey||o.metaKey||o.altKey?!1:o.keyCode>=31&&o.keyCode<=56||o.keyCode>=21&&o.keyCode<=30||o.keyCode>=98&&o.keyCode<=107||o.keyCode>=85&&o.keyCode<=95}};class gY{constructor(e,t,i,n,s){this.list=e,this.view=t,this.keyboardNavigationLabelProvider=i,this.keyboardNavigationEventFilter=n,this.delegate=s,this.enabled=!1,this.state=rf.Idle,this.mode=Qr.Automatic,this.triggered=!1,this.previouslyFocused=-1,this.enabledDisposables=new X,this.disposables=new X,this.updateOptions(e.options)}updateOptions(e){e.typeNavigationEnabled??!0?this.enable():this.disable(),this.mode=e.typeNavigationMode??Qr.Automatic}enable(){if(this.enabled)return;let e=!1;const t=J.chain(this.enabledDisposables.add(new ze(this.view.domNode,"keydown")).event,s=>s.filter(r=>!pc(r.target)).filter(()=>this.mode===Qr.Automatic||this.triggered).map(r=>new Nt(r)).filter(r=>e||this.keyboardNavigationEventFilter(r)).filter(r=>this.delegate.mightProducePrintableCharacter(r)).forEach(r=>je.stop(r,!0)).map(r=>r.browserEvent.key)),i=J.debounce(t,()=>null,800,void 0,void 0,void 0,this.enabledDisposables);J.reduce(J.any(t,i),(s,r)=>r===null?null:(s||"")+r,void 0,this.enabledDisposables)(this.onInput,this,this.enabledDisposables),i(this.onClear,this,this.enabledDisposables),t(()=>e=!0,void 0,this.enabledDisposables),i(()=>e=!1,void 0,this.enabledDisposables),this.enabled=!0,this.triggered=!1}disable(){this.enabled&&(this.enabledDisposables.clear(),this.enabled=!1,this.triggered=!1)}onClear(){const e=this.list.getFocus();if(e.length>0&&e[0]===this.previouslyFocused){const t=this.list.options.accessibilityProvider?.getAriaLabel(this.list.element(e[0]));typeof t=="string"?El(t):t&&El(t.get())}this.previouslyFocused=-1}onInput(e){if(!e){this.state=rf.Idle,this.triggered=!1;return}const t=this.list.getFocus(),i=t.length>0?t[0]:0,n=this.state===rf.Idle?1:0;this.state=rf.Typing;for(let s=0;s1&&c.length===1){this.previouslyFocused=i,this.list.setFocus([r]),this.list.reveal(r);return}}}else if(typeof l>"u"||WC(e,l)){this.previouslyFocused=i,this.list.setFocus([r]),this.list.reveal(r);return}}}dispose(){this.disable(),this.enabledDisposables.dispose(),this.disposables.dispose()}}class mY{constructor(e,t){this.list=e,this.view=t,this.disposables=new X;const i=J.chain(this.disposables.add(new ze(t.domNode,"keydown")).event,s=>s.filter(r=>!pc(r.target)).map(r=>new Nt(r)));J.chain(i,s=>s.filter(r=>r.keyCode===2&&!r.ctrlKey&&!r.metaKey&&!r.shiftKey&&!r.altKey))(this.onTab,this,this.disposables)}onTab(e){if(e.target!==this.view.domNode)return;const t=this.list.getFocus();if(t.length===0)return;const i=this.view.domElement(t[0]);if(!i)return;const n=i.querySelector("[tabIndex]");if(!n||!Ei(n)||n.tabIndex===-1)return;const s=fe(n).getComputedStyle(n);s.visibility==="hidden"||s.display==="none"||(e.preventDefault(),e.stopPropagation(),n.focus())}dispose(){this.disposables.dispose()}}function T7(o){return Ue?o.browserEvent.metaKey:o.browserEvent.ctrlKey}function M7(o){return o.browserEvent.shiftKey}function pY(o){return tT(o)&&o.button===2}const mP={isSelectionSingleChangeEvent:T7,isSelectionRangeChangeEvent:M7};class R7{constructor(e){this.list=e,this.disposables=new X,this._onPointer=new A,this.onPointer=this._onPointer.event,e.options.multipleSelectionSupport!==!1&&(this.multipleSelectionController=this.list.options.multipleSelectionController||mP),this.mouseSupport=typeof e.options.mouseSupport>"u"||!!e.options.mouseSupport,this.mouseSupport&&(e.onMouseDown(this.onMouseDown,this,this.disposables),e.onContextMenu(this.onContextMenu,this,this.disposables),e.onMouseDblClick(this.onDoubleClick,this,this.disposables),e.onTouchStart(this.onMouseDown,this,this.disposables),this.disposables.add(fn.addTarget(e.getHTMLElement()))),J.any(e.onMouseClick,e.onMouseMiddleClick,e.onTap)(this.onViewPointer,this,this.disposables)}updateOptions(e){e.multipleSelectionSupport!==void 0&&(this.multipleSelectionController=void 0,e.multipleSelectionSupport&&(this.multipleSelectionController=this.list.options.multipleSelectionController||mP))}isSelectionSingleChangeEvent(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionSingleChangeEvent(e):!1}isSelectionRangeChangeEvent(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionRangeChangeEvent(e):!1}isSelectionChangeEvent(e){return this.isSelectionSingleChangeEvent(e)||this.isSelectionRangeChangeEvent(e)}onMouseDown(e){Rm(e.browserEvent.target)||Xi()!==e.browserEvent.target&&this.list.domFocus()}onContextMenu(e){if(pc(e.browserEvent.target)||Rm(e.browserEvent.target))return;const t=typeof e.index>"u"?[]:[e.index];this.list.setFocus(t,e.browserEvent)}onViewPointer(e){if(!this.mouseSupport||pc(e.browserEvent.target)||Rm(e.browserEvent.target)||e.browserEvent.isHandledByList)return;e.browserEvent.isHandledByList=!0;const t=e.index;if(typeof t>"u"){this.list.setFocus([],e.browserEvent),this.list.setSelection([],e.browserEvent),this.list.setAnchor(void 0);return}if(this.isSelectionChangeEvent(e))return this.changeSelection(e);this.list.setFocus([t],e.browserEvent),this.list.setAnchor(t),pY(e.browserEvent)||this.list.setSelection([t],e.browserEvent),this._onPointer.fire(e)}onDoubleClick(e){if(pc(e.browserEvent.target)||Rm(e.browserEvent.target)||this.isSelectionChangeEvent(e)||e.browserEvent.isHandledByList)return;e.browserEvent.isHandledByList=!0;const t=this.list.getFocus();this.list.setSelection(t,e.browserEvent)}changeSelection(e){const t=e.index;let i=this.list.getAnchor();if(this.isSelectionRangeChangeEvent(e)){typeof i>"u"&&(i=this.list.getFocus()[0]??t,this.list.setAnchor(i));const n=Math.min(i,t),s=Math.max(i,t),r=Bn(n,s+1),a=this.list.getSelection(),l=CY(oD(a,[i]),i);if(l.length===0)return;const c=oD(r,vY(a,l));this.list.setSelection(c,e.browserEvent),this.list.setFocus([t],e.browserEvent)}else if(this.isSelectionSingleChangeEvent(e)){const n=this.list.getSelection(),s=n.filter(r=>r!==t);this.list.setFocus([t]),this.list.setAnchor(t),n.length===s.length?this.list.setSelection([...s,t],e.browserEvent):this.list.setSelection(s,e.browserEvent)}}dispose(){this.disposables.dispose()}}class A7{constructor(e,t){this.styleElement=e,this.selectorSuffix=t}style(e){const t=this.selectorSuffix&&`.${this.selectorSuffix}`,i=[];e.listBackground&&i.push(`.monaco-list${t} .monaco-list-rows { background: ${e.listBackground}; }`),e.listFocusBackground&&(i.push(`.monaco-list${t}:focus .monaco-list-row.focused { background-color: ${e.listFocusBackground}; }`),i.push(`.monaco-list${t}:focus .monaco-list-row.focused:hover { background-color: ${e.listFocusBackground}; }`)),e.listFocusForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.focused { color: ${e.listFocusForeground}; }`),e.listActiveSelectionBackground&&(i.push(`.monaco-list${t}:focus .monaco-list-row.selected { background-color: ${e.listActiveSelectionBackground}; }`),i.push(`.monaco-list${t}:focus .monaco-list-row.selected:hover { background-color: ${e.listActiveSelectionBackground}; }`)),e.listActiveSelectionForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.selected { color: ${e.listActiveSelectionForeground}; }`),e.listActiveSelectionIconForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.selected .codicon { color: ${e.listActiveSelectionIconForeground}; }`),e.listFocusAndSelectionBackground&&i.push(` + .monaco-drag-image, + .monaco-list${t}:focus .monaco-list-row.selected.focused { background-color: ${e.listFocusAndSelectionBackground}; } + `),e.listFocusAndSelectionForeground&&i.push(` + .monaco-drag-image, + .monaco-list${t}:focus .monaco-list-row.selected.focused { color: ${e.listFocusAndSelectionForeground}; } + `),e.listInactiveFocusForeground&&(i.push(`.monaco-list${t} .monaco-list-row.focused { color: ${e.listInactiveFocusForeground}; }`),i.push(`.monaco-list${t} .monaco-list-row.focused:hover { color: ${e.listInactiveFocusForeground}; }`)),e.listInactiveSelectionIconForeground&&i.push(`.monaco-list${t} .monaco-list-row.focused .codicon { color: ${e.listInactiveSelectionIconForeground}; }`),e.listInactiveFocusBackground&&(i.push(`.monaco-list${t} .monaco-list-row.focused { background-color: ${e.listInactiveFocusBackground}; }`),i.push(`.monaco-list${t} .monaco-list-row.focused:hover { background-color: ${e.listInactiveFocusBackground}; }`)),e.listInactiveSelectionBackground&&(i.push(`.monaco-list${t} .monaco-list-row.selected { background-color: ${e.listInactiveSelectionBackground}; }`),i.push(`.monaco-list${t} .monaco-list-row.selected:hover { background-color: ${e.listInactiveSelectionBackground}; }`)),e.listInactiveSelectionForeground&&i.push(`.monaco-list${t} .monaco-list-row.selected { color: ${e.listInactiveSelectionForeground}; }`),e.listHoverBackground&&i.push(`.monaco-list${t}:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused) { background-color: ${e.listHoverBackground}; }`),e.listHoverForeground&&i.push(`.monaco-list${t}:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused) { color: ${e.listHoverForeground}; }`);const n=vl(e.listFocusAndSelectionOutline,vl(e.listSelectionOutline,e.listFocusOutline??""));n&&i.push(`.monaco-list${t}:focus .monaco-list-row.focused.selected { outline: 1px solid ${n}; outline-offset: -1px;}`),e.listFocusOutline&&i.push(` + .monaco-drag-image, + .monaco-list${t}:focus .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; } + .monaco-workbench.context-menu-visible .monaco-list${t}.last-focused .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; } + `);const s=vl(e.listSelectionOutline,e.listInactiveFocusOutline??"");s&&i.push(`.monaco-list${t} .monaco-list-row.focused.selected { outline: 1px dotted ${s}; outline-offset: -1px; }`),e.listSelectionOutline&&i.push(`.monaco-list${t} .monaco-list-row.selected { outline: 1px dotted ${e.listSelectionOutline}; outline-offset: -1px; }`),e.listInactiveFocusOutline&&i.push(`.monaco-list${t} .monaco-list-row.focused { outline: 1px dotted ${e.listInactiveFocusOutline}; outline-offset: -1px; }`),e.listHoverOutline&&i.push(`.monaco-list${t} .monaco-list-row:hover { outline: 1px dashed ${e.listHoverOutline}; outline-offset: -1px; }`),e.listDropOverBackground&&i.push(` + .monaco-list${t}.drop-target, + .monaco-list${t} .monaco-list-rows.drop-target, + .monaco-list${t} .monaco-list-row.drop-target { background-color: ${e.listDropOverBackground} !important; color: inherit !important; } + `),e.listDropBetweenBackground&&(i.push(` + .monaco-list${t} .monaco-list-rows.drop-target-before .monaco-list-row:first-child::before, + .monaco-list${t} .monaco-list-row.drop-target-before::before { + content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 1px; + background-color: ${e.listDropBetweenBackground}; + }`),i.push(` + .monaco-list${t} .monaco-list-rows.drop-target-after .monaco-list-row:last-child::after, + .monaco-list${t} .monaco-list-row.drop-target-after::after { + content: ""; position: absolute; bottom: 0px; left: 0px; width: 100%; height: 1px; + background-color: ${e.listDropBetweenBackground}; + }`)),e.tableColumnsBorder&&i.push(` + .monaco-table > .monaco-split-view2, + .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before, + .monaco-workbench:not(.reduce-motion) .monaco-table:hover > .monaco-split-view2, + .monaco-workbench:not(.reduce-motion) .monaco-table:hover > .monaco-split-view2 .monaco-sash.vertical::before { + border-color: ${e.tableColumnsBorder}; + } + + .monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2, + .monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before { + border-color: transparent; + } + `),e.tableOddRowsBackgroundColor&&i.push(` + .monaco-table .monaco-list-row[data-parity=odd]:not(.focused):not(.selected):not(:hover) .monaco-table-tr, + .monaco-table .monaco-list:not(:focus) .monaco-list-row[data-parity=odd].focused:not(.selected):not(:hover) .monaco-table-tr, + .monaco-table .monaco-list:not(.focused) .monaco-list-row[data-parity=odd].focused:not(.selected):not(:hover) .monaco-table-tr { + background-color: ${e.tableOddRowsBackgroundColor}; + } + `),this.styleElement.textContent=i.join(` +`)}}const _Y={listFocusBackground:"#7FB0D0",listActiveSelectionBackground:"#0E639C",listActiveSelectionForeground:"#FFFFFF",listActiveSelectionIconForeground:"#FFFFFF",listFocusAndSelectionOutline:"#90C2F9",listFocusAndSelectionBackground:"#094771",listFocusAndSelectionForeground:"#FFFFFF",listInactiveSelectionBackground:"#3F3F46",listInactiveSelectionIconForeground:"#FFFFFF",listHoverBackground:"#2A2D2E",listDropOverBackground:"#383B3D",listDropBetweenBackground:"#EEEEEE",treeIndentGuidesStroke:"#a9a9a9",treeInactiveIndentGuidesStroke:q.fromHex("#a9a9a9").transparent(.4).toString(),tableColumnsBorder:q.fromHex("#cccccc").transparent(.2).toString(),tableOddRowsBackgroundColor:q.fromHex("#cccccc").transparent(.04).toString(),listBackground:void 0,listFocusForeground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusForeground:void 0,listInactiveFocusBackground:void 0,listHoverForeground:void 0,listFocusOutline:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listHoverOutline:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},bY={keyboardSupport:!0,mouseSupport:!0,multipleSelectionSupport:!0,dnd:{getDragURI(){return null},onDragStart(){},onDragOver(){return!1},drop(){},dispose(){}}};function CY(o,e){const t=o.indexOf(e);if(t===-1)return[];const i=[];let n=t-1;for(;n>=0&&o[n]===e-(t-n);)i.push(o[n--]);for(i.reverse(),n=t;n=o.length)t.push(e[n++]);else if(n>=e.length)t.push(o[i++]);else if(o[i]===e[n]){t.push(o[i]),i++,n++;continue}else o[i]=o.length)t.push(e[n++]);else if(n>=e.length)t.push(o[i++]);else if(o[i]===e[n]){i++,n++;continue}else o[i]o-e;class wY{constructor(e,t){this._templateId=e,this.renderers=t}get templateId(){return this._templateId}renderTemplate(e){return this.renderers.map(t=>t.renderTemplate(e))}renderElement(e,t,i,n){let s=0;for(const r of this.renderers)r.renderElement(e,t,i[s++],n)}disposeElement(e,t,i,n){let s=0;for(const r of this.renderers)r.disposeElement?.(e,t,i[s],n),s+=1}disposeTemplate(e){let t=0;for(const i of this.renderers)i.disposeTemplate(e[t++])}}class yY{constructor(e){this.accessibilityProvider=e,this.templateId="a18n"}renderTemplate(e){return{container:e,disposables:new X}}renderElement(e,t,i){const n=this.accessibilityProvider.getAriaLabel(e),s=n&&typeof n!="string"?n:wg(n);i.disposables.add(We(a=>{this.setAriaLabel(a.readObservable(s),i.container)}));const r=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(e);typeof r=="number"?i.container.setAttribute("aria-level",`${r}`):i.container.removeAttribute("aria-level")}setAriaLabel(e,t){e?t.setAttribute("aria-label",e):t.removeAttribute("aria-label")}disposeElement(e,t,i,n){i.disposables.clear()}disposeTemplate(e){e.disposables.dispose()}}class SY{constructor(e,t){this.list=e,this.dnd=t}getDragElements(e){const t=this.list.getSelectedElements();return t.indexOf(e)>-1?t:[e]}getDragURI(e){return this.dnd.getDragURI(e)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e,t)}onDragStart(e,t){this.dnd.onDragStart?.(e,t)}onDragOver(e,t,i,n,s){return this.dnd.onDragOver(e,t,i,n,s)}onDragLeave(e,t,i,n){this.dnd.onDragLeave?.(e,t,i,n)}onDragEnd(e){this.dnd.onDragEnd?.(e)}drop(e,t,i,n,s){this.dnd.drop(e,t,i,n,s)}dispose(){this.dnd.dispose()}}class go{get onDidChangeFocus(){return J.map(this.eventBufferer.wrapEvent(this.focus.onChange),e=>this.toListEvent(e),this.disposables)}get onDidChangeSelection(){return J.map(this.eventBufferer.wrapEvent(this.selection.onChange),e=>this.toListEvent(e),this.disposables)}get domId(){return this.view.domId}get onDidScroll(){return this.view.onDidScroll}get onMouseClick(){return this.view.onMouseClick}get onMouseDblClick(){return this.view.onMouseDblClick}get onMouseMiddleClick(){return this.view.onMouseMiddleClick}get onPointer(){return this.mouseController.onPointer}get onMouseDown(){return this.view.onMouseDown}get onMouseOver(){return this.view.onMouseOver}get onMouseOut(){return this.view.onMouseOut}get onTouchStart(){return this.view.onTouchStart}get onTap(){return this.view.onTap}get onContextMenu(){let e=!1;const t=J.chain(this.disposables.add(new ze(this.view.domNode,"keydown")).event,s=>s.map(r=>new Nt(r)).filter(r=>e=r.keyCode===58||r.shiftKey&&r.keyCode===68).map(r=>je.stop(r,!0)).filter(()=>!1)),i=J.chain(this.disposables.add(new ze(this.view.domNode,"keyup")).event,s=>s.forEach(()=>e=!1).map(r=>new Nt(r)).filter(r=>r.keyCode===58||r.shiftKey&&r.keyCode===68).map(r=>je.stop(r,!0)).map(({browserEvent:r})=>{const a=this.getFocus(),l=a.length?a[0]:void 0,c=typeof l<"u"?this.view.element(l):void 0,d=typeof l<"u"?this.view.domElement(l):this.view.domNode;return{index:l,element:c,anchor:d,browserEvent:r}})),n=J.chain(this.view.onContextMenu,s=>s.filter(r=>!e).map(({element:r,index:a,browserEvent:l})=>({element:r,index:a,anchor:new ur(fe(this.view.domNode),l),browserEvent:l})));return J.any(t,i,n)}get onKeyDown(){return this.disposables.add(new ze(this.view.domNode,"keydown")).event}get onDidFocus(){return J.signal(this.disposables.add(new ze(this.view.domNode,"focus",!0)).event)}get onDidBlur(){return J.signal(this.disposables.add(new ze(this.view.domNode,"blur",!0)).event)}constructor(e,t,i,n,s=bY){this.user=e,this._options=s,this.focus=new jC("focused"),this.anchor=new jC("anchor"),this.eventBufferer=new W_,this._ariaLabel="",this.disposables=new X,this._onDidDispose=new A,this.onDidDispose=this._onDidDispose.event;const r=this._options.accessibilityProvider&&this._options.accessibilityProvider.getWidgetRole?this._options.accessibilityProvider?.getWidgetRole():"list";this.selection=new dY(r!=="listbox");const a=[this.focus.renderer,this.selection.renderer];this.accessibilityProvider=s.accessibilityProvider,this.accessibilityProvider&&(a.push(new yY(this.accessibilityProvider)),this.accessibilityProvider.onDidChangeActiveDescendant?.(this.onDidChangeActiveDescendant,this,this.disposables)),n=n.map(c=>new wY(c.templateId,[...a,c]));const l={...s,dnd:s.dnd&&new SY(this,s.dnd)};if(this.view=this.createListView(t,i,n,l),this.view.domNode.setAttribute("role",r),s.styleController)this.styleController=s.styleController(this.view.domId);else{const c=Vs(this.view.domNode);this.styleController=new A7(c,this.view.domId)}if(this.spliceable=new eY([new MS(this.focus,this.view,s.identityProvider),new MS(this.selection,this.view,s.identityProvider),new MS(this.anchor,this.view,s.identityProvider),this.view]),this.disposables.add(this.focus),this.disposables.add(this.selection),this.disposables.add(this.anchor),this.disposables.add(this.view),this.disposables.add(this._onDidDispose),this.disposables.add(new mY(this,this.view)),(typeof s.keyboardSupport!="boolean"||s.keyboardSupport)&&(this.keyboardController=new N7(this,this.view,s),this.disposables.add(this.keyboardController)),s.keyboardNavigationLabelProvider){const c=s.keyboardNavigationDelegate||fY;this.typeNavigationController=new gY(this,this.view,s.keyboardNavigationLabelProvider,s.keyboardNavigationEventFilter??(()=>!0),c),this.disposables.add(this.typeNavigationController)}this.mouseController=this.createMouseController(s),this.disposables.add(this.mouseController),this.onDidChangeFocus(this._onFocusChange,this,this.disposables),this.onDidChangeSelection(this._onSelectionChange,this,this.disposables),this.accessibilityProvider&&(this.ariaLabel=this.accessibilityProvider.getWidgetAriaLabel()),this._options.multipleSelectionSupport!==!1&&this.view.domNode.setAttribute("aria-multiselectable","true")}createListView(e,t,i,n){return new Bo(e,t,i,n)}createMouseController(e){return new R7(this)}updateOptions(e={}){this._options={...this._options,...e},this.typeNavigationController?.updateOptions(this._options),this._options.multipleSelectionController!==void 0&&(this._options.multipleSelectionSupport?this.view.domNode.setAttribute("aria-multiselectable","true"):this.view.domNode.removeAttribute("aria-multiselectable")),this.mouseController.updateOptions(e),this.keyboardController?.updateOptions(e),this.view.updateOptions(e)}get options(){return this._options}splice(e,t,i=[]){if(e<0||e>this.view.length)throw new id(this.user,`Invalid start index: ${e}`);if(t<0)throw new id(this.user,`Invalid delete count: ${t}`);t===0&&i.length===0||this.eventBufferer.bufferEvents(()=>this.spliceable.splice(e,t,i))}rerender(){this.view.rerender()}element(e){return this.view.element(e)}indexOf(e){return this.view.indexOf(e)}indexAt(e){return this.view.indexAt(e)}get length(){return this.view.length}get contentHeight(){return this.view.contentHeight}get onDidChangeContentHeight(){return this.view.onDidChangeContentHeight}get scrollTop(){return this.view.getScrollTop()}set scrollTop(e){this.view.setScrollTop(e)}get scrollHeight(){return this.view.scrollHeight}get renderHeight(){return this.view.renderHeight}get firstVisibleIndex(){return this.view.firstVisibleIndex}get ariaLabel(){return this._ariaLabel}set ariaLabel(e){this._ariaLabel=e,this.view.domNode.setAttribute("aria-label",e)}domFocus(){this.view.domNode.focus({preventScroll:!0})}layout(e,t){this.view.layout(e,t)}setSelection(e,t){for(const i of e)if(i<0||i>=this.length)throw new id(this.user,`Invalid index ${i}`);this.selection.set(e,t)}getSelection(){return this.selection.get()}getSelectedElements(){return this.getSelection().map(e=>this.view.element(e))}setAnchor(e){if(typeof e>"u"){this.anchor.set([]);return}if(e<0||e>=this.length)throw new id(this.user,`Invalid index ${e}`);this.anchor.set([e])}getAnchor(){return xN(this.anchor.get(),void 0)}getAnchorElement(){const e=this.getAnchor();return typeof e>"u"?void 0:this.element(e)}setFocus(e,t){for(const i of e)if(i<0||i>=this.length)throw new id(this.user,`Invalid index ${i}`);this.focus.set(e,t)}focusNext(e=1,t=!1,i,n){if(this.length===0)return;const s=this.focus.get(),r=this.findNextIndex(s.length>0?s[0]+e:0,t,n);r>-1&&this.setFocus([r],i)}focusPrevious(e=1,t=!1,i,n){if(this.length===0)return;const s=this.focus.get(),r=this.findPreviousIndex(s.length>0?s[0]-e:0,t,n);r>-1&&this.setFocus([r],i)}async focusNextPage(e,t){let i=this.view.indexAt(this.view.getScrollTop()+this.view.renderHeight);i=i===0?0:i-1;const n=this.getFocus()[0];if(n!==i&&(n===void 0||i>n)){const s=this.findPreviousIndex(i,!1,t);s>-1&&n!==s?this.setFocus([s],e):this.setFocus([i],e)}else{const s=this.view.getScrollTop();let r=s+this.view.renderHeight;i>n&&(r-=this.view.elementHeight(i)),this.view.setScrollTop(r),this.view.getScrollTop()!==s&&(this.setFocus([]),await og(0),await this.focusNextPage(e,t))}}async focusPreviousPage(e,t,i=()=>0){let n;const s=i(),r=this.view.getScrollTop()+s;r===0?n=this.view.indexAt(r):n=this.view.indexAfter(r-1);const a=this.getFocus()[0];if(a!==n&&(a===void 0||a>=n)){const l=this.findNextIndex(n,!1,t);l>-1&&a!==l?this.setFocus([l],e):this.setFocus([n],e)}else{const l=r;this.view.setScrollTop(r-this.view.renderHeight-s),this.view.getScrollTop()+i()!==l&&(this.setFocus([]),await og(0),await this.focusPreviousPage(e,t,i))}}focusLast(e,t){if(this.length===0)return;const i=this.findPreviousIndex(this.length-1,!1,t);i>-1&&this.setFocus([i],e)}focusFirst(e,t){this.focusNth(0,e,t)}focusNth(e,t,i){if(this.length===0)return;const n=this.findNextIndex(e,!1,i);n>-1&&this.setFocus([n],t)}findNextIndex(e,t=!1,i){for(let n=0;n=this.length&&!t)return-1;if(e=e%this.length,!i||i(this.element(e)))return e;e++}return-1}findPreviousIndex(e,t=!1,i){for(let n=0;nthis.view.element(e))}reveal(e,t,i=0){if(e<0||e>=this.length)throw new id(this.user,`Invalid index ${e}`);const n=this.view.getScrollTop(),s=this.view.elementTop(e),r=this.view.elementHeight(e);if(Pg(t)){const a=r-this.view.renderHeight+i;this.view.setScrollTop(a*bn(t,0,1)+s-i)}else{const a=s+r,l=n+this.view.renderHeight;s=l||(s=l&&r>=this.view.renderHeight?this.view.setScrollTop(s-i):a>=l&&this.view.setScrollTop(a-this.view.renderHeight))}}getRelativeTop(e,t=0){if(e<0||e>=this.length)throw new id(this.user,`Invalid index ${e}`);const i=this.view.getScrollTop(),n=this.view.elementTop(e),s=this.view.elementHeight(e);if(ni+this.view.renderHeight)return null;const r=s-this.view.renderHeight+t;return Math.abs((i+t-n)/r)}getHTMLElement(){return this.view.domNode}getScrollableElement(){return this.view.scrollableElementDomNode}getElementID(e){return this.view.getElementDomId(e)}getElementTop(e){return this.view.elementTop(e)}style(e){this.styleController.style(e)}toListEvent({indexes:e,browserEvent:t}){return{indexes:e,elements:e.map(i=>this.view.element(i)),browserEvent:t}}_onFocusChange(){const e=this.focus.get();this.view.domNode.classList.toggle("element-focused",e.length>0),this.onDidChangeActiveDescendant()}onDidChangeActiveDescendant(){const e=this.focus.get();if(e.length>0){let t;this.accessibilityProvider?.getActiveDescendantId&&(t=this.accessibilityProvider.getActiveDescendantId(this.view.element(e[0]))),this.view.domNode.setAttribute("aria-activedescendant",t||this.view.getElementDomId(e[0]))}else this.view.domNode.removeAttribute("aria-activedescendant")}_onSelectionChange(){const e=this.selection.get();this.view.domNode.classList.toggle("selection-none",e.length===0),this.view.domNode.classList.toggle("selection-single",e.length===1),this.view.domNode.classList.toggle("selection-multiple",e.length>1)}dispose(){this._onDidDispose.fire(),this.disposables.dispose(),this._onDidDispose.dispose()}}Gc([Jt],go.prototype,"onDidChangeFocus",null);Gc([Jt],go.prototype,"onDidChangeSelection",null);Gc([Jt],go.prototype,"onContextMenu",null);Gc([Jt],go.prototype,"onKeyDown",null);Gc([Jt],go.prototype,"onDidFocus",null);Gc([Jt],go.prototype,"onDidBlur",null);const $d=ce,P7="selectOption.entry.template";class LY{get templateId(){return P7}renderTemplate(e){const t=Object.create(null);return t.root=e,t.text=Z(e,$d(".option-text")),t.detail=Z(e,$d(".option-detail")),t.decoratorRight=Z(e,$d(".option-decorator-right")),t}renderElement(e,t,i){const n=i,s=e.text,r=e.detail,a=e.decoratorRight,l=e.isDisabled;n.text.textContent=s,n.detail.textContent=r||"",n.decoratorRight.innerText=a||"",l?n.root.classList.add("option-disabled"):n.root.classList.remove("option-disabled")}disposeTemplate(e){}}const Hr=class Hr extends z{constructor(e,t,i,n,s){super(),this.options=[],this._currentSelection=0,this._hasDetails=!1,this._skipLayout=!1,this._sticky=!1,this._isVisible=!1,this.styles=n,this.selectBoxOptions=s||Object.create(null),typeof this.selectBoxOptions.minBottomMargin!="number"?this.selectBoxOptions.minBottomMargin=Hr.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN:this.selectBoxOptions.minBottomMargin<0&&(this.selectBoxOptions.minBottomMargin=0),this.selectElement=document.createElement("select"),this.selectElement.className="monaco-select-box monaco-select-box-dropdown-padding",typeof this.selectBoxOptions.ariaLabel=="string"&&this.selectElement.setAttribute("aria-label",this.selectBoxOptions.ariaLabel),typeof this.selectBoxOptions.ariaDescription=="string"&&this.selectElement.setAttribute("aria-description",this.selectBoxOptions.ariaDescription),this._onDidSelect=new A,this._register(this._onDidSelect),this.registerListeners(),this.constructSelectDropDown(i),this.selected=t||0,e&&this.setOptions(e,t),this.initStyleSheet()}setTitle(e){!this._hover&&e?this._hover=this._register(La().setupManagedHover(Ks("mouse"),this.selectElement,e)):this._hover&&this._hover.update(e)}getHeight(){return 22}getTemplateId(){return P7}constructSelectDropDown(e){this.contextViewProvider=e,this.selectDropDownContainer=ce(".monaco-select-box-dropdown-container"),this.selectDropDownContainer.classList.add("monaco-select-box-dropdown-padding"),this.selectionDetailsPane=Z(this.selectDropDownContainer,$d(".select-box-details-pane"));const t=Z(this.selectDropDownContainer,$d(".select-box-dropdown-container-width-control")),i=Z(t,$d(".width-control-div"));this.widthControlElement=document.createElement("span"),this.widthControlElement.className="option-text-width-control",Z(i,this.widthControlElement),this._dropDownPosition=0,this.styleElement=Vs(this.selectDropDownContainer),this.selectDropDownContainer.setAttribute("draggable","true"),this._register(U(this.selectDropDownContainer,ee.DRAG_START,n=>{je.stop(n,!0)}))}registerListeners(){this._register(jt(this.selectElement,"change",t=>{this.selected=t.target.selectedIndex,this._onDidSelect.fire({index:t.target.selectedIndex,selected:t.target.value}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)})),this._register(U(this.selectElement,ee.CLICK,t=>{je.stop(t),this._isVisible?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(U(this.selectElement,ee.MOUSE_DOWN,t=>{je.stop(t)}));let e;this._register(U(this.selectElement,"touchstart",t=>{e=this._isVisible})),this._register(U(this.selectElement,"touchend",t=>{je.stop(t),e?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(U(this.selectElement,ee.KEY_DOWN,t=>{const i=new Nt(t);let n=!1;Ue?(i.keyCode===18||i.keyCode===16||i.keyCode===10||i.keyCode===3)&&(n=!0):(i.keyCode===18&&i.altKey||i.keyCode===16&&i.altKey||i.keyCode===10||i.keyCode===3)&&(n=!0),n&&(this.showSelectDropDown(),je.stop(t,!0))}))}get onDidSelect(){return this._onDidSelect.event}setOptions(e,t){li(this.options,e)||(this.options=e,this.selectElement.options.length=0,this._hasDetails=!1,this._cachedMaxDetailsHeight=void 0,this.options.forEach((i,n)=>{this.selectElement.add(this.createOption(i.text,n,i.isDisabled)),typeof i.description=="string"&&(this._hasDetails=!0)})),t!==void 0&&(this.select(t),this._currentSelection=this.selected)}setOptionsList(){this.selectList?.splice(0,this.selectList.length,this.options)}select(e){e>=0&&ethis.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)}focus(){this.selectElement&&(this.selectElement.tabIndex=0,this.selectElement.focus())}blur(){this.selectElement&&(this.selectElement.tabIndex=-1,this.selectElement.blur())}setFocusable(e){this.selectElement.tabIndex=e?0:-1}render(e){this.container=e,e.classList.add("select-container"),e.appendChild(this.selectElement),this.styleSelectElement()}initStyleSheet(){const e=[];this.styles.listFocusBackground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { background-color: ${this.styles.listFocusBackground} !important; }`),this.styles.listFocusForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { color: ${this.styles.listFocusForeground} !important; }`),this.styles.decoratorRightForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.focused) .option-decorator-right { color: ${this.styles.decoratorRightForeground}; }`),this.styles.selectBackground&&this.styles.selectBorder&&this.styles.selectBorder!==this.styles.selectBackground?(e.push(`.monaco-select-box-dropdown-container { border: 1px solid ${this.styles.selectBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectBorder} } `)):this.styles.selectListBorder&&(e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectListBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectListBorder} } `)),this.styles.listHoverForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { color: ${this.styles.listHoverForeground} !important; }`),this.styles.listHoverBackground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { background-color: ${this.styles.listHoverBackground} !important; }`),this.styles.listFocusOutline&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { outline: 1.6px dotted ${this.styles.listFocusOutline} !important; outline-offset: -1.6px !important; }`),this.styles.listHoverOutline&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { outline: 1.6px dashed ${this.styles.listHoverOutline} !important; outline-offset: -1.6px !important; }`),e.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled.focused { background-color: transparent !important; color: inherit !important; outline: none !important; }"),e.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled:hover { background-color: transparent !important; color: inherit !important; outline: none !important; }"),this.styleElement.textContent=e.join(` +`)}styleSelectElement(){const e=this.styles.selectBackground??"",t=this.styles.selectForeground??"",i=this.styles.selectBorder??"";this.selectElement.style.backgroundColor=e,this.selectElement.style.color=t,this.selectElement.style.borderColor=i}styleList(){const e=this.styles.selectBackground??"",t=vl(this.styles.selectListBackground,e);this.selectDropDownListContainer.style.backgroundColor=t,this.selectionDetailsPane.style.backgroundColor=t;const i=this.styles.focusBorder??"";this.selectDropDownContainer.style.outlineColor=i,this.selectDropDownContainer.style.outlineOffset="-1px",this.selectList.style(this.styles)}createOption(e,t,i){const n=document.createElement("option");return n.value=e,n.text=e,n.disabled=!!i,n}showSelectDropDown(){this.selectionDetailsPane.innerText="",!(!this.contextViewProvider||this._isVisible)&&(this.createSelectList(this.selectDropDownContainer),this.setOptionsList(),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:e=>this.renderSelectDropDown(e,!0),layout:()=>{this.layoutSelectDropDown()},onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._isVisible=!0,this.hideSelectDropDown(!1),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:e=>this.renderSelectDropDown(e),layout:()=>this.layoutSelectDropDown(),onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._currentSelection=this.selected,this._isVisible=!0,this.selectElement.setAttribute("aria-expanded","true"))}hideSelectDropDown(e){!this.contextViewProvider||!this._isVisible||(this._isVisible=!1,this.selectElement.setAttribute("aria-expanded","false"),e&&this.selectElement.focus(),this.contextViewProvider.hideContextView())}renderSelectDropDown(e,t){return e.appendChild(this.selectDropDownContainer),this.layoutSelectDropDown(t),{dispose:()=>{this.selectDropDownContainer.remove()}}}measureMaxDetailsHeight(){let e=0;return this.options.forEach((t,i)=>{this.updateDetail(i),this.selectionDetailsPane.offsetHeight>e&&(e=this.selectionDetailsPane.offsetHeight)}),e}layoutSelectDropDown(e){if(this._skipLayout)return!1;if(this.selectList){this.selectDropDownContainer.classList.add("visible");const t=fe(this.selectElement),i=gi(this.selectElement),n=fe(this.selectElement).getComputedStyle(this.selectElement),s=parseFloat(n.getPropertyValue("--dropdown-padding-top"))+parseFloat(n.getPropertyValue("--dropdown-padding-bottom")),r=t.innerHeight-i.top-i.height-(this.selectBoxOptions.minBottomMargin||0),a=i.top-Hr.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN,l=this.selectElement.offsetWidth,c=this.setWidthControlElement(this.widthControlElement),d=Math.max(c,Math.round(l)).toString()+"px";this.selectDropDownContainer.style.width=d,this.selectList.getHTMLElement().style.height="",this.selectList.layout();let h=this.selectList.contentHeight;this._hasDetails&&this._cachedMaxDetailsHeight===void 0&&(this._cachedMaxDetailsHeight=this.measureMaxDetailsHeight());const u=this._hasDetails?this._cachedMaxDetailsHeight:0,f=h+s+u,g=Math.floor((r-s-u)/this.getHeight()),p=Math.floor((a-s-u)/this.getHeight());if(e)return i.top+i.height>t.innerHeight-22||i.topg&&this.options.length>g?(this._dropDownPosition=1,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectionDetailsPane.classList.remove("border-top"),this.selectionDetailsPane.classList.add("border-bottom")):(this._dropDownPosition=0,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectionDetailsPane.classList.remove("border-bottom"),this.selectionDetailsPane.classList.add("border-top")),!0);if(i.top+i.height>t.innerHeight-22||i.topr&&(h=g*this.getHeight())}else f>a&&(h=p*this.getHeight());return this.selectList.layout(h),this.selectList.domFocus(),this.selectList.length>0&&(this.selectList.setFocus([this.selected||0]),this.selectList.reveal(this.selectList.getFocus()[0]||0)),this._hasDetails?(this.selectList.getHTMLElement().style.height=h+s+"px",this.selectDropDownContainer.style.height=""):this.selectDropDownContainer.style.height=h+s+"px",this.updateDetail(this.selected),this.selectDropDownContainer.style.width=d,this.selectDropDownListContainer.setAttribute("tabindex","0"),this.selectElement.classList.add("synthetic-focus"),this.selectDropDownContainer.classList.add("synthetic-focus"),!0}else return!1}setWidthControlElement(e){let t=0;if(e){let i=0,n=0;this.options.forEach((s,r)=>{const a=s.detail?s.detail.length:0,l=s.decoratorRight?s.decoratorRight.length:0,c=s.text.length+a+l;c>n&&(i=r,n=c)}),e.textContent=this.options[i].text+(this.options[i].decoratorRight?this.options[i].decoratorRight+" ":""),t=qp(e)}return t}createSelectList(e){if(this.selectList)return;this.selectDropDownListContainer=Z(e,$d(".select-box-dropdown-list-container")),this.listRenderer=new LY,this.selectList=this._register(new go("SelectBoxCustom",this.selectDropDownListContainer,this,[this.listRenderer],{useShadows:!1,verticalScrollMode:3,keyboardSupport:!1,mouseSupport:!1,accessibilityProvider:{getAriaLabel:n=>{let s=n.text;return n.detail&&(s+=`. ${n.detail}`),n.decoratorRight&&(s+=`. ${n.decoratorRight}`),n.description&&(s+=`. ${n.description}`),s},getWidgetAriaLabel:()=>m({key:"selectBox",comment:["Behave like native select dropdown element."]},"Select Box"),getRole:()=>Ue?"":"option",getWidgetRole:()=>"listbox"}})),this.selectBoxOptions.ariaLabel&&(this.selectList.ariaLabel=this.selectBoxOptions.ariaLabel);const t=this._register(new ze(this.selectDropDownListContainer,"keydown")),i=J.chain(t.event,n=>n.filter(()=>this.selectList.length>0).map(s=>new Nt(s)));this._register(J.chain(i,n=>n.filter(s=>s.keyCode===3))(this.onEnter,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===2))(this.onEnter,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===9))(this.onEscape,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===16))(this.onUpArrow,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===18))(this.onDownArrow,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===12))(this.onPageDown,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===11))(this.onPageUp,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===14))(this.onHome,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===13))(this.onEnd,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode>=21&&s.keyCode<=56||s.keyCode>=85&&s.keyCode<=113))(this.onCharacter,this)),this._register(U(this.selectList.getHTMLElement(),ee.POINTER_UP,n=>this.onPointerUp(n))),this._register(this.selectList.onMouseOver(n=>typeof n.index<"u"&&this.selectList.setFocus([n.index]))),this._register(this.selectList.onDidChangeFocus(n=>this.onListFocus(n))),this._register(U(this.selectDropDownContainer,ee.FOCUS_OUT,n=>{!this._isVisible||yi(n.relatedTarget,this.selectDropDownContainer)||this.onListBlur()})),this.selectList.getHTMLElement().setAttribute("aria-label",this.selectBoxOptions.ariaLabel||""),this.selectList.getHTMLElement().setAttribute("aria-expanded","true"),this.styleList()}onPointerUp(e){if(!this.selectList.length)return;je.stop(e);const t=e.target;if(!t||t.classList.contains("slider"))return;const i=t.closest(".monaco-list-row");if(!i)return;const n=Number(i.getAttribute("data-index")),s=i.classList.contains("option-disabled");n>=0&&n{for(let r=0;rthis.selected+2)this.selected+=2;else{if(t)return;this.selected++}this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0])}}onUpArrow(e){this.selected>0&&(je.stop(e,!0),this.options[this.selected-1].isDisabled&&this.selected>1?this.selected-=2:this.selected--,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]))}onPageUp(e){je.stop(e),this.selectList.focusPreviousPage(),setTimeout(()=>{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected>0&&(this.selected--,this.selectList.setFocus([this.selected])),this.selectList.reveal(this.selected),this.select(this.selected)},1)}onHome(e){je.stop(e),!(this.options.length<2)&&(this.selected=0,this.options[this.selected].isDisabled&&this.selected>1&&this.selected++,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onEnd(e){je.stop(e),!(this.options.length<2)&&(this.selected=this.options.length-1,this.options[this.selected].isDisabled&&this.selected>1&&this.selected--,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onCharacter(e){const t=el.toString(e.keyCode);let i=-1;for(let n=0;n{this._register(U(this.selectElement,e,t=>{this.selectElement.focus()}))}),this._register(jt(this.selectElement,"click",e=>{je.stop(e,!0)})),this._register(jt(this.selectElement,"change",e=>{this.selectElement.title=e.target.value,this._onDidSelect.fire({index:e.target.selectedIndex,selected:e.target.value})})),this._register(jt(this.selectElement,"keydown",e=>{let t=!1;Ue?(e.keyCode===18||e.keyCode===16||e.keyCode===10)&&(t=!0):(e.keyCode===18&&e.altKey||e.keyCode===10||e.keyCode===3)&&(t=!0),t&&e.stopPropagation()}))}get onDidSelect(){return this._onDidSelect.event}setOptions(e,t){(!this.options||!li(this.options,e))&&(this.options=e,this.selectElement.options.length=0,this.options.forEach((i,n)=>{this.selectElement.add(this.createOption(i.text,n,i.isDisabled))})),t!==void 0&&this.select(t)}select(e){this.options.length===0?this.selected=0:e>=0&&ethis.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.selected{this.element&&this.handleActionChangeEvent(n)}))}handleActionChangeEvent(e){e.enabled!==void 0&&this.updateEnabled(),e.checked!==void 0&&this.updateChecked(),e.class!==void 0&&this.updateClass(),e.label!==void 0&&(this.updateLabel(),this.updateTooltip()),e.tooltip!==void 0&&this.updateTooltip()}get actionRunner(){return this._actionRunner||(this._actionRunner=this._register(new Oh)),this._actionRunner}set actionRunner(e){this._actionRunner=e}isEnabled(){return this._action.enabled}setActionContext(e){this._context=e}render(e){const t=this.element=e;this._register(fn.addTarget(e));const i=this.options&&this.options.draggable;i&&(e.draggable=!0,Mo&&this._register(U(e,ee.DRAG_START,n=>n.dataTransfer?.setData(D7.TEXT,this._action.label)))),this._register(U(t,St.Tap,n=>this.onClick(n,!0))),this._register(U(t,ee.MOUSE_DOWN,n=>{i||je.stop(n,!0),this._action.enabled&&n.button===0&&t.classList.add("active")})),Ue&&this._register(U(t,ee.CONTEXT_MENU,n=>{n.button===0&&n.ctrlKey===!0&&this.onClick(n)})),this._register(U(t,ee.CLICK,n=>{je.stop(n,!0),this.options&&this.options.isMenu||this.onClick(n)})),this._register(U(t,ee.DBLCLICK,n=>{je.stop(n,!0)})),[ee.MOUSE_UP,ee.MOUSE_OUT].forEach(n=>{this._register(U(t,n,s=>{je.stop(s),t.classList.remove("active")}))})}onClick(e,t=!1){je.stop(e,!0);const i=xs(this._context)?this.options?.useEventAsContext?e:{preserveFocus:t}:this._context;this.actionRunner.run(this._action,i)}focus(){this.element&&(this.element.tabIndex=0,this.element.focus(),this.element.classList.add("focused"))}blur(){this.element&&(this.element.blur(),this.element.tabIndex=-1,this.element.classList.remove("focused"))}setFocusable(e){this.element&&(this.element.tabIndex=e?0:-1)}get trapsArrowNavigation(){return!1}updateEnabled(){}updateLabel(){}getClass(){return this.action.class}getTooltip(){return this.action.tooltip}updateTooltip(){if(!this.element)return;const e=this.getTooltip()??"";if(this.updateAriaLabel(),this.options.hoverDelegate?.showNativeHover)this.element.title=e;else if(!this.customHover&&e!==""){const t=this.options.hoverDelegate??Ks("element");this.customHover=this._store.add(La().setupManagedHover(t,this.element,e))}else this.customHover&&this.customHover.update(e)}updateAriaLabel(){if(this.element){const e=this.getTooltip()??"";this.element.setAttribute("aria-label",e)}}updateClass(){}updateChecked(){}dispose(){this.element&&(this.element.remove(),this.element=void 0),this._context=void 0,super.dispose()}}class dy extends or{constructor(e,t,i){super(e,t,i),this.options=i,this.options.icon=i.icon!==void 0?i.icon:!1,this.options.label=i.label!==void 0?i.label:!0,this.cssClass=""}render(e){super.render(e),ai(this.element);const t=document.createElement("a");if(t.classList.add("action-label"),t.setAttribute("role",this.getDefaultAriaRole()),this.label=t,this.element.appendChild(t),this.options.label&&this.options.keybinding){const i=document.createElement("span");i.classList.add("keybinding"),i.textContent=this.options.keybinding,this.element.appendChild(i)}this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()}getDefaultAriaRole(){return this._action.id===Gi.ID?"presentation":this.options.isMenu?"menuitem":this.options.isTabList?"tab":"button"}focus(){this.label&&(this.label.tabIndex=0,this.label.focus())}blur(){this.label&&(this.label.tabIndex=-1)}setFocusable(e){this.label&&(this.label.tabIndex=e?0:-1)}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this.action.label)}getTooltip(){let e=null;return this.action.tooltip?e=this.action.tooltip:!this.options.label&&this.action.label&&this.options.icon&&(e=this.action.label,this.options.keybinding&&(e=m({key:"titleLabel",comment:["action title","action keybinding"]},"{0} ({1})",e,this.options.keybinding))),e??void 0}updateClass(){this.cssClass&&this.label&&this.label.classList.remove(...this.cssClass.split(" ")),this.options.icon?(this.cssClass=this.getClass(),this.label&&(this.label.classList.add("codicon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" "))),this.updateEnabled()):this.label?.classList.remove("codicon")}updateEnabled(){this.action.enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),this.label.classList.remove("disabled")),this.element?.classList.remove("disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),this.label.classList.add("disabled")),this.element?.classList.add("disabled"))}updateAriaLabel(){if(this.label){const e=this.getTooltip()??"";this.label.setAttribute("aria-label",e)}}updateChecked(){this.label&&(this.action.checked!==void 0?(this.label.classList.toggle("checked",this.action.checked),this.options.isTabList?this.label.setAttribute("aria-selected",this.action.checked?"true":"false"):(this.label.setAttribute("aria-checked",this.action.checked?"true":"false"),this.label.setAttribute("role","checkbox"))):(this.label.classList.remove("checked"),this.label.removeAttribute(this.options.isTabList?"aria-selected":"aria-checked"),this.label.setAttribute("role",this.getDefaultAriaRole())))}}class DY extends or{constructor(e,t,i,n,s,r,a){super(e,t),this.selectBox=new kY(i,n,s,r,a),this.selectBox.setFocusable(!1),this._register(this.selectBox),this.registerListeners()}select(e){this.selectBox.select(e)}registerListeners(){this._register(this.selectBox.onDidSelect(e=>this.runAction(e.selected,e.index)))}runAction(e,t){this.actionRunner.run(this._action,this.getActionContext(e,t))}getActionContext(e,t){return e}setFocusable(e){this.selectBox.setFocusable(e)}focus(){this.selectBox?.focus()}blur(){this.selectBox?.blur()}render(e){this.selectBox.render(e)}}class IY extends Oh{constructor(e,t){super(),this._onDidChangeVisibility=this._register(new A),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this._element=Z(e,ce(".monaco-dropdown")),this._label=Z(this._element,ce(".dropdown-label"));let i=t.labelRenderer;i||(i=s=>(s.textContent=t.label||"",null));for(const s of[ee.CLICK,ee.MOUSE_DOWN,St.Tap])this._register(U(this.element,s,r=>je.stop(r,!0)));for(const s of[ee.MOUSE_DOWN,St.Tap])this._register(U(this._label,s,r=>{tT(r)&&(r.detail>1||r.button!==0)||(this.visible?this.hide():this.show())}));this._register(U(this._label,ee.KEY_UP,s=>{const r=new Nt(s);(r.equals(3)||r.equals(10))&&(je.stop(s,!0),this.visible?this.hide():this.show())}));const n=i(this._label);n&&this._register(n),this._register(fn.addTarget(this._label))}get element(){return this._element}show(){this.visible||(this.visible=!0,this._onDidChangeVisibility.fire(!0))}hide(){this.visible&&(this.visible=!1,this._onDidChangeVisibility.fire(!1))}dispose(){super.dispose(),this.hide(),this.boxContainer&&(this.boxContainer.remove(),this.boxContainer=void 0),this.contents&&(this.contents.remove(),this.contents=void 0),this._label&&(this._label.remove(),this._label=void 0)}}class EY extends IY{constructor(e,t){super(e,t),this._options=t,this._actions=[],this.actions=t.actions||[]}set menuOptions(e){this._menuOptions=e}get menuOptions(){return this._menuOptions}get actions(){return this._options.actionProvider?this._options.actionProvider.getActions():this._actions}set actions(e){this._actions=e}show(){super.show(),this.element.classList.add("active"),this._options.contextMenuProvider.showContextMenu({getAnchor:()=>this.element,getActions:()=>this.actions,getActionsContext:()=>this.menuOptions?this.menuOptions.context:null,getActionViewItem:(e,t)=>this.menuOptions&&this.menuOptions.actionViewItemProvider?this.menuOptions.actionViewItemProvider(e,t):void 0,getKeyBinding:e=>this.menuOptions&&this.menuOptions.getKeyBinding?this.menuOptions.getKeyBinding(e):void 0,getMenuClassName:()=>this._options.menuClassName||"",onHide:()=>this.onHide(),actionRunner:this.menuOptions?this.menuOptions.actionRunner:void 0,anchorAlignment:this.menuOptions?this.menuOptions.anchorAlignment:0,domForShadowRoot:this._options.menuAsChild?this.element:void 0,skipTelemetry:this._options.skipTelemetry})}hide(){super.hide()}onHide(){this.hide(),this.element.classList.remove("active")}}class qC extends or{constructor(e,t,i,n=Object.create(null)){super(null,e,n),this.actionItem=null,this._onDidChangeVisibility=this._register(new A),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this.menuActionsOrProvider=t,this.contextMenuProvider=i,this.options=n,this.options.actionRunner&&(this.actionRunner=this.options.actionRunner)}render(e){this.actionItem=e;const t=s=>{this.element=Z(s,ce("a.action-label"));let r=[];return typeof this.options.classNames=="string"?r=this.options.classNames.split(/\s+/g).filter(a=>!!a):this.options.classNames&&(r=this.options.classNames),r.find(a=>a==="icon")||r.push("codicon"),this.element.classList.add(...r),this.element.setAttribute("role","button"),this.element.setAttribute("aria-haspopup","true"),this.element.setAttribute("aria-expanded","false"),this._action.label&&this._register(La().setupManagedHover(this.options.hoverDelegate??Ks("mouse"),this.element,this._action.label)),this.element.ariaLabel=this._action.label||"",null},i=Array.isArray(this.menuActionsOrProvider),n={contextMenuProvider:this.contextMenuProvider,labelRenderer:t,menuAsChild:this.options.menuAsChild,actions:i?this.menuActionsOrProvider:void 0,actionProvider:i?void 0:this.menuActionsOrProvider,skipTelemetry:this.options.skipTelemetry};if(this.dropdownMenu=this._register(new EY(e,n)),this._register(this.dropdownMenu.onDidChangeVisibility(s=>{this.element?.setAttribute("aria-expanded",`${s}`),this._onDidChangeVisibility.fire(s)})),this.dropdownMenu.menuOptions={actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,getKeyBinding:this.options.keybindingProvider,context:this._context},this.options.anchorAlignmentProvider){const s=this;this.dropdownMenu.menuOptions={...this.dropdownMenu.menuOptions,get anchorAlignment(){return s.options.anchorAlignmentProvider()}}}this.updateTooltip(),this.updateEnabled()}getTooltip(){let e=null;return this.action.tooltip?e=this.action.tooltip:this.action.label&&(e=this.action.label),e??void 0}setActionContext(e){super.setActionContext(e),this.dropdownMenu&&(this.dropdownMenu.menuOptions?this.dropdownMenu.menuOptions.context=e:this.dropdownMenu.menuOptions={context:e})}show(){this.dropdownMenu?.show()}updateEnabled(){const e=!this.action.enabled;this.actionItem?.classList.toggle("disabled",e),this.element?.classList.toggle("disabled",e)}}function NY(o){return o?o.condition!==void 0:!1}var Wf;(function(o){o[o.STORAGE_DOES_NOT_EXIST=0]="STORAGE_DOES_NOT_EXIST",o[o.STORAGE_IN_MEMORY=1]="STORAGE_IN_MEMORY"})(Wf||(Wf={}));var af;(function(o){o[o.None=0]="None",o[o.Initialized=1]="Initialized",o[o.Closed=2]="Closed"})(af||(af={}));const Aw=class Aw extends z{constructor(e,t=Object.create(null)){super(),this.database=e,this.options=t,this._onDidChangeStorage=this._register(new Nh),this.onDidChangeStorage=this._onDidChangeStorage.event,this.state=af.None,this.cache=new Map,this.flushDelayer=this._register(new vF(Aw.DEFAULT_FLUSH_DELAY)),this.pendingDeletes=new Set,this.pendingInserts=new Map,this.whenFlushedCallbacks=[],this.registerListeners()}registerListeners(){this._register(this.database.onDidChangeItemsExternal(e=>this.onDidChangeItemsExternal(e)))}onDidChangeItemsExternal(e){this._onDidChangeStorage.pause();try{e.changed?.forEach((t,i)=>this.acceptExternal(i,t)),e.deleted?.forEach(t=>this.acceptExternal(t,void 0))}finally{this._onDidChangeStorage.resume()}}acceptExternal(e,t){if(this.state===af.Closed)return;let i=!1;xs(t)?i=this.cache.delete(e):this.cache.get(e)!==t&&(this.cache.set(e,t),i=!0),i&&this._onDidChangeStorage.fire({key:e,external:!0})}get(e,t){const i=this.cache.get(e);return xs(i)?t:i}getBoolean(e,t){const i=this.get(e);return xs(i)?t:i==="true"}getNumber(e,t){const i=this.get(e);return xs(i)?t:parseInt(i,10)}async set(e,t,i=!1){if(this.state===af.Closed)return;if(xs(t))return this.delete(e,i);const n=Oi(t)||Array.isArray(t)?sG(t):String(t);if(this.cache.get(e)!==n)return this.cache.set(e,n),this.pendingInserts.set(e,n),this.pendingDeletes.delete(e),this._onDidChangeStorage.fire({key:e,external:i}),this.doFlush()}async delete(e,t=!1){if(!(this.state===af.Closed||!this.cache.delete(e)))return this.pendingDeletes.has(e)||this.pendingDeletes.add(e),this.pendingInserts.delete(e),this._onDidChangeStorage.fire({key:e,external:t}),this.doFlush()}get hasPending(){return this.pendingInserts.size>0||this.pendingDeletes.size>0}async flushPending(){if(!this.hasPending)return;const e={insert:this.pendingInserts,delete:this.pendingDeletes};return this.pendingDeletes=new Set,this.pendingInserts=new Map,this.database.updateItems(e).finally(()=>{if(!this.hasPending)for(;this.whenFlushedCallbacks.length;)this.whenFlushedCallbacks.pop()?.()})}async doFlush(e){return this.options.hint===Wf.STORAGE_IN_MEMORY?this.flushPending():this.flushDelayer.trigger(()=>this.flushPending(),e)}};Aw.DEFAULT_FLUSH_DELAY=100;let ep=Aw;class RS{constructor(){this.onDidChangeItemsExternal=J.None,this.items=new Map}async updateItems(e){e.insert?.forEach((t,i)=>this.items.set(i,t)),e.delete?.forEach(t=>this.items.delete(t))}}const P1="__$__targetStorageMarker",du=He("storageService");var aD;(function(o){o[o.NONE=0]="NONE",o[o.SHUTDOWN=1]="SHUTDOWN"})(aD||(aD={}));function TY(o){const e=o.get(P1);if(e)try{return JSON.parse(e)}catch{}return Object.create(null)}const Pw=class Pw extends z{constructor(e={flushInterval:Pw.DEFAULT_FLUSH_INTERVAL}){super(),this.options=e,this._onDidChangeValue=this._register(new Nh),this._onDidChangeTarget=this._register(new Nh),this._onWillSaveState=this._register(new A),this.onWillSaveState=this._onWillSaveState.event,this._workspaceKeyTargets=void 0,this._profileKeyTargets=void 0,this._applicationKeyTargets=void 0}onDidChangeValue(e,t,i){return J.filter(this._onDidChangeValue.event,n=>n.scope===e&&(t===void 0||n.key===t),i)}emitDidChangeValue(e,t){const{key:i,external:n}=t;if(i===P1){switch(e){case-1:this._applicationKeyTargets=void 0;break;case 0:this._profileKeyTargets=void 0;break;case 1:this._workspaceKeyTargets=void 0;break}this._onDidChangeTarget.fire({scope:e})}else this._onDidChangeValue.fire({scope:e,key:i,target:this.getKeyTargets(e)[i],external:n})}get(e,t,i){return this.getStorage(t)?.get(e,i)}getBoolean(e,t,i){return this.getStorage(t)?.getBoolean(e,i)}getNumber(e,t,i){return this.getStorage(t)?.getNumber(e,i)}store(e,t,i,n,s=!1){if(xs(t)){this.remove(e,i,s);return}this.withPausedEmitters(()=>{this.updateKeyTarget(e,i,n),this.getStorage(i)?.set(e,t,s)})}remove(e,t,i=!1){this.withPausedEmitters(()=>{this.updateKeyTarget(e,t,void 0),this.getStorage(t)?.delete(e,i)})}withPausedEmitters(e){this._onDidChangeValue.pause(),this._onDidChangeTarget.pause();try{e()}finally{this._onDidChangeValue.resume(),this._onDidChangeTarget.resume()}}updateKeyTarget(e,t,i,n=!1){const s=this.getKeyTargets(t);typeof i=="number"?s[e]!==i&&(s[e]=i,this.getStorage(t)?.set(P1,JSON.stringify(s),n)):typeof s[e]=="number"&&(delete s[e],this.getStorage(t)?.set(P1,JSON.stringify(s),n))}get workspaceKeyTargets(){return this._workspaceKeyTargets||(this._workspaceKeyTargets=this.loadKeyTargets(1)),this._workspaceKeyTargets}get profileKeyTargets(){return this._profileKeyTargets||(this._profileKeyTargets=this.loadKeyTargets(0)),this._profileKeyTargets}get applicationKeyTargets(){return this._applicationKeyTargets||(this._applicationKeyTargets=this.loadKeyTargets(-1)),this._applicationKeyTargets}getKeyTargets(e){switch(e){case-1:return this.applicationKeyTargets;case 0:return this.profileKeyTargets;default:return this.workspaceKeyTargets}}loadKeyTargets(e){const t=this.getStorage(e);return t?TY(t):Object.create(null)}};Pw.DEFAULT_FLUSH_INTERVAL=60*1e3;let lD=Pw;class MY extends lD{constructor(){super(),this.applicationStorage=this._register(new ep(new RS,{hint:Wf.STORAGE_IN_MEMORY})),this.profileStorage=this._register(new ep(new RS,{hint:Wf.STORAGE_IN_MEMORY})),this.workspaceStorage=this._register(new ep(new RS,{hint:Wf.STORAGE_IN_MEMORY})),this._register(this.workspaceStorage.onDidChangeStorage(e=>this.emitDidChangeValue(1,e))),this._register(this.profileStorage.onDidChangeStorage(e=>this.emitDidChangeValue(0,e))),this._register(this.applicationStorage.onDidChangeStorage(e=>this.emitDidChangeValue(-1,e)))}getStorage(e){switch(e){case-1:return this.applicationStorage;case 0:return this.profileStorage;default:return this.workspaceStorage}}}function RY(o,e){const t={...e};for(const i in o){const n=o[i];t[i]=n!==void 0?oe(n):void 0}return t}const AY={keybindingLabelBackground:oe(Lj),keybindingLabelForeground:oe(xj),keybindingLabelBorder:oe(kj),keybindingLabelBottomBorder:oe(Dj),keybindingLabelShadow:oe(q_)},PY={buttonForeground:oe(j3),buttonSeparator:oe(dj),buttonBackground:oe(Im),buttonHoverBackground:oe(hj),buttonSecondaryForeground:oe(fj),buttonSecondaryBackground:oe(Nk),buttonSecondaryHoverBackground:oe(gj),buttonBorder:oe(uj)},OY={progressBarBackground:oe(yK)},O7={inputActiveOptionBorder:oe($3),inputActiveOptionForeground:oe(K3),inputActiveOptionBackground:oe(IT)};oe(Em),oe(mj),oe(pj),oe(_j),oe(bj),oe(Cj),oe(vj);oe(wj),oe(Sj),oe(yj);oe(no),oe(Z0),oe(q_),oe(Ye),oe(VK),oe(zK),oe(UK),oe(vK);const F7={inputBackground:oe(YK),inputForeground:oe(QK),inputBorder:oe(XK),inputValidationInfoBorder:oe(ij),inputValidationInfoBackground:oe(ej),inputValidationInfoForeground:oe(tj),inputValidationWarningBorder:oe(oj),inputValidationWarningBackground:oe(nj),inputValidationWarningForeground:oe(sj),inputValidationErrorBorder:oe(lj),inputValidationErrorBackground:oe(rj),inputValidationErrorForeground:oe(aj)},FY={listFilterWidgetBackground:oe(Hj),listFilterWidgetOutline:oe(Vj),listFilterWidgetNoMatchesOutline:oe(zj),listFilterWidgetShadow:oe(Uj),inputBoxStyles:F7,toggleStyles:O7},B7={badgeBackground:oe(T1),badgeForeground:oe(wK),badgeBorder:oe(Ye)};oe(WK),oe(BK),oe(kA),oe(kA),oe(HK);const hu={listBackground:void 0,listInactiveFocusForeground:void 0,listFocusBackground:oe(Ij),listFocusForeground:oe(Ej),listFocusOutline:oe(Nj),listActiveSelectionBackground:oe(Bh),listActiveSelectionForeground:oe(s_),listActiveSelectionIconForeground:oe(q3),listFocusAndSelectionOutline:oe(Tj),listFocusAndSelectionBackground:oe(Bh),listFocusAndSelectionForeground:oe(s_),listInactiveSelectionBackground:oe(Mj),listInactiveSelectionIconForeground:oe(Aj),listInactiveSelectionForeground:oe(Rj),listInactiveFocusBackground:oe(Pj),listInactiveFocusOutline:oe(Oj),listHoverBackground:oe(G3),listHoverForeground:oe(Z3),listDropOverBackground:oe(Fj),listDropBetweenBackground:oe(Bj),listSelectionOutline:oe(Ut),listHoverOutline:oe(Ut),treeIndentGuidesStroke:oe(Y3),treeInactiveIndentGuidesStroke:oe($j),treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:oe(ST),tableColumnsBorder:oe(Kj),tableOddRowsBackgroundColor:oe(jj)};function $g(o){return RY(o,hu)}const BY={selectBackground:oe(Q0),selectListBackground:oe(cj),selectForeground:oe(ET),decoratorRightForeground:oe(Q3),selectBorder:oe(NT),focusBorder:oe(ga),listFocusBackground:oe(PC),listInactiveSelectionIconForeground:oe(TT),listFocusForeground:oe(AC),listFocusOutline:gK(Ut,q.transparent.toString()),listHoverBackground:oe(G3),listHoverForeground:oe(Z3),listHoverOutline:oe(Ut),selectListBorder:oe(LT),listBackground:void 0,listActiveSelectionBackground:void 0,listActiveSelectionForeground:void 0,listActiveSelectionIconForeground:void 0,listFocusAndSelectionBackground:void 0,listDropOverBackground:void 0,listDropBetweenBackground:void 0,listInactiveSelectionBackground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusBackground:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listFocusAndSelectionForeground:void 0,listFocusAndSelectionOutline:void 0,listInactiveFocusForeground:void 0,tableColumnsBorder:void 0,tableOddRowsBackgroundColor:void 0,treeIndentGuidesStroke:void 0,treeInactiveIndentGuidesStroke:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},WY={shadowColor:oe(q_),borderColor:oe(qj),foregroundColor:oe(Gj),backgroundColor:oe(Zj),selectionForegroundColor:oe(Yj),selectionBackgroundColor:oe(Qj),selectionBorderColor:oe(Xj),separatorColor:oe(Jj),scrollbarShadow:oe(ST),scrollbarSliderBackground:oe(F3),scrollbarSliderHoverBackground:oe(B3),scrollbarSliderActiveBackground:oe(W3)};var hy=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Hn=function(o,e){return function(t,i){e(t,i,o)}};function HY(o,e,t,i){let n,s,r;if(Array.isArray(o))r=o,n=e,s=t;else{const c=e;r=o.getActions(c),n=t,s=i}const a=rl.getInstance(),l=a.keyStatus.altKey||(kn||Un)&&a.keyStatus.shiftKey;W7(r,n,l,s?c=>c===s:c=>c==="navigation")}function XT(o,e,t,i,n,s){let r,a,l,c,d;if(Array.isArray(o))d=o,r=e,a=t,l=i,c=n;else{const u=e;d=o.getActions(u),r=t,a=i,l=n,c=s}W7(d,r,!1,typeof a=="string"?u=>u===a:a,l,c)}function W7(o,e,t,i=r=>r==="navigation",n=()=>!1,s=!1){let r,a;Array.isArray(e)?(r=e,a=e):(r=e.primary,a=e.secondary);const l=new Set;for(const[c,d]of o){let h;i(c)?(h=r,h.length>0&&s&&h.push(new Gi)):(h=a,h.length>0&&h.push(new Gi));for(let u of d){t&&(u=u instanceof so&&u.alt?u.alt:u);const f=h.push(u);u instanceof R0&&l.add({group:c,action:u,index:f-1})}}for(const{group:c,action:d,index:h}of l){const u=i(c)?r:a,f=d.actions;n(d,c,u.length)&&u.splice(h,1,...f)}}let zh=class extends dy{constructor(e,t,i,n,s,r,a,l){super(void 0,e,{icon:!!(e.class||e.item.icon),label:!e.class&&!e.item.icon,draggable:t?.draggable,keybinding:t?.keybinding,hoverDelegate:t?.hoverDelegate}),this._options=t,this._keybindingService=i,this._notificationService=n,this._contextKeyService=s,this._themeService=r,this._contextMenuService=a,this._accessibilityService=l,this._wantsAltCommand=!1,this._itemClassDispose=this._register(new Dn),this._altKey=rl.getInstance()}get _menuItemAction(){return this._action}get _commandAction(){return this._wantsAltCommand&&this._menuItemAction.alt||this._menuItemAction}async onClick(e){e.preventDefault(),e.stopPropagation();try{await this.actionRunner.run(this._commandAction,this._context)}catch(t){this._notificationService.error(t)}}render(e){if(super.render(e),e.classList.add("menu-entry"),this.options.icon&&this._updateItemClass(this._menuItemAction.item),this._menuItemAction.alt){let t=!1;const i=()=>{const n=!!this._menuItemAction.alt?.enabled&&(!this._accessibilityService.isMotionReduced()||t)&&(this._altKey.keyStatus.altKey||this._altKey.keyStatus.shiftKey&&t);n!==this._wantsAltCommand&&(this._wantsAltCommand=n,this.updateLabel(),this.updateTooltip(),this.updateClass())};this._register(this._altKey.event(i)),this._register(U(e,"mouseleave",n=>{t=!1,i()})),this._register(U(e,"mouseenter",n=>{t=!0,i()})),i()}}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this._commandAction.label)}getTooltip(){const e=this._keybindingService.lookupKeybinding(this._commandAction.id,this._contextKeyService),t=e&&e.getLabel(),i=this._commandAction.tooltip||this._commandAction.label;let n=t?m("titleAndKb","{0} ({1})",i,t):i;if(!this._wantsAltCommand&&this._menuItemAction.alt?.enabled){const s=this._menuItemAction.alt.tooltip||this._menuItemAction.alt.label,r=this._keybindingService.lookupKeybinding(this._menuItemAction.alt.id,this._contextKeyService),a=r&&r.getLabel(),l=a?m("titleAndKb","{0} ({1})",s,a):s;n=m("titleAndKbAndAlt",`{0} +[{1}] {2}`,n,KT.modifierLabels[Ns].altKey,l)}return n}updateClass(){this.options.icon&&(this._commandAction!==this._menuItemAction?this._menuItemAction.alt&&this._updateItemClass(this._menuItemAction.alt.item):this._updateItemClass(this._menuItemAction.item))}_updateItemClass(e){this._itemClassDispose.value=void 0;const{element:t,label:i}=this;if(!t||!i)return;const n=this._commandAction.checked&&NY(e.toggled)&&e.toggled.icon?e.toggled.icon:e.icon;if(n)if(Ee.isThemeIcon(n)){const s=Ee.asClassNameArray(n);i.classList.add(...s),this._itemClassDispose.value=_e(()=>{i.classList.remove(...s)})}else i.style.backgroundImage=j0(this._themeService.getColorTheme().type)?Dl(n.dark):Dl(n.light),i.classList.add("icon"),this._itemClassDispose.value=No(_e(()=>{i.style.backgroundImage="",i.classList.remove("icon")}),this._themeService.onDidColorThemeChange(()=>{this.updateClass()}))}};zh=hy([Hn(2,vt),Hn(3,mn),Hn(4,De),Hn(5,en),Hn(6,Lr),Hn(7,ms)],zh);class JT extends zh{render(e){this.options.label=!0,this.options.icon=!1,super.render(e),e.classList.add("text-only"),e.classList.toggle("use-comma",this._options?.useComma??!1)}updateLabel(){const e=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!e)return super.updateLabel();if(this.label){const t=JT._symbolPrintEnter(e);this._options?.conversational?this.label.textContent=m({key:"content2",comment:['A label with keybindg like "ESC to dismiss"']},"{1} to {0}",this._action.label,t):this.label.textContent=m({key:"content",comment:["A label","A keybinding"]},"{0} ({1})",this._action.label,t)}}static _symbolPrintEnter(e){return e.getLabel()?.replace(/\benter\b/gi,"⏎").replace(/\bEscape\b/gi,"Esc")}}let cD=class extends qC{constructor(e,t,i,n,s){const r={...t,menuAsChild:t?.menuAsChild??!1,classNames:t?.classNames??(Ee.isThemeIcon(e.item.icon)?Ee.asClassName(e.item.icon):void 0),keybindingProvider:t?.keybindingProvider??(a=>i.lookupKeybinding(a.id))};super(e,{getActions:()=>e.actions},n,r),this._keybindingService=i,this._contextMenuService=n,this._themeService=s}render(e){super.render(e),ai(this.element),e.classList.add("menu-entry");const t=this._action,{icon:i}=t.item;if(i&&!Ee.isThemeIcon(i)){this.element.classList.add("icon");const n=()=>{this.element&&(this.element.style.backgroundImage=j0(this._themeService.getColorTheme().type)?Dl(i.dark):Dl(i.light))};n(),this._register(this._themeService.onDidColorThemeChange(()=>{n()}))}}};cD=hy([Hn(2,vt),Hn(3,Lr),Hn(4,en)],cD);let dD=class extends or{constructor(e,t,i,n,s,r,a,l){super(null,e),this._keybindingService=i,this._notificationService=n,this._contextMenuService=s,this._menuService=r,this._instaService=a,this._storageService=l,this._container=null,this._options=t,this._storageKey=`${e.item.submenu.id}_lastActionId`;let c;const d=t?.persistLastActionId?l.get(this._storageKey,1):void 0;d&&(c=e.actions.find(u=>d===u.id)),c||(c=e.actions[0]),this._defaultAction=this._instaService.createInstance(zh,c,{keybinding:this._getDefaultActionKeybindingLabel(c)});const h={keybindingProvider:u=>this._keybindingService.lookupKeybinding(u.id),...t,menuAsChild:t?.menuAsChild??!0,classNames:t?.classNames??["codicon","codicon-chevron-down"],actionRunner:t?.actionRunner??new Oh};this._dropdown=new qC(e,e.actions,this._contextMenuService,h),this._register(this._dropdown.actionRunner.onDidRun(u=>{u.action instanceof so&&this.update(u.action)}))}update(e){this._options?.persistLastActionId&&this._storageService.store(this._storageKey,e.id,1,1),this._defaultAction.dispose(),this._defaultAction=this._instaService.createInstance(zh,e,{keybinding:this._getDefaultActionKeybindingLabel(e)}),this._defaultAction.actionRunner=new class extends Oh{async runAction(t,i){await t.run(void 0)}},this._container&&this._defaultAction.render(iT(this._container,ce(".action-container")))}_getDefaultActionKeybindingLabel(e){let t;if(this._options?.renderKeybindingWithDefaultActionLabel){const i=this._keybindingService.lookupKeybinding(e.id);i&&(t=`(${i.getLabel()})`)}return t}setActionContext(e){super.setActionContext(e),this._defaultAction.setActionContext(e),this._dropdown.setActionContext(e)}render(e){this._container=e,super.render(this._container),this._container.classList.add("monaco-dropdown-with-default");const t=ce(".action-container");this._defaultAction.render(Z(this._container,t)),this._register(U(t,ee.KEY_DOWN,n=>{const s=new Nt(n);s.equals(17)&&(this._defaultAction.element.tabIndex=-1,this._dropdown.focus(),s.stopPropagation())}));const i=ce(".dropdown-action-container");this._dropdown.render(Z(this._container,i)),this._register(U(i,ee.KEY_DOWN,n=>{const s=new Nt(n);s.equals(15)&&(this._defaultAction.element.tabIndex=0,this._dropdown.setFocusable(!1),this._defaultAction.element?.focus(),s.stopPropagation())}))}focus(e){e?this._dropdown.focus():(this._defaultAction.element.tabIndex=0,this._defaultAction.element.focus())}blur(){this._defaultAction.element.tabIndex=-1,this._dropdown.blur(),this._container.blur()}setFocusable(e){e?this._defaultAction.element.tabIndex=0:(this._defaultAction.element.tabIndex=-1,this._dropdown.setFocusable(!1))}dispose(){this._defaultAction.dispose(),this._dropdown.dispose(),super.dispose()}};dD=hy([Hn(2,vt),Hn(3,mn),Hn(4,Lr),Hn(5,yr),Hn(6,ke),Hn(7,du)],dD);let hD=class extends DY{constructor(e,t){super(null,e,e.actions.map(i=>({text:i.id===Gi.ID?"─────────":i.label,isDisabled:!i.enabled})),0,t,BY,{ariaLabel:e.tooltip,optionsAsChildren:!0}),this.select(Math.max(0,e.actions.findIndex(i=>i.checked)))}render(e){super.render(e),e.style.borderColor=oe(NT)}runAction(e,t){const i=this.action.actions[t];i&&this.actionRunner.run(i)}};hD=hy([Hn(1,lu)],hD);function H7(o,e,t){return e instanceof so?o.createInstance(zh,e,t):e instanceof Zm?e.item.isSelection?o.createInstance(hD,e):e.item.rememberDefaultAction?o.createInstance(dD,e,{...t,persistLastActionId:!0}):o.createInstance(cD,e,t):void 0}class oo extends z{constructor(e,t={}){super(),this._actionRunnerDisposables=this._register(new X),this.viewItemDisposables=this._register(new RN),this.triggerKeyDown=!1,this.focusable=!0,this._onDidBlur=this._register(new A),this.onDidBlur=this._onDidBlur.event,this._onDidCancel=this._register(new A({onWillAddFirstListener:()=>this.cancelHasListener=!0})),this.onDidCancel=this._onDidCancel.event,this.cancelHasListener=!1,this._onDidRun=this._register(new A),this.onDidRun=this._onDidRun.event,this._onWillRun=this._register(new A),this.onWillRun=this._onWillRun.event,this.options=t,this._context=t.context??null,this._orientation=this.options.orientation??0,this._triggerKeys={keyDown:this.options.triggerKeys?.keyDown??!1,keys:this.options.triggerKeys?.keys??[3,10]},this._hoverDelegate=t.hoverDelegate??this._register(QT()),this.options.actionRunner?this._actionRunner=this.options.actionRunner:(this._actionRunner=new Oh,this._actionRunnerDisposables.add(this._actionRunner)),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(s=>this._onDidRun.fire(s))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(s=>this._onWillRun.fire(s))),this.viewItems=[],this.focusedItem=void 0,this.domNode=document.createElement("div"),this.domNode.className="monaco-action-bar";let i,n;switch(this._orientation){case 0:i=[15],n=[17];break;case 1:i=[16],n=[18],this.domNode.className+=" vertical";break}this._register(U(this.domNode,ee.KEY_DOWN,s=>{const r=new Nt(s);let a=!0;const l=typeof this.focusedItem=="number"?this.viewItems[this.focusedItem]:void 0;i&&(r.equals(i[0])||r.equals(i[1]))?a=this.focusPrevious():n&&(r.equals(n[0])||r.equals(n[1]))?a=this.focusNext():r.equals(9)&&this.cancelHasListener?this._onDidCancel.fire():r.equals(14)?a=this.focusFirst():r.equals(13)?a=this.focusLast():r.equals(2)&&l instanceof or&&l.trapsArrowNavigation?a=this.focusNext(void 0,!0):this.isTriggerKeyEvent(r)?this._triggerKeys.keyDown?this.doTrigger(r):this.triggerKeyDown=!0:a=!1,a&&(r.preventDefault(),r.stopPropagation())})),this._register(U(this.domNode,ee.KEY_UP,s=>{const r=new Nt(s);this.isTriggerKeyEvent(r)?(!this._triggerKeys.keyDown&&this.triggerKeyDown&&(this.triggerKeyDown=!1,this.doTrigger(r)),r.preventDefault(),r.stopPropagation()):(r.equals(2)||r.equals(1026)||r.equals(16)||r.equals(18)||r.equals(15)||r.equals(17))&&this.updateFocusedItem()})),this.focusTracker=this._register(Ph(this.domNode)),this._register(this.focusTracker.onDidBlur(()=>{(Xi()===this.domNode||!yi(Xi(),this.domNode))&&(this._onDidBlur.fire(),this.previouslyFocusedItem=this.focusedItem,this.focusedItem=void 0,this.triggerKeyDown=!1)})),this._register(this.focusTracker.onDidFocus(()=>this.updateFocusedItem())),this.actionsList=document.createElement("ul"),this.actionsList.className="actions-container",this.options.highlightToggledItems&&this.actionsList.classList.add("highlight-toggled"),this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"),this.options.ariaLabel&&this.actionsList.setAttribute("aria-label",this.options.ariaLabel),this.domNode.appendChild(this.actionsList),e.appendChild(this.domNode)}refreshRole(){this.length()>=1?this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"):this.actionsList.setAttribute("role","presentation")}setFocusable(e){if(this.focusable=e,this.focusable){const t=this.viewItems.find(i=>i instanceof or&&i.isEnabled());t instanceof or&&t.setFocusable(!0)}else this.viewItems.forEach(t=>{t instanceof or&&t.setFocusable(!1)})}isTriggerKeyEvent(e){let t=!1;return this._triggerKeys.keys.forEach(i=>{t=t||e.equals(i)}),t}updateFocusedItem(){for(let e=0;et.setActionContext(e))}get actionRunner(){return this._actionRunner}set actionRunner(e){this._actionRunner=e,this._actionRunnerDisposables.clear(),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(t=>this._onDidRun.fire(t))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(t=>this._onWillRun.fire(t))),this.viewItems.forEach(t=>t.actionRunner=e)}getContainer(){return this.domNode}getAction(e){if(typeof e=="number")return this.viewItems[e]?.action;if(Ei(e)){for(;e.parentElement!==this.actionsList;){if(!e.parentElement)return;e=e.parentElement}for(let t=0;t{const r=document.createElement("li");r.className="action-item",r.setAttribute("role","presentation");let a;const l={hoverDelegate:this._hoverDelegate,...t,isTabList:this.options.ariaRole==="tablist"};this.options.actionViewItemProvider&&(a=this.options.actionViewItemProvider(s,l)),a||(a=new dy(this.context,s,l)),this.options.allowContextMenu||this.viewItemDisposables.set(a,U(r,ee.CONTEXT_MENU,c=>{je.stop(c,!0)})),a.actionRunner=this._actionRunner,a.setActionContext(this.context),a.render(r),this.focusable&&a instanceof or&&this.viewItems.length===0&&a.setFocusable(!0),n===null||n<0||n>=this.actionsList.children.length?(this.actionsList.appendChild(r),this.viewItems.push(a)):(this.actionsList.insertBefore(r,this.actionsList.children[n]),this.viewItems.splice(n,0,a),n++)}),typeof this.focusedItem=="number"&&this.focus(this.focusedItem),this.refreshRole()}clear(){this.isEmpty()||(this.viewItems=xt(this.viewItems),this.viewItemDisposables.clearAndDisposeAll(),xn(this.actionsList),this.refreshRole())}length(){return this.viewItems.length}isEmpty(){return this.viewItems.length===0}focus(e){let t=!1,i;if(e===void 0?t=!0:typeof e=="number"?i=e:typeof e=="boolean"&&(t=e),t&&typeof this.focusedItem>"u"){const n=this.viewItems.findIndex(s=>s.isEnabled());this.focusedItem=n===-1?void 0:n,this.updateFocus(void 0,void 0,!0)}else i!==void 0&&(this.focusedItem=i),this.updateFocus(void 0,void 0,!0)}focusFirst(){return this.focusedItem=this.length()-1,this.focusNext(!0)}focusLast(){return this.focusedItem=0,this.focusPrevious(!0)}focusNext(e,t){if(typeof this.focusedItem>"u")this.focusedItem=this.viewItems.length-1;else if(this.viewItems.length<=1)return!1;const i=this.focusedItem;let n;do{if(!e&&this.options.preventLoopNavigation&&this.focusedItem+1>=this.viewItems.length)return this.focusedItem=i,!1;this.focusedItem=(this.focusedItem+1)%this.viewItems.length,n=this.viewItems[this.focusedItem]}while(this.focusedItem!==i&&(this.options.focusOnlyEnabledItems&&!n.isEnabled()||n.action.id===Gi.ID));return this.updateFocus(void 0,void 0,t),!0}focusPrevious(e){if(typeof this.focusedItem>"u")this.focusedItem=0;else if(this.viewItems.length<=1)return!1;const t=this.focusedItem;let i;do{if(this.focusedItem=this.focusedItem-1,this.focusedItem<0){if(!e&&this.options.preventLoopNavigation)return this.focusedItem=t,!1;this.focusedItem=this.viewItems.length-1}i=this.viewItems[this.focusedItem]}while(this.focusedItem!==t&&(this.options.focusOnlyEnabledItems&&!i.isEnabled()||i.action.id===Gi.ID));return this.updateFocus(!0),!0}updateFocus(e,t,i=!1){typeof this.focusedItem>"u"&&this.actionsList.focus({preventScroll:t}),this.previouslyFocusedItem!==void 0&&this.previouslyFocusedItem!==this.focusedItem&&this.viewItems[this.previouslyFocusedItem]?.blur();const n=this.focusedItem!==void 0?this.viewItems[this.focusedItem]:void 0;if(n){let s=!0;tC(n.focus)||(s=!1),this.options.focusOnlyEnabledItems&&tC(n.isEnabled)&&!n.isEnabled()&&(s=!1),n.action.id===Gi.ID&&(s=!1),s?(i||this.previouslyFocusedItem!==this.focusedItem)&&(n.focus(e),this.previouslyFocusedItem=this.focusedItem):(this.actionsList.focus({preventScroll:t}),this.previouslyFocusedItem=void 0),s&&n.showHover?.()}}doTrigger(e){if(typeof this.focusedItem>"u")return;const t=this.viewItems[this.focusedItem];if(t instanceof or){const i=t._context===null||t._context===void 0?e:t._context;this.run(t._action,i)}}async run(e,t){await this._actionRunner.run(e,t)}dispose(){this._context=void 0,this.viewItems=xt(this.viewItems),this.getContainer().remove(),super.dispose()}}const uD=/\(&([^\s&])\)|(^|[^&])&([^\s&])/,AS=/(&)?(&)([^\s&])/g;var GC;(function(o){o[o.Right=0]="Right",o[o.Left=1]="Left"})(GC||(GC={}));var fD;(function(o){o[o.Above=0]="Above",o[o.Below=1]="Below"})(fD||(fD={}));class Hf extends oo{constructor(e,t,i,n){e.classList.add("monaco-menu-container"),e.setAttribute("role","presentation");const s=document.createElement("div");s.classList.add("monaco-menu"),s.setAttribute("role","presentation"),super(s,{orientation:1,actionViewItemProvider:c=>this.doGetActionViewItem(c,i,r),context:i.context,actionRunner:i.actionRunner,ariaLabel:i.ariaLabel,ariaRole:"menu",focusOnlyEnabledItems:!0,triggerKeys:{keys:[3,...Ue||Un?[10]:[]],keyDown:!0}}),this.menuStyles=n,this.menuElement=s,this.actionsList.tabIndex=0,this.initializeOrUpdateStyleSheet(e,n),this._register(fn.addTarget(s)),this._register(U(s,ee.KEY_DOWN,c=>{new Nt(c).equals(2)&&c.preventDefault()})),i.enableMnemonics&&this._register(U(s,ee.KEY_DOWN,c=>{const d=c.key.toLocaleLowerCase();if(this.mnemonics.has(d)){je.stop(c,!0);const h=this.mnemonics.get(d);if(h.length===1&&(h[0]instanceof _P&&h[0].container&&this.focusItemByElement(h[0].container),h[0].onClick(c)),h.length>1){const u=h.shift();u&&u.container&&(this.focusItemByElement(u.container),h.push(u)),this.mnemonics.set(d,h)}}})),Un&&this._register(U(s,ee.KEY_DOWN,c=>{const d=new Nt(c);d.equals(14)||d.equals(11)?(this.focusedItem=this.viewItems.length-1,this.focusNext(),je.stop(c,!0)):(d.equals(13)||d.equals(12))&&(this.focusedItem=0,this.focusPrevious(),je.stop(c,!0))})),this._register(U(this.domNode,ee.MOUSE_OUT,c=>{const d=c.relatedTarget;yi(d,this.domNode)||(this.focusedItem=void 0,this.updateFocus(),c.stopPropagation())})),this._register(U(this.actionsList,ee.MOUSE_OVER,c=>{let d=c.target;if(!(!d||!yi(d,this.actionsList)||d===this.actionsList)){for(;d.parentElement!==this.actionsList&&d.parentElement!==null;)d=d.parentElement;if(d.classList.contains("action-item")){const h=this.focusedItem;this.setFocusedItem(d),h!==this.focusedItem&&this.updateFocus()}}})),this._register(fn.addTarget(this.actionsList)),this._register(U(this.actionsList,St.Tap,c=>{let d=c.initialTarget;if(!(!d||!yi(d,this.actionsList)||d===this.actionsList)){for(;d.parentElement!==this.actionsList&&d.parentElement!==null;)d=d.parentElement;if(d.classList.contains("action-item")){const h=this.focusedItem;this.setFocusedItem(d),h!==this.focusedItem&&this.updateFocus()}}}));const r={parent:this};this.mnemonics=new Map,this.scrollableElement=this._register(new J0(s,{alwaysConsumeMouseWheel:!0,horizontal:2,vertical:3,verticalScrollbarSize:7,handleMouseWheel:!0,useShadows:!0}));const a=this.scrollableElement.getDomNode();a.style.position="",this.styleScrollElement(a,n),this._register(U(s,St.Change,c=>{je.stop(c,!0);const d=this.scrollableElement.getScrollPosition().scrollTop;this.scrollableElement.setScrollPosition({scrollTop:d-c.translationY})})),this._register(U(a,ee.MOUSE_UP,c=>{c.preventDefault()}));const l=fe(e);s.style.maxHeight=`${Math.max(10,l.innerHeight-e.getBoundingClientRect().top-35)}px`,t=t.filter((c,d)=>i.submenuIds?.has(c.id)?(console.warn(`Found submenu cycle: ${c.id}`),!1):!(c instanceof Gi&&(d===t.length-1||d===0||t[d-1]instanceof Gi))),this.push(t,{icon:!0,label:!0,isMenu:!0}),e.appendChild(this.scrollableElement.getDomNode()),this.scrollableElement.scanDomNode(),this.viewItems.filter(c=>!(c instanceof bP)).forEach((c,d,h)=>{c.updatePositionInSet(d+1,h.length)})}initializeOrUpdateStyleSheet(e,t){this.styleSheet||(_C(e)?this.styleSheet=Vs(e):(Hf.globalStyleSheet||(Hf.globalStyleSheet=Vs()),this.styleSheet=Hf.globalStyleSheet)),this.styleSheet.textContent=zY(t,_C(e))}styleScrollElement(e,t){const i=t.foregroundColor??"",n=t.backgroundColor??"",s=t.borderColor?`1px solid ${t.borderColor}`:"",r="5px",a=t.shadowColor?`0 2px 8px ${t.shadowColor}`:"";e.style.outline=s,e.style.borderRadius=r,e.style.color=i,e.style.backgroundColor=n,e.style.boxShadow=a}getContainer(){return this.scrollableElement.getDomNode()}get onScroll(){return this.scrollableElement.onScroll}focusItemByElement(e){const t=this.focusedItem;this.setFocusedItem(e),t!==this.focusedItem&&this.updateFocus()}setFocusedItem(e){for(let t=0;t{this.element&&(this._register(U(this.element,ee.MOUSE_UP,s=>{if(je.stop(s,!0),Mo){if(new ur(fe(this.element),s).rightButton)return;this.onClick(s)}else setTimeout(()=>{this.onClick(s)},0)})),this._register(U(this.element,ee.CONTEXT_MENU,s=>{je.stop(s,!0)})))},100),this._register(this.runOnceToEnableMouseUp)}render(e){super.render(e),this.element&&(this.container=e,this.item=Z(this.element,ce("a.action-menu-item")),this._action.id===Gi.ID?this.item.setAttribute("role","presentation"):(this.item.setAttribute("role","menuitem"),this.mnemonic&&this.item.setAttribute("aria-keyshortcuts",`${this.mnemonic}`)),this.check=Z(this.item,ce("span.menu-item-check"+Ee.asCSSSelector(ie.menuSelection))),this.check.setAttribute("role","none"),this.label=Z(this.item,ce("span.action-label")),this.options.label&&this.options.keybinding&&(Z(this.item,ce("span.keybinding")).textContent=this.options.keybinding),this.runOnceToEnableMouseUp.schedule(),this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked(),this.applyStyle())}blur(){super.blur(),this.applyStyle()}focus(){super.focus(),this.item?.focus(),this.applyStyle()}updatePositionInSet(e,t){this.item&&(this.item.setAttribute("aria-posinset",`${e}`),this.item.setAttribute("aria-setsize",`${t}`))}updateLabel(){if(this.label&&this.options.label){xn(this.label);let e=f7(this.action.label);if(e){const t=VY(e);this.options.enableMnemonics||(e=t),this.label.setAttribute("aria-label",t.replace(/&&/g,"&"));const i=uD.exec(e);if(i){e=Km(e),AS.lastIndex=0;let n=AS.exec(e);for(;n&&n[1];)n=AS.exec(e);const s=r=>r.replace(/&&/g,"&");n?this.label.append(k0(s(e.substr(0,n.index))," "),ce("u",{"aria-hidden":"true"},n[3]),aH(s(e.substr(n.index+n[0].length))," ")):this.label.innerText=s(e).trim(),this.item?.setAttribute("aria-keyshortcuts",(i[1]?i[1]:i[3]).toLocaleLowerCase())}else this.label.innerText=e.replace(/&&/g,"&").trim()}}}updateTooltip(){}updateClass(){this.cssClass&&this.item&&this.item.classList.remove(...this.cssClass.split(" ")),this.options.icon&&this.label?(this.cssClass=this.action.class||"",this.label.classList.add("icon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" ")),this.updateEnabled()):this.label&&this.label.classList.remove("icon")}updateEnabled(){this.action.enabled?(this.element&&(this.element.classList.remove("disabled"),this.element.removeAttribute("aria-disabled")),this.item&&(this.item.classList.remove("disabled"),this.item.removeAttribute("aria-disabled"),this.item.tabIndex=0)):(this.element&&(this.element.classList.add("disabled"),this.element.setAttribute("aria-disabled","true")),this.item&&(this.item.classList.add("disabled"),this.item.setAttribute("aria-disabled","true")))}updateChecked(){if(!this.item)return;const e=this.action.checked;this.item.classList.toggle("checked",!!e),e!==void 0?(this.item.setAttribute("role","menuitemcheckbox"),this.item.setAttribute("aria-checked",e?"true":"false")):(this.item.setAttribute("role","menuitem"),this.item.setAttribute("aria-checked",""))}getMnemonic(){return this.mnemonic}applyStyle(){const e=this.element&&this.element.classList.contains("focused"),t=e&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor,i=e&&this.menuStyle.selectionBackgroundColor?this.menuStyle.selectionBackgroundColor:void 0,n=e&&this.menuStyle.selectionBorderColor?`1px solid ${this.menuStyle.selectionBorderColor}`:"",s=e&&this.menuStyle.selectionBorderColor?"-1px":"";this.item&&(this.item.style.color=t??"",this.item.style.backgroundColor=i??"",this.item.style.outline=n,this.item.style.outlineOffset=s),this.check&&(this.check.style.color=t??"")}}class _P extends V7{constructor(e,t,i,n,s){super(e,e,n,s),this.submenuActions=t,this.parentData=i,this.submenuOptions=n,this.mysubmenu=null,this.submenuDisposables=this._register(new X),this.mouseOver=!1,this.expandDirection=n&&n.expandDirection!==void 0?n.expandDirection:{horizontal:GC.Right,vertical:fD.Below},this.showScheduler=new ci(()=>{this.mouseOver&&(this.cleanupExistingSubmenu(!1),this.createSubmenu(!1))},250),this.hideScheduler=new ci(()=>{this.element&&!yi(Xi(),this.element)&&this.parentData.submenu===this.mysubmenu&&(this.parentData.parent.focus(!1),this.cleanupExistingSubmenu(!0))},750)}render(e){super.render(e),this.element&&(this.item&&(this.item.classList.add("monaco-submenu-item"),this.item.tabIndex=0,this.item.setAttribute("aria-haspopup","true"),this.updateAriaExpanded("false"),this.submenuIndicator=Z(this.item,ce("span.submenu-indicator"+Ee.asCSSSelector(ie.menuSubmenu))),this.submenuIndicator.setAttribute("aria-hidden","true")),this._register(U(this.element,ee.KEY_UP,t=>{const i=new Nt(t);(i.equals(17)||i.equals(3))&&(je.stop(t,!0),this.createSubmenu(!0))})),this._register(U(this.element,ee.KEY_DOWN,t=>{const i=new Nt(t);Xi()===this.item&&(i.equals(17)||i.equals(3))&&je.stop(t,!0)})),this._register(U(this.element,ee.MOUSE_OVER,t=>{this.mouseOver||(this.mouseOver=!0,this.showScheduler.schedule())})),this._register(U(this.element,ee.MOUSE_LEAVE,t=>{this.mouseOver=!1})),this._register(U(this.element,ee.FOCUS_OUT,t=>{this.element&&!yi(Xi(),this.element)&&this.hideScheduler.schedule()})),this._register(this.parentData.parent.onScroll(()=>{this.parentData.submenu===this.mysubmenu&&(this.parentData.parent.focus(!1),this.cleanupExistingSubmenu(!0))})))}updateEnabled(){}onClick(e){je.stop(e,!0),this.cleanupExistingSubmenu(!1),this.createSubmenu(!0)}cleanupExistingSubmenu(e){if(this.parentData.submenu&&(e||this.parentData.submenu!==this.mysubmenu)){try{this.parentData.submenu.dispose()}catch{}this.parentData.submenu=void 0,this.updateAriaExpanded("false"),this.submenuContainer&&(this.submenuDisposables.clear(),this.submenuContainer=void 0)}}calculateSubmenuMenuLayout(e,t,i,n){const s={top:0,left:0};return s.left=nf(e.width,t.width,{position:n.horizontal===GC.Right?0:1,offset:i.left,size:i.width}),s.left>=i.left&&s.left{new Nt(d).equals(15)&&(je.stop(d,!0),this.parentData.parent.focus(),this.cleanupExistingSubmenu(!0))})),this.submenuDisposables.add(U(this.submenuContainer,ee.KEY_DOWN,d=>{new Nt(d).equals(15)&&je.stop(d,!0)})),this.submenuDisposables.add(this.parentData.submenu.onDidCancel(()=>{this.parentData.parent.focus(),this.cleanupExistingSubmenu(!0)})),this.parentData.submenu.focus(e),this.mysubmenu=this.parentData.submenu}}updateAriaExpanded(e){this.item&&this.item?.setAttribute("aria-expanded",e)}applyStyle(){super.applyStyle();const t=this.element&&this.element.classList.contains("focused")&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor;this.submenuIndicator&&(this.submenuIndicator.style.color=t??"")}dispose(){super.dispose(),this.hideScheduler.dispose(),this.mysubmenu&&(this.mysubmenu.dispose(),this.mysubmenu=null),this.submenuContainer&&(this.submenuContainer=void 0)}}class bP extends dy{constructor(e,t,i,n){super(e,t,i),this.menuStyles=n}render(e){super.render(e),this.label&&(this.label.style.borderBottomColor=this.menuStyles.separatorColor?`${this.menuStyles.separatorColor}`:"")}}function VY(o){const e=uD,t=e.exec(o);if(!t)return o;const i=!t[1];return o.replace(e,i?"$2$3":"").trim()}function CP(o){const e=rF()[o.id];return`.codicon-${o.id}:before { content: '\\${e.toString(16)}'; }`}function zY(o,e){let t=` +.monaco-menu { + font-size: 13px; + border-radius: 5px; + min-width: 160px; +} + +${CP(ie.menuSelection)} +${CP(ie.menuSubmenu)} + +.monaco-menu .monaco-action-bar { + text-align: right; + overflow: hidden; + white-space: nowrap; +} + +.monaco-menu .monaco-action-bar .actions-container { + display: flex; + margin: 0 auto; + padding: 0; + width: 100%; + justify-content: flex-end; +} + +.monaco-menu .monaco-action-bar.vertical .actions-container { + display: inline-block; +} + +.monaco-menu .monaco-action-bar.reverse .actions-container { + flex-direction: row-reverse; +} + +.monaco-menu .monaco-action-bar .action-item { + cursor: pointer; + display: inline-block; + transition: transform 50ms ease; + position: relative; /* DO NOT REMOVE - this is the key to preventing the ghosting icon bug in Chrome 42 */ +} + +.monaco-menu .monaco-action-bar .action-item.disabled { + cursor: default; +} + +.monaco-menu .monaco-action-bar .action-item .icon, +.monaco-menu .monaco-action-bar .action-item .codicon { + display: inline-block; +} + +.monaco-menu .monaco-action-bar .action-item .codicon { + display: flex; + align-items: center; +} + +.monaco-menu .monaco-action-bar .action-label { + font-size: 11px; + margin-right: 4px; +} + +.monaco-menu .monaco-action-bar .action-item.disabled .action-label, +.monaco-menu .monaco-action-bar .action-item.disabled .action-label:hover { + color: var(--vscode-disabledForeground); +} + +/* Vertical actions */ + +.monaco-menu .monaco-action-bar.vertical { + text-align: left; +} + +.monaco-menu .monaco-action-bar.vertical .action-item { + display: block; +} + +.monaco-menu .monaco-action-bar.vertical .action-label.separator { + display: block; + border-bottom: 1px solid var(--vscode-menu-separatorBackground); + padding-top: 1px; + padding: 30px; +} + +.monaco-menu .secondary-actions .monaco-action-bar .action-label { + margin-left: 6px; +} + +/* Action Items */ +.monaco-menu .monaco-action-bar .action-item.select-container { + overflow: hidden; /* somehow the dropdown overflows its container, we prevent it here to not push */ + flex: 1; + max-width: 170px; + min-width: 60px; + display: flex; + align-items: center; + justify-content: center; + margin-right: 10px; +} + +.monaco-menu .monaco-action-bar.vertical { + margin-left: 0; + overflow: visible; +} + +.monaco-menu .monaco-action-bar.vertical .actions-container { + display: block; +} + +.monaco-menu .monaco-action-bar.vertical .action-item { + padding: 0; + transform: none; + display: flex; +} + +.monaco-menu .monaco-action-bar.vertical .action-item.active { + transform: none; +} + +.monaco-menu .monaco-action-bar.vertical .action-menu-item { + flex: 1 1 auto; + display: flex; + height: 2em; + align-items: center; + position: relative; + margin: 0 4px; + border-radius: 4px; +} + +.monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .keybinding, +.monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .keybinding { + opacity: unset; +} + +.monaco-menu .monaco-action-bar.vertical .action-label { + flex: 1 1 auto; + text-decoration: none; + padding: 0 1em; + background: none; + font-size: 12px; + line-height: 1; +} + +.monaco-menu .monaco-action-bar.vertical .keybinding, +.monaco-menu .monaco-action-bar.vertical .submenu-indicator { + display: inline-block; + flex: 2 1 auto; + padding: 0 1em; + text-align: right; + font-size: 12px; + line-height: 1; +} + +.monaco-menu .monaco-action-bar.vertical .submenu-indicator { + height: 100%; +} + +.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon { + font-size: 16px !important; + display: flex; + align-items: center; +} + +.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon::before { + margin-left: auto; + margin-right: -20px; +} + +.monaco-menu .monaco-action-bar.vertical .action-item.disabled .keybinding, +.monaco-menu .monaco-action-bar.vertical .action-item.disabled .submenu-indicator { + opacity: 0.4; +} + +.monaco-menu .monaco-action-bar.vertical .action-label:not(.separator) { + display: inline-block; + box-sizing: border-box; + margin: 0; +} + +.monaco-menu .monaco-action-bar.vertical .action-item { + position: static; + overflow: visible; +} + +.monaco-menu .monaco-action-bar.vertical .action-item .monaco-submenu { + position: absolute; +} + +.monaco-menu .monaco-action-bar.vertical .action-label.separator { + width: 100%; + height: 0px !important; + opacity: 1; +} + +.monaco-menu .monaco-action-bar.vertical .action-label.separator.text { + padding: 0.7em 1em 0.1em 1em; + font-weight: bold; + opacity: 1; +} + +.monaco-menu .monaco-action-bar.vertical .action-label:hover { + color: inherit; +} + +.monaco-menu .monaco-action-bar.vertical .menu-item-check { + position: absolute; + visibility: hidden; + width: 1em; + height: 100%; +} + +.monaco-menu .monaco-action-bar.vertical .action-menu-item.checked .menu-item-check { + visibility: visible; + display: flex; + align-items: center; + justify-content: center; +} + +/* Context Menu */ + +.context-view.monaco-menu-container { + outline: 0; + border: none; + animation: fadeIn 0.083s linear; + -webkit-app-region: no-drag; +} + +.context-view.monaco-menu-container :focus, +.context-view.monaco-menu-container .monaco-action-bar.vertical:focus, +.context-view.monaco-menu-container .monaco-action-bar.vertical :focus { + outline: 0; +} + +.hc-black .context-view.monaco-menu-container, +.hc-light .context-view.monaco-menu-container, +:host-context(.hc-black) .context-view.monaco-menu-container, +:host-context(.hc-light) .context-view.monaco-menu-container { + box-shadow: none; +} + +.hc-black .monaco-menu .monaco-action-bar.vertical .action-item.focused, +.hc-light .monaco-menu .monaco-action-bar.vertical .action-item.focused, +:host-context(.hc-black) .monaco-menu .monaco-action-bar.vertical .action-item.focused, +:host-context(.hc-light) .monaco-menu .monaco-action-bar.vertical .action-item.focused { + background: none; +} + +/* Vertical Action Bar Styles */ + +.monaco-menu .monaco-action-bar.vertical { + padding: 4px 0; +} + +.monaco-menu .monaco-action-bar.vertical .action-menu-item { + height: 2em; +} + +.monaco-menu .monaco-action-bar.vertical .action-label:not(.separator), +.monaco-menu .monaco-action-bar.vertical .keybinding { + font-size: inherit; + padding: 0 2em; + max-height: 100%; +} + +.monaco-menu .monaco-action-bar.vertical .menu-item-check { + font-size: inherit; + width: 2em; +} + +.monaco-menu .monaco-action-bar.vertical .action-label.separator { + font-size: inherit; + margin: 5px 0 !important; + padding: 0; + border-radius: 0; +} + +.linux .monaco-menu .monaco-action-bar.vertical .action-label.separator, +:host-context(.linux) .monaco-menu .monaco-action-bar.vertical .action-label.separator { + margin-left: 0; + margin-right: 0; +} + +.monaco-menu .monaco-action-bar.vertical .submenu-indicator { + font-size: 60%; + padding: 0 1.8em; +} + +.linux .monaco-menu .monaco-action-bar.vertical .submenu-indicator, +:host-context(.linux) .monaco-menu .monaco-action-bar.vertical .submenu-indicator { + height: 100%; + mask-size: 10px 10px; + -webkit-mask-size: 10px 10px; +} + +.monaco-menu .action-item { + cursor: default; +}`;if(e){t+=` + /* Arrows */ + .monaco-scrollable-element > .scrollbar > .scra { + cursor: pointer; + font-size: 11px !important; + } + + .monaco-scrollable-element > .visible { + opacity: 1; + + /* Background rule added for IE9 - to allow clicks on dom node */ + background:rgba(0,0,0,0); + + transition: opacity 100ms linear; + } + .monaco-scrollable-element > .invisible { + opacity: 0; + pointer-events: none; + } + .monaco-scrollable-element > .invisible.fade { + transition: opacity 800ms linear; + } + + /* Scrollable Content Inset Shadow */ + .monaco-scrollable-element > .shadow { + position: absolute; + display: none; + } + .monaco-scrollable-element > .shadow.top { + display: block; + top: 0; + left: 3px; + height: 3px; + width: 100%; + } + .monaco-scrollable-element > .shadow.left { + display: block; + top: 3px; + left: 0; + height: 100%; + width: 3px; + } + .monaco-scrollable-element > .shadow.top-left-corner { + display: block; + top: 0; + left: 0; + height: 3px; + width: 3px; + } + `;const i=o.scrollbarShadow;i&&(t+=` + .monaco-scrollable-element > .shadow.top { + box-shadow: ${i} 0 6px 6px -6px inset; + } + + .monaco-scrollable-element > .shadow.left { + box-shadow: ${i} 6px 0 6px -6px inset; + } + + .monaco-scrollable-element > .shadow.top.left { + box-shadow: ${i} 6px 6px 6px -6px inset; + } + `);const n=o.scrollbarSliderBackground;n&&(t+=` + .monaco-scrollable-element > .scrollbar > .slider { + background: ${n}; + } + `);const s=o.scrollbarSliderHoverBackground;s&&(t+=` + .monaco-scrollable-element > .scrollbar > .slider:hover { + background: ${s}; + } + `);const r=o.scrollbarSliderActiveBackground;r&&(t+=` + .monaco-scrollable-element > .scrollbar > .slider.active { + background: ${r}; + } + `)}return t}class UY{constructor(e,t,i,n){this.contextViewService=e,this.telemetryService=t,this.notificationService=i,this.keybindingService=n,this.focusToReturn=null,this.lastContainer=null,this.block=null,this.blockDisposable=null,this.options={blockMouse:!0}}configure(e){this.options=e}showContextMenu(e){const t=e.getActions();if(!t.length)return;this.focusToReturn=Xi();let i;const n=Ei(e.domForShadowRoot)?e.domForShadowRoot:void 0;this.contextViewService.showContextView({getAnchor:()=>e.getAnchor(),canRelayout:!1,anchorAlignment:e.anchorAlignment,anchorAxisAlignment:e.anchorAxisAlignment,render:s=>{this.lastContainer=s;const r=e.getMenuClassName?e.getMenuClassName():"";r&&(s.className+=" "+r),this.options.blockMouse&&(this.block=s.appendChild(ce(".context-view-block")),this.block.style.position="fixed",this.block.style.cursor="initial",this.block.style.left="0",this.block.style.top="0",this.block.style.width="100%",this.block.style.height="100%",this.block.style.zIndex="-1",this.blockDisposable?.dispose(),this.blockDisposable=U(this.block,ee.MOUSE_DOWN,d=>d.stopPropagation()));const a=new X,l=e.actionRunner||new Oh;l.onWillRun(d=>this.onActionRun(d,!e.skipTelemetry),this,a),l.onDidRun(this.onDidActionRun,this,a),i=new Hf(s,t,{actionViewItemProvider:e.getActionViewItem,context:e.getActionsContext?e.getActionsContext():null,actionRunner:l,getKeyBinding:e.getKeyBinding?e.getKeyBinding:d=>this.keybindingService.lookupKeybinding(d.id)},WY),i.onDidCancel(()=>this.contextViewService.hideContextView(!0),null,a),i.onDidBlur(()=>this.contextViewService.hideContextView(!0),null,a);const c=fe(s);return a.add(U(c,ee.BLUR,()=>this.contextViewService.hideContextView(!0))),a.add(U(c,ee.MOUSE_DOWN,d=>{if(d.defaultPrevented)return;const h=new ur(c,d);let u=h.target;if(!h.rightButton){for(;u;){if(u===s)return;u=u.parentElement}this.contextViewService.hideContextView(!0)}})),No(a,i)},focus:()=>{i?.focus(!!e.autoSelectFirstItem)},onHide:s=>{e.onHide?.(!!s),this.block&&(this.block.remove(),this.block=null),this.blockDisposable?.dispose(),this.blockDisposable=null,this.lastContainer&&(Xi()===this.lastContainer||yi(Xi(),this.lastContainer))&&this.focusToReturn?.focus(),this.lastContainer=null}},n,!!n)}onActionRun(e,t){t&&this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.action.id,from:"contextMenu"}),this.contextViewService.hideContextView(!1)}onDidActionRun(e){e.error&&!$c(e.error)&&this.notificationService.error(e.error)}}var $Y=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Tu=function(o,e){return function(t,i){e(t,i,o)}};let gD=class extends z{get contextMenuHandler(){return this._contextMenuHandler||(this._contextMenuHandler=new UY(this.contextViewService,this.telemetryService,this.notificationService,this.keybindingService)),this._contextMenuHandler}constructor(e,t,i,n,s,r){super(),this.telemetryService=e,this.notificationService=t,this.contextViewService=i,this.keybindingService=n,this.menuService=s,this.contextKeyService=r,this._contextMenuHandler=void 0,this._onDidShowContextMenu=this._store.add(new A),this.onDidShowContextMenu=this._onDidShowContextMenu.event,this._onDidHideContextMenu=this._store.add(new A)}configure(e){this.contextMenuHandler.configure(e)}showContextMenu(e){e=mD.transform(e,this.menuService,this.contextKeyService),this.contextMenuHandler.showContextMenu({...e,onHide:t=>{e.onHide?.(t),this._onDidHideContextMenu.fire()}}),rl.getInstance().resetKeyStatus(),this._onDidShowContextMenu.fire()}};gD=$Y([Tu(0,$s),Tu(1,mn),Tu(2,lu),Tu(3,vt),Tu(4,yr),Tu(5,De)],gD);var mD;(function(o){function e(i){return i&&i.menuId instanceof $e}function t(i,n,s){if(!e(i))return i;const{menuId:r,menuActionOptions:a,contextKeyService:l}=i;return{...i,getActions:()=>{const c=[];if(r){const d=n.getMenuActions(r,l??s,a);HY(d,c)}return i.getActions?Gi.join(i.getActions(),c):c}}}o.transform=t})(mD||(mD={}));var ZC;(function(o){o[o.API=0]="API",o[o.USER=1]="USER"})(ZC||(ZC={}));var e2=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},YC=function(o,e){return function(t,i){e(t,i,o)}};let pD=class{constructor(e){this._commandService=e}async open(e,t){if(!GN(e,Te.command))return!1;if(!t?.allowCommands||(typeof e=="string"&&(e=ve.parse(e)),Array.isArray(t.allowCommands)&&!t.allowCommands.includes(e.path)))return!0;let i=[];try{i=Ok(decodeURIComponent(e.query))}catch{try{i=Ok(e.query)}catch{}}return Array.isArray(i)||(i=[i]),await this._commandService.executeCommand(e.path,...i),!0}};pD=e2([YC(0,hi)],pD);let _D=class{constructor(e){this._editorService=e}async open(e,t){typeof e=="string"&&(e=ve.parse(e));const{selection:i,uri:n}=_q(e);return e=n,e.scheme===Te.file&&(e=Qq(e)),await this._editorService.openCodeEditor({resource:e,options:{selection:i,source:t?.fromUserGesture?ZC.USER:ZC.API,...t?.editorOptions}},this._editorService.getFocusedCodeEditor(),t?.openToSide),!0}};_D=e2([YC(0,Pt)],_D);let bD=class{constructor(e,t){this._openers=new yn,this._validators=new yn,this._resolvers=new yn,this._resolvedUriTargets=new cs(i=>i.with({path:null,fragment:null,query:null}).toString()),this._externalOpeners=new yn,this._defaultExternalOpener={openExternal:async i=>(zx(i,Te.http,Te.https)?HF(i):_t.location.href=i,!0)},this._openers.push({open:async(i,n)=>n?.openExternal||zx(i,Te.mailto,Te.http,Te.https,Te.vsls)?(await this._doOpenExternal(i,n),!0):!1}),this._openers.push(new pD(t)),this._openers.push(new _D(e))}registerOpener(e){return{dispose:this._openers.unshift(e)}}async open(e,t){const i=typeof e=="string"?ve.parse(e):e,n=this._resolvedUriTargets.get(i)??e;for(const s of this._validators)if(!await s.shouldOpen(n,t))return!1;for(const s of this._openers)if(await s.open(e,t))return!0;return!1}async resolveExternalUri(e,t){for(const i of this._resolvers)try{const n=await i.resolveExternalUri(e,t);if(n)return this._resolvedUriTargets.has(n.resolved)||this._resolvedUriTargets.set(n.resolved,e),n}catch{}throw new Error("Could not resolve external URI: "+e.toString())}async _doOpenExternal(e,t){const i=typeof e=="string"?ve.parse(e):e;let n;try{n=(await this.resolveExternalUri(i,t)).resolved}catch{n=i}let s;if(typeof e=="string"&&i.toString()===n.toString()?s=e:s=encodeURI(n.toString(!0)),t?.allowContributedOpeners){const r=typeof t?.allowContributedOpeners=="string"?t?.allowContributedOpeners:void 0;for(const a of this._externalOpeners)if(await a.openExternal(s,{sourceUri:i,preferredOpenerId:r},ut.None))return!0}return this._defaultExternalOpener.openExternal(s,{sourceUri:i},ut.None)}dispose(){this._validators.clear()}};bD=e2([YC(0,Pt),YC(1,hi)],bD);const Zc=He("editorWorkerService");var Vt;(function(o){o[o.Hint=1]="Hint",o[o.Info=2]="Info",o[o.Warning=4]="Warning",o[o.Error=8]="Error"})(Vt||(Vt={}));(function(o){function e(r,a){return a-r}o.compare=e;const t=Object.create(null);t[o.Error]=m("sev.error","Error"),t[o.Warning]=m("sev.warning","Warning"),t[o.Info]=m("sev.info","Info");function i(r){return t[r]||""}o.toString=i;function n(r){switch(r){case Qt.Error:return o.Error;case Qt.Warning:return o.Warning;case Qt.Info:return o.Info;case Qt.Ignore:return o.Hint}}o.fromSeverity=n;function s(r){switch(r){case o.Error:return Qt.Error;case o.Warning:return Qt.Warning;case o.Info:return Qt.Info;case o.Hint:return Qt.Ignore}}o.toSeverity=s})(Vt||(Vt={}));var QC;(function(o){function t(n){return i(n,!0)}o.makeKey=t;function i(n,s){const r=[""];return n.source?r.push(n.source.replace("¦","\\¦")):r.push(""),n.code?typeof n.code=="string"?r.push(n.code.replace("¦","\\¦")):r.push(n.code.value.replace("¦","\\¦")):r.push(""),n.severity!==void 0&&n.severity!==null?r.push(Vt.toString(n.severity)):r.push(""),n.message&&s?r.push(n.message.replace("¦","\\¦")):r.push(""),n.startLineNumber!==void 0&&n.startLineNumber!==null?r.push(n.startLineNumber.toString()):r.push(""),n.startColumn!==void 0&&n.startColumn!==null?r.push(n.startColumn.toString()):r.push(""),n.endLineNumber!==void 0&&n.endLineNumber!==null?r.push(n.endLineNumber.toString()):r.push(""),n.endColumn!==void 0&&n.endColumn!==null?r.push(n.endColumn.toString()):r.push(""),r.push(""),r.join("¦")}o.makeKeyOptionalMessage=i})(QC||(QC={}));const xa=He("markerService"),z7=D("editor.lineHighlightBackground",null,m("lineHighlight","Background color for the highlight of line at the cursor position.")),vP=D("editor.lineHighlightBorder",{dark:"#282828",light:"#eeeeee",hcDark:"#f38518",hcLight:Ye},m("lineHighlightBorderBox","Background color for the border around the line at the cursor position."));D("editor.rangeHighlightBackground",{dark:"#ffffff0b",light:"#fdff0033",hcDark:null,hcLight:null},m("rangeHighlight","Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.rangeHighlightBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("rangeHighlightBorder","Background color of the border around highlighted ranges."));D("editor.symbolHighlightBackground",{dark:ll,light:ll,hcDark:null,hcLight:null},m("symbolHighlight","Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.symbolHighlightBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("symbolHighlightBorder","Background color of the border around highlighted symbols."));const uy=D("editorCursor.foreground",{dark:"#AEAFAD",light:q.black,hcDark:q.white,hcLight:"#0F4A85"},m("caret","Color of the editor cursor.")),t2=D("editorCursor.background",null,m("editorCursorBackground","The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.")),U7=D("editorMultiCursor.primary.foreground",uy,m("editorMultiCursorPrimaryForeground","Color of the primary editor cursor when multiple cursors are present.")),KY=D("editorMultiCursor.primary.background",t2,m("editorMultiCursorPrimaryBackground","The background color of the primary editor cursor when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),$7=D("editorMultiCursor.secondary.foreground",uy,m("editorMultiCursorSecondaryForeground","Color of secondary editor cursors when multiple cursors are present.")),jY=D("editorMultiCursor.secondary.background",t2,m("editorMultiCursorSecondaryBackground","The background color of secondary editor cursors when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),i2=D("editorWhitespace.foreground",{dark:"#e3e4e229",light:"#33333333",hcDark:"#e3e4e229",hcLight:"#CCCCCC"},m("editorWhitespaces","Color of whitespace characters in the editor.")),qY=D("editorLineNumber.foreground",{dark:"#858585",light:"#237893",hcDark:q.white,hcLight:"#292929"},m("editorLineNumbers","Color of editor line numbers.")),GY=D("editorIndentGuide.background",i2,m("editorIndentGuides","Color of the editor indentation guides."),!1,m("deprecatedEditorIndentGuides","'editorIndentGuide.background' is deprecated. Use 'editorIndentGuide.background1' instead.")),ZY=D("editorIndentGuide.activeBackground",i2,m("editorActiveIndentGuide","Color of the active editor indentation guides."),!1,m("deprecatedEditorActiveIndentGuide","'editorIndentGuide.activeBackground' is deprecated. Use 'editorIndentGuide.activeBackground1' instead.")),tb=D("editorIndentGuide.background1",GY,m("editorIndentGuides1","Color of the editor indentation guides (1).")),YY=D("editorIndentGuide.background2","#00000000",m("editorIndentGuides2","Color of the editor indentation guides (2).")),QY=D("editorIndentGuide.background3","#00000000",m("editorIndentGuides3","Color of the editor indentation guides (3).")),XY=D("editorIndentGuide.background4","#00000000",m("editorIndentGuides4","Color of the editor indentation guides (4).")),JY=D("editorIndentGuide.background5","#00000000",m("editorIndentGuides5","Color of the editor indentation guides (5).")),eQ=D("editorIndentGuide.background6","#00000000",m("editorIndentGuides6","Color of the editor indentation guides (6).")),ib=D("editorIndentGuide.activeBackground1",ZY,m("editorActiveIndentGuide1","Color of the active editor indentation guides (1).")),tQ=D("editorIndentGuide.activeBackground2","#00000000",m("editorActiveIndentGuide2","Color of the active editor indentation guides (2).")),iQ=D("editorIndentGuide.activeBackground3","#00000000",m("editorActiveIndentGuide3","Color of the active editor indentation guides (3).")),nQ=D("editorIndentGuide.activeBackground4","#00000000",m("editorActiveIndentGuide4","Color of the active editor indentation guides (4).")),sQ=D("editorIndentGuide.activeBackground5","#00000000",m("editorActiveIndentGuide5","Color of the active editor indentation guides (5).")),oQ=D("editorIndentGuide.activeBackground6","#00000000",m("editorActiveIndentGuide6","Color of the active editor indentation guides (6).")),rQ=D("editorActiveLineNumber.foreground",{dark:"#c6c6c6",light:"#0B216F",hcDark:Ut,hcLight:Ut},m("editorActiveLineNumber","Color of editor active line number"),!1,m("deprecatedEditorActiveLineNumber","Id is deprecated. Use 'editorLineNumber.activeForeground' instead."));D("editorLineNumber.activeForeground",rQ,m("editorActiveLineNumber","Color of editor active line number"));const aQ=D("editorLineNumber.dimmedForeground",null,m("editorDimmedLineNumber","Color of the final editor line when editor.renderFinalNewline is set to dimmed."));D("editorRuler.foreground",{dark:"#5A5A5A",light:q.lightgrey,hcDark:q.white,hcLight:"#292929"},m("editorRuler","Color of the editor rulers."));D("editorCodeLens.foreground",{dark:"#999999",light:"#919191",hcDark:"#999999",hcLight:"#292929"},m("editorCodeLensForeground","Foreground color of editor CodeLens"));D("editorBracketMatch.background",{dark:"#0064001a",light:"#0064001a",hcDark:"#0064001a",hcLight:"#0000"},m("editorBracketMatchBackground","Background color behind matching brackets"));D("editorBracketMatch.border",{dark:"#888",light:"#B9B9B9",hcDark:Ye,hcLight:Ye},m("editorBracketMatchBorder","Color for matching brackets boxes"));const lQ=D("editorOverviewRuler.border",{dark:"#7f7f7f4d",light:"#7f7f7f4d",hcDark:"#7f7f7f4d",hcLight:"#666666"},m("editorOverviewRulerBorder","Color of the overview ruler border.")),cQ=D("editorOverviewRuler.background",null,m("editorOverviewRulerBackground","Background color of the editor overview ruler."));D("editorGutter.background",Oo,m("editorGutter","Background color of the editor gutter. The gutter contains the glyph margins and the line numbers."));D("editorUnnecessaryCode.border",{dark:null,light:null,hcDark:q.fromHex("#fff").transparent(.8),hcLight:Ye},m("unnecessaryCodeBorder","Border color of unnecessary (unused) source code in the editor."));const dQ=D("editorUnnecessaryCode.opacity",{dark:q.fromHex("#000a"),light:q.fromHex("#0007"),hcDark:null,hcLight:null},m("unnecessaryCodeOpacity",`Opacity of unnecessary (unused) source code in the editor. For example, "#000000c0" will render the code with 75% opacity. For high contrast themes, use the 'editorUnnecessaryCode.border' theme color to underline unnecessary code instead of fading it out.`));D("editorGhostText.border",{dark:null,light:null,hcDark:q.fromHex("#fff").transparent(.8),hcLight:q.fromHex("#292929").transparent(.8)},m("editorGhostTextBorder","Border color of ghost text in the editor."));D("editorGhostText.foreground",{dark:q.fromHex("#ffffff56"),light:q.fromHex("#0007"),hcDark:null,hcLight:null},m("editorGhostTextForeground","Foreground color of the ghost text in the editor."));D("editorGhostText.background",null,m("editorGhostTextBackground","Background color of the ghost text in the editor."));const hQ=new q(new qe(0,122,204,.6));D("editorOverviewRuler.rangeHighlightForeground",hQ,m("overviewRulerRangeHighlight","Overview ruler marker color for range highlights. The color must not be opaque so as not to hide underlying decorations."),!0);const uQ=D("editorOverviewRuler.errorForeground",{dark:new q(new qe(255,18,18,.7)),light:new q(new qe(255,18,18,.7)),hcDark:new q(new qe(255,50,50,1)),hcLight:"#B5200D"},m("overviewRuleError","Overview ruler marker color for errors.")),fQ=D("editorOverviewRuler.warningForeground",{dark:Il,light:Il,hcDark:i_,hcLight:i_},m("overviewRuleWarning","Overview ruler marker color for warnings.")),gQ=D("editorOverviewRuler.infoForeground",{dark:ma,light:ma,hcDark:n_,hcLight:n_},m("overviewRuleInfo","Overview ruler marker color for infos.")),K7=D("editorBracketHighlight.foreground1",{dark:"#FFD700",light:"#0431FAFF",hcDark:"#FFD700",hcLight:"#0431FAFF"},m("editorBracketHighlightForeground1","Foreground color of brackets (1). Requires enabling bracket pair colorization.")),j7=D("editorBracketHighlight.foreground2",{dark:"#DA70D6",light:"#319331FF",hcDark:"#DA70D6",hcLight:"#319331FF"},m("editorBracketHighlightForeground2","Foreground color of brackets (2). Requires enabling bracket pair colorization.")),q7=D("editorBracketHighlight.foreground3",{dark:"#179FFF",light:"#7B3814FF",hcDark:"#87CEFA",hcLight:"#7B3814FF"},m("editorBracketHighlightForeground3","Foreground color of brackets (3). Requires enabling bracket pair colorization.")),G7=D("editorBracketHighlight.foreground4","#00000000",m("editorBracketHighlightForeground4","Foreground color of brackets (4). Requires enabling bracket pair colorization.")),Z7=D("editorBracketHighlight.foreground5","#00000000",m("editorBracketHighlightForeground5","Foreground color of brackets (5). Requires enabling bracket pair colorization.")),Y7=D("editorBracketHighlight.foreground6","#00000000",m("editorBracketHighlightForeground6","Foreground color of brackets (6). Requires enabling bracket pair colorization.")),mQ=D("editorBracketHighlight.unexpectedBracket.foreground",{dark:new q(new qe(255,18,18,.8)),light:new q(new qe(255,18,18,.8)),hcDark:"new Color(new RGBA(255, 50, 50, 1))",hcLight:"#B5200D"},m("editorBracketHighlightUnexpectedBracketForeground","Foreground color of unexpected brackets.")),pQ=D("editorBracketPairGuide.background1","#00000000",m("editorBracketPairGuide.background1","Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides.")),_Q=D("editorBracketPairGuide.background2","#00000000",m("editorBracketPairGuide.background2","Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides.")),bQ=D("editorBracketPairGuide.background3","#00000000",m("editorBracketPairGuide.background3","Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides.")),CQ=D("editorBracketPairGuide.background4","#00000000",m("editorBracketPairGuide.background4","Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides.")),vQ=D("editorBracketPairGuide.background5","#00000000",m("editorBracketPairGuide.background5","Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides.")),wQ=D("editorBracketPairGuide.background6","#00000000",m("editorBracketPairGuide.background6","Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides.")),yQ=D("editorBracketPairGuide.activeBackground1","#00000000",m("editorBracketPairGuide.activeBackground1","Background color of active bracket pair guides (1). Requires enabling bracket pair guides.")),SQ=D("editorBracketPairGuide.activeBackground2","#00000000",m("editorBracketPairGuide.activeBackground2","Background color of active bracket pair guides (2). Requires enabling bracket pair guides.")),LQ=D("editorBracketPairGuide.activeBackground3","#00000000",m("editorBracketPairGuide.activeBackground3","Background color of active bracket pair guides (3). Requires enabling bracket pair guides.")),xQ=D("editorBracketPairGuide.activeBackground4","#00000000",m("editorBracketPairGuide.activeBackground4","Background color of active bracket pair guides (4). Requires enabling bracket pair guides.")),kQ=D("editorBracketPairGuide.activeBackground5","#00000000",m("editorBracketPairGuide.activeBackground5","Background color of active bracket pair guides (5). Requires enabling bracket pair guides.")),DQ=D("editorBracketPairGuide.activeBackground6","#00000000",m("editorBracketPairGuide.activeBackground6","Background color of active bracket pair guides (6). Requires enabling bracket pair guides."));D("editorUnicodeHighlight.border",Il,m("editorUnicodeHighlight.border","Border color used to highlight unicode characters."));D("editorUnicodeHighlight.background",LK,m("editorUnicodeHighlight.background","Background color used to highlight unicode characters."));Sr((o,e)=>{const t=o.getColor(Oo),i=o.getColor(z7),n=i&&!i.isTransparent()?i:t;n&&e.addRule(`.monaco-editor .inputarea.ime-input { background-color: ${n}; }`)});function IQ(o,e){const t=[],i=[];for(const n of o)e.has(n)||t.push(n);for(const n of e)o.has(n)||i.push(n);return{removed:t,added:i}}function EQ(o,e){const t=new Set;for(const i of e)o.has(i)&&t.add(i);return t}var NQ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},wP=function(o,e){return function(t,i){e(t,i,o)}};let CD=class extends z{constructor(e,t){super(),this._markerService=t,this._onDidChangeMarker=this._register(new A),this._markerDecorations=new cs,e.getModels().forEach(i=>this._onModelAdded(i)),this._register(e.onModelAdded(this._onModelAdded,this)),this._register(e.onModelRemoved(this._onModelRemoved,this)),this._register(this._markerService.onMarkerChanged(this._handleMarkerChange,this))}dispose(){super.dispose(),this._markerDecorations.forEach(e=>e.dispose()),this._markerDecorations.clear()}getMarker(e,t){const i=this._markerDecorations.get(e);return i&&i.getMarker(t)||null}_handleMarkerChange(e){e.forEach(t=>{const i=this._markerDecorations.get(t);i&&this._updateDecorations(i)})}_onModelAdded(e){const t=new TQ(e);this._markerDecorations.set(e.uri,t),this._updateDecorations(t)}_onModelRemoved(e){const t=this._markerDecorations.get(e.uri);t&&(t.dispose(),this._markerDecorations.delete(e.uri)),(e.uri.scheme===Te.inMemory||e.uri.scheme===Te.internal||e.uri.scheme===Te.vscode)&&this._markerService?.read({resource:e.uri}).map(i=>i.owner).forEach(i=>this._markerService.remove(i,[e.uri]))}_updateDecorations(e){const t=this._markerService.read({resource:e.model.uri,take:500});e.update(t)&&this._onDidChangeMarker.fire(e.model)}};CD=NQ([wP(0,Fi),wP(1,xa)],CD);class TQ extends z{constructor(e){super(),this.model=e,this._map=new IU,this._register(_e(()=>{this.model.deltaDecorations([...this._map.values()],[]),this._map.clear()}))}update(e){const{added:t,removed:i}=IQ(new Set(this._map.keys()),new Set(e));if(t.length===0&&i.length===0)return!1;const n=i.map(a=>this._map.get(a)),s=t.map(a=>({range:this._createDecorationRange(this.model,a),options:this._createDecorationOption(a)})),r=this.model.deltaDecorations(n,s);for(const a of i)this._map.delete(a);for(let a=0;a=n)return i;const s=e.getWordAtPosition(i.getStartPosition());s&&(i=new I(i.startLineNumber,s.startColumn,i.endLineNumber,s.endColumn))}else if(t.endColumn===Number.MAX_VALUE&&t.startColumn===1&&i.startLineNumber===i.endLineNumber){const n=e.getLineFirstNonWhitespaceColumn(t.startLineNumber);n=0:!1}}const n2=He("markerDecorationsService");class _i{static _nextVisibleColumn(e,t,i){return e===9?_i.nextRenderTabStop(t,i):Rc(e)||UN(e)?t+2:t+1}static visibleColumnFromColumn(e,t,i){const n=Math.min(t-1,e.length),s=e.substring(0,n),r=new fC(s);let a=0;for(;!r.eol();){const l=uC(s,n,r.offset);r.nextGraphemeLength(),a=this._nextVisibleColumn(l,a,i)}return a}static columnFromVisibleColumn(e,t,i){if(t<=0)return 1;const n=e.length,s=new fC(e);let r=0,a=1;for(;!s.eol();){const l=uC(e,n,s.offset);s.nextGraphemeLength();const c=this._nextVisibleColumn(l,r,i),d=s.offset+1;if(c>=t){const h=t-r;return c-t=Rs&&(t=t-o%Rs),t}function FQ(o,e){return o.reduce((t,i)=>zt(t,e(i)),Ln)}function X7(o,e){return o===e}function h_(o,e){const t=o,i=e;if(i-t<=0)return Ln;const s=Math.floor(t/Rs),r=Math.floor(i/Rs),a=i-r*Rs;if(s===r){const l=t-s*Rs;return ni(0,a-l)}else return ni(r-s,a)}function Vf(o,e){return o=e}function lf(o){return ni(o.lineNumber-1,o.column-1)}function Jd(o,e){const t=o,i=Math.floor(t/Rs),n=t-i*Rs,s=e,r=Math.floor(s/Rs),a=s-r*Rs;return new I(i+1,n+1,r+1,a+1)}function BQ(o){const e=va(o);return ni(e.length-1,e[e.length-1].length)}class cl{static fromModelContentChanges(e){return e.map(i=>{const n=I.lift(i.range);return new cl(lf(n.getStartPosition()),lf(n.getEndPosition()),BQ(i.text))}).reverse()}constructor(e,t,i){this.startOffset=e,this.endOffset=t,this.newLength=i}toString(){return`[${ro(this.startOffset)}...${ro(this.endOffset)}) -> ${ro(this.newLength)}`}}class WQ{constructor(e){this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=e.map(t=>s2.from(t))}getOffsetBeforeChange(e){return this.adjustNextEdit(e),this.translateCurToOld(e)}getDistanceToNextChange(e){this.adjustNextEdit(e);const t=this.edits[this.nextEditIdx],i=t?this.translateOldToCur(t.offsetObj):null;return i===null?null:h_(e,i)}translateOldToCur(e){return e.lineCount===this.deltaLineIdxInOld?ni(e.lineCount+this.deltaOldToNewLineCount,e.columnCount+this.deltaOldToNewColumnCount):ni(e.lineCount+this.deltaOldToNewLineCount,e.columnCount)}translateCurToOld(e){const t=ro(e);return t.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?ni(t.lineCount-this.deltaOldToNewLineCount,t.columnCount-this.deltaOldToNewColumnCount):ni(t.lineCount-this.deltaOldToNewLineCount,t.columnCount)}adjustNextEdit(e){for(;this.nextEditIdx>5;if(n===0){const r=1<this.textBufferLineCount-1||this.lineIdx===this.textBufferLineCount-1&&this.lineCharOffset>=this.textBufferLastLineLength)return null;this.line===null&&(this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.line=this.lineTokens.getLineContent(),this.lineTokenOffset=this.lineCharOffset===0?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset));const e=this.lineIdx,t=this.lineCharOffset;let i=0;for(;;){const s=this.lineTokens,r=s.getCount();let a=null;if(this.lineTokenOffset1e3))break;if(i>1500)break}const n=PQ(e,t,this.lineIdx,this.lineCharOffset);return new Jl(n,0,-1,ss.getEmpty(),new Sd(n))}}class KQ{constructor(e,t){this.text=e,this._offset=Ln,this.idx=0;const i=t.getRegExpStr(),n=i?new RegExp(i+`| +`,"gi"):null,s=[];let r,a=0,l=0,c=0,d=0;const h=[];for(let g=0;g<60;g++)h.push(new Jl(ni(0,g),0,-1,ss.getEmpty(),new Sd(ni(0,g))));const u=[];for(let g=0;g<60;g++)u.push(new Jl(ni(1,g),0,-1,ss.getEmpty(),new Sd(ni(1,g))));if(n)for(n.lastIndex=0;(r=n.exec(e))!==null;){const g=r.index,p=r[0];if(p===` +`)a++,l=g+1;else{if(c!==g){let _;if(d===a){const b=g-c;if(bjQ(t)).join("|")}}get regExpGlobal(){if(!this.hasRegExp){const e=this.getRegExpStr();this._regExpGlobal=e?new RegExp(e,"gi"):null,this.hasRegExp=!0}return this._regExpGlobal}getToken(e){return this.map.get(e.toLowerCase())}findClosingTokenText(e){for(const[t,i]of this.map)if(i.kind===2&&i.bracketIds.intersects(e))return t}get isEmpty(){return this.map.size===0}}function jQ(o){let e=xl(o);return/^[\w ]+/.test(o)&&(e=`\\b${e}`),/[\w ]+$/.test(o)&&(e=`${e}\\b`),e}class t9{constructor(e,t){this.denseKeyProvider=e,this.getLanguageConfiguration=t,this.languageIdToBracketTokens=new Map}didLanguageChange(e){return this.languageIdToBracketTokens.has(e)}getSingleLanguageBracketTokens(e){let t=this.languageIdToBracketTokens.get(e);return t||(t=a2.createFromLanguage(this.getLanguageConfiguration(e),this.denseKeyProvider),this.languageIdToBracketTokens.set(e,t)),t}}function qQ(o){if(o.length===0)return null;if(o.length===1)return o[0];let e=0;function t(){if(e>=o.length)return null;const r=e,a=o[r].listHeight;for(e++;e=2?i9(r===0&&e===o.length?o:o.slice(r,e),!1):o[r]}let i=t(),n=t();if(!n)return i;for(let r=t();r;r=t())LP(i,n)<=LP(n,r)?(i=PS(i,n),n=r):n=PS(n,r);return PS(i,n)}function i9(o,e=!1){if(o.length===0)return null;if(o.length===1)return o[0];let t=o.length;for(;t>3;){const i=t>>1;for(let n=0;n=3?o[2]:null,e)}function LP(o,e){return Math.abs(o.listHeight-e.listHeight)}function PS(o,e){return o.listHeight===e.listHeight?pa.create23(o,e,null,!1):o.listHeight>e.listHeight?GQ(o,e):ZQ(e,o)}function GQ(o,e){o=o.toMutable();let t=o;const i=[];let n;for(;;){if(e.listHeight===t.listHeight){n=e;break}if(t.kind!==4)throw new Error("unexpected");i.push(t),t=t.makeLastElementMutable()}for(let s=i.length-1;s>=0;s--){const r=i[s];n?r.childrenLength>=3?n=pa.create23(r.unappendChild(),n,null,!1):(r.appendChildOfSameHeight(n),n=void 0):r.handleChildrenChanged()}return n?pa.create23(o,n,null,!1):o}function ZQ(o,e){o=o.toMutable();let t=o;const i=[];for(;e.listHeight!==t.listHeight;){if(t.kind!==4)throw new Error("unexpected");i.push(t),t=t.makeFirstElementMutable()}let n=e;for(let s=i.length-1;s>=0;s--){const r=i[s];n?r.childrenLength>=3?n=pa.create23(n,r.unprependChild(),null,!1):(r.prependChildOfSameHeight(n),n=void 0):r.handleChildrenChanged()}return n?pa.create23(n,o,null,!1):o}class YQ{constructor(e){this.lastOffset=Ln,this.nextNodes=[e],this.offsets=[Ln],this.idxs=[]}readLongestNodeAt(e,t){if(Vf(e,this.lastOffset))throw new Error("Invalid offset");for(this.lastOffset=e;;){const i=mm(this.nextNodes);if(!i)return;const n=mm(this.offsets);if(Vf(e,n))return;if(Vf(n,e))if(zt(n,i.length)<=e)this.nextNodeAfterCurrent();else{const s=OS(i);s!==-1?(this.nextNodes.push(i.getChild(s)),this.offsets.push(n),this.idxs.push(s)):this.nextNodeAfterCurrent()}else{if(t(i))return this.nextNodeAfterCurrent(),i;{const s=OS(i);if(s===-1){this.nextNodeAfterCurrent();return}else this.nextNodes.push(i.getChild(s)),this.offsets.push(n),this.idxs.push(s)}}}}nextNodeAfterCurrent(){for(;;){const e=mm(this.offsets),t=mm(this.nextNodes);if(this.nextNodes.pop(),this.offsets.pop(),this.idxs.length===0)break;const i=mm(this.nextNodes),n=OS(i,this.idxs[this.idxs.length-1]);if(n!==-1){this.nextNodes.push(i.getChild(n)),this.offsets.push(zt(e,t.length)),this.idxs[this.idxs.length-1]=n;break}else this.idxs.pop()}}}function OS(o,e=-1){for(;;){if(e++,e>=o.childrenLength)return-1;if(o.getChild(e))return e}}function mm(o){return o.length>0?o[o.length-1]:void 0}function vD(o,e,t,i){return new QQ(o,e,t,i).parseDocument()}class QQ{constructor(e,t,i,n){if(this.tokenizer=e,this.createImmutableLists=n,this._itemsConstructed=0,this._itemsFromCache=0,i&&n)throw new Error("Not supported");this.oldNodeReader=i?new YQ(i):void 0,this.positionMapper=new WQ(t)}parseDocument(){this._itemsConstructed=0,this._itemsFromCache=0;let e=this.parseList(ss.getEmpty(),0);return e||(e=pa.getEmpty()),e}parseList(e,t){const i=[];for(;;){let s=this.tryReadChildFromCache(e);if(!s){const r=this.tokenizer.peek();if(!r||r.kind===2&&r.bracketIds.intersects(e))break;s=this.parseChild(e,t+1)}s.kind===4&&s.childrenLength===0||i.push(s)}return this.oldNodeReader?qQ(i):i9(i,this.createImmutableLists)}tryReadChildFromCache(e){if(this.oldNodeReader){const t=this.positionMapper.getDistanceToNextChange(this.tokenizer.offset);if(t===null||!XC(t)){const i=this.oldNodeReader.readLongestNodeAt(this.positionMapper.getOffsetBeforeChange(this.tokenizer.offset),n=>t!==null&&!Vf(n.length,t)?!1:n.canBeReused(e));if(i)return this._itemsFromCache++,this.tokenizer.skip(i.length),i}}}parseChild(e,t){this._itemsConstructed++;const i=this.tokenizer.read();switch(i.kind){case 2:return new UQ(i.bracketIds,i.length);case 0:return i.astNode;case 1:{if(t>300)return new Sd(i.length);const n=e.merge(i.bracketIds),s=this.parseList(n,t+1),r=this.tokenizer.peek();return r&&r.kind===2&&(r.bracketId===i.bracketId||r.bracketIds.intersects(i.bracketIds))?(this.tokenizer.read(),u_.create(i.astNode,s,r.astNode)):u_.create(i.astNode,s,null)}default:throw new Error("unexpected")}}}function tv(o,e){if(o.length===0)return e;if(e.length===0)return o;const t=new Ll(xP(o)),i=xP(e);i.push({modified:!1,lengthBefore:void 0,lengthAfter:void 0});let n=t.dequeue();function s(c){if(c===void 0){const h=t.takeWhile(u=>!0)||[];return n&&h.unshift(n),h}const d=[];for(;n&&!XC(c);){const[h,u]=n.splitAt(c);d.push(h),c=h_(h.lengthAfter,c),n=u??t.dequeue()}return XC(c)||d.push(new ac(!1,c,c)),d}const r=[];function a(c,d,h){if(r.length>0&&X7(r[r.length-1].endOffset,c)){const u=r[r.length-1];r[r.length-1]=new cl(u.startOffset,d,zt(u.newLength,h))}else r.push({startOffset:c,endOffset:d,newLength:h})}let l=Ln;for(const c of i){const d=s(c.lengthBefore);if(c.modified){const h=FQ(d,f=>f.lengthBefore),u=zt(l,h);a(l,u,c.lengthAfter),l=u}else for(const h of d){const u=l;l=zt(l,h.lengthBefore),h.modified&&a(u,l,h.lengthAfter)}}return r}class ac{constructor(e,t,i){this.modified=e,this.lengthBefore=t,this.lengthAfter=i}splitAt(e){const t=h_(e,this.lengthAfter);return X7(t,Ln)?[this,void 0]:this.modified?[new ac(this.modified,this.lengthBefore,e),new ac(this.modified,Ln,t)]:[new ac(this.modified,e,e),new ac(this.modified,t,t)]}toString(){return`${this.modified?"M":"U"}:${ro(this.lengthBefore)} -> ${ro(this.lengthAfter)}`}}function xP(o){const e=[];let t=Ln;for(const i of o){const n=h_(t,i.startOffset);XC(n)||e.push(new ac(!1,n,n));const s=h_(i.startOffset,i.endOffset);e.push(new ac(!0,s,i.newLength)),t=i.endOffset}return e}class XQ extends z{didLanguageChange(e){return this.brackets.didLanguageChange(e)}constructor(e,t){if(super(),this.textModel=e,this.getLanguageConfiguration=t,this.didChangeEmitter=new A,this.denseKeyProvider=new J7,this.brackets=new t9(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],e.tokenization.hasTokens)e.tokenization.backgroundTokenizationState===2?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{const i=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),n=new KQ(this.textModel.getValue(),i);this.initialAstWithoutTokens=vD(n,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(this.textModel.tokenization.backgroundTokenizationState===2){const e=this.initialAstWithoutTokens===void 0;this.initialAstWithoutTokens=void 0,e||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:e}){const t=e.map(i=>new cl(ni(i.fromLineNumber-1,0),ni(i.toLineNumber,0),ni(i.toLineNumber-i.fromLineNumber+1,0)));this.handleEdits(t,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(e){const t=cl.fromModelContentChanges(e.changes);this.handleEdits(t,!1)}handleEdits(e,t){const i=tv(this.queuedTextEdits,e);this.queuedTextEdits=i,this.initialAstWithoutTokens&&!t&&(this.queuedTextEditsForInitialAstWithoutTokens=tv(this.queuedTextEditsForInitialAstWithoutTokens,e))}flushQueue(){this.queuedTextEdits.length>0&&(this.astWithTokens=this.parseDocumentFromTextBuffer(this.queuedTextEdits,this.astWithTokens,!1),this.queuedTextEdits=[]),this.queuedTextEditsForInitialAstWithoutTokens.length>0&&(this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(this.queuedTextEditsForInitialAstWithoutTokens,this.initialAstWithoutTokens,!1)),this.queuedTextEditsForInitialAstWithoutTokens=[])}parseDocumentFromTextBuffer(e,t,i){const n=t,s=new e9(this.textModel,this.brackets);return vD(s,e,n,i)}getBracketsInRange(e,t){this.flushQueue();const i=ni(e.startLineNumber-1,e.startColumn-1),n=ni(e.endLineNumber-1,e.endColumn-1);return new Zd(s=>{const r=this.initialAstWithoutTokens||this.astWithTokens;wD(r,Ln,r.length,i,n,s,0,0,new Map,t)})}getBracketPairsInRange(e,t){this.flushQueue();const i=lf(e.getStartPosition()),n=lf(e.getEndPosition());return new Zd(s=>{const r=this.initialAstWithoutTokens||this.astWithTokens,a=new JQ(s,t,this.textModel);yD(r,Ln,r.length,i,n,a,0,new Map)})}getFirstBracketAfter(e){this.flushQueue();const t=this.initialAstWithoutTokens||this.astWithTokens;return s9(t,Ln,t.length,lf(e))}getFirstBracketBefore(e){this.flushQueue();const t=this.initialAstWithoutTokens||this.astWithTokens;return n9(t,Ln,t.length,lf(e))}}function n9(o,e,t,i){if(o.kind===4||o.kind===2){const n=[];for(const s of o.children)t=zt(e,s.length),n.push({nodeOffsetStart:e,nodeOffsetEnd:t}),e=t;for(let s=n.length-1;s>=0;s--){const{nodeOffsetStart:r,nodeOffsetEnd:a}=n[s];if(Vf(r,i)){const l=n9(o.children[s],r,a,i);if(l)return l}}return null}else{if(o.kind===3)return null;if(o.kind===1){const n=Jd(e,t);return{bracketInfo:o.bracketInfo,range:n}}}return null}function s9(o,e,t,i){if(o.kind===4||o.kind===2){for(const n of o.children){if(t=zt(e,n.length),Vf(i,t)){const s=s9(n,e,t,i);if(s)return s}e=t}return null}else{if(o.kind===3)return null;if(o.kind===1){const n=Jd(e,t);return{bracketInfo:o.bracketInfo,range:n}}}return null}function wD(o,e,t,i,n,s,r,a,l,c,d=!1){if(r>200)return!0;e:for(;;)switch(o.kind){case 4:{const h=o.childrenLength;for(let u=0;u200)return!0;let l=!0;if(o.kind===2){let c=0;if(a){let u=a.get(o.openingBracket.text);u===void 0&&(u=0),c=u,u++,a.set(o.openingBracket.text,u)}const d=zt(e,o.openingBracket.length);let h=-1;if(s.includeMinIndentation&&(h=o.computeMinIndentation(e,s.textModel)),l=s.push(new AQ(Jd(e,t),Jd(e,d),o.closingBracket?Jd(zt(d,o.child?.length||Ln),t):void 0,r,c,o,h)),e=d,l&&o.child){const u=o.child;if(t=zt(e,u.length),zf(e,n)&&Am(t,i)&&(l=yD(u,e,t,i,n,s,r+1,a),!l))return!1}a?.set(o.openingBracket.text,c)}else{let c=e;for(const d of o.children){const h=c;if(c=zt(c,d.length),zf(h,n)&&zf(i,c)&&(l=yD(d,h,c,i,n,s,r,a),!l))return!1}}return l}class eX extends z{get canBuildAST(){return this.textModel.getValueLength()<=5e6}constructor(e,t){super(),this.textModel=e,this.languageConfigurationService=t,this.bracketPairsTree=this._register(new Dn),this.onDidChangeEmitter=new A,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1}handleLanguageConfigurationServiceChange(e){(!e.languageId||this.bracketPairsTree.value?.object.didLanguageChange(e.languageId))&&(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}handleDidChangeOptions(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(e){this.bracketPairsTree.value?.object.handleContentChanged(e)}handleDidChangeBackgroundTokenizationState(){this.bracketPairsTree.value?.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(e){this.bracketPairsTree.value?.object.handleDidChangeTokens(e)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){const e=new X;this.bracketPairsTree.value=tX(e.add(new XQ(this.textModel,t=>this.languageConfigurationService.getLanguageConfiguration(t))),e),e.add(this.bracketPairsTree.value.object.onDidChange(t=>this.onDidChangeEmitter.fire(t))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire())}getBracketPairsInRange(e){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(e,!1)||Zd.empty}getBracketPairsInRangeWithMinIndentation(e){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(e,!0)||Zd.empty}getBracketsInRange(e,t=!1){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketsInRange(e,t)||Zd.empty}findMatchingBracketUp(e,t,i){const n=this.textModel.validatePosition(t),s=this.textModel.getLanguageIdAtPosition(n.lineNumber,n.column);if(this.canBuildAST){const r=this.languageConfigurationService.getLanguageConfiguration(s).bracketsNew.getClosingBracketInfo(e);if(!r)return null;const a=this.getBracketPairsInRange(I.fromPositions(t,t)).findLast(l=>r.closes(l.openingBracketInfo));return a?a.openingBracketRange:null}else{const r=e.toLowerCase(),a=this.languageConfigurationService.getLanguageConfiguration(s).brackets;if(!a)return null;const l=a.textIsBracket[r];return l?Kb(this._findMatchingBracketUp(l,n,FS(i))):null}}matchBracket(e,t){if(this.canBuildAST){const i=this.getBracketPairsInRange(I.fromPositions(e,e)).filter(n=>n.closingBracketRange!==void 0&&(n.openingBracketRange.containsPosition(e)||n.closingBracketRange.containsPosition(e))).findLastMaxBy(rs(n=>n.openingBracketRange.containsPosition(e)?n.openingBracketRange:n.closingBracketRange,I.compareRangesUsingStarts));return i?[i.openingBracketRange,i.closingBracketRange]:null}else{const i=FS(t);return this._matchBracket(this.textModel.validatePosition(e),i)}}_establishBracketSearchOffsets(e,t,i,n){const s=t.getCount(),r=t.getLanguageId(n);let a=Math.max(0,e.column-1-i.maxBracketLength);for(let c=n-1;c>=0;c--){const d=t.getEndOffset(c);if(d<=a)break;if(Pr(t.getStandardTokenType(c))||t.getLanguageId(c)!==r){a=d;break}}let l=Math.min(t.getLineContent().length,e.column-1+i.maxBracketLength);for(let c=n+1;c=l)break;if(Pr(t.getStandardTokenType(c))||t.getLanguageId(c)!==r){l=d;break}}return{searchStartOffset:a,searchEndOffset:l}}_matchBracket(e,t){const i=e.lineNumber,n=this.textModel.tokenization.getLineTokens(i),s=this.textModel.getLineContent(i),r=n.findTokenIndexAtOffset(e.column-1);if(r<0)return null;const a=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId(r)).brackets;if(a&&!Pr(n.getStandardTokenType(r))){let{searchStartOffset:l,searchEndOffset:c}=this._establishBracketSearchOffsets(e,n,a,r),d=null;for(;;){const h=Co.findNextBracketInRange(a.forwardRegex,i,s,l,c);if(!h)break;if(h.startColumn<=e.column&&e.column<=h.endColumn){const u=s.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),f=this._matchFoundBracket(h,a.textIsBracket[u],a.textIsOpenBracket[u],t);if(f){if(f instanceof Xa)return null;d=f}}l=h.endColumn-1}if(d)return d}if(r>0&&n.getStartOffset(r)===e.column-1){const l=r-1,c=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId(l)).brackets;if(c&&!Pr(n.getStandardTokenType(l))){const{searchStartOffset:d,searchEndOffset:h}=this._establishBracketSearchOffsets(e,n,c,l),u=Co.findPrevBracketInRange(c.reversedRegex,i,s,d,h);if(u&&u.startColumn<=e.column&&e.column<=u.endColumn){const f=s.substring(u.startColumn-1,u.endColumn-1).toLowerCase(),g=this._matchFoundBracket(u,c.textIsBracket[f],c.textIsOpenBracket[f],t);if(g)return g instanceof Xa?null:g}}}return null}_matchFoundBracket(e,t,i,n){if(!t)return null;const s=i?this._findMatchingBracketDown(t,e.getEndPosition(),n):this._findMatchingBracketUp(t,e.getStartPosition(),n);return s?s instanceof Xa?s:[e,s]:null}_findMatchingBracketUp(e,t,i){const n=e.languageId,s=e.reversedRegex;let r=-1,a=0;const l=(c,d,h,u)=>{for(;;){if(i&&++a%100===0&&!i())return Xa.INSTANCE;const f=Co.findPrevBracketInRange(s,c,d,h,u);if(!f)break;const g=d.substring(f.startColumn-1,f.endColumn-1).toLowerCase();if(e.isOpen(g)?r++:e.isClose(g)&&r--,r===0)return f;u=f.startColumn-1}return null};for(let c=t.lineNumber;c>=1;c--){const d=this.textModel.tokenization.getLineTokens(c),h=d.getCount(),u=this.textModel.getLineContent(c);let f=h-1,g=u.length,p=u.length;c===t.lineNumber&&(f=d.findTokenIndexAtOffset(t.column-1),g=t.column-1,p=t.column-1);let _=!0;for(;f>=0;f--){const b=d.getLanguageId(f)===n&&!Pr(d.getStandardTokenType(f));if(b)_?g=d.getStartOffset(f):(g=d.getStartOffset(f),p=d.getEndOffset(f));else if(_&&g!==p){const C=l(c,u,g,p);if(C)return C}_=b}if(_&&g!==p){const b=l(c,u,g,p);if(b)return b}}return null}_findMatchingBracketDown(e,t,i){const n=e.languageId,s=e.forwardRegex;let r=1,a=0;const l=(d,h,u,f)=>{for(;;){if(i&&++a%100===0&&!i())return Xa.INSTANCE;const g=Co.findNextBracketInRange(s,d,h,u,f);if(!g)break;const p=h.substring(g.startColumn-1,g.endColumn-1).toLowerCase();if(e.isOpen(p)?r++:e.isClose(p)&&r--,r===0)return g;u=g.endColumn-1}return null},c=this.textModel.getLineCount();for(let d=t.lineNumber;d<=c;d++){const h=this.textModel.tokenization.getLineTokens(d),u=h.getCount(),f=this.textModel.getLineContent(d);let g=0,p=0,_=0;d===t.lineNumber&&(g=h.findTokenIndexAtOffset(t.column-1),p=t.column-1,_=t.column-1);let b=!0;for(;g=1;r--){const a=this.textModel.tokenization.getLineTokens(r),l=a.getCount(),c=this.textModel.getLineContent(r);let d=l-1,h=c.length,u=c.length;if(r===t.lineNumber){d=a.findTokenIndexAtOffset(t.column-1),h=t.column-1,u=t.column-1;const g=a.getLanguageId(d);i!==g&&(i=g,n=this.languageConfigurationService.getLanguageConfiguration(i).brackets,s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew)}let f=!0;for(;d>=0;d--){const g=a.getLanguageId(d);if(i!==g){if(n&&s&&f&&h!==u){const _=Co.findPrevBracketInRange(n.reversedRegex,r,c,h,u);if(_)return this._toFoundBracket(s,_);f=!1}i=g,n=this.languageConfigurationService.getLanguageConfiguration(i).brackets,s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew}const p=!!n&&!Pr(a.getStandardTokenType(d));if(p)f?h=a.getStartOffset(d):(h=a.getStartOffset(d),u=a.getEndOffset(d));else if(s&&n&&f&&h!==u){const _=Co.findPrevBracketInRange(n.reversedRegex,r,c,h,u);if(_)return this._toFoundBracket(s,_)}f=p}if(s&&n&&f&&h!==u){const g=Co.findPrevBracketInRange(n.reversedRegex,r,c,h,u);if(g)return this._toFoundBracket(s,g)}}return null}findNextBracket(e){const t=this.textModel.validatePosition(e);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketAfter(t)||null;const i=this.textModel.getLineCount();let n=null,s=null,r=null;for(let a=t.lineNumber;a<=i;a++){const l=this.textModel.tokenization.getLineTokens(a),c=l.getCount(),d=this.textModel.getLineContent(a);let h=0,u=0,f=0;if(a===t.lineNumber){h=l.findTokenIndexAtOffset(t.column-1),u=t.column-1,f=t.column-1;const p=l.getLanguageId(h);n!==p&&(n=p,s=this.languageConfigurationService.getLanguageConfiguration(n).brackets,r=this.languageConfigurationService.getLanguageConfiguration(n).bracketsNew)}let g=!0;for(;hp.closingBracketRange!==void 0&&p.range.strictContainsRange(f));return g?[g.openingBracketRange,g.closingBracketRange]:null}const n=FS(t),s=this.textModel.getLineCount(),r=new Map;let a=[];const l=(f,g)=>{if(!r.has(f)){const p=[];for(let _=0,b=g?g.brackets.length:0;_{for(;;){if(n&&++c%100===0&&!n())return Xa.INSTANCE;const C=Co.findNextBracketInRange(f.forwardRegex,g,p,_,b);if(!C)break;const w=p.substring(C.startColumn-1,C.endColumn-1).toLowerCase(),v=f.textIsBracket[w];if(v&&(v.isOpen(w)?a[v.index]++:v.isClose(w)&&a[v.index]--,a[v.index]===-1))return this._matchFoundBracket(C,v,!1,n);_=C.endColumn-1}return null};let h=null,u=null;for(let f=i.lineNumber;f<=s;f++){const g=this.textModel.tokenization.getLineTokens(f),p=g.getCount(),_=this.textModel.getLineContent(f);let b=0,C=0,w=0;if(f===i.lineNumber){b=g.findTokenIndexAtOffset(i.column-1),C=i.column-1,w=i.column-1;const y=g.getLanguageId(b);h!==y&&(h=y,u=this.languageConfigurationService.getLanguageConfiguration(h).brackets,l(h,u))}let v=!0;for(;be?.dispose()}}function FS(o){if(typeof o>"u")return()=>!0;{const e=Date.now();return()=>Date.now()-e<=o}}const Ow=class Ow{constructor(){this._searchCanceledBrand=void 0}};Ow.INSTANCE=new Ow;let Xa=Ow;function Kb(o){return o instanceof Xa?null:o}class iX extends z{constructor(e){super(),this.textModel=e,this.colorProvider=new o9,this.onDidChangeEmitter=new A,this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=e.getOptions().bracketPairColorizationOptions,this._register(e.bracketPairs.onDidChange(t=>{this.onDidChangeEmitter.fire()}))}handleDidChangeOptions(e){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(e,t,i,n){return n?[]:t===void 0?[]:this.colorizationOptions.enabled?this.textModel.bracketPairs.getBracketsInRange(e,!0).map(r=>({id:`bracket${r.range.toString()}-${r.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(r,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:r.range})).toArray():[]}getAllDecorations(e,t){return e===void 0?[]:this.colorizationOptions.enabled?this.getDecorationsInRange(new I(1,1,this.textModel.getLineCount(),1),e,t):[]}}class o9{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(e,t){return e.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(t?e.nestingLevelOfEqualBracketType:e.nestingLevel)}getInlineClassNameOfLevel(e){return`bracket-highlighting-${e%30}`}}Sr((o,e)=>{const t=[K7,j7,q7,G7,Z7,Y7],i=new o9;e.addRule(`.monaco-editor .${i.unexpectedClosingBracketClassName} { color: ${o.getColor(mQ)}; }`);const n=t.map(s=>o.getColor(s)).filter(s=>!!s).filter(s=>!s.isTransparent());for(let s=0;s<30;s++){const r=n[s%n.length];e.addRule(`.monaco-editor .${i.getInlineClassNameOfLevel(s)} { color: ${r}; }`)}});function jb(o){return o.replace(/\n/g,"\\n").replace(/\r/g,"\\r")}class Ki{get oldLength(){return this.oldText.length}get oldEnd(){return this.oldPosition+this.oldText.length}get newLength(){return this.newText.length}get newEnd(){return this.newPosition+this.newText.length}constructor(e,t,i,n){this.oldPosition=e,this.oldText=t,this.newPosition=i,this.newText=n}toString(){return this.oldText.length===0?`(insert@${this.oldPosition} "${jb(this.newText)}")`:this.newText.length===0?`(delete@${this.oldPosition} "${jb(this.oldText)}")`:`(replace@${this.oldPosition} "${jb(this.oldText)}" with "${jb(this.newText)}")`}static _writeStringSize(e){return 4+2*e.length}static _writeString(e,t,i){const n=t.length;er(e,n,i),i+=4;for(let s=0;s0&&(this.changes=nX(this.changes,t)),this.afterEOL=i,this.afterVersionId=n,this.afterCursorState=s}static _writeSelectionsSize(e){return 4+16*(e?e.length:0)}static _writeSelections(e,t,i){if(er(e,t?t.length:0,i),i+=4,t)for(const n of t)er(e,n.selectionStartLineNumber,i),i+=4,er(e,n.selectionStartColumn,i),i+=4,er(e,n.positionLineNumber,i),i+=4,er(e,n.positionColumn,i),i+=4;return i}static _readSelections(e,t,i){const n=Jo(e,t);t+=4;for(let s=0;st.toString()).join(", ")}matchesResource(e){return(ve.isUri(this.model)?this.model:this.model.uri).toString()===e.toString()}setModel(e){this.model=e}canAppend(e){return this.model===e&&this._data instanceof xi}append(e,t,i,n,s){this._data instanceof xi&&this._data.append(e,t,i,n,s)}close(){this._data instanceof xi&&(this._data=this._data.serialize())}open(){this._data instanceof xi||(this._data=xi.deserialize(this._data))}undo(){if(ve.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof xi&&(this._data=this._data.serialize());const e=xi.deserialize(this._data);this.model._applyUndo(e.changes,e.beforeEOL,e.beforeVersionId,e.beforeCursorState)}redo(){if(ve.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof xi&&(this._data=this._data.serialize());const e=xi.deserialize(this._data);this.model._applyRedo(e.changes,e.afterEOL,e.afterVersionId,e.afterCursorState)}heapSize(){return this._data instanceof xi&&(this._data=this._data.serialize()),this._data.byteLength+168}}class sX{get resources(){return this._editStackElementsArr.map(e=>e.resource)}constructor(e,t,i){this.label=e,this.code=t,this.type=1,this._isOpen=!0,this._editStackElementsArr=i.slice(0),this._editStackElementsMap=new Map;for(const n of this._editStackElementsArr){const s=Mu(n.resource);this._editStackElementsMap.set(s,n)}this._delegate=null}prepareUndoRedo(){if(this._delegate)return this._delegate.prepareUndoRedo(this)}matchesResource(e){const t=Mu(e);return this._editStackElementsMap.has(t)}setModel(e){const t=Mu(ve.isUri(e)?e:e.uri);this._editStackElementsMap.has(t)&&this._editStackElementsMap.get(t).setModel(e)}canAppend(e){if(!this._isOpen)return!1;const t=Mu(e.uri);return this._editStackElementsMap.has(t)?this._editStackElementsMap.get(t).canAppend(e):!1}append(e,t,i,n,s){const r=Mu(e.uri);this._editStackElementsMap.get(r).append(e,t,i,n,s)}close(){this._isOpen=!1}open(){}undo(){this._isOpen=!1;for(const e of this._editStackElementsArr)e.undo()}redo(){for(const e of this._editStackElementsArr)e.redo()}heapSize(e){const t=Mu(e);return this._editStackElementsMap.has(t)?this._editStackElementsMap.get(t).heapSize():0}split(){return this._editStackElementsArr}toString(){const e=[];for(const t of this._editStackElementsArr)e.push(`${Fo(t.resource)}: ${t}`);return`{${e.join(", ")}}`}}function SD(o){return o.getEOL()===` +`?0:1}function Ja(o){return o?o instanceof r9||o instanceof sX:!1}class l2{constructor(e,t){this._model=e,this._undoRedoService=t}pushStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);Ja(e)&&e.close()}popStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);Ja(e)&&e.open()}clear(){this._undoRedoService.removeElements(this._model.uri)}_getOrCreateEditStackElement(e,t){const i=this._undoRedoService.getLastElement(this._model.uri);if(Ja(i)&&i.canAppend(this._model))return i;const n=new r9(m("edit","Typing"),"undoredo.textBufferEdit",this._model,e);return this._undoRedoService.pushElement(n,t),n}pushEOL(e){const t=this._getOrCreateEditStackElement(null,void 0);this._model.setEOL(e),t.append(this._model,[],SD(this._model),this._model.getAlternativeVersionId(),null)}pushEditOperation(e,t,i,n){const s=this._getOrCreateEditStackElement(e,n),r=this._model.applyEdits(t,!0),a=l2._computeCursorState(i,r),l=r.map((c,d)=>({index:d,textChange:c.textChange}));return l.sort((c,d)=>c.textChange.oldPosition===d.textChange.oldPosition?c.index-d.index:c.textChange.oldPosition-d.textChange.oldPosition),s.append(this._model,l.map(c=>c.textChange),SD(this._model),this._model.getAlternativeVersionId(),a),a}static _computeCursorState(e,t){try{return e?e(t):null}catch(i){return Ze(i),null}}}class a9 extends z{constructor(){super(...arguments),this._isDisposed=!1}dispose(){super.dispose(),this._isDisposed=!0}assertNotDisposed(){if(this._isDisposed)throw new Error("TextModelPart is disposed!")}}function l9(o,e){let t=0,i=0;const n=o.length;for(;in)throw new nt("Illegal value for lineNumber");const s=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,r=!!(s&&s.offSide);let a=-2,l=-1,c=-2,d=-1;const h=L=>{if(a!==-1&&(a===-2||a>L-1)){a=-1,l=-1;for(let E=L-2;E>=0;E--){const N=this._computeIndentLevel(E);if(N>=0){a=E,l=N;break}}}if(c===-2){c=-1,d=-1;for(let E=L;E=0){c=E,d=N;break}}}};let u=-2,f=-1,g=-2,p=-1;const _=L=>{if(u===-2){u=-1,f=-1;for(let E=L-2;E>=0;E--){const N=this._computeIndentLevel(E);if(N>=0){u=E,f=N;break}}}if(g!==-1&&(g===-2||g=0){g=E,p=N;break}}}};let b=0,C=!0,w=0,v=!0,y=0,x=0;for(let L=0;C||v;L++){const E=e-L,N=e+L;L>1&&(E<1||E1&&(N>n||N>i)&&(v=!1),L>5e4&&(C=!1,v=!1);let H=-1;if(C&&E>=1){const W=this._computeIndentLevel(E-1);W>=0?(c=E-1,d=W,H=Math.ceil(W/this.textModel.getOptions().indentSize)):(h(E),H=this._getIndentLevelForWhitespaceLine(r,l,d))}let F=-1;if(v&&N<=n){const W=this._computeIndentLevel(N-1);W>=0?(u=N-1,f=W,F=Math.ceil(W/this.textModel.getOptions().indentSize)):(_(N),F=this._getIndentLevelForWhitespaceLine(r,f,p))}if(L===0){x=H;continue}if(L===1){if(N<=n&&F>=0&&x+1===F){C=!1,b=N,w=N,y=F;continue}if(E>=1&&H>=0&&H-1===x){v=!1,b=E,w=E,y=H;continue}if(b=e,w=e,y=x,y===0)return{startLineNumber:b,endLineNumber:w,indent:y}}C&&(H>=y?b=E:C=!1),v&&(F>=y?w=N:v=!1)}return{startLineNumber:b,endLineNumber:w,indent:y}}getLinesBracketGuides(e,t,i,n){const s=[];for(let h=e;h<=t;h++)s.push([]);const r=!0,a=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new I(e,1,t,this.textModel.getLineMaxColumn(t))).toArray();let l;if(i&&a.length>0){const h=(e<=i.lineNumber&&i.lineNumber<=t?a:this.textModel.bracketPairs.getBracketPairsInRange(I.fromPositions(i)).toArray()).filter(u=>I.strictContainsPosition(u.range,i));l=xC(h,u=>r)?.range}const c=this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType,d=new c9;for(const h of a){if(!h.closingBracketRange)continue;const u=l&&h.range.equalsRange(l);if(!u&&!n.includeInactive)continue;const f=d.getInlineClassName(h.nestingLevel,h.nestingLevelOfEqualBracketType,c)+(n.highlightActive&&u?" "+d.activeClassName:""),g=h.openingBracketRange.getStartPosition(),p=h.closingBracketRange.getStartPosition(),_=n.horizontalGuides===eh.Enabled||n.horizontalGuides===eh.EnabledForActive&&u;if(h.range.startLineNumber===h.range.endLineNumber){_&&s[h.range.startLineNumber-e].push(new Kd(-1,h.openingBracketRange.getEndPosition().column,f,new tp(!1,p.column),-1,-1));continue}const b=this.getVisibleColumnFromPosition(p),C=this.getVisibleColumnFromPosition(h.openingBracketRange.getStartPosition()),w=Math.min(C,b,h.minVisibleColumnIndentation+1);let v=!1;zn(this.textModel.getLineContent(h.closingBracketRange.startLineNumber))=e&&C>w&&s[g.lineNumber-e].push(new Kd(w,-1,f,new tp(!1,g.column),-1,-1)),p.lineNumber<=t&&b>w&&s[p.lineNumber-e].push(new Kd(w,-1,f,new tp(!v,p.column),-1,-1)))}for(const h of s)h.sort((u,f)=>u.visibleColumn-f.visibleColumn);return s}getVisibleColumnFromPosition(e){return _i.visibleColumnFromColumn(this.textModel.getLineContent(e.lineNumber),e.column,this.textModel.getOptions().tabSize)+1}getLinesIndentGuides(e,t){this.assertNotDisposed();const i=this.textModel.getLineCount();if(e<1||e>i)throw new Error("Illegal value for startLineNumber");if(t<1||t>i)throw new Error("Illegal value for endLineNumber");const n=this.textModel.getOptions(),s=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,r=!!(s&&s.offSide),a=new Array(t-e+1);let l=-2,c=-1,d=-2,h=-1;for(let u=e;u<=t;u++){const f=u-e,g=this._computeIndentLevel(u-1);if(g>=0){l=u-1,c=g,a[f]=Math.ceil(g/n.indentSize);continue}if(l===-2){l=-1,c=-1;for(let p=u-2;p>=0;p--){const _=this._computeIndentLevel(p);if(_>=0){l=p,c=_;break}}}if(d!==-1&&(d===-2||d=0){d=p,h=_;break}}}a[f]=this._getIndentLevelForWhitespaceLine(r,c,h)}return a}_getIndentLevelForWhitespaceLine(e,t,i){const n=this.textModel.getOptions();return t===-1||i===-1?0:t0&&a>0||l>0&&c>0)return;const d=Math.abs(a-c),h=Math.abs(r-l);if(d===0){n.spacesDiff=h,h>0&&0<=l-1&&l-10?n++:v>1&&s++,aX(r,a,_,w,h),h.looksLikeAlignment&&!(t&&e===h.spacesDiff)))continue;const x=h.spacesDiff;x<=c&&d[x]++,r=_,a=w}let u=t;n!==s&&(u=n{const _=d[p];_>g&&(g=_,f=p)}),f===4&&d[4]>0&&d[2]>0&&d[2]>=d[4]/2&&(f=2)}return{insertSpaces:u,tabSize:f}}function Fn(o){return(o.metadata&1)>>>0}function It(o,e){o.metadata=o.metadata&254|e<<0}function Zi(o){return(o.metadata&2)>>>1===1}function Lt(o,e){o.metadata=o.metadata&253|(e?1:0)<<1}function d9(o){return(o.metadata&4)>>>2===1}function DP(o,e){o.metadata=o.metadata&251|(e?1:0)<<2}function h9(o){return(o.metadata&64)>>>6===1}function IP(o,e){o.metadata=o.metadata&191|(e?1:0)<<6}function lX(o){return(o.metadata&24)>>>3}function EP(o,e){o.metadata=o.metadata&231|e<<3}function cX(o){return(o.metadata&32)>>>5===1}function NP(o,e){o.metadata=o.metadata&223|(e?1:0)<<5}class u9{constructor(e,t,i){this.metadata=0,this.parent=this,this.left=this,this.right=this,It(this,1),this.start=t,this.end=i,this.delta=0,this.maxEnd=i,this.id=e,this.ownerId=0,this.options=null,DP(this,!1),IP(this,!1),EP(this,1),NP(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=null,Lt(this,!1)}reset(e,t,i,n){this.start=t,this.end=i,this.maxEnd=i,this.cachedVersionId=e,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=n}setOptions(e){this.options=e;const t=this.options.className;DP(this,t==="squiggly-error"||t==="squiggly-warning"||t==="squiggly-info"),IP(this,this.options.glyphMarginClassName!==null),EP(this,this.options.stickiness),NP(this,this.options.collapseOnReplaceEdit)}setCachedOffsets(e,t,i){this.cachedVersionId!==i&&(this.range=null),this.cachedVersionId=i,this.cachedAbsoluteStart=e,this.cachedAbsoluteEnd=t}detach(){this.parent=null,this.left=null,this.right=null}}const Be=new u9(null,0,0);Be.parent=Be;Be.left=Be;Be.right=Be;It(Be,0);class BS{constructor(){this.root=Be,this.requestNormalizeDelta=!1}intervalSearch(e,t,i,n,s,r){return this.root===Be?[]:_X(this,e,t,i,n,s,r)}search(e,t,i,n){return this.root===Be?[]:pX(this,e,t,i,n)}collectNodesFromOwner(e){return gX(this,e)}collectNodesPostOrder(){return mX(this)}insert(e){TP(this,e),this._normalizeDeltaIfNecessary()}delete(e){MP(this,e),this._normalizeDeltaIfNecessary()}resolveNode(e,t){const i=e;let n=0;for(;e!==this.root;)e===e.parent.right&&(n+=e.parent.delta),e=e.parent;const s=i.start+n,r=i.end+n;i.setCachedOffsets(s,r,t)}acceptReplace(e,t,i,n){const s=uX(this,e,e+t);for(let r=0,a=s.length;rt||i===1?!1:i===2?!0:e}function hX(o,e,t,i,n){const s=lX(o),r=s===0||s===2,a=s===1||s===2,l=t-e,c=i,d=Math.min(l,c),h=o.start;let u=!1;const f=o.end;let g=!1;e<=h&&f<=t&&cX(o)&&(o.start=e,u=!0,o.end=e,g=!0);{const _=n?1:l>0?2:0;!u&&Ru(h,r,e,_)&&(u=!0),!g&&Ru(f,a,e,_)&&(g=!0)}if(d>0&&!n){const _=l>c?2:0;!u&&Ru(h,r,e+d,_)&&(u=!0),!g&&Ru(f,a,e+d,_)&&(g=!0)}{const _=n?1:0;!u&&Ru(h,r,t,_)&&(o.start=e+c,u=!0),!g&&Ru(f,a,t,_)&&(o.end=e+c,g=!0)}const p=c-l;u||(o.start=Math.max(0,h+p)),g||(o.end=Math.max(0,f+p)),o.start>o.end&&(o.end=o.start)}function uX(o,e,t){let i=o.root,n=0,s=0,r=0,a=0;const l=[];let c=0;for(;i!==Be;){if(Zi(i)){Lt(i.left,!1),Lt(i.right,!1),i===i.parent.right&&(n-=i.parent.delta),i=i.parent;continue}if(!Zi(i.left)){if(s=n+i.maxEnd,st){Lt(i,!0);continue}if(a=n+i.end,a>=e&&(i.setCachedOffsets(r,a,0),l[c++]=i),Lt(i,!0),i.right!==Be&&!Zi(i.right)){n+=i.delta,i=i.right;continue}}return Lt(o.root,!1),l}function fX(o,e,t,i){let n=o.root,s=0,r=0,a=0;const l=i-(t-e);for(;n!==Be;){if(Zi(n)){Lt(n.left,!1),Lt(n.right,!1),n===n.parent.right&&(s-=n.parent.delta),Fc(n),n=n.parent;continue}if(!Zi(n.left)){if(r=s+n.maxEnd,rt){n.start+=l,n.end+=l,n.delta+=l,(n.delta<-1073741824||n.delta>1073741824)&&(o.requestNormalizeDelta=!0),Lt(n,!0);continue}if(Lt(n,!0),n.right!==Be&&!Zi(n.right)){s+=n.delta,n=n.right;continue}}Lt(o.root,!1)}function gX(o,e){let t=o.root;const i=[];let n=0;for(;t!==Be;){if(Zi(t)){Lt(t.left,!1),Lt(t.right,!1),t=t.parent;continue}if(t.left!==Be&&!Zi(t.left)){t=t.left;continue}if(t.ownerId===e&&(i[n++]=t),Lt(t,!0),t.right!==Be&&!Zi(t.right)){t=t.right;continue}}return Lt(o.root,!1),i}function mX(o){let e=o.root;const t=[];let i=0;for(;e!==Be;){if(Zi(e)){Lt(e.left,!1),Lt(e.right,!1),e=e.parent;continue}if(e.left!==Be&&!Zi(e.left)){e=e.left;continue}if(e.right!==Be&&!Zi(e.right)){e=e.right;continue}t[i++]=e,Lt(e,!0)}return Lt(o.root,!1),t}function pX(o,e,t,i,n){let s=o.root,r=0,a=0,l=0;const c=[];let d=0;for(;s!==Be;){if(Zi(s)){Lt(s.left,!1),Lt(s.right,!1),s===s.parent.right&&(r-=s.parent.delta),s=s.parent;continue}if(s.left!==Be&&!Zi(s.left)){s=s.left;continue}a=r+s.start,l=r+s.end,s.setCachedOffsets(a,l,i);let h=!0;if(e&&s.ownerId&&s.ownerId!==e&&(h=!1),t&&d9(s)&&(h=!1),n&&!h9(s)&&(h=!1),h&&(c[d++]=s),Lt(s,!0),s.right!==Be&&!Zi(s.right)){r+=s.delta,s=s.right;continue}}return Lt(o.root,!1),c}function _X(o,e,t,i,n,s,r){let a=o.root,l=0,c=0,d=0,h=0;const u=[];let f=0;for(;a!==Be;){if(Zi(a)){Lt(a.left,!1),Lt(a.right,!1),a===a.parent.right&&(l-=a.parent.delta),a=a.parent;continue}if(!Zi(a.left)){if(c=l+a.maxEnd,ct){Lt(a,!0);continue}if(h=l+a.end,h>=e){a.setCachedOffsets(d,h,s);let g=!0;i&&a.ownerId&&a.ownerId!==i&&(g=!1),n&&d9(a)&&(g=!1),r&&!h9(a)&&(g=!1),g&&(u[f++]=a)}if(Lt(a,!0),a.right!==Be&&!Zi(a.right)){l+=a.delta,a=a.right;continue}}return Lt(o.root,!1),u}function TP(o,e){if(o.root===Be)return e.parent=Be,e.left=Be,e.right=Be,It(e,0),o.root=e,o.root;bX(o,e),Kl(e.parent);let t=e;for(;t!==o.root&&Fn(t.parent)===1;)if(t.parent===t.parent.parent.left){const i=t.parent.parent.right;Fn(i)===1?(It(t.parent,0),It(i,0),It(t.parent.parent,1),t=t.parent.parent):(t===t.parent.right&&(t=t.parent,ip(o,t)),It(t.parent,0),It(t.parent.parent,1),np(o,t.parent.parent))}else{const i=t.parent.parent.left;Fn(i)===1?(It(t.parent,0),It(i,0),It(t.parent.parent,1),t=t.parent.parent):(t===t.parent.left&&(t=t.parent,np(o,t)),It(t.parent,0),It(t.parent.parent,1),ip(o,t.parent.parent))}return It(o.root,0),e}function bX(o,e){let t=0,i=o.root;const n=e.start,s=e.end;for(;;)if(vX(n,s,i.start+t,i.end+t)<0)if(i.left===Be){e.start-=t,e.end-=t,e.maxEnd-=t,i.left=e;break}else i=i.left;else if(i.right===Be){e.start-=t+i.delta,e.end-=t+i.delta,e.maxEnd-=t+i.delta,i.right=e;break}else t+=i.delta,i=i.right;e.parent=i,e.left=Be,e.right=Be,It(e,1)}function MP(o,e){let t,i;if(e.left===Be?(t=e.right,i=e,t.delta+=e.delta,(t.delta<-1073741824||t.delta>1073741824)&&(o.requestNormalizeDelta=!0),t.start+=e.delta,t.end+=e.delta):e.right===Be?(t=e.left,i=e):(i=CX(e.right),t=i.right,t.start+=i.delta,t.end+=i.delta,t.delta+=i.delta,(t.delta<-1073741824||t.delta>1073741824)&&(o.requestNormalizeDelta=!0),i.start+=e.delta,i.end+=e.delta,i.delta=e.delta,(i.delta<-1073741824||i.delta>1073741824)&&(o.requestNormalizeDelta=!0)),i===o.root){o.root=t,It(t,0),e.detach(),WS(),Fc(t),o.root.parent=Be;return}const n=Fn(i)===1;if(i===i.parent.left?i.parent.left=t:i.parent.right=t,i===e?t.parent=i.parent:(i.parent===e?t.parent=i:t.parent=i.parent,i.left=e.left,i.right=e.right,i.parent=e.parent,It(i,Fn(e)),e===o.root?o.root=i:e===e.parent.left?e.parent.left=i:e.parent.right=i,i.left!==Be&&(i.left.parent=i),i.right!==Be&&(i.right.parent=i)),e.detach(),n){Kl(t.parent),i!==e&&(Kl(i),Kl(i.parent)),WS();return}Kl(t),Kl(t.parent),i!==e&&(Kl(i),Kl(i.parent));let s;for(;t!==o.root&&Fn(t)===0;)t===t.parent.left?(s=t.parent.right,Fn(s)===1&&(It(s,0),It(t.parent,1),ip(o,t.parent),s=t.parent.right),Fn(s.left)===0&&Fn(s.right)===0?(It(s,1),t=t.parent):(Fn(s.right)===0&&(It(s.left,0),It(s,1),np(o,s),s=t.parent.right),It(s,Fn(t.parent)),It(t.parent,0),It(s.right,0),ip(o,t.parent),t=o.root)):(s=t.parent.left,Fn(s)===1&&(It(s,0),It(t.parent,1),np(o,t.parent),s=t.parent.left),Fn(s.left)===0&&Fn(s.right)===0?(It(s,1),t=t.parent):(Fn(s.left)===0&&(It(s.right,0),It(s,1),ip(o,s),s=t.parent.left),It(s,Fn(t.parent)),It(t.parent,0),It(s.left,0),np(o,t.parent),t=o.root));It(t,0),WS()}function CX(o){for(;o.left!==Be;)o=o.left;return o}function WS(){Be.parent=Be,Be.delta=0,Be.start=0,Be.end=0}function ip(o,e){const t=e.right;t.delta+=e.delta,(t.delta<-1073741824||t.delta>1073741824)&&(o.requestNormalizeDelta=!0),t.start+=e.delta,t.end+=e.delta,e.right=t.left,t.left!==Be&&(t.left.parent=e),t.parent=e.parent,e.parent===Be?o.root=t:e===e.parent.left?e.parent.left=t:e.parent.right=t,t.left=e,e.parent=t,Fc(e),Fc(t)}function np(o,e){const t=e.left;e.delta-=t.delta,(e.delta<-1073741824||e.delta>1073741824)&&(o.requestNormalizeDelta=!0),e.start-=t.delta,e.end-=t.delta,e.left=t.right,t.right!==Be&&(t.right.parent=e),t.parent=e.parent,e.parent===Be?o.root=t:e===e.parent.right?e.parent.right=t:e.parent.left=t,t.right=e,e.parent=t,Fc(e),Fc(t)}function f9(o){let e=o.end;if(o.left!==Be){const t=o.left.maxEnd;t>e&&(e=t)}if(o.right!==Be){const t=o.right.maxEnd+o.delta;t>e&&(e=t)}return e}function Fc(o){o.maxEnd=f9(o)}function Kl(o){for(;o!==Be;){const e=f9(o);if(o.maxEnd===e)return;o.maxEnd=e,o=o.parent}}function vX(o,e,t,i){return o===t?e-i:o-t}class LD{constructor(e,t){this.piece=e,this.color=t,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==Le)return c2(this.right);let e=this;for(;e.parent!==Le&&e.parent.left!==e;)e=e.parent;return e.parent===Le?Le:e.parent}prev(){if(this.left!==Le)return g9(this.left);let e=this;for(;e.parent!==Le&&e.parent.right!==e;)e=e.parent;return e.parent===Le?Le:e.parent}detach(){this.parent=null,this.left=null,this.right=null}}const Le=new LD(null,0);Le.parent=Le;Le.left=Le;Le.right=Le;Le.color=0;function c2(o){for(;o.left!==Le;)o=o.left;return o}function g9(o){for(;o.right!==Le;)o=o.right;return o}function d2(o){return o===Le?0:o.size_left+o.piece.length+d2(o.right)}function h2(o){return o===Le?0:o.lf_left+o.piece.lineFeedCnt+h2(o.right)}function HS(){Le.parent=Le}function sp(o,e){const t=e.right;t.size_left+=e.size_left+(e.piece?e.piece.length:0),t.lf_left+=e.lf_left+(e.piece?e.piece.lineFeedCnt:0),e.right=t.left,t.left!==Le&&(t.left.parent=e),t.parent=e.parent,e.parent===Le?o.root=t:e.parent.left===e?e.parent.left=t:e.parent.right=t,t.left=e,e.parent=t}function op(o,e){const t=e.left;e.left=t.right,t.right!==Le&&(t.right.parent=e),t.parent=e.parent,e.size_left-=t.size_left+(t.piece?t.piece.length:0),e.lf_left-=t.lf_left+(t.piece?t.piece.lineFeedCnt:0),e.parent===Le?o.root=t:e===e.parent.right?e.parent.right=t:e.parent.left=t,t.right=e,e.parent=t}function qb(o,e){let t,i;if(e.left===Le?(i=e,t=i.right):e.right===Le?(i=e,t=i.left):(i=c2(e.right),t=i.right),i===o.root){o.root=t,t.color=0,e.detach(),HS(),o.root.parent=Le;return}const n=i.color===1;if(i===i.parent.left?i.parent.left=t:i.parent.right=t,i===e?(t.parent=i.parent,Pm(o,t)):(i.parent===e?t.parent=i:t.parent=i.parent,Pm(o,t),i.left=e.left,i.right=e.right,i.parent=e.parent,i.color=e.color,e===o.root?o.root=i:e===e.parent.left?e.parent.left=i:e.parent.right=i,i.left!==Le&&(i.left.parent=i),i.right!==Le&&(i.right.parent=i),i.size_left=e.size_left,i.lf_left=e.lf_left,Pm(o,i)),e.detach(),t.parent.left===t){const r=d2(t),a=h2(t);if(r!==t.parent.size_left||a!==t.parent.lf_left){const l=r-t.parent.size_left,c=a-t.parent.lf_left;t.parent.size_left=r,t.parent.lf_left=a,Ha(o,t.parent,l,c)}}if(Pm(o,t.parent),n){HS();return}let s;for(;t!==o.root&&t.color===0;)t===t.parent.left?(s=t.parent.right,s.color===1&&(s.color=0,t.parent.color=1,sp(o,t.parent),s=t.parent.right),s.left.color===0&&s.right.color===0?(s.color=1,t=t.parent):(s.right.color===0&&(s.left.color=0,s.color=1,op(o,s),s=t.parent.right),s.color=t.parent.color,t.parent.color=0,s.right.color=0,sp(o,t.parent),t=o.root)):(s=t.parent.left,s.color===1&&(s.color=0,t.parent.color=1,op(o,t.parent),s=t.parent.left),s.left.color===0&&s.right.color===0?(s.color=1,t=t.parent):(s.left.color===0&&(s.right.color=0,s.color=1,sp(o,s),s=t.parent.left),s.color=t.parent.color,t.parent.color=0,s.left.color=0,op(o,t.parent),t=o.root));t.color=0,HS()}function RP(o,e){for(Pm(o,e);e!==o.root&&e.parent.color===1;)if(e.parent===e.parent.parent.left){const t=e.parent.parent.right;t.color===1?(e.parent.color=0,t.color=0,e.parent.parent.color=1,e=e.parent.parent):(e===e.parent.right&&(e=e.parent,sp(o,e)),e.parent.color=0,e.parent.parent.color=1,op(o,e.parent.parent))}else{const t=e.parent.parent.left;t.color===1?(e.parent.color=0,t.color=0,e.parent.parent.color=1,e=e.parent.parent):(e===e.parent.left&&(e=e.parent,op(o,e)),e.parent.color=0,e.parent.parent.color=1,sp(o,e.parent.parent))}o.root.color=0}function Ha(o,e,t,i){for(;e!==o.root&&e!==Le;)e.parent.left===e&&(e.parent.size_left+=t,e.parent.lf_left+=i),e=e.parent}function Pm(o,e){let t=0,i=0;if(e!==o.root){for(;e!==o.root&&e===e.parent.right;)e=e.parent;if(e!==o.root)for(e=e.parent,t=d2(e.left)-e.size_left,i=h2(e.left)-e.lf_left,e.size_left+=t,e.lf_left+=i;e!==o.root&&(t!==0||i!==0);)e.parent.left===e&&(e.parent.size_left+=t,e.parent.lf_left+=i),e=e.parent}}const Ra=65535;function m9(o){let e;return o[o.length-1]<65536?e=new Uint16Array(o.length):e=new Uint32Array(o.length),e.set(o,0),e}class wX{constructor(e,t,i,n,s){this.lineStarts=e,this.cr=t,this.lf=i,this.crlf=n,this.isBasicASCII=s}}function Va(o,e=!0){const t=[0];let i=1;for(let n=0,s=o.length;n126)&&(r=!1)}const a=new wX(m9(o),i,n,s,r);return o.length=0,a}class Xn{constructor(e,t,i,n,s){this.bufferIndex=e,this.start=t,this.end=i,this.lineFeedCnt=n,this.length=s}}class Ld{constructor(e,t){this.buffer=e,this.lineStarts=t}}class SX{constructor(e,t){this._pieces=[],this._tree=e,this._BOM=t,this._index=0,e.root!==Le&&e.iterate(e.root,i=>(i!==Le&&this._pieces.push(i.piece),!0))}read(){return this._pieces.length===0?this._index===0?(this._index++,this._BOM):null:this._index>this._pieces.length-1?null:this._index===0?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class LX{constructor(e){this._limit=e,this._cache=[]}get(e){for(let t=this._cache.length-1;t>=0;t--){const i=this._cache[t];if(i.nodeStartOffset<=e&&i.nodeStartOffset+i.node.piece.length>=e)return i}return null}get2(e){for(let t=this._cache.length-1;t>=0;t--){const i=this._cache[t];if(i.nodeStartLineNumber&&i.nodeStartLineNumber=e)return i}return null}set(e){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(e)}validate(e){let t=!1;const i=this._cache;for(let n=0;n=e){i[n]=null,t=!0;continue}}if(t){const n=[];for(const s of i)s!==null&&n.push(s);this._cache=n}}}class xX{constructor(e,t,i){this.create(e,t,i)}create(e,t,i){this._buffers=[new Ld("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=Le,this._lineCnt=1,this._length=0,this._EOL=t,this._EOLLength=t.length,this._EOLNormalized=i;let n=null;for(let s=0,r=e.length;s0){e[s].lineStarts||(e[s].lineStarts=Va(e[s].buffer));const a=new Xn(s+1,{line:0,column:0},{line:e[s].lineStarts.length-1,column:e[s].buffer.length-e[s].lineStarts[e[s].lineStarts.length-1]},e[s].lineStarts.length-1,e[s].buffer.length);this._buffers.push(e[s]),n=this.rbInsertRight(n,a)}this._searchCache=new LX(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(e){const t=Ra,i=t-Math.floor(t/3),n=i*2;let s="",r=0;const a=[];if(this.iterate(this.root,l=>{const c=this.getNodeContent(l),d=c.length;if(r<=i||r+d0){const l=s.replace(/\r\n|\r|\n/g,e);a.push(new Ld(l,Va(l)))}this.create(a,e,!0)}getEOL(){return this._EOL}setEOL(e){this._EOL=e,this._EOLLength=this._EOL.length,this.normalizeEOL(e)}createSnapshot(e){return new SX(this,e)}getOffsetAt(e,t){let i=0,n=this.root;for(;n!==Le;)if(n.left!==Le&&n.lf_left+1>=e)n=n.left;else if(n.lf_left+n.piece.lineFeedCnt+1>=e){i+=n.size_left;const s=this.getAccumulatedValue(n,e-n.lf_left-2);return i+=s+t-1}else e-=n.lf_left+n.piece.lineFeedCnt,i+=n.size_left+n.piece.length,n=n.right;return i}getPositionAt(e){e=Math.floor(e),e=Math.max(0,e);let t=this.root,i=0;const n=e;for(;t!==Le;)if(t.size_left!==0&&t.size_left>=e)t=t.left;else if(t.size_left+t.piece.length>=e){const s=this.getIndexOf(t,e-t.size_left);if(i+=t.lf_left+s.index,s.index===0){const r=this.getOffsetAt(i+1,1),a=n-r;return new P(i+1,a+1)}return new P(i+1,s.remainder+1)}else if(e-=t.size_left+t.piece.length,i+=t.lf_left+t.piece.lineFeedCnt,t.right===Le){const s=this.getOffsetAt(i+1,1),r=n-e-s;return new P(i+1,r+1)}else t=t.right;return new P(1,1)}getValueInRange(e,t){if(e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn)return"";const i=this.nodeAt2(e.startLineNumber,e.startColumn),n=this.nodeAt2(e.endLineNumber,e.endColumn),s=this.getValueInRange2(i,n);return t?t!==this._EOL||!this._EOLNormalized?s.replace(/\r\n|\r|\n/g,t):t===this.getEOL()&&this._EOLNormalized?s:s.replace(/\r\n|\r|\n/g,t):s}getValueInRange2(e,t){if(e.node===t.node){const a=e.node,l=this._buffers[a.piece.bufferIndex].buffer,c=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start);return l.substring(c+e.remainder,c+t.remainder)}let i=e.node;const n=this._buffers[i.piece.bufferIndex].buffer,s=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);let r=n.substring(s+e.remainder,s+i.piece.length);for(i=i.next();i!==Le;){const a=this._buffers[i.piece.bufferIndex].buffer,l=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);if(i===t.node){r+=a.substring(l,l+t.remainder);break}else r+=a.substr(l,i.piece.length);i=i.next()}return r}getLinesContent(){const e=[];let t=0,i="",n=!1;return this.iterate(this.root,s=>{if(s===Le)return!0;const r=s.piece;let a=r.length;if(a===0)return!0;const l=this._buffers[r.bufferIndex].buffer,c=this._buffers[r.bufferIndex].lineStarts,d=r.start.line,h=r.end.line;let u=c[d]+r.start.column;if(n&&(l.charCodeAt(u)===10&&(u++,a--),e[t++]=i,i="",n=!1,a===0))return!0;if(d===h)return!this._EOLNormalized&&l.charCodeAt(u+a-1)===13?(n=!0,i+=l.substr(u,a-1)):i+=l.substr(u,a),!0;i+=this._EOLNormalized?l.substring(u,Math.max(u,c[d+1]-this._EOLLength)):l.substring(u,c[d+1]).replace(/(\r\n|\r|\n)$/,""),e[t++]=i;for(let f=d+1;fv+g,t.reset(0)):(C=u.buffer,w=v=>v,t.reset(g));do if(_=t.next(C),_){if(w(_.index)>=p)return d;this.positionInBuffer(e,w(_.index)-f,b);const v=this.getLineFeedCnt(e.piece.bufferIndex,s,b),y=b.line===s.line?b.column-s.column+n:b.column+1,x=y+_[0].length;if(h[d++]=bd(new I(i+v,y,i+v,x),_,l),w(_.index)+_[0].length>=p||d>=c)return d}while(_);return d}findMatchesLineByLine(e,t,i,n){const s=[];let r=0;const a=new ef(t.wordSeparators,t.regex);let l=this.nodeAt2(e.startLineNumber,e.startColumn);if(l===null)return[];const c=this.nodeAt2(e.endLineNumber,e.endColumn);if(c===null)return[];let d=this.positionInBuffer(l.node,l.remainder);const h=this.positionInBuffer(c.node,c.remainder);if(l.node===c.node)return this.findMatchesInNode(l.node,a,e.startLineNumber,e.startColumn,d,h,t,i,n,r,s),s;let u=e.startLineNumber,f=l.node;for(;f!==c.node;){const p=this.getLineFeedCnt(f.piece.bufferIndex,d,f.piece.end);if(p>=1){const b=this._buffers[f.piece.bufferIndex].lineStarts,C=this.offsetInBuffer(f.piece.bufferIndex,f.piece.start),w=b[d.line+p],v=u===e.startLineNumber?e.startColumn:1;if(r=this.findMatchesInNode(f,a,u,v,d,this.positionInBuffer(f,w-C),t,i,n,r,s),r>=n)return s;u+=p}const _=u===e.startLineNumber?e.startColumn-1:0;if(u===e.endLineNumber){const b=this.getLineContent(u).substring(_,e.endColumn-1);return r=this._findMatchesInLine(t,a,b,e.endLineNumber,_,r,s,i,n),s}if(r=this._findMatchesInLine(t,a,this.getLineContent(u).substr(_),u,_,r,s,i,n),r>=n)return s;u++,l=this.nodeAt2(u,1),f=l.node,d=this.positionInBuffer(l.node,l.remainder)}if(u===e.endLineNumber){const p=u===e.startLineNumber?e.startColumn-1:0,_=this.getLineContent(u).substring(p,e.endColumn-1);return r=this._findMatchesInLine(t,a,_,e.endLineNumber,p,r,s,i,n),s}const g=u===e.startLineNumber?e.startColumn:1;return r=this.findMatchesInNode(c.node,a,u,g,d,h,t,i,n,r,s),s}_findMatchesInLine(e,t,i,n,s,r,a,l,c){const d=e.wordSeparators;if(!l&&e.simpleSearch){const u=e.simpleSearch,f=u.length,g=i.length;let p=-f;for(;(p=i.indexOf(u,p+f))!==-1;)if((!d||hT(d,i,g,p,f))&&(a[r++]=new Qp(new I(n,p+1+s,n,p+1+f+s),null),r>=c))return r;return r}let h;t.reset(0);do if(h=t.next(i),h&&(a[r++]=bd(new I(n,h.index+1+s,n,h.index+1+h[0].length+s),h,l),r>=c))return r;while(h);return r}insert(e,t,i=!1){if(this._EOLNormalized=this._EOLNormalized&&i,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==Le){const{node:n,remainder:s,nodeStartOffset:r}=this.nodeAt(e),a=n.piece,l=a.bufferIndex,c=this.positionInBuffer(n,s);if(n.piece.bufferIndex===0&&a.end.line===this._lastChangeBufferPos.line&&a.end.column===this._lastChangeBufferPos.column&&r+a.length===e&&t.lengthe){const d=[];let h=new Xn(a.bufferIndex,c,a.end,this.getLineFeedCnt(a.bufferIndex,c,a.end),this.offsetInBuffer(l,a.end)-this.offsetInBuffer(l,c));if(this.shouldCheckCRLF()&&this.endWithCR(t)&&this.nodeCharCodeAt(n,s)===10){const p={line:h.start.line+1,column:0};h=new Xn(h.bufferIndex,p,h.end,this.getLineFeedCnt(h.bufferIndex,p,h.end),h.length-1),t+=` +`}if(this.shouldCheckCRLF()&&this.startWithLF(t))if(this.nodeCharCodeAt(n,s-1)===13){const p=this.positionInBuffer(n,s-1);this.deleteNodeTail(n,p),t="\r"+t,n.piece.length===0&&d.push(n)}else this.deleteNodeTail(n,c);else this.deleteNodeTail(n,c);const u=this.createNewPieces(t);h.length>0&&this.rbInsertRight(n,h);let f=n;for(let g=0;g=0;r--)s=this.rbInsertLeft(s,n[r]);this.validateCRLFWithPrevNode(s),this.deleteNodes(i)}insertContentToNodeRight(e,t){this.adjustCarriageReturnFromNext(e,t)&&(e+=` +`);const i=this.createNewPieces(e),n=this.rbInsertRight(t,i[0]);let s=n;for(let r=1;r=u)c=h+1;else break;return i?(i.line=h,i.column=l-f,null):{line:h,column:l-f}}getLineFeedCnt(e,t,i){if(i.column===0)return i.line-t.line;const n=this._buffers[e].lineStarts;if(i.line===n.length-1)return i.line-t.line;const s=n[i.line+1],r=n[i.line]+i.column;if(s>r+1)return i.line-t.line;const a=r-1;return this._buffers[e].buffer.charCodeAt(a)===13?i.line-t.line+1:i.line-t.line}offsetInBuffer(e,t){return this._buffers[e].lineStarts[t.line]+t.column}deleteNodes(e){for(let t=0;tRa){const d=[];for(;e.length>Ra;){const u=e.charCodeAt(Ra-1);let f;u===13||u>=55296&&u<=56319?(f=e.substring(0,Ra-1),e=e.substring(Ra-1)):(f=e.substring(0,Ra),e=e.substring(Ra));const g=Va(f);d.push(new Xn(this._buffers.length,{line:0,column:0},{line:g.length-1,column:f.length-g[g.length-1]},g.length-1,f.length)),this._buffers.push(new Ld(f,g))}const h=Va(e);return d.push(new Xn(this._buffers.length,{line:0,column:0},{line:h.length-1,column:e.length-h[h.length-1]},h.length-1,e.length)),this._buffers.push(new Ld(e,h)),d}let t=this._buffers[0].buffer.length;const i=Va(e,!1);let n=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===t&&t!==0&&this.startWithLF(e)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},n=this._lastChangeBufferPos;for(let d=0;d=e-1)i=i.left;else if(i.lf_left+i.piece.lineFeedCnt>e-1){const l=this.getAccumulatedValue(i,e-i.lf_left-2),c=this.getAccumulatedValue(i,e-i.lf_left-1),d=this._buffers[i.piece.bufferIndex].buffer,h=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return r+=i.size_left,this._searchCache.set({node:i,nodeStartOffset:r,nodeStartLineNumber:a-(e-1-i.lf_left)}),d.substring(h+l,h+c-t)}else if(i.lf_left+i.piece.lineFeedCnt===e-1){const l=this.getAccumulatedValue(i,e-i.lf_left-2),c=this._buffers[i.piece.bufferIndex].buffer,d=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);n=c.substring(d+l,d+i.piece.length);break}else e-=i.lf_left+i.piece.lineFeedCnt,r+=i.size_left+i.piece.length,i=i.right}for(i=i.next();i!==Le;){const r=this._buffers[i.piece.bufferIndex].buffer;if(i.piece.lineFeedCnt>0){const a=this.getAccumulatedValue(i,0),l=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return n+=r.substring(l,l+a-t),n}else{const a=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);n+=r.substr(a,i.piece.length)}i=i.next()}return n}computeBufferMetadata(){let e=this.root,t=1,i=0;for(;e!==Le;)t+=e.lf_left+e.piece.lineFeedCnt,i+=e.size_left+e.piece.length,e=e.right;this._lineCnt=t,this._length=i,this._searchCache.validate(this._length)}getIndexOf(e,t){const i=e.piece,n=this.positionInBuffer(e,t),s=n.line-i.start.line;if(this.offsetInBuffer(i.bufferIndex,i.end)-this.offsetInBuffer(i.bufferIndex,i.start)===t){const r=this.getLineFeedCnt(e.piece.bufferIndex,i.start,n);if(r!==s)return{index:r,remainder:0}}return{index:s,remainder:n.column}}getAccumulatedValue(e,t){if(t<0)return 0;const i=e.piece,n=this._buffers[i.bufferIndex].lineStarts,s=i.start.line+t+1;return s>i.end.line?n[i.end.line]+i.end.column-n[i.start.line]-i.start.column:n[s]-n[i.start.line]-i.start.column}deleteNodeTail(e,t){const i=e.piece,n=i.lineFeedCnt,s=this.offsetInBuffer(i.bufferIndex,i.end),r=t,a=this.offsetInBuffer(i.bufferIndex,r),l=this.getLineFeedCnt(i.bufferIndex,i.start,r),c=l-n,d=a-s,h=i.length+d;e.piece=new Xn(i.bufferIndex,i.start,r,l,h),Ha(this,e,d,c)}deleteNodeHead(e,t){const i=e.piece,n=i.lineFeedCnt,s=this.offsetInBuffer(i.bufferIndex,i.start),r=t,a=this.getLineFeedCnt(i.bufferIndex,r,i.end),l=this.offsetInBuffer(i.bufferIndex,r),c=a-n,d=s-l,h=i.length+d;e.piece=new Xn(i.bufferIndex,r,i.end,a,h),Ha(this,e,d,c)}shrinkNode(e,t,i){const n=e.piece,s=n.start,r=n.end,a=n.length,l=n.lineFeedCnt,c=t,d=this.getLineFeedCnt(n.bufferIndex,n.start,c),h=this.offsetInBuffer(n.bufferIndex,t)-this.offsetInBuffer(n.bufferIndex,s);e.piece=new Xn(n.bufferIndex,n.start,c,d,h),Ha(this,e,h-a,d-l);const u=new Xn(n.bufferIndex,i,r,this.getLineFeedCnt(n.bufferIndex,i,r),this.offsetInBuffer(n.bufferIndex,r)-this.offsetInBuffer(n.bufferIndex,i)),f=this.rbInsertRight(e,u);this.validateCRLFWithPrevNode(f)}appendToNode(e,t){this.adjustCarriageReturnFromNext(t,e)&&(t+=` +`);const i=this.shouldCheckCRLF()&&this.startWithLF(t)&&this.endWithCR(e),n=this._buffers[0].buffer.length;this._buffers[0].buffer+=t;const s=Va(t,!1);for(let f=0;fe)t=t.left;else if(t.size_left+t.piece.length>=e){n+=t.size_left;const s={node:t,remainder:e-t.size_left,nodeStartOffset:n};return this._searchCache.set(s),s}else e-=t.size_left+t.piece.length,n+=t.size_left+t.piece.length,t=t.right;return null}nodeAt2(e,t){let i=this.root,n=0;for(;i!==Le;)if(i.left!==Le&&i.lf_left>=e-1)i=i.left;else if(i.lf_left+i.piece.lineFeedCnt>e-1){const s=this.getAccumulatedValue(i,e-i.lf_left-2),r=this.getAccumulatedValue(i,e-i.lf_left-1);return n+=i.size_left,{node:i,remainder:Math.min(s+t-1,r),nodeStartOffset:n}}else if(i.lf_left+i.piece.lineFeedCnt===e-1){const s=this.getAccumulatedValue(i,e-i.lf_left-2);if(s+t-1<=i.piece.length)return{node:i,remainder:s+t-1,nodeStartOffset:n};t-=i.piece.length-s;break}else e-=i.lf_left+i.piece.lineFeedCnt,n+=i.size_left+i.piece.length,i=i.right;for(i=i.next();i!==Le;){if(i.piece.lineFeedCnt>0){const s=this.getAccumulatedValue(i,0),r=this.offsetOfNode(i);return{node:i,remainder:Math.min(t-1,s),nodeStartOffset:r}}else if(i.piece.length>=t-1){const s=this.offsetOfNode(i);return{node:i,remainder:t-1,nodeStartOffset:s}}else t-=i.piece.length;i=i.next()}return null}nodeCharCodeAt(e,t){if(e.piece.lineFeedCnt<1)return-1;const i=this._buffers[e.piece.bufferIndex],n=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start)+t;return i.buffer.charCodeAt(n)}offsetOfNode(e){if(!e)return 0;let t=e.size_left;for(;e!==this.root;)e.parent.right===e&&(t+=e.parent.size_left+e.parent.piece.length),e=e.parent;return t}shouldCheckCRLF(){return!(this._EOLNormalized&&this._EOL===` +`)}startWithLF(e){if(typeof e=="string")return e.charCodeAt(0)===10;if(e===Le||e.piece.lineFeedCnt===0)return!1;const t=e.piece,i=this._buffers[t.bufferIndex].lineStarts,n=t.start.line,s=i[n]+t.start.column;return n===i.length-1||i[n+1]>s+1?!1:this._buffers[t.bufferIndex].buffer.charCodeAt(s)===10}endWithCR(e){return typeof e=="string"?e.charCodeAt(e.length-1)===13:e===Le||e.piece.lineFeedCnt===0?!1:this.nodeCharCodeAt(e,e.piece.length-1)===13}validateCRLFWithPrevNode(e){if(this.shouldCheckCRLF()&&this.startWithLF(e)){const t=e.prev();this.endWithCR(t)&&this.fixCRLF(t,e)}}validateCRLFWithNextNode(e){if(this.shouldCheckCRLF()&&this.endWithCR(e)){const t=e.next();this.startWithLF(t)&&this.fixCRLF(e,t)}}fixCRLF(e,t){const i=[],n=this._buffers[e.piece.bufferIndex].lineStarts;let s;e.piece.end.column===0?s={line:e.piece.end.line-1,column:n[e.piece.end.line]-n[e.piece.end.line-1]-1}:s={line:e.piece.end.line,column:e.piece.end.column-1};const r=e.piece.length-1,a=e.piece.lineFeedCnt-1;e.piece=new Xn(e.piece.bufferIndex,e.piece.start,s,a,r),Ha(this,e,-1,-1),e.piece.length===0&&i.push(e);const l={line:t.piece.start.line+1,column:0},c=t.piece.length-1,d=this.getLineFeedCnt(t.piece.bufferIndex,l,t.piece.end);t.piece=new Xn(t.piece.bufferIndex,l,t.piece.end,d,c),Ha(this,t,-1,-1),t.piece.length===0&&i.push(t);const h=this.createNewPieces(`\r +`);this.rbInsertRight(e,h[0]);for(let u=0;u_.sortIndex-b.sortIndex)}this._mightContainRTL=n,this._mightContainUnusualLineTerminators=s,this._mightContainNonBasicASCII=r;const f=this._doApplyEdits(l);let g=null;if(t&&h.length>0){h.sort((p,_)=>_.lineNumber-p.lineNumber),g=[];for(let p=0,_=h.length;p<_;p++){const b=h[p].lineNumber;if(p>0&&h[p-1].lineNumber===b)continue;const C=h[p].oldContent,w=this.getLineContent(b);w.length===0||w===C||zn(w)!==-1||g.push(b)}}return this._onDidChangeContent.fire(),new MU(u,f,g)}_reduceOperations(e){return e.length<1e3?e:[this._toSingleEditOperation(e)]}_toSingleEditOperation(e){let t=!1;const i=e[0].range,n=e[e.length-1].range,s=new I(i.startLineNumber,i.startColumn,n.endLineNumber,n.endColumn);let r=i.startLineNumber,a=i.startColumn;const l=[];for(let f=0,g=e.length;f0&&l.push(p.text),r=_.endLineNumber,a=_.endColumn}const c=l.join(""),[d,h,u]=hg(c);return{sortIndex:0,identifier:e[0].identifier,range:s,rangeOffset:this.getOffsetAt(s.startLineNumber,s.startColumn),rangeLength:this.getValueLengthInRange(s,0),text:c,eolCount:d,firstLineLength:h,lastLineLength:u,forceMoveMarkers:t,isAutoWhitespaceEdit:!1}}_doApplyEdits(e){e.sort(Uf._sortOpsDescending);const t=[];for(let i=0;i0){const u=l.eolCount+1;u===1?h=new I(c,d,c,d+l.firstLineLength):h=new I(c,d,c+u-1,l.lastLineLength+1)}else h=new I(c,d,c,d);i=h.endLineNumber,n=h.endColumn,t.push(h),s=l}return t}static _sortOpsAscending(e,t){const i=I.compareRangesUsingEnds(e.range,t.range);return i===0?e.sortIndex-t.sortIndex:i}static _sortOpsDescending(e,t){const i=I.compareRangesUsingEnds(e.range,t.range);return i===0?t.sortIndex-e.sortIndex:-i}}class kX{constructor(e,t,i,n,s,r,a,l,c){this._chunks=e,this._bom=t,this._cr=i,this._lf=n,this._crlf=s,this._containsRTL=r,this._containsUnusualLineTerminators=a,this._isBasicASCII=l,this._normalizeEOL=c}_getEOL(e){const t=this._cr+this._lf+this._crlf,i=this._cr+this._crlf;return t===0?e===1?` +`:`\r +`:i>t/2?`\r +`:` +`}create(e){const t=this._getEOL(e),i=this._chunks;if(this._normalizeEOL&&(t===`\r +`&&(this._cr>0||this._lf>0)||t===` +`&&(this._cr>0||this._crlf>0)))for(let s=0,r=i.length;s=55296&&t<=56319?(this._acceptChunk1(e.substr(0,e.length-1),!1),this._hasPreviousChar=!0,this._previousChar=t):(this._acceptChunk1(e,!1),this._hasPreviousChar=!1,this._previousChar=t)}_acceptChunk1(e,t){!t&&e.length===0||(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+e):this._acceptChunk2(e))}_acceptChunk2(e){const t=yX(this._tmpLineStarts,e);this.chunks.push(new Ld(e,t.lineStarts)),this.cr+=t.cr,this.lf+=t.lf,this.crlf+=t.crlf,t.isBasicASCII||(this.isBasicASCII=!1,this.containsRTL||(this.containsRTL=sg(e)),this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=mF(e)))}finish(e=!0){return this._finish(),new kX(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,e)}_finish(){if(this.chunks.length===0&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;const e=this.chunks[this.chunks.length-1];e.buffer+=String.fromCharCode(this._previousChar);const t=Va(e.buffer);e.lineStarts=t,this._previousChar===13&&this.cr++}}}class DX{constructor(e){this._default=e,this._store=[]}get(e){return e=this._store.length;)this._store[this._store.length]=this._default;this._store[e]=t}replace(e,t,i){if(e>=this._store.length)return;if(t===0){this.insert(e,i);return}else if(i===0){this.delete(e,t);return}const n=this._store.slice(0,e),s=this._store.slice(e+t),r=IX(i,this._default);this._store=n.concat(r,s)}delete(e,t){t===0||e>=this._store.length||this._store.splice(e,t)}insert(e,t){if(t===0||e>=this._store.length)return;const i=[];for(let n=0;n0){const i=this._tokens[this._tokens.length-1];if(i.endLineNumber+1===e){i.appendLineTokens(t);return}}this._tokens.push(new EX(e,[t]))}finalize(){return this._tokens}}class NX{constructor(e,t){this.tokenizationSupport=t,this.initialState=this.tokenizationSupport.getInitialState(),this.store=new kD(e)}getStartState(e){return this.store.getStartState(e,this.initialState)}getFirstInvalidLine(){return this.store.getFirstInvalidLine(this.initialState)}}class TX extends NX{constructor(e,t,i,n){super(e,t),this._textModel=i,this._languageIdCodec=n}updateTokensUntilLine(e,t){const i=this._textModel.getLanguageId();for(;;){const n=this.getFirstInvalidLine();if(!n||n.lineNumber>t)break;const s=this._textModel.getLineContent(n.lineNumber),r=pm(this._languageIdCodec,i,this.tokenizationSupport,s,!0,n.startState);e.add(n.lineNumber,r.tokens),this.store.setEndState(n.lineNumber,r.endState)}}getTokenTypeIfInsertingCharacter(e,t){const i=this.getStartState(e.lineNumber);if(!i)return 0;const n=this._textModel.getLanguageId(),s=this._textModel.getLineContent(e.lineNumber),r=s.substring(0,e.column-1)+t+s.substring(e.column-1),a=pm(this._languageIdCodec,n,this.tokenizationSupport,r,!0,i),l=new Ni(a.tokens,r,this._languageIdCodec);if(l.getCount()===0)return 0;const c=l.findTokenIndexAtOffset(e.column-1);return l.getStandardTokenType(c)}tokenizeLineWithEdit(e,t,i){const n=e.lineNumber,s=e.column,r=this.getStartState(n);if(!r)return null;const a=this._textModel.getLineContent(n),l=a.substring(0,s-1)+i+a.substring(s-1+t),c=this._textModel.getLanguageIdAtPosition(n,0),d=pm(this._languageIdCodec,c,this.tokenizationSupport,l,!0,r);return new Ni(d.tokens,l,this._languageIdCodec)}hasAccurateTokensForLine(e){const t=this.store.getFirstInvalidEndStateLineNumberOrMax();return e1&&a>=1;a--){const l=this._textModel.getLineFirstNonWhitespaceColumn(a);if(l!==0&&l0&&i>0&&(i--,t--),this._lineEndStates.replace(e.startLineNumber,i,t)}}class RX{constructor(){this._ranges=[]}get min(){return this._ranges.length===0?null:this._ranges[0].start}delete(e){const t=this._ranges.findIndex(i=>i.contains(e));if(t!==-1){const i=this._ranges[t];i.start===e?i.endExclusive===e+1?this._ranges.splice(t,1):this._ranges[t]=new Re(e+1,i.endExclusive):i.endExclusive===e+1?this._ranges[t]=new Re(i.start,e):this._ranges.splice(t,1,new Re(i.start,e),new Re(e+1,i.endExclusive))}}addRange(e){Re.addRange(e,this._ranges)}addRangeAndResize(e,t){let i=0;for(;!(i>=this._ranges.length||e.start<=this._ranges[i].endExclusive);)i++;let n=i;for(;!(n>=this._ranges.length||e.endExclusivee.toString()).join(" + ")}}function pm(o,e,t,i,n,s){let r=null;if(t)try{r=t.tokenizeEncoded(i,n,s.clone())}catch(a){Ze(a)}return r||(r=zT(o.encodeLanguageId(e),s)),Ni.convertToEndOffset(r.tokens,i.length),r}class AX{constructor(e,t){this._tokenizerWithStateStore=e,this._backgroundTokenStore=t,this._isDisposed=!1,this._isScheduled=!1}dispose(){this._isDisposed=!0}handleChanges(){this._beginBackgroundTokenization()}_beginBackgroundTokenization(){this._isScheduled||!this._tokenizerWithStateStore._textModel.isAttachedToEditor()||!this._hasLinesToTokenize()||(this._isScheduled=!0,wF(e=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(e)}))}_backgroundTokenizeWithDeadline(e){const t=Date.now()+e.timeRemaining(),i=()=>{this._isDisposed||!this._tokenizerWithStateStore._textModel.isAttachedToEditor()||!this._hasLinesToTokenize()||(this._backgroundTokenizeForAtLeast1ms(),Date.now()1||this._tokenizeOneInvalidLine(t)>=e)break;while(this._hasLinesToTokenize());this._backgroundTokenStore.setTokens(t.finalize()),this.checkFinished()}_hasLinesToTokenize(){return this._tokenizerWithStateStore?!this._tokenizerWithStateStore.store.allStatesValid():!1}_tokenizeOneInvalidLine(e){const t=this._tokenizerWithStateStore?.getFirstInvalidLine();return t?(this._tokenizerWithStateStore.updateTokensUntilLine(e,t.lineNumber),t.lineNumber):this._tokenizerWithStateStore._textModel.getLineCount()+1}checkFinished(){this._isDisposed||this._tokenizerWithStateStore.store.allStatesValid()&&this._backgroundTokenStore.backgroundTokenizationFinished()}requestTokens(e,t){this._tokenizerWithStateStore.store.invalidateEndStateRange(new xe(e,t))}}class PX{constructor(){this._onDidChangeVisibleRanges=new A,this.onDidChangeVisibleRanges=this._onDidChangeVisibleRanges.event,this._views=new Set}attachView(){const e=new OX(t=>{this._onDidChangeVisibleRanges.fire({view:e,state:t})});return this._views.add(e),e}detachView(e){this._views.delete(e),this._onDidChangeVisibleRanges.fire({view:e,state:void 0})}}class OX{constructor(e){this.handleStateChange=e}setVisibleLines(e,t){const i=e.map(n=>new xe(n.startLineNumber,n.endLineNumber+1));this.handleStateChange({visibleLineRanges:i,stabilized:t})}}class FX extends z{get lineRanges(){return this._lineRanges}constructor(e){super(),this._refreshTokens=e,this.runner=this._register(new ci(()=>this.update(),50)),this._computedLineRanges=[],this._lineRanges=[]}update(){li(this._computedLineRanges,this._lineRanges,(e,t)=>e.equals(t))||(this._computedLineRanges=this._lineRanges,this._refreshTokens())}handleStateChange(e){this._lineRanges=e.visibleLineRanges,e.stabilized?(this.runner.cancel(),this.update()):this.runner.schedule()}}class _9 extends z{get backgroundTokenizationState(){return this._backgroundTokenizationState}constructor(e,t,i){super(),this._languageIdCodec=e,this._textModel=t,this.getLanguageId=i,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new A),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event,this._onDidChangeTokens=this._register(new A),this.onDidChangeTokens=this._onDidChangeTokens.event}tokenizeIfCheap(e){this.isCheapToTokenize(e)&&this.forceTokenization(e)}}class AP extends _9{constructor(e,t,i,n){super(t,i,n),this._treeSitterService=e,this._tokenizationSupport=null,this._initialize()}_initialize(){const e=this.getLanguageId();(!this._tokenizationSupport||this._lastLanguageId!==e)&&(this._lastLanguageId=e,this._tokenizationSupport=HL.get(e))}getLineTokens(e){const t=this._textModel.getLineContent(e);if(this._tokenizationSupport){const i=this._tokenizationSupport.tokenizeEncoded(e,this._textModel);if(i)return new Ni(i,t,this._languageIdCodec)}return Ni.createEmpty(t,this._languageIdCodec)}resetTokenization(e=!0){e&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]}),this._initialize()}handleDidChangeAttached(){}handleDidChangeContent(e){e.isFlush&&this.resetTokenization(!1)}forceTokenization(e){}hasAccurateTokensForLine(e){return!0}isCheapToTokenize(e){return!0}getTokenTypeIfInsertingCharacter(e,t,i){return 0}tokenizeLineWithEdit(e,t,i){return null}get hasTokens(){return this._treeSitterService.getParseResult(this._textModel)!==void 0}}const b9=He("treeSitterParserService"),za=new Uint32Array(0).buffer;class Kr{static deleteBeginning(e,t){return e===null||e===za?e:Kr.delete(e,0,t)}static deleteEnding(e,t){if(e===null||e===za)return e;const i=nl(e),n=i[i.length-2];return Kr.delete(e,t,n)}static delete(e,t,i){if(e===null||e===za||t===i)return e;const n=nl(e),s=n.length>>>1;if(t===0&&n[n.length-2]===i)return za;const r=Ni.findIndexInTokensArray(n,t),a=r>0?n[r-1<<1]:0,l=n[r<<1];if(id&&(n[c++]=g,n[c++]=n[(f<<1)+1],d=g)}if(c===n.length)return e;const u=new Uint32Array(c);return u.set(n.subarray(0,c),0),u.buffer}static append(e,t){if(t===za)return e;if(e===za)return t;if(e===null)return e;if(t===null)return null;const i=nl(e),n=nl(t),s=n.length>>>1,r=new Uint32Array(i.length+n.length);r.set(i,0);let a=i.length;const l=i[i.length-2];for(let c=0;c>>1;let r=Ni.findIndexInTokensArray(n,t);r>0&&n[r-1<<1]===t&&r--;for(let a=r;a0}getTokens(e,t,i){let n=null;if(t1&&(s=sr.getLanguageId(n[1])!==e),!s)return za}if(!n||n.length===0){const s=new Uint32Array(2);return s[0]=t,s[1]=PP(e),s.buffer}return n[n.length-2]=t,n.byteOffset===0&&n.byteLength===n.buffer.byteLength?n.buffer:n}_ensureLine(e){for(;e>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(e,t){t!==0&&(e+t>this._len&&(t=this._len-e),this._lineTokens.splice(e,t),this._len-=t)}_insertLines(e,t){if(t===0)return;const i=[];for(let n=0;n=this._len)return;if(e.startLineNumber===e.endLineNumber){if(e.startColumn===e.endColumn)return;this._lineTokens[t]=Kr.delete(this._lineTokens[t],e.startColumn-1,e.endColumn-1);return}this._lineTokens[t]=Kr.deleteEnding(this._lineTokens[t],e.startColumn-1);const i=e.endLineNumber-1;let n=null;i=this._len)){if(t===0){this._lineTokens[n]=Kr.insert(this._lineTokens[n],e.column-1,i);return}this._lineTokens[n]=Kr.deleteEnding(this._lineTokens[n],e.column-1),this._lineTokens[n]=Kr.insert(this._lineTokens[n],e.column-1,i),this._insertLines(e.lineNumber,t)}}setMultilineTokens(e,t){if(e.length===0)return{changes:[]};const i=[];for(let n=0,s=e.length;n>>0}class u2{constructor(e){this._pieces=[],this._isComplete=!1,this._languageIdCodec=e}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return this._pieces.length===0}set(e,t){this._pieces=e||[],this._isComplete=t}setPartial(e,t){let i=e;if(t.length>0){const s=t[0].getRange(),r=t[t.length-1].getRange();if(!s||!r)return e;i=e.plusRange(s).plusRange(r)}let n=null;for(let s=0,r=this._pieces.length;si.endLineNumber){n=n||{index:s};break}if(a.removeTokens(i),a.isEmpty()){this._pieces.splice(s,1),s--,r--;continue}if(a.endLineNumberi.endLineNumber){n=n||{index:s};continue}const[l,c]=a.split(i);if(l.isEmpty()){n=n||{index:s};continue}c.isEmpty()||(this._pieces.splice(s,1,l,c),s++,r++,n=n||{index:s})}return n=n||{index:this._pieces.length},t.length>0&&(this._pieces=y0(this._pieces,n.index,t)),i}isComplete(){return this._isComplete}addSparseTokens(e,t){if(t.getLineContent().length===0)return t;const i=this._pieces;if(i.length===0)return t;const n=u2._findFirstPieceWithLine(i,e),s=i[n].getLineTokens(e);if(!s)return t;const r=t.getCount(),a=s.getCount();let l=0;const c=[];let d=0,h=0;const u=(f,g)=>{f!==h&&(h=f,c[d++]=f,c[d++]=g)};for(let f=0;f>>0,C=~b>>>0;for(;lt)n=s-1;else{for(;s>i&&e[s-1].startLineNumber<=t&&t<=e[s-1].endLineNumber;)s--;return s}}return i}acceptEdit(e,t,i,n,s){for(const r of this._pieces)r.acceptEdit(e,t,i,n,s)}}var BX=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},VS=function(o,e){return function(t,i){e(t,i,o)}},O1;let DD=O1=class extends a9{constructor(e,t,i,n,s,r,a){super(),this._textModel=e,this._bracketPairsTextModelPart=t,this._languageId=i,this._attachedViews=n,this._languageService=s,this._languageConfigurationService=r,this._treeSitterService=a,this._semanticTokens=new u2(this._languageService.languageIdCodec),this._onDidChangeLanguage=this._register(new A),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new A),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new A),this.onDidChangeTokens=this._onDidChangeTokens.event,this._tokensDisposables=this._register(new X),this._register(this._languageConfigurationService.onDidChange(l=>{l.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})})),this._register(J.filter(HL.onDidChange,l=>l.changedLanguages.includes(this._languageId))(()=>{this.createPreferredTokenProvider()})),this.createPreferredTokenProvider()}createGrammarTokens(){return this._register(new OP(this._languageService.languageIdCodec,this._textModel,()=>this._languageId,this._attachedViews))}createTreeSitterTokens(){return this._register(new AP(this._treeSitterService,this._languageService.languageIdCodec,this._textModel,()=>this._languageId))}createTokens(e){const t=this._tokens!==void 0;this._tokens?.dispose(),this._tokens=e?this.createTreeSitterTokens():this.createGrammarTokens(),this._tokensDisposables.clear(),this._tokensDisposables.add(this._tokens.onDidChangeTokens(i=>{this._emitModelTokensChangedEvent(i)})),this._tokensDisposables.add(this._tokens.onDidChangeBackgroundTokenizationState(i=>{this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState()})),t&&this._tokens.resetTokenization()}createPreferredTokenProvider(){HL.get(this._languageId)?this._tokens instanceof AP||this.createTokens(!0):this._tokens instanceof OP||this.createTokens(!1)}handleLanguageConfigurationServiceChange(e){e.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}handleDidChangeContent(e){if(e.isFlush)this._semanticTokens.flush();else if(!e.isEolChange)for(const t of e.changes){const[i,n,s]=hg(t.text);this._semanticTokens.acceptEdit(t.range,i,n,s,t.text.length>0?t.text.charCodeAt(0):0)}this._tokens.handleDidChangeContent(e)}handleDidChangeAttached(){this._tokens.handleDidChangeAttached()}getLineTokens(e){this.validateLineNumber(e);const t=this._tokens.getLineTokens(e);return this._semanticTokens.addSparseTokens(e,t)}_emitModelTokensChangedEvent(e){this._textModel._isDisposing()||(this._bracketPairsTextModelPart.handleDidChangeTokens(e),this._onDidChangeTokens.fire(e))}validateLineNumber(e){if(e<1||e>this._textModel.getLineCount())throw new nt("Illegal value for lineNumber")}get hasTokens(){return this._tokens.hasTokens}resetTokenization(){this._tokens.resetTokenization()}get backgroundTokenizationState(){return this._tokens.backgroundTokenizationState}forceTokenization(e){this.validateLineNumber(e),this._tokens.forceTokenization(e)}hasAccurateTokensForLine(e){return this.validateLineNumber(e),this._tokens.hasAccurateTokensForLine(e)}isCheapToTokenize(e){return this.validateLineNumber(e),this._tokens.isCheapToTokenize(e)}tokenizeIfCheap(e){this.validateLineNumber(e),this._tokens.tokenizeIfCheap(e)}getTokenTypeIfInsertingCharacter(e,t,i){return this._tokens.getTokenTypeIfInsertingCharacter(e,t,i)}tokenizeLineWithEdit(e,t,i){return this._tokens.tokenizeLineWithEdit(e,t,i)}setSemanticTokens(e,t){this._semanticTokens.set(e,t),this._emitModelTokensChangedEvent({semanticTokensApplied:e!==null,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}hasCompleteSemanticTokens(){return this._semanticTokens.isComplete()}hasSomeSemanticTokens(){return!this._semanticTokens.isEmpty()}setPartialSemanticTokens(e,t){if(this.hasCompleteSemanticTokens())return;const i=this._textModel.validateRange(this._semanticTokens.setPartial(e,t));this._emitModelTokensChangedEvent({semanticTokensApplied:!0,ranges:[{fromLineNumber:i.startLineNumber,toLineNumber:i.endLineNumber}]})}getWordAtPosition(e){this.assertNotDisposed();const t=this._textModel.validatePosition(e),i=this._textModel.getLineContent(t.lineNumber),n=this.getLineTokens(t.lineNumber),s=n.findTokenIndexAtOffset(t.column-1),[r,a]=O1._findLanguageBoundaries(n,s),l=Wp(t.column,this.getLanguageConfiguration(n.getLanguageId(s)).getWordDefinition(),i.substring(r,a),r);if(l&&l.startColumn<=e.column&&e.column<=l.endColumn)return l;if(s>0&&r===t.column-1){const[c,d]=O1._findLanguageBoundaries(n,s-1),h=Wp(t.column,this.getLanguageConfiguration(n.getLanguageId(s-1)).getWordDefinition(),i.substring(c,d),c);if(h&&h.startColumn<=e.column&&e.column<=h.endColumn)return h}return null}getLanguageConfiguration(e){return this._languageConfigurationService.getLanguageConfiguration(e)}static _findLanguageBoundaries(e,t){const i=e.getLanguageId(t);let n=0;for(let r=t;r>=0&&e.getLanguageId(r)===i;r--)n=e.getStartOffset(r);let s=e.getLineContent().length;for(let r=t,a=e.getCount();r{const r=this.getLanguageId();s.changedLanguages.indexOf(r)!==-1&&this.resetTokenization()})),this.resetTokenization(),this._register(n.onDidChangeVisibleRanges(({view:s,state:r})=>{if(r){let a=this._attachedViewStates.get(s);a||(a=new FX(()=>this.refreshRanges(a.lineRanges)),this._attachedViewStates.set(s,a)),a.handleStateChange(r)}else this._attachedViewStates.deleteAndDispose(s)}))}resetTokenization(e=!0){this._tokens.flush(),this._debugBackgroundTokens?.flush(),this._debugBackgroundStates&&(this._debugBackgroundStates=new kD(this._textModel.getLineCount())),e&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]});const t=()=>{if(this._textModel.isTooLargeForTokenization())return[null,null];const s=si.get(this.getLanguageId());if(!s)return[null,null];let r;try{r=s.getInitialState()}catch(a){return Ze(a),[null,null]}return[s,r]},[i,n]=t();if(i&&n?this._tokenizer=new TX(this._textModel.getLineCount(),i,this._textModel,this._languageIdCodec):this._tokenizer=null,this._backgroundTokenizer.clear(),this._defaultBackgroundTokenizer=null,this._tokenizer){const s={setTokens:r=>{this.setTokens(r)},backgroundTokenizationFinished:()=>{if(this._backgroundTokenizationState===2)return;const r=2;this._backgroundTokenizationState=r,this._onDidChangeBackgroundTokenizationState.fire()},setEndState:(r,a)=>{if(!this._tokenizer)return;const l=this._tokenizer.store.getFirstInvalidEndStateLineNumber();l!==null&&r>=l&&this._tokenizer?.store.setEndState(r,a)}};i&&i.createBackgroundTokenizer&&!i.backgroundTokenizerShouldOnlyVerifyTokens&&(this._backgroundTokenizer.value=i.createBackgroundTokenizer(this._textModel,s)),!this._backgroundTokenizer.value&&!this._textModel.isTooLargeForTokenization()&&(this._backgroundTokenizer.value=this._defaultBackgroundTokenizer=new AX(this._tokenizer,s),this._defaultBackgroundTokenizer.handleChanges()),i?.backgroundTokenizerShouldOnlyVerifyTokens&&i.createBackgroundTokenizer?(this._debugBackgroundTokens=new g_(this._languageIdCodec),this._debugBackgroundStates=new kD(this._textModel.getLineCount()),this._debugBackgroundTokenizer.clear(),this._debugBackgroundTokenizer.value=i.createBackgroundTokenizer(this._textModel,{setTokens:r=>{this._debugBackgroundTokens?.setMultilineTokens(r,this._textModel)},backgroundTokenizationFinished(){},setEndState:(r,a)=>{this._debugBackgroundStates?.setEndState(r,a)}})):(this._debugBackgroundTokens=void 0,this._debugBackgroundStates=void 0,this._debugBackgroundTokenizer.value=void 0)}this.refreshAllVisibleLineTokens()}handleDidChangeAttached(){this._defaultBackgroundTokenizer?.handleChanges()}handleDidChangeContent(e){if(e.isFlush)this.resetTokenization(!1);else if(!e.isEolChange){for(const t of e.changes){const[i,n]=hg(t.text);this._tokens.acceptEdit(t.range,i,n),this._debugBackgroundTokens?.acceptEdit(t.range,i,n)}this._debugBackgroundStates?.acceptChanges(e.changes),this._tokenizer&&this._tokenizer.store.acceptChanges(e.changes),this._defaultBackgroundTokenizer?.handleChanges()}}setTokens(e){const{changes:t}=this._tokens.setMultilineTokens(e,this._textModel);return t.length>0&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:t}),{changes:t}}refreshAllVisibleLineTokens(){const e=xe.joinMany([...this._attachedViewStates].map(([t,i])=>i.lineRanges));this.refreshRanges(e)}refreshRanges(e){for(const t of e)this.refreshRange(t.startLineNumber,t.endLineNumberExclusive-1)}refreshRange(e,t){if(!this._tokenizer)return;e=Math.max(1,Math.min(this._textModel.getLineCount(),e)),t=Math.min(this._textModel.getLineCount(),t);const i=new xD,{heuristicTokens:n}=this._tokenizer.tokenizeHeuristically(i,e,t),s=this.setTokens(i.finalize());if(n)for(const r of s.changes)this._backgroundTokenizer.value?.requestTokens(r.fromLineNumber,r.toLineNumber+1);this._defaultBackgroundTokenizer?.checkFinished()}forceTokenization(e){const t=new xD;this._tokenizer?.updateTokensUntilLine(t,e),this.setTokens(t.finalize()),this._defaultBackgroundTokenizer?.checkFinished()}hasAccurateTokensForLine(e){return this._tokenizer?this._tokenizer.hasAccurateTokensForLine(e):!0}isCheapToTokenize(e){return this._tokenizer?this._tokenizer.isCheapToTokenize(e):!0}getLineTokens(e){const t=this._textModel.getLineContent(e),i=this._tokens.getTokens(this._textModel.getLanguageId(),e-1,t);if(this._debugBackgroundTokens&&this._debugBackgroundStates&&this._tokenizer&&this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax()>e&&this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax()>e){const n=this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(),e-1,t);!i.equals(n)&&this._debugBackgroundTokenizer.value?.reportMismatchingTokens&&this._debugBackgroundTokenizer.value.reportMismatchingTokens(e)}return i}getTokenTypeIfInsertingCharacter(e,t,i){if(!this._tokenizer)return 0;const n=this._textModel.validatePosition(new P(e,t));return this.forceTokenization(n.lineNumber),this._tokenizer.getTokenTypeIfInsertingCharacter(n,i)}tokenizeLineWithEdit(e,t,i){if(!this._tokenizer)return null;const n=this._textModel.validatePosition(e);return this.forceTokenization(n.lineNumber),this._tokenizer.tokenizeLineWithEdit(n,t,i)}get hasTokens(){return this._tokens.hasTokens}}class WX{constructor(){this.changeType=1}}class _r{static applyInjectedText(e,t){if(!t||t.length===0)return e;let i="",n=0;for(const s of t)i+=e.substring(n,s.column-1),n=s.column-1,i+=s.options.content;return i+=e.substring(n),i}static fromDecorations(e){const t=[];for(const i of e)i.options.before&&i.options.before.content.length>0&&t.push(new _r(i.ownerId,i.range.startLineNumber,i.range.startColumn,i.options.before,0)),i.options.after&&i.options.after.content.length>0&&t.push(new _r(i.ownerId,i.range.endLineNumber,i.range.endColumn,i.options.after,1));return t.sort((i,n)=>i.lineNumber===n.lineNumber?i.column===n.column?i.order-n.order:i.column-n.column:i.lineNumber-n.lineNumber),t}constructor(e,t,i,n,s){this.ownerId=e,this.lineNumber=t,this.column=i,this.options=n,this.order=s}}class FP{constructor(e,t,i){this.changeType=2,this.lineNumber=e,this.detail=t,this.injectedText=i}}class HX{constructor(e,t){this.changeType=3,this.fromLineNumber=e,this.toLineNumber=t}}class VX{constructor(e,t,i,n){this.changeType=4,this.injectedTexts=n,this.fromLineNumber=e,this.toLineNumber=t,this.detail=i}}class zX{constructor(){this.changeType=5}}class $f{constructor(e,t,i,n){this.changes=e,this.versionId=t,this.isUndoing=i,this.isRedoing=n,this.resultingSelection=null}containsEvent(e){for(let t=0,i=this.changes.length;t=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Gb=function(o,e){return function(t,i){e(t,i,o)}},ud;function $X(o){const e=new p9;return e.acceptChunk(o),e.finish()}function KX(o){const e=new p9;let t;for(;typeof(t=o.read())=="string";)e.acceptChunk(t);return e.finish()}function BP(o,e){let t;return typeof o=="string"?t=$X(o):NU(o)?t=KX(o):t=o,t.create(e)}let Zb=0;const jX=999,qX=1e4;class GX{constructor(e){this._source=e,this._eos=!1}read(){if(this._eos)return null;const e=[];let t=0,i=0;do{const n=this._source.read();if(n===null)return this._eos=!0,t===0?null:e.join("");if(n.length>0&&(e[t++]=n,i+=n.length),i>=64*1024)return e.join("")}while(!0)}}const _m=()=>{throw new Error("Invalid change accessor")};var ar;let m_=(ar=class extends z{static resolveOptions(e,t){if(t.detectIndentation){const i=kP(e,t.tabSize,t.insertSpaces);return new k1({tabSize:i.tabSize,indentSize:"tabSize",insertSpaces:i.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL,bracketPairColorizationOptions:t.bracketPairColorizationOptions})}return new k1(t)}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}onDidChangeContent(e){return this._eventEmitter.slowEvent(t=>e(t.contentChangedEvent))}onDidChangeContentOrInjectedText(e){return No(this._eventEmitter.fastEvent(t=>e(t)),this._onDidChangeInjectedText.event(t=>e(t)))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}constructor(e,t,i,n=null,s,r,a,l){super(),this._undoRedoService=s,this._languageService=r,this._languageConfigurationService=a,this.instantiationService=l,this._onWillDispose=this._register(new A),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new eJ(g=>this.handleBeforeFireDecorationsChangedEvent(g))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new A),this.onDidChangeOptions=this._onDidChangeOptions.event,this._onDidChangeAttached=this._register(new A),this.onDidChangeAttached=this._onDidChangeAttached.event,this._onDidChangeInjectedText=this._register(new A),this._eventEmitter=this._register(new tJ),this._languageSelectionListener=this._register(new Dn),this._deltaDecorationCallCnt=0,this._attachedViews=new PX,Zb++,this.id="$model"+Zb,this.isForSimpleWidget=i.isForSimpleWidget,typeof n>"u"||n===null?this._associatedResource=ve.parse("inmemory://model/"+Zb):this._associatedResource=n,this._attachedEditorCount=0;const{textBuffer:c,disposable:d}=BP(e,i.defaultEOL);this._buffer=c,this._bufferDisposable=d,this._options=ud.resolveOptions(this._buffer,i);const h=typeof t=="string"?t:t.languageId;typeof t!="string"&&(this._languageSelectionListener.value=t.onDidChange(()=>this._setLanguage(t.languageId))),this._bracketPairs=this._register(new eX(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new oX(this,this._languageConfigurationService)),this._decorationProvider=this._register(new iX(this)),this._tokenizationTextModelPart=this.instantiationService.createInstance(DD,this,this._bracketPairs,h,this._attachedViews);const u=this._buffer.getLineCount(),f=this._buffer.getValueLengthInRange(new I(1,1,u,this._buffer.getLineLength(u)+1),0);i.largeFileOptimizations?(this._isTooLargeForTokenization=f>ud.LARGE_FILE_SIZE_THRESHOLD||u>ud.LARGE_FILE_LINE_COUNT_THRESHOLD,this._isTooLargeForHeapOperation=f>ud.LARGE_FILE_HEAP_OPERATION_THRESHOLD):(this._isTooLargeForTokenization=!1,this._isTooLargeForHeapOperation=!1),this._isTooLargeForSyncing=f>ud._MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=pF(Zb),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new WP,this._commandManager=new l2(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._register(this._decorationProvider.onDidChange(()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()})),this._languageService.requestRichLanguageFeatures(h),this._register(this._languageConfigurationService.onDidChange(g=>{this._bracketPairs.handleLanguageConfigurationServiceChange(g),this._tokenizationTextModelPart.handleLanguageConfigurationServiceChange(g)}))}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;const e=new Uf([],"",` +`,!1,!1,!0,!0);e.dispose(),this._buffer=e,this._bufferDisposable=z.None}_assertNotDisposed(){if(this._isDisposed)throw new nt("Model is disposed!")}_emitContentChangedEvent(e,t){this.__isDisposing||(this._tokenizationTextModelPart.handleDidChangeContent(t),this._bracketPairs.handleDidChangeContent(t),this._eventEmitter.fire(new th(e,t)))}setValue(e){if(this._assertNotDisposed(),e==null)throw na();const{textBuffer:t,disposable:i}=BP(e,this._options.defaultEOL);this._setValueFromTextBuffer(t,i)}_createContentChanged2(e,t,i,n,s,r,a,l){return{changes:[{range:e,rangeOffset:t,rangeLength:i,text:n}],eol:this._buffer.getEOL(),isEolChange:l,versionId:this.getVersionId(),isUndoing:s,isRedoing:r,isFlush:a}}_setValueFromTextBuffer(e,t){this._assertNotDisposed();const i=this.getFullModelRange(),n=this.getValueLengthInRange(i),s=this.getLineCount(),r=this.getLineMaxColumn(s);this._buffer=e,this._bufferDisposable.dispose(),this._bufferDisposable=t,this._increaseVersionId(),this._decorations=Object.create(null),this._decorationsTree=new WP,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new $f([new WX],this._versionId,!1,!1),this._createContentChanged2(new I(1,1,s,r),0,n,this.getValue(),!1,!1,!0,!1))}setEOL(e){this._assertNotDisposed();const t=e===1?`\r +`:` +`;if(this._buffer.getEOL()===t)return;const i=this.getFullModelRange(),n=this.getValueLengthInRange(i),s=this.getLineCount(),r=this.getLineMaxColumn(s);this._onBeforeEOLChange(),this._buffer.setEOL(t),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new $f([new zX],this._versionId,!1,!1),this._createContentChanged2(new I(1,1,s,r),0,n,this.getValue(),!1,!1,!1,!0))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){const e=this.getVersionId(),t=this._decorationsTree.collectNodesPostOrder();for(let i=0,n=t.length;i0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isTooLargeForHeapOperation(){return this._isTooLargeForHeapOperation}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let e=0,t=0;const i=this._buffer.getLineCount();for(let n=1;n<=i;n++){const s=this._buffer.getLineLength(n);s>=qX?t+=s:e+=s}return t>e}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(e){this._assertNotDisposed();const t=typeof e.tabSize<"u"?e.tabSize:this._options.tabSize,i=typeof e.indentSize<"u"?e.indentSize:this._options.originalIndentSize,n=typeof e.insertSpaces<"u"?e.insertSpaces:this._options.insertSpaces,s=typeof e.trimAutoWhitespace<"u"?e.trimAutoWhitespace:this._options.trimAutoWhitespace,r=typeof e.bracketColorizationOptions<"u"?e.bracketColorizationOptions:this._options.bracketPairColorizationOptions,a=new k1({tabSize:t,indentSize:i,insertSpaces:n,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:s,bracketPairColorizationOptions:r});if(this._options.equals(a))return;const l=this._options.createChangeEvent(a);this._options=a,this._bracketPairs.handleDidChangeOptions(l),this._decorationProvider.handleDidChangeOptions(l),this._onDidChangeOptions.fire(l)}detectIndentation(e,t){this._assertNotDisposed();const i=kP(this._buffer,t,e);this.updateOptions({insertSpaces:i.insertSpaces,tabSize:i.tabSize,indentSize:i.tabSize})}normalizeIndentation(e){return this._assertNotDisposed(),Q7(e,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(e=null){const t=this.findMatches(gF.source,!1,!0,!1,null,!1,1073741824);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(e,t.map(i=>({range:i.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(e){this._assertNotDisposed();const t=this._validatePosition(e.lineNumber,e.column,0);return this._buffer.getOffsetAt(t.lineNumber,t.column)}getPositionAt(e){this._assertNotDisposed();const t=Math.min(this._buffer.getLength(),Math.max(0,e));return this._buffer.getPositionAt(t)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(e){this._versionId=e}_overwriteAlternativeVersionId(e){this._alternativeVersionId=e}_overwriteInitialUndoRedoSnapshot(e){this._initialUndoRedoSnapshot=e}getValue(e,t=!1){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new nt("Operation would exceed heap memory limits");const i=this.getFullModelRange(),n=this.getValueInRange(i,e);return t?this._buffer.getBOM()+n:n}createSnapshot(e=!1){return new GX(this._buffer.createSnapshot(e))}getValueLength(e,t=!1){this._assertNotDisposed();const i=this.getFullModelRange(),n=this.getValueLengthInRange(i,e);return t?this._buffer.getBOM().length+n:n}getValueInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(e),t)}getValueLengthInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(e),t)}getCharacterCountInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(e),t)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineContent(e)}getLineLength(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineLength(e)}getLinesContent(){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new nt("Operation would exceed heap memory limits");return this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),this._buffer.getEOL()===` +`?0:1}getLineMinColumn(e){return this._assertNotDisposed(),1}getLineMaxColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineLength(e)+1}getLineFirstNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(e)}getLineLastNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(e)}_validateRangeRelaxedNoAllocations(e){const t=this._buffer.getLineCount(),i=e.startLineNumber,n=e.startColumn;let s=Math.floor(typeof i=="number"&&!isNaN(i)?i:1),r=Math.floor(typeof n=="number"&&!isNaN(n)?n:1);if(s<1)s=1,r=1;else if(s>t)s=t,r=this.getLineMaxColumn(s);else if(r<=1)r=1;else{const h=this.getLineMaxColumn(s);r>=h&&(r=h)}const a=e.endLineNumber,l=e.endColumn;let c=Math.floor(typeof a=="number"&&!isNaN(a)?a:1),d=Math.floor(typeof l=="number"&&!isNaN(l)?l:1);if(c<1)c=1,d=1;else if(c>t)c=t,d=this.getLineMaxColumn(c);else if(d<=1)d=1;else{const h=this.getLineMaxColumn(c);d>=h&&(d=h)}return i===s&&n===r&&a===c&&l===d&&e instanceof I&&!(e instanceof Fe)?e:new I(s,r,c,d)}_isValidPosition(e,t,i){if(typeof e!="number"||typeof t!="number"||isNaN(e)||isNaN(t)||e<1||t<1||(e|0)!==e||(t|0)!==t)return!1;const n=this._buffer.getLineCount();if(e>n)return!1;if(t===1)return!0;const s=this.getLineMaxColumn(e);if(t>s)return!1;if(i===1){const r=this._buffer.getLineCharCode(e,t-2);if(wi(r))return!1}return!0}_validatePosition(e,t,i){const n=Math.floor(typeof e=="number"&&!isNaN(e)?e:1),s=Math.floor(typeof t=="number"&&!isNaN(t)?t:1),r=this._buffer.getLineCount();if(n<1)return new P(1,1);if(n>r)return new P(r,this.getLineMaxColumn(r));if(s<=1)return new P(n,1);const a=this.getLineMaxColumn(n);if(s>=a)return new P(n,a);if(i===1){const l=this._buffer.getLineCharCode(n,s-2);if(wi(l))return new P(n,s-1)}return new P(n,s)}validatePosition(e){return this._assertNotDisposed(),e instanceof P&&this._isValidPosition(e.lineNumber,e.column,1)?e:this._validatePosition(e.lineNumber,e.column,1)}_isValidRange(e,t){const i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn;if(!this._isValidPosition(i,n,0)||!this._isValidPosition(s,r,0))return!1;if(t===1){const a=n>1?this._buffer.getLineCharCode(i,n-2):0,l=r>1&&r<=this._buffer.getLineLength(s)?this._buffer.getLineCharCode(s,r-2):0,c=wi(a),d=wi(l);return!c&&!d}return!0}validateRange(e){if(this._assertNotDisposed(),e instanceof I&&!(e instanceof Fe)&&this._isValidRange(e,1))return e;const i=this._validatePosition(e.startLineNumber,e.startColumn,0),n=this._validatePosition(e.endLineNumber,e.endColumn,0),s=i.lineNumber,r=i.column,a=n.lineNumber,l=n.column;{const c=r>1?this._buffer.getLineCharCode(s,r-2):0,d=l>1&&l<=this._buffer.getLineLength(a)?this._buffer.getLineCharCode(a,l-2):0,h=wi(c),u=wi(d);return!h&&!u?new I(s,r,a,l):s===a&&r===l?new I(s,r-1,a,l-1):h&&u?new I(s,r-1,a,l+1):h?new I(s,r-1,a,l):new I(s,r,a,l+1)}}modifyPosition(e,t){this._assertNotDisposed();const i=this.getOffsetAt(e)+t;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,i)))}getFullModelRange(){this._assertNotDisposed();const e=this.getLineCount();return new I(1,1,e,this.getLineMaxColumn(e))}findMatchesLineByLine(e,t,i,n){return this._buffer.findMatchesLineByLine(e,t,i,n)}findMatches(e,t,i,n,s,r,a=jX){this._assertNotDisposed();let l=null;t!==null&&(Array.isArray(t)||(t=[t]),t.every(h=>I.isIRange(h))&&(l=t.map(h=>this.validateRange(h)))),l===null&&(l=[this.getFullModelRange()]),l=l.sort((h,u)=>h.startLineNumber-u.startLineNumber||h.startColumn-u.startColumn);const c=[];c.push(l.reduce((h,u)=>I.areIntersecting(h,u)?h.plusRange(u):(c.push(h),u)));let d;if(!i&&e.indexOf(` +`)<0){const u=new Eu(e,i,n,s).parseSearchRequest();if(!u)return[];d=f=>this.findMatchesLineByLine(f,u,r,a)}else d=h=>Eb.findMatches(this,new Eu(e,i,n,s),h,r,a);return c.map(d).reduce((h,u)=>h.concat(u),[])}findNextMatch(e,t,i,n,s,r){this._assertNotDisposed();const a=this.validatePosition(t);if(!i&&e.indexOf(` +`)<0){const c=new Eu(e,i,n,s).parseSearchRequest();if(!c)return null;const d=this.getLineCount();let h=new I(a.lineNumber,a.column,d,this.getLineMaxColumn(d)),u=this.findMatchesLineByLine(h,c,r,1);return Eb.findNextMatch(this,new Eu(e,i,n,s),a,r),u.length>0||(h=new I(1,1,a.lineNumber,this.getLineMaxColumn(a.lineNumber)),u=this.findMatchesLineByLine(h,c,r,1),u.length>0)?u[0]:null}return Eb.findNextMatch(this,new Eu(e,i,n,s),a,r)}findPreviousMatch(e,t,i,n,s,r){this._assertNotDisposed();const a=this.validatePosition(t);return Eb.findPreviousMatch(this,new Eu(e,i,n,s),a,r)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(e){if((this.getEOL()===` +`?0:1)!==e)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(e){return e instanceof CS?e:new CS(e.identifier||null,this.validateRange(e.range),e.text,e.forceMoveMarkers||!1,e.isAutoWhitespaceEdit||!1,e._isTracked||!1)}_validateEditOperations(e){const t=[];for(let i=0,n=e.length;i({range:this.validateRange(a.range),text:a.text}));let r=!0;if(e)for(let a=0,l=e.length;ac.endLineNumber,p=c.startLineNumber>f.endLineNumber;if(!g&&!p){d=!0;break}}if(!d){r=!1;break}}if(r)for(let a=0,l=this._trimAutoWhitespaceLines.length;ag.endLineNumber)&&!(c===g.startLineNumber&&g.startColumn===d&&g.isEmpty()&&p&&p.length>0&&p.charAt(0)===` +`)&&!(c===g.startLineNumber&&g.startColumn===1&&g.isEmpty()&&p&&p.length>0&&p.charAt(p.length-1)===` +`)){h=!1;break}}if(h){const u=new I(c,1,c,d);t.push(new CS(null,u,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(e,t,i,n)}_applyUndo(e,t,i,n){const s=e.map(r=>{const a=this.getPositionAt(r.newPosition),l=this.getPositionAt(r.newEnd);return{range:new I(a.lineNumber,a.column,l.lineNumber,l.column),text:r.oldText}});this._applyUndoRedoEdits(s,t,!0,!1,i,n)}_applyRedo(e,t,i,n){const s=e.map(r=>{const a=this.getPositionAt(r.oldPosition),l=this.getPositionAt(r.oldEnd);return{range:new I(a.lineNumber,a.column,l.lineNumber,l.column),text:r.newText}});this._applyUndoRedoEdits(s,t,!1,!0,i,n)}_applyUndoRedoEdits(e,t,i,n,s,r){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=i,this._isRedoing=n,this.applyEdits(e,!1),this.setEOL(t),this._overwriteAlternativeVersionId(s)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(r),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(e,t=!1){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();const i=this._validateEditOperations(e);return this._doApplyEdits(i,t)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(e,t){const i=this._buffer.getLineCount(),n=this._buffer.applyEdits(e,this._options.trimAutoWhitespace,t),s=this._buffer.getLineCount(),r=n.changes;if(this._trimAutoWhitespaceLines=n.trimAutoWhitespaceLineNumbers,r.length!==0){for(let c=0,d=r.length;c=0;N--){const H=f+N,F=w+N;E.takeFromEndWhile(j=>j.lineNumber>F);const W=E.takeFromEndWhile(j=>j.lineNumber===F);a.push(new FP(H,this.getLineContent(F),W))}if(bae.lineNumberae.lineNumber===ne)}a.push(new VX(H+1,f+_,B,j))}l+=C}this._emitContentChangedEvent(new $f(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:r,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return n.reverseEdits===null?void 0:n.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(e){if(e===null||e.size===0)return;const i=Array.from(e).map(n=>new FP(n,this.getLineContent(n),this._getInjectedTextInLine(n)));this._onDidChangeInjectedText.fire(new C9(i))}changeDecorations(e,t=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(t,e)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(e,t){const i={addDecoration:(s,r)=>this._deltaDecorationsImpl(e,[],[{range:s,options:r}])[0],changeDecoration:(s,r)=>{this._changeDecorationImpl(s,r)},changeDecorationOptions:(s,r)=>{this._changeDecorationOptionsImpl(s,VP(r))},removeDecoration:s=>{this._deltaDecorationsImpl(e,[s],[])},deltaDecorations:(s,r)=>s.length===0&&r.length===0?[]:this._deltaDecorationsImpl(e,s,r)};let n=null;try{n=t(i)}catch(s){Ze(s)}return i.addDecoration=_m,i.changeDecoration=_m,i.changeDecorationOptions=_m,i.removeDecoration=_m,i.deltaDecorations=_m,n}deltaDecorations(e,t,i=0){if(this._assertNotDisposed(),e||(e=[]),e.length===0&&t.length===0)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),Ze(new Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(i,e,t)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(e){return this.getDecorationRange(e)}_setTrackedRange(e,t,i){const n=e?this._decorations[e]:null;if(!n)return t?this._deltaDecorationsImpl(0,[],[{range:t,options:HP[i]}],!0)[0]:null;if(!t)return this._decorationsTree.delete(n),delete this._decorations[n.id],null;const s=this._validateRangeRelaxedNoAllocations(t),r=this._buffer.getOffsetAt(s.startLineNumber,s.startColumn),a=this._buffer.getOffsetAt(s.endLineNumber,s.endColumn);return this._decorationsTree.delete(n),n.reset(this.getVersionId(),r,a,s),n.setOptions(HP[i]),this._decorationsTree.insert(n),n.id}removeAllDecorationsWithOwnerId(e){if(this._isDisposed)return;const t=this._decorationsTree.collectNodesFromOwner(e);for(let i=0,n=t.length;ithis.getLineCount()?[]:this.getLinesDecorations(e,e,t,i)}getLinesDecorations(e,t,i=0,n=!1,s=!1){const r=this.getLineCount(),a=Math.min(r,Math.max(1,e)),l=Math.min(r,Math.max(1,t)),c=this.getLineMaxColumn(l),d=new I(a,1,l,c),h=this._getDecorationsInRange(d,i,n,s);return xL(h,this._decorationProvider.getDecorationsInRange(d,i,n)),h}getDecorationsInRange(e,t=0,i=!1,n=!1,s=!1){const r=this.validateRange(e),a=this._getDecorationsInRange(r,t,i,s);return xL(a,this._decorationProvider.getDecorationsInRange(r,t,i,n)),a}getOverviewRulerDecorations(e=0,t=!1){return this._decorationsTree.getAll(this,e,t,!0,!1)}getInjectedTextDecorations(e=0){return this._decorationsTree.getAllInjectedText(this,e)}_getInjectedTextInLine(e){const t=this._buffer.getOffsetAt(e,1),i=t+this._buffer.getLineLength(e),n=this._decorationsTree.getInjectedTextInInterval(this,t,i,0);return _r.fromDecorations(n).filter(s=>s.lineNumber===e)}getAllDecorations(e=0,t=!1){let i=this._decorationsTree.getAll(this,e,t,!1,!1);return i=i.concat(this._decorationProvider.getAllDecorations(e,t)),i}getAllMarginDecorations(e=0){return this._decorationsTree.getAll(this,e,!1,!1,!0)}_getDecorationsInRange(e,t,i,n){const s=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),r=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.getAllInInterval(this,s,r,t,i,n)}getRangeAt(e,t){return this._buffer.getRangeAt(e,t-e)}_changeDecorationImpl(e,t){const i=this._decorations[e];if(!i)return;if(i.options.after){const a=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(i.options.before){const a=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}const n=this._validateRangeRelaxedNoAllocations(t),s=this._buffer.getOffsetAt(n.startLineNumber,n.startColumn),r=this._buffer.getOffsetAt(n.endLineNumber,n.endColumn);this._decorationsTree.delete(i),i.reset(this.getVersionId(),s,r,n),this._decorationsTree.insert(i),this._onDidChangeDecorations.checkAffectedAndFire(i.options),i.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.endLineNumber),i.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.startLineNumber)}_changeDecorationOptionsImpl(e,t){const i=this._decorations[e];if(!i)return;const n=!!(i.options.overviewRuler&&i.options.overviewRuler.color),s=!!(t.overviewRuler&&t.overviewRuler.color);if(this._onDidChangeDecorations.checkAffectedAndFire(i.options),this._onDidChangeDecorations.checkAffectedAndFire(t),i.options.after||t.after){const l=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.endLineNumber)}if(i.options.before||t.before){const l=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.startLineNumber)}const r=n!==s,a=YX(t)!==F1(i);r||a?(this._decorationsTree.delete(i),i.setOptions(t),this._decorationsTree.insert(i)):i.setOptions(t)}_deltaDecorationsImpl(e,t,i,n=!1){const s=this.getVersionId(),r=t.length;let a=0;const l=i.length;let c=0;this._onDidChangeDecorations.beginDeferredEmit();try{const d=new Array(l);for(;athis._setLanguage(e.languageId,t)),this._setLanguage(e.languageId,t))}_setLanguage(e,t){this.tokenization.setLanguageId(e,t),this._languageService.requestRichLanguageFeatures(e)}getLanguageIdAtPosition(e,t){return this.tokenization.getLanguageIdAtPosition(e,t)}getWordAtPosition(e){return this._tokenizationTextModelPart.getWordAtPosition(e)}getWordUntilPosition(e){return this._tokenizationTextModelPart.getWordUntilPosition(e)}normalizePosition(e,t){return e}getLineIndentColumn(e){return ZX(this.getLineContent(e))+1}},ud=ar,ar._MODEL_SYNC_LIMIT=50*1024*1024,ar.LARGE_FILE_SIZE_THRESHOLD=20*1024*1024,ar.LARGE_FILE_LINE_COUNT_THRESHOLD=300*1e3,ar.LARGE_FILE_HEAP_OPERATION_THRESHOLD=256*1024*1024,ar.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:Qi.tabSize,indentSize:Qi.indentSize,insertSpaces:Qi.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:Qi.trimAutoWhitespace,largeFileOptimizations:Qi.largeFileOptimizations,bracketPairColorizationOptions:Qi.bracketPairColorizationOptions},ar);m_=ud=UX([Gb(4,CT),Gb(5,qt),Gb(6,Gn),Gb(7,ke)],m_);function ZX(o){let e=0;for(const t of o)if(t===" "||t===" ")e++;else break;return e}function zS(o){return!!(o.options.overviewRuler&&o.options.overviewRuler.color)}function YX(o){return!!o.after||!!o.before}function F1(o){return!!o.options.after||!!o.options.before}class WP{constructor(){this._decorationsTree0=new BS,this._decorationsTree1=new BS,this._injectedTextDecorationsTree=new BS}ensureAllNodesHaveRanges(e){this.getAll(e,0,!1,!1,!1)}_ensureNodesHaveRanges(e,t){for(const i of t)i.range===null&&(i.range=e.getRangeAt(i.cachedAbsoluteStart,i.cachedAbsoluteEnd));return t}getAllInInterval(e,t,i,n,s,r){const a=e.getVersionId(),l=this._intervalSearch(t,i,n,s,a,r);return this._ensureNodesHaveRanges(e,l)}_intervalSearch(e,t,i,n,s,r){const a=this._decorationsTree0.intervalSearch(e,t,i,n,s,r),l=this._decorationsTree1.intervalSearch(e,t,i,n,s,r),c=this._injectedTextDecorationsTree.intervalSearch(e,t,i,n,s,r);return a.concat(l).concat(c)}getInjectedTextInInterval(e,t,i,n){const s=e.getVersionId(),r=this._injectedTextDecorationsTree.intervalSearch(t,i,n,!1,s,!1);return this._ensureNodesHaveRanges(e,r).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getAllInjectedText(e,t){const i=e.getVersionId(),n=this._injectedTextDecorationsTree.search(t,!1,i,!1);return this._ensureNodesHaveRanges(e,n).filter(s=>s.options.showIfCollapsed||!s.range.isEmpty())}getAll(e,t,i,n,s){const r=e.getVersionId(),a=this._search(t,i,n,r,s);return this._ensureNodesHaveRanges(e,a)}_search(e,t,i,n,s){if(i)return this._decorationsTree1.search(e,t,n,s);{const r=this._decorationsTree0.search(e,t,n,s),a=this._decorationsTree1.search(e,t,n,s),l=this._injectedTextDecorationsTree.search(e,t,n,s);return r.concat(a).concat(l)}}collectNodesFromOwner(e){const t=this._decorationsTree0.collectNodesFromOwner(e),i=this._decorationsTree1.collectNodesFromOwner(e),n=this._injectedTextDecorationsTree.collectNodesFromOwner(e);return t.concat(i).concat(n)}collectNodesPostOrder(){const e=this._decorationsTree0.collectNodesPostOrder(),t=this._decorationsTree1.collectNodesPostOrder(),i=this._injectedTextDecorationsTree.collectNodesPostOrder();return e.concat(t).concat(i)}insert(e){F1(e)?this._injectedTextDecorationsTree.insert(e):zS(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)}delete(e){F1(e)?this._injectedTextDecorationsTree.delete(e):zS(e)?this._decorationsTree1.delete(e):this._decorationsTree0.delete(e)}getNodeRange(e,t){const i=e.getVersionId();return t.cachedVersionId!==i&&this._resolveNode(t,i),t.range===null&&(t.range=e.getRangeAt(t.cachedAbsoluteStart,t.cachedAbsoluteEnd)),t.range}_resolveNode(e,t){F1(e)?this._injectedTextDecorationsTree.resolveNode(e,t):zS(e)?this._decorationsTree1.resolveNode(e,t):this._decorationsTree0.resolveNode(e,t)}acceptReplace(e,t,i,n){this._decorationsTree0.acceptReplace(e,t,i,n),this._decorationsTree1.acceptReplace(e,t,i,n),this._injectedTextDecorationsTree.acceptReplace(e,t,i,n)}}function Mr(o){return o.replace(/[^a-z0-9\-_]/gi," ")}class v9{constructor(e){this.color=e.color||"",this.darkColor=e.darkColor||""}}class QX extends v9{constructor(e){super(e),this._resolvedColor=null,this.position=typeof e.position=="number"?e.position:LC.Center}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(e,t){if(typeof e=="string")return e;const i=e?t.getColor(e.id):null;return i?i.toString():""}}class XX{constructor(e){this.position=e?.position??Ao.Center,this.persistLane=e?.persistLane}}class JX extends v9{constructor(e){super(e),this.position=e.position,this.sectionHeaderStyle=e.sectionHeaderStyle??null,this.sectionHeaderText=e.sectionHeaderText??null}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(e,t){return typeof e=="string"?q.fromHex(e):t.getColor(e.id)}}class Bc{static from(e){return e instanceof Bc?e:new Bc(e)}constructor(e){this.content=e.content||"",this.inlineClassName=e.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=e.attachedData||null,this.cursorStops=e.cursorStops||null}}class kt{static register(e){return new kt(e)}static createDynamic(e){return new kt(e)}constructor(e){this.description=e.description,this.blockClassName=e.blockClassName?Mr(e.blockClassName):null,this.blockDoesNotCollapse=e.blockDoesNotCollapse??null,this.blockIsAfterEnd=e.blockIsAfterEnd??null,this.blockPadding=e.blockPadding??null,this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?Mr(e.className):null,this.shouldFillLineOnLineBreak=e.shouldFillLineOnLineBreak??null,this.hoverMessage=e.hoverMessage||null,this.glyphMarginHoverMessage=e.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=e.lineNumberHoverMessage||null,this.isWholeLine=e.isWholeLine||!1,this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new QX(e.overviewRuler):null,this.minimap=e.minimap?new JX(e.minimap):null,this.glyphMargin=e.glyphMarginClassName?new XX(e.glyphMargin):null,this.glyphMarginClassName=e.glyphMarginClassName?Mr(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?Mr(e.linesDecorationsClassName):null,this.lineNumberClassName=e.lineNumberClassName?Mr(e.lineNumberClassName):null,this.linesDecorationsTooltip=e.linesDecorationsTooltip?rH(e.linesDecorationsTooltip):null,this.firstLineDecorationClassName=e.firstLineDecorationClassName?Mr(e.firstLineDecorationClassName):null,this.marginClassName=e.marginClassName?Mr(e.marginClassName):null,this.inlineClassName=e.inlineClassName?Mr(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?Mr(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?Mr(e.afterContentClassName):null,this.after=e.after?Bc.from(e.after):null,this.before=e.before?Bc.from(e.before):null,this.hideInCommentTokens=e.hideInCommentTokens??!1,this.hideInStringTokens=e.hideInStringTokens??!1}}kt.EMPTY=kt.register({description:"empty"});const HP=[kt.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),kt.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),kt.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),kt.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function VP(o){return o instanceof kt?o:kt.createDynamic(o)}class eJ extends z{constructor(e){super(),this.handleBeforeFire=e,this._actual=this._register(new A),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._deferredCnt=0,this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._affectsLineNumber=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){this._deferredCnt--,this._deferredCnt===0&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null)}recordLineAffectedByInjectedText(e){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(e)}checkAffectedAndFire(e){this._affectsMinimap||=!!e.minimap?.position,this._affectsOverviewRuler||=!!e.overviewRuler?.color,this._affectsGlyphMargin||=!!e.glyphMarginClassName,this._affectsLineNumber||=!!e.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){this._deferredCnt===0?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines);const e={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler,affectsGlyphMargin:this._affectsGlyphMargin,affectsLineNumber:this._affectsLineNumber};this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._actual.fire(e)}}class tJ extends z{constructor(){super(),this._fastEmitter=this._register(new A),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new A),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(e=null){if(this._deferredCnt--,this._deferredCnt===0&&this._deferredEvent!==null){this._deferredEvent.rawContentChangedEvent.resultingSelection=e;const t=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(t),this._slowEmitter.fire(t)}}fire(e){if(this._deferredCnt>0){this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(e):this._deferredEvent=e;return}this._fastEmitter.fire(e),this._slowEmitter.fire(e)}}var iJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Yb=function(o,e){return function(t,i){e(t,i,o)}},Vu;function sd(o){return o.toString()}let nJ=class{constructor(e,t,i){this.model=e,this._modelEventListeners=new X,this.model=e,this._modelEventListeners.add(e.onWillDispose(()=>t(e))),this._modelEventListeners.add(e.onDidChangeLanguage(n=>i(e,n)))}dispose(){this._modelEventListeners.dispose()}};const sJ=Un||Ue?1:2;class oJ{constructor(e,t,i,n,s,r,a,l){this.uri=e,this.initialUndoRedoSnapshot=t,this.time=i,this.sharesUndoRedoStack=n,this.heapSize=s,this.sha1=r,this.versionId=a,this.alternativeVersionId=l}}var oh;let ID=(oh=class extends z{constructor(e,t,i,n){super(),this._configurationService=e,this._resourcePropertiesService=t,this._undoRedoService=i,this._instantiationService=n,this._onModelAdded=this._register(new A),this.onModelAdded=this._onModelAdded.event,this._onModelRemoved=this._register(new A),this.onModelRemoved=this._onModelRemoved.event,this._onModelModeChanged=this._register(new A),this.onModelLanguageChanged=this._onModelModeChanged.event,this._modelCreationOptionsByLanguageAndResource=Object.create(null),this._models={},this._disposedModels=new Map,this._disposedModelsHeapSize=0,this._register(this._configurationService.onDidChangeConfiguration(s=>this._updateModelOptions(s))),this._updateModelOptions(void 0)}static _readModelOptions(e,t){let i=Qi.tabSize;if(e.editor&&typeof e.editor.tabSize<"u"){const u=parseInt(e.editor.tabSize,10);isNaN(u)||(i=u),i<1&&(i=1)}let n="tabSize";if(e.editor&&typeof e.editor.indentSize<"u"&&e.editor.indentSize!=="tabSize"){const u=parseInt(e.editor.indentSize,10);isNaN(u)||(n=Math.max(u,1))}let s=Qi.insertSpaces;e.editor&&typeof e.editor.insertSpaces<"u"&&(s=e.editor.insertSpaces==="false"?!1:!!e.editor.insertSpaces);let r=sJ;const a=e.eol;a===`\r +`?r=2:a===` +`&&(r=1);let l=Qi.trimAutoWhitespace;e.editor&&typeof e.editor.trimAutoWhitespace<"u"&&(l=e.editor.trimAutoWhitespace==="false"?!1:!!e.editor.trimAutoWhitespace);let c=Qi.detectIndentation;e.editor&&typeof e.editor.detectIndentation<"u"&&(c=e.editor.detectIndentation==="false"?!1:!!e.editor.detectIndentation);let d=Qi.largeFileOptimizations;e.editor&&typeof e.editor.largeFileOptimizations<"u"&&(d=e.editor.largeFileOptimizations==="false"?!1:!!e.editor.largeFileOptimizations);let h=Qi.bracketPairColorizationOptions;return e.editor?.bracketPairColorization&&typeof e.editor.bracketPairColorization=="object"&&(h={enabled:!!e.editor.bracketPairColorization.enabled,independentColorPoolPerBracketType:!!e.editor.bracketPairColorization.independentColorPoolPerBracketType}),{isForSimpleWidget:t,tabSize:i,indentSize:n,insertSpaces:s,detectIndentation:c,defaultEOL:r,trimAutoWhitespace:l,largeFileOptimizations:d,bracketPairColorizationOptions:h}}_getEOL(e,t){if(e)return this._resourcePropertiesService.getEOL(e,t);const i=this._configurationService.getValue("files.eol",{overrideIdentifier:t});return i&&typeof i=="string"&&i!=="auto"?i:Ns===3||Ns===2?` +`:`\r +`}_shouldRestoreUndoStack(){const e=this._configurationService.getValue("files.restoreUndoStack");return typeof e=="boolean"?e:!0}getCreationOptions(e,t,i){const n=typeof e=="string"?e:e.languageId;let s=this._modelCreationOptionsByLanguageAndResource[n+t];if(!s){const r=this._configurationService.getValue("editor",{overrideIdentifier:n,resource:t}),a=this._getEOL(t,n);s=Vu._readModelOptions({editor:r,eol:a},i),this._modelCreationOptionsByLanguageAndResource[n+t]=s}return s}_updateModelOptions(e){const t=this._modelCreationOptionsByLanguageAndResource;this._modelCreationOptionsByLanguageAndResource=Object.create(null);const i=Object.keys(this._models);for(let n=0,s=i.length;ne){const t=[];for(this._disposedModels.forEach(i=>{i.sharesUndoRedoStack||t.push(i)}),t.sort((i,n)=>i.time-n.time);t.length>0&&this._disposedModelsHeapSize>e;){const i=t.shift();this._removeDisposedModel(i.uri),i.initialUndoRedoSnapshot!==null&&this._undoRedoService.restoreSnapshot(i.initialUndoRedoSnapshot)}}}_createModelData(e,t,i,n){const s=this.getCreationOptions(t,i,n),r=this._instantiationService.createInstance(m_,e,t,s,i);if(i&&this._disposedModels.has(sd(i))){const c=this._removeDisposedModel(i),d=this._undoRedoService.getElements(i),h=this._getSHA1Computer(),u=h.canComputeSHA1(r)?h.computeSHA1(r)===c.sha1:!1;if(u||c.sharesUndoRedoStack){for(const f of d.past)Ja(f)&&f.matchesResource(i)&&f.setModel(r);for(const f of d.future)Ja(f)&&f.matchesResource(i)&&f.setModel(r);this._undoRedoService.setElementsValidFlag(i,!0,f=>Ja(f)&&f.matchesResource(i)),u&&(r._overwriteVersionId(c.versionId),r._overwriteAlternativeVersionId(c.alternativeVersionId),r._overwriteInitialUndoRedoSnapshot(c.initialUndoRedoSnapshot))}else c.initialUndoRedoSnapshot!==null&&this._undoRedoService.restoreSnapshot(c.initialUndoRedoSnapshot)}const a=sd(r.uri);if(this._models[a])throw new Error("ModelService: Cannot add model because it already exists!");const l=new nJ(r,c=>this._onWillDispose(c),(c,d)=>this._onDidChangeLanguage(c,d));return this._models[a]=l,l}createModel(e,t,i,n=!1){let s;return t?s=this._createModelData(e,t,i,n):s=this._createModelData(e,Bs,i,n),this._onModelAdded.fire(s.model),s.model}getModels(){const e=[],t=Object.keys(this._models);for(let i=0,n=t.length;i0||c.future.length>0){for(const d of c.past)Ja(d)&&d.matchesResource(e.uri)&&(s=!0,r+=d.heapSize(e.uri),d.setModel(e.uri));for(const d of c.future)Ja(d)&&d.matchesResource(e.uri)&&(s=!0,r+=d.heapSize(e.uri),d.setModel(e.uri))}}const a=Vu.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK,l=this._getSHA1Computer();if(s)if(!n&&(r>a||!l.canComputeSHA1(e))){const c=i.model.getInitialUndoRedoSnapshot();c!==null&&this._undoRedoService.restoreSnapshot(c)}else this._ensureDisposedModelsHeapSize(a-r),this._undoRedoService.setElementsValidFlag(e.uri,!1,c=>Ja(c)&&c.matchesResource(e.uri)),this._insertDisposedModel(new oJ(e.uri,i.model.getInitialUndoRedoSnapshot(),Date.now(),n,r,l.computeSHA1(e),e.getVersionId(),e.getAlternativeVersionId()));else if(!n){const c=i.model.getInitialUndoRedoSnapshot();c!==null&&this._undoRedoService.restoreSnapshot(c)}delete this._models[t],i.dispose(),delete this._modelCreationOptionsByLanguageAndResource[e.getLanguageId()+e.uri],this._onModelRemoved.fire(e)}_onDidChangeLanguage(e,t){const i=t.oldLanguage,n=e.getLanguageId(),s=this.getCreationOptions(i,e.uri,e.isForSimpleWidget),r=this.getCreationOptions(n,e.uri,e.isForSimpleWidget);Vu._setModelOptionsForModel(e,r,s),this._onModelModeChanged.fire({model:e,oldLanguageId:i})}_getSHA1Computer(){return new ED}},Vu=oh,oh.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK=20*1024*1024,oh);ID=Vu=iJ([Yb(0,lt),Yb(1,p3),Yb(2,CT),Yb(3,ke)],ID);const Fw=class Fw{canComputeSHA1(e){return e.getValueLength()<=Fw.MAX_MODEL_SIZE}computeSHA1(e){const t=new Kx,i=e.createSnapshot();let n;for(;n=i.read();)t.update(n);return t.digest()}};Fw.MAX_MODEL_SIZE=10*1024*1024;let ED=Fw;var ND;(function(o){o[o.PRESERVE=0]="PRESERVE",o[o.LAST=1]="LAST"})(ND||(ND={}));const w9={Quickaccess:"workbench.contributions.quickaccess"};class rJ{constructor(){this.providers=[],this.defaultProvider=void 0}registerQuickAccessProvider(e){return e.prefix.length===0?this.defaultProvider=e:this.providers.push(e),this.providers.sort((t,i)=>i.prefix.length-t.prefix.length),_e(()=>{this.providers.splice(this.providers.indexOf(e),1),this.defaultProvider===e&&(this.defaultProvider=void 0)})}getQuickAccessProviders(){return Ag([this.defaultProvider,...this.providers])}getQuickAccessProvider(e){return e&&this.providers.find(i=>e.startsWith(i.prefix))||void 0||this.defaultProvider}}Bi.add(w9.Quickaccess,new rJ);const aJ={ctrlCmd:!1,alt:!1};var yg;(function(o){o[o.Blur=1]="Blur",o[o.Gesture=2]="Gesture",o[o.Other=3]="Other"})(yg||(yg={}));var jr;(function(o){o[o.NONE=0]="NONE",o[o.FIRST=1]="FIRST",o[o.SECOND=2]="SECOND",o[o.LAST=3]="LAST"})(jr||(jr={}));var yt;(function(o){o[o.First=1]="First",o[o.Second=2]="Second",o[o.Last=3]="Last",o[o.Next=4]="Next",o[o.Previous=5]="Previous",o[o.NextPage=6]="NextPage",o[o.PreviousPage=7]="PreviousPage",o[o.NextSeparator=8]="NextSeparator",o[o.PreviousSeparator=9]="PreviousSeparator"})(yt||(yt={}));var iv;(function(o){o[o.Title=1]="Title",o[o.Inline=2]="Inline"})(iv||(iv={}));const fy=He("quickInputService");var lJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},zP=function(o,e){return function(t,i){e(t,i,o)}};let TD=class extends z{constructor(e,t){super(),this.quickInputService=e,this.instantiationService=t,this.registry=Bi.as(w9.Quickaccess),this.mapProviderToDescriptor=new Map,this.lastAcceptedPickerValues=new Map,this.visibleQuickAccess=void 0}show(e="",t){this.doShowOrPick(e,!1,t)}doShowOrPick(e,t,i){const[n,s]=this.getOrInstantiateProvider(e,i?.enabledProviderPrefixes),r=this.visibleQuickAccess,a=r?.descriptor;if(r&&s&&a===s){e!==s.prefix&&!i?.preserveValue&&(r.picker.value=e),this.adjustValueSelection(r.picker,s,i);return}if(s&&!i?.preserveValue){let g;if(r&&a&&a!==s){const p=r.value.substr(a.prefix.length);p&&(g=`${s.prefix}${p}`)}if(!g){const p=n?.defaultFilterValue;p===ND.LAST?g=this.lastAcceptedPickerValues.get(s):typeof p=="string"&&(g=`${s.prefix}${p}`)}typeof g=="string"&&(e=g)}const l=r?.picker?.valueSelection,c=r?.picker?.value,d=new X,h=d.add(this.quickInputService.createQuickPick({useSeparators:!0}));h.value=e,this.adjustValueSelection(h,s,i),h.placeholder=i?.placeholder??s?.placeholder,h.quickNavigate=i?.quickNavigateConfiguration,h.hideInput=!!h.quickNavigate&&!r,(typeof i?.itemActivation=="number"||i?.quickNavigateConfiguration)&&(h.itemActivation=i?.itemActivation??jr.SECOND),h.contextKey=s?.contextKey,h.filterValue=g=>g.substring(s?s.prefix.length:0);let u;t&&(u=new qN,d.add(J.once(h.onWillAccept)(g=>{g.veto(),h.hide()}))),d.add(this.registerPickerListeners(h,n,s,e,i));const f=d.add(new In);if(n&&d.add(n.provide(h,f.token,i?.providerOptions)),J.once(h.onDidHide)(()=>{h.selectedItems.length===0&&f.cancel(),d.dispose(),u?.complete(h.selectedItems.slice(0))}),h.show(),l&&c===e&&(h.valueSelection=l),t)return u?.p}adjustValueSelection(e,t,i){let n;i?.preserveValue?n=[e.value.length,e.value.length]:n=[t?.prefix.length??0,e.value.length],e.valueSelection=n}registerPickerListeners(e,t,i,n,s){const r=new X,a=this.visibleQuickAccess={picker:e,descriptor:i,value:n};return r.add(_e(()=>{a===this.visibleQuickAccess&&(this.visibleQuickAccess=void 0)})),r.add(e.onDidChangeValue(l=>{const[c]=this.getOrInstantiateProvider(l,s?.enabledProviderPrefixes);c!==t?this.show(l,{enabledProviderPrefixes:s?.enabledProviderPrefixes,preserveValue:!0,providerOptions:s?.providerOptions}):a.value=l})),i&&r.add(e.onDidAccept(()=>{this.lastAcceptedPickerValues.set(i,e.value)})),r}getOrInstantiateProvider(e,t){const i=this.registry.getQuickAccessProvider(e);if(!i||t&&!t?.includes(i.prefix))return[void 0,void 0];let n=this.mapProviderToDescriptor.get(i);return n||(n=this.instantiationService.createInstance(i.ctor),this.mapProviderToDescriptor.set(i,n)),[n,i]}};TD=lJ([zP(0,fy),zP(1,ke)],TD);class nb extends xr{constructor(e){super(),this._onChange=this._register(new A),this.onChange=this._onChange.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._opts=e,this._checked=this._opts.isChecked;const t=["monaco-custom-toggle"];this._opts.icon&&(this._icon=this._opts.icon,t.push(...Ee.asClassNameArray(this._icon))),this._opts.actionClassName&&t.push(...this._opts.actionClassName.split(" ")),this._checked&&t.push("checked"),this.domNode=document.createElement("div"),this._hover=this._register(La().setupManagedHover(e.hoverDelegate??Ks("mouse"),this.domNode,this._opts.title)),this.domNode.classList.add(...t),this._opts.notFocusable||(this.domNode.tabIndex=0),this.domNode.setAttribute("role","checkbox"),this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.setAttribute("aria-label",this._opts.title),this.applyStyles(),this.onclick(this.domNode,i=>{this.enabled&&(this.checked=!this._checked,this._onChange.fire(!1),i.preventDefault())}),this._register(this.ignoreGesture(this.domNode)),this.onkeydown(this.domNode,i=>{if(i.keyCode===10||i.keyCode===3){this.checked=!this._checked,this._onChange.fire(!0),i.preventDefault(),i.stopPropagation();return}this._onKeyDown.fire(i)})}get enabled(){return this.domNode.getAttribute("aria-disabled")!=="true"}focus(){this.domNode.focus()}get checked(){return this._checked}set checked(e){this._checked=e,this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.classList.toggle("checked",this._checked),this.applyStyles()}width(){return 22}applyStyles(){this.domNode&&(this.domNode.style.borderColor=this._checked&&this._opts.inputActiveOptionBorder||"",this.domNode.style.color=this._checked&&this._opts.inputActiveOptionForeground||"inherit",this.domNode.style.backgroundColor=this._checked&&this._opts.inputActiveOptionBackground||"")}enable(){this.domNode.setAttribute("aria-disabled",String(!1))}disable(){this.domNode.setAttribute("aria-disabled",String(!0))}}var cJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};class y9{constructor(e){this.nodes=e}toString(){return this.nodes.map(e=>typeof e=="string"?e:e.label).join("")}}cJ([Jt],y9.prototype,"toString",null);const dJ=/\[([^\]]+)\]\(((?:https?:\/\/|command:|file:)[^\)\s]+)(?: (["'])(.+?)(\3))?\)/gi;function hJ(o){const e=[];let t=0,i;for(;i=dJ.exec(o);){i.index-t>0&&e.push(o.substring(t,i.index));const[,n,s,,r]=i;r?e.push({label:n,href:s,title:r}):e.push({label:n,href:s}),t=i.index+i[0].length}return t{DV(f)&&je.stop(f,!0),t.callback(s.href)},c=t.disposables.add(new ze(a,ee.CLICK)).event,d=t.disposables.add(new ze(a,ee.KEY_DOWN)).event,h=J.chain(d,f=>f.filter(g=>{const p=new Nt(g);return p.equals(10)||p.equals(3)}));t.disposables.add(fn.addTarget(a));const u=t.disposables.add(new ze(a,St.Tap)).event;J.any(c,u,h)(l,null,t.disposables),e.appendChild(a)}}var mJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},UP=function(o,e){return function(t,i){e(t,i,o)}};const S9="inQuickInput",pJ=new le(S9,!1,m("inQuickInput","Whether keyboard focus is inside the quick input control")),_J=re.has(S9),L9="quickInputType",bJ=new le(L9,void 0,m("quickInputType","The type of the currently visible quick input")),x9="cursorAtEndOfQuickInputBox",CJ=new le(x9,!1,m("cursorAtEndOfQuickInputBox","Whether the cursor in the quick input is at the end of the input box")),vJ=re.has(x9),MD={iconClass:Ee.asClassName(ie.quickInputBack),tooltip:m("quickInput.back","Back")},Bw=class Bw extends z{constructor(e){super(),this.ui=e,this._widgetUpdated=!1,this.visible=!1,this._enabled=!0,this._busy=!1,this._ignoreFocusOut=!1,this._leftButtons=[],this._rightButtons=[],this._inlineButtons=[],this.buttonsUpdated=!1,this._toggles=[],this.togglesUpdated=!1,this.noValidationMessage=Bw.noPromptMessage,this._severity=Qt.Ignore,this.onDidTriggerButtonEmitter=this._register(new A),this.onDidHideEmitter=this._register(new A),this.onWillHideEmitter=this._register(new A),this.onDisposeEmitter=this._register(new A),this.visibleDisposables=this._register(new X),this.onDidHide=this.onDidHideEmitter.event}get title(){return this._title}set title(e){this._title=e,this.update()}get description(){return this._description}set description(e){this._description=e,this.update()}get step(){return this._steps}set step(e){this._steps=e,this.update()}get totalSteps(){return this._totalSteps}set totalSteps(e){this._totalSteps=e,this.update()}get enabled(){return this._enabled}set enabled(e){this._enabled=e,this.update()}get contextKey(){return this._contextKey}set contextKey(e){this._contextKey=e,this.update()}get busy(){return this._busy}set busy(e){this._busy=e,this.update()}get ignoreFocusOut(){return this._ignoreFocusOut}set ignoreFocusOut(e){const t=this._ignoreFocusOut!==e&&!Tc;this._ignoreFocusOut=e&&!Tc,t&&this.update()}get titleButtons(){return this._leftButtons.length?[...this._leftButtons,this._rightButtons]:this._rightButtons}get buttons(){return[...this._leftButtons,...this._rightButtons,...this._inlineButtons]}set buttons(e){this._leftButtons=e.filter(t=>t===MD),this._rightButtons=e.filter(t=>t!==MD&&t.location!==iv.Inline),this._inlineButtons=e.filter(t=>t.location===iv.Inline),this.buttonsUpdated=!0,this.update()}get toggles(){return this._toggles}set toggles(e){this._toggles=e??[],this.togglesUpdated=!0,this.update()}get validationMessage(){return this._validationMessage}set validationMessage(e){this._validationMessage=e,this.update()}get severity(){return this._severity}set severity(e){this._severity=e,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.onDidTriggerButton(e=>{this.buttons.indexOf(e)!==-1&&this.onDidTriggerButtonEmitter.fire(e)})),this.ui.show(this),this.visible=!0,this._lastValidationMessage=void 0,this._lastSeverity=void 0,this.buttons.length&&(this.buttonsUpdated=!0),this.toggles.length&&(this.togglesUpdated=!0),this.update())}hide(){this.visible&&this.ui.hide()}didHide(e=yg.Other){this.visible=!1,this.visibleDisposables.clear(),this.onDidHideEmitter.fire({reason:e})}willHide(e=yg.Other){this.onWillHideEmitter.fire({reason:e})}update(){if(!this.visible)return;const e=this.getTitle();e&&this.ui.title.textContent!==e?this.ui.title.textContent=e:!e&&this.ui.title.innerHTML!==" "&&(this.ui.title.innerText=" ");const t=this.getDescription();if(this.ui.description1.textContent!==t&&(this.ui.description1.textContent=t),this.ui.description2.textContent!==t&&(this.ui.description2.textContent=t),this._widgetUpdated&&(this._widgetUpdated=!1,this._widget?un(this.ui.widget,this._widget):un(this.ui.widget)),this.busy&&!this.busyDelay&&(this.busyDelay=new wr,this.busyDelay.setIfNotSet(()=>{this.visible&&this.ui.progressBar.infinite()},800)),!this.busy&&this.busyDelay&&(this.ui.progressBar.stop(),this.busyDelay.cancel(),this.busyDelay=void 0),this.buttonsUpdated){this.buttonsUpdated=!1,this.ui.leftActionBar.clear();const n=this._leftButtons.map((a,l)=>rp(a,`id-${l}`,async()=>this.onDidTriggerButtonEmitter.fire(a)));this.ui.leftActionBar.push(n,{icon:!0,label:!1}),this.ui.rightActionBar.clear();const s=this._rightButtons.map((a,l)=>rp(a,`id-${l}`,async()=>this.onDidTriggerButtonEmitter.fire(a)));this.ui.rightActionBar.push(s,{icon:!0,label:!1}),this.ui.inlineActionBar.clear();const r=this._inlineButtons.map((a,l)=>rp(a,`id-${l}`,async()=>this.onDidTriggerButtonEmitter.fire(a)));this.ui.inlineActionBar.push(r,{icon:!0,label:!1})}if(this.togglesUpdated){this.togglesUpdated=!1;const n=this.toggles?.filter(s=>s instanceof nb)??[];this.ui.inputBox.toggles=n}this.ui.ignoreFocusOut=this.ignoreFocusOut,this.ui.setEnabled(this.enabled),this.ui.setContextKey(this.contextKey);const i=this.validationMessage||this.noValidationMessage;this._lastValidationMessage!==i&&(this._lastValidationMessage=i,un(this.ui.message),gJ(i,this.ui.message,{callback:n=>{this.ui.linkOpenerDelegate(n)},disposables:this.visibleDisposables})),this._lastSeverity!==this.severity&&(this._lastSeverity=this.severity,this.showMessageDecoration(this.severity))}getTitle(){return this.title&&this.step?`${this.title} (${this.getSteps()})`:this.title?this.title:this.step?this.getSteps():""}getDescription(){return this.description||""}getSteps(){return this.step&&this.totalSteps?m("quickInput.steps","{0}/{1}",this.step,this.totalSteps):this.step?String(this.step):""}showMessageDecoration(e){if(this.ui.inputBox.showDecoration(e),e!==Qt.Ignore){const t=this.ui.inputBox.stylesForType(e);this.ui.message.style.color=t.foreground?`${t.foreground}`:"",this.ui.message.style.backgroundColor=t.background?`${t.background}`:"",this.ui.message.style.border=t.border?`1px solid ${t.border}`:"",this.ui.message.style.marginBottom="-2px"}else this.ui.message.style.color="",this.ui.message.style.backgroundColor="",this.ui.message.style.border="",this.ui.message.style.marginBottom=""}dispose(){this.hide(),this.onDisposeEmitter.fire(),super.dispose()}};Bw.noPromptMessage=m("inputModeEntry","Press 'Enter' to confirm your input or 'Escape' to cancel");let nv=Bw;const Ww=class Ww extends nv{constructor(){super(...arguments),this._value="",this.onDidChangeValueEmitter=this._register(new A),this.onWillAcceptEmitter=this._register(new A),this.onDidAcceptEmitter=this._register(new A),this.onDidCustomEmitter=this._register(new A),this._items=[],this.itemsUpdated=!1,this._canSelectMany=!1,this._canAcceptInBackground=!1,this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._matchOnLabelMode="fuzzy",this._sortByLabel=!0,this._keepScrollPosition=!1,this._itemActivation=jr.FIRST,this._activeItems=[],this.activeItemsUpdated=!1,this.activeItemsToConfirm=[],this.onDidChangeActiveEmitter=this._register(new A),this._selectedItems=[],this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=[],this.onDidChangeSelectionEmitter=this._register(new A),this.onDidTriggerItemButtonEmitter=this._register(new A),this.onDidTriggerSeparatorButtonEmitter=this._register(new A),this.valueSelectionUpdated=!0,this._ok="default",this._customButton=!1,this._focusEventBufferer=new W_,this.type="quickPick",this.filterValue=e=>e,this.onDidChangeValue=this.onDidChangeValueEmitter.event,this.onWillAccept=this.onWillAcceptEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event,this.onDidChangeActive=this.onDidChangeActiveEmitter.event,this.onDidChangeSelection=this.onDidChangeSelectionEmitter.event,this.onDidTriggerItemButton=this.onDidTriggerItemButtonEmitter.event,this.onDidTriggerSeparatorButton=this.onDidTriggerSeparatorButtonEmitter.event}get quickNavigate(){return this._quickNavigate}set quickNavigate(e){this._quickNavigate=e,this.update()}get value(){return this._value}set value(e){this.doSetValue(e)}doSetValue(e,t){this._value!==e&&(this._value=e,t||this.update(),this.visible&&this.ui.list.filter(this.filterValue(this._value))&&this.trySelectFirst(),this.onDidChangeValueEmitter.fire(this._value))}set ariaLabel(e){this._ariaLabel=e,this.update()}get ariaLabel(){return this._ariaLabel}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.update()}get items(){return this._items}get scrollTop(){return this.ui.list.scrollTop}set scrollTop(e){this.ui.list.scrollTop=e}set items(e){this._items=e,this.itemsUpdated=!0,this.update()}get canSelectMany(){return this._canSelectMany}set canSelectMany(e){this._canSelectMany=e,this.update()}get canAcceptInBackground(){return this._canAcceptInBackground}set canAcceptInBackground(e){this._canAcceptInBackground=e}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(e){this._matchOnDescription=e,this.update()}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(e){this._matchOnDetail=e,this.update()}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(e){this._matchOnLabel=e,this.update()}get matchOnLabelMode(){return this._matchOnLabelMode}set matchOnLabelMode(e){this._matchOnLabelMode=e,this.update()}get sortByLabel(){return this._sortByLabel}set sortByLabel(e){this._sortByLabel=e,this.update()}get keepScrollPosition(){return this._keepScrollPosition}set keepScrollPosition(e){this._keepScrollPosition=e}get itemActivation(){return this._itemActivation}set itemActivation(e){this._itemActivation=e}get activeItems(){return this._activeItems}set activeItems(e){this._activeItems=e,this.activeItemsUpdated=!0,this.update()}get selectedItems(){return this._selectedItems}set selectedItems(e){this._selectedItems=e,this.selectedItemsUpdated=!0,this.update()}get keyMods(){return this._quickNavigate?aJ:this.ui.keyMods}get valueSelection(){const e=this.ui.inputBox.getSelection();if(e)return[e.start,e.end]}set valueSelection(e){this._valueSelection=e,this.valueSelectionUpdated=!0,this.update()}get customButton(){return this._customButton}set customButton(e){this._customButton=e,this.update()}get customLabel(){return this._customButtonLabel}set customLabel(e){this._customButtonLabel=e,this.update()}get customHover(){return this._customButtonHover}set customHover(e){this._customButtonHover=e,this.update()}get ok(){return this._ok}set ok(e){this._ok=e,this.update()}get hideInput(){return!!this._hideInput}set hideInput(e){this._hideInput=e,this.update()}trySelectFirst(){this.canSelectMany||this.ui.list.focus(yt.First)}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(e=>{this.doSetValue(e,!0)})),this.visibleDisposables.add(this.ui.onDidAccept(()=>{this.canSelectMany?this.ui.list.getCheckedElements().length||(this._selectedItems=[],this.onDidChangeSelectionEmitter.fire(this.selectedItems)):this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems)),this.handleAccept(!1)})),this.visibleDisposables.add(this.ui.onDidCustom(()=>{this.onDidCustomEmitter.fire()})),this.visibleDisposables.add(this._focusEventBufferer.wrapEvent(this.ui.list.onDidChangeFocus,(e,t)=>t)(e=>{this.activeItemsUpdated||this.activeItemsToConfirm!==this._activeItems&&li(e,this._activeItems,(t,i)=>t===i)||(this._activeItems=e,this.onDidChangeActiveEmitter.fire(e))})),this.visibleDisposables.add(this.ui.list.onDidChangeSelection(({items:e,event:t})=>{if(this.canSelectMany){e.length&&this.ui.list.setSelectedElements([]);return}this.selectedItemsToConfirm!==this._selectedItems&&li(e,this._selectedItems,(i,n)=>i===n)||(this._selectedItems=e,this.onDidChangeSelectionEmitter.fire(e),e.length&&this.handleAccept(tT(t)&&t.button===1))})),this.visibleDisposables.add(this.ui.list.onChangedCheckedElements(e=>{!this.canSelectMany||!this.visible||this.selectedItemsToConfirm!==this._selectedItems&&li(e,this._selectedItems,(t,i)=>t===i)||(this._selectedItems=e,this.onDidChangeSelectionEmitter.fire(e))})),this.visibleDisposables.add(this.ui.list.onButtonTriggered(e=>this.onDidTriggerItemButtonEmitter.fire(e))),this.visibleDisposables.add(this.ui.list.onSeparatorButtonTriggered(e=>this.onDidTriggerSeparatorButtonEmitter.fire(e))),this.visibleDisposables.add(this.registerQuickNavigation()),this.valueSelectionUpdated=!0),super.show()}handleAccept(e){let t=!1;this.onWillAcceptEmitter.fire({veto:()=>t=!0}),t||this.onDidAcceptEmitter.fire({inBackground:e})}registerQuickNavigation(){return U(this.ui.container,ee.KEY_UP,e=>{if(this.canSelectMany||!this._quickNavigate)return;const t=new Nt(e),i=t.keyCode;this._quickNavigate.keybindings.some(r=>{const a=r.getChords();return a.length>1?!1:a[0].shiftKey&&i===4?!(t.ctrlKey||t.altKey||t.metaKey):!!(a[0].altKey&&i===6||a[0].ctrlKey&&i===5||a[0].metaKey&&i===57)})&&(this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(!1)),this._quickNavigate=void 0)})}update(){if(!this.visible)return;const e=this.keepScrollPosition?this.scrollTop:0,t=!!this.description,i={title:!!this.title||!!this.step||!!this.titleButtons.length,description:t,checkAll:this.canSelectMany&&!this._hideCheckAll,checkBox:this.canSelectMany,inputBox:!this._hideInput,progressBar:!this._hideInput||t,visibleCount:!0,count:this.canSelectMany&&!this._hideCountBadge,ok:this.ok==="default"?this.canSelectMany:this.ok,list:!0,message:!!this.validationMessage,customButton:this.customButton};this.ui.setVisibilities(i),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||"");let n=this.ariaLabel;!n&&i.inputBox&&(n=this.placeholder||Ww.DEFAULT_ARIA_LABEL,this.title&&(n+=` - ${this.title}`)),this.ui.list.ariaLabel!==n&&(this.ui.list.ariaLabel=n??null),this.ui.list.matchOnDescription=this.matchOnDescription,this.ui.list.matchOnDetail=this.matchOnDetail,this.ui.list.matchOnLabel=this.matchOnLabel,this.ui.list.matchOnLabelMode=this.matchOnLabelMode,this.ui.list.sortByLabel=this.sortByLabel,this.itemsUpdated&&(this.itemsUpdated=!1,this._focusEventBufferer.bufferEvents(()=>{switch(this.ui.list.setElements(this.items),this.ui.list.shouldLoop=!this.canSelectMany,this.ui.list.filter(this.filterValue(this.ui.inputBox.value)),this._itemActivation){case jr.NONE:this._itemActivation=jr.FIRST;break;case jr.SECOND:this.ui.list.focus(yt.Second),this._itemActivation=jr.FIRST;break;case jr.LAST:this.ui.list.focus(yt.Last),this._itemActivation=jr.FIRST;break;default:this.trySelectFirst();break}})),this.ui.container.classList.contains("show-checkboxes")!==!!this.canSelectMany&&(this.canSelectMany?this.ui.list.clearFocus():this.trySelectFirst()),this.activeItemsUpdated&&(this.activeItemsUpdated=!1,this.activeItemsToConfirm=this._activeItems,this.ui.list.setFocusedElements(this.activeItems),this.activeItemsToConfirm===this._activeItems&&(this.activeItemsToConfirm=null)),this.selectedItemsUpdated&&(this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=this._selectedItems,this.canSelectMany?this.ui.list.setCheckedElements(this.selectedItems):this.ui.list.setSelectedElements(this.selectedItems),this.selectedItemsToConfirm===this._selectedItems&&(this.selectedItemsToConfirm=null)),this.ui.customButton.label=this.customLabel||"",this.ui.customButton.element.title=this.customHover||"",i.inputBox||(this.ui.list.domFocus(),this.canSelectMany&&this.ui.list.focus(yt.First)),this.keepScrollPosition&&(this.scrollTop=e)}focus(e){this.ui.list.focus(e),this.canSelectMany&&this.ui.list.domFocus()}accept(e){e&&!this._canAcceptInBackground||this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(e??!1))}};Ww.DEFAULT_ARIA_LABEL=m("quickInputBox.ariaLabel","Type to narrow down results.");let sv=Ww,wJ=class extends nv{constructor(){super(...arguments),this._value="",this.valueSelectionUpdated=!0,this._password=!1,this.onDidValueChangeEmitter=this._register(new A),this.onDidAcceptEmitter=this._register(new A),this.type="inputBox",this.onDidChangeValue=this.onDidValueChangeEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event}get value(){return this._value}set value(e){this._value=e||"",this.update()}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.update()}get password(){return this._password}set password(e){this._password=e,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(e=>{e!==this.value&&(this._value=e,this.onDidValueChangeEmitter.fire(e))})),this.visibleDisposables.add(this.ui.onDidAccept(()=>this.onDidAcceptEmitter.fire())),this.valueSelectionUpdated=!0),super.show()}update(){if(!this.visible)return;this.ui.container.classList.remove("hidden-input");const e={title:!!this.title||!!this.step||!!this.titleButtons.length,description:!!this.description||!!this.step,inputBox:!0,message:!0,progressBar:!0};this.ui.setVisibilities(e),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||""),this.ui.inputBox.password!==this.password&&(this.ui.inputBox.password=this.password)}},RD=class extends gg{constructor(e,t){super("element",!1,i=>this.getOverrideOptions(i),e,t)}getOverrideOptions(e){const t=(Ei(e.content)?e.content.textContent??"":typeof e.content=="string"?e.content:e.content.value).includes(` +`);return{persistence:{hideOnKeyDown:!1},appearance:{showHoverHint:t,skipFadeInAnimation:!0}}}};RD=mJ([UP(0,lt),UP(1,au)],RD);q.white.toString(),q.white.toString();class AD extends z{get onDidClick(){return this._onDidClick.event}constructor(e,t){super(),this._label="",this._onDidClick=this._register(new A),this._onDidEscape=this._register(new A),this.options=t,this._element=document.createElement("a"),this._element.classList.add("monaco-button"),this._element.tabIndex=0,this._element.setAttribute("role","button"),this._element.classList.toggle("secondary",!!t.secondary);const i=t.secondary?t.buttonSecondaryBackground:t.buttonBackground,n=t.secondary?t.buttonSecondaryForeground:t.buttonForeground;this._element.style.color=n||"",this._element.style.backgroundColor=i||"",t.supportShortLabel&&(this._labelShortElement=document.createElement("div"),this._labelShortElement.classList.add("monaco-button-label-short"),this._element.appendChild(this._labelShortElement),this._labelElement=document.createElement("div"),this._labelElement.classList.add("monaco-button-label"),this._element.appendChild(this._labelElement),this._element.classList.add("monaco-text-button-with-short-label")),typeof t.title=="string"&&this.setTitle(t.title),typeof t.ariaLabel=="string"&&this._element.setAttribute("aria-label",t.ariaLabel),e.appendChild(this._element),this._register(fn.addTarget(this._element)),[ee.CLICK,St.Tap].forEach(s=>{this._register(U(this._element,s,r=>{if(!this.enabled){je.stop(r);return}this._onDidClick.fire(r)}))}),this._register(U(this._element,ee.KEY_DOWN,s=>{const r=new Nt(s);let a=!1;this.enabled&&(r.equals(3)||r.equals(10))?(this._onDidClick.fire(s),a=!0):r.equals(9)&&(this._onDidEscape.fire(s),this._element.blur(),a=!0),a&&je.stop(r,!0)})),this._register(U(this._element,ee.MOUSE_OVER,s=>{this._element.classList.contains("disabled")||this.updateBackground(!0)})),this._register(U(this._element,ee.MOUSE_OUT,s=>{this.updateBackground(!1)})),this.focusTracker=this._register(Ph(this._element)),this._register(this.focusTracker.onDidFocus(()=>{this.enabled&&this.updateBackground(!0)})),this._register(this.focusTracker.onDidBlur(()=>{this.enabled&&this.updateBackground(!1)}))}dispose(){super.dispose(),this._element.remove()}getContentElements(e){const t=[];for(let i of Qd(e))if(typeof i=="string"){if(i=i.trim(),i==="")continue;const n=document.createElement("span");n.textContent=i,t.push(n)}else t.push(i);return t}updateBackground(e){let t;this.options.secondary?t=e?this.options.buttonSecondaryHoverBackground:this.options.buttonSecondaryBackground:t=e?this.options.buttonHoverBackground:this.options.buttonBackground,t&&(this._element.style.backgroundColor=t)}get element(){return this._element}set label(e){if(this._label===e||ra(this._label)&&ra(e)&&Xq(this._label,e))return;this._element.classList.add("monaco-text-button");const t=this.options.supportShortLabel?this._labelElement:this._element;if(ra(e)){const n=oy(e,{inline:!0});n.dispose();const s=n.element.querySelector("p")?.innerHTML;if(s){const r=IF(s,{ADD_TAGS:["b","i","u","code","span"],ALLOWED_ATTR:["class"],RETURN_TRUSTED_TYPE:!0});t.innerHTML=r}else un(t)}else this.options.supportIcons?un(t,...this.getContentElements(e)):t.textContent=e;let i="";typeof this.options.title=="string"?i=this.options.title:this.options.title&&(i=cG(e)),this.setTitle(i),typeof this.options.ariaLabel=="string"?this._element.setAttribute("aria-label",this.options.ariaLabel):this.options.ariaLabel&&this._element.setAttribute("aria-label",i),this._label=e}get label(){return this._label}set icon(e){this._element.classList.add(...Ee.asClassNameArray(e))}set enabled(e){e?(this._element.classList.remove("disabled"),this._element.setAttribute("aria-disabled",String(!1)),this._element.tabIndex=0):(this._element.classList.add("disabled"),this._element.setAttribute("aria-disabled",String(!0)))}get enabled(){return!this._element.classList.contains("disabled")}setTitle(e){!this._hover&&e!==""?this._hover=this._register(La().setupManagedHover(this.options.hoverDelegate??Ks("mouse"),this._element,e)):this._hover&&this._hover.update(e)}}class PD{constructor(e,t,i){this.options=t,this.styles=i,this.count=0,this.element=Z(e,ce(".monaco-count-badge")),this.countFormat=this.options.countFormat||"{0}",this.titleFormat=this.options.titleFormat||"",this.setCount(this.options.count||0)}setCount(e){this.count=e,this.render()}setTitleFormat(e){this.titleFormat=e,this.render()}render(){this.element.textContent=$p(this.countFormat,this.count),this.element.title=$p(this.titleFormat,this.count),this.element.style.backgroundColor=this.styles.badgeBackground??"",this.element.style.color=this.styles.badgeForeground??"",this.styles.badgeBorder&&(this.element.style.border=`1px solid ${this.styles.badgeBorder}`)}}const $P="done",KP="active",$S="infinite",KS="infinite-long-running",jP="discrete",Hw=class Hw extends z{constructor(e,t){super(),this.progressSignal=this._register(new Dn),this.workedVal=0,this.showDelayedScheduler=this._register(new ci(()=>ns(this.element),0)),this.longRunningScheduler=this._register(new ci(()=>this.infiniteLongRunning(),Hw.LONG_RUNNING_INFINITE_THRESHOLD)),this.create(e,t)}create(e,t){this.element=document.createElement("div"),this.element.classList.add("monaco-progress-container"),this.element.setAttribute("role","progressbar"),this.element.setAttribute("aria-valuemin","0"),e.appendChild(this.element),this.bit=document.createElement("div"),this.bit.classList.add("progress-bit"),this.bit.style.backgroundColor=t?.progressBarBackground||"#0E70C0",this.element.appendChild(this.bit)}off(){this.bit.style.width="inherit",this.bit.style.opacity="1",this.element.classList.remove(KP,$S,KS,jP),this.workedVal=0,this.totalWork=void 0,this.longRunningScheduler.cancel(),this.progressSignal.clear()}stop(){return this.doDone(!1)}doDone(e){return this.element.classList.add($P),this.element.classList.contains($S)?(this.bit.style.opacity="0",e?setTimeout(()=>this.off(),200):this.off()):(this.bit.style.width="inherit",e?setTimeout(()=>this.off(),200):this.off()),this}infinite(){return this.bit.style.width="2%",this.bit.style.opacity="1",this.element.classList.remove(jP,$P,KS),this.element.classList.add(KP,$S),this.longRunningScheduler.schedule(),this}infiniteLongRunning(){this.element.classList.add(KS)}getContainer(){return this.element}};Hw.LONG_RUNNING_INFINITE_THRESHOLD=1e4;let OD=Hw;const yJ=m("caseDescription","Match Case"),SJ=m("wordsDescription","Match Whole Word"),LJ=m("regexDescription","Use Regular Expression");class xJ extends nb{constructor(e){super({icon:ie.caseSensitive,title:yJ+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class kJ extends nb{constructor(e){super({icon:ie.wholeWord,title:SJ+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class DJ extends nb{constructor(e){super({icon:ie.regex,title:LJ+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class IJ{constructor(e,t=0,i=e.length,n=t-1){this.items=e,this.start=t,this.end=i,this.index=n}current(){return this.index===this.start-1||this.index===this.end?null:this.items[this.index]}next(){return this.index=Math.min(this.index+1,this.end),this.current()}previous(){return this.index=Math.max(this.index-1,this.start-1),this.current()}first(){return this.index=this.start,this.current()}last(){return this.index=this.end-1,this.current()}}class EJ{constructor(e=[],t=10){this._initialize(e),this._limit=t,this._onChange()}getHistory(){return this._elements}add(e){this._history.delete(e),this._history.add(e),this._onChange()}next(){return this._navigator.next()}previous(){return this._currentPosition()!==0?this._navigator.previous():null}current(){return this._navigator.current()}first(){return this._navigator.first()}last(){return this._navigator.last()}isLast(){return this._currentPosition()>=this._elements.length-1}isNowhere(){return this._navigator.current()===null}has(e){return this._history.has(e)}_onChange(){this._reduceToLimit();const e=this._elements;this._navigator=new IJ(e,0,e.length,e.length)}_reduceToLimit(){const e=this._elements;e.length>this._limit&&this._initialize(e.slice(e.length-this._limit))}_currentPosition(){const e=this._navigator.current();return e?this._elements.indexOf(e):-1}_initialize(e){this._history=new Set;for(const t of e)this._history.add(t)}get _elements(){const e=[];return this._history.forEach(t=>e.push(t)),e}}const bm=ce;class NJ extends xr{constructor(e,t,i){super(),this.state="idle",this.maxHeight=Number.POSITIVE_INFINITY,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._onDidHeightChange=this._register(new A),this.onDidHeightChange=this._onDidHeightChange.event,this.contextViewProvider=t,this.options=i,this.message=null,this.placeholder=this.options.placeholder||"",this.tooltip=this.options.tooltip??(this.placeholder||""),this.ariaLabel=this.options.ariaLabel||"",this.options.validationOptions&&(this.validation=this.options.validationOptions.validation),this.element=Z(e,bm(".monaco-inputbox.idle"));const n=this.options.flexibleHeight?"textarea":"input",s=Z(this.element,bm(".ibwrapper"));if(this.input=Z(s,bm(n+".input.empty")),this.input.setAttribute("autocorrect","off"),this.input.setAttribute("autocapitalize","off"),this.input.setAttribute("spellcheck","false"),this.onfocus(this.input,()=>this.element.classList.add("synthetic-focus")),this.onblur(this.input,()=>this.element.classList.remove("synthetic-focus")),this.options.flexibleHeight){this.maxHeight=typeof this.options.flexibleMaxHeight=="number"?this.options.flexibleMaxHeight:Number.POSITIVE_INFINITY,this.mirror=Z(s,bm("div.mirror")),this.mirror.innerText=" ",this.scrollableElement=new J3(this.element,{vertical:1}),this.options.flexibleWidth&&(this.input.setAttribute("wrap","off"),this.mirror.style.whiteSpace="pre",this.mirror.style.wordWrap="initial"),Z(e,this.scrollableElement.getDomNode()),this._register(this.scrollableElement),this._register(this.scrollableElement.onScroll(l=>this.input.scrollTop=l.scrollTop));const r=this._register(new ze(e.ownerDocument,"selectionchange")),a=J.filter(r.event,()=>e.ownerDocument.getSelection()?.anchorNode===s);this._register(a(this.updateScrollDimensions,this)),this._register(this.onDidHeightChange(this.updateScrollDimensions,this))}else this.input.type=this.options.type||"text",this.input.setAttribute("wrap","off");this.ariaLabel&&this.input.setAttribute("aria-label",this.ariaLabel),this.placeholder&&!this.options.showPlaceholderOnFocus&&this.setPlaceHolder(this.placeholder),this.tooltip&&this.setTooltip(this.tooltip),this.oninput(this.input,()=>this.onValueChange()),this.onblur(this.input,()=>this.onBlur()),this.onfocus(this.input,()=>this.onFocus()),this._register(this.ignoreGesture(this.input)),setTimeout(()=>this.updateMirror(),0),this.options.actions&&(this.actionbar=this._register(new oo(this.element)),this.actionbar.push(this.options.actions,{icon:!0,label:!1})),this.applyStyles()}onBlur(){this._hideMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder","")}onFocus(){this._showMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder",this.placeholder||"")}setPlaceHolder(e){this.placeholder=e,this.input.setAttribute("placeholder",e)}setTooltip(e){this.tooltip=e,this.hover?this.hover.update(e):this.hover=this._register(La().setupManagedHover(Ks("mouse"),this.input,e))}get inputElement(){return this.input}get value(){return this.input.value}set value(e){this.input.value!==e&&(this.input.value=e,this.onValueChange())}get height(){return typeof this.cachedHeight=="number"?this.cachedHeight:Hd(this.element)}focus(){this.input.focus()}blur(){this.input.blur()}hasFocus(){return M0(this.input)}select(e=null){this.input.select(),e&&(this.input.setSelectionRange(e.start,e.end),e.end===this.input.value.length&&(this.input.scrollLeft=this.input.scrollWidth))}isSelectionAtEnd(){return this.input.selectionEnd===this.input.value.length&&this.input.selectionStart===this.input.selectionEnd}getSelection(){const e=this.input.selectionStart;if(e===null)return null;const t=this.input.selectionEnd??e;return{start:e,end:t}}enable(){this.input.removeAttribute("disabled")}disable(){this.blur(),this.input.disabled=!0,this._hideMessage()}set paddingRight(e){this.input.style.width=`calc(100% - ${e}px)`,this.mirror&&(this.mirror.style.paddingRight=e+"px")}updateScrollDimensions(){if(typeof this.cachedContentHeight!="number"||typeof this.cachedHeight!="number"||!this.scrollableElement)return;const e=this.cachedContentHeight,t=this.cachedHeight,i=this.input.scrollTop;this.scrollableElement.setScrollDimensions({scrollHeight:e,height:t}),this.scrollableElement.setScrollPosition({scrollTop:i})}showMessage(e,t){if(this.state==="open"&&as(this.message,e))return;this.message=e,this.element.classList.remove("idle"),this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add(this.classForType(e.type));const i=this.stylesForType(this.message.type);this.element.style.border=`1px solid ${vl(i.border,"transparent")}`,this.message.content&&(this.hasFocus()||t)&&this._showMessage()}hideMessage(){this.message=null,this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add("idle"),this._hideMessage(),this.applyStyles()}validate(){let e=null;return this.validation&&(e=this.validation(this.value),e?(this.inputElement.setAttribute("aria-invalid","true"),this.showMessage(e)):this.inputElement.hasAttribute("aria-invalid")&&(this.inputElement.removeAttribute("aria-invalid"),this.hideMessage())),e?.type}stylesForType(e){const t=this.options.inputBoxStyles;switch(e){case 1:return{border:t.inputValidationInfoBorder,background:t.inputValidationInfoBackground,foreground:t.inputValidationInfoForeground};case 2:return{border:t.inputValidationWarningBorder,background:t.inputValidationWarningBackground,foreground:t.inputValidationWarningForeground};default:return{border:t.inputValidationErrorBorder,background:t.inputValidationErrorBackground,foreground:t.inputValidationErrorForeground}}}classForType(e){switch(e){case 1:return"info";case 2:return"warning";default:return"error"}}_showMessage(){if(!this.contextViewProvider||!this.message)return;let e;const t=()=>e.style.width=qp(this.element)+"px";this.contextViewProvider.showContextView({getAnchor:()=>this.element,anchorAlignment:1,render:n=>{if(!this.message)return null;e=Z(n,bm(".monaco-inputbox-container")),t();const s={inline:!0,className:"monaco-inputbox-message"},r=this.message.formatContent?Cq(this.message.content,s):bq(this.message.content,s);r.classList.add(this.classForType(this.message.type));const a=this.stylesForType(this.message.type);return r.style.backgroundColor=a.background??"",r.style.color=a.foreground??"",r.style.border=a.border?`1px solid ${a.border}`:"",Z(e,r),null},onHide:()=>{this.state="closed"},layout:t});let i;this.message.type===3?i=m("alertErrorMessage","Error: {0}",this.message.content):this.message.type===2?i=m("alertWarningMessage","Warning: {0}",this.message.content):i=m("alertInfoMessage","Info: {0}",this.message.content),El(i),this.state="open"}_hideMessage(){this.contextViewProvider&&(this.state==="open"&&this.contextViewProvider.hideContextView(),this.state="idle")}onValueChange(){this._onDidChange.fire(this.value),this.validate(),this.updateMirror(),this.input.classList.toggle("empty",!this.value),this.state==="open"&&this.contextViewProvider&&this.contextViewProvider.layout()}updateMirror(){if(!this.mirror)return;const e=this.value,i=e.charCodeAt(e.length-1)===10?" ":"";(e+i).replace(/\u000c/g,"")?this.mirror.textContent=e+i:this.mirror.innerText=" ",this.layout()}applyStyles(){const e=this.options.inputBoxStyles,t=e.inputBackground??"",i=e.inputForeground??"",n=e.inputBorder??"";this.element.style.backgroundColor=t,this.element.style.color=i,this.input.style.backgroundColor="inherit",this.input.style.color=i,this.element.style.border=`1px solid ${vl(n,"transparent")}`}layout(){if(!this.mirror)return;const e=this.cachedContentHeight;this.cachedContentHeight=Hd(this.mirror),e!==this.cachedContentHeight&&(this.cachedHeight=Math.min(this.cachedContentHeight,this.maxHeight),this.input.style.height=this.cachedHeight+"px",this._onDidHeightChange.fire(this.cachedContentHeight))}insertAtCursor(e){const t=this.inputElement,i=t.selectionStart,n=t.selectionEnd,s=t.value;i!==null&&n!==null&&(this.value=s.substr(0,i)+e+s.substr(n),t.setSelectionRange(i+1,i+1),this.layout())}dispose(){this._hideMessage(),this.message=null,this.actionbar?.dispose(),super.dispose()}}class k9 extends NJ{constructor(e,t,i){const n=m({key:"history.inputbox.hint.suffix.noparens",comment:['Text is the suffix of an input field placeholder coming after the action the input field performs, this will be used when the input field ends in a closing parenthesis ")", for example "Filter (e.g. text, !exclude)". The character inserted into the final string is ⇅ to represent the up and down arrow keys.']}," or {0} for history","⇅"),s=m({key:"history.inputbox.hint.suffix.inparens",comment:['Text is the suffix of an input field placeholder coming after the action the input field performs, this will be used when the input field does NOT end in a closing parenthesis (eg. "Find"). The character inserted into the final string is ⇅ to represent the up and down arrow keys.']}," ({0} for history)","⇅");super(e,t,i),this._onDidFocus=this._register(new A),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new A),this.onDidBlur=this._onDidBlur.event,this.history=new EJ(i.history,100);const r=()=>{if(i.showHistoryHint&&i.showHistoryHint()&&!this.placeholder.endsWith(n)&&!this.placeholder.endsWith(s)&&this.history.getHistory().length){const a=this.placeholder.endsWith(")")?n:s,l=this.placeholder+a;i.showPlaceholderOnFocus&&!M0(this.input)?this.placeholder=l:this.setPlaceHolder(l)}};this.observer=new MutationObserver((a,l)=>{a.forEach(c=>{c.target.textContent||r()})}),this.observer.observe(this.input,{attributeFilter:["class"]}),this.onfocus(this.input,()=>r()),this.onblur(this.input,()=>{const a=l=>{if(this.placeholder.endsWith(l)){const c=this.placeholder.slice(0,this.placeholder.length-l.length);return i.showPlaceholderOnFocus?this.placeholder=c:this.setPlaceHolder(c),!0}else return!1};a(s)||a(n)})}dispose(){super.dispose(),this.observer&&(this.observer.disconnect(),this.observer=void 0)}addToHistory(e){this.value&&(e||this.value!==this.getCurrentValue())&&this.history.add(this.value)}isAtLastInHistory(){return this.history.isLast()}isNowhereInHistory(){return this.history.isNowhere()}showNextValue(){this.history.has(this.value)||this.addToHistory();let e=this.getNextValue();e&&(e=e===this.value?this.getNextValue():e),this.value=e??"",Hh(this.value?this.value:m("clearedInput","Cleared Input"))}showPreviousValue(){this.history.has(this.value)||this.addToHistory();let e=this.getPreviousValue();e&&(e=e===this.value?this.getPreviousValue():e),e&&(this.value=e,Hh(this.value))}setPlaceHolder(e){super.setPlaceHolder(e),this.setTooltip(e)}onBlur(){super.onBlur(),this._onDidBlur.fire()}onFocus(){super.onFocus(),this._onDidFocus.fire()}getCurrentValue(){let e=this.history.current();return e||(e=this.history.last(),this.history.next()),e}getPreviousValue(){return this.history.previous()||this.history.first()}getNextValue(){return this.history.next()}}const TJ=m("defaultLabel","input");class D9 extends xr{constructor(e,t,i){super(),this.fixFocusOnOptionClickEnabled=!0,this.imeSessionInProgress=!1,this.additionalTogglesDisposables=this._register(new Dn),this.additionalToggles=[],this._onDidOptionChange=this._register(new A),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new A),this.onMouseDown=this._onMouseDown.event,this._onInput=this._register(new A),this._onKeyUp=this._register(new A),this._onCaseSensitiveKeyDown=this._register(new A),this.onCaseSensitiveKeyDown=this._onCaseSensitiveKeyDown.event,this._onRegexKeyDown=this._register(new A),this.onRegexKeyDown=this._onRegexKeyDown.event,this._lastHighlightFindOptions=0,this.placeholder=i.placeholder||"",this.validation=i.validation,this.label=i.label||TJ,this.showCommonFindToggles=!!i.showCommonFindToggles;const n=i.appendCaseSensitiveLabel||"",s=i.appendWholeWordsLabel||"",r=i.appendRegexLabel||"",a=i.history||[],l=!!i.flexibleHeight,c=!!i.flexibleWidth,d=i.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new k9(this.domNode,t,{placeholder:this.placeholder||"",ariaLabel:this.label||"",validationOptions:{validation:this.validation},history:a,showHistoryHint:i.showHistoryHint,flexibleHeight:l,flexibleWidth:c,flexibleMaxHeight:d,inputBoxStyles:i.inputBoxStyles}));const h=this._register(QT());if(this.showCommonFindToggles){this.regex=this._register(new DJ({appendTitle:r,isChecked:!1,hoverDelegate:h,...i.toggleStyles})),this._register(this.regex.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.regex.onKeyDown(f=>{this._onRegexKeyDown.fire(f)})),this.wholeWords=this._register(new kJ({appendTitle:s,isChecked:!1,hoverDelegate:h,...i.toggleStyles})),this._register(this.wholeWords.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this.caseSensitive=this._register(new xJ({appendTitle:n,isChecked:!1,hoverDelegate:h,...i.toggleStyles})),this._register(this.caseSensitive.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.caseSensitive.onKeyDown(f=>{this._onCaseSensitiveKeyDown.fire(f)}));const u=[this.caseSensitive.domNode,this.wholeWords.domNode,this.regex.domNode];this.onkeydown(this.domNode,f=>{if(f.equals(15)||f.equals(17)||f.equals(9)){const g=u.indexOf(this.domNode.ownerDocument.activeElement);if(g>=0){let p=-1;f.equals(17)?p=(g+1)%u.length:f.equals(15)&&(g===0?p=u.length-1:p=g-1),f.equals(9)?(u[g].blur(),this.inputBox.focus()):p>=0&&u[p].focus(),je.stop(f,!0)}}})}this.controls=document.createElement("div"),this.controls.className="controls",this.controls.style.display=this.showCommonFindToggles?"":"none",this.caseSensitive&&this.controls.append(this.caseSensitive.domNode),this.wholeWords&&this.controls.appendChild(this.wholeWords.domNode),this.regex&&this.controls.appendChild(this.regex.domNode),this.setAdditionalToggles(i?.additionalToggles),this.controls&&this.domNode.appendChild(this.controls),e?.appendChild(this.domNode),this._register(U(this.inputBox.inputElement,"compositionstart",u=>{this.imeSessionInProgress=!0})),this._register(U(this.inputBox.inputElement,"compositionend",u=>{this.imeSessionInProgress=!1,this._onInput.fire()})),this.onkeydown(this.inputBox.inputElement,u=>this._onKeyDown.fire(u)),this.onkeyup(this.inputBox.inputElement,u=>this._onKeyUp.fire(u)),this.oninput(this.inputBox.inputElement,u=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,u=>this._onMouseDown.fire(u))}get onDidChange(){return this.inputBox.onDidChange}layout(e){this.inputBox.layout(),this.updateInputBoxPadding(e.collapsedFindWidget)}enable(){this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.regex?.enable(),this.wholeWords?.enable(),this.caseSensitive?.enable();for(const e of this.additionalToggles)e.enable()}disable(){this.domNode.classList.add("disabled"),this.inputBox.disable(),this.regex?.disable(),this.wholeWords?.disable(),this.caseSensitive?.disable();for(const e of this.additionalToggles)e.disable()}setFocusInputOnOptionClick(e){this.fixFocusOnOptionClickEnabled=e}setEnabled(e){e?this.enable():this.disable()}setAdditionalToggles(e){for(const t of this.additionalToggles)t.domNode.remove();this.additionalToggles=[],this.additionalTogglesDisposables.value=new X;for(const t of e??[])this.additionalTogglesDisposables.value.add(t),this.controls.appendChild(t.domNode),this.additionalTogglesDisposables.value.add(t.onChange(i=>{this._onDidOptionChange.fire(i),!i&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus()})),this.additionalToggles.push(t);this.additionalToggles.length>0&&(this.controls.style.display=""),this.updateInputBoxPadding()}updateInputBoxPadding(e=!1){e?this.inputBox.paddingRight=0:this.inputBox.paddingRight=(this.caseSensitive?.width()??0)+(this.wholeWords?.width()??0)+(this.regex?.width()??0)+this.additionalToggles.reduce((t,i)=>t+i.width(),0)}getValue(){return this.inputBox.value}setValue(e){this.inputBox.value!==e&&(this.inputBox.value=e)}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getCaseSensitive(){return this.caseSensitive?.checked??!1}setCaseSensitive(e){this.caseSensitive&&(this.caseSensitive.checked=e)}getWholeWords(){return this.wholeWords?.checked??!1}setWholeWords(e){this.wholeWords&&(this.wholeWords.checked=e)}getRegex(){return this.regex?.checked??!1}setRegex(e){this.regex&&(this.regex.checked=e,this.validate())}focusOnCaseSensitive(){this.caseSensitive?.focus()}highlightFindOptions(){this.domNode.classList.remove("highlight-"+this._lastHighlightFindOptions),this._lastHighlightFindOptions=1-this._lastHighlightFindOptions,this.domNode.classList.add("highlight-"+this._lastHighlightFindOptions)}validate(){this.inputBox.validate()}showMessage(e){this.inputBox.showMessage(e)}clearMessage(){this.inputBox.hideMessage()}}const MJ=ce;class RJ extends z{constructor(e,t,i){super(),this.parent=e,this.onKeyDown=s=>jt(this.findInput.inputBox.inputElement,ee.KEY_DOWN,s),this.onDidChange=s=>this.findInput.onDidChange(s),this.container=Z(this.parent,MJ(".quick-input-box")),this.findInput=this._register(new D9(this.container,void 0,{label:"",inputBoxStyles:t,toggleStyles:i}));const n=this.findInput.inputBox.inputElement;n.role="combobox",n.ariaHasPopup="menu",n.ariaAutoComplete="list",n.ariaExpanded="true"}get value(){return this.findInput.getValue()}set value(e){this.findInput.setValue(e)}select(e=null){this.findInput.inputBox.select(e)}getSelection(){return this.findInput.inputBox.getSelection()}isSelectionAtEnd(){return this.findInput.inputBox.isSelectionAtEnd()}get placeholder(){return this.findInput.inputBox.inputElement.getAttribute("placeholder")||""}set placeholder(e){this.findInput.inputBox.setPlaceHolder(e)}get password(){return this.findInput.inputBox.inputElement.type==="password"}set password(e){this.findInput.inputBox.inputElement.type=e?"password":"text"}set enabled(e){this.findInput.inputBox.inputElement.toggleAttribute("readonly",!e)}set toggles(e){this.findInput.setAdditionalToggles(e)}setAttribute(e,t){this.findInput.inputBox.inputElement.setAttribute(e,t)}showDecoration(e){e===Qt.Ignore?this.findInput.clearMessage():this.findInput.showMessage({type:e===Qt.Info?1:e===Qt.Warning?2:3,content:""})}stylesForType(e){return this.findInput.inputBox.stylesForType(e===Qt.Info?1:e===Qt.Warning?2:3)}setFocus(){this.findInput.focus()}layout(){this.findInput.inputBox.layout()}}class AJ{get templateId(){return this.renderer.templateId}constructor(e,t){this.renderer=e,this.modelProvider=t}renderTemplate(e){return{data:this.renderer.renderTemplate(e),disposable:z.None}}renderElement(e,t,i,n){if(i.disposable?.dispose(),!i.data)return;const s=this.modelProvider();if(s.isResolved(e))return this.renderer.renderElement(s.get(e),e,i.data,n);const r=new In,a=s.resolve(e,r.token);i.disposable={dispose:()=>r.cancel()},this.renderer.renderPlaceholder(e,i.data),a.then(l=>this.renderer.renderElement(l,e,i.data,n))}disposeTemplate(e){e.disposable&&(e.disposable.dispose(),e.disposable=void 0),e.data&&(this.renderer.disposeTemplate(e.data),e.data=void 0)}}class PJ{constructor(e,t){this.modelProvider=e,this.accessibilityProvider=t}getWidgetAriaLabel(){return this.accessibilityProvider.getWidgetAriaLabel()}getAriaLabel(e){const t=this.modelProvider();return t.isResolved(e)?this.accessibilityProvider.getAriaLabel(t.get(e)):null}}function OJ(o,e){return{...e,accessibilityProvider:e.accessibilityProvider&&new PJ(o,e.accessibilityProvider)}}class FJ{constructor(e,t,i,n,s={}){const r=()=>this.model,a=n.map(l=>new AJ(l,r));this.list=new go(e,t,i,a,OJ(r,s))}updateOptions(e){this.list.updateOptions(e)}getHTMLElement(){return this.list.getHTMLElement()}get onDidFocus(){return this.list.onDidFocus}get widget(){return this.list}get onDidDispose(){return this.list.onDidDispose}get onMouseDblClick(){return J.map(this.list.onMouseDblClick,({element:e,index:t,browserEvent:i})=>({element:e===void 0?void 0:this._model.get(e),index:t,browserEvent:i}))}get onPointer(){return J.map(this.list.onPointer,({element:e,index:t,browserEvent:i})=>({element:e===void 0?void 0:this._model.get(e),index:t,browserEvent:i}))}get onDidChangeSelection(){return J.map(this.list.onDidChangeSelection,({elements:e,indexes:t,browserEvent:i})=>({elements:e.map(n=>this._model.get(n)),indexes:t,browserEvent:i}))}get model(){return this._model}set model(e){this._model=e,this.list.splice(0,this.list.length,Bn(e.length))}getFocus(){return this.list.getFocus()}getSelection(){return this.list.getSelection()}getSelectedElements(){return this.getSelection().map(e=>this.model.get(e))}style(e){this.list.style(e)}dispose(){this.list.dispose()}}var Kg=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};const BJ=!1;var ov;(function(o){o.North="north",o.South="south",o.East="east",o.West="west"})(ov||(ov={}));let WJ=4;const HJ=new A;let VJ=300;const zJ=new A;class f2{constructor(e){this.el=e,this.disposables=new X}get onPointerMove(){return this.disposables.add(new ze(fe(this.el),"mousemove")).event}get onPointerUp(){return this.disposables.add(new ze(fe(this.el),"mouseup")).event}dispose(){this.disposables.dispose()}}Kg([Jt],f2.prototype,"onPointerMove",null);Kg([Jt],f2.prototype,"onPointerUp",null);class g2{get onPointerMove(){return this.disposables.add(new ze(this.el,St.Change)).event}get onPointerUp(){return this.disposables.add(new ze(this.el,St.End)).event}constructor(e){this.el=e,this.disposables=new X}dispose(){this.disposables.dispose()}}Kg([Jt],g2.prototype,"onPointerMove",null);Kg([Jt],g2.prototype,"onPointerUp",null);class rv{get onPointerMove(){return this.factory.onPointerMove}get onPointerUp(){return this.factory.onPointerUp}constructor(e){this.factory=e}dispose(){}}Kg([Jt],rv.prototype,"onPointerMove",null);Kg([Jt],rv.prototype,"onPointerUp",null);const qP="pointer-events-disabled";class an extends z{get state(){return this._state}get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}set state(e){this._state!==e&&(this.el.classList.toggle("disabled",e===0),this.el.classList.toggle("minimum",e===1),this.el.classList.toggle("maximum",e===2),this._state=e,this.onDidEnablementChange.fire(e))}set orthogonalStartSash(e){if(this._orthogonalStartSash!==e){if(this.orthogonalStartDragHandleDisposables.clear(),this.orthogonalStartSashDisposables.clear(),e){const t=i=>{this.orthogonalStartDragHandleDisposables.clear(),i!==0&&(this._orthogonalStartDragHandle=Z(this.el,ce(".orthogonal-drag-handle.start")),this.orthogonalStartDragHandleDisposables.add(_e(()=>this._orthogonalStartDragHandle.remove())),this.orthogonalStartDragHandleDisposables.add(new ze(this._orthogonalStartDragHandle,"mouseenter")).event(()=>an.onMouseEnter(e),void 0,this.orthogonalStartDragHandleDisposables),this.orthogonalStartDragHandleDisposables.add(new ze(this._orthogonalStartDragHandle,"mouseleave")).event(()=>an.onMouseLeave(e),void 0,this.orthogonalStartDragHandleDisposables))};this.orthogonalStartSashDisposables.add(e.onDidEnablementChange.event(t,this)),t(e.state)}this._orthogonalStartSash=e}}set orthogonalEndSash(e){if(this._orthogonalEndSash!==e){if(this.orthogonalEndDragHandleDisposables.clear(),this.orthogonalEndSashDisposables.clear(),e){const t=i=>{this.orthogonalEndDragHandleDisposables.clear(),i!==0&&(this._orthogonalEndDragHandle=Z(this.el,ce(".orthogonal-drag-handle.end")),this.orthogonalEndDragHandleDisposables.add(_e(()=>this._orthogonalEndDragHandle.remove())),this.orthogonalEndDragHandleDisposables.add(new ze(this._orthogonalEndDragHandle,"mouseenter")).event(()=>an.onMouseEnter(e),void 0,this.orthogonalEndDragHandleDisposables),this.orthogonalEndDragHandleDisposables.add(new ze(this._orthogonalEndDragHandle,"mouseleave")).event(()=>an.onMouseLeave(e),void 0,this.orthogonalEndDragHandleDisposables))};this.orthogonalEndSashDisposables.add(e.onDidEnablementChange.event(t,this)),t(e.state)}this._orthogonalEndSash=e}}constructor(e,t,i){super(),this.hoverDelay=VJ,this.hoverDelayer=this._register(new z_(this.hoverDelay)),this._state=3,this.onDidEnablementChange=this._register(new A),this._onDidStart=this._register(new A),this._onDidChange=this._register(new A),this._onDidReset=this._register(new A),this._onDidEnd=this._register(new A),this.orthogonalStartSashDisposables=this._register(new X),this.orthogonalStartDragHandleDisposables=this._register(new X),this.orthogonalEndSashDisposables=this._register(new X),this.orthogonalEndDragHandleDisposables=this._register(new X),this.onDidStart=this._onDidStart.event,this.onDidChange=this._onDidChange.event,this.onDidReset=this._onDidReset.event,this.onDidEnd=this._onDidEnd.event,this.linkedSash=void 0,this.el=Z(e,ce(".monaco-sash")),i.orthogonalEdge&&this.el.classList.add(`orthogonal-edge-${i.orthogonalEdge}`),Ue&&this.el.classList.add("mac");const n=this._register(new ze(this.el,"mousedown")).event;this._register(n(h=>this.onPointerStart(h,new f2(e)),this));const s=this._register(new ze(this.el,"dblclick")).event;this._register(s(this.onPointerDoublePress,this));const r=this._register(new ze(this.el,"mouseenter")).event;this._register(r(()=>an.onMouseEnter(this)));const a=this._register(new ze(this.el,"mouseleave")).event;this._register(a(()=>an.onMouseLeave(this))),this._register(fn.addTarget(this.el));const l=this._register(new ze(this.el,St.Start)).event;this._register(l(h=>this.onPointerStart(h,new g2(this.el)),this));const c=this._register(new ze(this.el,St.Tap)).event;let d;this._register(c(h=>{if(d){clearTimeout(d),d=void 0,this.onPointerDoublePress(h);return}clearTimeout(d),d=setTimeout(()=>d=void 0,250)},this)),typeof i.size=="number"?(this.size=i.size,i.orientation===0?this.el.style.width=`${this.size}px`:this.el.style.height=`${this.size}px`):(this.size=WJ,this._register(HJ.event(h=>{this.size=h,this.layout()}))),this._register(zJ.event(h=>this.hoverDelay=h)),this.layoutProvider=t,this.orthogonalStartSash=i.orthogonalStartSash,this.orthogonalEndSash=i.orthogonalEndSash,this.orientation=i.orientation||0,this.orientation===1?(this.el.classList.add("horizontal"),this.el.classList.remove("vertical")):(this.el.classList.remove("horizontal"),this.el.classList.add("vertical")),this.el.classList.toggle("debug",BJ),this.layout()}onPointerStart(e,t){je.stop(e);let i=!1;if(!e.__orthogonalSashEvent){const g=this.getOrthogonalSash(e);g&&(i=!0,e.__orthogonalSashEvent=!0,g.onPointerStart(e,new rv(t)))}if(this.linkedSash&&!e.__linkedSashEvent&&(e.__linkedSashEvent=!0,this.linkedSash.onPointerStart(e,new rv(t))),!this.state)return;const n=this.el.ownerDocument.getElementsByTagName("iframe");for(const g of n)g.classList.add(qP);const s=e.pageX,r=e.pageY,a=e.altKey,l={startX:s,currentX:s,startY:r,currentY:r,altKey:a};this.el.classList.add("active"),this._onDidStart.fire(l);const c=Vs(this.el),d=()=>{let g="";i?g="all-scroll":this.orientation===1?this.state===1?g="s-resize":this.state===2?g="n-resize":g=Ue?"row-resize":"ns-resize":this.state===1?g="e-resize":this.state===2?g="w-resize":g=Ue?"col-resize":"ew-resize",c.textContent=`* { cursor: ${g} !important; }`},h=new X;d(),i||this.onDidEnablementChange.event(d,null,h);const u=g=>{je.stop(g,!1);const p={startX:s,currentX:g.pageX,startY:r,currentY:g.pageY,altKey:a};this._onDidChange.fire(p)},f=g=>{je.stop(g,!1),c.remove(),this.el.classList.remove("active"),this._onDidEnd.fire(),h.dispose();for(const p of n)p.classList.remove(qP)};t.onPointerMove(u,null,h),t.onPointerUp(f,null,h),h.add(t)}onPointerDoublePress(e){const t=this.getOrthogonalSash(e);t&&t._onDidReset.fire(),this.linkedSash&&this.linkedSash._onDidReset.fire(),this._onDidReset.fire()}static onMouseEnter(e,t=!1){e.el.classList.contains("active")?(e.hoverDelayer.cancel(),e.el.classList.add("hover")):e.hoverDelayer.trigger(()=>e.el.classList.add("hover"),e.hoverDelay).then(void 0,()=>{}),!t&&e.linkedSash&&an.onMouseEnter(e.linkedSash,!0)}static onMouseLeave(e,t=!1){e.hoverDelayer.cancel(),e.el.classList.remove("hover"),!t&&e.linkedSash&&an.onMouseLeave(e.linkedSash,!0)}clearSashHoverState(){an.onMouseLeave(this)}layout(){if(this.orientation===0){const e=this.layoutProvider;this.el.style.left=e.getVerticalSashLeft(this)-this.size/2+"px",e.getVerticalSashTop&&(this.el.style.top=e.getVerticalSashTop(this)+"px"),e.getVerticalSashHeight&&(this.el.style.height=e.getVerticalSashHeight(this)+"px")}else{const e=this.layoutProvider;this.el.style.top=e.getHorizontalSashTop(this)-this.size/2+"px",e.getHorizontalSashLeft&&(this.el.style.left=e.getHorizontalSashLeft(this)+"px"),e.getHorizontalSashWidth&&(this.el.style.width=e.getHorizontalSashWidth(this)+"px")}}getOrthogonalSash(e){const t=e.initialTarget??e.target;if(!(!t||!Ei(t))&&t.classList.contains("orthogonal-drag-handle"))return t.classList.contains("start")?this.orthogonalStartSash:this.orthogonalEndSash}dispose(){super.dispose(),this.el.remove()}}const UJ={separatorBorder:q.transparent};class I9{set size(e){this._size=e}get size(){return this._size}get visible(){return typeof this._cachedVisibleSize>"u"}setVisible(e,t){if(e!==this.visible){e?(this.size=bn(this._cachedVisibleSize,this.viewMinimumSize,this.viewMaximumSize),this._cachedVisibleSize=void 0):(this._cachedVisibleSize=typeof t=="number"?t:this.size,this.size=0),this.container.classList.toggle("visible",e);try{this.view.setVisible?.(e)}catch(i){console.error("Splitview: Failed to set visible view"),console.error(i)}}}get minimumSize(){return this.visible?this.view.minimumSize:0}get viewMinimumSize(){return this.view.minimumSize}get maximumSize(){return this.visible?this.view.maximumSize:0}get viewMaximumSize(){return this.view.maximumSize}get priority(){return this.view.priority}get proportionalLayout(){return this.view.proportionalLayout??!0}get snap(){return!!this.view.snap}set enabled(e){this.container.style.pointerEvents=e?"":"none"}constructor(e,t,i,n){this.container=e,this.view=t,this.disposable=n,this._cachedVisibleSize=void 0,typeof i=="number"?(this._size=i,this._cachedVisibleSize=void 0,e.classList.add("visible")):(this._size=0,this._cachedVisibleSize=i.cachedVisibleSize)}layout(e,t){this.layoutContainer(e);try{this.view.layout(this.size,e,t)}catch(i){console.error("Splitview: Failed to layout view"),console.error(i)}}dispose(){this.disposable.dispose()}}class $J extends I9{layoutContainer(e){this.container.style.top=`${e}px`,this.container.style.height=`${this.size}px`}}class KJ extends I9{layoutContainer(e){this.container.style.left=`${e}px`,this.container.style.width=`${this.size}px`}}var Ua;(function(o){o[o.Idle=0]="Idle",o[o.Busy=1]="Busy"})(Ua||(Ua={}));var av;(function(o){o.Distribute={type:"distribute"};function e(n){return{type:"split",index:n}}o.Split=e;function t(n){return{type:"auto",index:n}}o.Auto=t;function i(n){return{type:"invisible",cachedVisibleSize:n}}o.Invisible=i})(av||(av={}));class E9 extends z{get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}get startSnappingEnabled(){return this._startSnappingEnabled}get endSnappingEnabled(){return this._endSnappingEnabled}set orthogonalStartSash(e){for(const t of this.sashItems)t.sash.orthogonalStartSash=e;this._orthogonalStartSash=e}set orthogonalEndSash(e){for(const t of this.sashItems)t.sash.orthogonalEndSash=e;this._orthogonalEndSash=e}set startSnappingEnabled(e){this._startSnappingEnabled!==e&&(this._startSnappingEnabled=e,this.updateSashEnablement())}set endSnappingEnabled(e){this._endSnappingEnabled!==e&&(this._endSnappingEnabled=e,this.updateSashEnablement())}constructor(e,t={}){super(),this.size=0,this._contentSize=0,this.proportions=void 0,this.viewItems=[],this.sashItems=[],this.state=Ua.Idle,this._onDidSashChange=this._register(new A),this._onDidSashReset=this._register(new A),this._startSnappingEnabled=!0,this._endSnappingEnabled=!0,this.onDidSashChange=this._onDidSashChange.event,this.onDidSashReset=this._onDidSashReset.event,this.orientation=t.orientation??0,this.inverseAltBehavior=t.inverseAltBehavior??!1,this.proportionalLayout=t.proportionalLayout??!0,this.getSashOrthogonalSize=t.getSashOrthogonalSize,this.el=document.createElement("div"),this.el.classList.add("monaco-split-view2"),this.el.classList.add(this.orientation===0?"vertical":"horizontal"),e.appendChild(this.el),this.sashContainer=Z(this.el,ce(".sash-container")),this.viewContainer=ce(".split-view-container"),this.scrollable=this._register(new Vg({forceIntegerValues:!0,smoothScrollDuration:125,scheduleAtNextAnimationFrame:n=>fs(fe(this.el),n)})),this.scrollableElement=this._register(new X0(this.viewContainer,{vertical:this.orientation===0?t.scrollbarVisibility??1:2,horizontal:this.orientation===1?t.scrollbarVisibility??1:2},this.scrollable));const i=this._register(new ze(this.viewContainer,"scroll")).event;this._register(i(n=>{const s=this.scrollableElement.getScrollPosition(),r=Math.abs(this.viewContainer.scrollLeft-s.scrollLeft)<=1?void 0:this.viewContainer.scrollLeft,a=Math.abs(this.viewContainer.scrollTop-s.scrollTop)<=1?void 0:this.viewContainer.scrollTop;(r!==void 0||a!==void 0)&&this.scrollableElement.setScrollPosition({scrollLeft:r,scrollTop:a})})),this.onDidScroll=this.scrollableElement.onScroll,this._register(this.onDidScroll(n=>{n.scrollTopChanged&&(this.viewContainer.scrollTop=n.scrollTop),n.scrollLeftChanged&&(this.viewContainer.scrollLeft=n.scrollLeft)})),Z(this.el,this.scrollableElement.getDomNode()),this.style(t.styles||UJ),t.descriptor&&(this.size=t.descriptor.size,t.descriptor.views.forEach((n,s)=>{const r=Es(n.visible)||n.visible?n.size:{type:"invisible",cachedVisibleSize:n.size},a=n.view;this.doAddView(a,r,s,!0)}),this._contentSize=this.viewItems.reduce((n,s)=>n+s.size,0),this.saveProportions())}style(e){e.separatorBorder.isTransparent()?(this.el.classList.remove("separator-border"),this.el.style.removeProperty("--separator-border")):(this.el.classList.add("separator-border"),this.el.style.setProperty("--separator-border",e.separatorBorder.toString()))}addView(e,t,i=this.viewItems.length,n){this.doAddView(e,t,i,n)}layout(e,t){const i=Math.max(this.size,this._contentSize);if(this.size=e,this.layoutContext=t,this.proportions){let n=0;for(let s=0;s0&&(r.size=bn(Math.round(a*e/n),r.minimumSize,r.maximumSize))}}else{const n=Bn(this.viewItems.length),s=n.filter(a=>this.viewItems[a].priority===1),r=n.filter(a=>this.viewItems[a].priority===2);this.resize(this.viewItems.length-1,e-i,void 0,s,r)}this.distributeEmptySpace(),this.layoutViews()}saveProportions(){this.proportionalLayout&&this._contentSize>0&&(this.proportions=this.viewItems.map(e=>e.proportionalLayout&&e.visible?e.size/this._contentSize:void 0))}onSashStart({sash:e,start:t,alt:i}){for(const a of this.viewItems)a.enabled=!1;const n=this.sashItems.findIndex(a=>a.sash===e),s=No(U(this.el.ownerDocument.body,"keydown",a=>r(this.sashDragState.current,a.altKey)),U(this.el.ownerDocument.body,"keyup",()=>r(this.sashDragState.current,!1))),r=(a,l)=>{const c=this.viewItems.map(g=>g.size);let d=Number.NEGATIVE_INFINITY,h=Number.POSITIVE_INFINITY;if(this.inverseAltBehavior&&(l=!l),l)if(n===this.sashItems.length-1){const p=this.viewItems[n];d=(p.minimumSize-p.size)/2,h=(p.maximumSize-p.size)/2}else{const p=this.viewItems[n+1];d=(p.size-p.maximumSize)/2,h=(p.size-p.minimumSize)/2}let u,f;if(!l){const g=Bn(n,-1),p=Bn(n+1,this.viewItems.length),_=g.reduce((E,N)=>E+(this.viewItems[N].minimumSize-c[N]),0),b=g.reduce((E,N)=>E+(this.viewItems[N].viewMaximumSize-c[N]),0),C=p.length===0?Number.POSITIVE_INFINITY:p.reduce((E,N)=>E+(c[N]-this.viewItems[N].minimumSize),0),w=p.length===0?Number.NEGATIVE_INFINITY:p.reduce((E,N)=>E+(c[N]-this.viewItems[N].viewMaximumSize),0),v=Math.max(_,w),y=Math.min(C,b),x=this.findFirstSnapIndex(g),L=this.findFirstSnapIndex(p);if(typeof x=="number"){const E=this.viewItems[x],N=Math.floor(E.viewMinimumSize/2);u={index:x,limitDelta:E.visible?v-N:v+N,size:E.size}}if(typeof L=="number"){const E=this.viewItems[L],N=Math.floor(E.viewMinimumSize/2);f={index:L,limitDelta:E.visible?y+N:y-N,size:E.size}}}this.sashDragState={start:a,current:a,index:n,sizes:c,minDelta:d,maxDelta:h,alt:l,snapBefore:u,snapAfter:f,disposable:s}};r(t,i)}onSashChange({current:e}){const{index:t,start:i,sizes:n,alt:s,minDelta:r,maxDelta:a,snapBefore:l,snapAfter:c}=this.sashDragState;this.sashDragState.current=e;const d=e-i,h=this.resize(t,d,n,void 0,void 0,r,a,l,c);if(s){const u=t===this.sashItems.length-1,f=this.viewItems.map(w=>w.size),g=u?t:t+1,p=this.viewItems[g],_=p.size-p.maximumSize,b=p.size-p.minimumSize,C=u?t-1:t+1;this.resize(C,-h,f,void 0,void 0,_,b)}this.distributeEmptySpace(),this.layoutViews()}onSashEnd(e){this._onDidSashChange.fire(e),this.sashDragState.disposable.dispose(),this.saveProportions();for(const t of this.viewItems)t.enabled=!0}onViewChange(e,t){const i=this.viewItems.indexOf(e);i<0||i>=this.viewItems.length||(t=typeof t=="number"?t:e.size,t=bn(t,e.minimumSize,e.maximumSize),this.inverseAltBehavior&&i>0?(this.resize(i-1,Math.floor((e.size-t)/2)),this.distributeEmptySpace(),this.layoutViews()):(e.size=t,this.relayout([i],void 0)))}resizeView(e,t){if(!(e<0||e>=this.viewItems.length)){if(this.state!==Ua.Idle)throw new Error("Cant modify splitview");this.state=Ua.Busy;try{const i=Bn(this.viewItems.length).filter(a=>a!==e),n=[...i.filter(a=>this.viewItems[a].priority===1),e],s=i.filter(a=>this.viewItems[a].priority===2),r=this.viewItems[e];t=Math.round(t),t=bn(t,r.minimumSize,Math.min(r.maximumSize,this.size)),r.size=t,this.relayout(n,s)}finally{this.state=Ua.Idle}}}distributeViewSizes(){const e=[];let t=0;for(const a of this.viewItems)a.maximumSize-a.minimumSize>0&&(e.push(a),t+=a.size);const i=Math.floor(t/e.length);for(const a of e)a.size=bn(i,a.minimumSize,a.maximumSize);const n=Bn(this.viewItems.length),s=n.filter(a=>this.viewItems[a].priority===1),r=n.filter(a=>this.viewItems[a].priority===2);this.relayout(s,r)}getViewSize(e){return e<0||e>=this.viewItems.length?-1:this.viewItems[e].size}doAddView(e,t,i=this.viewItems.length,n){if(this.state!==Ua.Idle)throw new Error("Cant modify splitview");this.state=Ua.Busy;try{const s=ce(".split-view-view");i===this.viewItems.length?this.viewContainer.appendChild(s):this.viewContainer.insertBefore(s,this.viewContainer.children.item(i));const r=e.onDidChange(u=>this.onViewChange(d,u)),a=_e(()=>s.remove()),l=No(r,a);let c;typeof t=="number"?c=t:(t.type==="auto"&&(this.areViewsDistributed()?t={type:"distribute"}:t={type:"split",index:t.index}),t.type==="split"?c=this.getViewSize(t.index)/2:t.type==="invisible"?c={cachedVisibleSize:t.cachedVisibleSize}:c=e.minimumSize);const d=this.orientation===0?new $J(s,e,c,l):new KJ(s,e,c,l);if(this.viewItems.splice(i,0,d),this.viewItems.length>1){const u={orthogonalStartSash:this.orthogonalStartSash,orthogonalEndSash:this.orthogonalEndSash},f=this.orientation===0?new an(this.sashContainer,{getHorizontalSashTop:E=>this.getSashPosition(E),getHorizontalSashWidth:this.getSashOrthogonalSize},{...u,orientation:1}):new an(this.sashContainer,{getVerticalSashLeft:E=>this.getSashPosition(E),getVerticalSashHeight:this.getSashOrthogonalSize},{...u,orientation:0}),g=this.orientation===0?E=>({sash:f,start:E.startY,current:E.currentY,alt:E.altKey}):E=>({sash:f,start:E.startX,current:E.currentX,alt:E.altKey}),_=J.map(f.onDidStart,g)(this.onSashStart,this),C=J.map(f.onDidChange,g)(this.onSashChange,this),v=J.map(f.onDidEnd,()=>this.sashItems.findIndex(E=>E.sash===f))(this.onSashEnd,this),y=f.onDidReset(()=>{const E=this.sashItems.findIndex(j=>j.sash===f),N=Bn(E,-1),H=Bn(E+1,this.viewItems.length),F=this.findFirstSnapIndex(N),W=this.findFirstSnapIndex(H);typeof F=="number"&&!this.viewItems[F].visible||typeof W=="number"&&!this.viewItems[W].visible||this._onDidSashReset.fire(E)}),x=No(_,C,v,y,f),L={sash:f,disposable:x};this.sashItems.splice(i-1,0,L)}s.appendChild(e.element);let h;typeof t!="number"&&t.type==="split"&&(h=[t.index]),n||this.relayout([i],h),!n&&typeof t!="number"&&t.type==="distribute"&&this.distributeViewSizes()}finally{this.state=Ua.Idle}}relayout(e,t){const i=this.viewItems.reduce((n,s)=>n+s.size,0);this.resize(this.viewItems.length-1,this.size-i,void 0,e,t),this.distributeEmptySpace(),this.layoutViews(),this.saveProportions()}resize(e,t,i=this.viewItems.map(d=>d.size),n,s,r=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY,l,c){if(e<0||e>=this.viewItems.length)return 0;const d=Bn(e,-1),h=Bn(e+1,this.viewItems.length);if(s)for(const L of s)$y(d,L),$y(h,L);if(n)for(const L of n)bb(d,L),bb(h,L);const u=d.map(L=>this.viewItems[L]),f=d.map(L=>i[L]),g=h.map(L=>this.viewItems[L]),p=h.map(L=>i[L]),_=d.reduce((L,E)=>L+(this.viewItems[E].minimumSize-i[E]),0),b=d.reduce((L,E)=>L+(this.viewItems[E].maximumSize-i[E]),0),C=h.length===0?Number.POSITIVE_INFINITY:h.reduce((L,E)=>L+(i[E]-this.viewItems[E].minimumSize),0),w=h.length===0?Number.NEGATIVE_INFINITY:h.reduce((L,E)=>L+(i[E]-this.viewItems[E].maximumSize),0),v=Math.max(_,w,r),y=Math.min(C,b,a);let x=!1;if(l){const L=this.viewItems[l.index],E=t>=l.limitDelta;x=E!==L.visible,L.setVisible(E,l.size)}if(!x&&c){const L=this.viewItems[c.index],E=ta+l.size,0);let i=this.size-t;const n=Bn(this.viewItems.length-1,-1),s=n.filter(a=>this.viewItems[a].priority===1),r=n.filter(a=>this.viewItems[a].priority===2);for(const a of r)$y(n,a);for(const a of s)bb(n,a);typeof e=="number"&&bb(n,e);for(let a=0;i!==0&&at+i.size,0);let e=0;for(const t of this.viewItems)t.layout(e,this.layoutContext),e+=t.size;this.sashItems.forEach(t=>t.sash.layout()),this.updateSashEnablement(),this.updateScrollableElement()}updateScrollableElement(){this.orientation===0?this.scrollableElement.setScrollDimensions({height:this.size,scrollHeight:this._contentSize}):this.scrollableElement.setScrollDimensions({width:this.size,scrollWidth:this._contentSize})}updateSashEnablement(){let e=!1;const t=this.viewItems.map(l=>e=l.size-l.minimumSize>0||e);e=!1;const i=this.viewItems.map(l=>e=l.maximumSize-l.size>0||e),n=[...this.viewItems].reverse();e=!1;const s=n.map(l=>e=l.size-l.minimumSize>0||e).reverse();e=!1;const r=n.map(l=>e=l.maximumSize-l.size>0||e).reverse();let a=0;for(let l=0;l0||this.startSnappingEnabled)?c.state=1:C&&t[l]&&(a0)return;if(!i.visible&&i.snap)return t}}areViewsDistributed(){let e,t;for(const i of this.viewItems)if(e=e===void 0?i.size:Math.min(e,i.size),t=t===void 0?i.size:Math.max(t,i.size),t-e>2)return!1;return!0}dispose(){this.sashDragState?.disposable.dispose(),xt(this.viewItems),this.viewItems=[],this.sashItems.forEach(e=>e.disposable.dispose()),this.sashItems=[],super.dispose()}}const Vw=class Vw{constructor(e,t,i){this.columns=e,this.getColumnSize=i,this.templateId=Vw.TemplateId,this.renderedTemplates=new Set;const n=new Map(t.map(s=>[s.templateId,s]));this.renderers=[];for(const s of e){const r=n.get(s.templateId);if(!r)throw new Error(`Table cell renderer for template id ${s.templateId} not found.`);this.renderers.push(r)}}renderTemplate(e){const t=Z(e,ce(".monaco-table-tr")),i=[],n=[];for(let r=0;rthis.disposables.add(new qJ(d,h))),l={size:a.reduce((d,h)=>d+h.column.weight,0),views:a.map(d=>({size:d.column.weight,view:d}))};this.splitview=this.disposables.add(new E9(this.domNode,{orientation:1,scrollbarVisibility:2,getSashOrthogonalSize:()=>this.cachedHeight,descriptor:l})),this.splitview.el.style.height=`${i.headerRowHeight}px`,this.splitview.el.style.lineHeight=`${i.headerRowHeight}px`;const c=new lv(n,s,d=>this.splitview.getViewSize(d));this.list=this.disposables.add(new go(e,this.domNode,jJ(i),[c],r)),J.any(...a.map(d=>d.onDidLayout))(([d,h])=>c.layoutColumn(d,h),null,this.disposables),this.splitview.onDidSashReset(d=>{const h=n.reduce((f,g)=>f+g.weight,0),u=n[d].weight/h*this.cachedWidth;this.splitview.resizeView(d,u)},null,this.disposables),this.styleElement=Vs(this.domNode),this.style(_Y)}updateOptions(e){this.list.updateOptions(e)}splice(e,t,i=[]){this.list.splice(e,t,i)}getHTMLElement(){return this.domNode}style(e){const t=[];t.push(`.monaco-table.${this.domId} > .monaco-split-view2 .monaco-sash.vertical::before { + top: ${this.virtualDelegate.headerRowHeight+1}px; + height: calc(100% - ${this.virtualDelegate.headerRowHeight}px); + }`),this.styleElement.textContent=t.join(` +`),this.list.style(e)}getSelectedElements(){return this.list.getSelectedElements()}getSelection(){return this.list.getSelection()}getFocus(){return this.list.getFocus()}dispose(){this.disposables.dispose()}};zw.InstanceCount=0;let FD=zw;var ys;(function(o){o[o.Expanded=0]="Expanded",o[o.Collapsed=1]="Collapsed",o[o.PreserveOrExpanded=2]="PreserveOrExpanded",o[o.PreserveOrCollapsed=3]="PreserveOrCollapsed"})(ys||(ys={}));var jd;(function(o){o[o.Unknown=0]="Unknown",o[o.Twistie=1]="Twistie",o[o.Element=2]="Element",o[o.Filter=3]="Filter"})(jd||(jd={}));class Ds extends Error{constructor(e,t){super(`TreeError [${e}] ${t}`)}}class m2{constructor(e){this.fn=e,this._map=new WeakMap}map(e){let t=this._map.get(e);return t||(t=this.fn(e),this._map.set(e,t)),t}}function p2(o){return typeof o=="object"&&"visibility"in o&&"data"in o}function p_(o){switch(o){case!0:return 1;case!1:return 0;default:return o}}function jS(o){return typeof o.collapsible=="boolean"}class GJ{constructor(e,t,i,n={}){this.user=e,this.list=t,this.rootRef=[],this.eventBufferer=new W_,this._onDidChangeCollapseState=new A,this.onDidChangeCollapseState=this.eventBufferer.wrapEvent(this._onDidChangeCollapseState.event),this._onDidChangeRenderNodeCount=new A,this.onDidChangeRenderNodeCount=this.eventBufferer.wrapEvent(this._onDidChangeRenderNodeCount.event),this._onDidSplice=new A,this.onDidSplice=this._onDidSplice.event,this.refilterDelayer=new z_(CF),this.collapseByDefault=typeof n.collapseByDefault>"u"?!1:n.collapseByDefault,this.allowNonCollapsibleParents=n.allowNonCollapsibleParents??!1,this.filter=n.filter,this.autoExpandSingleChildren=typeof n.autoExpandSingleChildren>"u"?!1:n.autoExpandSingleChildren,this.root={parent:void 0,element:i,children:[],depth:0,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:!1,collapsed:!1,renderNodeCount:0,visibility:1,visible:!0,filterData:void 0}}splice(e,t,i=st.empty(),n={}){if(e.length===0)throw new Ds(this.user,"Invalid tree location");n.diffIdentityProvider?this.spliceSmart(n.diffIdentityProvider,e,t,i,n):this.spliceSimple(e,t,i,n)}spliceSmart(e,t,i,n=st.empty(),s,r=s.diffDepth??0){const{parentNode:a}=this.getParentNodeWithListIndex(t);if(!a.lastDiffIds)return this.spliceSimple(t,i,n,s);const l=[...n],c=t[t.length-1],d=new Yr({getElements:()=>a.lastDiffIds},{getElements:()=>[...a.children.slice(0,c),...l,...a.children.slice(c+i)].map(p=>e.getId(p.element).toString())}).ComputeDiff(!1);if(d.quitEarly)return a.lastDiffIds=void 0,this.spliceSimple(t,i,l,s);const h=t.slice(0,-1),u=(p,_,b)=>{if(r>0)for(let C=0;Cb.originalStart-_.originalStart))u(f,g,f-(p.originalStart+p.originalLength)),f=p.originalStart,g=p.modifiedStart-c,this.spliceSimple([...h,f],p.originalLength,st.slice(l,g,g+p.modifiedLength),s);u(f,g,f)}spliceSimple(e,t,i=st.empty(),{onDidCreateNode:n,onDidDeleteNode:s,diffIdentityProvider:r}){const{parentNode:a,listIndex:l,revealed:c,visible:d}=this.getParentNodeWithListIndex(e),h=[],u=st.map(i,y=>this.createTreeNode(y,a,a.visible?1:0,c,h,n)),f=e[e.length-1];let g=0;for(let y=f;y>=0&&yr.getId(y.element).toString())):a.lastDiffIds=a.children.map(y=>r.getId(y.element).toString()):a.lastDiffIds=void 0;let w=0;for(const y of C)y.visible&&w++;if(w!==0)for(let y=f+p.length;yx+(L.visible?L.renderNodeCount:0),0);this._updateAncestorsRenderNodeCount(a,b-y),this.list.splice(l,y,h)}if(C.length>0&&s){const y=x=>{s(x),x.children.forEach(y)};C.forEach(y)}this._onDidSplice.fire({insertedNodes:p,deletedNodes:C});let v=a;for(;v;){if(v.visibility===2){this.refilterDelayer.trigger(()=>this.refilter());break}v=v.parent}}rerender(e){if(e.length===0)throw new Ds(this.user,"Invalid tree location");const{node:t,listIndex:i,revealed:n}=this.getTreeNodeWithListIndex(e);t.visible&&n&&this.list.splice(i,1,[t])}has(e){return this.hasTreeNode(e)}getListIndex(e){const{listIndex:t,visible:i,revealed:n}=this.getTreeNodeWithListIndex(e);return i&&n?t:-1}getListRenderCount(e){return this.getTreeNode(e).renderNodeCount}isCollapsible(e){return this.getTreeNode(e).collapsible}setCollapsible(e,t){const i=this.getTreeNode(e);typeof t>"u"&&(t=!i.collapsible);const n={collapsible:t};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(e,n))}isCollapsed(e){return this.getTreeNode(e).collapsed}setCollapsed(e,t,i){const n=this.getTreeNode(e);typeof t>"u"&&(t=!n.collapsed);const s={collapsed:t,recursive:i||!1};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(e,s))}_setCollapseState(e,t){const{node:i,listIndex:n,revealed:s}=this.getTreeNodeWithListIndex(e),r=this._setListNodeCollapseState(i,n,s,t);if(i!==this.root&&this.autoExpandSingleChildren&&r&&!jS(t)&&i.collapsible&&!i.collapsed&&!t.recursive){let a=-1;for(let l=0;l-1){a=-1;break}else a=l;a>-1&&this._setCollapseState([...e,a],t)}return r}_setListNodeCollapseState(e,t,i,n){const s=this._setNodeCollapseState(e,n,!1);if(!i||!e.visible||!s)return s;const r=e.renderNodeCount,a=this.updateNodeAfterCollapseChange(e),l=r-(t===-1?0:1);return this.list.splice(t+1,l,a.slice(1)),s}_setNodeCollapseState(e,t,i){let n;if(e===this.root?n=!1:(jS(t)?(n=e.collapsible!==t.collapsible,e.collapsible=t.collapsible):e.collapsible?(n=e.collapsed!==t.collapsed,e.collapsed=t.collapsed):n=!1,n&&this._onDidChangeCollapseState.fire({node:e,deep:i})),!jS(t)&&t.recursive)for(const s of e.children)n=this._setNodeCollapseState(s,t,!0)||n;return n}expandTo(e){this.eventBufferer.bufferEvents(()=>{let t=this.getTreeNode(e);for(;t.parent;)t=t.parent,e=e.slice(0,e.length-1),t.collapsed&&this._setCollapseState(e,{collapsed:!1,recursive:!1})})}refilter(){const e=this.root.renderNodeCount,t=this.updateNodeAfterFilterChange(this.root);this.list.splice(0,e,t),this.refilterDelayer.cancel()}createTreeNode(e,t,i,n,s,r){const a={parent:t,element:e.element,children:[],depth:t.depth+1,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:typeof e.collapsible=="boolean"?e.collapsible:typeof e.collapsed<"u",collapsed:typeof e.collapsed>"u"?this.collapseByDefault:e.collapsed,renderNodeCount:1,visibility:1,visible:!0,filterData:void 0},l=this._filterNode(a,i);a.visibility=l,n&&s.push(a);const c=e.children||st.empty(),d=n&&l!==0&&!a.collapsed;let h=0,u=1;for(const f of c){const g=this.createTreeNode(f,a,l,d,s,r);a.children.push(g),u+=g.renderNodeCount,g.visible&&(g.visibleChildIndex=h++)}return this.allowNonCollapsibleParents||(a.collapsible=a.collapsible||a.children.length>0),a.visibleChildrenCount=h,a.visible=l===2?h>0:l===1,a.visible?a.collapsed||(a.renderNodeCount=u):(a.renderNodeCount=0,n&&s.pop()),r?.(a),a}updateNodeAfterCollapseChange(e){const t=e.renderNodeCount,i=[];return this._updateNodeAfterCollapseChange(e,i),this._updateAncestorsRenderNodeCount(e.parent,i.length-t),i}_updateNodeAfterCollapseChange(e,t){if(e.visible===!1)return 0;if(t.push(e),e.renderNodeCount=1,!e.collapsed)for(const i of e.children)e.renderNodeCount+=this._updateNodeAfterCollapseChange(i,t);return this._onDidChangeRenderNodeCount.fire(e),e.renderNodeCount}updateNodeAfterFilterChange(e){const t=e.renderNodeCount,i=[];return this._updateNodeAfterFilterChange(e,e.visible?1:0,i),this._updateAncestorsRenderNodeCount(e.parent,i.length-t),i}_updateNodeAfterFilterChange(e,t,i,n=!0){let s;if(e!==this.root){if(s=this._filterNode(e,t),s===0)return e.visible=!1,e.renderNodeCount=0,!1;n&&i.push(e)}const r=i.length;e.renderNodeCount=e===this.root?0:1;let a=!1;if(!e.collapsed||s!==0){let l=0;for(const c of e.children)a=this._updateNodeAfterFilterChange(c,s,i,n&&!e.collapsed)||a,c.visible&&(c.visibleChildIndex=l++);e.visibleChildrenCount=l}else e.visibleChildrenCount=0;return e!==this.root&&(e.visible=s===2?a:s===1,e.visibility=s),e.visible?e.collapsed||(e.renderNodeCount+=i.length-r):(e.renderNodeCount=0,n&&i.pop()),this._onDidChangeRenderNodeCount.fire(e),e.visible}_updateAncestorsRenderNodeCount(e,t){if(t!==0)for(;e;)e.renderNodeCount+=t,this._onDidChangeRenderNodeCount.fire(e),e=e.parent}_filterNode(e,t){const i=this.filter?this.filter.filter(e.element,t):1;return typeof i=="boolean"?(e.filterData=void 0,i?1:0):p2(i)?(e.filterData=i.data,p_(i.visibility)):(e.filterData=void 0,p_(i))}hasTreeNode(e,t=this.root){if(!e||e.length===0)return!0;const[i,...n]=e;return i<0||i>t.children.length?!1:this.hasTreeNode(n,t.children[i])}getTreeNode(e,t=this.root){if(!e||e.length===0)return t;const[i,...n]=e;if(i<0||i>t.children.length)throw new Ds(this.user,"Invalid tree location");return this.getTreeNode(n,t.children[i])}getTreeNodeWithListIndex(e){if(e.length===0)return{node:this.root,listIndex:-1,revealed:!0,visible:!1};const{parentNode:t,listIndex:i,revealed:n,visible:s}=this.getParentNodeWithListIndex(e),r=e[e.length-1];if(r<0||r>t.children.length)throw new Ds(this.user,"Invalid tree location");const a=t.children[r];return{node:a,listIndex:i,revealed:n,visible:s&&a.visible}}getParentNodeWithListIndex(e,t=this.root,i=0,n=!0,s=!0){const[r,...a]=e;if(r<0||r>t.children.length)throw new Ds(this.user,"Invalid tree location");for(let l=0;lt.element)),this.data=e}}function qS(o){return o instanceof J_?new ZJ(o):o}class YJ{constructor(e,t){this.modelProvider=e,this.dnd=t,this.autoExpandDisposable=z.None,this.disposables=new X}getDragURI(e){return this.dnd.getDragURI(e.element)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map(i=>i.element),t)}onDragStart(e,t){this.dnd.onDragStart?.(qS(e),t)}onDragOver(e,t,i,n,s,r=!0){const a=this.dnd.onDragOver(qS(e),t&&t.element,i,n,s),l=this.autoExpandNode!==t;if(l&&(this.autoExpandDisposable.dispose(),this.autoExpandNode=t),typeof t>"u")return a;if(l&&typeof a!="boolean"&&a.autoExpand&&(this.autoExpandDisposable=rg(()=>{const f=this.modelProvider(),g=f.getNodeLocation(t);f.isCollapsed(g)&&f.setCollapsed(g,!1),this.autoExpandNode=void 0},500,this.disposables)),typeof a=="boolean"||!a.accept||typeof a.bubble>"u"||a.feedback){if(!r){const f=typeof a=="boolean"?a:a.accept,g=typeof a=="boolean"?void 0:a.effect;return{accept:f,effect:g,feedback:[i]}}return a}if(a.bubble===1){const f=this.modelProvider(),g=f.getNodeLocation(t),p=f.getParentNodeLocation(g),_=f.getNode(p),b=p&&f.getListIndex(p);return this.onDragOver(e,_,b,n,s,!1)}const c=this.modelProvider(),d=c.getNodeLocation(t),h=c.getListIndex(d),u=c.getListRenderCount(d);return{...a,feedback:Bn(h,h+u)}}drop(e,t,i,n,s){this.autoExpandDisposable.dispose(),this.autoExpandNode=void 0,this.dnd.drop(qS(e),t&&t.element,i,n,s)}onDragEnd(e){this.dnd.onDragEnd?.(e)}dispose(){this.disposables.dispose(),this.dnd.dispose()}}function QJ(o,e){return e&&{...e,identityProvider:e.identityProvider&&{getId(t){return e.identityProvider.getId(t.element)}},dnd:e.dnd&&new YJ(o,e.dnd),multipleSelectionController:e.multipleSelectionController&&{isSelectionSingleChangeEvent(t){return e.multipleSelectionController.isSelectionSingleChangeEvent({...t,element:t.element})},isSelectionRangeChangeEvent(t){return e.multipleSelectionController.isSelectionRangeChangeEvent({...t,element:t.element})}},accessibilityProvider:e.accessibilityProvider&&{...e.accessibilityProvider,getSetSize(t){const i=o(),n=i.getNodeLocation(t),s=i.getParentNodeLocation(n);return i.getNode(s).visibleChildrenCount},getPosInSet(t){return t.visibleChildIndex+1},isChecked:e.accessibilityProvider&&e.accessibilityProvider.isChecked?t=>e.accessibilityProvider.isChecked(t.element):void 0,getRole:e.accessibilityProvider&&e.accessibilityProvider.getRole?t=>e.accessibilityProvider.getRole(t.element):()=>"treeitem",getAriaLabel(t){return e.accessibilityProvider.getAriaLabel(t.element)},getWidgetAriaLabel(){return e.accessibilityProvider.getWidgetAriaLabel()},getWidgetRole:e.accessibilityProvider&&e.accessibilityProvider.getWidgetRole?()=>e.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:e.accessibilityProvider&&e.accessibilityProvider.getAriaLevel?t=>e.accessibilityProvider.getAriaLevel(t.element):t=>t.depth,getActiveDescendantId:e.accessibilityProvider.getActiveDescendantId&&(t=>e.accessibilityProvider.getActiveDescendantId(t.element))},keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&{...e.keyboardNavigationLabelProvider,getKeyboardNavigationLabel(t){return e.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(t.element)}}}}class _2{constructor(e){this.delegate=e}getHeight(e){return this.delegate.getHeight(e.element)}getTemplateId(e){return this.delegate.getTemplateId(e.element)}hasDynamicHeight(e){return!!this.delegate.hasDynamicHeight&&this.delegate.hasDynamicHeight(e.element)}setDynamicHeight(e,t){this.delegate.setDynamicHeight?.(e.element,t)}}var Sg;(function(o){o.None="none",o.OnHover="onHover",o.Always="always"})(Sg||(Sg={}));class XJ{get elements(){return this._elements}constructor(e,t=[]){this._elements=t,this.disposables=new X,this.onDidChange=J.forEach(e,i=>this._elements=i,this.disposables)}dispose(){this.disposables.dispose()}}const Tp=class Tp{constructor(e,t,i,n,s,r={}){this.renderer=e,this.modelProvider=t,this.activeNodes=n,this.renderedIndentGuides=s,this.renderedElements=new Map,this.renderedNodes=new Map,this.indent=Tp.DefaultIndent,this.hideTwistiesOfChildlessElements=!1,this.shouldRenderIndentGuides=!1,this.activeIndentNodes=new Set,this.indentGuidesDisposable=z.None,this.disposables=new X,this.templateId=e.templateId,this.updateOptions(r),J.map(i,a=>a.node)(this.onDidChangeNodeTwistieState,this,this.disposables),e.onDidChangeTwistieState?.(this.onDidChangeTwistieState,this,this.disposables)}updateOptions(e={}){if(typeof e.indent<"u"){const t=bn(e.indent,0,40);if(t!==this.indent){this.indent=t;for(const[i,n]of this.renderedNodes)this.renderTreeElement(i,n)}}if(typeof e.renderIndentGuides<"u"){const t=e.renderIndentGuides!==Sg.None;if(t!==this.shouldRenderIndentGuides){this.shouldRenderIndentGuides=t;for(const[i,n]of this.renderedNodes)this._renderIndentGuides(i,n);if(this.indentGuidesDisposable.dispose(),t){const i=new X;this.activeNodes.onDidChange(this._onDidChangeActiveNodes,this,i),this.indentGuidesDisposable=i,this._onDidChangeActiveNodes(this.activeNodes.elements)}}}typeof e.hideTwistiesOfChildlessElements<"u"&&(this.hideTwistiesOfChildlessElements=e.hideTwistiesOfChildlessElements)}renderTemplate(e){const t=Z(e,ce(".monaco-tl-row")),i=Z(t,ce(".monaco-tl-indent")),n=Z(t,ce(".monaco-tl-twistie")),s=Z(t,ce(".monaco-tl-contents")),r=this.renderer.renderTemplate(s);return{container:e,indent:i,twistie:n,indentGuidesDisposable:z.None,templateData:r}}renderElement(e,t,i,n){this.renderedNodes.set(e,i),this.renderedElements.set(e.element,e),this.renderTreeElement(e,i),this.renderer.renderElement(e,t,i.templateData,n)}disposeElement(e,t,i,n){i.indentGuidesDisposable.dispose(),this.renderer.disposeElement?.(e,t,i.templateData,n),typeof n=="number"&&(this.renderedNodes.delete(e),this.renderedElements.delete(e.element))}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}onDidChangeTwistieState(e){const t=this.renderedElements.get(e);t&&this.onDidChangeNodeTwistieState(t)}onDidChangeNodeTwistieState(e){const t=this.renderedNodes.get(e);t&&(this._onDidChangeActiveNodes(this.activeNodes.elements),this.renderTreeElement(e,t))}renderTreeElement(e,t){const i=Tp.DefaultIndent+(e.depth-1)*this.indent;t.twistie.style.paddingLeft=`${i}px`,t.indent.style.width=`${i+this.indent-16}px`,e.collapsible?t.container.setAttribute("aria-expanded",String(!e.collapsed)):t.container.removeAttribute("aria-expanded"),t.twistie.classList.remove(...Ee.asClassNameArray(ie.treeItemExpanded));let n=!1;this.renderer.renderTwistie&&(n=this.renderer.renderTwistie(e.element,t.twistie)),e.collapsible&&(!this.hideTwistiesOfChildlessElements||e.visibleChildrenCount>0)?(n||t.twistie.classList.add(...Ee.asClassNameArray(ie.treeItemExpanded)),t.twistie.classList.add("collapsible"),t.twistie.classList.toggle("collapsed",e.collapsed)):t.twistie.classList.remove("collapsible","collapsed"),this._renderIndentGuides(e,t)}_renderIndentGuides(e,t){if(xn(t.indent),t.indentGuidesDisposable.dispose(),!this.shouldRenderIndentGuides)return;const i=new X,n=this.modelProvider();for(;;){const s=n.getNodeLocation(e),r=n.getParentNodeLocation(s);if(!r)break;const a=n.getNode(r),l=ce(".indent-guide",{style:`width: ${this.indent}px`});this.activeIndentNodes.has(a)&&l.classList.add("active"),t.indent.childElementCount===0?t.indent.appendChild(l):t.indent.insertBefore(l,t.indent.firstElementChild),this.renderedIndentGuides.add(a,l),i.add(_e(()=>this.renderedIndentGuides.delete(a,l))),e=a}t.indentGuidesDisposable=i}_onDidChangeActiveNodes(e){if(!this.shouldRenderIndentGuides)return;const t=new Set,i=this.modelProvider();e.forEach(n=>{const s=i.getNodeLocation(n);try{const r=i.getParentNodeLocation(s);n.collapsible&&n.children.length>0&&!n.collapsed?t.add(n):r&&t.add(i.getNode(r))}catch{}}),this.activeIndentNodes.forEach(n=>{t.has(n)||this.renderedIndentGuides.forEach(n,s=>s.classList.remove("active"))}),t.forEach(n=>{this.activeIndentNodes.has(n)||this.renderedIndentGuides.forEach(n,s=>s.classList.add("active"))}),this.activeIndentNodes=t}dispose(){this.renderedNodes.clear(),this.renderedElements.clear(),this.indentGuidesDisposable.dispose(),xt(this.disposables)}};Tp.DefaultIndent=8;let BD=Tp;class JJ{get totalCount(){return this._totalCount}get matchCount(){return this._matchCount}constructor(e,t,i){this.tree=e,this.keyboardNavigationLabelProvider=t,this._filter=i,this._totalCount=0,this._matchCount=0,this._pattern="",this._lowercasePattern="",this.disposables=new X,e.onWillRefilter(this.reset,this,this.disposables)}filter(e,t){let i=1;if(this._filter){const r=this._filter.filter(e,t);if(typeof r=="boolean"?i=r?1:0:p2(r)?i=p_(r.visibility):i=r,i===0)return!1}if(this._totalCount++,!this._pattern)return this._matchCount++,{data:oa.Default,visibility:i};const n=this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e),s=Array.isArray(n)?n:[n];for(const r of s){const a=r&&r.toString();if(typeof a>"u")return{data:oa.Default,visibility:i};let l;if(this.tree.findMatchType===Uh.Contiguous){const c=a.toLowerCase().indexOf(this._lowercasePattern);if(c>-1){l=[Number.MAX_SAFE_INTEGER,0];for(let d=this._lowercasePattern.length;d>0;d--)l.push(c+d-1)}}else l=_g(this._pattern,this._lowercasePattern,0,a,a.toLowerCase(),0,{firstMatchCanBeWeak:!0,boostFullMatch:!0});if(l)return this._matchCount++,s.length===1?{data:l,visibility:i}:{data:{label:a,score:l},visibility:i}}return this.tree.findMode===dl.Filter?typeof this.tree.options.defaultFindVisibility=="number"?this.tree.options.defaultFindVisibility:this.tree.options.defaultFindVisibility?this.tree.options.defaultFindVisibility(e):2:{data:oa.Default,visibility:i}}reset(){this._totalCount=0,this._matchCount=0}dispose(){xt(this.disposables)}}var dl;(function(o){o[o.Highlight=0]="Highlight",o[o.Filter=1]="Filter"})(dl||(dl={}));var Uh;(function(o){o[o.Fuzzy=0]="Fuzzy",o[o.Contiguous=1]="Contiguous"})(Uh||(Uh={}));class eee{get pattern(){return this._pattern}get mode(){return this._mode}set mode(e){e!==this._mode&&(this._mode=e,this.widget&&(this.widget.mode=this._mode),this.tree.refilter(),this.render(),this._onDidChangeMode.fire(e))}get matchType(){return this._matchType}set matchType(e){e!==this._matchType&&(this._matchType=e,this.widget&&(this.widget.matchType=this._matchType),this.tree.refilter(),this.render(),this._onDidChangeMatchType.fire(e))}constructor(e,t,i,n,s,r={}){this.tree=e,this.view=i,this.filter=n,this.contextViewProvider=s,this.options=r,this._pattern="",this.width=0,this._onDidChangeMode=new A,this.onDidChangeMode=this._onDidChangeMode.event,this._onDidChangeMatchType=new A,this.onDidChangeMatchType=this._onDidChangeMatchType.event,this._onDidChangePattern=new A,this._onDidChangeOpenState=new A,this.onDidChangeOpenState=this._onDidChangeOpenState.event,this.enabledDisposables=new X,this.disposables=new X,this._mode=e.options.defaultFindMode??dl.Highlight,this._matchType=e.options.defaultFindMatchType??Uh.Fuzzy,t.onDidSplice(this.onDidSpliceModel,this,this.disposables)}updateOptions(e={}){e.defaultFindMode!==void 0&&(this.mode=e.defaultFindMode),e.defaultFindMatchType!==void 0&&(this.matchType=e.defaultFindMatchType)}onDidSpliceModel(){!this.widget||this.pattern.length===0||(this.tree.refilter(),this.render())}render(){const e=this.filter.totalCount>0&&this.filter.matchCount===0;this.pattern&&e?(El(m("replFindNoResults","No results")),this.tree.options.showNotFoundMessage??!0?this.widget?.showMessage({type:2,content:m("not found","No elements found.")}):this.widget?.showMessage({type:2})):(this.widget?.clearMessage(),this.pattern&&El(m("replFindResults","{0} results",this.filter.matchCount)))}shouldAllowFocus(e){return!this.widget||!this.pattern||this.filter.totalCount>0&&this.filter.matchCount<=1?!0:!oa.isDefault(e.filterData)}layout(e){this.width=e,this.widget?.layout(e)}dispose(){this._history=void 0,this._onDidChangePattern.dispose(),this.enabledDisposables.dispose(),this.disposables.dispose()}}function tee(o,e){return o.position===e.position&&N9(o,e)}function N9(o,e){return o.node.element===e.node.element&&o.startIndex===e.startIndex&&o.height===e.height&&o.endIndex===e.endIndex}class iee{constructor(e=[]){this.stickyNodes=e}get count(){return this.stickyNodes.length}equal(e){return li(this.stickyNodes,e.stickyNodes,tee)}lastNodePartiallyVisible(){if(this.count===0)return!1;const e=this.stickyNodes[this.count-1];if(this.count===1)return e.position!==0;const t=this.stickyNodes[this.count-2];return t.position+t.height!==e.position}animationStateChanged(e){if(!li(this.stickyNodes,e.stickyNodes,N9)||this.count===0)return!1;const t=this.stickyNodes[this.count-1],i=e.stickyNodes[e.count-1];return t.position!==i.position}}class nee{constrainStickyScrollNodes(e,t,i){for(let n=0;ni||n>=t)return e.slice(0,n)}return e}}class GP extends z{constructor(e,t,i,n,s,r={}){super(),this.tree=e,this.model=t,this.view=i,this.treeDelegate=s,this.maxWidgetViewRatio=.4;const a=this.validateStickySettings(r);this.stickyScrollMaxItemCount=a.stickyScrollMaxItemCount,this.stickyScrollDelegate=r.stickyScrollDelegate??new nee,this._widget=this._register(new see(i.getScrollableElement(),i,e,n,s,r.accessibilityProvider)),this.onDidChangeHasFocus=this._widget.onDidChangeHasFocus,this.onContextMenu=this._widget.onContextMenu,this._register(i.onDidScroll(()=>this.update())),this._register(i.onDidChangeContentHeight(()=>this.update())),this._register(e.onDidChangeCollapseState(()=>this.update())),this.update()}get height(){return this._widget.height}getNodeAtHeight(e){let t;if(e===0?t=this.view.firstVisibleIndex:t=this.view.indexAt(e+this.view.scrollTop),!(t<0||t>=this.view.length))return this.view.element(t)}update(){const e=this.getNodeAtHeight(0);if(!e||this.tree.scrollTop===0){this._widget.setState(void 0);return}const t=this.findStickyState(e);this._widget.setState(t)}findStickyState(e){const t=[];let i=e,n=0,s=this.getNextStickyNode(i,void 0,n);for(;s&&(t.push(s),n+=s.height,!(t.length<=this.stickyScrollMaxItemCount&&(i=this.getNextVisibleNode(s),!i)));)s=this.getNextStickyNode(i,s.node,n);const r=this.constrainStickyNodes(t);return r.length?new iee(r):void 0}getNextVisibleNode(e){return this.getNodeAtHeight(e.position+e.height)}getNextStickyNode(e,t,i){const n=this.getAncestorUnderPrevious(e,t);if(n&&!(n===e&&(!this.nodeIsUncollapsedParent(e)||this.nodeTopAlignsWithStickyNodesBottom(e,i))))return this.createStickyScrollNode(n,i)}nodeTopAlignsWithStickyNodesBottom(e,t){const i=this.getNodeIndex(e),n=this.view.getElementTop(i),s=t;return this.view.scrollTop===n-s}createStickyScrollNode(e,t){const i=this.treeDelegate.getHeight(e),{startIndex:n,endIndex:s}=this.getNodeRange(e),r=this.calculateStickyNodePosition(s,t,i);return{node:e,position:r,height:i,startIndex:n,endIndex:s}}getAncestorUnderPrevious(e,t=void 0){let i=e,n=this.getParentNode(i);for(;n;){if(n===t)return i;i=n,n=this.getParentNode(i)}if(t===void 0)return i}calculateStickyNodePosition(e,t,i){let n=this.view.getRelativeTop(e);if(n===null&&this.view.firstVisibleIndex===e&&e+1l&&t<=l?l-i:t}constrainStickyNodes(e){if(e.length===0)return[];const t=this.view.renderHeight*this.maxWidgetViewRatio,i=e[e.length-1];if(e.length<=this.stickyScrollMaxItemCount&&i.position+i.height<=t)return e;const n=this.stickyScrollDelegate.constrainStickyScrollNodes(e,this.stickyScrollMaxItemCount,t);if(!n.length)return[];const s=n[n.length-1];if(n.length>this.stickyScrollMaxItemCount||s.position+s.height>t)throw new Error("stickyScrollDelegate violates constraints");return n}getParentNode(e){const t=this.model.getNodeLocation(e),i=this.model.getParentNodeLocation(t);return i?this.model.getNode(i):void 0}nodeIsUncollapsedParent(e){const t=this.model.getNodeLocation(e);return this.model.getListRenderCount(t)>1}getNodeIndex(e){const t=this.model.getNodeLocation(e);return this.model.getListIndex(t)}getNodeRange(e){const t=this.model.getNodeLocation(e),i=this.model.getListIndex(t);if(i<0)throw new Error("Node not found in tree");const n=this.model.getListRenderCount(t),s=i+n-1;return{startIndex:i,endIndex:s}}nodePositionTopBelowWidget(e){const t=[];let i=this.getParentNode(e);for(;i;)t.push(i),i=this.getParentNode(i);let n=0;for(let s=0;s0,i=!!e&&e.count>0;if(!t&&!i||t&&i&&this._previousState.equal(e))return;if(t!==i&&this.setVisible(i),!i){this._previousState=void 0,this._previousElements=[],this._previousStateDisposables.clear();return}const n=e.stickyNodes[e.count-1];if(this._previousState&&e.animationStateChanged(this._previousState))this._previousElements[this._previousState.count-1].style.top=`${n.position}px`;else{this._previousStateDisposables.clear();const s=Array(e.count);for(let r=e.count-1;r>=0;r--){const a=e.stickyNodes[r],{element:l,disposable:c}=this.createElement(a,r,e.count);s[r]=l,this._rootDomNode.appendChild(l),this._previousStateDisposables.add(c)}this.stickyScrollFocus.updateElements(s,e),this._previousElements=s}this._previousState=e,this._rootDomNode.style.height=`${n.position+n.height}px`}createElement(e,t,i){const n=e.startIndex,s=document.createElement("div");s.style.top=`${e.position}px`,this.tree.options.setRowHeight!==!1&&(s.style.height=`${e.height}px`),this.tree.options.setRowLineHeight!==!1&&(s.style.lineHeight=`${e.height}px`),s.classList.add("monaco-tree-sticky-row"),s.classList.add("monaco-list-row"),s.setAttribute("data-index",`${n}`),s.setAttribute("data-parity",n%2===0?"even":"odd"),s.setAttribute("id",this.view.getElementID(n));const r=this.setAccessibilityAttributes(s,e.node.element,t,i),a=this.treeDelegate.getTemplateId(e.node),l=this.treeRenderers.find(u=>u.templateId===a);if(!l)throw new Error(`No renderer found for template id ${a}`);let c=e.node;c===this.tree.getNode(this.tree.getNodeLocation(e.node))&&(c=new Proxy(e.node,{}));const d=l.renderTemplate(s);l.renderElement(c,e.startIndex,d,e.height);const h=_e(()=>{r.dispose(),l.disposeElement(c,e.startIndex,d,e.height),l.disposeTemplate(d),s.remove()});return{element:s,disposable:h}}setAccessibilityAttributes(e,t,i,n){if(!this.accessibilityProvider)return z.None;this.accessibilityProvider.getSetSize&&e.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(t,i,n))),this.accessibilityProvider.getPosInSet&&e.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(t,i))),this.accessibilityProvider.getRole&&e.setAttribute("role",this.accessibilityProvider.getRole(t)??"treeitem");const s=this.accessibilityProvider.getAriaLabel(t),r=s&&typeof s!="string"?s:wg(s),a=We(c=>{const d=c.readObservable(r);d?e.setAttribute("aria-label",d):e.removeAttribute("aria-label")});typeof s=="string"||s&&e.setAttribute("aria-label",s.get());const l=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(t);return typeof l=="number"&&e.setAttribute("aria-level",`${l}`),e.setAttribute("aria-selected",String(!1)),a}setVisible(e){this._rootDomNode.classList.toggle("empty",!e),e||this.stickyScrollFocus.updateElements([],void 0)}domFocus(){this.stickyScrollFocus.domFocus()}focusedLast(){return this.stickyScrollFocus.focusedLast()}dispose(){this.stickyScrollFocus.dispose(),this._previousStateDisposables.dispose(),this._rootDomNode.remove()}}class oee extends z{get domHasFocus(){return this._domHasFocus}set domHasFocus(e){e!==this._domHasFocus&&(this._onDidChangeHasFocus.fire(e),this._domHasFocus=e)}constructor(e,t){super(),this.container=e,this.view=t,this.focusedIndex=-1,this.elements=[],this._onDidChangeHasFocus=new A,this.onDidChangeHasFocus=this._onDidChangeHasFocus.event,this._onContextMenu=new A,this.onContextMenu=this._onContextMenu.event,this._domHasFocus=!1,this._register(U(this.container,"focus",()=>this.onFocus())),this._register(U(this.container,"blur",()=>this.onBlur())),this._register(this.view.onDidFocus(()=>this.toggleStickyScrollFocused(!1))),this._register(this.view.onKeyDown(i=>this.onKeyDown(i))),this._register(this.view.onMouseDown(i=>this.onMouseDown(i))),this._register(this.view.onContextMenu(i=>this.handleContextMenu(i)))}handleContextMenu(e){const t=e.browserEvent.target;if(!d_(t)&&!Jm(t)){this.focusedLast()&&this.view.domFocus();return}if(!Qa(e.browserEvent)){if(!this.state)throw new Error("Context menu should not be triggered when state is undefined");const r=this.state.stickyNodes.findIndex(a=>a.node.element===e.element?.element);if(r===-1)throw new Error("Context menu should not be triggered when element is not in sticky scroll widget");this.container.focus(),this.setFocus(r);return}if(!this.state||this.focusedIndex<0)throw new Error("Context menu key should not be triggered when focus is not in sticky scroll widget");const n=this.state.stickyNodes[this.focusedIndex].node.element,s=this.elements[this.focusedIndex];this._onContextMenu.fire({element:n,anchor:s,browserEvent:e.browserEvent,isStickyScroll:!0})}onKeyDown(e){if(this.domHasFocus&&this.state){if(e.key==="ArrowUp")this.setFocusedElement(Math.max(0,this.focusedIndex-1)),e.preventDefault(),e.stopPropagation();else if(e.key==="ArrowDown"||e.key==="ArrowRight"){if(this.focusedIndex>=this.state.count-1){const t=this.state.stickyNodes[this.state.count-1].startIndex+1;this.view.domFocus(),this.view.setFocus([t]),this.scrollNodeUnderWidget(t,this.state)}else this.setFocusedElement(this.focusedIndex+1);e.preventDefault(),e.stopPropagation()}}}onMouseDown(e){const t=e.browserEvent.target;!d_(t)&&!Jm(t)||(e.browserEvent.preventDefault(),e.browserEvent.stopPropagation())}updateElements(e,t){if(t&&t.count===0)throw new Error("Sticky scroll state must be undefined when there are no sticky nodes");if(t&&t.count!==e.length)throw new Error("Sticky scroll focus received illigel state");const i=this.focusedIndex;if(this.removeFocus(),this.elements=e,this.state=t,t){const n=bn(i,0,t.count-1);this.setFocus(n)}else this.domHasFocus&&this.view.domFocus();this.container.tabIndex=t?0:-1}setFocusedElement(e){const t=this.state;if(!t)throw new Error("Cannot set focus when state is undefined");if(this.setFocus(e),!(e1?t.stickyNodes[t.count-2]:void 0,s=this.view.getElementTop(e),r=n?n.position+n.height+i.height:i.height;this.view.scrollTop=s-r}domFocus(){if(!this.state)throw new Error("Cannot focus when state is undefined");this.container.focus()}focusedLast(){return this.state?this.view.getHTMLElement().classList.contains("sticky-scroll-focused"):!1}removeFocus(){this.focusedIndex!==-1&&(this.toggleElementFocus(this.elements[this.focusedIndex],!1),this.focusedIndex=-1)}setFocus(e){if(0>e)throw new Error("addFocus() can not remove focus");if(!this.state&&e>=0)throw new Error("Cannot set focus index when state is undefined");if(this.state&&e>=this.state.count)throw new Error("Cannot set focus index to an index that does not exist");const t=this.focusedIndex;t>=0&&this.toggleElementFocus(this.elements[t],!1),e>=0&&this.toggleElementFocus(this.elements[e],!0),this.focusedIndex=e}toggleElementFocus(e,t){this.toggleElementActiveFocus(e,t&&this.domHasFocus),this.toggleElementPassiveFocus(e,t)}toggleCurrentElementActiveFocus(e){this.focusedIndex!==-1&&this.toggleElementActiveFocus(this.elements[this.focusedIndex],e)}toggleElementActiveFocus(e,t){e.classList.toggle("focused",t)}toggleElementPassiveFocus(e,t){e.classList.toggle("passive-focused",t)}toggleStickyScrollFocused(e){this.view.getHTMLElement().classList.toggle("sticky-scroll-focused",e)}onFocus(){if(!this.state||this.elements.length===0)throw new Error("Cannot focus when state is undefined or elements are empty");this.domHasFocus=!0,this.toggleStickyScrollFocused(!0),this.toggleCurrentElementActiveFocus(!0),this.focusedIndex===-1&&this.setFocus(0)}onBlur(){this.domHasFocus=!1,this.toggleCurrentElementActiveFocus(!1)}dispose(){this.toggleStickyScrollFocused(!1),this._onDidChangeHasFocus.fire(!1),super.dispose()}}function Qb(o){let e=jd.Unknown;return rS(o.browserEvent.target,"monaco-tl-twistie","monaco-tl-row")?e=jd.Twistie:rS(o.browserEvent.target,"monaco-tl-contents","monaco-tl-row")?e=jd.Element:rS(o.browserEvent.target,"monaco-tree-type-filter","monaco-list")&&(e=jd.Filter),{browserEvent:o.browserEvent,element:o.element?o.element.element:null,target:e}}function ree(o){const e=d_(o.browserEvent.target);return{element:o.element?o.element.element:null,browserEvent:o.browserEvent,anchor:o.anchor,isStickyScroll:e}}function B1(o,e){e(o),o.children.forEach(t=>B1(t,e))}class GS{get nodeSet(){return this._nodeSet||(this._nodeSet=this.createNodeSet()),this._nodeSet}constructor(e,t){this.getFirstViewElementWithTrait=e,this.identityProvider=t,this.nodes=[],this._onDidChange=new A,this.onDidChange=this._onDidChange.event}set(e,t){!t?.__forceEvent&&li(this.nodes,e)||this._set(e,!1,t)}_set(e,t,i){if(this.nodes=[...e],this.elements=void 0,this._nodeSet=void 0,!t){const n=this;this._onDidChange.fire({get elements(){return n.get()},browserEvent:i})}}get(){return this.elements||(this.elements=this.nodes.map(e=>e.element)),[...this.elements]}getNodes(){return this.nodes}has(e){return this.nodeSet.has(e)}onDidModelSplice({insertedNodes:e,deletedNodes:t}){if(!this.identityProvider){const l=this.createNodeSet(),c=d=>l.delete(d);t.forEach(d=>B1(d,c)),this.set([...l.values()]);return}const i=new Set,n=l=>i.add(this.identityProvider.getId(l.element).toString());t.forEach(l=>B1(l,n));const s=new Map,r=l=>s.set(this.identityProvider.getId(l.element).toString(),l);e.forEach(l=>B1(l,r));const a=[];for(const l of this.nodes){const c=this.identityProvider.getId(l.element).toString();if(!i.has(c))a.push(l);else{const h=s.get(c);h&&h.visible&&a.push(h)}}if(this.nodes.length>0&&a.length===0){const l=this.getFirstViewElementWithTrait();l&&a.push(l)}this._set(a,!0)}createNodeSet(){const e=new Set;for(const t of this.nodes)e.add(t);return e}}class aee extends R7{constructor(e,t,i){super(e),this.tree=t,this.stickyScrollProvider=i}onViewPointer(e){if(E7(e.browserEvent.target)||pc(e.browserEvent.target)||Rm(e.browserEvent.target)||e.browserEvent.isHandledByList)return;const t=e.element;if(!t)return super.onViewPointer(e);if(this.isSelectionRangeChangeEvent(e)||this.isSelectionSingleChangeEvent(e))return super.onViewPointer(e);const i=e.browserEvent.target,n=i.classList.contains("monaco-tl-twistie")||i.classList.contains("monaco-icon-label")&&i.classList.contains("folder-icon")&&e.browserEvent.offsetX<16,s=Jm(e.browserEvent.target);let r=!1;if(s?r=!0:typeof this.tree.expandOnlyOnTwistieClick=="function"?r=this.tree.expandOnlyOnTwistieClick(t.element):r=!!this.tree.expandOnlyOnTwistieClick,s)this.handleStickyScrollMouseEvent(e,t);else{if(r&&!n&&e.browserEvent.detail!==2)return super.onViewPointer(e);if(!this.tree.expandOnDoubleClick&&e.browserEvent.detail===2)return super.onViewPointer(e)}if(t.collapsible&&(!s||n)){const a=this.tree.getNodeLocation(t),l=e.browserEvent.altKey;if(this.tree.setFocus([a]),this.tree.toggleCollapsed(a,l),n){e.browserEvent.isHandledByList=!0;return}}s||super.onViewPointer(e)}handleStickyScrollMouseEvent(e,t){if(hY(e.browserEvent.target)||uY(e.browserEvent.target))return;const i=this.stickyScrollProvider();if(!i)throw new Error("Sticky scroll controller not found");const n=this.list.indexOf(t),s=this.list.getElementTop(n),r=i.nodePositionTopBelowWidget(t);this.tree.scrollTop=s-r,this.list.domFocus(),this.list.setFocus([n]),this.list.setSelection([n])}onDoubleClick(e){e.browserEvent.target.classList.contains("monaco-tl-twistie")||!this.tree.expandOnDoubleClick||e.browserEvent.isHandledByList||super.onDoubleClick(e)}onMouseDown(e){const t=e.browserEvent.target;if(!d_(t)&&!Jm(t)){super.onMouseDown(e);return}}onContextMenu(e){const t=e.browserEvent.target;if(!d_(t)&&!Jm(t)){super.onContextMenu(e);return}}}class lee extends go{constructor(e,t,i,n,s,r,a,l){super(e,t,i,n,l),this.focusTrait=s,this.selectionTrait=r,this.anchorTrait=a}createMouseController(e){return new aee(this,e.tree,e.stickyScrollProvider)}splice(e,t,i=[]){if(super.splice(e,t,i),i.length===0)return;const n=[],s=[];let r;i.forEach((a,l)=>{this.focusTrait.has(a)&&n.push(e+l),this.selectionTrait.has(a)&&s.push(e+l),this.anchorTrait.has(a)&&(r=e+l)}),n.length>0&&super.setFocus(Eh([...super.getFocus(),...n])),s.length>0&&super.setSelection(Eh([...super.getSelection(),...s])),typeof r=="number"&&super.setAnchor(r)}setFocus(e,t,i=!1){super.setFocus(e,t),i||this.focusTrait.set(e.map(n=>this.element(n)),t)}setSelection(e,t,i=!1){super.setSelection(e,t),i||this.selectionTrait.set(e.map(n=>this.element(n)),t)}setAnchor(e,t=!1){super.setAnchor(e),t||(typeof e>"u"?this.anchorTrait.set([]):this.anchorTrait.set([this.element(e)]))}}class T9{get onDidScroll(){return this.view.onDidScroll}get onDidChangeFocus(){return this.eventBufferer.wrapEvent(this.focus.onDidChange)}get onDidChangeSelection(){return this.eventBufferer.wrapEvent(this.selection.onDidChange)}get onMouseDblClick(){return J.filter(J.map(this.view.onMouseDblClick,Qb),e=>e.target!==jd.Filter)}get onMouseOver(){return J.map(this.view.onMouseOver,Qb)}get onMouseOut(){return J.map(this.view.onMouseOut,Qb)}get onContextMenu(){return J.any(J.filter(J.map(this.view.onContextMenu,ree),e=>!e.isStickyScroll),this.stickyScrollController?.onContextMenu??J.None)}get onPointer(){return J.map(this.view.onPointer,Qb)}get onKeyDown(){return this.view.onKeyDown}get onDidFocus(){return this.view.onDidFocus}get onDidChangeModel(){return J.signal(this.model.onDidSplice)}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get findMode(){return this.findController?.mode??dl.Highlight}set findMode(e){this.findController&&(this.findController.mode=e)}get findMatchType(){return this.findController?.matchType??Uh.Fuzzy}set findMatchType(e){this.findController&&(this.findController.matchType=e)}get expandOnDoubleClick(){return typeof this._options.expandOnDoubleClick>"u"?!0:this._options.expandOnDoubleClick}get expandOnlyOnTwistieClick(){return typeof this._options.expandOnlyOnTwistieClick>"u"?!0:this._options.expandOnlyOnTwistieClick}get onDidDispose(){return this.view.onDidDispose}constructor(e,t,i,n,s={}){this._user=e,this._options=s,this.eventBufferer=new W_,this.onDidChangeFindOpenState=J.None,this.onDidChangeStickyScrollFocused=J.None,this.disposables=new X,this._onWillRefilter=new A,this.onWillRefilter=this._onWillRefilter.event,this._onDidUpdateOptions=new A,this.treeDelegate=new _2(i);const r=new VM,a=new VM,l=this.disposables.add(new XJ(a.event)),c=new dT;this.renderers=n.map(g=>new BD(g,()=>this.model,r.event,l,c,s));for(const g of this.renderers)this.disposables.add(g);let d;s.keyboardNavigationLabelProvider&&(d=new JJ(this,s.keyboardNavigationLabelProvider,s.filter),s={...s,filter:d},this.disposables.add(d)),this.focus=new GS(()=>this.view.getFocusedElements()[0],s.identityProvider),this.selection=new GS(()=>this.view.getSelectedElements()[0],s.identityProvider),this.anchor=new GS(()=>this.view.getAnchorElement(),s.identityProvider),this.view=new lee(e,t,this.treeDelegate,this.renderers,this.focus,this.selection,this.anchor,{...QJ(()=>this.model,s),tree:this,stickyScrollProvider:()=>this.stickyScrollController}),this.model=this.createModel(e,this.view,s),r.input=this.model.onDidChangeCollapseState;const h=J.forEach(this.model.onDidSplice,g=>{this.eventBufferer.bufferEvents(()=>{this.focus.onDidModelSplice(g),this.selection.onDidModelSplice(g)})},this.disposables);h(()=>null,null,this.disposables);const u=this.disposables.add(new A),f=this.disposables.add(new z_(0));if(this.disposables.add(J.any(h,this.focus.onDidChange,this.selection.onDidChange)(()=>{f.trigger(()=>{const g=new Set;for(const p of this.focus.getNodes())g.add(p);for(const p of this.selection.getNodes())g.add(p);u.fire([...g.values()])})})),a.input=u.event,s.keyboardSupport!==!1){const g=J.chain(this.view.onKeyDown,p=>p.filter(_=>!pc(_.target)).map(_=>new Nt(_)));J.chain(g,p=>p.filter(_=>_.keyCode===15))(this.onLeftArrow,this,this.disposables),J.chain(g,p=>p.filter(_=>_.keyCode===17))(this.onRightArrow,this,this.disposables),J.chain(g,p=>p.filter(_=>_.keyCode===10))(this.onSpace,this,this.disposables)}if((s.findWidgetEnabled??!0)&&s.keyboardNavigationLabelProvider&&s.contextViewProvider){const g=this.options.findWidgetStyles?{styles:this.options.findWidgetStyles}:void 0;this.findController=new eee(this,this.model,this.view,d,s.contextViewProvider,g),this.focusNavigationFilter=p=>this.findController.shouldAllowFocus(p),this.onDidChangeFindOpenState=this.findController.onDidChangeOpenState,this.disposables.add(this.findController),this.onDidChangeFindMode=this.findController.onDidChangeMode,this.onDidChangeFindMatchType=this.findController.onDidChangeMatchType}else this.onDidChangeFindMode=J.None,this.onDidChangeFindMatchType=J.None;s.enableStickyScroll&&(this.stickyScrollController=new GP(this,this.model,this.view,this.renderers,this.treeDelegate,s),this.onDidChangeStickyScrollFocused=this.stickyScrollController.onDidChangeHasFocus),this.styleElement=Vs(this.view.getHTMLElement()),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===Sg.Always)}updateOptions(e={}){this._options={...this._options,...e};for(const t of this.renderers)t.updateOptions(e);this.view.updateOptions(this._options),this.findController?.updateOptions(e),this.updateStickyScroll(e),this._onDidUpdateOptions.fire(this._options),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===Sg.Always)}get options(){return this._options}updateStickyScroll(e){!this.stickyScrollController&&this._options.enableStickyScroll?(this.stickyScrollController=new GP(this,this.model,this.view,this.renderers,this.treeDelegate,this._options),this.onDidChangeStickyScrollFocused=this.stickyScrollController.onDidChangeHasFocus):this.stickyScrollController&&!this._options.enableStickyScroll&&(this.onDidChangeStickyScrollFocused=J.None,this.stickyScrollController.dispose(),this.stickyScrollController=void 0),this.stickyScrollController?.updateOptions(e)}getHTMLElement(){return this.view.getHTMLElement()}get scrollTop(){return this.view.scrollTop}set scrollTop(e){this.view.scrollTop=e}get scrollHeight(){return this.view.scrollHeight}get renderHeight(){return this.view.renderHeight}get ariaLabel(){return this.view.ariaLabel}set ariaLabel(e){this.view.ariaLabel=e}domFocus(){this.stickyScrollController?.focusedLast()?this.stickyScrollController.domFocus():this.view.domFocus()}layout(e,t){this.view.layout(e,t),Pg(t)&&this.findController?.layout(t)}style(e){const t=`.${this.view.domId}`,i=[];e.treeIndentGuidesStroke&&(i.push(`.monaco-list${t}:hover .monaco-tl-indent > .indent-guide, .monaco-list${t}.always .monaco-tl-indent > .indent-guide { border-color: ${e.treeInactiveIndentGuidesStroke}; }`),i.push(`.monaco-list${t} .monaco-tl-indent > .indent-guide.active { border-color: ${e.treeIndentGuidesStroke}; }`));const n=e.treeStickyScrollBackground??e.listBackground;n&&(i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container { background-color: ${n}; }`),i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row { background-color: ${n}; }`)),e.treeStickyScrollBorder&&i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container { border-bottom: 1px solid ${e.treeStickyScrollBorder}; }`),e.treeStickyScrollShadow&&i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow { box-shadow: ${e.treeStickyScrollShadow} 0 6px 6px -6px inset; height: 3px; }`),e.listFocusForeground&&(i.push(`.monaco-list${t}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused { color: ${e.listFocusForeground}; }`),i.push(`.monaco-list${t}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused { color: inherit; }`));const s=vl(e.listFocusAndSelectionOutline,vl(e.listSelectionOutline,e.listFocusOutline??""));s&&(i.push(`.monaco-list${t}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused.selected { outline: 1px solid ${s}; outline-offset: -1px;}`),i.push(`.monaco-list${t}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused.selected { outline: inherit;}`)),e.listFocusOutline&&(i.push(`.monaco-list${t}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; }`),i.push(`.monaco-list${t}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused { outline: inherit; }`),i.push(`.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.passive-focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; }`),i.push(`.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused.sticky-scroll-focused .monaco-list-rows .monaco-list-row.focused { outline: inherit; }`),i.push(`.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused:not(.sticky-scroll-focused) .monaco-tree-sticky-container .monaco-list-rows .monaco-list-row.focused { outline: inherit; }`)),this.styleElement.textContent=i.join(` +`),this.view.style(e)}getParentElement(e){const t=this.model.getParentNodeLocation(e);return this.model.getNode(t).element}getFirstElementChild(e){return this.model.getFirstElementChild(e)}getNode(e){return this.model.getNode(e)}getNodeLocation(e){return this.model.getNodeLocation(e)}collapse(e,t=!1){return this.model.setCollapsed(e,!0,t)}expand(e,t=!1){return this.model.setCollapsed(e,!1,t)}toggleCollapsed(e,t=!1){return this.model.setCollapsed(e,void 0,t)}isCollapsible(e){return this.model.isCollapsible(e)}setCollapsible(e,t){return this.model.setCollapsible(e,t)}isCollapsed(e){return this.model.isCollapsed(e)}refilter(){this._onWillRefilter.fire(void 0),this.model.refilter()}setSelection(e,t){this.eventBufferer.bufferEvents(()=>{const i=e.map(s=>this.model.getNode(s));this.selection.set(i,t);const n=e.map(s=>this.model.getListIndex(s)).filter(s=>s>-1);this.view.setSelection(n,t,!0)})}getSelection(){return this.selection.get()}setFocus(e,t){this.eventBufferer.bufferEvents(()=>{const i=e.map(s=>this.model.getNode(s));this.focus.set(i,t);const n=e.map(s=>this.model.getListIndex(s)).filter(s=>s>-1);this.view.setFocus(n,t,!0)})}focusNext(e=1,t=!1,i,n=Qa(i)&&i.altKey?void 0:this.focusNavigationFilter){this.view.focusNext(e,t,i,n)}focusPrevious(e=1,t=!1,i,n=Qa(i)&&i.altKey?void 0:this.focusNavigationFilter){this.view.focusPrevious(e,t,i,n)}focusNextPage(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){return this.view.focusNextPage(e,t)}focusPreviousPage(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){return this.view.focusPreviousPage(e,t,()=>this.stickyScrollController?.height??0)}focusLast(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){this.view.focusLast(e,t)}focusFirst(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){this.view.focusFirst(e,t)}getFocus(){return this.focus.get()}reveal(e,t){this.model.expandTo(e);const i=this.model.getListIndex(e);if(i!==-1)if(!this.stickyScrollController)this.view.reveal(i,t);else{const n=this.stickyScrollController.nodePositionTopBelowWidget(this.getNode(e));this.view.reveal(i,t,n)}}onLeftArrow(e){e.preventDefault(),e.stopPropagation();const t=this.view.getFocusedElements();if(t.length===0)return;const i=t[0],n=this.model.getNodeLocation(i);if(!this.model.setCollapsed(n,!0)){const r=this.model.getParentNodeLocation(n);if(!r)return;const a=this.model.getListIndex(r);this.view.reveal(a),this.view.setFocus([a])}}onRightArrow(e){e.preventDefault(),e.stopPropagation();const t=this.view.getFocusedElements();if(t.length===0)return;const i=t[0],n=this.model.getNodeLocation(i);if(!this.model.setCollapsed(n,!1)){if(!i.children.some(l=>l.visible))return;const[r]=this.view.getFocus(),a=r+1;this.view.reveal(a),this.view.setFocus([a])}}onSpace(e){e.preventDefault(),e.stopPropagation();const t=this.view.getFocusedElements();if(t.length===0)return;const i=t[0],n=this.model.getNodeLocation(i),s=e.browserEvent.altKey;this.model.setCollapsed(n,void 0,s)}dispose(){xt(this.disposables),this.stickyScrollController?.dispose(),this.view.dispose()}}class b2{constructor(e,t,i={}){this.user=e,this.rootRef=null,this.nodes=new Map,this.nodesByIdentity=new Map,this.model=new GJ(e,t,null,i),this.onDidSplice=this.model.onDidSplice,this.onDidChangeCollapseState=this.model.onDidChangeCollapseState,this.onDidChangeRenderNodeCount=this.model.onDidChangeRenderNodeCount,i.sorter&&(this.sorter={compare(n,s){return i.sorter.compare(n.element,s.element)}}),this.identityProvider=i.identityProvider}setChildren(e,t=st.empty(),i={}){const n=this.getElementLocation(e);this._setChildren(n,this.preserveCollapseState(t),i)}_setChildren(e,t=st.empty(),i){const n=new Set,s=new Set,r=l=>{if(l.element===null)return;const c=l;if(n.add(c.element),this.nodes.set(c.element,c),this.identityProvider){const d=this.identityProvider.getId(c.element).toString();s.add(d),this.nodesByIdentity.set(d,c)}i.onDidCreateNode?.(c)},a=l=>{if(l.element===null)return;const c=l;if(n.has(c.element)||this.nodes.delete(c.element),this.identityProvider){const d=this.identityProvider.getId(c.element).toString();s.has(d)||this.nodesByIdentity.delete(d)}i.onDidDeleteNode?.(c)};this.model.splice([...e,0],Number.MAX_VALUE,t,{...i,onDidCreateNode:r,onDidDeleteNode:a})}preserveCollapseState(e=st.empty()){return this.sorter&&(e=[...e].sort(this.sorter.compare.bind(this.sorter))),st.map(e,t=>{let i=this.nodes.get(t.element);if(!i&&this.identityProvider){const r=this.identityProvider.getId(t.element).toString();i=this.nodesByIdentity.get(r)}if(!i){let r;return typeof t.collapsed>"u"?r=void 0:t.collapsed===ys.Collapsed||t.collapsed===ys.PreserveOrCollapsed?r=!0:t.collapsed===ys.Expanded||t.collapsed===ys.PreserveOrExpanded?r=!1:r=!!t.collapsed,{...t,children:this.preserveCollapseState(t.children),collapsed:r}}const n=typeof t.collapsible=="boolean"?t.collapsible:i.collapsible;let s;return typeof t.collapsed>"u"||t.collapsed===ys.PreserveOrCollapsed||t.collapsed===ys.PreserveOrExpanded?s=i.collapsed:t.collapsed===ys.Collapsed?s=!0:t.collapsed===ys.Expanded?s=!1:s=!!t.collapsed,{...t,collapsible:n,collapsed:s,children:this.preserveCollapseState(t.children)}})}rerender(e){const t=this.getElementLocation(e);this.model.rerender(t)}getFirstElementChild(e=null){const t=this.getElementLocation(e);return this.model.getFirstElementChild(t)}has(e){return this.nodes.has(e)}getListIndex(e){const t=this.getElementLocation(e);return this.model.getListIndex(t)}getListRenderCount(e){const t=this.getElementLocation(e);return this.model.getListRenderCount(t)}isCollapsible(e){const t=this.getElementLocation(e);return this.model.isCollapsible(t)}setCollapsible(e,t){const i=this.getElementLocation(e);return this.model.setCollapsible(i,t)}isCollapsed(e){const t=this.getElementLocation(e);return this.model.isCollapsed(t)}setCollapsed(e,t,i){const n=this.getElementLocation(e);return this.model.setCollapsed(n,t,i)}expandTo(e){const t=this.getElementLocation(e);this.model.expandTo(t)}refilter(){this.model.refilter()}getNode(e=null){if(e===null)return this.model.getNode(this.model.rootRef);const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);return t}getNodeLocation(e){return e.element}getParentNodeLocation(e){if(e===null)throw new Ds(this.user,"Invalid getParentNodeLocation call");const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);const i=this.model.getNodeLocation(t),n=this.model.getParentNodeLocation(i);return this.model.getNode(n).element}getElementLocation(e){if(e===null)return[];const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);return this.model.getNodeLocation(t)}}function W1(o){const e=[o.element],t=o.incompressible||!1;return{element:{elements:e,incompressible:t},children:st.map(st.from(o.children),W1),collapsible:o.collapsible,collapsed:o.collapsed}}function H1(o){const e=[o.element],t=o.incompressible||!1;let i,n;for(;[n,i]=st.consume(st.from(o.children),2),!(n.length!==1||n[0].incompressible);)o=n[0],e.push(o.element);return{element:{elements:e,incompressible:t},children:st.map(st.concat(n,i),H1),collapsible:o.collapsible,collapsed:o.collapsed}}function WD(o,e=0){let t;return eWD(i,0)),e===0&&o.element.incompressible?{element:o.element.elements[e],children:t,incompressible:!0,collapsible:o.collapsible,collapsed:o.collapsed}:{element:o.element.elements[e],children:t,collapsible:o.collapsible,collapsed:o.collapsed}}function ZP(o){return WD(o,0)}function M9(o,e,t){return o.element===e?{...o,children:t}:{...o,children:st.map(st.from(o.children),i=>M9(i,e,t))}}const cee=o=>({getId(e){return e.elements.map(t=>o.getId(t).toString()).join("\0")}});class dee{get onDidSplice(){return this.model.onDidSplice}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get onDidChangeRenderNodeCount(){return this.model.onDidChangeRenderNodeCount}constructor(e,t,i={}){this.user=e,this.rootRef=null,this.nodes=new Map,this.model=new b2(e,t,i),this.enabled=typeof i.compressionEnabled>"u"?!0:i.compressionEnabled,this.identityProvider=i.identityProvider}setChildren(e,t=st.empty(),i){const n=i.diffIdentityProvider&&cee(i.diffIdentityProvider);if(e===null){const g=st.map(t,this.enabled?H1:W1);this._setChildren(null,g,{diffIdentityProvider:n,diffDepth:1/0});return}const s=this.nodes.get(e);if(!s)throw new Ds(this.user,"Unknown compressed tree node");const r=this.model.getNode(s),a=this.model.getParentNodeLocation(s),l=this.model.getNode(a),c=ZP(r),d=M9(c,e,t),h=(this.enabled?H1:W1)(d),u=i.diffIdentityProvider?((g,p)=>i.diffIdentityProvider.getId(g)===i.diffIdentityProvider.getId(p)):void 0;if(li(h.element.elements,r.element.elements,u)){this._setChildren(s,h.children||st.empty(),{diffIdentityProvider:n,diffDepth:1});return}const f=l.children.map(g=>g===r?h:g);this._setChildren(l.element,f,{diffIdentityProvider:n,diffDepth:r.depth-l.depth})}isCompressionEnabled(){return this.enabled}setCompressionEnabled(e){if(e===this.enabled)return;this.enabled=e;const i=this.model.getNode().children,n=st.map(i,ZP),s=st.map(n,e?H1:W1);this._setChildren(null,s,{diffIdentityProvider:this.identityProvider,diffDepth:1/0})}_setChildren(e,t,i){const n=new Set,s=a=>{for(const l of a.element.elements)n.add(l),this.nodes.set(l,a.element)},r=a=>{for(const l of a.element.elements)n.has(l)||this.nodes.delete(l)};this.model.setChildren(e,t,{...i,onDidCreateNode:s,onDidDeleteNode:r})}has(e){return this.nodes.has(e)}getListIndex(e){const t=this.getCompressedNode(e);return this.model.getListIndex(t)}getListRenderCount(e){const t=this.getCompressedNode(e);return this.model.getListRenderCount(t)}getNode(e){if(typeof e>"u")return this.model.getNode();const t=this.getCompressedNode(e);return this.model.getNode(t)}getNodeLocation(e){const t=this.model.getNodeLocation(e);return t===null?null:t.elements[t.elements.length-1]}getParentNodeLocation(e){const t=this.getCompressedNode(e),i=this.model.getParentNodeLocation(t);return i===null?null:i.elements[i.elements.length-1]}getFirstElementChild(e){const t=this.getCompressedNode(e);return this.model.getFirstElementChild(t)}isCollapsible(e){const t=this.getCompressedNode(e);return this.model.isCollapsible(t)}setCollapsible(e,t){const i=this.getCompressedNode(e);return this.model.setCollapsible(i,t)}isCollapsed(e){const t=this.getCompressedNode(e);return this.model.isCollapsed(t)}setCollapsed(e,t,i){const n=this.getCompressedNode(e);return this.model.setCollapsed(n,t,i)}expandTo(e){const t=this.getCompressedNode(e);this.model.expandTo(t)}rerender(e){const t=this.getCompressedNode(e);this.model.rerender(t)}refilter(){this.model.refilter()}getCompressedNode(e){if(e===null)return null;const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);return t}}const hee=o=>o[o.length-1];class C2{get element(){return this.node.element===null?null:this.unwrapper(this.node.element)}get children(){return this.node.children.map(e=>new C2(this.unwrapper,e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e,t){this.unwrapper=e,this.node=t}}function uee(o,e){return{splice(t,i,n){e.splice(t,i,n.map(s=>o.map(s)))},updateElementHeight(t,i){e.updateElementHeight(t,i)}}}function fee(o,e){return{...e,identityProvider:e.identityProvider&&{getId(t){return e.identityProvider.getId(o(t))}},sorter:e.sorter&&{compare(t,i){return e.sorter.compare(t.elements[0],i.elements[0])}},filter:e.filter&&{filter(t,i){return e.filter.filter(o(t),i)}}}}class gee{get onDidSplice(){return J.map(this.model.onDidSplice,({insertedNodes:e,deletedNodes:t})=>({insertedNodes:e.map(i=>this.nodeMapper.map(i)),deletedNodes:t.map(i=>this.nodeMapper.map(i))}))}get onDidChangeCollapseState(){return J.map(this.model.onDidChangeCollapseState,({node:e,deep:t})=>({node:this.nodeMapper.map(e),deep:t}))}get onDidChangeRenderNodeCount(){return J.map(this.model.onDidChangeRenderNodeCount,e=>this.nodeMapper.map(e))}constructor(e,t,i={}){this.rootRef=null,this.elementMapper=i.elementMapper||hee;const n=s=>this.elementMapper(s.elements);this.nodeMapper=new m2(s=>new C2(n,s)),this.model=new dee(e,uee(this.nodeMapper,t),fee(n,i))}setChildren(e,t=st.empty(),i={}){this.model.setChildren(e,t,i)}isCompressionEnabled(){return this.model.isCompressionEnabled()}setCompressionEnabled(e){this.model.setCompressionEnabled(e)}has(e){return this.model.has(e)}getListIndex(e){return this.model.getListIndex(e)}getListRenderCount(e){return this.model.getListRenderCount(e)}getNode(e){return this.nodeMapper.map(this.model.getNode(e))}getNodeLocation(e){return e.element}getParentNodeLocation(e){return this.model.getParentNodeLocation(e)}getFirstElementChild(e){const t=this.model.getFirstElementChild(e);return t===null||typeof t>"u"?t:this.elementMapper(t.elements)}isCollapsible(e){return this.model.isCollapsible(e)}setCollapsible(e,t){return this.model.setCollapsible(e,t)}isCollapsed(e){return this.model.isCollapsed(e)}setCollapsed(e,t,i){return this.model.setCollapsed(e,t,i)}expandTo(e){return this.model.expandTo(e)}rerender(e){return this.model.rerender(e)}refilter(){return this.model.refilter()}getCompressedTreeNode(e=null){return this.model.getNode(e)}}var mee=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};class v2 extends T9{get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}constructor(e,t,i,n,s={}){super(e,t,i,n,s),this.user=e}setChildren(e,t=st.empty(),i){this.model.setChildren(e,t,i)}rerender(e){if(e===void 0){this.view.rerender();return}this.model.rerender(e)}hasElement(e){return this.model.has(e)}createModel(e,t,i){return new b2(e,t,i)}}class R9{get compressedTreeNodeProvider(){return this._compressedTreeNodeProvider()}constructor(e,t,i){this._compressedTreeNodeProvider=e,this.stickyScrollDelegate=t,this.renderer=i,this.templateId=i.templateId,i.onDidChangeTwistieState&&(this.onDidChangeTwistieState=i.onDidChangeTwistieState)}renderTemplate(e){return{compressedTreeNode:void 0,data:this.renderer.renderTemplate(e)}}renderElement(e,t,i,n){let s=this.stickyScrollDelegate.getCompressedNode(e);s||(s=this.compressedTreeNodeProvider.getCompressedTreeNode(e.element)),s.element.elements.length===1?(i.compressedTreeNode=void 0,this.renderer.renderElement(e,t,i.data,n)):(i.compressedTreeNode=s,this.renderer.renderCompressedElements(s,t,i.data,n))}disposeElement(e,t,i,n){i.compressedTreeNode?this.renderer.disposeCompressedElements?.(i.compressedTreeNode,t,i.data,n):this.renderer.disposeElement?.(e,t,i.data,n)}disposeTemplate(e){this.renderer.disposeTemplate(e.data)}renderTwistie(e,t){return this.renderer.renderTwistie?this.renderer.renderTwistie(e,t):!1}}mee([Jt],R9.prototype,"compressedTreeNodeProvider",null);class pee{constructor(e){this.modelProvider=e,this.compressedStickyNodes=new Map}getCompressedNode(e){return this.compressedStickyNodes.get(e)}constrainStickyScrollNodes(e,t,i){if(this.compressedStickyNodes.clear(),e.length===0)return[];for(let n=0;ni||n>=t-1&&tthis,a=new pee(()=>this.model),l=n.map(c=>new R9(r,a,c));super(e,t,i,l,{..._ee(r,s),stickyScrollDelegate:a})}setChildren(e,t=st.empty(),i){this.model.setChildren(e,t,i)}createModel(e,t,i){return new gee(e,t,i)}updateOptions(e={}){super.updateOptions(e),typeof e.compressionEnabled<"u"&&this.model.setCompressionEnabled(e.compressionEnabled)}getCompressedTreeNode(e=null){return this.model.getCompressedTreeNode(e)}}function ZS(o){return{...o,children:[],refreshPromise:void 0,stale:!0,slow:!1,forceExpanded:!1}}function HD(o,e){return e.parent?e.parent===o?!0:HD(o,e.parent):!1}function bee(o,e){return o===e||HD(o,e)||HD(e,o)}class w2{get element(){return this.node.element.element}get children(){return this.node.children.map(e=>new w2(e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e){this.node=e}}class Cee{constructor(e,t,i){this.renderer=e,this.nodeMapper=t,this.onDidChangeTwistieState=i,this.renderedNodes=new Map,this.templateId=e.templateId}renderTemplate(e){return{templateData:this.renderer.renderTemplate(e)}}renderElement(e,t,i,n){this.renderer.renderElement(this.nodeMapper.map(e),t,i.templateData,n)}renderTwistie(e,t){return e.slow?(t.classList.add(...Ee.asClassNameArray(ie.treeItemLoading)),!0):(t.classList.remove(...Ee.asClassNameArray(ie.treeItemLoading)),!1)}disposeElement(e,t,i,n){this.renderer.disposeElement?.(this.nodeMapper.map(e),t,i.templateData,n)}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}dispose(){this.renderedNodes.clear()}}function YP(o){return{browserEvent:o.browserEvent,elements:o.elements.map(e=>e.element)}}function QP(o){return{browserEvent:o.browserEvent,element:o.element&&o.element.element,target:o.target}}class vee extends J_{constructor(e){super(e.elements.map(t=>t.element)),this.data=e}}function YS(o){return o instanceof J_?new vee(o):o}class wee{constructor(e){this.dnd=e}getDragURI(e){return this.dnd.getDragURI(e.element)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map(i=>i.element),t)}onDragStart(e,t){this.dnd.onDragStart?.(YS(e),t)}onDragOver(e,t,i,n,s,r=!0){return this.dnd.onDragOver(YS(e),t&&t.element,i,n,s)}drop(e,t,i,n,s){this.dnd.drop(YS(e),t&&t.element,i,n,s)}onDragEnd(e){this.dnd.onDragEnd?.(e)}dispose(){this.dnd.dispose()}}function P9(o){return o&&{...o,collapseByDefault:!0,identityProvider:o.identityProvider&&{getId(e){return o.identityProvider.getId(e.element)}},dnd:o.dnd&&new wee(o.dnd),multipleSelectionController:o.multipleSelectionController&&{isSelectionSingleChangeEvent(e){return o.multipleSelectionController.isSelectionSingleChangeEvent({...e,element:e.element})},isSelectionRangeChangeEvent(e){return o.multipleSelectionController.isSelectionRangeChangeEvent({...e,element:e.element})}},accessibilityProvider:o.accessibilityProvider&&{...o.accessibilityProvider,getPosInSet:void 0,getSetSize:void 0,getRole:o.accessibilityProvider.getRole?e=>o.accessibilityProvider.getRole(e.element):()=>"treeitem",isChecked:o.accessibilityProvider.isChecked?e=>!!o.accessibilityProvider?.isChecked(e.element):void 0,getAriaLabel(e){return o.accessibilityProvider.getAriaLabel(e.element)},getWidgetAriaLabel(){return o.accessibilityProvider.getWidgetAriaLabel()},getWidgetRole:o.accessibilityProvider.getWidgetRole?()=>o.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:o.accessibilityProvider.getAriaLevel&&(e=>o.accessibilityProvider.getAriaLevel(e.element)),getActiveDescendantId:o.accessibilityProvider.getActiveDescendantId&&(e=>o.accessibilityProvider.getActiveDescendantId(e.element))},filter:o.filter&&{filter(e,t){return o.filter.filter(e.element,t)}},keyboardNavigationLabelProvider:o.keyboardNavigationLabelProvider&&{...o.keyboardNavigationLabelProvider,getKeyboardNavigationLabel(e){return o.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e.element)}},sorter:void 0,expandOnlyOnTwistieClick:typeof o.expandOnlyOnTwistieClick>"u"?void 0:typeof o.expandOnlyOnTwistieClick!="function"?o.expandOnlyOnTwistieClick:(e=>o.expandOnlyOnTwistieClick(e.element)),defaultFindVisibility:e=>e.hasChildren&&e.stale?1:typeof o.defaultFindVisibility=="number"?o.defaultFindVisibility:typeof o.defaultFindVisibility>"u"?2:o.defaultFindVisibility(e.element)}}function VD(o,e){e(o),o.children.forEach(t=>VD(t,e))}class O9{get onDidScroll(){return this.tree.onDidScroll}get onDidChangeFocus(){return J.map(this.tree.onDidChangeFocus,YP)}get onDidChangeSelection(){return J.map(this.tree.onDidChangeSelection,YP)}get onMouseDblClick(){return J.map(this.tree.onMouseDblClick,QP)}get onPointer(){return J.map(this.tree.onPointer,QP)}get onDidFocus(){return this.tree.onDidFocus}get onDidChangeModel(){return this.tree.onDidChangeModel}get onDidChangeCollapseState(){return this.tree.onDidChangeCollapseState}get onDidChangeFindOpenState(){return this.tree.onDidChangeFindOpenState}get onDidChangeStickyScrollFocused(){return this.tree.onDidChangeStickyScrollFocused}get onDidDispose(){return this.tree.onDidDispose}constructor(e,t,i,n,s,r={}){this.user=e,this.dataSource=s,this.nodes=new Map,this.subTreeRefreshPromises=new Map,this.refreshPromises=new Map,this._onDidRender=new A,this._onDidChangeNodeSlowState=new A,this.nodeMapper=new m2(a=>new w2(a)),this.disposables=new X,this.identityProvider=r.identityProvider,this.autoExpandSingleChildren=typeof r.autoExpandSingleChildren>"u"?!1:r.autoExpandSingleChildren,this.sorter=r.sorter,this.getDefaultCollapseState=a=>r.collapseByDefault?r.collapseByDefault(a)?ys.PreserveOrCollapsed:ys.PreserveOrExpanded:void 0,this.tree=this.createTree(e,t,i,n,r),this.onDidChangeFindMode=this.tree.onDidChangeFindMode,this.onDidChangeFindMatchType=this.tree.onDidChangeFindMatchType,this.root=ZS({element:void 0,parent:null,hasChildren:!0,defaultCollapseState:void 0}),this.identityProvider&&(this.root={...this.root,id:null}),this.nodes.set(null,this.root),this.tree.onDidChangeCollapseState(this._onDidChangeCollapseState,this,this.disposables)}createTree(e,t,i,n,s){const r=new _2(i),a=n.map(c=>new Cee(c,this.nodeMapper,this._onDidChangeNodeSlowState.event)),l=P9(s)||{};return new v2(e,t,r,a,l)}updateOptions(e={}){this.tree.updateOptions(e)}getHTMLElement(){return this.tree.getHTMLElement()}get scrollTop(){return this.tree.scrollTop}set scrollTop(e){this.tree.scrollTop=e}get scrollHeight(){return this.tree.scrollHeight}get renderHeight(){return this.tree.renderHeight}domFocus(){this.tree.domFocus()}layout(e,t){this.tree.layout(e,t)}style(e){this.tree.style(e)}getInput(){return this.root.element}async setInput(e,t){this.refreshPromises.forEach(n=>n.cancel()),this.refreshPromises.clear(),this.root.element=e;const i=t&&{viewState:t,focus:[],selection:[]};await this._updateChildren(e,!0,!1,i),i&&(this.tree.setFocus(i.focus),this.tree.setSelection(i.selection)),t&&typeof t.scrollTop=="number"&&(this.scrollTop=t.scrollTop)}async _updateChildren(e=this.root.element,t=!0,i=!1,n,s){if(typeof this.root.element>"u")throw new Ds(this.user,"Tree input not set");this.root.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event));const r=this.getDataNode(e);if(await this.refreshAndRenderNode(r,t,n,s),i)try{this.tree.rerender(r)}catch{}}rerender(e){if(e===void 0||e===this.root.element){this.tree.rerender();return}const t=this.getDataNode(e);this.tree.rerender(t)}getNode(e=this.root.element){const t=this.getDataNode(e),i=this.tree.getNode(t===this.root?null:t);return this.nodeMapper.map(i)}collapse(e,t=!1){const i=this.getDataNode(e);return this.tree.collapse(i===this.root?null:i,t)}async expand(e,t=!1){if(typeof this.root.element>"u")throw new Ds(this.user,"Tree input not set");this.root.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event));const i=this.getDataNode(e);if(this.tree.hasElement(i)&&!this.tree.isCollapsible(i)||(i.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event)),i!==this.root&&!i.refreshPromise&&!this.tree.isCollapsed(i)))return!1;const n=this.tree.expand(i===this.root?null:i,t);return i.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event)),n}setSelection(e,t){const i=e.map(n=>this.getDataNode(n));this.tree.setSelection(i,t)}getSelection(){return this.tree.getSelection().map(t=>t.element)}setFocus(e,t){const i=e.map(n=>this.getDataNode(n));this.tree.setFocus(i,t)}getFocus(){return this.tree.getFocus().map(t=>t.element)}reveal(e,t){this.tree.reveal(this.getDataNode(e),t)}getParentElement(e){const t=this.tree.getParentElement(this.getDataNode(e));return t&&t.element}getFirstElementChild(e=this.root.element){const t=this.getDataNode(e),i=this.tree.getFirstElementChild(t===this.root?null:t);return i&&i.element}getDataNode(e){const t=this.nodes.get(e===this.root.element?null:e);if(!t)throw new Ds(this.user,`Data tree node not found: ${e}`);return t}async refreshAndRenderNode(e,t,i,n){await this.refreshNode(e,t,i),!this.disposables.isDisposed&&this.render(e,i,n)}async refreshNode(e,t,i){let n;if(this.subTreeRefreshPromises.forEach((s,r)=>{!n&&bee(r,e)&&(n=s.then(()=>this.refreshNode(e,t,i)))}),n)return n;if(e!==this.root&&this.tree.getNode(e).collapsed){e.hasChildren=!!this.dataSource.hasChildren(e.element),e.stale=!0,this.setChildren(e,[],t,i);return}return this.doRefreshSubTree(e,t,i)}async doRefreshSubTree(e,t,i){let n;e.refreshPromise=new Promise(s=>n=s),this.subTreeRefreshPromises.set(e,e.refreshPromise),e.refreshPromise.finally(()=>{e.refreshPromise=void 0,this.subTreeRefreshPromises.delete(e)});try{const s=await this.doRefreshNode(e,t,i);e.stale=!1,await Wx.settled(s.map(r=>this.doRefreshSubTree(r,t,i)))}finally{n()}}async doRefreshNode(e,t,i){e.hasChildren=!!this.dataSource.hasChildren(e.element);let n;if(!e.hasChildren)n=Promise.resolve(st.empty());else{const s=this.doGetChildren(e);if(PM(s))n=Promise.resolve(s);else{const r=og(800);r.then(()=>{e.slow=!0,this._onDidChangeNodeSlowState.fire(e)},a=>null),n=s.finally(()=>r.cancel())}}try{const s=await n;return this.setChildren(e,s,t,i)}catch(s){if(e!==this.root&&this.tree.hasElement(e)&&this.tree.collapse(e),$c(s))return[];throw s}finally{e.slow&&(e.slow=!1,this._onDidChangeNodeSlowState.fire(e))}}doGetChildren(e){let t=this.refreshPromises.get(e);if(t)return t;const i=this.dataSource.getChildren(e.element);return PM(i)?this.processChildren(i):(t=wa(async()=>this.processChildren(await i)),this.refreshPromises.set(e,t),t.finally(()=>{this.refreshPromises.delete(e)}))}_onDidChangeCollapseState({node:e,deep:t}){e.element!==null&&!e.collapsed&&e.element.stale&&(t?this.collapse(e.element.element):this.refreshAndRenderNode(e.element,!1).catch(Ze))}setChildren(e,t,i,n){const s=[...t];if(e.children.length===0&&s.length===0)return[];const r=new Map,a=new Map;for(const d of e.children)r.set(d.element,d),this.identityProvider&&a.set(d.id,{node:d,collapsed:this.tree.hasElement(d)&&this.tree.isCollapsed(d)});const l=[],c=s.map(d=>{const h=!!this.dataSource.hasChildren(d);if(!this.identityProvider){const p=ZS({element:d,parent:e,hasChildren:h,defaultCollapseState:this.getDefaultCollapseState(d)});return h&&p.defaultCollapseState===ys.PreserveOrExpanded&&l.push(p),p}const u=this.identityProvider.getId(d).toString(),f=a.get(u);if(f){const p=f.node;return r.delete(p.element),this.nodes.delete(p.element),this.nodes.set(d,p),p.element=d,p.hasChildren=h,i?f.collapsed?(p.children.forEach(_=>VD(_,b=>this.nodes.delete(b.element))),p.children.splice(0,p.children.length),p.stale=!0):l.push(p):h&&!f.collapsed&&l.push(p),p}const g=ZS({element:d,parent:e,id:u,hasChildren:h,defaultCollapseState:this.getDefaultCollapseState(d)});return n&&n.viewState.focus&&n.viewState.focus.indexOf(u)>-1&&n.focus.push(g),n&&n.viewState.selection&&n.viewState.selection.indexOf(u)>-1&&n.selection.push(g),(n&&n.viewState.expanded&&n.viewState.expanded.indexOf(u)>-1||h&&g.defaultCollapseState===ys.PreserveOrExpanded)&&l.push(g),g});for(const d of r.values())VD(d,h=>this.nodes.delete(h.element));for(const d of c)this.nodes.set(d.element,d);return e.children.splice(0,e.children.length,...c),e!==this.root&&this.autoExpandSingleChildren&&c.length===1&&l.length===0&&(c[0].forceExpanded=!0,l.push(c[0])),l}render(e,t,i){const n=e.children.map(r=>this.asTreeElement(r,t)),s=i&&{...i,diffIdentityProvider:i.diffIdentityProvider&&{getId(r){return i.diffIdentityProvider.getId(r.element)}}};this.tree.setChildren(e===this.root?null:e,n,s),e!==this.root&&this.tree.setCollapsible(e,e.hasChildren),this._onDidRender.fire()}asTreeElement(e,t){if(e.stale)return{element:e,collapsible:e.hasChildren,collapsed:!0};let i;return t&&t.viewState.expanded&&e.id&&t.viewState.expanded.indexOf(e.id)>-1?i=!1:e.forceExpanded?(i=!1,e.forceExpanded=!1):i=e.defaultCollapseState,{element:e,children:e.hasChildren?st.map(e.children,n=>this.asTreeElement(n,t)):[],collapsible:e.hasChildren,collapsed:i}}processChildren(e){return this.sorter&&(e=[...e].sort(this.sorter.compare.bind(this.sorter))),e}dispose(){this.disposables.dispose(),this.tree.dispose()}}class y2{get element(){return{elements:this.node.element.elements.map(e=>e.element),incompressible:this.node.element.incompressible}}get children(){return this.node.children.map(e=>new y2(e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e){this.node=e}}class yee{constructor(e,t,i,n){this.renderer=e,this.nodeMapper=t,this.compressibleNodeMapperProvider=i,this.onDidChangeTwistieState=n,this.renderedNodes=new Map,this.disposables=[],this.templateId=e.templateId}renderTemplate(e){return{templateData:this.renderer.renderTemplate(e)}}renderElement(e,t,i,n){this.renderer.renderElement(this.nodeMapper.map(e),t,i.templateData,n)}renderCompressedElements(e,t,i,n){this.renderer.renderCompressedElements(this.compressibleNodeMapperProvider().map(e),t,i.templateData,n)}renderTwistie(e,t){return e.slow?(t.classList.add(...Ee.asClassNameArray(ie.treeItemLoading)),!0):(t.classList.remove(...Ee.asClassNameArray(ie.treeItemLoading)),!1)}disposeElement(e,t,i,n){this.renderer.disposeElement?.(this.nodeMapper.map(e),t,i.templateData,n)}disposeCompressedElements(e,t,i,n){this.renderer.disposeCompressedElements?.(this.compressibleNodeMapperProvider().map(e),t,i.templateData,n)}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}dispose(){this.renderedNodes.clear(),this.disposables=xt(this.disposables)}}function See(o){const e=o&&P9(o);return e&&{...e,keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&{...e.keyboardNavigationLabelProvider,getCompressedNodeKeyboardNavigationLabel(t){return o.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(t.map(i=>i.element))}}}}class Lee extends O9{constructor(e,t,i,n,s,r,a={}){super(e,t,i,s,r,a),this.compressionDelegate=n,this.compressibleNodeMapper=new m2(l=>new y2(l)),this.filter=a.filter}createTree(e,t,i,n,s){const r=new _2(i),a=n.map(c=>new yee(c,this.nodeMapper,()=>this.compressibleNodeMapper,this._onDidChangeNodeSlowState.event)),l=See(s)||{};return new A9(e,t,r,a,l)}asTreeElement(e,t){return{incompressible:this.compressionDelegate.isIncompressible(e.element),...super.asTreeElement(e,t)}}updateOptions(e={}){this.tree.updateOptions(e)}render(e,t,i){if(!this.identityProvider)return super.render(e,t);const n=f=>this.identityProvider.getId(f).toString(),s=f=>{const g=new Set;for(const p of f){const _=this.tree.getCompressedTreeNode(p===this.root?null:p);if(_.element)for(const b of _.element.elements)g.add(n(b.element))}return g},r=s(this.tree.getSelection()),a=s(this.tree.getFocus());super.render(e,t,i);const l=this.getSelection();let c=!1;const d=this.getFocus();let h=!1;const u=f=>{const g=f.element;if(g)for(let p=0;p{const i=this.filter.filter(t,1),n=xee(i);if(n===2)throw new Error("Recursive tree visibility not supported in async data compressed trees");return n===1})),super.processChildren(e)}}function xee(o){return typeof o=="boolean"?o?1:0:p2(o)?p_(o.visibility):p_(o)}class kee extends T9{constructor(e,t,i,n,s,r={}){super(e,t,i,n,r),this.user=e,this.dataSource=s,this.identityProvider=r.identityProvider}createModel(e,t,i){return new b2(e,t,i)}}new le("isMac",Ue,m("isMac","Whether the operating system is macOS"));new le("isLinux",Un,m("isLinux","Whether the operating system is Linux"));new le("isWindows",kn,m("isWindows","Whether the operating system is Windows"));const F9=new le("isWeb",Og,m("isWeb","Whether the platform is a web browser"));new le("isMacNative",Ue&&!Og,m("isMacNative","Whether the operating system is macOS on a non-browser platform"));new le("isIOS",Tc,m("isIOS","Whether the operating system is iOS"));new le("isMobile",V5,m("isMobile","Whether the platform is a mobile web browser"));new le("isDevelopment",!1,!0);new le("productQualityType","",m("productQualityType","Quality type of VS Code"));const B9="inputFocus",W9=new le(B9,!1,m("inputFocus","Whether keyboard focus is inside an input box"));var Rl=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Dt=function(o,e){return function(t,i){e(t,i,o)}};const mo=He("listService");class Dee{get lastFocusedList(){return this._lastFocusedWidget}constructor(){this.disposables=new X,this.lists=[],this._lastFocusedWidget=void 0,this._hasCreatedStyleController=!1}setLastFocusedList(e){e!==this._lastFocusedWidget&&(this._lastFocusedWidget?.getHTMLElement().classList.remove("last-focused"),this._lastFocusedWidget=e,this._lastFocusedWidget?.getHTMLElement().classList.add("last-focused"))}register(e,t){if(this._hasCreatedStyleController||(this._hasCreatedStyleController=!0,new A7(Vs(),"").style(hu)),this.lists.some(n=>n.widget===e))throw new Error("Cannot register the same widget multiple times");const i={widget:e,extraContextKeys:t};return this.lists.push(i),M0(e.getHTMLElement())&&this.setLastFocusedList(e),No(e.onDidFocus(()=>this.setLastFocusedList(e)),_e(()=>this.lists.splice(this.lists.indexOf(i),1)),e.onDidDispose(()=>{this.lists=this.lists.filter(n=>n!==i),this._lastFocusedWidget===e&&this.setLastFocusedList(void 0)}))}dispose(){this.disposables.dispose()}}const __=new le("listScrollAtBoundary","none");re.or(__.isEqualTo("top"),__.isEqualTo("both"));re.or(__.isEqualTo("bottom"),__.isEqualTo("both"));const H9=new le("listFocus",!0),V9=new le("treestickyScrollFocused",!1),gy=new le("listSupportsMultiselect",!0),z9=re.and(H9,re.not(B9),V9.negate()),S2=new le("listHasSelectionOrFocus",!1),L2=new le("listDoubleSelection",!1),x2=new le("listMultiSelection",!1),my=new le("listSelectionNavigation",!1),Iee=new le("listSupportsFind",!0),k2=new le("treeElementCanCollapse",!1),Eee=new le("treeElementHasParent",!1),D2=new le("treeElementCanExpand",!1),Nee=new le("treeElementHasChild",!1),Tee=new le("treeFindOpen",!1),U9="listTypeNavigationMode",$9="listAutomaticKeyboardNavigation";function py(o,e){const t=o.createScoped(e.getHTMLElement());return H9.bindTo(t),t}function _y(o,e){const t=__.bindTo(o),i=()=>{const n=e.scrollTop===0,s=e.scrollHeight-e.renderHeight-e.scrollTop<1;n&&s?t.set("both"):n?t.set("top"):s?t.set("bottom"):t.set("none")};return i(),e.onDidScroll(i)}const uu="workbench.list.multiSelectModifier",V1="workbench.list.openMode",ao="workbench.list.horizontalScrolling",I2="workbench.list.defaultFindMode",E2="workbench.list.typeNavigationMode",cv="workbench.list.keyboardNavigation",br="workbench.list.scrollByPage",N2="workbench.list.defaultFindMatchType",b_="workbench.tree.indent",dv="workbench.tree.renderIndentGuides",Cr="workbench.list.smoothScrolling",_a="workbench.list.mouseWheelScrollSensitivity",ba="workbench.list.fastScrollSensitivity",hv="workbench.tree.expandMode",uv="workbench.tree.enableStickyScroll",fv="workbench.tree.stickyScrollMaxItemCount";function Ca(o){return o.getValue(uu)==="alt"}class Mee extends z{constructor(e){super(),this.configurationService=e,this.useAltAsMultipleSelectionModifier=Ca(e),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(e=>{e.affectsConfiguration(uu)&&(this.useAltAsMultipleSelectionModifier=Ca(this.configurationService))}))}isSelectionSingleChangeEvent(e){return this.useAltAsMultipleSelectionModifier?e.browserEvent.altKey:T7(e)}isSelectionRangeChangeEvent(e){return M7(e)}}function by(o,e){const t=o.get(lt),i=o.get(vt),n=new X;return[{...e,keyboardNavigationDelegate:{mightProducePrintableCharacter(r){return i.mightProducePrintableCharacter(r)}},smoothScrolling:!!t.getValue(Cr),mouseWheelScrollSensitivity:t.getValue(_a),fastScrollSensitivity:t.getValue(ba),multipleSelectionController:e.multipleSelectionController??n.add(new Mee(t)),keyboardNavigationEventFilter:Pee(i),scrollByPage:!!t.getValue(br)},n]}let XP=class extends go{constructor(e,t,i,n,s,r,a,l,c){const d=typeof s.horizontalScrolling<"u"?s.horizontalScrolling:!!l.getValue(ao),[h,u]=c.invokeFunction(by,s);super(e,t,i,n,{keyboardSupport:!1,...h,horizontalScrolling:d}),this.disposables.add(u),this.contextKeyService=py(r,this),this.disposables.add(_y(this.contextKeyService,this)),this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(s.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!s.selectionNavigation),this.listHasSelectionOrFocus=S2.bindTo(this.contextKeyService),this.listDoubleSelection=L2.bindTo(this.contextKeyService),this.listMultiSelection=x2.bindTo(this.contextKeyService),this.horizontalScrolling=s.horizontalScrolling,this._useAltAsMultipleSelectionModifier=Ca(l),this.disposables.add(this.contextKeyService),this.disposables.add(a.register(this)),this.updateStyles(s.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{const g=this.getSelection(),p=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(g.length>0||p.length>0),this.listMultiSelection.set(g.length>1),this.listDoubleSelection.set(g.length===2)})})),this.disposables.add(this.onDidChangeFocus(()=>{const g=this.getSelection(),p=this.getFocus();this.listHasSelectionOrFocus.set(g.length>0||p.length>0)})),this.disposables.add(l.onDidChangeConfiguration(g=>{g.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(l));let p={};if(g.affectsConfiguration(ao)&&this.horizontalScrolling===void 0){const _=!!l.getValue(ao);p={...p,horizontalScrolling:_}}if(g.affectsConfiguration(br)){const _=!!l.getValue(br);p={...p,scrollByPage:_}}if(g.affectsConfiguration(Cr)){const _=!!l.getValue(Cr);p={...p,smoothScrolling:_}}if(g.affectsConfiguration(_a)){const _=l.getValue(_a);p={...p,mouseWheelScrollSensitivity:_}}if(g.affectsConfiguration(ba)){const _=l.getValue(ba);p={...p,fastScrollSensitivity:_}}Object.keys(p).length>0&&this.updateOptions(p)})),this.navigator=new K9(this,{configurationService:l,...s}),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?$g(e):hu)}};XP=Rl([Dt(5,De),Dt(6,mo),Dt(7,lt),Dt(8,ke)],XP);let JP=class extends FJ{constructor(e,t,i,n,s,r,a,l,c){const d=typeof s.horizontalScrolling<"u"?s.horizontalScrolling:!!l.getValue(ao),[h,u]=c.invokeFunction(by,s);super(e,t,i,n,{keyboardSupport:!1,...h,horizontalScrolling:d}),this.disposables=new X,this.disposables.add(u),this.contextKeyService=py(r,this),this.disposables.add(_y(this.contextKeyService,this.widget)),this.horizontalScrolling=s.horizontalScrolling,this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(s.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!s.selectionNavigation),this._useAltAsMultipleSelectionModifier=Ca(l),this.disposables.add(this.contextKeyService),this.disposables.add(a.register(this)),this.updateStyles(s.overrideStyles),this.disposables.add(l.onDidChangeConfiguration(g=>{g.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(l));let p={};if(g.affectsConfiguration(ao)&&this.horizontalScrolling===void 0){const _=!!l.getValue(ao);p={...p,horizontalScrolling:_}}if(g.affectsConfiguration(br)){const _=!!l.getValue(br);p={...p,scrollByPage:_}}if(g.affectsConfiguration(Cr)){const _=!!l.getValue(Cr);p={...p,smoothScrolling:_}}if(g.affectsConfiguration(_a)){const _=l.getValue(_a);p={...p,mouseWheelScrollSensitivity:_}}if(g.affectsConfiguration(ba)){const _=l.getValue(ba);p={...p,fastScrollSensitivity:_}}Object.keys(p).length>0&&this.updateOptions(p)})),this.navigator=new K9(this,{configurationService:l,...s}),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?$g(e):hu)}dispose(){this.disposables.dispose(),super.dispose()}};JP=Rl([Dt(5,De),Dt(6,mo),Dt(7,lt),Dt(8,ke)],JP);let eO=class extends FD{constructor(e,t,i,n,s,r,a,l,c,d){const h=typeof r.horizontalScrolling<"u"?r.horizontalScrolling:!!c.getValue(ao),[u,f]=d.invokeFunction(by,r);super(e,t,i,n,s,{keyboardSupport:!1,...u,horizontalScrolling:h}),this.disposables.add(f),this.contextKeyService=py(a,this),this.disposables.add(_y(this.contextKeyService,this)),this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(r.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!r.selectionNavigation),this.listHasSelectionOrFocus=S2.bindTo(this.contextKeyService),this.listDoubleSelection=L2.bindTo(this.contextKeyService),this.listMultiSelection=x2.bindTo(this.contextKeyService),this.horizontalScrolling=r.horizontalScrolling,this._useAltAsMultipleSelectionModifier=Ca(c),this.disposables.add(this.contextKeyService),this.disposables.add(l.register(this)),this.updateStyles(r.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{const p=this.getSelection(),_=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(p.length>0||_.length>0),this.listMultiSelection.set(p.length>1),this.listDoubleSelection.set(p.length===2)})})),this.disposables.add(this.onDidChangeFocus(()=>{const p=this.getSelection(),_=this.getFocus();this.listHasSelectionOrFocus.set(p.length>0||_.length>0)})),this.disposables.add(c.onDidChangeConfiguration(p=>{p.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(c));let _={};if(p.affectsConfiguration(ao)&&this.horizontalScrolling===void 0){const b=!!c.getValue(ao);_={..._,horizontalScrolling:b}}if(p.affectsConfiguration(br)){const b=!!c.getValue(br);_={..._,scrollByPage:b}}if(p.affectsConfiguration(Cr)){const b=!!c.getValue(Cr);_={..._,smoothScrolling:b}}if(p.affectsConfiguration(_a)){const b=c.getValue(_a);_={..._,mouseWheelScrollSensitivity:b}}if(p.affectsConfiguration(ba)){const b=c.getValue(ba);_={..._,fastScrollSensitivity:b}}Object.keys(_).length>0&&this.updateOptions(_)})),this.navigator=new Ree(this,{configurationService:c,...r}),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?$g(e):hu)}dispose(){this.disposables.dispose(),super.dispose()}};eO=Rl([Dt(6,De),Dt(7,mo),Dt(8,lt),Dt(9,ke)],eO);class T2 extends z{constructor(e,t){super(),this.widget=e,this._onDidOpen=this._register(new A),this.onDidOpen=this._onDidOpen.event,this._register(J.filter(this.widget.onDidChangeSelection,i=>Qa(i.browserEvent))(i=>this.onSelectionFromKeyboard(i))),this._register(this.widget.onPointer(i=>this.onPointer(i.element,i.browserEvent))),this._register(this.widget.onMouseDblClick(i=>this.onMouseDblClick(i.element,i.browserEvent))),typeof t?.openOnSingleClick!="boolean"&&t?.configurationService?(this.openOnSingleClick=t?.configurationService.getValue(V1)!=="doubleClick",this._register(t?.configurationService.onDidChangeConfiguration(i=>{i.affectsConfiguration(V1)&&(this.openOnSingleClick=t?.configurationService.getValue(V1)!=="doubleClick")}))):this.openOnSingleClick=t?.openOnSingleClick??!0}onSelectionFromKeyboard(e){if(e.elements.length!==1)return;const t=e.browserEvent,i=typeof t.preserveFocus=="boolean"?t.preserveFocus:!0,n=typeof t.pinned=="boolean"?t.pinned:!i;this._open(this.getSelectedElement(),i,n,!1,e.browserEvent)}onPointer(e,t){if(!this.openOnSingleClick||t.detail===2)return;const n=t.button===1,s=!0,r=n,a=t.ctrlKey||t.metaKey||t.altKey;this._open(e,s,r,a,t)}onMouseDblClick(e,t){if(!t)return;const i=t.target;if(i.classList.contains("monaco-tl-twistie")||i.classList.contains("monaco-icon-label")&&i.classList.contains("folder-icon")&&t.offsetX<16)return;const s=!1,r=!0,a=t.ctrlKey||t.metaKey||t.altKey;this._open(e,s,r,a,t)}_open(e,t,i,n,s){e&&this._onDidOpen.fire({editorOptions:{preserveFocus:t,pinned:i,revealIfVisible:!0},sideBySide:n,element:e,browserEvent:s})}}class K9 extends T2{constructor(e,t){super(e,t),this.widget=e}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class Ree extends T2{constructor(e,t){super(e,t)}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class Aee extends T2{constructor(e,t){super(e,t)}getSelectedElement(){return this.widget.getSelection()[0]??void 0}}function Pee(o){let e=!1;return t=>{if(t.toKeyCodeChord().isModifierKey())return!1;if(e)return e=!1,!1;const i=o.softDispatch(t,t.target);return i.kind===1?(e=!0,!1):(e=!1,i.kind===0)}}let zD=class extends v2{constructor(e,t,i,n,s,r,a,l,c){const{options:d,getTypeNavigationMode:h,disposable:u}=r.invokeFunction(sb,s);super(e,t,i,n,d),this.disposables.add(u),this.internals=new $h(this,s,h,s.overrideStyles,a,l,c),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};zD=Rl([Dt(5,ke),Dt(6,De),Dt(7,mo),Dt(8,lt)],zD);let tO=class extends A9{constructor(e,t,i,n,s,r,a,l,c){const{options:d,getTypeNavigationMode:h,disposable:u}=r.invokeFunction(sb,s);super(e,t,i,n,d),this.disposables.add(u),this.internals=new $h(this,s,h,s.overrideStyles,a,l,c),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};tO=Rl([Dt(5,ke),Dt(6,De),Dt(7,mo),Dt(8,lt)],tO);let iO=class extends kee{constructor(e,t,i,n,s,r,a,l,c,d){const{options:h,getTypeNavigationMode:u,disposable:f}=a.invokeFunction(sb,r);super(e,t,i,n,s,h),this.disposables.add(f),this.internals=new $h(this,r,u,r.overrideStyles,l,c,d),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles!==void 0&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};iO=Rl([Dt(6,ke),Dt(7,De),Dt(8,mo),Dt(9,lt)],iO);let UD=class extends O9{get onDidOpen(){return this.internals.onDidOpen}constructor(e,t,i,n,s,r,a,l,c,d){const{options:h,getTypeNavigationMode:u,disposable:f}=a.invokeFunction(sb,r);super(e,t,i,n,s,h),this.disposables.add(f),this.internals=new $h(this,r,u,r.overrideStyles,l,c,d),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};UD=Rl([Dt(6,ke),Dt(7,De),Dt(8,mo),Dt(9,lt)],UD);let nO=class extends Lee{constructor(e,t,i,n,s,r,a,l,c,d,h){const{options:u,getTypeNavigationMode:f,disposable:g}=l.invokeFunction(sb,a);super(e,t,i,n,s,r,u),this.disposables.add(g),this.internals=new $h(this,a,f,a.overrideStyles,c,d,h),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};nO=Rl([Dt(7,ke),Dt(8,De),Dt(9,mo),Dt(10,lt)],nO);function j9(o){const e=o.getValue(I2);if(e==="highlight")return dl.Highlight;if(e==="filter")return dl.Filter;const t=o.getValue(cv);if(t==="simple"||t==="highlight")return dl.Highlight;if(t==="filter")return dl.Filter}function q9(o){const e=o.getValue(N2);if(e==="fuzzy")return Uh.Fuzzy;if(e==="contiguous")return Uh.Contiguous}function sb(o,e){const t=o.get(lt),i=o.get(lu),n=o.get(De),s=o.get(ke),r=()=>{const u=n.getContextKeyValue(U9);if(u==="automatic")return Qr.Automatic;if(u==="trigger"||n.getContextKeyValue($9)===!1)return Qr.Trigger;const g=t.getValue(E2);if(g==="automatic")return Qr.Automatic;if(g==="trigger")return Qr.Trigger},a=e.horizontalScrolling!==void 0?e.horizontalScrolling:!!t.getValue(ao),[l,c]=s.invokeFunction(by,e),d=e.paddingBottom,h=e.renderIndentGuides!==void 0?e.renderIndentGuides:t.getValue(dv);return{getTypeNavigationMode:r,disposable:c,options:{keyboardSupport:!1,...l,indent:typeof t.getValue(b_)=="number"?t.getValue(b_):void 0,renderIndentGuides:h,smoothScrolling:!!t.getValue(Cr),defaultFindMode:j9(t),defaultFindMatchType:q9(t),horizontalScrolling:a,scrollByPage:!!t.getValue(br),paddingBottom:d,hideTwistiesOfChildlessElements:e.hideTwistiesOfChildlessElements,expandOnlyOnTwistieClick:e.expandOnlyOnTwistieClick??t.getValue(hv)==="doubleClick",contextViewProvider:i,findWidgetStyles:FY,enableStickyScroll:!!t.getValue(uv),stickyScrollMaxItemCount:Number(t.getValue(fv))}}}let $h=class{get onDidOpen(){return this.navigator.onDidOpen}constructor(e,t,i,n,s,r,a){this.tree=e,this.disposables=[],this.contextKeyService=py(s,e),this.disposables.push(_y(this.contextKeyService,e)),this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(t.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!t.selectionNavigation),this.listSupportFindWidget=Iee.bindTo(this.contextKeyService),this.listSupportFindWidget.set(t.findWidgetEnabled??!0),this.hasSelectionOrFocus=S2.bindTo(this.contextKeyService),this.hasDoubleSelection=L2.bindTo(this.contextKeyService),this.hasMultiSelection=x2.bindTo(this.contextKeyService),this.treeElementCanCollapse=k2.bindTo(this.contextKeyService),this.treeElementHasParent=Eee.bindTo(this.contextKeyService),this.treeElementCanExpand=D2.bindTo(this.contextKeyService),this.treeElementHasChild=Nee.bindTo(this.contextKeyService),this.treeFindOpen=Tee.bindTo(this.contextKeyService),this.treeStickyScrollFocused=V9.bindTo(this.contextKeyService),this._useAltAsMultipleSelectionModifier=Ca(a),this.updateStyleOverrides(n);const c=()=>{const h=e.getFocus()[0];if(!h)return;const u=e.getNode(h);this.treeElementCanCollapse.set(u.collapsible&&!u.collapsed),this.treeElementHasParent.set(!!e.getParentElement(h)),this.treeElementCanExpand.set(u.collapsible&&u.collapsed),this.treeElementHasChild.set(!!e.getFirstElementChild(h))},d=new Set;d.add(U9),d.add($9),this.disposables.push(this.contextKeyService,r.register(e),e.onDidChangeSelection(()=>{const h=e.getSelection(),u=e.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.hasSelectionOrFocus.set(h.length>0||u.length>0),this.hasMultiSelection.set(h.length>1),this.hasDoubleSelection.set(h.length===2)})}),e.onDidChangeFocus(()=>{const h=e.getSelection(),u=e.getFocus();this.hasSelectionOrFocus.set(h.length>0||u.length>0),c()}),e.onDidChangeCollapseState(c),e.onDidChangeModel(c),e.onDidChangeFindOpenState(h=>this.treeFindOpen.set(h)),e.onDidChangeStickyScrollFocused(h=>this.treeStickyScrollFocused.set(h)),a.onDidChangeConfiguration(h=>{let u={};if(h.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(a)),h.affectsConfiguration(b_)){const f=a.getValue(b_);u={...u,indent:f}}if(h.affectsConfiguration(dv)&&t.renderIndentGuides===void 0){const f=a.getValue(dv);u={...u,renderIndentGuides:f}}if(h.affectsConfiguration(Cr)){const f=!!a.getValue(Cr);u={...u,smoothScrolling:f}}if(h.affectsConfiguration(I2)||h.affectsConfiguration(cv)){const f=j9(a);u={...u,defaultFindMode:f}}if(h.affectsConfiguration(E2)||h.affectsConfiguration(cv)){const f=i();u={...u,typeNavigationMode:f}}if(h.affectsConfiguration(N2)){const f=q9(a);u={...u,defaultFindMatchType:f}}if(h.affectsConfiguration(ao)&&t.horizontalScrolling===void 0){const f=!!a.getValue(ao);u={...u,horizontalScrolling:f}}if(h.affectsConfiguration(br)){const f=!!a.getValue(br);u={...u,scrollByPage:f}}if(h.affectsConfiguration(hv)&&t.expandOnlyOnTwistieClick===void 0&&(u={...u,expandOnlyOnTwistieClick:a.getValue(hv)==="doubleClick"}),h.affectsConfiguration(uv)){const f=a.getValue(uv);u={...u,enableStickyScroll:f}}if(h.affectsConfiguration(fv)){const f=Math.max(1,a.getValue(fv));u={...u,stickyScrollMaxItemCount:f}}if(h.affectsConfiguration(_a)){const f=a.getValue(_a);u={...u,mouseWheelScrollSensitivity:f}}if(h.affectsConfiguration(ba)){const f=a.getValue(ba);u={...u,fastScrollSensitivity:f}}Object.keys(u).length>0&&e.updateOptions(u)}),this.contextKeyService.onDidChangeContext(h=>{h.affectsSome(d)&&e.updateOptions({typeNavigationMode:i()})})),this.navigator=new Aee(e,{configurationService:a,...t}),this.disposables.push(this.navigator)}updateOptions(e){e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyleOverrides(e){this.tree.style(e?$g(e):hu)}dispose(){this.disposables=xt(this.disposables)}};$h=Rl([Dt(4,De),Dt(5,mo),Dt(6,lt)],$h);const Oee=Bi.as(su.Configuration);Oee.registerConfiguration({id:"workbench",order:7,title:m("workbenchConfigurationTitle","Workbench"),type:"object",properties:{[uu]:{type:"string",enum:["ctrlCmd","alt"],markdownEnumDescriptions:[m("multiSelectModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),m("multiSelectModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],default:"ctrlCmd",description:m({key:"multiSelectModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add an item in trees and lists to a multi-selection with the mouse (for example in the explorer, open editors and scm view). The 'Open to Side' mouse gestures - if supported - will adapt such that they do not conflict with the multiselect modifier.")},[V1]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:m({key:"openModeModifier",comment:["`singleClick` and `doubleClick` refers to a value the setting can take and should not be localized."]},"Controls how to open items in trees and lists using the mouse (if supported). Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[ao]:{type:"boolean",default:!1,description:m("horizontalScrolling setting","Controls whether lists and trees support horizontal scrolling in the workbench. Warning: turning on this setting has a performance implication.")},[br]:{type:"boolean",default:!1,description:m("list.scrollByPage","Controls whether clicks in the scrollbar scroll page by page.")},[b_]:{type:"number",default:8,minimum:4,maximum:40,description:m("tree indent setting","Controls tree indentation in pixels.")},[dv]:{type:"string",enum:["none","onHover","always"],default:"onHover",description:m("render tree indent guides","Controls whether the tree should render indent guides.")},[Cr]:{type:"boolean",default:!1,description:m("list smoothScrolling setting","Controls whether lists and trees have smooth scrolling.")},[_a]:{type:"number",default:1,markdownDescription:m("Mouse Wheel Scroll Sensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")},[ba]:{type:"number",default:5,markdownDescription:m("Fast Scroll Sensitivity","Scrolling speed multiplier when pressing `Alt`.")},[I2]:{type:"string",enum:["highlight","filter"],enumDescriptions:[m("defaultFindModeSettingKey.highlight","Highlight elements when searching. Further up and down navigation will traverse only the highlighted elements."),m("defaultFindModeSettingKey.filter","Filter elements when searching.")],default:"highlight",description:m("defaultFindModeSettingKey","Controls the default find mode for lists and trees in the workbench.")},[cv]:{type:"string",enum:["simple","highlight","filter"],enumDescriptions:[m("keyboardNavigationSettingKey.simple","Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes."),m("keyboardNavigationSettingKey.highlight","Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements."),m("keyboardNavigationSettingKey.filter","Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.")],default:"highlight",description:m("keyboardNavigationSettingKey","Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter."),deprecated:!0,deprecationMessage:m("keyboardNavigationSettingKeyDeprecated","Please use 'workbench.list.defaultFindMode' and 'workbench.list.typeNavigationMode' instead.")},[N2]:{type:"string",enum:["fuzzy","contiguous"],enumDescriptions:[m("defaultFindMatchTypeSettingKey.fuzzy","Use fuzzy matching when searching."),m("defaultFindMatchTypeSettingKey.contiguous","Use contiguous matching when searching.")],default:"fuzzy",description:m("defaultFindMatchTypeSettingKey","Controls the type of matching used when searching lists and trees in the workbench.")},[hv]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:m("expand mode","Controls how tree folders are expanded when clicking the folder names. Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[uv]:{type:"boolean",default:!0,description:m("sticky scroll","Controls whether sticky scrolling is enabled in trees.")},[fv]:{type:"number",minimum:1,default:7,markdownDescription:m("sticky scroll maximum items","Controls the number of sticky elements displayed in the tree when {0} is enabled.","`#workbench.tree.enableStickyScroll#`")},[E2]:{type:"string",enum:["automatic","trigger"],default:"automatic",markdownDescription:m("typeNavigationMode2","Controls how type navigation works in lists and trees in the workbench. When set to `trigger`, type navigation begins once the `list.triggerTypeNavigation` command is run.")}}});class _c extends z{constructor(e,t){super(),this.options=t,this.text="",this.title="",this.highlights=[],this.didEverRender=!1,this.supportIcons=t?.supportIcons??!1,this.domNode=Z(e,ce("span.monaco-highlighted-label"))}get element(){return this.domNode}set(e,t=[],i="",n){e||(e=""),n&&(e=_c.escapeNewLines(e,t)),!(this.didEverRender&&this.text===e&&this.title===i&&as(this.highlights,t))&&(this.text=e,this.title=i,this.highlights=t,this.render())}render(){const e=[];let t=0;for(const i of this.highlights){if(i.end===i.start)continue;if(t{n=s===`\r +`?-1:0,r+=i;for(const a of t)a.end<=r||(a.start>=r&&(a.start+=n),a.end>=r&&(a.end+=n));return i+=n,"⏎"})}}class Cm{constructor(e){this._element=e}get element(){return this._element}set textContent(e){this.disposed||e===this._textContent||(this._textContent=e,this._element.textContent=e)}set classNames(e){this.disposed||as(e,this._classNames)||(this._classNames=e,this._element.classList.value="",this._element.classList.add(...e))}set empty(e){this.disposed||e===this._empty||(this._empty=e,this._element.style.marginLeft=e?"0":"")}dispose(){this.disposed=!0}}class gv extends z{constructor(e,t){super(),this.customHovers=new Map,this.creationOptions=t,this.domNode=this._register(new Cm(Z(e,ce(".monaco-icon-label")))),this.labelContainer=Z(this.domNode.element,ce(".monaco-icon-label-container")),this.nameContainer=Z(this.labelContainer,ce("span.monaco-icon-name-container")),t?.supportHighlights||t?.supportIcons?this.nameNode=this._register(new Wee(this.nameContainer,!!t.supportIcons)):this.nameNode=new Fee(this.nameContainer),this.hoverDelegate=t?.hoverDelegate??Ks("mouse")}get element(){return this.domNode.element}setLabel(e,t,i){const n=["monaco-icon-label"],s=["monaco-icon-label-container"];let r="";i&&(i.extraClasses&&n.push(...i.extraClasses),i.italic&&n.push("italic"),i.strikethrough&&n.push("strikethrough"),i.disabledCommand&&s.push("disabled"),i.title&&(typeof i.title=="string"?r+=i.title:r+=e));const a=this.domNode.element.querySelector(".monaco-icon-label-iconpath");if(i?.iconPath){let l;!a||!Ei(a)?(l=ce(".monaco-icon-label-iconpath"),this.domNode.element.prepend(l)):l=a,l.style.backgroundImage=Dl(i?.iconPath)}else a&&a.remove();if(this.domNode.classNames=n,this.domNode.element.setAttribute("aria-label",r),this.labelContainer.classList.value="",this.labelContainer.classList.add(...s),this.setupHover(i?.descriptionTitle?this.labelContainer:this.element,i?.title),this.nameNode.setLabel(e,i),t||this.descriptionNode){const l=this.getOrCreateDescriptionNode();l instanceof _c?(l.set(t||"",i?i.descriptionMatches:void 0,void 0,i?.labelEscapeNewLines),this.setupHover(l.element,i?.descriptionTitle)):(l.textContent=t&&i?.labelEscapeNewLines?_c.escapeNewLines(t,[]):t||"",this.setupHover(l.element,i?.descriptionTitle||""),l.empty=!t)}if(i?.suffix||this.suffixNode){const l=this.getOrCreateSuffixNode();l.textContent=i?.suffix??""}}setupHover(e,t){const i=this.customHovers.get(e);if(i&&(i.dispose(),this.customHovers.delete(e)),!t){e.removeAttribute("title");return}if(this.hoverDelegate.showNativeHover)(function(s,r){Os(r)?s.title=f7(r):r?.markdownNotSupportedFallback?s.title=r.markdownNotSupportedFallback:s.removeAttribute("title")})(e,t);else{const n=La().setupManagedHover(this.hoverDelegate,e,t);n&&this.customHovers.set(e,n)}}dispose(){super.dispose();for(const e of this.customHovers.values())e.dispose();this.customHovers.clear()}getOrCreateSuffixNode(){if(!this.suffixNode){const e=this._register(new Cm(NV(this.nameContainer,ce("span.monaco-icon-suffix-container"))));this.suffixNode=this._register(new Cm(Z(e.element,ce("span.label-suffix"))))}return this.suffixNode}getOrCreateDescriptionNode(){if(!this.descriptionNode){const e=this._register(new Cm(Z(this.labelContainer,ce("span.monaco-icon-description-container"))));this.creationOptions?.supportDescriptionHighlights?this.descriptionNode=this._register(new _c(Z(e.element,ce("span.label-description")),{supportIcons:!!this.creationOptions.supportIcons})):this.descriptionNode=this._register(new Cm(Z(e.element,ce("span.label-description"))))}return this.descriptionNode}}class Fee{constructor(e){this.container=e,this.label=void 0,this.singleLabel=void 0}setLabel(e,t){if(!(this.label===e&&as(this.options,t)))if(this.label=e,this.options=t,typeof e=="string")this.singleLabel||(this.container.innerText="",this.container.classList.remove("multiple"),this.singleLabel=Z(this.container,ce("a.label-name",{id:t?.domId}))),this.singleLabel.textContent=e;else{this.container.innerText="",this.container.classList.add("multiple"),this.singleLabel=void 0;for(let i=0;i{const s={start:i,end:i+n.length},r=t.map(a=>Yi.intersect(s,a)).filter(a=>!Yi.isEmpty(a)).map(({start:a,end:l})=>({start:a-i,end:l-i}));return i=s.end+e.length,r})}class Wee extends z{constructor(e,t){super(),this.container=e,this.supportIcons=t,this.label=void 0,this.singleLabel=void 0}setLabel(e,t){if(!(this.label===e&&as(this.options,t)))if(this.label=e,this.options=t,typeof e=="string")this.singleLabel||(this.container.innerText="",this.container.classList.remove("multiple"),this.singleLabel=this._register(new _c(Z(this.container,ce("a.label-name",{id:t?.domId})),{supportIcons:this.supportIcons}))),this.singleLabel.set(e,t?.matches,void 0,t?.labelEscapeNewLines);else{this.container.innerText="",this.container.classList.add("multiple"),this.singleLabel=void 0;const i=t?.separator||"/",n=Bee(e,i,t?.matches);for(let s=0;s{const o=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});return{collator:o,collatorIsNumeric:o.resolvedOptions().numeric}});function Vee(o,e,t=!1){const i=o||"",n=e||"",s=sO.value.collator.compare(i,n);return sO.value.collatorIsNumeric&&s===0&&i!==n?in.length)return 1}return 0}var Cy=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},$D=function(o,e){return function(t,i){e(t,i,o)}},KD;const qo=ce;class G9{constructor(e,t,i){this.index=e,this.hasCheckbox=t,this._hidden=!1,this._init=new ua(()=>{const n=i.label??"",s=Tm(n).text.trim(),r=i.ariaLabel||[n,this.saneDescription,this.saneDetail].map(a=>qq(a)).filter(a=>!!a).join(", ");return{saneLabel:n,saneSortLabel:s,saneAriaLabel:r}}),this._saneDescription=i.description,this._saneTooltip=i.tooltip}get saneLabel(){return this._init.value.saneLabel}get saneSortLabel(){return this._init.value.saneSortLabel}get saneAriaLabel(){return this._init.value.saneAriaLabel}get element(){return this._element}set element(e){this._element=e}get hidden(){return this._hidden}set hidden(e){this._hidden=e}get saneDescription(){return this._saneDescription}set saneDescription(e){this._saneDescription=e}get saneDetail(){return this._saneDetail}set saneDetail(e){this._saneDetail=e}get saneTooltip(){return this._saneTooltip}set saneTooltip(e){this._saneTooltip=e}get labelHighlights(){return this._labelHighlights}set labelHighlights(e){this._labelHighlights=e}get descriptionHighlights(){return this._descriptionHighlights}set descriptionHighlights(e){this._descriptionHighlights=e}get detailHighlights(){return this._detailHighlights}set detailHighlights(e){this._detailHighlights=e}}class zi extends G9{constructor(e,t,i,n,s,r){super(e,t,s),this.fireButtonTriggered=i,this._onChecked=n,this.item=s,this._separator=r,this._checked=!1,this.onChecked=t?J.map(J.filter(this._onChecked.event,a=>a.element===this),a=>a.checked):J.None,this._saneDetail=s.detail,this._labelHighlights=s.highlights?.label,this._descriptionHighlights=s.highlights?.description,this._detailHighlights=s.highlights?.detail}get separator(){return this._separator}set separator(e){this._separator=e}get checked(){return this._checked}set checked(e){e!==this._checked&&(this._checked=e,this._onChecked.fire({element:this,checked:e}))}get checkboxDisabled(){return!!this.item.disabled}}var qr;(function(o){o[o.NONE=0]="NONE",o[o.MOUSE_HOVER=1]="MOUSE_HOVER",o[o.ACTIVE_ITEM=2]="ACTIVE_ITEM"})(qr||(qr={}));class fd extends G9{constructor(e,t,i){super(e,!1,i),this.fireSeparatorButtonTriggered=t,this.separator=i,this.children=new Array,this.focusInsideSeparator=qr.NONE}}class $ee{getHeight(e){return e instanceof fd?30:e.saneDetail?44:22}getTemplateId(e){return e instanceof zi?mv.ID:pv.ID}}class Kee{getWidgetAriaLabel(){return m("quickInput","Quick Input")}getAriaLabel(e){return e.separator?.label?`${e.saneAriaLabel}, ${e.separator.label}`:e.saneAriaLabel}getWidgetRole(){return"listbox"}getRole(e){return e.hasCheckbox?"checkbox":"option"}isChecked(e){if(!(!e.hasCheckbox||!(e instanceof zi)))return{get value(){return e.checked},onDidChange:t=>e.onChecked(()=>t())}}}class Z9{constructor(e){this.hoverDelegate=e}renderTemplate(e){const t=Object.create(null);t.toDisposeElement=new X,t.toDisposeTemplate=new X,t.entry=Z(e,qo(".quick-input-list-entry"));const i=Z(t.entry,qo("label.quick-input-list-label"));t.toDisposeTemplate.add(jt(i,ee.CLICK,c=>{t.checkbox.offsetParent||c.preventDefault()})),t.checkbox=Z(i,qo("input.quick-input-list-checkbox")),t.checkbox.type="checkbox";const n=Z(i,qo(".quick-input-list-rows")),s=Z(n,qo(".quick-input-list-row")),r=Z(n,qo(".quick-input-list-row"));t.label=new gv(s,{supportHighlights:!0,supportDescriptionHighlights:!0,supportIcons:!0,hoverDelegate:this.hoverDelegate}),t.toDisposeTemplate.add(t.label),t.icon=iT(t.label.element,qo(".quick-input-list-icon"));const a=Z(s,qo(".quick-input-list-entry-keybinding"));t.keybinding=new ob(a,Ns),t.toDisposeTemplate.add(t.keybinding);const l=Z(r,qo(".quick-input-list-label-meta"));return t.detail=new gv(l,{supportHighlights:!0,supportIcons:!0,hoverDelegate:this.hoverDelegate}),t.toDisposeTemplate.add(t.detail),t.separator=Z(t.entry,qo(".quick-input-list-separator")),t.actionBar=new oo(t.entry,this.hoverDelegate?{hoverDelegate:this.hoverDelegate}:void 0),t.actionBar.domNode.classList.add("quick-input-list-entry-action-bar"),t.toDisposeTemplate.add(t.actionBar),t}disposeTemplate(e){e.toDisposeElement.dispose(),e.toDisposeTemplate.dispose()}disposeElement(e,t,i){i.toDisposeElement.clear(),i.actionBar.clear()}}var rh;let mv=(rh=class extends Z9{constructor(e,t){super(e),this.themeService=t,this._itemsWithSeparatorsFrequency=new Map}get templateId(){return KD.ID}renderTemplate(e){const t=super.renderTemplate(e);return t.toDisposeTemplate.add(jt(t.checkbox,ee.CHANGE,i=>{t.element.checked=t.checkbox.checked})),t}renderElement(e,t,i){const n=e.element;i.element=n,n.element=i.entry??void 0;const s=n.item;i.checkbox.checked=n.checked,i.toDisposeElement.add(n.onChecked(u=>i.checkbox.checked=u)),i.checkbox.disabled=n.checkboxDisabled;const{labelHighlights:r,descriptionHighlights:a,detailHighlights:l}=n;if(s.iconPath){const u=j0(this.themeService.getColorTheme().type)?s.iconPath.dark:s.iconPath.light??s.iconPath.dark,f=ve.revive(u);i.icon.className="quick-input-list-icon",i.icon.style.backgroundImage=Dl(f)}else i.icon.style.backgroundImage="",i.icon.className=s.iconClass?`quick-input-list-icon ${s.iconClass}`:"";let c;!n.saneTooltip&&n.saneDescription&&(c={markdown:{value:n.saneDescription,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDescription});const d={matches:r||[],descriptionTitle:c,descriptionMatches:a||[],labelEscapeNewLines:!0};if(d.extraClasses=s.iconClasses,d.italic=s.italic,d.strikethrough=s.strikethrough,i.entry.classList.remove("quick-input-list-separator-as-item"),i.label.setLabel(n.saneLabel,n.saneDescription,d),i.keybinding.set(s.keybinding),n.saneDetail){let u;n.saneTooltip||(u={markdown:{value:n.saneDetail,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDetail}),i.detail.element.style.display="",i.detail.setLabel(n.saneDetail,void 0,{matches:l,title:u,labelEscapeNewLines:!0})}else i.detail.element.style.display="none";n.separator?.label?(i.separator.textContent=n.separator.label,i.separator.style.display="",this.addItemWithSeparator(n)):i.separator.style.display="none",i.entry.classList.toggle("quick-input-list-separator-border",!!n.separator);const h=s.buttons;h&&h.length?(i.actionBar.push(h.map((u,f)=>rp(u,`id-${f}`,()=>n.fireButtonTriggered({button:u,item:n.item}))),{icon:!0,label:!1}),i.entry.classList.add("has-actions")):i.entry.classList.remove("has-actions")}disposeElement(e,t,i){this.removeItemWithSeparator(e.element),super.disposeElement(e,t,i)}isItemWithSeparatorVisible(e){return this._itemsWithSeparatorsFrequency.has(e)}addItemWithSeparator(e){this._itemsWithSeparatorsFrequency.set(e,(this._itemsWithSeparatorsFrequency.get(e)||0)+1)}removeItemWithSeparator(e){const t=this._itemsWithSeparatorsFrequency.get(e)||0;t>1?this._itemsWithSeparatorsFrequency.set(e,t-1):this._itemsWithSeparatorsFrequency.delete(e)}},KD=rh,rh.ID="quickpickitem",rh);mv=KD=Cy([$D(1,en)],mv);const Uw=class Uw extends Z9{constructor(){super(...arguments),this._visibleSeparatorsFrequency=new Map}get templateId(){return Uw.ID}get visibleSeparators(){return[...this._visibleSeparatorsFrequency.keys()]}isSeparatorVisible(e){return this._visibleSeparatorsFrequency.has(e)}renderTemplate(e){const t=super.renderTemplate(e);return t.checkbox.style.display="none",t}renderElement(e,t,i){const n=e.element;i.element=n,n.element=i.entry??void 0,n.element.classList.toggle("focus-inside",!!n.focusInsideSeparator);const s=n.separator,{labelHighlights:r,descriptionHighlights:a,detailHighlights:l}=n;i.icon.style.backgroundImage="",i.icon.className="";let c;!n.saneTooltip&&n.saneDescription&&(c={markdown:{value:n.saneDescription,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDescription});const d={matches:r||[],descriptionTitle:c,descriptionMatches:a||[],labelEscapeNewLines:!0};if(i.entry.classList.add("quick-input-list-separator-as-item"),i.label.setLabel(n.saneLabel,n.saneDescription,d),n.saneDetail){let u;n.saneTooltip||(u={markdown:{value:n.saneDetail,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDetail}),i.detail.element.style.display="",i.detail.setLabel(n.saneDetail,void 0,{matches:l,title:u,labelEscapeNewLines:!0})}else i.detail.element.style.display="none";i.separator.style.display="none",i.entry.classList.add("quick-input-list-separator-border");const h=s.buttons;h&&h.length?(i.actionBar.push(h.map((u,f)=>rp(u,`id-${f}`,()=>n.fireSeparatorButtonTriggered({button:u,separator:n.separator}))),{icon:!0,label:!1}),i.entry.classList.add("has-actions")):i.entry.classList.remove("has-actions"),this.addSeparator(n)}disposeElement(e,t,i){this.removeSeparator(e.element),this.isSeparatorVisible(e.element)||e.element.element?.classList.remove("focus-inside"),super.disposeElement(e,t,i)}addSeparator(e){this._visibleSeparatorsFrequency.set(e,(this._visibleSeparatorsFrequency.get(e)||0)+1)}removeSeparator(e){const t=this._visibleSeparatorsFrequency.get(e)||0;t>1?this._visibleSeparatorsFrequency.set(e,t-1):this._visibleSeparatorsFrequency.delete(e)}};Uw.ID="quickpickseparator";let pv=Uw,C_=class extends z{constructor(e,t,i,n,s,r){super(),this.parent=e,this.hoverDelegate=t,this.linkOpenerDelegate=i,this.accessibilityService=r,this._onKeyDown=new A,this._onLeave=new A,this.onLeave=this._onLeave.event,this._visibleCountObservable=Ge("VisibleCount",0),this.onChangedVisibleCount=J.fromObservable(this._visibleCountObservable,this._store),this._allVisibleCheckedObservable=Ge("AllVisibleChecked",!1),this.onChangedAllVisibleChecked=J.fromObservable(this._allVisibleCheckedObservable,this._store),this._checkedCountObservable=Ge("CheckedCount",0),this.onChangedCheckedCount=J.fromObservable(this._checkedCountObservable,this._store),this._checkedElementsObservable=iD({equalsFn:li},new Array),this.onChangedCheckedElements=J.fromObservable(this._checkedElementsObservable,this._store),this._onButtonTriggered=new A,this.onButtonTriggered=this._onButtonTriggered.event,this._onSeparatorButtonTriggered=new A,this.onSeparatorButtonTriggered=this._onSeparatorButtonTriggered.event,this._elementChecked=new A,this._elementCheckedEventBufferer=new W_,this._hasCheckboxes=!1,this._inputElements=new Array,this._elementTree=new Array,this._itemElements=new Array,this._elementDisposable=this._register(new X),this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._matchOnLabelMode="fuzzy",this._sortByLabel=!0,this._shouldLoop=!0,this._container=Z(this.parent,qo(".quick-input-list")),this._separatorRenderer=new pv(t),this._itemRenderer=s.createInstance(mv,t),this._tree=this._register(s.createInstance(zD,"QuickInput",this._container,new $ee,[this._itemRenderer,this._separatorRenderer],{filter:{filter(a){return a.hidden?0:a instanceof fd?2:1}},sorter:{compare:(a,l)=>{if(!this.sortByLabel||!this._lastQueryString)return 0;const c=this._lastQueryString.toLowerCase();return qee(a,l,c)}},accessibilityProvider:new Kee,setRowLineHeight:!1,multipleSelectionSupport:!1,hideTwistiesOfChildlessElements:!0,renderIndentGuides:Sg.None,findWidgetEnabled:!1,indent:0,horizontalScrolling:!1,allowNonCollapsibleParents:!0,alwaysConsumeMouseWheel:!0})),this._tree.getHTMLElement().id=n,this._registerListeners()}get onDidChangeFocus(){return J.map(this._tree.onDidChangeFocus,e=>e.elements.filter(t=>t instanceof zi).map(t=>t.item),this._store)}get onDidChangeSelection(){return J.map(this._tree.onDidChangeSelection,e=>({items:e.elements.filter(t=>t instanceof zi).map(t=>t.item),event:e.browserEvent}),this._store)}get displayed(){return this._container.style.display!=="none"}set displayed(e){this._container.style.display=e?"":"none"}get scrollTop(){return this._tree.scrollTop}set scrollTop(e){this._tree.scrollTop=e}get ariaLabel(){return this._tree.ariaLabel}set ariaLabel(e){this._tree.ariaLabel=e??""}set enabled(e){this._tree.getHTMLElement().style.pointerEvents=e?"":"none"}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(e){this._matchOnDescription=e}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(e){this._matchOnDetail=e}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(e){this._matchOnLabel=e}get matchOnLabelMode(){return this._matchOnLabelMode}set matchOnLabelMode(e){this._matchOnLabelMode=e}get sortByLabel(){return this._sortByLabel}set sortByLabel(e){this._sortByLabel=e}get shouldLoop(){return this._shouldLoop}set shouldLoop(e){this._shouldLoop=e}_registerListeners(){this._registerOnKeyDown(),this._registerOnContainerClick(),this._registerOnMouseMiddleClick(),this._registerOnTreeModelChanged(),this._registerOnElementChecked(),this._registerOnContextMenu(),this._registerHoverListeners(),this._registerSelectionChangeListener(),this._registerSeparatorActionShowingListeners()}_registerOnKeyDown(){this._register(this._tree.onKeyDown(e=>{const t=new Nt(e);t.keyCode===10&&this.toggleCheckbox(),this._onKeyDown.fire(t)}))}_registerOnContainerClick(){this._register(U(this._container,ee.CLICK,e=>{(e.x||e.y)&&this._onLeave.fire()}))}_registerOnMouseMiddleClick(){this._register(U(this._container,ee.AUXCLICK,e=>{e.button===1&&this._onLeave.fire()}))}_registerOnTreeModelChanged(){this._register(this._tree.onDidChangeModel(()=>{const e=this._itemElements.filter(t=>!t.hidden).length;this._visibleCountObservable.set(e,void 0),this._hasCheckboxes&&this._updateCheckedObservables()}))}_registerOnElementChecked(){this._register(this._elementCheckedEventBufferer.wrapEvent(this._elementChecked.event,(e,t)=>t)(e=>this._updateCheckedObservables()))}_registerOnContextMenu(){this._register(this._tree.onContextMenu(e=>{e.element&&(e.browserEvent.preventDefault(),this._tree.setSelection([e.element]))}))}_registerHoverListeners(){const e=this._register(new vF(this.hoverDelegate.delay));this._register(this._tree.onMouseOver(async t=>{if(uR(t.browserEvent.target)){e.cancel();return}if(!(!uR(t.browserEvent.relatedTarget)&&yi(t.browserEvent.relatedTarget,t.element?.element)))try{await e.trigger(async()=>{t.element instanceof zi&&this.showHover(t.element)})}catch(i){if(!$c(i))throw i}})),this._register(this._tree.onMouseOut(t=>{yi(t.browserEvent.relatedTarget,t.element?.element)||e.cancel()}))}_registerSeparatorActionShowingListeners(){this._register(this._tree.onDidChangeFocus(e=>{const t=e.elements[0]?this._tree.getParentElement(e.elements[0]):null;for(const i of this._separatorRenderer.visibleSeparators){const n=i===t;!!(i.focusInsideSeparator&qr.ACTIVE_ITEM)!==n&&(n?i.focusInsideSeparator|=qr.ACTIVE_ITEM:i.focusInsideSeparator&=~qr.ACTIVE_ITEM,this._tree.rerender(i))}})),this._register(this._tree.onMouseOver(e=>{const t=e.element?this._tree.getParentElement(e.element):null;for(const i of this._separatorRenderer.visibleSeparators){if(i!==t)continue;i.focusInsideSeparator&qr.MOUSE_HOVER||(i.focusInsideSeparator|=qr.MOUSE_HOVER,this._tree.rerender(i))}})),this._register(this._tree.onMouseOut(e=>{const t=e.element?this._tree.getParentElement(e.element):null;for(const i of this._separatorRenderer.visibleSeparators){if(i!==t)continue;i.focusInsideSeparator&qr.MOUSE_HOVER&&(i.focusInsideSeparator&=~qr.MOUSE_HOVER,this._tree.rerender(i))}}))}_registerSelectionChangeListener(){this._register(this._tree.onDidChangeSelection(e=>{const t=e.elements.filter(i=>i instanceof zi);t.length!==e.elements.length&&(e.elements.length===1&&e.elements[0]instanceof fd&&(this._tree.setFocus([e.elements[0].children[0]]),this._tree.reveal(e.elements[0],0)),this._tree.setSelection(t))}))}setAllVisibleChecked(e){this._elementCheckedEventBufferer.bufferEvents(()=>{this._itemElements.forEach(t=>{!t.hidden&&!t.checkboxDisabled&&(t.checked=e)})})}setElements(e){this._elementDisposable.clear(),this._lastQueryString=void 0,this._inputElements=e,this._hasCheckboxes=this.parent.classList.contains("show-checkboxes");let t;this._itemElements=new Array,this._elementTree=e.reduce((i,n,s)=>{let r;if(n.type==="separator"){if(!n.buttons)return i;t=new fd(s,a=>this._onSeparatorButtonTriggered.fire(a),n),r=t}else{const a=s>0?e[s-1]:void 0;let l;a&&a.type==="separator"&&!a.buttons&&(t=void 0,l=a);const c=new zi(s,this._hasCheckboxes,d=>this._onButtonTriggered.fire(d),this._elementChecked,n,l);if(this._itemElements.push(c),t)return t.children.push(c),i;r=c}return i.push(r),i},new Array),this._setElementsToTree(this._elementTree),this.accessibilityService.isScreenReaderOptimized()&&setTimeout(()=>{const i=this._tree.getHTMLElement().querySelector(".monaco-list-row.focused"),n=i?.parentNode;if(i&&n){const s=i.nextSibling;i.remove(),n.insertBefore(i,s)}},0)}setFocusedElements(e){const t=e.map(i=>this._itemElements.find(n=>n.item===i)).filter(i=>!!i).filter(i=>!i.hidden);if(this._tree.setFocus(t),e.length>0){const i=this._tree.getFocus()[0];i&&this._tree.reveal(i)}}getActiveDescendant(){return this._tree.getHTMLElement().getAttribute("aria-activedescendant")}setSelectedElements(e){const t=e.map(i=>this._itemElements.find(n=>n.item===i)).filter(i=>!!i);this._tree.setSelection(t)}getCheckedElements(){return this._itemElements.filter(e=>e.checked).map(e=>e.item)}setCheckedElements(e){this._elementCheckedEventBufferer.bufferEvents(()=>{const t=new Set;for(const i of e)t.add(i);for(const i of this._itemElements)i.checked=t.has(i.item)})}focus(e){if(this._itemElements.length)switch(e===yt.Second&&this._itemElements.length<2&&(e=yt.First),e){case yt.First:this._tree.scrollTop=0,this._tree.focusFirst(void 0,t=>t.element instanceof zi);break;case yt.Second:{this._tree.scrollTop=0;let t=!1;this._tree.focusFirst(void 0,i=>i.element instanceof zi?t?!0:(t=!t,!1):!1);break}case yt.Last:this._tree.scrollTop=this._tree.scrollHeight,this._tree.focusLast(void 0,t=>t.element instanceof zi);break;case yt.Next:{const t=this._tree.getFocus();this._tree.focusNext(void 0,this._shouldLoop,void 0,n=>n.element instanceof zi?(this._tree.reveal(n.element),!0):!1);const i=this._tree.getFocus();t.length&&t[0]===i[0]&&t[0]===this._itemElements[this._itemElements.length-1]&&this._onLeave.fire();break}case yt.Previous:{const t=this._tree.getFocus();this._tree.focusPrevious(void 0,this._shouldLoop,void 0,n=>{if(!(n.element instanceof zi))return!1;const s=this._tree.getParentElement(n.element);return s===null||s.children[0]!==n.element?this._tree.reveal(n.element):this._tree.reveal(s),!0});const i=this._tree.getFocus();t.length&&t[0]===i[0]&&t[0]===this._itemElements[0]&&this._onLeave.fire();break}case yt.NextPage:this._tree.focusNextPage(void 0,t=>t.element instanceof zi?(this._tree.reveal(t.element),!0):!1);break;case yt.PreviousPage:this._tree.focusPreviousPage(void 0,t=>{if(!(t.element instanceof zi))return!1;const i=this._tree.getParentElement(t.element);return i===null||i.children[0]!==t.element?this._tree.reveal(t.element):this._tree.reveal(i),!0});break;case yt.NextSeparator:{let t=!1;const i=this._tree.getFocus()[0];this._tree.focusNext(void 0,!0,void 0,s=>{if(t)return!0;if(s.element instanceof fd)t=!0,this._separatorRenderer.isSeparatorVisible(s.element)?this._tree.reveal(s.element.children[0]):this._tree.reveal(s.element,0);else if(s.element instanceof zi){if(s.element.separator)return this._itemRenderer.isItemWithSeparatorVisible(s.element)?this._tree.reveal(s.element):this._tree.reveal(s.element,0),!0;if(s.element===this._elementTree[0])return this._tree.reveal(s.element,0),!0}return!1});const n=this._tree.getFocus()[0];i===n&&(this._tree.scrollTop=this._tree.scrollHeight,this._tree.focusLast(void 0,s=>s.element instanceof zi));break}case yt.PreviousSeparator:{let t,i=!!this._tree.getFocus()[0]?.separator;this._tree.focusPrevious(void 0,!0,void 0,n=>{if(n.element instanceof fd)i?t||(this._separatorRenderer.isSeparatorVisible(n.element)?this._tree.reveal(n.element):this._tree.reveal(n.element,0),t=n.element.children[0]):i=!0;else if(n.element instanceof zi&&!t){if(n.element.separator)this._itemRenderer.isItemWithSeparatorVisible(n.element)?this._tree.reveal(n.element):this._tree.reveal(n.element,0),t=n.element;else if(n.element===this._elementTree[0])return this._tree.reveal(n.element,0),!0}return!1}),t&&this._tree.setFocus([t]);break}}}clearFocus(){this._tree.setFocus([])}domFocus(){this._tree.domFocus()}layout(e){this._tree.getHTMLElement().style.maxHeight=e?`${Math.floor(e/44)*44+6}px`:"",this._tree.layout()}filter(e){if(this._lastQueryString=e,!(this._sortByLabel||this._matchOnLabel||this._matchOnDescription||this._matchOnDetail))return this._tree.layout(),!1;const t=e;if(e=e.trim(),!e||!(this.matchOnLabel||this.matchOnDescription||this.matchOnDetail))this._itemElements.forEach(i=>{i.labelHighlights=void 0,i.descriptionHighlights=void 0,i.detailHighlights=void 0,i.hidden=!1;const n=i.index&&this._inputElements[i.index-1];i.item&&(i.separator=n&&n.type==="separator"&&!n.buttons?n:void 0)});else{let i;this._itemElements.forEach(n=>{let s;this.matchOnLabelMode==="fuzzy"?s=this.matchOnLabel?IS(e,Tm(n.saneLabel))??void 0:void 0:s=this.matchOnLabel?jee(t,Tm(n.saneLabel))??void 0:void 0;const r=this.matchOnDescription?IS(e,Tm(n.saneDescription||""))??void 0:void 0,a=this.matchOnDetail?IS(e,Tm(n.saneDetail||""))??void 0:void 0;if(s||r||a?(n.labelHighlights=s,n.descriptionHighlights=r,n.detailHighlights=a,n.hidden=!1):(n.labelHighlights=void 0,n.descriptionHighlights=void 0,n.detailHighlights=void 0,n.hidden=n.item?!n.item.alwaysShow:!0),n.item?n.separator=void 0:n.separator&&(n.hidden=!0),!this.sortByLabel){const l=n.index&&this._inputElements[n.index-1]||void 0;l?.type==="separator"&&!l.buttons&&(i=l),i&&!n.hidden&&(n.separator=i,i=void 0)}})}return this._setElementsToTree(this._sortByLabel&&e?this._itemElements:this._elementTree),this._tree.layout(),!0}toggleCheckbox(){this._elementCheckedEventBufferer.bufferEvents(()=>{const e=this._tree.getFocus().filter(i=>i instanceof zi),t=this._allVisibleChecked(e);for(const i of e)i.checkboxDisabled||(i.checked=!t)})}style(e){this._tree.style(e)}toggleHover(){const e=this._tree.getFocus()[0];if(!e?.saneTooltip||!(e instanceof zi))return;if(this._lastHover&&!this._lastHover.isDisposed){this._lastHover.dispose();return}this.showHover(e);const t=new X;t.add(this._tree.onDidChangeFocus(i=>{i.elements[0]instanceof zi&&this.showHover(i.elements[0])})),this._lastHover&&t.add(this._lastHover),this._elementDisposable.add(t)}_setElementsToTree(e){const t=new Array;for(const i of e)i instanceof fd?t.push({element:i,collapsible:!1,collapsed:!1,children:i.children.map(n=>({element:n,collapsible:!1,collapsed:!1}))}):t.push({element:i,collapsible:!1,collapsed:!1});this._tree.setChildren(null,t)}_allVisibleChecked(e,t=!0){for(let i=0,n=e.length;i{this._allVisibleCheckedObservable.set(this._allVisibleChecked(this._itemElements,!1),e);const t=this._itemElements.filter(i=>i.checked).length;this._checkedCountObservable.set(t,e),this._checkedElementsObservable.set(this.getCheckedElements(),e)})}showHover(e){this._lastHover&&!this._lastHover.isDisposed&&(this.hoverDelegate.onDidHideHover?.(),this._lastHover?.dispose()),!(!e.element||!e.saneTooltip)&&(this._lastHover=this.hoverDelegate.showHover({content:e.saneTooltip,target:e.element,linkHandler:t=>{this.linkOpenerDelegate(t)},appearance:{showPointer:!0},container:this._container,position:{hoverPosition:1}},!1))}};Cy([Jt],C_.prototype,"onDidChangeFocus",null);Cy([Jt],C_.prototype,"onDidChangeSelection",null);C_=Cy([$D(4,ke),$D(5,ms)],C_);function jee(o,e){const{text:t,iconOffsets:i}=e;if(!i||i.length===0)return oO(o,t);const n=k0(t," "),s=t.length-n.length,r=oO(o,n);if(r)for(const a of r){const l=i[a.start+s]+s;a.start+=l,a.end+=l}return r}function oO(o,e){const t=e.toLowerCase().indexOf(o.toLowerCase());return t!==-1?[{start:t,end:t+o.length}]:null}function qee(o,e,t){const i=o.labelHighlights||[],n=e.labelHighlights||[];return i.length&&!n.length?-1:!i.length&&n.length?1:i.length===0&&n.length===0?0:zee(o.saneSortLabel,e.saneSortLabel,t)}const Y9={weight:200,when:re.and(re.equals(L9,"quickPick"),_J),metadata:{description:m("quickPick","Used while in the context of the quick pick. If you change one keybinding for this command, you should change all of the other keybindings (modifier variants) of this command as well.")}};function ts(o,e={}){Nn.registerCommandAndKeybindingRule({...Y9,...o,secondary:Gee(o.primary,o.secondary??[],e)})}const _v=Ue?256:2048;function Gee(o,e,t={}){return t.withAltMod&&e.push(512+o),t.withCtrlMod&&(e.push(_v+o),t.withAltMod&&e.push(512+_v+o)),t.withCmdMod&&Ue&&(e.push(2048+o),t.withCtrlMod&&e.push(2304+o),t.withAltMod&&(e.push(2560+o),t.withCtrlMod&&e.push(2816+o))),e}function Ss(o,e){return t=>{const i=t.get(fy).currentQuickInput;if(i)return e&&i.quickNavigate?i.focus(e):i.focus(o)}}ts({id:"quickInput.pageNext",primary:12,handler:Ss(yt.NextPage)},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0});ts({id:"quickInput.pagePrevious",primary:11,handler:Ss(yt.PreviousPage)},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0});ts({id:"quickInput.first",primary:_v+14,handler:Ss(yt.First)},{withAltMod:!0,withCmdMod:!0});ts({id:"quickInput.last",primary:_v+13,handler:Ss(yt.Last)},{withAltMod:!0,withCmdMod:!0});ts({id:"quickInput.next",primary:18,handler:Ss(yt.Next)},{withCtrlMod:!0});ts({id:"quickInput.previous",primary:16,handler:Ss(yt.Previous)},{withCtrlMod:!0});const rO=m("quickInput.nextSeparatorWithQuickAccessFallback","If we're in quick access mode, this will navigate to the next item. If we are not in quick access mode, this will navigate to the next separator."),aO=m("quickInput.previousSeparatorWithQuickAccessFallback","If we're in quick access mode, this will navigate to the previous item. If we are not in quick access mode, this will navigate to the previous separator.");Ue?(ts({id:"quickInput.nextSeparatorWithQuickAccessFallback",primary:2066,handler:Ss(yt.NextSeparator,yt.Next),metadata:{description:rO}}),ts({id:"quickInput.nextSeparator",primary:2578,secondary:[2322],handler:Ss(yt.NextSeparator)},{withCtrlMod:!0}),ts({id:"quickInput.previousSeparatorWithQuickAccessFallback",primary:2064,handler:Ss(yt.PreviousSeparator,yt.Previous),metadata:{description:aO}}),ts({id:"quickInput.previousSeparator",primary:2576,secondary:[2320],handler:Ss(yt.PreviousSeparator)},{withCtrlMod:!0})):(ts({id:"quickInput.nextSeparatorWithQuickAccessFallback",primary:530,handler:Ss(yt.NextSeparator,yt.Next),metadata:{description:rO}}),ts({id:"quickInput.nextSeparator",primary:2578,handler:Ss(yt.NextSeparator)}),ts({id:"quickInput.previousSeparatorWithQuickAccessFallback",primary:528,handler:Ss(yt.PreviousSeparator,yt.Previous),metadata:{description:aO}}),ts({id:"quickInput.previousSeparator",primary:2576,handler:Ss(yt.PreviousSeparator)}));ts({id:"quickInput.acceptInBackground",when:re.and(Y9.when,re.or(W9.negate(),vJ)),primary:17,weight:250,handler:o=>{o.get(fy).currentQuickInput?.accept(!0)}},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0});var Zee=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},QS=function(o,e){return function(t,i){e(t,i,o)}},jD;const Jn=ce;var ah;let qD=(ah=class extends z{get currentQuickInput(){return this.controller??void 0}get container(){return this._container}constructor(e,t,i,n){super(),this.options=e,this.layoutService=t,this.instantiationService=i,this.contextKeyService=n,this.enabled=!0,this.onDidAcceptEmitter=this._register(new A),this.onDidCustomEmitter=this._register(new A),this.onDidTriggerButtonEmitter=this._register(new A),this.keyMods={ctrlCmd:!1,alt:!1},this.controller=null,this.onShowEmitter=this._register(new A),this.onShow=this.onShowEmitter.event,this.onHideEmitter=this._register(new A),this.onHide=this.onHideEmitter.event,this.inQuickInputContext=pJ.bindTo(this.contextKeyService),this.quickInputTypeContext=bJ.bindTo(this.contextKeyService),this.endOfQuickInputBoxContext=CJ.bindTo(this.contextKeyService),this.idPrefix=e.idPrefix,this._container=e.container,this.styles=e.styles,this._register(J.runAndSubscribe(T0,({window:s,disposables:r})=>this.registerKeyModsListeners(s,r),{window:_t,disposables:this._store})),this._register(hV(s=>{this.ui&&fe(this.ui.container)===s&&(this.reparentUI(this.layoutService.mainContainer),this.layout(this.layoutService.mainContainerDimension,this.layoutService.mainContainerOffset.quickPickTop))}))}registerKeyModsListeners(e,t){const i=n=>{this.keyMods.ctrlCmd=n.ctrlKey||n.metaKey,this.keyMods.alt=n.altKey};for(const n of[ee.KEY_DOWN,ee.KEY_UP,ee.MOUSE_DOWN])t.add(U(e,n,i,!0))}getUI(e){if(this.ui)return e&&fe(this._container)!==fe(this.layoutService.activeContainer)&&(this.reparentUI(this.layoutService.activeContainer),this.layout(this.layoutService.activeContainerDimension,this.layoutService.activeContainerOffset.quickPickTop)),this.ui;const t=Z(this._container,Jn(".quick-input-widget.show-file-icons"));t.tabIndex=-1,t.style.display="none";const i=Vs(t),n=Z(t,Jn(".quick-input-titlebar")),s=this._register(new oo(n,{hoverDelegate:this.options.hoverDelegate}));s.domNode.classList.add("quick-input-left-action-bar");const r=Z(n,Jn(".quick-input-title")),a=this._register(new oo(n,{hoverDelegate:this.options.hoverDelegate}));a.domNode.classList.add("quick-input-right-action-bar");const l=Z(t,Jn(".quick-input-header")),c=Z(l,Jn("input.quick-input-check-all"));c.type="checkbox",c.setAttribute("aria-label",m("quickInput.checkAll","Toggle all checkboxes")),this._register(jt(c,ee.CHANGE,B=>{const G=c.checked;W.setAllVisibleChecked(G)})),this._register(U(c,ee.CLICK,B=>{(B.x||B.y)&&f.setFocus()}));const d=Z(l,Jn(".quick-input-description")),h=Z(l,Jn(".quick-input-and-message")),u=Z(h,Jn(".quick-input-filter")),f=this._register(new RJ(u,this.styles.inputBox,this.styles.toggle));f.setAttribute("aria-describedby",`${this.idPrefix}message`);const g=Z(u,Jn(".quick-input-visible-count"));g.setAttribute("aria-live","polite"),g.setAttribute("aria-atomic","true");const p=new PD(g,{countFormat:m({key:"quickInput.visibleCount",comment:["This tells the user how many items are shown in a list of items to select from. The items can be anything. Currently not visible, but read by screen readers."]},"{0} Results")},this.styles.countBadge),_=Z(u,Jn(".quick-input-count"));_.setAttribute("aria-live","polite");const b=new PD(_,{countFormat:m({key:"quickInput.countSelected",comment:["This tells the user how many items are selected in a list of items to select from. The items can be anything."]},"{0} Selected")},this.styles.countBadge),C=this._register(new oo(l,{hoverDelegate:this.options.hoverDelegate}));C.domNode.classList.add("quick-input-inline-action-bar");const w=Z(l,Jn(".quick-input-action")),v=this._register(new AD(w,this.styles.button));v.label=m("ok","OK"),this._register(v.onDidClick(B=>{this.onDidAcceptEmitter.fire()}));const y=Z(l,Jn(".quick-input-action")),x=this._register(new AD(y,{...this.styles.button,supportIcons:!0}));x.label=m("custom","Custom"),this._register(x.onDidClick(B=>{this.onDidCustomEmitter.fire()}));const L=Z(h,Jn(`#${this.idPrefix}message.quick-input-message`)),E=this._register(new OD(t,this.styles.progressBar));E.getContainer().classList.add("quick-input-progress");const N=Z(t,Jn(".quick-input-html-widget"));N.tabIndex=-1;const H=Z(t,Jn(".quick-input-description")),F=this.idPrefix+"list",W=this._register(this.instantiationService.createInstance(C_,t,this.options.hoverDelegate,this.options.linkOpenerDelegate,F));f.setAttribute("aria-controls",F),this._register(W.onDidChangeFocus(()=>{f.setAttribute("aria-activedescendant",W.getActiveDescendant()??"")})),this._register(W.onChangedAllVisibleChecked(B=>{c.checked=B})),this._register(W.onChangedVisibleCount(B=>{p.setCount(B)})),this._register(W.onChangedCheckedCount(B=>{b.setCount(B)})),this._register(W.onLeave(()=>{setTimeout(()=>{this.controller&&(f.setFocus(),this.controller instanceof sv&&this.controller.canSelectMany&&W.clearFocus())},0)}));const j=Ph(t);return this._register(j),this._register(U(t,ee.FOCUS,B=>{const G=this.getUI();if(yi(B.relatedTarget,G.inputContainer)){const ne=G.inputBox.isSelectionAtEnd();this.endOfQuickInputBoxContext.get()!==ne&&this.endOfQuickInputBoxContext.set(ne)}yi(B.relatedTarget,G.container)||(this.inQuickInputContext.set(!0),this.previousFocusElement=Ei(B.relatedTarget)?B.relatedTarget:void 0)},!0)),this._register(j.onDidBlur(()=>{!this.getUI().ignoreFocusOut&&!this.options.ignoreFocusOut()&&this.hide(yg.Blur),this.inQuickInputContext.set(!1),this.endOfQuickInputBoxContext.set(!1),this.previousFocusElement=void 0})),this._register(f.onKeyDown(B=>{const G=this.getUI().inputBox.isSelectionAtEnd();this.endOfQuickInputBoxContext.get()!==G&&this.endOfQuickInputBoxContext.set(G)})),this._register(U(t,ee.FOCUS,B=>{f.setFocus()})),this._register(jt(t,ee.KEY_DOWN,B=>{if(!yi(B.target,N))switch(B.keyCode){case 3:je.stop(B,!0),this.enabled&&this.onDidAcceptEmitter.fire();break;case 9:je.stop(B,!0),this.hide(yg.Gesture);break;case 2:if(!B.altKey&&!B.ctrlKey&&!B.metaKey){const G=[".quick-input-list .monaco-action-bar .always-visible",".quick-input-list-entry:hover .monaco-action-bar",".monaco-list-row.focused .monaco-action-bar"];if(t.classList.contains("show-checkboxes")?G.push("input"):G.push("input[type=text]"),this.getUI().list.displayed&&G.push(".monaco-list"),this.getUI().message&&G.push(".quick-input-message a"),this.getUI().widget){if(yi(B.target,this.getUI().widget))break;G.push(".quick-input-html-widget")}const ne=t.querySelectorAll(G.join(", "));B.shiftKey&&B.target===ne[0]?(je.stop(B,!0),W.clearFocus()):!B.shiftKey&&yi(B.target,ne[ne.length-1])&&(je.stop(B,!0),ne[0].focus())}break;case 10:B.ctrlKey&&(je.stop(B,!0),this.getUI().list.toggleHover());break}})),this.ui={container:t,styleSheet:i,leftActionBar:s,titleBar:n,title:r,description1:H,description2:d,widget:N,rightActionBar:a,inlineActionBar:C,checkAll:c,inputContainer:h,filterContainer:u,inputBox:f,visibleCountContainer:g,visibleCount:p,countContainer:_,count:b,okContainer:w,ok:v,message:L,customButtonContainer:y,customButton:x,list:W,progressBar:E,onDidAccept:this.onDidAcceptEmitter.event,onDidCustom:this.onDidCustomEmitter.event,onDidTriggerButton:this.onDidTriggerButtonEmitter.event,ignoreFocusOut:!1,keyMods:this.keyMods,show:B=>this.show(B),hide:()=>this.hide(),setVisibilities:B=>this.setVisibilities(B),setEnabled:B=>this.setEnabled(B),setContextKey:B=>this.options.setContextKey(B),linkOpenerDelegate:B=>this.options.linkOpenerDelegate(B)},this.updateStyles(),this.ui}reparentUI(e){this.ui&&(this._container=e,Z(this._container,this.ui.container))}pick(e,t={},i=ut.None){return new Promise((n,s)=>{let r=d=>{r=n,t.onKeyMods?.(a.keyMods),n(d)};if(i.isCancellationRequested){r(void 0);return}const a=this.createQuickPick({useSeparators:!0});let l;const c=[a,a.onDidAccept(()=>{if(a.canSelectMany)r(a.selectedItems.slice()),a.hide();else{const d=a.activeItems[0];d&&(r(d),a.hide())}}),a.onDidChangeActive(d=>{const h=d[0];h&&t.onDidFocus&&t.onDidFocus(h)}),a.onDidChangeSelection(d=>{if(!a.canSelectMany){const h=d[0];h&&(r(h),a.hide())}}),a.onDidTriggerItemButton(d=>t.onDidTriggerItemButton&&t.onDidTriggerItemButton({...d,removeItem:()=>{const h=a.items.indexOf(d.item);if(h!==-1){const u=a.items.slice(),f=u.splice(h,1),g=a.activeItems.filter(_=>_!==f[0]),p=a.keepScrollPosition;a.keepScrollPosition=!0,a.items=u,g&&(a.activeItems=g),a.keepScrollPosition=p}}})),a.onDidTriggerSeparatorButton(d=>t.onDidTriggerSeparatorButton?.(d)),a.onDidChangeValue(d=>{l&&!d&&(a.activeItems.length!==1||a.activeItems[0]!==l)&&(a.activeItems=[l])}),i.onCancellationRequested(()=>{a.hide()}),a.onDidHide(()=>{xt(c),r(void 0)})];a.title=t.title,t.value&&(a.value=t.value),a.canSelectMany=!!t.canPickMany,a.placeholder=t.placeHolder,a.ignoreFocusOut=!!t.ignoreFocusLost,a.matchOnDescription=!!t.matchOnDescription,a.matchOnDetail=!!t.matchOnDetail,a.matchOnLabel=t.matchOnLabel===void 0||t.matchOnLabel,a.quickNavigate=t.quickNavigate,a.hideInput=!!t.hideInput,a.contextKey=t.contextKey,a.busy=!0,Promise.all([e,t.activeItem]).then(([d,h])=>{l=h,a.busy=!1,a.items=d,a.canSelectMany&&(a.selectedItems=d.filter(u=>u.type!=="separator"&&u.picked)),l&&(a.activeItems=[l])}),a.show(),Promise.resolve(e).then(void 0,d=>{s(d),a.hide()})})}createQuickPick(e={useSeparators:!1}){const t=this.getUI(!0);return new sv(t)}createInputBox(){const e=this.getUI(!0);return new wJ(e)}show(e){const t=this.getUI(!0);this.onShowEmitter.fire();const i=this.controller;this.controller=e,i?.didHide(),this.setEnabled(!0),t.leftActionBar.clear(),t.title.textContent="",t.description1.textContent="",t.description2.textContent="",un(t.widget),t.rightActionBar.clear(),t.inlineActionBar.clear(),t.checkAll.checked=!1,t.inputBox.placeholder="",t.inputBox.password=!1,t.inputBox.showDecoration(Qt.Ignore),t.visibleCount.setCount(0),t.count.setCount(0),un(t.message),t.progressBar.stop(),t.list.setElements([]),t.list.matchOnDescription=!1,t.list.matchOnDetail=!1,t.list.matchOnLabel=!0,t.list.sortByLabel=!0,t.ignoreFocusOut=!1,t.inputBox.toggles=void 0;const n=this.options.backKeybindingLabel();MD.tooltip=n?m("quickInput.backWithKeybinding","Back ({0})",n):m("quickInput.back","Back"),t.container.style.display="",this.updateLayout(),t.inputBox.setFocus(),this.quickInputTypeContext.set(e.type)}isVisible(){return!!this.ui&&this.ui.container.style.display!=="none"}setVisibilities(e){const t=this.getUI();t.title.style.display=e.title?"":"none",t.description1.style.display=e.description&&(e.inputBox||e.checkAll)?"":"none",t.description2.style.display=e.description&&!(e.inputBox||e.checkAll)?"":"none",t.checkAll.style.display=e.checkAll?"":"none",t.inputContainer.style.display=e.inputBox?"":"none",t.filterContainer.style.display=e.inputBox?"":"none",t.visibleCountContainer.style.display=e.visibleCount?"":"none",t.countContainer.style.display=e.count?"":"none",t.okContainer.style.display=e.ok?"":"none",t.customButtonContainer.style.display=e.customButton?"":"none",t.message.style.display=e.message?"":"none",t.progressBar.getContainer().style.display=e.progressBar?"":"none",t.list.displayed=!!e.list,t.container.classList.toggle("show-checkboxes",!!e.checkBox),t.container.classList.toggle("hidden-input",!e.inputBox&&!e.description),this.updateLayout()}setEnabled(e){if(e!==this.enabled){this.enabled=e;for(const t of this.getUI().leftActionBar.viewItems)t.action.enabled=e;for(const t of this.getUI().rightActionBar.viewItems)t.action.enabled=e;this.getUI().checkAll.disabled=!e,this.getUI().inputBox.enabled=e,this.getUI().ok.enabled=e,this.getUI().list.enabled=e}}hide(e){const t=this.controller;if(!t)return;t.willHide(e);const i=this.ui?.container,n=i&&!OF(i);if(this.controller=null,this.onHideEmitter.fire(),i&&(i.style.display="none"),!n){let s=this.previousFocusElement;for(;s&&!s.offsetParent;)s=s.parentElement??void 0;s?.offsetParent?(s.focus(),this.previousFocusElement=void 0):this.options.returnFocus()}t.didHide(e)}layout(e,t){this.dimension=e,this.titleBarOffset=t,this.updateLayout()}updateLayout(){if(this.ui&&this.isVisible()){this.ui.container.style.top=`${this.titleBarOffset}px`;const e=this.ui.container.style,t=Math.min(this.dimension.width*.62,jD.MAX_WIDTH);e.width=t+"px",e.marginLeft="-"+t/2+"px",this.ui.inputBox.layout(),this.ui.list.layout(this.dimension&&this.dimension.height*.4)}}applyStyles(e){this.styles=e,this.updateStyles()}updateStyles(){if(this.ui){const{quickInputTitleBackground:e,quickInputBackground:t,quickInputForeground:i,widgetBorder:n,widgetShadow:s}=this.styles.widget;this.ui.titleBar.style.backgroundColor=e??"",this.ui.container.style.backgroundColor=t??"",this.ui.container.style.color=i??"",this.ui.container.style.border=n?`1px solid ${n}`:"",this.ui.container.style.boxShadow=s?`0 0 8px 2px ${s}`:"",this.ui.list.style(this.styles.list);const r=[];this.styles.pickerGroup.pickerGroupBorder&&r.push(`.quick-input-list .quick-input-list-entry { border-top-color: ${this.styles.pickerGroup.pickerGroupBorder}; }`),this.styles.pickerGroup.pickerGroupForeground&&r.push(`.quick-input-list .quick-input-list-separator { color: ${this.styles.pickerGroup.pickerGroupForeground}; }`),this.styles.pickerGroup.pickerGroupForeground&&r.push(".quick-input-list .quick-input-list-separator-as-item { color: var(--vscode-descriptionForeground); }"),(this.styles.keybindingLabel.keybindingLabelBackground||this.styles.keybindingLabel.keybindingLabelBorder||this.styles.keybindingLabel.keybindingLabelBottomBorder||this.styles.keybindingLabel.keybindingLabelShadow||this.styles.keybindingLabel.keybindingLabelForeground)&&(r.push(".quick-input-list .monaco-keybinding > .monaco-keybinding-key {"),this.styles.keybindingLabel.keybindingLabelBackground&&r.push(`background-color: ${this.styles.keybindingLabel.keybindingLabelBackground};`),this.styles.keybindingLabel.keybindingLabelBorder&&r.push(`border-color: ${this.styles.keybindingLabel.keybindingLabelBorder};`),this.styles.keybindingLabel.keybindingLabelBottomBorder&&r.push(`border-bottom-color: ${this.styles.keybindingLabel.keybindingLabelBottomBorder};`),this.styles.keybindingLabel.keybindingLabelShadow&&r.push(`box-shadow: inset 0 -1px 0 ${this.styles.keybindingLabel.keybindingLabelShadow};`),this.styles.keybindingLabel.keybindingLabelForeground&&r.push(`color: ${this.styles.keybindingLabel.keybindingLabelForeground};`),r.push("}"));const a=r.join(` +`);a!==this.ui.styleSheet.textContent&&(this.ui.styleSheet.textContent=a)}}},jD=ah,ah.MAX_WIDTH=600,ah);qD=jD=Zee([QS(1,jc),QS(2,ke),QS(3,De)],qD);var Yee=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vm=function(o,e){return function(t,i){e(t,i,o)}};let GD=class extends P${get controller(){return this._controller||(this._controller=this._register(this.createController())),this._controller}get hasController(){return!!this._controller}get currentQuickInput(){return this.controller.currentQuickInput}get quickAccess(){return this._quickAccess||(this._quickAccess=this._register(this.instantiationService.createInstance(TD))),this._quickAccess}constructor(e,t,i,n,s){super(i),this.instantiationService=e,this.contextKeyService=t,this.layoutService=n,this.configurationService=s,this._onShow=this._register(new A),this._onHide=this._register(new A),this.contexts=new Map}createController(e=this.layoutService,t){const i={idPrefix:"quickInput_",container:e.activeContainer,ignoreFocusOut:()=>!1,backKeybindingLabel:()=>{},setContextKey:s=>this.setContextKey(s),linkOpenerDelegate:s=>{this.instantiationService.invokeFunction(r=>{r.get(Vo).open(s,{allowCommands:!0,fromUserGesture:!0})})},returnFocus:()=>e.focus(),styles:this.computeStyles(),hoverDelegate:this._register(this.instantiationService.createInstance(RD))},n=this._register(this.instantiationService.createInstance(qD,{...i,...t}));return n.layout(e.activeContainerDimension,e.activeContainerOffset.quickPickTop),this._register(e.onDidLayoutActiveContainer(s=>{fe(e.activeContainer)===fe(n.container)&&n.layout(s,e.activeContainerOffset.quickPickTop)})),this._register(e.onDidChangeActiveContainer(()=>{n.isVisible()||n.layout(e.activeContainerDimension,e.activeContainerOffset.quickPickTop)})),this._register(n.onShow(()=>{this.resetContextKeys(),this._onShow.fire()})),this._register(n.onHide(()=>{this.resetContextKeys(),this._onHide.fire()})),n}setContextKey(e){let t;e&&(t=this.contexts.get(e),t||(t=new le(e,!1).bindTo(this.contextKeyService),this.contexts.set(e,t))),!(t&&t.get())&&(this.resetContextKeys(),t?.set(!0))}resetContextKeys(){this.contexts.forEach(e=>{e.get()&&e.reset()})}pick(e,t,i=ut.None){return this.controller.pick(e,t,i)}createQuickPick(e={useSeparators:!1}){return this.controller.createQuickPick(e)}createInputBox(){return this.controller.createInputBox()}updateStyles(){this.hasController&&this.controller.applyStyles(this.computeStyles())}computeStyles(){return{widget:{quickInputBackground:oe(TA),quickInputForeground:oe(eq),quickInputTitleBackground:oe(tq),widgetBorder:oe(FK),widgetShadow:oe(q_)},inputBox:F7,toggle:O7,countBadge:B7,button:PY,progressBar:OY,keybindingLabel:AY,list:$g({listBackground:TA,listFocusBackground:PC,listFocusForeground:AC,listInactiveFocusForeground:AC,listInactiveSelectionIconForeground:TT,listInactiveFocusBackground:PC,listFocusOutline:Ut,listInactiveFocusOutline:Ut}),pickerGroup:{pickerGroupBorder:oe(iq),pickerGroupForeground:oe(Q3)}}}};GD=Yee([vm(0,ke),vm(1,De),vm(2,en),vm(3,jc),vm(4,lt)],GD);var Q9=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},xd=function(o,e){return function(t,i){e(t,i,o)}};let ZD=class extends GD{constructor(e,t,i,n,s,r){super(t,i,n,new pk(e.getContainerDomNode(),s),r),this.host=void 0;const a=v_.get(e);if(a){const l=a.widget;this.host={_serviceBrand:void 0,get mainContainer(){return l.getDomNode()},getContainer(){return l.getDomNode()},whenContainerStylesLoaded(){},get containers(){return[l.getDomNode()]},get activeContainer(){return l.getDomNode()},get mainContainerDimension(){return e.getLayoutInfo()},get activeContainerDimension(){return e.getLayoutInfo()},get onDidLayoutMainContainer(){return e.onDidLayoutChange},get onDidLayoutActiveContainer(){return e.onDidLayoutChange},get onDidLayoutContainer(){return J.map(e.onDidLayoutChange,c=>({container:l.getDomNode(),dimension:c}))},get onDidChangeActiveContainer(){return J.None},get onDidAddContainer(){return J.None},get mainContainerOffset(){return{top:0,quickPickTop:0}},get activeContainerOffset(){return{top:0,quickPickTop:0}},focus:()=>e.focus()}}else this.host=void 0}createController(){return super.createController(this.host)}};ZD=Q9([xd(1,ke),xd(2,De),xd(3,en),xd(4,Pt),xd(5,lt)],ZD);let YD=class{get activeService(){const e=this.codeEditorService.getFocusedCodeEditor();if(!e)throw new Error("Quick input service needs a focused editor to work.");let t=this.mapEditorToService.get(e);if(!t){const i=t=this.instantiationService.createInstance(ZD,e);this.mapEditorToService.set(e,t),ng(e.onDidDispose)(()=>{i.dispose(),this.mapEditorToService.delete(e)})}return t}get currentQuickInput(){return this.activeService.currentQuickInput}get quickAccess(){return this.activeService.quickAccess}constructor(e,t){this.instantiationService=e,this.codeEditorService=t,this.mapEditorToService=new Map}pick(e,t,i=ut.None){return this.activeService.pick(e,t,i)}createQuickPick(e={useSeparators:!1}){return this.activeService.createQuickPick(e)}createInputBox(){return this.activeService.createInputBox()}};YD=Q9([xd(0,ke),xd(1,Pt)],YD);const $w=class $w{static get(e){return e.getContribution($w.ID)}constructor(e){this.editor=e,this.widget=new QD(this.editor)}dispose(){this.widget.dispose()}};$w.ID="editor.controller.quickInput";let v_=$w;const Kw=class Kw{constructor(e){this.codeEditor=e,this.domNode=document.createElement("div"),this.codeEditor.addOverlayWidget(this)}getId(){return Kw.ID}getDomNode(){return this.domNode}getPosition(){return{preference:2}}dispose(){this.codeEditor.removeOverlayWidget(this)}};Kw.ID="editor.contrib.quickInputWidget";let QD=Kw;Ho(v_.ID,v_,4);class Qee{constructor(e,t,i,n,s){this._parsedThemeRuleBrand=void 0,this.token=e,this.index=t,this.fontStyle=i,this.foreground=n,this.background=s}}function Xee(o){if(!o||!Array.isArray(o))return[];const e=[];let t=0;for(let i=0,n=o.length;i{const u=ste(d.token,h.token);return u!==0?u:d.index-h.index});let t=0,i="000000",n="ffffff";for(;o.length>=1&&o[0].token==="";){const d=o.shift();d.fontStyle!==-1&&(t=d.fontStyle),d.foreground!==null&&(i=d.foreground),d.background!==null&&(n=d.background)}const s=new tte;for(const d of e)s.getId(d);const r=s.getId(i),a=s.getId(n),l=new M2(t,r,a),c=new R2(l);for(let d=0,h=o.length;d"u"){const n=this._match(t),s=nte(t);i=(n.metadata|s<<8)>>>0,this._cache.set(t,i)}return(i|e<<0)>>>0}}const ite=/\b(comment|string|regex|regexp)\b/;function nte(o){const e=o.match(ite);if(!e)return 0;switch(e[1]){case"comment":return 1;case"string":return 2;case"regex":return 3;case"regexp":return 3}throw new Error("Unexpected match for standard token type!")}function ste(o,e){return oe?1:0}class M2{constructor(e,t,i){this._themeTrieElementRuleBrand=void 0,this._fontStyle=e,this._foreground=t,this._background=i,this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}clone(){return new M2(this._fontStyle,this._foreground,this._background)}acceptOverwrite(e,t,i){e!==-1&&(this._fontStyle=e),t!==0&&(this._foreground=t),i!==0&&(this._background=i),this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}}class R2{constructor(e){this._themeTrieElementBrand=void 0,this._mainRule=e,this._children=new Map}match(e){if(e==="")return this._mainRule;const t=e.indexOf(".");let i,n;t===-1?(i=e,n=""):(i=e.substring(0,t),n=e.substring(t+1));const s=this._children.get(i);return typeof s<"u"?s.match(n):this._mainRule}insert(e,t,i,n){if(e===""){this._mainRule.acceptOverwrite(t,i,n);return}const s=e.indexOf(".");let r,a;s===-1?(r=e,a=""):(r=e.substring(0,s),a=e.substring(s+1));let l=this._children.get(r);typeof l>"u"&&(l=new R2(this._mainRule.clone()),this._children.set(r,l)),l.insert(a,t,i,n)}}function ote(o){const e=[];for(let t=1,i=o.length;t({format:n.format,location:n.location.toString()}))}}o.toJSONObject=e;function t(i){const n=s=>Os(s)?s:void 0;if(i&&Array.isArray(i.src)&&i.src.every(s=>Os(s.format)&&Os(s.location)))return{weight:n(i.weight),style:n(i.style),src:i.src.map(s=>({format:s.format,location:ve.parse(s.location)}))}}o.fromJSONObject=t})(cO||(cO={}));class hte{constructor(){this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this.iconSchema={definitions:{icons:{type:"object",properties:{fontId:{type:"string",description:m("iconDefinition.fontId","The id of the font to use. If not set, the font that is defined first is used.")},fontCharacter:{type:"string",description:m("iconDefinition.fontCharacter","The font character associated with the icon definition.")}},additionalProperties:!1,defaultSnippets:[{body:{fontCharacter:"\\\\e030"}}]}},type:"object",properties:{}},this.iconReferenceSchema={type:"string",pattern:`^${Ee.iconNameExpression}$`,enum:[],enumDescriptions:[]},this.iconsById={},this.iconFontsById={}}registerIcon(e,t,i,n){const s=this.iconsById[e];if(s){if(i&&!s.description){s.description=i,this.iconSchema.properties[e].markdownDescription=`${i} $(${e})`;const l=this.iconReferenceSchema.enum.indexOf(e);l!==-1&&(this.iconReferenceSchema.enumDescriptions[l]=i),this._onDidChange.fire()}return s}const r={id:e,description:i,defaults:t,deprecationMessage:n};this.iconsById[e]=r;const a={$ref:"#/definitions/icons"};return n&&(a.deprecationMessage=n),i&&(a.markdownDescription=`${i}: $(${e})`),this.iconSchema.properties[e]=a,this.iconReferenceSchema.enum.push(e),this.iconReferenceSchema.enumDescriptions.push(i||""),this._onDidChange.fire(),{id:e}}getIcons(){return Object.keys(this.iconsById).map(e=>this.iconsById[e])}getIcon(e){return this.iconsById[e]}getIconSchema(){return this.iconSchema}toString(){const e=(s,r)=>s.id.localeCompare(r.id),t=s=>{for(;Ee.isThemeIcon(s.defaults);)s=this.iconsById[s.defaults.id];return`codicon codicon-${s?s.id:""}`},i=[];i.push("| preview | identifier | default codicon ID | description"),i.push("| ----------- | --------------------------------- | --------------------------------- | --------------------------------- |");const n=Object.keys(this.iconsById).map(s=>this.iconsById[s]);for(const s of n.filter(r=>!!r.description).sort(e))i.push(`||${s.id}|${Ee.isThemeIcon(s.defaults)?s.defaults.id:s.id}|${s.description||""}|`);i.push("| preview | identifier "),i.push("| ----------- | --------------------------------- |");for(const s of n.filter(r=>!Ee.isThemeIcon(r.defaults)).sort(e))i.push(`||${s.id}|`);return i.join(` +`)}}const fu=new hte;Bi.add(dte.IconContribution,fu);function Wi(o,e,t,i){return fu.registerIcon(o,e,t,i)}function J9(){return fu}function ute(){const o=rF();for(const e in o){const t="\\"+o[e].toString(16);fu.registerIcon(e,{fontCharacter:t})}}ute();const e8="vscode://schemas/icons",t8=Bi.as(K0.JSONContribution);t8.registerSchema(e8,fu.getIconSchema());const dO=new ci(()=>t8.notifySchemaChanged(e8),200);fu.onDidChange(()=>{dO.isScheduled()||dO.schedule()});Wi("widget-close",ie.close,m("widgetClose","Icon for the close action in widgets."));Wi("goto-previous-location",ie.arrowUp,m("previousChangeIcon","Icon for goto previous editor location."));Wi("goto-next-location",ie.arrowDown,m("nextChangeIcon","Icon for goto next editor location."));Ee.modify(ie.sync,"spin");Ee.modify(ie.loading,"spin");function fte(o){const e=new X,t=e.add(new A),i=J9();return e.add(i.onDidChange(()=>t.fire())),o&&e.add(o.onDidProductIconThemeChange(()=>t.fire())),{dispose:()=>e.dispose(),onDidChange:t.event,getCSS(){const n=o?o.getProductIconTheme():new i8,s={},r=[],a=[];for(const l of i.getIcons()){const c=n.getIcon(l);if(!c)continue;const d=c.font,h=`--vscode-icon-${l.id}-font-family`,u=`--vscode-icon-${l.id}-content`;d?(s[d.id]=d.definition,a.push(`${h}: ${lS(d.id)};`,`${u}: '${c.fontCharacter}';`),r.push(`.codicon-${l.id}:before { content: '${c.fontCharacter}'; font-family: ${lS(d.id)}; }`)):(a.push(`${u}: '${c.fontCharacter}'; ${h}: 'codicon';`),r.push(`.codicon-${l.id}:before { content: '${c.fontCharacter}'; }`))}for(const l in s){const c=s[l],d=c.weight?`font-weight: ${c.weight};`:"",h=c.style?`font-style: ${c.style};`:"",u=c.src.map(f=>`${Dl(f.location)} format('${f.format}')`).join(", ");r.push(`@font-face { src: ${u}; font-family: ${lS(l)};${d}${h} font-display: block; }`)}return r.push(`:root { ${a.join(" ")} }`),r.join(` +`)}}}class i8{getIcon(e){const t=J9();let i=e.defaults;for(;Ee.isThemeIcon(i);){const n=t.getIcon(i.id);if(!n)return;i=n.defaults}return i}}const ec="vs",ap="vs-dark",Kf="hc-black",jf="hc-light",n8=Bi.as(A3.ColorContribution),gte=Bi.as(_3.ThemingContribution);class s8{constructor(e,t){this.semanticHighlighting=!1,this.themeData=t;const i=t.base;e.length>0?(z1(e)?this.id=e:this.id=i+" "+e,this.themeName=e):(this.id=i,this.themeName=i),this.colors=null,this.defaultColors=Object.create(null),this._tokenTheme=null}get base(){return this.themeData.base}notifyBaseUpdated(){this.themeData.inherit&&(this.colors=null,this._tokenTheme=null)}getColors(){if(!this.colors){const e=new Map;for(const t in this.themeData.colors)e.set(t,q.fromHex(this.themeData.colors[t]));if(this.themeData.inherit){const t=XD(this.themeData.base);for(const i in t.colors)e.has(i)||e.set(i,q.fromHex(t.colors[i]))}this.colors=e}return this.colors}getColor(e,t){const i=this.getColors().get(e);if(i)return i;if(t!==!1)return this.getDefault(e)}getDefault(e){let t=this.defaultColors[e];return t||(t=n8.resolveDefaultColor(e,this),this.defaultColors[e]=t,t)}defines(e){return this.getColors().has(e)}get type(){switch(this.base){case ec:return io.LIGHT;case Kf:return io.HIGH_CONTRAST_DARK;case jf:return io.HIGH_CONTRAST_LIGHT;default:return io.DARK}}get tokenTheme(){if(!this._tokenTheme){let e=[],t=[];if(this.themeData.inherit){const s=XD(this.themeData.base);e=s.rules,s.encodedTokensColors&&(t=s.encodedTokensColors)}const i=this.themeData.colors["editor.foreground"],n=this.themeData.colors["editor.background"];if(i||n){const s={token:""};i&&(s.foreground=i),n&&(s.background=n),e.push(s)}e=e.concat(this.themeData.rules),this.themeData.encodedTokensColors&&(t=this.themeData.encodedTokensColors),this._tokenTheme=X9.createFromRawTokenTheme(e,t)}return this._tokenTheme}getTokenStyleMetadata(e,t,i){const s=this.tokenTheme._match([e].concat(t).join(".")).metadata,r=sr.getForeground(s),a=sr.getFontStyle(s);return{foreground:r,italic:!!(a&1),bold:!!(a&2),underline:!!(a&4),strikethrough:!!(a&8)}}}function z1(o){return o===ec||o===ap||o===Kf||o===jf}function XD(o){switch(o){case ec:return rte;case ap:return ate;case Kf:return lte;case jf:return cte}}function Jb(o){const e=XD(o);return new s8(o,e)}class mte extends z{constructor(){super(),this._onColorThemeChange=this._register(new A),this.onDidColorThemeChange=this._onColorThemeChange.event,this._onProductIconThemeChange=this._register(new A),this.onDidProductIconThemeChange=this._onProductIconThemeChange.event,this._environment=Object.create(null),this._builtInProductIconTheme=new i8,this._autoDetectHighContrast=!0,this._knownThemes=new Map,this._knownThemes.set(ec,Jb(ec)),this._knownThemes.set(ap,Jb(ap)),this._knownThemes.set(Kf,Jb(Kf)),this._knownThemes.set(jf,Jb(jf));const e=this._register(fte(this));this._codiconCSS=e.getCSS(),this._themeCSS="",this._allCSS=`${this._codiconCSS} +${this._themeCSS}`,this._globalStyleElement=null,this._styleElements=[],this._colorMapOverride=null,this.setTheme(ec),this._onOSSchemeChanged(),this._register(e.onDidChange(()=>{this._codiconCSS=e.getCSS(),this._updateCSS()})),_F(_t,"(forced-colors: active)",()=>{this._onOSSchemeChanged()})}registerEditorContainer(e){return _C(e)?this._registerShadowDomContainer(e):this._registerRegularEditorContainer()}_registerRegularEditorContainer(){return this._globalStyleElement||(this._globalStyleElement=Vs(void 0,e=>{e.className="monaco-colors",e.textContent=this._allCSS}),this._styleElements.push(this._globalStyleElement)),z.None}_registerShadowDomContainer(e){const t=Vs(e,i=>{i.className="monaco-colors",i.textContent=this._allCSS});return this._styleElements.push(t),{dispose:()=>{for(let i=0;i{i.base===e&&i.notifyBaseUpdated()}),this._theme.themeName===e&&this.setTheme(e)}getColorTheme(){return this._theme}setColorMapOverride(e){this._colorMapOverride=e,this._updateThemeOrColorMap()}setTheme(e){let t;this._knownThemes.has(e)?t=this._knownThemes.get(e):t=this._knownThemes.get(ec),this._updateActualTheme(t)}_updateActualTheme(e){!e||this._theme===e||(this._theme=e,this._updateThemeOrColorMap())}_onOSSchemeChanged(){if(this._autoDetectHighContrast){const e=_t.matchMedia("(forced-colors: active)").matches;if(e!==mc(this._theme.type)){let t;j0(this._theme.type)?t=e?Kf:ap:t=e?jf:ec,this._updateActualTheme(this._knownThemes.get(t))}}}setAutoDetectHighContrast(e){this._autoDetectHighContrast=e,this._onOSSchemeChanged()}_updateThemeOrColorMap(){const e=[],t={},i={addRule:r=>{t[r]||(e.push(r),t[r]=!0)}};gte.getThemingParticipants().forEach(r=>r(this._theme,i,this._environment));const n=[];for(const r of n8.getColors()){const a=this._theme.getColor(r.id,!0);a&&n.push(`${yT(r.id)}: ${a.toString()};`)}i.addRule(`.monaco-editor, .monaco-diff-editor, .monaco-component { ${n.join(` +`)} }`);const s=this._colorMapOverride||this._theme.tokenTheme.getColorMap();i.addRule(ote(s)),this._themeCSS=e.join(` +`),this._updateCSS(),si.setColorMap(s),this._onColorThemeChange.fire(this._theme)}_updateCSS(){this._allCSS=`${this._codiconCSS} +${this._themeCSS}`,this._styleElements.forEach(e=>e.textContent=this._allCSS)}getFileIconTheme(){return{hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!1}}getProductIconTheme(){return this._builtInProductIconTheme}}const zo=He("themeService");var pte=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},XS=function(o,e){return function(t,i){e(t,i,o)}};let JD=class extends z{constructor(e,t,i){super(),this._contextKeyService=e,this._layoutService=t,this._configurationService=i,this._accessibilitySupport=0,this._onDidChangeScreenReaderOptimized=new A,this._onDidChangeReducedMotion=new A,this._onDidChangeLinkUnderline=new A,this._accessibilityModeEnabledContext=RG.bindTo(this._contextKeyService);const n=()=>this._accessibilityModeEnabledContext.set(this.isScreenReaderOptimized());this._register(this._configurationService.onDidChangeConfiguration(r=>{r.affectsConfiguration("editor.accessibilitySupport")&&(n(),this._onDidChangeScreenReaderOptimized.fire()),r.affectsConfiguration("workbench.reduceMotion")&&(this._configMotionReduced=this._configurationService.getValue("workbench.reduceMotion"),this._onDidChangeReducedMotion.fire())})),n(),this._register(this.onDidChangeScreenReaderOptimized(()=>n()));const s=_t.matchMedia("(prefers-reduced-motion: reduce)");this._systemMotionReduced=s.matches,this._configMotionReduced=this._configurationService.getValue("workbench.reduceMotion"),this._linkUnderlinesEnabled=this._configurationService.getValue("accessibility.underlineLinks"),this.initReducedMotionListeners(s),this.initLinkUnderlineListeners()}initReducedMotionListeners(e){this._register(U(e,"change",()=>{this._systemMotionReduced=e.matches,this._configMotionReduced==="auto"&&this._onDidChangeReducedMotion.fire()}));const t=()=>{const i=this.isMotionReduced();this._layoutService.mainContainer.classList.toggle("reduce-motion",i),this._layoutService.mainContainer.classList.toggle("enable-motion",!i)};t(),this._register(this.onDidChangeReducedMotion(()=>t()))}initLinkUnderlineListeners(){this._register(this._configurationService.onDidChangeConfiguration(t=>{if(t.affectsConfiguration("accessibility.underlineLinks")){const i=this._configurationService.getValue("accessibility.underlineLinks");this._linkUnderlinesEnabled=i,this._onDidChangeLinkUnderline.fire()}}));const e=()=>{const t=this._linkUnderlinesEnabled;this._layoutService.mainContainer.classList.toggle("underline-links",t)};e(),this._register(this.onDidChangeLinkUnderlines(()=>e()))}onDidChangeLinkUnderlines(e){return this._onDidChangeLinkUnderline.event(e)}get onDidChangeScreenReaderOptimized(){return this._onDidChangeScreenReaderOptimized.event}isScreenReaderOptimized(){const e=this._configurationService.getValue("editor.accessibilitySupport");return e==="on"||e==="auto"&&this._accessibilitySupport===2}get onDidChangeReducedMotion(){return this._onDidChangeReducedMotion.event}isMotionReduced(){const e=this._configMotionReduced;return e==="on"||e==="auto"&&this._systemMotionReduced}getAccessibilitySupport(){return this._accessibilitySupport}};JD=pte([XS(0,De),XS(1,jc),XS(2,lt)],JD);var vy=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},la=function(o,e){return function(t,i){e(t,i,o)}},zu,Om;let eI=class{constructor(e,t,i){this._commandService=e,this._keybindingService=t,this._hiddenStates=new tI(i)}createMenu(e,t,i){return new bv(e,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...i},this._commandService,this._keybindingService,t)}getMenuActions(e,t,i){const n=new bv(e,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...i},this._commandService,this._keybindingService,t),s=n.getActions(i);return n.dispose(),s}resetHiddenStates(e){this._hiddenStates.reset(e)}};eI=vy([la(0,hi),la(1,vt),la(2,du)],eI);var lh;let tI=(lh=class{constructor(e){this._storageService=e,this._disposables=new X,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._ignoreChangeEvent=!1,this._hiddenByDefaultCache=new Map;try{const t=e.get(zu._key,0,"{}");this._data=JSON.parse(t)}catch{this._data=Object.create(null)}this._disposables.add(e.onDidChangeValue(0,zu._key,this._disposables)(()=>{if(!this._ignoreChangeEvent)try{const t=e.get(zu._key,0,"{}");this._data=JSON.parse(t)}catch(t){console.log("FAILED to read storage after UPDATE",t)}this._onDidChange.fire()}))}dispose(){this._onDidChange.dispose(),this._disposables.dispose()}_isHiddenByDefault(e,t){return this._hiddenByDefaultCache.get(`${e.id}/${t}`)??!1}setDefaultState(e,t,i){this._hiddenByDefaultCache.set(`${e.id}/${t}`,i)}isHidden(e,t){const i=this._isHiddenByDefault(e,t),n=this._data[e.id]?.includes(t)??!1;return i?!n:n}updateHidden(e,t,i){this._isHiddenByDefault(e,t)&&(i=!i);const s=this._data[e.id];if(i)s?s.indexOf(t)<0&&s.push(t):this._data[e.id]=[t];else if(s){const r=s.indexOf(t);r>=0&&JB(s,r),s.length===0&&delete this._data[e.id]}this._persist()}reset(e){if(e===void 0)this._data=Object.create(null),this._persist();else{for(const{id:t}of e)this._data[t]&&delete this._data[t];this._persist()}}_persist(){try{this._ignoreChangeEvent=!0;const e=JSON.stringify(this._data);this._storageService.store(zu._key,e,0,0)}finally{this._ignoreChangeEvent=!1}}},zu=lh,lh._key="menu.hiddenCommands",lh);tI=zu=vy([la(0,du)],tI);class lp{constructor(e,t){this._id=e,this._collectContextKeysForSubmenus=t,this._menuGroups=[],this._allMenuIds=new Set,this._structureContextKeys=new Set,this._preconditionContextKeys=new Set,this._toggledContextKeys=new Set,this.refresh()}get allMenuIds(){return this._allMenuIds}get structureContextKeys(){return this._structureContextKeys}get preconditionContextKeys(){return this._preconditionContextKeys}get toggledContextKeys(){return this._toggledContextKeys}refresh(){this._menuGroups.length=0,this._allMenuIds.clear(),this._structureContextKeys.clear(),this._preconditionContextKeys.clear(),this._toggledContextKeys.clear();const e=this._sort(Eo.getMenuItems(this._id));let t;for(const i of e){const n=i.group||"";(!t||t[0]!==n)&&(t=[n,[]],this._menuGroups.push(t)),t[1].push(i),this._collectContextKeysAndSubmenuIds(i)}this._allMenuIds.add(this._id)}_sort(e){return e}_collectContextKeysAndSubmenuIds(e){if(lp._fillInKbExprKeys(e.when,this._structureContextKeys),Rf(e)){if(e.command.precondition&&lp._fillInKbExprKeys(e.command.precondition,this._preconditionContextKeys),e.command.toggled){const t=e.command.toggled.condition||e.command.toggled;lp._fillInKbExprKeys(t,this._toggledContextKeys)}}else this._collectContextKeysForSubmenus&&(Eo.getMenuItems(e.submenu).forEach(this._collectContextKeysAndSubmenuIds,this),this._allMenuIds.add(e.submenu))}static _fillInKbExprKeys(e,t){if(e)for(const i of e.keys())t.add(i)}}let iI=Om=class extends lp{constructor(e,t,i,n,s,r){super(e,i),this._hiddenStates=t,this._commandService=n,this._keybindingService=s,this._contextKeyService=r,this.refresh()}createActionGroups(e){const t=[];for(const i of this._menuGroups){const[n,s]=i;let r;for(const a of s)if(this._contextKeyService.contextMatchesRules(a.when)){const l=Rf(a);l&&this._hiddenStates.setDefaultState(this._id,a.command.id,!!a.isHiddenByDefault);const c=_te(this._id,l?a.command:a,this._hiddenStates);if(l){const d=o8(this._commandService,this._keybindingService,a.command.id,a.when);(r??=[]).push(new so(a.command,a.alt,e,c,d,this._contextKeyService,this._commandService))}else{const d=new Om(a.submenu,this._hiddenStates,this._collectContextKeysForSubmenus,this._commandService,this._keybindingService,this._contextKeyService).createActionGroups(e),h=Gi.join(...d.map(u=>u[1]));h.length>0&&(r??=[]).push(new Zm(a,c,h))}}r&&r.length>0&&t.push([n,r])}return t}_sort(e){return e.sort(Om._compareMenuItems)}static _compareMenuItems(e,t){const i=e.group,n=t.group;if(i!==n){if(i){if(!n)return-1}else return 1;if(i==="navigation")return-1;if(n==="navigation")return 1;const a=i.localeCompare(n);if(a!==0)return a}const s=e.order||0,r=t.order||0;return sr?1:Om._compareTitles(Rf(e)?e.command.title:e.title,Rf(t)?t.command.title:t.title)}static _compareTitles(e,t){const i=typeof e=="string"?e:e.original,n=typeof t=="string"?t:t.original;return i.localeCompare(n)}};iI=Om=vy([la(3,hi),la(4,vt),la(5,De)],iI);let bv=class{constructor(e,t,i,n,s,r){this._disposables=new X,this._menuInfo=new iI(e,t,i.emitEventsForSubmenuChanges,n,s,r);const a=new ci(()=>{this._menuInfo.refresh(),this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!0,isToggleChange:!0})},i.eventDebounceDelay);this._disposables.add(a),this._disposables.add(Eo.onDidChangeMenu(h=>{for(const u of this._menuInfo.allMenuIds)if(h.has(u)){a.schedule();break}}));const l=this._disposables.add(new X),c=h=>{let u=!1,f=!1,g=!1;for(const p of h)if(u=u||p.isStructuralChange,f=f||p.isEnablementChange,g=g||p.isToggleChange,u&&f&&g)break;return{menu:this,isStructuralChange:u,isEnablementChange:f,isToggleChange:g}},d=()=>{l.add(r.onDidChangeContext(h=>{const u=h.affectsSome(this._menuInfo.structureContextKeys),f=h.affectsSome(this._menuInfo.preconditionContextKeys),g=h.affectsSome(this._menuInfo.toggledContextKeys);(u||f||g)&&this._onDidChange.fire({menu:this,isStructuralChange:u,isEnablementChange:f,isToggleChange:g})})),l.add(t.onDidChange(h=>{this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!1,isToggleChange:!1})}))};this._onDidChange=new Y5({onWillAddFirstListener:d,onDidRemoveLastListener:l.clear.bind(l),delay:i.eventDebounceDelay,merge:c}),this.onDidChange=this._onDidChange.event}getActions(e){return this._menuInfo.createActionGroups(e)}dispose(){this._disposables.dispose(),this._onDidChange.dispose()}};bv=vy([la(3,hi),la(4,vt),la(5,De)],bv);function _te(o,e,t){const i=hz(e)?e.submenu.id:e.id,n=typeof e.title=="string"?e.title:e.title.value,s=Mf({id:`hide/${o.id}/${i}`,label:m("hide.label","Hide '{0}'",n),run(){t.updateHidden(o,i,!0)}}),r=Mf({id:`toggle/${o.id}/${i}`,label:n,get checked(){return!t.isHidden(o,i)},run(){t.updateHidden(o,i,!!this.checked)}});return{hide:s,toggle:r,get isHidden(){return!r.checked}}}function o8(o,e,t,i=void 0,n=!0){return Mf({id:`configureKeybinding/${t}`,label:m("configure keybinding","Configure Keybinding"),enabled:n,run(){const r=!!!e.lookupKeybinding(t)&&i?i.serialize():void 0;o.executeCommand("workbench.action.openGlobalKeybindings",`@command:${t}`+(r?` +when:${r}`:""))}})}var bte=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},hO=function(o,e){return function(t,i){e(t,i,o)}},nI;const uO="application/vnd.code.resources";var ch;let sI=(ch=class extends z{constructor(e,t){super(),this.layoutService=e,this.logService=t,this.mapTextToType=new Map,this.findText="",this.resources=[],this.resourcesStateHash=void 0,(Ac||bF)&&this.installWebKitWriteTextWorkaround(),this._register(J.runAndSubscribe(T0,({window:i,disposables:n})=>{n.add(U(i.document,"copy",()=>this.clearResourcesState()))},{window:_t,disposables:this._store}))}installWebKitWriteTextWorkaround(){const e=()=>{const t=new qN;this.webKitPendingClipboardWritePromise&&!this.webKitPendingClipboardWritePromise.isSettled&&this.webKitPendingClipboardWritePromise.cancel(),this.webKitPendingClipboardWritePromise=t,km().navigator.clipboard.write([new ClipboardItem({"text/plain":t.p})]).catch(async i=>{(!(i instanceof Error)||i.name!=="NotAllowedError"||!t.isRejected)&&this.logService.error(i)})};this._register(J.runAndSubscribe(this.layoutService.onDidAddContainer,({container:t,disposables:i})=>{i.add(U(t,"click",e)),i.add(U(t,"keydown",e))},{container:this.layoutService.mainContainer,disposables:this._store}))}async writeText(e,t){if(this.clearResourcesState(),t){this.mapTextToType.set(t,e);return}if(this.webKitPendingClipboardWritePromise)return this.webKitPendingClipboardWritePromise.complete(e);try{return await km().navigator.clipboard.writeText(e)}catch(i){console.error(i)}this.fallbackWriteText(e)}fallbackWriteText(e){const t=JN(),i=t.activeElement,n=t.body.appendChild(ce("textarea",{"aria-hidden":!0}));n.style.height="1px",n.style.width="1px",n.style.position="absolute",n.value=e,n.focus(),n.select(),t.execCommand("copy"),Ei(i)&&i.focus(),n.remove()}async readText(e){if(e)return this.mapTextToType.get(e)||"";try{return await km().navigator.clipboard.readText()}catch(t){console.error(t)}return""}async readFindText(){return this.findText}async writeFindText(e){this.findText=e}async readResources(){try{const t=await km().navigator.clipboard.read();for(const i of t)if(i.types.includes(`web ${uO}`)){const n=await i.getType(`web ${uO}`);return JSON.parse(await n.text()).map(r=>ve.from(r))}}catch{}const e=await this.computeResourcesStateHash();return this.resourcesStateHash!==e&&this.clearResourcesState(),this.resources}async computeResourcesStateHash(){if(this.resources.length===0)return;const e=await this.readText();return ZN(e.substring(0,nI.MAX_RESOURCE_STATE_SOURCE_LENGTH))}clearInternalState(){this.clearResourcesState()}clearResourcesState(){this.resources=[],this.resourcesStateHash=void 0}},nI=ch,ch.MAX_RESOURCE_STATE_SOURCE_LENGTH=1e3,ch);sI=nI=bte([hO(0,jc),hO(1,gs)],sI);const wy=He("clipboardService");var Cte=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vte=function(o,e){return function(t,i){e(t,i,o)}};const cp="data-keybinding-context";let A2=class{constructor(e,t){this._id=e,this._parent=t,this._value=Object.create(null),this._value._contextId=e}get value(){return{...this._value}}setValue(e,t){return this._value[e]!==t?(this._value[e]=t,!0):!1}removeValue(e){return e in this._value?(delete this._value[e],!0):!1}getValue(e){const t=this._value[e];return typeof t>"u"&&this._parent?this._parent.getValue(e):t}};const jw=class jw extends A2{constructor(){super(-1,null)}setValue(e,t){return!1}removeValue(e){return!1}getValue(e){}};jw.INSTANCE=new jw;let Lg=jw;const Mp=class Mp extends A2{constructor(e,t,i){super(e,null),this._configurationService=t,this._values=Bf.forConfigKeys(),this._listener=this._configurationService.onDidChangeConfiguration(n=>{if(n.source===7){const s=Array.from(this._values,([r])=>r);this._values.clear(),i.fire(new gO(s))}else{const s=[];for(const r of n.affectedKeys){const a=`config.${r}`,l=this._values.findSuperstr(a);l!==void 0&&(s.push(...st.map(l,([c])=>c)),this._values.deleteSuperstr(a)),this._values.has(a)&&(s.push(a),this._values.delete(a))}i.fire(new gO(s))}})}dispose(){this._listener.dispose()}getValue(e){if(e.indexOf(Mp._keyPrefix)!==0)return super.getValue(e);if(this._values.has(e))return this._values.get(e);const t=e.substr(Mp._keyPrefix.length),i=this._configurationService.getValue(t);let n;switch(typeof i){case"number":case"boolean":case"string":n=i;break;default:Array.isArray(i)?n=JSON.stringify(i):n=i}return this._values.set(e,n),n}setValue(e,t){return super.setValue(e,t)}removeValue(e){return super.removeValue(e)}};Mp._keyPrefix="config.";let oI=Mp;class wte{constructor(e,t,i){this._service=e,this._key=t,this._defaultValue=i,this.reset()}set(e){this._service.setContext(this._key,e)}reset(){typeof this._defaultValue>"u"?this._service.removeContext(this._key):this._service.setContext(this._key,this._defaultValue)}get(){return this._service.getContextKeyValue(this._key)}}class fO{constructor(e){this.key=e}affectsSome(e){return e.has(this.key)}allKeysContainedIn(e){return this.affectsSome(e)}}class gO{constructor(e){this.keys=e}affectsSome(e){for(const t of this.keys)if(e.has(t))return!0;return!1}allKeysContainedIn(e){return this.keys.every(t=>e.has(t))}}class yte{constructor(e){this.events=e}affectsSome(e){for(const t of this.events)if(t.affectsSome(e))return!0;return!1}allKeysContainedIn(e){return this.events.every(t=>t.allKeysContainedIn(e))}}function Ste(o,e){return o.allKeysContainedIn(new Set(Object.keys(e)))}class r8 extends z{constructor(e){super(),this._onDidChangeContext=this._register(new Nh({merge:t=>new yte(t)})),this.onDidChangeContext=this._onDidChangeContext.event,this._isDisposed=!1,this._myContextId=e}createKey(e,t){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new wte(this,e,t)}bufferChangeEvents(e){this._onDidChangeContext.pause();try{e()}finally{this._onDidChangeContext.resume()}}createScoped(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new Lte(this,e)}contextMatchesRules(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");const t=this.getContextValuesContainer(this._myContextId);return e?e.evaluate(t):!0}getContextKeyValue(e){if(!this._isDisposed)return this.getContextValuesContainer(this._myContextId).getValue(e)}setContext(e,t){if(this._isDisposed)return;const i=this.getContextValuesContainer(this._myContextId);i&&i.setValue(e,t)&&this._onDidChangeContext.fire(new fO(e))}removeContext(e){this._isDisposed||this.getContextValuesContainer(this._myContextId).removeValue(e)&&this._onDidChangeContext.fire(new fO(e))}getContext(e){return this._isDisposed?Lg.INSTANCE:this.getContextValuesContainer(xte(e))}dispose(){super.dispose(),this._isDisposed=!0}}let rI=class extends r8{constructor(e){super(0),this._contexts=new Map,this._lastContextId=0;const t=this._register(new oI(this._myContextId,e,this._onDidChangeContext));this._contexts.set(this._myContextId,t)}getContextValuesContainer(e){return this._isDisposed?Lg.INSTANCE:this._contexts.get(e)||Lg.INSTANCE}createChildContext(e=this._myContextId){if(this._isDisposed)throw new Error("ContextKeyService has been disposed");const t=++this._lastContextId;return this._contexts.set(t,new A2(t,this.getContextValuesContainer(e))),t}disposeContext(e){this._isDisposed||this._contexts.delete(e)}};rI=Cte([vte(0,lt)],rI);class Lte extends r8{constructor(e,t){if(super(e.createChildContext()),this._parentChangeListener=this._register(new Dn),this._parent=e,this._updateParentChangeListener(),this._domNode=t,this._domNode.hasAttribute(cp)){let i="";this._domNode.classList&&(i=Array.from(this._domNode.classList.values()).join(", ")),console.error(`Element already has context attribute${i?": "+i:""}`)}this._domNode.setAttribute(cp,String(this._myContextId))}_updateParentChangeListener(){this._parentChangeListener.value=this._parent.onDidChangeContext(e=>{const i=this._parent.getContextValuesContainer(this._myContextId).value;Ste(e,i)||this._onDidChangeContext.fire(e)})}dispose(){this._isDisposed||(this._parent.disposeContext(this._myContextId),this._domNode.removeAttribute(cp),super.dispose())}getContextValuesContainer(e){return this._isDisposed?Lg.INSTANCE:this._parent.getContextValuesContainer(e)}createChildContext(e=this._myContextId){if(this._isDisposed)throw new Error("ScopedContextKeyService has been disposed");return this._parent.createChildContext(e)}disposeContext(e){this._isDisposed||this._parent.disposeContext(e)}}function xte(o){for(;o;){if(o.hasAttribute(cp)){const e=o.getAttribute(cp);return e?parseInt(e,10):NaN}o=o.parentElement}return 0}function kte(o,e,t){o.get(De).createKey(String(e),Dte(t))}function Dte(o){return O5(o,e=>{if(typeof e=="object"&&e.$mid===1)return ve.revive(e).toString();if(e instanceof ve)return e.toString()})}bt.registerCommand("_setContext",kte);bt.registerCommand({id:"getContextKeyInfo",handler(){return[...le.all()].sort((o,e)=>o.key.localeCompare(e.key))},metadata:{description:m("getContextKeyInfo","A command that returns information about context keys"),args:[]}});bt.registerCommand("_generateContextKeyInfo",function(){const o=[],e=new Set;for(const t of le.all())e.has(t.key)||(e.add(t.key),o.push(t));o.sort((t,i)=>t.key.localeCompare(i.key)),console.log(JSON.stringify(o,void 0,2))});let Ite=class{constructor(e,t){this.key=e,this.data=t,this.incoming=new Map,this.outgoing=new Map}};class mO{constructor(e){this._hashFn=e,this._nodes=new Map}roots(){const e=[];for(const t of this._nodes.values())t.outgoing.size===0&&e.push(t);return e}insertEdge(e,t){const i=this.lookupOrInsertNode(e),n=this.lookupOrInsertNode(t);i.outgoing.set(n.key,n),n.incoming.set(i.key,i)}removeNode(e){const t=this._hashFn(e);this._nodes.delete(t);for(const i of this._nodes.values())i.outgoing.delete(t),i.incoming.delete(t)}lookupOrInsertNode(e){const t=this._hashFn(e);let i=this._nodes.get(t);return i||(i=new Ite(t,e),this._nodes.set(t,i)),i}isEmpty(){return this._nodes.size===0}toString(){const e=[];for(const[t,i]of this._nodes)e.push(`${t} + (-> incoming)[${[...i.incoming.keys()].join(", ")}] + (outgoing ->)[${[...i.outgoing.keys()].join(",")}] +`);return e.join(` +`)}findCycleSlow(){for(const[e,t]of this._nodes){const i=new Set([e]),n=this._findCycle(t,i);if(n)return n}}_findCycle(e,t){for(const[i,n]of e.outgoing){if(t.has(i))return[...t,i].join(" -> ");t.add(i);const s=this._findCycle(n,t);if(s)return s;t.delete(i)}}}class jg{constructor(...e){this._entries=new Map;for(const[t,i]of e)this.set(t,i)}set(e,t){const i=this._entries.get(e);return this._entries.set(e,t),i}get(e){return this._entries.get(e)}}const Ete=!1;class pO extends Error{constructor(e){super("cyclic dependency between services"),this.message=e.findCycleSlow()??`UNABLE to detect cycle, dumping graph: +${e.toString()}`}}class Cv{constructor(e=new jg,t=!1,i,n=Ete){this._services=e,this._strict=t,this._parent=i,this._enableTracing=n,this._isDisposed=!1,this._servicesToMaybeDispose=new Set,this._children=new Set,this._activeInstantiations=new Set,this._services.set(ke,this),this._globalGraph=n?i?._globalGraph??new mO(s=>s):void 0}dispose(){if(!this._isDisposed){this._isDisposed=!0,xt(this._children),this._children.clear();for(const e of this._servicesToMaybeDispose)MN(e)&&e.dispose();this._servicesToMaybeDispose.clear()}}_throwIfDisposed(){if(this._isDisposed)throw new Error("InstantiationService has been disposed")}createChild(e,t){this._throwIfDisposed();const i=this,n=new class extends Cv{dispose(){i._children.delete(n),super.dispose()}}(e,this._strict,this,this._enableTracing);return this._children.add(n),t?.add(n),n}invokeFunction(e,...t){this._throwIfDisposed();const i=dp.traceInvocation(this._enableTracing,e);let n=!1;try{return e({get:r=>{if(n)throw TN("service accessor is only valid during the invocation of its target method");const a=this._getOrCreateServiceInstance(r,i);if(!a)throw new Error(`[invokeFunction] unknown service '${r}'`);return a}},...t)}finally{n=!0,i.stop()}}createInstance(e,...t){this._throwIfDisposed();let i,n;return e instanceof Gr?(i=dp.traceCreation(this._enableTracing,e.ctor),n=this._createInstance(e.ctor,e.staticArguments.concat(t),i)):(i=dp.traceCreation(this._enableTracing,e),n=this._createInstance(e,t,i)),i.stop(),n}_createInstance(e,t=[],i){const n=fr.getServiceDependencies(e).sort((a,l)=>a.index-l.index),s=[];for(const a of n){const l=this._getOrCreateServiceInstance(a.id,i);l||this._throwIfStrict(`[createInstance] ${e.name} depends on UNKNOWN service ${a.id}.`,!1),s.push(l)}const r=n.length>0?n[0].index:t.length;if(t.length!==r){console.trace(`[createInstance] First service dependency of ${e.name} at position ${r+1} conflicts with ${t.length} static arguments`);const a=r-t.length;a>0?t=t.concat(new Array(a)):t=t.slice(0,r)}return Reflect.construct(e,t.concat(s))}_setCreatedServiceInstance(e,t){if(this._services.get(e)instanceof Gr)this._services.set(e,t);else if(this._parent)this._parent._setCreatedServiceInstance(e,t);else throw new Error("illegalState - setting UNKNOWN service instance")}_getServiceInstanceOrDescriptor(e){const t=this._services.get(e);return!t&&this._parent?this._parent._getServiceInstanceOrDescriptor(e):t}_getOrCreateServiceInstance(e,t){this._globalGraph&&this._globalGraphImplicitDependency&&this._globalGraph.insertEdge(this._globalGraphImplicitDependency,String(e));const i=this._getServiceInstanceOrDescriptor(e);return i instanceof Gr?this._safeCreateAndCacheServiceInstance(e,i,t.branch(e,!0)):(t.branch(e,!1),i)}_safeCreateAndCacheServiceInstance(e,t,i){if(this._activeInstantiations.has(e))throw new Error(`illegal state - RECURSIVELY instantiating service '${e}'`);this._activeInstantiations.add(e);try{return this._createAndCacheServiceInstance(e,t,i)}finally{this._activeInstantiations.delete(e)}}_createAndCacheServiceInstance(e,t,i){const n=new mO(l=>l.id.toString());let s=0;const r=[{id:e,desc:t,_trace:i}],a=new Set;for(;r.length;){const l=r.pop();if(!a.has(String(l.id))){if(a.add(String(l.id)),n.lookupOrInsertNode(l),s++>1e3)throw new pO(n);for(const c of fr.getServiceDependencies(l.desc.ctor)){const d=this._getServiceInstanceOrDescriptor(c.id);if(d||this._throwIfStrict(`[createInstance] ${e} depends on ${c.id} which is NOT registered.`,!0),this._globalGraph?.insertEdge(String(l.id),String(c.id)),d instanceof Gr){const h={id:c.id,desc:d,_trace:l._trace.branch(c.id,!0)};n.insertEdge(l,h),r.push(h)}}}}for(;;){const l=n.roots();if(l.length===0){if(!n.isEmpty())throw new pO(n);break}for(const{data:c}of l){if(this._getServiceInstanceOrDescriptor(c.id)instanceof Gr){const h=this._createServiceInstanceWithOwner(c.id,c.desc.ctor,c.desc.staticArguments,c.desc.supportsDelayedInstantiation,c._trace);this._setCreatedServiceInstance(c.id,h)}n.removeNode(c)}}return this._getServiceInstanceOrDescriptor(e)}_createServiceInstanceWithOwner(e,t,i=[],n,s){if(this._services.get(e)instanceof Gr)return this._createServiceInstance(e,t,i,n,s,this._servicesToMaybeDispose);if(this._parent)return this._parent._createServiceInstanceWithOwner(e,t,i,n,s);throw new Error(`illegalState - creating UNKNOWN service instance ${t.name}`)}_createServiceInstance(e,t,i=[],n,s,r){if(n){const a=new Cv(void 0,this._strict,this,this._enableTracing);a._globalGraphImplicitDependency=String(e);const l=new Map,c=new PH(()=>{const d=a._createInstance(t,i,s);for(const[h,u]of l){const f=d[h];if(typeof f=="function")for(const g of u)g.disposable=f.apply(d,g.listener)}return l.clear(),r.add(d),d});return new Proxy(Object.create(null),{get(d,h){if(!c.isInitialized&&typeof h=="string"&&(h.startsWith("onDid")||h.startsWith("onWill"))){let g=l.get(h);return g||(g=new yn,l.set(h,g)),(_,b,C)=>{if(c.isInitialized)return c.value[h](_,b,C);{const w={listener:[_,b,C],disposable:void 0},v=g.push(w);return _e(()=>{v(),w.disposable?.dispose()})}}}if(h in d)return d[h];const u=c.value;let f=u[h];return typeof f!="function"||(f=f.bind(u),d[h]=f),f},set(d,h,u){return c.value[h]=u,!0},getPrototypeOf(d){return t.prototype}})}else{const a=this._createInstance(t,i,s);return r.add(a),a}}_throwIfStrict(e,t){if(t&&console.warn(e),this._strict)throw new Error(e)}}const ws=class ws{static traceInvocation(e,t){return e?new ws(2,t.name||new Error().stack.split(` +`).slice(3,4).join(` +`)):ws._None}static traceCreation(e,t){return e?new ws(1,t.name):ws._None}constructor(e,t){this.type=e,this.name=t,this._start=Date.now(),this._dep=[]}branch(e,t){const i=new ws(3,e.toString());return this._dep.push([e,t,i]),i}stop(){const e=Date.now()-this._start;ws._totals+=e;let t=!1;function i(s,r){const a=[],l=new Array(s+1).join(" ");for(const[c,d,h]of r._dep)if(d&&h){t=!0,a.push(`${l}CREATES -> ${c}`);const u=i(s+1,h);u&&a.push(u)}else a.push(`${l}uses -> ${c}`);return a.join(` +`)}const n=[`${this.type===1?"CREATE":"CALL"} ${this.name}`,`${i(1,this)}`,`DONE, took ${e.toFixed(2)}ms (grand total ${ws._totals.toFixed(2)}ms)`];(e>2||t)&&ws.all.add(n.join(` +`))}};ws.all=new Set,ws._None=new class extends ws{constructor(){super(0,null)}stop(){}branch(){return this}},ws._totals=0;let dp=ws;const Nte=new Set([Te.inMemory,Te.vscodeSourceControl,Te.walkThrough,Te.walkThroughSnippet,Te.vscodeChatCodeBlock]);class Tte{constructor(){this._byResource=new cs,this._byOwner=new Map}set(e,t,i){let n=this._byResource.get(e);n||(n=new Map,this._byResource.set(e,n)),n.set(t,i);let s=this._byOwner.get(t);s||(s=new cs,this._byOwner.set(t,s)),s.set(e,i)}get(e,t){return this._byResource.get(e)?.get(t)}delete(e,t){let i=!1,n=!1;const s=this._byResource.get(e);s&&(i=s.delete(t));const r=this._byOwner.get(t);if(r&&(n=r.delete(e)),i!==n)throw new Error("illegal state");return i&&n}values(e){return typeof e=="string"?this._byOwner.get(e)?.values()??st.empty():ve.isUri(e)?this._byResource.get(e)?.values()??st.empty():st.map(st.concat(...this._byOwner.values()),t=>t[1])}}class Mte{constructor(e){this.errors=0,this.infos=0,this.warnings=0,this.unknowns=0,this._data=new cs,this._service=e,this._subscription=e.onMarkerChanged(this._update,this)}dispose(){this._subscription.dispose()}_update(e){for(const t of e){const i=this._data.get(t);i&&this._substract(i);const n=this._resourceStats(t);this._add(n),this._data.set(t,n)}}_resourceStats(e){const t={errors:0,warnings:0,infos:0,unknowns:0};if(Nte.has(e.scheme))return t;for(const{severity:i}of this._service.read({resource:e}))i===Vt.Error?t.errors+=1:i===Vt.Warning?t.warnings+=1:i===Vt.Info?t.infos+=1:t.unknowns+=1;return t}_substract(e){this.errors-=e.errors,this.warnings-=e.warnings,this.infos-=e.infos,this.unknowns-=e.unknowns}_add(e){this.errors+=e.errors,this.warnings+=e.warnings,this.infos+=e.infos,this.unknowns+=e.unknowns}}class Gl{constructor(){this._onMarkerChanged=new Y5({delay:0,merge:Gl._merge}),this.onMarkerChanged=this._onMarkerChanged.event,this._data=new Tte,this._stats=new Mte(this)}dispose(){this._stats.dispose(),this._onMarkerChanged.dispose()}remove(e,t){for(const i of t||[])this.changeOne(e,i,[])}changeOne(e,t,i){if(N5(i))this._data.delete(t,e)&&this._onMarkerChanged.fire([t]);else{const n=[];for(const s of i){const r=Gl._toMarker(e,t,s);r&&n.push(r)}this._data.set(t,e,n),this._onMarkerChanged.fire([t])}}static _toMarker(e,t,i){let{code:n,severity:s,message:r,source:a,startLineNumber:l,startColumn:c,endLineNumber:d,endColumn:h,relatedInformation:u,tags:f}=i;if(r)return l=l>0?l:1,c=c>0?c:1,d=d>=l?d:l,h=h>0?h:c,{resource:t,owner:e,code:n,severity:s,message:r,source:a,startLineNumber:l,startColumn:c,endLineNumber:d,endColumn:h,relatedInformation:u,tags:f}}changeAll(e,t){const i=[],n=this._data.values(e);if(n)for(const s of n){const r=st.first(s);r&&(i.push(r.resource),this._data.delete(r.resource,e))}if(Ps(t)){const s=new cs;for(const{resource:r,marker:a}of t){const l=Gl._toMarker(e,r,a);if(!l)continue;const c=s.get(r);c?c.push(l):(s.set(r,[l]),i.push(r))}for(const[r,a]of s)this._data.set(r,e,a)}i.length>0&&this._onMarkerChanged.fire(i)}read(e=Object.create(null)){let{owner:t,resource:i,severities:n,take:s}=e;if((!s||s<0)&&(s=-1),t&&i){const r=this._data.get(i,t);if(r){const a=[];for(const l of r)if(Gl._accept(l,n)){const c=a.push(l);if(s>0&&c===s)break}return a}else return[]}else if(!t&&!i){const r=[];for(const a of this._data.values())for(const l of a)if(Gl._accept(l,n)){const c=r.push(l);if(s>0&&c===s)return r}return r}else{const r=this._data.values(i??t),a=[];for(const l of r)for(const c of l)if(Gl._accept(c,n)){const d=a.push(c);if(s>0&&d===s)return a}return a}}static _accept(e,t){return t===void 0||(t&e.severity)===e.severity}static _merge(e){const t=new cs;for(const i of e)for(const n of i)t.set(n,!0);return Array.from(t.keys())}}class Rte extends z{get configurationModel(){return this._configurationModel}constructor(e){super(),this.logService=e,this._configurationModel=Pi.createEmptyModel(this.logService)}reload(){return this.resetConfigurationModel(),this.configurationModel}getConfigurationDefaultOverrides(){return{}}resetConfigurationModel(){this._configurationModel=Pi.createEmptyModel(this.logService);const e=Bi.as(su.Configuration).getConfigurationProperties();this.updateConfigurationModel(Object.keys(e),e)}updateConfigurationModel(e,t){const i=this.getConfigurationDefaultOverrides();for(const n of e){const s=i[n],r=t[n];s!==void 0?this._configurationModel.setValue(n,s):r?this._configurationModel.setValue(n,r.default):this._configurationModel.removeValue(n)}}}const rb=He("accessibilitySignalService"),et=class et{static register(e){return new et(e.fileName)}constructor(e){this.fileName=e}};et.error=et.register({fileName:"error.mp3"}),et.warning=et.register({fileName:"warning.mp3"}),et.success=et.register({fileName:"success.mp3"}),et.foldedArea=et.register({fileName:"foldedAreas.mp3"}),et.break=et.register({fileName:"break.mp3"}),et.quickFixes=et.register({fileName:"quickFixes.mp3"}),et.taskCompleted=et.register({fileName:"taskCompleted.mp3"}),et.taskFailed=et.register({fileName:"taskFailed.mp3"}),et.terminalBell=et.register({fileName:"terminalBell.mp3"}),et.diffLineInserted=et.register({fileName:"diffLineInserted.mp3"}),et.diffLineDeleted=et.register({fileName:"diffLineDeleted.mp3"}),et.diffLineModified=et.register({fileName:"diffLineModified.mp3"}),et.chatRequestSent=et.register({fileName:"chatRequestSent.mp3"}),et.chatResponseReceived1=et.register({fileName:"chatResponseReceived1.mp3"}),et.chatResponseReceived2=et.register({fileName:"chatResponseReceived2.mp3"}),et.chatResponseReceived3=et.register({fileName:"chatResponseReceived3.mp3"}),et.chatResponseReceived4=et.register({fileName:"chatResponseReceived4.mp3"}),et.clear=et.register({fileName:"clear.mp3"}),et.save=et.register({fileName:"save.mp3"}),et.format=et.register({fileName:"format.mp3"}),et.voiceRecordingStarted=et.register({fileName:"voiceRecordingStarted.mp3"}),et.voiceRecordingStopped=et.register({fileName:"voiceRecordingStopped.mp3"}),et.progress=et.register({fileName:"progress.mp3"});let At=et;class Ate{constructor(e){this.randomOneOf=e}}const Me=class Me{constructor(e,t,i,n,s,r){this.sound=e,this.name=t,this.legacySoundSettingsKey=i,this.settingsKey=n,this.legacyAnnouncementSettingsKey=s,this.announcementMessage=r}static register(e){const t=new Ate("randomOneOf"in e.sound?e.sound.randomOneOf:[e.sound]),i=new Me(t,e.name,e.legacySoundSettingsKey,e.settingsKey,e.legacyAnnouncementSettingsKey,e.announcementMessage);return Me._signals.add(i),i}};Me._signals=new Set,Me.errorAtPosition=Me.register({name:m("accessibilitySignals.positionHasError.name","Error at Position"),sound:At.error,announcementMessage:m("accessibility.signals.positionHasError","Error"),settingsKey:"accessibility.signals.positionHasError",delaySettingsKey:"accessibility.signalOptions.delays.errorAtPosition"}),Me.warningAtPosition=Me.register({name:m("accessibilitySignals.positionHasWarning.name","Warning at Position"),sound:At.warning,announcementMessage:m("accessibility.signals.positionHasWarning","Warning"),settingsKey:"accessibility.signals.positionHasWarning",delaySettingsKey:"accessibility.signalOptions.delays.warningAtPosition"}),Me.errorOnLine=Me.register({name:m("accessibilitySignals.lineHasError.name","Error on Line"),sound:At.error,legacySoundSettingsKey:"audioCues.lineHasError",legacyAnnouncementSettingsKey:"accessibility.alert.error",announcementMessage:m("accessibility.signals.lineHasError","Error on Line"),settingsKey:"accessibility.signals.lineHasError"}),Me.warningOnLine=Me.register({name:m("accessibilitySignals.lineHasWarning.name","Warning on Line"),sound:At.warning,legacySoundSettingsKey:"audioCues.lineHasWarning",legacyAnnouncementSettingsKey:"accessibility.alert.warning",announcementMessage:m("accessibility.signals.lineHasWarning","Warning on Line"),settingsKey:"accessibility.signals.lineHasWarning"}),Me.foldedArea=Me.register({name:m("accessibilitySignals.lineHasFoldedArea.name","Folded Area on Line"),sound:At.foldedArea,legacySoundSettingsKey:"audioCues.lineHasFoldedArea",legacyAnnouncementSettingsKey:"accessibility.alert.foldedArea",announcementMessage:m("accessibility.signals.lineHasFoldedArea","Folded"),settingsKey:"accessibility.signals.lineHasFoldedArea"}),Me.break=Me.register({name:m("accessibilitySignals.lineHasBreakpoint.name","Breakpoint on Line"),sound:At.break,legacySoundSettingsKey:"audioCues.lineHasBreakpoint",legacyAnnouncementSettingsKey:"accessibility.alert.breakpoint",announcementMessage:m("accessibility.signals.lineHasBreakpoint","Breakpoint"),settingsKey:"accessibility.signals.lineHasBreakpoint"}),Me.inlineSuggestion=Me.register({name:m("accessibilitySignals.lineHasInlineSuggestion.name","Inline Suggestion on Line"),sound:At.quickFixes,legacySoundSettingsKey:"audioCues.lineHasInlineSuggestion",settingsKey:"accessibility.signals.lineHasInlineSuggestion"}),Me.terminalQuickFix=Me.register({name:m("accessibilitySignals.terminalQuickFix.name","Terminal Quick Fix"),sound:At.quickFixes,legacySoundSettingsKey:"audioCues.terminalQuickFix",legacyAnnouncementSettingsKey:"accessibility.alert.terminalQuickFix",announcementMessage:m("accessibility.signals.terminalQuickFix","Quick Fix"),settingsKey:"accessibility.signals.terminalQuickFix"}),Me.onDebugBreak=Me.register({name:m("accessibilitySignals.onDebugBreak.name","Debugger Stopped on Breakpoint"),sound:At.break,legacySoundSettingsKey:"audioCues.onDebugBreak",legacyAnnouncementSettingsKey:"accessibility.alert.onDebugBreak",announcementMessage:m("accessibility.signals.onDebugBreak","Breakpoint"),settingsKey:"accessibility.signals.onDebugBreak"}),Me.noInlayHints=Me.register({name:m("accessibilitySignals.noInlayHints","No Inlay Hints on Line"),sound:At.error,legacySoundSettingsKey:"audioCues.noInlayHints",legacyAnnouncementSettingsKey:"accessibility.alert.noInlayHints",announcementMessage:m("accessibility.signals.noInlayHints","No Inlay Hints"),settingsKey:"accessibility.signals.noInlayHints"}),Me.taskCompleted=Me.register({name:m("accessibilitySignals.taskCompleted","Task Completed"),sound:At.taskCompleted,legacySoundSettingsKey:"audioCues.taskCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.taskCompleted",announcementMessage:m("accessibility.signals.taskCompleted","Task Completed"),settingsKey:"accessibility.signals.taskCompleted"}),Me.taskFailed=Me.register({name:m("accessibilitySignals.taskFailed","Task Failed"),sound:At.taskFailed,legacySoundSettingsKey:"audioCues.taskFailed",legacyAnnouncementSettingsKey:"accessibility.alert.taskFailed",announcementMessage:m("accessibility.signals.taskFailed","Task Failed"),settingsKey:"accessibility.signals.taskFailed"}),Me.terminalCommandFailed=Me.register({name:m("accessibilitySignals.terminalCommandFailed","Terminal Command Failed"),sound:At.error,legacySoundSettingsKey:"audioCues.terminalCommandFailed",legacyAnnouncementSettingsKey:"accessibility.alert.terminalCommandFailed",announcementMessage:m("accessibility.signals.terminalCommandFailed","Command Failed"),settingsKey:"accessibility.signals.terminalCommandFailed"}),Me.terminalCommandSucceeded=Me.register({name:m("accessibilitySignals.terminalCommandSucceeded","Terminal Command Succeeded"),sound:At.success,announcementMessage:m("accessibility.signals.terminalCommandSucceeded","Command Succeeded"),settingsKey:"accessibility.signals.terminalCommandSucceeded"}),Me.terminalBell=Me.register({name:m("accessibilitySignals.terminalBell","Terminal Bell"),sound:At.terminalBell,legacySoundSettingsKey:"audioCues.terminalBell",legacyAnnouncementSettingsKey:"accessibility.alert.terminalBell",announcementMessage:m("accessibility.signals.terminalBell","Terminal Bell"),settingsKey:"accessibility.signals.terminalBell"}),Me.notebookCellCompleted=Me.register({name:m("accessibilitySignals.notebookCellCompleted","Notebook Cell Completed"),sound:At.taskCompleted,legacySoundSettingsKey:"audioCues.notebookCellCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellCompleted",announcementMessage:m("accessibility.signals.notebookCellCompleted","Notebook Cell Completed"),settingsKey:"accessibility.signals.notebookCellCompleted"}),Me.notebookCellFailed=Me.register({name:m("accessibilitySignals.notebookCellFailed","Notebook Cell Failed"),sound:At.taskFailed,legacySoundSettingsKey:"audioCues.notebookCellFailed",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellFailed",announcementMessage:m("accessibility.signals.notebookCellFailed","Notebook Cell Failed"),settingsKey:"accessibility.signals.notebookCellFailed"}),Me.diffLineInserted=Me.register({name:m("accessibilitySignals.diffLineInserted","Diff Line Inserted"),sound:At.diffLineInserted,legacySoundSettingsKey:"audioCues.diffLineInserted",settingsKey:"accessibility.signals.diffLineInserted"}),Me.diffLineDeleted=Me.register({name:m("accessibilitySignals.diffLineDeleted","Diff Line Deleted"),sound:At.diffLineDeleted,legacySoundSettingsKey:"audioCues.diffLineDeleted",settingsKey:"accessibility.signals.diffLineDeleted"}),Me.diffLineModified=Me.register({name:m("accessibilitySignals.diffLineModified","Diff Line Modified"),sound:At.diffLineModified,legacySoundSettingsKey:"audioCues.diffLineModified",settingsKey:"accessibility.signals.diffLineModified"}),Me.chatRequestSent=Me.register({name:m("accessibilitySignals.chatRequestSent","Chat Request Sent"),sound:At.chatRequestSent,legacySoundSettingsKey:"audioCues.chatRequestSent",legacyAnnouncementSettingsKey:"accessibility.alert.chatRequestSent",announcementMessage:m("accessibility.signals.chatRequestSent","Chat Request Sent"),settingsKey:"accessibility.signals.chatRequestSent"}),Me.chatResponseReceived=Me.register({name:m("accessibilitySignals.chatResponseReceived","Chat Response Received"),legacySoundSettingsKey:"audioCues.chatResponseReceived",sound:{randomOneOf:[At.chatResponseReceived1,At.chatResponseReceived2,At.chatResponseReceived3,At.chatResponseReceived4]},settingsKey:"accessibility.signals.chatResponseReceived"}),Me.progress=Me.register({name:m("accessibilitySignals.progress","Progress"),sound:At.progress,legacySoundSettingsKey:"audioCues.chatResponsePending",legacyAnnouncementSettingsKey:"accessibility.alert.progress",announcementMessage:m("accessibility.signals.progress","Progress"),settingsKey:"accessibility.signals.progress"}),Me.clear=Me.register({name:m("accessibilitySignals.clear","Clear"),sound:At.clear,legacySoundSettingsKey:"audioCues.clear",legacyAnnouncementSettingsKey:"accessibility.alert.clear",announcementMessage:m("accessibility.signals.clear","Clear"),settingsKey:"accessibility.signals.clear"}),Me.save=Me.register({name:m("accessibilitySignals.save","Save"),sound:At.save,legacySoundSettingsKey:"audioCues.save",legacyAnnouncementSettingsKey:"accessibility.alert.save",announcementMessage:m("accessibility.signals.save","Save"),settingsKey:"accessibility.signals.save"}),Me.format=Me.register({name:m("accessibilitySignals.format","Format"),sound:At.format,legacySoundSettingsKey:"audioCues.format",legacyAnnouncementSettingsKey:"accessibility.alert.format",announcementMessage:m("accessibility.signals.format","Format"),settingsKey:"accessibility.signals.format"}),Me.voiceRecordingStarted=Me.register({name:m("accessibilitySignals.voiceRecordingStarted","Voice Recording Started"),sound:At.voiceRecordingStarted,legacySoundSettingsKey:"audioCues.voiceRecordingStarted",settingsKey:"accessibility.signals.voiceRecordingStarted"}),Me.voiceRecordingStopped=Me.register({name:m("accessibilitySignals.voiceRecordingStopped","Voice Recording Stopped"),sound:At.voiceRecordingStopped,legacySoundSettingsKey:"audioCues.voiceRecordingStopped",settingsKey:"accessibility.signals.voiceRecordingStopped"});let rr=Me;class Pte extends z{constructor(e,t=[]){super(),this.logger=new fz([e,...t]),this._register(e.onDidChangeLogLevel(i=>this.setLevel(i)))}get onDidChangeLogLevel(){return this.logger.onDidChangeLogLevel}setLevel(e){this.logger.setLevel(e)}getLevel(){return this.logger.getLevel()}trace(e,...t){this.logger.trace(e,...t)}debug(e,...t){this.logger.debug(e,...t)}info(e,...t){this.logger.info(e,...t)}warn(e,...t){this.logger.warn(e,...t)}error(e,...t){this.logger.error(e,...t)}}const a8=[];function Ote(o){a8.push(o)}function Fte(){return a8.slice(0)}class Bte{getParseResult(e){}}var ka=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},ri=function(o,e){return function(t,i){e(t,i,o)}};class Wte{constructor(e){this.disposed=!1,this.model=e,this._onWillDispose=new A}get textEditorModel(){return this.model}dispose(){this.disposed=!0,this._onWillDispose.fire()}}let aI=class{constructor(e){this.modelService=e}createModelReference(e){const t=this.modelService.getModel(e);return t?Promise.resolve(new vW(new Wte(t))):Promise.reject(new Error("Model not found"))}};aI=ka([ri(0,Fi)],aI);const qw=class qw{show(){return qw.NULL_PROGRESS_RUNNER}async showWhile(e,t){await e}};qw.NULL_PROGRESS_RUNNER={done:()=>{},total:()=>{},worked:()=>{}};let lI=qw;class Hte{withProgress(e,t,i){return t({report:()=>{}})}}class Vte{constructor(){this.isExtensionDevelopment=!1,this.isBuilt=!1}}class zte{async confirm(e){return{confirmed:this.doConfirm(e.message,e.detail),checkboxChecked:!1}}doConfirm(e,t){let i=e;return t&&(i=i+` + +`+t),_t.confirm(i)}async prompt(e){let t;if(this.doConfirm(e.message,e.detail)){const n=[...e.buttons??[]];e.cancelButton&&typeof e.cancelButton!="string"&&typeof e.cancelButton!="boolean"&&n.push(e.cancelButton),t=await n[0]?.run({checkboxChecked:!1})}return{result:t}}async error(e,t){await this.prompt({type:Qt.Error,message:e,detail:t})}}const Rp=class Rp{info(e){return this.notify({severity:Qt.Info,message:e})}warn(e){return this.notify({severity:Qt.Warning,message:e})}error(e){return this.notify({severity:Qt.Error,message:e})}notify(e){switch(e.severity){case Qt.Error:console.error(e.message);break;case Qt.Warning:console.warn(e.message);break;default:console.log(e.message);break}return Rp.NO_OP}prompt(e,t,i,n){return Rp.NO_OP}status(e,t){return z.None}};Rp.NO_OP=new W$;let cI=Rp,dI=class{constructor(e){this._onWillExecuteCommand=new A,this._onDidExecuteCommand=new A,this.onDidExecuteCommand=this._onDidExecuteCommand.event,this._instantiationService=e}executeCommand(e,...t){const i=bt.getCommand(e);if(!i)return Promise.reject(new Error(`command '${e}' not found`));try{this._onWillExecuteCommand.fire({commandId:e,args:t});const n=this._instantiationService.invokeFunction.apply(this._instantiationService,[i.handler,...t]);return this._onDidExecuteCommand.fire({commandId:e,args:t}),Promise.resolve(n)}catch(n){return Promise.reject(n)}}};dI=ka([ri(0,ke)],dI);let xg=class extends nZ{constructor(e,t,i,n,s,r){super(e,t,i,n,s),this._cachedResolver=null,this._dynamicKeybindings=[],this._domNodeListeners=[];const a=f=>{const g=new X;g.add(U(f,ee.KEY_DOWN,p=>{const _=new Nt(p);this._dispatch(_,_.target)&&(_.preventDefault(),_.stopPropagation())})),g.add(U(f,ee.KEY_UP,p=>{const _=new Nt(p);this._singleModifierDispatch(_,_.target)&&_.preventDefault()})),this._domNodeListeners.push(new Ute(f,g))},l=f=>{for(let g=0;g{f.getOption(61)||a(f.getContainerDomNode())},d=f=>{f.getOption(61)||l(f.getContainerDomNode())};this._register(r.onCodeEditorAdd(c)),this._register(r.onCodeEditorRemove(d)),r.listCodeEditors().forEach(c);const h=f=>{a(f.getContainerDomNode())},u=f=>{l(f.getContainerDomNode())};this._register(r.onDiffEditorAdd(h)),this._register(r.onDiffEditorRemove(u)),r.listDiffEditors().forEach(h)}addDynamicKeybinding(e,t,i,n){return No(bt.registerCommand(e,i),this.addDynamicKeybindings([{keybinding:t,command:e,when:n}]))}addDynamicKeybindings(e){const t=e.map(i=>({keybinding:Fx(i.keybinding,Ns),command:i.command??null,commandArgs:i.commandArgs,when:i.when,weight1:1e3,weight2:0,extensionId:null,isBuiltinExtension:!1}));return this._dynamicKeybindings=this._dynamicKeybindings.concat(t),this.updateResolver(),_e(()=>{for(let i=0;ithis._log(i))}return this._cachedResolver}_documentHasFocus(){return _t.document.hasFocus()}_toNormalizedKeybindingItems(e,t){const i=[];let n=0;for(const s of e){const r=s.when||void 0,a=s.keybinding;if(!a)i[n++]=new JA(void 0,s.command,s.commandArgs,r,t,null,!1);else{const l=l_.resolveKeybinding(a,Ns);for(const c of l)i[n++]=new JA(c,s.command,s.commandArgs,r,t,null,!1)}}return i}resolveKeyboardEvent(e){const t=new kl(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,e.keyCode);return new l_([t],Ns)}};xg=ka([ri(0,De),ri(1,hi),ri(2,$s),ri(3,mn),ri(4,gs),ri(5,Pt)],xg);class Ute extends z{constructor(e,t){super(),this.domNode=e,this._register(t)}}function _O(o){return o&&typeof o=="object"&&(!o.overrideIdentifier||typeof o.overrideIdentifier=="string")&&(!o.resource||o.resource instanceof ve)}let vv=class{constructor(e){this.logService=e,this._onDidChangeConfiguration=new A,this.onDidChangeConfiguration=this._onDidChangeConfiguration.event;const t=new Rte(e);this._configuration=new ry(t.reload(),Pi.createEmptyModel(e),Pi.createEmptyModel(e),Pi.createEmptyModel(e),Pi.createEmptyModel(e),Pi.createEmptyModel(e),new cs,Pi.createEmptyModel(e),new cs,e),t.dispose()}getValue(e,t){const i=typeof e=="string"?e:void 0,n=_O(e)?e:_O(t)?t:{};return this._configuration.getValue(i,n,void 0)}updateValues(e){const t={data:this._configuration.toData()},i=[];for(const n of e){const[s,r]=n;this.getValue(s)!==r&&(this._configuration.updateValue(s,r),i.push(s))}if(i.length>0){const n=new XG({keys:i,overrides:[]},t,this._configuration,void 0,this.logService);n.source=8,this._onDidChangeConfiguration.fire(n)}return Promise.resolve()}updateValue(e,t,i,n){return this.updateValues([[e,t]])}inspect(e,t={}){return this._configuration.inspect(e,t,void 0)}};vv=ka([ri(0,gs)],vv);let hI=class{constructor(e,t,i){this.configurationService=e,this.modelService=t,this.languageService=i,this._onDidChangeConfiguration=new A,this.configurationService.onDidChangeConfiguration(n=>{this._onDidChangeConfiguration.fire({affectedKeys:n.affectedKeys,affectsConfiguration:(s,r)=>n.affectsConfiguration(r)})})}getValue(e,t,i){const n=P.isIPosition(t)?t:null,s=n?typeof i=="string"?i:void 0:typeof t=="string"?t:void 0,r=e?this.getLanguage(e,n):void 0;return typeof s>"u"?this.configurationService.getValue({resource:e,overrideIdentifier:r}):this.configurationService.getValue(s,{resource:e,overrideIdentifier:r})}getLanguage(e,t){const i=this.modelService.getModel(e);return i?t?i.getLanguageIdAtPosition(t.lineNumber,t.column):i.getLanguageId():this.languageService.guessLanguageIdByFilepathOrFirstLine(e)}};hI=ka([ri(0,lt),ri(1,Fi),ri(2,qt)],hI);let uI=class{constructor(e){this.configurationService=e}getEOL(e,t){const i=this.configurationService.getValue("files.eol",{overrideIdentifier:t,resource:e});return i&&typeof i=="string"&&i!=="auto"?i:Un||Ue?` +`:`\r +`}};uI=ka([ri(0,lt)],uI);class $te{publicLog2(){}}const Ap=class Ap{constructor(){const e=ve.from({scheme:Ap.SCHEME,authority:"model",path:"/"});this.workspace={id:CZ,folders:[new bZ({uri:e,name:"",index:0})]}}getWorkspace(){return this.workspace}getWorkspaceFolder(e){return e&&e.scheme===Ap.SCHEME?this.workspace.folders[0]:null}};Ap.SCHEME="inmemory";let fI=Ap;function wv(o,e,t){if(!e||!(o instanceof vv))return;const i=[];Object.keys(e).forEach(n=>{qG(n)&&i.push([`editor.${n}`,e[n]]),t&&GG(n)&&i.push([`diffEditor.${n}`,e[n]])}),i.length>0&&o.updateValues(i)}let gI=class{constructor(e){this._modelService=e}hasPreviewHandler(){return!1}async apply(e,t){const i=Array.isArray(e)?e:$T.convert(e),n=new Map;for(const a of i){if(!(a instanceof Xd))throw new Error("bad edit - only text edits are supported");const l=this._modelService.getModel(a.resource);if(!l)throw new Error("bad edit - model not found");if(typeof a.versionId=="number"&&l.getVersionId()!==a.versionId)throw new Error("bad state - model changed in the meantime");let c=n.get(l);c||(c=[],n.set(l,c)),c.push(aa.replaceMove(I.lift(a.textEdit.range),a.textEdit.text))}let s=0,r=0;for(const[a,l]of n)a.pushStackElement(),a.pushEditOperations([],l,()=>[]),a.pushStackElement(),r+=1,s+=l.length;return{ariaSummary:$p(Yk.bulkEditServiceSummary,s,r),isApplied:s>0}}};gI=ka([ri(0,Fi)],gI);class Kte{getUriLabel(e,t){return e.scheme==="file"?e.fsPath:e.path}getUriBasenameLabel(e){return Fo(e)}}let mI=class extends VG{constructor(e,t){super(e),this._codeEditorService=t}showContextView(e,t,i){if(!t){const n=this._codeEditorService.getFocusedCodeEditor()||this._codeEditorService.getActiveCodeEditor();n&&(t=n.getContainerDomNode())}return super.showContextView(e,t,i)}};mI=ka([ri(0,jc),ri(1,Pt)],mI);class jte{constructor(){this._neverEmitter=new A,this.onDidChangeTrust=this._neverEmitter.event}isWorkspaceTrusted(){return!0}}class qte extends nD{constructor(){super()}}class Gte extends Pte{constructor(){super(new uz)}}let pI=class extends gD{constructor(e,t,i,n,s,r){super(e,t,i,n,s,r),this.configure({blockMouse:!1})}};pI=ka([ri(0,$s),ri(1,mn),ri(2,lu),ri(3,vt),ri(4,yr),ri(5,De)],pI);const _I={amdModuleId:"vs/editor/common/services/editorSimpleWorker",esmModuleLocation:void 0,label:"editorWorkerService"};let bI=class extends uk{constructor(e,t,i,n,s){super(_I,e,t,i,n,s)}};bI=ka([ri(0,Fi),ri(1,pT),ri(2,gs),ri(3,Gn),ri(4,Se)],bI);class Zte{async playSignal(e,t){}}Qe(gs,Gte,0);Qe(lt,vv,0);Qe(pT,hI,0);Qe(p3,uI,0);Qe(jk,fI,0);Qe(Cg,Kte,0);Qe($s,$te,0);Qe(w3,zte,0);Qe(vT,Vte,0);Qe(mn,cI,0);Qe(xa,Gl,0);Qe(qt,qte,0);Qe(zo,mte,0);Qe(Fi,ID,0);Qe(n2,CD,0);Qe(De,rI,0);Qe(cZ,Hte,0);Qe(G_,lI,0);Qe(du,MY,0);Qe(Zc,bI,0);Qe(b7,gI,0);Qe(vZ,jte,0);Qe(fo,aI,0);Qe(ms,JD,0);Qe(mo,Dee,0);Qe(hi,dI,0);Qe(vt,xg,0);Qe(fy,YD,0);Qe(lu,mI,0);Qe(Vo,bD,0);Qe(wy,sI,0);Qe(Lr,pI,0);Qe(yr,eI,0);Qe(rb,Zte,0);Qe(b9,Bte,0);var pe;(function(o){const e=new jg;for(const[l,c]of IR())e.set(l,c);const t=new Cv(e,!0);e.set(ke,t);function i(l){n||r({});const c=e.get(l);if(!c)throw new Error("Missing service "+l);return c instanceof Gr?t.invokeFunction(d=>d.get(l)):c}o.get=i;let n=!1;const s=new A;function r(l){if(n)return t;n=!0;for(const[d,h]of IR())e.get(d)||e.set(d,h);for(const d in l)if(l.hasOwnProperty(d)){const h=He(d);e.get(h)instanceof Gr&&e.set(h,l[d])}const c=Fte();for(const d of c)try{t.createInstance(d)}catch(h){Ze(h)}return s.fire(),t}o.initialize=r;function a(l){if(n)return l();const c=new X,d=c.add(s.event(()=>{d.dispose(),c.add(l())}));return c}o.withServices=a})(pe||(pe={}));function Yte(o,e){return new Qte(o,e)}class Qte extends EC{constructor(e,t){const i={amdModuleId:_I.amdModuleId,esmModuleLocation:_I.esmModuleLocation,label:t.label};super(i,t.keepIdleModels||!1,e),this._foreignModuleId=t.moduleId,this._foreignModuleCreateData=t.createData||null,this._foreignModuleHost=t.host||null,this._foreignProxy=null}fhr(e,t){if(!this._foreignModuleHost||typeof this._foreignModuleHost[e]!="function")return Promise.reject(new Error("Missing method "+e+" or missing main thread foreign host."));try{return Promise.resolve(this._foreignModuleHost[e].apply(this._foreignModuleHost,t))}catch(i){return Promise.reject(i)}}_getForeignProxy(){return this._foreignProxy||(this._foreignProxy=this._getProxy().then(e=>{const t=this._foreignModuleHost?DL(this._foreignModuleHost):[];return e.$loadForeignModule(this._foreignModuleId,this._foreignModuleCreateData,t).then(i=>{this._foreignModuleCreateData=null;const n=(a,l)=>e.$fmr(a,l),s=(a,l)=>function(){const c=Array.prototype.slice.call(arguments,0);return l(a,c)},r={};for(const a of i)r[a]=s(a,n);return r})})),this._foreignProxy}getProxy(){return this._getForeignProxy()}withSyncedResources(e){return this.workerWithSyncedResources(e).then(t=>this.getProxy())}}const yy={ICodeEditor:"vs.editor.ICodeEditor",IDiffEditor:"vs.editor.IDiffEditor"};class As{constructor(e,t,i,n){this.startColumn=e,this.endColumn=t,this.className=i,this.type=n,this._lineDecorationBrand=void 0}static _equals(e,t){return e.startColumn===t.startColumn&&e.endColumn===t.endColumn&&e.className===t.className&&e.type===t.type}static equalsArr(e,t){const i=e.length,n=t.length;if(i!==n)return!1;for(let s=0;s=s||(a[l++]=new As(Math.max(1,c.startColumn-n+1),Math.min(r+1,c.endColumn-n+1),c.className,c.type));return a}static filter(e,t,i,n){if(e.length===0)return[];const s=[];let r=0;for(let a=0,l=e.length;at||d.isEmpty()&&(c.type===0||c.type===3))continue;const h=d.startLineNumber===t?d.startColumn:i,u=d.endLineNumber===t?d.endColumn:n;s[r++]=new As(h,u,c.inlineClassName,c.type)}return s}static _typeCompare(e,t){const i=[2,0,1,3];return i[e]-i[t]}static compare(e,t){if(e.startColumn!==t.startColumn)return e.startColumn-t.startColumn;if(e.endColumn!==t.endColumn)return e.endColumn-t.endColumn;const i=As._typeCompare(e.type,t.type);return i!==0?i:e.className!==t.className?e.className0&&this.stopOffsets[0]0&&t=e){this.stopOffsets.splice(n,0,e),this.classNames.splice(n,0,t),this.metadata.splice(n,0,i);break}this.count++}}class Xte{static normalize(e,t){if(t.length===0)return[];const i=[],n=new yv;let s=0;for(let r=0,a=t.length;r1){const p=e.charCodeAt(c-2);wi(p)&&c--}if(d>1){const p=e.charCodeAt(d-2);wi(p)&&d--}const f=c-1,g=d-2;s=n.consumeLowerThan(f,s,i),n.count===0&&(s=f),n.insert(g,h,u)}return n.consumeLowerThan(1073741824,s,i),i}}class Ii{constructor(e,t,i,n){this.endIndex=e,this.type=t,this.metadata=i,this.containsRTL=n,this._linePartBrand=void 0}isWhitespace(){return!!(this.metadata&1)}isPseudoAfter(){return!!(this.metadata&4)}}class l8{constructor(e,t){this.startOffset=e,this.endOffset=t}equals(e){return this.startOffset===e.startOffset&&this.endOffset===e.endOffset}}class gu{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_,b,C,w){this.useMonospaceOptimizations=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=i,this.continuesWithWrappedLine=n,this.isBasicASCII=s,this.containsRTL=r,this.fauxIndentLength=a,this.lineTokens=l,this.lineDecorations=c.sort(As.compare),this.tabSize=d,this.startVisibleColumn=h,this.spaceWidth=u,this.stopRenderingLineAfter=p,this.renderWhitespace=_==="all"?4:_==="boundary"?1:_==="selection"?2:_==="trailing"?3:0,this.renderControlCharacters=b,this.fontLigatures=C,this.selectionsOnLine=w&&w.sort((x,L)=>x.startOffset>>16}static getCharIndex(e){return(e&65535)>>>0}constructor(e,t){this.length=e,this._data=new Uint32Array(this.length),this._horizontalOffset=new Uint32Array(this.length)}setColumnInfo(e,t,i,n){const s=(t<<16|i<<0)>>>0;this._data[e-1]=s,this._horizontalOffset[e-1]=n}getHorizontalOffset(e){return this._horizontalOffset.length===0?0:this._horizontalOffset[e-1]}charOffsetToPartData(e){return this.length===0?0:e<0?this._data[0]:e>=this.length?this._data[this.length-1]:this._data[e]}getDomPosition(e){const t=this.charOffsetToPartData(e-1),i=Zr.getPartIndex(t),n=Zr.getCharIndex(t);return new c8(i,n)}getColumn(e,t){return this.partDataToCharOffset(e.partIndex,t,e.charIndex)+1}partDataToCharOffset(e,t,i){if(this.length===0)return 0;const n=(e<<16|i<<0)>>>0;let s=0,r=this.length-1;for(;s+1>>1,_=this._data[p];if(_===n)return p;_>n?r=p:s=p}if(s===r)return s;const a=this._data[s],l=this._data[r];if(a===n)return s;if(l===n)return r;const c=Zr.getPartIndex(a),d=Zr.getCharIndex(a),h=Zr.getPartIndex(l);let u;c!==h?u=t:u=Zr.getCharIndex(l);const f=i-d,g=u-i;return f<=g?s:r}}class CI{constructor(e,t,i){this._renderLineOutputBrand=void 0,this.characterMapping=e,this.containsRTL=t,this.containsForeignElements=i}}function Sy(o,e){if(o.lineContent.length===0){if(o.lineDecorations.length>0){e.appendString("");let t=0,i=0,n=0;for(const r of o.lineDecorations)(r.type===1||r.type===2)&&(e.appendString(''),r.type===1&&(n|=1,t++),r.type===2&&(n|=2,i++));e.appendString("");const s=new Zr(1,t+i);return s.setColumnInfo(1,t,0,0),new CI(s,!1,n)}return e.appendString(""),new CI(new Zr(0,0),!1,0)}return aie(tie(o),e)}class Jte{constructor(e,t,i,n){this.characterMapping=e,this.html=t,this.containsRTL=i,this.containsForeignElements=n}}function Ly(o){const e=new K_(1e4),t=Sy(o,e);return new Jte(t.characterMapping,e.build(),t.containsRTL,t.containsForeignElements)}class eie{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_){this.fontIsMonospace=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=i,this.len=n,this.isOverflowing=s,this.overflowingCharCount=r,this.parts=a,this.containsForeignElements=l,this.fauxIndentLength=c,this.tabSize=d,this.startVisibleColumn=h,this.containsRTL=u,this.spaceWidth=f,this.renderSpaceCharCode=g,this.renderWhitespace=p,this.renderControlCharacters=_}}function tie(o){const e=o.lineContent;let t,i,n;o.stopRenderingLineAfter!==-1&&o.stopRenderingLineAfter0){for(let a=0,l=o.lineDecorations.length;a0&&(s[r++]=new Ii(i,"",0,!1));let a=i;for(let l=0,c=t.getCount();l=n){const f=e?sg(o.substring(a,n)):!1;s[r++]=new Ii(n,h,0,f);break}const u=e?sg(o.substring(a,d)):!1;s[r++]=new Ii(d,h,0,u),a=d}return s}function nie(o,e,t){let i=0;const n=[];let s=0;if(t)for(let r=0,a=e.length;r=50&&(n[s++]=new Ii(f+1,d,h,u),g=f+1,f=-1);g!==c&&(n[s++]=new Ii(c,d,h,u))}else n[s++]=l;i=c}else for(let r=0,a=e.length;r50){const h=l.type,u=l.metadata,f=l.containsRTL,g=Math.ceil(d/50);for(let p=1;p=8234&&o<=8238||o>=8294&&o<=8297||o>=8206&&o<=8207||o===1564}function sie(o,e){const t=[];let i=new Ii(0,"",0,!1),n=0;for(const s of e){const r=s.endIndex;for(;ni.endIndex&&(i=new Ii(n,s.type,s.metadata,s.containsRTL),t.push(i)),i=new Ii(n+1,"mtkcontrol",s.metadata,!1),t.push(i))}n>i.endIndex&&(i=new Ii(r,s.type,s.metadata,s.containsRTL),t.push(i))}return t}function oie(o,e,t,i){const n=o.continuesWithWrappedLine,s=o.fauxIndentLength,r=o.tabSize,a=o.startVisibleColumn,l=o.useMonospaceOptimizations,c=o.selectionsOnLine,d=o.renderWhitespace===1,h=o.renderWhitespace===3,u=o.renderSpaceWidth!==o.spaceWidth,f=[];let g=0,p=0,_=i[p].type,b=i[p].containsRTL,C=i[p].endIndex;const w=i.length;let v=!1,y=zn(e),x;y===-1?(v=!0,y=t,x=t):x=Jh(e);let L=!1,E=0,N=c&&c[E],H=a%r;for(let W=s;W=N.endOffset&&(E++,N=c&&c[E]);let B;if(Wx)B=!0;else if(j===9)B=!0;else if(j===32)if(d)if(L)B=!0;else{const G=W+1W),B&&h&&(B=v||W>x),B&&b&&W>=y&&W<=x&&(B=!1),L){if(!B||!l&&H>=r){if(u){const G=g>0?f[g-1].endIndex:s;for(let ne=G+1;ne<=W;ne++)f[g++]=new Ii(ne,"mtkw",1,!1)}else f[g++]=new Ii(W,"mtkw",1,!1);H=H%r}}else(W===C||B&&W>s)&&(f[g++]=new Ii(W,_,0,b),H=H%r);for(j===9?H=r:Rc(j)?H+=2:H++,L=B;W===C&&(p++,p0?e.charCodeAt(t-1):0,j=t>1?e.charCodeAt(t-2):0;W===32&&j!==32&&j!==9||(F=!0)}else F=!0;if(F)if(u){const W=g>0?f[g-1].endIndex:s;for(let j=W+1;j<=t;j++)f[g++]=new Ii(j,"mtkw",1,!1)}else f[g++]=new Ii(t,"mtkw",1,!1);else f[g++]=new Ii(t,_,0,b);return f}function rie(o,e,t,i){i.sort(As.compare);const n=Xte.normalize(o,i),s=n.length;let r=0;const a=[];let l=0,c=0;for(let h=0,u=t.length;hc&&(c=C.startOffset,a[l++]=new Ii(c,p,_,b)),C.endOffset+1<=g)c=C.endOffset+1,a[l++]=new Ii(c,p+" "+C.className,_|C.metadata,b),r++;else{c=g,a[l++]=new Ii(c,p+" "+C.className,_|C.metadata,b);break}}g>c&&(c=g,a[l++]=new Ii(c,p,_,b))}const d=t[t.length-1].endIndex;if(r'):e.appendString("");for(let N=0,H=c.length;N=d&&(be+=Rt)}}for(ne&&(e.appendString(' style="width:'),e.appendString(String(g*de)),e.appendString('px"')),e.appendASCIICharCode(62);v1?e.appendCharCode(8594):e.appendCharCode(65515);for(let Rt=2;Rt<=we;Rt++)e.appendCharCode(160)}else be=2,we=1,e.appendCharCode(p),e.appendCharCode(8204);x+=be,L+=we,v>=d&&(y+=we)}}else for(e.appendASCIICharCode(62);v=d&&(y+=be)}ae?E++:E=0,v>=r&&!w&&F.isPseudoAfter()&&(w=!0,C.setColumnInfo(v+1,N,x,L)),e.appendString("")}return w||C.setColumnInfo(r+1,c.length-1,x,L),a&&(e.appendString(''),e.appendString(m("showMore","Show more ({0})",cie(l))),e.appendString("")),e.appendString(""),new CI(C,f,n)}function lie(o){return o.toString(16).toUpperCase().padStart(4,"0")}function cie(o){return o<1024?m("overflow.chars","{0} chars",o):o<1024*1024?`${(o/1024).toFixed(1)} KB`:`${(o/1024/1024).toFixed(1)} MB`}class CO{constructor(e,t,i,n){this._viewportBrand=void 0,this.top=e|0,this.left=t|0,this.width=i|0,this.height=n|0}}class die{constructor(e,t){this.tabSize=e,this.data=t}}class P2{constructor(e,t,i,n,s,r,a){this._viewLineDataBrand=void 0,this.content=e,this.continuesWithWrappedLine=t,this.minColumn=i,this.maxColumn=n,this.startVisibleColumn=s,this.tokens=r,this.inlineDecorations=a}}class zs{constructor(e,t,i,n,s,r,a,l,c,d){this.minColumn=e,this.maxColumn=t,this.content=i,this.continuesWithWrappedLine=n,this.isBasicASCII=zs.isBasicASCII(i,r),this.containsRTL=zs.containsRTL(i,this.isBasicASCII,s),this.tokens=a,this.inlineDecorations=l,this.tabSize=c,this.startVisibleColumn=d}static isBasicASCII(e,t){return t?D0(e):!0}static containsRTL(e,t,i){return!t&&i?sg(e):!1}}class hp{constructor(e,t,i){this.range=e,this.inlineClassName=t,this.type=i}}class hie{constructor(e,t,i,n){this.startOffset=e,this.endOffset=t,this.inlineClassName=i,this.inlineClassNameAffectsLetterSpacing=n}toInlineDecoration(e){return new hp(new I(e,this.startOffset+1,e,this.endOffset+1),this.inlineClassName,this.inlineClassNameAffectsLetterSpacing?3:0)}}class h8{constructor(e,t){this._viewModelDecorationBrand=void 0,this.range=e,this.options=t}}class w_{constructor(e,t,i){this.color=e,this.zIndex=t,this.data=i}static compareByRenderingProps(e,t){return e.zIndex===t.zIndex?e.colort.color?1:0:e.zIndex-t.zIndex}static equals(e,t){return e.color===t.color&&e.zIndex===t.zIndex&&li(e.data,t.data)}static equalsArr(e,t){return li(e,t,w_.equals)}}function uie(o){return Array.isArray(o)}function fie(o){return!uie(o)}function u8(o){return typeof o=="string"}function vO(o){return!u8(o)}function kd(o){return!o}function yl(o,e){return o.ignoreCase&&e?e.toLowerCase():e}function wO(o){return o.replace(/[&<>'"_]/g,"-")}function gie(o,e){console.log(`${o.languageId}: ${e}`)}function Et(o,e){return new Error(`${o.languageId}: ${e}`)}function tc(o,e,t,i,n){const s=/\$((\$)|(#)|(\d\d?)|[sS](\d\d?)|@(\w+))/g;let r=null;return e.replace(s,function(a,l,c,d,h,u,f,g,p){return kd(c)?kd(d)?!kd(h)&&h0;){const i=o.tokenizer[t];if(i)return i;const n=t.lastIndexOf(".");n<0?t=null:t=t.substr(0,n)}return null}function pie(o,e){let t=e;for(;t&&t.length>0;){if(o.stateNames[t])return!0;const n=t.lastIndexOf(".");n<0?t=null:t=t.substr(0,n)}return!1}var _ie=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},bie=function(o,e){return function(t,i){e(t,i,o)}},vI;const f8=5,Gw=class Gw{static create(e,t){return this._INSTANCE.create(e,t)}constructor(e){this._maxCacheDepth=e,this._entries=Object.create(null)}create(e,t){if(e!==null&&e.depth>=this._maxCacheDepth)return new qf(e,t);let i=qf.getStackElementId(e);i.length>0&&(i+="|"),i+=t;let n=this._entries[i];return n||(n=new qf(e,t),this._entries[i]=n,n)}};Gw._INSTANCE=new Gw(f8);let y_=Gw;class qf{constructor(e,t){this.parent=e,this.state=t,this.depth=(this.parent?this.parent.depth:0)+1}static getStackElementId(e){let t="";for(;e!==null;)t.length>0&&(t+="|"),t+=e.state,e=e.parent;return t}static _equals(e,t){for(;e!==null&&t!==null;){if(e===t)return!0;if(e.state!==t.state)return!1;e=e.parent,t=t.parent}return e===null&&t===null}equals(e){return qf._equals(this,e)}push(e){return y_.create(this,e)}pop(){return this.parent}popall(){let e=this;for(;e.parent;)e=e.parent;return e}switchTo(e){return y_.create(this.parent,e)}}class cf{constructor(e,t){this.languageId=e,this.state=t}equals(e){return this.languageId===e.languageId&&this.state.equals(e.state)}clone(){return this.state.clone()===this.state?this:new cf(this.languageId,this.state)}}const Zw=class Zw{static create(e,t){return this._INSTANCE.create(e,t)}constructor(e){this._maxCacheDepth=e,this._entries=Object.create(null)}create(e,t){if(t!==null)return new up(e,t);if(e!==null&&e.depth>=this._maxCacheDepth)return new up(e,t);const i=qf.getStackElementId(e);let n=this._entries[i];return n||(n=new up(e,null),this._entries[i]=n,n)}};Zw._INSTANCE=new Zw(f8);let ic=Zw;class up{constructor(e,t){this.stack=e,this.embeddedLanguageData=t}clone(){return(this.embeddedLanguageData?this.embeddedLanguageData.clone():null)===this.embeddedLanguageData?this:ic.create(this.stack,this.embeddedLanguageData)}equals(e){return!(e instanceof up)||!this.stack.equals(e.stack)?!1:this.embeddedLanguageData===null&&e.embeddedLanguageData===null?!0:this.embeddedLanguageData===null||e.embeddedLanguageData===null?!1:this.embeddedLanguageData.equals(e.embeddedLanguageData)}}class Cie{constructor(){this._tokens=[],this._languageId=null,this._lastTokenType=null,this._lastTokenLanguage=null}enterLanguage(e){this._languageId=e}emit(e,t){this._lastTokenType===t&&this._lastTokenLanguage===this._languageId||(this._lastTokenType=t,this._lastTokenLanguage=this._languageId,this._tokens.push(new zp(e,t,this._languageId)))}nestedLanguageTokenize(e,t,i,n){const s=i.languageId,r=i.state,a=si.get(s);if(!a)return this.enterLanguage(s),this.emit(n,""),r;const l=a.tokenize(e,t,r);if(n!==0)for(const c of l.tokens)this._tokens.push(new zp(c.offset+n,c.type,c.language));else this._tokens=this._tokens.concat(l.tokens);return this._lastTokenType=null,this._lastTokenLanguage=null,this._languageId=null,l.endState}finalize(e){return new FN(this._tokens,e)}}class Sv{constructor(e,t){this._languageService=e,this._theme=t,this._prependTokens=null,this._tokens=[],this._currentLanguageId=0,this._lastTokenMetadata=0}enterLanguage(e){this._currentLanguageId=this._languageService.languageIdCodec.encodeLanguageId(e)}emit(e,t){const i=this._theme.match(this._currentLanguageId,t)|1024;this._lastTokenMetadata!==i&&(this._lastTokenMetadata=i,this._tokens.push(e),this._tokens.push(i))}static _merge(e,t,i){const n=e!==null?e.length:0,s=t.length,r=i!==null?i.length:0;if(n===0&&s===0&&r===0)return new Uint32Array(0);if(n===0&&s===0)return i;if(s===0&&r===0)return e;const a=new Uint32Array(n+s+r);e!==null&&a.set(e);for(let l=0;l{if(r)return;let l=!1;for(let c=0,d=a.changedLanguages.length;c{a.affectsConfiguration("editor.maxTokenizationLineLength")&&(this._maxTokenizationLineLength=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:this._languageId}))}))}getLoadStatus(){const e=[];for(const t in this._embeddedLanguages){const i=si.get(t);if(i){if(i instanceof vI){const n=i.getLoadStatus();n.loaded===!1&&e.push(n.promise)}continue}si.isResolved(t)||e.push(si.getOrCreate(t))}return e.length===0?{loaded:!0}:{loaded:!1,promise:Promise.all(e).then(t=>{})}}getInitialState(){const e=y_.create(null,this._lexer.start);return ic.create(e,null)}tokenize(e,t,i){if(e.length>=this._maxTokenizationLineLength)return _7(this._languageId,i);const n=new Cie,s=this._tokenize(e,t,i,n);return n.finalize(s)}tokenizeEncoded(e,t,i){if(e.length>=this._maxTokenizationLineLength)return zT(this._languageService.languageIdCodec.encodeLanguageId(this._languageId),i);const n=new Sv(this._languageService,this._standaloneThemeService.getColorTheme().tokenTheme),s=this._tokenize(e,t,i,n);return n.finalize(s)}_tokenize(e,t,i,n){return i.embeddedLanguageData?this._nestedTokenize(e,t,i,0,n):this._myTokenize(e,t,i,0,n)}_findLeavingNestedLanguageOffset(e,t){let i=this._lexer.tokenizer[t.stack.state];if(!i&&(i=e1(this._lexer,t.stack.state),!i))throw Et(this._lexer,"tokenizer state is not defined: "+t.stack.state);let n=-1,s=!1;for(const r of i){if(!vO(r.action)||r.action.nextEmbedded!=="@pop")continue;s=!0;let a=r.resolveRegex(t.stack.state);const l=a.source;if(l.substr(0,4)==="^(?:"&&l.substr(l.length-1,1)===")"){const d=(a.ignoreCase?"i":"")+(a.unicode?"u":"");a=new RegExp(l.substr(4,l.length-5),d)}const c=e.search(a);c===-1||c!==0&&r.matchOnlyAtLineStart||(n===-1||c0&&s.nestedLanguageTokenize(a,!1,i.embeddedLanguageData,n);const l=e.substring(r);return this._myTokenize(l,t,i,n+r,s)}_safeRuleName(e){return e?e.name:"(unknown)"}_myTokenize(e,t,i,n,s){s.enterLanguage(this._languageId);const r=e.length,a=t&&this._lexer.includeLF?e+` +`:e,l=a.length;let c=i.embeddedLanguageData,d=i.stack,h=0,u=null,f=!0;for(;f||h=l)break;f=!1;let N=this._lexer.tokenizer[b];if(!N&&(N=e1(this._lexer,b),!N))throw Et(this._lexer,"tokenizer state is not defined: "+b);const H=a.substr(h);for(const F of N)if((h===0||!F.matchOnlyAtLineStart)&&(C=H.match(F.resolveRegex(b)),C)){w=C[0],v=F.action;break}}if(C||(C=[""],w=""),v||(h=this._lexer.maxStack)throw Et(this._lexer,"maximum tokenizer stack size reached: ["+d.state+","+d.parent.state+",...]");d=d.push(b)}else if(v.next==="@pop"){if(d.depth<=1)throw Et(this._lexer,"trying to pop an empty stack in rule: "+this._safeRuleName(y));d=d.pop()}else if(v.next==="@popall")d=d.popall();else{let N=tc(this._lexer,v.next,w,C,b);if(N[0]==="@"&&(N=N.substr(1)),e1(this._lexer,N))d=d.push(N);else throw Et(this._lexer,"trying to set a next state '"+N+"' that is undefined in rule: "+this._safeRuleName(y))}}v.log&&typeof v.log=="string"&&gie(this._lexer,this._lexer.languageId+": "+tc(this._lexer,v.log,w,C,b))}if(L===null)throw Et(this._lexer,"lexer rule has no well-defined action in rule: "+this._safeRuleName(y));const E=N=>{const H=this._languageService.getLanguageIdByLanguageName(N)||this._languageService.getLanguageIdByMimeType(N)||N,F=this._getNestedEmbeddedLanguageData(H);if(h0)throw Et(this._lexer,"groups cannot be nested: "+this._safeRuleName(y));if(C.length!==L.length+1)throw Et(this._lexer,"matched number of groups does not match the number of actions in rule: "+this._safeRuleName(y));let N=0;for(let H=1;Ho});class O2{static colorizeElement(e,t,i,n){n=n||{};const s=n.theme||"vs",r=n.mimeType||i.getAttribute("lang")||i.getAttribute("data-lang");if(!r)return console.error("Mode not detected"),Promise.resolve();const a=t.getLanguageIdByMimeType(r)||r;e.setTheme(s);const l=i.firstChild?i.firstChild.nodeValue:"";i.className+=" "+s;const c=d=>{const h=wie?.createHTML(d)??d;i.innerHTML=h};return this.colorize(t,l||"",a,n).then(c,d=>console.error(d))}static async colorize(e,t,i,n){const s=e.languageIdCodec;let r=4;n&&typeof n.tabSize=="number"&&(r=n.tabSize),$N(t)&&(t=t.substr(1));const a=va(t);if(!e.isRegisteredLanguageId(i))return yO(a,r,s);const l=await si.getOrCreate(i);return l?yie(a,r,l,s):yO(a,r,s)}static colorizeLine(e,t,i,n,s=4){const r=zs.isBasicASCII(e,t),a=zs.containsRTL(e,r,i);return Ly(new gu(!1,!0,e,!1,r,a,0,n,[],s,0,0,0,0,-1,"none",!1,!1,null)).html}static colorizeModelLine(e,t,i=4){const n=e.getLineContent(t);e.tokenization.forceTokenization(t);const r=e.tokenization.getLineTokens(t).inflate();return this.colorizeLine(n,e.mightContainNonBasicASCII(),e.mightContainRTL(),r,i)}}function yie(o,e,t,i){return new Promise((n,s)=>{const r=()=>{const a=Sie(o,e,t,i);if(t instanceof S_){const l=t.getLoadStatus();if(l.loaded===!1){l.promise.then(r,s);return}}n(a)};r()})}function yO(o,e,t){let i=[];const s=new Uint32Array(2);s[0]=0,s[1]=33587200;for(let r=0,a=o.length;r")}return i.join("")}function Sie(o,e,t,i){let n=[],s=t.getInitialState();for(let r=0,a=o.length;r"),s=c.endState}return n.join("")}var Lie=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},xie=function(o,e){return function(t,i){e(t,i,o)}},Xf;let Lv=(Xf=class{constructor(e,t){}dispose(){}},Xf.ID="editor.contrib.markerDecorations",Xf);Lv=Lie([xie(1,n2)],Lv);Ho(Lv.ID,Lv,0);class g8 extends z{constructor(e,t){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._referenceDomElement=e,this._width=-1,this._height=-1,this._resizeObserver=null,this.measureReferenceDomElement(!1,t)}dispose(){this.stopObserving(),super.dispose()}getWidth(){return this._width}getHeight(){return this._height}startObserving(){if(!this._resizeObserver&&this._referenceDomElement){let e=null;const t=()=>{e?this.observe({width:e.width,height:e.height}):this.observe()};let i=!1,n=!1;const s=()=>{if(i&&!n)try{i=!1,n=!0,t()}finally{fs(fe(this._referenceDomElement),()=>{n=!1,s()})}};this._resizeObserver=new ResizeObserver(r=>{r&&r[0]&&r[0].contentRect?e={width:r[0].contentRect.width,height:r[0].contentRect.height}:e=null,i=!0,s()}),this._resizeObserver.observe(this._referenceDomElement)}}stopObserving(){this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null)}observe(e){this.measureReferenceDomElement(!0,e)}measureReferenceDomElement(e,t){let i=0,n=0;t?(i=t.width,n=t.height):this._referenceDomElement&&(i=this._referenceDomElement.clientWidth,n=this._referenceDomElement.clientHeight),i=Math.max(5,i),n=Math.max(5,n),(this._width!==i||this._height!==n)&&(this._width=i,this._height=n,e&&this._onDidChange.fire())}}const xf=class xf{constructor(e,t){this.key=e,this.migrate=t}apply(e){const t=xf._read(e,this.key),i=s=>xf._read(e,s),n=(s,r)=>xf._write(e,s,r);this.migrate(t,i,n)}static _read(e,t){if(typeof e>"u")return;const i=t.indexOf(".");if(i>=0){const n=t.substring(0,i);return this._read(e[n],t.substring(i+1))}return e[t]}static _write(e,t,i){const n=t.indexOf(".");if(n>=0){const s=t.substring(0,n);e[s]=e[s]||{},this._write(e[s],t.substring(n+1),i);return}e[t]=i}};xf.items=[];let L_=xf;function kr(o,e){L_.items.push(new L_(o,e))}function ps(o,e){kr(o,(t,i,n)=>{if(typeof t<"u"){for(const[s,r]of e)if(t===s){n(o,r);return}}})}function kie(o){L_.items.forEach(e=>e.apply(o))}ps("wordWrap",[[!0,"on"],[!1,"off"]]);ps("lineNumbers",[[!0,"on"],[!1,"off"]]);ps("cursorBlinking",[["visible","solid"]]);ps("renderWhitespace",[[!0,"boundary"],[!1,"none"]]);ps("renderLineHighlight",[[!0,"line"],[!1,"none"]]);ps("acceptSuggestionOnEnter",[[!0,"on"],[!1,"off"]]);ps("tabCompletion",[[!1,"off"],[!0,"onlySnippets"]]);ps("hover",[[!0,{enabled:!0}],[!1,{enabled:!1}]]);ps("parameterHints",[[!0,{enabled:!0}],[!1,{enabled:!1}]]);ps("autoIndent",[[!1,"advanced"],[!0,"full"]]);ps("matchBrackets",[[!0,"always"],[!1,"never"]]);ps("renderFinalNewline",[[!0,"on"],[!1,"off"]]);ps("cursorSmoothCaretAnimation",[[!0,"on"],[!1,"off"]]);ps("occurrencesHighlight",[[!0,"singleFile"],[!1,"off"]]);ps("wordBasedSuggestions",[[!0,"matchingDocuments"],[!1,"off"]]);kr("autoClosingBrackets",(o,e,t)=>{o===!1&&(t("autoClosingBrackets","never"),typeof e("autoClosingQuotes")>"u"&&t("autoClosingQuotes","never"),typeof e("autoSurround")>"u"&&t("autoSurround","never"))});kr("renderIndentGuides",(o,e,t)=>{typeof o<"u"&&(t("renderIndentGuides",void 0),typeof e("guides.indentation")>"u"&&t("guides.indentation",!!o))});kr("highlightActiveIndentGuide",(o,e,t)=>{typeof o<"u"&&(t("highlightActiveIndentGuide",void 0),typeof e("guides.highlightActiveIndentation")>"u"&&t("guides.highlightActiveIndentation",!!o))});const Die={method:"showMethods",function:"showFunctions",constructor:"showConstructors",deprecated:"showDeprecated",field:"showFields",variable:"showVariables",class:"showClasses",struct:"showStructs",interface:"showInterfaces",module:"showModules",property:"showProperties",event:"showEvents",operator:"showOperators",unit:"showUnits",value:"showValues",constant:"showConstants",enum:"showEnums",enumMember:"showEnumMembers",keyword:"showKeywords",text:"showWords",color:"showColors",file:"showFiles",reference:"showReferences",folder:"showFolders",typeParameter:"showTypeParameters",snippet:"showSnippets"};kr("suggest.filteredTypes",(o,e,t)=>{if(o&&typeof o=="object"){for(const i of Object.entries(Die))o[i[0]]===!1&&typeof e(`suggest.${i[1]}`)>"u"&&t(`suggest.${i[1]}`,!1);t("suggest.filteredTypes",void 0)}});kr("quickSuggestions",(o,e,t)=>{if(typeof o=="boolean"){const i=o?"on":"off";t("quickSuggestions",{comments:i,strings:i,other:i})}});kr("experimental.stickyScroll.enabled",(o,e,t)=>{typeof o=="boolean"&&(t("experimental.stickyScroll.enabled",void 0),typeof e("stickyScroll.enabled")>"u"&&t("stickyScroll.enabled",o))});kr("experimental.stickyScroll.maxLineCount",(o,e,t)=>{typeof o=="number"&&(t("experimental.stickyScroll.maxLineCount",void 0),typeof e("stickyScroll.maxLineCount")>"u"&&t("stickyScroll.maxLineCount",o))});kr("codeActionsOnSave",(o,e,t)=>{if(o&&typeof o=="object"){let i=!1;const n={};for(const s of Object.entries(o))typeof s[1]=="boolean"?(i=!0,n[s[0]]=s[1]?"explicit":"never"):n[s[0]]=s[1];i&&t("codeActionsOnSave",n)}});kr("codeActionWidget.includeNearbyQuickfixes",(o,e,t)=>{typeof o=="boolean"&&(t("codeActionWidget.includeNearbyQuickfixes",void 0),typeof e("codeActionWidget.includeNearbyQuickFixes")>"u"&&t("codeActionWidget.includeNearbyQuickFixes",o))});kr("lightbulb.enabled",(o,e,t)=>{typeof o=="boolean"&&t("lightbulb.enabled",o?void 0:"off")});class Iie{constructor(){this._tabFocus=!1,this._onDidChangeTabFocus=new A,this.onDidChangeTabFocus=this._onDidChangeTabFocus.event}getTabFocusMode(){return this._tabFocus}setTabFocusMode(e){this._tabFocus=e,this._onDidChangeTabFocus.fire(this._tabFocus)}}const xv=new Iie;var Eie=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Nie=function(o,e){return function(t,i){e(t,i,o)}};let wI=class extends z{constructor(e,t,i,n,s){super(),this._accessibilityService=s,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._onDidChangeFast=this._register(new A),this.onDidChangeFast=this._onDidChangeFast.event,this._isDominatedByLongLines=!1,this._viewLineCount=1,this._lineNumbersDigitCount=1,this._reservedHeight=0,this._glyphMarginDecorationLaneCount=1,this._computeOptionsMemory=new q5,this.isSimpleWidget=e,this.contextMenuId=t,this._containerObserver=this._register(new g8(n,i.dimension)),this._targetWindowId=fe(n).vscodeWindowId,this._rawOptions=SO(i),this._validatedOptions=nc.validateOptions(this._rawOptions),this.options=this._computeOptions(),this.options.get(13)&&this._containerObserver.startObserving(),this._register(Xl.onDidChangeZoomLevel(()=>this._recomputeOptions())),this._register(xv.onDidChangeTabFocus(()=>this._recomputeOptions())),this._register(this._containerObserver.onDidChange(()=>this._recomputeOptions())),this._register(Gx.onDidChange(()=>this._recomputeOptions())),this._register(Zp.getInstance(fe(n)).onDidChange(()=>this._recomputeOptions())),this._register(this._accessibilityService.onDidChangeScreenReaderOptimized(()=>this._recomputeOptions()))}_recomputeOptions(){const e=this._computeOptions(),t=nc.checkEquals(this.options,e);t!==null&&(this.options=e,this._onDidChangeFast.fire(t),this._onDidChange.fire(t))}_computeOptions(){const e=this._readEnvConfiguration(),t=Yd.createFromValidatedSettings(this._validatedOptions,e.pixelRatio,this.isSimpleWidget),i=this._readFontInfo(t),n={memory:this._computeOptionsMemory,outerWidth:e.outerWidth,outerHeight:e.outerHeight-this._reservedHeight,fontInfo:i,extraEditorClassName:e.extraEditorClassName,isDominatedByLongLines:this._isDominatedByLongLines,viewLineCount:this._viewLineCount,lineNumbersDigitCount:this._lineNumbersDigitCount,emptySelectionClipboard:e.emptySelectionClipboard,pixelRatio:e.pixelRatio,tabFocusMode:xv.getTabFocusMode(),accessibilitySupport:e.accessibilitySupport,glyphMarginDecorationLaneCount:this._glyphMarginDecorationLaneCount};return nc.computeOptions(this._validatedOptions,n)}_readEnvConfiguration(){return{extraEditorClassName:Mie(),outerWidth:this._containerObserver.getWidth(),outerHeight:this._containerObserver.getHeight(),emptySelectionClipboard:I0||Mo,pixelRatio:Zp.getInstance(hR(this._targetWindowId,!0).window).value,accessibilitySupport:this._accessibilityService.isScreenReaderOptimized()?2:this._accessibilityService.getAccessibilitySupport()}}_readFontInfo(e){return Gx.readFontInfo(hR(this._targetWindowId,!0).window,e)}getRawOptions(){return this._rawOptions}updateOptions(e){const t=SO(e);nc.applyUpdate(this._rawOptions,t)&&(this._validatedOptions=nc.validateOptions(this._rawOptions),this._recomputeOptions())}observeContainer(e){this._containerObserver.observe(e)}setIsDominatedByLongLines(e){this._isDominatedByLongLines!==e&&(this._isDominatedByLongLines=e,this._recomputeOptions())}setModelLineCount(e){const t=Tie(e);this._lineNumbersDigitCount!==t&&(this._lineNumbersDigitCount=t,this._recomputeOptions())}setViewLineCount(e){this._viewLineCount!==e&&(this._viewLineCount=e,this._recomputeOptions())}setReservedHeight(e){this._reservedHeight!==e&&(this._reservedHeight=e,this._recomputeOptions())}setGlyphMarginDecorationLaneCount(e){this._glyphMarginDecorationLaneCount!==e&&(this._glyphMarginDecorationLaneCount=e,this._recomputeOptions())}};wI=Eie([Nie(4,ms)],wI);function Tie(o){let e=0;for(;o;)o=Math.floor(o/10),e++;return e||1}function Mie(){let o="";return!Ac&&!bF&&(o+="no-user-select "),Ac&&(o+="no-minimap-shadow ",o+="enable-user-select "),Ue&&(o+="mac "),o}class Rie{constructor(){this._values=[]}_read(e){return this._values[e]}get(e){return this._values[e]}_write(e,t){this._values[e]=t}}class Aie{constructor(){this._values=[]}_read(e){if(e>=this._values.length)throw new Error("Cannot read uninitialized value");return this._values[e]}get(e){return this._read(e)}_write(e,t){this._values[e]=t}}class nc{static validateOptions(e){const t=new Rie;for(const i of Zu){const n=i.name==="_never_"?void 0:e[i.name];t._write(i.id,i.validate(n))}return t}static computeOptions(e,t){const i=new Aie;for(const n of Zu)i._write(n.id,n.compute(t,i,e._read(n.id)));return i}static _deepEquals(e,t){if(typeof e!="object"||typeof t!="object"||!e||!t)return e===t;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)?li(e,t):!1;if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const i in e)if(!nc._deepEquals(e[i],t[i]))return!1;return!0}static checkEquals(e,t){const i=[];let n=!1;for(const s of Zu){const r=!nc._deepEquals(e._read(s.id),t._read(s.id));i[s.id]=r,r&&(n=!0)}return n?new j5(i):null}static applyUpdate(e,t){let i=!1;for(const n of Zu)if(t.hasOwnProperty(n.name)){const s=n.applyUpdate(e[n.name],t[n.name]);e[n.name]=s.newValue,i=i||s.didChange}return i}}function SO(o){const e=Ya(o);return kie(e),e}var lc;(function(o){const e={total:0,min:Number.MAX_VALUE,max:0},t={...e},i={...e},n={...e};let s=0;const r={keydown:0,input:0,render:0};function a(){b(),performance.mark("inputlatency/start"),performance.mark("keydown/start"),r.keydown=1,queueMicrotask(l)}o.onKeyDown=a;function l(){r.keydown===1&&(performance.mark("keydown/end"),r.keydown=2)}function c(){performance.mark("input/start"),r.input=1,_()}o.onBeforeInput=c;function d(){r.input===0&&c(),queueMicrotask(h)}o.onInput=d;function h(){r.input===1&&(performance.mark("input/end"),r.input=2)}function u(){b()}o.onKeyUp=u;function f(){b()}o.onSelectionChange=f;function g(){r.keydown===2&&r.input===2&&r.render===0&&(performance.mark("render/start"),r.render=1,queueMicrotask(p),_())}o.onRenderStart=g;function p(){r.render===1&&(performance.mark("render/end"),r.render=2)}function _(){setTimeout(b)}function b(){r.keydown===2&&r.input===2&&r.render===2&&(performance.mark("inputlatency/end"),performance.measure("keydown","keydown/start","keydown/end"),performance.measure("input","input/start","input/end"),performance.measure("render","render/start","render/end"),performance.measure("inputlatency","inputlatency/start","inputlatency/end"),C("keydown",e),C("input",t),C("render",i),C("inputlatency",n),s++,w())}function C(L,E){const N=performance.getEntriesByName(L)[0].duration;E.total+=N,E.min=Math.min(E.min,N),E.max=Math.max(E.max,N)}function w(){performance.clearMarks("keydown/start"),performance.clearMarks("keydown/end"),performance.clearMarks("input/start"),performance.clearMarks("input/end"),performance.clearMarks("render/start"),performance.clearMarks("render/end"),performance.clearMarks("inputlatency/start"),performance.clearMarks("inputlatency/end"),performance.clearMeasures("keydown"),performance.clearMeasures("input"),performance.clearMeasures("render"),performance.clearMeasures("inputlatency"),r.keydown=0,r.input=0,r.render=0}function v(){if(s===0)return;const L={keydown:y(e),input:y(t),render:y(i),total:y(n),sampleCount:s};return x(e),x(t),x(i),x(n),s=0,L}o.getAndClearMeasurements=v;function y(L){return{average:L.total/s,max:L.max,min:L.min}}function x(L){L.total=0,L.min=Number.MAX_VALUE,L.max=0}})(lc||(lc={}));class xy{constructor(e,t){this.x=e,this.y=t,this._pageCoordinatesBrand=void 0}toClientCoordinates(e){return new m8(this.x-e.scrollX,this.y-e.scrollY)}}class m8{constructor(e,t){this.clientX=e,this.clientY=t,this._clientCoordinatesBrand=void 0}toPageCoordinates(e){return new xy(this.clientX+e.scrollX,this.clientY+e.scrollY)}}class Pie{constructor(e,t,i,n){this.x=e,this.y=t,this.width=i,this.height=n,this._editorPagePositionBrand=void 0}}class Oie{constructor(e,t){this.x=e,this.y=t,this._positionRelativeToEditorBrand=void 0}}function F2(o){const e=gi(o);return new Pie(e.left,e.top,e.width,e.height)}function B2(o,e,t){const i=e.width/o.offsetWidth,n=e.height/o.offsetHeight,s=(t.x-e.x)/i,r=(t.y-e.y)/n;return new Oie(s,r)}class Wc extends ur{constructor(e,t,i){super(fe(i),e),this._editorMouseEventBrand=void 0,this.isFromPointerCapture=t,this.pos=new xy(this.posx,this.posy),this.editorPos=F2(i),this.relativePos=B2(i,this.editorPos,this.pos)}}class Fie{constructor(e){this._editorViewDomNode=e}_create(e){return new Wc(e,!1,this._editorViewDomNode)}onContextMenu(e,t){return U(e,"contextmenu",i=>{t(this._create(i))})}onMouseUp(e,t){return U(e,"mouseup",i=>{t(this._create(i))})}onMouseDown(e,t){return U(e,ee.MOUSE_DOWN,i=>{t(this._create(i))})}onPointerDown(e,t){return U(e,ee.POINTER_DOWN,i=>{t(this._create(i),i.pointerId)})}onMouseLeave(e,t){return U(e,ee.MOUSE_LEAVE,i=>{t(this._create(i))})}onMouseMove(e,t){return U(e,"mousemove",i=>t(this._create(i)))}}class Bie{constructor(e){this._editorViewDomNode=e}_create(e){return new Wc(e,!1,this._editorViewDomNode)}onPointerUp(e,t){return U(e,"pointerup",i=>{t(this._create(i))})}onPointerDown(e,t){return U(e,ee.POINTER_DOWN,i=>{t(this._create(i),i.pointerId)})}onPointerLeave(e,t){return U(e,ee.POINTER_LEAVE,i=>{t(this._create(i))})}onPointerMove(e,t){return U(e,"pointermove",i=>t(this._create(i)))}}class Wie extends z{constructor(e){super(),this._editorViewDomNode=e,this._globalPointerMoveMonitor=this._register(new Hg),this._keydownListener=null}startMonitoring(e,t,i,n,s){this._keydownListener=jt(e.ownerDocument,"keydown",r=>{r.toKeyCodeChord().isModifierKey()||this._globalPointerMoveMonitor.stopMonitoring(!0,r.browserEvent)},!0),this._globalPointerMoveMonitor.startMonitoring(e,t,i,r=>{n(new Wc(r,!0,this._editorViewDomNode))},r=>{this._keydownListener.dispose(),s(r)})}stopMonitoring(){this._globalPointerMoveMonitor.stopMonitoring(!0)}}const Yw=class Yw{constructor(e){this._editor=e,this._instanceId=++Yw._idPool,this._counter=0,this._rules=new Map,this._garbageCollectionScheduler=new ci(()=>this.garbageCollect(),1e3)}createClassNameRef(e){const t=this.getOrCreateRule(e);return t.increaseRefCount(),{className:t.className,dispose:()=>{t.decreaseRefCount(),this._garbageCollectionScheduler.schedule()}}}getOrCreateRule(e){const t=this.computeUniqueKey(e);let i=this._rules.get(t);if(!i){const n=this._counter++;i=new Hie(t,`dyn-rule-${this._instanceId}-${n}`,_C(this._editor.getContainerDomNode())?this._editor.getContainerDomNode():void 0,e),this._rules.set(t,i)}return i}computeUniqueKey(e){return JSON.stringify(e)}garbageCollect(){for(const e of this._rules.values())e.hasReferences()||(this._rules.delete(e.key),e.dispose())}};Yw._idPool=0;let kv=Yw;class Hie{constructor(e,t,i,n){this.key=e,this.className=t,this.properties=n,this._referenceCount=0,this._styleElementDisposables=new X,this._styleElement=Vs(i,void 0,this._styleElementDisposables),this._styleElement.textContent=this.getCssText(this.className,this.properties)}getCssText(e,t){let i=`.${e} {`;for(const n in t){const s=t[n];let r;typeof s=="object"?r=oe(s.id):r=s;const a=Vie(n);i+=` + ${a}: ${r};`}return i+=` +}`,i}dispose(){this._styleElementDisposables.dispose(),this._styleElement=void 0}increaseRefCount(){this._referenceCount++}decreaseRefCount(){this._referenceCount--}hasReferences(){return this._referenceCount>0}}function Vie(o){return o.replace(/(^[A-Z])/,([e])=>e.toLowerCase()).replace(/([A-Z])/g,([e])=>`-${e.toLowerCase()}`)}class ab extends z{constructor(){super(),this._shouldRender=!0}shouldRender(){return this._shouldRender}forceShouldRender(){this._shouldRender=!0}setShouldRender(){this._shouldRender=!0}onDidRender(){this._shouldRender=!1}onCompositionStart(e){return!1}onCompositionEnd(e){return!1}onConfigurationChanged(e){return!1}onCursorStateChanged(e){return!1}onDecorationsChanged(e){return!1}onFlushed(e){return!1}onFocusChanged(e){return!1}onLanguageConfigurationChanged(e){return!1}onLineMappingChanged(e){return!1}onLinesChanged(e){return!1}onLinesDeleted(e){return!1}onLinesInserted(e){return!1}onRevealRangeRequest(e){return!1}onScrollChanged(e){return!1}onThemeChanged(e){return!1}onTokensChanged(e){return!1}onTokensColorsChanged(e){return!1}onZonesChanged(e){return!1}handleEvents(e){let t=!1;for(let i=0,n=e.length;i=a.left?n.width=Math.max(n.width,a.left+a.width-n.left):(t[i++]=n,n=a)}return t[i++]=n,t}static _createHorizontalRangesFromClientRects(e,t,i){if(!e||e.length===0)return null;const n=[];for(let s=0,r=e.length;sl)return null;if(t=Math.min(l,Math.max(0,t)),n=Math.min(l,Math.max(0,n)),t===n&&i===s&&i===0&&!e.children[t].firstChild){const u=e.children[t].getClientRects();return r.markDidDomLayout(),this._createHorizontalRangesFromClientRects(u,r.clientRectDeltaLeft,r.clientRectScale)}t!==n&&n>0&&s===0&&(n--,s=1073741824);let c=e.children[t].firstChild,d=e.children[n].firstChild;if((!c||!d)&&(!c&&i===0&&t>0&&(c=e.children[t-1].firstChild,i=1073741824),!d&&s===0&&n>0&&(d=e.children[n-1].firstChild,s=1073741824)),!c||!d)return null;i=Math.min(c.textContent.length,Math.max(0,i)),s=Math.min(d.textContent.length,Math.max(0,s));const h=this._readClientRects(c,i,d,s,r.endNode);return r.markDidDomLayout(),this._createHorizontalRangesFromClientRects(h,r.clientRectDeltaLeft,r.clientRectScale)}}const jie=(function(){return oC?!0:!(Un||Mo||Ac)})();let Gf=!0;class xO{constructor(e,t){this.themeType=t;const i=e.options,n=i.get(50);i.get(38)==="off"?this.renderWhitespace=i.get(100):this.renderWhitespace="none",this.renderControlCharacters=i.get(95),this.spaceWidth=n.spaceWidth,this.middotWidth=n.middotWidth,this.wsmiddotWidth=n.wsmiddotWidth,this.useMonospaceOptimizations=n.isMonospace&&!i.get(33),this.canUseHalfwidthRightwardsArrow=n.canUseHalfwidthRightwardsArrow,this.lineHeight=i.get(67),this.stopRenderingLineAfter=i.get(118),this.fontLigatures=i.get(51)}equals(e){return this.themeType===e.themeType&&this.renderWhitespace===e.renderWhitespace&&this.renderControlCharacters===e.renderControlCharacters&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.wsmiddotWidth===e.wsmiddotWidth&&this.useMonospaceOptimizations===e.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineHeight===e.lineHeight&&this.stopRenderingLineAfter===e.stopRenderingLineAfter&&this.fontLigatures===e.fontLigatures}}const Qw=class Qw{constructor(e){this._options=e,this._isMaybeInvalid=!0,this._renderedViewLine=null}getDomNode(){return this._renderedViewLine&&this._renderedViewLine.domNode?this._renderedViewLine.domNode.domNode:null}setDomNode(e){if(this._renderedViewLine)this._renderedViewLine.domNode=ot(e);else throw new Error("I have no rendered view line to set the dom node to...")}onContentChanged(){this._isMaybeInvalid=!0}onTokensChanged(){this._isMaybeInvalid=!0}onDecorationsChanged(){this._isMaybeInvalid=!0}onOptionsChanged(e){this._isMaybeInvalid=!0,this._options=e}onSelectionChanged(){return mc(this._options.themeType)||this._options.renderWhitespace==="selection"?(this._isMaybeInvalid=!0,!0):!1}renderLine(e,t,i,n,s){if(this._isMaybeInvalid===!1)return!1;this._isMaybeInvalid=!1;const r=n.getViewLineRenderingData(e),a=this._options,l=As.filter(r.inlineDecorations,e,r.minColumn,r.maxColumn);let c=null;if(mc(a.themeType)||this._options.renderWhitespace==="selection"){const f=n.selections;for(const g of f){if(g.endLineNumbere)continue;const p=g.startLineNumber===e?g.startColumn:r.minColumn,_=g.endLineNumber===e?g.endColumn:r.maxColumn;p<_&&(mc(a.themeType)&&l.push(new As(p,_,"inline-selected-text",0)),this._options.renderWhitespace==="selection"&&(c||(c=[]),c.push(new l8(p-1,_-1))))}}const d=new gu(a.useMonospaceOptimizations,a.canUseHalfwidthRightwardsArrow,r.content,r.continuesWithWrappedLine,r.isBasicASCII,r.containsRTL,r.minColumn-1,r.tokens,l,r.tabSize,r.startVisibleColumn,a.spaceWidth,a.middotWidth,a.wsmiddotWidth,a.stopRenderingLineAfter,a.renderWhitespace,a.renderControlCharacters,a.fontLigatures!==Mc.OFF,c);if(this._renderedViewLine&&this._renderedViewLine.input.equals(d))return!1;s.appendString('
    ');const h=Sy(d,s);s.appendString("
    ");let u=null;return Gf&&jie&&r.isBasicASCII&&a.useMonospaceOptimizations&&h.containsForeignElements===0&&(u=new t1(this._renderedViewLine?this._renderedViewLine.domNode:null,d,h.characterMapping)),u||(u=_8(this._renderedViewLine?this._renderedViewLine.domNode:null,d,h.characterMapping,h.containsRTL,h.containsForeignElements)),this._renderedViewLine=u,!0}layoutLine(e,t,i){this._renderedViewLine&&this._renderedViewLine.domNode&&(this._renderedViewLine.domNode.setTop(t),this._renderedViewLine.domNode.setHeight(i))}getWidth(e){return this._renderedViewLine?this._renderedViewLine.getWidth(e):0}getWidthIsFast(){return this._renderedViewLine?this._renderedViewLine.getWidthIsFast():!0}needsMonospaceFontCheck(){return this._renderedViewLine?this._renderedViewLine instanceof t1:!1}monospaceAssumptionsAreValid(){return this._renderedViewLine&&this._renderedViewLine instanceof t1?this._renderedViewLine.monospaceAssumptionsAreValid():Gf}onMonospaceAssumptionsInvalidated(){this._renderedViewLine&&this._renderedViewLine instanceof t1&&(this._renderedViewLine=this._renderedViewLine.toSlowRenderedLine())}getVisibleRangesForRange(e,t,i,n){if(!this._renderedViewLine)return null;t=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,t)),i=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,i));const s=this._renderedViewLine.input.stopRenderingLineAfter;if(s!==-1&&t>s+1&&i>s+1)return new LO(!0,[new ih(this.getWidth(n),0)]);s!==-1&&t>s+1&&(t=s+1),s!==-1&&i>s+1&&(i=s+1);const r=this._renderedViewLine.getVisibleRangesForRange(e,t,i,n);return r&&r.length>0?new LO(!1,r):null}getColumnOfNodeOffset(e,t){return this._renderedViewLine?this._renderedViewLine.getColumnOfNodeOffset(e,t):1}};Qw.CLASS_NAME="view-line";let sl=Qw;class t1{constructor(e,t,i){this._cachedWidth=-1,this.domNode=e,this.input=t;const n=Math.floor(t.lineContent.length/300);if(n>0){this._keyColumnPixelOffsetCache=new Float32Array(n);for(let s=0;s=2&&(console.warn("monospace assumptions have been violated, therefore disabling monospace optimizations!"),Gf=!1)}return Gf}toSlowRenderedLine(){return _8(this.domNode,this.input,this._characterMapping,!1,0)}getVisibleRangesForRange(e,t,i,n){const s=this._getColumnPixelOffset(e,t,n),r=this._getColumnPixelOffset(e,i,n);return[new ih(s,r-s)]}_getColumnPixelOffset(e,t,i){if(t<=300){const c=this._characterMapping.getHorizontalOffset(t);return this._charWidth*c}const n=Math.floor((t-1)/300)-1,s=(n+1)*300+1;let r=-1;if(this._keyColumnPixelOffsetCache&&(r=this._keyColumnPixelOffsetCache[n],r===-1&&(r=this._actualReadPixelOffset(e,s,i),this._keyColumnPixelOffsetCache[n]=r)),r===-1){const c=this._characterMapping.getHorizontalOffset(t);return this._charWidth*c}const a=this._characterMapping.getHorizontalOffset(s),l=this._characterMapping.getHorizontalOffset(t);return r+this._charWidth*(l-a)}_getReadingTarget(e){return e.domNode.firstChild}_actualReadPixelOffset(e,t,i){if(!this.domNode)return-1;const n=this._characterMapping.getDomPosition(t),s=U1.readHorizontalRanges(this._getReadingTarget(this.domNode),n.partIndex,n.charIndex,n.partIndex,n.charIndex,i);return!s||s.length===0?-1:s[0].left}getColumnOfNodeOffset(e,t){return b8(this._characterMapping,e,t)}}class p8{constructor(e,t,i,n,s){if(this.domNode=e,this.input=t,this._characterMapping=i,this._isWhitespaceOnly=/^\s*$/.test(t.lineContent),this._containsForeignElements=s,this._cachedWidth=-1,this._pixelOffsetCache=null,!n||this._characterMapping.length===0){this._pixelOffsetCache=new Float32Array(Math.max(2,this._characterMapping.length+1));for(let r=0,a=this._characterMapping.length;r<=a;r++)this._pixelOffsetCache[r]=-1}}_getReadingTarget(e){return e.domNode.firstChild}getWidth(e){return this.domNode?(this._cachedWidth===-1&&(this._cachedWidth=this._getReadingTarget(this.domNode).offsetWidth,e?.markDidDomLayout()),this._cachedWidth):0}getWidthIsFast(){return this._cachedWidth!==-1}getVisibleRangesForRange(e,t,i,n){if(!this.domNode)return null;if(this._pixelOffsetCache!==null){const s=this._readPixelOffset(this.domNode,e,t,n);if(s===-1)return null;const r=this._readPixelOffset(this.domNode,e,i,n);return r===-1?null:[new ih(s,r-s)]}return this._readVisibleRangesForRange(this.domNode,e,t,i,n)}_readVisibleRangesForRange(e,t,i,n,s){if(i===n){const r=this._readPixelOffset(e,t,i,s);return r===-1?null:[new ih(r,0)]}else return this._readRawVisibleRangesForRange(e,i,n,s)}_readPixelOffset(e,t,i,n){if(this._characterMapping.length===0){if(this._containsForeignElements===0||this._containsForeignElements===2)return 0;if(this._containsForeignElements===1)return this.getWidth(n);const s=this._getReadingTarget(e);return s.firstChild?(n.markDidDomLayout(),s.firstChild.offsetWidth):0}if(this._pixelOffsetCache!==null){const s=this._pixelOffsetCache[i];if(s!==-1)return s;const r=this._actualReadPixelOffset(e,t,i,n);return this._pixelOffsetCache[i]=r,r}return this._actualReadPixelOffset(e,t,i,n)}_actualReadPixelOffset(e,t,i,n){if(this._characterMapping.length===0){const l=U1.readHorizontalRanges(this._getReadingTarget(e),0,0,0,0,n);return!l||l.length===0?-1:l[0].left}if(i===this._characterMapping.length&&this._isWhitespaceOnly&&this._containsForeignElements===0)return this.getWidth(n);const s=this._characterMapping.getDomPosition(i),r=U1.readHorizontalRanges(this._getReadingTarget(e),s.partIndex,s.charIndex,s.partIndex,s.charIndex,n);if(!r||r.length===0)return-1;const a=r[0].left;if(this.input.isBasicASCII){const l=this._characterMapping.getHorizontalOffset(i),c=Math.round(this.input.spaceWidth*l);if(Math.abs(c-a)<=1)return c}return a}_readRawVisibleRangesForRange(e,t,i,n){if(t===1&&i===this._characterMapping.length)return[new ih(0,this.getWidth(n))];const s=this._characterMapping.getDomPosition(t),r=this._characterMapping.getDomPosition(i);return U1.readHorizontalRanges(this._getReadingTarget(e),s.partIndex,s.charIndex,r.partIndex,r.charIndex,n)}getColumnOfNodeOffset(e,t){return b8(this._characterMapping,e,t)}}class qie extends p8{_readVisibleRangesForRange(e,t,i,n,s){const r=super._readVisibleRangesForRange(e,t,i,n,s);if(!r||r.length===0||i===n||i===1&&n===this._characterMapping.length)return r;if(!this.input.containsRTL){const a=this._readPixelOffset(e,t,n,s);if(a!==-1){const l=r[r.length-1];l.left=4&&e[0]===3&&e[3]===8}static isStrictChildOfViewLines(e){return e.length>4&&e[0]===3&&e[3]===8}static isChildOfScrollableElement(e){return e.length>=2&&e[0]===3&&e[1]===6}static isChildOfMinimap(e){return e.length>=2&&e[0]===3&&e[1]===9}static isChildOfContentWidgets(e){return e.length>=4&&e[0]===3&&e[3]===1}static isChildOfOverflowGuard(e){return e.length>=1&&e[0]===3}static isChildOfOverflowingContentWidgets(e){return e.length>=1&&e[0]===2}static isChildOfOverlayWidgets(e){return e.length>=2&&e[0]===3&&e[1]===4}static isChildOfOverflowingOverlayWidgets(e){return e.length>=1&&e[0]===5}}class kg{constructor(e,t,i){this.viewModel=e.viewModel;const n=e.configuration.options;this.layoutInfo=n.get(146),this.viewDomNode=t.viewDomNode,this.lineHeight=n.get(67),this.stickyTabStops=n.get(117),this.typicalHalfwidthCharacterWidth=n.get(50).typicalHalfwidthCharacterWidth,this.lastRenderData=i,this._context=e,this._viewHelper=t}getZoneAtCoord(e){return kg.getZoneAtCoord(this._context,e)}static getZoneAtCoord(e,t){const i=e.viewLayout.getWhitespaceAtVerticalOffset(t);if(i){const n=i.verticalOffset+i.height/2,s=e.viewModel.getLineCount();let r=null,a,l=null;return i.afterLineNumber!==s&&(l=new P(i.afterLineNumber+1,1)),i.afterLineNumber>0&&(r=new P(i.afterLineNumber,e.viewModel.getLineMaxColumn(i.afterLineNumber))),l===null?a=r:r===null?a=l:t=e.layoutInfo.glyphMarginLeft,this.isInContentArea=!this.isInMarginArea,this.mouseColumn=Math.max(0,rn._getMouseColumn(this.mouseContentHorizontalOffset,e.typicalHalfwidthCharacterWidth))}}class Xie extends Qie{get target(){return this._useHitTestTarget?this.hitTestResult.value.hitTarget:this._eventTarget}get targetPath(){return this._targetPathCacheElement!==this.target&&(this._targetPathCacheElement=this.target,this._targetPathCacheValue=vr.collect(this.target,this._ctx.viewDomNode)),this._targetPathCacheValue}constructor(e,t,i,n,s){super(e,t,i,n),this.hitTestResult=new ua(()=>rn.doHitTest(this._ctx,this)),this._targetPathCacheElement=null,this._targetPathCacheValue=new Uint8Array(0),this._ctx=e,this._eventTarget=s;const r=!!this._eventTarget;this._useHitTestTarget=!r}toString(){return`pos(${this.pos.x},${this.pos.y}), editorPos(${this.editorPos.x},${this.editorPos.y}), relativePos(${this.relativePos.x},${this.relativePos.y}), mouseVerticalOffset: ${this.mouseVerticalOffset}, mouseContentHorizontalOffset: ${this.mouseContentHorizontalOffset} + target: ${this.target?this.target.outerHTML:null}`}get wouldBenefitFromHitTestTargetSwitch(){return!this._useHitTestTarget&&this.hitTestResult.value.hitTarget!==null&&this.target!==this.hitTestResult.value.hitTarget}switchToHitTestTarget(){this._useHitTestTarget=!0}_getMouseColumn(e=null){return e&&e.columnr.contentLeft+r.width)continue;const a=e.getVerticalOffsetForLineNumber(r.position.lineNumber);if(a<=s&&s<=a+r.height)return t.fulfillContentText(r.position,null,{mightBeForeignElement:!1,injectedText:null})}}return null}static _hitTestViewZone(e,t){const i=e.getZoneAtCoord(t.mouseVerticalOffset);if(i){const n=t.isInContentArea?8:5;return t.fulfillViewZone(n,i.position,i)}return null}static _hitTestTextArea(e,t){return _n.isTextArea(t.targetPath)?e.lastRenderData.lastTextareaPosition?t.fulfillContentText(e.lastRenderData.lastTextareaPosition,null,{mightBeForeignElement:!1,injectedText:null}):t.fulfillTextarea():null}static _hitTestMargin(e,t){if(t.isInMarginArea){const i=e.getFullLineRangeAtCoord(t.mouseVerticalOffset),n=i.range.getStartPosition();let s=Math.abs(t.relativePos.x);const r={isAfterLines:i.isAfterLines,glyphMarginLeft:e.layoutInfo.glyphMarginLeft,glyphMarginWidth:e.layoutInfo.glyphMarginWidth,lineNumbersWidth:e.layoutInfo.lineNumbersWidth,offsetX:s};if(s-=e.layoutInfo.glyphMarginLeft,s<=e.layoutInfo.glyphMarginWidth){const a=e.viewModel.coordinatesConverter.convertViewPositionToModelPosition(i.range.getStartPosition()),l=e.viewModel.glyphLanes.getLanesAtLine(a.lineNumber);return r.glyphMarginLane=l[Math.floor(s/e.lineHeight)],t.fulfillMargin(2,n,i.range,r)}return s-=e.layoutInfo.glyphMarginWidth,s<=e.layoutInfo.lineNumbersWidth?t.fulfillMargin(3,n,i.range,r):(s-=e.layoutInfo.lineNumbersWidth,t.fulfillMargin(4,n,i.range,r))}return null}static _hitTestViewLines(e,t){if(!_n.isChildOfViewLines(t.targetPath))return null;if(e.isInTopPadding(t.mouseVerticalOffset))return t.fulfillContentEmpty(new P(1,1),kO);if(e.isAfterLines(t.mouseVerticalOffset)||e.isInBottomPadding(t.mouseVerticalOffset)){const n=e.viewModel.getLineCount(),s=e.viewModel.getLineMaxColumn(n);return t.fulfillContentEmpty(new P(n,s),kO)}if(_n.isStrictChildOfViewLines(t.targetPath)){const n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset);if(e.viewModel.getLineLength(n)===0){const r=e.getLineWidth(n),a=JS(t.mouseContentHorizontalOffset-r);return t.fulfillContentEmpty(new P(n,1),a)}const s=e.getLineWidth(n);if(t.mouseContentHorizontalOffset>=s){const r=JS(t.mouseContentHorizontalOffset-s),a=new P(n,e.viewModel.getLineMaxColumn(n));return t.fulfillContentEmpty(a,r)}}const i=t.hitTestResult.value;return i.type===1?rn.createMouseTargetFromHitTestPosition(e,t,i.spanNode,i.position,i.injectedText):t.wouldBenefitFromHitTestTargetSwitch?(t.switchToHitTestTarget(),this._createMouseTarget(e,t)):t.fulfillUnknown()}static _hitTestMinimap(e,t){if(_n.isChildOfMinimap(t.targetPath)){const i=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),n=e.viewModel.getLineMaxColumn(i);return t.fulfillScrollbar(new P(i,n))}return null}static _hitTestScrollbarSlider(e,t){if(_n.isChildOfScrollableElement(t.targetPath)&&t.target&&t.target.nodeType===1){const i=t.target.className;if(i&&/\b(slider|scrollbar)\b/.test(i)){const n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),s=e.viewModel.getLineMaxColumn(n);return t.fulfillScrollbar(new P(n,s))}}return null}static _hitTestScrollbar(e,t){if(_n.isChildOfScrollableElement(t.targetPath)){const i=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),n=e.viewModel.getLineMaxColumn(i);return t.fulfillScrollbar(new P(i,n))}return null}getMouseColumn(e){const t=this._context.configuration.options,i=t.get(146),n=this._context.viewLayout.getCurrentScrollLeft()+e.x-i.contentLeft;return rn._getMouseColumn(n,t.get(50).typicalHalfwidthCharacterWidth)}static _getMouseColumn(e,t){return e<0?1:Math.round(e/t)+1}static createMouseTargetFromHitTestPosition(e,t,i,n,s){const r=n.lineNumber,a=n.column,l=e.getLineWidth(r);if(t.mouseContentHorizontalOffset>l){const b=JS(t.mouseContentHorizontalOffset-l);return t.fulfillContentEmpty(n,b)}const c=e.visibleRangeForPosition(r,a);if(!c)return t.fulfillUnknown(n);const d=c.left;if(Math.abs(t.mouseContentHorizontalOffset-d)<1)return t.fulfillContentText(n,null,{mightBeForeignElement:!!s,injectedText:s});const h=[];if(h.push({offset:c.left,column:a}),a>1){const b=e.visibleRangeForPosition(r,a-1);b&&h.push({offset:b.left,column:a-1})}const u=e.viewModel.getLineMaxColumn(r);if(ab.offset-C.offset);const f=t.pos.toClientCoordinates(fe(e.viewDomNode)),g=i.getBoundingClientRect(),p=g.left<=f.clientX&&f.clientX<=g.right;let _=null;for(let b=1;bs)){const a=Math.floor((n+s)/2);let l=t.pos.y+(a-t.mouseVerticalOffset);l<=t.editorPos.y&&(l=t.editorPos.y+1),l>=t.editorPos.y+t.editorPos.height&&(l=t.editorPos.y+t.editorPos.height-1);const c=new xy(t.pos.x,l),d=this._actualDoHitTestWithCaretRangeFromPoint(e,c.toClientCoordinates(fe(e.viewDomNode)));if(d.type===1)return d}return this._actualDoHitTestWithCaretRangeFromPoint(e,t.pos.toClientCoordinates(fe(e.viewDomNode)))}static _actualDoHitTestWithCaretRangeFromPoint(e,t){const i=ag(e.viewDomNode);let n;if(i?typeof i.caretRangeFromPoint>"u"?n=Jie(i,t.clientX,t.clientY):n=i.caretRangeFromPoint(t.clientX,t.clientY):n=e.viewDomNode.ownerDocument.caretRangeFromPoint(t.clientX,t.clientY),!n||!n.startContainer)return new jl;const s=n.startContainer;if(s.nodeType===s.TEXT_NODE){const r=s.parentNode,a=r?r.parentNode:null,l=a?a.parentNode:null;return(l&&l.nodeType===l.ELEMENT_NODE?l.className:null)===sl.CLASS_NAME?Dd.createFromDOMInfo(e,r,n.startOffset):new jl(s.parentNode)}else if(s.nodeType===s.ELEMENT_NODE){const r=s.parentNode,a=r?r.parentNode:null;return(a&&a.nodeType===a.ELEMENT_NODE?a.className:null)===sl.CLASS_NAME?Dd.createFromDOMInfo(e,s,s.textContent.length):new jl(s)}return new jl}static _doHitTestWithCaretPositionFromPoint(e,t){const i=e.viewDomNode.ownerDocument.caretPositionFromPoint(t.clientX,t.clientY);if(i.offsetNode.nodeType===i.offsetNode.TEXT_NODE){const n=i.offsetNode.parentNode,s=n?n.parentNode:null,r=s?s.parentNode:null;return(r&&r.nodeType===r.ELEMENT_NODE?r.className:null)===sl.CLASS_NAME?Dd.createFromDOMInfo(e,i.offsetNode.parentNode,i.offset):new jl(i.offsetNode.parentNode)}if(i.offsetNode.nodeType===i.offsetNode.ELEMENT_NODE){const n=i.offsetNode.parentNode,s=n&&n.nodeType===n.ELEMENT_NODE?n.className:null,r=n?n.parentNode:null,a=r&&r.nodeType===r.ELEMENT_NODE?r.className:null;if(s===sl.CLASS_NAME){const l=i.offsetNode.childNodes[Math.min(i.offset,i.offsetNode.childNodes.length-1)];if(l)return Dd.createFromDOMInfo(e,l,0)}else if(a===sl.CLASS_NAME)return Dd.createFromDOMInfo(e,i.offsetNode,0)}return new jl(i.offsetNode)}static _snapToSoftTabBoundary(e,t){const i=t.getLineContent(e.lineNumber),{tabSize:n}=t.model.getOptions(),s=x_.atomicPosition(i,e.column-1,n,2);return s!==-1?new P(e.lineNumber,s+1):e}static doHitTest(e,t){let i=new jl;if(typeof e.viewDomNode.ownerDocument.caretRangeFromPoint=="function"?i=this._doHitTestWithCaretRangeFromPoint(e,t):e.viewDomNode.ownerDocument.caretPositionFromPoint&&(i=this._doHitTestWithCaretPositionFromPoint(e,t.pos.toClientCoordinates(fe(e.viewDomNode)))),i.type===1){const n=e.viewModel.getInjectedTextAt(i.position),s=e.viewModel.normalizePosition(i.position,2);(n||!s.equals(i.position))&&(i=new C8(s,i.spanNode,n))}return i}}function Jie(o,e,t){const i=document.createRange();let n=o.elementFromPoint(e,t);if(n!==null){for(;n&&n.firstChild&&n.firstChild.nodeType!==n.firstChild.TEXT_NODE&&n.lastChild&&n.lastChild.firstChild;)n=n.lastChild;const s=n.getBoundingClientRect(),r=fe(n),a=r.getComputedStyle(n,null).getPropertyValue("font-style"),l=r.getComputedStyle(n,null).getPropertyValue("font-variant"),c=r.getComputedStyle(n,null).getPropertyValue("font-weight"),d=r.getComputedStyle(n,null).getPropertyValue("font-size"),h=r.getComputedStyle(n,null).getPropertyValue("line-height"),u=r.getComputedStyle(n,null).getPropertyValue("font-family"),f=`${a} ${l} ${c} ${d}/${h} ${u}`,g=n.innerText;let p=s.left,_=0,b;if(e>s.left+s.width)_=g.length;else{const C=yI.getInstance();for(let w=0;wthis._createMouseTarget(r,a),r=>this._getMouseColumn(r))),this.lastMouseLeaveTime=-1,this._height=this._context.configuration.options.get(146).height;const n=new Fie(this.viewHelper.viewDomNode);this._register(n.onContextMenu(this.viewHelper.viewDomNode,r=>this._onContextMenu(r,!0))),this._register(n.onMouseMove(this.viewHelper.viewDomNode,r=>{this._onMouseMove(r),this._mouseLeaveMonitor||(this._mouseLeaveMonitor=U(this.viewHelper.viewDomNode.ownerDocument,"mousemove",a=>{this.viewHelper.viewDomNode.contains(a.target)||this._onMouseLeave(new Wc(a,!1,this.viewHelper.viewDomNode))}))})),this._register(n.onMouseUp(this.viewHelper.viewDomNode,r=>this._onMouseUp(r))),this._register(n.onMouseLeave(this.viewHelper.viewDomNode,r=>this._onMouseLeave(r)));let s=0;this._register(n.onPointerDown(this.viewHelper.viewDomNode,(r,a)=>{s=a})),this._register(U(this.viewHelper.viewDomNode,ee.POINTER_UP,r=>{this._mouseDownOperation.onPointerUp()})),this._register(n.onMouseDown(this.viewHelper.viewDomNode,r=>this._onMouseDown(r,s))),this._setupMouseWheelZoomListener(),this._context.addEventHandler(this)}_setupMouseWheelZoomListener(){const e=FC.INSTANCE;let t=0,i=Xl.getZoomLevel(),n=!1,s=0;const r=l=>{if(this.viewController.emitMouseWheel(l),!this._context.configuration.options.get(76))return;const c=new Rh(l);if(e.acceptStandardWheelEvent(c),e.isPhysicalMouseWheel()){if(a(l)){const d=Xl.getZoomLevel(),h=c.deltaY>0?1:-1;Xl.setZoomLevel(d+h),c.preventDefault(),c.stopPropagation()}}else Date.now()-t>50&&(i=Xl.getZoomLevel(),n=a(l),s=0),t=Date.now(),s+=c.deltaY,n&&(Xl.setZoomLevel(i+s/5),c.preventDefault(),c.stopPropagation())};this._register(U(this.viewHelper.viewDomNode,ee.MOUSE_WHEEL,r,{capture:!0,passive:!1}));function a(l){return Ue?(l.metaKey||l.ctrlKey)&&!l.shiftKey&&!l.altKey:l.ctrlKey&&!l.metaKey&&!l.shiftKey&&!l.altKey}}dispose(){this._context.removeEventHandler(this),this._mouseLeaveMonitor&&(this._mouseLeaveMonitor.dispose(),this._mouseLeaveMonitor=null),super.dispose()}onConfigurationChanged(e){if(e.hasChanged(146)){const t=this._context.configuration.options.get(146).height;this._height!==t&&(this._height=t,this._mouseDownOperation.onHeightChanged())}return!1}onCursorStateChanged(e){return this._mouseDownOperation.onCursorStateChanged(e),!1}onFocusChanged(e){return!1}getTargetAtClientPoint(e,t){const n=new m8(e,t).toPageCoordinates(fe(this.viewHelper.viewDomNode)),s=F2(this.viewHelper.viewDomNode);if(n.ys.y+s.height||n.xs.x+s.width)return null;const r=B2(this.viewHelper.viewDomNode,s,n);return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),s,n,r,null)}_createMouseTarget(e,t){let i=e.target;if(!this.viewHelper.viewDomNode.contains(i)){const n=ag(this.viewHelper.viewDomNode);n&&(i=n.elementsFromPoint(e.posx,e.posy).find(s=>this.viewHelper.viewDomNode.contains(s)))}return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),e.editorPos,e.pos,e.relativePos,t?i:null)}_getMouseColumn(e){return this.mouseTargetFactory.getMouseColumn(e.relativePos)}_onContextMenu(e,t){this.viewController.emitContextMenu({event:e,target:this._createMouseTarget(e,t)})}_onMouseMove(e){this.mouseTargetFactory.mouseTargetIsWidget(e)||e.preventDefault(),!(this._mouseDownOperation.isActive()||e.timestamp{e.preventDefault(),this.viewHelper.focusTextArea()};if(d&&(n||r&&a))h(),this._mouseDownOperation.start(i.type,e,t);else if(s)e.preventDefault();else if(l){const u=i.detail;d&&this.viewHelper.shouldSuppressMouseDownOnViewZone(u.viewZoneId)&&(h(),this._mouseDownOperation.start(i.type,e,t),e.preventDefault())}else c&&this.viewHelper.shouldSuppressMouseDownOnWidget(i.detail)&&(h(),e.preventDefault());this.viewController.emitMouseDown({event:e,target:i})}}class ene extends z{constructor(e,t,i,n,s,r){super(),this._context=e,this._viewController=t,this._viewHelper=i,this._mouseTargetFactory=n,this._createMouseTarget=s,this._getMouseColumn=r,this._mouseMoveMonitor=this._register(new Wie(this._viewHelper.viewDomNode)),this._topBottomDragScrolling=this._register(new tne(this._context,this._viewHelper,this._mouseTargetFactory,(a,l,c)=>this._dispatchMouse(a,l,c))),this._mouseState=new SI,this._currentSelection=new Fe(1,1,1,1),this._isActive=!1,this._lastMouseEvent=null}dispose(){super.dispose()}isActive(){return this._isActive}_onMouseDownThenMove(e){this._lastMouseEvent=e,this._mouseState.setModifiers(e);const t=this._findMousePosition(e,!1);t&&(this._mouseState.isDragAndDrop?this._viewController.emitMouseDrag({event:e,target:t}):t.type===13&&(t.outsidePosition==="above"||t.outsidePosition==="below")?this._topBottomDragScrolling.start(t,e):(this._topBottomDragScrolling.stop(),this._dispatchMouse(t,!0,1)))}start(e,t,i){this._lastMouseEvent=t,this._mouseState.setStartedOnLineNumbers(e===3),this._mouseState.setStartButtons(t),this._mouseState.setModifiers(t);const n=this._findMousePosition(t,!0);if(!n||!n.position)return;this._mouseState.trySetCount(t.detail,n.position),t.detail=this._mouseState.count;const s=this._context.configuration.options;if(!s.get(92)&&s.get(35)&&!s.get(22)&&!this._mouseState.altKey&&t.detail<2&&!this._isActive&&!this._currentSelection.isEmpty()&&n.type===6&&n.position&&this._currentSelection.containsPosition(n.position)){this._mouseState.isDragAndDrop=!0,this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,i,t.buttons,r=>this._onMouseDownThenMove(r),r=>{const a=this._findMousePosition(this._lastMouseEvent,!1);Qa(r)?this._viewController.emitMouseDropCanceled():this._viewController.emitMouseDrop({event:this._lastMouseEvent,target:a?this._createMouseTarget(this._lastMouseEvent,!0):null}),this._stop()});return}this._mouseState.isDragAndDrop=!1,this._dispatchMouse(n,t.shiftKey,1),this._isActive||(this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,i,t.buttons,r=>this._onMouseDownThenMove(r),()=>this._stop()))}_stop(){this._isActive=!1,this._topBottomDragScrolling.stop()}onHeightChanged(){this._mouseMoveMonitor.stopMonitoring()}onPointerUp(){this._mouseMoveMonitor.stopMonitoring()}onCursorStateChanged(e){this._currentSelection=e.selections[0]}_getPositionOutsideEditor(e){const t=e.editorPos,i=this._context.viewModel,n=this._context.viewLayout,s=this._getMouseColumn(e);if(e.posyt.y+t.height){const a=e.posy-t.y-t.height,l=n.getCurrentScrollTop()+e.relativePos.y,c=kg.getZoneAtCoord(this._context,l);if(c){const h=this._helpPositionJumpOverViewZone(c);if(h)return ln.createOutsideEditor(s,h,"below",a)}const d=n.getLineNumberAtVerticalOffset(l);return ln.createOutsideEditor(s,new P(d,i.getLineMaxColumn(d)),"below",a)}const r=n.getLineNumberAtVerticalOffset(n.getCurrentScrollTop()+e.relativePos.y);if(e.posxt.x+t.width){const a=e.posx-t.x-t.width;return ln.createOutsideEditor(s,new P(r,i.getLineMaxColumn(r)),"right",a)}return null}_findMousePosition(e,t){const i=this._getPositionOutsideEditor(e);if(i)return i;const n=this._createMouseTarget(e,t);if(!n.position)return null;if(n.type===8||n.type===5){const r=this._helpPositionJumpOverViewZone(n.detail);if(r)return ln.createViewZone(n.type,n.element,n.mouseColumn,r,n.detail)}return n}_helpPositionJumpOverViewZone(e){const t=new P(this._currentSelection.selectionStartLineNumber,this._currentSelection.selectionStartColumn),i=e.positionBefore,n=e.positionAfter;return i&&n?i.isBefore(t)?i:n:null}_dispatchMouse(e,t,i){e.position&&this._viewController.dispatchMouse({position:e.position,mouseColumn:e.mouseColumn,startedOnLineNumbers:this._mouseState.startedOnLineNumbers,revealType:i,inSelectionMode:t,mouseDownCount:this._mouseState.count,altKey:this._mouseState.altKey,ctrlKey:this._mouseState.ctrlKey,metaKey:this._mouseState.metaKey,shiftKey:this._mouseState.shiftKey,leftButton:this._mouseState.leftButton,middleButton:this._mouseState.middleButton,onInjectedText:e.type===6&&e.detail.injectedText!==null})}}class tne extends z{constructor(e,t,i,n){super(),this._context=e,this._viewHelper=t,this._mouseTargetFactory=i,this._dispatchMouse=n,this._operation=null}dispose(){super.dispose(),this.stop()}start(e,t){this._operation?this._operation.setPosition(e,t):this._operation=new ine(this._context,this._viewHelper,this._mouseTargetFactory,this._dispatchMouse,e,t)}stop(){this._operation&&(this._operation.dispose(),this._operation=null)}}class ine extends z{constructor(e,t,i,n,s,r){super(),this._context=e,this._viewHelper=t,this._mouseTargetFactory=i,this._dispatchMouse=n,this._position=s,this._mouseEvent=r,this._lastTime=Date.now(),this._animationFrameDisposable=fs(fe(r.browserEvent),()=>this._execute())}dispose(){this._animationFrameDisposable.dispose(),super.dispose()}setPosition(e,t){this._position=e,this._mouseEvent=t}_tick(){const e=Date.now(),t=e-this._lastTime;return this._lastTime=e,t}_getScrollSpeed(){const e=this._context.configuration.options.get(67),t=this._context.configuration.options.get(146).height/e,i=this._position.outsideDistance/e;return i<=1.5?Math.max(30,t*(1+i)):i<=3?Math.max(60,t*(2+i)):Math.max(200,t*(7+i))}_execute(){const e=this._context.configuration.options.get(67),t=this._getScrollSpeed(),i=this._tick(),n=t*(i/1e3)*e,s=this._position.outsidePosition==="above"?-n:n;this._context.viewModel.viewLayout.deltaScrollNow(0,s),this._viewHelper.renderNow();const r=this._context.viewLayout.getLinesViewportData(),a=this._position.outsidePosition==="above"?r.startLineNumber:r.endLineNumber;let l;{const c=F2(this._viewHelper.viewDomNode),d=this._context.configuration.options.get(146).horizontalScrollbarHeight,h=new xy(this._mouseEvent.pos.x,c.y+c.height-d-.1),u=B2(this._viewHelper.viewDomNode,c,h);l=this._mouseTargetFactory.createMouseTarget(this._viewHelper.getLastRenderData(),c,h,u,null)}(!l.position||l.position.lineNumber!==a)&&(this._position.outsidePosition==="above"?l=ln.createOutsideEditor(this._position.mouseColumn,new P(a,1),"above",this._position.outsideDistance):l=ln.createOutsideEditor(this._position.mouseColumn,new P(a,this._context.viewModel.getLineMaxColumn(a)),"below",this._position.outsideDistance)),this._dispatchMouse(l,!0,2),this._animationFrameDisposable=fs(fe(l.element),()=>this._execute())}}const Xw=class Xw{get altKey(){return this._altKey}get ctrlKey(){return this._ctrlKey}get metaKey(){return this._metaKey}get shiftKey(){return this._shiftKey}get leftButton(){return this._leftButton}get middleButton(){return this._middleButton}get startedOnLineNumbers(){return this._startedOnLineNumbers}constructor(){this._altKey=!1,this._ctrlKey=!1,this._metaKey=!1,this._shiftKey=!1,this._leftButton=!1,this._middleButton=!1,this._startedOnLineNumbers=!1,this._lastMouseDownPosition=null,this._lastMouseDownPositionEqualCount=0,this._lastMouseDownCount=0,this._lastSetMouseDownCountTime=0,this.isDragAndDrop=!1}get count(){return this._lastMouseDownCount}setModifiers(e){this._altKey=e.altKey,this._ctrlKey=e.ctrlKey,this._metaKey=e.metaKey,this._shiftKey=e.shiftKey}setStartButtons(e){this._leftButton=e.leftButton,this._middleButton=e.middleButton}setStartedOnLineNumbers(e){this._startedOnLineNumbers=e}trySetCount(e,t){const i=new Date().getTime();i-this._lastSetMouseDownCountTime>Xw.CLEAR_MOUSE_DOWN_COUNT_TIME&&(e=1),this._lastSetMouseDownCountTime=i,e>this._lastMouseDownCount+1&&(e=this._lastMouseDownCount+1),this._lastMouseDownPosition&&this._lastMouseDownPosition.equals(t)?this._lastMouseDownPositionEqualCount++:this._lastMouseDownPositionEqualCount=1,this._lastMouseDownPosition=t,this._lastMouseDownCount=Math.min(e,this._lastMouseDownPositionEqualCount)}};Xw.CLEAR_MOUSE_DOWN_COUNT_TIME=400;let SI=Xw;const kf=class kf{constructor(e,t,i,n,s){this.value=e,this.selectionStart=t,this.selectionEnd=i,this.selection=n,this.newlineCountBeforeSelection=s}toString(){return`[ <${this.value}>, selectionStart: ${this.selectionStart}, selectionEnd: ${this.selectionEnd}]`}static readFromTextArea(e,t){const i=e.getValue(),n=e.getSelectionStart(),s=e.getSelectionEnd();let r;if(t){const a=i.substring(0,n),l=t.value.substring(0,t.selectionStart);a===l&&(r=t.newlineCountBeforeSelection)}return new kf(i,n,s,null,r)}collapseSelection(){return this.selectionStart===this.value.length?this:new kf(this.value,this.value.length,this.value.length,null,void 0)}writeToTextArea(e,t,i){t.setValue(e,this.value),i&&t.setSelectionRange(e,this.selectionStart,this.selectionEnd)}deduceEditorPosition(e){if(e<=this.selectionStart){const n=this.value.substring(e,this.selectionStart);return this._finishDeduceEditorPosition(this.selection?.getStartPosition()??null,n,-1)}if(e>=this.selectionEnd){const n=this.value.substring(this.selectionEnd,e);return this._finishDeduceEditorPosition(this.selection?.getEndPosition()??null,n,1)}const t=this.value.substring(this.selectionStart,e);if(t.indexOf("…")===-1)return this._finishDeduceEditorPosition(this.selection?.getStartPosition()??null,t,1);const i=this.value.substring(e,this.selectionEnd);return this._finishDeduceEditorPosition(this.selection?.getEndPosition()??null,i,-1)}_finishDeduceEditorPosition(e,t,i){let n=0,s=-1;for(;(s=t.indexOf(` +`,s+1))!==-1;)n++;return[e,i*t.length,n]}static deduceInput(e,t,i){if(!e)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};const n=Math.min(Th(e.value,t.value),e.selectionStart,t.selectionStart),s=Math.min(Px(e.value,t.value),e.value.length-e.selectionEnd,t.value.length-t.selectionEnd);e.value.substring(n,e.value.length-s);const r=t.value.substring(n,t.value.length-s),a=e.selectionStart-n,l=e.selectionEnd-n,c=t.selectionStart-n,d=t.selectionEnd-n;if(c===d){const u=e.selectionStart-n;return{text:r,replacePrevCharCnt:u,replaceNextCharCnt:0,positionDelta:0}}const h=l-a;return{text:r,replacePrevCharCnt:h,replaceNextCharCnt:0,positionDelta:0}}static deduceAndroidCompositionInput(e,t){if(!e)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};if(e.value===t.value)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:t.selectionEnd-e.selectionEnd};const i=Math.min(Th(e.value,t.value),e.selectionEnd),n=Math.min(Px(e.value,t.value),e.value.length-e.selectionEnd),s=e.value.substring(i,e.value.length-n),r=t.value.substring(i,t.value.length-n);e.selectionStart-i;const a=e.selectionEnd-i;t.selectionStart-i;const l=t.selectionEnd-i;return{text:r,replacePrevCharCnt:a,replaceNextCharCnt:s.length-a,positionDelta:l-r.length}}};kf.EMPTY=new kf("",0,0,null,void 0);let cn=kf;class df{static _getPageOfLine(e,t){return Math.floor((e-1)/t)}static _getRangeForPage(e,t){const i=e*t,n=i+1,s=i+t;return new I(n,1,s+1,1)}static fromEditorSelection(e,t,i,n){const r=df._getPageOfLine(t.startLineNumber,i),a=df._getRangeForPage(r,i),l=df._getPageOfLine(t.endLineNumber,i),c=df._getRangeForPage(l,i);let d=a.intersectRanges(new I(1,1,t.startLineNumber,t.startColumn));if(n&&e.getValueLengthInRange(d,1)>500){const b=e.modifyPosition(d.getEndPosition(),-500);d=I.fromPositions(b,d.getEndPosition())}const h=e.getValueInRange(d,1),u=e.getLineCount(),f=e.getLineMaxColumn(u);let g=c.intersectRanges(new I(t.endLineNumber,t.endColumn,u,f));if(n&&e.getValueLengthInRange(g,1)>500){const b=e.modifyPosition(g.getStartPosition(),500);g=I.fromPositions(g.getStartPosition(),b)}const p=e.getValueInRange(g,1);let _;if(r===l||r+1===l)_=e.getValueInRange(t,1);else{const b=a.intersectRanges(t),C=c.intersectRanges(t);_=e.getValueInRange(b,1)+"…"+e.getValueInRange(C,1)}return n&&_.length>2*500&&(_=_.substring(0,500)+"…"+_.substring(_.length-500,_.length)),new cn(h+_+p,h.length,h.length+_.length,t,d.endLineNumber-d.startLineNumber)}}var nne=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},DO=function(o,e){return function(t,i){e(t,i,o)}},Dv;(function(o){o.Tap="-monaco-textarea-synthetic-tap"})(Dv||(Dv={}));const Jw=class Jw{constructor(){this._lastState=null}set(e,t){this._lastState={lastCopiedValue:e,data:t}}get(e){return this._lastState&&this._lastState.lastCopiedValue===e?this._lastState.data:(this._lastState=null,null)}};Jw.INSTANCE=new Jw;let Iv=Jw;class sne{constructor(){this._lastTypeTextLength=0}handleCompositionUpdate(e){e=e||"";const t={text:e,replacePrevCharCnt:this._lastTypeTextLength,replaceNextCharCnt:0,positionDelta:0};return this._lastTypeTextLength=e.length,t}}let LI=class extends z{get textAreaState(){return this._textAreaState}constructor(e,t,i,n,s,r){super(),this._host=e,this._textArea=t,this._OS=i,this._browser=n,this._accessibilityService=s,this._logService=r,this._onFocus=this._register(new A),this.onFocus=this._onFocus.event,this._onBlur=this._register(new A),this.onBlur=this._onBlur.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._onKeyUp=this._register(new A),this.onKeyUp=this._onKeyUp.event,this._onCut=this._register(new A),this.onCut=this._onCut.event,this._onPaste=this._register(new A),this.onPaste=this._onPaste.event,this._onType=this._register(new A),this.onType=this._onType.event,this._onCompositionStart=this._register(new A),this.onCompositionStart=this._onCompositionStart.event,this._onCompositionUpdate=this._register(new A),this.onCompositionUpdate=this._onCompositionUpdate.event,this._onCompositionEnd=this._register(new A),this.onCompositionEnd=this._onCompositionEnd.event,this._onSelectionChangeRequest=this._register(new A),this.onSelectionChangeRequest=this._onSelectionChangeRequest.event,this._asyncFocusGainWriteScreenReaderContent=this._register(new Dn),this._asyncTriggerCut=this._register(new ci(()=>this._onCut.fire(),0)),this._textAreaState=cn.EMPTY,this._selectionChangeListener=null,this._accessibilityService.isScreenReaderOptimized()&&this.writeNativeTextAreaContent("ctor"),this._register(J.runAndSubscribe(this._accessibilityService.onDidChangeScreenReaderOptimized,()=>{this._accessibilityService.isScreenReaderOptimized()&&!this._asyncFocusGainWriteScreenReaderContent.value?this._asyncFocusGainWriteScreenReaderContent.value=this._register(new ci(()=>this.writeNativeTextAreaContent("asyncFocusGain"),0)):this._asyncFocusGainWriteScreenReaderContent.clear()})),this._hasFocus=!1,this._currentComposition=null;let a=null;this._register(this._textArea.onKeyDown(l=>{const c=new Nt(l);(c.keyCode===114||this._currentComposition&&c.keyCode===1)&&c.stopPropagation(),c.equals(9)&&c.preventDefault(),a=c,this._onKeyDown.fire(c)})),this._register(this._textArea.onKeyUp(l=>{const c=new Nt(l);this._onKeyUp.fire(c)})),this._register(this._textArea.onCompositionStart(l=>{const c=new sne;if(this._currentComposition){this._currentComposition=c;return}if(this._currentComposition=c,this._OS===2&&a&&a.equals(114)&&this._textAreaState.selectionStart===this._textAreaState.selectionEnd&&this._textAreaState.selectionStart>0&&this._textAreaState.value.substr(this._textAreaState.selectionStart-1,1)===l.data&&(a.code==="ArrowRight"||a.code==="ArrowLeft")){c.handleCompositionUpdate("x"),this._onCompositionStart.fire({data:l.data});return}if(this._browser.isAndroid){this._onCompositionStart.fire({data:l.data});return}this._onCompositionStart.fire({data:l.data})})),this._register(this._textArea.onCompositionUpdate(l=>{const c=this._currentComposition;if(!c)return;if(this._browser.isAndroid){const h=cn.readFromTextArea(this._textArea,this._textAreaState),u=cn.deduceAndroidCompositionInput(this._textAreaState,h);this._textAreaState=h,this._onType.fire(u),this._onCompositionUpdate.fire(l);return}const d=c.handleCompositionUpdate(l.data);this._textAreaState=cn.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(d),this._onCompositionUpdate.fire(l)})),this._register(this._textArea.onCompositionEnd(l=>{const c=this._currentComposition;if(!c)return;if(this._currentComposition=null,this._browser.isAndroid){const h=cn.readFromTextArea(this._textArea,this._textAreaState),u=cn.deduceAndroidCompositionInput(this._textAreaState,h);this._textAreaState=h,this._onType.fire(u),this._onCompositionEnd.fire();return}const d=c.handleCompositionUpdate(l.data);this._textAreaState=cn.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(d),this._onCompositionEnd.fire()})),this._register(this._textArea.onInput(l=>{if(this._textArea.setIgnoreSelectionChangeTime("received input event"),this._currentComposition)return;const c=cn.readFromTextArea(this._textArea,this._textAreaState),d=cn.deduceInput(this._textAreaState,c,this._OS===2);d.replacePrevCharCnt===0&&d.text.length===1&&(wi(d.text.charCodeAt(0))||d.text.charCodeAt(0)===127)||(this._textAreaState=c,(d.text!==""||d.replacePrevCharCnt!==0||d.replaceNextCharCnt!==0||d.positionDelta!==0)&&this._onType.fire(d))})),this._register(this._textArea.onCut(l=>{this._textArea.setIgnoreSelectionChangeTime("received cut event"),this._ensureClipboardGetsEditorSelection(l),this._asyncTriggerCut.schedule()})),this._register(this._textArea.onCopy(l=>{this._ensureClipboardGetsEditorSelection(l)})),this._register(this._textArea.onPaste(l=>{if(this._textArea.setIgnoreSelectionChangeTime("received paste event"),l.preventDefault(),!l.clipboardData)return;let[c,d]=IO.getTextData(l.clipboardData);c&&(d=d||Iv.INSTANCE.get(c),this._onPaste.fire({text:c,metadata:d}))})),this._register(this._textArea.onFocus(()=>{const l=this._hasFocus;this._setHasFocus(!0),this._accessibilityService.isScreenReaderOptimized()&&this._browser.isSafari&&!l&&this._hasFocus&&(this._asyncFocusGainWriteScreenReaderContent.value||(this._asyncFocusGainWriteScreenReaderContent.value=new ci(()=>this.writeNativeTextAreaContent("asyncFocusGain"),0)),this._asyncFocusGainWriteScreenReaderContent.value.schedule())})),this._register(this._textArea.onBlur(()=>{this._currentComposition&&(this._currentComposition=null,this.writeNativeTextAreaContent("blurWithoutCompositionEnd"),this._onCompositionEnd.fire()),this._setHasFocus(!1)})),this._register(this._textArea.onSyntheticTap(()=>{this._browser.isAndroid&&this._currentComposition&&(this._currentComposition=null,this.writeNativeTextAreaContent("tapWithoutCompositionEnd"),this._onCompositionEnd.fire())}))}_installSelectionChangeListener(){let e=0;return U(this._textArea.ownerDocument,"selectionchange",t=>{if(lc.onSelectionChange(),!this._hasFocus||this._currentComposition||!this._browser.isChrome)return;const i=Date.now(),n=i-e;if(e=i,n<5)return;const s=i-this._textArea.getIgnoreSelectionChangeTime();if(this._textArea.resetSelectionChangeTime(),s<100||!this._textAreaState.selection)return;const r=this._textArea.getValue();if(this._textAreaState.value!==r)return;const a=this._textArea.getSelectionStart(),l=this._textArea.getSelectionEnd();if(this._textAreaState.selectionStart===a&&this._textAreaState.selectionEnd===l)return;const c=this._textAreaState.deduceEditorPosition(a),d=this._host.deduceModelPosition(c[0],c[1],c[2]),h=this._textAreaState.deduceEditorPosition(l),u=this._host.deduceModelPosition(h[0],h[1],h[2]),f=new Fe(d.lineNumber,d.column,u.lineNumber,u.column);this._onSelectionChangeRequest.fire(f)})}dispose(){super.dispose(),this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null)}focusTextArea(){this._setHasFocus(!0),this.refreshFocusState()}isFocused(){return this._hasFocus}refreshFocusState(){this._setHasFocus(this._textArea.hasFocus())}_setHasFocus(e){this._hasFocus!==e&&(this._hasFocus=e,this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null),this._hasFocus&&(this._selectionChangeListener=this._installSelectionChangeListener()),this._hasFocus&&this.writeNativeTextAreaContent("focusgain"),this._hasFocus?this._onFocus.fire():this._onBlur.fire())}_setAndWriteTextAreaState(e,t){this._hasFocus||(t=t.collapseSelection()),t.writeToTextArea(e,this._textArea,this._hasFocus),this._textAreaState=t}writeNativeTextAreaContent(e){!this._accessibilityService.isScreenReaderOptimized()&&e==="render"||this._currentComposition||(this._logService.trace(`writeTextAreaState(reason: ${e})`),this._setAndWriteTextAreaState(e,this._host.getScreenReaderContent()))}_ensureClipboardGetsEditorSelection(e){const t=this._host.getDataToCopy(),i={version:1,isFromEmptySelection:t.isFromEmptySelection,multicursorText:t.multicursorText,mode:t.mode};Iv.INSTANCE.set(this._browser.isFirefox?t.text.replace(/\r\n/g,` +`):t.text,i),e.preventDefault(),e.clipboardData&&IO.setTextData(e.clipboardData,t.text,t.html,i)}};LI=nne([DO(4,ms),DO(5,gs)],LI);const IO={getTextData(o){const e=o.getData(il.text);let t=null;const i=o.getData("vscode-editor-data");if(typeof i=="string")try{t=JSON.parse(i),t.version!==1&&(t=null)}catch{}return e.length===0&&t===null&&o.files.length>0?[Array.prototype.slice.call(o.files,0).map(s=>s.name).join(` +`),null]:[e,t]},setTextData(o,e,t,i){o.setData(il.text,e),typeof t=="string"&&o.setData("text/html",t),o.setData("vscode-editor-data",JSON.stringify(i))}};class one extends z{get ownerDocument(){return this._actual.ownerDocument}constructor(e){super(),this._actual=e,this.onKeyDown=this._register(new ze(this._actual,"keydown")).event,this.onKeyUp=this._register(new ze(this._actual,"keyup")).event,this.onCompositionStart=this._register(new ze(this._actual,"compositionstart")).event,this.onCompositionUpdate=this._register(new ze(this._actual,"compositionupdate")).event,this.onCompositionEnd=this._register(new ze(this._actual,"compositionend")).event,this.onBeforeInput=this._register(new ze(this._actual,"beforeinput")).event,this.onInput=this._register(new ze(this._actual,"input")).event,this.onCut=this._register(new ze(this._actual,"cut")).event,this.onCopy=this._register(new ze(this._actual,"copy")).event,this.onPaste=this._register(new ze(this._actual,"paste")).event,this.onFocus=this._register(new ze(this._actual,"focus")).event,this.onBlur=this._register(new ze(this._actual,"blur")).event,this._onSyntheticTap=this._register(new A),this.onSyntheticTap=this._onSyntheticTap.event,this._ignoreSelectionChangeTime=0,this._register(this.onKeyDown(()=>lc.onKeyDown())),this._register(this.onBeforeInput(()=>lc.onBeforeInput())),this._register(this.onInput(()=>lc.onInput())),this._register(this.onKeyUp(()=>lc.onKeyUp())),this._register(U(this._actual,Dv.Tap,()=>this._onSyntheticTap.fire()))}hasFocus(){const e=ag(this._actual);return e?e.activeElement===this._actual:this._actual.isConnected?Xi()===this._actual:!1}setIgnoreSelectionChangeTime(e){this._ignoreSelectionChangeTime=Date.now()}getIgnoreSelectionChangeTime(){return this._ignoreSelectionChangeTime}resetSelectionChangeTime(){this._ignoreSelectionChangeTime=0}getValue(){return this._actual.value}setValue(e,t){const i=this._actual;i.value!==t&&(this.setIgnoreSelectionChangeTime("setValue"),i.value=t)}getSelectionStart(){return this._actual.selectionDirection==="backward"?this._actual.selectionEnd:this._actual.selectionStart}getSelectionEnd(){return this._actual.selectionDirection==="backward"?this._actual.selectionStart:this._actual.selectionEnd}setSelectionRange(e,t,i){const n=this._actual;let s=null;const r=ag(n);r?s=r.activeElement:s=Xi();const a=fe(s),l=s===n,c=n.selectionStart,d=n.selectionEnd;if(l&&c===t&&d===i){Mo&&a.parent!==a&&n.focus();return}if(l){this.setIgnoreSelectionChangeTime("setSelectionRange"),n.setSelectionRange(t,i),Mo&&a.parent!==a&&n.focus();return}try{const h=IV(n);this.setIgnoreSelectionChangeTime("setSelectionRange"),n.focus(),n.setSelectionRange(t,i),EV(n,h)}catch{}}}class rne extends W2{constructor(e,t,i){super(e,t,i),this._register(fn.addTarget(this.viewHelper.linesContentDomNode)),this._register(U(this.viewHelper.linesContentDomNode,St.Tap,s=>this.onTap(s))),this._register(U(this.viewHelper.linesContentDomNode,St.Change,s=>this.onChange(s))),this._register(U(this.viewHelper.linesContentDomNode,St.Contextmenu,s=>this._onContextMenu(new Wc(s,!1,this.viewHelper.viewDomNode),!1))),this._lastPointerType="mouse",this._register(U(this.viewHelper.linesContentDomNode,"pointerdown",s=>{const r=s.pointerType;if(r==="mouse"){this._lastPointerType="mouse";return}else r==="touch"?this._lastPointerType="touch":this._lastPointerType="pen"}));const n=new Bie(this.viewHelper.viewDomNode);this._register(n.onPointerMove(this.viewHelper.viewDomNode,s=>this._onMouseMove(s))),this._register(n.onPointerUp(this.viewHelper.viewDomNode,s=>this._onMouseUp(s))),this._register(n.onPointerLeave(this.viewHelper.viewDomNode,s=>this._onMouseLeave(s))),this._register(n.onPointerDown(this.viewHelper.viewDomNode,(s,r)=>this._onMouseDown(s,r)))}onTap(e){!e.initialTarget||!this.viewHelper.linesContentDomNode.contains(e.initialTarget)||(e.preventDefault(),this.viewHelper.focusTextArea(),this._dispatchGesture(e,!1))}onChange(e){this._lastPointerType==="touch"&&this._context.viewModel.viewLayout.deltaScrollNow(-e.translationX,-e.translationY),this._lastPointerType==="pen"&&this._dispatchGesture(e,!0)}_dispatchGesture(e,t){const i=this._createMouseTarget(new Wc(e,!1,this.viewHelper.viewDomNode),!1);i.position&&this.viewController.dispatchMouse({position:i.position,mouseColumn:i.position.column,startedOnLineNumbers:!1,revealType:1,mouseDownCount:e.tapCount,inSelectionMode:t,altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1,leftButton:!1,middleButton:!1,onInjectedText:i.type===6&&i.detail.injectedText!==null})}_onMouseDown(e,t){e.browserEvent.pointerType!=="touch"&&super._onMouseDown(e,t)}}class ane extends W2{constructor(e,t,i){super(e,t,i),this._register(fn.addTarget(this.viewHelper.linesContentDomNode)),this._register(U(this.viewHelper.linesContentDomNode,St.Tap,n=>this.onTap(n))),this._register(U(this.viewHelper.linesContentDomNode,St.Change,n=>this.onChange(n))),this._register(U(this.viewHelper.linesContentDomNode,St.Contextmenu,n=>this._onContextMenu(new Wc(n,!1,this.viewHelper.viewDomNode),!1)))}onTap(e){e.preventDefault(),this.viewHelper.focusTextArea();const t=this._createMouseTarget(new Wc(e,!1,this.viewHelper.viewDomNode),!1);if(t.position){const i=document.createEvent("CustomEvent");i.initEvent(Dv.Tap,!1,!0),this.viewHelper.dispatchTextAreaEvent(i),this.viewController.moveTo(t.position,1)}}onChange(e){this._context.viewModel.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)}}class lne extends z{constructor(e,t,i){super(),(Tc||S6&&V5)&&KN.pointerEvents?this.handler=this._register(new rne(e,t,i)):_t.TouchEvent?this.handler=this._register(new ane(e,t,i)):this.handler=this._register(new W2(e,t,i))}getTargetAtClientPoint(e,t){return this.handler.getTargetAtClientPoint(e,t)}}class mu extends ab{}const e0=class e0 extends mu{constructor(e){super(),this._context=e,this._readConfig(),this._lastCursorModelPosition=new P(1,1),this._renderResult=null,this._activeLineNumber=1,this._context.addEventHandler(this)}_readConfig(){const e=this._context.configuration.options;this._lineHeight=e.get(67);const t=e.get(68);this._renderLineNumbers=t.renderType,this._renderCustomLineNumbers=t.renderFn,this._renderFinalNewline=e.get(96);const i=e.get(146);this._lineNumbersLeft=i.lineNumbersLeft,this._lineNumbersWidth=i.lineNumbersWidth}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){return this._readConfig(),!0}onCursorStateChanged(e){const t=e.selections[0].getPosition();this._lastCursorModelPosition=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(t);let i=!1;return this._activeLineNumber!==t.lineNumber&&(this._activeLineNumber=t.lineNumber,i=!0),(this._renderLineNumbers===2||this._renderLineNumbers===3)&&(i=!0),i}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}onDecorationsChanged(e){return e.affectsLineNumber}_getLineRenderLineNumber(e){const t=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new P(e,1));if(t.column!==1)return"";const i=t.lineNumber;if(this._renderCustomLineNumbers)return this._renderCustomLineNumbers(i);if(this._renderLineNumbers===2){const n=Math.abs(this._lastCursorModelPosition.lineNumber-i);return n===0?''+i+"":String(n)}if(this._renderLineNumbers===3){if(this._lastCursorModelPosition.lineNumber===i||i%10===0)return String(i);const n=this._context.viewModel.getLineCount();return i===n?String(i):""}return String(i)}prepareRender(e){if(this._renderLineNumbers===0){this._renderResult=null;return}const t=Un?this._lineHeight%2===0?" lh-even":" lh-odd":"",i=e.visibleRange.startLineNumber,n=e.visibleRange.endLineNumber,s=this._context.viewModel.getDecorationsInViewport(e.visibleRange).filter(c=>!!c.options.lineNumberClassName);s.sort((c,d)=>I.compareRangesUsingEnds(c.range,d.range));let r=0;const a=this._context.viewModel.getLineCount(),l=[];for(let c=i;c<=n;c++){const d=c-i;let h=this._getLineRenderLineNumber(c),u="";for(;r${h}`}this._renderResult=l}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}};e0.CLASS_NAME="line-numbers";let Ev=e0;Sr((o,e)=>{const t=o.getColor(qY),i=o.getColor(aQ);i?e.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${i}; }`):t&&e.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${t.transparent(.4)}; }`)});const Df=class Df extends _s{constructor(e){super(e);const t=this._context.configuration.options,i=t.get(146);this._canUseLayerHinting=!t.get(32),this._contentLeft=i.contentLeft,this._glyphMarginLeft=i.glyphMarginLeft,this._glyphMarginWidth=i.glyphMarginWidth,this._domNode=ot(document.createElement("div")),this._domNode.setClassName(Df.OUTER_CLASS_NAME),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._glyphMarginBackgroundDomNode=ot(document.createElement("div")),this._glyphMarginBackgroundDomNode.setClassName(Df.CLASS_NAME),this._domNode.appendChild(this._glyphMarginBackgroundDomNode)}dispose(){super.dispose()}getDomNode(){return this._domNode}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(146);return this._canUseLayerHinting=!t.get(32),this._contentLeft=i.contentLeft,this._glyphMarginLeft=i.glyphMarginLeft,this._glyphMarginWidth=i.glyphMarginWidth,!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollTopChanged}prepareRender(e){}render(e){this._domNode.setLayerHinting(this._canUseLayerHinting),this._domNode.setContain("strict");const t=e.scrollTop-e.bigNumbersDelta;this._domNode.setTop(-t);const i=Math.min(e.scrollHeight,1e6);this._domNode.setHeight(i),this._domNode.setWidth(this._contentLeft),this._glyphMarginBackgroundDomNode.setLeft(this._glyphMarginLeft),this._glyphMarginBackgroundDomNode.setWidth(this._glyphMarginWidth),this._glyphMarginBackgroundDomNode.setHeight(i)}};Df.CLASS_NAME="glyph-margin",Df.OUTER_CLASS_NAME="margin";let Nv=Df;const Zf="monaco-mouse-cursor-text";var cne=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},EO=function(o,e){return function(t,i){e(t,i,o)}};class dne{constructor(e,t,i,n,s){this._context=e,this.modelLineNumber=t,this.distanceToModelLineStart=i,this.widthOfHiddenLineTextBefore=n,this.distanceToModelLineEnd=s,this._visibleTextAreaBrand=void 0,this.startPosition=null,this.endPosition=null,this.visibleTextareaStart=null,this.visibleTextareaEnd=null,this._previousPresentation=null}prepareRender(e){const t=new P(this.modelLineNumber,this.distanceToModelLineStart+1),i=new P(this.modelLineNumber,this._context.viewModel.model.getLineMaxColumn(this.modelLineNumber)-this.distanceToModelLineEnd);this.startPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(t),this.endPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(i),this.startPosition.lineNumber===this.endPosition.lineNumber?(this.visibleTextareaStart=e.visibleRangeForPosition(this.startPosition),this.visibleTextareaEnd=e.visibleRangeForPosition(this.endPosition)):(this.visibleTextareaStart=null,this.visibleTextareaEnd=null)}definePresentation(e){return this._previousPresentation||(e?this._previousPresentation=e:this._previousPresentation={foreground:1,italic:!1,bold:!1,underline:!1,strikethrough:!1}),this._previousPresentation}}const eL=Mo;let xI=class extends _s{constructor(e,t,i,n,s){super(e),this._keybindingService=n,this._instantiationService=s,this._primaryCursorPosition=new P(1,1),this._primaryCursorVisibleRange=null,this._viewController=t,this._visibleRangeProvider=i,this._scrollLeft=0,this._scrollTop=0;const r=this._context.configuration.options,a=r.get(146);this._setAccessibilityOptions(r),this._contentLeft=a.contentLeft,this._contentWidth=a.contentWidth,this._contentHeight=a.height,this._fontInfo=r.get(50),this._lineHeight=r.get(67),this._emptySelectionClipboard=r.get(37),this._copyWithSyntaxHighlighting=r.get(25),this._visibleTextArea=null,this._selections=[new Fe(1,1,1,1)],this._modelSelections=[new Fe(1,1,1,1)],this._lastRenderPosition=null,this.textArea=ot(document.createElement("textarea")),vr.write(this.textArea,7),this.textArea.setClassName(`inputarea ${Zf}`),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");const{tabSize:l}=this._context.viewModel.model.getOptions();this.textArea.domNode.style.tabSize=`${l*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("autocorrect","off"),this.textArea.setAttribute("autocapitalize","off"),this.textArea.setAttribute("autocomplete","off"),this.textArea.setAttribute("spellcheck","false"),this.textArea.setAttribute("aria-label",this._getAriaLabel(r)),this.textArea.setAttribute("aria-required",r.get(5)?"true":"false"),this.textArea.setAttribute("tabindex",String(r.get(125))),this.textArea.setAttribute("role","textbox"),this.textArea.setAttribute("aria-roledescription",m("editor","editor")),this.textArea.setAttribute("aria-multiline","true"),this.textArea.setAttribute("aria-autocomplete",r.get(92)?"none":"both"),this._ensureReadOnlyAttribute(),this.textAreaCover=ot(document.createElement("div")),this.textAreaCover.setPosition("absolute");const c={getLineCount:()=>this._context.viewModel.getLineCount(),getLineMaxColumn:u=>this._context.viewModel.getLineMaxColumn(u),getValueInRange:(u,f)=>this._context.viewModel.getValueInRange(u,f),getValueLengthInRange:(u,f)=>this._context.viewModel.getValueLengthInRange(u,f),modifyPosition:(u,f)=>this._context.viewModel.modifyPosition(u,f)},d={getDataToCopy:()=>{const u=this._context.viewModel.getPlainTextToCopy(this._modelSelections,this._emptySelectionClipboard,kn),f=this._context.viewModel.model.getEOL(),g=this._emptySelectionClipboard&&this._modelSelections.length===1&&this._modelSelections[0].isEmpty(),p=Array.isArray(u)?u:null,_=Array.isArray(u)?u.join(f):u;let b,C=null;if(this._copyWithSyntaxHighlighting&&_.length<65536){const w=this._context.viewModel.getRichTextToCopy(this._modelSelections,this._emptySelectionClipboard);w&&(b=w.html,C=w.mode)}return{isFromEmptySelection:g,multicursorText:p,text:_,html:b,mode:C}},getScreenReaderContent:()=>{if(this._accessibilitySupport===1){const u=this._selections[0];if(Ue&&u.isEmpty()){const g=u.getStartPosition();let p=this._getWordBeforePosition(g);if(p.length===0&&(p=this._getCharacterBeforePosition(g)),p.length>0)return new cn(p,p.length,p.length,I.fromPositions(g),0)}if(Ue&&!u.isEmpty()&&c.getValueLengthInRange(u,0)<500){const g=c.getValueInRange(u,0);return new cn(g,0,g.length,u,0)}if(Ac&&!u.isEmpty()){const g="vscode-placeholder";return new cn(g,0,g.length,null,void 0)}return cn.EMPTY}if(eR){const u=this._selections[0];if(u.isEmpty()){const f=u.getStartPosition(),[g,p]=this._getAndroidWordAtPosition(f);if(g.length>0)return new cn(g,p,p,I.fromPositions(f),0)}return cn.EMPTY}return df.fromEditorSelection(c,this._selections[0],this._accessibilityPageSize,this._accessibilitySupport===0)},deduceModelPosition:(u,f,g)=>this._context.viewModel.deduceModelPositionRelativeToViewPosition(u,f,g)},h=this._register(new one(this.textArea.domNode));this._textAreaInput=this._register(this._instantiationService.createInstance(LI,d,h,Ns,{isAndroid:eR,isChrome:V_,isFirefox:Mo,isSafari:Ac})),this._register(this._textAreaInput.onKeyDown(u=>{this._viewController.emitKeyDown(u)})),this._register(this._textAreaInput.onKeyUp(u=>{this._viewController.emitKeyUp(u)})),this._register(this._textAreaInput.onPaste(u=>{let f=!1,g=null,p=null;u.metadata&&(f=this._emptySelectionClipboard&&!!u.metadata.isFromEmptySelection,g=typeof u.metadata.multicursorText<"u"?u.metadata.multicursorText:null,p=u.metadata.mode),this._viewController.paste(u.text,f,g,p)})),this._register(this._textAreaInput.onCut(()=>{this._viewController.cut()})),this._register(this._textAreaInput.onType(u=>{u.replacePrevCharCnt||u.replaceNextCharCnt||u.positionDelta?this._viewController.compositionType(u.text,u.replacePrevCharCnt,u.replaceNextCharCnt,u.positionDelta):this._viewController.type(u.text)})),this._register(this._textAreaInput.onSelectionChangeRequest(u=>{this._viewController.setSelection(u)})),this._register(this._textAreaInput.onCompositionStart(u=>{const f=this.textArea.domNode,g=this._modelSelections[0],{distanceToModelLineStart:p,widthOfHiddenTextBefore:_}=(()=>{const C=f.value.substring(0,Math.min(f.selectionStart,f.selectionEnd)),w=C.lastIndexOf(` +`),v=C.substring(w+1),y=v.lastIndexOf(" "),x=v.length-y-1,L=g.getStartPosition(),E=Math.min(L.column-1,x),N=L.column-1-E,H=v.substring(0,v.length-E),{tabSize:F}=this._context.viewModel.model.getOptions(),W=hne(this.textArea.domNode.ownerDocument,H,this._fontInfo,F);return{distanceToModelLineStart:N,widthOfHiddenTextBefore:W}})(),{distanceToModelLineEnd:b}=(()=>{const C=f.value.substring(Math.max(f.selectionStart,f.selectionEnd)),w=C.indexOf(` +`),v=w===-1?C:C.substring(0,w),y=v.indexOf(" "),x=y===-1?v.length:v.length-y-1,L=g.getEndPosition(),E=Math.min(this._context.viewModel.model.getLineMaxColumn(L.lineNumber)-L.column,x);return{distanceToModelLineEnd:this._context.viewModel.model.getLineMaxColumn(L.lineNumber)-L.column-E}})();this._context.viewModel.revealRange("keyboard",!0,I.fromPositions(this._selections[0].getStartPosition()),0,1),this._visibleTextArea=new dne(this._context,g.startLineNumber,p,_,b),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render(),this.textArea.setClassName(`inputarea ${Zf} ime-input`),this._viewController.compositionStart(),this._context.viewModel.onCompositionStart()})),this._register(this._textAreaInput.onCompositionUpdate(u=>{this._visibleTextArea&&(this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render())})),this._register(this._textAreaInput.onCompositionEnd(()=>{this._visibleTextArea=null,this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._render(),this.textArea.setClassName(`inputarea ${Zf}`),this._viewController.compositionEnd(),this._context.viewModel.onCompositionEnd()})),this._register(this._textAreaInput.onFocus(()=>{this._context.viewModel.setHasFocus(!0)})),this._register(this._textAreaInput.onBlur(()=>{this._context.viewModel.setHasFocus(!1)})),this._register(Qm.onDidChange(()=>{this._ensureReadOnlyAttribute()}))}writeScreenReaderContent(e){this._textAreaInput.writeNativeTextAreaContent(e)}dispose(){super.dispose()}_getAndroidWordAtPosition(e){const t='`~!@#$%^&*()-=+[{]}\\|;:",.<>/?',i=this._context.viewModel.getLineContent(e.lineNumber),n=cg(t,[]);let s=!0,r=e.column,a=!0,l=e.column,c=0;for(;c<50&&(s||a);){if(s&&r<=1&&(s=!1),s){const d=i.charCodeAt(r-2);n.get(d)!==0?s=!1:r--}if(a&&l>i.length&&(a=!1),a){const d=i.charCodeAt(l-1);n.get(d)!==0?a=!1:l++}c++}return[i.substring(r-1,l-1),e.column-r]}_getWordBeforePosition(e){const t=this._context.viewModel.getLineContent(e.lineNumber),i=cg(this._context.configuration.options.get(132),[]);let n=e.column,s=0;for(;n>1;){const r=t.charCodeAt(n-2);if(i.get(r)!==0||s>50)return t.substring(n-1,e.column-1);s++,n--}return t.substring(0,e.column-1)}_getCharacterBeforePosition(e){if(e.column>1){const i=this._context.viewModel.getLineContent(e.lineNumber).charAt(e.column-2);if(!wi(i.charCodeAt(0)))return i}return""}_getAriaLabel(e){if(e.get(2)===1){const i=this._keybindingService.lookupKeybinding("editor.action.toggleScreenReaderAccessibilityMode")?.getAriaLabel(),n=this._keybindingService.lookupKeybinding("workbench.action.showCommands")?.getAriaLabel(),s=this._keybindingService.lookupKeybinding("workbench.action.openGlobalKeybindings")?.getAriaLabel(),r=m("accessibilityModeOff","The editor is not accessible at this time.");return i?m("accessibilityOffAriaLabel","{0} To enable screen reader optimized mode, use {1}",r,i):n?m("accessibilityOffAriaLabelNoKb","{0} To enable screen reader optimized mode, open the quick pick with {1} and run the command Toggle Screen Reader Accessibility Mode, which is currently not triggerable via keyboard.",r,n):s?m("accessibilityOffAriaLabelNoKbs","{0} Please assign a keybinding for the command Toggle Screen Reader Accessibility Mode by accessing the keybindings editor with {1} and run it.",r,s):r}return e.get(4)}_setAccessibilityOptions(e){this._accessibilitySupport=e.get(2);const t=e.get(3);this._accessibilitySupport===2&&t===Xh.accessibilityPageSize.defaultValue?this._accessibilityPageSize=500:this._accessibilityPageSize=t;const n=e.get(146).wrappingColumn;if(n!==-1&&this._accessibilitySupport!==1){const s=e.get(50);this._textAreaWrapping=!0,this._textAreaWidth=Math.round(n*s.typicalHalfwidthCharacterWidth)}else this._textAreaWrapping=!1,this._textAreaWidth=eL?0:1}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(146);this._setAccessibilityOptions(t),this._contentLeft=i.contentLeft,this._contentWidth=i.contentWidth,this._contentHeight=i.height,this._fontInfo=t.get(50),this._lineHeight=t.get(67),this._emptySelectionClipboard=t.get(37),this._copyWithSyntaxHighlighting=t.get(25),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");const{tabSize:n}=this._context.viewModel.model.getOptions();return this.textArea.domNode.style.tabSize=`${n*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("aria-label",this._getAriaLabel(t)),this.textArea.setAttribute("aria-required",t.get(5)?"true":"false"),this.textArea.setAttribute("tabindex",String(t.get(125))),(e.hasChanged(34)||e.hasChanged(92))&&this._ensureReadOnlyAttribute(),e.hasChanged(2)&&this._textAreaInput.writeNativeTextAreaContent("strategy changed"),!0}onCursorStateChanged(e){return this._selections=e.selections.slice(0),this._modelSelections=e.modelSelections.slice(0),this._textAreaInput.writeNativeTextAreaContent("selection changed"),!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return this._scrollLeft=e.scrollLeft,this._scrollTop=e.scrollTop,!0}onZonesChanged(e){return!0}isFocused(){return this._textAreaInput.isFocused()}focusTextArea(){this._textAreaInput.focusTextArea()}getLastRenderData(){return this._lastRenderPosition}setAriaOptions(e){e.activeDescendant?(this.textArea.setAttribute("aria-haspopup","true"),this.textArea.setAttribute("aria-autocomplete","list"),this.textArea.setAttribute("aria-activedescendant",e.activeDescendant)):(this.textArea.setAttribute("aria-haspopup","false"),this.textArea.setAttribute("aria-autocomplete","both"),this.textArea.removeAttribute("aria-activedescendant")),e.role&&this.textArea.setAttribute("role",e.role)}_ensureReadOnlyAttribute(){const e=this._context.configuration.options;!Qm.enabled||e.get(34)&&e.get(92)?this.textArea.setAttribute("readonly","true"):this.textArea.removeAttribute("readonly")}prepareRender(e){this._primaryCursorPosition=new P(this._selections[0].positionLineNumber,this._selections[0].positionColumn),this._primaryCursorVisibleRange=e.visibleRangeForPosition(this._primaryCursorPosition),this._visibleTextArea?.prepareRender(e)}render(e){this._textAreaInput.writeNativeTextAreaContent("render"),this._render()}_render(){if(this._visibleTextArea){const i=this._visibleTextArea.visibleTextareaStart,n=this._visibleTextArea.visibleTextareaEnd,s=this._visibleTextArea.startPosition,r=this._visibleTextArea.endPosition;if(s&&r&&i&&n&&n.left>=this._scrollLeft&&i.left<=this._scrollLeft+this._contentWidth){const a=this._context.viewLayout.getVerticalOffsetForLineNumber(this._primaryCursorPosition.lineNumber)-this._scrollTop,l=this._newlinecount(this.textArea.domNode.value.substr(0,this.textArea.domNode.selectionStart));let c=this._visibleTextArea.widthOfHiddenLineTextBefore,d=this._contentLeft+i.left-this._scrollLeft,h=n.left-i.left+1;if(dthis._contentWidth&&(h=this._contentWidth);const u=this._context.viewModel.getViewLineData(s.lineNumber),f=u.tokens.findTokenIndexAtOffset(s.column-1),g=u.tokens.findTokenIndexAtOffset(r.column-1),p=f===g,_=this._visibleTextArea.definePresentation(p?u.tokens.getPresentation(f):null);this.textArea.domNode.scrollTop=l*this._lineHeight,this.textArea.domNode.scrollLeft=c,this._doRender({lastRenderPosition:null,top:a,left:d,width:h,height:this._lineHeight,useCover:!1,color:(si.getColorMap()||[])[_.foreground],italic:_.italic,bold:_.bold,underline:_.underline,strikethrough:_.strikethrough})}return}if(!this._primaryCursorVisibleRange){this._renderAtTopLeft();return}const e=this._contentLeft+this._primaryCursorVisibleRange.left-this._scrollLeft;if(ethis._contentLeft+this._contentWidth){this._renderAtTopLeft();return}const t=this._context.viewLayout.getVerticalOffsetForLineNumber(this._selections[0].positionLineNumber)-this._scrollTop;if(t<0||t>this._contentHeight){this._renderAtTopLeft();return}if(Ue||this._accessibilitySupport===2){this._doRender({lastRenderPosition:this._primaryCursorPosition,top:t,left:this._textAreaWrapping?this._contentLeft:e,width:this._textAreaWidth,height:this._lineHeight,useCover:!1}),this.textArea.domNode.scrollLeft=this._primaryCursorVisibleRange.left;const i=this._textAreaInput.textAreaState.newlineCountBeforeSelection??this._newlinecount(this.textArea.domNode.value.substr(0,this.textArea.domNode.selectionStart));this.textArea.domNode.scrollTop=i*this._lineHeight;return}this._doRender({lastRenderPosition:this._primaryCursorPosition,top:t,left:this._textAreaWrapping?this._contentLeft:e,width:this._textAreaWidth,height:eL?0:1,useCover:!1})}_newlinecount(e){let t=0,i=-1;do{if(i=e.indexOf(` +`,i+1),i===-1)break;t++}while(!0);return t}_renderAtTopLeft(){this._doRender({lastRenderPosition:null,top:0,left:0,width:this._textAreaWidth,height:eL?0:1,useCover:!0})}_doRender(e){this._lastRenderPosition=e.lastRenderPosition;const t=this.textArea,i=this.textAreaCover;qi(t,this._fontInfo),t.setTop(e.top),t.setLeft(e.left),t.setWidth(e.width),t.setHeight(e.height),t.setColor(e.color?q.Format.CSS.formatHex(e.color):""),t.setFontStyle(e.italic?"italic":""),e.bold&&t.setFontWeight("bold"),t.setTextDecoration(`${e.underline?" underline":""}${e.strikethrough?" line-through":""}`),i.setTop(e.useCover?e.top:0),i.setLeft(e.useCover?e.left:0),i.setWidth(e.useCover?e.width:0),i.setHeight(e.useCover?e.height:0);const n=this._context.configuration.options;n.get(57)?i.setClassName("monaco-editor-background textAreaCover "+Nv.OUTER_CLASS_NAME):n.get(68).renderType!==0?i.setClassName("monaco-editor-background textAreaCover "+Ev.CLASS_NAME):i.setClassName("monaco-editor-background textAreaCover")}};xI=cne([EO(3,vt),EO(4,ke)],xI);function hne(o,e,t,i){if(e.length===0)return 0;const n=o.createElement("div");n.style.position="absolute",n.style.top="-50000px",n.style.width="50000px";const s=o.createElement("span");qi(s,t),s.style.whiteSpace="pre",s.style.tabSize=`${i*t.spaceWidth}px`,s.append(e),n.appendChild(s),o.body.appendChild(n);const r=s.offsetWidth;return n.remove(),r}const une=()=>!0,fne=()=>!1,gne=o=>o===" "||o===" ";class Au{static shouldRecreate(e){return e.hasChanged(146)||e.hasChanged(132)||e.hasChanged(37)||e.hasChanged(77)||e.hasChanged(79)||e.hasChanged(80)||e.hasChanged(6)||e.hasChanged(7)||e.hasChanged(11)||e.hasChanged(9)||e.hasChanged(10)||e.hasChanged(14)||e.hasChanged(129)||e.hasChanged(50)||e.hasChanged(92)||e.hasChanged(131)}constructor(e,t,i,n){this.languageConfigurationService=n,this._cursorMoveConfigurationBrand=void 0,this._languageId=e;const s=i.options,r=s.get(146),a=s.get(50);this.readOnly=s.get(92),this.tabSize=t.tabSize,this.indentSize=t.indentSize,this.insertSpaces=t.insertSpaces,this.stickyTabStops=s.get(117),this.lineHeight=a.lineHeight,this.typicalHalfwidthCharacterWidth=a.typicalHalfwidthCharacterWidth,this.pageSize=Math.max(1,Math.floor(r.height/this.lineHeight)-2),this.useTabStops=s.get(129),this.wordSeparators=s.get(132),this.emptySelectionClipboard=s.get(37),this.copyWithSyntaxHighlighting=s.get(25),this.multiCursorMergeOverlapping=s.get(77),this.multiCursorPaste=s.get(79),this.multiCursorLimit=s.get(80),this.autoClosingBrackets=s.get(6),this.autoClosingComments=s.get(7),this.autoClosingQuotes=s.get(11),this.autoClosingDelete=s.get(9),this.autoClosingOvertype=s.get(10),this.autoSurround=s.get(14),this.autoIndent=s.get(12),this.wordSegmenterLocales=s.get(131),this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:this._getShouldAutoClose(e,this.autoClosingQuotes,!0),comment:this._getShouldAutoClose(e,this.autoClosingComments,!1),bracket:this._getShouldAutoClose(e,this.autoClosingBrackets,!1)},this.autoClosingPairs=this.languageConfigurationService.getLanguageConfiguration(e).getAutoClosingPairs();const l=this.languageConfigurationService.getLanguageConfiguration(e).getSurroundingPairs();if(l)for(const d of l)this.surroundingPairs[d.open]=d.close;const c=this.languageConfigurationService.getLanguageConfiguration(e).comments;this.blockCommentStartToken=c?.blockCommentStartToken??null}get electricChars(){if(!this._electricChars){this._electricChars={};const e=this.languageConfigurationService.getLanguageConfiguration(this._languageId).electricCharacter?.getElectricCharacters();if(e)for(const t of e)this._electricChars[t]=!0}return this._electricChars}onElectricCharacter(e,t,i){const n=zd(t,i-1),s=this.languageConfigurationService.getLanguageConfiguration(n.languageId).electricCharacter;return s?s.onElectricCharacter(e,n,i-n.firstCharOffset):null}normalizeIndentation(e){return Q7(e,this.indentSize,this.insertSpaces)}_getShouldAutoClose(e,t,i){switch(t){case"beforeWhitespace":return gne;case"languageDefined":return this._getLanguageDefinedShouldAutoClose(e,i);case"always":return une;case"never":return fne}}_getLanguageDefinedShouldAutoClose(e,t){const i=this.languageConfigurationService.getLanguageConfiguration(e).getAutoCloseBeforeSet(t);return n=>i.indexOf(n)!==-1}visibleColumnFromColumn(e,t){return _i.visibleColumnFromColumn(e.getLineContent(t.lineNumber),t.column,this.tabSize)}columnFromVisibleColumn(e,t,i){const n=_i.columnFromVisibleColumn(e.getLineContent(t),i,this.tabSize),s=e.getLineMinColumn(t);if(nr?r:n}}class Ke{static fromModelState(e){return new mne(e)}static fromViewState(e){return new pne(e)}static fromModelSelection(e){const t=Fe.liftSelection(e),i=new Ri(I.fromPositions(t.getSelectionStart()),0,0,t.getPosition(),0);return Ke.fromModelState(i)}static fromModelSelections(e){const t=[];for(let i=0,n=e.length;is,c=n>r,d=nr||bn||_0&&n--,Id.columnSelect(e,t,i.fromViewLineNumber,i.fromViewVisualColumn,i.toViewLineNumber,n)}static columnSelectRight(e,t,i){let n=0;const s=Math.min(i.fromViewLineNumber,i.toViewLineNumber),r=Math.max(i.fromViewLineNumber,i.toViewLineNumber);for(let l=s;l<=r;l++){const c=t.getLineMaxColumn(l),d=e.visibleColumnFromColumn(t,new P(l,c));n=Math.max(n,d)}let a=i.toViewVisualColumn;return ae.getLineMinColumn(t.lineNumber))return t.delta(void 0,-fF(e.getLineContent(t.lineNumber),t.column-1));if(t.lineNumber>1){const i=t.lineNumber-1;return new P(i,e.getLineMaxColumn(i))}else return t}static leftPositionAtomicSoftTabs(e,t,i){if(t.column<=e.getLineIndentColumn(t.lineNumber)){const n=e.getLineMinColumn(t.lineNumber),s=e.getLineContent(t.lineNumber),r=x_.atomicPosition(s,t.column-1,i,0);if(r!==-1&&r+1>=n)return new P(t.lineNumber,r+1)}return this.leftPosition(e,t)}static left(e,t,i){const n=e.stickyTabStops?dt.leftPositionAtomicSoftTabs(t,i,e.tabSize):dt.leftPosition(t,i);return new tL(n.lineNumber,n.column,0)}static moveLeft(e,t,i,n,s){let r,a;if(i.hasSelection()&&!n)r=i.selection.startLineNumber,a=i.selection.startColumn;else{const l=i.position.delta(void 0,-(s-1)),c=t.normalizePosition(dt.clipPositionColumn(l,t),0),d=dt.left(e,t,c);r=d.lineNumber,a=d.column}return i.move(n,r,a,0)}static clipPositionColumn(e,t){return new P(e.lineNumber,dt.clipRange(e.column,t.getLineMinColumn(e.lineNumber),t.getLineMaxColumn(e.lineNumber)))}static clipRange(e,t,i){return ei?i:e}static rightPosition(e,t,i){return id?(i=d,a?n=t.getLineMaxColumn(i):n=Math.min(t.getLineMaxColumn(i),n)):n=e.columnFromVisibleColumn(t,i,c),f?s=0:s=c-_i.visibleColumnFromColumn(t.getLineContent(i),n,e.tabSize),l!==void 0){const g=new P(i,n),p=t.normalizePosition(g,l);s=s+(n-p.column),i=p.lineNumber,n=p.column}return new tL(i,n,s)}static down(e,t,i,n,s,r,a){return this.vertical(e,t,i,n,s,i+r,a,4)}static moveDown(e,t,i,n,s){let r,a;i.hasSelection()&&!n?(r=i.selection.endLineNumber,a=i.selection.endColumn):(r=i.position.lineNumber,a=i.position.column);let l=0,c;do if(c=dt.down(e,t,r+l,a,i.leftoverVisibleColumns,s,!0),t.normalizePosition(new P(c.lineNumber,c.column),2).lineNumber>r)break;while(l++<10&&r+l1&&this._isBlankLine(t,s);)s--;for(;s>1&&!this._isBlankLine(t,s);)s--;return i.move(n,s,t.getLineMinColumn(s),0)}static moveToNextBlankLine(e,t,i,n){const s=t.getLineCount();let r=i.position.lineNumber;for(;r=u.length+1)return!1;const f=u.charAt(h.column-2),g=n.get(f);if(!g)return!1;if(Hc(f)){if(i==="never")return!1}else if(t==="never")return!1;const p=u.charAt(h.column-1);let _=!1;for(const b of g)b.open===f&&b.close===p&&(_=!0);if(!_)return!1;if(e==="auto"){let b=!1;for(let C=0,w=a.length;C1){const s=t.getLineContent(n.lineNumber),r=zn(s),a=r===-1?s.length+1:r+1;if(n.column<=a){const l=i.visibleColumnFromColumn(t,n),c=_i.prevIndentTabStop(l,i.indentSize),d=i.columnFromVisibleColumn(t,n.lineNumber,c);return new I(n.lineNumber,d,n.lineNumber,n.column)}}return I.fromPositions(Kh.getPositionAfterDeleteLeft(n,t),n)}static getPositionAfterDeleteLeft(e,t){if(e.column>1){const i=_H(e.column-1,t.getLineContent(e.lineNumber));return e.with(void 0,i+1)}else if(e.lineNumber>1){const i=e.lineNumber-1;return new P(i,t.getLineMaxColumn(i))}else return e}static cut(e,t,i){const n=[];let s=null;i.sort((r,a)=>P.compare(r.getStartPosition(),a.getEndPosition()));for(let r=0,a=i.length;r1&&s?.endLineNumber!==c.lineNumber?(d=c.lineNumber-1,h=t.getLineMaxColumn(c.lineNumber-1),u=c.lineNumber,f=t.getLineMaxColumn(c.lineNumber)):(d=c.lineNumber,h=1,u=c.lineNumber,f=t.getLineMaxColumn(c.lineNumber));const g=new I(d,h,u,f);s=g,g.isEmpty()?n[r]=null:n[r]=new os(g,"")}else n[r]=null;else n[r]=new os(l,"")}return new jn(0,n,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}class ii{static _createWord(e,t,i,n,s){return{start:n,end:s,wordType:t,nextCharClass:i}}static _createIntlWord(e,t){return{start:e.index,end:e.index+e.segment.length,wordType:1,nextCharClass:t}}static _findPreviousWordOnLine(e,t,i){const n=t.getLineContent(i.lineNumber);return this._doFindPreviousWordOnLine(n,e,i)}static _doFindPreviousWordOnLine(e,t,i){let n=0;const s=t.findPrevIntlWordBeforeOrAtOffset(e,i.column-2);for(let r=i.column-2;r>=0;r--){const a=e.charCodeAt(r),l=t.get(a);if(s&&r===s.index)return this._createIntlWord(s,l);if(l===0){if(n===2)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1));n=1}else if(l===2){if(n===1)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1));n=2}else if(l===1&&n!==0)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1))}return n!==0?this._createWord(e,n,1,0,this._findEndOfWord(e,t,n,0)):null}static _findEndOfWord(e,t,i,n){const s=t.findNextIntlWordAtOrAfterOffset(e,n),r=e.length;for(let a=n;a=0;r--){const a=e.charCodeAt(r),l=t.get(a);if(s&&r===s.index)return r;if(l===1||i===1&&l===2||i===2&&l===0)return r+1}return 0}static moveWordLeft(e,t,i,n,s){let r=i.lineNumber,a=i.column;a===1&&r>1&&(r=r-1,a=t.getLineMaxColumn(r));let l=ii._findPreviousWordOnLine(e,t,new P(r,a));if(n===0)return new P(r,l?l.start+1:1);if(n===1)return!s&&l&&l.wordType===2&&l.end-l.start===1&&l.nextCharClass===0&&(l=ii._findPreviousWordOnLine(e,t,new P(r,l.start+1))),new P(r,l?l.start+1:1);if(n===3){for(;l&&l.wordType===2;)l=ii._findPreviousWordOnLine(e,t,new P(r,l.start+1));return new P(r,l?l.start+1:1)}return l&&a<=l.end+1&&(l=ii._findPreviousWordOnLine(e,t,new P(r,l.start+1))),new P(r,l?l.end+1:1)}static _moveWordPartLeft(e,t){const i=t.lineNumber,n=e.getLineMaxColumn(i);if(t.column===1)return i>1?new P(i-1,e.getLineMaxColumn(i-1)):t;const s=e.getLineContent(i);for(let r=t.column-1;r>1;r--){const a=s.charCodeAt(r-2),l=s.charCodeAt(r-1);if(a===95&&l!==95)return new P(i,r);if(a===45&&l!==45)return new P(i,r);if((Yu(a)||yb(a))&&ql(l))return new P(i,r);if(ql(a)&&ql(l)&&r+1=l.start+1&&(l=ii._findNextWordOnLine(e,t,new P(s,l.end+1))),l?r=l.start+1:r=t.getLineMaxColumn(s);return new P(s,r)}static _moveWordPartRight(e,t){const i=t.lineNumber,n=e.getLineMaxColumn(i);if(t.column===n)return i1?c=1:(l--,c=n.getLineMaxColumn(l)):(d&&c<=d.end+1&&(d=ii._findPreviousWordOnLine(i,n,new P(l,d.start+1))),d?c=d.end+1:c>1?c=1:(l--,c=n.getLineMaxColumn(l))),new I(l,c,a.lineNumber,a.column)}static deleteInsideWord(e,t,i){if(!i.isEmpty())return i;const n=new P(i.positionLineNumber,i.positionColumn),s=this._deleteInsideWordWhitespace(t,n);return s||this._deleteInsideWordDetermineDeleteRange(e,t,n)}static _charAtIsWhitespace(e,t){const i=e.charCodeAt(t);return i===32||i===9}static _deleteInsideWordWhitespace(e,t){const i=e.getLineContent(t.lineNumber),n=i.length;if(n===0)return null;let s=Math.max(t.column-2,0);if(!this._charAtIsWhitespace(i,s))return null;let r=Math.min(t.column-1,n-1);if(!this._charAtIsWhitespace(i,r))return null;for(;s>0&&this._charAtIsWhitespace(i,s-1);)s--;for(;r+11?new I(i.lineNumber-1,t.getLineMaxColumn(i.lineNumber-1),i.lineNumber,1):i.lineNumberh.start+1<=i.column&&i.column<=h.end+1,a=(h,u)=>(h=Math.min(h,i.column),u=Math.max(u,i.column),new I(i.lineNumber,h,i.lineNumber,u)),l=h=>{let u=h.start+1,f=h.end+1,g=!1;for(;f-11&&this._charAtIsWhitespace(n,u-2);)u--;return a(u,f)},c=ii._findPreviousWordOnLine(e,t,i);if(c&&r(c))return l(c);const d=ii._findNextWordOnLine(e,t,i);return d&&r(d)?l(d):c&&d?a(c.end+1,d.start+1):c?a(c.start+1,c.end+1):d?a(d.start+1,d.end+1):a(1,s+1)}static _deleteWordPartLeft(e,t){if(!t.isEmpty())return t;const i=t.getPosition(),n=ii._moveWordPartLeft(e,i);return new I(i.lineNumber,i.column,n.lineNumber,n.column)}static _findFirstNonWhitespaceChar(e,t){const i=e.length;for(let n=t;n=u.start+1&&(u=ii._findNextWordOnLine(i,n,new P(l,u.end+1))),u?c=u.start+1:cc&&(d=c,h=e.model.getLineMaxColumn(d)),Ke.fromModelState(new Ri(new I(r.lineNumber,1,d,h),2,0,new P(d,h),0))}const l=t.modelState.selectionStart.getStartPosition().lineNumber;if(r.lineNumberl){const c=e.getLineCount();let d=a.lineNumber+1,h=1;return d>c&&(d=c,h=e.getLineMaxColumn(d)),Ke.fromViewState(t.viewState.move(!0,d,h,0))}else{const c=t.modelState.selectionStart.getEndPosition();return Ke.fromModelState(t.modelState.move(!0,c.lineNumber,c.column,0))}}static word(e,t,i,n){const s=e.model.validatePosition(n);return Ke.fromModelState(ii.word(e.cursorConfig,e.model,t.modelState,i,s))}static cancelSelection(e,t){if(!t.modelState.hasSelection())return new Ke(t.modelState,t.viewState);const i=t.viewState.position.lineNumber,n=t.viewState.position.column;return Ke.fromViewState(new Ri(new I(i,n,i,n),0,0,new P(i,n),0))}static moveTo(e,t,i,n,s){if(i){if(t.modelState.selectionStartKind===1)return this.word(e,t,i,n);if(t.modelState.selectionStartKind===2)return this.line(e,t,i,n,s)}const r=e.model.validatePosition(n),a=s?e.coordinatesConverter.validateViewPosition(new P(s.lineNumber,s.column),r):e.coordinatesConverter.convertModelPositionToViewPosition(r);return Ke.fromViewState(t.viewState.move(i,a.lineNumber,a.column,0))}static simpleMove(e,t,i,n,s,r){switch(i){case 0:return r===4?this._moveHalfLineLeft(e,t,n):this._moveLeft(e,t,n,s);case 1:return r===4?this._moveHalfLineRight(e,t,n):this._moveRight(e,t,n,s);case 2:return r===2?this._moveUpByViewLines(e,t,n,s):this._moveUpByModelLines(e,t,n,s);case 3:return r===2?this._moveDownByViewLines(e,t,n,s):this._moveDownByModelLines(e,t,n,s);case 4:return r===2?t.map(a=>Ke.fromViewState(dt.moveToPrevBlankLine(e.cursorConfig,e,a.viewState,n))):t.map(a=>Ke.fromModelState(dt.moveToPrevBlankLine(e.cursorConfig,e.model,a.modelState,n)));case 5:return r===2?t.map(a=>Ke.fromViewState(dt.moveToNextBlankLine(e.cursorConfig,e,a.viewState,n))):t.map(a=>Ke.fromModelState(dt.moveToNextBlankLine(e.cursorConfig,e.model,a.modelState,n)));case 6:return this._moveToViewMinColumn(e,t,n);case 7:return this._moveToViewFirstNonWhitespaceColumn(e,t,n);case 8:return this._moveToViewCenterColumn(e,t,n);case 9:return this._moveToViewMaxColumn(e,t,n);case 10:return this._moveToViewLastNonWhitespaceColumn(e,t,n);default:return null}}static viewportMove(e,t,i,n,s){const r=e.getCompletelyVisibleViewRange(),a=e.coordinatesConverter.convertViewRangeToModelRange(r);switch(i){case 11:{const l=this._firstLineNumberInRange(e.model,a,s),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 13:{const l=this._lastLineNumberInRange(e.model,a,s),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 12:{const l=Math.round((a.startLineNumber+a.endLineNumber)/2),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 14:{const l=[];for(let c=0,d=t.length;ci.endLineNumber-1?r=i.endLineNumber-1:sKe.fromViewState(dt.moveLeft(e.cursorConfig,e,s.viewState,i,n)))}static _moveHalfLineLeft(e,t,i){const n=[];for(let s=0,r=t.length;sKe.fromViewState(dt.moveRight(e.cursorConfig,e,s.viewState,i,n)))}static _moveHalfLineRight(e,t,i){const n=[];for(let s=0,r=t.length;s{this.model.tokenization.forceTokenization(f);const g=this.model.tokenization.getLineTokens(f),p=this.model.getLineMaxColumn(f)-1;return zd(g,p)};this.model.tokenization.forceTokenization(e.startLineNumber);const i=this.model.tokenization.getLineTokens(e.startLineNumber),n=zd(i,e.startColumn-1),s=Ni.createEmpty("",n.languageIdCodec),r=e.startLineNumber-1;if(r===0||!(n.firstCharOffset===0))return s;const c=t(r);if(!(n.languageId===c.languageId))return s;const h=c.toIViewLineTokens();return this.indentationLineProcessor.getProcessedTokens(h)}}class v8{constructor(e,t){this.model=e,this.languageConfigurationService=t}getProcessedLine(e,t){const i=(r,a)=>{const l=pi(r);return a+r.substring(l.length)};this.model.tokenization.forceTokenization?.(e);const n=this.model.tokenization.getLineTokens(e);let s=this.getProcessedTokens(n).getLineContent();return t!==void 0&&(s=i(s,t)),s}getProcessedTokens(e){const t=l=>l===2||l===3||l===1,i=e.getLanguageId(0),s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew.getBracketRegExp({global:!0}),r=[];return e.forEach(l=>{const c=e.getStandardTokenType(l);let d=e.getTokenText(l);t(c)&&(d=d.replace(s,""));const h=e.getMetadata(l);r.push({text:d,metadata:h})}),Ni.createFromTextAndMetadata(r,e.languageIdCodec)}}function V2(o,e){o.tokenization.forceTokenization(e.lineNumber);const t=o.tokenization.getLineTokens(e.lineNumber),i=zd(t,e.column-1),n=i.firstCharOffset===0,s=t.getLanguageId(0)===i.languageId;return!n&&!s}function z2(o,e,t,i){e.tokenization.forceTokenization(t.startLineNumber);const n=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),s=i.getLanguageConfiguration(n);if(!s)return null;const a=new H2(e,i).getProcessedTokenContextAroundRange(t),l=a.previousLineProcessedTokens.getLineContent(),c=a.beforeRangeProcessedTokens.getLineContent(),d=a.afterRangeProcessedTokens.getLineContent(),h=s.onEnter(o,l,c,d);if(!h)return null;const u=h.indentAction;let f=h.appendText;const g=h.removeText||0;f?u===Sn.Indent&&(f=" "+f):u===Sn.Indent||u===Sn.IndentOutdent?f=" ":f="";let p=r3(e,t.startLineNumber,t.startColumn);return g&&(p=p.substring(0,p.length-g)),{indentAction:u,appendText:f,removeText:g,indentation:p}}var Cne=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vne=function(o,e){return function(t,i){e(t,i,o)}},K1;const iL=Object.create(null);function od(o,e){if(e<=0)return"";iL[o]||(iL[o]=["",o]);const t=iL[o];for(let i=t.length;i<=e;i++)t[i]=t[i-1]+o;return t[e]}let jh=K1=class{static unshiftIndent(e,t,i,n,s){const r=_i.visibleColumnFromColumn(e,t,i);if(s){const a=od(" ",n),c=_i.prevIndentTabStop(r,n)/n;return od(a,c)}else{const c=_i.prevRenderTabStop(r,i)/i;return od(" ",c)}}static shiftIndent(e,t,i,n,s){const r=_i.visibleColumnFromColumn(e,t,i);if(s){const a=od(" ",n),c=_i.nextIndentTabStop(r,n)/n;return od(a,c)}else{const c=_i.nextRenderTabStop(r,i)/i;return od(" ",c)}}constructor(e,t,i){this._languageConfigurationService=i,this._opts=t,this._selection=e,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}_addEditOperation(e,t,i){this._useLastEditRangeForCursorEndPosition?e.addTrackedEditOperation(t,i):e.addEditOperation(t,i)}getEditOperations(e,t){const i=this._selection.startLineNumber;let n=this._selection.endLineNumber;this._selection.endColumn===1&&i!==n&&(n=n-1);const{tabSize:s,indentSize:r,insertSpaces:a}=this._opts,l=i===n;if(this._opts.useTabStops){this._selection.isEmpty()&&/^\s*$/.test(e.getLineContent(i))&&(this._useLastEditRangeForCursorEndPosition=!0);let c=0,d=0;for(let h=i;h<=n;h++,c=d){d=0;const u=e.getLineContent(h);let f=zn(u);if(this._opts.isUnshift&&(u.length===0||f===0)||!l&&!this._opts.isUnshift&&u.length===0)continue;if(f===-1&&(f=u.length),h>1&&_i.visibleColumnFromColumn(u,f+1,s)%r!==0&&e.tokenization.isCheapToTokenize(h-1)){const _=z2(this._opts.autoIndent,e,new I(h-1,e.getLineMaxColumn(h-1),h-1,e.getLineMaxColumn(h-1)),this._languageConfigurationService);if(_){if(d=c,_.appendText)for(let b=0,C=_.appendText.length;b1){let n,s=-1;for(n=e-1;n>=1;n--){if(o.tokenization.getLanguageIdAtPosition(n,0)!==i)return s;const r=o.getLineContent(n);if(t.shouldIgnore(n)||/^\s+$/.test(r)||r===""){s=n;continue}return n}}return-1}function Rv(o,e,t,i=!0,n){if(o<4)return null;const s=n.getLanguageConfiguration(e.tokenization.getLanguageId()).indentRulesSupport;if(!s)return null;const r=new bne(e,s,n);if(t<=1)return{indentation:"",action:null};for(let l=t-1;l>0&&e.getLineContent(l)==="";l--)if(l===1)return{indentation:"",action:null};const a=Sne(e,t,r);if(a<0)return null;if(a<1)return{indentation:"",action:null};if(r.shouldIncrease(a)||r.shouldIndentNextLine(a)){const l=e.getLineContent(a);return{indentation:pi(l),action:Sn.Indent,line:a}}else if(r.shouldDecrease(a)){const l=e.getLineContent(a);return{indentation:pi(l),action:null,line:a}}else{if(a===1)return{indentation:pi(e.getLineContent(a)),action:null,line:a};const l=a-1,c=s.getIndentMetadata(e.getLineContent(l));if(!(c&3)&&c&4){let d=0;for(let h=l-1;h>0;h--)if(!r.shouldIndentNextLine(h)){d=h;break}return{indentation:pi(e.getLineContent(d+1)),action:null,line:d+1}}if(i)return{indentation:pi(e.getLineContent(a)),action:null,line:a};for(let d=a;d>0;d--){if(r.shouldIncrease(d))return{indentation:pi(e.getLineContent(d)),action:Sn.Indent,line:d};if(r.shouldIndentNextLine(d)){let h=0;for(let u=d-1;u>0;u--)if(!r.shouldIndentNextLine(d)){h=u;break}return{indentation:pi(e.getLineContent(h+1)),action:null,line:h+1}}else if(r.shouldDecrease(d))return{indentation:pi(e.getLineContent(d)),action:null,line:d}}return{indentation:pi(e.getLineContent(1)),action:null,line:1}}}function Lne(o,e,t,i,n){if(o<4)return null;const s=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),r=n.getLanguageConfiguration(s).indentRulesSupport;if(!r)return null;e.tokenization.forceTokenization(t.startLineNumber);const l=new H2(e,n).getProcessedTokenContextAroundRange(t),c=l.afterRangeProcessedTokens,d=l.beforeRangeProcessedTokens,h=pi(d.getLineContent()),u=kne(e,t.startLineNumber,d),f=V2(e,t.getStartPosition()),g=e.getLineContent(t.startLineNumber),p=pi(g),_=Rv(o,u,t.startLineNumber+1,void 0,n);if(!_){const C=f?p:h;return{beforeEnter:C,afterEnter:C}}let b=f?p:_.indentation;return _.action===Sn.Indent&&(b=i.shiftIndent(b)),r.shouldDecrease(c.getLineContent())&&(b=i.unshiftIndent(b)),{beforeEnter:f?p:h,afterEnter:b}}function xne(o,e,t,i,n,s){const r=o.autoIndent;if(r<4||V2(e,t.getStartPosition()))return null;const l=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),c=s.getLanguageConfiguration(l).indentRulesSupport;if(!c)return null;const h=new H2(e,s).getProcessedTokenContextAroundRange(t),u=h.beforeRangeProcessedTokens.getLineContent(),f=h.afterRangeProcessedTokens.getLineContent(),g=u+f,p=u+i+f;if(!c.shouldDecrease(g)&&c.shouldDecrease(p)){const b=Rv(r,e,t.startLineNumber,!1,s);if(!b)return null;let C=b.indentation;return b.action!==Sn.Indent&&(C=n.unshiftIndent(C)),C}const _=t.startLineNumber-1;if(_>0){const b=e.getLineContent(_);if(c.shouldIndentNextLine(b)&&c.shouldIncrease(p)){const w=Rv(r,e,t.startLineNumber,!1,s)?.indentation;if(w!==void 0){const v=e.getLineContent(t.startLineNumber),y=pi(v),L=n.shiftIndent(w)===y,E=/^\s*$/.test(g),N=o.autoClosingPairs.autoClosingPairsOpenByEnd.get(i),F=N&&N.length>0&&E;if(L&&F)return w}}}return null}function kne(o,e,t){return{tokenization:{getLineTokens:n=>n===e?t:o.tokenization.getLineTokens(n),getLanguageId:()=>o.getLanguageId(),getLanguageIdAtPosition:(n,s)=>o.getLanguageIdAtPosition(n,s)},getLineContent:n=>n===e?t.getLineContent():o.getLineContent(n)}}class Dne{static getEdits(e,t,i,n,s){if(!s&&this._isAutoIndentType(e,t,i)){const r=[];for(const l of i){const c=this._findActualIndentationForSelection(e,t,l,n);if(c===null)return;r.push({selection:l,indentation:c})}const a=kI.getAutoClosingPairClose(e,t,i,n,!1);return this._getIndentationAndAutoClosingPairEdits(e,t,r,n,a)}}static _isAutoIndentType(e,t,i){if(e.autoIndent<4)return!1;for(let n=0,s=i.length;nK2(e,a),unshiftIndent:a=>Av(e,a)},e.languageConfigurationService);if(s===null)return null;const r=r3(t,i.startLineNumber,i.startColumn);return s===e.normalizeIndentation(r)?null:s}static _getIndentationAndAutoClosingPairEdits(e,t,i,n,s){const r=i.map(({selection:l,indentation:c})=>{if(s!==null){const d=this._getEditFromIndentationAndSelection(e,t,c,l,n,!1);return new Bne(d,l,n,s)}else{const d=this._getEditFromIndentationAndSelection(e,t,c,l,n,!0);return gd(d.range,d.text,!1)}}),a={shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1};return new jn(4,r,a)}static _getEditFromIndentationAndSelection(e,t,i,n,s,r=!0){const a=n.startLineNumber,l=t.getLineFirstNonWhitespaceColumn(a);let c=e.normalizeIndentation(i);if(l!==0){const h=t.getLineContent(a);c+=h.substring(l-1,n.startColumn-1)}return c+=r?s:"",{range:new I(a,1,n.endLineNumber,n.endColumn),text:c}}}class Ine{static getEdits(e,t,i,n,s,r){if(y8(t,i,n,s,r))return this._runAutoClosingOvertype(e,n,r)}static _runAutoClosingOvertype(e,t,i){const n=[];for(let s=0,r=t.length;snew os(new I(a.positionLineNumber,a.positionColumn,a.positionLineNumber,a.positionColumn+1),"",!1));return new jn(4,r,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}}class kI{static getEdits(e,t,i,n,s,r){if(!r){const a=this.getAutoClosingPairClose(e,t,i,n,s);if(a!==null)return this._runAutoClosingOpenCharType(i,n,s,a)}}static _runAutoClosingOpenCharType(e,t,i,n){const s=[];for(let r=0,a=e.length;r{const p=g.getPosition();return s?{lineNumber:p.lineNumber,beforeColumn:p.column-n.length,afterColumn:p.column}:{lineNumber:p.lineNumber,beforeColumn:p.column,afterColumn:p.column}}),a=this._findAutoClosingPairOpen(e,t,r.map(g=>new P(g.lineNumber,g.beforeColumn)),n);if(!a)return null;let l,c;if(Hc(n)?(l=e.autoClosingQuotes,c=e.shouldAutoCloseBefore.quote):(e.blockCommentStartToken?a.open.includes(e.blockCommentStartToken):!1)?(l=e.autoClosingComments,c=e.shouldAutoCloseBefore.comment):(l=e.autoClosingBrackets,c=e.shouldAutoCloseBefore.bracket),l==="never")return null;const h=this._findContainedAutoClosingPair(e,a),u=h?h.close:"";let f=!0;for(const g of r){const{lineNumber:p,beforeColumn:_,afterColumn:b}=g,C=t.getLineContent(p),w=C.substring(0,_-1),v=C.substring(b-1);if(v.startsWith(u)||(f=!1),v.length>0){const E=v.charAt(0);if(!this._isBeforeClosingBrace(e,v)&&!c(E))return null}if(a.open.length===1&&(n==="'"||n==='"')&&l!=="always"){const E=cg(e.wordSeparators,[]);if(w.length>0){const N=w.charCodeAt(w.length-1);if(E.get(N)===0)return null}}if(!t.tokenization.isCheapToTokenize(p))return null;t.tokenization.forceTokenization(p);const y=t.tokenization.getLineTokens(p),x=zd(y,_-1);if(!a.shouldAutoClose(x,_-x.firstCharOffset))return null;const L=a.findNeutralCharacter();if(L){const E=t.tokenization.getTokenTypeIfInsertingCharacter(p,_,L);if(!a.isOK(E))return null}}return f?a.close.substring(0,a.close.length-u.length):a.close}static _findContainedAutoClosingPair(e,t){if(t.open.length<=1)return null;const i=t.close.charAt(t.close.length-1),n=e.autoClosingPairs.autoClosingPairsCloseByEnd.get(i)||[];let s=null;for(const r of n)r.open!==t.open&&t.open.includes(r.open)&&t.close.endsWith(r.close)&&(!s||r.open.length>s.open.length)&&(s=r);return s}static _findAutoClosingPairOpen(e,t,i,n){const s=e.autoClosingPairs.autoClosingPairsOpenByEnd.get(n);if(!s)return null;let r=null;for(const a of s)if(r===null||a.open.length>r.open.length){let l=!0;for(const c of i)if(t.getValueInRange(new I(c.lineNumber,c.column-a.open.length+1,c.lineNumber,c.column))+n!==a.open){l=!1;break}l&&(r=a)}return r}static _isBeforeClosingBrace(e,t){const i=t.charAt(0),n=e.autoClosingPairs.autoClosingPairsOpenByStart.get(i)||[],s=e.autoClosingPairs.autoClosingPairsCloseByStart.get(i)||[],r=n.some(l=>t.startsWith(l.open)),a=s.some(l=>t.startsWith(l.close));return!r&&a}}class Nne{static getEdits(e,t,i,n,s){if(!s&&this._isSurroundSelectionType(e,t,i,n))return this._runSurroundSelectionType(e,i,n)}static _runSurroundSelectionType(e,t,i){const n=[];for(let s=0,r=t.length;s=4){const l=Lne(e.autoIndent,t,n,{unshiftIndent:c=>Av(e,c),shiftIndent:c=>K2(e,c),normalizeIndentation:c=>e.normalizeIndentation(c)},e.languageConfigurationService);if(l){let c=e.visibleColumnFromColumn(t,n.getEndPosition());const d=n.endColumn,h=t.getLineContent(n.endLineNumber),u=zn(h);if(u>=0?n=n.setEndPosition(n.endLineNumber,Math.max(n.endColumn,u+1)):n=n.setEndPosition(n.endLineNumber,t.getLineMaxColumn(n.endLineNumber)),i)return new $1(n,` +`+e.normalizeIndentation(l.afterEnter),!0);{let f=0;return d<=u+1&&(e.insertSpaces||(c=Math.ceil(c/e.indentSize)),f=Math.min(c+1-e.normalizeIndentation(l.afterEnter).length-1,0)),new Tv(n,` +`+e.normalizeIndentation(l.afterEnter),0,f,!0)}}}return gd(n,` +`+e.normalizeIndentation(a),i)}static lineInsertBefore(e,t,i){if(t===null||i===null)return[];const n=[];for(let s=0,r=i.length;sthis._compositionType(i,d,s,r,a,l));return new jn(4,c,{shouldPushStackElementBefore:Dy(e,4),shouldPushStackElementAfter:!1})}static _compositionType(e,t,i,n,s,r){if(!t.isEmpty())return null;const a=t.getPosition(),l=Math.max(1,a.column-n),c=Math.min(e.getLineMaxColumn(a.lineNumber),a.column+s),d=new I(a.lineNumber,l,a.lineNumber,c);return e.getValueInRange(d)===i&&r===0?null:new Tv(d,i,0,r)}}class Pne{static getEdits(e,t,i){const n=[];for(let r=0,a=t.length;r1){let a;for(a=i-1;a>=1;a--){const d=t.getLineContent(a);if(Jh(d)>=0)break}if(a<1)return null;const l=t.getLineMaxColumn(a),c=z2(e.autoIndent,t,new I(a,l,a,l),e.languageConfigurationService);c&&(s=c.indentation+c.appendText)}return n&&(n===Sn.Indent&&(s=K2(e,s)),n===Sn.Outdent&&(s=Av(e,s)),s=e.normalizeIndentation(s)),s||null}static _replaceJumpToNextIndent(e,t,i,n){let s="";const r=i.getStartPosition();if(e.insertSpaces){const a=e.visibleColumnFromColumn(t,r),l=e.indentSize,c=l-a%l;for(let d=0;d2?c.charCodeAt(l.column-2):0)===92&&h)return!1;if(o.autoClosingOvertype==="auto"){let f=!1;for(let g=0,p=i.length;g{const n=t.get(Pt).getFocusedCodeEditor();return n&&n.hasTextFocus()?this._runEditorCommand(t,n,i):!1}),e.addImplementation(1e3,"generic-dom-input-textarea",(t,i)=>{const n=Xi();return n&&["input","textarea"].indexOf(n.tagName.toLowerCase())>=0?(this.runDOMCommand(n),!0):!1}),e.addImplementation(0,"generic-dom",(t,i)=>{const n=t.get(Pt).getActiveCodeEditor();return n?(n.focus(),this._runEditorCommand(t,n,i)):!1})}_runEditorCommand(e,t,i){const n=this.runEditorCommand(e,t,i);return n||!0}}var Li;(function(o){class e extends $t{constructor(C){super(C),this._inSelectionMode=C.inSelectionMode}runCoreEditorCommand(C,w){if(!w.position)return;C.model.pushStackElement(),C.setCursorStates(w.source,3,[nn.moveTo(C,C.getPrimaryCursorState(),this._inSelectionMode,w.position,w.viewPosition)])&&w.revealType!==2&&C.revealAllCursors(w.source,!0,!0)}}o.MoveTo=ge(new e({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),o.MoveToSelect=ge(new e({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));class t extends $t{runCoreEditorCommand(C,w){C.model.pushStackElement();const v=this._getColumnSelectResult(C,C.getPrimaryCursorState(),C.getCursorColumnSelectData(),w);v!==null&&(C.setCursorStates(w.source,3,v.viewStates.map(y=>Ke.fromViewState(y))),C.setCursorColumnSelectData({isReal:!0,fromViewLineNumber:v.fromLineNumber,fromViewVisualColumn:v.fromVisualColumn,toViewLineNumber:v.toLineNumber,toViewVisualColumn:v.toVisualColumn}),v.reversed?C.revealTopMostCursor(w.source):C.revealBottomMostCursor(w.source))}}o.ColumnSelect=ge(new class extends t{constructor(){super({id:"columnSelect",precondition:void 0})}_getColumnSelectResult(b,C,w,v){if(typeof v.position>"u"||typeof v.viewPosition>"u"||typeof v.mouseColumn>"u")return null;const y=b.model.validatePosition(v.position),x=b.coordinatesConverter.validateViewPosition(new P(v.viewPosition.lineNumber,v.viewPosition.column),y),L=v.doColumnSelect?w.fromViewLineNumber:x.lineNumber,E=v.doColumnSelect?w.fromViewVisualColumn:v.mouseColumn-1;return Id.columnSelect(b.cursorConfig,b,L,E,x.lineNumber,v.mouseColumn-1)}}),o.CursorColumnSelectLeft=ge(new class extends t{constructor(){super({id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3599,linux:{primary:0}}})}_getColumnSelectResult(b,C,w,v){return Id.columnSelectLeft(b.cursorConfig,b,w)}}),o.CursorColumnSelectRight=ge(new class extends t{constructor(){super({id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3601,linux:{primary:0}}})}_getColumnSelectResult(b,C,w,v){return Id.columnSelectRight(b.cursorConfig,b,w)}});class i extends t{constructor(C){super(C),this._isPaged=C.isPaged}_getColumnSelectResult(C,w,v,y){return Id.columnSelectUp(C.cursorConfig,C,v,this._isPaged)}}o.CursorColumnSelectUp=ge(new i({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3600,linux:{primary:0}}})),o.CursorColumnSelectPageUp=ge(new i({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3595,linux:{primary:0}}}));class n extends t{constructor(C){super(C),this._isPaged=C.isPaged}_getColumnSelectResult(C,w,v,y){return Id.columnSelectDown(C.cursorConfig,C,v,this._isPaged)}}o.CursorColumnSelectDown=ge(new n({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3602,linux:{primary:0}}})),o.CursorColumnSelectPageDown=ge(new n({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3596,linux:{primary:0}}}));class s extends $t{constructor(){super({id:"cursorMove",precondition:void 0,metadata:Mv.metadata})}runCoreEditorCommand(C,w){const v=Mv.parse(w);v&&this._runCursorMove(C,w.source,v)}_runCursorMove(C,w,v){C.model.pushStackElement(),C.setCursorStates(w,3,s._move(C,C.getCursorStates(),v)),C.revealAllCursors(w,!0)}static _move(C,w,v){const y=v.select,x=v.value;switch(v.direction){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:return nn.simpleMove(C,w,v.direction,y,x,v.unit);case 11:case 13:case 12:case 14:return nn.viewportMove(C,w,v.direction,y,x);default:return null}}}o.CursorMoveImpl=s,o.CursorMove=ge(new s);class r extends $t{constructor(C){super(C),this._staticArgs=C.args}runCoreEditorCommand(C,w){let v=this._staticArgs;this._staticArgs.value===-1&&(v={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:w.pageSize||C.cursorConfig.pageSize}),C.model.pushStackElement(),C.setCursorStates(w.source,3,nn.simpleMove(C,C.getCursorStates(),v.direction,v.select,v.value,v.unit)),C.revealAllCursors(w.source,!0)}}o.CursorLeft=ge(new r({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:15,mac:{primary:15,secondary:[288]}}})),o.CursorLeftSelect=ge(new r({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1039}})),o.CursorRight=ge(new r({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:17,mac:{primary:17,secondary:[292]}}})),o.CursorRightSelect=ge(new r({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1041}})),o.CursorUp=ge(new r({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:16,mac:{primary:16,secondary:[302]}}})),o.CursorUpSelect=ge(new r({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1040,secondary:[3088],mac:{primary:1040},linux:{primary:1040}}})),o.CursorPageUp=ge(new r({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:11}})),o.CursorPageUpSelect=ge(new r({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1035}})),o.CursorDown=ge(new r({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:18,mac:{primary:18,secondary:[300]}}})),o.CursorDownSelect=ge(new r({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1042,secondary:[3090],mac:{primary:1042},linux:{primary:1042}}})),o.CursorPageDown=ge(new r({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:12}})),o.CursorPageDownSelect=ge(new r({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1036}})),o.CreateCursor=ge(new class extends $t{constructor(){super({id:"createCursor",precondition:void 0})}runCoreEditorCommand(b,C){if(!C.position)return;let w;C.wholeLine?w=nn.line(b,b.getPrimaryCursorState(),!1,C.position,C.viewPosition):w=nn.moveTo(b,b.getPrimaryCursorState(),!1,C.position,C.viewPosition);const v=b.getCursorStates();if(v.length>1){const y=w.modelState?w.modelState.position:null,x=w.viewState?w.viewState.position:null;for(let L=0,E=v.length;Lx&&(y=x);const L=new I(y,1,y,b.model.getLineMaxColumn(y));let E=0;if(w.at)switch(w.at){case hf.RawAtArgument.Top:E=3;break;case hf.RawAtArgument.Center:E=1;break;case hf.RawAtArgument.Bottom:E=4;break}const N=b.coordinatesConverter.convertModelRangeToViewRange(L);b.revealRange(C.source,!1,N,E,0)}}),o.SelectAll=new class extends DI{constructor(){super(_z)}runDOMCommand(b){Mo&&(b.focus(),b.select()),b.ownerDocument.execCommand("selectAll")}runEditorCommand(b,C,w){const v=C._getViewModel();v&&this.runCoreEditorCommand(v,w)}runCoreEditorCommand(b,C){b.model.pushStackElement(),b.setCursorStates("keyboard",3,[nn.selectAll(b,b.getPrimaryCursorState())])}},o.SetSelection=ge(new class extends $t{constructor(){super({id:"setSelection",precondition:void 0})}runCoreEditorCommand(b,C){C.selection&&(b.model.pushStackElement(),b.setCursorStates(C.source,3,[Ke.fromModelSelection(C.selection)]))}})})(Li||(Li={}));const Hne=re.and(K.textInputFocus,K.columnSelection);function qg(o,e){Nn.registerKeybindingRule({id:o,primary:e,when:Hne,weight:it+1})}qg(Li.CursorColumnSelectLeft.id,1039);qg(Li.CursorColumnSelectRight.id,1041);qg(Li.CursorColumnSelectUp.id,1040);qg(Li.CursorColumnSelectPageUp.id,1035);qg(Li.CursorColumnSelectDown.id,1042);qg(Li.CursorColumnSelectPageDown.id,1036);function MO(o){return o.register(),o}var fp;(function(o){class e extends co{runEditorCommand(i,n,s){const r=n._getViewModel();r&&this.runCoreEditingCommand(n,r,s||{})}}o.CoreEditingCommand=e,o.LineBreakInsert=ge(new class extends e{constructor(){super({id:"lineBreakInsert",precondition:K.writable,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:0,mac:{primary:301}}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,w8.lineBreakInsert(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection)))}}),o.Outdent=ge(new class extends e{constructor(){super({id:"outdent",precondition:K.writable,kbOpts:{weight:it,kbExpr:re.and(K.editorTextFocus,K.tabDoesNotMoveFocus),primary:1026}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,Ed.outdent(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection))),t.pushUndoStop()}}),o.Tab=ge(new class extends e{constructor(){super({id:"tab",precondition:K.writable,kbOpts:{weight:it,kbExpr:re.and(K.editorTextFocus,K.tabDoesNotMoveFocus),primary:2}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,Ed.tab(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection))),t.pushUndoStop()}}),o.DeleteLeft=ge(new class extends e{constructor(){super({id:"deleteLeft",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1,secondary:[1025],mac:{primary:1,secondary:[1025,294,257]}}})}runCoreEditingCommand(t,i,n){const[s,r]=Kh.deleteLeft(i.getPrevEditOperationType(),i.cursorConfig,i.model,i.getCursorStates().map(a=>a.modelState.selection),i.getCursorAutoClosedCharacters());s&&t.pushUndoStop(),t.executeCommands(this.id,r),i.setPrevEditOperationType(2)}}),o.DeleteRight=ge(new class extends e{constructor(){super({id:"deleteRight",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:20,mac:{primary:20,secondary:[290,276]}}})}runCoreEditingCommand(t,i,n){const[s,r]=Kh.deleteRight(i.getPrevEditOperationType(),i.cursorConfig,i.model,i.getCursorStates().map(a=>a.modelState.selection));s&&t.pushUndoStop(),t.executeCommands(this.id,r),i.setPrevEditOperationType(3)}}),o.Undo=new class extends DI{constructor(){super(qF)}runDOMCommand(t){t.ownerDocument.execCommand("undo")}runEditorCommand(t,i,n){if(!(!i.hasModel()||i.getOption(92)===!0))return i.getModel().undo()}},o.Redo=new class extends DI{constructor(){super(GF)}runDOMCommand(t){t.ownerDocument.execCommand("redo")}runEditorCommand(t,i,n){if(!(!i.hasModel()||i.getOption(92)===!0))return i.getModel().redo()}}})(fp||(fp={}));class RO extends U0{constructor(e,t,i){super({id:e,precondition:void 0,metadata:i}),this._handlerId=t}runCommand(e,t){const i=e.get(Pt).getFocusedCodeEditor();i&&i.trigger("keyboard",this._handlerId,t)}}function pu(o,e){MO(new RO("default:"+o,o)),MO(new RO(o,o,e))}pu("type",{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]});pu("replacePreviousChar");pu("compositionType");pu("compositionStart");pu("compositionEnd");pu("paste");pu("cut");class Vne{constructor(e,t,i,n){this.configuration=e,this.viewModel=t,this.userInputEvents=i,this.commandDelegate=n}paste(e,t,i,n){this.commandDelegate.paste(e,t,i,n)}type(e){this.commandDelegate.type(e)}compositionType(e,t,i,n){this.commandDelegate.compositionType(e,t,i,n)}compositionStart(){this.commandDelegate.startComposition()}compositionEnd(){this.commandDelegate.endComposition()}cut(){this.commandDelegate.cut()}setSelection(e){Li.SetSelection.runCoreEditorCommand(this.viewModel,{source:"keyboard",selection:e})}_validateViewColumn(e){const t=this.viewModel.getLineMinColumn(e.lineNumber);return e.column=4?this._selectAll():e.mouseDownCount===3?this._hasMulticursorModifier(e)?e.inSelectionMode?this._lastCursorLineSelectDrag(e.position,e.revealType):this._lastCursorLineSelect(e.position,e.revealType):e.inSelectionMode?this._lineSelectDrag(e.position,e.revealType):this._lineSelect(e.position,e.revealType):e.mouseDownCount===2?e.onInjectedText||(this._hasMulticursorModifier(e)?this._lastCursorWordSelect(e.position,e.revealType):e.inSelectionMode?this._wordSelectDrag(e.position,e.revealType):this._wordSelect(e.position,e.revealType)):this._hasMulticursorModifier(e)?this._hasNonMulticursorModifier(e)||(e.shiftKey?this._columnSelect(e.position,e.mouseColumn,!0):e.inSelectionMode?this._lastCursorMoveToSelect(e.position,e.revealType):this._createCursor(e.position,!1)):e.inSelectionMode?e.altKey?this._columnSelect(e.position,e.mouseColumn,!0):n?this._columnSelect(e.position,e.mouseColumn,!0):this._moveToSelect(e.position,e.revealType):this.moveTo(e.position,e.revealType)}_usualArgs(e,t){return e=this._validateViewColumn(e),{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,revealType:t}}moveTo(e,t){Li.MoveTo.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_moveToSelect(e,t){Li.MoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_columnSelect(e,t,i){e=this._validateViewColumn(e),Li.ColumnSelect.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,mouseColumn:t,doColumnSelect:i})}_createCursor(e,t){e=this._validateViewColumn(e),Li.CreateCursor.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,wholeLine:t})}_lastCursorMoveToSelect(e,t){Li.LastCursorMoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_wordSelect(e,t){Li.WordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_wordSelectDrag(e,t){Li.WordSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lastCursorWordSelect(e,t){Li.LastCursorWordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lineSelect(e,t){Li.LineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lineSelectDrag(e,t){Li.LineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lastCursorLineSelect(e,t){Li.LastCursorLineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lastCursorLineSelectDrag(e,t){Li.LastCursorLineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_selectAll(){Li.SelectAll.runCoreEditorCommand(this.viewModel,{source:"mouse"})}_convertViewToModelPosition(e){return this.viewModel.coordinatesConverter.convertViewPositionToModelPosition(e)}emitKeyDown(e){this.userInputEvents.emitKeyDown(e)}emitKeyUp(e){this.userInputEvents.emitKeyUp(e)}emitContextMenu(e){this.userInputEvents.emitContextMenu(e)}emitMouseMove(e){this.userInputEvents.emitMouseMove(e)}emitMouseLeave(e){this.userInputEvents.emitMouseLeave(e)}emitMouseUp(e){this.userInputEvents.emitMouseUp(e)}emitMouseDown(e){this.userInputEvents.emitMouseDown(e)}emitMouseDrag(e){this.userInputEvents.emitMouseDrag(e)}emitMouseDrop(e){this.userInputEvents.emitMouseDrop(e)}emitMouseDropCanceled(){this.userInputEvents.emitMouseDropCanceled()}emitMouseWheel(e){this.userInputEvents.emitMouseWheel(e)}}class L8{constructor(e){this._lineFactory=e,this._set(1,[])}flush(){this._set(1,[])}_set(e,t){this._lines=t,this._rendLineNumberStart=e}_get(){return{rendLineNumberStart:this._rendLineNumberStart,lines:this._lines}}getStartLineNumber(){return this._rendLineNumberStart}getEndLineNumber(){return this._rendLineNumberStart+this._lines.length-1}getCount(){return this._lines.length}getLine(e){const t=e-this._rendLineNumberStart;if(t<0||t>=this._lines.length)throw new nt("Illegal value for lineNumber");return this._lines[t]}onLinesDeleted(e,t){if(this.getCount()===0)return null;const i=this.getStartLineNumber(),n=this.getEndLineNumber();if(tn)return null;let s=0,r=0;for(let l=i;l<=n;l++){const c=l-this._rendLineNumberStart;e<=l&&l<=t&&(r===0?(s=c,r=1):r++)}if(e=n&&a<=s&&(this._lines[a-this._rendLineNumberStart].onContentChanged(),r=!0);return r}onLinesInserted(e,t){if(this.getCount()===0)return null;const i=t-e+1,n=this.getStartLineNumber(),s=this.getEndLineNumber();if(e<=n)return this._rendLineNumberStart+=i,null;if(e>s)return null;if(i+e>s)return this._lines.splice(e-this._rendLineNumberStart,s-e+1);const r=[];for(let h=0;hi)continue;const l=Math.max(t,a.fromLineNumber),c=Math.min(i,a.toLineNumber);for(let d=l;d<=c;d++){const h=d-this._rendLineNumberStart;this._lines[h].onTokensChanged(),n=!0}}return n}}class x8{constructor(e){this._lineFactory=e,this.domNode=this._createDomNode(),this._linesCollection=new L8(this._lineFactory)}_createDomNode(){const e=ot(document.createElement("div"));return e.setClassName("view-layer"),e.setPosition("absolute"),e.domNode.setAttribute("role","presentation"),e.domNode.setAttribute("aria-hidden","true"),e}onConfigurationChanged(e){return!!e.hasChanged(146)}onFlushed(e){return this._linesCollection.flush(),!0}onLinesChanged(e){return this._linesCollection.onLinesChanged(e.fromLineNumber,e.count)}onLinesDeleted(e){const t=this._linesCollection.onLinesDeleted(e.fromLineNumber,e.toLineNumber);if(t)for(let i=0,n=t.length;it){const r=t,a=Math.min(i,s.rendLineNumberStart-1);r<=a&&(this._insertLinesBefore(s,r,a,n,t),s.linesLength+=a-r+1)}else if(s.rendLineNumberStart0&&(this._removeLinesBefore(s,r),s.linesLength-=r)}if(s.rendLineNumberStart=t,s.rendLineNumberStart+s.linesLength-1i){const r=Math.max(0,i-s.rendLineNumberStart+1),l=s.linesLength-1-r+1;l>0&&(this._removeLinesAfter(s,l),s.linesLength-=l)}return this._finishRendering(s,!1,n),s}_renderUntouchedLines(e,t,i,n,s){const r=e.rendLineNumberStart,a=e.lines;for(let l=t;l<=i;l++){const c=r+l;a[l].layoutLine(c,n[c-s],this._viewportData.lineHeight)}}_insertLinesBefore(e,t,i,n,s){const r=[];let a=0;for(let l=t;l<=i;l++)r[a++]=this._lineFactory.createLine();e.lines=r.concat(e.lines)}_removeLinesBefore(e,t){for(let i=0;i=0;a--){const l=e.lines[a];n[a]&&(l.setDomNode(r),r=r.previousSibling)}}_finishRenderingInvalidLines(e,t,i){const n=document.createElement("div");Za._ttPolicy&&(t=Za._ttPolicy.createHTML(t)),n.innerHTML=t;for(let s=0;se}),Za._sb=new K_(1e5);let II=Za;class k8 extends _s{constructor(e){super(e),this._dynamicOverlays=[],this._isFocused=!1,this._visibleLines=new x8({createLine:()=>new zne(this._dynamicOverlays)}),this.domNode=this._visibleLines.domNode;const i=this._context.configuration.options.get(50);qi(this.domNode,i),this.domNode.setClassName("view-overlays")}shouldRender(){if(super.shouldRender())return!0;for(let e=0,t=this._dynamicOverlays.length;ei.shouldRender());for(let i=0,n=t.length;i'),s.appendString(r),s.appendString(""),!0)}layoutLine(e,t,i){this._domNode&&(this._domNode.setTop(t),this._domNode.setHeight(i))}}class Une extends k8{constructor(e){super(e);const i=this._context.configuration.options.get(146);this._contentWidth=i.contentWidth,this.domNode.setHeight(0)}onConfigurationChanged(e){const i=this._context.configuration.options.get(146);return this._contentWidth=i.contentWidth,super.onConfigurationChanged(e)||!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollWidthChanged}_viewOverlaysRender(e){super._viewOverlaysRender(e),this.domNode.setWidth(Math.max(e.scrollWidth,this._contentWidth))}}class $ne extends k8{constructor(e){super(e);const t=this._context.configuration.options,i=t.get(146);this._contentLeft=i.contentLeft,this.domNode.setClassName("margin-view-overlays"),this.domNode.setWidth(1),qi(this.domNode,t.get(50))}onConfigurationChanged(e){const t=this._context.configuration.options;qi(this.domNode,t.get(50));const i=t.get(146);return this._contentLeft=i.contentLeft,super.onConfigurationChanged(e)||!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollHeightChanged}_viewOverlaysRender(e){super._viewOverlaysRender(e);const t=Math.min(e.scrollHeight,1e6);this.domNode.setHeight(t),this.domNode.setWidth(this._contentLeft)}}class Iy{constructor(e){this.onKeyDown=null,this.onKeyUp=null,this.onContextMenu=null,this.onMouseMove=null,this.onMouseLeave=null,this.onMouseDown=null,this.onMouseUp=null,this.onMouseDrag=null,this.onMouseDrop=null,this.onMouseDropCanceled=null,this.onMouseWheel=null,this._coordinatesConverter=e}emitKeyDown(e){this.onKeyDown?.(e)}emitKeyUp(e){this.onKeyUp?.(e)}emitContextMenu(e){this.onContextMenu?.(this._convertViewToModelMouseEvent(e))}emitMouseMove(e){this.onMouseMove?.(this._convertViewToModelMouseEvent(e))}emitMouseLeave(e){this.onMouseLeave?.(this._convertViewToModelMouseEvent(e))}emitMouseDown(e){this.onMouseDown?.(this._convertViewToModelMouseEvent(e))}emitMouseUp(e){this.onMouseUp?.(this._convertViewToModelMouseEvent(e))}emitMouseDrag(e){this.onMouseDrag?.(this._convertViewToModelMouseEvent(e))}emitMouseDrop(e){this.onMouseDrop?.(this._convertViewToModelMouseEvent(e))}emitMouseDropCanceled(){this.onMouseDropCanceled?.()}emitMouseWheel(e){this.onMouseWheel?.(e)}_convertViewToModelMouseEvent(e){return e.target?{event:e.event,target:this._convertViewToModelMouseTarget(e.target)}:e}_convertViewToModelMouseTarget(e){return Iy.convertViewToModelMouseTarget(e,this._coordinatesConverter)}static convertViewToModelMouseTarget(e,t){const i={...e};return i.position&&(i.position=t.convertViewPositionToModelPosition(i.position)),i.range&&(i.range=t.convertViewRangeToModelRange(i.range)),(i.type===5||i.type===8)&&(i.detail=this.convertViewToModelViewZoneData(i.detail,t)),i}static convertViewToModelViewZoneData(e,t){return{viewZoneId:e.viewZoneId,positionBefore:e.positionBefore?t.convertViewPositionToModelPosition(e.positionBefore):e.positionBefore,positionAfter:e.positionAfter?t.convertViewPositionToModelPosition(e.positionAfter):e.positionAfter,position:t.convertViewPositionToModelPosition(e.position),afterLineNumber:t.convertViewPositionToModelPosition(new P(e.afterLineNumber,1)).lineNumber}}}class Kne extends _s{constructor(e){super(e),this.blocks=[],this.contentWidth=-1,this.contentLeft=0,this.domNode=ot(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("blockDecorations-container"),this.update()}update(){let e=!1;const i=this._context.configuration.options.get(146),n=i.contentWidth-i.verticalScrollbarWidth;this.contentWidth!==n&&(this.contentWidth=n,e=!0);const s=i.contentLeft;return this.contentLeft!==s&&(this.contentLeft=s,e=!0),e}dispose(){super.dispose()}onConfigurationChanged(e){return this.update()}onScrollChanged(e){return e.scrollTopChanged||e.scrollLeftChanged}onDecorationsChanged(e){return!0}onZonesChanged(e){return!0}prepareRender(e){}render(e){let t=0;const i=e.getDecorationsInViewport();for(const n of i){if(!n.options.blockClassName)continue;let s=this.blocks[t];s||(s=this.blocks[t]=ot(document.createElement("div")),this.domNode.appendChild(s));let r,a;n.options.blockIsAfterEnd?(r=e.getVerticalOffsetAfterLineNumber(n.range.endLineNumber,!1),a=e.getVerticalOffsetAfterLineNumber(n.range.endLineNumber,!0)):(r=e.getVerticalOffsetForLineNumber(n.range.startLineNumber,!0),a=n.range.isEmpty()&&!n.options.blockDoesNotCollapse?e.getVerticalOffsetForLineNumber(n.range.startLineNumber,!1):e.getVerticalOffsetAfterLineNumber(n.range.endLineNumber,!0));const[l,c,d,h]=n.options.blockPadding??[0,0,0,0];s.setClassName("blockDecorations-block "+n.options.blockClassName),s.setLeft(this.contentLeft-h),s.setWidth(this.contentWidth+h+c),s.setTop(r-e.scrollTop-l),s.setHeight(a-r+l+d),t++}for(let n=t;n0?this.domNode.setDisplay("block"):this.domNode.setDisplay("none"),this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1}_layoutBoxInViewport(e,t,i,n){const s=e.top,r=s,a=e.top+e.height,l=n.viewportHeight-a,c=s-i,d=r>=i,h=a,u=l>=i;let f=e.left;return f+t>n.scrollLeft+n.viewportWidth&&(f=n.scrollLeft+n.viewportWidth-t),fl){const u=h-(l-n);h-=u,i-=u}if(h=p,C=h+i<=u.height-_;return this._fixedOverflowWidgets?{fitsAbove:b,aboveTop:Math.max(d,p),fitsBelow:C,belowTop:h,left:g}:{fitsAbove:b,aboveTop:s,fitsBelow:C,belowTop:r,left:f}}_prepareRenderWidgetAtExactPositionOverflowing(e){return new ym(e.top,e.left+this._contentLeft)}_getAnchorsCoordinates(e){const t=s(this._primaryAnchor.viewPosition,this._affinity,this._lineHeight),i=this._secondaryAnchor.viewPosition?.lineNumber===this._primaryAnchor.viewPosition?.lineNumber?this._secondaryAnchor.viewPosition:null,n=s(i,this._affinity,this._lineHeight);return{primary:t,secondary:n};function s(r,a,l){if(!r)return null;const c=e.visibleRangeForPosition(r);if(!c)return null;const d=r.column===1&&a===3?0:c.left,h=e.getVerticalOffsetForLineNumber(r.lineNumber)-e.scrollTop;return new AO(h,d,l)}}_reduceAnchorCoordinates(e,t,i){if(!t)return e;const n=this._context.configuration.options.get(50);let s=t.left;return se.endLineNumber||this.domNode.setMaxWidth(this._maxWidth)}prepareRender(e){this._renderData=this._prepareRenderWidget(e)}render(e){if(!this._renderData||this._renderData.kind==="offViewport"){this._isVisible&&(this.domNode.removeAttribute("monaco-visible-content-widget"),this._isVisible=!1,this._renderData?.kind==="offViewport"&&this._renderData.preserveFocus?this.domNode.setTop(-1e3):this.domNode.setVisibility("hidden")),typeof this._actual.afterRender=="function"&&nL(this._actual.afterRender,this._actual,null);return}this.allowEditorOverflow?(this.domNode.setTop(this._renderData.coordinate.top),this.domNode.setLeft(this._renderData.coordinate.left)):(this.domNode.setTop(this._renderData.coordinate.top+e.scrollTop-e.bigNumbersDelta),this.domNode.setLeft(this._renderData.coordinate.left)),this._isVisible||(this.domNode.setVisibility("inherit"),this.domNode.setAttribute("monaco-visible-content-widget","true"),this._isVisible=!0),typeof this._actual.afterRender=="function"&&nL(this._actual.afterRender,this._actual,this._renderData.position)}}class wm{constructor(e,t){this.modelPosition=e,this.viewPosition=t}}class ym{constructor(e,t){this.top=e,this.left=t,this._coordinateBrand=void 0}}class AO{constructor(e,t,i){this.top=e,this.left=t,this.height=i,this._anchorCoordinateBrand=void 0}}function nL(o,e,...t){try{return o.call(e,...t)}catch{return null}}class D8 extends mu{constructor(e){super(),this._context=e;const t=this._context.configuration.options,i=t.get(146);this._renderLineHighlight=t.get(97),this._renderLineHighlightOnlyWhenFocus=t.get(98),this._wordWrap=i.isViewportWrapping,this._contentLeft=i.contentLeft,this._contentWidth=i.contentWidth,this._selectionIsEmpty=!0,this._focused=!1,this._cursorLineNumbers=[1],this._selections=[new Fe(1,1,1,1)],this._renderData=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}_readFromSelections(){let e=!1;const t=new Set;for(const s of this._selections)t.add(s.positionLineNumber);const i=Array.from(t);i.sort((s,r)=>s-r),li(this._cursorLineNumbers,i)||(this._cursorLineNumbers=i,e=!0);const n=this._selections.every(s=>s.isEmpty());return this._selectionIsEmpty!==n&&(this._selectionIsEmpty=n,e=!0),e}onThemeChanged(e){return this._readFromSelections()}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(146);return this._renderLineHighlight=t.get(97),this._renderLineHighlightOnlyWhenFocus=t.get(98),this._wordWrap=i.isViewportWrapping,this._contentLeft=i.contentLeft,this._contentWidth=i.contentWidth,!0}onCursorStateChanged(e){return this._selections=e.selections,this._readFromSelections()}onFlushed(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollWidthChanged||e.scrollTopChanged}onZonesChanged(e){return!0}onFocusChanged(e){return this._renderLineHighlightOnlyWhenFocus?(this._focused=e.isFocused,!0):!1}prepareRender(e){if(!this._shouldRenderThis()){this._renderData=null;return}const t=e.visibleRange.startLineNumber,i=e.visibleRange.endLineNumber,n=[];for(let r=t;r<=i;r++){const a=r-t;n[a]=""}if(this._wordWrap){const r=this._renderOne(e,!1);for(const a of this._cursorLineNumbers){const l=this._context.viewModel.coordinatesConverter,c=l.convertViewPositionToModelPosition(new P(a,1)).lineNumber,d=l.convertModelPositionToViewPosition(new P(c,1)).lineNumber,h=l.convertModelPositionToViewPosition(new P(c,this._context.viewModel.model.getLineMaxColumn(c))).lineNumber,u=Math.max(d,t),f=Math.min(h,i);for(let g=u;g<=f;g++){const p=g-t;n[p]=r}}}const s=this._renderOne(e,!0);for(const r of this._cursorLineNumbers){if(ri)continue;const a=r-t;n[a]=s}this._renderData=n}render(e,t){if(!this._renderData)return"";const i=t-e;return i>=this._renderData.length?"":this._renderData[i]}_shouldRenderInMargin(){return(this._renderLineHighlight==="gutter"||this._renderLineHighlight==="all")&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}_shouldRenderInContent(){return(this._renderLineHighlight==="line"||this._renderLineHighlight==="all")&&this._selectionIsEmpty&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}}class Gne extends D8{_renderOne(e,t){return`
    `}_shouldRenderThis(){return this._shouldRenderInContent()}_shouldRenderOther(){return this._shouldRenderInMargin()}}class Zne extends D8{_renderOne(e,t){return`
    `}_shouldRenderThis(){return!0}_shouldRenderOther(){return this._shouldRenderInContent()}}Sr((o,e)=>{const t=o.getColor(z7);if(t&&(e.addRule(`.monaco-editor .view-overlays .current-line { background-color: ${t}; }`),e.addRule(`.monaco-editor .margin-view-overlays .current-line-margin { background-color: ${t}; border: none; }`)),!t||t.isTransparent()||o.defines(vP)){const i=o.getColor(vP);i&&(e.addRule(`.monaco-editor .view-overlays .current-line-exact { border: 2px solid ${i}; }`),e.addRule(`.monaco-editor .margin-view-overlays .current-line-exact-margin { border: 2px solid ${i}; }`),mc(o.type)&&(e.addRule(".monaco-editor .view-overlays .current-line-exact { border-width: 1px; }"),e.addRule(".monaco-editor .margin-view-overlays .current-line-exact-margin { border-width: 1px; }")))}});class Yne extends mu{constructor(e){super(),this._context=e;const t=this._context.configuration.options;this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged||e.scrollWidthChanged}onZonesChanged(e){return!0}prepareRender(e){const t=e.getDecorationsInViewport();let i=[],n=0;for(let l=0,c=t.length;l{if(l.options.zIndexc.options.zIndex)return 1;const d=l.options.className,h=c.options.className;return dh?1:I.compareRangesUsingStarts(l.range,c.range)});const s=e.visibleRange.startLineNumber,r=e.visibleRange.endLineNumber,a=[];for(let l=s;l<=r;l++){const c=l-s;a[c]=""}this._renderWholeLineDecorations(e,i,a),this._renderNormalDecorations(e,i,a),this._renderResult=a}_renderWholeLineDecorations(e,t,i){const n=e.visibleRange.startLineNumber,s=e.visibleRange.endLineNumber;for(let r=0,a=t.length;r',d=Math.max(l.range.startLineNumber,n),h=Math.min(l.range.endLineNumber,s);for(let u=d;u<=h;u++){const f=u-n;i[f]+=c}}}_renderNormalDecorations(e,t,i){const n=e.visibleRange.startLineNumber;let s=null,r=!1,a=null,l=!1;for(let c=0,d=t.length;c';a[u]+=b}}}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}class Qne extends _s{constructor(e,t,i,n){super(e);const s=this._context.configuration.options,r=s.get(104),a=s.get(75),l=s.get(40),c=s.get(107),d={listenOnDomNode:i.domNode,className:"editor-scrollable "+gk(e.theme.type),useShadows:!1,lazyRender:!0,vertical:r.vertical,horizontal:r.horizontal,verticalHasArrows:r.verticalHasArrows,horizontalHasArrows:r.horizontalHasArrows,verticalScrollbarSize:r.verticalScrollbarSize,verticalSliderSize:r.verticalSliderSize,horizontalScrollbarSize:r.horizontalScrollbarSize,horizontalSliderSize:r.horizontalSliderSize,handleMouseWheel:r.handleMouseWheel,alwaysConsumeMouseWheel:r.alwaysConsumeMouseWheel,arrowSize:r.arrowSize,mouseWheelScrollSensitivity:a,fastScrollSensitivity:l,scrollPredominantAxis:c,scrollByPage:r.scrollByPage};this.scrollbar=this._register(new X0(t.domNode,d,this._context.viewLayout.getScrollable())),vr.write(this.scrollbar.getDomNode(),6),this.scrollbarDomNode=ot(this.scrollbar.getDomNode()),this.scrollbarDomNode.setPosition("absolute"),this._setLayout();const h=(u,f,g)=>{const p={};{const _=u.scrollTop;_&&(p.scrollTop=this._context.viewLayout.getCurrentScrollTop()+_,u.scrollTop=0)}if(g){const _=u.scrollLeft;_&&(p.scrollLeft=this._context.viewLayout.getCurrentScrollLeft()+_,u.scrollLeft=0)}this._context.viewModel.viewLayout.setScrollPosition(p,1)};this._register(U(i.domNode,"scroll",u=>h(i.domNode,!0,!0))),this._register(U(t.domNode,"scroll",u=>h(t.domNode,!0,!1))),this._register(U(n.domNode,"scroll",u=>h(n.domNode,!0,!1))),this._register(U(this.scrollbarDomNode.domNode,"scroll",u=>h(this.scrollbarDomNode.domNode,!0,!1)))}dispose(){super.dispose()}_setLayout(){const e=this._context.configuration.options,t=e.get(146);this.scrollbarDomNode.setLeft(t.contentLeft),e.get(73).side==="right"?this.scrollbarDomNode.setWidth(t.contentWidth+t.minimap.minimapWidth):this.scrollbarDomNode.setWidth(t.contentWidth),this.scrollbarDomNode.setHeight(t.height)}getOverviewRulerLayoutInfo(){return this.scrollbar.getOverviewRulerLayoutInfo()}getDomNode(){return this.scrollbarDomNode}delegateVerticalScrollbarPointerDown(e){this.scrollbar.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){this.scrollbar.delegateScrollFromMouseWheelEvent(e)}onConfigurationChanged(e){if(e.hasChanged(104)||e.hasChanged(75)||e.hasChanged(40)){const t=this._context.configuration.options,i=t.get(104),n=t.get(75),s=t.get(40),r=t.get(107),a={vertical:i.vertical,horizontal:i.horizontal,verticalScrollbarSize:i.verticalScrollbarSize,horizontalScrollbarSize:i.horizontalScrollbarSize,scrollByPage:i.scrollByPage,handleMouseWheel:i.handleMouseWheel,mouseWheelScrollSensitivity:n,fastScrollSensitivity:s,scrollPredominantAxis:r};this.scrollbar.updateOptions(a)}return e.hasChanged(146)&&this._setLayout(),!0}onScrollChanged(e){return!0}onThemeChanged(e){return this.scrollbar.updateClassName("editor-scrollable "+gk(this._context.theme.type)),!0}prepareRender(e){}render(e){this.scrollbar.renderNow()}}class EI{constructor(e,t,i,n,s){this.startLineNumber=e,this.endLineNumber=t,this.className=i,this.tooltip=n,this._decorationToRenderBrand=void 0,this.zIndex=s??0}}class Xne{constructor(e,t,i){this.className=e,this.zIndex=t,this.tooltip=i}}class Jne{constructor(){this.decorations=[]}add(e){this.decorations.push(e)}getDecorations(){return this.decorations}}class I8 extends mu{_render(e,t,i){const n=[];for(let a=e;a<=t;a++){const l=a-e;n[l]=new Jne}if(i.length===0)return n;i.sort((a,l)=>a.className===l.className?a.startLineNumber===l.startLineNumber?a.endLineNumber-l.endLineNumber:a.startLineNumber-l.startLineNumber:a.classNamen)continue;const c=Math.max(a,i),d=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new P(c,0)),h=this._context.viewModel.glyphLanes.getLanesAtLine(d.lineNumber).indexOf(s.preference.lane);t.push(new ise(c,h,s.preference.zIndex,s))}}_collectSortedGlyphRenderRequests(e){const t=[];return this._collectDecorationBasedGlyphRenderRequest(e,t),this._collectWidgetBasedGlyphRenderRequest(e,t),t.sort((i,n)=>i.lineNumber===n.lineNumber?i.laneIndex===n.laneIndex?i.zIndex===n.zIndex?n.type===i.type?i.type===0&&n.type===0?i.className0;){const n=t.peek();if(!n)break;const s=t.takeWhile(a=>a.lineNumber===n.lineNumber&&a.laneIndex===n.laneIndex);if(!s||s.length===0)break;const r=s[0];if(r.type===0){const a=[];for(const l of s){if(l.zIndex!==r.zIndex||l.type!==r.type)break;(a.length===0||a[a.length-1]!==l.className)&&a.push(l.className)}i.push(r.accept(a.join(" ")))}else r.widget.renderInfo={lineNumber:r.lineNumber,laneIndex:r.laneIndex}}this._decorationGlyphsToRender=i}render(e){if(!this._glyphMargin){for(const i of Object.values(this._widgets))i.domNode.setDisplay("none");for(;this._managedDomNodes.length>0;)this._managedDomNodes.pop()?.domNode.remove();return}const t=Math.round(this._glyphMarginWidth/this._glyphMarginDecorationLaneCount);for(const i of Object.values(this._widgets))if(!i.renderInfo)i.domNode.setDisplay("none");else{const n=e.viewportData.relativeVerticalOffset[i.renderInfo.lineNumber-e.viewportData.startLineNumber],s=this._glyphMarginLeft+i.renderInfo.laneIndex*this._lineHeight;i.domNode.setDisplay("block"),i.domNode.setTop(n),i.domNode.setLeft(s),i.domNode.setWidth(t),i.domNode.setHeight(this._lineHeight)}for(let i=0;ithis._decorationGlyphsToRender.length;)this._managedDomNodes.pop()?.domNode.remove()}}class tse{constructor(e,t,i,n){this.lineNumber=e,this.laneIndex=t,this.zIndex=i,this.className=n,this.type=0}accept(e){return new nse(this.lineNumber,this.laneIndex,e)}}class ise{constructor(e,t,i,n){this.lineNumber=e,this.laneIndex=t,this.zIndex=i,this.widget=n,this.type=1}}class nse{constructor(e,t,i){this.lineNumber=e,this.laneIndex=t,this.combinedClassName=i}}class sse extends mu{constructor(e){super(),this._context=e,this._primaryPosition=null;const t=this._context.configuration.options,i=t.get(147),n=t.get(50);this._spaceWidth=n.spaceWidth,this._maxIndentLeft=i.wrappingColumn===-1?-1:i.wrappingColumn*n.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=t.get(16),this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(147),n=t.get(50);return this._spaceWidth=n.spaceWidth,this._maxIndentLeft=i.wrappingColumn===-1?-1:i.wrappingColumn*n.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=t.get(16),!0}onCursorStateChanged(e){const i=e.selections[0].getPosition();return this._primaryPosition?.equals(i)?!1:(this._primaryPosition=i,!0)}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}onLanguageConfigurationChanged(e){return!0}prepareRender(e){if(!this._bracketPairGuideOptions.indentation&&this._bracketPairGuideOptions.bracketPairs===!1){this._renderResult=null;return}const t=e.visibleRange.startLineNumber,i=e.visibleRange.endLineNumber,n=e.scrollWidth,s=this._primaryPosition,r=this.getGuidesByLine(t,Math.min(i+1,this._context.viewModel.getLineCount()),s),a=[];for(let l=t;l<=i;l++){const c=l-t,d=r[c];let h="";const u=e.visibleRangeForPosition(new P(l,1))?.left??0;for(const f of d){const g=f.column===-1?u+(f.visibleColumn-1)*this._spaceWidth:e.visibleRangeForPosition(new P(l,f.column)).left;if(g>n||this._maxIndentLeft>0&&g>this._maxIndentLeft)break;const p=f.horizontalLine?f.horizontalLine.top?"horizontal-top":"horizontal-bottom":"vertical",_=f.horizontalLine?(e.visibleRangeForPosition(new P(l,f.horizontalLine.endColumn))?.left??g+this._spaceWidth)-g:this._spaceWidth;h+=`
    `}a[c]=h}this._renderResult=a}getGuidesByLine(e,t,i){const n=this._bracketPairGuideOptions.bracketPairs!==!1?this._context.viewModel.getBracketGuidesInRangeByLine(e,t,i,{highlightActive:this._bracketPairGuideOptions.highlightActiveBracketPair,horizontalGuides:this._bracketPairGuideOptions.bracketPairsHorizontal===!0?eh.Enabled:this._bracketPairGuideOptions.bracketPairsHorizontal==="active"?eh.EnabledForActive:eh.Disabled,includeInactive:this._bracketPairGuideOptions.bracketPairs===!0}):null,s=this._bracketPairGuideOptions.indentation?this._context.viewModel.getLinesIndentGuides(e,t):null;let r=0,a=0,l=0;if(this._bracketPairGuideOptions.highlightActiveIndentation!==!1&&i){const h=this._context.viewModel.getActiveIndentGuide(i.lineNumber,e,t);r=h.startLineNumber,a=h.endLineNumber,l=h.indent}const{indentSize:c}=this._context.viewModel.model.getOptions(),d=[];for(let h=e;h<=t;h++){const u=new Array;d.push(u);const f=n?n[h-e]:[],g=new Ll(f),p=s?s[h-e]:0;for(let _=1;_<=p;_++){const b=(_-1)*c+1,C=(this._bracketPairGuideOptions.highlightActiveIndentation==="always"||f.length===0)&&r<=h&&h<=a&&_===l;u.push(...g.takeWhile(v=>v.visibleColumn!0)||[])}return d}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}function Pu(o){if(!(o&&o.isTransparent()))return o}Sr((o,e)=>{const t=[{bracketColor:K7,guideColor:pQ,guideColorActive:yQ},{bracketColor:j7,guideColor:_Q,guideColorActive:SQ},{bracketColor:q7,guideColor:bQ,guideColorActive:LQ},{bracketColor:G7,guideColor:CQ,guideColorActive:xQ},{bracketColor:Z7,guideColor:vQ,guideColorActive:kQ},{bracketColor:Y7,guideColor:wQ,guideColorActive:DQ}],i=new c9,n=[{indentColor:tb,indentColorActive:ib},{indentColor:YY,indentColorActive:tQ},{indentColor:QY,indentColorActive:iQ},{indentColor:XY,indentColorActive:nQ},{indentColor:JY,indentColorActive:sQ},{indentColor:eQ,indentColorActive:oQ}],s=t.map(a=>{const l=o.getColor(a.bracketColor),c=o.getColor(a.guideColor),d=o.getColor(a.guideColorActive),h=Pu(Pu(c)??l?.transparent(.3)),u=Pu(Pu(d)??l);if(!(!h||!u))return{guideColor:h,guideColorActive:u}}).filter(_l),r=n.map(a=>{const l=o.getColor(a.indentColor),c=o.getColor(a.indentColorActive),d=Pu(l),h=Pu(c);if(!(!d||!h))return{indentColor:d,indentColorActive:h}}).filter(_l);if(s.length>0){for(let a=0;a<30;a++){const l=s[a%s.length];e.addRule(`.monaco-editor .${i.getInlineClassNameOfLevel(a).replace(/ /g,".")} { --guide-color: ${l.guideColor}; --guide-color-active: ${l.guideColorActive}; }`)}e.addRule(".monaco-editor .vertical { box-shadow: 1px 0 0 0 var(--guide-color) inset; }"),e.addRule(".monaco-editor .horizontal-top { border-top: 1px solid var(--guide-color); }"),e.addRule(".monaco-editor .horizontal-bottom { border-bottom: 1px solid var(--guide-color); }"),e.addRule(`.monaco-editor .vertical.${i.activeClassName} { box-shadow: 1px 0 0 0 var(--guide-color-active) inset; }`),e.addRule(`.monaco-editor .horizontal-top.${i.activeClassName} { border-top: 1px solid var(--guide-color-active); }`),e.addRule(`.monaco-editor .horizontal-bottom.${i.activeClassName} { border-bottom: 1px solid var(--guide-color-active); }`)}if(r.length>0){for(let a=0;a<30;a++){const l=r[a%r.length];e.addRule(`.monaco-editor .lines-content .core-guide-indent.lvl-${a} { --indent-color: ${l.indentColor}; --indent-color-active: ${l.indentColorActive}; }`)}e.addRule(".monaco-editor .lines-content .core-guide-indent { box-shadow: 1px 0 0 0 var(--indent-color) inset; }"),e.addRule(".monaco-editor .lines-content .core-guide-indent.indent-active { box-shadow: 1px 0 0 0 var(--indent-color-active) inset; }")}});class sL{get didDomLayout(){return this._didDomLayout}readClientRect(){if(!this._clientRectRead){this._clientRectRead=!0;const e=this._domNode.getBoundingClientRect();this.markDidDomLayout(),this._clientRectDeltaLeft=e.left,this._clientRectScale=e.width/this._domNode.offsetWidth}}get clientRectDeltaLeft(){return this._clientRectRead||this.readClientRect(),this._clientRectDeltaLeft}get clientRectScale(){return this._clientRectRead||this.readClientRect(),this._clientRectScale}constructor(e,t){this._domNode=e,this.endNode=t,this._didDomLayout=!1,this._clientRectDeltaLeft=0,this._clientRectScale=1,this._clientRectRead=!1}markDidDomLayout(){this._didDomLayout=!0}}class ose{constructor(){this._currentVisibleRange=new I(1,1,1,1)}getCurrentVisibleRange(){return this._currentVisibleRange}setCurrentVisibleRange(e){this._currentVisibleRange=e}}class rse{constructor(e,t,i,n,s,r,a){this.minimalReveal=e,this.lineNumber=t,this.startColumn=i,this.endColumn=n,this.startScrollTop=s,this.stopScrollTop=r,this.scrollType=a,this.type="range",this.minLineNumber=t,this.maxLineNumber=t}}class ase{constructor(e,t,i,n,s){this.minimalReveal=e,this.selections=t,this.startScrollTop=i,this.stopScrollTop=n,this.scrollType=s,this.type="selections";let r=t[0].startLineNumber,a=t[0].endLineNumber;for(let l=1,c=t.length;lnew sl(this._viewLineOptions)}),this.domNode=this._visibleLines.domNode,vr.write(this.domNode,8),this.domNode.setClassName(`view-lines ${Zf}`),qi(this.domNode,s),this._maxLineWidth=0,this._asyncUpdateLineWidths=new ci(()=>{this._updateLineWidthsSlow()},200),this._asyncCheckMonospaceFontAssumptions=new ci(()=>{this._checkMonospaceFontAssumptions()},2e3),this._lastRenderedData=new ose,this._horizontalRevealRequest=null,this._stickyScrollEnabled=n.get(116).enabled,this._maxNumberStickyLines=n.get(116).maxLineCount}dispose(){this._asyncUpdateLineWidths.dispose(),this._asyncCheckMonospaceFontAssumptions.dispose(),super.dispose()}getDomNode(){return this.domNode}onConfigurationChanged(e){this._visibleLines.onConfigurationChanged(e),e.hasChanged(147)&&(this._maxLineWidth=0);const t=this._context.configuration.options,i=t.get(50),n=t.get(147);return this._lineHeight=t.get(67),this._typicalHalfwidthCharacterWidth=i.typicalHalfwidthCharacterWidth,this._isViewportWrapping=n.isViewportWrapping,this._revealHorizontalRightPadding=t.get(101),this._cursorSurroundingLines=t.get(29),this._cursorSurroundingLinesStyle=t.get(30),this._canUseLayerHinting=!t.get(32),this._stickyScrollEnabled=t.get(116).enabled,this._maxNumberStickyLines=t.get(116).maxLineCount,qi(this.domNode,i),this._onOptionsMaybeChanged(),e.hasChanged(146)&&(this._maxLineWidth=0),!0}_onOptionsMaybeChanged(){const e=this._context.configuration,t=new xO(e,this._context.theme.type);if(!this._viewLineOptions.equals(t)){this._viewLineOptions=t;const i=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();for(let s=i;s<=n;s++)this._visibleLines.getVisibleLine(s).onOptionsChanged(this._viewLineOptions);return!0}return!1}onCursorStateChanged(e){const t=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber();let n=!1;for(let s=t;s<=i;s++)n=this._visibleLines.getVisibleLine(s).onSelectionChanged()||n;return n}onDecorationsChanged(e){{const t=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber();for(let n=t;n<=i;n++)this._visibleLines.getVisibleLine(n).onDecorationsChanged()}return!0}onFlushed(e){const t=this._visibleLines.onFlushed(e);return this._maxLineWidth=0,t}onLinesChanged(e){return this._visibleLines.onLinesChanged(e)}onLinesDeleted(e){return this._visibleLines.onLinesDeleted(e)}onLinesInserted(e){return this._visibleLines.onLinesInserted(e)}onRevealRangeRequest(e){const t=this._computeScrollTopToRevealRange(this._context.viewLayout.getFutureViewport(),e.source,e.minimalReveal,e.range,e.selections,e.verticalType);if(t===-1)return!1;let i=this._context.viewLayout.validateScrollPosition({scrollTop:t});e.revealHorizontal?e.range&&e.range.startLineNumber!==e.range.endLineNumber?i={scrollTop:i.scrollTop,scrollLeft:0}:e.range?this._horizontalRevealRequest=new rse(e.minimalReveal,e.range.startLineNumber,e.range.startColumn,e.range.endColumn,this._context.viewLayout.getCurrentScrollTop(),i.scrollTop,e.scrollType):e.selections&&e.selections.length>0&&(this._horizontalRevealRequest=new ase(e.minimalReveal,e.selections,this._context.viewLayout.getCurrentScrollTop(),i.scrollTop,e.scrollType)):this._horizontalRevealRequest=null;const s=Math.abs(this._context.viewLayout.getCurrentScrollTop()-i.scrollTop)<=this._lineHeight?1:e.scrollType;return this._context.viewModel.viewLayout.setScrollPosition(i,s),!0}onScrollChanged(e){if(this._horizontalRevealRequest&&e.scrollLeftChanged&&(this._horizontalRevealRequest=null),this._horizontalRevealRequest&&e.scrollTopChanged){const t=Math.min(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop),i=Math.max(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop);(e.scrollTopi)&&(this._horizontalRevealRequest=null)}return this.domNode.setWidth(e.scrollWidth),this._visibleLines.onScrollChanged(e)||!0}onTokensChanged(e){return this._visibleLines.onTokensChanged(e)}onZonesChanged(e){return this._context.viewModel.viewLayout.setMaxLineWidth(this._maxLineWidth),this._visibleLines.onZonesChanged(e)}onThemeChanged(e){return this._onOptionsMaybeChanged()}getPositionFromDOMInfo(e,t){const i=this._getViewLineDomNode(e);if(i===null)return null;const n=this._getLineNumberFor(i);if(n===-1||n<1||n>this._context.viewModel.getLineCount())return null;if(this._context.viewModel.getLineMaxColumn(n)===1)return new P(n,1);const s=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();if(nr)return null;let a=this._visibleLines.getVisibleLine(n).getColumnOfNodeOffset(e,t);const l=this._context.viewModel.getLineMinColumn(n);return ai)return-1;const n=new sL(this.domNode.domNode,this._textRangeRestingSpot),s=this._visibleLines.getVisibleLine(e).getWidth(n);return this._updateLineWidthsSlowIfDomDidLayout(n),s}linesVisibleRangesForRange(e,t){if(this.shouldRender())return null;const i=e.endLineNumber,n=I.intersectRanges(e,this._lastRenderedData.getCurrentVisibleRange());if(!n)return null;const s=[];let r=0;const a=new sL(this.domNode.domNode,this._textRangeRestingSpot);let l=0;t&&(l=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new P(n.startLineNumber,1)).lineNumber);const c=this._visibleLines.getStartLineNumber(),d=this._visibleLines.getEndLineNumber();for(let h=n.startLineNumber;h<=n.endLineNumber;h++){if(hd)continue;const u=h===n.startLineNumber?n.startColumn:1,f=h!==n.endLineNumber,g=f?this._context.viewModel.getLineMaxColumn(h):n.endColumn,p=this._visibleLines.getVisibleLine(h).getVisibleRangesForRange(h,u,g,a);if(p){if(t&&hthis._visibleLines.getEndLineNumber())return null;const n=new sL(this.domNode.domNode,this._textRangeRestingSpot),s=this._visibleLines.getVisibleLine(e).getVisibleRangesForRange(e,t,i,n);return this._updateLineWidthsSlowIfDomDidLayout(n),s}visibleRangeForPosition(e){const t=this._visibleRangesForLineRange(e.lineNumber,e.column,e.column);return t?new Kie(t.outsideRenderedLine,t.ranges[0].left):null}_updateLineWidthsFast(){return this._updateLineWidths(!0)}_updateLineWidthsSlow(){this._updateLineWidths(!1)}_updateLineWidthsSlowIfDomDidLayout(e){e.didDomLayout&&(this._asyncUpdateLineWidths.isScheduled()||(this._asyncUpdateLineWidths.cancel(),this._updateLineWidthsSlow()))}_updateLineWidths(e){const t=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber();let n=1,s=!0;for(let r=t;r<=i;r++){const a=this._visibleLines.getVisibleLine(r);if(e&&!a.getWidthIsFast()){s=!1;continue}n=Math.max(n,a.getWidth(null))}return s&&t===1&&i===this._context.viewModel.getLineCount()&&(this._maxLineWidth=0),this._ensureMaxLineWidth(n),s}_checkMonospaceFontAssumptions(){let e=-1,t=-1;const i=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();for(let s=i;s<=n;s++){const r=this._visibleLines.getVisibleLine(s);if(r.needsMonospaceFontCheck()){const a=r.getWidth(null);a>t&&(t=a,e=s)}}if(e!==-1&&!this._visibleLines.getVisibleLine(e).monospaceAssumptionsAreValid())for(let s=i;s<=n;s++)this._visibleLines.getVisibleLine(s).onMonospaceAssumptionsInvalidated()}prepareRender(){throw new Error("Not supported")}render(){throw new Error("Not supported")}renderText(e){if(this._visibleLines.renderLines(e),this._lastRenderedData.setCurrentVisibleRange(e.visibleRange),this.domNode.setWidth(this._context.viewLayout.getScrollWidth()),this.domNode.setHeight(Math.min(this._context.viewLayout.getScrollHeight(),1e6)),this._horizontalRevealRequest){const i=this._horizontalRevealRequest;if(e.startLineNumber<=i.minLineNumber&&i.maxLineNumber<=e.endLineNumber){this._horizontalRevealRequest=null,this.onDidRender();const n=this._computeScrollLeftToReveal(i);n&&(this._isViewportWrapping||this._ensureMaxLineWidth(n.maxHorizontalOffset),this._context.viewModel.viewLayout.setScrollPosition({scrollLeft:n.scrollLeft},i.scrollType))}}if(this._updateLineWidthsFast()?this._asyncUpdateLineWidths.cancel():this._asyncUpdateLineWidths.schedule(),Un&&!this._asyncCheckMonospaceFontAssumptions.isScheduled()){const i=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();for(let s=i;s<=n;s++)if(this._visibleLines.getVisibleLine(s).needsMonospaceFontCheck()){this._asyncCheckMonospaceFontAssumptions.schedule();break}}this._linesContent.setLayerHinting(this._canUseLayerHinting),this._linesContent.setContain("strict");const t=this._context.viewLayout.getCurrentScrollTop()-e.bigNumbersDelta;this._linesContent.setTop(-t),this._linesContent.setLeft(-this._context.viewLayout.getCurrentScrollLeft())}_ensureMaxLineWidth(e){const t=Math.ceil(e);this._maxLineWidth0){let b=s[0].startLineNumber,C=s[0].endLineNumber;for(let w=1,v=s.length;wl){if(!d)return-1;_=h}else if(r===5||r===6)if(r===6&&a<=h&&u<=c)_=a;else{const b=Math.max(5*this._lineHeight,l*.2),C=h-b,w=u-l;_=Math.max(w,C)}else if(r===1||r===2)if(r===2&&a<=h&&u<=c)_=a;else{const b=(h+u)/2;_=Math.max(0,b-l/2)}else _=this._computeMinimumScrolling(a,c,h,u,r===3,r===4);return _}_computeScrollLeftToReveal(e){const t=this._context.viewLayout.getCurrentViewport(),i=this._context.configuration.options.get(146),n=t.left,s=n+t.width-i.verticalScrollbarWidth;let r=1073741824,a=0;if(e.type==="range"){const c=this._visibleRangesForLineRange(e.lineNumber,e.startColumn,e.endColumn);if(!c)return null;for(const d of c.ranges)r=Math.min(r,Math.round(d.left)),a=Math.max(a,Math.round(d.left+d.width))}else for(const c of e.selections){if(c.startLineNumber!==c.endLineNumber)return null;const d=this._visibleRangesForLineRange(c.startLineNumber,c.startColumn,c.endColumn);if(!d)return null;for(const h of d.ranges)r=Math.min(r,Math.round(h.left)),a=Math.max(a,Math.round(h.left+h.width))}return e.minimalReveal||(r=Math.max(0,r-t0.HORIZONTAL_EXTRA_PX),a+=this._revealHorizontalRightPadding),e.type==="selections"&&a-r>t.width?null:{scrollLeft:this._computeMinimumScrolling(n,s,r,a),maxHorizontalOffset:a}}_computeMinimumScrolling(e,t,i,n,s,r){e=e|0,t=t|0,i=i|0,n=n|0,s=!!s,r=!!r;const a=t-e;if(n-it)return Math.max(0,n-a)}else return i;return e}};t0.HORIZONTAL_EXTRA_PX=30;let NI=t0;class lse extends I8{constructor(e){super(),this._context=e;const i=this._context.configuration.options.get(146);this._decorationsLeft=i.decorationsLeft,this._decorationsWidth=i.decorationsWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const i=this._context.configuration.options.get(146);return this._decorationsLeft=i.decorationsLeft,this._decorationsWidth=i.decorationsWidth,!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}_getDecorations(e){const t=e.getDecorationsInViewport(),i=[];let n=0;for(let s=0,r=t.length;s',l=[];for(let c=t;c<=i;c++){const d=c-t,h=n[d].getDecorations();let u="";for(const f of h){let g='
    ';s[a]=c}this._renderResult=s}render(e,t){return this._renderResult?this._renderResult[t-e]:""}}const Yl=class Yl{constructor(e,t,i,n){this._rgba8Brand=void 0,this.r=Yl._clamp(e),this.g=Yl._clamp(t),this.b=Yl._clamp(i),this.a=Yl._clamp(n)}equals(e){return this.r===e.r&&this.g===e.g&&this.b===e.b&&this.a===e.a}static _clamp(e){return e<0?0:e>255?255:e|0}};Yl.Empty=new Yl(0,0,0,0);let Sl=Yl;const i0=class i0 extends z{static getInstance(){return this._INSTANCE||(this._INSTANCE=new i0),this._INSTANCE}constructor(){super(),this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._updateColorMap(),this._register(si.onDidChange(e=>{e.changedColorMap&&this._updateColorMap()}))}_updateColorMap(){const e=si.getColorMap();if(!e){this._colors=[Sl.Empty],this._backgroundIsLight=!0;return}this._colors=[Sl.Empty];for(let i=1;i=.5,this._onDidChange.fire(void 0)}getColor(e){return(e<1||e>=this._colors.length)&&(e=2),this._colors[e]}backgroundIsLight(){return this._backgroundIsLight}};i0._INSTANCE=null;let Pv=i0;const dse=(()=>{const o=[];for(let e=32;e<=126;e++)o.push(e);return o.push(65533),o})(),hse=(o,e)=>(o-=32,o<0||o>96?e<=2?(o+96)%96:95:o);class k_{constructor(e,t){this.scale=t,this._minimapCharRendererBrand=void 0,this.charDataNormal=k_.soften(e,12/15),this.charDataLight=k_.soften(e,50/60)}static soften(e,t){const i=new Uint8ClampedArray(e.length);for(let n=0,s=e.length;ne.width||i+g>e.height){console.warn("bad render request outside image data");return}const p=d?this.charDataLight:this.charDataNormal,_=hse(n,c),b=e.width*4,C=a.r,w=a.g,v=a.b,y=s.r-C,x=s.g-w,L=s.b-v,E=Math.max(r,l),N=e.data;let H=_*u*f,F=i*b+t*4;for(let W=0;We.width||i+h>e.height){console.warn("bad render request outside image data");return}const u=e.width*4,f=.5*(s/255),g=r.r,p=r.g,_=r.b,b=n.r-g,C=n.g-p,w=n.b-_,v=g+b*f,y=p+C*f,x=_+w*f,L=Math.max(s,a),E=e.data;let N=i*u+t*4;for(let H=0;H{const e=new Uint8ClampedArray(o.length/2);for(let t=0;t>1]=PO[o[t]]<<4|PO[o[t+1]]&15;return e},FO={1:ng(()=>OO("0000511D6300CF609C709645A78432005642574171487021003C451900274D35D762755E8B629C5BA856AF57BA649530C167D1512A272A3F6038604460398526BCA2A968DB6F8957C768BE5FBE2FB467CF5D8D5B795DC7625B5DFF50DE64C466DB2FC47CD860A65E9A2EB96CB54CE06DA763AB2EA26860524D3763536601005116008177A8705E53AB738E6A982F88BAA35B5F5B626D9C636B449B737E5B7B678598869A662F6B5B8542706C704C80736A607578685B70594A49715A4522E792")),2:ng(()=>OO("000000000000000055394F383D2800008B8B1F210002000081B1CBCBCC820000847AAF6B9AAF2119BE08B8881AD60000A44FD07DCCF107015338130C00000000385972265F390B406E2437634B4B48031B12B8A0847000001E15B29A402F0000000000004B33460B00007A752C2A0000000000004D3900000084394B82013400ABA5CFC7AD9C0302A45A3E5A98AB000089A43382D97900008BA54AA087A70A0248A6A7AE6DBE0000BF6F94987EA40A01A06DCFA7A7A9030496C32F77891D0000A99FB1A0AFA80603B29AB9CA75930D010C0948354D3900000C0948354F37460D0028BE673D8400000000AF9D7B6E00002B007AA8933400007AA642675C2700007984CFB9C3985B768772A8A6B7B20000CAAECAAFC4B700009F94A6009F840009D09F9BA4CA9C0000CC8FC76DC87F0000C991C472A2000000A894A48CA7B501079BA2C9C69BA20000B19A5D3FA89000005CA6009DA2960901B0A7F0669FB200009D009E00B7890000DAD0F5D092820000D294D4C48BD10000B5A7A4A3B1A50402CAB6CBA6A2000000B5A7A4A3B1A8044FCDADD19D9CB00000B7778F7B8AAE0803C9AB5D3F5D3F00009EA09EA0BAB006039EA0989A8C7900009B9EF4D6B7C00000A9A7816CACA80000ABAC84705D3F000096DA635CDC8C00006F486F266F263D4784006124097B00374F6D2D6D2D6D4A3A95872322000000030000000000008D8939130000000000002E22A5C9CBC70600AB25C0B5C9B400061A2DB04CA67001082AA6BEBEBFC606002321DACBC19E03087AA08B6768380000282FBAC0B8CA7A88AD25BBA5A29900004C396C5894A6000040485A6E356E9442A32CD17EADA70000B4237923628600003E2DE9C1D7B500002F25BBA5A2990000231DB6AFB4A804023025C0B5CAB588062B2CBDBEC0C706882435A75CA20000002326BD6A82A908048B4B9A5A668000002423A09CB4BB060025259C9D8A7900001C1FCAB2C7C700002A2A9387ABA200002626A4A47D6E9D14333163A0C87500004B6F9C2D643A257049364936493647358A34438355497F1A0000A24C1D590000D38DFFBDD4CD3126"))};class gp{static create(e,t){if(this.lastCreated&&e===this.lastCreated.scale&&t===this.lastFontFamily)return this.lastCreated;let i;return FO[e]?i=new k_(FO[e](),e):i=gp.createFromSampleData(gp.createSampleData(t).data,e),this.lastFontFamily=t,this.lastCreated=i,i}static createSampleData(e){const t=document.createElement("canvas"),i=t.getContext("2d");t.style.height="16px",t.height=16,t.width=960,t.style.width="960px",i.fillStyle="#ffffff",i.font=`bold 16px ${e}`,i.textBaseline="middle";let n=0;for(const s of dse)i.fillText(String.fromCharCode(s),n,16/2),n+=10;return i.getImageData(0,0,960,16)}static createFromSampleData(e,t){if(e.length!==61440)throw new Error("Unexpected source in MinimapCharRenderer");const n=gp._downsample(e,t);return new k_(n,t)}static _downsampleChar(e,t,i,n,s){const r=1*s,a=2*s;let l=n,c=0;for(let d=0;d0){const c=255/l;for(let d=0;dgp.create(this.fontScale,l.fontFamily)),this.defaultBackgroundColor=i.getColor(2),this.backgroundColor=Yf._getMinimapBackground(t,this.defaultBackgroundColor),this.foregroundAlpha=Yf._getMinimapForegroundOpacity(t)}static _getMinimapBackground(e,t){const i=e.getColor(GK);return i?new Sl(i.rgba.r,i.rgba.g,i.rgba.b,Math.round(255*i.rgba.a)):t}static _getMinimapForegroundOpacity(e){const t=e.getColor(ZK);return t?Sl._clamp(Math.round(255*t.rgba.a)):255}static _getSectionHeaderColor(e,t){const i=e.getColor(Sa);return i?new Sl(i.rgba.r,i.rgba.g,i.rgba.b,Math.round(255*i.rgba.a)):t}equals(e){return this.renderMinimap===e.renderMinimap&&this.size===e.size&&this.minimapHeightIsEditorHeight===e.minimapHeightIsEditorHeight&&this.scrollBeyondLastLine===e.scrollBeyondLastLine&&this.paddingTop===e.paddingTop&&this.paddingBottom===e.paddingBottom&&this.showSlider===e.showSlider&&this.autohide===e.autohide&&this.pixelRatio===e.pixelRatio&&this.typicalHalfwidthCharacterWidth===e.typicalHalfwidthCharacterWidth&&this.lineHeight===e.lineHeight&&this.minimapLeft===e.minimapLeft&&this.minimapWidth===e.minimapWidth&&this.minimapHeight===e.minimapHeight&&this.canvasInnerWidth===e.canvasInnerWidth&&this.canvasInnerHeight===e.canvasInnerHeight&&this.canvasOuterWidth===e.canvasOuterWidth&&this.canvasOuterHeight===e.canvasOuterHeight&&this.isSampling===e.isSampling&&this.editorHeight===e.editorHeight&&this.fontScale===e.fontScale&&this.minimapLineHeight===e.minimapLineHeight&&this.minimapCharWidth===e.minimapCharWidth&&this.sectionHeaderFontSize===e.sectionHeaderFontSize&&this.sectionHeaderLetterSpacing===e.sectionHeaderLetterSpacing&&this.defaultBackgroundColor&&this.defaultBackgroundColor.equals(e.defaultBackgroundColor)&&this.backgroundColor&&this.backgroundColor.equals(e.backgroundColor)&&this.foregroundAlpha===e.foregroundAlpha}}class mp{constructor(e,t,i,n,s,r,a,l,c){this.scrollTop=e,this.scrollHeight=t,this.sliderNeeded=i,this._computedSliderRatio=n,this.sliderTop=s,this.sliderHeight=r,this.topPaddingLineCount=a,this.startLineNumber=l,this.endLineNumber=c}getDesiredScrollTopFromDelta(e){return Math.round(this.scrollTop+e/this._computedSliderRatio)}getDesiredScrollTopFromTouchLocation(e){return Math.round((e-this.sliderHeight/2)/this._computedSliderRatio)}intersectWithViewport(e){const t=Math.max(this.startLineNumber,e.startLineNumber),i=Math.min(this.endLineNumber,e.endLineNumber);return t>i?null:[t,i]}getYForLineNumber(e,t){return+(e-this.startLineNumber+this.topPaddingLineCount)*t}static create(e,t,i,n,s,r,a,l,c,d,h){const u=e.pixelRatio,f=e.minimapLineHeight,g=Math.floor(e.canvasInnerHeight/f),p=e.lineHeight;if(e.minimapHeightIsEditorHeight){let x=l*e.lineHeight+e.paddingTop+e.paddingBottom;e.scrollBeyondLastLine&&(x+=Math.max(0,s-e.lineHeight-e.paddingBottom));const L=Math.max(1,Math.floor(s*s/x)),E=Math.max(0,e.minimapHeight-L),N=E/(d-s),H=c*N,F=E>0,W=Math.floor(e.canvasInnerHeight/e.minimapLineHeight),j=Math.floor(e.paddingTop/e.lineHeight);return new mp(c,d,F,N,H,L,j,1,Math.min(a,W))}let _;if(r&&i!==a){const x=i-t+1;_=Math.floor(x*f/u)}else{const x=s/p;_=Math.floor(x*f/u)}const b=Math.floor(e.paddingTop/p);let C=Math.floor(e.paddingBottom/p);if(e.scrollBeyondLastLine){const x=s/p;C=Math.max(C,x-1)}let w;if(C>0){const x=s/p;w=(b+a+C-x-1)*f/u}else w=Math.max(0,(b+a)*f/u-_);w=Math.min(e.minimapHeight-_,w);const v=w/(d-s),y=c*v;if(g>=b+a+C){const x=w>0;return new mp(c,d,x,v,y,_,b,1,a)}else{let x;t>1?x=t+b:x=Math.max(1,c/p);let L,E=Math.max(1,Math.floor(x-y*u/f));Ec&&(E=Math.min(E,h.startLineNumber),L=Math.max(L,h.topPaddingLineCount)),h.scrollTop=e.paddingTop?F=(t-E+L+H)*f/u:F=c/e.paddingTop*(L+H)*f/u,new mp(c,d,!0,v,F,_,L,E,N)}}}const n0=class n0{constructor(e){this.dy=e}onContentChanged(){this.dy=-1}onTokensChanged(){this.dy=-1}};n0.INVALID=new n0(-1);let Ov=n0;class BO{constructor(e,t,i){this.renderedLayout=e,this._imageData=t,this._renderedLines=new L8({createLine:()=>Ov.INVALID}),this._renderedLines._set(e.startLineNumber,i)}linesEquals(e){if(!this.scrollEquals(e))return!1;const i=this._renderedLines._get().lines;for(let n=0,s=i.length;n1){for(let b=0,C=n-1;b0&&this.minimapLines[i-1]>=e;)i--;let n=this.modelLineToMinimapLine(t)-1;for(;n+1t)return null}return[i+1,n+1]}decorationLineRangeToMinimapLineRange(e,t){let i=this.modelLineToMinimapLine(e),n=this.modelLineToMinimapLine(t);return e!==t&&n===i&&(n===this.minimapLines.length?i>1&&i--:n++),[i,n]}onLinesDeleted(e){const t=e.toLineNumber-e.fromLineNumber+1;let i=this.minimapLines.length,n=0;for(let s=this.minimapLines.length-1;s>=0&&!(this.minimapLines[s]=0&&!(this.minimapLines[i]0,scrollWidth:e.scrollWidth,scrollHeight:e.scrollHeight,viewportStartLineNumber:t,viewportEndLineNumber:i,viewportStartLineNumberVerticalOffset:e.getVerticalOffsetForLineNumber(t),scrollTop:e.scrollTop,scrollLeft:e.scrollLeft,viewportWidth:e.viewportWidth,viewportHeight:e.viewportHeight};this._actual.render(n)}_recreateLineSampling(){this._minimapSelections=null;const e=!!this._samplingState,[t,i]=D_.compute(this.options,this._context.viewModel.getLineCount(),this._samplingState);if(this._samplingState=t,e&&this._samplingState)for(const n of i)switch(n.type){case"deleted":this._actual.onLinesDeleted(n.deleteFromLineNumber,n.deleteToLineNumber);break;case"inserted":this._actual.onLinesInserted(n.insertFromLineNumber,n.insertToLineNumber);break;case"flush":this._actual.onFlushed();break}}getLineCount(){return this._samplingState?this._samplingState.minimapLines.length:this._context.viewModel.getLineCount()}getRealLineCount(){return this._context.viewModel.getLineCount()}getLineContent(e){return this._samplingState?this._context.viewModel.getLineContent(this._samplingState.minimapLines[e-1]):this._context.viewModel.getLineContent(e)}getLineMaxColumn(e){return this._samplingState?this._context.viewModel.getLineMaxColumn(this._samplingState.minimapLines[e-1]):this._context.viewModel.getLineMaxColumn(e)}getMinimapLinesRenderingData(e,t,i){if(this._samplingState){const n=[];for(let s=0,r=t-e+1;s!n.options.minimap?.sectionHeaderStyle);if(this._samplingState){const n=[];for(const s of i){if(!s.options.minimap)continue;const r=s.range,a=this._samplingState.modelLineToMinimapLine(r.startLineNumber),l=this._samplingState.modelLineToMinimapLine(r.endLineNumber);n.push(new h8(new I(a,r.startColumn,l,r.endColumn),s.options))}return n}return i}getSectionHeaderDecorationsInViewport(e,t){const i=this.options.minimapLineHeight,s=this.options.sectionHeaderFontSize/i;return e=Math.floor(Math.max(1,e-s)),this._getMinimapDecorationsInViewport(e,t).filter(r=>!!r.options.minimap?.sectionHeaderStyle)}_getMinimapDecorationsInViewport(e,t){let i;if(this._samplingState){const n=this._samplingState.minimapLines[e-1],s=this._samplingState.minimapLines[t-1];i=new I(n,1,s,this._context.viewModel.getLineMaxColumn(s))}else i=new I(e,1,t,this._context.viewModel.getLineMaxColumn(t));return this._context.viewModel.getMinimapDecorationsInRange(i)}getSectionHeaderText(e,t){const i=e.options.minimap?.sectionHeaderText;if(!i)return null;const n=this._sectionHeaderCache.get(i);if(n)return n;const s=t(i);return this._sectionHeaderCache.set(i,s),s}getOptions(){return this._context.viewModel.model.getOptions()}revealLineNumber(e){this._samplingState&&(e=this._samplingState.minimapLines[e-1]),this._context.viewModel.revealRange("mouse",!1,new I(e,1,e,1),1,0)}setScrollTop(e){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:e},1)}}class uf extends z{constructor(e,t){super(),this._renderDecorations=!1,this._gestureInProgress=!1,this._theme=e,this._model=t,this._lastRenderData=null,this._buffers=null,this._selectionColor=this._theme.getColor(NA),this._domNode=ot(document.createElement("div")),vr.write(this._domNode,9),this._domNode.setClassName(this._getMinimapDomNodeClassName()),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._shadow=ot(document.createElement("div")),this._shadow.setClassName("minimap-shadow-hidden"),this._domNode.appendChild(this._shadow),this._canvas=ot(document.createElement("canvas")),this._canvas.setPosition("absolute"),this._canvas.setLeft(0),this._domNode.appendChild(this._canvas),this._decorationsCanvas=ot(document.createElement("canvas")),this._decorationsCanvas.setPosition("absolute"),this._decorationsCanvas.setClassName("minimap-decorations-layer"),this._decorationsCanvas.setLeft(0),this._domNode.appendChild(this._decorationsCanvas),this._slider=ot(document.createElement("div")),this._slider.setPosition("absolute"),this._slider.setClassName("minimap-slider"),this._slider.setLayerHinting(!0),this._slider.setContain("strict"),this._domNode.appendChild(this._slider),this._sliderHorizontal=ot(document.createElement("div")),this._sliderHorizontal.setPosition("absolute"),this._sliderHorizontal.setClassName("minimap-slider-horizontal"),this._slider.appendChild(this._sliderHorizontal),this._applyLayout(),this._pointerDownListener=jt(this._domNode.domNode,ee.POINTER_DOWN,i=>{if(i.preventDefault(),this._model.options.renderMinimap===0||!this._lastRenderData)return;if(this._model.options.size!=="proportional"){if(i.button===0&&this._lastRenderData){const c=gi(this._slider.domNode),d=c.top+c.height/2;this._startSliderDragging(i,d,this._lastRenderData.renderedLayout)}return}const s=this._model.options.minimapLineHeight,r=this._model.options.canvasInnerHeight/this._model.options.canvasOuterHeight*i.offsetY;let l=Math.floor(r/s)+this._lastRenderData.renderedLayout.startLineNumber-this._lastRenderData.renderedLayout.topPaddingLineCount;l=Math.min(l,this._model.getLineCount()),this._model.revealLineNumber(l)}),this._sliderPointerMoveMonitor=new Hg,this._sliderPointerDownListener=jt(this._slider.domNode,ee.POINTER_DOWN,i=>{i.preventDefault(),i.stopPropagation(),i.button===0&&this._lastRenderData&&this._startSliderDragging(i,i.pageY,this._lastRenderData.renderedLayout)}),this._gestureDisposable=fn.addTarget(this._domNode.domNode),this._sliderTouchStartListener=U(this._domNode.domNode,St.Start,i=>{i.preventDefault(),i.stopPropagation(),this._lastRenderData&&(this._slider.toggleClassName("active",!0),this._gestureInProgress=!0,this.scrollDueToTouchEvent(i))},{passive:!1}),this._sliderTouchMoveListener=U(this._domNode.domNode,St.Change,i=>{i.preventDefault(),i.stopPropagation(),this._lastRenderData&&this._gestureInProgress&&this.scrollDueToTouchEvent(i)},{passive:!1}),this._sliderTouchEndListener=jt(this._domNode.domNode,St.End,i=>{i.preventDefault(),i.stopPropagation(),this._gestureInProgress=!1,this._slider.toggleClassName("active",!1)})}_startSliderDragging(e,t,i){if(!e.target||!(e.target instanceof Element))return;const n=e.pageX;this._slider.toggleClassName("active",!0);const s=(r,a)=>{const l=gi(this._domNode.domNode),c=Math.min(Math.abs(a-n),Math.abs(a-l.left),Math.abs(a-l.left-l.width));if(kn&&c>fse){this._model.setScrollTop(i.scrollTop);return}const d=r-t;this._model.setScrollTop(i.getDesiredScrollTopFromDelta(d))};e.pageY!==t&&s(e.pageY,n),this._sliderPointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,r=>s(r.pageY,r.pageX),()=>{this._slider.toggleClassName("active",!1)})}scrollDueToTouchEvent(e){const t=this._domNode.domNode.getBoundingClientRect().top,i=this._lastRenderData.renderedLayout.getDesiredScrollTopFromTouchLocation(e.pageY-t);this._model.setScrollTop(i)}dispose(){this._pointerDownListener.dispose(),this._sliderPointerMoveMonitor.dispose(),this._sliderPointerDownListener.dispose(),this._gestureDisposable.dispose(),this._sliderTouchStartListener.dispose(),this._sliderTouchMoveListener.dispose(),this._sliderTouchEndListener.dispose(),super.dispose()}_getMinimapDomNodeClassName(){const e=["minimap"];return this._model.options.showSlider==="always"?e.push("slider-always"):e.push("slider-mouseover"),this._model.options.autohide&&e.push("autohide"),e.join(" ")}getDomNode(){return this._domNode}_applyLayout(){this._domNode.setLeft(this._model.options.minimapLeft),this._domNode.setWidth(this._model.options.minimapWidth),this._domNode.setHeight(this._model.options.minimapHeight),this._shadow.setHeight(this._model.options.minimapHeight),this._canvas.setWidth(this._model.options.canvasOuterWidth),this._canvas.setHeight(this._model.options.canvasOuterHeight),this._canvas.domNode.width=this._model.options.canvasInnerWidth,this._canvas.domNode.height=this._model.options.canvasInnerHeight,this._decorationsCanvas.setWidth(this._model.options.canvasOuterWidth),this._decorationsCanvas.setHeight(this._model.options.canvasOuterHeight),this._decorationsCanvas.domNode.width=this._model.options.canvasInnerWidth,this._decorationsCanvas.domNode.height=this._model.options.canvasInnerHeight,this._slider.setWidth(this._model.options.minimapWidth)}_getBuffer(){return this._buffers||this._model.options.canvasInnerWidth>0&&this._model.options.canvasInnerHeight>0&&(this._buffers=new j2(this._canvas.domNode.getContext("2d"),this._model.options.canvasInnerWidth,this._model.options.canvasInnerHeight,this._model.options.backgroundColor)),this._buffers?this._buffers.getBuffer():null}onDidChangeOptions(){this._lastRenderData=null,this._buffers=null,this._applyLayout(),this._domNode.setClassName(this._getMinimapDomNodeClassName())}onSelectionChanged(){return this._renderDecorations=!0,!0}onDecorationsChanged(){return this._renderDecorations=!0,!0}onFlushed(){return this._lastRenderData=null,!0}onLinesChanged(e,t){return this._lastRenderData?this._lastRenderData.onLinesChanged(e,t):!1}onLinesDeleted(e,t){return this._lastRenderData?.onLinesDeleted(e,t),!0}onLinesInserted(e,t){return this._lastRenderData?.onLinesInserted(e,t),!0}onScrollChanged(){return this._renderDecorations=!0,!0}onThemeChanged(){return this._selectionColor=this._theme.getColor(NA),this._renderDecorations=!0,!0}onTokensChanged(e){return this._lastRenderData?this._lastRenderData.onTokensChanged(e):!1}onTokensColorsChanged(){return this._lastRenderData=null,this._buffers=null,!0}onZonesChanged(){return this._lastRenderData=null,!0}render(e){if(this._model.options.renderMinimap===0){this._shadow.setClassName("minimap-shadow-hidden"),this._sliderHorizontal.setWidth(0),this._sliderHorizontal.setHeight(0);return}e.scrollLeft+e.viewportWidth>=e.scrollWidth?this._shadow.setClassName("minimap-shadow-hidden"):this._shadow.setClassName("minimap-shadow-visible");const i=mp.create(this._model.options,e.viewportStartLineNumber,e.viewportEndLineNumber,e.viewportStartLineNumberVerticalOffset,e.viewportHeight,e.viewportContainsWhitespaceGaps,this._model.getLineCount(),this._model.getRealLineCount(),e.scrollTop,e.scrollHeight,this._lastRenderData?this._lastRenderData.renderedLayout:null);this._slider.setDisplay(i.sliderNeeded?"block":"none"),this._slider.setTop(i.sliderTop),this._slider.setHeight(i.sliderHeight),this._sliderHorizontal.setLeft(0),this._sliderHorizontal.setWidth(this._model.options.minimapWidth),this._sliderHorizontal.setTop(0),this._sliderHorizontal.setHeight(i.sliderHeight),this.renderDecorations(i),this._lastRenderData=this.renderLines(i)}renderDecorations(e){if(this._renderDecorations){this._renderDecorations=!1;const t=this._model.getSelections();t.sort(I.compareRangesUsingStarts);const i=this._model.getMinimapDecorationsInViewport(e.startLineNumber,e.endLineNumber);i.sort((u,f)=>(u.options.zIndex||0)-(f.options.zIndex||0));const{canvasInnerWidth:n,canvasInnerHeight:s}=this._model.options,r=this._model.options.minimapLineHeight,a=this._model.options.minimapCharWidth,l=this._model.getOptions().tabSize,c=this._decorationsCanvas.domNode.getContext("2d");c.clearRect(0,0,n,s);const d=new WO(e.startLineNumber,e.endLineNumber,!1);this._renderSelectionLineHighlights(c,t,d,e,r),this._renderDecorationsLineHighlights(c,i,d,e,r);const h=new WO(e.startLineNumber,e.endLineNumber,null);this._renderSelectionsHighlights(c,t,h,e,r,l,a,n),this._renderDecorationsHighlights(c,i,h,e,r,l,a,n),this._renderSectionHeaders(e)}}_renderSelectionLineHighlights(e,t,i,n,s){if(!this._selectionColor||this._selectionColor.isTransparent())return;e.fillStyle=this._selectionColor.transparent(.5).toString();let r=0,a=0;for(const l of t){const c=n.intersectWithViewport(l);if(!c)continue;const[d,h]=c;for(let g=d;g<=h;g++)i.set(g,!0);const u=n.getYForLineNumber(d,s),f=n.getYForLineNumber(h,s);a>=u||(a>r&&e.fillRect(Ar,r,e.canvas.width,a-r),r=u),a=f}a>r&&e.fillRect(Ar,r,e.canvas.width,a-r)}_renderDecorationsLineHighlights(e,t,i,n,s){const r=new Map;for(let a=t.length-1;a>=0;a--){const l=t[a],c=l.options.minimap;if(!c||c.position!==1)continue;const d=n.intersectWithViewport(l.range);if(!d)continue;const[h,u]=d,f=c.getColor(this._theme.value);if(!f||f.isTransparent())continue;let g=r.get(f.toString());g||(g=f.transparent(.5).toString(),r.set(f.toString(),g)),e.fillStyle=g;for(let p=h;p<=u;p++){if(i.has(p))continue;i.set(p,!0);const _=n.getYForLineNumber(h,s);e.fillRect(Ar,_,e.canvas.width,s)}}}_renderSelectionsHighlights(e,t,i,n,s,r,a,l){if(!(!this._selectionColor||this._selectionColor.isTransparent()))for(const c of t){const d=n.intersectWithViewport(c);if(!d)continue;const[h,u]=d;for(let f=h;f<=u;f++)this.renderDecorationOnLine(e,i,c,this._selectionColor,n,f,s,s,r,a,l)}}_renderDecorationsHighlights(e,t,i,n,s,r,a,l){for(const c of t){const d=c.options.minimap;if(!d)continue;const h=n.intersectWithViewport(c.range);if(!h)continue;const[u,f]=h,g=d.getColor(this._theme.value);if(!(!g||g.isTransparent()))for(let p=u;p<=f;p++)switch(d.position){case 1:this.renderDecorationOnLine(e,i,c.range,g,n,p,s,s,r,a,l);continue;case 2:{const _=n.getYForLineNumber(p,s);this.renderDecoration(e,g,2,_,gse,s);continue}}}}renderDecorationOnLine(e,t,i,n,s,r,a,l,c,d,h){const u=s.getYForLineNumber(r,l);if(u+a<0||u>this._model.options.canvasInnerHeight)return;const{startLineNumber:f,endLineNumber:g}=i,p=f===r?i.startColumn:1,_=g===r?i.endColumn:this._model.getLineMaxColumn(r),b=this.getXOffsetForPosition(t,r,p,c,d,h),C=this.getXOffsetForPosition(t,r,_,c,d,h);this.renderDecoration(e,n,b,u,C-b,a)}getXOffsetForPosition(e,t,i,n,s,r){if(i===1)return Ar;if((i-1)*s>=r)return r;let l=e.get(t);if(!l){const c=this._model.getLineContent(t);l=[Ar];let d=Ar;for(let h=1;h=r){l[h]=r;break}l[h]=g,d=g}e.set(t,l)}return i-1p.range.startLineNumber-_.range.startLineNumber);const g=uf._fitSectionHeader.bind(null,u,r-Ar);for(const p of f){const _=e.getYForLineNumber(p.range.startLineNumber,t)+i,b=_-i,C=b+2,w=this._model.getSectionHeaderText(p,g);uf._renderSectionLabel(u,w,p.options.minimap?.sectionHeaderStyle===2,l,d,r,b,s,_,C)}}static _fitSectionHeader(e,t,i){if(!i)return i;const n="…",s=e.measureText(i).width,r=e.measureText(n).width;if(s<=t||s<=r)return i;const a=i.length,l=s/i.length,c=Math.floor((t-r)/l)-1;let d=Math.ceil(c/2);for(;d>0&&/\s/.test(i[d-1]);)--d;return i.substring(0,d)+n+i.substring(a-(c-d))}static _renderSectionLabel(e,t,i,n,s,r,a,l,c,d){t&&(e.fillStyle=n,e.fillRect(0,a,r,l),e.fillStyle=s,e.fillText(t,Ar,c)),i&&(e.beginPath(),e.moveTo(0,d),e.lineTo(r,d),e.closePath(),e.stroke())}renderLines(e){const t=e.startLineNumber,i=e.endLineNumber,n=this._model.options.minimapLineHeight;if(this._lastRenderData&&this._lastRenderData.linesEquals(e)){const G=this._lastRenderData._get();return new BO(e,G.imageData,G.lines)}const s=this._getBuffer();if(!s)return null;const[r,a,l]=uf._renderUntouchedLines(s,e.topPaddingLineCount,t,i,n,this._lastRenderData),c=this._model.getMinimapLinesRenderingData(t,i,l),d=this._model.getOptions().tabSize,h=this._model.options.defaultBackgroundColor,u=this._model.options.backgroundColor,f=this._model.options.foregroundAlpha,g=this._model.tokensColorTracker,p=g.backgroundIsLight(),_=this._model.options.renderMinimap,b=this._model.options.charRenderer(),C=this._model.options.fontScale,w=this._model.options.minimapCharWidth,y=(_===1?2:3)*C,x=n>y?Math.floor((n-y)/2):0,L=u.a/255,E=new Sl(Math.round((u.r-h.r)*L+h.r),Math.round((u.g-h.g)*L+h.g),Math.round((u.b-h.b)*L+h.b),255);let N=e.topPaddingLineCount*n;const H=[];for(let G=0,ne=i-t+1;G=0&&FC)return;const W=_.charCodeAt(y);if(W===9){const j=u-(y+x)%u;x+=j-1,v+=j*r}else if(W===32)v+=r;else{const j=Rc(W)?2:1;for(let B=0;BC)return}}}}}class WO{constructor(e,t,i){this._startLineNumber=e,this._endLineNumber=t,this._defaultValue=i,this._values=[];for(let n=0,s=this._endLineNumber-this._startLineNumber+1;nthis._endLineNumber||(this._values[e-this._startLineNumber]=t)}get(e){return ethis._endLineNumber?this._defaultValue:this._values[e-this._startLineNumber]}}class pse extends _s{constructor(e,t){super(e),this._viewDomNode=t;const n=this._context.configuration.options.get(146);this._widgets={},this._verticalScrollbarWidth=n.verticalScrollbarWidth,this._minimapWidth=n.minimap.minimapWidth,this._horizontalScrollbarHeight=n.horizontalScrollbarHeight,this._editorHeight=n.height,this._editorWidth=n.width,this._viewDomNodeRect={top:0,left:0,width:0,height:0},this._domNode=ot(document.createElement("div")),vr.write(this._domNode,4),this._domNode.setClassName("overlayWidgets"),this.overflowingOverlayWidgetsDomNode=ot(document.createElement("div")),vr.write(this.overflowingOverlayWidgetsDomNode,5),this.overflowingOverlayWidgetsDomNode.setClassName("overflowingOverlayWidgets")}dispose(){super.dispose(),this._widgets={}}getDomNode(){return this._domNode}onConfigurationChanged(e){const i=this._context.configuration.options.get(146);return this._verticalScrollbarWidth=i.verticalScrollbarWidth,this._minimapWidth=i.minimap.minimapWidth,this._horizontalScrollbarHeight=i.horizontalScrollbarHeight,this._editorHeight=i.height,this._editorWidth=i.width,!0}addWidget(e){const t=ot(e.getDomNode());this._widgets[e.getId()]={widget:e,preference:null,domNode:t},t.setPosition("absolute"),t.setAttribute("widgetId",e.getId()),e.allowEditorOverflow?this.overflowingOverlayWidgetsDomNode.appendChild(t):this._domNode.appendChild(t),this.setShouldRender(),this._updateMaxMinWidth()}setWidgetPosition(e,t){const i=this._widgets[e.getId()],n=t?t.preference:null,s=t?.stackOridinal;return i.preference===n&&i.stack===s?(this._updateMaxMinWidth(),!1):(i.preference=n,i.stack=s,this.setShouldRender(),this._updateMaxMinWidth(),!0)}removeWidget(e){const t=e.getId();if(this._widgets.hasOwnProperty(t)){const n=this._widgets[t].domNode.domNode;delete this._widgets[t],n.remove(),this.setShouldRender(),this._updateMaxMinWidth()}}_updateMaxMinWidth(){let e=0;const t=Object.keys(this._widgets);for(let i=0,n=t.length;i0);t.sort((n,s)=>(this._widgets[n].stack||0)-(this._widgets[s].stack||0));for(let n=0,s=t.length;n=3){const s=Math.floor(n/3),r=Math.floor(n/3),a=n-s-r,l=e,c=l+s,d=l+s+a;return[[0,l,c,l,d,l,c,l],[0,s,a,s+a,r,s+a+r,a+r,s+a+r]]}else if(i===2){const s=Math.floor(n/2),r=n-s,a=e,l=a+s;return[[0,a,a,a,l,a,a,a],[0,s,s,s,r,s+r,s+r,s+r]]}else{const s=e,r=n;return[[0,s,s,s,s,s,s,s],[0,r,r,r,r,r,r,r]]}}equals(e){return this.lineHeight===e.lineHeight&&this.pixelRatio===e.pixelRatio&&this.overviewRulerLanes===e.overviewRulerLanes&&this.renderBorder===e.renderBorder&&this.borderColor===e.borderColor&&this.hideCursor===e.hideCursor&&this.cursorColorSingle===e.cursorColorSingle&&this.cursorColorPrimary===e.cursorColorPrimary&&this.cursorColorSecondary===e.cursorColorSecondary&&this.themeType===e.themeType&&q.equals(this.backgroundColor,e.backgroundColor)&&this.top===e.top&&this.right===e.right&&this.domWidth===e.domWidth&&this.domHeight===e.domHeight&&this.canvasWidth===e.canvasWidth&&this.canvasHeight===e.canvasHeight}}class bse extends _s{constructor(e){super(e),this._actualShouldRender=0,this._renderedDecorations=[],this._renderedCursorPositions=[],this._domNode=ot(document.createElement("canvas")),this._domNode.setClassName("decorationsOverviewRuler"),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._domNode.setAttribute("aria-hidden","true"),this._updateSettings(!1),this._tokensColorTrackerListener=si.onDidChange(t=>{t.changedColorMap&&this._updateSettings(!0)}),this._cursorPositions=[{position:new P(1,1),color:this._settings.cursorColorSingle}]}dispose(){super.dispose(),this._tokensColorTrackerListener.dispose()}_updateSettings(e){const t=new _se(this._context.configuration,this._context.theme);return this._settings&&this._settings.equals(t)?!1:(this._settings=t,this._domNode.setTop(this._settings.top),this._domNode.setRight(this._settings.right),this._domNode.setWidth(this._settings.domWidth),this._domNode.setHeight(this._settings.domHeight),this._domNode.domNode.width=this._settings.canvasWidth,this._domNode.domNode.height=this._settings.canvasHeight,e&&this._render(),!0)}_markRenderingIsNeeded(){return this._actualShouldRender=2,!0}_markRenderingIsMaybeNeeded(){return this._actualShouldRender=1,!0}onConfigurationChanged(e){return this._updateSettings(!1)?this._markRenderingIsNeeded():!1}onCursorStateChanged(e){this._cursorPositions=[];for(let t=0,i=e.selections.length;t1&&(n=t===0?this._settings.cursorColorPrimary:this._settings.cursorColorSecondary),this._cursorPositions.push({position:e.selections[t].getPosition(),color:n})}return this._cursorPositions.sort((t,i)=>P.compare(t.position,i.position)),this._markRenderingIsMaybeNeeded()}onDecorationsChanged(e){return e.affectsOverviewRuler?this._markRenderingIsMaybeNeeded():!1}onFlushed(e){return this._markRenderingIsNeeded()}onScrollChanged(e){return e.scrollHeightChanged?this._markRenderingIsNeeded():!1}onZonesChanged(e){return this._markRenderingIsNeeded()}onThemeChanged(e){return this._updateSettings(!1)?this._markRenderingIsNeeded():!1}getDomNode(){return this._domNode.domNode}prepareRender(e){}render(e){this._render(),this._actualShouldRender=0}_render(){const e=this._settings.backgroundColor;if(this._settings.overviewRulerLanes===0){this._domNode.setBackgroundColor(e?q.Format.CSS.formatHexA(e):""),this._domNode.setDisplay("none");return}const t=this._context.viewModel.getAllOverviewRulerDecorations(this._context.theme);if(t.sort(w_.compareByRenderingProps),this._actualShouldRender===1&&!w_.equalsArr(this._renderedDecorations,t)&&(this._actualShouldRender=2),this._actualShouldRender===1&&!li(this._renderedCursorPositions,this._cursorPositions,(g,p)=>g.position.lineNumber===p.position.lineNumber&&g.color===p.color)&&(this._actualShouldRender=2),this._actualShouldRender===1)return;this._renderedDecorations=t,this._renderedCursorPositions=this._cursorPositions,this._domNode.setDisplay("block");const i=this._settings.canvasWidth,n=this._settings.canvasHeight,s=this._settings.lineHeight,r=this._context.viewLayout,a=this._context.viewLayout.getScrollHeight(),l=n/a,c=6*this._settings.pixelRatio|0,d=c/2|0,h=this._domNode.domNode.getContext("2d");e?e.isOpaque()?(h.fillStyle=q.Format.CSS.formatHexA(e),h.fillRect(0,0,i,n)):(h.clearRect(0,0,i,n),h.fillStyle=q.Format.CSS.formatHexA(e),h.fillRect(0,0,i,n)):h.clearRect(0,0,i,n);const u=this._settings.x,f=this._settings.w;for(const g of t){const p=g.color,_=g.data;h.fillStyle=p;let b=0,C=0,w=0;for(let v=0,y=_.length/3;vn&&(W=n-d),N=W-d,H=W+d}N>w+1||x!==b?(v!==0&&h.fillRect(u[b],C,f[b],w-C),b=x,C=N,w=H):H>w&&(w=H)}h.fillRect(u[b],C,f[b],w-C)}if(!this._settings.hideCursor){const g=2*this._settings.pixelRatio|0,p=g/2|0,_=this._settings.x[7],b=this._settings.w[7];let C=-100,w=-100,v=null;for(let y=0,x=this._cursorPositions.length;yn&&(N=n-p);const H=N-p,F=H+g;H>w+1||L!==v?(y!==0&&v&&h.fillRect(_,C,b,w-C),C=H,w=F):F>w&&(w=F),v=L,h.fillStyle=L}v&&h.fillRect(_,C,b,w-C)}this._settings.renderBorder&&this._settings.borderColor&&this._settings.overviewRulerLanes>0&&(h.beginPath(),h.lineWidth=1,h.strokeStyle=this._settings.borderColor,h.moveTo(0,0),h.lineTo(0,n),h.moveTo(1,0),h.lineTo(i,0),h.stroke())}}class HO{constructor(e,t,i){this._colorZoneBrand=void 0,this.from=e|0,this.to=t|0,this.colorId=i|0}static compare(e,t){return e.colorId===t.colorId?e.from===t.from?e.to-t.to:e.from-t.from:e.colorId-t.colorId}}class E8{constructor(e,t,i,n){this._overviewRulerZoneBrand=void 0,this.startLineNumber=e,this.endLineNumber=t,this.heightInLines=i,this.color=n,this._colorZone=null}static compare(e,t){return e.color===t.color?e.startLineNumber===t.startLineNumber?e.heightInLines===t.heightInLines?e.endLineNumber-t.endLineNumber:e.heightInLines-t.heightInLines:e.startLineNumber-t.startLineNumber:e.colori&&(p=i-_);const b=d.color;let C=this._color2Id[b];C||(C=++this._lastAssignedId,this._color2Id[b]=C,this._id2Color[C]=b);const w=new HO(p-_,p+_,C);d.setColorZone(w),a.push(w)}return this._colorZonesInvalid=!1,a.sort(HO.compare),a}}class vse extends ab{constructor(e,t){super(),this._context=e;const i=this._context.configuration.options;this._domNode=ot(document.createElement("canvas")),this._domNode.setClassName(t),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._zoneManager=new Cse(n=>this._context.viewLayout.getVerticalOffsetForLineNumber(n)),this._zoneManager.setDOMWidth(0),this._zoneManager.setDOMHeight(0),this._zoneManager.setOuterHeight(this._context.viewLayout.getScrollHeight()),this._zoneManager.setLineHeight(i.get(67)),this._zoneManager.setPixelRatio(i.get(144)),this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return e.hasChanged(67)&&(this._zoneManager.setLineHeight(t.get(67)),this._render()),e.hasChanged(144)&&(this._zoneManager.setPixelRatio(t.get(144)),this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render()),!0}onFlushed(e){return this._render(),!0}onScrollChanged(e){return e.scrollHeightChanged&&(this._zoneManager.setOuterHeight(e.scrollHeight),this._render()),!0}onZonesChanged(e){return this._render(),!0}getDomNode(){return this._domNode.domNode}setLayout(e){this._domNode.setTop(e.top),this._domNode.setRight(e.right);let t=!1;t=this._zoneManager.setDOMWidth(e.width)||t,t=this._zoneManager.setDOMHeight(e.height)||t,t&&(this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render())}setZones(e){this._zoneManager.setZones(e),this._render()}_render(){if(this._zoneManager.getOuterHeight()===0)return!1;const e=this._zoneManager.getCanvasWidth(),t=this._zoneManager.getCanvasHeight(),i=this._zoneManager.resolveColorZones(),n=this._zoneManager.getId2Color(),s=this._domNode.domNode.getContext("2d");return s.clearRect(0,0,e,t),i.length>0&&this._renderOneLane(s,i,n,e),!0}_renderOneLane(e,t,i,n){let s=0,r=0,a=0;for(const l of t){const c=l.colorId,d=l.from,h=l.to;c!==s?(e.fillRect(0,r,n,a-r),s=c,e.fillStyle=i[s],r=d,a=h):a>=d?a=Math.max(a,h):(e.fillRect(0,r,n,a-r),r=d,a=h)}e.fillRect(0,r,n,a-r)}}class wse extends _s{constructor(e){super(e),this.domNode=ot(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("view-rulers"),this._renderedRulers=[];const t=this._context.configuration.options;this._rulers=t.get(103),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth}dispose(){super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return this._rulers=t.get(103),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,!0}onScrollChanged(e){return e.scrollHeightChanged}prepareRender(e){}_ensureRulersCount(){const e=this._renderedRulers.length,t=this._rulers.length;if(e===t)return;if(e0;){const a=ot(document.createElement("div"));a.setClassName("view-ruler"),a.setWidth(s),this.domNode.appendChild(a),this._renderedRulers.push(a),r--}return}let i=e-t;for(;i>0;){const n=this._renderedRulers.pop();this.domNode.removeChild(n),i--}}render(e){this._ensureRulersCount();for(let t=0,i=this._rulers.length;t0;return this._shouldShow!==e?(this._shouldShow=e,!0):!1}getDomNode(){return this._domNode}_updateWidth(){const t=this._context.configuration.options.get(146);t.minimap.renderMinimap===0||t.minimap.minimapWidth>0&&t.minimap.minimapLeft===0?this._width=t.width:this._width=t.width-t.verticalScrollbarWidth}onConfigurationChanged(e){const i=this._context.configuration.options.get(104);return this._useShadows=i.useShadows,this._updateWidth(),this._updateShouldShow(),!0}onScrollChanged(e){return this._scrollTop=e.scrollTop,this._updateShouldShow()}prepareRender(e){}render(e){this._domNode.setWidth(this._width),this._domNode.setClassName(this._shouldShow?"scroll-decoration":"")}}class Sse{constructor(e){this.left=e.left,this.width=e.width,this.startStyle=null,this.endStyle=null}}class Lse{constructor(e,t){this.lineNumber=e,this.ranges=t}}function xse(o){return new Sse(o)}function kse(o){return new Lse(o.lineNumber,o.ranges.map(xse))}const Zt=class Zt extends mu{constructor(e){super(),this._previousFrameVisibleRangesWithStyle=[],this._context=e;const t=this._context.configuration.options;this._roundedSelection=t.get(102),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,this._selections=[],this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return this._roundedSelection=t.get(102),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,!0}onCursorStateChanged(e){return this._selections=e.selections.slice(0),!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}_visibleRangesHaveGaps(e){for(let t=0,i=e.length;t1)return!0;return!1}_enrichVisibleRangesWithStyle(e,t,i){const n=this._typicalHalfwidthCharacterWidth/4;let s=null,r=null;if(i&&i.length>0&&t.length>0){const a=t[0].lineNumber;if(a===e.startLineNumber)for(let c=0;!s&&c=0;c--)i[c].lineNumber===l&&(r=i[c].ranges[0]);s&&!s.startStyle&&(s=null),r&&!r.startStyle&&(r=null)}for(let a=0,l=t.length;a0){const g=t[a-1].ranges[0].left,p=t[a-1].ranges[0].left+t[a-1].ranges[0].width;i1(d-g)g&&(u.top=1),i1(h-p)'}_actualRenderOneSelection(e,t,i,n){if(n.length===0)return;const s=!!n[0].ranges[0].startStyle,r=n[0].lineNumber,a=n[n.length-1].lineNumber;for(let l=0,c=n.length;l1,c)}this._previousFrameVisibleRangesWithStyle=s,this._renderResult=t.map(([r,a])=>r+a)}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}};Zt.SELECTION_CLASS_NAME="selected-text",Zt.SELECTION_TOP_LEFT="top-left-radius",Zt.SELECTION_BOTTOM_LEFT="bottom-left-radius",Zt.SELECTION_TOP_RIGHT="top-right-radius",Zt.SELECTION_BOTTOM_RIGHT="bottom-right-radius",Zt.EDITOR_BACKGROUND_CLASS_NAME="monaco-editor-background",Zt.ROUNDED_PIECE_WIDTH=10;let TI=Zt;Sr((o,e)=>{const t=o.getColor(DK);t&&!t.isTransparent()&&e.addRule(`.monaco-editor .view-line span.inline-selected-text { color: ${t}; }`)});function i1(o){return o<0?-o:o}class VO{constructor(e,t,i,n,s,r,a){this.top=e,this.left=t,this.paddingLeft=i,this.width=n,this.height=s,this.textContent=r,this.textContentClassName=a}}var hl;(function(o){o[o.Single=0]="Single",o[o.MultiPrimary=1]="MultiPrimary",o[o.MultiSecondary=2]="MultiSecondary"})(hl||(hl={}));class zO{constructor(e,t){this._context=e;const i=this._context.configuration.options,n=i.get(50);this._cursorStyle=i.get(28),this._lineHeight=i.get(67),this._typicalHalfwidthCharacterWidth=n.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(i.get(31),this._typicalHalfwidthCharacterWidth),this._isVisible=!0,this._domNode=ot(document.createElement("div")),this._domNode.setClassName(`cursor ${Zf}`),this._domNode.setHeight(this._lineHeight),this._domNode.setTop(0),this._domNode.setLeft(0),qi(this._domNode,n),this._domNode.setDisplay("none"),this._position=new P(1,1),this._pluralityClass="",this.setPlurality(t),this._lastRenderedContent="",this._renderData=null}getDomNode(){return this._domNode}getPosition(){return this._position}setPlurality(e){switch(e){default:case hl.Single:this._pluralityClass="";break;case hl.MultiPrimary:this._pluralityClass="cursor-primary";break;case hl.MultiSecondary:this._pluralityClass="cursor-secondary";break}}show(){this._isVisible||(this._domNode.setVisibility("inherit"),this._isVisible=!0)}hide(){this._isVisible&&(this._domNode.setVisibility("hidden"),this._isVisible=!1)}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(50);return this._cursorStyle=t.get(28),this._lineHeight=t.get(67),this._typicalHalfwidthCharacterWidth=i.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(t.get(31),this._typicalHalfwidthCharacterWidth),qi(this._domNode,i),!0}onCursorPositionChanged(e,t){return t?this._domNode.domNode.style.transitionProperty="none":this._domNode.domNode.style.transitionProperty="",this._position=e,!0}_getGraphemeAwarePosition(){const{lineNumber:e,column:t}=this._position,i=this._context.viewModel.getLineContent(e),[n,s]=uH(i,t-1);return[new P(e,n+1),i.substring(n,s)]}_prepareRender(e){let t="",i="";const[n,s]=this._getGraphemeAwarePosition();if(this._cursorStyle===Ai.Line||this._cursorStyle===Ai.LineThin){const u=e.visibleRangeForPosition(n);if(!u||u.outsideRenderedLine)return null;const f=fe(this._domNode.domNode);let g;this._cursorStyle===Ai.Line?(g=fR(f,this._lineCursorWidth>0?this._lineCursorWidth:2),g>2&&(t=s,i=this._getTokenClassName(n))):g=fR(f,1);let p=u.left,_=0;g>=2&&p>=1&&(_=1,p-=_);const b=e.getVerticalOffsetForLineNumber(n.lineNumber)-e.bigNumbersDelta;return new VO(b,p,_,g,this._lineHeight,t,i)}const r=e.linesVisibleRangesForRange(new I(n.lineNumber,n.column,n.lineNumber,n.column+s.length),!1);if(!r||r.length===0)return null;const a=r[0];if(a.outsideRenderedLine||a.ranges.length===0)return null;const l=a.ranges[0],c=s===" "?this._typicalHalfwidthCharacterWidth:l.width<1?this._typicalHalfwidthCharacterWidth:l.width;this._cursorStyle===Ai.Block&&(t=s,i=this._getTokenClassName(n));let d=e.getVerticalOffsetForLineNumber(n.lineNumber)-e.bigNumbersDelta,h=this._lineHeight;return(this._cursorStyle===Ai.Underline||this._cursorStyle===Ai.UnderlineThin)&&(d+=this._lineHeight-2,h=2),new VO(d,l.left,0,c,h,t,i)}_getTokenClassName(e){const t=this._context.viewModel.getViewLineData(e.lineNumber),i=t.tokens.findTokenIndexAtOffset(e.column-1);return t.tokens.getClassName(i)}prepareRender(e){this._renderData=this._prepareRender(e)}render(e){return this._renderData?(this._lastRenderedContent!==this._renderData.textContent&&(this._lastRenderedContent=this._renderData.textContent,this._domNode.domNode.textContent=this._lastRenderedContent),this._domNode.setClassName(`cursor ${this._pluralityClass} ${Zf} ${this._renderData.textContentClassName}`),this._domNode.setDisplay("block"),this._domNode.setTop(this._renderData.top),this._domNode.setLeft(this._renderData.left),this._domNode.setPaddingLeft(this._renderData.paddingLeft),this._domNode.setWidth(this._renderData.width),this._domNode.setLineHeight(this._renderData.height),this._domNode.setHeight(this._renderData.height),{domNode:this._domNode.domNode,position:this._position,contentLeft:this._renderData.left,height:this._renderData.height,width:2}):(this._domNode.setDisplay("none"),null)}}const Pp=class Pp extends _s{constructor(e){super(e);const t=this._context.configuration.options;this._readOnly=t.get(92),this._cursorBlinking=t.get(26),this._cursorStyle=t.get(28),this._cursorSmoothCaretAnimation=t.get(27),this._selectionIsEmpty=!0,this._isComposingInput=!1,this._isVisible=!1,this._primaryCursor=new zO(this._context,hl.Single),this._secondaryCursors=[],this._renderData=[],this._domNode=ot(document.createElement("div")),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._updateDomClassName(),this._domNode.appendChild(this._primaryCursor.getDomNode()),this._startCursorBlinkAnimation=new wr,this._cursorFlatBlinkInterval=new QN,this._blinkingEnabled=!1,this._editorHasFocus=!1,this._updateBlinking()}dispose(){super.dispose(),this._startCursorBlinkAnimation.dispose(),this._cursorFlatBlinkInterval.dispose()}getDomNode(){return this._domNode}onCompositionStart(e){return this._isComposingInput=!0,this._updateBlinking(),!0}onCompositionEnd(e){return this._isComposingInput=!1,this._updateBlinking(),!0}onConfigurationChanged(e){const t=this._context.configuration.options;this._readOnly=t.get(92),this._cursorBlinking=t.get(26),this._cursorStyle=t.get(28),this._cursorSmoothCaretAnimation=t.get(27),this._updateBlinking(),this._updateDomClassName(),this._primaryCursor.onConfigurationChanged(e);for(let i=0,n=this._secondaryCursors.length;it.length){const s=this._secondaryCursors.length-t.length;for(let r=0;r{for(let n=0,s=e.ranges.length;n{this._isVisible?this._hide():this._show()},Pp.BLINK_INTERVAL,fe(this._domNode.domNode)):this._startCursorBlinkAnimation.setIfNotSet(()=>{this._blinkingEnabled=!0,this._updateDomClassName()},Pp.BLINK_INTERVAL))}_updateDomClassName(){this._domNode.setClassName(this._getClassName())}_getClassName(){let e="cursors-layer";switch(this._selectionIsEmpty||(e+=" has-selection"),this._cursorStyle){case Ai.Line:e+=" cursor-line-style";break;case Ai.Block:e+=" cursor-block-style";break;case Ai.Underline:e+=" cursor-underline-style";break;case Ai.LineThin:e+=" cursor-line-thin-style";break;case Ai.BlockOutline:e+=" cursor-block-outline-style";break;case Ai.UnderlineThin:e+=" cursor-underline-thin-style";break;default:e+=" cursor-line-style"}if(this._blinkingEnabled)switch(this._getCursorBlinking()){case 1:e+=" cursor-blink";break;case 2:e+=" cursor-smooth";break;case 3:e+=" cursor-phase";break;case 4:e+=" cursor-expand";break;case 5:e+=" cursor-solid";break;default:e+=" cursor-solid"}else e+=" cursor-solid";return(this._cursorSmoothCaretAnimation==="on"||this._cursorSmoothCaretAnimation==="explicit")&&(e+=" cursor-smooth-caret-animation"),e}_show(){this._primaryCursor.show();for(let e=0,t=this._secondaryCursors.length;e{const t=[{class:".cursor",foreground:uy,background:t2},{class:".cursor-primary",foreground:U7,background:KY},{class:".cursor-secondary",foreground:$7,background:jY}];for(const i of t){const n=o.getColor(i.foreground);if(n){let s=o.getColor(i.background);s||(s=n.opposite()),e.addRule(`.monaco-editor .cursors-layer ${i.class} { background-color: ${n}; border-color: ${n}; color: ${s}; }`),mc(o.type)&&e.addRule(`.monaco-editor .cursors-layer.has-selection ${i.class} { border-left: 1px solid ${s}; border-right: 1px solid ${s}; }`)}}});const oL=()=>{throw new Error("Invalid change accessor")};class Dse extends _s{constructor(e){super(e);const t=this._context.configuration.options,i=t.get(146);this._lineHeight=t.get(67),this._contentWidth=i.contentWidth,this._contentLeft=i.contentLeft,this.domNode=ot(document.createElement("div")),this.domNode.setClassName("view-zones"),this.domNode.setPosition("absolute"),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.marginDomNode=ot(document.createElement("div")),this.marginDomNode.setClassName("margin-view-zones"),this.marginDomNode.setPosition("absolute"),this.marginDomNode.setAttribute("role","presentation"),this.marginDomNode.setAttribute("aria-hidden","true"),this._zones={}}dispose(){super.dispose(),this._zones={}}_recomputeWhitespacesProps(){const e=this._context.viewLayout.getWhitespaces(),t=new Map;for(const n of e)t.set(n.id,n);let i=!1;return this._context.viewModel.changeWhitespace(n=>{const s=Object.keys(this._zones);for(let r=0,a=s.length;r{const n={addZone:s=>(t=!0,this._addZone(i,s)),removeZone:s=>{s&&(t=this._removeZone(i,s)||t)},layoutZone:s=>{s&&(t=this._layoutZone(i,s)||t)}};Ise(e,n),n.addZone=oL,n.removeZone=oL,n.layoutZone=oL}),t}_addZone(e,t){const i=this._computeWhitespaceProps(t),s={whitespaceId:e.insertWhitespace(i.afterViewLineNumber,this._getZoneOrdinal(t),i.heightInPx,i.minWidthInPx),delegate:t,isInHiddenArea:i.isInHiddenArea,isVisible:!1,domNode:ot(t.domNode),marginDomNode:t.marginDomNode?ot(t.marginDomNode):null};return this._safeCallOnComputedHeight(s.delegate,i.heightInPx),s.domNode.setPosition("absolute"),s.domNode.domNode.style.width="100%",s.domNode.setDisplay("none"),s.domNode.setAttribute("monaco-view-zone",s.whitespaceId),this.domNode.appendChild(s.domNode),s.marginDomNode&&(s.marginDomNode.setPosition("absolute"),s.marginDomNode.domNode.style.width="100%",s.marginDomNode.setDisplay("none"),s.marginDomNode.setAttribute("monaco-view-zone",s.whitespaceId),this.marginDomNode.appendChild(s.marginDomNode)),this._zones[s.whitespaceId]=s,this.setShouldRender(),s.whitespaceId}_removeZone(e,t){if(this._zones.hasOwnProperty(t)){const i=this._zones[t];return delete this._zones[t],e.removeWhitespace(i.whitespaceId),i.domNode.removeAttribute("monaco-visible-view-zone"),i.domNode.removeAttribute("monaco-view-zone"),i.domNode.domNode.remove(),i.marginDomNode&&(i.marginDomNode.removeAttribute("monaco-visible-view-zone"),i.marginDomNode.removeAttribute("monaco-view-zone"),i.marginDomNode.domNode.remove()),this.setShouldRender(),!0}return!1}_layoutZone(e,t){if(this._zones.hasOwnProperty(t)){const i=this._zones[t],n=this._computeWhitespaceProps(i.delegate);return i.isInHiddenArea=n.isInHiddenArea,e.changeOneWhitespace(i.whitespaceId,n.afterViewLineNumber,n.heightInPx),this._safeCallOnComputedHeight(i.delegate,n.heightInPx),this.setShouldRender(),!0}return!1}shouldSuppressMouseDownOnViewZone(e){return this._zones.hasOwnProperty(e)?!!this._zones[e].delegate.suppressMouseDown:!1}_heightInPixels(e){return typeof e.heightInPx=="number"?e.heightInPx:typeof e.heightInLines=="number"?this._lineHeight*e.heightInLines:this._lineHeight}_minWidthInPixels(e){return typeof e.minWidthInPx=="number"?e.minWidthInPx:0}_safeCallOnComputedHeight(e,t){if(typeof e.onComputedHeight=="function")try{e.onComputedHeight(t)}catch(i){Ze(i)}}_safeCallOnDomNodeTop(e,t){if(typeof e.onDomNodeTop=="function")try{e.onDomNodeTop(t)}catch(i){Ze(i)}}prepareRender(e){}render(e){const t=e.viewportData.whitespaceViewportData,i={};let n=!1;for(const r of t)this._zones[r.id].isInHiddenArea||(i[r.id]=r,n=!0);const s=Object.keys(this._zones);for(let r=0,a=s.length;ra)continue;const f=u.startLineNumber===a?u.startColumn:c.minColumn,g=u.endLineNumber===a?u.endColumn:c.maxColumn;f=H.endOffset&&(N++,H=i&&i[N]),j!==9&&j!==32||u&&!x&&W<=E)continue;if(h&&W>=L&&W<=E&&j===32){const G=W-1>=0?a.charCodeAt(W-1):0,ne=W+1=0?a.charCodeAt(W-1):0;if(j===32&&G!==32&&G!==9)continue}if(i&&(!H||H.startOffset>W||H.endOffset<=W))continue;const B=e.visibleRangeForPosition(new P(t,W+1));B&&(r?(F=Math.max(F,B.left),j===9?y+=this._renderArrow(f,_,B.left):y+=``):j===9?y+=`
    ${v?"→":"→"}
    `:y+=`
    ${String.fromCharCode(w)}
    `)}return r?(F=Math.round(F+_),``+y+""):y}_renderArrow(e,t,i){const n=t/7,s=t,r=e/2,a=i,l={x:0,y:n/2},c={x:100/125*s,y:l.y},d={x:c.x-.2*c.x,y:c.y+.2*c.x},h={x:d.x+.1*c.x,y:d.y+.1*c.x},u={x:h.x+.35*c.x,y:h.y-.35*c.x},f={x:u.x,y:-u.y},g={x:h.x,y:-h.y},p={x:d.x,y:-d.y},_={x:c.x,y:-c.y},b={x:l.x,y:-l.y};return``}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}class UO{constructor(e){const t=e.options,i=t.get(50),n=t.get(38);n==="off"?(this.renderWhitespace="none",this.renderWithSVG=!1):n==="svg"?(this.renderWhitespace=t.get(100),this.renderWithSVG=!0):(this.renderWhitespace=t.get(100),this.renderWithSVG=!1),this.spaceWidth=i.spaceWidth,this.middotWidth=i.middotWidth,this.wsmiddotWidth=i.wsmiddotWidth,this.canUseHalfwidthRightwardsArrow=i.canUseHalfwidthRightwardsArrow,this.lineHeight=t.get(67),this.stopRenderingLineAfter=t.get(118)}equals(e){return this.renderWhitespace===e.renderWhitespace&&this.renderWithSVG===e.renderWithSVG&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.wsmiddotWidth===e.wsmiddotWidth&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineHeight===e.lineHeight&&this.stopRenderingLineAfter===e.stopRenderingLineAfter}}class Nse{constructor(e,t,i,n){this.selections=e,this.startLineNumber=t.startLineNumber|0,this.endLineNumber=t.endLineNumber|0,this.relativeVerticalOffset=t.relativeVerticalOffset,this.bigNumbersDelta=t.bigNumbersDelta|0,this.lineHeight=t.lineHeight|0,this.whitespaceViewportData=i,this._model=n,this.visibleRange=new I(t.startLineNumber,this._model.getLineMinColumn(t.startLineNumber),t.endLineNumber,this._model.getLineMaxColumn(t.endLineNumber))}getViewLineRenderingData(e){return this._model.getViewportViewLineRenderingData(this.visibleRange,e)}getDecorationsInViewport(){return this._model.getDecorationsInViewport(this.visibleRange)}}class Tse{get type(){return this._theme.type}get value(){return this._theme}constructor(e){this._theme=e}update(e){this._theme=e}getColor(e){return this._theme.getColor(e)}}class Mse{constructor(e,t,i){this.configuration=e,this.theme=new Tse(t),this.viewModel=i,this.viewLayout=i.viewLayout}addEventHandler(e){this.viewModel.addViewEventHandler(e)}removeEventHandler(e){this.viewModel.removeViewEventHandler(e)}}var Rse=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ase=function(o,e){return function(t,i){e(t,i,o)}};let RI=class extends ab{constructor(e,t,i,n,s,r,a){super(),this._instantiationService=a,this._shouldRecomputeGlyphMarginLanes=!1,this._selections=[new Fe(1,1,1,1)],this._renderAnimationFrame=null;const l=new Vne(t,n,s,e);this._context=new Mse(t,i,n),this._context.addEventHandler(this),this._viewParts=[],this._textAreaHandler=this._instantiationService.createInstance(xI,this._context,l,this._createTextAreaHandlerHelper()),this._viewParts.push(this._textAreaHandler),this._linesContent=ot(document.createElement("div")),this._linesContent.setClassName("lines-content monaco-editor-background"),this._linesContent.setPosition("absolute"),this.domNode=ot(document.createElement("div")),this.domNode.setClassName(this._getEditorClassName()),this.domNode.setAttribute("role","code"),this._overflowGuardContainer=ot(document.createElement("div")),vr.write(this._overflowGuardContainer,3),this._overflowGuardContainer.setClassName("overflow-guard"),this._scrollbar=new Qne(this._context,this._linesContent,this.domNode,this._overflowGuardContainer),this._viewParts.push(this._scrollbar),this._viewLines=new NI(this._context,this._linesContent),this._viewZones=new Dse(this._context),this._viewParts.push(this._viewZones);const c=new bse(this._context);this._viewParts.push(c);const d=new yse(this._context);this._viewParts.push(d);const h=new Une(this._context);this._viewParts.push(h),h.addDynamicOverlay(new Gne(this._context)),h.addDynamicOverlay(new TI(this._context)),h.addDynamicOverlay(new sse(this._context)),h.addDynamicOverlay(new Yne(this._context)),h.addDynamicOverlay(new Ese(this._context));const u=new $ne(this._context);this._viewParts.push(u),u.addDynamicOverlay(new Zne(this._context)),u.addDynamicOverlay(new cse(this._context)),u.addDynamicOverlay(new lse(this._context)),u.addDynamicOverlay(new Ev(this._context)),this._glyphMarginWidgets=new ese(this._context),this._viewParts.push(this._glyphMarginWidgets);const f=new Nv(this._context);f.getDomNode().appendChild(this._viewZones.marginDomNode),f.getDomNode().appendChild(u.getDomNode()),f.getDomNode().appendChild(this._glyphMarginWidgets.domNode),this._viewParts.push(f),this._contentWidgets=new jne(this._context,this.domNode),this._viewParts.push(this._contentWidgets),this._viewCursors=new MI(this._context),this._viewParts.push(this._viewCursors),this._overlayWidgets=new pse(this._context,this.domNode),this._viewParts.push(this._overlayWidgets);const g=new wse(this._context);this._viewParts.push(g);const p=new Kne(this._context);this._viewParts.push(p);const _=new mse(this._context);if(this._viewParts.push(_),c){const b=this._scrollbar.getOverviewRulerLayoutInfo();b.parent.insertBefore(c.getDomNode(),b.insertBefore)}this._linesContent.appendChild(h.getDomNode()),this._linesContent.appendChild(g.domNode),this._linesContent.appendChild(this._viewZones.domNode),this._linesContent.appendChild(this._viewLines.getDomNode()),this._linesContent.appendChild(this._contentWidgets.domNode),this._linesContent.appendChild(this._viewCursors.getDomNode()),this._overflowGuardContainer.appendChild(f.getDomNode()),this._overflowGuardContainer.appendChild(this._scrollbar.getDomNode()),this._overflowGuardContainer.appendChild(d.getDomNode()),this._overflowGuardContainer.appendChild(this._textAreaHandler.textArea),this._overflowGuardContainer.appendChild(this._textAreaHandler.textAreaCover),this._overflowGuardContainer.appendChild(this._overlayWidgets.getDomNode()),this._overflowGuardContainer.appendChild(_.getDomNode()),this._overflowGuardContainer.appendChild(p.domNode),this.domNode.appendChild(this._overflowGuardContainer),r?(r.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode.domNode),r.appendChild(this._overlayWidgets.overflowingOverlayWidgetsDomNode.domNode)):(this.domNode.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode),this.domNode.appendChild(this._overlayWidgets.overflowingOverlayWidgetsDomNode)),this._applyLayout(),this._pointerHandler=this._register(new lne(this._context,l,this._createPointerHandlerHelper()))}_computeGlyphMarginLanes(){const e=this._context.viewModel.model,t=this._context.viewModel.glyphLanes;let i=[],n=0;i=i.concat(e.getAllMarginDecorations().map(s=>{const r=s.options.glyphMargin?.position??Ao.Center;return n=Math.max(n,s.range.endLineNumber),{range:s.range,lane:r,persist:s.options.glyphMargin?.persistLane}})),i=i.concat(this._glyphMarginWidgets.getWidgets().map(s=>{const r=e.validateRange(s.preference.range);return n=Math.max(n,r.endLineNumber),{range:r,lane:s.preference.lane}})),i.sort((s,r)=>I.compareRangesUsingStarts(s.range,r.range)),t.reset(n);for(const s of i)t.push(s.lane,s.range,s.persist);return t}_createPointerHandlerHelper(){return{viewDomNode:this.domNode.domNode,linesContentDomNode:this._linesContent.domNode,viewLinesDomNode:this._viewLines.getDomNode().domNode,focusTextArea:()=>{this.focus()},dispatchTextAreaEvent:e=>{this._textAreaHandler.textArea.domNode.dispatchEvent(e)},getLastRenderData:()=>{const e=this._viewCursors.getLastRenderData()||[],t=this._textAreaHandler.getLastRenderData();return new Yie(e,t)},renderNow:()=>{this.render(!0,!1)},shouldSuppressMouseDownOnViewZone:e=>this._viewZones.shouldSuppressMouseDownOnViewZone(e),shouldSuppressMouseDownOnWidget:e=>this._contentWidgets.shouldSuppressMouseDownOnWidget(e),getPositionFromDOMInfo:(e,t)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getPositionFromDOMInfo(e,t)),visibleRangeForPosition:(e,t)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(new P(e,t))),getLineWidth:e=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getLineWidth(e))}}_createTextAreaHandlerHelper(){return{visibleRangeForPosition:e=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(e))}}_applyLayout(){const t=this._context.configuration.options.get(146);this.domNode.setWidth(t.width),this.domNode.setHeight(t.height),this._overflowGuardContainer.setWidth(t.width),this._overflowGuardContainer.setHeight(t.height),this._linesContent.setWidth(16777216),this._linesContent.setHeight(16777216)}_getEditorClassName(){const e=this._textAreaHandler.isFocused()?" focused":"";return this._context.configuration.options.get(143)+" "+gk(this._context.theme.type)+e}handleEvents(e){super.handleEvents(e),this._scheduleRender()}onConfigurationChanged(e){return this.domNode.setClassName(this._getEditorClassName()),this._applyLayout(),!1}onCursorStateChanged(e){return this._selections=e.selections,!1}onDecorationsChanged(e){return e.affectsGlyphMargin&&(this._shouldRecomputeGlyphMarginLanes=!0),!1}onFocusChanged(e){return this.domNode.setClassName(this._getEditorClassName()),!1}onThemeChanged(e){return this._context.theme.update(e.theme),this.domNode.setClassName(this._getEditorClassName()),!1}dispose(){this._renderAnimationFrame!==null&&(this._renderAnimationFrame.dispose(),this._renderAnimationFrame=null),this._contentWidgets.overflowingContentWidgetsDomNode.domNode.remove(),this._context.removeEventHandler(this),this._viewLines.dispose();for(const e of this._viewParts)e.dispose();super.dispose()}_scheduleRender(){if(this._store.isDisposed)throw new nt;if(this._renderAnimationFrame===null){const e=this._createCoordinatedRendering();this._renderAnimationFrame=AI.INSTANCE.scheduleCoordinatedRendering({window:fe(this.domNode?.domNode),prepareRenderText:()=>{if(this._store.isDisposed)throw new nt;try{return e.prepareRenderText()}finally{this._renderAnimationFrame=null}},renderText:()=>{if(this._store.isDisposed)throw new nt;return e.renderText()},prepareRender:(t,i)=>{if(this._store.isDisposed)throw new nt;return e.prepareRender(t,i)},render:(t,i)=>{if(this._store.isDisposed)throw new nt;return e.render(t,i)}})}}_flushAccumulatedAndRenderNow(){const e=this._createCoordinatedRendering();cc(()=>e.prepareRenderText());const t=cc(()=>e.renderText());if(t){const[i,n]=t;cc(()=>e.prepareRender(i,n)),cc(()=>e.render(i,n))}}_getViewPartsToRender(){const e=[];let t=0;for(const i of this._viewParts)i.shouldRender()&&(e[t++]=i);return e}_createCoordinatedRendering(){return{prepareRenderText:()=>{if(this._shouldRecomputeGlyphMarginLanes){this._shouldRecomputeGlyphMarginLanes=!1;const e=this._computeGlyphMarginLanes();this._context.configuration.setGlyphMarginDecorationLaneCount(e.requiredLanes)}lc.onRenderStart()},renderText:()=>{if(!this.domNode.domNode.isConnected)return null;let e=this._getViewPartsToRender();if(!this._viewLines.shouldRender()&&e.length===0)return null;const t=this._context.viewLayout.getLinesViewportData();this._context.viewModel.setViewport(t.startLineNumber,t.endLineNumber,t.centeredLineNumber);const i=new Nse(this._selections,t,this._context.viewLayout.getWhitespaceViewportData(),this._context.viewModel);return this._contentWidgets.shouldRender()&&this._contentWidgets.onBeforeRender(i),this._viewLines.shouldRender()&&(this._viewLines.renderText(i),this._viewLines.onDidRender(),e=this._getViewPartsToRender()),[e,new Uie(this._context.viewLayout,i,this._viewLines)]},prepareRender:(e,t)=>{for(const i of e)i.prepareRender(t)},render:(e,t)=>{for(const i of e)i.render(t),i.onDidRender()}}}delegateVerticalScrollbarPointerDown(e){this._scrollbar.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){this._scrollbar.delegateScrollFromMouseWheelEvent(e)}restoreState(e){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:e.scrollTop,scrollLeft:e.scrollLeft},1),this._context.viewModel.visibleLinesStabilized()}getOffsetForColumn(e,t){const i=this._context.viewModel.model.validatePosition({lineNumber:e,column:t}),n=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(i);this._flushAccumulatedAndRenderNow();const s=this._viewLines.visibleRangeForPosition(new P(n.lineNumber,n.column));return s?s.left:-1}getTargetAtClientPoint(e,t){const i=this._pointerHandler.getTargetAtClientPoint(e,t);return i?Iy.convertViewToModelMouseTarget(i,this._context.viewModel.coordinatesConverter):null}createOverviewRuler(e){return new vse(this._context,e)}change(e){this._viewZones.changeViewZones(e),this._scheduleRender()}render(e,t){if(t){this._viewLines.forceShouldRender();for(const i of this._viewParts)i.forceShouldRender()}e?this._flushAccumulatedAndRenderNow():this._scheduleRender()}writeScreenReaderContent(e){this._textAreaHandler.writeScreenReaderContent(e)}focus(){this._textAreaHandler.focusTextArea()}isFocused(){return this._textAreaHandler.isFocused()}setAriaOptions(e){this._textAreaHandler.setAriaOptions(e)}addContentWidget(e){this._contentWidgets.addWidget(e.widget),this.layoutContentWidget(e),this._scheduleRender()}layoutContentWidget(e){this._contentWidgets.setWidgetPosition(e.widget,e.position?.position??null,e.position?.secondaryPosition??null,e.position?.preference??null,e.position?.positionAffinity??null),this._scheduleRender()}removeContentWidget(e){this._contentWidgets.removeWidget(e.widget),this._scheduleRender()}addOverlayWidget(e){this._overlayWidgets.addWidget(e.widget),this.layoutOverlayWidget(e),this._scheduleRender()}layoutOverlayWidget(e){this._overlayWidgets.setWidgetPosition(e.widget,e.position)&&this._scheduleRender()}removeOverlayWidget(e){this._overlayWidgets.removeWidget(e.widget),this._scheduleRender()}addGlyphMarginWidget(e){this._glyphMarginWidgets.addWidget(e.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}layoutGlyphMarginWidget(e){const t=e.position;this._glyphMarginWidgets.setWidgetPosition(e.widget,t)&&(this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender())}removeGlyphMarginWidget(e){this._glyphMarginWidgets.removeWidget(e.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}};RI=Rse([Ase(6,ke)],RI);function cc(o){try{return o()}catch(e){return Ze(e),null}}const s0=class s0{constructor(){this._coordinatedRenderings=[],this._animationFrameRunners=new Map}scheduleCoordinatedRendering(e){return this._coordinatedRenderings.push(e),this._scheduleRender(e.window),{dispose:()=>{const t=this._coordinatedRenderings.indexOf(e);if(t!==-1&&(this._coordinatedRenderings.splice(t,1),this._coordinatedRenderings.length===0)){for(const[i,n]of this._animationFrameRunners)n.dispose();this._animationFrameRunners.clear()}}}}_scheduleRender(e){if(!this._animationFrameRunners.has(e)){const t=()=>{this._animationFrameRunners.delete(e),this._onRenderScheduled()};this._animationFrameRunners.set(e,pC(e,t,100))}}_onRenderScheduled(){const e=this._coordinatedRenderings.slice(0);this._coordinatedRenderings=[];for(const i of e)cc(()=>i.prepareRenderText());const t=[];for(let i=0,n=e.length;is.renderText())}for(let i=0,n=e.length;is.prepareRender(a,l))}for(let i=0,n=e.length;is.render(a,l))}}};s0.INSTANCE=new s0;let AI=s0;class pp{constructor(e,t,i,n,s){this.injectionOffsets=e,this.injectionOptions=t,this.breakOffsets=i,this.breakOffsetsVisibleColumn=n,this.wrappedTextIndentLength=s}getOutputLineCount(){return this.breakOffsets.length}getMinOutputOffset(e){return e>0?this.wrappedTextIndentLength:0}getLineLength(e){const t=e>0?this.breakOffsets[e-1]:0;let n=this.breakOffsets[e]-t;return e>0&&(n+=this.wrappedTextIndentLength),n}getMaxOutputOffset(e){return this.getLineLength(e)}translateToInputOffset(e,t){e>0&&(t=Math.max(0,t-this.wrappedTextIndentLength));let n=e===0?t:this.breakOffsets[e-1]+t;if(this.injectionOffsets!==null)for(let s=0;sthis.injectionOffsets[s];s++)n0?this.breakOffsets[s-1]:0,t===0)if(e<=r)n=s-1;else if(e>l)i=s+1;else break;else if(e=l)i=s+1;else break}let a=e-r;return s>0&&(a+=this.wrappedTextIndentLength),new n1(s,a)}normalizeOutputPosition(e,t,i){if(this.injectionOffsets!==null){const n=this.outputPositionToOffsetInInputWithInjections(e,t),s=this.normalizeOffsetInInputWithInjectionsAroundInjections(n,i);if(s!==n)return this.offsetInInputWithInjectionsToOutputPosition(s,i)}if(i===0){if(e>0&&t===this.getMinOutputOffset(e))return new n1(e-1,this.getMaxOutputOffset(e-1))}else if(i===1){const n=this.getOutputLineCount()-1;if(e0&&(t=Math.max(0,t-this.wrappedTextIndentLength)),(e>0?this.breakOffsets[e-1]:0)+t}normalizeOffsetInInputWithInjectionsAroundInjections(e,t){const i=this.getInjectedTextAtOffset(e);if(!i)return e;if(t===2){if(e===i.offsetInInputWithInjections+i.length&&$O(this.injectionOptions[i.injectedTextIndex].cursorStops))return i.offsetInInputWithInjections+i.length;{let n=i.offsetInInputWithInjections;if(KO(this.injectionOptions[i.injectedTextIndex].cursorStops))return n;let s=i.injectedTextIndex-1;for(;s>=0&&this.injectionOffsets[s]===this.injectionOffsets[i.injectedTextIndex]&&!($O(this.injectionOptions[s].cursorStops)||(n-=this.injectionOptions[s].content.length,KO(this.injectionOptions[s].cursorStops)));)s--;return n}}else if(t===1||t===4){let n=i.offsetInInputWithInjections+i.length,s=i.injectedTextIndex;for(;s+1=0&&this.injectionOffsets[s-1]===this.injectionOffsets[s];)n-=this.injectionOptions[s-1].content.length,s--;return n}z0()}getInjectedText(e,t){const i=this.outputPositionToOffsetInInputWithInjections(e,t),n=this.getInjectedTextAtOffset(i);return n?{options:this.injectionOptions[n.injectedTextIndex]}:null}getInjectedTextAtOffset(e){const t=this.injectionOffsets,i=this.injectionOptions;if(t!==null){let n=0;for(let s=0;se)break;if(e<=l)return{injectedTextIndex:s,offsetInInputWithInjections:a,length:r};n+=r}}}}function $O(o){return o==null?!0:o===gr.Right||o===gr.Both}function KO(o){return o==null?!0:o===gr.Left||o===gr.Both}class n1{constructor(e,t){this.outputLineIndex=e,this.outputOffset=t}toString(){return`${this.outputLineIndex}:${this.outputOffset}`}toPosition(e){return new P(e+this.outputLineIndex,this.outputOffset+1)}}const Pse=Kc("domLineBreaksComputer",{createHTML:o=>o});class q2{static create(e){return new q2(new WeakRef(e))}constructor(e){this.targetWindow=e}createLineBreaksComputer(e,t,i,n,s){const r=[],a=[];return{addRequest:(l,c,d)=>{r.push(l),a.push(c)},finalize:()=>Ose(A5(this.targetWindow.deref()),r,e,t,i,n,s,a)}}}function Ose(o,e,t,i,n,s,r,a){function l(N){const H=a[N];if(H){const F=_r.applyInjectedText(e[N],H),W=H.map(B=>B.options),j=H.map(B=>B.column-1);return new pp(j,W,[F.length],[],0)}else return null}if(n===-1){const N=[];for(let H=0,F=e.length;Hc?(F=0,W=0):j=c-ne}const B=H.substr(F),G=Fse(B,W,i,j,g,u);p[N]=F,_[N]=W,b[N]=B,C[N]=G[0],w[N]=G[1]}const v=g.build(),y=Pse?.createHTML(v)??v;f.innerHTML=y,f.style.position="absolute",f.style.top="10000",r==="keepAll"?(f.style.wordBreak="keep-all",f.style.overflowWrap="anywhere"):(f.style.wordBreak="inherit",f.style.overflowWrap="break-word"),o.document.body.appendChild(f);const x=document.createRange(),L=Array.prototype.slice.call(f.children,0),E=[];for(let N=0;Nse.options),ae=de.map(se=>se.column-1)):(ne=null,ae=null),E[N]=new pp(ae,ne,F,G,j)}return f.remove(),E}function Fse(o,e,t,i,n,s){if(s!==0){const u=String(s);n.appendString('
    ');const r=o.length;let a=e,l=0;const c=[],d=[];let h=0");for(let u=0;u"),c[u]=l,d[u]=a;const f=h;h=u+1"),c[o.length]=l,d[o.length]=a,n.appendString("
    "),[c,d]}function Bse(o,e,t,i){if(t.length<=1)return null;const n=Array.prototype.slice.call(e.children,0),s=[];try{PI(o,n,i,0,null,t.length-1,null,s)}catch(r){return console.log(r),null}return s.length===0?null:(s.push(t.length),s)}function PI(o,e,t,i,n,s,r,a){if(i===s||(n=n||rL(o,e,t[i],t[i+1]),r=r||rL(o,e,t[s],t[s+1]),Math.abs(n[0].top-r[0].top)<=.1))return;if(i+1===s){a.push(s);return}const l=i+(s-i)/2|0,c=rL(o,e,t[l],t[l+1]);PI(o,e,t,i,n,l,c,a),PI(o,e,t,l,c,s,r,a)}function rL(o,e,t,i){return o.setStart(e[t/16384|0].firstChild,t%16384),o.setEnd(e[i/16384|0].firstChild,i%16384),o.getClientRects()}class Wse extends z{constructor(){super(),this._editor=null,this._instantiationService=null,this._instances=this._register(new RN),this._pending=new Map,this._finishedInstantiation=[],this._finishedInstantiation[0]=!1,this._finishedInstantiation[1]=!1,this._finishedInstantiation[2]=!1,this._finishedInstantiation[3]=!1}initialize(e,t,i){this._editor=e,this._instantiationService=i;for(const n of t){if(this._pending.has(n.id)){Ze(new Error(`Cannot have two contributions with the same id ${n.id}`));continue}this._pending.set(n.id,n)}this._instantiateSome(0),this._register(kb(fe(this._editor.getDomNode()),()=>{this._instantiateSome(1)})),this._register(kb(fe(this._editor.getDomNode()),()=>{this._instantiateSome(2)})),this._register(kb(fe(this._editor.getDomNode()),()=>{this._instantiateSome(3)},5e3))}saveViewState(){const e={};for(const[t,i]of this._instances)typeof i.saveViewState=="function"&&(e[t]=i.saveViewState());return e}restoreViewState(e){for(const[t,i]of this._instances)typeof i.restoreViewState=="function"&&i.restoreViewState(e[t])}get(e){return this._instantiateById(e),this._instances.get(e)||null}onBeforeInteractionEvent(){this._instantiateSome(2)}onAfterModelAttached(){return kb(fe(this._editor?.getDomNode()),()=>{this._instantiateSome(1)},50)}_instantiateSome(e){if(this._finishedInstantiation[e])return;this._finishedInstantiation[e]=!0;const t=this._findPendingContributionsByInstantiation(e);for(const i of t)this._instantiateById(i.id)}_findPendingContributionsByInstantiation(e){const t=[];for(const[,i]of this._pending)i.instantiation===e&&t.push(i);return t}_instantiateById(e){const t=this._pending.get(e);if(t){if(this._pending.delete(e),!this._instantiationService||!this._editor)throw new Error("Cannot instantiate contributions before being initialized!");try{const i=this._instantiationService.createInstance(t.ctor,this._editor);this._instances.set(t.id,i),typeof i.restoreViewState=="function"&&t.instantiation!==0&&console.warn(`Editor contribution '${t.id}' should be eager instantiated because it uses saveViewState / restoreViewState.`)}catch(i){Ze(i)}}}}class N8{constructor(e,t,i,n,s,r,a){this.id=e,this.label=t,this.alias=i,this.metadata=n,this._precondition=s,this._run=r,this._contextKeyService=a}isSupported(){return this._contextKeyService.contextMatchesRules(this._precondition)}run(e){return this.isSupported()?this._run(e):Promise.resolve(void 0)}}class G2{static create(e){return new G2(e.get(135),e.get(134))}constructor(e,t){this.classifier=new Hse(e,t)}createLineBreaksComputer(e,t,i,n,s){const r=[],a=[],l=[];return{addRequest:(c,d,h)=>{r.push(c),a.push(d),l.push(h)},finalize:()=>{const c=e.typicalFullwidthCharacterWidth/e.typicalHalfwidthCharacterWidth,d=[];for(let h=0,u=r.length;h=0&&e<256?this._asciiMap[e]:e>=12352&&e<=12543||e>=13312&&e<=19903||e>=19968&&e<=40959?3:this._map.get(e)||this._defaultValue}}let OI=[],FI=[];function Vse(o,e,t,i,n,s,r,a){if(n===-1)return null;const l=t.length;if(l<=1)return null;const c=a==="keepAll",d=e.breakOffsets,h=e.breakOffsetsVisibleColumn,u=T8(t,i,n,s,r),f=n-u,g=OI,p=FI;let _=0,b=0,C=0,w=n;const v=d.length;let y=0;if(y>=0){let x=Math.abs(h[y]-w);for(;y+1=x)break;x=L,y++}}for(;yx&&(x=b,L=C);let E=0,N=0,H=0,F=0;if(L<=w){let j=L,B=x===0?0:t.charCodeAt(x-1),G=x===0?0:o.get(B),ne=!0;for(let ae=x;aeb&&BI(B,G,se,be,c)&&(E=de,N=j),j+=we,j>w){de>b?(H=de,F=j-we):(H=ae+1,F=j),j-N>f&&(E=0),ne=!1;break}B=se,G=be}if(ne){_>0&&(g[_]=d[d.length-1],p[_]=h[d.length-1],_++);break}}if(E===0){let j=L,B=t.charCodeAt(x),G=o.get(B),ne=!1;for(let ae=x-1;ae>=b;ae--){const de=ae+1,se=t.charCodeAt(ae);if(se===9){ne=!0;break}let be,we;if(Mh(se)?(ae--,be=0,we=2):(be=o.get(se),we=Rc(se)?s:1),j<=w){if(H===0&&(H=de,F=j),j<=w-f)break;if(BI(se,be,B,G,c)){E=de,N=j;break}}j-=we,B=se,G=be}if(E!==0){const ae=f-(F-N);if(ae<=i){const de=t.charCodeAt(H);let se;wi(de)?se=2:se=_p(de,F,i,s),ae-se<0&&(E=0)}}if(ne){y--;continue}}if(E===0&&(E=H,N=F),E<=b){const j=t.charCodeAt(b);wi(j)?(E=b+2,N=C+2):(E=b+1,N=C+_p(j,C,i,s))}for(b=E,g[_]=E,C=N,p[_]=N,_++,w=N+f;y<0||y=W)break;W=j,y++}}return _===0?null:(g.length=_,p.length=_,OI=e.breakOffsets,FI=e.breakOffsetsVisibleColumn,e.breakOffsets=g,e.breakOffsetsVisibleColumn=p,e.wrappedTextIndentLength=u,e)}function zse(o,e,t,i,n,s,r,a){const l=_r.applyInjectedText(e,t);let c,d;if(t&&t.length>0?(c=t.map(N=>N.options),d=t.map(N=>N.column-1)):(c=null,d=null),n===-1)return c?new pp(d,c,[l.length],[],0):null;const h=l.length;if(h<=1)return c?new pp(d,c,[l.length],[],0):null;const u=a==="keepAll",f=T8(l,i,n,s,r),g=n-f,p=[],_=[];let b=0,C=0,w=0,v=n,y=l.charCodeAt(0),x=o.get(y),L=_p(y,0,i,s),E=1;wi(y)&&(L+=1,y=l.charCodeAt(1),x=o.get(y),E++);for(let N=E;Nv&&((C===0||L-w>g)&&(C=H,w=L-j),p[b]=C,_[b]=w,b++,v=w+g,C=0),y=F,x=W}return b===0&&(!t||t.length===0)?null:(p[b]=h,_[b]=L,new pp(d,c,p,_,f))}function _p(o,e,t,i){return o===9?t-e%t:Rc(o)||o<32?i:1}function jO(o,e){return e-o%e}function BI(o,e,t,i,n){return t!==32&&(e===2&&i!==2||e!==1&&i===1||!n&&e===3&&i!==2||!n&&i===3&&e!==1)}function T8(o,e,t,i,n){let s=0;if(n!==0){const r=zn(o);if(r!==-1){for(let l=0;lt&&(s=0)}}return s}class Fv{constructor(e){this._selTrackedRange=null,this._trackSelection=!0,this._setState(e,new Ri(new I(1,1,1,1),0,0,new P(1,1),0),new Ri(new I(1,1,1,1),0,0,new P(1,1),0))}dispose(e){this._removeTrackedRange(e)}startTrackingSelection(e){this._trackSelection=!0,this._updateTrackedRange(e)}stopTrackingSelection(e){this._trackSelection=!1,this._removeTrackedRange(e)}_updateTrackedRange(e){this._trackSelection&&(this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,this.modelState.selection,0))}_removeTrackedRange(e){this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,null,0)}asCursorState(){return new Ke(this.modelState,this.viewState)}readSelectionFromMarkers(e){const t=e.model._getTrackedRange(this._selTrackedRange);return this.modelState.selection.isEmpty()&&!t.isEmpty()?Fe.fromRange(t.collapseToEnd(),this.modelState.selection.getDirection()):Fe.fromRange(t,this.modelState.selection.getDirection())}ensureValidState(e){this._setState(e,this.modelState,this.viewState)}setState(e,t,i){this._setState(e,t,i)}static _validatePositionWithCache(e,t,i,n){return t.equals(i)?n:e.normalizePosition(t,2)}static _validateViewState(e,t){const i=t.position,n=t.selectionStart.getStartPosition(),s=t.selectionStart.getEndPosition(),r=e.normalizePosition(i,2),a=this._validatePositionWithCache(e,n,i,r),l=this._validatePositionWithCache(e,s,n,a);return i.equals(r)&&n.equals(a)&&s.equals(l)?t:new Ri(I.fromPositions(a,l),t.selectionStartKind,t.selectionStartLeftoverVisibleColumns+n.column-a.column,r,t.leftoverVisibleColumns+i.column-r.column)}_setState(e,t,i){if(i&&(i=Fv._validateViewState(e.viewModel,i)),t){const n=e.model.validateRange(t.selectionStart),s=t.selectionStart.equalsRange(n)?t.selectionStartLeftoverVisibleColumns:0,r=e.model.validatePosition(t.position),a=t.position.equals(r)?t.leftoverVisibleColumns:0;t=new Ri(n,t.selectionStartKind,s,r,a)}else{if(!i)return;const n=e.model.validateRange(e.coordinatesConverter.convertViewRangeToModelRange(i.selectionStart)),s=e.model.validatePosition(e.coordinatesConverter.convertViewPositionToModelPosition(i.position));t=new Ri(n,i.selectionStartKind,i.selectionStartLeftoverVisibleColumns,s,i.leftoverVisibleColumns)}if(i){const n=e.coordinatesConverter.validateViewRange(i.selectionStart,t.selectionStart),s=e.coordinatesConverter.validateViewPosition(i.position,t.position);i=new Ri(n,t.selectionStartKind,t.selectionStartLeftoverVisibleColumns,s,t.leftoverVisibleColumns)}else{const n=e.coordinatesConverter.convertModelPositionToViewPosition(new P(t.selectionStart.startLineNumber,t.selectionStart.startColumn)),s=e.coordinatesConverter.convertModelPositionToViewPosition(new P(t.selectionStart.endLineNumber,t.selectionStart.endColumn)),r=new I(n.lineNumber,n.column,s.lineNumber,s.column),a=e.coordinatesConverter.convertModelPositionToViewPosition(t.position);i=new Ri(r,t.selectionStartKind,t.selectionStartLeftoverVisibleColumns,a,t.leftoverVisibleColumns)}this.modelState=t,this.viewState=i,this._updateTrackedRange(e)}}class qO{constructor(e){this.context=e,this.cursors=[new Fv(e)],this.lastAddedCursorIndex=0}dispose(){for(const e of this.cursors)e.dispose(this.context)}startTrackingSelections(){for(const e of this.cursors)e.startTrackingSelection(this.context)}stopTrackingSelections(){for(const e of this.cursors)e.stopTrackingSelection(this.context)}updateContext(e){this.context=e}ensureValidState(){for(const e of this.cursors)e.ensureValidState(this.context)}readSelectionFromMarkers(){return this.cursors.map(e=>e.readSelectionFromMarkers(this.context))}getAll(){return this.cursors.map(e=>e.asCursorState())}getViewPositions(){return this.cursors.map(e=>e.viewState.position)}getTopMostViewPosition(){return UU(this.cursors,rs(e=>e.viewState.position,P.compare)).viewState.position}getBottomMostViewPosition(){return zU(this.cursors,rs(e=>e.viewState.position,P.compare)).viewState.position}getSelections(){return this.cursors.map(e=>e.modelState.selection)}getViewSelections(){return this.cursors.map(e=>e.viewState.selection)}setSelections(e){this.setStates(Ke.fromModelSelections(e))}getPrimaryCursor(){return this.cursors[0].asCursorState()}setStates(e){e!==null&&(this.cursors[0].setState(this.context,e[0].modelState,e[0].viewState),this._setSecondaryStates(e.slice(1)))}_setSecondaryStates(e){const t=this.cursors.length-1,i=e.length;if(ti){const n=t-i;for(let s=0;s=e+1&&this.lastAddedCursorIndex--,this.cursors[e+1].dispose(this.context),this.cursors.splice(e+1,1)}normalize(){if(this.cursors.length===1)return;const e=this.cursors.slice(0),t=[];for(let i=0,n=e.length;ii.selection,I.compareRangesUsingStarts));for(let i=0;ih&&p.index--;e.splice(h,1),t.splice(d,1),this._removeSecondaryCursor(h-1),i--}}}}class GO{constructor(e,t,i,n){this._cursorContextBrand=void 0,this.model=e,this.viewModel=t,this.coordinatesConverter=i,this.cursorConfig=n}}class Use{constructor(){this.type=0}}class $se{constructor(){this.type=1}}class Kse{constructor(e){this.type=2,this._source=e}hasChanged(e){return this._source.hasChanged(e)}}class jse{constructor(e,t,i){this.selections=e,this.modelSelections=t,this.reason=i,this.type=3}}class rd{constructor(e){this.type=4,e?(this.affectsMinimap=e.affectsMinimap,this.affectsOverviewRuler=e.affectsOverviewRuler,this.affectsGlyphMargin=e.affectsGlyphMargin,this.affectsLineNumber=e.affectsLineNumber):(this.affectsMinimap=!0,this.affectsOverviewRuler=!0,this.affectsGlyphMargin=!0,this.affectsLineNumber=!0)}}class s1{constructor(){this.type=5}}class qse{constructor(e){this.type=6,this.isFocused=e}}class Gse{constructor(){this.type=7}}class o1{constructor(){this.type=8}}class M8{constructor(e,t){this.fromLineNumber=e,this.count=t,this.type=9}}class WI{constructor(e,t){this.type=10,this.fromLineNumber=e,this.toLineNumber=t}}class HI{constructor(e,t){this.type=11,this.fromLineNumber=e,this.toLineNumber=t}}class bp{constructor(e,t,i,n,s,r,a){this.source=e,this.minimalReveal=t,this.range=i,this.selections=n,this.verticalType=s,this.revealHorizontal=r,this.scrollType=a,this.type=12}}class Zse{constructor(e){this.type=13,this.scrollWidth=e.scrollWidth,this.scrollLeft=e.scrollLeft,this.scrollHeight=e.scrollHeight,this.scrollTop=e.scrollTop,this.scrollWidthChanged=e.scrollWidthChanged,this.scrollLeftChanged=e.scrollLeftChanged,this.scrollHeightChanged=e.scrollHeightChanged,this.scrollTopChanged=e.scrollTopChanged}}class Yse{constructor(e){this.theme=e,this.type=14}}class Qse{constructor(e){this.type=15,this.ranges=e}}class Xse{constructor(){this.type=16}}let Jse=class{constructor(){this.type=17}};class eoe extends z{constructor(){super(),this._onEvent=this._register(new A),this.onEvent=this._onEvent.event,this._eventHandlers=[],this._viewEventQueue=null,this._isConsumingViewEventQueue=!1,this._collector=null,this._collectorCnt=0,this._outgoingEvents=[]}emitOutgoingEvent(e){this._addOutgoingEvent(e),this._emitOutgoingEvents()}_addOutgoingEvent(e){for(let t=0,i=this._outgoingEvents.length;t0;){if(this._collector||this._isConsumingViewEventQueue)return;const e=this._outgoingEvents.shift();e.isNoOp()||this._onEvent.fire(e)}}addViewEventHandler(e){for(let t=0,i=this._eventHandlers.length;t0&&this._emitMany(t)}this._emitOutgoingEvents()}emitSingleViewEvent(e){try{this.beginEmitViewEvents().emitViewEvent(e)}finally{this.endEmitViewEvents()}}_emitMany(e){this._viewEventQueue?this._viewEventQueue=this._viewEventQueue.concat(e):this._viewEventQueue=e,this._isConsumingViewEventQueue||this._consumeViewEventQueue()}_consumeViewEventQueue(){try{this._isConsumingViewEventQueue=!0,this._doConsumeQueue()}finally{this._isConsumingViewEventQueue=!1}}_doConsumeQueue(){for(;this._viewEventQueue;){const e=this._viewEventQueue;this._viewEventQueue=null;const t=this._eventHandlers.slice(0);for(const i of t)i.handleEvents(e)}}}class toe{constructor(){this.viewEvents=[],this.outgoingEvents=[]}emitViewEvent(e){this.viewEvents.push(e)}emitOutgoingEvent(e){this.outgoingEvents.push(e)}}class Z2{constructor(e,t,i,n){this.kind=0,this._oldContentWidth=e,this._oldContentHeight=t,this.contentWidth=i,this.contentHeight=n,this.contentWidthChanged=this._oldContentWidth!==this.contentWidth,this.contentHeightChanged=this._oldContentHeight!==this.contentHeight}isNoOp(){return!this.contentWidthChanged&&!this.contentHeightChanged}attemptToMerge(e){return e.kind!==this.kind?null:new Z2(this._oldContentWidth,this._oldContentHeight,e.contentWidth,e.contentHeight)}}class Y2{constructor(e,t){this.kind=1,this.oldHasFocus=e,this.hasFocus=t}isNoOp(){return this.oldHasFocus===this.hasFocus}attemptToMerge(e){return e.kind!==this.kind?null:new Y2(this.oldHasFocus,e.hasFocus)}}class Q2{constructor(e,t,i,n,s,r,a,l){this.kind=2,this._oldScrollWidth=e,this._oldScrollLeft=t,this._oldScrollHeight=i,this._oldScrollTop=n,this.scrollWidth=s,this.scrollLeft=r,this.scrollHeight=a,this.scrollTop=l,this.scrollWidthChanged=this._oldScrollWidth!==this.scrollWidth,this.scrollLeftChanged=this._oldScrollLeft!==this.scrollLeft,this.scrollHeightChanged=this._oldScrollHeight!==this.scrollHeight,this.scrollTopChanged=this._oldScrollTop!==this.scrollTop}isNoOp(){return!this.scrollWidthChanged&&!this.scrollLeftChanged&&!this.scrollHeightChanged&&!this.scrollTopChanged}attemptToMerge(e){return e.kind!==this.kind?null:new Q2(this._oldScrollWidth,this._oldScrollLeft,this._oldScrollHeight,this._oldScrollTop,e.scrollWidth,e.scrollLeft,e.scrollHeight,e.scrollTop)}}class ioe{constructor(){this.kind=3}isNoOp(){return!1}attemptToMerge(e){return e.kind!==this.kind?null:this}}class noe{constructor(){this.kind=4}isNoOp(){return!1}attemptToMerge(e){return e.kind!==this.kind?null:this}}class Bv{constructor(e,t,i,n,s,r,a){this.kind=6,this.oldSelections=e,this.selections=t,this.oldModelVersionId=i,this.modelVersionId=n,this.source=s,this.reason=r,this.reachedMaxCursorCount=a}static _selectionsAreEqual(e,t){if(!e&&!t)return!0;if(!e||!t)return!1;const i=e.length,n=t.length;if(i!==n)return!1;for(let s=0;s0){const e=this._cursors.getSelections();for(let t=0;tr&&(n=n.slice(0,r),s=!0);const a=Cp.from(this._model,this);return this._cursors.setStates(n),this._cursors.normalize(),this._columnSelectData=null,this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(e,t,i,a,s)}setCursorColumnSelectData(e){this._columnSelectData=e}revealAll(e,t,i,n,s,r){const a=this._cursors.getViewPositions();let l=null,c=null;a.length>1?c=this._cursors.getViewSelections():l=I.fromPositions(a[0],a[0]),e.emitViewEvent(new bp(t,i,l,c,n,s,r))}revealPrimary(e,t,i,n,s,r){const l=[this._cursors.getPrimaryCursor().viewState.selection];e.emitViewEvent(new bp(t,i,null,l,n,s,r))}saveState(){const e=[],t=this._cursors.getSelections();for(let i=0,n=t.length;i0){const s=Ke.fromModelSelections(i.resultingSelection);this.setStates(e,"modelChange",i.isUndoing?5:i.isRedoing?6:2,s)&&this.revealAll(e,"modelChange",!1,0,!0,0)}else{const s=this._cursors.readSelectionFromMarkers();this.setStates(e,"modelChange",2,Ke.fromModelSelections(s))}}}getSelection(){return this._cursors.getPrimaryCursor().modelState.selection}getTopMostViewPosition(){return this._cursors.getTopMostViewPosition()}getBottomMostViewPosition(){return this._cursors.getBottomMostViewPosition()}getCursorColumnSelectData(){if(this._columnSelectData)return this._columnSelectData;const e=this._cursors.getPrimaryCursor(),t=e.viewState.selectionStart.getStartPosition(),i=e.viewState.position;return{isReal:!1,fromViewLineNumber:t.lineNumber,fromViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,t),toViewLineNumber:i.lineNumber,toViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,i)}}getSelections(){return this._cursors.getSelections()}setSelections(e,t,i,n){this.setStates(e,t,n,Ke.fromModelSelections(i))}getPrevEditOperationType(){return this._prevEditOperationType}setPrevEditOperationType(e){this._prevEditOperationType=e}_pushAutoClosedAction(e,t){const i=[],n=[];for(let a=0,l=e.length;a0&&this._pushAutoClosedAction(i,n),this._prevEditOperationType=e.type}e.shouldPushStackElementAfter&&this._model.pushStackElement()}_interpretCommandResult(e){(!e||e.length===0)&&(e=this._cursors.readSelectionFromMarkers()),this._columnSelectData=null,this._cursors.setSelections(e),this._cursors.normalize()}_emitStateChangedIfNecessary(e,t,i,n,s){const r=Cp.from(this._model,this);if(r.equals(n))return!1;const a=this._cursors.getSelections(),l=this._cursors.getViewSelections();if(e.emitViewEvent(new jse(l,a,i)),!n||n.cursorState.length!==r.cursorState.length||r.cursorState.some((c,d)=>!c.modelState.equals(n.cursorState[d].modelState))){const c=n?n.cursorState.map(h=>h.modelState.selection):null,d=n?n.modelVersionId:0;e.emitOutgoingEvent(new Bv(c,a,d,r.modelVersionId,t||"keyboard",i,s))}return!0}_findAutoClosingPairs(e){if(!e.length)return null;const t=[];for(let i=0,n=e.length;i=0)return null;const r=s.text.match(/([)\]}>'"`])([^)\]}>'"`]*)$/);if(!r)return null;const a=r[1],l=this.context.cursorConfig.autoClosingPairs.autoClosingPairsCloseSingleChar.get(a);if(!l||l.length!==1)return null;const c=l[0].open,d=s.text.length-r[2].length-1,h=s.text.lastIndexOf(c,d-1);if(h===-1)return null;t.push([h,d])}return t}executeEdits(e,t,i,n){let s=null;t==="snippet"&&(s=this._findAutoClosingPairs(i)),s&&(i[0]._isTracked=!0);const r=[],a=[],l=this._model.pushEditOperations(this.getSelections(),i,c=>{if(s)for(let h=0,u=s.length;h0&&this._pushAutoClosedAction(r,a)}_executeEdit(e,t,i,n=0){if(this.context.cursorConfig.readOnly)return;const s=Cp.from(this._model,this);this._cursors.stopTrackingSelections(),this._isHandling=!0;try{this._cursors.ensureValidState(),e()}catch(r){Ze(r)}this._isHandling=!1,this._cursors.startTrackingSelections(),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(t,i,n,s,!1)&&this.revealAll(t,i,!1,0,!0,0)}getAutoClosedCharacters(){return ZO.getAllAutoClosedCharacters(this._autoClosedActions)}startComposition(e){this._compositionState=new vp(this._model,this.getSelections())}endComposition(e,t){const i=this._compositionState?this._compositionState.deduceOutcome(this._model,this.getSelections()):null;this._compositionState=null,this._executeEdit(()=>{t==="keyboard"&&this._executeEditOperation(Ed.compositionEndWithInterceptors(this._prevEditOperationType,this.context.cursorConfig,this._model,i,this.getSelections(),this.getAutoClosedCharacters()))},e,t)}type(e,t,i){this._executeEdit(()=>{if(i==="keyboard"){const n=t.length;let s=0;for(;s{const c=l.getPosition();return new Fe(c.lineNumber,c.column+s,c.lineNumber,c.column+s)});this.setSelections(e,r,a,0)}return}this._executeEdit(()=>{this._executeEditOperation(Ed.compositionType(this._prevEditOperationType,this.context.cursorConfig,this._model,this.getSelections(),t,i,n,s))},e,r)}paste(e,t,i,n,s){this._executeEdit(()=>{this._executeEditOperation(Ed.paste(this.context.cursorConfig,this._model,this.getSelections(),t,i,n||[]))},e,s,4)}cut(e,t){this._executeEdit(()=>{this._executeEditOperation(Kh.cut(this.context.cursorConfig,this._model,this.getSelections()))},e,t)}executeCommand(e,t,i){this._executeEdit(()=>{this._cursors.killSecondaryCursors(),this._executeEditOperation(new jn(0,[t],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},e,i)}executeCommands(e,t,i){this._executeEdit(()=>{this._executeEditOperation(new jn(0,t,{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},e,i)}}class Cp{static from(e,t){return new Cp(e.getVersionId(),t.getCursorStates())}constructor(e,t){this.modelVersionId=e,this.cursorState=t}equals(e){if(!e||this.modelVersionId!==e.modelVersionId||this.cursorState.length!==e.cursorState.length)return!1;for(let t=0,i=this.cursorState.length;t=t.length||!t[i].strictContainsRange(e[i]))return!1;return!0}}class uoe{static executeCommands(e,t,i){const n={model:e,selectionsBefore:t,trackedRanges:[],trackedRangesDirection:[]},s=this._innerExecuteCommands(n,i);for(let r=0,a=n.trackedRanges.length;r0&&(r[0]._isTracked=!0);let a=e.model.pushEditOperations(e.selectionsBefore,r,c=>{const d=[];for(let f=0;ff.identifier.minor-g.identifier.minor,u=[];for(let f=0;f0?(d[f].sort(h),u[f]=t[f].computeCursorState(e.model,{getInverseEditOperations:()=>d[f],getTrackedSelection:g=>{const p=parseInt(g,10),_=e.model._getTrackedRange(e.trackedRanges[p]);return e.trackedRangesDirection[p]===0?new Fe(_.startLineNumber,_.startColumn,_.endLineNumber,_.endColumn):new Fe(_.endLineNumber,_.endColumn,_.startLineNumber,_.startColumn)}})):u[f]=e.selectionsBefore[f];return u});a||(a=e.selectionsBefore);const l=[];for(const c in s)s.hasOwnProperty(c)&&l.push(parseInt(c,10));l.sort((c,d)=>d-c);for(const c of l)a.splice(c,1);return a}static _arrayIsEmpty(e){for(let t=0,i=e.length;t{I.isEmpty(h)&&u===""||n.push({identifier:{major:t,minor:s++},range:h,text:u,forceMoveMarkers:f,isAutoWhitespaceEdit:i.insertsAutoWhitespace})};let a=!1;const d={addEditOperation:r,addTrackedEditOperation:(h,u,f)=>{a=!0,r(h,u,f)},trackSelection:(h,u)=>{const f=Fe.liftSelection(h);let g;if(f.isEmpty())if(typeof u=="boolean")u?g=2:g=3;else{const b=e.model.getLineMaxColumn(f.startLineNumber);f.startColumn===b?g=2:g=3}else g=1;const p=e.trackedRanges.length,_=e.model._setTrackedRange(null,f,g);return e.trackedRanges[p]=_,e.trackedRangesDirection[p]=f.getDirection(),p.toString()}};try{i.getEditOperations(e.model,d)}catch(h){return Ze(h),{operations:[],hadTrackedEditOperation:!1}}return{operations:n,hadTrackedEditOperation:a}}static _getLoserCursorMap(e){e=e.slice(0),e.sort((i,n)=>-I.compareRangesUsingEnds(i.range,n.range));const t={};for(let i=1;is.identifier.major?r=n.identifier.major:r=s.identifier.major,t[r.toString()]=!0;for(let a=0;a0&&i--}}return t}}class foe{constructor(e,t,i){this.text=e,this.startSelection=t,this.endSelection=i}}class vp{static _capture(e,t){const i=[];for(const n of t){if(n.startLineNumber!==n.endLineNumber)return null;i.push(new foe(e.getLineContent(n.startLineNumber),n.startColumn-1,n.endColumn-1))}return i}constructor(e,t){this._original=vp._capture(e,t)}deduceOutcome(e,t){if(!this._original)return null;const i=vp._capture(e,t);if(!i||this._original.length!==i.length)return null;const n=[];for(let s=0,r=this._original.length;s>>1;t===e[r].afterLineNumber?i{t=!0,n=n|0,s=s|0,r=r|0,a=a|0;const l=this._instanceId+ ++this._lastWhitespaceId;return this._pendingChanges.insert(new moe(l,n,s,r,a)),l},changeOneWhitespace:(n,s,r)=>{t=!0,s=s|0,r=r|0,this._pendingChanges.change({id:n,newAfterLineNumber:s,newHeight:r})},removeWhitespace:n=>{t=!0,this._pendingChanges.remove({id:n})}})}finally{this._pendingChanges.commit(this)}return t}_commitPendingChanges(e,t,i){if((e.length>0||i.length>0)&&(this._minWidth=-1),e.length+t.length+i.length<=1){for(const l of e)this._insertWhitespace(l);for(const l of t)this._changeOneWhitespace(l.id,l.newAfterLineNumber,l.newHeight);for(const l of i){const c=this._findWhitespaceIndex(l.id);c!==-1&&this._removeWhitespace(c)}return}const n=new Set;for(const l of i)n.add(l.id);const s=new Map;for(const l of t)s.set(l.id,l);const r=l=>{const c=[];for(const d of l)if(!n.has(d.id)){if(s.has(d.id)){const h=s.get(d.id);d.afterLineNumber=h.newAfterLineNumber,d.height=h.newHeight}c.push(d)}return c},a=r(this._arr).concat(r(e));a.sort((l,c)=>l.afterLineNumber===c.afterLineNumber?l.ordinal-c.ordinal:l.afterLineNumber-c.afterLineNumber),this._arr=a,this._prefixSumValidIndex=-1}_checkPendingChanges(){this._pendingChanges.mustCommit()&&this._pendingChanges.commit(this)}_insertWhitespace(e){const t=Cc.findInsertionIndex(this._arr,e.afterLineNumber,e.ordinal);this._arr.splice(t,0,e),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,t-1)}_findWhitespaceIndex(e){const t=this._arr;for(let i=0,n=t.length;it&&(this._arr[i].afterLineNumber-=t-e+1)}}onLinesInserted(e,t){this._checkPendingChanges(),e=e|0,t=t|0,this._lineCount+=t-e+1;for(let i=0,n=this._arr.length;i=t.length||t[a+1].afterLineNumber>=e)return a;i=a+1|0}else n=a-1|0}return-1}_findFirstWhitespaceAfterLineNumber(e){e=e|0;const i=this._findLastWhitespaceBeforeLineNumber(e)+1;return i1?i=this._lineHeight*(e-1):i=0;const n=this.getWhitespaceAccumulatedHeightBeforeLineNumber(e-(t?1:0));return i+n+this._paddingTop}getVerticalOffsetAfterLineNumber(e,t=!1){this._checkPendingChanges(),e=e|0;const i=this._lineHeight*e,n=this.getWhitespaceAccumulatedHeightBeforeLineNumber(e+(t?1:0));return i+n+this._paddingTop}getWhitespaceMinWidth(){if(this._checkPendingChanges(),this._minWidth===-1){let e=0;for(let t=0,i=this._arr.length;tt}isInTopPadding(e){return this._paddingTop===0?!1:(this._checkPendingChanges(),e=t-this._paddingBottom}getLineNumberAtOrAfterVerticalOffset(e){if(this._checkPendingChanges(),e=e|0,e<0)return 1;const t=this._lineCount|0,i=this._lineHeight;let n=1,s=t;for(;n=a+i)n=r+1;else{if(e>=a)return r;s=r}}return n>t?t:n}getLinesViewportData(e,t){this._checkPendingChanges(),e=e|0,t=t|0;const i=this._lineHeight,n=this.getLineNumberAtOrAfterVerticalOffset(e)|0,s=this.getVerticalOffsetForLineNumber(n)|0;let r=this._lineCount|0,a=this.getFirstWhitespaceIndexAfterLineNumber(n)|0;const l=this.getWhitespacesCount()|0;let c,d;a===-1?(a=l,d=r+1,c=0):(d=this.getAfterLineNumberForWhitespaceIndex(a)|0,c=this.getHeightForWhitespaceIndex(a)|0);let h=s,u=h;const f=5e5;let g=0;s>=f&&(g=Math.floor(s/f)*f,g=Math.floor(g/i)*i,u-=g);const p=[],_=e+(t-e)/2;let b=-1;for(let y=n;y<=r;y++){if(b===-1){const x=h,L=h+i;(x<=_&&__)&&(b=y)}for(h+=i,p[y-n]=u,u+=i;d===y;)u+=c,h+=c,a++,a>=l?d=r+1:(d=this.getAfterLineNumberForWhitespaceIndex(a)|0,c=this.getHeightForWhitespaceIndex(a)|0);if(h>=t){r=y;break}}b===-1&&(b=r);const C=this.getVerticalOffsetForLineNumber(r)|0;let w=n,v=r;return wt&&v--,{bigNumbersDelta:g,startLineNumber:n,endLineNumber:r,relativeVerticalOffset:p,centeredLineNumber:b,completelyVisibleStartLineNumber:w,completelyVisibleEndLineNumber:v,lineHeight:this._lineHeight}}getVerticalOffsetForWhitespaceIndex(e){this._checkPendingChanges(),e=e|0;const t=this.getAfterLineNumberForWhitespaceIndex(e);let i;t>=1?i=this._lineHeight*t:i=0;let n;return e>0?n=this.getWhitespacesAccumulatedHeight(e-1):n=0,i+n+this._paddingTop}getWhitespaceIndexAtOrAfterVerticallOffset(e){this._checkPendingChanges(),e=e|0;let t=0,i=this.getWhitespacesCount()-1;if(i<0)return-1;const n=this.getVerticalOffsetForWhitespaceIndex(i),s=this.getHeightForWhitespaceIndex(i);if(e>=n+s)return-1;for(;t=a+l)t=r+1;else{if(e>=a)return r;i=r}}return t}getWhitespaceAtVerticalOffset(e){this._checkPendingChanges(),e=e|0;const t=this.getWhitespaceIndexAtOrAfterVerticallOffset(e);if(t<0||t>=this.getWhitespacesCount())return null;const i=this.getVerticalOffsetForWhitespaceIndex(t);if(i>e)return null;const n=this.getHeightForWhitespaceIndex(t),s=this.getIdForWhitespaceIndex(t),r=this.getAfterLineNumberForWhitespaceIndex(t);return{id:s,afterLineNumber:r,verticalOffset:i,height:n}}getWhitespaceViewportData(e,t){this._checkPendingChanges(),e=e|0,t=t|0;const i=this.getWhitespaceIndexAtOrAfterVerticallOffset(e),n=this.getWhitespacesCount()-1;if(i<0)return[];const s=[];for(let r=i;r<=n;r++){const a=this.getVerticalOffsetForWhitespaceIndex(r),l=this.getHeightForWhitespaceIndex(r);if(a>=t)break;s.push({id:this.getIdForWhitespaceIndex(r),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(r),verticalOffset:a,height:l})}return s}getWhitespaces(){return this._checkPendingChanges(),this._arr.slice(0)}getWhitespacesCount(){return this._checkPendingChanges(),this._arr.length}getIdForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].id}getAfterLineNumberForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].afterLineNumber}getHeightForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].height}},Cc.INSTANCE_COUNT=0,Cc);const _oe=125;class Fm{constructor(e,t,i,n){e=e|0,t=t|0,i=i|0,n=n|0,e<0&&(e=0),t<0&&(t=0),i<0&&(i=0),n<0&&(n=0),this.width=e,this.contentWidth=t,this.scrollWidth=Math.max(e,t),this.height=i,this.contentHeight=n,this.scrollHeight=Math.max(i,n)}equals(e){return this.width===e.width&&this.contentWidth===e.contentWidth&&this.height===e.height&&this.contentHeight===e.contentHeight}}class boe extends z{constructor(e,t){super(),this._onDidContentSizeChange=this._register(new A),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._dimensions=new Fm(0,0,0,0),this._scrollable=this._register(new Vg({forceIntegerValues:!0,smoothScrollDuration:e,scheduleAtNextAnimationFrame:t})),this.onDidScroll=this._scrollable.onScroll}getScrollable(){return this._scrollable}setSmoothScrollDuration(e){this._scrollable.setSmoothScrollDuration(e)}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}getScrollDimensions(){return this._dimensions}setScrollDimensions(e){if(this._dimensions.equals(e))return;const t=this._dimensions;this._dimensions=e,this._scrollable.setScrollDimensions({width:e.width,scrollWidth:e.scrollWidth,height:e.height,scrollHeight:e.scrollHeight},!0);const i=t.contentWidth!==e.contentWidth,n=t.contentHeight!==e.contentHeight;(i||n)&&this._onDidContentSizeChange.fire(new Z2(t.contentWidth,t.contentHeight,e.contentWidth,e.contentHeight))}getFutureScrollPosition(){return this._scrollable.getFutureScrollPosition()}getCurrentScrollPosition(){return this._scrollable.getCurrentScrollPosition()}setScrollPositionNow(e){this._scrollable.setScrollPositionNow(e)}setScrollPositionSmooth(e){this._scrollable.setScrollPositionSmooth(e)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}}class Coe extends z{constructor(e,t,i){super(),this._configuration=e;const n=this._configuration.options,s=n.get(146),r=n.get(84);this._linesLayout=new poe(t,n.get(67),r.top,r.bottom),this._maxLineWidth=0,this._overlayWidgetsMinWidth=0,this._scrollable=this._register(new boe(0,i)),this._configureSmoothScrollDuration(),this._scrollable.setScrollDimensions(new Fm(s.contentWidth,0,s.height,0)),this.onDidScroll=this._scrollable.onDidScroll,this.onDidContentSizeChange=this._scrollable.onDidContentSizeChange,this._updateHeight()}dispose(){super.dispose()}getScrollable(){return this._scrollable.getScrollable()}onHeightMaybeChanged(){this._updateHeight()}_configureSmoothScrollDuration(){this._scrollable.setSmoothScrollDuration(this._configuration.options.get(115)?_oe:0)}onConfigurationChanged(e){const t=this._configuration.options;if(e.hasChanged(67)&&this._linesLayout.setLineHeight(t.get(67)),e.hasChanged(84)){const i=t.get(84);this._linesLayout.setPadding(i.top,i.bottom)}if(e.hasChanged(146)){const i=t.get(146),n=i.contentWidth,s=i.height,r=this._scrollable.getScrollDimensions(),a=r.contentWidth;this._scrollable.setScrollDimensions(new Fm(n,r.contentWidth,s,this._getContentHeight(n,s,a)))}else this._updateHeight();e.hasChanged(115)&&this._configureSmoothScrollDuration()}onFlushed(e){this._linesLayout.onFlushed(e)}onLinesDeleted(e,t){this._linesLayout.onLinesDeleted(e,t)}onLinesInserted(e,t){this._linesLayout.onLinesInserted(e,t)}_getHorizontalScrollbarHeight(e,t){const n=this._configuration.options.get(104);return n.horizontal===2||e>=t?0:n.horizontalScrollbarSize}_getContentHeight(e,t,i){const n=this._configuration.options;let s=this._linesLayout.getLinesTotalHeight();return n.get(106)?s+=Math.max(0,t-n.get(67)-n.get(84).bottom):n.get(104).ignoreHorizontalScrollbarInContentHeight||(s+=this._getHorizontalScrollbarHeight(e,i)),s}_updateHeight(){const e=this._scrollable.getScrollDimensions(),t=e.width,i=e.height,n=e.contentWidth;this._scrollable.setScrollDimensions(new Fm(t,e.contentWidth,i,this._getContentHeight(t,i,n)))}getCurrentViewport(){const e=this._scrollable.getScrollDimensions(),t=this._scrollable.getCurrentScrollPosition();return new CO(t.scrollTop,t.scrollLeft,e.width,e.height)}getFutureViewport(){const e=this._scrollable.getScrollDimensions(),t=this._scrollable.getFutureScrollPosition();return new CO(t.scrollTop,t.scrollLeft,e.width,e.height)}_computeContentWidth(){const e=this._configuration.options,t=this._maxLineWidth,i=e.get(147),n=e.get(50),s=e.get(146);if(i.isViewportWrapping){const r=e.get(73);return t>s.contentWidth+n.typicalHalfwidthCharacterWidth&&r.enabled&&r.side==="right"?t+s.verticalScrollbarWidth:t}else{const r=e.get(105)*n.typicalHalfwidthCharacterWidth,a=this._linesLayout.getWhitespaceMinWidth();return Math.max(t+r+s.verticalScrollbarWidth,a,this._overlayWidgetsMinWidth)}}setMaxLineWidth(e){this._maxLineWidth=e,this._updateContentWidth()}setOverlayWidgetsMinWidth(e){this._overlayWidgetsMinWidth=e,this._updateContentWidth()}_updateContentWidth(){const e=this._scrollable.getScrollDimensions();this._scrollable.setScrollDimensions(new Fm(e.width,this._computeContentWidth(),e.height,e.contentHeight)),this._updateHeight()}saveState(){const e=this._scrollable.getFutureScrollPosition(),t=e.scrollTop,i=this._linesLayout.getLineNumberAtOrAfterVerticalOffset(t),n=this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(i);return{scrollTop:t,scrollTopWithoutViewZones:t-n,scrollLeft:e.scrollLeft}}changeWhitespace(e){const t=this._linesLayout.changeWhitespace(e);return t&&this.onHeightMaybeChanged(),t}getVerticalOffsetForLineNumber(e,t=!1){return this._linesLayout.getVerticalOffsetForLineNumber(e,t)}getVerticalOffsetAfterLineNumber(e,t=!1){return this._linesLayout.getVerticalOffsetAfterLineNumber(e,t)}isAfterLines(e){return this._linesLayout.isAfterLines(e)}isInTopPadding(e){return this._linesLayout.isInTopPadding(e)}isInBottomPadding(e){return this._linesLayout.isInBottomPadding(e)}getLineNumberAtVerticalOffset(e){return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(e)}getWhitespaceAtVerticalOffset(e){return this._linesLayout.getWhitespaceAtVerticalOffset(e)}getLinesViewportData(){const e=this.getCurrentViewport();return this._linesLayout.getLinesViewportData(e.top,e.top+e.height)}getLinesViewportDataAtScrollTop(e){const t=this._scrollable.getScrollDimensions();return e+t.height>t.scrollHeight&&(e=t.scrollHeight-t.height),e<0&&(e=0),this._linesLayout.getLinesViewportData(e,e+t.height)}getWhitespaceViewportData(){const e=this.getCurrentViewport();return this._linesLayout.getWhitespaceViewportData(e.top,e.top+e.height)}getWhitespaces(){return this._linesLayout.getWhitespaces()}getContentWidth(){return this._scrollable.getScrollDimensions().contentWidth}getScrollWidth(){return this._scrollable.getScrollDimensions().scrollWidth}getContentHeight(){return this._scrollable.getScrollDimensions().contentHeight}getScrollHeight(){return this._scrollable.getScrollDimensions().scrollHeight}getCurrentScrollLeft(){return this._scrollable.getCurrentScrollPosition().scrollLeft}getCurrentScrollTop(){return this._scrollable.getCurrentScrollPosition().scrollTop}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}setScrollPosition(e,t){t===1?this._scrollable.setScrollPositionNow(e):this._scrollable.setScrollPositionSmooth(e)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}deltaScrollNow(e,t){const i=this._scrollable.getCurrentScrollPosition();this._scrollable.setScrollPositionNow({scrollLeft:i.scrollLeft+e,scrollTop:i.scrollTop+t})}}class voe{constructor(e,t,i,n,s){this.editorId=e,this.model=t,this.configuration=i,this._linesCollection=n,this._coordinatesConverter=s,this._decorationsCache=Object.create(null),this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}_clearCachedModelDecorationsResolver(){this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}dispose(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}reset(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onModelDecorationsChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onLineMappingChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}_getOrCreateViewModelDecoration(e){const t=e.id;let i=this._decorationsCache[t];if(!i){const n=e.range,s=e.options;let r;if(s.isWholeLine){const a=this._coordinatesConverter.convertModelPositionToViewPosition(new P(n.startLineNumber,1),0,!1,!0),l=this._coordinatesConverter.convertModelPositionToViewPosition(new P(n.endLineNumber,this.model.getLineMaxColumn(n.endLineNumber)),1);r=new I(a.lineNumber,a.column,l.lineNumber,l.column)}else r=this._coordinatesConverter.convertModelRangeToViewRange(n,1);i=new h8(r,s),this._decorationsCache[t]=i}return i}getMinimapDecorationsInRange(e){return this._getDecorationsInRange(e,!0,!1).decorations}getDecorationsViewportData(e){let t=this._cachedModelDecorationsResolver!==null;return t=t&&e.equalsRange(this._cachedModelDecorationsResolverViewRange),t||(this._cachedModelDecorationsResolver=this._getDecorationsInRange(e,!1,!1),this._cachedModelDecorationsResolverViewRange=e),this._cachedModelDecorationsResolver}getInlineDecorationsOnLine(e,t=!1,i=!1){const n=new I(e,this._linesCollection.getViewLineMinColumn(e),e,this._linesCollection.getViewLineMaxColumn(e));return this._getDecorationsInRange(n,t,i).inlineDecorations[0]}_getDecorationsInRange(e,t,i){const n=this._linesCollection.getDecorationsInRange(e,this.editorId,rC(this.configuration.options),t,i),s=e.startLineNumber,r=e.endLineNumber,a=[];let l=0;const c=[];for(let d=s;d<=r;d++)c[d-s]=[];for(let d=0,h=n.length;dt===1)}function Soe(o,e){return R8(o,e.range,t=>t===2)}function R8(o,e,t){for(let i=e.startLineNumber;i<=e.endLineNumber;i++){const n=o.tokenization.getLineTokens(i),s=i===e.startLineNumber,r=i===e.endLineNumber;let a=s?n.findTokenIndexAtOffset(e.startColumn-1):0;for(;ae.endColumn-1);){if(!t(n.getStandardTokenType(a)))return!1;a++}}return!0}function aL(o,e){return o===null?e?Wv.INSTANCE:Hv.INSTANCE:new Loe(o,e)}class Loe{constructor(e,t){this._projectionData=e,this._isVisible=t}isVisible(){return this._isVisible}setVisible(e){return this._isVisible=e,this}getProjectionData(){return this._projectionData}getViewLineCount(){return this._isVisible?this._projectionData.getOutputLineCount():0}getViewLineContent(e,t,i){this._assertVisible();const n=i>0?this._projectionData.breakOffsets[i-1]:0,s=this._projectionData.breakOffsets[i];let r;if(this._projectionData.injectionOffsets!==null){const a=this._projectionData.injectionOffsets.map((c,d)=>new _r(0,0,c+1,this._projectionData.injectionOptions[d],0));r=_r.applyInjectedText(e.getLineContent(t),a).substring(n,s)}else r=e.getValueInRange({startLineNumber:t,startColumn:n+1,endLineNumber:t,endColumn:s+1});return i>0&&(r=YO(this._projectionData.wrappedTextIndentLength)+r),r}getViewLineLength(e,t,i){return this._assertVisible(),this._projectionData.getLineLength(i)}getViewLineMinColumn(e,t,i){return this._assertVisible(),this._projectionData.getMinOutputOffset(i)+1}getViewLineMaxColumn(e,t,i){return this._assertVisible(),this._projectionData.getMaxOutputOffset(i)+1}getViewLineData(e,t,i){const n=new Array;return this.getViewLinesData(e,t,i,1,0,[!0],n),n[0]}getViewLinesData(e,t,i,n,s,r,a){this._assertVisible();const l=this._projectionData,c=l.injectionOffsets,d=l.injectionOptions;let h=null;if(c){h=[];let f=0,g=0;for(let p=0;p0?l.breakOffsets[p-1]:0,C=l.breakOffsets[p];for(;gC)break;if(b0?l.wrappedTextIndentLength:0,E=L+Math.max(v-b,0),N=L+Math.min(y-b,C-b);E!==N&&_.push(new hie(E,N,x.inlineClassName,x.inlineClassNameAffectsLetterSpacing))}}if(y<=C)f+=w,g++;else break}}}let u;c?u=e.tokenization.getLineTokens(t).withInserted(c.map((f,g)=>({offset:f,text:d[g].content,tokenMetadata:Ni.defaultTokenMetadata}))):u=e.tokenization.getLineTokens(t);for(let f=i;f0?n.wrappedTextIndentLength:0,r=i>0?n.breakOffsets[i-1]:0,a=n.breakOffsets[i],l=e.sliceAndInflate(r,a,s);let c=l.getLineContent();i>0&&(c=YO(n.wrappedTextIndentLength)+c);const d=this._projectionData.getMinOutputOffset(i)+1,h=c.length+1,u=i+1=lL.length)for(let e=1;e<=o;e++)lL[e]=xoe(e);return lL[o]}function xoe(o){return new Array(o+1).join(" ")}class koe{constructor(e,t,i,n,s,r,a,l,c,d){this._editorId=e,this.model=t,this._validModelVersionId=-1,this._domLineBreaksComputerFactory=i,this._monospaceLineBreaksComputerFactory=n,this.fontInfo=s,this.tabSize=r,this.wrappingStrategy=a,this.wrappingColumn=l,this.wrappingIndent=c,this.wordBreak=d,this._constructLines(!0,null)}dispose(){this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[])}createCoordinatesConverter(){return new Ioe(this)}_constructLines(e,t){this.modelLineProjections=[],e&&(this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[]));const i=this.model.getLinesContent(),n=this.model.getInjectedTextDecorations(this._editorId),s=i.length,r=this.createLineBreaksComputer(),a=new Ll(_r.fromDecorations(n));for(let p=0;pb.lineNumber===p+1);r.addRequest(i[p],_,t?t[p]:null)}const l=r.finalize(),c=[],d=this.hiddenAreasDecorationIds.map(p=>this.model.getDecorationRange(p)).sort(I.compareRangesUsingStarts);let h=1,u=0,f=-1,g=f+1=h&&_<=u,C=aL(l[p],!b);c[p]=C.getViewLineCount(),this.modelLineProjections[p]=C}this._validModelVersionId=this.model.getVersionId(),this.projectedModelLineLineCounts=new D$(c)}getHiddenAreas(){return this.hiddenAreasDecorationIds.map(e=>this.model.getDecorationRange(e))}setHiddenAreas(e){const t=e.map(u=>this.model.validateRange(u)),i=Doe(t),n=this.hiddenAreasDecorationIds.map(u=>this.model.getDecorationRange(u)).sort(I.compareRangesUsingStarts);if(i.length===n.length){let u=!1;for(let f=0;f({range:u,options:kt.EMPTY}));this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,s);const r=i;let a=1,l=0,c=-1,d=c+1=a&&f<=l?this.modelLineProjections[u].isVisible()&&(this.modelLineProjections[u]=this.modelLineProjections[u].setVisible(!1),g=!0):(h=!0,this.modelLineProjections[u].isVisible()||(this.modelLineProjections[u]=this.modelLineProjections[u].setVisible(!0),g=!0)),g){const p=this.modelLineProjections[u].getViewLineCount();this.projectedModelLineLineCounts.setValue(u,p)}}return h||this.setHiddenAreas([]),!0}modelPositionIsVisible(e,t){return e<1||e>this.modelLineProjections.length?!1:this.modelLineProjections[e-1].isVisible()}getModelLineViewLineCount(e){return e<1||e>this.modelLineProjections.length?1:this.modelLineProjections[e-1].getViewLineCount()}setTabSize(e){return this.tabSize===e?!1:(this.tabSize=e,this._constructLines(!1,null),!0)}setWrappingSettings(e,t,i,n,s){const r=this.fontInfo.equals(e),a=this.wrappingStrategy===t,l=this.wrappingColumn===i,c=this.wrappingIndent===n,d=this.wordBreak===s;if(r&&a&&l&&c&&d)return!1;const h=r&&a&&!l&&c&&d;this.fontInfo=e,this.wrappingStrategy=t,this.wrappingColumn=i,this.wrappingIndent=n,this.wordBreak=s;let u=null;if(h){u=[];for(let f=0,g=this.modelLineProjections.length;f2&&!this.modelLineProjections[t-2].isVisible(),r=t===1?1:this.projectedModelLineLineCounts.getPrefixSum(t-1)+1;let a=0;const l=[],c=[];for(let d=0,h=n.length;dl?(d=this.projectedModelLineLineCounts.getPrefixSum(t-1)+1,h=d+l-1,g=h+1,p=g+(s-l)-1,c=!0):st?t:e|0}getActiveIndentGuide(e,t,i){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t),i=this._toValidViewLineNumber(i);const n=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),s=this.convertViewPositionToModelPosition(t,this.getViewLineMinColumn(t)),r=this.convertViewPositionToModelPosition(i,this.getViewLineMinColumn(i)),a=this.model.guides.getActiveIndentGuide(n.lineNumber,s.lineNumber,r.lineNumber),l=this.convertModelPositionToViewPosition(a.startLineNumber,1),c=this.convertModelPositionToViewPosition(a.endLineNumber,this.model.getLineMaxColumn(a.endLineNumber));return{startLineNumber:l.lineNumber,endLineNumber:c.lineNumber,indent:a.indent}}getViewLineInfo(e){e=this._toValidViewLineNumber(e);const t=this.projectedModelLineLineCounts.getIndexOf(e-1),i=t.index,n=t.remainder;return new QO(i+1,n)}getMinColumnOfViewLine(e){return this.modelLineProjections[e.modelLineNumber-1].getViewLineMinColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx)}getMaxColumnOfViewLine(e){return this.modelLineProjections[e.modelLineNumber-1].getViewLineMaxColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx)}getModelStartPositionOfViewLine(e){const t=this.modelLineProjections[e.modelLineNumber-1],i=t.getViewLineMinColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx),n=t.getModelColumnOfViewPosition(e.modelLineWrappedLineIdx,i);return new P(e.modelLineNumber,n)}getModelEndPositionOfViewLine(e){const t=this.modelLineProjections[e.modelLineNumber-1],i=t.getViewLineMaxColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx),n=t.getModelColumnOfViewPosition(e.modelLineWrappedLineIdx,i);return new P(e.modelLineNumber,n)}getViewLineInfosGroupedByModelRanges(e,t){const i=this.getViewLineInfo(e),n=this.getViewLineInfo(t),s=new Array;let r=this.getModelStartPositionOfViewLine(i),a=new Array;for(let l=i.modelLineNumber;l<=n.modelLineNumber;l++){const c=this.modelLineProjections[l-1];if(c.isVisible()){const d=l===i.modelLineNumber?i.modelLineWrappedLineIdx:0,h=l===n.modelLineNumber?n.modelLineWrappedLineIdx+1:c.getViewLineCount();for(let u=d;u{if(f.forWrappedLinesAfterColumn!==-1&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,f.forWrappedLinesAfterColumn).lineNumber>=d.modelLineWrappedLineIdx||f.forWrappedLinesBeforeOrAtColumn!==-1&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,f.forWrappedLinesBeforeOrAtColumn).lineNumberd.modelLineWrappedLineIdx)return}const p=this.convertModelPositionToViewPosition(d.modelLineNumber,f.horizontalLine.endColumn),_=this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,f.horizontalLine.endColumn);return _.lineNumber===d.modelLineWrappedLineIdx?new Kd(f.visibleColumn,g,f.className,new tp(f.horizontalLine.top,p.column),-1,-1):_.lineNumber!!f))}}return r}getViewLinesIndentGuides(e,t){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t);const i=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),n=this.convertViewPositionToModelPosition(t,this.getViewLineMaxColumn(t));let s=[];const r=[],a=[],l=i.lineNumber-1,c=n.lineNumber-1;let d=null;for(let g=l;g<=c;g++){const p=this.modelLineProjections[g];if(p.isVisible()){const _=p.getViewLineNumberOfModelPosition(0,g===l?i.column:1),b=p.getViewLineNumberOfModelPosition(0,this.model.getLineMaxColumn(g+1)),C=b-_+1;let w=0;C>1&&p.getViewLineMinColumn(this.model,g+1,b)===1&&(w=_===0?1:2),r.push(C),a.push(w),d===null&&(d=new P(g+1,0))}else d!==null&&(s=s.concat(this.model.guides.getLinesIndentGuides(d.lineNumber,g)),d=null)}d!==null&&(s=s.concat(this.model.guides.getLinesIndentGuides(d.lineNumber,n.lineNumber)),d=null);const h=t-e+1,u=new Array(h);let f=0;for(let g=0,p=s.length;gt&&(g=!0,f=t-s+1),h.getViewLinesData(this.model,c+1,u,f,s-e,i,l),s+=f,g)break}return l}validateViewPosition(e,t,i){e=this._toValidViewLineNumber(e);const n=this.projectedModelLineLineCounts.getIndexOf(e-1),s=n.index,r=n.remainder,a=this.modelLineProjections[s],l=a.getViewLineMinColumn(this.model,s+1,r),c=a.getViewLineMaxColumn(this.model,s+1,r);tc&&(t=c);const d=a.getModelColumnOfViewPosition(r,t);return this.model.validatePosition(new P(s+1,d)).equals(i)?new P(e,t):this.convertModelPositionToViewPosition(i.lineNumber,i.column)}validateViewRange(e,t){const i=this.validateViewPosition(e.startLineNumber,e.startColumn,t.getStartPosition()),n=this.validateViewPosition(e.endLineNumber,e.endColumn,t.getEndPosition());return new I(i.lineNumber,i.column,n.lineNumber,n.column)}convertViewPositionToModelPosition(e,t){const i=this.getViewLineInfo(e),n=this.modelLineProjections[i.modelLineNumber-1].getModelColumnOfViewPosition(i.modelLineWrappedLineIdx,t);return this.model.validatePosition(new P(i.modelLineNumber,n))}convertViewRangeToModelRange(e){const t=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),i=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);return new I(t.lineNumber,t.column,i.lineNumber,i.column)}convertModelPositionToViewPosition(e,t,i=2,n=!1,s=!1){const r=this.model.validatePosition(new P(e,t)),a=r.lineNumber,l=r.column;let c=a-1,d=!1;if(s)for(;c0&&!this.modelLineProjections[c].isVisible();)c--,d=!0;if(c===0&&!this.modelLineProjections[c].isVisible())return new P(n?0:1,1);const h=1+this.projectedModelLineLineCounts.getPrefixSum(c);let u;return d?s?u=this.modelLineProjections[c].getViewPositionOfModelPosition(h,1,i):u=this.modelLineProjections[c].getViewPositionOfModelPosition(h,this.model.getLineMaxColumn(c+1),i):u=this.modelLineProjections[a-1].getViewPositionOfModelPosition(h,l,i),u}convertModelRangeToViewRange(e,t=0){if(e.isEmpty()){const i=this.convertModelPositionToViewPosition(e.startLineNumber,e.startColumn,t);return I.fromPositions(i)}else{const i=this.convertModelPositionToViewPosition(e.startLineNumber,e.startColumn,1),n=this.convertModelPositionToViewPosition(e.endLineNumber,e.endColumn,0);return new I(i.lineNumber,i.column,n.lineNumber,n.column)}}getViewLineNumberOfModelPosition(e,t){let i=e-1;if(this.modelLineProjections[i].isVisible()){const s=1+this.projectedModelLineLineCounts.getPrefixSum(i);return this.modelLineProjections[i].getViewLineNumberOfModelPosition(s,t)}for(;i>0&&!this.modelLineProjections[i].isVisible();)i--;if(i===0&&!this.modelLineProjections[i].isVisible())return 1;const n=1+this.projectedModelLineLineCounts.getPrefixSum(i);return this.modelLineProjections[i].getViewLineNumberOfModelPosition(n,this.model.getLineMaxColumn(i+1))}getDecorationsInRange(e,t,i,n,s){const r=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),a=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);if(a.lineNumber-r.lineNumber<=e.endLineNumber-e.startLineNumber)return this.model.getDecorationsInRange(new I(r.lineNumber,1,a.lineNumber,a.column),t,i,n,s);let l=[];const c=r.lineNumber-1,d=a.lineNumber-1;let h=null;for(let p=c;p<=d;p++)if(this.modelLineProjections[p].isVisible())h===null&&(h=new P(p+1,p===c?r.column:1));else if(h!==null){const b=this.model.getLineMaxColumn(p);l=l.concat(this.model.getDecorationsInRange(new I(h.lineNumber,h.column,p,b),t,i,n)),h=null}h!==null&&(l=l.concat(this.model.getDecorationsInRange(new I(h.lineNumber,h.column,a.lineNumber,a.column),t,i,n)),h=null),l.sort((p,_)=>{const b=I.compareRangesUsingStarts(p.range,_.range);return b===0?p.id<_.id?-1:p.id>_.id?1:0:b});const u=[];let f=0,g=null;for(const p of l){const _=p.id;g!==_&&(g=_,u[f++]=p)}return u}getInjectedTextAt(e){const t=this.getViewLineInfo(e.lineNumber);return this.modelLineProjections[t.modelLineNumber-1].getInjectedTextAt(t.modelLineWrappedLineIdx,e.column)}normalizePosition(e,t){const i=this.getViewLineInfo(e.lineNumber);return this.modelLineProjections[i.modelLineNumber-1].normalizePosition(i.modelLineWrappedLineIdx,e,t)}getLineIndentColumn(e){const t=this.getViewLineInfo(e);return t.modelLineWrappedLineIdx===0?this.model.getLineIndentColumn(t.modelLineNumber):0}}function Doe(o){if(o.length===0)return[];const e=o.slice();e.sort(I.compareRangesUsingStarts);const t=[];let i=e[0].startLineNumber,n=e[0].endLineNumber;for(let s=1,r=e.length;sn+1?(t.push(new I(i,1,n,1)),i=a.startLineNumber,n=a.endLineNumber):a.endLineNumber>n&&(n=a.endLineNumber)}return t.push(new I(i,1,n,1)),t}class QO{constructor(e,t){this.modelLineNumber=e,this.modelLineWrappedLineIdx=t}}class XO{constructor(e,t){this.modelRange=e,this.viewLines=t}}class Ioe{constructor(e){this._lines=e}convertViewPositionToModelPosition(e){return this._lines.convertViewPositionToModelPosition(e.lineNumber,e.column)}convertViewRangeToModelRange(e){return this._lines.convertViewRangeToModelRange(e)}validateViewPosition(e,t){return this._lines.validateViewPosition(e.lineNumber,e.column,t)}validateViewRange(e,t){return this._lines.validateViewRange(e,t)}convertModelPositionToViewPosition(e,t,i,n){return this._lines.convertModelPositionToViewPosition(e.lineNumber,e.column,t,i,n)}convertModelRangeToViewRange(e,t){return this._lines.convertModelRangeToViewRange(e,t)}modelPositionIsVisible(e){return this._lines.modelPositionIsVisible(e.lineNumber,e.column)}getModelLineViewLineCount(e){return this._lines.getModelLineViewLineCount(e)}getViewLineNumberOfModelPosition(e,t){return this._lines.getViewLineNumberOfModelPosition(e,t)}}class Eoe{constructor(e){this.model=e}dispose(){}createCoordinatesConverter(){return new Noe(this)}getHiddenAreas(){return[]}setHiddenAreas(e){return!1}setTabSize(e){return!1}setWrappingSettings(e,t,i,n){return!1}createLineBreaksComputer(){const e=[];return{addRequest:(t,i,n)=>{e.push(null)},finalize:()=>e}}onModelFlushed(){}onModelLinesDeleted(e,t,i){return new WI(t,i)}onModelLinesInserted(e,t,i,n){return new HI(t,i)}onModelLineChanged(e,t,i){return[!1,new M8(t,1),null,null]}acceptVersionId(e){}getViewLineCount(){return this.model.getLineCount()}getActiveIndentGuide(e,t,i){return{startLineNumber:e,endLineNumber:e,indent:0}}getViewLinesBracketGuides(e,t,i){return new Array(t-e+1).fill([])}getViewLinesIndentGuides(e,t){const i=t-e+1,n=new Array(i);for(let s=0;st)}getModelLineViewLineCount(e){return 1}getViewLineNumberOfModelPosition(e,t){return e}}const ad=Ao.Right;class Toe{constructor(e){this.persist=0,this._requiredLanes=1,this.lanes=new Uint8Array(Math.ceil((e+1)*ad/8))}reset(e){const t=Math.ceil((e+1)*ad/8);this.lanes.length>>3]|=1<>>3]&1<>>3]&1<this._updateConfigurationViewLineCountNow(),0)),this._hasFocus=!1,this._viewportStart=X2.create(this.model),this.glyphLanes=new Toe(0),this.model.isTooLargeForTokenization())this._lines=new Eoe(this.model);else{const h=this._configuration.options,u=h.get(50),f=h.get(140),g=h.get(147),p=h.get(139),_=h.get(130);this._lines=new koe(this._editorId,this.model,n,s,u,this.model.getOptions().tabSize,f,g.wrappingColumn,p,_)}this.coordinatesConverter=this._lines.createCoordinatesConverter(),this._cursor=this._register(new hoe(i,this,this.coordinatesConverter,this.cursorConfig)),this.viewLayout=this._register(new Coe(this._configuration,this.getLineCount(),r)),this._register(this.viewLayout.onDidScroll(h=>{h.scrollTopChanged&&this._handleVisibleLinesChanged(),h.scrollTopChanged&&this._viewportStart.invalidate(),this._eventDispatcher.emitSingleViewEvent(new Zse(h)),this._eventDispatcher.emitOutgoingEvent(new Q2(h.oldScrollWidth,h.oldScrollLeft,h.oldScrollHeight,h.oldScrollTop,h.scrollWidth,h.scrollLeft,h.scrollHeight,h.scrollTop))})),this._register(this.viewLayout.onDidContentSizeChange(h=>{this._eventDispatcher.emitOutgoingEvent(h)})),this._decorations=new voe(this._editorId,this.model,this._configuration,this._lines,this.coordinatesConverter),this._registerModelEvents(),this._register(this._configuration.onDidChangeFast(h=>{try{const u=this._eventDispatcher.beginEmitViewEvents();this._onConfigurationChanged(u,h)}finally{this._eventDispatcher.endEmitViewEvents()}})),this._register(Pv.getInstance().onDidChange(()=>{this._eventDispatcher.emitSingleViewEvent(new Xse)})),this._register(this._themeService.onDidColorThemeChange(h=>{this._invalidateDecorationsColorCache(),this._eventDispatcher.emitSingleViewEvent(new Yse(h))})),this._updateConfigurationViewLineCountNow()}dispose(){super.dispose(),this._decorations.dispose(),this._lines.dispose(),this._viewportStart.dispose(),this._eventDispatcher.dispose()}createLineBreaksComputer(){return this._lines.createLineBreaksComputer()}addViewEventHandler(e){this._eventDispatcher.addViewEventHandler(e)}removeViewEventHandler(e){this._eventDispatcher.removeViewEventHandler(e)}_updateConfigurationViewLineCountNow(){this._configuration.setViewLineCount(this._lines.getViewLineCount())}getModelVisibleRanges(){const e=this.viewLayout.getLinesViewportData(),t=new I(e.startLineNumber,this.getLineMinColumn(e.startLineNumber),e.endLineNumber,this.getLineMaxColumn(e.endLineNumber));return this._toModelVisibleRanges(t)}visibleLinesStabilized(){const e=this.getModelVisibleRanges();this._attachedView.setVisibleLines(e,!0)}_handleVisibleLinesChanged(){const e=this.getModelVisibleRanges();this._attachedView.setVisibleLines(e,!1)}setHasFocus(e){this._hasFocus=e,this._cursor.setHasFocus(e),this._eventDispatcher.emitSingleViewEvent(new qse(e)),this._eventDispatcher.emitOutgoingEvent(new Y2(!e,e))}onCompositionStart(){this._eventDispatcher.emitSingleViewEvent(new Use)}onCompositionEnd(){this._eventDispatcher.emitSingleViewEvent(new $se)}_captureStableViewport(){if(this._viewportStart.isValid&&this.viewLayout.getCurrentScrollTop()>0){const e=new P(this._viewportStart.viewLineNumber,this.getLineMinColumn(this._viewportStart.viewLineNumber)),t=this.coordinatesConverter.convertViewPositionToModelPosition(e);return new e4(t,this._viewportStart.startLineDelta)}return new e4(null,0)}_onConfigurationChanged(e,t){const i=this._captureStableViewport(),n=this._configuration.options,s=n.get(50),r=n.get(140),a=n.get(147),l=n.get(139),c=n.get(130);this._lines.setWrappingSettings(s,r,a.wrappingColumn,l,c)&&(e.emitViewEvent(new s1),e.emitViewEvent(new o1),e.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(e),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this._updateConfigurationViewLineCount.schedule()),t.hasChanged(92)&&(this._decorations.reset(),e.emitViewEvent(new rd(null))),t.hasChanged(99)&&(this._decorations.reset(),e.emitViewEvent(new rd(null))),e.emitViewEvent(new Kse(t)),this.viewLayout.onConfigurationChanged(t),i.recoverViewportStart(this.coordinatesConverter,this.viewLayout),Au.shouldRecreate(t)&&(this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig))}_registerModelEvents(){this._register(this.model.onDidChangeContentOrInjectedText(e=>{try{const i=this._eventDispatcher.beginEmitViewEvents();let n=!1,s=!1;const r=e instanceof th?e.rawContentChangedEvent.changes:e.changes,a=e instanceof th?e.rawContentChangedEvent.versionId:null,l=this._lines.createLineBreaksComputer();for(const h of r)switch(h.changeType){case 4:{for(let u=0;u!p.ownerId||p.ownerId===this._editorId)),l.addRequest(f,g,null)}break}case 2:{let u=null;h.injectedText&&(u=h.injectedText.filter(f=>!f.ownerId||f.ownerId===this._editorId)),l.addRequest(h.detail,u,null);break}}const c=l.finalize(),d=new Ll(c);for(const h of r)switch(h.changeType){case 1:{this._lines.onModelFlushed(),i.emitViewEvent(new s1),this._decorations.reset(),this.viewLayout.onFlushed(this.getLineCount()),n=!0;break}case 3:{const u=this._lines.onModelLinesDeleted(a,h.fromLineNumber,h.toLineNumber);u!==null&&(i.emitViewEvent(u),this.viewLayout.onLinesDeleted(u.fromLineNumber,u.toLineNumber)),n=!0;break}case 4:{const u=d.takeCount(h.detail.length),f=this._lines.onModelLinesInserted(a,h.fromLineNumber,h.toLineNumber,u);f!==null&&(i.emitViewEvent(f),this.viewLayout.onLinesInserted(f.fromLineNumber,f.toLineNumber)),n=!0;break}case 2:{const u=d.dequeue(),[f,g,p,_]=this._lines.onModelLineChanged(a,h.lineNumber,u);s=f,g&&i.emitViewEvent(g),p&&(i.emitViewEvent(p),this.viewLayout.onLinesInserted(p.fromLineNumber,p.toLineNumber)),_&&(i.emitViewEvent(_),this.viewLayout.onLinesDeleted(_.fromLineNumber,_.toLineNumber));break}case 5:break}a!==null&&this._lines.acceptVersionId(a),this.viewLayout.onHeightMaybeChanged(),!n&&s&&(i.emitViewEvent(new o1),i.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(i),this._decorations.onLineMappingChanged())}finally{this._eventDispatcher.endEmitViewEvents()}const t=this._viewportStart.isValid;if(this._viewportStart.invalidate(),this._configuration.setModelLineCount(this.model.getLineCount()),this._updateConfigurationViewLineCountNow(),!this._hasFocus&&this.model.getAttachedEditorCount()>=2&&t){const i=this.model._getTrackedRange(this._viewportStart.modelTrackedRange);if(i){const n=this.coordinatesConverter.convertModelPositionToViewPosition(i.getStartPosition()),s=this.viewLayout.getVerticalOffsetForLineNumber(n.lineNumber);this.viewLayout.setScrollPosition({scrollTop:s+this._viewportStart.startLineDelta},1)}}try{const i=this._eventDispatcher.beginEmitViewEvents();e instanceof th&&i.emitOutgoingEvent(new loe(e.contentChangedEvent)),this._cursor.onModelContentChanged(i,e)}finally{this._eventDispatcher.endEmitViewEvents()}this._handleVisibleLinesChanged()})),this._register(this.model.onDidChangeTokens(e=>{const t=[];for(let i=0,n=e.ranges.length;i{this._eventDispatcher.emitSingleViewEvent(new Gse),this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new aoe(e))})),this._register(this.model.onDidChangeLanguage(e=>{this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new roe(e))})),this._register(this.model.onDidChangeOptions(e=>{if(this._lines.setTabSize(this.model.getOptions().tabSize)){try{const t=this._eventDispatcher.beginEmitViewEvents();t.emitViewEvent(new s1),t.emitViewEvent(new o1),t.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(t),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount())}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule()}this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new coe(e))})),this._register(this.model.onDidChangeDecorations(e=>{this._decorations.onModelDecorationsChanged(),this._eventDispatcher.emitSingleViewEvent(new rd(e)),this._eventDispatcher.emitOutgoingEvent(new ooe(e))}))}setHiddenAreas(e,t){this.hiddenAreasModel.setHiddenAreas(t,e);const i=this.hiddenAreasModel.getMergedRanges();if(i===this.previousHiddenAreas)return;this.previousHiddenAreas=i;const n=this._captureStableViewport();let s=!1;try{const r=this._eventDispatcher.beginEmitViewEvents();s=this._lines.setHiddenAreas(i),s&&(r.emitViewEvent(new s1),r.emitViewEvent(new o1),r.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(r),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this.viewLayout.onHeightMaybeChanged());const a=n.viewportStartModelPosition?.lineNumber;a&&i.some(c=>c.startLineNumber<=a&&a<=c.endLineNumber)||n.recoverViewportStart(this.coordinatesConverter,this.viewLayout)}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule(),s&&this._eventDispatcher.emitOutgoingEvent(new noe)}getVisibleRangesPlusViewportAboveBelow(){const e=this._configuration.options.get(146),t=this._configuration.options.get(67),i=Math.max(20,Math.round(e.height/t)),n=this.viewLayout.getLinesViewportData(),s=Math.max(1,n.completelyVisibleStartLineNumber-i),r=Math.min(this.getLineCount(),n.completelyVisibleEndLineNumber+i);return this._toModelVisibleRanges(new I(s,this.getLineMinColumn(s),r,this.getLineMaxColumn(r)))}getVisibleRanges(){const e=this.getCompletelyVisibleViewRange();return this._toModelVisibleRanges(e)}getHiddenAreas(){return this._lines.getHiddenAreas()}_toModelVisibleRanges(e){const t=this.coordinatesConverter.convertViewRangeToModelRange(e),i=this._lines.getHiddenAreas();if(i.length===0)return[t];const n=[];let s=0,r=t.startLineNumber,a=t.startColumn;const l=t.endLineNumber,c=t.endColumn;for(let d=0,h=i.length;dl||(r"u")return this._reduceRestoreStateCompatibility(e);const t=this.model.validatePosition(e.firstPosition),i=this.coordinatesConverter.convertModelPositionToViewPosition(t),n=this.viewLayout.getVerticalOffsetForLineNumber(i.lineNumber)-e.firstPositionDeltaTop;return{scrollLeft:e.scrollLeft,scrollTop:n}}_reduceRestoreStateCompatibility(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTopWithoutViewZones}}getTabSize(){return this.model.getOptions().tabSize}getLineCount(){return this._lines.getViewLineCount()}setViewport(e,t,i){this._viewportStart.update(this,e)}getActiveIndentGuide(e,t,i){return this._lines.getActiveIndentGuide(e,t,i)}getLinesIndentGuides(e,t){return this._lines.getViewLinesIndentGuides(e,t)}getBracketGuidesInRangeByLine(e,t,i,n){return this._lines.getViewLinesBracketGuides(e,t,i,n)}getLineContent(e){return this._lines.getViewLineContent(e)}getLineLength(e){return this._lines.getViewLineLength(e)}getLineMinColumn(e){return this._lines.getViewLineMinColumn(e)}getLineMaxColumn(e){return this._lines.getViewLineMaxColumn(e)}getLineFirstNonWhitespaceColumn(e){const t=zn(this.getLineContent(e));return t===-1?0:t+1}getLineLastNonWhitespaceColumn(e){const t=Jh(this.getLineContent(e));return t===-1?0:t+2}getMinimapDecorationsInRange(e){return this._decorations.getMinimapDecorationsInRange(e)}getDecorationsInViewport(e){return this._decorations.getDecorationsViewportData(e).decorations}getInjectedTextAt(e){return this._lines.getInjectedTextAt(e)}getViewportViewLineRenderingData(e,t){const n=this._decorations.getDecorationsViewportData(e).inlineDecorations[t-e.startLineNumber];return this._getViewLineRenderingData(t,n)}getViewLineRenderingData(e){const t=this._decorations.getInlineDecorationsOnLine(e);return this._getViewLineRenderingData(e,t)}_getViewLineRenderingData(e,t){const i=this.model.mightContainRTL(),n=this.model.mightContainNonBasicASCII(),s=this.getTabSize(),r=this._lines.getViewLineData(e);return r.inlineDecorations&&(t=[...t,...r.inlineDecorations.map(a=>a.toInlineDecoration(e))]),new zs(r.minColumn,r.maxColumn,r.content,r.continuesWithWrappedLine,i,n,r.tokens,t,s,r.startVisibleColumn)}getViewLineData(e){return this._lines.getViewLineData(e)}getMinimapLinesRenderingData(e,t,i){const n=this._lines.getViewLinesData(e,t,i);return new die(this.getTabSize(),n)}getAllOverviewRulerDecorations(e){const t=this.model.getOverviewRulerDecorations(this._editorId,rC(this._configuration.options)),i=new Roe;for(const n of t){const s=n.options,r=s.overviewRuler;if(!r)continue;const a=r.position;if(a===0)continue;const l=r.getColor(e.value),c=this.coordinatesConverter.getViewLineNumberOfModelPosition(n.range.startLineNumber,n.range.startColumn),d=this.coordinatesConverter.getViewLineNumberOfModelPosition(n.range.endLineNumber,n.range.endColumn);i.accept(l,s.zIndex,c,d,a)}return i.asArray}_invalidateDecorationsColorCache(){const e=this.model.getOverviewRulerDecorations();for(const t of e)t.options.overviewRuler?.invalidateCachedColor(),t.options.minimap?.invalidateCachedColor()}getValueInRange(e,t){const i=this.coordinatesConverter.convertViewRangeToModelRange(e);return this.model.getValueInRange(i,t)}getValueLengthInRange(e,t){const i=this.coordinatesConverter.convertViewRangeToModelRange(e);return this.model.getValueLengthInRange(i,t)}modifyPosition(e,t){const i=this.coordinatesConverter.convertViewPositionToModelPosition(e),n=this.model.modifyPosition(i,t);return this.coordinatesConverter.convertModelPositionToViewPosition(n)}deduceModelPositionRelativeToViewPosition(e,t,i){const n=this.coordinatesConverter.convertViewPositionToModelPosition(e);this.model.getEOL().length===2&&(t<0?t-=i:t+=i);const r=this.model.getOffsetAt(n)+t;return this.model.getPositionAt(r)}getPlainTextToCopy(e,t,i){const n=i?`\r +`:this.model.getEOL();e=e.slice(0),e.sort(I.compareRangesUsingStarts);let s=!1,r=!1;for(const l of e)l.isEmpty()?s=!0:r=!0;if(!r){if(!t)return"";const l=e.map(d=>d.startLineNumber);let c="";for(let d=0;d0&&l[d-1]===l[d]||(c+=this.model.getLineContent(l[d])+n);return c}if(s&&t){const l=[];let c=0;for(const d of e){const h=d.startLineNumber;d.isEmpty()?h!==c&&l.push(this.model.getLineContent(h)):l.push(this.model.getValueInRange(d,i?2:0)),c=h}return l.length===1?l[0]:l}const a=[];for(const l of e)l.isEmpty()||a.push(this.model.getValueInRange(l,i?2:0));return a.length===1?a[0]:a}getRichTextToCopy(e,t){const i=this.model.getLanguageId();if(i===Bs||e.length!==1)return null;let n=e[0];if(n.isEmpty()){if(!t)return null;const d=n.startLineNumber;n=new I(d,this.model.getLineMinColumn(d),d,this.model.getLineMaxColumn(d))}const s=this._configuration.options.get(50),r=this._getColorMap(),l=/[:;\\\/<>]/.test(s.fontFamily)||s.fontFamily===ls.fontFamily;let c;return l?c=ls.fontFamily:(c=s.fontFamily,c=c.replace(/"/g,"'"),/[,']/.test(c)||/[+ ]/.test(c)&&(c=`'${c}'`),c=`${c}, ${ls.fontFamily}`),{mode:i,html:`
    `+this._getHTMLToCopy(n,r)+"
    "}}_getHTMLToCopy(e,t){const i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn,a=this.getTabSize();let l="";for(let c=i;c<=s;c++){const d=this.model.tokenization.getLineTokens(c),h=d.getLineContent(),u=c===i?n-1:0,f=c===s?r-1:h.length;h===""?l+="
    ":l+=NG(h,d.inflate(),t,u,f,a,kn)}return l}_getColorMap(){const e=si.getColorMap(),t=["#000000"];if(e)for(let i=1,n=e.length;ithis._cursor.setStates(n,e,t,i))}getCursorColumnSelectData(){return this._cursor.getCursorColumnSelectData()}getCursorAutoClosedCharacters(){return this._cursor.getAutoClosedCharacters()}setCursorColumnSelectData(e){this._cursor.setCursorColumnSelectData(e)}getPrevEditOperationType(){return this._cursor.getPrevEditOperationType()}setPrevEditOperationType(e){this._cursor.setPrevEditOperationType(e)}getSelection(){return this._cursor.getSelection()}getSelections(){return this._cursor.getSelections()}getPosition(){return this._cursor.getPrimaryCursorState().modelState.position}setSelections(e,t,i=0){this._withViewEventsCollector(n=>this._cursor.setSelections(n,e,t,i))}saveCursorState(){return this._cursor.saveState()}restoreCursorState(e){this._withViewEventsCollector(t=>this._cursor.restoreState(t,e))}_executeCursorEdit(e){if(this._cursor.context.cursorConfig.readOnly){this._eventDispatcher.emitOutgoingEvent(new soe);return}this._withViewEventsCollector(e)}executeEdits(e,t,i){this._executeCursorEdit(n=>this._cursor.executeEdits(n,e,t,i))}startComposition(){this._executeCursorEdit(e=>this._cursor.startComposition(e))}endComposition(e){this._executeCursorEdit(t=>this._cursor.endComposition(t,e))}type(e,t){this._executeCursorEdit(i=>this._cursor.type(i,e,t))}compositionType(e,t,i,n,s){this._executeCursorEdit(r=>this._cursor.compositionType(r,e,t,i,n,s))}paste(e,t,i,n){this._executeCursorEdit(s=>this._cursor.paste(s,e,t,i,n))}cut(e){this._executeCursorEdit(t=>this._cursor.cut(t,e))}executeCommand(e,t){this._executeCursorEdit(i=>this._cursor.executeCommand(i,e,t))}executeCommands(e,t){this._executeCursorEdit(i=>this._cursor.executeCommands(i,e,t))}revealAllCursors(e,t,i=!1){this._withViewEventsCollector(n=>this._cursor.revealAll(n,e,i,0,t,0))}revealPrimaryCursor(e,t,i=!1){this._withViewEventsCollector(n=>this._cursor.revealPrimary(n,e,i,0,t,0))}revealTopMostCursor(e){const t=this._cursor.getTopMostViewPosition(),i=new I(t.lineNumber,t.column,t.lineNumber,t.column);this._withViewEventsCollector(n=>n.emitViewEvent(new bp(e,!1,i,null,0,!0,0)))}revealBottomMostCursor(e){const t=this._cursor.getBottomMostViewPosition(),i=new I(t.lineNumber,t.column,t.lineNumber,t.column);this._withViewEventsCollector(n=>n.emitViewEvent(new bp(e,!1,i,null,0,!0,0)))}revealRange(e,t,i,n,s){this._withViewEventsCollector(r=>r.emitViewEvent(new bp(e,!1,i,null,n,t,s)))}changeWhitespace(e){this.viewLayout.changeWhitespace(e)&&(this._eventDispatcher.emitSingleViewEvent(new Jse),this._eventDispatcher.emitOutgoingEvent(new ioe))}_withViewEventsCollector(e){return this._transactionalTarget.batchChanges(()=>{try{const t=this._eventDispatcher.beginEmitViewEvents();return e(t)}finally{this._eventDispatcher.endEmitViewEvents()}})}batchEvents(e){this._withViewEventsCollector(()=>{e()})}normalizePosition(e,t){return this._lines.normalizePosition(e,t)}getLineIndentColumn(e){return this._lines.getLineIndentColumn(e)}};class X2{static create(e){const t=e._setTrackedRange(null,new I(1,1,1,1),1);return new X2(e,1,!1,t,0)}get viewLineNumber(){return this._viewLineNumber}get isValid(){return this._isValid}get modelTrackedRange(){return this._modelTrackedRange}get startLineDelta(){return this._startLineDelta}constructor(e,t,i,n,s){this._model=e,this._viewLineNumber=t,this._isValid=i,this._modelTrackedRange=n,this._startLineDelta=s}dispose(){this._model._setTrackedRange(this._modelTrackedRange,null,1)}update(e,t){const i=e.coordinatesConverter.convertViewPositionToModelPosition(new P(t,e.getLineMinColumn(t))),n=e.model._setTrackedRange(this._modelTrackedRange,new I(i.lineNumber,i.column,i.lineNumber,i.column),1),s=e.viewLayout.getVerticalOffsetForLineNumber(t),r=e.viewLayout.getCurrentScrollTop();this._viewLineNumber=t,this._isValid=!0,this._modelTrackedRange=n,this._startLineDelta=r-s}invalidate(){this._isValid=!1}}class Roe{constructor(){this._asMap=Object.create(null),this.asArray=[]}accept(e,t,i,n,s){const r=this._asMap[e];if(r){const a=r.data,l=a[a.length-3],c=a[a.length-1];if(l===s&&c+1>=i){n>c&&(a[a.length-1]=n);return}a.push(s,i,n)}else{const a=new w_(e,t,[s,i,n]);this._asMap[e]=a,this.asArray.push(a)}}}class Aoe{constructor(){this.hiddenAreas=new Map,this.shouldRecompute=!1,this.ranges=[]}setHiddenAreas(e,t){const i=this.hiddenAreas.get(e);i&&JO(i,t)||(this.hiddenAreas.set(e,t),this.shouldRecompute=!0)}getMergedRanges(){if(!this.shouldRecompute)return this.ranges;this.shouldRecompute=!1;const e=Array.from(this.hiddenAreas.values()).reduce((t,i)=>Poe(t,i),[]);return JO(this.ranges,e)?this.ranges:(this.ranges=e,this.ranges)}}function Poe(o,e){const t=[];let i=0,n=0;for(;i=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Aa=function(o,e){return function(t,i){e(t,i,o)}},md,dh;let I_=(dh=class extends z{get isSimpleWidget(){return this._configuration.isSimpleWidget}get contextMenuId(){return this._configuration.contextMenuId}constructor(e,t,i,n,s,r,a,l,c,d,h,u){super(),this.languageConfigurationService=h,this._deliveryQueue=kW(),this._contributions=this._register(new Wse),this._onDidDispose=this._register(new A),this.onDidDispose=this._onDidDispose.event,this._onDidChangeModelContent=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelContent=this._onDidChangeModelContent.event,this._onDidChangeModelLanguage=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguage=this._onDidChangeModelLanguage.event,this._onDidChangeModelLanguageConfiguration=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguageConfiguration=this._onDidChangeModelLanguageConfiguration.event,this._onDidChangeModelOptions=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelOptions=this._onDidChangeModelOptions.event,this._onDidChangeModelDecorations=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelDecorations=this._onDidChangeModelDecorations.event,this._onDidChangeModelTokens=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelTokens=this._onDidChangeModelTokens.event,this._onDidChangeConfiguration=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._onWillChangeModel=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onWillChangeModel=this._onWillChangeModel.event,this._onDidChangeModel=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModel=this._onDidChangeModel.event,this._onDidChangeCursorPosition=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorPosition=this._onDidChangeCursorPosition.event,this._onDidChangeCursorSelection=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorSelection=this._onDidChangeCursorSelection.event,this._onDidAttemptReadOnlyEdit=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidAttemptReadOnlyEdit=this._onDidAttemptReadOnlyEdit.event,this._onDidLayoutChange=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidLayoutChange=this._onDidLayoutChange.event,this._editorTextFocus=this._register(new t4({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorText=this._editorTextFocus.onDidChangeToTrue,this.onDidBlurEditorText=this._editorTextFocus.onDidChangeToFalse,this._editorWidgetFocus=this._register(new t4({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorWidget=this._editorWidgetFocus.onDidChangeToTrue,this.onDidBlurEditorWidget=this._editorWidgetFocus.onDidChangeToFalse,this._onWillType=this._register(new sn(this._contributions,this._deliveryQueue)),this.onWillType=this._onWillType.event,this._onDidType=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidType=this._onDidType.event,this._onDidCompositionStart=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidCompositionStart=this._onDidCompositionStart.event,this._onDidCompositionEnd=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidCompositionEnd=this._onDidCompositionEnd.event,this._onDidPaste=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidPaste=this._onDidPaste.event,this._onMouseUp=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseUp=this._onMouseUp.event,this._onMouseDown=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDown=this._onMouseDown.event,this._onMouseDrag=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDrag=this._onMouseDrag.event,this._onMouseDrop=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDrop=this._onMouseDrop.event,this._onMouseDropCanceled=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDropCanceled=this._onMouseDropCanceled.event,this._onDropIntoEditor=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDropIntoEditor=this._onDropIntoEditor.event,this._onContextMenu=this._register(new sn(this._contributions,this._deliveryQueue)),this.onContextMenu=this._onContextMenu.event,this._onMouseMove=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseMove=this._onMouseMove.event,this._onMouseLeave=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseLeave=this._onMouseLeave.event,this._onMouseWheel=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseWheel=this._onMouseWheel.event,this._onKeyUp=this._register(new sn(this._contributions,this._deliveryQueue)),this.onKeyUp=this._onKeyUp.event,this._onKeyDown=this._register(new sn(this._contributions,this._deliveryQueue)),this.onKeyDown=this._onKeyDown.event,this._onDidContentSizeChange=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._onDidScrollChange=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidScrollChange=this._onDidScrollChange.event,this._onDidChangeViewZones=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeViewZones=this._onDidChangeViewZones.event,this._onDidChangeHiddenAreas=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeHiddenAreas=this._onDidChangeHiddenAreas.event,this._updateCounter=0,this._onBeginUpdate=this._register(new A),this.onBeginUpdate=this._onBeginUpdate.event,this._onEndUpdate=this._register(new A),this.onEndUpdate=this._onEndUpdate.event,this._actions=new Map,this._bannerDomNode=null,this._dropIntoEditorDecorations=this.createDecorationsCollection(),s.willCreateCodeEditor();const f={...t};this._domElement=e,this._overflowWidgetsDomNode=f.overflowWidgetsDomNode,delete f.overflowWidgetsDomNode,this._id=++Foe,this._decorationTypeKeysToIds={},this._decorationTypeSubtypes={},this._telemetryData=i.telemetryData,this._configuration=this._register(this._createConfiguration(i.isSimpleWidget||!1,i.contextMenuId??(i.isSimpleWidget?$e.SimpleEditorContext:$e.EditorContext),f,d)),this._register(this._configuration.onDidChange(_=>{this._onDidChangeConfiguration.fire(_);const b=this._configuration.options;if(_.hasChanged(146)){const C=b.get(146);this._onDidLayoutChange.fire(C)}})),this._contextKeyService=this._register(a.createScoped(this._domElement)),this._notificationService=c,this._codeEditorService=s,this._commandService=r,this._themeService=l,this._register(new Woe(this,this._contextKeyService)),this._register(new Hoe(this,this._contextKeyService,u)),this._instantiationService=this._register(n.createChild(new jg([De,this._contextKeyService]))),this._modelData=null,this._focusTracker=new Voe(e,this._overflowWidgetsDomNode),this._register(this._focusTracker.onChange(()=>{this._editorWidgetFocus.setValue(this._focusTracker.hasFocus())})),this._contentWidgets={},this._overlayWidgets={},this._glyphMarginWidgets={};let g;Array.isArray(i.contributions)?g=i.contributions:g=Af.getEditorContributions(),this._contributions.initialize(this,g,this._instantiationService);for(const _ of Af.getEditorActions()){if(this._actions.has(_.id)){Ze(new Error(`Cannot have two actions with the same id ${_.id}`));continue}const b=new N8(_.id,_.label,_.alias,_.metadata,_.precondition??void 0,C=>this._instantiationService.invokeFunction(w=>Promise.resolve(_.runEditorCommand(w,this,C))),this._contextKeyService);this._actions.set(b.id,b)}const p=()=>!this._configuration.options.get(92)&&this._configuration.options.get(36).enabled;this._register(new OV(this._domElement,{onDragOver:_=>{if(!p())return;const b=this.getTargetAtClientPoint(_.clientX,_.clientY);b?.position&&this.showDropIndicatorAt(b.position)},onDrop:async _=>{if(!p()||(this.removeDropIndicator(),!_.dataTransfer))return;const b=this.getTargetAtClientPoint(_.clientX,_.clientY);b?.position&&this._onDropIntoEditor.fire({position:b.position,event:_})},onDragLeave:()=>{this.removeDropIndicator()},onDragEnd:()=>{this.removeDropIndicator()}})),this._codeEditorService.addCodeEditor(this)}writeScreenReaderContent(e){this._modelData?.view.writeScreenReaderContent(e)}_createConfiguration(e,t,i,n){return new wI(e,t,i,this._domElement,n)}getId(){return this.getEditorType()+":"+this._id}getEditorType(){return yy.ICodeEditor}dispose(){this._codeEditorService.removeCodeEditor(this),this._focusTracker.dispose(),this._actions.clear(),this._contentWidgets={},this._overlayWidgets={},this._removeDecorationTypes(),this._postDetachModelCleanup(this._detachModel()),this._onDidDispose.fire(),super.dispose()}invokeWithinContext(e){return this._instantiationService.invokeFunction(e)}updateOptions(e){this._configuration.updateOptions(e||{})}getOptions(){return this._configuration.options}getOption(e){return this._configuration.options.get(e)}getRawOptions(){return this._configuration.getRawOptions()}getOverflowWidgetsDomNode(){return this._overflowWidgetsDomNode}getConfiguredWordAtPosition(e){return this._modelData?ii.getWordAtPosition(this._modelData.model,this._configuration.options.get(132),this._configuration.options.get(131),e):null}getValue(e=null){if(!this._modelData)return"";const t=!!(e&&e.preserveBOM);let i=0;return e&&e.lineEnding&&e.lineEnding===` +`?i=1:e&&e.lineEnding&&e.lineEnding===`\r +`&&(i=2),this._modelData.model.getValue(i,t)}setValue(e){try{if(this._beginUpdate(),!this._modelData)return;this._modelData.model.setValue(e)}finally{this._endUpdate()}}getModel(){return this._modelData?this._modelData.model:null}setModel(e=null){try{this._beginUpdate();const t=e;if(this._modelData===null&&t===null||this._modelData&&this._modelData.model===t)return;const i={oldModelUrl:this._modelData?.model.uri||null,newModelUrl:t?.uri||null};this._onWillChangeModel.fire(i);const n=this.hasTextFocus(),s=this._detachModel();this._attachModel(t),n&&this.hasModel()&&this.focus(),this._removeDecorationTypes(),this._onDidChangeModel.fire(i),this._postDetachModelCleanup(s),this._contributionsDisposable=this._contributions.onAfterModelAttached()}finally{this._endUpdate()}}_removeDecorationTypes(){if(this._decorationTypeKeysToIds={},this._decorationTypeSubtypes){for(const e in this._decorationTypeSubtypes){const t=this._decorationTypeSubtypes[e];for(const i in t)this._removeDecorationType(e+"-"+i)}this._decorationTypeSubtypes={}}}getVisibleRanges(){return this._modelData?this._modelData.viewModel.getVisibleRanges():[]}getVisibleRangesPlusViewportAboveBelow(){return this._modelData?this._modelData.viewModel.getVisibleRangesPlusViewportAboveBelow():[]}getWhitespaces(){return this._modelData?this._modelData.viewModel.viewLayout.getWhitespaces():[]}static _getVerticalOffsetAfterPosition(e,t,i,n){const s=e.model.validatePosition({lineNumber:t,column:i}),r=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(s);return e.viewModel.viewLayout.getVerticalOffsetAfterLineNumber(r.lineNumber,n)}getTopForLineNumber(e,t=!1){return this._modelData?md._getVerticalOffsetForPosition(this._modelData,e,1,t):-1}getTopForPosition(e,t){return this._modelData?md._getVerticalOffsetForPosition(this._modelData,e,t,!1):-1}static _getVerticalOffsetForPosition(e,t,i,n=!1){const s=e.model.validatePosition({lineNumber:t,column:i}),r=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(s);return e.viewModel.viewLayout.getVerticalOffsetForLineNumber(r.lineNumber,n)}getBottomForLineNumber(e,t=!1){if(!this._modelData)return-1;const i=this._modelData.model.getLineMaxColumn(e);return md._getVerticalOffsetAfterPosition(this._modelData,e,i,t)}setHiddenAreas(e,t){this._modelData?.viewModel.setHiddenAreas(e.map(i=>I.lift(i)),t)}getVisibleColumnFromPosition(e){if(!this._modelData)return e.column;const t=this._modelData.model.validatePosition(e),i=this._modelData.model.getOptions().tabSize;return _i.visibleColumnFromColumn(this._modelData.model.getLineContent(t.lineNumber),t.column,i)+1}getPosition(){return this._modelData?this._modelData.viewModel.getPosition():null}setPosition(e,t="api"){if(this._modelData){if(!P.isIPosition(e))throw new Error("Invalid arguments");this._modelData.viewModel.setSelections(t,[{selectionStartLineNumber:e.lineNumber,selectionStartColumn:e.column,positionLineNumber:e.lineNumber,positionColumn:e.column}])}}_sendRevealRange(e,t,i,n){if(!this._modelData)return;if(!I.isIRange(e))throw new Error("Invalid arguments");const s=this._modelData.model.validateRange(e),r=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(s);this._modelData.viewModel.revealRange("api",i,r,t,n)}revealLine(e,t=0){this._revealLine(e,0,t)}revealLineInCenter(e,t=0){this._revealLine(e,1,t)}revealLineInCenterIfOutsideViewport(e,t=0){this._revealLine(e,2,t)}revealLineNearTop(e,t=0){this._revealLine(e,5,t)}_revealLine(e,t,i){if(typeof e!="number")throw new Error("Invalid arguments");this._sendRevealRange(new I(e,1,e,1),t,!1,i)}revealPosition(e,t=0){this._revealPosition(e,0,!0,t)}revealPositionInCenter(e,t=0){this._revealPosition(e,1,!0,t)}revealPositionInCenterIfOutsideViewport(e,t=0){this._revealPosition(e,2,!0,t)}revealPositionNearTop(e,t=0){this._revealPosition(e,5,!0,t)}_revealPosition(e,t,i,n){if(!P.isIPosition(e))throw new Error("Invalid arguments");this._sendRevealRange(new I(e.lineNumber,e.column,e.lineNumber,e.column),t,i,n)}getSelection(){return this._modelData?this._modelData.viewModel.getSelection():null}getSelections(){return this._modelData?this._modelData.viewModel.getSelections():null}setSelection(e,t="api"){const i=Fe.isISelection(e),n=I.isIRange(e);if(!i&&!n)throw new Error("Invalid arguments");if(i)this._setSelectionImpl(e,t);else if(n){const s={selectionStartLineNumber:e.startLineNumber,selectionStartColumn:e.startColumn,positionLineNumber:e.endLineNumber,positionColumn:e.endColumn};this._setSelectionImpl(s,t)}}_setSelectionImpl(e,t){if(!this._modelData)return;const i=new Fe(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn);this._modelData.viewModel.setSelections(t,[i])}revealLines(e,t,i=0){this._revealLines(e,t,0,i)}revealLinesInCenter(e,t,i=0){this._revealLines(e,t,1,i)}revealLinesInCenterIfOutsideViewport(e,t,i=0){this._revealLines(e,t,2,i)}revealLinesNearTop(e,t,i=0){this._revealLines(e,t,5,i)}_revealLines(e,t,i,n){if(typeof e!="number"||typeof t!="number")throw new Error("Invalid arguments");this._sendRevealRange(new I(e,1,t,1),i,!1,n)}revealRange(e,t=0,i=!1,n=!0){this._revealRange(e,i?1:0,n,t)}revealRangeInCenter(e,t=0){this._revealRange(e,1,!0,t)}revealRangeInCenterIfOutsideViewport(e,t=0){this._revealRange(e,2,!0,t)}revealRangeNearTop(e,t=0){this._revealRange(e,5,!0,t)}revealRangeNearTopIfOutsideViewport(e,t=0){this._revealRange(e,6,!0,t)}revealRangeAtTop(e,t=0){this._revealRange(e,3,!0,t)}_revealRange(e,t,i,n){if(!I.isIRange(e))throw new Error("Invalid arguments");this._sendRevealRange(I.lift(e),t,i,n)}setSelections(e,t="api",i=0){if(this._modelData){if(!e||e.length===0)throw new Error("Invalid arguments");for(let n=0,s=e.length;n0&&this._modelData.viewModel.restoreCursorState(i):this._modelData.viewModel.restoreCursorState([i]),this._contributions.restoreViewState(t.contributionsState||{});const n=this._modelData.viewModel.reduceRestoreState(t.viewState);this._modelData.view.restoreState(n)}}handleInitialized(){this._getViewModel()?.visibleLinesStabilized()}getContribution(e){return this._contributions.get(e)}getActions(){return Array.from(this._actions.values())}getSupportedActions(){let e=this.getActions();return e=e.filter(t=>t.isSupported()),e}getAction(e){return this._actions.get(e)||null}trigger(e,t,i){i=i||{};try{switch(this._beginUpdate(),t){case"compositionStart":this._startComposition();return;case"compositionEnd":this._endComposition(e);return;case"type":{const s=i;this._type(e,s.text||"");return}case"replacePreviousChar":{const s=i;this._compositionType(e,s.text||"",s.replaceCharCnt||0,0,0);return}case"compositionType":{const s=i;this._compositionType(e,s.text||"",s.replacePrevCharCnt||0,s.replaceNextCharCnt||0,s.positionDelta||0);return}case"paste":{const s=i;this._paste(e,s.text||"",s.pasteOnNewLine||!1,s.multicursorText||null,s.mode||null,s.clipboardEvent);return}case"cut":this._cut(e);return}const n=this.getAction(t);if(n){Promise.resolve(n.run(i)).then(void 0,Ze);return}if(!this._modelData||this._triggerEditorCommand(e,t,i))return;this._triggerCommand(t,i)}finally{this._endUpdate()}}_triggerCommand(e,t){this._commandService.executeCommand(e,t)}_startComposition(){this._modelData&&(this._modelData.viewModel.startComposition(),this._onDidCompositionStart.fire())}_endComposition(e){this._modelData&&(this._modelData.viewModel.endComposition(e),this._onDidCompositionEnd.fire())}_type(e,t){!this._modelData||t.length===0||(e==="keyboard"&&this._onWillType.fire(t),this._modelData.viewModel.type(t,e),e==="keyboard"&&this._onDidType.fire(t))}_compositionType(e,t,i,n,s){this._modelData&&this._modelData.viewModel.compositionType(t,i,n,s,e)}_paste(e,t,i,n,s,r){if(!this._modelData)return;const a=this._modelData.viewModel,l=a.getSelection().getStartPosition();a.paste(t,i,n,e);const c=a.getSelection().getStartPosition();e==="keyboard"&&this._onDidPaste.fire({clipboardEvent:r,range:new I(l.lineNumber,l.column,c.lineNumber,c.column),languageId:s})}_cut(e){this._modelData&&this._modelData.viewModel.cut(e)}_triggerEditorCommand(e,t,i){const n=Af.getEditorCommand(t);return n?(i=i||{},i.source=e,this._instantiationService.invokeFunction(s=>{Promise.resolve(n.runEditorCommand(s,this,i)).then(void 0,Ze)}),!0):!1}_getViewModel(){return this._modelData?this._modelData.viewModel:null}pushUndoStop(){return!this._modelData||this._configuration.options.get(92)?!1:(this._modelData.model.pushStackElement(),!0)}popUndoStop(){return!this._modelData||this._configuration.options.get(92)?!1:(this._modelData.model.popStackElement(),!0)}executeEdits(e,t,i){if(!this._modelData||this._configuration.options.get(92))return!1;let n;return i?Array.isArray(i)?n=()=>i:n=i:n=()=>null,this._modelData.viewModel.executeEdits(e,t,n),!0}executeCommand(e,t){this._modelData&&this._modelData.viewModel.executeCommand(t,e)}executeCommands(e,t){this._modelData&&this._modelData.viewModel.executeCommands(t,e)}createDecorationsCollection(e){return new zoe(this,e)}changeDecorations(e){return this._modelData?this._modelData.model.changeDecorations(e,this._id):null}getLineDecorations(e){return this._modelData?this._modelData.model.getLineDecorations(e,this._id,rC(this._configuration.options)):null}getDecorationsInRange(e){return this._modelData?this._modelData.model.getDecorationsInRange(e,this._id,rC(this._configuration.options)):null}deltaDecorations(e,t){return this._modelData?e.length===0&&t.length===0?e:this._modelData.model.deltaDecorations(e,t,this._id):[]}removeDecorations(e){!this._modelData||e.length===0||this._modelData.model.changeDecorations(t=>{t.deltaDecorations(e,[])})}removeDecorationsByType(e){const t=this._decorationTypeKeysToIds[e];t&&this.changeDecorations(i=>i.deltaDecorations(t,[])),this._decorationTypeKeysToIds.hasOwnProperty(e)&&delete this._decorationTypeKeysToIds[e],this._decorationTypeSubtypes.hasOwnProperty(e)&&delete this._decorationTypeSubtypes[e]}getLayoutInfo(){return this._configuration.options.get(146)}createOverviewRuler(e){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.createOverviewRuler(e)}getContainerDomNode(){return this._domElement}getDomNode(){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.domNode.domNode}delegateVerticalScrollbarPointerDown(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.delegateScrollFromMouseWheelEvent(e)}layout(e,t=!1){this._configuration.observeContainer(e),t||this.render()}focus(){!this._modelData||!this._modelData.hasRealView||this._modelData.view.focus()}hasTextFocus(){return!this._modelData||!this._modelData.hasRealView?!1:this._modelData.view.isFocused()}hasWidgetFocus(){return this._focusTracker&&this._focusTracker.hasFocus()}addContentWidget(e){const t={widget:e,position:e.getPosition()};this._contentWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a content widget with the same id:"+e.getId()),this._contentWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(t)}layoutContentWidget(e){const t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){const i=this._contentWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(i)}}removeContentWidget(e){const t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){const i=this._contentWidgets[t];delete this._contentWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(i)}}addOverlayWidget(e){const t={widget:e,position:e.getPosition()};this._overlayWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(t)}layoutOverlayWidget(e){const t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){const i=this._overlayWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(i)}}removeOverlayWidget(e){const t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){const i=this._overlayWidgets[t];delete this._overlayWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(i)}}addGlyphMarginWidget(e){const t={widget:e,position:e.getPosition()};this._glyphMarginWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a glyph margin widget with the same id."),this._glyphMarginWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addGlyphMarginWidget(t)}layoutGlyphMarginWidget(e){const t=e.getId();if(this._glyphMarginWidgets.hasOwnProperty(t)){const i=this._glyphMarginWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutGlyphMarginWidget(i)}}removeGlyphMarginWidget(e){const t=e.getId();if(this._glyphMarginWidgets.hasOwnProperty(t)){const i=this._glyphMarginWidgets[t];delete this._glyphMarginWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeGlyphMarginWidget(i)}}changeViewZones(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.change(e)}getTargetAtClientPoint(e,t){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.getTargetAtClientPoint(e,t)}getScrolledVisiblePosition(e){if(!this._modelData||!this._modelData.hasRealView)return null;const t=this._modelData.model.validatePosition(e),i=this._configuration.options,n=i.get(146),s=md._getVerticalOffsetForPosition(this._modelData,t.lineNumber,t.column)-this.getScrollTop(),r=this._modelData.view.getOffsetForColumn(t.lineNumber,t.column)+n.glyphMarginWidth+n.lineNumbersWidth+n.decorationsWidth-this.getScrollLeft();return{top:s,left:r,height:i.get(67)}}getOffsetForColumn(e,t){return!this._modelData||!this._modelData.hasRealView?-1:this._modelData.view.getOffsetForColumn(e,t)}render(e=!1){!this._modelData||!this._modelData.hasRealView||this._modelData.viewModel.batchEvents(()=>{this._modelData.view.render(!0,e)})}setAriaOptions(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.setAriaOptions(e)}applyFontInfo(e){qi(e,this._configuration.options.get(50))}setBanner(e,t){this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._bannerDomNode.remove(),this._bannerDomNode=e,this._configuration.setReservedHeight(e?t:0),this._bannerDomNode&&this._domElement.prepend(this._bannerDomNode)}_attachModel(e){if(!e){this._modelData=null;return}const t=[];this._domElement.setAttribute("data-mode-id",e.getLanguageId()),this._configuration.setIsDominatedByLongLines(e.isDominatedByLongLines()),this._configuration.setModelLineCount(e.getLineCount());const i=e.onBeforeAttached(),n=new Moe(this._id,this._configuration,e,q2.create(fe(this._domElement)),G2.create(this._configuration.options),a=>fs(fe(this._domElement),a),this.languageConfigurationService,this._themeService,i,{batchChanges:a=>{try{return this._beginUpdate(),a()}finally{this._endUpdate()}}});t.push(e.onWillDispose(()=>this.setModel(null))),t.push(n.onEvent(a=>{switch(a.kind){case 0:this._onDidContentSizeChange.fire(a);break;case 1:this._editorTextFocus.setValue(a.hasFocus);break;case 2:this._onDidScrollChange.fire(a);break;case 3:this._onDidChangeViewZones.fire();break;case 4:this._onDidChangeHiddenAreas.fire();break;case 5:this._onDidAttemptReadOnlyEdit.fire();break;case 6:{if(a.reachedMaxCursorCount){const h=this.getOption(80),u=m("cursors.maximum","The number of cursors has been limited to {0}. Consider using [find and replace](https://code.visualstudio.com/docs/editor/codebasics#_find-and-replace) for larger changes or increase the editor multi cursor limit setting.",h);this._notificationService.prompt(bT.Warning,u,[{label:"Find and Replace",run:()=>{this._commandService.executeCommand("editor.action.startFindReplaceAction")}},{label:m("goToSetting","Increase Multi Cursor Limit"),run:()=>{this._commandService.executeCommand("workbench.action.openSettings2",{query:"editor.multiCursorLimit"})}}])}const l=[];for(let h=0,u=a.selections.length;h{this._paste("keyboard",s,r,a,l)},type:s=>{this._type("keyboard",s)},compositionType:(s,r,a,l)=>{this._compositionType("keyboard",s,r,a,l)},startComposition:()=>{this._startComposition()},endComposition:()=>{this._endComposition("keyboard")},cut:()=>{this._cut("keyboard")}}:t={paste:(s,r,a,l)=>{const c={text:s,pasteOnNewLine:r,multicursorText:a,mode:l};this._commandService.executeCommand("paste",c)},type:s=>{const r={text:s};this._commandService.executeCommand("type",r)},compositionType:(s,r,a,l)=>{if(a||l){const c={text:s,replacePrevCharCnt:r,replaceNextCharCnt:a,positionDelta:l};this._commandService.executeCommand("compositionType",c)}else{const c={text:s,replaceCharCnt:r};this._commandService.executeCommand("replacePreviousChar",c)}},startComposition:()=>{this._commandService.executeCommand("compositionStart",{})},endComposition:()=>{this._commandService.executeCommand("compositionEnd",{})},cut:()=>{this._commandService.executeCommand("cut",{})}};const i=new Iy(e.coordinatesConverter);return i.onKeyDown=s=>this._onKeyDown.fire(s),i.onKeyUp=s=>this._onKeyUp.fire(s),i.onContextMenu=s=>this._onContextMenu.fire(s),i.onMouseMove=s=>this._onMouseMove.fire(s),i.onMouseLeave=s=>this._onMouseLeave.fire(s),i.onMouseDown=s=>this._onMouseDown.fire(s),i.onMouseUp=s=>this._onMouseUp.fire(s),i.onMouseDrag=s=>this._onMouseDrag.fire(s),i.onMouseDrop=s=>this._onMouseDrop.fire(s),i.onMouseDropCanceled=s=>this._onMouseDropCanceled.fire(s),i.onMouseWheel=s=>this._onMouseWheel.fire(s),[new RI(t,this._configuration,this._themeService.getColorTheme(),e,i,this._overflowWidgetsDomNode,this._instantiationService),!0]}_postDetachModelCleanup(e){e?.removeAllDecorationsWithOwnerId(this._id)}_detachModel(){if(this._contributionsDisposable?.dispose(),this._contributionsDisposable=void 0,!this._modelData)return null;const e=this._modelData.model,t=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),t&&this._domElement.contains(t)&&t.remove(),this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._bannerDomNode.remove(),e}_removeDecorationType(e){this._codeEditorService.removeDecorationType(e)}hasModel(){return this._modelData!==null}showDropIndicatorAt(e){const t=[{range:new I(e.lineNumber,e.column,e.lineNumber,e.column),options:md.dropIntoEditorDecorationOptions}];this._dropIntoEditorDecorations.set(t),this.revealPosition(e,1)}removeDropIndicator(){this._dropIntoEditorDecorations.clear()}setContextValue(e,t){this._contextKeyService.createKey(e,t)}_beginUpdate(){this._updateCounter++,this._updateCounter===1&&this._onBeginUpdate.fire()}_endUpdate(){this._updateCounter--,this._updateCounter===0&&this._onEndUpdate.fire()}},md=dh,dh.dropIntoEditorDecorationOptions=kt.register({description:"workbench-dnd-target",className:"dnd-target"}),dh);I_=md=Ooe([Aa(3,ke),Aa(4,Pt),Aa(5,hi),Aa(6,De),Aa(7,en),Aa(8,mn),Aa(9,ms),Aa(10,Gn),Aa(11,Se)],I_);let Foe=0;class Boe{constructor(e,t,i,n,s,r){this.model=e,this.viewModel=t,this.view=i,this.hasRealView=n,this.listenersToRemove=s,this.attachedView=r}dispose(){xt(this.listenersToRemove),this.model.onBeforeDetached(this.attachedView),this.hasRealView&&this.view.dispose(),this.viewModel.dispose()}}class t4 extends z{constructor(e){super(),this._emitterOptions=e,this._onDidChangeToTrue=this._register(new A(this._emitterOptions)),this.onDidChangeToTrue=this._onDidChangeToTrue.event,this._onDidChangeToFalse=this._register(new A(this._emitterOptions)),this.onDidChangeToFalse=this._onDidChangeToFalse.event,this._value=0}setValue(e){const t=e?2:1;this._value!==t&&(this._value=t,this._value===2?this._onDidChangeToTrue.fire():this._value===1&&this._onDidChangeToFalse.fire())}}class sn extends A{constructor(e,t){super({deliveryQueue:t}),this._contributions=e}fire(e){this._contributions.onBeforeInteractionEvent(),super.fire(e)}}class Woe extends z{constructor(e,t){super(),this._editor=e,t.createKey("editorId",e.getId()),this._editorSimpleInput=K.editorSimpleInput.bindTo(t),this._editorFocus=K.focus.bindTo(t),this._textInputFocus=K.textInputFocus.bindTo(t),this._editorTextFocus=K.editorTextFocus.bindTo(t),this._tabMovesFocus=K.tabMovesFocus.bindTo(t),this._editorReadonly=K.readOnly.bindTo(t),this._inDiffEditor=K.inDiffEditor.bindTo(t),this._editorColumnSelection=K.columnSelection.bindTo(t),this._hasMultipleSelections=K.hasMultipleSelections.bindTo(t),this._hasNonEmptySelection=K.hasNonEmptySelection.bindTo(t),this._canUndo=K.canUndo.bindTo(t),this._canRedo=K.canRedo.bindTo(t),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromConfig())),this._register(this._editor.onDidChangeCursorSelection(()=>this._updateFromSelection())),this._register(this._editor.onDidFocusEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidFocusEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidChangeModel(()=>this._updateFromModel())),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromModel())),this._register(xv.onDidChangeTabFocus(i=>this._tabMovesFocus.set(i))),this._updateFromConfig(),this._updateFromSelection(),this._updateFromFocus(),this._updateFromModel(),this._editorSimpleInput.set(this._editor.isSimpleWidget)}_updateFromConfig(){const e=this._editor.getOptions();this._tabMovesFocus.set(xv.getTabFocusMode()),this._editorReadonly.set(e.get(92)),this._inDiffEditor.set(e.get(61)),this._editorColumnSelection.set(e.get(22))}_updateFromSelection(){const e=this._editor.getSelections();e?(this._hasMultipleSelections.set(e.length>1),this._hasNonEmptySelection.set(e.some(t=>!t.isEmpty()))):(this._hasMultipleSelections.reset(),this._hasNonEmptySelection.reset())}_updateFromFocus(){this._editorFocus.set(this._editor.hasWidgetFocus()&&!this._editor.isSimpleWidget),this._editorTextFocus.set(this._editor.hasTextFocus()&&!this._editor.isSimpleWidget),this._textInputFocus.set(this._editor.hasTextFocus())}_updateFromModel(){const e=this._editor.getModel();this._canUndo.set(!!(e&&e.canUndo())),this._canRedo.set(!!(e&&e.canRedo()))}}class Hoe extends z{constructor(e,t,i){super(),this._editor=e,this._contextKeyService=t,this._languageFeaturesService=i,this._langId=K.languageId.bindTo(t),this._hasCompletionItemProvider=K.hasCompletionItemProvider.bindTo(t),this._hasCodeActionsProvider=K.hasCodeActionsProvider.bindTo(t),this._hasCodeLensProvider=K.hasCodeLensProvider.bindTo(t),this._hasDefinitionProvider=K.hasDefinitionProvider.bindTo(t),this._hasDeclarationProvider=K.hasDeclarationProvider.bindTo(t),this._hasImplementationProvider=K.hasImplementationProvider.bindTo(t),this._hasTypeDefinitionProvider=K.hasTypeDefinitionProvider.bindTo(t),this._hasHoverProvider=K.hasHoverProvider.bindTo(t),this._hasDocumentHighlightProvider=K.hasDocumentHighlightProvider.bindTo(t),this._hasDocumentSymbolProvider=K.hasDocumentSymbolProvider.bindTo(t),this._hasReferenceProvider=K.hasReferenceProvider.bindTo(t),this._hasRenameProvider=K.hasRenameProvider.bindTo(t),this._hasSignatureHelpProvider=K.hasSignatureHelpProvider.bindTo(t),this._hasInlayHintsProvider=K.hasInlayHintsProvider.bindTo(t),this._hasDocumentFormattingProvider=K.hasDocumentFormattingProvider.bindTo(t),this._hasDocumentSelectionFormattingProvider=K.hasDocumentSelectionFormattingProvider.bindTo(t),this._hasMultipleDocumentFormattingProvider=K.hasMultipleDocumentFormattingProvider.bindTo(t),this._hasMultipleDocumentSelectionFormattingProvider=K.hasMultipleDocumentSelectionFormattingProvider.bindTo(t),this._isInEmbeddedEditor=K.isInEmbeddedEditor.bindTo(t);const n=()=>this._update();this._register(e.onDidChangeModel(n)),this._register(e.onDidChangeModelLanguage(n)),this._register(i.completionProvider.onDidChange(n)),this._register(i.codeActionProvider.onDidChange(n)),this._register(i.codeLensProvider.onDidChange(n)),this._register(i.definitionProvider.onDidChange(n)),this._register(i.declarationProvider.onDidChange(n)),this._register(i.implementationProvider.onDidChange(n)),this._register(i.typeDefinitionProvider.onDidChange(n)),this._register(i.hoverProvider.onDidChange(n)),this._register(i.documentHighlightProvider.onDidChange(n)),this._register(i.documentSymbolProvider.onDidChange(n)),this._register(i.referenceProvider.onDidChange(n)),this._register(i.renameProvider.onDidChange(n)),this._register(i.documentFormattingEditProvider.onDidChange(n)),this._register(i.documentRangeFormattingEditProvider.onDidChange(n)),this._register(i.signatureHelpProvider.onDidChange(n)),this._register(i.inlayHintsProvider.onDidChange(n)),n()}dispose(){super.dispose()}reset(){this._contextKeyService.bufferChangeEvents(()=>{this._langId.reset(),this._hasCompletionItemProvider.reset(),this._hasCodeActionsProvider.reset(),this._hasCodeLensProvider.reset(),this._hasDefinitionProvider.reset(),this._hasDeclarationProvider.reset(),this._hasImplementationProvider.reset(),this._hasTypeDefinitionProvider.reset(),this._hasHoverProvider.reset(),this._hasDocumentHighlightProvider.reset(),this._hasDocumentSymbolProvider.reset(),this._hasReferenceProvider.reset(),this._hasRenameProvider.reset(),this._hasDocumentFormattingProvider.reset(),this._hasDocumentSelectionFormattingProvider.reset(),this._hasSignatureHelpProvider.reset(),this._isInEmbeddedEditor.reset()})}_update(){const e=this._editor.getModel();if(!e){this.reset();return}this._contextKeyService.bufferChangeEvents(()=>{this._langId.set(e.getLanguageId()),this._hasCompletionItemProvider.set(this._languageFeaturesService.completionProvider.has(e)),this._hasCodeActionsProvider.set(this._languageFeaturesService.codeActionProvider.has(e)),this._hasCodeLensProvider.set(this._languageFeaturesService.codeLensProvider.has(e)),this._hasDefinitionProvider.set(this._languageFeaturesService.definitionProvider.has(e)),this._hasDeclarationProvider.set(this._languageFeaturesService.declarationProvider.has(e)),this._hasImplementationProvider.set(this._languageFeaturesService.implementationProvider.has(e)),this._hasTypeDefinitionProvider.set(this._languageFeaturesService.typeDefinitionProvider.has(e)),this._hasHoverProvider.set(this._languageFeaturesService.hoverProvider.has(e)),this._hasDocumentHighlightProvider.set(this._languageFeaturesService.documentHighlightProvider.has(e)),this._hasDocumentSymbolProvider.set(this._languageFeaturesService.documentSymbolProvider.has(e)),this._hasReferenceProvider.set(this._languageFeaturesService.referenceProvider.has(e)),this._hasRenameProvider.set(this._languageFeaturesService.renameProvider.has(e)),this._hasSignatureHelpProvider.set(this._languageFeaturesService.signatureHelpProvider.has(e)),this._hasInlayHintsProvider.set(this._languageFeaturesService.inlayHintsProvider.has(e)),this._hasDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.has(e)||this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasMultipleDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.all(e).length+this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._hasMultipleDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._isInEmbeddedEditor.set(e.uri.scheme===Te.walkThroughSnippet||e.uri.scheme===Te.vscodeChatCodeBlock)})}}class Voe extends z{constructor(e,t){super(),this._onChange=this._register(new A),this.onChange=this._onChange.event,this._hadFocus=void 0,this._hasDomElementFocus=!1,this._domFocusTracker=this._register(Ph(e)),this._overflowWidgetsDomNodeHasFocus=!1,this._register(this._domFocusTracker.onDidFocus(()=>{this._hasDomElementFocus=!0,this._update()})),this._register(this._domFocusTracker.onDidBlur(()=>{this._hasDomElementFocus=!1,this._update()})),t&&(this._overflowWidgetsDomNode=this._register(Ph(t)),this._register(this._overflowWidgetsDomNode.onDidFocus(()=>{this._overflowWidgetsDomNodeHasFocus=!0,this._update()})),this._register(this._overflowWidgetsDomNode.onDidBlur(()=>{this._overflowWidgetsDomNodeHasFocus=!1,this._update()})))}_update(){const e=this._hasDomElementFocus||this._overflowWidgetsDomNodeHasFocus;this._hadFocus!==e&&(this._hadFocus=e,this._onChange.fire(void 0))}hasFocus(){return this._hadFocus??!1}}class zoe{get length(){return this._decorationIds.length}constructor(e,t){this._editor=e,this._decorationIds=[],this._isChangingDecorations=!1,Array.isArray(t)&&t.length>0&&this.set(t)}onDidChange(e,t,i){return this._editor.onDidChangeModelDecorations(n=>{this._isChangingDecorations||e.call(t,n)},i)}getRange(e){return!this._editor.hasModel()||e>=this._decorationIds.length?null:this._editor.getModel().getDecorationRange(this._decorationIds[e])}getRanges(){if(!this._editor.hasModel())return[];const e=this._editor.getModel(),t=[];for(const i of this._decorationIds){const n=e.getDecorationRange(i);n&&t.push(n)}return t}has(e){return this._decorationIds.includes(e.id)}clear(){this._decorationIds.length!==0&&this.set([])}set(e){try{this._isChangingDecorations=!0,this._editor.changeDecorations(t=>{this._decorationIds=t.deltaDecorations(this._decorationIds,e)})}finally{this._isChangingDecorations=!1}return this._decorationIds}append(e){let t=[];try{this._isChangingDecorations=!0,this._editor.changeDecorations(i=>{t=i.deltaDecorations([],e),this._decorationIds=this._decorationIds.concat(t)})}finally{this._isChangingDecorations=!1}return t}}const Uoe=encodeURIComponent("");function cL(o){return Uoe+encodeURIComponent(o.toString())+$oe}const Koe=encodeURIComponent('');function qoe(o){return Koe+encodeURIComponent(o.toString())+joe}Sr((o,e)=>{const t=o.getColor(Y0);t&&e.addRule(`.monaco-editor .squiggly-error { background: url("data:image/svg+xml,${cL(t)}") repeat-x bottom left; }`);const i=o.getColor(Il);i&&e.addRule(`.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,${cL(i)}") repeat-x bottom left; }`);const n=o.getColor(ma);n&&e.addRule(`.monaco-editor .squiggly-info { background: url("data:image/svg+xml,${cL(n)}") repeat-x bottom left; }`);const s=o.getColor(xK);s&&e.addRule(`.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,${qoe(s)}") no-repeat bottom left; }`);const r=o.getColor(dQ);r&&e.addRule(`.monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: ${r.rgba.a}; }`)});class qh{static capture(e){if(e.getScrollTop()===0||e.hasPendingScrollAnimation())return new qh(e.getScrollTop(),e.getContentHeight(),null,0,null);let t=null,i=0;const n=e.getVisibleRanges();if(n.length>0){t=n[0].getStartPosition();const s=e.getTopForPosition(t.lineNumber,t.column);i=e.getScrollTop()-s}return new qh(e.getScrollTop(),e.getContentHeight(),t,i,e.getPosition())}constructor(e,t,i,n,s){this._initialScrollTop=e,this._initialContentHeight=t,this._visiblePosition=i,this._visiblePositionScrollDelta=n,this._cursorPosition=s}restore(e){if(!(this._initialContentHeight===e.getContentHeight()&&this._initialScrollTop===e.getScrollTop())&&this._visiblePosition){const t=e.getTopForPosition(this._visiblePosition.lineNumber,this._visiblePosition.column);e.setScrollTop(t+this._visiblePositionScrollDelta)}}restoreRelativeVerticalPositionOfCursor(e){if(this._initialContentHeight===e.getContentHeight()&&this._initialScrollTop===e.getScrollTop())return;const t=e.getPosition();if(!this._cursorPosition||!t)return;const i=e.getTopForLineNumber(t.lineNumber)-e.getTopForLineNumber(this._cursorPosition.lineNumber);e.setScrollTop(e.getScrollTop()+i,1)}}function Goe(o,e,t,i){if(o.length===0)return e;if(e.length===0)return o;const n=[];let s=0,r=0;for(;sd?(n.push(l),r++):(n.push(i(a,l)),s++,r++)}for(;s`Apply decorations from ${e.debugName}`},n=>{const s=e.read(n);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}function Bm(o,e){return o.appendChild(e),_e(()=>{e.remove()})}function Zoe(o,e){return o.prepend(e),_e(()=>{e.remove()})}class A8 extends z{get width(){return this._width}get height(){return this._height}get automaticLayout(){return this._automaticLayout}constructor(e,t){super(),this._automaticLayout=!1,this.elementSizeObserver=this._register(new g8(e,t)),this._width=Ge(this,this.elementSizeObserver.getWidth()),this._height=Ge(this,this.elementSizeObserver.getHeight()),this._register(this.elementSizeObserver.onDidChange(i=>Xt(n=>{this._width.set(this.elementSizeObserver.getWidth(),n),this._height.set(this.elementSizeObserver.getHeight(),n)})))}observe(e){this.elementSizeObserver.observe(e)}setAutomaticLayout(e){this._automaticLayout=e,e?this.elementSizeObserver.startObserving():this.elementSizeObserver.stopObserving()}}function i4(o,e,t){let i=e.get(),n=i,s=i;const r=Ge("animatedValue",i);let a=-1;const l=300;let c;t.add(Y_({createEmptyChangeSummary:()=>({animate:!1}),handleChange:(h,u)=>(h.didChange(e)&&(u.animate=u.animate||h.change),!0)},(h,u)=>{c!==void 0&&(o.cancelAnimationFrame(c),c=void 0),n=s,i=e.read(h),a=Date.now()-(u.animate?0:l),d()}));function d(){const h=Date.now()-a;s=Math.floor(Yoe(h,n,i-n,l)),h{this._actualTop.set(i,void 0)},this.onComputedHeight=i=>{this._actualHeight.set(i,void 0)}}}const a0=class a0{constructor(e,t){this._editor=e,this._domElement=t,this._overlayWidgetId=`managedOverlayWidget-${a0._counter++}`,this._overlayWidget={getId:()=>this._overlayWidgetId,getDomNode:()=>this._domElement,getPosition:()=>null},this._editor.addOverlayWidget(this._overlayWidget)}dispose(){this._editor.removeOverlayWidget(this._overlayWidget)}};a0._counter=0;let VI=a0;function Vc(o,e){return We(t=>{for(let[i,n]of Object.entries(e))n&&typeof n=="object"&&"read"in n&&(n=n.read(t)),typeof n=="number"&&(n=`${n}px`),i=i.replace(/[A-Z]/g,s=>"-"+s.toLowerCase()),o.style[i]=n})}function zv(o,e,t,i){const n=new X,s=[];return n.add(To((r,a)=>{const l=e.read(r),c=new Map,d=new Map;t&&t(!0),o.changeViewZones(h=>{for(const u of s)h.removeZone(u),i?.delete(u);s.length=0;for(const u of l){const f=h.addZone(u);u.setZoneId&&u.setZoneId(f),s.push(f),i?.add(f),c.set(u,f)}}),t&&t(!1),a.add(Y_({createEmptyChangeSummary(){return{zoneIds:[]}},handleChange(h,u){const f=d.get(h.changedObservable);return f!==void 0&&u.zoneIds.push(f),!0}},(h,u)=>{for(const f of l)f.onChange&&(d.set(f.onChange,c.get(f)),f.onChange.read(h));t&&t(!0),o.changeViewZones(f=>{for(const g of u.zoneIds)f.layoutZone(g)}),t&&t(!1)}))})),n.add({dispose(){t&&t(!0),o.changeViewZones(r=>{for(const a of s)r.removeZone(a)}),i?.clear(),t&&t(!1)}}),n}function n4(o,e){const t=xC(e,n=>n.original.startLineNumber<=o.lineNumber);if(!t)return I.fromPositions(o);if(t.original.endLineNumberExclusive<=o.lineNumber){const n=o.lineNumber-t.original.endLineNumberExclusive+t.modified.endLineNumberExclusive;return I.fromPositions(new P(n,o.column))}if(!t.innerChanges)return I.fromPositions(new P(t.modified.startLineNumber,1));const i=xC(t.innerChanges,n=>n.originalRange.getStartPosition().isBeforeOrEqual(o));if(!i){const n=o.lineNumber-t.original.startLineNumber+t.modified.startLineNumber;return I.fromPositions(new P(n,o.column))}if(i.originalRange.containsPosition(o))return i.modifiedRange;{const n=Qoe(i.originalRange.getEndPosition(),o);return I.fromPositions(n.addToPosition(i.modifiedRange.getEndPosition()))}}function Qoe(o,e){return o.lineNumber===e.lineNumber?new Po(0,e.column-o.column):new Po(e.lineNumber-o.lineNumber,e.column-1)}function Xoe(o,e){let t;return o.filter(i=>{const n=e(i,t);return t=i,n})}class Uv{static create(e,t=void 0){return new s4(e,e,t)}static createWithDisposable(e,t,i=void 0){const n=new X;return n.add(t),n.add(e),new s4(e,n,i)}}class s4 extends Uv{constructor(e,t,i){super(),this.object=e,this._disposable=t,this._debugOwner=i,this._refCount=1,this._isDisposed=!1,this._owners=[],i&&this._addOwner(i)}_addOwner(e){e&&this._owners.push(e)}createNewRef(e){return this._refCount++,e&&this._addOwner(e),new Joe(this,e)}dispose(){this._isDisposed||(this._isDisposed=!0,this._decreaseRefCount(this._debugOwner))}_decreaseRefCount(e){if(this._refCount--,this._refCount===0&&this._disposable.dispose(),e){const t=this._owners.indexOf(e);t!==-1&&this._owners.splice(t,1)}}}class Joe extends Uv{constructor(e,t){super(),this._base=e,this._debugOwner=t,this._isDisposed=!1}get object(){return this._base.object}createNewRef(e){return this._base.createNewRef(e)}dispose(){this._isDisposed||(this._isDisposed=!0,this._base._decreaseRefCount(this._debugOwner))}}var eM=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},tM=function(o,e){return function(t,i){e(t,i,o)}};const ere=Wi("diff-review-insert",ie.add,m("accessibleDiffViewerInsertIcon","Icon for 'Insert' in accessible diff viewer.")),tre=Wi("diff-review-remove",ie.remove,m("accessibleDiffViewerRemoveIcon","Icon for 'Remove' in accessible diff viewer.")),ire=Wi("diff-review-close",ie.close,m("accessibleDiffViewerCloseIcon","Icon for 'Close' in accessible diff viewer."));var Jf;let qd=(Jf=class extends z{constructor(e,t,i,n,s,r,a,l,c){super(),this._parentNode=e,this._visible=t,this._setVisible=i,this._canClose=n,this._width=s,this._height=r,this._diffs=a,this._models=l,this._instantiationService=c,this._state=cu(this,(d,h)=>{const u=this._visible.read(d);if(this._parentNode.style.visibility=u?"visible":"hidden",!u)return null;const f=h.add(this._instantiationService.createInstance(zI,this._diffs,this._models,this._setVisible,this._canClose)),g=h.add(this._instantiationService.createInstance(UI,this._parentNode,f,this._width,this._height,this._models));return{model:f,view:g}}).recomputeInitiallyAndOnChange(this._store)}next(){Xt(e=>{const t=this._visible.get();this._setVisible(!0,e),t&&this._state.get().model.nextGroup(e)})}prev(){Xt(e=>{this._setVisible(!0,e),this._state.get().model.previousGroup(e)})}close(){Xt(e=>{this._setVisible(!1,e)})}},Jf._ttPolicy=Kc("diffReview",{createHTML:e=>e}),Jf);qd=eM([tM(8,ke)],qd);let zI=class extends z{constructor(e,t,i,n,s){super(),this._diffs=e,this._models=t,this._setVisible=i,this.canClose=n,this._accessibilitySignalService=s,this._groups=Ge(this,[]),this._currentGroupIdx=Ge(this,0),this._currentElementIdx=Ge(this,0),this.groups=this._groups,this.currentGroup=this._currentGroupIdx.map((r,a)=>this._groups.read(a)[r]),this.currentGroupIndex=this._currentGroupIdx,this.currentElement=this._currentElementIdx.map((r,a)=>this.currentGroup.read(a)?.lines[r]),this._register(We(r=>{const a=this._diffs.read(r);if(!a){this._groups.set([],void 0);return}const l=nre(a,this._models.getOriginalModel().getLineCount(),this._models.getModifiedModel().getLineCount());Xt(c=>{const d=this._models.getModifiedPosition();if(d){const h=l.findIndex(u=>d?.lineNumber{const a=this.currentElement.read(r);a?.type===vn.Deleted?this._accessibilitySignalService.playSignal(rr.diffLineDeleted,{source:"accessibleDiffViewer.currentElementChanged"}):a?.type===vn.Added&&this._accessibilitySignalService.playSignal(rr.diffLineInserted,{source:"accessibleDiffViewer.currentElementChanged"})})),this._register(We(r=>{const a=this.currentElement.read(r);if(a&&a.type!==vn.Header){const l=a.modifiedLineNumber??a.diff.modified.startLineNumber;this._models.modifiedSetSelection(I.fromPositions(new P(l,1)))}}))}_goToGroupDelta(e,t){const i=this.groups.get();!i||i.length<=1||c_(t,n=>{this._currentGroupIdx.set(Re.ofLength(i.length).clipCyclic(this._currentGroupIdx.get()+e),n),this._currentElementIdx.set(0,n)})}nextGroup(e){this._goToGroupDelta(1,e)}previousGroup(e){this._goToGroupDelta(-1,e)}_goToLineDelta(e){const t=this.currentGroup.get();!t||t.lines.length<=1||Xt(i=>{this._currentElementIdx.set(Re.ofLength(t.lines.length).clip(this._currentElementIdx.get()+e),i)})}goToNextLine(){this._goToLineDelta(1)}goToPreviousLine(){this._goToLineDelta(-1)}goToLine(e){const t=this.currentGroup.get();if(!t)return;const i=t.lines.indexOf(e);i!==-1&&Xt(n=>{this._currentElementIdx.set(i,n)})}revealCurrentElementInEditor(){if(!this.canClose.get())return;this._setVisible(!1,void 0);const e=this.currentElement.get();e&&(e.type===vn.Deleted?this._models.originalReveal(I.fromPositions(new P(e.originalLineNumber,1))):this._models.modifiedReveal(e.type!==vn.Header?I.fromPositions(new P(e.modifiedLineNumber,1)):void 0))}close(){this.canClose.get()&&(this._setVisible(!1,void 0),this._models.modifiedFocus())}};zI=eM([tM(4,rb)],zI);const Sm=3;function nre(o,e,t){const i=[];for(const n of LN(o,(s,r)=>r.modified.startLineNumber-s.modified.endLineNumberExclusive<2*Sm)){const s=[];s.push(new ore);const r=new xe(Math.max(1,n[0].original.startLineNumber-Sm),Math.min(n[n.length-1].original.endLineNumberExclusive+Sm,e+1)),a=new xe(Math.max(1,n[0].modified.startLineNumber-Sm),Math.min(n[n.length-1].modified.endLineNumberExclusive+Sm,t+1));E5(n,(d,h)=>{const u=new xe(d?d.original.endLineNumberExclusive:r.startLineNumber,h?h.original.startLineNumber:r.endLineNumberExclusive),f=new xe(d?d.modified.endLineNumberExclusive:a.startLineNumber,h?h.modified.startLineNumber:a.endLineNumberExclusive);u.forEach(g=>{s.push(new lre(g,f.startLineNumber+(g-u.startLineNumber)))}),h&&(h.original.forEach(g=>{s.push(new rre(h,g))}),h.modified.forEach(g=>{s.push(new are(h,g))}))});const l=n[0].modified.join(n[n.length-1].modified),c=n[0].original.join(n[n.length-1].original);i.push(new sre(new hn(l,c),s))}return i}var vn;(function(o){o[o.Header=0]="Header",o[o.Unchanged=1]="Unchanged",o[o.Deleted=2]="Deleted",o[o.Added=3]="Added"})(vn||(vn={}));class sre{constructor(e,t){this.range=e,this.lines=t}}class ore{constructor(){this.type=vn.Header}}class rre{constructor(e,t){this.diff=e,this.originalLineNumber=t,this.type=vn.Deleted,this.modifiedLineNumber=void 0}}class are{constructor(e,t){this.diff=e,this.modifiedLineNumber=t,this.type=vn.Added,this.originalLineNumber=void 0}}class lre{constructor(e,t){this.originalLineNumber=e,this.modifiedLineNumber=t,this.type=vn.Unchanged}}let UI=class extends z{constructor(e,t,i,n,s,r){super(),this._element=e,this._model=t,this._width=i,this._height=n,this._models=s,this._languageService=r,this.domNode=this._element,this.domNode.className="monaco-component diff-review monaco-editor-background";const a=document.createElement("div");a.className="diff-review-actions",this._actionBar=this._register(new oo(a)),this._register(We(l=>{this._actionBar.clear(),this._model.canClose.read(l)&&this._actionBar.push(new Fs("diffreview.close",m("label.close","Close"),"close-diff-review "+Ee.asClassName(ire),!0,async()=>t.close()),{label:!1,icon:!0})})),this._content=document.createElement("div"),this._content.className="diff-review-content",this._content.setAttribute("role","code"),this._scrollbar=this._register(new J0(this._content,{})),un(this.domNode,this._scrollbar.getDomNode(),a),this._register(We(l=>{this._height.read(l),this._width.read(l),this._scrollbar.scanDomNode()})),this._register(_e(()=>{un(this.domNode)})),this._register(Vc(this.domNode,{width:this._width,height:this._height})),this._register(Vc(this._content,{width:this._width,height:this._height})),this._register(To((l,c)=>{this._model.currentGroup.read(l),this._render(c)})),this._register(jt(this.domNode,"keydown",l=>{(l.equals(18)||l.equals(2066)||l.equals(530))&&(l.preventDefault(),this._model.goToNextLine()),(l.equals(16)||l.equals(2064)||l.equals(528))&&(l.preventDefault(),this._model.goToPreviousLine()),(l.equals(9)||l.equals(2057)||l.equals(521)||l.equals(1033))&&(l.preventDefault(),this._model.close()),(l.equals(10)||l.equals(3))&&(l.preventDefault(),this._model.revealCurrentElementInEditor())}))}_render(e){const t=this._models.getOriginalOptions(),i=this._models.getModifiedOptions(),n=document.createElement("div");n.className="diff-review-table",n.setAttribute("role","list"),n.setAttribute("aria-label",m("ariaLabel","Accessible Diff Viewer. Use arrow up and down to navigate.")),qi(n,i.get(50)),un(this._content,n);const s=this._models.getOriginalModel(),r=this._models.getModifiedModel();if(!s||!r)return;const a=s.getOptions(),l=r.getOptions(),c=i.get(67),d=this._model.currentGroup.get();for(const h of d?.lines||[]){if(!d)break;let u;if(h.type===vn.Header){const g=document.createElement("div");g.className="diff-review-row",g.setAttribute("role","listitem");const p=d.range,_=this._model.currentGroupIndex.get(),b=this._model.groups.get().length,C=x=>x===0?m("no_lines_changed","no lines changed"):x===1?m("one_line_changed","1 line changed"):m("more_lines_changed","{0} lines changed",x),w=C(p.original.length),v=C(p.modified.length);g.setAttribute("aria-label",m({key:"header",comment:["This is the ARIA label for a git diff header.","A git diff header looks like this: @@ -154,12 +159,39 @@.","That encodes that at original line 154 (which is now line 159), 12 lines were removed/changed with 39 lines.","Variables 0 and 1 refer to the diff index out of total number of diffs.","Variables 2 and 4 will be numbers (a line number).",'Variables 3 and 5 will be "no lines changed", "1 line changed" or "X lines changed", localized separately.']},"Difference {0} of {1}: original line {2}, {3}, modified line {4}, {5}",_+1,b,p.original.startLineNumber,w,p.modified.startLineNumber,v));const y=document.createElement("div");y.className="diff-review-cell diff-review-summary",y.appendChild(document.createTextNode(`${_+1}/${b}: @@ -${p.original.startLineNumber},${p.original.length} +${p.modified.startLineNumber},${p.modified.length} @@`)),g.appendChild(y),u=g}else u=this._createRow(h,c,this._width.get(),t,s,a,i,r,l);n.appendChild(u);const f=Ce(g=>this._model.currentElement.read(g)===h);e.add(We(g=>{const p=f.read(g);u.tabIndex=p?0:-1,p&&u.focus()})),e.add(U(u,"focus",()=>{this._model.goToLine(h)}))}this._scrollbar.scanDomNode()}_createRow(e,t,i,n,s,r,a,l,c){const d=n.get(146),h=d.glyphMarginWidth+d.lineNumbersWidth,u=a.get(146),f=10+u.glyphMarginWidth+u.lineNumbersWidth;let g="diff-review-row",p="";const _="diff-review-spacer";let b=null;switch(e.type){case vn.Added:g="diff-review-row line-insert",p=" char-insert",b=ere;break;case vn.Deleted:g="diff-review-row line-delete",p=" char-delete",b=tre;break}const C=document.createElement("div");C.style.minWidth=i+"px",C.className=g,C.setAttribute("role","listitem"),C.ariaLevel="";const w=document.createElement("div");w.className="diff-review-cell",w.style.height=`${t}px`,C.appendChild(w);const v=document.createElement("span");v.style.width=h+"px",v.style.minWidth=h+"px",v.className="diff-review-line-number"+p,e.originalLineNumber!==void 0?v.appendChild(document.createTextNode(String(e.originalLineNumber))):v.innerText=" ",w.appendChild(v);const y=document.createElement("span");y.style.width=f+"px",y.style.minWidth=f+"px",y.style.paddingRight="10px",y.className="diff-review-line-number"+p,e.modifiedLineNumber!==void 0?y.appendChild(document.createTextNode(String(e.modifiedLineNumber))):y.innerText=" ",w.appendChild(y);const x=document.createElement("span");if(x.className=_,b){const N=document.createElement("span");N.className=Ee.asClassName(b),N.innerText="  ",x.appendChild(N)}else x.innerText="  ";w.appendChild(x);let L;if(e.modifiedLineNumber!==void 0){let N=this._getLineHtml(l,a,c.tabSize,e.modifiedLineNumber,this._languageService.languageIdCodec);qd._ttPolicy&&(N=qd._ttPolicy.createHTML(N)),w.insertAdjacentHTML("beforeend",N),L=l.getLineContent(e.modifiedLineNumber)}else{let N=this._getLineHtml(s,n,r.tabSize,e.originalLineNumber,this._languageService.languageIdCodec);qd._ttPolicy&&(N=qd._ttPolicy.createHTML(N)),w.insertAdjacentHTML("beforeend",N),L=s.getLineContent(e.originalLineNumber)}L.length===0&&(L=m("blankLine","blank"));let E="";switch(e.type){case vn.Unchanged:e.originalLineNumber===e.modifiedLineNumber?E=m({key:"unchangedLine",comment:["The placeholders are contents of the line and should not be translated."]},"{0} unchanged line {1}",L,e.originalLineNumber):E=m("equalLine","{0} original line {1} modified line {2}",L,e.originalLineNumber,e.modifiedLineNumber);break;case vn.Added:E=m("insertLine","+ {0} modified line {1}",L,e.modifiedLineNumber);break;case vn.Deleted:E=m("deleteLine","- {0} original line {1}",L,e.originalLineNumber);break}return C.setAttribute("aria-label",E),C}_getLineHtml(e,t,i,n,s){const r=e.getLineContent(n),a=t.get(50),l=Ni.createEmpty(r,s),c=zs.isBasicASCII(r,e.mightContainNonBasicASCII()),d=zs.containsRTL(r,c,e.mightContainRTL());return Ly(new gu(a.isMonospace&&!t.get(33),a.canUseHalfwidthRightwardsArrow,r,!1,c,d,0,l,[],i,0,a.spaceWidth,a.middotWidth,a.wsmiddotWidth,t.get(118),t.get(100),t.get(95),t.get(51)!==Mc.OFF,null)).html}};UI=eM([tM(5,qt)],UI);class cre{constructor(e){this.editors=e}getOriginalModel(){return this.editors.original.getModel()}getOriginalOptions(){return this.editors.original.getOptions()}originalReveal(e){this.editors.original.revealRange(e),this.editors.original.setSelection(e),this.editors.original.focus()}getModifiedModel(){return this.editors.modified.getModel()}getModifiedOptions(){return this.editors.modified.getOptions()}modifiedReveal(e){e&&(this.editors.modified.revealRange(e),this.editors.modified.setSelection(e)),this.editors.modified.focus()}modifiedSetSelection(e){this.editors.modified.setSelection(e)}modifiedFocus(){this.editors.modified.focus()}getModifiedPosition(){return this.editors.modified.getPosition()??void 0}}D("diffEditor.move.border","#8b8b8b9c",m("diffEditor.move.border","The border color for text that got moved in the diff editor."));D("diffEditor.moveActive.border","#FFA500",m("diffEditor.moveActive.border","The active border color for text that got moved in the diff editor."));D("diffEditor.unchangedRegionShadow",{dark:"#000000",light:"#737373BF",hcDark:"#000000",hcLight:"#737373BF"},m("diffEditor.unchangedRegionShadow","The color of the shadow around unchanged region widgets."));const dre=Wi("diff-insert",ie.add,m("diffInsertIcon","Line decoration for inserts in the diff editor.")),P8=Wi("diff-remove",ie.remove,m("diffRemoveIcon","Line decoration for removals in the diff editor.")),o4=kt.register({className:"line-insert",description:"line-insert",isWholeLine:!0,linesDecorationsClassName:"insert-sign "+Ee.asClassName(dre),marginClassName:"gutter-insert"}),r4=kt.register({className:"line-delete",description:"line-delete",isWholeLine:!0,linesDecorationsClassName:"delete-sign "+Ee.asClassName(P8),marginClassName:"gutter-delete"}),a4=kt.register({className:"line-insert",description:"line-insert",isWholeLine:!0,marginClassName:"gutter-insert"}),l4=kt.register({className:"line-delete",description:"line-delete",isWholeLine:!0,marginClassName:"gutter-delete"}),c4=kt.register({className:"char-insert",description:"char-insert",shouldFillLineOnLineBreak:!0}),hre=kt.register({className:"char-insert",description:"char-insert",isWholeLine:!0}),ure=kt.register({className:"char-insert diff-range-empty",description:"char-insert diff-range-empty"}),$I=kt.register({className:"char-delete",description:"char-delete",shouldFillLineOnLineBreak:!0}),fre=kt.register({className:"char-delete",description:"char-delete",isWholeLine:!0}),gre=kt.register({className:"char-delete diff-range-empty",description:"char-delete diff-range-empty"});var O8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},KI=function(o,e){return function(t,i){e(t,i,o)}},pd;const F8=He("diffProviderFactoryService");let jI=class{constructor(e){this.instantiationService=e}createDiffProvider(e){return this.instantiationService.createInstance(qI,e)}};jI=O8([KI(0,ke)],jI);Qe(F8,jI,1);var hh;let qI=(hh=class{constructor(e,t,i){this.editorWorkerService=t,this.telemetryService=i,this.onDidChangeEventEmitter=new A,this.onDidChange=this.onDidChangeEventEmitter.event,this.diffAlgorithm="advanced",this.diffAlgorithmOnDidChangeSubscription=void 0,this.setOptions(e)}dispose(){this.diffAlgorithmOnDidChangeSubscription?.dispose()}async computeDiff(e,t,i,n){if(typeof this.diffAlgorithm!="string")return this.diffAlgorithm.computeDiff(e,t,i,n);if(e.isDisposed()||t.isDisposed())return{changes:[],identical:!0,quitEarly:!1,moves:[]};if(e.getLineCount()===1&&e.getLineMaxColumn(1)===1)return t.getLineCount()===1&&t.getLineMaxColumn(1)===1?{changes:[],identical:!0,quitEarly:!1,moves:[]}:{changes:[new Ws(new xe(1,2),new xe(1,t.getLineCount()+1),[new Ls(e.getFullModelRange(),t.getFullModelRange())])],identical:!1,quitEarly:!1,moves:[]};const s=JSON.stringify([e.uri.toString(),t.uri.toString()]),r=JSON.stringify([e.id,t.id,e.getAlternativeVersionId(),t.getAlternativeVersionId(),JSON.stringify(i)]),a=pd.diffCache.get(s);if(a&&a.context===r)return a.result;const l=Hs.create(),c=await this.editorWorkerService.computeDiff(e.uri,t.uri,i,this.diffAlgorithm),d=l.elapsed();if(this.telemetryService.publicLog2("diffEditor.computeDiff",{timeMs:d,timedOut:c?.quitEarly??!0,detectedMoves:i.computeMoves?c?.moves.length??0:-1}),n.isCancellationRequested)return{changes:[],identical:!1,quitEarly:!0,moves:[]};if(!c)throw new Error("no diff result available");return pd.diffCache.size>10&&pd.diffCache.delete(pd.diffCache.keys().next().value),pd.diffCache.set(s,{result:c,context:r}),c}setOptions(e){let t=!1;e.diffAlgorithm&&this.diffAlgorithm!==e.diffAlgorithm&&(this.diffAlgorithmOnDidChangeSubscription?.dispose(),this.diffAlgorithmOnDidChangeSubscription=void 0,this.diffAlgorithm=e.diffAlgorithm,typeof e.diffAlgorithm!="string"&&(this.diffAlgorithmOnDidChangeSubscription=e.diffAlgorithm.onDidChange(()=>this.onDidChangeEventEmitter.fire())),t=!0),t&&this.onDidChangeEventEmitter.fire()}},pd=hh,hh.diffCache=new Map,hh);qI=pd=O8([KI(1,Zc),KI(2,$s)],qI);function iM(){return RL&&!!RL.VSCODE_DEV}function B8(o){if(iM()){const e=mre();return e.add(o),{dispose(){e.delete(o)}}}else return{dispose(){}}}function mre(){r1||(r1=new Set);const o=globalThis;return o.$hotReload_applyNewExports||(o.$hotReload_applyNewExports=e=>{const t={config:{mode:void 0},...e},i=[];for(const n of r1){const s=n(t);s&&i.push(s)}if(i.length>0)return n=>{let s=!1;for(const r of i)r(n)&&(s=!0);return s}}),r1}let r1;iM()&&B8(({oldExports:o,newSrc:e,config:t})=>{if(t.mode==="patch-prototype")return i=>{for(const n in i){const s=i[n];if(console.log(`[hot-reload] Patching prototype methods of '${n}'`,{exportedItem:s}),typeof s=="function"&&s.prototype){const r=o[n];if(r){for(const a of Object.getOwnPropertyNames(s.prototype)){const l=Object.getOwnPropertyDescriptor(s.prototype,a),c=Object.getOwnPropertyDescriptor(r.prototype,a);l?.value?.toString()!==c?.value?.toString()&&console.log(`[hot-reload] Patching prototype method '${n}.${a}'`),Object.defineProperty(r.prototype,a,l)}i[n]=r}}}return!0}});function Lo(o,e){return pre([o],e),o}function pre(o,e){iM()&&ks("reload",i=>B8(({oldExports:n})=>{if([...Object.values(n)].some(s=>o.includes(s)))return s=>(i(void 0),!0)})).read(e)}var _re=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},bre=function(o,e){return function(t,i){e(t,i,o)}};let GI=class extends z{setActiveMovedText(e){this._activeMovedText.set(e,void 0)}constructor(e,t,i){super(),this.model=e,this._options=t,this._diffProviderFactoryService=i,this._isDiffUpToDate=Ge(this,!1),this.isDiffUpToDate=this._isDiffUpToDate,this._diff=Ge(this,void 0),this.diff=this._diff,this._unchangedRegions=Ge(this,void 0),this.unchangedRegions=Ce(this,a=>this._options.hideUnchangedRegions.read(a)?this._unchangedRegions.read(a)?.regions??[]:(Xt(l=>{for(const c of this._unchangedRegions.get()?.regions||[])c.collapseAll(l)}),[])),this.movedTextToCompare=Ge(this,void 0),this._activeMovedText=Ge(this,void 0),this._hoveredMovedText=Ge(this,void 0),this.activeMovedText=Ce(this,a=>this.movedTextToCompare.read(a)??this._hoveredMovedText.read(a)??this._activeMovedText.read(a)),this._cancellationTokenSource=new In,this._diffProvider=Ce(this,a=>{const l=this._diffProviderFactoryService.createDiffProvider({diffAlgorithm:this._options.diffAlgorithm.read(a)}),c=ks("onDidChange",l.onDidChange);return{diffProvider:l,onChangeSignal:c}}),this._register(_e(()=>this._cancellationTokenSource.cancel()));const n=Q_("contentChangedSignal"),s=this._register(new ci(()=>n.trigger(void 0),200));this._register(We(a=>{const l=this._unchangedRegions.read(a);if(!l||l.regions.some(g=>g.isDragged.read(a)))return;const c=l.originalDecorationIds.map(g=>e.original.getDecorationRange(g)).map(g=>g?xe.fromRangeInclusive(g):void 0),d=l.modifiedDecorationIds.map(g=>e.modified.getDecorationRange(g)).map(g=>g?xe.fromRangeInclusive(g):void 0),h=l.regions.map((g,p)=>!c[p]||!d[p]?void 0:new dc(c[p].startLineNumber,d[p].startLineNumber,c[p].length,g.visibleLineCountTop.read(a),g.visibleLineCountBottom.read(a))).filter(_l),u=[];let f=!1;for(const g of LN(h,(p,_)=>p.getHiddenModifiedRange(a).endLineNumberExclusive===_.getHiddenModifiedRange(a).startLineNumber))if(g.length>1){f=!0;const p=g.reduce((b,C)=>b+C.lineCount,0),_=new dc(g[0].originalLineNumber,g[0].modifiedLineNumber,p,g[0].visibleLineCountTop.get(),g[g.length-1].visibleLineCountBottom.get());u.push(_)}else u.push(g[0]);if(f){const g=e.original.deltaDecorations(l.originalDecorationIds,u.map(_=>({range:_.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),p=e.modified.deltaDecorations(l.modifiedDecorationIds,u.map(_=>({range:_.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));Xt(_=>{this._unchangedRegions.set({regions:u,originalDecorationIds:g,modifiedDecorationIds:p},_)})}}));const r=(a,l,c)=>{const d=dc.fromDiffs(a.changes,e.original.getLineCount(),e.modified.getLineCount(),this._options.hideUnchangedRegionsMinimumLineCount.read(c),this._options.hideUnchangedRegionsContextLineCount.read(c));let h;const u=this._unchangedRegions.get();if(u){const _=u.originalDecorationIds.map(v=>e.original.getDecorationRange(v)).map(v=>v?xe.fromRangeInclusive(v):void 0),b=u.modifiedDecorationIds.map(v=>e.modified.getDecorationRange(v)).map(v=>v?xe.fromRangeInclusive(v):void 0);let w=Xoe(u.regions.map((v,y)=>{if(!_[y]||!b[y])return;const x=_[y].length;return new dc(_[y].startLineNumber,b[y].startLineNumber,x,Math.min(v.visibleLineCountTop.get(),x),Math.min(v.visibleLineCountBottom.get(),x-v.visibleLineCountTop.get()))}).filter(_l),(v,y)=>!y||v.modifiedLineNumber>=y.modifiedLineNumber+y.lineCount&&v.originalLineNumber>=y.originalLineNumber+y.lineCount).map(v=>new hn(v.getHiddenOriginalRange(c),v.getHiddenModifiedRange(c)));w=hn.clip(w,xe.ofLength(1,e.original.getLineCount()),xe.ofLength(1,e.modified.getLineCount())),h=hn.inverse(w,e.original.getLineCount(),e.modified.getLineCount())}const f=[];if(h)for(const _ of d){const b=h.filter(C=>C.original.intersectsStrict(_.originalUnchangedRange)&&C.modified.intersectsStrict(_.modifiedUnchangedRange));f.push(..._.setVisibleRanges(b,l))}else f.push(...d);const g=e.original.deltaDecorations(u?.originalDecorationIds||[],f.map(_=>({range:_.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),p=e.modified.deltaDecorations(u?.modifiedDecorationIds||[],f.map(_=>({range:_.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));this._unchangedRegions.set({regions:f,originalDecorationIds:g,modifiedDecorationIds:p},l)};this._register(e.modified.onDidChangeContent(a=>{if(this._diff.get()){const c=cl.fromModelContentChanges(a.changes);this._lastDiff,e.original,e.modified}this._isDiffUpToDate.set(!1,void 0),s.schedule()})),this._register(e.original.onDidChangeContent(a=>{if(this._diff.get()){const c=cl.fromModelContentChanges(a.changes);this._lastDiff,e.original,e.modified}this._isDiffUpToDate.set(!1,void 0),s.schedule()})),this._register(To(async(a,l)=>{this._options.hideUnchangedRegionsMinimumLineCount.read(a),this._options.hideUnchangedRegionsContextLineCount.read(a),s.cancel(),n.read(a);const c=this._diffProvider.read(a);c.onChangeSignal.read(a),Lo(u3,a),Lo(dk,a),this._isDiffUpToDate.set(!1,void 0);let d=[];l.add(e.original.onDidChangeContent(f=>{const g=cl.fromModelContentChanges(f.changes);d=tv(d,g)}));let h=[];l.add(e.modified.onDidChangeContent(f=>{const g=cl.fromModelContentChanges(f.changes);h=tv(h,g)}));let u=await c.diffProvider.computeDiff(e.original,e.modified,{ignoreTrimWhitespace:this._options.ignoreTrimWhitespace.read(a),maxComputationTimeMs:this._options.maxComputationTimeMs.read(a),computeMoves:this._options.showMoves.read(a)},this._cancellationTokenSource.token);this._cancellationTokenSource.token.isCancellationRequested||e.original.isDisposed()||e.modified.isDisposed()||(u=Cre(u,e.original,e.modified),u=(e.original,e.modified,void 0)??u,u=(e.original,e.modified,void 0)??u,Xt(f=>{r(u,f),this._lastDiff=u;const g=nM.fromDiffResult(u);this._diff.set(g,f),this._isDiffUpToDate.set(!0,f);const p=this.movedTextToCompare.get();this.movedTextToCompare.set(p?this._lastDiff.moves.find(_=>_.lineRangeMapping.modified.intersect(p.lineRangeMapping.modified)):void 0,f)}))}))}ensureModifiedLineIsVisible(e,t,i){if(this.diff.get()?.mappings.length===0)return;const n=this._unchangedRegions.get()?.regions||[];for(const s of n)if(s.getHiddenModifiedRange(void 0).contains(e)){s.showModifiedLine(e,t,i);return}}ensureOriginalLineIsVisible(e,t,i){if(this.diff.get()?.mappings.length===0)return;const n=this._unchangedRegions.get()?.regions||[];for(const s of n)if(s.getHiddenOriginalRange(void 0).contains(e)){s.showOriginalLine(e,t,i);return}}async waitForDiff(){await k7(this.isDiffUpToDate,e=>e)}serializeState(){return{collapsedRegions:this._unchangedRegions.get()?.regions.map(t=>({range:t.getHiddenModifiedRange(void 0).serialize()}))}}restoreSerializedState(e){const t=e.collapsedRegions?.map(n=>xe.deserialize(n.range)),i=this._unchangedRegions.get();!i||!t||Xt(n=>{for(const s of i.regions)for(const r of t)if(s.modifiedUnchangedRange.intersect(r)){s.setHiddenModifiedRange(r,n);break}})}};GI=_re([bre(2,F8)],GI);function Cre(o,e,t){return{changes:o.changes.map(i=>new Ws(i.original,i.modified,i.innerChanges?i.innerChanges.map(n=>vre(n,e,t)):void 0)),moves:o.moves,identical:o.identical,quitEarly:o.quitEarly}}function vre(o,e,t){let i=o.originalRange,n=o.modifiedRange;return i.startColumn===1&&n.startColumn===1&&(i.endColumn!==1||n.endColumn!==1)&&i.endColumn===e.getLineMaxColumn(i.endLineNumber)&&n.endColumn===t.getLineMaxColumn(n.endLineNumber)&&i.endLineNumbernew W8(t)),e.moves||[],e.identical,e.quitEarly)}constructor(e,t,i,n){this.mappings=e,this.movedTexts=t,this.identical=i,this.quitEarly=n}}class W8{constructor(e){this.lineRangeMapping=e}}class dc{static fromDiffs(e,t,i,n,s){const r=Ws.inverse(e,t,i),a=[];for(const l of r){let c=l.original.startLineNumber,d=l.modified.startLineNumber,h=l.original.length;const u=c===1&&d===1,f=c+h===t+1&&d+h===i+1;(u||f)&&h>=s+n?(u&&!f&&(h-=s),f&&!u&&(c+=s,d+=s,h-=s),a.push(new dc(c,d,h,0,0))):h>=s*2+n&&(c+=s,d+=s,h-=s*2,a.push(new dc(c,d,h,0,0)))}return a}get originalUnchangedRange(){return xe.ofLength(this.originalLineNumber,this.lineCount)}get modifiedUnchangedRange(){return xe.ofLength(this.modifiedLineNumber,this.lineCount)}constructor(e,t,i,n,s){this.originalLineNumber=e,this.modifiedLineNumber=t,this.lineCount=i,this._visibleLineCountTop=Ge(this,0),this.visibleLineCountTop=this._visibleLineCountTop,this._visibleLineCountBottom=Ge(this,0),this.visibleLineCountBottom=this._visibleLineCountBottom,this._shouldHideControls=Ce(this,l=>this.visibleLineCountTop.read(l)+this.visibleLineCountBottom.read(l)===this.lineCount&&!this.isDragged.read(l)),this.isDragged=Ge(this,void 0);const r=Math.max(Math.min(n,this.lineCount),0),a=Math.max(Math.min(s,this.lineCount-n),0);bR(n===r),bR(s===a),this._visibleLineCountTop.set(r,void 0),this._visibleLineCountBottom.set(a,void 0)}setVisibleRanges(e,t){const i=[],n=new to(e.map(l=>l.modified)).subtractFrom(this.modifiedUnchangedRange);let s=this.originalLineNumber,r=this.modifiedLineNumber;const a=this.modifiedLineNumber+this.lineCount;if(n.ranges.length===0)this.showAll(t),i.push(this);else{let l=0;for(const c of n.ranges){const d=l===n.ranges.length-1;l++;const h=(d?a:c.endLineNumberExclusive)-r,u=new dc(s,r,h,0,0);u.setHiddenModifiedRange(c,t),i.push(u),s=u.originalUnchangedRange.endLineNumberExclusive,r=u.modifiedUnchangedRange.endLineNumberExclusive}}return i}shouldHideControls(e){return this._shouldHideControls.read(e)}getHiddenOriginalRange(e){return xe.ofLength(this.originalLineNumber+this._visibleLineCountTop.read(e),this.lineCount-this._visibleLineCountTop.read(e)-this._visibleLineCountBottom.read(e))}getHiddenModifiedRange(e){return xe.ofLength(this.modifiedLineNumber+this._visibleLineCountTop.read(e),this.lineCount-this._visibleLineCountTop.read(e)-this._visibleLineCountBottom.read(e))}setHiddenModifiedRange(e,t){const i=e.startLineNumber-this.modifiedLineNumber,n=this.modifiedLineNumber+this.lineCount-e.endLineNumberExclusive;this.setState(i,n,t)}getMaxVisibleLineCountTop(){return this.lineCount-this._visibleLineCountBottom.get()}getMaxVisibleLineCountBottom(){return this.lineCount-this._visibleLineCountTop.get()}showMoreAbove(e=10,t){const i=this.getMaxVisibleLineCountTop();this._visibleLineCountTop.set(Math.min(this._visibleLineCountTop.get()+e,i),t)}showMoreBelow(e=10,t){const i=this.lineCount-this._visibleLineCountTop.get();this._visibleLineCountBottom.set(Math.min(this._visibleLineCountBottom.get()+e,i),t)}showAll(e){this._visibleLineCountBottom.set(this.lineCount-this._visibleLineCountTop.get(),e)}showModifiedLine(e,t,i){const n=e+1-(this.modifiedLineNumber+this._visibleLineCountTop.get()),s=this.modifiedLineNumber-this._visibleLineCountBottom.get()+this.lineCount-e;t===0&&n{this._contextMenuService.showContextMenu({domForShadowRoot:u?i.getDomNode()??void 0:void 0,getAnchor:()=>({x:g,y:p}),getActions:()=>{const _=[],b=n.modified.isEmpty;return _.push(new Fs("diff.clipboard.copyDeletedContent",b?n.original.length>1?m("diff.clipboard.copyDeletedLinesContent.label","Copy deleted lines"):m("diff.clipboard.copyDeletedLinesContent.single.label","Copy deleted line"):n.original.length>1?m("diff.clipboard.copyChangedLinesContent.label","Copy changed lines"):m("diff.clipboard.copyChangedLinesContent.single.label","Copy changed line"),void 0,!0,async()=>{const w=this._originalTextModel.getValueInRange(n.original.toExclusiveRange());await this._clipboardService.writeText(w)})),n.original.length>1&&_.push(new Fs("diff.clipboard.copyDeletedLineContent",b?m("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",n.original.startLineNumber+h):m("diff.clipboard.copyChangedLineContent.label","Copy changed line ({0})",n.original.startLineNumber+h),void 0,!0,async()=>{let w=this._originalTextModel.getLineContent(n.original.startLineNumber+h);w===""&&(w=this._originalTextModel.getEndOfLineSequence()===0?` +`:`\r +`),await this._clipboardService.writeText(w)})),i.getOption(92)||_.push(new Fs("diff.inline.revertChange",m("diff.inline.revertChange.label","Revert this change"),void 0,!0,async()=>{this._editor.revert(this._diff)})),_},autoSelectFirstItem:!0})};this._register(jt(this._diffActions,"mousedown",g=>{if(!g.leftButton)return;const{top:p,height:_}=gi(this._diffActions),b=Math.floor(d/3);g.preventDefault(),f(g.posx,p+_+b)})),this._register(i.onMouseMove(g=>{(g.target.type===8||g.target.type===5)&&g.target.detail.viewZoneId===this._getViewZoneId()?(h=this._updateLightBulbPosition(this._marginDomNode,g.event.browserEvent.y,d),this.visibility=!0):this.visibility=!1})),this._register(i.onMouseDown(g=>{g.event.leftButton&&(g.target.type===8||g.target.type===5)&&g.target.detail.viewZoneId===this._getViewZoneId()&&(g.event.preventDefault(),h=this._updateLightBulbPosition(this._marginDomNode,g.event.browserEvent.y,d),f(g.event.posx,g.event.posy+d))}))}_updateLightBulbPosition(e,t,i){const{top:n}=gi(e),s=t-n,r=Math.floor(s/i),a=r*i;if(this._diffActions.style.top=`${a}px`,this._viewLineCounts){let l=0;for(let c=0;co});function yre(o,e,t,i){qi(i,e.fontInfo);const n=t.length>0,s=new K_(1e4);let r=0,a=0;const l=[];for(let u=0;u');const l=e.getLineContent(),c=zs.isBasicASCII(l,n),d=zs.containsRTL(l,c,s),h=Sy(new gu(r.fontInfo.isMonospace&&!r.disableMonospaceOptimizations,r.fontInfo.canUseHalfwidthRightwardsArrow,l,!1,c,d,0,e,t,r.tabSize,0,r.fontInfo.spaceWidth,r.fontInfo.middotWidth,r.fontInfo.wsmiddotWidth,r.stopRenderingLineAfter,r.renderWhitespace,r.renderControlCharacters,r.fontLigatures!==Mc.OFF,null),a);return a.appendString(""),h.characterMapping.getHorizontalOffset(h.characterMapping.length)}var Lre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},u4=function(o,e){return function(t,i){e(t,i,o)}};let ZI=class extends z{constructor(e,t,i,n,s,r,a,l,c,d){super(),this._targetWindow=e,this._editors=t,this._diffModel=i,this._options=n,this._diffEditorWidget=s,this._canIgnoreViewZoneUpdateEvent=r,this._origViewZonesToIgnore=a,this._modViewZonesToIgnore=l,this._clipboardService=c,this._contextMenuService=d,this._originalTopPadding=Ge(this,0),this._originalScrollOffset=Ge(this,0),this._originalScrollOffsetAnimated=i4(this._targetWindow,this._originalScrollOffset,this._store),this._modifiedTopPadding=Ge(this,0),this._modifiedScrollOffset=Ge(this,0),this._modifiedScrollOffsetAnimated=i4(this._targetWindow,this._modifiedScrollOffset,this._store);const h=Ge("invalidateAlignmentsState",0),u=this._register(new ci(()=>{h.set(h.get()+1,void 0)},0));this._register(this._editors.original.onDidChangeViewZones(w=>{this._canIgnoreViewZoneUpdateEvent()||u.schedule()})),this._register(this._editors.modified.onDidChangeViewZones(w=>{this._canIgnoreViewZoneUpdateEvent()||u.schedule()})),this._register(this._editors.original.onDidChangeConfiguration(w=>{(w.hasChanged(147)||w.hasChanged(67))&&u.schedule()})),this._register(this._editors.modified.onDidChangeConfiguration(w=>{(w.hasChanged(147)||w.hasChanged(67))&&u.schedule()}));const f=this._diffModel.map(w=>w?gt(this,w.model.original.onDidChangeTokens,()=>w.model.original.tokenization.backgroundTokenizationState===2):void 0).map((w,v)=>w?.read(v)),g=Ce(w=>{const v=this._diffModel.read(w),y=v?.diff.read(w);if(!v||!y)return null;h.read(w);const L=this._options.renderSideBySide.read(w);return f4(this._editors.original,this._editors.modified,y.mappings,this._origViewZonesToIgnore,this._modViewZonesToIgnore,L)}),p=Ce(w=>{const v=this._diffModel.read(w)?.movedTextToCompare.read(w);if(!v)return null;h.read(w);const y=v.changes.map(x=>new W8(x));return f4(this._editors.original,this._editors.modified,y,this._origViewZonesToIgnore,this._modViewZonesToIgnore,!0)});function _(){const w=document.createElement("div");return w.className="diagonal-fill",w}const b=this._register(new X);this.viewZones=cu(this,(w,v)=>{b.clear();const y=g.read(w)||[],x=[],L=[],E=this._modifiedTopPadding.read(w);E>0&&L.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:E,showInHiddenAreas:!0,suppressMouseDown:!0});const N=this._originalTopPadding.read(w);N>0&&x.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:N,showInHiddenAreas:!0,suppressMouseDown:!0});const H=this._options.renderSideBySide.read(w),F=H?void 0:this._editors.modified._getViewModel()?.createLineBreaksComputer();if(F){const se=this._editors.original.getModel();for(const be of y)if(be.diff)for(let we=be.originalRange.startLineNumber;wese.getLineCount())return{orig:x,mod:L};F?.addRequest(se.getLineContent(we),null,null)}}const W=F?.finalize()??[];let j=0;const B=this._editors.modified.getOption(67),G=this._diffModel.read(w)?.movedTextToCompare.read(w),ne=this._editors.original.getModel()?.mightContainNonBasicASCII()??!1,ae=this._editors.original.getModel()?.mightContainRTL()??!1,de=sM.fromEditor(this._editors.modified);for(const se of y)if(se.diff&&!H&&(!this._options.useTrueInlineDiffRendering.read(w)||!oM(se.diff))){if(!se.originalRange.isEmpty){f.read(w);const we=document.createElement("div");we.classList.add("view-lines","line-delete","monaco-mouse-cursor-text");const Rt=this._editors.original.getModel();if(se.originalRange.endLineNumberExclusive-1>Rt.getLineCount())return{orig:x,mod:L};const ct=new Sre(se.originalRange.mapToLineArray(fi=>Rt.tokenization.getLineTokens(fi)),se.originalRange.mapToLineArray(fi=>W[j++]),ne,ae),Bt=[];for(const fi of se.diff.innerChanges||[])Bt.push(new hp(fi.originalRange.delta(-(se.diff.original.startLineNumber-1)),$I.className,0));const ht=yre(ct,de,Bt,we),ei=document.createElement("div");if(ei.className="inline-deleted-margin-view-zone",qi(ei,de.fontInfo),this._options.renderIndicators.read(w))for(let fi=0;fiA5(js),ei,this._editors.modified,se.diff,this._diffEditorWidget,ht.viewLineCounts,this._editors.original.getModel(),this._contextMenuService,this._clipboardService));for(let fi=0;fi1&&x.push({afterLineNumber:se.originalRange.startLineNumber+fi,domNode:_(),heightInPx:(po-1)*B,showInHiddenAreas:!0,suppressMouseDown:!0})}L.push({afterLineNumber:se.modifiedRange.startLineNumber-1,domNode:we,heightInPx:ht.heightInLines*B,minWidthInPx:ht.minWidthInPx,marginDomNode:ei,setZoneId(fi){js=fi},showInHiddenAreas:!0,suppressMouseDown:!0})}const be=document.createElement("div");be.className="gutter-delete",x.push({afterLineNumber:se.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:se.modifiedHeightInPx,marginDomNode:be,showInHiddenAreas:!0,suppressMouseDown:!0})}else{const be=se.modifiedHeightInPx-se.originalHeightInPx;if(be>0){if(G?.lineRangeMapping.original.delta(-1).deltaLength(2).contains(se.originalRange.endLineNumberExclusive-1))continue;x.push({afterLineNumber:se.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:be,showInHiddenAreas:!0,suppressMouseDown:!0})}else{let we=function(){const ct=document.createElement("div");return ct.className="arrow-revert-change "+Ee.asClassName(ie.arrowRight),v.add(U(ct,"mousedown",Bt=>Bt.stopPropagation())),v.add(U(ct,"click",Bt=>{Bt.stopPropagation(),s.revert(se.diff)})),ce("div",{},ct)};if(G?.lineRangeMapping.modified.delta(-1).deltaLength(2).contains(se.modifiedRange.endLineNumberExclusive-1))continue;let Rt;se.diff&&se.diff.modified.isEmpty&&this._options.shouldRenderOldRevertArrows.read(w)&&(Rt=we()),L.push({afterLineNumber:se.modifiedRange.endLineNumberExclusive-1,domNode:_(),heightInPx:-be,marginDomNode:Rt,showInHiddenAreas:!0,suppressMouseDown:!0})}}for(const se of p.read(w)??[]){if(!G?.lineRangeMapping.original.intersect(se.originalRange)||!G?.lineRangeMapping.modified.intersect(se.modifiedRange))continue;const be=se.modifiedHeightInPx-se.originalHeightInPx;be>0?x.push({afterLineNumber:se.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:be,showInHiddenAreas:!0,suppressMouseDown:!0}):L.push({afterLineNumber:se.modifiedRange.endLineNumberExclusive-1,domNode:_(),heightInPx:-be,showInHiddenAreas:!0,suppressMouseDown:!0})}return{orig:x,mod:L}});let C=!1;this._register(this._editors.original.onDidScrollChange(w=>{w.scrollLeftChanged&&!C&&(C=!0,this._editors.modified.setScrollLeft(w.scrollLeft),C=!1)})),this._register(this._editors.modified.onDidScrollChange(w=>{w.scrollLeftChanged&&!C&&(C=!0,this._editors.original.setScrollLeft(w.scrollLeft),C=!1)})),this._originalScrollTop=gt(this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=gt(this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._register(We(w=>{const v=this._originalScrollTop.read(w)-(this._originalScrollOffsetAnimated.get()-this._modifiedScrollOffsetAnimated.read(w))-(this._originalTopPadding.get()-this._modifiedTopPadding.read(w));v!==this._editors.modified.getScrollTop()&&this._editors.modified.setScrollTop(v,1)})),this._register(We(w=>{const v=this._modifiedScrollTop.read(w)-(this._modifiedScrollOffsetAnimated.get()-this._originalScrollOffsetAnimated.read(w))-(this._modifiedTopPadding.get()-this._originalTopPadding.read(w));v!==this._editors.original.getScrollTop()&&this._editors.original.setScrollTop(v,1)})),this._register(We(w=>{const v=this._diffModel.read(w)?.movedTextToCompare.read(w);let y=0;if(v){const x=this._editors.original.getTopForLineNumber(v.lineRangeMapping.original.startLineNumber,!0)-this._originalTopPadding.get();y=this._editors.modified.getTopForLineNumber(v.lineRangeMapping.modified.startLineNumber,!0)-this._modifiedTopPadding.get()-x}y>0?(this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(y,void 0)):y<0?(this._modifiedTopPadding.set(-y,void 0),this._originalTopPadding.set(0,void 0)):setTimeout(()=>{this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(0,void 0)},400),this._editors.modified.hasTextFocus()?this._originalScrollOffset.set(this._modifiedScrollOffset.get()-y,void 0,!0):this._modifiedScrollOffset.set(this._originalScrollOffset.get()+y,void 0,!0)}))}};ZI=Lre([u4(8,wy),u4(9,Lr)],ZI);function f4(o,e,t,i,n,s){const r=new Ll(g4(o,i)),a=new Ll(g4(e,n)),l=o.getOption(67),c=e.getOption(67),d=[];let h=0,u=0;function f(g,p){for(;;){let _=r.peek(),b=a.peek();if(_&&_.lineNumber>=g&&(_=void 0),b&&b.lineNumber>=p&&(b=void 0),!_&&!b)break;const C=_?_.lineNumber-h:Number.MAX_VALUE,w=b?b.lineNumber-u:Number.MAX_VALUE;Cw?(a.dequeue(),_={lineNumber:b.lineNumber-u+h,heightInPx:0}):(r.dequeue(),a.dequeue()),d.push({originalRange:xe.ofLength(_.lineNumber,1),modifiedRange:xe.ofLength(b.lineNumber,1),originalHeightInPx:l+_.heightInPx,modifiedHeightInPx:c+b.heightInPx,diff:void 0})}}for(const g of t){let w=function(v,y,x=!1){if(vF.lineNumberF+W.heightInPx,0)??0,H=a.takeWhile(F=>F.lineNumberF+W.heightInPx,0)??0;d.push({originalRange:L,modifiedRange:E,originalHeightInPx:L.length*l+N,modifiedHeightInPx:E.length*c+H,diff:g.lineRangeMapping}),C=v,b=y};const p=g.lineRangeMapping;f(p.original.startLineNumber,p.modified.startLineNumber);let _=!0,b=p.modified.startLineNumber,C=p.original.startLineNumber;if(s)for(const v of p.innerChanges||[]){v.originalRange.startColumn>1&&v.modifiedRange.startColumn>1&&w(v.originalRange.startLineNumber,v.modifiedRange.startLineNumber);const y=o.getModel(),x=v.originalRange.endLineNumber<=y.getLineCount()?y.getLineMaxColumn(v.originalRange.endLineNumber):Number.MAX_SAFE_INTEGER;v.originalRange.endColumn1&&i.push({lineNumber:l,heightInPx:r*(c-1)})}for(const l of o.getWhitespaces()){if(e.has(l.id))continue;const c=l.afterLineNumber===0?0:s.convertViewPositionToModelPosition(new P(l.afterLineNumber,1)).lineNumber;t.push({lineNumber:c,heightInPx:l.height})}return Goe(t,i,l=>l.lineNumber,(l,c)=>({lineNumber:l.lineNumber,heightInPx:l.heightInPx+c.heightInPx}))}function oM(o){return o.innerChanges?o.innerChanges.every(e=>m4(e.modifiedRange)&&m4(e.originalRange)||e.originalRange.equalsRange(new I(1,1,1,1))):!1}function m4(o){return o.startLineNumber===o.endLineNumber}const Op=class Op extends z{constructor(e,t,i,n,s){super(),this._rootElement=e,this._diffModel=t,this._originalEditorLayoutInfo=i,this._modifiedEditorLayoutInfo=n,this._editors=s,this._originalScrollTop=gt(this,this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=gt(this,this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._viewZonesChanged=ks("onDidChangeViewZones",this._editors.modified.onDidChangeViewZones),this.width=Ge(this,0),this._modifiedViewZonesChangedSignal=ks("modified.onDidChangeViewZones",this._editors.modified.onDidChangeViewZones),this._originalViewZonesChangedSignal=ks("original.onDidChangeViewZones",this._editors.original.onDidChangeViewZones),this._state=cu(this,(d,h)=>{this._element.replaceChildren();const u=this._diffModel.read(d),f=u?.diff.read(d)?.movedTexts;if(!f||f.length===0){this.width.set(0,void 0);return}this._viewZonesChanged.read(d);const g=this._originalEditorLayoutInfo.read(d),p=this._modifiedEditorLayoutInfo.read(d);if(!g||!p){this.width.set(0,void 0);return}this._modifiedViewZonesChangedSignal.read(d),this._originalViewZonesChangedSignal.read(d);const _=f.map(L=>{function E(ae,de){const se=de.getTopForLineNumber(ae.startLineNumber,!0),be=de.getTopForLineNumber(ae.endLineNumberExclusive,!0);return(se+be)/2}const N=E(L.lineRangeMapping.original,this._editors.original),H=this._originalScrollTop.read(d),F=E(L.lineRangeMapping.modified,this._editors.modified),W=this._modifiedScrollTop.read(d),j=N-H,B=F-W,G=Math.min(N,F),ne=Math.max(N,F);return{range:new Re(G,ne),from:j,to:B,fromWithoutScroll:N,toWithoutScroll:F,move:L}});_.sort(n6(rs(L=>L.fromWithoutScroll>L.toWithoutScroll,s6),rs(L=>L.fromWithoutScroll>L.toWithoutScroll?L.fromWithoutScroll:-L.toWithoutScroll,ia)));const b=rM.compute(_.map(L=>L.range)),C=10,w=g.verticalScrollbarWidth,v=(b.getTrackCount()-1)*10+C*2,y=w+v+(p.contentLeft-Op.movedCodeBlockPadding);let x=0;for(const L of _){const E=b.getTrack(x),N=w+C+E*10,H=15,F=15,W=y,j=p.glyphMarginWidth+p.lineNumbersWidth,B=18,G=document.createElementNS("http://www.w3.org/2000/svg","rect");G.classList.add("arrow-rectangle"),G.setAttribute("x",`${W-j}`),G.setAttribute("y",`${L.to-B/2}`),G.setAttribute("width",`${j}`),G.setAttribute("height",`${B}`),this._element.appendChild(G);const ne=document.createElementNS("http://www.w3.org/2000/svg","g"),ae=document.createElementNS("http://www.w3.org/2000/svg","path");ae.setAttribute("d",`M 0 ${L.from} L ${N} ${L.from} L ${N} ${L.to} L ${W-F} ${L.to}`),ae.setAttribute("fill","none"),ne.appendChild(ae);const de=document.createElementNS("http://www.w3.org/2000/svg","polygon");de.classList.add("arrow"),h.add(We(se=>{ae.classList.toggle("currentMove",L.move===u.activeMovedText.read(se)),de.classList.toggle("currentMove",L.move===u.activeMovedText.read(se))})),de.setAttribute("points",`${W-F},${L.to-H/2} ${W},${L.to} ${W-F},${L.to+H/2}`),ne.appendChild(de),this._element.appendChild(ne),x++}this.width.set(v,void 0)}),this._element=document.createElementNS("http://www.w3.org/2000/svg","svg"),this._element.setAttribute("class","moved-blocks-lines"),this._rootElement.appendChild(this._element),this._register(_e(()=>this._element.remove())),this._register(We(d=>{const h=this._originalEditorLayoutInfo.read(d),u=this._modifiedEditorLayoutInfo.read(d);!h||!u||(this._element.style.left=`${h.width-h.verticalScrollbarWidth}px`,this._element.style.height=`${h.height}px`,this._element.style.width=`${h.verticalScrollbarWidth+h.contentLeft-Op.movedCodeBlockPadding+this.width.read(d)}px`)})),this._register(X_(this._state));const r=Ce(d=>{const u=this._diffModel.read(d)?.diff.read(d);return u?u.movedTexts.map(f=>({move:f,original:new ff(wg(f.lineRangeMapping.original.startLineNumber-1),18),modified:new ff(wg(f.lineRangeMapping.modified.startLineNumber-1),18)})):[]});this._register(zv(this._editors.original,r.map(d=>d.map(h=>h.original)))),this._register(zv(this._editors.modified,r.map(d=>d.map(h=>h.modified)))),this._register(To((d,h)=>{const u=r.read(d);for(const f of u)h.add(new p4(this._editors.original,f.original,f.move,"original",this._diffModel.get())),h.add(new p4(this._editors.modified,f.modified,f.move,"modified",this._diffModel.get()))}));const a=ks("original.onDidFocusEditorWidget",d=>this._editors.original.onDidFocusEditorWidget(()=>setTimeout(()=>d(void 0),0))),l=ks("modified.onDidFocusEditorWidget",d=>this._editors.modified.onDidFocusEditorWidget(()=>setTimeout(()=>d(void 0),0)));let c="modified";this._register(Y_({createEmptyChangeSummary:()=>{},handleChange:(d,h)=>(d.didChange(a)&&(c="original"),d.didChange(l)&&(c="modified"),!0)},d=>{a.read(d),l.read(d);const h=this._diffModel.read(d);if(!h)return;const u=h.diff.read(d);let f;if(u&&c==="original"){const g=this._editors.originalCursor.read(d);g&&(f=u.movedTexts.find(p=>p.lineRangeMapping.original.contains(g.lineNumber)))}if(u&&c==="modified"){const g=this._editors.modifiedCursor.read(d);g&&(f=u.movedTexts.find(p=>p.lineRangeMapping.modified.contains(g.lineNumber)))}f!==h.movedTextToCompare.get()&&h.movedTextToCompare.set(void 0,void 0),h.setActiveMovedText(f)}))}};Op.movedCodeBlockPadding=4;let Qf=Op;class rM{static compute(e){const t=[],i=[];for(const n of e){let s=t.findIndex(r=>!r.intersectsStrict(n));s===-1&&(t.length>=6?s=$U(t,rs(a=>a.intersectWithRangeLength(n),ia)):(s=t.length,t.push(new uT))),t[s].addRange(n),i.push(s)}return new rM(t.length,i)}constructor(e,t){this._trackCount=e,this.trackPerLineIdx=t}getTrack(e){return this.trackPerLineIdx[e]}getTrackCount(){return this._trackCount}}class p4 extends J2{constructor(e,t,i,n,s){const r=tt("div.diff-hidden-lines-widget");super(e,t,r.root),this._editor=e,this._move=i,this._kind=n,this._diffModel=s,this._nodes=tt("div.diff-moved-code-block",{style:{marginRight:"4px"}},[tt("div.text-content@textContent"),tt("div.action-bar@actionBar")]),r.root.appendChild(this._nodes.root);const a=gt(this._editor.onDidLayoutChange,()=>this._editor.getLayoutInfo());this._register(Vc(this._nodes.root,{paddingRight:a.map(u=>u.verticalScrollbarWidth)}));let l;i.changes.length>0?l=this._kind==="original"?m("codeMovedToWithChanges","Code moved with changes to line {0}-{1}",this._move.lineRangeMapping.modified.startLineNumber,this._move.lineRangeMapping.modified.endLineNumberExclusive-1):m("codeMovedFromWithChanges","Code moved with changes from line {0}-{1}",this._move.lineRangeMapping.original.startLineNumber,this._move.lineRangeMapping.original.endLineNumberExclusive-1):l=this._kind==="original"?m("codeMovedTo","Code moved to line {0}-{1}",this._move.lineRangeMapping.modified.startLineNumber,this._move.lineRangeMapping.modified.endLineNumberExclusive-1):m("codeMovedFrom","Code moved from line {0}-{1}",this._move.lineRangeMapping.original.startLineNumber,this._move.lineRangeMapping.original.endLineNumberExclusive-1);const c=this._register(new oo(this._nodes.actionBar,{highlightToggledItems:!0})),d=new Fs("",l,"",!1);c.push(d,{icon:!1,label:!0});const h=new Fs("","Compare",Ee.asClassName(ie.compareChanges),!0,()=>{this._editor.focus(),this._diffModel.movedTextToCompare.set(this._diffModel.movedTextToCompare.get()===i?void 0:this._move,void 0)});this._register(We(u=>{const f=this._diffModel.movedTextToCompare.read(u)===i;h.checked=f})),c.push(h,{icon:!1,label:!0})}}class xre extends z{constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._decorations=Ce(this,s=>{const r=this._diffModel.read(s),a=r?.diff.read(s);if(!a)return null;const l=this._diffModel.read(s).movedTextToCompare.read(s),c=this._options.renderIndicators.read(s),d=this._options.showEmptyDecorations.read(s),h=[],u=[];if(!l)for(const g of a.mappings)if(g.lineRangeMapping.original.isEmpty||h.push({range:g.lineRangeMapping.original.toInclusiveRange(),options:c?r4:l4}),g.lineRangeMapping.modified.isEmpty||u.push({range:g.lineRangeMapping.modified.toInclusiveRange(),options:c?o4:a4}),g.lineRangeMapping.modified.isEmpty||g.lineRangeMapping.original.isEmpty)g.lineRangeMapping.original.isEmpty||h.push({range:g.lineRangeMapping.original.toInclusiveRange(),options:fre}),g.lineRangeMapping.modified.isEmpty||u.push({range:g.lineRangeMapping.modified.toInclusiveRange(),options:hre});else{const p=this._options.useTrueInlineDiffRendering.read(s)&&oM(g.lineRangeMapping);for(const _ of g.lineRangeMapping.innerChanges||[])if(g.lineRangeMapping.original.contains(_.originalRange.startLineNumber)&&h.push({range:_.originalRange,options:_.originalRange.isEmpty()&&d?gre:$I}),g.lineRangeMapping.modified.contains(_.modifiedRange.startLineNumber)&&u.push({range:_.modifiedRange,options:_.modifiedRange.isEmpty()&&d&&!p?ure:c4}),p){const b=r.model.original.getValueInRange(_.originalRange);u.push({range:_.modifiedRange,options:{description:"deleted-text",before:{content:b,inlineClassName:"inline-deleted-text"},zIndex:1e5,showIfCollapsed:!0}})}}if(l)for(const g of l.changes){const p=g.original.toInclusiveRange();p&&h.push({range:p,options:c?r4:l4});const _=g.modified.toInclusiveRange();_&&u.push({range:_,options:c?o4:a4});for(const b of g.innerChanges||[])h.push({range:b.originalRange,options:$I}),u.push({range:b.modifiedRange,options:c4})}const f=this._diffModel.read(s).activeMovedText.read(s);for(const g of a.movedTexts)h.push({range:g.lineRangeMapping.original.toInclusiveRange(),options:{description:"moved",blockClassName:"movedOriginal"+(g===f?" currentMove":""),blockPadding:[Qf.movedCodeBlockPadding,0,Qf.movedCodeBlockPadding,Qf.movedCodeBlockPadding]}}),u.push({range:g.lineRangeMapping.modified.toInclusiveRange(),options:{description:"moved",blockClassName:"movedModified"+(g===f?" currentMove":""),blockPadding:[4,0,4,4]}});return{originalDecorations:h,modifiedDecorations:u}}),this._register(Vv(this._editors.original,this._decorations.map(s=>s?.originalDecorations||[]))),this._register(Vv(this._editors.modified,this._decorations.map(s=>s?.modifiedDecorations||[])))}}class kre{resetSash(){this._sashRatio.set(void 0,void 0)}constructor(e,t){this._options=e,this.dimensions=t,this.sashLeft=ZT(this,i=>{const n=this._sashRatio.read(i)??this._options.splitViewDefaultRatio.read(i);return this._computeSashLeft(n,i)},(i,n)=>{const s=this.dimensions.width.get();this._sashRatio.set(i/s,n)}),this._sashRatio=Ge(this,void 0)}_computeSashLeft(e,t){const i=this.dimensions.width.read(t),n=Math.floor(this._options.splitViewDefaultRatio.read(t)*i),s=this._options.enableSplitViewResizing.read(t)?Math.floor(e*i):n,r=100;return i<=r*2?n:si-r?i-r:s}}class H8 extends z{constructor(e,t,i,n,s,r){super(),this._domNode=e,this._dimensions=t,this._enabled=i,this._boundarySashes=n,this.sashLeft=s,this._resetSash=r,this._sash=this._register(new an(this._domNode,{getVerticalSashTop:a=>0,getVerticalSashLeft:a=>this.sashLeft.get(),getVerticalSashHeight:a=>this._dimensions.height.get()},{orientation:0})),this._startSashPosition=void 0,this._register(this._sash.onDidStart(()=>{this._startSashPosition=this.sashLeft.get()})),this._register(this._sash.onDidChange(a=>{this.sashLeft.set(this._startSashPosition+(a.currentX-a.startX),void 0)})),this._register(this._sash.onDidEnd(()=>this._sash.layout())),this._register(this._sash.onDidReset(()=>this._resetSash())),this._register(We(a=>{const l=this._boundarySashes.read(a);l&&(this._sash.orthogonalEndSash=l.bottom)})),this._register(We(a=>{const l=this._enabled.read(a);this._sash.state=l?3:0,this.sashLeft.read(a),this._dimensions.height.read(a),this._sash.layout()}))}}class Dre extends z{constructor(e,t,i){super(),this._editor=e,this._domNode=t,this.itemProvider=i,this.scrollTop=gt(this,this._editor.onDidScrollChange,r=>this._editor.getScrollTop()),this.isScrollTopZero=this.scrollTop.map(r=>r===0),this.modelAttached=gt(this,this._editor.onDidChangeModel,r=>this._editor.hasModel()),this.editorOnDidChangeViewZones=ks("onDidChangeViewZones",this._editor.onDidChangeViewZones),this.editorOnDidContentSizeChange=ks("onDidContentSizeChange",this._editor.onDidContentSizeChange),this.domNodeSizeChanged=Q_("domNodeSizeChanged"),this.views=new Map,this._domNode.className="gutter monaco-editor";const n=this._domNode.appendChild(tt("div.scroll-decoration",{role:"presentation",ariaHidden:"true",style:{width:"100%"}}).root),s=new ResizeObserver(()=>{Xt(r=>{this.domNodeSizeChanged.trigger(r)})});s.observe(this._domNode),this._register(_e(()=>s.disconnect())),this._register(We(r=>{n.className=this.isScrollTopZero.read(r)?"":"scroll-decoration"})),this._register(We(r=>this.render(r)))}dispose(){super.dispose(),un(this._domNode)}render(e){if(!this.modelAttached.read(e))return;this.domNodeSizeChanged.read(e),this.editorOnDidChangeViewZones.read(e),this.editorOnDidContentSizeChange.read(e);const t=this.scrollTop.read(e),i=this._editor.getVisibleRanges(),n=new Set(this.views.keys()),s=Re.ofStartAndLength(0,this._domNode.clientHeight);if(!s.isEmpty)for(const r of i){const a=new xe(r.startLineNumber,r.endLineNumber+1),l=this.itemProvider.getIntersectingGutterItems(a,e);Xt(c=>{for(const d of l){if(!d.range.intersect(a))continue;n.delete(d.id);let h=this.views.get(d.id);if(h)h.item.set(d,c);else{const p=document.createElement("div");this._domNode.appendChild(p);const _=Ge("item",d),b=this.itemProvider.createView(_,p);h=new Ire(_,b,p),this.views.set(d.id,h)}const u=d.range.startLineNumber<=this._editor.getModel().getLineCount()?this._editor.getTopForLineNumber(d.range.startLineNumber,!0)-t:this._editor.getBottomForLineNumber(d.range.startLineNumber-1,!1)-t,g=(d.range.endLineNumberExclusive===1?Math.max(u,this._editor.getTopForLineNumber(d.range.startLineNumber,!1)-t):Math.max(u,this._editor.getBottomForLineNumber(d.range.endLineNumberExclusive-1,!0)-t))-u;h.domNode.style.top=`${u}px`,h.domNode.style.height=`${g}px`,h.gutterItemView.layout(Re.ofStartAndLength(u,g),s)}})}for(const r of n){const a=this.views.get(r);a.gutterItemView.dispose(),a.domNode.remove(),this.views.delete(r)}}}class Ire{constructor(e,t,i){this.item=e,this.gutterItemView=t,this.domNode=i}}class V8 extends Oh{constructor(e){super(),this._getContext=e}runAction(e,t){const i=this._getContext();return super.runAction(e,i)}}class _4 extends c3{constructor(e){super(),this._textModel=e}getValueOfRange(e){return this._textModel.getValueInRange(e)}get length(){const e=this._textModel.getLineCount(),t=this._textModel.getLineLength(e);return new Po(e-1,t)}}class Ere extends z{constructor(e,t,i={orientation:0}){super(),this.submenuActionViewItems=[],this.hasSecondaryActions=!1,this._onDidChangeDropdownVisibility=this._register(new IW),this.onDidChangeDropdownVisibility=this._onDidChangeDropdownVisibility.event,this.disposables=this._register(new X),i.hoverDelegate=i.hoverDelegate??this._register(QT()),this.options=i,this.toggleMenuAction=this._register(new E_(()=>this.toggleMenuActionViewItem?.show(),i.toggleMenuTitle)),this.element=document.createElement("div"),this.element.className="monaco-toolbar",e.appendChild(this.element),this.actionBar=this._register(new oo(this.element,{orientation:i.orientation,ariaLabel:i.ariaLabel,actionRunner:i.actionRunner,allowContextMenu:i.allowContextMenu,highlightToggledItems:i.highlightToggledItems,hoverDelegate:i.hoverDelegate,actionViewItemProvider:(n,s)=>{if(n.id===E_.ID)return this.toggleMenuActionViewItem=new qC(n,n.menuActions,t,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:Ee.asClassNameArray(i.moreIcon??ie.toolBarMore),anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,isMenu:!0,hoverDelegate:this.options.hoverDelegate}),this.toggleMenuActionViewItem.setActionContext(this.actionBar.context),this.disposables.add(this._onDidChangeDropdownVisibility.add(this.toggleMenuActionViewItem.onDidChangeVisibility)),this.toggleMenuActionViewItem;if(i.actionViewItemProvider){const r=i.actionViewItemProvider(n,s);if(r)return r}if(n instanceof R0){const r=new qC(n,n.actions,t,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:n.class,anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,hoverDelegate:this.options.hoverDelegate});return r.setActionContext(this.actionBar.context),this.submenuActionViewItems.push(r),this.disposables.add(this._onDidChangeDropdownVisibility.add(r.onDidChangeVisibility)),r}}}))}set actionRunner(e){this.actionBar.actionRunner=e}get actionRunner(){return this.actionBar.actionRunner}getElement(){return this.element}getItemAction(e){return this.actionBar.getAction(e)}setActions(e,t){this.clear();const i=e?e.slice(0):[];this.hasSecondaryActions=!!(t&&t.length>0),this.hasSecondaryActions&&t&&(this.toggleMenuAction.menuActions=t.slice(0),i.push(this.toggleMenuAction)),i.forEach(n=>{this.actionBar.push(n,{icon:this.options.icon??!0,label:this.options.label??!1,keybinding:this.getKeybindingLabel(n)})})}getKeybindingLabel(e){return this.options.getKeyBinding?.(e)?.getLabel()??void 0}clear(){this.submenuActionViewItems=[],this.disposables.clear(),this.actionBar.clear()}dispose(){this.clear(),this.disposables.dispose(),super.dispose()}}const l0=class l0 extends Fs{constructor(e,t){t=t||m("moreActions","More Actions..."),super(l0.ID,t,void 0,!0),this._menuActions=[],this.toggleDropdownMenu=e}async run(){this.toggleDropdownMenu()}get menuActions(){return this._menuActions}set menuActions(e){this._menuActions=e}};l0.ID="toolbar.toggle.more";let E_=l0;var z8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Do=function(o,e){return function(t,i){e(t,i,o)}};let $v=class extends Ere{constructor(e,t,i,n,s,r,a,l){super(e,s,{getKeyBinding:d=>r.lookupKeybinding(d.id)??void 0,...t,allowContextMenu:!0,skipTelemetry:typeof t?.telemetrySource=="string"}),this._options=t,this._menuService=i,this._contextKeyService=n,this._contextMenuService=s,this._keybindingService=r,this._commandService=a,this._sessionDisposables=this._store.add(new X);const c=t?.telemetrySource;c&&this._store.add(this.actionBar.onDidRun(d=>l.publicLog2("workbenchActionExecuted",{id:d.action.id,from:c})))}setActions(e,t=[],i){this._sessionDisposables.clear();const n=e.slice(),s=t.slice(),r=[];let a=0;const l=[];let c=!1;if(this._options?.hiddenItemStrategy!==-1)for(let d=0;df?.id)),h=this._options.overflowBehavior.maxItems-d.size;let u=0;for(let f=0;f=h&&(n[f]=void 0,l[f]=g))}}RM(n),RM(l),super.setActions(n,Gi.join(l,s)),(r.length>0||n.length>0)&&this._sessionDisposables.add(U(this.getElement(),"contextmenu",d=>{const h=new ur(fe(this.getElement()),d),u=this.getItemAction(h.target);if(!u)return;h.preventDefault(),h.stopPropagation();const f=[];if(u instanceof so&&u.menuKeybinding)f.push(u.menuKeybinding);else if(!(u instanceof Zm||u instanceof E_)){const p=!!this._keybindingService.lookupKeybinding(u.id);f.push(o8(this._commandService,this._keybindingService,u.id,void 0,p))}if(r.length>0){let p=!1;if(a===1&&this._options?.hiddenItemStrategy===0){p=!0;for(let _=0;_this._menuService.resetHiddenStates(i)}))),g.length!==0&&this._contextMenuService.showContextMenu({getAnchor:()=>h,getActions:()=>g,menuId:this._options?.contextMenu,menuActionOptions:{renderShortTitle:!0,...this._options?.menuOptions},skipTelemetry:typeof this._options?.telemetrySource=="string",contextKeyService:this._contextKeyService})}))}};$v=z8([Do(2,yr),Do(3,De),Do(4,Lr),Do(5,vt),Do(6,hi),Do(7,$s)],$v);let Kv=class extends $v{constructor(e,t,i,n,s,r,a,l,c){super(e,{resetMenu:t,...i},n,s,r,a,l,c),this._onDidChangeMenuItems=this._store.add(new A),this.onDidChangeMenuItems=this._onDidChangeMenuItems.event;const d=this._store.add(n.createMenu(t,s,{emitEventsForSubmenuChanges:!0})),h=()=>{const u=[],f=[];XT(d,i?.menuOptions,{primary:u,secondary:f},i?.toolbarOptions?.primaryGroup,i?.toolbarOptions?.shouldInlineSubmenu,i?.toolbarOptions?.useSeparatorsInPrimaryActions),e.classList.toggle("has-no-actions",u.length===0&&f.length===0),super.setActions(u,f)};this._store.add(d.onDidChange(()=>{h(),this._onDidChangeMenuItems.fire(this)})),h()}setActions(){throw new nt("This toolbar is populated from a menu.")}};Kv=z8([Do(3,yr),Do(4,De),Do(5,Lr),Do(6,vt),Do(7,hi),Do(8,$s)],Kv);var U8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},j1=function(o,e){return function(t,i){e(t,i,o)}};const dL=[],a1=35;let YI=class extends z{constructor(e,t,i,n,s,r,a,l,c){super(),this._diffModel=t,this._editors=i,this._options=n,this._sashLayout=s,this._boundarySashes=r,this._instantiationService=a,this._contextKeyService=l,this._menuService=c,this._menu=this._register(this._menuService.createMenu($e.DiffEditorHunkToolbar,this._contextKeyService)),this._actions=gt(this,this._menu.onDidChange,()=>this._menu.getActions()),this._hasActions=this._actions.map(d=>d.length>0),this._showSash=Ce(this,d=>this._options.renderSideBySide.read(d)&&this._hasActions.read(d)),this.width=Ce(this,d=>this._hasActions.read(d)?a1:0),this.elements=tt("div.gutter@gutter",{style:{position:"absolute",height:"100%",width:a1+"px"}},[]),this._currentDiff=Ce(this,d=>{const h=this._diffModel.read(d);if(!h)return;const u=h.diff.read(d)?.mappings,f=this._editors.modifiedCursor.read(d);if(f)return u?.find(g=>g.lineRangeMapping.modified.contains(f.lineNumber))}),this._selectedDiffs=Ce(this,d=>{const u=this._diffModel.read(d)?.diff.read(d);if(!u)return dL;const f=this._editors.modifiedSelections.read(d);if(f.every(b=>b.isEmpty()))return dL;const g=new to(f.map(b=>xe.fromRangeInclusive(b))),_=u.mappings.filter(b=>b.lineRangeMapping.innerChanges&&g.intersects(b.lineRangeMapping.modified)).map(b=>({mapping:b,rangeMappings:b.lineRangeMapping.innerChanges.filter(C=>f.some(w=>I.areIntersecting(C.modifiedRange,w)))}));return _.length===0||_.every(b=>b.rangeMappings.length===0)?dL:_}),this._register(Zoe(e,this.elements.root)),this._register(U(this.elements.root,"click",()=>{this._editors.modified.focus()})),this._register(Vc(this.elements.root,{display:this._hasActions.map(d=>d?"block":"none")})),tr(this,d=>this._showSash.read(d)?new H8(e,this._sashLayout.dimensions,this._options.enableSplitViewResizing,this._boundarySashes,ZT(this,u=>this._sashLayout.sashLeft.read(u)-a1,(u,f)=>this._sashLayout.sashLeft.set(u+a1,f)),()=>this._sashLayout.resetSash()):void 0).recomputeInitiallyAndOnChange(this._store),this._register(new Dre(this._editors.modified,this.elements.root,{getIntersectingGutterItems:(d,h)=>{const u=this._diffModel.read(h);if(!u)return[];const f=u.diff.read(h);if(!f)return[];const g=this._selectedDiffs.read(h);if(g.length>0){const _=Ws.fromRangeMappings(g.flatMap(b=>b.rangeMappings));return[new b4(_,!0,$e.DiffEditorSelectionToolbar,void 0,u.model.original.uri,u.model.modified.uri)]}const p=this._currentDiff.read(h);return f.mappings.map(_=>new b4(_.lineRangeMapping.withInnerChangesFromLineRanges(),_.lineRangeMapping===p?.lineRangeMapping,$e.DiffEditorHunkToolbar,void 0,u.model.original.uri,u.model.modified.uri))},createView:(d,h)=>this._instantiationService.createInstance(QI,d,h,this)})),this._register(U(this.elements.gutter,ee.MOUSE_WHEEL,d=>{this._editors.modified.getOption(104).handleMouseWheel&&this._editors.modified.delegateScrollFromMouseWheelEvent(d)},{passive:!1}))}computeStagedValue(e){const t=e.innerChanges??[],i=new _4(this._editors.modifiedModel.get()),n=new _4(this._editors.original.getModel());return new gT(t.map(a=>a.toTextEdit(i))).apply(n)}layout(e){this.elements.gutter.style.left=e+"px"}};YI=U8([j1(6,ke),j1(7,De),j1(8,yr)],YI);class b4{constructor(e,t,i,n,s,r){this.mapping=e,this.showAlways=t,this.menuId=i,this.rangeOverride=n,this.originalUri=s,this.modifiedUri=r}get id(){return this.mapping.modified.toString()}get range(){return this.rangeOverride??this.mapping.modified}}let QI=class extends z{constructor(e,t,i,n){super(),this._item=e,this._elements=tt("div.gutterItem",{style:{height:"20px",width:"34px"}},[tt("div.background@background",{},[]),tt("div.buttons@buttons",{},[])]),this._showAlways=this._item.map(this,r=>r.showAlways),this._menuId=this._item.map(this,r=>r.menuId),this._isSmall=Ge(this,!1),this._lastItemRange=void 0,this._lastViewRange=void 0;const s=this._register(n.createInstance(gg,"element",!0,{position:{hoverPosition:1}}));this._register(Bm(t,this._elements.root)),this._register(We(r=>{const a=this._showAlways.read(r);this._elements.root.classList.toggle("noTransition",!0),this._elements.root.classList.toggle("showAlways",a),setTimeout(()=>{this._elements.root.classList.toggle("noTransition",!1)},0)})),this._register(To((r,a)=>{this._elements.buttons.replaceChildren();const l=a.add(n.createInstance(Kv,this._elements.buttons,this._menuId.read(r),{orientation:1,hoverDelegate:s,toolbarOptions:{primaryGroup:c=>c.startsWith("primary")},overflowBehavior:{maxItems:this._isSmall.read(r)?1:3},hiddenItemStrategy:0,actionRunner:new V8(()=>{const c=this._item.get(),d=c.mapping;return{mapping:d,originalWithModifiedChanges:i.computeStagedValue(d),originalUri:c.originalUri,modifiedUri:c.modifiedUri}}),menuOptions:{shouldForwardArgs:!0}}));a.add(l.onDidChangeMenuItems(()=>{this._lastItemRange&&this.layout(this._lastItemRange,this._lastViewRange)}))}))}layout(e,t){this._lastItemRange=e,this._lastViewRange=t;let i=this._elements.buttons.clientHeight;this._isSmall.set(this._item.get().mapping.original.startLineNumber===1&&e.length<30,void 0),i=this._elements.buttons.clientHeight;const n=e.length/2-i/2,s=i;let r=e.start+n;const a=Re.tryCreate(s,t.endExclusive-s-i),l=Re.tryCreate(e.start+s,e.endExclusive-i-s);l&&a&&l.start{const n=Ql._map.get(e);n&&(Ql._map.delete(e),n.dispose(),i.dispose())})}return t}_beginUpdate(){this._updateCounter++,this._updateCounter===1&&(this._currentTransaction=new Ug(()=>{}))}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){const e=this._currentTransaction;this._currentTransaction=void 0,e.finish()}}constructor(e){super(),this.editor=e,this._updateCounter=0,this._currentTransaction=void 0,this._model=Ge(this,this.editor.getModel()),this.model=this._model,this.isReadonly=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(92)),this._versionId=iD({owner:this,lazy:!0},this.editor.getModel()?.getVersionId()??null),this.versionId=this._versionId,this._selections=iD({owner:this,equalsFn:Jk(Xk(Fe.selectionsEqual)),lazy:!0},this.editor.getSelections()??null),this.selections=this._selections,this.isFocused=gt(this,t=>{const i=this.editor.onDidFocusEditorWidget(t),n=this.editor.onDidBlurEditorWidget(t);return{dispose(){i.dispose(),n.dispose()}}},()=>this.editor.hasWidgetFocus()),this.value=ZT(this,t=>(this.versionId.read(t),this.model.read(t)?.getValue()??""),(t,i)=>{const n=this.model.get();n!==null&&t!==n.getValue()&&n.setValue(t)}),this.valueIsEmpty=Ce(this,t=>(this.versionId.read(t),this.editor.getModel()?.getValueLength()===0)),this.cursorSelection=dr({owner:this,equalsFn:Jk(Fe.selectionsEqual)},t=>this.selections.read(t)?.[0]??null),this.onDidType=Q_(this),this.scrollTop=gt(this.editor.onDidScrollChange,()=>this.editor.getScrollTop()),this.scrollLeft=gt(this.editor.onDidScrollChange,()=>this.editor.getScrollLeft()),this.layoutInfo=gt(this.editor.onDidLayoutChange,()=>this.editor.getLayoutInfo()),this.layoutInfoContentLeft=this.layoutInfo.map(t=>t.contentLeft),this.layoutInfoDecorationsLeft=this.layoutInfo.map(t=>t.decorationsLeft),this.contentWidth=gt(this.editor.onDidContentSizeChange,()=>this.editor.getContentWidth()),this._overlayWidgetCounter=0,this._register(this.editor.onBeginUpdate(()=>this._beginUpdate())),this._register(this.editor.onEndUpdate(()=>this._endUpdate())),this._register(this.editor.onDidChangeModel(()=>{this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidType(t=>{this._beginUpdate();try{this._forceUpdate(),this.onDidType.trigger(this._currentTransaction,t)}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeModelContent(t=>{this._beginUpdate();try{this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeCursorSelection(t=>{this._beginUpdate();try{this._selections.set(this.editor.getSelections(),this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}}))}forceUpdate(e){this._beginUpdate();try{return this._forceUpdate(),e?e(this._currentTransaction):void 0}finally{this._endUpdate()}}_forceUpdate(){this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,void 0),this._selections.set(this.editor.getSelections(),this._currentTransaction,void 0)}finally{this._endUpdate()}}getOption(e){return gt(this,t=>this.editor.onDidChangeConfiguration(i=>{i.hasChanged(e)&&t(void 0)}),()=>this.editor.getOption(e))}setDecorations(e){const t=new X,i=this.editor.createDecorationsCollection();return t.add(Z_({owner:this,debugName:()=>`Apply decorations from ${e.debugName}`},n=>{const s=e.read(n);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}createOverlayWidget(e){const t="observableOverlayWidget"+this._overlayWidgetCounter++,i={getDomNode:()=>e.domNode,getPosition:()=>e.position.get(),getId:()=>t,allowEditorOverflow:e.allowEditorOverflow,getMinContentWidthInPx:()=>e.minContentWidthInPx.get()};this.editor.addOverlayWidget(i);const n=We(s=>{e.position.read(s),e.minContentWidthInPx.read(s),this.editor.layoutOverlayWidget(i)});return _e(()=>{n.dispose(),this.editor.removeOverlayWidget(i)})}};Ql._map=new Map;let XI=Ql;function JI(o,e){return zZ({createEmptyChangeSummary:()=>({deltas:[],didChange:!1}),handleChange:(t,i)=>{if(t.didChange(o)){const n=t.change;n!==void 0&&i.deltas.push(n),i.didChange=!0}return!0}},(t,i)=>{const n=o.read(t);i.didChange&&e(n,i.deltas)})}function Nre(o,e){const t=new X,i=JI(o,(n,s)=>{t.clear(),e(n,s,t)});return{dispose(){i.dispose(),t.dispose()}}}var Tre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Mre=function(o,e){return function(t,i){e(t,i,o)}},q1,uh;let eE=(uh=class extends z{static setBreadcrumbsSourceFactory(e){this._breadcrumbsSourceFactory.set(e,void 0)}get isUpdatingHiddenAreas(){return this._isUpdatingHiddenAreas}constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._instantiationService=n,this._modifiedOutlineSource=tr(this,l=>{const c=this._editors.modifiedModel.read(l),d=q1._breadcrumbsSourceFactory.read(l);return!c||!d?void 0:d(c,this._instantiationService)}),this._isUpdatingHiddenAreas=!1,this._register(this._editors.original.onDidChangeCursorPosition(l=>{if(l.reason===1)return;const c=this._diffModel.get();Xt(d=>{for(const h of this._editors.original.getSelections()||[])c?.ensureOriginalLineIsVisible(h.getStartPosition().lineNumber,0,d),c?.ensureOriginalLineIsVisible(h.getEndPosition().lineNumber,0,d)})})),this._register(this._editors.modified.onDidChangeCursorPosition(l=>{if(l.reason===1)return;const c=this._diffModel.get();Xt(d=>{for(const h of this._editors.modified.getSelections()||[])c?.ensureModifiedLineIsVisible(h.getStartPosition().lineNumber,0,d),c?.ensureModifiedLineIsVisible(h.getEndPosition().lineNumber,0,d)})}));const s=this._diffModel.map((l,c)=>{const d=l?.unchangedRegions.read(c)??[];return d.length===1&&d[0].modifiedLineNumber===1&&d[0].lineCount===this._editors.modifiedModel.read(c)?.getLineCount()?[]:d});this.viewZones=cu(this,(l,c)=>{const d=this._modifiedOutlineSource.read(l);if(!d)return{origViewZones:[],modViewZones:[]};const h=[],u=[],f=this._options.renderSideBySide.read(l),g=this._options.compactMode.read(l),p=s.read(l);for(let _=0;_b.getHiddenOriginalRange(v).startLineNumber-1),w=new ff(C,12);h.push(w),c.add(new C4(this._editors.original,w,b,!f))}{const C=Ce(this,v=>b.getHiddenModifiedRange(v).startLineNumber-1),w=new ff(C,12);u.push(w),c.add(new C4(this._editors.modified,w,b))}}else{{const C=Ce(this,v=>b.getHiddenOriginalRange(v).startLineNumber-1),w=new ff(C,24);h.push(w),c.add(new v4(this._editors.original,w,b,b.originalUnchangedRange,!f,d,v=>this._diffModel.get().ensureModifiedLineIsVisible(v,2,void 0),this._options))}{const C=Ce(this,v=>b.getHiddenModifiedRange(v).startLineNumber-1),w=new ff(C,24);u.push(w),c.add(new v4(this._editors.modified,w,b,b.modifiedUnchangedRange,!1,d,v=>this._diffModel.get().ensureModifiedLineIsVisible(v,2,void 0),this._options))}}}return{origViewZones:h,modViewZones:u}});const r={description:"unchanged lines",className:"diff-unchanged-lines",isWholeLine:!0},a={description:"Fold Unchanged",glyphMarginHoverMessage:new Js(void 0,{isTrusted:!0,supportThemeIcons:!0}).appendMarkdown(m("foldUnchanged","Fold Unchanged Region")),glyphMarginClassName:"fold-unchanged "+Ee.asClassName(ie.fold),zIndex:10001};this._register(Vv(this._editors.original,Ce(this,l=>{const c=s.read(l),d=c.map(h=>({range:h.originalUnchangedRange.toInclusiveRange(),options:r}));for(const h of c)h.shouldHideControls(l)&&d.push({range:I.fromPositions(new P(h.originalLineNumber,1)),options:a});return d}))),this._register(Vv(this._editors.modified,Ce(this,l=>{const c=s.read(l),d=c.map(h=>({range:h.modifiedUnchangedRange.toInclusiveRange(),options:r}));for(const h of c)h.shouldHideControls(l)&&d.push({range:xe.ofLength(h.modifiedLineNumber,1).toInclusiveRange(),options:a});return d}))),this._register(We(l=>{const c=s.read(l);this._isUpdatingHiddenAreas=!0;try{this._editors.original.setHiddenAreas(c.map(d=>d.getHiddenOriginalRange(l).toInclusiveRange()).filter(_l)),this._editors.modified.setHiddenAreas(c.map(d=>d.getHiddenModifiedRange(l).toInclusiveRange()).filter(_l))}finally{this._isUpdatingHiddenAreas=!1}})),this._register(this._editors.modified.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){const c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;const h=d.unchangedRegions.get().find(u=>u.modifiedUnchangedRange.includes(c));if(!h)return;h.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}})),this._register(this._editors.original.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){const c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;const h=d.unchangedRegions.get().find(u=>u.originalUnchangedRange.includes(c));if(!h)return;h.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}}))}},q1=uh,uh._breadcrumbsSourceFactory=Ge(q1,()=>({dispose(){},getBreadcrumbItems(e,t){return[]}})),uh);eE=q1=Tre([Mre(3,ke)],eE);class C4 extends J2{constructor(e,t,i,n=!1){const s=tt("div.diff-hidden-lines-widget");super(e,t,s.root),this._unchangedRegion=i,this._hide=n,this._nodes=tt("div.diff-hidden-lines-compact",[tt("div.line-left",[]),tt("div.text@text",[]),tt("div.line-right",[])]),s.root.appendChild(this._nodes.root),this._hide&&this._nodes.root.replaceChildren(),this._register(We(r=>{if(!this._hide){const a=this._unchangedRegion.getHiddenModifiedRange(r).length,l=m("hiddenLines","{0} hidden lines",a);this._nodes.text.innerText=l}}))}}class v4 extends J2{constructor(e,t,i,n,s,r,a,l){const c=tt("div.diff-hidden-lines-widget");super(e,t,c.root),this._editor=e,this._unchangedRegion=i,this._unchangedRegionRange=n,this._hide=s,this._modifiedOutlineSource=r,this._revealModifiedHiddenLine=a,this._options=l,this._nodes=tt("div.diff-hidden-lines",[tt("div.top@top",{title:m("diff.hiddenLines.top","Click or drag to show more above")}),tt("div.center@content",{style:{display:"flex"}},[tt("div@first",{style:{display:"flex",justifyContent:"center",alignItems:"center",flexShrink:"0"}},[ce("a",{title:m("showUnchangedRegion","Show Unchanged Region"),role:"button",onclick:()=>{this._unchangedRegion.showAll(void 0)}},...Qd("$(unfold)"))]),tt("div@others",{style:{display:"flex",justifyContent:"center",alignItems:"center"}})]),tt("div.bottom@bottom",{title:m("diff.bottom","Click or drag to show more below"),role:"button"})]),c.root.appendChild(this._nodes.root),this._hide?un(this._nodes.first):this._register(Vc(this._nodes.first,{width:Dg(this._editor).layoutInfoContentLeft})),this._register(We(h=>{const u=this._unchangedRegion.visibleLineCountTop.read(h)+this._unchangedRegion.visibleLineCountBottom.read(h)===this._unchangedRegion.lineCount;this._nodes.bottom.classList.toggle("canMoveTop",!u),this._nodes.bottom.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(h)>0),this._nodes.top.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(h)>0),this._nodes.top.classList.toggle("canMoveBottom",!u);const f=this._unchangedRegion.isDragged.read(h),g=this._editor.getDomNode();g&&(g.classList.toggle("draggingUnchangedRegion",!!f),f==="top"?(g.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(h)>0),g.classList.toggle("canMoveBottom",!u)):f==="bottom"?(g.classList.toggle("canMoveTop",!u),g.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(h)>0)):(g.classList.toggle("canMoveTop",!1),g.classList.toggle("canMoveBottom",!1)))}));const d=this._editor;this._register(U(this._nodes.top,"mousedown",h=>{if(h.button!==0)return;this._nodes.top.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),h.preventDefault();const u=h.clientY;let f=!1;const g=this._unchangedRegion.visibleLineCountTop.get();this._unchangedRegion.isDragged.set("top",void 0);const p=fe(this._nodes.top),_=U(p,"mousemove",C=>{const v=C.clientY-u;f=f||Math.abs(v)>2;const y=Math.round(v/d.getOption(67)),x=Math.max(0,Math.min(g+y,this._unchangedRegion.getMaxVisibleLineCountTop()));this._unchangedRegion.visibleLineCountTop.set(x,void 0)}),b=U(p,"mouseup",C=>{f||this._unchangedRegion.showMoreAbove(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0),this._nodes.top.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),this._unchangedRegion.isDragged.set(void 0,void 0),_.dispose(),b.dispose()})})),this._register(U(this._nodes.bottom,"mousedown",h=>{if(h.button!==0)return;this._nodes.bottom.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),h.preventDefault();const u=h.clientY;let f=!1;const g=this._unchangedRegion.visibleLineCountBottom.get();this._unchangedRegion.isDragged.set("bottom",void 0);const p=fe(this._nodes.bottom),_=U(p,"mousemove",C=>{const v=C.clientY-u;f=f||Math.abs(v)>2;const y=Math.round(v/d.getOption(67)),x=Math.max(0,Math.min(g-y,this._unchangedRegion.getMaxVisibleLineCountBottom())),L=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.visibleLineCountBottom.set(x,void 0);const E=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(E-L))}),b=U(p,"mouseup",C=>{if(this._unchangedRegion.isDragged.set(void 0,void 0),!f){const w=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.showMoreBelow(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0);const v=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(v-w))}this._nodes.bottom.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),_.dispose(),b.dispose()})})),this._register(We(h=>{const u=[];if(!this._hide){const f=i.getHiddenModifiedRange(h).length,g=m("hiddenLines","{0} hidden lines",f),p=ce("span",{title:m("diff.hiddenLines.expandAll","Double click to unfold")},g);p.addEventListener("dblclick",C=>{C.button===0&&(C.preventDefault(),this._unchangedRegion.showAll(void 0))}),u.push(p);const _=this._unchangedRegion.getHiddenModifiedRange(h),b=this._modifiedOutlineSource.getBreadcrumbItems(_,h);if(b.length>0){u.push(ce("span",void 0,"  |  "));for(let C=0;C{this._revealModifiedHiddenLine(w.startLineNumber)}}}}un(this._nodes.others,...u)}))}}var Rre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Are=function(o,e){return function(t,i){e(t,i,o)}},Go,gl;let N_=(gl=class extends z{constructor(e,t,i,n,s,r,a){super(),this._editors=e,this._rootElement=t,this._diffModel=i,this._rootWidth=n,this._rootHeight=s,this._modifiedEditorLayoutInfo=r,this._themeService=a,this.width=Go.ENTIRE_DIFF_OVERVIEW_WIDTH;const l=gt(this._themeService.onDidColorThemeChange,()=>this._themeService.getColorTheme()),c=Ce(u=>{const f=l.read(u),g=f.getColor(PK)||(f.getColor(RK)||xk).transparent(2),p=f.getColor(OK)||(f.getColor(AK)||kk).transparent(2);return{insertColor:g,removeColor:p}}),d=ot(document.createElement("div"));d.setClassName("diffViewport"),d.setPosition("absolute");const h=tt("div.diffOverview",{style:{position:"absolute",top:"0px",width:Go.ENTIRE_DIFF_OVERVIEW_WIDTH+"px"}}).root;this._register(Bm(h,d.domNode)),this._register(jt(h,ee.POINTER_DOWN,u=>{this._editors.modified.delegateVerticalScrollbarPointerDown(u)})),this._register(U(h,ee.MOUSE_WHEEL,u=>{this._editors.modified.delegateScrollFromMouseWheelEvent(u)},{passive:!1})),this._register(Bm(this._rootElement,h)),this._register(To((u,f)=>{const g=this._diffModel.read(u),p=this._editors.original.createOverviewRuler("original diffOverviewRuler");p&&(f.add(p),f.add(Bm(h,p.getDomNode())));const _=this._editors.modified.createOverviewRuler("modified diffOverviewRuler");if(_&&(f.add(_),f.add(Bm(h,_.getDomNode()))),!p||!_)return;const b=ks("viewZoneChanged",this._editors.original.onDidChangeViewZones),C=ks("viewZoneChanged",this._editors.modified.onDidChangeViewZones),w=ks("hiddenRangesChanged",this._editors.original.onDidChangeHiddenAreas),v=ks("hiddenRangesChanged",this._editors.modified.onDidChangeHiddenAreas);f.add(We(y=>{b.read(y),C.read(y),w.read(y),v.read(y);const x=c.read(y),L=g?.diff.read(y)?.mappings;function E(F,W,j){const B=j._getViewModel();return B?F.filter(G=>G.length>0).map(G=>{const ne=B.coordinatesConverter.convertModelPositionToViewPosition(new P(G.startLineNumber,1)),ae=B.coordinatesConverter.convertModelPositionToViewPosition(new P(G.endLineNumberExclusive,1)),de=ae.lineNumber-ne.lineNumber;return new E8(ne.lineNumber,ae.lineNumber,de,W.toString())}):[]}const N=E((L||[]).map(F=>F.lineRangeMapping.original),x.removeColor,this._editors.original),H=E((L||[]).map(F=>F.lineRangeMapping.modified),x.insertColor,this._editors.modified);p?.setZones(N),_?.setZones(H)})),f.add(We(y=>{const x=this._rootHeight.read(y),L=this._rootWidth.read(y),E=this._modifiedEditorLayoutInfo.read(y);if(E){const N=Go.ENTIRE_DIFF_OVERVIEW_WIDTH-2*Go.ONE_OVERVIEW_WIDTH;p.setLayout({top:0,height:x,right:N+Go.ONE_OVERVIEW_WIDTH,width:Go.ONE_OVERVIEW_WIDTH}),_.setLayout({top:0,height:x,right:0,width:Go.ONE_OVERVIEW_WIDTH});const H=this._editors.modifiedScrollTop.read(y),F=this._editors.modifiedScrollHeight.read(y),W=this._editors.modified.getOption(104),j=new pg(W.verticalHasArrows?W.arrowSize:0,W.verticalScrollbarSize,0,E.height,F,H);d.setTop(j.getSliderPosition()),d.setHeight(j.getSliderSize())}else d.setTop(0),d.setHeight(0);h.style.height=x+"px",h.style.left=L-Go.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",d.setWidth(Go.ENTIRE_DIFF_OVERVIEW_WIDTH)}))}))}},Go=gl,gl.ONE_OVERVIEW_WIDTH=15,gl.ENTIRE_DIFF_OVERVIEW_WIDTH=gl.ONE_OVERVIEW_WIDTH*2,gl);N_=Go=Rre([Are(6,en)],N_);const hL=[];class Pre extends z{constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._widget=n,this._selectedDiffs=Ce(this,s=>{const a=this._diffModel.read(s)?.diff.read(s);if(!a)return hL;const l=this._editors.modifiedSelections.read(s);if(l.every(u=>u.isEmpty()))return hL;const c=new to(l.map(u=>xe.fromRangeInclusive(u))),h=a.mappings.filter(u=>u.lineRangeMapping.innerChanges&&c.intersects(u.lineRangeMapping.modified)).map(u=>({mapping:u,rangeMappings:u.lineRangeMapping.innerChanges.filter(f=>l.some(g=>I.areIntersecting(f.modifiedRange,g)))}));return h.length===0||h.every(u=>u.rangeMappings.length===0)?hL:h}),this._register(To((s,r)=>{if(!this._options.shouldRenderOldRevertArrows.read(s))return;const a=this._diffModel.read(s),l=a?.diff.read(s);if(!a||!l||a.movedTextToCompare.read(s))return;const c=[],d=this._selectedDiffs.read(s),h=new Set(d.map(u=>u.mapping));if(d.length>0){const u=this._editors.modifiedSelections.read(s),f=r.add(new jv(u[u.length-1].positionLineNumber,this._widget,d.flatMap(g=>g.rangeMappings),!0));this._editors.modified.addGlyphMarginWidget(f),c.push(f)}for(const u of l.mappings)if(!h.has(u)&&!u.lineRangeMapping.modified.isEmpty&&u.lineRangeMapping.innerChanges){const f=r.add(new jv(u.lineRangeMapping.modified.startLineNumber,this._widget,u.lineRangeMapping,!1));this._editors.modified.addGlyphMarginWidget(f),c.push(f)}r.add(_e(()=>{for(const u of c)this._editors.modified.removeGlyphMarginWidget(u)}))}))}}const c0=class c0 extends z{getId(){return this._id}constructor(e,t,i,n){super(),this._lineNumber=e,this._widget=t,this._diffs=i,this._revertSelection=n,this._id=`revertButton${c0.counter++}`,this._domNode=tt("div.revertButton",{title:this._revertSelection?m("revertSelectedChanges","Revert Selected Changes"):m("revertChange","Revert Change")},[BC(ie.arrowRight)]).root,this._register(U(this._domNode,ee.MOUSE_DOWN,s=>{s.button!==2&&(s.stopPropagation(),s.preventDefault())})),this._register(U(this._domNode,ee.MOUSE_UP,s=>{s.stopPropagation(),s.preventDefault()})),this._register(U(this._domNode,ee.CLICK,s=>{this._diffs instanceof hn?this._widget.revert(this._diffs):this._widget.revertRangeMappings(this._diffs),s.stopPropagation(),s.preventDefault()}))}getDomNode(){return this._domNode}getPosition(){return{lane:Ao.Right,range:{startColumn:1,startLineNumber:this._lineNumber,endColumn:1,endLineNumber:this._lineNumber},zIndex:10001}}};c0.counter=0;let jv=c0;function Pa(o,e,t){const i=o.bindTo(e);return Z_({debugName:()=>`Set Context Key "${o.key}"`},n=>{i.set(t(n))})}var Ore=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},w4=function(o,e){return function(t,i){e(t,i,o)}};let tE=class extends z{get onDidContentSizeChange(){return this._onDidContentSizeChange.event}constructor(e,t,i,n,s,r,a){super(),this.originalEditorElement=e,this.modifiedEditorElement=t,this._options=i,this._argCodeEditorWidgetOptions=n,this._createInnerEditor=s,this._instantiationService=r,this._keybindingService=a,this.original=this._register(this._createLeftHandSideEditor(this._options.editorOptions.get(),this._argCodeEditorWidgetOptions.originalEditor||{})),this.modified=this._register(this._createRightHandSideEditor(this._options.editorOptions.get(),this._argCodeEditorWidgetOptions.modifiedEditor||{})),this._onDidContentSizeChange=this._register(new A),this.modifiedScrollTop=gt(this,this.modified.onDidScrollChange,()=>this.modified.getScrollTop()),this.modifiedScrollHeight=gt(this,this.modified.onDidScrollChange,()=>this.modified.getScrollHeight()),this.modifiedObs=Dg(this.modified),this.originalObs=Dg(this.original),this.modifiedModel=this.modifiedObs.model,this.modifiedSelections=gt(this,this.modified.onDidChangeCursorSelection,()=>this.modified.getSelections()??[]),this.modifiedCursor=dr({owner:this,equalsFn:P.equals},l=>this.modifiedSelections.read(l)[0]?.getPosition()??new P(1,1)),this.originalCursor=gt(this,this.original.onDidChangeCursorPosition,()=>this.original.getPosition()??new P(1,1)),this._argCodeEditorWidgetOptions=null,this._register(Y_({createEmptyChangeSummary:()=>({}),handleChange:(l,c)=>(l.didChange(i.editorOptions)&&Object.assign(c,l.change.changedOptions),!0)},(l,c)=>{i.editorOptions.read(l),this._options.renderSideBySide.read(l),this.modified.updateOptions(this._adjustOptionsForRightHandSide(l,c)),this.original.updateOptions(this._adjustOptionsForLeftHandSide(l,c))}))}_createLeftHandSideEditor(e,t){const i=this._adjustOptionsForLeftHandSide(void 0,e),n=this._constructInnerEditor(this._instantiationService,this.originalEditorElement,i,t);return n.setContextValue("isInDiffLeftEditor",!0),n}_createRightHandSideEditor(e,t){const i=this._adjustOptionsForRightHandSide(void 0,e),n=this._constructInnerEditor(this._instantiationService,this.modifiedEditorElement,i,t);return n.setContextValue("isInDiffRightEditor",!0),n}_constructInnerEditor(e,t,i,n){const s=this._createInnerEditor(e,t,i,n);return this._register(s.onDidContentSizeChange(r=>{const a=this.original.getContentWidth()+this.modified.getContentWidth()+N_.ENTIRE_DIFF_OVERVIEW_WIDTH,l=Math.max(this.modified.getContentHeight(),this.original.getContentHeight());this._onDidContentSizeChange.fire({contentHeight:l,contentWidth:a,contentHeightChanged:r.contentHeightChanged,contentWidthChanged:r.contentWidthChanged})})),s}_adjustOptionsForLeftHandSide(e,t){const i=this._adjustOptionsForSubEditor(t);return this._options.renderSideBySide.get()?(i.unicodeHighlight=this._options.editorOptions.get().unicodeHighlight||{},i.wordWrapOverride1=this._options.diffWordWrap.get()):(i.wordWrapOverride1="off",i.wordWrapOverride2="off",i.stickyScroll={enabled:!1},i.unicodeHighlight={nonBasicASCII:!1,ambiguousCharacters:!1,invisibleCharacters:!1}),i.glyphMargin=this._options.renderSideBySide.get(),t.originalAriaLabel&&(i.ariaLabel=t.originalAriaLabel),i.ariaLabel=this._updateAriaLabel(i.ariaLabel),i.readOnly=!this._options.originalEditable.get(),i.dropIntoEditor={enabled:!i.readOnly},i.extraEditorClassName="original-in-monaco-diff-editor",i}_adjustOptionsForRightHandSide(e,t){const i=this._adjustOptionsForSubEditor(t);return t.modifiedAriaLabel&&(i.ariaLabel=t.modifiedAriaLabel),i.ariaLabel=this._updateAriaLabel(i.ariaLabel),i.wordWrapOverride1=this._options.diffWordWrap.get(),i.revealHorizontalRightPadding=Xh.revealHorizontalRightPadding.defaultValue+N_.ENTIRE_DIFF_OVERVIEW_WIDTH,i.scrollbar.verticalHasArrows=!1,i.extraEditorClassName="modified-in-monaco-diff-editor",i}_adjustOptionsForSubEditor(e){const t={...e,dimension:{height:0,width:0}};return t.inDiffEditor=!0,t.automaticLayout=!1,t.scrollbar={...t.scrollbar||{}},t.folding=!1,t.codeLens=this._options.diffCodeLens.get(),t.fixedOverflowWidgets=!0,t.minimap={...t.minimap||{}},t.minimap.enabled=!1,this._options.hideUnchangedRegions.get()?t.stickyScroll={enabled:!1}:t.stickyScroll=this._options.editorOptions.get().stickyScroll,t}_updateAriaLabel(e){e||(e="");const t=m("diff-aria-navigation-tip"," use {0} to open the accessibility help.",this._keybindingService.lookupKeybinding("editor.action.accessibilityHelp")?.getAriaLabel());return this._options.accessibilityVerbose.get()?e+t:e?e.replaceAll(t,""):""}};tE=Ore([w4(5,ke),w4(6,vt)],tE);const d0=class d0 extends z{constructor(){super(...arguments),this._id=++d0.idCounter,this._onDidDispose=this._register(new A),this.onDidDispose=this._onDidDispose.event}getId(){return this.getEditorType()+":v2:"+this._id}getVisibleColumnFromPosition(e){return this._targetEditor.getVisibleColumnFromPosition(e)}getPosition(){return this._targetEditor.getPosition()}setPosition(e,t="api"){this._targetEditor.setPosition(e,t)}revealLine(e,t=0){this._targetEditor.revealLine(e,t)}revealLineInCenter(e,t=0){this._targetEditor.revealLineInCenter(e,t)}revealLineInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealLineInCenterIfOutsideViewport(e,t)}revealLineNearTop(e,t=0){this._targetEditor.revealLineNearTop(e,t)}revealPosition(e,t=0){this._targetEditor.revealPosition(e,t)}revealPositionInCenter(e,t=0){this._targetEditor.revealPositionInCenter(e,t)}revealPositionInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealPositionInCenterIfOutsideViewport(e,t)}revealPositionNearTop(e,t=0){this._targetEditor.revealPositionNearTop(e,t)}getSelection(){return this._targetEditor.getSelection()}getSelections(){return this._targetEditor.getSelections()}setSelection(e,t="api"){this._targetEditor.setSelection(e,t)}setSelections(e,t="api"){this._targetEditor.setSelections(e,t)}revealLines(e,t,i=0){this._targetEditor.revealLines(e,t,i)}revealLinesInCenter(e,t,i=0){this._targetEditor.revealLinesInCenter(e,t,i)}revealLinesInCenterIfOutsideViewport(e,t,i=0){this._targetEditor.revealLinesInCenterIfOutsideViewport(e,t,i)}revealLinesNearTop(e,t,i=0){this._targetEditor.revealLinesNearTop(e,t,i)}revealRange(e,t=0,i=!1,n=!0){this._targetEditor.revealRange(e,t,i,n)}revealRangeInCenter(e,t=0){this._targetEditor.revealRangeInCenter(e,t)}revealRangeInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealRangeInCenterIfOutsideViewport(e,t)}revealRangeNearTop(e,t=0){this._targetEditor.revealRangeNearTop(e,t)}revealRangeNearTopIfOutsideViewport(e,t=0){this._targetEditor.revealRangeNearTopIfOutsideViewport(e,t)}revealRangeAtTop(e,t=0){this._targetEditor.revealRangeAtTop(e,t)}getSupportedActions(){return this._targetEditor.getSupportedActions()}focus(){this._targetEditor.focus()}trigger(e,t,i){this._targetEditor.trigger(e,t,i)}createDecorationsCollection(e){return this._targetEditor.createDecorationsCollection(e)}changeDecorations(e){return this._targetEditor.changeDecorations(e)}};d0.idCounter=0;let iE=d0;var Fre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Bre=function(o,e){return function(t,i){e(t,i,o)}};let nE=class{get editorOptions(){return this._options}constructor(e,t){this._accessibilityService=t,this._diffEditorWidth=Ge(this,0),this._screenReaderMode=gt(this,this._accessibilityService.onDidChangeScreenReaderOptimized,()=>this._accessibilityService.isScreenReaderOptimized()),this.couldShowInlineViewBecauseOfSize=Ce(this,n=>this._options.read(n).renderSideBySide&&this._diffEditorWidth.read(n)<=this._options.read(n).renderSideBySideInlineBreakpoint),this.renderOverviewRuler=Ce(this,n=>this._options.read(n).renderOverviewRuler),this.renderSideBySide=Ce(this,n=>this.compactMode.read(n)&&this.shouldRenderInlineViewInSmartMode.read(n)?!1:this._options.read(n).renderSideBySide&&!(this._options.read(n).useInlineViewWhenSpaceIsLimited&&this.couldShowInlineViewBecauseOfSize.read(n)&&!this._screenReaderMode.read(n))),this.readOnly=Ce(this,n=>this._options.read(n).readOnly),this.shouldRenderOldRevertArrows=Ce(this,n=>!(!this._options.read(n).renderMarginRevertIcon||!this.renderSideBySide.read(n)||this.readOnly.read(n)||this.shouldRenderGutterMenu.read(n))),this.shouldRenderGutterMenu=Ce(this,n=>this._options.read(n).renderGutterMenu),this.renderIndicators=Ce(this,n=>this._options.read(n).renderIndicators),this.enableSplitViewResizing=Ce(this,n=>this._options.read(n).enableSplitViewResizing),this.splitViewDefaultRatio=Ce(this,n=>this._options.read(n).splitViewDefaultRatio),this.ignoreTrimWhitespace=Ce(this,n=>this._options.read(n).ignoreTrimWhitespace),this.maxComputationTimeMs=Ce(this,n=>this._options.read(n).maxComputationTime),this.showMoves=Ce(this,n=>this._options.read(n).experimental.showMoves&&this.renderSideBySide.read(n)),this.isInEmbeddedEditor=Ce(this,n=>this._options.read(n).isInEmbeddedEditor),this.diffWordWrap=Ce(this,n=>this._options.read(n).diffWordWrap),this.originalEditable=Ce(this,n=>this._options.read(n).originalEditable),this.diffCodeLens=Ce(this,n=>this._options.read(n).diffCodeLens),this.accessibilityVerbose=Ce(this,n=>this._options.read(n).accessibilityVerbose),this.diffAlgorithm=Ce(this,n=>this._options.read(n).diffAlgorithm),this.showEmptyDecorations=Ce(this,n=>this._options.read(n).experimental.showEmptyDecorations),this.onlyShowAccessibleDiffViewer=Ce(this,n=>this._options.read(n).onlyShowAccessibleDiffViewer),this.compactMode=Ce(this,n=>this._options.read(n).compactMode),this.trueInlineDiffRenderingEnabled=Ce(this,n=>this._options.read(n).experimental.useTrueInlineView),this.useTrueInlineDiffRendering=Ce(this,n=>!this.renderSideBySide.read(n)&&this.trueInlineDiffRenderingEnabled.read(n)),this.hideUnchangedRegions=Ce(this,n=>this._options.read(n).hideUnchangedRegions.enabled),this.hideUnchangedRegionsRevealLineCount=Ce(this,n=>this._options.read(n).hideUnchangedRegions.revealLineCount),this.hideUnchangedRegionsContextLineCount=Ce(this,n=>this._options.read(n).hideUnchangedRegions.contextLineCount),this.hideUnchangedRegionsMinimumLineCount=Ce(this,n=>this._options.read(n).hideUnchangedRegions.minimumLineCount),this._model=Ge(this,void 0),this.shouldRenderInlineViewInSmartMode=this._model.map(this,n=>qZ(this,s=>{const r=n?.diff.read(s);return r?Wre(r,this.trueInlineDiffRenderingEnabled.read(s)):void 0})).flatten().map(this,n=>!!n),this.inlineViewHideOriginalLineNumbers=this.compactMode;const i={...e,...y4(e,Vi)};this._options=Ge(this,i)}updateOptions(e){const t=y4(e,this._options.get()),i={...this._options.get(),...e,...t};this._options.set(i,void 0,{changedOptions:e})}setWidth(e){this._diffEditorWidth.set(e,void 0)}setModel(e){this._model.set(e,void 0)}};nE=Fre([Bre(1,ms)],nE);function Wre(o,e){return o.mappings.every(t=>Hre(t.lineRangeMapping)||Vre(t.lineRangeMapping)||e&&oM(t.lineRangeMapping))}function Hre(o){return o.original.length===0}function Vre(o){return o.modified.length===0}function y4(o,e){return{enableSplitViewResizing:he(o.enableSplitViewResizing,e.enableSplitViewResizing),splitViewDefaultRatio:k6(o.splitViewDefaultRatio,.5,.1,.9),renderSideBySide:he(o.renderSideBySide,e.renderSideBySide),renderMarginRevertIcon:he(o.renderMarginRevertIcon,e.renderMarginRevertIcon),maxComputationTime:dd(o.maxComputationTime,e.maxComputationTime,0,1073741824),maxFileSize:dd(o.maxFileSize,e.maxFileSize,0,1073741824),ignoreTrimWhitespace:he(o.ignoreTrimWhitespace,e.ignoreTrimWhitespace),renderIndicators:he(o.renderIndicators,e.renderIndicators),originalEditable:he(o.originalEditable,e.originalEditable),diffCodeLens:he(o.diffCodeLens,e.diffCodeLens),renderOverviewRuler:he(o.renderOverviewRuler,e.renderOverviewRuler),diffWordWrap:Ht(o.diffWordWrap,e.diffWordWrap,["off","on","inherit"]),diffAlgorithm:Ht(o.diffAlgorithm,e.diffAlgorithm,["legacy","advanced"],{smart:"legacy",experimental:"advanced"}),accessibilityVerbose:he(o.accessibilityVerbose,e.accessibilityVerbose),experimental:{showMoves:he(o.experimental?.showMoves,e.experimental.showMoves),showEmptyDecorations:he(o.experimental?.showEmptyDecorations,e.experimental.showEmptyDecorations),useTrueInlineView:he(o.experimental?.useTrueInlineView,e.experimental.useTrueInlineView)},hideUnchangedRegions:{enabled:he(o.hideUnchangedRegions?.enabled??o.experimental?.collapseUnchangedRegions,e.hideUnchangedRegions.enabled),contextLineCount:dd(o.hideUnchangedRegions?.contextLineCount,e.hideUnchangedRegions.contextLineCount,0,1073741824),minimumLineCount:dd(o.hideUnchangedRegions?.minimumLineCount,e.hideUnchangedRegions.minimumLineCount,0,1073741824),revealLineCount:dd(o.hideUnchangedRegions?.revealLineCount,e.hideUnchangedRegions.revealLineCount,0,1073741824)},isInEmbeddedEditor:he(o.isInEmbeddedEditor,e.isInEmbeddedEditor),onlyShowAccessibleDiffViewer:he(o.onlyShowAccessibleDiffViewer,e.onlyShowAccessibleDiffViewer),renderSideBySideInlineBreakpoint:dd(o.renderSideBySideInlineBreakpoint,e.renderSideBySideInlineBreakpoint,0,1073741824),useInlineViewWhenSpaceIsLimited:he(o.useInlineViewWhenSpaceIsLimited,e.useInlineViewWhenSpaceIsLimited),renderGutterMenu:he(o.renderGutterMenu,e.renderGutterMenu),compactMode:he(o.compactMode,e.compactMode)}}var zre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Lm=function(o,e){return function(t,i){e(t,i,o)}};let qv=class extends iE{get onDidContentSizeChange(){return this._editors.onDidContentSizeChange}constructor(e,t,i,n,s,r,a,l){super(),this._domElement=e,this._parentContextKeyService=n,this._parentInstantiationService=s,this._accessibilitySignalService=a,this._editorProgressService=l,this.elements=tt("div.monaco-diff-editor.side-by-side",{style:{position:"relative",height:"100%"}},[tt("div.editor.original@original",{style:{position:"absolute",height:"100%"}}),tt("div.editor.modified@modified",{style:{position:"absolute",height:"100%"}}),tt("div.accessibleDiffViewer@accessibleDiffViewer",{style:{position:"absolute",height:"100%"}})]),this._diffModelSrc=this._register(KC(this,void 0)),this._diffModel=Ce(this,v=>this._diffModelSrc.read(v)?.object),this.onDidChangeModel=J.fromObservableLight(this._diffModel),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._domElement)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new jg([De,this._contextKeyService]))),this._boundarySashes=Ge(this,void 0),this._accessibleDiffViewerShouldBeVisible=Ge(this,!1),this._accessibleDiffViewerVisible=Ce(this,v=>this._options.onlyShowAccessibleDiffViewer.read(v)?!0:this._accessibleDiffViewerShouldBeVisible.read(v)),this._movedBlocksLinesPart=Ge(this,void 0),this._layoutInfo=Ce(this,v=>{const y=this._rootSizeObserver.width.read(v),x=this._rootSizeObserver.height.read(v);this._rootSizeObserver.automaticLayout?this.elements.root.style.height="100%":this.elements.root.style.height=x+"px";const L=this._sash.read(v),E=this._gutter.read(v),N=E?.width.read(v)??0,H=this._overviewRulerPart.read(v)?.width??0;let F,W,j,B,G;if(!!L){const ae=L.sashLeft.read(v),de=this._movedBlocksLinesPart.read(v)?.width.read(v)??0;F=0,W=ae-N-de,G=ae-N,j=ae,B=y-j-H}else{G=0;const ae=this._options.inlineViewHideOriginalLineNumbers.read(v);F=N,ae?W=0:W=Math.max(5,this._editors.originalObs.layoutInfoDecorationsLeft.read(v)),j=N+W,B=y-j-H}return this.elements.original.style.left=F+"px",this.elements.original.style.width=W+"px",this._editors.original.layout({width:W,height:x},!0),E?.layout(G),this.elements.modified.style.left=j+"px",this.elements.modified.style.width=B+"px",this._editors.modified.layout({width:B,height:x},!0),{modifiedEditor:this._editors.modified.getLayoutInfo(),originalEditor:this._editors.original.getLayoutInfo()}}),this._diffValue=this._diffModel.map((v,y)=>v?.diff.read(y)),this.onDidUpdateDiff=J.fromObservableLight(this._diffValue),r.willCreateDiffEditor(),this._contextKeyService.createKey("isInDiffEditor",!0),this._domElement.appendChild(this.elements.root),this._register(_e(()=>this.elements.root.remove())),this._rootSizeObserver=this._register(new A8(this.elements.root,t.dimension)),this._rootSizeObserver.setAutomaticLayout(t.automaticLayout??!1),this._options=this._instantiationService.createInstance(nE,t),this._register(We(v=>{this._options.setWidth(this._rootSizeObserver.width.read(v))})),this._contextKeyService.createKey(K.isEmbeddedDiffEditor.key,!1),this._register(Pa(K.isEmbeddedDiffEditor,this._contextKeyService,v=>this._options.isInEmbeddedEditor.read(v))),this._register(Pa(K.comparingMovedCode,this._contextKeyService,v=>!!this._diffModel.read(v)?.movedTextToCompare.read(v))),this._register(Pa(K.diffEditorRenderSideBySideInlineBreakpointReached,this._contextKeyService,v=>this._options.couldShowInlineViewBecauseOfSize.read(v))),this._register(Pa(K.diffEditorInlineMode,this._contextKeyService,v=>!this._options.renderSideBySide.read(v))),this._register(Pa(K.hasChanges,this._contextKeyService,v=>(this._diffModel.read(v)?.diff.read(v)?.mappings.length??0)>0)),this._editors=this._register(this._instantiationService.createInstance(tE,this.elements.original,this.elements.modified,this._options,i,(v,y,x,L)=>this._createInnerEditor(v,y,x,L))),this._register(Pa(K.diffEditorOriginalWritable,this._contextKeyService,v=>this._options.originalEditable.read(v))),this._register(Pa(K.diffEditorModifiedWritable,this._contextKeyService,v=>!this._options.readOnly.read(v))),this._register(Pa(K.diffEditorOriginalUri,this._contextKeyService,v=>this._diffModel.read(v)?.model.original.uri.toString()??"")),this._register(Pa(K.diffEditorModifiedUri,this._contextKeyService,v=>this._diffModel.read(v)?.model.modified.uri.toString()??"")),this._overviewRulerPart=tr(this,v=>this._options.renderOverviewRuler.read(v)?this._instantiationService.createInstance(Lo(N_,v),this._editors,this.elements.root,this._diffModel,this._rootSizeObserver.width,this._rootSizeObserver.height,this._layoutInfo.map(y=>y.modifiedEditor)):void 0).recomputeInitiallyAndOnChange(this._store);const c={height:this._rootSizeObserver.height,width:this._rootSizeObserver.width.map((v,y)=>v-(this._overviewRulerPart.read(y)?.width??0))};this._sashLayout=new kre(this._options,c),this._sash=tr(this,v=>{const y=this._options.renderSideBySide.read(v);return this.elements.root.classList.toggle("side-by-side",y),y?new H8(this.elements.root,c,this._options.enableSplitViewResizing,this._boundarySashes,this._sashLayout.sashLeft,()=>this._sashLayout.resetSash()):void 0}).recomputeInitiallyAndOnChange(this._store);const d=tr(this,v=>this._instantiationService.createInstance(Lo(eE,v),this._editors,this._diffModel,this._options)).recomputeInitiallyAndOnChange(this._store);tr(this,v=>this._instantiationService.createInstance(Lo(xre,v),this._editors,this._diffModel,this._options,this)).recomputeInitiallyAndOnChange(this._store);const h=new Set,u=new Set;let f=!1;const g=tr(this,v=>this._instantiationService.createInstance(Lo(ZI,v),fe(this._domElement),this._editors,this._diffModel,this._options,this,()=>f||d.get().isUpdatingHiddenAreas,h,u)).recomputeInitiallyAndOnChange(this._store),p=Ce(this,v=>{const y=g.read(v).viewZones.read(v).orig,x=d.read(v).viewZones.read(v).origViewZones;return y.concat(x)}),_=Ce(this,v=>{const y=g.read(v).viewZones.read(v).mod,x=d.read(v).viewZones.read(v).modViewZones;return y.concat(x)});this._register(zv(this._editors.original,p,v=>{f=v},h));let b;this._register(zv(this._editors.modified,_,v=>{f=v,f?b=qh.capture(this._editors.modified):(b?.restore(this._editors.modified),b=void 0)},u)),this._accessibleDiffViewer=tr(this,v=>this._instantiationService.createInstance(Lo(qd,v),this.elements.accessibleDiffViewer,this._accessibleDiffViewerVisible,(y,x)=>this._accessibleDiffViewerShouldBeVisible.set(y,x),this._options.onlyShowAccessibleDiffViewer.map(y=>!y),this._rootSizeObserver.width,this._rootSizeObserver.height,this._diffModel.map((y,x)=>y?.diff.read(x)?.mappings.map(L=>L.lineRangeMapping)),new cre(this._editors))).recomputeInitiallyAndOnChange(this._store);const C=this._accessibleDiffViewerVisible.map(v=>v?"hidden":"visible");this._register(Vc(this.elements.modified,{visibility:C})),this._register(Vc(this.elements.original,{visibility:C})),this._createDiffEditorContributions(),r.addDiffEditor(this),this._gutter=tr(this,v=>this._options.shouldRenderGutterMenu.read(v)?this._instantiationService.createInstance(Lo(YI,v),this.elements.root,this._diffModel,this._editors,this._options,this._sashLayout,this._boundarySashes):void 0),this._register(X_(this._layoutInfo)),tr(this,v=>new(Lo(Qf,v))(this.elements.root,this._diffModel,this._layoutInfo.map(y=>y.originalEditor),this._layoutInfo.map(y=>y.modifiedEditor),this._editors)).recomputeInitiallyAndOnChange(this._store,v=>{this._movedBlocksLinesPart.set(v,void 0)}),this._register(J.runAndSubscribe(this._editors.modified.onDidChangeCursorPosition,v=>this._handleCursorPositionChange(v,!0))),this._register(J.runAndSubscribe(this._editors.original.onDidChangeCursorPosition,v=>this._handleCursorPositionChange(v,!1)));const w=this._diffModel.map(this,(v,y)=>{if(v)return v.diff.read(y)===void 0&&!v.isDiffUpToDate.read(y)});this._register(To((v,y)=>{if(w.read(v)===!0){const x=this._editorProgressService.show(!0,1e3);y.add(_e(()=>x.done()))}})),this._register(To((v,y)=>{y.add(new(Lo(Pre,v))(this._editors,this._diffModel,this._options,this))})),this._register(To((v,y)=>{const x=this._diffModel.read(v);if(x)for(const L of[x.model.original,x.model.modified])y.add(L.onWillDispose(E=>{Ze(new nt("TextModel got disposed before DiffEditorWidget model got reset")),this.setModel(null)}))})),this._register(We(v=>{this._options.setModel(this._diffModel.read(v))}))}_createInnerEditor(e,t,i,n){return e.createInstance(I_,t,i,n)}_createDiffEditorContributions(){const e=Af.getDiffEditorContributions();for(const t of e)try{this._register(this._instantiationService.createInstance(t.ctor,this))}catch(i){Ze(i)}}get _targetEditor(){return this._editors.modified}getEditorType(){return yy.IDiffEditor}layout(e){this._rootSizeObserver.observe(e)}hasTextFocus(){return this._editors.original.hasTextFocus()||this._editors.modified.hasTextFocus()}saveViewState(){const e=this._editors.original.saveViewState(),t=this._editors.modified.saveViewState();return{original:e,modified:t,modelState:this._diffModel.get()?.serializeState()}}restoreViewState(e){if(e&&e.original&&e.modified){const t=e;this._editors.original.restoreViewState(t.original),this._editors.modified.restoreViewState(t.modified),t.modelState&&this._diffModel.get()?.restoreSerializedState(t.modelState)}}handleInitialized(){this._editors.original.handleInitialized(),this._editors.modified.handleInitialized()}createViewModel(e){return this._instantiationService.createInstance(GI,e,this._options)}getModel(){return this._diffModel.get()?.model??null}setModel(e){const t=e?"model"in e?Uv.create(e).createNewRef(this):Uv.create(this.createViewModel(e),this):null;this.setDiffModel(t)}setDiffModel(e,t){const i=this._diffModel.get();!e&&i&&this._accessibleDiffViewer.get().close(),this._diffModel.get()!==e?.object&&c_(t,n=>{const s=e?.object;gt.batchEventsGlobally(n,()=>{this._editors.original.setModel(s?s.model.original:null),this._editors.modified.setModel(s?s.model.modified:null)});const r=this._diffModelSrc.get()?.createNewRef(this);this._diffModelSrc.set(e?.createNewRef(this),n),setTimeout(()=>{r?.dispose()},0)})}updateOptions(e){this._options.updateOptions(e)}getContainerDomNode(){return this._domElement}getOriginalEditor(){return this._editors.original}getModifiedEditor(){return this._editors.modified}getLineChanges(){const e=this._diffModel.get()?.diff.get();return e?Ure(e):null}revert(e){const t=this._diffModel.get();!t||!t.isDiffUpToDate.get()||this._editors.modified.executeEdits("diffEditor",[{range:e.modified.toExclusiveRange(),text:t.model.original.getValueInRange(e.original.toExclusiveRange())}])}revertRangeMappings(e){const t=this._diffModel.get();if(!t||!t.isDiffUpToDate.get())return;const i=e.map(n=>({range:n.modifiedRange,text:t.model.original.getValueInRange(n.originalRange)}));this._editors.modified.executeEdits("diffEditor",i)}_goTo(e){this._editors.modified.setPosition(new P(e.lineRangeMapping.modified.startLineNumber,1)),this._editors.modified.revealRangeInCenter(e.lineRangeMapping.modified.toExclusiveRange())}goToDiff(e){const t=this._diffModel.get()?.diff.get()?.mappings;if(!t||t.length===0)return;const i=this._editors.modified.getPosition().lineNumber;let n;e==="next"?n=t.find(s=>s.lineRangeMapping.modified.startLineNumber>i)??t[0]:n=xC(t,s=>s.lineRangeMapping.modified.startLineNumber{const t=e.diff.get()?.mappings;!t||t.length===0||this._goTo(t[0])})}accessibleDiffViewerNext(){this._accessibleDiffViewer.get().next()}accessibleDiffViewerPrev(){this._accessibleDiffViewer.get().prev()}async waitForDiff(){const e=this._diffModel.get();e&&await e.waitForDiff()}mapToOtherSide(){const e=this._editors.modified.hasWidgetFocus(),t=e?this._editors.modified:this._editors.original,i=e?this._editors.original:this._editors.modified;let n;const s=t.getSelection();if(s){const r=this._diffModel.get()?.diff.get()?.mappings.map(a=>e?a.lineRangeMapping.flip():a.lineRangeMapping);if(r){const a=n4(s.getStartPosition(),r),l=n4(s.getEndPosition(),r);n=I.plusRange(a,l)}}return{destination:i,destinationSelection:n}}switchSide(){const{destination:e,destinationSelection:t}=this.mapToOtherSide();e.focus(),t&&e.setSelection(t)}exitCompareMove(){const e=this._diffModel.get();e&&e.movedTextToCompare.set(void 0,void 0)}collapseAllUnchangedRegions(){const e=this._diffModel.get()?.unchangedRegions.get();e&&Xt(t=>{for(const i of e)i.collapseAll(t)})}showAllUnchangedRegions(){const e=this._diffModel.get()?.unchangedRegions.get();e&&Xt(t=>{for(const i of e)i.showAll(t)})}_handleCursorPositionChange(e,t){if(e?.reason===3){const i=this._diffModel.get()?.diff.get()?.mappings.find(n=>t?n.lineRangeMapping.modified.contains(e.position.lineNumber):n.lineRangeMapping.original.contains(e.position.lineNumber));i?.lineRangeMapping.modified.isEmpty?this._accessibilitySignalService.playSignal(rr.diffLineDeleted,{source:"diffEditor.cursorPositionChanged"}):i?.lineRangeMapping.original.isEmpty?this._accessibilitySignalService.playSignal(rr.diffLineInserted,{source:"diffEditor.cursorPositionChanged"}):i&&this._accessibilitySignalService.playSignal(rr.diffLineModified,{source:"diffEditor.cursorPositionChanged"})}}};qv=zre([Lm(3,De),Lm(4,ke),Lm(5,Pt),Lm(6,rb),Lm(7,G_)],qv);function Ure(o){return o.mappings.map(e=>{const t=e.lineRangeMapping;let i,n,s,r,a=t.innerChanges;return t.original.isEmpty?(i=t.original.startLineNumber-1,n=0,a=void 0):(i=t.original.startLineNumber,n=t.original.endLineNumberExclusive-1),t.modified.isEmpty?(s=t.modified.startLineNumber-1,r=0,a=void 0):(s=t.modified.startLineNumber,r=t.modified.endLineNumberExclusive-1),{originalStartLineNumber:i,originalEndLineNumber:n,modifiedStartLineNumber:s,modifiedEndLineNumber:r,charChanges:a?.map(l=>({originalStartLineNumber:l.originalRange.startLineNumber,originalStartColumn:l.originalRange.startColumn,originalEndLineNumber:l.originalRange.endLineNumber,originalEndColumn:l.originalRange.endColumn,modifiedStartLineNumber:l.modifiedRange.startLineNumber,modifiedStartColumn:l.modifiedRange.startColumn,modifiedEndLineNumber:l.modifiedRange.endLineNumber,modifiedEndColumn:l.modifiedRange.endColumn}))}})}var aM=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},wt=function(o,e){return function(t,i){e(t,i,o)}};let $re=0,S4=!1;function Kre(o){if(!o){if(S4)return;S4=!0}AG(o||_t.document.body)}let Gv=class extends I_{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f){const g={...t};g.ariaLabel=g.ariaLabel||Zk.editorViewAccessibleLabel,super(e,g,{},i,n,s,r,c,d,h,u,f),l instanceof xg?this._standaloneKeybindingService=l:this._standaloneKeybindingService=null,Kre(g.ariaContainerElement),XZ((p,_)=>i.createInstance(gg,p,_,{})),JZ(a)}addCommand(e,t,i){if(!this._standaloneKeybindingService)return console.warn("Cannot add command because the editor is configured with an unrecognized KeybindingService"),null;const n="DYNAMIC_"+ ++$re,s=re.deserialize(i);return this._standaloneKeybindingService.addDynamicKeybinding(n,e,t,s),n}createContextKey(e,t){return this._contextKeyService.createKey(e,t)}addAction(e){if(typeof e.id!="string"||typeof e.label!="string"||typeof e.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");if(!this._standaloneKeybindingService)return console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),z.None;const t=e.id,i=e.label,n=re.and(re.equals("editorId",this.getId()),re.deserialize(e.precondition)),s=e.keybindings,r=re.and(n,re.deserialize(e.keybindingContext)),a=e.contextMenuGroupId||null,l=e.contextMenuOrder||0,c=(f,...g)=>Promise.resolve(e.run(this,...g)),d=new X,h=this.getId()+":"+t;if(d.add(bt.registerCommand(h,c)),a){const f={command:{id:h,title:i},when:n,group:a,order:l};d.add(Eo.appendMenuItem($e.EditorContext,f))}if(Array.isArray(s))for(const f of s)d.add(this._standaloneKeybindingService.addDynamicKeybinding(h,f,c,r));const u=new N8(h,i,i,void 0,n,(...f)=>Promise.resolve(e.run(this,...f)),this._contextKeyService);return this._actions.set(t,u),d.add(_e(()=>{this._actions.delete(t)})),d}_triggerCommand(e,t){if(this._codeEditorService instanceof NC)try{this._codeEditorService.setActiveCodeEditor(this),super._triggerCommand(e,t)}finally{this._codeEditorService.setActiveCodeEditor(null)}else super._triggerCommand(e,t)}};Gv=aM([wt(2,ke),wt(3,Pt),wt(4,hi),wt(5,De),wt(6,au),wt(7,vt),wt(8,en),wt(9,mn),wt(10,ms),wt(11,Gn),wt(12,Se)],Gv);let sE=class extends Gv{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_){const b={...t};wv(h,b,!1);const C=c.registerEditorContainer(e);typeof b.theme=="string"&&c.setTheme(b.theme),typeof b.autoDetectHighContrast<"u"&&c.setAutoDetectHighContrast(!!b.autoDetectHighContrast);const w=b.model;delete b.model,super(e,b,i,n,s,r,a,l,c,d,u,p,_),this._configurationService=h,this._standaloneThemeService=c,this._register(C);let v;if(typeof w>"u"){const y=g.getLanguageIdByMimeType(b.language)||b.language||Bs;v=$8(f,g,b.value||"",y,void 0),this._ownsModel=!0}else v=w,this._ownsModel=!1;if(this._attachModel(v),v){const y={oldModelUrl:null,newModelUrl:v.uri};this._onDidChangeModel.fire(y)}}dispose(){super.dispose()}updateOptions(e){wv(this._configurationService,e,!1),typeof e.theme=="string"&&this._standaloneThemeService.setTheme(e.theme),typeof e.autoDetectHighContrast<"u"&&this._standaloneThemeService.setAutoDetectHighContrast(!!e.autoDetectHighContrast),super.updateOptions(e)}_postDetachModelCleanup(e){super._postDetachModelCleanup(e),e&&this._ownsModel&&(e.dispose(),this._ownsModel=!1)}};sE=aM([wt(2,ke),wt(3,Pt),wt(4,hi),wt(5,De),wt(6,au),wt(7,vt),wt(8,zo),wt(9,mn),wt(10,lt),wt(11,ms),wt(12,Fi),wt(13,qt),wt(14,Gn),wt(15,Se)],sE);let oE=class extends qv{constructor(e,t,i,n,s,r,a,l,c,d,h,u){const f={...t};wv(l,f,!0);const g=r.registerEditorContainer(e);typeof f.theme=="string"&&r.setTheme(f.theme),typeof f.autoDetectHighContrast<"u"&&r.setAutoDetectHighContrast(!!f.autoDetectHighContrast),super(e,f,{},n,i,s,u,d),this._configurationService=l,this._standaloneThemeService=r,this._register(g)}dispose(){super.dispose()}updateOptions(e){wv(this._configurationService,e,!0),typeof e.theme=="string"&&this._standaloneThemeService.setTheme(e.theme),typeof e.autoDetectHighContrast<"u"&&this._standaloneThemeService.setAutoDetectHighContrast(!!e.autoDetectHighContrast),super.updateOptions(e)}_createInnerEditor(e,t,i){return e.createInstance(Gv,t,i)}getOriginalEditor(){return super.getOriginalEditor()}getModifiedEditor(){return super.getModifiedEditor()}addCommand(e,t,i){return this.getModifiedEditor().addCommand(e,t,i)}createContextKey(e,t){return this.getModifiedEditor().createContextKey(e,t)}addAction(e){return this.getModifiedEditor().addAction(e)}};oE=aM([wt(2,ke),wt(3,De),wt(4,Pt),wt(5,zo),wt(6,mn),wt(7,lt),wt(8,Lr),wt(9,G_),wt(10,wy),wt(11,rb)],oE);function $8(o,e,t,i,n){if(t=t||"",!i){const s=t.indexOf(` +`);let r=t;return s!==-1&&(r=t.substring(0,s)),L4(o,t,e.createByFilepathOrFirstLine(n||null,r),n)}return L4(o,t,e.createById(i),n)}function L4(o,e,t,i){return o.createModel(e,t,i)}var jre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},x4=function(o,e){return function(t,i){e(t,i,o)}};class qre{constructor(e,t){this.viewModel=e,this.deltaScrollVertical=t}getId(){return this.viewModel}}let Zv=class extends z{constructor(e,t,i,n,s){super(),this._container=e,this._overflowWidgetsDomNode=t,this._workbenchUIElementFactory=i,this._instantiationService=n,this._viewModel=Ge(this,void 0),this._collapsed=Ce(this,l=>this._viewModel.read(l)?.collapsed.read(l)),this._editorContentHeight=Ge(this,500),this.contentHeight=Ce(this,l=>(this._collapsed.read(l)?0:this._editorContentHeight.read(l))+this._outerEditorHeight),this._modifiedContentWidth=Ge(this,0),this._modifiedWidth=Ge(this,0),this._originalContentWidth=Ge(this,0),this._originalWidth=Ge(this,0),this.maxScroll=Ce(this,l=>{const c=this._modifiedContentWidth.read(l)-this._modifiedWidth.read(l),d=this._originalContentWidth.read(l)-this._originalWidth.read(l);return c>d?{maxScroll:c,width:this._modifiedWidth.read(l)}:{maxScroll:d,width:this._originalWidth.read(l)}}),this._elements=tt("div.multiDiffEntry",[tt("div.header@header",[tt("div.header-content",[tt("div.collapse-button@collapseButton"),tt("div.file-path",[tt("div.title.modified.show-file-icons@primaryPath",[]),tt("div.status.deleted@status",["R"]),tt("div.title.original.show-file-icons@secondaryPath",[])]),tt("div.actions@actions")])]),tt("div.editorParent",[tt("div.editorContainer@editor")])]),this.editor=this._register(this._instantiationService.createInstance(qv,this._elements.editor,{overflowWidgetsDomNode:this._overflowWidgetsDomNode},{})),this.isModifedFocused=Dg(this.editor.getModifiedEditor()).isFocused,this.isOriginalFocused=Dg(this.editor.getOriginalEditor()).isFocused,this.isFocused=Ce(this,l=>this.isModifedFocused.read(l)||this.isOriginalFocused.read(l)),this._resourceLabel=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.primaryPath)):void 0,this._resourceLabel2=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.secondaryPath)):void 0,this._dataStore=this._register(new X),this._headerHeight=40,this._lastScrollTop=-1,this._isSettingScrollTop=!1;const r=new AD(this._elements.collapseButton,{});this._register(We(l=>{r.element.className="",r.icon=this._collapsed.read(l)?ie.chevronRight:ie.chevronDown})),this._register(r.onDidClick(()=>{this._viewModel.get()?.collapsed.set(!this._collapsed.get(),void 0)})),this._register(We(l=>{this._elements.editor.style.display=this._collapsed.read(l)?"none":"block"})),this._register(this.editor.getModifiedEditor().onDidLayoutChange(l=>{const c=this.editor.getModifiedEditor().getLayoutInfo().contentWidth;this._modifiedWidth.set(c,void 0)})),this._register(this.editor.getOriginalEditor().onDidLayoutChange(l=>{const c=this.editor.getOriginalEditor().getLayoutInfo().contentWidth;this._originalWidth.set(c,void 0)})),this._register(this.editor.onDidContentSizeChange(l=>{Mm(c=>{this._editorContentHeight.set(l.contentHeight,c),this._modifiedContentWidth.set(this.editor.getModifiedEditor().getContentWidth(),c),this._originalContentWidth.set(this.editor.getOriginalEditor().getContentWidth(),c)})})),this._register(this.editor.getOriginalEditor().onDidScrollChange(l=>{if(this._isSettingScrollTop||!l.scrollTopChanged||!this._data)return;const c=l.scrollTop-this._lastScrollTop;this._data.deltaScrollVertical(c)})),this._register(We(l=>{const c=this._viewModel.read(l)?.isActive.read(l);this._elements.root.classList.toggle("active",c)})),this._container.appendChild(this._elements.root),this._outerEditorHeight=this._headerHeight,this._contextKeyService=this._register(s.createScoped(this._elements.actions));const a=this._register(this._instantiationService.createChild(new jg([De,this._contextKeyService])));this._register(a.createInstance(Kv,this._elements.actions,$e.MultiDiffEditorFileToolbar,{actionRunner:this._register(new V8(()=>this._viewModel.get()?.modifiedUri)),menuOptions:{shouldForwardArgs:!0},toolbarOptions:{primaryGroup:l=>l.startsWith("navigation")},actionViewItemProvider:(l,c)=>H7(a,l,c)}))}setScrollLeft(e){this._modifiedContentWidth.get()-this._modifiedWidth.get()>this._originalContentWidth.get()-this._originalWidth.get()?this.editor.getModifiedEditor().setScrollLeft(e):this.editor.getOriginalEditor().setScrollLeft(e)}setData(e){this._data=e;function t(n){return{...n,scrollBeyondLastLine:!1,hideUnchangedRegions:{enabled:!0},scrollbar:{vertical:"hidden",horizontal:"hidden",handleMouseWheel:!1,useShadows:!1},renderOverviewRuler:!1,fixedOverflowWidgets:!0,overviewRulerBorder:!1}}if(!e){Mm(n=>{this._viewModel.set(void 0,n),this.editor.setDiffModel(null,n),this._dataStore.clear()});return}const i=e.viewModel.documentDiffItem;if(Mm(n=>{this._resourceLabel?.setUri(e.viewModel.modifiedUri??e.viewModel.originalUri,{strikethrough:e.viewModel.modifiedUri===void 0});let s=!1,r=!1,a=!1,l="";e.viewModel.modifiedUri&&e.viewModel.originalUri&&e.viewModel.modifiedUri.path!==e.viewModel.originalUri.path?(l="R",s=!0):e.viewModel.modifiedUri?e.viewModel.originalUri||(l="A",a=!0):(l="D",r=!0),this._elements.status.classList.toggle("renamed",s),this._elements.status.classList.toggle("deleted",r),this._elements.status.classList.toggle("added",a),this._elements.status.innerText=l,this._resourceLabel2?.setUri(s?e.viewModel.originalUri:void 0,{strikethrough:!0}),this._dataStore.clear(),this._viewModel.set(e.viewModel,n),this.editor.setDiffModel(e.viewModel.diffEditorViewModelRef,n),this.editor.updateOptions(t(i.options??{}))}),i.onOptionsDidChange&&this._dataStore.add(i.onOptionsDidChange(()=>{this.editor.updateOptions(t(i.options??{}))})),e.viewModel.isAlive.recomputeInitiallyAndOnChange(this._dataStore,n=>{n||this.setData(void 0)}),e.viewModel.documentDiffItem.contextKeys)for(const[n,s]of Object.entries(e.viewModel.documentDiffItem.contextKeys))this._contextKeyService.createKey(n,s)}render(e,t,i,n){this._elements.root.style.visibility="visible",this._elements.root.style.top=`${e.start}px`,this._elements.root.style.height=`${e.length}px`,this._elements.root.style.width=`${t}px`,this._elements.root.style.position="absolute";const s=e.length-this._headerHeight,r=Math.max(0,Math.min(n.start-e.start,s));this._elements.header.style.transform=`translateY(${r}px)`,Mm(a=>{this.editor.layout({width:t-16-2,height:e.length-this._outerEditorHeight})});try{this._isSettingScrollTop=!0,this._lastScrollTop=i,this.editor.getOriginalEditor().setScrollTop(i)}finally{this._isSettingScrollTop=!1}this._elements.header.classList.toggle("shadow",r>0||i>0),this._elements.header.classList.toggle("collapsed",r===s)}hide(){this._elements.root.style.top="-100000px",this._elements.root.style.visibility="hidden"}};Zv=jre([x4(3,ke),x4(4,De)],Zv);class Gre{constructor(e){this._create=e,this._unused=new Set,this._used=new Set,this._itemData=new Map}getUnusedObj(e){let t;if(this._unused.size===0)t=this._create(e),this._itemData.set(t,e);else{const i=[...this._unused.values()];t=i.find(n=>this._itemData.get(n).getId()===e.getId())??i[0],this._unused.delete(t),this._itemData.set(t,e),t.setData(e)}return this._used.add(t),{object:t,dispose:()=>{this._used.delete(t),this._unused.size>5?t.dispose():this._unused.add(t)}}}dispose(){for(const e of this._used)e.dispose();for(const e of this._unused)e.dispose();this._used.clear(),this._unused.clear()}}var Zre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},k4=function(o,e){return function(t,i){e(t,i,o)}};let rE=class extends z{constructor(e,t,i,n,s,r){super(),this._element=e,this._dimension=t,this._viewModel=i,this._workbenchUIElementFactory=n,this._parentContextKeyService=s,this._parentInstantiationService=r,this._scrollableElements=tt("div.scrollContent",[tt("div@content",{style:{overflow:"hidden"}}),tt("div.monaco-editor@overflowWidgetsDomNode",{})]),this._scrollable=this._register(new Vg({forceIntegerValues:!1,scheduleAtNextAnimationFrame:l=>fs(fe(this._element),l),smoothScrollDuration:100})),this._scrollableElement=this._register(new X0(this._scrollableElements.root,{vertical:1,horizontal:1,useShadows:!1},this._scrollable)),this._elements=tt("div.monaco-component.multiDiffEditor",{},[tt("div",{},[this._scrollableElement.getDomNode()]),tt("div.placeholder@placeholder",{},[tt("div",[m("noChangedFiles","No Changed Files")])])]),this._sizeObserver=this._register(new A8(this._element,void 0)),this._objectPool=this._register(new Gre(l=>{const c=this._instantiationService.createInstance(Zv,this._scrollableElements.content,this._scrollableElements.overflowWidgetsDomNode,this._workbenchUIElementFactory);return c.setData(l),c})),this.scrollTop=gt(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollTop),this.scrollLeft=gt(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollLeft),this._viewItemsInfo=cu(this,(l,c)=>{const d=this._viewModel.read(l);if(!d)return{items:[],getItem:g=>{throw new nt}};const h=d.items.read(l),u=new Map;return{items:h.map(g=>{const p=c.add(new Yre(g,this._objectPool,this.scrollLeft,b=>{this._scrollableElement.setScrollPosition({scrollTop:this._scrollableElement.getScrollPosition().scrollTop+b})})),_=this._lastDocStates?.[p.getKey()];return _&&Xt(b=>{p.setViewState(_,b)}),u.set(g,p),p}),getItem:g=>u.get(g)}}),this._viewItems=this._viewItemsInfo.map(this,l=>l.items),this._spaceBetweenPx=0,this._totalHeight=this._viewItems.map(this,(l,c)=>l.reduce((d,h)=>d+h.contentHeight.read(c)+this._spaceBetweenPx,0)),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._element)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new jg([De,this._contextKeyService]))),this._lastDocStates={},this._contextKeyService.createKey(K.inMultiDiffEditor.key,!0),this._register(To((l,c)=>{const d=this._viewModel.read(l);if(d&&d.contextKeys)for(const[h,u]of Object.entries(d.contextKeys)){const f=this._contextKeyService.createKey(h,void 0);f.set(u),c.add(_e(()=>f.reset()))}}));const a=this._parentContextKeyService.createKey(K.multiDiffEditorAllCollapsed.key,!1);this._register(We(l=>{const c=this._viewModel.read(l);if(c){const d=c.items.read(l).every(h=>h.collapsed.read(l));a.set(d)}})),this._register(We(l=>{const c=this._dimension.read(l);this._sizeObserver.observe(c)})),this._register(We(l=>{const c=this._viewItems.read(l);this._elements.placeholder.classList.toggle("visible",c.length===0)})),this._scrollableElements.content.style.position="relative",this._register(We(l=>{const c=this._sizeObserver.height.read(l);this._scrollableElements.root.style.height=`${c}px`;const d=this._totalHeight.read(l);this._scrollableElements.content.style.height=`${d}px`;const h=this._sizeObserver.width.read(l);let u=h;const f=this._viewItems.read(l),g=fT(f,rs(p=>p.maxScroll.read(l).maxScroll,ia));if(g){const p=g.maxScroll.read(l);u=h+p.maxScroll}this._scrollableElement.setScrollDimensions({width:h,height:c,scrollHeight:d,scrollWidth:u})})),e.replaceChildren(this._elements.root),this._register(_e(()=>{e.replaceChildren()})),this._register(this._register(We(l=>{Mm(c=>{this.render(l)})})))}render(e){const t=this.scrollTop.read(e);let i=0,n=0,s=0;const r=this._sizeObserver.height.read(e),a=Re.ofStartAndLength(t,r),l=this._sizeObserver.width.read(e);for(const c of this._viewItems.read(e)){const d=c.contentHeight.read(e),h=Math.min(d,r),u=Re.ofStartAndLength(n,h),f=Re.ofStartAndLength(s,d);if(f.isBefore(a))i-=d-h,c.hide();else if(f.isAfter(a))c.hide();else{const g=Math.max(0,Math.min(a.start-f.start,d-h));i-=g;const p=Re.ofStartAndLength(t+i,r);c.render(u,g,l,p)}n+=h+this._spaceBetweenPx,s+=d+this._spaceBetweenPx}this._scrollableElements.content.style.transform=`translateY(${-(t+i)}px)`}};rE=Zre([k4(4,De),k4(5,ke)],rE);class Yre extends z{constructor(e,t,i,n){super(),this.viewModel=e,this._objectPool=t,this._scrollLeft=i,this._deltaScrollVertical=n,this._templateRef=this._register(KC(this,void 0)),this.contentHeight=Ce(this,s=>this._templateRef.read(s)?.object.contentHeight?.read(s)??this.viewModel.lastTemplateData.read(s).contentHeight),this.maxScroll=Ce(this,s=>this._templateRef.read(s)?.object.maxScroll.read(s)??{maxScroll:0,scrollWidth:0}),this.template=Ce(this,s=>this._templateRef.read(s)?.object),this._isHidden=Ge(this,!1),this._isFocused=Ce(this,s=>this.template.read(s)?.isFocused.read(s)??!1),this.viewModel.setIsFocused(this._isFocused,void 0),this._register(We(s=>{const r=this._scrollLeft.read(s);this._templateRef.read(s)?.object.setScrollLeft(r)})),this._register(We(s=>{const r=this._templateRef.read(s);!r||!this._isHidden.read(s)||r.object.isFocused.read(s)||this._clear()}))}dispose(){this._clear(),super.dispose()}toString(){return`VirtualViewItem(${this.viewModel.documentDiffItem.modified?.uri.toString()})`}getKey(){return this.viewModel.getKey()}setViewState(e,t){this.viewModel.collapsed.set(e.collapsed,t),this._updateTemplateData(t);const i=this.viewModel.lastTemplateData.get(),n=e.selections?.map(Fe.liftSelection);this.viewModel.lastTemplateData.set({...i,selections:n},t);const s=this._templateRef.get();s&&n&&s.object.editor.setSelections(n)}_updateTemplateData(e){const t=this._templateRef.get();t&&this.viewModel.lastTemplateData.set({contentHeight:t.object.contentHeight.get(),selections:t.object.editor.getSelections()??void 0},e)}_clear(){const e=this._templateRef.get();e&&Xt(t=>{this._updateTemplateData(t),e.object.hide(),this._templateRef.set(void 0,t)})}hide(){this._isHidden.set(!0,void 0)}render(e,t,i,n){this._isHidden.set(!1,void 0);let s=this._templateRef.get();if(!s){s=this._objectPool.getUnusedObj(new qre(this.viewModel,this._deltaScrollVertical)),this._templateRef.set(s,void 0);const r=this.viewModel.lastTemplateData.get().selections;r&&s.object.editor.setSelections(r)}s.object.render(e,i,t,n)}}D("multiDiffEditor.headerBackground",{dark:"#262626",light:"tab.inactiveBackground",hcDark:"tab.inactiveBackground",hcLight:"tab.inactiveBackground"},m("multiDiffEditor.headerBackground","The background color of the diff editor's header"));D("multiDiffEditor.background",Oo,m("multiDiffEditor.background","The background color of the multi file diff editor"));D("multiDiffEditor.border",{dark:"sideBarSectionHeader.border",light:"#cccccc",hcDark:"sideBarSectionHeader.border",hcLight:"#cccccc"},m("multiDiffEditor.border","The border color of the multi file diff editor"));var Qre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Xre=function(o,e){return function(t,i){e(t,i,o)}};let aE=class extends z{constructor(e,t,i){super(),this._element=e,this._workbenchUIElementFactory=t,this._instantiationService=i,this._dimension=Ge(this,void 0),this._viewModel=Ge(this,void 0),this._widgetImpl=cu(this,(n,s)=>(Lo(Zv,n),s.add(this._instantiationService.createInstance(Lo(rE,n),this._element,this._dimension,this._viewModel,this._workbenchUIElementFactory)))),this._register(X_(this._widgetImpl))}};aE=Qre([Xre(2,ke)],aE);function Jre(o,e,t){return pe.initialize(t||{}).createInstance(sE,o,e)}function eae(o){return pe.get(Pt).onCodeEditorAdd(t=>{o(t)})}function tae(o){return pe.get(Pt).onDiffEditorAdd(t=>{o(t)})}function iae(){return pe.get(Pt).listCodeEditors()}function nae(){return pe.get(Pt).listDiffEditors()}function sae(o,e,t){return pe.initialize(t||{}).createInstance(oE,o,e)}function oae(o,e){const t=pe.initialize(e||{});return new aE(o,{},t)}function rae(o){if(typeof o.id!="string"||typeof o.run!="function")throw new Error("Invalid command descriptor, `id` and `run` are required properties!");return bt.registerCommand(o.id,o.run)}function aae(o){if(typeof o.id!="string"||typeof o.label!="string"||typeof o.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");const e=re.deserialize(o.precondition),t=(n,...s)=>co.runEditorCommand(n,s,e,(r,a,l)=>Promise.resolve(o.run(a,...l))),i=new X;if(i.add(bt.registerCommand(o.id,t)),o.contextMenuGroupId){const n={command:{id:o.id,title:o.label},when:e,group:o.contextMenuGroupId,order:o.contextMenuOrder||0};i.add(Eo.appendMenuItem($e.EditorContext,n))}if(Array.isArray(o.keybindings)){const n=pe.get(vt);if(!(n instanceof xg))console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService");else{const s=re.and(e,re.deserialize(o.keybindingContext));i.add(n.addDynamicKeybindings(o.keybindings.map(r=>({keybinding:r,command:o.id,when:s}))))}}return i}function lae(o){return K8([o])}function K8(o){const e=pe.get(vt);return e instanceof xg?e.addDynamicKeybindings(o.map(t=>({keybinding:t.keybinding,command:t.command,commandArgs:t.commandArgs,when:re.deserialize(t.when)}))):(console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),z.None)}function cae(o,e,t){const i=pe.get(qt),n=i.getLanguageIdByMimeType(e)||e;return $8(pe.get(Fi),i,o,n,t)}function dae(o,e){const t=pe.get(qt),i=t.getLanguageIdByMimeType(e)||e||Bs;o.setLanguage(t.createById(i))}function hae(o,e,t){o&&pe.get(xa).changeOne(e,o.uri,t)}function uae(o){pe.get(xa).changeAll(o,[])}function fae(o){return pe.get(xa).read(o)}function gae(o){return pe.get(xa).onMarkerChanged(o)}function mae(o){return pe.get(Fi).getModel(o)}function pae(){return pe.get(Fi).getModels()}function _ae(o){return pe.get(Fi).onModelAdded(o)}function bae(o){return pe.get(Fi).onModelRemoved(o)}function Cae(o){return pe.get(Fi).onModelLanguageChanged(t=>{o({model:t.model,oldLanguage:t.oldLanguageId})})}function vae(o){return Yte(pe.get(Fi),o)}function wae(o,e){const t=pe.get(qt),i=pe.get(zo);return O2.colorizeElement(i,t,o,e).then(()=>{i.registerEditorContainer(o)})}function yae(o,e,t){const i=pe.get(qt);return pe.get(zo).registerEditorContainer(_t.document.body),O2.colorize(i,o,e,t)}function Sae(o,e,t=4){return pe.get(zo).registerEditorContainer(_t.document.body),O2.colorizeModelLine(o,e,t)}function Lae(o){const e=si.get(o);return e||{getInitialState:()=>a_,tokenize:(t,i,n)=>_7(o,n)}}function xae(o,e){si.getOrCreate(e);const t=Lae(e),i=va(o),n=[];let s=t.getInitialState();for(let r=0,a=i.length;r{if(!i)return null;const s=t.options?.selection;let r;return s&&typeof s.endLineNumber=="number"&&typeof s.endColumn=="number"?r=s:s&&(r={lineNumber:s.startLineNumber,column:s.startColumn}),await o.openCodeEditor(i,t.resource,r)?i:null})}function Mae(){return{create:Jre,getEditors:iae,getDiffEditors:nae,onDidCreateEditor:eae,onDidCreateDiffEditor:tae,createDiffEditor:sae,addCommand:rae,addEditorAction:aae,addKeybindingRule:lae,addKeybindingRules:K8,createModel:cae,setModelLanguage:dae,setModelMarkers:hae,getModelMarkers:fae,removeAllMarkers:uae,onDidChangeMarkers:gae,getModels:pae,getModel:mae,onDidCreateModel:_ae,onWillDisposeModel:bae,onDidChangeModelLanguage:Cae,createWebWorker:vae,colorizeElement:wae,colorize:yae,colorizeModelLine:Sae,tokenize:xae,defineTheme:kae,setTheme:Dae,remeasureFonts:Iae,registerCommand:Eae,registerLinkOpener:Nae,registerEditorOpener:Tae,AccessibilitySupport:VL,ContentWidgetPositionPreference:qL,CursorChangeReason:GL,DefaultEndOfLine:ZL,EditorAutoIndentStrategy:QL,EditorOption:XL,EndOfLinePreference:JL,EndOfLineSequence:ex,MinimapPosition:hx,MinimapSectionHeaderStyle:ux,MouseTargetType:fx,OverlayWidgetPositionPreference:px,OverviewRulerLane:_x,GlyphMarginLane:tx,RenderLineNumbersType:vx,RenderMinimap:wx,ScrollbarVisibility:Sx,ScrollType:yx,TextEditorCursorBlinkingStyle:Ex,TextEditorCursorStyle:Nx,TrackedRangeStickiness:Tx,WrappingIndent:Mx,InjectedTextCursorStops:sx,PositionAffinity:Cx,ShowLightbulbIconMode:xx,ConfigurationChangedEvent:j5,BareFontInfo:Yd,FontInfo:qx,TextModelResolvedOptions:k1,FindMatch:Qp,ApplyUpdateResult:$m,EditorZoom:Xl,createMultiFileDiffEditor:oae,EditorType:yy,EditorOptions:Xh}}function Rae(o,e){if(!e||!Array.isArray(e))return!1;for(const t of e)if(!o(t))return!1;return!0}function l1(o,e){return typeof o=="boolean"?o:e}function D4(o,e){return typeof o=="string"?o:e}function Aae(o){const e={};for(const t of o)e[t]=!0;return e}function I4(o,e=!1){e&&(o=o.map(function(i){return i.toLowerCase()}));const t=Aae(o);return e?function(i){return t[i.toLowerCase()]!==void 0&&t.hasOwnProperty(i.toLowerCase())}:function(i){return t[i]!==void 0&&t.hasOwnProperty(i)}}function lE(o,e,t){e=e.replace(/@@/g,"");let i=0,n;do n=!1,e=e.replace(/@(\w+)/g,function(r,a){n=!0;let l="";if(typeof o[a]=="string")l=o[a];else if(o[a]&&o[a]instanceof RegExp)l=o[a].source;else throw o[a]===void 0?Et(o,"language definition does not contain attribute '"+a+"', used at: "+e):Et(o,"attribute reference '"+a+"' must be a string, used at: "+e);return kd(l)?"":"(?:"+l+")"}),i++;while(n&&i<5);e=e.replace(/\x01/g,"@");const s=(o.ignoreCase?"i":"")+(o.unicode?"u":"");if(t&&e.match(/\$[sS](\d\d?)/g)){let a=null,l=null;return c=>(l&&a===c||(a=c,l=new RegExp(mie(o,e,c),s)),l)}return new RegExp(e,s)}function Pae(o,e,t,i){if(i<0)return o;if(i=100){i=i-100;const n=t.split(".");if(n.unshift(t),i=0&&(i.tokenSubst=!0),typeof t.bracket=="string")if(t.bracket==="@open")i.bracket=1;else if(t.bracket==="@close")i.bracket=-1;else throw Et(o,"a 'bracket' attribute must be either '@open' or '@close', in rule: "+e);if(t.next){if(typeof t.next!="string")throw Et(o,"the next state must be a string value in rule: "+e);{let n=t.next;if(!/^(@pop|@push|@popall)$/.test(n)&&(n[0]==="@"&&(n=n.substr(1)),n.indexOf("$")<0&&!pie(o,tc(o,n,"",[],""))))throw Et(o,"the next state '"+t.next+"' is not defined in rule: "+e);i.next=n}}return typeof t.goBack=="number"&&(i.goBack=t.goBack),typeof t.switchTo=="string"&&(i.switchTo=t.switchTo),typeof t.log=="string"&&(i.log=t.log),typeof t.nextEmbedded=="string"&&(i.nextEmbedded=t.nextEmbedded,o.usesEmbedded=!0),i}}else if(Array.isArray(t)){const i=[];for(let n=0,s=t.length;n0&&i[0]==="^",this.name=this.name+": "+i,this.regex=lE(e,"^(?:"+(this.matchOnlyAtLineStart?i.substr(1):i)+")",!0)}setAction(e,t){this.action=cE(e,this.name,t)}resolveRegex(e){return this.regex instanceof RegExp?this.regex:this.regex(e)}}function j8(o,e){if(!e||typeof e!="object")throw new Error("Monarch: expecting a language definition object");const t={languageId:o,includeLF:l1(e.includeLF,!1),noThrow:!1,maxStack:100,start:typeof e.start=="string"?e.start:null,ignoreCase:l1(e.ignoreCase,!1),unicode:l1(e.unicode,!1),tokenPostfix:D4(e.tokenPostfix,"."+o),defaultToken:D4(e.defaultToken,"source"),usesEmbedded:!1,stateNames:{},tokenizer:{},brackets:[]},i=e;i.languageId=o,i.includeLF=t.includeLF,i.ignoreCase=t.ignoreCase,i.unicode=t.unicode,i.noThrow=t.noThrow,i.usesEmbedded=t.usesEmbedded,i.stateNames=e.tokenizer,i.defaultToken=t.defaultToken;function n(r,a,l){for(const c of l){let d=c.include;if(d){if(typeof d!="string")throw Et(t,"an 'include' attribute must be a string at: "+r);if(d[0]==="@"&&(d=d.substr(1)),!e.tokenizer[d])throw Et(t,"include target '"+d+"' is not defined at: "+r);n(r+"."+d,a,e.tokenizer[d])}else{const h=new Fae(r);if(Array.isArray(c)&&c.length>=1&&c.length<=3)if(h.setRegex(i,c[0]),c.length>=3)if(typeof c[1]=="string")h.setAction(i,{token:c[1],next:c[2]});else if(typeof c[1]=="object"){const u=c[1];u.next=c[2],h.setAction(i,u)}else throw Et(t,"a next state as the last element of a rule can only be given if the action is either an object or a string, at: "+r);else h.setAction(i,c[1]);else{if(!c.regex)throw Et(t,"a rule must either be an array, or an object with a 'regex' or 'include' field at: "+r);c.name&&typeof c.name=="string"&&(h.name=c.name),c.matchOnlyAtStart&&(h.matchOnlyAtLineStart=l1(c.matchOnlyAtLineStart,!1)),h.setRegex(i,c.regex),h.setAction(i,c.action)}a.push(h)}}}if(!e.tokenizer||typeof e.tokenizer!="object")throw Et(t,"a language definition must define the 'tokenizer' attribute as an object");t.tokenizer=[];for(const r in e.tokenizer)if(e.tokenizer.hasOwnProperty(r)){t.start||(t.start=r);const a=e.tokenizer[r];t.tokenizer[r]=new Array,n("tokenizer."+r,t.tokenizer[r],a)}if(t.usesEmbedded=i.usesEmbedded,e.brackets){if(!Array.isArray(e.brackets))throw Et(t,"the 'brackets' attribute must be defined as an array")}else e.brackets=[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}];const s=[];for(const r of e.brackets){let a=r;if(a&&Array.isArray(a)&&a.length===3&&(a={token:a[2],open:a[0],close:a[1]}),a.open===a.close)throw Et(t,"open and close brackets in a 'brackets' attribute must be different: "+a.open+` + hint: use the 'bracket' attribute if matching on equal brackets is required.`);if(typeof a.open=="string"&&typeof a.token=="string"&&typeof a.close=="string")s.push({token:a.token+t.tokenPostfix,open:yl(t,a.open),close:yl(t,a.close)});else throw Et(t,"every element in the 'brackets' array must be a '{open,close,token}' object or array")}return t.brackets=s,t.noThrow=!0,t}function Bae(o){lg.registerLanguage(o)}function Wae(){let o=[];return o=o.concat(lg.getLanguages()),o}function Hae(o){return pe.get(qt).languageIdCodec.encodeLanguageId(o)}function Vae(o,e){return pe.withServices(()=>{const i=pe.get(qt).onDidRequestRichLanguageFeatures(n=>{n===o&&(i.dispose(),e())});return i})}function zae(o,e){return pe.withServices(()=>{const i=pe.get(qt).onDidRequestBasicLanguageFeatures(n=>{n===o&&(i.dispose(),e())});return i})}function Uae(o,e){if(!pe.get(qt).isRegisteredLanguageId(o))throw new Error(`Cannot set configuration for unknown language ${o}`);return pe.get(Gn).register(o,e,100)}class $ae{constructor(e,t){this._languageId=e,this._actual=t}dispose(){}getInitialState(){return this._actual.getInitialState()}tokenize(e,t,i){if(typeof this._actual.tokenize=="function")return T_.adaptTokenize(this._languageId,this._actual,e,i);throw new Error("Not supported!")}tokenizeEncoded(e,t,i){const n=this._actual.tokenizeEncoded(e,i);return new x0(n.tokens,n.endState)}}class T_{constructor(e,t,i,n){this._languageId=e,this._actual=t,this._languageService=i,this._standaloneThemeService=n}dispose(){}getInitialState(){return this._actual.getInitialState()}static _toClassicTokens(e,t){const i=[];let n=0;for(let s=0,r=e.length;s0&&s[r-1]===u)continue;let f=h.startIndex;c===0?f=0:f{const i=await Promise.resolve(e.create());return i?Kae(i)?G8(o,i):new S_(pe.get(qt),pe.get(zo),o,j8(o,i),pe.get(lt)):null});return si.registerFactory(o,t)}function Gae(o,e){if(!pe.get(qt).isRegisteredLanguageId(o))throw new Error(`Cannot set tokens provider for unknown language ${o}`);return q8(e)?lM(o,{create:()=>e}):si.register(o,G8(o,e))}function Zae(o,e){const t=i=>new S_(pe.get(qt),pe.get(zo),o,j8(o,i),pe.get(lt));return q8(e)?lM(o,{create:()=>e}):si.register(o,t(e))}function Yae(o,e){return pe.get(Se).referenceProvider.register(o,e)}function Qae(o,e){return pe.get(Se).renameProvider.register(o,e)}function Xae(o,e){return pe.get(Se).newSymbolNamesProvider.register(o,e)}function Jae(o,e){return pe.get(Se).signatureHelpProvider.register(o,e)}function ele(o,e){return pe.get(Se).hoverProvider.register(o,{provideHover:async(i,n,s,r)=>{const a=i.getWordAtPosition(n);return Promise.resolve(e.provideHover(i,n,s,r)).then(l=>{if(l)return!l.range&&a&&(l.range=new I(n.lineNumber,a.startColumn,n.lineNumber,a.endColumn)),l.range||(l.range=new I(n.lineNumber,n.column,n.lineNumber,n.column)),l})}})}function tle(o,e){return pe.get(Se).documentSymbolProvider.register(o,e)}function ile(o,e){return pe.get(Se).documentHighlightProvider.register(o,e)}function nle(o,e){return pe.get(Se).linkedEditingRangeProvider.register(o,e)}function sle(o,e){return pe.get(Se).definitionProvider.register(o,e)}function ole(o,e){return pe.get(Se).implementationProvider.register(o,e)}function rle(o,e){return pe.get(Se).typeDefinitionProvider.register(o,e)}function ale(o,e){return pe.get(Se).codeLensProvider.register(o,e)}function lle(o,e,t){return pe.get(Se).codeActionProvider.register(o,{providedCodeActionKinds:t?.providedCodeActionKinds,documentation:t?.documentation,provideCodeActions:(n,s,r,a)=>{const c=pe.get(xa).read({resource:n.uri}).filter(d=>I.areIntersectingOrTouching(d,s));return e.provideCodeActions(n,s,{markers:c,only:r.only,trigger:r.trigger},a)},resolveCodeAction:e.resolveCodeAction})}function cle(o,e){return pe.get(Se).documentFormattingEditProvider.register(o,e)}function dle(o,e){return pe.get(Se).documentRangeFormattingEditProvider.register(o,e)}function hle(o,e){return pe.get(Se).onTypeFormattingEditProvider.register(o,e)}function ule(o,e){return pe.get(Se).linkProvider.register(o,e)}function fle(o,e){return pe.get(Se).completionProvider.register(o,e)}function gle(o,e){return pe.get(Se).colorProvider.register(o,e)}function mle(o,e){return pe.get(Se).foldingRangeProvider.register(o,e)}function ple(o,e){return pe.get(Se).declarationProvider.register(o,e)}function _le(o,e){return pe.get(Se).selectionRangeProvider.register(o,e)}function ble(o,e){return pe.get(Se).documentSemanticTokensProvider.register(o,e)}function Cle(o,e){return pe.get(Se).documentRangeSemanticTokensProvider.register(o,e)}function vle(o,e){return pe.get(Se).inlineCompletionsProvider.register(o,e)}function wle(o,e){return pe.get(Se).inlineEditProvider.register(o,e)}function yle(o,e){return pe.get(Se).inlayHintsProvider.register(o,e)}function Sle(){return{register:Bae,getLanguages:Wae,onLanguage:Vae,onLanguageEncountered:zae,getEncodedLanguageId:Hae,setLanguageConfiguration:Uae,setColorMap:qae,registerTokensProviderFactory:lM,setTokensProvider:Gae,setMonarchTokensProvider:Zae,registerReferenceProvider:Yae,registerRenameProvider:Qae,registerNewSymbolNameProvider:Xae,registerCompletionItemProvider:fle,registerSignatureHelpProvider:Jae,registerHoverProvider:ele,registerDocumentSymbolProvider:tle,registerDocumentHighlightProvider:ile,registerLinkedEditingRangeProvider:nle,registerDefinitionProvider:sle,registerImplementationProvider:ole,registerTypeDefinitionProvider:rle,registerCodeLensProvider:ale,registerCodeActionProvider:lle,registerDocumentFormattingEditProvider:cle,registerDocumentRangeFormattingEditProvider:dle,registerOnTypeFormattingEditProvider:hle,registerLinkProvider:ule,registerColorProvider:gle,registerFoldingRangeProvider:mle,registerDeclarationProvider:ple,registerSelectionRangeProvider:_le,registerDocumentSemanticTokensProvider:ble,registerDocumentRangeSemanticTokensProvider:Cle,registerInlineCompletionsProvider:vle,registerInlineEditProvider:wle,registerInlayHintsProvider:yle,DocumentHighlightKind:YL,CompletionItemKind:$L,CompletionItemTag:KL,CompletionItemInsertTextRule:UL,SymbolKind:Dx,SymbolTag:Ix,IndentAction:nx,CompletionTriggerKind:jL,SignatureHelpTriggerKind:kx,InlayHintKind:ox,InlineCompletionTriggerKind:rx,InlineEditTriggerKind:ax,CodeActionTriggerType:zL,NewSymbolNameTag:gx,NewSymbolNameTriggerKind:mx,PartialAcceptTriggerKind:bx,HoverVerbosityAction:ix,FoldingRangeKind:BL,SelectedSuggestionInfo:lF}}const cM=He("IEditorCancelService"),Z8=new le("cancellableOperation",!1,m("cancellableOperation","Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));Qe(cM,class{constructor(){this._tokens=new WeakMap}add(o,e){let t=this._tokens.get(o);t||(t=o.invokeWithinContext(n=>{const s=Z8.bindTo(n.get(De)),r=new yn;return{key:s,tokens:r}}),this._tokens.set(o,t));let i;return t.key.set(!0),i=t.tokens.push(e),()=>{i&&(i(),t.key.set(!t.tokens.isEmpty()),i=void 0)}}cancel(o){const e=this._tokens.get(o);if(!e)return;const t=e.tokens.pop();t&&(t.cancel(),e.key.set(!e.tokens.isEmpty()))}},1);class Lle extends In{constructor(e,t){super(t),this.editor=e,this._unregister=e.invokeWithinContext(i=>i.get(cM).add(e,this))}dispose(){this._unregister(),super.dispose()}}ge(new class extends co{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:Z8})}runEditorCommand(o,e){o.get(cM).cancel(e)}});let xle=class dE{constructor(e,t){if(this.flags=t,(this.flags&1)!==0){const i=e.getModel();this.modelVersionId=i?$p("{0}#{1}",i.uri.toString(),i.getVersionId()):null}else this.modelVersionId=null;(this.flags&4)!==0?this.position=e.getPosition():this.position=null,(this.flags&2)!==0?this.selection=e.getSelection():this.selection=null,(this.flags&8)!==0?(this.scrollLeft=e.getScrollLeft(),this.scrollTop=e.getScrollTop()):(this.scrollLeft=-1,this.scrollTop=-1)}_equals(e){if(!(e instanceof dE))return!1;const t=e;return!(this.modelVersionId!==t.modelVersionId||this.scrollLeft!==t.scrollLeft||this.scrollTop!==t.scrollTop||!this.position&&t.position||this.position&&!t.position||this.position&&t.position&&!this.position.equals(t.position)||!this.selection&&t.selection||this.selection&&!t.selection||this.selection&&t.selection&&!this.selection.equalsRange(t.selection))}validate(e){return this._equals(new dE(e,this.flags))}};class kle extends Lle{constructor(e,t,i,n){super(e,n),this._listener=new X,t&4&&this._listener.add(e.onDidChangeCursorPosition(s=>{(!i||!I.containsPosition(i,s.position))&&this.cancel()})),t&2&&this._listener.add(e.onDidChangeCursorSelection(s=>{(!i||!I.containsRange(i,s.selection))&&this.cancel()})),t&8&&this._listener.add(e.onDidScrollChange(s=>this.cancel())),t&1&&(this._listener.add(e.onDidChangeModel(s=>this.cancel())),this._listener.add(e.onDidChangeModelContent(s=>this.cancel())))}dispose(){this._listener.dispose(),super.dispose()}}class Dle extends In{constructor(e,t){super(t),this._listener=e.onDidChangeContent(()=>this.cancel())}dispose(){this._listener.dispose(),super.dispose()}}function Y8(o){return o&&typeof o.getEditorType=="function"?o.getEditorType()===yy.ICodeEditor:!1}class E4{constructor(e){this.value=e,this._lower=e.toLowerCase()}static toKey(e){return typeof e=="string"?e.toLowerCase():e._lower}}class Ile{constructor(e){if(this._set=new Set,e)for(const t of e)this.add(t)}add(e){this._set.add(E4.toKey(e))}has(e){return this._set.has(E4.toKey(e))}}function Ele(o,e,t){const i=[],n=new Ile,s=o.ordered(t);for(const a of s)i.push(a),a.extensionId&&n.add(a.extensionId);const r=e.ordered(t);for(const a of r){if(a.extensionId){if(n.has(a.extensionId))continue;n.add(a.extensionId)}i.push({displayName:a.displayName,extensionId:a.extensionId,provideDocumentFormattingEdits(l,c,d){return a.provideDocumentRangeFormattingEdits(l,l.getFullModelRange(),c,d)}})}return i}const Fp=class Fp{static setFormatterSelector(e){return{dispose:Fp._selectors.unshift(e)}}static async select(e,t,i,n){if(e.length===0)return;const s=st.first(Fp._selectors);if(s)return await s(e,t,i,n)}};Fp._selectors=new yn;let hE=Fp;async function Nle(o,e,t,i,n,s){const r=e.documentRangeFormattingEditProvider.ordered(t);for(const a of r){const l=await Promise.resolve(a.provideDocumentRangeFormattingEdits(t,i,n,s)).catch($n);if(Ps(l))return await o.computeMoreMinimalEdits(t.uri,l)}}async function Tle(o,e,t,i,n){const s=Ele(e.documentFormattingEditProvider,e.documentRangeFormattingEditProvider,t);for(const r of s){const a=await Promise.resolve(r.provideDocumentFormattingEdits(t,i,n)).catch($n);if(Ps(a))return await o.computeMoreMinimalEdits(t.uri,a)}}function Mle(o,e,t,i,n,s,r){const a=e.onTypeFormattingEditProvider.ordered(t);return a.length===0||a[0].autoFormatTriggerCharacters.indexOf(n)<0?Promise.resolve(void 0):Promise.resolve(a[0].provideOnTypeFormattingEdits(t,i,n,s,r)).catch($n).then(l=>o.computeMoreMinimalEdits(t.uri,l))}bt.registerCommand("_executeFormatRangeProvider",async function(o,...e){const[t,i,n]=e;ai(ve.isUri(t)),ai(I.isIRange(i));const s=o.get(fo),r=o.get(Zc),a=o.get(Se),l=await s.createModelReference(t);try{return Nle(r,a,l.object.textEditorModel,I.lift(i),n,ut.None)}finally{l.dispose()}});bt.registerCommand("_executeFormatDocumentProvider",async function(o,...e){const[t,i]=e;ai(ve.isUri(t));const n=o.get(fo),s=o.get(Zc),r=o.get(Se),a=await n.createModelReference(t);try{return Tle(s,r,a.object.textEditorModel,i,ut.None)}finally{a.dispose()}});bt.registerCommand("_executeFormatOnTypeProvider",async function(o,...e){const[t,i,n,s]=e;ai(ve.isUri(t)),ai(P.isIPosition(i)),ai(typeof n=="string");const r=o.get(fo),a=o.get(Zc),l=o.get(Se),c=await r.createModelReference(t);try{return Mle(a,l,c.object.textEditorModel,P.lift(i),n,s,ut.None)}finally{c.dispose()}});Xh.wrappingIndent.defaultValue=0;Xh.glyphMargin.defaultValue=!1;Xh.autoIndent.defaultValue=3;Xh.overviewRulerLanes.defaultValue=2;hE.setFormatterSelector((o,e,t)=>Promise.resolve(o[0]));const An=cF();An.editor=Mae();An.languages=Sle();An.CancellationTokenSource;An.Emitter;An.KeyCode;An.KeyMod;An.Position;const kge=An.Range;An.Selection;An.SelectionDirection;const Dge=An.MarkerSeverity;An.MarkerTag;An.Uri;An.Token;const Ige=An.editor,Ege=An.languages,Rle=globalThis.MonacoEnvironment;(Rle?.globalAPI||typeof define=="function"&&define.amd)&&(globalThis.monaco=An);typeof globalThis.require<"u"&&typeof globalThis.require.config=="function"&&globalThis.require.config({ignoreDuplicateModules:["vscode-languageserver-types","vscode-languageserver-types/main","vscode-languageserver-textdocument","vscode-languageserver-textdocument/main","vscode-nls","vscode-nls/vscode-nls","jsonc-parser","jsonc-parser/main","vscode-uri","vscode-uri/index","vs/basic-languages/typescript/typescript"]});const Q8="editor.action.showHover",Ale="editor.action.showDefinitionPreviewHover",Ple="editor.action.scrollUpHover",Ole="editor.action.scrollDownHover",Fle="editor.action.scrollLeftHover",Ble="editor.action.scrollRightHover",Wle="editor.action.pageUpHover",Hle="editor.action.pageDownHover",Vle="editor.action.goToTopHover",zle="editor.action.goToBottomHover",Ey="editor.action.increaseHoverVerbosityLevel",Ule=m({key:"increaseHoverVerbosityLevel",comment:["Label for action that will increase the hover verbosity level."]},"Increase Hover Verbosity Level"),Ny="editor.action.decreaseHoverVerbosityLevel",$le=m({key:"decreaseHoverVerbosityLevel",comment:["Label for action that will decrease the hover verbosity level."]},"Decrease Hover Verbosity Level");function uE(o,e){return!!o[e]}class uL{constructor(e,t){this.target=e.target,this.isLeftClick=e.event.leftButton,this.isMiddleClick=e.event.middleButton,this.isRightClick=e.event.rightButton,this.hasTriggerModifier=uE(e.event,t.triggerModifier),this.hasSideBySideModifier=uE(e.event,t.triggerSideBySideModifier),this.isNoneOrSingleMouseDown=e.event.detail<=1}}class N4{constructor(e,t){this.keyCodeIsTriggerKey=e.keyCode===t.triggerKey,this.keyCodeIsSideBySideKey=e.keyCode===t.triggerSideBySideKey,this.hasTriggerModifier=uE(e,t.triggerModifier)}}class c1{constructor(e,t,i,n){this.triggerKey=e,this.triggerModifier=t,this.triggerSideBySideKey=i,this.triggerSideBySideModifier=n}equals(e){return this.triggerKey===e.triggerKey&&this.triggerModifier===e.triggerModifier&&this.triggerSideBySideKey===e.triggerSideBySideKey&&this.triggerSideBySideModifier===e.triggerSideBySideModifier}}function T4(o){return o==="altKey"?Ue?new c1(57,"metaKey",6,"altKey"):new c1(5,"ctrlKey",6,"altKey"):Ue?new c1(6,"altKey",57,"metaKey"):new c1(6,"altKey",5,"ctrlKey")}class X8 extends z{constructor(e,t){super(),this._onMouseMoveOrRelevantKeyDown=this._register(new A),this.onMouseMoveOrRelevantKeyDown=this._onMouseMoveOrRelevantKeyDown.event,this._onExecute=this._register(new A),this.onExecute=this._onExecute.event,this._onCancel=this._register(new A),this.onCancel=this._onCancel.event,this._editor=e,this._extractLineNumberFromMouseEvent=t?.extractLineNumberFromMouseEvent??(i=>i.target.position?i.target.position.lineNumber:0),this._opts=T4(this._editor.getOption(78)),this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._register(this._editor.onDidChangeConfiguration(i=>{if(i.hasChanged(78)){const n=T4(this._editor.getOption(78));if(this._opts.equals(n))return;this._opts=n,this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._onCancel.fire()}})),this._register(this._editor.onMouseMove(i=>this._onEditorMouseMove(new uL(i,this._opts)))),this._register(this._editor.onMouseDown(i=>this._onEditorMouseDown(new uL(i,this._opts)))),this._register(this._editor.onMouseUp(i=>this._onEditorMouseUp(new uL(i,this._opts)))),this._register(this._editor.onKeyDown(i=>this._onEditorKeyDown(new N4(i,this._opts)))),this._register(this._editor.onKeyUp(i=>this._onEditorKeyUp(new N4(i,this._opts)))),this._register(this._editor.onMouseDrag(()=>this._resetHandler())),this._register(this._editor.onDidChangeCursorSelection(i=>this._onDidChangeCursorSelection(i))),this._register(this._editor.onDidChangeModel(i=>this._resetHandler())),this._register(this._editor.onDidChangeModelContent(()=>this._resetHandler())),this._register(this._editor.onDidScrollChange(i=>{(i.scrollTopChanged||i.scrollLeftChanged)&&this._resetHandler()}))}_onDidChangeCursorSelection(e){e.selection&&e.selection.startColumn!==e.selection.endColumn&&this._resetHandler()}_onEditorMouseMove(e){this._lastMouseMoveEvent=e,this._onMouseMoveOrRelevantKeyDown.fire([e,null])}_onEditorMouseDown(e){this._hasTriggerKeyOnMouseDown=e.hasTriggerModifier,this._lineNumberOnMouseDown=this._extractLineNumberFromMouseEvent(e)}_onEditorMouseUp(e){const t=this._extractLineNumberFromMouseEvent(e);this._hasTriggerKeyOnMouseDown&&this._lineNumberOnMouseDown&&this._lineNumberOnMouseDown===t&&this._onExecute.fire(e)}_onEditorKeyDown(e){this._lastMouseMoveEvent&&(e.keyCodeIsTriggerKey||e.keyCodeIsSideBySideKey&&e.hasTriggerModifier)?this._onMouseMoveOrRelevantKeyDown.fire([this._lastMouseMoveEvent,e]):e.hasTriggerModifier&&this._onCancel.fire()}_onEditorKeyUp(e){e.keyCodeIsTriggerKey&&this._onCancel.fire()}_resetHandler(){this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._onCancel.fire()}}var Kle=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Oa=function(o,e){return function(t,i){e(t,i,o)}};let Gh=class extends I_{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f){super(e,{...n.getRawOptions(),overflowWidgetsDomNode:n.getOverflowWidgetsDomNode()},i,s,r,a,l,c,d,h,u,f),this._parentEditor=n,this._overwriteOptions=t,super.updateOptions(this._overwriteOptions),this._register(n.onDidChangeConfiguration(g=>this._onParentConfigurationChanged(g)))}getParentEditor(){return this._parentEditor}_onParentConfigurationChanged(e){super.updateOptions(this._parentEditor.getRawOptions()),super.updateOptions(this._overwriteOptions)}updateOptions(e){S0(this._overwriteOptions,e,!0),super.updateOptions(this._overwriteOptions)}};Gh=Kle([Oa(4,ke),Oa(5,Pt),Oa(6,hi),Oa(7,De),Oa(8,en),Oa(9,mn),Oa(10,ms),Oa(11,Gn),Oa(12,Se)],Gh);const M4=new q(new qe(0,122,204)),jle={showArrow:!0,showFrame:!0,className:"",frameColor:M4,arrowColor:M4,keepEditorSelection:!1},qle="vs.editor.contrib.zoneWidget";class Gle{constructor(e,t,i,n,s,r,a,l){this.id="",this.domNode=e,this.afterLineNumber=t,this.afterColumn=i,this.heightInLines=n,this.showInHiddenAreas=a,this.ordinal=l,this._onDomNodeTop=s,this._onComputedHeight=r}onDomNodeTop(e){this._onDomNodeTop(e)}onComputedHeight(e){this._onComputedHeight(e)}}class Zle{constructor(e,t){this._id=e,this._domNode=t}getId(){return this._id}getDomNode(){return this._domNode}getPosition(){return null}}const h0=class h0{constructor(e){this._editor=e,this._ruleName=h0._IdGenerator.nextId(),this._decorations=this._editor.createDecorationsCollection(),this._color=null,this._height=-1}dispose(){this.hide(),jx(this._ruleName)}set color(e){this._color!==e&&(this._color=e,this._updateStyle())}set height(e){this._height!==e&&(this._height=e,this._updateStyle())}_updateStyle(){jx(this._ruleName),bC(`.monaco-editor ${this._ruleName}`,`border-style: solid; border-color: transparent; border-bottom-color: ${this._color}; border-width: ${this._height}px; bottom: -${this._height}px !important; margin-left: -${this._height}px; `)}show(e){e.column===1&&(e={lineNumber:e.lineNumber,column:2}),this._decorations.set([{range:I.fromPositions(e),options:{description:"zone-widget-arrow",className:this._ruleName,stickiness:1}}])}hide(){this._decorations.clear()}};h0._IdGenerator=new HT(".arrow-decoration-");let fE=h0;class Yle{constructor(e,t={}){this._arrow=null,this._overlayWidget=null,this._resizeSash=null,this._viewZone=null,this._disposables=new X,this.container=null,this._isShowing=!1,this.editor=e,this._positionMarkerId=this.editor.createDecorationsCollection(),this.options=Ya(t),S0(this.options,jle,!1),this.domNode=document.createElement("div"),this.options.isAccessible||(this.domNode.setAttribute("aria-hidden","true"),this.domNode.setAttribute("role","presentation")),this._disposables.add(this.editor.onDidLayoutChange(i=>{const n=this._getWidth(i);this.domNode.style.width=n+"px",this.domNode.style.left=this._getLeft(i)+"px",this._onWidth(n)}))}dispose(){this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._viewZone&&this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id),this._viewZone=null}),this._positionMarkerId.clear(),this._disposables.dispose()}create(){this.domNode.classList.add("zone-widget"),this.options.className&&this.domNode.classList.add(this.options.className),this.container=document.createElement("div"),this.container.classList.add("zone-widget-container"),this.domNode.appendChild(this.container),this.options.showArrow&&(this._arrow=new fE(this.editor),this._disposables.add(this._arrow)),this._fillContainer(this.container),this._initSash(),this._applyStyles()}style(e){e.frameColor&&(this.options.frameColor=e.frameColor),e.arrowColor&&(this.options.arrowColor=e.arrowColor),this._applyStyles()}_applyStyles(){if(this.container&&this.options.frameColor){const e=this.options.frameColor.toString();this.container.style.borderTopColor=e,this.container.style.borderBottomColor=e}if(this._arrow&&this.options.arrowColor){const e=this.options.arrowColor.toString();this._arrow.color=e}}_getWidth(e){return e.width-e.minimap.minimapWidth-e.verticalScrollbarWidth}_getLeft(e){return e.minimap.minimapWidth>0&&e.minimap.minimapLeft===0?e.minimap.minimapWidth:0}_onViewZoneTop(e){this.domNode.style.top=e+"px"}_onViewZoneHeight(e){if(this.domNode.style.height=`${e}px`,this.container){const t=e-this._decoratingElementsHeight();this.container.style.height=`${t}px`;const i=this.editor.getLayoutInfo();this._doLayout(t,this._getWidth(i))}this._resizeSash?.layout()}get position(){const e=this._positionMarkerId.getRange(0);if(e)return e.getStartPosition()}show(e,t){const i=I.isIRange(e)?I.lift(e):I.fromPositions(e);this._isShowing=!0,this._showImpl(i,t),this._isShowing=!1,this._positionMarkerId.set([{range:i,options:kt.EMPTY}])}hide(){this._viewZone&&(this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id)}),this._viewZone=null),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._arrow?.hide(),this._positionMarkerId.clear()}_decoratingElementsHeight(){const e=this.editor.getOption(67);let t=0;if(this.options.showArrow){const i=Math.round(e/3);t+=2*i}if(this.options.showFrame){const i=Math.round(e/9);t+=2*i}return t}_showImpl(e,t){const i=e.getStartPosition(),n=this.editor.getLayoutInfo(),s=this._getWidth(n);this.domNode.style.width=`${s}px`,this.domNode.style.left=this._getLeft(n)+"px";const r=document.createElement("div");r.style.overflow="hidden";const a=this.editor.getOption(67);if(!this.options.allowUnlimitedHeight){const u=Math.max(12,this.editor.getLayoutInfo().height/a*.8);t=Math.min(t,u)}let l=0,c=0;if(this._arrow&&this.options.showArrow&&(l=Math.round(a/3),this._arrow.height=l,this._arrow.show(i)),this.options.showFrame&&(c=Math.round(a/9)),this.editor.changeViewZones(u=>{this._viewZone&&u.removeZone(this._viewZone.id),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this.domNode.style.top="-1000px",this._viewZone=new Gle(r,i.lineNumber,i.column,t,f=>this._onViewZoneTop(f),f=>this._onViewZoneHeight(f),this.options.showInHiddenAreas,this.options.ordinal),this._viewZone.id=u.addZone(this._viewZone),this._overlayWidget=new Zle(qle+this._viewZone.id,this.domNode),this.editor.addOverlayWidget(this._overlayWidget)}),this.container&&this.options.showFrame){const u=this.options.frameWidth?this.options.frameWidth:c;this.container.style.borderTopWidth=u+"px",this.container.style.borderBottomWidth=u+"px"}const d=t*a-this._decoratingElementsHeight();this.container&&(this.container.style.top=l+"px",this.container.style.height=d+"px",this.container.style.overflow="hidden"),this._doLayout(d,s),this.options.keepEditorSelection||this.editor.setSelection(e);const h=this.editor.getModel();if(h){const u=h.validateRange(new I(e.startLineNumber,1,e.endLineNumber+1,1));this.revealRange(u,u.startLineNumber===h.getLineCount())}}revealRange(e,t){t?this.editor.revealLineNearTop(e.endLineNumber,0):this.editor.revealRange(e,0)}setCssClass(e,t){this.container&&(t&&this.container.classList.remove(t),this.container.classList.add(e))}_onWidth(e){}_doLayout(e,t){}_relayout(e){this._viewZone&&this._viewZone.heightInLines!==e&&this.editor.changeViewZones(t=>{this._viewZone&&(this._viewZone.heightInLines=e,t.layoutZone(this._viewZone.id))})}_initSash(){if(this._resizeSash)return;this._resizeSash=this._disposables.add(new an(this.domNode,this,{orientation:1})),this.options.isResizeable||(this._resizeSash.state=0);let e;this._disposables.add(this._resizeSash.onDidStart(t=>{this._viewZone&&(e={startY:t.startY,heightInLines:this._viewZone.heightInLines})})),this._disposables.add(this._resizeSash.onDidEnd(()=>{e=void 0})),this._disposables.add(this._resizeSash.onDidChange(t=>{if(e){const i=(t.currentY-e.startY)/this.editor.getOption(67),n=i<0?Math.ceil(i):Math.floor(i),s=e.heightInLines+n;s>5&&s<35&&this._relayout(s)}}))}getHorizontalSashLeft(){return 0}getHorizontalSashTop(){return(this.domNode.style.height===null?0:parseInt(this.domNode.style.height))-this._decoratingElementsHeight()/2}getHorizontalSashWidth(){const e=this.editor.getLayoutInfo();return e.width-e.minimap.minimapWidth}}var J8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},eB=function(o,e){return function(t,i){e(t,i,o)}};const tB=He("IPeekViewService");Qe(tB,class{constructor(){this._widgets=new Map}addExclusiveWidget(o,e){const t=this._widgets.get(o);t&&(t.listener.dispose(),t.widget.dispose());const i=()=>{const n=this._widgets.get(o);n&&n.widget===e&&(n.listener.dispose(),this._widgets.delete(o))};this._widgets.set(o,{widget:e,listener:e.onDidClose(i)})}},1);var qn;(function(o){o.inPeekEditor=new le("inReferenceSearchEditor",!0,m("inReferenceSearchEditor","Whether the current code editor is embedded inside peek")),o.notInPeekEditor=o.inPeekEditor.toNegated()})(qn||(qn={}));var eg;let Yv=(eg=class{constructor(e,t){e instanceof Gh&&qn.inPeekEditor.bindTo(t)}dispose(){}},eg.ID="editor.contrib.referenceController",eg);Yv=J8([eB(1,De)],Yv);Ho(Yv.ID,Yv,0);function Qle(o){const e=o.get(Pt).getFocusedCodeEditor();return e instanceof Gh?e.getParentEditor():e}const Xle={headerBackgroundColor:q.white,primaryHeadingColor:q.fromHex("#333333"),secondaryHeadingColor:q.fromHex("#6c6c6cb3")};let Qv=class extends Yle{constructor(e,t,i){super(e,t),this.instantiationService=i,this._onDidClose=new A,this.onDidClose=this._onDidClose.event,S0(this.options,Xle,!1)}dispose(){this.disposed||(this.disposed=!0,super.dispose(),this._onDidClose.fire(this))}style(e){const t=this.options;e.headerBackgroundColor&&(t.headerBackgroundColor=e.headerBackgroundColor),e.primaryHeadingColor&&(t.primaryHeadingColor=e.primaryHeadingColor),e.secondaryHeadingColor&&(t.secondaryHeadingColor=e.secondaryHeadingColor),super.style(e)}_applyStyles(){super._applyStyles();const e=this.options;this._headElement&&e.headerBackgroundColor&&(this._headElement.style.backgroundColor=e.headerBackgroundColor.toString()),this._primaryHeading&&e.primaryHeadingColor&&(this._primaryHeading.style.color=e.primaryHeadingColor.toString()),this._secondaryHeading&&e.secondaryHeadingColor&&(this._secondaryHeading.style.color=e.secondaryHeadingColor.toString()),this._bodyElement&&e.frameColor&&(this._bodyElement.style.borderColor=e.frameColor.toString())}_fillContainer(e){this.setCssClass("peekview-widget"),this._headElement=ce(".head"),this._bodyElement=ce(".body"),this._fillHead(this._headElement),this._fillBody(this._bodyElement),e.appendChild(this._headElement),e.appendChild(this._bodyElement)}_fillHead(e,t){this._titleElement=ce(".peekview-title"),this.options.supportOnTitleClick&&(this._titleElement.classList.add("clickable"),jt(this._titleElement,"click",s=>this._onTitleClick(s))),Z(this._headElement,this._titleElement),this._fillTitleIcon(this._titleElement),this._primaryHeading=ce("span.filename"),this._secondaryHeading=ce("span.dirname"),this._metaHeading=ce("span.meta"),Z(this._titleElement,this._primaryHeading,this._secondaryHeading,this._metaHeading);const i=ce(".peekview-actions");Z(this._headElement,i);const n=this._getActionBarOptions();this._actionbarWidget=new oo(i,n),this._disposables.add(this._actionbarWidget),t||this._actionbarWidget.push(new Fs("peekview.close",m("label.close","Close"),Ee.asClassName(ie.close),!0,()=>(this.dispose(),Promise.resolve())),{label:!1,icon:!0})}_fillTitleIcon(e){}_getActionBarOptions(){return{actionViewItemProvider:H7.bind(void 0,this.instantiationService),orientation:0}}_onTitleClick(e){}setTitle(e,t){this._primaryHeading&&this._secondaryHeading&&(this._primaryHeading.innerText=e,this._primaryHeading.setAttribute("title",e),t?this._secondaryHeading.innerText=t:xn(this._secondaryHeading))}setMetaTitle(e){this._metaHeading&&(e?(this._metaHeading.innerText=e,ns(this._metaHeading)):Cn(this._metaHeading))}_doLayout(e,t){if(!this._isShowing&&e<0){this.dispose();return}const i=Math.ceil(this.editor.getOption(67)*1.2),n=Math.round(e-(i+2));this._doLayoutHead(i,t),this._doLayoutBody(n,t)}_doLayoutHead(e,t){this._headElement&&(this._headElement.style.height=`${e}px`,this._headElement.style.lineHeight=this._headElement.style.height)}_doLayoutBody(e,t){this._bodyElement&&(this._bodyElement.style.height=`${e}px`)}};Qv=J8([eB(2,ke)],Qv);const Jle=D("peekViewTitle.background",{dark:"#252526",light:"#F3F3F3",hcDark:q.black,hcLight:q.white},m("peekViewTitleBackground","Background color of the peek view title area.")),iB=D("peekViewTitleLabel.foreground",{dark:q.white,light:q.black,hcDark:q.white,hcLight:Sa},m("peekViewTitleForeground","Color of the peek view title.")),nB=D("peekViewTitleDescription.foreground",{dark:"#ccccccb3",light:"#616161",hcDark:"#FFFFFF99",hcLight:"#292929"},m("peekViewTitleInfoForeground","Color of the peek view title info.")),ece=D("peekView.border",{dark:ma,light:ma,hcDark:Ye,hcLight:Ye},m("peekViewBorder","Color of the peek view borders and arrow.")),tce=D("peekViewResult.background",{dark:"#252526",light:"#F3F3F3",hcDark:q.black,hcLight:q.white},m("peekViewResultsBackground","Background color of the peek view result list."));D("peekViewResult.lineForeground",{dark:"#bbbbbb",light:"#646465",hcDark:q.white,hcLight:Sa},m("peekViewResultsMatchForeground","Foreground color for line nodes in the peek view result list."));D("peekViewResult.fileForeground",{dark:q.white,light:"#1E1E1E",hcDark:q.white,hcLight:Sa},m("peekViewResultsFileForeground","Foreground color for file nodes in the peek view result list."));D("peekViewResult.selectionBackground",{dark:"#3399ff33",light:"#3399ff33",hcDark:null,hcLight:null},m("peekViewResultsSelectionBackground","Background color of the selected entry in the peek view result list."));D("peekViewResult.selectionForeground",{dark:q.white,light:"#6C6C6C",hcDark:q.white,hcLight:Sa},m("peekViewResultsSelectionForeground","Foreground color of the selected entry in the peek view result list."));const sB=D("peekViewEditor.background",{dark:"#001F33",light:"#F2F8FC",hcDark:q.black,hcLight:q.white},m("peekViewEditorBackground","Background color of the peek view editor."));D("peekViewEditorGutter.background",sB,m("peekViewEditorGutterBackground","Background color of the gutter in the peek view editor."));D("peekViewEditorStickyScroll.background",sB,m("peekViewEditorStickScrollBackground","Background color of sticky scroll in the peek view editor."));D("peekViewResult.matchHighlightBackground",{dark:"#ea5c004d",light:"#ea5c004d",hcDark:null,hcLight:null},m("peekViewResultsMatchHighlight","Match highlight color in the peek view result list."));D("peekViewEditor.matchHighlightBackground",{dark:"#ff8f0099",light:"#f5d802de",hcDark:null,hcLight:null},m("peekViewEditorMatchHighlight","Match highlight color in the peek view editor."));D("peekViewEditor.matchHighlightBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("peekViewEditorMatchHighlightBorder","Match highlight border in the peek view editor."));class zc{constructor(e,t,i,n){this.isProviderFirst=e,this.parent=t,this.link=i,this._rangeCallback=n,this.id=Pk.nextId()}get uri(){return this.link.uri}get range(){return this._range??this.link.targetSelectionRange??this.link.range}set range(e){this._range=e,this._rangeCallback(this)}get ariaMessage(){const e=this.parent.getPreview(this)?.preview(this.range);return e?m({key:"aria.oneReference.preview",comment:["Placeholders are: 0: filename, 1:line number, 2: column number, 3: preview snippet of source code"]},"{0} in {1} on line {2} at column {3}",e.value,Fo(this.uri),this.range.startLineNumber,this.range.startColumn):m("aria.oneReference","in {0} on line {1} at column {2}",Fo(this.uri),this.range.startLineNumber,this.range.startColumn)}}class ice{constructor(e){this._modelReference=e}dispose(){this._modelReference.dispose()}preview(e,t=8){const i=this._modelReference.object.textEditorModel;if(!i)return;const{startLineNumber:n,startColumn:s,endLineNumber:r,endColumn:a}=e,l=i.getWordUntilPosition({lineNumber:n,column:s-t}),c=new I(n,l.startColumn,n,s),d=new I(r,a,r,1073741824),h=i.getValueInRange(c).replace(/^\s+/,""),u=i.getValueInRange(e),f=i.getValueInRange(d).replace(/\s+$/,"");return{value:h+u+f,highlight:{start:h.length,end:h.length+u.length}}}}class M_{constructor(e,t){this.parent=e,this.uri=t,this.children=[],this._previews=new cs}dispose(){xt(this._previews.values()),this._previews.clear()}getPreview(e){return this._previews.get(e.uri)}get ariaMessage(){const e=this.children.length;return e===1?m("aria.fileReferences.1","1 symbol in {0}, full path {1}",Fo(this.uri),this.uri.fsPath):m("aria.fileReferences.N","{0} symbols in {1}, full path {2}",e,Fo(this.uri),this.uri.fsPath)}async resolve(e){if(this._previews.size!==0)return this;for(const t of this.children)if(!this._previews.has(t.uri))try{const i=await e.createModelReference(t.uri);this._previews.set(t.uri,new ice(i))}catch(i){Ze(i)}return this}}class ds{constructor(e,t){this.groups=[],this.references=[],this._onDidChangeReferenceRange=new A,this.onDidChangeReferenceRange=this._onDidChangeReferenceRange.event,this._links=e,this._title=t;const[i]=e;e.sort(ds._compareReferences);let n;for(const s of e)if((!n||!Tt.isEqual(n.uri,s.uri,!0))&&(n=new M_(this,s.uri),this.groups.push(n)),n.children.length===0||ds._compareReferences(s,n.children[n.children.length-1])!==0){const r=new zc(i===s,n,s,a=>this._onDidChangeReferenceRange.fire(a));this.references.push(r),n.children.push(r)}}dispose(){xt(this.groups),this._onDidChangeReferenceRange.dispose(),this.groups.length=0}clone(){return new ds(this._links,this._title)}get title(){return this._title}get isEmpty(){return this.groups.length===0}get ariaMessage(){return this.isEmpty?m("aria.result.0","No results found"):this.references.length===1?m("aria.result.1","Found 1 symbol in {0}",this.references[0].uri.fsPath):this.groups.length===1?m("aria.result.n1","Found {0} symbols in {1}",this.references.length,this.groups[0].uri.fsPath):m("aria.result.nm","Found {0} symbols in {1} files",this.references.length,this.groups.length)}nextOrPreviousReference(e,t){const{parent:i}=e;let n=i.children.indexOf(e);const s=i.children.length,r=i.parent.groups.length;return r===1||t&&n+10?(t?n=(n+1)%s:n=(n+s-1)%s,i.children[n]):(n=i.parent.groups.indexOf(i),t?(n=(n+1)%r,i.parent.groups[n].children[0]):(n=(n+r-1)%r,i.parent.groups[n].children[i.parent.groups[n].children.length-1]))}nearestReference(e,t){const i=this.references.map((n,s)=>({idx:s,prefixLen:Th(n.uri.toString(),e.toString()),offsetDist:Math.abs(n.range.startLineNumber-t.lineNumber)*100+Math.abs(n.range.startColumn-t.column)})).sort((n,s)=>n.prefixLen>s.prefixLen?-1:n.prefixLens.offsetDist?1:0)[0];if(i)return this.references[i.idx]}referenceAt(e,t){for(const i of this.references)if(i.uri.toString()===e.toString()&&I.containsPosition(i.range,t))return i}firstReference(){for(const e of this.references)if(e.isProviderFirst)return e;return this.references[0]}static _compareReferences(e,t){return Tt.compare(e.uri,t.uri)||I.compareRangesUsingStarts(e.range,t.range)}}var Ty=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},My=function(o,e){return function(t,i){e(t,i,o)}},gE;let mE=class{constructor(e){this._resolverService=e}hasChildren(e){return e instanceof ds||e instanceof M_}getChildren(e){if(e instanceof ds)return e.groups;if(e instanceof M_)return e.resolve(this._resolverService).then(t=>t.children);throw new Error("bad tree")}};mE=Ty([My(0,fo)],mE);class nce{getHeight(){return 23}getTemplateId(e){return e instanceof M_?Xv.id:Jv.id}}let pE=class{constructor(e){this._keybindingService=e}getKeyboardNavigationLabel(e){if(e instanceof zc){const t=e.parent.getPreview(e)?.preview(e.range);if(t)return t.value}return Fo(e.uri)}};pE=Ty([My(0,vt)],pE);class sce{getId(e){return e instanceof zc?e.id:e.uri}}let _E=class extends z{constructor(e,t){super(),this._labelService=t;const i=document.createElement("div");i.classList.add("reference-file"),this.file=this._register(new gv(i,{supportHighlights:!0})),this.badge=new PD(Z(i,ce(".count")),{},B7),e.appendChild(i)}set(e,t){const i=ny(e.uri);this.file.setLabel(this._labelService.getUriBasenameLabel(e.uri),this._labelService.getUriLabel(i,{relative:!0}),{title:this._labelService.getUriLabel(e.uri),matches:t});const n=e.children.length;this.badge.setCount(n),n>1?this.badge.setTitleFormat(m("referencesCount","{0} references",n)):this.badge.setTitleFormat(m("referenceCount","{0} reference",n))}};_E=Ty([My(1,Cg)],_E);var fh;let Xv=(fh=class{constructor(e){this._instantiationService=e,this.templateId=gE.id}renderTemplate(e){return this._instantiationService.createInstance(_E,e)}renderElement(e,t,i){i.set(e.element,iy(e.filterData))}disposeTemplate(e){e.dispose()}},gE=fh,fh.id="FileReferencesRenderer",fh);Xv=gE=Ty([My(0,ke)],Xv);class oce extends z{constructor(e){super(),this.label=this._register(new _c(e))}set(e,t){const i=e.parent.getPreview(e)?.preview(e.range);if(!i||!i.value)this.label.set(`${Fo(e.uri)}:${e.range.startLineNumber+1}:${e.range.startColumn+1}`);else{const{value:n,highlight:s}=i;t&&!oa.isDefault(t)?(this.label.element.classList.toggle("referenceMatch",!1),this.label.set(n,iy(t))):(this.label.element.classList.toggle("referenceMatch",!0),this.label.set(n,[s]))}}}const u0=class u0{constructor(){this.templateId=u0.id}renderTemplate(e){return new oce(e)}renderElement(e,t,i){i.set(e.element,e.filterData)}disposeTemplate(e){e.dispose()}};u0.id="OneReferenceRenderer";let Jv=u0;class rce{getWidgetAriaLabel(){return m("treeAriaLabel","References")}getAriaLabel(e){return e.ariaMessage}}var ace=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ou=function(o,e){return function(t,i){e(t,i,o)}};const f0=class f0{constructor(e,t){this._editor=e,this._model=t,this._decorations=new Map,this._decorationIgnoreSet=new Set,this._callOnDispose=new X,this._callOnModelChange=new X,this._callOnDispose.add(this._editor.onDidChangeModel(()=>this._onModelChanged())),this._onModelChanged()}dispose(){this._callOnModelChange.dispose(),this._callOnDispose.dispose(),this.removeDecorations()}_onModelChanged(){this._callOnModelChange.clear();const e=this._editor.getModel();if(e){for(const t of this._model.references)if(t.uri.toString()===e.uri.toString()){this._addDecorations(t.parent);return}}}_addDecorations(e){if(!this._editor.hasModel())return;this._callOnModelChange.add(this._editor.getModel().onDidChangeDecorations(()=>this._onDecorationChanged()));const t=[],i=[];for(let n=0,s=e.children.length;n{const s=n.deltaDecorations([],t);for(let r=0;r{s.equals(9)&&(this._keybindingService.dispatchEvent(s,s.target),s.stopPropagation())},!0)),this._tree=this._instantiationService.createInstance(cce,"ReferencesWidget",this._treeContainer,new nce,[this._instantiationService.createInstance(Xv),this._instantiationService.createInstance(Jv)],this._instantiationService.createInstance(mE),i),this._splitView.addView({onDidChange:J.None,element:this._previewContainer,minimumSize:200,maximumSize:Number.MAX_VALUE,layout:s=>{this._preview.layout({height:this._dim.height,width:s})}},av.Distribute),this._splitView.addView({onDidChange:J.None,element:this._treeContainer,minimumSize:100,maximumSize:Number.MAX_VALUE,layout:s=>{this._treeContainer.style.height=`${this._dim.height}px`,this._treeContainer.style.width=`${s}px`,this._tree.layout(this._dim.height,s)}},av.Distribute),this._disposables.add(this._splitView.onDidSashChange(()=>{this._dim.width&&(this.layoutData.ratio=this._splitView.getViewSize(0)/this._dim.width)},void 0));const n=(s,r)=>{s instanceof zc&&(r==="show"&&this._revealReference(s,!1),this._onDidSelectReference.fire({element:s,kind:r,source:"tree"}))};this._disposables.add(this._tree.onDidOpen(s=>{s.sideBySide?n(s.element,"side"):s.editorOptions.pinned?n(s.element,"goto"):n(s.element,"show")})),Cn(this._treeContainer)}_onWidth(e){this._dim&&this._doLayoutBody(this._dim.height,e)}_doLayoutBody(e,t){super._doLayoutBody(e,t),this._dim=new rt(t,e),this.layoutData.heightInLines=this._viewZone?this._viewZone.heightInLines:this.layoutData.heightInLines,this._splitView.layout(t),this._splitView.resizeView(0,t*this.layoutData.ratio)}setSelection(e){return this._revealReference(e,!0).then(()=>{this._model&&(this._tree.setSelection([e]),this._tree.setFocus([e]))})}setModel(e){return this._disposeOnNewModel.clear(),this._model=e,this._model?this._onNewModel():Promise.resolve()}_onNewModel(){return this._model?this._model.isEmpty?(this.setTitle(""),this._messageContainer.innerText=m("noResults","No results"),ns(this._messageContainer),Promise.resolve(void 0)):(Cn(this._messageContainer),this._decorationsManager=new bE(this._preview,this._model),this._disposeOnNewModel.add(this._decorationsManager),this._disposeOnNewModel.add(this._model.onDidChangeReferenceRange(e=>this._tree.rerender(e))),this._disposeOnNewModel.add(this._preview.onMouseDown(e=>{const{event:t,target:i}=e;if(t.detail!==2)return;const n=this._getFocusedReference();n&&this._onDidSelectReference.fire({element:{uri:n.uri,range:i.range},kind:t.ctrlKey||t.metaKey||t.altKey?"side":"open",source:"editor"})})),this.container.classList.add("results-loaded"),ns(this._treeContainer),ns(this._previewContainer),this._splitView.layout(this._dim.width),this.focusOnReferenceTree(),this._tree.setInput(this._model.groups.length===1?this._model.groups[0]:this._model)):Promise.resolve(void 0)}_getFocusedReference(){const[e]=this._tree.getFocus();if(e instanceof zc)return e;if(e instanceof M_&&e.children.length>0)return e.children[0]}async revealReference(e){await this._revealReference(e,!1),this._onDidSelectReference.fire({element:e,kind:"goto",source:"tree"})}async _revealReference(e,t){if(this._revealedReference===e)return;this._revealedReference=e,e.uri.scheme!==Te.inMemory?this.setTitle(Zq(e.uri),this._uriLabel.getUriLabel(ny(e.uri))):this.setTitle(m("peekView.alternateTitle","References"));const i=this._textModelResolverService.createModelReference(e.uri);this._tree.getInput()===e.parent?this._tree.reveal(e):(t&&this._tree.reveal(e.parent),await this._tree.expand(e.parent),this._tree.reveal(e));const n=await i;if(!this._model){n.dispose();return}xt(this._previewModelReference);const s=n.object;if(s){const r=this._preview.getModel()===s.textEditorModel?0:1,a=I.lift(e.range).collapseToStart();this._previewModelReference=n,this._preview.setModel(s.textEditorModel),this._preview.setSelection(a),this._preview.revealRangeInCenter(a,r)}else this._preview.setModel(this._previewNotAvailableMessage),n.dispose()}};CE=ace([Ou(3,en),Ou(4,fo),Ou(5,ke),Ou(6,tB),Ou(7,Cg),Ou(8,vt)],CE);var dce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Fu=function(o,e){return function(t,i){e(t,i,o)}},G1;const _u=new le("referenceSearchVisible",!1,m("referenceSearchVisible","Whether reference peek is visible, like 'Peek References' or 'Peek Definition'"));var gh;let R_=(gh=class{static get(e){return e.getContribution(G1.ID)}constructor(e,t,i,n,s,r,a,l){this._defaultTreeKeyboardSupport=e,this._editor=t,this._editorService=n,this._notificationService=s,this._instantiationService=r,this._storageService=a,this._configurationService=l,this._disposables=new X,this._requestIdPool=0,this._ignoreModelChangeEvent=!1,this._referenceSearchVisible=_u.bindTo(i)}dispose(){this._referenceSearchVisible.reset(),this._disposables.dispose(),this._widget?.dispose(),this._model?.dispose(),this._widget=void 0,this._model=void 0}toggleWidget(e,t,i){let n;if(this._widget&&(n=this._widget.position),this.closeWidget(),n&&e.containsPosition(n))return;this._peekMode=i,this._referenceSearchVisible.set(!0),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>{this.closeWidget()})),this._disposables.add(this._editor.onDidChangeModel(()=>{this._ignoreModelChangeEvent||this.closeWidget()}));const s="peekViewLayout",r=lce.fromJSON(this._storageService.get(s,0,"{}"));this._widget=this._instantiationService.createInstance(CE,this._editor,this._defaultTreeKeyboardSupport,r),this._widget.setTitle(m("labelLoading","Loading...")),this._widget.show(e),this._disposables.add(this._widget.onDidClose(()=>{t.cancel(),this._widget?(this._storageService.store(s,JSON.stringify(this._widget.layoutData),0,1),this._widget.isClosing||this.closeWidget(),this._widget=void 0):this.closeWidget()})),this._disposables.add(this._widget.onDidSelectReference(l=>{const{element:c,kind:d}=l;if(c)switch(d){case"open":(l.source!=="editor"||!this._configurationService.getValue("editor.stablePeek"))&&this.openReference(c,!1,!1);break;case"side":this.openReference(c,!0,!1);break;case"goto":i?this._gotoReference(c,!0):this.openReference(c,!1,!0);break}}));const a=++this._requestIdPool;t.then(l=>{if(a!==this._requestIdPool||!this._widget){l.dispose();return}return this._model?.dispose(),this._model=l,this._widget.setModel(this._model).then(()=>{if(this._widget&&this._model&&this._editor.hasModel()){this._model.isEmpty?this._widget.setMetaTitle(""):this._widget.setMetaTitle(m("metaTitle.N","{0} ({1})",this._model.title,this._model.references.length));const c=this._editor.getModel().uri,d=new P(e.startLineNumber,e.startColumn),h=this._model.nearestReference(c,d);if(h)return this._widget.setSelection(h).then(()=>{this._widget&&this._editor.getOption(87)==="editor"&&this._widget.focusOnPreviewEditor()})}})},l=>{this._notificationService.error(l)})}changeFocusBetweenPreviewAndReferences(){this._widget&&(this._widget.isPreviewEditorFocused()?this._widget.focusOnReferenceTree():this._widget.focusOnPreviewEditor())}async goToNextOrPreviousReference(e){if(!this._editor.hasModel()||!this._model||!this._widget)return;const t=this._widget.position;if(!t)return;const i=this._model.nearestReference(this._editor.getModel().uri,t);if(!i)return;const n=this._model.nextOrPreviousReference(i,e),s=this._editor.hasTextFocus(),r=this._widget.isPreviewEditorFocused();await this._widget.setSelection(n),await this._gotoReference(n,!1),s?this._editor.focus():this._widget&&r&&this._widget.focusOnPreviewEditor()}async revealReference(e){!this._editor.hasModel()||!this._model||!this._widget||await this._widget.revealReference(e)}closeWidget(e=!0){this._widget?.dispose(),this._model?.dispose(),this._referenceSearchVisible.reset(),this._disposables.clear(),this._widget=void 0,this._model=void 0,e&&this._editor.focus(),this._requestIdPool+=1}_gotoReference(e,t){this._widget?.hide(),this._ignoreModelChangeEvent=!0;const i=I.lift(e.range).collapseToStart();return this._editorService.openCodeEditor({resource:e.uri,options:{selection:i,selectionSource:"code.jump",pinned:t}},this._editor).then(n=>{if(this._ignoreModelChangeEvent=!1,!n||!this._widget){this.closeWidget();return}if(this._editor===n)this._widget.show(i),this._widget.focusOnReferenceTree();else{const s=G1.get(n),r=this._model.clone();this.closeWidget(),n.focus(),s?.toggleWidget(i,wa(a=>Promise.resolve(r)),this._peekMode??!1)}},n=>{this._ignoreModelChangeEvent=!1,Ze(n)})}openReference(e,t,i){t||this.closeWidget();const{uri:n,range:s}=e;this._editorService.openCodeEditor({resource:n,options:{selection:s,selectionSource:"code.jump",pinned:i}},this._editor,t)}},G1=gh,gh.ID="editor.contrib.referencesController",gh);R_=G1=dce([Fu(2,De),Fu(3,Pt),Fu(4,mn),Fu(5,ke),Fu(6,du),Fu(7,lt)],R_);function bu(o,e){const t=Qle(o);if(!t)return;const i=R_.get(t);i&&e(i)}Nn.registerCommandAndKeybindingRule({id:"togglePeekWidgetFocus",weight:100,primary:Vp(2089,60),when:re.or(_u,qn.inPeekEditor),handler(o){bu(o,e=>{e.changeFocusBetweenPreviewAndReferences()})}});Nn.registerCommandAndKeybindingRule({id:"goToNextReference",weight:90,primary:62,secondary:[70],when:re.or(_u,qn.inPeekEditor),handler(o){bu(o,e=>{e.goToNextOrPreviousReference(!0)})}});Nn.registerCommandAndKeybindingRule({id:"goToPreviousReference",weight:90,primary:1086,secondary:[1094],when:re.or(_u,qn.inPeekEditor),handler(o){bu(o,e=>{e.goToNextOrPreviousReference(!1)})}});bt.registerCommandAlias("goToNextReferenceFromEmbeddedEditor","goToNextReference");bt.registerCommandAlias("goToPreviousReferenceFromEmbeddedEditor","goToPreviousReference");bt.registerCommandAlias("closeReferenceSearchEditor","closeReferenceSearch");bt.registerCommand("closeReferenceSearch",o=>bu(o,e=>e.closeWidget()));Nn.registerKeybindingRule({id:"closeReferenceSearch",weight:-1,primary:9,secondary:[1033],when:re.and(qn.inPeekEditor,re.not("config.editor.stablePeek"))});Nn.registerKeybindingRule({id:"closeReferenceSearch",weight:250,primary:9,secondary:[1033],when:re.and(_u,re.not("config.editor.stablePeek"),re.or(K.editorTextFocus,W9.negate()))});Nn.registerCommandAndKeybindingRule({id:"revealReference",weight:200,primary:3,mac:{primary:3,secondary:[2066]},when:re.and(_u,z9,k2.negate(),D2.negate()),handler(o){const t=o.get(mo).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof zc&&bu(o,i=>i.revealReference(t[0]))}});Nn.registerCommandAndKeybindingRule({id:"openReferenceToSide",weight:100,primary:2051,mac:{primary:259},when:re.and(_u,z9,k2.negate(),D2.negate()),handler(o){const t=o.get(mo).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof zc&&bu(o,i=>i.openReference(t[0],!0,!0))}});bt.registerCommand("openReference",o=>{const t=o.get(mo).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof zc&&bu(o,i=>i.openReference(t[0],!1,!0))});var oB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Wm=function(o,e){return function(t,i){e(t,i,o)}};const dM=new le("hasSymbols",!1,m("hasSymbols","Whether there are symbol locations that can be navigated via keyboard-only.")),Ry=He("ISymbolNavigationService");let vE=class{constructor(e,t,i,n){this._editorService=t,this._notificationService=i,this._keybindingService=n,this._currentModel=void 0,this._currentIdx=-1,this._ignoreEditorChange=!1,this._ctxHasSymbols=dM.bindTo(e)}reset(){this._ctxHasSymbols.reset(),this._currentState?.dispose(),this._currentMessage?.dispose(),this._currentModel=void 0,this._currentIdx=-1}put(e){const t=e.parent.parent;if(t.references.length<=1){this.reset();return}this._currentModel=t,this._currentIdx=t.references.indexOf(e),this._ctxHasSymbols.set(!0),this._showMessage();const i=new wE(this._editorService),n=i.onDidChange(s=>{if(this._ignoreEditorChange)return;const r=this._editorService.getActiveCodeEditor();if(!r)return;const a=r.getModel(),l=r.getPosition();if(!a||!l)return;let c=!1,d=!1;for(const h of t.references)if(WT(h.uri,a.uri))c=!0,d=d||I.containsPosition(h.range,l);else if(c)break;(!c||!d)&&this.reset()});this._currentState=No(i,n)}revealNext(e){if(!this._currentModel)return Promise.resolve();this._currentIdx+=1,this._currentIdx%=this._currentModel.references.length;const t=this._currentModel.references[this._currentIdx];return this._showMessage(),this._ignoreEditorChange=!0,this._editorService.openCodeEditor({resource:t.uri,options:{selection:I.collapseToStart(t.range),selectionRevealType:3}},e).finally(()=>{this._ignoreEditorChange=!1})}_showMessage(){this._currentMessage?.dispose();const e=this._keybindingService.lookupKeybinding("editor.gotoNextSymbolFromResult"),t=e?m("location.kb","Symbol {0} of {1}, {2} for next",this._currentIdx+1,this._currentModel.references.length,e.getLabel()):m("location","Symbol {0} of {1}",this._currentIdx+1,this._currentModel.references.length);this._currentMessage=this._notificationService.status(t)}};vE=oB([Wm(0,De),Wm(1,Pt),Wm(2,mn),Wm(3,vt)],vE);Qe(Ry,vE,1);ge(new class extends co{constructor(){super({id:"editor.gotoNextSymbolFromResult",precondition:dM,kbOpts:{weight:100,primary:70}})}runEditorCommand(o,e){return o.get(Ry).revealNext(e)}});Nn.registerCommandAndKeybindingRule({id:"editor.gotoNextSymbolFromResult.cancel",weight:100,when:dM,primary:9,handler(o){o.get(Ry).reset()}});let wE=class{constructor(e){this._listener=new Map,this._disposables=new X,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._disposables.add(e.onCodeEditorRemove(this._onDidRemoveEditor,this)),this._disposables.add(e.onCodeEditorAdd(this._onDidAddEditor,this)),e.listCodeEditors().forEach(this._onDidAddEditor,this)}dispose(){this._disposables.dispose(),this._onDidChange.dispose(),xt(this._listener.values())}_onDidAddEditor(e){this._listener.set(e,No(e.onDidChangeCursorPosition(t=>this._onDidChange.fire({editor:e})),e.onDidChangeModelContent(t=>this._onDidChange.fire({editor:e}))))}_onDidRemoveEditor(e){this._listener.get(e)?.dispose(),this._listener.delete(e)}};wE=oB([Wm(0,Pt)],wE);var hce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},R4=function(o,e){return function(t,i){e(t,i,o)}},Z1,vc;let ca=(vc=class{static get(e){return e.getContribution(Z1.ID)}constructor(e,t,i){this._openerService=i,this._messageWidget=new Dn,this._messageListeners=new X,this._mouseOverMessage=!1,this._editor=e,this._visible=Z1.MESSAGE_VISIBLE.bindTo(t)}dispose(){this._message?.dispose(),this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,t){El(ra(e)?e.value:e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),this._message=ra(e)?oy(e,{actionHandler:{callback:n=>{this.closeMessage(),UT(this._openerService,n,ra(e)?e.isTrusted:void 0)},disposables:this._messageListeners}}):void 0,this._messageWidget.value=new A4(this._editor,t,typeof e=="string"?e:this._message.element),this._messageListeners.add(J.debounce(this._editor.onDidBlurEditorText,(n,s)=>s,0)(()=>{this._mouseOverMessage||this._messageWidget.value&&yi(Xi(),this._messageWidget.value.getDomNode())||this.closeMessage()})),this._messageListeners.add(this._editor.onDidChangeCursorPosition(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidDispose(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidChangeModel(()=>this.closeMessage())),this._messageListeners.add(U(this._messageWidget.value.getDomNode(),ee.MOUSE_ENTER,()=>this._mouseOverMessage=!0,!0)),this._messageListeners.add(U(this._messageWidget.value.getDomNode(),ee.MOUSE_LEAVE,()=>this._mouseOverMessage=!1,!0));let i;this._messageListeners.add(this._editor.onMouseMove(n=>{n.target.position&&(i?i.containsPosition(n.target.position)||this.closeMessage():i=new I(t.lineNumber-3,1,n.target.position.lineNumber+3,1))}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(A4.fadeOut(this._messageWidget.value))}},Z1=vc,vc.ID="editor.contrib.messageController",vc.MESSAGE_VISIBLE=new le("messageVisible",!1,m("messageVisible","Whether the editor is currently showing an inline message")),vc);ca=Z1=hce([R4(1,De),R4(2,Vo)],ca);const uce=co.bindToContribution(ca.get);ge(new uce({id:"leaveEditorMessage",precondition:ca.MESSAGE_VISIBLE,handler:o=>o.closeMessage(),kbOpts:{weight:130,primary:9}}));let A4=class{static fadeOut(e){const t=()=>{e.dispose(),clearTimeout(i),e.getDomNode().removeEventListener("animationend",t)},i=setTimeout(t,110);return e.getDomNode().addEventListener("animationend",t),e.getDomNode().classList.add("fadeOut"),{dispose:t}}constructor(e,{lineNumber:t,column:i},n){this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(t,t,0),this._position={lineNumber:t,column:i},this._domNode=document.createElement("div"),this._domNode.classList.add("monaco-editor-overlaymessage"),this._domNode.style.marginLeft="-6px";const s=document.createElement("div");s.classList.add("anchor","top"),this._domNode.appendChild(s);const r=document.createElement("div");typeof n=="string"?(r.classList.add("message"),r.textContent=n):(n.classList.add("message"),r.appendChild(n)),this._domNode.appendChild(r);const a=document.createElement("div");a.classList.add("anchor","below"),this._domNode.appendChild(a),this._editor.addContentWidget(this),this._domNode.classList.add("fadeIn")}dispose(){this._editor.removeContentWidget(this)}getId(){return"messageoverlay"}getDomNode(){return this._domNode}getPosition(){return{position:this._position,preference:[1,2],positionAffinity:1}}afterRender(e){this._domNode.classList.toggle("below",e===2)}};Ho(ca.ID,ca,4);function yE(o,e){return e.uri.scheme===o.uri.scheme?!0:!zx(e.uri,Te.walkThroughSnippet,Te.vscodeChatCodeBlock,Te.vscodeChatCodeCompareBlock)}async function lb(o,e,t,i,n){const r=t.ordered(o,i).map(l=>Promise.resolve(n(l,o,e)).then(void 0,c=>{$n(c)})),a=await Promise.all(r);return Ag(a.flat()).filter(l=>yE(o,l))}function Ay(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideDefinition(r,a,n))}function hM(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideDeclaration(r,a,n))}function uM(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideImplementation(r,a,n))}function fM(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideTypeDefinition(r,a,n))}function cb(o,e,t,i,n,s){return lb(e,t,o,n,async(r,a,l)=>{const c=(await r.provideReferences(a,l,{includeDeclaration:!0},s))?.filter(h=>yE(a,h));if(!i||!c||c.length!==2)return c;const d=(await r.provideReferences(a,l,{includeDeclaration:!1},s))?.filter(h=>yE(a,h));return d&&d.length===1?d:c})}async function Da(o){const e=await o(),t=new ds(e,""),i=t.references.map(n=>n.link);return t.dispose(),i}Wo("_executeDefinitionProvider",(o,e,t)=>{const i=o.get(Se),n=Ay(i.definitionProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeDefinitionProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=Ay(i.definitionProvider,e,t,!0,ut.None);return Da(()=>n)});Wo("_executeTypeDefinitionProvider",(o,e,t)=>{const i=o.get(Se),n=fM(i.typeDefinitionProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeTypeDefinitionProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=fM(i.typeDefinitionProvider,e,t,!0,ut.None);return Da(()=>n)});Wo("_executeDeclarationProvider",(o,e,t)=>{const i=o.get(Se),n=hM(i.declarationProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeDeclarationProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=hM(i.declarationProvider,e,t,!0,ut.None);return Da(()=>n)});Wo("_executeReferenceProvider",(o,e,t)=>{const i=o.get(Se),n=cb(i.referenceProvider,e,t,!1,!1,ut.None);return Da(()=>n)});Wo("_executeReferenceProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=cb(i.referenceProvider,e,t,!1,!0,ut.None);return Da(()=>n)});Wo("_executeImplementationProvider",(o,e,t)=>{const i=o.get(Se),n=uM(i.implementationProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeImplementationProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=uM(i.implementationProvider,e,t,!0,ut.None);return Da(()=>n)});Eo.appendMenuItem($e.EditorContext,{submenu:$e.EditorContextPeek,title:m("peek.submenu","Peek"),group:"navigation",order:100});class Ig{static is(e){return!e||typeof e!="object"?!1:!!(e instanceof Ig||P.isIPosition(e.position)&&e.model)}constructor(e,t){this.model=e,this.position=t}}const wo=class wo extends mz{static all(){return wo._allSymbolNavigationCommands.values()}static _patchConfig(e){const t={...e,f1:!0};if(t.menu)for(const i of st.wrap(t.menu))(i.id===$e.EditorContext||i.id===$e.EditorContextPeek)&&(i.when=re.and(e.precondition,i.when));return t}constructor(e,t){super(wo._patchConfig(t)),this.configuration=e,wo._allSymbolNavigationCommands.set(t.id,this)}runEditorCommand(e,t,i,n){if(!t.hasModel())return Promise.resolve(void 0);const s=e.get(mn),r=e.get(Pt),a=e.get(G_),l=e.get(Ry),c=e.get(Se),d=e.get(ke),h=t.getModel(),u=t.getPosition(),f=Ig.is(i)?i:new Ig(h,u),g=new kle(t,5),p=TH(this._getLocationModel(c,f.model,f.position,g.token),g.token).then(async _=>{if(!_||g.token.isCancellationRequested)return;El(_.ariaMessage);let b;if(_.referenceAt(h.uri,u)){const w=this._getAlternativeCommand(t);!wo._activeAlternativeCommands.has(w)&&wo._allSymbolNavigationCommands.has(w)&&(b=wo._allSymbolNavigationCommands.get(w))}const C=_.references.length;if(C===0){if(!this.configuration.muteMessage){const w=h.getWordAtPosition(u);ca.get(t)?.showMessage(this._getNoResultFoundMessage(w),u)}}else if(C===1&&b)wo._activeAlternativeCommands.add(this.desc.id),d.invokeFunction(w=>b.runEditorCommand(w,t,i,n).finally(()=>{wo._activeAlternativeCommands.delete(this.desc.id)}));else return this._onResult(r,l,t,_,n)},_=>{s.error(_)}).finally(()=>{g.dispose()});return a.showWhile(p,250),p}async _onResult(e,t,i,n,s){const r=this._getGoToPreference(i);if(!(i instanceof Gh)&&(this.configuration.openInPeek||r==="peek"&&n.references.length>1))this._openInPeek(i,n,s);else{const a=n.firstReference(),l=n.references.length>1&&r==="gotoAndPeek",c=await this._openReference(i,e,a,this.configuration.openToSide,!l);l&&c?this._openInPeek(c,n,s):n.dispose(),r==="goto"&&t.put(a)}}async _openReference(e,t,i,n,s){let r;if(tH(i)&&(r=i.targetSelectionRange),r||(r=i.range),!r)return;const a=await t.openCodeEditor({resource:i.uri,options:{selection:I.collapseToStart(r),selectionRevealType:3,selectionSource:"code.jump"}},e,n);if(a){if(s){const l=a.getModel(),c=a.createDecorationsCollection([{range:r,options:{description:"symbol-navigate-action-highlight",className:"symbolHighlight"}}]);setTimeout(()=>{a.getModel()===l&&c.clear()},350)}return a}}_openInPeek(e,t,i){const n=R_.get(e);n&&e.hasModel()?n.toggleWidget(i??e.getSelection(),wa(s=>Promise.resolve(t)),this.configuration.openInPeek):t.dispose()}};wo._allSymbolNavigationCommands=new Map,wo._activeAlternativeCommands=new Set;let Nl=wo;class db extends Nl{async _getLocationModel(e,t,i,n){return new ds(await Ay(e.definitionProvider,t,i,!1,n),m("def.title","Definitions"))}_getNoResultFoundMessage(e){return e&&e.word?m("noResultWord","No definition found for '{0}'",e.word):m("generic.noResults","No definition found")}_getAlternativeCommand(e){return e.getOption(58).alternativeDefinitionCommand}_getGoToPreference(e){return e.getOption(58).multipleDefinitions}}var wc;Rn((wc=class extends db{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:wc.id,title:{...di("actions.goToDecl.label","Go to Definition"),mnemonicTitle:m({key:"miGotoDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Definition")},precondition:K.hasDefinitionProvider,keybinding:[{when:K.editorTextFocus,primary:70,weight:100},{when:re.and(K.editorTextFocus,F9),primary:2118,weight:100}],menu:[{id:$e.EditorContext,group:"navigation",order:1.1},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:2}]}),bt.registerCommandAlias("editor.action.goToDeclaration",wc.id)}},wc.id="editor.action.revealDefinition",wc));var yc;Rn((yc=class extends db{constructor(){super({openToSide:!0,openInPeek:!1,muteMessage:!1},{id:yc.id,title:di("actions.goToDeclToSide.label","Open Definition to the Side"),precondition:re.and(K.hasDefinitionProvider,K.isInEmbeddedEditor.toNegated()),keybinding:[{when:K.editorTextFocus,primary:Vp(2089,70),weight:100},{when:re.and(K.editorTextFocus,F9),primary:Vp(2089,2118),weight:100}]}),bt.registerCommandAlias("editor.action.openDeclarationToTheSide",yc.id)}},yc.id="editor.action.revealDefinitionAside",yc));var Sc;Rn((Sc=class extends db{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:Sc.id,title:di("actions.previewDecl.label","Peek Definition"),precondition:re.and(K.hasDefinitionProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),keybinding:{when:K.editorTextFocus,primary:582,linux:{primary:3140},weight:100},menu:{id:$e.EditorContextPeek,group:"peek",order:2}}),bt.registerCommandAlias("editor.action.previewDeclaration",Sc.id)}},Sc.id="editor.action.peekDefinition",Sc));class rB extends Nl{async _getLocationModel(e,t,i,n){return new ds(await hM(e.declarationProvider,t,i,!1,n),m("decl.title","Declarations"))}_getNoResultFoundMessage(e){return e&&e.word?m("decl.noResultWord","No declaration found for '{0}'",e.word):m("decl.generic.noResults","No declaration found")}_getAlternativeCommand(e){return e.getOption(58).alternativeDeclarationCommand}_getGoToPreference(e){return e.getOption(58).multipleDeclarations}}var mh;Rn((mh=class extends rB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:mh.id,title:{...di("actions.goToDeclaration.label","Go to Declaration"),mnemonicTitle:m({key:"miGotoDeclaration",comment:["&& denotes a mnemonic"]},"Go to &&Declaration")},precondition:re.and(K.hasDeclarationProvider,K.isInEmbeddedEditor.toNegated()),menu:[{id:$e.EditorContext,group:"navigation",order:1.3},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:3}]})}_getNoResultFoundMessage(e){return e&&e.word?m("decl.noResultWord","No declaration found for '{0}'",e.word):m("decl.generic.noResults","No declaration found")}},mh.id="editor.action.revealDeclaration",mh));Rn(class extends rB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.peekDeclaration",title:di("actions.peekDecl.label","Peek Declaration"),precondition:re.and(K.hasDeclarationProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),menu:{id:$e.EditorContextPeek,group:"peek",order:3}})}});class aB extends Nl{async _getLocationModel(e,t,i,n){return new ds(await fM(e.typeDefinitionProvider,t,i,!1,n),m("typedef.title","Type Definitions"))}_getNoResultFoundMessage(e){return e&&e.word?m("goToTypeDefinition.noResultWord","No type definition found for '{0}'",e.word):m("goToTypeDefinition.generic.noResults","No type definition found")}_getAlternativeCommand(e){return e.getOption(58).alternativeTypeDefinitionCommand}_getGoToPreference(e){return e.getOption(58).multipleTypeDefinitions}}var ph;Rn((ph=class extends aB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:ph.ID,title:{...di("actions.goToTypeDefinition.label","Go to Type Definition"),mnemonicTitle:m({key:"miGotoTypeDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Type Definition")},precondition:K.hasTypeDefinitionProvider,keybinding:{when:K.editorTextFocus,primary:0,weight:100},menu:[{id:$e.EditorContext,group:"navigation",order:1.4},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:3}]})}},ph.ID="editor.action.goToTypeDefinition",ph));var _h;Rn((_h=class extends aB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:_h.ID,title:di("actions.peekTypeDefinition.label","Peek Type Definition"),precondition:re.and(K.hasTypeDefinitionProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),menu:{id:$e.EditorContextPeek,group:"peek",order:4}})}},_h.ID="editor.action.peekTypeDefinition",_h));class lB extends Nl{async _getLocationModel(e,t,i,n){return new ds(await uM(e.implementationProvider,t,i,!1,n),m("impl.title","Implementations"))}_getNoResultFoundMessage(e){return e&&e.word?m("goToImplementation.noResultWord","No implementation found for '{0}'",e.word):m("goToImplementation.generic.noResults","No implementation found")}_getAlternativeCommand(e){return e.getOption(58).alternativeImplementationCommand}_getGoToPreference(e){return e.getOption(58).multipleImplementations}}var bh;Rn((bh=class extends lB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:bh.ID,title:{...di("actions.goToImplementation.label","Go to Implementations"),mnemonicTitle:m({key:"miGotoImplementation",comment:["&& denotes a mnemonic"]},"Go to &&Implementations")},precondition:K.hasImplementationProvider,keybinding:{when:K.editorTextFocus,primary:2118,weight:100},menu:[{id:$e.EditorContext,group:"navigation",order:1.45},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:4}]})}},bh.ID="editor.action.goToImplementation",bh));var Ch;Rn((Ch=class extends lB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:Ch.ID,title:di("actions.peekImplementation.label","Peek Implementations"),precondition:re.and(K.hasImplementationProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),keybinding:{when:K.editorTextFocus,primary:3142,weight:100},menu:{id:$e.EditorContextPeek,group:"peek",order:5}})}},Ch.ID="editor.action.peekImplementation",Ch));class cB extends Nl{_getNoResultFoundMessage(e){return e?m("references.no","No references found for '{0}'",e.word):m("references.noGeneric","No references found")}_getAlternativeCommand(e){return e.getOption(58).alternativeReferenceCommand}_getGoToPreference(e){return e.getOption(58).multipleReferences}}Rn(class extends cB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:"editor.action.goToReferences",title:{...di("goToReferences.label","Go to References"),mnemonicTitle:m({key:"miGotoReference",comment:["&& denotes a mnemonic"]},"Go to &&References")},precondition:re.and(K.hasReferenceProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),keybinding:{when:K.editorTextFocus,primary:1094,weight:100},menu:[{id:$e.EditorContext,group:"navigation",order:1.45},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:5}]})}async _getLocationModel(e,t,i,n){return new ds(await cb(e.referenceProvider,t,i,!0,!1,n),m("ref.title","References"))}});Rn(class extends cB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.referenceSearch.trigger",title:di("references.action.label","Peek References"),precondition:re.and(K.hasReferenceProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),menu:{id:$e.EditorContextPeek,group:"peek",order:6}})}async _getLocationModel(e,t,i,n){return new ds(await cb(e.referenceProvider,t,i,!1,!1,n),m("ref.title","References"))}});class fce extends Nl{constructor(e,t,i){super(e,{id:"editor.action.goToLocation",title:di("label.generic","Go to Any Symbol"),precondition:re.and(qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated())}),this._references=t,this._gotoMultipleBehaviour=i}async _getLocationModel(e,t,i,n){return new ds(this._references,m("generic.title","Locations"))}_getNoResultFoundMessage(e){return e&&m("generic.noResult","No results for '{0}'",e.word)||""}_getGoToPreference(e){return this._gotoMultipleBehaviour??e.getOption(58).multipleReferences}_getAlternativeCommand(){return""}}bt.registerCommand({id:"editor.action.goToLocations",metadata:{description:"Go to locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:ve},{name:"position",description:"The position at which to start",constraint:P.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto`"},{name:"noResultsMessage",description:"Human readable message that shows when locations is empty."}]},handler:async(o,e,t,i,n,s,r)=>{ai(ve.isUri(e)),ai(P.isIPosition(t)),ai(Array.isArray(i)),ai(typeof n>"u"||typeof n=="string"),ai(typeof r>"u"||typeof r=="boolean");const a=o.get(Pt),l=await a.openCodeEditor({resource:e},a.getFocusedCodeEditor());if(Y8(l))return l.setPosition(t),l.revealPositionInCenterIfOutsideViewport(t,0),l.invokeWithinContext(c=>{const d=new class extends fce{_getNoResultFoundMessage(h){return s||super._getNoResultFoundMessage(h)}}({muteMessage:!s,openInPeek:!!r,openToSide:!1},i,n);c.get(ke).invokeFunction(d.run.bind(d),l)})}});bt.registerCommand({id:"editor.action.peekLocations",metadata:{description:"Peek locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:ve},{name:"position",description:"The position at which to start",constraint:P.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto`"}]},handler:async(o,e,t,i,n)=>{o.get(hi).executeCommand("editor.action.goToLocations",e,t,i,n,void 0,!0)}});bt.registerCommand({id:"editor.action.findReferences",handler:(o,e,t)=>{ai(ve.isUri(e)),ai(P.isIPosition(t));const i=o.get(Se),n=o.get(Pt);return n.openCodeEditor({resource:e},n.getFocusedCodeEditor()).then(s=>{if(!Y8(s)||!s.hasModel())return;const r=R_.get(s);if(!r)return;const a=wa(c=>cb(i.referenceProvider,s.getModel(),P.lift(t),!1,!1,c).then(d=>new ds(d,m("ref.title","References")))),l=new I(t.lineNumber,t.column,t.lineNumber,t.column);return Promise.resolve(r.toggleWidget(l,a,!1))})}});bt.registerCommandAlias("editor.action.showReferences","editor.action.peekLocations");var gce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fL=function(o,e){return function(t,i){e(t,i,o)}},Hm,Lc;let A_=(Lc=class{constructor(e,t,i,n){this.textModelResolverService=t,this.languageService=i,this.languageFeaturesService=n,this.toUnhook=new X,this.toUnhookForKeyboard=new X,this.currentWordAtPosition=null,this.previousPromise=null,this.editor=e,this.linkDecorations=this.editor.createDecorationsCollection();const s=new X8(e);this.toUnhook.add(s),this.toUnhook.add(s.onMouseMoveOrRelevantKeyDown(([r,a])=>{this.startFindDefinitionFromMouse(r,a??void 0)})),this.toUnhook.add(s.onExecute(r=>{this.isEnabled(r)&&this.gotoDefinition(r.target.position,r.hasSideBySideModifier).catch(a=>{Ze(a)}).finally(()=>{this.removeLinkDecorations()})})),this.toUnhook.add(s.onCancel(()=>{this.removeLinkDecorations(),this.currentWordAtPosition=null}))}static get(e){return e.getContribution(Hm.ID)}async startFindDefinitionFromCursor(e){await this.startFindDefinition(e),this.toUnhookForKeyboard.add(this.editor.onDidChangeCursorPosition(()=>{this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear()})),this.toUnhookForKeyboard.add(this.editor.onKeyDown(t=>{t&&(this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear())}))}startFindDefinitionFromMouse(e,t){if(e.target.type===9&&this.linkDecorations.length>0)return;if(!this.editor.hasModel()||!this.isEnabled(e,t)){this.currentWordAtPosition=null,this.removeLinkDecorations();return}const i=e.target.position;this.startFindDefinition(i)}async startFindDefinition(e){this.toUnhookForKeyboard.clear();const t=e?this.editor.getModel()?.getWordAtPosition(e):null;if(!t){this.currentWordAtPosition=null,this.removeLinkDecorations();return}if(this.currentWordAtPosition&&this.currentWordAtPosition.startColumn===t.startColumn&&this.currentWordAtPosition.endColumn===t.endColumn&&this.currentWordAtPosition.word===t.word)return;this.currentWordAtPosition=t;const i=new xle(this.editor,15);this.previousPromise&&(this.previousPromise.cancel(),this.previousPromise=null),this.previousPromise=wa(r=>this.findDefinition(e,r));let n;try{n=await this.previousPromise}catch(r){Ze(r);return}if(!n||!n.length||!i.validate(this.editor)){this.removeLinkDecorations();return}const s=n[0].originSelectionRange?I.lift(n[0].originSelectionRange):new I(e.lineNumber,t.startColumn,e.lineNumber,t.endColumn);if(n.length>1){let r=s;for(const{originSelectionRange:a}of n)a&&(r=I.plusRange(r,a));this.addDecoration(r,new Js().appendText(m("multipleResults","Click to show {0} definitions.",n.length)))}else{const r=n[0];if(!r.uri)return;this.textModelResolverService.createModelReference(r.uri).then(a=>{if(!a.object||!a.object.textEditorModel){a.dispose();return}const{object:{textEditorModel:l}}=a,{startLineNumber:c}=r.range;if(c<1||c>l.getLineCount()){a.dispose();return}const d=this.getPreviewValue(l,c,r),h=this.languageService.guessLanguageIdByFilepathOrFirstLine(l.uri);this.addDecoration(s,d?new Js().appendCodeblock(h||"",d):void 0),a.dispose()})}}getPreviewValue(e,t,i){let n=i.range;return n.endLineNumber-n.startLineNumber>=Hm.MAX_SOURCE_PREVIEW_LINES&&(n=this.getPreviewRangeBasedOnIndentation(e,t)),this.stripIndentationFromPreviewRange(e,t,n)}stripIndentationFromPreviewRange(e,t,i){let s=e.getLineFirstNonWhitespaceColumn(t);for(let a=t+1;a{const n=!t&&this.editor.getOption(89)&&!this.isInPeekEditor(i);return new db({openToSide:t,openInPeek:n,muteMessage:!0},{title:{value:"",original:""},id:"",precondition:void 0}).run(i)})}isInPeekEditor(e){const t=e.get(De);return qn.inPeekEditor.getValue(t)}dispose(){this.toUnhook.dispose(),this.toUnhookForKeyboard.dispose()}},Hm=Lc,Lc.ID="editor.contrib.gotodefinitionatposition",Lc.MAX_SOURCE_PREVIEW_LINES=8,Lc);A_=Hm=gce([fL(1,fo),fL(2,qt),fL(3,Se)],A_);Ho(A_.ID,A_,2);const dB="editor.action.inlineSuggest.commit",hB="editor.action.inlineSuggest.showPrevious",uB="editor.action.inlineSuggest.showNext";var gM=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Io=function(o,e){return function(t,i){e(t,i,o)}},Y1;let SE=class extends z{constructor(e,t,i){super(),this.editor=e,this.model=t,this.instantiationService=i,this.alwaysShowToolbar=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).showToolbar==="always"),this.sessionPosition=void 0,this.position=Ce(this,n=>{const s=this.model.read(n)?.primaryGhostText.read(n);if(!this.alwaysShowToolbar.read(n)||!s||s.parts.length===0)return this.sessionPosition=void 0,null;const r=s.parts[0].column;this.sessionPosition&&this.sessionPosition.lineNumber!==s.lineNumber&&(this.sessionPosition=void 0);const a=new P(s.lineNumber,Math.min(r,this.sessionPosition?.column??Number.MAX_SAFE_INTEGER));return this.sessionPosition=a,a}),this._register(To((n,s)=>{const r=this.model.read(n);if(!r||!this.alwaysShowToolbar.read(n))return;const a=cu((c,d)=>{const h=d.add(this.instantiationService.createInstance(Eg,this.editor,!0,this.position,r.selectedInlineCompletionIndex,r.inlineCompletionsCount,r.activeCommands));return e.addContentWidget(h),d.add(_e(()=>e.removeContentWidget(h))),d.add(We(u=>{this.position.read(u)&&r.lastTriggerKind.read(u)!==Cl.Explicit&&r.triggerExplicitly()})),h}),l=YT(this,(c,d)=>!!this.position.read(c)||!!d);s.add(We(c=>{l.read(c)&&a.read(c)}))}))}};SE=gM([Io(2,ke)],SE);const mce=Wi("inline-suggestion-hints-next",ie.chevronRight,m("parameterHintsNextIcon","Icon for show next parameter hint.")),pce=Wi("inline-suggestion-hints-previous",ie.chevronLeft,m("parameterHintsPreviousIcon","Icon for show previous parameter hint."));var xc;let Eg=(xc=class extends z{static get dropDownVisible(){return this._dropDownVisible}createCommandAction(e,t,i){const n=new Fs(e,t,i,!0,()=>this._commandService.executeCommand(e)),s=this.keybindingService.lookupKeybinding(e,this._contextKeyService);let r=t;return s&&(r=m({key:"content",comment:["A label","A keybinding"]},"{0} ({1})",t,s.getLabel())),n.tooltip=r,n}constructor(e,t,i,n,s,r,a,l,c,d,h){super(),this.editor=e,this.withBorder=t,this._position=i,this._currentSuggestionIdx=n,this._suggestionCount=s,this._extraCommands=r,this._commandService=a,this.keybindingService=c,this._contextKeyService=d,this._menuService=h,this.id=`InlineSuggestionHintsContentWidget${Y1.id++}`,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this.nodes=tt("div.inlineSuggestionsHints",{className:this.withBorder?".withBorder":""},[tt("div@toolBar")]),this.previousAction=this.createCommandAction(hB,m("previous","Previous"),Ee.asClassName(pce)),this.availableSuggestionCountAction=new Fs("inlineSuggestionHints.availableSuggestionCount","",void 0,!1),this.nextAction=this.createCommandAction(uB,m("next","Next"),Ee.asClassName(mce)),this.inlineCompletionsActionsMenus=this._register(this._menuService.createMenu($e.InlineCompletionsActions,this._contextKeyService)),this.clearAvailableSuggestionCountLabelDebounced=this._register(new ci(()=>{this.availableSuggestionCountAction.label=""},100)),this.disableButtonsDebounced=this._register(new ci(()=>{this.previousAction.enabled=this.nextAction.enabled=!1},100)),this.toolBar=this._register(l.createInstance(LE,this.nodes.toolBar,$e.InlineSuggestionToolbar,{menuOptions:{renderShortTitle:!0},toolbarOptions:{primaryGroup:u=>u.startsWith("primary")},actionViewItemProvider:(u,f)=>{if(u instanceof so)return l.createInstance(bce,u,void 0);if(u===this.availableSuggestionCountAction){const g=new _ce(void 0,u,{label:!0,icon:!1});return g.setClass("availableSuggestionCount"),g}},telemetrySource:"InlineSuggestionToolbar"})),this.toolBar.setPrependedPrimaryActions([this.previousAction,this.availableSuggestionCountAction,this.nextAction]),this._register(this.toolBar.onDidChangeDropdownVisibility(u=>{Y1._dropDownVisible=u})),this._register(We(u=>{this._position.read(u),this.editor.layoutContentWidget(this)})),this._register(We(u=>{const f=this._suggestionCount.read(u),g=this._currentSuggestionIdx.read(u);f!==void 0?(this.clearAvailableSuggestionCountLabelDebounced.cancel(),this.availableSuggestionCountAction.label=`${g+1}/${f}`):this.clearAvailableSuggestionCountLabelDebounced.schedule(),f!==void 0&&f>1?(this.disableButtonsDebounced.cancel(),this.previousAction.enabled=this.nextAction.enabled=!0):this.disableButtonsDebounced.schedule()})),this._register(We(u=>{const g=this._extraCommands.read(u).map(p=>({class:void 0,id:p.id,enabled:!0,tooltip:p.tooltip||"",label:p.title,run:_=>this._commandService.executeCommand(p.id)}));for(const[p,_]of this.inlineCompletionsActionsMenus.getActions())for(const b of _)b instanceof so&&g.push(b);g.length>0&&g.unshift(new Gi),this.toolBar.setAdditionalSecondaryActions(g)}))}getId(){return this.id}getDomNode(){return this.nodes.root}getPosition(){return{position:this._position.get(),preference:[1,2],positionAffinity:3}}},Y1=xc,xc._dropDownVisible=!1,xc.id=0,xc);Eg=Y1=gM([Io(6,hi),Io(7,ke),Io(8,vt),Io(9,De),Io(10,yr)],Eg);class _ce extends dy{constructor(){super(...arguments),this._className=void 0}setClass(e){this._className=e}render(e){super.render(e),this._className&&e.classList.add(this._className)}updateTooltip(){}}class bce extends zh{updateLabel(){const e=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!e)return super.updateLabel();if(this.label){const t=tt("div.keybinding").root;this._register(new ob(t,Ns,{disableTitle:!0,...Hee})).set(e),this.label.textContent=this._action.label,this.label.appendChild(t),this.label.classList.add("inlineSuggestionStatusBarItemLabel")}}updateTooltip(){}}let LE=class extends $v{constructor(e,t,i,n,s,r,a,l,c){super(e,{resetMenu:t,...i},n,s,r,a,l,c),this.menuId=t,this.options2=i,this.menuService=n,this.contextKeyService=s,this.menu=this._store.add(this.menuService.createMenu(this.menuId,this.contextKeyService,{emitEventsForSubmenuChanges:!0})),this.additionalActions=[],this.prependedPrimaryActions=[],this._store.add(this.menu.onDidChange(()=>this.updateToolbar())),this.updateToolbar()}updateToolbar(){const e=[],t=[];XT(this.menu,this.options2?.menuOptions,{primary:e,secondary:t},this.options2?.toolbarOptions?.primaryGroup,this.options2?.toolbarOptions?.shouldInlineSubmenu,this.options2?.toolbarOptions?.useSeparatorsInPrimaryActions),t.push(...this.additionalActions),e.unshift(...this.prependedPrimaryActions),this.setActions(e,t)}setPrependedPrimaryActions(e){li(this.prependedPrimaryActions,e,(t,i)=>t===i)||(this.prependedPrimaryActions=e,this.updateToolbar())}setAdditionalSecondaryActions(e){li(this.additionalActions,e,(t,i)=>t===i)||(this.additionalActions=e,this.updateToolbar())}};LE=gM([Io(3,yr),Io(4,De),Io(5,Lr),Io(6,vt),Io(7,hi),Io(8,$s)],LE);function Py(o,e,t){const i=gi(o);return!(ei.left+i.width||ti.top+i.height)}let Cce=class{constructor(e,t,i){this.value=e,this.isComplete=t,this.hasLoadingMessage=i}};class fB extends z{constructor(e,t){super(),this._editor=e,this._computer=t,this._onResult=this._register(new A),this.onResult=this._onResult.event,this._firstWaitScheduler=this._register(new ci(()=>this._triggerAsyncComputation(),0)),this._secondWaitScheduler=this._register(new ci(()=>this._triggerSyncComputation(),0)),this._loadingMessageScheduler=this._register(new ci(()=>this._triggerLoadingMessage(),0)),this._state=0,this._asyncIterable=null,this._asyncIterableDone=!1,this._result=[]}dispose(){this._asyncIterable&&(this._asyncIterable.cancel(),this._asyncIterable=null),super.dispose()}get _hoverTime(){return this._editor.getOption(60).delay}get _firstWaitTime(){return this._hoverTime/2}get _secondWaitTime(){return this._hoverTime-this._firstWaitTime}get _loadingMessageTime(){return 3*this._hoverTime}_setState(e,t=!0){this._state=e,t&&this._fireResult()}_triggerAsyncComputation(){this._setState(2),this._secondWaitScheduler.schedule(this._secondWaitTime),this._computer.computeAsync?(this._asyncIterableDone=!1,this._asyncIterable=FH(e=>this._computer.computeAsync(e)),(async()=>{try{for await(const e of this._asyncIterable)e&&(this._result.push(e),this._fireResult());this._asyncIterableDone=!0,(this._state===3||this._state===4)&&this._setState(0)}catch(e){Ze(e)}})()):this._asyncIterableDone=!0}_triggerSyncComputation(){this._computer.computeSync&&(this._result=this._result.concat(this._computer.computeSync())),this._setState(this._asyncIterableDone?0:3)}_triggerLoadingMessage(){this._state===3&&this._setState(4)}_fireResult(){if(this._state===1||this._state===2)return;const e=this._state===0,t=this._state===4;this._onResult.fire(new Cce(this._result.slice(0),e,t))}start(e){if(e===0)this._state===0&&(this._setState(1),this._firstWaitScheduler.schedule(this._firstWaitTime),this._loadingMessageScheduler.schedule(this._loadingMessageTime));else switch(this._state){case 0:this._triggerAsyncComputation(),this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break;case 2:this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break}}cancel(){this._firstWaitScheduler.cancel(),this._secondWaitScheduler.cancel(),this._loadingMessageScheduler.cancel(),this._asyncIterable&&(this._asyncIterable.cancel(),this._asyncIterable=null),this._result=[],this._setState(0,!1)}}class gL{constructor(e,t,i,n){this.priority=e,this.range=t,this.initialMousePosX=i,this.initialMousePosY=n,this.type=1}equals(e){return e.type===1&&this.range.equalsRange(e.range)}canAdoptVisibleHover(e,t){return e.type===1&&t.lineNumber===this.range.startLineNumber}}class Q1{constructor(e,t,i,n,s,r){this.priority=e,this.owner=t,this.range=i,this.initialMousePosX=n,this.initialMousePosY=s,this.supportsMarkerHover=r,this.type=2}equals(e){return e.type===2&&this.owner===e.owner}canAdoptVisibleHover(e,t){return e.type===2&&this.owner===e.owner}}class Ng{constructor(e){this.renderedHoverParts=e}dispose(){for(const e of this.renderedHoverParts)e.dispose()}}const Oy=new class{constructor(){this._participants=[]}register(e){this._participants.push(e)}getAll(){return this._participants}};class mM{constructor(){this._onDidWillResize=new A,this.onDidWillResize=this._onDidWillResize.event,this._onDidResize=new A,this.onDidResize=this._onDidResize.event,this._sashListener=new X,this._size=new rt(0,0),this._minSize=new rt(0,0),this._maxSize=new rt(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),this.domNode=document.createElement("div"),this._eastSash=new an(this.domNode,{getVerticalSashLeft:()=>this._size.width},{orientation:0}),this._westSash=new an(this.domNode,{getVerticalSashLeft:()=>0},{orientation:0}),this._northSash=new an(this.domNode,{getHorizontalSashTop:()=>0},{orientation:1,orthogonalEdge:ov.North}),this._southSash=new an(this.domNode,{getHorizontalSashTop:()=>this._size.height},{orientation:1,orthogonalEdge:ov.South}),this._northSash.orthogonalStartSash=this._westSash,this._northSash.orthogonalEndSash=this._eastSash,this._southSash.orthogonalStartSash=this._westSash,this._southSash.orthogonalEndSash=this._eastSash;let e,t=0,i=0;this._sashListener.add(J.any(this._northSash.onDidStart,this._eastSash.onDidStart,this._southSash.onDidStart,this._westSash.onDidStart)(()=>{e===void 0&&(this._onDidWillResize.fire(),e=this._size,t=0,i=0)})),this._sashListener.add(J.any(this._northSash.onDidEnd,this._eastSash.onDidEnd,this._southSash.onDidEnd,this._westSash.onDidEnd)(()=>{e!==void 0&&(e=void 0,t=0,i=0,this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(this._eastSash.onDidChange(n=>{e&&(i=n.currentX-n.startX,this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,east:!0}))})),this._sashListener.add(this._westSash.onDidChange(n=>{e&&(i=-(n.currentX-n.startX),this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,west:!0}))})),this._sashListener.add(this._northSash.onDidChange(n=>{e&&(t=-(n.currentY-n.startY),this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,north:!0}))})),this._sashListener.add(this._southSash.onDidChange(n=>{e&&(t=n.currentY-n.startY,this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,south:!0}))})),this._sashListener.add(J.any(this._eastSash.onDidReset,this._westSash.onDidReset)(n=>{this._preferredSize&&(this.layout(this._size.height,this._preferredSize.width),this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(J.any(this._northSash.onDidReset,this._southSash.onDidReset)(n=>{this._preferredSize&&(this.layout(this._preferredSize.height,this._size.width),this._onDidResize.fire({dimension:this._size,done:!0}))}))}dispose(){this._northSash.dispose(),this._southSash.dispose(),this._eastSash.dispose(),this._westSash.dispose(),this._sashListener.dispose(),this._onDidResize.dispose(),this._onDidWillResize.dispose(),this.domNode.remove()}enableSashes(e,t,i,n){this._northSash.state=e?3:0,this._eastSash.state=t?3:0,this._southSash.state=i?3:0,this._westSash.state=n?3:0}layout(e=this.size.height,t=this.size.width){const{height:i,width:n}=this._minSize,{height:s,width:r}=this._maxSize;e=Math.max(i,Math.min(s,e)),t=Math.max(n,Math.min(r,t));const a=new rt(t,e);rt.equals(a,this._size)||(this.domNode.style.height=e+"px",this.domNode.style.width=t+"px",this._size=a,this._northSash.layout(),this._eastSash.layout(),this._southSash.layout(),this._westSash.layout())}clearSashHoverState(){this._eastSash.clearSashHoverState(),this._westSash.clearSashHoverState(),this._northSash.clearSashHoverState(),this._southSash.clearSashHoverState()}get size(){return this._size}set maxSize(e){this._maxSize=e}get maxSize(){return this._maxSize}set minSize(e){this._minSize=e}get minSize(){return this._minSize}set preferredSize(e){this._preferredSize=e}get preferredSize(){return this._preferredSize}}const vce=30,wce=24;class yce extends z{constructor(e,t=new rt(10,10)){super(),this._editor=e,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._resizableNode=this._register(new mM),this._contentPosition=null,this._isResizing=!1,this._resizableNode.domNode.style.position="absolute",this._resizableNode.minSize=rt.lift(t),this._resizableNode.layout(t.height,t.width),this._resizableNode.enableSashes(!0,!0,!0,!0),this._register(this._resizableNode.onDidResize(i=>{this._resize(new rt(i.dimension.width,i.dimension.height)),i.done&&(this._isResizing=!1)})),this._register(this._resizableNode.onDidWillResize(()=>{this._isResizing=!0}))}get isResizing(){return this._isResizing}getDomNode(){return this._resizableNode.domNode}getPosition(){return this._contentPosition}get position(){return this._contentPosition?.position?P.lift(this._contentPosition.position):void 0}_availableVerticalSpaceAbove(e){const t=this._editor.getDomNode(),i=this._editor.getScrolledVisiblePosition(e);return!t||!i?void 0:gi(t).top+i.top-vce}_availableVerticalSpaceBelow(e){const t=this._editor.getDomNode(),i=this._editor.getScrolledVisiblePosition(e);if(!t||!i)return;const n=gi(t),s=Ah(t.ownerDocument.body),r=n.top+i.top+i.height;return s.height-r-wce}_findPositionPreference(e,t){const i=Math.min(this._availableVerticalSpaceBelow(t)??1/0,e),n=Math.min(this._availableVerticalSpaceAbove(t)??1/0,e),s=Math.min(Math.max(n,i),e),r=Math.min(e,s);let a;return this._editor.getOption(60).above?a=r<=n?1:2:a=r<=i?2:1,a===1?this._resizableNode.enableSashes(!0,!0,!1,!1):this._resizableNode.enableSashes(!1,!0,!0,!1),a}_resize(e){this._resizableNode.layout(e.height,e.width)}}var Sce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},d1=function(o,e){return function(t,i){e(t,i,o)}},Or;const P4=30,Lce=6;var kc;let xE=(kc=class extends yce{get isVisibleFromKeyboard(){return this._renderedHover?.source===1}get isVisible(){return this._hoverVisibleKey.get()??!1}get isFocused(){return this._hoverFocusedKey.get()??!1}constructor(e,t,i,n,s){const r=e.getOption(67)+8,a=150,l=new rt(a,r);super(e,l),this._configurationService=i,this._accessibilityService=n,this._keybindingService=s,this._hover=this._register(new RT),this._onDidResize=this._register(new A),this.onDidResize=this._onDidResize.event,this._minimumSize=l,this._hoverVisibleKey=K.hoverVisible.bindTo(t),this._hoverFocusedKey=K.hoverFocused.bindTo(t),Z(this._resizableNode.domNode,this._hover.containerDomNode),this._resizableNode.domNode.style.zIndex="50",this._register(this._editor.onDidLayoutChange(()=>{this.isVisible&&this._updateMaxDimensions()})),this._register(this._editor.onDidChangeConfiguration(d=>{d.hasChanged(50)&&this._updateFont()}));const c=this._register(Ph(this._resizableNode.domNode));this._register(c.onDidFocus(()=>{this._hoverFocusedKey.set(!0)})),this._register(c.onDidBlur(()=>{this._hoverFocusedKey.set(!1)})),this._setRenderedHover(void 0),this._editor.addContentWidget(this)}dispose(){super.dispose(),this._renderedHover?.dispose(),this._editor.removeContentWidget(this)}getId(){return Or.ID}static _applyDimensions(e,t,i){const n=typeof t=="number"?`${t}px`:t,s=typeof i=="number"?`${i}px`:i;e.style.width=n,e.style.height=s}_setContentsDomNodeDimensions(e,t){const i=this._hover.contentsDomNode;return Or._applyDimensions(i,e,t)}_setContainerDomNodeDimensions(e,t){const i=this._hover.containerDomNode;return Or._applyDimensions(i,e,t)}_setHoverWidgetDimensions(e,t){this._setContentsDomNodeDimensions(e,t),this._setContainerDomNodeDimensions(e,t),this._layoutContentWidget()}static _applyMaxDimensions(e,t,i){const n=typeof t=="number"?`${t}px`:t,s=typeof i=="number"?`${i}px`:i;e.style.maxWidth=n,e.style.maxHeight=s}_setHoverWidgetMaxDimensions(e,t){Or._applyMaxDimensions(this._hover.contentsDomNode,e,t),Or._applyMaxDimensions(this._hover.containerDomNode,e,t),this._hover.containerDomNode.style.setProperty("--vscode-hover-maxWidth",typeof e=="number"?`${e}px`:e),this._layoutContentWidget()}_setAdjustedHoverWidgetDimensions(e){this._setHoverWidgetMaxDimensions("none","none");const t=e.width,i=e.height;this._setHoverWidgetDimensions(t,i)}_updateResizableNodeMaxDimensions(){const e=this._findMaximumRenderingWidth()??1/0,t=this._findMaximumRenderingHeight()??1/0;this._resizableNode.maxSize=new rt(e,t),this._setHoverWidgetMaxDimensions(e,t)}_resize(e){Or._lastDimensions=new rt(e.width,e.height),this._setAdjustedHoverWidgetDimensions(e),this._resizableNode.layout(e.height,e.width),this._updateResizableNodeMaxDimensions(),this._hover.scrollbar.scanDomNode(),this._editor.layoutContentWidget(this),this._onDidResize.fire()}_findAvailableSpaceVertically(){const e=this._renderedHover?.showAtPosition;if(e)return this._positionPreference===1?this._availableVerticalSpaceAbove(e):this._availableVerticalSpaceBelow(e)}_findMaximumRenderingHeight(){const e=this._findAvailableSpaceVertically();if(!e)return;let t=Lce;return Array.from(this._hover.contentsDomNode.children).forEach(i=>{t+=i.clientHeight}),Math.min(e,t)}_isHoverTextOverflowing(){this._hover.containerDomNode.style.setProperty("--vscode-hover-whiteSpace","nowrap"),this._hover.containerDomNode.style.setProperty("--vscode-hover-sourceWhiteSpace","nowrap");const e=Array.from(this._hover.contentsDomNode.children).some(t=>t.scrollWidth>t.clientWidth);return this._hover.containerDomNode.style.removeProperty("--vscode-hover-whiteSpace"),this._hover.containerDomNode.style.removeProperty("--vscode-hover-sourceWhiteSpace"),e}_findMaximumRenderingWidth(){if(!this._editor||!this._editor.hasModel())return;const e=this._isHoverTextOverflowing(),t=typeof this._contentWidth>"u"?0:this._contentWidth-2;return e||this._hover.containerDomNode.clientWidththis._renderedHover.closestMouseDistance+4?!1:(this._renderedHover.closestMouseDistance=Math.min(this._renderedHover.closestMouseDistance,n),!0)}_setRenderedHover(e){this._renderedHover?.dispose(),this._renderedHover=e,this._hoverVisibleKey.set(!!e),this._hover.containerDomNode.classList.toggle("hidden",!e)}_updateFont(){const{fontSize:e,lineHeight:t}=this._editor.getOption(50),i=this._hover.contentsDomNode;i.style.fontSize=`${e}px`,i.style.lineHeight=`${t/e}`,Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName("code")).forEach(s=>this._editor.applyFontInfo(s))}_updateContent(e){const t=this._hover.contentsDomNode;t.style.paddingBottom="",t.textContent="",t.appendChild(e)}_layoutContentWidget(){this._editor.layoutContentWidget(this),this._hover.onContentsChanged()}_updateMaxDimensions(){const e=Math.max(this._editor.getLayoutInfo().height/4,250,Or._lastDimensions.height),t=Math.max(this._editor.getLayoutInfo().width*.66,500,Or._lastDimensions.width);this._setHoverWidgetMaxDimensions(t,e)}_render(e){this._setRenderedHover(e),this._updateFont(),this._updateContent(e.domNode),this._updateMaxDimensions(),this.onContentsChanged(),this._editor.render()}getPosition(){return this._renderedHover?{position:this._renderedHover.showAtPosition,secondaryPosition:this._renderedHover.showAtSecondaryPosition,positionAffinity:this._renderedHover.shouldAppearBeforeContent?3:void 0,preference:[this._positionPreference??1]}:null}show(e){if(!this._editor||!this._editor.hasModel())return;this._render(e);const t=Hd(this._hover.containerDomNode),i=e.showAtPosition;this._positionPreference=this._findPositionPreference(t,i)??1,this.onContentsChanged(),e.shouldFocus&&this._hover.containerDomNode.focus(),this._onDidResize.fire();const s=this._hover.containerDomNode.ownerDocument.activeElement===this._hover.containerDomNode&&e7(this._configurationService.getValue("accessibility.verbosity.hover")===!0&&this._accessibilityService.isScreenReaderOptimized(),this._keybindingService.lookupKeybinding("editor.action.accessibleView")?.getAriaLabel()??"");s&&(this._hover.contentsDomNode.ariaLabel=this._hover.contentsDomNode.textContent+", "+s)}hide(){if(!this._renderedHover)return;const e=this._renderedHover.shouldFocus||this._hoverFocusedKey.get();this._setRenderedHover(void 0),this._resizableNode.maxSize=new rt(1/0,1/0),this._resizableNode.clearSashHoverState(),this._hoverFocusedKey.set(!1),this._editor.layoutContentWidget(this),e&&this._editor.focus()}_removeConstraintsRenderNormally(){const e=this._editor.getLayoutInfo();this._resizableNode.layout(e.height,e.width),this._setHoverWidgetDimensions("auto","auto")}setMinimumDimensions(e){this._minimumSize=new rt(Math.max(this._minimumSize.width,e.width),Math.max(this._minimumSize.height,e.height)),this._updateMinimumWidth()}_updateMinimumWidth(){const e=typeof this._contentWidth>"u"?this._minimumSize.width:Math.min(this._contentWidth,this._minimumSize.width);this._resizableNode.minSize=new rt(e,this._minimumSize.height)}onContentsChanged(){this._removeConstraintsRenderNormally();const e=this._hover.containerDomNode;let t=Hd(e),i=qp(e);if(this._resizableNode.layout(t,i),this._setHoverWidgetDimensions(i,t),t=Hd(e),i=qp(e),this._contentWidth=i,this._updateMinimumWidth(),this._resizableNode.layout(t,i),this._renderedHover?.showAtPosition){const n=Hd(this._hover.containerDomNode);this._positionPreference=this._findPositionPreference(n,this._renderedHover.showAtPosition)}this._layoutContentWidget()}focus(){this._hover.containerDomNode.focus()}scrollUp(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._editor.getOption(50);this._hover.scrollbar.setScrollPosition({scrollTop:e-t.lineHeight})}scrollDown(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._editor.getOption(50);this._hover.scrollbar.setScrollPosition({scrollTop:e+t.lineHeight})}scrollLeft(){const e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e-P4})}scrollRight(){const e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e+P4})}pageUp(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e-t})}pageDown(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e+t})}goToTop(){this._hover.scrollbar.setScrollPosition({scrollTop:0})}goToBottom(){this._hover.scrollbar.setScrollPosition({scrollTop:this._hover.scrollbar.getScrollDimensions().scrollHeight})}},Or=kc,kc.ID="editor.contrib.resizableContentHoverWidget",kc._lastDimensions=new rt(0,0),kc);xE=Or=Sce([d1(1,De),d1(2,lt),d1(3,ms),d1(4,vt)],xE);function O4(o,e,t,i,n,s){const r=t+n/2,a=i+s/2,l=Math.max(Math.abs(o-r)-n/2,0),c=Math.max(Math.abs(e-a)-s/2,0);return Math.sqrt(l*l+c*c)}class ew{get anchor(){return this._anchor}set anchor(e){this._anchor=e}get shouldFocus(){return this._shouldFocus}set shouldFocus(e){this._shouldFocus=e}get source(){return this._source}set source(e){this._source=e}get insistOnKeepingHoverVisible(){return this._insistOnKeepingHoverVisible}set insistOnKeepingHoverVisible(e){this._insistOnKeepingHoverVisible=e}constructor(e,t){this._editor=e,this._participants=t,this._anchor=null,this._shouldFocus=!1,this._source=0,this._insistOnKeepingHoverVisible=!1}static _getLineDecorations(e,t){if(t.type!==1&&!t.supportsMarkerHover)return[];const i=e.getModel(),n=t.range.startLineNumber;if(n>i.getLineCount())return[];const s=i.getLineMaxColumn(n);return e.getLineDecorations(n).filter(r=>{if(r.options.isWholeLine)return!0;const a=r.range.startLineNumber===n?r.range.startColumn:1,l=r.range.endLineNumber===n?r.range.endColumn:s;if(r.options.showIfCollapsed){if(a>t.range.startColumn+1||t.range.endColumn-1>l)return!1}else if(a>t.range.startColumn||t.range.endColumn>l)return!1;return!0})}computeAsync(e){const t=this._anchor;if(!this._editor.hasModel()||!t)return Ms.EMPTY;const i=ew._getLineDecorations(this._editor,t);return Ms.merge(this._participants.map(n=>n.computeAsync?n.computeAsync(t,i,e):Ms.EMPTY))}computeSync(){if(!this._editor.hasModel()||!this._anchor)return[];const e=ew._getLineDecorations(this._editor,this._anchor);let t=[];for(const i of this._participants)t=t.concat(i.computeSync(this._anchor,e));return Ag(t)}}class gB{constructor(e,t,i){this.anchor=e,this.hoverParts=t,this.isComplete=i}filter(e){const t=this.hoverParts.filter(i=>i.isValidForHoverAnchor(e));return t.length===this.hoverParts.length?this:new xce(this,this.anchor,t,this.isComplete)}}class xce extends gB{constructor(e,t,i,n){super(t,i,n),this.original=e}filter(e){return this.original.filter(e)}}var kce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Dce=function(o,e){return function(t,i){e(t,i,o)}};const F4=ce;let kE=class extends z{get hasContent(){return this._hasContent}constructor(e){super(),this._keybindingService=e,this.actions=[],this._hasContent=!1,this.hoverElement=F4("div.hover-row.status-bar"),this.hoverElement.tabIndex=0,this.actionsElement=Z(this.hoverElement,F4("div.actions"))}addAction(e){const t=this._keybindingService.lookupKeybinding(e.commandId),i=t?t.getLabel():null;this._hasContent=!0;const n=this._register(ey.render(this.actionsElement,e,i));return this.actions.push(n),n}append(e){const t=Z(this.actionsElement,e);return this._hasContent=!0,t}};kE=kce([Dce(0,vt)],kE);class Ice{constructor(e,t,i){this.provider=e,this.hover=t,this.ordinal=i}}async function Ece(o,e,t,i,n){const s=await Promise.resolve(o.provideHover(t,i,n)).catch($n);if(!(!s||!Nce(s)))return new Ice(o,s,e)}function pM(o,e,t,i,n=!1){const r=o.ordered(e,n).map((a,l)=>Ece(a,l,e,t,i));return Ms.fromPromises(r).coalesce()}function mB(o,e,t,i,n=!1){return pM(o,e,t,i,n).map(s=>s.hover).toPromise()}Wo("_executeHoverProvider",(o,e,t)=>{const i=o.get(Se);return mB(i.hoverProvider,e,t,ut.None)});Wo("_executeHoverProvider_recursive",(o,e,t)=>{const i=o.get(Se);return mB(i.hoverProvider,e,t,ut.None,!0)});function Nce(o){const e=typeof o.range<"u",t=typeof o.contents<"u"&&o.contents&&o.contents.length>0;return e&&t}var Tce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},ld=function(o,e){return function(t,i){e(t,i,o)}};const gf=ce,Mce=Wi("hover-increase-verbosity",ie.add,m("increaseHoverVerbosity","Icon for increaseing hover verbosity.")),Rce=Wi("hover-decrease-verbosity",ie.remove,m("decreaseHoverVerbosity","Icon for decreasing hover verbosity."));class hr{constructor(e,t,i,n,s,r=void 0){this.owner=e,this.range=t,this.contents=i,this.isBeforeContent=n,this.ordinal=s,this.source=r}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}class pB{constructor(e,t,i){this.hover=e,this.hoverProvider=t,this.hoverPosition=i}supportsVerbosityAction(e){switch(e){case is.Increase:return this.hover.canIncreaseVerbosity??!1;case is.Decrease:return this.hover.canDecreaseVerbosity??!1}}}let P_=class{constructor(e,t,i,n,s,r,a,l){this._editor=e,this._languageService=t,this._openerService=i,this._configurationService=n,this._languageFeaturesService=s,this._keybindingService=r,this._hoverService=a,this._commandService=l,this.hoverOrdinal=3}createLoadingMessage(e){return new hr(this,e.range,[new Js().appendText(m("modesContentHover.loading","Loading..."))],!1,2e3)}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];const i=this._editor.getModel(),n=e.range.startLineNumber,s=i.getLineMaxColumn(n),r=[];let a=1e3;const l=i.getLineLength(n),c=i.getLanguageIdAtPosition(e.range.startLineNumber,e.range.startColumn),d=this._editor.getOption(118),h=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:c});let u=!1;d>=0&&l>d&&e.range.startColumn>=d&&(u=!0,r.push(new hr(this,e.range,[{value:m("stopped rendering","Rendering paused for long line for performance reasons. This can be configured via `editor.stopRenderingLineAfter`.")}],!1,a++))),!u&&typeof h=="number"&&l>=h&&r.push(new hr(this,e.range,[{value:m("too many characters","Tokenization is skipped for long lines for performance reasons. This can be configured via `editor.maxTokenizationLineLength`.")}],!1,a++));let f=!1;for(const g of t){const p=g.range.startLineNumber===n?g.range.startColumn:1,_=g.range.endLineNumber===n?g.range.endColumn:s,b=g.options.hoverMessage;if(!b||bg(b))continue;g.options.beforeContentClassName&&(f=!0);const C=new I(e.range.startLineNumber,p,e.range.startLineNumber,_);r.push(new hr(this,C,T5(b),f,a++))}return r}computeAsync(e,t,i){if(!this._editor.hasModel()||e.type!==1)return Ms.EMPTY;const n=this._editor.getModel(),s=this._languageFeaturesService.hoverProvider;return s.has(n)?this._getMarkdownHovers(s,n,e,i):Ms.EMPTY}_getMarkdownHovers(e,t,i,n){const s=i.range.getStartPosition();return pM(e,t,s,n).filter(l=>!bg(l.hover.contents)).map(l=>{const c=l.hover.range?I.lift(l.hover.range):i.range,d=new pB(l.hover,l.provider,s);return new hr(this,c,l.hover.contents,!1,l.ordinal,d)})}renderHoverParts(e,t){return this._renderedHoverParts=new Ace(t,e.fragment,this,this._editor,this._languageService,this._openerService,this._commandService,this._keybindingService,this._hoverService,this._configurationService,e.onContentsChanged),this._renderedHoverParts}updateMarkdownHoverVerbosityLevel(e,t,i){return Promise.resolve(this._renderedHoverParts?.updateMarkdownHoverPartVerbosityLevel(e,t,i))}};P_=Tce([ld(1,qt),ld(2,Vo),ld(3,lt),ld(4,Se),ld(5,vt),ld(6,au),ld(7,hi)],P_);class h1{constructor(e,t,i){this.hoverPart=e,this.hoverElement=t,this.disposables=i}dispose(){this.disposables.dispose()}}class Ace{constructor(e,t,i,n,s,r,a,l,c,d,h){this._hoverParticipant=i,this._editor=n,this._languageService=s,this._openerService=r,this._commandService=a,this._keybindingService=l,this._hoverService=c,this._configurationService=d,this._onFinishedRendering=h,this._ongoingHoverOperations=new Map,this._disposables=new X,this.renderedHoverParts=this._renderHoverParts(e,t,this._onFinishedRendering),this._disposables.add(_e(()=>{this.renderedHoverParts.forEach(u=>{u.dispose()}),this._ongoingHoverOperations.forEach(u=>{u.tokenSource.dispose(!0)})}))}_renderHoverParts(e,t,i){return e.sort(rs(n=>n.ordinal,ia)),e.map(n=>{const s=this._renderHoverPart(n,i);return t.appendChild(s.hoverElement),s})}_renderHoverPart(e,t){const i=this._renderMarkdownHover(e,t),n=i.hoverElement,s=e.source,r=new X;if(r.add(i),!s)return new h1(e,n,r);const a=s.supportsVerbosityAction(is.Increase),l=s.supportsVerbosityAction(is.Decrease);if(!a&&!l)return new h1(e,n,r);const c=gf("div.verbosity-actions");return n.prepend(c),r.add(this._renderHoverExpansionAction(c,is.Increase,a)),r.add(this._renderHoverExpansionAction(c,is.Decrease,l)),new h1(e,n,r)}_renderMarkdownHover(e,t){return Pce(this._editor,e,this._languageService,this._openerService,t)}_renderHoverExpansionAction(e,t,i){const n=new X,s=t===is.Increase,r=Z(e,gf(Ee.asCSSSelector(s?Mce:Rce)));r.tabIndex=0;const a=new gg("mouse",!1,{target:e,position:{hoverPosition:0}},this._configurationService,this._hoverService);if(n.add(this._hoverService.setupManagedHover(a,r,Oce(this._keybindingService,t))),!i)return r.classList.add("disabled"),n;r.classList.add("enabled");const l=()=>this._commandService.executeCommand(t===is.Increase?Ey:Ny);return n.add(new t7(r,l)),n.add(new i7(r,l,[3,10])),n}async updateMarkdownHoverPartVerbosityLevel(e,t,i=!0){const n=this._editor.getModel();if(!n)return;const s=this._getRenderedHoverPartAtIndex(t),r=s?.hoverPart.source;if(!s||!r?.supportsVerbosityAction(e))return;const a=await this._fetchHover(r,n,e);if(!a)return;const l=new pB(a,r.hoverProvider,r.hoverPosition),c=s.hoverPart,d=new hr(this._hoverParticipant,c.range,a.contents,c.isBeforeContent,c.ordinal,l),h=this._renderHoverPart(d,this._onFinishedRendering);return this._replaceRenderedHoverPartAtIndex(t,h,d),i&&this._focusOnHoverPartWithIndex(t),{hoverPart:d,hoverElement:h.hoverElement}}async _fetchHover(e,t,i){let n=i===is.Increase?1:-1;const s=e.hoverProvider,r=this._ongoingHoverOperations.get(s);r&&(r.tokenSource.cancel(),n+=r.verbosityDelta);const a=new In;this._ongoingHoverOperations.set(s,{verbosityDelta:n,tokenSource:a});const l={verbosityRequest:{verbosityDelta:n,previousHover:e.hover}};let c;try{c=await Promise.resolve(s.provideHover(t,e.hoverPosition,a.token,l))}catch(d){$n(d)}return a.dispose(),this._ongoingHoverOperations.delete(s),c}_replaceRenderedHoverPartAtIndex(e,t,i){if(e>=this.renderedHoverParts.length||e<0)return;const n=this.renderedHoverParts[e],s=n.hoverElement,r=t.hoverElement,a=Array.from(r.children);s.replaceChildren(...a);const l=new h1(i,s,t.disposables);s.focus(),n.dispose(),this.renderedHoverParts[e]=l}_focusOnHoverPartWithIndex(e){this.renderedHoverParts[e].hoverElement.focus()}_getRenderedHoverPartAtIndex(e){return this.renderedHoverParts[e]}dispose(){this._disposables.dispose()}}function Pce(o,e,t,i,n){const s=new X,r=gf("div.hover-row"),a=gf("div.hover-row-contents");r.appendChild(a);const l=e.contents;for(const d of l){if(bg(d))continue;const h=gf("div.markdown-hover"),u=Z(h,gf("div.hover-contents")),f=s.add(new Wh({editor:o},t,i));s.add(f.onDidRenderAsync(()=>{u.className="hover-contents code-hover-contents",n()}));const g=s.add(f.render(d));u.appendChild(g.element),a.appendChild(h)}return{hoverPart:e,hoverElement:r,dispose(){s.dispose()}}}function Oce(o,e){switch(e){case is.Increase:{const t=o.lookupKeybinding(Ey);return t?m("increaseVerbosityWithKb","Increase Hover Verbosity ({0})",t.getLabel()):m("increaseVerbosity","Increase Hover Verbosity")}case is.Decrease:{const t=o.lookupKeybinding(Ny);return t?m("decreaseVerbosityWithKb","Decrease Hover Verbosity ({0})",t.getLabel()):m("decreaseVerbosity","Decrease Hover Verbosity")}}}var _B=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},DE=function(o,e){return function(t,i){e(t,i,o)}};let tw=class{constructor(e){this._editorWorkerService=e}async provideDocumentColors(e,t){return this._editorWorkerService.computeDefaultDocumentColors(e.uri)}provideColorPresentations(e,t,i){const n=t.range,s=t.color,r=s.alpha,a=new q(new qe(Math.round(255*s.red),Math.round(255*s.green),Math.round(255*s.blue),r)),l=r?q.Format.CSS.formatRGB(a):q.Format.CSS.formatRGBA(a),c=r?q.Format.CSS.formatHSL(a):q.Format.CSS.formatHSLA(a),d=r?q.Format.CSS.formatHex(a):q.Format.CSS.formatHexA(a),h=[];return h.push({label:l,textEdit:{range:n,text:l}}),h.push({label:c,textEdit:{range:n,text:c}}),h.push({label:d,textEdit:{range:n,text:d}}),h}};tw=_B([DE(0,Zc)],tw);let IE=class extends z{constructor(e,t){super(),this._register(e.colorProvider.register("*",new tw(t)))}};IE=_B([DE(0,Se),DE(1,Zc)],IE);Ote(IE);async function bB(o,e,t,i=!0){return _M(new Fce,o,e,t,i)}function CB(o,e,t,i){return Promise.resolve(t.provideColorPresentations(o,e,i))}class Fce{constructor(){}async compute(e,t,i,n){const s=await e.provideDocumentColors(t,i);if(Array.isArray(s))for(const r of s)n.push({colorInfo:r,provider:e});return Array.isArray(s)}}class Bce{constructor(){}async compute(e,t,i,n){const s=await e.provideDocumentColors(t,i);if(Array.isArray(s))for(const r of s)n.push({range:r.range,color:[r.color.red,r.color.green,r.color.blue,r.color.alpha]});return Array.isArray(s)}}class Wce{constructor(e){this.colorInfo=e}async compute(e,t,i,n){const s=await e.provideColorPresentations(t,this.colorInfo,ut.None);return Array.isArray(s)&&n.push(...s),Array.isArray(s)}}async function _M(o,e,t,i,n){let s=!1,r;const a=[],l=e.ordered(t);for(let c=l.length-1;c>=0;c--){const d=l[c];if(d instanceof tw)r=d;else try{await o.compute(d,t,i,a)&&(s=!0)}catch(h){$n(h)}}return s?a:r&&n?(await o.compute(r,t,i,a),a):[]}function vB(o,e){const{colorProvider:t}=o.get(Se),i=o.get(Fi).getModel(e);if(!i)throw na();const n=o.get(lt).getValue("editor.defaultColorDecorators",{resource:e});return{model:i,colorProviderRegistry:t,isDefaultColorDecoratorsEnabled:n}}bt.registerCommand("_executeDocumentColorProvider",function(o,...e){const[t]=e;if(!(t instanceof ve))throw na();const{model:i,colorProviderRegistry:n,isDefaultColorDecoratorsEnabled:s}=vB(o,t);return _M(new Bce,n,i,ut.None,s)});bt.registerCommand("_executeColorPresentationProvider",function(o,...e){const[t,i]=e,{uri:n,range:s}=i;if(!(n instanceof ve)||!Array.isArray(t)||t.length!==4||!I.isIRange(s))throw na();const{model:r,colorProviderRegistry:a,isDefaultColorDecoratorsEnabled:l}=vB(o,n),[c,d,h,u]=t;return _M(new Wce({range:s,color:{red:c,green:d,blue:h,alpha:u}}),a,r,ut.None,l)});var Hce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},mL=function(o,e){return function(t,i){e(t,i,o)}},EE;const Vce=Object.create({});var Dc;let Tg=(Dc=class extends z{constructor(e,t,i,n){super(),this._editor=e,this._configurationService=t,this._languageFeaturesService=i,this._localToDispose=this._register(new X),this._decorationsIds=[],this._colorDatas=new Map,this._colorDecoratorIds=this._editor.createDecorationsCollection(),this._ruleFactory=new kv(this._editor),this._decoratorLimitReporter=new zce,this._colorDecorationClassRefs=this._register(new X),this._debounceInformation=n.for(i.colorProvider,"Document Colors",{min:EE.RECOMPUTE_TIME}),this._register(e.onDidChangeModel(()=>{this._isColorDecoratorsEnabled=this.isEnabled(),this.updateColors()})),this._register(e.onDidChangeModelLanguage(()=>this.updateColors())),this._register(i.colorProvider.onDidChange(()=>this.updateColors())),this._register(e.onDidChangeConfiguration(s=>{const r=this._isColorDecoratorsEnabled;this._isColorDecoratorsEnabled=this.isEnabled(),this._isDefaultColorDecoratorsEnabled=this._editor.getOption(148);const a=r!==this._isColorDecoratorsEnabled||s.hasChanged(21),l=s.hasChanged(148);(a||l)&&(this._isColorDecoratorsEnabled?this.updateColors():this.removeAllDecorations())})),this._timeoutTimer=null,this._computePromise=null,this._isColorDecoratorsEnabled=this.isEnabled(),this._isDefaultColorDecoratorsEnabled=this._editor.getOption(148),this.updateColors()}isEnabled(){const e=this._editor.getModel();if(!e)return!1;const t=e.getLanguageId(),i=this._configurationService.getValue(t);if(i&&typeof i=="object"){const n=i.colorDecorators;if(n&&n.enable!==void 0&&!n.enable)return n.enable}return this._editor.getOption(20)}static get(e){return e.getContribution(this.ID)}dispose(){this.stop(),this.removeAllDecorations(),super.dispose()}updateColors(){if(this.stop(),!this._isColorDecoratorsEnabled)return;const e=this._editor.getModel();!e||!this._languageFeaturesService.colorProvider.has(e)||(this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._timeoutTimer||(this._timeoutTimer=new wr,this._timeoutTimer.cancelAndSet(()=>{this._timeoutTimer=null,this.beginCompute()},this._debounceInformation.get(e)))})),this.beginCompute())}async beginCompute(){this._computePromise=wa(async e=>{const t=this._editor.getModel();if(!t)return[];const i=new Hs(!1),n=await bB(this._languageFeaturesService.colorProvider,t,e,this._isDefaultColorDecoratorsEnabled);return this._debounceInformation.update(t,i.elapsed()),n});try{const e=await this._computePromise;this.updateDecorations(e),this.updateColorDecorators(e),this._computePromise=null}catch(e){Ze(e)}}stop(){this._timeoutTimer&&(this._timeoutTimer.cancel(),this._timeoutTimer=null),this._computePromise&&(this._computePromise.cancel(),this._computePromise=null),this._localToDispose.clear()}updateDecorations(e){const t=e.map(i=>({range:{startLineNumber:i.colorInfo.range.startLineNumber,startColumn:i.colorInfo.range.startColumn,endLineNumber:i.colorInfo.range.endLineNumber,endColumn:i.colorInfo.range.endColumn},options:kt.EMPTY}));this._editor.changeDecorations(i=>{this._decorationsIds=i.deltaDecorations(this._decorationsIds,t),this._colorDatas=new Map,this._decorationsIds.forEach((n,s)=>this._colorDatas.set(n,e[s]))})}updateColorDecorators(e){this._colorDecorationClassRefs.clear();const t=[],i=this._editor.getOption(21);for(let s=0;sthis._colorDatas.has(n.id));return i.length===0?null:this._colorDatas.get(i[0].id)}isColorDecoration(e){return this._colorDecoratorIds.has(e)}},EE=Dc,Dc.ID="editor.contrib.colorDetector",Dc.RECOMPUTE_TIME=1e3,Dc);Tg=EE=Hce([mL(1,lt),mL(2,Se),mL(3,q0)],Tg);class zce{constructor(){this._onDidChange=new A,this._computed=0,this._limited=!1}update(e,t){(e!==this._computed||t!==this._limited)&&(this._computed=e,this._limited=t,this._onDidChange.fire())}}Ho(Tg.ID,Tg,1);class Uce{get color(){return this._color}set color(e){this._color.equals(e)||(this._color=e,this._onDidChangeColor.fire(e))}get presentation(){return this.colorPresentations[this.presentationIndex]}get colorPresentations(){return this._colorPresentations}set colorPresentations(e){this._colorPresentations=e,this.presentationIndex>e.length-1&&(this.presentationIndex=0),this._onDidChangePresentation.fire(this.presentation)}constructor(e,t,i){this.presentationIndex=i,this._onColorFlushed=new A,this.onColorFlushed=this._onColorFlushed.event,this._onDidChangeColor=new A,this.onDidChangeColor=this._onDidChangeColor.event,this._onDidChangePresentation=new A,this.onDidChangePresentation=this._onDidChangePresentation.event,this.originalColor=e,this._color=e,this._colorPresentations=t}selectNextColorPresentation(){this.presentationIndex=(this.presentationIndex+1)%this.colorPresentations.length,this.flushColor(),this._onDidChangePresentation.fire(this.presentation)}guessColorPresentation(e,t){let i=-1;for(let n=0;n{this.backgroundColor=r.getColor(RC)||q.white})),this._register(U(this._pickedColorNode,ee.CLICK,()=>this.model.selectNextColorPresentation())),this._register(U(this._originalColorNode,ee.CLICK,()=>{this.model.color=this.model.originalColor,this.model.flushColor()})),this._register(t.onDidChangeColor(this.onDidChangeColor,this)),this._register(t.onDidChangePresentation(this.onDidChangePresentation,this)),this._pickedColorNode.style.backgroundColor=q.Format.CSS.format(t.color)||"",this._pickedColorNode.classList.toggle("light",t.color.rgba.a<.5?this.backgroundColor.isLighter():t.color.isLighter()),this.onDidChangeColor(this.model.color),this.showingStandaloneColorPicker&&(this._domNode.classList.add("standalone-colorpicker"),this._closeButton=this._register(new Kce(this._domNode)))}get closeButton(){return this._closeButton}get pickedColorNode(){return this._pickedColorNode}get originalColorNode(){return this._originalColorNode}onDidChangeColor(e){this._pickedColorNode.style.backgroundColor=q.Format.CSS.format(e)||"",this._pickedColorNode.classList.toggle("light",e.rgba.a<.5?this.backgroundColor.isLighter():e.isLighter()),this.onDidChangePresentation()}onDidChangePresentation(){this._pickedColorPresentation.textContent=this.model.presentation?this.model.presentation.label:""}}class Kce extends z{constructor(e){super(),this._onClicked=this._register(new A),this.onClicked=this._onClicked.event,this._button=document.createElement("div"),this._button.classList.add("close-button"),Z(e,this._button);const t=document.createElement("div");t.classList.add("close-button-inner-div"),Z(this._button,t),Z(t,Is(".button"+Ee.asCSSSelector(Wi("color-picker-close",ie.close,m("closeIcon","Icon to close the color picker"))))).classList.add("close-icon"),this._register(U(this._button,ee.CLICK,()=>{this._onClicked.fire()}))}}class jce extends z{constructor(e,t,i,n=!1){super(),this.model=t,this.pixelRatio=i,this._insertButton=null,this._domNode=Is(".colorpicker-body"),Z(e,this._domNode),this._saturationBox=new qce(this._domNode,this.model,this.pixelRatio),this._register(this._saturationBox),this._register(this._saturationBox.onDidChange(this.onDidSaturationValueChange,this)),this._register(this._saturationBox.onColorFlushed(this.flushColor,this)),this._opacityStrip=new Gce(this._domNode,this.model,n),this._register(this._opacityStrip),this._register(this._opacityStrip.onDidChange(this.onDidOpacityChange,this)),this._register(this._opacityStrip.onColorFlushed(this.flushColor,this)),this._hueStrip=new Zce(this._domNode,this.model,n),this._register(this._hueStrip),this._register(this._hueStrip.onDidChange(this.onDidHueChange,this)),this._register(this._hueStrip.onColorFlushed(this.flushColor,this)),n&&(this._insertButton=this._register(new Yce(this._domNode)),this._domNode.classList.add("standalone-colorpicker"))}flushColor(){this.model.flushColor()}onDidSaturationValueChange({s:e,v:t}){const i=this.model.color.hsva;this.model.color=new q(new ea(i.h,e,t,i.a))}onDidOpacityChange(e){const t=this.model.color.hsva;this.model.color=new q(new ea(t.h,t.s,t.v,e))}onDidHueChange(e){const t=this.model.color.hsva,i=(1-e)*360;this.model.color=new q(new ea(i===360?0:i,t.s,t.v,t.a))}get domNode(){return this._domNode}get saturationBox(){return this._saturationBox}get enterButton(){return this._insertButton}layout(){this._saturationBox.layout(),this._opacityStrip.layout(),this._hueStrip.layout()}}class qce extends z{constructor(e,t,i){super(),this.model=t,this.pixelRatio=i,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new A,this.onColorFlushed=this._onColorFlushed.event,this._domNode=Is(".saturation-wrap"),Z(e,this._domNode),this._canvas=document.createElement("canvas"),this._canvas.className="saturation-box",Z(this._domNode,this._canvas),this.selection=Is(".saturation-selection"),Z(this._domNode,this.selection),this.layout(),this._register(U(this._domNode,ee.POINTER_DOWN,n=>this.onPointerDown(n))),this._register(this.model.onDidChangeColor(this.onDidChangeColor,this)),this.monitor=null}get domNode(){return this._domNode}onPointerDown(e){if(!e.target||!(e.target instanceof Element))return;this.monitor=this._register(new Hg);const t=gi(this._domNode);e.target!==this.selection&&this.onDidChangePosition(e.offsetX,e.offsetY),this.monitor.startMonitoring(e.target,e.pointerId,e.buttons,n=>this.onDidChangePosition(n.pageX-t.left,n.pageY-t.top),()=>null);const i=U(e.target.ownerDocument,ee.POINTER_UP,()=>{this._onColorFlushed.fire(),i.dispose(),this.monitor&&(this.monitor.stopMonitoring(!0),this.monitor=null)},!0)}onDidChangePosition(e,t){const i=Math.max(0,Math.min(1,e/this.width)),n=Math.max(0,Math.min(1,1-t/this.height));this.paintSelection(i,n),this._onDidChange.fire({s:i,v:n})}layout(){this.width=this._domNode.offsetWidth,this.height=this._domNode.offsetHeight,this._canvas.width=this.width*this.pixelRatio,this._canvas.height=this.height*this.pixelRatio,this.paint();const e=this.model.color.hsva;this.paintSelection(e.s,e.v)}paint(){const e=this.model.color.hsva,t=new q(new ea(e.h,1,1,1)),i=this._canvas.getContext("2d"),n=i.createLinearGradient(0,0,this._canvas.width,0);n.addColorStop(0,"rgba(255, 255, 255, 1)"),n.addColorStop(.5,"rgba(255, 255, 255, 0.5)"),n.addColorStop(1,"rgba(255, 255, 255, 0)");const s=i.createLinearGradient(0,0,0,this._canvas.height);s.addColorStop(0,"rgba(0, 0, 0, 0)"),s.addColorStop(1,"rgba(0, 0, 0, 1)"),i.rect(0,0,this._canvas.width,this._canvas.height),i.fillStyle=q.Format.CSS.format(t),i.fill(),i.fillStyle=n,i.fill(),i.fillStyle=s,i.fill()}paintSelection(e,t){this.selection.style.left=`${e*this.width}px`,this.selection.style.top=`${this.height-t*this.height}px`}onDidChangeColor(e){if(this.monitor&&this.monitor.isMonitoring())return;this.paint();const t=e.hsva;this.paintSelection(t.s,t.v)}}class wB extends z{constructor(e,t,i=!1){super(),this.model=t,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new A,this.onColorFlushed=this._onColorFlushed.event,i?(this.domNode=Z(e,Is(".standalone-strip")),this.overlay=Z(this.domNode,Is(".standalone-overlay"))):(this.domNode=Z(e,Is(".strip")),this.overlay=Z(this.domNode,Is(".overlay"))),this.slider=Z(this.domNode,Is(".slider")),this.slider.style.top="0px",this._register(U(this.domNode,ee.POINTER_DOWN,n=>this.onPointerDown(n))),this._register(t.onDidChangeColor(this.onDidChangeColor,this)),this.layout()}layout(){this.height=this.domNode.offsetHeight-this.slider.offsetHeight;const e=this.getValue(this.model.color);this.updateSliderPosition(e)}onDidChangeColor(e){const t=this.getValue(e);this.updateSliderPosition(t)}onPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const t=this._register(new Hg),i=gi(this.domNode);this.domNode.classList.add("grabbing"),e.target!==this.slider&&this.onDidChangeTop(e.offsetY),t.startMonitoring(e.target,e.pointerId,e.buttons,s=>this.onDidChangeTop(s.pageY-i.top),()=>null);const n=U(e.target.ownerDocument,ee.POINTER_UP,()=>{this._onColorFlushed.fire(),n.dispose(),t.stopMonitoring(!0),this.domNode.classList.remove("grabbing")},!0)}onDidChangeTop(e){const t=Math.max(0,Math.min(1,1-e/this.height));this.updateSliderPosition(t),this._onDidChange.fire(t)}updateSliderPosition(e){this.slider.style.top=`${(1-e)*this.height}px`}}class Gce extends wB{constructor(e,t,i=!1){super(e,t,i),this.domNode.classList.add("opacity-strip"),this.onDidChangeColor(this.model.color)}onDidChangeColor(e){super.onDidChangeColor(e);const{r:t,g:i,b:n}=e.rgba,s=new q(new qe(t,i,n,1)),r=new q(new qe(t,i,n,0));this.overlay.style.background=`linear-gradient(to bottom, ${s} 0%, ${r} 100%)`}getValue(e){return e.hsva.a}}class Zce extends wB{constructor(e,t,i=!1){super(e,t,i),this.domNode.classList.add("hue-strip")}getValue(e){return 1-e.hsva.h/360}}class Yce extends z{constructor(e){super(),this._onClicked=this._register(new A),this.onClicked=this._onClicked.event,this._button=Z(e,document.createElement("button")),this._button.classList.add("insert-button"),this._button.textContent="Insert",this._register(U(this._button,ee.CLICK,()=>{this._onClicked.fire()}))}get button(){return this._button}}class Qce extends xr{constructor(e,t,i,n,s=!1){super(),this.model=t,this.pixelRatio=i,this._register(Zp.getInstance(fe(e)).onDidChange(()=>this.layout())),this._domNode=Is(".colorpicker-widget"),e.appendChild(this._domNode),this.header=this._register(new $ce(this._domNode,this.model,n,s)),this.body=this._register(new jce(this._domNode,this.model,this.pixelRatio,s))}layout(){this.body.layout()}get domNode(){return this._domNode}}var yB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},SB=function(o,e){return function(t,i){e(t,i,o)}};class Xce{constructor(e,t,i,n){this.owner=e,this.range=t,this.model=i,this.provider=n,this.forceShowAtRange=!0}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}let iw=class{constructor(e,t){this._editor=e,this._themeService=t,this.hoverOrdinal=2}computeSync(e,t){return[]}computeAsync(e,t,i){return Ms.fromPromise(this._computeAsync(e,t,i))}async _computeAsync(e,t,i){if(!this._editor.hasModel())return[];const n=Tg.get(this._editor);if(!n)return[];for(const s of t){if(!n.isColorDecoration(s))continue;const r=n.getColorData(s.range.getStartPosition());if(r)return[await LB(this,this._editor.getModel(),r.colorInfo,r.provider)]}return[]}renderHoverParts(e,t){const i=xB(this,this._editor,this._themeService,t,e);if(!i)return new Ng([]);this._colorPicker=i.colorPicker;const n={hoverPart:i.hoverPart,hoverElement:this._colorPicker.domNode,dispose(){i.disposables.dispose()}};return new Ng([n])}handleResize(){this._colorPicker?.layout()}isColorPickerVisible(){return!!this._colorPicker}};iw=yB([SB(1,en)],iw);class Jce{constructor(e,t,i,n){this.owner=e,this.range=t,this.model=i,this.provider=n}}let nw=class{constructor(e,t){this._editor=e,this._themeService=t,this._color=null}async createColorHover(e,t,i){if(!this._editor.hasModel()||!Tg.get(this._editor))return null;const s=await bB(i,this._editor.getModel(),ut.None);let r=null,a=null;for(const h of s){const u=h.colorInfo;I.containsRange(u.range,e.range)&&(r=u,a=h.provider)}const l=r??e,c=a??t,d=!!r;return{colorHover:await LB(this,this._editor.getModel(),l,c),foundInEditor:d}}async updateEditorModel(e){if(!this._editor.hasModel())return;const t=e.model;let i=new I(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn);this._color&&(await X1(this._editor.getModel(),t,this._color,i,e),i=kB(this._editor,i,t))}renderHoverParts(e,t){return xB(this,this._editor,this._themeService,t,e)}set color(e){this._color=e}get color(){return this._color}};nw=yB([SB(1,en)],nw);async function LB(o,e,t,i){const n=e.getValueInRange(t.range),{red:s,green:r,blue:a,alpha:l}=t.color,c=new qe(Math.round(s*255),Math.round(r*255),Math.round(a*255),l),d=new q(c),h=await CB(e,t,i,ut.None),u=new Uce(d,[],0);return u.colorPresentations=h||[],u.guessColorPresentation(d,n),o instanceof iw?new Xce(o,I.lift(t.range),u,i):new Jce(o,I.lift(t.range),u,i)}function xB(o,e,t,i,n){if(i.length===0||!e.hasModel())return;if(n.setMinimumDimensions){const u=e.getOption(67)+8;n.setMinimumDimensions(new rt(302,u))}const s=new X,r=i[0],a=e.getModel(),l=r.model,c=s.add(new Qce(n.fragment,l,e.getOption(144),t,o instanceof nw));let d=!1,h=new I(r.range.startLineNumber,r.range.startColumn,r.range.endLineNumber,r.range.endColumn);if(o instanceof nw){const u=r.model.color;o.color=u,X1(a,l,u,h,r),s.add(l.onColorFlushed(f=>{o.color=f}))}else s.add(l.onColorFlushed(async u=>{await X1(a,l,u,h,r),d=!0,h=kB(e,h,l)}));return s.add(l.onDidChangeColor(u=>{X1(a,l,u,h,r)})),s.add(e.onDidChangeModelContent(u=>{d?d=!1:(n.hide(),e.focus())})),{hoverPart:r,colorPicker:c,disposables:s}}function kB(o,e,t){const i=[],n=t.presentation.textEdit??{range:e,text:t.presentation.label,forceMoveMarkers:!1};i.push(n),t.presentation.additionalTextEdits&&i.push(...t.presentation.additionalTextEdits);const s=I.lift(n.range),r=o.getModel()._setTrackedRange(null,s,3);return o.executeEdits("colorpicker",i),o.pushUndoStop(),o.getModel()._getTrackedRange(r)??s}async function X1(o,e,t,i,n){const s=await CB(o,{range:i,color:{red:t.rgba.r/255,green:t.rgba.g/255,blue:t.rgba.b/255,alpha:t.rgba.a}},n.provider,ut.None);e.colorPresentations=s||[]}class DB{constructor(e,t){this.range=e,this.direction=t}}class bM{constructor(e,t,i){this.hint=e,this.anchor=t,this.provider=i,this._isResolved=!1}with(e){const t=new bM(this.hint,e.anchor,this.provider);return t._isResolved=this._isResolved,t._currentResolve=this._currentResolve,t}async resolve(e){if(typeof this.provider.resolveInlayHint=="function"){if(this._currentResolve)return await this._currentResolve,e.isCancellationRequested?void 0:this.resolve(e);this._isResolved||(this._currentResolve=this._doResolve(e).finally(()=>this._currentResolve=void 0)),await this._currentResolve}}async _doResolve(e){try{const t=await Promise.resolve(this.provider.resolveInlayHint(this.hint,e));this.hint.tooltip=t?.tooltip??this.hint.tooltip,this.hint.label=t?.label??this.hint.label,this.hint.textEdits=t?.textEdits??this.hint.textEdits,this._isResolved=!0}catch(t){$n(t),this._isResolved=!1}}}const If=class If{static async create(e,t,i,n){const s=[],r=e.ordered(t).reverse().map(a=>i.map(async l=>{try{const c=await a.provideInlayHints(t,l,n);(c?.hints.length||a.onDidChangeInlayHints)&&s.push([c??If._emptyInlayHintList,a])}catch(c){$n(c)}}));if(await Promise.all(r.flat()),n.isCancellationRequested||t.isDisposed())throw new ha;return new If(i,s,t)}constructor(e,t,i){this._disposables=new X,this.ranges=e,this.provider=new Set;const n=[];for(const[s,r]of t){this._disposables.add(s),this.provider.add(r);for(const a of s.hints){const l=i.validatePosition(a.position);let c="before";const d=If._getRangeAtPosition(i,l);let h;d.getStartPosition().isBefore(l)?(h=I.fromPositions(d.getStartPosition(),l),c="after"):(h=I.fromPositions(l,d.getEndPosition()),c="before"),n.push(new bM(a,new DB(h,c),r))}}this.items=n.sort((s,r)=>P.compare(s.hint.position,r.hint.position))}dispose(){this._disposables.dispose()}static _getRangeAtPosition(e,t){const i=t.lineNumber,n=e.getWordAtPosition(t);if(n)return new I(i,n.startColumn,i,n.endColumn);e.tokenization.tokenizeIfCheap(i);const s=e.tokenization.getLineTokens(i),r=t.column-1,a=s.findTokenIndexAtOffset(r);let l=s.getStartOffset(a),c=s.getEndOffset(a);return c-l===1&&(l===r&&a>1?(l=s.getStartOffset(a-1),c=s.getEndOffset(a-1)):c===r&&aRf(f)?f.command.id:IB()));for(const f of Nl.all())h.has(f.desc.id)&&d.push(new Fs(f.desc.id,so.label(f.desc,{renderShortTitle:!0}),void 0,!0,async()=>{const g=await n.createModelReference(c.uri);try{const p=new Ig(g.object.textEditorModel,I.getStartPosition(c.range)),_=i.item.anchor.range;await a.invokeFunction(f.runEditorCommand.bind(f),e,p,_)}finally{g.dispose()}}));if(i.part.command){const{command:f}=i.part;d.push(new Gi),d.push(new Fs(f.id,f.title,void 0,!0,async()=>{try{await r.executeCommand(f.id,...f.arguments??[])}catch(g){l.notify({severity:bT.Error,source:i.item.provider.displayName,message:g})}}))}const u=e.getOption(128);s.showContextMenu({domForShadowRoot:u?e.getDomNode()??void 0:void 0,getAnchor:()=>{const f=gi(t);return{x:f.left,y:f.top+f.height+8}},getActions:()=>d,onHide:()=>{e.focus()},autoSelectFirstItem:!0})}async function ide(o,e,t,i){const s=await o.get(fo).createModelReference(i.uri);await t.invokeWithinContext(async r=>{const a=e.hasSideBySideModifier,l=r.get(De),c=qn.inPeekEditor.getValue(l),d=!a&&t.getOption(89)&&!c;return new db({openToSide:a,openInPeek:d,muteMessage:!0},{title:{value:"",original:""},id:"",precondition:void 0}).run(r,new Ig(s.object.textEditorModel,I.getStartPosition(i.range)),I.lift(i.range))}),s.dispose()}var nde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Bu=function(o,e){return function(t,i){e(t,i,o)}},Uu;class ow{constructor(){this._entries=new ou(50)}get(e){const t=ow._key(e);return this._entries.get(t)}set(e,t){const i=ow._key(e);this._entries.set(i,t)}static _key(e){return`${e.uri.toString()}/${e.getVersionId()}`}}const EB=He("IInlayHintsCache");Qe(EB,ow,1);class NE{constructor(e,t){this.item=e,this.index=t}get part(){const e=this.item.hint.label;return typeof e=="string"?{label:e}:e[this.index]}}class sde{constructor(e,t){this.part=e,this.hasTriggerModifier=t}}var ml;let TE=(ml=class{static get(e){return e.getContribution(Uu.ID)??void 0}constructor(e,t,i,n,s,r,a){this._editor=e,this._languageFeaturesService=t,this._inlayHintsCache=n,this._commandService=s,this._notificationService=r,this._instaService=a,this._disposables=new X,this._sessionDisposables=new X,this._decorationsMetadata=new Map,this._ruleFactory=new kv(this._editor),this._activeRenderMode=0,this._debounceInfo=i.for(t.inlayHintsProvider,"InlayHint",{min:25}),this._disposables.add(t.inlayHintsProvider.onDidChange(()=>this._update())),this._disposables.add(e.onDidChangeModel(()=>this._update())),this._disposables.add(e.onDidChangeModelLanguage(()=>this._update())),this._disposables.add(e.onDidChangeConfiguration(l=>{l.hasChanged(142)&&this._update()})),this._update()}dispose(){this._sessionDisposables.dispose(),this._removeAllDecorations(),this._disposables.dispose()}_update(){this._sessionDisposables.clear(),this._removeAllDecorations();const e=this._editor.getOption(142);if(e.enabled==="off")return;const t=this._editor.getModel();if(!t||!this._languageFeaturesService.inlayHintsProvider.has(t))return;if(e.enabled==="on")this._activeRenderMode=0;else{let a,l;e.enabled==="onUnlessPressed"?(a=0,l=1):(a=1,l=0),this._activeRenderMode=a,this._sessionDisposables.add(rl.getInstance().event(c=>{if(!this._editor.hasModel())return;const d=c.altKey&&c.ctrlKey&&!(c.shiftKey||c.metaKey)?l:a;if(d!==this._activeRenderMode){this._activeRenderMode=d;const h=this._editor.getModel(),u=this._copyInlayHintsWithCurrentAnchor(h);this._updateHintsDecorators([h.getFullModelRange()],u),r.schedule(0)}}))}const i=this._inlayHintsCache.get(t);i&&this._updateHintsDecorators([t.getFullModelRange()],i),this._sessionDisposables.add(_e(()=>{t.isDisposed()||this._cacheHintsForFastRestore(t)}));let n;const s=new Set,r=new ci(async()=>{const a=Date.now();n?.dispose(!0),n=new In;const l=t.onWillDispose(()=>n?.cancel());try{const c=n.token,d=await sw.create(this._languageFeaturesService.inlayHintsProvider,t,this._getHintsRanges(),c);if(r.delay=this._debounceInfo.update(t,Date.now()-a),c.isCancellationRequested){d.dispose();return}for(const h of d.provider)typeof h.onDidChangeInlayHints=="function"&&!s.has(h)&&(s.add(h),this._sessionDisposables.add(h.onDidChangeInlayHints(()=>{r.isScheduled()||r.schedule()})));this._sessionDisposables.add(d),this._updateHintsDecorators(d.ranges,d.items),this._cacheHintsForFastRestore(t)}catch(c){Ze(c)}finally{n.dispose(),l.dispose()}},this._debounceInfo.get(t));this._sessionDisposables.add(r),this._sessionDisposables.add(_e(()=>n?.dispose(!0))),r.schedule(0),this._sessionDisposables.add(this._editor.onDidScrollChange(a=>{(a.scrollTopChanged||!r.isScheduled())&&r.schedule()})),this._sessionDisposables.add(this._editor.onDidChangeModelContent(a=>{n?.cancel();const l=Math.max(r.delay,1250);r.schedule(l)})),this._sessionDisposables.add(this._installDblClickGesture(()=>r.schedule(0))),this._sessionDisposables.add(this._installLinkGesture()),this._sessionDisposables.add(this._installContextMenu())}_installLinkGesture(){const e=new X,t=e.add(new X8(this._editor)),i=new X;return e.add(i),e.add(t.onMouseMoveOrRelevantKeyDown(n=>{const[s]=n,r=this._getInlayHintLabelPart(s),a=this._editor.getModel();if(!r||!a){i.clear();return}const l=new In;i.add(_e(()=>l.dispose(!0))),r.item.resolve(l.token),this._activeInlayHintPart=r.part.command||r.part.location?new sde(r,s.hasTriggerModifier):void 0;const c=a.validatePosition(r.item.hint.position).lineNumber,d=new I(c,1,c,a.getLineMaxColumn(c)),h=this._getInlineHintsForRange(d);this._updateHintsDecorators([d],h),i.add(_e(()=>{this._activeInlayHintPart=void 0,this._updateHintsDecorators([d],h)}))})),e.add(t.onCancel(()=>i.clear())),e.add(t.onExecute(async n=>{const s=this._getInlayHintLabelPart(n);if(s){const r=s.part;r.location?this._instaService.invokeFunction(ide,n,this._editor,r.location):WL.is(r.command)&&await this._invokeCommand(r.command,s.item)}})),e}_getInlineHintsForRange(e){const t=new Set;for(const i of this._decorationsMetadata.values())e.containsRange(i.item.anchor.range)&&t.add(i.item);return Array.from(t)}_installDblClickGesture(e){return this._editor.onMouseUp(async t=>{if(t.event.detail!==2)return;const i=this._getInlayHintLabelPart(t);if(i&&(t.event.preventDefault(),await i.item.resolve(ut.None),Ps(i.item.hint.textEdits))){const n=i.item.hint.textEdits.map(s=>aa.replace(I.lift(s.range),s.text));this._editor.executeEdits("inlayHint.default",n),e()}})}_installContextMenu(){return this._editor.onContextMenu(async e=>{if(!Ei(e.event.target))return;const t=this._getInlayHintLabelPart(e);t&&await this._instaService.invokeFunction(tde,this._editor,e.event.target,t)})}_getInlayHintLabelPart(e){if(e.target.type!==6)return;const t=e.target.detail.injectedText?.options;if(t instanceof Bc&&t?.attachedData instanceof NE)return t.attachedData}async _invokeCommand(e,t){try{await this._commandService.executeCommand(e.id,...e.arguments??[])}catch(i){this._notificationService.notify({severity:bT.Error,source:t.provider.displayName,message:i})}}_cacheHintsForFastRestore(e){const t=this._copyInlayHintsWithCurrentAnchor(e);this._inlayHintsCache.set(e,t)}_copyInlayHintsWithCurrentAnchor(e){const t=new Map;for(const[i,n]of this._decorationsMetadata){if(t.has(n.item))continue;const s=e.getDecorationRange(i);if(s){const r=new DB(s,n.item.anchor.direction),a=n.item.with({anchor:r});t.set(n.item,a)}}return Array.from(t.values())}_getHintsRanges(){const t=this._editor.getModel(),i=this._editor.getVisibleRangesPlusViewportAboveBelow(),n=[];for(const s of i.sort(I.compareRangesUsingStarts)){const r=t.validateRange(new I(s.startLineNumber-30,s.startColumn,s.endLineNumber+30,s.endColumn));n.length===0||!I.areIntersectingOrTouching(n[n.length-1],r)?n.push(r):n[n.length-1]=I.plusRange(n[n.length-1],r)}return n}_updateHintsDecorators(e,t){const i=[],n=(g,p,_,b,C)=>{const w={content:_,inlineClassNameAffectsLetterSpacing:!0,inlineClassName:p.className,cursorStops:b,attachedData:C};i.push({item:g,classNameRef:p,decoration:{range:g.anchor.range,options:{description:"InlayHint",showIfCollapsed:g.anchor.range.isEmpty(),collapseOnReplaceEdit:!g.anchor.range.isEmpty(),stickiness:0,[g.anchor.direction]:this._activeRenderMode===0?w:void 0}}})},s=(g,p)=>{const _=this._ruleFactory.createClassNameRef({width:`${r/3|0}px`,display:"inline-block"});n(g,_," ",p?gr.Right:gr.None)},{fontSize:r,fontFamily:a,padding:l,isUniform:c}=this._getLayoutInfo(),d="--code-editorInlayHintsFontFamily";this._editor.getContainerDomNode().style.setProperty(d,a);let h={line:0,totalLen:0};for(const g of t){if(h.line!==g.anchor.range.startLineNumber&&(h={line:g.anchor.range.startLineNumber,totalLen:0}),h.totalLen>Uu._MAX_LABEL_LEN)continue;g.hint.paddingLeft&&s(g,!1);const p=typeof g.hint.label=="string"?[{label:g.hint.label}]:g.hint.label;for(let _=0;_0&&(y=y.slice(0,-L)+"…",x=!0),n(g,this._ruleFactory.createClassNameRef(v),ode(y),w&&!g.hint.paddingRight?gr.Right:gr.None,new NE(g,_)),x)break}if(g.hint.paddingRight&&s(g,!0),i.length>Uu._MAX_DECORATORS)break}const u=[];for(const[g,p]of this._decorationsMetadata){const _=this._editor.getModel()?.getDecorationRange(g);_&&e.some(b=>b.containsRange(_))&&(u.push(g),p.classNameRef.dispose(),this._decorationsMetadata.delete(g))}const f=qh.capture(this._editor);this._editor.changeDecorations(g=>{const p=g.deltaDecorations(u,i.map(_=>_.decoration));for(let _=0;_i)&&(s=i);const r=e.fontFamily||n;return{fontSize:s,fontFamily:r,padding:t,isUniform:!t&&r===n&&s===i}}_removeAllDecorations(){this._editor.removeDecorations(Array.from(this._decorationsMetadata.keys()));for(const e of this._decorationsMetadata.values())e.classNameRef.dispose();this._decorationsMetadata.clear()}},Uu=ml,ml.ID="editor.contrib.InlayHints",ml._MAX_DECORATORS=1500,ml._MAX_LABEL_LEN=43,ml);TE=Uu=nde([Bu(1,Se),Bu(2,q0),Bu(3,EB),Bu(4,hi),Bu(5,mn),Bu(6,ke)],TE);function ode(o){return o.replace(/[ \t]/g," ")}bt.registerCommand("_executeInlayHintProvider",async(o,...e)=>{const[t,i]=e;ai(ve.isUri(t)),ai(I.isIRange(i));const{inlayHintsProvider:n}=o.get(Se),s=await o.get(fo).createModelReference(t);try{const r=await sw.create(n,s.object.textEditorModel,[I.lift(i)],ut.None),a=r.items.map(l=>l.hint);return setTimeout(()=>r.dispose(),0),a}finally{s.dispose()}});var rde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},zl=function(o,e){return function(t,i){e(t,i,o)}};class B4 extends Q1{constructor(e,t,i,n){super(10,t,e.item.anchor.range,i,n,!0),this.part=e}}let ME=class extends P_{constructor(e,t,i,n,s,r,a,l,c){super(e,t,i,r,l,n,s,c),this._resolverService=a,this.hoverOrdinal=6}suggestHoverAnchor(e){if(!TE.get(this._editor)||e.target.type!==6)return null;const i=e.target.detail.injectedText?.options;return i instanceof Bc&&i.attachedData instanceof NE?new B4(i.attachedData,this,e.event.posx,e.event.posy):null}computeSync(){return[]}computeAsync(e,t,i){return e instanceof B4?new Ms(async n=>{const{part:s}=e;if(await s.item.resolve(i),i.isCancellationRequested)return;let r;typeof s.item.hint.tooltip=="string"?r=new Js().appendText(s.item.hint.tooltip):s.item.hint.tooltip&&(r=s.item.hint.tooltip),r&&n.emitOne(new hr(this,e.range,[r],!1,0)),Ps(s.item.hint.textEdits)&&n.emitOne(new hr(this,e.range,[new Js().appendText(m("hint.dbl","Double-click to insert"))],!1,10001));let a;if(typeof s.part.tooltip=="string"?a=new Js().appendText(s.part.tooltip):s.part.tooltip&&(a=s.part.tooltip),a&&n.emitOne(new hr(this,e.range,[a],!1,1)),s.part.location||s.part.command){let c;const h=this._editor.getOption(78)==="altKey"?Ue?m("links.navigate.kb.meta.mac","cmd + click"):m("links.navigate.kb.meta","ctrl + click"):Ue?m("links.navigate.kb.alt.mac","option + click"):m("links.navigate.kb.alt","alt + click");s.part.location&&s.part.command?c=new Js().appendText(m("hint.defAndCommand","Go to Definition ({0}), right click for more",h)):s.part.location?c=new Js().appendText(m("hint.def","Go to Definition ({0})",h)):s.part.command&&(c=new Js(`[${m("hint.cmd","Execute Command")}](${ede(s.part.command)} "${s.part.command.title}") (${h})`,{isTrusted:!0})),c&&n.emitOne(new hr(this,e.range,[c],!1,1e4))}const l=await this._resolveInlayHintLabelPartHover(s,i);for await(const c of l)n.emitOne(c)}):Ms.EMPTY}async _resolveInlayHintLabelPartHover(e,t){if(!e.part.location)return Ms.EMPTY;const{uri:i,range:n}=e.part.location,s=await this._resolverService.createModelReference(i);try{const r=s.object.textEditorModel;return this._languageFeaturesService.hoverProvider.has(r)?pM(this._languageFeaturesService.hoverProvider,r,new P(n.startLineNumber,n.startColumn),t).filter(a=>!bg(a.hover.contents)).map(a=>new hr(this,e.item.anchor.range,a.hover.contents,!1,2+a.ordinal)):Ms.EMPTY}finally{s.dispose()}}};ME=rde([zl(1,qt),zl(2,Vo),zl(3,vt),zl(4,au),zl(5,lt),zl(6,fo),zl(7,Se),zl(8,hi)],ME);class CM extends z{constructor(e,t,i,n,s,r){super();const a=t.anchor,l=t.hoverParts;this._renderedHoverParts=this._register(new RE(e,i,l,r,s));const{showAtPosition:c,showAtSecondaryPosition:d}=CM.computeHoverPositions(e,a.range,l);this.shouldAppearBeforeContent=l.some(h=>h.isBeforeContent),this.showAtPosition=c,this.showAtSecondaryPosition=d,this.initialMousePosX=a.initialMousePosX,this.initialMousePosY=a.initialMousePosY,this.shouldFocus=n.shouldFocus,this.source=n.source}get domNode(){return this._renderedHoverParts.domNode}get domNodeHasChildren(){return this._renderedHoverParts.domNodeHasChildren}get focusedHoverPartIndex(){return this._renderedHoverParts.focusedHoverPartIndex}async updateHoverVerbosityLevel(e,t,i){this._renderedHoverParts.updateHoverVerbosityLevel(e,t,i)}isColorPickerVisible(){return this._renderedHoverParts.isColorPickerVisible()}static computeHoverPositions(e,t,i){let n=1;if(e.hasModel()){const d=e._getViewModel(),h=d.coordinatesConverter,u=h.convertModelRangeToViewRange(t),f=d.getLineMinColumn(u.startLineNumber),g=new P(u.startLineNumber,f);n=h.convertViewPositionToModelPosition(g).column}const s=t.startLineNumber;let r=t.startColumn,a;for(const d of i){const h=d.range,u=h.startLineNumber===s,f=h.endLineNumber===s;if(u&&f){const p=h.startColumn,_=Math.min(r,p);r=Math.max(_,n)}d.forceShowAtRange&&(a=h)}let l,c;if(a){const d=a.getStartPosition();l=d,c=d}else l=t.getStartPosition(),c=new P(s,r);return{showAtPosition:l,showAtSecondaryPosition:c}}}class ade{constructor(e,t){this._statusBar=t,e.appendChild(this._statusBar.hoverElement)}get hoverElement(){return this._statusBar.hoverElement}get actions(){return this._statusBar.actions}dispose(){this._statusBar.dispose()}}const g0=class g0 extends z{constructor(e,t,i,n,s){super(),this._renderedParts=[],this._focusedHoverPartIndex=-1,this._context=s,this._fragment=document.createDocumentFragment(),this._register(this._renderParts(t,i,s,n)),this._register(this._registerListenersOnRenderedParts()),this._register(this._createEditorDecorations(e,i)),this._updateMarkdownAndColorParticipantInfo(t)}_createEditorDecorations(e,t){if(t.length===0)return z.None;let i=t[0].range;for(const s of t){const r=s.range;i=I.plusRange(i,r)}const n=e.createDecorationsCollection();return n.set([{range:i,options:g0._DECORATION_OPTIONS}]),_e(()=>{n.clear()})}_renderParts(e,t,i,n){const s=new kE(n),r={fragment:this._fragment,statusBar:s,...i},a=new X;for(const c of e){const d=this._renderHoverPartsForParticipant(t,c,r);a.add(d);for(const h of d.renderedHoverParts)this._renderedParts.push({type:"hoverPart",participant:c,hoverPart:h.hoverPart,hoverElement:h.hoverElement})}const l=this._renderStatusBar(this._fragment,s);return l&&(a.add(l),this._renderedParts.push({type:"statusBar",hoverElement:l.hoverElement,actions:l.actions})),_e(()=>{a.dispose()})}_renderHoverPartsForParticipant(e,t,i){const n=e.filter(r=>r.owner===t);return n.length>0?t.renderHoverParts(i,n):new Ng([])}_renderStatusBar(e,t){if(t.hasContent)return new ade(e,t)}_registerListenersOnRenderedParts(){const e=new X;return this._renderedParts.forEach((t,i)=>{const n=t.hoverElement;n.tabIndex=0,e.add(U(n,ee.FOCUS_IN,s=>{s.stopPropagation(),this._focusedHoverPartIndex=i})),e.add(U(n,ee.FOCUS_OUT,s=>{s.stopPropagation(),this._focusedHoverPartIndex=-1}))}),e}_updateMarkdownAndColorParticipantInfo(e){const t=e.find(i=>i instanceof P_&&!(i instanceof ME));t&&(this._markdownHoverParticipant=t),this._colorHoverParticipant=e.find(i=>i instanceof iw)}async updateHoverVerbosityLevel(e,t,i){if(!this._markdownHoverParticipant)return;const n=this._normalizedIndexToMarkdownHoverIndexRange(this._markdownHoverParticipant,t);if(n===void 0)return;const s=await this._markdownHoverParticipant.updateMarkdownHoverVerbosityLevel(e,n,i);s&&(this._renderedParts[t]={type:"hoverPart",participant:this._markdownHoverParticipant,hoverPart:s.hoverPart,hoverElement:s.hoverElement},this._context.onContentsChanged())}isColorPickerVisible(){return this._colorHoverParticipant?.isColorPickerVisible()??!1}_normalizedIndexToMarkdownHoverIndexRange(e,t){const i=this._renderedParts[t];if(!i||i.type!=="hoverPart"||!(i.participant===e))return;const s=this._renderedParts.findIndex(r=>r.type==="hoverPart"&&r.participant===e);if(s===-1)throw new nt;return t-s}get domNode(){return this._fragment}get domNodeHasChildren(){return this._fragment.hasChildNodes()}get focusedHoverPartIndex(){return this._focusedHoverPartIndex}};g0._DECORATION_OPTIONS=kt.register({description:"content-hover-highlight",className:"hoverHighlight"});let RE=g0;var lde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},W4=function(o,e){return function(t,i){e(t,i,o)}};let AE=class extends z{constructor(e,t,i){super(),this._editor=e,this._instantiationService=t,this._keybindingService=i,this._currentResult=null,this._onContentsChanged=this._register(new A),this.onContentsChanged=this._onContentsChanged.event,this._contentHoverWidget=this._register(this._instantiationService.createInstance(xE,this._editor)),this._participants=this._initializeHoverParticipants(),this._computer=new ew(this._editor,this._participants),this._hoverOperation=this._register(new fB(this._editor,this._computer)),this._registerListeners()}_initializeHoverParticipants(){const e=[];for(const t of Oy.getAll()){const i=this._instantiationService.createInstance(t,this._editor);e.push(i)}return e.sort((t,i)=>t.hoverOrdinal-i.hoverOrdinal),this._register(this._contentHoverWidget.onDidResize(()=>{this._participants.forEach(t=>t.handleResize?.())})),e}_registerListeners(){this._register(this._hoverOperation.onResult(t=>{if(!this._computer.anchor)return;const i=t.hasLoadingMessage?this._addLoadingMessage(t.value):t.value;this._withResult(new gB(this._computer.anchor,i,t.isComplete))}));const e=this._contentHoverWidget.getDomNode();this._register(jt(e,"keydown",t=>{t.equals(9)&&this.hide()})),this._register(jt(e,"mouseleave",t=>{this._onMouseLeave(t)})),this._register(si.onDidChange(()=>{this._contentHoverWidget.position&&this._currentResult&&this._setCurrentResult(this._currentResult)}))}_startShowingOrUpdateHover(e,t,i,n,s){if(!(this._contentHoverWidget.position&&this._currentResult))return e?(this._startHoverOperationIfNecessary(e,t,i,n,!1),!0):!1;const a=this._editor.getOption(60).sticky,l=s&&this._contentHoverWidget.isMouseGettingCloser(s.event.posx,s.event.posy);return a&&l?(e&&this._startHoverOperationIfNecessary(e,t,i,n,!0),!0):e?this._currentResult.anchor.equals(e)?!0:e.canAdoptVisibleHover(this._currentResult.anchor,this._contentHoverWidget.position)?(this._setCurrentResult(this._currentResult.filter(e)),this._startHoverOperationIfNecessary(e,t,i,n,!1),!0):(this._setCurrentResult(null),this._startHoverOperationIfNecessary(e,t,i,n,!1),!0):(this._setCurrentResult(null),!1)}_startHoverOperationIfNecessary(e,t,i,n,s){this._computer.anchor&&this._computer.anchor.equals(e)||(this._hoverOperation.cancel(),this._computer.anchor=e,this._computer.shouldFocus=n,this._computer.source=i,this._computer.insistOnKeepingHoverVisible=s,this._hoverOperation.start(t))}_setCurrentResult(e){let t=e;if(this._currentResult===t)return;t&&t.hoverParts.length===0&&(t=null),this._currentResult=t,this._currentResult?this._showHover(this._currentResult):this._hideHover()}_addLoadingMessage(e){if(!this._computer.anchor)return e;for(const t of this._participants){if(!t.createLoadingMessage)continue;const i=t.createLoadingMessage(this._computer.anchor);if(i)return e.slice(0).concat([i])}return e}_withResult(e){if(this._contentHoverWidget.position&&this._currentResult&&this._currentResult.isComplete||this._setCurrentResult(e),!e.isComplete)return;const n=e.hoverParts.length===0,s=this._computer.insistOnKeepingHoverVisible;n&&s||this._setCurrentResult(e)}_showHover(e){const t=this._getHoverContext();this._renderedContentHover=new CM(this._editor,e,this._participants,this._computer,t,this._keybindingService),this._renderedContentHover.domNodeHasChildren?this._contentHoverWidget.show(this._renderedContentHover):this._renderedContentHover.dispose()}_hideHover(){this._contentHoverWidget.hide()}_getHoverContext(){return{hide:()=>{this.hide()},onContentsChanged:()=>{this._onContentsChanged.fire(),this._contentHoverWidget.onContentsChanged()},setMinimumDimensions:n=>{this._contentHoverWidget.setMinimumDimensions(n)}}}showsOrWillShow(e){if(this._contentHoverWidget.isResizing)return!0;const i=this._findHoverAnchorCandidates(e);if(!(i.length>0))return this._startShowingOrUpdateHover(null,0,0,!1,e);const s=i[0];return this._startShowingOrUpdateHover(s,0,0,!1,e)}_findHoverAnchorCandidates(e){const t=[];for(const n of this._participants){if(!n.suggestHoverAnchor)continue;const s=n.suggestHoverAnchor(e);s&&t.push(s)}const i=e.target;switch(i.type){case 6:{t.push(new gL(0,i.range,e.event.posx,e.event.posy));break}case 7:{const n=this._editor.getOption(50).typicalHalfwidthCharacterWidth/2;if(!(!i.detail.isAfterLines&&typeof i.detail.horizontalDistanceToText=="number"&&i.detail.horizontalDistanceToTexts.priority-n.priority),t}_onMouseLeave(e){const t=this._editor.getDomNode();(!t||!Py(t,e.x,e.y))&&this.hide()}startShowingAtRange(e,t,i,n){this._startShowingOrUpdateHover(new gL(0,e,void 0,void 0),t,i,n,null)}async updateHoverVerbosityLevel(e,t,i){this._renderedContentHover?.updateHoverVerbosityLevel(e,t,i)}focusedHoverPartIndex(){return this._renderedContentHover?.focusedHoverPartIndex??-1}containsNode(e){return e?this._contentHoverWidget.getDomNode().contains(e):!1}focus(){this._contentHoverWidget.focus()}scrollUp(){this._contentHoverWidget.scrollUp()}scrollDown(){this._contentHoverWidget.scrollDown()}scrollLeft(){this._contentHoverWidget.scrollLeft()}scrollRight(){this._contentHoverWidget.scrollRight()}pageUp(){this._contentHoverWidget.pageUp()}pageDown(){this._contentHoverWidget.pageDown()}goToTop(){this._contentHoverWidget.goToTop()}goToBottom(){this._contentHoverWidget.goToBottom()}hide(){this._computer.anchor=null,this._hoverOperation.cancel(),this._setCurrentResult(null)}getDomNode(){return this._contentHoverWidget.getDomNode()}get isColorPickerVisible(){return this._renderedContentHover?.isColorPickerVisible()??!1}get isVisibleFromKeyboard(){return this._contentHoverWidget.isVisibleFromKeyboard}get isVisible(){return this._contentHoverWidget.isVisible}get isFocused(){return this._contentHoverWidget.isFocused}get isResizing(){return this._contentHoverWidget.isResizing}get widget(){return this._contentHoverWidget}};AE=lde([W4(1,ke),W4(2,vt)],AE);var cde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},H4=function(o,e){return function(t,i){e(t,i,o)}},PE,vh;let Tn=(vh=class extends z{constructor(e,t,i){super(),this._editor=e,this._instantiationService=t,this._keybindingService=i,this._onHoverContentsChanged=this._register(new A),this.shouldKeepOpenOnEditorMouseMoveOrLeave=!1,this._listenersStore=new X,this._hoverState={mouseDown:!1,activatedByDecoratorClick:!1},this._reactToEditorMouseMoveRunner=this._register(new ci(()=>this._reactToEditorMouseMove(this._mouseMoveEvent),0)),this._hookListeners(),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(60)&&(this._unhookListeners(),this._hookListeners())}))}static get(e){return e.getContribution(PE.ID)}_hookListeners(){const e=this._editor.getOption(60);this._hoverSettings={enabled:e.enabled,sticky:e.sticky,hidingDelay:e.hidingDelay},e.enabled?(this._listenersStore.add(this._editor.onMouseDown(t=>this._onEditorMouseDown(t))),this._listenersStore.add(this._editor.onMouseUp(()=>this._onEditorMouseUp())),this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))):(this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))),this._listenersStore.add(this._editor.onMouseLeave(t=>this._onEditorMouseLeave(t))),this._listenersStore.add(this._editor.onDidChangeModel(()=>{this._cancelScheduler(),this._hideWidgets()})),this._listenersStore.add(this._editor.onDidChangeModelContent(()=>this._cancelScheduler())),this._listenersStore.add(this._editor.onDidScrollChange(t=>this._onEditorScrollChanged(t)))}_unhookListeners(){this._listenersStore.clear()}_cancelScheduler(){this._mouseMoveEvent=void 0,this._reactToEditorMouseMoveRunner.cancel()}_onEditorScrollChanged(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()}_onEditorMouseDown(e){this._hoverState.mouseDown=!0,!this._shouldNotHideCurrentHoverWidget(e)&&this._hideWidgets()}_shouldNotHideCurrentHoverWidget(e){return this._isMouseOnContentHoverWidget(e)||this._isContentWidgetResizing()}_isMouseOnContentHoverWidget(e){const t=this._contentWidget?.getDomNode();return t?Py(t,e.event.posx,e.event.posy):!1}_onEditorMouseUp(){this._hoverState.mouseDown=!1}_onEditorMouseLeave(e){this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._cancelScheduler(),this._shouldNotHideCurrentHoverWidget(e))||this._hideWidgets()}_shouldNotRecomputeCurrentHoverWidget(e){const t=this._hoverSettings.sticky,i=(r,a)=>{const l=this._isMouseOnContentHoverWidget(r);return a&&l},n=r=>{const a=this._isMouseOnContentHoverWidget(r),l=this._contentWidget?.isColorPickerVisible??!1;return a&&l},s=(r,a)=>(a&&this._contentWidget?.containsNode(r.event.browserEvent.view?.document.activeElement)&&!r.event.browserEvent.view?.getSelection()?.isCollapsed)??!1;return i(e,t)||n(e)||s(e,t)}_onEditorMouseMove(e){if(this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._mouseMoveEvent=e,this._contentWidget?.isFocused||this._contentWidget?.isResizing))return;const t=this._hoverSettings.sticky;if(t&&this._contentWidget?.isVisibleFromKeyboard)return;if(this._shouldNotRecomputeCurrentHoverWidget(e)){this._reactToEditorMouseMoveRunner.cancel();return}const n=this._hoverSettings.hidingDelay;if(this._contentWidget?.isVisible&&t&&n>0){this._reactToEditorMouseMoveRunner.isScheduled()||this._reactToEditorMouseMoveRunner.schedule(n);return}this._reactToEditorMouseMove(e)}_reactToEditorMouseMove(e){if(!e)return;const i=e.target.element?.classList.contains("colorpicker-color-decoration"),n=this._editor.getOption(149),s=this._hoverSettings.enabled,r=this._hoverState.activatedByDecoratorClick;if(i&&(n==="click"&&!r||n==="hover"&&!s||n==="clickAndHover"&&!s&&!r)||!i&&!s&&!r){this._hideWidgets();return}this._tryShowHoverWidget(e)||this._hideWidgets()}_tryShowHoverWidget(e){return this._getOrCreateContentWidget().showsOrWillShow(e)}_onKeyDown(e){if(!this._editor.hasModel())return;const t=this._keybindingService.softDispatch(e,this._editor.getDomNode()),i=t.kind===1||t.kind===2&&(t.commandId===Q8||t.commandId===Ey||t.commandId===Ny)&&this._contentWidget?.isVisible;e.keyCode===5||e.keyCode===6||e.keyCode===57||e.keyCode===4||i||this._hideWidgets()}_hideWidgets(){this._hoverState.mouseDown&&this._contentWidget?.isColorPickerVisible||Eg.dropDownVisible||(this._hoverState.activatedByDecoratorClick=!1,this._contentWidget?.hide())}_getOrCreateContentWidget(){return this._contentWidget||(this._contentWidget=this._instantiationService.createInstance(AE,this._editor),this._listenersStore.add(this._contentWidget.onContentsChanged(()=>this._onHoverContentsChanged.fire()))),this._contentWidget}showContentHover(e,t,i,n,s=!1){this._hoverState.activatedByDecoratorClick=s,this._getOrCreateContentWidget().startShowingAtRange(e,t,i,n)}_isContentWidgetResizing(){return this._contentWidget?.widget.isResizing||!1}focusedHoverPartIndex(){return this._getOrCreateContentWidget().focusedHoverPartIndex()}updateHoverVerbosityLevel(e,t,i){this._getOrCreateContentWidget().updateHoverVerbosityLevel(e,t,i)}focus(){this._contentWidget?.focus()}scrollUp(){this._contentWidget?.scrollUp()}scrollDown(){this._contentWidget?.scrollDown()}scrollLeft(){this._contentWidget?.scrollLeft()}scrollRight(){this._contentWidget?.scrollRight()}pageUp(){this._contentWidget?.pageUp()}pageDown(){this._contentWidget?.pageDown()}goToTop(){this._contentWidget?.goToTop()}goToBottom(){this._contentWidget?.goToBottom()}get isColorPickerVisible(){return this._contentWidget?.isColorPickerVisible}get isHoverVisible(){return this._contentWidget?.isVisible}dispose(){super.dispose(),this._unhookListeners(),this._listenersStore.dispose(),this._contentWidget?.dispose()}},PE=vh,vh.ID="editor.contrib.contentHover",vh);Tn=PE=cde([H4(1,ke),H4(2,vt)],Tn);var Qo;(function(o){o.NoAutoFocus="noAutoFocus",o.FocusIfVisible="focusIfVisible",o.AutoFocusImmediately="autoFocusImmediately"})(Qo||(Qo={}));class dde extends bi{constructor(){super({id:Q8,label:m({key:"showOrFocusHover",comment:["Label for action that will trigger the showing/focusing of a hover in the editor.","If the hover is not visible, it will show the hover.","This allows for users to show the hover without using the mouse."]},"Show or Focus Hover"),metadata:{description:di("showOrFocusHoverDescription","Show or focus the editor hover which shows documentation, references, and other content for a symbol at the current cursor position."),args:[{name:"args",schema:{type:"object",properties:{focus:{description:"Controls if and when the hover should take focus upon being triggered by this action.",enum:[Qo.NoAutoFocus,Qo.FocusIfVisible,Qo.AutoFocusImmediately],enumDescriptions:[m("showOrFocusHover.focus.noAutoFocus","The hover will not automatically take focus."),m("showOrFocusHover.focus.focusIfVisible","The hover will take focus only if it is already visible."),m("showOrFocusHover.focus.autoFocusImmediately","The hover will automatically take focus when it appears.")],default:Qo.FocusIfVisible}}}}]},alias:"Show or Focus Hover",precondition:void 0,kbOpts:{kbExpr:K.editorTextFocus,primary:Vp(2089,2087),weight:100}})}run(e,t,i){if(!t.hasModel())return;const n=Tn.get(t);if(!n)return;const s=i?.focus;let r=Qo.FocusIfVisible;Object.values(Qo).includes(s)?r=s:typeof s=="boolean"&&s&&(r=Qo.AutoFocusImmediately);const a=c=>{const d=t.getPosition(),h=new I(d.lineNumber,d.column,d.lineNumber,d.column);n.showContentHover(h,1,1,c)},l=t.getOption(2)===2;n.isHoverVisible?r!==Qo.NoAutoFocus?n.focus():a(l):a(l||r===Qo.AutoFocusImmediately)}}class hde extends bi{constructor(){super({id:Ale,label:m({key:"showDefinitionPreviewHover",comment:["Label for action that will trigger the showing of definition preview hover in the editor.","This allows for users to show the definition preview hover without using the mouse."]},"Show Definition Preview Hover"),alias:"Show Definition Preview Hover",precondition:void 0,metadata:{description:di("showDefinitionPreviewHoverDescription","Show the definition preview hover in the editor.")}})}run(e,t){const i=Tn.get(t);if(!i)return;const n=t.getPosition();if(!n)return;const s=new I(n.lineNumber,n.column,n.lineNumber,n.column),r=A_.get(t);if(!r)return;r.startFindDefinitionFromCursor(n).then(()=>{i.showContentHover(s,1,1,!0)})}}class ude extends bi{constructor(){super({id:Ple,label:m({key:"scrollUpHover",comment:["Action that allows to scroll up in the hover widget with the up arrow when the hover widget is focused."]},"Scroll Up Hover"),alias:"Scroll Up Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:16,weight:100},metadata:{description:di("scrollUpHoverDescription","Scroll up the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollUp()}}class fde extends bi{constructor(){super({id:Ole,label:m({key:"scrollDownHover",comment:["Action that allows to scroll down in the hover widget with the up arrow when the hover widget is focused."]},"Scroll Down Hover"),alias:"Scroll Down Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:18,weight:100},metadata:{description:di("scrollDownHoverDescription","Scroll down the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollDown()}}class gde extends bi{constructor(){super({id:Fle,label:m({key:"scrollLeftHover",comment:["Action that allows to scroll left in the hover widget with the left arrow when the hover widget is focused."]},"Scroll Left Hover"),alias:"Scroll Left Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:15,weight:100},metadata:{description:di("scrollLeftHoverDescription","Scroll left the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollLeft()}}class mde extends bi{constructor(){super({id:Ble,label:m({key:"scrollRightHover",comment:["Action that allows to scroll right in the hover widget with the right arrow when the hover widget is focused."]},"Scroll Right Hover"),alias:"Scroll Right Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:17,weight:100},metadata:{description:di("scrollRightHoverDescription","Scroll right the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollRight()}}class pde extends bi{constructor(){super({id:Wle,label:m({key:"pageUpHover",comment:["Action that allows to page up in the hover widget with the page up command when the hover widget is focused."]},"Page Up Hover"),alias:"Page Up Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:11,secondary:[528],weight:100},metadata:{description:di("pageUpHoverDescription","Page up the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.pageUp()}}class _de extends bi{constructor(){super({id:Hle,label:m({key:"pageDownHover",comment:["Action that allows to page down in the hover widget with the page down command when the hover widget is focused."]},"Page Down Hover"),alias:"Page Down Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:12,secondary:[530],weight:100},metadata:{description:di("pageDownHoverDescription","Page down the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.pageDown()}}class bde extends bi{constructor(){super({id:Vle,label:m({key:"goToTopHover",comment:["Action that allows to go to the top of the hover widget with the home command when the hover widget is focused."]},"Go To Top Hover"),alias:"Go To Bottom Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:14,secondary:[2064],weight:100},metadata:{description:di("goToTopHoverDescription","Go to the top of the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.goToTop()}}class Cde extends bi{constructor(){super({id:zle,label:m({key:"goToBottomHover",comment:["Action that allows to go to the bottom in the hover widget with the end command when the hover widget is focused."]},"Go To Bottom Hover"),alias:"Go To Bottom Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:13,secondary:[2066],weight:100},metadata:{description:di("goToBottomHoverDescription","Go to the bottom of the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.goToBottom()}}class vde extends bi{constructor(){super({id:Ey,label:Ule,alias:"Increase Hover Verbosity Level",precondition:K.hoverVisible})}run(e,t,i){const n=Tn.get(t);if(!n)return;const s=i?.index!==void 0?i.index:n.focusedHoverPartIndex();n.updateHoverVerbosityLevel(is.Increase,s,i?.focus)}}class wde extends bi{constructor(){super({id:Ny,label:$le,alias:"Decrease Hover Verbosity Level",precondition:K.hoverVisible})}run(e,t,i){const n=Tn.get(t);if(!n)return;const s=i?.index!==void 0?i.index:n.focusedHoverPartIndex();Tn.get(t)?.updateHoverVerbosityLevel(is.Decrease,s,i?.focus)}}const Vr=class Vr{constructor(e){this.value=e}equals(e){return this.value===e.value}contains(e){return this.equals(e)||this.value===""||e.value.startsWith(this.value+Vr.sep)}intersects(e){return this.contains(e)||e.contains(this)}append(...e){return new Vr((this.value?[this.value,...e]:e).join(Vr.sep))}};Vr.sep=".",Vr.None=new Vr("@@none@@"),Vr.Empty=new Vr("");let ji=Vr;const Di=new class{constructor(){this.QuickFix=new ji("quickfix"),this.Refactor=new ji("refactor"),this.RefactorExtract=this.Refactor.append("extract"),this.RefactorInline=this.Refactor.append("inline"),this.RefactorMove=this.Refactor.append("move"),this.RefactorRewrite=this.Refactor.append("rewrite"),this.Notebook=new ji("notebook"),this.Source=new ji("source"),this.SourceOrganizeImports=this.Source.append("organizeImports"),this.SourceFixAll=this.Source.append("fixAll"),this.SurroundWith=this.Refactor.append("surround")}};var Uc;(function(o){o.Refactor="refactor",o.RefactorPreview="refactor preview",o.Lightbulb="lightbulb",o.Default="other (default)",o.SourceAction="source action",o.QuickFix="quick fix action",o.FixAll="fix all",o.OrganizeImports="organize imports",o.AutoFix="auto fix",o.QuickFixHover="quick fix hover window",o.OnSave="save participants",o.ProblemsView="problems view"})(Uc||(Uc={}));function yde(o,e){return!(o.include&&!o.include.intersects(e)||o.excludes&&o.excludes.some(t=>NB(e,t,o.include))||!o.includeSourceActions&&Di.Source.contains(e))}function Sde(o,e){const t=e.kind?new ji(e.kind):void 0;return!(o.include&&(!t||!o.include.contains(t))||o.excludes&&t&&o.excludes.some(i=>NB(t,i,o.include))||!o.includeSourceActions&&t&&Di.Source.contains(t)||o.onlyIncludePreferredActions&&!e.isPreferred)}function NB(o,e,t){return!(!e.contains(o)||t&&e.contains(t))}class Nd{static fromUser(e,t){return!e||typeof e!="object"?new Nd(t.kind,t.apply,!1):new Nd(Nd.getKindFromUser(e,t.kind),Nd.getApplyFromUser(e,t.apply),Nd.getPreferredUser(e))}static getApplyFromUser(e,t){switch(typeof e.apply=="string"?e.apply.toLowerCase():""){case"first":return"first";case"never":return"never";case"ifsingle":return"ifSingle";default:return t}}static getKindFromUser(e,t){return typeof e.kind=="string"?new ji(e.kind):t}static getPreferredUser(e){return typeof e.preferred=="boolean"?e.preferred:!1}constructor(e,t,i){this.kind=e,this.apply=t,this.preferred=i}}class Lde{constructor(e,t,i){this.action=e,this.provider=t,this.highlightRange=i}async resolve(e){if(this.provider?.resolveCodeAction&&!this.action.edit){let t;try{t=await this.provider.resolveCodeAction(this.action,e)}catch(i){$n(i)}t&&(this.action.edit=t.edit)}return this}}const xde="editor.action.codeAction",TB="editor.action.quickFix",kde="editor.action.autoFix",Dde="editor.action.refactor",Ide="editor.action.sourceAction",V4="editor.action.organizeImports",z4="editor.action.fixAll";class wp extends z{static codeActionsPreferredComparator(e,t){return e.isPreferred&&!t.isPreferred?-1:!e.isPreferred&&t.isPreferred?1:0}static codeActionsComparator({action:e},{action:t}){return e.isAI&&!t.isAI?1:!e.isAI&&t.isAI?-1:Ps(e.diagnostics)?Ps(t.diagnostics)?wp.codeActionsPreferredComparator(e,t):-1:Ps(t.diagnostics)?1:wp.codeActionsPreferredComparator(e,t)}constructor(e,t,i){super(),this.documentation=t,this._register(i),this.allActions=[...e].sort(wp.codeActionsComparator),this.validActions=this.allActions.filter(({action:n})=>!n.disabled)}get hasAutoFix(){return this.validActions.some(({action:e})=>!!e.kind&&Di.QuickFix.contains(new ji(e.kind))&&!!e.isPreferred)}get hasAIFix(){return this.validActions.some(({action:e})=>!!e.isAI)}get allAIFixes(){return this.validActions.every(({action:e})=>!!e.isAI)}}const U4={actions:[],documentation:void 0};async function mf(o,e,t,i,n,s){const r=i.filter||{},a={...r,excludes:[...r.excludes||[],Di.Notebook]},l={only:r.include?.value,trigger:i.type},c=new Dle(e,s),d=i.type===2,h=Ede(o,e,d?a:r),u=new X,f=h.map(async p=>{try{n.report(p);const _=await p.provideCodeActions(e,t,l,c.token);if(_&&u.add(_),c.token.isCancellationRequested)return U4;const b=(_?.actions||[]).filter(w=>w&&Sde(r,w)),C=Tde(p,b,r.include);return{actions:b.map(w=>new Lde(w,p)),documentation:C}}catch(_){if($c(_))throw _;return $n(_),U4}}),g=o.onDidChange(()=>{const p=o.all(e);li(p,h)||c.cancel()});try{const p=await Promise.all(f),_=p.map(C=>C.actions).flat(),b=[...Ag(p.map(C=>C.documentation)),...Nde(o,e,i,_)];return new wp(_,b,u)}finally{g.dispose(),c.dispose()}}function Ede(o,e,t){return o.all(e).filter(i=>i.providedCodeActionKinds?i.providedCodeActionKinds.some(n=>yde(t,new ji(n))):!0)}function*Nde(o,e,t,i){if(e&&i.length)for(const n of o.all(e))n._getAdditionalMenuItems&&(yield*n._getAdditionalMenuItems?.({trigger:t.type,only:t.filter?.include?.value},i.map(s=>s.action)))}function Tde(o,e,t){if(!o.documentation)return;const i=o.documentation.map(n=>({kind:new ji(n.kind),command:n.command}));if(t){let n;for(const s of i)s.kind.contains(t)&&(n?n.kind.contains(s.kind)&&(n=s):n=s);if(n)return n?.command}for(const n of e)if(n.kind){for(const s of i)if(s.kind.contains(new ji(n.kind)))return s.command}}var Gd;(function(o){o.OnSave="onSave",o.FromProblemsView="fromProblemsView",o.FromCodeActions="fromCodeActions",o.FromAILightbulb="fromAILightbulb"})(Gd||(Gd={}));async function Mde(o,e,t,i,n=ut.None){const s=o.get(b7),r=o.get(hi),a=o.get($s),l=o.get(mn);if(a.publicLog2("codeAction.applyCodeAction",{codeActionTitle:e.action.title,codeActionKind:e.action.kind,codeActionIsPreferred:!!e.action.isPreferred,reason:t}),await e.resolve(n),!n.isCancellationRequested&&!(e.action.edit?.edits.length&&!(await s.apply(e.action.edit,{editor:i?.editor,label:e.action.title,quotableLabel:e.action.title,code:"undoredo.codeAction",respectAutoSaveConfig:t!==Gd.OnSave,showPreview:i?.preview})).isApplied)&&e.action.command)try{await r.executeCommand(e.action.command.id,...e.action.command.arguments||[])}catch(c){const d=Rde(c);l.error(typeof d=="string"?d:m("applyCodeActionFailed","An unknown error occurred while applying the code action"))}}function Rde(o){return typeof o=="string"?o:o instanceof Error&&typeof o.message=="string"?o.message:void 0}bt.registerCommand("_executeCodeActionProvider",async function(o,e,t,i,n){if(!(e instanceof ve))throw na();const{codeActionProvider:s}=o.get(Se),r=o.get(Fi).getModel(e);if(!r)throw na();const a=Fe.isISelection(t)?Fe.liftSelection(t):I.isIRange(t)?r.validateRange(t):void 0;if(!a)throw na();const l=typeof i=="string"?new ji(i):void 0,c=await mf(s,r,a,{type:1,triggerAction:Uc.Default,filter:{includeSourceActions:!0,include:l}},rc.None,ut.None),d=[],h=Math.min(c.validActions.length,typeof n=="number"?n:0);for(let u=0;uu.action)}finally{setTimeout(()=>c.dispose(),100)}});var Ade=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Pde=function(o,e){return function(t,i){e(t,i,o)}},OE,wh;let FE=(wh=class{constructor(e){this.keybindingService=e}getResolver(){const e=new ua(()=>this.keybindingService.getKeybindings().filter(t=>OE.codeActionCommands.indexOf(t.command)>=0).filter(t=>t.resolvedKeybinding).map(t=>{let i=t.commandArgs;return t.command===V4?i={kind:Di.SourceOrganizeImports.value}:t.command===z4&&(i={kind:Di.SourceFixAll.value}),{resolvedKeybinding:t.resolvedKeybinding,...Nd.fromUser(i,{kind:ji.None,apply:"never"})}}));return t=>{if(t.kind)return this.bestKeybindingForCodeAction(t,e.value)?.resolvedKeybinding}}bestKeybindingForCodeAction(e,t){if(!e.kind)return;const i=new ji(e.kind);return t.filter(n=>n.kind.contains(i)).filter(n=>n.preferred?e.isPreferred:!0).reduceRight((n,s)=>n?n.kind.contains(s.kind)?s:n:s,void 0)}},OE=wh,wh.codeActionCommands=[Dde,xde,Ide,V4,z4],wh);FE=OE=Ade([Pde(0,vt)],FE);D("symbolIcon.arrayForeground",Pe,m("symbolIcon.arrayForeground","The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.booleanForeground",Pe,m("symbolIcon.booleanForeground","The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.classForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},m("symbolIcon.classForeground","The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.colorForeground",Pe,m("symbolIcon.colorForeground","The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.constantForeground",Pe,m("symbolIcon.constantForeground","The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.constructorForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("symbolIcon.constructorForeground","The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.enumeratorForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},m("symbolIcon.enumeratorForeground","The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.enumeratorMemberForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.enumeratorMemberForeground","The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.eventForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},m("symbolIcon.eventForeground","The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.fieldForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.fieldForeground","The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.fileForeground",Pe,m("symbolIcon.fileForeground","The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.folderForeground",Pe,m("symbolIcon.folderForeground","The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.functionForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("symbolIcon.functionForeground","The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.interfaceForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.interfaceForeground","The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.keyForeground",Pe,m("symbolIcon.keyForeground","The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.keywordForeground",Pe,m("symbolIcon.keywordForeground","The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.methodForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("symbolIcon.methodForeground","The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.moduleForeground",Pe,m("symbolIcon.moduleForeground","The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.namespaceForeground",Pe,m("symbolIcon.namespaceForeground","The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.nullForeground",Pe,m("symbolIcon.nullForeground","The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.numberForeground",Pe,m("symbolIcon.numberForeground","The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.objectForeground",Pe,m("symbolIcon.objectForeground","The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.operatorForeground",Pe,m("symbolIcon.operatorForeground","The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.packageForeground",Pe,m("symbolIcon.packageForeground","The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.propertyForeground",Pe,m("symbolIcon.propertyForeground","The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.referenceForeground",Pe,m("symbolIcon.referenceForeground","The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.snippetForeground",Pe,m("symbolIcon.snippetForeground","The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.stringForeground",Pe,m("symbolIcon.stringForeground","The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.structForeground",Pe,m("symbolIcon.structForeground","The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.textForeground",Pe,m("symbolIcon.textForeground","The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.typeParameterForeground",Pe,m("symbolIcon.typeParameterForeground","The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.unitForeground",Pe,m("symbolIcon.unitForeground","The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.variableForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.variableForeground","The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));const MB=Object.freeze({kind:ji.Empty,title:m("codeAction.widget.id.more","More Actions...")}),Ode=Object.freeze([{kind:Di.QuickFix,title:m("codeAction.widget.id.quickfix","Quick Fix")},{kind:Di.RefactorExtract,title:m("codeAction.widget.id.extract","Extract"),icon:ie.wrench},{kind:Di.RefactorInline,title:m("codeAction.widget.id.inline","Inline"),icon:ie.wrench},{kind:Di.RefactorRewrite,title:m("codeAction.widget.id.convert","Rewrite"),icon:ie.wrench},{kind:Di.RefactorMove,title:m("codeAction.widget.id.move","Move"),icon:ie.wrench},{kind:Di.SurroundWith,title:m("codeAction.widget.id.surround","Surround With"),icon:ie.surroundWith},{kind:Di.Source,title:m("codeAction.widget.id.source","Source Action"),icon:ie.symbolFile},MB]);function Fde(o,e,t){if(!e)return o.map(s=>({kind:"action",item:s,group:MB,disabled:!!s.action.disabled,label:s.action.disabled||s.action.title,canPreview:!!s.action.edit?.edits.length}));const i=Ode.map(s=>({group:s,actions:[]}));for(const s of o){const r=s.action.kind?new ji(s.action.kind):ji.None;for(const a of i)if(a.group.kind.contains(r)){a.actions.push(s);break}}const n=[];for(const s of i)if(s.actions.length){n.push({kind:"header",group:s.group});for(const r of s.actions){const a=s.group;n.push({kind:"action",item:r,group:r.action.isAI?{title:a.title,kind:a.kind,icon:ie.sparkle}:a,label:r.action.title,disabled:!!r.action.disabled,keybinding:t(r.action)})}}return n}var Bde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Wde=function(o,e){return function(t,i){e(t,i,o)}},$u;const $4=Wi("gutter-lightbulb",ie.lightBulb,m("gutterLightbulbWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor.")),K4=Wi("gutter-lightbulb-auto-fix",ie.lightbulbAutofix,m("gutterLightbulbAutoFixWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and a quick fix is available.")),j4=Wi("gutter-lightbulb-sparkle",ie.lightbulbSparkle,m("gutterLightbulbAIFixWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix is available.")),q4=Wi("gutter-lightbulb-aifix-auto-fix",ie.lightbulbSparkleAutofix,m("gutterLightbulbAIFixAutoFixWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix and a quick fix is available.")),G4=Wi("gutter-lightbulb-sparkle-filled",ie.sparkleFilled,m("gutterLightbulbSparkleFilledWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix and a quick fix is available."));var Xo;(function(o){o.Hidden={type:0};class e{constructor(i,n,s,r){this.actions=i,this.trigger=n,this.editorPosition=s,this.widgetPosition=r,this.type=1}}o.Showing=e})(Xo||(Xo={}));var pl;let BE=(pl=class extends z{constructor(e,t){super(),this._editor=e,this._keybindingService=t,this._onClick=this._register(new A),this.onClick=this._onClick.event,this._state=Xo.Hidden,this._gutterState=Xo.Hidden,this._iconClasses=[],this.lightbulbClasses=["codicon-"+$4.id,"codicon-"+q4.id,"codicon-"+K4.id,"codicon-"+j4.id,"codicon-"+G4.id],this.gutterDecoration=$u.GUTTER_DECORATION,this._domNode=ce("div.lightBulbWidget"),this._domNode.role="listbox",this._register(fn.ignoreTarget(this._domNode)),this._editor.addContentWidget(this),this._register(this._editor.onDidChangeModelContent(i=>{const n=this._editor.getModel();(this.state.type!==1||!n||this.state.editorPosition.lineNumber>=n.getLineCount())&&this.hide(),(this.gutterState.type!==1||!n||this.gutterState.editorPosition.lineNumber>=n.getLineCount())&&this.gutterHide()})),this._register(mV(this._domNode,i=>{if(this.state.type!==1)return;this._editor.focus(),i.preventDefault();const{top:n,height:s}=gi(this._domNode),r=this._editor.getOption(67);let a=Math.floor(r/3);this.state.widgetPosition.position!==null&&this.state.widgetPosition.position.lineNumber{(i.buttons&1)===1&&this.hide()})),this._register(J.runAndSubscribe(this._keybindingService.onDidUpdateKeybindings,()=>{this._preferredKbLabel=this._keybindingService.lookupKeybinding(kde)?.getLabel()??void 0,this._quickFixKbLabel=this._keybindingService.lookupKeybinding(TB)?.getLabel()??void 0,this._updateLightBulbTitleAndIcon()})),this._register(this._editor.onMouseDown(async i=>{if(!i.target.element||!this.lightbulbClasses.some(l=>i.target.element&&i.target.element.classList.contains(l))||this.gutterState.type!==1)return;this._editor.focus();const{top:n,height:s}=gi(i.target.element),r=this._editor.getOption(67);let a=Math.floor(r/3);this.gutterState.widgetPosition.position!==null&&this.gutterState.widgetPosition.position.lineNumber22,g=y=>y>2&&this._editor.getTopForLineNumber(y)===this._editor.getTopForLineNumber(y-1),p=this._editor.getLineDecorations(a);let _=!1;if(p)for(const y of p){const x=y.options.glyphMarginClassName;if(x&&!this.lightbulbClasses.some(L=>x.includes(L))){_=!0;break}}let b=a,C=1;if(!f){const y=x=>{const L=r.getLineContent(x);return/^\s*$|^\s+/.test(L)||L.length<=C};if(a>1&&!g(a-1)){const x=r.getLineCount(),L=a===x,E=a>1&&y(a-1),N=!L&&y(a+1),H=y(a),F=!N&&!E;if(!N&&!E&&!_)return this.gutterState=new Xo.Showing(e,t,i,{position:{lineNumber:b,column:C},preference:$u._posPref}),this.renderGutterLightbub(),this.hide();E||L||E&&!H?b-=1:(N||F&&H)&&(b+=1)}else if(a===1&&(a===r.getLineCount()||!y(a+1)&&!y(a)))if(this.gutterState=new Xo.Showing(e,t,i,{position:{lineNumber:b,column:C},preference:$u._posPref}),_)this.gutterHide();else return this.renderGutterLightbub(),this.hide();else if(a{this._gutterDecorationID=t.addDecoration(new I(e,0,e,0),this.gutterDecoration)})}_removeGutterDecoration(e){this._editor.changeDecorations(t=>{t.removeDecoration(e),this._gutterDecorationID=void 0})}_updateGutterDecoration(e,t){this._editor.changeDecorations(i=>{i.changeDecoration(e,new I(t,0,t,0)),i.changeDecorationOptions(e,this.gutterDecoration)})}_updateLightbulbTitle(e,t){this.state.type===1&&(t?this.title=m("codeActionAutoRun","Run: {0}",this.state.actions.validActions[0].action.title):e&&this._preferredKbLabel?this.title=m("preferredcodeActionWithKb","Show Code Actions. Preferred Quick Fix Available ({0})",this._preferredKbLabel):!e&&this._quickFixKbLabel?this.title=m("codeActionWithKb","Show Code Actions ({0})",this._quickFixKbLabel):e||(this.title=m("codeAction","Show Code Actions")))}set title(e){this._domNode.title=e}},$u=pl,pl.GUTTER_DECORATION=kt.register({description:"codicon-gutter-lightbulb-decoration",glyphMarginClassName:Ee.asClassName(ie.lightBulb),glyphMargin:{position:Ao.Left},stickiness:1}),pl.ID="editor.contrib.lightbulbWidget",pl._posPref=[0],pl);BE=$u=Bde([Wde(1,vt)],BE);var RB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},WE=function(o,e){return function(t,i){e(t,i,o)}};const AB="acceptSelectedCodeAction",PB="previewSelectedCodeAction";class Hde{get templateId(){return"header"}renderTemplate(e){e.classList.add("group-header");const t=document.createElement("span");return e.append(t),{container:e,text:t}}renderElement(e,t,i){i.text.textContent=e.group?.title??""}disposeTemplate(e){}}let HE=class{get templateId(){return"action"}constructor(e,t){this._supportsPreview=e,this._keybindingService=t}renderTemplate(e){e.classList.add(this.templateId);const t=document.createElement("div");t.className="icon",e.append(t);const i=document.createElement("span");i.className="title",e.append(i);const n=new ob(e,Ns);return{container:e,icon:t,text:i,keybinding:n}}renderElement(e,t,i){if(e.group?.icon?(i.icon.className=Ee.asClassName(e.group.icon),e.group.icon.color&&(i.icon.style.color=oe(e.group.icon.color.id))):(i.icon.className=Ee.asClassName(ie.lightBulb),i.icon.style.color="var(--vscode-editorLightBulb-foreground)"),!e.item||!e.label)return;i.text.textContent=OB(e.label),i.keybinding.set(e.keybinding),MV(!!e.keybinding,i.keybinding.element);const n=this._keybindingService.lookupKeybinding(AB)?.getLabel(),s=this._keybindingService.lookupKeybinding(PB)?.getLabel();i.container.classList.toggle("option-disabled",e.disabled),e.disabled?i.container.title=e.label:n&&s?this._supportsPreview&&e.canPreview?i.container.title=m({key:"label-preview",comment:['placeholders are keybindings, e.g "F2 to Apply, Shift+F2 to Preview"']},"{0} to Apply, {1} to Preview",n,s):i.container.title=m({key:"label",comment:['placeholder is a keybinding, e.g "F2 to Apply"']},"{0} to Apply",n):i.container.title=""}disposeTemplate(e){e.keybinding.dispose()}};HE=RB([WE(1,vt)],HE);class Vde extends UIEvent{constructor(){super("acceptSelectedAction")}}class Z4 extends UIEvent{constructor(){super("previewSelectedAction")}}function zde(o){if(o.kind==="action")return o.label}let VE=class extends z{constructor(e,t,i,n,s,r){super(),this._delegate=n,this._contextViewService=s,this._keybindingService=r,this._actionLineHeight=24,this._headerLineHeight=26,this.cts=this._register(new In),this.domNode=document.createElement("div"),this.domNode.classList.add("actionList");const a={getHeight:l=>l.kind==="header"?this._headerLineHeight:this._actionLineHeight,getTemplateId:l=>l.kind};this._list=this._register(new go(e,this.domNode,a,[new HE(t,this._keybindingService),new Hde],{keyboardSupport:!1,typeNavigationEnabled:!0,keyboardNavigationLabelProvider:{getKeyboardNavigationLabel:zde},accessibilityProvider:{getAriaLabel:l=>{if(l.kind==="action"){let c=l.label?OB(l?.label):"";return l.disabled&&(c=m({key:"customQuickFixWidget.labels",comment:["Action widget labels for accessibility."]},"{0}, Disabled Reason: {1}",c,l.disabled)),c}return null},getWidgetAriaLabel:()=>m({key:"customQuickFixWidget",comment:["An action widget option"]},"Action Widget"),getRole:l=>l.kind==="action"?"option":"separator",getWidgetRole:()=>"listbox"}})),this._list.style(hu),this._register(this._list.onMouseClick(l=>this.onListClick(l))),this._register(this._list.onMouseOver(l=>this.onListHover(l))),this._register(this._list.onDidChangeFocus(()=>this.onFocus())),this._register(this._list.onDidChangeSelection(l=>this.onListSelection(l))),this._allMenuItems=i,this._list.splice(0,this._list.length,this._allMenuItems),this._list.length&&this.focusNext()}focusCondition(e){return!e.disabled&&e.kind==="action"}hide(e){this._delegate.onHide(e),this.cts.cancel(),this._contextViewService.hideContextView()}layout(e){const t=this._allMenuItems.filter(l=>l.kind==="header").length,n=this._allMenuItems.length*this._actionLineHeight+t*this._headerLineHeight-t*this._actionLineHeight;this._list.layout(n);let s=e;if(this._allMenuItems.length>=50)s=380;else{const l=this._allMenuItems.map((c,d)=>{const h=this.domNode.ownerDocument.getElementById(this._list.getElementID(d));if(h){h.style.width="auto";const u=h.getBoundingClientRect().width;return h.style.width="",u}return 0});s=Math.max(...l,e)}const a=Math.min(n,this.domNode.ownerDocument.body.clientHeight*.7);return this._list.layout(a,s),this.domNode.style.height=`${a}px`,this._list.domFocus(),s}focusPrevious(){this._list.focusPrevious(1,!0,void 0,this.focusCondition)}focusNext(){this._list.focusNext(1,!0,void 0,this.focusCondition)}acceptSelected(e){const t=this._list.getFocus();if(t.length===0)return;const i=t[0],n=this._list.element(i);if(!this.focusCondition(n))return;const s=e?new Z4:new Vde;this._list.setSelection([i],s)}onListSelection(e){if(!e.elements.length)return;const t=e.elements[0];t.item&&this.focusCondition(t)?this._delegate.onSelect(t.item,e.browserEvent instanceof Z4):this._list.setSelection([])}onFocus(){const e=this._list.getFocus();if(e.length===0)return;const t=e[0],i=this._list.element(t);this._delegate.onFocus?.(i.item)}async onListHover(e){const t=e.element;if(t&&t.item&&this.focusCondition(t)){if(this._delegate.onHover&&!t.disabled&&t.kind==="action"){const i=await this._delegate.onHover(t.item,this.cts.token);t.canPreview=i?i.canPreview:void 0}e.index&&this._list.splice(e.index,1,[t])}this._list.setFocus(typeof e.index=="number"?[e.index]:[])}onListClick(e){e.element&&this.focusCondition(e.element)&&this._list.setFocus([])}};VE=RB([WE(4,lu),WE(5,vt)],VE);function OB(o){return o.replace(/\r\n|\r|\n/g," ")}var Ude=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},pL=function(o,e){return function(t,i){e(t,i,o)}};D("actionBar.toggledBackground",IT,m("actionBar.toggledBackground","Background color for toggled action items in action bar."));const Zh={Visible:new le("codeActionMenuVisible",!1,m("codeActionMenuVisible","Whether the action widget list is visible"))},Cu=He("actionWidgetService");let Yh=class extends z{get isVisible(){return Zh.Visible.getValue(this._contextKeyService)||!1}constructor(e,t,i){super(),this._contextViewService=e,this._contextKeyService=t,this._instantiationService=i,this._list=this._register(new Dn)}show(e,t,i,n,s,r,a){const l=Zh.Visible.bindTo(this._contextKeyService),c=this._instantiationService.createInstance(VE,e,t,i,n);this._contextViewService.showContextView({getAnchor:()=>s,render:d=>(l.set(!0),this._renderWidget(d,c,a??[])),onHide:d=>{l.reset(),this._onWidgetClosed(d)}},r,!1)}acceptSelected(e){this._list.value?.acceptSelected(e)}focusPrevious(){this._list?.value?.focusPrevious()}focusNext(){this._list?.value?.focusNext()}hide(e){this._list.value?.hide(e),this._list.clear()}_renderWidget(e,t,i){const n=document.createElement("div");if(n.classList.add("action-widget"),e.appendChild(n),this._list.value=t,this._list.value)n.appendChild(this._list.value.domNode);else throw new Error("List has no value");const s=new X,r=document.createElement("div"),a=e.appendChild(r);a.classList.add("context-view-block"),s.add(U(a,ee.MOUSE_DOWN,f=>f.stopPropagation()));const l=document.createElement("div"),c=e.appendChild(l);c.classList.add("context-view-pointerBlock"),s.add(U(c,ee.POINTER_MOVE,()=>c.remove())),s.add(U(c,ee.MOUSE_DOWN,()=>c.remove()));let d=0;if(i.length){const f=this._createActionBar(".action-widget-action-bar",i);f&&(n.appendChild(f.getContainer().parentElement),s.add(f),d=f.getContainer().offsetWidth)}const h=this._list.value?.layout(d);n.style.width=`${h}px`;const u=s.add(Ph(e));return s.add(u.onDidBlur(()=>this.hide(!0))),s}_createActionBar(e,t){if(!t.length)return;const i=ce(e),n=new oo(i);return n.push(t,{icon:!1,label:!0}),n}_onWidgetClosed(e){this._list.value?.hide(e)}};Yh=Ude([pL(0,lu),pL(1,De),pL(2,ke)],Yh);Qe(Cu,Yh,1);const hb=1100;Rn(class extends nu{constructor(){super({id:"hideCodeActionWidget",title:di("hideCodeActionWidget.title","Hide action widget"),precondition:Zh.Visible,keybinding:{weight:hb,primary:9,secondary:[1033]}})}run(o){o.get(Cu).hide(!0)}});Rn(class extends nu{constructor(){super({id:"selectPrevCodeAction",title:di("selectPrevCodeAction.title","Select previous action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.focusPrevious()}});Rn(class extends nu{constructor(){super({id:"selectNextCodeAction",title:di("selectNextCodeAction.title","Select next action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.focusNext()}});Rn(class extends nu{constructor(){super({id:AB,title:di("acceptSelected.title","Accept selected action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:3,secondary:[2137]}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.acceptSelected()}});Rn(class extends nu{constructor(){super({id:PB,title:di("previewSelected.title","Preview selected action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:2051}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.acceptSelected(!0)}});const $de=new le("supportedCodeAction",""),Y4="_typescript.applyFixAllCodeAction";class Kde extends z{constructor(e,t,i,n=250){super(),this._editor=e,this._markerService=t,this._signalChange=i,this._delay=n,this._autoTriggerTimer=this._register(new wr),this._register(this._markerService.onMarkerChanged(s=>this._onMarkerChanges(s))),this._register(this._editor.onDidChangeCursorPosition(()=>this._tryAutoTrigger()))}trigger(e){const t=this._getRangeOfSelectionUnlessWhitespaceEnclosed(e);this._signalChange(t?{trigger:e,selection:t}:void 0)}_onMarkerChanges(e){const t=this._editor.getModel();t&&e.some(i=>WT(i,t.uri))&&this._tryAutoTrigger()}_tryAutoTrigger(){this._autoTriggerTimer.cancelAndSet(()=>{this.trigger({type:2,triggerAction:Uc.Default})},this._delay)}_getRangeOfSelectionUnlessWhitespaceEnclosed(e){if(!this._editor.hasModel())return;const t=this._editor.getSelection();if(e.type===1)return t;const i=this._editor.getOption(65).enabled;if(i!==xo.Off){{if(i===xo.On)return t;if(i===xo.OnCode){if(!t.isEmpty())return t;const s=this._editor.getModel(),{lineNumber:r,column:a}=t.getPosition(),l=s.getLineContent(r);if(l.length===0)return;if(a===1){if(/\s/.test(l[0]))return}else if(a===s.getLineMaxColumn(r)){if(/\s/.test(l[l.length-1]))return}else if(/\s/.test(l[a-2])&&/\s/.test(l[a-1]))return}}return t}}}var Td;(function(o){o.Empty={type:0};class e{constructor(i,n,s){this.trigger=i,this.position=n,this._cancellablePromise=s,this.type=1,this.actions=s.catch(r=>{if($c(r))return FB;throw r})}cancel(){this._cancellablePromise.cancel()}}o.Triggered=e})(Td||(Td={}));const FB=Object.freeze({allActions:[],validActions:[],dispose:()=>{},documentation:[],hasAutoFix:!1,hasAIFix:!1,allAIFixes:!1});class jde extends z{constructor(e,t,i,n,s,r,a){super(),this._editor=e,this._registry=t,this._markerService=i,this._progressService=s,this._configurationService=r,this._telemetryService=a,this._codeActionOracle=this._register(new Dn),this._state=Td.Empty,this._onDidChangeState=this._register(new A),this.onDidChangeState=this._onDidChangeState.event,this._disposed=!1,this._supportedCodeActions=$de.bindTo(n),this._register(this._editor.onDidChangeModel(()=>this._update())),this._register(this._editor.onDidChangeModelLanguage(()=>this._update())),this._register(this._registry.onDidChange(()=>this._update())),this._register(this._editor.onDidChangeConfiguration(l=>{l.hasChanged(65)&&this._update()})),this._update()}dispose(){this._disposed||(this._disposed=!0,super.dispose(),this.setState(Td.Empty,!0))}_settingEnabledNearbyQuickfixes(){const e=this._editor?.getModel();return this._configurationService?this._configurationService.getValue("editor.codeActionWidget.includeNearbyQuickFixes",{resource:e?.uri}):!1}_update(){if(this._disposed)return;this._codeActionOracle.value=void 0,this.setState(Td.Empty);const e=this._editor.getModel();if(e&&this._registry.has(e)&&!this._editor.getOption(92)){const t=this._registry.all(e).flatMap(i=>i.providedCodeActionKinds??[]);this._supportedCodeActions.set(t.join(" ")),this._codeActionOracle.value=new Kde(this._editor,this._markerService,i=>{if(!i){this.setState(Td.Empty);return}const n=i.selection.getStartPosition(),s=wa(async l=>{if(this._settingEnabledNearbyQuickfixes()&&i.trigger.type===1&&(i.trigger.triggerAction===Uc.QuickFix||i.trigger.filter?.include?.contains(Di.QuickFix))){const c=await mf(this._registry,e,i.selection,i.trigger,rc.None,l),d=[...c.allActions];if(l.isCancellationRequested)return FB;const h=c.validActions?.some(f=>f.action.kind?Di.QuickFix.contains(new ji(f.action.kind)):!1),u=this._markerService.read({resource:e.uri});if(h){for(const f of c.validActions)f.action.command?.arguments?.some(g=>typeof g=="string"&&g.includes(Y4))&&(f.action.diagnostics=[...u.filter(g=>g.relatedInformation)]);return{validActions:c.validActions,allActions:d,documentation:c.documentation,hasAutoFix:c.hasAutoFix,hasAIFix:c.hasAIFix,allAIFixes:c.allAIFixes,dispose:()=>{c.dispose()}}}else if(!h&&u.length>0){const f=i.selection.getPosition();let g=f,p=Number.MAX_VALUE;const _=[...c.validActions];for(const C of u){const w=C.endColumn,v=C.endLineNumber,y=C.startLineNumber;if(v===f.lineNumber||y===f.lineNumber){g=new P(v,w);const x={type:i.trigger.type,triggerAction:i.trigger.triggerAction,filter:{include:i.trigger.filter?.include?i.trigger.filter?.include:Di.QuickFix},autoApply:i.trigger.autoApply,context:{notAvailableMessage:i.trigger.context?.notAvailableMessage||"",position:g}},L=new Fe(g.lineNumber,g.column,g.lineNumber,g.column),E=await mf(this._registry,e,L,x,rc.None,l);if(E.validActions.length!==0){for(const N of E.validActions)N.action.command?.arguments?.some(H=>typeof H=="string"&&H.includes(Y4))&&(N.action.diagnostics=[...u.filter(H=>H.relatedInformation)]);c.allActions.length===0&&d.push(...E.allActions),Math.abs(f.column-w)v.findIndex(y=>y.action.title===C.action.title)===w);return b.sort((C,w)=>C.action.isPreferred&&!w.action.isPreferred?-1:!C.action.isPreferred&&w.action.isPreferred||C.action.isAI&&!w.action.isAI?1:!C.action.isAI&&w.action.isAI?-1:0),{validActions:b,allActions:d,documentation:c.documentation,hasAutoFix:c.hasAutoFix,hasAIFix:c.hasAIFix,allAIFixes:c.allAIFixes,dispose:()=>{c.dispose()}}}}if(i.trigger.type===1){const c=new Hs,d=await mf(this._registry,e,i.selection,i.trigger,rc.None,l);return this._telemetryService&&this._telemetryService.publicLog2("codeAction.invokedDurations",{codeActions:d.validActions.length,duration:c.elapsed()}),d}return mf(this._registry,e,i.selection,i.trigger,rc.None,l)});i.trigger.type===1&&this._progressService?.showWhile(s,250);const r=new Td.Triggered(i.trigger,n,s);let a=!1;this._state.type===1&&(a=this._state.trigger.type===1&&r.type===1&&r.trigger.type===2&&this._state.position!==r.position),a?setTimeout(()=>{this.setState(r)},500):this.setState(r)},void 0),this._codeActionOracle.value.trigger({type:2,triggerAction:Uc.Default})}else this._supportedCodeActions.reset()}trigger(e){this._codeActionOracle.value?.trigger(e)}setState(e,t){e!==this._state&&(this._state.type===1&&this._state.cancel(),this._state=e,!t&&!this._disposed&&this._onDidChangeState.fire(e))}}var qde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Rr=function(o,e){return function(t,i){e(t,i,o)}},Ku;const Gde="quickfix-edit-highlight";var Ic;let zE=(Ic=class extends z{static get(e){return e.getContribution(Ku.ID)}constructor(e,t,i,n,s,r,a,l,c,d,h){super(),this._commandService=a,this._configurationService=l,this._actionWidgetService=c,this._instantiationService=d,this._telemetryService=h,this._activeCodeActions=this._register(new Dn),this._showDisabled=!1,this._disposed=!1,this._editor=e,this._model=this._register(new jde(this._editor,s.codeActionProvider,t,i,r,l,this._telemetryService)),this._register(this._model.onDidChangeState(u=>this.update(u))),this._lightBulbWidget=new ua(()=>{const u=this._editor.getContribution(BE.ID);return u&&this._register(u.onClick(f=>this.showCodeActionsFromLightbulb(f.actions,f))),u}),this._resolver=n.createInstance(FE),this._register(this._editor.onDidLayoutChange(()=>this._actionWidgetService.hide()))}dispose(){this._disposed=!0,super.dispose()}async showCodeActionsFromLightbulb(e,t){if(e.allAIFixes&&e.validActions.length===1){const i=e.validActions[0],n=i.action.command;n&&n.id==="inlineChat.start"&&n.arguments&&n.arguments.length>=1&&(n.arguments[0]={...n.arguments[0],autoSend:!1}),await this._applyCodeAction(i,!1,!1,Gd.FromAILightbulb);return}await this.showCodeActionList(e,t,{includeDisabledActions:!1,fromLightbulb:!0})}showCodeActions(e,t,i){return this.showCodeActionList(t,i,{includeDisabledActions:!1,fromLightbulb:!1})}manualTriggerAtCurrentPosition(e,t,i,n){if(!this._editor.hasModel())return;ca.get(this._editor)?.closeMessage();const s=this._editor.getPosition();this._trigger({type:1,triggerAction:t,filter:i,autoApply:n,context:{notAvailableMessage:e,position:s}})}_trigger(e){return this._model.trigger(e)}async _applyCodeAction(e,t,i,n){try{await this._instantiationService.invokeFunction(Mde,e,n,{preview:i,editor:this._editor})}finally{t&&this._trigger({type:2,triggerAction:Uc.QuickFix,filter:{}})}}hideLightBulbWidget(){this._lightBulbWidget.rawValue?.hide(),this._lightBulbWidget.rawValue?.gutterHide()}async update(e){if(e.type!==1){this.hideLightBulbWidget();return}let t;try{t=await e.actions}catch(n){Ze(n);return}if(!(this._disposed||this._editor.getSelection()?.startLineNumber!==e.position.lineNumber))if(this._lightBulbWidget.value?.update(t,e.trigger,e.position),e.trigger.type===1){if(e.trigger.filter?.include){const s=this.tryGetValidActionToApply(e.trigger,t);if(s){try{this.hideLightBulbWidget(),await this._applyCodeAction(s,!1,!1,Gd.FromCodeActions)}finally{t.dispose()}return}if(e.trigger.context){const r=this.getInvalidActionThatWouldHaveBeenApplied(e.trigger,t);if(r&&r.action.disabled){ca.get(this._editor)?.showMessage(r.action.disabled,e.trigger.context.position),t.dispose();return}}}const n=!!e.trigger.filter?.include;if(e.trigger.context&&(!t.allActions.length||!n&&!t.validActions.length)){ca.get(this._editor)?.showMessage(e.trigger.context.notAvailableMessage,e.trigger.context.position),this._activeCodeActions.value=t,t.dispose();return}this._activeCodeActions.value=t,this.showCodeActionList(t,this.toCoords(e.position),{includeDisabledActions:n,fromLightbulb:!1})}else this._actionWidgetService.isVisible?t.dispose():this._activeCodeActions.value=t}getInvalidActionThatWouldHaveBeenApplied(e,t){if(t.allActions.length&&(e.autoApply==="first"&&t.validActions.length===0||e.autoApply==="ifSingle"&&t.allActions.length===1))return t.allActions.find(({action:i})=>i.disabled)}tryGetValidActionToApply(e,t){if(t.validActions.length&&(e.autoApply==="first"&&t.validActions.length>0||e.autoApply==="ifSingle"&&t.validActions.length===1))return t.validActions[0]}async showCodeActionList(e,t,i){const n=this._editor.createDecorationsCollection(),s=this._editor.getDomNode();if(!s)return;const r=i.includeDisabledActions&&(this._showDisabled||e.validActions.length===0)?e.allActions:e.validActions;if(!r.length)return;const a=P.isIPosition(t)?this.toCoords(t):t,l={onSelect:async(c,d)=>{this._applyCodeAction(c,!0,!!d,i.fromLightbulb?Gd.FromAILightbulb:Gd.FromCodeActions),this._actionWidgetService.hide(!1),n.clear()},onHide:c=>{this._editor?.focus(),n.clear()},onHover:async(c,d)=>{if(d.isCancellationRequested)return;let h=!1;const u=c.action.kind;if(u){const f=new ji(u);h=[Di.RefactorExtract,Di.RefactorInline,Di.RefactorRewrite,Di.RefactorMove,Di.Source].some(p=>p.contains(f))}return{canPreview:h||!!c.action.edit?.edits.length}},onFocus:c=>{if(c&&c.action){const d=c.action.ranges,h=c.action.diagnostics;if(n.clear(),d&&d.length>0){const u=h&&h?.length>1?h.map(f=>({range:f,options:Ku.DECORATION})):d.map(f=>({range:f,options:Ku.DECORATION}));n.set(u)}else if(h&&h.length>0){const u=h.map(g=>({range:g,options:Ku.DECORATION}));n.set(u);const f=h[0];if(f.startLineNumber&&f.startColumn){const g=this._editor.getModel()?.getWordAtPosition({lineNumber:f.startLineNumber,column:f.startColumn})?.word;Hh(m("editingNewSelection","Context: {0} at line {1} and column {2}.",g,f.startLineNumber,f.startColumn))}}}else n.clear()}};this._actionWidgetService.show("codeActionWidget",!0,Fde(r,this._shouldShowHeaders(),this._resolver.getResolver()),l,a,s,this._getActionBarActions(e,t,i))}toCoords(e){if(!this._editor.hasModel())return{x:0,y:0};this._editor.revealPosition(e,1),this._editor.render();const t=this._editor.getScrolledVisiblePosition(e),i=gi(this._editor.getDomNode()),n=i.left+t.left,s=i.top+t.top+t.height;return{x:n,y:s}}_shouldShowHeaders(){const e=this._editor?.getModel();return this._configurationService.getValue("editor.codeActionWidget.showHeaders",{resource:e?.uri})}_getActionBarActions(e,t,i){if(i.fromLightbulb)return[];const n=e.documentation.map(s=>({id:s.id,label:s.title,tooltip:s.tooltip??"",class:void 0,enabled:!0,run:()=>this._commandService.executeCommand(s.id,...s.arguments??[])}));return i.includeDisabledActions&&e.validActions.length>0&&e.allActions.length!==e.validActions.length&&n.push(this._showDisabled?{id:"hideMoreActions",label:m("hideMoreActions","Hide Disabled"),enabled:!0,tooltip:"",class:void 0,run:()=>(this._showDisabled=!1,this.showCodeActionList(e,t,i))}:{id:"showMoreActions",label:m("showMoreActions","Show Disabled"),enabled:!0,tooltip:"",class:void 0,run:()=>(this._showDisabled=!0,this.showCodeActionList(e,t,i))}),n}},Ku=Ic,Ic.ID="editor.contrib.codeActionController",Ic.DECORATION=kt.register({description:"quickfix-highlight",className:Gde}),Ic);zE=Ku=qde([Rr(1,xa),Rr(2,De),Rr(3,ke),Rr(4,Se),Rr(5,G_),Rr(6,hi),Rr(7,lt),Rr(8,Cu),Rr(9,ke),Rr(10,$s)],zE);Sr((o,e)=>{((n,s)=>{s&&e.addRule(`.monaco-editor ${n} { background-color: ${s}; }`)})(".quickfix-edit-highlight",o.getColor(ll));const i=o.getColor(Ud);i&&e.addRule(`.monaco-editor .quickfix-edit-highlight { border: 1px ${mc(o.type)?"dotted":"solid"} ${i}; box-sizing: border-box; }`)});var BB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},rw=function(o,e){return function(t,i){e(t,i,o)}};class Q4{constructor(e,t,i){this.marker=e,this.index=t,this.total=i}}let UE=class{constructor(e,t,i){this._markerService=t,this._configService=i,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._dispoables=new X,this._markers=[],this._nextIdx=-1,ve.isUri(e)?this._resourceFilter=a=>a.toString()===e.toString():e&&(this._resourceFilter=e);const n=this._configService.getValue("problems.sortOrder"),s=(a,l)=>{let c=Kp(a.resource.toString(),l.resource.toString());return c===0&&(n==="position"?c=I.compareRangesUsingStarts(a,l)||Vt.compare(a.severity,l.severity):c=Vt.compare(a.severity,l.severity)||I.compareRangesUsingStarts(a,l)),c},r=()=>{this._markers=this._markerService.read({resource:ve.isUri(e)?e:void 0,severities:Vt.Error|Vt.Warning|Vt.Info}),typeof e=="function"&&(this._markers=this._markers.filter(a=>this._resourceFilter(a.resource))),this._markers.sort(s)};r(),this._dispoables.add(t.onMarkerChanged(a=>{(!this._resourceFilter||a.some(l=>this._resourceFilter(l)))&&(r(),this._nextIdx=-1,this._onDidChange.fire())}))}dispose(){this._dispoables.dispose(),this._onDidChange.dispose()}matches(e){return!this._resourceFilter&&!e?!0:!this._resourceFilter||!e?!1:this._resourceFilter(e)}get selected(){const e=this._markers[this._nextIdx];return e&&new Q4(e,this._nextIdx+1,this._markers.length)}_initIdx(e,t,i){let n=!1,s=this._markers.findIndex(r=>r.resource.toString()===e.uri.toString());s<0&&(s=SN(this._markers,{resource:e.uri},(r,a)=>Kp(r.resource.toString(),a.resource.toString())),s<0&&(s=~s));for(let r=s;rn.resource.toString()===e.toString());if(!(i<0)){for(;i=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Wu=function(o,e){return function(t,i){e(t,i,o)}},jE;class Yde{constructor(e,t,i,n,s){this._openerService=n,this._labelService=s,this._lines=0,this._longestLineLength=0,this._relatedDiagnostics=new WeakMap,this._disposables=new X,this._editor=t;const r=document.createElement("div");r.className="descriptioncontainer",this._messageBlock=document.createElement("div"),this._messageBlock.classList.add("message"),this._messageBlock.setAttribute("aria-live","assertive"),this._messageBlock.setAttribute("role","alert"),r.appendChild(this._messageBlock),this._relatedBlock=document.createElement("div"),r.appendChild(this._relatedBlock),this._disposables.add(jt(this._relatedBlock,"click",a=>{a.preventDefault();const l=this._relatedDiagnostics.get(a.target);l&&i(l)})),this._scrollable=new J3(r,{horizontal:1,vertical:1,useShadows:!1,horizontalScrollbarSize:6,verticalScrollbarSize:6}),e.appendChild(this._scrollable.getDomNode()),this._disposables.add(this._scrollable.onScroll(a=>{r.style.left=`-${a.scrollLeft}px`,r.style.top=`-${a.scrollTop}px`})),this._disposables.add(this._scrollable)}dispose(){xt(this._disposables)}update(e){const{source:t,message:i,relatedInformation:n,code:s}=e;let r=(t?.length||0)+2;s&&(typeof s=="string"?r+=s.length:r+=s.value.length);const a=va(i);this._lines=a.length,this._longestLineLength=0;for(const u of a)this._longestLineLength=Math.max(u.length+r,this._longestLineLength);xn(this._messageBlock),this._messageBlock.setAttribute("aria-label",this.getAriaLabel(e)),this._editor.applyFontInfo(this._messageBlock);let l=this._messageBlock;for(const u of a)l=document.createElement("div"),l.innerText=u,u===""&&(l.style.height=this._messageBlock.style.lineHeight),this._messageBlock.appendChild(l);if(t||s){const u=document.createElement("span");if(u.classList.add("details"),l.appendChild(u),t){const f=document.createElement("span");f.innerText=t,f.classList.add("source"),u.appendChild(f)}if(s)if(typeof s=="string"){const f=document.createElement("span");f.innerText=`(${s})`,f.classList.add("code"),u.appendChild(f)}else{this._codeLink=ce("a.code-link"),this._codeLink.setAttribute("href",`${s.target.toString()}`),this._codeLink.onclick=g=>{this._openerService.open(s.target,{allowCommands:!0}),g.preventDefault(),g.stopPropagation()};const f=Z(this._codeLink,ce("span"));f.innerText=s.value,u.appendChild(this._codeLink)}}if(xn(this._relatedBlock),this._editor.applyFontInfo(this._relatedBlock),Ps(n)){const u=this._relatedBlock.appendChild(document.createElement("div"));u.style.paddingTop=`${Math.floor(this._editor.getOption(67)*.66)}px`,this._lines+=1;for(const f of n){const g=document.createElement("div"),p=document.createElement("a");p.classList.add("filename"),p.innerText=`${this._labelService.getUriBasenameLabel(f.resource)}(${f.startLineNumber}, ${f.startColumn}): `,p.title=this._labelService.getUriLabel(f.resource),this._relatedDiagnostics.set(p,f);const _=document.createElement("span");_.innerText=f.message,g.appendChild(p),g.appendChild(_),this._lines+=1,u.appendChild(g)}}const c=this._editor.getOption(50),d=Math.ceil(c.typicalFullwidthCharacterWidth*this._longestLineLength*.75),h=c.lineHeight*this._lines;this._scrollable.setScrollDimensions({scrollWidth:d,scrollHeight:h})}layout(e,t){this._scrollable.getDomNode().style.height=`${e}px`,this._scrollable.getDomNode().style.width=`${t}px`,this._scrollable.setScrollDimensions({width:t,height:e})}getHeightInLines(){return Math.min(17,this._lines)}getAriaLabel(e){let t="";switch(e.severity){case Vt.Error:t=m("Error","Error");break;case Vt.Warning:t=m("Warning","Warning");break;case Vt.Info:t=m("Info","Info");break;case Vt.Hint:t=m("Hint","Hint");break}let i=m("marker aria","{0} at {1}. ",t,e.startLineNumber+":"+e.startColumn);const n=this._editor.getModel();return n&&e.startLineNumber<=n.getLineCount()&&e.startLineNumber>=1&&(i=`${n.getLineContent(e.startLineNumber)}, ${i}`),i}}var yh;let O_=(yh=class extends Qv{constructor(e,t,i,n,s,r,a){super(e,{showArrow:!0,showFrame:!0,isAccessible:!0,frameWidth:1},s),this._themeService=t,this._openerService=i,this._menuService=n,this._contextKeyService=r,this._labelService=a,this._callOnDispose=new X,this._onDidSelectRelatedInformation=new A,this.onDidSelectRelatedInformation=this._onDidSelectRelatedInformation.event,this._severity=Vt.Warning,this._backgroundColor=q.white,this._applyTheme(t.getColorTheme()),this._callOnDispose.add(t.onDidColorThemeChange(this._applyTheme.bind(this))),this.create()}_applyTheme(e){this._backgroundColor=e.getColor(ehe);let t=qE,i=Qde;this._severity===Vt.Warning?(t=J1,i=Xde):this._severity===Vt.Info&&(t=GE,i=Jde);const n=e.getColor(t),s=e.getColor(i);this.style({arrowColor:n,frameColor:n,headerBackgroundColor:s,primaryHeadingColor:e.getColor(iB),secondaryHeadingColor:e.getColor(nB)})}_applyStyles(){this._parentContainer&&(this._parentContainer.style.backgroundColor=this._backgroundColor?this._backgroundColor.toString():""),super._applyStyles()}dispose(){this._callOnDispose.dispose(),super.dispose()}_fillHead(e){super._fillHead(e),this._disposables.add(this._actionbarWidget.actionRunner.onWillRun(n=>this.editor.focus()));const t=[],i=this._menuService.getMenuActions(jE.TitleMenu,this._contextKeyService);XT(i,t),this._actionbarWidget.push(t,{label:!1,icon:!0,index:0})}_fillTitleIcon(e){this._icon=Z(e,ce(""))}_fillBody(e){this._parentContainer=e,e.classList.add("marker-widget"),this._parentContainer.tabIndex=0,this._parentContainer.setAttribute("role","tooltip"),this._container=document.createElement("div"),e.appendChild(this._container),this._message=new Yde(this._container,this.editor,t=>this._onDidSelectRelatedInformation.fire(t),this._openerService,this._labelService),this._disposables.add(this._message)}show(){throw new Error("call showAtMarker")}showAtMarker(e,t,i){this._container.classList.remove("stale"),this._message.update(e),this._severity=e.severity,this._applyTheme(this._themeService.getColorTheme());const n=I.lift(e),s=this.editor.getPosition(),r=s&&n.containsPosition(s)?s:n.getStartPosition();super.show(r,this.computeRequiredHeight());const a=this.editor.getModel();if(a){const l=i>1?m("problems","{0} of {1} problems",t,i):m("change","{0} of {1} problem",t,i);this.setTitle(Fo(a.uri),l)}this._icon.className=`codicon ${KE.className(Vt.toSeverity(this._severity))}`,this.editor.revealPositionNearTop(r,0),this.editor.focus()}updateMarker(e){this._container.classList.remove("stale"),this._message.update(e)}showStale(){this._container.classList.add("stale"),this._relayout()}_doLayoutBody(e,t){super._doLayoutBody(e,t),this._heightInPixel=e,this._message.layout(e,t),this._container.style.height=`${e}px`}_onWidth(e){this._message.layout(this._heightInPixel,e)}_relayout(){super._relayout(this.computeRequiredHeight())}computeRequiredHeight(){return 3+this._message.getHeightInLines()}},jE=yh,yh.TitleMenu=new $e("gotoErrorTitleMenu"),yh);O_=jE=Zde([Wu(1,en),Wu(2,Vo),Wu(3,yr),Wu(4,ke),Wu(5,De),Wu(6,Cg)],O_);const X4=t_(Y0,SK),J4=t_(Il,i_),e5=t_(ma,n_),qE=D("editorMarkerNavigationError.background",{dark:X4,light:X4,hcDark:Ye,hcLight:Ye},m("editorMarkerNavigationError","Editor marker navigation widget error color.")),Qde=D("editorMarkerNavigationError.headerBackground",{dark:Ae(qE,.1),light:Ae(qE,.1),hcDark:null,hcLight:null},m("editorMarkerNavigationErrorHeaderBackground","Editor marker navigation widget error heading background.")),J1=D("editorMarkerNavigationWarning.background",{dark:J4,light:J4,hcDark:Ye,hcLight:Ye},m("editorMarkerNavigationWarning","Editor marker navigation widget warning color.")),Xde=D("editorMarkerNavigationWarning.headerBackground",{dark:Ae(J1,.1),light:Ae(J1,.1),hcDark:"#0C141F",hcLight:Ae(J1,.2)},m("editorMarkerNavigationWarningBackground","Editor marker navigation widget warning heading background.")),GE=D("editorMarkerNavigationInfo.background",{dark:e5,light:e5,hcDark:Ye,hcLight:Ye},m("editorMarkerNavigationInfo","Editor marker navigation widget info color.")),Jde=D("editorMarkerNavigationInfo.headerBackground",{dark:Ae(GE,.1),light:Ae(GE,.1),hcDark:null,hcLight:null},m("editorMarkerNavigationInfoHeaderBackground","Editor marker navigation widget info heading background.")),ehe=D("editorMarkerNavigation.background",Oo,m("editorMarkerNavigationBackground","Editor marker navigation widget background."));var the=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},u1=function(o,e){return function(t,i){e(t,i,o)}},Vm,Sh;let Qh=(Sh=class{static get(e){return e.getContribution(Vm.ID)}constructor(e,t,i,n,s){this._markerNavigationService=t,this._contextKeyService=i,this._editorService=n,this._instantiationService=s,this._sessionDispoables=new X,this._editor=e,this._widgetVisible=HB.bindTo(this._contextKeyService)}dispose(){this._cleanUp(),this._sessionDispoables.dispose()}_cleanUp(){this._widgetVisible.reset(),this._sessionDispoables.clear(),this._widget=void 0,this._model=void 0}_getOrCreateModel(e){if(this._model&&this._model.matches(e))return this._model;let t=!1;return this._model&&(t=!0,this._cleanUp()),this._model=this._markerNavigationService.getMarkerList(e),t&&this._model.move(!0,this._editor.getModel(),this._editor.getPosition()),this._widget=this._instantiationService.createInstance(O_,this._editor),this._widget.onDidClose(()=>this.close(),this,this._sessionDispoables),this._widgetVisible.set(!0),this._sessionDispoables.add(this._model),this._sessionDispoables.add(this._widget),this._sessionDispoables.add(this._editor.onDidChangeCursorPosition(i=>{(!this._model?.selected||!I.containsPosition(this._model?.selected.marker,i.position))&&this._model?.resetIndex()})),this._sessionDispoables.add(this._model.onDidChange(()=>{if(!this._widget||!this._widget.position||!this._model)return;const i=this._model.find(this._editor.getModel().uri,this._widget.position);i?this._widget.updateMarker(i.marker):this._widget.showStale()})),this._sessionDispoables.add(this._widget.onDidSelectRelatedInformation(i=>{this._editorService.openCodeEditor({resource:i.resource,options:{pinned:!0,revealIfOpened:!0,selection:I.lift(i).collapseToStart()}},this._editor),this.close(!1)})),this._sessionDispoables.add(this._editor.onDidChangeModel(()=>this._cleanUp())),this._model}close(e=!0){this._cleanUp(),e&&this._editor.focus()}showAtMarker(e){if(this._editor.hasModel()){const t=this._getOrCreateModel(this._editor.getModel().uri);t.resetIndex(),t.move(!0,this._editor.getModel(),new P(e.startLineNumber,e.startColumn)),t.selected&&this._widget.showAtMarker(t.selected.marker,t.selected.index,t.selected.total)}}async nagivate(e,t){if(this._editor.hasModel()){const i=this._getOrCreateModel(t?void 0:this._editor.getModel().uri);if(i.move(e,this._editor.getModel(),this._editor.getPosition()),!i.selected)return;if(i.selected.marker.resource.toString()!==this._editor.getModel().uri.toString()){this._cleanUp();const n=await this._editorService.openCodeEditor({resource:i.selected.marker.resource,options:{pinned:!1,revealIfOpened:!0,selectionRevealType:2,selection:i.selected.marker}},this._editor);n&&(Vm.get(n)?.close(),Vm.get(n)?.nagivate(e,t))}else this._widget.showAtMarker(i.selected.marker,i.selected.index,i.selected.total)}}},Vm=Sh,Sh.ID="editor.contrib.markerController",Sh);Qh=Vm=the([u1(1,WB),u1(2,De),u1(3,Pt),u1(4,ke)],Qh);class Fy extends bi{constructor(e,t,i){super(i),this._next=e,this._multiFile=t}async run(e,t){t.hasModel()&&Qh.get(t)?.nagivate(this._next,this._multiFile)}}const Bd=class Bd extends Fy{constructor(){super(!0,!1,{id:Bd.ID,label:Bd.LABEL,alias:"Go to Next Problem (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:578,weight:100},menuOpts:{menuId:O_.TitleMenu,title:Bd.LABEL,icon:Wi("marker-navigation-next",ie.arrowDown,m("nextMarkerIcon","Icon for goto next marker.")),group:"navigation",order:1}})}};Bd.ID="editor.action.marker.next",Bd.LABEL=m("markerAction.next.label","Go to Next Problem (Error, Warning, Info)");let aw=Bd;const Wd=class Wd extends Fy{constructor(){super(!1,!1,{id:Wd.ID,label:Wd.LABEL,alias:"Go to Previous Problem (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:1602,weight:100},menuOpts:{menuId:O_.TitleMenu,title:Wd.LABEL,icon:Wi("marker-navigation-previous",ie.arrowUp,m("previousMarkerIcon","Icon for goto previous marker.")),group:"navigation",order:2}})}};Wd.ID="editor.action.marker.prev",Wd.LABEL=m("markerAction.previous.label","Go to Previous Problem (Error, Warning, Info)");let ZE=Wd;class ihe extends Fy{constructor(){super(!0,!0,{id:"editor.action.marker.nextInFiles",label:m("markerAction.nextInFiles.label","Go to Next Problem in Files (Error, Warning, Info)"),alias:"Go to Next Problem in Files (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:66,weight:100},menuOpts:{menuId:$e.MenubarGoMenu,title:m({key:"miGotoNextProblem",comment:["&& denotes a mnemonic"]},"Next &&Problem"),group:"6_problem_nav",order:1}})}}class nhe extends Fy{constructor(){super(!1,!0,{id:"editor.action.marker.prevInFiles",label:m("markerAction.previousInFiles.label","Go to Previous Problem in Files (Error, Warning, Info)"),alias:"Go to Previous Problem in Files (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:1090,weight:100},menuOpts:{menuId:$e.MenubarGoMenu,title:m({key:"miGotoPreviousProblem",comment:["&& denotes a mnemonic"]},"Previous &&Problem"),group:"6_problem_nav",order:2}})}}Ho(Qh.ID,Qh,4);mi(aw);mi(ZE);mi(ihe);mi(nhe);const HB=new le("markersNavigationVisible",!1),she=co.bindToContribution(Qh.get);ge(new she({id:"closeMarkersNavigation",precondition:HB,handler:o=>o.close(),kbOpts:{weight:150,kbExpr:K.focus,primary:9,secondary:[1033]}}));var ohe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},_L=function(o,e){return function(t,i){e(t,i,o)}};const bo=ce;class rhe{constructor(e,t,i){this.owner=e,this.range=t,this.marker=i}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}const t5={type:1,filter:{include:Di.QuickFix},triggerAction:Uc.QuickFixHover};let YE=class{constructor(e,t,i,n){this._editor=e,this._markerDecorationsService=t,this._openerService=i,this._languageFeaturesService=n,this.hoverOrdinal=1,this.recentMarkerCodeActionsInfo=void 0}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1&&!e.supportsMarkerHover)return[];const i=this._editor.getModel(),n=e.range.startLineNumber,s=i.getLineMaxColumn(n),r=[];for(const a of t){const l=a.range.startLineNumber===n?a.range.startColumn:1,c=a.range.endLineNumber===n?a.range.endColumn:s,d=this._markerDecorationsService.getMarker(i.uri,a);if(!d)continue;const h=new I(e.range.startLineNumber,l,e.range.startLineNumber,c);r.push(new rhe(this,h,d))}return r}renderHoverParts(e,t){if(!t.length)return new Ng([]);const i=new X,n=[];t.forEach(r=>{const a=this._renderMarkerHover(r);e.fragment.appendChild(a.hoverElement),n.push(a)});const s=t.length===1?t[0]:t.sort((r,a)=>Vt.compare(r.marker.severity,a.marker.severity))[0];return this.renderMarkerStatusbar(e,s,i),new Ng(n)}_renderMarkerHover(e){const t=new X,i=bo("div.hover-row"),n=Z(i,bo("div.marker.hover-contents")),{source:s,message:r,code:a,relatedInformation:l}=e.marker;this._editor.applyFontInfo(n);const c=Z(n,bo("span"));if(c.style.whiteSpace="pre-wrap",c.innerText=r,s||a)if(a&&typeof a!="string"){const h=bo("span");if(s){const p=Z(h,bo("span"));p.innerText=s}const u=Z(h,bo("a.code-link"));u.setAttribute("href",a.target.toString()),t.add(U(u,"click",p=>{this._openerService.open(a.target,{allowCommands:!0}),p.preventDefault(),p.stopPropagation()}));const f=Z(u,bo("span"));f.innerText=a.value;const g=Z(n,h);g.style.opacity="0.6",g.style.paddingLeft="6px"}else{const h=Z(n,bo("span"));h.style.opacity="0.6",h.style.paddingLeft="6px",h.innerText=s&&a?`${s}(${a})`:s||`(${a})`}if(Ps(l))for(const{message:h,resource:u,startLineNumber:f,startColumn:g}of l){const p=Z(n,bo("div"));p.style.marginTop="8px";const _=Z(p,bo("a"));_.innerText=`${Fo(u)}(${f}, ${g}): `,_.style.cursor="pointer",t.add(U(_,"click",C=>{if(C.stopPropagation(),C.preventDefault(),this._openerService){const w={selection:{startLineNumber:f,startColumn:g}};this._openerService.open(u,{fromUserGesture:!0,editorOptions:w}).catch(Ze)}}));const b=Z(p,bo("span"));b.innerText=h,this._editor.applyFontInfo(b)}return{hoverPart:e,hoverElement:i,dispose:()=>t.dispose()}}renderMarkerStatusbar(e,t,i){if(t.marker.severity===Vt.Error||t.marker.severity===Vt.Warning||t.marker.severity===Vt.Info){const n=Qh.get(this._editor);n&&e.statusBar.addAction({label:m("view problem","View Problem"),commandId:aw.ID,run:()=>{e.hide(),n.showAtMarker(t.marker),this._editor.focus()}})}if(!this._editor.getOption(92)){const n=e.statusBar.append(bo("div"));this.recentMarkerCodeActionsInfo&&(QC.makeKey(this.recentMarkerCodeActionsInfo.marker)===QC.makeKey(t.marker)?this.recentMarkerCodeActionsInfo.hasCodeActions||(n.textContent=m("noQuickFixes","No quick fixes available")):this.recentMarkerCodeActionsInfo=void 0);const s=this.recentMarkerCodeActionsInfo&&!this.recentMarkerCodeActionsInfo.hasCodeActions?z.None:rg(()=>n.textContent=m("checkingForQuickFixes","Checking for quick fixes..."),200,i);n.textContent||(n.textContent=" ");const r=this.getCodeActions(t.marker);i.add(_e(()=>r.cancel())),r.then(a=>{if(s.dispose(),this.recentMarkerCodeActionsInfo={marker:t.marker,hasCodeActions:a.validActions.length>0},!this.recentMarkerCodeActionsInfo.hasCodeActions){a.dispose(),n.textContent=m("noQuickFixes","No quick fixes available");return}n.style.display="none";let l=!1;i.add(_e(()=>{l||a.dispose()})),e.statusBar.addAction({label:m("quick fixes","Quick Fix..."),commandId:TB,run:c=>{l=!0;const d=zE.get(this._editor),h=gi(c);e.hide(),d?.showCodeActions(t5,a,{x:h.left,y:h.top,width:h.width,height:h.height})}})},Ze)}}getCodeActions(e){return wa(t=>mf(this._languageFeaturesService.codeActionProvider,this._editor.getModel(),new I(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),t5,rc.None,t))}};YE=ohe([_L(1,n2),_L(2,Vo),_L(3,Se)],YE);class ahe{get lineNumber(){return this._lineNumber}set lineNumber(e){this._lineNumber=e}get lane(){return this._laneOrLine}set lane(e){this._laneOrLine=e}constructor(e){this._editor=e,this._lineNumber=-1,this._laneOrLine=Ao.Center}computeSync(){const e=s=>({value:s}),t=this._editor.getLineDecorations(this._lineNumber),i=[],n=this._laneOrLine==="lineNo";if(!t)return i;for(const s of t){const r=s.options.glyphMargin?.position??Ao.Center;if(!n&&r!==this._laneOrLine)continue;const a=n?s.options.lineNumberHoverMessage:s.options.glyphMarginHoverMessage;!a||bg(a)||i.push(...T5(a).map(e))}return i}}var lhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},i5=function(o,e){return function(t,i){e(t,i,o)}},QE;const n5=ce;var Lh;let XE=(Lh=class extends z{constructor(e,t,i){super(),this._renderDisposeables=this._register(new X),this._editor=e,this._isVisible=!1,this._messages=[],this._hover=this._register(new RT),this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible),this._markdownRenderer=this._register(new Wh({editor:this._editor},t,i)),this._computer=new ahe(this._editor),this._hoverOperation=this._register(new fB(this._editor,this._computer)),this._register(this._hoverOperation.onResult(n=>{this._withResult(n.value)})),this._register(this._editor.onDidChangeModelDecorations(()=>this._onModelDecorationsChanged())),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(50)&&this._updateFont()})),this._register(jt(this._hover.containerDomNode,"mouseleave",n=>{this._onMouseLeave(n)})),this._editor.addOverlayWidget(this)}dispose(){this._editor.removeOverlayWidget(this),super.dispose()}getId(){return QE.ID}getDomNode(){return this._hover.containerDomNode}getPosition(){return null}_updateFont(){Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName("code")).forEach(t=>this._editor.applyFontInfo(t))}_onModelDecorationsChanged(){this._isVisible&&(this._hoverOperation.cancel(),this._hoverOperation.start(0))}showsOrWillShow(e){const t=e.target;return t.type===2&&t.detail.glyphMarginLane?(this._startShowingAt(t.position.lineNumber,t.detail.glyphMarginLane),!0):t.type===3?(this._startShowingAt(t.position.lineNumber,"lineNo"),!0):!1}_startShowingAt(e,t){this._computer.lineNumber===e&&this._computer.lane===t||(this._hoverOperation.cancel(),this.hide(),this._computer.lineNumber=e,this._computer.lane=t,this._hoverOperation.start(0))}hide(){this._computer.lineNumber=-1,this._hoverOperation.cancel(),this._isVisible&&(this._isVisible=!1,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible))}_withResult(e){this._messages=e,this._messages.length>0?this._renderMessages(this._computer.lineNumber,this._messages):this.hide()}_renderMessages(e,t){this._renderDisposeables.clear();const i=document.createDocumentFragment();for(const n of t){const s=n5("div.hover-row.markdown-hover"),r=Z(s,n5("div.hover-contents")),a=this._renderDisposeables.add(this._markdownRenderer.render(n.value));r.appendChild(a.element),i.appendChild(s)}this._updateContents(i),this._showAt(e)}_updateContents(e){this._hover.contentsDomNode.textContent="",this._hover.contentsDomNode.appendChild(e),this._updateFont()}_showAt(e){this._isVisible||(this._isVisible=!0,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible));const t=this._editor.getLayoutInfo(),i=this._editor.getTopForLineNumber(e),n=this._editor.getScrollTop(),s=this._editor.getOption(67),r=this._hover.containerDomNode.clientHeight,a=i-n-(r-s)/2,l=t.glyphMarginLeft+t.glyphMarginWidth+(this._computer.lane==="lineNo"?t.lineNumbersWidth:0);this._hover.containerDomNode.style.left=`${l}px`,this._hover.containerDomNode.style.top=`${Math.max(Math.round(a),0)}px`}_onMouseLeave(e){const t=this._editor.getDomNode();(!t||!Py(t,e.x,e.y))&&this.hide()}},QE=Lh,Lh.ID="editor.contrib.modesGlyphHoverWidget",Lh);XE=QE=lhe([i5(1,qt),i5(2,Vo)],XE);var che=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},dhe=function(o,e){return function(t,i){e(t,i,o)}},tg;let lw=(tg=class extends z{constructor(e,t){super(),this._editor=e,this._instantiationService=t,this.shouldKeepOpenOnEditorMouseMoveOrLeave=!1,this._listenersStore=new X,this._hoverState={mouseDown:!1},this._reactToEditorMouseMoveRunner=this._register(new ci(()=>this._reactToEditorMouseMove(this._mouseMoveEvent),0)),this._hookListeners(),this._register(this._editor.onDidChangeConfiguration(i=>{i.hasChanged(60)&&(this._unhookListeners(),this._hookListeners())}))}_hookListeners(){const e=this._editor.getOption(60);this._hoverSettings={enabled:e.enabled,sticky:e.sticky,hidingDelay:e.hidingDelay},e.enabled?(this._listenersStore.add(this._editor.onMouseDown(t=>this._onEditorMouseDown(t))),this._listenersStore.add(this._editor.onMouseUp(()=>this._onEditorMouseUp())),this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))):(this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))),this._listenersStore.add(this._editor.onMouseLeave(t=>this._onEditorMouseLeave(t))),this._listenersStore.add(this._editor.onDidChangeModel(()=>{this._cancelScheduler(),this._hideWidgets()})),this._listenersStore.add(this._editor.onDidChangeModelContent(()=>this._cancelScheduler())),this._listenersStore.add(this._editor.onDidScrollChange(t=>this._onEditorScrollChanged(t)))}_unhookListeners(){this._listenersStore.clear()}_cancelScheduler(){this._mouseMoveEvent=void 0,this._reactToEditorMouseMoveRunner.cancel()}_onEditorScrollChanged(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()}_onEditorMouseDown(e){this._hoverState.mouseDown=!0,!this._isMouseOnMarginHoverWidget(e)&&this._hideWidgets()}_isMouseOnMarginHoverWidget(e){const t=this._glyphWidget?.getDomNode();return t?Py(t,e.event.posx,e.event.posy):!1}_onEditorMouseUp(){this._hoverState.mouseDown=!1}_onEditorMouseLeave(e){this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._cancelScheduler(),this._isMouseOnMarginHoverWidget(e))||this._hideWidgets()}_shouldNotRecomputeCurrentHoverWidget(e){const t=this._hoverSettings.sticky,i=this._isMouseOnMarginHoverWidget(e);return t&&i}_onEditorMouseMove(e){if(this.shouldKeepOpenOnEditorMouseMoveOrLeave)return;if(this._mouseMoveEvent=e,this._shouldNotRecomputeCurrentHoverWidget(e)){this._reactToEditorMouseMoveRunner.cancel();return}this._reactToEditorMouseMove(e)}_reactToEditorMouseMove(e){!e||this._tryShowHoverWidget(e)||this._hideWidgets()}_tryShowHoverWidget(e){return this._getOrCreateGlyphWidget().showsOrWillShow(e)}_onKeyDown(e){this._editor.hasModel()&&(e.keyCode===5||e.keyCode===6||e.keyCode===57||e.keyCode===4||this._hideWidgets())}_hideWidgets(){this._glyphWidget?.hide()}_getOrCreateGlyphWidget(){return this._glyphWidget||(this._glyphWidget=this._instantiationService.createInstance(XE,this._editor)),this._glyphWidget}dispose(){super.dispose(),this._unhookListeners(),this._listenersStore.dispose(),this._glyphWidget?.dispose()}},tg.ID="editor.contrib.marginHover",tg);lw=che([dhe(1,ke)],lw);const By=new class{constructor(){this._implementations=[]}register(e){return this._implementations.push(e),{dispose:()=>{const t=this._implementations.indexOf(e);t!==-1&&this._implementations.splice(t,1)}}}getImplementations(){return this._implementations}};class hhe{}class uhe{}class fhe{}Ho(Tn.ID,Tn,2);Ho(lw.ID,lw,2);mi(dde);mi(hde);mi(ude);mi(fde);mi(gde);mi(mde);mi(pde);mi(_de);mi(bde);mi(Cde);mi(vde);mi(wde);Oy.register(P_);Oy.register(YE);Sr((o,e)=>{const t=o.getColor(z3);t&&(e.addRule(`.monaco-editor .monaco-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${t.transparent(.5)}; }`),e.addRule(`.monaco-editor .monaco-hover hr { border-top: 1px solid ${t.transparent(.5)}; }`),e.addRule(`.monaco-editor .monaco-hover hr { border-bottom: 0px solid ${t.transparent(.5)}; }`))});By.register(new hhe);By.register(new uhe);By.register(new fhe);const zr=class zr extends z{constructor(e,t){super(),this.contextKeyService=e,this.model=t,this.inlineCompletionVisible=zr.inlineSuggestionVisible.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentation=zr.inlineSuggestionHasIndentation.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentationLessThanTabSize=zr.inlineSuggestionHasIndentationLessThanTabSize.bindTo(this.contextKeyService),this.suppressSuggestions=zr.suppressSuggestions.bindTo(this.contextKeyService),this._register(We(i=>{const s=this.model.read(i)?.state.read(i),r=!!s?.inlineCompletion&&s?.primaryGhostText!==void 0&&!s?.primaryGhostText.isEmpty();this.inlineCompletionVisible.set(r),s?.primaryGhostText&&s?.inlineCompletion&&this.suppressSuggestions.set(s.inlineCompletion.inlineCompletion.source.inlineCompletions.suppressSuggestions)})),this._register(We(i=>{const n=this.model.read(i);let s=!1,r=!0;const a=n?.primaryGhostText.read(i);if(n?.selectedSuggestItem&&a&&a.parts.length>0){const{column:l,lines:c}=a.parts[0],d=c[0],h=n.textModel.getLineIndentColumn(a.lineNumber);if(l<=h){let f=zn(d);f===-1&&(f=d.length-1),s=f>0;const g=n.textModel.getOptions().tabSize;r=_i.visibleColumnFromColumn(d,f+1,g){t.setStyle(o.read(i))})),e}class cw{constructor(e,t){this.lineNumber=e,this.parts=t}equals(e){return this.lineNumber===e.lineNumber&&this.parts.length===e.parts.length&&this.parts.every((t,i)=>t.equals(e.parts[i]))}renderForScreenReader(e){if(this.parts.length===0)return"";const t=this.parts[this.parts.length-1],i=e.substr(0,t.column-1);return new gT([...this.parts.map(s=>new fa(I.fromPositions(new P(1,s.column)),s.lines.join(` +`)))]).applyToString(i).substring(this.parts[0].column-1)}isEmpty(){return this.parts.every(e=>e.lines.length===0)}get lineCount(){return 1+this.parts.reduce((e,t)=>e+t.lines.length-1,0)}}class JE{constructor(e,t,i){this.column=e,this.text=t,this.preview=i,this.lines=va(this.text)}equals(e){return this.column===e.column&&this.lines.length===e.lines.length&&this.lines.every((t,i)=>t===e.lines[i])}}class eN{constructor(e,t,i,n=0){this.lineNumber=e,this.columnRange=t,this.text=i,this.additionalReservedLineCount=n,this.parts=[new JE(this.columnRange.endColumnExclusive,this.text,!1)],this.newLines=va(this.text)}renderForScreenReader(e){return this.newLines.join(` +`)}get lineCount(){return this.newLines.length}isEmpty(){return this.parts.every(e=>e.lines.length===0)}equals(e){return this.lineNumber===e.lineNumber&&this.columnRange.equals(e.columnRange)&&this.newLines.length===e.newLines.length&&this.newLines.every((t,i)=>t===e.newLines[i])&&this.additionalReservedLineCount===e.additionalReservedLineCount}}function s5(o,e){return li(o,e,VB)}function VB(o,e){return o===e?!0:!o||!e?!1:o instanceof cw&&e instanceof cw||o instanceof eN&&e instanceof eN?o.equals(e):!1}const mhe=[];function phe(){return mhe}class _he{constructor(e,t){if(this.startColumn=e,this.endColumnExclusive=t,e>t)throw new nt(`startColumn ${e} cannot be after endColumnExclusive ${t}`)}toRange(e){return new I(e,this.startColumn,e,this.endColumnExclusive)}equals(e){return this.startColumn===e.startColumn&&this.endColumnExclusive===e.endColumnExclusive}}function bhe(o,e){const t=new X,i=o.createDecorationsCollection();return t.add(Z_({debugName:()=>`Apply decorations from ${e.debugName}`},n=>{const s=e.read(n);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}function Che(o,e){return new P(o.lineNumber+e.lineNumber-1,e.lineNumber===1?o.column+e.column-1:e.column)}function o5(o,e){return new P(o.lineNumber-e.lineNumber+1,o.lineNumber-e.lineNumber===0?o.column-e.column+1:o.column)}var vhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},whe=function(o,e){return function(t,i){e(t,i,o)}};const r5="ghost-text";let tN=class extends z{constructor(e,t,i){super(),this.editor=e,this.model=t,this.languageService=i,this.isDisposed=Ge(this,!1),this.currentTextModel=gt(this,this.editor.onDidChangeModel,()=>this.editor.getModel()),this.uiState=Ce(this,n=>{if(this.isDisposed.read(n))return;const s=this.currentTextModel.read(n);if(s!==this.model.targetTextModel.read(n))return;const r=this.model.ghostText.read(n);if(!r)return;const a=r instanceof eN?r.columnRange:void 0,l=[],c=[];function d(p,_){if(c.length>0){const b=c[c.length-1];_&&b.decorations.push(new As(b.content.length+1,b.content.length+1+p[0].length,_,0)),b.content+=p[0],p=p.slice(1)}for(const b of p)c.push({content:b,decorations:_?[new As(1,b.length+1,_,0)]:[]})}const h=s.getLineContent(r.lineNumber);let u,f=0;for(const p of r.parts){let _=p.lines;u===void 0?(l.push({column:p.column,text:_[0],preview:p.preview}),_=_.slice(1)):d([h.substring(f,p.column-1)],void 0),_.length>0&&(d(_,r5),u===void 0&&p.column<=h.length&&(u=p.column)),f=p.column-1}u!==void 0&&d([h.substring(f)],void 0);const g=u!==void 0?new _he(u,h.length+1):void 0;return{replacedRange:a,inlineTexts:l,additionalLines:c,hiddenRange:g,lineNumber:r.lineNumber,additionalReservedLineCount:this.model.minReservedLineCount.read(n),targetTextModel:s}}),this.decorations=Ce(this,n=>{const s=this.uiState.read(n);if(!s)return[];const r=[];s.replacedRange&&r.push({range:s.replacedRange.toRange(s.lineNumber),options:{inlineClassName:"inline-completion-text-to-replace",description:"GhostTextReplacement"}}),s.hiddenRange&&r.push({range:s.hiddenRange.toRange(s.lineNumber),options:{inlineClassName:"ghost-text-hidden",description:"ghost-text-hidden"}});for(const a of s.inlineTexts)r.push({range:I.fromPositions(new P(s.lineNumber,a.column)),options:{description:r5,after:{content:a.text,inlineClassName:a.preview?"ghost-text-decoration-preview":"ghost-text-decoration",cursorStops:gr.Left},showIfCollapsed:!0}});return r}),this.additionalLinesWidget=this._register(new yhe(this.editor,this.languageService.languageIdCodec,Ce(n=>{const s=this.uiState.read(n);return s?{lineNumber:s.lineNumber,additionalLines:s.additionalLines,minReservedLineCount:s.additionalReservedLineCount,targetTextModel:s.targetTextModel}:void 0}))),this._register(_e(()=>{this.isDisposed.set(!0,void 0)})),this._register(bhe(this.editor,this.decorations))}ownsViewZone(e){return this.additionalLinesWidget.viewZoneId===e}};tN=vhe([whe(2,qt)],tN);class yhe extends z{get viewZoneId(){return this._viewZoneId}constructor(e,t,i){super(),this.editor=e,this.languageIdCodec=t,this.lines=i,this._viewZoneId=void 0,this.editorOptionsChanged=ks("editorOptionChanged",J.filter(this.editor.onDidChangeConfiguration,n=>n.hasChanged(33)||n.hasChanged(118)||n.hasChanged(100)||n.hasChanged(95)||n.hasChanged(51)||n.hasChanged(50)||n.hasChanged(67))),this._register(We(n=>{const s=this.lines.read(n);this.editorOptionsChanged.read(n),s?this.updateLines(s.lineNumber,s.additionalLines,s.minReservedLineCount):this.clear()}))}dispose(){super.dispose(),this.clear()}clear(){this.editor.changeViewZones(e=>{this._viewZoneId&&(e.removeZone(this._viewZoneId),this._viewZoneId=void 0)})}updateLines(e,t,i){const n=this.editor.getModel();if(!n)return;const{tabSize:s}=n.getOptions();this.editor.changeViewZones(r=>{this._viewZoneId&&(r.removeZone(this._viewZoneId),this._viewZoneId=void 0);const a=Math.max(t.length,i);if(a>0){const l=document.createElement("div");She(l,s,t,this.editor.getOptions(),this.languageIdCodec),this._viewZoneId=r.addZone({afterLineNumber:e,heightInLines:a,domNode:l,afterColumnAffinity:1})}})}}function She(o,e,t,i,n){const s=i.get(33),r=i.get(118),a="none",l=i.get(95),c=i.get(51),d=i.get(50),h=i.get(67),u=new K_(1e4);u.appendString('
    ');for(let p=0,_=t.length;p<_;p++){const b=t[p],C=b.content;u.appendString('
    ');const w=D0(C),v=sg(C),y=Ni.createEmpty(C,n);Sy(new gu(d.isMonospace&&!s,d.canUseHalfwidthRightwardsArrow,C,!1,w,v,0,y,b.decorations,e,0,d.spaceWidth,d.middotWidth,d.wsmiddotWidth,r,a,l,c!==Mc.OFF,null),u),u.appendString("
    ")}u.appendString("
    "),qi(o,d);const f=u.build(),g=a5?a5.createHTML(f):f;o.innerHTML=g}const a5=Kc("editorGhostText",{createHTML:o=>o});function Lhe(o,e){const t=new J7,i=new t9(t,c=>e.getLanguageConfiguration(c)),n=new e9(new xhe([o]),i),s=vD(n,[],void 0,!0);let r="";const a=o.getLineContent();function l(c,d){if(c.kind===2)if(l(c.openingBracket,d),d=zt(d,c.openingBracket.length),c.child&&(l(c.child,d),d=zt(d,c.child.length)),c.closingBracket)l(c.closingBracket,d),d=zt(d,c.closingBracket.length);else{const u=i.getSingleLanguageBracketTokens(c.openingBracket.languageId).findClosingTokenText(c.openingBracket.bracketIds);r+=u}else if(c.kind!==3){if(c.kind===0||c.kind===1)r+=a.substring(d,zt(d,c.length));else if(c.kind===4)for(const h of c.children)l(h,d),d=zt(d,h.length)}}return l(s,Ln),r}class xhe{constructor(e){this.lines=e,this.tokenization={getLineTokens:t=>this.lines[t-1]}}getLineCount(){return this.lines.length}getLineLength(e){return this.lines[e-1].getLineContent().length}}const yo=class yo{constructor(){this.value="",this.pos=0}static isDigitCharacter(e){return e>=48&&e<=57}static isVariableCharacter(e){return e===95||e>=97&&e<=122||e>=65&&e<=90}text(e){this.value=e,this.pos=0}tokenText(e){return this.value.substr(e.pos,e.len)}next(){if(this.pos>=this.value.length)return{type:14,pos:this.pos,len:0};const e=this.pos;let t=0,i=this.value.charCodeAt(e),n;if(n=yo._table[i],typeof n=="number")return this.pos+=1,{type:n,pos:e,len:1};if(yo.isDigitCharacter(i)){n=8;do t+=1,i=this.value.charCodeAt(e+t);while(yo.isDigitCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}if(yo.isVariableCharacter(i)){n=9;do i=this.value.charCodeAt(e+ ++t);while(yo.isVariableCharacter(i)||yo.isDigitCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}n=10;do t+=1,i=this.value.charCodeAt(e+t);while(!isNaN(i)&&typeof yo._table[i]>"u"&&!yo.isDigitCharacter(i)&&!yo.isVariableCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}};yo._table={36:0,58:1,44:2,123:3,125:4,92:5,47:6,124:7,43:11,45:12,63:13};let iN=yo;class Gg{constructor(){this._children=[]}appendChild(e){return e instanceof wn&&this._children[this._children.length-1]instanceof wn?this._children[this._children.length-1].value+=e.value:(e.parent=this,this._children.push(e)),this}replace(e,t){const{parent:i}=e,n=i.children.indexOf(e),s=i.children.slice(0);s.splice(n,1,...t),i._children=s,(function r(a,l){for(const c of a)c.parent=l,r(c.children,c)})(t,i)}get children(){return this._children}get rightMostDescendant(){return this._children.length>0?this._children[this._children.length-1].rightMostDescendant:this}get snippet(){let e=this;for(;;){if(!e)return;if(e instanceof ub)return e;e=e.parent}}toString(){return this.children.reduce((e,t)=>e+t.toString(),"")}len(){return 0}}class wn extends Gg{constructor(e){super(),this.value=e}toString(){return this.value}len(){return this.value.length}clone(){return new wn(this.value)}}class zB extends Gg{}class eo extends zB{static compareByIndex(e,t){return e.index===t.index?0:e.isFinalTabstop?1:t.isFinalTabstop||e.indext.index?1:0}constructor(e){super(),this.index=e}get isFinalTabstop(){return this.index===0}get choice(){return this._children.length===1&&this._children[0]instanceof Zg?this._children[0]:void 0}clone(){const e=new eo(this.index);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map(t=>t.clone()),e}}class Zg extends Gg{constructor(){super(...arguments),this.options=[]}appendChild(e){return e instanceof wn&&(e.parent=this,this.options.push(e)),this}toString(){return this.options[0].value}len(){return this.options[0].len()}clone(){const e=new Zg;return this.options.forEach(e.appendChild,e),e}}class vM extends Gg{constructor(){super(...arguments),this.regexp=new RegExp("")}resolve(e){const t=this;let i=!1,n=e.replace(this.regexp,function(){return i=!0,t._replace(Array.prototype.slice.call(arguments,0,-2))});return!i&&this._children.some(s=>s instanceof ir&&!!s.elseValue)&&(n=this._replace([])),n}_replace(e){let t="";for(const i of this._children)if(i instanceof ir){let n=e[i.index]||"";n=i.resolve(n),t+=n}else t+=i.toString();return t}toString(){return""}clone(){const e=new vM;return e.regexp=new RegExp(this.regexp.source,(this.regexp.ignoreCase?"i":"")+(this.regexp.global?"g":"")),e._children=this.children.map(t=>t.clone()),e}}class ir extends Gg{constructor(e,t,i,n){super(),this.index=e,this.shorthandName=t,this.ifValue=i,this.elseValue=n}resolve(e){return this.shorthandName==="upcase"?e?e.toLocaleUpperCase():"":this.shorthandName==="downcase"?e?e.toLocaleLowerCase():"":this.shorthandName==="capitalize"?e?e[0].toLocaleUpperCase()+e.substr(1):"":this.shorthandName==="pascalcase"?e?this._toPascalCase(e):"":this.shorthandName==="camelcase"?e?this._toCamelCase(e):"":e&&typeof this.ifValue=="string"?this.ifValue:!e&&typeof this.elseValue=="string"?this.elseValue:e||""}_toPascalCase(e){const t=e.match(/[a-z0-9]+/gi);return t?t.map(i=>i.charAt(0).toUpperCase()+i.substr(1)).join(""):e}_toCamelCase(e){const t=e.match(/[a-z0-9]+/gi);return t?t.map((i,n)=>n===0?i.charAt(0).toLowerCase()+i.substr(1):i.charAt(0).toUpperCase()+i.substr(1)).join(""):e}clone(){return new ir(this.index,this.shorthandName,this.ifValue,this.elseValue)}}class F_ extends zB{constructor(e){super(),this.name=e}resolve(e){let t=e.resolve(this);return this.transform&&(t=this.transform.resolve(t||"")),t!==void 0?(this._children=[new wn(t)],!0):!1}clone(){const e=new F_(this.name);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map(t=>t.clone()),e}}function l5(o,e){const t=[...o];for(;t.length>0;){const i=t.shift();if(!e(i))break;t.unshift(...i.children)}}class ub extends Gg{get placeholderInfo(){if(!this._placeholders){const e=[];let t;this.walk(function(i){return i instanceof eo&&(e.push(i),t=!t||t.indexn===e?(i=!0,!1):(t+=n.len(),!0)),i?t:-1}fullLen(e){let t=0;return l5([e],i=>(t+=i.len(),!0)),t}enclosingPlaceholders(e){const t=[];let{parent:i}=e;for(;i;)i instanceof eo&&t.push(i),i=i.parent;return t}resolveVariables(e){return this.walk(t=>(t instanceof F_&&t.resolve(e)&&(this._placeholders=void 0),!0)),this}appendChild(e){return this._placeholders=void 0,super.appendChild(e)}replace(e,t){return this._placeholders=void 0,super.replace(e,t)}clone(){const e=new ub;return this._children=this.children.map(t=>t.clone()),e}walk(e){l5(this.children,e)}}class Mg{constructor(){this._scanner=new iN,this._token={type:14,pos:0,len:0}}static escape(e){return e.replace(/\$|}|\\/g,"\\$&")}static guessNeedsClipboard(e){return/\${?CLIPBOARD/.test(e)}parse(e,t,i){const n=new ub;return this.parseFragment(e,n),this.ensureFinalTabstop(n,i??!1,t??!1),n}parseFragment(e,t){const i=t.children.length;for(this._scanner.text(e),this._token=this._scanner.next();this._parse(t););const n=new Map,s=[];t.walk(l=>(l instanceof eo&&(l.isFinalTabstop?n.set(0,void 0):!n.has(l.index)&&l.children.length>0?n.set(l.index,l.children):s.push(l)),!0));const r=(l,c)=>{const d=n.get(l.index);if(!d)return;const h=new eo(l.index);h.transform=l.transform;for(const u of d){const f=u.clone();h.appendChild(f),f instanceof eo&&n.has(f.index)&&!c.has(f.index)&&(c.add(f.index),r(f,c),c.delete(f.index))}t.replace(l,[h])},a=new Set;for(const l of s)r(l,a);return t.children.slice(i)}ensureFinalTabstop(e,t,i){(t||i&&e.placeholders.length>0)&&(e.placeholders.find(s=>s.index===0)||e.appendChild(new eo(0)))}_accept(e,t){if(e===void 0||this._token.type===e){const i=t?this._scanner.tokenText(this._token):!0;return this._token=this._scanner.next(),i}return!1}_backTo(e){return this._scanner.pos=e.pos+e.len,this._token=e,!1}_until(e){const t=this._token;for(;this._token.type!==e;){if(this._token.type===14)return!1;if(this._token.type===5){const n=this._scanner.next();if(n.type!==0&&n.type!==4&&n.type!==5)return!1}this._token=this._scanner.next()}const i=this._scanner.value.substring(t.pos,this._token.pos).replace(/\\(\$|}|\\)/g,"$1");return this._token=this._scanner.next(),i}_parse(e){return this._parseEscaped(e)||this._parseTabstopOrVariableName(e)||this._parseComplexPlaceholder(e)||this._parseComplexVariable(e)||this._parseAnything(e)}_parseEscaped(e){let t;return(t=this._accept(5,!0))?(t=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||t,e.appendChild(new wn(t)),!0):!1}_parseTabstopOrVariableName(e){let t;const i=this._token;return this._accept(0)&&(t=this._accept(9,!0)||this._accept(8,!0))?(e.appendChild(/^\d+$/.test(t)?new eo(Number(t)):new F_(t)),!0):this._backTo(i)}_parseComplexPlaceholder(e){let t;const i=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(8,!0))))return this._backTo(i);const s=new eo(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(s),!0;if(!this._parse(s))return e.appendChild(new wn("${"+t+":")),s.children.forEach(e.appendChild,e),!0}else if(s.index>0&&this._accept(7)){const r=new Zg;for(;;){if(this._parseChoiceElement(r)){if(this._accept(2))continue;if(this._accept(7)&&(s.appendChild(r),this._accept(4)))return e.appendChild(s),!0}return this._backTo(i),!1}}else return this._accept(6)?this._parseTransform(s)?(e.appendChild(s),!0):(this._backTo(i),!1):this._accept(4)?(e.appendChild(s),!0):this._backTo(i)}_parseChoiceElement(e){const t=this._token,i=[];for(;!(this._token.type===2||this._token.type===7);){let n;if((n=this._accept(5,!0))?n=this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||n:n=this._accept(void 0,!0),!n)return this._backTo(t),!1;i.push(n)}return i.length===0?(this._backTo(t),!1):(e.appendChild(new wn(i.join(""))),!0)}_parseComplexVariable(e){let t;const i=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(9,!0))))return this._backTo(i);const s=new F_(t);if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(s),!0;if(!this._parse(s))return e.appendChild(new wn("${"+t+":")),s.children.forEach(e.appendChild,e),!0}else return this._accept(6)?this._parseTransform(s)?(e.appendChild(s),!0):(this._backTo(i),!1):this._accept(4)?(e.appendChild(s),!0):this._backTo(i)}_parseTransform(e){const t=new vM;let i="",n="";for(;!this._accept(6);){let s;if(s=this._accept(5,!0)){s=this._accept(6,!0)||s,i+=s;continue}if(this._token.type!==14){i+=this._accept(void 0,!0);continue}return!1}for(;!this._accept(6);){let s;if(s=this._accept(5,!0)){s=this._accept(5,!0)||this._accept(6,!0)||s,t.appendChild(new wn(s));continue}if(!(this._parseFormatString(t)||this._parseAnything(t)))return!1}for(;!this._accept(4);){if(this._token.type!==14){n+=this._accept(void 0,!0);continue}return!1}try{t.regexp=new RegExp(i,n)}catch{return!1}return e.transform=t,!0}_parseFormatString(e){const t=this._token;if(!this._accept(0))return!1;let i=!1;this._accept(3)&&(i=!0);const n=this._accept(8,!0);if(n)if(i){if(this._accept(4))return e.appendChild(new ir(Number(n))),!0;if(!this._accept(1))return this._backTo(t),!1}else return e.appendChild(new ir(Number(n))),!0;else return this._backTo(t),!1;if(this._accept(6)){const s=this._accept(9,!0);return!s||!this._accept(4)?(this._backTo(t),!1):(e.appendChild(new ir(Number(n),s)),!0)}else if(this._accept(11)){const s=this._until(4);if(s)return e.appendChild(new ir(Number(n),void 0,s,void 0)),!0}else if(this._accept(12)){const s=this._until(4);if(s)return e.appendChild(new ir(Number(n),void 0,void 0,s)),!0}else if(this._accept(13)){const s=this._until(1);if(s){const r=this._until(4);if(r)return e.appendChild(new ir(Number(n),void 0,s,r)),!0}}else{const s=this._until(4);if(s)return e.appendChild(new ir(Number(n),void 0,void 0,s)),!0}return this._backTo(t),!1}_parseAnything(e){return this._token.type!==14?(e.appendChild(new wn(this._scanner.tokenText(this._token))),this._accept(void 0),!0):!1}}async function khe(o,e,t,i,n=ut.None,s){const r=e instanceof P?Ehe(e,t):e,a=o.all(t),l=new dT;for(const b of a)b.groupId&&l.add(b.groupId,b);function c(b){if(!b.yieldsToGroupIds)return[];const C=[];for(const w of b.yieldsToGroupIds||[]){const v=l.get(w);for(const y of v)C.push(y)}return C}const d=new Map,h=new Set;function u(b,C){if(C=[...C,b],h.has(b))return C;h.add(b);try{const w=c(b);for(const v of w){const y=u(v,C);if(y)return y}}finally{h.delete(b)}}function f(b){const C=d.get(b);if(C)return C;const w=u(b,[]);w&&$n(new Error(`Inline completions: cyclic yield-to dependency detected. Path: ${w.map(y=>y.toString?y.toString():""+y).join(" -> ")}`));const v=new qN;return d.set(b,v.p),(async()=>{if(!w){const y=c(b);for(const x of y){const L=await f(x);if(L&&L.items.length>0)return}}try{return e instanceof P?await b.provideInlineCompletions(t,e,i,n):await b.provideInlineEdits?.(t,e,i,n)}catch(y){$n(y);return}})().then(y=>v.complete(y),y=>v.error(y)),v.p}const g=await Promise.all(a.map(async b=>({provider:b,completions:await f(b)}))),p=new Map,_=[];for(const b of g){const C=b.completions;if(!C)continue;const w=new Ihe(C,b.provider);_.push(w);for(const v of C.items){const y=dw.from(v,w,r,t,s);p.set(y.hash(),y)}}return new Dhe(Array.from(p.values()),new Set(p.keys()),_)}class Dhe{constructor(e,t,i){this.completions=e,this.hashs=t,this.providerResults=i}has(e){return this.hashs.has(e.hash())}dispose(){for(const e of this.providerResults)e.removeRef()}}class Ihe{constructor(e,t){this.inlineCompletions=e,this.provider=t,this.refCount=1}addRef(){this.refCount++}removeRef(){this.refCount--,this.refCount===0&&this.provider.freeInlineCompletions(this.inlineCompletions)}}class dw{static from(e,t,i,n,s){let r,a,l=e.range?I.lift(e.range):i;if(typeof e.insertText=="string"){if(r=e.insertText,s&&e.completeBracketPairs){r=c5(r,l.getStartPosition(),n,s);const c=r.length-e.insertText.length;c!==0&&(l=new I(l.startLineNumber,l.startColumn,l.endLineNumber,l.endColumn+c))}a=void 0}else if("snippet"in e.insertText){const c=e.insertText.snippet.length;if(s&&e.completeBracketPairs){e.insertText.snippet=c5(e.insertText.snippet,l.getStartPosition(),n,s);const h=e.insertText.snippet.length-c;h!==0&&(l=new I(l.startLineNumber,l.startColumn,l.endLineNumber,l.endColumn+h))}const d=new Mg().parse(e.insertText.snippet);d.children.length===1&&d.children[0]instanceof wn?(r=d.children[0].value,a=void 0):(r=d.toString(),a={snippet:e.insertText.snippet,range:l})}else z0(e.insertText);return new dw(r,e.command,l,r,a,e.additionalTextEdits||phe(),e,t)}constructor(e,t,i,n,s,r,a,l){this.filterText=e,this.command=t,this.range=i,this.insertText=n,this.snippetInfo=s,this.additionalTextEdits=r,this.sourceInlineCompletion=a,this.source=l,e=e.replace(/\r\n|\r/g,` +`),n=e.replace(/\r\n|\r/g,` +`)}withRange(e){return new dw(this.filterText,this.command,e,this.insertText,this.snippetInfo,this.additionalTextEdits,this.sourceInlineCompletion,this.source)}hash(){return JSON.stringify({insertText:this.insertText,range:this.range.toString()})}toSingleTextEdit(){return new fa(this.range,this.insertText)}}function Ehe(o,e){const t=e.getWordAtPosition(o),i=e.getLineMaxColumn(o.lineNumber);return t?new I(o.lineNumber,t.startColumn,o.lineNumber,i):I.fromPositions(o,o.with(void 0,i))}function c5(o,e,t,i){const s=t.getLineContent(e.lineNumber).substring(0,e.column-1)+o,a=t.tokenization.tokenizeLineWithEdit(e,s.length-(e.column-1),o)?.sliceAndInflate(e.column-1,s.length,0);return a?Lhe(a,i):o}function nh(o,e,t){const i=t?o.range.intersectRanges(t):o.range;if(!i)return o;const n=e.getValueInRange(i,1),s=Th(n,o.text),r=Po.ofText(n.substring(0,s)).addToPosition(o.range.getStartPosition()),a=o.text.substring(s),l=I.fromPositions(r,o.range.getEndPosition());return new fa(l,a)}function UB(o,e){return o.text.startsWith(e.text)&&Nhe(o.range,e.range)}function d5(o,e,t,i,n=0){let s=nh(o,e);if(s.range.endLineNumber!==s.range.startLineNumber)return;const r=e.getLineContent(s.range.startLineNumber),a=pi(r).length;if(s.range.startColumn-1<=a){const g=pi(s.text).length,p=r.substring(s.range.startColumn-1,a),[_,b]=[s.range.getStartPosition(),s.range.getEndPosition()],C=_.column+p.length<=b.column?_.delta(0,p.length):b,w=I.fromPositions(C,b),v=s.text.startsWith(p)?s.text.substring(p.length):s.text.substring(g);s=new fa(w,v)}const c=e.getValueInRange(s.range),d=The(c,s.text);if(!d)return;const h=s.range.startLineNumber,u=new Array;if(t==="prefix"){const g=d.filter(p=>p.originalLength===0);if(g.length>1||g.length===1&&g[0].originalStart!==c.length)return}const f=s.text.length-n;for(const g of d){const p=s.range.startColumn+g.originalStart+g.originalLength;if(t==="subwordSmart"&&i&&i.lineNumber===s.range.startLineNumber&&p0)return;if(g.modifiedLength===0)continue;const _=g.modifiedStart+g.modifiedLength,b=Math.max(g.modifiedStart,Math.min(_,f)),C=s.text.substring(g.modifiedStart,b),w=s.text.substring(b,Math.max(g.modifiedStart,_));C.length>0&&u.push(new JE(p,C,!1)),w.length>0&&u.push(new JE(p,w,!0))}return new cw(h,u)}function Nhe(o,e){return e.getStartPosition().equals(o.getStartPosition())&&e.getEndPosition().isBeforeOrEqual(o.getEndPosition())}let f1;function The(o,e){if(f1?.originalValue===o&&f1?.newValue===e)return f1?.changes;{let t=u5(o,e,!0);if(t){const i=h5(t);if(i>0){const n=u5(o,e,!1);n&&h5(n)5e3||e.length>5e3)return;function i(c){let d=0;for(let h=0,u=c.length;hd&&(d=f)}return d}const n=Math.max(i(o),i(e));function s(c){if(c<0)throw new Error("unexpected");return n+c+1}function r(c){let d=0,h=0;const u=new Int32Array(c.length);for(let f=0,g=c.length;fa},{getElements:()=>l}).ComputeDiff(!1).changes}var Mhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},f5=function(o,e){return function(t,i){e(t,i,o)}};let nN=class extends z{constructor(e,t,i,n,s){super(),this.textModel=e,this.versionId=t,this._debounceValue=i,this.languageFeaturesService=n,this.languageConfigurationService=s,this._updateOperation=this._register(new Dn),this.inlineCompletions=KC("inlineCompletions",void 0),this.suggestWidgetInlineCompletions=KC("suggestWidgetInlineCompletions",void 0),this._register(this.textModel.onDidChangeContent(()=>{this._updateOperation.clear()}))}fetch(e,t,i){const n=new Ahe(e,t,this.textModel.getVersionId()),s=t.selectedSuggestionInfo?this.suggestWidgetInlineCompletions:this.inlineCompletions;if(this._updateOperation.value?.request.satisfies(n))return this._updateOperation.value.promise;if(s.get()?.request.satisfies(n))return Promise.resolve(!0);const r=!!this._updateOperation.value;this._updateOperation.clear();const a=new In,l=(async()=>{if((r||t.triggerKind===Cl.Automatic)&&await Rhe(this._debounceValue.get(this.textModel),a.token),a.token.isCancellationRequested||this._store.isDisposed||this.textModel.getVersionId()!==n.versionId)return!1;const h=new Date,u=await khe(this.languageFeaturesService.inlineCompletionsProvider,e,this.textModel,t,a.token,this.languageConfigurationService);if(a.token.isCancellationRequested||this._store.isDisposed||this.textModel.getVersionId()!==n.versionId)return!1;const f=new Date;this._debounceValue.update(this.textModel,f.getTime()-h.getTime());const g=new Ohe(u,n,this.textModel,this.versionId);if(i){const p=i.toInlineCompletion(void 0);i.canBeReused(this.textModel,e)&&!u.has(p)&&g.prepend(i.inlineCompletion,p.range,!0)}return this._updateOperation.clear(),Xt(p=>{s.set(g,p)}),!0})(),c=new Phe(n,a,l);return this._updateOperation.value=c,l}clear(e){this._updateOperation.clear(),this.inlineCompletions.set(void 0,e),this.suggestWidgetInlineCompletions.set(void 0,e)}clearSuggestWidgetInlineCompletions(e){this._updateOperation.value?.request.context.selectedSuggestionInfo&&this._updateOperation.clear(),this.suggestWidgetInlineCompletions.set(void 0,e)}cancelUpdate(){this._updateOperation.clear()}};nN=Mhe([f5(3,Se),f5(4,Gn)],nN);function Rhe(o,e){return new Promise(t=>{let i;const n=setTimeout(()=>{i&&i.dispose(),t()},o);e&&(i=e.onCancellationRequested(()=>{clearTimeout(n),i&&i.dispose(),t()}))})}class Ahe{constructor(e,t,i){this.position=e,this.context=t,this.versionId=i}satisfies(e){return this.position.equals(e.position)&&Jk(this.context.selectedSuggestionInfo,e.context.selectedSuggestionInfo,IZ())&&(e.context.triggerKind===Cl.Automatic||this.context.triggerKind===Cl.Explicit)&&this.versionId===e.versionId}}class Phe{constructor(e,t,i){this.request=e,this.cancellationTokenSource=t,this.promise=i}dispose(){this.cancellationTokenSource.cancel()}}class Ohe{get inlineCompletions(){return this._inlineCompletions}constructor(e,t,i,n){this.inlineCompletionProviderResult=e,this.request=t,this._textModel=i,this._versionId=n,this._refCount=1,this._prependedInlineCompletionItems=[];const s=i.deltaDecorations([],e.completions.map(r=>({range:r.range,options:{description:"inline-completion-tracking-range"}})));this._inlineCompletions=e.completions.map((r,a)=>new g5(r,s[a],this._textModel,this._versionId))}clone(){return this._refCount++,this}dispose(){if(this._refCount--,this._refCount===0){setTimeout(()=>{this._textModel.isDisposed()||this._textModel.deltaDecorations(this._inlineCompletions.map(e=>e.decorationId),[])},0),this.inlineCompletionProviderResult.dispose();for(const e of this._prependedInlineCompletionItems)e.source.removeRef()}}prepend(e,t,i){i&&e.source.addRef();const n=this._textModel.deltaDecorations([],[{range:t,options:{description:"inline-completion-tracking-range"}}])[0];this._inlineCompletions.unshift(new g5(e,n,this._textModel,this._versionId)),this._prependedInlineCompletionItems.push(e)}}class g5{get forwardStable(){return this.inlineCompletion.source.inlineCompletions.enableForwardStability??!1}constructor(e,t,i,n){this.inlineCompletion=e,this.decorationId=t,this._textModel=i,this._modelVersion=n,this.semanticId=JSON.stringify([this.inlineCompletion.filterText,this.inlineCompletion.insertText,this.inlineCompletion.range.getStartPosition().toString()]),this._updatedRange=dr({owner:this,equalsFn:I.equalsRange},s=>(this._modelVersion.read(s),this._textModel.getDecorationRange(this.decorationId)))}toInlineCompletion(e){return this.inlineCompletion.withRange(this._updatedRange.read(e)??bL)}toSingleTextEdit(e){return new fa(this._updatedRange.read(e)??bL,this.inlineCompletion.insertText)}isVisible(e,t,i){const n=nh(this._toFilterTextReplacement(i),e),s=this._updatedRange.read(i);if(!s||!this.inlineCompletion.range.getStartPosition().equals(s.getStartPosition())||t.lineNumber!==n.range.startLineNumber)return!1;const r=e.getValueInRange(n.range,1),a=n.text,l=Math.max(0,t.column-n.range.startColumn);let c=a.substring(0,l),d=a.substring(l),h=r.substring(0,l),u=r.substring(l);const f=e.getLineIndentColumn(n.range.startLineNumber);return n.range.startColumn<=f&&(h=h.trimStart(),h.length===0&&(u=u.trimStart()),c=c.trimStart(),c.length===0&&(d=d.trimStart())),c.startsWith(h)&&!!r7(u,d)}canBeReused(e,t){const i=this._updatedRange.read(void 0);return!!i&&i.containsPosition(t)&&this.isVisible(e,t,void 0)&&Po.ofRange(i).isGreaterThanOrEqualTo(Po.ofRange(this.inlineCompletion.range))}_toFilterTextReplacement(e){return new fa(this._updatedRange.read(e)??bL,this.inlineCompletion.filterText)}}const bL=new I(1,1,1,1),Fhe=m("defaultLabel","input"),Bhe=m("label.preserveCaseToggle","Preserve Case");class Whe extends nb{constructor(e){super({icon:ie.preserveCase,title:Bhe+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class Hhe extends xr{constructor(e,t,i,n){super(),this._showOptionButtons=i,this.fixFocusOnOptionClickEnabled=!0,this.cachedOptionsWidth=0,this._onDidOptionChange=this._register(new A),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new A),this._onInput=this._register(new A),this._onKeyUp=this._register(new A),this._onPreserveCaseKeyDown=this._register(new A),this.onPreserveCaseKeyDown=this._onPreserveCaseKeyDown.event,this.contextViewProvider=t,this.placeholder=n.placeholder||"",this.validation=n.validation,this.label=n.label||Fhe;const s=n.appendPreserveCaseLabel||"",r=n.history||[],a=!!n.flexibleHeight,l=!!n.flexibleWidth,c=n.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new k9(this.domNode,this.contextViewProvider,{ariaLabel:this.label||"",placeholder:this.placeholder||"",validationOptions:{validation:this.validation},history:r,showHistoryHint:n.showHistoryHint,flexibleHeight:a,flexibleWidth:l,flexibleMaxHeight:c,inputBoxStyles:n.inputBoxStyles})),this.preserveCase=this._register(new Whe({appendTitle:s,isChecked:!1,...n.toggleStyles})),this._register(this.preserveCase.onChange(u=>{this._onDidOptionChange.fire(u),!u&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.preserveCase.onKeyDown(u=>{this._onPreserveCaseKeyDown.fire(u)})),this._showOptionButtons?this.cachedOptionsWidth=this.preserveCase.width():this.cachedOptionsWidth=0;const d=[this.preserveCase.domNode];this.onkeydown(this.domNode,u=>{if(u.equals(15)||u.equals(17)||u.equals(9)){const f=d.indexOf(this.domNode.ownerDocument.activeElement);if(f>=0){let g=-1;u.equals(17)?g=(f+1)%d.length:u.equals(15)&&(f===0?g=d.length-1:g=f-1),u.equals(9)?(d[f].blur(),this.inputBox.focus()):g>=0&&d[g].focus(),je.stop(u,!0)}}});const h=document.createElement("div");h.className="controls",h.style.display=this._showOptionButtons?"block":"none",h.appendChild(this.preserveCase.domNode),this.domNode.appendChild(h),e?.appendChild(this.domNode),this.onkeydown(this.inputBox.inputElement,u=>this._onKeyDown.fire(u)),this.onkeyup(this.inputBox.inputElement,u=>this._onKeyUp.fire(u)),this.oninput(this.inputBox.inputElement,u=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,u=>this._onMouseDown.fire(u))}enable(){this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.preserveCase.enable()}disable(){this.domNode.classList.add("disabled"),this.inputBox.disable(),this.preserveCase.disable()}setEnabled(e){e?this.enable():this.disable()}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getPreserveCase(){return this.preserveCase.checked}setPreserveCase(e){this.preserveCase.checked=e}focusOnPreserve(){this.preserveCase.focus()}validate(){this.inputBox?.validate()}set width(e){this.inputBox.paddingRight=this.cachedOptionsWidth,this.domNode.style.width=e+"px"}dispose(){super.dispose()}}var $B=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},KB=function(o,e){return function(t,i){e(t,i,o)}};const wM=new le("suggestWidgetVisible",!1,m("suggestWidgetVisible","Whether suggestion are visible")),yM="historyNavigationWidgetFocus",jB="historyNavigationForwardsEnabled",qB="historyNavigationBackwardsEnabled";let yp;const g1=[];function GB(o,e){if(g1.includes(e))throw new Error("Cannot register the same widget multiple times");g1.push(e);const t=new X,i=new le(yM,!1).bindTo(o),n=new le(jB,!0).bindTo(o),s=new le(qB,!0).bindTo(o),r=()=>{i.set(!0),yp=e},a=()=>{i.set(!1),yp===e&&(yp=void 0)};return M0(e.element)&&r(),t.add(e.onDidFocus(()=>r())),t.add(e.onDidBlur(()=>a())),t.add(_e(()=>{g1.splice(g1.indexOf(e),1),a()})),{historyNavigationForwardsEnablement:n,historyNavigationBackwardsEnablement:s,dispose(){t.dispose()}}}let m5=class extends D9{constructor(e,t,i,n){super(e,t,i);const s=this._register(n.createScoped(this.inputBox.element));this._register(GB(s,this.inputBox))}};m5=$B([KB(3,De)],m5);let p5=class extends Hhe{constructor(e,t,i,n,s=!1){super(e,t,s,i);const r=this._register(n.createScoped(this.inputBox.element));this._register(GB(r,this.inputBox))}};p5=$B([KB(3,De)],p5);Nn.registerCommandAndKeybindingRule({id:"history.showPrevious",weight:200,when:re.and(re.has(yM),re.equals(qB,!0),re.not("isComposing"),wM.isEqualTo(!1)),primary:16,secondary:[528],handler:o=>{yp?.showPreviousValue()}});Nn.registerCommandAndKeybindingRule({id:"history.showNext",weight:200,when:re.and(re.has(yM),re.equals(jB,!0),re.not("isComposing"),wM.isEqualTo(!1)),primary:18,secondary:[530],handler:o=>{yp?.showNextValue()}});const Ne={Visible:wM,HasFocusedSuggestion:new le("suggestWidgetHasFocusedSuggestion",!1,m("suggestWidgetHasSelection","Whether any suggestion is focused")),DetailsVisible:new le("suggestWidgetDetailsVisible",!1,m("suggestWidgetDetailsVisible","Whether suggestion details are visible")),MultipleSuggestions:new le("suggestWidgetMultipleSuggestions",!1,m("suggestWidgetMultipleSuggestions","Whether there are multiple suggestions to pick from")),MakesTextEdit:new le("suggestionMakesTextEdit",!0,m("suggestionMakesTextEdit","Whether inserting the current suggestion yields in a change or has everything already been typed")),AcceptSuggestionsOnEnter:new le("acceptSuggestionOnEnter",!0,m("acceptSuggestionOnEnter","Whether suggestions are inserted when pressing Enter")),HasInsertAndReplaceRange:new le("suggestionHasInsertAndReplaceRange",!1,m("suggestionHasInsertAndReplaceRange","Whether the current suggestion has insert and replace behaviour")),InsertMode:new le("suggestionInsertMode",void 0,{type:"string",description:m("suggestionInsertMode","Whether the default behaviour is to insert or replace")}),CanResolve:new le("suggestionCanResolve",!1,m("suggestionCanResolve","Whether the current suggestion supports to resolve further details"))},bc=new $e("suggestWidgetStatusBar");class Vhe{constructor(e,t,i,n){this.position=e,this.completion=t,this.container=i,this.provider=n,this.isInvalid=!1,this.score=oa.Default,this.distance=0,this.textLabel=typeof t.label=="string"?t.label:t.label?.label,this.labelLow=this.textLabel.toLowerCase(),this.isInvalid=!this.textLabel,this.sortTextLow=t.sortText&&t.sortText.toLowerCase(),this.filterTextLow=t.filterText&&t.filterText.toLowerCase(),this.extensionId=t.extensionId,I.isIRange(t.range)?(this.editStart=new P(t.range.startLineNumber,t.range.startColumn),this.editInsertEnd=new P(t.range.endLineNumber,t.range.endColumn),this.editReplaceEnd=new P(t.range.endLineNumber,t.range.endColumn),this.isInvalid=this.isInvalid||I.spansMultipleLines(t.range)||t.range.startLineNumber!==e.lineNumber):(this.editStart=new P(t.range.insert.startLineNumber,t.range.insert.startColumn),this.editInsertEnd=new P(t.range.insert.endLineNumber,t.range.insert.endColumn),this.editReplaceEnd=new P(t.range.replace.endLineNumber,t.range.replace.endColumn),this.isInvalid=this.isInvalid||I.spansMultipleLines(t.range.insert)||I.spansMultipleLines(t.range.replace)||t.range.insert.startLineNumber!==e.lineNumber||t.range.replace.startLineNumber!==e.lineNumber||t.range.insert.startColumn!==t.range.replace.startColumn),typeof n.resolveCompletionItem!="function"&&(this._resolveCache=Promise.resolve(),this._resolveDuration=0)}get isResolved(){return this._resolveDuration!==void 0}get resolveDuration(){return this._resolveDuration!==void 0?this._resolveDuration:-1}async resolve(e){if(!this._resolveCache){const t=e.onCancellationRequested(()=>{this._resolveCache=void 0,this._resolveDuration=void 0}),i=new Hs(!0);this._resolveCache=Promise.resolve(this.provider.resolveCompletionItem(this.completion,e)).then(n=>{Object.assign(this.completion,n),this._resolveDuration=i.elapsed()},n=>{$c(n)&&(this._resolveCache=void 0,this._resolveDuration=void 0)}).finally(()=>{t.dispose()})}return this._resolveCache}}const m0=class m0{constructor(e=2,t=new Set,i=new Set,n=new Map,s=!0){this.snippetSortOrder=e,this.kindFilter=t,this.providerFilter=i,this.providerItemsToReuse=n,this.showDeprecated=s}};m0.default=new m0;let hw=m0;class zhe{constructor(e,t,i,n){this.items=e,this.needsClipboard=t,this.durations=i,this.disposable=n}}async function ZB(o,e,t,i=hw.default,n={triggerKind:0},s=ut.None){const r=new Hs;t=t.clone();const a=e.getWordAtPosition(t),l=a?new I(t.lineNumber,a.startColumn,t.lineNumber,a.endColumn):I.fromPositions(t),c={replace:l,insert:l.setEndPosition(t.lineNumber,t.column)},d=[],h=new X,u=[];let f=!1;const g=(_,b,C)=>{let w=!1;if(!b)return w;for(const v of b.suggestions)if(!i.kindFilter.has(v.kind)){if(!i.showDeprecated&&v?.tags?.includes(1))continue;v.range||(v.range=c),v.sortText||(v.sortText=typeof v.label=="string"?v.label:v.label.label),!f&&v.insertTextRules&&v.insertTextRules&4&&(f=Mg.guessNeedsClipboard(v.insertText)),d.push(new Vhe(t,v,b,_)),w=!0}return MN(b)&&h.add(b),u.push({providerName:_._debugDisplayName??"unknown_provider",elapsedProvider:b.duration??-1,elapsedOverall:C.elapsed()}),w},p=(async()=>{})();for(const _ of o.orderedGroups(e)){let b=!1;if(await Promise.all(_.map(async C=>{if(i.providerItemsToReuse.has(C)){const w=i.providerItemsToReuse.get(C);w.forEach(v=>d.push(v)),b=b||w.length>0;return}if(!(i.providerFilter.size>0&&!i.providerFilter.has(C)))try{const w=new Hs,v=await C.provideCompletionItems(e,t,n,s);b=g(C,v,w)||b}catch(w){$n(w)}})),b||s.isCancellationRequested)break}return await p,s.isCancellationRequested?(h.dispose(),Promise.reject(new ha)):new zhe(d.sort(Khe(i.snippetSortOrder)),f,{entries:u,elapsed:r.elapsed()},h)}function SM(o,e){if(o.sortTextLow&&e.sortTextLow){if(o.sortTextLowe.sortTextLow)return 1}return o.textLabele.textLabel?1:o.completion.kind-e.completion.kind}function Uhe(o,e){if(o.completion.kind!==e.completion.kind){if(o.completion.kind===27)return-1;if(e.completion.kind===27)return 1}return SM(o,e)}function $he(o,e){if(o.completion.kind!==e.completion.kind){if(o.completion.kind===27)return 1;if(e.completion.kind===27)return-1}return SM(o,e)}const Wy=new Map;Wy.set(0,Uhe);Wy.set(2,$he);Wy.set(1,SM);function Khe(o){return Wy.get(o)}bt.registerCommand("_executeCompletionItemProvider",async(o,...e)=>{const[t,i,n,s]=e;ai(ve.isUri(t)),ai(P.isIPosition(i)),ai(typeof n=="string"||!n),ai(typeof s=="number"||!s);const{completionProvider:r}=o.get(Se),a=await o.get(fo).createModelReference(t);try{const l={incomplete:!1,suggestions:[]},c=[],d=a.object.textEditorModel.validatePosition(i),h=await ZB(r,a.object.textEditorModel,d,void 0,{triggerCharacter:n??void 0,triggerKind:n?1:0});for(const u of h.items)c.length<(s??0)&&c.push(u.resolve(ut.None)),l.incomplete=l.incomplete||u.container.incomplete,l.suggestions.push(u.completion);try{return await Promise.all(c),l}finally{setTimeout(()=>h.disposable.dispose(),100)}}finally{a.dispose()}});function jhe(o,e){o.getContribution("editor.contrib.suggestController")?.triggerSuggest(new Set().add(e),void 0,!0)}class m1{static isAllOff(e){return e.other==="off"&&e.comments==="off"&&e.strings==="off"}static isAllOn(e){return e.other==="on"&&e.comments==="on"&&e.strings==="on"}static valueFor(e,t){switch(t){case 1:return e.comments;case 2:return e.strings;default:return e.other}}}function _5(o,e=kn){return Q$(o,e)?o.charAt(0).toUpperCase()+o.slice(1):o}var qhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ghe=function(o,e){return function(t,i){e(t,i,o)}};class b5{constructor(e){this._delegates=e}resolve(e){for(const t of this._delegates){const i=t.resolve(e);if(i!==void 0)return i}}}class C5{constructor(e,t,i,n){this._model=e,this._selection=t,this._selectionIdx=i,this._overtypingCapturer=n}resolve(e){const{name:t}=e;if(t==="SELECTION"||t==="TM_SELECTED_TEXT"){let i=this._model.getValueInRange(this._selection)||void 0,n=this._selection.startLineNumber!==this._selection.endLineNumber;if(!i&&this._overtypingCapturer){const s=this._overtypingCapturer.getLastOvertypedInfo(this._selectionIdx);s&&(i=s.value,n=s.multiline)}if(i&&n&&e.snippet){const s=this._model.getLineContent(this._selection.startLineNumber),r=pi(s,0,this._selection.startColumn-1);let a=r;e.snippet.walk(c=>c===e?!1:(c instanceof wn&&(a=pi(va(c.value).pop())),!0));const l=Th(a,r);i=i.replace(/(\r\n|\r|\n)(.*)/g,(c,d,h)=>`${d}${a.substr(l)}${h}`)}return i}else{if(t==="TM_CURRENT_LINE")return this._model.getLineContent(this._selection.positionLineNumber);if(t==="TM_CURRENT_WORD"){const i=this._model.getWordAtPosition({lineNumber:this._selection.positionLineNumber,column:this._selection.positionColumn});return i&&i.word||void 0}else{if(t==="TM_LINE_INDEX")return String(this._selection.positionLineNumber-1);if(t==="TM_LINE_NUMBER")return String(this._selection.positionLineNumber);if(t==="CURSOR_INDEX")return String(this._selectionIdx);if(t==="CURSOR_NUMBER")return String(this._selectionIdx+1)}}}}class v5{constructor(e,t){this._labelService=e,this._model=t}resolve(e){const{name:t}=e;if(t==="TM_FILENAME")return uc(this._model.uri.fsPath);if(t==="TM_FILENAME_BASE"){const i=uc(this._model.uri.fsPath),n=i.lastIndexOf(".");return n<=0?i:i.slice(0,n)}else{if(t==="TM_DIRECTORY")return iF(this._model.uri.fsPath)==="."?"":this._labelService.getUriLabel(ny(this._model.uri));if(t==="TM_FILEPATH")return this._labelService.getUriLabel(this._model.uri);if(t==="RELATIVE_FILEPATH")return this._labelService.getUriLabel(this._model.uri,{relative:!0,noPrefix:!0})}}}class w5{constructor(e,t,i,n){this._readClipboardText=e,this._selectionIdx=t,this._selectionCount=i,this._spread=n}resolve(e){if(e.name!=="CLIPBOARD")return;const t=this._readClipboardText();if(t){if(this._spread){const i=t.split(/\r\n|\n|\r/).filter(n=>!hF(n));if(i.length===this._selectionCount)return i[this._selectionIdx]}return t}}}let uw=class{constructor(e,t,i){this._model=e,this._selection=t,this._languageConfigurationService=i}resolve(e){const{name:t}=e,i=this._model.getLanguageIdAtPosition(this._selection.selectionStartLineNumber,this._selection.selectionStartColumn),n=this._languageConfigurationService.getLanguageConfiguration(i).comments;if(n){if(t==="LINE_COMMENT")return n.lineCommentToken||void 0;if(t==="BLOCK_COMMENT_START")return n.blockCommentStartToken||void 0;if(t==="BLOCK_COMMENT_END")return n.blockCommentEndToken||void 0}}};uw=qhe([Ghe(2,Gn)],uw);const Ur=class Ur{constructor(){this._date=new Date}resolve(e){const{name:t}=e;if(t==="CURRENT_YEAR")return String(this._date.getFullYear());if(t==="CURRENT_YEAR_SHORT")return String(this._date.getFullYear()).slice(-2);if(t==="CURRENT_MONTH")return String(this._date.getMonth().valueOf()+1).padStart(2,"0");if(t==="CURRENT_DATE")return String(this._date.getDate().valueOf()).padStart(2,"0");if(t==="CURRENT_HOUR")return String(this._date.getHours().valueOf()).padStart(2,"0");if(t==="CURRENT_MINUTE")return String(this._date.getMinutes().valueOf()).padStart(2,"0");if(t==="CURRENT_SECOND")return String(this._date.getSeconds().valueOf()).padStart(2,"0");if(t==="CURRENT_DAY_NAME")return Ur.dayNames[this._date.getDay()];if(t==="CURRENT_DAY_NAME_SHORT")return Ur.dayNamesShort[this._date.getDay()];if(t==="CURRENT_MONTH_NAME")return Ur.monthNames[this._date.getMonth()];if(t==="CURRENT_MONTH_NAME_SHORT")return Ur.monthNamesShort[this._date.getMonth()];if(t==="CURRENT_SECONDS_UNIX")return String(Math.floor(this._date.getTime()/1e3));if(t==="CURRENT_TIMEZONE_OFFSET"){const i=this._date.getTimezoneOffset(),n=i>0?"-":"+",s=Math.trunc(Math.abs(i/60)),r=s<10?"0"+s:s,a=Math.abs(i)-s*60,l=a<10?"0"+a:a;return n+r+":"+l}}};Ur.dayNames=[m("Sunday","Sunday"),m("Monday","Monday"),m("Tuesday","Tuesday"),m("Wednesday","Wednesday"),m("Thursday","Thursday"),m("Friday","Friday"),m("Saturday","Saturday")],Ur.dayNamesShort=[m("SundayShort","Sun"),m("MondayShort","Mon"),m("TuesdayShort","Tue"),m("WednesdayShort","Wed"),m("ThursdayShort","Thu"),m("FridayShort","Fri"),m("SaturdayShort","Sat")],Ur.monthNames=[m("January","January"),m("February","February"),m("March","March"),m("April","April"),m("May","May"),m("June","June"),m("July","July"),m("August","August"),m("September","September"),m("October","October"),m("November","November"),m("December","December")],Ur.monthNamesShort=[m("JanuaryShort","Jan"),m("FebruaryShort","Feb"),m("MarchShort","Mar"),m("AprilShort","Apr"),m("MayShort","May"),m("JuneShort","Jun"),m("JulyShort","Jul"),m("AugustShort","Aug"),m("SeptemberShort","Sep"),m("OctoberShort","Oct"),m("NovemberShort","Nov"),m("DecemberShort","Dec")];let fw=Ur;class y5{constructor(e){this._workspaceService=e}resolve(e){if(!this._workspaceService)return;const t=pZ(this._workspaceService.getWorkspace());if(!gZ(t)){if(e.name==="WORKSPACE_NAME")return this._resolveWorkspaceName(t);if(e.name==="WORKSPACE_FOLDER")return this._resoveWorkspacePath(t)}}_resolveWorkspaceName(e){if(qk(e))return uc(e.uri.path);let t=uc(e.configPath.path);return t.endsWith(Gk)&&(t=t.substr(0,t.length-Gk.length-1)),t}_resoveWorkspacePath(e){if(qk(e))return _5(e.uri.fsPath);const t=uc(e.configPath.path);let i=e.configPath.fsPath;return i.endsWith(t)&&(i=i.substr(0,i.length-t.length-1)),i?_5(i):"/"}}class S5{resolve(e){const{name:t}=e;if(t==="RANDOM")return Math.random().toString().slice(-6);if(t==="RANDOM_HEX")return Math.random().toString(16).slice(-6);if(t==="UUID")return IB()}}var Zhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Yhe=function(o,e){return function(t,i){e(t,i,o)}},Zo;const So=class So{constructor(e,t,i){this._editor=e,this._snippet=t,this._snippetLineLeadingWhitespace=i,this._offset=-1,this._nestingLevel=1,this._placeholderGroups=MM(t.placeholders,eo.compareByIndex),this._placeholderGroupsIdx=-1}initialize(e){this._offset=e.newPosition}dispose(){this._placeholderDecorations&&this._editor.removeDecorations([...this._placeholderDecorations.values()]),this._placeholderGroups.length=0}_initDecorations(){if(this._offset===-1)throw new Error("Snippet not initialized!");if(this._placeholderDecorations)return;this._placeholderDecorations=new Map;const e=this._editor.getModel();this._editor.changeDecorations(t=>{for(const i of this._snippet.placeholders){const n=this._snippet.offset(i),s=this._snippet.fullLen(i),r=I.fromPositions(e.getPositionAt(this._offset+n),e.getPositionAt(this._offset+n+s)),a=i.isFinalTabstop?So._decor.inactiveFinal:So._decor.inactive,l=t.addDecoration(r,a);this._placeholderDecorations.set(i,l)}})}move(e){if(!this._editor.hasModel())return[];if(this._initDecorations(),this._placeholderGroupsIdx>=0){const n=[];for(const s of this._placeholderGroups[this._placeholderGroupsIdx])if(s.transform){const r=this._placeholderDecorations.get(s),a=this._editor.getModel().getDecorationRange(r),l=this._editor.getModel().getValueInRange(a),c=s.transform.resolve(l).split(/\r\n|\r|\n/);for(let d=1;d0&&this._editor.executeEdits("snippet.placeholderTransform",n)}let t=!1;e===!0&&this._placeholderGroupsIdx0&&(this._placeholderGroupsIdx-=1,t=!0);const i=this._editor.getModel().changeDecorations(n=>{const s=new Set,r=[];for(const a of this._placeholderGroups[this._placeholderGroupsIdx]){const l=this._placeholderDecorations.get(a),c=this._editor.getModel().getDecorationRange(l);r.push(new Fe(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn)),t=t&&this._hasPlaceholderBeenCollapsed(a),n.changeDecorationOptions(l,a.isFinalTabstop?So._decor.activeFinal:So._decor.active),s.add(a);for(const d of this._snippet.enclosingPlaceholders(a)){const h=this._placeholderDecorations.get(d);n.changeDecorationOptions(h,d.isFinalTabstop?So._decor.activeFinal:So._decor.active),s.add(d)}}for(const[a,l]of this._placeholderDecorations)s.has(a)||n.changeDecorationOptions(l,a.isFinalTabstop?So._decor.inactiveFinal:So._decor.inactive);return r});return t?this.move(e):i??[]}_hasPlaceholderBeenCollapsed(e){let t=e;for(;t;){if(t instanceof eo){const i=this._placeholderDecorations.get(t);if(this._editor.getModel().getDecorationRange(i).isEmpty()&&t.toString().length>0)return!0}t=t.parent}return!1}get isAtFirstPlaceholder(){return this._placeholderGroupsIdx<=0||this._placeholderGroups.length===0}get isAtLastPlaceholder(){return this._placeholderGroupsIdx===this._placeholderGroups.length-1}get hasPlaceholder(){return this._snippet.placeholders.length>0}get isTrivialSnippet(){if(this._snippet.placeholders.length===0)return!0;if(this._snippet.placeholders.length===1){const[e]=this._snippet.placeholders;if(e.isFinalTabstop&&this._snippet.rightMostDescendant===e)return!0}return!1}computePossibleSelections(){const e=new Map;for(const t of this._placeholderGroups){let i;for(const n of t){if(n.isFinalTabstop)break;i||(i=[],e.set(n.index,i));const s=this._placeholderDecorations.get(n),r=this._editor.getModel().getDecorationRange(s);if(!r){e.delete(n.index);break}i.push(r)}}return e}get activeChoice(){if(!this._placeholderDecorations)return;const e=this._placeholderGroups[this._placeholderGroupsIdx][0];if(!e?.choice)return;const t=this._placeholderDecorations.get(e);if(!t)return;const i=this._editor.getModel().getDecorationRange(t);if(i)return{range:i,choice:e.choice}}get hasChoice(){let e=!1;return this._snippet.walk(t=>(e=t instanceof Zg,!e)),e}merge(e){const t=this._editor.getModel();this._nestingLevel*=10,this._editor.changeDecorations(i=>{for(const n of this._placeholderGroups[this._placeholderGroupsIdx]){const s=e.shift();console.assert(s._offset!==-1),console.assert(!s._placeholderDecorations);const r=s._snippet.placeholderInfo.last.index;for(const l of s._snippet.placeholderInfo.all)l.isFinalTabstop?l.index=n.index+(r+1)/this._nestingLevel:l.index=n.index+l.index/this._nestingLevel;this._snippet.replace(n,s._snippet.children);const a=this._placeholderDecorations.get(n);i.removeDecoration(a),this._placeholderDecorations.delete(n);for(const l of s._snippet.placeholders){const c=s._snippet.offset(l),d=s._snippet.fullLen(l),h=I.fromPositions(t.getPositionAt(s._offset+c),t.getPositionAt(s._offset+c+d)),u=i.addDecoration(h,So._decor.inactive);this._placeholderDecorations.set(l,u)}}this._placeholderGroups=MM(this._snippet.placeholders,eo.compareByIndex)})}};So._decor={active:kt.register({description:"snippet-placeholder-1",stickiness:0,className:"snippet-placeholder"}),inactive:kt.register({description:"snippet-placeholder-2",stickiness:1,className:"snippet-placeholder"}),activeFinal:kt.register({description:"snippet-placeholder-3",stickiness:1,className:"finish-snippet-placeholder"}),inactiveFinal:kt.register({description:"snippet-placeholder-4",stickiness:1,className:"finish-snippet-placeholder"})};let gw=So;const L5={overwriteBefore:0,overwriteAfter:0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0};let mw=Zo=class{static adjustWhitespace(e,t,i,n,s){const r=e.getLineContent(t.lineNumber),a=pi(r,0,t.column-1);let l;return n.walk(c=>{if(!(c instanceof wn)||c.parent instanceof Zg||s&&!s.has(c))return!0;const d=c.value.split(/\r\n|\r|\n/);if(i){const u=n.offset(c);if(u===0)d[0]=e.normalizeIndentation(d[0]);else{l=l??n.toString();const f=l.charCodeAt(u-1);(f===10||f===13)&&(d[0]=e.normalizeIndentation(a+d[0]))}for(let f=1;fv.get(jk)),g=e.invokeWithinContext(v=>new v5(v.get(Cg),u)),p=()=>a,_=u.getValueInRange(Zo.adjustSelection(u,e.getSelection(),i,0)),b=u.getValueInRange(Zo.adjustSelection(u,e.getSelection(),0,n)),C=u.getLineFirstNonWhitespaceColumn(e.getSelection().positionLineNumber),w=e.getSelections().map((v,y)=>({selection:v,idx:y})).sort((v,y)=>I.compareRangesUsingStarts(v.selection,y.selection));for(const{selection:v,idx:y}of w){let x=Zo.adjustSelection(u,v,i,0),L=Zo.adjustSelection(u,v,0,n);_!==u.getValueInRange(x)&&(x=v),b!==u.getValueInRange(L)&&(L=v);const E=v.setStartPosition(x.startLineNumber,x.startColumn).setEndPosition(L.endLineNumber,L.endColumn),N=new Mg().parse(t,!0,s),H=E.getStartPosition(),F=Zo.adjustWhitespace(u,H,r||y>0&&C!==u.getLineFirstNonWhitespaceColumn(v.positionLineNumber),N);N.resolveVariables(new b5([g,new w5(p,y,w.length,e.getOption(79)==="spread"),new C5(u,v,y,l),new uw(u,v,c),new fw,new y5(f),new S5])),d[y]=aa.replace(E,N.toString()),d[y].identifier={major:y,minor:0},d[y]._isTracked=!0,h[y]=new gw(e,N,F)}return{edits:d,snippets:h}}static createEditsAndSnippetsFromEdits(e,t,i,n,s,r,a){if(!e.hasModel()||t.length===0)return{edits:[],snippets:[]};const l=[],c=e.getModel(),d=new Mg,h=new ub,u=new b5([e.invokeWithinContext(g=>new v5(g.get(Cg),c)),new w5(()=>s,0,e.getSelections().length,e.getOption(79)==="spread"),new C5(c,e.getSelection(),0,r),new uw(c,e.getSelection(),a),new fw,new y5(e.invokeWithinContext(g=>g.get(jk))),new S5]);t=t.sort((g,p)=>I.compareRangesUsingStarts(g.range,p.range));let f=0;for(let g=0;g0){const y=t[g-1].range,x=I.fromPositions(y.getEndPosition(),p.getStartPosition()),L=new wn(c.getValueInRange(x));h.appendChild(L),f+=L.value.length}const b=d.parseFragment(_,h);Zo.adjustWhitespace(c,p.getStartPosition(),!0,h,new Set(b)),h.resolveVariables(u);const C=h.toString(),w=C.slice(f);f=C.length;const v=aa.replace(p,w);v.identifier={major:g,minor:0},v._isTracked=!0,l.push(v)}return d.ensureFinalTabstop(h,i,!0),{edits:l,snippets:[new gw(e,h,"")]}}constructor(e,t,i=L5,n){this._editor=e,this._template=t,this._options=i,this._languageConfigurationService=n,this._templateMerges=[],this._snippets=[]}dispose(){xt(this._snippets)}_logInfo(){return`template="${this._template}", merged_templates="${this._templateMerges.join(" -> ")}"`}insert(){if(!this._editor.hasModel())return;const{edits:e,snippets:t}=typeof this._template=="string"?Zo.createEditsAndSnippetsFromSelections(this._editor,this._template,this._options.overwriteBefore,this._options.overwriteAfter,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer,this._languageConfigurationService):Zo.createEditsAndSnippetsFromEdits(this._editor,this._template,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer,this._languageConfigurationService);this._snippets=t,this._editor.executeEdits("snippet",e,i=>{const n=i.filter(s=>!!s.identifier);for(let s=0;sFe.fromPositions(s.range.getEndPosition()))}),this._editor.revealRange(this._editor.getSelections()[0])}merge(e,t=L5){if(!this._editor.hasModel())return;this._templateMerges.push([this._snippets[0]._nestingLevel,this._snippets[0]._placeholderGroupsIdx,e]);const{edits:i,snippets:n}=Zo.createEditsAndSnippetsFromSelections(this._editor,e,t.overwriteBefore,t.overwriteAfter,!0,t.adjustWhitespace,t.clipboardText,t.overtypingCapturer,this._languageConfigurationService);this._editor.executeEdits("snippet",i,s=>{const r=s.filter(l=>!!l.identifier);for(let l=0;lFe.fromPositions(l.range.getEndPosition()))})}next(){const e=this._move(!0);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())}prev(){const e=this._move(!1);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())}_move(e){const t=[];for(const i of this._snippets){const n=i.move(e);t.push(...n)}return t}get isAtFirstPlaceholder(){return this._snippets[0].isAtFirstPlaceholder}get isAtLastPlaceholder(){return this._snippets[0].isAtLastPlaceholder}get hasPlaceholder(){return this._snippets[0].hasPlaceholder}get hasChoice(){return this._snippets[0].hasChoice}get activeChoice(){return this._snippets[0].activeChoice}isSelectionWithinPlaceholders(){if(!this.hasPlaceholder)return!1;const e=this._editor.getSelections();if(e.length{s.push(...n.get(r))})}e.sort(I.compareRangesUsingStarts);for(const[i,n]of t){if(n.length!==e.length){t.delete(i);continue}n.sort(I.compareRangesUsingStarts);for(let s=0;s0}};mw=Zo=Zhe([Yhe(3,Gn)],mw);var Qhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},p1=function(o,e){return function(t,i){e(t,i,o)}},ju;const x5={overwriteBefore:0,overwriteAfter:0,undoStopBefore:!0,undoStopAfter:!0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0};var Jr;let Mn=(Jr=class{static get(e){return e.getContribution(ju.ID)}constructor(e,t,i,n,s){this._editor=e,this._logService=t,this._languageFeaturesService=i,this._languageConfigurationService=s,this._snippetListener=new X,this._modelVersionId=-1,this._inSnippet=ju.InSnippetMode.bindTo(n),this._hasNextTabstop=ju.HasNextTabstop.bindTo(n),this._hasPrevTabstop=ju.HasPrevTabstop.bindTo(n)}dispose(){this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._session?.dispose(),this._snippetListener.dispose()}insert(e,t){try{this._doInsert(e,typeof t>"u"?x5:{...x5,...t})}catch(i){this.cancel(),this._logService.error(i),this._logService.error("snippet_error"),this._logService.error("insert_template=",e),this._logService.error("existing_template=",this._session?this._session._logInfo():"")}}_doInsert(e,t){if(this._editor.hasModel()){if(this._snippetListener.clear(),t.undoStopBefore&&this._editor.getModel().pushStackElement(),this._session&&typeof e!="string"&&this.cancel(),this._session?(ai(typeof e=="string"),this._session.merge(e,t)):(this._modelVersionId=this._editor.getModel().getAlternativeVersionId(),this._session=new mw(this._editor,e,t,this._languageConfigurationService),this._session.insert()),t.undoStopAfter&&this._editor.getModel().pushStackElement(),this._session?.hasChoice){const i={_debugDisplayName:"snippetChoiceCompletions",provideCompletionItems:(c,d)=>{if(!this._session||c!==this._editor.getModel()||!P.equals(this._editor.getPosition(),d))return;const{activeChoice:h}=this._session;if(!h||h.choice.options.length===0)return;const u=c.getValueInRange(h.range),f=!!h.choice.options.find(p=>p.value===u),g=[];for(let p=0;p{s?.dispose(),r=!1},l=()=>{r||(s=this._languageFeaturesService.completionProvider.register({language:n.getLanguageId(),pattern:n.uri.fsPath,scheme:n.uri.scheme,exclusive:!0},i),this._snippetListener.add(s),r=!0)};this._choiceCompletions={provider:i,enable:l,disable:a}}this._updateState(),this._snippetListener.add(this._editor.onDidChangeModelContent(i=>i.isFlush&&this.cancel())),this._snippetListener.add(this._editor.onDidChangeModel(()=>this.cancel())),this._snippetListener.add(this._editor.onDidChangeCursorSelection(()=>this._updateState()))}}_updateState(){if(!(!this._session||!this._editor.hasModel())){if(this._modelVersionId===this._editor.getModel().getAlternativeVersionId())return this.cancel();if(!this._session.hasPlaceholder)return this.cancel();if(this._session.isAtLastPlaceholder||!this._session.isSelectionWithinPlaceholders())return this._editor.getModel().pushStackElement(),this.cancel();this._inSnippet.set(!0),this._hasPrevTabstop.set(!this._session.isAtFirstPlaceholder),this._hasNextTabstop.set(!this._session.isAtLastPlaceholder),this._handleChoice()}}_handleChoice(){if(!this._session||!this._editor.hasModel()){this._currentChoice=void 0;return}const{activeChoice:e}=this._session;if(!e||!this._choiceCompletions){this._choiceCompletions?.disable(),this._currentChoice=void 0;return}this._currentChoice!==e.choice&&(this._currentChoice=e.choice,this._choiceCompletions.enable(),queueMicrotask(()=>{jhe(this._editor,this._choiceCompletions.provider)}))}finish(){for(;this._inSnippet.get();)this.next()}cancel(e=!1){this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._snippetListener.clear(),this._currentChoice=void 0,this._session?.dispose(),this._session=void 0,this._modelVersionId=-1,e&&this._editor.setSelections([this._editor.getSelection()])}prev(){this._session?.prev(),this._updateState()}next(){this._session?.next(),this._updateState()}isInSnippet(){return!!this._inSnippet.get()}},ju=Jr,Jr.ID="snippetController2",Jr.InSnippetMode=new le("inSnippetMode",!1,m("inSnippetMode","Whether the editor in current in snippet mode")),Jr.HasNextTabstop=new le("hasNextTabstop",!1,m("hasNextTabstop","Whether there is a next tab stop when in snippet mode")),Jr.HasPrevTabstop=new le("hasPrevTabstop",!1,m("hasPrevTabstop","Whether there is a previous tab stop when in snippet mode")),Jr);Mn=ju=Qhe([p1(1,gs),p1(2,Se),p1(3,De),p1(4,Gn)],Mn);Ho(Mn.ID,Mn,4);const Hy=co.bindToContribution(Mn.get);ge(new Hy({id:"jumpToNextSnippetPlaceholder",precondition:re.and(Mn.InSnippetMode,Mn.HasNextTabstop),handler:o=>o.next(),kbOpts:{weight:130,kbExpr:K.textInputFocus,primary:2}}));ge(new Hy({id:"jumpToPrevSnippetPlaceholder",precondition:re.and(Mn.InSnippetMode,Mn.HasPrevTabstop),handler:o=>o.prev(),kbOpts:{weight:130,kbExpr:K.textInputFocus,primary:1026}}));ge(new Hy({id:"leaveSnippet",precondition:Mn.InSnippetMode,handler:o=>o.cancel(!0),kbOpts:{weight:130,kbExpr:K.textInputFocus,primary:9,secondary:[1033]}}));ge(new Hy({id:"acceptSnippet",precondition:Mn.InSnippetMode,handler:o=>o.finish()}));var Xhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},CL=function(o,e){return function(t,i){e(t,i,o)}};let sN=class extends z{get isAcceptingPartially(){return this._isAcceptingPartially}constructor(e,t,i,n,s,r,a,l,c,d,h,u){super(),this.textModel=e,this.selectedSuggestItem=t,this._textModelVersionId=i,this._positions=n,this._debounceValue=s,this._suggestPreviewEnabled=r,this._suggestPreviewMode=a,this._inlineSuggestMode=l,this._enabled=c,this._instantiationService=d,this._commandService=h,this._languageConfigurationService=u,this._source=this._register(this._instantiationService.createInstance(nN,this.textModel,this._textModelVersionId,this._debounceValue)),this._isActive=Ge(this,!1),this._forceUpdateExplicitlySignal=Q_(this),this._selectedInlineCompletionId=Ge(this,void 0),this._primaryPosition=Ce(this,g=>this._positions.read(g)[0]??new P(1,1)),this._isAcceptingPartially=!1,this._preserveCurrentCompletionReasons=new Set([$a.Redo,$a.Undo,$a.AcceptWord]),this._fetchInlineCompletionsPromise=HZ({owner:this,createEmptyChangeSummary:()=>({preserveCurrentCompletion:!1,inlineCompletionTriggerKind:Cl.Automatic}),handleChange:(g,p)=>(g.didChange(this._textModelVersionId)&&this._preserveCurrentCompletionReasons.has(this._getReason(g.change))?p.preserveCurrentCompletion=!0:g.didChange(this._forceUpdateExplicitlySignal)&&(p.inlineCompletionTriggerKind=Cl.Explicit),!0)},(g,p)=>{if(this._forceUpdateExplicitlySignal.read(g),!(this._enabled.read(g)&&this.selectedSuggestItem.read(g)||this._isActive.read(g))){this._source.cancelUpdate();return}this._textModelVersionId.read(g);const b=this._source.suggestWidgetInlineCompletions.get(),C=this.selectedSuggestItem.read(g);if(b&&!C){const L=this._source.inlineCompletions.get();Xt(E=>{(!L||b.request.versionId>L.request.versionId)&&this._source.inlineCompletions.set(b.clone(),E),this._source.clearSuggestWidgetInlineCompletions(E)})}const w=this._primaryPosition.read(g),v={triggerKind:p.inlineCompletionTriggerKind,selectedSuggestionInfo:C?.toSelectedSuggestionInfo()},y=this.selectedInlineCompletion.get(),x=p.preserveCurrentCompletion||y?.forwardStable?y:void 0;return this._source.fetch(w,v,x)}),this._filteredInlineCompletionItems=dr({owner:this,equalsFn:Xk()},g=>{const p=this._source.inlineCompletions.read(g);if(!p)return[];const _=this._primaryPosition.read(g);return p.inlineCompletions.filter(C=>C.isVisible(this.textModel,_,g))}),this.selectedInlineCompletionIndex=Ce(this,g=>{const p=this._selectedInlineCompletionId.read(g),_=this._filteredInlineCompletionItems.read(g),b=this._selectedInlineCompletionId===void 0?-1:_.findIndex(C=>C.semanticId===p);return b===-1?(this._selectedInlineCompletionId.set(void 0,void 0),0):b}),this.selectedInlineCompletion=Ce(this,g=>{const p=this._filteredInlineCompletionItems.read(g),_=this.selectedInlineCompletionIndex.read(g);return p[_]}),this.activeCommands=dr({owner:this,equalsFn:Xk()},g=>this.selectedInlineCompletion.read(g)?.inlineCompletion.source.inlineCompletions.commands??[]),this.lastTriggerKind=this._source.inlineCompletions.map(this,g=>g?.request.context.triggerKind),this.inlineCompletionsCount=Ce(this,g=>{if(this.lastTriggerKind.read(g)===Cl.Explicit)return this._filteredInlineCompletionItems.read(g).length}),this.state=dr({owner:this,equalsFn:(g,p)=>!g||!p?g===p:s5(g.ghostTexts,p.ghostTexts)&&g.inlineCompletion===p.inlineCompletion&&g.suggestItem===p.suggestItem},g=>{const p=this.textModel,_=this.selectedSuggestItem.read(g);if(_){const b=nh(_.toSingleTextEdit(),p),C=this._computeAugmentation(b,g);if(!this._suggestPreviewEnabled.read(g)&&!C)return;const v=C?.edit??b,y=C?C.edit.text.length-b.text.length:0,x=this._suggestPreviewMode.read(g),L=this._positions.read(g),E=[v,...vL(this.textModel,L,v)],N=E.map((F,W)=>d5(F,p,x,L[W],y)).filter(_l),H=N[0]??new cw(v.range.endLineNumber,[]);return{edits:E,primaryGhostText:H,ghostTexts:N,inlineCompletion:C?.completion,suggestItem:_}}else{if(!this._isActive.read(g))return;const b=this.selectedInlineCompletion.read(g);if(!b)return;const C=b.toSingleTextEdit(g),w=this._inlineSuggestMode.read(g),v=this._positions.read(g),y=[C,...vL(this.textModel,v,C)],x=y.map((L,E)=>d5(L,p,w,v[E],0)).filter(_l);return x[0]?{edits:y,primaryGhostText:x[0],ghostTexts:x,inlineCompletion:b,suggestItem:void 0}:void 0}}),this.ghostTexts=dr({owner:this,equalsFn:s5},g=>{const p=this.state.read(g);if(p)return p.ghostTexts}),this.primaryGhostText=dr({owner:this,equalsFn:VB},g=>{const p=this.state.read(g);if(p)return p?.primaryGhostText}),this._register(X_(this._fetchInlineCompletionsPromise));let f;this._register(We(g=>{const _=this.state.read(g)?.inlineCompletion;if(_?.semanticId!==f?.semanticId&&(f=_,_)){const b=_.inlineCompletion,C=b.source;C.provider.handleItemDidShow?.(C.inlineCompletions,b.sourceInlineCompletion,b.insertText)}}))}_getReason(e){return e?.isUndoing?$a.Undo:e?.isRedoing?$a.Redo:this.isAcceptingPartially?$a.AcceptWord:$a.Other}async trigger(e){this._isActive.set(!0,e),await this._fetchInlineCompletionsPromise.get()}async triggerExplicitly(e){c_(e,t=>{this._isActive.set(!0,t),this._forceUpdateExplicitlySignal.trigger(t)}),await this._fetchInlineCompletionsPromise.get()}stop(e){c_(e,t=>{this._isActive.set(!1,t),this._source.clear(t)})}_computeAugmentation(e,t){const i=this.textModel,n=this._source.suggestWidgetInlineCompletions.read(t),s=n?n.inlineCompletions:[this.selectedInlineCompletion.read(t)].filter(_l);return KU(s,a=>{let l=a.toSingleTextEdit(t);return l=nh(l,i,I.fromPositions(l.range.getStartPosition(),e.range.getEndPosition())),UB(l,e)?{completion:a,edit:l}:void 0})}async _deltaSelectedInlineCompletionIndex(e){await this.triggerExplicitly();const t=this._filteredInlineCompletionItems.get()||[];if(t.length>0){const i=(this.selectedInlineCompletionIndex.get()+e+t.length)%t.length;this._selectedInlineCompletionId.set(t[i].semanticId,void 0)}else this._selectedInlineCompletionId.set(void 0,void 0)}async next(){await this._deltaSelectedInlineCompletionIndex(1)}async previous(){await this._deltaSelectedInlineCompletionIndex(-1)}async accept(e){if(e.getModel()!==this.textModel)throw new nt;const t=this.state.get();if(!t||t.primaryGhostText.isEmpty()||!t.inlineCompletion)return;const i=t.inlineCompletion.toInlineCompletion(void 0);if(i.command&&i.source.addRef(),e.pushUndoStop(),i.snippetInfo)e.executeEdits("inlineSuggestion.accept",[aa.replace(i.range,""),...i.additionalTextEdits]),e.setPosition(i.snippetInfo.range.getStartPosition(),"inlineCompletionAccept"),Mn.get(e)?.insert(i.snippetInfo.snippet,{undoStopBefore:!1});else{const n=t.edits,s=k5(n).map(r=>Fe.fromPositions(r));e.executeEdits("inlineSuggestion.accept",[...n.map(r=>aa.replace(r.range,r.text)),...i.additionalTextEdits]),e.setSelections(s,"inlineCompletionAccept")}this.stop(),i.command&&(await this._commandService.executeCommand(i.command.id,...i.command.arguments||[]).then(void 0,$n),i.source.removeRef())}async acceptNextWord(e){await this._acceptNext(e,(t,i)=>{const n=this.textModel.getLanguageIdAtPosition(t.lineNumber,t.column),s=this._languageConfigurationService.getLanguageConfiguration(n),r=new RegExp(s.wordDefinition.source,s.wordDefinition.flags.replace("g","")),a=i.match(r);let l=0;a&&a.index!==void 0?a.index===0?l=a[0].length:l=a.index:l=i.length;const d=/\s+/g.exec(i);return d&&d.index!==void 0&&d.index+d[0].length{const n=i.match(/\n/);return n&&n.index!==void 0?n.index+1:i.length},1)}async _acceptNext(e,t,i){if(e.getModel()!==this.textModel)throw new nt;const n=this.state.get();if(!n||n.primaryGhostText.isEmpty()||!n.inlineCompletion)return;const s=n.primaryGhostText,r=n.inlineCompletion.toInlineCompletion(void 0);if(r.snippetInfo||r.filterText!==r.insertText){await this.accept(e);return}const a=s.parts[0],l=new P(s.lineNumber,a.column),c=a.text,d=t(l,c);if(d===c.length&&s.parts.length===1){this.accept(e);return}const h=c.substring(0,d),u=this._positions.get(),f=u[0];r.source.addRef();try{this._isAcceptingPartially=!0;try{e.pushUndoStop();const g=I.fromPositions(f,l),p=e.getModel().getValueInRange(g)+h,_=new fa(g,p),b=[_,...vL(this.textModel,u,_)],C=k5(b).map(w=>Fe.fromPositions(w));e.executeEdits("inlineSuggestion.accept",b.map(w=>aa.replace(w.range,w.text))),e.setSelections(C,"inlineCompletionPartialAccept"),e.revealPositionInCenterIfOutsideViewport(e.getPosition(),1)}finally{this._isAcceptingPartially=!1}if(r.source.provider.handlePartialAccept){const g=I.fromPositions(r.range.getStartPosition(),Po.ofText(h).addToPosition(l)),p=e.getModel().getValueInRange(g,1);r.source.provider.handlePartialAccept(r.source.inlineCompletions,r.sourceInlineCompletion,p.length,{kind:i})}}finally{r.source.removeRef()}}handleSuggestAccepted(e){const t=nh(e.toSingleTextEdit(),this.textModel),i=this._computeAugmentation(t,void 0);if(!i)return;const n=i.completion.inlineCompletion;n.source.provider.handlePartialAccept?.(n.source.inlineCompletions,n.sourceInlineCompletion,t.text.length,{kind:2})}};sN=Xhe([CL(9,ke),CL(10,hi),CL(11,Gn)],sN);var $a;(function(o){o[o.Undo=0]="Undo",o[o.Redo=1]="Redo",o[o.AcceptWord=2]="AcceptWord",o[o.Other=3]="Other"})($a||($a={}));function vL(o,e,t){if(e.length===1)return[];const i=e[0],n=e.slice(1),s=t.range.getStartPosition(),r=t.range.getEndPosition(),a=o.getValueInRange(I.fromPositions(i,r)),l=o5(i,s);if(l.lineNumber<1)return Ze(new nt(`positionWithinTextEdit line number should be bigger than 0. + Invalid subtraction between ${i.toString()} and ${s.toString()}`)),[];const c=Jhe(t.text,l);return n.map(d=>{const h=Che(o5(d,s),r),u=o.getValueInRange(I.fromPositions(d,h)),f=Th(a,u),g=I.fromPositions(d,d.delta(0,f));return new fa(g,c)})}function Jhe(o,e){let t="";const i=dH(o);for(let n=e.lineNumber-1;ns.range,I.compareRangesUsingStarts)),i=new gT(e.apply(o)).getNewRanges();return e.inverse().apply(i).map(s=>s.getEndPosition())}var eue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},D5=function(o,e){return function(t,i){e(t,i,o)}},zm;class LM{constructor(e){this.name=e}select(e,t,i){if(i.length===0)return 0;const n=i[0].score[0];for(let s=0;sl&&h.type===i[c].completion.kind&&h.insertText===i[c].completion.insertText&&(l=h.touch,a=c),i[c].completion.preselect&&r===-1)return r=c}return a!==-1?a:r!==-1?r:0}toJSON(){return this._cache.toJSON()}fromJSON(e){this._cache.clear();const t=0;for(const[i,n]of e)n.touch=t,n.type=typeof n.type=="number"?n.type:Up.fromString(n.type),this._cache.set(i,n);this._seq=this._cache.size}}class iue extends LM{constructor(){super("recentlyUsedByPrefix"),this._trie=Bf.forStrings(),this._seq=0}memorize(e,t,i){const{word:n}=e.getWordUntilPosition(t),s=`${e.getLanguageId()}/${n}`;this._trie.set(s,{type:i.completion.kind,insertText:i.completion.insertText,touch:this._seq++})}select(e,t,i){const{word:n}=e.getWordUntilPosition(t);if(!n)return super.select(e,t,i);const s=`${e.getLanguageId()}/${n}`;let r=this._trie.get(s);if(r||(r=this._trie.findSubstr(s)),r)for(let a=0;ae.push([i,t])),e.sort((t,i)=>-(t[1].touch-i[1].touch)).forEach((t,i)=>t[1].touch=i),e.slice(0,200)}fromJSON(e){if(this._trie.clear(),e.length>0){this._seq=e[0][1].touch+1;for(const[t,i]of e)i.type=typeof i.type=="number"?i.type:Up.fromString(i.type),this._trie.set(t,i)}}}var Ec;let oN=(Ec=class{constructor(e,t){this._storageService=e,this._configService=t,this._disposables=new X,this._persistSoon=new ci(()=>this._saveState(),500),this._disposables.add(e.onWillSaveState(i=>{i.reason===aD.SHUTDOWN&&this._saveState()}))}dispose(){this._disposables.dispose(),this._persistSoon.dispose()}memorize(e,t,i){this._withStrategy(e,t).memorize(e,t,i),this._persistSoon.schedule()}select(e,t,i){return this._withStrategy(e,t).select(e,t,i)}_withStrategy(e,t){const i=this._configService.getValue("editor.suggestSelection",{overrideIdentifier:e.getLanguageIdAtPosition(t.lineNumber,t.column),resource:e.uri});if(this._strategy?.name!==i){this._saveState();const n=zm._strategyCtors.get(i)||I5;this._strategy=new n;try{const r=this._configService.getValue("editor.suggest.shareSuggestSelections")?0:1,a=this._storageService.get(`${zm._storagePrefix}/${i}`,r);a&&this._strategy.fromJSON(JSON.parse(a))}catch{}}return this._strategy}_saveState(){if(this._strategy){const t=this._configService.getValue("editor.suggest.shareSuggestSelections")?0:1,i=JSON.stringify(this._strategy);this._storageService.store(`${zm._storagePrefix}/${this._strategy.name}`,i,t,1)}}},zm=Ec,Ec._strategyCtors=new Map([["recentlyUsedByPrefix",iue],["recentlyUsed",tue],["first",I5]]),Ec._storagePrefix="suggest/memories",Ec);oN=zm=eue([D5(0,du),D5(1,lt)],oN);const YB=He("ISuggestMemories");Qe(YB,oN,1);var nue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},sue=function(o,e){return function(t,i){e(t,i,o)}},rN,xh;let pw=(xh=class{constructor(e,t){this._editor=e,this._enabled=!1,this._ckAtEnd=rN.AtEnd.bindTo(t),this._configListener=this._editor.onDidChangeConfiguration(i=>i.hasChanged(124)&&this._update()),this._update()}dispose(){this._configListener.dispose(),this._selectionListener?.dispose(),this._ckAtEnd.reset()}_update(){const e=this._editor.getOption(124)==="on";if(this._enabled!==e)if(this._enabled=e,this._enabled){const t=()=>{if(!this._editor.hasModel()){this._ckAtEnd.set(!1);return}const i=this._editor.getModel(),n=this._editor.getSelection(),s=i.getWordAtPosition(n.getStartPosition());if(!s){this._ckAtEnd.set(!1);return}this._ckAtEnd.set(s.endColumn===n.getStartPosition().column)};this._selectionListener=this._editor.onDidChangeCursorSelection(t),t()}else this._selectionListener&&(this._ckAtEnd.reset(),this._selectionListener.dispose(),this._selectionListener=void 0)}},rN=xh,xh.AtEnd=new le("atEndOfWord",!1),xh);pw=rN=nue([sue(1,De)],pw);var oue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},rue=function(o,e){return function(t,i){e(t,i,o)}},Um,kh;let Rg=(kh=class{constructor(e,t){this._editor=e,this._index=0,this._ckOtherSuggestions=Um.OtherSuggestions.bindTo(t)}dispose(){this.reset()}reset(){this._ckOtherSuggestions.reset(),this._listener?.dispose(),this._model=void 0,this._acceptNext=void 0,this._ignore=!1}set({model:e,index:t},i){if(e.items.length===0){this.reset();return}if(Um._moveIndex(!0,e,t)===t){this.reset();return}this._acceptNext=i,this._model=e,this._index=t,this._listener=this._editor.onDidChangeCursorPosition(()=>{this._ignore||this.reset()}),this._ckOtherSuggestions.set(!0)}static _moveIndex(e,t,i){let n=i;for(let s=t.items.length;s>0&&(n=(n+t.items.length+(e?1:-1))%t.items.length,!(n===i||!t.items[n].completion.additionalTextEdits));s--);return n}next(){this._move(!0)}prev(){this._move(!1)}_move(e){if(this._model)try{this._ignore=!0,this._index=Um._moveIndex(e,this._model,this._index),this._acceptNext({index:this._index,item:this._model.items[this._index],model:this._model})}finally{this._ignore=!1}}},Um=kh,kh.OtherSuggestions=new le("hasOtherSuggestions",!1),kh);Rg=Um=oue([rue(1,De)],Rg);class aue{constructor(e,t,i,n){this._disposables=new X,this._disposables.add(i.onDidSuggest(s=>{s.completionModel.items.length===0&&this.reset()})),this._disposables.add(i.onDidCancel(s=>{this.reset()})),this._disposables.add(t.onDidShow(()=>this._onItem(t.getFocusedItem()))),this._disposables.add(t.onDidFocus(this._onItem,this)),this._disposables.add(t.onDidHide(this.reset,this)),this._disposables.add(e.onWillType(s=>{if(this._active&&!t.isFrozen()&&i.state!==0){const r=s.charCodeAt(s.length-1);this._active.acceptCharacters.has(r)&&e.getOption(0)&&n(this._active.item)}}))}_onItem(e){if(!e||!Ps(e.item.completion.commitCharacters)){this.reset();return}if(this._active&&this._active.item.item===e.item)return;const t=new bU;for(const i of e.item.completion.commitCharacters)i.length>0&&t.add(i.charCodeAt(0));this._active={acceptCharacters:t,item:e}}reset(){this._active=void 0}dispose(){this._disposables.dispose()}}const Ys=class Ys{async provideSelectionRanges(e,t){const i=[];for(const n of t){const s=[];i.push(s);const r=new Map;await new Promise(a=>Ys._bracketsRightYield(a,0,e,n,r)),await new Promise(a=>Ys._bracketsLeftYield(a,0,e,n,r,s))}return i}static _bracketsRightYield(e,t,i,n,s){const r=new Map,a=Date.now();for(;;){if(t>=Ys._maxRounds){e();break}if(!n){e();break}const l=i.bracketPairs.findNextBracket(n);if(!l){e();break}if(Date.now()-a>Ys._maxDuration){setTimeout(()=>Ys._bracketsRightYield(e,t+1,i,n,s));break}if(l.bracketInfo.isOpeningBracket){const d=l.bracketInfo.bracketText,h=r.has(d)?r.get(d):0;r.set(d,h+1)}else{const d=l.bracketInfo.getOpeningBrackets()[0].bracketText;let h=r.has(d)?r.get(d):0;if(h-=1,r.set(d,Math.max(0,h)),h<0){let u=s.get(d);u||(u=new yn,s.set(d,u)),u.push(l.range)}}n=l.range.getEndPosition()}}static _bracketsLeftYield(e,t,i,n,s,r){const a=new Map,l=Date.now();for(;;){if(t>=Ys._maxRounds&&s.size===0){e();break}if(!n){e();break}const c=i.bracketPairs.findPrevBracket(n);if(!c){e();break}if(Date.now()-l>Ys._maxDuration){setTimeout(()=>Ys._bracketsLeftYield(e,t+1,i,n,s,r));break}if(c.bracketInfo.isOpeningBracket){const h=c.bracketInfo.bracketText;let u=a.has(h)?a.get(h):0;if(u-=1,a.set(h,Math.max(0,u)),u<0){const f=s.get(h);if(f){const g=f.shift();f.size===0&&s.delete(h);const p=I.fromPositions(c.range.getEndPosition(),g.getStartPosition()),_=I.fromPositions(c.range.getStartPosition(),g.getEndPosition());r.push({range:p}),r.push({range:_}),Ys._addBracketLeading(i,_,r)}}}else{const h=c.bracketInfo.getOpeningBrackets()[0].bracketText,u=a.has(h)?a.get(h):0;a.set(h,u+1)}n=c.range.getStartPosition()}}static _addBracketLeading(e,t,i){if(t.startLineNumber===t.endLineNumber)return;const n=t.startLineNumber,s=e.getLineFirstNonWhitespaceColumn(n);s!==0&&s!==t.startColumn&&(i.push({range:I.fromPositions(new P(n,s),t.getEndPosition())}),i.push({range:I.fromPositions(new P(n,1),t.getEndPosition())}));const r=n-1;if(r>0){const a=e.getLineFirstNonWhitespaceColumn(r);a===t.startColumn&&a!==e.getLineLastNonWhitespaceColumn(r)&&(i.push({range:I.fromPositions(new P(r,a),t.getEndPosition())}),i.push({range:I.fromPositions(new P(r,1),t.getEndPosition())}))}}};Ys._maxDuration=30,Ys._maxRounds=2;let aN=Ys;const $r=class $r{static async create(e,t){if(!t.getOption(119).localityBonus||!t.hasModel())return $r.None;const i=t.getModel(),n=t.getPosition();if(!e.canComputeWordRanges(i.uri))return $r.None;const[s]=await new aN().provideSelectionRanges(i,[n]);if(s.length===0)return $r.None;const r=await e.computeWordRanges(i.uri,s[0].range);if(!r)return $r.None;const a=i.getWordUntilPosition(n);return delete r[a.word],new class extends $r{distance(l,c){if(!n.equals(t.getPosition()))return 0;if(c.kind===17)return 2<<20;const d=typeof c.label=="string"?c.label:c.label.label,h=r[d];if(N5(h))return 2<<20;const u=SN(h,I.fromPositions(l),I.compareRangesUsingStarts),f=u>=0?h[u]:h[Math.max(0,~u-1)];let g=s.length;for(const p of s){if(!I.containsRange(p.range,f))break;g-=1}return g}}}};$r.None=new class extends $r{distance(){return 0}};let lN=$r;class Md{constructor(e,t,i,n,s,r,a=r_.default,l=void 0){this.clipboardText=l,this._snippetCompareFn=Md._compareCompletionItems,this._items=e,this._column=t,this._wordDistance=n,this._options=s,this._refilterKind=1,this._lineContext=i,this._fuzzyScoreOptions=a,r==="top"?this._snippetCompareFn=Md._compareCompletionItemsSnippetsUp:r==="bottom"&&(this._snippetCompareFn=Md._compareCompletionItemsSnippetsDown)}get lineContext(){return this._lineContext}set lineContext(e){(this._lineContext.leadingLineContent!==e.leadingLineContent||this._lineContext.characterCountDelta!==e.characterCountDelta)&&(this._refilterKind=this._lineContext.characterCountDelta0&&i[0].container.incomplete&&e.add(t);return e}get stats(){return this._ensureCachedState(),this._stats}_ensureCachedState(){this._refilterKind!==0&&this._createCachedState()}_createCachedState(){this._itemsByProvider=new Map;const e=[],{leadingLineContent:t,characterCountDelta:i}=this._lineContext;let n="",s="";const r=this._refilterKind===1?this._items:this._filteredItems,a=[],l=!this._options.filterGraceful||r.length>2e3?_g:Bq;for(let c=0;c=f)d.score=oa.Default;else if(typeof d.completion.filterText=="string"){const p=l(n,s,g,d.completion.filterText,d.filterTextLow,0,this._fuzzyScoreOptions);if(!p)continue;Ax(d.completion.filterText,d.textLabel)===0?d.score=p:(d.score=Aq(n,s,g,d.textLabel,d.labelLow,0),d.score[0]=p[0])}else{const p=l(n,s,g,d.textLabel,d.labelLow,0,this._fuzzyScoreOptions);if(!p)continue;d.score=p}}d.idx=c,d.distance=this._wordDistance.distance(d.position,d.completion),a.push(d),e.push(d.textLabel.length)}this._filteredItems=a.sort(this._snippetCompareFn),this._refilterKind=0,this._stats={pLabelLen:e.length?LL(e.length-.85,e,(c,d)=>c-d):0}}static _compareCompletionItems(e,t){return e.score[0]>t.score[0]?-1:e.score[0]t.distance?1:e.idxt.idx?1:0}static _compareCompletionItemsSnippetsDown(e,t){if(e.completion.kind!==t.completion.kind){if(e.completion.kind===27)return 1;if(t.completion.kind===27)return-1}return Md._compareCompletionItems(e,t)}static _compareCompletionItemsSnippetsUp(e,t){if(e.completion.kind!==t.completion.kind){if(e.completion.kind===27)return-1;if(t.completion.kind===27)return 1}return Md._compareCompletionItems(e,t)}}var lue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ul=function(o,e){return function(t,i){e(t,i,o)}},cN;class cd{static shouldAutoTrigger(e){if(!e.hasModel())return!1;const t=e.getModel(),i=e.getPosition();t.tokenization.tokenizeIfCheap(i.lineNumber);const n=t.getWordAtPosition(i);return!(!n||n.endColumn!==i.column&&n.startColumn+1!==i.column||!isNaN(Number(n.word)))}constructor(e,t,i){this.leadingLineContent=e.getLineContent(t.lineNumber).substr(0,t.column-1),this.leadingWord=e.getWordUntilPosition(t),this.lineNumber=t.lineNumber,this.column=t.column,this.triggerOptions=i}}function cue(o,e,t){if(!e.getContextKeyValue(hs.inlineSuggestionVisible.key))return!0;const i=e.getContextKeyValue(hs.suppressSuggestions.key);return i!==void 0?!i:!o.getOption(62).suppressSuggestions}function due(o,e,t){if(!e.getContextKeyValue("inlineSuggestionVisible"))return!0;const i=e.getContextKeyValue(hs.suppressSuggestions.key);return i!==void 0?!i:!o.getOption(62).suppressSuggestions}let dN=cN=class{constructor(e,t,i,n,s,r,a,l,c){this._editor=e,this._editorWorkerService=t,this._clipboardService=i,this._telemetryService=n,this._logService=s,this._contextKeyService=r,this._configurationService=a,this._languageFeaturesService=l,this._envService=c,this._toDispose=new X,this._triggerCharacterListener=new X,this._triggerQuickSuggest=new wr,this._triggerState=void 0,this._completionDisposables=new X,this._onDidCancel=new A,this._onDidTrigger=new A,this._onDidSuggest=new A,this.onDidCancel=this._onDidCancel.event,this.onDidTrigger=this._onDidTrigger.event,this.onDidSuggest=this._onDidSuggest.event,this._telemetryGate=0,this._currentSelection=this._editor.getSelection()||new Fe(1,1,1,1),this._toDispose.add(this._editor.onDidChangeModel(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeModelLanguage(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeConfiguration(()=>{this._updateTriggerCharacters()})),this._toDispose.add(this._languageFeaturesService.completionProvider.onDidChange(()=>{this._updateTriggerCharacters(),this._updateActiveSuggestSession()}));let d=!1;this._toDispose.add(this._editor.onDidCompositionStart(()=>{d=!0})),this._toDispose.add(this._editor.onDidCompositionEnd(()=>{d=!1,this._onCompositionEnd()})),this._toDispose.add(this._editor.onDidChangeCursorSelection(h=>{d||this._onCursorChange(h)})),this._toDispose.add(this._editor.onDidChangeModelContent(()=>{!d&&this._triggerState!==void 0&&this._refilterCompletionItems()})),this._updateTriggerCharacters()}dispose(){xt(this._triggerCharacterListener),xt([this._onDidCancel,this._onDidSuggest,this._onDidTrigger,this._triggerQuickSuggest]),this._toDispose.dispose(),this._completionDisposables.dispose(),this.cancel()}_updateTriggerCharacters(){if(this._triggerCharacterListener.clear(),this._editor.getOption(92)||!this._editor.hasModel()||!this._editor.getOption(122))return;const e=new Map;for(const i of this._languageFeaturesService.completionProvider.all(this._editor.getModel()))for(const n of i.triggerCharacters||[]){let s=e.get(n);s||(s=new Set,e.set(n,s)),s.add(i)}const t=i=>{if(!due(this._editor,this._contextKeyService,this._configurationService)||cd.shouldAutoTrigger(this._editor))return;if(!i){const r=this._editor.getPosition();i=this._editor.getModel().getLineContent(r.lineNumber).substr(0,r.column-1)}let n="";Mh(i.charCodeAt(i.length-1))?wi(i.charCodeAt(i.length-2))&&(n=i.substr(i.length-2)):n=i.charAt(i.length-1);const s=e.get(n);if(s){const r=new Map;if(this._completionModel)for(const[a,l]of this._completionModel.getItemsByProvider())s.has(a)||r.set(a,l);this.trigger({auto:!0,triggerKind:1,triggerCharacter:n,retrigger:!!this._completionModel,clipboardText:this._completionModel?.clipboardText,completionOptions:{providerFilter:s,providerItemsToReuse:r}})}};this._triggerCharacterListener.add(this._editor.onDidType(t)),this._triggerCharacterListener.add(this._editor.onDidCompositionEnd(()=>t()))}get state(){return this._triggerState?this._triggerState.auto?2:1:0}cancel(e=!1){this._triggerState!==void 0&&(this._triggerQuickSuggest.cancel(),this._requestToken?.cancel(),this._requestToken=void 0,this._triggerState=void 0,this._completionModel=void 0,this._context=void 0,this._onDidCancel.fire({retrigger:e}))}clear(){this._completionDisposables.clear()}_updateActiveSuggestSession(){this._triggerState!==void 0&&(!this._editor.hasModel()||!this._languageFeaturesService.completionProvider.has(this._editor.getModel())?this.cancel():this.trigger({auto:this._triggerState.auto,retrigger:!0}))}_onCursorChange(e){if(!this._editor.hasModel())return;const t=this._currentSelection;if(this._currentSelection=this._editor.getSelection(),!e.selection.isEmpty()||e.reason!==0&&e.reason!==3||e.source!=="keyboard"&&e.source!=="deleteLeft"){this.cancel();return}this._triggerState===void 0&&e.reason===0?(t.containsRange(this._currentSelection)||t.getEndPosition().isBeforeOrEqual(this._currentSelection.getPosition()))&&this._doTriggerQuickSuggest():this._triggerState!==void 0&&e.reason===3&&this._refilterCompletionItems()}_onCompositionEnd(){this._triggerState===void 0?this._doTriggerQuickSuggest():this._refilterCompletionItems()}_doTriggerQuickSuggest(){m1.isAllOff(this._editor.getOption(90))||this._editor.getOption(119).snippetsPreventQuickSuggestions&&Mn.get(this._editor)?.isInSnippet()||(this.cancel(),this._triggerQuickSuggest.cancelAndSet(()=>{if(this._triggerState!==void 0||!cd.shouldAutoTrigger(this._editor)||!this._editor.hasModel()||!this._editor.hasWidgetFocus())return;const e=this._editor.getModel(),t=this._editor.getPosition(),i=this._editor.getOption(90);if(!m1.isAllOff(i)){if(!m1.isAllOn(i)){e.tokenization.tokenizeIfCheap(t.lineNumber);const n=e.tokenization.getLineTokens(t.lineNumber),s=n.getStandardTokenType(n.findTokenIndexAtOffset(Math.max(t.column-1-1,0)));if(m1.valueFor(i,s)!=="on")return}cue(this._editor,this._contextKeyService,this._configurationService)&&this._languageFeaturesService.completionProvider.has(e)&&this.trigger({auto:!0})}},this._editor.getOption(91)))}_refilterCompletionItems(){ai(this._editor.hasModel()),ai(this._triggerState!==void 0);const e=this._editor.getModel(),t=this._editor.getPosition(),i=new cd(e,t,{...this._triggerState,refilter:!0});this._onNewContext(i)}trigger(e){if(!this._editor.hasModel())return;const t=this._editor.getModel(),i=new cd(t,this._editor.getPosition(),e);this.cancel(e.retrigger),this._triggerState=e,this._onDidTrigger.fire({auto:e.auto,shy:e.shy??!1,position:this._editor.getPosition()}),this._context=i;let n={triggerKind:e.triggerKind??0};e.triggerCharacter&&(n={triggerKind:1,triggerCharacter:e.triggerCharacter}),this._requestToken=new In;const s=this._editor.getOption(113);let r=1;switch(s){case"top":r=0;break;case"bottom":r=2;break}const{itemKind:a,showDeprecated:l}=cN.createSuggestFilter(this._editor),c=new hw(r,e.completionOptions?.kindFilter??a,e.completionOptions?.providerFilter,e.completionOptions?.providerItemsToReuse,l),d=lN.create(this._editorWorkerService,this._editor),h=ZB(this._languageFeaturesService.completionProvider,t,this._editor.getPosition(),c,n,this._requestToken.token);Promise.all([h,d]).then(async([u,f])=>{if(this._requestToken?.dispose(),!this._editor.hasModel())return;let g=e?.clipboardText;if(!g&&u.needsClipboard&&(g=await this._clipboardService.readText()),this._triggerState===void 0)return;const p=this._editor.getModel(),_=new cd(p,this._editor.getPosition(),e),b={...r_.default,firstMatchCanBeWeak:!this._editor.getOption(119).matchOnWordStartOnly};if(this._completionModel=new Md(u.items,this._context.column,{leadingLineContent:_.leadingLineContent,characterCountDelta:_.column-this._context.column},f,this._editor.getOption(119),this._editor.getOption(113),b,g),this._completionDisposables.add(u.disposable),this._onNewContext(_),this._reportDurationsTelemetry(u.durations),!this._envService.isBuilt||this._envService.isExtensionDevelopment)for(const C of u.items)C.isInvalid&&this._logService.warn(`[suggest] did IGNORE invalid completion item from ${C.provider._debugDisplayName}`,C.completion)}).catch(Ze)}_reportDurationsTelemetry(e){this._telemetryGate++%230===0&&setTimeout(()=>{this._telemetryService.publicLog2("suggest.durations.json",{data:JSON.stringify(e)}),this._logService.debug("suggest.durations.json",e)})}static createSuggestFilter(e){const t=new Set;e.getOption(113)==="none"&&t.add(27);const n=e.getOption(119);return n.showMethods||t.add(0),n.showFunctions||t.add(1),n.showConstructors||t.add(2),n.showFields||t.add(3),n.showVariables||t.add(4),n.showClasses||t.add(5),n.showStructs||t.add(6),n.showInterfaces||t.add(7),n.showModules||t.add(8),n.showProperties||t.add(9),n.showEvents||t.add(10),n.showOperators||t.add(11),n.showUnits||t.add(12),n.showValues||t.add(13),n.showConstants||t.add(14),n.showEnums||t.add(15),n.showEnumMembers||t.add(16),n.showKeywords||t.add(17),n.showWords||t.add(18),n.showColors||t.add(19),n.showFiles||t.add(20),n.showReferences||t.add(21),n.showColors||t.add(22),n.showFolders||t.add(23),n.showTypeParameters||t.add(24),n.showSnippets||t.add(27),n.showUsers||t.add(25),n.showIssues||t.add(26),{itemKind:t,showDeprecated:n.showDeprecated}}_onNewContext(e){if(this._context){if(e.lineNumber!==this._context.lineNumber){this.cancel();return}if(pi(e.leadingLineContent)!==pi(this._context.leadingLineContent)){this.cancel();return}if(e.columnthis._context.leadingWord.startColumn){if(cd.shouldAutoTrigger(this._editor)&&this._context){const i=this._completionModel.getItemsByProvider();this.trigger({auto:this._context.triggerOptions.auto,retrigger:!0,clipboardText:this._completionModel.clipboardText,completionOptions:{providerItemsToReuse:i}})}return}if(e.column>this._context.column&&this._completionModel.getIncompleteProvider().size>0&&e.leadingWord.word.length!==0){const t=new Map,i=new Set;for(const[n,s]of this._completionModel.getItemsByProvider())s.length>0&&s[0].container.incomplete?i.add(n):t.set(n,s);this.trigger({auto:this._context.triggerOptions.auto,triggerKind:2,retrigger:!0,clipboardText:this._completionModel.clipboardText,completionOptions:{providerFilter:i,providerItemsToReuse:t}})}else{const t=this._completionModel.lineContext;let i=!1;if(this._completionModel.lineContext={leadingLineContent:e.leadingLineContent,characterCountDelta:e.column-this._context.column},this._completionModel.items.length===0){const n=cd.shouldAutoTrigger(this._editor);if(!this._context){this.cancel();return}if(n&&this._context.leadingWord.endColumn0,i&&e.leadingWord.word.length===0){this.cancel();return}}this._onDidSuggest.fire({completionModel:this._completionModel,triggerOptions:e.triggerOptions,isFrozen:i})}}}}};dN=cN=lue([Ul(1,Zc),Ul(2,wy),Ul(3,$s),Ul(4,gs),Ul(5,De),Ul(6,lt),Ul(7,Se),Ul(8,vT)],dN);const p0=class p0{constructor(e,t){this._disposables=new X,this._lastOvertyped=[],this._locked=!1,this._disposables.add(e.onWillType(()=>{if(this._locked||!e.hasModel())return;const i=e.getSelections(),n=i.length;let s=!1;for(let a=0;ap0._maxSelectionLength)return;this._lastOvertyped[a]={value:r.getValueInRange(l),multiline:l.startLineNumber!==l.endLineNumber}}})),this._disposables.add(t.onDidTrigger(i=>{this._locked=!0})),this._disposables.add(t.onDidCancel(i=>{this._locked=!1}))}getLastOvertypedInfo(e){if(e>=0&&e=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},wL=function(o,e){return function(t,i){e(t,i,o)}};let uN=class{constructor(e,t,i,n,s){this._menuId=t,this._menuService=n,this._contextKeyService=s,this._menuDisposables=new X,this.element=Z(e,ce(".suggest-status-bar"));const r=(a=>a instanceof so?i.createInstance(JT,a,{useComma:!0}):void 0);this._leftActions=new oo(this.element,{actionViewItemProvider:r}),this._rightActions=new oo(this.element,{actionViewItemProvider:r}),this._leftActions.domNode.classList.add("left"),this._rightActions.domNode.classList.add("right")}dispose(){this._menuDisposables.dispose(),this._leftActions.dispose(),this._rightActions.dispose(),this.element.remove()}show(){const e=this._menuService.createMenu(this._menuId,this._contextKeyService),t=()=>{const i=[],n=[];for(const[s,r]of e.getActions())s==="left"?i.push(...r):n.push(...r);this._leftActions.clear(),this._leftActions.push(i),this._rightActions.clear(),this._rightActions.push(n)};this._menuDisposables.add(e.onDidChange(()=>t())),this._menuDisposables.add(e)}hide(){this._menuDisposables.clear()}};uN=hue([wL(2,ke),wL(3,yr),wL(4,De)],uN);var uue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fue=function(o,e){return function(t,i){e(t,i,o)}};function xM(o){return!!o&&!!(o.completion.documentation||o.completion.detail&&o.completion.detail!==o.completion.label)}let fN=class{constructor(e,t){this._editor=e,this._onDidClose=new A,this.onDidClose=this._onDidClose.event,this._onDidChangeContents=new A,this.onDidChangeContents=this._onDidChangeContents.event,this._disposables=new X,this._renderDisposeable=new X,this._borderWidth=1,this._size=new rt(330,0),this.domNode=ce(".suggest-details"),this.domNode.classList.add("no-docs"),this._markdownRenderer=t.createInstance(Wh,{editor:e}),this._body=ce(".body"),this._scrollbar=new J0(this._body,{alwaysConsumeMouseWheel:!0}),Z(this.domNode,this._scrollbar.getDomNode()),this._disposables.add(this._scrollbar),this._header=Z(this._body,ce(".header")),this._close=Z(this._header,ce("span"+Ee.asCSSSelector(ie.close))),this._close.title=m("details.close","Close"),this._type=Z(this._header,ce("p.type")),this._docs=Z(this._body,ce("p.docs")),this._configureFont(),this._disposables.add(this._editor.onDidChangeConfiguration(i=>{i.hasChanged(50)&&this._configureFont()}))}dispose(){this._disposables.dispose(),this._renderDisposeable.dispose()}_configureFont(){const e=this._editor.getOptions(),t=e.get(50),i=t.getMassagedFontFamily(),n=e.get(120)||t.fontSize,s=e.get(121)||t.lineHeight,r=t.fontWeight,a=`${n}px`,l=`${s}px`;this.domNode.style.fontSize=a,this.domNode.style.lineHeight=`${s/n}`,this.domNode.style.fontWeight=r,this.domNode.style.fontFeatureSettings=t.fontFeatureSettings,this._type.style.fontFamily=i,this._close.style.height=l,this._close.style.width=l}getLayoutInfo(){const e=this._editor.getOption(121)||this._editor.getOption(50).lineHeight,t=this._borderWidth,i=t*2;return{lineHeight:e,borderWidth:t,borderHeight:i,verticalPadding:22,horizontalPadding:14}}renderLoading(){this._type.textContent=m("loading","Loading..."),this._docs.textContent="",this.domNode.classList.remove("no-docs","no-type"),this.layout(this.size.width,this.getLayoutInfo().lineHeight*2),this._onDidChangeContents.fire(this)}renderItem(e,t){this._renderDisposeable.clear();let{detail:i,documentation:n}=e.completion;if(t){let s="";s+=`score: ${e.score[0]} +`,s+=`prefix: ${e.word??"(no prefix)"} +`,s+=`word: ${e.completion.filterText?e.completion.filterText+" (filterText)":e.textLabel} +`,s+=`distance: ${e.distance} (localityBonus-setting) +`,s+=`index: ${e.idx}, based on ${e.completion.sortText&&`sortText: "${e.completion.sortText}"`||"label"} +`,s+=`commit_chars: ${e.completion.commitCharacters?.join("")} +`,n=new Js().appendCodeblock("empty",s),i=`Provider: ${e.provider._debugDisplayName}`}if(!t&&!xM(e)){this.clearContents();return}if(this.domNode.classList.remove("no-docs","no-type"),i){const s=i.length>1e5?`${i.substr(0,1e5)}…`:i;this._type.textContent=s,this._type.title=s,ns(this._type),this._type.classList.toggle("auto-wrap",!/\r?\n^\s+/gmi.test(s))}else xn(this._type),this._type.title="",Cn(this._type),this.domNode.classList.add("no-type");if(xn(this._docs),typeof n=="string")this._docs.classList.remove("markdown-docs"),this._docs.textContent=n;else if(n){this._docs.classList.add("markdown-docs"),xn(this._docs);const s=this._markdownRenderer.render(n);this._docs.appendChild(s.element),this._renderDisposeable.add(s),this._renderDisposeable.add(this._markdownRenderer.onDidRenderAsync(()=>{this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}))}this.domNode.style.userSelect="text",this.domNode.tabIndex=-1,this._close.onmousedown=s=>{s.preventDefault(),s.stopPropagation()},this._close.onclick=s=>{s.preventDefault(),s.stopPropagation(),this._onDidClose.fire()},this._body.scrollTop=0,this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}clearContents(){this.domNode.classList.add("no-docs"),this._type.textContent="",this._docs.textContent=""}get isEmpty(){return this.domNode.classList.contains("no-docs")}get size(){return this._size}layout(e,t){const i=new rt(e,t);rt.equals(i,this._size)||(this._size=i,bV(this.domNode,e,t)),this._scrollbar.scanDomNode()}scrollDown(e=8){this._body.scrollTop+=e}scrollUp(e=8){this._body.scrollTop-=e}scrollTop(){this._body.scrollTop=0}scrollBottom(){this._body.scrollTop=this._body.scrollHeight}pageDown(){this.scrollDown(80)}pageUp(){this.scrollUp(80)}set borderWidth(e){this._borderWidth=e}get borderWidth(){return this._borderWidth}};fN=uue([fue(1,ke)],fN);class gue{constructor(e,t){this.widget=e,this._editor=t,this.allowEditorOverflow=!0,this._disposables=new X,this._added=!1,this._preferAlignAtTop=!0,this._resizable=new mM,this._resizable.domNode.classList.add("suggest-details-container"),this._resizable.domNode.appendChild(e.domNode),this._resizable.enableSashes(!1,!0,!0,!1);let i,n,s=0,r=0;this._disposables.add(this._resizable.onDidWillResize(()=>{i=this._topLeft,n=this._resizable.size})),this._disposables.add(this._resizable.onDidResize(a=>{if(i&&n){this.widget.layout(a.dimension.width,a.dimension.height);let l=!1;a.west&&(r=n.width-a.dimension.width,l=!0),a.north&&(s=n.height-a.dimension.height,l=!0),l&&this._applyTopLeft({top:i.top+s,left:i.left+r})}a.done&&(i=void 0,n=void 0,s=0,r=0,this._userSize=a.dimension)})),this._disposables.add(this.widget.onDidChangeContents(()=>{this._anchorBox&&this._placeAtAnchor(this._anchorBox,this._userSize??this.widget.size,this._preferAlignAtTop)}))}dispose(){this._resizable.dispose(),this._disposables.dispose(),this.hide()}getId(){return"suggest.details"}getDomNode(){return this._resizable.domNode}getPosition(){return this._topLeft?{preference:this._topLeft}:null}show(){this._added||(this._editor.addOverlayWidget(this),this._added=!0)}hide(e=!1){this._resizable.clearSashHoverState(),this._added&&(this._editor.removeOverlayWidget(this),this._added=!1,this._anchorBox=void 0,this._topLeft=void 0),e&&(this._userSize=void 0,this.widget.clearContents())}placeAtAnchor(e,t){const i=e.getBoundingClientRect();this._anchorBox=i,this._preferAlignAtTop=t,this._placeAtAnchor(this._anchorBox,this._userSize??this.widget.size,t)}_placeAtAnchor(e,t,i){const n=Ah(this.getDomNode().ownerDocument.body),s=this.widget.getLayoutInfo(),r=new rt(220,2*s.lineHeight),a=e.top,l=(function(){const y=n.width-(e.left+e.width+s.borderWidth+s.horizontalPadding),x=-s.borderWidth+e.left+e.width,L=new rt(y,n.height-e.top-s.borderHeight-s.verticalPadding),E=L.with(void 0,e.top+e.height-s.borderHeight-s.verticalPadding);return{top:a,left:x,fit:y-t.width,maxSizeTop:L,maxSizeBottom:E,minSize:r.with(Math.min(y,r.width))}})(),c=(function(){const y=e.left-s.borderWidth-s.horizontalPadding,x=Math.max(s.horizontalPadding,e.left-t.width-s.borderWidth),L=new rt(y,n.height-e.top-s.borderHeight-s.verticalPadding),E=L.with(void 0,e.top+e.height-s.borderHeight-s.verticalPadding);return{top:a,left:x,fit:y-t.width,maxSizeTop:L,maxSizeBottom:E,minSize:r.with(Math.min(y,r.width))}})(),d=(function(){const y=e.left,x=-s.borderWidth+e.top+e.height,L=new rt(e.width-s.borderHeight,n.height-e.top-e.height-s.verticalPadding);return{top:x,left:y,fit:L.height-t.height,maxSizeBottom:L,maxSizeTop:L,minSize:r.with(L.width)}})(),h=[l,c,d],u=h.find(y=>y.fit>=0)??h.sort((y,x)=>x.fit-y.fit)[0],f=e.top+e.height-s.borderHeight;let g,p=t.height;const _=Math.max(u.maxSizeTop.height,u.maxSizeBottom.height);p>_&&(p=_);let b;i?p<=u.maxSizeTop.height?(g=!0,b=u.maxSizeTop):(g=!1,b=u.maxSizeBottom):p<=u.maxSizeBottom.height?(g=!1,b=u.maxSizeBottom):(g=!0,b=u.maxSizeTop);let{top:C,left:w}=u;!g&&p>e.height&&(C=f-p);const v=this._editor.getDomNode();if(v){const y=v.getBoundingClientRect();C-=y.top,w-=y.left}this._applyTopLeft({left:w,top:C}),this._resizable.enableSashes(!g,u===l,g,u!==l),this._resizable.minSize=u.minSize,this._resizable.maxSize=b,this._resizable.layout(p,Math.min(b.width,t.width)),this.widget.layout(this._resizable.size.width,this._resizable.size.height)}_applyTopLeft(e){this._topLeft=e,this._editor.layoutOverlayWidget(this)}}var ta;(function(o){o[o.FILE=0]="FILE",o[o.FOLDER=1]="FOLDER",o[o.ROOT_FOLDER=2]="ROOT_FOLDER"})(ta||(ta={}));const mue=/(?:\/|^)(?:([^\/]+)\/)?([^\/]+)$/;function _1(o,e,t,i,n){if(Ee.isThemeIcon(n))return[`codicon-${n.id}`,"predefined-file-icon"];if(ve.isUri(n))return[];const s=i===ta.ROOT_FOLDER?["rootfolder-icon"]:i===ta.FOLDER?["folder-icon"]:["file-icon"];if(t){let r;if(t.scheme===Te.data)r=Oc.parseMetaData(t).get(Oc.META_DATA_LABEL);else{const a=t.path.match(mue);a?(r=b1(a[2].toLowerCase()),a[1]&&s.push(`${b1(a[1].toLowerCase())}-name-dir-icon`)):r=b1(t.authority.toLowerCase())}if(i===ta.ROOT_FOLDER)s.push(`${r}-root-name-folder-icon`);else if(i===ta.FOLDER)s.push(`${r}-name-folder-icon`);else{if(r){if(s.push(`${r}-name-file-icon`),s.push("name-file-icon"),r.length<=255){const l=r.split(".");for(let c=1;c=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},yL=function(o,e){return function(t,i){e(t,i,o)}};function QB(o){return`suggest-aria-id:${o}`}const bue=Wi("suggest-more-info",ie.chevronRight,m("suggestMoreInfoIcon","Icon for more information in the suggest widget."));var lr;const Cue=new(lr=class{extract(e,t){if(e.textLabel.match(lr._regexStrict))return t[0]=e.textLabel,!0;if(e.completion.detail&&e.completion.detail.match(lr._regexStrict))return t[0]=e.completion.detail,!0;if(e.completion.documentation){const i=typeof e.completion.documentation=="string"?e.completion.documentation:e.completion.documentation.value,n=lr._regexRelaxed.exec(i);if(n&&(n.index===0||n.index+n[0].length===i.length))return t[0]=n[0],!0}return!1}},lr._regexRelaxed=/(#([\da-fA-F]{3}){1,2}|(rgb|hsl)a\(\s*(\d{1,3}%?\s*,\s*){3}(1|0?\.\d+)\)|(rgb|hsl)\(\s*\d{1,3}%?(\s*,\s*\d{1,3}%?){2}\s*\))/,lr._regexStrict=new RegExp(`^${lr._regexRelaxed.source}$`,"i"),lr);let gN=class{constructor(e,t,i,n){this._editor=e,this._modelService=t,this._languageService=i,this._themeService=n,this._onDidToggleDetails=new A,this.onDidToggleDetails=this._onDidToggleDetails.event,this.templateId="suggestion"}dispose(){this._onDidToggleDetails.dispose()}renderTemplate(e){const t=new X,i=e;i.classList.add("show-file-icons");const n=Z(e,ce(".icon")),s=Z(n,ce("span.colorspan")),r=Z(e,ce(".contents")),a=Z(r,ce(".main")),l=Z(a,ce(".icon-label.codicon")),c=Z(a,ce("span.left")),d=Z(a,ce("span.right")),h=new gv(c,{supportHighlights:!0,supportIcons:!0});t.add(h);const u=Z(c,ce("span.signature-label")),f=Z(c,ce("span.qualifier-label")),g=Z(d,ce("span.details-label")),p=Z(d,ce("span.readMore"+Ee.asCSSSelector(bue)));return p.title=m("readMore","Read More"),{root:i,left:c,right:d,icon:n,colorspan:s,iconLabel:h,iconContainer:l,parametersLabel:u,qualifierLabel:f,detailsLabel:g,readMore:p,disposables:t,configureFont:()=>{const b=this._editor.getOptions(),C=b.get(50),w=C.getMassagedFontFamily(),v=C.fontFeatureSettings,y=b.get(120)||C.fontSize,x=b.get(121)||C.lineHeight,L=C.fontWeight,E=C.letterSpacing,N=`${y}px`,H=`${x}px`,F=`${E}px`;i.style.fontSize=N,i.style.fontWeight=L,i.style.letterSpacing=F,a.style.fontFamily=w,a.style.fontFeatureSettings=v,a.style.lineHeight=H,n.style.height=H,n.style.width=H,p.style.height=H,p.style.width=H}}}renderElement(e,t,i){i.configureFont();const{completion:n}=e;i.root.id=QB(t),i.colorspan.style.backgroundColor="";const s={labelEscapeNewLines:!0,matches:iy(e.score)},r=[];if(n.kind===19&&Cue.extract(e,r))i.icon.className="icon customcolor",i.iconContainer.className="icon hide",i.colorspan.style.backgroundColor=r[0];else if(n.kind===20&&this._themeService.getFileIconTheme().hasFileIcons){i.icon.className="icon hide",i.iconContainer.className="icon hide";const a=_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:e.textLabel}),ta.FILE),l=_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:n.detail}),ta.FILE);s.extraClasses=a.length>l.length?a:l}else n.kind===23&&this._themeService.getFileIconTheme().hasFolderIcons?(i.icon.className="icon hide",i.iconContainer.className="icon hide",s.extraClasses=[_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:e.textLabel}),ta.FOLDER),_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:n.detail}),ta.FOLDER)].flat()):(i.icon.className="icon hide",i.iconContainer.className="",i.iconContainer.classList.add("suggest-icon",...Ee.asClassNameArray(Up.toIcon(n.kind))));n.tags&&n.tags.indexOf(1)>=0&&(s.extraClasses=(s.extraClasses||[]).concat(["deprecated"]),s.matches=[]),i.iconLabel.setLabel(e.textLabel,void 0,s),typeof n.label=="string"?(i.parametersLabel.textContent="",i.detailsLabel.textContent=SL(n.detail||""),i.root.classList.add("string-label")):(i.parametersLabel.textContent=SL(n.label.detail||""),i.detailsLabel.textContent=SL(n.label.description||""),i.root.classList.remove("string-label")),this._editor.getOption(119).showInlineDetails?ns(i.detailsLabel):Cn(i.detailsLabel),xM(e)?(i.right.classList.add("can-expand-details"),ns(i.readMore),i.readMore.onmousedown=a=>{a.stopPropagation(),a.preventDefault()},i.readMore.onclick=a=>{a.stopPropagation(),a.preventDefault(),this._onDidToggleDetails.fire()}):(i.right.classList.remove("can-expand-details"),Cn(i.readMore),i.readMore.onmousedown=null,i.readMore.onclick=null)}disposeTemplate(e){e.disposables.dispose()}};gN=_ue([yL(1,Fi),yL(2,qt),yL(3,en)],gN);function SL(o){return o.replace(/\r\n|\r|\n/g,"")}var vue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},C1=function(o,e){return function(t,i){e(t,i,o)}},qu;D("editorSuggestWidget.background",no,m("editorSuggestWidgetBackground","Background color of the suggest widget."));D("editorSuggestWidget.border",LT,m("editorSuggestWidgetBorder","Border color of the suggest widget."));const wue=D("editorSuggestWidget.foreground",Sa,m("editorSuggestWidgetForeground","Foreground color of the suggest widget."));D("editorSuggestWidget.selectedForeground",AC,m("editorSuggestWidgetSelectedForeground","Foreground color of the selected entry in the suggest widget."));D("editorSuggestWidget.selectedIconForeground",TT,m("editorSuggestWidgetSelectedIconForeground","Icon foreground color of the selected entry in the suggest widget."));const yue=D("editorSuggestWidget.selectedBackground",PC,m("editorSuggestWidgetSelectedBackground","Background color of the selected entry in the suggest widget."));D("editorSuggestWidget.highlightForeground",Nm,m("editorSuggestWidgetHighlightForeground","Color of the match highlights in the suggest widget."));D("editorSuggestWidget.focusHighlightForeground",Wj,m("editorSuggestWidgetFocusHighlightForeground","Color of the match highlights in the suggest widget when an item is focused."));D("editorSuggestWidgetStatus.foreground",Ae(wue,.5),m("editorSuggestWidgetStatusForeground","Foreground color of the suggest widget status."));class Sue{constructor(e,t){this._service=e,this._key=`suggestWidget.size/${t.getEditorType()}/${t instanceof Gh}`}restore(){const e=this._service.get(this._key,0)??"";try{const t=JSON.parse(e);if(rt.is(t))return rt.lift(t)}catch{}}store(e){this._service.store(this._key,JSON.stringify(e),0,1)}reset(){this._service.remove(this._key,0)}}var Nc;let mN=(Nc=class{constructor(e,t,i,n,s){this.editor=e,this._storageService=t,this._state=0,this._isAuto=!1,this._pendingLayout=new Dn,this._pendingShowDetails=new Dn,this._ignoreFocusEvents=!1,this._forceRenderingAbove=!1,this._explainMode=!1,this._showTimeout=new wr,this._disposables=new X,this._onDidSelect=new Nh,this._onDidFocus=new Nh,this._onDidHide=new A,this._onDidShow=new A,this.onDidSelect=this._onDidSelect.event,this.onDidFocus=this._onDidFocus.event,this.onDidHide=this._onDidHide.event,this.onDidShow=this._onDidShow.event,this._onDetailsKeydown=new A,this.onDetailsKeyDown=this._onDetailsKeydown.event,this.element=new mM,this.element.domNode.classList.add("editor-widget","suggest-widget"),this._contentWidget=new Lue(this,e),this._persistedSize=new Sue(t,e);class r{constructor(f,g,p=!1,_=!1){this.persistedSize=f,this.currentSize=g,this.persistHeight=p,this.persistWidth=_}}let a;this._disposables.add(this.element.onDidWillResize(()=>{this._contentWidget.lockPreference(),a=new r(this._persistedSize.restore(),this.element.size)})),this._disposables.add(this.element.onDidResize(u=>{if(this._resize(u.dimension.width,u.dimension.height),a&&(a.persistHeight=a.persistHeight||!!u.north||!!u.south,a.persistWidth=a.persistWidth||!!u.east||!!u.west),!!u.done){if(a){const{itemHeight:f,defaultSize:g}=this.getLayoutInfo(),p=Math.round(f/2);let{width:_,height:b}=this.element.size;(!a.persistHeight||Math.abs(a.currentSize.height-b)<=p)&&(b=a.persistedSize?.height??g.height),(!a.persistWidth||Math.abs(a.currentSize.width-_)<=p)&&(_=a.persistedSize?.width??g.width),this._persistedSize.store(new rt(_,b))}this._contentWidget.unlockPreference(),a=void 0}})),this._messageElement=Z(this.element.domNode,ce(".message")),this._listElement=Z(this.element.domNode,ce(".tree"));const l=this._disposables.add(s.createInstance(fN,this.editor));l.onDidClose(this.toggleDetails,this,this._disposables),this._details=new gue(l,this.editor);const c=()=>this.element.domNode.classList.toggle("no-icons",!this.editor.getOption(119).showIcons);c();const d=s.createInstance(gN,this.editor);this._disposables.add(d),this._disposables.add(d.onDidToggleDetails(()=>this.toggleDetails())),this._list=new go("SuggestWidget",this._listElement,{getHeight:u=>this.getLayoutInfo().itemHeight,getTemplateId:u=>"suggestion"},[d],{alwaysConsumeMouseWheel:!0,useShadows:!1,mouseSupport:!1,multipleSelectionSupport:!1,accessibilityProvider:{getRole:()=>"option",getWidgetAriaLabel:()=>m("suggest","Suggest"),getWidgetRole:()=>"listbox",getAriaLabel:u=>{let f=u.textLabel;if(typeof u.completion.label!="string"){const{detail:b,description:C}=u.completion.label;b&&C?f=m("label.full","{0} {1}, {2}",f,b,C):b?f=m("label.detail","{0} {1}",f,b):C&&(f=m("label.desc","{0}, {1}",f,C))}if(!u.isResolved||!this._isDetailsVisible())return f;const{documentation:g,detail:p}=u.completion,_=$p("{0}{1}",p||"",g?typeof g=="string"?g:g.value:"");return m("ariaCurrenttSuggestionReadDetails","{0}, docs: {1}",f,_)}}}),this._list.style($g({listInactiveFocusBackground:yue,listInactiveFocusOutline:Ut})),this._status=s.createInstance(uN,this.element.domNode,bc);const h=()=>this.element.domNode.classList.toggle("with-status-bar",this.editor.getOption(119).showStatusBar);h(),this._disposables.add(n.onDidColorThemeChange(u=>this._onThemeChange(u))),this._onThemeChange(n.getColorTheme()),this._disposables.add(this._list.onMouseDown(u=>this._onListMouseDownOrTap(u))),this._disposables.add(this._list.onTap(u=>this._onListMouseDownOrTap(u))),this._disposables.add(this._list.onDidChangeSelection(u=>this._onListSelection(u))),this._disposables.add(this._list.onDidChangeFocus(u=>this._onListFocus(u))),this._disposables.add(this.editor.onDidChangeCursorSelection(()=>this._onCursorSelectionChanged())),this._disposables.add(this.editor.onDidChangeConfiguration(u=>{u.hasChanged(119)&&(h(),c()),this._completionModel&&(u.hasChanged(50)||u.hasChanged(120)||u.hasChanged(121))&&this._list.splice(0,this._list.length,this._completionModel.items)})),this._ctxSuggestWidgetVisible=Ne.Visible.bindTo(i),this._ctxSuggestWidgetDetailsVisible=Ne.DetailsVisible.bindTo(i),this._ctxSuggestWidgetMultipleSuggestions=Ne.MultipleSuggestions.bindTo(i),this._ctxSuggestWidgetHasFocusedSuggestion=Ne.HasFocusedSuggestion.bindTo(i),this._disposables.add(jt(this._details.widget.domNode,"keydown",u=>{this._onDetailsKeydown.fire(u)})),this._disposables.add(this.editor.onMouseDown(u=>this._onEditorMouseDown(u)))}dispose(){this._details.widget.dispose(),this._details.dispose(),this._list.dispose(),this._status.dispose(),this._disposables.dispose(),this._loadingTimeout?.dispose(),this._pendingLayout.dispose(),this._pendingShowDetails.dispose(),this._showTimeout.dispose(),this._contentWidget.dispose(),this.element.dispose()}_onEditorMouseDown(e){this._details.widget.domNode.contains(e.target.element)?this._details.widget.domNode.focus():this.element.domNode.contains(e.target.element)&&this.editor.focus()}_onCursorSelectionChanged(){this._state!==0&&this._contentWidget.layout()}_onListMouseDownOrTap(e){typeof e.element>"u"||typeof e.index>"u"||(e.browserEvent.preventDefault(),e.browserEvent.stopPropagation(),this._select(e.element,e.index))}_onListSelection(e){e.elements.length&&this._select(e.elements[0],e.indexes[0])}_select(e,t){const i=this._completionModel;i&&(this._onDidSelect.fire({item:e,index:t,model:i}),this.editor.focus())}_onThemeChange(e){this._details.widget.borderWidth=mc(e.type)?2:1}_onListFocus(e){if(this._ignoreFocusEvents)return;if(!e.elements.length){this._currentSuggestionDetails&&(this._currentSuggestionDetails.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=void 0),this.editor.setAriaOptions({activeDescendant:void 0}),this._ctxSuggestWidgetHasFocusedSuggestion.set(!1);return}if(!this._completionModel)return;this._ctxSuggestWidgetHasFocusedSuggestion.set(!0);const t=e.elements[0],i=e.indexes[0];t!==this._focusedItem&&(this._currentSuggestionDetails?.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=t,this._list.reveal(i),this._currentSuggestionDetails=wa(async n=>{const s=rg(()=>{this._isDetailsVisible()&&this.showDetails(!0)},250),r=n.onCancellationRequested(()=>s.dispose());try{return await t.resolve(n)}finally{s.dispose(),r.dispose()}}),this._currentSuggestionDetails.then(()=>{i>=this._list.length||t!==this._list.element(i)||(this._ignoreFocusEvents=!0,this._list.splice(i,1,[t]),this._list.setFocus([i]),this._ignoreFocusEvents=!1,this._isDetailsVisible()?this.showDetails(!1):this.element.domNode.classList.remove("docs-side"),this.editor.setAriaOptions({activeDescendant:QB(i)}))}).catch(Ze)),this._onDidFocus.fire({item:t,index:i,model:this._completionModel})}_setState(e){if(this._state!==e)switch(this._state=e,this.element.domNode.classList.toggle("frozen",e===4),this.element.domNode.classList.remove("message"),e){case 0:Cn(this._messageElement,this._listElement,this._status.element),this._details.hide(!0),this._status.hide(),this._contentWidget.hide(),this._ctxSuggestWidgetVisible.reset(),this._ctxSuggestWidgetMultipleSuggestions.reset(),this._ctxSuggestWidgetHasFocusedSuggestion.reset(),this._showTimeout.cancel(),this.element.domNode.classList.remove("visible"),this._list.splice(0,this._list.length),this._focusedItem=void 0,this._cappedHeight=void 0,this._explainMode=!1;break;case 1:this.element.domNode.classList.add("message"),this._messageElement.textContent=qu.LOADING_MESSAGE,Cn(this._listElement,this._status.element),ns(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0,Hh(qu.LOADING_MESSAGE);break;case 2:this.element.domNode.classList.add("message"),this._messageElement.textContent=qu.NO_SUGGESTIONS_MESSAGE,Cn(this._listElement,this._status.element),ns(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0,Hh(qu.NO_SUGGESTIONS_MESSAGE);break;case 3:Cn(this._messageElement),ns(this._listElement,this._status.element),this._show();break;case 4:Cn(this._messageElement),ns(this._listElement,this._status.element),this._show();break;case 5:Cn(this._messageElement),ns(this._listElement,this._status.element),this._details.show(),this._show();break}}_show(){this._status.show(),this._contentWidget.show(),this._layout(this._persistedSize.restore()),this._ctxSuggestWidgetVisible.set(!0),this._showTimeout.cancelAndSet(()=>{this.element.domNode.classList.add("visible"),this._onDidShow.fire(this)},100)}showTriggered(e,t){this._state===0&&(this._contentWidget.setPosition(this.editor.getPosition()),this._isAuto=!!e,this._isAuto||(this._loadingTimeout=rg(()=>this._setState(1),t)))}showSuggestions(e,t,i,n,s){if(this._contentWidget.setPosition(this.editor.getPosition()),this._loadingTimeout?.dispose(),this._currentSuggestionDetails?.cancel(),this._currentSuggestionDetails=void 0,this._completionModel!==e&&(this._completionModel=e),i&&this._state!==2&&this._state!==0){this._setState(4);return}const r=this._completionModel.items.length,a=r===0;if(this._ctxSuggestWidgetMultipleSuggestions.set(r>1),a){this._setState(n?0:2),this._completionModel=void 0;return}this._focusedItem=void 0,this._onDidFocus.pause(),this._onDidSelect.pause();try{this._list.splice(0,this._list.length,this._completionModel.items),this._setState(i?4:3),this._list.reveal(t,0),this._list.setFocus(s?[]:[t])}finally{this._onDidFocus.resume(),this._onDidSelect.resume()}this._pendingLayout.value=pC(fe(this.element.domNode),()=>{this._pendingLayout.clear(),this._layout(this.element.size),this._details.widget.domNode.classList.remove("focused")})}focusSelected(){this._list.length>0&&this._list.setFocus([0])}selectNextPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageDown(),!0;case 1:return!this._isAuto;default:return this._list.focusNextPage(),!0}}selectNext(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusNext(1,!0),!0}}selectLast(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollBottom(),!0;case 1:return!this._isAuto;default:return this._list.focusLast(),!0}}selectPreviousPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageUp(),!0;case 1:return!this._isAuto;default:return this._list.focusPreviousPage(),!0}}selectPrevious(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusPrevious(1,!0),!1}}selectFirst(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollTop(),!0;case 1:return!this._isAuto;default:return this._list.focusFirst(),!0}}getFocusedItem(){if(this._state!==0&&this._state!==2&&this._state!==1&&this._completionModel&&this._list.getFocus().length>0)return{item:this._list.getFocusedElements()[0],index:this._list.getFocus()[0],model:this._completionModel}}toggleDetailsFocus(){this._state===5?(this._setState(3),this._details.widget.domNode.classList.remove("focused")):this._state===3&&this._isDetailsVisible()&&(this._setState(5),this._details.widget.domNode.classList.add("focused"))}toggleDetails(){this._isDetailsVisible()?(this._pendingShowDetails.clear(),this._ctxSuggestWidgetDetailsVisible.set(!1),this._setDetailsVisible(!1),this._details.hide(),this.element.domNode.classList.remove("shows-details")):(xM(this._list.getFocusedElements()[0])||this._explainMode)&&(this._state===3||this._state===5||this._state===4)&&(this._ctxSuggestWidgetDetailsVisible.set(!0),this._setDetailsVisible(!0),this.showDetails(!1))}showDetails(e){this._pendingShowDetails.value=pC(fe(this.element.domNode),()=>{this._pendingShowDetails.clear(),this._details.show(),e?this._details.widget.renderLoading():this._details.widget.renderItem(this._list.getFocusedElements()[0],this._explainMode),this._details.widget.isEmpty?this._details.hide():(this._positionDetails(),this.element.domNode.classList.add("shows-details")),this.editor.focus()})}toggleExplainMode(){this._list.getFocusedElements()[0]&&(this._explainMode=!this._explainMode,this._isDetailsVisible()?this.showDetails(!1):this.toggleDetails())}resetPersistedSize(){this._persistedSize.reset()}hideWidget(){this._pendingLayout.clear(),this._pendingShowDetails.clear(),this._loadingTimeout?.dispose(),this._setState(0),this._onDidHide.fire(this),this.element.clearSashHoverState();const e=this._persistedSize.restore(),t=Math.ceil(this.getLayoutInfo().itemHeight*4.3);e&&e.heightr&&(s=r);const a=this._completionModel?this._completionModel.stats.pLabelLen*i.typicalHalfwidthCharacterWidth:s,l=i.statusBarHeight+this._list.contentHeight+i.borderHeight,c=i.itemHeight+i.statusBarHeight,d=gi(this.editor.getDomNode()),h=this.editor.getScrolledVisiblePosition(this.editor.getPosition()),u=d.top+h.top+h.height,f=Math.min(t.height-u-i.verticalPadding,l),g=d.top+h.top-i.verticalPadding,p=Math.min(g,l);let _=Math.min(Math.max(p,f)+i.borderHeight,l);n===this._cappedHeight?.capped&&(n=this._cappedHeight.wanted),n_&&(n=_),n>f||this._forceRenderingAbove&&g>150?(this._contentWidget.setPreference(1),this.element.enableSashes(!0,!0,!1,!1),_=p):(this._contentWidget.setPreference(2),this.element.enableSashes(!1,!0,!0,!1),_=f),this.element.preferredSize=new rt(a,i.defaultSize.height),this.element.maxSize=new rt(r,_),this.element.minSize=new rt(220,c),this._cappedHeight=n===l?{wanted:this._cappedHeight?.wanted??e.height,capped:n}:void 0}this._resize(s,n)}_resize(e,t){const{width:i,height:n}=this.element.maxSize;e=Math.min(i,e),t=Math.min(n,t);const{statusBarHeight:s}=this.getLayoutInfo();this._list.layout(t-s,e),this._listElement.style.height=`${t-s}px`,this.element.layout(t,e),this._contentWidget.layout(),this._positionDetails()}_positionDetails(){this._isDetailsVisible()&&this._details.placeAtAnchor(this.element.domNode,this._contentWidget.getPosition()?.preference[0]===2)}getLayoutInfo(){const e=this.editor.getOption(50),t=bn(this.editor.getOption(121)||e.lineHeight,8,1e3),i=!this.editor.getOption(119).showStatusBar||this._state===2||this._state===1?0:t,n=this._details.widget.borderWidth,s=2*n;return{itemHeight:t,statusBarHeight:i,borderWidth:n,borderHeight:s,typicalHalfwidthCharacterWidth:e.typicalHalfwidthCharacterWidth,verticalPadding:22,horizontalPadding:14,defaultSize:new rt(430,i+12*t+s)}}_isDetailsVisible(){return this._storageService.getBoolean("expandSuggestionDocs",0,!1)}_setDetailsVisible(e){this._storageService.store("expandSuggestionDocs",e,0,0)}forceRenderingAbove(){this._forceRenderingAbove||(this._forceRenderingAbove=!0,this._layout(this._persistedSize.restore()))}stopForceRenderingAbove(){this._forceRenderingAbove=!1}},qu=Nc,Nc.LOADING_MESSAGE=m("suggestWidget.loading","Loading..."),Nc.NO_SUGGESTIONS_MESSAGE=m("suggestWidget.noSuggestions","No suggestions."),Nc);mN=qu=vue([C1(1,du),C1(2,De),C1(3,en),C1(4,ke)],mN);class Lue{constructor(e,t){this._widget=e,this._editor=t,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._preferenceLocked=!1,this._added=!1,this._hidden=!1}dispose(){this._added&&(this._added=!1,this._editor.removeContentWidget(this))}getId(){return"editor.widget.suggestWidget"}getDomNode(){return this._widget.element.domNode}show(){this._hidden=!1,this._added||(this._added=!0,this._editor.addContentWidget(this))}hide(){this._hidden||(this._hidden=!0,this.layout())}layout(){this._editor.layoutContentWidget(this)}getPosition(){return this._hidden||!this._position||!this._preference?null:{position:this._position,preference:[this._preference]}}beforeRender(){const{height:e,width:t}=this._widget.element.size,{borderWidth:i,horizontalPadding:n}=this._widget.getLayoutInfo();return new rt(t+2*i+n,e+2*i)}afterRender(e){this._widget._afterRender(e)}setPreference(e){this._preferenceLocked||(this._preference=e)}lockPreference(){this._preferenceLocked=!0}unlockPreference(){this._preferenceLocked=!1}setPosition(e){this._position=e}}var xue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Hu=function(o,e){return function(t,i){e(t,i,o)}},pN;class kue{constructor(e,t){if(this._model=e,this._position=t,this._decorationOptions=kt.register({description:"suggest-line-suffix",stickiness:1}),e.getLineMaxColumn(t.lineNumber)!==t.column){const n=e.getOffsetAt(t),s=e.getPositionAt(n+1);e.changeDecorations(r=>{this._marker&&r.removeDecoration(this._marker),this._marker=r.addDecoration(I.fromPositions(t,s),this._decorationOptions)})}}dispose(){this._marker&&!this._model.isDisposed()&&this._model.changeDecorations(e=>{e.removeDecoration(this._marker),this._marker=void 0})}delta(e){if(this._model.isDisposed()||this._position.lineNumber!==e.lineNumber)return 0;if(this._marker){const t=this._model.getDecorationRange(this._marker);return this._model.getOffsetAt(t.getStartPosition())-this._model.getOffsetAt(e)}else return this._model.getLineMaxColumn(e.lineNumber)-e.column}}var Dh;let mr=(Dh=class{static get(e){return e.getContribution(pN.ID)}constructor(e,t,i,n,s,r,a){this._memoryService=t,this._commandService=i,this._contextKeyService=n,this._instantiationService=s,this._logService=r,this._telemetryService=a,this._lineSuffix=new Dn,this._toDispose=new X,this._selectors=new Due(h=>h.priority),this._onWillInsertSuggestItem=new A,this.onWillInsertSuggestItem=this._onWillInsertSuggestItem.event,this.editor=e,this.model=s.createInstance(dN,this.editor),this._selectors.register({priority:0,select:(h,u,f)=>this._memoryService.select(h,u,f)});const l=Ne.InsertMode.bindTo(n);l.set(e.getOption(119).insertMode),this._toDispose.add(this.model.onDidTrigger(()=>l.set(e.getOption(119).insertMode))),this.widget=this._toDispose.add(new nS(fe(e.getDomNode()),()=>{const h=this._instantiationService.createInstance(mN,this.editor);this._toDispose.add(h),this._toDispose.add(h.onDidSelect(_=>this._insertSuggestion(_,0),this));const u=new aue(this.editor,h,this.model,_=>this._insertSuggestion(_,2));this._toDispose.add(u);const f=Ne.MakesTextEdit.bindTo(this._contextKeyService),g=Ne.HasInsertAndReplaceRange.bindTo(this._contextKeyService),p=Ne.CanResolve.bindTo(this._contextKeyService);return this._toDispose.add(_e(()=>{f.reset(),g.reset(),p.reset()})),this._toDispose.add(h.onDidFocus(({item:_})=>{const b=this.editor.getPosition(),C=_.editStart.column,w=b.column;let v=!0;this.editor.getOption(1)==="smart"&&this.model.state===2&&!_.completion.additionalTextEdits&&!(_.completion.insertTextRules&4)&&w-C===_.completion.insertText.length&&(v=this.editor.getModel().getValueInRange({startLineNumber:b.lineNumber,startColumn:C,endLineNumber:b.lineNumber,endColumn:w})!==_.completion.insertText),f.set(v),g.set(!P.equals(_.editInsertEnd,_.editReplaceEnd)),p.set(!!_.provider.resolveCompletionItem||!!_.completion.documentation||_.completion.detail!==_.completion.label)})),this._toDispose.add(h.onDetailsKeyDown(_=>{if(_.toKeyCodeChord().equals(new kl(!0,!1,!1,!1,33))||Ue&&_.toKeyCodeChord().equals(new kl(!1,!1,!1,!0,33))){_.stopPropagation();return}_.toKeyCodeChord().isModifierKey()||this.editor.focus()})),h})),this._overtypingCapturer=this._toDispose.add(new nS(fe(e.getDomNode()),()=>this._toDispose.add(new hN(this.editor,this.model)))),this._alternatives=this._toDispose.add(new nS(fe(e.getDomNode()),()=>this._toDispose.add(new Rg(this.editor,this._contextKeyService)))),this._toDispose.add(s.createInstance(pw,e)),this._toDispose.add(this.model.onDidTrigger(h=>{this.widget.value.showTriggered(h.auto,h.shy?250:50),this._lineSuffix.value=new kue(this.editor.getModel(),h.position)})),this._toDispose.add(this.model.onDidSuggest(h=>{if(h.triggerOptions.shy)return;let u=-1;for(const g of this._selectors.itemsOrderedByPriorityDesc)if(u=g.select(this.editor.getModel(),this.editor.getPosition(),h.completionModel.items),u!==-1)break;if(u===-1&&(u=0),this.model.state===0)return;let f=!1;if(h.triggerOptions.auto){const g=this.editor.getOption(119);g.selectionMode==="never"||g.selectionMode==="always"?f=g.selectionMode==="never":g.selectionMode==="whenTriggerCharacter"?f=h.triggerOptions.triggerKind!==1:g.selectionMode==="whenQuickSuggestion"&&(f=h.triggerOptions.triggerKind===1&&!h.triggerOptions.refilter)}this.widget.value.showSuggestions(h.completionModel,u,h.isFrozen,h.triggerOptions.auto,f)})),this._toDispose.add(this.model.onDidCancel(h=>{h.retrigger||this.widget.value.hideWidget()})),this._toDispose.add(this.editor.onDidBlurEditorWidget(()=>{this.model.cancel(),this.model.clear()}));const c=Ne.AcceptSuggestionsOnEnter.bindTo(n),d=()=>{const h=this.editor.getOption(1);c.set(h==="on"||h==="smart")};this._toDispose.add(this.editor.onDidChangeConfiguration(()=>d())),d()}dispose(){this._alternatives.dispose(),this._toDispose.dispose(),this.widget.dispose(),this.model.dispose(),this._lineSuffix.dispose(),this._onWillInsertSuggestItem.dispose()}_insertSuggestion(e,t){if(!e||!e.item){this._alternatives.value.reset(),this.model.cancel(),this.model.clear();return}if(!this.editor.hasModel())return;const i=Mn.get(this.editor);if(!i)return;this._onWillInsertSuggestItem.fire({item:e.item});const n=this.editor.getModel(),s=n.getAlternativeVersionId(),{item:r}=e,a=[],l=new In;t&1||this.editor.pushUndoStop();const c=this.getOverwriteInfo(r,!!(t&8));this._memoryService.memorize(n,this.editor.getPosition(),r);const d=r.isResolved;let h=-1,u=-1;if(Array.isArray(r.completion.additionalTextEdits)){this.model.cancel();const g=qh.capture(this.editor);this.editor.executeEdits("suggestController.additionalTextEdits.sync",r.completion.additionalTextEdits.map(p=>{let _=I.lift(p.range);if(_.startLineNumber===r.position.lineNumber&&_.startColumn>r.position.column){const b=this.editor.getPosition().column-r.position.column,C=b,w=I.spansMultipleLines(_)?0:b;_=new I(_.startLineNumber,_.startColumn+C,_.endLineNumber,_.endColumn+w)}return aa.replaceMove(_,p.text)})),g.restoreRelativeVerticalPositionOfCursor(this.editor)}else if(!d){const g=new Hs;let p;const _=n.onDidChangeContent(v=>{if(v.isFlush){l.cancel(),_.dispose();return}for(const y of v.changes){const x=I.getEndPosition(y.range);(!p||P.isBefore(x,p))&&(p=x)}}),b=t;t|=2;let C=!1;const w=this.editor.onWillType(()=>{w.dispose(),C=!0,b&2||this.editor.pushUndoStop()});a.push(r.resolve(l.token).then(()=>{if(!r.completion.additionalTextEdits||l.token.isCancellationRequested)return;if(p&&r.completion.additionalTextEdits.some(y=>P.isBefore(p,I.getStartPosition(y.range))))return!1;C&&this.editor.pushUndoStop();const v=qh.capture(this.editor);return this.editor.executeEdits("suggestController.additionalTextEdits.async",r.completion.additionalTextEdits.map(y=>aa.replaceMove(I.lift(y.range),y.text))),v.restoreRelativeVerticalPositionOfCursor(this.editor),(C||!(b&2))&&this.editor.pushUndoStop(),!0}).then(v=>{this._logService.trace("[suggest] async resolving of edits DONE (ms, applied?)",g.elapsed(),v),u=v===!0?1:v===!1?0:-2}).finally(()=>{_.dispose(),w.dispose()}))}let{insertText:f}=r.completion;if(r.completion.insertTextRules&4||(f=Mg.escape(f)),this.model.cancel(),i.insert(f,{overwriteBefore:c.overwriteBefore,overwriteAfter:c.overwriteAfter,undoStopBefore:!1,undoStopAfter:!1,adjustWhitespace:!(r.completion.insertTextRules&1),clipboardText:e.model.clipboardText,overtypingCapturer:this._overtypingCapturer.value}),t&2||this.editor.pushUndoStop(),r.completion.command)if(r.completion.command.id===_w.id)this.model.trigger({auto:!0,retrigger:!0});else{const g=new Hs;a.push(this._commandService.executeCommand(r.completion.command.id,...r.completion.command.arguments?[...r.completion.command.arguments]:[]).catch(p=>{r.completion.extensionId?$n(p):Ze(p)}).finally(()=>{h=g.elapsed()}))}t&4&&this._alternatives.value.set(e,g=>{for(l.cancel();n.canUndo();){s!==n.getAlternativeVersionId()&&n.undo(),this._insertSuggestion(g,3|(t&8?8:0));break}}),this._alertCompletionItem(r),Promise.all(a).finally(()=>{this._reportSuggestionAcceptedTelemetry(r,n,d,h,u,e.index,e.model.items),this.model.clear(),l.dispose()})}_reportSuggestionAcceptedTelemetry(e,t,i,n,s,r,a){if(Math.floor(Math.random()*100)===0)return;const l=new Map;for(let u=0;u1?c[0]:-1;this._telemetryService.publicLog2("suggest.acceptedSuggestion",{extensionId:e.extensionId?.value??"unknown",providerId:e.provider._debugDisplayName??"unknown",kind:e.completion.kind,basenameHash:ZN(Fo(t.uri)).toString(16),languageId:t.getLanguageId(),fileExtension:Yq(t.uri),resolveInfo:e.provider.resolveCompletionItem?i?1:0:-1,resolveDuration:e.resolveDuration,commandDuration:n,additionalEditsAsync:s,index:r,firstIndex:h})}getOverwriteInfo(e,t){ai(this.editor.hasModel());let i=this.editor.getOption(119).insertMode==="replace";t&&(i=!i);const n=e.position.column-e.editStart.column,s=(i?e.editReplaceEnd.column:e.editInsertEnd.column)-e.position.column,r=this.editor.getPosition().column-e.position.column,a=this._lineSuffix.value?this._lineSuffix.value.delta(this.editor.getPosition()):0;return{overwriteBefore:n+r,overwriteAfter:s+a}}_alertCompletionItem(e){if(Ps(e.completion.additionalTextEdits)){const t=m("aria.alert.snippet","Accepting '{0}' made {1} additional edits",e.textLabel,e.completion.additionalTextEdits.length);El(t)}}triggerSuggest(e,t,i){this.editor.hasModel()&&(this.model.trigger({auto:t??!1,completionOptions:{providerFilter:e,kindFilter:i?new Set:void 0}}),this.editor.revealPosition(this.editor.getPosition(),0),this.editor.focus())}triggerSuggestAndAcceptBest(e){if(!this.editor.hasModel())return;const t=this.editor.getPosition(),i=()=>{t.equals(this.editor.getPosition())&&this._commandService.executeCommand(e.fallback)},n=s=>{if(s.completion.insertTextRules&4||s.completion.additionalTextEdits)return!0;const r=this.editor.getPosition(),a=s.editStart.column,l=r.column;return l-a!==s.completion.insertText.length?!0:this.editor.getModel().getValueInRange({startLineNumber:r.lineNumber,startColumn:a,endLineNumber:r.lineNumber,endColumn:l})!==s.completion.insertText};J.once(this.model.onDidTrigger)(s=>{const r=[];J.any(this.model.onDidTrigger,this.model.onDidCancel)(()=>{xt(r),i()},void 0,r),this.model.onDidSuggest(({completionModel:a})=>{if(xt(r),a.items.length===0){i();return}const l=this._memoryService.select(this.editor.getModel(),this.editor.getPosition(),a.items),c=a.items[l];if(!n(c)){i();return}this.editor.pushUndoStop(),this._insertSuggestion({index:l,item:c,model:a},7)},void 0,r)}),this.model.trigger({auto:!1,shy:!0}),this.editor.revealPosition(t,0),this.editor.focus()}acceptSelectedSuggestion(e,t){const i=this.widget.value.getFocusedItem();let n=0;e&&(n|=4),t&&(n|=8),this._insertSuggestion(i,n)}acceptNextSuggestion(){this._alternatives.value.next()}acceptPrevSuggestion(){this._alternatives.value.prev()}cancelSuggestWidget(){this.model.cancel(),this.model.clear(),this.widget.value.hideWidget()}focusSuggestion(){this.widget.value.focusSelected()}selectNextSuggestion(){this.widget.value.selectNext()}selectNextPageSuggestion(){this.widget.value.selectNextPage()}selectLastSuggestion(){this.widget.value.selectLast()}selectPrevSuggestion(){this.widget.value.selectPrevious()}selectPrevPageSuggestion(){this.widget.value.selectPreviousPage()}selectFirstSuggestion(){this.widget.value.selectFirst()}toggleSuggestionDetails(){this.widget.value.toggleDetails()}toggleExplainMode(){this.widget.value.toggleExplainMode()}toggleSuggestionFocus(){this.widget.value.toggleDetailsFocus()}resetWidgetSize(){this.widget.value.resetPersistedSize()}forceRenderingAbove(){this.widget.value.forceRenderingAbove()}stopForceRenderingAbove(){this.widget.isInitialized&&this.widget.value.stopForceRenderingAbove()}registerSelector(e){return this._selectors.register(e)}},pN=Dh,Dh.ID="editor.contrib.suggestController",Dh);mr=pN=xue([Hu(1,YB),Hu(2,hi),Hu(3,De),Hu(4,ke),Hu(5,gs),Hu(6,$s)],mr);class Due{constructor(e){this.prioritySelector=e,this._items=new Array}register(e){if(this._items.indexOf(e)!==-1)throw new Error("Value is already registered");return this._items.push(e),this._items.sort((t,i)=>this.prioritySelector(i)-this.prioritySelector(t)),{dispose:()=>{const t=this._items.indexOf(e);t>=0&&this._items.splice(t,1)}}}get itemsOrderedByPriorityDesc(){return this._items}}const _0=class _0 extends bi{constructor(){super({id:_0.id,label:m("suggest.trigger.label","Trigger Suggest"),alias:"Trigger Suggest",precondition:re.and(K.writable,K.hasCompletionItemProvider,Ne.Visible.toNegated()),kbOpts:{kbExpr:K.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[521,2087]},weight:100}})}run(e,t,i){const n=mr.get(t);if(!n)return;let s;i&&typeof i=="object"&&i.auto===!0&&(s=!0),n.triggerSuggest(void 0,s,void 0)}};_0.id="editor.action.triggerSuggest";let _w=_0;Ho(mr.ID,mr,2);mi(_w);const Us=190,Pn=co.bindToContribution(mr.get);ge(new Pn({id:"acceptSelectedSuggestion",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion),handler(o){o.acceptSelectedSuggestion(!0,!1)},kbOpts:[{primary:2,kbExpr:re.and(Ne.Visible,K.textInputFocus),weight:Us},{primary:3,kbExpr:re.and(Ne.Visible,K.textInputFocus,Ne.AcceptSuggestionsOnEnter,Ne.MakesTextEdit),weight:Us}],menuOpts:[{menuId:bc,title:m("accept.insert","Insert"),group:"left",order:1,when:Ne.HasInsertAndReplaceRange.toNegated()},{menuId:bc,title:m("accept.insert","Insert"),group:"left",order:1,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("insert"))},{menuId:bc,title:m("accept.replace","Replace"),group:"left",order:1,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("replace"))}]}));ge(new Pn({id:"acceptAlternativeSelectedSuggestion",precondition:re.and(Ne.Visible,K.textInputFocus,Ne.HasFocusedSuggestion),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:1027,secondary:[1026]},handler(o){o.acceptSelectedSuggestion(!1,!0)},menuOpts:[{menuId:bc,group:"left",order:2,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("insert")),title:m("accept.replace","Replace")},{menuId:bc,group:"left",order:2,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("replace")),title:m("accept.insert","Insert")}]}));bt.registerCommandAlias("acceptSelectedSuggestionOnEnter","acceptSelectedSuggestion");ge(new Pn({id:"hideSuggestWidget",precondition:Ne.Visible,handler:o=>o.cancelSuggestWidget(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:9,secondary:[1033]}}));ge(new Pn({id:"selectNextSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectNextSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}}));ge(new Pn({id:"selectNextPageSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectNextPageSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:12,secondary:[2060]}}));ge(new Pn({id:"selectLastSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectLastSuggestion()}));ge(new Pn({id:"selectPrevSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectPrevSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}}));ge(new Pn({id:"selectPrevPageSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectPrevPageSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:11,secondary:[2059]}}));ge(new Pn({id:"selectFirstSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectFirstSuggestion()}));ge(new Pn({id:"focusSuggestion",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion.negate()),handler:o=>o.focusSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[2087]}}}));ge(new Pn({id:"focusAndAcceptSuggestion",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion.negate()),handler:o=>{o.focusSuggestion(),o.acceptSelectedSuggestion(!0,!1)}}));ge(new Pn({id:"toggleSuggestionDetails",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion),handler:o=>o.toggleSuggestionDetails(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[2087]}},menuOpts:[{menuId:bc,group:"right",order:1,when:re.and(Ne.DetailsVisible,Ne.CanResolve),title:m("detail.more","Show Less")},{menuId:bc,group:"right",order:1,when:re.and(Ne.DetailsVisible.toNegated(),Ne.CanResolve),title:m("detail.less","Show More")}]}));ge(new Pn({id:"toggleExplainMode",precondition:Ne.Visible,handler:o=>o.toggleExplainMode(),kbOpts:{weight:100,primary:2138}}));ge(new Pn({id:"toggleSuggestionFocus",precondition:Ne.Visible,handler:o=>o.toggleSuggestionFocus(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2570,mac:{primary:778}}}));ge(new Pn({id:"insertBestCompletion",precondition:re.and(K.textInputFocus,re.equals("config.editor.tabCompletion","on"),pw.AtEnd,Ne.Visible.toNegated(),Rg.OtherSuggestions.toNegated(),Mn.InSnippetMode.toNegated()),handler:(o,e)=>{o.triggerSuggestAndAcceptBest(Oi(e)?{fallback:"tab",...e}:{fallback:"tab"})},kbOpts:{weight:Us,primary:2}}));ge(new Pn({id:"insertNextSuggestion",precondition:re.and(K.textInputFocus,re.equals("config.editor.tabCompletion","on"),Rg.OtherSuggestions,Ne.Visible.toNegated(),Mn.InSnippetMode.toNegated()),handler:o=>o.acceptNextSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2}}));ge(new Pn({id:"insertPrevSuggestion",precondition:re.and(K.textInputFocus,re.equals("config.editor.tabCompletion","on"),Rg.OtherSuggestions,Ne.Visible.toNegated(),Mn.InSnippetMode.toNegated()),handler:o=>o.acceptPrevSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:1026}}));mi(class extends bi{constructor(){super({id:"editor.action.resetSuggestSize",label:m("suggest.reset.label","Reset Suggest Widget Size"),alias:"Reset Suggest Widget Size",precondition:void 0})}run(o,e){mr.get(e)?.resetWidgetSize()}});class Iue extends z{get selectedItem(){return this._currentSuggestItemInfo}constructor(e,t,i){super(),this.editor=e,this.suggestControllerPreselector=t,this.onWillAccept=i,this.isSuggestWidgetVisible=!1,this.isShiftKeyPressed=!1,this._isActive=!1,this._currentSuggestItemInfo=void 0,this._onDidSelectedItemChange=this._register(new A),this.onDidSelectedItemChange=this._onDidSelectedItemChange.event,this._register(e.onKeyDown(s=>{s.shiftKey&&!this.isShiftKeyPressed&&(this.isShiftKeyPressed=!0,this.update(this._isActive))})),this._register(e.onKeyUp(s=>{s.shiftKey&&this.isShiftKeyPressed&&(this.isShiftKeyPressed=!1,this.update(this._isActive))}));const n=mr.get(this.editor);if(n){this._register(n.registerSelector({priority:100,select:(a,l,c)=>{const d=this.editor.getModel();if(!d)return-1;const h=this.suggestControllerPreselector(),u=h?nh(h,d):void 0;if(!u)return-1;const f=P.lift(l),g=c.map((_,b)=>{const C=Sp.fromSuggestion(n,d,f,_,this.isShiftKeyPressed),w=nh(C.toSingleTextEdit(),d),v=UB(u,w);return{index:b,valid:v,prefixLength:w.text.length,suggestItem:_}}).filter(_=>_&&_.valid&&_.prefixLength>0),p=fT(g,rs(_=>_.prefixLength,ia));return p?p.index:-1}}));let s=!1;const r=()=>{s||(s=!0,this._register(n.widget.value.onDidShow(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})),this._register(n.widget.value.onDidHide(()=>{this.isSuggestWidgetVisible=!1,this.update(!1)})),this._register(n.widget.value.onDidFocus(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})))};this._register(J.once(n.model.onDidTrigger)(a=>{r()})),this._register(n.onWillInsertSuggestItem(a=>{const l=this.editor.getPosition(),c=this.editor.getModel();if(!l||!c)return;const d=Sp.fromSuggestion(n,c,l,a.item,this.isShiftKeyPressed);this.onWillAccept(d)}))}this.update(this._isActive)}update(e){const t=this.getSuggestItemInfo();(this._isActive!==e||!Eue(this._currentSuggestItemInfo,t))&&(this._isActive=e,this._currentSuggestItemInfo=t,this._onDidSelectedItemChange.fire())}getSuggestItemInfo(){const e=mr.get(this.editor);if(!e||!this.isSuggestWidgetVisible)return;const t=e.widget.value.getFocusedItem(),i=this.editor.getPosition(),n=this.editor.getModel();if(!(!t||!i||!n))return Sp.fromSuggestion(e,n,i,t.item,this.isShiftKeyPressed)}stopForceRenderingAbove(){mr.get(this.editor)?.stopForceRenderingAbove()}forceRenderingAbove(){mr.get(this.editor)?.forceRenderingAbove()}}class Sp{static fromSuggestion(e,t,i,n,s){let{insertText:r}=n.completion,a=!1;if(n.completion.insertTextRules&4){const c=new Mg().parse(r);c.children.length<100&&mw.adjustWhitespace(t,i,!0,c),r=c.toString(),a=!0}const l=e.getOverwriteInfo(n,s);return new Sp(I.fromPositions(i.delta(0,-l.overwriteBefore),i.delta(0,Math.max(l.overwriteAfter,0))),r,n.completion.kind,a)}constructor(e,t,i,n){this.range=e,this.insertText=t,this.completionItemKind=i,this.isSnippetText=n}equals(e){return this.range.equalsRange(e.range)&&this.insertText===e.insertText&&this.completionItemKind===e.completionItemKind&&this.isSnippetText===e.isSnippetText}toSelectedSuggestionInfo(){return new lF(this.range,this.insertText,this.completionItemKind,this.isSnippetText)}toSingleTextEdit(){return new fa(this.range,this.insertText)}}function Eue(o,e){return o===e?!0:!o||!e?!1:o.equals(e)}var Nue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Fa=function(o,e){return function(t,i){e(t,i,o)}},_N,Ih;let uo=(Ih=class extends z{static get(e){return e.getContribution(_N.ID)}constructor(e,t,i,n,s,r,a,l,c,d){super(),this.editor=e,this._instantiationService=t,this._contextKeyService=i,this._configurationService=n,this._commandService=s,this._debounceService=r,this._languageFeaturesService=a,this._accessibilitySignalService=l,this._keybindingService=c,this._accessibilityService=d,this._editorObs=Dg(this.editor),this._positions=Ce(this,u=>this._editorObs.selections.read(u)?.map(f=>f.getEndPosition())??[new P(1,1)]),this._suggestWidgetAdaptor=this._register(new Iue(this.editor,()=>(this._editorObs.forceUpdate(),this.model.get()?.selectedInlineCompletion.get()?.toSingleTextEdit(void 0)),u=>this._editorObs.forceUpdate(f=>{this.model.get()?.handleSuggestAccepted(u)}))),this._suggestWidgetSelectedItem=gt(this,u=>this._suggestWidgetAdaptor.onDidSelectedItemChange(()=>{this._editorObs.forceUpdate(f=>u(void 0))}),()=>this._suggestWidgetAdaptor.selectedItem),this._enabledInConfig=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).enabled),this._isScreenReaderEnabled=gt(this,this._accessibilityService.onDidChangeScreenReaderOptimized,()=>this._accessibilityService.isScreenReaderOptimized()),this._editorDictationInProgress=gt(this,this._contextKeyService.onDidChangeContext,()=>this._contextKeyService.getContext(this.editor.getDomNode()).getValue("editorDictation.inProgress")===!0),this._enabled=Ce(this,u=>this._enabledInConfig.read(u)&&(!this._isScreenReaderEnabled.read(u)||!this._editorDictationInProgress.read(u))),this._debounceValue=this._debounceService.for(this._languageFeaturesService.inlineCompletionsProvider,"InlineCompletionsDebounce",{min:50,max:50}),this.model=tr(this,u=>{if(this._editorObs.isReadonly.read(u))return;const f=this._editorObs.model.read(u);return f?this._instantiationService.createInstance(sN,f,this._suggestWidgetSelectedItem,this._editorObs.versionId,this._positions,this._debounceValue,gt(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(119).preview),gt(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(119).previewMode),gt(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).mode),this._enabled):void 0}).recomputeInitiallyAndOnChange(this._store),this._ghostTexts=Ce(this,u=>this.model.read(u)?.ghostTexts.read(u)??[]),this._stablizedGhostTexts=Tue(this._ghostTexts,this._store),this._ghostTextWidgets=jZ(this,this._stablizedGhostTexts,(u,f)=>f.add(this._instantiationService.createInstance(tN,this.editor,{ghostText:u,minReservedLineCount:wg(0),targetTextModel:this.model.map(g=>g?.textModel)}))).recomputeInitiallyAndOnChange(this._store),this._playAccessibilitySignal=Q_(this),this._fontFamily=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).fontFamily),this._register(new hs(this._contextKeyService,this.model)),this._register(JI(this._editorObs.onDidType,(u,f)=>{this._enabled.get()&&this.model.get()?.trigger()})),this._register(this._commandService.onDidExecuteCommand(u=>{new Set([fp.Tab.id,fp.DeleteLeft.id,fp.DeleteRight.id,dB,"acceptSelectedSuggestion"]).has(u.commandId)&&e.hasTextFocus()&&this._enabled.get()&&this._editorObs.forceUpdate(g=>{this.model.get()?.trigger(g)})})),this._register(JI(this._editorObs.selections,(u,f)=>{f.some(g=>g.reason===3||g.source==="api")&&this.model.get()?.stop()})),this._register(this.editor.onDidBlurEditorWidget(()=>{this._contextKeyService.getContextKeyValue("accessibleViewIsShown")||this._configurationService.getValue("editor.inlineSuggest.keepOnBlur")||e.getOption(62).keepOnBlur||Eg.dropDownVisible||Xt(u=>{this.model.get()?.stop(u)})})),this._register(We(u=>{const f=this.model.read(u)?.state.read(u);f?.suggestItem?f.primaryGhostText.lineCount>=2&&this._suggestWidgetAdaptor.forceRenderingAbove():this._suggestWidgetAdaptor.stopForceRenderingAbove()})),this._register(_e(()=>{this._suggestWidgetAdaptor.stopForceRenderingAbove()}));const h=YT(this,(u,f)=>{const p=this.model.read(u)?.state.read(u);return this._suggestWidgetSelectedItem.get()?f:p?.inlineCompletion?.semanticId});this._register(Nre(Ce(u=>(this._playAccessibilitySignal.read(u),h.read(u),{})),async(u,f,g)=>{const p=this.model.get(),_=p?.state.get();if(!_||!p)return;const b=p.textModel.getLineContent(_.primaryGhostText.lineNumber);await og(50,zM(g)),await k7(this._suggestWidgetSelectedItem,Es,()=>!1,zM(g)),await this._accessibilitySignalService.playSignal(rr.inlineSuggestion),this.editor.getOption(8)&&this._provideScreenReaderUpdate(_.primaryGhostText.renderForScreenReader(b))})),this._register(new SE(this.editor,this.model,this._instantiationService)),this._register(ghe(Ce(u=>{const f=this._fontFamily.read(u);return f===""||f==="default"?"":` +.monaco-editor .ghost-text-decoration, +.monaco-editor .ghost-text-decoration-preview, +.monaco-editor .ghost-text { + font-family: ${f}; +}`}))),this._register(this._configurationService.onDidChangeConfiguration(u=>{u.affectsConfiguration("accessibility.verbosity.inlineCompletions")&&this.editor.updateOptions({inlineCompletionsAccessibilityVerbose:this._configurationService.getValue("accessibility.verbosity.inlineCompletions")})})),this.editor.updateOptions({inlineCompletionsAccessibilityVerbose:this._configurationService.getValue("accessibility.verbosity.inlineCompletions")})}playAccessibilitySignal(e){this._playAccessibilitySignal.trigger(e)}_provideScreenReaderUpdate(e){const t=this._contextKeyService.getContextKeyValue("accessibleViewIsShown"),i=this._keybindingService.lookupKeybinding("editor.action.accessibleView");let n;!t&&i&&this.editor.getOption(150)&&(n=m("showAccessibleViewHint","Inspect this in the accessible view ({0})",i.getAriaLabel())),El(n?e+", "+n:e)}shouldShowHoverAt(e){const t=this.model.get()?.primaryGhostText.get();return t?t.parts.some(i=>e.containsPosition(new P(t.lineNumber,i.column))):!1}shouldShowHoverAtViewZone(e){return this._ghostTextWidgets.get()[0]?.ownsViewZone(e)??!1}},_N=Ih,Ih.ID="editor.contrib.inlineCompletionsController",Ih);uo=_N=Nue([Fa(1,ke),Fa(2,De),Fa(3,lt),Fa(4,hi),Fa(5,q0),Fa(6,Se),Fa(7,rb),Fa(8,vt),Fa(9,ms)],uo);function Tue(o,e){const t=Ge("result",[]),i=[];return e.add(We(n=>{const s=o.read(n);Xt(r=>{if(s.length!==i.length){i.length=s.length;for(let a=0;aa.set(s[l],r))})})),t}const b0=class b0 extends bi{constructor(){super({id:b0.ID,label:m("action.inlineSuggest.showNext","Show Next Inline Suggestion"),alias:"Show Next Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:100,primary:606}})}async run(e,t){uo.get(t)?.model.get()?.next()}};b0.ID=uB;let bN=b0;const C0=class C0 extends bi{constructor(){super({id:C0.ID,label:m("action.inlineSuggest.showPrevious","Show Previous Inline Suggestion"),alias:"Show Previous Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:100,primary:604}})}async run(e,t){uo.get(t)?.model.get()?.previous()}};C0.ID=hB;let CN=C0;class Mue extends bi{constructor(){super({id:"editor.action.inlineSuggest.trigger",label:m("action.inlineSuggest.trigger","Trigger Inline Suggestion"),alias:"Trigger Inline Suggestion",precondition:K.writable})}async run(e,t){const i=uo.get(t);await BZ(async n=>{await i?.model.get()?.triggerExplicitly(n),i?.playAccessibilitySignal(n)})}}class Rue extends bi{constructor(){super({id:"editor.action.inlineSuggest.acceptNextWord",label:m("action.inlineSuggest.acceptNextWord","Accept Next Word Of Inline Suggestion"),alias:"Accept Next Word Of Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:101,primary:2065,kbExpr:re.and(K.writable,hs.inlineSuggestionVisible)},menuOpts:[{menuId:$e.InlineSuggestionToolbar,title:m("acceptWord","Accept Word"),group:"primary",order:2}]})}async run(e,t){const i=uo.get(t);await i?.model.get()?.acceptNextWord(i.editor)}}class Aue extends bi{constructor(){super({id:"editor.action.inlineSuggest.acceptNextLine",label:m("action.inlineSuggest.acceptNextLine","Accept Next Line Of Inline Suggestion"),alias:"Accept Next Line Of Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:101},menuOpts:[{menuId:$e.InlineSuggestionToolbar,title:m("acceptLine","Accept Line"),group:"secondary",order:2}]})}async run(e,t){const i=uo.get(t);await i?.model.get()?.acceptNextLine(i.editor)}}class Pue extends bi{constructor(){super({id:dB,label:m("action.inlineSuggest.accept","Accept Inline Suggestion"),alias:"Accept Inline Suggestion",precondition:hs.inlineSuggestionVisible,menuOpts:[{menuId:$e.InlineSuggestionToolbar,title:m("accept","Accept"),group:"primary",order:1}],kbOpts:{primary:2,weight:200,kbExpr:re.and(hs.inlineSuggestionVisible,K.tabMovesFocus.toNegated(),hs.inlineSuggestionHasIndentationLessThanTabSize,Ne.Visible.toNegated(),K.hoverFocused.toNegated())}})}async run(e,t){const i=uo.get(t);i&&(i.model.get()?.accept(i.editor),i.editor.focus())}}const v0=class v0 extends bi{constructor(){super({id:v0.ID,label:m("action.inlineSuggest.hide","Hide Inline Suggestion"),alias:"Hide Inline Suggestion",precondition:hs.inlineSuggestionVisible,kbOpts:{weight:100,primary:9}})}async run(e,t){const i=uo.get(t);Xt(n=>{i?.model.get()?.stop(n)})}};v0.ID="editor.action.inlineSuggest.hide";let vN=v0;const w0=class w0 extends nu{constructor(){super({id:w0.ID,title:m("action.inlineSuggest.alwaysShowToolbar","Always Show Toolbar"),f1:!1,precondition:void 0,menu:[{id:$e.InlineSuggestionToolbar,group:"secondary",order:10}],toggled:re.equals("config.editor.inlineSuggest.showToolbar","always")})}async run(e,t){const i=e.get(lt),s=i.getValue("editor.inlineSuggest.showToolbar")==="always"?"onHover":"always";i.updateValue("editor.inlineSuggest.showToolbar",s)}};w0.ID="editor.action.inlineSuggest.toggleAlwaysShowToolbar";let wN=w0;var Oue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},xm=function(o,e){return function(t,i){e(t,i,o)}};class Fue{constructor(e,t,i){this.owner=e,this.range=t,this.controller=i}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}let yN=class{constructor(e,t,i,n,s,r){this._editor=e,this._languageService=t,this._openerService=i,this.accessibilityService=n,this._instantiationService=s,this._telemetryService=r,this.hoverOrdinal=4}suggestHoverAnchor(e){const t=uo.get(this._editor);if(!t)return null;const i=e.target;if(i.type===8){const n=i.detail;if(t.shouldShowHoverAtViewZone(n.viewZoneId))return new Q1(1e3,this,I.fromPositions(this._editor.getModel().validatePosition(n.positionBefore||n.position)),e.event.posx,e.event.posy,!1)}return i.type===7&&t.shouldShowHoverAt(i.range)?new Q1(1e3,this,i.range,e.event.posx,e.event.posy,!1):i.type===6&&i.detail.mightBeForeignElement&&t.shouldShowHoverAt(i.range)?new Q1(1e3,this,i.range,e.event.posx,e.event.posy,!1):null}computeSync(e,t){if(this._editor.getOption(62).showToolbar!=="onHover")return[];const i=uo.get(this._editor);return i&&i.shouldShowHoverAt(e.range)?[new Fue(this,e.range,i)]:[]}renderHoverParts(e,t){const i=new X,n=t[0];this._telemetryService.publicLog2("inlineCompletionHover.shown"),this.accessibilityService.isScreenReaderOptimized()&&!this._editor.getOption(8)&&i.add(this.renderScreenReaderText(e,n));const s=n.controller.model.get(),r=this._instantiationService.createInstance(Eg,this._editor,!1,wg(null),s.selectedInlineCompletionIndex,s.inlineCompletionsCount,s.activeCommands),a=r.getDomNode();e.fragment.appendChild(a),s.triggerExplicitly(),i.add(r);const l={hoverPart:n,hoverElement:a,dispose(){i.dispose()}};return new Ng([l])}renderScreenReaderText(e,t){const i=new X,n=ce,s=n("div.hover-row.markdown-hover"),r=Z(s,n("div.hover-contents",{"aria-live":"assertive"})),a=i.add(new Wh({editor:this._editor},this._languageService,this._openerService)),l=c=>{i.add(a.onDidRenderAsync(()=>{r.className="hover-contents code-hover-contents",e.onContentsChanged()}));const d=m("inlineSuggestionFollows","Suggestion:"),h=i.add(a.render(new Js().appendText(d).appendCodeblock("text",c)));r.replaceChildren(h.element)};return i.add(We(c=>{const d=t.controller.model.read(c)?.primaryGhostText.read(c);if(d){const h=this._editor.getModel().getLineContent(d.lineNumber);l(d.renderForScreenReader(h))}else un(r)})),e.fragment.appendChild(s),i}};yN=Oue([xm(1,qt),xm(2,Vo),xm(3,ms),xm(4,ke),xm(5,$s)],yN);class Bue{}Ho(uo.ID,uo,3);mi(Mue);mi(bN);mi(CN);mi(Rue);mi(Aue);mi(Pue);mi(vN);Rn(wN);Oy.register(yN);By.register(new Bue);export{Dge as M,kge as R,Ige as e,Ege as l}; diff --git a/deploy/online-shop/index.html b/deploy/online-shop/index.html new file mode 100644 index 00000000..22a1451c --- /dev/null +++ b/deploy/online-shop/index.html @@ -0,0 +1,21 @@ + + + + + + + + + DFD WebEditor + + + + + + + + +
    + + diff --git a/frontend/webEditor/src/serialize/loadDefaultDiagram.ts b/frontend/webEditor/src/serialize/loadDefaultDiagram.ts index 83672cda..0b74e60b 100644 --- a/frontend/webEditor/src/serialize/loadDefaultDiagram.ts +++ b/frontend/webEditor/src/serialize/loadDefaultDiagram.ts @@ -45,7 +45,7 @@ export class LoadDefaultDiagramCommand extends LoadJsonCommand { } protected async getFile(): Promise | undefined> { - return this.loadDAC(); + return this.loadOnlineShop(); } protected async loadOnlineShop() { From 2746bd6dd175331aa8a77617eb1a2f88a56d3673 Mon Sep 17 00:00:00 2001 From: dalu-wins Date: Sun, 8 Mar 2026 16:20:10 +0100 Subject: [PATCH 09/19] fix: make frontend display information from updated backend & simplify ui --- frontend/package-lock.json | 6 + .../webEditor/src/serialize/SavedDiagram.ts | 6 +- .../webEditor/src/violationUi/Violation.ts | 6 + .../src/violationUi/violationService.ts | 2 +- .../webEditor/src/violationUi/violationUi.css | 116 +++++------------- .../webEditor/src/violationUi/violationUi.ts | 78 ++++-------- 6 files changed, 64 insertions(+), 150 deletions(-) create mode 100644 frontend/package-lock.json create mode 100644 frontend/webEditor/src/violationUi/Violation.ts diff --git a/frontend/package-lock.json b/frontend/package-lock.json new file mode 100644 index 00000000..aba25f73 --- /dev/null +++ b/frontend/package-lock.json @@ -0,0 +1,6 @@ +{ + "name": "frontend", + "lockfileVersion": 3, + "requires": true, + "packages": {} +} diff --git a/frontend/webEditor/src/serialize/SavedDiagram.ts b/frontend/webEditor/src/serialize/SavedDiagram.ts index 36aea538..7979c5d5 100644 --- a/frontend/webEditor/src/serialize/SavedDiagram.ts +++ b/frontend/webEditor/src/serialize/SavedDiagram.ts @@ -2,6 +2,7 @@ import { SModelRoot } from "sprotty-protocol"; import { Constraint } from "../constraint/Constraint"; import { LabelType } from "../labels/LabelType"; import { EditorMode } from "../settings/editorMode"; +import { Violation } from "../violationUi/Violation"; export interface SavedDiagram { model: SModelRoot; @@ -12,8 +13,3 @@ export interface SavedDiagram { violations?: Violation[]; } export const CURRENT_VERSION = 1; - -export interface Violation { - constraint: string; // Der verletzte Constraint - violationCauseGraph: string[]; // Pfad der Verletzung -} diff --git a/frontend/webEditor/src/violationUi/Violation.ts b/frontend/webEditor/src/violationUi/Violation.ts new file mode 100644 index 00000000..573feb32 --- /dev/null +++ b/frontend/webEditor/src/violationUi/Violation.ts @@ -0,0 +1,6 @@ +export interface Violation { + constraint: string; + tfg: string; + violatedVertices: string; + inducingVertices: string; +} \ No newline at end of file diff --git a/frontend/webEditor/src/violationUi/violationService.ts b/frontend/webEditor/src/violationUi/violationService.ts index 83f4e605..47d9d037 100644 --- a/frontend/webEditor/src/violationUi/violationService.ts +++ b/frontend/webEditor/src/violationUi/violationService.ts @@ -1,5 +1,5 @@ import { injectable } from "inversify"; -import { Violation } from "../serialize/SavedDiagram"; +import { Violation } from "./Violation"; @injectable() export class ViolationService { diff --git a/frontend/webEditor/src/violationUi/violationUi.css b/frontend/webEditor/src/violationUi/violationUi.css index 03878114..051c23e1 100644 --- a/frontend/webEditor/src/violationUi/violationUi.css +++ b/frontend/webEditor/src/violationUi/violationUi.css @@ -1,104 +1,50 @@ .violation-ui { right: 20px; bottom: 70px; - padding: 10px 10px; - + padding: 10px; max-width: 30vw; + overflow: hidden; - .tab-pane { - display: none; - font-size: 13px; - max-width: 100%; - } - - .tab-pane.active { + .violation-content { + width: 100%; display: block; } - .violation-tabs { - display: flex; - margin-bottom: 10px; - } - - .tab-btn { - flex: 1; - padding: 5px; - cursor: pointer; - border: none; - background: none; - font-size: 12px; - color: var(--sprotty-label-color); - } - - .tab-btn.active { - border-bottom: 2px solid #007acc; - font-weight: bold; + .summary-text { + width: 100%; + max-height: 250px; + overflow-y: auto; + overflow-x: hidden; } - #ai-api-key { - background-color: var(--color-background); - color: var(--color-foreground); - border: 1px solid var(--color-foreground); - border-radius: 6px; + .violation-list { + width: 100%; } - .api-key-container { - display: grid; - grid-template-columns: auto 1fr; - align-items: center; - gap: 10px; - margin-bottom: 15px; - padding: 5px; - - label { - font-size: 11px; - font-weight: bold; - white-space: nowrap; - } - - input { - width: 100%; - padding: 4px 8px; - font-size: 12px; - border: 1px solid var(--color-foreground); - border-radius: 3px; - background: var(--sprotty-input-background, var(--color-background)); - color: var(--sprotty-label-color); - box-sizing: border-box; - } + .violation-item { + padding: 12px 0; + border-bottom: 1px solid rgba(255, 255, 255, 0.1); + width: 100%; } - .button-container { - display: flex; - justify-content: flex-end; - margin-bottom: 20px; + .violation-table { + width: 100%; + table-layout: auto; + border-collapse: collapse; } - .generate-btn { - background-color: var(--sprotty-button-background, #007acc); - color: var(--sprotty-button-foreground, #ffffff); - border: none; - padding: 6px 12px; + .violation-table td { + padding: 4px 8px; + vertical-align: top; font-size: 12px; - border-radius: 4px; - cursor: pointer; - } - - .summary-text { - width: 100%; - display: block; - white-space: normal; - word-wrap: break-word; + word-break: break-all; overflow-wrap: anywhere; - max-height: 250px; - overflow-y: auto; + white-space: normal; } - .summary-text p { - margin: 0; - display: block; - width: 100%; - white-space: normal; + .violation-table td:first-child { + font-weight: bold; + color: var(--sprotty-label-color); } .status-info { @@ -113,10 +59,4 @@ box-sizing: border-box; margin: 0 auto; } - - .violation-item { - padding: 8px 0; - border-bottom: 1px solid rgba(255, 255, 255, 0.1); - text-align: left; /* Die Items selbst wieder linksbündig */ - } -} +} \ No newline at end of file diff --git a/frontend/webEditor/src/violationUi/violationUi.ts b/frontend/webEditor/src/violationUi/violationUi.ts index aeb54e9b..5bfb81dd 100644 --- a/frontend/webEditor/src/violationUi/violationUi.ts +++ b/frontend/webEditor/src/violationUi/violationUi.ts @@ -2,7 +2,7 @@ import { injectable, inject } from "inversify"; import { ViolationService } from "./violationService"; import "./violationUi.css"; import { AccordionUiExtension } from "../accordionUiExtension"; -import { Violation } from "../serialize/SavedDiagram"; +import { Violation } from "./Violation"; @injectable() export class ViolationUI extends AccordionUiExtension { @@ -26,34 +26,13 @@ export class ViolationUI extends AccordionUiExtension { protected initializeHidableContent(contentElement: HTMLElement) { contentElement.innerHTML = ` -
    - - -
    -
    -
    -

    - No violation data found. Run a Analysis first. -

    -
    -
    - -
    +

    - No violation data found. Run a Analysis first, then enter your API key to generate an AI summary. + No violation data found. Run an Analysis first.

    -
    - - -
    -
    - -
    `; @@ -61,34 +40,6 @@ export class ViolationUI extends AccordionUiExtension { this.violationService.onViolationsChanged((violations) => { this.updateSimpleTab(contentElement, violations); }); - - this.setupTabLogic(contentElement); - this.setupGenerateLogic(contentElement); - } - - private setupGenerateLogic(container: HTMLElement) { - const generateBtn = container.querySelector("#generate-btn") as HTMLButtonElement; - - generateBtn.addEventListener("click", () => { - // Hier Logik für AI Call - }); - } - - private setupTabLogic(container: HTMLElement) { - const buttons = container.querySelectorAll(".tab-btn"); - const panes = container.querySelectorAll(".tab-pane"); - - buttons.forEach((btn) => { - btn.addEventListener("click", () => { - const target = btn.getAttribute("data-tab"); - - buttons.forEach((b) => b.classList.remove("active")); - panes.forEach((p) => p.classList.remove("active")); - - btn.classList.add("active"); - container.querySelector(`#${target}-summary`)?.classList.add("active"); - }); - }); } private updateSimpleTab(container: HTMLElement, violations: Violation[]) { @@ -104,16 +55,31 @@ export class ViolationUI extends AccordionUiExtension { .map( (v) => `
    - Violated constraint: ${v.constraint}
    - Flow of violation cause : ${v.violationCauseGraph.join(", ")} + + + + + + + + + + + + + + + + + +
    Constraint${v.constraint}
    Violation in${v.violatedVertices}
    Induced by${v.inducingVertices}
    Flow Cause${v.tfg}
    `, ) .join(""); simplePane.innerHTML = ` -
    Found ${violations.length} issues:
    ${listItems}
    `; } -} +} \ No newline at end of file From d84392953179c1c5f887af31d56eab0c0746da50 Mon Sep 17 00:00:00 2001 From: dalu-wins Date: Sun, 8 Mar 2026 22:57:35 +0100 Subject: [PATCH 10/19] fix: added files to make backend product buildable with changes made to DataflowAnalysis repo --- .../META-INF/MANIFEST.MF | 14 +++--- .../org.dataflowanalysis.standalone/pom.xml | 12 +++++ backend/analysisBackendServer/bundles/pom.xml | 15 ++++++ .../feature.xml | 2 +- .../pom.xml | 12 +++++ .../analysisBackendServer/features/pom.xml | 15 ++++++ .../org.dataflowanalysis.standalone.product | 50 +++++++++++++++++++ .../pom.xml | 44 ++++++++++++++++ ...alone.targetplatform.targetplatform.target | 11 ++-- .../pom.xml | 12 +++++ .../pom.xml | 12 +++++ backend/analysisBackendServer/releng/pom.xml | 17 +++++++ frontend/webEditor/src/webSocket/webSocket.ts | 2 +- 13 files changed, 205 insertions(+), 13 deletions(-) create mode 100644 backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/pom.xml create mode 100644 backend/analysisBackendServer/bundles/pom.xml create mode 100644 backend/analysisBackendServer/features/org.dataflowanalysis.standalone.feature/pom.xml create mode 100644 backend/analysisBackendServer/features/pom.xml create mode 100644 backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.product/org.dataflowanalysis.standalone.product create mode 100644 backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.product/pom.xml create mode 100644 backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.targetplatform/pom.xml create mode 100644 backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.updatesite/pom.xml create mode 100644 backend/analysisBackendServer/releng/pom.xml diff --git a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/META-INF/MANIFEST.MF b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/META-INF/MANIFEST.MF index 7dc618d1..530a84b9 100644 --- a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/META-INF/MANIFEST.MF +++ b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/META-INF/MANIFEST.MF @@ -2,9 +2,9 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: org.dataflowanalysis.standalone Bundle-SymbolicName: org.dataflowanalysis.standalone;singleton:=true -Bundle-Version: 1.0.0.qualifier -Require-Bundle: org.dataflowanalysis.dfd.datadictionary;bundle-version="2.0.0", - org.dataflowanalysis.dfd.dataflowdiagram;bundle-version="2.0.0", +Bundle-Version: 3.0.0.qualifier +Require-Bundle: org.dataflowanalysis.dfd.datadictionary, + org.dataflowanalysis.dfd.dataflowdiagram, org.eclipse.jetty.websocket.server;bundle-version="11.0.24", org.eclipse.jetty.servlet;bundle-version="11.0.24", org.eclipse.jetty.http;bundle-version="11.0.24", @@ -19,10 +19,10 @@ Require-Bundle: org.dataflowanalysis.dfd.datadictionary;bundle-version="2.0.0", org.eclipse.jetty.websocket.common;bundle-version="11.0.24", org.eclipse.jetty.websocket.servlet;bundle-version="11.0.24", org.slf4j.api;bundle-version="1.7.30", - org.dataflowanalysis.analysis;bundle-version="3.0.0", - org.dataflowanalysis.analysis.dfd;bundle-version="3.0.0", - org.dataflowanalysis.converter;bundle-version="3.0.0", - org.dataflowanalysis.pcm.extension.nodecharacteristics;bundle-version="0.1.0", + org.dataflowanalysis.analysis, + org.dataflowanalysis.analysis.dfd, + org.dataflowanalysis.converter, + org.dataflowanalysis.pcm.extension.nodecharacteristics, org.dataflowanalysis.analysis.pcm, org.palladiosimulator.commons.stoex;bundle-version="5.2.1", de.uka.ipd.sdq.stoex.analyser;bundle-version="5.2.1", diff --git a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/pom.xml b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/pom.xml new file mode 100644 index 00000000..c9fafa42 --- /dev/null +++ b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/pom.xml @@ -0,0 +1,12 @@ + + + 4.0.0 + + org.dataflowanalysis.standalone + bundles-parent + 3.0.0-SNAPSHOT + ../pom.xml + + org.dataflowanalysis.standalone + eclipse-plugin + diff --git a/backend/analysisBackendServer/bundles/pom.xml b/backend/analysisBackendServer/bundles/pom.xml new file mode 100644 index 00000000..947a1a58 --- /dev/null +++ b/backend/analysisBackendServer/bundles/pom.xml @@ -0,0 +1,15 @@ + + + 4.0.0 + + org.dataflowanalysis.standalone + parent + 3.0.0-SNAPSHOT + ../pom.xml + + bundles-parent + pom + + org.dataflowanalysis.standalone + + diff --git a/backend/analysisBackendServer/features/org.dataflowanalysis.standalone.feature/feature.xml b/backend/analysisBackendServer/features/org.dataflowanalysis.standalone.feature/feature.xml index b0c99572..0f2bebd7 100644 --- a/backend/analysisBackendServer/features/org.dataflowanalysis.standalone.feature/feature.xml +++ b/backend/analysisBackendServer/features/org.dataflowanalysis.standalone.feature/feature.xml @@ -2,7 +2,7 @@ + + 4.0.0 + + org.dataflowanalysis.standalone + features-parent + 3.0.0-SNAPSHOT + ../pom.xml + + org.dataflowanalysis.standalone.feature + eclipse-feature + diff --git a/backend/analysisBackendServer/features/pom.xml b/backend/analysisBackendServer/features/pom.xml new file mode 100644 index 00000000..8b65d3ba --- /dev/null +++ b/backend/analysisBackendServer/features/pom.xml @@ -0,0 +1,15 @@ + + + 4.0.0 + + org.dataflowanalysis.standalone + parent + 3.0.0-SNAPSHOT + ../pom.xml + + features-parent + pom + + org.dataflowanalysis.standalone.feature + + diff --git a/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.product/org.dataflowanalysis.standalone.product b/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.product/org.dataflowanalysis.standalone.product new file mode 100644 index 00000000..9836cc01 --- /dev/null +++ b/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.product/org.dataflowanalysis.standalone.product @@ -0,0 +1,50 @@ + + + + + + + + + -XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.product/pom.xml b/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.product/pom.xml new file mode 100644 index 00000000..57e8b849 --- /dev/null +++ b/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.product/pom.xml @@ -0,0 +1,44 @@ + + + 4.0.0 + + org.dataflowanalysis.standalone + releng-parent + 3.0.0-SNAPSHOT + ../pom.xml + + org.dataflowanalysis.standalone.product + eclipse-repository + + + + + org.eclipse.tycho + tycho-p2-director-plugin + ${tycho.version} + + + materialize-products + + materialize-products + + + + archive-products + + archive-products + + + + + + + org.dataflowanalysis.standalone.product + standalone-dfa-server + + + + + + + diff --git a/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.targetplatform/org.dataflowanalysis.standalone.targetplatform.targetplatform.target b/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.targetplatform/org.dataflowanalysis.standalone.targetplatform.targetplatform.target index b738025e..7cb04a7d 100644 --- a/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.targetplatform/org.dataflowanalysis.standalone.targetplatform.targetplatform.target +++ b/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.targetplatform/org.dataflowanalysis.standalone.targetplatform.targetplatform.target @@ -2,6 +2,11 @@ + + + + + @@ -144,10 +149,8 @@ - - - - + + diff --git a/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.targetplatform/pom.xml b/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.targetplatform/pom.xml new file mode 100644 index 00000000..0c98b370 --- /dev/null +++ b/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.targetplatform/pom.xml @@ -0,0 +1,12 @@ + + + 4.0.0 + + org.dataflowanalysis.standalone + releng-parent + 3.0.0-SNAPSHOT + ../pom.xml + + org.dataflowanalysis.standalone.targetplatform + eclipse-target-definition + diff --git a/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.updatesite/pom.xml b/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.updatesite/pom.xml new file mode 100644 index 00000000..9680cdb7 --- /dev/null +++ b/backend/analysisBackendServer/releng/org.dataflowanalysis.standalone.updatesite/pom.xml @@ -0,0 +1,12 @@ + + + 4.0.0 + + org.dataflowanalysis.standalone + releng-parent + 3.0.0-SNAPSHOT + ../pom.xml + + org.dataflowanalysis.standalone.updatesite + eclipse-repository + diff --git a/backend/analysisBackendServer/releng/pom.xml b/backend/analysisBackendServer/releng/pom.xml new file mode 100644 index 00000000..60d93f45 --- /dev/null +++ b/backend/analysisBackendServer/releng/pom.xml @@ -0,0 +1,17 @@ + + + 4.0.0 + + org.dataflowanalysis.standalone + parent + 3.0.0-SNAPSHOT + ../pom.xml + + releng-parent + pom + + org.dataflowanalysis.standalone.targetplatform + org.dataflowanalysis.standalone.updatesite + org.dataflowanalysis.standalone.product + + diff --git a/frontend/webEditor/src/webSocket/webSocket.ts b/frontend/webEditor/src/webSocket/webSocket.ts index 2fc4e5d1..70cae632 100644 --- a/frontend/webEditor/src/webSocket/webSocket.ts +++ b/frontend/webEditor/src/webSocket/webSocket.ts @@ -10,7 +10,7 @@ export class DfdWebSocket { resolve?: (v: string) => void; reject?: (e: Error) => void; } = {}; - private static readonly WS_URL = "ws://localhost:3000/events/"; + private static readonly WS_URL = "wss://xdecaf.dalu-wins.de/websocket"; constructor( @inject(TYPES.ILogger) private readonly logger: ILogger, From 1a9b98bc87e253bdd5ac379fd88229759ac6b09a Mon Sep 17 00:00:00 2001 From: dalu-wins Date: Sun, 8 Mar 2026 23:04:10 +0100 Subject: [PATCH 11/19] fix: dont wrap words in first summary column --- frontend/webEditor/src/violationUi/violationUi.css | 1 + 1 file changed, 1 insertion(+) diff --git a/frontend/webEditor/src/violationUi/violationUi.css b/frontend/webEditor/src/violationUi/violationUi.css index 051c23e1..7212793d 100644 --- a/frontend/webEditor/src/violationUi/violationUi.css +++ b/frontend/webEditor/src/violationUi/violationUi.css @@ -45,6 +45,7 @@ .violation-table td:first-child { font-weight: bold; color: var(--sprotty-label-color); + white-space: nowrap; } .status-info { From 2fcabc3731db46b9672642159bad1887df0d025c Mon Sep 17 00:00:00 2001 From: dalu-wins Date: Sun, 8 Mar 2026 23:15:51 +0100 Subject: [PATCH 12/19] fix: remove extra diagram as you can load them via parameter in url --- .../defaultDiagram.json} | 0 .../src/serialize/loadDefaultDiagram.ts | 17 +++-------------- 2 files changed, 3 insertions(+), 14 deletions(-) rename frontend/webEditor/src/{diagrams/shopDiagram.json => serialize/defaultDiagram.json} (100%) diff --git a/frontend/webEditor/src/diagrams/shopDiagram.json b/frontend/webEditor/src/serialize/defaultDiagram.json similarity index 100% rename from frontend/webEditor/src/diagrams/shopDiagram.json rename to frontend/webEditor/src/serialize/defaultDiagram.json diff --git a/frontend/webEditor/src/serialize/loadDefaultDiagram.ts b/frontend/webEditor/src/serialize/loadDefaultDiagram.ts index 0b74e60b..4152909d 100644 --- a/frontend/webEditor/src/serialize/loadDefaultDiagram.ts +++ b/frontend/webEditor/src/serialize/loadDefaultDiagram.ts @@ -1,7 +1,6 @@ import { FileData, LoadJsonCommand } from "./loadJson"; -import shopDiagram from "../diagrams/shopDiagram.json"; -import dacDiagram from "../diagrams/dacDiagram.json"; import { SavedDiagram } from "./SavedDiagram"; +import defaultDiagram from "./defaultDiagram.json" import { Action } from "sprotty-protocol"; import { inject } from "inversify"; import { TYPES, ILogger, ActionDispatcher } from "sprotty"; @@ -45,20 +44,10 @@ export class LoadDefaultDiagramCommand extends LoadJsonCommand { } protected async getFile(): Promise | undefined> { - return this.loadOnlineShop(); - } - - protected async loadOnlineShop() { return { - fileName: "online-shop", - content: shopDiagram as SavedDiagram, + fileName: "Online Shop", + content: defaultDiagram as SavedDiagram, }; } - protected async loadDAC() { - return { - fileName: "dac", - content: dacDiagram as SavedDiagram, - }; - } } From 6af2de4d646a1b5b7552d7d72110f6cd4b66cae9 Mon Sep 17 00:00:00 2001 From: dalu-wins Date: Sun, 8 Mar 2026 23:20:25 +0100 Subject: [PATCH 13/19] fix: remove deploy as it should not be on github --- deploy/dac/assets/codicon-BYm2YbZ6.ttf | Bin 123192 -> 0 bytes deploy/dac/assets/codicon-DCmgc-ay.ttf | Bin 80340 -> 0 bytes .../dac/assets/fa-brands-400-BfBXV7Mm.woff2 | Bin 101224 -> 0 bytes .../dac/assets/fa-regular-400-BVHPE7da.woff2 | Bin 18988 -> 0 bytes deploy/dac/assets/fa-solid-900-8GirhLYJ.woff2 | Bin 113152 -> 0 bytes deploy/dac/assets/index-CX3bR72r.css | 1 - deploy/dac/assets/index-jxDt6WCR.js | 120 ---- deploy/dac/assets/monaco-editor-B8Nwu8CH.css | 1 - deploy/dac/assets/monaco-editor-BSmz0_Ko.js | 676 ------------------ deploy/dac/index.html | 21 - .../online-shop/assets/codicon-BYm2YbZ6.ttf | Bin 123192 -> 0 bytes .../online-shop/assets/codicon-DCmgc-ay.ttf | Bin 80340 -> 0 bytes .../assets/fa-brands-400-BfBXV7Mm.woff2 | Bin 101224 -> 0 bytes .../assets/fa-regular-400-BVHPE7da.woff2 | Bin 18988 -> 0 bytes .../assets/fa-solid-900-8GirhLYJ.woff2 | Bin 113152 -> 0 bytes deploy/online-shop/assets/index-BshKduTm.js | 120 ---- deploy/online-shop/assets/index-CX3bR72r.css | 1 - .../assets/monaco-editor-B8Nwu8CH.css | 1 - .../assets/monaco-editor-BSmz0_Ko.js | 676 ------------------ deploy/online-shop/index.html | 21 - 20 files changed, 1638 deletions(-) delete mode 100644 deploy/dac/assets/codicon-BYm2YbZ6.ttf delete mode 100644 deploy/dac/assets/codicon-DCmgc-ay.ttf delete mode 100644 deploy/dac/assets/fa-brands-400-BfBXV7Mm.woff2 delete mode 100644 deploy/dac/assets/fa-regular-400-BVHPE7da.woff2 delete mode 100644 deploy/dac/assets/fa-solid-900-8GirhLYJ.woff2 delete mode 100644 deploy/dac/assets/index-CX3bR72r.css delete mode 100644 deploy/dac/assets/index-jxDt6WCR.js delete mode 100644 deploy/dac/assets/monaco-editor-B8Nwu8CH.css delete mode 100644 deploy/dac/assets/monaco-editor-BSmz0_Ko.js delete mode 100644 deploy/dac/index.html delete mode 100644 deploy/online-shop/assets/codicon-BYm2YbZ6.ttf delete mode 100644 deploy/online-shop/assets/codicon-DCmgc-ay.ttf delete mode 100644 deploy/online-shop/assets/fa-brands-400-BfBXV7Mm.woff2 delete mode 100644 deploy/online-shop/assets/fa-regular-400-BVHPE7da.woff2 delete mode 100644 deploy/online-shop/assets/fa-solid-900-8GirhLYJ.woff2 delete mode 100644 deploy/online-shop/assets/index-BshKduTm.js delete mode 100644 deploy/online-shop/assets/index-CX3bR72r.css delete mode 100644 deploy/online-shop/assets/monaco-editor-B8Nwu8CH.css delete mode 100644 deploy/online-shop/assets/monaco-editor-BSmz0_Ko.js delete mode 100644 deploy/online-shop/index.html diff --git a/deploy/dac/assets/codicon-BYm2YbZ6.ttf b/deploy/dac/assets/codicon-BYm2YbZ6.ttf deleted file mode 100644 index 6fdfc3fa0b4e45dd90a3022f55e7137b88e47efa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123192 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 diff --git a/deploy/dac/assets/codicon-DCmgc-ay.ttf b/deploy/dac/assets/codicon-DCmgc-ay.ttf deleted file mode 100644 index 27ee4c68caef1cd22342f481420d6dbda1648012..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 80340 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%0DOF`LEiy*`&i@0 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 UoXQ~{PVi#Rf4#j20|Nj60P(lx`2YX_ diff --git a/deploy/dac/assets/fa-regular-400-BVHPE7da.woff2 b/deploy/dac/assets/fa-regular-400-BVHPE7da.woff2 deleted file mode 100644 index 2eca12b0e7b540394a3349830e5d722ed53d2992..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18988 zcmV)0K+eB+Pew9NR8&s@07@(X2><{90J|mt07>ElfdK#j00000000000000000000 z00001HUcCB1_odQg(wAx1puiS2OtfCz5#`jT{X(KT?)%>1DM;k`o^)g>Yuabxjw5mvUn0A;Y&XBH7U*I>f7Xy#LwDYdU;2C8 zr?FBrP$%lT{xdrZipdcg`y|&We$(GWBH+O!Ns)-#hnSKYRGm;U)5!c+rw-NHc3$i4 zU?^RT)liZk7_|5QhgxZ*+XbGl#Q>lkLWc_I6dh!DWe07ZpfP~7aa{}{pC=tl>wmAa zujo{rn*3Ehlmb)ZxXJFeWyzK;vYzniiJIo$;YG|g$T!G03N`?Y*d{4{!=?Fk**YQy z3){LgwE}-kO(Ja0lA<9bnF#;G5!rB7VTQ+k2=$1(aD`8rEWQkc=Jfydu2$ITjFC~^ zFhefuz3433c<^R0Yh)I&#=OrwnD?3I#P_J2gXi?iat=Oc9z_3|dppX^sk#c4ssliI ziVzo*yybj4B2tKsG!^#GZ2f;eb^d?(-afDLe@pjWuo7+~j?*C3X<)hxCNVZP0%Rk1 z$&zM9(u}mF8A&r5%a%*U2H`3m4jvOqd&KFaJKW}U-_GJ4t#$P5{TpVHo?wt@5Cj}1 zkApyyn+IvzBM5?zciYSVs_B2NZp4Y0wRZaDlPmSm7+J@ey_ z+}*35)ok|Uo6EkCsvaN<2wk`rV%wHOk|n!m=Ko6xu%-9+rkd?ra&8Idr7mGyK^@?D zp=dx{NS#B`#G(fN{08*VlBuzH+y)05S#Td2^yP514^oJ^*05XrPt~ zJXWy9X%C8Bi)OEC;c!~Cg##&WV}}nfOpf>M@z-h}N!UU6D$^1@PHKP55=@4Pz4Q9B z1p?4V003ysPy7lt4FK?FP20!H|2_OS`>oNu4B!S5kslhwVrNLROMiS!yE3v*F*r(0up&RA#?C(W@00zQgxY zDy7OT3uus5j|O>-_$Qj`uc0Gy>3gI>AfKNOp$)?@-Uc!>axpv|%R(KONgw`R%Wu3b z#MuefH)X9LI7D+8hLicyfUpz(ODnVnc?vD+nXuqk}Nq0YuW0fWS!Zpn*q%(2-7l zVIZ0;!-SP2a6u^kV4;fE8yms23v?$6kR>Evlo>9x`&7MQ!2F`b0{%y);fFX$%3#^1 zAW5n%8Hx^SB^NpIo1BUqxCY6uWZFMq{+t68Xmp8}L*iws{yWk+ib}W^r2lB+oH=_^Y@AI&5hXR)C>g+FhXsG$5z1W^~g645fB?o%BdaXJq)qkUk-#|N#s#%u@k z7xzi2lQa~TJs%RJ8dB}kxQ3#G3e611IdMx8ofo-DGA5Pg6-^f6>Iv=VoDlL8`8Xbt zzpUThHLV>=6*S@sK}@|+@$R9V)EGpTgI-#tVtBq@v@3Erd{k6E&2=tux-R3;NkR;~ z)pb1_v7o*uXGRiaN>g(t&AYNuK)+q$a=&TtZfm{`7Wah=N6c$t5y+d4NXq3ukp_GQWrbf`Iq%-|Nq~3qa-#O z<;8g`H=ZMVEa%)tHG0l%*hCSvSQ(R@+~`X=LzptAwfx;k0CwUV)lr;!0eQExH4Or6|VDV{M=|oD15UPukeYr~b}EGW6pbN2F$ zoa8i1SLgA@_IH8a3JYEfYXI2@fS#z6IFhJ(}!|r5%FbZ5WV=6GWnC-TwkJx z+i0TiFM{%B10JIhAI{~vVK#F!a((DWA>b;c%V9Bf%-Niqg=JezDlFB$*eYO~jNn)- z!FoW11J*!sBsv&i!VQD23x*9I_z*x038aui0Tn#qt+&v_03-b1j{pQ}&I>La5r{+- z;*o$vBq13oNH>{_ip#5NTDP(3)eE|Fm#*Eq_vqEH{~&vVWAL!y7=e)(h0z#;u^0zV zy@TWAh0o1`4ewv9;st_1=C!>`A0ej}g< zj0hwHMsnZ{LPC)=G(5$L6Rbv!5o*;MtxlaWEG&krS8t@&S{ud2hGwIU0(%o`+Yv{Y z=NSS9z=wGd3GUn(v9Zrc#KFp1%Y zlNoC)xpBrxG~RegCYV6c6H)nYw%L^CnoHmFPV0QLN-6a5C2=6;Jxn?_B1`ZFqQ-+YtcyYJFDIr-0D1OkAMoIoJ( zQTS{V6O;VmKnilXDg{wf3#FmqMn^{>LWD4xGKEhzHfTBrW#!8k$;2#5krFX#)rn_i zlW2^wl1(+0!*tU%m|>>Wo{P#0TWpc;gbOm}3IhLqyuT5*et_EUN2t8>$}47#8WsBH zo1*@XvhxFh;!muD63CIKRK9%WOiYHRLXjd>N|dNn_Nnz_VbMl!{j@d6AU5_-12{O0 zGs-9`lT6al3 zIN_w8PC2EQ>u&1pw%dkz?6H2+f)zE=7tF(xe$FLxxeZWEm|-jxp-g8Ec3k{B5ztxH*eJmoEvtm-B#OgKPA^X?znYMI%)l! zM_>csWCfUjlXC+T>a^41opDB3pGCnX zmkdOquEPJXV*G+135g<7QY>?jnJD&=CNk&Nb=%VM?FXg1nNXSdzd4mcpe zA&2BR<`{_+PLR6flK8%g;&;a#ecW|dZy$Uh)~J!Zf8q|sS80YLqjtc9o;kx z4AU_&&EUetEbiQm$HKA}7uQSz0wH8%7Lk)%LP23M6_t6^)E3atn9qxs37$!aC4h;H zS;4tULRc)N=A_X8M8H4g(%K)zaM|Z*>94;y)f{Nw zC~I)&TEp6ZoOiS=C`vtAPmnYXj{lf&K5HC9lG3cn#sF{q7T zLI>;t4k}`oj6j&i$qAnWWC7Ffo_I`dBLop-qQJpP1dNetm|Q8;BY0OlfE}RzBsdoc zPDF@}ibu6(g9G7EAbp06ppYf%ZFq*0He^=8`8PQO_H0isW;nCwqv=@$Eu!L*k%Y?f z4AUn*eDU-{%$(hRz#jsO|8{l8WF?i0*W4_gGv2|Tu6hS}>>s~$r>x#_biNGfmyD>H z9vIbH)=eC}ntmD%EzG{w(SUdM>^Z4$7B}|~SLkh}-XRi5&QBEy7GTHa@xd`X8Hz$? zJRKA&E-*sSLpT};1j^1w5O!5B2>2udZVAk<9u|m6rym^k1R-c4P@B&@PzBS|;mMNd zqhaWLuhRg7IMRWHgcvG9IuXBX!LaFT!20kPcy$+?+RZY&`d+lb{{^X=doBFFg^-#T zVG&j~_^97XDtZt$kJ@%|@q)2{i~ry$Q2ih7R9Fr7LSBHll#ai@v$ePddw(qN0b9O! z|G2{2*tt{31H0~1$9L{LuCNBYjh%E~h-HGW?pj6$bI&G**ya%jse~RNII|#8-zQm^4sl=L%KY+Z}A-XA?&(M8%WU>%z|y>DCYTq$)0iQ z5jdX1htAlkb&Zr2^^V4Gt^$;Z8J-blNlUcH)9;^ zZjVbi*XW0QY3>}M5g~&*6G!nm-H6E~Tlso$=x6G>Wq^TpF9@(BliAQIio9~&(f^K> zL7YjykXH|}(DKp!>nWx(lu4L|TYz2xM(*^PODRlM&4+Tn;-S8|a$NqV6__BD^WkEg zNUo#9F)q6fWc|7@fY-q-p~3Hb=TGSvJt&Vye5?bYyCJ|fK|MTw{-MHOaK6Sj*-u?Y ztwQp2%zStK6b5dY9SzEEr;FJ7oIe5bvTL%!6Hh8QRj43O2A@*5^ZD!(a+ecWEch6p zZv6f-671B8N;H1)OO&V_2uMf?9%V2}j>s3)Ur|tQBC9Z~L|O^eQ4!RP&5^VfyPlJ# z9i#t1uDK7csfyOF;E!?y6uM$LTlY?0F$;>EE9tWqJaIsgCM76jPpg-uNYKQH@HC4ZJs>V+X8!=Cy(_u&mMSD=+7o*+$^8OMMf*;NedNVg$?LI_M{Ib z=nId*mPmrHq=90vRR&j9kVxvnFbrs^Li8P{a~~m*GRiOnkBVBba4e-I-gO5YJBEGd zFgZ!4IbrL8Z}lQgHy!8p5$mo)Rb?y_Z0$tfHN^C+$a7G4yOmz_A|xqvA_vEQiinhX zWr$?R#x}#>Ct+!IX)UN|MNCZatDQCd-Ed8ubGSo(qsQQLE&f$b0Jed>*NYDXWQ&$? zea#;LgwQM47};AMm0D!4OAE@GEWN*BAckkNB_QlCkXz(#8$mL{?8M{j=t;LTdF<5H z3ZSQZ=}%6Wz`J(9vfiZ-0ENW8GM`LGz$8x@?izDVbFmSZbAu# zQIKGSmr0@W3M7+zTOn=sRif3*A-a3MoQ@Ra#TO=;cEwwr#xThX+J-a$R1v5i^oBGm zulkQX9|@Jv<@A(X#ofhV5C;3cS4hRnTqz{o}z-hLS(W@6a_R$Av35M$;P-Dl6w zo;MJ9=6{y4QewTnVHNBW8>Tp6TfsEB_bQaGA+F_Fp5ffW_T&B>n!z?Q@Xq)jpFgK# z;nT}k6t>~y(LCl){-K)T23O6!Y@X#TH*mA#s6U={TjkMc=6F@-c?3 ztFI9|KilKMdC+hlPFD;lNVa)fMQ+Bv$c7zQn#P7TaMq=ZE`TDlU-;-bv^{=3!(#RK zy)G)u;>?`3sGUVyD3dAkDI9LDu2?%AJ+~XCM`ou-Cx~M3hYh4fjN_M*8XC<+k*9Hs z$}ch3&u_Hj{YIUTl#{X@Jz7GkMUHwI8v&Hz7LX;NF1W$!05+6e#;gEnXtvwvpyD)B zUmiI>U7hi`Ubz<_taL|fCK&FXbmB4j(Ay%%tu{1P?t^hJcz_)8qw5I2t#Hu{-0%o zvY=C9mmajD_Me9mijK9vFj=c7fqyMxu@Mv!D%rzlrkIJw$158r3}N1t`yd%Med^As z&)oHGD~i3F94(In)G!N&JZmm@8cuT}Z*go8rgu(UCP!x62bGv0Tm^&L68^APU$`%( zTFC1~vDg&`83&pEz@0%ft~-IFJRFC2f{KCT)Cn^J?i7q@J=b6 z4vq(W2)w>`?`4HQU{4o)1U&HvU%aT`fytVJ0o_Sli9KzwCg?#55xtxBeu$$FBdR8n zBf#6Vy+A{e<|)?ZFc994_8E6KUpudd0e`7?zLdiEQ7=}NLjg(ou9=&0@XCG`JZimb$Zk5<`CgSuM|&d9f=uo4c%1zf2$Jx932xPVHQ`0sW;RVGX0_m4ON!}HL6Y98}BSt5v-5Bga$9$~hB!~lqJ#kgk z7%U&qpj$Vt6}~v2$-LmvtGE{QR3!dN#j%5t>P#b%&8BjKwhvcc*}Xf&3a_j@ml(3j zG@B^Id6OCj$NV~el6-Mtj;Z)Zqb=yy$F^uO`1;PBhv$Xs(fh?1x-YP!I|^o2;v}Nf zN$X>5j`THqKg)=4GP{t-65DQ4#6~#9k&0sB71|Dx?VWZ3B1Tx09+%k)-Fe9Kc0(do zrphG=m8c|7x4r3Mi>fkTNm|>X*!_+JN+vLK*-LAnrSVD|YKL%3CvDL>Ph=#;vKl;k zL5PLZkOkl&qA|r&R3xdob<*6xlQ{e{`515zcAiaN*NE1>PsBkx>l=j4sNx#vRh_LN zS)$_}N*gmq2rknKoGX;5AJedP(Ie_i1`{?#^lTg->a3#{Oau0THm@AEOh~!Q4g+j_ zzgdswKiAy=oAAZy({~j{LCaiX`U)#b0OJ%`R{uZ;rzN6J6;t`q$4&qqa#yGXW?gb{ zI}1r3tq_fdlPqQ!E4HAQh@nH|Hlv`|@H4nKre|!7^Jc@f5@ybc&Rf^Cl%ReP*p5hW z)MV!z9jHRfFg7J@M$+wwQp@#vv6dQ4I9v7u!cv3`uv+y6PJ?THx;nU-3T^r@W2h+$ zf;^Wz;8KyAHsptt1B{w)V%8-WM4V)A6&IC0{J!XlnM z*sPJ(nyhB@1>O2$D_i_e>w3nM8RT(eSGXS?zt@F;tE<0%e}!m*Yby{j#Nm}|CrM7d z%tzcGw9Xw4`a@S{P<_^uE6BRvaA$9ASC(=tEF%pym6}2$Wfd)VK>n@moEd-{xe{V{ zlwVh9n^?~srhoz%A~Ox($tGRUQN($KYg?hInPdTQu^0A`S-dhvx1sm}*cVL44Yyu{ zzq{5IlXYe0(iluK0UCheEIDQp|MiS(DP={k`S$?IMOeQ|Juadg54{K63l&BOCVaeN z4NhQ1;43Bg6#3YJu_6-IchQGQ(2ViH1Nb_Gbj=mO>s6BTPFyHO$rwQ7*U7Tp=GkLC z(xlngE9$-+kM-y|XmIpl#{#>Dbs&&^2mRgpef^~57%s|gBpqh4uRHbwGb4-DjC9b$_pSF>!?J_ zEZR@^mwW~E5dPTdSmT0#G`D#2$SgtRlF&U&qxt3~zXEy*xIlm|F)v|Xb8#?7cMI`d zRhU2cI6oDf!ts8!1{;Dvq7j=~W_OSSbyz#8FyG5InwdIqF6yaJSfD{pd9xKV@s?c^I)E0$ecUsr-V; z5~@cno2Gpd2zZ*iNA*2VRt?ZStAZ|jzFXbab`Yoe7U}>h*lJjwDwajXPAh2HcF+Y|Bpi8P70zRy=i>wTK^^nvyh3`U+;P&zOftt`0s?xQGpRmMPL= zGV}(B(vSxWo?wH&x8I9or;3}TQ89jxl5iPYmnRp*`39e;rX$reK8PnSKaX^zz?~j} zt|uGK^0JL)9vDy!^;fgYZbHuPvCX&0HyfRnYa^RN`rI4*{Gn+3kvSLY_ zRk;&qITqu;|uWz6lvv=o^hnTLdo!yf2XHT1|B5^tP_@5ar7$EL>JaHr!`8qsvL>vcBxB1BFmrNp!B_;Lk{~MI zN|;KWX$>;W@Yo3O-@8ctf?7ZymZO}480Km-Yyoy-_C|9~C7o1Y7rR+p{4LX`WG|Or z$}^3SDbikj?!N3mQXwLb0*rK_AD5pnnx zu$ccc#}%rBW@v44P~ER+`^3ShR4xua@IUK}aSn|YJrg314m7Wb`pfUYl5r&m zjy+$-*RBybO&h#0Znc2(jmGG-J92rj`Rp%kRcGGj=Qr?~8WBbiNah$3P#F+<6(_)& zce|C#y%h9pK|$Ze7~ZEaY;p@S?j9&hBTPp%dsY$L<;l0O5vYN`l^b9cRON^p?f{QV zT<}H}fA*kb3w0INA{6(yrl#k${g6_$qcDNxFyJzS`NRL^;9Uv`&|kWy*7 zwYzwV1I3sv&=FLQMJ${O4uRt%U06oycLMK@LC_C@ z4wQMN8Po`%phnRc`IGRcI^$X>jd$}<=md@+Ih0eKiT%{!;VI-!i-jt(AxFk6tq(Op05w*gDK7qc$N^wh0DaP-RavBwW4^9ddz1eYspaL+- z#q;gPphU@WDzjI9YpCB02~-j1(VhTB0Ik=Kv~16Zps4J$2S8UT0$Q4H4+8oFUi1MJJWFLIoxjk<$J?KQjNb7)ujVE&;R?F zdDyqT$ukY0WXW44qqxJqO=|$7VR15eUgJ_?f_XawdJV!Cm7z@0uBD_fRTk_e^h*qc z)4WYz&dAOQf)Ya@XvuS+jSt6;8jIsuhG#kfm4mO9II0L4~|=kNrh{>9rNd z@!YO9?jl%9bYuXuonYyf?*?Z10Nm%_WjFyEUILza43bm6ZFci+kdi7+e~RzO6fJ!Y z?)njfaVERLw^k&9%Ho{<1V{pxEedE)gMyB%u0xh7kDCQMTzazyg!+{~mbMhmHL+b^ zKj%|#SK8aAEMJcwQl?nDfWovmEF=1&zk#Pm-AT0XK7%C8)ni>8)g=O_A!d(+bhjAK z>R@E|h>_}NfWj7c!T%d^Fowj7EhA5MH^I+c`0*Yb-*rzorP?B-d;rC zZxNTYU&Z)CCmdT4mf2N4?9KGsPKc2ph&^=v7F!k}Cmi+#wp5|>4~Uq7b~F685B4o2 z46cNM<8Az*59zoznZ-rch^33gG2;Xl_c?+$dAJdompSj85c%ort;&G<*+0sW6$hQ% z@13A~qgwtar9mxu6E5Rpa2i{)?(oBrrgvn45U(xWy=@ElUZ2ZzTo418$8(9as{PbO zOcbss@!ZkN&*WX;$CnyC+Z;?wBc({g3gyyjo8#}qzUt4T4>Tpq1AEngOlxW7{A4Qz z9E5h;dYJ_0h>;1sP;-)1W?A|nrN^E*uvQFxpZ{#)WMjRX-@0RW)1c)> zkkT_SM@q2nqw8XWpNPcY_;IEb471)xK#qr|$Lt=e+XGq5hV_WF+-Ii7J9@^`+zmjJSvKTVpurJMM7*urI71gJ>hF${_c}?Pch*L;ew;R zZi^01>g9WTqJcC;#fkx3_S5(i3Q!m#jwBiz-~p&Q12%~Es?c%{QAP1lpAs<^mm0;VeBmz(pA7f_nqIzoLtFp4E|DJu074ZNe@ zz5G4%@{@^cAey_$=)zG6S>io2z^)`ioFtV++DIo}g@!z)^0bm;O8#!zdl2Ph*Y=pI zp@terfpl1nu%tdU73?c8OzwOO#}x?9EN7p=7uAVyFD|Cunky^ll_x?~cSKXw8LX7y z4RHOoL0FQu_UwadNB z>1o<3=Zx>}R+VWmy(A_P4)P)XZ6ma4HXWQRQ8ADS>ScG*r}=bnpQ9+KmP4_-_n^&bh(GWg zBz*1AF?!Kj)qx7pT4?FG_BDbjCwC=^YrOzpxF4|rx~y$)AvkL*nK4PKL?NPcnJG;D z9&N+PENuDMRw$~71tScR$sCVegUgqcx#raG5D#-0OGLv`$QTbgpdG1#KEWqRB%PK- z}k4p4Vw^lJqa=+MD)Qu06FoZ0CbQ* z%uX)COX^FDn525DwATa`!#`bCqAAY7tO4;>elEMjQIxVS@`oW|;oWQO_UC+VHyC zO|v<8nY>!BK|Aq^*E{IG9ab&AsqTMEIONS8-LVt@r5&#k&D+Z5I+t)Aa?yJJwrrY}0Y?s#J$wp>>O;LT7L~%E7EvHIXyVHD ztriS2Q}|aaUv!rX%>NI>m7I3_`N6DdZCg%2$AzS)wUZlwABQJoM>jQCaSCNeZCwJT zE0~sGqteGidbqVTa(5ar`?|4lnyv;AEt{q4u0-g0#R;sYc6FK8Gn-e{vG;c4iN~wd zf^RuuPFH-4QJH>sMb($RX!@0Sn0YUl!+|Jxui3m|q8w)+RfK{W^M0L23Ja;(O`=l5 zAV?6!uNA=kjNP++JXMyaKJ!r+wy6rzkhW+FwRX{(yQ|%cS!7P$k9GnO$qJZJ*6 z-3W=%d0u_&`T_!FG^Ln9Q|?K?bkVL5R@NG@QtL|4d~jv>Lt{uJYug|p=eUO;kiRhn z&cDI?gX|(})(59P;r{utfC|<;-4(loG3YG4rrmVonw=(D1$k(xVawG`!OYEf#}=0)jdxLU`Jb9kFn1>bxSW0MoPe9iGX? zXKn!#qr^>1#Q)=52BDo$v%3fbZn_V*H(|mxS@0ZaCxcb+SUQIW2m^%tGb&{oGBUaEi_*Dz5Z?a#X_gg2Pa z(Kgr}@w$N8Gt}k85A(kV`BL$qXmVy9q^$6jwaFFEShKAT3S}H_fadA68*r9j&-3*@ zQ5MIOME-Ioq;z0eA`H`P@9^m^YP7M5&zb^Qk^r~kEk6`mN|%NboG>rw9nbI_kfOIi zU~VRzp>^;^P0(W3&u|IIzYl9rEqMui4$Qr?bu#(}bek|k5Q#|OvnpLOeQ0GDB9I&x zmU-tYo+p<-54G4A0-?oZeU0;#B3zgzflY$PtA;Pz)KTjL%aiPfoiX(1dz`=#7I_3nKpJ`#^@D1QEocdws(6lu|*y zl?Ke+3Fe}{s_XcFbEBL`!~E8sVgRC1W=^2~9~;3Po%lxf0o!r3TwHV7XC##5sw|OA z)?9{II6%o@9ornHUXJ$+(3-1b4R4u3P=98xU2o1)XdpRG4Jm#8%NdO6v&DG;8qfoA zEz9#9{e#rke^4JVEYKwszk7U+m`Xj(I^qc66!7Gq9eynQq3V&3?;b5fn`IYrK+7&L z2B$MnAKe~5xWIBhCn)gQLrl`4Wl-0tNXKkgc-}J*w2G*)WEqW$sr0;4cGAP&2o*Qi5s=Phdv+erYwA?|8(`F zft9G!I>rY>%*ykWA3=%;FZXeoM?mujc6>*_V$0hGy9uBgZsA9eRq5tF-r>>cKKh?g z{5L**9>Ij0gaN|A)YTzA--6j=FU>2#6lf98w)HDqrq$5Q(D)goxGy3fO+Q4$?~G$+ zC))mp2_~s6Vx}-&1}Wx?*uxR-4b|_CV`c!Jj%sYB84y4u0#*_4wo@Q#*G5RIbzT~1 zy2@1<-)x-)3dNtx^VMP3#KG`wQe+PR}=TDamo* z(b?{dpc>Fn-KWwHs-C)9Kommojee)8ft;tfXPkrktNNcH>R*F-<9X-}XlTGx1DO(M zp|wl9JcJsiAbA_ykb8`B5~unwHJizkkSE`;SHk>=q^-=+3EZZ*dTZD7qmI~8zXSbd z)gj=?fsaL~ED(%d=!KJAzyo%pOE-xPTZ;D}DZ+cmejeK!X)0`4=OEYv>ia%=ls;`s zP;wVcU0JpO`6xks*U1l{bU#1`u=WycK0?_c5PSvjK`?9uQQOW3I{@BadX&8oG^?Z1 zFC(M25y7y_z8^9Ou-n~&6YzkFl7JT!=_bJwD#`-hP^*(Qm27wl%Xc!l)2h5;kd}Fs z6&=~j=gJDWBBo=T!b2>gz5Z*uhfa@dmM8m|Ry%jn(R^O!*lMxsF$k%wMQh8Il2_p% z>AFD$!Dk^@SZ^>kBjN$p0F5MJ^*Bd?n99GJYj3Yf=`-jx98G^QDVVt3deETf-CZXI)qghACWVbDRV(k#xt0%e_gyUxB!YpDHfw7XbG?8=jRw4q}VSalCTd` zyYs*CHpPw|P%=T|Rv2yJ3f)#$qp9)oL9pWA{?)~Q9&w+$3LjvD1%unK)U7CjR&L^s4d18Cm7OA+ zJ?qeOP;ckMc7%Nk?Hkkxf=_%ZoHgnzxj{cTle@9Hh5xvi#uP6vxyEzrkRb4Qiy)Bs z%rb^Y;-)4pQ+RAek1kq+9-mv%PIu;gyGqQE08B%qxI(+F-?#KavJ zPY%J~e>-vhW^u+tbNWO1JW%(`eNlOD;yHZLsrn}_+biLVST_DXQ#0H3HDei=$9BiK zh+^PnF|%hq$Yug#n!GqXj9LB#OmH0Cm}g34AsupyrGLFXVWvzbZflGTDk&pOLd8BG zS*mbm(>VFQ3M&AXV-a!5145cV{bVdZA9By`8Gd3L;O5 z8khVadZwZk`;LQMoJGo__`YvKBihYt#XZM{W+#POxi0;KqwO$gCneDd?4G z8sqXt%F#Rm$sBS|7O$YI+kgk~mp(p0yPa1jSAm}fe<{Gab z#1R=jrBDx=za85g9}eNQT0BY7@*#Nco^{1%YlLvthaP=zrZ)k1? zJ`}Il+biN6qt?G&qUQigbr9x-U^Jg?SkGC6Gh-tTLik{_?u2sJ%}sJ~krdGPp~J0n zBCVKN&s3sJZ+puU3YSMrTqda6cygm<9y#wTi~?LorRof(=LE{LO&p030ruUG&M}0O zL9rap=XohYRF)wuC!X@5%SKoRSt1ig6&kw1R%(=y0X~({_QJjOG{0icO1#q2lD(i8 zJ9(S=j1k*SSLT!hgJZB>r|aS(-@>%nAG}0Aomr!P=rp{9S#*Pb&~$Wf%Yft1BU{jA z;heaSCbHkX0T-d}s#R3Ow5*Ut4idwi5dl5wsuI2FSvhB1kn`a9^mRq8XrYLE>5YYw zkfl^m^rTEnAigPpaTolwh~47ONKF;Z!G z&KdamccD~coXnjKXUv2m0@V%5>(^+><>CXOc5w2^6Ml-?=KonVWTbHqKOfj5T$`!G zSmzsWIO>_#0oezS*vnK$T%ASw4lL4Vlkb4*Y)t|6iie%4@iJ*30vd>k3l6G0RY{5+ z%~@JvA&rTu7VWEX ziso!VZ5nNt@}*L1W>p8QlGRMR0QIU^0<18^KJ~FI*rYr`WvD44UNq>VUCoZG&9Utc ziui?^VM6Bunj~%v7*2+&^3C)L)o;d14Md`5*wnhLVX&zDpQ2RFlG>{=_s2>ZuVFA0 z)uc)2rxC-|zqnpiGdWl?71CCVg1DaNS)Yj9)cEJ>Sp5P#NT4M{RI8?-jIiwkoaYq% zfIrk#$j^@Jiq# zq@-jNj1YWsDZ@YvOt_jDIoe_%vJnPnW-?lGsYE6%LqivyDf_F*Mi!;PToDRSwHhZc zG^JZn`!)s~q=4R!2CNs4r49dLl=3(526(K!a8%{#&$x07Q4~ZMs_6qYsiEoxNIKJ7 zXkme%lSRrm>>v>X|$T=DW*-4Q~Gx9vXPX5>g4rOWN_v_d%te79z{CT;dNSTpARnLL;h^lTt(TPV2F?%2p4Hp3VkTCeCa|z@2 zFt?o}3+R(t^0E*NKzmp^2H_CZy@=B_Rc@}3>V8n{UZW}?w^r=S!3*@G+Uz1>lrUDU zW)r+}1DyasZLQnuNHY|pBUW~NzXei+7-3M)+aB+K0xS~Z6wB1MVXOh%uEe745!Kq@ z`9iG&9~B6d77Hn`>6ZwHBA-1VN(fWjZ~Iyz5v6pb&W%ATMY=}1R-}rt3Z!Af+>1MI z@x7lw4vGdHDa{tnoTIo#iDYisC_IP!q1}-Ngl;FCl-oS$Z|z9)5_~<21bwF)Twb!9 z2Sdj^cFL7TvEtxVFFi5v9`6rddL7>rqGP;jOWP`kXK*;=HS#Ko4?Y*?r*WWNqTS2j zyf8zfILgaGah0@EIie{l2ckjB(^NY5&>$G}+dzxm4MEU%c9D5go7e=HuOVF}GuT9R zhDDRK7#T2;3XqUfSNdSpXW->66jwAdTfGR_@Q8+nnZpmyan-EQtltGQ67*Yb9ajN@Y@M59vS%BW6veGDx5sMH& z(^ZuARU{&&%QWm6nqE9y9E-2gGwr$q`17nkIG=hqi()u7j#X~E=J1y`;)(OOEg=fM)s#SaYP;nGNnN;*A8tw$1KaT#>be@b1e47AI z_lgrlzntl@0s9FA_Ol)-jQDPQ`uO+>BOBAMR|Gi~KVxH22K9(Rn2WR+cO_DRKCX3u zvofgBa?;&T-mG*VWLwICfas@L!ErPFi{^k)wl-ijptMS#qm9aI=;^R_3Y6v`YL1W& zR8cv##H2_{I0`sO$9M*FVl5OV(`0F?i7F_TqudCkP6QO;cxHy{uu4+1I01w)mPLu< ztUt>v8A{{hWEc$_ABN0he?(IsntGLa;b+ z1b69=vd+}w$gWy7+2#^Tc?(r4dOm@3U%E&gq$iSOn;yY404&`}lu?BkaTo)`f^eu2 z$0siAG#`X7nn+?hBbje&wwY{$gF> zKNCKUqnrHmpjb`SM3@d-htC-QgX{9V2H$jV?&M?kG2yKxjpX#p+w!=OW4p z1zzP?sG8&`LO}9d&w;nYXxRaW*5QR<2J1Cn0HedDnUQl7*l(6&7rMTb7>y2sCHzVo zH-4}n4`D{Kt%L&HFs?21CTmw(S{NG+j>BH{?kln3p74i|wXg>UBqBmnk4vk@#rk`%>eA z3v^}7e!oJfHA*?{N~l>Qn0_Q$g$qc{yLn@|Ur`dJRAk|_wrEqlaPoMz&#c7pqsuLO zqK#}q^rZS?!q7k_Y+@pGYi&v=)3iww!O(1Ki}ZCCz3c+$yq7&^EB5zkm>-0_`k*uPif+P3B)G0IdGu z=6)#KYPHn%OiTEl0Fy{;44{c)LH`60?nW{&H;yixJwc03fSPia!9Ox;uxK#OE+@-| zivgUt5(ND>MNB4b3b3MU;QJ;xeToDaQXEIrRH=hj+j;nK;j@|N!)$`|m`aNj3%^YA zNNjm1zuzNCzuXpL$A&{aS*7_}oW<_Ii%f3i?br7~kQ2{P$BTZ8t7-KT7ir}#RfFP z`ZMDzI;)cr(<1W`mxb>~_^k_}NSKKNik|39Vd9U78>TP`jED-@2QAx84SlGSdsYP@ zMm(F=NG*~!wwxa^Ca}88A&LwAGI!*V6|-LKB3MQ0@q0xqbRk{I8W^814|51Xj9Q`A z_6Yr*6mBHNUFnHM`ujH z#EtX(m$OJQLmiYDNgfo3j4>R@Rfu3H45WuZD|KlmGfWEmE_D3Kp$^*0X@yf(V~keO z1(`Atwd)P2t%JFX;=aAUD^WFueaGPsHP!bm%nMXE3(-`QHp2yjMi+^vNI}3VTsMVQ z*m9qFqnoxLvHzi$KdY{=9*v5>{CVg#n#OjRe)4BuUQk%U(d}!041JX6up2Q4t0
    IU~sMTqLr^N%_srbW|dNDQ{tQ#K=D=GHw=a`=rM-)dp$q*4c%j)w|n=|Miovmpu5WdiBz|pT>Ho z6C6JGvsX*Qfaj<`W=!C)nol58f>qY)D@c2}rs*N>uu%D#L-WlfZ;V@&sgH$w(QNfR z)>`FU%*pDpc6F!UJ6@~MDi0&luxW~v&`rvT7wOh}1A0*Xwr_^Y!20r~g*B6wRgNrT zX|U>F_|mOkw84m!q#PcPh^cd}QPXS`=@j;q`h8Sti{yWJWF>XV?~#hnMdJIp6`JRA zQ1W_k6`Gke9v^Y8T@g zKcy0K0W~9ci#o7K8H%Q%^i=3PX9gU$8D(MQw{iBvx%0noX@s|D)*NTLYw60mZoNZQ zA@_m*yfs}TAy#3{nAQF}Z_#sTI%Ox^i=7EQW|37sMTMf)@)?g4h`zTjV|v~847yF| zMLm)h9nT-kJ`p~JgXiT}VVvT(s`Xm%pmB}#`^vICvc6O^rp>6k39N+d`^jF|pn1<^ z^|f#-CTHn~jL-lwR~DDe`vDBLCT+H?u7B1Q5tX#4F_X9eV>Vplf8C1zdzFV!Oi4O3 zx21;G)pmWJNn4$_N(OU}J?DiPK#h6nw}fp1cu)o7EtEy!#jL2uF|R-J%y!=d{nV+x z+`)`unoB;>Zm#{X_x$ang+s=rI(4D`kUpa|v$B68yB_ASFQuuQv{=r?qoP(azMFbA zzR)a|K8*d>tJi`t@i<)H33WxQP8P~jix|qksgXI>fKsZ$F((dN2sL#k{W ze-UYzWn{;R2a(KIlERTM_)nt+WVsJVV9@DE9z#P}1TqvT3!EJiG@Ua1zjBLN<;c)< z+u_(44g>B<{91kFnT0lBvWfdK#j00000000000000000000 z00001HUcCB1_odQtN;aw0sw)P76%{=kw&)@J}P@iDTOt&EbiPMq(mKMK+ zdDiD}JN4KPb02nqZPPe@w__P$ImJl+|NsC0|BcBP`8MB6OVXytzd=A$yyiCN+zBPM zgq$)`c9bd>Dvg^2=~BWvTfJ&>>NzL1MoEV5Fb zFfY?El*gGmrOrlXR8b%D6P48m_k{{~Ojx7^HW;2?4C#4HWj6BHFK?rhYbJ#$+E-7= zFV_)Xjoxt0!QbLmoMChswmi(?-{q^UF^>(k))KGAdk-q;rC7M{(0rFlueE2%T3dOQ zR6181`a|a&sgj2NV3Q8grP=wTjr=p*V|D7HN_DgSr)0bG3q_htecL$io{O{fQu0i{ zKP^eRo1{4+`cLs?(xBvRPEn-a&q^J zJLYBu*>HCeY!o#}hyPHaawfBJ>Q2Rda;NG@NYrB<#)D+^P6-9Cl{yWABTF|!=)*wN zYithd)D|O-sJLQYefNoJaSzb%N|=U z>pm_Rxv#t22e3i(1;^NwkfBDju)qa5?J|KBlPVwqr{1O!rz;`Fr2K8lCr(#7$tRyp zh2#e2MIonyC;Rqt$bYcTC+-0cL{4jIM2(F`m2S(XO-(Qx#k`-(bAx&{4=2=2Y8^d4 zdH&zqecK-t*tjU_ctn9>M%h%hvLJTGs!6>ir4P>)EaeQFWuo$AR{{eC9&Xf{hK!^Q z(LI4n(sn$cdjNE{9fEZpUS%&##;Y+C9g{N^HD2aQMC^Yer-sdZo|>-H9FCmDDpPTG zH#Hx;#Wi^F`ilJ(uSpgyMa%~CY4?x=mf7acz$v1dR6t2t>6DAM(dH+`1i}p^^w8st|QUAQ6Uj;vre!c)BoCQ-LLm|{@X{Kicte9kdTxK5vRm_5(vSP z-~%(j9AHH8h!b;?iYL^QD$gp)6Thr=3uCG#1N!K*ppW^SxAzZ-razyD-}L(lJpFoq z?}{!>L2HXv=@6~VExHl)gNT2`{4p$kcIGAp1_=Cr{?*xkvDSR)FaI+`y3O0AjIpsTcezPd{Yv*r+LErMtI}NME*k?jrigArAR?qdl1V(tBq3!c%1kE1B z-Bp!vHVM~~rliHfz4;I%RAzB^U4jn;hSxXZqj6xzex?bBXy^uj0R28``>KEIL>$9O z!~Es~a06CTbsozdEa;o2I$DYD)ylAY@|4Ao`MQ z*$QkX3jpYQFMr>cn&0+3fC7^8|8kOIsZc$p?H(ZeM|?VZu>q5m!mi;*Ssun!57W}C z%=6yKN4%FzfC(T$W&)rD5TukKC@~X2iAajf_ikn~@e*Kx4@e41WKtAJY5-N$EJ#&m zL8>y92|^M8QWgQRN(3c;laxGF+tIF}hlvGA)hg6r6;$P~VAo~Grx+{3i;wtLsRj=$^0@=wd2mfMCm-J|q(q@#EgwsH*%vF}}~ zDM`qrSunS}xYC9kk`gih4?A2lB#-Ku<<&%s2LIomsXg=Z=4)=UW7iEV+jzli1uZaj zLLD!at>#?*!ESnQyAQV|0ZCw;Md&R6ji=LlAJX;29N$f z?omC@_KGzY04{YhDSRG&L;rop3xBL8gohQeRze8r7}MWXymk-AIecr3G4doyl8kS% zpWpuu;A&2F0F{!!E$#Q!Lv;526Jcxi?*6_OLNK<$v;d*m#zm6VMw+q1{~4R#vAE2A zPaQgpg$hd4Blh?2wceQDYoG+tpmFhf#9S5(muS9K4Jas8MQLTr%v=1DzCfsXL23(10&(+yl}1iytYNx%jcobfu3hv&(ehAkWyCaQ|&CA zOQiHPVcbh+K--TFX(b7OcyT{sZ`Q@c(%Axg%yx`pC*CZUV63&rrA~ohVFqY&L*LOPrm7cDIt4!7fGl3#8%(f&kN1p!QIU;e$&E! z9{Sg7-V02q7Sf0jf6%KYW1t5igO^O{qo$|*D=IW68GXr&kX(Ho7Ug&K-WZpV%!QVQ z-?0n8swg>);i!29B!M1Pje`Ai!Wzs-zg3_6o3=zpM1ER%QXct$q-2jVJt>Jj&N_MC zk6gz4prhTFtaHAB6{swSGd?4b)dh7@WE0lJ1LS$GU=@UCvsOf`Syyi(V&;Nns4@4H zdtp^idIm=Dbu*$|6^-Uw`rB52z5+Q4mdBQOP7xT!hinsfvj?AwZl0s~v#sRU({NYu z;C{+;vuGP+lW3$_K6Oq; zcN29v`n{ZTg6-N-%M0??{Lc&SH4%TCOx=pg8@S(ns2cDl27K&6J5cN2tPf~86anEVPc4?fpuFv|TK zK9X<$ zP?9!X#{7WVbb(BpSlj}yB+13Z9SX7{AJR0Z&>}0~FmtTO!qQmg*)cGAhwPIL20YIo8w>qp$rZ7|ZJDw? z(lfdIUuhzi01iVh>p`z7?6H0H*ay3&X^+EI4x~}N4`a1)P)Zd+YR=lNms+$5Bjf93 z-Z`lDK)nWbI8$l9_jbuf>DV4m=Hkoo6r=>_Sx7zlc<5XOLy%Lm&wy8ok-SDyqr~?Dy^|- z;_@?VGMD)*WOKG3q4~?v-kz+nenlo}Ay% zIk^F)pXW z%MFWmwLf1UFBoHZ%}ncQ`$$t~aHUGzz%{@88vEV%e)Qv?|Kd;I^w;8~YWZa|tY6xO z6DC>7Fq|&#zePm^X*oqD6}638w(FcEt&s4TxTMrzZedwPRjW4bJ9X_97?+%xUszh- z+}55}Gc!9kzp%I>-k?$QHop9XSXNG!P$bpp4DFrFASeQv!IH?;I%jux00e`hFjzdX zOlPv%DRgZHiz6{Gv$PG1h@E|=#VvmPEVECYIeWp{4R_dQ*pKzy)sbyj?d`HSCVuGvAM!4R6mUYG_^`W3%Udrv$A#QQb}NZ$0bOEV^#fJl0Kv_7(w9`X$ z0aBL(TR7?9>rAC}a&z-M8I6AJ2&Gyh@42R>n}%Q;R^YIik;aR!zUH|5?q>G?uAEj` zT9}W-^k3k%x$k}TSByHF)M%?H%g@akecQQ1Wqm!Jt(xW9vCrHwv}4iIOh;QwRKTYv zx4K+nD}OO!OhkKdhy@pOumI;fE&BIYhORMJe_yAkvHld?pa}kc%lzBa#K_P>z zMLd=tJT8AGV`(?oxL$$zn+r)u7(oo8NJJp44UQ5^?s#S7i6IQ41ALT9M3utO^mRWt zJ2_qzU}JqZu(wVq;ILUy%b1ZF4JdQzSLzYd#i2n1S*WH^b=g=23b8OxE9FctGRYVl z`JU@rNoOxNrZHOKEsTY79MID8+hxNW`|Y!r6(Za}8~_9r_~3#8J!q5*$6Pf6|HZl7 z{N=5};=~on1qCkS;%Ov)=OPNj$zgRaWM#na{%SV+X|tf!phB8{WK)iqTCxxcTcyCW>~^KouwXrM|i67sb* z)v1Je?3y?Vd|g#!fg%wI1fGx6`FPmx)~l{90~?x#uJZenwZ_cMsh#SnoYEU+>1r*-ga;ER&K@E!RvIwz;aBVQjf)kbtjz zp_ul*2x_aXu2!#NVwpvS^Z5@eAA$DR#e}T{;*T|!v|!JYdrCz9-sBJ9(13Yc68g8t*jNt< zBrKwBTceM2NGccOONhPz8ETEoQWBT3av%Bef=eij>oRH~50+!LgA0bhx#GXl7g0k}O54H0cB`8Rp64mL(gKBbP^>d<6=LiWDnR z=UOkcR8&p39Y2inx>>jPKhF=sC{D7xV8n-`@no@|S56QQ{1C}iYYi-%Ow6D#I2uc) zP#H`B8(#|L3=jEHBDtb>Hf0d5x7?)il#i2g7`2fkjqWXNx_Kx#o#y(M^a+R#b5%l~ci)FzW!XYe#2^rIe3j!JJ&6 zjkb(Vdh^xK9N{e%(-N^Q71uKHEtk*=iDgPEOLEy#%8^>GwDLI0mtFy9g)%DQs+g^W zyHc$x)4G+~v`X7nYu6g>TdPCsbes=+s~N}w=+S{3fSw%K0qE(0cK|&%gdU*R2Ic^I zd%yso-v?I!R5RoONFyG64y4h%z!FHK{mxl==_Mntyke|Eg;q6cWUEyxPn|j^8Z^k< zFhj3_w60+kfVBRBT)@FJgbr||9R5YBR7cXJIg~El@y>9>hD@1kWy|KWdkn|`j^4q| zfMaYx8AvC3AJN}*Izy2GIZ+Nw0tAHVrZ$8WaB>Vd0#44uTX5mBy}1o#1Dv^s2beKq z(~%=2NH{i%W8{E&FV#)0n7Cr7VzLPj1Ql$`0-o!!V4Yyr2{*pNVy|T+6`H3?Fkp|j|dU&MT&GI zN|b9KeRQ|eE%fdzLx=#IJGd6G`AhepM2TCaO35ix=0Uk~k1AAn+LZ?G0b4cj7qHa} zc8!65fUO;P25jBJ5w3bqu2rl5`t@7h11^dAWyhYE%RO%B9$+ViK?h`a2E+h+G;{^9 z$4Ab%cTaLZ8oCA8e?y)DH@Lv{%Z>cxAYTxuP$j~INqS=$dJMR+k5GUE2Q7T~-fu!j zy&yuwa}zsU4#^h@Qlu&tna8Gev>ir_7Pp{529R6+5{+MO#m7?jjM`8`)Bv~cqAjeq zo}3;%yxw_iYl8~_cjh1;K<=!;=YTu={r>N#wTL_TY*8=b4YbAm#uhbdIg7>vGiDZ> z#efaaR_o%zoYxR{nVpLk_RK+k4q6196+E;gyd+^MY0@(3 z(2>Q8mF&l%99+1_6(mTWC?DlZmaI^od_`*1DAA%tsXl$mj2W}iS6{8NV8LojmaMU2 z#ad_1taI(!dUx(@*v|%S1kPa|+5{seoAKhc)f;bY6D!ts1q$rYsnbrqdhIf9-0uCw z&^+MW_d|P_GHoveg#G)(paZ~p^r7#8^K^#}(yZAbpS3!?Zw)#MT#z_)3teuNqM9II`Mf6@|{gfx{;V%;sqKS$&11}hIBh7<1eZD?16f2ptRC&ALRKM*)}ozxgOoplA^ye3C3#j8v&&Wy(+7-^(dpI2E{p{!JPzSkjRp zlYttoObi&3b9q2L$Z|J|18E>ZEf+w8rVu(jMFlXK~Y+P;k;nt>P7c%V>sdoX0Qu0IB?j&g~t*BLe`tekWj!&GWb97k{$pk(6HUK2DbrTx&tQ| zFmc9=83q>Y+%|_rYi&*gUVxYDBCePF!&l=?Afkmoaj$&vhNKA66h%>@B#ttucv{{{ z+jICE}L!l_W(f zo}K0p$dpNUo*{fddBNcW3R6_!SE7QTYBj{bba>-DX7|uvV(x_2VzL+L$)&gaV7Dd^xNgW&<)GxniI(AIUnKRn1{HEj9owpu5(BIE4 zdDjZ$4;ltA;V?mjhy@xnEYYE3g#!ocE#&YZ;(1ZA0R?5pfDwBpOgJ-V&V?l_t~=a; z3K1fxiq5BsyA&xrcZtEpKt<&dF9rpWLR1zGC3QU-M#DYaMR;*qSBH|MCNe2a$L5r45x^!hRU?7_@6FJP7$z#D%K3ld5*>h3Eou>-k zyjAlPpk{|y*iJs2%Fvp6;fbg;it}yJ&hU-Xwzm; zmmWjMA}wj;xy zJz0MGDcdi<9;G79^LrsuiN}@4ai+S@DSw_FR4=b z$(GIEkYNEPO$xGNMX)t%LN?qG2B7xh#e4v2{|_b<}I!IXFvNzH#j&ghdHd8 zI&p&3O>W9)@VAzHU69OJQS4fe9qeoAkOk~Q}G@?| zNJa`^%$R)R#s#ej4?pswVr?>$1=gB!*RYv3jmJ!8s)QD^Snji&<;tPWY*rs_*?BwX4gXJ+JKBM+Ol@rO>5I>#kf0beFqwjr-ge5Kno!Oz?lV!2gK<1f(EU z+(1C+zz9aU0~Rcuu!CJehZCG)4Q_DD`HRpUP!S>0iWu>`yhzfWgCa$03t7m@{fpdP z!@elop#^JL%fA=9J22u1NA+~^xI;0Kh!i$U)Pqu#s_j&$n4lWf$_TZnRfnikH%^0w zB~Vajbfa6Y=M<-cjB8vghdkm@ec}_J;*wwds{aHfs2~uMkQx^ei72GSh=C<8aTP=H ziLZJ}NJ6nEGnqB|vXWJyR*{Nwfyz`?Jk_M8JfJqU#ilxSczw?2njo;i3ewf#>DQ@K z*Khy6-u~QnyK4&crnmTFFoWg)h7ALLcqLT_xkLKSSwn{GEfgp;KtMpDLZt}}8f}=ttjsPfcL-j%?x2Mr z1cm(~cL(!D;SQE4QL;ddnjRW7-l0WH9|HzVzug32!$uJ|Zn1dqP{WItKR$e-2ot72 zj2LIKku7Y=N51MJTsS1riLRiEOI$fhViJoZDM_gYN=<5^ElZXm*~zYE%Slc#C{G?S z1u3ZhSDMlqWo0QVE>xweTCXm3l}GidFC#Rhp#syG#ww+jw3Iq)O>1!o7Fdm~j&xKR z^ryc@(O?EE3Wg28YbH&Cn9g*S@6T-dp)G69-Nx8_=F89avR4E;$U(WmNlvQ1PIFrI zahc1Sm!3SO@#lWmzi%sl?)N_|yU>7@MRS1(nmat{V3Ri{pIrZQF3+0AY>eeHRU0s_LEqZ}1}jveb- zr|wX>&fINM*M&O-yUb;k&hPv#Kdx(c(D?JxWnI=@-QrJChdF&-}5n02;f$bXKcgblVbJ<{WM%li&{FV zrPq{$0!_LHc_sh#^K5k5T-~|-xGw(XSonu|L70R;c=DkIWj96iM+l-6cp5)1bgU=; zAJbt`ye`qi_~3^xXK>JgK|&JNu-&;QO)N(C>W(^Ji&$0aA4=5dHM(S`f|!x4B^P``F1s zSTD2lg}y3jVYnC6>B0pstno#NUSY?Jl

    ;chMGNtQX7BwzxTo9ZPoT_>&Uj+b8J` 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

    {})IQs7PWypp>^u_v9 z*x}57xJw65ZWm)lz~m(Wa8}6jzw$uwC1dT2lz*N^M(+CitiupOx3Dz~&Dr@usd;A% zlWLAUrvt34q_L;uWf{HdJ6)w`UZEu7g@a8cJ(XwJ%gR| zyORyy%qdfP|>!T^^mP4WZ{3E*CG zedKw*Z&}8%T+^E7SvZ$z4L+2c&&7HI4&@m-{8Mc1lNld7jtUuimKRZy9+r{Lrx^}!WzwQX{>g_fOkS@BofB1eT*FmTLME23@ zq@x(52d5%-;@+>Gdq$@ibhvSt5}pyOiMq}sbp?N`9}J4}94(4h`ej0Rkf3(YRmtA^ z)%?s);w%qGZ3HN}GyGw0bv$26&QYV#3_5HR z;q-~6cfgSbIJd&<45?E%HAbflP^I8X59c{La+tzl*+mt$sd$5zE8WE`x;PS8E{`vW zRpmyPTwcSfBY1rl%u|T*Xlx9HkH}l<;v3fUWT;usNjY|W$BPQdPLHUQPeC|NKd_Tp zCVItc0yp<)J!2F7QvO;_>Jn>lM}gHVBLLOw>P+9I}z6D;zoOPx9hOZq+&NEVYD^Wzw>IQKEq%= zue2gL8UjA4Z*a9PgHs1uTd?P{E4~4y%vE~=P%`^4D1I0}O?TqZ!f!7AKox~AT?suo zaZUZQ@`W#e5C~s>q!0hW#Wce=Zg$H9<64^e8#>cq8Fh}>nu8Ryc5)a}+aL(!y8U_r zauC-jIEFp%E+MWXf5KcQSzCaaqDdlNyZ(~L#aE-gJfA$!ddipC~SPS;HQjX_=wzgF05U>tg9aZ>8Guyz^z)$whlIjHnA}qN~MKJ4h-Dg7Ny8R118vmy%Pv%Mq(+D z8^%BC*?qHH9`G&c9}VrwnRn9*)(II4D13%>`$sOx>cX3m5`6iUK~UmxFzpJrUyZ>tZ3jHY zOy${Y-ei#+Yc1^Im-dd3&e-~#3%-<*L7%2T{!m({C0Sc5vAkyILh+A&!)oW&;LRV{ z_~eN$stVqE0AA~;i{pGl745n97RLppDUwvF zH0i!nZ*S4Bt-fJj&yZ$?gSrgz?BT;a4oaX+%?c3x)kLRK9saXviFjvRVZncYaQ zdGaLzNWZ!(y<4xe?(%5Yx%py~v0WtJ$|9pXY~6%H2_@=ns1ftG(xwiQ@8HX1@n0Mf zo+dIu7DpGDbUGCk-O-_Qk}O=GVrKmH+Jy=EdAz#U=XZVWsT9kjM0W}c8Qlq)KxO6p z!a#333vO0;diRwBUgu8>)|5DjL|6;h`;ScOD4>2&L8!P+9y(D#Gg%0DJ!II7O(Spz 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 diff --git a/deploy/dac/assets/index-CX3bR72r.css b/deploy/dac/assets/index-CX3bR72r.css deleted file mode 100644 index 1817db48..00000000 --- a/deploy/dac/assets/index-CX3bR72r.css +++ /dev/null @@ -1 +0,0 @@ -.sprotty{padding:0;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.sprotty-root{position:relative}.sprotty-hidden{display:block;position:absolute;width:0px;height:0px}.sprotty-popup{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;position:absolute;background:#fff;border-radius:5px;border:1px solid;max-width:400px;min-width:100px}.sprotty-popup>div{margin:10px}.sprotty-popup-closed{display:none}.sprotty-projection-bar.horizontal{position:absolute;width:100%;height:20px;left:0;bottom:0}.sprotty-projection-bar.vertical{position:absolute;width:20px;height:100%;right:0;top:0}.sprotty-viewport{z-index:1;border-style:solid;border-width:2px}.sprotty-projection-bar.horizontal .sprotty-projection,.sprotty-projection-bar.horizontal .sprotty-viewport{position:absolute;height:100%;top:0}.sprotty-projection-bar.vertical .sprotty-projection,.sprotty-projection-bar.vertical .sprotty-viewport{position:absolute;width:100%;left:0}@keyframes spin{to{transform:rotate(360deg)}}.animation-spin{animation:spin 1.5s linear infinite}.sprotty-missing{stroke-width:1;stroke:red;fill:red;font-size:14pt;text-anchor:start}.sprotty-junction{stroke:#000;stroke-width:1;fill:#fff}.ui-float{position:absolute;border-radius:10px;background-color:var(--color-primary)}kbd{background-color:var(--color-primary);color:var(--color-foreground);border-radius:3px;border:1px solid var(--color-foreground);box-shadow:0 1px 1px var(--color-foreground),0 2px 0 0 var(--color-background) inset;display:inline-block;font-size:.85em;font-weight:700;line-height:1;padding:2px 4px;white-space:nowrap}body{background-color:var(--color-background);color:var(--color-foreground);padding:0;margin:0;overflow:hidden}#sprotty{position:relative;height:100vh;width:100vw;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:0}svg.sprotty-graph{width:100%;height:100%;outline:none}.sprotty-hidden{display:none}:root{--color-foreground: #000;--color-background: #fff;--color-primary: #dfdfdf;--color-spacer: #e5e5e5;--color-error: #f00;--color-valid: #00b600;--color-highlighted: #77777a;--color-tool-palette-hover: #ccc;--color-tool-palette-selected: #bbb;--dark-mode: 0}:root[data-theme=dark]{--color-foreground: #fff;--color-background: #1d1c22;--color-spacer: var(--color-background);--color-primary: #302e38;--color-valid: #0f0;--color-tool-palette-hover: #f00;--color-tool-palette-selected: #f00;--dark-mode: 1}#sprotty[data-theme=dark] div{color-scheme:dark}@font-face{font-family:codicon;font-display:block;src:url(./codicon-BYm2YbZ6.ttf?c7330ef9199d97dc5b8aae3449a5dc27) format("truetype")}.codicon[class*=codicon-]{font: 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none;-ms-user-select:none}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:.5}.codicon-modifier-hidden{opacity:0}.codicon-loading{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.codicon-add:before{content:""}.codicon-plus:before{content:""}.codicon-gist-new:before{content:""}.codicon-repo-create:before{content:""}.codicon-lightbulb:before{content:""}.codicon-light-bulb:before{content:""}.codicon-repo:before{content:""}.codicon-repo-delete:before{content:""}.codicon-gist-fork:before{content:""}.codicon-repo-forked:before{content:""}.codicon-git-pull-request:before{content:""}.codicon-git-pull-request-abandoned:before{content:""}.codicon-record-keys:before{content:""}.codicon-keyboard:before{content:""}.codicon-tag:before{content:""}.codicon-git-pull-request-label:before{content:""}.codicon-tag-add:before{content:""}.codicon-tag-remove:before{content:""}.codicon-person:before{content:""}.codicon-person-follow:before{content:""}.codicon-person-outline:before{content:""}.codicon-person-filled:before{content:""}.codicon-source-control:before{content:""}.codicon-mirror:before{content:""}.codicon-mirror-public:before{content:""}.codicon-star:before{content:""}.codicon-star-add:before{content:""}.codicon-star-delete:before{content:""}.codicon-star-empty:before{content:""}.codicon-comment:before{content:""}.codicon-comment-add:before{content:""}.codicon-alert:before{content:""}.codicon-warning:before{content:""}.codicon-search:before{content:""}.codicon-search-save:before{content:""}.codicon-log-out:before{content:""}.codicon-sign-out:before{content:""}.codicon-log-in:before{content:""}.codicon-sign-in:before{content:""}.codicon-eye:before{content:""}.codicon-eye-unwatch:before{content:""}.codicon-eye-watch:before{content:""}.codicon-circle-filled:before{content:""}.codicon-primitive-dot:before{content:""}.codicon-close-dirty:before{content:""}.codicon-debug-breakpoint:before{content:""}.codicon-debug-breakpoint-disabled:before{content:""}.codicon-debug-hint:before{content:""}.codicon-terminal-decoration-success:before{content:""}.codicon-primitive-square:before{content:""}.codicon-edit:before{content:""}.codicon-pencil:before{content:""}.codicon-info:before{content:""}.codicon-issue-opened:before{content:""}.codicon-gist-private:before{content:""}.codicon-git-fork-private:before{content:""}.codicon-lock:before{content:""}.codicon-mirror-private:before{content:""}.codicon-close:before{content:""}.codicon-remove-close:before{content:""}.codicon-x:before{content:""}.codicon-repo-sync:before{content:""}.codicon-sync:before{content:""}.codicon-clone:before{content:""}.codicon-desktop-download:before{content:""}.codicon-beaker:before{content:""}.codicon-microscope:before{content:""}.codicon-vm:before{content:""}.codicon-device-desktop:before{content:""}.codicon-file:before{content:""}.codicon-more:before{content:""}.codicon-ellipsis:before{content:""}.codicon-kebab-horizontal:before{content:""}.codicon-mail-reply:before{content:""}.codicon-reply:before{content:""}.codicon-organization:before{content:""}.codicon-organization-filled:before{content:""}.codicon-organization-outline:before{content:""}.codicon-new-file:before{content:""}.codicon-file-add:before{content:""}.codicon-new-folder:before{content:""}.codicon-file-directory-create:before{content:""}.codicon-trash:before{content:""}.codicon-trashcan:before{content:""}.codicon-history:before{content:""}.codicon-clock:before{content:""}.codicon-folder:before{content:""}.codicon-file-directory:before{content:""}.codicon-symbol-folder:before{content:""}.codicon-logo-github:before{content:""}.codicon-mark-github:before{content:""}.codicon-github:before{content:""}.codicon-terminal:before{content:""}.codicon-console:before{content:""}.codicon-repl:before{content:""}.codicon-zap:before{content:""}.codicon-symbol-event:before{content:""}.codicon-error:before{content:""}.codicon-stop:before{content:""}.codicon-variable:before{content:""}.codicon-symbol-variable:before{content:""}.codicon-array:before{content:""}.codicon-symbol-array:before{content:""}.codicon-symbol-module:before{content:""}.codicon-symbol-package:before{content:""}.codicon-symbol-namespace:before{content:""}.codicon-symbol-object:before{content:""}.codicon-symbol-method:before{content:""}.codicon-symbol-function:before{content:""}.codicon-symbol-constructor:before{content:""}.codicon-symbol-boolean:before{content:""}.codicon-symbol-null:before{content:""}.codicon-symbol-numeric:before{content:""}.codicon-symbol-number:before{content:""}.codicon-symbol-structure:before{content:""}.codicon-symbol-struct:before{content:""}.codicon-symbol-parameter:before{content:""}.codicon-symbol-type-parameter:before{content:""}.codicon-symbol-key:before{content:""}.codicon-symbol-text:before{content:""}.codicon-symbol-reference:before{content:""}.codicon-go-to-file:before{content:""}.codicon-symbol-enum:before{content:""}.codicon-symbol-value:before{content:""}.codicon-symbol-ruler:before{content:""}.codicon-symbol-unit:before{content:""}.codicon-activate-breakpoints:before{content:""}.codicon-archive:before{content:""}.codicon-arrow-both:before{content:""}.codicon-arrow-down:before{content:""}.codicon-arrow-left:before{content:""}.codicon-arrow-right:before{content:""}.codicon-arrow-small-down:before{content:""}.codicon-arrow-small-left:before{content:""}.codicon-arrow-small-right:before{content:""}.codicon-arrow-small-up:before{content:""}.codicon-arrow-up:before{content:""}.codicon-bell:before{content:""}.codicon-bold:before{content:""}.codicon-book:before{content:""}.codicon-bookmark:before{content:""}.codicon-debug-breakpoint-conditional-unverified:before{content:""}.codicon-debug-breakpoint-conditional:before{content:""}.codicon-debug-breakpoint-conditional-disabled:before{content:""}.codicon-debug-breakpoint-data-unverified:before{content:""}.codicon-debug-breakpoint-data:before{content:""}.codicon-debug-breakpoint-data-disabled:before{content:""}.codicon-debug-breakpoint-log-unverified:before{content:""}.codicon-debug-breakpoint-log:before{content:""}.codicon-debug-breakpoint-log-disabled:before{content:""}.codicon-briefcase:before{content:""}.codicon-broadcast:before{content:""}.codicon-browser:before{content:""}.codicon-bug:before{content:""}.codicon-calendar:before{content:""}.codicon-case-sensitive:before{content:""}.codicon-check:before{content:""}.codicon-checklist:before{content:""}.codicon-chevron-down:before{content:""}.codicon-chevron-left:before{content:""}.codicon-chevron-right:before{content:""}.codicon-chevron-up:before{content:""}.codicon-chrome-close:before{content:""}.codicon-chrome-maximize:before{content:""}.codicon-chrome-minimize:before{content:""}.codicon-chrome-restore:before{content:""}.codicon-circle-outline:before{content:""}.codicon-circle:before{content:""}.codicon-debug-breakpoint-unverified:before{content:""}.codicon-terminal-decoration-incomplete:before{content:""}.codicon-circle-slash:before{content:""}.codicon-circuit-board:before{content:""}.codicon-clear-all:before{content:""}.codicon-clippy:before{content:""}.codicon-close-all:before{content:""}.codicon-cloud-download:before{content:""}.codicon-cloud-upload:before{content:""}.codicon-code:before{content:""}.codicon-collapse-all:before{content:""}.codicon-color-mode:before{content:""}.codicon-comment-discussion:before{content:""}.codicon-credit-card:before{content:""}.codicon-dash:before{content:""}.codicon-dashboard:before{content:""}.codicon-database:before{content:""}.codicon-debug-continue:before{content:""}.codicon-debug-disconnect:before{content:""}.codicon-debug-pause:before{content:""}.codicon-debug-restart:before{content:""}.codicon-debug-start:before{content:""}.codicon-debug-step-into:before{content:""}.codicon-debug-step-out:before{content:""}.codicon-debug-step-over:before{content:""}.codicon-debug-stop:before{content:""}.codicon-debug:before{content:""}.codicon-device-camera-video:before{content:""}.codicon-device-camera:before{content:""}.codicon-device-mobile:before{content:""}.codicon-diff-added:before{content:""}.codicon-diff-ignored:before{content:""}.codicon-diff-modified:before{content:""}.codicon-diff-removed:before{content:""}.codicon-diff-renamed:before{content:""}.codicon-diff:before{content:""}.codicon-diff-sidebyside:before{content:""}.codicon-discard:before{content:""}.codicon-editor-layout:before{content:""}.codicon-empty-window:before{content:""}.codicon-exclude:before{content:""}.codicon-extensions:before{content:""}.codicon-eye-closed:before{content:""}.codicon-file-binary:before{content:""}.codicon-file-code:before{content:""}.codicon-file-media:before{content:""}.codicon-file-pdf:before{content:""}.codicon-file-submodule:before{content:""}.codicon-file-symlink-directory:before{content:""}.codicon-file-symlink-file:before{content:""}.codicon-file-zip:before{content:""}.codicon-files:before{content:""}.codicon-filter:before{content:""}.codicon-flame:before{content:""}.codicon-fold-down:before{content:""}.codicon-fold-up:before{content:""}.codicon-fold:before{content:""}.codicon-folder-active:before{content:""}.codicon-folder-opened:before{content:""}.codicon-gear:before{content:""}.codicon-gift:before{content:""}.codicon-gist-secret:before{content:""}.codicon-gist:before{content:""}.codicon-git-commit:before{content:""}.codicon-git-compare:before{content:""}.codicon-compare-changes:before{content:""}.codicon-git-merge:before{content:""}.codicon-github-action:before{content:""}.codicon-github-alt:before{content:""}.codicon-globe:before{content:""}.codicon-grabber:before{content:""}.codicon-graph:before{content:""}.codicon-gripper:before{content:""}.codicon-heart:before{content:""}.codicon-home:before{content:""}.codicon-horizontal-rule:before{content:""}.codicon-hubot:before{content:""}.codicon-inbox:before{content:""}.codicon-issue-reopened:before{content:""}.codicon-issues:before{content:""}.codicon-italic:before{content:""}.codicon-jersey:before{content:""}.codicon-json:before{content:""}.codicon-bracket:before{content:""}.codicon-kebab-vertical:before{content:""}.codicon-key:before{content:""}.codicon-law:before{content:""}.codicon-lightbulb-autofix:before{content:""}.codicon-link-external:before{content:""}.codicon-link:before{content:""}.codicon-list-ordered:before{content:""}.codicon-list-unordered:before{content:""}.codicon-live-share:before{content:""}.codicon-loading:before{content:""}.codicon-location:before{content:""}.codicon-mail-read:before{content:""}.codicon-mail:before{content:""}.codicon-markdown:before{content:""}.codicon-megaphone:before{content:""}.codicon-mention:before{content:""}.codicon-milestone:before{content:""}.codicon-git-pull-request-milestone:before{content:""}.codicon-mortar-board:before{content:""}.codicon-move:before{content:""}.codicon-multiple-windows:before{content:""}.codicon-mute:before{content:""}.codicon-no-newline:before{content:""}.codicon-note:before{content:""}.codicon-octoface:before{content:""}.codicon-open-preview:before{content:""}.codicon-package:before{content:""}.codicon-paintcan:before{content:""}.codicon-pin:before{content:""}.codicon-play:before{content:""}.codicon-run:before{content:""}.codicon-plug:before{content:""}.codicon-preserve-case:before{content:""}.codicon-preview:before{content:""}.codicon-project:before{content:""}.codicon-pulse:before{content:""}.codicon-question:before{content:""}.codicon-quote:before{content:""}.codicon-radio-tower:before{content:""}.codicon-reactions:before{content:""}.codicon-references:before{content:""}.codicon-refresh:before{content:""}.codicon-regex:before{content:""}.codicon-remote-explorer:before{content:""}.codicon-remote:before{content:""}.codicon-remove:before{content:""}.codicon-replace-all:before{content:""}.codicon-replace:before{content:""}.codicon-repo-clone:before{content:""}.codicon-repo-force-push:before{content:""}.codicon-repo-pull:before{content:""}.codicon-repo-push:before{content:""}.codicon-report:before{content:""}.codicon-request-changes:before{content:""}.codicon-rocket:before{content:""}.codicon-root-folder-opened:before{content:""}.codicon-root-folder:before{content:""}.codicon-rss:before{content:""}.codicon-ruby:before{content:""}.codicon-save-all:before{content:""}.codicon-save-as:before{content:""}.codicon-save:before{content:""}.codicon-screen-full:before{content:""}.codicon-screen-normal:before{content:""}.codicon-search-stop:before{content:""}.codicon-server:before{content:""}.codicon-settings-gear:before{content:""}.codicon-settings:before{content:""}.codicon-shield:before{content:""}.codicon-smiley:before{content:""}.codicon-sort-precedence:before{content:""}.codicon-split-horizontal:before{content:""}.codicon-split-vertical:before{content:""}.codicon-squirrel:before{content:""}.codicon-star-full:before{content:""}.codicon-star-half:before{content:""}.codicon-symbol-class:before{content:""}.codicon-symbol-color:before{content:""}.codicon-symbol-constant:before{content:""}.codicon-symbol-enum-member:before{content:""}.codicon-symbol-field:before{content:""}.codicon-symbol-file:before{content:""}.codicon-symbol-interface:before{content:""}.codicon-symbol-keyword:before{content:""}.codicon-symbol-misc:before{content:""}.codicon-symbol-operator:before{content:""}.codicon-symbol-property:before{content:""}.codicon-wrench:before{content:""}.codicon-wrench-subaction:before{content:""}.codicon-symbol-snippet:before{content:""}.codicon-tasklist:before{content:""}.codicon-telescope:before{content:""}.codicon-text-size:before{content:""}.codicon-three-bars:before{content:""}.codicon-thumbsdown:before{content:""}.codicon-thumbsup:before{content:""}.codicon-tools:before{content:""}.codicon-triangle-down:before{content:""}.codicon-triangle-left:before{content:""}.codicon-triangle-right:before{content:""}.codicon-triangle-up:before{content:""}.codicon-twitter:before{content:""}.codicon-unfold:before{content:""}.codicon-unlock:before{content:""}.codicon-unmute:before{content:""}.codicon-unverified:before{content:""}.codicon-verified:before{content:""}.codicon-versions:before{content:""}.codicon-vm-active:before{content:""}.codicon-vm-outline:before{content:""}.codicon-vm-running:before{content:""}.codicon-watch:before{content:""}.codicon-whitespace:before{content:""}.codicon-whole-word:before{content:""}.codicon-window:before{content:""}.codicon-word-wrap:before{content:""}.codicon-zoom-in:before{content:""}.codicon-zoom-out:before{content:""}.codicon-list-filter:before{content:""}.codicon-list-flat:before{content:""}.codicon-list-selection:before{content:""}.codicon-selection:before{content:""}.codicon-list-tree:before{content:""}.codicon-debug-breakpoint-function-unverified:before{content:""}.codicon-debug-breakpoint-function:before{content:""}.codicon-debug-breakpoint-function-disabled:before{content:""}.codicon-debug-stackframe-active:before{content:""}.codicon-circle-small-filled:before{content:""}.codicon-debug-stackframe-dot:before{content:""}.codicon-terminal-decoration-mark:before{content:""}.codicon-debug-stackframe:before{content:""}.codicon-debug-stackframe-focused:before{content:""}.codicon-debug-breakpoint-unsupported:before{content:""}.codicon-symbol-string:before{content:""}.codicon-debug-reverse-continue:before{content:""}.codicon-debug-step-back:before{content:""}.codicon-debug-restart-frame:before{content:""}.codicon-debug-alt:before{content:""}.codicon-call-incoming:before{content:""}.codicon-call-outgoing:before{content:""}.codicon-menu:before{content:""}.codicon-expand-all:before{content:""}.codicon-feedback:before{content:""}.codicon-git-pull-request-reviewer:before{content:""}.codicon-group-by-ref-type:before{content:""}.codicon-ungroup-by-ref-type:before{content:""}.codicon-account:before{content:""}.codicon-git-pull-request-assignee:before{content:""}.codicon-bell-dot:before{content:""}.codicon-debug-console:before{content:""}.codicon-library:before{content:""}.codicon-output:before{content:""}.codicon-run-all:before{content:""}.codicon-sync-ignored:before{content:""}.codicon-pinned:before{content:""}.codicon-github-inverted:before{content:""}.codicon-server-process:before{content:""}.codicon-server-environment:before{content:""}.codicon-pass:before{content:""}.codicon-issue-closed:before{content:""}.codicon-stop-circle:before{content:""}.codicon-play-circle:before{content:""}.codicon-record:before{content:""}.codicon-debug-alt-small:before{content:""}.codicon-vm-connect:before{content:""}.codicon-cloud:before{content:""}.codicon-merge:before{content:""}.codicon-export:before{content:""}.codicon-graph-left:before{content:""}.codicon-magnet:before{content:""}.codicon-notebook:before{content:""}.codicon-redo:before{content:""}.codicon-check-all:before{content:""}.codicon-pinned-dirty:before{content:""}.codicon-pass-filled:before{content:""}.codicon-circle-large-filled:before{content:""}.codicon-circle-large:before{content:""}.codicon-circle-large-outline:before{content:""}.codicon-combine:before{content:""}.codicon-gather:before{content:""}.codicon-table:before{content:""}.codicon-variable-group:before{content:""}.codicon-type-hierarchy:before{content:""}.codicon-type-hierarchy-sub:before{content:""}.codicon-type-hierarchy-super:before{content:""}.codicon-git-pull-request-create:before{content:""}.codicon-run-above:before{content:""}.codicon-run-below:before{content:""}.codicon-notebook-template:before{content:""}.codicon-debug-rerun:before{content:""}.codicon-workspace-trusted:before{content:""}.codicon-workspace-untrusted:before{content:""}.codicon-workspace-unknown:before{content:""}.codicon-terminal-cmd:before{content:""}.codicon-terminal-debian:before{content:""}.codicon-terminal-linux:before{content:""}.codicon-terminal-powershell:before{content:""}.codicon-terminal-tmux:before{content:""}.codicon-terminal-ubuntu:before{content:""}.codicon-terminal-bash:before{content:""}.codicon-arrow-swap:before{content:""}.codicon-copy:before{content:""}.codicon-person-add:before{content:""}.codicon-filter-filled:before{content:""}.codicon-wand:before{content:""}.codicon-debug-line-by-line:before{content:""}.codicon-inspect:before{content:""}.codicon-layers:before{content:""}.codicon-layers-dot:before{content:""}.codicon-layers-active:before{content:""}.codicon-compass:before{content:""}.codicon-compass-dot:before{content:""}.codicon-compass-active:before{content:""}.codicon-azure:before{content:""}.codicon-issue-draft:before{content:""}.codicon-git-pull-request-closed:before{content:""}.codicon-git-pull-request-draft:before{content:""}.codicon-debug-all:before{content:""}.codicon-debug-coverage:before{content:""}.codicon-run-errors:before{content:""}.codicon-folder-library:before{content:""}.codicon-debug-continue-small:before{content:""}.codicon-beaker-stop:before{content:""}.codicon-graph-line:before{content:""}.codicon-graph-scatter:before{content:""}.codicon-pie-chart:before{content:""}.codicon-bracket-dot:before{content:""}.codicon-bracket-error:before{content:""}.codicon-lock-small:before{content:""}.codicon-azure-devops:before{content:""}.codicon-verified-filled:before{content:""}.codicon-newline:before{content:""}.codicon-layout:before{content:""}.codicon-layout-activitybar-left:before{content:""}.codicon-layout-activitybar-right:before{content:""}.codicon-layout-panel-left:before{content:""}.codicon-layout-panel-center:before{content:""}.codicon-layout-panel-justify:before{content:""}.codicon-layout-panel-right:before{content:""}.codicon-layout-panel:before{content:""}.codicon-layout-sidebar-left:before{content:""}.codicon-layout-sidebar-right:before{content:""}.codicon-layout-statusbar:before{content:""}.codicon-layout-menubar:before{content:""}.codicon-layout-centered:before{content:""}.codicon-target:before{content:""}.codicon-indent:before{content:""}.codicon-record-small:before{content:""}.codicon-error-small:before{content:""}.codicon-terminal-decoration-error:before{content:""}.codicon-arrow-circle-down:before{content:""}.codicon-arrow-circle-left:before{content:""}.codicon-arrow-circle-right:before{content:""}.codicon-arrow-circle-up:before{content:""}.codicon-layout-sidebar-right-off:before{content:""}.codicon-layout-panel-off:before{content:""}.codicon-layout-sidebar-left-off:before{content:""}.codicon-blank:before{content:""}.codicon-heart-filled:before{content:""}.codicon-map:before{content:""}.codicon-map-horizontal:before{content:""}.codicon-fold-horizontal:before{content:""}.codicon-map-filled:before{content:""}.codicon-map-horizontal-filled:before{content:""}.codicon-fold-horizontal-filled:before{content:""}.codicon-circle-small:before{content:""}.codicon-bell-slash:before{content:""}.codicon-bell-slash-dot:before{content:""}.codicon-comment-unresolved:before{content:""}.codicon-git-pull-request-go-to-changes:before{content:""}.codicon-git-pull-request-new-changes:before{content:""}.codicon-search-fuzzy:before{content:""}.codicon-comment-draft:before{content:""}.codicon-send:before{content:""}.codicon-sparkle:before{content:""}.codicon-insert:before{content:""}.codicon-mic:before{content:""}.codicon-thumbsdown-filled:before{content:""}.codicon-thumbsup-filled:before{content:""}.codicon-coffee:before{content:""}.codicon-snake:before{content:""}.codicon-game:before{content:""}.codicon-vr:before{content:""}.codicon-chip:before{content:""}.codicon-piano:before{content:""}.codicon-music:before{content:""}.codicon-mic-filled:before{content:""}.codicon-repo-fetch:before{content:""}.codicon-copilot:before{content:""}.codicon-lightbulb-sparkle:before{content:""}.codicon-robot:before{content:""}.codicon-sparkle-filled:before{content:""}.codicon-diff-single:before{content:""}.codicon-diff-multiple:before{content:""}.codicon-surround-with:before{content:""}.codicon-share:before{content:""}.codicon-git-stash:before{content:""}.codicon-git-stash-apply:before{content:""}.codicon-git-stash-pop:before{content:""}.codicon-vscode:before{content:""}.codicon-vscode-insiders:before{content:""}.codicon-code-oss:before{content:""}.codicon-run-coverage:before{content:""}.codicon-run-all-coverage:before{content:""}.codicon-coverage:before{content:""}.codicon-github-project:before{content:""}.codicon-map-vertical:before{content:""}.codicon-fold-vertical:before{content:""}.codicon-map-vertical-filled:before{content:""}.codicon-fold-vertical-filled:before{content:""}.codicon-go-to-search:before{content:""}.codicon-percentage:before{content:""}.codicon-sort-percentage:before{content:""}.codicon-attach:before{content:""}.codicon-go-to-editing-session:before{content:""}.codicon-edit-session:before{content:""}.codicon-code-review:before{content:""}.codicon-copilot-warning:before{content:""}.codicon-python:before{content:""}.codicon-copilot-large:before{content:""}.codicon-copilot-warning-large:before{content:""}.codicon-keyboard-tab:before{content:""}.codicon-copilot-blocked:before{content:""}.codicon-copilot-not-connected:before{content:""}.codicon-flag:before{content:""}.codicon-lightbulb-empty:before{content:""}.codicon-symbol-method-arrow:before{content:""}.codicon-copilot-unavailable:before{content:""}.codicon-repo-pinned:before{content:""}.codicon-keyboard-tab-above:before{content:""}.codicon-keyboard-tab-below:before{content:""}.codicon-git-pull-request-done:before{content:""}.codicon-mcp:before{content:""}.codicon-extensions-large:before{content:""}.codicon-layout-panel-dock:before{content:""}.codicon-layout-sidebar-left-dock:before{content:""}.codicon-layout-sidebar-right-dock:before{content:""}.codicon-copilot-in-progress:before{content:""}.codicon-copilot-error:before{content:""}.codicon-copilot-success:before{content:""}.codicon-chat-sparkle:before{content:""}.codicon-search-sparkle:before{content:""}.codicon-edit-sparkle:before{content:""}.codicon-copilot-snooze:before{content:""}.codicon-send-to-remote-agent:before{content:""}.codicon-comment-discussion-sparkle:before{content:""}.codicon-chat-sparkle-warning:before{content:""}.codicon-chat-sparkle-error:before{content:""}.codicon-collection:before{content:""}.codicon-new-collection:before{content:""}.codicon-thinking:before{content:""}.codicon-build:before{content:""}.codicon-comment-discussion-quote:before{content:""}.codicon-cursor:before{content:""}.codicon-eraser:before{content:""}.codicon-file-text:before{content:""}.codicon-quotes:before{content:""}.codicon-rename:before{content:""}.codicon-run-with-deps:before{content:""}.codicon-debug-connected:before{content:""}.codicon-strikethrough:before{content:""}.codicon-open-in-product:before{content:""}.codicon-index-zero:before{content:""}.codicon-agent:before{content:""}.codicon-edit-code:before{content:""}.codicon-repo-selected:before{content:""}.codicon-skip:before{content:""}.codicon-merge-into:before{content:""}.codicon-git-branch-changes:before{content:""}.codicon-git-branch-staged-changes:before{content:""}.codicon-git-branch-conflicts:before{content:""}.codicon-git-branch:before{content:""}.codicon-git-branch-create:before{content:""}.codicon-git-branch-delete:before{content:""}.codicon-search-large:before{content:""}.codicon-terminal-git-bash:before{content:""}.codicon-window-active:before{content:""}.codicon-forward:before{content:""}.codicon-download:before{content:""}.codicon-clockface:before{content:""}.codicon-unarchive:before{content:""}.codicon-session-in-progress:before{content:""}.codicon-collection-small:before{content:""}.codicon-vm-small:before{content:""}.codicon-cloud-small:before{content:""}.codicon-git-fetch:before{content:""}.codicon-vm-pending:before{content:""}.fa,.fa-brands,.fa-classic,.fa-regular,.fa-solid,.fab,.far,.fas{--_fa-family:var(--fa-family,var(--fa-style-family,"Font Awesome 7 Free"));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:var(--fa-display,inline-block);font-family:var(--_fa-family);font-feature-settings:normal;font-style:normal;font-synthesis:none;font-variant:normal;font-weight:var(--fa-style,900);line-height:1;text-align:center;text-rendering:auto;width:var(--fa-width,1.25em)}:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before{content:var(--fa)/""}@supports not (content:""/""){:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before{content:var(--fa)}}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-ul{list-style-type:none;margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0}.fa-ul>li{position:relative}.fa-li{inset-inline-start:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.0625em) var(--fa-border-style,solid) var(--fa-border-color,#eee);box-sizing:var(--fa-border-box-sizing,content-box);padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.fa-pull-end,.fa-pull-right{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media(prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation:none!important;transition:none!important}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{--fa-width:100%;inset:0;position:absolute;text-align:center;width:var(--fa-width);z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-0{--fa:"0"}.fa-1{--fa:"1"}.fa-2{--fa:"2"}.fa-3{--fa:"3"}.fa-4{--fa:"4"}.fa-5{--fa:"5"}.fa-6{--fa:"6"}.fa-7{--fa:"7"}.fa-8{--fa:"8"}.fa-9{--fa:"9"}.fa-exclamation{--fa:"!"}.fa-hashtag{--fa:"#"}.fa-dollar,.fa-dollar-sign,.fa-usd{--fa:"$"}.fa-percent,.fa-percentage{--fa:"%"}.fa-asterisk{--fa:"*"}.fa-add,.fa-plus{--fa:"+"}.fa-less-than{--fa:"<"}.fa-equals{--fa:"="}.fa-greater-than{--fa:">"}.fa-question{--fa:"?"}.fa-at{--fa:"@"}.fa-a{--fa:"A"}.fa-b{--fa:"B"}.fa-c{--fa:"C"}.fa-d{--fa:"D"}.fa-e{--fa:"E"}.fa-f{--fa:"F"}.fa-g{--fa:"G"}.fa-h{--fa:"H"}.fa-i{--fa:"I"}.fa-j{--fa:"J"}.fa-k{--fa:"K"}.fa-l{--fa:"L"}.fa-m{--fa:"M"}.fa-n{--fa:"N"}.fa-o{--fa:"O"}.fa-p{--fa:"P"}.fa-q{--fa:"Q"}.fa-r{--fa:"R"}.fa-s{--fa:"S"}.fa-t{--fa:"T"}.fa-u{--fa:"U"}.fa-v{--fa:"V"}.fa-w{--fa:"W"}.fa-x{--fa:"X"}.fa-y{--fa:"Y"}.fa-z{--fa:"Z"}.fa-faucet{--fa:""}.fa-faucet-drip{--fa:""}.fa-house-chimney-window{--fa:""}.fa-house-signal{--fa:""}.fa-temperature-arrow-down,.fa-temperature-down{--fa:""}.fa-temperature-arrow-up,.fa-temperature-up{--fa:""}.fa-trailer{--fa:""}.fa-bacteria{--fa:""}.fa-bacterium{--fa:""}.fa-box-tissue{--fa:""}.fa-hand-holding-medical{--fa:""}.fa-hand-sparkles{--fa:""}.fa-hands-bubbles,.fa-hands-wash{--fa:""}.fa-handshake-alt-slash,.fa-handshake-simple-slash,.fa-handshake-slash{--fa:""}.fa-head-side-cough{--fa:""}.fa-head-side-cough-slash{--fa:""}.fa-head-side-mask{--fa:""}.fa-head-side-virus{--fa:""}.fa-house-chimney-user{--fa:""}.fa-house-laptop,.fa-laptop-house{--fa:""}.fa-lungs-virus{--fa:""}.fa-people-arrows,.fa-people-arrows-left-right{--fa:""}.fa-plane-slash{--fa:""}.fa-pump-medical{--fa:""}.fa-pump-soap{--fa:""}.fa-shield-virus{--fa:""}.fa-sink{--fa:""}.fa-soap{--fa:""}.fa-stopwatch-20{--fa:""}.fa-shop-slash,.fa-store-alt-slash{--fa:""}.fa-store-slash{--fa:""}.fa-toilet-paper-slash{--fa:""}.fa-users-slash{--fa:""}.fa-virus{--fa:""}.fa-virus-slash{--fa:""}.fa-viruses{--fa:""}.fa-vest{--fa:""}.fa-vest-patches{--fa:""}.fa-arrow-trend-down{--fa:""}.fa-arrow-trend-up{--fa:""}.fa-arrow-up-from-bracket{--fa:""}.fa-austral-sign{--fa:""}.fa-baht-sign{--fa:""}.fa-bitcoin-sign{--fa:""}.fa-bolt-lightning{--fa:""}.fa-book-bookmark{--fa:""}.fa-camera-rotate{--fa:""}.fa-cedi-sign{--fa:""}.fa-chart-column{--fa:""}.fa-chart-gantt{--fa:""}.fa-clapperboard{--fa:""}.fa-clover{--fa:""}.fa-code-compare{--fa:""}.fa-code-fork{--fa:""}.fa-code-pull-request{--fa:""}.fa-colon-sign{--fa:""}.fa-cruzeiro-sign{--fa:""}.fa-display{--fa:""}.fa-dong-sign{--fa:""}.fa-elevator{--fa:""}.fa-filter-circle-xmark{--fa:""}.fa-florin-sign{--fa:""}.fa-folder-closed{--fa:""}.fa-franc-sign{--fa:""}.fa-guarani-sign{--fa:""}.fa-gun{--fa:""}.fa-hands-clapping{--fa:""}.fa-home-user,.fa-house-user{--fa:""}.fa-indian-rupee,.fa-indian-rupee-sign,.fa-inr{--fa:""}.fa-kip-sign{--fa:""}.fa-lari-sign{--fa:""}.fa-litecoin-sign{--fa:""}.fa-manat-sign{--fa:""}.fa-mask-face{--fa:""}.fa-mill-sign{--fa:""}.fa-money-bills{--fa:""}.fa-naira-sign{--fa:""}.fa-notdef{--fa:""}.fa-panorama{--fa:""}.fa-peseta-sign{--fa:""}.fa-peso-sign{--fa:""}.fa-plane-up{--fa:""}.fa-rupiah-sign{--fa:""}.fa-stairs{--fa:""}.fa-timeline{--fa:""}.fa-truck-front{--fa:""}.fa-try,.fa-turkish-lira,.fa-turkish-lira-sign{--fa:""}.fa-vault{--fa:""}.fa-magic-wand-sparkles,.fa-wand-magic-sparkles{--fa:""}.fa-wheat-alt,.fa-wheat-awn{--fa:""}.fa-wheelchair-alt,.fa-wheelchair-move{--fa:""}.fa-bangladeshi-taka-sign{--fa:""}.fa-bowl-rice{--fa:""}.fa-person-pregnant{--fa:""}.fa-home-lg,.fa-house-chimney{--fa:""}.fa-house-crack{--fa:""}.fa-house-medical{--fa:""}.fa-cent-sign{--fa:""}.fa-plus-minus{--fa:""}.fa-sailboat{--fa:""}.fa-section{--fa:""}.fa-shrimp{--fa:""}.fa-brazilian-real-sign{--fa:""}.fa-chart-simple{--fa:""}.fa-diagram-next{--fa:""}.fa-diagram-predecessor{--fa:""}.fa-diagram-successor{--fa:""}.fa-earth-oceania,.fa-globe-oceania{--fa:""}.fa-bug-slash{--fa:""}.fa-file-circle-plus{--fa:""}.fa-shop-lock{--fa:""}.fa-virus-covid{--fa:""}.fa-virus-covid-slash{--fa:""}.fa-anchor-circle-check{--fa:""}.fa-anchor-circle-exclamation{--fa:""}.fa-anchor-circle-xmark{--fa:""}.fa-anchor-lock{--fa:""}.fa-arrow-down-up-across-line{--fa:""}.fa-arrow-down-up-lock{--fa:""}.fa-arrow-right-to-city{--fa:""}.fa-arrow-up-from-ground-water{--fa:""}.fa-arrow-up-from-water-pump{--fa:""}.fa-arrow-up-right-dots{--fa:""}.fa-arrows-down-to-line{--fa:""}.fa-arrows-down-to-people{--fa:""}.fa-arrows-left-right-to-line{--fa:""}.fa-arrows-spin{--fa:""}.fa-arrows-split-up-and-left{--fa:""}.fa-arrows-to-circle{--fa:""}.fa-arrows-to-dot{--fa:""}.fa-arrows-to-eye{--fa:""}.fa-arrows-turn-right{--fa:""}.fa-arrows-turn-to-dots{--fa:""}.fa-arrows-up-to-line{--fa:""}.fa-bore-hole{--fa:""}.fa-bottle-droplet{--fa:""}.fa-bottle-water{--fa:""}.fa-bowl-food{--fa:""}.fa-boxes-packing{--fa:""}.fa-bridge{--fa:""}.fa-bridge-circle-check{--fa:""}.fa-bridge-circle-exclamation{--fa:""}.fa-bridge-circle-xmark{--fa:""}.fa-bridge-lock{--fa:""}.fa-bridge-water{--fa:""}.fa-bucket{--fa:""}.fa-bugs{--fa:""}.fa-building-circle-arrow-right{--fa:""}.fa-building-circle-check{--fa:""}.fa-building-circle-exclamation{--fa:""}.fa-building-circle-xmark{--fa:""}.fa-building-flag{--fa:""}.fa-building-lock{--fa:""}.fa-building-ngo{--fa:""}.fa-building-shield{--fa:""}.fa-building-un{--fa:""}.fa-building-user{--fa:""}.fa-building-wheat{--fa:""}.fa-burst{--fa:""}.fa-car-on{--fa:""}.fa-car-tunnel{--fa:""}.fa-child-combatant,.fa-child-rifle{--fa:""}.fa-children{--fa:""}.fa-circle-nodes{--fa:""}.fa-clipboard-question{--fa:""}.fa-cloud-showers-water{--fa:""}.fa-computer{--fa:""}.fa-cubes-stacked{--fa:""}.fa-envelope-circle-check{--fa:""}.fa-explosion{--fa:""}.fa-ferry{--fa:""}.fa-file-circle-exclamation{--fa:""}.fa-file-circle-minus{--fa:""}.fa-file-circle-question{--fa:""}.fa-file-shield{--fa:""}.fa-fire-burner{--fa:""}.fa-fish-fins{--fa:""}.fa-flask-vial{--fa:""}.fa-glass-water{--fa:""}.fa-glass-water-droplet{--fa:""}.fa-group-arrows-rotate{--fa:""}.fa-hand-holding-hand{--fa:""}.fa-handcuffs{--fa:""}.fa-hands-bound{--fa:""}.fa-hands-holding-child{--fa:""}.fa-hands-holding-circle{--fa:""}.fa-heart-circle-bolt{--fa:""}.fa-heart-circle-check{--fa:""}.fa-heart-circle-exclamation{--fa:""}.fa-heart-circle-minus{--fa:""}.fa-heart-circle-plus{--fa:""}.fa-heart-circle-xmark{--fa:""}.fa-helicopter-symbol{--fa:""}.fa-helmet-un{--fa:""}.fa-hill-avalanche{--fa:""}.fa-hill-rockslide{--fa:""}.fa-house-circle-check{--fa:""}.fa-house-circle-exclamation{--fa:""}.fa-house-circle-xmark{--fa:""}.fa-house-fire{--fa:""}.fa-house-flag{--fa:""}.fa-house-flood-water{--fa:""}.fa-house-flood-water-circle-arrow-right{--fa:""}.fa-house-lock{--fa:""}.fa-house-medical-circle-check{--fa:""}.fa-house-medical-circle-exclamation{--fa:""}.fa-house-medical-circle-xmark{--fa:""}.fa-house-medical-flag{--fa:""}.fa-house-tsunami{--fa:""}.fa-jar{--fa:""}.fa-jar-wheat{--fa:""}.fa-jet-fighter-up{--fa:""}.fa-jug-detergent{--fa:""}.fa-kitchen-set{--fa:""}.fa-land-mine-on{--fa:""}.fa-landmark-flag{--fa:""}.fa-laptop-file{--fa:""}.fa-lines-leaning{--fa:""}.fa-location-pin-lock{--fa:""}.fa-locust{--fa:""}.fa-magnifying-glass-arrow-right{--fa:""}.fa-magnifying-glass-chart{--fa:""}.fa-mars-and-venus-burst{--fa:""}.fa-mask-ventilator{--fa:""}.fa-mattress-pillow{--fa:""}.fa-mobile-retro{--fa:""}.fa-money-bill-transfer{--fa:""}.fa-money-bill-trend-up{--fa:""}.fa-money-bill-wheat{--fa:""}.fa-mosquito{--fa:""}.fa-mosquito-net{--fa:""}.fa-mound{--fa:""}.fa-mountain-city{--fa:""}.fa-mountain-sun{--fa:""}.fa-oil-well{--fa:""}.fa-people-group{--fa:""}.fa-people-line{--fa:""}.fa-people-pulling{--fa:""}.fa-people-robbery{--fa:""}.fa-people-roof{--fa:""}.fa-person-arrow-down-to-line{--fa:""}.fa-person-arrow-up-from-line{--fa:""}.fa-person-breastfeeding{--fa:""}.fa-person-burst{--fa:""}.fa-person-cane{--fa:""}.fa-person-chalkboard{--fa:""}.fa-person-circle-check{--fa:""}.fa-person-circle-exclamation{--fa:""}.fa-person-circle-minus{--fa:""}.fa-person-circle-plus{--fa:""}.fa-person-circle-question{--fa:""}.fa-person-circle-xmark{--fa:""}.fa-person-dress-burst{--fa:""}.fa-person-drowning{--fa:""}.fa-person-falling{--fa:""}.fa-person-falling-burst{--fa:""}.fa-person-half-dress{--fa:""}.fa-person-harassing{--fa:""}.fa-person-military-pointing{--fa:""}.fa-person-military-rifle{--fa:""}.fa-person-military-to-person{--fa:""}.fa-person-rays{--fa:""}.fa-person-rifle{--fa:""}.fa-person-shelter{--fa:""}.fa-person-walking-arrow-loop-left{--fa:""}.fa-person-walking-arrow-right{--fa:""}.fa-person-walking-dashed-line-arrow-right{--fa:""}.fa-person-walking-luggage{--fa:""}.fa-plane-circle-check{--fa:""}.fa-plane-circle-exclamation{--fa:""}.fa-plane-circle-xmark{--fa:""}.fa-plane-lock{--fa:""}.fa-plate-wheat{--fa:""}.fa-plug-circle-bolt{--fa:""}.fa-plug-circle-check{--fa:""}.fa-plug-circle-exclamation{--fa:""}.fa-plug-circle-minus{--fa:""}.fa-plug-circle-plus{--fa:""}.fa-plug-circle-xmark{--fa:""}.fa-ranking-star{--fa:""}.fa-road-barrier{--fa:""}.fa-road-bridge{--fa:""}.fa-road-circle-check{--fa:""}.fa-road-circle-exclamation{--fa:""}.fa-road-circle-xmark{--fa:""}.fa-road-lock{--fa:""}.fa-road-spikes{--fa:""}.fa-rug{--fa:""}.fa-sack-xmark{--fa:""}.fa-school-circle-check{--fa:""}.fa-school-circle-exclamation{--fa:""}.fa-school-circle-xmark{--fa:""}.fa-school-flag{--fa:""}.fa-school-lock{--fa:""}.fa-sheet-plastic{--fa:""}.fa-shield-cat{--fa:""}.fa-shield-dog{--fa:""}.fa-shield-heart{--fa:""}.fa-square-nfi{--fa:""}.fa-square-person-confined{--fa:""}.fa-square-virus{--fa:""}.fa-rod-asclepius,.fa-rod-snake,.fa-staff-aesculapius,.fa-staff-snake{--fa:""}.fa-sun-plant-wilt{--fa:""}.fa-tarp{--fa:""}.fa-tarp-droplet{--fa:""}.fa-tent{--fa:""}.fa-tent-arrow-down-to-line{--fa:""}.fa-tent-arrow-left-right{--fa:""}.fa-tent-arrow-turn-left{--fa:""}.fa-tent-arrows-down{--fa:""}.fa-tents{--fa:""}.fa-toilet-portable{--fa:""}.fa-toilets-portable{--fa:""}.fa-tower-cell{--fa:""}.fa-tower-observation{--fa:""}.fa-tree-city{--fa:""}.fa-trowel{--fa:""}.fa-trowel-bricks{--fa:""}.fa-truck-arrow-right{--fa:""}.fa-truck-droplet{--fa:""}.fa-truck-field{--fa:""}.fa-truck-field-un{--fa:""}.fa-truck-plane{--fa:""}.fa-users-between-lines{--fa:""}.fa-users-line{--fa:""}.fa-users-rays{--fa:""}.fa-users-rectangle{--fa:""}.fa-users-viewfinder{--fa:""}.fa-vial-circle-check{--fa:""}.fa-vial-virus{--fa:""}.fa-wheat-awn-circle-exclamation{--fa:""}.fa-worm{--fa:""}.fa-xmarks-lines{--fa:""}.fa-child-dress{--fa:""}.fa-child-reaching{--fa:""}.fa-file-circle-check{--fa:""}.fa-file-circle-xmark{--fa:""}.fa-person-through-window{--fa:""}.fa-plant-wilt{--fa:""}.fa-stapler{--fa:""}.fa-train-tram{--fa:""}.fa-table-cells-column-lock{--fa:""}.fa-table-cells-row-lock{--fa:""}.fa-thumb-tack-slash,.fa-thumbtack-slash{--fa:""}.fa-table-cells-row-unlock{--fa:""}.fa-chart-diagram{--fa:""}.fa-comment-nodes{--fa:""}.fa-file-fragment{--fa:""}.fa-file-half-dashed{--fa:""}.fa-hexagon-nodes{--fa:""}.fa-hexagon-nodes-bolt{--fa:""}.fa-square-binary{--fa:""}.fa-pentagon{--fa:""}.fa-non-binary{--fa:""}.fa-spiral{--fa:""}.fa-mobile-vibrate{--fa:""}.fa-single-quote-left{--fa:""}.fa-single-quote-right{--fa:""}.fa-bus-side{--fa:""}.fa-heptagon,.fa-septagon{--fa:""}.fa-glass-martini,.fa-martini-glass-empty{--fa:""}.fa-music{--fa:""}.fa-magnifying-glass,.fa-search{--fa:""}.fa-heart{--fa:""}.fa-star{--fa:""}.fa-user,.fa-user-alt,.fa-user-large{--fa:""}.fa-film,.fa-film-alt,.fa-film-simple{--fa:""}.fa-table-cells-large,.fa-th-large{--fa:""}.fa-table-cells,.fa-th{--fa:""}.fa-table-list,.fa-th-list{--fa:""}.fa-check{--fa:""}.fa-close,.fa-multiply,.fa-remove,.fa-times,.fa-xmark{--fa:""}.fa-magnifying-glass-plus,.fa-search-plus{--fa:""}.fa-magnifying-glass-minus,.fa-search-minus{--fa:""}.fa-power-off{--fa:""}.fa-signal,.fa-signal-5,.fa-signal-perfect{--fa:""}.fa-cog,.fa-gear{--fa:""}.fa-home,.fa-home-alt,.fa-home-lg-alt,.fa-house{--fa:""}.fa-clock,.fa-clock-four{--fa:""}.fa-road{--fa:""}.fa-download{--fa:""}.fa-inbox{--fa:""}.fa-arrow-right-rotate,.fa-arrow-rotate-forward,.fa-arrow-rotate-right,.fa-redo{--fa:""}.fa-arrows-rotate,.fa-refresh,.fa-sync{--fa:""}.fa-list-alt,.fa-rectangle-list{--fa:""}.fa-lock{--fa:""}.fa-flag{--fa:""}.fa-headphones,.fa-headphones-alt,.fa-headphones-simple{--fa:""}.fa-volume-off{--fa:""}.fa-volume-down,.fa-volume-low{--fa:""}.fa-volume-high,.fa-volume-up{--fa:""}.fa-qrcode{--fa:""}.fa-barcode{--fa:""}.fa-tag{--fa:""}.fa-tags{--fa:""}.fa-book{--fa:""}.fa-bookmark{--fa:""}.fa-print{--fa:""}.fa-camera,.fa-camera-alt{--fa:""}.fa-font{--fa:""}.fa-bold{--fa:""}.fa-italic{--fa:""}.fa-text-height{--fa:""}.fa-text-width{--fa:""}.fa-align-left{--fa:""}.fa-align-center{--fa:""}.fa-align-right{--fa:""}.fa-align-justify{--fa:""}.fa-list,.fa-list-squares{--fa:""}.fa-dedent,.fa-outdent{--fa:""}.fa-indent{--fa:""}.fa-video,.fa-video-camera{--fa:""}.fa-image{--fa:""}.fa-location-pin,.fa-map-marker{--fa:""}.fa-adjust,.fa-circle-half-stroke{--fa:""}.fa-droplet,.fa-tint{--fa:""}.fa-edit,.fa-pen-to-square{--fa:""}.fa-arrows,.fa-arrows-up-down-left-right{--fa:""}.fa-backward-step,.fa-step-backward{--fa:""}.fa-backward-fast,.fa-fast-backward{--fa:""}.fa-backward{--fa:""}.fa-play{--fa:""}.fa-pause{--fa:""}.fa-stop{--fa:""}.fa-forward{--fa:""}.fa-fast-forward,.fa-forward-fast{--fa:""}.fa-forward-step,.fa-step-forward{--fa:""}.fa-eject{--fa:""}.fa-chevron-left{--fa:""}.fa-chevron-right{--fa:""}.fa-circle-plus,.fa-plus-circle{--fa:""}.fa-circle-minus,.fa-minus-circle{--fa:""}.fa-circle-xmark,.fa-times-circle,.fa-xmark-circle{--fa:""}.fa-check-circle,.fa-circle-check{--fa:""}.fa-circle-question,.fa-question-circle{--fa:""}.fa-circle-info,.fa-info-circle{--fa:""}.fa-crosshairs{--fa:""}.fa-ban,.fa-cancel{--fa:""}.fa-arrow-left{--fa:""}.fa-arrow-right{--fa:""}.fa-arrow-up{--fa:""}.fa-arrow-down{--fa:""}.fa-mail-forward,.fa-share{--fa:""}.fa-expand{--fa:""}.fa-compress{--fa:""}.fa-minus,.fa-subtract{--fa:""}.fa-circle-exclamation,.fa-exclamation-circle{--fa:""}.fa-gift{--fa:""}.fa-leaf{--fa:""}.fa-fire{--fa:""}.fa-eye{--fa:""}.fa-eye-slash{--fa:""}.fa-exclamation-triangle,.fa-triangle-exclamation,.fa-warning{--fa:""}.fa-plane{--fa:""}.fa-calendar-alt,.fa-calendar-days{--fa:""}.fa-random,.fa-shuffle{--fa:""}.fa-comment{--fa:""}.fa-magnet{--fa:""}.fa-chevron-up{--fa:""}.fa-chevron-down{--fa:""}.fa-retweet{--fa:""}.fa-cart-shopping,.fa-shopping-cart{--fa:""}.fa-folder,.fa-folder-blank{--fa:""}.fa-folder-open{--fa:""}.fa-arrows-up-down,.fa-arrows-v{--fa:""}.fa-arrows-h,.fa-arrows-left-right{--fa:""}.fa-bar-chart,.fa-chart-bar{--fa:""}.fa-camera-retro{--fa:""}.fa-key{--fa:""}.fa-cogs,.fa-gears{--fa:""}.fa-comments{--fa:""}.fa-star-half{--fa:""}.fa-arrow-right-from-bracket,.fa-sign-out{--fa:""}.fa-thumb-tack,.fa-thumbtack{--fa:""}.fa-arrow-up-right-from-square,.fa-external-link{--fa:""}.fa-arrow-right-to-bracket,.fa-sign-in{--fa:""}.fa-trophy{--fa:""}.fa-upload{--fa:""}.fa-lemon{--fa:""}.fa-phone{--fa:""}.fa-phone-square,.fa-square-phone{--fa:""}.fa-unlock{--fa:""}.fa-credit-card,.fa-credit-card-alt{--fa:""}.fa-feed,.fa-rss{--fa:""}.fa-hard-drive,.fa-hdd{--fa:""}.fa-bullhorn{--fa:""}.fa-certificate{--fa:""}.fa-hand-point-right{--fa:""}.fa-hand-point-left{--fa:""}.fa-hand-point-up{--fa:""}.fa-hand-point-down{--fa:""}.fa-arrow-circle-left,.fa-circle-arrow-left{--fa:""}.fa-arrow-circle-right,.fa-circle-arrow-right{--fa:""}.fa-arrow-circle-up,.fa-circle-arrow-up{--fa:""}.fa-arrow-circle-down,.fa-circle-arrow-down{--fa:""}.fa-globe{--fa:""}.fa-wrench{--fa:""}.fa-list-check,.fa-tasks{--fa:""}.fa-filter{--fa:""}.fa-briefcase{--fa:""}.fa-arrows-alt,.fa-up-down-left-right{--fa:""}.fa-users{--fa:""}.fa-chain,.fa-link{--fa:""}.fa-cloud{--fa:""}.fa-flask{--fa:""}.fa-cut,.fa-scissors{--fa:""}.fa-copy{--fa:""}.fa-paperclip{--fa:""}.fa-floppy-disk,.fa-save{--fa:""}.fa-square{--fa:""}.fa-bars,.fa-navicon{--fa:""}.fa-list-dots,.fa-list-ul{--fa:""}.fa-list-1-2,.fa-list-numeric,.fa-list-ol{--fa:""}.fa-strikethrough{--fa:""}.fa-underline{--fa:""}.fa-table{--fa:""}.fa-magic,.fa-wand-magic{--fa:""}.fa-truck{--fa:""}.fa-money-bill{--fa:""}.fa-caret-down{--fa:""}.fa-caret-up{--fa:""}.fa-caret-left{--fa:""}.fa-caret-right{--fa:""}.fa-columns,.fa-table-columns{--fa:""}.fa-sort,.fa-unsorted{--fa:""}.fa-sort-desc,.fa-sort-down{--fa:""}.fa-sort-asc,.fa-sort-up{--fa:""}.fa-envelope{--fa:""}.fa-arrow-left-rotate,.fa-arrow-rotate-back,.fa-arrow-rotate-backward,.fa-arrow-rotate-left,.fa-undo{--fa:""}.fa-gavel,.fa-legal{--fa:""}.fa-bolt,.fa-zap{--fa:""}.fa-sitemap{--fa:""}.fa-umbrella{--fa:""}.fa-file-clipboard,.fa-paste{--fa:""}.fa-lightbulb{--fa:""}.fa-arrow-right-arrow-left,.fa-exchange{--fa:""}.fa-cloud-arrow-down,.fa-cloud-download,.fa-cloud-download-alt{--fa:""}.fa-cloud-arrow-up,.fa-cloud-upload,.fa-cloud-upload-alt{--fa:""}.fa-user-doctor,.fa-user-md{--fa:""}.fa-stethoscope{--fa:""}.fa-suitcase{--fa:""}.fa-bell{--fa:""}.fa-coffee,.fa-mug-saucer{--fa:""}.fa-hospital,.fa-hospital-alt,.fa-hospital-wide{--fa:""}.fa-ambulance,.fa-truck-medical{--fa:""}.fa-medkit,.fa-suitcase-medical{--fa:""}.fa-fighter-jet,.fa-jet-fighter{--fa:""}.fa-beer,.fa-beer-mug-empty{--fa:""}.fa-h-square,.fa-square-h{--fa:""}.fa-plus-square,.fa-square-plus{--fa:""}.fa-angle-double-left,.fa-angles-left{--fa:""}.fa-angle-double-right,.fa-angles-right{--fa:""}.fa-angle-double-up,.fa-angles-up{--fa:""}.fa-angle-double-down,.fa-angles-down{--fa:""}.fa-angle-left{--fa:""}.fa-angle-right{--fa:""}.fa-angle-up{--fa:""}.fa-angle-down{--fa:""}.fa-laptop{--fa:""}.fa-tablet-button{--fa:""}.fa-mobile-button{--fa:""}.fa-quote-left,.fa-quote-left-alt{--fa:""}.fa-quote-right,.fa-quote-right-alt{--fa:""}.fa-spinner{--fa:""}.fa-circle{--fa:""}.fa-face-smile,.fa-smile{--fa:""}.fa-face-frown,.fa-frown{--fa:""}.fa-face-meh,.fa-meh{--fa:""}.fa-gamepad{--fa:""}.fa-keyboard{--fa:""}.fa-flag-checkered{--fa:""}.fa-terminal{--fa:""}.fa-code{--fa:""}.fa-mail-reply-all,.fa-reply-all{--fa:""}.fa-location-arrow{--fa:""}.fa-crop{--fa:""}.fa-code-branch{--fa:""}.fa-chain-broken,.fa-chain-slash,.fa-link-slash,.fa-unlink{--fa:""}.fa-info{--fa:""}.fa-superscript{--fa:""}.fa-subscript{--fa:""}.fa-eraser{--fa:""}.fa-puzzle-piece{--fa:""}.fa-microphone{--fa:""}.fa-microphone-slash{--fa:""}.fa-shield,.fa-shield-blank{--fa:""}.fa-calendar{--fa:""}.fa-fire-extinguisher{--fa:""}.fa-rocket{--fa:""}.fa-chevron-circle-left,.fa-circle-chevron-left{--fa:""}.fa-chevron-circle-right,.fa-circle-chevron-right{--fa:""}.fa-chevron-circle-up,.fa-circle-chevron-up{--fa:""}.fa-chevron-circle-down,.fa-circle-chevron-down{--fa:""}.fa-anchor{--fa:""}.fa-unlock-alt,.fa-unlock-keyhole{--fa:""}.fa-bullseye{--fa:""}.fa-ellipsis,.fa-ellipsis-h{--fa:""}.fa-ellipsis-v,.fa-ellipsis-vertical{--fa:""}.fa-rss-square,.fa-square-rss{--fa:""}.fa-circle-play,.fa-play-circle{--fa:""}.fa-ticket{--fa:""}.fa-minus-square,.fa-square-minus{--fa:""}.fa-arrow-turn-up,.fa-level-up{--fa:""}.fa-arrow-turn-down,.fa-level-down{--fa:""}.fa-check-square,.fa-square-check{--fa:""}.fa-pen-square,.fa-pencil-square,.fa-square-pen{--fa:""}.fa-external-link-square,.fa-square-arrow-up-right{--fa:""}.fa-share-from-square,.fa-share-square{--fa:""}.fa-compass{--fa:""}.fa-caret-square-down,.fa-square-caret-down{--fa:""}.fa-caret-square-up,.fa-square-caret-up{--fa:""}.fa-caret-square-right,.fa-square-caret-right{--fa:""}.fa-eur,.fa-euro,.fa-euro-sign{--fa:""}.fa-gbp,.fa-pound-sign,.fa-sterling-sign{--fa:""}.fa-rupee,.fa-rupee-sign{--fa:""}.fa-cny,.fa-jpy,.fa-rmb,.fa-yen,.fa-yen-sign{--fa:""}.fa-rouble,.fa-rub,.fa-ruble,.fa-ruble-sign{--fa:""}.fa-krw,.fa-won,.fa-won-sign{--fa:""}.fa-file{--fa:""}.fa-file-alt,.fa-file-lines,.fa-file-text{--fa:""}.fa-arrow-down-a-z,.fa-sort-alpha-asc,.fa-sort-alpha-down{--fa:""}.fa-arrow-up-a-z,.fa-sort-alpha-up{--fa:""}.fa-arrow-down-wide-short,.fa-sort-amount-asc,.fa-sort-amount-down{--fa:""}.fa-arrow-up-wide-short,.fa-sort-amount-up{--fa:""}.fa-arrow-down-1-9,.fa-sort-numeric-asc,.fa-sort-numeric-down{--fa:""}.fa-arrow-up-1-9,.fa-sort-numeric-up{--fa:""}.fa-thumbs-up{--fa:""}.fa-thumbs-down{--fa:""}.fa-arrow-down-long,.fa-long-arrow-down{--fa:""}.fa-arrow-up-long,.fa-long-arrow-up{--fa:""}.fa-arrow-left-long,.fa-long-arrow-left{--fa:""}.fa-arrow-right-long,.fa-long-arrow-right{--fa:""}.fa-female,.fa-person-dress{--fa:""}.fa-male,.fa-person{--fa:""}.fa-sun{--fa:""}.fa-moon{--fa:""}.fa-archive,.fa-box-archive{--fa:""}.fa-bug{--fa:""}.fa-caret-square-left,.fa-square-caret-left{--fa:""}.fa-circle-dot,.fa-dot-circle{--fa:""}.fa-wheelchair{--fa:""}.fa-lira-sign{--fa:""}.fa-shuttle-space,.fa-space-shuttle{--fa:""}.fa-envelope-square,.fa-square-envelope{--fa:""}.fa-bank,.fa-building-columns,.fa-institution,.fa-museum,.fa-university{--fa:""}.fa-graduation-cap,.fa-mortar-board{--fa:""}.fa-language{--fa:""}.fa-fax{--fa:""}.fa-building{--fa:""}.fa-child{--fa:""}.fa-paw{--fa:""}.fa-cube{--fa:""}.fa-cubes{--fa:""}.fa-recycle{--fa:""}.fa-automobile,.fa-car{--fa:""}.fa-cab,.fa-taxi{--fa:""}.fa-tree{--fa:""}.fa-database{--fa:""}.fa-file-pdf{--fa:""}.fa-file-word{--fa:""}.fa-file-excel{--fa:""}.fa-file-powerpoint{--fa:""}.fa-file-image{--fa:""}.fa-file-archive,.fa-file-zipper{--fa:""}.fa-file-audio{--fa:""}.fa-file-video{--fa:""}.fa-file-code{--fa:""}.fa-life-ring{--fa:""}.fa-circle-notch{--fa:""}.fa-paper-plane{--fa:""}.fa-clock-rotate-left,.fa-history{--fa:""}.fa-header,.fa-heading{--fa:""}.fa-paragraph{--fa:""}.fa-sliders,.fa-sliders-h{--fa:""}.fa-share-alt,.fa-share-nodes{--fa:""}.fa-share-alt-square,.fa-square-share-nodes{--fa:""}.fa-bomb{--fa:""}.fa-futbol,.fa-futbol-ball,.fa-soccer-ball{--fa:""}.fa-teletype,.fa-tty{--fa:""}.fa-binoculars{--fa:""}.fa-plug{--fa:""}.fa-newspaper{--fa:""}.fa-wifi,.fa-wifi-3,.fa-wifi-strong{--fa:""}.fa-calculator{--fa:""}.fa-bell-slash{--fa:""}.fa-trash{--fa:""}.fa-copyright{--fa:""}.fa-eye-dropper,.fa-eye-dropper-empty,.fa-eyedropper{--fa:""}.fa-paint-brush,.fa-paintbrush{--fa:""}.fa-birthday-cake,.fa-cake,.fa-cake-candles{--fa:""}.fa-area-chart,.fa-chart-area{--fa:""}.fa-chart-pie,.fa-pie-chart{--fa:""}.fa-chart-line,.fa-line-chart{--fa:""}.fa-toggle-off{--fa:""}.fa-toggle-on{--fa:""}.fa-bicycle{--fa:""}.fa-bus{--fa:""}.fa-closed-captioning{--fa:""}.fa-ils,.fa-shekel,.fa-shekel-sign,.fa-sheqel,.fa-sheqel-sign{--fa:""}.fa-cart-plus{--fa:""}.fa-cart-arrow-down{--fa:""}.fa-diamond{--fa:""}.fa-ship{--fa:""}.fa-user-secret{--fa:""}.fa-motorcycle{--fa:""}.fa-street-view{--fa:""}.fa-heart-pulse,.fa-heartbeat{--fa:""}.fa-venus{--fa:""}.fa-mars{--fa:""}.fa-mercury{--fa:""}.fa-mars-and-venus{--fa:""}.fa-transgender,.fa-transgender-alt{--fa:""}.fa-venus-double{--fa:""}.fa-mars-double{--fa:""}.fa-venus-mars{--fa:""}.fa-mars-stroke{--fa:""}.fa-mars-stroke-up,.fa-mars-stroke-v{--fa:""}.fa-mars-stroke-h,.fa-mars-stroke-right{--fa:""}.fa-neuter{--fa:""}.fa-genderless{--fa:""}.fa-server{--fa:""}.fa-user-plus{--fa:""}.fa-user-times,.fa-user-xmark{--fa:""}.fa-bed{--fa:""}.fa-train{--fa:""}.fa-subway,.fa-train-subway{--fa:""}.fa-battery,.fa-battery-5,.fa-battery-full{--fa:""}.fa-battery-4,.fa-battery-three-quarters{--fa:""}.fa-battery-3,.fa-battery-half{--fa:""}.fa-battery-2,.fa-battery-quarter{--fa:""}.fa-battery-0,.fa-battery-empty{--fa:""}.fa-arrow-pointer,.fa-mouse-pointer{--fa:""}.fa-i-cursor{--fa:""}.fa-object-group{--fa:""}.fa-object-ungroup{--fa:""}.fa-note-sticky,.fa-sticky-note{--fa:""}.fa-clone{--fa:""}.fa-balance-scale,.fa-scale-balanced{--fa:""}.fa-hourglass-1,.fa-hourglass-start{--fa:""}.fa-hourglass-2,.fa-hourglass-half{--fa:""}.fa-hourglass-3,.fa-hourglass-end{--fa:""}.fa-hourglass,.fa-hourglass-empty{--fa:""}.fa-hand-back-fist,.fa-hand-rock{--fa:""}.fa-hand,.fa-hand-paper{--fa:""}.fa-hand-scissors{--fa:""}.fa-hand-lizard{--fa:""}.fa-hand-spock{--fa:""}.fa-hand-pointer{--fa:""}.fa-hand-peace{--fa:""}.fa-trademark{--fa:""}.fa-registered{--fa:""}.fa-television,.fa-tv,.fa-tv-alt{--fa:""}.fa-calendar-plus{--fa:""}.fa-calendar-minus{--fa:""}.fa-calendar-times,.fa-calendar-xmark{--fa:""}.fa-calendar-check{--fa:""}.fa-industry{--fa:""}.fa-map-pin{--fa:""}.fa-map-signs,.fa-signs-post{--fa:""}.fa-map{--fa:""}.fa-comment-alt,.fa-message{--fa:""}.fa-circle-pause,.fa-pause-circle{--fa:""}.fa-circle-stop,.fa-stop-circle{--fa:""}.fa-bag-shopping,.fa-shopping-bag{--fa:""}.fa-basket-shopping,.fa-shopping-basket{--fa:""}.fa-universal-access{--fa:""}.fa-blind,.fa-person-walking-with-cane{--fa:""}.fa-audio-description{--fa:""}.fa-phone-volume,.fa-volume-control-phone{--fa:""}.fa-braille{--fa:""}.fa-assistive-listening-systems,.fa-ear-listen{--fa:""}.fa-american-sign-language-interpreting,.fa-asl-interpreting,.fa-hands-american-sign-language-interpreting,.fa-hands-asl-interpreting{--fa:""}.fa-deaf,.fa-deafness,.fa-ear-deaf,.fa-hard-of-hearing{--fa:""}.fa-hands,.fa-sign-language,.fa-signing{--fa:""}.fa-eye-low-vision,.fa-low-vision{--fa:""}.fa-handshake,.fa-handshake-alt,.fa-handshake-simple{--fa:""}.fa-envelope-open{--fa:""}.fa-address-book,.fa-contact-book{--fa:""}.fa-address-card,.fa-contact-card,.fa-vcard{--fa:""}.fa-circle-user,.fa-user-circle{--fa:""}.fa-id-badge{--fa:""}.fa-drivers-license,.fa-id-card{--fa:""}.fa-temperature-4,.fa-temperature-full,.fa-thermometer-4,.fa-thermometer-full{--fa:""}.fa-temperature-3,.fa-temperature-three-quarters,.fa-thermometer-3,.fa-thermometer-three-quarters{--fa:""}.fa-temperature-2,.fa-temperature-half,.fa-thermometer-2,.fa-thermometer-half{--fa:""}.fa-temperature-1,.fa-temperature-quarter,.fa-thermometer-1,.fa-thermometer-quarter{--fa:""}.fa-temperature-0,.fa-temperature-empty,.fa-thermometer-0,.fa-thermometer-empty{--fa:""}.fa-shower{--fa:""}.fa-bath,.fa-bathtub{--fa:""}.fa-podcast{--fa:""}.fa-window-maximize{--fa:""}.fa-window-minimize{--fa:""}.fa-window-restore{--fa:""}.fa-square-xmark,.fa-times-square,.fa-xmark-square{--fa:""}.fa-microchip{--fa:""}.fa-snowflake{--fa:""}.fa-spoon,.fa-utensil-spoon{--fa:""}.fa-cutlery,.fa-utensils{--fa:""}.fa-rotate-back,.fa-rotate-backward,.fa-rotate-left,.fa-undo-alt{--fa:""}.fa-trash-alt,.fa-trash-can{--fa:""}.fa-rotate,.fa-sync-alt{--fa:""}.fa-stopwatch{--fa:""}.fa-right-from-bracket,.fa-sign-out-alt{--fa:""}.fa-right-to-bracket,.fa-sign-in-alt{--fa:""}.fa-redo-alt,.fa-rotate-forward,.fa-rotate-right{--fa:""}.fa-poo{--fa:""}.fa-images{--fa:""}.fa-pencil,.fa-pencil-alt{--fa:""}.fa-pen{--fa:""}.fa-pen-alt,.fa-pen-clip{--fa:""}.fa-octagon{--fa:""}.fa-down-long,.fa-long-arrow-alt-down{--fa:""}.fa-left-long,.fa-long-arrow-alt-left{--fa:""}.fa-long-arrow-alt-right,.fa-right-long{--fa:""}.fa-long-arrow-alt-up,.fa-up-long{--fa:""}.fa-hexagon{--fa:""}.fa-file-edit,.fa-file-pen{--fa:""}.fa-expand-arrows-alt,.fa-maximize{--fa:""}.fa-clipboard{--fa:""}.fa-arrows-alt-h,.fa-left-right{--fa:""}.fa-arrows-alt-v,.fa-up-down{--fa:""}.fa-alarm-clock{--fa:""}.fa-arrow-alt-circle-down,.fa-circle-down{--fa:""}.fa-arrow-alt-circle-left,.fa-circle-left{--fa:""}.fa-arrow-alt-circle-right,.fa-circle-right{--fa:""}.fa-arrow-alt-circle-up,.fa-circle-up{--fa:""}.fa-external-link-alt,.fa-up-right-from-square{--fa:""}.fa-external-link-square-alt,.fa-square-up-right{--fa:""}.fa-exchange-alt,.fa-right-left{--fa:""}.fa-repeat{--fa:""}.fa-code-commit{--fa:""}.fa-code-merge{--fa:""}.fa-desktop,.fa-desktop-alt{--fa:""}.fa-gem{--fa:""}.fa-level-down-alt,.fa-turn-down{--fa:""}.fa-level-up-alt,.fa-turn-up{--fa:""}.fa-lock-open{--fa:""}.fa-location-dot,.fa-map-marker-alt{--fa:""}.fa-microphone-alt,.fa-microphone-lines{--fa:""}.fa-mobile-alt,.fa-mobile-screen-button{--fa:""}.fa-mobile,.fa-mobile-android,.fa-mobile-phone{--fa:""}.fa-mobile-android-alt,.fa-mobile-screen{--fa:""}.fa-money-bill-1,.fa-money-bill-alt{--fa:""}.fa-phone-slash{--fa:""}.fa-image-portrait,.fa-portrait{--fa:""}.fa-mail-reply,.fa-reply{--fa:""}.fa-shield-alt,.fa-shield-halved{--fa:""}.fa-tablet-alt,.fa-tablet-screen-button{--fa:""}.fa-tablet,.fa-tablet-android{--fa:""}.fa-ticket-alt,.fa-ticket-simple{--fa:""}.fa-rectangle-times,.fa-rectangle-xmark,.fa-times-rectangle,.fa-window-close{--fa:""}.fa-compress-alt,.fa-down-left-and-up-right-to-center{--fa:""}.fa-expand-alt,.fa-up-right-and-down-left-from-center{--fa:""}.fa-baseball-bat-ball{--fa:""}.fa-baseball,.fa-baseball-ball{--fa:""}.fa-basketball,.fa-basketball-ball{--fa:""}.fa-bowling-ball{--fa:""}.fa-chess{--fa:""}.fa-chess-bishop{--fa:""}.fa-chess-board{--fa:""}.fa-chess-king{--fa:""}.fa-chess-knight{--fa:""}.fa-chess-pawn{--fa:""}.fa-chess-queen{--fa:""}.fa-chess-rook{--fa:""}.fa-dumbbell{--fa:""}.fa-football,.fa-football-ball{--fa:""}.fa-golf-ball,.fa-golf-ball-tee{--fa:""}.fa-hockey-puck{--fa:""}.fa-broom-ball,.fa-quidditch,.fa-quidditch-broom-ball{--fa:""}.fa-square-full{--fa:""}.fa-ping-pong-paddle-ball,.fa-table-tennis,.fa-table-tennis-paddle-ball{--fa:""}.fa-volleyball,.fa-volleyball-ball{--fa:""}.fa-allergies,.fa-hand-dots{--fa:""}.fa-band-aid,.fa-bandage{--fa:""}.fa-box{--fa:""}.fa-boxes,.fa-boxes-alt,.fa-boxes-stacked{--fa:""}.fa-briefcase-medical{--fa:""}.fa-burn,.fa-fire-flame-simple{--fa:""}.fa-capsules{--fa:""}.fa-clipboard-check{--fa:""}.fa-clipboard-list{--fa:""}.fa-diagnoses,.fa-person-dots-from-line{--fa:""}.fa-dna{--fa:""}.fa-dolly,.fa-dolly-box{--fa:""}.fa-cart-flatbed,.fa-dolly-flatbed{--fa:""}.fa-file-medical{--fa:""}.fa-file-medical-alt,.fa-file-waveform{--fa:""}.fa-first-aid,.fa-kit-medical{--fa:""}.fa-circle-h,.fa-hospital-symbol{--fa:""}.fa-id-card-alt,.fa-id-card-clip{--fa:""}.fa-notes-medical{--fa:""}.fa-pallet{--fa:""}.fa-pills{--fa:""}.fa-prescription-bottle{--fa:""}.fa-prescription-bottle-alt,.fa-prescription-bottle-medical{--fa:""}.fa-bed-pulse,.fa-procedures{--fa:""}.fa-shipping-fast,.fa-truck-fast{--fa:""}.fa-smoking{--fa:""}.fa-syringe{--fa:""}.fa-tablets{--fa:""}.fa-thermometer{--fa:""}.fa-vial{--fa:""}.fa-vials{--fa:""}.fa-warehouse{--fa:""}.fa-weight,.fa-weight-scale{--fa:""}.fa-x-ray{--fa:""}.fa-box-open{--fa:""}.fa-comment-dots,.fa-commenting{--fa:""}.fa-comment-slash{--fa:""}.fa-couch{--fa:""}.fa-circle-dollar-to-slot,.fa-donate{--fa:""}.fa-dove{--fa:""}.fa-hand-holding{--fa:""}.fa-hand-holding-heart{--fa:""}.fa-hand-holding-dollar,.fa-hand-holding-usd{--fa:""}.fa-hand-holding-droplet,.fa-hand-holding-water{--fa:""}.fa-hands-holding{--fa:""}.fa-hands-helping,.fa-handshake-angle{--fa:""}.fa-parachute-box{--fa:""}.fa-people-carry,.fa-people-carry-box{--fa:""}.fa-piggy-bank{--fa:""}.fa-ribbon{--fa:""}.fa-route{--fa:""}.fa-seedling,.fa-sprout{--fa:""}.fa-sign,.fa-sign-hanging{--fa:""}.fa-face-smile-wink,.fa-smile-wink{--fa:""}.fa-tape{--fa:""}.fa-truck-loading,.fa-truck-ramp-box{--fa:""}.fa-truck-moving{--fa:""}.fa-video-slash{--fa:""}.fa-wine-glass{--fa:""}.fa-user-astronaut{--fa:""}.fa-user-check{--fa:""}.fa-user-clock{--fa:""}.fa-user-cog,.fa-user-gear{--fa:""}.fa-user-edit,.fa-user-pen{--fa:""}.fa-user-friends,.fa-user-group{--fa:""}.fa-user-graduate{--fa:""}.fa-user-lock{--fa:""}.fa-user-minus{--fa:""}.fa-user-ninja{--fa:""}.fa-user-shield{--fa:""}.fa-user-alt-slash,.fa-user-large-slash,.fa-user-slash{--fa:""}.fa-user-tag{--fa:""}.fa-user-tie{--fa:""}.fa-users-cog,.fa-users-gear{--fa:""}.fa-balance-scale-left,.fa-scale-unbalanced{--fa:""}.fa-balance-scale-right,.fa-scale-unbalanced-flip{--fa:""}.fa-blender{--fa:""}.fa-book-open{--fa:""}.fa-broadcast-tower,.fa-tower-broadcast{--fa:""}.fa-broom{--fa:""}.fa-blackboard,.fa-chalkboard{--fa:""}.fa-chalkboard-teacher,.fa-chalkboard-user{--fa:""}.fa-church{--fa:""}.fa-coins{--fa:""}.fa-compact-disc{--fa:""}.fa-crow{--fa:""}.fa-crown{--fa:""}.fa-dice{--fa:""}.fa-dice-five{--fa:""}.fa-dice-four{--fa:""}.fa-dice-one{--fa:""}.fa-dice-six{--fa:""}.fa-dice-three{--fa:""}.fa-dice-two{--fa:""}.fa-divide{--fa:""}.fa-door-closed{--fa:""}.fa-door-open{--fa:""}.fa-feather{--fa:""}.fa-frog{--fa:""}.fa-gas-pump{--fa:""}.fa-glasses{--fa:""}.fa-greater-than-equal{--fa:""}.fa-helicopter{--fa:""}.fa-infinity{--fa:""}.fa-kiwi-bird{--fa:""}.fa-less-than-equal{--fa:""}.fa-memory{--fa:""}.fa-microphone-alt-slash,.fa-microphone-lines-slash{--fa:""}.fa-money-bill-wave{--fa:""}.fa-money-bill-1-wave,.fa-money-bill-wave-alt{--fa:""}.fa-money-check{--fa:""}.fa-money-check-alt,.fa-money-check-dollar{--fa:""}.fa-not-equal{--fa:""}.fa-palette{--fa:""}.fa-parking,.fa-square-parking{--fa:""}.fa-diagram-project,.fa-project-diagram{--fa:""}.fa-receipt{--fa:""}.fa-robot{--fa:""}.fa-ruler{--fa:""}.fa-ruler-combined{--fa:""}.fa-ruler-horizontal{--fa:""}.fa-ruler-vertical{--fa:""}.fa-school{--fa:""}.fa-screwdriver{--fa:""}.fa-shoe-prints{--fa:""}.fa-skull{--fa:""}.fa-ban-smoking,.fa-smoking-ban{--fa:""}.fa-store{--fa:""}.fa-shop,.fa-store-alt{--fa:""}.fa-bars-staggered,.fa-reorder,.fa-stream{--fa:""}.fa-stroopwafel{--fa:""}.fa-toolbox{--fa:""}.fa-shirt,.fa-t-shirt,.fa-tshirt{--fa:""}.fa-person-walking,.fa-walking{--fa:""}.fa-wallet{--fa:""}.fa-angry,.fa-face-angry{--fa:""}.fa-archway{--fa:""}.fa-atlas,.fa-book-atlas{--fa:""}.fa-award{--fa:""}.fa-backspace,.fa-delete-left{--fa:""}.fa-bezier-curve{--fa:""}.fa-bong{--fa:""}.fa-brush{--fa:""}.fa-bus-alt,.fa-bus-simple{--fa:""}.fa-cannabis{--fa:""}.fa-check-double{--fa:""}.fa-cocktail,.fa-martini-glass-citrus{--fa:""}.fa-bell-concierge,.fa-concierge-bell{--fa:""}.fa-cookie{--fa:""}.fa-cookie-bite{--fa:""}.fa-crop-alt,.fa-crop-simple{--fa:""}.fa-digital-tachograph,.fa-tachograph-digital{--fa:""}.fa-dizzy,.fa-face-dizzy{--fa:""}.fa-compass-drafting,.fa-drafting-compass{--fa:""}.fa-drum{--fa:""}.fa-drum-steelpan{--fa:""}.fa-feather-alt,.fa-feather-pointed{--fa:""}.fa-file-contract{--fa:""}.fa-file-arrow-down,.fa-file-download{--fa:""}.fa-arrow-right-from-file,.fa-file-export{--fa:""}.fa-arrow-right-to-file,.fa-file-import{--fa:""}.fa-file-invoice{--fa:""}.fa-file-invoice-dollar{--fa:""}.fa-file-prescription{--fa:""}.fa-file-signature{--fa:""}.fa-file-arrow-up,.fa-file-upload{--fa:""}.fa-fill{--fa:""}.fa-fill-drip{--fa:""}.fa-fingerprint{--fa:""}.fa-fish{--fa:""}.fa-face-flushed,.fa-flushed{--fa:""}.fa-face-frown-open,.fa-frown-open{--fa:""}.fa-glass-martini-alt,.fa-martini-glass{--fa:""}.fa-earth-africa,.fa-globe-africa{--fa:""}.fa-earth,.fa-earth-america,.fa-earth-americas,.fa-globe-americas{--fa:""}.fa-earth-asia,.fa-globe-asia{--fa:""}.fa-face-grimace,.fa-grimace{--fa:""}.fa-face-grin,.fa-grin{--fa:""}.fa-face-grin-wide,.fa-grin-alt{--fa:""}.fa-face-grin-beam,.fa-grin-beam{--fa:""}.fa-face-grin-beam-sweat,.fa-grin-beam-sweat{--fa:""}.fa-face-grin-hearts,.fa-grin-hearts{--fa:""}.fa-face-grin-squint,.fa-grin-squint{--fa:""}.fa-face-grin-squint-tears,.fa-grin-squint-tears{--fa:""}.fa-face-grin-stars,.fa-grin-stars{--fa:""}.fa-face-grin-tears,.fa-grin-tears{--fa:""}.fa-face-grin-tongue,.fa-grin-tongue{--fa:""}.fa-face-grin-tongue-squint,.fa-grin-tongue-squint{--fa:""}.fa-face-grin-tongue-wink,.fa-grin-tongue-wink{--fa:""}.fa-face-grin-wink,.fa-grin-wink{--fa:""}.fa-grid-horizontal,.fa-grip,.fa-grip-horizontal{--fa:""}.fa-grid-vertical,.fa-grip-vertical{--fa:""}.fa-headset{--fa:""}.fa-highlighter{--fa:""}.fa-hot-tub,.fa-hot-tub-person{--fa:""}.fa-hotel{--fa:""}.fa-joint{--fa:""}.fa-face-kiss,.fa-kiss{--fa:""}.fa-face-kiss-beam,.fa-kiss-beam{--fa:""}.fa-face-kiss-wink-heart,.fa-kiss-wink-heart{--fa:""}.fa-face-laugh,.fa-laugh{--fa:""}.fa-face-laugh-beam,.fa-laugh-beam{--fa:""}.fa-face-laugh-squint,.fa-laugh-squint{--fa:""}.fa-face-laugh-wink,.fa-laugh-wink{--fa:""}.fa-cart-flatbed-suitcase,.fa-luggage-cart{--fa:""}.fa-map-location,.fa-map-marked{--fa:""}.fa-map-location-dot,.fa-map-marked-alt{--fa:""}.fa-marker{--fa:""}.fa-medal{--fa:""}.fa-face-meh-blank,.fa-meh-blank{--fa:""}.fa-face-rolling-eyes,.fa-meh-rolling-eyes{--fa:""}.fa-monument{--fa:""}.fa-mortar-pestle{--fa:""}.fa-paint-roller{--fa:""}.fa-passport{--fa:""}.fa-pen-fancy{--fa:""}.fa-pen-nib{--fa:""}.fa-pen-ruler,.fa-pencil-ruler{--fa:""}.fa-plane-arrival{--fa:""}.fa-plane-departure{--fa:""}.fa-prescription{--fa:""}.fa-face-sad-cry,.fa-sad-cry{--fa:""}.fa-face-sad-tear,.fa-sad-tear{--fa:""}.fa-shuttle-van,.fa-van-shuttle{--fa:""}.fa-signature{--fa:""}.fa-face-smile-beam,.fa-smile-beam{--fa:""}.fa-solar-panel{--fa:""}.fa-spa{--fa:""}.fa-splotch{--fa:""}.fa-spray-can{--fa:""}.fa-stamp{--fa:""}.fa-star-half-alt,.fa-star-half-stroke{--fa:""}.fa-suitcase-rolling{--fa:""}.fa-face-surprise,.fa-surprise{--fa:""}.fa-swatchbook{--fa:""}.fa-person-swimming,.fa-swimmer{--fa:""}.fa-ladder-water,.fa-swimming-pool,.fa-water-ladder{--fa:""}.fa-droplet-slash,.fa-tint-slash{--fa:""}.fa-face-tired,.fa-tired{--fa:""}.fa-tooth{--fa:""}.fa-umbrella-beach{--fa:""}.fa-weight-hanging{--fa:""}.fa-wine-glass-alt,.fa-wine-glass-empty{--fa:""}.fa-air-freshener,.fa-spray-can-sparkles{--fa:""}.fa-apple-alt,.fa-apple-whole{--fa:""}.fa-atom{--fa:""}.fa-bone{--fa:""}.fa-book-open-reader,.fa-book-reader{--fa:""}.fa-brain{--fa:""}.fa-car-alt,.fa-car-rear{--fa:""}.fa-battery-car,.fa-car-battery{--fa:""}.fa-car-burst,.fa-car-crash{--fa:""}.fa-car-side{--fa:""}.fa-charging-station{--fa:""}.fa-diamond-turn-right,.fa-directions{--fa:""}.fa-draw-polygon,.fa-vector-polygon{--fa:""}.fa-laptop-code{--fa:""}.fa-layer-group{--fa:""}.fa-location,.fa-location-crosshairs{--fa:""}.fa-lungs{--fa:""}.fa-microscope{--fa:""}.fa-oil-can{--fa:""}.fa-poop{--fa:""}.fa-shapes,.fa-triangle-circle-square{--fa:""}.fa-star-of-life{--fa:""}.fa-dashboard,.fa-gauge,.fa-gauge-med,.fa-tachometer-alt-average{--fa:""}.fa-gauge-high,.fa-tachometer-alt,.fa-tachometer-alt-fast{--fa:""}.fa-gauge-simple,.fa-gauge-simple-med,.fa-tachometer-average{--fa:""}.fa-gauge-simple-high,.fa-tachometer,.fa-tachometer-fast{--fa:""}.fa-teeth{--fa:""}.fa-teeth-open{--fa:""}.fa-masks-theater,.fa-theater-masks{--fa:""}.fa-traffic-light{--fa:""}.fa-truck-monster{--fa:""}.fa-truck-pickup{--fa:""}.fa-ad,.fa-rectangle-ad{--fa:""}.fa-ankh{--fa:""}.fa-bible,.fa-book-bible{--fa:""}.fa-briefcase-clock,.fa-business-time{--fa:""}.fa-city{--fa:""}.fa-comment-dollar{--fa:""}.fa-comments-dollar{--fa:""}.fa-cross{--fa:""}.fa-dharmachakra{--fa:""}.fa-envelope-open-text{--fa:""}.fa-folder-minus{--fa:""}.fa-folder-plus{--fa:""}.fa-filter-circle-dollar,.fa-funnel-dollar{--fa:""}.fa-gopuram{--fa:""}.fa-hamsa{--fa:""}.fa-bahai,.fa-haykal{--fa:""}.fa-jedi{--fa:""}.fa-book-journal-whills,.fa-journal-whills{--fa:""}.fa-kaaba{--fa:""}.fa-khanda{--fa:""}.fa-landmark{--fa:""}.fa-envelopes-bulk,.fa-mail-bulk{--fa:""}.fa-menorah{--fa:""}.fa-mosque{--fa:""}.fa-om{--fa:""}.fa-pastafarianism,.fa-spaghetti-monster-flying{--fa:""}.fa-peace{--fa:""}.fa-place-of-worship{--fa:""}.fa-poll,.fa-square-poll-vertical{--fa:""}.fa-poll-h,.fa-square-poll-horizontal{--fa:""}.fa-person-praying,.fa-pray{--fa:""}.fa-hands-praying,.fa-praying-hands{--fa:""}.fa-book-quran,.fa-quran{--fa:""}.fa-magnifying-glass-dollar,.fa-search-dollar{--fa:""}.fa-magnifying-glass-location,.fa-search-location{--fa:""}.fa-socks{--fa:""}.fa-square-root-alt,.fa-square-root-variable{--fa:""}.fa-star-and-crescent{--fa:""}.fa-star-of-david{--fa:""}.fa-synagogue{--fa:""}.fa-scroll-torah,.fa-torah{--fa:""}.fa-torii-gate{--fa:""}.fa-vihara{--fa:""}.fa-volume-mute,.fa-volume-times,.fa-volume-xmark{--fa:""}.fa-yin-yang{--fa:""}.fa-blender-phone{--fa:""}.fa-book-dead,.fa-book-skull{--fa:""}.fa-campground{--fa:""}.fa-cat{--fa:""}.fa-chair{--fa:""}.fa-cloud-moon{--fa:""}.fa-cloud-sun{--fa:""}.fa-cow{--fa:""}.fa-dice-d20{--fa:""}.fa-dice-d6{--fa:""}.fa-dog{--fa:""}.fa-dragon{--fa:""}.fa-drumstick-bite{--fa:""}.fa-dungeon{--fa:""}.fa-file-csv{--fa:""}.fa-fist-raised,.fa-hand-fist{--fa:""}.fa-ghost{--fa:""}.fa-hammer{--fa:""}.fa-hanukiah{--fa:""}.fa-hat-wizard{--fa:""}.fa-hiking,.fa-person-hiking{--fa:""}.fa-hippo{--fa:""}.fa-horse{--fa:""}.fa-house-chimney-crack,.fa-house-damage{--fa:""}.fa-hryvnia,.fa-hryvnia-sign{--fa:""}.fa-mask{--fa:""}.fa-mountain{--fa:""}.fa-network-wired{--fa:""}.fa-otter{--fa:""}.fa-ring{--fa:""}.fa-person-running,.fa-running{--fa:""}.fa-scroll{--fa:""}.fa-skull-crossbones{--fa:""}.fa-slash{--fa:""}.fa-spider{--fa:""}.fa-toilet-paper,.fa-toilet-paper-alt,.fa-toilet-paper-blank{--fa:""}.fa-tractor{--fa:""}.fa-user-injured{--fa:""}.fa-vr-cardboard{--fa:""}.fa-wand-sparkles{--fa:""}.fa-wind{--fa:""}.fa-wine-bottle{--fa:""}.fa-cloud-meatball{--fa:""}.fa-cloud-moon-rain{--fa:""}.fa-cloud-rain{--fa:""}.fa-cloud-showers-heavy{--fa:""}.fa-cloud-sun-rain{--fa:""}.fa-democrat{--fa:""}.fa-flag-usa{--fa:""}.fa-hurricane{--fa:""}.fa-landmark-alt,.fa-landmark-dome{--fa:""}.fa-meteor{--fa:""}.fa-person-booth{--fa:""}.fa-poo-bolt,.fa-poo-storm{--fa:""}.fa-rainbow{--fa:""}.fa-republican{--fa:""}.fa-smog{--fa:""}.fa-temperature-high{--fa:""}.fa-temperature-low{--fa:""}.fa-cloud-bolt,.fa-thunderstorm{--fa:""}.fa-tornado{--fa:""}.fa-volcano{--fa:""}.fa-check-to-slot,.fa-vote-yea{--fa:""}.fa-water{--fa:""}.fa-baby{--fa:""}.fa-baby-carriage,.fa-carriage-baby{--fa:""}.fa-biohazard{--fa:""}.fa-blog{--fa:""}.fa-calendar-day{--fa:""}.fa-calendar-week{--fa:""}.fa-candy-cane{--fa:""}.fa-carrot{--fa:""}.fa-cash-register{--fa:""}.fa-compress-arrows-alt,.fa-minimize{--fa:""}.fa-dumpster{--fa:""}.fa-dumpster-fire{--fa:""}.fa-ethernet{--fa:""}.fa-gifts{--fa:""}.fa-champagne-glasses,.fa-glass-cheers{--fa:""}.fa-glass-whiskey,.fa-whiskey-glass{--fa:""}.fa-earth-europe,.fa-globe-europe{--fa:""}.fa-grip-lines{--fa:""}.fa-grip-lines-vertical{--fa:""}.fa-guitar{--fa:""}.fa-heart-broken,.fa-heart-crack{--fa:""}.fa-holly-berry{--fa:""}.fa-horse-head{--fa:""}.fa-icicles{--fa:""}.fa-igloo{--fa:""}.fa-mitten{--fa:""}.fa-mug-hot{--fa:""}.fa-radiation{--fa:""}.fa-circle-radiation,.fa-radiation-alt{--fa:""}.fa-restroom{--fa:""}.fa-satellite{--fa:""}.fa-satellite-dish{--fa:""}.fa-sd-card{--fa:""}.fa-sim-card{--fa:""}.fa-person-skating,.fa-skating{--fa:""}.fa-person-skiing,.fa-skiing{--fa:""}.fa-person-skiing-nordic,.fa-skiing-nordic{--fa:""}.fa-sleigh{--fa:""}.fa-comment-sms,.fa-sms{--fa:""}.fa-person-snowboarding,.fa-snowboarding{--fa:""}.fa-snowman{--fa:""}.fa-snowplow{--fa:""}.fa-tenge,.fa-tenge-sign{--fa:""}.fa-toilet{--fa:""}.fa-screwdriver-wrench,.fa-tools{--fa:""}.fa-cable-car,.fa-tram{--fa:""}.fa-fire-alt,.fa-fire-flame-curved{--fa:""}.fa-bacon{--fa:""}.fa-book-medical{--fa:""}.fa-bread-slice{--fa:""}.fa-cheese{--fa:""}.fa-clinic-medical,.fa-house-chimney-medical{--fa:""}.fa-clipboard-user{--fa:""}.fa-comment-medical{--fa:""}.fa-crutch{--fa:""}.fa-disease{--fa:""}.fa-egg{--fa:""}.fa-folder-tree{--fa:""}.fa-burger,.fa-hamburger{--fa:""}.fa-hand-middle-finger{--fa:""}.fa-hard-hat,.fa-hat-hard,.fa-helmet-safety{--fa:""}.fa-hospital-user{--fa:""}.fa-hotdog{--fa:""}.fa-ice-cream{--fa:""}.fa-laptop-medical{--fa:""}.fa-pager{--fa:""}.fa-pepper-hot{--fa:""}.fa-pizza-slice{--fa:""}.fa-sack-dollar{--fa:""}.fa-book-tanakh,.fa-tanakh{--fa:""}.fa-bars-progress,.fa-tasks-alt{--fa:""}.fa-trash-arrow-up,.fa-trash-restore{--fa:""}.fa-trash-can-arrow-up,.fa-trash-restore-alt{--fa:""}.fa-user-nurse{--fa:""}.fa-wave-square{--fa:""}.fa-biking,.fa-person-biking{--fa:""}.fa-border-all{--fa:""}.fa-border-none{--fa:""}.fa-border-style,.fa-border-top-left{--fa:""}.fa-digging,.fa-person-digging{--fa:""}.fa-fan{--fa:""}.fa-heart-music-camera-bolt,.fa-icons{--fa:""}.fa-phone-alt,.fa-phone-flip{--fa:""}.fa-phone-square-alt,.fa-square-phone-flip{--fa:""}.fa-photo-film,.fa-photo-video{--fa:""}.fa-remove-format,.fa-text-slash{--fa:""}.fa-arrow-down-z-a,.fa-sort-alpha-desc,.fa-sort-alpha-down-alt{--fa:""}.fa-arrow-up-z-a,.fa-sort-alpha-up-alt{--fa:""}.fa-arrow-down-short-wide,.fa-sort-amount-desc,.fa-sort-amount-down-alt{--fa:""}.fa-arrow-up-short-wide,.fa-sort-amount-up-alt{--fa:""}.fa-arrow-down-9-1,.fa-sort-numeric-desc,.fa-sort-numeric-down-alt{--fa:""}.fa-arrow-up-9-1,.fa-sort-numeric-up-alt{--fa:""}.fa-spell-check{--fa:""}.fa-voicemail{--fa:""}.fa-hat-cowboy{--fa:""}.fa-hat-cowboy-side{--fa:""}.fa-computer-mouse,.fa-mouse{--fa:""}.fa-radio{--fa:""}.fa-record-vinyl{--fa:""}.fa-walkie-talkie{--fa:""}.fa-caravan{--fa:""}:host,:root{--fa-family-brands:"Font Awesome 7 Brands";--fa-font-brands:normal 400 1em/1 var(--fa-family-brands)}@font-face{font-family:"Font Awesome 7 Brands";font-style:normal;font-weight:400;font-display:block;src:url(./fa-brands-400-BfBXV7Mm.woff2)}.fa-brands,.fa-classic.fa-brands,.fab{--fa-family:var(--fa-family-brands);--fa-style:400}.fa-firefox-browser{--fa:""}.fa-ideal{--fa:""}.fa-microblog{--fa:""}.fa-pied-piper-square,.fa-square-pied-piper{--fa:""}.fa-unity{--fa:""}.fa-dailymotion{--fa:""}.fa-instagram-square,.fa-square-instagram{--fa:""}.fa-mixer{--fa:""}.fa-shopify{--fa:""}.fa-deezer{--fa:""}.fa-edge-legacy{--fa:""}.fa-google-pay{--fa:""}.fa-rust{--fa:""}.fa-tiktok{--fa:""}.fa-unsplash{--fa:""}.fa-cloudflare{--fa:""}.fa-guilded{--fa:""}.fa-hive{--fa:""}.fa-42-group,.fa-innosoft{--fa:""}.fa-instalod{--fa:""}.fa-octopus-deploy{--fa:""}.fa-perbyte{--fa:""}.fa-uncharted{--fa:""}.fa-watchman-monitoring{--fa:""}.fa-wodu{--fa:""}.fa-wirsindhandwerk,.fa-wsh{--fa:""}.fa-bots{--fa:""}.fa-cmplid{--fa:""}.fa-bilibili{--fa:""}.fa-golang{--fa:""}.fa-pix{--fa:""}.fa-sitrox{--fa:""}.fa-hashnode{--fa:""}.fa-meta{--fa:""}.fa-padlet{--fa:""}.fa-nfc-directional{--fa:""}.fa-nfc-symbol{--fa:""}.fa-screenpal{--fa:""}.fa-space-awesome{--fa:""}.fa-square-font-awesome{--fa:""}.fa-gitlab-square,.fa-square-gitlab{--fa:""}.fa-odysee{--fa:""}.fa-stubber{--fa:""}.fa-debian{--fa:""}.fa-shoelace{--fa:""}.fa-threads{--fa:""}.fa-square-threads{--fa:""}.fa-square-x-twitter{--fa:""}.fa-x-twitter{--fa:""}.fa-opensuse{--fa:""}.fa-letterboxd{--fa:""}.fa-square-letterboxd{--fa:""}.fa-mintbit{--fa:""}.fa-google-scholar{--fa:""}.fa-brave{--fa:""}.fa-brave-reverse{--fa:""}.fa-pixiv{--fa:""}.fa-upwork{--fa:""}.fa-webflow{--fa:""}.fa-signal-messenger{--fa:""}.fa-bluesky{--fa:""}.fa-jxl{--fa:""}.fa-square-upwork{--fa:""}.fa-web-awesome{--fa:""}.fa-square-web-awesome{--fa:""}.fa-square-web-awesome-stroke{--fa:""}.fa-dart-lang{--fa:""}.fa-flutter{--fa:""}.fa-files-pinwheel{--fa:""}.fa-css{--fa:""}.fa-square-bluesky{--fa:""}.fa-openai{--fa:""}.fa-square-linkedin{--fa:""}.fa-cash-app{--fa:""}.fa-disqus{--fa:""}.fa-11ty,.fa-eleventy{--fa:""}.fa-kakao-talk{--fa:""}.fa-linktree{--fa:""}.fa-notion{--fa:""}.fa-pandora{--fa:""}.fa-pixelfed{--fa:""}.fa-tidal{--fa:""}.fa-vsco{--fa:""}.fa-w3c{--fa:""}.fa-lumon{--fa:""}.fa-lumon-drop{--fa:""}.fa-square-figma{--fa:""}.fa-tex{--fa:""}.fa-duolingo{--fa:""}.fa-square-twitter,.fa-twitter-square{--fa:""}.fa-facebook-square,.fa-square-facebook{--fa:""}.fa-linkedin{--fa:""}.fa-github-square,.fa-square-github{--fa:""}.fa-twitter{--fa:""}.fa-facebook{--fa:""}.fa-github{--fa:""}.fa-pinterest{--fa:""}.fa-pinterest-square,.fa-square-pinterest{--fa:""}.fa-google-plus-square,.fa-square-google-plus{--fa:""}.fa-google-plus-g{--fa:""}.fa-linkedin-in{--fa:""}.fa-github-alt{--fa:""}.fa-maxcdn{--fa:""}.fa-html5{--fa:""}.fa-css3{--fa:""}.fa-btc{--fa:""}.fa-youtube{--fa:""}.fa-xing{--fa:""}.fa-square-xing,.fa-xing-square{--fa:""}.fa-dropbox{--fa:""}.fa-stack-overflow{--fa:""}.fa-instagram{--fa:""}.fa-flickr{--fa:""}.fa-adn{--fa:""}.fa-bitbucket{--fa:""}.fa-tumblr{--fa:""}.fa-square-tumblr,.fa-tumblr-square{--fa:""}.fa-apple{--fa:""}.fa-windows{--fa:""}.fa-android{--fa:""}.fa-linux{--fa:""}.fa-dribbble{--fa:""}.fa-skype{--fa:""}.fa-foursquare{--fa:""}.fa-trello{--fa:""}.fa-gratipay{--fa:""}.fa-vk{--fa:""}.fa-weibo{--fa:""}.fa-renren{--fa:""}.fa-pagelines{--fa:""}.fa-stack-exchange{--fa:""}.fa-square-vimeo,.fa-vimeo-square{--fa:""}.fa-slack,.fa-slack-hash{--fa:""}.fa-wordpress{--fa:""}.fa-openid{--fa:""}.fa-yahoo{--fa:""}.fa-google{--fa:""}.fa-reddit{--fa:""}.fa-reddit-square,.fa-square-reddit{--fa:""}.fa-stumbleupon-circle{--fa:""}.fa-stumbleupon{--fa:""}.fa-delicious{--fa:""}.fa-digg{--fa:""}.fa-pied-piper-pp{--fa:""}.fa-pied-piper-alt{--fa:""}.fa-drupal{--fa:""}.fa-joomla{--fa:""}.fa-behance{--fa:""}.fa-behance-square,.fa-square-behance{--fa:""}.fa-steam{--fa:""}.fa-square-steam,.fa-steam-square{--fa:""}.fa-spotify{--fa:""}.fa-deviantart{--fa:""}.fa-soundcloud{--fa:""}.fa-vine{--fa:""}.fa-codepen{--fa:""}.fa-jsfiddle{--fa:""}.fa-rebel{--fa:""}.fa-empire{--fa:""}.fa-git-square,.fa-square-git{--fa:""}.fa-git{--fa:""}.fa-hacker-news{--fa:""}.fa-tencent-weibo{--fa:""}.fa-qq{--fa:""}.fa-weixin{--fa:""}.fa-slideshare{--fa:""}.fa-twitch{--fa:""}.fa-yelp{--fa:""}.fa-paypal{--fa:""}.fa-google-wallet{--fa:""}.fa-cc-visa{--fa:""}.fa-cc-mastercard{--fa:""}.fa-cc-discover{--fa:""}.fa-cc-amex{--fa:""}.fa-cc-paypal{--fa:""}.fa-cc-stripe{--fa:""}.fa-lastfm{--fa:""}.fa-lastfm-square,.fa-square-lastfm{--fa:""}.fa-ioxhost{--fa:""}.fa-angellist{--fa:""}.fa-buysellads{--fa:""}.fa-connectdevelop{--fa:""}.fa-dashcube{--fa:""}.fa-forumbee{--fa:""}.fa-leanpub{--fa:""}.fa-sellsy{--fa:""}.fa-shirtsinbulk{--fa:""}.fa-simplybuilt{--fa:""}.fa-skyatlas{--fa:""}.fa-pinterest-p{--fa:""}.fa-whatsapp{--fa:""}.fa-viacoin{--fa:""}.fa-medium,.fa-medium-m{--fa:""}.fa-y-combinator{--fa:""}.fa-optin-monster{--fa:""}.fa-opencart{--fa:""}.fa-expeditedssl{--fa:""}.fa-cc-jcb{--fa:""}.fa-cc-diners-club{--fa:""}.fa-creative-commons{--fa:""}.fa-gg{--fa:""}.fa-gg-circle{--fa:""}.fa-odnoklassniki{--fa:""}.fa-odnoklassniki-square,.fa-square-odnoklassniki{--fa:""}.fa-get-pocket{--fa:""}.fa-wikipedia-w{--fa:""}.fa-safari{--fa:""}.fa-chrome{--fa:""}.fa-firefox{--fa:""}.fa-opera{--fa:""}.fa-internet-explorer{--fa:""}.fa-contao{--fa:""}.fa-500px{--fa:""}.fa-amazon{--fa:""}.fa-houzz{--fa:""}.fa-vimeo-v{--fa:""}.fa-black-tie{--fa:""}.fa-fonticons{--fa:""}.fa-reddit-alien{--fa:""}.fa-edge{--fa:""}.fa-codiepie{--fa:""}.fa-modx{--fa:""}.fa-fort-awesome{--fa:""}.fa-usb{--fa:""}.fa-product-hunt{--fa:""}.fa-mixcloud{--fa:""}.fa-scribd{--fa:""}.fa-bluetooth{--fa:""}.fa-bluetooth-b{--fa:""}.fa-gitlab{--fa:""}.fa-wpbeginner{--fa:""}.fa-wpforms{--fa:""}.fa-envira{--fa:""}.fa-glide{--fa:""}.fa-glide-g{--fa:""}.fa-viadeo{--fa:""}.fa-square-viadeo,.fa-viadeo-square{--fa:""}.fa-snapchat,.fa-snapchat-ghost{--fa:""}.fa-snapchat-square,.fa-square-snapchat{--fa:""}.fa-pied-piper{--fa:""}.fa-first-order{--fa:""}.fa-yoast{--fa:""}.fa-themeisle{--fa:""}.fa-google-plus{--fa:""}.fa-font-awesome,.fa-font-awesome-flag,.fa-font-awesome-logo-full{--fa:""}.fa-linode{--fa:""}.fa-quora{--fa:""}.fa-free-code-camp{--fa:""}.fa-telegram,.fa-telegram-plane{--fa:""}.fa-bandcamp{--fa:""}.fa-grav{--fa:""}.fa-etsy{--fa:""}.fa-imdb{--fa:""}.fa-ravelry{--fa:""}.fa-sellcast{--fa:""}.fa-superpowers{--fa:""}.fa-wpexplorer{--fa:""}.fa-meetup{--fa:""}.fa-font-awesome-alt,.fa-square-font-awesome-stroke{--fa:""}.fa-accessible-icon{--fa:""}.fa-accusoft{--fa:""}.fa-adversal{--fa:""}.fa-affiliatetheme{--fa:""}.fa-algolia{--fa:""}.fa-amilia{--fa:""}.fa-angrycreative{--fa:""}.fa-app-store{--fa:""}.fa-app-store-ios{--fa:""}.fa-apper{--fa:""}.fa-asymmetrik{--fa:""}.fa-audible{--fa:""}.fa-avianex{--fa:""}.fa-aws{--fa:""}.fa-bimobject{--fa:""}.fa-bitcoin{--fa:""}.fa-bity{--fa:""}.fa-blackberry{--fa:""}.fa-blogger{--fa:""}.fa-blogger-b{--fa:""}.fa-buromobelexperte{--fa:""}.fa-centercode{--fa:""}.fa-cloudscale{--fa:""}.fa-cloudsmith{--fa:""}.fa-cloudversify{--fa:""}.fa-cpanel{--fa:""}.fa-css3-alt{--fa:""}.fa-cuttlefish{--fa:""}.fa-d-and-d{--fa:""}.fa-deploydog{--fa:""}.fa-deskpro{--fa:""}.fa-digital-ocean{--fa:""}.fa-discord{--fa:""}.fa-discourse{--fa:""}.fa-dochub{--fa:""}.fa-docker{--fa:""}.fa-draft2digital{--fa:""}.fa-dribbble-square,.fa-square-dribbble{--fa:""}.fa-dyalog{--fa:""}.fa-earlybirds{--fa:""}.fa-erlang{--fa:""}.fa-facebook-f{--fa:""}.fa-facebook-messenger{--fa:""}.fa-firstdraft{--fa:""}.fa-fonticons-fi{--fa:""}.fa-fort-awesome-alt{--fa:""}.fa-freebsd{--fa:""}.fa-gitkraken{--fa:""}.fa-gofore{--fa:""}.fa-goodreads{--fa:""}.fa-goodreads-g{--fa:""}.fa-google-drive{--fa:""}.fa-google-play{--fa:""}.fa-gripfire{--fa:""}.fa-grunt{--fa:""}.fa-gulp{--fa:""}.fa-hacker-news-square,.fa-square-hacker-news{--fa:""}.fa-hire-a-helper{--fa:""}.fa-hotjar{--fa:""}.fa-hubspot{--fa:""}.fa-itunes{--fa:""}.fa-itunes-note{--fa:""}.fa-jenkins{--fa:""}.fa-joget{--fa:""}.fa-js{--fa:""}.fa-js-square,.fa-square-js{--fa:""}.fa-keycdn{--fa:""}.fa-kickstarter,.fa-square-kickstarter{--fa:""}.fa-kickstarter-k{--fa:""}.fa-laravel{--fa:""}.fa-line{--fa:""}.fa-lyft{--fa:""}.fa-magento{--fa:""}.fa-medapps{--fa:""}.fa-medrt{--fa:""}.fa-microsoft{--fa:""}.fa-mix{--fa:""}.fa-mizuni{--fa:""}.fa-monero{--fa:""}.fa-napster{--fa:""}.fa-node-js{--fa:""}.fa-npm{--fa:""}.fa-ns8{--fa:""}.fa-nutritionix{--fa:""}.fa-page4{--fa:""}.fa-palfed{--fa:""}.fa-patreon{--fa:""}.fa-periscope{--fa:""}.fa-phabricator{--fa:""}.fa-phoenix-framework{--fa:""}.fa-playstation{--fa:""}.fa-pushed{--fa:""}.fa-python{--fa:""}.fa-red-river{--fa:""}.fa-rendact,.fa-wpressr{--fa:""}.fa-replyd{--fa:""}.fa-resolving{--fa:""}.fa-rocketchat{--fa:""}.fa-rockrms{--fa:""}.fa-schlix{--fa:""}.fa-searchengin{--fa:""}.fa-servicestack{--fa:""}.fa-sistrix{--fa:""}.fa-speakap{--fa:""}.fa-staylinked{--fa:""}.fa-steam-symbol{--fa:""}.fa-sticker-mule{--fa:""}.fa-studiovinari{--fa:""}.fa-supple{--fa:""}.fa-uber{--fa:""}.fa-uikit{--fa:""}.fa-uniregistry{--fa:""}.fa-untappd{--fa:""}.fa-ussunnah{--fa:""}.fa-vaadin{--fa:""}.fa-viber{--fa:""}.fa-vimeo{--fa:""}.fa-vnv{--fa:""}.fa-square-whatsapp,.fa-whatsapp-square{--fa:""}.fa-whmcs{--fa:""}.fa-wordpress-simple{--fa:""}.fa-xbox{--fa:""}.fa-yandex{--fa:""}.fa-yandex-international{--fa:""}.fa-apple-pay{--fa:""}.fa-cc-apple-pay{--fa:""}.fa-fly{--fa:""}.fa-node{--fa:""}.fa-osi{--fa:""}.fa-react{--fa:""}.fa-autoprefixer{--fa:""}.fa-less{--fa:""}.fa-sass{--fa:""}.fa-vuejs{--fa:""}.fa-angular{--fa:""}.fa-aviato{--fa:""}.fa-ember{--fa:""}.fa-gitter{--fa:""}.fa-hooli{--fa:""}.fa-strava{--fa:""}.fa-stripe{--fa:""}.fa-stripe-s{--fa:""}.fa-typo3{--fa:""}.fa-amazon-pay{--fa:""}.fa-cc-amazon-pay{--fa:""}.fa-ethereum{--fa:""}.fa-korvue{--fa:""}.fa-elementor{--fa:""}.fa-square-youtube,.fa-youtube-square{--fa:""}.fa-flipboard{--fa:""}.fa-hips{--fa:""}.fa-php{--fa:""}.fa-quinscape{--fa:""}.fa-readme{--fa:""}.fa-java{--fa:""}.fa-pied-piper-hat{--fa:""}.fa-creative-commons-by{--fa:""}.fa-creative-commons-nc{--fa:""}.fa-creative-commons-nc-eu{--fa:""}.fa-creative-commons-nc-jp{--fa:""}.fa-creative-commons-nd{--fa:""}.fa-creative-commons-pd{--fa:""}.fa-creative-commons-pd-alt{--fa:""}.fa-creative-commons-remix{--fa:""}.fa-creative-commons-sa{--fa:""}.fa-creative-commons-sampling{--fa:""}.fa-creative-commons-sampling-plus{--fa:""}.fa-creative-commons-share{--fa:""}.fa-creative-commons-zero{--fa:""}.fa-ebay{--fa:""}.fa-keybase{--fa:""}.fa-mastodon{--fa:""}.fa-r-project{--fa:""}.fa-researchgate{--fa:""}.fa-teamspeak{--fa:""}.fa-first-order-alt{--fa:""}.fa-fulcrum{--fa:""}.fa-galactic-republic{--fa:""}.fa-galactic-senate{--fa:""}.fa-jedi-order{--fa:""}.fa-mandalorian{--fa:""}.fa-old-republic{--fa:""}.fa-phoenix-squadron{--fa:""}.fa-sith{--fa:""}.fa-trade-federation{--fa:""}.fa-wolf-pack-battalion{--fa:""}.fa-hornbill{--fa:""}.fa-mailchimp{--fa:""}.fa-megaport{--fa:""}.fa-nimblr{--fa:""}.fa-rev{--fa:""}.fa-shopware{--fa:""}.fa-squarespace{--fa:""}.fa-themeco{--fa:""}.fa-weebly{--fa:""}.fa-wix{--fa:""}.fa-ello{--fa:""}.fa-hackerrank{--fa:""}.fa-kaggle{--fa:""}.fa-markdown{--fa:""}.fa-neos{--fa:""}.fa-zhihu{--fa:""}.fa-alipay{--fa:""}.fa-the-red-yeti{--fa:""}.fa-critical-role{--fa:""}.fa-d-and-d-beyond{--fa:""}.fa-dev{--fa:""}.fa-fantasy-flight-games{--fa:""}.fa-wizards-of-the-coast{--fa:""}.fa-think-peaks{--fa:""}.fa-reacteurope{--fa:""}.fa-artstation{--fa:""}.fa-atlassian{--fa:""}.fa-canadian-maple-leaf{--fa:""}.fa-centos{--fa:""}.fa-confluence{--fa:""}.fa-dhl{--fa:""}.fa-diaspora{--fa:""}.fa-fedex{--fa:""}.fa-fedora{--fa:""}.fa-figma{--fa:""}.fa-intercom{--fa:""}.fa-invision{--fa:""}.fa-jira{--fa:""}.fa-mendeley{--fa:""}.fa-raspberry-pi{--fa:""}.fa-redhat{--fa:""}.fa-sketch{--fa:""}.fa-sourcetree{--fa:""}.fa-suse{--fa:""}.fa-ubuntu{--fa:""}.fa-ups{--fa:""}.fa-usps{--fa:""}.fa-yarn{--fa:""}.fa-airbnb{--fa:""}.fa-battle-net{--fa:""}.fa-bootstrap{--fa:""}.fa-buffer{--fa:""}.fa-chromecast{--fa:""}.fa-evernote{--fa:""}.fa-itch-io{--fa:""}.fa-salesforce{--fa:""}.fa-speaker-deck{--fa:""}.fa-symfony{--fa:""}.fa-waze{--fa:""}.fa-yammer{--fa:""}.fa-git-alt{--fa:""}.fa-stackpath{--fa:""}.fa-cotton-bureau{--fa:""}.fa-buy-n-large{--fa:""}.fa-mdb{--fa:""}.fa-orcid{--fa:""}.fa-swift{--fa:""}.fa-umbraco{--fa:""}:host,:root{--fa-font-regular:normal 400 1em/1 var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:400;font-display:block;src:url(./fa-regular-400-BVHPE7da.woff2)}.far{--fa-family:var(--fa-family-classic)}.fa-regular,.far{--fa-style:400}:host,:root{--fa-family-classic:"Font Awesome 7 Free";--fa-font-solid:normal 900 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:900;font-display:block;src:url(./fa-solid-900-8GirhLYJ.woff2)}.fas{--fa-style:900}.fa-classic,.fas{--fa-family:var(--fa-family-classic)}.fa-solid{--fa-style:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(./fa-brands-400-BfBXV7Mm.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(./fa-solid-900-8GirhLYJ.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(./fa-regular-400-BVHPE7da.woff2) format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(./fa-solid-900-8GirhLYJ.woff2) format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(./fa-brands-400-BfBXV7Mm.woff2) format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(./fa-regular-400-BVHPE7da.woff2) format("woff2");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:FontAwesome;font-display:block;src:url(data:font/woff2;base64,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) format("woff2");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a}.help-ui{left:20px;bottom:20px;padding:10px}.help-ui .help-accordion-icon:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M464%20256a208%20208%200%201%200%20-416%200%20208%20208%200%201%200%20416%200zM0%20256a256%20256%200%201%201%20512%200%20256%20256%200%201%201%20-512%200zm256-80c-17.7%200-32%2014.3-32%2032%200%2013.3-10.7%2024-24%2024s-24-10.7-24-24c0-44.2%2035.8-80%2080-80s80%2035.8%2080%2080c0%2047.2-36%2067.2-56%2074.5l0%203.8c0%2013.3-10.7%2024-24%2024s-24-10.7-24-24l0-8.1c0-20.5%2014.8-35.2%2030.1-40.2%206.4-2.1%2013.2-5.5%2018.2-10.3%204.3-4.2%207.7-10%207.7-19.6%200-17.7-14.3-32-32-32zM224%20368a32%2032%200%201%201%2064%200%2032%2032%200%201%201%20-64%200z'/%3e%3c/svg%3e");display:inline-block;filter:invert(var(--dark-mode));height:16px;width:16px;background-size:16px 16px;vertical-align:text-top;margin-right:4px}.help-ui #hashHolder{font-size:small;margin-top:4px;display:flex;gap:2px}.accordion-content{display:grid;transition:grid-template-rows .3s ease,grid-template-columns .3s cubic-bezier(.7,0,1,.6),padding-top .3s ease;grid-template-rows:0fr;grid-template-columns:0fr;padding-top:0}.accordion-state:checked~.accordion-content{grid-template-rows:1fr;grid-template-columns:1fr;transition:grid-template-rows .3s ease,grid-template-columns .3s cubic-bezier(0,.7,.4,1),padding-top .3s ease;padding-top:8px}.accordion-content *{overflow:hidden;white-space:nowrap;text-overflow:clip}.accordion-button{-webkit-user-select:none;user-select:none;--chevron-scale: 1}.accordion-button.flip-chevron{--chevron-scale: -1}.accordion-button.chevron-right{padding-right:2em}.accordion-button.chevron-left{padding-left:2em}.accordion-button.chevron-right:after{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20448%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M201.4%20406.6c12.5%2012.5%2032.8%2012.5%2045.3%200l192-192c12.5-12.5%2012.5-32.8%200-45.3s-32.8-12.5-45.3%200L224%20338.7%2054.6%20169.4c-12.5-12.5-32.8-12.5-45.3%200s-12.5%2032.8%200%2045.3l192%20192z'/%3e%3c/svg%3e");right:1em;position:absolute;display:inline-block;filter:invert(var(--dark-mode));width:16px;height:16px;background-size:16px 16px;vertical-align:text-top;transition:transform .5s ease;transform:scaleY(var(--chevron-scale))}.accordion-button.chevron-left:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20448%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M201.4%20406.6c12.5%2012.5%2032.8%2012.5%2045.3%200l192-192c12.5-12.5%2012.5-32.8%200-45.3s-32.8-12.5-45.3%200L224%20338.7%2054.6%20169.4c-12.5-12.5-32.8-12.5-45.3%200s-12.5%2032.8%200%2045.3l192%20192z'/%3e%3c/svg%3e");left:1em;position:absolute;display:inline-block;filter:invert(var(--dark-mode));width:16px;height:16px;background-size:16px 16px;vertical-align:text-top;transition:transform .5s ease;transform:scaleY(var(--chevron-scale))}.accordion-state:checked~label .accordion-button:after{transform:scaleY(calc(var(--chevron-scale) * -1))}.accordion-state:checked~label .accordion-button:before{transform:scaleY(calc(var(--chevron-scale) * -1))}#loading-indicator-wrapper{position:fixed;inset:0;z-index:9999;width:100vw;height:100vh;flex-direction:column;justify-content:center;align-items:center;gap:20px;font-size:xx-large;font-weight:700;color:#fff;background-color:#000c}#turning-circle{border:20px solid white;border-top:20px solid #3498db;border-radius:9999px;width:100px;height:100px;animation:spin 2s linear infinite}button.delete-button,button.add-button{background-color:transparent;border:none;cursor:pointer;padding:0}.label-type-editor-ui{padding:10px;top:150px;right:40px;max-height:calc(100vh - 210px);overflow:auto}.label-type-editor-ui *{color:var(--color-foreground)}.label-type-editor-ui .codicon{vertical-align:middle}.label-type-editor-ui hr{height:1px;border:0;background-color:var(--color-foreground)}.label-type-editor-ui input{background-color:transparent;outline:none;border:none}.label-type-editor-ui .label-type-name{font-size:12pt}.label-type-editor-ui .label-type-values,.label-type-editor-ui .label-type-value-add{margin-left:10px}.label-type-value input{background-color:var(--color-background);text-align:center;border:1px solid var(--color-foreground);border-radius:15px;padding:3px;margin:4px}.sprotty-node rect,.sprotty-node line,.sprotty-node circle{stroke:var(--color-foreground);stroke-width:1;fill:color-mix(in srgb,var(--color-primary),var(--color, transparent) 40%)}.sprotty-node .node-label text{font-size:5pt}.sprotty-node .node-label rect,.sprotty-node .node-label .label-delete circle{fill:var(--color-primary);stroke:var(--color-foreground);stroke-width:.5}.sprotty-node .node-label .label-delete text{fill:var(--color-foreground);font-size:5px}.sprotty-edge{stroke:var(--color-foreground);fill:none;stroke-width:1}.sprotty-edge .sprotty-edge path.select-path{stroke:transparent;stroke-width:8}.sprotty-edge .arrow{fill:var(--color-foreground);stroke:none}.sprotty-edge .label-background rect{fill:var(--color-background);stroke-width:0}.sprotty-edge>.sprotty-routing-handle{fill:var(--color-foreground);stroke:none}.sprotty-port rect{stroke:var(--port-border, var(--color-foreground));fill:color-mix(in srgb,var(--port-color, var(--color-primary)),var(--color-background) 25%);stroke-width:.5}.sprotty-port .port-text{font-size:4pt}.sprotty-node.selected circle,.sprotty-node.selected rect,.sprotty-node.selected line,.sprotty-edge.selected{stroke-width:2}.sprotty-port.selected rect{stroke-width:1}text{stroke-width:0;fill:var(--color-foreground);font-family:Arial,sans-serif;font-size:11pt;text-anchor:middle;dominant-baseline:central;-webkit-user-select:none;user-select:none}.sprotty-missing{stroke-width:1;stroke:var(--color-error);fill:var(--color-error)}.label-edit .label-validation-results{position:absolute;background-color:var(--color-primary);padding:8px;border-radius:5px}.label-edit .label-validation-results:before{width:16px;height:16px;background-size:16px 16px;margin-right:4px;content:"";display:inline-block;vertical-align:middle;background-color:var(--color-error);-webkit-mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M256%20512a256%20256%200%201%201%200-512%20256%20256%200%201%201%200%20512zm0-192a32%2032%200%201%200%200%2064%2032%2032%200%201%200%200-64zm0-192c-18.2%200-32.7%2015.5-31.4%2033.7l7.4%20104c.9%2012.6%2011.4%2022.3%2023.9%2022.3%2012.6%200%2023-9.7%2023.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z'/%3e%3c/svg%3e");mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M256%20512a256%20256%200%201%201%200-512%20256%20256%200%201%201%200%20512zm0-192a32%2032%200%201%200%200%2064%2032%2032%200%201%200%200-64zm0-192c-18.2%200-32.7%2015.5-31.4%2033.7l7.4%20104c.9%2012.6%2011.4%2022.3%2023.9%2022.3%2012.6%200%2023-9.7%2023.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z'/%3e%3c/svg%3e")}.dfd-node-annotation-ui{white-space:nowrap}.dfd-node-annotation-ui p{margin:12px}.dfd-node-annotation-ui i.fa{margin-right:5px}.command-palette{transition:opacity .2s ease-in-out;display:flex;flex-direction:column;row-gap:4px;width:350px}.command-palette input{color:var(--color-foreground);background:var(--color-primary)}.command-palette-suggestions-holder{width:100%}.command-palette-suggestion{display:grid;grid-template-columns:24px 1fr 24px 0px;background:var(--color-primary);overflow:visible;height:20px;min-width:100%;white-space:nowrap;width:100%;cursor:pointer}.command-palette-suggestion:hover,.command-palette-suggestion.selected{background:var(--color-background)}.command-palette-suggestion-children{position:relative;top:0;right:0;display:none;background:var(--color-primary);width:fit-content;height:fit-content;border-left:4px solid var(--color-spacer);box-shadow:0 4px 8px #0003,0 6px 20px #00000030}.command-palette-suggestion:hover>.command-palette-suggestion-children,.command-palette-suggestion.expanded>.command-palette-suggestion-children{display:block}.command-palette .fa-solid{text-align:center}.command-palette{transition:opacity .3s linear;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;display:flex;align-items:center}.command-palette input{width:100%;display:flex}.command-palette span.loading{position:absolute;right:5px}.command-palette-suggestions{background:#fff;z-index:1000;overflow:auto;box-sizing:border-box;border:1px solid rgba(60,60,60,.6);box-shadow:0 4px 8px #0003,0 6px 20px #00000030}.command-palette-suggestions .icon{padding-right:.3em;display:flex;align-self:center}.command-palette-suggestions em{font-weight:700;font-style:normal}.command-palette-suggestions>div{padding:0 4px;display:flex}.command-palette-suggestions .group{background:#eee}.command-palette-suggestions>div:hover:not(.group),.command-palette-suggestions>div.selected{cursor:pointer}.command-palette-suggestions>div:hover:not(.group){background:#e0e0e0}.command-palette-suggestions>div.selected{background:#bbdefb}div.settings-ui{left:20px;bottom:70px;padding:10px}.settings-accordion-icon:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M195.1%209.5C198.1-5.3%20211.2-16%20226.4-16l59.8%200c15.2%200%2028.3%2010.7%2031.3%2025.5L332%2079.5c14.1%206%2027.3%2013.7%2039.3%2022.8l67.8-22.5c14.4-4.8%2030.2%201.2%2037.8%2014.4l29.9%2051.8c7.6%2013.2%204.9%2029.8-6.5%2039.9L447%20233.3c.9%207.4%201.3%2015%201.3%2022.7s-.5%2015.3-1.3%2022.7l53.4%2047.5c11.4%2010.1%2014%2026.8%206.5%2039.9l-29.9%2051.8c-7.6%2013.1-23.4%2019.2-37.8%2014.4l-67.8-22.5c-12.1%209.1-25.3%2016.7-39.3%2022.8l-14.4%2069.9c-3.1%2014.9-16.2%2025.5-31.3%2025.5l-59.8%200c-15.2%200-28.3-10.7-31.3-25.5l-14.4-69.9c-14.1-6-27.2-13.7-39.3-22.8L73.5%20432.3c-14.4%204.8-30.2-1.2-37.8-14.4L5.8%20366.1c-7.6-13.2-4.9-29.8%206.5-39.9l53.4-47.5c-.9-7.4-1.3-15-1.3-22.7s.5-15.3%201.3-22.7L12.3%20185.8c-11.4-10.1-14-26.8-6.5-39.9L35.7%2094.1c7.6-13.2%2023.4-19.2%2037.8-14.4l67.8%2022.5c12.1-9.1%2025.3-16.7%2039.3-22.8L195.1%209.5zM256.3%20336a80%2080%200%201%200%20-.6-160%2080%2080%200%201%200%20.6%20160z'/%3e%3c/svg%3e");display:inline-block;filter:invert(var(--dark-mode));height:16px;width:16px;background-size:16px 16px;vertical-align:text-top;margin-right:4px}#settings-content{display:grid;gap:8px 6px;align-items:center}#settings-content>label{grid-column-start:1}#settings-content>input,#settings-content>select,#settings-content>label.switch{grid-column-start:2}#settings-content select{background-color:var(--color-background);color:var(--color-foreground);border:1px solid var(--color-foreground);border-radius:6px}.switch input:disabled+.slider{background-color:color-mix(in srgb,var(--color-primary) 50%,#555 50%)}.switch input:disabled+.slider:before{background-color:color-mix(in srgb,var(--color-background) 50%,#555 50%)}.switch{position:relative;display:inline-block;width:30px;height:17px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-background);-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:"";height:13px;width:13px;left:2px;bottom:2px;background-color:var(--color-primary);-webkit-transition:.3s;transition:.3s}input:checked+.slider{background-color:var(--color-background)}input:checked+.slider:before{-webkit-transform:translateX(13px);-ms-transform:translateX(13px);transform:translate(13px);background-color:var(--color-foreground)}.slider.round{border-radius:17px}.slider.round:before{border-radius:50%}.tool-palette{top:40px;padding:3px;right:40px;-webkit-user-select:none;user-select:none;display:grid;grid-template-columns:1fr 1fr 1fr}.tool-palette .tool{width:32px;height:32px;border-radius:5px;padding:2px;margin:2px}.tool-palette .tool svg line,.tool-palette .tool svg path,.tool-palette .tool svg rect,.tool-palette .tool svg circle{stroke:var(--color-foreground);fill:transparent}.tool-palette .tool svg .fill{fill:var(--color-foreground)}.tool-palette .tool svg text{fill:var(--color-foreground);font-size:10px;font-family:sans-serif;text-anchor:middle;dominant-baseline:central}.tool-palette .tool:hover{cursor:pointer;background-color:var(--color-tool-palette-hover)}.tool-palette .tool.active{background-color:var(--color-tool-palette-selected)}.tool-palette .tool .shortcut{position:relative;bottom:16px;left:-4px;font-size:.75em;transition:opacity .3s ease-in-out;opacity:0}body.help-enabled .tool-palette .tool .shortcut{opacity:1}div.constraint-menu{right:20px;bottom:20px;padding:10px}.accordion-content:has(.monaco-editor.focused) *{overflow:visible}#constraint-menu-expand-title{padding-right:85px}#run-button-container{position:absolute;right:6px;bottom:6px;width:80px;z-index:50}#run-button{background-color:green;color:#fff;border:none;border-radius:8px;padding:5px 10px;text-align:center;text-decoration:none;display:inline-block;width:100%;cursor:pointer}#run-button:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20448%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M91.2%2036.9c-12.4-6.8-27.4-6.5-39.6%20.7S32%2057.9%2032%2072l0%20368c0%2014.1%207.5%2027.2%2019.6%2034.4s27.2%207.5%2039.6%20.7l336-184c12.8-7%2020.8-20.5%2020.8-35.1s-8-28.1-20.8-35.1l-336-184z'/%3e%3c/svg%3e");display:inline-block;filter:invert(1);height:16px;width:16px;background-size:16px 16px;vertical-align:text-top}#constraint-menu-input{min-width:300px}#constraint-menu-input *{overflow:visible}#constraint-menu-input .overflow-guard{overflow:hidden}#validation-label{height:1rem;color:var(--color-error)}#validation-label.valid{color:var(--color-valid)}#constraint-menu-list{grid-row-start:1;grid-row-end:2;grid-column-start:2;overflow:scroll;max-height:210px}#constraint-menu-list *{color:var(--color-foreground)}.constrain-label input{background-color:var(--color-background);text-align:center;border:1px solid var(--color-foreground);border-radius:15px;padding:3px;margin:4px}.constrain-label.selected input{border:2px solid var(--color-foreground)}.constrain-label button{background-color:transparent;border:none;cursor:pointer;padding:0}.constraint-add{padding:0;border:none;background-color:transparent;cursor:pointer;display:flex;align-items:center;gap:5px}#constraint-options-button{position:absolute;top:6px;right:6px;background:transparent;border:none;font-size:1.2em;cursor:pointer;color:var(--color-foreground);padding:2px}#constraint-options-menu{position:absolute;top:30px;right:6px;background:var(--color-background);border:1px solid var(--color-foreground);border-radius:4px;padding:8px;z-index:100;box-shadow:0 2px 6px #0003}#constraint-options-menu .options-item{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:.9em;color:var(--color-foreground)}#constraint-options-menu .options-item:last-child{margin-bottom:0}.assignment-edit-ui{position:absolute;padding:10px;-webkit-user-select:none;user-select:none;background:var(--color-primary)}.assignment-edit-ui div.unavailable-inputs{padding-bottom:5px}.assignment-edit-ui div.validation-label.validation-error{color:var(--color-error)}.assignment-edit-ui div.validation-label.validation-success{color:var(--color-valid)}.violation-ui{right:20px;bottom:70px;padding:10px;max-width:30vw}.violation-ui .tab-pane{display:none;font-size:13px;max-width:100%}.violation-ui .tab-pane.active{display:block}.violation-ui .violation-tabs{display:flex;margin-bottom:10px}.violation-ui .tab-btn{flex:1;padding:5px;cursor:pointer;border:none;background:none;font-size:12px;color:var(--sprotty-label-color)}.violation-ui .tab-btn.active{border-bottom:2px solid #007acc;font-weight:700}.violation-ui #ai-api-key{background-color:var(--color-background);color:var(--color-foreground);border:1px solid var(--color-foreground);border-radius:6px}.violation-ui .api-key-container{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;margin-bottom:15px;padding:5px}.violation-ui .api-key-container label{font-size:11px;font-weight:700;white-space:nowrap}.violation-ui .api-key-container input{width:100%;padding:4px 8px;font-size:12px;border:1px solid var(--color-foreground);border-radius:3px;background:var(--sprotty-input-background, var(--color-background));color:var(--sprotty-label-color);box-sizing:border-box}.violation-ui .button-container{display:flex;justify-content:flex-end;margin-bottom:20px}.violation-ui .generate-btn{background-color:var(--sprotty-button-background, #007acc);color:var(--sprotty-button-foreground, #ffffff);border:none;padding:6px 12px;font-size:12px;border-radius:4px;cursor:pointer}.violation-ui .summary-text{width:100%;display:block;white-space:normal;word-wrap:break-word;overflow-wrap:anywhere;max-height:250px;overflow-y:auto}.violation-ui .summary-text p{margin:0;display:block;width:100%;white-space:normal}.violation-ui .status-info{display:block;width:100%;color:#636e72;font-style:italic;font-size:.9em;line-height:1.4;text-align:center;padding:20px 10px;box-sizing:border-box;margin:0 auto}.violation-ui .violation-item{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1);text-align:left} diff --git a/deploy/dac/assets/index-jxDt6WCR.js b/deploy/dac/assets/index-jxDt6WCR.js deleted file mode 100644 index 4a5b9eb7..00000000 --- a/deploy/dac/assets/index-jxDt6WCR.js +++ /dev/null @@ -1,120 +0,0 @@ -import{l as wh,R as Kzt,e as RX,M as z0t}from"./monaco-editor-BSmz0_Ko.js";(function(){const h=document.createElement("link").relList;if(h&&h.supports&&h.supports("modulepreload"))return;for(const m of document.querySelectorAll('link[rel="modulepreload"]'))w(m);new MutationObserver(m=>{for(const P of m)if(P.type==="childList")for(const g of P.addedNodes)g.tagName==="LINK"&&g.rel==="modulepreload"&&w(g)}).observe(document,{childList:!0,subtree:!0});function b(m){const P={};return m.integrity&&(P.integrity=m.integrity),m.referrerPolicy&&(P.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?P.credentials="include":m.crossOrigin==="anonymous"?P.credentials="omit":P.credentials="same-origin",P}function w(m){if(m.ep)return;m.ep=!0;const P=b(m);fetch(m.href,P)}})();var fS=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function qzt(f){return f&&f.__esModule&&Object.prototype.hasOwnProperty.call(f,"default")?f.default:f}function V0t(f){if(Object.prototype.hasOwnProperty.call(f,"__esModule"))return f;var h=f.default;if(typeof h=="function"){var b=function w(){var m=!1;try{m=this instanceof w}catch{}return m?Reflect.construct(h,arguments,this.constructor):h.apply(this,arguments)};b.prototype=h.prototype}else b={};return Object.defineProperty(b,"__esModule",{value:!0}),Object.keys(f).forEach(function(w){var m=Object.getOwnPropertyDescriptor(f,w);Object.defineProperty(b,w,m.get?m:{enumerable:!0,get:function(){return f[w]}})}),b}var _ht={};var Eht;function vye(){if(Eht)return _ht;Eht=1;var f;return(function(h){(function(b){var w=typeof globalThis=="object"?globalThis:typeof fS=="object"?fS:typeof self=="object"?self:typeof this=="object"?this:C(),m=P(h);typeof w.Reflect<"u"&&(m=P(w.Reflect,m)),b(m,w),typeof w.Reflect>"u"&&(w.Reflect=h);function P(T,M){return function(_,I){Object.defineProperty(T,_,{configurable:!0,writable:!0,value:I}),M&&M(_,I)}}function g(){try{return Function("return this;")()}catch{}}function E(){try{return(0,eval)("(function() { return this; })()")}catch{}}function C(){return g()||E()}})(function(b,w){var m=Object.prototype.hasOwnProperty,P=typeof Symbol=="function",g=P&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",E=P&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",C=typeof Object.create=="function",T={__proto__:[]}instanceof Array,M=!C&&!T,_={create:C?function(){return FM(Object.create(null))}:T?function(){return FM({__proto__:null})}:function(){return FM({})},has:M?function(ft,It){return m.call(ft,It)}:function(ft,It){return It in ft},get:M?function(ft,It){return m.call(ft,It)?ft[It]:void 0}:function(ft,It){return ft[It]}},I=Object.getPrototypeOf(Function),O=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:lN(),j=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:MJ(),k=typeof WeakMap=="function"?WeakMap:NM(),x=P?Symbol.for("@reflect-metadata:registry"):void 0,R=IA(),H=vh(R);function F(ft,It,zt,zn){if(Gn(zt)){if(!Ml(ft))throw new TypeError;if(!Si(It))throw new TypeError;return me(ft,It)}else{if(!Ml(ft))throw new TypeError;if(!Lr(It))throw new TypeError;if(!Lr(zn)&&!Gn(zn)&&!pc(zn))throw new TypeError;return pc(zn)&&(zn=void 0),zt=Er(zt),ke(ft,It,zt,zn)}}b("decorate",F);function $(ft,It){function zt(zn,or){if(!Lr(zn))throw new TypeError;if(!Gn(or)&&!_o(or))throw new TypeError;Nt(ft,It,zn,or)}return zt}b("metadata",$);function W(ft,It,zt,zn){if(!Lr(zt))throw new TypeError;return Gn(zn)||(zn=Er(zn)),Nt(ft,It,zt,zn)}b("defineMetadata",W);function re(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),tt(ft,It,zt)}b("hasMetadata",re);function ae(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),De(ft,It,zt)}b("hasOwnMetadata",ae);function ce(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),ct(ft,It,zt)}b("getMetadata",ce);function J(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),Z(ft,It,zt)}b("getOwnMetadata",J);function te(ft,It){if(!Lr(ft))throw new TypeError;return Gn(It)||(It=Er(It)),ii(ft,It)}b("getMetadataKeys",te);function fe(ft,It){if(!Lr(ft))throw new TypeError;return Gn(It)||(It=Er(It)),kr(ft,It)}b("getOwnMetadataKeys",fe);function ve(ft,It,zt){if(!Lr(It))throw new TypeError;if(Gn(zt)||(zt=Er(zt)),!Lr(It))throw new TypeError;Gn(zt)||(zt=Er(zt));var zn=ed(It,zt,!1);return Gn(zn)?!1:zn.OrdinaryDeleteMetadata(ft,It,zt)}b("deleteMetadata",ve);function me(ft,It){for(var zt=ft.length-1;zt>=0;--zt){var zn=ft[zt],or=zn(It);if(!Gn(or)&&!pc(or)){if(!Si(or))throw new TypeError;It=or}}return It}function ke(ft,It,zt,zn){for(var or=ft.length-1;or>=0;--or){var uu=ft[or],Qu=uu(It,zt,zn);if(!Gn(Qu)&&!pc(Qu)){if(!Lr(Qu))throw new TypeError;zn=Qu}}return zn}function tt(ft,It,zt){var zn=De(ft,It,zt);if(zn)return!0;var or=Ia(It);return pc(or)?!1:tt(ft,or,zt)}function De(ft,It,zt){var zn=ed(It,zt,!1);return Gn(zn)?!1:jn(zn.OrdinaryHasOwnMetadata(ft,It,zt))}function ct(ft,It,zt){var zn=De(ft,It,zt);if(zn)return Z(ft,It,zt);var or=Ia(It);if(!pc(or))return ct(ft,or,zt)}function Z(ft,It,zt){var zn=ed(It,zt,!1);if(!Gn(zn))return zn.OrdinaryGetOwnMetadata(ft,It,zt)}function Nt(ft,It,zt,zn){var or=ed(zt,zn,!0);or.OrdinaryDefineOwnMetadata(ft,It,zt,zn)}function ii(ft,It){var zt=kr(ft,It),zn=Ia(ft);if(zn===null)return zt;var or=ii(zn,It);if(or.length<=0)return zt;if(zt.length<=0)return or;for(var uu=new j,Qu=[],fo=0,ni=zt;fo=0&&ni=this._keys.length?(this._index=-1,this._keys=It,this._values=It):this._index++,{value:li,done:!1}}return{value:void 0,done:!0}},fo.prototype.throw=function(ni){throw this._index>=0&&(this._index=-1,this._keys=It,this._values=It),ni},fo.prototype.return=function(ni){return this._index>=0&&(this._index=-1,this._keys=It,this._values=It),{value:ni,done:!0}},fo})(),zn=(function(){function fo(){this._keys=[],this._values=[],this._cacheKey=ft,this._cacheIndex=-2}return Object.defineProperty(fo.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),fo.prototype.has=function(ni){return this._find(ni,!1)>=0},fo.prototype.get=function(ni){var li=this._find(ni,!1);return li>=0?this._values[li]:void 0},fo.prototype.set=function(ni,li){var bi=this._find(ni,!0);return this._values[bi]=li,this},fo.prototype.delete=function(ni){var li=this._find(ni,!1);if(li>=0){for(var bi=this._keys.length,Pi=li+1;Pi0)throw new kM(F3.missingInjectionDecorator,`Found unexpected missing metadata on type "${f.name}" at constructor indexes "${b.join('", "')}". - -Are you using @inject, @multiInject or @unmanaged decorators at those indexes? - -If you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}function X0t(f){return{kind:wg.singleInjection,name:void 0,optional:!1,tags:new Map,targetName:void 0,value:f}}function oJ(f){const h=f.find((g=>g.key===Sye)),b=f.find((g=>g.key===Pye));if(f.find((g=>g.key===_ye))!==void 0)return(function(g,E){if(E!==void 0||g!==void 0)throw new kM(F3.missingInjectionDecorator,"Expected a single @inject, @multiInject or @unmanaged metadata");return{kind:wg.unmanaged}})(h,b);if(b===void 0&&h===void 0)throw new kM(F3.missingInjectionDecorator,"Expected @inject, @multiInject or @unmanaged metadata");const w=f.find((g=>g.key===rJ)),m=f.find((g=>g.key===Eye)),P=f.find((g=>g.key===yye));return{kind:h===void 0?wg.multipleInjection:wg.singleInjection,name:w?.value,optional:m!==void 0,tags:new Map(f.filter((g=>zzt.every((E=>g.key!==E)))).map((g=>[g.key,g.value]))),targetName:P?.value,value:h===void 0?b?.value:h.value}}function J0t(f,h,b){try{return oJ(b)}catch(w){throw kM.isErrorOfKind(w,F3.missingInjectionDecorator)?new kM(F3.missingInjectionDecorator,`Expected a single @inject, @multiInject or @unmanaged decorator at type "${f.name}" at constructor arguments at index "${h.toString()}"`,{cause:w}):w}}function Vzt(f){const h=N3(f,"design:paramtypes"),b=N3(f,"inversify:tagged"),w=[];if(b!==void 0)for(const[m,P]of Object.entries(b)){const g=parseInt(m);w[g]=J0t(f,g,P)}if(h!==void 0){for(let m=0;mNumber.MIN_SAFE_INTEGER)):Sht(Object,Kme,m,(P=>P+1)),m})(),this.#i=h,this.#t=void 0,this.#e=b,this.#r=new Jzt(typeof h=="string"?h:h.toString().slice(7,-1)),this.#o=w}get id(){return this.#n}get identifier(){return this.#i}get metadata(){return this.#t===void 0&&(this.#t=Yzt(this.#e)),this.#t}get name(){return this.#r}get type(){return this.#o}get serviceIdentifier(){return Hzt.is(this.#e.value)?this.#e.value.unwrap():this.#e.value}getCustomTags(){return[...this.#e.tags.entries()].map((([h,b])=>({key:h,value:b})))}getNamedTag(){return this.#e.name===void 0?null:{key:rJ,value:this.#e.name}}hasTag(h){return this.metadata.some((b=>b.key===h))}isArray(){return this.#e.kind===wg.multipleInjection}isNamed(){return this.#e.name!==void 0}isOptional(){return this.#e.optional}isTagged(){return this.#e.tags.size>0}matchesArray(h){return this.isArray()&&this.#e.value===h}matchesNamedTag(h){return this.#e.name===h}matchesTag(h){return b=>this.metadata.some((w=>w.key===h&&w.value===b))}};const tpt=f=>(function(h,b){return function(w){const m=h(w);let P=Pht(w);for(;P!==void 0&&P!==Object;){const E=b(P);for(const[C,T]of E)m.properties.has(C)||m.properties.set(C,T);P=Pht(P)}const g=[];for(const E of m.constructorArguments)if(E.kind!==wg.unmanaged){const C=E.targetName??"";g.push(new xX(C,E,"ConstructorArgument"))}for(const[E,C]of m.properties)if(C.kind!==wg.unmanaged){const T=C.targetName??E;g.push(new xX(T,C,"ClassProperty"))}return g}})(f===void 0?Gzt:h=>Wzt(h,f),f===void 0?Z0t:h=>ept(h,f)),wm="named",Qzt="unmanaged",npt="optional",ipt="inject",rpt="multi_inject",opt="inversify:tagged",cpt="inversify:tagged_props",Mht="inversify:paramtypes",spt="design:paramtypes",Cht="post_construct",jve="pre_destroy",nl={Request:"Request",Singleton:"Singleton",Transient:"Transient"},Ys={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"},upt={ConstructorArgument:"ConstructorArgument",Variable:"Variable"};let Zzt=0;function XL(){return Zzt++}class Mye{id;moduleId;activated;serviceIdentifier;implementationType;cache;dynamicValue;scope;type;factory;provider;constraint;onActivation;onDeactivation;constructor(h,b){this.id=XL(),this.activated=!1,this.serviceIdentifier=h,this.scope=b,this.type=Ys.Invalid,this.constraint=w=>!0,this.implementationType=null,this.cache=null,this.factory=null,this.provider=null,this.onActivation=null,this.onDeactivation=null,this.dynamicValue=null}clone(){const h=new Mye(this.serviceIdentifier,this.scope);return h.activated=h.scope===nl.Singleton&&this.activated,h.implementationType=this.implementationType,h.dynamicValue=this.dynamicValue,h.scope=this.scope,h.type=this.type,h.factory=this.factory,h.provider=this.provider,h.constraint=this.constraint,h.onActivation=this.onActivation,h.onDeactivation=this.onDeactivation,h.cache=this.cache,h}}const apt="Metadata key was used more than once in a parameter:",Iht="NULL argument",Tht="Key Not Found",eVt="Ambiguous match found for serviceIdentifier:",tVt="No matching bindings found for serviceIdentifier:",lpt="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.",Ave=(f,h)=>`onDeactivation() error in class ${f}: ${h}`;class nVt{getConstructorMetadata(h){return{compilerGeneratedMetadata:Reflect.getMetadata(spt,h)??[],userGeneratedMetadata:Reflect.getMetadata(opt,h)??{}}}getPropertiesMetadata(h){return Reflect.getMetadata(cpt,h)??{}}}var aA;function fpt(f){return f instanceof RangeError||f.message==="Maximum call stack size exceeded"}(function(f){f[f.MultipleBindingsAvailable=2]="MultipleBindingsAvailable",f[f.NoBindingsAvailable=0]="NoBindingsAvailable",f[f.OnlyOneBindingAvailable=1]="OnlyOneBindingAvailable"})(aA||(aA={}));function bS(f){return typeof f=="function"?f.name:typeof f=="symbol"?f.toString():f}function jht(f,h,b){let w="";const m=b(f,h);return m.length!==0&&(w=` -Registered bindings:`,m.forEach((P=>{let g="Object";P.implementationType!==null&&(g=gpt(P.implementationType)),w=`${w} - ${g}`,P.constraint.metaData&&(w=`${w} - ${P.constraint.metaData}`)}))),w}function hpt(f,h){return f.parentRequest!==null&&(f.parentRequest.serviceIdentifier===h||hpt(f.parentRequest,h))}function dpt(f){f.childRequests.forEach((h=>{if(hpt(f,h.serviceIdentifier)){const b=(function(w){return(function P(g,E=[]){const C=bS(g.serviceIdentifier);return E.push(C),g.parentRequest!==null?P(g.parentRequest,E):E})(w).reverse().join(" --> ")})(h);throw new Error(`Circular dependency found: ${b}`)}dpt(h)}))}function gpt(f){if(f.name!=null&&f.name!=="")return f.name;{const h=f.toString(),b=h.match(/^function\s*([^\s(]+)/);return b===null?`Anonymous function: ${h}`:b[1]}}function Aht(f){return`{"key":"${f.key.toString()}","value":"${f.value.toString()}"}`}class bpt{id;container;plan;currentRequest;constructor(h){this.id=XL(),this.container=h}addPlan(h){this.plan=h}setCurrentRequest(h){this.currentRequest=h}}class lA{key;value;constructor(h,b){this.key=h,this.value=b}toString(){return this.key===wm?`named: ${String(this.value).toString()} `:`tagged: { key:${this.key.toString()}, value: ${String(this.value)} }`}}class iVt{parentContext;rootRequest;constructor(h,b){this.parentContext=h,this.rootRequest=b}}function ppt(f,h){const b=(function(E){return Object.getPrototypeOf(E.prototype)?.constructor})(h);if(b===void 0||b===Object)return 0;const w=tpt(f)(b),m=w.map((E=>E.metadata.filter((C=>C.key===Qzt)))),P=[].concat.apply([],m).length,g=w.length-P;return g>0?g:ppt(f,b)}class JL{id;serviceIdentifier;parentContext;parentRequest;bindings;childRequests;target;requestScope;constructor(h,b,w,m,P){this.id=XL(),this.serviceIdentifier=h,this.parentContext=b,this.parentRequest=w,this.target=P,this.childRequests=[],this.bindings=Array.isArray(m)?m:[m],this.requestScope=w===null?new Map:null}addChildRequest(h,b,w){const m=new JL(h,this.parentContext,this,b,w);return this.childRequests.push(m),m}}function LX(f){return f._bindingDictionary}function Oht(f,h,b,w,m){let P=jL(b.container,m.serviceIdentifier),g=[];return P.length===aA.NoBindingsAvailable&&b.container.options.autoBindInjectable===!0&&typeof m.serviceIdentifier=="function"&&f.getConstructorMetadata(m.serviceIdentifier).compilerGeneratedMetadata&&(b.container.bind(m.serviceIdentifier).toSelf(),P=jL(b.container,m.serviceIdentifier)),g=h?P:P.filter((E=>{const C=new JL(E.serviceIdentifier,b,w,E,m);return E.constraint(C)})),(function(E,C,T,M,_){switch(C.length){case aA.NoBindingsAvailable:if(M.isOptional())return C;{const I=bS(E);let O=tVt;throw O+=(function(j,k){if(k.isTagged()||k.isNamed()){let x="";const R=k.getNamedTag(),H=k.getCustomTags();return R!==null&&(x+=Aht(R)+` -`),H!==null&&H.forEach((F=>{x+=Aht(F)+` -`})),` ${j} - ${j} - ${x}`}return` ${j}`})(I,M),O+=jht(_,I,jL),T!==null&&(O+=` -Trying to resolve bindings for "${bS(T.serviceIdentifier)}"`),new Error(O)}case aA.OnlyOneBindingAvailable:return C;case aA.MultipleBindingsAvailable:default:if(M.isArray())return C;{const I=bS(E);let O=`${eVt} ${I}`;throw O+=jht(_,I,jL),new Error(O)}}})(m.serviceIdentifier,g,w,m,b.container),g}function wpt(f,h){const b=h.isMultiInject?rpt:ipt,w=[new lA(b,f)];return h.customTag!==void 0&&w.push(new lA(h.customTag.key,h.customTag.value)),h.isOptional===!0&&w.push(new lA(npt,!0)),w}function mpt(f,h,b,w,m,P){let g,E;if(m===null){g=Oht(f,h,w,null,P),E=new JL(b,w,null,g,P);const C=new iVt(w,E);w.addPlan(C)}else g=Oht(f,h,w,m,P),E=m.addChildRequest(P.serviceIdentifier,g,P);g.forEach((C=>{let T=null;if(P.isArray())T=E.addChildRequest(C.serviceIdentifier,C,P);else{if(C.cache!==null)return;T=E}if(C.type===Ys.Instance&&C.implementationType!==null){const M=(function(_,I){return tpt(_)(I)})(f,C.implementationType);if(w.container.options.skipBaseClassChecks!==!0){const _=ppt(f,C.implementationType);if(M.length<_){const I=`The number of constructor arguments in the derived class ${gpt(C.implementationType)} must be >= than the number of constructor arguments of its base class.`;throw new Error(I)}}M.forEach((_=>{mpt(f,!1,_.serviceIdentifier,w,T,_)}))}}))}function jL(f,h){let b=[];const w=LX(f);return w.hasKey(h)?b=w.get(h):f.parent!==null&&(b=jL(f.parent,h)),b}function rVt(f,h,b,w,m,P=!1){const g=new bpt(h),E=(function(C,T,M){const _=wpt(T,M),I=oJ(_);if(I.kind===wg.unmanaged)throw new Error("Unexpected metadata when creating target");return new xX("",I,C)})(b,w,m);try{return mpt(f,P,w,g,null,E),g}catch(C){throw fpt(C)&&dpt(g.plan.rootRequest),C}}function bg(f){return(typeof f=="object"&&f!==null||typeof f=="function")&&typeof f.then=="function"}function vpt(f){return!!bg(f)||Array.isArray(f)&&f.some(bg)}const oVt=(f,h,b)=>{f.has(h.id)||f.set(h.id,b)},cVt=(f,h)=>{f.cache=h,f.activated=!0,bg(h)&&sVt(f,h)},sVt=async(f,h)=>{try{const b=await h;f.cache=b}catch(b){throw f.cache=null,f.activated=!1,b}};var kL;(function(f){f.DynamicValue="toDynamicValue",f.Factory="toFactory",f.Provider="toProvider"})(kL||(kL={}));function uVt(f,h,b){let w;if(h.length>0){const m=(function(g,E){return g.reduce(((C,T)=>{const M=E(T);return T.target.type===upt.ConstructorArgument?C.constructorInjections.push(M):(C.propertyRequests.push(T),C.propertyInjections.push(M)),C.isAsync||(C.isAsync=vpt(M)),C}),{constructorInjections:[],isAsync:!1,propertyInjections:[],propertyRequests:[]})})(h,b),P={...m,constr:f};w=m.isAsync?(async function(g){const E=await kht(g.constructorInjections),C=await kht(g.propertyInjections);return Dht({...g,constructorInjections:E,propertyInjections:C})})(P):Dht(P)}else w=new f;return w}function Dht(f){const h=new f.constr(...f.constructorInjections);return f.propertyRequests.forEach(((b,w)=>{const m=b.target.identifier,P=f.propertyInjections[w];b.target.isOptional()&&P===void 0||(h[m]=P)})),h}async function kht(f){const h=[];for(const b of f)Array.isArray(b)?h.push(Promise.all(b)):h.push(b);return Promise.all(h)}function Rht(f,h){const b=(function(w,m){if(Reflect.hasMetadata(Cht,w)){const E=Reflect.getMetadata(Cht,w);try{return m[E.value]?.()}catch(C){if(C instanceof Error)throw new Error((P=w.name,g=C.message,`@postConstruct error in class ${P}: ${g}`))}}var P,g})(f,h);return bg(b)?b.then((()=>h)):h}function aVt(f,h){f.scope!==nl.Singleton&&(function(b,w){const m=`Class cannot be instantiated in ${b.scope===nl.Request?"request":"transient"} scope.`;if(typeof b.onDeactivation=="function")throw new Error(Ave(w.name,m));if(Reflect.hasMetadata(jve,w))throw new Error(`@preDestroy error in class ${w.name}: ${m}`)})(f,h)}const Cye=f=>h=>{h.parentContext.setCurrentRequest(h);const b=h.bindings,w=h.childRequests,m=h.target&&h.target.isArray(),P=!(h.parentRequest&&h.parentRequest.target&&h.target&&h.parentRequest.target.matchesArray(h.target.serviceIdentifier));if(m&&P)return w.map((g=>Cye(f)(g)));{if(h.target.isOptional()&&b.length===0)return;const g=b[0];return dVt(f,h,g)}},lVt=(f,h)=>{const b=(w=>{switch(w.type){case Ys.Factory:return{factory:w.factory,factoryType:kL.Factory};case Ys.Provider:return{factory:w.provider,factoryType:kL.Provider};case Ys.DynamicValue:return{factory:w.dynamicValue,factoryType:kL.DynamicValue};default:throw new Error(`Unexpected factory type ${w.type}`)}})(f);return((w,m)=>{try{return w()}catch(P){throw fpt(P)?m():P}})((()=>b.factory.bind(f)(h)),(()=>{return new Error((w=b.factoryType,m=h.currentRequest.serviceIdentifier.toString(),`It looks like there is a circular dependency in one of the '${w}' bindings. Please investigate bindings with service identifier '${m}'.`));var w,m}))},fVt=(f,h,b)=>{let w;const m=h.childRequests;switch((P=>{let g=null;switch(P.type){case Ys.ConstantValue:case Ys.Function:g=P.cache;break;case Ys.Constructor:case Ys.Instance:g=P.implementationType;break;case Ys.DynamicValue:g=P.dynamicValue;break;case Ys.Provider:g=P.provider;break;case Ys.Factory:g=P.factory}if(g===null){const E=bS(P.serviceIdentifier);throw new Error(`Invalid binding type: ${E}`)}})(b),b.type){case Ys.ConstantValue:case Ys.Function:w=b.cache;break;case Ys.Constructor:w=b.implementationType;break;case Ys.Instance:w=(function(P,g,E,C){aVt(P,g);const T=uVt(g,E,C);return bg(T)?T.then((M=>Rht(g,M))):Rht(g,T)})(b,b.implementationType,m,Cye(f));break;default:w=lVt(b,h.parentContext)}return w},hVt=(f,h,b)=>{let w=((m,P)=>P.scope===nl.Singleton&&P.activated?P.cache:P.scope===nl.Request&&m.has(P.id)?m.get(P.id):null)(f,h);return w!==null||(w=b(),((m,P,g)=>{P.scope===nl.Singleton&&cVt(P,g),P.scope===nl.Request&&oVt(m,P,g)})(f,h,w)),w},dVt=(f,h,b)=>hVt(f,b,(()=>{let w=fVt(f,h,b);return w=bg(w)?w.then((m=>xht(h,b,m))):xht(h,b,w),w}));function xht(f,h,b){let w=gVt(f.parentContext,h,b);const m=wVt(f.parentContext.container);let P,g=m.next();do{P=g.value;const E=f.parentContext,C=f.serviceIdentifier,T=pVt(P,C);w=bg(w)?ypt(T,E,w):bVt(T,E,w),g=m.next()}while(g.done!==!0&&!LX(P).hasKey(f.serviceIdentifier));return w}const gVt=(f,h,b)=>{let w;return w=typeof h.onActivation=="function"?h.onActivation(f,b):b,w},bVt=(f,h,b)=>{let w=f.next();for(;w.done!==!0;){if(bg(b=w.value(h,b)))return ypt(f,h,b);w=f.next()}return b},ypt=async(f,h,b)=>{let w=await b,m=f.next();for(;m.done!==!0;)w=await m.value(h,w),m=f.next();return w},pVt=(f,h)=>{const b=f._activations;return b.hasKey(h)?b.get(h).values():[].values()},wVt=f=>{const h=[f];let b=f.parent;for(;b!==null;)h.push(b),b=b.parent;return{next:()=>{const w=h.pop();return w!==void 0?{done:!1,value:w}:{done:!0,value:void 0}}}},I3=(f,h)=>{const b=f.parentRequest;return b!==null&&(!!h(b)||I3(b,h))},AL=f=>h=>{const b=w=>w!==null&&w.target!==null&&w.target.matchesTag(f)(h);return b.metaData=new lA(f,h),b},IY=AL(wm),qme=f=>h=>{let b=null;if(h!==null){if(b=h.bindings[0],typeof f=="string")return b.serviceIdentifier===f;{const w=h.bindings[0].implementationType;return f===w}}return!1};class NX{_binding;constructor(h){this._binding=h}when(h){return this._binding.constraint=h,new ph(this._binding)}whenTargetNamed(h){return this._binding.constraint=IY(h),new ph(this._binding)}whenTargetIsDefault(){return this._binding.constraint=h=>h===null?!1:h.target!==null&&!h.target.isNamed()&&!h.target.isTagged(),new ph(this._binding)}whenTargetTagged(h,b){return this._binding.constraint=AL(h)(b),new ph(this._binding)}whenInjectedInto(h){return this._binding.constraint=b=>b!==null&&qme(h)(b.parentRequest),new ph(this._binding)}whenParentNamed(h){return this._binding.constraint=b=>b!==null&&IY(h)(b.parentRequest),new ph(this._binding)}whenParentTagged(h,b){return this._binding.constraint=w=>w!==null&&AL(h)(b)(w.parentRequest),new ph(this._binding)}whenAnyAncestorIs(h){return this._binding.constraint=b=>b!==null&&I3(b,qme(h)),new ph(this._binding)}whenNoAncestorIs(h){return this._binding.constraint=b=>b!==null&&!I3(b,qme(h)),new ph(this._binding)}whenAnyAncestorNamed(h){return this._binding.constraint=b=>b!==null&&I3(b,IY(h)),new ph(this._binding)}whenNoAncestorNamed(h){return this._binding.constraint=b=>b!==null&&!I3(b,IY(h)),new ph(this._binding)}whenAnyAncestorTagged(h,b){return this._binding.constraint=w=>w!==null&&I3(w,AL(h)(b)),new ph(this._binding)}whenNoAncestorTagged(h,b){return this._binding.constraint=w=>w!==null&&!I3(w,AL(h)(b)),new ph(this._binding)}whenAnyAncestorMatches(h){return this._binding.constraint=b=>b!==null&&I3(b,h),new ph(this._binding)}whenNoAncestorMatches(h){return this._binding.constraint=b=>b!==null&&!I3(b,h),new ph(this._binding)}}class ph{_binding;constructor(h){this._binding=h}onActivation(h){return this._binding.onActivation=h,new NX(this._binding)}onDeactivation(h){return this._binding.onDeactivation=h,new NX(this._binding)}}class T3{_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(h){this._binding=h,this._bindingWhenSyntax=new NX(this._binding),this._bindingOnSyntax=new ph(this._binding)}when(h){return this._bindingWhenSyntax.when(h)}whenTargetNamed(h){return this._bindingWhenSyntax.whenTargetNamed(h)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(h,b){return this._bindingWhenSyntax.whenTargetTagged(h,b)}whenInjectedInto(h){return this._bindingWhenSyntax.whenInjectedInto(h)}whenParentNamed(h){return this._bindingWhenSyntax.whenParentNamed(h)}whenParentTagged(h,b){return this._bindingWhenSyntax.whenParentTagged(h,b)}whenAnyAncestorIs(h){return this._bindingWhenSyntax.whenAnyAncestorIs(h)}whenNoAncestorIs(h){return this._bindingWhenSyntax.whenNoAncestorIs(h)}whenAnyAncestorNamed(h){return this._bindingWhenSyntax.whenAnyAncestorNamed(h)}whenAnyAncestorTagged(h,b){return this._bindingWhenSyntax.whenAnyAncestorTagged(h,b)}whenNoAncestorNamed(h){return this._bindingWhenSyntax.whenNoAncestorNamed(h)}whenNoAncestorTagged(h,b){return this._bindingWhenSyntax.whenNoAncestorTagged(h,b)}whenAnyAncestorMatches(h){return this._bindingWhenSyntax.whenAnyAncestorMatches(h)}whenNoAncestorMatches(h){return this._bindingWhenSyntax.whenNoAncestorMatches(h)}onActivation(h){return this._bindingOnSyntax.onActivation(h)}onDeactivation(h){return this._bindingOnSyntax.onDeactivation(h)}}class mVt{_binding;constructor(h){this._binding=h}inRequestScope(){return this._binding.scope=nl.Request,new T3(this._binding)}inSingletonScope(){return this._binding.scope=nl.Singleton,new T3(this._binding)}inTransientScope(){return this._binding.scope=nl.Transient,new T3(this._binding)}}class Lht{_bindingInSyntax;_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(h){this._binding=h,this._bindingWhenSyntax=new NX(this._binding),this._bindingOnSyntax=new ph(this._binding),this._bindingInSyntax=new mVt(h)}inRequestScope(){return this._bindingInSyntax.inRequestScope()}inSingletonScope(){return this._bindingInSyntax.inSingletonScope()}inTransientScope(){return this._bindingInSyntax.inTransientScope()}when(h){return this._bindingWhenSyntax.when(h)}whenTargetNamed(h){return this._bindingWhenSyntax.whenTargetNamed(h)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(h,b){return this._bindingWhenSyntax.whenTargetTagged(h,b)}whenInjectedInto(h){return this._bindingWhenSyntax.whenInjectedInto(h)}whenParentNamed(h){return this._bindingWhenSyntax.whenParentNamed(h)}whenParentTagged(h,b){return this._bindingWhenSyntax.whenParentTagged(h,b)}whenAnyAncestorIs(h){return this._bindingWhenSyntax.whenAnyAncestorIs(h)}whenNoAncestorIs(h){return this._bindingWhenSyntax.whenNoAncestorIs(h)}whenAnyAncestorNamed(h){return this._bindingWhenSyntax.whenAnyAncestorNamed(h)}whenAnyAncestorTagged(h,b){return this._bindingWhenSyntax.whenAnyAncestorTagged(h,b)}whenNoAncestorNamed(h){return this._bindingWhenSyntax.whenNoAncestorNamed(h)}whenNoAncestorTagged(h,b){return this._bindingWhenSyntax.whenNoAncestorTagged(h,b)}whenAnyAncestorMatches(h){return this._bindingWhenSyntax.whenAnyAncestorMatches(h)}whenNoAncestorMatches(h){return this._bindingWhenSyntax.whenNoAncestorMatches(h)}onActivation(h){return this._bindingOnSyntax.onActivation(h)}onDeactivation(h){return this._bindingOnSyntax.onDeactivation(h)}}class vVt{_binding;constructor(h){this._binding=h}to(h){return this._binding.type=Ys.Instance,this._binding.implementationType=h,new Lht(this._binding)}toSelf(){if(typeof this._binding.serviceIdentifier!="function")throw new Error("The toSelf function can only be applied when a constructor is used as service identifier");const h=this._binding.serviceIdentifier;return this.to(h)}toConstantValue(h){return this._binding.type=Ys.ConstantValue,this._binding.cache=h,this._binding.dynamicValue=null,this._binding.implementationType=null,this._binding.scope=nl.Singleton,new T3(this._binding)}toDynamicValue(h){return this._binding.type=Ys.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=h,this._binding.implementationType=null,new Lht(this._binding)}toConstructor(h){return this._binding.type=Ys.Constructor,this._binding.implementationType=h,this._binding.scope=nl.Singleton,new T3(this._binding)}toFactory(h){return this._binding.type=Ys.Factory,this._binding.factory=h,this._binding.scope=nl.Singleton,new T3(this._binding)}toFunction(h){if(typeof h!="function")throw new Error("Value provided to function binding must be a function!");const b=this.toConstantValue(h);return this._binding.type=Ys.Function,this._binding.scope=nl.Singleton,b}toAutoFactory(h){return this._binding.type=Ys.Factory,this._binding.factory=b=>()=>b.container.get(h),this._binding.scope=nl.Singleton,new T3(this._binding)}toAutoNamedFactory(h){return this._binding.type=Ys.Factory,this._binding.factory=b=>w=>b.container.getNamed(h,w),new T3(this._binding)}toProvider(h){return this._binding.type=Ys.Provider,this._binding.provider=h,this._binding.scope=nl.Singleton,new T3(this._binding)}toService(h){this._binding.type=Ys.DynamicValue,Object.defineProperty(this._binding,"cache",{configurable:!0,enumerable:!0,get:()=>null,set(b){}}),this._binding.dynamicValue=b=>{try{return b.container.get(h)}catch{return b.container.getAsync(h)}},this._binding.implementationType=null}}class Iye{bindings;activations;deactivations;middleware;moduleActivationStore;static of(h,b,w,m,P){const g=new Iye;return g.bindings=h,g.middleware=b,g.deactivations=m,g.activations=w,g.moduleActivationStore=P,g}}class j3{_map;constructor(){this._map=new Map}getMap(){return this._map}add(h,b){if(this._checkNonNulish(h),b==null)throw new Error(Iht);const w=this._map.get(h);w!==void 0?w.push(b):this._map.set(h,[b])}get(h){this._checkNonNulish(h);const b=this._map.get(h);if(b!==void 0)return b;throw new Error(Tht)}remove(h){if(this._checkNonNulish(h),!this._map.delete(h))throw new Error(Tht)}removeIntersection(h){this.traverse(((b,w)=>{const m=h.hasKey(b)?h.get(b):void 0;if(m!==void 0){const P=w.filter((g=>!m.some((E=>g===E))));this._setValue(b,P)}}))}removeByCondition(h){const b=[];return this._map.forEach(((w,m)=>{const P=[];for(const g of w)h(g)?b.push(g):P.push(g);this._setValue(m,P)})),b}hasKey(h){return this._checkNonNulish(h),this._map.has(h)}clone(){const h=new j3;return this._map.forEach(((b,w)=>{b.forEach((m=>{var P;h.add(w,typeof(P=m)=="object"&&P!==null&&"clone"in P&&typeof P.clone=="function"?m.clone():m)}))})),h}traverse(h){this._map.forEach(((b,w)=>{h(w,b)}))}_checkNonNulish(h){if(h==null)throw new Error(Iht)}_setValue(h,b){b.length>0?this._map.set(h,b):this._map.delete(h)}}class Tye{_map=new Map;remove(h){const b=this._map.get(h);return b===void 0?this._getEmptyHandlersStore():(this._map.delete(h),b)}addDeactivation(h,b,w){this._getModuleActivationHandlers(h).onDeactivations.add(b,w)}addActivation(h,b,w){this._getModuleActivationHandlers(h).onActivations.add(b,w)}clone(){const h=new Tye;return this._map.forEach(((b,w)=>{h._map.set(w,{onActivations:b.onActivations.clone(),onDeactivations:b.onDeactivations.clone()})})),h}_getModuleActivationHandlers(h){let b=this._map.get(h);return b===void 0&&(b=this._getEmptyHandlersStore(),this._map.set(h,b)),b}_getEmptyHandlersStore(){return{onActivations:new j3,onDeactivations:new j3}}}class FX{id;parent;options;_middleware;_bindingDictionary;_activations;_deactivations;_snapshots;_metadataReader;_moduleActivationStore;constructor(h){const b=h||{};if(typeof b!="object")throw new Error("Invalid Container constructor argument. Container options must be an object.");if(b.defaultScope===void 0)b.defaultScope=nl.Transient;else if(b.defaultScope!==nl.Singleton&&b.defaultScope!==nl.Transient&&b.defaultScope!==nl.Request)throw new Error('Invalid Container option. Default scope must be a string ("singleton" or "transient").');if(b.autoBindInjectable===void 0)b.autoBindInjectable=!1;else if(typeof b.autoBindInjectable!="boolean")throw new Error("Invalid Container option. Auto bind injectable must be a boolean");if(b.skipBaseClassChecks===void 0)b.skipBaseClassChecks=!1;else if(typeof b.skipBaseClassChecks!="boolean")throw new Error("Invalid Container option. Skip base check must be a boolean");this.options={autoBindInjectable:b.autoBindInjectable,defaultScope:b.defaultScope,skipBaseClassChecks:b.skipBaseClassChecks},this.id=XL(),this._bindingDictionary=new j3,this._snapshots=[],this._middleware=null,this._activations=new j3,this._deactivations=new j3,this.parent=null,this._metadataReader=new nVt,this._moduleActivationStore=new Tye}static merge(h,b,...w){const m=new FX,P=[h,b,...w].map((E=>LX(E))),g=LX(m);return P.forEach((E=>{var C;C=g,E.traverse(((T,M)=>{M.forEach((_=>{C.add(_.serviceIdentifier,_.clone())}))}))})),m}load(...h){const b=this._getContainerModuleHelpersFactory();for(const w of h){const m=b(w.id);w.registry(m.bindFunction,m.unbindFunction,m.isboundFunction,m.rebindFunction,m.unbindAsyncFunction,m.onActivationFunction,m.onDeactivationFunction)}}async loadAsync(...h){const b=this._getContainerModuleHelpersFactory();for(const w of h){const m=b(w.id);await w.registry(m.bindFunction,m.unbindFunction,m.isboundFunction,m.rebindFunction,m.unbindAsyncFunction,m.onActivationFunction,m.onDeactivationFunction)}}unload(...h){h.forEach((b=>{const w=this._removeModuleBindings(b.id);this._deactivateSingletons(w),this._removeModuleHandlers(b.id)}))}async unloadAsync(...h){for(const b of h){const w=this._removeModuleBindings(b.id);await this._deactivateSingletonsAsync(w),this._removeModuleHandlers(b.id)}}bind(h){return this._bind(this._buildBinding(h))}rebind(h){return this.unbind(h),this.bind(h)}async rebindAsync(h){return await this.unbindAsync(h),this.bind(h)}unbind(h){if(this._bindingDictionary.hasKey(h)){const b=this._bindingDictionary.get(h);this._deactivateSingletons(b)}this._removeServiceFromDictionary(h)}async unbindAsync(h){if(this._bindingDictionary.hasKey(h)){const b=this._bindingDictionary.get(h);await this._deactivateSingletonsAsync(b)}this._removeServiceFromDictionary(h)}unbindAll(){this._bindingDictionary.traverse(((h,b)=>{this._deactivateSingletons(b)})),this._bindingDictionary=new j3}async unbindAllAsync(){const h=[];this._bindingDictionary.traverse(((b,w)=>{h.push(this._deactivateSingletonsAsync(w))})),await Promise.all(h),this._bindingDictionary=new j3}onActivation(h,b){this._activations.add(h,b)}onDeactivation(h,b){this._deactivations.add(h,b)}isBound(h){let b=this._bindingDictionary.hasKey(h);return!b&&this.parent&&(b=this.parent.isBound(h)),b}isCurrentBound(h){return this._bindingDictionary.hasKey(h)}isBoundNamed(h,b){return this.isBoundTagged(h,wm,b)}isBoundTagged(h,b,w){let m=!1;if(this._bindingDictionary.hasKey(h)){const P=this._bindingDictionary.get(h),g=(function(E,C,T){const M=wpt(C,T),_=oJ(M);if(_.kind===wg.unmanaged)throw new Error("Unexpected metadata when creating target");const I=new xX("",_,"Variable"),O=new bpt(E);return new JL(C,O,null,[],I)})(this,h,{customTag:{key:b,value:w},isMultiInject:!1});m=P.some((E=>E.constraint(g)))}return!m&&this.parent&&(m=this.parent.isBoundTagged(h,b,w)),m}snapshot(){this._snapshots.push(Iye.of(this._bindingDictionary.clone(),this._middleware,this._activations.clone(),this._deactivations.clone(),this._moduleActivationStore.clone()))}restore(){const h=this._snapshots.pop();if(h===void 0)throw new Error("No snapshot available to restore.");this._bindingDictionary=h.bindings,this._activations=h.activations,this._deactivations=h.deactivations,this._middleware=h.middleware,this._moduleActivationStore=h.moduleActivationStore}createChild(h){const b=new FX(h||this.options);return b.parent=this,b}applyMiddleware(...h){const b=this._middleware?this._middleware:this._planAndResolve();this._middleware=h.reduce(((w,m)=>m(w)),b)}applyCustomMetadataReader(h){this._metadataReader=h}get(h){const b=this._getNotAllArgs(h,!1,!1);return this._getButThrowIfAsync(b)}async getAsync(h){const b=this._getNotAllArgs(h,!1,!1);return this._get(b)}getTagged(h,b,w){const m=this._getNotAllArgs(h,!1,!1,b,w);return this._getButThrowIfAsync(m)}async getTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!1,!1,b,w);return this._get(m)}getNamed(h,b){return this.getTagged(h,wm,b)}async getNamedAsync(h,b){return this.getTaggedAsync(h,wm,b)}getAll(h,b){const w=this._getAllArgs(h,b,!1);return this._getButThrowIfAsync(w)}async getAllAsync(h,b){const w=this._getAllArgs(h,b,!1);return this._getAll(w)}getAllTagged(h,b,w){const m=this._getNotAllArgs(h,!0,!1,b,w);return this._getButThrowIfAsync(m)}async getAllTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!0,!1,b,w);return this._getAll(m)}getAllNamed(h,b){return this.getAllTagged(h,wm,b)}async getAllNamedAsync(h,b){return this.getAllTaggedAsync(h,wm,b)}resolve(h){const b=this.isBound(h);b||this.bind(h).toSelf();const w=this.get(h);return b||this.unbind(h),w}tryGet(h){const b=this._getNotAllArgs(h,!1,!0);return this._getButThrowIfAsync(b)}async tryGetAsync(h){const b=this._getNotAllArgs(h,!1,!0);return this._get(b)}tryGetTagged(h,b,w){const m=this._getNotAllArgs(h,!1,!0,b,w);return this._getButThrowIfAsync(m)}async tryGetTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!1,!0,b,w);return this._get(m)}tryGetNamed(h,b){return this.tryGetTagged(h,wm,b)}async tryGetNamedAsync(h,b){return this.tryGetTaggedAsync(h,wm,b)}tryGetAll(h,b){const w=this._getAllArgs(h,b,!0);return this._getButThrowIfAsync(w)}async tryGetAllAsync(h,b){const w=this._getAllArgs(h,b,!0);return this._getAll(w)}tryGetAllTagged(h,b,w){const m=this._getNotAllArgs(h,!0,!0,b,w);return this._getButThrowIfAsync(m)}async tryGetAllTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!0,!0,b,w);return this._getAll(m)}tryGetAllNamed(h,b){return this.tryGetAllTagged(h,wm,b)}async tryGetAllNamedAsync(h,b){return this.tryGetAllTaggedAsync(h,wm,b)}_preDestroy(h,b){if(h!==void 0&&Reflect.hasMetadata(jve,h)){const w=Reflect.getMetadata(jve,h);return b[w.value]?.()}}_removeModuleHandlers(h){const b=this._moduleActivationStore.remove(h);this._activations.removeIntersection(b.onActivations),this._deactivations.removeIntersection(b.onDeactivations)}_removeModuleBindings(h){return this._bindingDictionary.removeByCondition((b=>b.moduleId===h))}_deactivate(h,b){const w=b==null?void 0:Object.getPrototypeOf(b).constructor;try{if(this._deactivations.hasKey(h.serviceIdentifier)){const P=this._deactivateContainer(b,this._deactivations.get(h.serviceIdentifier).values());if(bg(P))return this._handleDeactivationError(P.then((async()=>this._propagateContainerDeactivationThenBindingAndPreDestroyAsync(h,b,w))),h.serviceIdentifier)}const m=this._propagateContainerDeactivationThenBindingAndPreDestroy(h,b,w);if(bg(m))return this._handleDeactivationError(m,h.serviceIdentifier)}catch(m){if(m instanceof Error)throw new Error(Ave(bS(h.serviceIdentifier),m.message))}}async _handleDeactivationError(h,b){try{await h}catch(w){if(w instanceof Error)throw new Error(Ave(bS(b),w.message))}}_deactivateContainer(h,b){let w=b.next();for(;typeof w.value=="function";){const m=w.value(h);if(bg(m))return m.then((async()=>this._deactivateContainerAsync(h,b)));w=b.next()}}async _deactivateContainerAsync(h,b){let w=b.next();for(;typeof w.value=="function";)await w.value(h),w=b.next()}_getContainerModuleHelpersFactory(){const h=C=>T=>{const M=this._buildBinding(T);return M.moduleId=C,this._bind(M)},b=()=>C=>{this.unbind(C)},w=()=>async C=>this.unbindAsync(C),m=()=>C=>this.isBound(C),P=C=>{const T=h(C);return M=>(this.unbind(M),T(M))},g=C=>(T,M)=>{this._moduleActivationStore.addActivation(C,T,M),this.onActivation(T,M)},E=C=>(T,M)=>{this._moduleActivationStore.addDeactivation(C,T,M),this.onDeactivation(T,M)};return C=>({bindFunction:h(C),isboundFunction:m(),onActivationFunction:g(C),onDeactivationFunction:E(C),rebindFunction:P(C),unbindAsyncFunction:w(),unbindFunction:b()})}_bind(h){return this._bindingDictionary.add(h.serviceIdentifier,h),new vVt(h)}_buildBinding(h){const b=this.options.defaultScope||nl.Transient;return new Mye(h,b)}async _getAll(h){return Promise.all(this._get(h))}_get(h){const b={...h,contextInterceptor:w=>w,targetType:upt.Variable};if(this._middleware){const w=this._middleware(b);if(w==null)throw new Error("Invalid return type in middleware. Middleware must return!");return w}return this._planAndResolve()(b)}_getButThrowIfAsync(h){const b=this._get(h);if(vpt(b))throw new Error(`You are attempting to construct ${(function(w){return typeof w=="function"?`[function/class ${w.name||""}]`:typeof w=="symbol"?w.toString():`'${w}'`})(h.serviceIdentifier)} in a synchronous way but it has asynchronous dependencies.`);return b}_getAllArgs(h,b,w){return{avoidConstraints:!b?.enforceBindingConstraints,isMultiInject:!0,isOptional:w,serviceIdentifier:h}}_getNotAllArgs(h,b,w,m,P){return{avoidConstraints:!1,isMultiInject:b,isOptional:w,key:m,serviceIdentifier:h,value:P}}_getPlanMetadataFromNextArgs(h){const b={isMultiInject:h.isMultiInject};return h.key!==void 0&&(b.customTag={key:h.key,value:h.value}),h.isOptional===!0&&(b.isOptional=!0),b}_planAndResolve(){return h=>{let b=rVt(this._metadataReader,this,h.targetType,h.serviceIdentifier,this._getPlanMetadataFromNextArgs(h),h.avoidConstraints);return b=h.contextInterceptor(b),(function(m){return Cye(m.plan.rootRequest.requestScope)(m.plan.rootRequest)})(b)}}_deactivateIfSingleton(h){if(h.activated)return bg(h.cache)?h.cache.then((b=>this._deactivate(h,b))):this._deactivate(h,h.cache)}_deactivateSingletons(h){for(const b of h)if(bg(this._deactivateIfSingleton(b)))throw new Error("Attempting to unbind dependency with asynchronous destruction (@preDestroy or onDeactivation)")}async _deactivateSingletonsAsync(h){await Promise.all(h.map((async b=>this._deactivateIfSingleton(b))))}_propagateContainerDeactivationThenBindingAndPreDestroy(h,b,w){return this.parent?this._deactivate.bind(this.parent)(h,b):this._bindingDeactivationAndPreDestroy(h,b,w)}async _propagateContainerDeactivationThenBindingAndPreDestroyAsync(h,b,w){this.parent?await this._deactivate.bind(this.parent)(h,b):await this._bindingDeactivationAndPreDestroyAsync(h,b,w)}_removeServiceFromDictionary(h){try{this._bindingDictionary.remove(h)}catch{throw new Error(`Could not unbind serviceIdentifier: ${bS(h)}`)}}_bindingDeactivationAndPreDestroy(h,b,w){if(typeof h.onDeactivation=="function"){const m=h.onDeactivation(b);if(bg(m))return m.then((()=>this._preDestroy(w,b)))}return this._preDestroy(w,b)}async _bindingDeactivationAndPreDestroyAsync(h,b,w){typeof h.onDeactivation=="function"&&await h.onDeactivation(b),await this._preDestroy(w,b)}}class xf{id;registry;constructor(h){this.id=XL(),this.registry=h}}function yVt(f,h,b,w){(function(m){if(m!==void 0)throw new Error(lpt)})(h),_pt(opt,f,b.toString(),w)}function _Vt(f){let h=[];if(Array.isArray(f)){h=f;const b=(function(w){const m=new Set;for(const P of w){if(m.has(P))return P;m.add(P)}})(h.map((w=>w.key)));if(b!==void 0)throw new Error(`${apt} ${b.toString()}`)}else h=[f];return h}function _pt(f,h,b,w){const m=_Vt(w);let P={};Reflect.hasOwnMetadata(f,h)&&(P=Reflect.getMetadata(f,h));let g=P[b];if(g===void 0)g=[];else for(const E of g)if(m.some((C=>C.key===E.key)))throw new Error(`${apt} ${E.key.toString()}`);g.push(...m),P[b]=g,Reflect.defineMetadata(f,P,h)}function Ept(f){return(h,b,w)=>{typeof w=="number"?yVt(h,b,w,f):(function(m,P,g){if(m.prototype!==void 0)throw new Error(lpt);_pt(cpt,m.constructor,P,g)})(h,b,f)}}function vr(){return function(f){if(Reflect.hasOwnMetadata(Mht,f))throw new Error("Cannot apply @injectable decorator multiple times.");const h=Reflect.getMetadata(spt,f)||[];return Reflect.defineMetadata(Mht,h,f),f}}function Spt(f){return h=>(b,w,m)=>{if(h===void 0){const P=typeof b=="function"?b.name:b.constructor.name;throw new Error(`@inject called with undefined this could mean that the class ${P} has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation.`)}Ept(new lA(f,h))(b,w,m)}}const Et=Spt(ipt);function EVt(){return Ept(new lA(npt,!0))}const cJ=Spt(rpt);var d3={},vM={},Nht;function jye(){if(Nht)return vM;Nht=1,Object.defineProperty(vM,"__esModule",{value:!0}),vM.isLabeledAction=vM.LabeledAction=void 0;class f{constructor(w,m,P){this.label=w,this.actions=m,this.icon=P}}vM.LabeledAction=f;function h(b){return b!==void 0&&b.label!==void 0&&b.actions!==void 0}return vM.isLabeledAction=h,vM}var Qv={},g3={},Hme={},TY={},Fht;function SVt(){if(Fht)return TY;Fht=1,Object.defineProperty(TY,"__esModule",{value:!0}),TY.stringifyServiceIdentifier=f;function f(h){switch(typeof h){case"string":case"symbol":return h.toString();case"function":return h.name;default:throw new Error(`Unexpected ${typeof h} service id type`)}}return TY}var zme={},Bht;function PVt(){return Bht||(Bht=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.LazyServiceIdentifier=f.islazyServiceIdentifierSymbol=void 0,f.islazyServiceIdentifierSymbol=Symbol.for("@inversifyjs/common/islazyServiceIdentifier");class h{[f.islazyServiceIdentifierSymbol];#e;constructor(w){this.#e=w,this[f.islazyServiceIdentifierSymbol]=!0}static is(w){return typeof w=="object"&&w!==null&&w[f.islazyServiceIdentifierSymbol]===!0}unwrap(){return this.#e()}}f.LazyServiceIdentifier=h})(zme)),zme}var $ht;function Ove(){return $ht||($ht=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.stringifyServiceIdentifier=f.LazyServiceIdentifier=void 0;const h=SVt();Object.defineProperty(f,"stringifyServiceIdentifier",{enumerable:!0,get:function(){return h.stringifyServiceIdentifier}});const b=PVt();Object.defineProperty(f,"LazyServiceIdentifier",{enumerable:!0,get:function(){return b.LazyServiceIdentifier}})})(Hme)),Hme}var Vme={},Kht;function Lf(){return Kht||(Kht=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.NON_CUSTOM_TAG_KEYS=f.PRE_DESTROY=f.POST_CONSTRUCT=f.DESIGN_PARAM_TYPES=f.PARAM_TYPES=f.TAGGED_PROP=f.TAGGED=f.MULTI_INJECT_TAG=f.INJECT_TAG=f.OPTIONAL_TAG=f.UNMANAGED_TAG=f.NAME_TAG=f.NAMED_TAG=void 0,f.NAMED_TAG="named",f.NAME_TAG="name",f.UNMANAGED_TAG="unmanaged",f.OPTIONAL_TAG="optional",f.INJECT_TAG="inject",f.MULTI_INJECT_TAG="multi_inject",f.TAGGED="inversify:tagged",f.TAGGED_PROP="inversify:tagged_props",f.PARAM_TYPES="inversify:paramtypes",f.DESIGN_PARAM_TYPES="design:paramtypes",f.POST_CONSTRUCT="post_construct",f.PRE_DESTROY="pre_destroy";function h(){return[f.INJECT_TAG,f.MULTI_INJECT_TAG,f.NAME_TAG,f.UNMANAGED_TAG,f.NAMED_TAG,f.OPTIONAL_TAG]}f.NON_CUSTOM_TAG_KEYS=h()})(Vme)),Vme}var rm={},Wx={},b3={},qht;function Py(){if(qht)return b3;qht=1,Object.defineProperty(b3,"__esModule",{value:!0}),b3.TargetTypeEnum=b3.BindingTypeEnum=b3.BindingScopeEnum=void 0;const f={Request:"Request",Singleton:"Singleton",Transient:"Transient"};b3.BindingScopeEnum=f;const h={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"};b3.BindingTypeEnum=h;const b={ClassProperty:"ClassProperty",ConstructorArgument:"ConstructorArgument",Variable:"Variable"};return b3.TargetTypeEnum=b,b3}var jY={},Hht;function vA(){if(Hht)return jY;Hht=1,Object.defineProperty(jY,"__esModule",{value:!0}),jY.id=h;let f=0;function h(){return f++}return jY}var zht;function MVt(){if(zht)return Wx;zht=1,Object.defineProperty(Wx,"__esModule",{value:!0}),Wx.Binding=void 0;const f=Py(),h=vA();class b{id;moduleId;activated;serviceIdentifier;implementationType;cache;dynamicValue;scope;type;factory;provider;constraint;onActivation;onDeactivation;constructor(m,P){this.id=(0,h.id)(),this.activated=!1,this.serviceIdentifier=m,this.scope=P,this.type=f.BindingTypeEnum.Invalid,this.constraint=g=>!0,this.implementationType=null,this.cache=null,this.factory=null,this.provider=null,this.onActivation=null,this.onDeactivation=null,this.dynamicValue=null}clone(){const m=new b(this.serviceIdentifier,this.scope);return m.activated=m.scope===f.BindingScopeEnum.Singleton?this.activated:!1,m.implementationType=this.implementationType,m.dynamicValue=this.dynamicValue,m.scope=this.scope,m.type=this.type,m.factory=this.factory,m.provider=this.provider,m.constraint=this.constraint,m.onActivation=this.onActivation,m.onDeactivation=this.onDeactivation,m.cache=this.cache,m}}return Wx.Binding=b,Wx}var Oi={},Vht;function vg(){if(Vht)return Oi;Vht=1,Object.defineProperty(Oi,"__esModule",{value:!0}),Oi.STACK_OVERFLOW=Oi.CIRCULAR_DEPENDENCY_IN_FACTORY=Oi.ON_DEACTIVATION_ERROR=Oi.PRE_DESTROY_ERROR=Oi.POST_CONSTRUCT_ERROR=Oi.ASYNC_UNBIND_REQUIRED=Oi.MULTIPLE_POST_CONSTRUCT_METHODS=Oi.MULTIPLE_PRE_DESTROY_METHODS=Oi.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK=Oi.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE=Oi.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE=Oi.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT=Oi.ARGUMENTS_LENGTH_MISMATCH=Oi.INVALID_DECORATOR_OPERATION=Oi.INVALID_TO_SELF_VALUE=Oi.LAZY_IN_SYNC=Oi.INVALID_FUNCTION_BINDING=Oi.INVALID_MIDDLEWARE_RETURN=Oi.NO_MORE_SNAPSHOTS_AVAILABLE=Oi.INVALID_BINDING_TYPE=Oi.CIRCULAR_DEPENDENCY=Oi.UNDEFINED_INJECT_ANNOTATION=Oi.TRYING_TO_RESOLVE_BINDINGS=Oi.NOT_REGISTERED=Oi.CANNOT_UNBIND=Oi.AMBIGUOUS_MATCH=Oi.KEY_NOT_FOUND=Oi.NULL_ARGUMENT=Oi.DUPLICATED_METADATA=Oi.DUPLICATED_INJECTABLE_DECORATOR=void 0,Oi.DUPLICATED_INJECTABLE_DECORATOR="Cannot apply @injectable decorator multiple times.",Oi.DUPLICATED_METADATA="Metadata key was used more than once in a parameter:",Oi.NULL_ARGUMENT="NULL argument",Oi.KEY_NOT_FOUND="Key Not Found",Oi.AMBIGUOUS_MATCH="Ambiguous match found for serviceIdentifier:",Oi.CANNOT_UNBIND="Could not unbind serviceIdentifier:",Oi.NOT_REGISTERED="No matching bindings found for serviceIdentifier:";const f=T=>`Trying to resolve bindings for "${T}"`;Oi.TRYING_TO_RESOLVE_BINDINGS=f;const h=T=>`@inject called with undefined this could mean that the class ${T} has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation.`;Oi.UNDEFINED_INJECT_ANNOTATION=h,Oi.CIRCULAR_DEPENDENCY="Circular dependency found:",Oi.INVALID_BINDING_TYPE="Invalid binding type:",Oi.NO_MORE_SNAPSHOTS_AVAILABLE="No snapshot available to restore.",Oi.INVALID_MIDDLEWARE_RETURN="Invalid return type in middleware. Middleware must return!",Oi.INVALID_FUNCTION_BINDING="Value provided to function binding must be a function!";const b=T=>`You are attempting to construct ${C(T)} in a synchronous way but it has asynchronous dependencies.`;Oi.LAZY_IN_SYNC=b,Oi.INVALID_TO_SELF_VALUE="The toSelf function can only be applied when a constructor is used as service identifier",Oi.INVALID_DECORATOR_OPERATION="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.";const w=T=>`The number of constructor arguments in the derived class ${T} must be >= than the number of constructor arguments of its base class.`;Oi.ARGUMENTS_LENGTH_MISMATCH=w,Oi.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT="Invalid Container constructor argument. Container options must be an object.",Oi.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE='Invalid Container option. Default scope must be a string ("singleton" or "transient").',Oi.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE="Invalid Container option. Auto bind injectable must be a boolean",Oi.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK="Invalid Container option. Skip base check must be a boolean",Oi.MULTIPLE_PRE_DESTROY_METHODS="Cannot apply @preDestroy decorator multiple times in the same class",Oi.MULTIPLE_POST_CONSTRUCT_METHODS="Cannot apply @postConstruct decorator multiple times in the same class",Oi.ASYNC_UNBIND_REQUIRED="Attempting to unbind dependency with asynchronous destruction (@preDestroy or onDeactivation)";const m=(T,M)=>`@postConstruct error in class ${T}: ${M}`;Oi.POST_CONSTRUCT_ERROR=m;const P=(T,M)=>`@preDestroy error in class ${T}: ${M}`;Oi.PRE_DESTROY_ERROR=P;const g=(T,M)=>`onDeactivation() error in class ${T}: ${M}`;Oi.ON_DEACTIVATION_ERROR=g;const E=(T,M)=>`It looks like there is a circular dependency in one of the '${T}' bindings. Please investigate bindings with service identifier '${M}'.`;Oi.CIRCULAR_DEPENDENCY_IN_FACTORY=E,Oi.STACK_OVERFLOW="Maximum call stack size exceeded";function C(T){return typeof T=="function"?`[function/class ${T.name||""}]`:typeof T=="symbol"?T.toString():`'${T}'`}return Oi}var om={},Ght;function Ppt(){if(Ght)return om;Ght=1;var f=om&&om.__createBinding||(Object.create?(function(P,g,E,C){C===void 0&&(C=E);var T=Object.getOwnPropertyDescriptor(g,E);(!T||("get"in T?!g.__esModule:T.writable||T.configurable))&&(T={enumerable:!0,get:function(){return g[E]}}),Object.defineProperty(P,C,T)}):(function(P,g,E,C){C===void 0&&(C=E),P[C]=g[E]})),h=om&&om.__setModuleDefault||(Object.create?(function(P,g){Object.defineProperty(P,"default",{enumerable:!0,value:g})}):function(P,g){P.default=g}),b=om&&om.__importStar||(function(){var P=function(g){return P=Object.getOwnPropertyNames||function(E){var C=[];for(var T in E)Object.prototype.hasOwnProperty.call(E,T)&&(C[C.length]=T);return C},P(g)};return function(g){if(g&&g.__esModule)return g;var E={};if(g!=null)for(var C=P(g),T=0;T0)throw new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,`Found unexpected missing metadata on type "${w.name}" at constructor indexes "${P.join('", "')}". - -Are you using @inject, @multiInject or @unmanaged decorators at those indexes? - -If you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}return RY}var xY={},Jx={},edt;function yA(){if(edt)return Jx;edt=1,Object.defineProperty(Jx,"__esModule",{value:!0}),Jx.ClassElementMetadataKind=void 0;var f;return(function(h){h[h.multipleInjection=0]="multipleInjection",h[h.singleInjection=1]="singleInjection",h[h.unmanaged=2]="unmanaged"})(f||(Jx.ClassElementMetadataKind=f={})),Jx}var tdt;function Ipt(){if(tdt)return xY;tdt=1,Object.defineProperty(xY,"__esModule",{value:!0}),xY.getClassElementMetadataFromNewable=h;const f=yA();function h(b){return{kind:f.ClassElementMetadataKind.singleInjection,name:void 0,optional:!1,tags:new Map,targetName:void 0,value:b}}return xY}var LY={},NY={},ndt;function Aye(){if(ndt)return NY;ndt=1,Object.defineProperty(NY,"__esModule",{value:!0}),NY.getClassElementMetadataFromLegacyMetadata=m;const f=sJ(),h=uJ(),b=xM(),w=yA();function m(g){const E=g.find(j=>j.key===b.INJECT_TAG),C=g.find(j=>j.key===b.MULTI_INJECT_TAG);if(g.find(j=>j.key===b.UNMANAGED_TAG)!==void 0)return P(E,C);if(C===void 0&&E===void 0)throw new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,"Expected @inject, @multiInject or @unmanaged metadata");const M=g.find(j=>j.key===b.NAMED_TAG),_=g.find(j=>j.key===b.OPTIONAL_TAG),I=g.find(j=>j.key===b.NAME_TAG);return{kind:E===void 0?w.ClassElementMetadataKind.multipleInjection:w.ClassElementMetadataKind.singleInjection,name:M?.value,optional:_!==void 0,tags:new Map(g.filter(j=>b.NON_CUSTOM_TAG_KEYS.every(k=>j.key!==k)).map(j=>[j.key,j.value])),targetName:I?.value,value:E===void 0?C?.value:E.value}}function P(g,E){if(E!==void 0||g!==void 0)throw new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,"Expected a single @inject, @multiInject or @unmanaged metadata");return{kind:w.ClassElementMetadataKind.unmanaged}}return NY}var idt;function Tpt(){if(idt)return LY;idt=1,Object.defineProperty(LY,"__esModule",{value:!0}),LY.getConstructorArgumentMetadataFromLegacyMetadata=w;const f=sJ(),h=uJ(),b=Aye();function w(m,P,g){try{return(0,b.getClassElementMetadataFromLegacyMetadata)(g)}catch(E){throw f.InversifyCoreError.isErrorOfKind(E,h.InversifyCoreErrorKind.missingInjectionDecorator)?new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,`Expected a single @inject, @multiInject or @unmanaged decorator at type "${m.name}" at constructor arguments at index "${P.toString()}"`,{cause:E}):E}}return LY}var rdt;function IVt(){if(rdt)return kY;rdt=1,Object.defineProperty(kY,"__esModule",{value:!0}),kY.getClassMetadataConstructorArguments=P;const f=QL(),h=xM(),b=Cpt(),w=Ipt(),m=Tpt();function P(g){const E=(0,f.getReflectMetadata)(g,h.DESIGN_PARAM_TYPES),C=(0,f.getReflectMetadata)(g,h.TAGGED),T=[];if(C!==void 0)for(const[M,_]of Object.entries(C)){const I=parseInt(M);T[I]=(0,m.getConstructorArgumentMetadataFromLegacyMetadata)(g,I,_)}if(E!==void 0){for(let M=0;MNumber.MIN_SAFE_INTEGER):(0,f.updateReflectMetadata)(Object,h,w,m=>m+1),w}return UY}var pdt;function Rpt(){if(pdt)return Qx;pdt=1,Object.defineProperty(Qx,"__esModule",{value:!0}),Qx.LegacyTargetImpl=void 0;const f=Ove(),h=AVt(),b=yA(),w=xM(),m=OVt(),P=DVt(),g=kVt();let E=class{#e;#n;#i;#t;#r;#o;constructor(T,M,_){this.#n=(0,g.getTargetId)(),this.#i=T,this.#t=void 0,this.#e=M,this.#r=new m.LegacyQueryableStringImpl(typeof T=="string"?T:(0,P.getDescription)(T)),this.#o=_}get id(){return this.#n}get identifier(){return this.#i}get metadata(){return this.#t===void 0&&(this.#t=(0,h.getLegacyMetadata)(this.#e)),this.#t}get name(){return this.#r}get type(){return this.#o}get serviceIdentifier(){return f.LazyServiceIdentifier.is(this.#e.value)?this.#e.value.unwrap():this.#e.value}getCustomTags(){return[...this.#e.tags.entries()].map(([T,M])=>({key:T,value:M}))}getNamedTag(){return this.#e.name===void 0?null:{key:w.NAMED_TAG,value:this.#e.name}}hasTag(T){return this.metadata.some(M=>M.key===T)}isArray(){return this.#e.kind===b.ClassElementMetadataKind.multipleInjection}isNamed(){return this.#e.name!==void 0}isOptional(){return this.#e.optional}isTagged(){return this.#e.tags.size>0}matchesArray(T){return this.isArray()&&this.#e.value===T}matchesNamedTag(T){return this.#e.name===T}matchesTag(T){return M=>this.metadata.some(_=>_.key===T&&_.value===M)}};return Qx.LegacyTargetImpl=E,Qx}var wdt;function RVt(){if(wdt)return HY;wdt=1,Object.defineProperty(HY,"__esModule",{value:!0}),HY.getTargetsFromMetadataProviders=w;const f=yA(),h=jVt(),b=Rpt();function w(m,P){return function(E){const C=m(E);let T=(0,h.getBaseType)(E);for(;T!==void 0&&T!==Object;){const _=P(T);for(const[I,O]of _)C.properties.has(I)||C.properties.set(I,O);T=(0,h.getBaseType)(T)}const M=[];for(const _ of C.constructorArguments)if(_.kind!==f.ClassElementMetadataKind.unmanaged){const I=_.targetName??"";M.push(new b.LegacyTargetImpl(I,_,"ConstructorArgument"))}for(const[_,I]of C.properties)if(I.kind!==f.ClassElementMetadataKind.unmanaged){const O=I.targetName??_;M.push(new b.LegacyTargetImpl(O,I,"ClassProperty"))}return M}}return HY}var mdt;function xVt(){if(mdt)return Yx;mdt=1,Object.defineProperty(Yx,"__esModule",{value:!0}),Yx.getTargets=void 0;const f=Opt(),h=kpt(),b=Apt(),w=Dpt(),m=RVt(),P=g=>{const E=g===void 0?f.getClassMetadata:T=>(0,h.getClassMetadataFromMetadataReader)(T,g),C=g===void 0?b.getClassMetadataProperties:T=>(0,w.getClassMetadataPropertiesFromMetadataReader)(T,g);return(0,m.getTargetsFromMetadataProviders)(E,C)};return Yx.getTargets=P,Yx}var vdt;function xpt(){return vdt||(vdt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.LegacyTargetImpl=f.getTargets=f.getClassMetadataFromMetadataReader=f.getClassMetadata=f.getClassElementMetadataFromLegacyMetadata=f.ClassElementMetadataKind=void 0;const h=xVt();Object.defineProperty(f,"getTargets",{enumerable:!0,get:function(){return h.getTargets}});const b=Rpt();Object.defineProperty(f,"LegacyTargetImpl",{enumerable:!0,get:function(){return b.LegacyTargetImpl}});const w=Aye();Object.defineProperty(f,"getClassElementMetadataFromLegacyMetadata",{enumerable:!0,get:function(){return w.getClassElementMetadataFromLegacyMetadata}});const m=Opt();Object.defineProperty(f,"getClassMetadata",{enumerable:!0,get:function(){return m.getClassMetadata}});const P=kpt();Object.defineProperty(f,"getClassMetadataFromMetadataReader",{enumerable:!0,get:function(){return P.getClassMetadataFromMetadataReader}});const g=yA();Object.defineProperty(f,"ClassElementMetadataKind",{enumerable:!0,get:function(){return g.ClassElementMetadataKind}})})(Gme)),Gme}var eL={},ydt;function LVt(){if(ydt)return eL;ydt=1,Object.defineProperty(eL,"__esModule",{value:!0}),eL.BindingCount=void 0;var f;return(function(h){h[h.MultipleBindingsAvailable=2]="MultipleBindingsAvailable",h[h.NoBindingsAvailable=0]="NoBindingsAvailable",h[h.OnlyOneBindingAvailable=1]="OnlyOneBindingAvailable"})(f||(eL.BindingCount=f={})),eL}var dp={},_dt;function Lpt(){if(_dt)return dp;_dt=1;var f=dp&&dp.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=dp&&dp.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=dp&&dp.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M{try{return g()}catch(C){throw m(C)?E():C}};return dp.tryAndThrowErrorIfStackOverflow=P,dp}var $d={},Edt;function ZL(){if(Edt)return $d;Edt=1;var f=$d&&$d.__createBinding||(Object.create?(function(O,j,k,x){x===void 0&&(x=k);var R=Object.getOwnPropertyDescriptor(j,k);(!R||("get"in R?!j.__esModule:R.writable||R.configurable))&&(R={enumerable:!0,get:function(){return j[k]}}),Object.defineProperty(O,x,R)}):(function(O,j,k,x){x===void 0&&(x=k),O[x]=j[k]})),h=$d&&$d.__setModuleDefault||(Object.create?(function(O,j){Object.defineProperty(O,"default",{enumerable:!0,value:j})}):function(O,j){O.default=j}),b=$d&&$d.__importStar||(function(){var O=function(j){return O=Object.getOwnPropertyNames||function(k){var x=[];for(var R in k)Object.prototype.hasOwnProperty.call(k,R)&&(x[x.length]=R);return x},O(j)};return function(j){if(j&&j.__esModule)return j;var k={};if(j!=null)for(var x=O(j),R=0;R{let F="Object";H.implementationType!==null&&(F=M(H.implementationType)),x=`${x} - ${F}`,H.constraint.metaData&&(x=`${x} - ${H.constraint.metaData}`)})),x}function g(O,j){return O.parentRequest===null?!1:O.parentRequest.serviceIdentifier===j?!0:g(O.parentRequest,j)}function E(O){function j(x,R=[]){const H=m(x.serviceIdentifier);return R.push(H),x.parentRequest!==null?j(x.parentRequest,R):R}return j(O).reverse().join(" --> ")}function C(O){O.childRequests.forEach(j=>{if(g(O,j.serviceIdentifier)){const k=E(j);throw new Error(`${w.CIRCULAR_DEPENDENCY} ${k}`)}else C(j)})}function T(O,j){if(j.isTagged()||j.isNamed()){let k="";const x=j.getNamedTag(),R=j.getCustomTags();return x!==null&&(k+=I(x)+` -`),R!==null&&R.forEach(H=>{k+=I(H)+` -`}),` ${O} - ${O} - ${k}`}else return` ${O}`}function M(O){if(O.name!=null&&O.name!=="")return O.name;{const j=O.toString(),k=j.match(/^function\s*([^\s(]+)/);return k===null?`Anonymous function: ${j}`:k[1]}}function _(O){return O.toString().slice(7,-1)}function I(O){return`{"key":"${O.key.toString()}","value":"${O.value.toString()}"}`}return $d}var tL={},Sdt;function NVt(){if(Sdt)return tL;Sdt=1,Object.defineProperty(tL,"__esModule",{value:!0}),tL.Context=void 0;const f=vA();class h{id;container;plan;currentRequest;constructor(w){this.id=(0,f.id)(),this.container=w}addPlan(w){this.plan=w}setCurrentRequest(w){this.currentRequest=w}}return tL.Context=h,tL}var cm={},Pdt;function K3(){if(Pdt)return cm;Pdt=1;var f=cm&&cm.__createBinding||(Object.create?(function(P,g,E,C){C===void 0&&(C=E);var T=Object.getOwnPropertyDescriptor(g,E);(!T||("get"in T?!g.__esModule:T.writable||T.configurable))&&(T={enumerable:!0,get:function(){return g[E]}}),Object.defineProperty(P,C,T)}):(function(P,g,E,C){C===void 0&&(C=E),P[C]=g[E]})),h=cm&&cm.__setModuleDefault||(Object.create?(function(P,g){Object.defineProperty(P,"default",{enumerable:!0,value:g})}):function(P,g){P.default=g}),b=cm&&cm.__importStar||(function(){var P=function(g){return P=Object.getOwnPropertyNames||function(E){var C=[];for(var T in E)Object.prototype.hasOwnProperty.call(E,T)&&(C[C.length]=T);return C},P(g)};return function(g){if(g&&g.__esModule)return g;var E={};if(g!=null)for(var C=P(g),T=0;TR.metadata.filter(H=>H.key===P.UNMANAGED_TAG)),k=[].concat.apply([],j).length,x=O.length-k;return x>0?x:T(M,I)}})(p3)),p3}var iL={},Tdt;function KVt(){if(Tdt)return iL;Tdt=1,Object.defineProperty(iL,"__esModule",{value:!0}),iL.Request=void 0;const f=vA();class h{id;serviceIdentifier;parentContext;parentRequest;bindings;childRequests;target;requestScope;constructor(w,m,P,g,E){this.id=(0,f.id)(),this.serviceIdentifier=w,this.parentContext=m,this.parentRequest=P,this.target=E,this.childRequests=[],this.bindings=Array.isArray(g)?g:[g],this.requestScope=P===null?new Map:null}addChildRequest(w,m,P){const g=new h(w,this.parentContext,this,m,P);return this.childRequests.push(g),g}}return iL.Request=h,iL}var jdt;function Npt(){if(jdt)return hp;jdt=1;var f=hp&&hp.__createBinding||(Object.create?(function(ce,J,te,fe){fe===void 0&&(fe=te);var ve=Object.getOwnPropertyDescriptor(J,te);(!ve||("get"in ve?!J.__esModule:ve.writable||ve.configurable))&&(ve={enumerable:!0,get:function(){return J[te]}}),Object.defineProperty(ce,fe,ve)}):(function(ce,J,te,fe){fe===void 0&&(fe=te),ce[fe]=J[te]})),h=hp&&hp.__setModuleDefault||(Object.create?(function(ce,J){Object.defineProperty(ce,"default",{enumerable:!0,value:J})}):function(ce,J){ce.default=J}),b=hp&&hp.__importStar||(function(){var ce=function(J){return ce=Object.getOwnPropertyNames||function(te){var fe=[];for(var ve in te)Object.prototype.hasOwnProperty.call(te,ve)&&(fe[fe.length]=ve);return fe},ce(J)};return function(J){if(J&&J.__esModule)return J;var te={};if(J!=null)for(var fe=ce(J),ve=0;ve{const De=new j.Request(tt.serviceIdentifier,te,fe,tt,ve);return tt.constraint(De)}),F(ve.serviceIdentifier,ke,fe,ve,te.container),ke}function H(ce,J){const te=J.isMultiInject?E.MULTI_INJECT_TAG:E.INJECT_TAG,fe=[new _.Metadata(te,ce)];return J.customTag!==void 0&&fe.push(new _.Metadata(J.customTag.key,J.customTag.value)),J.isOptional===!0&&fe.push(new _.Metadata(E.OPTIONAL_TAG,!0)),fe}function F(ce,J,te,fe,ve){switch(J.length){case m.BindingCount.NoBindingsAvailable:if(fe.isOptional())return J;{const me=(0,T.getServiceIdentifierAsString)(ce);let ke=P.NOT_REGISTERED;throw ke+=(0,T.listMetadataForTarget)(me,fe),ke+=(0,T.listRegisteredBindingsForServiceIdentifier)(ve,me,W),te!==null&&(ke+=` -${P.TRYING_TO_RESOLVE_BINDINGS((0,T.getServiceIdentifierAsString)(te.serviceIdentifier))}`),new Error(ke)}case m.BindingCount.OnlyOneBindingAvailable:return J;case m.BindingCount.MultipleBindingsAvailable:default:if(fe.isArray())return J;{const me=(0,T.getServiceIdentifierAsString)(ce);let ke=`${P.AMBIGUOUS_MATCH} ${me}`;throw ke+=(0,T.listRegisteredBindingsForServiceIdentifier)(ve,me,W),new Error(ke)}}}function $(ce,J,te,fe,ve,me){let ke,tt;if(ve===null){ke=R(ce,J,fe,null,me),tt=new j.Request(te,fe,null,ke,me);const De=new I.Plan(fe,tt);fe.addPlan(De)}else ke=R(ce,J,fe,ve,me),tt=ve.addChildRequest(me.serviceIdentifier,ke,me);ke.forEach(De=>{let ct=null;if(me.isArray())ct=tt.addChildRequest(De.serviceIdentifier,De,me);else{if(De.cache!==null)return;ct=tt}if(De.type===g.BindingTypeEnum.Instance&&De.implementationType!==null){const Z=(0,O.getDependencies)(ce,De.implementationType);if(fe.container.options.skipBaseClassChecks!==!0){const Nt=(0,O.getBaseClassDependencyCount)(ce,De.implementationType);if(Z.length{$(ce,!1,Nt.serviceIdentifier,fe,ct,Nt)})}})}function W(ce,J){let te=[];const fe=k(ce);return fe.hasKey(J)?te=fe.get(J):ce.parent!==null&&(te=W(ce.parent,J)),te}function re(ce,J,te,fe,ve,me=!1){const ke=new M.Context(J),tt=x(te,fe,ve);try{return $(ce,me,fe,ke,null,tt),ke}catch(De){throw(0,C.isStackOverflowException)(De)&&(0,T.circularDependencyToException)(ke.plan.rootRequest),De}}function ae(ce,J,te){const fe=H(J,te),ve=(0,w.getClassElementMetadataFromLegacyMetadata)(fe);if(ve.kind===w.ClassElementMetadataKind.unmanaged)throw new Error("Unexpected metadata when creating target");const me=new w.LegacyTargetImpl("",ve,"Variable"),ke=new M.Context(ce);return new j.Request(J,ke,null,[],me)}return hp}var Zv={},yM={},rL={},Adt;function aJ(){if(Adt)return rL;Adt=1,Object.defineProperty(rL,"__esModule",{value:!0}),rL.isPromise=f,rL.isPromiseOrContainsPromise=h;function f(b){return(typeof b=="object"&&b!==null||typeof b=="function")&&typeof b.then=="function"}function h(b){return f(b)?!0:Array.isArray(b)&&b.some(f)}return rL}var Odt;function qVt(){if(Odt)return yM;Odt=1,Object.defineProperty(yM,"__esModule",{value:!0}),yM.saveToScope=yM.tryGetFromScope=void 0;const f=Py(),h=aJ(),b=(E,C)=>C.scope===f.BindingScopeEnum.Singleton&&C.activated?C.cache:C.scope===f.BindingScopeEnum.Request&&E.has(C.id)?E.get(C.id):null;yM.tryGetFromScope=b;const w=(E,C,T)=>{C.scope===f.BindingScopeEnum.Singleton&&P(C,T),C.scope===f.BindingScopeEnum.Request&&m(E,C,T)};yM.saveToScope=w;const m=(E,C,T)=>{E.has(C.id)||E.set(C.id,T)},P=(E,C)=>{E.cache=C,E.activated=!0,(0,h.isPromise)(C)&&g(E,C)},g=async(E,C)=>{try{const T=await C;E.cache=T}catch(T){throw E.cache=null,E.activated=!1,T}};return yM}var Kd={},oL={},Ddt;function HVt(){if(Ddt)return oL;Ddt=1,Object.defineProperty(oL,"__esModule",{value:!0}),oL.FactoryType=void 0;var f;return(function(h){h.DynamicValue="toDynamicValue",h.Factory="toFactory",h.Provider="toProvider"})(f||(oL.FactoryType=f={})),oL}var kdt;function Fpt(){if(kdt)return Kd;kdt=1;var f=Kd&&Kd.__createBinding||(Object.create?(function(M,_,I,O){O===void 0&&(O=I);var j=Object.getOwnPropertyDescriptor(_,I);(!j||("get"in j?!_.__esModule:j.writable||j.configurable))&&(j={enumerable:!0,get:function(){return _[I]}}),Object.defineProperty(M,O,j)}):(function(M,_,I,O){O===void 0&&(O=I),M[O]=_[I]})),h=Kd&&Kd.__setModuleDefault||(Object.create?(function(M,_){Object.defineProperty(M,"default",{enumerable:!0,value:_})}):function(M,_){M.default=_}),b=Kd&&Kd.__importStar||(function(){var M=function(_){return M=Object.getOwnPropertyNames||function(I){var O=[];for(var j in I)Object.prototype.hasOwnProperty.call(I,j)&&(O[O.length]=j);return O},M(_)};return function(_){if(_&&_.__esModule)return _;var I={};if(_!=null)for(var O=M(_),j=0;j_=>(...I)=>{I.forEach(O=>{M.bind(O).toService(_)})};Kd.multiBindToService=E;const C=M=>{let _=null;switch(M.type){case m.BindingTypeEnum.ConstantValue:case m.BindingTypeEnum.Function:_=M.cache;break;case m.BindingTypeEnum.Constructor:case m.BindingTypeEnum.Instance:_=M.implementationType;break;case m.BindingTypeEnum.DynamicValue:_=M.dynamicValue;break;case m.BindingTypeEnum.Provider:_=M.provider;break;case m.BindingTypeEnum.Factory:_=M.factory;break}if(_===null){const I=(0,P.getServiceIdentifierAsString)(M.serviceIdentifier);throw new Error(`${w.INVALID_BINDING_TYPE} ${I}`)}};Kd.ensureFullyBound=C;const T=M=>{switch(M.type){case m.BindingTypeEnum.Factory:return{factory:M.factory,factoryType:g.FactoryType.Factory};case m.BindingTypeEnum.Provider:return{factory:M.provider,factoryType:g.FactoryType.Provider};case m.BindingTypeEnum.DynamicValue:return{factory:M.dynamicValue,factoryType:g.FactoryType.DynamicValue};default:throw new Error(`Unexpected factory type ${M.type}`)}};return Kd.getFactoryDetails=T,Kd}var ey={},Rdt;function zVt(){if(Rdt)return ey;Rdt=1;var f=ey&&ey.__createBinding||(Object.create?(function(R,H,F,$){$===void 0&&($=F);var W=Object.getOwnPropertyDescriptor(H,F);(!W||("get"in W?!H.__esModule:W.writable||W.configurable))&&(W={enumerable:!0,get:function(){return H[F]}}),Object.defineProperty(R,$,W)}):(function(R,H,F,$){$===void 0&&($=F),R[$]=H[F]})),h=ey&&ey.__setModuleDefault||(Object.create?(function(R,H){Object.defineProperty(R,"default",{enumerable:!0,value:H})}):function(R,H){R.default=H}),b=ey&&ey.__importStar||(function(){var R=function(H){return R=Object.getOwnPropertyNames||function(F){var $=[];for(var W in F)Object.prototype.hasOwnProperty.call(F,W)&&($[$.length]=W);return $},R(H)};return function(H){if(H&&H.__esModule)return H;var F={};if(H!=null)for(var $=R(H),W=0;W<$.length;W++)$[W]!=="default"&&f(F,H,$[W]);return h(F,H),F}})();Object.defineProperty(ey,"__esModule",{value:!0}),ey.resolveInstance=x;const w=vg(),m=Py(),P=b(Lf()),g=aJ();function E(R,H){return R.reduce((F,$)=>{const W=H($);return $.target.type===m.TargetTypeEnum.ConstructorArgument?F.constructorInjections.push(W):(F.propertyRequests.push($),F.propertyInjections.push(W)),F.isAsync||(F.isAsync=(0,g.isPromiseOrContainsPromise)(W)),F},{constructorInjections:[],isAsync:!1,propertyInjections:[],propertyRequests:[]})}function C(R,H,F){let $;if(H.length>0){const W=E(H,F),re={...W,constr:R};W.isAsync?$=M(re):$=T(re)}else $=new R;return $}function T(R){const H=new R.constr(...R.constructorInjections);return R.propertyRequests.forEach((F,$)=>{const W=F.target.identifier,re=R.propertyInjections[$];(!F.target.isOptional()||re!==void 0)&&(H[W]=re)}),H}async function M(R){const H=await _(R.constructorInjections),F=await _(R.propertyInjections);return T({...R,constructorInjections:H,propertyInjections:F})}async function _(R){const H=[];for(const F of R)Array.isArray(F)?H.push(Promise.all(F)):H.push(F);return Promise.all(H)}function I(R,H){const F=O(R,H);return(0,g.isPromise)(F)?F.then(()=>H):H}function O(R,H){if(Reflect.hasMetadata(P.POST_CONSTRUCT,R)){const F=Reflect.getMetadata(P.POST_CONSTRUCT,R);try{return H[F.value]?.()}catch($){if($ instanceof Error)throw new Error((0,w.POST_CONSTRUCT_ERROR)(R.name,$.message))}}}function j(R,H){R.scope!==m.BindingScopeEnum.Singleton&&k(R,H)}function k(R,H){const F=`Class cannot be instantiated in ${R.scope===m.BindingScopeEnum.Request?"request":"transient"} scope.`;if(typeof R.onDeactivation=="function")throw new Error((0,w.ON_DEACTIVATION_ERROR)(H.name,F));if(Reflect.hasMetadata(P.PRE_DESTROY,H))throw new Error((0,w.PRE_DESTROY_ERROR)(H.name,F))}function x(R,H,F,$){j(R,H);const W=C(H,F,$);return(0,g.isPromise)(W)?W.then(re=>I(H,re)):I(H,W)}return ey}var xdt;function VVt(){if(xdt)return Zv;xdt=1;var f=Zv&&Zv.__createBinding||(Object.create?(function(ae,ce,J,te){te===void 0&&(te=J);var fe=Object.getOwnPropertyDescriptor(ce,J);(!fe||("get"in fe?!ce.__esModule:fe.writable||fe.configurable))&&(fe={enumerable:!0,get:function(){return ce[J]}}),Object.defineProperty(ae,te,fe)}):(function(ae,ce,J,te){te===void 0&&(te=J),ae[te]=ce[J]})),h=Zv&&Zv.__setModuleDefault||(Object.create?(function(ae,ce){Object.defineProperty(ae,"default",{enumerable:!0,value:ce})}):function(ae,ce){ae.default=ce}),b=Zv&&Zv.__importStar||(function(){var ae=function(ce){return ae=Object.getOwnPropertyNames||function(J){var te=[];for(var fe in J)Object.prototype.hasOwnProperty.call(J,fe)&&(te[te.length]=fe);return te},ae(ce)};return function(ce){if(ce&&ce.__esModule)return ce;var J={};if(ce!=null)for(var te=ae(ce),fe=0;fece=>{ce.parentContext.setCurrentRequest(ce);const J=ce.bindings,te=ce.childRequests,fe=ce.target&&ce.target.isArray(),ve=!ce.parentRequest||!ce.parentRequest.target||!ce.target||!ce.parentRequest.target.matchesArray(ce.target.serviceIdentifier);if(fe&&ve)return te.map(me=>_(ae)(me));{if(ce.target.isOptional()&&J.length===0)return;const me=J[0];return k(ae,ce,me)}},I=(ae,ce)=>{const J=(0,C.getFactoryDetails)(ae);return(0,T.tryAndThrowErrorIfStackOverflow)(()=>J.factory.bind(ae)(ce),()=>new Error(w.CIRCULAR_DEPENDENCY_IN_FACTORY(J.factoryType,ce.currentRequest.serviceIdentifier.toString())))},O=(ae,ce,J)=>{let te;const fe=ce.childRequests;switch((0,C.ensureFullyBound)(J),J.type){case m.BindingTypeEnum.ConstantValue:case m.BindingTypeEnum.Function:te=J.cache;break;case m.BindingTypeEnum.Constructor:te=J.implementationType;break;case m.BindingTypeEnum.Instance:te=(0,M.resolveInstance)(J,J.implementationType,fe,_(ae));break;default:te=I(J,ce.parentContext)}return te},j=(ae,ce,J)=>{let te=(0,g.tryGetFromScope)(ae,ce);return te!==null||(te=J(),(0,g.saveToScope)(ae,ce,te)),te},k=(ae,ce,J)=>j(ae,J,()=>{let te=O(ae,ce,J);return(0,E.isPromise)(te)?te=te.then(fe=>x(ce,J,fe)):te=x(ce,J,te),te});function x(ae,ce,J){let te=R(ae.parentContext,ce,J);const fe=W(ae.parentContext.container);let ve,me=fe.next();do{ve=me.value;const ke=ae.parentContext,tt=ae.serviceIdentifier,De=$(ve,tt);(0,E.isPromise)(te)?te=F(De,ke,te):te=H(De,ke,te),me=fe.next()}while(me.done!==!0&&!(0,P.getBindingDictionary)(ve).hasKey(ae.serviceIdentifier));return te}const R=(ae,ce,J)=>{let te;return typeof ce.onActivation=="function"?te=ce.onActivation(ae,J):te=J,te},H=(ae,ce,J)=>{let te=ae.next();for(;te.done!==!0;){if(J=te.value(ce,J),(0,E.isPromise)(J))return F(ae,ce,J);te=ae.next()}return J},F=async(ae,ce,J)=>{let te=await J,fe=ae.next();for(;fe.done!==!0;)te=await fe.value(ce,te),fe=ae.next();return te},$=(ae,ce)=>{const J=ae._activations;return J.hasKey(ce)?J.get(ce).values():[].values()},W=ae=>{const ce=[ae];let J=ae.parent;for(;J!==null;)ce.push(J),J=J.parent;return{next:()=>{const ve=ce.pop();return ve!==void 0?{done:!1,value:ve}:{done:!0,value:void 0}}}};function re(ae){return _(ae.plan.rootRequest.requestScope)(ae.plan.rootRequest)}return Zv}var sm={},cL={},sL={},uL={},aL={},lL={},uh={},Ldt;function Bpt(){if(Ldt)return uh;Ldt=1;var f=uh&&uh.__createBinding||(Object.create?(function(T,M,_,I){I===void 0&&(I=_);var O=Object.getOwnPropertyDescriptor(M,_);(!O||("get"in O?!M.__esModule:O.writable||O.configurable))&&(O={enumerable:!0,get:function(){return M[_]}}),Object.defineProperty(T,I,O)}):(function(T,M,_,I){I===void 0&&(I=_),T[I]=M[_]})),h=uh&&uh.__setModuleDefault||(Object.create?(function(T,M){Object.defineProperty(T,"default",{enumerable:!0,value:M})}):function(T,M){T.default=M}),b=uh&&uh.__importStar||(function(){var T=function(M){return T=Object.getOwnPropertyNames||function(_){var I=[];for(var O in _)Object.prototype.hasOwnProperty.call(_,O)&&(I[I.length]=O);return I},T(M)};return function(M){if(M&&M.__esModule)return M;var _={};if(M!=null)for(var I=T(M),O=0;O{const _=T.parentRequest;return _!==null?M(_)?!0:P(_,M):!1};uh.traverseAncerstors=P;const g=T=>M=>{const _=I=>I!==null&&I.target!==null&&I.target.matchesTag(T)(M);return _.metaData=new m.Metadata(T,M),_};uh.taggedConstraint=g;const E=g(w.NAMED_TAG);uh.namedConstraint=E;const C=T=>M=>{let _=null;if(M!==null){if(_=M.bindings[0],typeof T=="string")return _.serviceIdentifier===T;{const I=M.bindings[0].implementationType;return T===I}}return!1};return uh.typeConstraint=C,uh}var Ndt;function Oye(){if(Ndt)return lL;Ndt=1,Object.defineProperty(lL,"__esModule",{value:!0}),lL.BindingWhenSyntax=void 0;const f=Dye(),h=Bpt();class b{_binding;constructor(m){this._binding=m}when(m){return this._binding.constraint=m,new f.BindingOnSyntax(this._binding)}whenTargetNamed(m){return this._binding.constraint=(0,h.namedConstraint)(m),new f.BindingOnSyntax(this._binding)}whenTargetIsDefault(){return this._binding.constraint=m=>m===null?!1:m.target!==null&&!m.target.isNamed()&&!m.target.isTagged(),new f.BindingOnSyntax(this._binding)}whenTargetTagged(m,P){return this._binding.constraint=(0,h.taggedConstraint)(m)(P),new f.BindingOnSyntax(this._binding)}whenInjectedInto(m){return this._binding.constraint=P=>P!==null&&(0,h.typeConstraint)(m)(P.parentRequest),new f.BindingOnSyntax(this._binding)}whenParentNamed(m){return this._binding.constraint=P=>P!==null&&(0,h.namedConstraint)(m)(P.parentRequest),new f.BindingOnSyntax(this._binding)}whenParentTagged(m,P){return this._binding.constraint=g=>g!==null&&(0,h.taggedConstraint)(m)(P)(g.parentRequest),new f.BindingOnSyntax(this._binding)}whenAnyAncestorIs(m){return this._binding.constraint=P=>P!==null&&(0,h.traverseAncerstors)(P,(0,h.typeConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenNoAncestorIs(m){return this._binding.constraint=P=>P!==null&&!(0,h.traverseAncerstors)(P,(0,h.typeConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenAnyAncestorNamed(m){return this._binding.constraint=P=>P!==null&&(0,h.traverseAncerstors)(P,(0,h.namedConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenNoAncestorNamed(m){return this._binding.constraint=P=>P!==null&&!(0,h.traverseAncerstors)(P,(0,h.namedConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenAnyAncestorTagged(m,P){return this._binding.constraint=g=>g!==null&&(0,h.traverseAncerstors)(g,(0,h.taggedConstraint)(m)(P)),new f.BindingOnSyntax(this._binding)}whenNoAncestorTagged(m,P){return this._binding.constraint=g=>g!==null&&!(0,h.traverseAncerstors)(g,(0,h.taggedConstraint)(m)(P)),new f.BindingOnSyntax(this._binding)}whenAnyAncestorMatches(m){return this._binding.constraint=P=>P!==null&&(0,h.traverseAncerstors)(P,m),new f.BindingOnSyntax(this._binding)}whenNoAncestorMatches(m){return this._binding.constraint=P=>P!==null&&!(0,h.traverseAncerstors)(P,m),new f.BindingOnSyntax(this._binding)}}return lL.BindingWhenSyntax=b,lL}var Fdt;function Dye(){if(Fdt)return aL;Fdt=1,Object.defineProperty(aL,"__esModule",{value:!0}),aL.BindingOnSyntax=void 0;const f=Oye();class h{_binding;constructor(w){this._binding=w}onActivation(w){return this._binding.onActivation=w,new f.BindingWhenSyntax(this._binding)}onDeactivation(w){return this._binding.onDeactivation=w,new f.BindingWhenSyntax(this._binding)}}return aL.BindingOnSyntax=h,aL}var Bdt;function $pt(){if(Bdt)return uL;Bdt=1,Object.defineProperty(uL,"__esModule",{value:!0}),uL.BindingWhenOnSyntax=void 0;const f=Dye(),h=Oye();class b{_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(m){this._binding=m,this._bindingWhenSyntax=new h.BindingWhenSyntax(this._binding),this._bindingOnSyntax=new f.BindingOnSyntax(this._binding)}when(m){return this._bindingWhenSyntax.when(m)}whenTargetNamed(m){return this._bindingWhenSyntax.whenTargetNamed(m)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(m,P){return this._bindingWhenSyntax.whenTargetTagged(m,P)}whenInjectedInto(m){return this._bindingWhenSyntax.whenInjectedInto(m)}whenParentNamed(m){return this._bindingWhenSyntax.whenParentNamed(m)}whenParentTagged(m,P){return this._bindingWhenSyntax.whenParentTagged(m,P)}whenAnyAncestorIs(m){return this._bindingWhenSyntax.whenAnyAncestorIs(m)}whenNoAncestorIs(m){return this._bindingWhenSyntax.whenNoAncestorIs(m)}whenAnyAncestorNamed(m){return this._bindingWhenSyntax.whenAnyAncestorNamed(m)}whenAnyAncestorTagged(m,P){return this._bindingWhenSyntax.whenAnyAncestorTagged(m,P)}whenNoAncestorNamed(m){return this._bindingWhenSyntax.whenNoAncestorNamed(m)}whenNoAncestorTagged(m,P){return this._bindingWhenSyntax.whenNoAncestorTagged(m,P)}whenAnyAncestorMatches(m){return this._bindingWhenSyntax.whenAnyAncestorMatches(m)}whenNoAncestorMatches(m){return this._bindingWhenSyntax.whenNoAncestorMatches(m)}onActivation(m){return this._bindingOnSyntax.onActivation(m)}onDeactivation(m){return this._bindingOnSyntax.onDeactivation(m)}}return uL.BindingWhenOnSyntax=b,uL}var $dt;function GVt(){if($dt)return sL;$dt=1,Object.defineProperty(sL,"__esModule",{value:!0}),sL.BindingInSyntax=void 0;const f=Py(),h=$pt();class b{_binding;constructor(m){this._binding=m}inRequestScope(){return this._binding.scope=f.BindingScopeEnum.Request,new h.BindingWhenOnSyntax(this._binding)}inSingletonScope(){return this._binding.scope=f.BindingScopeEnum.Singleton,new h.BindingWhenOnSyntax(this._binding)}inTransientScope(){return this._binding.scope=f.BindingScopeEnum.Transient,new h.BindingWhenOnSyntax(this._binding)}}return sL.BindingInSyntax=b,sL}var Kdt;function UVt(){if(Kdt)return cL;Kdt=1,Object.defineProperty(cL,"__esModule",{value:!0}),cL.BindingInWhenOnSyntax=void 0;const f=GVt(),h=Dye(),b=Oye();class w{_bindingInSyntax;_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(P){this._binding=P,this._bindingWhenSyntax=new b.BindingWhenSyntax(this._binding),this._bindingOnSyntax=new h.BindingOnSyntax(this._binding),this._bindingInSyntax=new f.BindingInSyntax(P)}inRequestScope(){return this._bindingInSyntax.inRequestScope()}inSingletonScope(){return this._bindingInSyntax.inSingletonScope()}inTransientScope(){return this._bindingInSyntax.inTransientScope()}when(P){return this._bindingWhenSyntax.when(P)}whenTargetNamed(P){return this._bindingWhenSyntax.whenTargetNamed(P)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(P,g){return this._bindingWhenSyntax.whenTargetTagged(P,g)}whenInjectedInto(P){return this._bindingWhenSyntax.whenInjectedInto(P)}whenParentNamed(P){return this._bindingWhenSyntax.whenParentNamed(P)}whenParentTagged(P,g){return this._bindingWhenSyntax.whenParentTagged(P,g)}whenAnyAncestorIs(P){return this._bindingWhenSyntax.whenAnyAncestorIs(P)}whenNoAncestorIs(P){return this._bindingWhenSyntax.whenNoAncestorIs(P)}whenAnyAncestorNamed(P){return this._bindingWhenSyntax.whenAnyAncestorNamed(P)}whenAnyAncestorTagged(P,g){return this._bindingWhenSyntax.whenAnyAncestorTagged(P,g)}whenNoAncestorNamed(P){return this._bindingWhenSyntax.whenNoAncestorNamed(P)}whenNoAncestorTagged(P,g){return this._bindingWhenSyntax.whenNoAncestorTagged(P,g)}whenAnyAncestorMatches(P){return this._bindingWhenSyntax.whenAnyAncestorMatches(P)}whenNoAncestorMatches(P){return this._bindingWhenSyntax.whenNoAncestorMatches(P)}onActivation(P){return this._bindingOnSyntax.onActivation(P)}onDeactivation(P){return this._bindingOnSyntax.onDeactivation(P)}}return cL.BindingInWhenOnSyntax=w,cL}var qdt;function WVt(){if(qdt)return sm;qdt=1;var f=sm&&sm.__createBinding||(Object.create?(function(C,T,M,_){_===void 0&&(_=M);var I=Object.getOwnPropertyDescriptor(T,M);(!I||("get"in I?!T.__esModule:I.writable||I.configurable))&&(I={enumerable:!0,get:function(){return T[M]}}),Object.defineProperty(C,_,I)}):(function(C,T,M,_){_===void 0&&(_=M),C[_]=T[M]})),h=sm&&sm.__setModuleDefault||(Object.create?(function(C,T){Object.defineProperty(C,"default",{enumerable:!0,value:T})}):function(C,T){C.default=T}),b=sm&&sm.__importStar||(function(){var C=function(T){return C=Object.getOwnPropertyNames||function(M){var _=[];for(var I in M)Object.prototype.hasOwnProperty.call(M,I)&&(_[_.length]=I);return _},C(T)};return function(T){if(T&&T.__esModule)return T;var M={};if(T!=null)for(var _=C(T),I=0;I<_.length;I++)_[I]!=="default"&&f(M,T,_[I]);return h(M,T),M}})();Object.defineProperty(sm,"__esModule",{value:!0}),sm.BindingToSyntax=void 0;const w=b(vg()),m=Py(),P=UVt(),g=$pt();class E{_binding;constructor(T){this._binding=T}to(T){return this._binding.type=m.BindingTypeEnum.Instance,this._binding.implementationType=T,new P.BindingInWhenOnSyntax(this._binding)}toSelf(){if(typeof this._binding.serviceIdentifier!="function")throw new Error(w.INVALID_TO_SELF_VALUE);const T=this._binding.serviceIdentifier;return this.to(T)}toConstantValue(T){return this._binding.type=m.BindingTypeEnum.ConstantValue,this._binding.cache=T,this._binding.dynamicValue=null,this._binding.implementationType=null,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toDynamicValue(T){return this._binding.type=m.BindingTypeEnum.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=T,this._binding.implementationType=null,new P.BindingInWhenOnSyntax(this._binding)}toConstructor(T){return this._binding.type=m.BindingTypeEnum.Constructor,this._binding.implementationType=T,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toFactory(T){return this._binding.type=m.BindingTypeEnum.Factory,this._binding.factory=T,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toFunction(T){if(typeof T!="function")throw new Error(w.INVALID_FUNCTION_BINDING);const M=this.toConstantValue(T);return this._binding.type=m.BindingTypeEnum.Function,this._binding.scope=m.BindingScopeEnum.Singleton,M}toAutoFactory(T){return this._binding.type=m.BindingTypeEnum.Factory,this._binding.factory=M=>()=>M.container.get(T),this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toAutoNamedFactory(T){return this._binding.type=m.BindingTypeEnum.Factory,this._binding.factory=M=>_=>M.container.getNamed(T,_),new g.BindingWhenOnSyntax(this._binding)}toProvider(T){return this._binding.type=m.BindingTypeEnum.Provider,this._binding.provider=T,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toService(T){this._binding.type=m.BindingTypeEnum.DynamicValue,Object.defineProperty(this._binding,"cache",{configurable:!0,enumerable:!0,get(){return null},set(M){}}),this._binding.dynamicValue=M=>{try{return M.container.get(T)}catch{return M.container.getAsync(T)}},this._binding.implementationType=null}}return sm.BindingToSyntax=E,sm}var fL={},Hdt;function YVt(){if(Hdt)return fL;Hdt=1,Object.defineProperty(fL,"__esModule",{value:!0}),fL.ContainerSnapshot=void 0;class f{bindings;activations;deactivations;middleware;moduleActivationStore;static of(b,w,m,P,g){const E=new f;return E.bindings=b,E.middleware=w,E.deactivations=P,E.activations=m,E.moduleActivationStore=g,E}}return fL.ContainerSnapshot=f,fL}var um={},YY={},zdt;function XVt(){if(zdt)return YY;zdt=1,Object.defineProperty(YY,"__esModule",{value:!0}),YY.isClonable=f;function f(h){return typeof h=="object"&&h!==null&&"clone"in h&&typeof h.clone=="function"}return YY}var Vdt;function Kpt(){if(Vdt)return um;Vdt=1;var f=um&&um.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=um&&um.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=um&&um.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M{const M=E.hasKey(C)?E.get(C):void 0;if(M!==void 0){const _=T.filter(I=>!M.some(O=>I===O));this._setValue(C,_)}})}removeByCondition(E){const C=[];return this._map.forEach((T,M)=>{const _=[];for(const I of T)E(I)?C.push(I):_.push(I);this._setValue(M,_)}),C}hasKey(E){return this._checkNonNulish(E),this._map.has(E)}clone(){const E=new P;return this._map.forEach((C,T)=>{C.forEach(M=>{E.add(T,(0,m.isClonable)(M)?M.clone():M)})}),E}traverse(E){this._map.forEach((C,T)=>{E(T,C)})}_checkNonNulish(E){if(E==null)throw new Error(w.NULL_ARGUMENT)}_setValue(E,C){C.length>0?this._map.set(E,C):this._map.delete(E)}}return um.Lookup=P,um}var hL={},Gdt;function JVt(){if(Gdt)return hL;Gdt=1,Object.defineProperty(hL,"__esModule",{value:!0}),hL.ModuleActivationStore=void 0;const f=Kpt();class h{_map=new Map;remove(w){const m=this._map.get(w);return m===void 0?this._getEmptyHandlersStore():(this._map.delete(w),m)}addDeactivation(w,m,P){this._getModuleActivationHandlers(w).onDeactivations.add(m,P)}addActivation(w,m,P){this._getModuleActivationHandlers(w).onActivations.add(m,P)}clone(){const w=new h;return this._map.forEach((m,P)=>{w._map.set(P,{onActivations:m.onActivations.clone(),onDeactivations:m.onDeactivations.clone()})}),w}_getModuleActivationHandlers(w){let m=this._map.get(w);return m===void 0&&(m=this._getEmptyHandlersStore(),this._map.set(w,m)),m}_getEmptyHandlersStore(){return{onActivations:new f.Lookup,onDeactivations:new f.Lookup}}}return hL.ModuleActivationStore=h,hL}var Udt;function QVt(){if(Udt)return rm;Udt=1;var f=rm&&rm.__createBinding||(Object.create?(function(H,F,$,W){W===void 0&&(W=$);var re=Object.getOwnPropertyDescriptor(F,$);(!re||("get"in re?!F.__esModule:re.writable||re.configurable))&&(re={enumerable:!0,get:function(){return F[$]}}),Object.defineProperty(H,W,re)}):(function(H,F,$,W){W===void 0&&(W=$),H[W]=F[$]})),h=rm&&rm.__setModuleDefault||(Object.create?(function(H,F){Object.defineProperty(H,"default",{enumerable:!0,value:F})}):function(H,F){H.default=F}),b=rm&&rm.__importStar||(function(){var H=function(F){return H=Object.getOwnPropertyNames||function($){var W=[];for(var re in $)Object.prototype.hasOwnProperty.call($,re)&&(W[W.length]=re);return W},H(F)};return function(F){if(F&&F.__esModule)return F;var $={};if(F!=null)for(var W=H(F),re=0;re(0,C.getBindingDictionary)(te)),ce=(0,C.getBindingDictionary)(re);function J(te,fe){te.traverse((ve,me)=>{me.forEach(ke=>{fe.add(ke.serviceIdentifier,ke.clone())})})}return ae.forEach(te=>{J(te,ce)}),re}load(...F){const $=this._getContainerModuleHelpersFactory();for(const W of F){const re=$(W.id);W.registry(re.bindFunction,re.unbindFunction,re.isboundFunction,re.rebindFunction,re.unbindAsyncFunction,re.onActivationFunction,re.onDeactivationFunction)}}async loadAsync(...F){const $=this._getContainerModuleHelpersFactory();for(const W of F){const re=$(W.id);await W.registry(re.bindFunction,re.unbindFunction,re.isboundFunction,re.rebindFunction,re.unbindAsyncFunction,re.onActivationFunction,re.onDeactivationFunction)}}unload(...F){F.forEach($=>{const W=this._removeModuleBindings($.id);this._deactivateSingletons(W),this._removeModuleHandlers($.id)})}async unloadAsync(...F){for(const $ of F){const W=this._removeModuleBindings($.id);await this._deactivateSingletonsAsync(W),this._removeModuleHandlers($.id)}}bind(F){return this._bind(this._buildBinding(F))}rebind(F){return this.unbind(F),this.bind(F)}async rebindAsync(F){return await this.unbindAsync(F),this.bind(F)}unbind(F){if(this._bindingDictionary.hasKey(F)){const $=this._bindingDictionary.get(F);this._deactivateSingletons($)}this._removeServiceFromDictionary(F)}async unbindAsync(F){if(this._bindingDictionary.hasKey(F)){const $=this._bindingDictionary.get(F);await this._deactivateSingletonsAsync($)}this._removeServiceFromDictionary(F)}unbindAll(){this._bindingDictionary.traverse((F,$)=>{this._deactivateSingletons($)}),this._bindingDictionary=new k.Lookup}async unbindAllAsync(){const F=[];this._bindingDictionary.traverse(($,W)=>{F.push(this._deactivateSingletonsAsync(W))}),await Promise.all(F),this._bindingDictionary=new k.Lookup}onActivation(F,$){this._activations.add(F,$)}onDeactivation(F,$){this._deactivations.add(F,$)}isBound(F){let $=this._bindingDictionary.hasKey(F);return!$&&this.parent&&($=this.parent.isBound(F)),$}isCurrentBound(F){return this._bindingDictionary.hasKey(F)}isBoundNamed(F,$){return this.isBoundTagged(F,g.NAMED_TAG,$)}isBoundTagged(F,$,W){let re=!1;if(this._bindingDictionary.hasKey(F)){const ae=this._bindingDictionary.get(F),ce=(0,C.createMockRequest)(this,F,{customTag:{key:$,value:W},isMultiInject:!1});re=ae.some(J=>J.constraint(ce))}return!re&&this.parent&&(re=this.parent.isBoundTagged(F,$,W)),re}snapshot(){this._snapshots.push(j.ContainerSnapshot.of(this._bindingDictionary.clone(),this._middleware,this._activations.clone(),this._deactivations.clone(),this._moduleActivationStore.clone()))}restore(){const F=this._snapshots.pop();if(F===void 0)throw new Error(m.NO_MORE_SNAPSHOTS_AVAILABLE);this._bindingDictionary=F.bindings,this._activations=F.activations,this._deactivations=F.deactivations,this._middleware=F.middleware,this._moduleActivationStore=F.moduleActivationStore}createChild(F){const $=new R(F||this.options);return $.parent=this,$}applyMiddleware(...F){const $=this._middleware?this._middleware:this._planAndResolve();this._middleware=F.reduce((W,re)=>re(W),$)}applyCustomMetadataReader(F){this._metadataReader=F}get(F){const $=this._getNotAllArgs(F,!1,!1);return this._getButThrowIfAsync($)}async getAsync(F){const $=this._getNotAllArgs(F,!1,!1);return this._get($)}getTagged(F,$,W){const re=this._getNotAllArgs(F,!1,!1,$,W);return this._getButThrowIfAsync(re)}async getTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!1,!1,$,W);return this._get(re)}getNamed(F,$){return this.getTagged(F,g.NAMED_TAG,$)}async getNamedAsync(F,$){return this.getTaggedAsync(F,g.NAMED_TAG,$)}getAll(F,$){const W=this._getAllArgs(F,$,!1);return this._getButThrowIfAsync(W)}async getAllAsync(F,$){const W=this._getAllArgs(F,$,!1);return this._getAll(W)}getAllTagged(F,$,W){const re=this._getNotAllArgs(F,!0,!1,$,W);return this._getButThrowIfAsync(re)}async getAllTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!0,!1,$,W);return this._getAll(re)}getAllNamed(F,$){return this.getAllTagged(F,g.NAMED_TAG,$)}async getAllNamedAsync(F,$){return this.getAllTaggedAsync(F,g.NAMED_TAG,$)}resolve(F){const $=this.isBound(F);$||this.bind(F).toSelf();const W=this.get(F);return $||this.unbind(F),W}tryGet(F){const $=this._getNotAllArgs(F,!1,!0);return this._getButThrowIfAsync($)}async tryGetAsync(F){const $=this._getNotAllArgs(F,!1,!0);return this._get($)}tryGetTagged(F,$,W){const re=this._getNotAllArgs(F,!1,!0,$,W);return this._getButThrowIfAsync(re)}async tryGetTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!1,!0,$,W);return this._get(re)}tryGetNamed(F,$){return this.tryGetTagged(F,g.NAMED_TAG,$)}async tryGetNamedAsync(F,$){return this.tryGetTaggedAsync(F,g.NAMED_TAG,$)}tryGetAll(F,$){const W=this._getAllArgs(F,$,!0);return this._getButThrowIfAsync(W)}async tryGetAllAsync(F,$){const W=this._getAllArgs(F,$,!0);return this._getAll(W)}tryGetAllTagged(F,$,W){const re=this._getNotAllArgs(F,!0,!0,$,W);return this._getButThrowIfAsync(re)}async tryGetAllTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!0,!0,$,W);return this._getAll(re)}tryGetAllNamed(F,$){return this.tryGetAllTagged(F,g.NAMED_TAG,$)}async tryGetAllNamedAsync(F,$){return this.tryGetAllTaggedAsync(F,g.NAMED_TAG,$)}_preDestroy(F,$){if(F!==void 0&&Reflect.hasMetadata(g.PRE_DESTROY,F)){const W=Reflect.getMetadata(g.PRE_DESTROY,F);return $[W.value]?.()}}_removeModuleHandlers(F){const $=this._moduleActivationStore.remove(F);this._activations.removeIntersection($.onActivations),this._deactivations.removeIntersection($.onDeactivations)}_removeModuleBindings(F){return this._bindingDictionary.removeByCondition($=>$.moduleId===F)}_deactivate(F,$){const W=$==null?void 0:Object.getPrototypeOf($).constructor;try{if(this._deactivations.hasKey(F.serviceIdentifier)){const ae=this._deactivateContainer($,this._deactivations.get(F.serviceIdentifier).values());if((0,_.isPromise)(ae))return this._handleDeactivationError(ae.then(async()=>this._propagateContainerDeactivationThenBindingAndPreDestroyAsync(F,$,W)),F.serviceIdentifier)}const re=this._propagateContainerDeactivationThenBindingAndPreDestroy(F,$,W);if((0,_.isPromise)(re))return this._handleDeactivationError(re,F.serviceIdentifier)}catch(re){if(re instanceof Error)throw new Error(m.ON_DEACTIVATION_ERROR((0,O.getServiceIdentifierAsString)(F.serviceIdentifier),re.message))}}async _handleDeactivationError(F,$){try{await F}catch(W){if(W instanceof Error)throw new Error(m.ON_DEACTIVATION_ERROR((0,O.getServiceIdentifierAsString)($),W.message))}}_deactivateContainer(F,$){let W=$.next();for(;typeof W.value=="function";){const re=W.value(F);if((0,_.isPromise)(re))return re.then(async()=>this._deactivateContainerAsync(F,$));W=$.next()}}async _deactivateContainerAsync(F,$){let W=$.next();for(;typeof W.value=="function";)await W.value(F),W=$.next()}_getContainerModuleHelpersFactory(){const F=te=>fe=>{const ve=this._buildBinding(fe);return ve.moduleId=te,this._bind(ve)},$=()=>te=>{this.unbind(te)},W=()=>async te=>this.unbindAsync(te),re=()=>te=>this.isBound(te),ae=te=>{const fe=F(te);return ve=>(this.unbind(ve),fe(ve))},ce=te=>(fe,ve)=>{this._moduleActivationStore.addActivation(te,fe,ve),this.onActivation(fe,ve)},J=te=>(fe,ve)=>{this._moduleActivationStore.addDeactivation(te,fe,ve),this.onDeactivation(fe,ve)};return te=>({bindFunction:F(te),isboundFunction:re(),onActivationFunction:ce(te),onDeactivationFunction:J(te),rebindFunction:ae(te),unbindAsyncFunction:W(),unbindFunction:$()})}_bind(F){return this._bindingDictionary.add(F.serviceIdentifier,F),new M.BindingToSyntax(F)}_buildBinding(F){const $=this.options.defaultScope||P.BindingScopeEnum.Transient;return new w.Binding(F,$)}async _getAll(F){return Promise.all(this._get(F))}_get(F){const $={...F,contextInterceptor:W=>W,targetType:P.TargetTypeEnum.Variable};if(this._middleware){const W=this._middleware($);if(W==null)throw new Error(m.INVALID_MIDDLEWARE_RETURN);return W}return this._planAndResolve()($)}_getButThrowIfAsync(F){const $=this._get(F);if((0,_.isPromiseOrContainsPromise)($))throw new Error(m.LAZY_IN_SYNC(F.serviceIdentifier));return $}_getAllArgs(F,$,W){return{avoidConstraints:!($?.enforceBindingConstraints??!1),isMultiInject:!0,isOptional:W,serviceIdentifier:F}}_getNotAllArgs(F,$,W,re,ae){return{avoidConstraints:!1,isMultiInject:$,isOptional:W,key:re,serviceIdentifier:F,value:ae}}_getPlanMetadataFromNextArgs(F){const $={isMultiInject:F.isMultiInject};return F.key!==void 0&&($.customTag={key:F.key,value:F.value}),F.isOptional===!0&&($.isOptional=!0),$}_planAndResolve(){return F=>{let $=(0,C.plan)(this._metadataReader,this,F.targetType,F.serviceIdentifier,this._getPlanMetadataFromNextArgs(F),F.avoidConstraints);return $=F.contextInterceptor($),(0,T.resolve)($)}}_deactivateIfSingleton(F){if(F.activated)return(0,_.isPromise)(F.cache)?F.cache.then($=>this._deactivate(F,$)):this._deactivate(F,F.cache)}_deactivateSingletons(F){for(const $ of F){const W=this._deactivateIfSingleton($);if((0,_.isPromise)(W))throw new Error(m.ASYNC_UNBIND_REQUIRED)}}async _deactivateSingletonsAsync(F){await Promise.all(F.map(async $=>this._deactivateIfSingleton($)))}_propagateContainerDeactivationThenBindingAndPreDestroy(F,$,W){return this.parent?this._deactivate.bind(this.parent)(F,$):this._bindingDeactivationAndPreDestroy(F,$,W)}async _propagateContainerDeactivationThenBindingAndPreDestroyAsync(F,$,W){this.parent?await this._deactivate.bind(this.parent)(F,$):await this._bindingDeactivationAndPreDestroyAsync(F,$,W)}_removeServiceFromDictionary(F){try{this._bindingDictionary.remove(F)}catch{throw new Error(`${m.CANNOT_UNBIND} ${(0,O.getServiceIdentifierAsString)(F)}`)}}_bindingDeactivationAndPreDestroy(F,$,W){if(typeof F.onDeactivation=="function"){const re=F.onDeactivation($);if((0,_.isPromise)(re))return re.then(()=>this._preDestroy(W,$))}return this._preDestroy(W,$)}async _bindingDeactivationAndPreDestroyAsync(F,$,W){typeof F.onDeactivation=="function"&&await F.onDeactivation($),await this._preDestroy(W,$)}}return rm.Container=R,rm}var _M={},Wdt;function ZVt(){if(Wdt)return _M;Wdt=1,Object.defineProperty(_M,"__esModule",{value:!0}),_M.AsyncContainerModule=_M.ContainerModule=void 0;const f=vA();class h{id;registry;constructor(m){this.id=(0,f.id)(),this.registry=m}}_M.ContainerModule=h;class b{id;registry;constructor(m){this.id=(0,f.id)(),this.registry=m}}return _M.AsyncContainerModule=b,_M}var Tb={},XY={},Ydt;function eGt(){if(Ydt)return XY;Ydt=1,Object.defineProperty(XY,"__esModule",{value:!0}),XY.getFirstArrayDuplicate=f;function f(h){const b=new Set;for(const w of h){if(b.has(w))return w;b.add(w)}}return XY}var Xdt;function vS(){if(Xdt)return Tb;Xdt=1;var f=Tb&&Tb.__createBinding||(Object.create?(function(x,R,H,F){F===void 0&&(F=H);var $=Object.getOwnPropertyDescriptor(R,H);(!$||("get"in $?!R.__esModule:$.writable||$.configurable))&&($={enumerable:!0,get:function(){return R[H]}}),Object.defineProperty(x,F,$)}):(function(x,R,H,F){F===void 0&&(F=H),x[F]=R[H]})),h=Tb&&Tb.__setModuleDefault||(Object.create?(function(x,R){Object.defineProperty(x,"default",{enumerable:!0,value:R})}):function(x,R){x.default=R}),b=Tb&&Tb.__importStar||(function(){var x=function(R){return x=Object.getOwnPropertyNames||function(H){var F=[];for(var $ in H)Object.prototype.hasOwnProperty.call(H,$)&&(F[F.length]=$);return F},x(R)};return function(R){if(R&&R.__esModule)return R;var H={};if(R!=null)for(var F=x(R),$=0;$F.key));if(H!==void 0)throw new Error(`${w.DUPLICATED_METADATA} ${H.toString()}`)}else R=[x];return R}function _(x,R,H,F){const $=M(F);let W={};Reflect.hasOwnMetadata(x,R)&&(W=Reflect.getMetadata(x,R));let re=W[H];if(re===void 0)re=[];else for(const ae of re)if($.some(ce=>ce.key===ae.key))throw new Error(`${w.DUPLICATED_METADATA} ${ae.key.toString()}`);re.push(...$),W[H]=re,Reflect.defineMetadata(x,W,R)}function I(x){return(R,H,F)=>{typeof F=="number"?C(R,H,F,x):T(R,H,x)}}function O(x,R){Reflect.decorate(x,R)}function j(x,R){return function(H,F){R(H,F,x)}}function k(x,R,H){typeof H=="number"?O([j(H,x)],R):typeof H=="string"?Reflect.decorate([x],R,H):O([x],R)}return Tb}var ty={},Jdt;function tGt(){if(Jdt)return ty;Jdt=1;var f=ty&&ty.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=ty&&ty.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=ty&&ty.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M(g,E,C)=>{if(P===void 0){const T=typeof g=="function"?g.name:g.constructor.name;throw new Error((0,f.UNDEFINED_INJECT_ANNOTATION)(T))}(0,b.createTaggedDecorator)(new h.Metadata(m,P))(g,E,C)}}return QY}var t1t;function rGt(){if(t1t)return am;t1t=1;var f=am&&am.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=am&&am.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=am&&am.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M(m,P)=>{const g=new f.Metadata(b,P);if(Reflect.hasOwnMetadata(b,m.constructor))throw new Error(w);Reflect.defineMetadata(b,g,m.constructor)}}return ZY}var s1t;function aGt(){if(s1t)return fm;s1t=1;var f=fm&&fm.__createBinding||(Object.create?(function(E,C,T,M){M===void 0&&(M=T);var _=Object.getOwnPropertyDescriptor(C,T);(!_||("get"in _?!C.__esModule:_.writable||_.configurable))&&(_={enumerable:!0,get:function(){return C[T]}}),Object.defineProperty(E,M,_)}):(function(E,C,T,M){M===void 0&&(M=T),E[M]=C[T]})),h=fm&&fm.__setModuleDefault||(Object.create?(function(E,C){Object.defineProperty(E,"default",{enumerable:!0,value:C})}):function(E,C){E.default=C}),b=fm&&fm.__importStar||(function(){var E=function(C){return E=Object.getOwnPropertyNames||function(T){var M=[];for(var _ in T)Object.prototype.hasOwnProperty.call(T,_)&&(M[M.length]=_);return M},E(C)};return function(C){if(C&&C.__esModule)return C;var T={};if(C!=null)for(var M=E(C),_=0;_{this.resolve=b,this.reject=w}),this.promise.then(b=>this._state="resolved",b=>this._state="rejected")}set state(b){this._state==="unresolved"&&(this._state=b)}get state(){return this._state}}return dL.Deferred=f,dL}var gL={},d1t;function Qn(){return d1t||(d1t=1,Object.defineProperty(gL,"__esModule",{value:!0}),gL.TYPES=void 0,gL.TYPES={Action:Symbol("Action"),IActionDispatcher:Symbol("IActionDispatcher"),IActionDispatcherProvider:Symbol("IActionDispatcherProvider"),IActionHandlerInitializer:Symbol("IActionHandlerInitializer"),ActionHandlerRegistration:Symbol("ActionHandlerRegistration"),ActionHandlerRegistryProvider:Symbol("ActionHandlerRegistryProvider"),IAnchorComputer:Symbol("IAnchor"),AnimationFrameSyncer:Symbol("AnimationFrameSyncer"),IButtonHandlerRegistration:Symbol("IButtonHandlerRegistration"),ICommandPaletteActionProvider:Symbol("ICommandPaletteActionProvider"),ICommandPaletteActionProviderRegistry:Symbol("ICommandPaletteActionProviderRegistry"),CommandRegistration:Symbol("CommandRegistration"),ICommandStack:Symbol("ICommandStack"),CommandStackOptions:Symbol("CommandStackOptions"),ICommandStackProvider:Symbol("ICommandStackProvider"),IContextMenuItemProvider:Symbol.for("IContextMenuProvider"),IContextMenuProviderRegistry:Symbol.for("IContextMenuProviderRegistry"),IContextMenuService:Symbol.for("IContextMenuService"),IContextMenuServiceProvider:Symbol.for("IContextMenuServiceProvider"),DOMHelper:Symbol("DOMHelper"),IDiagramLocker:Symbol("IDiagramLocker"),IEdgeRouter:Symbol("IEdgeRouter"),IEdgeRoutePostprocessor:Symbol("IEdgeRoutePostprocessor"),IEditLabelValidationDecorator:Symbol("IEditLabelValidationDecorator"),IEditLabelValidator:Symbol("IEditLabelValidator"),HiddenModelViewer:Symbol("HiddenModelViewer"),HiddenVNodePostprocessor:Symbol("HiddenVNodeDecorator"),HoverState:Symbol("HoverState"),KeyListener:Symbol("KeyListener"),LayoutRegistration:Symbol("LayoutRegistration"),LayoutRegistry:Symbol("LayoutRegistry"),Layouter:Symbol("Layouter"),LogLevel:Symbol("LogLevel"),ILogger:Symbol("ILogger"),IModelFactory:Symbol("IModelFactory"),IModelLayoutEngine:Symbol("IModelLayoutEngine"),ModelRendererFactory:Symbol("ModelRendererFactory"),ModelSource:Symbol("ModelSource"),ModelSourceProvider:Symbol("ModelSourceProvider"),ModelViewer:Symbol("ModelViewer"),MouseListener:Symbol("MouseListener"),PatcherProvider:Symbol("PatcherProvider"),IPopupModelProvider:Symbol("IPopupModelProvider"),PopupModelViewer:Symbol("PopupModelViewer"),PopupMouseListener:Symbol("PopupMouseListener"),PopupVNodePostprocessor:Symbol("PopupVNodeDecorator"),SModelElementRegistration:Symbol("SModelElementRegistration"),SModelRegistry:Symbol("SModelRegistry"),ISnapper:Symbol("ISnapper"),SvgExporter:Symbol("SvgExporter"),ISvgExportPostprocessor:Symbol("ISvgExportPostprocessor"),IUIExtension:Symbol("IUIExtension"),UIExtensionRegistry:Symbol("UIExtensionRegistry"),IVNodePostprocessor:Symbol("IVNodePostprocessor"),ViewRegistration:Symbol("ViewRegistration"),ViewRegistry:Symbol("ViewRegistry"),IViewer:Symbol("IViewer"),ViewerOptions:Symbol("ViewerOptions"),IViewerProvider:Symbol("IViewerProvider")}),gL}var tf={},ah={},g1t;function q3(){if(g1t)return ah;g1t=1;var f=ah&&ah.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(ah,"__esModule",{value:!0}),ah.MultiInstanceRegistry=ah.InstanceRegistry=ah.FactoryRegistry=ah.ProviderRegistry=void 0;const h=Zt();let b=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");if(this.hasKey(E))throw new Error("Key is already registered: "+E);this.elements.set(E,C)}deregister(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}hasKey(E){return this.elements.has(E)}get(E,C){const T=this.elements.get(E);return T?new T(C):this.missing(E,C)}missing(E,C){throw new Error("Unknown registry key: "+E)}};ah.ProviderRegistry=b,ah.ProviderRegistry=b=f([(0,h.injectable)()],b);let w=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");if(this.hasKey(E))throw new Error(`Key is already registered: ${E}. Use \`overrideModelElement\` instead.`);this.elements.set(E,C)}override(E,C){if(E===void 0)throw new Error("Key is undefined");if(!this.hasKey(E))throw new Error(`Key is not registered: ${E}. Use \`configureModelElement\` instead.`);this.elements.set(E,C)}deregister(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}hasKey(E){return this.elements.has(E)}get(E,C){const T=this.elements.get(E);return T?T(C):this.missing(E,C)}missing(E,C){throw new Error("Unknown registry key: "+E)}};ah.FactoryRegistry=w,ah.FactoryRegistry=w=f([(0,h.injectable)()],w);let m=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");if(this.hasKey(E))throw new Error(`Key is already registered: ${E}. Use \`overrideModelElement\` instead.`);this.elements.set(E,C)}override(E,C){if(E===void 0)throw new Error("Key is undefined");if(!this.hasKey(E))throw new Error(`Key is not registered: ${E}. Use \`configureModelElement\` instead.`);this.elements.set(E,C)}deregister(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}hasKey(E){return this.elements.has(E)}get(E){const C=this.elements.get(E);return C||this.missing(E)}missing(E){throw new Error("Unknown registry key: "+E)}};ah.InstanceRegistry=m,ah.InstanceRegistry=m=f([(0,h.injectable)()],m);let P=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");const T=this.elements.get(E);T!==void 0?T.push(C):this.elements.set(E,[C])}deregisterAll(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}get(E){const C=this.elements.get(E);return C!==void 0?C:[]}};return ah.MultiInstanceRegistry=P,ah.MultiInstanceRegistry=P=f([(0,h.injectable)()],P),ah}var lh={},Xu={},b1t;function Ac(){if(b1t)return Xu;b1t=1,Object.defineProperty(Xu,"__esModule",{value:!0}),Xu.almostEquals=Xu.toRadians=Xu.toDegrees=Xu.Bounds=Xu.isBounds=Xu.Dimension=Xu.centerOfLine=Xu.angleBetweenPoints=Xu.angleOfPoint=Xu.Point=void 0;const f=_S();var h;(function(_){_.ORIGIN=Object.freeze({x:0,y:0});function I(ae,ce){return{x:ae.x+ce.x,y:ae.y+ce.y}}_.add=I;function O(ae,ce){return{x:ae.x-ce.x,y:ae.y-ce.y}}_.subtract=O;function j(ae,ce){return ae.x===ce.x&&ae.y===ce.y}_.equals=j;function k(ae,ce,J){const te=O(ce,ae),fe=x(te),ve={x:fe.x*J,y:fe.y*J};return I(ae,ve)}_.shiftTowards=k;function x(ae){const ce=R(ae);return ce===0||ce===1?_.ORIGIN:{x:ae.x/ce,y:ae.y/ce}}_.normalize=x;function R(ae){return Math.sqrt(Math.pow(ae.x,2)+Math.pow(ae.y,2))}_.magnitude=R;function H(ae,ce,J){return{x:(1-J)*ae.x+J*ce.x,y:(1-J)*ae.y+J*ce.y}}_.linear=H;function F(ae,ce){const J=ce.x-ae.x,te=ce.y-ae.y;return Math.sqrt(J*J+te*te)}_.euclideanDistance=F;function $(ae,ce){return Math.abs(ce.x-ae.x)+Math.abs(ce.y-ae.y)}_.manhattanDistance=$;function W(ae,ce){return Math.max(Math.abs(ce.x-ae.x),Math.abs(ce.y-ae.y))}_.maxDistance=W;function re(ae,ce){return ae.x*ce.x+ae.y*ce.y}_.dotProduct=re})(h||(Xu.Point=h={}));function b(_){return Math.atan2(_.y,_.x)}Xu.angleOfPoint=b;function w(_,I){const O=Math.sqrt((_.x*_.x+_.y*_.y)*(I.x*I.x+I.y*I.y));if(isNaN(O)||O===0)return NaN;const j=_.x*I.x+_.y*I.y;return Math.acos(j/O)}Xu.angleBetweenPoints=w;function m(_,I){const O={x:_.x>I.x?I.x:_.x,y:_.y>I.y?I.y:_.y,width:Math.abs(I.x-_.x),height:Math.abs(I.y-_.y)};return E.center(O)}Xu.centerOfLine=m;var P;(function(_){_.EMPTY=Object.freeze({width:-1,height:-1});function I(O){return O.width>=0&&O.height>=0}_.isValid=I})(P||(Xu.Dimension=P={}));function g(_){return(0,f.hasOwnProperty)(_,["x","y","width","height"])}Xu.isBounds=g;var E;(function(_){_.EMPTY=Object.freeze({x:0,y:0,width:-1,height:-1});function I(x,R){if(!P.isValid(x))return P.isValid(R)?R:_.EMPTY;if(!P.isValid(R))return x;const H=Math.min(x.x,R.x),F=Math.min(x.y,R.y),$=Math.max(x.x+(x.width>=0?x.width:0),R.x+(R.width>=0?R.width:0)),W=Math.max(x.y+(x.height>=0?x.height:0),R.y+(R.height>=0?R.height:0));return{x:H,y:F,width:$-H,height:W-F}}_.combine=I;function O(x,R){return{x:x.x+R.x,y:x.y+R.y,width:x.width,height:x.height}}_.translate=O;function j(x){return{x:x.x+(x.width>=0?.5*x.width:0),y:x.y+(x.height>=0?.5*x.height:0)}}_.center=j;function k(x,R){return R.x>=x.x&&R.x<=x.x+x.width&&R.y>=x.y&&R.y<=x.y+x.height}_.includes=k})(E||(Xu.Bounds=E={}));function C(_){return _*180/Math.PI}Xu.toDegrees=C;function T(_){return _*Math.PI/180}Xu.toRadians=T;function M(_,I){return Math.abs(_-I)<.001}return Xu.almostEquals=M,Xu}var Xme={},p1t;function _A(){return p1t||(p1t=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.mapIterable=f.filterIterable=f.DONE_RESULT=f.toArray=f.FluentIterableImpl=void 0;class h{constructor(C,T){this.startFn=C,this.nextFn=T}[Symbol.iterator](){const C={state:this.startFn(),next:()=>this.nextFn(C.state),[Symbol.iterator]:()=>C};return C}filter(C){return w(this,C)}map(C){return m(this,C)}forEach(C){const T=this[Symbol.iterator]();let M=0,_;do _=T.next(),_.value!==void 0&&C(_.value,M),M++;while(!_.done)}indexOf(C){const T=this[Symbol.iterator]();let M=0,_;do{if(_=T.next(),_.value===C)return M;M++}while(!_.done);return-1}}f.FluentIterableImpl=h;function b(E){if(E.constructor===Array)return E;const C=[];return E.forEach(T=>C.push(T)),C}f.toArray=b,f.DONE_RESULT=Object.freeze({done:!0,value:void 0});function w(E,C){return new h(()=>P(E),T=>{let M;do M=T.next();while(!M.done&&!C(M.value));return M})}f.filterIterable=w;function m(E,C){return new h(()=>P(E),T=>{const{done:M,value:_}=T.next();return M?f.DONE_RESULT:{done:!1,value:C(_)}})}f.mapIterable=m;function P(E){const C=E[Symbol.iterator];if(typeof C=="function")return C.call(E);const T=E.length;return typeof T=="number"&&T>=0?new g(E):{next:()=>f.DONE_RESULT}}class g{constructor(C){this.array=C,this.index=0}next(){return this.indexthis.children.length)throw new Error(`Child index ${I} out of bounds (0..${O.length})`);O.splice(I,0,_)}_.parent=this,this.index.add(_)}remove(_){const I=this.children,O=I.indexOf(_);if(O<0)throw new Error(`No such child ${_.id}`);I.splice(O,1),this.index.remove(_)}removeAll(_){const I=this.children;if(_!==void 0){for(let O=I.length-1;O>=0;O--)if(_(I[O])){const j=I.splice(O,1)[0];this.index.remove(j)}}else I.forEach(O=>{this.index.remove(O)}),I.splice(0,I.length)}move(_,I){const O=this.children,j=O.indexOf(_);if(j===-1)throw new Error(`No such child ${_.id}`);if(I<0||I>O.length-1)throw new Error(`Child index ${I} out of bounds (0..${O.length})`);O.splice(j,1),O.splice(I,0,_)}localToParent(_){return(0,f.isBounds)(_)?_:{x:_.x,y:_.y,width:-1,height:-1}}parentToLocal(_){return(0,f.isBounds)(_)?_:{x:_.x,y:_.y,width:-1,height:-1}}}lh.SParentElementImpl=m;class P extends m{}lh.SChildElementImpl=P;class g extends m{constructor(_=new T){super(),this.canvasBounds=f.Bounds.EMPTY,Object.defineProperty(this,"index",{value:_,writable:!1})}}lh.SModelRootImpl=g;const E="0123456789abcdefghijklmnopqrstuvwxyz";function C(M=8){let _="";for(let I=0;II)}}return lh.ModelIndexImpl=T,lh}var m1t;function ES(){if(m1t)return tf;m1t=1;var f=tf&&tf.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=tf&&tf.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=tf&&tf.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(tf,"__esModule",{value:!0}),tf.createFeatureSet=tf.EMPTY_ROOT=tf.SModelFactory=tf.SModelRegistry=void 0;const w=Zt(),m=Qn(),P=q3(),g=Oc();let E=class extends P.FactoryRegistry{constructor(_){super(),_.forEach(I=>{let O=this.getDefaultFeatures(I.constr);if(!O&&I.features&&I.features.enable&&(O=[]),O){const j=T(O,I.features);I.isOverride?this.override(I.type,()=>{const k=new I.constr;return k.features=j,k}):this.register(I.type,()=>{const k=new I.constr;return k.features=j,k})}else I.isOverride?this.override(I.type,()=>new I.constr):this.register(I.type,()=>new I.constr)})}getDefaultFeatures(_){let I=_;do{const O=I.DEFAULT_FEATURES;if(O)return O;I=Object.getPrototypeOf(I)}while(I)}};tf.SModelRegistry=E,tf.SModelRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.SModelElementRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);let C=class{createElement(_,I){let O;if(this.registry.hasKey(_.type)){const j=this.registry.get(_.type,void 0);if(!(j instanceof g.SChildElementImpl))throw new Error(`Element with type ${_.type} was expected to be an SChildElement.`);O=j}else O=new g.SChildElementImpl;return this.initializeChild(O,_,I)}createRoot(_){let I;if(this.registry.hasKey(_.type)){const O=this.registry.get(_.type,void 0);if(!(O instanceof g.SModelRootImpl))throw new Error(`Element with type ${_.type} was expected to be an SModelRoot.`);I=O}else I=new g.SModelRootImpl;return this.initializeRoot(I,_)}createSchema(_){const I={};for(const O in _)if(!this.isReserved(_,O)){const j=_[O];typeof j!="function"&&(I[O]=j)}return _ instanceof g.SParentElementImpl&&(I.children=_.children.map(O=>this.createSchema(O))),I}initializeElement(_,I){for(const O in I)if(!this.isReserved(_,O)){const j=I[O];typeof j!="function"&&(_[O]=j)}return _}isReserved(_,I){if(["children","parent","index"].indexOf(I)>=0)return!0;let O=_;do{const j=Object.getOwnPropertyDescriptor(O,I);if(j!==void 0)return j.get!==void 0;O=Object.getPrototypeOf(O)}while(O);return!1}initializeParent(_,I){return this.initializeElement(_,I),(0,g.isParent)(I)&&(_.children=I.children.map(O=>this.createElement(O,_))),_}initializeChild(_,I,O){return this.initializeParent(_,I),O!==void 0&&(_.parent=O),_}initializeRoot(_,I){return this.initializeParent(_,I),_.index.add(_),_}};tf.SModelFactory=C,f([(0,w.inject)(m.TYPES.SModelRegistry),h("design:type",E)],C.prototype,"registry",void 0),tf.SModelFactory=C=f([(0,w.injectable)()],C),tf.EMPTY_ROOT=Object.freeze({type:"NONE",id:"EMPTY"});function T(M,_){const I=new Set(M);if(_&&_.enable)for(const O of _.enable)I.add(O);if(_&&_.disable)for(const O of _.disable)I.delete(O);return I}return tf.createFeatureSet=T,tf}var K4={},v1t;function eN(){if(v1t)return K4;v1t=1;var f=K4&&K4.__decorate||function(w,m,P,g){var E=arguments.length,C=E<3?m:g===null?g=Object.getOwnPropertyDescriptor(m,P):g,T;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(w,m,P,g);else for(var M=w.length-1;M>=0;M--)(T=w[M])&&(C=(E<3?T(C):E>3?T(m,P,C):T(m,P))||C);return E>3&&C&&Object.defineProperty(m,P,C),C};Object.defineProperty(K4,"__esModule",{value:!0}),K4.AnimationFrameSyncer=void 0;const h=Zt();let b=class{constructor(){this.tasks=[],this.endTasks=[],this.triggered=!1}isAvailable(){return typeof requestAnimationFrame=="function"}onNextFrame(m){this.tasks.push(m),this.trigger()}onEndOfNextFrame(m){this.endTasks.push(m),this.trigger()}trigger(){this.triggered||(this.triggered=!0,this.isAvailable()?requestAnimationFrame(m=>this.run(m)):setTimeout(m=>this.run(m)))}run(m){const P=this.tasks,g=this.endTasks;this.triggered=!1,this.tasks=[],this.endTasks=[],P.forEach(E=>E.call(void 0,m)),g.forEach(E=>E.call(void 0,m))}};return K4.AnimationFrameSyncer=b,K4.AnimationFrameSyncer=b=f([(0,h.injectable)()],b),K4}var y1t;function Rye(){if(y1t)return Qv;y1t=1;var f=Qv&&Qv.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=Qv&&Qv.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)};Object.defineProperty(Qv,"__esModule",{value:!0}),Qv.ActionDispatcher=void 0;const b=Zt(),w=jc(),m=kye(),P=Qn(),g=ES(),E=eN();(0,w.setRequestContext)("client");let C=class{constructor(){this.postponedActions=[],this.requests=new Map}initialize(){return this.initialized||(this.initialized=this.actionHandlerRegistryProvider().then(M=>{this.actionHandlerRegistry=M,this.handleAction(w.SetModelAction.create(g.EMPTY_ROOT)).catch(()=>{})})),this.initialized}dispatch(M){return this.initialize().then(()=>{if(this.blockUntil!==void 0)return this.handleBlocked(M,this.blockUntil);if(this.diagramLocker.isAllowed(M))return this.handleAction(M)})}dispatchAll(M){return Promise.all(M.map(_=>this.dispatch(_)))}request(M){if(!M.requestId)return Promise.reject(new Error("Request without requestId"));const _=new m.Deferred;return this.requests.set(M.requestId,_),this.dispatch(M).catch(()=>{}),_.promise}handleAction(M){if(M.kind===w.UndoAction.KIND)return this.commandStack.undo().then(()=>{});if(M.kind===w.RedoAction.KIND)return this.commandStack.redo().then(()=>{});if((0,w.isResponseAction)(M)){const O=this.requests.get(M.responseId);if(O!==void 0){if(this.requests.delete(M.responseId),M.kind===w.RejectAction.KIND){const j=M;O.reject(new Error(j.message)),this.logger.warn(this,`Request with id ${M.responseId} failed.`,j.message,j.detail)}else O.resolve(M);return Promise.resolve()}this.logger.log(this,"No matching request for response",M)}const _=this.actionHandlerRegistry.get(M.kind);if(_.length===0){this.logger.warn(this,"Missing handler for action",M);const O=new Error(`Missing handler for action '${M.kind}'`);if((0,w.isRequestAction)(M)){const j=this.requests.get(M.requestId);j!==void 0&&(this.requests.delete(M.requestId),j.reject(O))}return Promise.reject(O)}this.logger.log(this,"Handle",M);const I=[];for(const O of _){const j=O.handle(M);(0,w.isAction)(j)?I.push(this.dispatch(j)):j!==void 0&&(I.push(this.commandStack.execute(j)),this.blockUntil=j.blockUntil)}return Promise.all(I)}handleBlocked(M,_){if(_(M)){this.blockUntil=void 0;const I=this.handleAction(M),O=this.postponedActions;this.postponedActions=[];for(const j of O)this.dispatch(j.action).then(j.resolve,j.reject);return I}else return this.logger.log(this,"Action is postponed due to block condition",M),new Promise((I,O)=>{this.postponedActions.push({action:M,resolve:I,reject:O})})}};return Qv.ActionDispatcher=C,f([(0,b.inject)(P.TYPES.ActionHandlerRegistryProvider),h("design:type",Function)],C.prototype,"actionHandlerRegistryProvider",void 0),f([(0,b.inject)(P.TYPES.ICommandStack),h("design:type",Object)],C.prototype,"commandStack",void 0),f([(0,b.inject)(P.TYPES.ILogger),h("design:type",Object)],C.prototype,"logger",void 0),f([(0,b.inject)(P.TYPES.AnimationFrameSyncer),h("design:type",E.AnimationFrameSyncer)],C.prototype,"syncer",void 0),f([(0,b.inject)(P.TYPES.IDiagramLocker),h("design:type",Object)],C.prototype,"diagramLocker",void 0),Qv.ActionDispatcher=C=f([(0,b.injectable)()],C),Qv}var Xh={},bL={},_1t;function EA(){if(_1t)return bL;_1t=1,Object.defineProperty(bL,"__esModule",{value:!0}),bL.isInjectable=void 0;function f(h){return Reflect.getMetadata("inversify:paramtypes",h)!==void 0}return bL.isInjectable=f,bL}var E1t;function lJ(){if(E1t)return Xh;E1t=1;var f=Xh&&Xh.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Xh&&Xh.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=Xh&&Xh.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(Xh,"__esModule",{value:!0}),Xh.onAction=Xh.configureActionHandler=Xh.ActionHandlerRegistry=void 0;const w=Zt(),m=Qn(),P=q3(),g=EA();let E=class extends P.MultiInstanceRegistry{constructor(_,I){super(),_.forEach(O=>this.register(O.actionKind,O.factory())),I.forEach(O=>this.initializeActionHandler(O))}initializeActionHandler(_){_.initialize(this)}};Xh.ActionHandlerRegistry=E,Xh.ActionHandlerRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.ActionHandlerRegistration)),b(0,(0,w.optional)()),b(1,(0,w.multiInject)(m.TYPES.IActionHandlerInitializer)),b(1,(0,w.optional)()),h("design:paramtypes",[Array,Array])],E);function C(M,_,I){if(typeof I=="function"){if(!(0,g.isInjectable)(I))throw new Error(`Action handlers should be @injectable: ${I.name}`);M.isBound(I)||M.bind(I).toSelf()}M.bind(m.TYPES.ActionHandlerRegistration).toDynamicValue(O=>({actionKind:_,factory:()=>O.container.get(I)}))}Xh.configureActionHandler=C;function T(M,_,I){M.bind(m.TYPES.ActionHandlerRegistration).toConstantValue({actionKind:_,factory:()=>({handle:I})})}return Xh.onAction=T,Xh}var q4={},S1t;function zpt(){if(S1t)return q4;S1t=1;var f=q4&&q4.__decorate||function(w,m,P,g){var E=arguments.length,C=E<3?m:g===null?g=Object.getOwnPropertyDescriptor(m,P):g,T;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(w,m,P,g);else for(var M=w.length-1;M>=0;M--)(T=w[M])&&(C=(E<3?T(C):E>3?T(m,P,C):T(m,P))||C);return E>3&&C&&Object.defineProperty(m,P,C),C};Object.defineProperty(q4,"__esModule",{value:!0}),q4.DefaultDiagramLocker=void 0;const h=Zt();let b=class{isAllowed(m){return!0}};return q4.DefaultDiagramLocker=b,q4.DefaultDiagramLocker=b=f([(0,h.injectable)()],b),q4}var EM={},pL={},P1t;function Vpt(){if(P1t)return pL;P1t=1,Object.defineProperty(pL,"__esModule",{value:!0}),pL.easeInOut=void 0;function f(h){return h<.5?h*h*2:1-(1-h)*(1-h)*2}return pL.easeInOut=f,pL}var M1t;function SA(){if(M1t)return EM;M1t=1,Object.defineProperty(EM,"__esModule",{value:!0}),EM.CompoundAnimation=EM.Animation=void 0;const f=Vpt();class h{constructor(m,P=f.easeInOut){this.context=m,this.ease=P,this.stopped=!1}start(){return this.stopped=!1,new Promise((m,P)=>{let g,E=0;const C=T=>{E++;let M;g===void 0?(g=T,M=0):M=T-g;const _=Math.min(1,M/this.context.duration),I=this.tween(this.ease(_),this.context);this.context.modelChanged.update(I),_===1?(this.context.logger.log(this,E*1e3/this.context.duration+" fps"),m(I)):this.stopped?(this.context.logger.log(this,"Animation stopped at "+_*100+"%"),m(I)):this.context.syncer.onNextFrame(C)};if(this.context.syncer.isAvailable())this.context.syncer.onNextFrame(C);else{const T=this.tween(1,this.context);m(T)}})}stop(){this.stopped=!0}}EM.Animation=h;class b extends h{constructor(m,P,g=[],E=f.easeInOut){super(P,E),this.model=m,this.context=P,this.components=g,this.ease=E}include(m){return this.components.push(m),this}tween(m,P){for(const g of this.components)g.tween(m,P);return this.model}}return EM.CompoundAnimation=b,EM}var su={},SM={},wL={},C1t;function fGt(){if(C1t)return wL;C1t=1,Object.defineProperty(wL,"__esModule",{value:!0}),wL.ServerActionHandlerRegistry=void 0;class f{constructor(){this.handlers=new Map}getHandler(b){return this.handlers.get(b)}onAction(b,w){this.handlers.has(b)?this.handlers.get(b).push(w):this.handlers.set(b,[w])}removeActionHandler(b,w){const m=this.handlers.get(b);if(m){const P=m.indexOf(w);P>=0&&m.splice(P,1)}}}return wL.ServerActionHandlerRegistry=f,wL}var mL={},qd={},I1t;function LM(){if(I1t)return qd;I1t=1,Object.defineProperty(qd,"__esModule",{value:!0}),qd.SModelIndex=qd.findElement=qd.getSubType=qd.getBasicType=qd.applyBounds=qd.cloneModel=void 0;function f(g){return JSON.parse(JSON.stringify(g))}qd.cloneModel=f;function h(g,E){const C=new P;C.add(g);for(const T of E.bounds){const M=C.getById(T.elementId);if(M){const _=M;T.newPosition&&(_.position={x:T.newPosition.x,y:T.newPosition.y}),T.newSize&&(_.size={width:T.newSize.width,height:T.newSize.height})}}if(E.alignments)for(const T of E.alignments){const M=C.getById(T.elementId);if(M){const _=M;_.alignment={x:T.newAlignment.x,y:T.newAlignment.y}}}}qd.applyBounds=h;function b(g){if(!g.type)return"";const E=g.type.indexOf(":");return E>=0?g.type.substring(0,E):g.type}qd.getBasicType=b;function w(g){if(!g.type)return"";const E=g.type.indexOf(":");return E>=0?g.type.substring(E+1):g.type}qd.getSubType=w;function m(g,E){if(g.id===E)return g;if(g.children)for(const C of g.children){const T=m(C,E);if(T!==void 0)return T}}qd.findElement=m;class P{constructor(){this.id2element=new Map,this.id2parent=new Map}add(E){if(E.id){if(this.contains(E))throw new Error("Duplicate ID in model: "+E.id)}else throw new Error("Model element has no ID.");if(this.id2element.set(E.id,E),Array.isArray(E.children))for(const C of E.children)this.add(C),this.id2parent.set(C.id,E);return this}remove(E){if(this.id2element.delete(E.id),Array.isArray(E.children))for(const C of E.children)this.id2parent.delete(C.id),this.remove(C);return this}contains(E){return this.id2element.has(E.id)}getById(E){return this.id2element.get(E)}getParent(E){return this.id2parent.get(E)}getRoot(E){let C=E;for(;C;){const T=this.id2parent.get(C.id);if(T===void 0)return C;C=T}throw new Error("Element has no root")}}return qd.SModelIndex=P,qd}var T1t;function hGt(){if(T1t)return mL;T1t=1,Object.defineProperty(mL,"__esModule",{value:!0}),mL.DiagramServer=void 0;const f=jc(),h=kye(),b=LM();class w{constructor(P,g){this.state={currentRoot:{type:"NONE",id:"ROOT"},revision:0},this.requests=new Map,this.dispatch=P,this.diagramGenerator=g.DiagramGenerator,this.layoutEngine=g.ModelLayoutEngine,this.actionHandlerRegistry=g.ServerActionHandlerRegistry}setModel(P){return P.revision=++this.state.revision,this.state.currentRoot=P,this.submitModel(P,!1)}updateModel(P){return P.revision=++this.state.revision,this.state.currentRoot=P,this.submitModel(P,!0)}get needsClientLayout(){return this.state.options&&this.state.options.needsClientLayout!==void 0?!!this.state.options.needsClientLayout:!0}get needsServerLayout(){return this.state.options&&this.state.options.needsServerLayout!==void 0?!!this.state.options.needsServerLayout:!1}accept(P){if((0,f.isResponseAction)(P)){const g=P.responseId,E=this.requests.get(g);if(E){if(this.requests.delete(g),P.kind===f.RejectAction.KIND){const C=P;E.reject(new Error(C.message)),console.warn(`Request with id ${P.responseId} failed: ${C.message}`,C.detail)}else E.resolve(P);return Promise.resolve()}console.info("No matching request for response:",P)}return this.handleAction(P)}request(P){P.requestId||(P.requestId="server_"+(0,f.generateRequestId)());const g=new h.Deferred;return this.requests.set(P.requestId,g),this.dispatch(P).catch(E=>{this.requests.delete(P.requestId),g.reject(E)}),g.promise}rejectRemoteRequest(P,g){P&&(0,f.isRequestAction)(P)&&this.dispatch({kind:f.RejectAction.KIND,responseId:P.requestId,message:g.message,detail:g.stack})}handleAction(P){var g,E;const C=(g=this.actionHandlerRegistry)===null||g===void 0?void 0:g.getHandler(P.kind);if(C&&C.length===1)return(E=C[0](P,this.state,this))!==null&&E!==void 0?E:Promise.resolve();if(C&&C.length>1)return Promise.all(C.map(T=>{var M;return(M=T(P,this.state,this))!==null&&M!==void 0?M:Promise.resolve()}));switch(P.kind){case f.RequestModelAction.KIND:return this.handleRequestModel(P);case f.ComputedBoundsAction.KIND:return this.handleComputedBounds(P);case f.LayoutAction.KIND:return this.handleLayout(P)}return console.warn(`Unhandled action from client: ${P.kind}`),Promise.resolve()}async handleRequestModel(P){var g;this.state.options=P.options;try{const E=await this.diagramGenerator.generate({options:(g=this.state.options)!==null&&g!==void 0?g:{},state:this.state});E.revision=++this.state.revision,this.state.currentRoot=E,await this.submitModel(this.state.currentRoot,!1,P)}catch(E){this.rejectRemoteRequest(P,E),console.error("Failed to generate diagram:",E)}}async submitModel(P,g,E){if(this.needsClientLayout)if(!this.needsServerLayout)this.dispatch({kind:f.RequestBoundsAction.KIND,newRoot:P});else{const C=f.RequestBoundsAction.create(P),T=await this.request(C),M=this.state.currentRoot;T.revision===M.revision?((0,b.applyBounds)(M,T),await this.doSubmitModel(M,g,E)):this.rejectRemoteRequest(E,new Error(`Model revision does not match: ${T.revision}`))}else await this.doSubmitModel(P,g,E)}async doSubmitModel(P,g,E){if(P.revision!==this.state.revision)return;this.needsServerLayout&&this.layoutEngine&&(P=await this.layoutEngine.layout(P));const C=P.type;if(E&&E.kind===f.RequestModelAction.KIND){const T=E.requestId,M=f.SetModelAction.create(P,T);await this.dispatch(M)}else g&&C===this.state.lastSubmittedModelType?await this.dispatch({kind:f.UpdateModelAction.KIND,newRoot:P,cause:E}):await this.dispatch({kind:f.SetModelAction.KIND,newRoot:P});this.state.lastSubmittedModelType=C}handleComputedBounds(P){return P.revision!==this.state.currentRoot.revision?Promise.reject():((0,b.applyBounds)(this.state.currentRoot,P),Promise.resolve())}async handleLayout(P){if(this.layoutEngine){if(!this.needsServerLayout){let g=(0,b.cloneModel)(this.state.currentRoot);g=await this.layoutEngine.layout(g),g.revision=++this.state.revision,this.state.currentRoot=g}await this.doSubmitModel(this.state.currentRoot,!0,P)}}}return mL.DiagramServer=w,mL}var Jme={},j1t;function dGt(){return j1t||(j1t=1,Object.defineProperty(Jme,"__esModule",{value:!0})),Jme}var PM={},A1t;function gGt(){if(A1t)return PM;A1t=1,Object.defineProperty(PM,"__esModule",{value:!0}),PM.isZoomable=PM.isScrollable=void 0;const f=_S();function h(w){return(0,f.hasOwnProperty)(w,"scroll")}PM.isScrollable=h;function b(w){return(0,f.hasOwnProperty)(w,"zoom")}return PM.isZoomable=b,PM}var Qme={},O1t;function bGt(){return O1t||(O1t=1,Object.defineProperty(Qme,"__esModule",{value:!0})),Qme}var D1t;function Sp(){return D1t||(D1t=1,(function(f){var h=SM&&SM.__createBinding||(Object.create?(function(w,m,P,g){g===void 0&&(g=P);var E=Object.getOwnPropertyDescriptor(m,P);(!E||("get"in E?!m.__esModule:E.writable||E.configurable))&&(E={enumerable:!0,get:function(){return m[P]}}),Object.defineProperty(w,g,E)}):(function(w,m,P,g){g===void 0&&(g=P),w[g]=m[P]})),b=SM&&SM.__exportStar||function(w,m){for(var P in w)P!=="default"&&!Object.prototype.hasOwnProperty.call(m,P)&&h(m,w,P)};Object.defineProperty(f,"__esModule",{value:!0}),b(fGt(),f),b(jc(),f),b(hGt(),f),b(dGt(),f),b(gGt(),f),b(kye(),f),b(Ac(),f),b(bGt(),f),b(LM(),f),b(_S(),f)})(SM)),SM}var k1t;function Ca(){if(k1t)return su;k1t=1;var f=su&&su.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k};Object.defineProperty(su,"__esModule",{value:!0}),su.ResetCommand=su.SystemCommand=su.PopupCommand=su.HiddenCommand=su.MergeableCommand=su.Command=su.isStoppableCommand=void 0,vye();const h=Zt(),b=Sp();function w(M){return M&&(0,b.hasOwnProperty)(M,"stoppableCommandKey")&&"stopExecution"in M&&typeof M.stopExecution=="function"}su.isStoppableCommand=w;let m=class{};su.Command=m,su.Command=m=f([(0,h.injectable)()],m);let P=class extends m{merge(_,I){return!1}};su.MergeableCommand=P,su.MergeableCommand=P=f([(0,h.injectable)()],P);let g=class extends m{undo(_){return _.logger.error(this,"Cannot undo a hidden command"),_.root}redo(_){return _.logger.error(this,"Cannot redo a hidden command"),_.root}};su.HiddenCommand=g,su.HiddenCommand=g=f([(0,h.injectable)()],g);let E=class extends m{};su.PopupCommand=E,su.PopupCommand=E=f([(0,h.injectable)()],E);let C=class extends m{};su.SystemCommand=C,su.SystemCommand=C=f([(0,h.injectable)()],C);let T=class extends m{};return su.ResetCommand=T,su.ResetCommand=T=f([(0,h.injectable)()],T),su}var Jh={},R1t;function kb(){if(R1t)return Jh;R1t=1;var f=Jh&&Jh.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=Jh&&Jh.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=Jh&&Jh.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(Jh,"__esModule",{value:!0}),Jh.configureCommand=Jh.CommandActionHandlerInitializer=Jh.CommandActionHandler=void 0;const w=Zt(),m=EA(),P=Qn();class g{constructor(M){this.commandRegistration=M}handle(M){return this.commandRegistration.factory(M)}}Jh.CommandActionHandler=g;let E=class{constructor(M){this.registrations=M}initialize(M){this.registrations.forEach(_=>M.register(_.kind,new g(_)))}};Jh.CommandActionHandlerInitializer=E,Jh.CommandActionHandlerInitializer=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.CommandRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);function C(T,M){if(!(0,m.isInjectable)(M))throw new Error(`Commands should be @injectable: ${M.name}`);T.isBound(M)||T.bind(M).toSelf(),T.bind(P.TYPES.CommandRegistration).toDynamicValue(_=>({kind:M.KIND,factory:I=>{const O=new w.Container;return O.parent=_.container,O.bind(P.TYPES.Action).toConstantValue(I),O.get(M)}}))}return Jh.configureCommand=C,Jh}var Zme={},x1t;function Gpt(){return x1t||(x1t=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.overrideCommandStackOptions=f.configureCommandStackOptions=f.defaultCommandStackOptions=void 0;const h=_S(),b=Qn(),w=()=>({defaultDuration:250,undoHistoryLimit:50});f.defaultCommandStackOptions=w;function m(g,E){const C=Object.assign(Object.assign({},(0,f.defaultCommandStackOptions)()),E);g.isBound(b.TYPES.CommandStackOptions)?g.rebind(b.TYPES.CommandStackOptions).toConstantValue(C):g.bind(b.TYPES.CommandStackOptions).toConstantValue(C)}f.configureCommandStackOptions=m;function P(g,E){const C=g.get(b.TYPES.CommandStackOptions);return(0,h.safeAssign)(C,E),C}f.overrideCommandStackOptions=P})(Zme)),Zme}var cy={},L1t;function Upt(){if(L1t)return cy;L1t=1;var f=cy&&cy.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=cy&&cy.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)};Object.defineProperty(cy,"__esModule",{value:!0}),cy.CommandStack=void 0;const b=Zt(),w=Qn(),m=ES(),P=Oc(),g=eN(),E=Ca();let C=class{constructor(){this.undoStack=[],this.redoStack=[],this.stoppableCommands=new Map,this.offStack=[]}initialize(){this.currentPromise=Promise.resolve({main:{model:this.modelFactory.createRoot(m.EMPTY_ROOT),modelChanged:!1},hidden:{model:this.modelFactory.createRoot(m.EMPTY_ROOT),modelChanged:!1},popup:{model:this.modelFactory.createRoot(m.EMPTY_ROOT),modelChanged:!1}})}get currentModel(){return this.currentPromise.then(_=>_.main.model)}executeAll(_){return _.forEach(I=>{this.logger.log(this,"Executing",I),this.handleCommand(I,I.execute,this.mergeOrPush)}),this.thenUpdate()}execute(_){return this.logger.log(this,"Executing",_),this.handleCommand(_,_.execute,this.mergeOrPush),this.thenUpdate()}undo(){this.undoOffStackSystemCommands(),this.undoPreceedingSystemCommands();const _=this.undoStack[this.undoStack.length-1];return _!==void 0&&!this.isBlockUndo(_)&&(this.undoStack.pop(),this.logger.log(this,"Undoing",_),this.handleCommand(_,_.undo,(I,O)=>{this.redoStack.push(I)})),this.thenUpdate()}redo(){this.undoOffStackSystemCommands();const _=this.redoStack.pop();return _!==void 0&&(this.logger.log(this,"Redoing",_),this.handleCommand(_,_.redo,(I,O)=>{this.pushToUndoStack(I)})),this.redoFollowingSystemCommands(),this.thenUpdate()}handleCommand(_,I,O){if((0,E.isStoppableCommand)(_)){const j=this.stoppableCommands.get(_.stoppableCommandKey);j&&j.stopExecution(),this.stoppableCommands.set(_.stoppableCommandKey,_)}this.currentPromise=this.currentPromise.then(j=>new Promise(k=>{let x;_ instanceof E.HiddenCommand?x="hidden":_ instanceof E.PopupCommand?x="popup":x="main";const R=this.createContext(j.main.model);let H;try{H=I.call(_,R)}catch($){this.logger.error(this,"Failed to execute command:",$),H=j[x].model}const F=T(j);H instanceof Promise?H.then($=>{x==="main"&&O.call(this,_,R),F[x]={model:$,modelChanged:!0},k(F)}):H instanceof P.SModelRootImpl?(x==="main"&&O.call(this,_,R),F[x]={model:H,modelChanged:!0},k(F)):(x==="main"&&O.call(this,_,R),F[x]={model:H.model,modelChanged:j[x].modelChanged||H.modelChanged,cause:H.cause},k(F))}))}pushToUndoStack(_){this.undoStack.push(_),this.options.undoHistoryLimit>=0&&this.undoStack.length>this.options.undoHistoryLimit&&this.undoStack.splice(0,this.undoStack.length-this.options.undoHistoryLimit)}thenUpdate(){return this.currentPromise=this.currentPromise.then(_=>{const I=T(_);return _.hidden.modelChanged&&(this.updateHidden(_.hidden.model,_.hidden.cause),I.hidden.modelChanged=!1,I.hidden.cause=void 0),_.main.modelChanged&&(this.update(_.main.model,_.main.cause),I.main.modelChanged=!1,I.main.cause=void 0),_.popup.modelChanged&&(this.updatePopup(_.popup.model,_.popup.cause),I.popup.modelChanged=!1,I.popup.cause=void 0),I}),this.currentModel}update(_,I){this.modelViewer===void 0&&(this.modelViewer=this.viewerProvider.modelViewer),this.modelViewer.update(_,I)}updateHidden(_,I){this.hiddenModelViewer===void 0&&(this.hiddenModelViewer=this.viewerProvider.hiddenModelViewer),this.hiddenModelViewer.update(_,I)}updatePopup(_,I){this.popupModelViewer===void 0&&(this.popupModelViewer=this.viewerProvider.popupModelViewer),this.popupModelViewer.update(_,I)}mergeOrPush(_,I){if(this.isBlockUndo(_)){this.undoStack=[],this.redoStack=[],this.offStack=[],this.pushToUndoStack(_);return}if(this.isPushToOffStack(_)&&this.redoStack.length>0){if(this.offStack.length>0){const O=this.offStack[this.offStack.length-1];if(O instanceof E.MergeableCommand&&O.merge(_,I))return}this.offStack.push(_);return}if(this.isPushToUndoStack(_)){if(this.offStack.forEach(O=>this.undoStack.push(O)),this.offStack=[],this.redoStack=[],this.undoStack.length>0){const O=this.undoStack[this.undoStack.length-1];if(O instanceof E.MergeableCommand&&O.merge(_,I))return}this.pushToUndoStack(_)}}undoOffStackSystemCommands(){let _=this.offStack.pop();for(;_!==void 0;)this.logger.log(this,"Undoing off-stack",_),this.handleCommand(_,_.undo,()=>{}),_=this.offStack.pop()}undoPreceedingSystemCommands(){let _=this.undoStack[this.undoStack.length-1];for(;_!==void 0&&this.isPushToOffStack(_);)this.undoStack.pop(),this.logger.log(this,"Undoing",_),this.handleCommand(_,_.undo,(I,O)=>{this.redoStack.push(I)}),_=this.undoStack[this.undoStack.length-1]}redoFollowingSystemCommands(){let _=this.redoStack[this.redoStack.length-1];for(;_!==void 0&&this.isPushToOffStack(_);)this.redoStack.pop(),this.logger.log(this,"Redoing ",_),this.handleCommand(_,_.redo,(I,O)=>{this.pushToUndoStack(I)}),_=this.redoStack[this.redoStack.length-1]}createContext(_){return{root:_,modelChanged:this,modelFactory:this.modelFactory,duration:this.options.defaultDuration,logger:this.logger,syncer:this.syncer}}isPushToOffStack(_){return _ instanceof E.SystemCommand}isPushToUndoStack(_){return!(_ instanceof E.HiddenCommand)}isBlockUndo(_){return _ instanceof E.ResetCommand}};cy.CommandStack=C,f([(0,b.inject)(w.TYPES.IModelFactory),h("design:type",Object)],C.prototype,"modelFactory",void 0),f([(0,b.inject)(w.TYPES.IViewerProvider),h("design:type",Object)],C.prototype,"viewerProvider",void 0),f([(0,b.inject)(w.TYPES.ILogger),h("design:type",Object)],C.prototype,"logger",void 0),f([(0,b.inject)(w.TYPES.AnimationFrameSyncer),h("design:type",g.AnimationFrameSyncer)],C.prototype,"syncer",void 0),f([(0,b.inject)(w.TYPES.CommandStackOptions),h("design:type",Object)],C.prototype,"options",void 0),f([(0,b.postConstruct)(),h("design:type",Function),h("design:paramtypes",[]),h("design:returntype",void 0)],C.prototype,"initialize",null),cy.CommandStack=C=f([(0,b.injectable)()],C);function T(M){return{main:Object.assign({},M.main),hidden:Object.assign({},M.hidden),popup:Object.assign({},M.popup)}}return cy}var fh={},Hd={},N1t;function My(){if(N1t)return Hd;N1t=1,Object.defineProperty(Hd,"__esModule",{value:!0}),Hd.isSVGGraphicsElement=Hd.hitsMouseEvent=Hd.getWindowScroll=Hd.isCrossSite=Hd.isMac=Hd.isCtrlOrCmd=void 0;const f=Sp();function h(E){return b()?E.metaKey:E.ctrlKey}Hd.isCtrlOrCmd=h;function b(){return window.navigator.userAgent.indexOf("Mac")!==-1}Hd.isMac=b;function w(E){if(E&&typeof window<"u"&&window.location){let C="";return window.location.protocol&&(C+=window.location.protocol+"//"),window.location.host&&(C+=window.location.host),C.length>0&&!E.startsWith(C)}return!1}Hd.isCrossSite=w;function m(){return typeof window>"u"?f.Point.ORIGIN:{x:window.pageXOffset,y:window.pageYOffset}}Hd.getWindowScroll=m;function P(E,C){const T=E.getBoundingClientRect();return C.clientX>=T.left&&C.clientX<=T.right&&C.clientY>=T.top&&C.clientY<=T.bottom}Hd.hitsMouseEvent=P;function g(E){return typeof E.getBBox=="function"}return Hd.isSVGGraphicsElement=g,Hd}var F1t;function fJ(){if(F1t)return fh;F1t=1;var f=fh&&fh.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h=fh&&fh.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)},b=fh&&fh.__param||function(I,O){return function(j,k){O(j,k,I)}};Object.defineProperty(fh,"__esModule",{value:!0}),fh.InitializeCanvasBoundsCommand=fh.InitializeCanvasBoundsAction=fh.CanvasBoundsInitializer=void 0;const w=Zt(),m=Ac(),P=Qn(),g=Oc(),E=Ca(),C=My();let T=class{decorate(O,j){return j instanceof g.SModelRootImpl&&!m.Dimension.isValid(j.canvasBounds)&&(this.rootAndVnode=[j,O]),O}postUpdate(){if(this.rootAndVnode!==void 0){const O=this.rootAndVnode[1].elm,j=this.rootAndVnode[0].canvasBounds;if(O!==void 0){const k=this.getBoundsInPage(O);(0,m.almostEquals)(k.x,j.x)&&(0,m.almostEquals)(k.y,j.y)&&(0,m.almostEquals)(k.width,j.width)&&(0,m.almostEquals)(k.height,j.width)||this.actionDispatcher.dispatch(M.create(k))}this.rootAndVnode=void 0}}getBoundsInPage(O){const j=O.getBoundingClientRect(),k=(0,C.getWindowScroll)();return{x:j.left+k.x,y:j.top+k.y,width:j.width,height:j.height}}};fh.CanvasBoundsInitializer=T,f([(0,w.inject)(P.TYPES.IActionDispatcher),h("design:type",Object)],T.prototype,"actionDispatcher",void 0),fh.CanvasBoundsInitializer=T=f([(0,w.injectable)()],T);var M;(function(I){I.KIND="initializeCanvasBounds";function O(j){return{kind:I.KIND,newCanvasBounds:j}}I.create=O})(M||(fh.InitializeCanvasBoundsAction=M={}));let _=class extends E.SystemCommand{constructor(O){super(),this.action=O}execute(O){return this.newCanvasBounds=this.action.newCanvasBounds,O.root.canvasBounds=this.newCanvasBounds,O.root}undo(O){return O.root}redo(O){return O.root}};return fh.InitializeCanvasBoundsCommand=_,_.KIND=M.KIND,fh.InitializeCanvasBoundsCommand=_=f([(0,w.injectable)(),b(0,(0,w.inject)(P.TYPES.Action)),h("design:paramtypes",[Object])],_),fh}var gp={},B1t;function xye(){if(B1t)return gp;B1t=1;var f=gp&&gp.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=gp&&gp.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=gp&&gp.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(gp,"__esModule",{value:!0}),gp.SetModelCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=fJ();let C=class extends P.ResetCommand{constructor(M){super(),this.action=M}execute(M){return this.oldRoot=M.modelFactory.createRoot(M.root),this.newRoot=M.modelFactory.createRoot(this.action.newRoot),this.newRoot}undo(M){return this.oldRoot}redo(M){return this.newRoot}get blockUntil(){return M=>M.kind===E.InitializeCanvasBoundsCommand.KIND}};return gp.SetModelCommand=C,C.KIND=m.SetModelAction.KIND,gp.SetModelCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],C),gp}var hh={},$1t;function Qh(){if($1t)return hh;$1t=1,Object.defineProperty(hh,"__esModule",{value:!0}),hh.transformToRootBounds=hh.containsSome=hh.translateBounds=hh.translatePoint=hh.findParentByFeature=hh.findParent=hh.registerModelElement=void 0;const f=Qn(),h=Oc();function b(T,M,_,I,O){T.bind(f.TYPES.SModelElementRegistration).toConstantValue({type:M,constr:_,features:I,isOverride:O})}hh.registerModelElement=b;function w(T,M){let _=T;for(;_!==void 0;){if(M(_))return _;_ instanceof h.SChildElementImpl?_=_.parent:_=void 0}return _}hh.findParent=w;function m(T,M){let _=T;for(;_!==void 0;){if(M(_))return _;_ instanceof h.SChildElementImpl?_=_.parent:_=void 0}return _}hh.findParentByFeature=m;function P(T,M,_){if(M!==_){for(;M instanceof h.SChildElementImpl;)if(T=M.localToParent(T),M=M.parent,M===_)return T;const I=[];for(;_ instanceof h.SChildElementImpl;)I.push(_),_=_.parent;if(M!==_)throw new Error("Incompatible source and target: "+M.id+", "+_.id);for(let O=I.length-1;O>=0;O--)T=I[O].parentToLocal(T)}return T}hh.translatePoint=P;function g(T,M,_){const I=P(T,M,_),O=P({x:T.x+T.width,y:T.y+T.height},M,_);return{x:I.x,y:I.y,width:O.x-I.x,height:O.y-I.y}}hh.translateBounds=g;function E(T,M){const _=O=>T.index.getById(O.id)!==void 0,I=O=>O.some(j=>_(j)||I(j.children));return I([M])}hh.containsSome=E;function C(T,M){for(;T instanceof h.SChildElementImpl;)M=T.localToParent(M),T=T.parent;return M}return hh.transformToRootBounds=C,hh}var dh={},K1t;function hJ(){if(K1t)return dh;K1t=1;var f=dh&&dh.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=dh&&dh.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=dh&&dh.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(dh,"__esModule",{value:!0}),dh.SetUIExtensionVisibilityCommand=dh.SetUIExtensionVisibilityAction=dh.UIExtensionRegistry=void 0;const w=Zt(),m=q3(),P=Ca(),g=Qn();let E=class extends m.InstanceRegistry{constructor(_=[]){super(),_.forEach(I=>this.register(I.id(),I))}};dh.UIExtensionRegistry=E,dh.UIExtensionRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.IUIExtension)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);var C;(function(M){M.KIND="setUIExtensionVisibility";function _(I){var O;return{kind:M.KIND,extensionId:I.extensionId,visible:I.visible,contextElementsId:(O=I.contextElementsId)!==null&&O!==void 0?O:[]}}M.create=_})(C||(dh.SetUIExtensionVisibilityAction=C={}));let T=class extends P.SystemCommand{constructor(_){super(),this.action=_}execute(_){const I=this.registry.get(this.action.extensionId);return I&&(this.action.visible?I.show(_.root,...this.action.contextElementsId):I.hide()),{model:_.root,modelChanged:!1}}undo(_){return{model:_.root,modelChanged:!1}}redo(_){return{model:_.root,modelChanged:!1}}};return dh.SetUIExtensionVisibilityCommand=T,T.KIND=C.KIND,f([(0,w.inject)(g.TYPES.UIExtensionRegistry),h("design:type",E)],T.prototype,"registry",void 0),dh.SetUIExtensionVisibilityCommand=T=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],T),dh}var bp={},q1t;function Lye(){if(q1t)return bp;q1t=1;var f=bp&&bp.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=bp&&bp.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(bp,"__esModule",{value:!0}),bp.AbstractUIExtension=bp.isUIExtension=void 0;const b=Zt(),w=Sp(),m=Qn();function P(E){return(0,w.hasOwnProperty)(E,"id","function")&&(0,w.hasOwnProperty)(E,"show","function")&&(0,w.hasOwnProperty)(E,"hide","function")}bp.isUIExtension=P;let g=class{show(C,...T){this.activeElement=document.activeElement,!(!this.containerElement&&!this.initialize())&&(this.onBeforeShow(this.containerElement,C,...T),this.setContainerVisible(!0))}hide(){this.setContainerVisible(!1),this.restoreFocus(),this.activeElement=null}restoreFocus(){const C=this.activeElement;C&&C.focus()}initialize(){const C=document.getElementById(this.options.baseDiv);return C?(this.containerElement=this.getOrCreateContainer(C.id),this.initializeContents(this.containerElement),C&&C.insertBefore(this.containerElement,C.firstChild),!0):(this.logger.warn(this,`Could not obtain sprotty base container for initializing UI extension ${this.id}`,this),!1)}getOrCreateContainer(C){let T=document.getElementById(this.id());return T===null&&(T=document.createElement("div"),T.id=C+"_"+this.id(),T.classList.add(this.containerClass())),T}setContainerVisible(C){this.containerElement&&(C?(this.containerElement.style.visibility="visible",this.containerElement.style.opacity="1"):(this.containerElement.style.visibility="hidden",this.containerElement.style.opacity="0"))}onBeforeShow(C,T,...M){}};return bp.AbstractUIExtension=g,f([(0,b.inject)(m.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"options",void 0),f([(0,b.inject)(m.TYPES.ILogger),h("design:type",Object)],g.prototype,"logger",void 0),bp.AbstractUIExtension=g=f([(0,b.injectable)()],g),bp}var zd={},nf={},H1t;function mh(){if(H1t)return nf;H1t=1,Object.defineProperty(nf,"__esModule",{value:!0}),nf.getAttrs=nf.on=nf.mergeStyle=nf.copyClassesFromElement=nf.copyClassesFromVNode=nf.setNamespace=nf.setClass=nf.setAttr=void 0;function f(_,I,O){E(_)[I]=O}nf.setAttr=f;function h(_,I,O){T(_)[I]=O}nf.setClass=h;function b(_,I){_.data===void 0&&(_.data={}),_.data.ns=I;const O=_.children;if(O!==void 0)for(let j=0;jh(I,j,!0))}nf.copyClassesFromVNode=w;function m(_,I){const O=_.classList;for(let j=0;j=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=zd&&zd.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=zd&&zd.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(zd,"__esModule",{value:!0}),zd.KeyListener=zd.KeyTool=void 0;const w=Zt(),m=Qn(),P=Oc(),g=mh();let E=class{constructor(M=[]){this.keyListeners=M}register(M){this.keyListeners.push(M)}deregister(M){const _=this.keyListeners.indexOf(M);_>=0&&this.keyListeners.splice(_,1)}handleEvent(M,_,I){const O=this.keyListeners.map(j=>j[M].apply(j,[_,I])).reduce((j,k)=>j.concat(k));O.length>0&&(I.preventDefault(),this.actionDispatcher.dispatchAll(O))}keyDown(M,_){this.handleEvent("keyDown",M,_)}keyUp(M,_){this.handleEvent("keyUp",M,_)}focus(){}decorate(M,_){return _ instanceof P.SModelRootImpl&&((0,g.on)(M,"focus",this.focus.bind(this,_)),(0,g.on)(M,"keydown",this.keyDown.bind(this,_)),(0,g.on)(M,"keyup",this.keyUp.bind(this,_))),M}postUpdate(){}};zd.KeyTool=E,f([(0,w.inject)(m.TYPES.IActionDispatcher),h("design:type",Object)],E.prototype,"actionDispatcher",void 0),zd.KeyTool=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.KeyListener)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);let C=class{keyDown(M,_){return[]}keyUp(M,_){return[]}};return zd.KeyListener=C,zd.KeyListener=C=f([(0,w.injectable)()],C),zd}var Qa={},sy={},V1t;function tN(){if(V1t)return sy;V1t=1;var f=sy&&sy.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M},h=sy&&sy.__metadata||function(P,g){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(P,g)};Object.defineProperty(sy,"__esModule",{value:!0}),sy.DOMHelper=void 0;const b=Zt(),w=Qn();let m=class{getPrefix(){return this.viewerOptions!==void 0&&this.viewerOptions.baseDiv!==void 0?this.viewerOptions.baseDiv+"_":""}createUniqueDOMElementId(g){return this.getPrefix()+g.id}findSModelIdByDOMElement(g){return g.id.replace(this.getPrefix(),"")}};return sy.DOMHelper=m,f([(0,b.inject)(w.TYPES.ViewerOptions),h("design:type",Object)],m.prototype,"viewerOptions",void 0),sy.DOMHelper=m=f([(0,b.injectable)()],m),sy}var G1t;function Pp(){if(G1t)return Qa;G1t=1;var f=Qa&&Qa.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=Qa&&Qa.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)},b=Qa&&Qa.__param||function(O,j){return function(k,x){j(k,x,O)}};Object.defineProperty(Qa,"__esModule",{value:!0}),Qa.MousePositionTracker=Qa.MouseListener=Qa.PopupMouseTool=Qa.MouseTool=void 0;const w=Zt(),m=jc(),P=Oc(),g=Qn(),E=tN(),C=mh();let T=class{constructor(j=[]){this.mouseListeners=j}register(j){this.mouseListeners.push(j)}deregister(j){const k=this.mouseListeners.indexOf(j);k>=0&&this.mouseListeners.splice(k,1)}getTargetElement(j,k){let x=k.target;const R=j.index;for(;x;){if(x.id){const H=R.getById(this.domHelper.findSModelIdByDOMElement(x));if(H!==void 0)return H}x=x.parentNode}}handleEvent(j,k,x){this.focusOnMouseEvent(j,k);const R=this.getTargetElement(k,x);if(!R)return;const H=this.mouseListeners.map(F=>F[j](R,x)).reduce((F,$)=>F.concat($));if(H.length>0){x.preventDefault();for(const F of H)(0,m.isAction)(F)?this.actionDispatcher.dispatch(F):F.then($=>{this.actionDispatcher.dispatch($)})}}focusOnMouseEvent(j,k){if(document&&j==="mouseDown"){const x=document.getElementById(this.domHelper.createUniqueDOMElementId(k));x!==null&&typeof x.focus=="function"&&x.focus()}}mouseOver(j,k){this.handleEvent("mouseOver",j,k)}mouseOut(j,k){this.handleEvent("mouseOut",j,k)}mouseEnter(j,k){this.handleEvent("mouseEnter",j,k)}mouseLeave(j,k){this.handleEvent("mouseLeave",j,k)}mouseDown(j,k){this.handleEvent("mouseDown",j,k)}mouseMove(j,k){this.handleEvent("mouseMove",j,k)}mouseUp(j,k){this.handleEvent("mouseUp",j,k)}wheel(j,k){this.handleEvent("wheel",j,k)}contextMenu(j,k){k.preventDefault(),this.handleEvent("contextMenu",j,k)}doubleClick(j,k){this.handleEvent("doubleClick",j,k)}decorate(j,k){return k instanceof P.SModelRootImpl&&((0,C.on)(j,"mouseover",this.mouseOver.bind(this,k)),(0,C.on)(j,"mouseout",this.mouseOut.bind(this,k)),(0,C.on)(j,"mouseenter",this.mouseEnter.bind(this,k)),(0,C.on)(j,"mouseleave",this.mouseLeave.bind(this,k)),(0,C.on)(j,"mousedown",this.mouseDown.bind(this,k)),(0,C.on)(j,"mouseup",this.mouseUp.bind(this,k)),(0,C.on)(j,"mousemove",this.mouseMove.bind(this,k)),(0,C.on)(j,"wheel",this.wheel.bind(this,k)),(0,C.on)(j,"contextmenu",this.contextMenu.bind(this,k)),(0,C.on)(j,"dblclick",this.doubleClick.bind(this,k)),(0,C.on)(j,"dragover",x=>this.handleEvent("dragOver",k,x)),(0,C.on)(j,"drop",x=>this.handleEvent("drop",k,x))),j=this.mouseListeners.reduce((x,R)=>R.decorate(x,k),j),j}postUpdate(){}};Qa.MouseTool=T,f([(0,w.inject)(g.TYPES.IActionDispatcher),h("design:type",Object)],T.prototype,"actionDispatcher",void 0),f([(0,w.inject)(g.TYPES.DOMHelper),h("design:type",E.DOMHelper)],T.prototype,"domHelper",void 0),Qa.MouseTool=T=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.MouseListener)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],T);let M=class extends T{constructor(j=[]){super(j),this.mouseListeners=j}};Qa.PopupMouseTool=M,Qa.PopupMouseTool=M=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.PopupMouseListener)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],M);let _=class{mouseOver(j,k){return[]}mouseOut(j,k){return[]}mouseEnter(j,k){return[]}mouseLeave(j,k){return[]}mouseDown(j,k){return[]}mouseMove(j,k){return[]}mouseUp(j,k){return[]}wheel(j,k){return[]}doubleClick(j,k){return[]}contextMenu(j,k){return[]}dragOver(j,k){return[]}drop(j,k){return[]}decorate(j,k){return j}};Qa.MouseListener=_,Qa.MouseListener=_=f([(0,w.injectable)()],_);let I=class extends _{mouseMove(j,k){return this.lastPosition=j.root.parentToLocal({x:k.offsetX,y:k.offsetY}),[]}get lastPositionOnDiagram(){return this.lastPosition}};return Qa.MousePositionTracker=I,Qa.MousePositionTracker=I=f([(0,w.injectable)()],I),Qa}var uy={};function pGt(f,h){return document.createElement(f,h)}function wGt(f,h,b){return document.createElementNS(f,h,b)}function mGt(){return AM(document.createDocumentFragment())}function vGt(f){return document.createTextNode(f)}function yGt(f){return document.createComment(f)}function _Gt(f,h,b){if(O3(f)){let w=f;for(;w&&O3(w);)w=AM(w).parent;f=w??f}O3(h)&&(h=AM(h,f)),b&&O3(b)&&(b=AM(b).firstChildNode),f.insertBefore(h,b)}function EGt(f,h){f.removeChild(h)}function SGt(f,h){O3(h)&&(h=AM(h,f)),f.appendChild(h)}function Wpt(f){if(O3(f)){for(;f&&O3(f);)f=AM(f).parent;return f??null}return f.parentNode}function PGt(f){var h;if(O3(f)){const b=AM(f),w=Wpt(b);if(w&&b.lastChildNode){const m=Array.from(w.childNodes),P=m.indexOf(b.lastChildNode);return(h=m[P+1])!==null&&h!==void 0?h:null}return null}return f.nextSibling}function MGt(f){return f.tagName}function CGt(f,h){f.textContent=h}function IGt(f){return f.textContent}function TGt(f){return f.nodeType===1}function jGt(f){return f.nodeType===3}function AGt(f){return f.nodeType===8}function O3(f){return f.nodeType===11}function AM(f,h){var b,w,m;const P=f;return(b=P.parent)!==null&&b!==void 0||(P.parent=h??null),(w=P.firstChildNode)!==null&&w!==void 0||(P.firstChildNode=f.firstChild),(m=P.lastChildNode)!==null&&m!==void 0||(P.lastChildNode=f.lastChild),P}const Nye={createElement:pGt,createElementNS:wGt,createTextNode:vGt,createDocumentFragment:mGt,createComment:yGt,insertBefore:_Gt,removeChild:EGt,appendChild:SGt,parentNode:Wpt,nextSibling:PGt,tagName:MGt,setTextContent:CGt,getTextContent:IGt,isElement:TGt,isText:jGt,isComment:AGt,isDocumentFragment:O3};function Yd(f,h,b,w,m){const P=h===void 0?void 0:h.key;return{sel:f,data:h,children:b,text:w,elm:m,key:P}}const RL=Array.isArray;function OM(f){return typeof f=="string"||typeof f=="number"||f instanceof String||f instanceof Number}function eve(f){return f===void 0}function og(f){return f!==void 0}const tve=Yd("",{},[],void 0,void 0);function vL(f,h){var b,w;const m=f.key===h.key,P=((b=f.data)===null||b===void 0?void 0:b.is)===((w=h.data)===null||w===void 0?void 0:w.is),g=f.sel===h.sel,E=!f.sel&&f.sel===h.sel?typeof f.text==typeof h.text:!0;return g&&m&&P&&E}function OGt(){throw new Error("The document fragment is not supported on this platform.")}function DGt(f,h){return f.isElement(h)}function kGt(f,h){return f.isDocumentFragment(h)}function RGt(f,h,b){var w;const m={};for(let P=h;P<=b;++P){const g=(w=f[P])===null||w===void 0?void 0:w.key;g!==void 0&&(m[g]=P)}return m}const xGt=["create","update","remove","destroy","pre","post"];function LGt(f,h,b){const w={create:[],update:[],remove:[],destroy:[],pre:[],post:[]},m=h!==void 0?h:Nye;for(const j of xGt)for(const k of f){const x=k[j];x!==void 0&&w[j].push(x)}function P(j){const k=j.id?"#"+j.id:"",x=j.getAttribute("class"),R=x?"."+x.split(" ").join("."):"";return Yd(m.tagName(j).toLowerCase()+k+R,{},[],void 0,j)}function g(j){return Yd(void 0,{},[],void 0,j)}function E(j,k){return function(){if(--k===0){const R=m.parentNode(j);m.removeChild(R,j)}}}function C(j,k){var x,R,H,F;let $,W=j.data;if(W!==void 0){const ce=(x=W.hook)===null||x===void 0?void 0:x.init;og(ce)&&(ce(j),W=j.data)}const re=j.children,ae=j.sel;if(ae==="!")eve(j.text)&&(j.text=""),j.elm=m.createComment(j.text);else if(ae!==void 0){const ce=ae.indexOf("#"),J=ae.indexOf(".",ce),te=ce>0?ce:ae.length,fe=J>0?J:ae.length,ve=ce!==-1||J!==-1?ae.slice(0,Math.min(te,fe)):ae,me=j.elm=og(W)&&og($=W.ns)?m.createElementNS($,ve,W):m.createElement(ve,W);for(te0&&me.setAttribute("class",ae.slice(fe+1).replace(/\./g," ")),$=0;$0&&(M.attrs=C),Object.keys(T).length>0&&(M.dataset=T),E[0]==="s"&&E[1]==="v"&&E[2]==="g"&&(E.length===3||E[3]==="."||E[3]==="#")&&dJ(M,_,E),Yd(E,M,_,void 0,f)}else return b.isText(f)?(w=b.getTextContent(f),Yd(void 0,void 0,void 0,w,f)):b.isComment(f)?(w=b.getTextContent(f),Yd("!",{},[],w,f)):Yd("",{},[],void 0,f)}const GGt="http://www.w3.org/1999/xlink",UGt="http://www.w3.org/XML/1998/namespace",U1t=58,WGt=120;function W1t(f,h){let b;const w=h.elm;let m=f.data.attrs,P=h.data.attrs;if(!(!m&&!P)&&m!==P){m=m||{},P=P||{};for(b in P){const g=P[b];m[b]!==g&&(g===!0?w.setAttribute(b,""):g===!1?w.removeAttribute(b):b.charCodeAt(0)!==WGt?w.setAttribute(b,g):b.charCodeAt(3)===U1t?w.setAttributeNS(UGt,b,g):b.charCodeAt(5)===U1t?w.setAttributeNS(GGt,b,g):w.setAttribute(b,g))}for(b in m)b in P||w.removeAttribute(b)}}const YGt={create:W1t,update:W1t};function Y1t(f,h){let b,w;const m=h.elm;let P=f.data.class,g=h.data.class;if(!(!P&&!g)&&P!==g){P=P||{},g=g||{};for(w in P)P[w]&&!Object.prototype.hasOwnProperty.call(g,w)&&m.classList.remove(w);for(w in g)b=g[w],b!==P[w]&&m.classList[b?"add":"remove"](w)}}const XGt={create:Y1t,update:Y1t},X1t=/[A-Z]/g;function J1t(f,h){const b=h.elm;let w=f.data.dataset,m=h.data.dataset,P;if(!w&&!m||w===m)return;w=w||{},m=m||{};const g=b.dataset;for(P in w)m[P]||(g?P in g&&delete g[P]:b.removeAttribute("data-"+P.replace(X1t,"-$&").toLowerCase()));for(P in m)w[P]!==m[P]&&(g?g[P]=m[P]:b.setAttribute("data-"+P.replace(X1t,"-$&").toLowerCase(),m[P]))}const JGt={create:J1t,update:J1t};function Xpt(f,h,b){if(typeof f=="function")f.call(h,b,h);else if(typeof f=="object")for(let w=0;w=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(uy,"__esModule",{value:!0}),uy.isThunk=uy.ThunkView=void 0;const h=nN,b=Zt();let w=class{render(g,E){return(0,h.h)(this.selector(g),{key:g.id,hook:{init:this.init.bind(this),prepatch:this.prepatch.bind(this)},fn:()=>this.renderAndDecorate(g,E),args:this.watchedArgs(g),thunk:!0})}renderAndDecorate(g,E){const C=this.doRender(g,E);return E.decorate(C,g),C}copyToThunk(g,E){E.elm=g.elm,g.data.fn=E.data.fn,g.data.args=E.data.args,E.data=g.data,E.children=g.children,E.text=g.text,E.elm=g.elm}init(g){const E=g.data,C=E.fn.apply(void 0,E.args);this.copyToThunk(C,g)}prepatch(g,E){const C=g.data,T=E.data;this.equals(C.args,T.args)?this.copyToThunk(g,E):this.copyToThunk(T.fn.apply(void 0,T.args),E)}equals(g,E){if(Array.isArray(g)&&Array.isArray(E)){if(g.length!==E.length)return!1;for(let C=0;C{E[I]&&(M[I]=E[I])}),Object.keys(E).forEach(I=>{if(I==="key"||I==="classNames"||I==="selector")return;const O=I.indexOf("-");if(O>0){const j=I.slice(0,O);h.includes(j)?_(j,I.slice(O+1),E[I]):_(C,I,E[I])}else M[I]||_(C,I,E[I])}),M;function _(I,O,j){const k=M[I]||(M[I]={});k[O]=j}}function m(E,C="props"){return(T,M,..._)=>{const I=typeof T=="function";return(0,f.jsx)(T,I?M:w(M,C,E),_)}}m3.JSX=m;const P=m();m3.html=P;const g=m(b,"attrs");return m3.svg=g,m3}var igt;function iN(){if(igt)return Us;igt=1;var f=Us&&Us.__decorate||function(F,$,W,re){var ae=arguments.length,ce=ae<3?$:re===null?re=Object.getOwnPropertyDescriptor($,W):re,J;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(F,$,W,re);else for(var te=F.length-1;te>=0;te--)(J=F[te])&&(ce=(ae<3?J(ce):ae>3?J($,W,ce):J($,W))||ce);return ae>3&&ce&&Object.defineProperty($,W,ce),ce},h=Us&&Us.__metadata||function(F,$){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(F,$)},b=Us&&Us.__param||function(F,$){return function(W,re){$(W,re,F)}},w;Object.defineProperty(Us,"__esModule",{value:!0}),Us.MissingView=Us.EmptyView=Us.configureView=Us.overrideModelElement=Us.configureModelElement=Us.ViewRegistry=Us.findArgValue=void 0;const m=Cy(),P=Zt(),g=Qn(),E=q3(),C=EA(),T=ES(),M=Qh(),_=Sp();function I(F,$){for(;F!==void 0&&!($ in F)&&F.parentArgs;)F=F.parentArgs;return F?F[$]:void 0}Us.findArgValue=I;let O=class extends E.InstanceRegistry{constructor($){super(),this.registerDefaults(),$.forEach(W=>{W.isOverride?this.override(W.type,W.factory()):this.register(W.type,W.factory())})}registerDefaults(){this.register(T.EMPTY_ROOT.type,new R)}missing($){return this.logger.warn(this,`no registered view for type '${$}', please configure a view in the ContainerModule`),new H}};Us.ViewRegistry=O,f([(0,P.inject)(g.TYPES.ILogger),h("design:type",Object)],O.prototype,"logger",void 0),Us.ViewRegistry=O=f([(0,P.injectable)(),b(0,(0,P.multiInject)(g.TYPES.ViewRegistration)),b(0,(0,P.optional)()),h("design:paramtypes",[Array])],O);function j(F,$,W,re,ae){(0,M.registerModelElement)(F,$,W,ae),x(F,$,re)}Us.configureModelElement=j;function k(F,$,W,re,ae){(0,M.registerModelElement)(F,$,W,ae,!0),x(F,$,re,!0)}Us.overrideModelElement=k;function x(F,$,W,re){if(typeof W=="function"){if(!(0,C.isInjectable)(W))throw new Error(`Views should be @injectable: ${W.name}`);F.isBound(W)||F.bind(W).toSelf()}F.bind(g.TYPES.ViewRegistration).toDynamicValue(ae=>({type:$,factory:()=>ae.container.get(W),isOverride:re}))}Us.configureView=x;let R=class{render($,W){return(0,m.svg)("svg",{"class-sprotty-empty":!0})}};Us.EmptyView=R,Us.EmptyView=R=f([(0,P.injectable)()],R);let H=w=class{render($,W){const re=$.position||this.getPostion($.type);return(0,m.svg)("text",{"class-sprotty-missing":!0,x:re.x,y:re.y},'missing "',$.type,'" view')}getPostion($){let W=w.positionMap.get($);return W||(W=_.Point.ORIGIN,w.positionMap.forEach(re=>W=re.y>=W.y?{x:0,y:re.y+20}:W),w.positionMap.set($,W)),W}};return Us.MissingView=H,H.positionMap=new Map,Us.MissingView=H=w=f([(0,P.injectable)()],H),Us}var ay={},rgt;function Qpt(){if(rgt)return ay;rgt=1;var f=ay&&ay.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_},h=ay&&ay.__metadata||function(g,E){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(g,E)};Object.defineProperty(ay,"__esModule",{value:!0}),ay.ViewerCache=void 0;const b=Zt(),w=Qn(),m=eN();let P=class{update(E,C){if(C!==void 0)this.delegate.update(E,C),this.cachedModel=void 0;else{const T=this.cachedModel===void 0;this.cachedModel=E,T&&this.scheduleUpdate()}}scheduleUpdate(){this.syncer.onEndOfNextFrame(()=>{this.cachedModel&&(this.delegate.update(this.cachedModel),this.cachedModel=void 0)})}};return ay.ViewerCache=P,f([(0,b.inject)(w.TYPES.IViewer),h("design:type",Object)],P.prototype,"delegate",void 0),f([(0,b.inject)(w.TYPES.AnimationFrameSyncer),h("design:type",m.AnimationFrameSyncer)],P.prototype,"syncer",void 0),ay.ViewerCache=P=f([(0,b.injectable)()],P),ay}var ive={},ogt;function Zpt(){return ogt||(ogt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.overrideViewerOptions=f.configureViewerOptions=f.defaultViewerOptions=void 0;const h=_S(),b=Qn(),w=()=>({baseDiv:"sprotty",baseClass:"sprotty",hiddenDiv:"sprotty-hidden",hiddenClass:"sprotty-hidden",popupDiv:"sprotty-popup",popupClass:"sprotty-popup",popupClosedClass:"sprotty-popup-closed",needsClientLayout:!0,needsServerLayout:!1,popupOpenDelay:1e3,popupCloseDelay:300,zoomLimits:{min:.01,max:10},horizontalScrollLimits:{min:-1e5,max:1e5},verticalScrollLimits:{min:-1e5,max:1e5}});f.defaultViewerOptions=w;function m(g,E){const C=Object.assign(Object.assign({},(0,f.defaultViewerOptions)()),E);g.isBound(b.TYPES.ViewerOptions)?g.rebind(b.TYPES.ViewerOptions).toConstantValue(C):g.bind(b.TYPES.ViewerOptions).toConstantValue(C)}f.configureViewerOptions=m;function P(g,E){const C=g.get(b.TYPES.ViewerOptions);return(0,h.safeAssign)(C,E),C}f.overrideViewerOptions=P})(ive)),ive}var Ju={},cgt;function ewt(){if(cgt)return Ju;cgt=1;var f=Ju&&Ju.__decorate||function(R,H,F,$){var W=arguments.length,re=W<3?H:$===null?$=Object.getOwnPropertyDescriptor(H,F):$,ae;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")re=Reflect.decorate(R,H,F,$);else for(var ce=R.length-1;ce>=0;ce--)(ae=R[ce])&&(re=(W<3?ae(re):W>3?ae(H,F,re):ae(H,F))||re);return W>3&&re&&Object.defineProperty(H,F,re),re},h=Ju&&Ju.__metadata||function(R,H){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(R,H)},b=Ju&&Ju.__param||function(R,H){return function(F,$){H(F,$,R)}};Object.defineProperty(Ju,"__esModule",{value:!0}),Ju.PopupModelViewer=Ju.HiddenModelViewer=Ju.ModelViewer=Ju.PatcherProvider=Ju.ModelRenderer=void 0;const w=Zt(),m=nN,P=Cy(),g=My(),E=fJ(),C=ES(),T=Qn(),M=Jpt(),_=mh();class I{constructor(H,F,$,W={}){this.viewRegistry=H,this.targetKind=F,this.postprocessors=$,this.args=W}decorate(H,F){return(0,M.isThunk)(H)?H:this.postprocessors.reduce(($,W)=>W.decorate($,F),H)}renderElement(H){const $=this.viewRegistry.get(H.type).render(H,this,this.args);if($)return this.decorate($,H)}renderChildren(H,F){const $=F?new I(this.viewRegistry,this.targetKind,this.postprocessors,Object.assign(Object.assign({},F),{parentArgs:this.args})):this;return H.children.map(W=>$.renderElement(W)).filter(W=>W!==void 0)}postUpdate(H){this.postprocessors.forEach(F=>F.postUpdate(H))}}Ju.ModelRenderer=I;let O=class{constructor(){this.patcher=(0,m.init)(this.createModules())}createModules(){return[m.propsModule,m.attributesModule,m.classModule,m.styleModule,m.eventListenersModule]}};Ju.PatcherProvider=O,Ju.PatcherProvider=O=f([(0,w.injectable)(),h("design:paramtypes",[])],O);let j=class{constructor(H,F,$){this.renderer=H("main",$),this.patcher=F.patcher}update(H,F){var $;this.logger.log(this,"rendering",H);const W=(0,P.html)("div",{id:this.options.baseDiv},this.renderer.renderElement(H));if(this.lastVDOM!==void 0){const re=this.hasFocus();(0,_.copyClassesFromVNode)(this.lastVDOM,W),this.lastVDOM=this.patcher.call(this,this.lastVDOM,W),this.restoreFocus(re)}else if(typeof document<"u"){let re=null;if(this.options.shadowRoot){const ae=($=document.getElementById(this.options.shadowRoot))===null||$===void 0?void 0:$.shadowRoot;ae&&(re=ae.getElementById(this.options.baseDiv))}else re=document.getElementById(this.options.baseDiv);re!==null?(typeof window<"u"&&window.addEventListener("resize",()=>{this.onWindowResize(W)}),(0,_.copyClassesFromElement)(re,W),(0,_.setClass)(W,this.options.baseClass,!0),this.lastVDOM=this.patcher.call(this,re,W)):this.logger.error(this,"element not in DOM:",this.options.baseDiv)}this.renderer.postUpdate(F)}hasFocus(){if(typeof document<"u"&&document.activeElement&&this.lastVDOM.children&&this.lastVDOM.children.length>0){const H=this.lastVDOM.children[0];if(typeof H=="object"){const F=H.elm;return document.activeElement===F}}return!1}restoreFocus(H){if(H&&this.lastVDOM.children&&this.lastVDOM.children.length>0){const F=this.lastVDOM.children[0];if(typeof F=="object"){const $=F.elm;$&&typeof $.focus=="function"&&$.focus()}}}onWindowResize(H){const F=document.getElementById(this.options.baseDiv);if(F!==null){const $=this.getBoundsInPage(F);this.actiondispatcher.dispatch(E.InitializeCanvasBoundsAction.create($))}}getBoundsInPage(H){const F=H.getBoundingClientRect(),$=(0,g.getWindowScroll)();return{x:F.left+$.x,y:F.top+$.y,width:F.width,height:F.height}}};Ju.ModelViewer=j,f([(0,w.inject)(T.TYPES.ViewerOptions),h("design:type",Object)],j.prototype,"options",void 0),f([(0,w.inject)(T.TYPES.ILogger),h("design:type",Object)],j.prototype,"logger",void 0),f([(0,w.inject)(T.TYPES.IActionDispatcher),h("design:type",Object)],j.prototype,"actiondispatcher",void 0),Ju.ModelViewer=j=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.ModelRendererFactory)),b(1,(0,w.inject)(T.TYPES.PatcherProvider)),b(2,(0,w.multiInject)(T.TYPES.IVNodePostprocessor)),b(2,(0,w.optional)()),h("design:paramtypes",[Function,O,Array])],j);let k=class{constructor(H,F,$){this.hiddenRenderer=H("hidden",$),this.patcher=F.patcher}update(H,F){this.logger.log(this,"rendering hidden");let $;if(H.type===C.EMPTY_ROOT.type)$=(0,P.html)("div",{id:this.options.hiddenDiv});else{const W=this.hiddenRenderer.renderElement(H);W&&(0,_.setAttr)(W,"opacity",0),$=(0,P.html)("div",{id:this.options.hiddenDiv},W)}if(this.lastHiddenVDOM!==void 0)(0,_.copyClassesFromVNode)(this.lastHiddenVDOM,$),this.lastHiddenVDOM=this.patcher.call(this,this.lastHiddenVDOM,$);else{let W=document.getElementById(this.options.hiddenDiv);W===null?(W=document.createElement("div"),document.body.appendChild(W)):(0,_.copyClassesFromElement)(W,$),(0,_.setClass)($,this.options.baseClass,!0),(0,_.setClass)($,this.options.hiddenClass,!0),this.lastHiddenVDOM=this.patcher.call(this,W,$)}this.hiddenRenderer.postUpdate(F)}};Ju.HiddenModelViewer=k,f([(0,w.inject)(T.TYPES.ViewerOptions),h("design:type",Object)],k.prototype,"options",void 0),f([(0,w.inject)(T.TYPES.ILogger),h("design:type",Object)],k.prototype,"logger",void 0),Ju.HiddenModelViewer=k=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.ModelRendererFactory)),b(1,(0,w.inject)(T.TYPES.PatcherProvider)),b(2,(0,w.multiInject)(T.TYPES.HiddenVNodePostprocessor)),b(2,(0,w.optional)()),h("design:paramtypes",[Function,O,Array])],k);let x=class{constructor(H,F,$){this.modelRendererFactory=H,this.popupRenderer=this.modelRendererFactory("popup",$),this.patcher=F.patcher}update(H,F){this.logger.log(this,"rendering popup",H);const $=H.type===C.EMPTY_ROOT.type;let W;if($)W=(0,P.html)("div",{id:this.options.popupDiv});else{const re=H.canvasBounds,ae={top:re.y+"px",left:re.x+"px"};W=(0,P.html)("div",{id:this.options.popupDiv,style:ae},this.popupRenderer.renderElement(H))}if(this.lastPopupVDOM!==void 0)(0,_.copyClassesFromVNode)(this.lastPopupVDOM,W),(0,_.setClass)(W,this.options.popupClosedClass,$),this.lastPopupVDOM=this.patcher.call(this,this.lastPopupVDOM,W);else if(typeof document<"u"){let re=document.getElementById(this.options.popupDiv);re===null?(re=document.createElement("div"),document.body.appendChild(re)):(0,_.copyClassesFromElement)(re,W),(0,_.setClass)(W,this.options.popupClass,!0),(0,_.setClass)(W,this.options.popupClosedClass,$),this.lastPopupVDOM=this.patcher.call(this,re,W)}this.popupRenderer.postUpdate(F)}};return Ju.PopupModelViewer=x,f([(0,w.inject)(T.TYPES.ViewerOptions),h("design:type",Object)],x.prototype,"options",void 0),f([(0,w.inject)(T.TYPES.ILogger),h("design:type",Object)],x.prototype,"logger",void 0),Ju.PopupModelViewer=x=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.ModelRendererFactory)),b(1,(0,w.inject)(T.TYPES.PatcherProvider)),b(2,(0,w.multiInject)(T.TYPES.PopupVNodePostprocessor)),b(2,(0,w.optional)()),h("design:paramtypes",[Function,O,Array])],x),Ju}var H4={},sgt;function twt(){if(sgt)return H4;sgt=1;var f=H4&&H4.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(H4,"__esModule",{value:!0}),H4.FocusFixPostprocessor=void 0;const h=Zt(),b=mh();let w=class{decorate(P,g){return P.sel&&P.sel.startsWith("svg")&&(0,b.setAttr)(P,"tabindex",0),P}postUpdate(){}};return H4.FocusFixPostprocessor=w,H4.FocusFixPostprocessor=w=f([(0,h.injectable)()],w),H4}var eX={},Vd={},ugt;function Bye(){if(ugt)return Vd;ugt=1;var f=Vd&&Vd.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=Vd&&Vd.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(Vd,"__esModule",{value:!0}),Vd.ConsoleLogger=Vd.NullLogger=Vd.LogLevel=void 0;const b=Zt(),w=Qn();var m;(function(E){E[E.none=0]="none",E[E.error=1]="error",E[E.warn=2]="warn",E[E.info=3]="info",E[E.log=4]="log"})(m||(Vd.LogLevel=m={}));let P=class{constructor(){this.logLevel=m.none}error(C,T,...M){}warn(C,T,...M){}info(C,T,...M){}log(C,T,...M){}};Vd.NullLogger=P,Vd.NullLogger=P=f([(0,b.injectable)()],P);let g=class{constructor(){this.logLevel=m.log,this.viewOptions={baseDiv:""}}error(C,T,...M){if(this.logLevel>=m.error)try{console.error.apply(C,this.consoleArguments(C,T,M))}catch{}}warn(C,T,...M){if(this.logLevel>=m.warn)try{console.warn.apply(C,this.consoleArguments(C,T,M))}catch{}}info(C,T,...M){if(this.logLevel>=m.info)try{console.info.apply(C,this.consoleArguments(C,T,M))}catch{}}log(C,T,...M){if(this.logLevel>=m.log)try{console.log.apply(C,this.consoleArguments(C,T,M))}catch{}}consoleArguments(C,T,M){let _;return typeof C=="object"?_=C.constructor.name:_=C,[new Date().toLocaleTimeString()+" "+this.viewOptions.baseDiv+" "+_+": "+T,...M]}};return Vd.ConsoleLogger=g,f([(0,b.inject)(w.TYPES.LogLevel),h("design:type",Number)],g.prototype,"logLevel",void 0),f([(0,b.inject)(w.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"viewOptions",void 0),Vd.ConsoleLogger=g=f([(0,b.injectable)()],g),Vd}var ly={},agt;function lUt(){if(agt)return ly;agt=1;var f=ly&&ly.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=ly&&ly.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(ly,"__esModule",{value:!0}),ly.IdPostprocessor=void 0;const b=Zt(),w=Qn(),m=tN(),P=mh();let g=class{decorate(C,T){const M=(0,P.getAttrs)(C);return M.id!==void 0&&this.logger.warn(C,"Overriding id of vnode ("+M.id+"). Make sure not to set it manually in view."),M.id=this.domHelper.createUniqueDOMElementId(T),C.key||(C.key=T.id),C}postUpdate(){}};return ly.IdPostprocessor=g,f([(0,b.inject)(w.TYPES.ILogger),h("design:type",Object)],g.prototype,"logger",void 0),f([(0,b.inject)(w.TYPES.DOMHelper),h("design:type",m.DOMHelper)],g.prototype,"domHelper",void 0),ly.IdPostprocessor=g=f([(0,b.injectable)()],g),ly}var z4={},lgt;function fUt(){if(lgt)return z4;lgt=1;var f=z4&&z4.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(z4,"__esModule",{value:!0}),z4.CssClassPostprocessor=void 0;const h=LM(),b=mh(),w=Zt();let m=class{decorate(g,E){if(E.cssClasses)for(const T of E.cssClasses)(0,b.setClass)(g,T,!0);const C=(0,h.getSubType)(E);return C&&C!==E.type&&(0,b.setClass)(g,C,!0),g}postUpdate(){}};return z4.CssClassPostprocessor=m,z4.CssClassPostprocessor=m=f([(0,w.injectable)()],m),z4}var fgt;function nwt(){if(fgt)return eX;fgt=1,Object.defineProperty(eX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=fJ(),w=Bye(),m=Rye(),P=lJ(),g=Upt(),E=Gpt(),C=ES(),T=eN(),M=ewt(),_=Zpt(),I=Pp(),O=H3(),j=twt(),k=iN(),x=Qpt(),R=tN(),H=lUt(),F=kb(),$=fUt(),W=xye(),re=hJ(),ae=zpt(),ce=new f.ContainerModule((J,te,fe)=>{J(h.TYPES.ILogger).to(w.NullLogger).inSingletonScope(),J(h.TYPES.LogLevel).toConstantValue(w.LogLevel.warn),J(h.TYPES.SModelRegistry).to(C.SModelRegistry).inSingletonScope(),J(P.ActionHandlerRegistry).toSelf().inSingletonScope(),J(h.TYPES.ActionHandlerRegistryProvider).toProvider(me=>()=>new Promise(ke=>{ke(me.container.get(P.ActionHandlerRegistry))})),J(h.TYPES.ViewRegistry).to(k.ViewRegistry).inSingletonScope(),J(h.TYPES.IModelFactory).to(C.SModelFactory).inSingletonScope(),J(h.TYPES.IActionDispatcher).to(m.ActionDispatcher).inSingletonScope(),J(h.TYPES.IActionDispatcherProvider).toProvider(me=>()=>new Promise(ke=>{ke(me.container.get(h.TYPES.IActionDispatcher))})),J(h.TYPES.IDiagramLocker).to(ae.DefaultDiagramLocker).inSingletonScope(),J(F.CommandActionHandlerInitializer).toSelf().inSingletonScope(),J(h.TYPES.IActionHandlerInitializer).toService(F.CommandActionHandlerInitializer),J(h.TYPES.ICommandStack).to(g.CommandStack).inSingletonScope(),J(h.TYPES.ICommandStackProvider).toProvider(me=>()=>new Promise(ke=>{ke(me.container.get(h.TYPES.ICommandStack))})),J(h.TYPES.CommandStackOptions).toConstantValue((0,E.defaultCommandStackOptions)()),J(M.ModelViewer).toSelf().inSingletonScope(),J(M.HiddenModelViewer).toSelf().inSingletonScope(),J(M.PopupModelViewer).toSelf().inSingletonScope(),J(h.TYPES.ModelViewer).toDynamicValue(me=>{const ke=me.container.createChild();return ke.bind(h.TYPES.IViewer).toService(M.ModelViewer),ke.bind(x.ViewerCache).toSelf(),ke.get(x.ViewerCache)}).inSingletonScope(),J(h.TYPES.PopupModelViewer).toDynamicValue(me=>{const ke=me.container.createChild();return ke.bind(h.TYPES.IViewer).toService(M.PopupModelViewer),ke.bind(x.ViewerCache).toSelf(),ke.get(x.ViewerCache)}).inSingletonScope(),J(h.TYPES.HiddenModelViewer).toService(M.HiddenModelViewer),J(h.TYPES.IViewerProvider).toDynamicValue(me=>({get modelViewer(){return me.container.get(h.TYPES.ModelViewer)},get hiddenModelViewer(){return me.container.get(h.TYPES.HiddenModelViewer)},get popupModelViewer(){return me.container.get(h.TYPES.PopupModelViewer)}})),J(h.TYPES.ViewerOptions).toConstantValue((0,_.defaultViewerOptions)()),J(h.TYPES.PatcherProvider).to(M.PatcherProvider).inSingletonScope(),J(h.TYPES.DOMHelper).to(R.DOMHelper).inSingletonScope(),J(h.TYPES.ModelRendererFactory).toFactory(me=>(ke,tt,De={})=>{const ct=me.container.get(h.TYPES.ViewRegistry);return new M.ModelRenderer(ct,ke,tt,De)}),J(H.IdPostprocessor).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(H.IdPostprocessor),J(h.TYPES.HiddenVNodePostprocessor).toService(H.IdPostprocessor),J($.CssClassPostprocessor).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService($.CssClassPostprocessor),J(h.TYPES.HiddenVNodePostprocessor).toService($.CssClassPostprocessor),J(I.MouseTool).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(I.MouseTool),J(O.KeyTool).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(O.KeyTool),J(j.FocusFixPostprocessor).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(j.FocusFixPostprocessor),J(h.TYPES.PopupVNodePostprocessor).toService(H.IdPostprocessor),J(I.PopupMouseTool).toSelf().inSingletonScope(),J(h.TYPES.PopupVNodePostprocessor).toService(I.PopupMouseTool),J(h.TYPES.AnimationFrameSyncer).to(T.AnimationFrameSyncer).inSingletonScope();const ve={bind:J,isBound:fe};(0,F.configureCommand)(ve,b.InitializeCanvasBoundsCommand),J(b.CanvasBoundsInitializer).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(b.CanvasBoundsInitializer),(0,F.configureCommand)(ve,W.SetModelCommand),J(h.TYPES.UIExtensionRegistry).to(re.UIExtensionRegistry).inSingletonScope(),(0,F.configureCommand)(ve,re.SetUIExtensionVisibilityCommand),J(I.MousePositionTracker).toSelf().inSingletonScope(),J(h.TYPES.MouseListener).toService(I.MousePositionTracker)});return eX.default=ce,eX}var Gd={},rve={},hgt;function Xs(){return hgt||(hgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.SShapeElementImpl=f.findChildrenAtPosition=f.getAbsoluteClientBounds=f.getAbsoluteBounds=f.isAlignable=f.isSizeable=f.isLayoutableChild=f.isLayoutContainer=f.isBoundsAware=f.alignFeature=f.layoutableChildFeature=f.layoutContainerFeature=f.boundsFeature=void 0;const h=Ac(),b=Oc(),w=Qh(),m=My();f.boundsFeature=Symbol("boundsFeature"),f.layoutContainerFeature=Symbol("layoutContainerFeature"),f.layoutableChildFeature=Symbol("layoutableChildFeature"),f.alignFeature=Symbol("alignFeature");function P(k){return"bounds"in k}f.isBoundsAware=P;function g(k){return P(k)&&k.hasFeature(f.layoutContainerFeature)&&"layout"in k}f.isLayoutContainer=g;function E(k){return P(k)&&k.hasFeature(f.layoutableChildFeature)}f.isLayoutableChild=E;function C(k){return k.hasFeature(f.boundsFeature)&&P(k)}f.isSizeable=C;function T(k){return k.hasFeature(f.alignFeature)&&"alignment"in k}f.isAlignable=T;function M(k){const x=(0,w.findParentByFeature)(k,P);if(x!==void 0){let R=x.bounds,H=x;for(;H instanceof b.SChildElementImpl;){const F=H.parent;R=F.localToParent(R),H=F}return R}else if(k instanceof b.SModelRootImpl){const R=k.canvasBounds;return{x:0,y:0,width:R.width,height:R.height}}else return h.Bounds.EMPTY}f.getAbsoluteBounds=M;function _(k,x,R){let H=0,F=0,$=0,W=0;const re=x.createUniqueDOMElementId(k),ae=document.getElementById(re);if(ae){const J=ae.getBoundingClientRect(),te=(0,m.getWindowScroll)();H=J.left+te.x,F=J.top+te.y,$=J.width,W=J.height}let ce=document.getElementById(R.baseDiv);if(ce)for(;ce.offsetParent instanceof HTMLElement&&(ce=ce.offsetParent);)H-=ce.offsetLeft,F-=ce.offsetTop;return{x:H,y:F,width:$,height:W}}f.getAbsoluteClientBounds=_;function I(k,x){const R=[];return O(k,x,R),R}f.findChildrenAtPosition=I;function O(k,x,R){k.children.forEach(H=>{if(P(H)&&h.Bounds.includes(H.bounds,x)&&R.push(H),H instanceof b.SParentElementImpl){const F=H.parentToLocal(x);O(H,F,R)}})}class j extends b.SChildElementImpl{constructor(){super(...arguments),this.position=h.Point.ORIGIN,this.size=h.Dimension.EMPTY}get bounds(){return{x:this.position.x,y:this.position.y,width:this.size.width,height:this.size.height}}set bounds(x){this.position={x:x.x,y:x.y},this.size={width:x.width,height:x.height}}localToParent(x){const R={x:x.x+this.position.x,y:x.y+this.position.y,width:-1,height:-1};return(0,h.isBounds)(x)&&(R.width=x.width,R.height=x.height),R}parentToLocal(x){const R={x:x.x-this.position.x,y:x.y-this.position.y,width:-1,height:-1};return(0,h.isBounds)(x)&&(R.width=x.width,R.height=x.height),R}}f.SShapeElementImpl=j})(rve)),rve}var dgt;function $ye(){if(dgt)return Gd;dgt=1;var f=Gd&&Gd.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Gd&&Gd.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=Gd&&Gd.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(Gd,"__esModule",{value:!0}),Gd.RequestBoundsCommand=Gd.SetBoundsCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=Xs();let C=class extends P.SystemCommand{constructor(_){super(),this.action=_,this.bounds=[]}execute(_){return this.action.bounds.forEach(I=>{const O=_.root.index.getById(I.elementId);O&&(0,E.isBoundsAware)(O)&&this.bounds.push({element:O,oldBounds:O.bounds,newPosition:I.newPosition,newSize:I.newSize})}),this.redo(_)}undo(_){return this.bounds.forEach(I=>I.element.bounds=I.oldBounds),_.root}redo(_){return this.bounds.forEach(I=>{I.newPosition?I.element.bounds=Object.assign(Object.assign({},I.newPosition),I.newSize):I.element.bounds=Object.assign({x:I.element.bounds.x,y:I.element.bounds.y},I.newSize)}),_.root}};Gd.SetBoundsCommand=C,C.KIND=m.SetBoundsAction.KIND,Gd.SetBoundsCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],C);let T=class extends P.HiddenCommand{constructor(_){super(),this.action=_}execute(_){return{model:_.modelFactory.createRoot(this.action.newRoot),modelChanged:!0,cause:this.action}}get blockUntil(){return _=>_.kind===m.ComputedBoundsAction.KIND}};return Gd.RequestBoundsCommand=T,T.KIND=m.RequestBoundsAction.KIND,Gd.RequestBoundsCommand=T=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],T),Gd}var MM={},rf={},ggt;function Kye(){if(ggt)return rf;ggt=1;var f=rf&&rf.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=rf&&rf.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)},b=rf&&rf.__param||function(O,j){return function(k,x){j(k,x,O)}};Object.defineProperty(rf,"__esModule",{value:!0}),rf.configureLayout=rf.StatefulLayouter=rf.Layouter=rf.LayoutRegistry=void 0;const w=Zt(),m=Ac(),P=Qn(),g=q3(),E=Xs(),C=EA();let T=class extends g.InstanceRegistry{constructor(j=[]){super(),j.forEach(k=>{this.hasKey(k.layoutKind)?this.logger.warn("Layout kind is already defined: ",k.layoutKind):this.register(k.layoutKind,k.factory())})}};rf.LayoutRegistry=T,f([(0,w.inject)(P.TYPES.ILogger),h("design:type",Object)],T.prototype,"logger",void 0),rf.LayoutRegistry=T=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.LayoutRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],T);let M=class{layout(j){new _(j,this.layoutRegistry,this.logger).layout()}};rf.Layouter=M,f([(0,w.inject)(P.TYPES.LayoutRegistry),h("design:type",T)],M.prototype,"layoutRegistry",void 0),f([(0,w.inject)(P.TYPES.ILogger),h("design:type",Object)],M.prototype,"logger",void 0),rf.Layouter=M=f([(0,w.injectable)()],M);class _{constructor(j,k,x){this.element2boundsData=j,this.layoutRegistry=k,this.log=x,this.toBeLayouted=[],j.forEach((R,H)=>{(0,E.isLayoutContainer)(H)&&this.toBeLayouted.push(H)})}getBoundsData(j){let k=this.element2boundsData.get(j),x=j.bounds;return(0,E.isLayoutContainer)(j)&&this.toBeLayouted.indexOf(j)>=0&&(x=this.doLayout(j)),k||(k={bounds:x,boundsChanged:!1,alignmentChanged:!1},this.element2boundsData.set(j,k)),k}layout(){for(;this.toBeLayouted.length>0;){const j=this.toBeLayouted[0];this.doLayout(j)}}doLayout(j){const k=this.toBeLayouted.indexOf(j);k>=0&&this.toBeLayouted.splice(k,1);const x=this.layoutRegistry.get(j.layout);x&&x.layout(j,this);const R=this.element2boundsData.get(j);return R!==void 0&&R.bounds!==void 0?R.bounds:(this.log.error(j,"Layout failed"),m.Bounds.EMPTY)}}rf.StatefulLayouter=_;function I(O,j,k){if(typeof k=="function"){if(!(0,C.isInjectable)(k))throw new Error(`Layouts be @injectable: ${k.name}`);O.isBound(k)||O.bind(k).toSelf()}O.bind(P.TYPES.LayoutRegistration).toDynamicValue(x=>({layoutKind:j,factory:()=>x.container.get(k)}))}return rf.configureLayout=I,rf}var bgt;function iwt(){return bgt||(bgt=1,(function(f){var h=MM&&MM.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},b=MM&&MM.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(f,"__esModule",{value:!0}),f.ATTR_BBOX_ELEMENT=f.HiddenBoundsUpdater=f.BoundsData=void 0;const w=Zt(),m=jc(),P=Ac(),g=My(),E=Oc(),C=Qn(),T=Kye(),M=Xs();class _{}f.BoundsData=_;let I=class{constructor(){this.element2boundsData=new Map}decorate(j,k){return((0,M.isSizeable)(k)||(0,M.isLayoutContainer)(k))&&this.element2boundsData.set(k,{vnode:j,bounds:k.bounds,boundsChanged:!1,alignmentChanged:!1}),k instanceof E.SModelRootImpl&&(this.root=k),j}postUpdate(j){if(j===void 0||j.kind!==m.RequestBoundsAction.KIND)return;const k=j;this.getBoundsFromDOM(),this.layouter.layout(this.element2boundsData);const x=[],R=[];this.element2boundsData.forEach((F,$)=>{if(F.boundsChanged&&F.bounds!==void 0){const W={elementId:$.id,newSize:{width:F.bounds.width,height:F.bounds.height}};$ instanceof E.SChildElementImpl&&(0,M.isLayoutContainer)($.parent)&&(W.newPosition={x:F.bounds.x,y:F.bounds.y}),x.push(W)}F.alignmentChanged&&F.alignment!==void 0&&R.push({elementId:$.id,newAlignment:F.alignment})});const H=this.root!==void 0?this.root.revision:void 0;this.actionDispatcher.dispatch(m.ComputedBoundsAction.create(x,{revision:H,alignments:R,requestId:k.requestId})),this.element2boundsData.clear()}getBoundsFromDOM(){this.element2boundsData.forEach((j,k)=>{if(j.bounds&&(0,M.isSizeable)(k)){const x=j.vnode;if(x&&x.elm){const R=this.getBounds(x.elm,k);(0,M.isAlignable)(k)&&!((0,P.almostEquals)(R.x,0)&&(0,P.almostEquals)(R.y,0))&&(j.alignment={x:-R.x,y:-R.y},j.alignmentChanged=!0);const H={x:k.bounds.x,y:k.bounds.y,width:R.width,height:R.height};(0,P.almostEquals)(H.x,k.bounds.x)&&(0,P.almostEquals)(H.y,k.bounds.y)&&(0,P.almostEquals)(H.width,k.bounds.width)&&(0,P.almostEquals)(H.height,k.bounds.height)||(j.bounds=H,j.boundsChanged=!0)}}})}getBounds(j,k){if(!(0,g.isSVGGraphicsElement)(j))return this.logger.error(this,"Not an SVG element:",j),P.Bounds.EMPTY;if(j.tagName==="g"){for(const R of Array.from(j.children))if(R.getAttribute(f.ATTR_BBOX_ELEMENT)!==null)return this.getBounds(R,k)}const x=j.getBBox();return{x:x.x,y:x.y,width:x.width,height:x.height}}};f.HiddenBoundsUpdater=I,h([(0,w.inject)(C.TYPES.ILogger),b("design:type",Object)],I.prototype,"logger",void 0),h([(0,w.inject)(C.TYPES.IActionDispatcher),b("design:type",Object)],I.prototype,"actionDispatcher",void 0),h([(0,w.inject)(C.TYPES.Layouter),b("design:type",T.Layouter)],I.prototype,"layouter",void 0),f.HiddenBoundsUpdater=I=h([(0,w.injectable)()],I),f.ATTR_BBOX_ELEMENT="bboxElement"})(MM)),MM}var V4={},G4={},pgt;function qye(){if(pgt)return G4;pgt=1;var f=G4&&G4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(G4,"__esModule",{value:!0}),G4.AbstractLayout=void 0;const h=Ac(),b=Oc(),w=Xs(),m=Zt();let P=class{layout(E,C){const T=C.getBoundsData(E),M=this.getLayoutOptions(E),_=this.getChildrenSize(E,M,C),I=M.paddingFactor*(M.resizeContainer?Math.max(_.width,M.minWidth):Math.max(0,this.getFixedContainerBounds(E,M,C).width)-M.paddingLeft-M.paddingRight),O=M.paddingFactor*(M.resizeContainer?Math.max(_.height,M.minHeight):Math.max(0,this.getFixedContainerBounds(E,M,C).height)-M.paddingTop-M.paddingBottom);if(I>0&&O>0){const j=this.layoutChildren(E,C,M,I,O);T.bounds=this.getFinalContainerBounds(E,j,M,I,O),T.boundsChanged=!0}}getFinalContainerBounds(E,C,T,M,_){return{x:E.bounds.x,y:E.bounds.y,width:Math.max(T.minWidth,M+T.paddingLeft+T.paddingRight),height:Math.max(T.minHeight,_+T.paddingTop+T.paddingBottom)}}getFixedContainerBounds(E,C,T){let M=E;for(;;){if((0,w.isBoundsAware)(M)){const _=M.bounds;if((0,w.isLayoutContainer)(M)&&C.resizeContainer&&T.log.error(M,"Resizable container found while detecting fixed bounds"),h.Dimension.isValid(_))return _}if(M instanceof b.SChildElementImpl)M=M.parent;else return T.log.error(M,"Cannot detect fixed bounds"),h.Bounds.EMPTY}}layoutChildren(E,C,T,M,_){let I={x:T.paddingLeft+.5*(M-M/T.paddingFactor),y:T.paddingTop+.5*(_-_/T.paddingFactor)};return E.children.forEach(O=>{if((0,w.isLayoutableChild)(O)){const j=C.getBoundsData(O),k=j.bounds,x=this.getChildLayoutOptions(O,T);k!==void 0&&h.Dimension.isValid(k)&&(I=this.layoutChild(O,j,k,x,T,I,M,_))}}),I}getDx(E,C,T){switch(E){case"left":return 0;case"center":return .5*(T-C.width);case"right":return T-C.width}}getDy(E,C,T){switch(E){case"top":return 0;case"center":return .5*(T-C.height);case"bottom":return T-C.height}}getChildLayoutOptions(E,C){const T=E.layoutOptions;return T===void 0?C:this.spread(C,T)}getLayoutOptions(E){let C=E;const T=[];for(;C!==void 0;){const M=C.layoutOptions;if(M!==void 0&&T.push(M),C instanceof b.SChildElementImpl)C=C.parent;else break}return T.reverse().reduce((M,_)=>this.spread(M,_),this.getDefaultLayoutOptions())}};return G4.AbstractLayout=P,G4.AbstractLayout=P=f([(0,m.injectable)()],P),G4}var wgt;function rwt(){if(wgt)return V4;wgt=1;var f=V4&&V4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(V4,"__esModule",{value:!0}),V4.VBoxLayouter=void 0;const h=Zt(),b=Ac(),w=qye(),m=Xs();let P=class extends w.AbstractLayout{getChildrenSize(E,C,T){let M=-1,_=0,I=!0;return E.children.forEach(O=>{if((0,m.isLayoutableChild)(O)){const j=T.getBoundsData(O).bounds;j!==void 0&&b.Dimension.isValid(j)&&(_+=j.height,I?I=!1:_+=C.vGap,M=Math.max(M,j.width))}}),{width:M,height:_}}layoutChild(E,C,T,M,_,I,O,j){const k=this.getDx(M.hAlign,T,O);return C.bounds={x:_.paddingLeft+E.bounds.x-T.x+k,y:I.y+E.bounds.y-T.y,width:T.width,height:T.height},C.boundsChanged=!0,{x:I.x,y:I.y+T.height+_.vGap}}getDefaultLayoutOptions(){return{resizeContainer:!0,paddingTop:5,paddingBottom:5,paddingLeft:5,paddingRight:5,paddingFactor:1,vGap:1,hAlign:"center",minWidth:0,minHeight:0}}spread(E,C){return Object.assign(Object.assign({},E),C)}};return V4.VBoxLayouter=P,P.KIND="vbox",V4.VBoxLayouter=P=f([(0,h.injectable)()],P),V4}var U4={},mgt;function owt(){if(mgt)return U4;mgt=1;var f=U4&&U4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(U4,"__esModule",{value:!0}),U4.HBoxLayouter=void 0;const h=Zt(),b=Ac(),w=qye(),m=Xs();let P=class extends w.AbstractLayout{getChildrenSize(E,C,T){let M=0,_=-1,I=!0;return E.children.forEach(O=>{if((0,m.isLayoutableChild)(O)){const j=T.getBoundsData(O).bounds;j!==void 0&&b.Dimension.isValid(j)&&(I?I=!1:M+=C.hGap,M+=j.width,_=Math.max(_,j.height))}}),{width:M,height:_}}layoutChild(E,C,T,M,_,I,O,j){const k=this.getDy(M.vAlign,T,j);return C.bounds={x:I.x+E.bounds.x-T.x,y:_.paddingTop+E.bounds.y-T.y+k,width:T.width,height:T.height},C.boundsChanged=!0,{x:I.x+T.width+_.hGap,y:I.y}}getDefaultLayoutOptions(){return{resizeContainer:!0,paddingTop:5,paddingBottom:5,paddingLeft:5,paddingRight:5,paddingFactor:1,hGap:1,vAlign:"center",minWidth:0,minHeight:0}}spread(E,C){return Object.assign(Object.assign({},E),C)}};return U4.HBoxLayouter=P,P.KIND="hbox",U4.HBoxLayouter=P=f([(0,h.injectable)()],P),U4}var W4={},vgt;function cwt(){if(vgt)return W4;vgt=1;var f=W4&&W4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(W4,"__esModule",{value:!0}),W4.StackLayouter=void 0;const h=Zt(),b=Ac(),w=qye(),m=Xs();let P=class extends w.AbstractLayout{getChildrenSize(E,C,T){let M=-1,_=-1;return E.children.forEach(I=>{if((0,m.isLayoutableChild)(I)){const O=T.getBoundsData(I).bounds;O!==void 0&&b.Dimension.isValid(O)&&(M=Math.max(M,O.width),_=Math.max(_,O.height))}}),{width:M,height:_}}layoutChild(E,C,T,M,_,I,O,j){const k=this.getDx(M.hAlign,T,O),x=this.getDy(M.vAlign,T,j);return C.bounds={x:_.paddingLeft+E.bounds.x-T.x+k,y:_.paddingTop+E.bounds.y-T.y+x,width:T.width,height:T.height},C.boundsChanged=!0,I}getDefaultLayoutOptions(){return{resizeContainer:!0,paddingTop:5,paddingBottom:5,paddingLeft:5,paddingRight:5,paddingFactor:1,hAlign:"center",vAlign:"center",minWidth:0,minHeight:0}}spread(E,C){return Object.assign(Object.assign({},E),C)}};return W4.StackLayouter=P,P.KIND="stack",W4.StackLayouter=P=f([(0,h.injectable)()],P),W4}var Y4={},ygt;function gJ(){if(ygt)return Y4;ygt=1;var f=Y4&&Y4.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(Y4,"__esModule",{value:!0}),Y4.ShapeView=void 0;const h=Zt(),b=Ac(),w=Xs();let m=class{isVisible(g,E){if(E.targetKind==="hidden"||!b.Dimension.isValid(g.bounds))return!0;const C=(0,w.getAbsoluteBounds)(g),T=g.root.canvasBounds;return C.x<=T.width&&C.x+C.width>=0&&C.y<=T.height&&C.y+C.height>=0}};return Y4.ShapeView=m,Y4.ShapeView=m=f([(0,h.injectable)()],m),Y4}var cg={},_gt;function bJ(){if(_gt)return cg;_gt=1;var f=cg&&cg.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=cg&&cg.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=cg&&cg.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(cg,"__esModule",{value:!0}),cg.configureButtonHandler=cg.ButtonHandlerRegistry=void 0;const w=Zt(),m=q3(),P=Qn(),g=EA();let E=class extends m.InstanceRegistry{constructor(M){super(),M.forEach(_=>this.register(_.TYPE,_.factory()))}};cg.ButtonHandlerRegistry=E,cg.ButtonHandlerRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.IButtonHandlerRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);function C(T,M,_){if(typeof _=="function"){if(!(0,g.isInjectable)(_))throw new Error(`Button handlers should be @injectable: ${_.name}`);T.isBound(_)||T.bind(_).toSelf()}T.bind(P.TYPES.IButtonHandlerRegistration).toDynamicValue(I=>({TYPE:M,factory:()=>I.container.get(_)}))}return cg.configureButtonHandler=C,cg}var yL={},ove={},Egt;function rN(){return Egt||(Egt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isFadeable=f.fadeFeature=void 0,f.fadeFeature=Symbol("fadeFeature");function h(b){return b.hasFeature(f.fadeFeature)&&b.opacity!==void 0}f.isFadeable=h})(ove)),ove}var Sgt;function swt(){if(Sgt)return yL;Sgt=1,Object.defineProperty(yL,"__esModule",{value:!0}),yL.SButtonImpl=void 0;const f=Xs(),h=rN();class b extends f.SShapeElementImpl{constructor(){super(...arguments),this.enabled=!0}}return yL.SButtonImpl=b,b.DEFAULT_FEATURES=[f.boundsFeature,f.layoutableChildFeature,h.fadeFeature],yL}var Ud={},cve={},Pgt;function uwt(){return Pgt||(Pgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.name=f.isNameable=f.nameFeature=void 0,f.nameFeature=Symbol("nameableFeature");function h(w){return w.hasFeature(f.nameFeature)}f.isNameable=h;function b(w){if(h(w))return w.name}f.name=b})(cve)),cve}var Mgt;function Hye(){if(Mgt)return Ud;Mgt=1;var f=Ud&&Ud.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=Ud&&Ud.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)},b=Ud&&Ud.__param||function(_,I){return function(O,j){I(O,j,_)}};Object.defineProperty(Ud,"__esModule",{value:!0}),Ud.RevealNamedElementActionProvider=Ud.CommandPaletteActionProviderRegistry=void 0;const w=Zt(),m=jc(),P=jye(),g=Qn(),E=_A(),C=uwt();let T=class{constructor(I=[]){this.actionProviders=I}getActions(I,O,j,k){const x=this.actionProviders.map(R=>R.getActions(I,O,j,k));return Promise.all(x).then(R=>R.reduce((H,F)=>F!==void 0?H.concat(F):H))}};Ud.CommandPaletteActionProviderRegistry=T,Ud.CommandPaletteActionProviderRegistry=T=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.ICommandPaletteActionProvider)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],T);let M=class{constructor(I){this.logger=I}getActions(I,O,j,k){return k!==void 0&&k%2===0?Promise.resolve(this.createSelectActions(I)):Promise.resolve([new P.LabeledAction("Select all",[m.SelectAllAction.create()])])}createSelectActions(I){return(0,E.toArray)(I.index.all().filter(j=>(0,C.isNameable)(j))).map(j=>new P.LabeledAction(`Reveal ${(0,C.name)(j)}`,[m.SelectAction.create({selectedElementsIDs:[j.id]}),m.CenterAction.create([j.id])],"eye"))}};return Ud.RevealNamedElementActionProvider=M,Ud.RevealNamedElementActionProvider=M=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.ILogger)),h("design:paramtypes",[Object])],M),Ud}var sg={},sve={},Cgt;function awt(){return Cgt||(Cgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.codiconCSSClasses=f.codiconCSSString=f.ANIMATION_SPIN=f.ACTION_ITEM=void 0,f.ACTION_ITEM="action-item",f.ANIMATION_SPIN="animation-spin";function h(w,m=!1,P=!1,g=[]){return b(w,m,P,g).join(" ")}f.codiconCSSString=h;function b(w,m=!1,P=!1,g=[]){const E=["codicon",`codicon-${w}`];return m&&E.push(f.ACTION_ITEM),P&&E.push(f.ANIMATION_SPIN),g.length>0&&E.push(...g),E}f.codiconCSSClasses=b})(sve)),sve}var CM={},Igt;function z3(){if(Igt)return CM;Igt=1,Object.defineProperty(CM,"__esModule",{value:!0}),CM.getActualCode=CM.matchesKeystroke=void 0;const f=My();function h(m,P,...g){if(b(m)!==P)return!1;if((0,f.isMac)()){if(m.ctrlKey!==g.findIndex(E=>E==="ctrl")>=0||m.metaKey!==g.findIndex(E=>E==="meta"||E==="ctrlCmd")>=0)return!1}else if(m.ctrlKey!==g.findIndex(E=>E==="ctrl"||E==="ctrlCmd")>=0||m.metaKey!==g.findIndex(E=>E==="meta")>=0)return!1;return!(m.altKey!==g.findIndex(E=>E==="alt")>=0||m.shiftKey!==g.findIndex(E=>E==="shift")>=0)}CM.matchesKeystroke=h;function b(m){if(m.keyCode){const P=w[m.keyCode];if(P!==void 0)return P}return m.code}CM.getActualCode=b;const w=new Array(256);return(()=>{function m(P,g){w[g]===void 0&&(w[g]=P)}m("Pause",3),m("Backspace",8),m("Tab",9),m("Enter",13),m("ShiftLeft",16),m("ShiftRight",16),m("ControlLeft",17),m("ControlRight",17),m("AltLeft",18),m("AltRight",18),m("CapsLock",20),m("Escape",27),m("Space",32),m("PageUp",33),m("PageDown",34),m("End",35),m("Home",36),m("ArrowLeft",37),m("ArrowUp",38),m("ArrowRight",39),m("ArrowDown",40),m("Insert",45),m("Delete",46),m("Digit1",49),m("Digit2",50),m("Digit3",51),m("Digit4",52),m("Digit5",53),m("Digit6",54),m("Digit7",55),m("Digit8",56),m("Digit9",57),m("Digit0",48),m("KeyA",65),m("KeyB",66),m("KeyC",67),m("KeyD",68),m("KeyE",69),m("KeyF",70),m("KeyG",71),m("KeyH",72),m("KeyI",73),m("KeyJ",74),m("KeyK",75),m("KeyL",76),m("KeyM",77),m("KeyN",78),m("KeyO",79),m("KeyP",80),m("KeyQ",81),m("KeyR",82),m("KeyS",83),m("KeyT",84),m("KeyU",85),m("KeyV",86),m("KeyW",87),m("KeyX",88),m("KeyY",89),m("KeyZ",90),m("OSLeft",91),m("MetaLeft",91),m("OSRight",92),m("MetaRight",92),m("ContextMenu",93),m("Numpad0",96),m("Numpad1",97),m("Numpad2",98),m("Numpad3",99),m("Numpad4",100),m("Numpad5",101),m("Numpad6",102),m("Numpad7",103),m("Numpad8",104),m("Numpad9",105),m("NumpadMultiply",106),m("NumpadAdd",107),m("NumpadSeparator",108),m("NumpadSubtract",109),m("NumpadDecimal",110),m("NumpadDivide",111),m("F1",112),m("F2",113),m("F3",114),m("F4",115),m("F5",116),m("F6",117),m("F7",118),m("F8",119),m("F9",120),m("F10",121),m("F11",122),m("F12",123),m("F13",124),m("F14",125),m("F15",126),m("F16",127),m("F17",128),m("F18",129),m("F19",130),m("F20",131),m("F21",132),m("F22",133),m("F23",134),m("F24",135),m("NumLock",144),m("ScrollLock",145),m("Semicolon",186),m("Equal",187),m("Comma",188),m("Minus",189),m("Period",190),m("Slash",191),m("Backquote",192),m("IntlRo",193),m("BracketLeft",219),m("Backslash",220),m("BracketRight",221),m("Quote",222),m("IntlYen",255)})(),CM}var uve={},Tgt;function Rb(){return Tgt||(Tgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isSelected=f.isSelectable=f.selectFeature=void 0,f.selectFeature=Symbol("selectFeature");function h(w){return w.hasFeature(f.selectFeature)}f.isSelectable=h;function b(w){return w!==void 0&&h(w)&&w.selected}f.isSelected=b})(uve)),uve}var OX={exports:{}},hUt=OX.exports,jgt;function dUt(){return jgt||(jgt=1,(function(f,h){(function(b,w){f.exports=w()})(hUt,(function(){function b(w){var m=document,P=w.container||m.createElement("div"),g=w.preventSubmit||0;P.id=P.id||"autocomplete-"+W();var E=P.style,C=w.debounceWaitMs||0,T=w.disableAutoSelect||!1,M=P.parentElement,_=[],I="",O=2,j=w.showOnFocus,k,x=0,R,H=!1,F=!1;if(w.minLength!==void 0&&(O=w.minLength),!w.input)throw new Error("input undefined");var $=w.input;P.className=[P.className,"autocomplete",w.className||""].join(" ").trim(),P.setAttribute("role","listbox"),$.setAttribute("role","combobox"),$.setAttribute("aria-expanded","false"),$.setAttribute("aria-autocomplete","list"),$.setAttribute("aria-controls",P.id),$.setAttribute("aria-owns",P.id),$.setAttribute("aria-activedescendant",""),$.setAttribute("aria-haspopup","listbox"),E.position="absolute";function W(){return Date.now().toString(36)+Math.random().toString(36).substring(2)}function re(){var Si=P.parentNode;Si&&Si.removeChild(P)}function ae(){R&&window.clearTimeout(R)}function ce(){P.parentNode||(M||m.body).appendChild(P)}function J(){return!!P.parentNode}function te(){x++,_=[],I="",k=void 0,$.setAttribute("aria-activedescendant",""),$.setAttribute("aria-expanded","false"),re()}function fe(){if(!J())return;$.setAttribute("aria-expanded","true"),E.height="auto",E.width=$.offsetWidth+"px";var Si=0,_o;function Au(){var cf=m.documentElement,Rs=cf.clientTop||m.body.clientTop||0,xs=cf.clientLeft||m.body.clientLeft||0,xb=window.pageYOffset||cf.scrollTop,Zh=window.pageXOffset||cf.scrollLeft;_o=$.getBoundingClientRect();var Ia=_o.top+$.offsetHeight+xb-Rs,mm=_o.left+Zh-xs;E.top=Ia+"px",E.left=mm+"px",Si=window.innerHeight-(_o.top+$.offsetHeight),Si<0&&(Si=0),E.top=Ia+"px",E.bottom="",E.left=mm+"px",E.maxHeight=Si+"px"}Au(),Au(),w.customize&&_o&&w.customize($,_o,P,Si)}function ve(){P.textContent="",$.setAttribute("aria-activedescendant","");var Si=function(xs,xb,Zh){var Ia=m.createElement("div");return Ia.textContent=xs.label||"",Ia};w.render&&(Si=w.render);var _o=function(xs,xb){var Zh=m.createElement("div");return Zh.textContent=xs,Zh};w.renderGroup&&(_o=w.renderGroup);var Au=m.createDocumentFragment(),cf=W();if(_.forEach(function(xs,xb){if(xs.group&&xs.group!==cf){cf=xs.group;var Zh=_o(xs.group,I);Zh&&(Zh.className+=" group",Au.appendChild(Zh))}var Ia=Si(xs,I,xb);Ia&&(Ia.id=P.id+"_"+xb,Ia.setAttribute("role","option"),Ia.addEventListener("click",function(mm){F=!0;try{w.onSelect(xs,$)}finally{F=!1}te(),mm.preventDefault(),mm.stopPropagation()}),xs===k&&(Ia.className+=" selected",Ia.setAttribute("aria-selected","true"),$.setAttribute("aria-activedescendant",Ia.id)),Au.appendChild(Ia))}),P.appendChild(Au),_.length<1)if(w.emptyMsg){var Rs=m.createElement("div");Rs.id=P.id+"_"+W(),Rs.className="empty",Rs.textContent=w.emptyMsg,P.appendChild(Rs),$.setAttribute("aria-activedescendant",Rs.id)}else{te();return}ce(),fe(),ct()}function me(){J()&&ve()}function ke(){me()}function tt(Si){Si.target!==P?me():Si.preventDefault()}function De(){F||gt(0)}function ct(){var Si=P.getElementsByClassName("selected");if(Si.length>0){var _o=Si[0],Au=_o.previousElementSibling;if(Au&&Au.className.indexOf("group")!==-1&&!Au.previousElementSibling&&(_o=Au),_o.offsetTopRs&&(P.scrollTop+=cf-Rs)}}}function Z(){var Si=_.indexOf(k);k=Si===-1?void 0:_[(Si+_.length-1)%_.length],ii(Si)}function Nt(){var Si=_.indexOf(k);k=_.length<1?void 0:Si===-1?_[0]:_[(Si+1)%_.length],ii(Si)}function ii(Si){_.length>0&&(jo(Si),kr(_.indexOf(k)),ct())}function kr(Si){var _o=m.getElementById(P.id+"_"+Si);_o&&(_o.classList.add("selected"),_o.setAttribute("aria-selected","true"),$.setAttribute("aria-activedescendant",_o.id))}function jo(Si){var _o=m.getElementById(P.id+"_"+Si);_o&&(_o.classList.remove("selected"),_o.removeAttribute("aria-selected"),$.removeAttribute("aria-activedescendant"))}function Gn(Si,_o){var Au=J();if(_o==="Escape")te();else{if(!Au||_.length<1)return;_o==="ArrowUp"?Z():Nt()}Si.preventDefault(),Au&&Si.stopPropagation()}function pc(Si){if(k){g===2&&Si.preventDefault(),F=!0;try{w.onSelect(k,$)}finally{F=!1}te()}g===1&&Si.preventDefault()}function ls(Si){var _o=Si.key;switch(_o){case"ArrowUp":case"ArrowDown":case"Escape":Gn(Si,_o);break;case"Enter":pc(Si);break}}function Lr(){j&>(1)}function gt(Si){$.value.length>=O||Si===1?(ae(),R=window.setTimeout(function(){return Xn($.value,Si,$.selectionStart||0)},Si===0||Si===2?C:0)):te()}function Xn(Si,_o,Au){if(!H){var cf=++x;w.fetch(Si,function(Rs){x===cf&&Rs&&(_=Rs,I=Si,k=_.length<1||T?void 0:_[0],ve())},_o,Au)}}function jn(Si){if(w.keyup){w.keyup({event:Si,fetch:function(){return gt(0)}});return}!J()&&Si.key==="ArrowDown"&>(0)}function ri(Si){w.click&&w.click({event:Si,fetch:function(){return gt(2)}})}function Er(){setTimeout(function(){m.activeElement!==$&&te()},200)}function Ml(){Xn($.value,3,$.selectionStart||0)}P.addEventListener("mousedown",function(Si){Si.stopPropagation(),Si.preventDefault()}),P.addEventListener("focus",function(){return $.focus()}),re();function yg(){$.removeEventListener("focus",Lr),$.removeEventListener("keyup",jn),$.removeEventListener("click",ri),$.removeEventListener("keydown",ls),$.removeEventListener("input",De),$.removeEventListener("blur",Er),window.removeEventListener("resize",ke),m.removeEventListener("scroll",tt,!0),$.removeAttribute("role"),$.removeAttribute("aria-expanded"),$.removeAttribute("aria-autocomplete"),$.removeAttribute("aria-controls"),$.removeAttribute("aria-activedescendant"),$.removeAttribute("aria-owns"),$.removeAttribute("aria-haspopup"),ae(),te(),H=!0}return $.addEventListener("keyup",jn),$.addEventListener("click",ri),$.addEventListener("keydown",ls),$.addEventListener("input",De),$.addEventListener("blur",Er),$.addEventListener("focus",Lr),window.addEventListener("resize",ke),m.addEventListener("scroll",tt,!0),{destroy:yg,fetch:Ml}}return b}))})(OX)),OX.exports}var Agt;function lwt(){if(Agt)return sg;Agt=1;var f=sg&&sg.__decorate||function(ce,J,te,fe){var ve=arguments.length,me=ve<3?J:fe===null?fe=Object.getOwnPropertyDescriptor(J,te):fe,ke;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")me=Reflect.decorate(ce,J,te,fe);else for(var tt=ce.length-1;tt>=0;tt--)(ke=ce[tt])&&(me=(ve<3?ke(me):ve>3?ke(J,te,me):ke(J,te))||me);return ve>3&&me&&Object.defineProperty(J,te,me),me},h=sg&&sg.__metadata||function(ce,J){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ce,J)},b=sg&&sg.__importDefault||function(ce){return ce&&ce.__esModule?ce:{default:ce}},w;Object.defineProperty(sg,"__esModule",{value:!0}),sg.CommandPaletteKeyListener=sg.CommandPalette=void 0;const m=Zt(),P=jc(),g=jye(),E=Qn(),C=Lye(),T=hJ(),M=tN(),_=H3(),I=awt(),O=_A(),j=z3(),k=Xs(),x=Rb(),R=Hye(),H=Pp(),F=b(dUt());let $=w=class extends C.AbstractUIExtension{constructor(){super(...arguments),this.loadingIndicatorClasses=(0,I.codiconCSSClasses)("loading",!1,!0,["loading"]),this.xOffset=20,this.yOffset=20,this.defaultWidth=400,this.debounceWaitMs=100,this.noCommandsMsg="No commands available",this.paletteIndex=0}id(){return w.ID}containerClass(){return"command-palette"}show(J,...te){super.show(J,...te),this.paletteIndex=0,this.contextActions=void 0,this.inputElement.value="",this.autoCompleteResult=(0,F.default)(this.autocompleteSettings(J)),this.inputElement.focus()}initializeContents(J){J.style.position="absolute",this.inputElement=document.createElement("input"),this.inputElement.style.width="100%",this.inputElement.addEventListener("keydown",te=>this.hideIfEscapeEvent(te)),this.inputElement.addEventListener("keydown",te=>this.cylceIfInvokePaletteKey(te)),this.inputElement.onblur=()=>window.setTimeout(()=>this.hide(),200),J.appendChild(this.inputElement)}hideIfEscapeEvent(J){(0,j.matchesKeystroke)(J,"Escape")&&this.hide()}cylceIfInvokePaletteKey(J){w.isInvokePaletteKey(J)&&this.cycle()}cycle(){this.contextActions=void 0,this.paletteIndex++}onBeforeShow(J,te,...fe){let ve=this.xOffset,me=this.yOffset;const ke=(0,O.toArray)(te.index.all().filter(tt=>(0,x.isSelectable)(tt)&&tt.selected));if(ke.length===1){const tt=(0,k.getAbsoluteClientBounds)(ke[0],this.domHelper,this.viewerOptions);ve+=tt.x+tt.width,me+=tt.y}else{const tt=(0,k.getAbsoluteClientBounds)(te,this.domHelper,this.viewerOptions);ve+=tt.x,me+=tt.y}J.style.left=`${ve}px`,J.style.top=`${me}px`,J.style.width=`${this.defaultWidth}px`}autocompleteSettings(J){return{input:this.inputElement,emptyMsg:this.noCommandsMsg,className:"command-palette-suggestions",debounceWaitMs:this.debounceWaitMs,showOnFocus:!0,minLength:-1,fetch:(te,fe)=>this.updateAutoCompleteActions(fe,te,J),onSelect:te=>this.onSelect(te),render:(te,fe)=>this.renderLabeledActionSuggestion(te,fe),customize:(te,fe,ve,me)=>{this.customizeSuggestionContainer(ve,fe,me)}}}onSelect(J){this.executeAction(J),this.hide()}updateAutoCompleteActions(J,te,fe){this.onLoading(),this.contextActions?(J(this.filterActions(te,this.contextActions)),this.onLoaded("success")):this.actionProviderRegistry.getActions(fe,te,this.mousePositionTracker.lastPositionOnDiagram,this.paletteIndex).then(ve=>{this.contextActions=ve,J(this.filterActions(te,ve)),this.onLoaded("success")}).catch(ve=>{this.logger.error(this,"Failed to obtain actions from command palette action providers",ve),this.onLoaded("error")})}onLoading(){this.loadingIndicator&&this.containerElement.contains(this.loadingIndicator)||(this.loadingIndicator=document.createElement("span"),this.loadingIndicator.classList.add(...this.loadingIndicatorClasses),this.containerElement.appendChild(this.loadingIndicator))}onLoaded(J){this.containerElement.contains(this.loadingIndicator)&&this.containerElement.removeChild(this.loadingIndicator)}renderLabeledActionSuggestion(J,te){const fe=document.createElement("div"),ve=re(te).split(" ").join("|"),me=new RegExp(ve,"gi");return J.icon&&this.renderIcon(fe,J.icon),te.length>0?fe.innerHTML+=J.label.replace(me,ke=>""+ke+"").replace(/ /g," "):fe.innerHTML+=J.label.replace(/ /g," "),fe}renderIcon(J,te){J.innerHTML+=``}getFontAwesomeIcon(J){return`fa fa-${J}`}getCodicon(J){return(0,I.codiconCSSString)(J)}filterActions(J,te){return(0,O.toArray)(te.filter(fe=>{const ve=fe.label.toLowerCase();return J.split(" ").every(ke=>ve.indexOf(ke.toLowerCase())!==-1)}))}customizeSuggestionContainer(J,te,fe){J.style.position="fixed",this.containerElement&&this.containerElement.appendChild(J)}hide(){super.hide(),this.autoCompleteResult&&this.autoCompleteResult.destroy()}executeAction(J){this.actionDispatcherProvider().then(te=>te.dispatchAll(W(J))).catch(te=>this.logger.error(this,"No action dispatcher available to execute command palette action",te))}};sg.CommandPalette=$,$.ID="command-palette",$.isInvokePaletteKey=ce=>(0,j.matchesKeystroke)(ce,"Space","ctrl"),f([(0,m.inject)(E.TYPES.IActionDispatcherProvider),h("design:type",Function)],$.prototype,"actionDispatcherProvider",void 0),f([(0,m.inject)(E.TYPES.ICommandPaletteActionProviderRegistry),h("design:type",R.CommandPaletteActionProviderRegistry)],$.prototype,"actionProviderRegistry",void 0),f([(0,m.inject)(E.TYPES.ViewerOptions),h("design:type",Object)],$.prototype,"viewerOptions",void 0),f([(0,m.inject)(E.TYPES.DOMHelper),h("design:type",M.DOMHelper)],$.prototype,"domHelper",void 0),f([(0,m.inject)(H.MousePositionTracker),h("design:type",H.MousePositionTracker)],$.prototype,"mousePositionTracker",void 0),sg.CommandPalette=$=w=f([(0,m.injectable)()],$);function W(ce){return(0,g.isLabeledAction)(ce)?ce.actions:(0,P.isAction)(ce)?[ce]:[]}function re(ce){return ce.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}class ae extends _.KeyListener{keyDown(J,te){if((0,j.matchesKeystroke)(te,"Escape"))return[T.SetUIExtensionVisibilityAction.create({extensionId:$.ID,visible:!1,contextElementsId:[]})];if($.isInvokePaletteKey(te)){const fe=(0,O.toArray)(J.index.all().filter(ve=>(0,x.isSelectable)(ve)&&ve.selected).map(ve=>ve.id));return[T.SetUIExtensionVisibilityAction.create({extensionId:$.ID,visible:!0,contextElementsId:fe})]}return[]}}return sg.CommandPaletteKeyListener=ae,sg}var _L={},Ogt;function gUt(){if(Ogt)return _L;Ogt=1,Object.defineProperty(_L,"__esModule",{value:!0}),_L.toAnchor=void 0;function f(h){return h instanceof HTMLElement?{x:h.offsetLeft,y:h.offsetTop}:h}return _L.toAnchor=f,_L}var Wd={},v3={},Dgt;function oN(){return Dgt||(Dgt=1,(function(f){var h=v3&&v3.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},b=v3&&v3.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)},w=v3&&v3.__param||function(I,O){return function(j,k){O(j,k,I)}};Object.defineProperty(f,"__esModule",{value:!0}),f.DeleteElementCommand=f.ResolvedDelete=f.isDeletable=f.deletableFeature=void 0;const m=Zt(),P=jc(),g=Ca(),E=Oc(),C=Qn();f.deletableFeature=Symbol("deletableFeature");function T(I){return I instanceof E.SChildElementImpl&&I.hasFeature(f.deletableFeature)}f.isDeletable=T;class M{}f.ResolvedDelete=M;let _=class extends g.Command{constructor(O){super(),this.action=O,this.resolvedDeletes=[]}execute(O){const j=O.root.index;for(const k of this.action.elementIds){const x=j.getById(k);x&&T(x)&&(this.resolvedDeletes.push({child:x,parent:x.parent}),x.parent.remove(x))}return O.root}undo(O){for(const j of this.resolvedDeletes)j.parent.add(j.child);return O.root}redo(O){for(const j of this.resolvedDeletes)j.parent.remove(j.child);return O.root}};f.DeleteElementCommand=_,_.KIND=P.DeleteElementAction.KIND,f.DeleteElementCommand=_=h([(0,m.injectable)(),w(0,(0,m.inject)(C.TYPES.Action)),b("design:paramtypes",[Object])],_)})(v3)),v3}var kgt;function zye(){if(kgt)return Wd;kgt=1;var f=Wd&&Wd.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Wd&&Wd.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=Wd&&Wd.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(Wd,"__esModule",{value:!0}),Wd.DeleteContextMenuItemProvider=Wd.ContextMenuProviderRegistry=void 0;const w=Zt(),m=Qn(),P=oN(),g=Rb(),E=Sp();let C=class{constructor(_=[]){this.menuProviders=_}getItems(_,I){const O=this.menuProviders.map(j=>j.getItems(_,I));return Promise.all(O).then(this.flattenAndRestructure)}flattenAndRestructure(_){let I=_.reduce((j,k)=>k!==void 0?j.concat(k):j,[]);const O=I.filter(j=>j.parentId);for(const j of O)if(j.parentId){const k=j.parentId.split(".");let x,R=I;for(const H of k)x=R.find(F=>H===F.id),x&&x.children&&(R=x.children);x&&(x.children?x.children.push(j):x.children=[j],I=I.filter(H=>H!==j))}return I}};Wd.ContextMenuProviderRegistry=C,Wd.ContextMenuProviderRegistry=C=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.IContextMenuItemProvider)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],C);let T=class{getItems(_,I){const O=Array.from(_.index.all().filter(g.isSelected).filter(P.isDeletable));return Promise.resolve([{id:"delete",label:"Delete",sortString:"d",group:"edit",actions:[E.DeleteElementAction.create(O.map(j=>j.id))],isEnabled:()=>O.length>0}])}};return Wd.DeleteContextMenuItemProvider=T,Wd.DeleteContextMenuItemProvider=T=f([(0,w.injectable)()],T),Wd}var pp={},Rgt;function fwt(){if(Rgt)return pp;Rgt=1;var f=pp&&pp.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=pp&&pp.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)},b=pp&&pp.__param||function(_,I){return function(O,j){I(O,j,_)}};Object.defineProperty(pp,"__esModule",{value:!0}),pp.ContextMenuMouseListener=void 0;const w=Zt(),m=jc(),P=Qh(),g=Qn(),E=Pp(),C=Rb(),T=zye();let M=class extends E.MouseListener{constructor(I,O){super(),this.contextMenuService=I,this.menuProvider=O}contextMenu(I,O){return this.showContextMenu(I,O),[]}async showContextMenu(I,O){let j;try{j=await this.contextMenuService()}catch{return}let k=!1;const x=(0,P.findParentByFeature)(I,C.isSelectable);x&&(k=x.selected,x.selected=!0);const R=I.root,H={x:O.x,y:O.y};if(I.id===R.id||(0,C.isSelected)(x)){const F=await this.menuProvider.getItems(R,H),$=()=>{x&&(x.selected=k)};j.show(F,H,$)}else{if((0,C.isSelectable)(I)){const $={selectedElementsIDs:[I.id],deselectedElementsIDs:Array.from(R.index.all().filter(C.isSelected),W=>W.id)};await this.actionDispatcher.dispatch(m.SelectAction.create($))}const F=await this.menuProvider.getItems(R,H);j.show(F,H)}}};return pp.ContextMenuMouseListener=M,f([(0,w.inject)(g.TYPES.IActionDispatcher),h("design:type",Object)],M.prototype,"actionDispatcher",void 0),pp.ContextMenuMouseListener=M=f([b(0,(0,w.inject)(g.TYPES.IContextMenuServiceProvider)),b(1,(0,w.inject)(g.TYPES.IContextMenuProviderRegistry)),h("design:paramtypes",[Function,T.ContextMenuProviderRegistry])],M),pp}var tX={},fy={},gh={},ave={},lve={},fve={},xgt;function PA(){return xgt||(xgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.hasPopupFeature=f.popupFeature=f.isHoverable=f.hoverFeedbackFeature=void 0,f.hoverFeedbackFeature=Symbol("hoverFeedbackFeature");function h(w){return w.hasFeature(f.hoverFeedbackFeature)}f.isHoverable=h,f.popupFeature=Symbol("popupFeature");function b(w){return w.hasFeature(f.popupFeature)}f.hasPopupFeature=b})(fve)),fve}var hve={},Lgt;function SS(){return Lgt||(Lgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isMoveable=f.isLocateable=f.moveFeature=void 0;const h=_S();f.moveFeature=Symbol("moveFeature");function b(m){return(0,h.hasOwnProperty)(m,"position")}f.isLocateable=b;function w(m){return m.hasFeature(f.moveFeature)&&b(m)}f.isMoveable=w})(hve)),hve}var Ngt;function Ma(){return Ngt||(Ngt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.edgeInProgressTargetHandleID=f.edgeInProgressID=f.SDanglingAnchorImpl=f.SRoutingHandleImpl=f.SConnectableElementImpl=f.getRouteBounds=f.getAbsoluteRouteBounds=f.isConnectable=f.connectableFeature=f.SRoutableElementImpl=void 0;const h=Ac(),b=Oc(),w=Xs(),m=oN(),P=Rb(),g=PA(),E=SS();class C extends b.SChildElementImpl{constructor(){super(...arguments),this.routingPoints=[]}get source(){return this.index.getById(this.sourceId)}get target(){return this.index.getById(this.targetId)}get bounds(){return this.routingPoints.reduce((x,R)=>h.Bounds.combine(x,{x:R.x,y:R.y,width:0,height:0}),h.Bounds.EMPTY)}}f.SRoutableElementImpl=C,f.connectableFeature=Symbol("connectableFeature");function T(k){return k.hasFeature(f.connectableFeature)&&k.canConnect}f.isConnectable=T;function M(k,x=k.routingPoints){let R=_(x),H=k;for(;H instanceof b.SChildElementImpl;){const F=H.parent;R=F.localToParent(R),H=F}return R}f.getAbsoluteRouteBounds=M;function _(k){const x={x:NaN,y:NaN,width:0,height:0};for(const R of k)isNaN(x.x)?(x.x=R.x,x.y=R.y):(R.xx.x+x.width&&(x.width=R.x-x.x),R.yx.y+x.height&&(x.height=R.y-x.y));return x}f.getRouteBounds=_;class I extends w.SShapeElementImpl{constructor(){super(...arguments),this.strokeWidth=0}get anchorKind(){}get incomingEdges(){return this.index.all().filter(R=>R instanceof C).filter(R=>R.targetId===this.id)}get outgoingEdges(){return this.index.all().filter(R=>R instanceof C).filter(R=>R.sourceId===this.id)}canConnect(x,R){return!0}}f.SConnectableElementImpl=I;class O extends b.SChildElementImpl{constructor(){super(...arguments),this.editMode=!1,this.hoverFeedback=!1,this.selected=!1}hasFeature(x){return O.DEFAULT_FEATURES.indexOf(x)!==-1}}f.SRoutingHandleImpl=O,O.DEFAULT_FEATURES=[P.selectFeature,E.moveFeature,g.hoverFeedbackFeature];class j extends I{constructor(){super(),this.type="dangling-anchor",this.size={width:0,height:0}}}f.SDanglingAnchorImpl=j,j.DEFAULT_FEATURES=[m.deletableFeature],f.edgeInProgressID="edge-in-progress",f.edgeInProgressTargetHandleID=f.edgeInProgressID+"-target-anchor"})(lve)),lve}var Fgt;function cN(){return Fgt||(Fgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.DEFAULT_EDGE_PLACEMENT=f.EdgePlacement=f.checkEdgePlacement=f.isEdgeLayoutable=f.edgeLayoutFeature=void 0;const h=Oc(),b=Xs(),w=Ma();f.edgeLayoutFeature=Symbol("edgeLayout");function m(E){return E instanceof h.SChildElementImpl&&E.parent instanceof w.SRoutableElementImpl&&(0,b.isBoundsAware)(E)&&E.hasFeature(f.edgeLayoutFeature)}f.isEdgeLayoutable=m;function P(E){return"edgePlacement"in E}f.checkEdgePlacement=P;class g extends Object{}f.EdgePlacement=g,f.DEFAULT_EDGE_PLACEMENT={rotate:!0,side:"top",position:.5,offset:7}})(ave)),ave}var dve={},Bgt;function sN(){return Bgt||(Bgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isWithEditableLabel=f.withEditLabelFeature=f.isEditableLabel=f.editLabelFeature=f.canEditRouting=f.editFeature=void 0;const h=Ma();f.editFeature=Symbol("editFeature");function b(P){return P instanceof h.SRoutableElementImpl&&P.hasFeature(f.editFeature)}f.canEditRouting=b,f.editLabelFeature=Symbol("editLabelFeature");function w(P){return"text"in P&&P.hasFeature(f.editLabelFeature)}f.isEditableLabel=w,f.withEditLabelFeature=Symbol("withEditLabelFeature");function m(P){return"editableLabel"in P&&P.hasFeature(f.withEditLabelFeature)}f.isWithEditableLabel=m})(dve)),dve}var EL={},gve={},dm={},$gt;function PS(){if($gt)return dm;$gt=1,Object.defineProperty(dm,"__esModule",{value:!0}),dm.limit=dm.intersection=dm.PointToPointLine=dm.Diamond=void 0;const f=Sp();class h{constructor(g){this.bounds=g}get topPoint(){return{x:this.bounds.x+this.bounds.width/2,y:this.bounds.y}}get rightPoint(){return{x:this.bounds.x+this.bounds.width,y:this.bounds.y+this.bounds.height/2}}get bottomPoint(){return{x:this.bounds.x+this.bounds.width/2,y:this.bounds.y+this.bounds.height}}get leftPoint(){return{x:this.bounds.x,y:this.bounds.y+this.bounds.height/2}}get topRightSideLine(){return new b(this.topPoint,this.rightPoint)}get topLeftSideLine(){return new b(this.topPoint,this.leftPoint)}get bottomRightSideLine(){return new b(this.bottomPoint,this.rightPoint)}get bottomLeftSideLine(){return new b(this.bottomPoint,this.leftPoint)}closestSideLine(g){const E=f.Bounds.center(this.bounds);return g.x>E.x?g.y>E.y?this.bottomRightSideLine:this.topRightSideLine:g.y>E.y?this.bottomLeftSideLine:this.topLeftSideLine}}dm.Diamond=h;class b{constructor(g,E){this.p1=g,this.p2=E}get a(){return this.p1.y-this.p2.y}get b(){return this.p2.x-this.p1.x}get c(){return this.p2.x*this.p1.y-this.p1.x*this.p2.y}get angle(){return Math.atan2(-this.a,this.b)}get slope(){if(this.b!==0)return this.a/this.b}get slopeOrMax(){return this.slope===void 0?Number.MAX_SAFE_INTEGER:this.slope}get direction(){const g=(0,f.toDegrees)(this.angle),E=g<0?360+g:g;if(E===90)return"south";if(E===0||E===360)return"east";if(E===270)return"north";if(E===180)return"west";if(E>0&&E<90)return"south-east";if(E>90&&E<180)return"south-west";if(E>180&&E<270)return"north-west";if(E>270&&E<360)return"north-east";throw new Error(`Cannot determine direction of line (${this.p1.x},${this.p1.y}) to (${this.p2.x},${this.p2.y})`)}intersection(g){if(this.hasIndistinctPoints(g))return;const E=this.p1.x,C=this.p1.y,T=this.p2.x,M=this.p2.y,_=g.p1.x,I=g.p1.y,O=g.p2.x,j=g.p2.y,k=(j-I)*(T-E)-(O-_)*(M-C);if(k===0)return;const x=(O-_)*(C-I)-(j-I)*(E-_),R=(T-E)*(C-I)-(M-C)*(E-_);if(x===0&&R===0)return;const H=x/k,F=R/k;if(H<0||H>1||F<0||F>1)return;const $=E+H*(T-E),W=C+H*(M-C);return{x:$,y:W}}hasIndistinctPoints(g){return f.Point.equals(this.p1,g.p1)||f.Point.equals(this.p1,g.p2)||f.Point.equals(this.p2,g.p1)||f.Point.equals(this.p2,g.p2)}}dm.PointToPointLine=b;function w(P,g){return{x:(P.c*g.b-g.c*P.b)/(P.a*g.b-g.a*P.b),y:(P.a*g.c-g.a*P.c)/(P.a*g.b-g.a*P.b)}}dm.intersection=w;function m(P,g){return Pg.max?g.max:P}return dm.limit=m,dm}var Kgt;function V3(){return Kgt||(Kgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.limitViewport=f.isViewport=f.viewportFeature=void 0;const h=Sp(),b=Oc(),w=PS();f.viewportFeature=Symbol("viewportFeature");function m(g){return g instanceof b.SModelRootImpl&&g.hasFeature(f.viewportFeature)&&"zoom"in g&&"scroll"in g}f.isViewport=m;function P(g,E,C,T,M){E&&!h.Dimension.isValid(E)&&(E=void 0);let _=M?(0,w.limit)(g.zoom,M):g.zoom;if(E&&C){const j=E.width/(C.max-C.min);_ae instanceof k)===void 0}get incomingEdges(){const W=this.index;return W instanceof F?W.getIncomingEdges(this):this.index.all().filter(ae=>ae instanceof x).filter(ae=>ae.targetId===this.id)}get outgoingEdges(){const W=this.index;return W instanceof F?W.getOutgoingEdges(this):this.index.all().filter(ae=>ae instanceof x).filter(ae=>ae.sourceId===this.id)}}gh.SNodeImpl=j,j.DEFAULT_FEATURES=[T.connectableFeature,m.deletableFeature,M.selectFeature,b.boundsFeature,C.moveFeature,b.layoutContainerFeature,g.fadeFeature,E.hoverFeedbackFeature,E.popupFeature];class k extends T.SConnectableElementImpl{constructor(){super(...arguments),this.selected=!1,this.hoverFeedback=!1,this.opacity=1}get incomingEdges(){const W=this.index;return W instanceof F?W.getIncomingEdges(this):super.incomingEdges.filter(re=>re instanceof x)}get outgoingEdges(){const W=this.index;return W instanceof F?W.getOutgoingEdges(this):super.outgoingEdges.filter(re=>re instanceof x)}}gh.SPortImpl=k,k.DEFAULT_FEATURES=[T.connectableFeature,M.selectFeature,b.boundsFeature,g.fadeFeature,E.hoverFeedbackFeature];class x extends T.SRoutableElementImpl{constructor(){super(...arguments),this.selected=!1,this.hoverFeedback=!1,this.opacity=1}}gh.SEdgeImpl=x,x.DEFAULT_FEATURES=[P.editFeature,m.deletableFeature,M.selectFeature,g.fadeFeature,E.hoverFeedbackFeature];class R extends b.SShapeElementImpl{constructor(){super(...arguments),this.selected=!1,this.alignment=f.Point.ORIGIN,this.opacity=1}}gh.SLabelImpl=R,R.DEFAULT_FEATURES=[b.boundsFeature,b.alignFeature,b.layoutableChildFeature,w.edgeLayoutFeature,g.fadeFeature];class H extends b.SShapeElementImpl{constructor(){super(...arguments),this.opacity=1}}gh.SCompartmentImpl=H,H.DEFAULT_FEATURES=[b.boundsFeature,b.layoutContainerFeature,b.layoutableChildFeature,g.fadeFeature];class F extends h.ModelIndexImpl{constructor(){super(...arguments),this.outgoing=new Map,this.incoming=new Map}add(W){if(super.add(W),W instanceof x){if(W.sourceId){const re=this.outgoing.get(W.sourceId);re===void 0?this.outgoing.set(W.sourceId,[W]):re.push(W)}if(W.targetId){const re=this.incoming.get(W.targetId);re===void 0?this.incoming.set(W.targetId,[W]):re.push(W)}}}remove(W){if(super.remove(W),W instanceof x){const re=this.outgoing.get(W.sourceId);if(re!==void 0){const ce=re.indexOf(W);ce>=0&&(re.length===1?this.outgoing.delete(W.sourceId):re.splice(ce,1))}const ae=this.incoming.get(W.targetId);if(ae!==void 0){const ce=ae.indexOf(W);ce>=0&&(ae.length===1?this.incoming.delete(W.targetId):ae.splice(ce,1))}}}getAttachedElements(W){return new I.FluentIterableImpl(()=>({outgoing:this.outgoing.get(W.id),incoming:this.incoming.get(W.id),nextOutgoingIndex:0,nextIncomingIndex:0}),re=>{let ae=re.nextOutgoingIndex;if(re.outgoing!==void 0&&ae=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O},b=y3&&y3.__metadata||function(C,T){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(C,T)},w=y3&&y3.__param||function(C,T){return function(M,_){T(M,_,C)}};Object.defineProperty(f,"__esModule",{value:!0}),f.AnchorComputerRegistry=f.RECTANGULAR_ANCHOR_KIND=f.ELLIPTIC_ANCHOR_KIND=f.DIAMOND_ANCHOR_KIND=void 0;const m=Zt(),P=Qn(),g=q3();f.DIAMOND_ANCHOR_KIND="diamond",f.ELLIPTIC_ANCHOR_KIND="elliptic",f.RECTANGULAR_ANCHOR_KIND="rectangular";let E=class extends g.InstanceRegistry{constructor(T){super(),T.forEach(M=>this.register(M.kind,M))}get defaultAnchorKind(){return f.RECTANGULAR_ANCHOR_KIND}get(T,M){return super.get(`${T}:${M||this.defaultAnchorKind}`)}};f.AnchorComputerRegistry=E,f.AnchorComputerRegistry=E=h([(0,m.injectable)(),w(0,(0,m.multiInject)(P.TYPES.IAnchorComputer)),b("design:paramtypes",[Array])],E)})(y3)),y3}var ag={},Ggt;function pJ(){if(Ggt)return ag;Ggt=1;var f=ag&&ag.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=ag&&ag.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)};Object.defineProperty(ag,"__esModule",{value:!0}),ag.AbstractEdgeRouter=ag.DefaultAnchors=ag.Side=void 0;const b=Zt(),w=Ac(),m=Qh(),P=Ma(),g=MS(),E=Ma();var C;(function(_){_[_.RIGHT=0]="RIGHT",_[_.LEFT=1]="LEFT",_[_.TOP=2]="TOP",_[_.BOTTOM=3]="BOTTOM"})(C||(ag.Side=C={}));class T{constructor(I,O,j){this.element=I,this.kind=j;const k=I.bounds;this.bounds=(0,m.translateBounds)(k,I.parent,O),this.left={x:this.bounds.x,y:this.bounds.y+.5*this.bounds.height,kind:j},this.right={x:this.bounds.x+this.bounds.width,y:this.bounds.y+.5*this.bounds.height,kind:j},this.top={x:this.bounds.x+.5*this.bounds.width,y:this.bounds.y,kind:j},this.bottom={x:this.bounds.x+.5*this.bounds.width,y:this.bounds.y+this.bounds.height,kind:j}}get(I){return this[C[I].toLowerCase()]}getNearestSide(I){const O=w.Point.euclideanDistance(I,this.left),j=w.Point.euclideanDistance(I,this.right),k=w.Point.euclideanDistance(I,this.top),x=w.Point.euclideanDistance(I,this.bottom);let R=C.LEFT,H=O;return j{const W=w.Point.subtract($,F),re=w.Point.subtract(O,F),ae=w.Point.dotProduct(re,W)/w.Point.dotProduct(W,W);return ae>=0&&ae<=1?w.Point.linear(F,$,ae):ae<0?F:$},k=this.route(I);let x=k[0],R=0;for(let F=0;F1)return;const j=this.route(I);if(j.length<2)return;const k=[];let x=0;for(let F=0;F1e-8&&$>=H){const W=Math.max(0,H-R)/k[F];return{segmentStart:j[F],segmentEnd:j[F+1],lambda:W}}R=$}return{segmentEnd:j.pop(),segmentStart:j.pop(),lambda:1}}addHandle(I,O,j,k){const x=new P.SRoutingHandleImpl;return x.kind=O,x.pointIndex=k,x.type=j,O==="target"&&I.id===P.edgeInProgressID&&(x.id=P.edgeInProgressTargetHandleID),I.add(x),x}getHandlePosition(I,O,j){switch(j.kind){case"source":return I.source instanceof P.SDanglingAnchorImpl?I.source.position:O[0];case"target":return I.target instanceof P.SDanglingAnchorImpl?I.target.position:O[O.length-1];default:const k=this.getInnerHandlePosition(I,O,j);if(k!==void 0)return k;if(j.pointIndex>=0&&j.pointIndexH.pointIndex!==void 0?H.pointIndex:H.kind==="target"?I.routingPoints.length:-2;let x,R;for(const H of O){const F=k(H);F<=j&&(x===void 0||F>k(x))&&(x=H),F>j&&(R===void 0||F{const x=k.handle;if(x.kind==="source"&&!(I.source instanceof P.SDanglingAnchorImpl)){const R=new P.SDanglingAnchorImpl;R.id=I.id+"_dangling-source",R.original=I.source,R.position=k.toPosition,x.root.add(R),x.danglingAnchor=R,I.sourceId=R.id}else if(x.kind==="target"&&!(I.target instanceof P.SDanglingAnchorImpl)){const R=new P.SDanglingAnchorImpl;R.id=I.id+"_dangling-target",R.original=I.target,R.position=k.toPosition,x.root.add(R),x.danglingAnchor=R,I.targetId=R.id}x.danglingAnchor&&(x.danglingAnchor.position=k.toPosition,j.splice(j.indexOf(k),1))}),j.length>0&&this.applyInnerHandleMoves(I,j),this.cleanupRoutingPoints(I,I.routingPoints,!0,!0)}cleanupRoutingPoints(I,O,j,k){const x=new T(I.source,I.parent,"source"),R=new T(I.target,I.parent,"target");this.resetRoutingPointsOnReconnect(I,O,j,x,R)}resetRoutingPointsOnReconnect(I,O,j,k,x){if(O.length===0||I.source instanceof P.SDanglingAnchorImpl||I.target instanceof P.SDanglingAnchorImpl){const R=this.getOptions(I),H=this.calculateDefaultCorners(I,k,x,R);if(O.splice(0,O.length,...H),j){let F=-2;I.children.forEach($=>{$ instanceof P.SRoutingHandleImpl&&($.kind==="target"?$.pointIndex=O.length:$.kind==="line"&&$.pointIndex>=O.length?I.remove($):F=Math.max($.pointIndex,F))});for(let $=F;$`${I.sourceId}_to_${I.targetId}_${$}`;let R=0,H=x(R);for(;I.index.getById(H)!==void 0;)H=x(++R);I.id=H;const F=I.children.find($=>$.id===P.edgeInProgressTargetHandleID);F instanceof P.SRoutingHandleImpl&&(I.remove(F),F.danglingAnchor&&F.danglingAnchor.parent.remove(F.danglingAnchor))}I.index.add(I),this.getSelfEdgeIndex(I)>-1&&(I.routingPoints=[],this.cleanupRoutingPoints(I,I.routingPoints,!0,!0))}}takeSnapshot(I){return{routingPoints:I.routingPoints.slice(),routingHandles:I.children.filter(O=>O instanceof P.SRoutingHandleImpl).map(O=>O),routedPoints:this.route(I),router:this,source:I.source,target:I.target}}applySnapshot(I,O){I.routingPoints=O.routingPoints,I.removeAll(j=>j instanceof P.SRoutingHandleImpl),I.routerKind=O.router.kind,O.routingHandles.forEach(j=>I.add(j)),O.source&&(I.sourceId=O.source.id),O.target&&(I.targetId=O.target.id),I.root.index.remove(I),I.root.index.add(I)}calculateDefaultCorners(I,O,j,k){const x=this.getSelfEdgeIndex(I);if(x>=0){const R=k.standardDistance,H=k.selfEdgeOffset*Math.min(O.bounds.width,O.bounds.height);switch(x%4){case 0:return[{x:O.get(C.RIGHT).x+R,y:O.get(C.RIGHT).y+H},{x:O.get(C.RIGHT).x+R,y:O.get(C.BOTTOM).y+R},{x:O.get(C.BOTTOM).x+H,y:O.get(C.BOTTOM).y+R}];case 1:return[{x:O.get(C.BOTTOM).x-H,y:O.get(C.BOTTOM).y+R},{x:O.get(C.LEFT).x-R,y:O.get(C.BOTTOM).y+R},{x:O.get(C.LEFT).x-R,y:O.get(C.LEFT).y+H}];case 2:return[{x:O.get(C.LEFT).x-R,y:O.get(C.LEFT).y-H},{x:O.get(C.LEFT).x-R,y:O.get(C.TOP).y-R},{x:O.get(C.TOP).x-H,y:O.get(C.TOP).y-R}];case 3:return[{x:O.get(C.TOP).x+H,y:O.get(C.TOP).y-R},{x:O.get(C.RIGHT).x+R,y:O.get(C.TOP).y-R},{x:O.get(C.RIGHT).x+R,y:O.get(C.RIGHT).y-H}]}}return[]}getSelfEdgeIndex(I){return!I.source||I.source!==I.target?-1:I.source.outgoingEdges.filter(O=>O.target===I.source).indexOf(I)}commitRoute(I,O){const j=[];for(let k=1;k=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=hy&&hy.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b;Object.defineProperty(hy,"__esModule",{value:!0}),hy.PolylineEdgeRouter=void 0;const w=Zt(),m=Ac(),P=Ma(),g=MS(),E=pJ();let C=b=class extends E.AbstractEdgeRouter{get kind(){return b.KIND}getOptions(M){return{minimalPointDistance:2,removeAngleThreshold:.1,standardDistance:20,selfEdgeOffset:.25}}route(M){const _=M.source,I=M.target;if(_===void 0||I===void 0)return[];let O,j;const k=this.getOptions(M),x=M.routingPoints.length>0?M.routingPoints:[];this.cleanupRoutingPoints(M,x,!1,!1);const R=x!==void 0?x.length:0;if(R===0){const F=m.Bounds.center(I.bounds);O=this.getTranslatedAnchor(_,F,I.parent,M,M.sourceAnchorCorrection);const $=m.Bounds.center(_.bounds);j=this.getTranslatedAnchor(I,$,_.parent,M,M.targetAnchorCorrection)}else{const F=x[0];O=this.getTranslatedAnchor(_,F,M.parent,M,M.sourceAnchorCorrection);const $=x[R-1];j=this.getTranslatedAnchor(I,$,M.parent,M,M.targetAnchorCorrection)}const H=[];H.push({kind:"source",x:O.x,y:O.y});for(let F=0;F0&&F=k.minimalPointDistance+(M.sourceAnchorCorrection||0)||F===R-1&&m.Point.maxDistance($,j)>=k.minimalPointDistance+(M.targetAnchorCorrection||0))&&H.push({kind:"linear",x:$.x,y:$.y,pointIndex:F})}return H.push({kind:"target",x:j.x,y:j.y}),this.filterEditModeHandles(H,M,k)}filterEditModeHandles(M,_,I){if(_.children.length===0)return M;let O=0;for(;Ox instanceof P.SRoutingHandleImpl&&x.kind==="junction"&&x.pointIndex===j.pointIndex);if(k!==void 0&&k.editMode&&O>0&&O{const O=I.handle,j=M.routingPoints;let k=O.pointIndex;O.kind==="line"&&(O.kind="junction",O.type="routing-point",j.splice(k+1,0,I.fromPosition||j[Math.max(k,0)]),M.children.forEach(x=>{x instanceof P.SRoutingHandleImpl&&(x===O||x.pointIndex>k)&&x.pointIndex++}),this.addHandle(M,"line","volatile-routing-point",k),k++,this.addHandle(M,"line","volatile-routing-point",k)),k>=0&&k=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=ug&&ug.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)},b=ug&&ug.__param||function(O,j){return function(k,x){j(k,x,O)}};Object.defineProperty(ug,"__esModule",{value:!0}),ug.EdgeRouting=ug.EdgeRouterRegistry=void 0;const w=Zt(),m=Oc(),P=Qn(),g=iN(),E=q3(),C=Ma(),T=wJ();function M(O){return O.routeAll!==void 0}let _=class extends E.InstanceRegistry{constructor(j){super(),j.forEach(k=>this.register(k.kind,k))}get defaultKind(){return T.PolylineEdgeRouter.KIND}get(j){return super.get(j||this.defaultKind)}routeAllChildren(j){const k=this.doRouteAllChildren(j);for(const x of this.postProcessors)x.apply(k,j);return k}doRouteAllChildren(j){const k=new I,x=new Map,R=[j];for(;R.length>0;){const H=R.shift();for(const F of H.children){if(F instanceof C.SRoutableElementImpl){const $=F.routerKind||this.defaultKind;x.has($)?x.get($).push(F):x.set($,[F])}F instanceof m.SParentElementImpl&&R.push(F)}}return x.forEach((H,F)=>{const $=this.get(F);if(M($))k.setAll($.routeAll(H,j));else for(const W of H)k.set(W.id,this.route(W))}),k}route(j,k){const x=(0,g.findArgValue)(k,"edgeRouting");if(x){const H=x.get(j.id);if(H)return H}return this.get(j.routerKind).route(j)}};ug.EdgeRouterRegistry=_,f([(0,w.multiInject)(P.TYPES.IEdgeRoutePostprocessor),(0,w.optional)(),h("design:type",Array)],_.prototype,"postProcessors",void 0),ug.EdgeRouterRegistry=_=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.IEdgeRouter)),h("design:paramtypes",[Array])],_);class I{constructor(){this.routesMap=new Map}set(j,k){this.routesMap.set(j,k)}setAll(j){j.routes.forEach((k,x)=>this.set(x,k))}get(j){return this.routesMap.get(j)}get routes(){return this.routesMap}}return ug.EdgeRouting=I,ug}var Ygt;function hwt(){if(Ygt)return fy;Ygt=1;var f=fy&&fy.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=fy&&fy.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(fy,"__esModule",{value:!0}),fy.EdgeLayoutPostprocessor=void 0;const b=Zt(),w=Ac(),m=Oc(),P=mh(),g=MA(),E=Xs(),C=cN(),T=Iy(),M=Qn(),_=SS();let I=class{decorate(j,k){var x,R,H,F;if((0,C.isEdgeLayoutable)(k)&&k.parent instanceof g.SEdgeImpl&&k.bounds!==w.Bounds.EMPTY){const $=k.bounds,W=(0,C.checkEdgePlacement)(k),re=this.getEdgePlacement(k),ae=k.parent,ce=Math.min(1,Math.max(0,re.position)),J=this.edgeRouterRegistry.get(ae.routerKind),te=J.pointAt(ae,ce);let fe="",ve=J.derivativeAt(ae,ce);if(te)if(W){switch(re.moveMode){case"edge":const me=J.findOrthogonalIntersection(ae,w.Point.add(te,$));me&&(ve=me.derivative,fe+=`translate(${me.point.x}, ${me.point.y})`);break;case"free":fe+=`translate(${((x=te?.x)!==null&&x!==void 0?x:0)+$.x}, ${((R=te?.y)!==null&&R!==void 0?R:0)+$.y})`;break;case"none":fe+=`translate(${te.x}, ${te.y})`;break;default:this.logger.error({},"No moveMode set for edge label. Skipping edge placement.");break}if(ve){const me=(0,w.toDegrees)(Math.atan2(ve.y,ve.x));if(re.rotate){let ke=me;Math.abs(me)>90&&(me<0?ke+=180:me>0&&(ke-=180)),fe+=` rotate(${ke})`;const tt=this.getRotatedAlignment(k,re,ke!==me);fe+=` translate(${tt.x}, ${tt.y})`}else{const ke=this.getAlignment(k,re,me);fe+=` translate(${ke.x}, ${ke.y})`}}}else(0,_.isMoveable)(k)?fe+=`translate(${((H=te?.x)!==null&&H!==void 0?H:0)+$.x}, ${((F=te?.y)!==null&&F!==void 0?F:0)+$.y})`:fe+=`translate(${te.x}, ${te.y})`;(0,P.setAttr)(j,"transform",fe)}return j}getRotatedAlignment(j,k,x){let R=(0,E.isAlignable)(j)?j.alignment.x:0,H=(0,E.isAlignable)(j)?j.alignment.y:0;const F=j.bounds;if(k.side==="on")return{x:R-.5*F.height,y:H-.5*F.height};if(x)switch(k.position<.3333333?R-=F.width+k.offset:k.position<.6666666?R-=.5*F.width:R+=k.offset,k.side){case"left":case"bottom":H-=k.offset+F.height;break;case"right":case"top":H+=k.offset}else switch(k.position<.3333333?R+=k.offset:k.position<.6666666?R-=.5*F.width:R-=F.width+k.offset,k.side){case"right":case"bottom":H+=-k.offset-F.height;break;case"left":case"top":H+=k.offset}return{x:R,y:H}}getEdgePlacement(j){let k=j;const x=[];for(;k!==void 0;){const H=k.edgePlacement;if(H!==void 0&&x.push(H),k instanceof m.SChildElementImpl)k=k.parent;else break}const R=x.reverse().reduce((H,F)=>Object.assign(Object.assign({},H),F),C.DEFAULT_EDGE_PLACEMENT);return R.moveMode||(R.moveMode=(0,_.isMoveable)(j)?"edge":"none"),R}getAlignment(j,k,x){const R=j.bounds,H=(0,E.isAlignable)(j)?j.alignment.x-R.width:0,F=(0,E.isAlignable)(j)?j.alignment.y-R.height:0;if(k.side==="on")return{x:H+.5*R.width,y:F+.5*R.height};const $=this.getQuadrant(x),W={x:k.offset,y:F+.5*R.height},re={x:k.offset,y:F+R.height+k.offset},ae={x:-R.width-k.offset,y:F+R.height+k.offset},ce={x:-R.width-k.offset,y:F+.5*R.height},J={x:-R.width-k.offset,y:F-k.offset},te={x:k.offset,y:F-k.offset};switch(k.side){case"left":switch($.orientation){case"west":return w.Point.linear(re,ae,$.position);case"north":return w.Point.linear(ae,J,$.position);case"east":return w.Point.linear(J,te,$.position);case"south":return w.Point.linear(te,re,$.position)}break;case"right":switch($.orientation){case"west":return w.Point.linear(J,te,$.position);case"north":return w.Point.linear(te,re,$.position);case"east":return w.Point.linear(re,ae,$.position);case"south":return w.Point.linear(ae,J,$.position)}break;case"top":switch($.orientation){case"west":return w.Point.linear(J,te,$.position);case"north":return this.linearFlip(te,W,ce,J,$.position);case"east":return w.Point.linear(J,te,$.position);case"south":return this.linearFlip(te,W,ce,J,$.position)}break;case"bottom":switch($.orientation){case"west":return w.Point.linear(re,ae,$.position);case"north":return this.linearFlip(ae,ce,W,re,$.position);case"east":return w.Point.linear(re,ae,$.position);case"south":return this.linearFlip(ae,ce,W,re,$.position)}break}return{x:0,y:0}}getQuadrant(j){return Math.abs(j)>135?{orientation:"west",position:(j>0?j-135:j+225)/90}:j<-45?{orientation:"north",position:(j+135)/90}:j<45?{orientation:"east",position:(j+45)/90}:{orientation:"south",position:(j-45)/90}}linearFlip(j,k,x,R,H){return H<.5?w.Point.linear(j,k,2*H):w.Point.linear(x,R,2*H-1)}postUpdate(){}};return fy.EdgeLayoutPostprocessor=I,f([(0,b.inject)(T.EdgeRouterRegistry),h("design:type",T.EdgeRouterRegistry)],I.prototype,"edgeRouterRegistry",void 0),f([(0,b.inject)(M.TYPES.ILogger),h("design:type",Object)],I.prototype,"logger",void 0),fy.EdgeLayoutPostprocessor=I=f([(0,b.injectable)()],I),fy}var Xgt;function Rve(){if(Xgt)return tX;Xgt=1,Object.defineProperty(tX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=hwt(),w=new f.ContainerModule(m=>{m(b.EdgeLayoutPostprocessor).toSelf().inSingletonScope(),m(h.TYPES.IVNodePostprocessor).toService(b.EdgeLayoutPostprocessor),m(h.TYPES.HiddenVNodePostprocessor).toService(b.EdgeLayoutPostprocessor)});return tX.default=w,tX}var wp={},Jgt;function bUt(){if(Jgt)return wp;Jgt=1;var f=wp&&wp.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=wp&&wp.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=wp&&wp.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(wp,"__esModule",{value:!0}),wp.CreateElementCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Oc(),E=Qn();let C=class extends P.Command{constructor(M){super(),this.action=M}execute(M){const _=M.root.index.getById(this.action.containerId);return _ instanceof g.SParentElementImpl&&(this.container=_,this.newElement=M.modelFactory.createElement(this.action.elementSchema),this.container.add(this.newElement)),M.root}undo(M){return this.container.remove(this.newElement),M.root}redo(M){return this.container.add(this.newElement),M.root}};return wp.CreateElementCommand=C,C.KIND=m.CreateElementAction.KIND,wp.CreateElementCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(E.TYPES.Action)),h("design:paramtypes",[Object])],C),wp}var pve={},Qgt;function dwt(){return Qgt||(Qgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isCreatingOnDrag=f.creatingOnDragFeature=void 0,f.creatingOnDragFeature=Symbol("creatingOnDragFeature");function h(b){return b.hasFeature(f.creatingOnDragFeature)&&b.createAction!==void 0}f.isCreatingOnDrag=h})(pve)),pve}var _3={},yl={},Zgt;function gwt(){if(Zgt)return yl;Zgt=1;var f=yl&&yl.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R};Object.defineProperty(yl,"__esModule",{value:!0}),yl.EmptyGroupView=yl.DiamondNodeView=yl.RectangularNodeView=yl.CircularNodeView=yl.SvgViewportView=void 0;const h=Cy(),b=MA(),w=gJ(),m=PS(),P=Zt();let g=class{render(O,j,k){const x=`scale(${O.zoom}) translate(${-O.scroll.x},${-O.scroll.y})`;return(0,h.svg)("svg",null,(0,h.svg)("g",{transform:x},j.renderChildren(O)))}};yl.SvgViewportView=g,yl.SvgViewportView=g=f([(0,P.injectable)()],g);let E=class extends w.ShapeView{render(O,j,k){if(!this.isVisible(O,j))return;const x=this.getRadius(O);return(0,h.svg)("g",null,(0,h.svg)("circle",{"class-sprotty-node":O instanceof b.SNodeImpl,"class-sprotty-port":O instanceof b.SPortImpl,"class-mouseover":O.hoverFeedback,"class-selected":O.selected,r:x,cx:x,cy:x}),j.renderChildren(O))}getRadius(O){const j=Math.min(O.size.width,O.size.height);return j>0?j/2:0}};yl.CircularNodeView=E,yl.CircularNodeView=E=f([(0,P.injectable)()],E);let C=class extends w.ShapeView{render(O,j,k){if(this.isVisible(O,j))return(0,h.svg)("g",null,(0,h.svg)("rect",{"class-sprotty-node":O instanceof b.SNodeImpl,"class-sprotty-port":O instanceof b.SPortImpl,"class-mouseover":O.hoverFeedback,"class-selected":O.selected,x:"0",y:"0",width:Math.max(O.size.width,0),height:Math.max(O.size.height,0)}),j.renderChildren(O))}};yl.RectangularNodeView=C,yl.RectangularNodeView=C=f([(0,P.injectable)()],C);let T=class extends w.ShapeView{render(O,j,k){if(!this.isVisible(O,j))return;const x=new m.Diamond({height:Math.max(O.size.height,0),width:Math.max(O.size.width,0),x:0,y:0}),R=`${M(x.topPoint)} ${M(x.rightPoint)} ${M(x.bottomPoint)} ${M(x.leftPoint)}`;return(0,h.svg)("g",null,(0,h.svg)("polygon",{"class-sprotty-node":O instanceof b.SNodeImpl,"class-sprotty-port":O instanceof b.SPortImpl,"class-mouseover":O.hoverFeedback,"class-selected":O.selected,points:R}),j.renderChildren(O))}};yl.DiamondNodeView=T,yl.DiamondNodeView=T=f([(0,P.injectable)()],T);function M(I){return`${I.x},${I.y}`}let _=class{render(O,j){return(0,h.svg)("g",null)}};return yl.EmptyGroupView=_,yl.EmptyGroupView=_=f([(0,P.injectable)()],_),yl}var Ws={},ebt;function Uye(){if(ebt)return Ws;ebt=1;var f=Ws&&Ws.__decorate||function(W,re,ae,ce){var J=arguments.length,te=J<3?re:ce===null?ce=Object.getOwnPropertyDescriptor(re,ae):ce,fe;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")te=Reflect.decorate(W,re,ae,ce);else for(var ve=W.length-1;ve>=0;ve--)(fe=W[ve])&&(te=(J<3?fe(te):J>3?fe(re,ae,te):fe(re,ae))||te);return J>3&&te&&Object.defineProperty(re,ae,te),te},h=Ws&&Ws.__metadata||function(W,re){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(W,re)},b=Ws&&Ws.__param||function(W,re){return function(ae,ce){re(ae,ce,W)}};Object.defineProperty(Ws,"__esModule",{value:!0}),Ws.getEditableLabel=Ws.EditLabelKeyListener=Ws.EditLabelMouseListener=Ws.ApplyLabelEditCommand=Ws.ResolvedLabelEdit=Ws.isApplyLabelEditAction=Ws.isEditLabelAction=Ws.EditLabelAction=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=Pp(),C=H3(),T=z3(),M=Rb(),_=_A(),I=sN();var O;(function(W){W.KIND="EditLabel";function re(ae){return{kind:W.KIND,labelId:ae}}W.create=re})(O||(Ws.EditLabelAction=O={}));function j(W){return(0,m.isAction)(W)&&W.kind===O.KIND&&"labelId"in W}Ws.isEditLabelAction=j;function k(W){return(0,m.isAction)(W)&&W.kind===m.ApplyLabelEditAction.KIND&&"labelId"in W&&"text"in W}Ws.isApplyLabelEditAction=k;class x{}Ws.ResolvedLabelEdit=x;let R=class extends P.Command{constructor(re){super(),this.action=re}execute(re){const ce=re.root.index.getById(this.action.labelId);return ce&&(0,I.isEditableLabel)(ce)&&(this.resolvedLabelEdit={label:ce,oldLabel:ce.text,newLabel:this.action.text},ce.text=this.action.text),re.root}undo(re){return this.resolvedLabelEdit&&(this.resolvedLabelEdit.label.text=this.resolvedLabelEdit.oldLabel),re.root}redo(re){return this.resolvedLabelEdit&&(this.resolvedLabelEdit.label.text=this.resolvedLabelEdit.newLabel),re.root}};Ws.ApplyLabelEditCommand=R,R.KIND=m.ApplyLabelEditAction.KIND,Ws.ApplyLabelEditCommand=R=f([b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],R);class H extends E.MouseListener{doubleClick(re,ae){const ce=$(re);return ce?[O.create(ce.id)]:[]}}Ws.EditLabelMouseListener=H;class F extends C.KeyListener{keyDown(re,ae){if((0,T.matchesKeystroke)(ae,"F2")){const ce=(0,_.toArray)(re.index.all().filter(J=>(0,M.isSelectable)(J)&&J.selected)).map($).filter(J=>J!==void 0);if(ce.length===1)return[O.create(ce[0].id)]}return[]}}Ws.EditLabelKeyListener=F;function $(W){if((0,I.isEditableLabel)(W))return W;if((0,I.isWithEditableLabel)(W)&&W.editableLabel)return W.editableLabel}return Ws.getEditableLabel=$,Ws}var jb={},lg={},Ab={},tbt;function CA(){if(tbt)return Ab;tbt=1;var f=Ab&&Ab.__decorate||function(C,T,M,_){var I=arguments.length,O=I<3?T:_===null?_=Object.getOwnPropertyDescriptor(T,M):_,j;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")O=Reflect.decorate(C,T,M,_);else for(var k=C.length-1;k>=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O},h=Ab&&Ab.__metadata||function(C,T){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(C,T)};Object.defineProperty(Ab,"__esModule",{value:!0}),Ab.ComputedBoundsApplicator=Ab.ModelSource=void 0;const b=Zt(),w=jc(),m=LM(),P=Qn();let g=class{initialize(T){T.register(w.RequestModelAction.KIND,this),T.register(w.ExportSvgAction.KIND,this)}};Ab.ModelSource=g,f([(0,b.inject)(P.TYPES.IActionDispatcher),h("design:type",Object)],g.prototype,"actionDispatcher",void 0),f([(0,b.inject)(P.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"viewerOptions",void 0),Ab.ModelSource=g=f([(0,b.injectable)()],g);let E=class{apply(T,M){const _=new m.SModelIndex;_.add(T);for(const I of M.bounds){const O=_.getById(I.elementId);O!==void 0&&this.applyBounds(O,I.newPosition,I.newSize)}if(M.alignments!==void 0)for(const I of M.alignments){const O=_.getById(I.elementId);O!==void 0&&this.applyAlignment(O,I.newAlignment)}return _}applyAlignment(T,M){const _=T;_.alignment={x:M.x,y:M.y}}applyBounds(T,M,_){const I=T;M&&(I.position=Object.assign({},M)),I.size=Object.assign({},_)}};return Ab.ComputedBoundsApplicator=E,Ab.ComputedBoundsApplicator=E=f([(0,b.injectable)()],E),Ab}var nbt;function mJ(){if(nbt)return lg;nbt=1;var f=lg&&lg.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=lg&&lg.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=lg&&lg.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(lg,"__esModule",{value:!0}),lg.CommitModelCommand=lg.CommitModelAction=void 0;const w=Zt(),m=Ca(),P=Qn(),g=CA();var E;(function(T){T.KIND="commitModel";function M(){return{kind:T.KIND}}T.create=M})(E||(lg.CommitModelAction=E={}));let C=class extends m.SystemCommand{constructor(M){super(),this.action=M}execute(M){return this.newModel=M.modelFactory.createSchema(M.root),this.doCommit(this.newModel,M.root,!0)}doCommit(M,_,I){const O=this.modelSource.commitModel(M);return O instanceof Promise?O.then(j=>(I&&(this.originalModel=j),_)):(I&&(this.originalModel=O),_)}undo(M){return this.doCommit(this.originalModel,M.root,!1)}redo(M){return this.doCommit(this.newModel,M.root,!1)}};return lg.CommitModelCommand=C,C.KIND=E.KIND,f([(0,w.inject)(P.TYPES.ModelSource),h("design:type",g.ModelSource)],C.prototype,"modelSource",void 0),lg.CommitModelCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(P.TYPES.Action)),h("design:paramtypes",[Object])],C),lg}var gm={},ibt;function Wye(){if(ibt)return gm;ibt=1;var f=gm&&gm.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=gm&&gm.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(gm,"__esModule",{value:!0}),gm.ZoomMouseListener=gm.getZoom=void 0;const b=Zt(),w=jc(),m=Ac(),P=Qh(),g=Qn(),E=Pp(),C=My(),T=V3(),M=PS();function _(O){let j=1;const k=(0,P.findParentByFeature)(O,T.isViewport);return k&&(j=k.zoom),j}gm.getZoom=_;class I extends E.MouseListener{wheel(j,k){const x=(0,P.findParentByFeature)(j,T.isViewport);if(!x)return[];const R=this.isScrollMode(k)?this.processScroll(x,k):this.processZoom(x,j,k);return R?[w.SetViewportAction.create(x.id,R,{animate:!1})]:[]}isScrollMode(j){return j.altKey}processScroll(j,k){return{scroll:{x:j.scroll.x+k.deltaX,y:j.scroll.y+k.deltaY},zoom:j.zoom}}processZoom(j,k,x){const R=this.getZoomFactor(x);if(R>1&&(0,m.almostEquals)(j.zoom,this.viewerOptions.zoomLimits.max)||R<1&&(0,m.almostEquals)(j.zoom,this.viewerOptions.zoomLimits.min))return;const H=(0,M.limit)(j.zoom*R,this.viewerOptions.zoomLimits),F=this.getViewportOffset(k.root,x),$=1/H-1/j.zoom;return{scroll:{x:j.scroll.x-$*F.x,y:j.scroll.y-$*F.y},zoom:H}}getViewportOffset(j,k){const x=j.canvasBounds,R=(0,C.getWindowScroll)();return{x:k.clientX+R.x-x.x,y:k.clientY+R.y-x.y}}getZoomFactor(j){return j.deltaMode===j.DOM_DELTA_PAGE?Math.exp(-j.deltaY*.5):j.deltaMode===j.DOM_DELTA_LINE?Math.exp(-j.deltaY*.05):Math.exp(-j.deltaY*.005)}}return gm.ZoomMouseListener=I,f([(0,b.inject)(g.TYPES.ViewerOptions),h("design:type",Object)],I.prototype,"viewerOptions",void 0),gm}var rbt;function bwt(){if(rbt)return jb;rbt=1;var f=jb&&jb.__decorate||function($,W,re,ae){var ce=arguments.length,J=ce<3?W:ae===null?ae=Object.getOwnPropertyDescriptor(W,re):ae,te;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")J=Reflect.decorate($,W,re,ae);else for(var fe=$.length-1;fe>=0;fe--)(te=$[fe])&&(J=(ce<3?te(J):ce>3?te(W,re,J):te(W,re))||J);return ce>3&&J&&Object.defineProperty(W,re,J),J},h=jb&&jb.__metadata||function($,W){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata($,W)},b;Object.defineProperty(jb,"__esModule",{value:!0}),jb.EditLabelUI=jb.EditLabelActionHandler=void 0;const w=Zt(),m=jc(),P=Qn(),g=Lye(),E=hJ(),C=tN(),T=mJ(),M=z3(),_=Xs(),I=Wye(),O=Uye(),j=sN();let k=class{handle(W){if((0,O.isEditLabelAction)(W))return E.SetUIExtensionVisibilityAction.create({extensionId:x.ID,visible:!0,contextElementsId:[W.labelId]})}};jb.EditLabelActionHandler=k,jb.EditLabelActionHandler=k=f([(0,w.injectable)()],k);let x=b=class extends g.AbstractUIExtension{constructor(){super(...arguments),this.validationTimeout=void 0,this.isActive=!1,this.blockApplyEditOnInvalidInput=!0,this.isCurrentLabelValid=!0}id(){return b.ID}containerClass(){return"label-edit"}get labelId(){return this.label?this.label.id:"unknown"}initializeContents(W){W.style.position="absolute",this.inputElement=document.createElement("input"),this.textAreaElement=document.createElement("textarea"),[this.inputElement,this.textAreaElement].forEach(re=>{re.onkeydown=ae=>this.applyLabelEditOnEvent(ae,"Enter"),this.configureAndAdd(re,W)})}configureAndAdd(W,re){W.style.visibility="hidden",W.style.position="absolute",W.style.top="0px",W.style.left="0px",W.addEventListener("keydown",ae=>this.hideIfEscapeEvent(ae)),W.addEventListener("keyup",ae=>this.validateLabelIfContentChange(ae,W.value)),W.addEventListener("blur",()=>window.setTimeout(()=>this.applyLabelEdit(),200)),re.appendChild(W)}get editControl(){return this.label&&this.label.isMultiLine?this.textAreaElement:this.inputElement}hideIfEscapeEvent(W){(0,M.matchesKeystroke)(W,"Escape")&&this.hide()}applyLabelEditOnEvent(W,re,...ae){(0,M.matchesKeystroke)(W,re||"Enter",...ae)&&(W.preventDefault(),this.applyLabelEdit())}validateLabelIfContentChange(W,re){(this.previousLabelContent===void 0||this.previousLabelContent!==re)&&(this.previousLabelContent=re,this.performLabelValidation(W,this.editControl.value))}async applyLabelEdit(){var W;if(this.isActive){if(((W=this.label)===null||W===void 0?void 0:W.text)===this.editControl.value){this.hide();return}if(this.blockApplyEditOnInvalidInput&&(await this.validateLabel(this.editControl.value)).severity==="error"){this.editControl.focus();return}this.actionDispatcherProvider().then(re=>re.dispatchAll([m.ApplyLabelEditAction.create(this.labelId,this.editControl.value),T.CommitModelAction.create()])).catch(re=>this.logger.error(this,"No action dispatcher available to execute apply label edit action",re)),this.hide()}}performLabelValidation(W,re){this.validationTimeout&&window.clearTimeout(this.validationTimeout),this.validationTimeout=window.setTimeout(()=>this.validateLabel(re),200)}async validateLabel(W){if(this.labelValidator&&this.label)try{const re=await this.labelValidator.validate(W,this.label);return this.isCurrentLabelValid=re.severity!=="error",this.showValidationResult(re),re}catch(re){this.logger.error(this,"Error validating edited label",re)}return this.isCurrentLabelValid=!0,{severity:"ok",message:void 0}}showValidationResult(W){this.clearValidationResult(),this.validationDecorator&&this.validationDecorator.decorate(this.editControl,W)}clearValidationResult(){this.validationDecorator&&this.validationDecorator.dispose(this.editControl)}show(W,...re){!R(re,W)||this.isActive||(super.show(W,...re),this.isActive=!0)}hide(){this.editControl.style.visibility="hidden",super.hide(),this.clearValidationResult(),this.isActive=!1,this.isCurrentLabelValid=!0,this.previousLabelContent=void 0,this.labelElement&&(this.labelElement.style.visibility="visible")}onBeforeShow(W,re,...ae){this.label=H(ae,re)[0],this.previousLabelContent=this.label.text,this.setPosition(W),this.applyTextContents(),this.applyFontStyling(),this.editControl.style.visibility="visible",this.editControl.focus()}setPosition(W){let re=0,ae=0,ce=100,J=20;if(this.label){const te=(0,I.getZoom)(this.label),fe=(0,_.getAbsoluteClientBounds)(this.label,this.domHelper,this.viewerOptions);re=fe.x+(this.label.editControlPositionCorrection?this.label.editControlPositionCorrection.x:0)*te,ae=fe.y+(this.label.editControlPositionCorrection?this.label.editControlPositionCorrection.y:0)*te,J=(this.label.editControlDimension?this.label.editControlDimension.height:J)*te,ce=(this.label.editControlDimension?this.label.editControlDimension.width:ce)*te}W.style.left=`${re}px`,W.style.top=`${ae}px`,W.style.width=`${ce}px`,this.editControl.style.width=`${ce}px`,W.style.height=`${J}px`,this.editControl.style.height=`${J}px`}applyTextContents(){this.label&&(this.editControl.value=this.label.text,this.editControl instanceof HTMLTextAreaElement?(this.editControl.selectionStart=0,this.editControl.selectionEnd=0,this.editControl.scrollTop=0,this.editControl.scrollLeft=0):this.editControl.setSelectionRange(0,this.editControl.value.length))}applyFontStyling(){if(this.label&&(this.labelElement=document.getElementById(this.domHelper.createUniqueDOMElementId(this.label)),this.labelElement)){this.labelElement.style.visibility="hidden";const W=window.getComputedStyle(this.labelElement);this.editControl.style.font=W.font,this.editControl.style.fontStyle=W.fontStyle,this.editControl.style.fontFamily=W.fontFamily,this.editControl.style.fontSize=F(W.fontSize,(0,I.getZoom)(this.label)),this.editControl.style.fontWeight=W.fontWeight,this.editControl.style.lineHeight=W.lineHeight}}};jb.EditLabelUI=x,x.ID="editLabelUi",f([(0,w.inject)(P.TYPES.IActionDispatcherProvider),h("design:type",Function)],x.prototype,"actionDispatcherProvider",void 0),f([(0,w.inject)(P.TYPES.ViewerOptions),h("design:type",Object)],x.prototype,"viewerOptions",void 0),f([(0,w.inject)(P.TYPES.DOMHelper),h("design:type",C.DOMHelper)],x.prototype,"domHelper",void 0),f([(0,w.inject)(P.TYPES.IEditLabelValidator),(0,w.optional)(),h("design:type",Object)],x.prototype,"labelValidator",void 0),f([(0,w.inject)(P.TYPES.IEditLabelValidationDecorator),(0,w.optional)(),h("design:type",Object)],x.prototype,"validationDecorator",void 0),jb.EditLabelUI=x=b=f([(0,w.injectable)()],x);function R($,W){return H($,W).length===1}function H($,W){return $.map(re=>W.index.getById(re)).filter(j.isEditableLabel)}function F($,W){return $.replace(/\d+(\.\d+)?/,re=>String(Number.parseInt(re,10)*W))}return jb}var fg={},obt;function vJ(){if(obt)return fg;obt=1;var f=fg&&fg.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h=fg&&fg.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)},b=fg&&fg.__param||function(I,O){return function(j,k){O(j,k,I)}};Object.defineProperty(fg,"__esModule",{value:!0}),fg.SwitchEditModeCommand=fg.SwitchEditModeAction=void 0;const w=Zt(),m=Ca(),P=Oc(),g=Qn(),E=Ma(),C=Iy(),T=sN();var M;(function(I){I.KIND="switchEditMode";function O(j){var k,x;return{kind:I.KIND,elementsToActivate:(k=j.elementsToActivate)!==null&&k!==void 0?k:[],elementsToDeactivate:(x=j.elementsToDeactivate)!==null&&x!==void 0?x:[]}}I.create=O})(M||(fg.SwitchEditModeAction=M={}));let _=class extends m.Command{constructor(O){super(),this.action=O,this.elementsToActivate=[],this.elementsToDeactivate=[],this.handlesToRemove=[]}execute(O){const j=O.root.index;return this.action.elementsToActivate.forEach(k=>{const x=j.getById(k);x!==void 0&&this.elementsToActivate.push(x)}),this.action.elementsToDeactivate.forEach(k=>{const x=j.getById(k);if(x!==void 0&&this.elementsToDeactivate.push(x),x instanceof E.SRoutingHandleImpl&&x.parent instanceof E.SRoutableElementImpl){const R=x.parent;this.shouldRemoveHandle(x,R)&&(this.handlesToRemove.push({handle:x,parent:R}),this.elementsToDeactivate.push(R),this.elementsToActivate.push(R))}}),this.doExecute(O)}doExecute(O){return this.handlesToRemove.forEach(j=>{j.point=j.parent.routingPoints.splice(j.handle.pointIndex,1)[0]}),this.elementsToDeactivate.forEach(j=>{j instanceof E.SRoutableElementImpl?j.removeAll(k=>k instanceof E.SRoutingHandleImpl):j instanceof E.SRoutingHandleImpl&&(j.editMode=!1,j.danglingAnchor&&j.parent instanceof E.SRoutableElementImpl&&j.danglingAnchor.original&&(j.parent.source===j.danglingAnchor?j.parent.sourceId=j.danglingAnchor.original.id:j.parent.target===j.danglingAnchor&&(j.parent.targetId=j.danglingAnchor.original.id),j.danglingAnchor.parent.remove(j.danglingAnchor),j.danglingAnchor=void 0))}),this.elementsToActivate.forEach(j=>{(0,T.canEditRouting)(j)&&j instanceof P.SParentElementImpl?this.edgeRouterRegistry.get(j.routerKind).createRoutingHandles(j):j instanceof E.SRoutingHandleImpl&&(j.editMode=!0)}),O.root}shouldRemoveHandle(O,j){return O.kind==="junction"?this.edgeRouterRegistry.route(j).find(x=>x.pointIndex===O.pointIndex)===void 0:!1}undo(O){return this.handlesToRemove.forEach(j=>{j.point!==void 0&&j.parent.routingPoints.splice(j.handle.pointIndex,0,j.point)}),this.elementsToActivate.forEach(j=>{j instanceof E.SRoutableElementImpl?j.removeAll(k=>k instanceof E.SRoutingHandleImpl):j instanceof E.SRoutingHandleImpl&&(j.editMode=!1)}),this.elementsToDeactivate.forEach(j=>{(0,T.canEditRouting)(j)?this.edgeRouterRegistry.get(j.routerKind).createRoutingHandles(j):j instanceof E.SRoutingHandleImpl&&(j.editMode=!0)}),O.root}redo(O){return this.doExecute(O)}};return fg.SwitchEditModeCommand=_,_.KIND=M.KIND,f([(0,w.inject)(C.EdgeRouterRegistry),h("design:type",C.EdgeRouterRegistry)],_.prototype,"edgeRouterRegistry",void 0),fg.SwitchEditModeCommand=_=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],_),fg}var mp={},cbt;function Yye(){if(cbt)return mp;cbt=1;var f=mp&&mp.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=mp&&mp.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=mp&&mp.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(mp,"__esModule",{value:!0}),mp.ReconnectCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=Ma(),C=Iy();let T=class extends P.Command{constructor(_){super(),this.action=_}execute(_){return this.doExecute(_),_.root}doExecute(_){const O=_.root.index.getById(this.action.routableId);if(O instanceof E.SRoutableElementImpl){const j=this.edgeRouterRegistry.get(O.routerKind),k=j.takeSnapshot(O);j.applyReconnect(O,this.action.newSourceId,this.action.newTargetId);const x=j.takeSnapshot(O);this.memento={edge:O,before:k,after:x}}}undo(_){return this.memento&&this.edgeRouterRegistry.get(this.memento.edge.routerKind).applySnapshot(this.memento.edge,this.memento.before),_.root}redo(_){return this.memento&&this.edgeRouterRegistry.get(this.memento.edge.routerKind).applySnapshot(this.memento.edge,this.memento.after),_.root}};return mp.ReconnectCommand=T,T.KIND=m.ReconnectAction.KIND,f([(0,w.inject)(C.EdgeRouterRegistry),h("design:type",C.EdgeRouterRegistry)],T.prototype,"edgeRouterRegistry",void 0),mp.ReconnectCommand=T=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],T),mp}var sbt;function pwt(){if(sbt)return _3;sbt=1,Object.defineProperty(_3,"__esModule",{value:!0}),_3.labelEditUiModule=_3.labelEditModule=_3.edgeEditModule=void 0;const f=Zt(),h=Qn(),b=kb(),w=lJ(),m=iN(),P=Ma(),g=gwt(),E=oN(),C=Uye(),T=bwt(),M=vJ(),_=Yye();return _3.edgeEditModule=new f.ContainerModule((I,O,j)=>{const k={bind:I,isBound:j};(0,b.configureCommand)(k,M.SwitchEditModeCommand),(0,b.configureCommand)(k,_.ReconnectCommand),(0,b.configureCommand)(k,E.DeleteElementCommand),(0,m.configureModelElement)(k,"dangling-anchor",P.SDanglingAnchorImpl,g.EmptyGroupView)}),_3.labelEditModule=new f.ContainerModule((I,O,j)=>{I(C.EditLabelMouseListener).toSelf().inSingletonScope(),I(h.TYPES.MouseListener).toService(C.EditLabelMouseListener),I(C.EditLabelKeyListener).toSelf().inSingletonScope(),I(h.TYPES.KeyListener).toService(C.EditLabelKeyListener),(0,b.configureCommand)({bind:I,isBound:j},C.ApplyLabelEditCommand)}),_3.labelEditUiModule=new f.ContainerModule((I,O,j)=>{const k={bind:I,isBound:j};(0,w.configureActionHandler)(k,C.EditLabelAction.KIND,T.EditLabelActionHandler),I(T.EditLabelUI).toSelf().inSingletonScope(),I(h.TYPES.IUIExtension).toService(T.EditLabelUI)}),_3}var X4={},wve={},ubt;function Xye(){return ubt||(ubt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isExpandable=f.expandFeature=void 0,f.expandFeature=Symbol("expandFeature");function h(b){return b.hasFeature(f.expandFeature)&&"expanded"in b}f.isExpandable=h})(wve)),wve}var abt;function wwt(){if(abt)return X4;abt=1;var f=X4&&X4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(X4,"__esModule",{value:!0}),X4.ExpandButtonHandler=void 0;const h=Zt(),b=jc(),w=Qh(),m=Xye();let P=class{buttonPressed(E){const C=(0,w.findParentByFeature)(E,m.isExpandable);return C!==void 0?[b.CollapseExpandAction.create({expandIds:C.expanded?[]:[C.id],collapseIds:C.expanded?[C.id]:[]})]:[]}};return X4.ExpandButtonHandler=P,P.TYPE="button:expand",X4.ExpandButtonHandler=P=f([(0,h.injectable)()],P),X4}var J4={},lbt;function pUt(){if(lbt)return J4;lbt=1;var f=J4&&J4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(J4,"__esModule",{value:!0}),J4.ExpandButtonView=void 0;const h=Cy(),b=Xye(),w=Qh(),m=Zt();let P=class{render(E,C){const T=(0,w.findParentByFeature)(E,b.isExpandable),M=T!==void 0&&T.expanded?"M 1,5 L 8,12 L 15,5 Z":"M 1,8 L 8,15 L 8,1 Z";return(0,h.svg)("g",{"class-sprotty-button":"{true}","class-enabled":"{button.enabled}"},(0,h.svg)("rect",{x:0,y:0,width:16,height:16,opacity:0}),(0,h.svg)("path",{d:M}))}};return J4.ExpandButtonView=P,J4.ExpandButtonView=P=f([(0,m.injectable)()],P),J4}var _l={},vp={},fbt;function Jye(){if(fbt)return vp;fbt=1;var f=vp&&vp.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=vp&&vp.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)};Object.defineProperty(vp,"__esModule",{value:!0}),vp.SvgExporter=vp.ExportSvgAction=void 0;const b=Zt(),w=Ac(),m=Rye(),P=Qn(),g=Xs();var E;(function(T){T.KIND="exportSvg";function M(_,I,O){return{kind:T.KIND,svg:_,responseId:I,options:O}}T.create=M})(E||(vp.ExportSvgAction=E={}));let C=class{constructor(){this.postprocessors=[]}export(M,_){var I;if(typeof document<"u"){const O=document.getElementById(this.options.hiddenDiv);if(O===null){this.log.warn(this,`Element with id ${this.options.hiddenDiv} not found. Nothing to export.`);return}const j=O.querySelector("svg");if(j===null){this.log.warn(this,`No svg element found in ${this.options.hiddenDiv} div. Nothing to export.`);return}const k=this.createSvg(j,M,(I=_?.options)!==null&&I!==void 0?I:{},_);this.actionDispatcher.dispatch(E.create(k,_?_.requestId:"",_?.options))}}createSvg(M,_,I,O){const j=new XMLSerializer,k=j.serializeToString(M),x=document.createElement("iframe");if(document.body.appendChild(x),!x.contentWindow)throw new Error("IFrame has no contentWindow");const R=x.contentWindow.document;R.open(),R.write(k),R.close();const H=R.querySelector("svg");H.removeAttribute("opacity"),I?.skipCopyStyles||this.copyStyles(M,H,["width","height","opacity","inline-size"]),H.setAttribute("version","1.1");const F=this.getBounds(_,R);H.setAttribute("viewBox",`${F.x} ${F.y} ${F.width} ${F.height}`),H.setAttribute("width",`${F.width}`),H.setAttribute("height",`${F.height}`),this.postprocessors.forEach(W=>{W.postUpdate(H,O)});const $=j.serializeToString(H);return document.body.removeChild(x),$}copyStyles(M,_,I){const O=getComputedStyle(M),j=getComputedStyle(_);let k="";for(let x=0;x{(0,g.isBoundsAware)(j)&&O.push(j.bounds)}),O.reduce((j,k)=>w.Bounds.combine(j,k))}};return vp.SvgExporter=C,f([(0,b.inject)(P.TYPES.ViewerOptions),h("design:type",Object)],C.prototype,"options",void 0),f([(0,b.inject)(P.TYPES.IActionDispatcher),h("design:type",m.ActionDispatcher)],C.prototype,"actionDispatcher",void 0),f([(0,b.inject)(P.TYPES.ILogger),h("design:type",Object)],C.prototype,"log",void 0),f([(0,b.multiInject)(P.TYPES.ISvgExportPostprocessor),(0,b.optional)(),h("design:type",Array)],C.prototype,"postprocessors",void 0),vp.SvgExporter=C=f([(0,b.injectable)()],C),vp}var hbt;function mwt(){if(hbt)return _l;hbt=1;var f=_l&&_l.__decorate||function(F,$,W,re){var ae=arguments.length,ce=ae<3?$:re===null?re=Object.getOwnPropertyDescriptor($,W):re,J;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(F,$,W,re);else for(var te=F.length-1;te>=0;te--)(J=F[te])&&(ce=(ae<3?J(ce):ae>3?J($,W,ce):J($,W))||ce);return ae>3&&ce&&Object.defineProperty($,W,ce),ce},h=_l&&_l.__metadata||function(F,$){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(F,$)},b=_l&&_l.__param||function(F,$){return function(W,re){$(W,re,F)}};Object.defineProperty(_l,"__esModule",{value:!0}),_l.ExportSvgPostprocessor=_l.ExportSvgCommand=_l.RequestExportSvgAction=_l.ExportSvgKeyListener=void 0;const w=Zt(),m=jc(),P=Ca(),g=Rb(),E=Oc(),C=H3(),T=z3(),M=Vye(),_=Jye(),I=V3(),O=PA(),j=Qn();let k=class extends C.KeyListener{keyDown($,W){return(0,T.matchesKeystroke)(W,"KeyE","ctrlCmd","shift")?[x.create()]:[]}};_l.ExportSvgKeyListener=k,_l.ExportSvgKeyListener=k=f([(0,w.injectable)()],k);var x;(function(F){F.KIND="requestExportSvg";function $(W={}){return{kind:F.KIND,requestId:(0,m.generateRequestId)(),options:W}}F.create=$})(x||(_l.RequestExportSvgAction=x={}));let R=class extends P.HiddenCommand{constructor($){super(),this.action=$}execute($){if((0,M.isExportable)($.root)){const W=$.modelFactory.createRoot($.root);if((0,M.isExportable)(W))return(0,I.isViewport)(W)&&(W.zoom=1,W.scroll={x:0,y:0}),W.index.all().forEach(re=>{(0,g.isSelectable)(re)&&re.selected&&(re.selected=!1),(0,O.isHoverable)(re)&&re.hoverFeedback&&(re.hoverFeedback=!1)}),{model:W,modelChanged:!0,cause:this.action}}return{model:$.root,modelChanged:!1}}};_l.ExportSvgCommand=R,R.KIND=x.KIND,_l.ExportSvgCommand=R=f([b(0,(0,w.inject)(j.TYPES.Action)),h("design:paramtypes",[Object])],R);let H=class{decorate($,W){return W instanceof E.SModelRootImpl&&(this.root=W),$}postUpdate($){this.root&&$!==void 0&&$.kind===x.KIND&&this.svgExporter.export(this.root,$)}};return _l.ExportSvgPostprocessor=H,f([(0,w.inject)(j.TYPES.SvgExporter),h("design:type",_.SvgExporter)],H.prototype,"svgExporter",void 0),_l.ExportSvgPostprocessor=H=f([(0,w.injectable)()],H),_l}var mve={},dbt;function wUt(){return dbt||(dbt=1,Object.defineProperty(mve,"__esModule",{value:!0})),mve}var dy={},gbt;function Qye(){if(gbt)return dy;gbt=1;var f=dy&&dy.__decorate||function(C,T,M,_){var I=arguments.length,O=I<3?T:_===null?_=Object.getOwnPropertyDescriptor(T,M):_,j;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")O=Reflect.decorate(C,T,M,_);else for(var k=C.length-1;k>=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O};Object.defineProperty(dy,"__esModule",{value:!0}),dy.ElementFader=dy.FadeAnimation=void 0;const h=Zt(),b=SA(),w=Oc(),m=mh(),P=rN();class g extends b.Animation{constructor(T,M,_,I=!1){super(_),this.model=T,this.elementFades=M,this.removeAfterFadeOut=I}tween(T,M){for(const _ of this.elementFades){const I=_.element;_.type==="in"?I.opacity=T:_.type==="out"&&(I.opacity=1-T,T===1&&this.removeAfterFadeOut&&I instanceof w.SChildElementImpl&&I.parent.remove(I))}return this.model}}dy.FadeAnimation=g;let E=class{decorate(T,M){return(0,P.isFadeable)(M)&&M.opacity!==1&&(0,m.setAttr)(T,"opacity",M.opacity),T}postUpdate(){}};return dy.ElementFader=E,dy.ElementFader=E=f([(0,h.injectable)()],E),dy}var Ms={},bbt;function vwt(){if(bbt)return Ms;bbt=1;var f=Ms&&Ms.__decorate||function(ae,ce,J,te){var fe=arguments.length,ve=fe<3?ce:te===null?te=Object.getOwnPropertyDescriptor(ce,J):te,me;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ve=Reflect.decorate(ae,ce,J,te);else for(var ke=ae.length-1;ke>=0;ke--)(me=ae[ke])&&(ve=(fe<3?me(ve):fe>3?me(ce,J,ve):me(ce,J))||ve);return fe>3&&ve&&Object.defineProperty(ce,J,ve),ve},h=Ms&&Ms.__metadata||function(ae,ce){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ae,ce)},b=Ms&&Ms.__param||function(ae,ce){return function(J,te){ce(J,te,ae)}};Object.defineProperty(Ms,"__esModule",{value:!0}),Ms.ClosePopupActionHandler=Ms.HoverKeyListener=Ms.PopupHoverMouseListener=Ms.HoverMouseListener=Ms.AbstractHoverMouseListener=Ms.SetPopupModelCommand=Ms.HoverFeedbackCommand=void 0;const w=Zt(),m=jc(),P=Ac(),g=z3(),E=Qn(),C=Oc(),T=Pp(),M=Ca(),_=ES(),I=H3(),O=Qh(),j=Xs(),k=PA();let x=class extends M.SystemCommand{constructor(ce){super(),this.action=ce}execute(ce){const te=ce.root.index.getById(this.action.mouseoverElement);return te&&(0,k.isHoverable)(te)&&(te.hoverFeedback=this.action.mouseIsOver),this.redo(ce)}undo(ce){return ce.root}redo(ce){return ce.root}};Ms.HoverFeedbackCommand=x,x.KIND=m.HoverFeedbackAction.KIND,Ms.HoverFeedbackCommand=x=f([(0,w.injectable)(),b(0,(0,w.inject)(E.TYPES.Action)),h("design:paramtypes",[Object])],x);let R=class extends M.PopupCommand{constructor(ce){super(),this.action=ce}execute(ce){return this.oldRoot=ce.root,this.newRoot=ce.modelFactory.createRoot(this.action.newRoot),this.newRoot}undo(ce){return this.oldRoot}redo(ce){return this.newRoot}};Ms.SetPopupModelCommand=R,R.KIND=m.SetPopupModelAction.KIND,Ms.SetPopupModelCommand=R=f([(0,w.injectable)(),b(0,(0,w.inject)(E.TYPES.Action)),h("design:paramtypes",[Object])],R);class H extends T.MouseListener{mouseDown(ce,J){return this.mouseIsDown=!0,[]}mouseUp(ce,J){return this.mouseIsDown=!1,[]}stopMouseOutTimer(){this.state.mouseOutTimer!==void 0&&(window.clearTimeout(this.state.mouseOutTimer),this.state.mouseOutTimer=void 0)}startMouseOutTimer(){return this.stopMouseOutTimer(),new Promise(ce=>{this.state.mouseOutTimer=window.setTimeout(()=>{this.state.popupOpen=!1,this.state.previousPopupElement=void 0,ce(m.SetPopupModelAction.create({type:_.EMPTY_ROOT.type,id:_.EMPTY_ROOT.id}))},this.options.popupCloseDelay)})}stopMouseOverTimer(){this.state.mouseOverTimer!==void 0&&(window.clearTimeout(this.state.mouseOverTimer),this.state.mouseOverTimer=void 0)}}Ms.AbstractHoverMouseListener=H,f([(0,w.inject)(E.TYPES.ViewerOptions),h("design:type",Object)],H.prototype,"options",void 0),f([(0,w.inject)(E.TYPES.HoverState),h("design:type",Object)],H.prototype,"state",void 0);let F=class extends H{computePopupBounds(ce,J){let te={x:-5,y:20};const fe=(0,j.getAbsoluteBounds)(ce),ve=ce.root.canvasBounds,me=P.Bounds.translate(fe,ve),ke=me.x+me.width-J.x,tt=me.y+me.height-J.y;tt<=ke&&this.allowSidePosition(ce,"below",tt)?te={x:-5,y:Math.round(tt+5)}:ke<=tt&&this.allowSidePosition(ce,"right",ke)&&(te={x:Math.round(ke+5),y:-5});let De=J.x+te.x;const ct=ve.x+ve.width;De>ct&&(De=ct);let Z=J.y+te.y;const Nt=ve.y+ve.height;return Z>Nt&&(Z=Nt),{x:De,y:Z,width:-1,height:-1}}allowSidePosition(ce,J,te){return!(ce instanceof C.SModelRootImpl)&&te<=150}startMouseOverTimer(ce,J){return this.stopMouseOverTimer(),new Promise(te=>{this.state.mouseOverTimer=window.setTimeout(()=>{const fe=this.computePopupBounds(ce,{x:J.pageX,y:J.pageY});te(m.RequestPopupModelAction.create({elementId:ce.id,bounds:fe})),this.state.popupOpen=!0,this.state.previousPopupElement=ce},this.options.popupOpenDelay)})}mouseOver(ce,J){const te=[];if(!this.mouseIsDown){const fe=(0,O.findParent)(ce,k.hasPopupFeature);this.state.popupOpen&&(fe===void 0||this.state.previousPopupElement!==void 0&&this.state.previousPopupElement.id!==fe.id)?te.push(this.startMouseOutTimer()):(this.stopMouseOverTimer(),this.stopMouseOutTimer()),fe!==void 0&&(this.state.previousPopupElement===void 0||this.state.previousPopupElement.id!==fe.id)&&te.push(this.startMouseOverTimer(fe,J)),this.lastHoverFeedbackElementId&&(te.push(m.HoverFeedbackAction.create({mouseoverElement:this.lastHoverFeedbackElementId,mouseIsOver:!1})),this.lastHoverFeedbackElementId=void 0);const ve=(0,O.findParentByFeature)(ce,k.isHoverable);ve!==void 0&&(te.push(m.HoverFeedbackAction.create({mouseoverElement:ve.id,mouseIsOver:!0})),this.lastHoverFeedbackElementId=ve.id)}return te}mouseOut(ce,J){const te=[];if(!this.mouseIsDown){const fe=this.getElementFromEventPosition(J);if(!this.isSprottyPopup(fe)){if(this.state.popupOpen){const me=(0,O.findParent)(ce,k.hasPopupFeature);this.state.previousPopupElement!==void 0&&me!==void 0&&this.state.previousPopupElement.id===me.id&&te.push(this.startMouseOutTimer())}this.stopMouseOverTimer();const ve=(0,O.findParentByFeature)(ce,k.isHoverable);ve!==void 0&&(te.push(m.HoverFeedbackAction.create({mouseoverElement:ve.id,mouseIsOver:!1})),this.lastHoverFeedbackElementId&&this.lastHoverFeedbackElementId!==ve.id&&te.push(m.HoverFeedbackAction.create({mouseoverElement:this.lastHoverFeedbackElementId,mouseIsOver:!1})),this.lastHoverFeedbackElementId=void 0)}}return te}getElementFromEventPosition(ce){return document.elementFromPoint(ce.x,ce.y)}isSprottyPopup(ce){return ce?ce.id===this.options.popupDiv||!!ce.parentElement&&this.isSprottyPopup(ce.parentElement):!1}mouseMove(ce,J){const te=[];if(!this.mouseIsDown){this.state.previousPopupElement!==void 0&&this.closeOnMouseMove(this.state.previousPopupElement,J)&&te.push(this.startMouseOutTimer());const fe=(0,O.findParent)(ce,k.hasPopupFeature);fe!==void 0&&(this.state.previousPopupElement===void 0||this.state.previousPopupElement.id!==fe.id)&&te.push(this.startMouseOverTimer(fe,J))}return te}closeOnMouseMove(ce,J){return ce instanceof C.SModelRootImpl}};Ms.HoverMouseListener=F,f([(0,w.inject)(E.TYPES.ViewerOptions),h("design:type",Object)],F.prototype,"options",void 0),Ms.HoverMouseListener=F=f([(0,w.injectable)()],F);let $=class extends H{mouseOut(ce,J){return[this.startMouseOutTimer()]}mouseOver(ce,J){return this.stopMouseOutTimer(),this.stopMouseOverTimer(),[]}};Ms.PopupHoverMouseListener=$,Ms.PopupHoverMouseListener=$=f([(0,w.injectable)()],$);class W extends I.KeyListener{keyDown(ce,J){return(0,g.matchesKeystroke)(J,"Escape")?[m.SetPopupModelAction.create({type:_.EMPTY_ROOT.type,id:_.EMPTY_ROOT.id})]:[]}}Ms.HoverKeyListener=W;let re=class{constructor(){this.popupOpen=!1}handle(ce){if(ce.kind===R.KIND)this.popupOpen=ce.newRoot.type!==_.EMPTY_ROOT.type;else if(this.popupOpen)return m.SetPopupModelAction.create({id:_.EMPTY_ROOT.id,type:_.EMPTY_ROOT.type})}};return Ms.ClosePopupActionHandler=re,Ms.ClosePopupActionHandler=re=f([(0,w.injectable)()],re),Ms}var vve={},pbt;function Zye(){return pbt||(pbt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.SIssue=f.SIssueMarker=f.SIssueMarkerImpl=f.SDecoration=f.isDecoration=f.decorationFeature=void 0;const h=Xs(),b=PA();f.decorationFeature=Symbol("decorationFeature");function w(E){return E.hasFeature(f.decorationFeature)}f.isDecoration=w;class m extends h.SShapeElementImpl{}f.SDecoration=m,m.DEFAULT_FEATURES=[f.decorationFeature,h.boundsFeature,b.hoverFeedbackFeature,b.popupFeature];class P extends m{}f.SIssueMarkerImpl=P,f.SIssueMarker=P;class g{}f.SIssue=g})(vve)),vve}var Q4={},wbt;function ywt(){if(wbt)return Q4;wbt=1;var f=Q4&&Q4.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(Q4,"__esModule",{value:!0}),Q4.IssueMarkerView=void 0;const h=Cy(),b=mh(),w=Zt();let m=class{render(g,E){const C=.008928571428571428,T=`scale(${C}, ${C})`,M=this.getMaxSeverity(g),_=(0,h.svg)("g",{"class-sprotty-issue":!0},(0,h.svg)("g",{transform:T},(0,h.svg)("path",{d:this.getPath(M)})));return(0,b.setClass)(_,"sprotty-"+M,!0),_}getMaxSeverity(g){let E="info";for(const C of g.issues.map(T=>T.severity))(C==="error"||C==="warning"&&E==="info")&&(E=C);return E}getPath(g){switch(g){case"error":case"warning":return"M768 128q209 0 385.5 103t279.5 279.5 103 385.5-103 385.5-279.5 279.5-385.5 103-385.5-103-279.5-279.5-103-385.5 103-385.5 279.5-279.5 385.5-103zm128 1247v-190q0-14-9-23.5t-22-9.5h-192q-13 0-23 10t-10 23v190q0 13 10 23t23 10h192q13 0 22-9.5t9-23.5zm-2-344l18-621q0-12-10-18-10-8-24-8h-220q-14 0-24 8-10 6-10 18l17 621q0 10 10 17.5t24 7.5h185q14 0 23.5-7.5t10.5-17.5z";case"info":return"M1024 1376v-160q0-14-9-23t-23-9h-96v-512q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v160q0 14 9 23t23 9h96v320h-96q-14 0-23 9t-9 23v160q0 14 9 23t23 9h448q14 0 23-9t9-23zm-128-896v-160q0-14-9-23t-23-9h-192q-14 0-23 9t-9 23v160q0 14 9 23t23 9h192q14 0 23-9t9-23zm640 416q0 209-103 385.5t-279.5 279.5-385.5 103-385.5-103-279.5-279.5-103-385.5 103-385.5 279.5-279.5 385.5-103 385.5 103 279.5 279.5 103 385.5z"}}};return Q4.IssueMarkerView=m,Q4.IssueMarkerView=m=f([(0,w.injectable)()],m),Q4}var gy={},mbt;function _wt(){if(mbt)return gy;mbt=1;var f=gy&&gy.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=gy&&gy.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)};Object.defineProperty(gy,"__esModule",{value:!0}),gy.DecorationPlacer=void 0;const b=Zt(),w=Oc(),m=Zye(),P=mh(),g=Xs(),E=Ma(),C=Iy(),T=Sp();let M=class{decorate(I,O){if((0,m.isDecoration)(O)){const j=this.getPosition(O),k="translate("+j.x+", "+j.y+")";(0,P.setAttr)(I,"transform",k)}return I}getPosition(I){if(I instanceof w.SChildElementImpl&&I.parent instanceof E.SRoutableElementImpl){const O=this.edgeRouterRegistry.route(I.parent);if(O.length>1){const j=Math.floor(.5*(O.length-1)),k=(0,g.isSizeable)(I)?{x:-.5*I.bounds.width,y:-.5*I.bounds.width}:T.Point.ORIGIN;return{x:.5*(O[j].x+O[j+1].x)+k.x,y:.5*(O[j].y+O[j+1].y)+k.y}}}return(0,g.isSizeable)(I)?{x:-.666*I.bounds.width,y:-.666*I.bounds.height}:T.Point.ORIGIN}postUpdate(){}};return gy.DecorationPlacer=M,f([(0,b.inject)(C.EdgeRouterRegistry),h("design:type",C.EdgeRouterRegistry)],M.prototype,"edgeRouterRegistry",void 0),gy.DecorationPlacer=M=f([(0,b.injectable)()],M),gy}var El={};class mUt{constructor(h=[],b=vUt){if(this.data=h,this.length=this.data.length,this.compare=b,this.length>0)for(let w=(this.length>>1)-1;w>=0;w--)this._down(w)}push(h){this.data.push(h),this.length++,this._up(this.length-1)}pop(){if(this.length===0)return;const h=this.data[0],b=this.data.pop();return this.length--,this.length>0&&(this.data[0]=b,this._down(0)),h}peek(){return this.data[0]}_up(h){const{data:b,compare:w}=this,m=b[h];for(;h>0;){const P=h-1>>1,g=b[P];if(w(m,g)>=0)break;b[h]=g,h=P}b[h]=m}_down(h){const{data:b,compare:w}=this,m=this.length>>1,P=b[h];for(;h=0)break;b[h]=E,h=g}b[h]=P}}function vUt(f,h){return fh?1:0}const yUt=Object.freeze(Object.defineProperty({__proto__:null,default:mUt},Symbol.toStringTag,{value:"Module"})),Ewt=V0t(yUt);var Za={},vbt;function Swt(){if(vbt)return Za;vbt=1;var f=Za&&Za.__importDefault||function(_){return _&&_.__esModule?_:{default:_}};Object.defineProperty(Za,"__esModule",{value:!0}),Za.intersectionOfSegments=Za.getSegmentIndex=Za.checkWhichSegmentHasRightEndpointFirst=Za.runSweep=Za.Segment=Za.SweepEvent=Za.checkWhichEventIsLeft=Za.addRoute=void 0;const h=f(Ewt),b=PS();function w(_,I,O){if(I.length<1)return;let j=I[0],k;for(let x=0;x0?(H.isLeftEndpoint=!0,R.isLeftEndpoint=!1):(R.isLeftEndpoint=!0,H.isLeftEndpoint=!1),O.push(R),O.push(H),j=k}}Za.addRoute=w;function m(_,I){return _.point.x>I.point.x?1:_.point.xI.point.y?1:-1:1}Za.checkWhichEventIsLeft=m;class P{constructor(I,O,j){this.edgeId=I,this.point=O,this.segmentIndex=j}}Za.SweepEvent=P;class g{constructor(I){this.leftSweepEvent=I,this.rightSweepEvent=I.otherEvent}}Za.Segment=g;function E(_){const I=[],O=new h.default([],C);for(;_.length;){const j=_.pop();if(j?.isLeftEndpoint){const k=new g(j);for(let x=0;xI.rightSweepEvent.point.x?1:_.rightSweepEvent.point.x=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=El&&El.__importDefault||function(_){return _&&_.__esModule?_:{default:_}};Object.defineProperty(El,"__esModule",{value:!0}),El.IntersectionFinder=El.BY_DESCENDING_X_THEN_DESCENDING_Y=El.BY_X_THEN_DESCENDING_Y=El.BY_DESCENDING_X_THEN_Y=El.BY_X_THEN_Y=El.isIntersectingRoutedPoint=void 0;const b=Zt(),w=h(Ewt),m=Swt();function P(_){return _!==void 0&&"intersections"in _&&"kind"in _}El.isIntersectingRoutedPoint=P;const g=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?_.intersectionPoint.y-I.intersectionPoint.y:_.intersectionPoint.x-I.intersectionPoint.x;El.BY_X_THEN_Y=g;const E=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?_.intersectionPoint.y-I.intersectionPoint.y:I.intersectionPoint.x-_.intersectionPoint.x;El.BY_DESCENDING_X_THEN_Y=E;const C=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?I.intersectionPoint.y-_.intersectionPoint.y:_.intersectionPoint.x-I.intersectionPoint.x;El.BY_X_THEN_DESCENDING_Y=C;const T=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?I.intersectionPoint.y-_.intersectionPoint.y:I.intersectionPoint.x-_.intersectionPoint.x;El.BY_DESCENDING_X_THEN_DESCENDING_Y=T;let M=class{apply(I){const O=this.find(I);this.addToRouting(O,I)}find(I){const O=new w.default(void 0,m.checkWhichEventIsLeft);return I.routes.forEach((j,k)=>{this.isSupportedRoute(j)&&(0,m.addRoute)(k,j,O)}),(0,m.runSweep)(O)}isSupportedRoute(I){return I.find(O=>O.kind!=="source"&&O.kind!=="target"&&O.kind!=="linear")===void 0}addToRouting(I,O){for(const j of I){const k=O.get(j.routable1),x=O.get(j.routable2);this.addIntersectionToRoutedPoint(j,k,j.segmentIndex1),this.addIntersectionToRoutedPoint(j,x,j.segmentIndex2)}}addIntersectionToRoutedPoint(I,O,j){if(O&&O.length>j){const k=O[j+1];if(P(k))k.intersections.push(I);else{const x=Object.assign(Object.assign({},k),{intersections:[I]});O[j+1]=x}}}};return El.IntersectionFinder=M,El.IntersectionFinder=M=f([(0,b.injectable)()],M),El}var Z4={},_bt;function Pwt(){if(_bt)return Z4;_bt=1;var f=Z4&&Z4.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(Z4,"__esModule",{value:!0}),Z4.JunctionFinder=void 0;const h=Zt(),b=MA();let w=class{constructor(){this.edgesMap=new Map,this.sourcesMap=new Map,this.targetsMap=new Map}apply(P,g){this.findJunctions(P,g)}findJunctions(P,g){Array.from(g.index.all().filter(C=>C instanceof b.SEdgeImpl)).forEach(C=>{this.edgesMap.set(C.id,C);const T=this.sourcesMap.get(C.sourceId);T?T.add(C.id):this.sourcesMap.set(C.sourceId,new Set([C.id]));const M=this.targetsMap.get(C.targetId);M?M.add(C.id):this.targetsMap.set(C.targetId,new Set([C.id]))}),P.routes.forEach((C,T)=>{const M=this.edgesMap.get(T);M&&(this.findJunctionPointsWithSameSource(M,C,P),this.findJunctionPointsWithSameTarget(M,C,P))})}findJunctionPointsWithSameSource(P,g,E){const C=this.sourcesMap.get(P.sourceId);if(!C)return;const M=Array.from(C).filter(_=>_!==P.id).map(_=>E.get(_)).filter(_=>_!==void 0);for(const _ of M){const I=this.getJunctionIndex(g,_);I===-1||I===0||this.setJunctionPoints(g,_,I)}}findJunctionPointsWithSameTarget(P,g,E){const C=this.targetsMap.get(P.targetId);if(!C)return;const M=Array.from(C).filter(_=>_!==P.id).map(_=>E.get(_)).filter(_=>_!==void 0);g.reverse();for(const _ of M){_.reverse();const I=this.getJunctionIndex(g,_);I===-1||I===0||(this.setJunctionPoints(g,_,I),_.reverse())}g.reverse()}setJunctionPoints(P,g,E){const C=this.getSegmentDirection(P[E-1],P[E]),T=this.getSegmentDirection(g[E-1],g[E]);if(C!==T)this.setPreviousPointAsJunction(P,g,E);else if(C==="left"||C==="right"){if(P[E].y!==g[E].y){this.setPreviousPointAsJunction(P,g,E);return}P[E].isJunction=C==="left"?P[E].x>g[E].x:P[E].xP[E].x:g[E].xg[E].y:P[E].yP[E].y:g[E].y0?"right":"left":C>0?"down":"up"}getJunctionIndex(P,g){let E=0;for(;E=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=by&&by.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(by,"__esModule",{value:!0}),by.JunctionPostProcessor=void 0;const b=Zt(),w=Sp(),m=Qn(),P=CA();let g=class{constructor(){this.isFirstRender=!0}decorate(C,T){return C}postUpdate(C){this.currentModel!==this.modelSource.model&&(this.isFirstRender=!0),C?.kind===w.RequestBoundsAction.KIND&&this.isFirstRender&&(document.querySelectorAll(`#${this.viewerOptions.hiddenDiv} > svg > g > g.sprotty-junction`).forEach(O=>O.remove()),document.querySelectorAll(`#${this.viewerOptions.baseDiv} > svg > g > g.sprotty-junction`).forEach(O=>O.remove()));const T=document.querySelector(`#${this.viewerOptions.hiddenDiv} > svg > g`),M=document.querySelector(`#${this.viewerOptions.baseDiv} > svg > g`);if(T){const _=Array.from(document.querySelectorAll(`#${this.viewerOptions.hiddenDiv} > svg > g > g > g.sprotty-junction`));_.forEach(I=>{I.remove()}),T.append(..._)}if(M){const _=Array.from(document.querySelectorAll(`#${this.viewerOptions.baseDiv} > svg > g > g > g.sprotty-junction`));_.forEach(I=>{I.remove()}),M.append(..._)}this.currentModel=this.modelSource.model,this.isFirstRender=!1}};return by.JunctionPostProcessor=g,f([(0,b.inject)(m.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"viewerOptions",void 0),f([(0,b.inject)(m.TYPES.ModelSource),h("design:type",P.ModelSource)],g.prototype,"modelSource",void 0),by.JunctionPostProcessor=g=f([(0,b.injectable)()],g),by}var el={},Sbt;function yJ(){if(Sbt)return el;Sbt=1;var f=el&&el.__decorate||function(tt,De,ct,Z){var Nt=arguments.length,ii=Nt<3?De:Z===null?Z=Object.getOwnPropertyDescriptor(De,ct):Z,kr;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ii=Reflect.decorate(tt,De,ct,Z);else for(var jo=tt.length-1;jo>=0;jo--)(kr=tt[jo])&&(ii=(Nt<3?kr(ii):Nt>3?kr(De,ct,ii):kr(De,ct))||ii);return Nt>3&&ii&&Object.defineProperty(De,ct,ii),ii},h=el&&el.__metadata||function(tt,De){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(tt,De)},b=el&&el.__param||function(tt,De){return function(ct,Z){De(ct,Z,tt)}},w;Object.defineProperty(el,"__esModule",{value:!0}),el.LocationPostprocessor=el.MoveMouseListener=el.MorphEdgesAnimation=el.MoveAnimation=el.MoveCommand=void 0;const m=Zt(),P=Ac(),g=jc(),E=SA(),C=Ca(),T=Oc(),M=Qh(),_=Qn(),I=Pp(),O=mh(),j=MA(),k=mJ(),x=Xs(),R=dwt(),H=vJ(),F=Yye(),$=Ma(),W=Iy(),re=cN(),ae=Rb(),ce=V3(),J=SS();let te=w=class extends C.MergeableCommand{constructor(De){super(),this.action=De,this.resolvedMoves=new Map,this.edgeMementi=[],this.stoppableCommandKey=w.KIND}stopExecution(){this.animation&&(this.animation.stop(),this.animation=void 0)}execute(De){const ct=De.root.index,Z=new Map,Nt=new Map;return this.action.moves.forEach(ii=>{const kr=ct.getById(ii.elementId);if(kr instanceof $.SRoutingHandleImpl&&this.edgeRouterRegistry){const jo=kr.parent;if(jo instanceof $.SRoutableElementImpl){const Gn=this.resolveHandleMove(kr,jo,ii);if(Gn){let pc=Z.get(jo);pc||(pc=[],Z.set(jo,pc)),pc.push(Gn)}}}else if(kr&&(0,J.isLocateable)(kr)){const jo=this.resolveElementMove(kr,ii);if(jo&&(this.resolvedMoves.set(jo.element.id,jo),this.edgeRouterRegistry)){const Gn=ls=>{ct.getAttachedElements(ls).forEach(Lr=>{if(Lr instanceof $.SRoutableElementImpl&&!this.isChildOfMovedElements(Lr)){const gt=Nt.get(Lr),Xn=P.Point.subtract(jo.toPosition,jo.fromPosition),jn=gt?P.Point.linear(gt,Xn,.5):Xn;Nt.set(Lr,jn)}})},pc=ls=>{(0,T.isParent)(ls)&&ls.children.forEach(Lr=>{Lr instanceof T.SModelElementImpl&&(Lr instanceof $.SConnectableElementImpl&&Gn(Lr),pc(Lr))})};pc(kr),Gn(kr)}}}),this.doMove(Z,Nt),this.action.animate?(this.undoMove(),(this.animation=new E.CompoundAnimation(De.root,De,[new fe(De.root,this.resolvedMoves,De,!1),new ve(De.root,this.edgeMementi,De,!1)])).start()):De.root}resolveHandleMove(De,ct,Z){let Nt=Z.fromPosition;if(!Nt){const ii=this.edgeRouterRegistry.get(ct.routerKind);Nt=ii.getHandlePosition(ct,ii.route(ct),De)}if(Nt)return{handle:De,fromPosition:Nt,toPosition:Z.toPosition}}resolveElementMove(De,ct){const Z=ct.fromPosition||{x:De.position.x,y:De.position.y};return{element:De,fromPosition:Z,toPosition:ct.toPosition}}doMove(De,ct){this.resolvedMoves.forEach(Z=>{Z.element.position=Z.toPosition}),De.forEach((Z,Nt)=>{const ii=this.edgeRouterRegistry.get(Nt.routerKind),kr=ii.takeSnapshot(Nt);ii.applyHandleMoves(Nt,Z);const jo=ii.takeSnapshot(Nt);this.edgeMementi.push({edge:Nt,before:kr,after:jo})}),ct.forEach((Z,Nt)=>{if(!De.get(Nt)){const ii=this.edgeRouterRegistry.get(Nt.routerKind),kr=ii.takeSnapshot(Nt);if(this.isAttachedEdge(Nt))Nt.routingPoints=Nt.routingPoints.map(Gn=>P.Point.add(Gn,Z));else{const Gn=(0,ae.isSelectable)(Nt)&&Nt.selected;ii.cleanupRoutingPoints(Nt,Nt.routingPoints,Gn,this.action.finished)}const jo=ii.takeSnapshot(Nt);this.edgeMementi.push({edge:Nt,before:kr,after:jo})}})}isChildOfMovedElements(De){const ct=De.parent;return Array.from(this.resolvedMoves.values()).map(Z=>Z.element.id).includes(ct.id)?!0:ct instanceof T.SChildElementImpl?this.isChildOfMovedElements(ct):!1}isAttachedEdge(De){const ct=De.source,Z=De.target,Nt=ii=>!!this.resolvedMoves.get(ii.id)||this.isChildOfMovedElements(ii);return!!(ct&&Z&&Nt(ct)&&Nt(Z))}undoMove(){this.resolvedMoves.forEach(De=>{De.element.position=De.fromPosition}),this.edgeMementi.forEach(De=>{this.edgeRouterRegistry.get(De.edge.routerKind).applySnapshot(De.edge,De.before)})}undo(De){return new E.CompoundAnimation(De.root,De,[new fe(De.root,this.resolvedMoves,De,!0),new ve(De.root,this.edgeMementi,De,!0)]).start()}redo(De){return new E.CompoundAnimation(De.root,De,[new fe(De.root,this.resolvedMoves,De,!1),new ve(De.root,this.edgeMementi,De,!1)]).start()}merge(De,ct){if(!this.action.animate&&De instanceof w)return De.resolvedMoves.forEach((Z,Nt)=>{const ii=this.resolvedMoves.get(Nt);ii?ii.toPosition=Z.toPosition:this.resolvedMoves.set(Nt,Z)}),De.edgeMementi.forEach(Z=>{const Nt=this.edgeMementi.find(ii=>ii.edge.id===Z.edge.id);Nt?Nt.after=Z.after:this.edgeMementi.push(Z)}),!0;if(De instanceof F.ReconnectCommand){const Z=De.memento;if(Z){const Nt=this.edgeMementi.find(ii=>ii.edge.id===Z.edge.id);Nt?Nt.after=Z.after:this.edgeMementi.push(Z)}return!0}return!1}};el.MoveCommand=te,te.KIND=g.MoveAction.KIND,f([(0,m.inject)(W.EdgeRouterRegistry),(0,m.optional)(),h("design:type",W.EdgeRouterRegistry)],te.prototype,"edgeRouterRegistry",void 0),el.MoveCommand=te=w=f([(0,m.injectable)(),b(0,(0,m.inject)(_.TYPES.Action)),h("design:paramtypes",[Object])],te);class fe extends E.Animation{constructor(De,ct,Z,Nt=!1){super(Z),this.model=De,this.elementMoves=ct,this.reverse=Nt}tween(De){return this.elementMoves.forEach(ct=>{this.reverse?ct.element.position={x:(1-De)*ct.toPosition.x+De*ct.fromPosition.x,y:(1-De)*ct.toPosition.y+De*ct.fromPosition.y}:ct.element.position={x:(1-De)*ct.fromPosition.x+De*ct.toPosition.x,y:(1-De)*ct.fromPosition.y+De*ct.toPosition.y}}),this.model}}el.MoveAnimation=fe;class ve extends E.Animation{constructor(De,ct,Z,Nt=!1){super(Z),this.model=De,this.reverse=Nt,this.expanded=[],ct.forEach(ii=>{const kr=this.reverse?ii.after:ii.before,jo=this.reverse?ii.before:ii.after,Gn=kr.routedPoints,pc=jo.routedPoints,ls=Math.max(Gn.length,pc.length);this.expanded.push({startExpandedRoute:this.growToSize(Gn,ls),endExpandedRoute:this.growToSize(pc,ls),memento:ii})})}midPoint(De){const ct=De.edge,Z=De.edge.source,Nt=De.edge.target;return P.Point.linear((0,M.translatePoint)(P.Bounds.center(Z.bounds),Z.parent,ct.parent),(0,M.translatePoint)(P.Bounds.center(Nt.bounds),Nt.parent,ct.parent),.5)}start(){return this.expanded.forEach(De=>{De.memento.edge.removeAll(ct=>ct instanceof $.SRoutingHandleImpl)}),super.start()}tween(De){return De===1?this.expanded.forEach(ct=>{const Z=ct.memento;this.reverse?Z.before.router.applySnapshot(Z.edge,Z.before):Z.after.router.applySnapshot(Z.edge,Z.after)}):this.expanded.forEach(ct=>{const Z=[];for(let kr=1;kr(jo+ls)*ii;)++ls;jo+=ls;for(let Lr=0;Lr(0,ae.isSelectable)(Z)&&Z.selected));ct.forEach(Z=>{if(!this.isChildOfSelected(ct,Z)){if((0,J.isMoveable)(Z))this.elementId2startPos.set(Z.id,Z.position);else if(Z instanceof $.SRoutingHandleImpl){const Nt=this.getHandlePosition(Z);Nt&&this.elementId2startPos.set(Z.id,Nt)}}})}isChildOfSelected(De,ct){for(;ct instanceof T.SChildElementImpl;)if(ct=ct.parent,(0,J.isMoveable)(ct)&&De.has(ct))return!0;return!1}getElementMoves(De,ct,Z){if(!this.startDragPosition)return;const Nt=[],ii=(0,M.findParentByFeature)(De,ce.isViewport),kr=ii?ii.zoom:1,jo={x:(ct.pageX-this.startDragPosition.x)/kr,y:(ct.pageY-this.startDragPosition.y)/kr};if(this.elementId2startPos.forEach((Gn,pc)=>{const ls=De.root.index.getById(pc);if(ls){const Lr=this.createElementMove(ls,Gn,jo,ct);Lr&&Nt.push(Lr)}}),Nt.length>0)return g.MoveAction.create(Nt,{animate:!1,finished:Z})}createElementMove(De,ct,Z,Nt){const ii=this.snap({x:ct.x+Z.x,y:ct.y+Z.y},De,!Nt.shiftKey);if((0,J.isMoveable)(De))return{elementId:De.id,elementType:De.type,fromPosition:{x:De.position.x,y:De.position.y},toPosition:ii};if(De instanceof $.SRoutingHandleImpl){const kr=this.getHandlePosition(De);if(kr!==void 0)return{elementId:De.id,elementType:De.type,fromPosition:kr,toPosition:ii}}}snap(De,ct,Z){return Z&&this.snapper?this.snapper.snap(De,ct):De}getHandlePosition(De){if(this.edgeRouterRegistry){const ct=De.parent;if(!(ct instanceof $.SRoutableElementImpl))return;const Z=this.edgeRouterRegistry.get(ct.routerKind),Nt=Z.route(ct);return Z.getHandlePosition(ct,Nt,De)}}mouseEnter(De,ct){return De instanceof T.SModelRootImpl&&ct.buttons===0&&!this.startDragPosition&&this.mouseUp(De,ct),[]}mouseUp(De,ct){const Z=[];if(this.startDragPosition){const Nt=this.getElementMoves(De,ct,!0);Nt&&Z.push(Nt),De.root.index.all().forEach(ii=>{ii instanceof $.SRoutingHandleImpl&&Z.push(...this.deactivateRoutingHandle(ii,De,ct))})}if(!Z.some(Nt=>Nt.kind===g.ReconnectAction.KIND)){const Nt=De.root.index.getById($.edgeInProgressID);Nt instanceof T.SChildElementImpl&&Z.push(this.deleteEdgeInProgress(Nt))}return this.hasDragged&&Z.push(k.CommitModelAction.create()),this.hasDragged=!1,this.startDragPosition=void 0,this.elementId2startPos.clear(),Z}deactivateRoutingHandle(De,ct,Z){const Nt=[],ii=De.parent;if(ii instanceof $.SRoutableElementImpl&&De.danglingAnchor){const kr=this.getHandlePosition(De);if(kr){const jo=(0,M.translatePoint)(kr,De.parent,De.root),Gn=(0,x.findChildrenAtPosition)(ct.root,jo).find(pc=>(0,$.isConnectable)(pc)&&pc.canConnect(ii,De.kind));Gn&&this.hasDragged&&Nt.push(g.ReconnectAction.create({routableId:De.parent.id,newSourceId:De.kind==="source"?Gn.id:ii.sourceId,newTargetId:De.kind==="target"?Gn.id:ii.targetId}))}}return De.editMode&&Nt.push(H.SwitchEditModeAction.create({elementsToDeactivate:[De.id]})),Nt}deleteEdgeInProgress(De){const ct=[];return ct.push($.edgeInProgressID),De.children.forEach(Z=>{Z instanceof $.SRoutingHandleImpl&&Z.danglingAnchor&&ct.push(Z.danglingAnchor.id)}),g.DeleteElementAction.create(ct)}decorate(De,ct){return De}}el.MoveMouseListener=me,f([(0,m.inject)(W.EdgeRouterRegistry),(0,m.optional)(),h("design:type",W.EdgeRouterRegistry)],me.prototype,"edgeRouterRegistry",void 0),f([(0,m.inject)(_.TYPES.ISnapper),(0,m.optional)(),h("design:type",Object)],me.prototype,"snapper",void 0);let ke=class{decorate(De,ct){if((0,re.isEdgeLayoutable)(ct)&&ct.parent instanceof j.SEdgeImpl)return De;let Z="";if((0,J.isLocateable)(ct)&&ct instanceof T.SChildElementImpl&&ct.parent!==void 0){const Nt=ct.position;(Nt.x!==0||Nt.y!==0)&&(Z="translate("+Nt.x+", "+Nt.y+")")}if((0,x.isAlignable)(ct)){const Nt=ct.alignment;(Nt.x!==0||Nt.y!==0)&&(Z.length>0&&(Z+=" "),Z+="translate("+Nt.x+", "+Nt.y+")")}return Z.length>0&&(0,O.setAttr)(De,"transform",Z),De}postUpdate(){}};return el.LocationPostprocessor=ke,el.LocationPostprocessor=ke=f([(0,m.injectable)()],ke),el}var eS={},Pbt;function _Ut(){if(Pbt)return eS;Pbt=1;var f=eS&&eS.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(eS,"__esModule",{value:!0}),eS.CenterGridSnapper=void 0;const h=Zt(),b=Xs();let w=class{get gridX(){return 10}get gridY(){return 10}snap(P,g){return g&&(0,b.isBoundsAware)(g)?{x:Math.round((P.x+.5*g.bounds.width)/this.gridX)*this.gridX-.5*g.bounds.width,y:Math.round((P.y+.5*g.bounds.height)/this.gridY)*this.gridY-.5*g.bounds.height}:{x:Math.round(P.x/this.gridX)*this.gridX,y:Math.round(P.y/this.gridY)*this.gridY}}};return eS.CenterGridSnapper=w,eS.CenterGridSnapper=w=f([(0,h.injectable)()],w),eS}var SL={},yve={},Mbt;function Cwt(){return Mbt||(Mbt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isOpenable=f.openFeature=void 0,f.openFeature=Symbol("openFeature");function h(b){return b.hasFeature(f.openFeature)}f.isOpenable=h})(yve)),yve}var Cbt;function Iwt(){if(Cbt)return SL;Cbt=1,Object.defineProperty(SL,"__esModule",{value:!0}),SL.OpenMouseListener=void 0;const f=jc(),h=Pp(),b=Qh(),w=Cwt();class m extends h.MouseListener{doubleClick(g,E){const C=(0,b.findParentByFeature)(g,w.isOpenable);return C!==void 0?[f.OpenAction.create(C.id)]:[]}}return SL.OpenMouseListener=m,SL}var bm={},Ibt;function t2e(){if(Ibt)return bm;Ibt=1,Object.defineProperty(bm,"__esModule",{value:!0}),bm.getModelBounds=bm.getProjectedBounds=bm.getProjections=bm.isProjectable=void 0;const f=Ac(),h=_S(),b=Qh(),w=Xs();function m(T){return(0,h.hasOwnProperty)(T,"projectionCssClasses")}bm.isProjectable=m;function P(T){let M;for(const _ of T.children){if(m(_)&&_.projectionCssClasses.length>0){const I=g(_);if(I){const O={elementId:_.id,projectedBounds:I,cssClasses:_.projectionCssClasses};M?M.push(O):M=[O]}}if(_.children.length>0){const I=P(_);I&&(M?M.push(...I):M=I)}}return M}bm.getProjections=P;function g(T){const M=T.parent;if(T.projectedBounds){let _=T.projectedBounds;return(0,w.isBoundsAware)(M)&&(_=(0,b.transformToRootBounds)(M,_)),_}else if((0,w.isBoundsAware)(T)){let _=T.bounds;return _=(0,b.transformToRootBounds)(M,_),_}}bm.getProjectedBounds=g;const E=1e9;function C(T){let M=E,_=E,I=-E,O=-E;const j=(0,w.isBoundsAware)(T)?T.bounds:void 0;if(j&&f.Dimension.isValid(j))M=j.x,_=j.y,I=M+j.width,O=_+j.height;else for(const k of T.children)if((0,w.isBoundsAware)(k)){const x=k.bounds;M=Math.min(M,x.x),_=Math.min(_,x.y),I=Math.max(I,x.x+x.width),O=Math.max(O,x.y+x.height)}if(M=Math.min(M,T.scroll.x),_=Math.min(_,T.scroll.y),I=Math.max(I,T.scroll.x+T.canvasBounds.width/T.zoom),O=Math.max(O,T.scroll.y+T.canvasBounds.height/T.zoom),M=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I};Object.defineProperty(tS,"__esModule",{value:!0}),tS.ProjectedViewportView=void 0;const h=Cy(),b=Zt(),w=nN,m=mh(),P=t2e();let g=class{render(C,T,M){const _=(0,h.html)("div",{"class-sprotty-root":!0},this.renderSvg(C,T,M),this.renderProjections(C,T,M));return(0,m.setAttr)(_,"tabindex",0),_}renderSvg(C,T,M){const _=`scale(${C.zoom}) translate(${-C.scroll.x},${-C.scroll.y})`,I="http://www.w3.org/2000/svg";return(0,w.h)("svg",{ns:I},(0,w.h)("g",{ns:I,attrs:{transform:_}},T.renderChildren(C)))}renderProjections(C,T,M){var _;if(C.zoom<=0)return[];const I=(0,P.getModelBounds)(C);if(!I)return[];const O=(_=(0,P.getProjections)(C))!==null&&_!==void 0?_:[];return[this.renderProjectionBar(O,C,I,"vertical"),this.renderProjectionBar(O,C,I,"horizontal")]}renderProjectionBar(C,T,M,_){const I={modelBounds:M,orientation:_};return I.factor=_==="horizontal"?T.canvasBounds.width/M.width:T.canvasBounds.height/M.height,I.zoomedFactor=I.factor/T.zoom,(0,h.html)("div",{"class-sprotty-projection-bar":!0,"class-horizontal":_==="horizontal","class-vertical":_==="vertical"},this.renderViewport(T,I),C.map(O=>this.renderProjection(O,T,I)))}renderViewport(C,T){let M,_;T.orientation==="horizontal"?(M=C.canvasBounds.width,_=(C.scroll.x-T.modelBounds.x)*T.factor):(M=C.canvasBounds.height,_=(C.scroll.y-T.modelBounds.y)*T.factor);let I=M*T.zoomedFactor;_<0?(I+=_,_=0):_>M&&(_=M),I<0?I=0:_+I>M&&(I=M-_);const O=T.orientation==="horizontal"?{left:`${_}px`,width:`${I}px`}:{top:`${_}px`,height:`${I}px`};return(0,h.html)("div",{"class-sprotty-viewport":!0,style:O})}renderProjection(C,T,M){let _,I,O;M.orientation==="horizontal"?(_=T.canvasBounds.width,I=(C.projectedBounds.x-M.modelBounds.x)*M.factor,O=C.projectedBounds.width*M.factor):(_=T.canvasBounds.height,I=(C.projectedBounds.y-M.modelBounds.y)*M.factor,O=C.projectedBounds.height*M.factor),I<0?(O+=I,I=0):I>_&&(I=_),O<0?O=0:I+O>_&&(O=_-I);const j=M.orientation==="horizontal"?{left:`${I}px`,width:`${O}px`}:{top:`${I}px`,height:`${O}px`},k=(0,h.html)("div",{id:`${M.orientation}-projection:${C.elementId}`,"class-sprotty-projection":!0,style:j});return C.cssClasses.forEach(x=>(0,m.setClass)(k,x,!0)),k}};return tS.ProjectedViewportView=g,tS.ProjectedViewportView=g=f([(0,b.injectable)()],g),tS}var hg={},dg={},jbt;function n2e(){if(jbt)return dg;jbt=1;var f=dg&&dg.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k};Object.defineProperty(dg,"__esModule",{value:!0}),dg.DiamondAnchor=dg.RectangleAnchor=dg.EllipseAnchor=void 0;const h=MS(),b=PS(),w=Zt(),m=wJ(),P=Ac();let g=class{get kind(){return m.PolylineEdgeRouter.KIND+":"+h.ELLIPTIC_ANCHOR_KIND}getAnchor(_,I,O=0){const j=_.bounds,k=P.Bounds.center(j),x=k.x-I.x,R=k.y-I.y,H=Math.sqrt(x*x+R*R),F=x/H||0,$=R/H||0;return{x:k.x-F*(.5*j.width+O),y:k.y-$*(.5*j.height+O)}}};dg.EllipseAnchor=g,dg.EllipseAnchor=g=f([(0,w.injectable)()],g);let E=class{get kind(){return m.PolylineEdgeRouter.KIND+":"+h.RECTANGULAR_ANCHOR_KIND}getAnchor(_,I,O=0){const j=_.bounds,k=P.Bounds.center(j),x=new C(k,I);if(!(0,P.almostEquals)(k.y,I.y)){const R=this.getXIntersection(j.y,k,I);R>=j.x&&R<=j.x+j.width&&x.addCandidate(R,j.y-O);const H=this.getXIntersection(j.y+j.height,k,I);H>=j.x&&H<=j.x+j.width&&x.addCandidate(H,j.y+j.height+O)}if(!(0,P.almostEquals)(k.x,I.x)){const R=this.getYIntersection(j.x,k,I);R>=j.y&&R<=j.y+j.height&&x.addCandidate(j.x-O,R);const H=this.getYIntersection(j.x+j.width,k,I);H>=j.y&&H<=j.y+j.height&&x.addCandidate(j.x+j.width+O,H)}return x.best}getXIntersection(_,I,O){const j=(_-I.y)/(O.y-I.y);return(O.x-I.x)*j+I.x}getYIntersection(_,I,O){const j=(_-I.x)/(O.x-I.x);return(O.y-I.y)*j+I.y}};dg.RectangleAnchor=E,dg.RectangleAnchor=E=f([(0,w.injectable)()],E);class C{constructor(_,I){this.centerPoint=_,this.refPoint=I,this.currentDist=-1}addCandidate(_,I){const O=this.refPoint.x-_,j=this.refPoint.y-I,k=O*O+j*j;(this.currentDist<0||k=0;ae--)(re=x[ae])&&(W=($<3?re(W):$>3?re(R,H,W):re(R,H))||W);return $>3&&W&&Object.defineProperty(R,H,W),W},h=of&&of.__metadata||function(x,R){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(x,R)},b=of&&of.__param||function(x,R){return function(H,F){R(H,F,x)}},w;Object.defineProperty(of,"__esModule",{value:!0}),of.AddRemoveBezierSegmentCommand=of.AddRemoveBezierSegmentAction=of.BezierMouseListener=of.BezierEdgeRouter=void 0;const m=Zt(),P=Ac(),g=Ma(),E=Iy(),C=pJ(),T=Pp(),M=Ca(),_=Qn();let I=w=class extends C.AbstractEdgeRouter{get kind(){return w.KIND}route(R){if(!R.source||!R.target)return[];const H=R.routingPoints.length,F=R.source,$=R.target,W=[];if(W.push({kind:"source",x:0,y:0}),H===0){const[te,fe]=this.createDefaultBezierHandles(F.position,$.position);W.push({kind:"bezier-control-after",x:te.x,y:te.y,pointIndex:0}),W.push({kind:"bezier-control-before",x:fe.x,y:fe.y,pointIndex:1}),R.routingPoints.push(te),R.routingPoints.push(fe)}else if(H>=2)for(let te=0;te2?R.routingPoints[2]:$.position,ae=H>2?R.routingPoints[R.routingPoints.length-3]:F.position,ce=this.getTranslatedAnchor(F,re,$.parent,R,R.sourceAnchorCorrection),J=this.getTranslatedAnchor($,ae,F.parent,R,R.targetAnchorCorrection);return W[0]={kind:"source",x:ce.x,y:ce.y},W[W.length-1]={kind:"target",x:J.x,y:J.y},W}createDefaultBezierHandles(R,H){const F={x:R.x-w.DEFAULT_BEZIER_HANDLE_OFFSET,y:R.y},$={x:H.x+w.DEFAULT_BEZIER_HANDLE_OFFSET,y:H.y};return[F,$]}createRoutingHandles(R){this.route(R),this.rebuildHandles(R)}rebuildHandles(R){this.addHandle(R,"source","routing-point",-2),this.addHandle(R,"bezier-control-after","bezier-routing-point",0),this.addHandle(R,"bezier-add","bezier-create-routing-point",0);const H=R.routingPoints.length;if(H>2)for(let F=1;F0){for(const W of H)if(W.pointIndex!==void 0&&W.pointIndex===F&&W.kind==="bezier-junction"){$={x:W.x,y:W.y};break}}return $}applyHandleMoves(R,H){H.forEach(F=>{const $=F.handle;let W={x:0,y:0},re,ae,ce;const J=F.toPosition;switch($.kind){case"bezier-control-before":case"bezier-control-after":this.moveBezierControlPair(J,F.handle.pointIndex,R);break;case"bezier-junction":const te=$.pointIndex;te>=0&&teJ instanceof g.SRoutingHandleImpl),this.rebuildHandles(H)}removeBezierSegment(R,H){H.routingPoints.splice(R-1,3),H.removeAll($=>$ instanceof g.SRoutingHandleImpl),this.rebuildHandles(H)}moveBezierControlPair(R,H,F){if(H>=0&&H=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O};Object.defineProperty(hg,"__esModule",{value:!0}),hg.BezierDiamondAnchor=hg.BezierRectangleAnchor=hg.BezierEllipseAnchor=void 0;const h=MS(),b=Zt(),w=n2e(),m=i2e();let P=class extends w.EllipseAnchor{get kind(){return m.BezierEdgeRouter.KIND+":"+h.ELLIPTIC_ANCHOR_KIND}};hg.BezierEllipseAnchor=P,hg.BezierEllipseAnchor=P=f([(0,b.injectable)()],P);let g=class extends w.RectangleAnchor{get kind(){return m.BezierEdgeRouter.KIND+":"+h.RECTANGULAR_ANCHOR_KIND}};hg.BezierRectangleAnchor=g,hg.BezierRectangleAnchor=g=f([(0,b.injectable)()],g);let E=class extends w.DiamondAnchor{get kind(){return m.BezierEdgeRouter.KIND+":"+h.DIAMOND_ANCHOR_KIND}};return hg.BezierDiamondAnchor=E,hg.BezierDiamondAnchor=E=f([(0,b.injectable)()],E),hg}var gg={},PL={},Dbt;function r2e(){if(Dbt)return PL;Dbt=1,Object.defineProperty(PL,"__esModule",{value:!0}),PL.ManhattanEdgeRouter=void 0;const f=Ac(),h=Qh(),b=pJ(),w=Ma();class m extends b.AbstractEdgeRouter{get kind(){return m.KIND}getOptions(g){return{standardDistance:20,minimalPointDistance:3,selfEdgeOffset:.25}}route(g){if(!g.source||!g.target)return[];const E=this.createRoutedCorners(g),C=E[0]||(0,h.translatePoint)(f.Bounds.center(g.target.bounds),g.target.parent,g.parent),T=this.getTranslatedAnchor(g.source,C,g.parent,g,g.sourceAnchorCorrection),M=E[E.length-1]||(0,h.translatePoint)(f.Bounds.center(g.source.bounds),g.source.parent,g.parent),_=this.getTranslatedAnchor(g.target,M,g.parent,g,g.targetAnchorCorrection);if(!T||!_)return[];const I=[];return I.push(Object.assign({kind:"source"},T)),E.forEach(O=>I.push(O)),I.push(Object.assign({kind:"target"},_)),I}createRoutedCorners(g){const E=new b.DefaultAnchors(g.source,g.parent,"source"),C=new b.DefaultAnchors(g.target,g.parent,"target");if(g.routingPoints.length>0){const _=g.routingPoints.slice();if(this.cleanupRoutingPoints(g,_,!1,!0),_.length>0)return _.map((I,O)=>Object.assign({kind:"linear",pointIndex:O},I))}const T=this.getOptions(g);return this.calculateDefaultCorners(g,E,C,T).map(_=>Object.assign({kind:"linear"},_))}createRoutingHandles(g){const E=this.route(g);if(this.commitRoute(g,E),E.length>0){this.addHandle(g,"source","routing-point",-2);for(let C=0;C{const I=_.handle,O=I.pointIndex,j=this.correctX(T,O,_.toPosition.x,M),k=this.correctY(T,O,_.toPosition.y,M);I.kind==="manhattan-50%"&&(O<0?T.length===0?(T.push({x:j,y:k}),I.pointIndex=0):(0,f.almostEquals)(C[0].x,C[1].x)?this.alignX(T,0,j):this.alignY(T,0,k):O0&&Math.abs(C-g[E-1].x)=0&&E0&&Math.abs(C-g[E-1].y)=0&&E=0&&f.Bounds.includes(_.bounds,E[I]);--I)E.splice(I,1),C&&this.removeHandle(g,I);if(E.length>=2){const I=this.getOptions(g);for(let O=E.length-2;O>=0;--O)f.Point.manhattanDistance(E[O],E[O+1]){T instanceof w.SRoutingHandleImpl&&(T.pointIndex>E?--T.pointIndex:T.pointIndex===E&&C.push(T))}),C.forEach(T=>g.remove(T))}addAdditionalCorner(g,E,C,T,M){if(E.length===0)return;const _=C.kind==="source"?E[0]:E[E.length-1],I=C.kind==="source"?0:E.length,O=I-(C.kind==="source"?1:0);let j;if(E.length>1)j=I===0?(0,f.almostEquals)(E[0].x,E[1].x):(0,f.almostEquals)(E[E.length-1].x,E[E.length-2].x);else{const k=T.getNearestSide(_);j=k===b.Side.TOP||k===b.Side.BOTTOM}if(j){if(_.yC.get(b.Side.BOTTOM).y){const k={x:C.get(b.Side.TOP).x,y:_.y};E.splice(I,0,k),M&&(g.children.forEach(x=>{x instanceof w.SRoutingHandleImpl&&x.pointIndex>=O&&++x.pointIndex}),this.addHandle(g,"manhattan-50%","volatile-routing-point",O))}}else if(_.xC.get(b.Side.RIGHT).x){const k={x:_.x,y:C.get(b.Side.LEFT).y};E.splice(I,0,k),M&&(g.children.forEach(x=>{x instanceof w.SRoutingHandleImpl&&x.pointIndex>=O&&++x.pointIndex}),this.addHandle(g,"manhattan-50%","volatile-routing-point",O))}}manhattanify(g,E){for(let C=1;C0)return M;const _=this.getBestConnectionAnchors(g,E,C,T),I=_.source,O=_.target,j=[],k=E.get(I);let x=C.get(O);switch(I){case b.Side.RIGHT:switch(O){case b.Side.BOTTOM:j.push({x:x.x,y:k.y});break;case b.Side.TOP:j.push({x:x.x,y:k.y});break;case b.Side.RIGHT:j.push({x:Math.max(k.x,x.x)+1.5*T.standardDistance,y:k.y}),j.push({x:Math.max(k.x,x.x)+1.5*T.standardDistance,y:x.y});break;case b.Side.LEFT:x.y!==k.y&&(j.push({x:(k.x+x.x)/2,y:k.y}),j.push({x:(k.x+x.x)/2,y:x.y}));break}break;case b.Side.LEFT:switch(O){case b.Side.BOTTOM:j.push({x:x.x,y:k.y});break;case b.Side.TOP:j.push({x:x.x,y:k.y});break;default:x=C.get(b.Side.RIGHT),x.y!==k.y&&(j.push({x:(k.x+x.x)/2,y:k.y}),j.push({x:(k.x+x.x)/2,y:x.y}));break}break;case b.Side.TOP:switch(O){case b.Side.RIGHT:x.x-k.x>0?(j.push({x:k.x,y:k.y-T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:k.y-T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;case b.Side.LEFT:x.x-k.x<0?(j.push({x:k.x,y:k.y-T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:k.y-T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;case b.Side.TOP:j.push({x:k.x,y:Math.min(k.y,x.y)-1.5*T.standardDistance}),j.push({x:x.x,y:Math.min(k.y,x.y)-1.5*T.standardDistance});break;case b.Side.BOTTOM:x.x!==k.x&&(j.push({x:k.x,y:(k.y+x.y)/2}),j.push({x:x.x,y:(k.y+x.y)/2}));break}break;case b.Side.BOTTOM:switch(O){case b.Side.RIGHT:x.x-k.x>0?(j.push({x:k.x,y:k.y+T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:k.y+T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;case b.Side.LEFT:x.x-k.x<0?(j.push({x:k.x,y:k.y+T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:k.y+T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;default:x=C.get(b.Side.TOP),x.x!==k.x&&(j.push({x:k.x,y:(k.y+x.y)/2}),j.push({x:x.x,y:(k.y+x.y)/2}));break}break}return j}getBestConnectionAnchors(g,E,C,T){let M=E.get(b.Side.RIGHT),_=C.get(b.Side.LEFT);if(_.x-M.x>T.standardDistance)return{source:b.Side.RIGHT,target:b.Side.LEFT};if(M=E.get(b.Side.LEFT),_=C.get(b.Side.RIGHT),M.x-_.x>T.standardDistance)return{source:b.Side.LEFT,target:b.Side.RIGHT};if(M=E.get(b.Side.TOP),_=C.get(b.Side.BOTTOM),M.y-_.y>T.standardDistance)return{source:b.Side.TOP,target:b.Side.BOTTOM};if(M=E.get(b.Side.BOTTOM),_=C.get(b.Side.TOP),_.y-M.y>T.standardDistance)return{source:b.Side.BOTTOM,target:b.Side.TOP};if(M=E.get(b.Side.RIGHT),_=C.get(b.Side.TOP),_.x-M.x>.5*T.standardDistance&&_.y-M.y>T.standardDistance)return{source:b.Side.RIGHT,target:b.Side.TOP};if(_=C.get(b.Side.BOTTOM),_.x-M.x>.5*T.standardDistance&&M.y-_.y>T.standardDistance)return{source:b.Side.RIGHT,target:b.Side.BOTTOM};if(M=E.get(b.Side.LEFT),_=C.get(b.Side.BOTTOM),M.x-_.x>.5*T.standardDistance&&M.y-_.y>T.standardDistance)return{source:b.Side.LEFT,target:b.Side.BOTTOM};if(_=C.get(b.Side.TOP),M.x-_.x>.5*T.standardDistance&&_.y-M.y>T.standardDistance)return{source:b.Side.LEFT,target:b.Side.TOP};if(M=E.get(b.Side.TOP),_=C.get(b.Side.RIGHT),M.y-_.y>.5*T.standardDistance&&M.x-_.x>T.standardDistance)return{source:b.Side.TOP,target:b.Side.RIGHT};if(_=C.get(b.Side.LEFT),M.y-_.y>.5*T.standardDistance&&_.x-M.x>T.standardDistance)return{source:b.Side.TOP,target:b.Side.LEFT};if(M=E.get(b.Side.BOTTOM),_=C.get(b.Side.RIGHT),_.y-M.y>.5*T.standardDistance&&M.x-_.x>T.standardDistance)return{source:b.Side.BOTTOM,target:b.Side.RIGHT};if(_=C.get(b.Side.LEFT),_.y-M.y>.5*T.standardDistance&&_.x-M.x>T.standardDistance)return{source:b.Side.BOTTOM,target:b.Side.LEFT};if(M=E.get(b.Side.TOP),_=C.get(b.Side.TOP),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)){if(M.y-_.y<0){if(Math.abs(M.x-_.x)>(E.bounds.width+T.standardDistance)/2)return{source:b.Side.TOP,target:b.Side.TOP}}else if(Math.abs(M.x-_.x)>C.bounds.width/2)return{source:b.Side.TOP,target:b.Side.TOP}}if(M=E.get(b.Side.RIGHT),_=C.get(b.Side.RIGHT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)){if(M.x-_.x>0){if(Math.abs(M.y-_.y)>(E.bounds.height+T.standardDistance)/2)return{source:b.Side.RIGHT,target:b.Side.RIGHT}}else if(Math.abs(M.y-_.y)>C.bounds.height/2)return{source:b.Side.RIGHT,target:b.Side.RIGHT}}return M=E.get(b.Side.TOP),_=C.get(b.Side.RIGHT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.TOP,target:b.Side.RIGHT}:(_=C.get(b.Side.LEFT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.TOP,target:b.Side.LEFT}:(M=E.get(b.Side.BOTTOM),_=C.get(b.Side.RIGHT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.BOTTOM,target:b.Side.RIGHT}:(_=C.get(b.Side.LEFT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.BOTTOM,target:b.Side.LEFT}:{source:b.Side.RIGHT,target:b.Side.BOTTOM})))}}return PL.ManhattanEdgeRouter=m,m.KIND="manhattan",PL}var kbt;function jwt(){if(kbt)return gg;kbt=1;var f=gg&&gg.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h,b,w;Object.defineProperty(gg,"__esModule",{value:!0}),gg.ManhattanEllipticAnchor=gg.ManhattanDiamondAnchor=gg.ManhattanRectangularAnchor=void 0;const m=Ac(),P=PS(),g=MS(),E=r2e(),C=Zt();let T=h=class{get kind(){return h.KIND}getAnchor(O,j,k){const x=O.bounds;if(x.width<=0||x.height<=0)return x;const R={x:x.x-k,y:x.y-k,width:x.width+2*k,height:x.height+2*k};return j.x>=R.x&&R.x+R.width>=j.x?j.y=R.y&&R.y+R.height>=j.y?j.x=R.x&&j.x<=R.x+R.width?R.x+.5*R.width>=j.x?($=new P.PointToPointLine(j,{x:j.x,y:H.y}),j.y=R.y&&j.y<=R.y+R.height&&(R.y+.5*R.height>=j.y?($=new P.PointToPointLine(j,{x:H.x,y:j.y}),j.x=R.x&&R.x+R.width>=j.x){$+=F.x;const re=.5*R.height*Math.sqrt(1-F.x*F.x/(.25*R.width*R.width));F.y<0?W-=re:W+=re}else if(j.y>=R.y&&R.y+R.height>=j.y){W+=F.y;const re=.5*R.width*Math.sqrt(1-F.y*F.y/(.25*R.height*R.height));F.x<0?$-=re:$+=re}return{x:$,y:W}}};return gg.ManhattanEllipticAnchor=_,_.KIND=E.ManhattanEdgeRouter.KIND+":"+g.ELLIPTIC_ANCHOR_KIND,gg.ManhattanEllipticAnchor=_=w=f([(0,C.injectable)()],_),gg}var nS={},Rbt;function Awt(){if(Rbt)return nS;Rbt=1;var f=nS&&nS.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(nS,"__esModule",{value:!0}),nS.RoutableView=void 0;const h=Zt(),b=Ma();let w=class{isVisible(P,g,E){if(E.targetKind==="hidden"||g.length===0)return!0;const C=(0,b.getAbsoluteRouteBounds)(P,g),T=P.root.canvasBounds;return C.x<=T.width&&C.x+C.width>=0&&C.y<=T.height&&C.y+C.height>=0}};return nS.RoutableView=w,nS.RoutableView=w=f([(0,h.injectable)()],w),nS}var Pa={},py={},xbt;function Owt(){if(xbt)return py;xbt=1;var f=py&&py.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_},h=py&&py.__metadata||function(g,E){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(g,E)};Object.defineProperty(py,"__esModule",{value:!0}),py.ModelRequestCommand=void 0;const b=Zt(),w=Qn(),m=Ca();let P=class extends m.SystemCommand{execute(E){const C=this.retrieveResult(E);return this.actionDispatcher.dispatch(C),{model:E.root,modelChanged:!1}}undo(E){return{model:E.root,modelChanged:!1}}redo(E){return{model:E.root,modelChanged:!1}}};return py.ModelRequestCommand=P,f([(0,b.inject)(w.TYPES.IActionDispatcher),h("design:type",Object)],P.prototype,"actionDispatcher",void 0),py.ModelRequestCommand=P=f([(0,b.injectable)()],P),py}var pm={},Lbt;function o2e(){if(Lbt)return pm;Lbt=1;var f=pm&&pm.__decorate||function(x,R,H,F){var $=arguments.length,W=$<3?R:F===null?F=Object.getOwnPropertyDescriptor(R,H):F,re;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")W=Reflect.decorate(x,R,H,F);else for(var ae=x.length-1;ae>=0;ae--)(re=x[ae])&&(W=($<3?re(W):$>3?re(R,H,W):re(R,H))||W);return $>3&&W&&Object.defineProperty(R,H,W),W},h=pm&&pm.__metadata||function(x,R){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(x,R)};Object.defineProperty(pm,"__esModule",{value:!0}),pm.findViewportScrollbar=pm.ScrollMouseListener=void 0;const b=Zt(),w=jc(),m=Ac(),P=Oc(),g=Pp(),E=Qh(),C=V3(),T=SS(),M=Ma(),_=t2e(),I=My(),O=Qn();class j extends g.MouseListener{constructor(){super(...arguments),this.scrollbarMouseDownDelay=200}mouseDown(R,H){if((0,E.findParentByFeature)(R,T.isMoveable)===void 0&&!(R instanceof M.SRoutingHandleImpl)){const $=(0,E.findParentByFeature)(R,C.isViewport);if($){if(this.lastScrollPosition={x:H.pageX,y:H.pageY},this.scrollbar=this.getScrollbar(H),this.scrollbar)return window.clearTimeout(this.scrollbarMouseDownTimeout),this.moveScrollBar($,H,this.scrollbar,!0).map(W=>new Promise(re=>{this.scrollbarMouseDownTimeout=window.setTimeout(()=>re(W),this.scrollbarMouseDownDelay)}))}else this.lastScrollPosition=void 0,this.scrollbar=void 0}return[]}mouseMove(R,H){if(H.buttons===0)return this.mouseUp(R,H);if(this.scrollbar){window.clearTimeout(this.scrollbarMouseDownTimeout);const F=(0,E.findParentByFeature)(R,C.isViewport);if(F)return this.moveScrollBar(F,H,this.scrollbar)}if(this.lastScrollPosition){const F=(0,E.findParentByFeature)(R,C.isViewport);if(F)return this.dragCanvas(F,H,this.lastScrollPosition)}return[]}mouseEnter(R,H){return R instanceof P.SModelRootImpl&&H.buttons===0&&this.mouseUp(R,H),[]}mouseUp(R,H){return this.lastScrollPosition=void 0,this.scrollbar=void 0,[]}doubleClick(R,H){if((0,E.findParentByFeature)(R,C.isViewport)){const $=this.getScrollbar(H);if($){window.clearTimeout(this.scrollbarMouseDownTimeout);const W=this.findClickTarget($,H);let re;if(W&&W.id.startsWith("horizontal-projection:")?re=W.id.substring(22):W&&W.id.startsWith("vertical-projection:")&&(re=W.id.substring(20)),re)return[w.CenterAction.create([re],{animate:!0,retainZoom:!0})]}}return[]}dragCanvas(R,H,F){let $=(H.pageX-F.x)/R.zoom;($>0&&(0,m.almostEquals)(R.scroll.x,this.viewerOptions.horizontalScrollLimits.min)||$<0&&(0,m.almostEquals)(R.scroll.x,this.viewerOptions.horizontalScrollLimits.max-R.canvasBounds.width/R.zoom))&&($=0);let W=(H.pageY-F.y)/R.zoom;if((W>0&&(0,m.almostEquals)(R.scroll.y,this.viewerOptions.verticalScrollLimits.min)||W<0&&(0,m.almostEquals)(R.scroll.y,this.viewerOptions.verticalScrollLimits.max-R.canvasBounds.height/R.zoom))&&(W=0),$===0&&W===0)return[];const re={scroll:{x:R.scroll.x-$,y:R.scroll.y-W},zoom:R.zoom};return this.lastScrollPosition={x:H.pageX,y:H.pageY},[w.SetViewportAction.create(R.id,re,{animate:!1})]}moveScrollBar(R,H,F,$=!1){const W=(0,_.getModelBounds)(R);if(!W||R.zoom<=0)return[];const re=F.getBoundingClientRect();let ae;if(this.getScrollbarOrientation(F)==="horizontal"){if(re.width<=0)return[];const ce=R.canvasBounds.width/(R.zoom*W.width)*re.width;let J=H.clientX-re.x-ce/2;if(J<0?J=0:J>re.width-ce&&(J=re.width-ce),ae={x:W.x+J/re.width*W.width,y:R.scroll.y},ae.xthis.viewerOptions.horizontalScrollLimits.max-R.canvasBounds.width/R.zoom&&(ae.x=this.viewerOptions.horizontalScrollLimits.max-R.canvasBounds.width/R.zoom),(0,m.almostEquals)(ae.x,R.scroll.x))return[]}else{if(re.height<=0)return[];const ce=R.canvasBounds.height/(R.zoom*W.height)*re.height;let J=H.clientY-re.y-ce/2;if(J<0?J=0:J>re.height-ce&&(J=re.height-ce),ae={x:R.scroll.x,y:W.y+J/re.height*W.height},ae.ythis.viewerOptions.verticalScrollLimits.max-R.canvasBounds.height/R.zoom&&(ae.y=this.viewerOptions.verticalScrollLimits.max-R.canvasBounds.height/R.zoom),(0,m.almostEquals)(ae.y,R.scroll.y))return[]}return[w.SetViewportAction.create(R.id,{scroll:ae,zoom:R.zoom},{animate:$})]}getScrollbar(R){return k(R)}getScrollbarOrientation(R){return R.classList.contains("horizontal")?"horizontal":"vertical"}findClickTarget(R,H){const F=Array.from(R.children).filter($=>$.id&&$.classList.contains("sprotty-projection")&&(0,I.hitsMouseEvent)($,H));if(F.length>0)return F[F.length-1]}}pm.ScrollMouseListener=j,f([(0,b.inject)(O.TYPES.ViewerOptions),h("design:type",Object)],j.prototype,"viewerOptions",void 0);function k(x){let R=x.target;for(;R;){if(R.classList&&R.classList.contains("sprotty-projection-bar"))return R;R=R.parentElement}}return pm.findViewportScrollbar=k,pm}var Nbt;function Dwt(){if(Nbt)return Pa;Nbt=1;var f=Pa&&Pa.__decorate||function(ve,me,ke,tt){var De=arguments.length,ct=De<3?me:tt===null?tt=Object.getOwnPropertyDescriptor(me,ke):tt,Z;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ct=Reflect.decorate(ve,me,ke,tt);else for(var Nt=ve.length-1;Nt>=0;Nt--)(Z=ve[Nt])&&(ct=(De<3?Z(ct):De>3?Z(me,ke,ct):Z(me,ke))||ct);return De>3&&ct&&Object.defineProperty(me,ke,ct),ct},h=Pa&&Pa.__metadata||function(ve,me){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ve,me)},b=Pa&&Pa.__param||function(ve,me){return function(ke,tt){me(ke,tt,ve)}};Object.defineProperty(Pa,"__esModule",{value:!0}),Pa.SelectKeyboardListener=Pa.GetSelectionCommand=Pa.SelectMouseListener=Pa.SelectAllCommand=Pa.SelectCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Owt(),E=Oc(),C=Qh(),T=Qn(),M=H3(),_=Pp(),I=mh(),O=My(),j=_A(),k=z3(),x=bJ(),R=swt(),H=vJ(),F=Ma(),$=Ma(),W=o2e(),re=Rb();let ae=class extends P.Command{constructor(me){super(),this.action=me,this.selected=[],this.deselected=[]}execute(me){const ke=me.root;return this.action.selectedElementsIDs.forEach(tt=>{const De=ke.index.getById(tt);De instanceof E.SChildElementImpl&&(0,re.isSelectable)(De)&&this.selected.push(De)}),this.action.deselectedElementsIDs.forEach(tt=>{const De=ke.index.getById(tt);De instanceof E.SChildElementImpl&&(0,re.isSelectable)(De)&&this.deselected.push(De)}),this.redo(me)}undo(me){for(const ke of this.selected)ke.selected=!1;for(const ke of this.deselected)ke.selected=!0;return me.root}redo(me){for(const ke of this.deselected)ke.selected=!1;for(const ke of this.selected)ke.selected=!0;return me.root}};Pa.SelectCommand=ae,ae.KIND=m.SelectAction.KIND,Pa.SelectCommand=ae=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.Action)),h("design:paramtypes",[Object])],ae);let ce=class extends P.Command{constructor(me){super(),this.action=me,this.previousSelection={}}execute(me){return this.selectAll(me.root,this.action.select),me.root}selectAll(me,ke){(0,re.isSelectable)(me)&&(this.previousSelection[me.id]=me.selected,me.selected=ke);for(const tt of me.children)this.selectAll(tt,ke)}undo(me){const ke=me.root.index;return Object.keys(this.previousSelection).forEach(tt=>{const De=ke.getById(tt);De!==void 0&&(0,re.isSelectable)(De)&&(De.selected=this.previousSelection[tt])}),me.root}redo(me){return this.selectAll(me.root,this.action.select),me.root}};Pa.SelectAllCommand=ce,ce.KIND=m.SelectAllAction.KIND,Pa.SelectAllCommand=ce=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.Action)),h("design:paramtypes",[Object])],ce);class J extends _.MouseListener{constructor(){super(...arguments),this.wasSelected=!1,this.hasDragged=!1,this.isMouseDown=!1}mouseDown(me,ke){if(ke.button!==0)return[];this.isMouseDown=!0;const tt=this.handleButton(me,ke);if(tt)return tt;const De=(0,C.findParentByFeature)(me,re.isSelectable);if((De!==void 0||me instanceof E.SModelRootImpl)&&(this.hasDragged=!1),De!==void 0){let ct=[];if((0,O.isCtrlOrCmd)(ke)||(ct=this.collectElementsToDeselect(me,De)),De.selected){if((0,O.isCtrlOrCmd)(ke))return this.wasSelected=!1,this.handleDeselectTarget(De,ke);this.wasSelected=!0}else return this.wasSelected=!1,this.handleSelectTarget(De,ct,ke)}return[]}collectElementsToDeselect(me,ke){return(0,j.toArray)(me.root.index.all().filter(tt=>(0,re.isSelectable)(tt)&&tt.selected&&!(ke instanceof F.SRoutingHandleImpl&&tt===ke.parent)))}handleButton(me,ke){if(this.buttonHandlerRegistry!==void 0&&me instanceof R.SButtonImpl&&me.enabled){const tt=this.buttonHandlerRegistry.get(me.type);if(tt!==void 0)return tt.buttonPressed(me)}}handleSelectTarget(me,ke,tt){const De=[];De.push(m.SelectAction.create({selectedElementsIDs:[me.id],deselectedElementsIDs:ke.map(Z=>Z.id)})),De.push(m.BringToFrontAction.create([me.id]));const ct=ke.filter(Z=>Z instanceof $.SRoutableElementImpl).map(Z=>Z.id);return me instanceof $.SRoutableElementImpl?De.push(H.SwitchEditModeAction.create({elementsToActivate:[me.id],elementsToDeactivate:ct})):ct.length>0&&De.push(H.SwitchEditModeAction.create({elementsToDeactivate:ct})),De}handleDeselectTarget(me,ke){const tt=[];return tt.push(m.SelectAction.create({selectedElementsIDs:[],deselectedElementsIDs:[me.id]})),me instanceof $.SRoutableElementImpl&&tt.push(H.SwitchEditModeAction.create({elementsToDeactivate:[me.id]})),tt}handleDeselectAll(me,ke){const tt=[];tt.push(m.SelectAction.create({selectedElementsIDs:[],deselectedElementsIDs:me.map(ct=>ct.id)}));const De=me.filter(ct=>ct instanceof $.SRoutableElementImpl).map(ct=>ct.id);return De.length>0&&tt.push(H.SwitchEditModeAction.create({elementsToDeactivate:De})),tt}mouseMove(me,ke){return this.hasDragged=this.isMouseDown,[]}mouseUp(me,ke){if(ke.button===0&&!this.hasDragged){const tt=(0,C.findParentByFeature)(me,re.isSelectable);if(tt!==void 0){if(this.wasSelected)return[m.SelectAction.create({selectedElementsIDs:[tt.id],deselectedElementsIDs:[]})]}else if(me instanceof E.SModelRootImpl&&!(0,W.findViewportScrollbar)(ke)||!(me instanceof E.SModelRootImpl))return this.handleDeselectAll(this.collectElementsToDeselect(me,void 0),ke)}return this.isMouseDown=!1,this.hasDragged=!1,[]}decorate(me,ke){const tt=(0,C.findParentByFeature)(ke,re.isSelectable);return tt!==void 0&&(0,I.setClass)(me,"selected",tt.selected),me}}Pa.SelectMouseListener=J,f([(0,w.inject)(x.ButtonHandlerRegistry),(0,w.optional)(),h("design:type",x.ButtonHandlerRegistry)],J.prototype,"buttonHandlerRegistry",void 0);let te=class extends g.ModelRequestCommand{constructor(me){super(),this.action=me,this.previousSelection={}}retrieveResult(me){const ke=me.root.index.all().filter(tt=>(0,re.isSelectable)(tt)&&tt.selected).map(tt=>tt.id);return m.SelectionResult.create((0,j.toArray)(ke),this.action.requestId)}};Pa.GetSelectionCommand=te,te.KIND=m.GetSelectionAction.KIND,Pa.GetSelectionCommand=te=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.Action)),h("design:paramtypes",[Object])],te);class fe extends M.KeyListener{keyDown(me,ke){return(0,k.matchesKeystroke)(ke,"KeyA","ctrlCmd")?[m.SelectAllAction.create()]:[]}}return Pa.SelectKeyboardListener=fe,Pa}var ML={},Fbt;function kwt(){if(Fbt)return ML;Fbt=1,Object.defineProperty(ML,"__esModule",{value:!0}),ML.UndoRedoKeyListener=void 0;const f=jc(),h=z3(),b=H3(),w=My();class m extends b.KeyListener{keyDown(g,E){return(0,h.matchesKeystroke)(E,"KeyZ","ctrlCmd")?[f.UndoAction.create()]:(0,h.matchesKeystroke)(E,"KeyZ","ctrlCmd","shift")||!(0,w.isMac)()&&(0,h.matchesKeystroke)(E,"KeyY","ctrlCmd")?[f.RedoAction.create()]:[]}}return ML.UndoRedoKeyListener=m,ML}var E3={},Bbt;function c2e(){if(Bbt)return E3;Bbt=1,Object.defineProperty(E3,"__esModule",{value:!0}),E3.applyMatches=E3.ModelMatcher=E3.forEachMatch=void 0;const f=Oc(),h=Sp();function b(P,g){Object.keys(P).forEach(E=>g(E,P[E]))}E3.forEachMatch=b;class w{match(g,E){const C={};return this.matchLeft(g,C),this.matchRight(E,C),C}matchLeft(g,E,C){let T=E[g.id];if(T!==void 0?(T.left=g,T.leftParentId=C):(T={left:g,leftParentId:C},E[g.id]=T),(0,f.isParent)(g))for(const M of g.children)this.matchLeft(M,E,g.id)}matchRight(g,E,C){let T=E[g.id];if(T!==void 0?(T.right=g,T.rightParentId=C):(T={right:g,rightParentId:C},E[g.id]=T),(0,f.isParent)(g))for(const M of g.children)this.matchRight(M,E,g.id)}}E3.ModelMatcher=w;function m(P,g,E){P instanceof f.SModelRootImpl?E=P.index:E===void 0&&(E=new h.SModelIndex,E.add(P));for(const C of g){let T=!1;if(C.left!==void 0&&C.leftParentId!==void 0){const M=E.getById(C.leftParentId);if(M!==void 0&&M.children!==void 0){const _=M.children.indexOf(C.left);_>=0&&(C.right!==void 0&&C.leftParentId===C.rightParentId?(M.children.splice(_,1,C.right),T=!0):M.children.splice(_,1)),E.remove(C.left)}}if(!T&&C.right!==void 0&&C.rightParentId!==void 0){const M=E.getById(C.rightParentId);M!==void 0&&(M.children===void 0&&(M.children=[]),M.children.push(C.right))}}}return E3.applyMatches=m,E3}var yp={},CL={},$bt;function SUt(){if($bt)return CL;$bt=1,Object.defineProperty(CL,"__esModule",{value:!0}),CL.ResizeAnimation=void 0;const f=SA();class h extends f.Animation{constructor(w,m,P,g=!1){super(P),this.model=w,this.elementResizes=m,this.reverse=g}tween(w){return this.elementResizes.forEach(m=>{const P=m.element,g=this.reverse?{width:(1-w)*m.toDimension.width+w*m.fromDimension.width,height:(1-w)*m.toDimension.height+w*m.fromDimension.height}:{width:(1-w)*m.fromDimension.width+w*m.toDimension.width,height:(1-w)*m.fromDimension.height+w*m.toDimension.height};P.bounds={x:P.bounds.x,y:P.bounds.y,width:g.width,height:g.height}}),this.model}}return CL.ResizeAnimation=h,CL}var Kbt;function s2e(){if(Kbt)return yp;Kbt=1;var f=yp&&yp.__decorate||function(ce,J,te,fe){var ve=arguments.length,me=ve<3?J:fe===null?fe=Object.getOwnPropertyDescriptor(J,te):fe,ke;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")me=Reflect.decorate(ce,J,te,fe);else for(var tt=ce.length-1;tt>=0;tt--)(ke=ce[tt])&&(me=(ve<3?ke(me):ve>3?ke(J,te,me):ke(J,te))||me);return ve>3&&me&&Object.defineProperty(J,te,me),me},h=yp&&yp.__metadata||function(ce,J){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ce,J)},b=yp&&yp.__param||function(ce,J){return function(te,fe){J(te,fe,ce)}};Object.defineProperty(yp,"__esModule",{value:!0}),yp.UpdateModelCommand=void 0;const w=Zt(),m=jc(),P=Ac(),g=SA(),E=Ca(),C=Qye(),T=Oc(),M=yJ(),_=rN(),I=SS(),O=Xs(),j=Gye(),k=Rb(),x=c2e(),R=SUt(),H=Qn(),F=V3(),$=Iy(),W=Ma(),re=Qh();let ae=class extends E.Command{constructor(J){super(),this.action=J}execute(J){let te;return this.action.newRoot!==void 0?te=J.modelFactory.createRoot(this.action.newRoot):(te=J.modelFactory.createRoot(J.root),this.action.matches!==void 0&&this.applyMatches(te,this.action.matches,J)),this.oldRoot=J.root,this.newRoot=te,this.performUpdate(this.oldRoot,this.newRoot,J)}performUpdate(J,te,fe){if((this.action.animate===void 0||this.action.animate)&&J.id===te.id){let ve;this.action.matches===void 0?ve=new x.ModelMatcher().match(J,te):ve=this.convertToMatchResult(this.action.matches,J,te);const me=this.computeAnimation(te,ve,fe);return me instanceof g.Animation?me.start():me}else return J.type===te.type&&P.Dimension.isValid(J.canvasBounds)&&(te.canvasBounds=J.canvasBounds),(0,F.isViewport)(J)&&(0,F.isViewport)(te)&&(te.zoom=J.zoom,te.scroll=J.scroll),te}applyMatches(J,te,fe){const ve=J.index;for(const me of te)if(me.left!==void 0){const ke=ve.getById(me.left.id);ke instanceof T.SChildElementImpl&&ke.parent.remove(ke)}for(const me of te)if(me.right!==void 0){const ke=fe.modelFactory.createElement(me.right);let tt;me.rightParentId!==void 0&&(tt=ve.getById(me.rightParentId)),tt instanceof T.SParentElementImpl?tt.add(ke):J.add(ke)}}convertToMatchResult(J,te,fe){const ve={};for(const me of J){const ke={};let tt;me.left!==void 0&&(tt=me.left.id,ke.left=te.index.getById(tt),ke.leftParentId=me.leftParentId),me.right!==void 0&&(tt=me.right.id,ke.right=fe.index.getById(tt),ke.rightParentId=me.rightParentId),tt!==void 0&&(ve[tt]=ke)}return ve}computeAnimation(J,te,fe){const ve={fades:[]};(0,x.forEachMatch)(te,(ke,tt)=>{if(tt.left!==void 0&&tt.right!==void 0)this.updateElement(tt.left,tt.right,ve);else if(tt.right!==void 0){const De=tt.right;(0,_.isFadeable)(De)&&(De.opacity=0,ve.fades.push({element:De,type:"in"}))}else if(tt.left instanceof T.SChildElementImpl){const De=tt.left;if((0,_.isFadeable)(De)&&tt.leftParentId!==void 0&&!(0,re.containsSome)(J,De)){const ct=J.index.getById(tt.leftParentId);if(ct instanceof T.SParentElementImpl){const Z=fe.modelFactory.createElement(De);ct.add(Z),ve.fades.push({element:Z,type:"out"})}}}});const me=this.createAnimations(ve,J,fe);return me.length>=2?new g.CompoundAnimation(J,fe,me):me.length===1?me[0]:J}updateElement(J,te,fe){if((0,I.isLocateable)(J)&&(0,I.isLocateable)(te)){const ve=J.position,me=te.position;(!(0,P.almostEquals)(ve.x,me.x)||!(0,P.almostEquals)(ve.y,me.y))&&(fe.moves===void 0&&(fe.moves=[]),fe.moves.push({element:te,fromPosition:ve,toPosition:me}),te.position=ve)}(0,O.isSizeable)(J)&&(0,O.isSizeable)(te)&&(P.Dimension.isValid(te.bounds)?(!(0,P.almostEquals)(J.bounds.width,te.bounds.width)||!(0,P.almostEquals)(J.bounds.height,te.bounds.height))&&(fe.resizes===void 0&&(fe.resizes=[]),fe.resizes.push({element:te,fromDimension:{width:J.bounds.width,height:J.bounds.height},toDimension:{width:te.bounds.width,height:te.bounds.height}})):te.bounds={x:te.bounds.x,y:te.bounds.y,width:J.bounds.width,height:J.bounds.height}),J instanceof W.SRoutableElementImpl&&te instanceof W.SRoutableElementImpl&&this.edgeRouterRegistry&&(fe.edgeMementi===void 0&&(fe.edgeMementi=[]),fe.edgeMementi.push({edge:te,before:this.takeSnapshot(J),after:this.takeSnapshot(te)})),(0,k.isSelectable)(J)&&(0,k.isSelectable)(te)&&(te.selected=J.selected),J instanceof T.SModelRootImpl&&te instanceof T.SModelRootImpl&&(te.canvasBounds=J.canvasBounds),J instanceof j.ViewportRootElementImpl&&te instanceof j.ViewportRootElementImpl&&(te.scroll=J.scroll,te.zoom=J.zoom)}takeSnapshot(J){return this.edgeRouterRegistry.get(J.routerKind).takeSnapshot(J)}createAnimations(J,te,fe){const ve=[];if(J.fades.length>0&&ve.push(new C.FadeAnimation(te,J.fades,fe,!0)),J.moves!==void 0&&J.moves.length>0){const me=new Map;for(const ke of J.moves)me.set(ke.element.id,ke);ve.push(new M.MoveAnimation(te,me,fe,!1))}if(J.resizes!==void 0&&J.resizes.length>0){const me=new Map;for(const ke of J.resizes)me.set(ke.element.id,ke);ve.push(new R.ResizeAnimation(te,me,fe,!1))}return J.edgeMementi!==void 0&&J.edgeMementi.length>0&&ve.push(new M.MorphEdgesAnimation(te,J.edgeMementi,fe,!1)),ve}undo(J){return this.performUpdate(this.newRoot,this.oldRoot,J)}redo(J){return this.performUpdate(this.oldRoot,this.newRoot,J)}};return yp.UpdateModelCommand=ae,ae.KIND=m.UpdateModelAction.KIND,f([(0,w.inject)($.EdgeRouterRegistry),(0,w.optional)(),h("design:type",$.EdgeRouterRegistry)],ae.prototype,"edgeRouterRegistry",void 0),yp.UpdateModelCommand=ae=f([(0,w.injectable)(),b(0,(0,w.inject)(H.TYPES.Action)),h("design:paramtypes",[Object])],ae),yp}var Sl={},bh={},qbt;function _J(){if(qbt)return bh;qbt=1;var f=bh&&bh.__decorate||function(k,x,R,H){var F=arguments.length,$=F<3?x:H===null?H=Object.getOwnPropertyDescriptor(x,R):H,W;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")$=Reflect.decorate(k,x,R,H);else for(var re=k.length-1;re>=0;re--)(W=k[re])&&($=(F<3?W($):F>3?W(x,R,$):W(x,R))||$);return F>3&&$&&Object.defineProperty(x,R,$),$},h=bh&&bh.__metadata||function(k,x){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(k,x)},b=bh&&bh.__param||function(k,x){return function(R,H){x(R,H,k)}},w;Object.defineProperty(bh,"__esModule",{value:!0}),bh.ViewportAnimation=bh.GetViewportCommand=bh.SetViewportCommand=void 0;const m=Zt(),P=jc(),g=Ac(),E=Ca(),C=SA(),T=V3(),M=Qn(),_=Owt();let I=w=class extends E.MergeableCommand{constructor(x){super(),this.action=x,this.newViewport=x.newViewport}execute(x){const R=x.root,H=R.index.getById(this.action.elementId);if(H&&(0,T.isViewport)(H)){this.element=H,this.oldViewport={scroll:this.element.scroll,zoom:this.element.zoom};const{zoomLimits:F,horizontalScrollLimits:$,verticalScrollLimits:W}=this.viewerOptions;return this.newViewport=(0,T.limitViewport)(this.newViewport,R.canvasBounds,$,W,F),this.setViewport(H,this.oldViewport,this.newViewport,x)}return x.root}setViewport(x,R,H,F){if(x&&(0,T.isViewport)(x)){if(this.action.animate)return new j(x,R,H,F).start();x.scroll=H.scroll,x.zoom=H.zoom}return F.root}undo(x){return this.setViewport(this.element,this.newViewport,this.oldViewport,x)}redo(x){return this.setViewport(this.element,this.oldViewport,this.newViewport,x)}merge(x,R){return!this.action.animate&&x instanceof w&&this.element===x.element?(this.newViewport=x.newViewport,!0):!1}};bh.SetViewportCommand=I,I.KIND=P.SetViewportAction.KIND,f([(0,m.inject)(M.TYPES.ViewerOptions),h("design:type",Object)],I.prototype,"viewerOptions",void 0),bh.SetViewportCommand=I=w=f([(0,m.injectable)(),b(0,(0,m.inject)(M.TYPES.Action)),h("design:paramtypes",[Object])],I);let O=class extends _.ModelRequestCommand{constructor(x){super(),this.action=x}retrieveResult(x){const R=x.root;let H;return(0,T.isViewport)(R)?H={scroll:R.scroll,zoom:R.zoom}:H={scroll:g.Point.ORIGIN,zoom:1},P.ViewportResult.create(H,R.canvasBounds,this.action.requestId)}};bh.GetViewportCommand=O,O.KIND=P.GetViewportAction.KIND,bh.GetViewportCommand=O=f([b(0,(0,m.inject)(M.TYPES.Action)),h("design:paramtypes",[Object])],O);class j extends C.Animation{constructor(x,R,H,F){super(F),this.element=x,this.oldViewport=R,this.newViewport=H,this.context=F,this.zoomFactor=Math.log(H.zoom/R.zoom)}tween(x,R){return this.element.scroll={x:(1-x)*this.oldViewport.scroll.x+x*this.newViewport.scroll.x,y:(1-x)*this.oldViewport.scroll.y+x*this.newViewport.scroll.y},this.element.zoom=this.oldViewport.zoom*Math.exp(x*this.zoomFactor),R.root}}return bh.ViewportAnimation=j,bh}var Hbt;function u2e(){if(Hbt)return Sl;Hbt=1;var f=Sl&&Sl.__decorate||function(F,$,W,re){var ae=arguments.length,ce=ae<3?$:re===null?re=Object.getOwnPropertyDescriptor($,W):re,J;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(F,$,W,re);else for(var te=F.length-1;te>=0;te--)(J=F[te])&&(ce=(ae<3?J(ce):ae>3?J($,W,ce):J($,W))||ce);return ae>3&&ce&&Object.defineProperty($,W,ce),ce},h=Sl&&Sl.__metadata||function(F,$){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(F,$)},b=Sl&&Sl.__param||function(F,$){return function(W,re){$(W,re,F)}};Object.defineProperty(Sl,"__esModule",{value:!0}),Sl.CenterKeyboardListener=Sl.FitToScreenCommand=Sl.CenterCommand=Sl.BoundsAwareViewportCommand=void 0;const w=jc(),m=Ac(),P=z3(),g=Oc(),E=Ca(),C=H3(),T=Xs(),M=Rb(),_=_J(),I=V3(),O=Zt(),j=Qn();let k=class extends E.Command{constructor($){super(),this.animate=$}initialize($){if(!(0,I.isViewport)($))return;this.oldViewport={scroll:$.scroll,zoom:$.zoom};const W=[];if(this.getElementIds().forEach(re=>{const ae=$.index.getById(re);ae&&(0,T.isBoundsAware)(ae)&&W.push(this.boundsInViewport(ae,ae.bounds,$))}),W.length===0&&$.index.all().forEach(re=>{(0,M.isSelectable)(re)&&re.selected&&(0,T.isBoundsAware)(re)&&W.push(this.boundsInViewport(re,re.bounds,$))}),W.length===0&&$.index.all().forEach(re=>{(0,T.isBoundsAware)(re)&&W.push(this.boundsInViewport(re,re.bounds,$))}),W.length!==0){const re=W.reduce((ae,ce)=>m.Bounds.combine(ae,ce));if(m.Dimension.isValid(re)){const ae=this.getNewViewport(re,$);if(ae){const{zoomLimits:ce,horizontalScrollLimits:J,verticalScrollLimits:te}=this.viewerOptions;this.newViewport=(0,I.limitViewport)(ae,$.canvasBounds,J,te,ce)}}}}boundsInViewport($,W,re){return $ instanceof g.SChildElementImpl&&$.parent!==re?this.boundsInViewport($.parent,$.parent.localToParent(W),re):W}execute($){return this.initialize($.root),this.redo($)}undo($){const W=$.root;if((0,I.isViewport)(W)&&this.newViewport!==void 0&&!this.equal(this.newViewport,this.oldViewport)){if(this.animate)return new _.ViewportAnimation(W,this.newViewport,this.oldViewport,$).start();W.scroll=this.oldViewport.scroll,W.zoom=this.oldViewport.zoom}return W}redo($){const W=$.root;if((0,I.isViewport)(W)&&this.newViewport!==void 0&&!this.equal(this.newViewport,this.oldViewport)){if(this.animate)return new _.ViewportAnimation(W,this.oldViewport,this.newViewport,$).start();W.scroll=this.newViewport.scroll,W.zoom=this.newViewport.zoom}return W}equal($,W){return(0,m.almostEquals)($.zoom,W.zoom)&&(0,m.almostEquals)($.scroll.x,W.scroll.x)&&(0,m.almostEquals)($.scroll.y,W.scroll.y)}};Sl.BoundsAwareViewportCommand=k,f([(0,O.inject)(j.TYPES.ViewerOptions),h("design:type",Object)],k.prototype,"viewerOptions",void 0),Sl.BoundsAwareViewportCommand=k=f([(0,O.injectable)(),h("design:paramtypes",[Boolean])],k);let x=class extends k{constructor($){super($.animate),this.action=$}getElementIds(){return this.action.elementIds}getNewViewport($,W){if(!m.Dimension.isValid(W.canvasBounds))return;let re=1;this.action.retainZoom&&(0,I.isViewport)(W)?re=W.zoom:this.action.zoomScale&&(re=this.action.zoomScale);const ae=m.Bounds.center($);return{scroll:{x:ae.x-.5*W.canvasBounds.width/re,y:ae.y-.5*W.canvasBounds.height/re},zoom:re}}};Sl.CenterCommand=x,x.KIND=w.CenterAction.KIND,Sl.CenterCommand=x=f([b(0,(0,O.inject)(j.TYPES.Action)),h("design:paramtypes",[Object])],x);let R=class extends k{constructor($){super($.animate),this.action=$}getElementIds(){return this.action.elementIds}getNewViewport($,W){if(!m.Dimension.isValid(W.canvasBounds))return;const re=m.Bounds.center($),ae=this.action.padding===void 0?0:2*this.action.padding;let ce=Math.min(W.canvasBounds.width/($.width+ae),W.canvasBounds.height/($.height+ae));return this.action.maxZoom!==void 0&&(ce=Math.min(ce,this.action.maxZoom)),ce===1/0&&(ce=1),{scroll:{x:re.x-.5*W.canvasBounds.width/ce,y:re.y-.5*W.canvasBounds.height/ce},zoom:ce}}};Sl.FitToScreenCommand=R,R.KIND=w.FitToScreenAction.KIND,Sl.FitToScreenCommand=R=f([b(0,(0,O.inject)(j.TYPES.Action)),h("design:paramtypes",[Object])],R);class H extends C.KeyListener{keyDown($,W){return(0,P.matchesKeystroke)(W,"KeyC","ctrlCmd","shift")?[w.CenterAction.create([])]:(0,P.matchesKeystroke)(W,"KeyF","ctrlCmd","shift")?[w.FitToScreenAction.create([])]:[]}}return Sl.CenterKeyboardListener=H,Sl}var _p={},zbt;function Rwt(){if(zbt)return _p;zbt=1;var f=_p&&_p.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=_p&&_p.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=_p&&_p.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(_p,"__esModule",{value:!0}),_p.BringToFrontCommand=void 0;const w=Zt(),m=jc(),P=Qn(),g=Oc(),E=Ca(),C=Ma();let T=class extends E.Command{constructor(_){super(),this.action=_,this.selected=[]}execute(_){const I=_.root;return this.action.elementIDs.forEach(O=>{const j=I.index.getById(O);j instanceof C.SRoutableElementImpl&&(j.source&&this.addToSelection(j.source),j.target&&this.addToSelection(j.target)),j instanceof g.SChildElementImpl&&this.addToSelection(j),this.includeConnectedEdges(j)}),this.redo(_)}includeConnectedEdges(_){if(_ instanceof C.SConnectableElementImpl&&(_.incomingEdges.forEach(I=>this.addToSelection(I)),_.outgoingEdges.forEach(I=>this.addToSelection(I))),_ instanceof g.SParentElementImpl)for(const I of _.children)this.includeConnectedEdges(I)}addToSelection(_){this.selected.push({element:_,index:_.parent.children.indexOf(_)})}undo(_){for(let I=this.selected.length-1;I>=0;I--){const O=this.selected[I],j=O.element;j.parent.move(j,O.index)}return _.root}redo(_){for(let I=0;I{(0,P.configureCommand)({bind:M,isBound:I},b.SetBoundsCommand),(0,P.configureCommand)({bind:M,isBound:I},b.RequestBoundsCommand),M(w.HiddenBoundsUpdater).toSelf().inSingletonScope(),M(h.TYPES.HiddenVNodePostprocessor).toService(w.HiddenBoundsUpdater),M(h.TYPES.Layouter).to(m.Layouter).inSingletonScope(),M(h.TYPES.LayoutRegistry).to(m.LayoutRegistry).inSingletonScope(),(0,m.configureLayout)({bind:M,isBound:I},E.VBoxLayouter.KIND,E.VBoxLayouter),(0,m.configureLayout)({bind:M,isBound:I},g.HBoxLayouter.KIND,g.HBoxLayouter),(0,m.configureLayout)({bind:M,isBound:I},C.StackLayouter.KIND,C.StackLayouter)});return nX.default=T,nX}var iX={},Gbt;function Lwt(){if(Gbt)return iX;Gbt=1,Object.defineProperty(iX,"__esModule",{value:!0});const f=Zt(),h=bJ(),b=new f.ContainerModule(w=>{w(h.ButtonHandlerRegistry).toSelf().inSingletonScope()});return iX.default=b,iX}var rX={},Ubt;function Nwt(){if(Ubt)return rX;Ubt=1,Object.defineProperty(rX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Hye(),w=lwt(),m=new f.ContainerModule(P=>{P(w.CommandPalette).toSelf().inSingletonScope(),P(h.TYPES.IUIExtension).toService(w.CommandPalette),P(w.CommandPaletteKeyListener).toSelf().inSingletonScope(),P(h.TYPES.KeyListener).toService(w.CommandPaletteKeyListener),P(b.CommandPaletteActionProviderRegistry).toSelf().inSingletonScope(),P(h.TYPES.ICommandPaletteActionProviderRegistry).toService(b.CommandPaletteActionProviderRegistry)});return rX.default=m,rX}var oX={},Wbt;function Fwt(){if(Wbt)return oX;Wbt=1,Object.defineProperty(oX,"__esModule",{value:!0});const f=Zt(),h=zye(),b=fwt(),w=Qn(),m=new f.ContainerModule(P=>{P(w.TYPES.IContextMenuServiceProvider).toProvider(g=>()=>new Promise((E,C)=>{g.container.isBound(w.TYPES.IContextMenuService)?E(g.container.get(w.TYPES.IContextMenuService)):C()})),P(b.ContextMenuMouseListener).toSelf().inSingletonScope(),P(w.TYPES.MouseListener).toService(b.ContextMenuMouseListener),P(w.TYPES.IContextMenuProviderRegistry).to(h.ContextMenuProviderRegistry)});return oX.default=m,oX}var cX={},Ybt;function Bwt(){if(Ybt)return cX;Ybt=1,Object.defineProperty(cX,"__esModule",{value:!0});const f=iN(),h=Zt(),b=Zye(),w=ywt(),m=Qn(),P=_wt(),g=new h.ContainerModule((E,C,T)=>{(0,f.configureModelElement)({bind:E,isBound:T},"marker",b.SIssueMarkerImpl,w.IssueMarkerView),E(P.DecorationPlacer).toSelf().inSingletonScope(),E(m.TYPES.IVNodePostprocessor).toService(P.DecorationPlacer)});return cX.default=g,cX}var sX={},Xbt;function PUt(){if(Xbt)return sX;Xbt=1,Object.defineProperty(sX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=e2e(),w=new f.ContainerModule(m=>{m(b.IntersectionFinder).toSelf().inSingletonScope(),m(h.TYPES.IEdgeRoutePostprocessor).toService(b.IntersectionFinder)});return sX.default=w,sX}var uX={},Jbt;function MUt(){if(Jbt)return uX;Jbt=1,Object.defineProperty(uX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Pwt(),w=Mwt(),m=new f.ContainerModule(P=>{P(b.JunctionFinder).toSelf().inSingletonScope(),P(h.TYPES.IEdgeRoutePostprocessor).toService(b.JunctionFinder),P(w.JunctionPostProcessor).toSelf().inSingletonScope(),P(h.TYPES.IVNodePostprocessor).toService(w.JunctionPostProcessor),P(h.TYPES.HiddenVNodePostprocessor).toService(w.JunctionPostProcessor)});return uX.default=m,uX}var aX={},Qbt;function $wt(){if(Qbt)return aX;Qbt=1,Object.defineProperty(aX,"__esModule",{value:!0});const f=Zt(),h=bJ(),b=wwt(),w=new f.ContainerModule((m,P,g)=>{(0,h.configureButtonHandler)({bind:m,isBound:g},b.ExpandButtonHandler.TYPE,b.ExpandButtonHandler)});return aX.default=w,aX}var lX={},Zbt;function Kwt(){if(Zbt)return lX;Zbt=1,Object.defineProperty(lX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=mwt(),w=Jye(),m=kb(),P=new f.ContainerModule((g,E,C)=>{g(b.ExportSvgKeyListener).toSelf().inSingletonScope(),g(h.TYPES.KeyListener).toService(b.ExportSvgKeyListener),g(b.ExportSvgPostprocessor).toSelf().inSingletonScope(),g(h.TYPES.HiddenVNodePostprocessor).toService(b.ExportSvgPostprocessor),(0,m.configureCommand)({bind:g,isBound:C},b.ExportSvgCommand),g(h.TYPES.SvgExporter).to(w.SvgExporter).inSingletonScope()});return lX.default=P,lX}var fX={},e0t;function qwt(){if(e0t)return fX;e0t=1,Object.defineProperty(fX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Qye(),w=new f.ContainerModule(m=>{m(b.ElementFader).toSelf().inSingletonScope(),m(h.TYPES.IVNodePostprocessor).toService(b.ElementFader)});return fX.default=w,fX}var hX={},wy={},t0t;function CUt(){if(t0t)return wy;t0t=1;var f=wy&&wy.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M},h=wy&&wy.__metadata||function(P,g){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(P,g)};Object.defineProperty(wy,"__esModule",{value:!0}),wy.PopupPositionUpdater=void 0;const b=Zt(),w=Qn();let m=class{decorate(g,E){return g}postUpdate(){const g=document.getElementById(this.options.popupDiv);if(g!==null&&typeof window<"u"){const E=g.getBoundingClientRect();window.innerHeight{M(w.PopupPositionUpdater).toSelf().inSingletonScope(),M(h.TYPES.PopupVNodePostprocessor).toService(w.PopupPositionUpdater),M(b.HoverMouseListener).toSelf().inSingletonScope(),M(h.TYPES.MouseListener).toService(b.HoverMouseListener),M(b.PopupHoverMouseListener).toSelf().inSingletonScope(),M(h.TYPES.PopupMouseListener).toService(b.PopupHoverMouseListener),M(b.HoverKeyListener).toSelf().inSingletonScope(),M(h.TYPES.KeyListener).toService(b.HoverKeyListener),M(h.TYPES.HoverState).toConstantValue({mouseOverTimer:void 0,mouseOutTimer:void 0,popupOpen:!1,previousPopupElement:void 0}),M(b.ClosePopupActionHandler).toSelf().inSingletonScope();const O={bind:M,isBound:I};(0,m.configureCommand)(O,b.HoverFeedbackCommand),(0,m.configureCommand)(O,b.SetPopupModelCommand),(0,P.configureActionHandler)(O,b.SetPopupModelCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,g.FitToScreenCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,g.CenterCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,E.SetViewportCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,C.MoveCommand.KIND,b.ClosePopupActionHandler)});return hX.default=T,hX}var dX={},i0t;function zwt(){if(i0t)return dX;i0t=1,Object.defineProperty(dX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=yJ(),w=kb(),m=new f.ContainerModule((P,g,E)=>{P(b.MoveMouseListener).toSelf().inSingletonScope(),P(h.TYPES.MouseListener).toService(b.MoveMouseListener),(0,w.configureCommand)({bind:P,isBound:E},b.MoveCommand),P(b.LocationPostprocessor).toSelf().inSingletonScope(),P(h.TYPES.IVNodePostprocessor).toService(b.LocationPostprocessor),P(h.TYPES.HiddenVNodePostprocessor).toService(b.LocationPostprocessor)});return dX.default=m,dX}var gX={},r0t;function Vwt(){if(r0t)return gX;r0t=1,Object.defineProperty(gX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Iwt(),w=new f.ContainerModule(m=>{m(b.OpenMouseListener).toSelf().inSingletonScope(),m(h.TYPES.MouseListener).toService(b.OpenMouseListener)});return gX.default=w,gX}var bX={},o0t;function Gwt(){if(o0t)return bX;o0t=1,Object.defineProperty(bX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=r2e(),w=wJ(),m=jwt(),P=n2e(),g=MS(),E=Iy(),C=i2e(),T=Twt(),M=kb(),_=new f.ContainerModule((I,O,j)=>{I(E.EdgeRouterRegistry).toSelf().inSingletonScope(),I(g.AnchorComputerRegistry).toSelf().inSingletonScope(),I(b.ManhattanEdgeRouter).toSelf().inSingletonScope(),I(h.TYPES.IEdgeRouter).toService(b.ManhattanEdgeRouter),I(m.ManhattanEllipticAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(m.ManhattanEllipticAnchor),I(m.ManhattanRectangularAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(m.ManhattanRectangularAnchor),I(m.ManhattanDiamondAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(m.ManhattanDiamondAnchor),I(w.PolylineEdgeRouter).toSelf().inSingletonScope(),I(h.TYPES.IEdgeRouter).toService(w.PolylineEdgeRouter),I(P.EllipseAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(P.EllipseAnchor),I(P.RectangleAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(P.RectangleAnchor),I(P.DiamondAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(P.DiamondAnchor),I(C.BezierEdgeRouter).toSelf().inSingletonScope(),I(h.TYPES.IEdgeRouter).toService(C.BezierEdgeRouter),I(T.BezierEllipseAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(T.BezierEllipseAnchor),I(T.BezierRectangleAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(T.BezierRectangleAnchor),I(T.BezierDiamondAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(T.BezierDiamondAnchor),(0,M.configureCommand)({bind:I,isBound:j},C.AddRemoveBezierSegmentCommand)});return bX.default=_,bX}var pX={},c0t;function Uwt(){if(c0t)return pX;c0t=1,Object.defineProperty(pX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Dwt(),w=kb(),m=new f.ContainerModule((P,g,E)=>{(0,w.configureCommand)({bind:P,isBound:E},b.SelectCommand),(0,w.configureCommand)({bind:P,isBound:E},b.SelectAllCommand),(0,w.configureCommand)({bind:P,isBound:E},b.GetSelectionCommand),P(b.SelectKeyboardListener).toSelf().inSingletonScope(),P(h.TYPES.KeyListener).toService(b.SelectKeyboardListener),P(b.SelectMouseListener).toSelf().inSingletonScope(),P(h.TYPES.MouseListener).toService(b.SelectMouseListener)});return pX.default=m,pX}var wX={},s0t;function Wwt(){if(s0t)return wX;s0t=1,Object.defineProperty(wX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=kwt(),w=new f.ContainerModule(m=>{m(b.UndoRedoKeyListener).toSelf().inSingletonScope(),m(h.TYPES.KeyListener).toService(b.UndoRedoKeyListener)});return wX.default=w,wX}var mX={},u0t;function Ywt(){if(u0t)return mX;u0t=1,Object.defineProperty(mX,"__esModule",{value:!0});const f=Zt(),h=kb(),b=s2e(),w=new f.ContainerModule((m,P,g)=>{(0,h.configureCommand)({bind:m,isBound:g},b.UpdateModelCommand)});return mX.default=w,mX}var vX={},a0t;function Xwt(){if(a0t)return vX;a0t=1,Object.defineProperty(vX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=u2e(),w=_J(),m=o2e(),P=Wye(),g=kb(),E=new f.ContainerModule((C,T,M)=>{(0,g.configureCommand)({bind:C,isBound:M},b.CenterCommand),(0,g.configureCommand)({bind:C,isBound:M},b.FitToScreenCommand),(0,g.configureCommand)({bind:C,isBound:M},w.SetViewportCommand),(0,g.configureCommand)({bind:C,isBound:M},w.GetViewportCommand),C(b.CenterKeyboardListener).toSelf().inSingletonScope(),C(h.TYPES.KeyListener).toService(b.CenterKeyboardListener),C(m.ScrollMouseListener).toSelf().inSingletonScope(),C(P.ZoomMouseListener).toSelf().inSingletonScope(),C(h.TYPES.MouseListener).toService(m.ScrollMouseListener),C(h.TYPES.MouseListener).toService(P.ZoomMouseListener)});return vX.default=E,vX}var yX={},l0t;function Jwt(){if(l0t)return yX;l0t=1,Object.defineProperty(yX,"__esModule",{value:!0});const f=Zt(),h=kb(),b=Rwt(),w=new f.ContainerModule((m,P,g)=>{(0,h.configureCommand)({bind:m,isBound:g},b.BringToFrontCommand)});return yX.default=w,yX}var Go={},f0t;function IUt(){if(f0t)return Go;f0t=1;var f=Go&&Go.__decorate||function(ce,J,te,fe){var ve=arguments.length,me=ve<3?J:fe===null?fe=Object.getOwnPropertyDescriptor(J,te):fe,ke;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")me=Reflect.decorate(ce,J,te,fe);else for(var tt=ce.length-1;tt>=0;tt--)(ke=ce[tt])&&(me=(ve<3?ke(me):ve>3?ke(J,te,me):ke(J,te))||me);return ve>3&&me&&Object.defineProperty(J,te,me),me},h=Go&&Go.__metadata||function(ce,J){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ce,J)};Object.defineProperty(Go,"__esModule",{value:!0}),Go.SBezierControlHandleView=Go.SBezierCreateHandleView=Go.SCompartmentView=Go.SLabelView=Go.SRoutingHandleView=Go.BezierCurveEdgeView=Go.PolylineEdgeViewWithGapsOnIntersections=Go.JumpingPolylineEdgeView=Go.PolylineEdgeView=Go.SGraphView=void 0;const b=Zt(),w=Ac(),m=LM(),P=mh(),g=gJ(),E=e2e(),C=cN(),T=Ma(),M=Iy(),_=Awt(),I=Cy(),O=PS();let j=class{render(J,te){const fe=this.edgeRouterRegistry.routeAllChildren(J),ve=`scale(${J.zoom}) translate(${-J.scroll.x},${-J.scroll.y})`;return(0,I.svg)("svg",{"class-sprotty-graph":!0},(0,I.svg)("g",{transform:ve},te.renderChildren(J,{edgeRouting:fe})))}};Go.SGraphView=j,f([(0,b.inject)(M.EdgeRouterRegistry),h("design:type",M.EdgeRouterRegistry)],j.prototype,"edgeRouterRegistry",void 0),Go.SGraphView=j=f([(0,b.injectable)()],j);let k=class extends _.RoutableView{render(J,te,fe){const ve=this.edgeRouterRegistry.route(J,fe);return ve.length===0?this.renderDanglingEdge("Cannot compute route",J,te):this.isVisible(J,ve,te)?(0,I.svg)("g",{"class-sprotty-edge":!0,"class-mouseover":J.hoverFeedback},this.renderLine(J,ve,te,fe),this.renderAdditionals(J,ve,te),this.renderJunctionPoints(J,ve,te,fe),te.renderChildren(J,{route:ve})):J.children.length===0?void 0:(0,I.svg)("g",null,te.renderChildren(J,{route:ve}))}renderJunctionPoints(J,te,fe,ve){const ke=[];for(let tt=1;tt0)return(0,I.svg)("g",{"class-sprotty-junction":!0},ke)}renderLine(J,te,fe,ve){const me=te[0];let ke=`M ${me.x},${me.y}`;for(let tt=1;tt=Math.abs(te.slopeOrMax)}createGapPath(J,te){const fe=w.Point.shiftTowards(J,te.p1,this.skipOffsetBefore),ve=w.Point.shiftTowards(J,te.p2,this.skipOffsetAfter);return` L ${fe.x},${fe.y} M ${ve.x},${ve.y}`}};Go.PolylineEdgeViewWithGapsOnIntersections=R,Go.PolylineEdgeViewWithGapsOnIntersections=R=f([(0,b.injectable)()],R);let H=class extends _.RoutableView{render(J,te,fe){const ve=this.edgeRouterRegistry.route(J,fe);return ve.length===0?this.renderDanglingEdge("Cannot compute route",J,te):this.isVisible(J,ve,te)?(0,I.svg)("g",{"class-sprotty-edge":!0,"class-mouseover":J.hoverFeedback},this.renderLine(J,ve,te,fe),this.renderAdditionals(J,ve,te),te.renderChildren(J,{route:ve})):J.children.length===0?void 0:(0,I.svg)("g",null,te.renderChildren(J,{route:ve}))}renderLine(J,te,fe,ve){let me="";if(te.length>=4){me+=this.buildMainSegment(te);const ke=te.length-4;if(ke>0&&ke%3===0)for(let tt=4;tt{g(b.TYPES.ModelSourceProvider).toProvider(T=>()=>new Promise(M=>{M(T.container.get(b.TYPES.ModelSource))})),(0,h.configureCommand)({bind:g,isBound:C},w.CommitModelCommand),g(b.TYPES.IActionHandlerInitializer).toService(b.TYPES.ModelSource),g(m.ComputedBoundsApplicator).toSelf().inSingletonScope()});return _X.default=P,_X}var d0t;function TUt(){if(d0t)return IM;d0t=1;var f=IM&&IM.__importDefault||function(ae){return ae&&ae.__esModule?ae:{default:ae}};Object.defineProperty(IM,"__esModule",{value:!0}),IM.loadDefaultModules=void 0;const h=f(nwt()),b=f(Qwt()),w=f(xwt()),m=f(Lwt()),P=f(Nwt()),g=f(Fwt()),E=f(Bwt()),C=f(Rve()),T=pwt(),M=f($wt()),_=f(Kwt()),I=f(qwt()),O=f(Hwt()),j=f(zwt()),k=f(Vwt()),x=f(Gwt()),R=f(Uwt()),H=f(Wwt()),F=f(Ywt()),$=f(Xwt()),W=f(Jwt());function re(ae,ce){const J=[h.default,b.default,w.default,m.default,P.default,g.default,E.default,T.edgeEditModule,C.default,M.default,_.default,I.default,O.default,T.labelEditModule,T.labelEditUiModule,j.default,k.default,x.default,R.default,H.default,F.default,$.default,W.default];if(ce&&ce.exclude)for(const te of ce.exclude){const fe=J.indexOf(te);fe>=0&&J.splice(fe,1)}ae.load(...J)}return IM.loadDefaultModules=re,IM}var Ob={},EX={},g0t;function jUt(){if(g0t)return EX;g0t=1,Object.defineProperty(EX,"__esModule",{value:!0});const f=nN;function h(k){const x={},R=(W,re)=>{if(re!=="style"&&re!=="class"){const ae=E(k[re]);W?W[re]=ae:W={[re]:ae}}return W},H=Object.keys(k).reduce(R,null);H&&(x.attrs=H);const F=b(k);F&&(x.style=F);const $=w(k);return $&&(x.class=$),x}function b(k){const x=(R,H)=>{const F=H.split(":"),$=m(F[0].trim());if($){const W=F[1].replace("!important","").trim();R?R[$]=W:R={[$]:W}}return R};try{return k.style.split(";").reduce(x,null)}catch{return null}}function w(k){const x=(R,H)=>(H=H.trim(),H&&(R?R[H]=!0:R={[H]:!0}),R);try{return k.class.split(" ").reduce(x,null)}catch{return null}}function m(k){return k=k.replace(/-(\w)/g,function(H,F){return F.toUpperCase()}),`${k.charAt(0).toLowerCase()}${k.substring(1)}`}const P=new RegExp("&[a-z0-9#]+;","gi");let g=null;function E(k){return g||(g=document.createElement("div")),k.replace(P,x=>g===null?"":(g.innerHTML=x,g.textContent===null?"":g.textContent))}function C(k,x){let R=k,H=null;const F=[],$=W=>{const re=W.firstChild;re!==null&&(H=W),R=re};for(x(R,H),$(R);;){for(;R;)F.push(R),x(R,H),$(R);const W=F.pop();if(R=W||null,!F.length)break;if(H=F[F.length-1],R){const re=R.nextSibling;re==null&&(H=F[F.length-1]),R=re}}}let T=null;const M=new Map;let _=!1;function I(k,x){let R;switch(x!==null&&(R=M.get(x)),k?.nodeType){case 1:{if(R===void 0)return;R.children=R.children?R.children:[];const H=R.children,F=k.attributes,$={};for(let re=0;re0?F[F.length-1]:null;!_&&typeof $!="string"&&$!==null&&$.sel===void 0?$.text=$.text+H:F.push((0,f.vnode)(void 0,void 0,void 0,H,void 0)),_=!1}break}case 8:{_=!0;break}case 9:{T=(0,f.vnode)(void 0,void 0,[],void 0,void 0),M.set(k,T);break}}}function O(k){const x=k?.children;return typeof x>"u"?null:x.length===1&&typeof x[0]!="string"?x[0]:null}function j(k){var x,R;const H=new window.DOMParser;if(H===void 0||k===void 0||k==="")return null;const F=H.parseFromString(k,"application/xml");if(((x=F?.firstChild)===null||x===void 0?void 0:x.nodeName)==="parsererror"){const $=`${(R=F?.firstChild)===null||R===void 0?void 0:R.textContent}`;return(0,f.h)("parsererror",[$])}return _=!1,T=null,C(F,I),T===null?null:O(T)}return EX.default=j,EX}var as={},b0t;function Zwt(){if(b0t)return as;b0t=1,Object.defineProperty(as,"__esModule",{value:!0}),as.ForeignObjectElement=as.ForeignObjectElementImpl=as.ShapedPreRenderedElement=as.ShapedPreRenderedElementImpl=as.PreRenderedElement=as.PreRenderedElementImpl=as.HtmlRoot=as.HtmlRootImpl=as.RectangularPort=as.CircularPort=as.DiamondNode=as.RectangularNode=as.CircularNode=void 0;const f=Ac(),h=Oc(),b=Xs(),w=SS(),m=Rb(),P=MA(),g=MS();class E extends P.SNodeImpl{get anchorKind(){return g.ELLIPTIC_ANCHOR_KIND}}as.CircularNode=E;class C extends P.SNodeImpl{get anchorKind(){return g.RECTANGULAR_ANCHOR_KIND}}as.RectangularNode=C;class T extends P.SNodeImpl{get anchorKind(){return g.DIAMOND_ANCHOR_KIND}}as.DiamondNode=T;class M extends P.SPortImpl{get anchorKind(){return g.ELLIPTIC_ANCHOR_KIND}}as.CircularPort=M;class _ extends P.SPortImpl{get anchorKind(){return g.RECTANGULAR_ANCHOR_KIND}}as.RectangularPort=_;class I extends h.SModelRootImpl{constructor(){super(...arguments),this.classes=[]}}as.HtmlRootImpl=I,as.HtmlRoot=I;class O extends h.SChildElementImpl{}as.PreRenderedElementImpl=O,as.PreRenderedElement=O;class j extends O{constructor(){super(...arguments),this.position=f.Point.ORIGIN,this.size=f.Dimension.EMPTY,this.selected=!1,this.alignment=f.Point.ORIGIN}get bounds(){return{x:this.position.x,y:this.position.y,width:this.size.width,height:this.size.height}}set bounds(R){this.position={x:R.x,y:R.y},this.size={width:R.width,height:R.height}}}as.ShapedPreRenderedElementImpl=j,j.DEFAULT_FEATURES=[w.moveFeature,b.boundsFeature,m.selectFeature,b.alignFeature],as.ShapedPreRenderedElement=j;class k extends j{get bounds(){return f.Dimension.isValid(this.size)?{x:this.position.x,y:this.position.y,width:this.size.width,height:this.size.height}:(0,b.isBoundsAware)(this.parent)?{x:this.position.x,y:this.position.y,width:this.parent.bounds.width,height:this.parent.bounds.height}:f.Bounds.EMPTY}}return as.ForeignObjectElementImpl=k,as.ForeignObjectElement=k,as}var p0t;function AUt(){if(p0t)return Ob;p0t=1;var f=Ob&&Ob.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Ob&&Ob.__importDefault||function(M){return M&&M.__esModule?M:{default:M}};Object.defineProperty(Ob,"__esModule",{value:!0}),Ob.ForeignObjectView=Ob.PreRenderedView=void 0;const b=Cy(),w=Zt(),m=h(jUt()),P=mh(),g=gJ(),E=Zwt();let C=class extends g.ShapeView{render(_,I){if(_ instanceof E.ShapedPreRenderedElementImpl&&!this.isVisible(_,I))return;const O=(0,m.default)(_.code);if(O!==null)return this.correctNamespace(O),O}correctNamespace(_){(_.sel==="svg"||_.sel==="g")&&(0,P.setNamespace)(_,"http://www.w3.org/2000/svg")}};Ob.PreRenderedView=C,Ob.PreRenderedView=C=f([(0,w.injectable)()],C);let T=class{render(_,I){const O=(0,m.default)(_.code);if(O===null)return;const j=(0,b.svg)("g",null,(0,b.svg)("foreignObject",{requiredFeatures:"http://www.w3.org/TR/SVG11/feature#Extensibility",height:_.bounds.height,width:_.bounds.width,x:0,y:0},O),I.renderChildren(_));return(0,P.setAttr)(j,"class",_.type),(0,P.setNamespace)(O,_.namespace),j}};return Ob.ForeignObjectView=T,Ob.ForeignObjectView=T=f([(0,w.injectable)()],T),Ob}var iS={},w0t;function OUt(){if(w0t)return iS;w0t=1;var f=iS&&iS.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(iS,"__esModule",{value:!0}),iS.HtmlRootView=void 0;const h=Cy(),b=Zt(),w=mh();let m=class{render(g,E){const C=(0,h.html)("div",null,E.renderChildren(g));for(const T of g.classes)(0,w.setClass)(C,T,!0);return C}};return iS.HtmlRootView=m,iS.HtmlRootView=m=f([(0,b.injectable)()],m),iS}var Ep={},DX={exports:{}},DUt=DX.exports,m0t;function emt(){return m0t||(m0t=1,(function(f,h){(function(b,w){w()})(DUt,function(){function b(T,M){return typeof M>"u"?M={autoBom:!1}:typeof M!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),M={autoBom:!M}),M.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(T.type)?new Blob(["\uFEFF",T],{type:T.type}):T}function w(T,M,_){var I=new XMLHttpRequest;I.open("GET",T),I.responseType="blob",I.onload=function(){C(I.response,M,_)},I.onerror=function(){console.error("could not download file")},I.send()}function m(T){var M=new XMLHttpRequest;M.open("HEAD",T,!1);try{M.send()}catch{}return 200<=M.status&&299>=M.status}function P(T){try{T.dispatchEvent(new MouseEvent("click"))}catch{var M=document.createEvent("MouseEvents");M.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),T.dispatchEvent(M)}}var g=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof fS=="object"&&fS.global===fS?fS:void 0,E=g.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),C=g.saveAs||(typeof window!="object"||window!==g?function(){}:"download"in HTMLAnchorElement.prototype&&!E?function(T,M,_){var I=g.URL||g.webkitURL,O=document.createElement("a");M=M||T.name||"download",O.download=M,O.rel="noopener",typeof T=="string"?(O.href=T,O.origin===location.origin?P(O):m(O.href)?w(T,M,_):P(O,O.target="_blank")):(O.href=I.createObjectURL(T),setTimeout(function(){I.revokeObjectURL(O.href)},4e4),setTimeout(function(){P(O)},0))}:"msSaveOrOpenBlob"in navigator?function(T,M,_){if(M=M||T.name||"download",typeof T!="string")navigator.msSaveOrOpenBlob(b(T,_),M);else if(m(T))w(T,M,_);else{var I=document.createElement("a");I.href=T,I.target="_blank",setTimeout(function(){P(I)})}}:function(T,M,_,I){if(I=I||open("","_blank"),I&&(I.document.title=I.document.body.innerText="downloading..."),typeof T=="string")return w(T,M,_);var O=T.type==="application/octet-stream",j=/constructor/i.test(g.HTMLElement)||g.safari,k=/CriOS\/[\d]+/.test(navigator.userAgent);if((k||O&&j||E)&&typeof FileReader<"u"){var x=new FileReader;x.onloadend=function(){var F=x.result;F=k?F:F.replace(/^data:[^;]*;/,"data:attachment/file;"),I?I.location.href=F:location=F,I=null},x.readAsDataURL(T)}else{var R=g.URL||g.webkitURL,H=R.createObjectURL(T);I?I.location=H:location.href=H,I=null,setTimeout(function(){R.revokeObjectURL(H)},4e4)}});g.saveAs=C.saveAs=C,f.exports=C})})(DX)),DX.exports}var v0t;function tmt(){if(v0t)return Ep;v0t=1;var f=Ep&&Ep.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=Ep&&Ep.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(Ep,"__esModule",{value:!0}),Ep.DiagramServerProxy=Ep.ServerStatusAction=void 0;const b=emt(),w=Zt(),m=jc(),P=xye(),g=Qn(),E=$ye(),C=s2e(),T=CA();class M{constructor(){this.kind=M.KIND}}Ep.ServerStatusAction=M,M.KIND="serverStatus";const _="__receivedFromServer";let I=class extends T.ModelSource{constructor(){super(...arguments),this.currentRoot={type:"NONE",id:"ROOT"}}get model(){return this.currentRoot}initialize(j){super.initialize(j),j.register(m.ComputedBoundsAction.KIND,this),j.register(E.RequestBoundsCommand.KIND,this),j.register(m.RequestPopupModelAction.KIND,this),j.register(m.CollapseExpandAction.KIND,this),j.register(m.CollapseExpandAllAction.KIND,this),j.register(m.OpenAction.KIND,this),j.register(M.KIND,this),this.clientId||(this.clientId=this.viewerOptions.baseDiv)}handle(j){this.handleLocally(j)&&this.forwardToServer(j)}forwardToServer(j){const k={clientId:this.clientId,action:j};this.logger.log(this,"sending",k),this.sendMessage(k)}messageReceived(j){const k=typeof j=="string"?JSON.parse(j):j;(0,m.isActionMessage)(k)&&k.action?(!k.clientId||k.clientId===this.clientId)&&(k.action[_]=!0,this.logger.log(this,"receiving",k),this.actionDispatcher.dispatch(k.action).then(()=>{this.storeNewModel(k.action)})):this.logger.error(this,"received data is not an action message",k)}handleLocally(j){switch(this.storeNewModel(j),j.kind){case m.ComputedBoundsAction.KIND:return this.handleComputedBounds(j);case m.RequestModelAction.KIND:return this.handleRequestModel(j);case E.RequestBoundsCommand.KIND:return!1;case m.ExportSvgAction.KIND:return this.handleExportSvgAction(j);case M.KIND:return this.handleServerStateAction(j)}return!j[_]}storeNewModel(j){if(j.kind===P.SetModelCommand.KIND||j.kind===C.UpdateModelCommand.KIND||j.kind===E.RequestBoundsCommand.KIND){const k=j.newRoot;k&&(this.currentRoot=k,(j.kind===P.SetModelCommand.KIND||j.kind===C.UpdateModelCommand.KIND)&&(this.lastSubmittedModelType=k.type))}}handleRequestModel(j){const k=Object.assign({needsClientLayout:this.viewerOptions.needsClientLayout,needsServerLayout:this.viewerOptions.needsServerLayout},j.options),x=Object.assign(Object.assign({},j),{options:k});return this.forwardToServer(x),!1}handleComputedBounds(j){if(this.viewerOptions.needsServerLayout)return!0;{const k=this.currentRoot;return this.computedBoundsApplicator.apply(k,j),k.type===this.lastSubmittedModelType?this.actionDispatcher.dispatch(m.UpdateModelAction.create(k)):this.actionDispatcher.dispatch(m.SetModelAction.create(k)),this.lastSubmittedModelType=k.type,!1}}handleExportSvgAction(j){const k=new Blob([j.svg],{type:"text/plain;charset=utf-8"});return(0,b.saveAs)(k,"diagram.svg"),!1}handleServerStateAction(j){return!1}commitModel(j){const k=this.currentRoot;return this.currentRoot=j,k}};return Ep.DiagramServerProxy=I,f([(0,w.inject)(g.TYPES.ILogger),h("design:type",Object)],I.prototype,"logger",void 0),f([(0,w.inject)(T.ComputedBoundsApplicator),h("design:type",T.ComputedBoundsApplicator)],I.prototype,"computedBoundsApplicator",void 0),Ep.DiagramServerProxy=I=f([(0,w.injectable)()],I),Ep}var my={},y0t;function kUt(){if(y0t)return my;y0t=1;var f=my&&my.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h=my&&my.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)};Object.defineProperty(my,"__esModule",{value:!0}),my.LocalModelSource=void 0;const b=emt(),w=Zt(),m=jc(),P=Sp(),g=LM(),E=Qn(),C=ES(),T=c2e(),M=CA();let _=class extends M.ModelSource{constructor(){super(...arguments),this.currentRoot=C.EMPTY_ROOT}get model(){return this.currentRoot}set model(O){this.setModel(O)}initialize(O){super.initialize(O),O.register(m.ComputedBoundsAction.KIND,this),O.register(m.RequestPopupModelAction.KIND,this)}setModel(O){return this.currentRoot=O,this.submitModel(O,!1)}commitModel(O){const j=this.currentRoot;return this.currentRoot=O,j}updateModel(O){return O===void 0?this.submitModel(this.currentRoot,!0):(this.currentRoot=O,this.submitModel(O,!0))}async getSelection(){const O=await this.actionDispatcher.request(P.GetSelectionAction.create()),j=[];return this.gatherSelectedElements(this.currentRoot,new Set(O.selectedElementsIDs),j),j}gatherSelectedElements(O,j,k){if(j.has(O.id)&&k.push(O),O.children)for(const x of O.children)this.gatherSelectedElements(x,j,k)}async getViewport(){const O=await this.actionDispatcher.request(P.GetViewportAction.create());return{scroll:O.viewport.scroll,zoom:O.viewport.zoom,canvasBounds:O.canvasBounds}}async submitModel(O,j,k){if(this.viewerOptions.needsClientLayout){const x=await this.actionDispatcher.request(m.RequestBoundsAction.create(O)),R=this.computedBoundsApplicator.apply(this.currentRoot,x);await this.doSubmitModel(O,j,k,R)}else await this.doSubmitModel(O,j,k)}async doSubmitModel(O,j,k,x){if(this.layoutEngine!==void 0)try{const H=this.layoutEngine.layout(O,x);H instanceof Promise?O=await H:H!==void 0&&(O=H)}catch(H){this.logger.error(this,H.toString(),H.stack)}const R=this.lastSubmittedModelType;if(this.lastSubmittedModelType=O.type,k&&k.kind===m.RequestModelAction.KIND&&k.requestId){const H=k;await this.actionDispatcher.dispatch(m.SetModelAction.create(O,H.requestId))}else if(j&&O.type===R){const H=Array.isArray(j)?j:O;await this.actionDispatcher.dispatch(m.UpdateModelAction.create(H,{animate:!0,cause:k}))}else await this.actionDispatcher.dispatch(m.SetModelAction.create(O))}applyMatches(O){const j=this.currentRoot;return(0,T.applyMatches)(j,O),this.submitModel(j,O)}addElements(O){const j=[];for(const k of O){const x=k;typeof x.element=="object"&&typeof x.parentId=="string"?j.push({right:x.element,rightParentId:x.parentId}):typeof x.id=="string"&&j.push({right:x,rightParentId:this.currentRoot.id})}return this.applyMatches(j)}removeElements(O){const j=[],k=new g.SModelIndex;k.add(this.currentRoot);for(const x of O){const R=x;if(R.elementId!==void 0&&R.parentId!==void 0){const H=k.getById(R.elementId);H!==void 0&&j.push({left:H,leftParentId:R.parentId})}else{const H=k.getById(R);H!==void 0&&j.push({left:H,leftParentId:this.currentRoot.id})}}return this.applyMatches(j)}handle(O){switch(O.kind){case m.RequestModelAction.KIND:this.handleRequestModel(O);break;case m.ComputedBoundsAction.KIND:this.computedBoundsApplicator.apply(this.currentRoot,O);break;case m.RequestPopupModelAction.KIND:this.handleRequestPopupModel(O);break;case m.ExportSvgAction.KIND:this.handleExportSvgAction(O);break}}handleRequestModel(O){this.submitModel(this.currentRoot,!1,O)}handleRequestPopupModel(O){if(this.popupModelProvider!==void 0){const j=(0,g.findElement)(this.currentRoot,O.elementId),k=this.popupModelProvider.getPopupModel(O,j);k!==void 0&&(k.canvasBounds=O.bounds,this.actionDispatcher.dispatch(m.SetPopupModelAction.create(k,O.requestId)))}}handleExportSvgAction(O){const j=new Blob([O.svg],{type:"text/plain;charset=utf-8"});(0,b.saveAs)(j,"diagram.svg")}};return my.LocalModelSource=_,f([(0,w.inject)(E.TYPES.ILogger),h("design:type",Object)],_.prototype,"logger",void 0),f([(0,w.inject)(M.ComputedBoundsApplicator),h("design:type",M.ComputedBoundsApplicator)],_.prototype,"computedBoundsApplicator",void 0),f([(0,w.inject)(E.TYPES.IPopupModelProvider),(0,w.optional)(),h("design:type",Object)],_.prototype,"popupModelProvider",void 0),f([(0,w.inject)(E.TYPES.IModelLayoutEngine),(0,w.optional)(),h("design:type",Object)],_.prototype,"layoutEngine",void 0),my.LocalModelSource=_=f([(0,w.injectable)()],_),my}var vy={},_0t;function RUt(){if(_0t)return vy;_0t=1;var f=vy&&vy.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=vy&&vy.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(vy,"__esModule",{value:!0}),vy.ForwardingLogger=void 0;const b=Zt(),w=jc(),m=Bye(),P=Qn();let g=class{error(C,T,...M){this.logLevel>=m.LogLevel.error&&this.forward(C,T,m.LogLevel.error,M)}warn(C,T,...M){this.logLevel>=m.LogLevel.warn&&this.forward(C,T,m.LogLevel.warn,M)}info(C,T,...M){this.logLevel>=m.LogLevel.info&&this.forward(C,T,m.LogLevel.info,M)}log(C,T,...M){if(this.logLevel>=m.LogLevel.log)try{const _=typeof C=="object"?C.constructor.name:String(C);console.log.apply(C,[_+": "+T,...M])}catch{}}forward(C,T,M,_){const I=new Date,O=w.LoggingAction.create({message:T,severity:m.LogLevel[M],time:I.toLocaleTimeString(),caller:typeof C=="object"?C.constructor.name:String(C),params:_.map(j=>JSON.stringify(j))});this.modelSourceProvider().then(j=>{try{j.handle(O)}catch(k){try{console.log.apply(C,[T,O,k])}catch{}}})}};return vy.ForwardingLogger=g,f([(0,b.inject)(P.TYPES.ModelSourceProvider),h("design:type",Function)],g.prototype,"modelSourceProvider",void 0),f([(0,b.inject)(P.TYPES.LogLevel),h("design:type",Number)],g.prototype,"logLevel",void 0),vy.ForwardingLogger=g=f([(0,b.injectable)()],g),vy}var rS={},E0t;function xUt(){if(E0t)return rS;E0t=1;var f=rS&&rS.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(rS,"__esModule",{value:!0}),rS.WebSocketDiagramServerProxy=void 0;const h=Zt(),b=tmt();let w=class extends b.DiagramServerProxy{listen(P){P.addEventListener("message",g=>{this.messageReceived(g.data)}),P.addEventListener("error",g=>{this.logger.error(this,"error event received",g)}),this.webSocket=P}disconnect(){this.webSocket&&(this.webSocket.close(),this.webSocket=void 0)}sendMessage(P){if(this.webSocket)this.webSocket.send(JSON.stringify(P));else throw new Error("WebSocket is not connected")}};return rS.WebSocketDiagramServerProxy=w,rS.WebSocketDiagramServerProxy=w=f([(0,h.injectable)()],w),rS}var S3={},S0t;function LUt(){if(S0t)return S3;S0t=1,Object.defineProperty(S3,"__esModule",{value:!0}),S3.ColorMap=S3.toSVG=S3.rgb=void 0;function f(w,m,P){return{red:w,green:m,blue:P}}S3.rgb=f;function h(w){return"rgb("+w.red+","+w.green+","+w.blue+")"}S3.toSVG=h;class b{constructor(m){this.stops=m}getColor(m){m=Math.max(0,Math.min(.99999999,m));const P=Math.floor(m*this.stops.length);return this.stops[P]}}return S3.ColorMap=b,S3}var P0t;function NUt(){return P0t||(P0t=1,(function(f){var h=d3&&d3.__createBinding||(Object.create?(function(te,fe,ve,me){me===void 0&&(me=ve);var ke=Object.getOwnPropertyDescriptor(fe,ve);(!ke||("get"in ke?!fe.__esModule:ke.writable||ke.configurable))&&(ke={enumerable:!0,get:function(){return fe[ve]}}),Object.defineProperty(te,me,ke)}):(function(te,fe,ve,me){me===void 0&&(me=ve),te[me]=fe[ve]})),b=d3&&d3.__exportStar||function(te,fe){for(var ve in te)ve!=="default"&&!Object.prototype.hasOwnProperty.call(fe,ve)&&h(fe,te,ve)},w=d3&&d3.__importDefault||function(te){return te&&te.__esModule?te:{default:te}};Object.defineProperty(f,"__esModule",{value:!0}),f.modelSourceModule=f.zorderModule=f.viewportModule=f.updateModule=f.undoRedoModule=f.selectModule=f.routingModule=f.openModule=f.moveModule=f.hoverModule=f.fadeModule=f.exportModule=f.expandModule=f.edgeLayoutModule=f.edgeJunctionModule=f.edgeIntersectionModule=f.decorationModule=f.contextMenuModule=f.commandPaletteModule=f.buttonModule=f.boundsModule=f.defaultModule=void 0,b(jye(),f),b(Rye(),f),b(lJ(),f),b(zpt(),f),b(eN(),f),b(SA(),f),b(Vpt(),f),b(Ca(),f),b(kb(),f),b(Gpt(),f),b(Upt(),f),b(fJ(),f),b(xye(),f),b(ES(),f),b(Qh(),f),b(Oc(),f),b(hJ(),f),b(Lye(),f),b(H3(),f),b(Pp(),f),b(Jpt(),f),b(iN(),f),b(Qpt(),f),b(Zpt(),f),b(ewt(),f),b(twt(),f),b(mh(),f),b(Qn(),f);const m=w(nwt());f.defaultModule=m.default,b($ye(),f),b(iwt(),f),b(Kye(),f),b(Xs(),f),b(rwt(),f),b(owt(),f),b(cwt(),f),b(gJ(),f),b(bJ(),f),b(swt(),f),b(Hye(),f),b(lwt(),f),b(gUt(),f),b(zye(),f),b(fwt(),f),b(Rve(),f),b(hwt(),f),b(cN(),f),b(bUt(),f),b(dwt(),f),b(pwt(),f),b(oN(),f),b(Uye(),f),b(bwt(),f),b(vJ(),f),b(sN(),f),b(Yye(),f),b(wwt(),f),b(Xye(),f),b(pUt(),f),b(mwt(),f),b(Vye(),f),b(Jye(),f),b(wUt(),f),b(Qye(),f),b(rN(),f),b(vwt(),f),b(PA(),f),b(Zye(),f),b(ywt(),f),b(_wt(),f),b(e2e(),f),b(Swt(),f),b(Pwt(),f),b(Mwt(),f),b(SS(),f),b(yJ(),f),b(_Ut(),f),b(uwt(),f),b(Iwt(),f),b(Cwt(),f),b(t2e(),f),b(EUt(),f),b(MS(),f),b(pJ(),f),b(Twt(),f),b(i2e(),f),b(jwt(),f),b(r2e(),f),b(Ma(),f),b(n2e(),f),b(wJ(),f),b(Iy(),f),b(Awt(),f),b(Rb(),f),b(Dwt(),f),b(kwt(),f),b(c2e(),f),b(s2e(),f),b(u2e(),f),b(V3(),f),b(o2e(),f),b(Gye(),f),b(_J(),f),b(Wye(),f),b(Rwt(),f);const P=w(xwt());f.boundsModule=P.default;const g=w(Lwt());f.buttonModule=g.default;const E=w(Nwt());f.commandPaletteModule=E.default;const C=w(Fwt());f.contextMenuModule=C.default;const T=w(Bwt());f.decorationModule=T.default;const M=w(PUt());f.edgeIntersectionModule=M.default;const _=w(MUt());f.edgeJunctionModule=_.default;const I=w(Rve());f.edgeLayoutModule=I.default;const O=w($wt());f.expandModule=O.default;const j=w(Kwt());f.exportModule=j.default;const k=w(qwt());f.fadeModule=k.default;const x=w(Hwt());f.hoverModule=x.default;const R=w(zwt());f.moveModule=R.default;const H=w(Vwt());f.openModule=H.default;const F=w(Gwt());f.routingModule=F.default;const $=w(Uwt());f.selectModule=$.default;const W=w(Wwt());f.undoRedoModule=W.default;const re=w(Ywt());f.updateModule=re.default;const ae=w(Xwt());f.viewportModule=ae.default;const ce=w(Jwt());f.zorderModule=ce.default,b(MA(),f),b(IUt(),f),b(TUt(),f),b(AUt(),f),b(OUt(),f),b(Cy(),f),b(Zwt(),f),b(gwt(),f),b(mJ(),f),b(tmt(),f),b(kUt(),f),b(RUt(),f),b(CA(),f),b(xUt(),f);const J=w(Qwt());f.modelSourceModule=J.default,b(My(),f),b(awt(),f),b(LUt(),f),b(PS(),f),b(EA(),f),b(Bye(),f),b(q3(),f)})(d3)),d3}var de=NUt(),FUt=Object.getOwnPropertyDescriptor,BUt=(f,h,b,w)=>{for(var m=w>1?void 0:w?FUt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let RM=class extends de.AbstractUIExtension{constructor(f,h){super(),this.chevronPosition=f,this.chevronOrientation=h,this.mainCheckbox=document.createElement("input")}mainCheckbox;initializeContents(f){f.classList.add("ui-float"),this.mainCheckbox.type="checkbox";const h=this.id()+"-checkbox";this.mainCheckbox.id=h,this.mainCheckbox.classList.add("accordion-state"),this.mainCheckbox.hidden=!0;const b=document.createElement("label");b.htmlFor=h;const w=document.createElement("div");w.classList.add(`chevron-${this.chevronPosition}`,"accordion-button"),this.chevronOrientation==="up"&&w.classList.add("flip-chevron"),this.initializeHeaderContent(w),b.appendChild(w);const m=document.createElement("div");m.classList.add("accordion-content");const P=document.createElement("div");this.initializeHidableContent(P),m.appendChild(P),f.appendChild(this.mainCheckbox),f.appendChild(b),f.appendChild(m)}toggleStatus(){this.mainCheckbox.checked=!this.mainCheckbox.checked}};RM=BUt([vr()],RM);const $Ut="0c4087a2ade4b238222af521037e3d6e69d79513",M0t={hash:$Ut};var KUt=Object.defineProperty,qUt=Object.getOwnPropertyDescriptor,HUt=(f,h,b)=>h in f?KUt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,zUt=(f,h,b,w)=>{for(var m=w>1?void 0:w?qUt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},VUt=(f,h,b)=>HUt(f,h+"",b);let pS=class extends RM{constructor(){super("right","up")}id(){return pS.ID}containerClass(){return pS.ID}initializeHidableContent(f){f.innerHTML=` -

    CTRL+Space: Command Palette

    -

    CTRL+Z: Undo

    -

    CTRL+Shift+Z: Redo

    -

    Del: Delete selected elements

    -

    T: Toggle Label Type Edit UI

    -

    CTRL+O: Load diagram from json

    -

    CTRL+Shift+O: Open default diagram

    -

    CTRL+S: Save diagram to json

    -

    CTRL+L: Automatically layout diagram

    -

    CTRL+Shift+F: Fit diagram to screen

    -

    CTRL+C: Copy selected elements

    -

    CTRL+V: Paste previously copied elements

    -

    Esc: Disable current creation tool

    -

    Toggle Creation Tool: Refer to key in the tool palette

    - `,f.appendChild(this.buildCommitHash())}initializeHeaderContent(f){f.classList.add("help-accordion-icon"),f.innerText="Keyboard Shortcuts | Help"}buildCommitHash(){const f=document.createElement("div");f.id="hashHolder",f.innerHTML="Commit:";const h=document.createElement("a");return h.innerHTML=M0t.hash.substring(0,6),h.href=`https://github.com/DataFlowAnalysis/OnlineEditor/tree/${M0t.hash}`,h.id="hash",h.target="_blank",f.appendChild(h),f}};VUt(pS,"ID","help-ui");pS=zUt([vr()],pS);const Db={CreationTool:Symbol("CreationTool"),DefaultUIElement:Symbol("DefaultUIElement")},GUt=new xf(f=>{f(pS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(pS),f(Db.DefaultUIElement).toService(pS)}),OL=Symbol("StartUpAgent");var UUt=Object.getOwnPropertyDescriptor,WUt=(f,h,b,w)=>{for(var m=w>1?void 0:w?UUt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},C0t=(f,h)=>(b,w)=>h(b,w,f);let xve=class{constructor(f,h){this.actionDispatcher=f,this.defaultUiElements=h}run(){const f=this.defaultUiElements.map(h=>de.SetUIExtensionVisibilityAction.create({extensionId:h.id(),visible:!0}));this.actionDispatcher.dispatchAll(f)}};xve=WUt([vr(),C0t(0,Et(de.TYPES.IActionDispatcher)),C0t(1,cJ(Db.DefaultUIElement))],xve);var mg=Sp();const YUt=75;var xL;(f=>{function h(b,w=!0){const m=b.children?.filter(P=>mg.getBasicType(P)==="node").map(P=>P.id)??[];return mg.FitToScreenAction.create(m,{padding:YUt,animate:w})}f.create=h})(xL||(xL={}));function SX(f){throw new Error('Could not dynamically require "'+f+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var _ve={exports:{}},I0t;function XUt(){return I0t||(I0t=1,(function(f,h){(function(b){f.exports=b()})(function(){return(function(){function b(w,m,P){function g(T,M){if(!m[T]){if(!w[T]){var _=typeof SX=="function"&&SX;if(!M&&_)return _(T,!0);if(E)return E(T,!0);var I=new Error("Cannot find module '"+T+"'");throw I.code="MODULE_NOT_FOUND",I}var O=m[T]={exports:{}};w[T][0].call(O.exports,function(j){var k=w[T][1][j];return g(k||j)},O,O.exports,b,w,m,P)}return m[T].exports}for(var E=typeof SX=="function"&&SX,C=0;C0&&arguments[0]!==void 0?arguments[0]:{},I=_.defaultLayoutOptions,O=I===void 0?{}:I,j=_.algorithms,k=j===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:j,x=_.workerFactory,R=_.workerUrl;if(g(this,T),this.defaultLayoutOptions=O,this.initialized=!1,typeof R>"u"&&typeof x>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var H=x;typeof R<"u"&&typeof x>"u"&&(H=function(W){return new Worker(W)});var F=H(R);if(typeof F.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new C(F),this.worker.postMessage({cmd:"register",algorithms:k}).then(function($){return M.initialized=!0}).catch(console.err)}return P(T,[{key:"layout",value:function(_){var I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},O=I.layoutOptions,j=O===void 0?this.defaultLayoutOptions:O,k=I.logging,x=k===void 0?!1:k,R=I.measureExecutionTime,H=R===void 0?!1:R;return _?this.worker.postMessage({cmd:"layout",graph:_,layoutOptions:j,options:{logging:x,measureExecutionTime:H}}):Promise.reject(new Error("Missing mandatory parameter 'graph'."))}},{key:"knownLayoutAlgorithms",value:function(){return this.worker.postMessage({cmd:"algorithms"})}},{key:"knownLayoutOptions",value:function(){return this.worker.postMessage({cmd:"options"})}},{key:"knownLayoutCategories",value:function(){return this.worker.postMessage({cmd:"categories"})}},{key:"terminateWorker",value:function(){this.worker.terminate()}}]),T})();m.default=E;var C=(function(){function T(M){var _=this;if(g(this,T),M===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=M,this.worker.onmessage=function(I){setTimeout(function(){_.receive(_,I)},0)}}return P(T,[{key:"postMessage",value:function(_){var I=this.id||0;this.id=I+1,_.id=I;var O=this;return new Promise(function(j,k){O.resolvers[I]=function(x,R){x?(O.convertGwtStyleError(x),k(x)):j(R)},O.worker.postMessage(_)})}},{key:"receive",value:function(_,I){var O=I.data,j=_.resolvers[O.id];j&&(delete _.resolvers[O.id],O.error?j(O.error):j(null,O.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(_){if(_){var I=_.__java$exception;I&&(I.cause&&I.cause.backingJsObject&&(_.cause=I.cause.backingJsObject,this.convertGwtStyleError(_.cause)),delete _.__java$exception)}}}]),T})()},{}],2:[function(b,w,m){(function(P){(function(){var g;typeof window<"u"?g=window:typeof P<"u"?g=P:typeof self<"u"&&(g=self);var E;function C(){}function T(){}function M(){}function _(){}function I(){}function O(){}function j(){}function k(){}function x(){}function R(){}function H(){}function F(){}function $(){}function W(){}function re(){}function ae(){}function ce(){}function J(){}function te(){}function fe(){}function ve(){}function me(){}function ke(){}function tt(){}function De(){}function ct(){}function Z(){}function Nt(){}function ii(){}function kr(){}function jo(){}function Gn(){}function pc(){}function ls(){}function Lr(){}function gt(){}function Xn(){}function jn(){}function ri(){}function Er(){}function Ml(){}function yg(){}function Si(){}function _o(){}function Au(){}function cf(){}function Rs(){}function xs(){}function xb(){}function Zh(){}function Ia(){}function mm(){}function IA(){}function vh(){}function Mp(){}function ed(){}function lN(){}function MJ(){}function NM(){}function FM(){}function ft(){}function It(){}function zt(){}function zn(){}function or(){}function uu(){}function Qu(){}function fo(){}function ni(){}function li(){}function bi(){}function Pi(){}function Eo(){}function fs(){}function au(){}function e1(){}function TA(){}function fN(){}function hN(){}function w2e(){}function m2e(){}function v2e(){}function y2e(){}function _2e(){}function E2e(){}function S2e(){}function P2e(){}function M2e(){}function C2e(){}function I2e(){}function T2e(){}function j2e(){}function CJ(){}function A2e(){}function O2e(){}function D2e(){}function k2e(){}function dN(){}function gN(){}function jA(){}function R2e(){}function x2e(){}function bN(){}function L2e(){}function N2e(){}function F2e(){}function AA(){}function B2e(){}function $2e(){}function K2e(){}function q2e(){}function H2e(){}function z2e(){}function V2e(){}function G2e(){}function U2e(){}function IJ(){}function W2e(){}function Y2e(){}function X2e(){}function J2e(){}function Q2e(){}function TJ(){}function Z2e(){}function e3e(){}function t3e(){}function n3e(){}function i3e(){}function r3e(){}function o3e(){}function c3e(){}function s3e(){}function u3e(){}function a3e(){}function l3e(){}function f3e(){}function h3e(){}function pN(){}function d3e(){}function g3e(){}function b3e(){}function p3e(){}function w3e(){}function jJ(){}function m3e(){}function v3e(){}function y3e(){}function _3e(){}function E3e(){}function S3e(){}function P3e(){}function M3e(){}function C3e(){}function I3e(){}function T3e(){}function j3e(){}function A3e(){}function O3e(){}function D3e(){}function k3e(){}function R3e(){}function x3e(){}function L3e(){}function N3e(){}function F3e(){}function B3e(){}function $3e(){}function K3e(){}function q3e(){}function H3e(){}function z3e(){}function V3e(){}function G3e(){}function U3e(){}function W3e(){}function Y3e(){}function X3e(){}function J3e(){}function Q3e(){}function Z3e(){}function e_e(){}function t_e(){}function n_e(){}function i_e(){}function r_e(){}function o_e(){}function c_e(){}function s_e(){}function u_e(){}function a_e(){}function l_e(){}function f_e(){}function h_e(){}function d_e(){}function g_e(){}function b_e(){}function p_e(){}function w_e(){}function m_e(){}function v_e(){}function y_e(){}function __e(){}function E_e(){}function S_e(){}function P_e(){}function M_e(){}function C_e(){}function I_e(){}function T_e(){}function j_e(){}function A_e(){}function O_e(){}function D_e(){}function k_e(){}function R_e(){}function x_e(){}function L_e(){}function N_e(){}function F_e(){}function B_e(){}function $_e(){}function K_e(){}function q_e(){}function H_e(){}function z_e(){}function V_e(){}function G_e(){}function U_e(){}function W_e(){}function Y_e(){}function X_e(){}function J_e(){}function Q_e(){}function Z_e(){}function eEe(){}function tEe(){}function nEe(){}function iEe(){}function rEe(){}function oEe(){}function cEe(){}function sEe(){}function uEe(){}function aEe(){}function AJ(){}function lEe(){}function fEe(){}function hEe(){}function dEe(){}function gEe(){}function bEe(){}function pEe(){}function wEe(){}function mEe(){}function vEe(){}function yEe(){}function _Ee(){}function EEe(){}function SEe(){}function PEe(){}function MEe(){}function CEe(){}function IEe(){}function TEe(){}function jEe(){}function AEe(){}function OEe(){}function DEe(){}function kEe(){}function REe(){}function xEe(){}function LEe(){}function NEe(){}function FEe(){}function BEe(){}function $Ee(){}function KEe(){}function qEe(){}function HEe(){}function zEe(){}function VEe(){}function GEe(){}function UEe(){}function WEe(){}function YEe(){}function XEe(){}function JEe(){}function QEe(){}function ZEe(){}function e4e(){}function t4e(){}function n4e(){}function i4e(){}function r4e(){}function o4e(){}function c4e(){}function s4e(){}function u4e(){}function a4e(){}function l4e(){}function f4e(){}function h4e(){}function d4e(){}function g4e(){}function b4e(){}function p4e(){}function w4e(){}function m4e(){}function v4e(){}function y4e(){}function _4e(){}function E4e(){}function OJ(){}function S4e(){}function P4e(){}function M4e(){}function C4e(){}function I4e(){}function T4e(){}function j4e(){}function A4e(){}function O4e(){}function D4e(){}function k4e(){}function R4e(){}function x4e(){}function L4e(){}function N4e(){}function F4e(){}function B4e(){}function $4e(){}function K4e(){}function q4e(){}function DJ(){}function H4e(){}function z4e(){}function V4e(){}function G4e(){}function U4e(){}function W4e(){}function kJ(){}function RJ(){}function Y4e(){}function xJ(){}function LJ(){}function X4e(){}function J4e(){}function Q4e(){}function Z4e(){}function eSe(){}function tSe(){}function nSe(){}function iSe(){}function rSe(){}function NJ(){}function oSe(){}function cSe(){}function sSe(){}function uSe(){}function aSe(){}function lSe(){}function fSe(){}function hSe(){}function dSe(){}function gSe(){}function bSe(){}function pSe(){}function wSe(){}function mSe(){}function vSe(){}function ySe(){}function _Se(){}function ESe(){}function SSe(){}function PSe(){}function MSe(){}function CSe(){}function ISe(){}function TSe(){}function jSe(){}function ASe(){}function OSe(){}function DSe(){}function kSe(){}function RSe(){}function xSe(){}function LSe(){}function NSe(){}function FSe(){}function BSe(){}function $Se(){}function KSe(){}function qSe(){}function HSe(){}function zSe(){}function VSe(){}function GSe(){}function USe(){}function WSe(){}function YSe(){}function XSe(){}function JSe(){}function QSe(){}function ZSe(){}function e5e(){}function t5e(){}function n5e(){}function i5e(){}function r5e(){}function o5e(){}function c5e(){}function s5e(){}function u5e(){}function a5e(){}function l5e(){}function f5e(){}function h5e(){}function d5e(){}function g5e(){}function b5e(){}function p5e(){}function w5e(){}function m5e(){}function wN(){}function mN(){}function vN(){}function v5e(){}function y5e(){}function _5e(){}function E5e(){}function S5e(){}function FJ(){}function P5e(){}function M5e(){}function Smt(){}function C5e(){}function I5e(){}function T5e(){}function j5e(){}function A5e(){}function O5e(){}function D5e(){}function _g(){}function k5e(){}function Ay(){}function BJ(){}function R5e(){}function x5e(){}function L5e(){}function N5e(){}function F5e(){}function B5e(){}function $5e(){}function K5e(){}function q5e(){}function H5e(){}function z5e(){}function V5e(){}function G5e(){}function U5e(){}function W5e(){}function Y5e(){}function X5e(){}function J5e(){}function Q5e(){}function Z5e(){}function e6e(){}function He(){}function t6e(){}function n6e(){}function i6e(){}function r6e(){}function o6e(){}function c6e(){}function s6e(){}function u6e(){}function a6e(){}function l6e(){}function yN(){}function f6e(){}function h6e(){}function d6e(){}function g6e(){}function b6e(){}function $J(){}function OA(){}function DA(){}function p6e(){}function KJ(){}function kA(){}function w6e(){}function m6e(){}function v6e(){}function y6e(){}function _6e(){}function E6e(){}function RA(){}function S6e(){}function P6e(){}function M6e(){}function xA(){}function C6e(){}function qJ(){}function I6e(){}function _N(){}function HJ(){}function T6e(){}function j6e(){}function A6e(){}function O6e(){}function Pmt(){}function D6e(){}function k6e(){}function R6e(){}function x6e(){}function L6e(){}function N6e(){}function F6e(){}function B6e(){}function $6e(){}function K6e(){}function G3(){}function EN(){}function q6e(){}function H6e(){}function z6e(){}function V6e(){}function G6e(){}function U6e(){}function W6e(){}function Y6e(){}function X6e(){}function J6e(){}function Q6e(){}function Z6e(){}function ePe(){}function tPe(){}function nPe(){}function iPe(){}function rPe(){}function oPe(){}function cPe(){}function sPe(){}function uPe(){}function aPe(){}function lPe(){}function fPe(){}function hPe(){}function dPe(){}function gPe(){}function bPe(){}function pPe(){}function wPe(){}function mPe(){}function vPe(){}function yPe(){}function _Pe(){}function EPe(){}function SPe(){}function PPe(){}function MPe(){}function CPe(){}function IPe(){}function TPe(){}function jPe(){}function APe(){}function OPe(){}function DPe(){}function kPe(){}function RPe(){}function xPe(){}function LPe(){}function NPe(){}function FPe(){}function BPe(){}function $Pe(){}function KPe(){}function qPe(){}function HPe(){}function zPe(){}function VPe(){}function GPe(){}function UPe(){}function WPe(){}function YPe(){}function XPe(){}function JPe(){}function QPe(){}function ZPe(){}function eMe(){}function tMe(){}function nMe(){}function iMe(){}function rMe(){}function oMe(){}function cMe(){}function sMe(){}function uMe(){}function aMe(){}function lMe(){}function fMe(){}function hMe(){}function dMe(){}function gMe(){}function bMe(){}function pMe(){}function wMe(){}function mMe(){}function vMe(){}function yMe(){}function _Me(){}function EMe(){}function SMe(){}function PMe(){}function MMe(){}function CMe(){}function IMe(){}function TMe(){}function jMe(){}function AMe(){}function OMe(){}function DMe(){}function kMe(){}function RMe(){}function zJ(){}function xMe(){}function LMe(){}function SN(){DS()}function NMe(){bK()}function FMe(){o6()}function BMe(){A7()}function $Me(){Hce()}function KMe(){dl()}function qMe(){ece()}function HMe(){NI()}function zMe(){nC()}function VMe(){tC()}function GMe(){TC()}function UMe(){Y8e()}function WMe(){h2()}function YMe(){f9()}function XMe(){cBe()}function JMe(){vKe()}function QMe(){FBe()}function ZMe(){tNe()}function eCe(){iE()}function tCe(){I1()}function nCe(){yKe()}function iCe(){WNe()}function rCe(){Lue()}function oCe(){sVe()}function cCe(){nNe()}function sCe(){Oe()}function uCe(){eNe()}function aCe(){_Ke()}function lCe(){Pqe()}function fCe(){rNe()}function hCe(){HBe()}function dCe(){X8e()}function gCe(){Pse()}function bCe(){ow()}function pCe(){WKe()}function wCe(){KI()}function mCe(){zq()}function vCe(){JK()}function yCe(){A0()}function _Ce(){yre()}function ECe(){iNe()}function SCe(){bYe()}function PCe(){_se()}function MCe(){Lq()}function CCe(){bO()}function ICe(){N7()}function VJ(){kn()}function TCe(){QO()}function jCe(){Toe()}function GJ(){nD()}function il(){zke()}function UJ(){Z$()}function ACe(){uue()}function WJ(e){yt(e)}function OCe(e){this.a=e}function LA(e){this.a=e}function DCe(e){this.a=e}function kCe(e){this.a=e}function RCe(e){this.a=e}function xCe(e){this.a=e}function LCe(e){this.a=e}function NCe(e){this.a=e}function YJ(e){this.a=e}function XJ(e){this.a=e}function FCe(e){this.a=e}function PN(e){this.a=e}function BCe(e){this.a=e}function MN(e){this.a=e}function $Ce(e){this.a=e}function CN(e){this.a=e}function KCe(e){this.a=e}function IN(e){this.a=e}function qCe(e){this.a=e}function HCe(e){this.a=e}function zCe(e){this.a=e}function JJ(e){this.b=e}function VCe(e){this.c=e}function GCe(e){this.a=e}function UCe(e){this.a=e}function WCe(e){this.a=e}function YCe(e){this.a=e}function XCe(e){this.a=e}function JCe(e){this.a=e}function QCe(e){this.a=e}function ZCe(e){this.a=e}function eIe(e){this.a=e}function tIe(e){this.a=e}function nIe(e){this.a=e}function iIe(e){this.a=e}function rIe(e){this.a=e}function QJ(e){this.a=e}function ZJ(e){this.a=e}function NA(e){this.a=e}function BM(e){this.a=e}function Eg(){this.a=[]}function oIe(e,t){e.a=t}function Mmt(e,t){e.a=t}function Cmt(e,t){e.b=t}function Imt(e,t){e.b=t}function Tmt(e,t){e.b=t}function eQ(e,t){e.j=t}function jmt(e,t){e.g=t}function Amt(e,t){e.i=t}function Omt(e,t){e.c=t}function Dmt(e,t){e.d=t}function kmt(e,t){e.d=t}function Rmt(e,t){e.c=t}function Sg(e,t){e.k=t}function xmt(e,t){e.c=t}function tQ(e,t){e.c=t}function nQ(e,t){e.a=t}function Lmt(e,t){e.a=t}function Nmt(e,t){e.f=t}function Fmt(e,t){e.a=t}function Bmt(e,t){e.b=t}function TN(e,t){e.d=t}function FA(e,t){e.i=t}function iQ(e,t){e.o=t}function $mt(e,t){e.r=t}function Kmt(e,t){e.a=t}function qmt(e,t){e.b=t}function cIe(e,t){e.e=t}function Hmt(e,t){e.f=t}function rQ(e,t){e.g=t}function zmt(e,t){e.e=t}function Vmt(e,t){e.f=t}function Gmt(e,t){e.f=t}function Umt(e,t){e.n=t}function Wmt(e,t){e.a=t}function Ymt(e,t){e.a=t}function Xmt(e,t){e.c=t}function Jmt(e,t){e.c=t}function Qmt(e,t){e.d=t}function Zmt(e,t){e.e=t}function evt(e,t){e.g=t}function tvt(e,t){e.a=t}function nvt(e,t){e.c=t}function ivt(e,t){e.d=t}function rvt(e,t){e.e=t}function ovt(e,t){e.f=t}function cvt(e,t){e.j=t}function svt(e,t){e.a=t}function uvt(e,t){e.b=t}function avt(e,t){e.a=t}function sIe(e){e.b=e.a}function uIe(e){e.c=e.d.d}function CS(e){this.d=e}function Pg(e){this.a=e}function U3(e){this.a=e}function oQ(e){this.a=e}function yh(e){this.a=e}function $M(e){this.a=e}function aIe(e){this.a=e}function cQ(e){this.a=e}function KM(e){this.a=e}function sQ(e){this.a=e}function uQ(e){this.a=e}function aQ(e){this.a=e}function Cp(e){this.a=e}function qM(e){this.a=e}function HM(e){this.a=e}function lQ(e){this.b=e}function W3(e){this.b=e}function Y3(e){this.b=e}function jN(e){this.a=e}function lIe(e){this.a=e}function fQ(e){this.a=e}function AN(e){this.c=e}function q(e){this.c=e}function fIe(e){this.c=e}function hQ(e){this.a=e}function dQ(e){this.a=e}function gQ(e){this.a=e}function bQ(e){this.a=e}function Un(e){this.a=e}function hIe(e){this.a=e}function pQ(e){this.a=e}function wQ(e){this.a=e}function dIe(e){this.a=e}function gIe(e){this.a=e}function IS(e){this.a=e}function bIe(e){this.a=e}function pIe(e){this.a=e}function wIe(e){this.a=e}function mIe(e){this.a=e}function vIe(e){this.a=e}function yIe(e){this.a=e}function _Ie(e){this.a=e}function EIe(e){this.a=e}function SIe(e){this.a=e}function PIe(e){this.a=e}function MIe(e){this.a=e}function CIe(e){this.a=e}function IIe(e){this.a=e}function TIe(e){this.a=e}function jIe(e){this.a=e}function AIe(e){this.a=e}function OIe(e){this.a=e}function zM(e){this.a=e}function DIe(e){this.a=e}function kIe(e){this.a=e}function BA(e){this.a=e}function RIe(e){this.a=e}function xIe(e){this.a=e}function X3(e){this.a=e}function mQ(e){this.a=e}function LIe(e){this.a=e}function NIe(e){this.a=e}function FIe(e){this.a=e}function BIe(e){this.a=e}function $Ie(e){this.a=e}function vQ(e){this.a=e}function yQ(e){this.a=e}function _Q(e){this.a=e}function $A(e){this.a=e}function KA(e){this.e=e}function J3(e){this.a=e}function KIe(e){this.a=e}function Oy(e){this.a=e}function EQ(e){this.a=e}function qIe(e){this.a=e}function HIe(e){this.a=e}function zIe(e){this.a=e}function VIe(e){this.a=e}function GIe(e){this.a=e}function UIe(e){this.a=e}function WIe(e){this.a=e}function YIe(e){this.a=e}function XIe(e){this.a=e}function JIe(e){this.a=e}function QIe(e){this.a=e}function SQ(e){this.a=e}function ZIe(e){this.a=e}function eTe(e){this.a=e}function tTe(e){this.a=e}function nTe(e){this.a=e}function iTe(e){this.a=e}function rTe(e){this.a=e}function oTe(e){this.a=e}function cTe(e){this.a=e}function sTe(e){this.a=e}function uTe(e){this.a=e}function aTe(e){this.a=e}function lTe(e){this.a=e}function fTe(e){this.a=e}function hTe(e){this.a=e}function dTe(e){this.a=e}function gTe(e){this.a=e}function bTe(e){this.a=e}function pTe(e){this.a=e}function wTe(e){this.a=e}function mTe(e){this.a=e}function vTe(e){this.a=e}function yTe(e){this.a=e}function _Te(e){this.a=e}function ETe(e){this.a=e}function STe(e){this.a=e}function PTe(e){this.a=e}function MTe(e){this.a=e}function CTe(e){this.a=e}function ITe(e){this.a=e}function TTe(e){this.a=e}function jTe(e){this.a=e}function ATe(e){this.a=e}function OTe(e){this.a=e}function DTe(e){this.a=e}function kTe(e){this.a=e}function RTe(e){this.a=e}function xTe(e){this.a=e}function LTe(e){this.c=e}function NTe(e){this.b=e}function FTe(e){this.a=e}function BTe(e){this.a=e}function $Te(e){this.a=e}function KTe(e){this.a=e}function qTe(e){this.a=e}function HTe(e){this.a=e}function zTe(e){this.a=e}function VTe(e){this.a=e}function GTe(e){this.a=e}function UTe(e){this.a=e}function WTe(e){this.a=e}function YTe(e){this.a=e}function XTe(e){this.a=e}function JTe(e){this.a=e}function QTe(e){this.a=e}function ZTe(e){this.a=e}function eje(e){this.a=e}function tje(e){this.a=e}function nje(e){this.a=e}function ije(e){this.a=e}function rje(e){this.a=e}function oje(e){this.a=e}function cje(e){this.a=e}function sje(e){this.a=e}function t1(e){this.a=e}function Dy(e){this.a=e}function uje(e){this.a=e}function aje(e){this.a=e}function lje(e){this.a=e}function fje(e){this.a=e}function hje(e){this.a=e}function dje(e){this.a=e}function gje(e){this.a=e}function bje(e){this.a=e}function pje(e){this.a=e}function wje(e){this.a=e}function mje(e){this.a=e}function vje(e){this.a=e}function yje(e){this.a=e}function _je(e){this.a=e}function Eje(e){this.a=e}function Sje(e){this.a=e}function qA(e){this.a=e}function Pje(e){this.a=e}function Mje(e){this.a=e}function Cje(e){this.a=e}function Ije(e){this.a=e}function Tje(e){this.a=e}function jje(e){this.a=e}function Aje(e){this.a=e}function Oje(e){this.a=e}function Dje(e){this.a=e}function kje(e){this.a=e}function Rje(e){this.a=e}function xje(e){this.a=e}function Lje(e){this.a=e}function Nje(e){this.a=e}function Fje(e){this.a=e}function Bje(e){this.a=e}function $je(e){this.a=e}function Kje(e){this.a=e}function qje(e){this.a=e}function Hje(e){this.a=e}function zje(e){this.a=e}function Vje(e){this.a=e}function Gje(e){this.a=e}function Uje(e){this.a=e}function Wje(e){this.a=e}function Yje(e){this.a=e}function Xje(e){this.a=e}function Jje(e){this.a=e}function PQ(e){this.a=e}function hi(e){this.b=e}function Qje(e){this.f=e}function MQ(e){this.a=e}function Zje(e){this.a=e}function eAe(e){this.a=e}function tAe(e){this.a=e}function nAe(e){this.a=e}function iAe(e){this.a=e}function rAe(e){this.a=e}function oAe(e){this.a=e}function cAe(e){this.a=e}function VM(e){this.a=e}function sAe(e){this.a=e}function uAe(e){this.b=e}function CQ(e){this.c=e}function HA(e){this.e=e}function aAe(e){this.a=e}function zA(e){this.a=e}function VA(e){this.a=e}function ON(e){this.a=e}function lAe(e){this.a=e}function fAe(e){this.d=e}function IQ(e){this.a=e}function TQ(e){this.a=e}function Lb(e){this.e=e}function lvt(){this.a=0}function vm(){z7e(this)}function Se(){NF(this)}function en(){Is(this)}function DN(){Wxe(this)}function hAe(){}function Nb(){this.c=ume}function fvt(e,t){t.Wb(e)}function dAe(e,t){e.b+=t}function gAe(e){e.b=new YN}function V(e){return e.e}function hvt(e){return e.a}function dvt(e){return e.a}function gvt(e){return e.a}function bvt(e){return e.a}function pvt(e){return e.a}function wvt(){return null}function mvt(){return null}function vvt(){gZ(),AHt()}function yvt(e){e.b.tf(e.e)}function TS(e,t){e.b=t-e.b}function jS(e,t){e.a=t-e.a}function bAe(e,t){t.ad(e.a)}function _vt(e,t){Ji(t,e)}function Evt(e,t,n){e.Od(n,t)}function GM(e,t){e.e=t,t.b=e}function jQ(e){hf(),this.a=e}function pAe(e){hf(),this.a=e}function wAe(e){hf(),this.a=e}function AQ(e){Hp(),this.a=e}function mAe(e){T_(),lG.be(e)}function Mg(){IDe.call(this)}function OQ(){IDe.call(this)}function DQ(){Mg.call(this)}function kN(){Mg.call(this)}function vAe(){Mg.call(this)}function UM(){Mg.call(this)}function hs(){Mg.call(this)}function AS(){Mg.call(this)}function sn(){Mg.call(this)}function Ou(){Mg.call(this)}function yAe(){Mg.call(this)}function tc(){Mg.call(this)}function _Ae(){Mg.call(this)}function EAe(){this.a=this}function GA(){this.Bb|=256}function SAe(){this.b=new M7e}function kQ(){kQ=Z,new en}function RQ(){DQ.call(this)}function PAe(e,t){e.length=t}function UA(e,t){Ee(e.a,t)}function Svt(e,t){Vce(e.c,t)}function Pvt(e,t){Yi(e.b,t)}function Mvt(e,t){P7(e.a,t)}function Cvt(e,t){PK(e.a,t)}function Q3(e,t){Bn(e.e,t)}function ky(e){$7(e.c,e.b)}function Ivt(e,t){e.kc().Nb(t)}function xQ(e){this.a=MAt(e)}function er(){this.a=new en}function MAe(){this.a=new en}function WA(){this.a=new Se}function RN(){this.a=new Se}function LQ(){this.a=new Se}function Zu(){this.a=new bi}function Cg(){this.a=new nBe}function NQ(){this.a=new IJ}function FQ(){this.a=new K8e}function CAe(){this.a=new jNe}function BQ(){this.a=new VLe}function $Q(){this.a=new bke}function IAe(){this.a=new Se}function KQ(){this.a=new Se}function TAe(){this.a=new Se}function jAe(){this.a=new Se}function AAe(){this.d=new Se}function OAe(){this.a=new er}function DAe(){this.a=new en}function kAe(){this.b=new en}function RAe(){this.b=new Se}function qQ(){this.e=new Se}function xAe(){this.d=new Se}function LAe(){this.a=new tCe}function NAe(){Se.call(this)}function HQ(){WA.call(this)}function FAe(){i8.call(this)}function BAe(){KQ.call(this)}function xN(){OS.call(this)}function OS(){hAe.call(this)}function Ry(){hAe.call(this)}function zQ(){Ry.call(this)}function $Ae(){ELe.call(this)}function KAe(){ELe.call(this)}function qAe(){JQ.call(this)}function HAe(){JQ.call(this)}function zAe(){JQ.call(this)}function VAe(){QQ.call(this)}function ds(){wi.call(this)}function VQ(){b6e.call(this)}function GQ(){b6e.call(this)}function GAe(){u9e.call(this)}function UAe(){u9e.call(this)}function WAe(){en.call(this)}function YAe(){en.call(this)}function XAe(){en.call(this)}function JAe(){er.call(this)}function LN(){pKe.call(this)}function QAe(){GA.call(this)}function NN(){Eee.call(this)}function FN(){Eee.call(this)}function UQ(){en.call(this)}function BN(){en.call(this)}function ZAe(){en.call(this)}function WQ(){xA.call(this)}function e9e(){xA.call(this)}function t9e(){WQ.call(this)}function n9e(){zJ.call(this)}function i9e(e){K$e.call(this,e)}function r9e(e){K$e.call(this,e)}function YQ(e){YJ.call(this,e)}function XQ(e){O8e.call(this,e)}function Tvt(e){XQ.call(this,e)}function jvt(e){O8e.call(this,e)}function Z3(){this.a=new wi}function JQ(){this.a=new er}function QQ(){this.a=new en}function o9e(){this.a=new Se}function c9e(){this.j=new Se}function ZQ(){this.a=new p5e}function s9e(){this.a=new n8e}function u9e(){this.a=new M6e}function $N(){$N=Z,rG=new C9e}function KN(){KN=Z,iG=new M9e}function DS(){DS=Z,nG=new T}function YA(){YA=Z,sG=new MDe}function Avt(e){XQ.call(this,e)}function Ovt(e){XQ.call(this,e)}function a9e(e){w$.call(this,e)}function l9e(e){w$.call(this,e)}function f9e(e){Nke.call(this,e)}function qN(e){JDt.call(this,e)}function Fb(e){jp.call(this,e)}function kS(e){s9.call(this,e)}function eZ(e){s9.call(this,e)}function h9e(e){s9.call(this,e)}function No(e){JRe.call(this,e)}function d9e(e){No.call(this,e)}function xy(){BM.call(this,{})}function XA(e){d_(),this.a=e}function RS(e){e.b=null,e.c=0}function Dvt(e,t){e.e=t,gWe(e,t)}function kvt(e,t){e.a=t,Nkt(e)}function HN(e,t,n){e.a[t.g]=n}function Rvt(e,t,n){ZOt(n,e,t)}function xvt(e,t){c_t(t.i,e.n)}function g9e(e,t){sjt(e).td(t)}function Lvt(e,t){return e*e/t}function b9e(e,t){return e.g-t.g}function Nvt(e){return new NA(e)}function Fvt(e){return new qp(e)}function JA(e){No.call(this,e)}function ho(e){No.call(this,e)}function p9e(e){No.call(this,e)}function zN(e){JRe.call(this,e)}function VN(e){mre(),this.a=e}function w9e(e){Hke(),this.a=e}function Ip(e){_B(),this.f=e}function GN(e){_B(),this.f=e}function e_(e){No.call(this,e)}function St(e){No.call(this,e)}function Ao(e){No.call(this,e)}function m9e(e){No.call(this,e)}function Ly(e){No.call(this,e)}function Be(e){return yt(e),e}function ge(e){return yt(e),e}function WM(e){return yt(e),e}function tZ(e){return yt(e),e}function Bvt(e){return yt(e),e}function xS(e){return e.b==e.c}function Tp(e){return!!e&&e.b}function $vt(e){return!!e&&e.k}function Kvt(e){return!!e&&e.j}function Js(e){yt(e),this.a=e}function nZ(e){return Vg(e),e}function LS(e){gne(e,e.length)}function td(e){No.call(this,e)}function sf(e){No.call(this,e)}function UN(e){No.call(this,e)}function ym(e){No.call(this,e)}function NS(e){No.call(this,e)}function an(e){No.call(this,e)}function WN(e){$ee.call(this,e,0)}function YN(){Wne.call(this,12,3)}function iZ(){iZ=Z,rhe=new te}function v9e(){v9e=Z,ihe=new C}function QA(){QA=Z,cP=new $}function y9e(){y9e=Z,Jtt=new re}function _9e(){throw V(new sn)}function rZ(){throw V(new sn)}function E9e(){throw V(new sn)}function qvt(){throw V(new sn)}function Hvt(){throw V(new sn)}function zvt(){throw V(new sn)}function XN(){this.a=ln(nn(zr))}function Ny(e){hf(),this.a=nn(e)}function S9e(e,t){e.Td(t),t.Sd(e)}function Vvt(e,t){e.a.ec().Mc(t)}function Gvt(e,t,n){e.c.lf(t,n)}function oZ(e){ho.call(this,e)}function uf(e){St.call(this,e)}function nd(){$M.call(this,"")}function FS(){$M.call(this,"")}function n1(){$M.call(this,"")}function _m(){$M.call(this,"")}function cZ(e){ho.call(this,e)}function t_(e){W3.call(this,e)}function JN(e){W9.call(this,e)}function P9e(e){t_.call(this,e)}function M9e(){MN.call(this,null)}function C9e(){MN.call(this,null)}function ZA(){ZA=Z,T_()}function I9e(){I9e=Z,snt=C7t()}function T9e(e){return e.a?e.b:0}function Uvt(e){return e.a?e.b:0}function Wvt(e,t){return e.a-t.a}function Yvt(e,t){return e.a-t.a}function Xvt(e,t){return e.a-t.a}function e9(e,t){return Fie(e,t)}function G(e,t){return WLe(e,t)}function Jvt(e,t){return t in e.a}function j9e(e,t){return e.f=t,e}function Qvt(e,t){return e.b=t,e}function A9e(e,t){return e.c=t,e}function Zvt(e,t){return e.g=t,e}function sZ(e,t){return e.a=t,e}function uZ(e,t){return e.f=t,e}function eyt(e,t){return e.k=t,e}function aZ(e,t){return e.a=t,e}function tyt(e,t){return e.e=t,e}function lZ(e,t){return e.e=t,e}function nyt(e,t){return e.f=t,e}function iyt(e,t){e.b=!0,e.d=t}function ryt(e,t){e.b=new go(t)}function oyt(e,t,n){t.td(e.a[n])}function cyt(e,t,n){t.we(e.a[n])}function syt(e,t){return e.b-t.b}function uyt(e,t){return e.g-t.g}function ayt(e,t){return e.s-t.s}function lyt(e,t){return e?0:t-1}function O9e(e,t){return e?0:t-1}function fyt(e,t){return e?t-1:0}function hyt(e,t){return t.Yf(e)}function Bb(e,t){return e.b=t,e}function t9(e,t){return e.a=t,e}function $b(e,t){return e.c=t,e}function Kb(e,t){return e.d=t,e}function qb(e,t){return e.e=t,e}function fZ(e,t){return e.f=t,e}function BS(e,t){return e.a=t,e}function n_(e,t){return e.b=t,e}function i_(e,t){return e.c=t,e}function Ge(e,t){return e.c=t,e}function lt(e,t){return e.b=t,e}function Ue(e,t){return e.d=t,e}function We(e,t){return e.e=t,e}function dyt(e,t){return e.f=t,e}function Ye(e,t){return e.g=t,e}function Xe(e,t){return e.a=t,e}function Je(e,t){return e.i=t,e}function Qe(e,t){return e.j=t,e}function D9e(e,t){return e.k=t,e}function gyt(e,t){return e.j=t,e}function byt(e,t){I1(),Bo(t,e)}function pyt(e,t,n){lSt(e.a,t,n)}function k9e(e){Xxe.call(this,e)}function hZ(e){Xxe.call(this,e)}function n9(e){rB.call(this,e)}function R9e(e){kAt.call(this,e)}function i1(e){d0.call(this,e)}function x9e(e){GB.call(this,e)}function L9e(e){GB.call(this,e)}function N9e(){wee.call(this,"")}function Tr(){this.a=0,this.b=0}function F9e(){this.b=0,this.a=0}function B9e(e,t){e.b=0,Zp(e,t)}function wyt(e,t){e.c=t,e.b=!0}function $9e(e,t){return e.c._b(t)}function rl(e){return e.e&&e.e()}function QN(e){return e?e.d:null}function K9e(e,t){return dHe(e.b,t)}function myt(e){return e?e.g:null}function vyt(e){return e?e.i:null}function r1(e){return Sh(e),e.o}function Hb(){Hb=Z,oft=NOt()}function q9e(){q9e=Z,lr=Y7t()}function r_(){r_=Z,sme=BOt()}function H9e(){H9e=Z,Hft=FOt()}function dZ(){dZ=Z,cc=Rkt()}function gZ(){gZ=Z,Z1=V_()}function z9e(){throw V(new sn)}function V9e(){throw V(new sn)}function G9e(){throw V(new sn)}function U9e(){throw V(new sn)}function W9e(){throw V(new sn)}function Y9e(){throw V(new sn)}function i9(e){this.a=new Fy(e)}function bZ(e){zXe(),HHt(this,e)}function o1(e){this.a=new MB(e)}function Em(e,t){for(;e.ye(t););}function pZ(e,t){for(;e.sd(t););}function Sm(e,t){return e.a+=t,e}function ZN(e,t){return e.a+=t,e}function id(e,t){return e.a+=t,e}function zb(e,t){return e.a+=t,e}function $S(e){return b1(e),e.a}function r9(e){return e.b!=e.d.c}function X9e(e){return e.l|e.m<<22}function wZ(e,t){return e.d[t.p]}function J9e(e,t){return SNt(e,t)}function mZ(e,t,n){e.splice(t,n)}function Q9e(e){e.c?xWe(e):LWe(e)}function o9(e){this.a=0,this.b=e}function Z9e(){this.a=new JI(y0e)}function e8e(){this.b=new JI(c0e)}function t8e(){this.b=new JI(jW)}function n8e(){this.b=new JI(jW)}function i8e(){throw V(new sn)}function r8e(){throw V(new sn)}function o8e(){throw V(new sn)}function c8e(){throw V(new sn)}function s8e(){throw V(new sn)}function u8e(){throw V(new sn)}function a8e(){throw V(new sn)}function l8e(){throw V(new sn)}function f8e(){throw V(new sn)}function h8e(){throw V(new sn)}function yyt(){throw V(new tc)}function _yt(){throw V(new tc)}function YM(e){this.a=new d8e(e)}function d8e(e){DIt(this,e,D7t())}function XM(e){return!e||Rxe(e)}function JM(e){return Zl[e]!=-1}function Eyt(){Sk!=0&&(Sk=0),Pk=-1}function g8e(){tG==null&&(tG=[])}function Syt(e,t){Oq(he(e.a),t)}function Pyt(e,t){Oq(he(e.a),t)}function QM(e,t){Dm.call(this,e,t)}function o_(e,t){QM.call(this,e,t)}function vZ(e,t){this.b=e,this.c=t}function b8e(e,t){this.b=e,this.a=t}function p8e(e,t){this.a=e,this.b=t}function w8e(e,t){this.a=e,this.b=t}function m8e(e,t){this.a=e,this.b=t}function v8e(e,t){this.a=e,this.b=t}function y8e(e,t){this.a=e,this.b=t}function _8e(e,t){this.a=e,this.b=t}function E8e(e,t){this.a=e,this.b=t}function S8e(e,t){this.a=e,this.b=t}function P8e(e,t){this.b=e,this.a=t}function M8e(e,t){this.b=e,this.a=t}function C8e(e,t){this.b=e,this.a=t}function I8e(e,t){this.b=e,this.a=t}function pn(e,t){this.f=e,this.g=t}function c_(e,t){this.e=e,this.d=t}function Vb(e,t){this.g=e,this.i=t}function eF(e,t){this.a=e,this.b=t}function T8e(e,t){this.a=e,this.f=t}function j8e(e,t){this.b=e,this.c=t}function Myt(e,t){this.a=e,this.b=t}function A8e(e,t){this.a=e,this.b=t}function tF(e,t){this.a=e,this.b=t}function O8e(e){jee(e.dc()),this.c=e}function c9(e){this.b=c(nn(e),83)}function D8e(e){this.a=c(nn(e),83)}function jp(e){this.a=c(nn(e),15)}function k8e(e){this.a=c(nn(e),15)}function s9(e){this.b=c(nn(e),47)}function u9(){this.q=new g.Date}function Nf(){Nf=Z,vhe=new Nt}function s_(){s_=Z,n4=new tt}function KS(e){return e.f.c+e.g.c}function ZM(e,t){return e.b.Hc(t)}function R8e(e,t){return e.b.Ic(t)}function x8e(e,t){return e.b.Qc(t)}function L8e(e,t){return e.b.Hc(t)}function N8e(e,t){return e.c.uc(t)}function _h(e,t){return e.a._b(t)}function F8e(e,t){return $n(e.c,t)}function B8e(e,t){return tu(e.b,t)}function $8e(e,t){return e>t&&t0}function iF(e,t){return uc(e,t)<0}function US(e,t){return e.a.get(t)}function Fyt(e,t){return t.split(e)}function oOe(e,t){return tu(e.e,t)}function IZ(e){return yt(e),!1}function m9(e){bt.call(this,e,21)}function Byt(e,t){LLe.call(this,e,t)}function v9(e,t){pn.call(this,e,t)}function rF(e,t){pn.call(this,e,t)}function TZ(e){FB(),Nke.call(this,e)}function jZ(e,t){$Re(e,e.length,t)}function rC(e,t){bxe(e,e.length,t)}function $yt(e,t,n){t.ud(e.a.Ge(n))}function Kyt(e,t,n){t.we(e.a.Fe(n))}function qyt(e,t,n){t.td(e.a.Kb(n))}function Hyt(e,t,n){e.Mb(n)&&t.td(n)}function WS(e,t,n){e.splice(t,0,n)}function zyt(e,t){return bs(e.e,t)}function y9(e,t){this.d=e,this.e=t}function cOe(e,t){this.b=e,this.a=t}function sOe(e,t){this.b=e,this.a=t}function AZ(e,t){this.b=e,this.a=t}function uOe(e,t){this.a=e,this.b=t}function aOe(e,t){this.a=e,this.b=t}function lOe(e,t){this.a=e,this.b=t}function fOe(e,t){this.a=e,this.b=t}function $y(e,t){this.a=e,this.b=t}function OZ(e,t){this.b=e,this.a=t}function DZ(e,t){this.b=e,this.a=t}function _9(e,t){pn.call(this,e,t)}function E9(e,t){pn.call(this,e,t)}function kZ(e,t){pn.call(this,e,t)}function RZ(e,t){pn.call(this,e,t)}function Pm(e,t){pn.call(this,e,t)}function oF(e,t){pn.call(this,e,t)}function cF(e,t){pn.call(this,e,t)}function sF(e,t){pn.call(this,e,t)}function S9(e,t){pn.call(this,e,t)}function xZ(e,t){pn.call(this,e,t)}function uF(e,t){pn.call(this,e,t)}function oC(e,t){pn.call(this,e,t)}function P9(e,t){pn.call(this,e,t)}function aF(e,t){pn.call(this,e,t)}function YS(e,t){pn.call(this,e,t)}function LZ(e,t){pn.call(this,e,t)}function Li(e,t){pn.call(this,e,t)}function M9(e,t){pn.call(this,e,t)}function hOe(e,t){this.a=e,this.b=t}function dOe(e,t){this.a=e,this.b=t}function gOe(e,t){this.a=e,this.b=t}function bOe(e,t){this.a=e,this.b=t}function pOe(e,t){this.a=e,this.b=t}function wOe(e,t){this.a=e,this.b=t}function mOe(e,t){this.a=e,this.b=t}function vOe(e,t){this.a=e,this.b=t}function yOe(e,t){this.a=e,this.b=t}function NZ(e,t){this.b=e,this.a=t}function _Oe(e,t){this.b=e,this.a=t}function EOe(e,t){this.b=e,this.a=t}function SOe(e,t){this.b=e,this.a=t}function l_(e,t){this.c=e,this.d=t}function POe(e,t){this.e=e,this.d=t}function MOe(e,t){this.a=e,this.b=t}function COe(e,t){this.b=t,this.c=e}function C9(e,t){pn.call(this,e,t)}function cC(e,t){pn.call(this,e,t)}function lF(e,t){pn.call(this,e,t)}function XS(e,t){pn.call(this,e,t)}function FZ(e,t){pn.call(this,e,t)}function fF(e,t){pn.call(this,e,t)}function hF(e,t){pn.call(this,e,t)}function sC(e,t){pn.call(this,e,t)}function BZ(e,t){pn.call(this,e,t)}function dF(e,t){pn.call(this,e,t)}function JS(e,t){pn.call(this,e,t)}function $Z(e,t){pn.call(this,e,t)}function QS(e,t){pn.call(this,e,t)}function ZS(e,t){pn.call(this,e,t)}function Op(e,t){pn.call(this,e,t)}function gF(e,t){pn.call(this,e,t)}function bF(e,t){pn.call(this,e,t)}function KZ(e,t){pn.call(this,e,t)}function e5(e,t){pn.call(this,e,t)}function pF(e,t){pn.call(this,e,t)}function I9(e,t){pn.call(this,e,t)}function uC(e,t){pn.call(this,e,t)}function aC(e,t){pn.call(this,e,t)}function Ky(e,t){pn.call(this,e,t)}function wF(e,t){pn.call(this,e,t)}function qZ(e,t){pn.call(this,e,t)}function mF(e,t){pn.call(this,e,t)}function vF(e,t){pn.call(this,e,t)}function HZ(e,t){pn.call(this,e,t)}function yF(e,t){pn.call(this,e,t)}function _F(e,t){pn.call(this,e,t)}function EF(e,t){pn.call(this,e,t)}function SF(e,t){pn.call(this,e,t)}function zZ(e,t){pn.call(this,e,t)}function IOe(e,t){this.b=e,this.a=t}function TOe(e,t){this.a=e,this.b=t}function jOe(e,t){this.a=e,this.b=t}function AOe(e,t){this.a=e,this.b=t}function OOe(e,t){this.a=e,this.b=t}function VZ(e,t){pn.call(this,e,t)}function GZ(e,t){pn.call(this,e,t)}function DOe(e,t){this.b=e,this.d=t}function UZ(e,t){pn.call(this,e,t)}function WZ(e,t){pn.call(this,e,t)}function kOe(e,t){this.a=e,this.b=t}function ROe(e,t){this.a=e,this.b=t}function T9(e,t){pn.call(this,e,t)}function t5(e,t){pn.call(this,e,t)}function YZ(e,t){pn.call(this,e,t)}function XZ(e,t){pn.call(this,e,t)}function JZ(e,t){pn.call(this,e,t)}function PF(e,t){pn.call(this,e,t)}function QZ(e,t){pn.call(this,e,t)}function MF(e,t){pn.call(this,e,t)}function j9(e,t){pn.call(this,e,t)}function CF(e,t){pn.call(this,e,t)}function IF(e,t){pn.call(this,e,t)}function lC(e,t){pn.call(this,e,t)}function TF(e,t){pn.call(this,e,t)}function ZZ(e,t){pn.call(this,e,t)}function fC(e,t){pn.call(this,e,t)}function eee(e,t){pn.call(this,e,t)}function Vyt(e,t){return bs(e.c,t)}function Gyt(e,t){return bs(t.b,e)}function Uyt(e,t){return-e.b.Je(t)}function tee(e,t){return bs(e.g,t)}function hC(e,t){pn.call(this,e,t)}function qy(e,t){pn.call(this,e,t)}function xOe(e,t){this.a=e,this.b=t}function LOe(e,t){this.a=e,this.b=t}function $e(e,t){this.a=e,this.b=t}function n5(e,t){pn.call(this,e,t)}function i5(e,t){pn.call(this,e,t)}function dC(e,t){pn.call(this,e,t)}function jF(e,t){pn.call(this,e,t)}function A9(e,t){pn.call(this,e,t)}function r5(e,t){pn.call(this,e,t)}function AF(e,t){pn.call(this,e,t)}function O9(e,t){pn.call(this,e,t)}function Mm(e,t){pn.call(this,e,t)}function gC(e,t){pn.call(this,e,t)}function o5(e,t){pn.call(this,e,t)}function c5(e,t){pn.call(this,e,t)}function bC(e,t){pn.call(this,e,t)}function D9(e,t){pn.call(this,e,t)}function Cm(e,t){pn.call(this,e,t)}function k9(e,t){pn.call(this,e,t)}function NOe(e,t){this.a=e,this.b=t}function FOe(e,t){this.a=e,this.b=t}function BOe(e,t){this.a=e,this.b=t}function $Oe(e,t){this.a=e,this.b=t}function KOe(e,t){this.a=e,this.b=t}function qOe(e,t){this.a=e,this.b=t}function yr(e,t){this.a=e,this.b=t}function R9(e,t){pn.call(this,e,t)}function HOe(e,t){this.a=e,this.b=t}function zOe(e,t){this.a=e,this.b=t}function VOe(e,t){this.a=e,this.b=t}function GOe(e,t){this.a=e,this.b=t}function UOe(e,t){this.a=e,this.b=t}function WOe(e,t){this.a=e,this.b=t}function YOe(e,t){this.b=e,this.a=t}function XOe(e,t){this.b=e,this.a=t}function JOe(e,t){this.b=e,this.a=t}function QOe(e,t){this.b=e,this.a=t}function ZOe(e,t){this.a=e,this.b=t}function e7e(e,t){this.a=e,this.b=t}function Wyt(e,t){PLt(e.a,c(t,56))}function t7e(e,t){LCt(e.a,c(t,11))}function Yyt(e,t){return m_(),t!=e}function n7e(){return I9e(),new snt}function i7e(){i$(),this.b=new er}function r7e(){U7(),this.a=new er}function o7e(){Une(),nne.call(this)}function Hy(e,t){pn.call(this,e,t)}function c7e(e,t){this.a=e,this.b=t}function s7e(e,t){this.a=e,this.b=t}function x9(e,t){this.a=e,this.b=t}function u7e(e,t){this.a=e,this.b=t}function a7e(e,t){this.a=e,this.b=t}function l7e(e,t){this.a=e,this.b=t}function f7e(e,t){this.d=e,this.b=t}function nee(e,t){this.d=e,this.e=t}function h7e(e,t){this.f=e,this.c=t}function pC(e,t){this.b=e,this.c=t}function iee(e,t){this.i=e,this.g=t}function d7e(e,t){this.e=e,this.a=t}function g7e(e,t){this.a=e,this.b=t}function ree(e,t){e.i=null,NO(e,t)}function Xyt(e,t){e&&Kn(Gj,e,t)}function b7e(e,t){return xK(e.a,t)}function L9(e){return jI(e.c,e.b)}function Uo(e){return e?e.dd():null}function le(e){return e??null}function Dp(e){return typeof e===M2}function kp(e){return typeof e===Nue}function fr(e){return typeof e===_H}function u1(e,t){return e.Hd().Xb(t)}function N9(e,t){return hTt(e.Kc(),t)}function Ub(e,t){return uc(e,t)==0}function Jyt(e,t){return uc(e,t)>=0}function s5(e,t){return uc(e,t)!=0}function Qyt(e){return""+(yt(e),e)}function wC(e,t){return e.substr(t)}function p7e(e){return Bs(e),e.d.gc()}function OF(e){return WRt(e,e.c),e}function F9(e){return y5(e==null),e}function u5(e,t){return e.a+=""+t,e}function co(e,t){return e.a+=""+t,e}function a5(e,t){return e.a+=""+t,e}function nc(e,t){return e.a+=""+t,e}function wn(e,t){return e.a+=""+t,e}function oee(e,t){return e.a+=""+t,e}function w7e(e,t){Ri(e,t,e.a,e.a.a)}function Tg(e,t){Ri(e,t,e.c.b,e.c)}function Zyt(e,t,n){CVe(t,Pq(e,n))}function e2t(e,t,n){CVe(t,Pq(e,n))}function t2t(e,t){UCt(new $t(e),t)}function m7e(e,t){e.q.setTime(l0(t))}function v7e(e,t){fne.call(this,e,t)}function y7e(e,t){fne.call(this,e,t)}function DF(e,t){fne.call(this,e,t)}function _7e(e){Is(this),G5(this,e)}function cee(e){return pt(e,0),null}function ol(e){return e.a=0,e.b=0,e}function E7e(e,t){return e.a=t.g+1,e}function n2t(e,t){return e.j[t.p]==2}function see(e){return FSt(c(e,79))}function S7e(){S7e=Z,tit=vn(KK())}function P7e(){P7e=Z,mrt=vn(cWe())}function M7e(){this.b=new Fy(Xp(12))}function C7e(){this.b=0,this.a=!1}function I7e(){this.b=0,this.a=!1}function l5(e){this.a=e,SN.call(this)}function T7e(e){this.a=e,SN.call(this)}function ut(e,t){Wi.call(this,e,t)}function kF(e,t){Fp.call(this,e,t)}function Im(e,t){iee.call(this,e,t)}function RF(e,t){X_.call(this,e,t)}function j7e(e,t){mC.call(this,e,t)}function In(e,t){p9(),Kn(Fx,e,t)}function xF(e,t){return fu(e.a,0,t)}function A7e(e,t){return e.a.a.a.cc(t)}function O7e(e,t){return le(e)===le(t)}function i2t(e,t){return zi(e.a,t.a)}function r2t(e,t){return Uc(e.a,t.a)}function o2t(e,t){return hxe(e.a,t.a)}function af(e,t){return e.indexOf(t)}function Wb(e,t){return e==t?0:e?1:-1}function B9(e){return e<10?"0"+e:""+e}function c2t(e){return nn(e),new l5(e)}function D7e(e){return Bc(e.l,e.m,e.h)}function f_(e){return xi((yt(e),e))}function s2t(e){return xi((yt(e),e))}function k7e(e,t){return Uc(e.g,t.g)}function Oo(e){return typeof e===Nue}function u2t(e){return e==V0||e==Ow}function a2t(e){return e==V0||e==Aw}function uee(e){return Do(e.b.b,e,0)}function R7e(e){this.a=n7e(),this.b=e}function x7e(e){this.a=n7e(),this.b=e}function l2t(e,t){return Ee(e.a,t),t}function f2t(e,t){return Ee(e.c,t),e}function L7e(e,t){return wu(e.a,t),e}function h2t(e,t){return ka(),t.a+=e}function d2t(e,t){return ka(),t.a+=e}function g2t(e,t){return ka(),t.c+=e}function aee(e,t){L_(e,0,e.length,t)}function Eh(){pQ.call(this,new Ng)}function N7e(){m8.call(this,0,0,0,0)}function zy(){Ru.call(this,0,0,0,0)}function go(e){this.a=e.a,this.b=e.b}function a1(e){return e==ga||e==Va}function h_(e){return e==Gh||e==Vh}function F7e(e){return e==Bv||e==Fv}function Tm(e){return e!=Xl&&e!=Y1}function Qs(e){return e.Lg()&&e.Mg()}function B7e(e){return R8(c(e,118))}function $9(e){return wu(new tr,e)}function $7e(e,t){return new X_(t,e)}function b2t(e,t){return new X_(t,e)}function lee(e,t,n){jO(e,t),AO(e,n)}function K9(e,t,n){p0(e,t),b0(e,n)}function Cl(e,t,n){es(e,t),ts(e,n)}function q9(e,t,n){$_(e,t),q_(e,n)}function H9(e,t,n){K_(e,t),H_(e,n)}function LF(e,t){nE(e,t),z_(e,e.D)}function fee(e){h7e.call(this,e,!0)}function K7e(e,t,n){ete.call(this,e,t,n)}function l1(e){T1(),pTt.call(this,e)}function q7e(){v9.call(this,"Head",1)}function H7e(){v9.call(this,"Tail",3)}function NF(e){e.c=oe(xt,xe,1,0,5,1)}function z7e(e){e.a=oe(xt,xe,1,8,5,1)}function V7e(e){Zc(e.xf(),new kIe(e))}function jm(e){return e!=null?fi(e):0}function p2t(e,t){return Jp(t,jl(e))}function w2t(e,t){return Jp(t,jl(e))}function m2t(e,t){return e[e.length]=t}function v2t(e,t){return e[e.length]=t}function hee(e){return m4t(e.b.Kc(),e.a)}function y2t(e,t){return LO(LB(e.d),t)}function _2t(e,t){return LO(LB(e.g),t)}function E2t(e,t){return LO(LB(e.j),t)}function Yr(e,t){Wi.call(this,e.b,t)}function Yb(e){m8.call(this,e,e,e,e)}function dee(e){return e.b&&rH(e),e.a}function gee(e){return e.b&&rH(e),e.c}function S2t(e,t){Vl||(e.b=t)}function FF(e,t,n){return vi(e,t,n),n}function G7e(e,t,n){vi(e.c[t.g],t.g,n)}function P2t(e,t,n){c(e.c,69).Xh(t,n)}function M2t(e,t,n){Cl(n,n.i+e,n.j+t)}function C2t(e,t){on(dc(e.a),cNe(t))}function I2t(e,t){on(Ns(e.a),sNe(t))}function f5(e){Ln(),Lb.call(this,e)}function T2t(e){return e==null?0:fi(e)}function U7e(){U7e=Z,uW=new n6(iY)}function un(){un=Z,new W7e,new Se}function W7e(){new en,new en,new en}function bee(){bee=Z,kQ(),ohe=new en}function Il(){Il=Z,g.Math.log(2)}function Du(){Du=Z,sh=(eOe(),fft)}function j2t(){throw V(new td(Ltt))}function A2t(){throw V(new td(Ltt))}function O2t(){throw V(new td(Ntt))}function D2t(){throw V(new td(Ntt))}function Y7e(e){this.a=e,kte.call(this,e)}function BF(e){this.a=e,c9.call(this,e)}function $F(e){this.a=e,c9.call(this,e)}function cr(e,t){wB(e.c,e.c.length,t)}function Fo(e){return e.at?1:0}function J7e(e,t){return uc(e,t)>0?e:t}function Bc(e,t,n){return{l:e,m:t,h:n}}function k2t(e,t){e.a!=null&&t7e(t,e.a)}function Q7e(e){e.a=new ii,e.c=new ii}function z9(e){this.b=e,this.a=new Se}function Z7e(e){this.b=new F2e,this.a=e}function wee(e){ate.call(this),this.a=e}function eDe(){v9.call(this,"Range",2)}function tDe(){fce(),this.a=new JI(kde)}function R2t(e,t){nn(t),Rm(e).Jc(new R)}function x2t(e,t){return hu(),t.n.b+=e}function L2t(e,t,n){return Kn(e.g,n,t)}function N2t(e,t,n){return Kn(e.k,n,t)}function F2t(e,t){return Kn(e.a,t.a,t)}function Am(e,t,n){return Ooe(t,n,e.c)}function mee(e){return new $e(e.c,e.d)}function B2t(e){return new $e(e.c,e.d)}function Wo(e){return new $e(e.a,e.b)}function nDe(e,t){return uqt(e.a,t,null)}function $2t(e){Rr(e,null),br(e,null)}function iDe(e){o$(e,null),c$(e,null)}function rDe(){mC.call(this,null,null)}function oDe(){Q9.call(this,null,null)}function vee(e){this.a=e,en.call(this)}function K2t(e){this.b=(st(),new AN(e))}function V9(e){e.j=oe(mhe,we,310,0,0,1)}function q2t(e,t,n){e.c.Vc(t,c(n,133))}function H2t(e,t,n){e.c.ji(t,c(n,133))}function cDe(e,t){Xt(e),e.Gc(c(t,15))}function h5(e,t){return PKt(e.c,e.b,t)}function z2t(e,t){return new TDe(e.Kc(),t)}function KF(e,t){return HTt(e.Kc(),t)!=-1}function yee(e,t){return e.a.Bc(t)!=null}function G9(e){return e.Ob()?e.Pb():null}function sDe(e){return pf(e,0,e.length)}function Q(e,t){return e!=null&&VK(e,t)}function V2t(e,t){e.q.setHours(t),_6(e,t)}function uDe(e,t){e.c&&(zte(t),RLe(t))}function G2t(e,t,n){c(e.Kb(n),164).Nb(t)}function U2t(e,t,n){return tqt(e,t,n),n}function aDe(e,t,n){e.a=t^1502,e.b=n^ez}function qF(e,t,n){return e.a[t.g][n.g]}function Tl(e,t){return e.a[t.c.p][t.p]}function W2t(e,t){return e.e[t.c.p][t.p]}function Y2t(e,t){return e.c[t.c.p][t.p]}function X2t(e,t){return e.j[t.p]=oLt(t)}function J2t(e,t){return Sie(e.f,t.tg())}function Q2t(e,t){return Sie(e.b,t.tg())}function Z2t(e,t){return e.a0?t*t/e:t*t*100}function P3t(e,t){return e>0?t/(e*e):t*100}function M3t(e,t,n){return Ee(t,DHe(e,n))}function C3t(e,t,n){bO(),e.Xe(t)&&n.td(e)}function b_(e,t,n){var i;i=e.Zc(t),i.Rb(n)}function xp(e,t,n){return e.a+=t,e.b+=n,e}function I3t(e,t,n){return e.a*=t,e.b*=n,e}function _C(e,t,n){return e.a-=t,e.b-=n,e}function zee(e,t){return e.a=t.a,e.b=t.b,e}function t8(e){return e.a=-e.a,e.b=-e.b,e}function $De(e){this.c=e,this.a=1,this.b=1}function KDe(e){this.c=e,es(e,0),ts(e,0)}function qDe(e){wi.call(this),q5(this,e)}function HDe(e){vH(),gAe(this),this.mf(e)}function zDe(e,t){GS(),mC.call(this,e,t)}function Vee(e,t){rd(),Q9.call(this,e,t)}function VDe(e,t){rd(),Q9.call(this,e,t)}function GDe(e,t){rd(),Vee.call(this,e,t)}function Zs(e,t,n){iu.call(this,e,t,n,2)}function YF(e,t){Du(),w8.call(this,e,t)}function UDe(e,t){Du(),YF.call(this,e,t)}function Gee(e,t){Du(),YF.call(this,e,t)}function WDe(e,t){Du(),Gee.call(this,e,t)}function Uee(e,t){Du(),w8.call(this,e,t)}function YDe(e,t){Du(),Uee.call(this,e,t)}function XDe(e,t){Du(),w8.call(this,e,t)}function T3t(e,t){return e.c.Fc(c(t,133))}function Wee(e,t,n){return oD(iI(e,t),n)}function j3t(e,t,n){return t.Qk(e.e,e.c,n)}function A3t(e,t,n){return t.Rk(e.e,e.c,n)}function XF(e,t){return S1(e.e,c(t,49))}function O3t(e,t,n){e6(Ns(e.a),t,sNe(n))}function D3t(e,t,n){e6(dc(e.a),t,cNe(n))}function Yee(e,t){t.$modCount=e.$modCount}function w5(){w5=Z,KP=new hi("root")}function p_(){p_=Z,Wj=new GAe,new UAe}function JDe(){this.a=new u0,this.b=new u0}function Xee(){pKe.call(this),this.Bb|=Vr}function QDe(){pn.call(this,"GROW_TREE",0)}function k3t(e){return e==null?null:Jqt(e)}function R3t(e){return e==null?null:okt(e)}function x3t(e){return e==null?null:Ro(e)}function L3t(e){return e==null?null:Ro(e)}function Sh(e){e.o==null&&kxt(e)}function Fe(e){return y5(e==null||Dp(e)),e}function Te(e){return y5(e==null||kp(e)),e}function ln(e){return y5(e==null||fr(e)),e}function Jee(e){this.q=new g.Date(l0(e))}function EC(e,t){this.c=e,c_.call(this,e,t)}function n8(e,t){this.a=e,EC.call(this,e,t)}function N3t(e,t){this.d=e,uIe(this),this.b=t}function Qee(e,t){I$.call(this,e),this.a=t}function Zee(e,t){I$.call(this,e),this.a=t}function F3t(e){Coe.call(this,0,0),this.f=e}function ete(e,t,n){dO.call(this,e,t,n,null)}function ZDe(e,t,n){dO.call(this,e,t,n,null)}function B3t(e,t,n){return e.ue(t,n)<=0?n:t}function $3t(e,t,n){return e.ue(t,n)<=0?t:n}function K3t(e,t){return c(h0(e.b,t),149)}function q3t(e,t){return c(h0(e.c,t),229)}function JF(e){return c(Ne(e.a,e.b),287)}function eke(e){return new $e(e.c,e.d+e.a)}function tke(e){return hu(),F7e(c(e,197))}function Lp(){Lp=Z,ude=nt((ou(),Cb))}function H3t(e,t){t.a?TNt(e,t):HF(e.a,t.b)}function nke(e,t){Vl||Ee(e.a,t)}function z3t(e,t){return tC(),Y_(t.d.i,e)}function V3t(e,t){return h2(),new rYe(t,e)}function ff(e,t){return FC(t,iae),e.f=t,e}function tte(e,t,n){return n=yu(e,t,3,n),n}function nte(e,t,n){return n=yu(e,t,6,n),n}function ite(e,t,n){return n=yu(e,t,9,n),n}function SC(e,t,n){++e.j,e.Ki(),M$(e,t,n)}function ike(e,t,n){++e.j,e.Hi(t,e.oi(t,n))}function rke(e,t,n){var i;i=e.Zc(t),i.Rb(n)}function oke(e,t,n){return wue(e.c,e.b,t,n)}function rte(e,t){return(t&Fn)%e.d.length}function Wi(e,t){hi.call(this,e),this.a=t}function ote(e,t){CQ.call(this,e),this.a=t}function QF(e,t){CQ.call(this,e),this.a=t}function cke(e,t){this.c=e,d0.call(this,t)}function ske(e,t){this.a=e,uAe.call(this,t)}function PC(e,t){this.a=e,uAe.call(this,t)}function uke(e){this.a=(pu(e,mw),new Dc(e))}function ake(e){this.a=(pu(e,mw),new Dc(e))}function MC(e){return!e.a&&(e.a=new H),e.a}function lke(e){return e>8?0:e+1}function G3t(e,t){return Pt(),e==t?0:e?1:-1}function cte(e,t,n){return Xy(e,c(t,22),n)}function U3t(e,t,n){return e.apply(t,n)}function fke(e,t,n){return e.a+=pf(t,0,n),e}function ste(e,t){var n;return n=e.e,e.e=t,n}function W3t(e,t){var n;n=e[ZH],n.call(e,t)}function Y3t(e,t){var n;n=e[ZH],n.call(e,t)}function Np(e,t){e.a.Vc(e.b,t),++e.b,e.c=-1}function hke(e){Is(e.e),e.d.b=e.d,e.d.a=e.d}function CC(e){e.b?CC(e.b):e.f.c.zc(e.e,e.d)}function X3t(e,t,n){Ig(),oIe(e,t.Ce(e.a,n))}function J3t(e,t){return QN(WHe(e.a,t,!0))}function Q3t(e,t){return QN(YHe(e.a,t,!0))}function Da(e,t){return e9(new Array(t),e)}function ZF(e){return String.fromCharCode(e)}function Z3t(e){return e==null?null:e.message}function dke(){this.a=new Se,this.b=new Se}function gke(){this.a=new IJ,this.b=new SAe}function bke(){this.b=new Tr,this.c=new Se}function ute(){this.d=new Tr,this.e=new Tr}function ate(){this.n=new Tr,this.o=new Tr}function i8(){this.n=new Ry,this.i=new zy}function pke(){this.a=new YMe,this.b=new L4e}function wke(){this.a=new Se,this.d=new Se}function mke(){this.b=new er,this.a=new er}function vke(){this.b=new en,this.a=new en}function yke(){this.b=new e8e,this.a=new FSe}function _ke(){i8.call(this),this.a=new Tr}function m5(e){PTt.call(this,e,(wO(),pG))}function lte(e,t,n,i){m8.call(this,e,t,n,i)}function e_t(e,t,n){n!=null&&RO(t,nq(e,n))}function t_t(e,t,n){n!=null&&xO(t,nq(e,n))}function fte(e,t,n){return n=yu(e,t,11,n),n}function Wn(e,t){return e.a+=t.a,e.b+=t.b,e}function hr(e,t){return e.a-=t.a,e.b-=t.b,e}function n_t(e,t){return e.n.a=(yt(t),t+10)}function i_t(e,t){return e.n.a=(yt(t),t+10)}function r_t(e,t){return t==e||pE(z7(t),e)}function Eke(e,t){return Kn(e.a,t,"")==null}function o_t(e,t){return tC(),!Y_(t.d.i,e)}function c_t(e,t){a1(e.f)?Sxt(e,t):sDt(e,t)}function s_t(e,t){var n;return n=t.Hh(e.a),n}function Fp(e,t){ho.call(this,J6+e+ub+t)}function Uy(e,t,n,i){Me.call(this,e,t,n,i)}function hte(e,t,n,i){Me.call(this,e,t,n,i)}function Ske(e,t,n,i){hte.call(this,e,t,n,i)}function Pke(e,t,n,i){T8.call(this,e,t,n,i)}function eB(e,t,n,i){T8.call(this,e,t,n,i)}function dte(e,t,n,i){T8.call(this,e,t,n,i)}function Mke(e,t,n,i){eB.call(this,e,t,n,i)}function gte(e,t,n,i){eB.call(this,e,t,n,i)}function dt(e,t,n,i){dte.call(this,e,t,n,i)}function Cke(e,t,n,i){gte.call(this,e,t,n,i)}function Ike(e,t,n,i){hne.call(this,e,t,n,i)}function Tke(e,t,n){this.a=e,$ee.call(this,t,n)}function jke(e,t,n){this.c=t,this.b=n,this.a=e}function u_t(e,t,n){return e.d=c(t.Kb(n),164)}function bte(e,t){return e.Aj().Nh().Kh(e,t)}function pte(e,t){return e.Aj().Nh().Ih(e,t)}function Ake(e,t){return yt(e),le(e)===le(t)}function rt(e,t){return yt(e),le(e)===le(t)}function tB(e,t){return QN(WHe(e.a,t,!1))}function nB(e,t){return QN(YHe(e.a,t,!1))}function a_t(e,t){return e.b.sd(new aOe(e,t))}function l_t(e,t){return e.b.sd(new lOe(e,t))}function Oke(e,t){return e.b.sd(new fOe(e,t))}function wte(e,t,n){return e.lastIndexOf(t,n)}function f_t(e,t,n){return zi(e[t.b],e[n.b])}function h_t(e,t){return pe(t,(Oe(),lj),e)}function d_t(e,t){return Uc(t.a.d.p,e.a.d.p)}function g_t(e,t){return Uc(e.a.d.p,t.a.d.p)}function b_t(e,t){return zi(e.c-e.s,t.c-t.s)}function Dke(e){return e.c?Do(e.c.a,e,0):-1}function p_t(e){return e<100?null:new i1(e)}function Wy(e){return e==Mb||e==ch||e==Ic}function kke(e,t){return Q(t,15)&&BWe(e.c,t)}function w_t(e,t){Vl||t&&(e.d=t)}function iB(e,t){var n;return n=t,!!$re(e,n)}function mte(e,t){this.c=e,AB.call(this,e,t)}function Rke(e){this.c=e,DF.call(this,dD,0)}function xke(e,t){E4t.call(this,e,e.length,t)}function m_t(e,t,n){return c(e.c,69).lk(t,n)}function r8(e,t,n){return c(e.c,69).mk(t,n)}function v_t(e,t,n){return j3t(e,c(t,332),n)}function vte(e,t,n){return A3t(e,c(t,332),n)}function y_t(e,t,n){return kVe(e,c(t,332),n)}function Lke(e,t,n){return mDt(e,c(t,332),n)}function v5(e,t){return t==null?null:tw(e.b,t)}function yte(e){return kp(e)?(yt(e),e):e.ke()}function o8(e){return!isNaN(e)&&!isFinite(e)}function Nke(e){hf(),this.a=(st(),new t_(e))}function IC(e){m_(),this.d=e,this.a=new vm}function ku(e,t,n){this.a=e,this.b=t,this.c=n}function Fke(e,t,n){this.a=e,this.b=t,this.c=n}function Bke(e,t,n){this.d=e,this.b=n,this.a=t}function rB(e){Q7e(this),na(this),qr(this,e)}function ps(e){NF(this),xte(this.c,0,e.Pc())}function $ke(e){nu(e.a),NBe(e.c,e.b),e.b=null}function Kke(e){this.a=e,Nf(),ns(Date.now())}function qke(){qke=Z,Bhe=new C,Ok=new C}function oB(){oB=Z,Ahe=new kr,unt=new jo}function Hke(){Hke=Z,pft=oe(xt,xe,1,0,5,1)}function zke(){zke=Z,Rft=oe(xt,xe,1,0,5,1)}function _te(){_te=Z,xft=oe(xt,xe,1,0,5,1)}function hf(){hf=Z,new jQ((st(),st(),Qr))}function __t(e){return wO(),mn((WBe(),fnt),e)}function E_t(e){return Fl(),mn((dBe(),wnt),e)}function S_t(e){return p7(),mn((yFe(),Snt),e)}function P_t(e){return EO(),mn((_Fe(),Pnt),e)}function M_t(e){return X7(),mn((sqe(),Mnt),e)}function C_t(e){return al(),mn((lBe(),Tnt),e)}function I_t(e){return Ts(),mn((fBe(),Ant),e)}function T_t(e){return Qc(),mn((hBe(),Dnt),e)}function j_t(e){return fD(),mn((S7e(),tit),e)}function A_t(e){return v0(),mn((XBe(),iit),e)}function O_t(e){return m2(),mn((JBe(),oit),e)}function D_t(e){return c6(),mn((QBe(),uit),e)}function k_t(e){return l9(),mn((QNe(),ait),e)}function R_t(e){return SO(),mn((EFe(),Cit),e)}function x_t(e){return $5(),mn((gBe(),Uit),e)}function L_t(e){return Hr(),mn((T$e(),Jit),e)}function N_t(e){return Q_(),mn((YBe(),nrt),e)}function F_t(e){return y0(),mn((bBe(),urt),e)}function Ete(e,t){if(!e)throw V(new St(t))}function B_t(e){return Dt(),mn((Y$e(),hrt),e)}function Ste(e){m8.call(this,e.d,e.c,e.a,e.b)}function cB(e){m8.call(this,e.d,e.c,e.a,e.b)}function Pte(e,t,n){this.b=e,this.c=t,this.a=n}function c8(e,t,n){this.b=e,this.a=t,this.c=n}function Vke(e,t,n){this.a=e,this.b=t,this.c=n}function Mte(e,t,n){this.a=e,this.b=t,this.c=n}function Gke(e,t,n){this.a=e,this.b=t,this.c=n}function Cte(e,t,n){this.a=e,this.b=t,this.c=n}function Uke(e,t,n){this.b=e,this.a=t,this.c=n}function s8(e,t,n){this.e=t,this.b=e,this.d=n}function $_t(e,t,n){return Ig(),e.a.Od(t,n),t}function sB(e){var t;return t=new Pi,t.e=e,t}function Ite(e){var t;return t=new AAe,t.b=e,t}function TC(){TC=Z,zk=new f_e,Vk=new h_e}function ka(){ka=Z,Crt=new WEe,Irt=new YEe}function K_t(e){return YO(),mn((e$e(),_rt),e)}function q_t(e){return Nl(),mn((n$e(),Art),e)}function H_t(e){return W7(),mn((XKe(),Frt),e)}function z_t(e){return y2(),mn((Q$e(),Brt),e)}function V_t(e){return gO(),mn((TFe(),$rt),e)}function G_t(e){return f2(),mn((pBe(),Krt),e)}function U_t(e){return Zm(),mn((S$e(),Drt),e)}function W_t(e){return m0(),mn((vBe(),Nrt),e)}function Y_t(e){return DO(),mn((wBe(),qrt),e)}function X_t(e){return Qg(),mn((_$e(),Hrt),e)}function J_t(e){return uI(),mn((PFe(),zrt),e)}function Q_t(e){return zg(),mn((mBe(),Grt),e)}function Z_t(e){return F7(),mn((nKe(),Urt),e)}function eEt(e){return eI(),mn((MFe(),Wrt),e)}function tEt(e){return $I(),mn((eKe(),Yrt),e)}function nEt(e){return mE(),mn((Z$e(),Xrt),e)}function iEt(e){return to(),mn((Eqe(),Jrt),e)}function rEt(e){return J_(),mn((_Be(),Qrt),e)}function oEt(e){return Oh(),mn((yBe(),eot),e)}function cEt(e){return iO(),mn((jFe(),tot),e)}function sEt(e){return Ku(),mn((P$e(),not),e)}function uEt(e){return R7(),mn((tKe(),wst),e)}function aEt(e){return X5(),mn((EBe(),mst),e)}function lEt(e){return rw(),mn((i$e(),vst),e)}function fEt(e){return Zr(),mn((MBe(),Mst),e)}function hEt(e){return iv(),mn((YKe(),_st),e)}function dEt(e){return kh(),mn((PBe(),Est),e)}function gEt(e){return rI(),mn((IFe(),Sst),e)}function bEt(e){return VO(),mn((SBe(),Cst),e)}function pEt(e){return s6(),mn((E$e(),yst),e)}function wEt(e){return WC(),mn((CFe(),Ist),e)}function mEt(e){return rE(),mn((IBe(),Tst),e)}function vEt(e){return HO(),mn((TBe(),jst),e)}function yEt(e){return XO(),mn((CBe(),Ast),e)}function _Et(e){return w0(),mn((jBe(),Hst),e)}function EEt(e){return F5(),mn((OFe(),Wst),e)}function SEt(e){return gf(),mn((DFe(),tut),e)}function PEt(e){return Al(),mn((kFe(),iut),e)}function MEt(e){return cl(),mn((AFe(),mut),e)}function CEt(e){return s0(),mn((RFe(),Mut),e)}function IEt(e){return dE(),mn((ZBe(),Cut),e)}function TEt(e){return d6(),mn((iKe(),Tut),e)}function jEt(e){return Y8(),mn((NFe(),qut),e)}function AEt(e){return $O(),mn((LFe(),Wut),e)}function OEt(e){return Z8(),mn((xFe(),Hut),e)}function DEt(e){return s7(),mn((ABe(),Xut),e)}function kEt(e){return pO(),mn((FFe(),Jut),e)}function REt(e){return EI(),mn((OBe(),Qut),e)}function xEt(e){return C7(),mn((t$e(),dat),e)}function LEt(e){return zO(),mn((kBe(),gat),e)}function NEt(e){return c7(),mn((DBe(),bat),e)}function FEt(e){return PE(),mn((I$e(),xat),e)}function BEt(e){return TI(),mn((RBe(),Lat),e)}function $Et(e){return h9(),mn((XNe(),Nat),e)}function KEt(e){return d9(),mn((YNe(),Bat),e)}function qEt(e){return YC(),mn(($Fe(),$at),e)}function HEt(e){return qI(),mn((M$e(),Kat),e)}function zEt(e){return zS(),mn((JNe(),ilt),e)}function VEt(e){return mI(),mn((BFe(),rlt),e)}function GEt(e){return fl(),mn((C$e(),llt),e)}function UEt(e){return yd(),mn((JKe(),hlt),e)}function WEt(e){return Gf(),mn((J$e(),dlt),e)}function YEt(e){return sw(),mn((X$e(),vlt),e)}function XEt(e){return Jr(),mn((P7e(),mrt),e)}function JEt(e){return G_(),mn((SFe(),wrt),e)}function QEt(e){return eo(),mn((j$e(),Rlt),e)}function ZEt(e){return xl(),mn((LBe(),xlt),e)}function e4t(e){return Lh(),mn((c$e(),Llt),e)}function t4t(e){return L7(),mn((oKe(),Nlt),e)}function n4t(e){return Rh(),mn((xBe(),Blt),e)}function i4t(e){return mu(),mn((o$e(),Klt),e)}function r4t(e){return fw(),mn((cqe(),qlt),e)}function o4t(e){return Um(),mn((A$e(),Hlt),e)}function c4t(e){return wr(),mn((V$e(),zlt),e)}function s4t(e){return js(),mn((rKe(),Vlt),e)}function u4t(e){return ou(),mn((u$e(),Jlt),e)}function a4t(e){return Ks(),mn((Sqe(),Qlt),e)}function l4t(e){return Ie(),mn((O$e(),Glt),e)}function f4t(e){return l7(),mn((s$e(),Zlt),e)}function h4t(e){return ru(),mn((r$e(),nft),e)}function d4t(e){return _E(),mn((QKe(),bft),e)}function g4t(e,t){return yt(e),e+(yt(t),t)}function b4t(e,t){return Nf(),on(he(e.a),t)}function p4t(e,t){return Nf(),on(he(e.a),t)}function uB(e,t){this.c=e,this.a=t,this.b=t-e}function Wke(e,t,n){this.a=e,this.b=t,this.c=n}function Tte(e,t,n){this.a=e,this.b=t,this.c=n}function jte(e,t,n){this.a=e,this.b=t,this.c=n}function Yke(e,t,n){this.a=e,this.b=t,this.c=n}function Xke(e,t,n){this.a=e,this.b=t,this.c=n}function cd(e,t,n){this.e=e,this.a=t,this.c=n}function Jke(e,t,n){Du(),Kne.call(this,e,t,n)}function aB(e,t,n){Du(),Mne.call(this,e,t,n)}function Ate(e,t,n){Du(),Mne.call(this,e,t,n)}function Ote(e,t,n){Du(),Mne.call(this,e,t,n)}function Qke(e,t,n){Du(),aB.call(this,e,t,n)}function Dte(e,t,n){Du(),aB.call(this,e,t,n)}function Zke(e,t,n){Du(),Dte.call(this,e,t,n)}function eRe(e,t,n){Du(),Ate.call(this,e,t,n)}function tRe(e,t,n){Du(),Ote.call(this,e,t,n)}function jC(e,t){return nn(e),nn(t),new E8e(e,t)}function Yy(e,t){return nn(e),nn(t),new gRe(e,t)}function w4t(e,t){return nn(e),nn(t),new bRe(e,t)}function m4t(e,t){return nn(e),nn(t),new P8e(e,t)}function c(e,t){return y5(e==null||VK(e,t)),e}function w_(e){var t;return t=new Se,F$(t,e),t}function v4t(e){var t;return t=new er,F$(t,e),t}function nRe(e){var t;return t=new FQ,Q$(t,e),t}function AC(e){var t;return t=new wi,Q$(t,e),t}function y4t(e){return!e.e&&(e.e=new Se),e.e}function _4t(e){return!e.c&&(e.c=new G3),e.c}function Ee(e,t){return e.c[e.c.length]=t,!0}function iRe(e,t){this.c=e,this.b=t,this.a=!1}function kte(e){this.d=e,uIe(this),this.b=dSt(e.d)}function rRe(){this.a=";,;",this.b="",this.c=""}function E4t(e,t,n){oxe.call(this,t,n),this.a=e}function oRe(e,t,n){this.b=e,v7e.call(this,t,n)}function Rte(e,t,n){this.c=e,y9.call(this,t,n)}function xte(e,t,n){ise(n,0,e,t,n.length,!1)}function Bf(e,t,n,i,r){e.b=t,e.c=n,e.d=i,e.a=r}function S4t(e,t){t&&(e.b=t,e.a=(b1(t),t.a))}function Lte(e,t,n,i,r){e.d=t,e.c=n,e.a=i,e.b=r}function Nte(e){var t,n;t=e.b,n=e.c,e.b=n,e.c=t}function Fte(e){var t,n;n=e.d,t=e.a,e.d=t,e.a=n}function Bte(e){return y1(jSt(Oo(e)?ia(e):e))}function P4t(e,t){return Uc(_Re(e.d),_Re(t.d))}function M4t(e,t){return t==(Ie(),Mt)?e.c:e.d}function m_(){m_=Z,r0e=(Ie(),Mt),XR=jt}function cRe(){this.b=ge(Te(Le((dl(),kG))))}function sRe(e){return Ig(),oe(xt,xe,1,e,5,1)}function C4t(e){return new $e(e.c+e.b,e.d+e.a)}function I4t(e,t){return f9(),Uc(e.d.p,t.d.p)}function lB(e){return Lt(e.b!=0),Fu(e,e.a.a)}function T4t(e){return Lt(e.b!=0),Fu(e,e.c.b)}function $te(e,t){if(!e)throw V(new p9e(t))}function u8(e,t){if(!e)throw V(new St(t))}function Kte(e,t,n){l_.call(this,e,t),this.b=n}function OC(e,t,n){nee.call(this,e,t),this.c=n}function uRe(e,t,n){B$e.call(this,t,n),this.d=e}function qte(e){_te(),xA.call(this),this.th(e)}function aRe(e,t,n){this.a=e,Im.call(this,t,n)}function lRe(e,t,n){this.a=e,Im.call(this,t,n)}function a8(e,t,n){nee.call(this,e,t),this.c=n}function fRe(){k_(),USt.call(this,(c1(),_a))}function hRe(e){return e!=null&&!OK(e,oM,cM)}function j4t(e,t){return(_He(e)<<4|_He(t))&Ni}function A4t(e,t){return k8(),ZK(e,t),new Bxe(e,t)}function jg(e,t){var n;e.n&&(n=t,Ee(e.f,n))}function v_(e,t,n){var i;i=new qp(n),ul(e,t,i)}function O4t(e,t){var n;return n=e.c,cre(e,t),n}function Hte(e,t){return t<0?e.g=-1:e.g=t,e}function l8(e,t){return bIt(e),e.a*=t,e.b*=t,e}function dRe(e,t,n,i,r){e.c=t,e.d=n,e.b=i,e.a=r}function Cn(e,t){return Ri(e,t,e.c.b,e.c),!0}function zte(e){e.a.b=e.b,e.b.a=e.a,e.a=e.b=null}function fB(e){this.b=e,this.a=e0(this.b.a).Ed()}function gRe(e,t){this.b=e,this.a=t,SN.call(this)}function bRe(e,t){this.a=e,this.b=t,SN.call(this)}function pRe(e,t){oxe.call(this,t,1040),this.a=e}function DC(e){return e==0||isNaN(e)?e:e<0?-1:1}function D4t(e){return t2(),Uf(e)==yi(M1(e))}function k4t(e){return t2(),M1(e)==yi(Uf(e))}function Zb(e,t){return f6(e,new l_(t.a,t.b))}function R4t(e){return!Kr(e)&&e.c.i.c==e.d.i.c}function f8(e){var t;return t=e.n,e.a.b+t.d+t.a}function wRe(e){var t;return t=e.n,e.e.b+t.d+t.a}function Vte(e){var t;return t=e.n,e.e.a+t.b+t.c}function mRe(e){return Ln(),new $f(0,e)}function x4t(e){return e.a?e.a:VB(e)}function y5(e){if(!e)throw V(new e_(null))}function vRe(){vRe=Z,wY=(st(),new jN(GV))}function h8(){h8=Z,new qoe(($N(),rG),(KN(),iG))}function yRe(){yRe=Z,dhe=oe($r,we,19,256,0,1)}function hB(e,t,n,i){woe.call(this,e,t,n,i,0,0)}function L4t(e,t,n){return Kn(e.b,c(n.b,17),t)}function N4t(e,t,n){return Kn(e.b,c(n.b,17),t)}function F4t(e,t){return Ee(e,new $e(t.a,t.b))}function B4t(e,t){return e.c=t)throw V(new RQ)}function _St(e,t,n){return vi(t,0,Yte(t[0],n[0])),t}function ESt(e,t,n){t.Ye(n,ge(Te(Bt(e.b,n)))*e.a)}function rxe(e,t,n){return ov(),U_(e,t)&&U_(e,n)}function M5(e){return js(),!e.Hc(Wh)&&!e.Hc(X1)}function C8(e){return new $e(e.c+e.b/2,e.d+e.a/2)}function PB(e,t){return t.kh()?S1(e.b,c(t,49)):t}function fne(e,t){this.e=e,this.d=(t&64)!=0?t|mf:t}function oxe(e,t){this.c=0,this.d=e,this.b=t|64|mf}function I8(e){this.b=new Dc(11),this.a=(xm(),e)}function MB(e){this.b=null,this.a=(xm(),e||Ihe)}function cxe(e){this.a=jze(e.a),this.b=new ps(e.b)}function sxe(e){this.b=e,Vy.call(this,e),lDe(this)}function uxe(e){this.b=e,vC.call(this,e),fDe(this)}function Kp(e,t,n){this.a=e,Uy.call(this,t,n,5,6)}function hne(e,t,n,i){this.b=e,qi.call(this,t,n,i)}function sr(e,t,n,i,r){A$.call(this,e,t,n,i,r,-1)}function C5(e,t,n,i,r){QC.call(this,e,t,n,i,r,-1)}function Me(e,t,n,i){qi.call(this,e,t,n),this.b=i}function T8(e,t,n,i){OC.call(this,e,t,n),this.b=i}function axe(e){h7e.call(this,e,!1),this.a=!1}function lxe(e,t){this.b=e,VCe.call(this,e.b),this.a=t}function fxe(e,t){Hp(),Myt.call(this,e,n7(new Js(t)))}function j8(e,t){return Ln(),new Cne(e,t,0)}function CB(e,t){return Ln(),new Cne(6,e,t)}function SSt(e,t){return rt(e.substr(0,t.length),t)}function tu(e,t){return fr(t)?WB(e,t):!!Po(e.f,t)}function Sr(e,t){for(yt(t);e.Ob();)t.td(e.Pb())}function km(e,t,n){T1(),this.e=e,this.d=t,this.a=n}function sd(e,t,n,i){var r;r=e.i,r.i=t,r.a=n,r.b=i}function dne(e){var t;for(t=e;t.f;)t=t.f;return t}function Qy(e){var t;return t=Y5(e),Lt(t!=null),t}function PSt(e){var t;return t=aAt(e),Lt(t!=null),t}function __(e,t){var n;return n=e.a.gc(),Pie(t,n),n-t}function gne(e,t){var n;for(n=0;n0?g.Math.log(e/t):-100}function hxe(e,t){return uc(e,t)<0?-1:uc(e,t)>0?1:0}function vne(e,t,n){return iXe(e,c(t,46),c(n,167))}function dxe(e,t){return c(ane(e0(e.a)).Xb(t),42).cd()}function kSt(e,t){return nIt(t,e.length),new pRe(e,t)}function AB(e,t){this.d=e,$t.call(this,e),this.e=t}function t0(e){this.d=(yt(e),e),this.a=0,this.c=dD}function yne(e,t){Lb.call(this,1),this.a=e,this.b=t}function gxe(e,t){return e.c?gxe(e.c,t):Ee(e.b,t),e}function RSt(e,t,n){var i;return i=Yp(e,t),g$(e,t,n),i}function _ne(e,t){var n;return n=e.slice(0,t),Fie(n,e)}function bxe(e,t,n){var i;for(i=0;i=e.g}function BB(e,t,n){var i;return i=X$(e,t,n),Yse(e,i)}function Zy(e,t){var n;n=e.a.length,Yp(e,n),g$(e,n,t)}function Axe(e,t){var n;n=console[e],n.call(console,t)}function Oxe(e,t){var n;++e.j,n=e.Vi(),e.Ii(e.oi(n,t))}function GSt(e,t,n){c(t.b,65),Zc(t.a,new Tte(e,n,t))}function Mne(e,t,n){HA.call(this,t),this.a=e,this.b=n}function Cne(e,t,n){Lb.call(this,e),this.a=t,this.b=n}function Ine(e,t,n){this.a=e,CQ.call(this,t),this.b=n}function Dxe(e,t,n){this.a=e,iie.call(this,8,t,null,n)}function USt(e){this.a=(yt(yn),yn),this.b=e,new UQ}function kxe(e){this.c=e,this.b=this.c.a,this.a=this.c.e}function Tne(e){this.c=e,this.b=e.a.d.a,Yee(e.a.e,this)}function nu(e){Rp(e.c!=-1),e.d.$c(e.c),e.b=e.c,e.c=-1}function j5(e){return g.Math.sqrt(e.a*e.a+e.b*e.b)}function i0(e,t){return y_(t,e.a.c.length),Ne(e.a,t)}function df(e,t){return le(e)===le(t)||e!=null&&$n(e,t)}function WSt(e){return 0>=e?new yZ:RIt(e-1)}function YSt(e){return tm?WB(tm,e):!1}function Rxe(e){return e?e.dc():!e.Kc().Ob()}function Nr(e){return!e.a&&e.c?e.c.b:e.a}function XSt(e){return!e.a&&(e.a=new qi(J1,e,4)),e.a}function r0(e){return!e.d&&(e.d=new qi(oo,e,1)),e.d}function yt(e){if(e==null)throw V(new AS);return e}function A5(e){e.c?e.c.He():(e.d=!0,tNt(e))}function b1(e){e.c?b1(e.c):(Wg(e),e.d=!0)}function xxe(e){Dne(e.a),e.b=oe(xt,xe,1,e.b.length,5,1)}function JSt(e,t){return Uc(t.j.c.length,e.j.c.length)}function QSt(e,t){e.c<0||e.b.b=0?e.Bh(n):ose(e,t)}function Lxe(e){var t,n;return t=e.c.i.c,n=e.d.i.c,t==n}function e5t(e){if(e.p!=4)throw V(new hs);return e.e}function t5t(e){if(e.p!=3)throw V(new hs);return e.e}function n5t(e){if(e.p!=6)throw V(new hs);return e.f}function i5t(e){if(e.p!=6)throw V(new hs);return e.k}function r5t(e){if(e.p!=3)throw V(new hs);return e.j}function o5t(e){if(e.p!=4)throw V(new hs);return e.j}function jne(e){return!e.b&&(e.b=new zA(new BN)),e.b}function o0(e){return e.c==-2&&nvt(e,SDt(e.g,e.b)),e.c}function P_(e,t){var n;return n=RB("",e),n.n=t,n.i=1,n}function c5t(e,t){vB(c(t.b,65),e),Zc(t.a,new mQ(e))}function s5t(e,t){on((!e.a&&(e.a=new PC(e,e)),e.a),t)}function Nxe(e,t){this.b=e,AB.call(this,e,t),lDe(this)}function Fxe(e,t){this.b=e,mte.call(this,e,t),fDe(this)}function Ane(e,t,n,i){Vb.call(this,e,t),this.d=n,this.a=i}function D8(e,t,n,i){Vb.call(this,e,n),this.a=t,this.f=i}function Bxe(e,t){K2t.call(this,xIt(nn(e),nn(t))),this.a=t}function $xe(){Nce.call(this,lb,(H9e(),Hft)),jKt(this)}function Kxe(){Nce.call(this,la,(r_(),sme)),F$t(this)}function qxe(){pn.call(this,"DELAUNAY_TRIANGULATION",0)}function u5t(e){return String.fromCharCode.apply(null,e)}function Kn(e,t,n){return fr(t)?bo(e,t,n):Kc(e.f,t,n)}function One(e){return st(),e?e.ve():(xm(),xm(),jhe)}function a5t(e,t,n){return d2(),n.pg(e,c(t.cd(),146))}function Hxe(e,t){return h8(),new qoe(new PDe(e),new SDe(t))}function l5t(e){return pu(e,MH),PO(xr(xr(5,e),e/10|0))}function k8(){k8=Z,qtt=new qN(U(G(fb,1),gD,42,0,[]))}function zxe(e){return!e.d&&(e.d=new W3(e.c.Cc())),e.d}function M_(e){return!e.a&&(e.a=new P9e(e.c.vc())),e.a}function Vxe(e){return!e.b&&(e.b=new t_(e.c.ec())),e.b}function qf(e,t){for(;t-- >0;)e=e<<1|(e<0?1:0);return e}function wc(e,t){return le(e)===le(t)||e!=null&&$n(e,t)}function f5t(e,t){return Pt(),c(t.b,19).ai&&++i,i}function Mh(e){var t,n;return n=(t=new Nb,t),B_(n,e),n}function zB(e){var t,n;return n=(t=new Nb,t),$ce(n,e),n}function C5t(e,t){var n;return n=Bt(e.f,t),wre(t,n),null}function VB(e){var t;return t=NIt(e),t||null}function tLe(e){return!e.b&&(e.b=new Me(rr,e,12,3)),e.b}function I5t(e){return e!=null&&ZM(Bx,e.toLowerCase())}function T5t(e,t){return zi(ws(e)*eu(e),ws(t)*eu(t))}function j5t(e,t){return zi(ws(e)*eu(e),ws(t)*eu(t))}function A5t(e,t){return zi(e.d.c+e.d.b/2,t.d.c+t.d.b/2)}function O5t(e,t){return zi(e.g.c+e.g.b/2,t.g.c+t.g.b/2)}function nLe(e,t,n){n.a?ts(e,t.b-e.f/2):es(e,t.a-e.g/2)}function iLe(e,t,n,i){this.a=e,this.b=t,this.c=n,this.d=i}function rLe(e,t,n,i){this.a=e,this.b=t,this.c=n,this.d=i}function kg(e,t,n,i){this.e=e,this.a=t,this.c=n,this.d=i}function oLe(e,t,n,i){this.a=e,this.c=t,this.d=n,this.b=i}function cLe(e,t,n,i){Du(),QFe.call(this,t,n,i),this.a=e}function sLe(e,t,n,i){Du(),QFe.call(this,t,n,i),this.a=e}function uLe(e,t){this.a=e,N3t.call(this,e,c(e.d,15).Zc(t))}function GB(e){this.f=e,this.c=this.f.e,e.f>0&&yVe(this)}function aLe(e,t,n,i){this.b=e,this.c=i,DF.call(this,t,n)}function lLe(e){return Lt(e.b=0&&rt(e.substr(n,t.length),t)}function p1(e,t,n,i,r,o,u){return new p$(e.e,t,n,i,r,o,u)}function ILe(e,t,n,i,r,o){this.a=e,H$.call(this,t,n,i,r,o)}function TLe(e,t,n,i,r,o){this.a=e,H$.call(this,t,n,i,r,o)}function jLe(e,t){this.g=e,this.d=U(G(nh,1),Ed,10,0,[t])}function ud(e,t){this.e=e,this.a=xt,this.b=QWe(t),this.c=t}function ALe(e,t){i8.call(this),Gie(this),this.a=e,this.c=t}function BC(e,t,n,i){vi(e.c[t.g],n.g,i),vi(e.c[n.g],t.g,i)}function JB(e,t,n,i){vi(e.c[t.g],t.g,n),vi(e.b[t.g],t.g,i)}function Z5t(){return WC(),U(G(Ybe,1),_e,376,0,[rW,pj])}function e6t(){return eI(),U(G(K1e,1),_e,479,0,[$1e,mR])}function t6t(){return uI(),U(G(F1e,1),_e,419,0,[pR,N1e])}function n6t(){return gO(),U(G(A1e,1),_e,422,0,[j1e,oU])}function i6t(){return iO(),U(G(ege,1),_e,420,0,[yU,Z1e])}function r6t(){return rI(),U(G(Vbe,1),_e,421,0,[tW,nW])}function o6t(){return F5(),U(G(Ust,1),_e,523,0,[xP,RP])}function c6t(){return cl(),U(G(wut,1),_e,520,0,[Vw,z1])}function s6t(){return gf(),U(G(eut,1),_e,516,0,[ip,jd])}function u6t(){return Al(),U(G(nut,1),_e,515,0,[yb,Wl])}function a6t(){return s0(),U(G(Put,1),_e,455,0,[V1,$v])}function l6t(){return Z8(),U(G(v0e,1),_e,425,0,[vW,m0e])}function f6t(){return Y8(),U(G(w0e,1),_e,480,0,[mW,p0e])}function h6t(){return $O(),U(G(y0e,1),_e,495,0,[cx,I4])}function d6t(){return pO(),U(G(E0e,1),_e,426,0,[_0e,SW])}function g6t(){return mI(),U(G(Mpe,1),_e,429,0,[bx,Ppe])}function b6t(){return YC(),U(G(ipe,1),_e,430,0,[DW,dx])}function p6t(){return p7(),U(G(qhe,1),_e,428,0,[vG,Khe])}function w6t(){return EO(),U(G(zhe,1),_e,427,0,[Hhe,yG])}function m6t(){return SO(),U(G(mde,1),_e,424,0,[OG,Bk])}function v6t(){return G_(),U(G(prt,1),_e,511,0,[ZT,zG])}function z8(e,t,n,i){return n>=0?e.jh(t,n,i):e.Sg(null,n,i)}function QB(e){return e.b.b==0?e.a.$e():lB(e.b)}function y6t(e){if(e.p!=5)throw V(new hs);return tn(e.f)}function _6t(e){if(e.p!=5)throw V(new hs);return tn(e.k)}function $ne(e){return le(e.a)===le((Z$(),gY))&&EKt(e),e.a}function OLe(e){this.a=c(nn(e),271),this.b=(st(),new kee(e))}function DLe(e,t){Kmt(this,new $e(e.a,e.b)),qmt(this,AC(t))}function s0(){s0=Z,V1=new WZ(j2,0),$v=new WZ(A2,1)}function gf(){gf=Z,ip=new GZ(A2,0),jd=new GZ(j2,1)}function u0(){Ovt.call(this,new Fy(Xp(12))),jee(!0),this.a=2}function ZB(e,t,n){Ln(),Lb.call(this,e),this.b=t,this.a=n}function Kne(e,t,n){Du(),HA.call(this,t),this.a=e,this.b=n}function kLe(e){i8.call(this),Gie(this),this.a=e,this.c=!0}function RLe(e){var t;t=e.c.d.b,e.b=t,e.a=e.c.d,t.a=e.c.d.b=e}function V8(e){var t;TIt(e.a),V7e(e.a),t=new BA(e.a),poe(t)}function E6t(e,t){HWe(e,!0),Zc(e.e.wf(),new Pte(e,!0,t))}function G8(e,t){return dFe(t),MIt(e,oe(Qt,_n,25,t,15,1),t)}function S6t(e,t){return t2(),e==yi(Uf(t))||e==yi(M1(t))}function mc(e,t){return t==null?Uo(Po(e.f,null)):US(e.g,t)}function P6t(e){return e.b==0?null:(Lt(e.b!=0),Fu(e,e.a.a))}function xi(e){return Math.max(Math.min(e,Fn),-2147483648)|0}function M6t(e,t){var n=aG[e.charCodeAt(0)];return n??e}function U8(e,t){return B8(e,"set1"),B8(t,"set2"),new A8e(e,t)}function C6t(e,t){var n;return n=yIt(e.f,t),Wn(t8(n),e.f.d)}function D5(e,t){var n,i;return n=t,i=new Er,OXe(e,n,i),i.d}function e$(e,t,n,i){var r;r=new _ke,t.a[n.g]=r,Xy(e.b,i,r)}function qne(e,t,n){var i;i=e.Yg(t),i>=0?e.sh(i,n):Ose(e,t,n)}function Lm(e,t,n){X8(),e&&Kn(fY,e,t),e&&Kn(Gj,e,n)}function xLe(e,t,n){this.i=new Se,this.b=e,this.g=t,this.a=n}function W8(e,t,n){this.c=new Se,this.e=e,this.f=t,this.b=n}function Hne(e,t,n){this.a=new Se,this.e=e,this.f=t,this.c=n}function LLe(e,t){V9(this),this.f=t,this.g=e,F8(this),this._d()}function $C(e,t){var n;n=e.q.getHours(),e.q.setDate(t),_6(e,n)}function NLe(e,t){var n;for(nn(t),n=e.a;n;n=n.c)t.Od(n.g,n.i)}function FLe(e){var t;return t=new i9(Xp(e.length)),Rre(t,e),t}function I6t(e){function t(){}return t.prototype=e||{},new t}function T6t(e,t){return dqe(e,t)?(fKe(e),!0):!1}function Ch(e,t){if(t==null)throw V(new AS);return M9t(e,t)}function j6t(e){if(e.qe())return null;var t=e.n;return Ek[t]}function KC(e){return e.Db>>16!=3?null:c(e.Cb,33)}function jl(e){return e.Db>>16!=9?null:c(e.Cb,33)}function BLe(e){return e.Db>>16!=6?null:c(e.Cb,79)}function $Le(e){return e.Db>>16!=7?null:c(e.Cb,235)}function KLe(e){return e.Db>>16!=7?null:c(e.Cb,160)}function yi(e){return e.Db>>16!=11?null:c(e.Cb,33)}function qLe(e,t){var n;return n=e.Yg(t),n>=0?e.lh(n):jq(e,t)}function HLe(e,t){var n;return n=new Wte(t),zVe(n,e),new ps(n)}function zne(e){var t;return t=e.d,t=e.si(e.f),on(e,t),t.Ob()}function zLe(e,t){return e.b+=t.b,e.c+=t.c,e.d+=t.d,e.a+=t.a,e}function t$(e,t){return g.Math.abs(e)0}function VLe(){this.a=new Eh,this.e=new er,this.g=0,this.i=0}function GLe(e){this.a=e,this.b=oe(zst,we,1944,e.e.length,0,2)}function n$(e,t,n){var i;i=kqe(e,t,n),e.b=new BO(i.c.length)}function Al(){Al=Z,yb=new VZ(uz,0),Wl=new VZ("UP",1)}function Y8(){Y8=Z,mW=new YZ(cZe,0),p0e=new YZ("FAN",1)}function X8(){X8=Z,fY=new en,Gj=new en,Xyt(cnt,new E6e)}function O6t(e){if(e.p!=0)throw V(new hs);return s5(e.f,0)}function D6t(e){if(e.p!=0)throw V(new hs);return s5(e.k,0)}function ULe(e){return e.Db>>16!=3?null:c(e.Cb,147)}function j_(e){return e.Db>>16!=6?null:c(e.Cb,235)}function zp(e){return e.Db>>16!=17?null:c(e.Cb,26)}function WLe(e,t){var n=e.a=e.a||[];return n[t]||(n[t]=e.le(t))}function k6t(e,t){var n;return n=e.a.get(t),n??new Array}function R6t(e,t){var n;n=e.q.getHours(),e.q.setMonth(t),_6(e,n)}function bo(e,t,n){return t==null?Kc(e.f,null,n):_0(e.g,t,n)}function k5(e,t,n,i,r,o){return new Ah(e.e,t,e.aj(),n,i,r,o)}function qC(e,t,n){return e.a=fu(e.a,0,t)+(""+n)+wC(e.a,t),e}function x6t(e,t,n){return Ee(e.a,(k8(),ZK(t,n),new Vb(t,n))),e}function Vne(e){return Oee(e.c),e.e=e.a=e.c,e.c=e.c.c,++e.d,e.a.f}function YLe(e){return Oee(e.e),e.c=e.a=e.e,e.e=e.e.e,--e.d,e.a.f}function br(e,t){e.d&&Jc(e.d.e,e),e.d=t,e.d&&Ee(e.d.e,e)}function Rr(e,t){e.c&&Jc(e.c.g,e),e.c=t,e.c&&Ee(e.c.g,e)}function po(e,t){e.c&&Jc(e.c.a,e),e.c=t,e.c&&Ee(e.c.a,e)}function Bo(e,t){e.i&&Jc(e.i.j,e),e.i=t,e.i&&Ee(e.i.j,e)}function XLe(e,t,n){this.a=t,this.c=e,this.b=(nn(n),new ps(n))}function JLe(e,t,n){this.a=t,this.c=e,this.b=(nn(n),new ps(n))}function QLe(e,t){this.a=e,this.c=Wo(this.a),this.b=new H8(t)}function L6t(e){var t;return Wg(e),t=new er,si(e,new CIe(t))}function Vp(e,t){if(e<0||e>t)throw V(new ho(Xue+e+Jue+t))}function Gne(e,t){return qRe(e.a,t)?pne(e,c(t,22).g,null):null}function N6t(e){return vK(),Pt(),c(e.a,81).d.e!=0}function ZLe(){ZLe=Z,Vtt=vn((YA(),U(G(ztt,1),_e,538,0,[sG])))}function eNe(){eNe=Z,Ost=Cs(new tr,(Hr(),Io),(Jr(),ej))}function Une(){Une=Z,Dst=Cs(new tr,(Hr(),Io),(Jr(),ej))}function tNe(){tNe=Z,Rst=Cs(new tr,(Hr(),Io),(Jr(),ej))}function nNe(){nNe=Z,Yst=Nn(new tr,(Hr(),Io),(Jr(),dP))}function hu(){hu=Z,Qst=Nn(new tr,(Hr(),Io),(Jr(),dP))}function iNe(){iNe=Z,Zst=Nn(new tr,(Hr(),Io),(Jr(),dP))}function i$(){i$=Z,rut=Nn(new tr,(Hr(),Io),(Jr(),dP))}function rNe(){rNe=Z,zut=Cs(new tr,(dE(),NP),(d6(),aW))}function xg(e,t,n,i){this.c=e,this.d=i,o$(this,t),c$(this,n)}function i2(e){this.c=new wi,this.b=e.b,this.d=e.c,this.a=e.a}function r$(e){this.a=g.Math.cos(e),this.b=g.Math.sin(e)}function o$(e,t){e.a&&Jc(e.a.k,e),e.a=t,e.a&&Ee(e.a.k,e)}function c$(e,t){e.b&&Jc(e.b.f,e),e.b=t,e.b&&Ee(e.b.f,e)}function oNe(e,t){GSt(e,e.b,e.c),c(e.b.b,65),t&&c(t.b,65).b}function F6t(e,t){aoe(e,t),Q(e.Cb,88)&&lw(Ls(c(e.Cb,88)),2)}function s$(e,t){Q(e.Cb,88)&&lw(Ls(c(e.Cb,88)),4),kc(e,t)}function J8(e,t){Q(e.Cb,179)&&(c(e.Cb,179).tb=null),kc(e,t)}function vc(e,t){return Wr(),N$(t)?new d8(t,e):new pC(t,e)}function B6t(e,t){var n,i;n=t.c,i=n!=null,i&&Zy(e,new qp(t.c))}function cNe(e){var t,n;return n=(r_(),t=new Nb,t),B_(n,e),n}function sNe(e){var t,n;return n=(r_(),t=new Nb,t),B_(n,e),n}function uNe(e,t){var n;return n=new ta(e),t.c[t.c.length]=n,n}function aNe(e,t){var n;return n=c(tw(n2(e.a),t),14),n?n.gc():0}function lNe(e){var t;return Wg(e),t=(xm(),xm(),The),CO(e,t)}function fNe(e){for(var t;;)if(t=e.Pb(),!e.Ob())return t}function Wne(e,t){jvt.call(this,new Fy(Xp(e))),pu(t,PJe),this.a=t}function Hf(e,t,n){mHe(t,n,e.gc()),this.c=e,this.a=t,this.b=n-t}function hNe(e,t,n){var i;mHe(t,n,e.c.length),i=n-t,mZ(e.c,t,i)}function $6t(e,t){aDe(e,tn(Xi(h1(t,24),wD)),tn(Xi(t,wD)))}function pt(e,t){if(e<0||e>=t)throw V(new ho(Xue+e+Jue+t))}function fn(e,t){if(e<0||e>=t)throw V(new cZ(Xue+e+Jue+t))}function bt(e,t){this.b=(yt(e),e),this.a=(t&vw)==0?t|64|mf:t}function dNe(e){z7e(this),PAe(this.a,Dre(g.Math.max(8,e))<<1)}function Ol(e){return Ko(U(G(ir,1),we,8,0,[e.i.n,e.n,e.a]))}function K6t(){return Fl(),U(G(Hs,1),_e,132,0,[Fhe,Su,Tw])}function q6t(){return al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])}function H6t(){return Ts(),U(G(jnt,1),_e,461,0,[jf,N1,qa])}function z6t(){return Qc(),U(G(Ont,1),_e,462,0,[pl,F1,Ha])}function V6t(){return y0(),U(G(Lde,1),_e,423,0,[Mv,xde,KG])}function G6t(){return $5(),U(G(Dde,1),_e,379,0,[xG,RG,LG])}function U6t(){return X5(),U(G(xbe,1),_e,378,0,[YU,Rbe,VR])}function W6t(){return f2(),U(G(D1e,1),_e,314,0,[H2,nj,O1e])}function Y6t(){return DO(),U(G(R1e,1),_e,337,0,[k1e,bR,cU])}function X6t(){return zg(),U(G(Vrt,1),_e,450,0,[aU,d4,jv])}function J6t(){return m0(),U(G(XG,1),_e,361,0,[U0,$1,G0])}function Q6t(){return Oh(),U(G(Zrt,1),_e,303,0,[rj,Ov,z2])}function Z6t(){return J_(),U(G(vU,1),_e,292,0,[wU,mU,ij])}function ePt(){return Zr(),U(G(Pst,1),_e,452,0,[OP,Os,Fc])}function tPt(){return kh(),U(G(zbe,1),_e,339,0,[H1,Hbe,eW])}function nPt(){return VO(),U(G(Wbe,1),_e,375,0,[Gbe,iW,Ube])}function iPt(){return XO(),U(G(t0e,1),_e,377,0,[sW,M4,zw])}function rPt(){return rE(),U(G(Jbe,1),_e,336,0,[oW,Xbe,DP])}function oPt(){return HO(),U(G(e0e,1),_e,338,0,[Zbe,cW,Qbe])}function cPt(){return w0(),U(G(qst,1),_e,454,0,[wj,kP,YR])}function sPt(){return s7(),U(G(Yut,1),_e,442,0,[EW,yW,_W])}function uPt(){return EI(),U(G(M0e,1),_e,380,0,[sx,S0e,P0e])}function aPt(){return c7(),U(G(H0e,1),_e,381,0,[q0e,TW,K0e])}function lPt(){return zO(),U(G(B0e,1),_e,293,0,[IW,F0e,N0e])}function fPt(){return TI(),U(G(jW,1),_e,437,0,[lx,fx,hx])}function hPt(){return Rh(),U(G(Dwe,1),_e,334,0,[Mx,kd,XP])}function dPt(){return xl(),U(G(ywe,1),_e,272,0,[A4,Ww,O4])}function gPt(e,t){return xxt(e,t,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function bPt(e,t,n){var i;return i=P6(e,t,!1),i.b<=t&&i.a<=n}function gNe(e,t,n){var i;i=new TSe,i.b=t,i.a=n,++t.b,Ee(e.d,i)}function pPt(e,t){var n;return n=(yt(e),e).g,Hee(!!n),yt(t),n(t)}function Yne(e,t){var n,i;return i=__(e,t),n=e.a.Zc(i),new j8e(e,n)}function wPt(e){return e.Db>>16!=6?null:c(Dq(e),235)}function mPt(e){if(e.p!=2)throw V(new hs);return tn(e.f)&Ni}function vPt(e){if(e.p!=2)throw V(new hs);return tn(e.k)&Ni}function yPt(e){return e.a==(k_(),Hx)&&tvt(e,Jxt(e.g,e.b)),e.a}function r2(e){return e.d==(k_(),Hx)&&ivt(e,zFt(e.g,e.b)),e.d}function K(e){return Lt(e.ai?1:0}function bNe(e,t){var n,i;return n=D$(t),i=n,c(Bt(e.c,i),19).a}function pNe(e,t){var n;for(n=e+"";n.length0&&e.a[--e.d]==0;);e.a[e.d++]==0&&(e.e=0)}function xNe(e){return e.a?e.e.length==0?e.a.a:e.a.a+(""+e.e):e.c}function OPt(e){return!!e.a&&Ns(e.a.a).i!=0&&!(e.b&&XK(e.b))}function DPt(e){return!!e.u&&dc(e.u.a).i!=0&&!(e.n&&YK(e.n))}function LNe(e){return gB(e.e.Hd().gc()*e.c.Hd().gc(),16,new kCe(e))}function kPt(e,t){return hxe(ns(e.q.getTime()),ns(t.q.getTime()))}function bf(e){return c(Bl(e,oe(qG,Pz,17,e.c.length,0,1)),474)}function HC(e){return c(Bl(e,oe(nh,Ed,10,e.c.length,0,1)),193)}function RPt(e){return hu(),!Kr(e)&&!(!Kr(e)&&e.c.i.c==e.d.i.c)}function NNe(e,t,n){var i;i=(nn(e),new ps(e)),lOt(new XLe(i,t,n))}function zC(e,t,n){var i;i=(nn(e),new ps(e)),fOt(new JLe(i,t,n))}function FNe(e,t){var n;return n=1-t,e.a[n]=FO(e.a[n],n),FO(e,t)}function BNe(e,t){var n;e.e=new ZQ,n=dw(t),cr(n,e.c),DWe(e,n,0)}function pr(e,t,n,i){var r;r=new BJ,r.a=t,r.b=n,r.c=i,Cn(e.a,r)}function je(e,t,n,i){var r;r=new BJ,r.a=t,r.b=n,r.c=i,Cn(e.b,r)}function xa(e){var t,n,i;return t=new vxe,n=Jq(t,e),vqt(t),i=n,i}function tie(){var e,t,n;return t=(n=(e=new Nb,e),n),Ee(wme,t),t}function eO(e){return e.j.c=oe(xt,xe,1,0,5,1),Dne(e.c),g5t(e.a),e}function Nm(e){return HS(),Q(e.g,10)?c(e.g,10):null}function xPt(e){return Rm(e).dc()?!1:(R2t(e,new ae),!0)}function LPt(e){if(!("stack"in e))try{throw e}catch{}return e}function VC(e,t){if(e<0||e>=t)throw V(new ho(Ykt(e,t)));return e}function $Ne(e,t,n){if(e<0||tn)throw V(new ho(ykt(e,t,n)))}function f$(e,t){if(Yi(e.a,t),t.d)throw V(new No(GJe));t.d=e}function h$(e,t){if(t.$modCount!=e.$modCount)throw V(new Ou)}function KNe(e,t){return Q(t,42)?tq(e.a,c(t,42)):!1}function qNe(e,t){return Q(t,42)?tq(e.a,c(t,42)):!1}function HNe(e,t){return Q(t,42)?tq(e.a,c(t,42)):!1}function NPt(e,t){return e.a<=e.b?(t.ud(e.a++),!0):!1}function l0(e){var t;return Oo(e)?(t=e,t==-0?0:t):GCt(e)}function tO(e){var t;return b1(e),t=new Xn,Em(e.a,new PIe(t)),t}function zNe(e){var t;return b1(e),t=new gt,Em(e.a,new SIe(t)),t}function _r(e,t){this.a=e,CS.call(this,e),Vp(t,e.gc()),this.b=t}function nie(e){this.e=e,this.b=this.e.a.entries(),this.a=new Array}function FPt(e){return gB(e.e.Hd().gc()*e.c.Hd().gc(),273,new DCe(e))}function nO(e){return new Dc((pu(e,MH),PO(xr(xr(5,e),e/10|0))))}function VNe(e){return c(Bl(e,oe(drt,SQe,11,e.c.length,0,1)),1943)}function BPt(e,t,n){return n.f.c.length>0?vne(e.a,t,n):vne(e.b,t,n)}function $Pt(e,t,n){e.d&&Jc(e.d.e,e),e.d=t,e.d&&Bp(e.d.e,n,e)}function d$(e,t){kHt(t,e),Fte(e.d),Fte(c(B(e,(Oe(),FR)),207))}function x5(e,t){DHt(t,e),Nte(e.d),Nte(c(B(e,(Oe(),FR)),207))}function f0(e,t){var n,i;return n=Ch(e,t),i=null,n&&(i=n.fe()),i}function A_(e,t){var n,i;return n=Yp(e,t),i=null,n&&(i=n.ie()),i}function L5(e,t){var n,i;return n=Ch(e,t),i=null,n&&(i=n.ie()),i}function Ih(e,t){var n,i;return n=Ch(e,t),i=null,n&&(i=Uce(n)),i}function KPt(e,t,n){var i;return i=fE(n),Z7(e.g,i,t),Z7(e.i,t,n),t}function qPt(e,t,n){var i;i=p9t();try{return U3t(e,t,n)}finally{ZPt(i)}}function GNe(e){var t;t=e.Wg(),this.a=Q(t,69)?c(t,69).Zh():t.Kc()}function tr(){c9e.call(this),this.j.c=oe(xt,xe,1,0,5,1),this.a=-1}function iie(e,t,n,i){this.d=e,this.n=t,this.g=n,this.o=i,this.p=-1}function UNe(e,t,n,i){this.e=i,this.d=null,this.c=e,this.a=t,this.b=n}function rie(e,t,n){this.d=new xTe(this),this.e=e,this.i=t,this.f=n}function iO(){iO=Z,yU=new KZ(FE,0),Z1e=new KZ("TOP_LEFT",1)}function WNe(){WNe=Z,i0e=Hxe(Ce(1),Ce(4)),n0e=Hxe(Ce(1),Ce(2))}function YNe(){YNe=Z,Bat=vn((d9(),U(G(Fat,1),_e,551,0,[OW])))}function XNe(){XNe=Z,Nat=vn((h9(),U(G(npe,1),_e,482,0,[AW])))}function JNe(){JNe=Z,ilt=vn((zS(),U(G(Spe,1),_e,530,0,[Sj])))}function QNe(){QNe=Z,ait=vn((l9(),U(G(fde,1),_e,481,0,[CG])))}function HPt(){return v0(),U(G(nit,1),_e,406,0,[zT,HT,PG,MG])}function zPt(){return wO(),U(G(Ak,1),_e,297,0,[pG,Rhe,xhe,Lhe])}function VPt(){return c6(),U(G(sit,1),_e,394,0,[YT,xk,Lk,XT])}function GPt(){return m2(),U(G(rit,1),_e,323,0,[GT,VT,UT,WT])}function UPt(){return Q_(),U(G(trt,1),_e,405,0,[V0,Ow,Aw,Pv])}function WPt(){return YO(),U(G(yrt,1),_e,360,0,[WG,uR,aR,tj])}function ZNe(e,t,n,i){return Q(n,54)?new BDe(e,t,n,i):new une(e,t,n,i)}function YPt(){return Nl(),U(G(jrt,1),_e,411,0,[q2,u4,a4,YG])}function XPt(e){var t;return e.j==(Ie(),Yt)&&(t=_Ue(e),bs(t,jt))}function JPt(e,t){var n;n=t.a,Rr(n,t.c.d),br(n,t.d.d),Qp(n.a,e.n)}function eFe(e,t){return c(Qb(P8(c(Vn(e.k,t),15).Oc(),Cv)),113)}function tFe(e,t){return c(Qb(M8(c(Vn(e.k,t),15).Oc(),Cv)),113)}function QPt(e){return new bt(YIt(c(e.a.dd(),14).gc(),e.a.cd()),16)}function O_(e){return Q(e,14)?c(e,14).dc():!e.Kc().Ob()}function o2(e){return HS(),Q(e.g,145)?c(e.g,145):null}function nFe(e){if(e.e.g!=e.b)throw V(new Ou);return!!e.c&&e.d>0}function Pn(e){return Lt(e.b!=e.d.c),e.c=e.b,e.b=e.b.a,++e.a,e.c.c}function oie(e,t){yt(t),vi(e.a,e.c,t),e.c=e.c+1&e.a.length-1,iVe(e)}function w1(e,t){yt(t),e.b=e.b-1&e.a.length-1,vi(e.a,e.b,t),iVe(e)}function iFe(e,t){var n;for(n=e.j.c.length;n0&&bc(e.g,0,t,0,e.i),t}function sFe(e,t){p9();var n;return n=c(Bt(Fx,e),55),!n||n.wj(t)}function fMt(e){if(e.p!=1)throw V(new hs);return tn(e.f)<<24>>24}function hMt(e){if(e.p!=1)throw V(new hs);return tn(e.k)<<24>>24}function dMt(e){if(e.p!=7)throw V(new hs);return tn(e.k)<<16>>16}function gMt(e){if(e.p!=7)throw V(new hs);return tn(e.f)<<16>>16}function Th(e){var t;for(t=0;e.Ob();)e.Pb(),t=xr(t,1);return PO(t)}function uFe(e,t){var n;return n=new _m,e.xd(n),n.a+="..",t.yd(n),n.a}function bMt(e,t,n){var i;i=c(Bt(e.g,n),57),Ee(e.a.c,new yr(t,i))}function pMt(e,t,n){return SB(Te(Uo(Po(e.f,t))),Te(Uo(Po(e.f,n))))}function rO(e,t,n){return tD(e,t,n,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function wMt(e,t,n){return IE(e,t,n,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function mMt(e,t,n){return Kxt(e,t,n,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function uie(e,t){return e==(Dt(),Ui)&&t==Ui?4:e==Ui||t==Ui?8:32}function aFe(e,t){return le(t)===le(e)?"(this Map)":t==null?rs:Ro(t)}function vMt(e,t){return c(t==null?Uo(Po(e.f,null)):US(e.g,t),281)}function lFe(e,t,n){var i;return i=fE(n),Kn(e.b,i,t),Kn(e.c,t,n),t}function fFe(e,t){var n;for(n=t;n;)xp(e,n.i,n.j),n=yi(n);return e}function aie(e,t){var n;return n=NC(w_(new k$(e,t))),b8(new k$(e,t)),n}function zf(e,t){Wr();var n;return n=c(e,66).Mj(),ZDt(n,t),n.Ok(t)}function yMt(e,t,n,i,r){var o;o=Gxt(r,n,i),Ee(t,zkt(r,o)),xDt(e,r,t)}function hFe(e,t,n){e.i=0,e.e=0,t!=n&&(Nqe(e,t,n),Lqe(e,t,n))}function lie(e,t){var n;n=e.q.getHours(),e.q.setFullYear(t+O1),_6(e,n)}function _Mt(e,t,n){if(n){var i=n.ee();e.a[t]=i(n)}else delete e.a[t]}function g$(e,t,n){if(n){var i=n.ee();n=i(n)}else n=void 0;e.a[t]=n}function dFe(e){if(e<0)throw V(new m9e("Negative array size: "+e))}function dc(e){return e.n||(Ls(e),e.n=new GRe(e,oo,e),So(e)),e.n}function N5(e){return Lt(e.a=0&&e.a[n]===t[n];n--);return n<0}function mFe(e,t){iE();var n;return n=e.j.g-t.j.g,n!=0?n:0}function vFe(e,t){return yt(t),e.a!=null?cSt(t.Kb(e.a)):jk}function oO(e){var t;return e?new Wte(e):(t=new Eh,Q$(t,e),t)}function gu(e,t){var n;return t.b.Kb(f$e(e,t.c.Ee(),(n=new TIe(t),n)))}function cO(e){Oce(),aDe(this,tn(Xi(h1(e,24),wD)),tn(Xi(e,wD)))}function yFe(){yFe=Z,Snt=vn((p7(),U(G(qhe,1),_e,428,0,[vG,Khe])))}function _Fe(){_Fe=Z,Pnt=vn((EO(),U(G(zhe,1),_e,427,0,[Hhe,yG])))}function EFe(){EFe=Z,Cit=vn((SO(),U(G(mde,1),_e,424,0,[OG,Bk])))}function SFe(){SFe=Z,wrt=vn((G_(),U(G(prt,1),_e,511,0,[ZT,zG])))}function PFe(){PFe=Z,zrt=vn((uI(),U(G(F1e,1),_e,419,0,[pR,N1e])))}function MFe(){MFe=Z,Wrt=vn((eI(),U(G(K1e,1),_e,479,0,[$1e,mR])))}function CFe(){CFe=Z,Ist=vn((WC(),U(G(Ybe,1),_e,376,0,[rW,pj])))}function IFe(){IFe=Z,Sst=vn((rI(),U(G(Vbe,1),_e,421,0,[tW,nW])))}function TFe(){TFe=Z,$rt=vn((gO(),U(G(A1e,1),_e,422,0,[j1e,oU])))}function jFe(){jFe=Z,tot=vn((iO(),U(G(ege,1),_e,420,0,[yU,Z1e])))}function AFe(){AFe=Z,mut=vn((cl(),U(G(wut,1),_e,520,0,[Vw,z1])))}function OFe(){OFe=Z,Wst=vn((F5(),U(G(Ust,1),_e,523,0,[xP,RP])))}function DFe(){DFe=Z,tut=vn((gf(),U(G(eut,1),_e,516,0,[ip,jd])))}function kFe(){kFe=Z,iut=vn((Al(),U(G(nut,1),_e,515,0,[yb,Wl])))}function RFe(){RFe=Z,Mut=vn((s0(),U(G(Put,1),_e,455,0,[V1,$v])))}function xFe(){xFe=Z,Hut=vn((Z8(),U(G(v0e,1),_e,425,0,[vW,m0e])))}function LFe(){LFe=Z,Wut=vn(($O(),U(G(y0e,1),_e,495,0,[cx,I4])))}function NFe(){NFe=Z,qut=vn((Y8(),U(G(w0e,1),_e,480,0,[mW,p0e])))}function FFe(){FFe=Z,Jut=vn((pO(),U(G(E0e,1),_e,426,0,[_0e,SW])))}function BFe(){BFe=Z,rlt=vn((mI(),U(G(Mpe,1),_e,429,0,[bx,Ppe])))}function $Fe(){$Fe=Z,$at=vn((YC(),U(G(ipe,1),_e,430,0,[DW,dx])))}function F5(){F5=Z,xP=new zZ("UPPER",0),RP=new zZ("LOWER",1)}function MMt(e,t){var n;n=new xy,Rg(n,"x",t.a),Rg(n,"y",t.b),Zy(e,n)}function CMt(e,t){var n;n=new xy,Rg(n,"x",t.a),Rg(n,"y",t.b),Zy(e,n)}function IMt(e,t){var n,i;i=!1;do n=Tqe(e,t),i=i|n;while(n);return i}function die(e,t){var n,i;for(n=t,i=0;n>0;)i+=e.a[n],n-=n&-n;return i}function KFe(e,t){var n;for(n=t;n;)xp(e,-n.i,-n.j),n=yi(n);return e}function Mr(e,t){var n,i;for(yt(t),i=e.Kc();i.Ob();)n=i.Pb(),t.td(n)}function qFe(e,t){var n;return n=t.cd(),new Vb(n,e.e.pc(n,c(t.dd(),14)))}function Ri(e,t,n,i){var r;r=new ii,r.c=t,r.b=n,r.a=i,i.b=n.a=r,++e.b}function Lu(e,t,n){var i;return i=(pt(t,e.c.length),e.c[t]),e.c[t]=n,i}function TMt(e,t,n){return c(t==null?Kc(e.f,null,n):_0(e.g,t,n),281)}function m$(e){return e.c&&e.d?Xne(e.c)+"->"+Xne(e.d):"e_"+Xb(e)}function D_(e,t){return(Wg(e),$S(new ht(e,new Nie(t,e.a)))).sd(i4)}function jMt(){return Hr(),U(G(kde,1),_e,356,0,[Af,B1,Hc,Pc,Io])}function AMt(){return Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])}function OMt(e){return ZA(),function(){return qPt(e,this,arguments)}}function DMt(){return Date.now?Date.now():new Date().getTime()}function Kr(e){return!e.c||!e.d?!1:!!e.c.i&&e.c.i==e.d.i}function HFe(e){if(!e.c.Sb())throw V(new tc);return e.a=!0,e.c.Ub()}function GC(e){e.i=0,rC(e.b,null),rC(e.c,null),e.a=null,e.e=null,++e.g}function gie(e){Byt.call(this,e==null?rs:Ro(e),Q(e,78)?c(e,78):null)}function zFe(e){bJe(),gAe(this),this.a=new wi,Kre(this,e),Cn(this.a,e)}function VFe(){NF(this),this.b=new $e(Ii,Ii),this.a=new $e($i,$i)}function GFe(e,t){this.c=0,this.b=t,y7e.call(this,e,17493),this.a=this.c}function v$(e){sO(),!Vl&&(this.c=e,this.e=!0,this.a=new Se)}function sO(){sO=Z,Vl=!0,dnt=!1,gnt=!1,pnt=!1,bnt=!1}function bie(e,t){return Q(t,149)?rt(e.c,c(t,149).c):!1}function pie(e,t){var n;return n=0,e&&(n+=e.f.a/2),t&&(n+=t.f.a/2),n}function y$(e,t){var n;return n=c(h0(e.d,t),23),n||c(h0(e.e,t),23)}function UFe(e){this.b=e,$t.call(this,e),this.a=c(vt(this.b.a,4),126)}function WFe(e){this.b=e,Gy.call(this,e),this.a=c(vt(this.b.a,4),126)}function Ls(e){return e.t||(e.t=new rAe(e),e6(new w9e(e),0,e.t)),e.t}function kMt(){return eo(),U(G(WP,1),_e,103,0,[ih,Va,ga,Vh,Gh])}function RMt(){return Um(),U(G(QP,1),_e,249,0,[W1,Nj,kwe,JP,Rwe])}function xMt(){return fl(),U(G(Dd,1),_e,175,0,[Tt,ar,kf,_b,Od])}function LMt(){return qI(),U(G(spe,1),_e,316,0,[rpe,kW,cpe,RW,ope])}function NMt(){return s6(),U(G(Nbe,1),_e,315,0,[Lbe,QU,ZU,jP,AP])}function FMt(){return Qg(),U(G(L1e,1),_e,335,0,[sU,x1e,uU,pP,bP])}function BMt(){return PE(),U(G(Rat,1),_e,355,0,[Kv,e3,HP,qP,zP])}function $Mt(){return Zm(),U(G(Ort,1),_e,363,0,[fR,dR,gR,hR,lR])}function KMt(){return Ku(),U(G(dge,1),_e,163,0,[aj,_P,K1,EP,xw])}function k_(){k_=Z;var e,t;qx=(r_(),t=new GA,t),Hx=(e=new LN,e)}function YFe(e){var t;return e.c||(t=e.r,Q(t,88)&&(e.c=c(t,26))),e.c}function qMt(e){return e.e=3,e.d=e.Yb(),e.e!=2?(e.e=0,!0):!1}function _$(e){var t,n,i;return t=e&qs,n=e>>22&qs,i=e<0?Kh:0,Bc(t,n,i)}function HMt(e){var t,n,i,r;for(n=e,i=0,r=n.length;i0?UHe(e,t):bWe(e,-t)}function wie(e,t){return t==0||e.e==0?e:t>0?bWe(e,t):UHe(e,-t)}function rn(e){if(dn(e))return e.c=e.a,e.a.Pb();throw V(new tc)}function JFe(e){var t,n;return t=e.c.i,n=e.d.i,t.k==(Dt(),Bi)&&n.k==Bi}function E$(e){var t;return t=new c0,Mo(t,e),pe(t,(Oe(),yo),null),t}function S$(e,t,n){var i;return i=e.Yg(t),i>=0?e._g(i,n,!0):j0(e,t,n)}function mie(e,t,n,i){var r;for(r=0;rt)throw V(new ho(ese(e,t,"index")));return e}function P$(e,t,n,i){var r;return r=oe(Qt,_n,25,t,15,1),nDt(r,e,t,n,i),r}function VMt(e,t){var n;n=e.q.getHours()+(t/60|0),e.q.setMinutes(t),_6(e,n)}function GMt(e,t){return g.Math.min(m1(t.a,e.d.d.c),m1(t.b,e.d.d.c))}function u2(e,t){return fr(t)?t==null?wse(e.f,null):lqe(e.g,t):wse(e.f,t)}function Rl(e){this.c=e,this.a=new q(this.c.a),this.b=new q(this.c.b)}function uO(){this.e=new Se,this.c=new Se,this.d=new Se,this.b=new Se}function nBe(){this.g=new LQ,this.b=new LQ,this.a=new Se,this.k=new Se}function iBe(e,t,n){this.a=e,this.c=t,this.d=n,Ee(t.e,this),Ee(n.b,this)}function rBe(e,t){v7e.call(this,t.rd(),t.qd()&-6),yt(e),this.a=e,this.b=t}function oBe(e,t){y7e.call(this,t.rd(),t.qd()&-6),yt(e),this.a=e,this.b=t}function Mie(e,t){DF.call(this,t.rd(),t.qd()&-6),yt(e),this.a=e,this.b=t}function aO(e,t,n){this.a=e,this.b=t,this.c=n,Ee(e.t,this),Ee(t.i,this)}function lO(){this.b=new wi,this.a=new wi,this.b=new wi,this.a=new wi}function fO(){fO=Z,VP=new hi("org.eclipse.elk.labels.labelManager")}function cBe(){cBe=Z,P1e=new Wi("separateLayerConnections",(YO(),WG))}function cl(){cl=Z,Vw=new UZ("REGULAR",0),z1=new UZ("CRITICAL",1)}function WC(){WC=Z,rW=new HZ("STACKED",0),pj=new HZ("SEQUENCED",1)}function YC(){YC=Z,DW=new ZZ("FIXED",0),dx=new ZZ("CENTER_NODE",1)}function UMt(e,t){var n;return n=JKt(e,t),e.b=new BO(n.c.length),aKt(e,n)}function WMt(e,t,n){var i;return++e.e,--e.f,i=c(e.d[t].$c(n),133),i.dd()}function sBe(e){var t;return e.a||(t=e.r,Q(t,148)&&(e.a=c(t,148))),e.a}function Cie(e){if(e.a){if(e.e)return Cie(e.e)}else return e;return null}function YMt(e,t){return e.pt.p?-1:0}function hO(e,t){return yt(t),e.c=0,"Initial capacity must not be negative")}function lBe(){lBe=Z,Tnt=vn((al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])))}function fBe(){fBe=Z,Ant=vn((Ts(),U(G(jnt,1),_e,461,0,[jf,N1,qa])))}function hBe(){hBe=Z,Dnt=vn((Qc(),U(G(Ont,1),_e,462,0,[pl,F1,Ha])))}function dBe(){dBe=Z,wnt=vn((Fl(),U(G(Hs,1),_e,132,0,[Fhe,Su,Tw])))}function gBe(){gBe=Z,Uit=vn(($5(),U(G(Dde,1),_e,379,0,[xG,RG,LG])))}function bBe(){bBe=Z,urt=vn((y0(),U(G(Lde,1),_e,423,0,[Mv,xde,KG])))}function pBe(){pBe=Z,Krt=vn((f2(),U(G(D1e,1),_e,314,0,[H2,nj,O1e])))}function wBe(){wBe=Z,qrt=vn((DO(),U(G(R1e,1),_e,337,0,[k1e,bR,cU])))}function mBe(){mBe=Z,Grt=vn((zg(),U(G(Vrt,1),_e,450,0,[aU,d4,jv])))}function vBe(){vBe=Z,Nrt=vn((m0(),U(G(XG,1),_e,361,0,[U0,$1,G0])))}function yBe(){yBe=Z,eot=vn((Oh(),U(G(Zrt,1),_e,303,0,[rj,Ov,z2])))}function _Be(){_Be=Z,Qrt=vn((J_(),U(G(vU,1),_e,292,0,[wU,mU,ij])))}function EBe(){EBe=Z,mst=vn((X5(),U(G(xbe,1),_e,378,0,[YU,Rbe,VR])))}function SBe(){SBe=Z,Cst=vn((VO(),U(G(Wbe,1),_e,375,0,[Gbe,iW,Ube])))}function PBe(){PBe=Z,Est=vn((kh(),U(G(zbe,1),_e,339,0,[H1,Hbe,eW])))}function MBe(){MBe=Z,Mst=vn((Zr(),U(G(Pst,1),_e,452,0,[OP,Os,Fc])))}function CBe(){CBe=Z,Ast=vn((XO(),U(G(t0e,1),_e,377,0,[sW,M4,zw])))}function IBe(){IBe=Z,Tst=vn((rE(),U(G(Jbe,1),_e,336,0,[oW,Xbe,DP])))}function TBe(){TBe=Z,jst=vn((HO(),U(G(e0e,1),_e,338,0,[Zbe,cW,Qbe])))}function jBe(){jBe=Z,Hst=vn((w0(),U(G(qst,1),_e,454,0,[wj,kP,YR])))}function ABe(){ABe=Z,Xut=vn((s7(),U(G(Yut,1),_e,442,0,[EW,yW,_W])))}function OBe(){OBe=Z,Qut=vn((EI(),U(G(M0e,1),_e,380,0,[sx,S0e,P0e])))}function DBe(){DBe=Z,bat=vn((c7(),U(G(H0e,1),_e,381,0,[q0e,TW,K0e])))}function kBe(){kBe=Z,gat=vn((zO(),U(G(B0e,1),_e,293,0,[IW,F0e,N0e])))}function RBe(){RBe=Z,Lat=vn((TI(),U(G(jW,1),_e,437,0,[lx,fx,hx])))}function xBe(){xBe=Z,Blt=vn((Rh(),U(G(Dwe,1),_e,334,0,[Mx,kd,XP])))}function LBe(){LBe=Z,xlt=vn((xl(),U(G(ywe,1),_e,272,0,[A4,Ww,O4])))}function nCt(){return wr(),U(G(xwe,1),_e,98,0,[Y1,Xl,k4,Mb,ch,Ic])}function Fg(e,t){return!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),xK(e.o,t)}function iCt(e){return!e.g&&(e.g=new kA),!e.g.d&&(e.g.d=new tAe(e)),e.g.d}function rCt(e){return!e.g&&(e.g=new kA),!e.g.a&&(e.g.a=new nAe(e)),e.g.a}function oCt(e){return!e.g&&(e.g=new kA),!e.g.b&&(e.g.b=new eAe(e)),e.g.b}function XC(e){return!e.g&&(e.g=new kA),!e.g.c&&(e.g.c=new iAe(e)),e.g.c}function cCt(e,t,n){var i,r;for(r=new X_(t,e),i=0;in||t=0?e._g(n,!0,!0):j0(e,t,!0)}function SCt(e,t){return zi(ge(Te(B(e,(ye(),J0)))),ge(Te(B(t,J0))))}function HBe(){HBe=Z,Vut=M0(M0(b9(new tr,(dE(),LP)),(d6(),ex)),lW)}function PCt(e,t,n){var i;return i=kqe(e,t,n),e.b=new BO(i.c.length),qse(e,i)}function MCt(e){if(e.b<=0)throw V(new tc);return--e.b,e.a-=e.c.c,Ce(e.a)}function CCt(e){var t;if(!e.a)throw V(new Uxe);return t=e.a,e.a=yi(e.a),t}function ICt(e){for(;!e.a;)if(!Oke(e.c,new MIe(e)))return!1;return!0}function l2(e){var t;return nn(e),Q(e,198)?(t=c(e,198),t):new zCe(e)}function TCt(e){bO(),c(e.We((kn(),Uw)),174).Fc((js(),Fj)),e.Ye(ZW,null)}function bO(){bO=Z,slt=new O5e,alt=new D5e,ult=hjt((kn(),ZW),slt,G1,alt)}function pO(){pO=Z,_0e=new QZ("LEAF_NUMBER",0),SW=new QZ("NODE_SIZE",1)}function jCt(e,t,n){e.a=t,e.c=n,e.b.a.$b(),na(e.d),e.e.a.c=oe(xt,xe,1,0,5,1)}function O$(e){e.a=oe(Qt,_n,25,e.b+1,15,1),e.c=oe(Qt,_n,25,e.b,15,1),e.d=0}function ACt(e,t){e.a.ue(t.d,e.b)>0&&(Ee(e.c,new Kte(t.c,t.d,e.d)),e.b=t.d)}function Lie(e,t){if(e.g==null||t>=e.i)throw V(new kF(t,e.i));return e.g[t]}function zBe(e,t,n){if(tE(e,n),n!=null&&!e.wj(n))throw V(new kN);return n}function VBe(e){var t;if(e.Ek())for(t=e.i-1;t>=0;--t)ee(e,t);return sie(e)}function OCt(e){var t,n;if(!e.b)return null;for(n=e.b;t=n.a[0];)n=t;return n}function DCt(e,t){var n,i;return dFe(t),n=(i=e.slice(0,t),Fie(i,e)),n.length=t,n}function L_(e,t,n,i){var r;i=(xm(),i||Ihe),r=e.slice(t,n),tse(r,e,t,n,-t,i)}function Nu(e,t,n,i,r){return t<0?j0(e,n,i):c(n,66).Nj().Pj(e,e.yh(),t,i,r)}function kCt(e){return Q(e,172)?""+c(e,172).a:e==null?null:Ro(e)}function RCt(e){return Q(e,172)?""+c(e,172).a:e==null?null:Ro(e)}function GBe(e,t){if(t.a)throw V(new No(GJe));Yi(e.a,t),t.a=e,!e.j&&(e.j=t)}function Nie(e,t){DF.call(this,t.rd(),t.qd()&-16449),yt(e),this.a=e,this.c=t}function UBe(e,t){var n,i;return i=t/e.c.Hd().gc()|0,n=t%e.c.Hd().gc(),a2(e,i,n)}function Ts(){Ts=Z,jf=new cF(j2,0),N1=new cF(FE,1),qa=new cF(A2,2)}function wO(){wO=Z,pG=new v9("All",0),Rhe=new q7e,xhe=new eDe,Lhe=new H7e}function WBe(){WBe=Z,fnt=vn((wO(),U(G(Ak,1),_e,297,0,[pG,Rhe,xhe,Lhe])))}function YBe(){YBe=Z,nrt=vn((Q_(),U(G(trt,1),_e,405,0,[V0,Ow,Aw,Pv])))}function XBe(){XBe=Z,iit=vn((v0(),U(G(nit,1),_e,406,0,[zT,HT,PG,MG])))}function JBe(){JBe=Z,oit=vn((m2(),U(G(rit,1),_e,323,0,[GT,VT,UT,WT])))}function QBe(){QBe=Z,uit=vn((c6(),U(G(sit,1),_e,394,0,[YT,xk,Lk,XT])))}function ZBe(){ZBe=Z,Cut=vn((dE(),U(G(c0e,1),_e,393,0,[ZR,LP,vj,NP])))}function e$e(){e$e=Z,_rt=vn((YO(),U(G(yrt,1),_e,360,0,[WG,uR,aR,tj])))}function t$e(){t$e=Z,dat=vn((C7(),U(G(L0e,1),_e,340,0,[CW,R0e,x0e,k0e])))}function n$e(){n$e=Z,Art=vn((Nl(),U(G(jrt,1),_e,411,0,[q2,u4,a4,YG])))}function i$e(){i$e=Z,vst=vn((rw(),U(G(JU,1),_e,197,0,[GR,XU,Bv,Fv])))}function r$e(){r$e=Z,nft=vn((ru(),U(G(tft,1),_e,396,0,[Tu,Hwe,qwe,zwe])))}function o$e(){o$e=Z,Klt=vn((mu(),U(G($lt,1),_e,285,0,[Lj,rh,U1,xj])))}function c$e(){c$e=Z,Llt=vn((Lh(),U(G(iY,1),_e,218,0,[nY,Rj,D4,o3])))}function s$e(){s$e=Z,Zlt=vn((l7(),U(G(Kwe,1),_e,311,0,[cY,Fwe,$we,Bwe])))}function u$e(){u$e=Z,Jlt=vn((ou(),U(G(tM,1),_e,374,0,[$j,Cb,Bj,Yw])))}function a$e(){a$e=Z,nD(),Mme=Ii,rht=$i,Cme=new KM(Ii),oht=new KM($i)}function eI(){eI=Z,$1e=new $Z(qh,0),mR=new $Z("IMPROVE_STRAIGHTNESS",1)}function xCt(e,t){return m_(),Ee(e,new yr(t,Ce(t.e.c.length+t.g.c.length)))}function LCt(e,t){return m_(),Ee(e,new yr(t,Ce(t.e.c.length+t.g.c.length)))}function Fie(e,t){return oI(t)!=10&&U(Fs(t),t.hm,t.__elementTypeId$,oI(t),e),e}function Jc(e,t){var n;return n=Do(e,t,0),n==-1?!1:(ad(e,n),!0)}function l$e(e,t){var n;return n=c(u2(e.e,t),387),n?(zte(n),n.e):null}function N_(e){var t;return Oo(e)&&(t=0-e,!isNaN(t))?t:y1(Z_(e))}function Do(e,t,n){for(;n=0?_7(e,n,!0,!0):j0(e,t,!0)}function Hie(e,t){HS();var n,i;return n=o2(e),i=o2(t),!!n&&!!i&&!Cze(n.k,i.k)}function BCt(e,t){es(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function $Ct(e,t){ts(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function KCt(e,t){p0(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function qCt(e,t){b0(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function b$e(e){(this.q?this.q:(st(),st(),th)).Ac(e.q?e.q:(st(),st(),th))}function HCt(e,t){return Q(t,99)&&(c(t,18).Bb&Vr)!=0?new RF(t,e):new X_(t,e)}function zCt(e,t){return Q(t,99)&&(c(t,18).Bb&Vr)!=0?new RF(t,e):new X_(t,e)}function p$e(e,t){ade=new AA,cit=t,aP=e,c(aP.b,65),jie(aP,ade,null),aXe(aP)}function L$(e,t,n){var i;return i=e.g[t],d5(e,t,e.oi(t,n)),e.gi(t,n,i),e.ci(),i}function _O(e,t){var n;return n=e.Xc(t),n>=0?(e.$c(n),!0):!1}function N$(e){var t;return e.d!=e.r&&(t=ra(e),e.e=!!t&&t.Cj()==Zet,e.d=t),e.e}function F$(e,t){var n;for(nn(e),nn(t),n=!1;t.Ob();)n=n|e.Fc(t.Pb());return n}function h0(e,t){var n;return n=c(Bt(e.e,t),387),n?(uDe(e,n),n.e):null}function w$e(e){var t,n;return t=e/60|0,n=e%60,n==0?""+t:""+t+":"+(""+n)}function $o(e,t){var n,i;return Wg(e),i=new Mie(t,e.a),n=new Rke(i),new ht(e,n)}function Yp(e,t){var n=e.a[t],i=(iK(),fG)[typeof n];return i?i(n):Ure(typeof n)}function VCt(e){switch(e.g){case 0:return Fn;case 1:return-1;default:return 0}}function GCt(e){return lce(e,(F_(),uhe))<0?-u3t(Z_(e)):e.l+e.m*T2+e.h*nb}function oI(e){return e.__elementTypeCategory$==null?10:e.__elementTypeCategory$}function B$(e){var t;return t=e.b.c.length==0?null:Ne(e.b,0),t!=null&&Y$(e,0),t}function m$e(e,t){for(;t[0]=0;)++t[0]}function cI(e,t){this.e=t,this.a=fqe(e),this.a<54?this.f=l0(e):this.c=DI(e)}function v$e(e,t,n,i){Ln(),Lb.call(this,26),this.c=e,this.a=t,this.d=n,this.b=i}function Vf(e,t,n){var i,r;for(i=10,r=0;re.a[i]&&(i=n);return i}function QCt(e,t){var n;return n=E0(e.e.c,t.e.c),n==0?zi(e.e.d,t.e.d):n}function Fm(e,t){return t.e==0||e.e==0?t4:(yE(),$q(e,t))}function ZCt(e,t){if(!e)throw V(new St(nNt("Enum constant undefined: %s",t)))}function K5(){K5=Z,ort=new o3e,crt=new i3e,irt=new l3e,rrt=new f3e,srt=new h3e}function EO(){EO=Z,Hhe=new RZ("BY_SIZE",0),yG=new RZ("BY_SIZE_AND_SHAPE",1)}function SO(){SO=Z,OG=new xZ("EADES",0),Bk=new xZ("FRUCHTERMAN_REINGOLD",1)}function uI(){uI=Z,pR=new BZ("READING_DIRECTION",0),N1e=new BZ("ROTATION",1)}function _$e(){_$e=Z,Hrt=vn((Qg(),U(G(L1e,1),_e,335,0,[sU,x1e,uU,pP,bP])))}function E$e(){E$e=Z,yst=vn((s6(),U(G(Nbe,1),_e,315,0,[Lbe,QU,ZU,jP,AP])))}function S$e(){S$e=Z,Drt=vn((Zm(),U(G(Ort,1),_e,363,0,[fR,dR,gR,hR,lR])))}function P$e(){P$e=Z,not=vn((Ku(),U(G(dge,1),_e,163,0,[aj,_P,K1,EP,xw])))}function M$e(){M$e=Z,Kat=vn((qI(),U(G(spe,1),_e,316,0,[rpe,kW,cpe,RW,ope])))}function C$e(){C$e=Z,llt=vn((fl(),U(G(Dd,1),_e,175,0,[Tt,ar,kf,_b,Od])))}function I$e(){I$e=Z,xat=vn((PE(),U(G(Rat,1),_e,355,0,[Kv,e3,HP,qP,zP])))}function T$e(){T$e=Z,Jit=vn((Hr(),U(G(kde,1),_e,356,0,[Af,B1,Hc,Pc,Io])))}function j$e(){j$e=Z,Rlt=vn((eo(),U(G(WP,1),_e,103,0,[ih,Va,ga,Vh,Gh])))}function A$e(){A$e=Z,Hlt=vn((Um(),U(G(QP,1),_e,249,0,[W1,Nj,kwe,JP,Rwe])))}function O$e(){O$e=Z,Glt=vn((Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])))}function $$(e,t){var n;return n=c(Bt(e.a,t),134),n||(n=new bN,Kn(e.a,t,n)),n}function D$e(e){var t;return t=c(B(e,(ye(),W0)),305),t?t.a==e:!1}function k$e(e){var t;return t=c(B(e,(ye(),W0)),305),t?t.i==e:!1}function R$e(e,t){return yt(t),lne(e),e.d.Ob()?(t.td(e.d.Pb()),!0):!1}function PO(e){return uc(e,Fn)>0?Fn:uc(e,Ar)<0?Ar:tn(e)}function Xp(e){return e<3?(pu(e,TJe),e+1):e=0&&t=-.01&&e.a<=ql&&(e.a=0),e.b>=-.01&&e.b<=ql&&(e.b=0),e}function L$e(e,t){return t==(oB(),oB(),unt)?e.toLocaleLowerCase():e.toLowerCase()}function Vie(e){return((e.i&2)!=0?"interface ":(e.i&1)!=0?"":"class ")+(Sh(e),e.o)}function mo(e){var t,n;n=(t=new NN,t),on((!e.q&&(e.q=new Me(ya,e,11,10)),e.q),n)}function eIt(e,t){var n;return n=t>0?t-1:t,D9e(gyt(sKe(Hte(new Z3,n),e.n),e.j),e.k)}function tIt(e,t,n,i){var r;e.j=-1,gse(e,Wce(e,t,n),(Wr(),r=c(t,66).Mj(),r.Ok(i)))}function N$e(e){this.g=e,this.f=new Se,this.a=g.Math.min(this.g.c.c,this.g.d.c)}function F$e(e){this.b=new Se,this.a=new Se,this.c=new Se,this.d=new Se,this.e=e}function B$e(e,t){this.a=new en,this.e=new en,this.b=(X5(),VR),this.c=e,this.b=t}function $$e(e,t,n){i8.call(this),Gie(this),this.a=e,this.c=n,this.b=t.d,this.f=t.e}function K$e(e){this.d=e,this.c=e.c.vc().Kc(),this.b=null,this.a=null,this.e=(YA(),sG)}function d0(e){if(e<0)throw V(new St("Illegal Capacity: "+e));this.g=this.ri(e)}function nIt(e,t){if(0>e||e>t)throw V(new oZ("fromIndex: 0, toIndex: "+e+Uue+t))}function iIt(e){var t;if(e.a==e.b.a)throw V(new tc);return t=e.a,e.c=t,e.a=e.a.e,t}function MO(e){var t;Rp(!!e.c),t=e.c.a,Fu(e.d,e.c),e.b==e.c?e.b=t:--e.a,e.c=null}function CO(e,t){var n;return Wg(e),n=new aLe(e,e.a.rd(),e.a.qd()|4,t),new ht(e,n)}function rIt(e,t){var n,i;return n=c(tw(e.d,t),14),n?(i=t,e.e.pc(i,n)):null}function IO(e,t){var n,i;for(i=e.Kc();i.Ob();)n=c(i.Pb(),70),pe(n,(ye(),W2),t)}function oIt(e){var t;return t=ge(Te(B(e,(Oe(),Id)))),t<0&&(t=0,pe(e,Id,t)),t}function cIt(e,t,n){var i;i=g.Math.max(0,e.b/2-.5),a6(n,i,1),Ee(t,new dOe(n,i))}function sIt(e,t,n){var i;return i=e.a.e[c(t.a,10).p]-e.a.e[c(n.a,10).p],xi(DC(i))}function q$e(e,t,n,i,r,o){var u;u=E$(i),Rr(u,r),br(u,o),it(e.a,i,new c8(u,t,n.f))}function H$e(e,t){var n;if(n=QI(e.Tg(),t),!n)throw V(new St(x1+t+PV));return n}function Jp(e,t){var n;for(n=e;yi(n);)if(n=yi(n),n==t)return!0;return!1}function uIt(e,t){var n,i,r;for(i=t.a.cd(),n=c(t.a.dd(),14).gc(),r=0;r0&&(e.a/=t,e.b/=t),e}function bu(e){var t;return e.w?e.w:(t=wPt(e),t&&!t.kh()&&(e.w=t),t)}function pIt(e){var t;return e==null?null:(t=c(e,190),wDt(t,t.length))}function ee(e,t){if(e.g==null||t>=e.i)throw V(new kF(t,e.i));return e.li(t,e.g[t])}function wIt(e){var t,n;for(t=e.a.d.j,n=e.c.d.j;t!=n;)Fa(e.b,t),t=r7(t);Fa(e.b,t)}function mIt(e){var t;for(t=0;t=14&&t<=16))),e}function U$e(e,t,n){var i=function(){return e.apply(i,arguments)};return t.apply(i,n),i}function W$e(e,t,n){var i,r;i=t;do r=ge(e.p[i.p])+n,e.p[i.p]=r,i=e.a[i.p];while(i!=t)}function B_(e,t){var n,i;i=e.a,n=Qjt(e,t,null),i!=t&&!e.e&&(n=AE(e,t,n)),n&&n.Fi()}function Uie(e,t){return Il(),Na(A1),g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)}function Wie(e,t){return Il(),Na(A1),g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)}function _It(e,t){return I1(),Uc(e.b.c.length-e.e.c.length,t.b.c.length-t.e.c.length)}function Bm(e,t){return vyt(z5(e,t,tn(jr(Xf,qf(tn(jr(t==null?0:fi(t),Jf)),15)))))}function Y$e(){Y$e=Z,hrt=vn((Dt(),U(G(HG,1),_e,267,0,[Ui,ur,Bi,Mc,cu,Gl])))}function X$e(){X$e=Z,vlt=vn((sw(),U(G(zW,1),_e,291,0,[HW,jj,Tj,qW,Cj,Ij])))}function J$e(){J$e=Z,dlt=vn((Gf(),U(G(Ape,1),_e,248,0,[$W,Pj,Mj,mx,px,wx])))}function Q$e(){Q$e=Z,Brt=vn((y2(),U(G(h4,1),_e,227,0,[f4,gP,l4,Dw,Tv,Iv])))}function Z$e(){Z$e=Z,Xrt=vn((mE(),U(G(Q1e,1),_e,275,0,[wP,W1e,J1e,X1e,Y1e,U1e])))}function eKe(){eKe=Z,Yrt=vn(($I(),U(G(G1e,1),_e,274,0,[vR,H1e,V1e,q1e,z1e,bU])))}function tKe(){tKe=Z,wst=vn((R7(),U(G(kbe,1),_e,313,0,[WU,Obe,UU,Abe,Dbe,zR])))}function nKe(){nKe=Z,Urt=vn((F7(),U(G(B1e,1),_e,276,0,[fU,lU,dU,hU,gU,wR])))}function iKe(){iKe=Z,Tut=vn((d6(),U(G(Iut,1),_e,327,0,[ex,lW,hW,fW,dW,aW])))}function rKe(){rKe=Z,Vlt=vn((js(),U(G(Cx,1),_e,273,0,[X1,Wh,Fj,eM,ZP,c3])))}function oKe(){oKe=Z,Nlt=vn((L7(),U(G(Cwe,1),_e,312,0,[rY,Swe,Mwe,_we,Pwe,Ewe])))}function EIt(){return fw(),U(G(ro,1),_e,93,0,[Ga,Uh,Ua,Ya,oh,pa,Mu,Wa,ba])}function jO(e,t){var n;n=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,0,n,e.a))}function AO(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,1,n,e.b))}function $_(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,3,n,e.b))}function b0(e,t){var n;n=e.f,e.f=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,3,n,e.f))}function p0(e,t){var n;n=e.g,e.g=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,4,n,e.g))}function es(e,t){var n;n=e.i,e.i=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,5,n,e.i))}function ts(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,6,n,e.j))}function K_(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,1,n,e.j))}function q_(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,4,n,e.c))}function H_(e,t){var n;n=e.k,e.k=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,2,n,e.k))}function q$(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new b$(e,2,n,e.d))}function hd(e,t){var n;n=e.s,e.s=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new b$(e,4,n,e.s))}function Zp(e,t){var n;n=e.t,e.t=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new b$(e,5,n,e.t))}function z_(e,t){var n;n=e.F,e.F=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,5,n,t))}function aI(e,t){var n;return n=c(Bt((p9(),Fx),e),55),n?n.xj(t):oe(xt,xe,1,t,5,1)}function Dh(e,t){var n,i;return n=t in e.a,n&&(i=Ch(e,t).he(),i)?i.a:null}function SIt(e,t){var n,i,r;return n=(i=(Hb(),r=new KJ,r),t&&Lse(i,t),i),ire(n,e),n}function cKe(e,t,n){if(tE(e,n),!e.Bk()&&n!=null&&!e.wj(n))throw V(new kN);return n}function sKe(e,t){return e.n=t,e.n?(e.f=new Se,e.e=new Se):(e.f=null,e.e=null),e}function hn(e,t,n,i,r,o){var u;return u=RB(e,t),aKe(n,u),u.i=r?8:0,u.f=i,u.e=r,u.g=o,u}function Yie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=1,this.c=e,this.a=n}function Xie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=2,this.c=e,this.a=n}function Jie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=6,this.c=e,this.a=n}function Qie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=7,this.c=e,this.a=n}function Zie(e,t,n,i,r){this.d=t,this.j=i,this.e=r,this.o=-1,this.p=4,this.c=e,this.a=n}function uKe(e,t){var n,i,r,o;for(i=t,r=0,o=i.length;r=0),S9t(e.d,e.c)<0&&(e.a=e.a-1&e.d.a.length-1,e.b=e.d.c),e.c=-1}function ere(e){return e.a<54?e.f<0?-1:e.f>0?1:0:(!e.c&&(e.c=SI(e.f)),e.c).e}function Na(e){if(!(e>=0))throw V(new St("tolerance ("+e+") must be >= 0"));return e}function V_(){return FW||(FW=new JWe,zm(FW,U(G(Sv,1),xe,130,0,[new VJ]))),FW}function Zr(){Zr=Z,OP=new mF(R6,0),Os=new mF("INPUT",1),Fc=new mF("OUTPUT",2)}function DO(){DO=Z,k1e=new hF("ARD",0),bR=new hF("MSD",1),cU=new hF("MANUAL",2)}function w0(){w0=Z,wj=new SF("BARYCENTER",0),kP=new SF(xQe,1),YR=new SF(LQe,2)}function lI(e,t){var n;if(n=e.gc(),t<0||t>n)throw V(new Fp(t,n));return new mte(e,t)}function hKe(e,t){var n;return Q(t,42)?e.c.Mc(t):(n=xK(e,t),d7(e,t),n)}function uo(e,t,n){return Ug(e,t),kc(e,n),hd(e,0),Zp(e,1),pd(e,!0),bd(e,!0),e}function pu(e,t){if(e<0)throw V(new St(t+" cannot be negative but was: "+e));return e}function dKe(e,t){var n,i;for(n=0,i=e.gc();n0?c(Ne(n.a,i-1),10):null}function H5(e,t){var n;n=e.k,e.k=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,2,n,e.k))}function RO(e,t){var n;n=e.f,e.f=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,8,n,e.f))}function xO(e,t){var n;n=e.i,e.i=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,7,n,e.i))}function ire(e,t){var n;n=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,8,n,e.a))}function rre(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,0,n,e.b))}function ore(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,0,n,e.b))}function cre(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,1,n,e.c))}function sre(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,1,n,e.c))}function z$(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,4,n,e.c))}function ure(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,1,n,e.d))}function V$(e,t){var n;n=e.D,e.D=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,2,n,e.D))}function G$(e,t){e.r>0&&e.c0&&e.g!=0&&G$(e.i,t/e.r*e.i.d))}function DIt(e,t,n){var i;e.b=t,e.a=n,i=(e.a&512)==512?new n9e:new zJ,e.c=WNt(i,e.b,e.a)}function EKe(e,t){return Bh(e.e,t)?(Wr(),N$(t)?new d8(t,e):new pC(t,e)):new g7e(t,e)}function LO(e,t){return myt(V5(e.a,t,tn(jr(Xf,qf(tn(jr(t==null?0:fi(t),Jf)),15)))))}function kIt(e,t,n){return Wp(e,new vIe(t),new lN,new yIe(n),U(G(Hs,1),_e,132,0,[]))}function RIt(e){var t,n;return 0>e?new yZ:(t=e+1,n=new GFe(t,e),new Zee(null,n))}function xIt(e,t){st();var n;return n=new Fy(1),fr(e)?bo(n,e,t):Kc(n.f,e,t),new AN(n)}function LIt(e,t){var n,i;return n=e.o+e.p,i=t.o+t.p,nt?(t<<=1,t>0?t:j6):t}function U$(e){switch(Aee(e.e!=3),e.e){case 2:return!1;case 0:return!0}return qMt(e)}function PKe(e,t){var n;return Q(t,8)?(n=c(t,8),e.a==n.a&&e.b==n.b):!1}function W$(e,t,n){var i,r,o;return o=t>>5,r=t&31,i=Xi($p(e.n[n][o],tn(Ph(r,1))),3),i}function FIt(e,t){var n,i;for(i=t.vc().Kc();i.Ob();)n=c(i.Pb(),42),O7(e,n.cd(),n.dd())}function BIt(e,t){var n;n=new AA,c(t.b,65),c(t.b,65),c(t.b,65),Zc(t.a,new jte(e,n,t))}function are(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,21,n,e.b))}function lre(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,11,n,e.d))}function NO(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,13,n,e.j))}function MKe(e,t,n){var i,r,o;for(o=e.a.length-1,r=e.b,i=0;i>>31;i!=0&&(e[n]=i)}function YIt(e,t){st();var n,i;for(i=new Se,n=0;n0&&(this.g=this.ri(this.i+(this.i/8|0)+1),e.Qc(this.g))}function Ci(e,t){a8.call(this,Nft,e,t),this.b=this,this.a=qc(e.Tg(),at(this.e.Tg(),this.c))}function G5(e,t){var n,i;for(yt(t),i=t.vc().Kc();i.Ob();)n=c(i.Pb(),42),e.zc(n.cd(),n.dd())}function oTt(e,t,n){var i;for(i=n.Kc();i.Ob();)if(!rO(e,t,i.Pb()))return!1;return!0}function cTt(e,t,n,i,r){var o;return n&&(o=di(t.Tg(),e.c),r=n.gh(t,-1-(o==-1?i:o),null,r)),r}function sTt(e,t,n,i,r){var o;return n&&(o=di(t.Tg(),e.c),r=n.ih(t,-1-(o==-1?i:o),null,r)),r}function zKe(e){var t;if(e.b==-2){if(e.e==0)t=-1;else for(t=0;e.a[t]==0;t++);e.b=t}return e.b}function VKe(e){switch(e.g){case 2:return Ie(),Mt;case 4:return Ie(),jt;default:return e}}function GKe(e){switch(e.g){case 1:return Ie(),Yt;case 3:return Ie(),_t;default:return e}}function uTt(e){var t,n,i;return e.j==(Ie(),_t)&&(t=_Ue(e),n=bs(t,jt),i=bs(t,Mt),i||i&&n)}function aTt(e){var t,n;return t=c(e.e&&e.e(),9),n=c(_ne(t,t.length),9),new ku(t,n,t.length)}function lTt(e,t){Wt(t,RQe,1),poe(Ayt(new BA((qS(),new qB(e,!1,!1,new jJ))))),qt(t)}function fI(e,t){return Pt(),fr(e)?Sie(e,ln(t)):kp(e)?SB(e,Te(t)):Dp(e)?gSt(e,Fe(t)):e.wd(t)}function pre(e,t){t.q=e,e.d=g.Math.max(e.d,t.r),e.b+=t.d+(e.a.c.length==0?0:e.c),Ee(e.a,t)}function U_(e,t){var n,i,r,o;return r=e.c,n=e.c+e.b,o=e.d,i=e.d+e.a,t.a>r&&t.ao&&t.b1||e.Ob())return++e.a,e.g=0,t=e.i,e.Ob(),t;throw V(new tc)}function ETt(e){U7e();var t;return iOe(uW,e)||(t=new ASe,t.a=e,cte(uW,e,t)),c(so(uW,e),635)}function ia(e){var t,n,i,r;return r=e,i=0,r<0&&(r+=nb,i=Kh),n=xi(r/T2),t=xi(r-n*T2),Bc(t,n,i)}function hI(e){var t,n,i;for(i=0,n=new By(e.a);n.a>22),r=e.h+t.h+(i>>22),Bc(n&qs,i&qs,r&Kh)}function hqe(e,t){var n,i,r;return n=e.l-t.l,i=e.m-t.m+(n>>22),r=e.h-t.h+(i>>22),Bc(n&qs,i&qs,r&Kh)}function pI(e){var t;return e<128?(t=(IRe(),hhe)[e],!t&&(t=hhe[e]=new cQ(e)),t):new cQ(e)}function gi(e){var t;return Q(e,78)?e:(t=e&&e.__java$exception,t||(t=new tHe(e),mAe(t)),t)}function wI(e){if(Q(e,186))return c(e,118);if(e)return null;throw V(new Ly(set))}function dqe(e,t){if(t==null)return!1;for(;e.a!=e.b;)if($n(t,t7(e)))return!0;return!1}function Ere(e){return e.a.Ob()?!0:e.a!=e.d?!1:(e.a=new nie(e.e.f),e.a.Ob())}function Hi(e,t){var n,i;return n=t.Pc(),i=n.length,i==0?!1:(xte(e.c,e.c.length,n),!0)}function NTt(e,t,n){var i,r;for(r=t.vc().Kc();r.Ob();)i=c(r.Pb(),42),e.yc(i.cd(),i.dd(),n);return e}function gqe(e,t){var n,i;for(i=new q(e.b);i.a=0,"Negative initial capacity"),u8(t>=0,"Non-positive load factor"),Is(this)}function rK(e,t,n){return e>=128?!1:e<64?s5(Xi(Ph(1,e),n),0):s5(Xi(Ph(1,e-64),t),0)}function GTt(e,t){return!e||!t||e==t?!1:E0(e.b.c,t.b.c+t.b.b)<0&&E0(t.b.c,e.b.c+e.b.b)<0}function Cqe(e){var t,n,i;return n=e.n,i=e.o,t=e.d,new Ru(n.a-t.b,n.b-t.d,i.a+(t.b+t.c),i.b+(t.d+t.a))}function UTt(e){var t,n,i,r;for(n=e.a,i=0,r=n.length;ii)throw V(new Fp(t,i));return e.hi()&&(n=HLe(e,n)),e.Vh(t,n)}function yI(e,t,n){return n==null?(!e.q&&(e.q=new en),u2(e.q,t)):(!e.q&&(e.q=new en),Kn(e.q,t,n)),e}function pe(e,t,n){return n==null?(!e.q&&(e.q=new en),u2(e.q,t)):(!e.q&&(e.q=new en),Kn(e.q,t,n)),e}function Iqe(e){var t,n;return n=new uO,Mo(n,e),pe(n,(v1(),K2),e),t=new en,JBt(e,n,t),Sqt(e,n,t),n}function XTt(e){ov();var t,n,i;for(n=oe(ir,we,8,2,0,1),i=0,t=0;t<2;t++)i+=.5,n[t]=O8t(i,e);return n}function Tqe(e,t){var n,i,r,o;for(n=!1,i=e.a[t].length,o=0;o>=1);return t}function Aqe(e){var t,n;return n=WI(e.h),n==32?(t=WI(e.m),t==32?WI(e.l)+32:t+20-10):n-12}function Y5(e){var t;return t=e.a[e.b],t==null?null:(vi(e.a,e.b,null),e.b=e.b+1&e.a.length-1,t)}function Oqe(e){var t,n;return t=e.t-e.k[e.o.p]*e.d+e.j[e.o.p]>e.f,n=e.u+e.e[e.o.p]*e.d>e.f*e.s*e.d,t||n}function JO(e,t,n){var i,r;return i=new T$(t,n),r=new Er,e.b=EWe(e,e.b,i,r),r.b||++e.c,e.b.b=!1,r.d}function Dqe(e,t,n){var i,r,o,u;for(u=Q5(t,n),o=0,r=u.Kc();r.Ob();)i=c(r.Pb(),11),Kn(e.c,i,Ce(o++))}function _1(e){var t,n;for(n=new q(e.a.b);n.an&&(n=e[t]);return n}function kqe(e,t,n){var i;return i=new Se,Bse(e,t,i,(Ie(),jt),!0,!1),Bse(e,n,i,Mt,!1,!1),i}function cK(e,t,n){var i,r,o,u;return o=null,u=t,r=f0(u,"labels"),i=new ZOe(e,n),o=(bxt(i.a,i.b,r),r),o}function QTt(e,t,n,i){var r;return r=Cse(e,t,n,i),!r&&(r=Zjt(e,n,i),r&&!uv(e,t,r))?null:r}function ZTt(e,t,n,i){var r;return r=Ise(e,t,n,i),!r&&(r=SK(e,n,i),r&&!uv(e,t,r))?null:r}function Rqe(e,t){var n;for(n=0;n1||t>=0&&e.b<3)}function _I(e){var t,n,i;for(t=new ds,i=Mn(e,0);i.b!=i.d.c;)n=c(Pn(i),8),b_(t,0,new go(n));return t}function Vg(e){var t,n;for(n=new q(e.a.b);n.ai?1:0}function Kre(e,t){return rWe(e,t)?(it(e.b,c(B(t,(ye(),kw)),21),t),Cn(e.a,t),!0):!1}function fjt(e){var t,n;t=c(B(e,(ye(),As)),10),t&&(n=t.c,Jc(n.a,t),n.a.c.length==0&&Jc(Nr(t).b,n))}function $qe(e){return Vl?oe(hnt,qJe,572,0,0,1):c(Bl(e.a,oe(hnt,qJe,572,e.a.c.length,0,1)),842)}function hjt(e,t,n,i){return k8(),new qN(U(G(fb,1),gD,42,0,[(ZK(e,t),new Vb(e,t)),(ZK(n,i),new Vb(n,i))]))}function Hm(e,t,n){var i,r;return r=(i=new NN,i),uo(r,t,n),on((!e.q&&(e.q=new Me(ya,e,11,10)),e.q),r),r}function lK(e){var t,n,i,r;for(r=Fyt(hft,e),n=r.length,i=oe(Re,we,2,n,6,1),t=0;t=e.b.c.length||(qre(e,2*t+1),n=2*t+2,n=0&&e[i]===t[i];i--);return i<0?0:iF(Xi(e[i],no),Xi(t[i],no))?-1:1}function djt(e,t){var n,i;for(i=Mn(e,0);i.b!=i.d.c;)n=c(Pn(i),214),n.e.length>0&&(t.td(n),n.i&&sAt(n))}function hK(e,t){var n,i;return i=c(vt(e.a,4),126),n=oe(hY,KV,415,t,0,1),i!=null&&bc(i,0,n,0,i.length),n}function qqe(e,t){var n;return n=new Hq((e.f&256)!=0,e.i,e.a,e.d,(e.f&16)!=0,e.j,e.g,t),e.e!=null||(n.c=e),n}function gjt(e,t){var n,i;for(i=e.Zb().Cc().Kc();i.Ob();)if(n=c(i.Pb(),14),n.Hc(t))return!0;return!1}function dK(e,t,n,i,r){var o,u;for(u=n;u<=r;u++)for(o=t;o<=i;o++)if(Ym(e,o,u))return!0;return!1}function Hqe(e,t,n){var i,r,o,u;for(yt(n),u=!1,o=e.Zc(t),r=n.Kc();r.Ob();)i=r.Pb(),o.Rb(i),u=!0;return u}function bjt(e,t){var n;return e===t?!0:Q(t,83)?(n=c(t,83),zce(e0(e),n.vc())):!1}function zqe(e,t,n){var i,r;for(r=n.Kc();r.Ob();)if(i=c(r.Pb(),42),e.re(t,i.dd()))return!0;return!1}function Vqe(e,t,n){return e.d[t.p][n.p]||(f8t(e,t,n),e.d[t.p][n.p]=!0,e.d[n.p][t.p]=!0),e.a[t.p][n.p]}function tE(e,t){if(!e.ai()&&t==null)throw V(new St("The 'no null' constraint is violated"));return t}function nE(e,t){e.D==null&&e.B!=null&&(e.D=e.B,e.B=null),V$(e,t==null?null:(yt(t),t)),e.C&&e.yk(null)}function pjt(e,t){var n;return!e||e==t||!nr(t,(ye(),X0))?!1:(n=c(B(t,(ye(),X0)),10),n!=e)}function gK(e){switch(e.i){case 2:return!0;case 1:return!1;case-1:++e.c;default:return e.pl()}}function Gqe(e){switch(e.i){case-2:return!0;case-1:return!1;case 1:--e.c;default:return e.ql()}}function Uqe(e){LLe.call(this,"The given string does not match the expected format for individual spacings.",e)}function ru(){ru=Z,Tu=new R9("ELK",0),Hwe=new R9("JSON",1),qwe=new R9("DOT",2),zwe=new R9("SVG",3)}function EI(){EI=Z,sx=new MF(qh,0),S0e=new MF("RADIAL_COMPACTION",1),P0e=new MF("WEDGE_COMPACTION",2)}function Fl(){Fl=Z,Fhe=new rF("CONCURRENT",0),Su=new rF("IDENTITY_FINISH",1),Tw=new rF("UNORDERED",2)}function bK(){bK=Z,dde=(l9(),CG),hde=new ut(uae,dde),lit=new hi(aae),fit=new hi(lae),hit=new hi(fae)}function iE(){iE=Z,C1e=new Z_e,I1e=new eEe,Prt=new tEe,Srt=new nEe,Ert=new iEe,M1e=(yt(Ert),new pc)}function rE(){rE=Z,oW=new yF("CONSERVATIVE",0),Xbe=new yF("CONSERVATIVE_SOFT",1),DP=new yF("SLOPPY",2)}function QO(){QO=Z,Owe=new Yb(15),Flt=new Yr((kn(),Sb),Owe),YP=i3,Iwe=_lt,Twe=Eb,Awe=Vv,jwe=_x}function pK(e,t,n){var i,r,o;for(i=new wi,o=Mn(n,0);o.b!=o.d.c;)r=c(Pn(o),8),Cn(i,new go(r));Hqe(e,t,i)}function wjt(e){var t,n,i;for(t=0,i=oe(ir,we,8,e.b,0,1),n=Mn(e,0);n.b!=n.d.c;)i[t++]=c(Pn(n),8);return i}function zre(e){var t;return t=(!e.a&&(e.a=new Me(Yh,e,9,5)),e.a),t.i!=0?xyt(c(ee(t,0),678)):null}function mjt(e,t){var n;return n=xr(e,t),iF(u$(e,t),0)|Jyt(u$(e,n),0)?n:xr(dD,u$($p(n,63),1))}function vjt(e,t){var n;n=Le((kK(),HR))!=null&&t.wg()!=null?ge(Te(t.wg()))/ge(Te(Le(HR))):1,Kn(e.b,t,n)}function yjt(e,t){var n,i;return n=c(e.d.Bc(t),14),n?(i=e.e.hc(),i.Gc(n),e.e.d-=n.gc(),n.$b(),i):null}function Vre(e,t){var n,i;if(i=e.c[t],i!=0)for(e.c[t]=0,e.d-=i,n=t+1;n0)return y_(t-1,e.a.c.length),ad(e.a,t-1);throw V(new yAe)}function _jt(e,t,n){if(t<0)throw V(new ho(wZe+t));tt)throw V(new St(mD+e+HJe+t));if(e<0||t>n)throw V(new oZ(mD+e+Yue+t+Uue+n))}function Xqe(e){if(!e.a||(e.a.i&8)==0)throw V(new Ao("Enumeration class expected for layout option "+e.f))}function ew(e){var t;++e.j,e.i==0?e.g=null:e.iUD?e-n>UD:n-e>UD}function mK(e,t){return!e||t&&!e.j||Q(e,124)&&c(e,124).a.b==0?0:e.Re()}function e7(e,t){return!e||t&&!e.k||Q(e,124)&&c(e,124).a.a==0?0:e.Se()}function SI(e){return T1(),e<0?e!=-1?new $oe(-1,-e):gG:e<=10?Che[xi(e)]:new $oe(1,e)}function Ure(e){throw iK(),V(new d9e("Unexpected typeof result '"+e+"'; please report this bug to the GWT team"))}function tHe(e){v9e(),V9(this),F8(this),this.e=e,gWe(this,e),this.g=e==null?rs:Ro(e),this.a="",this.b=e,this.a=""}function Wre(){this.a=new y5e,this.f=new uje(this),this.b=new aje(this),this.i=new lje(this),this.e=new fje(this)}function nHe(){Avt.call(this,new Oie(Xp(16))),pu(2,PJe),this.b=2,this.a=new Ane(null,null,0,null),GM(this.a,this.a)}function X5(){X5=Z,YU=new pF("DUMMY_NODE_OVER",0),Rbe=new pF("DUMMY_NODE_UNDER",1),VR=new pF("EQUAL",2)}function vK(){vK=Z,FG=FLe(U(G(WP,1),_e,103,0,[(eo(),ga),Va])),BG=FLe(U(G(WP,1),_e,103,0,[Gh,Vh]))}function yK(e){return(Ie(),cs).Hc(e.j)?ge(Te(B(e,(ye(),m4)))):Ko(U(G(ir,1),we,8,0,[e.i.n,e.n,e.a])).b}function Cjt(e){var t,n,i,r;for(i=e.b.a,n=i.a.ec().Kc();n.Ob();)t=c(n.Pb(),561),r=new WUe(t,e.e,e.f),Ee(e.g,r)}function Ug(e,t){var n,i,r;i=e.nk(t,null),r=null,t&&(r=(r_(),n=new Nb,n),B_(r,e.r)),i=$l(e,r,i),i&&i.Fi()}function Ijt(e,t){var n,i;for(i=$s(e.d,1)!=0,n=!0;n;)n=!1,n=t.c.Tf(t.e,i),n=n|ZI(e,t,i,!1),i=!i;hre(e)}function Yre(e,t){var n,i,r;return i=!1,n=t.q.d,t.dr&&(TVe(t.q,r),i=n!=t.q.d)),i}function iHe(e,t){var n,i,r,o,u,a,l,d;return l=t.i,d=t.j,i=e.f,r=i.i,o=i.j,u=l-r,a=d-o,n=g.Math.sqrt(u*u+a*a),n}function Xre(e,t){var n,i;return i=g7(e),i||(n=(hH(),jGe(t)),i=new fAe(n),on(i.Vk(),e)),i}function PI(e,t){var n,i;return n=c(e.c.Bc(t),14),n?(i=e.hc(),i.Gc(n),e.d-=n.gc(),n.$b(),e.mc(i)):e.jc()}function rHe(e,t){var n;for(n=0;n=e.c.b:e.a<=e.c.b))throw V(new tc);return t=e.a,e.a+=e.c.c,++e.b,Ce(t)}function Ajt(e){var t;return t=new N$e(e),zC(e.a,srt,new Js(U(G(QT,1),xe,369,0,[t]))),t.d&&Ee(t.f,t.d),t.f}function _K(e){var t;return t=new wee(e.a),Mo(t,e),pe(t,(ye(),Hn),e),t.o.a=e.g,t.o.b=e.f,t.n.a=e.i,t.n.b=e.j,t}function Ojt(e,t,n,i){var r,o;for(o=e.Kc();o.Ob();)r=c(o.Pb(),70),r.n.a=t.a+(i.a-r.o.a)/2,r.n.b=t.b,t.b+=r.o.b+n}function Djt(e,t,n){var i,r;for(r=t.a.a.ec().Kc();r.Ob();)if(i=c(r.Pb(),57),wLe(e,i,n))return!0;return!1}function kjt(e){var t,n;for(n=new q(e.r);n.a=0?t:-t;i>0;)i%2==0?(n*=n,i=i/2|0):(r*=n,i-=1);return t<0?1/r:r}function Njt(e,t){var n,i,r;for(r=1,n=e,i=t>=0?t:-t;i>0;)i%2==0?(n*=n,i=i/2|0):(r*=n,i-=1);return t<0?1/r:r}function fHe(e){var t,n;if(e!=null)for(n=0;n0&&(n=c(Ne(e.a,e.a.c.length-1),570),Kre(n,t))||Ee(e.a,new zFe(t))}function qjt(e){ka();var t,n;t=e.d.c-e.e.c,n=c(e.g,145),Zc(n.b,new wTe(t)),Zc(n.c,new mTe(t)),Mr(n.i,new vTe(t))}function bHe(e){var t;return t=new n1,t.a+="VerticalSegment ",nc(t,e.e),t.a+=" ",wn(t,Iee(new XN,new q(e.k))),t.a}function Hjt(e){var t;return t=c(h0(e.c.c,""),229),t||(t=new i2(i_(n_(new Ay,""),"Other")),Xg(e.c.c,"",t)),t}function J5(e){var t;return(e.Db&64)!=0?Ba(e):(t=new ea(Ba(e)),t.a+=" (name: ",co(t,e.zb),t.a+=")",t.a)}function toe(e,t,n){var i,r;return r=e.sb,e.sb=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,4,r,t),n?n.Ei(i):n=i),n}function EK(e,t){var n,i,r;for(n=0,r=qo(e,t).Kc();r.Ob();)i=c(r.Pb(),11),n+=B(i,(ye(),As))!=null?1:0;return n}function Vm(e,t,n){var i,r,o;for(i=0,o=Mn(e,0);o.b!=o.d.c&&(r=ge(Te(Pn(o))),!(r>n));)r>=t&&++i;return i}function zjt(e,t,n){var i,r;return i=new Ah(e.e,3,13,null,(r=t.c,r||(ot(),Ql)),wd(e,t),!1),n?n.Ei(i):n=i,n}function Vjt(e,t,n){var i,r;return i=new Ah(e.e,4,13,(r=t.c,r||(ot(),Ql)),null,wd(e,t),!1),n?n.Ei(i):n=i,n}function noe(e,t,n){var i,r;return r=e.r,e.r=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,8,r,e.r),n?n.Ei(i):n=i),n}function gd(e,t){var n,i;return n=c(t,676),i=n.vk(),!i&&n.wk(i=Q(t,88)?new f7e(e,c(t,26)):new DNe(e,c(t,148))),i}function MI(e,t,n){var i;e.qi(e.i+1),i=e.oi(t,n),t!=e.i&&bc(e.g,t,e.g,t+1,e.i-t),vi(e.g,t,i),++e.i,e.bi(t,n),e.ci()}function Gjt(e,t){var n;return t.a&&(n=t.a.a.length,e.a?wn(e.a,e.b):e.a=new lu(e.d),RNe(e.a,t.a,t.d.length,n)),e}function Ujt(e,t){var n,i,r,o;if(t.vi(e.a),o=c(vt(e.a,8),1936),o!=null)for(n=o,i=0,r=n.length;in)throw V(new ho(mD+e+Yue+t+", size: "+n));if(e>t)throw V(new St(mD+e+HJe+t))}function $u(e,t,n){if(t<0)ose(e,n);else{if(!n.Ij())throw V(new St(x1+n.ne()+W6));c(n,66).Nj().Vj(e,e.yh(),t)}}function Xjt(e,t,n,i,r,o,u,a){var l;for(l=n;o=i||t=65&&e<=70?e-65+10:e>=97&&e<=102?e-97+10:e>=48&&e<=57?e-48:0}function EHe(e){var t;return(e.Db&64)!=0?Ba(e):(t=new ea(Ba(e)),t.a+=" (source: ",co(t,e.d),t.a+=")",t.a)}function Qjt(e,t,n){var i,r;return r=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,5,r,e.a),n?Mce(n,i):n=i),n}function bd(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,2,n,t))}function roe(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,8,n,t))}function i7(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,8,n,t))}function pd(e,t){var n;n=(e.Bb&512)!=0,t?e.Bb|=512:e.Bb&=-513,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,3,n,t))}function ooe(e,t){var n;n=(e.Bb&512)!=0,t?e.Bb|=512:e.Bb&=-513,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,9,n,t))}function Z5(e,t){var n;return e.b==-1&&e.a&&(n=e.a.Gj(),e.b=n?e.c.Xg(e.a.aj(),n):di(e.c.Tg(),e.a)),e.c.Og(e.b,t)}function Ce(e){var t,n;return e>-129&&e<128?(t=e+128,n=(yRe(),dhe)[t],!n&&(n=dhe[t]=new sQ(e)),n):new sQ(e)}function oE(e){var t,n;return e>-129&&e<128?(t=e+128,n=(CRe(),whe)[t],!n&&(n=whe[t]=new aQ(e)),n):new aQ(e)}function coe(e){var t,n;return t=e.k,t==(Dt(),Bi)?(n=c(B(e,(ye(),Zo)),61),n==(Ie(),_t)||n==Yt):!1}function Zjt(e,t,n){var i,r,o;return o=(r=EE(e.b,t),r),o&&(i=c(oD(iI(e,o),""),26),i)?Cse(e,i,t,n):null}function SK(e,t,n){var i,r,o;return o=(r=EE(e.b,t),r),o&&(i=c(oD(iI(e,o),""),26),i)?Ise(e,i,t,n):null}function SHe(e,t){var n,i;for(i=new $t(e);i.e!=i.i.gc();)if(n=c(Vt(i),138),le(t)===le(n))return!0;return!1}function e6(e,t,n){var i;if(i=e.gc(),t>i)throw V(new Fp(t,i));if(e.hi()&&e.Hc(n))throw V(new St(RT));e.Xh(t,n)}function eAt(e,t){var n;if(n=Bm(e.i,t),n==null)throw V(new sf("Node did not exist in input."));return wre(t,n),null}function tAt(e,t){var n;if(n=QI(e,t),Q(n,322))return c(n,34);throw V(new St(x1+t+"' is not a valid attribute"))}function nAt(e,t,n){var i,r;for(r=Q(t,99)&&(c(t,18).Bb&Vr)!=0?new RF(t,e):new X_(t,e),i=0;it?1:e==t?e==0?zi(1/e,1/t):0:isNaN(e)?isNaN(t)?0:1:-1}function fAt(e,t){Wt(t,"Sort end labels",1),Di(si($o(new ht(null,new bt(e.b,16)),new V3e),new G3e),new U3e),qt(t)}function t6(e,t,n){var i,r;return e.ej()?(r=e.fj(),i=Aq(e,t,n),e.$i(e.Zi(7,Ce(n),i,t,r)),i):Aq(e,t,n)}function PK(e,t){var n,i,r;e.d==null?(++e.e,--e.f):(r=t.cd(),n=t.Sh(),i=(n&Fn)%e.d.length,WMt(e,i,KUe(e,i,n,r)))}function cE(e,t){var n;n=(e.Bb&Ka)!=0,t?e.Bb|=Ka:e.Bb&=-1025,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,10,n,t))}function sE(e,t){var n;n=(e.Bb&vw)!=0,t?e.Bb|=vw:e.Bb&=-4097,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,12,n,t))}function uE(e,t){var n;n=(e.Bb&Es)!=0,t?e.Bb|=Es:e.Bb&=-8193,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,15,n,t))}function aE(e,t){var n;n=(e.Bb&Iw)!=0,t?e.Bb|=Iw:e.Bb&=-2049,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,11,n,t))}function hAt(e,t){var n;return n=zi(e.b.c,t.b.c),n!=0||(n=zi(e.a.a,t.a.a),n!=0)?n:zi(e.a.b,t.a.b)}function dAt(e,t){var n;if(n=Bt(e.k,t),n==null)throw V(new sf("Port did not exist in input."));return wre(t,n),null}function gAt(e){var t,n;for(n=GUe(bu(e)).Kc();n.Ob();)if(t=ln(n.Pb()),y6(e,t))return EMt((tOe(),Pft),t);return null}function bAt(e,t){var n,i,r,o,u;for(u=qc(e.e.Tg(),t),o=0,n=c(e.g,119),r=0;r>10)+wT&Ni,t[1]=(e&1023)+56320&Ni,pf(t,0,t.length)}function o7(e){var t,n;return n=c(B(e,(Oe(),Pu)),103),n==(eo(),ih)?(t=ge(Te(B(e,TR))),t>=1?Va:Vh):n}function mAt(e){switch(c(B(e,(Oe(),zh)),218).g){case 1:return new D4e;case 3:return new N4e;default:return new O4e}}function Wg(e){if(e.c)Wg(e.c);else if(e.d)throw V(new Ao("Stream already terminated, can't be modified or used"))}function IK(e){var t;return(e.Db&64)!=0?Ba(e):(t=new ea(Ba(e)),t.a+=" (identifier: ",co(t,e.k),t.a+=")",t.a)}function IHe(e,t,n){var i,r;return i=(Hb(),r=new OA,r),jO(i,t),AO(i,n),e&&on((!e.a&&(e.a=new qi(ma,e,5)),e.a),i),i}function TK(e,t,n,i){var r,o;return yt(i),yt(n),r=e.xc(t),o=r==null?n:q8e(c(r,15),c(n,14)),o==null?e.Bc(t):e.zc(t,o),o}function nt(e){var t,n,i,r;return n=(t=c(rl((i=e.gm,r=i.f,r==bn?i:r)),9),new ku(t,c(Da(t,t.length),9),0)),Fa(n,e),n}function vAt(e,t,n){var i,r;for(r=e.a.ec().Kc();r.Ob();)if(i=c(r.Pb(),10),bI(n,c(Ne(t,i.p),14)))return i;return null}function yAt(e,t,n){var i;try{ejt(e,t,n)}catch(r){throw r=gi(r),Q(r,597)?(i=r,V(new gie(i))):V(r)}return t}function P1(e,t){var n;return Oo(e)&&Oo(t)&&(n=e-t,pT>1,e.k=n-1>>1}function jK(){Oce();var e,t,n;n=pzt+++Date.now(),e=xi(g.Math.floor(n*vT))&wD,t=xi(n-e*Gue),this.a=e^1502,this.b=t^ez}function xh(e){var t,n,i;for(t=new Se,i=new q(e.j);i.a34028234663852886e22?Ii:t<-34028234663852886e22?$i:t}function THe(e){return e-=e>>1&1431655765,e=(e>>2&858993459)+(e&858993459),e=(e>>4)+e&252645135,e+=e>>8,e+=e>>16,e&63}function jHe(e){var t,n,i,r;for(t=new ake(e.Hd().gc()),r=0,i=l2(e.Hd().Kc());i.Ob();)n=i.Pb(),x6t(t,n,Ce(r++));return ckt(t.a)}function CAt(e,t){var n,i,r;for(r=new en,i=t.vc().Kc();i.Ob();)n=c(i.Pb(),42),Kn(r,n.cd(),wTt(e,c(n.dd(),15)));return r}function hoe(e,t){e.n.c.length==0&&Ee(e.n,new W8(e.s,e.t,e.i)),Ee(e.b,t),Woe(c(Ne(e.n,e.n.c.length-1),211),t),BYe(e,t)}function Gm(e){return(e.c!=e.b.b||e.i!=e.g.b)&&(e.a.c=oe(xt,xe,1,0,5,1),Hi(e.a,e.b),Hi(e.a,e.g),e.c=e.b.b,e.i=e.g.b),e.a}function AK(e,t){var n,i,r;for(r=0,i=c(t.Kb(e),20).Kc();i.Ob();)n=c(i.Pb(),17),Be(Fe(B(n,(ye(),Ul))))||++r;return r}function IAt(e,t){var n,i,r;i=Nm(t),r=ge(Te(iw(i,(Oe(),za)))),n=g.Math.max(0,r/2-.5),a6(t,n,1),Ee(e,new _Oe(t,n))}function Ku(){Ku=Z,aj=new aC(qh,0),_P=new aC("FIRST",1),K1=new aC(NQe,2),EP=new aC("LAST",3),xw=new aC(FQe,4)}function Lh(){Lh=Z,nY=new A9(R6,0),Rj=new A9("POLYLINE",1),D4=new A9("ORTHOGONAL",2),o3=new A9("SPLINES",3)}function c7(){c7=Z,q0e=new IF("ASPECT_RATIO_DRIVEN",0),TW=new IF("MAX_SCALE_DRIVEN",1),K0e=new IF("AREA_DRIVEN",2)}function TI(){TI=Z,lx=new TF("P1_STRUCTURE",0),fx=new TF("P2_PROCESSING_ORDER",1),hx=new TF("P3_EXECUTION",2)}function s7(){s7=Z,EW=new PF("OVERLAP_REMOVAL",0),yW=new PF("COMPACTION",1),_W=new PF("GRAPH_SIZE_CALCULATION",2)}function E0(e,t){return Il(),Na(A1),g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t))}function AHe(e,t){var n,i;for(n=Mn(e,0);n.b!=n.d.c;){if(i=WM(Te(Pn(n))),i==t)return;if(i>t){l$(n);break}}RC(n,t)}function Ze(e,t){var n,i,r,o,u;if(n=t.f,Xg(e.c.d,n,t),t.g!=null)for(r=t.g,o=0,u=r.length;ot&&i.ue(e[o-1],e[o])>0;--o)u=e[o],vi(e,o,e[o-1]),vi(e,o-1,u)}function qu(e,t,n,i){if(t<0)Ose(e,n,i);else{if(!n.Ij())throw V(new St(x1+n.ne()+W6));c(n,66).Nj().Tj(e,e.yh(),t,i)}}function u7(e,t){if(t==e.d)return e.e;if(t==e.e)return e.d;throw V(new St("Node "+t+" not part of edge "+e))}function jAt(e,t){switch(t.g){case 2:return e.b;case 1:return e.c;case 4:return e.d;case 3:return e.a;default:return!1}}function OHe(e,t){switch(t.g){case 2:return e.b;case 1:return e.c;case 4:return e.d;case 3:return e.a;default:return!1}}function doe(e,t,n,i){switch(t){case 3:return e.f;case 4:return e.g;case 5:return e.i;case 6:return e.j}return ioe(e,t,n,i)}function AAt(e){return e.k!=(Dt(),Ui)?!1:D_(new ht(null,new t0(new Kt(Ht(Vi(e).a.Kc(),new j)))),new v4e)}function OAt(e){return e.e==null?e:(!e.c&&(e.c=new Hq((e.f&256)!=0,e.i,e.a,e.d,(e.f&16)!=0,e.j,e.g,null)),e.c)}function DAt(e,t){return e.h==bT&&e.m==0&&e.l==0?(t&&(L1=Bc(0,0,0)),D7e((F_(),she))):(t&&(L1=Bc(e.l,e.m,e.h)),Bc(0,0,0))}function Ro(e){var t;return Array.isArray(e)&&e.im===ct?r1(Fs(e))+"@"+(t=fi(e)>>>0,t.toString(16)):e.toString()}function n6(e){var t;this.a=(t=c(e.e&&e.e(),9),new ku(t,c(Da(t,t.length),9),0)),this.b=oe(xt,xe,1,this.a.a.length,5,1)}function kAt(e){var t,n,i;for(this.a=new Eh,i=new q(e);i.a0&&(fn(t-1,e.length),e.charCodeAt(t-1)==58)&&!OK(e,oM,cM))}function OK(e,t,n){var i,r;for(i=0,r=e.length;i=r)return t.c+n;return t.c+t.b.gc()}function FAt(e,t){p_();var n,i,r,o;for(i=VBe(e),r=t,L_(i,0,i.length,r),n=0;n0&&(i+=r,++n);return n>1&&(i+=e.d*(n-1)),i}function boe(e){var t,n,i;for(i=new nd,i.a+="[",t=0,n=e.gc();t0&&this.b>0&&Xte(this.c,this.b,this.a)}function moe(e){kK(),this.c=kl(U(G(Rzt,1),xe,831,0,[bst])),this.b=new en,this.a=e,Kn(this.b,HR,1),Zc(pst,new yje(this))}function DHe(e,t){var n;return e.d?tu(e.b,t)?c(Bt(e.b,t),51):(n=t.Kf(),Kn(e.b,t,n),n):t.Kf()}function voe(e,t){var n;return le(e)===le(t)?!0:Q(t,91)?(n=c(t,91),e.e==n.e&&e.d==n.d&&PMt(e,n.a)):!1}function b2(e){switch(Ie(),e.g){case 4:return _t;case 1:return jt;case 3:return Yt;case 2:return Mt;default:return Vo}}function yoe(e,t){switch(t){case 3:return e.f!=0;case 4:return e.g!=0;case 5:return e.i!=0;case 6:return e.j!=0}return vre(e,t)}function zAt(e){switch(e.g){case 0:return new d5e;case 1:return new g5e;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function kHe(e){switch(e.g){case 0:return new h5e;case 1:return new b5e;default:throw V(new St(Mz+(e.f!=null?e.f:""+e.g)))}}function RHe(e){switch(e.g){case 0:return new QQ;case 1:return new VAe;default:throw V(new St(JD+(e.f!=null?e.f:""+e.g)))}}function VAt(e){switch(e.g){case 1:return new c5e;case 2:return new JDe;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function GAt(e){var t,n;if(e.b)return e.b;for(n=Vl?null:e.d;n;){if(t=Vl?null:n.b,t)return t;n=Vl?null:n.d}return a_(),Nhe}function UAt(e){var t,n,i;return e.e==0?0:(t=e.d<<5,n=e.a[e.d-1],e.e<0&&(i=zKe(e),i==e.d-1&&(--n,n=n|0)),t-=WI(n),t)}function WAt(e){var t,n,i;return e>5,t=e&31,i=oe(Qt,_n,25,n+1,15,1),i[n]=1<3;)r*=10,--o;e=(e+(r>>1))/r|0}return i.i=e,!0}function XAt(e){return vK(),Pt(),!!(OHe(c(e.a,81).j,c(e.b,103))||c(e.a,81).d.e!=0&&OHe(c(e.a,81).j,c(e.b,103)))}function JAt(e){bO(),c(e.We((kn(),G1)),174).Hc((Ks(),jx))&&(c(e.We(Uw),174).Fc((js(),c3)),c(e.We(G1),174).Mc(jx))}function LHe(e,t){var n,i;if(t){for(n=0;n=0;--i)for(t=n[i],r=0;r>1,this.k=t-1>>1}function i9t(e,t){Wt(t,"End label post-processing",1),Di(si($o(new ht(null,new bt(e.b,16)),new N3e),new F3e),new B3e),qt(t)}function r9t(e,t,n){var i,r;return i=ge(e.p[t.i.p])+ge(e.d[t.i.p])+t.n.b+t.a.b,r=ge(e.p[n.i.p])+ge(e.d[n.i.p])+n.n.b+n.a.b,r-i}function o9t(e,t,n){var i,r;for(i=Xi(n,no),r=0;uc(i,0)!=0&&r0&&(fn(0,t.length),t.charCodeAt(0)==43)?t.substr(1):t))}function s9t(e){var t;return e==null?null:new l1((t=Ec(e,!0),t.length>0&&(fn(0,t.length),t.charCodeAt(0)==43)?t.substr(1):t))}function Ioe(e,t){var n;return e.i>0&&(t.lengthe.i&&vi(t,e.i,null),t}function Rc(e,t,n){var i,r,o;return e.ej()?(i=e.i,o=e.fj(),MI(e,i,t),r=e.Zi(3,null,t,i,o),n?n.Ei(r):n=r):MI(e,e.i,t),n}function u9t(e,t,n){var i,r;return i=new Ah(e.e,4,10,(r=t.c,Q(r,88)?c(r,26):(ot(),Ea)),null,wd(e,t),!1),n?n.Ei(i):n=i,n}function a9t(e,t,n){var i,r;return i=new Ah(e.e,3,10,null,(r=t.c,Q(r,88)?c(r,26):(ot(),Ea)),wd(e,t),!1),n?n.Ei(i):n=i,n}function BHe(e){Lp();var t;return t=new go(c(e.e.We((kn(),Vv)),8)),e.B.Hc((Ks(),R4))&&(t.a<=0&&(t.a=20),t.b<=0&&(t.b=20)),t}function $He(e){rw();var t;return(e.q?e.q:(st(),st(),th))._b((Oe(),Z0))?t=c(B(e,Z0),197):t=c(B(Nr(e),CP),197),t}function iw(e,t){var n,i;return i=null,nr(e,(Oe(),KR))&&(n=c(B(e,KR),94),n.Xe(t)&&(i=n.We(t))),i==null&&(i=B(Nr(e),t)),i}function KHe(e,t){var n,i,r;return Q(t,42)?(n=c(t,42),i=n.cd(),r=tw(e.Rc(),i),df(r,n.dd())&&(r!=null||e.Rc()._b(i))):!1}function xK(e,t){var n,i,r;return e.f>0?(e.qj(),i=t==null?0:fi(t),r=(i&Fn)%e.d.length,n=KUe(e,r,i,t),n!=-1):!1}function ll(e,t){var n,i,r;return e.f>0&&(e.qj(),i=t==null?0:fi(t),r=(i&Fn)%e.d.length,n=fse(e,r,i,t),n)?n.dd():null}function jI(e,t){var n,i,r,o;for(o=qc(e.e.Tg(),t),n=c(e.g,119),r=0;r1?Dl(Ph(t.a[1],32),Xi(t.a[0],no)):Xi(t.a[0],no),l0(jr(t.e,n))))}function AI(e,t){var n;return Oo(e)&&Oo(t)&&(n=e%t,pT>5,t&=31,r=e.d+n+(t==0?0:1),i=oe(Qt,_n,25,r,15,1),lDt(i,e.a,n,t),o=new km(e.e,r,i),R5(o),o}function joe(e,t,n){var i,r;i=c(mc(N4,t),117),r=c(mc(hM,t),117),n?(bo(N4,e,i),bo(hM,e,r)):(bo(hM,e,i),bo(N4,e,r))}function WHe(e,t,n){var i,r,o;for(r=null,o=e.b;o;){if(i=e.a.ue(t,o.d),n&&i==0)return o;i>=0?o=o.a[1]:(r=o,o=o.a[0])}return r}function YHe(e,t,n){var i,r,o;for(r=null,o=e.b;o;){if(i=e.a.ue(t,o.d),n&&i==0)return o;i<=0?o=o.a[0]:(r=o,o=o.a[1])}return r}function g9t(e,t,n,i){var r,o,u;return r=!1,YKt(e.f,n,i)&&(B9t(e.f,e.a[t][n],e.a[t][i]),o=e.a[t],u=o[i],o[i]=o[n],o[n]=u,r=!0),r}function Aoe(e,t,n,i,r){var o,u,a;for(u=r;t.b!=t.c;)o=c(Qy(t),10),a=c(qo(o,i).Xb(0),11),e.d[a.p]=u++,n.c[n.c.length]=a;return u}function Ooe(e,t,n){var i,r,o,u,a;return u=e.k,a=t.k,i=n[u.g][a.g],r=Te(iw(e,i)),o=Te(iw(t,i)),g.Math.max((yt(r),r),(yt(o),o))}function b9t(e,t,n){var i,r,o,u;for(i=n/e.c.length,r=0,u=new q(e);u.a2e3&&(Wtt=e,Pk=g.setTimeout(Eyt,10))),Sk++==0?(XCt((iZ(),rhe)),!0):!1}function w9t(e,t){var n,i,r;for(i=new Kt(Ht(Vi(e).a.Kc(),new j));dn(i);)if(n=c(rn(i),17),r=n.d.i,r.c==t)return!1;return!0}function Doe(e,t){var n,i;if(Q(t,245)){i=c(t,245);try{return n=e.vd(i),n==0}catch(r){if(r=gi(r),!Q(r,205))throw V(r)}}return!1}function m9t(){return Error.stackTraceLimit>0?(g.Error.stackTraceLimit=Error.stackTraceLimit=64,!0):"stack"in new Error}function v9t(e,t){return Il(),Il(),Na(A1),(g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t)))>0}function koe(e,t){return Il(),Il(),Na(A1),(g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t)))<0}function QHe(e,t){return Il(),Il(),Na(A1),(g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t)))<=0}function NK(e,t){for(var n=0;!t[n]||t[n]=="";)n++;for(var i=t[n++];nYH)return n.fh();if(i=n.Zg(),i||n==e)break}return i}function Roe(e){return X8(),Q(e,156)?c(Bt(Gj,cnt),288).vg(e):tu(Gj,Fs(e))?c(Bt(Gj,Fs(e)),288).vg(e):null}function _9t(e){if(b7(GE,e))return Pt(),ZE;if(b7(_V,e))return Pt(),hb;throw V(new St("Expecting true or false"))}function E9t(e,t){if(t.c==e)return t.d;if(t.d==e)return t.c;throw V(new St("Input edge is not connected to the input port."))}function rze(e,t){return e.e>t.e?1:e.et.d?e.e:e.d=48&&e<48+g.Math.min(10,10)?e-48:e>=97&&e<97?e-97+10:e>=65&&e<65?e-65+10:-1}function cze(e,t){var n;return le(t)===le(e)?!0:!Q(t,21)||(n=c(t,21),n.gc()!=e.gc())?!1:e.Ic(n)}function S9t(e,t){var n,i,r,o;return i=e.a.length-1,n=t-e.b&i,o=e.c-t&i,r=e.c-e.b&i,LDe(n=o?(Ejt(e,t),-1):(Sjt(e,t),1)}function P9t(e,t){var n,i;for(n=(fn(t,e.length),e.charCodeAt(t)),i=t+1;it.e?1:e.ft.f?1:fi(e)-fi(t)}function b7(e,t){return yt(e),t==null?!1:rt(e,t)?!0:e.length==t.length&&rt(e.toLowerCase(),t.toLowerCase())}function k9t(e,t){var n,i,r,o;for(i=0,r=t.gc();i0&&uc(e,128)<0?(t=tn(e)+128,n=(MRe(),ghe)[t],!n&&(n=ghe[t]=new uQ(e)),n):new uQ(e)}function uze(e,t){var n,i;return n=t.Hh(e.a),n&&(i=ln(ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),Dn)),i!=null)?i:t.ne()}function R9t(e,t){var n,i;return n=t.Hh(e.a),n&&(i=ln(ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),Dn)),i!=null)?i:t.ne()}function x9t(e,t){i$();var n,i;for(i=new Kt(Ht(xh(e).a.Kc(),new j));dn(i);)if(n=c(rn(i),17),n.d.i==t||n.c.i==t)return n;return null}function Noe(e,t,n){this.c=e,this.f=new Se,this.e=new Tr,this.j=new Gte,this.n=new Gte,this.b=t,this.g=new Ru(t.c,t.d,t.b,t.a),this.a=n}function FK(e){var t,n,i,r;for(this.a=new Eh,this.d=new er,this.e=0,n=e,i=0,r=n.length;i0):!1}function fze(e){var t;le(Ke(e,(kn(),qv)))===le((Rh(),Mx))&&(yi(e)?(t=c(Ke(yi(e),qv),334),ao(e,qv,t)):ao(e,qv,XP))}function B9t(e,t,n){var i,r;vq(e.e,t,n,(Ie(),Mt)),vq(e.i,t,n,jt),e.a&&(r=c(B(t,(ye(),Hn)),11),i=c(B(n,Hn),11),a$(e.g,r,i))}function hze(e,t,n){var i,r,o;i=t.c.p,o=t.p,e.b[i][o]=new jLe(e,t),n&&(e.a[i][o]=new LTe(t),r=c(B(t,(ye(),X0)),10),r&&it(e.d,r,t))}function dze(e,t){var n,i,r;if(Ee(Fk,e),t.Fc(e),n=c(Bt(AG,e),21),n)for(r=n.Kc();r.Ob();)i=c(r.Pb(),33),Do(Fk,i,0)!=-1||dze(i,t)}function $9t(e,t,n){var i;(dnt?(GAt(e),!0):gnt||pnt?(a_(),!0):bnt&&(a_(),!1))&&(i=new Kke(t),i.b=n,HDt(e,i))}function BK(e,t){var n;n=!e.A.Hc((ou(),Cb))||e.q==(wr(),Ic),e.u.Hc((js(),Wh))?n?uHt(e,t):HXe(e,t):e.u.Hc(X1)&&(n?Iqt(e,t):iJe(e,t))}function hE(e,t){var n,i;if(++e.j,t!=null&&(n=(i=e.a.Cb,Q(i,97)?c(i,97).Jg():null),xRt(t,n))){p2(e.a,4,n);return}p2(e.a,4,c(t,126))}function gze(e,t,n){return new Ru(g.Math.min(e.a,t.a)-n/2,g.Math.min(e.b,t.b)-n/2,g.Math.abs(e.a-t.a)+n,g.Math.abs(e.b-t.b)+n)}function K9t(e,t){var n,i;return n=Uc(e.a.c.p,t.a.c.p),n!=0?n:(i=Uc(e.a.d.i.p,t.a.d.i.p),i!=0?i:Uc(t.a.d.p,e.a.d.p))}function q9t(e,t,n){var i,r,o,u;return o=t.j,u=n.j,o!=u?o.g-u.g:(i=e.f[t.p],r=e.f[n.p],i==0&&r==0?0:i==0?-1:r==0?1:zi(i,r))}function bze(e,t,n){var i,r,o;if(!n[t.d])for(n[t.d]=!0,r=new q(Gm(t));r.a=r)return r;for(t=t>0?t:0;ti&&vi(t,i,null),t}function wze(e,t){var n,i;for(i=e.a.length,t.lengthi&&vi(t,i,null),t}function Xg(e,t,n){var i,r,o;return r=c(Bt(e.e,t),387),r?(o=ste(r,n),uDe(e,r),o):(i=new Rte(e,t,n),Kn(e.e,t,i),RLe(i),null)}function V9t(e){var t;if(e==null)return null;if(t=Bxt(Ec(e,!0)),t==null)throw V(new UN("Invalid hexBinary value: '"+e+"'"));return t}function DI(e){return T1(),uc(e,0)<0?uc(e,-1)!=0?new Ece(-1,N_(e)):gG:uc(e,10)<=0?Che[tn(e)]:new Ece(1,e)}function KK(){return fD(),U(G(eit,1),_e,159,0,[Qnt,Jnt,Znt,Hnt,qnt,znt,Unt,Gnt,Vnt,Xnt,Ynt,Wnt,$nt,Bnt,Knt,Nnt,Lnt,Fnt,Rnt,knt,xnt,SG])}function mze(e){var t;this.d=new Se,this.j=new Tr,this.g=new Tr,t=e.g.b,this.f=c(B(Nr(t),(Oe(),Pu)),103),this.e=ge(Te(m7(t,Hw)))}function vze(e){this.b=new Se,this.e=new Se,this.d=e,this.a=!$S(si(new ht(null,new t0(new Rl(e.b))),new IS(new y4e))).sd((Ig(),i4))}function fl(){fl=Z,Tt=new hC("PARENTS",0),ar=new hC("NODES",1),kf=new hC("EDGES",2),_b=new hC("PORTS",3),Od=new hC("LABELS",4)}function Um(){Um=Z,W1=new gC("DISTRIBUTED",0),Nj=new gC("JUSTIFIED",1),kwe=new gC("BEGIN",2),JP=new gC(FE,3),Rwe=new gC("END",4)}function G9t(e){var t;switch(t=e.yi(null),t){case 10:return 0;case 15:return 1;case 14:return 2;case 11:return 3;case 21:return 4}return-1}function qK(e){switch(e.g){case 1:return eo(),Gh;case 4:return eo(),ga;case 2:return eo(),Va;case 3:return eo(),Vh}return eo(),ih}function U9t(e,t,n){var i;switch(i=n.q.getFullYear()-O1+O1,i<0&&(i=-i),t){case 1:e.a+=i;break;case 2:Vf(e,i%100,2);break;default:Vf(e,i,t)}}function Mn(e,t){var n,i;if(Vp(t,e.b),t>=e.b>>1)for(i=e.c,n=e.b;n>t;--n)i=i.b;else for(i=e.a.a,n=0;n=64&&t<128&&(r=Dl(r,Ph(1,t-64)));return r}function m7(e,t){var n,i;return i=null,nr(e,(kn(),r3))&&(n=c(B(e,r3),94),n.Xe(t)&&(i=n.We(t))),i==null&&Nr(e)&&(i=B(Nr(e),t)),i}function Eze(e,t){var n,i,r;r=t.d.i,i=r.k,!(i==(Dt(),Ui)||i==Gl)&&(n=new Kt(Ht(Vi(r).a.Kc(),new j)),dn(n)&&Kn(e.k,t,c(rn(n),17)))}function HK(e,t){var n,i,r;return i=at(e.Tg(),t),n=t-e.Ah(),n<0?(r=e.Yg(i),r>=0?e.lh(r):jq(e,i)):n<0?jq(e,i):c(i,66).Nj().Sj(e,e.yh(),n)}function Le(e){var t;if(Q(e.a,4)){if(t=Roe(e.a),t==null)throw V(new Ao(vZe+e.b+"'. "+mZe+(Sh(Uj),Uj.k)+gfe));return t}else return e.a}function X9t(e){var t;if(e==null)return null;if(t=pHt(Ec(e,!0)),t==null)throw V(new UN("Invalid base64Binary value: '"+e+"'"));return t}function Vt(e){var t;try{return t=e.i.Xb(e.e),e.mj(),e.g=e.e++,t}catch(n){throw n=gi(n),Q(n,73)?(e.mj(),V(new tc)):V(n)}}function zK(e){var t;try{return t=e.c.ki(e.e),e.mj(),e.g=e.e++,t}catch(n){throw n=gi(n),Q(n,73)?(e.mj(),V(new tc)):V(n)}}function o6(){o6=Z,pde=(kn(),hwe),TG=zpe,dit=n3,bde=Sb,wit=(A7(),Whe),pit=Ghe,mit=Xhe,bit=Vhe,git=(bK(),hde),IG=lit,gde=fit,Nk=hit}function v7(e){switch(SZ(),this.c=new Se,this.d=e,e.g){case 0:case 2:this.a=One(Rde),this.b=Ii;break;case 3:case 1:this.a=Rde,this.b=$i}}function Sze(e,t,n){var i,r;if(e.c)es(e.c,e.c.i+t),ts(e.c,e.c.j+n);else for(r=new q(e.b);r.a0&&(Ee(e.b,new iRe(t.a,n)),i=t.a.length,0i&&(t.a+=sDe(oe(Yu,vf,25,-i,15,1))))}function Pze(e,t){var n,i,r;for(n=e.o,r=c(c(Vn(e.r,t),21),84).Kc();r.Ob();)i=c(r.Pb(),111),i.e.a=Z8t(i,n.a),i.e.b=n.b*ge(Te(i.b.We(Rk)))}function Q9t(e,t){var n,i,r,o;return r=e.k,n=ge(Te(B(e,(ye(),J0)))),o=t.k,i=ge(Te(B(t,J0))),o!=(Dt(),Bi)?-1:r!=Bi?1:n==i?0:n=0?e.hh(t,n,i):(e.eh()&&(i=(r=e.Vg(),r>=0?e.Qg(i):e.eh().ih(e,-1-r,null,i))),e.Sg(t,n,i))}function Boe(e,t){switch(t){case 7:!e.e&&(e.e=new dt(rr,e,7,4)),Xt(e.e);return;case 8:!e.d&&(e.d=new dt(rr,e,8,5)),Xt(e.d);return}Moe(e,t)}function hl(e,t){var n;n=e.Zc(t);try{return n.Pb()}catch(i){throw i=gi(i),Q(i,109)?V(new ho("Can't get element "+t)):V(i)}}function $oe(e,t){this.e=e,t=0&&(n.d=e.t);break;case 3:e.t>=0&&(n.a=e.t)}e.C&&(n.b=e.C.b,n.c=e.C.c)}function m2(){m2=Z,GT=new E9(yD,0),VT=new E9(az,1),UT=new E9(lz,2),WT=new E9(fz,3),GT.a=!1,VT.a=!0,UT.a=!1,WT.a=!0}function c6(){c6=Z,YT=new _9(yD,0),xk=new _9(az,1),Lk=new _9(lz,2),XT=new _9(fz,3),YT.a=!1,xk.a=!0,Lk.a=!1,XT.a=!0}function i8t(e){var t;t=e.a;do t=c(rn(new Kt(Ht(ko(t).a.Kc(),new j))),17).c.i,t.k==(Dt(),ur)&&e.b.Fc(t);while(t.k==(Dt(),ur));e.b=Kg(e.b)}function r8t(e){var t,n,i;for(i=e.c.a,e.p=(nn(i),new ps(i)),n=new q(i);n.an.b)return!0}return!1}function VK(e,t){return fr(e)?!!Ktt[t]:e.hm?!!e.hm[t]:kp(e)?!!$tt[t]:Dp(e)?!!Btt[t]:!1}function ao(e,t,n){return n==null?(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),d7(e.o,t)):(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),O7(e.o,t,n)),e}function u8t(e,t,n,i){var r,o;o=t.Xe((kn(),zv))?c(t.We(zv),21):e.j,r=Jjt(o),r!=(fD(),SG)&&(n&&!xoe(r)||Vce($xt(e,r,i),t))}function _7(e,t,n,i){var r,o,u;return o=at(e.Tg(),t),r=t-e.Ah(),r<0?(u=e.Yg(o),u>=0?e._g(u,n,!0):j0(e,o,n)):c(o,66).Nj().Pj(e,e.yh(),r,n,i)}function a8t(e,t,n,i){var r,o,u;n.mh(t)&&(Wr(),N$(t)?(r=c(n.ah(t),153),k9t(e,r)):(o=(u=t,u?c(i,49).xh(u):null),o&&fvt(n.ah(t),o)))}function l8t(e){switch(e.g){case 1:return v0(),zT;case 3:return v0(),HT;case 2:return v0(),MG;case 4:return v0(),PG;default:return null}}function Koe(e){switch(typeof e){case _H:return md(e);case Nue:return xi(e);case M2:return Pt(),e?1231:1237;default:return e==null?0:Xb(e)}}function f8t(e,t,n){if(e.e)switch(e.b){case 1:$5t(e.c,t,n);break;case 0:K5t(e.c,t,n)}else hFe(e.c,t,n);e.a[t.p][n.p]=e.c.i,e.a[n.p][t.p]=e.c.e}function jze(e){var t,n;if(e==null)return null;for(n=oe(nh,we,193,e.length,0,2),t=0;t=0)return r;if(e.Fk()){for(i=0;i=r)throw V(new Fp(t,r));if(e.hi()&&(i=e.Xc(n),i>=0&&i!=t))throw V(new St(RT));return e.mi(t,n)}function qoe(e,t){if(this.a=c(nn(e),245),this.b=c(nn(t),245),e.vd(t)>0||e==(KN(),iG)||t==($N(),rG))throw V(new St("Invalid range: "+uFe(e,t)))}function Aze(e){var t,n;for(this.b=new Se,this.c=e,this.a=!1,n=new q(e.a);n.a0),(t&-t)==t)return xi(t*$s(e,31)*4656612873077393e-25);do n=$s(e,31),i=n%t;while(n-i+(t-1)<0);return xi(i)}function md(e){qke();var t,n,i;return n=":"+e,i=Ok[n],i!=null?xi((yt(i),i)):(i=Bhe[n],t=i==null?iNt(e):xi((yt(i),i)),D5t(),Ok[n]=t,t)}function Dze(e,t,n){Wt(n,"Compound graph preprocessor",1),e.a=new u0,FXe(e,t,null),z$t(e,t),CLt(e),pe(t,(ye(),rge),e.a),e.a=null,Is(e.b),qt(n)}function g8t(e,t,n){switch(n.g){case 1:e.a=t.a/2,e.b=0;break;case 2:e.a=t.a,e.b=t.b/2;break;case 3:e.a=t.a/2,e.b=t.b;break;case 4:e.a=0,e.b=t.b/2}}function b8t(e){var t,n,i;for(i=c(Vn(e.a,(Zm(),dR)),15).Kc();i.Ob();)n=c(i.Pb(),101),t=tce(n),E_(e,n,t[0],(m0(),G0),0),E_(e,n,t[1],U0,1)}function p8t(e){var t,n,i;for(i=c(Vn(e.a,(Zm(),gR)),15).Kc();i.Ob();)n=c(i.Pb(),101),t=tce(n),E_(e,n,t[0],(m0(),G0),0),E_(e,n,t[1],U0,1)}function GK(e){switch(e.g){case 0:return null;case 1:return new DKe;case 2:return new ZQ;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function kI(e,t,n){var i,r;for(FTt(e,t-e.s,n-e.t),r=new q(e.n);r.a1&&(o=d8t(e,t)),o}function UK(e){var t;return e.f&&e.f.kh()&&(t=c(e.f,49),e.f=c(S1(e,t),82),e.f!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,8,t,e.f))),e.f}function WK(e){var t;return e.i&&e.i.kh()&&(t=c(e.i,49),e.i=c(S1(e,t),82),e.i!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,7,t,e.i))),e.i}function Xr(e){var t;return e.b&&(e.b.Db&64)!=0&&(t=e.b,e.b=c(S1(e,t),18),e.b!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,21,t,e.b))),e.b}function P7(e,t){var n,i,r;e.d==null?(++e.e,++e.f):(i=t.Sh(),kLt(e,e.f+1),r=(i&Fn)%e.d.length,n=e.d[r],!n&&(n=e.d[r]=e.uj()),n.Fc(t),++e.f)}function Voe(e,t,n){var i;return t.Kj()?!1:t.Zj()!=-2?(i=t.zj(),i==null?n==null:$n(i,n)):t.Hj()==e.e.Tg()&&n==null}function M7(){var e;pu(16,TJe),e=SKe(16),this.b=oe(cG,dT,317,e,0,1),this.c=oe(cG,dT,317,e,0,1),this.a=null,this.e=null,this.i=0,this.f=e-1,this.g=0}function Nh(e){ate.call(this),this.k=(Dt(),Ui),this.j=(pu(6,mw),new Dc(6)),this.b=(pu(2,mw),new Dc(2)),this.d=new xN,this.f=new zQ,this.a=e}function m8t(e){var t,n;e.c.length<=1||(t=AWe(e,(Ie(),Yt)),mGe(e,c(t.a,19).a,c(t.b,19).a),n=AWe(e,Mt),mGe(e,c(n.a,19).a,c(n.b,19).a))}function s6(){s6=Z,Lbe=new uC("SIMPLE",0),QU=new uC(Iz,1),ZU=new uC("LINEAR_SEGMENTS",2),jP=new uC("BRANDES_KOEPF",3),AP=new uC(eZe,4)}function Goe(e,t,n){Wy(c(B(t,(Oe(),ji)),98))||($ie(e,t,vd(t,n)),$ie(e,t,vd(t,(Ie(),Yt))),$ie(e,t,vd(t,_t)),st(),cr(t.j,new RTe(e)))}function kze(e,t,n,i){var r,o,u;for(r=c(Vn(i?e.a:e.b,t),21),u=r.Kc();u.Ob();)if(o=c(u.Pb(),33),Y7(e,n,o))return!0;return!1}function YK(e){var t,n;for(n=new $t(e);n.e!=n.i.gc();)if(t=c(Vt(n),87),t.e||(!t.d&&(t.d=new qi(oo,t,1)),t.d).i!=0)return!0;return!1}function XK(e){var t,n;for(n=new $t(e);n.e!=n.i.gc();)if(t=c(Vt(n),87),t.e||(!t.d&&(t.d=new qi(oo,t,1)),t.d).i!=0)return!0;return!1}function v8t(e){var t,n,i;for(t=0,i=new q(e.c.a);i.a102?-1:e<=57?e-48:e<65?-1:e<=70?e-65+10:e<97?-1:e-97+10}function ZK(e,t){if(e==null)throw V(new Ly("null key in entry: null="+t));if(t==null)throw V(new Ly("null value in entry: "+e+"=null"))}function y8t(e,t){for(var n,i;e.Ob();)if(!t.Ob()||(n=e.Pb(),i=t.Pb(),!(le(n)===le(i)||n!=null&&$n(n,i))))return!1;return!t.Ob()}function xze(e,t){var n;return n=U(G(gr,1),lo,25,15,[mK(e.a[0],t),mK(e.a[1],t),mK(e.a[2],t)]),e.d&&(n[0]=g.Math.max(n[0],n[2]),n[2]=n[0]),n}function Lze(e,t){var n;return n=U(G(gr,1),lo,25,15,[e7(e.a[0],t),e7(e.a[1],t),e7(e.a[2],t)]),e.d&&(n[0]=g.Math.max(n[0],n[2]),n[2]=n[0]),n}function Qg(){Qg=Z,sU=new sC("GREEDY",0),x1e=new sC($Qe,1),uU=new sC(Iz,2),pP=new sC("MODEL_ORDER",3),bP=new sC("GREEDY_MODEL_ORDER",4)}function Nze(e,t){var n,i,r;for(e.b[t.g]=1,i=Mn(t.d,0);i.b!=i.d.c;)n=c(Pn(i),188),r=n.c,e.b[r.g]==1?Cn(e.a,n):e.b[r.g]==2?e.b[r.g]=1:Nze(e,r)}function _8t(e,t){var n,i,r;for(r=new Dc(t.gc()),i=t.Kc();i.Ob();)n=c(i.Pb(),286),n.c==n.f?vE(e,n,n.c):vkt(e,n)||(r.c[r.c.length]=n);return r}function E8t(e,t,n){var i,r,o,u,a;for(a=e.r+t,e.r+=t,e.d+=n,i=n/e.n.c.length,r=0,u=new q(e.n);u.ao&&vi(t,o,null),t}function L8t(e,t){var n,i;if(i=e.gc(),t==null){for(n=0;n0&&(l+=r),d[p]=u,u+=a*(l+i)}function Vze(e){var t,n,i;for(i=e.f,e.n=oe(gr,lo,25,i,15,1),e.d=oe(gr,lo,25,i,15,1),t=0;t0?e.c:0),++r;e.b=i,e.d=o}function H8t(e,t){var n,i,r,o,u;for(i=0,r=0,n=0,u=new q(t);u.a0?e.g:0),++n;e.c=r,e.d=i}function Xze(e,t){var n;return n=U(G(gr,1),lo,25,15,[zoe(e,(al(),Jo),t),zoe(e,Nc,t),zoe(e,Qo,t)]),e.f&&(n[0]=g.Math.max(n[0],n[2]),n[2]=n[0]),n}function z8t(e,t,n){var i;try{Q7(e,t+e.j,n+e.k,!1,!0)}catch(r){throw r=gi(r),Q(r,73)?(i=r,V(new ho(i.g+ED+t+zr+n+")."))):V(r)}}function V8t(e,t,n){var i;try{Q7(e,t+e.j,n+e.k,!0,!1)}catch(r){throw r=gi(r),Q(r,73)?(i=r,V(new ho(i.g+ED+t+zr+n+")."))):V(r)}}function Jze(e){var t;nr(e,(Oe(),Q0))&&(t=c(B(e,Q0),21),t.Hc((fw(),Ga))?(t.Mc(Ga),t.Fc(Ua)):t.Hc(Ua)&&(t.Mc(Ua),t.Fc(Ga)))}function Qze(e){var t;nr(e,(Oe(),Q0))&&(t=c(B(e,Q0),21),t.Hc((fw(),Ya))?(t.Mc(Ya),t.Fc(pa)):t.Hc(pa)&&(t.Mc(pa),t.Fc(Ya)))}function G8t(e,t,n){Wt(n,"Self-Loop ordering",1),Di(Yc(si(si($o(new ht(null,new bt(t.b,16)),new cEe),new sEe),new uEe),new aEe),new uTe(e)),qt(n)}function xI(e,t,n,i){var r,o;for(r=t;r0&&(r.b+=t),r}function T7(e,t){var n,i,r;for(r=new Tr,i=e.Kc();i.Ob();)n=c(i.Pb(),37),v6(n,0,r.b),r.b+=n.f.b+t,r.a=g.Math.max(r.a,n.f.a);return r.a>0&&(r.a+=t),r}function eVe(e){var t,n,i;for(i=Fn,n=new q(e.a);n.a>16==6?e.Cb.ih(e,5,ml,t):(i=Xr(c(at((n=c(vt(e,16),26),n||e.zh()),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function J8t(e){T_();var t=e.e;if(t&&t.stack){var n=t.stack,i=t+` -`;return n.substring(0,i.length)==i&&(n=n.substring(i.length)),n.split(` -`)}return[]}function Q8t(e){var t;return t=(wKe(),Ztt),t[e>>>28]|t[e>>24&15]<<4|t[e>>20&15]<<8|t[e>>16&15]<<12|t[e>>12&15]<<16|t[e>>8&15]<<20|t[e>>4&15]<<24|t[e&15]<<28}function iVe(e){var t,n,i;e.b==e.c&&(i=e.a.length,n=Dre(g.Math.max(8,i))<<1,e.b!=0?(t=Da(e.a,n),MKe(e,t,i),e.a=t,e.b=0):PAe(e.a,n),e.c=i)}function Z8t(e,t){var n;return n=e.b,n.Xe((kn(),zs))?n.Hf()==(Ie(),Mt)?-n.rf().a-ge(Te(n.We(zs))):t+ge(Te(n.We(zs))):n.Hf()==(Ie(),Mt)?-n.rf().a:t}function LI(e){var t;return e.b.c.length!=0&&c(Ne(e.b,0),70).a?c(Ne(e.b,0),70).a:(t=VB(e),t??""+(e.c?Do(e.c.a,e,0):-1))}function j7(e){var t;return e.f.c.length!=0&&c(Ne(e.f,0),70).a?c(Ne(e.f,0),70).a:(t=VB(e),t??""+(e.i?Do(e.i.j,e,0):-1))}function eOt(e,t){var n,i;if(t<0||t>=e.gc())return null;for(n=t;n0?e.c:0),r=g.Math.max(r,t.d),++i;e.e=o,e.b=r}function nOt(e){var t,n;if(!e.b)for(e.b=nO(c(e.f,118).Ag().i),n=new $t(c(e.f,118).Ag());n.e!=n.i.gc();)t=c(Vt(n),137),Ee(e.b,new GN(t));return e.b}function iOt(e,t){var n,i,r;if(t.dc())return p_(),p_(),Wj;for(n=new cke(e,t.gc()),r=new $t(e);r.e!=r.i.gc();)i=Vt(r),t.Hc(i)&&on(n,i);return n}function Zoe(e,t,n,i){return t==0?i?(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),e.o):(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),XC(e.o)):_7(e,t,n,i)}function sq(e){var t,n;if(e.rb)for(t=0,n=e.rb.i;t>22),r+=i>>22,r<0)?!1:(e.l=n&qs,e.m=i&qs,e.h=r&Kh,!0)}function sOt(e,t,n,i,r,o,u){var a,l;return!(t.Ae()&&(l=e.a.ue(n,i),l<0||l==0)||t.Be()&&(a=e.a.ue(n,o),a>0||a==0))}function uOt(e,t){iE();var n;if(n=e.j.g-t.j.g,n!=0)return 0;switch(e.j.g){case 2:return AK(t,I1e)-AK(e,I1e);case 4:return AK(e,C1e)-AK(t,C1e)}return 0}function aOt(e){switch(e.g){case 0:return lU;case 1:return fU;case 2:return hU;case 3:return dU;case 4:return wR;case 5:return gU;default:return null}}function vo(e,t,n){var i,r;return i=(r=new FN,Ug(r,t),kc(r,n),on((!e.c&&(e.c=new Me(cp,e,12,10)),e.c),r),r),hd(i,0),Zp(i,1),pd(i,!0),bd(i,!0),i}function v2(e,t){var n,i;if(t>=e.i)throw V(new kF(t,e.i));return++e.j,n=e.g[t],i=e.i-t-1,i>0&&bc(e.g,t+1,e.g,t,i),vi(e.g,--e.i,null),e.fi(t,n),e.ci(),n}function rVe(e,t){var n,i;return e.Db>>16==17?e.Cb.ih(e,21,va,t):(i=Xr(c(at((n=c(vt(e,16),26),n||e.zh()),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function lOt(e){var t,n,i,r;for(st(),cr(e.c,e.a),r=new q(e.c);r.an.a.c.length))throw V(new St("index must be >= 0 and <= layer node count"));e.c&&Jc(e.c.a,e),e.c=n,n&&Bp(n.a,t,e)}function aVe(e,t){var n,i,r;for(i=new Kt(Ht(xh(e).a.Kc(),new j));dn(i);)return n=c(rn(i),17),r=c(t.Kb(n),10),new LA(nn(r.n.b+r.o.b/2));return DS(),DS(),nG}function lVe(e,t){this.c=new en,this.a=e,this.b=t,this.d=c(B(e,(ye(),Rv)),304),le(B(e,(Oe(),hbe)))===le((eI(),mR))?this.e=new KAe:this.e=new $Ae}function pOt(e,t){var n,i,r,o;for(o=0,i=new q(e);i.a>16==6?e.Cb.ih(e,6,rr,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Ox)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function oce(e,t){var n,i;return e.Db>>16==7?e.Cb.ih(e,1,Hj,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Gwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function cce(e,t){var n,i;return e.Db>>16==9?e.Cb.ih(e,9,Ei,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Wwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function hVe(e,t){var n,i;return e.Db>>16==5?e.Cb.ih(e,9,$x,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),xd)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function sce(e,t){var n,i;return e.Db>>16==3?e.Cb.ih(e,0,Vj,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),Rd)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function dVe(e,t){var n,i;return e.Db>>16==7?e.Cb.ih(e,6,ml,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),Nd)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function gVe(){this.a=new y6e,this.g=new M7,this.j=new M7,this.b=new en,this.d=new M7,this.i=new M7,this.k=new en,this.c=new en,this.e=new en,this.f=new en}function yOt(e,t,n){var i,r,o;for(n<0&&(n=0),o=e.i,r=n;rYH)return gE(e,i);if(i==e)return!0}}return!1}function EOt(e){switch(X9(),e.q.g){case 5:QGe(e,(Ie(),_t)),QGe(e,Yt);break;case 4:UUe(e,(Ie(),_t)),UUe(e,Yt);break;default:UXe(e,(Ie(),_t)),UXe(e,Yt)}}function SOt(e){switch(X9(),e.q.g){case 5:dUe(e,(Ie(),jt)),dUe(e,Mt);break;case 4:Pze(e,(Ie(),jt)),Pze(e,Mt);break;default:WXe(e,(Ie(),jt)),WXe(e,Mt)}}function POt(e){var t,n;t=c(B(e,(dl(),Rit)),19),t?(n=t.a,n==0?pe(e,(v1(),qk),new jK):pe(e,(v1(),qk),new cO(n))):pe(e,(v1(),qk),new cO(1))}function MOt(e,t){var n;switch(n=e.i,t.g){case 1:return-(e.n.b+e.o.b);case 2:return e.n.a-n.o.a;case 3:return e.n.b-n.o.b;case 4:return-(e.n.a+e.o.a)}return 0}function COt(e,t){switch(e.g){case 0:return t==(Ku(),K1)?uR:aR;case 1:return t==(Ku(),K1)?uR:tj;case 2:return t==(Ku(),K1)?tj:aR;default:return tj}}function FI(e,t){var n,i,r;for(Jc(e.a,t),e.e-=t.r+(e.a.c.length==0?0:e.c),r=Ule,i=new q(e.a);i.a>16==3?e.Cb.ih(e,12,Ei,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Vwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function ace(e,t){var n,i;return e.Db>>16==11?e.Cb.ih(e,10,Ei,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Uwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function bVe(e,t){var n,i;return e.Db>>16==10?e.Cb.ih(e,11,va,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),Ld)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function pVe(e,t){var n,i;return e.Db>>16==10?e.Cb.ih(e,12,ya,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),em)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function ra(e){var t;return(e.Bb&1)==0&&e.r&&e.r.kh()&&(t=c(e.r,49),e.r=c(S1(e,t),138),e.r!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,8,t,e.r))),e.r}function aq(e,t,n){var i;return i=U(G(gr,1),lo,25,15,[Rce(e,(al(),Jo),t,n),Rce(e,Nc,t,n),Rce(e,Qo,t,n)]),e.f&&(i[0]=g.Math.max(i[0],i[2]),i[2]=i[0]),i}function IOt(e,t){var n,i,r;if(r=_8t(e,t),r.c.length!=0)for(cr(r,new D_e),n=r.c.length,i=0;i>19,d=t.h>>19,l!=d?d-l:(r=e.h,a=t.h,r!=a?r-a:(i=e.m,u=t.m,i!=u?i-u:(n=e.l,o=t.l,n-o)))}function A7(){A7=Z,Jhe=(X7(),_G),Xhe=new ut(Que,Jhe),Yhe=(EO(),yG),Whe=new ut(Zue,Yhe),Uhe=(p7(),vG),Ghe=new ut(eae,Uhe),Vhe=new ut(tae,(Pt(),!0))}function a6(e,t,n){var i,r;i=t*n,Q(e.g,145)?(r=o2(e),r.f.d?r.f.a||(e.d.a+=i+ql):(e.d.d-=i+ql,e.d.a+=i+ql)):Q(e.g,10)&&(e.d.d-=i,e.d.a+=2*i)}function wVe(e,t,n){var i,r,o,u,a;for(r=e[n.g],a=new q(t.d);a.a0?e.g:0),++n;t.b=i,t.e=r}function mVe(e){var t,n,i;if(i=e.b,$8e(e.i,i.length)){for(n=i.length*2,e.b=oe(cG,dT,317,n,0,1),e.c=oe(cG,dT,317,n,0,1),e.f=n-1,e.i=0,t=e.a;t;t=t.c)VI(e,t,t);++e.g}}function xOt(e,t,n,i){var r,o,u,a;for(r=0;ru&&(a=u/i),r>o&&(l=o/r),lf(e,g.Math.min(a,l)),e}function NOt(){nD();var e,t;try{if(t=c(yce((c1(),_a),WE),2014),t)return t}catch(n){if(n=gi(n),Q(n,102))e=n,sne((un(),e));else throw V(n)}return new p6e}function FOt(){a$e();var e,t;try{if(t=c(yce((c1(),_a),lb),2024),t)return t}catch(n){if(n=gi(n),Q(n,102))e=n,sne((un(),e));else throw V(n)}return new xPe}function BOt(){nD();var e,t;try{if(t=c(yce((c1(),_a),la),1941),t)return t}catch(n){if(n=gi(n),Q(n,102))e=n,sne((un(),e));else throw V(n)}return new q6e}function $Ot(e,t,n){var i,r;return r=e.e,e.e=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,4,r,t),n?n.Ei(i):n=i),r!=t&&(t?n=AE(e,H7(e,t),n):n=AE(e,e.a,n)),n}function vVe(){u9.call(this),this.e=-1,this.a=!1,this.p=Ar,this.k=-1,this.c=-1,this.b=-1,this.g=!1,this.f=-1,this.j=-1,this.n=-1,this.i=-1,this.d=-1,this.o=Ar}function KOt(e,t){var n,i,r;if(i=e.b.d.d,e.a||(i+=e.b.d.a),r=t.b.d.d,t.a||(r+=t.b.d.a),n=zi(i,r),n==0){if(!e.a&&t.a)return-1;if(!t.a&&e.a)return 1}return n}function qOt(e,t){var n,i,r;if(i=e.b.b.d,e.a||(i+=e.b.b.a),r=t.b.b.d,t.a||(r+=t.b.b.a),n=zi(i,r),n==0){if(!e.a&&t.a)return-1;if(!t.a&&e.a)return 1}return n}function HOt(e,t){var n,i,r;if(i=e.b.g.d,e.a||(i+=e.b.g.a),r=t.b.g.d,t.a||(r+=t.b.g.a),n=zi(i,r),n==0){if(!e.a&&t.a)return-1;if(!t.a&&e.a)return 1}return n}function fce(){fce=Z,Wit=Cs(Nn(Nn(Nn(new tr,(Hr(),Pc),(Jr(),h1e)),Pc,d1e),Io,g1e),Io,t1e),Xit=Nn(Nn(new tr,Pc,Wde),Pc,n1e),Yit=Cs(new tr,Io,r1e)}function zOt(e){var t,n,i,r,o;for(t=c(B(e,(ye(),yP)),83),o=e.n,i=t.Cc().Kc();i.Ob();)n=c(i.Pb(),306),r=n.i,r.c+=o.a,r.d+=o.b,n.c?xWe(n):LWe(n);pe(e,yP,null)}function VOt(e,t,n){var i,r;switch(r=e.b,i=r.d,t.g){case 1:return-i.d-n;case 2:return r.o.a+i.c+n;case 3:return r.o.b+i.a+n;case 4:return-i.b-n;default:return-1}}function GOt(e){var t,n,i,r,o;if(i=0,r=$E,e.b)for(t=0;t<360;t++)n=t*.017453292519943295,tue(e,e.d,0,0,pv,n),o=e.b.ig(e.d),o0&&(u=(o&Fn)%e.d.length,r=fse(e,u,o,t),r)?(a=r.ed(n),a):(i=e.tj(o,t,n),e.c.Fc(i),null)}function gce(e,t){var n,i,r,o;switch(gd(e,t)._k()){case 3:case 2:{for(n=sv(t),r=0,o=n.i;r=0;i--)if(rt(e[i].d,t)||rt(e[i].d,n)){e.length>=i+1&&e.splice(0,i+1);break}return e}function BI(e,t){var n;return Oo(e)&&Oo(t)&&(n=e/t,pT0&&(e.b+=2,e.a+=i):(e.b+=1,e.a+=g.Math.min(i,r))}function CVe(e,t){var n,i;if(i=!1,fr(t)&&(i=!0,Zy(e,new qp(ln(t)))),i||Q(t,236)&&(i=!0,Zy(e,(n=yte(c(t,236)),new NA(n)))),!i)throw V(new zN(jfe))}function l7t(e,t,n,i){var r,o,u;return r=new Ah(e.e,1,10,(u=t.c,Q(u,88)?c(u,26):(ot(),Ea)),(o=n.c,Q(o,88)?c(o,26):(ot(),Ea)),wd(e,t),!1),i?i.Ei(r):i=r,i}function wce(e){var t,n;switch(c(B(Nr(e),(Oe(),rbe)),420).g){case 0:return t=e.n,n=e.o,new $e(t.a+n.a/2,t.b+n.b/2);case 1:return new go(e.n);default:return null}}function $I(){$I=Z,vR=new QS(qh,0),H1e=new QS("LEFTUP",1),V1e=new QS("RIGHTUP",2),q1e=new QS("LEFTDOWN",3),z1e=new QS("RIGHTDOWN",4),bU=new QS("BALANCED",5)}function f7t(e,t,n){var i,r,o;if(i=zi(e.a[t.p],e.a[n.p]),i==0){if(r=c(B(t,(ye(),U2)),15),o=c(B(n,U2),15),r.Hc(n))return-1;if(o.Hc(t))return 1}return i}function h7t(e){switch(e.g){case 1:return new u5e;case 2:return new a5e;case 3:return new s5e;case 0:return null;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function mce(e,t,n){switch(t){case 1:!e.n&&(e.n=new Me(Lo,e,1,7)),Xt(e.n),!e.n&&(e.n=new Me(Lo,e,1,7)),Mi(e.n,c(n,14));return;case 2:H5(e,ln(n));return}Fre(e,t,n)}function vce(e,t,n){switch(t){case 3:b0(e,ge(Te(n)));return;case 4:p0(e,ge(Te(n)));return;case 5:es(e,ge(Te(n)));return;case 6:ts(e,ge(Te(n)));return}mce(e,t,n)}function D7(e,t,n){var i,r,o;o=(i=new FN,i),r=$l(o,t,null),r&&r.Fi(),kc(o,n),on((!e.c&&(e.c=new Me(cp,e,12,10)),e.c),o),hd(o,0),Zp(o,1),pd(o,!0),bd(o,!0)}function yce(e,t){var n,i,r;return n=US(e.g,t),Q(n,235)?(r=c(n,235),r.Qh()==null,r.Nh()):Q(n,498)?(i=c(n,1938),r=i.b,r):null}function d7t(e,t,n,i){var r,o;return nn(t),nn(n),o=c(v5(e.d,t),19),g$e(!!o,"Row %s not in %s",t,e.e),r=c(v5(e.b,n),19),g$e(!!r,"Column %s not in %s",n,e.c),vqe(e,o.a,r.a,i)}function IVe(e,t,n,i,r,o,u){var a,l,d,p,v;if(p=r[o],d=o==u-1,a=d?i:0,v=Wze(a,p),i!=10&&U(G(e,u-o),t[o],n[o],a,v),!d)for(++o,l=0;l1||a==-1?(o=c(l,15),r.Wb(y9t(e,o))):r.Wb(Jq(e,c(l,56)))))}function y7t(e,t,n,i){g8e();var r=tG;function o(){for(var u=0;ucV)return n;r>-1e-6&&++n}return n}function Sce(e,t){var n;t!=e.b?(n=null,e.b&&(n=z8(e.b,e,-4,n)),t&&(n=w2(t,e,-4,n)),n=aHe(e,t,n),n&&n.Fi()):(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,t,t))}function AVe(e,t){var n;t!=e.f?(n=null,e.f&&(n=z8(e.f,e,-1,n)),t&&(n=w2(t,e,-1,n)),n=lHe(e,t,n),n&&n.Fi()):(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,0,t,t))}function OVe(e){var t,n,i;if(e==null)return null;if(n=c(e,15),n.dc())return"";for(i=new nd,t=n.Kc();t.Ob();)co(i,(Jn(),ln(t.Pb()))),i.a+=" ";return xF(i,i.a.length-1)}function DVe(e){var t,n,i;if(e==null)return null;if(n=c(e,15),n.dc())return"";for(i=new nd,t=n.Kc();t.Ob();)co(i,(Jn(),ln(t.Pb()))),i.a+=" ";return xF(i,i.a.length-1)}function T7t(e,t,n){var i,r;return i=e.c[t.c.p][t.p],r=e.c[n.c.p][n.p],i.a!=null&&r.a!=null?SB(i.a,r.a):i.a!=null?-1:r.a!=null?1:0}function j7t(e,t){var n,i,r,o,u,a;if(t)for(o=t.a.length,n=new Og(o),a=(n.b-n.a)*n.c<0?(s1(),ig):new f1(n);a.Ob();)u=c(a.Pb(),19),r=A_(t,u.a),i=new kje(e),m5t(i.a,r)}function A7t(e,t){var n,i,r,o,u,a;if(t)for(o=t.a.length,n=new Og(o),a=(n.b-n.a)*n.c<0?(s1(),ig):new f1(n);a.Ob();)u=c(a.Pb(),19),r=A_(t,u.a),i=new Pje(e),w5t(i.a,r)}function O7t(e){var t;if(e!=null&&e.length>0&&Pr(e,e.length-1)==33)try{return t=jGe(fu(e,0,e.length-1)),t.e==null}catch(n){if(n=gi(n),!Q(n,32))throw V(n)}return!1}function kVe(e,t,n){var i,r,o;return i=t.ak(),o=t.dd(),r=i.$j()?p1(e,3,i,null,o,IE(e,i,o,Q(i,99)&&(c(i,18).Bb&Vr)!=0),!0):p1(e,1,i,i.zj(),o,-1,!0),n?n.Ei(r):n=r,n}function D7t(){var e,t,n;for(t=0,e=0;e<1;e++){if(n=bse((fn(e,1),"X".charCodeAt(e))),n==0)throw V(new an("Unknown Option: "+"X".substr(e)));t|=n}return t}function k7t(e,t,n){var i,r,o;switch(i=Nr(t),r=o7(i),o=new gc,Bo(o,t),n.g){case 1:Ji(o,II(b2(r)));break;case 2:Ji(o,b2(r))}return pe(o,(Oe(),$w),Te(B(e,$w))),o}function Pce(e){var t,n;return t=c(rn(new Kt(Ht(ko(e.a).a.Kc(),new j))),17),n=c(rn(new Kt(Ht(Vi(e.a).a.Kc(),new j))),17),Be(Fe(B(t,(ye(),Ul))))||Be(Fe(B(n,Ul)))}function Zm(){Zm=Z,fR=new cC("ONE_SIDE",0),dR=new cC("TWO_SIDES_CORNER",1),gR=new cC("TWO_SIDES_OPPOSING",2),hR=new cC("THREE_SIDES",3),lR=new cC("FOUR_SIDES",4)}function dq(e,t,n,i,r){var o,u;o=c(gu(si(t.Oc(),new T4e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),u=c(qg(e.b,n,i),15),r==0?u.Wc(0,o):u.Gc(o)}function R7t(e,t){var n,i,r,o,u;for(o=new q(t.a);o.a0&&oVe(this,this.c-1,(Ie(),jt)),this.c0&&e[0].length>0&&(this.c=Be(Fe(B(Nr(e[0][0]),(ye(),cge))))),this.a=oe(Fst,we,2018,e.length,0,2),this.b=oe(Bst,we,2019,e.length,0,2),this.d=new nHe}function B7t(e){return e.c.length==0?!1:(pt(0,e.c.length),c(e.c[0],17)).c.i.k==(Dt(),ur)?!0:D_(Yc(new ht(null,new bt(e,16)),new sSe),new uSe)}function $7t(e,t,n){return Wt(n,"Tree layout",1),eO(e.b),Kf(e.b,(dE(),ZR),ZR),Kf(e.b,LP,LP),Kf(e.b,vj,vj),Kf(e.b,NP,NP),e.a=cD(e.b,t),bNt(e,t,yc(n,1)),qt(n),t}function xVe(e,t){var n,i,r,o,u,a,l;for(a=dw(t),o=t.f,l=t.g,u=g.Math.sqrt(o*o+l*l),r=0,i=new q(a);i.a=0?(n=BI(e,pD),i=AI(e,pD)):(t=$p(e,1),n=BI(t,5e8),i=AI(t,5e8),i=xr(Ph(i,1),Xi(e,1))),Dl(Ph(i,32),Xi(n,no))}function FVe(e,t,n){var i,r;switch(i=(Lt(t.b!=0),c(Fu(t,t.a.a),8)),n.g){case 0:i.b=0;break;case 2:i.b=e.f;break;case 3:i.a=0;break;default:i.a=e.g}return r=Mn(t,0),RC(r,i),t}function BVe(e,t,n,i){var r,o,u,a,l;switch(l=e.b,o=t.d,u=o.j,a=Foe(u,l.d[u.g],n),r=Wn(Wo(o.n),o.a),o.j.g){case 1:case 3:a.a+=r.a;break;case 2:case 4:a.b+=r.b}Ri(i,a,i.c.b,i.c)}function Q7t(e,t,n){var i,r,o,u;for(u=Do(e.e,t,0),o=new qQ,o.b=n,i=new _r(e.e,u);i.b1;t>>=1)(t&1)!=0&&(i=Fm(i,n)),n.d==1?n=Fm(n,n):n=new aze(mYe(n.a,n.d,oe(Qt,_n,25,n.d<<1,15,1)));return i=Fm(i,n),i}function Oce(){Oce=Z;var e,t,n,i;for(Dhe=oe(gr,lo,25,25,15,1),khe=oe(gr,lo,25,33,15,1),i=152587890625e-16,t=32;t>=0;t--)khe[t]=i,i*=.5;for(n=1,e=24;e>=0;e--)Dhe[e]=n,n*=.5}function rDt(e){var t,n;if(Be(Fe(Ke(e,(Oe(),Bw))))){for(n=new Kt(Ht(Fh(e).a.Kc(),new j));dn(n);)if(t=c(rn(n),79),T0(t)&&Be(Fe(Ke(t,pb))))return!0}return!1}function $Ve(e,t){var n,i,r;Yi(e.f,t)&&(t.b=e,i=t.c,Do(e.j,i,0)!=-1||Ee(e.j,i),r=t.d,Do(e.j,r,0)!=-1||Ee(e.j,r),n=t.a.b,n.c.length!=0&&(!e.i&&(e.i=new mze(e)),yTt(e.i,n)))}function oDt(e){var t,n,i,r,o;return n=e.c.d,i=n.j,r=e.d.d,o=r.j,i==o?n.p=0&&rt(e.substr(t,3),"GMT")||t>=0&&rt(e.substr(t,3),"UTC"))&&(n[0]=t+3),rue(e,n,i)}function sDt(e,t){var n,i,r,o,u;for(o=e.g.a,u=e.g.b,i=new q(e.d);i.an;o--)e[o]|=t[o-n-1]>>>u,e[o-1]=t[o-n-1]<=e.f)break;o.c[o.c.length]=n}return o}function kce(e){var t,n,i,r;for(t=null,r=new q(e.wf());r.a0&&bc(e.g,t,e.g,t+i,a),u=n.Kc(),e.i+=i,r=0;ro&&SSt(d,L$e(n[a],Ahe))&&(r=a,o=l);return r>=0&&(i[0]=t+o),r}function gDt(e,t){var n;if(n=k7e(e.b.Hf(),t.b.Hf()),n!=0)return n;switch(e.b.Hf().g){case 1:case 2:return Uc(e.b.sf(),t.b.sf());case 3:case 4:return Uc(t.b.sf(),e.b.sf())}return 0}function bDt(e){var t,n,i;for(i=e.e.c.length,e.a=Ag(Qt,[we,_n],[48,25],15,[i,i],2),n=new q(e.c);n.a>4&15,o=e[i]&15,u[r++]=Ywe[n],u[r++]=Ywe[o];return pf(u,0,u.length)}function mDt(e,t,n){var i,r,o;return i=t.ak(),o=t.dd(),r=i.$j()?p1(e,4,i,o,null,IE(e,i,o,Q(i,99)&&(c(i,18).Bb&Vr)!=0),!0):p1(e,i.Kj()?2:1,i,o,i.zj(),-1,!0),n?n.Ei(r):n=r,n}function is(e){var t,n;return e>=Vr?(t=wT+(e-Vr>>10&1023)&Ni,n=56320+(e-Vr&1023)&Ni,String.fromCharCode(t)+(""+String.fromCharCode(n))):String.fromCharCode(e&Ni)}function vDt(e,t){Lp();var n,i,r,o;return r=c(c(Vn(e.r,t),21),84),r.gc()>=2?(i=c(r.Kc().Pb(),111),n=e.u.Hc((js(),eM)),o=e.u.Hc(c3),!i.a&&!n&&(r.gc()==2||o)):!1}function HVe(e,t,n,i,r){var o,u,a;for(o=CWe(e,t,n,i,r),a=!1;!o;)K7(e,r,!0),a=!0,o=CWe(e,t,n,i,r);a&&K7(e,r,!1),u=nK(r),u.c.length!=0&&(e.d&&e.d.lg(u),HVe(e,r,n,i,u))}function L7(){L7=Z,rY=new r5(qh,0),Swe=new r5("DIRECTED",1),Mwe=new r5("UNDIRECTED",2),_we=new r5("ASSOCIATION",3),Pwe=new r5("GENERALIZATION",4),Ewe=new r5("DEPENDENCY",5)}function yDt(e,t){var n;if(!jl(e))throw V(new Ao(FZe));switch(n=jl(e),t.g){case 1:return-(e.j+e.f);case 2:return e.i-n.g;case 3:return e.j-n.f;case 4:return-(e.i+e.g)}return 0}function wE(e,t){var n,i;for(yt(t),i=e.b.c.length,Ee(e.b,t);i>0;){if(n=i,i=(i-1)/2|0,e.a.ue(Ne(e.b,i),t)<=0)return Lu(e.b,n,t),!0;Lu(e.b,n,Ne(e.b,i))}return Lu(e.b,i,t),!0}function Rce(e,t,n,i){var r,o;if(r=0,n)r=e7(e.a[n.g][t.g],i);else for(o=0;o=a)}function xce(e,t,n,i){var r;if(r=!1,fr(i)&&(r=!0,v_(t,n,ln(i))),r||Dp(i)&&(r=!0,xce(e,t,n,i)),r||Q(i,236)&&(r=!0,Rg(t,n,c(i,236))),!r)throw V(new zN(jfe))}function EDt(e,t){var n,i,r;if(n=t.Hh(e.a),n&&(r=ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),aa),r!=null)){for(i=1;i<(vs(),vme).length;++i)if(rt(vme[i],r))return i}return 0}function SDt(e,t){var n,i,r;if(n=t.Hh(e.a),n&&(r=ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),aa),r!=null)){for(i=1;i<(vs(),yme).length;++i)if(rt(yme[i],r))return i}return 0}function zVe(e,t){var n,i,r,o;if(yt(t),o=e.a.gc(),o0?1:0;o.a[r]!=n;)o=o.a[r],r=e.a.ue(n.d,o.d)>0?1:0;o.a[r]=i,i.b=n.b,i.a[0]=n.a[0],i.a[1]=n.a[1],n.a[0]=null,n.a[1]=null}function CDt(e){js();var t,n;return t=ui(Wh,U(G(Cx,1),_e,273,0,[X1])),!(hI(U8(t,e))>1||(n=ui(eM,U(G(Cx,1),_e,273,0,[ZP,c3])),hI(U8(n,e))>1))}function Nce(e,t){var n;n=mc((c1(),_a),e),Q(n,498)?bo(_a,e,new a7e(this,t)):bo(_a,e,this),yq(this,t),t==(r_(),sme)?(this.wb=c(this,1939),c(t,1941)):this.wb=(g1(),wt)}function IDt(e){var t,n,i;if(e==null)return null;for(t=null,n=0;n=_d?"error":i>=900?"warn":i>=800?"info":"log"),Axe(n,e.a),e.b&&Nse(t,n,e.b,"Exception: ",!0))}function B(e,t){var n,i;return i=(!e.q&&(e.q=new en),Bt(e.q,t)),i??(n=t.wg(),Q(n,4)&&(n==null?(!e.q&&(e.q=new en),u2(e.q,t)):(!e.q&&(e.q=new en),Kn(e.q,t,n))),n)}function Hr(){Hr=Z,Af=new oC("P1_CYCLE_BREAKING",0),B1=new oC("P2_LAYERING",1),Hc=new oC("P3_NODE_ORDERING",2),Pc=new oC("P4_NODE_PLACEMENT",3),Io=new oC("P5_EDGE_ROUTING",4)}function WVe(e,t){var n,i,r,o,u;for(r=t==1?BG:FG,i=r.a.ec().Kc();i.Ob();)for(n=c(i.Pb(),103),u=c(Vn(e.f.c,n),21).Kc();u.Ob();)o=c(u.Pb(),46),Jc(e.b.b,o.b),Jc(e.b.a,c(o.b,81).d)}function TDt(e,t){K5();var n;if(e.c==t.c){if(e.b==t.b||ZIt(e.b,t.b)){if(n=u2t(e.b)?1:-1,e.a&&!t.a)return n;if(!e.a&&t.a)return-n}return Uc(e.b.g,t.b.g)}else return zi(e.c,t.c)}function jDt(e,t){var n;Wt(t,"Hierarchical port position processing",1),n=e.b,n.c.length>0&&dYe((pt(0,n.c.length),c(n.c[0],29)),e),n.c.length>1&&dYe(c(Ne(n,n.c.length-1),29),e),qt(t)}function YVe(e,t){var n,i,r;if(Bce(e,t))return!0;for(i=new q(t);i.a=r||t<0)throw V(new ho(xV+t+ub+r));if(n>=r||n<0)throw V(new ho(LV+n+ub+r));return t!=n?i=(o=e.Ti(n),e.Hi(t,o),o):i=e.Oi(n),i}function QVe(e){var t,n,i;if(i=e,e)for(t=0,n=e.Ug();n;n=n.Ug()){if(++t>YH)return QVe(n);if(i=n,n==e)throw V(new Ao("There is a cycle in the containment hierarchy of "+e))}return i}function C1(e){var t,n,i;for(i=new Hg(zr,"[","]"),n=e.Kc();n.Ob();)t=n.Pb(),jh(i,le(t)===le(e)?"(this Collection)":t==null?rs:Ro(t));return i.a?i.e.length==0?i.a.a:i.a.a+(""+i.e):i.c}function Bce(e,t){var n,i;if(i=!1,t.gc()<2)return!1;for(n=0;ni&&(fn(t-1,e.length),e.charCodeAt(t-1)<=32);)--t;return i>0||t1&&(e.j.b+=e.e)):(e.j.a+=n.a,e.j.b=g.Math.max(e.j.b,n.b),e.d.c.length>1&&(e.j.a+=e.e))}function I1(){I1=Z,Rrt=U(G(Gr,1),ac,61,0,[(Ie(),_t),jt,Yt]),krt=U(G(Gr,1),ac,61,0,[jt,Yt,Mt]),xrt=U(G(Gr,1),ac,61,0,[Yt,Mt,_t]),Lrt=U(G(Gr,1),ac,61,0,[Mt,_t,jt])}function ODt(e,t,n,i){var r,o,u,a,l,d,p;if(u=e.c.d,a=e.d.d,u.j!=a.j)for(p=e.b,r=u.j,l=null;r!=a.j;)l=t==0?r7(r):uoe(r),o=Foe(r,p.d[r.g],n),d=Foe(l,p.d[l.g],n),Cn(i,Wn(o,d)),r=l}function DDt(e,t,n,i){var r,o,u,a,l;return u=cVe(e.a,t,n),a=c(u.a,19).a,o=c(u.b,19).a,i&&(l=c(B(t,(ye(),As)),10),r=c(B(n,As),10),l&&r&&(hFe(e.b,l,r),a+=e.b.i,o+=e.b.e)),a>o}function eGe(e){var t,n,i,r,o,u,a,l,d;for(this.a=jze(e),this.b=new Se,n=e,i=0,r=n.length;iJF(e.d).c?(e.i+=e.g.c,LK(e.d)):JF(e.d).c>JF(e.g).c?(e.e+=e.d.c,LK(e.g)):(e.i+=ORe(e.g),e.e+=ORe(e.d),LK(e.g),LK(e.d))}function xDt(e,t,n){var i,r,o,u;for(o=t.q,u=t.r,new xg((cl(),z1),t,o,1),new xg(z1,o,u,1),r=new q(n);r.aa&&(l=a/i),r>o&&(d=o/r),u=g.Math.min(l,d),e.a+=u*(t.a-e.a),e.b+=u*(t.b-e.b)}function BDt(e,t,n,i,r){var o,u;for(u=!1,o=c(Ne(n.b,0),33);e$t(e,t,o,i,r)&&(u=!0,m7t(n,o),n.b.c.length!=0);)o=c(Ne(n.b,0),33);return n.b.c.length==0&&FI(n.j,n),u&&I7(t.q),u}function $Dt(e,t){ov();var n,i,r,o;if(t.b<2)return!1;for(o=Mn(t,0),n=c(Pn(o),8),i=n;o.b!=o.d.c;){if(r=c(Pn(o),8),Bq(e,i,r))return!0;i=r}return!!Bq(e,i,n)}function Kce(e,t,n,i){var r,o;return n==0?(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),r8(e.o,t,i)):(o=c(at((r=c(vt(e,16),26),r||e.zh()),n),66),o.Nj().Rj(e,$c(e),n-Ft(e.zh()),t,i))}function yq(e,t){var n;t!=e.sb?(n=null,e.sb&&(n=c(e.sb,49).ih(e,1,iM,n)),t&&(n=c(t,49).gh(e,1,iM,n)),n=toe(e,t,n),n&&n.Fi()):(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,4,t,t))}function KDt(e,t){var n,i,r,o;if(t)r=Dh(t,"x"),n=new Aje(e),$_(n.a,(yt(r),r)),o=Dh(t,"y"),i=new Oje(e),q_(i.a,(yt(o),o));else throw V(new sf("All edge sections need an end point."))}function qDt(e,t){var n,i,r,o;if(t)r=Dh(t,"x"),n=new Ije(e),K_(n.a,(yt(r),r)),o=Dh(t,"y"),i=new Tje(e),H_(i.a,(yt(o),o));else throw V(new sf("All edge sections need a start point."))}function HDt(e,t){var n,i,r,o,u,a,l;for(i=$qe(e),o=0,a=i.length;o>22-t,r=e.h<>22-t):t<44?(n=0,i=e.l<>44-t):(n=0,i=0,r=e.l<e)throw V(new St("k must be smaller than n"));return t==0||t==e?1:e==0?0:bce(e)/(bce(t)*bce(e-t))}function qce(e,t){var n,i,r,o;for(n=new fee(e);n.g==null&&!n.c?zne(n):n.g==null||n.i!=0&&c(n.g[n.i-1],47).Ob();)if(o=c(q7(n),56),Q(o,160))for(i=c(o,160),r=0;r>4],t[n*2+1]=Vx[o&15];return pf(t,0,t.length)}function ckt(e){k8();var t,n,i;switch(i=e.c.length,i){case 0:return qtt;case 1:return t=c(zGe(new q(e)),42),A4t(t.cd(),t.dd());default:return n=c(Bl(e,oe(fb,gD,42,e.c.length,0,1)),165),new qN(n)}}function skt(e){var t,n,i,r,o,u;for(t=new vm,n=new vm,w1(t,e),w1(n,e);n.b!=n.c;)for(r=c(Qy(n),37),u=new q(r.a);u.a0&&tT(e,n,t),r):HRt(e,t,n)}function uGe(e,t,n){var i,r,o,u;if(t.b!=0){for(i=new wi,u=Mn(t,0);u.b!=u.d.c;)o=c(Pn(u),86),qr(i,Pre(o)),r=o.e,r.a=c(B(o,(ic(),wW)),19).a,r.b=c(B(o,u0e),19).a;uGe(e,i,yc(n,i.b/e.a|0))}}function aGe(e,t){var n,i,r,o,u;if(e.e<=t||bPt(e,e.g,t))return e.g;for(o=e.r,i=e.g,u=e.r,r=(o-i)/2+i;i+11&&(e.e.b+=e.a)):(e.e.a+=n.a,e.e.b=g.Math.max(e.e.b,n.b),e.d.c.length>1&&(e.e.a+=e.a))}function hkt(e){var t,n,i,r;switch(r=e.i,t=r.b,i=r.j,n=r.g,r.a.g){case 0:n.a=(e.g.b.o.a-i.a)/2;break;case 1:n.a=t.d.n.a+t.d.a.a;break;case 2:n.a=t.d.n.a+t.d.a.a-i.a;break;case 3:n.b=t.d.n.b+t.d.a.b}}function lGe(e,t,n,i,r){if(ii&&(e.a=i),e.br&&(e.b=r),e}function dkt(e){if(Q(e,149))return qLt(c(e,149));if(Q(e,229))return BAt(c(e,229));if(Q(e,23))return GDt(c(e,23));throw V(new St(Afe+C1(new Js(U(G(xt,1),xe,1,5,[e])))))}function gkt(e,t,n,i,r){var o,u,a;for(o=!0,u=0;u>>r|n[u+i+1]<>>r,++u}return o}function Gce(e,t,n,i){var r,o,u;if(t.k==(Dt(),ur)){for(o=new Kt(Ht(ko(t).a.Kc(),new j));dn(o);)if(r=c(rn(o),17),u=r.c.i.k,u==ur&&e.c.a[r.c.i.c.p]==i&&e.c.a[t.c.p]==n)return!0}return!1}function bkt(e,t){var n,i,r,o;return t&=63,n=e.h&Kh,t<22?(o=n>>>t,r=e.m>>t|n<<22-t,i=e.l>>t|e.m<<22-t):t<44?(o=0,r=n>>>t-22,i=e.m>>t-22|e.h<<44-t):(o=0,r=0,i=n>>>t-44),Bc(i&qs,r&qs,o&Kh)}function fGe(e,t,n,i){var r;this.b=i,this.e=e==(w0(),kP),r=t[n],this.d=Ag(Gs,[we,Zf],[177,25],16,[r.length,r.length],2),this.a=Ag(Qt,[we,_n],[48,25],15,[r.length,r.length],2),this.c=new Tce(t,n)}function pkt(e){var t,n,i;for(e.k=new Wne((Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])).length,e.j.c.length),i=new q(e.j);i.a=n)return vE(e,t,i.p),!0;return!1}function dGe(e){var t;return(e.Db&64)!=0?_q(e):(t=new lu(vfe),!e.a||wn(wn((t.a+=' "',t),e.a),'"'),wn(zb(wn(zb(wn(zb(wn(zb((t.a+=" (",t),e.i),","),e.j)," | "),e.g),","),e.f),")"),t.a)}function gGe(e,t,n){var i,r,o,u,a;for(a=qc(e.e.Tg(),t),r=c(e.g,119),i=0,u=0;un?ese(e,n,"start index"):t<0||t>n?ese(t,n,"end index"):m6("end index (%s) must not be less than start index (%s)",U(G(xt,1),xe,1,5,[Ce(t),Ce(e)]))}function pGe(e,t){var n,i,r,o;for(i=0,r=e.length;i0&&wGe(e,o,n));t.p=0}function ze(e){var t;this.c=new wi,this.f=e.e,this.e=e.d,this.i=e.g,this.d=e.c,this.b=e.b,this.k=e.j,this.a=e.a,e.i?this.j=e.i:this.j=(t=c(rl(Dd),9),new ku(t,c(Da(t,t.length),9),0)),this.g=e.f}function Ekt(e){var t,n,i,r;for(t=Dg(wn(new lu("Predicates."),"and"),40),n=!0,r=new CS(e);r.b0?a[u-1]:oe(nh,Ed,10,0,0,1),r=a[u],d=u=0?e.Bh(r):ose(e,i);else throw V(new St(x1+i.ne()+W6));else throw V(new St(YZe+t+XZe));else $u(e,n,i)}function Uce(e){var t,n;if(n=null,t=!1,Q(e,204)&&(t=!0,n=c(e,204).a),t||Q(e,258)&&(t=!0,n=""+c(e,258).a),t||Q(e,483)&&(t=!0,n=""+c(e,483).a),!t)throw V(new zN(jfe));return n}function _Ge(e,t){var n,i;if(e.f){for(;t.Ob();)if(n=c(t.Pb(),72),i=n.ak(),Q(i,99)&&(c(i,18).Bb&rc)!=0&&(!e.e||i.Gj()!=x4||i.aj()!=0)&&n.dd()!=null)return t.Ub(),!0;return!1}else return t.Ob()}function EGe(e,t){var n,i;if(e.f){for(;t.Sb();)if(n=c(t.Ub(),72),i=n.ak(),Q(i,99)&&(c(i,18).Bb&rc)!=0&&(!e.e||i.Gj()!=x4||i.aj()!=0)&&n.dd()!=null)return t.Pb(),!0;return!1}else return t.Sb()}function Wce(e,t,n){var i,r,o,u,a,l;for(l=qc(e.e.Tg(),t),i=0,a=e.i,r=c(e.g,119),u=0;u1&&(t.c[t.c.length]=o))}function Ckt(e){var t,n,i,r;for(n=new wi,qr(n,e.o),i=new HQ;n.b!=0;)t=c(n.b==0?null:(Lt(n.b!=0),Fu(n,n.a.a)),508),r=tJe(e,t,!0),r&&Ee(i.a,t);for(;i.a.c.length!=0;)t=c(Wqe(i),508),tJe(e,t,!1)}function yd(){yd=Z,Ipe=new qy(R6,0),Dr=new qy("BOOLEAN",1),oc=new qy("INT",2),T4=new qy("STRING",3),To=new qy("DOUBLE",4),Ai=new qy("ENUM",5),t3=new qy("ENUMSET",6),Yl=new qy("OBJECT",7)}function h6(e,t){var n,i,r,o,u;i=g.Math.min(e.c,t.c),o=g.Math.min(e.d,t.d),r=g.Math.max(e.c+e.b,t.c+t.b),u=g.Math.max(e.d+e.a,t.d+t.a),r=(r/2|0))for(this.e=i?i.c:null,this.d=r;n++0;)Vne(this);this.b=t,this.a=null}function jkt(e,t){var n,i;t.a?QLt(e,t):(n=c(nB(e.b,t.b),57),n&&n==e.a[t.b.f]&&n.a&&n.a!=t.b.a&&n.c.Fc(t.b),i=c(tB(e.b,t.b),57),i&&e.a[i.f]==t.b&&i.a&&i.a!=t.b.a&&t.b.c.Fc(i),HF(e.b,t.b))}function PGe(e,t){var n,i;if(n=c(so(e.b,t),124),c(c(Vn(e.r,t),21),84).dc()){n.n.b=0,n.n.c=0;return}n.n.b=e.C.b,n.n.c=e.C.c,e.A.Hc((ou(),Cb))&&WWe(e,t),i=o8t(e,t),Kq(e,t)==(Um(),W1)&&(i+=2*e.w),n.a.a=i}function MGe(e,t){var n,i;if(n=c(so(e.b,t),124),c(c(Vn(e.r,t),21),84).dc()){n.n.d=0,n.n.a=0;return}n.n.d=e.C.d,n.n.a=e.C.a,e.A.Hc((ou(),Cb))&&YWe(e,t),i=c8t(e,t),Kq(e,t)==(Um(),W1)&&(i+=2*e.w),n.a.b=i}function Akt(e,t){var n,i,r,o;for(o=new Se,i=new q(t);i.an.a&&(i.Hc((sw(),Cj))?r=(t.a-n.a)/2:i.Hc(Ij)&&(r=t.a-n.a)),t.b>n.b&&(i.Hc((sw(),jj))?o=(t.b-n.b)/2:i.Hc(Tj)&&(o=t.b-n.b)),Lce(e,r,o)}function kGe(e,t,n,i,r,o,u,a,l,d,p,v,A){Q(e.Cb,88)&&lw(Ls(c(e.Cb,88)),4),kc(e,n),e.f=u,sE(e,a),aE(e,l),cE(e,d),uE(e,p),pd(e,v),lE(e,A),bd(e,!0),hd(e,r),e.ok(o),Ug(e,t),i!=null&&(e.i=null,NO(e,i))}function RGe(e){var t,n;if(e.f){for(;e.n>0;){if(t=c(e.k.Xb(e.n-1),72),n=t.ak(),Q(n,99)&&(c(n,18).Bb&rc)!=0&&(!e.e||n.Gj()!=x4||n.aj()!=0)&&t.dd()!=null)return!0;--e.n}return!1}else return e.n>0}function ese(e,t,n){if(e<0)return m6(mJe,U(G(xt,1),xe,1,5,[n,Ce(e)]));if(t<0)throw V(new St(vJe+t));return m6("%s (%s) must not be greater than size (%s)",U(G(xt,1),xe,1,5,[n,Ce(e),Ce(t)]))}function tse(e,t,n,i,r,o){var u,a,l,d;if(u=i-n,u<7){TAt(t,n,i,o);return}if(l=n+r,a=i+r,d=l+(a-l>>1),tse(t,e,l,d,-r,o),tse(t,e,d,a,-r,o),o.ue(e[d-1],e[d])<=0){for(;n=0?e.sh(o,n):Ose(e,r,n);else throw V(new St(x1+r.ne()+W6));else throw V(new St(YZe+t+XZe));else qu(e,i,r,n)}function xGe(e){var t,n,i,r;if(n=c(e,49).qh(),n)try{if(i=null,t=EE((c1(),_a),wYe(OAt(n))),t&&(r=t.rh(),r&&(i=r.Wk(Bvt(n.e)))),i&&i!=e)return xGe(i)}catch(o){if(o=gi(o),!Q(o,60))throw V(o)}return e}function Kc(e,t,n){var i,r,o,u;if(u=t==null?0:e.b.se(t),r=(i=e.a.get(u),i??new Array),r.length==0)e.a.set(u,r);else if(o=Jqe(e,t,r),o)return o.ed(n);return vi(r,r.length,new y9(t,n)),++e.c,q8(e.b),null}function LGe(e,t){var n,i;return eO(e.a),Kf(e.a,($O(),cx),cx),Kf(e.a,I4,I4),i=new tr,Nn(i,I4,(s7(),EW)),le(Ke(t,(ow(),MW)))!==le((EI(),sx))&&Nn(i,I4,yW),Nn(i,I4,_W),L7e(e.a,i),n=cD(e.a,t),n}function NGe(e){if(!e)return y9e(),Jtt;var t=e.valueOf?e.valueOf():e;if(t!==e){var n=fG[typeof t];return n?n(t):Ure(typeof t)}else return e instanceof Array||e instanceof g.Array?new QJ(e):new BM(e)}function FGe(e,t,n){var i,r,o;switch(o=e.o,i=c(so(e.p,n),244),r=i.i,r.b=UI(i),r.a=GI(i),r.b=g.Math.max(r.b,o.a),r.b>o.a&&!t&&(r.b=o.a),r.c=-(r.b-o.a)/2,n.g){case 1:r.d=-r.a;break;case 3:r.d=o.b}eH(i),tH(i)}function BGe(e,t,n){var i,r,o;switch(o=e.o,i=c(so(e.p,n),244),r=i.i,r.b=UI(i),r.a=GI(i),r.a=g.Math.max(r.a,o.b),r.a>o.b&&!t&&(r.a=o.b),r.d=-(r.a-o.b)/2,n.g){case 4:r.c=-r.b;break;case 2:r.c=o.a}eH(i),tH(i)}function Vkt(e,t){var n,i,r,o,u;if(!t.dc()){if(r=c(t.Xb(0),128),t.gc()==1){hWe(e,r,r,1,0,t);return}for(n=1;n0)try{r=vu(t,Ar,Fn)}catch(o){throw o=gi(o),Q(o,127)?(i=o,V(new mO(i))):V(o)}return n=(!e.a&&(e.a=new ON(e)),e.a),r=0?c(ee(n,r),56):null}function Ykt(e,t){if(e<0)return m6(mJe,U(G(xt,1),xe,1,5,["index",Ce(e)]));if(t<0)throw V(new St(vJe+t));return m6("%s (%s) must be less than size (%s)",U(G(xt,1),xe,1,5,["index",Ce(e),Ce(t)]))}function Xkt(e){var t,n,i,r,o;if(e==null)return rs;for(o=new Hg(zr,"[","]"),n=e,i=0,r=n.length;i0)for(u=e.c.d,a=e.d.d,r=lf(hr(new $e(a.a,a.b),u),1/(i+1)),o=new $e(u.a,u.b),n=new q(e.a);n.a=0?e._g(n,!0,!0):j0(e,r,!0),153)),c(i,215).ol(t);else throw V(new St(x1+t.ne()+W6))}function cse(e){var t,n;return e>-0x800000000000&&e<0x800000000000?e==0?0:(t=e<0,t&&(e=-e),n=xi(g.Math.floor(g.Math.log(e)/.6931471805599453)),(!t||e!=g.Math.pow(2,n))&&++n,n):fqe(ns(e))}function aRt(e){var t,n,i,r,o,u,a;for(o=new Eh,n=new q(e);n.a2&&a.e.b+a.j.b<=2&&(r=a,i=u),o.a.zc(r,o),r.q=i);return o}function UGe(e,t){var n,i,r;return i=new Nh(e),Mo(i,t),pe(i,(ye(),CR),t),pe(i,(Oe(),ji),(wr(),Ic)),pe(i,Of,(Gf(),wx)),Sg(i,(Dt(),Bi)),n=new gc,Bo(n,i),Ji(n,(Ie(),Mt)),r=new gc,Bo(r,i),Ji(r,jt),i}function WGe(e){switch(e.g){case 0:return new VN((w0(),wj));case 1:return new aCe;case 2:return new pCe;default:throw V(new St("No implementation is available for the crossing minimizer "+(e.f!=null?e.f:""+e.g)))}}function YGe(e,t){var n,i,r,o,u;for(e.c[t.p]=!0,Ee(e.a,t),u=new q(t.j);u.a=o)u.$b();else for(r=u.Kc(),i=0;i0?rZ():u<0&&ZGe(e,t,-u),!0):!1}function GI(e){var t,n,i,r,o,u,a;if(a=0,e.b==0){for(u=xze(e,!0),t=0,i=u,r=0,o=i.length;r0&&(a+=n,++t);t>1&&(a+=e.c*(t-1))}else a=T9e(BKe(x8(si(TB(e.a),new au),new e1)));return a>0?a+e.n.d+e.n.a:0}function UI(e){var t,n,i,r,o,u,a;if(a=0,e.b==0)a=T9e(BKe(x8(si(TB(e.a),new Eo),new fs)));else{for(u=Lze(e,!0),t=0,i=u,r=0,o=i.length;r0&&(a+=n,++t);t>1&&(a+=e.c*(t-1))}return a>0?a+e.n.b+e.n.c:0}function wRt(e,t){var n,i,r,o;for(o=c(so(e.b,t),124),n=o.a,r=c(c(Vn(e.r,t),21),84).Kc();r.Ob();)i=c(r.Pb(),111),i.c&&(n.a=g.Math.max(n.a,Vte(i.c)));if(n.a>0)switch(t.g){case 2:o.n.c=e.s;break;case 4:o.n.b=e.s}}function mRt(e,t){var n,i,r;return n=c(B(t,(dl(),r4)),19).a-c(B(e,r4),19).a,n==0?(i=hr(Wo(c(B(e,(v1(),JT)),8)),c(B(e,fP),8)),r=hr(Wo(c(B(t,JT),8)),c(B(t,fP),8)),zi(i.a*i.b,r.a*r.b)):n}function vRt(e,t){var n,i,r;return n=c(B(t,(A0(),ox)),19).a-c(B(e,ox),19).a,n==0?(i=hr(Wo(c(B(e,(ic(),yj)),8)),c(B(e,FP),8)),r=hr(Wo(c(B(t,yj),8)),c(B(t,FP),8)),zi(i.a*i.b,r.a*r.b)):n}function eUe(e){var t,n;return n=new n1,n.a+="e_",t=TTt(e),t!=null&&(n.a+=""+t),e.c&&e.d&&(wn((n.a+=" ",n),j7(e.c)),wn(nc((n.a+="[",n),e.c.i),"]"),wn((n.a+=Sz,n),j7(e.d)),wn(nc((n.a+="[",n),e.d.i),"]")),n.a}function tUe(e){switch(e.g){case 0:return new fCe;case 1:return new hCe;case 2:return new lCe;case 3:return new dCe;default:throw V(new St("No implementation is available for the layout phase "+(e.f!=null?e.f:""+e.g)))}}function use(e,t,n,i,r){var o;switch(o=0,r.g){case 1:o=g.Math.max(0,t.b+e.b-(n.b+i));break;case 3:o=g.Math.max(0,-e.b-i);break;case 2:o=g.Math.max(0,-e.a-i);break;case 4:o=g.Math.max(0,t.a+e.a-(n.a+i))}return o}function yRt(e,t,n){var i,r,o,u,a;if(n)for(r=n.a.length,i=new Og(r),a=(i.b-i.a)*i.c<0?(s1(),ig):new f1(i);a.Ob();)u=c(a.Pb(),19),o=A_(n,u.a),Sfe in o.a||kV in o.a?OFt(e,o,t):NHt(e,o,t),r3t(c(Bt(e.b,fE(o)),79))}function ase(e){var t,n;switch(e.b){case-1:return!0;case 0:return n=e.t,n>1||n==-1?(e.b=-1,!0):(t=ra(e),t&&(Wr(),t.Cj()==Zet)?(e.b=-1,!0):(e.b=1,!1));default:case 1:return!1}}function _Rt(e,t){var n,i,r,o,u;for(i=(!t.s&&(t.s=new Me(us,t,21,17)),t.s),o=null,r=0,u=i.i;r=0&&i=0?e._g(n,!0,!0):j0(e,r,!0),153)),c(i,215).ll(t);throw V(new St(x1+t.ne()+PV))}function CRt(){MZ();var e;return Fft?c(EE((c1(),_a),la),1939):(In(fb,new IPe),sqt(),e=c(Q(mc((c1(),_a),la),547)?mc(_a,la):new Kxe,547),Fft=!0,izt(e),uzt(e),Kn((PZ(),cme),e,new H6e),bo(_a,la,e),e)}function IRt(e,t){var n,i,r,o;e.j=-1,Qs(e.e)?(n=e.i,o=e.i!=0,UC(e,t),i=new Ah(e.e,3,e.c,null,t,n,o),r=t.Qk(e.e,e.c,null),r=kVe(e,t,r),r?(r.Ei(i),r.Fi()):Bn(e.e,i)):(UC(e,t),r=t.Qk(e.e,e.c,null),r&&r.Fi())}function B7(e,t){var n,i,r;if(r=0,i=t[0],i>=e.length)return-1;for(n=(fn(i,e.length),e.charCodeAt(i));n>=48&&n<=57&&(r=r*10+(n-48),++i,!(i>=e.length));)n=(fn(i,e.length),e.charCodeAt(i));return i>t[0]?t[0]=i:r=-1,r}function TRt(e){var t,n,i,r,o;return r=c(e.a,19).a,o=c(e.b,19).a,n=r,i=o,t=g.Math.max(g.Math.abs(r),g.Math.abs(o)),r<=0&&r==o?(n=0,i=o-1):r==-t&&o!=t?(n=o,i=r,o>=0&&++n):(n=-o,i=r),new yr(Ce(n),Ce(i))}function jRt(e,t,n,i){var r,o,u,a,l,d;for(r=0;r=0&&d>=0&&l=e.i)throw V(new ho(xV+t+ub+e.i));if(n>=e.i)throw V(new ho(LV+n+ub+e.i));return i=e.g[n],t!=n&&(t>16),t=i>>16&16,n=16-t,e=e>>t,i=e-256,t=i>>16&8,n+=t,e<<=t,i=e-vw,t=i>>16&4,n+=t,e<<=t,i=e-mf,t=i>>16&2,n+=t,e<<=t,i=e>>14,t=i&~(i>>1),n+2-t)}function ORt(e){t2();var t,n,i,r;for(Fk=new Se,AG=new en,jG=new Se,t=(!e.a&&(e.a=new Me(Ei,e,10,11)),e.a),aHt(t),r=new $t(t);r.e!=r.i.gc();)i=c(Vt(r),33),Do(Fk,i,0)==-1&&(n=new Se,Ee(jG,n),dze(i,n));return jG}function DRt(e,t,n){var i,r,o,u;e.a=n.b.d,Q(t,352)?(r=rv(c(t,79),!1,!1),o=HI(r),i=new FIe(e),Mr(o,i),rT(o,r),t.We((kn(),Hv))!=null&&Mr(c(t.We(Hv),74),i)):(u=c(t,470),u.Hg(u.Dg()+e.a.a),u.Ig(u.Eg()+e.a.b))}function iUe(e,t){var n,i,r,o,u,a,l,d;for(d=ge(Te(B(t,(Oe(),IP)))),l=e[0].n.a+e[0].o.a+e[0].d.c+d,a=1;a=0?n:(a=j5(hr(new $e(u.c+u.b/2,u.d+u.a/2),new $e(o.c+o.b/2,o.d+o.a/2))),-(MYe(o,u)-1)*a)}function RRt(e,t,n){var i;Di(new ht(null,(!n.a&&(n.a=new Me(mi,n,6,6)),new bt(n.a,16))),new KOe(e,t)),Di(new ht(null,(!n.n&&(n.n=new Me(Lo,n,1,7)),new bt(n.n,16))),new qOe(e,t)),i=c(Ke(n,(kn(),Hv)),74),i&&gre(i,e,t)}function j0(e,t,n){var i,r,o;if(o=uv((vs(),Ir),e.Tg(),t),o)return Wr(),c(o,66).Oj()||(o=r2(wo(Ir,o))),r=(i=e.Yg(o),c(i>=0?e._g(i,!0,!0):j0(e,o,!0),153)),c(r,215).hl(t,n);throw V(new St(x1+t.ne()+PV))}function fse(e,t,n,i){var r,o,u,a,l;if(r=e.d[t],r){if(o=r.g,l=r.i,i!=null){for(a=0;a=n&&(i=t,d=(l.c+l.a)/2,u=d-n,l.c<=d-n&&(r=new uB(l.c,u),Bp(e,i++,r)),a=d+n,a<=l.a&&(o=new uB(a,l.a),Vp(i,e.c.length),WS(e.c,i,o)))}function hse(e){var t;if(!e.c&&e.g==null)e.d=e.si(e.f),on(e,e.d),t=e.d;else{if(e.g==null)return!0;if(e.i==0)return!1;t=c(e.g[e.i-1],47)}return t==e.b&&null.km>=null.jm()?(q7(e),hse(e)):t.Ob()}function FRt(e,t,n){var i,r,o,u,a;if(a=n,!a&&(a=Hte(new Z3,0)),Wt(a,yQe,1),MXe(e.c,t),u=QKt(e.a,t),u.gc()==1)sXe(c(u.Xb(0),37),a);else for(o=1/u.gc(),r=u.Kc();r.Ob();)i=c(r.Pb(),37),sXe(i,yc(a,o));Gvt(e.a,u,t),QNt(t),qt(a)}function cUe(e){if(this.a=e,e.c.i.k==(Dt(),Bi))this.c=e.c,this.d=c(B(e.c.i,(ye(),Zo)),61);else if(e.d.i.k==Bi)this.c=e.d,this.d=c(B(e.d.i,(ye(),Zo)),61);else throw V(new St("Edge "+e+" is not an external edge."))}function sUe(e,t){var n,i,r;r=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,r,e.b)),t?t!=e&&(kc(e,t.zb),q$(e,t.d),n=(i=t.c,i??t.zb),z$(e,n==null||rt(n,t.zb)?null:n)):(kc(e,null),q$(e,0),z$(e,null))}function uUe(e){var t,n;if(e.f){for(;e.n=u)throw V(new Fp(t,u));return r=n[t],u==1?i=null:(i=oe(hY,KV,415,u-1,0,1),bc(n,0,i,0,t),o=u-t-1,o>0&&bc(n,t+1,i,t,o)),hE(e,i),OGe(e,t,r),r}function E2(){E2=Z,a3=c(ee(he((dZ(),cc).qb),6),34),u3=c(ee(he(cc.qb),3),34),mY=c(ee(he(cc.qb),4),34),vY=c(ee(he(cc.qb),5),18),k7(a3),k7(u3),k7(mY),k7(vY),qft=new Js(U(G(us,1),yv,170,0,[a3,u3]))}function hUe(e,t){var n;this.d=new OS,this.b=t,this.e=new go(t.qf()),n=e.u.Hc((js(),Fj)),e.u.Hc(Wh)?e.D?this.a=n&&!t.If():this.a=!0:e.u.Hc(X1)?n?this.a=!(t.zf().Kc().Ob()||t.Bf().Kc().Ob()):this.a=!1:this.a=!1}function dUe(e,t){var n,i,r,o;for(n=e.o.a,o=c(c(Vn(e.r,t),21),84).Kc();o.Ob();)r=c(o.Pb(),111),r.e.a=(i=r.b,i.Xe((kn(),zs))?i.Hf()==(Ie(),Mt)?-i.rf().a-ge(Te(i.We(zs))):n+ge(Te(i.We(zs))):i.Hf()==(Ie(),Mt)?-i.rf().a:n)}function gUe(e,t){var n,i,r,o;n=c(B(e,(Oe(),Pu)),103),o=c(Ke(t,_4),61),r=c(B(e,ji),98),r!=(wr(),Xl)&&r!=Y1?o==(Ie(),Vo)&&(o=lue(t,n),o==Vo&&(o=b2(n))):(i=cXe(t),i>0?o=b2(n):o=II(b2(n))),ao(t,_4,o)}function qRt(e,t){var n,i,r,o,u;for(u=e.j,t.a!=t.b&&cr(u,new E4e),r=u.c.length/2|0,i=0;i0&&tT(e,n,t),o):i.a!=null?(tT(e,t,n),-1):r.a!=null?(tT(e,n,t),1):0}function bUe(e,t){var n,i,r,o;e.ej()?(n=e.Vi(),o=e.fj(),++e.j,e.Hi(n,e.oi(n,t)),i=e.Zi(3,null,t,n,o),e.bj()?(r=e.cj(t,null),r?(r.Ei(i),r.Fi()):e.$i(i)):e.$i(i)):(Oxe(e,t),e.bj()&&(r=e.cj(t,null),r&&r.Fi()))}function $7(e,t){var n,i,r,o,u;for(u=qc(e.e.Tg(),t),r=new RA,n=c(e.g,119),o=e.i;--o>=0;)i=n[o],u.rl(i.ak())&&on(r,i);!rJe(e,r)&&Qs(e.e)&&Q3(e,t.$j()?p1(e,6,t,(st(),Qr),null,-1,!1):p1(e,t.Kj()?2:1,t,null,null,-1,!1))}function yE(){yE=Z;var e,t;for($2=oe(Ev,we,91,32,0,1),uP=oe(Ev,we,91,32,0,1),e=1,t=0;t<=18;t++)$2[t]=DI(e),uP[t]=DI(Ph(e,t)),e=jr(e,5);for(;tu)||t.q&&(i=t.C,u=i.c.c.a-i.o.a/2,r=i.n.a-n,r>u)))}function VRt(e,t){var n;Wt(t,"Partition preprocessing",1),n=c(gu(si($o(si(new ht(null,new bt(e.a,16)),new Y_e),new X_e),new J_e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),Di(n.Oc(),new Q_e),qt(t)}function pUe(e){i$();var t,n,i,r,o,u,a;for(n=new Ng,r=new q(e.e.b);r.a1?e.e*=ge(e.a):e.f/=ge(e.a),Cjt(e),O9t(e),dFt(e),pe(e.b,(o6(),Nk),e.g)}function yUe(e,t,n){var i,r,o,u,a,l;for(i=0,l=n,t||(i=n*(e.c.length-1),l*=-1),o=new q(e);o.a=0?(t||(t=new FS,i>0&&co(t,e.substr(0,i))),t.a+="\\",S_(t,n&Ni)):t&&S_(t,n&Ni);return t?t.a:e}function ext(e){var t;if(!e.a)throw V(new Ao("IDataType class expected for layout option "+e.f));if(t=uMt(e.a),t==null)throw V(new Ao("Couldn't create new instance of property '"+e.f+"'. "+mZe+(Sh(Uj),Uj.k)+gfe));return c(t,414)}function Dq(e){var t,n,i,r,o;return o=e.eh(),o&&o.kh()&&(r=S1(e,o),r!=o)?(n=e.Vg(),i=(t=e.Vg(),t>=0?e.Qg(null):e.eh().ih(e,-1-t,null,null)),e.Rg(c(r,49),n),i&&i.Fi(),e.Lg()&&e.Mg()&&n>-1&&Bn(e,new sr(e,9,n,o,r)),r):o}function MUe(e){var t,n,i,r,o,u,a,l;for(u=0,o=e.f.e,i=0;i>5,r>=e.d)return e.e<0;if(n=e.a[r],t=1<<(t&31),e.e<0){if(i=zKe(e),r>16)),15).Xc(o),a0&&(!(a1(e.a.c)&&t.n.d)&&!(h_(e.a.c)&&t.n.b)&&(t.g.d+=g.Math.max(0,i/2-.5)),!(a1(e.a.c)&&t.n.a)&&!(h_(e.a.c)&&t.n.c)&&(t.g.a-=i-1))}function TUe(e){var t,n,i,r,o;if(r=new Se,o=_Ye(e,r),t=c(B(e,(ye(),As)),10),t)for(i=new q(t.j);i.a>t,o=e.m>>t|n<<22-t,r=e.l>>t|e.m<<22-t):t<44?(u=i?Kh:0,o=n>>t-22,r=e.m>>t-22|n<<44-t):(u=i?Kh:0,o=i?qs:0,r=n>>t-44),Bc(r&qs,o&qs,u&Kh)}function kq(e){var t,n,i,r,o,u;for(this.c=new Se,this.d=e,i=Ii,r=Ii,t=$i,n=$i,u=Mn(e,0);u.b!=u.d.c;)o=c(Pn(u),8),i=g.Math.min(i,o.a),r=g.Math.min(r,o.b),t=g.Math.max(t,o.a),n=g.Math.max(n,o.b);this.a=new Ru(i,r,t-i,n-r)}function OUe(e,t){var n,i,r,o,u,a;for(o=new q(e.b);o.a0&&Q(t,42)&&(e.a.qj(),d=c(t,42),l=d.cd(),o=l==null?0:fi(l),u=rte(e.a,o),n=e.a.d[u],n)){for(i=c(n.g,367),p=n.i,a=0;a=2)for(n=r.Kc(),t=Te(n.Pb());n.Ob();)o=t,t=Te(n.Pb()),i=g.Math.min(i,(yt(t),t-(yt(o),o)));return i}function fxt(e,t){var n,i,r,o,u;i=new wi,Ri(i,t,i.c.b,i.c);do for(n=(Lt(i.b!=0),c(Fu(i,i.a.a),86)),e.b[n.g]=1,o=Mn(n.d,0);o.b!=o.d.c;)r=c(Pn(o),188),u=r.c,e.b[u.g]==1?Cn(e.a,r):e.b[u.g]==2?e.b[u.g]=1:Ri(i,u,i.c.b,i.c);while(i.b!=0)}function hxt(e,t){var n,i,r;if(le(t)===le(nn(e)))return!0;if(!Q(t,15)||(i=c(t,15),r=e.gc(),r!=i.gc()))return!1;if(Q(i,54)){for(n=0;n0&&(r=n),u=new q(e.f.e);u.a0?(t-=1,n-=1):i>=0&&r<0?(t+=1,n+=1):i>0&&r>=0?(t-=1,n+=1):(t+=1,n-=1),new yr(Ce(t),Ce(n))}function Axt(e,t){return e.ct.c?1:e.bt.b?1:e.a!=t.a?fi(e.a)-fi(t.a):e.d==(F5(),xP)&&t.d==RP?-1:e.d==RP&&t.d==xP?1:0}function FUe(e,t){var n,i,r,o,u;return o=t.a,o.c.i==t.b?u=o.d:u=o.c,o.c.i==t.b?i=o.c:i=o.d,r=r9t(e.a,u,i),r>0&&r<$E?(n=wxt(e.a,i.i,r,e.c),W$e(e.a,i.i,-n),n>0):r<0&&-r<$E?(n=mxt(e.a,i.i,-r,e.c),W$e(e.a,i.i,n),n>0):!1}function Oxt(e,t,n,i){var r,o,u,a,l,d,p,v;for(r=(t-e.d)/e.c.c.length,o=0,e.a+=n,e.d=t,v=new q(e.c);v.a>24;return u}function kxt(e){if(e.pe()){var t=e.c;t.qe()?e.o="["+t.n:t.pe()?e.o="["+t.ne():e.o="[L"+t.ne()+";",e.b=t.me()+"[]",e.k=t.oe()+"[]";return}var n=e.j,i=e.d;i=i.split("/"),e.o=NK(".",[n,NK("$",i)]),e.b=NK(".",[n,NK(".",i)]),e.k=i[i.length-1]}function Rxt(e,t){var n,i,r,o,u;for(u=null,o=new q(e.e.a);o.a=0;t-=2)for(n=0;n<=t;n+=2)(e.b[n]>e.b[n+2]||e.b[n]===e.b[n+2]&&e.b[n+1]>e.b[n+3])&&(i=e.b[n+2],e.b[n+2]=e.b[n],e.b[n]=i,i=e.b[n+3],e.b[n+3]=e.b[n+1],e.b[n+1]=i);e.c=!0}}function BUe(e,t){var n,i,r,o,u,a,l,d;for(u=t==1?BG:FG,o=u.a.ec().Kc();o.Ob();)for(r=c(o.Pb(),103),l=c(Vn(e.f.c,r),21).Kc();l.Ob();)switch(a=c(l.Pb(),46),i=c(a.b,81),d=c(a.a,189),n=d.c,r.g){case 2:case 1:i.g.d+=n;break;case 4:case 3:i.g.c+=n}}function Nxt(e,t){var n,i,r,o,u,a,l,d,p;for(d=-1,p=0,u=e,a=0,l=u.length;a0&&++p;++d}return p}function Ba(e){var t,n;return n=new lu(r1(e.gm)),n.a+="@",wn(n,(t=fi(e)>>>0,t.toString(16))),e.kh()?(n.a+=" (eProxyURI: ",nc(n,e.qh()),e.$g()&&(n.a+=" eClass: ",nc(n,e.$g())),n.a+=")"):e.$g()&&(n.a+=" (eClass: ",nc(n,e.$g()),n.a+=")"),n.a}function p6(e){var t,n,i,r;if(e.e)throw V(new Ao((Sh(mG),rz+mG.k+oz)));for(e.d==(eo(),ih)&&uD(e,ga),n=new q(e.a.a);n.a>24}return n}function $xt(e,t,n){var i,r,o;if(r=c(so(e.i,t),306),!r)if(r=new $$e(e.d,t,n),Xy(e.i,t,r),xoe(t))n3t(e.a,t.c,t.b,r);else switch(o=Ikt(t),i=c(so(e.p,o),244),o.g){case 1:case 3:r.j=!0,HN(i,t.b,r);break;case 4:case 2:r.k=!0,HN(i,t.c,r)}return r}function Kxt(e,t,n,i){var r,o,u,a,l,d;if(a=new RA,l=qc(e.e.Tg(),t),r=c(e.g,119),Wr(),c(t,66).Oj())for(u=0;u=0)return r;for(o=1,a=new q(t.j);a.a0&&t.ue((pt(r-1,e.c.length),c(e.c[r-1],10)),o)>0;)Lu(e,r,(pt(r-1,e.c.length),c(e.c[r-1],10))),--r;pt(r,e.c.length),e.c[r]=o}n.a=new en,n.b=new en}function qxt(e,t,n){var i,r,o,u,a,l,d,p;for(p=(i=c(t.e&&t.e(),9),new ku(i,c(Da(i,i.length),9),0)),l=gw(n,"[\\[\\]\\s,]+"),o=l,u=0,a=o.length;u0&&(!(a1(e.a.c)&&t.n.d)&&!(h_(e.a.c)&&t.n.b)&&(t.g.d-=g.Math.max(0,i/2-.5)),!(a1(e.a.c)&&t.n.a)&&!(h_(e.a.c)&&t.n.c)&&(t.g.a+=g.Math.max(0,i-1)))}function zUe(e,t,n){var i,r;if((e.c-e.b&e.a.length-1)==2)t==(Ie(),_t)||t==jt?(IO(c(Y5(e),15),(mu(),rh)),IO(c(Y5(e),15),U1)):(IO(c(Y5(e),15),(mu(),U1)),IO(c(Y5(e),15),rh));else for(r=new O5(e);r.a!=r.b;)i=c(t7(r),15),IO(i,n)}function zxt(e,t){var n,i,r,o,u,a,l;for(r=w_(new MQ(e)),a=new _r(r,r.c.length),o=w_(new MQ(t)),l=new _r(o,o.c.length),u=null;a.b>0&&l.b>0&&(n=(Lt(a.b>0),c(a.a.Xb(a.c=--a.b),33)),i=(Lt(l.b>0),c(l.a.Xb(l.c=--l.b),33)),n==i);)u=n;return u}function $s(e,t){var n,i,r,o,u,a;return o=e.a*ez+e.b*1502,a=e.b*ez+11,n=g.Math.floor(a*vT),o+=n,a-=n*Gue,o%=Gue,e.a=o,e.b=a,t<=24?g.Math.floor(e.a*Dhe[t]):(r=e.a*(1<=2147483648&&(i-=XH),i)}function VUe(e,t,n){var i,r,o,u;bNe(e,t)>bNe(e,n)?(i=qo(n,(Ie(),jt)),e.d=i.dc()?0:dB(c(i.Xb(0),11)),u=qo(t,Mt),e.b=u.dc()?0:dB(c(u.Xb(0),11))):(r=qo(n,(Ie(),Mt)),e.d=r.dc()?0:dB(c(r.Xb(0),11)),o=qo(t,jt),e.b=o.dc()?0:dB(c(o.Xb(0),11)))}function GUe(e){var t,n,i,r,o,u,a;if(e&&(t=e.Hh(la),t&&(u=ln(ll((!t.b&&(t.b=new Zs((ot(),Ur),ec,t)),t.b),"conversionDelegates")),u!=null))){for(a=new Se,i=gw(u,"\\w+"),r=0,o=i.length;re.c));u++)r.a>=e.s&&(o<0&&(o=u),a=u);return l=(e.s+e.c)/2,o>=0&&(i=IFt(e,t,o,a),l=Lyt((pt(i,t.c.length),c(t.c[i],329))),NRt(t,i,n)),l}function Lq(){Lq=Z,Pat=new Yr((kn(),n3),1.3),G0e=Gpe,Z0e=new Yb(15),Oat=new Yr(Sb,Z0e),kat=new Yr(Pb,15),Mat=vx,Tat=Eb,jat=Vv,Aat=G1,Iat=zv,X0e=kj,Dat=Uw,Q0e=(_se(),_at),Y0e=vat,J0e=yat,epe=Eat,U0e=mat,W0e=yx,Cat=Wpe,Ej=wat,V0e=pat,tpe=Sat}function cn(e,t,n){var i,r,o,u,a,l,d;for(u=(o=new qJ,o),ure(u,(yt(t),t)),d=(!u.b&&(u.b=new Zs((ot(),Ur),ec,u)),u.b),l=1;l0&&yKt(this,r)}function Tse(e,t,n,i,r,o){var u,a,l;if(!r[t.b]){for(r[t.b]=!0,u=i,!u&&(u=new uO),Ee(u.e,t),l=o[t.b].Kc();l.Ob();)a=c(l.Pb(),282),!(a.d==n||a.c==n)&&(a.c!=t&&Tse(e,a.c,t,u,r,o),a.d!=t&&Tse(e,a.d,t,u,r,o),Ee(u.c,a),Hi(u.d,a.b));return u}return null}function Uxt(e){var t,n,i,r,o,u,a;for(t=0,r=new q(e.e);r.a=2}function Wxt(e,t){var n,i,r,o;for(Wt(t,"Self-Loop pre-processing",1),i=new q(e.a);i.a1||(t=ui(Ga,U(G(ro,1),_e,93,0,[Uh,Ua])),hI(U8(t,e))>1)||(i=ui(Ya,U(G(ro,1),_e,93,0,[oh,pa])),hI(U8(i,e))>1))}function Jxt(e,t){var n,i,r;return n=t.Hh(e.a),n&&(r=ln(ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),"affiliation")),r!=null)?(i=Y9(r,is(35)),i==-1?SK(e,S5(e,bu(t.Hj())),r):i==0?SK(e,null,r.substr(1)):SK(e,r.substr(0,i),r.substr(i+1))):null}function Qxt(e){var t,n,i;try{return e==null?rs:Ro(e)}catch(r){if(r=gi(r),Q(r,102))return t=r,i=r1(Fs(e))+"@"+(n=(Nf(),Koe(e)>>>0),n.toString(16)),$9t(BTt(),(a_(),"Exception during lenientFormat for "+i),t),"<"+i+" threw "+r1(t.gm)+">";throw V(r)}}function YUe(e){switch(e.g){case 0:return new nCe;case 1:return new JMe;case 2:return new J8e;case 3:return new Z4e;case 4:return new mke;case 5:return new iCe;default:throw V(new St("No implementation is available for the layerer "+(e.f!=null?e.f:""+e.g)))}}function jse(e,t,n){var i,r,o;for(o=new q(e.t);o.a0&&(i.b.n-=i.c,i.b.n<=0&&i.b.u>0&&Cn(t,i.b));for(r=new q(e.i);r.a0&&(i.a.u-=i.c,i.a.u<=0&&i.a.n>0&&Cn(n,i.a))}function q7(e){var t,n,i,r,o;if(e.g==null&&(e.d=e.si(e.f),on(e,e.d),e.c))return o=e.f,o;if(t=c(e.g[e.i-1],47),r=t.Pb(),e.e=t,n=e.si(r),n.Ob())e.d=n,on(e,n);else for(e.d=null;!t.Ob()&&(vi(e.g,--e.i,null),e.i!=0);)i=c(e.g[e.i-1],47),t=i;return r}function Zxt(e,t){var n,i,r,o,u,a;if(i=t,r=i.ak(),Bh(e.e,r)){if(r.hi()&&rO(e,r,i.dd()))return!1}else for(a=qc(e.e.Tg(),r),n=c(e.g,119),o=0;o1||n>1)return 2;return t+n==1?2:0}function JUe(e,t,n){var i,r,o,u,a;for(Wt(n,"ELK Force",1),Be(Fe(Ke(t,(dl(),_de))))||V8((i=new zM((Ap(),new Ip(t))),i)),a=Iqe(t),POt(a),ijt(e,c(B(a,yde),424)),u=$Ye(e.a,a),o=u.Kc();o.Ob();)r=c(o.Pb(),231),BFt(e.b,r,yc(n,1/u.gc()));a=ZXe(u),XXe(a),qt(n)}function cLt(e,t){var n,i,r,o,u;if(Wt(t,"Breaking Point Processor",1),Cqt(e),Be(Fe(B(e,(Oe(),Tbe))))){for(r=new q(e.b);r.a=0?e._g(i,!0,!0):j0(e,o,!0),153)),c(r,215).ml(t,n)}else throw V(new St(x1+t.ne()+W6))}function lLt(e,t){var n,i,r,o,u;for(n=new Se,r=$o(new ht(null,new bt(e,16)),new GSe),o=$o(new ht(null,new bt(e,16)),new USe),u=NCt(QMt(x8(HLt(U(G(vzt,1),xe,833,0,[r,o])),new WSe))),i=1;i=2*t&&Ee(n,new uB(u[i-1]+t,u[i]-t));return n}function fLt(e,t,n){Wt(n,"Eades radial",1),n.n&&t&&Ra(n,xa(t),(ru(),Tu)),e.d=c(Ke(t,(w5(),KP)),33),e.c=ge(Te(Ke(t,(ow(),ax)))),e.e=GK(c(Ke(t,_j),293)),e.a=zAt(c(Ke(t,D0e),426)),e.b=h7t(c(Ke(t,O0e),340)),GOt(e),n.n&&t&&Ra(n,xa(t),(ru(),Tu))}function hLt(e,t,n){var i,r,o,u,a,l,d,p;if(n)for(o=n.a.length,i=new Og(o),a=(i.b-i.a)*i.c<0?(s1(),ig):new f1(i);a.Ob();)u=c(a.Pb(),19),r=A_(n,u.a),r&&(l=lMt(e,(d=(Hb(),p=new GQ,p),t&&Dse(d,t),d),r),H5(l,Ih(r,If)),x7(r,l),nse(r,l),cK(e,r,l))}function z7(e){var t,n,i,r,o,u;if(!e.j){if(u=new O6e,t=sM,o=t.a.zc(e,t),o==null){for(i=new $t(So(e));i.e!=i.i.gc();)n=c(Vt(i),26),r=z7(n),Mi(u,r),on(u,n);t.a.Bc(e)!=null}ew(u),e.j=new Im((c(ee(he((g1(),wt).o),11),18),u.i),u.g),Ls(e).b&=-33}return e.j}function dLt(e){var t,n,i,r;if(e==null)return null;if(i=Ec(e,!0),r=$T.length,rt(i.substr(i.length-r,r),$T)){if(n=i.length,n==4){if(t=(fn(0,i.length),i.charCodeAt(0)),t==43)return Cme;if(t==45)return oht}else if(n==3)return Cme}return new xQ(i)}function gLt(e){var t,n,i;return n=e.l,(n&n-1)!=0||(i=e.m,(i&i-1)!=0)||(t=e.h,(t&t-1)!=0)||t==0&&i==0&&n==0?-1:t==0&&i==0&&n!=0?tre(n):t==0&&i!=0&&n==0?tre(i)+22:t!=0&&i==0&&n==0?tre(t)+44:-1}function bLt(e,t){var n,i,r,o,u;for(Wt(t,"Edge joining",1),n=Be(Fe(B(e,(Oe(),zU)))),r=new q(e.b);r.a1)for(r=new q(e.a);r.a0),o.a.Xb(o.c=--o.b),Np(o,r),Lt(o.b3&&Vf(e,0,t-3))}function vLt(e){var t,n,i,r;return le(B(e,(Oe(),Fw)))===le((Rh(),kd))?!e.e&&le(B(e,lj))!==le((J_(),ij)):(i=c(B(e,DU),292),r=Be(Fe(B(e,kU)))||le(B(e,PP))===le((f2(),nj)),t=c(B(e,Vge),19).a,n=e.a.c.length,!r&&i!=(J_(),ij)&&(t==0||t>n))}function yLt(e){var t,n;for(n=0;n0);n++);if(n>0&&n0);t++);return t>0&&n>16!=6&&t){if(gE(e,t))throw V(new St(Y6+wUe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?rce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,6,i)),i=nte(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,6,t,t))}function Dse(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=9&&t){if(gE(e,t))throw V(new St(Y6+ZWe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?cce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,9,i)),i=ite(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,9,t,t))}function Fq(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=3&&t){if(gE(e,t))throw V(new St(Y6+QYe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?uce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,12,i)),i=tte(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,t,t))}function SE(e){var t,n,i,r,o;if(i=ra(e),o=e.j,o==null&&i)return e.$j()?null:i.zj();if(Q(i,148)){if(n=i.Aj(),n&&(r=n.Nh(),r!=e.i)){if(t=c(i,148),t.Ej())try{e.g=r.Kh(t,o)}catch(u){if(u=gi(u),Q(u,78))e.g=null;else throw V(u)}e.i=r}return e.g}return null}function eWe(e){var t;return t=new Se,Ee(t,new $y(new $e(e.c,e.d),new $e(e.c+e.b,e.d))),Ee(t,new $y(new $e(e.c,e.d),new $e(e.c,e.d+e.a))),Ee(t,new $y(new $e(e.c+e.b,e.d+e.a),new $e(e.c+e.b,e.d))),Ee(t,new $y(new $e(e.c+e.b,e.d+e.a),new $e(e.c,e.d+e.a))),t}function tWe(e,t,n,i){var r,o,u;if(u=pce(t,n),i.c[i.c.length]=t,e.j[u.p]==-1||e.j[u.p]==2||e.a[t.p])return i;for(e.j[u.p]=-1,o=new Kt(Ht(xh(u).a.Kc(),new j));dn(o);)if(r=c(rn(o),17),!(!(!Kr(r)&&!(!Kr(r)&&r.c.i.c==r.d.i.c))||r==t))return tWe(e,r,u,i);return i}function _Lt(e,t,n){var i,r,o;for(o=t.a.ec().Kc();o.Ob();)r=c(o.Pb(),79),i=c(Bt(e.b,r),266),!i&&(yi(Uf(r))==yi(M1(r))?LNt(e,r,n):Uf(r)==yi(M1(r))?Bt(e.c,r)==null&&Bt(e.b,M1(r))!=null&&RXe(e,r,n,!1):Bt(e.d,r)==null&&Bt(e.b,Uf(r))!=null&&RXe(e,r,n,!0))}function ELt(e,t){var n,i,r,o,u,a,l;for(r=e.Kc();r.Ob();)for(i=c(r.Pb(),10),a=new gc,Bo(a,i),Ji(a,(Ie(),jt)),pe(a,(ye(),IR),(Pt(),!0)),u=t.Kc();u.Ob();)o=c(u.Pb(),10),l=new gc,Bo(l,o),Ji(l,Mt),pe(l,IR,!0),n=new c0,pe(n,IR,!0),Rr(n,a),br(n,l)}function SLt(e,t,n,i){var r,o,u,a;r=XHe(e,t,n),o=XHe(e,n,t),u=c(Bt(e.c,t),112),a=c(Bt(e.c,n),112),ri.b.g&&(o.c[o.c.length]=i);return o}function PE(){PE=Z,Kv=new lC("CANDIDATE_POSITION_LAST_PLACED_RIGHT",0),e3=new lC("CANDIDATE_POSITION_LAST_PLACED_BELOW",1),HP=new lC("CANDIDATE_POSITION_WHOLE_DRAWING_RIGHT",2),qP=new lC("CANDIDATE_POSITION_WHOLE_DRAWING_BELOW",3),zP=new lC("WHOLE_DRAWING",4)}function PLt(e,t){if(Q(t,239))return eAt(e,c(t,33));if(Q(t,186))return dAt(e,c(t,118));if(Q(t,354))return C5t(e,c(t,137));if(Q(t,352))return XBt(e,c(t,79));if(t)return null;throw V(new St(Afe+C1(new Js(U(G(xt,1),xe,1,5,[t])))))}function MLt(e){var t,n,i,r,o,u,a;for(o=new wi,r=new q(e.d.a);r.a1)for(t=Jb((n=new Cg,++e.b,n),e.d),a=Mn(o,0);a.b!=a.d.c;)u=c(Pn(a),121),$a(Aa(ja(Oa(Ta(new Zu,1),0),t),u))}function kse(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=11&&t){if(gE(e,t))throw V(new St(Y6+Jse(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?ace(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,10,i)),i=fte(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,11,t,t))}function CLt(e){var t,n,i,r;for(i=new Gg(new Pg(e.b).a);i.b;)n=g0(i),r=c(n.cd(),11),t=c(n.dd(),10),pe(t,(ye(),Hn),r),pe(r,As,t),pe(r,cj,(Pt(),!0)),Ji(r,c(B(t,Zo),61)),B(t,Zo),pe(r.i,(Oe(),ji),(wr(),k4)),c(B(Nr(r.i),Cc),21).Fc((to(),p4))}function ILt(e,t,n){var i,r,o,u,a,l;if(o=0,u=0,e.c)for(l=new q(e.d.i.j);l.ao.a?-1:r.al){for(p=e.d,e.d=oe(Jwe,Bfe,63,2*l+4,0,1),o=0;o=9223372036854776e3?(F_(),che):(r=!1,e<0&&(r=!0,e=-e),i=0,e>=nb&&(i=xi(e/nb),e-=i*nb),n=0,e>=T2&&(n=xi(e/T2),e-=n*T2),t=xi(e),o=Bc(t,n,i),r&&oK(o),o)}function NLt(e,t){var n,i,r,o;for(n=!t||!e.u.Hc((js(),Wh)),o=0,r=new q(e.e.Cf());r.a=-t&&i==t?new yr(Ce(n-1),Ce(i)):new yr(Ce(n),Ce(i-1))}function cWe(){return Jr(),U(G(Izt,1),_e,77,0,[e1e,Jde,hP,VG,v1e,Xk,cR,s4,w1e,u1e,b1e,c4,m1e,o1e,y1e,Vde,eR,GG,Wk,iR,E1e,nR,Gde,p1e,S1e,rR,_1e,Yk,n1e,d1e,h1e,sR,Yde,Uk,Qk,Wde,o4,l1e,c1e,g1e,dP,Qde,Xde,f1e,s1e,Zk,oR,Ude,tR,a1e,Jk,i1e,t1e,ej,Gk,r1e,Zde])}function KLt(e,t,n){e.d=0,e.b=0,t.k==(Dt(),Mc)&&n.k==Mc&&c(B(t,(ye(),Hn)),10)==c(B(n,Hn),10)&&(D$(t).j==(Ie(),_t)?VUe(e,t,n):VUe(e,n,t)),t.k==Mc&&n.k==ur?D$(t).j==(Ie(),_t)?e.d=1:e.b=1:n.k==Mc&&t.k==ur&&(D$(n).j==(Ie(),_t)?e.b=1:e.d=1),T8t(e,t,n)}function qLt(e){var t,n,i,r,o,u,a,l,d,p,v;return v=Dce(e),t=e.a,l=t!=null,l&&v_(v,"category",e.a),r=XM(new U3(e.d)),u=!r,u&&(d=new Eg,ul(v,"knownOptions",d),n=new Wje(d),Mr(new U3(e.d),n)),o=XM(e.g),a=!o,a&&(p=new Eg,ul(v,"supportedFeatures",p),i=new Yje(p),Mr(e.g,i)),v}function HLt(e){var t,n,i,r,o,u,a,l,d;for(i=!1,t=336,n=0,o=new uke(e.length),a=e,l=0,d=a.length;l>16!=7&&t){if(gE(e,t))throw V(new St(Y6+dGe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?oce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=c(t,49).gh(e,1,Hj,i)),i=ine(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,7,t,t))}function sWe(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=3&&t){if(gE(e,t))throw V(new St(Y6+EHe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?sce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=c(t,49).gh(e,0,Vj,i)),i=rne(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,t,t))}function $q(e,t){yE();var n,i,r,o,u,a,l,d,p;return t.d>e.d&&(a=e,e=t,t=a),t.d<63?kNt(e,t):(u=(e.d&-2)<<4,d=wie(e,u),p=wie(t,u),i=nH(e,c2(d,u)),r=nH(t,c2(p,u)),l=$q(d,p),n=$q(i,r),o=$q(nH(d,i),nH(r,p)),o=lH(lH(o,l),n),o=c2(o,u),l=c2(l,u<<1),lH(lH(l,o),n))}function VLt(e,t,n){var i,r,o,u,a;for(u=Q5(e,n),a=oe(nh,Ed,10,t.length,0,1),i=0,o=u.Kc();o.Ob();)r=c(o.Pb(),11),Be(Fe(B(r,(ye(),cj))))&&(a[i++]=c(B(r,As),10));if(i=0;o+=n?1:-1)u=u|t.c.Sf(l,o,n,i&&!Be(Fe(B(t.j,(ye(),Y0))))&&!Be(Fe(B(t.j,(ye(),kv))))),u=u|t.q._f(l,o,n),u=u|GWe(e,l[o],n,i);return Yi(e.c,t),u}function G7(e,t,n){var i,r,o,u,a,l,d,p,v,A;for(p=VNe(e.j),v=0,A=p.length;v1&&(e.a=!0),sSt(c(n.b,65),Wn(Wo(c(t.b,65).c),lf(hr(Wo(c(n.b,65).a),c(t.b,65).a),r))),oNe(e,t),uWe(e,n)}function aWe(e){var t,n,i,r,o,u,a;for(o=new q(e.a.a);o.a0&&o>0?u.p=t++:i>0?u.p=n++:o>0?u.p=r++:u.p=n++}st(),cr(e.j,new z_e)}function XLt(e){var t,n;n=null,t=c(Ne(e.g,0),17);do{if(n=t.d.i,nr(n,(ye(),da)))return c(B(n,da),11).i;if(n.k!=(Dt(),Ui)&&dn(new Kt(Ht(Vi(n).a.Kc(),new j))))t=c(rn(new Kt(Ht(Vi(n).a.Kc(),new j))),17);else if(n.k!=Ui)return null}while(n&&n.k!=(Dt(),Ui));return n}function JLt(e,t){var n,i,r,o,u,a,l,d,p;for(a=t.j,u=t.g,l=c(Ne(a,a.c.length-1),113),p=(pt(0,a.c.length),c(a.c[0],113)),d=oq(e,u,l,p),o=1;od&&(l=n,p=r,d=i);t.a=p,t.c=l}function QLt(e,t){var n,i;if(i=kC(e.b,t.b),!i)throw V(new Ao("Invalid hitboxes for scanline constraint calculation."));(pqe(t.b,c(Q3t(e.b,t.b),57))||pqe(t.b,c(J3t(e.b,t.b),57)))&&(Nf(),t.b+""),e.a[t.b.f]=c(nB(e.b,t.b),57),n=c(tB(e.b,t.b),57),n&&(e.a[n.f]=t.b)}function $a(e){if(!e.a.d||!e.a.e)throw V(new Ao((Sh(Cnt),Cnt.k+" must have a source and target "+(Sh(sde),sde.k)+" specified.")));if(e.a.d==e.a.e)throw V(new Ao("Network simplex does not support self-loops: "+e.a+" "+e.a.d+" "+e.a.e));return J9(e.a.d.g,e.a),J9(e.a.e.b,e.a),e.a}function ZLt(e,t,n){var i,r,o,u,a,l,d;for(d=new o1(new UTe(e)),u=U(G(drt,1),SQe,11,0,[t,n]),a=0,l=u.length;al-e.b&&al-e.a&&a0&&++D;++A}return D}function aNt(e,t){var n,i,r,o,u;for(u=c(B(t,(A0(),g0e)),425),o=Mn(t.b,0);o.b!=o.d.c;)if(r=c(Pn(o),86),e.b[r.g]==0){switch(u.g){case 0:Nze(e,r);break;case 1:fxt(e,r)}e.b[r.g]=2}for(i=Mn(e.a,0);i.b!=i.d.c;)n=c(Pn(i),188),nw(n.b.d,n,!0),nw(n.c.b,n,!0);pe(t,(ic(),s0e),e.a)}function qc(e,t){Wr();var n,i,r,o;return t?t==(Jn(),iht)||(t==Vft||t==Ib||t==zft)&&e!=Pme?new jue(e,t):(i=c(t,677),n=i.pk(),n||(C_(wo((vs(),Ir),t)),n=i.pk()),o=(!n.i&&(n.i=new en),n.i),r=c(Uo(Po(o.f,e)),1942),!r&&Kn(o,e,r=new jue(e,t)),r):Kft}function lNt(e,t){var n,i,r,o,u,a,l,d,p;for(l=c(B(e,(ye(),Hn)),11),d=Ko(U(G(ir,1),we,8,0,[l.i.n,l.n,l.a])).a,p=e.i.n.b,n=bf(e.e),r=n,o=0,u=r.length;o0?o.a?(a=o.b.rf().a,n>a&&(r=(n-a)/2,o.d.b=r,o.d.c=r)):o.d.c=e.s+n:M5(e.u)&&(i=kce(o.b),i.c<0&&(o.d.b=-i.c),i.c+i.b>o.b.rf().a&&(o.d.c=i.c+i.b-o.b.rf().a))}function gNt(e,t){var n,i,r,o;for(Wt(t,"Semi-Interactive Crossing Minimization Processor",1),n=!1,r=new q(e.b);r.a=0){if(t==n)return new yr(Ce(-t-1),Ce(-t-1));if(t==-n)return new yr(Ce(-t),Ce(n+1))}return g.Math.abs(t)>g.Math.abs(n)?t<0?new yr(Ce(-t),Ce(n)):new yr(Ce(-t),Ce(n+1)):new yr(Ce(t+1),Ce(n))}function wNt(e){var t,n;n=c(B(e,(Oe(),zc)),163),t=c(B(e,(ye(),gb)),303),n==(Ku(),K1)?(pe(e,zc,aj),pe(e,gb,(Oh(),Ov))):n==xw?(pe(e,zc,aj),pe(e,gb,(Oh(),z2))):t==(Oh(),Ov)?(pe(e,zc,K1),pe(e,gb,rj)):t==z2&&(pe(e,zc,xw),pe(e,gb,rj))}function U7(){U7=Z,mj=new OSe,hut=Nn(new tr,(Hr(),Hc),(Jr(),Wk)),but=Cs(Nn(new tr,Hc,nR),Io,tR),put=M0(M0(b9(Cs(Nn(new tr,Af,cR),Io,oR),Pc),rR),sR),dut=Cs(Nn(Nn(Nn(new tr,B1,Xk),Pc,Qk),Pc,o4),Io,Jk),gut=Cs(Nn(Nn(new tr,Pc,o4),Pc,Uk),Io,Gk)}function w6(){w6=Z,vut=Nn(Cs(new tr,(Hr(),Io),(Jr(),i1e)),Hc,Wk),Sut=M0(M0(b9(Cs(Nn(new tr,Af,cR),Io,oR),Pc),rR),sR),yut=Cs(Nn(Nn(Nn(new tr,B1,Xk),Pc,Qk),Pc,o4),Io,Jk),Eut=Nn(Nn(new tr,Hc,nR),Io,tR),_ut=Cs(Nn(Nn(new tr,Pc,o4),Pc,Uk),Io,Gk)}function mNt(e,t,n,i,r){var o,u;(!Kr(t)&&t.c.i.c==t.d.i.c||!PKe(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])),n))&&!Kr(t)&&(t.c==r?b_(t.a,0,new go(n)):Cn(t.a,new go(n)),i&&!_h(e.a,n)&&(u=c(B(t,(Oe(),yo)),74),u||(u=new ds,pe(t,yo,u)),o=new go(n),Ri(u,o,u.c.b,u.c),Yi(e.a,o)))}function vNt(e){var t,n;for(n=new Kt(Ht(ko(e).a.Kc(),new j));dn(n);)if(t=c(rn(n),17),t.c.i.k!=(Dt(),cu))throw V(new ym(Cz+LI(e)+"' has its layer constraint set to FIRST, but has at least one incoming edge that does not come from a FIRST_SEPARATE node. That must not happen."))}function yNt(e,t,n){var i,r,o,u,a,l,d;if(r=THe(e.Db&254),r==0)e.Eb=n;else{if(r==1)a=oe(xt,xe,1,2,5,1),o=rq(e,t),o==0?(a[0]=n,a[1]=e.Eb):(a[0]=e.Eb,a[1]=n);else for(a=oe(xt,xe,1,r+1,5,1),u=$g(e.Eb),i=2,l=0,d=0;i<=128;i<<=1)i==t?a[d++]=n:(e.Db&i)!=0&&(a[d++]=u[l++]);e.Eb=a}e.Db|=t}function fWe(e,t,n){var i,r,o,u;for(this.b=new Se,r=0,i=0,u=new q(e);u.a0&&(o=c(Ne(this.b,0),167),r+=o.o,i+=o.p),r*=2,i*=2,t>1?r=xi(g.Math.ceil(r*t)):i=xi(g.Math.ceil(i/t)),this.a=new Coe(r,i)}function hWe(e,t,n,i,r,o){var u,a,l,d,p,v,A,D,L,N,z,Y;for(p=i,t.j&&t.o?(D=c(Bt(e.f,t.A),57),N=D.d.c+D.d.b,--p):N=t.a.c+t.a.b,v=r,n.q&&n.o?(D=c(Bt(e.f,n.C),57),d=D.d.c,++v):d=n.a.c,z=d-N,l=g.Math.max(2,v-p),a=z/l,L=N+a,A=p;A=0;u+=r?1:-1){for(a=t[u],l=i==(Ie(),jt)?r?qo(a,i):Kg(qo(a,i)):r?Kg(qo(a,i)):qo(a,i),o&&(e.c[a.p]=l.gc()),v=l.Kc();v.Ob();)p=c(v.Pb(),11),e.d[p.p]=d++;Hi(n,l)}}function dWe(e,t,n){var i,r,o,u,a,l,d,p;for(o=ge(Te(e.b.Kc().Pb())),d=ge(Te(jTt(t.b))),i=lf(Wo(e.a),d-n),r=lf(Wo(t.a),n-o),p=Wn(i,r),lf(p,1/(d-o)),this.a=p,this.b=new Se,a=!0,u=e.b.Kc(),u.Pb();u.Ob();)l=ge(Te(u.Pb())),a&&l-n>cV&&(this.b.Fc(n),a=!1),this.b.Fc(l);a&&this.b.Fc(n)}function _Nt(e){var t,n,i,r;if(DFt(e,e.n),e.d.c.length>0){for(LS(e.c);mse(e,c(K(new q(e.e.a)),121))>5,t&=31,i>=e.d)return e.e<0?(T1(),gG):(T1(),t4);if(o=e.d-i,r=oe(Qt,_n,25,o+1,15,1),gkt(r,o,e.a,i,t),e.e<0){for(n=0;n0&&e.a[n]<<32-t!=0){for(n=0;n=0?!1:(n=uv((vs(),Ir),r,t),n?(i=n.Zj(),(i>1||i==-1)&&o0(wo(Ir,n))!=3):!0)):!1}function MNt(e,t,n,i){var r,o,u,a,l;return a=Co(c(ee((!t.b&&(t.b=new dt(Ut,t,4,7)),t.b),0),82)),l=Co(c(ee((!t.c&&(t.c=new dt(Ut,t,5,8)),t.c),0),82)),yi(a)==yi(l)||Jp(l,a)?null:(u=KC(t),u==n?i:(o=c(Bt(e.a,u),10),o&&(r=o.e,r)?r:null))}function CNt(e,t){var n;switch(n=c(B(e,(Oe(),RR)),276),Wt(t,"Label side selection ("+n+")",1),n.g){case 0:OUe(e,(mu(),rh));break;case 1:OUe(e,(mu(),U1));break;case 2:GYe(e,(mu(),rh));break;case 3:GYe(e,(mu(),U1));break;case 4:IWe(e,(mu(),rh));break;case 5:IWe(e,(mu(),U1))}qt(t)}function $se(e,t,n){var i,r,o,u,a,l;if(i=fyt(n,e.length),u=e[i],u[0].k==(Dt(),Bi))for(o=O9e(n,u.length),l=t.j,r=0;r0&&(n[0]+=e.d,u-=n[0]),n[2]>0&&(n[2]+=e.d,u-=n[2]),o=g.Math.max(0,u),n[1]=g.Math.max(n[1],u),vie(e,Nc,r.c+i.b+n[0]-(n[1]-u)/2,n),t==Nc&&(e.c.b=o,e.c.c=r.c+i.b+(o-u)/2)}function PWe(){this.c=oe(gr,lo,25,(Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])).length,15,1),this.b=oe(gr,lo,25,U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt]).length,15,1),this.a=oe(gr,lo,25,U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt]).length,15,1),jZ(this.c,Ii),jZ(this.b,$i),jZ(this.a,$i)}function _c(e,t,n){var i,r,o,u;if(t<=n?(r=t,o=n):(r=n,o=t),i=0,e.b==null)e.b=oe(Qt,_n,25,2,15,1),e.b[0]=r,e.b[1]=o,e.c=!0;else{if(i=e.b.length,e.b[i-1]+1==r){e.b[i-1]=o;return}u=oe(Qt,_n,25,i+2,15,1),bc(e.b,0,u,0,i),e.b=u,e.b[i-1]>=r&&(e.c=!1,e.a=!1),e.b[i++]=r,e.b[i]=o,e.c||tv(e)}}function RNt(e,t,n){var i,r,o,u,a,l,d;for(d=t.d,e.a=new Dc(d.c.length),e.c=new en,a=new q(d);a.a=0?e._g(d,!1,!0):j0(e,n,!1),58));e:for(o=v.Kc();o.Ob();){for(r=c(o.Pb(),56),p=0;p1;)hw(r,r.i-1);return i}function BNt(e,t){var n,i,r,o,u,a,l;for(Wt(t,"Comment post-processing",1),o=new q(e.b);o.ae.d[u.p]&&(n+=die(e.b,o),w1(e.a,Ce(o)));for(;!xS(e.a);)zie(e.b,c(Qy(e.a),19).a)}return n}function TWe(e,t,n){var i,r,o,u;for(o=(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i,r=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));r.e!=r.i.gc();)i=c(Vt(r),33),(!i.a&&(i.a=new Me(Ei,i,10,11)),i.a).i==0||(o+=TWe(e,i,!1));if(n)for(u=yi(t);u;)o+=(!u.a&&(u.a=new Me(Ei,u,10,11)),u.a).i,u=yi(u);return o}function hw(e,t){var n,i,r,o;return e.ej()?(i=null,r=e.fj(),e.ij()&&(i=e.kj(e.pi(t),null)),n=e.Zi(4,o=v2(e,t),null,t,r),e.bj()&&o!=null&&(i=e.dj(o,i)),i?(i.Ei(n),i.Fi()):e.$i(n),o):(o=v2(e,t),e.bj()&&o!=null&&(i=e.dj(o,null),i&&i.Fi()),o)}function KNt(e){var t,n,i,r,o,u,a,l,d,p;for(d=e.a,t=new er,l=0,i=new q(e.d);i.aa.d&&(p=a.d+a.a+d));n.c.d=p,t.a.zc(n,t),l=g.Math.max(l,n.c.d+n.c.a)}return l}function to(){to=Z,yR=new Op("COMMENTS",0),Gu=new Op("EXTERNAL_PORTS",1),mP=new Op("HYPEREDGES",2),_R=new Op("HYPERNODES",3),p4=new Op("NON_FREE_PORTS",4),Av=new Op("NORTH_SOUTH_PORTS",5),vP=new Op(qQe,6),g4=new Op("CENTER_LABELS",7),b4=new Op("END_LABELS",8),ER=new Op("PARTITIONS",9)}function dw(e){var t,n,i,r,o;for(r=new Se,t=new _5((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a)),i=new Kt(Ht(Fh(e).a.Kc(),new j));dn(i);)n=c(rn(i),79),Q(ee((!n.b&&(n.b=new dt(Ut,n,4,7)),n.b),0),186)||(o=Co(c(ee((!n.c&&(n.c=new dt(Ut,n,5,8)),n.c),0),82)),t.a._b(o)||(r.c[r.c.length]=o));return r}function qNt(e){var t,n,i,r,o,u;for(o=new er,t=new _5((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a)),r=new Kt(Ht(Fh(e).a.Kc(),new j));dn(r);)i=c(rn(r),79),Q(ee((!i.b&&(i.b=new dt(Ut,i,4,7)),i.b),0),186)||(u=Co(c(ee((!i.c&&(i.c=new dt(Ut,i,5,8)),i.c),0),82)),t.a._b(u)||(n=o.a.zc(u,o),n==null));return o}function HNt(e,t,n,i,r){return i<0?(i=ev(e,r,U(G(Re,1),we,2,6,[TH,jH,AH,OH,C2,DH,kH,RH,xH,LH,NH,FH]),t),i<0&&(i=ev(e,r,U(G(Re,1),we,2,6,["Jan","Feb","Mar","Apr",C2,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),t)),i<0?!1:(n.k=i,!0)):i>0?(n.k=i-1,!0):!1}function zNt(e,t,n,i,r){return i<0?(i=ev(e,r,U(G(Re,1),we,2,6,[TH,jH,AH,OH,C2,DH,kH,RH,xH,LH,NH,FH]),t),i<0&&(i=ev(e,r,U(G(Re,1),we,2,6,["Jan","Feb","Mar","Apr",C2,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),t)),i<0?!1:(n.k=i,!0)):i>0?(n.k=i-1,!0):!1}function VNt(e,t,n,i,r,o){var u,a,l,d;if(a=32,i<0){if(t[0]>=e.length||(a=Pr(e,t[0]),a!=43&&a!=45)||(++t[0],i=B7(e,t),i<0))return!1;a==45&&(i=-i)}return a==32&&t[0]-n==2&&r.b==2&&(l=new u9,d=l.q.getFullYear()-O1+O1-80,u=d%100,o.a=i==u,i+=(d/100|0)*100+(i=d&&(l=i);l&&(p=g.Math.max(p,l.a.o.a)),p>A&&(v=d,A=p)}return v}function WNt(e,t,n){var i,r,o;if(e.e=n,e.d=0,e.b=0,e.f=1,e.i=t,(e.e&16)==16&&(e.i=RFt(e.i)),e.j=e.i.length,xn(e),o=P0(e),e.d!=e.j)throw V(new an(gn((un(),fet))));if(e.g){for(i=0;ifZe?cr(l,e.b):i<=fZe&&i>hZe?cr(l,e.d):i<=hZe&&i>dZe?cr(l,e.c):i<=dZe&&cr(l,e.a),o=DWe(e,l,o);return r}function T1(){T1=Z;var e;for(Ck=new ld(1,1),bG=new ld(1,10),t4=new ld(0,0),gG=new ld(-1,1),Che=U(G(Ev,1),we,91,0,[t4,Ck,new ld(1,2),new ld(1,3),new ld(1,4),new ld(1,5),new ld(1,6),new ld(1,7),new ld(1,8),new ld(1,9),bG]),Ik=oe(Ev,we,91,32,0,1),e=0;e1,a&&(i=new $e(r,n.b),Cn(t.a,i)),q5(t.a,U(G(ir,1),we,8,0,[A,v]))}function NWe(e){Gb(e,new Zg(qb(Bb(Kb($b(new _g,ZD),"ELK Randomizer"),'Distributes the nodes randomly on the plane, leading to very obfuscating layouts. Can be useful to demonstrate the power of "real" layout algorithms.'),new l6e))),je(e,ZD,N0,Lwe),je(e,ZD,_w,15),je(e,ZD,MD,Ce(0)),je(e,ZD,D2,KE)}function Hse(){Hse=Z;var e,t,n,i,r,o;for(fM=oe(Ps,vv,25,255,15,1),Vx=oe(Yu,vf,25,16,15,1),t=0;t<255;t++)fM[t]=-1;for(n=57;n>=48;n--)fM[n]=n-48<<24>>24;for(i=70;i>=65;i--)fM[i]=i-65+10<<24>>24;for(r=102;r>=97;r--)fM[r]=r-97+10<<24>>24;for(o=0;o<10;o++)Vx[o]=48+o&Ni;for(e=10;e<=15;e++)Vx[e]=65+e-10&Ni}function Y7(e,t,n){var i,r,o,u,a,l,d,p;return a=t.i-e.g/2,l=n.i-e.g/2,d=t.j-e.g/2,p=n.j-e.g/2,o=t.g+e.g/2,u=n.g+e.g/2,i=t.f+e.g/2,r=n.f+e.g/2,a>19!=0)return"-"+FWe(Z_(e));for(n=e,i="";!(n.l==0&&n.m==0&&n.h==0);){if(r=_$(pD),n=_ue(n,r,!0),t=""+X9e(L1),!(n.l==0&&n.m==0&&n.h==0))for(o=9-t.length;o>0;o--)t="0"+t;i=t+i}return i}function eFt(){if(!Object.create||!Object.getOwnPropertyNames)return!1;var e="__proto__",t=Object.create(null);if(t[e]!==void 0)return!1;var n=Object.getOwnPropertyNames(t);return!(n.length!=0||(t[e]=42,t[e]!==42)||Object.getOwnPropertyNames(t).length==0)}function tFt(e){var t,n,i,r,o,u,a;for(t=!1,n=0,r=new q(e.d.b);r.a=e.a||!Ace(t,n))return-1;if(O_(c(i.Kb(t),20)))return 1;for(r=0,u=c(i.Kb(t),20).Kc();u.Ob();)if(o=c(u.Pb(),17),l=o.c.i==t?o.d.i:o.c.i,a=Vse(e,l,n,i),a==-1||(r=g.Math.max(r,a),r>e.c-1))return-1;return r+1}function BWe(e,t){var n,i,r,o,u,a;if(le(t)===le(e))return!0;if(!Q(t,15)||(i=c(t,15),a=e.gc(),i.gc()!=a))return!1;if(u=i.Kc(),e.ni()){for(n=0;n0){if(e.qj(),t!=null){for(o=0;o>24;case 97:case 98:case 99:case 100:case 101:case 102:return e-97+10<<24>>24;case 65:case 66:case 67:case 68:case 69:case 70:return e-65+10<<24>>24;default:throw V(new uf("Invalid hexadecimal"))}}function oFt(e,t,n){var i,r,o,u;for(Wt(n,"Processor order nodes",2),e.a=ge(Te(B(t,(A0(),b0e)))),r=new wi,u=Mn(t.b,0);u.b!=u.d.c;)o=c(Pn(u),86),Be(Fe(B(o,(ic(),Gw))))&&Ri(r,o,r.c.b,r.c);i=(Lt(r.b!=0),c(r.a.a.c,86)),oXe(e,i),!n.b&&G$(n,1),Xse(e,i,0-ge(Te(B(i,(ic(),ix))))/2,0),!n.b&&G$(n,1),qt(n)}function X7(){X7=Z,ode=new Pm("SPIRAL",0),tde=new Pm("LINE_BY_LINE",1),nde=new Pm("MANHATTAN",2),ede=new Pm("JITTER",3),_G=new Pm("QUADRANTS_LINE_BY_LINE",4),rde=new Pm("QUADRANTS_MANHATTAN",5),ide=new Pm("QUADRANTS_JITTER",6),Zhe=new Pm("COMBINE_LINE_BY_LINE_MANHATTAN",7),Qhe=new Pm("COMBINE_JITTER_MANHATTAN",8)}function KWe(e,t,n,i){var r,o,u,a,l,d;for(l=lq(e,n),d=lq(t,n),r=!1;l&&d&&(i||tOt(l,d,n));)u=lq(l,n),a=lq(d,n),tI(t),tI(e),o=l.c,gH(l,!1),gH(d,!1),n?(cw(t,d.p,o),t.p=d.p,cw(e,l.p+1,o),e.p=l.p):(cw(e,l.p,o),e.p=l.p,cw(t,d.p+1,o),t.p=d.p),po(l,null),po(d,null),l=u,d=a,r=!0;return r}function cFt(e,t,n,i){var r,o,u,a,l;for(r=!1,o=!1,a=new q(i.j);a.a=t.length)throw V(new ho("Greedy SwitchDecider: Free layer not in graph."));this.c=t[e],this.e=new IC(i),X$(this.e,this.c,(Ie(),Mt)),this.i=new IC(i),X$(this.i,this.c,jt),this.f=new BRe(this.c),this.a=!o&&r.i&&!r.s&&this.c[0].k==(Dt(),Bi),this.a&&Skt(this,e,t.length)}function HWe(e,t){var n,i,r,o,u,a;o=!e.B.Hc((Ks(),Kj)),u=e.B.Hc(oY),e.a=new FHe(u,o,e.c),e.n&&xne(e.a.n,e.n),HN(e.g,(al(),Nc),e.a),t||(i=new r6(1,o,e.c),i.n.a=e.k,Xy(e.p,(Ie(),_t),i),r=new r6(1,o,e.c),r.n.d=e.k,Xy(e.p,Yt,r),a=new r6(0,o,e.c),a.n.c=e.k,Xy(e.p,Mt,a),n=new r6(0,o,e.c),n.n.b=e.k,Xy(e.p,jt,n))}function uFt(e){var t,n,i;switch(t=c(B(e.d,(Oe(),zh)),218),t.g){case 2:n=FHt(e);break;case 3:n=(i=new Se,Di(si(Yc($o($o(new ht(null,new bt(e.d.b,16)),new c4e),new s4e),new u4e),new UEe),new STe(i)),i);break;default:throw V(new Ao("Compaction not supported for "+t+" edges."))}cKt(e,n),Mr(new U3(e.g),new _Te(e))}function aFt(e,t){var n;return n=new bN,t&&Mo(n,c(Bt(e.a,Hj),94)),Q(t,470)&&Mo(n,c(Bt(e.a,zj),94)),Q(t,354)?(Mo(n,c(Bt(e.a,Lo),94)),n):(Q(t,82)&&Mo(n,c(Bt(e.a,Ut),94)),Q(t,239)?(Mo(n,c(Bt(e.a,Ei),94)),n):Q(t,186)?(Mo(n,c(Bt(e.a,Vs),94)),n):(Q(t,352)&&Mo(n,c(Bt(e.a,rr),94)),n))}function dl(){dl=Z,r4=new Yr((kn(),Sx),Ce(1)),Kk=new Yr(Pb,80),Lit=new Yr(dwe,5),Iit=new Yr(n3,KE),Rit=new Yr(eY,Ce(1)),xit=new Yr(tY,(Pt(),!0)),Ede=new Yb(50),Dit=new Yr(Sb,Ede),vde=yx,Sde=UP,Tit=new Yr(VW,!1),_de=kj,Oit=G1,Ait=Eb,jit=zv,kit=Uw,yde=(Hce(),yit),kG=Pit,$k=vit,DG=_it,Pde=Sit}function lFt(e){var t,n,i,r,o,u,a,l;for(l=new VFe,a=new q(e.a);a.a0&&t=0)return!1;if(t.p=n.b,Ee(n.e,t),r==(Dt(),ur)||r==Mc){for(u=new q(t.j);u.a1||u==-1)&&(o|=16),(r.Bb&rc)!=0&&(o|=64)),(n.Bb&Vr)!=0&&(o|=Iw),o|=Ka):Q(t,457)?o|=512:(i=t.Bj(),i&&(i.i&1)!=0&&(o|=256)),(e.Bb&512)!=0&&(o|=128),o}function m6(e,t){var n,i,r,o,u;for(e=e==null?rs:(yt(e),e),r=0;re.d[a.p]&&(n+=die(e.b,o),w1(e.a,Ce(o)))):++u;for(n+=e.b.d*u;!xS(e.a);)zie(e.b,c(Qy(e.a),19).a)}return n}function vFt(e,t){var n;return e.f==wY?(n=o0(wo((vs(),Ir),t)),e.e?n==4&&t!=(E2(),a3)&&t!=(E2(),u3)&&t!=(E2(),mY)&&t!=(E2(),vY):n==2):e.d&&(e.d.Hc(t)||e.d.Hc(r2(wo((vs(),Ir),t)))||e.d.Hc(uv((vs(),Ir),e.b,t)))?!0:e.f&&Rse((vs(),e.f),LC(wo(Ir,t)))?(n=o0(wo(Ir,t)),e.e?n==4:n==2):!1}function yFt(e,t,n,i){var r,o,u,a,l,d,p,v;return u=c(Ke(n,(kn(),i3)),8),l=u.a,p=u.b+e,r=g.Math.atan2(p,l),r<0&&(r+=pv),r+=t,r>pv&&(r-=pv),a=c(Ke(i,i3),8),d=a.a,v=a.b+e,o=g.Math.atan2(v,d),o<0&&(o+=pv),o+=t,o>pv&&(o-=pv),Il(),Na(1e-10),g.Math.abs(r-o)<=1e-10||r==o||isNaN(r)&&isNaN(o)?0:ro?1:Wb(isNaN(r),isNaN(o))}function Vq(e){var t,n,i,r,o,u,a;for(a=new en,i=new q(e.a.b);i.a=e.o)throw V(new RQ);a=t>>5,u=t&31,o=Ph(1,tn(Ph(u,1))),r?e.n[n][a]=Dl(e.n[n][a],o):e.n[n][a]=Xi(e.n[n][a],Bte(o)),o=Ph(o,1),i?e.n[n][a]=Dl(e.n[n][a],o):e.n[n][a]=Xi(e.n[n][a],Bte(o))}catch(l){throw l=gi(l),Q(l,320)?V(new ho(hz+e.o+"*"+e.p+dz+t+zr+n+gz)):V(l)}}function Xse(e,t,n,i){var r,o,u;t&&(o=ge(Te(B(t,(ic(),Ad))))+i,u=n+ge(Te(B(t,ix)))/2,pe(t,wW,Ce(tn(ns(g.Math.round(o))))),pe(t,u0e,Ce(tn(ns(g.Math.round(u))))),t.d.b==0||Xse(e,c(G9((r=Mn(new t1(t).a.d,0),new Dy(r))),86),n+ge(Te(B(t,ix)))+e.a,i+ge(Te(B(t,C4)))),B(t,pW)!=null&&Xse(e,c(B(t,pW),86),n,i))}function EFt(e,t){var n,i,r,o,u,a,l,d,p,v,A;for(l=Nr(t.a),r=ge(Te(B(l,(Oe(),vb))))*2,p=ge(Te(B(l,Nv))),d=g.Math.max(r,p),o=oe(gr,lo,25,t.f-t.c+1,15,1),i=-d,n=0,a=t.b.Kc();a.Ob();)u=c(a.Pb(),10),i+=e.a[u.c.p]+d,o[n++]=i;for(i+=e.a[t.a.c.p]+d,o[n++]=i,A=new q(t.e);A.a0&&(i=(!e.n&&(e.n=new Me(Lo,e,1,7)),c(ee(e.n,0),137)).a,!i||wn(wn((t.a+=' "',t),i),'"'))),wn(zb(wn(zb(wn(zb(wn(zb((t.a+=" (",t),e.i),","),e.j)," | "),e.g),","),e.f),")"),t.a)}function ZWe(e){var t,n,i;return(e.Db&64)!=0?_q(e):(t=new lu(_fe),n=e.k,n?wn(wn((t.a+=' "',t),n),'"'):(!e.n&&(e.n=new Me(Lo,e,1,7)),e.n.i>0&&(i=(!e.n&&(e.n=new Me(Lo,e,1,7)),c(ee(e.n,0),137)).a,!i||wn(wn((t.a+=' "',t),i),'"'))),wn(zb(wn(zb(wn(zb(wn(zb((t.a+=" (",t),e.i),","),e.j)," | "),e.g),","),e.f),")"),t.a)}function Uq(e,t){var n,i,r,o,u,a,l;if(t==null||t.length==0)return null;if(r=c(mc(e.a,t),149),!r){for(i=(a=new yh(e.b).a.vc().Kc(),new Cp(a));i.a.Ob();)if(n=(o=c(i.a.Pb(),42),c(o.dd(),149)),u=n.c,l=t.length,rt(u.substr(u.length-l,l),t)&&(t.length==u.length||Pr(u,u.length-t.length-1)==46)){if(r)return null;r=n}r&&bo(e.a,t,r)}return r}function MFt(e,t){var n,i,r,o;return n=new E2e,i=c(gu(Yc(new ht(null,new bt(e.f,16)),n),Wp(new Rs,new xs,new Mp,new ed,U(G(Hs,1),_e,132,0,[(Fl(),Tw),Su]))),21),r=i.gc(),i=c(gu(Yc(new ht(null,new bt(t.f,16)),n),Wp(new Rs,new xs,new Mp,new ed,U(G(Hs,1),_e,132,0,[Tw,Su]))),21),o=i.gc(),rr.p?(Ji(o,Yt),o.d&&(a=o.o.b,t=o.a.b,o.a.b=a-t)):o.j==Yt&&r.p>e.p&&(Ji(o,_t),o.d&&(a=o.o.b,t=o.a.b,o.a.b=-(a-t)));break}return r}function IFt(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L;if(o=n,n1,a&&(i=new $e(r,n.b),Cn(t.a,i)),q5(t.a,U(G(ir,1),we,8,0,[A,v]))}function Wq(e,t,n){var i,r,o,u,a,l;if(t)if(n<=-1){if(i=at(t.Tg(),-1-n),Q(i,99))return c(i,18);for(u=c(t.ah(i),153),a=0,l=u.gc();a0){for(r=l.length;r>0&&l[r-1]=="";)--r;r=40,u&&FBt(e),q$t(e),_Nt(e),n=PHe(e),i=0;n&&i0&&Cn(e.f,o)):(e.c[u]-=d+1,e.c[u]<=0&&e.a[u]>0&&Cn(e.e,o))))}function ZFt(e){var t,n,i,r,o,u,a,l,d;for(a=new o1(c(nn(new P2e),62)),d=$i,n=new q(e.d);n.a=0&&ln?t:n;d<=v;++d)d==n?a=i++:(o=r[d],p=L.rl(o.ak()),d==t&&(l=d==v&&!p?i-1:i),p&&++i);return A=c(t6(e,t,n),72),a!=l&&Q3(e,new QC(e.e,7,u,Ce(a),D.dd(),l)),A}}else return c(Aq(e,t,n),72);return c(t6(e,t,n),72)}function iBt(e,t){var n,i,r,o,u,a,l;for(Wt(t,"Port order processing",1),l=c(B(e,(Oe(),vbe)),421),i=new q(e.b);i.a=0&&(a=cOt(e,u),!(a&&(d<22?l.l|=1<>>1,u.m=p>>>1|(v&1)<<21,u.l=A>>>1|(p&1)<<21,--d;return n&&oK(l),o&&(i?(L1=Z_(e),r&&(L1=hqe(L1,(F_(),she)))):L1=Bc(e.l,e.m,e.h)),l}function cBt(e,t){var n,i,r,o,u,a,l,d,p,v;for(d=e.e[t.c.p][t.p]+1,l=t.c.a.c.length+1,a=new q(e.a);a.a0&&(fn(0,e.length),e.charCodeAt(0)==45||(fn(0,e.length),e.charCodeAt(0)==43))?1:0,i=u;in)throw V(new uf(L0+e+'"'));return a}function sBt(e){var t,n,i,r,o,u,a;for(u=new wi,o=new q(e.a);o.a1)&&t==1&&c(e.a[e.b],10).k==(Dt(),cu)?P2(c(e.a[e.b],10),(mu(),rh)):i&&(!n||(e.c-e.b&e.a.length-1)>1)&&t==1&&c(e.a[e.c-1&e.a.length-1],10).k==(Dt(),cu)?P2(c(e.a[e.c-1&e.a.length-1],10),(mu(),U1)):(e.c-e.b&e.a.length-1)==2?(P2(c(Y5(e),10),(mu(),rh)),P2(c(Y5(e),10),U1)):tLt(e,r),fie(e)}function lBt(e,t,n){var i,r,o,u,a;for(o=0,r=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));r.e!=r.i.gc();)i=c(Vt(r),33),u="",(!i.n&&(i.n=new Me(Lo,i,1,7)),i.n).i==0||(u=c(ee((!i.n&&(i.n=new Me(Lo,i,1,7)),i.n),0),137).a),a=new uK(o++,t,u),Mo(a,i),pe(a,(ic(),$P),i),a.e.b=i.j+i.f/2,a.f.a=g.Math.max(i.g,1),a.e.a=i.i+i.g/2,a.f.b=g.Math.max(i.f,1),Cn(t.b,a),Kc(n.f,i,a)}function fBt(e){var t,n,i,r,o;i=c(B(e,(ye(),Hn)),33),o=c(Ke(i,(Oe(),wb)),174).Hc((ou(),Cb)),e.e||(r=c(B(e,Cc),21),t=new $e(e.f.a+e.d.b+e.d.c,e.f.b+e.d.d+e.d.a),r.Hc((to(),Gu))?(ao(i,ji,(wr(),Ic)),k0(i,t.a,t.b,!1,!0)):Be(Fe(Ke(i,$U)))||k0(i,t.a,t.b,!0,!0)),o?ao(i,wb,nt(Cb)):ao(i,wb,(n=c(rl(tM),9),new ku(n,c(Da(n,n.length),9),0)))}function rue(e,t,n){var i,r,o,u;if(t[0]>=e.length)return n.o=0,!0;switch(Pr(e,t[0])){case 43:r=1;break;case 45:r=-1;break;default:return n.o=0,!0}if(++t[0],o=t[0],u=B7(e,t),u==0&&t[0]==o)return!1;if(t[0]=0&&a!=n&&(o=new sr(e,1,a,u,null),i?i.Ei(o):i=o),n>=0&&(o=new sr(e,1,n,a==n?u:null,t),i?i.Ei(o):i=o)),i}function wYe(e){var t,n,i;if(e.b==null){if(i=new nd,e.i!=null&&(co(i,e.i),i.a+=":"),(e.f&256)!=0){for((e.f&256)!=0&&e.a!=null&&(I5t(e.i)||(i.a+="//"),co(i,e.a)),e.d!=null&&(i.a+="/",co(i,e.d)),(e.f&16)!=0&&(i.a+="/"),t=0,n=e.j.length;tA?!1:(v=(l=P6(i,A,!1),l.a),p+a+v<=t.b&&(JC(n,o-n.s),n.c=!0,JC(i,o-n.s),kI(i,n.s,n.t+n.d+a),i.k=!0,pre(n.q,i),D=!0,r&&(OO(t,i),i.j=t,e.c.length>u&&(FI((pt(u,e.c.length),c(e.c[u],200)),i),(pt(u,e.c.length),c(e.c[u],200)).a.c.length==0&&ad(e,u)))),D)}function vBt(e,t){var n,i,r,o,u,a;if(Wt(t,"Partition midprocessing",1),r=new u0,Di(si(new ht(null,new bt(e.a,16)),new G_e),new sTe(r)),r.d!=0){for(a=c(gu(lNe((o=r.i,new ht(null,(o||(r.i=new Dm(r,r.c))).Nc()))),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),i=a.Kc(),n=c(i.Pb(),19);i.Ob();)u=c(i.Pb(),19),ELt(c(Vn(r,n),21),c(Vn(r,u),21)),n=u;qt(t)}}function yYe(e,t,n){var i,r,o,u,a,l,d,p;if(t.p==0){for(t.p=1,u=n,u||(r=new Se,o=(i=c(rl(Gr),9),new ku(i,c(Da(i,i.length),9),0)),u=new yr(r,o)),c(u.a,15).Fc(t),t.k==(Dt(),Bi)&&c(u.b,21).Fc(c(B(t,(ye(),Zo)),61)),l=new q(t.j);l.a0){if(r=c(e.Ab.g,1934),t==null){for(o=0;o1)for(i=new q(r);i.an.s&&aa&&(a=r,p.c=oe(xt,xe,1,0,5,1)),r==a&&Ee(p,new yr(n.c.i,n)));st(),cr(p,e.c),Bp(e.b,l.p,p)}}function MBt(e,t){var n,i,r,o,u,a,l,d,p;for(u=new q(t.b);u.aa&&(a=r,p.c=oe(xt,xe,1,0,5,1)),r==a&&Ee(p,new yr(n.d.i,n)));st(),cr(p,e.c),Bp(e.f,l.p,p)}}function EYe(e){Gb(e,new Zg(qb(Bb(Kb($b(new _g,$0),"ELK Box"),"Algorithm for packing of unconnected boxes, i.e. graphs without edges."),new X5e))),je(e,$0,N0,xpe),je(e,$0,_w,15),je(e,$0,ST,Ce(0)),je(e,$0,XD,Le(Dpe)),je(e,$0,gv,Le(blt)),je(e,$0,k2,Le(plt)),je(e,$0,D2,yZe),je(e,$0,PT,Le(kpe)),je(e,$0,R2,Le(Rpe)),je(e,$0,bfe,Le(KW)),je(e,$0,zD,Le(glt))}function SYe(e,t){var n,i,r,o,u,a,l,d,p;if(r=e.i,u=r.o.a,o=r.o.b,u<=0&&o<=0)return Ie(),Vo;switch(d=e.n.a,p=e.n.b,a=e.o.a,n=e.o.b,t.g){case 2:case 1:if(d<0)return Ie(),Mt;if(d+a>u)return Ie(),jt;break;case 4:case 3:if(p<0)return Ie(),_t;if(p+n>o)return Ie(),Yt}return l=(d+a/2)/u,i=(p+n/2)/o,l+i<=1&&l-i<=0?(Ie(),Mt):l+i>=1&&l-i>=0?(Ie(),jt):i<.5?(Ie(),_t):(Ie(),Yt)}function CBt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(n=!1,p=ge(Te(B(t,(Oe(),np)))),L=A1*p,r=new q(t.b);r.al+L&&(N=v.g+A.g,A.a=(A.g*A.a+v.g*v.a)/N,A.g=N,v.f=A,n=!0)),o=a,v=A;return n}function PYe(e,t,n,i,r,o,u){var a,l,d,p,v,A;for(A=new zy,d=t.Kc();d.Ob();)for(a=c(d.Pb(),839),v=new q(a.wf());v.a0?a.a?(d=a.b.rf().b,r>d&&(e.v||a.c.d.c.length==1?(u=(r-d)/2,a.d.d=u,a.d.a=u):(n=c(Ne(a.c.d,0),181).rf().b,i=(n-d)/2,a.d.d=g.Math.max(0,i),a.d.a=r-i-d))):a.d.a=e.t+r:M5(e.u)&&(o=kce(a.b),o.d<0&&(a.d.d=-o.d),o.d+o.a>a.b.rf().b&&(a.d.a=o.d+o.a-a.b.rf().b))}function jBt(e,t){var n;switch(oI(e)){case 6:return fr(t);case 7:return kp(t);case 8:return Dp(t);case 3:return Array.isArray(t)&&(n=oI(t),!(n>=14&&n<=16));case 11:return t!=null&&typeof t===EH;case 12:return t!=null&&(typeof t===aT||typeof t==EH);case 0:return VK(t,e.__elementTypeId$);case 2:return jB(t)&&t.im!==ct;case 1:return jB(t)&&t.im!==ct||VK(t,e.__elementTypeId$);default:return!0}}function MYe(e,t){var n,i,r,o;return i=g.Math.min(g.Math.abs(e.c-(t.c+t.b)),g.Math.abs(e.c+e.b-t.c)),o=g.Math.min(g.Math.abs(e.d-(t.d+t.a)),g.Math.abs(e.d+e.a-t.d)),n=g.Math.abs(e.c+e.b/2-(t.c+t.b/2)),n>e.b/2+t.b/2||(r=g.Math.abs(e.d+e.a/2-(t.d+t.a/2)),r>e.a/2+t.a/2)?1:n==0&&r==0?0:n==0?o/r+1:r==0?i/n+1:g.Math.min(i/n,o/r)+1}function CYe(e,t){var n,i,r,o,u,a;return r=ere(e),a=ere(t),r==a?e.e==t.e&&e.a<54&&t.a<54?e.ft.f?1:0:(i=e.e-t.e,n=(e.d>0?e.d:g.Math.floor((e.a-1)*NJe)+1)-(t.d>0?t.d:g.Math.floor((t.a-1)*NJe)+1),n>i+1?r:n0&&(u=Fm(u,WYe(i))),rze(o,u))):r0&&e.d!=($5(),LG)&&(a+=u*(i.d.a+e.a[t.b][i.b]*(t.d.a-i.d.a)/n)),n>0&&e.d!=($5(),RG)&&(l+=u*(i.d.b+e.a[t.b][i.b]*(t.d.b-i.d.b)/n)));switch(e.d.g){case 1:return new $e(a/o,t.d.b);case 2:return new $e(t.d.a,l/o);default:return new $e(a/o,l/o)}}function IYe(e,t){iE();var n,i,r,o,u;if(u=c(B(e.i,(Oe(),ji)),98),o=e.j.g-t.j.g,o!=0||!(u==(wr(),Mb)||u==ch||u==Ic))return 0;if(u==(wr(),Mb)&&(n=c(B(e,Td),19),i=c(B(t,Td),19),n&&i&&(r=n.a-i.a,r!=0)))return r;switch(e.j.g){case 1:return zi(e.n.a,t.n.a);case 2:return zi(e.n.b,t.n.b);case 3:return zi(t.n.a,e.n.a);case 4:return zi(t.n.b,e.n.b);default:throw V(new Ao(Pae))}}function TYe(e){var t,n,i,r,o,u;for(n=(!e.a&&(e.a=new qi(ma,e,5)),e.a).i+2,u=new Dc(n),Ee(u,new $e(e.j,e.k)),Di(new ht(null,(!e.a&&(e.a=new qi(ma,e,5)),new bt(e.a,16))),new Eje(u)),Ee(u,new $e(e.b,e.c)),t=1;t0&&(vI(l,!1,(eo(),ga)),vI(l,!0,Va)),Zc(t.g,new vOe(e,n)),Kn(e.g,t,n)}function AYe(){AYe=Z;var e;for(bhe=U(G(Qt,1),_n,25,15,[-1,-1,30,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5]),hG=oe(Qt,_n,25,37,15,1),ent=U(G(Qt,1),_n,25,15,[-1,-1,63,40,32,28,25,23,21,20,19,19,18,18,17,17,16,16,16,15,15,15,15,14,14,14,14,14,14,13,13,13,13,13,13,13,13]),phe=oe(rg,WH,25,37,14,1),e=2;e<=36;e++)hG[e]=xi(g.Math.pow(e,bhe[e])),phe[e]=BI(dD,hG[e])}function OBt(e){var t;if((!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i!=1)throw V(new St(BZe+(!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i));return t=new ds,wI(c(ee((!e.b&&(e.b=new dt(Ut,e,4,7)),e.b),0),82))&&qr(t,hJe(e,wI(c(ee((!e.b&&(e.b=new dt(Ut,e,4,7)),e.b),0),82)),!1)),wI(c(ee((!e.c&&(e.c=new dt(Ut,e,5,8)),e.c),0),82))&&qr(t,hJe(e,wI(c(ee((!e.c&&(e.c=new dt(Ut,e,5,8)),e.c),0),82)),!0)),t}function OYe(e,t){var n,i,r,o,u;for(t.d?r=e.a.c==(gf(),ip)?ko(t.b):Vi(t.b):r=e.a.c==(gf(),jd)?ko(t.b):Vi(t.b),o=!1,i=new Kt(Ht(r.a.Kc(),new j));dn(i);)if(n=c(rn(i),17),u=Be(e.a.f[e.a.g[t.b.p].p]),!(!u&&!Kr(n)&&n.c.i.c==n.d.i.c)&&!(Be(e.a.n[e.a.g[t.b.p].p])||Be(e.a.n[e.a.g[t.b.p].p]))&&(o=!0,_h(e.b,e.a.g[K8t(n,t.b).p])))return t.c=!0,t.a=n,t;return t.c=o,t.a=null,t}function DBt(e,t,n,i,r){var o,u,a,l,d,p,v;for(st(),cr(e,new s6e),a=new _r(e,0),v=new Se,o=0;a.bo*2?(p=new TO(v),d=ws(u)/eu(u),l=mH(p,t,new Ry,n,i,r,d),Wn(ol(p.e),l),v.c=oe(xt,xe,1,0,5,1),o=0,v.c[v.c.length]=p,v.c[v.c.length]=u,o=ws(p)*eu(p)+ws(u)*eu(u)):(v.c[v.c.length]=u,o+=ws(u)*eu(u));return v}function cue(e,t,n){var i,r,o,u,a,l,d;if(i=n.gc(),i==0)return!1;if(e.ej())if(l=e.fj(),_oe(e,t,n),u=i==1?e.Zi(3,null,n.Kc().Pb(),t,l):e.Zi(5,null,n,t,l),e.bj()){for(a=i<100?null:new i1(i),o=t+i,r=t;r0){for(u=0;u>16==-15&&e.Cb.nh()&&R$(new A$(e.Cb,9,13,n,e.c,wd(Ns(c(e.Cb,59)),e))):Q(e.Cb,88)&&e.Db>>16==-23&&e.Cb.nh()&&(t=e.c,Q(t,88)||(t=(ot(),Ea)),Q(n,88)||(n=(ot(),Ea)),R$(new A$(e.Cb,9,10,n,t,wd(dc(c(e.Cb,26)),e)))))),e.c}function kBt(e,t){var n,i,r,o,u,a,l,d,p,v;for(Wt(t,"Hypernodes processing",1),r=new q(e.b);r.an);return r}function kYe(e,t){var n,i,r;i=$s(e.d,1)!=0,!Be(Fe(B(t.j,(ye(),Y0))))&&!Be(Fe(B(t.j,kv)))||le(B(t.j,(Oe(),q1)))===le((kh(),H1))?t.c.Tf(t.e,i):i=Be(Fe(B(t.j,Y0))),ZI(e,t,i,!0),Be(Fe(B(t.j,kv)))&&pe(t.j,kv,(Pt(),!1)),Be(Fe(B(t.j,Y0)))&&(pe(t.j,Y0,(Pt(),!1)),pe(t.j,kv,!0)),n=Cq(e,t);do{if(hre(e),n==0)return 0;i=!i,r=n,ZI(e,t,i,!1),n=Cq(e,t)}while(r>n);return r}function RYe(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L;if(t==n)return!0;if(t=pse(e,t),n=pse(e,n),i=QK(t),i){if(p=QK(n),p!=i)return p?(l=i.Dj(),L=p.Dj(),l==L&&l!=null):!1;if(u=(!t.d&&(t.d=new qi(oo,t,1)),t.d),o=u.i,A=(!n.d&&(n.d=new qi(oo,n,1)),n.d),o==A.i){for(d=0;d0,a=u7(t,o),Nee(n?a.b:a.g,t),Gm(a).c.length==1&&Ri(i,a,i.c.b,i.c),r=new yr(o,t),w1(e.o,r),Jc(e.e.a,o))}function FYe(e,t){var n,i,r,o,u,a,l;return i=g.Math.abs(C8(e.b).a-C8(t.b).a),a=g.Math.abs(C8(e.b).b-C8(t.b).b),r=0,l=0,n=1,u=1,i>e.b.b/2+t.b.b/2&&(r=g.Math.min(g.Math.abs(e.b.c-(t.b.c+t.b.b)),g.Math.abs(e.b.c+e.b.b-t.b.c)),n=1-r/i),a>e.b.a/2+t.b.a/2&&(l=g.Math.min(g.Math.abs(e.b.d-(t.b.d+t.b.a)),g.Math.abs(e.b.d+e.b.a-t.b.d)),u=1-l/a),o=g.Math.min(n,u),(1-o)*g.Math.sqrt(i*i+a*a)}function BBt(e){var t,n,i,r;for(wH(e,e.e,e.f,(s0(),V1),!0,e.c,e.i),wH(e,e.e,e.f,V1,!1,e.c,e.i),wH(e,e.e,e.f,$v,!0,e.c,e.i),wH(e,e.e,e.f,$v,!1,e.c,e.i),KBt(e,e.c,e.e,e.f,e.i),i=new _r(e.i,0);i.b=65;n--)Zl[n]=n-65<<24>>24;for(i=122;i>=97;i--)Zl[i]=i-97+26<<24>>24;for(r=57;r>=48;r--)Zl[r]=r-48+52<<24>>24;for(Zl[43]=62,Zl[47]=63,o=0;o<=25;o++)Fd[o]=65+o&Ni;for(u=26,l=0;u<=51;++u,l++)Fd[u]=97+l&Ni;for(e=52,a=0;e<=61;++e,a++)Fd[e]=48+a&Ni;Fd[62]=43,Fd[63]=47}function $Bt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D;if(e.dc())return new Tr;for(d=0,v=0,r=e.Kc();r.Ob();)i=c(r.Pb(),37),o=i.f,d=g.Math.max(d,o.a),v+=o.a*o.b;for(d=g.Math.max(d,g.Math.sqrt(v)*ge(Te(B(c(e.Kc().Pb(),37),(Oe(),TR))))),A=0,D=0,l=0,n=t,a=e.Kc();a.Ob();)u=c(a.Pb(),37),p=u.f,A+p.a>d&&(A=0,D+=l+t,l=0),v6(u,A,D),n=g.Math.max(n,A+p.a),l=g.Math.max(l,p.b),A+=p.a+t;return new $e(n+t,D+l+t)}function KBt(e,t,n,i,r){var o,u,a,l,d,p,v;for(u=new q(t);u.ao)return Ie(),jt;break;case 4:case 3:if(l<0)return Ie(),_t;if(l+e.f>r)return Ie(),Yt}return u=(a+e.g/2)/o,n=(l+e.f/2)/r,u+n<=1&&u-n<=0?(Ie(),Mt):u+n>=1&&u-n>=0?(Ie(),jt):n<.5?(Ie(),_t):(Ie(),Yt)}function qBt(e,t,n,i,r){var o,u;if(o=xr(Xi(t[0],no),Xi(i[0],no)),e[0]=tn(o),o=h1(o,32),n>=r){for(u=1;u0&&(r.b[u++]=0,r.b[u++]=o.b[0]-1),t=1;t0&&(TN(l,l.d-r.d),r.c==(cl(),z1)&&Fmt(l,l.a-r.d),l.d<=0&&l.i>0&&Ri(t,l,t.c.b,t.c)));for(o=new q(e.f);o.a0&&(FA(a,a.i-r.d),r.c==(cl(),z1)&&Bmt(a,a.b-r.d),a.i<=0&&a.d>0&&Ri(n,a,n.c.b,n.c)))}function HBt(e,t,n){var i,r,o,u,a,l,d,p;for(Wt(n,"Processor compute fanout",1),Is(e.b),Is(e.a),a=null,o=Mn(t.b,0);!a&&o.b!=o.d.c;)d=c(Pn(o),86),Be(Fe(B(d,(ic(),Gw))))&&(a=d);for(l=new wi,Ri(l,a,l.c.b,l.c),YXe(e,l),p=Mn(t.b,0);p.b!=p.d.c;)d=c(Pn(p),86),u=ln(B(d,(ic(),BP))),r=mc(e.b,u)!=null?c(mc(e.b,u),19).a:0,pe(d,tx,Ce(r)),i=1+(mc(e.a,u)!=null?c(mc(e.a,u),19).a:0),pe(d,jut,Ce(i));qt(n)}function zBt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L;for(A=I7t(e,n),l=0;l0),i.a.Xb(i.c=--i.b),v>A+l&&nu(i);for(u=new q(D);u.a0),i.a.Xb(i.c=--i.b)}}function VBt(){Ln();var e,t,n,i,r,o;if(_Y)return _Y;for(e=new du(4),pw(e,j1(ZV,!0)),I6(e,j1("M",!0)),I6(e,j1("C",!0)),o=new du(4),i=0;i<11;i++)_c(o,i,i);return t=new du(4),pw(t,j1("M",!0)),_c(t,4448,4607),_c(t,65438,65439),r=new f5(2),eb(r,e),eb(r,dM),n=new f5(2),n.$l(v8(o,j1("L",!0))),n.$l(t),n=new Gp(3,n),n=new yne(r,n),_Y=n,_Y}function GBt(e){var t,n;if(t=ln(Ke(e,(kn(),GP))),!eqe(t,e)&&!Fg(e,j4)&&((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a).i!=0||Be(Fe(Ke(e,Oj)))))if(t==null||uw(t).length==0){if(!eqe(kt,e))throw n=wn(wn(new lu("Unable to load default layout algorithm "),kt)," for unconfigured node "),sD(e,n),V(new ym(n.a))}else throw n=wn(wn(new lu("Layout algorithm '"),t),"' not found for "),sD(e,n),V(new ym(n.a))}function eH(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;if(n=e.i,t=e.n,e.b==0)for(D=n.c+t.b,A=n.b-t.b-t.c,u=e.a,l=0,p=u.length;l0&&(v-=i[0]+e.c,i[0]+=e.c),i[2]>0&&(v-=i[2]+e.c),i[1]=g.Math.max(i[1],v),_8(e.a[1],n.c+t.b+i[0]-(i[1]-v)/2,i[1]);for(o=e.a,a=0,d=o.length;a0?(e.n.c.length-1)*e.i:0,i=new q(e.n);i.a1)for(i=Mn(r,0);i.b!=i.d.c;)for(n=c(Pn(i),231),o=0,l=new q(n.e);l.a0&&(t[0]+=e.c,v-=t[0]),t[2]>0&&(v-=t[2]+e.c),t[1]=g.Math.max(t[1],v),E8(e.a[1],i.d+n.d+t[0]-(t[1]-v)/2,t[1]);else for(L=i.d+n.d,D=i.a-n.d-n.a,u=e.a,l=0,p=u.length;l=0&&o!=n))throw V(new St(RT));for(r=0,l=0;l0||E0(r.b.d,e.b.d+e.b.a)==0&&i.b<0||E0(r.b.d+r.b.a,e.b.d)==0&&i.b>0){a=0;break}}else a=g.Math.min(a,qGe(e,r,i));a=g.Math.min(a,qYe(e,o,a,i))}return a}function rT(e,t){var n,i,r,o,u,a,l;if(e.b<2)throw V(new St("The vector chain must contain at least a source and a target point."));for(r=(Lt(e.b!=0),c(e.a.a.c,8)),H9(t,r.a,r.b),l=new Vy((!t.a&&(t.a=new qi(ma,t,5)),t.a)),u=Mn(e,1);u.age(Tl(u.g,u.d[0]).a)?(Lt(l.b>0),l.a.Xb(l.c=--l.b),Np(l,u),r=!0):a.e&&a.e.gc()>0&&(o=(!a.e&&(a.e=new Se),a.e).Mc(t),d=(!a.e&&(a.e=new Se),a.e).Mc(n),(o||d)&&((!a.e&&(a.e=new Se),a.e).Fc(u),++u.c));r||(i.c[i.c.length]=u)}function VYe(e){var t,n,i;if(Tm(c(B(e,(Oe(),ji)),98)))for(n=new q(e.j);n.a>>0,"0"+t.toString(16)),i="\\x"+fu(n,n.length-2,n.length)):e>=Vr?(n=(t=e>>>0,"0"+t.toString(16)),i="\\v"+fu(n,n.length-6,n.length)):i=""+String.fromCharCode(e&Ni)}return i}function nH(e,t){var n,i,r,o,u,a,l,d,p,v;if(u=e.e,l=t.e,l==0)return e;if(u==0)return t.e==0?t:new km(-t.e,t.d,t.a);if(o=e.d,a=t.d,o+a==2)return n=Xi(e.a[0],no),i=Xi(t.a[0],no),u<0&&(n=N_(n)),l<0&&(i=N_(i)),DI(P1(n,i));if(r=o!=a?o>a?1:-1:Hre(e.a,t.a,o),r==-1)v=-l,p=u==l?P$(t.a,a,e.a,o):C$(t.a,a,e.a,o);else if(v=u,u==l){if(r==0)return T1(),t4;p=P$(e.a,o,t.a,a)}else p=C$(e.a,o,t.a,a);return d=new km(v,p.length,p),R5(d),d}function due(e){var t,n,i,r,o,u;for(this.e=new Se,this.a=new Se,n=e.b-1;n<3;n++)b_(e,0,c(hl(e,0),8));if(e.b<4)throw V(new St("At (least dimension + 1) control points are necessary!"));for(this.b=3,this.d=!0,this.c=!1,Fxt(this,e.b+this.b-1),u=new Se,o=new q(this.e),t=0;t=t.o&&n.f<=t.f||t.a*.5<=n.f&&t.a*1.5>=n.f){if(u=c(Ne(t.n,t.n.c.length-1),211),u.e+u.d+n.g+r<=i&&(o=c(Ne(t.n,t.n.c.length-1),211),o.f-e.f+n.f<=e.b||e.a.c.length==1))return hoe(t,n),!0;if(t.s+n.g<=i&&(t.t+t.d+n.f+r<=e.b||e.a.c.length==1))return Ee(t.b,n),a=c(Ne(t.n,t.n.c.length-1),211),Ee(t.n,new W8(t.s,a.f+a.a+t.i,t.i)),Woe(c(Ne(t.n,t.n.c.length-1),211),n),BYe(t,n),!0}return!1}function UYe(e,t,n){var i,r,o,u;return e.ej()?(r=null,o=e.fj(),i=e.Zi(1,u=L$(e,t,n),n,t,o),e.bj()&&!(e.ni()&&u!=null?$n(u,n):le(u)===le(n))?(u!=null&&(r=e.dj(u,r)),r=e.cj(n,r),e.ij()&&(r=e.lj(u,n,r)),r?(r.Ei(i),r.Fi()):e.$i(i)):(e.ij()&&(r=e.lj(u,n,r)),r?(r.Ei(i),r.Fi()):e.$i(i)),u):(u=L$(e,t,n),e.bj()&&!(e.ni()&&u!=null?$n(u,n):le(u)===le(n))&&(r=null,u!=null&&(r=e.dj(u,null)),r=e.cj(n,r),r&&r.Fi()),u)}function _6(e,t){var n,i,r,o,u,a,l,d;t%=24,e.q.getHours()!=t&&(i=new g.Date(e.q.getTime()),i.setDate(i.getDate()+1),a=e.q.getTimezoneOffset()-i.getTimezoneOffset(),a>0&&(l=a/60|0,d=a%60,r=e.q.getDate(),n=e.q.getHours(),n+l>=24&&++r,o=new g.Date(e.q.getFullYear(),e.q.getMonth(),r,t+l,e.q.getMinutes()+d,e.q.getSeconds(),e.q.getMilliseconds()),e.q.setTime(o.getTime()))),u=e.q.getTime(),e.q.setTime(u+36e5),e.q.getHours()!=t&&e.q.setTime(u)}function t$t(e,t){var n,i,r,o,u;if(Wt(t,"Path-Like Graph Wrapping",1),e.b.c.length==0){qt(t);return}if(r=new yse(e),u=(r.i==null&&(r.i=dre(r,new kJ)),ge(r.i)*r.f),n=u/(r.i==null&&(r.i=dre(r,new kJ)),ge(r.i)),r.b>n){qt(t);return}switch(c(B(e,(Oe(),VU)),337).g){case 2:o=new xJ;break;case 0:o=new DJ;break;default:o=new LJ}if(i=o.Vf(e,r),!o.Wf())switch(c(B(e,qR),338).g){case 2:i=HGe(r,i);break;case 1:i=qVe(r,i)}Q$t(e,r,i),qt(t)}function n$t(e,t){var n,i,r,o;if($6t(e.d,e.e),e.c.a.$b(),ge(Te(B(t.j,(Oe(),OR))))!=0||ge(Te(B(t.j,OR)))!=0)for(n=$E,le(B(t.j,q1))!==le((kh(),H1))&&pe(t.j,(ye(),Y0),(Pt(),!0)),o=c(B(t.j,TP),19).a,r=0;rr&&++d,Ee(u,(pt(a+d,t.c.length),c(t.c[a+d],19))),l+=(pt(a+d,t.c.length),c(t.c[a+d],19)).a-i,++n;n1&&(l>ws(a)*eu(a)/2||u.b==0)&&(v=new TO(A),p=ws(a)/eu(a),d=mH(v,t,new Ry,n,i,r,p),Wn(ol(v.e),d),a=v,D.c[D.c.length]=v,l=0,A.c=oe(xt,xe,1,0,5,1)));return Hi(D,A),D}function o$t(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N;if(n.mh(t)&&(p=(D=t,D?c(i,49).xh(D):null),p))if(N=n.bh(t,e.a),L=t.t,L>1||L==-1)if(v=c(N,69),A=c(p,69),v.dc())A.$b();else for(u=!!Xr(t),o=0,a=e.a?v.Kc():v.Zh();a.Ob();)d=c(a.Pb(),56),r=c(h0(e,d),56),r?(u?(l=A.Xc(r),l==-1?A.Xh(o,r):o!=l&&A.ji(o,r)):A.Xh(o,r),++o):e.b&&!u&&(A.Xh(o,d),++o);else N==null?p.Wb(null):(r=h0(e,N),r==null?e.b&&!Xr(t)&&p.Wb(N):p.Wb(r))}function c$t(e,t){var n,i,r,o,u,a,l,d;for(n=new l_e,r=new Kt(Ht(ko(t).a.Kc(),new j));dn(r);)if(i=c(rn(r),17),!Kr(i)&&(a=i.c.i,Ace(a,Vk))){if(d=Vse(e,a,Vk,zk),d==-1)continue;n.b=g.Math.max(n.b,d),!n.a&&(n.a=new Se),Ee(n.a,a)}for(u=new Kt(Ht(Vi(t).a.Kc(),new j));dn(u);)if(o=c(rn(u),17),!Kr(o)&&(l=o.d.i,Ace(l,zk))){if(d=Vse(e,l,zk,Vk),d==-1)continue;n.d=g.Math.max(n.d,d),!n.c&&(n.c=new Se),Ee(n.c,l)}return n}function WYe(e){yE();var t,n,i,r;if(t=xi(e),e1e6)throw V(new JA("power of ten too big"));if(e<=Fn)return c2(YI($2[1],t),t);for(i=YI($2[1],Fn),r=i,n=ns(e-Fn),t=xi(e%Fn);uc(n,Fn)>0;)r=Fm(r,i),n=P1(n,Fn);for(r=Fm(r,YI($2[1],t)),r=c2(r,Fn),n=ns(e-Fn);uc(n,Fn)>0;)r=c2(r,Fn),n=P1(n,Fn);return r=c2(r,t),r}function s$t(e,t){var n,i,r,o,u,a,l,d,p;for(Wt(t,"Hierarchical port dummy size processing",1),l=new Se,p=new Se,i=ge(Te(B(e,(Oe(),Lv)))),n=i*2,o=new q(e.b);o.ad&&i>d)p=a,d=ge(t.p[a.p])+ge(t.d[a.p])+a.o.b+a.d.a;else{r=!1,n.n&&jg(n,"bk node placement breaks on "+a+" which should have been after "+p);break}if(!r)break}return n.n&&jg(n,t+" is feasible: "+r),r}function h$t(e,t,n,i){var r,o,u,a,l,d,p;for(a=-1,p=new q(e);p.a=z&&e.e[l.p]>L*e.b||ne>=n*z)&&(A.c[A.c.length]=a,a=new Se,qr(u,o),o.a.$b(),d-=p,D=g.Math.max(D,d*e.b+N),d+=ne,ie=ne,ne=0,p=0,N=0);return new yr(D,A)}function p$t(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;for(n=(d=new yh(e.c.b).a.vc().Kc(),new Cp(d));n.a.Ob();)t=(a=c(n.a.Pb(),42),c(a.dd(),149)),r=t.a,r==null&&(r=""),i=q3t(e.c,r),!i&&r.length==0&&(i=Hjt(e)),i&&!nw(i.c,t,!1)&&Cn(i.c,t);for(u=Mn(e.a,0);u.b!=u.d.c;)o=c(Pn(u),478),p=y$(e.c,o.a),D=y$(e.c,o.b),p&&D&&Cn(p.c,new yr(D,o.c));for(na(e.a),A=Mn(e.b,0);A.b!=A.d.c;)v=c(Pn(A),478),t=K3t(e.c,v.a),l=y$(e.c,v.b),t&&l&&Oyt(t,l,v.c);na(e.b)}function w$t(e,t,n){var i,r,o,u,a,l,d,p,v,A,D;o=new BM(e),u=new gVe,r=(GC(u.g),GC(u.j),Is(u.b),GC(u.d),GC(u.i),Is(u.k),Is(u.c),Is(u.e),D=JGe(u,o,null),$Ue(u,o),D),t&&(d=new BM(t),a=I$t(d),qce(r,U(G(Cpe,1),xe,527,0,[a]))),A=!1,v=!1,n&&(d=new BM(n),ik in d.a&&(A=Ch(d,ik).ge().a),aet in d.a&&(v=Ch(d,aet).ge().a)),p=D9e(sKe(new Z3,A),v),lkt(new I5e,r,p),ik in o.a&&ul(o,ik,null),(A||v)&&(l=new xy,zYe(p,l,A,v),ul(o,ik,l)),i=new Bje(u),rjt(new fee(r),i)}function m$t(e,t,n){var i,r,o,u,a,l,d,p,v;for(u=new vVe,d=U(G(Qt,1),_n,25,15,[0]),r=-1,o=0,i=0,l=0;l0){if(r<0&&p.a&&(r=l,o=d[0],i=0),r>=0){if(a=p.b,l==r&&(a-=i++,a==0))return 0;if(!JXe(t,d,p,a,u)){l=r-1,d[0]=o;continue}}else if(r=-1,!JXe(t,d,p,0,u))return 0}else{if(r=-1,Pr(p.c,0)==32){if(v=d[0],m$e(t,d),d[0]>v)continue}else if(Q5t(t,p.c,d[0])){d[0]+=p.c.length;continue}return 0}return Qqt(u,n)?d[0]:0}function S6(e){var t,n,i,r,o,u,a,l;if(!e.f){if(l=new HJ,a=new HJ,t=sM,u=t.a.zc(e,t),u==null){for(o=new $t(So(e));o.e!=o.i.gc();)r=c(Vt(o),26),Mi(l,S6(r));t.a.Bc(e)!=null,t.a.gc()==0}for(i=(!e.s&&(e.s=new Me(us,e,21,17)),new $t(e.s));i.e!=i.i.gc();)n=c(Vt(i),170),Q(n,99)&&on(a,c(n,18));ew(a),e.r=new lRe(e,(c(ee(he((g1(),wt).o),6),18),a.i),a.g),Mi(l,e.r),ew(l),e.f=new Im((c(ee(he(wt.o),5),18),l.i),l.g),Ls(e).b&=-3}return e.f}function v$t(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L;for(u=e.o,i=oe(Qt,_n,25,u,15,1),r=oe(Qt,_n,25,u,15,1),n=e.p,t=oe(Qt,_n,25,n,15,1),o=oe(Qt,_n,25,n,15,1),d=0;d=0&&!Ym(e,p,v);)--v;r[p]=v}for(D=0;D=0&&!Ym(e,a,L);)--a;o[L]=a}for(l=0;lt[A]&&Ai[l]&&Q7(e,l,A,!1,!0)}function gue(e){var t,n,i,r,o,u,a,l;n=Be(Fe(B(e,(dl(),Tit)))),o=e.a.c.d,a=e.a.d.d,n?(u=lf(hr(new $e(a.a,a.b),o),.5),l=lf(Wo(e.e),.5),t=hr(Wn(new $e(o.a,o.b),u),l),zee(e.d,t)):(r=ge(Te(B(e.a,Lit))),i=e.d,o.a>=a.a?o.b>=a.b?(i.a=a.a+(o.a-a.a)/2+r,i.b=a.b+(o.b-a.b)/2-r-e.e.b):(i.a=a.a+(o.a-a.a)/2+r,i.b=o.b+(a.b-o.b)/2+r):o.b>=a.b?(i.a=o.a+(a.a-o.a)/2+r,i.b=a.b+(o.b-a.b)/2+r):(i.a=o.a+(a.a-o.a)/2+r,i.b=o.b+(a.b-o.b)/2-r-e.e.b))}function Ec(e,t){var n,i,r,o,u,a,l;if(e==null)return null;if(o=e.length,o==0)return"";for(l=oe(Yu,vf,25,o,15,1),Aie(0,o,e.length),Aie(0,o,l.length),pxe(e,0,o,l,0),n=null,a=t,r=0,u=0;r0?fu(n.a,0,o-1):""):e.substr(0,o-1):n?n.a:e}function JYe(e){Gb(e,new Zg(qb(Bb(Kb($b(new _g,ob),"ELK DisCo"),"Layouter for arranging unconnected subgraphs. The subgraphs themselves are, by default, not laid out."),new K2e))),je(e,ob,pz,Le(pde)),je(e,ob,wz,Le(TG)),je(e,ob,D2,Le(dit)),je(e,ob,N0,Le(bde)),je(e,ob,Zue,Le(wit)),je(e,ob,eae,Le(pit)),je(e,ob,Que,Le(mit)),je(e,ob,tae,Le(bit)),je(e,ob,uae,Le(git)),je(e,ob,aae,Le(IG)),je(e,ob,lae,Le(gde)),je(e,ob,fae,Le(Nk))}function bue(e,t,n,i){var r,o,u,a,l,d,p,v,A;if(o=new Nh(e),Sg(o,(Dt(),Mc)),pe(o,(Oe(),ji),(wr(),Ic)),r=0,t){for(u=new gc,pe(u,(ye(),Hn),t),pe(o,Hn,t.i),Ji(u,(Ie(),Mt)),Bo(u,o),A=bf(t.e),d=A,p=0,v=d.length;p0)if(n-=i.length-t,n>=0){for(r.a+="0.";n>db.length;n-=db.length)jRe(r,db);fke(r,db,xi(n)),wn(r,i.substr(t))}else n=t-n,wn(r,fu(i,t,xi(n))),r.a+=".",wn(r,wC(i,xi(n)));else{for(wn(r,i.substr(t));n<-db.length;n+=db.length)jRe(r,db);fke(r,db,xi(-n))}return r.a}function pue(e,t,n,i){var r,o,u,a,l,d,p,v,A;return l=hr(new $e(n.a,n.b),e),d=l.a*t.b-l.b*t.a,p=t.a*i.b-t.b*i.a,v=(l.a*i.b-l.b*i.a)/p,A=d/p,p==0?d==0?(r=Wn(new $e(n.a,n.b),lf(new $e(i.a,i.b),.5)),o=m1(e,r),u=m1(Wn(new $e(e.a,e.b),t),r),a=g.Math.sqrt(i.a*i.a+i.b*i.b)*.5,o=0&&v<=1&&A>=0&&A<=1?Wn(new $e(e.a,e.b),lf(new $e(t.a,t.b),v)):null}function _$t(e,t,n){var i,r,o,u,a;if(i=c(B(e,(Oe(),OU)),21),n.a>t.a&&(i.Hc((sw(),Cj))?e.c.a+=(n.a-t.a)/2:i.Hc(Ij)&&(e.c.a+=n.a-t.a)),n.b>t.b&&(i.Hc((sw(),jj))?e.c.b+=(n.b-t.b)/2:i.Hc(Tj)&&(e.c.b+=n.b-t.b)),c(B(e,(ye(),Cc)),21).Hc((to(),Gu))&&(n.a>t.a||n.b>t.b))for(a=new q(e.a);a.at.a&&(i.Hc((sw(),Cj))?e.c.a+=(n.a-t.a)/2:i.Hc(Ij)&&(e.c.a+=n.a-t.a)),n.b>t.b&&(i.Hc((sw(),jj))?e.c.b+=(n.b-t.b)/2:i.Hc(Tj)&&(e.c.b+=n.b-t.b)),c(B(e,(ye(),Cc)),21).Hc((to(),Gu))&&(n.a>t.a||n.b>t.b))for(u=new q(e.a);u.at&&(r=0,o+=p.b+n,v.c[v.c.length]=p,p=new Zne(o,n),i=new aK(0,p.f,p,n),OO(p,i),r=0),i.b.c.length==0||l.f>=i.o&&l.f<=i.f||i.a*.5<=l.f&&i.a*1.5>=l.f?hoe(i,l):(u=new aK(i.s+i.r+n,p.f,p,n),OO(p,u),hoe(u,l)),r=l.i+l.g;return v.c[v.c.length]=p,v}function sv(e){var t,n,i,r,o,u,a,l;if(!e.a){if(e.o=null,l=new oAe(e),t=new T6e,n=sM,a=n.a.zc(e,n),a==null){for(u=new $t(So(e));u.e!=u.i.gc();)o=c(Vt(u),26),Mi(l,sv(o));n.a.Bc(e)!=null,n.a.gc()==0}for(r=(!e.s&&(e.s=new Me(us,e,21,17)),new $t(e.s));r.e!=r.i.gc();)i=c(Vt(r),170),Q(i,322)&&on(t,c(i,34));ew(t),e.k=new aRe(e,(c(ee(he((g1(),wt).o),7),18),t.i),t.g),Mi(l,e.k),ew(l),e.a=new Im((c(ee(he(wt.o),4),18),l.i),l.g),Ls(e).b&=-2}return e.a}function M$t(e,t,n,i,r,o,u){var a,l,d,p,v,A;return v=!1,l=oWe(n.q,t.f+t.b-n.q.f),A=r-(n.q.e+l-u),A=(pt(o,e.c.length),c(e.c[o],200)).e,p=(a=P6(i,A,!1),a.a),p>t.b&&!d)?!1:((d||p<=t.b)&&(d&&p>t.b?(n.d=p,JC(n,aGe(n,p))):(TVe(n.q,l),n.c=!0),JC(i,r-(n.s+n.r)),kI(i,n.q.e+n.q.d,t.f),OO(t,i),e.c.length>o&&(FI((pt(o,e.c.length),c(e.c[o],200)),i),(pt(o,e.c.length),c(e.c[o],200)).a.c.length==0&&ad(e,o)),v=!0),v)}function wue(e,t,n,i){var r,o,u,a,l,d,p;if(p=qc(e.e.Tg(),t),r=0,o=c(e.g,119),l=null,Wr(),c(t,66).Oj()){for(a=0;ae.o.a&&(p=(l-e.o.a)/2,a.b=g.Math.max(a.b,p),a.c=g.Math.max(a.c,p))}}function I$t(e){var t,n,i,r,o,u,a,l;for(o=new ANe,f2t(o,(d2(),olt)),i=(r=J$(e,oe(Re,we,2,0,6,1)),new CS(new Js(new tF(e,r).b)));i.b0?e.i:0)>t&&l>0&&(o=0,u+=l+e.i,r=g.Math.max(r,A),i+=l+e.i,l=0,A=0,n&&(++v,Ee(e.n,new W8(e.s,u,e.i))),a=0),A+=d.g+(a>0?e.i:0),l=g.Math.max(l,d.f),n&&Woe(c(Ne(e.n,v),211),d),o+=d.g+(a>0?e.i:0),++a;return r=g.Math.max(r,A),i+=l,n&&(e.r=r,e.d=i,Qoe(e.j)),new Ru(e.s,e.t,r,i)}function bc(e,t,n,i,r){Nf();var o,u,a,l,d,p,v,A,D;if(wne(e,"src"),wne(n,"dest"),A=Fs(e),l=Fs(n),$te((A.i&4)!=0,"srcType is not an array"),$te((l.i&4)!=0,"destType is not an array"),v=A.c,u=l.c,$te((v.i&1)!=0?v==u:(u.i&1)==0,"Array types don't match"),D=e.length,d=n.length,t<0||i<0||r<0||t+r>D||i+r>d)throw V(new DQ);if((v.i&1)==0&&A!=l)if(p=$g(e),o=$g(n),le(e)===le(n)&&ti;)vi(o,a,p[--t]);else for(a=i+r;i0&&ise(e,t,n,i,r,!0)}function cH(){cH=Z,nnt=U(G(Qt,1),_n,25,15,[Ar,1162261467,j6,1220703125,362797056,1977326743,j6,387420489,pD,214358881,429981696,815730721,1475789056,170859375,268435456,410338673,612220032,893871739,128e7,1801088541,113379904,148035889,191102976,244140625,308915776,387420489,481890304,594823321,729e6,887503681,j6,1291467969,1544804416,1838265625,60466176]),int=U(G(Qt,1),_n,25,15,[-1,-1,31,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5])}function T$t(e){var t,n,i,r,o,u,a,l;for(r=new q(e.b);r.a=e.b.length?(o[r++]=u.b[i++],o[r++]=u.b[i++]):i>=u.b.length?(o[r++]=e.b[n++],o[r++]=e.b[n++]):u.b[i]0?e.i:0)),++t;for($At(e.n,l),e.d=n,e.r=i,e.g=0,e.f=0,e.e=0,e.o=Ii,e.p=Ii,o=new q(e.b);o.a0&&(r=(!e.n&&(e.n=new Me(Lo,e,1,7)),c(ee(e.n,0),137)).a,!r||wn(wn((t.a+=' "',t),r),'"'))),n=(!e.b&&(e.b=new dt(Ut,e,4,7)),!(e.b.i<=1&&(!e.c&&(e.c=new dt(Ut,e,5,8)),e.c.i<=1))),n?t.a+=" [":t.a+=" ",wn(t,Iee(new XN,new $t(e.b))),n&&(t.a+="]"),t.a+=Sz,n&&(t.a+="["),wn(t,Iee(new XN,new $t(e.c))),n&&(t.a+="]"),t.a)}function sH(e,t){var n,i,r,o,u,a,l;if(e.a){if(a=e.a.ne(),l=null,a!=null?t.a+=""+a:(u=e.a.Dj(),u!=null&&(o=af(u,is(91)),o!=-1?(l=u.substr(o),t.a+=""+fu(u==null?rs:(yt(u),u),0,o)):t.a+=""+u)),e.d&&e.d.i!=0){for(r=!0,t.a+="<",i=new $t(e.d);i.e!=i.i.gc();)n=c(Vt(i),87),r?r=!1:t.a+=zr,sH(n,t);t.a+=">"}l!=null&&(t.a+=""+l)}else e.e?(a=e.e.zb,a!=null&&(t.a+=""+a)):(t.a+="?",e.b?(t.a+=" super ",sH(e.b,t)):e.f&&(t.a+=" extends ",sH(e.f,t)))}function O$t(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At;for(be=e.c,Pe=t.c,n=Do(be.a,e,0),i=Do(Pe.a,t,0),ne=c(S0(e,(Zr(),Os)).Kc().Pb(),11),et=c(S0(e,Fc).Kc().Pb(),11),ue=c(S0(t,Os).Kc().Pb(),11),At=c(S0(t,Fc).Kc().Pb(),11),Y=bf(ne.e),Ae=bf(et.g),ie=bf(ue.e),Ve=bf(At.g),cw(e,i,Pe),u=ie,p=0,L=u.length;pp?new xg((cl(),Vw),n,t,d-p):d>0&&p>0&&(new xg((cl(),Vw),t,n,0),new xg(Vw,n,t,0))),u)}function eXe(e,t){var n,i,r,o,u,a;for(u=new Gg(new Pg(e.f.b).a);u.b;){if(o=g0(u),r=c(o.cd(),594),t==1){if(r.gf()!=(eo(),Gh)&&r.gf()!=Vh)continue}else if(r.gf()!=(eo(),ga)&&r.gf()!=Va)continue;switch(i=c(c(o.dd(),46).b,81),a=c(c(o.dd(),46).a,189),n=a.c,r.gf().g){case 2:i.g.c=e.e.a,i.g.b=g.Math.max(1,i.g.b+n);break;case 1:i.g.c=i.g.c+n,i.g.b=g.Math.max(1,i.g.b-n);break;case 4:i.g.d=e.e.b,i.g.a=g.Math.max(1,i.g.a+n);break;case 3:i.g.d=i.g.d+n,i.g.a=g.Math.max(1,i.g.a-n)}}}function D$t(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(a=oe(Qt,_n,25,t.b.c.length,15,1),d=oe(HG,_e,267,t.b.c.length,0,1),l=oe(nh,Ed,10,t.b.c.length,0,1),v=e.a,A=0,D=v.length;A0&&l[i]&&(L=Am(e.b,l[i],r)),N=g.Math.max(N,r.c.c.b+L);for(o=new q(p.e);o.a1)throw V(new St(BT));l||(o=zf(t,i.Kc().Pb()),u.Fc(o))}return Tre(e,Wce(e,t,n),u)}function x$t(e,t){var n,i,r,o;for(mIt(t.b.j),Di(Yc(new ht(null,new bt(t.d,16)),new R4e),new x4e),o=new q(t.d);o.ae.o.b||(n=qo(e,jt),a=t.d+t.a+(n.gc()-1)*u,a>e.o.b)))}function lH(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;if(u=e.e,l=t.e,u==0)return t;if(l==0)return e;if(o=e.d,a=t.d,o+a==2)return n=Xi(e.a[0],no),i=Xi(t.a[0],no),u==l?(p=xr(n,i),L=tn(p),D=tn($p(p,32)),D==0?new ld(u,L):new km(u,2,U(G(Qt,1),_n,25,15,[L,D]))):DI(u<0?P1(i,n):P1(n,i));if(u==l)A=u,v=o>=a?C$(e.a,o,t.a,a):C$(t.a,a,e.a,o);else{if(r=o!=a?o>a?1:-1:Hre(e.a,t.a,o),r==0)return T1(),t4;r==1?(A=u,v=P$(e.a,o,t.a,a)):(A=l,v=P$(t.a,a,e.a,o))}return d=new km(A,v.length,v),R5(d),d}function fH(e,t,n,i,r,o,u){var a,l,d,p,v,A,D;return v=Be(Fe(B(t,(Oe(),fbe)))),A=null,o==(Zr(),Os)&&i.c.i==n?A=i.c:o==Fc&&i.d.i==n&&(A=i.d),d=u,!d||!v||A?(p=(Ie(),Vo),A?p=A.j:Tm(c(B(n,ji),98))&&(p=o==Os?Mt:jt),l=B$t(e,t,n,o,p,i),a=E$((Nr(n),i)),o==Os?(Rr(a,c(Ne(l.j,0),11)),br(a,r)):(Rr(a,r),br(a,c(Ne(l.j,0),11))),d=new vHe(i,a,l,c(B(l,(ye(),Hn)),11),o,!A)):(Ee(d.e,i),D=g.Math.max(ge(Te(B(d.d,Id))),ge(Te(B(i,Id)))),pe(d.d,Id,D)),it(e.a,i,new c8(d.d,t,o)),d}function oD(e,t){var n,i,r,o,u,a,l,d,p,v;if(p=null,e.d&&(p=c(mc(e.d,t),138)),!p){if(o=e.a.Mh(),v=o.i,!e.d||KS(e.d)!=v){for(l=new en,e.d&&G5(l,e.d),d=l.f.c+l.g.c,a=d;a0?(D=(L-1)*n,a&&(D+=i),p&&(D+=i),D=e.b[r+1])r+=2;else if(n0)for(i=new ps(c(Vn(e.a,o),21)),st(),cr(i,new _Q(t)),r=new _r(o.b,0);r.bbe)?(l=2,u=Fn):l==0?(l=1,u=Ae):(l=0,u=Ae)):(D=Ae>=u||u-Ae0?1:Wb(isNaN(i),isNaN(0)))>=0^(Na(Mf),(g.Math.abs(a)<=Mf||a==0||isNaN(a)&&isNaN(0)?0:a<0?-1:a>0?1:Wb(isNaN(a),isNaN(0)))>=0)?g.Math.max(a,i):(Na(Mf),(g.Math.abs(i)<=Mf||i==0||isNaN(i)&&isNaN(0)?0:i<0?-1:i>0?1:Wb(isNaN(i),isNaN(0)))>0?g.Math.sqrt(a*a+i*i):-g.Math.sqrt(a*a+i*i))}function eb(e,t){var n,i,r,o,u,a;if(t){if(!e.a&&(e.a=new WA),e.e==2){UA(e.a,t);return}if(t.e==1){for(r=0;r=Vr?co(n,foe(i)):S_(n,i&Ni),u=new ZB(10,null,0),CSt(e.a,u,a-1)):(n=(u.bm().length+o,new FS),co(n,u.bm())),t.e==0?(i=t._l(),i>=Vr?co(n,foe(i)):S_(n,i&Ni)):co(n,t.bm()),c(u,521).b=n.a}}function uXe(e){var t,n,i,r,o;return e.g!=null?e.g:e.a<32?(e.g=lHt(ns(e.f),xi(e.e)),e.g):(r=yH((!e.c&&(e.c=SI(e.f)),e.c),0),e.e==0?r:(t=(!e.c&&(e.c=SI(e.f)),e.c).e<0?2:1,n=r.length,i=-e.e+n-t,o=new n1,o.a+=""+r,e.e>0&&i>=-6?i>=0?qC(o,n-xi(e.e),"."):(o.a=fu(o.a,0,t-1)+"0."+wC(o.a,t-1),qC(o,t+1,pf(db,0,-xi(i)-1))):(n-t>=1&&(qC(o,t,"."),++n),qC(o,n,"E"),i>0&&qC(o,++n,"+"),qC(o,++n,""+P5(ns(i)))),e.g=o.a,e.g))}function Q$t(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(!n.dc()){for(a=0,A=0,i=n.Kc(),L=c(i.Pb(),19).a;a1&&(l=d.mg(l,e.a,a));return l.c.length==1?c(Ne(l,l.c.length-1),220):l.c.length==2?K$t((pt(0,l.c.length),c(l.c[0],220)),(pt(1,l.c.length),c(l.c[1],220)),u,o):null}function aXe(e){var t,n,i,r,o,u;for(Zc(e.a,new L2e),n=new q(e.a);n.a=g.Math.abs(i.b)?(i.b=0,o.d+o.a>u.d&&o.du.c&&o.c0){if(t=new iee(e.i,e.g),n=e.i,o=n<100?null:new i1(n),e.ij())for(i=0;i0){for(a=e.g,d=e.i,B5(e),o=d<100?null:new i1(d),i=0;i>13|(e.m&15)<<9,r=e.m>>4&8191,o=e.m>>17|(e.h&255)<<5,u=(e.h&1048320)>>8,a=t.l&8191,l=t.l>>13|(t.m&15)<<9,d=t.m>>4&8191,p=t.m>>17|(t.h&255)<<5,v=(t.h&1048320)>>8,Ve=n*a,et=i*a,At=r*a,Ot=o*a,Jt=u*a,l!=0&&(et+=n*l,At+=i*l,Ot+=r*l,Jt+=o*l),d!=0&&(At+=n*d,Ot+=i*d,Jt+=r*d),p!=0&&(Ot+=n*p,Jt+=i*p),v!=0&&(Jt+=n*v),D=Ve&qs,L=(et&511)<<13,A=D+L,z=Ve>>22,Y=et>>9,ie=(At&262143)<<4,ne=(Ot&31)<<17,N=z+Y+ie+ne,be=At>>18,Pe=Ot>>5,Ae=(Jt&4095)<<8,ue=be+Pe+Ae,N+=A>>22,A&=qs,ue+=N>>22,N&=qs,ue&=Kh,Bc(A,N,ue)}function lXe(e){var t,n,i,r,o,u,a;if(a=c(Ne(e.j,0),11),a.g.c.length!=0&&a.e.c.length!=0)throw V(new Ao("Interactive layout does not support NORTH/SOUTH ports with incoming _and_ outgoing edges."));if(a.g.c.length!=0){for(o=Ii,n=new q(a.g);n.a4)if(e.wj(t)){if(e.rk()){if(r=c(t,49),i=r.Ug(),l=i==e.e&&(e.Dk()?r.Og(r.Vg(),e.zk())==e.Ak():-1-r.Vg()==e.aj()),e.Ek()&&!l&&!i&&r.Zg()){for(o=0;o0&&(d=e.n.a/o);break;case 2:case 4:r=e.i.o.b,r>0&&(d=e.n.b/r)}pe(e,(ye(),J0),d)}if(l=e.o,u=e.a,i)u.a=i.a,u.b=i.b,e.d=!0;else if(t!=Xl&&t!=Y1&&a!=Vo)switch(a.g){case 1:u.a=l.a/2;break;case 2:u.a=l.a,u.b=l.b/2;break;case 3:u.a=l.a/2,u.b=l.b;break;case 4:u.b=l.b/2}else u.a=l.a/2,u.b=l.b/2}function C6(e){var t,n,i,r,o,u,a,l,d,p;if(e.ej())if(p=e.Vi(),l=e.fj(),p>0)if(t=new bre(e.Gi()),n=p,o=n<100?null:new i1(n),SC(e,n,t.g),r=n==1?e.Zi(4,ee(t,0),null,0,l):e.Zi(6,t,null,-1,l),e.bj()){for(i=new $t(t);i.e!=i.i.gc();)o=e.dj(Vt(i),o);o?(o.Ei(r),o.Fi()):e.$i(r)}else o?(o.Ei(r),o.Fi()):e.$i(r);else SC(e,e.Vi(),e.Wi()),e.$i(e.Zi(6,(st(),Qr),null,-1,l));else if(e.bj())if(p=e.Vi(),p>0){for(a=e.Wi(),d=p,SC(e,p,a),o=d<100?null:new i1(d),i=0;ie.d[u.p]&&(n+=die(e.b,o)*c(l.b,19).a,w1(e.a,Ce(o)));for(;!xS(e.a);)zie(e.b,c(Qy(e.a),19).a)}return n}function lKt(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;for(v=new go(c(Ke(e,(N7(),Rpe)),8)),v.a=g.Math.max(v.a-n.b-n.c,0),v.b=g.Math.max(v.b-n.d-n.a,0),r=Te(Ke(e,Ope)),(r==null||(yt(r),r<=0))&&(r=1.3),a=new Se,L=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));L.e!=L.i.gc();)D=c(Vt(L),33),u=new KDe(D),a.c[a.c.length]=u;switch(A=c(Ke(e,KW),311),A.g){case 3:z=DBt(a,t,v.a,v.b,(d=i,yt(r),d));break;case 1:z=r$t(a,t,v.a,v.b,(p=i,yt(r),p));break;default:z=dKt(a,t,v.a,v.b,(l=i,yt(r),l))}o=new TO(z),N=mH(o,t,n,v.a,v.b,i,(yt(r),r)),k0(e,N.a,N.b,!1,!0)}function fKt(e,t){var n,i,r,o;n=t.b,o=new ps(n.j),r=0,i=n.j,i.c=oe(xt,xe,1,0,5,1),n0(c(qg(e.b,(Ie(),_t),(m0(),U0)),15),n),r=xI(o,r,new f4e,i),n0(c(qg(e.b,_t,$1),15),n),r=xI(o,r,new l4e,i),n0(c(qg(e.b,_t,G0),15),n),n0(c(qg(e.b,jt,U0),15),n),n0(c(qg(e.b,jt,$1),15),n),r=xI(o,r,new h4e,i),n0(c(qg(e.b,jt,G0),15),n),n0(c(qg(e.b,Yt,U0),15),n),r=xI(o,r,new d4e,i),n0(c(qg(e.b,Yt,$1),15),n),r=xI(o,r,new g4e,i),n0(c(qg(e.b,Yt,G0),15),n),n0(c(qg(e.b,Mt,U0),15),n),r=xI(o,r,new M4e,i),n0(c(qg(e.b,Mt,$1),15),n),n0(c(qg(e.b,Mt,G0),15),n)}function hKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(Wt(t,"Layer size calculation",1),p=Ii,d=$i,r=!1,a=new q(e.b);a.a.5?Y-=u*2*(L-.5):L<.5&&(Y+=o*2*(.5-L)),r=a.d.b,Yz.a-N-p&&(Y=z.a-N-p),a.n.a=t+Y}}function dKt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z;for(a=oe(gr,lo,25,e.c.length,15,1),A=new I8(new c6e),nce(A,e),d=0,N=new Se;A.b.c.length!=0;)if(u=c(A.b.c.length==0?null:Ne(A.b,0),157),d>1&&ws(u)*eu(u)/2>a[0]){for(o=0;oa[o];)++o;L=new Hf(N,0,o+1),v=new TO(L),p=ws(u)/eu(u),l=mH(v,t,new Ry,n,i,r,p),Wn(ol(v.e),l),R_(wE(A,v)),D=new Hf(N,o+1,N.c.length),nce(A,D),N.c=oe(xt,xe,1,0,5,1),d=0,$Re(a,a.length,0)}else z=A.b.c.length==0?null:Ne(A.b,0),z!=null&&Y$(A,0),d>0&&(a[d]=a[d-1]),a[d]+=ws(u)*eu(u),++d,N.c[N.c.length]=u;return N}function gKt(e){var t,n,i,r,o;if(i=c(B(e,(Oe(),zc)),163),i==(Ku(),K1)){for(n=new Kt(Ht(ko(e).a.Kc(),new j));dn(n);)if(t=c(rn(n),17),!JFe(t))throw V(new ym(Cz+LI(e)+"' has its layer constraint set to FIRST_SEPARATE, but has at least one incoming edge. FIRST_SEPARATE nodes must not have incoming edges."))}else if(i==xw){for(o=new Kt(Ht(Vi(e).a.Kc(),new j));dn(o);)if(r=c(rn(o),17),!JFe(r))throw V(new ym(Cz+LI(e)+"' has its layer constraint set to LAST_SEPARATE, but has at least one outgoing edge. LAST_SEPARATE nodes must not have outgoing edges."))}}function bKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;for(Wt(t,"Label dummy removal",1),i=ge(Te(B(e,(Oe(),Z2)))),r=ge(Te(B(e,Hw))),d=c(B(e,Pu),103),l=new q(e.b);l.a0&&wGe(e,a,v);for(r=new q(v);r.a>19!=0&&(t=Z_(t),l=!l),u=gLt(t),o=!1,r=!1,i=!1,e.h==bT&&e.m==0&&e.l==0)if(r=!0,o=!0,u==-1)e=D7e((F_(),che)),i=!0,l=!l;else return a=vse(e,u),l&&oK(a),n&&(L1=Bc(0,0,0)),a;else e.h>>19!=0&&(o=!0,e=Z_(e),i=!0,l=!l);return u!=-1?tjt(e,u,l,o,n):lce(e,t)<0?(n&&(o?L1=Z_(e):L1=Bc(e.l,e.m,e.h)),Bc(0,0,0)):oBt(i?e:Bc(e.l,e.m,e.h),t,l,o,r,n)}function cD(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;if(e.e&&e.c.ct.f||t.g>e.f)){for(n=0,i=0,u=e.w.a.ec().Kc();u.Ob();)r=c(u.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,t.g,t.f)&&++n;for(a=e.r.a.ec().Kc();a.Ob();)r=c(a.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,t.g,t.f)&&--n;for(l=t.w.a.ec().Kc();l.Ob();)r=c(l.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,e.g,e.f)&&++i;for(o=t.r.a.ec().Kc();o.Ob();)r=c(o.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,e.g,e.f)&&--i;n=0)return r=PAt(e,t.substr(1,u-1)),p=t.substr(u+1,l-(u+1)),vHt(e,p,r)}else{if(n=-1,fhe==null&&(fhe=new RegExp("\\d")),fhe.test(String.fromCharCode(a))&&(n=wte(t,is(46),l-1),n>=0)){i=c(S$(e,H$e(e,t.substr(1,n-1)),!1),58),d=0;try{d=vu(t.substr(n+1),Ar,Fn)}catch(A){throw A=gi(A),Q(A,127)?(o=A,V(new mO(o))):V(A)}if(d=0)return n;switch(o0(wo(e,n))){case 2:{if(rt("",gd(e,n.Hj()).ne())){if(l=LC(wo(e,n)),a=C_(wo(e,n)),p=Cse(e,t,l,a),p)return p;for(r=Zse(e,t),u=0,v=r.gc();u1)throw V(new St(BT));for(p=qc(e.e.Tg(),t),i=c(e.g,119),u=0;u1,d=new Rl(A.b);Fo(d.a)||Fo(d.b);)l=c(Fo(d.a)?K(d.a):K(d.b),17),v=l.c==A?l.d:l.c,g.Math.abs(Ko(U(G(ir,1),we,8,0,[v.i.n,v.n,v.a])).b-u.b)>1&&mNt(e,l,u,o,A)}}function IKt(e){var t,n,i,r,o,u;if(r=new _r(e.e,0),i=new _r(e.a,0),e.d)for(n=0;ncV;){for(o=t,u=0;g.Math.abs(t-o)0),r.a.Xb(r.c=--r.b),zBt(e,e.b-u,o,i,r),Lt(r.b0),i.a.Xb(i.c=--i.b)}if(!e.d)for(n=0;n0?(e.f[p.p]=D/(p.e.c.length+p.g.c.length),e.c=g.Math.min(e.c,e.f[p.p]),e.b=g.Math.max(e.b,e.f[p.p])):a&&(e.f[p.p]=D)}}function jKt(e){e.b=null,e.bb=null,e.fb=null,e.qb=null,e.a=null,e.c=null,e.d=null,e.e=null,e.f=null,e.n=null,e.M=null,e.L=null,e.Q=null,e.R=null,e.K=null,e.db=null,e.eb=null,e.g=null,e.i=null,e.j=null,e.k=null,e.gb=null,e.o=null,e.p=null,e.q=null,e.r=null,e.$=null,e.ib=null,e.S=null,e.T=null,e.t=null,e.s=null,e.u=null,e.v=null,e.w=null,e.B=null,e.A=null,e.C=null,e.D=null,e.F=null,e.G=null,e.H=null,e.I=null,e.J=null,e.P=null,e.Z=null,e.U=null,e.V=null,e.W=null,e.X=null,e.Y=null,e._=null,e.ab=null,e.cb=null,e.hb=null,e.nb=null,e.lb=null,e.mb=null,e.ob=null,e.pb=null,e.jb=null,e.kb=null,e.N=!1,e.O=!1}function AKt(e,t,n){var i,r,o,u;for(Wt(n,"Graph transformation ("+e.a+")",1),u=a0(t.a),o=new q(t.b);o.a0&&(e.a=l+(D-1)*o,t.c.b+=e.a,t.f.b+=e.a)),L.a.gc()!=0&&(A=new DB(1,o),D=Mue(A,t,L,N,t.f.b+l-t.c.b),D>0&&(t.f.b+=l+(D-1)*o))}function jE(e,t){var n,i,r,o;o=e.F,t==null?(e.F=null,nE(e,null)):(e.F=(yt(t),t),i=af(t,is(60)),i!=-1?(r=t.substr(0,i),af(t,is(46))==-1&&!rt(r,M2)&&!rt(r,Q6)&&!rt(r,ck)&&!rt(r,Z6)&&!rt(r,eP)&&!rt(r,tP)&&!rt(r,nP)&&!rt(r,iP)&&(r=ett),n=Y9(t,is(62)),n!=-1&&(r+=""+t.substr(n+1)),nE(e,r)):(r=t,af(t,is(46))==-1&&(i=af(t,is(91)),i!=-1&&(r=t.substr(0,i)),!rt(r,M2)&&!rt(r,Q6)&&!rt(r,ck)&&!rt(r,Z6)&&!rt(r,eP)&&!rt(r,tP)&&!rt(r,nP)&&!rt(r,iP)?(r=ett,i!=-1&&(r+=""+t.substr(i))):r=t),nE(e,r),r==t&&(e.F=e.D))),(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,5,o,t))}function DKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;if(N=t.b.c.length,!(N<3)){for(D=oe(Qt,_n,25,N,15,1),v=0,p=new q(t.b);p.au)&&Yi(e.b,c(z.b,17));++a}o=u}}}function Eue(e,t){var n;if(t==null||rt(t,rs)||t.length==0&&e.k!=(yd(),t3))return null;switch(e.k.g){case 1:return b7(t,GE)?(Pt(),ZE):b7(t,_V)?(Pt(),hb):null;case 2:try{return Ce(vu(t,Ar,Fn))}catch(i){if(i=gi(i),Q(i,127))return null;throw V(i)}case 4:try{return aw(t)}catch(i){if(i=gi(i),Q(i,127))return null;throw V(i)}case 3:return t;case 5:return Xqe(e),nUe(e,t);case 6:return Xqe(e),qxt(e,e.a,t);case 7:try{return n=ext(e),n.Jf(t),n}catch(i){if(i=gi(i),Q(i,32))return null;throw V(i)}default:throw V(new Ao("Invalid type set for this layout option."))}}function kKt(e){K5();var t,n,i,r,o,u,a;for(a=new IAe,n=new q(e);n.a=a.b.c)&&(a.b=t),(!a.c||t.c<=a.c.c)&&(a.d=a.c,a.c=t),(!a.e||t.d>=a.e.d)&&(a.e=t),(!a.f||t.d<=a.f.d)&&(a.f=t);return i=new v7((Q_(),V0)),zC(e,crt,new Js(U(G(QT,1),xe,369,0,[i]))),u=new v7(Ow),zC(e,ort,new Js(U(G(QT,1),xe,369,0,[u]))),r=new v7(Aw),zC(e,rrt,new Js(U(G(QT,1),xe,369,0,[r]))),o=new v7(Pv),zC(e,irt,new Js(U(G(QT,1),xe,369,0,[o]))),Nq(i.c,V0),Nq(r.c,Aw),Nq(o.c,Pv),Nq(u.c,Ow),a.a.c=oe(xt,xe,1,0,5,1),Hi(a.a,i.c),Hi(a.a,Kg(r.c)),Hi(a.a,o.c),Hi(a.a,Kg(u.c)),a}function Sue(e){var t;switch(e.d){case 1:{if(e.hj())return e.o!=-2;break}case 2:{if(e.hj())return e.o==-2;break}case 3:case 5:case 4:case 6:case 7:return e.o>-2;default:return!1}switch(t=e.gj(),e.p){case 0:return t!=null&&Be(Fe(t))!=s5(e.k,0);case 1:return t!=null&&c(t,217).a!=tn(e.k)<<24>>24;case 2:return t!=null&&c(t,172).a!=(tn(e.k)&Ni);case 6:return t!=null&&s5(c(t,162).a,e.k);case 5:return t!=null&&c(t,19).a!=tn(e.k);case 7:return t!=null&&c(t,184).a!=tn(e.k)<<16>>16;case 3:return t!=null&&ge(Te(t))!=e.j;case 4:return t!=null&&c(t,155).a!=e.j;default:return t==null?e.n!=null:!$n(t,e.n)}}function sT(e,t,n){var i,r,o,u;return e.Fk()&&e.Ek()&&(u=PB(e,c(n,56)),le(u)!==le(n))?(e.Oi(t),e.Ui(t,zBe(e,t,u)),e.rk()&&(o=(r=c(n,49),e.Dk()?e.Bk()?r.ih(e.b,Xr(c(at(Xc(e.b),e.aj()),18)).n,c(at(Xc(e.b),e.aj()).Yj(),26).Bj(),null):r.ih(e.b,di(r.Tg(),Xr(c(at(Xc(e.b),e.aj()),18))),null,null):r.ih(e.b,-1-e.aj(),null,null)),!c(u,49).eh()&&(o=(i=c(u,49),e.Dk()?e.Bk()?i.gh(e.b,Xr(c(at(Xc(e.b),e.aj()),18)).n,c(at(Xc(e.b),e.aj()).Yj(),26).Bj(),o):i.gh(e.b,di(i.Tg(),Xr(c(at(Xc(e.b),e.aj()),18))),null,o):i.gh(e.b,-1-e.aj(),null,o))),o&&o.Fi()),Qs(e.b)&&e.$i(e.Zi(9,n,u,t,!1)),u):n}function gXe(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;for(p=ge(Te(B(e,(Oe(),tp)))),i=ge(Te(B(e,Ebe))),A=new yN,pe(A,tp,p+i),d=t,Y=d.d,N=d.c.i,ie=d.d.i,z=uee(N.c),ne=uee(ie.c),r=new Se,v=z;v<=ne;v++)a=new Nh(e),Sg(a,(Dt(),ur)),pe(a,(ye(),Hn),d),pe(a,ji,(wr(),Ic)),pe(a,KR,A),D=c(Ne(e.b,v),29),v==z?cw(a,D.a.c.length-n,D):po(a,D),ue=ge(Te(B(d,Id))),ue<0&&(ue=0,pe(d,Id,ue)),a.o.b=ue,L=g.Math.floor(ue/2),u=new gc,Ji(u,(Ie(),Mt)),Bo(u,a),u.n.b=L,l=new gc,Ji(l,jt),Bo(l,a),l.n.b=L,br(d,u),o=new c0,Mo(o,d),pe(o,yo,null),Rr(o,l),br(o,Y),LOt(a,d,o),r.c[r.c.length]=o,d=o;return r}function gH(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;for(l=c(vd(e,(Ie(),Mt)).Kc().Pb(),11).e,D=c(vd(e,jt).Kc().Pb(),11).g,a=l.c.length,ne=Ol(c(Ne(e.j,0),11));a-- >0;){for(N=(pt(0,l.c.length),c(l.c[0],17)),r=(pt(0,D.c.length),c(D.c[0],17)),ie=r.d.e,o=Do(ie,r,0),$Pt(N,r.d,o),Rr(r,null),br(r,null),L=N.a,t&&Cn(L,new go(ne)),i=Mn(r.a,0);i.b!=i.d.c;)n=c(Pn(i),8),Cn(L,new go(n));for(Y=N.b,A=new q(r.b);A.a0&&(u=g.Math.max(u,qKe(e.C.b+i.d.b,r))),p=i,v=r,A=o;e.C&&e.C.c>0&&(D=A+e.C.c,d&&(D+=p.d.c),u=g.Math.max(u,(Il(),Na(ql),g.Math.abs(v-1)<=ql||v==1||isNaN(v)&&isNaN(1)?0:D/(1-v)))),n.n.b=0,n.a.a=u}function pXe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D;if(n=c(so(e.b,t),124),l=c(c(Vn(e.r,t),21),84),l.dc()){n.n.d=0,n.n.a=0;return}for(d=e.u.Hc((js(),Wh)),u=0,e.A.Hc((ou(),Cb))&&YWe(e,t),a=l.Kc(),p=null,A=0,v=0;a.Ob();)i=c(a.Pb(),111),o=ge(Te(i.b.We((X9(),Rk)))),r=i.b.rf().b,p?(D=v+p.d.a+e.w+i.d.d,u=g.Math.max(u,(Il(),Na(ql),g.Math.abs(A-o)<=ql||A==o||isNaN(A)&&isNaN(o)?0:D/(o-A)))):e.C&&e.C.d>0&&(u=g.Math.max(u,qKe(e.C.d+i.d.d,o))),p=i,A=o,v=r;e.C&&e.C.a>0&&(D=v+e.C.a,d&&(D+=p.d.a),u=g.Math.max(u,(Il(),Na(ql),g.Math.abs(A-1)<=ql||A==1||isNaN(A)&&isNaN(1)?0:D/(1-A)))),n.n.d=0,n.a.b=u}function wXe(e,t,n){var i,r,o,u,a,l;for(this.g=e,a=t.d.length,l=n.d.length,this.d=oe(nh,Ed,10,a+l,0,1),u=0;u0?K$(this,this.f/this.a):Tl(t.g,t.d[0]).a!=null&&Tl(n.g,n.d[0]).a!=null?K$(this,(ge(Tl(t.g,t.d[0]).a)+ge(Tl(n.g,n.d[0]).a))/2):Tl(t.g,t.d[0]).a!=null?K$(this,Tl(t.g,t.d[0]).a):Tl(n.g,n.d[0]).a!=null&&K$(this,Tl(n.g,n.d[0]).a)}function RKt(e,t){var n,i,r,o,u,a,l,d,p,v;for(e.a=new Mxe(aTt(WP)),i=new q(t.a);i.a=1&&(z-u>0&&v>=0?(l.n.a+=N,l.n.b+=o*u):z-u<0&&p>=0&&(l.n.a+=N*z,l.n.b+=o));e.o.a=t.a,e.o.b=t.b,pe(e,(Oe(),wb),(ou(),i=c(rl(tM),9),new ku(i,c(Da(i,i.length),9),0)))}function FKt(e,t,n,i,r,o){var u;if(!(t==null||!OK(t,ime,rme)))throw V(new St("invalid scheme: "+t));if(!e&&!(n!=null&&af(n,is(35))==-1&&n.length>0&&(fn(0,n.length),n.charCodeAt(0)!=47)))throw V(new St("invalid opaquePart: "+n));if(e&&!(t!=null&&ZM(Bx,t.toLowerCase()))&&!(n==null||!OK(n,oM,cM)))throw V(new St(Ket+n));if(e&&t!=null&&ZM(Bx,t.toLowerCase())&&!O7t(n))throw V(new St(Ket+n));if(!xAt(i))throw V(new St("invalid device: "+i));if(!Tjt(r))throw u=r==null?"invalid segments: null":"invalid segment: "+Pjt(r),V(new St(u));if(!(o==null||af(o,is(35))==-1))throw V(new St("invalid query: "+o))}function BKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;for(Wt(t,"Calculate Graph Size",1),t.n&&e&&Ra(t,xa(e),(ru(),Tu)),a=$E,l=$E,o=Ule,u=Ule,v=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));v.e!=v.i.gc();)d=c(Vt(v),33),L=d.i,N=d.j,Y=d.g,i=d.f,r=c(Ke(d,(kn(),Dj)),142),a=g.Math.min(a,L-r.b),l=g.Math.min(l,N-r.d),o=g.Math.max(o,L+Y+r.c),u=g.Math.max(u,N+i+r.a);for(D=c(Ke(e,(kn(),Sb)),116),A=new $e(a-D.b,l-D.d),p=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));p.e!=p.i.gc();)d=c(Vt(p),33),es(d,d.i-A.a),ts(d,d.j-A.b);z=o-a+(D.b+D.c),n=u-l+(D.d+D.a),p0(e,z),b0(e,n),t.n&&e&&Ra(t,xa(e),(ru(),Tu))}function yXe(e){var t,n,i,r,o,u,a,l,d,p;for(i=new Se,u=new q(e.e.a);u.a0){y7(e,n,0),n.a+=String.fromCharCode(i),r=P9t(t,o),y7(e,n,r),o+=r-1;continue}i==39?o+11)for(N=oe(Qt,_n,25,e.b.b.c.length,15,1),v=0,d=new q(e.b.b);d.a=a&&r<=l)a<=r&&o<=l?(n[p++]=r,n[p++]=o,i+=2):a<=r?(n[p++]=r,n[p++]=l,e.b[i]=l+1,u+=2):o<=l?(n[p++]=a,n[p++]=o,i+=2):(n[p++]=a,n[p++]=l,e.b[i]=l+1);else if(lA1)&&a<10);lZ(e.c,new n3e),_Xe(e),TSt(e.c),LKt(e.f)}function HKt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(Be(Fe(B(n,(Oe(),Bw)))))for(a=new q(n.j);a.a=2){for(l=Mn(n,0),u=c(Pn(l),8),a=c(Pn(l),8);a.a0&&vI(d,!0,(eo(),Va)),a.k==(Dt(),Bi)&&Wxe(d),Kn(e.f,a,t)}}function UKt(e,t,n){var i,r,o,u,a,l,d,p,v,A;switch(Wt(n,"Node promotion heuristic",1),e.g=t,Zqt(e),e.q=c(B(t,(Oe(),FU)),260),p=c(B(e.g,ube),19).a,o=new K_e,e.q.g){case 2:case 1:TE(e,o);break;case 3:for(e.q=(iv(),WR),TE(e,o),l=0,a=new q(e.a);a.ae.j&&(e.q=gj,TE(e,o));break;case 4:for(e.q=(iv(),WR),TE(e,o),d=0,r=new q(e.b);r.ae.k&&(e.q=bj,TE(e,o));break;case 6:A=xi(g.Math.ceil(e.f.length*p/100)),TE(e,new iTe(A));break;case 5:v=xi(g.Math.ceil(e.d*p/100)),TE(e,new rTe(v));break;default:TE(e,o)}$Nt(e,t),qt(n)}function SXe(e,t,n){var i,r,o,u;this.j=e,this.e=Ice(e),this.o=this.j.e,this.i=!!this.o,this.p=this.i?c(Ne(n,Nr(this.o).p),214):null,r=c(B(e,(ye(),Cc)),21),this.g=r.Hc((to(),Gu)),this.b=new Se,this.d=new VHe(this.e),u=c(B(this.j,Y2),230),this.q=MTt(t,u,this.e),this.k=new GLe(this),o=kl(U(G(Trt,1),xe,225,0,[this,this.d,this.k,this.q])),t==(w0(),wj)&&!Be(Fe(B(e,(Oe(),Lw))))?(i=new jce(this.e),o.c[o.c.length]=i,this.c=new rie(i,u,c(this.q,402))):t==wj&&Be(Fe(B(e,(Oe(),Lw))))?(i=new jce(this.e),o.c[o.c.length]=i,this.c=new TKe(i,u,c(this.q,402))):this.c=new COe(t,this),Ee(o,this.c),rXe(o,this.e),this.s=jHt(this.k)}function WKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;for(v=c(G9((u=Mn(new t1(t).a.d,0),new Dy(u))),86),L=v?c(B(v,(ic(),bW)),86):null,r=1;v&&L;){for(l=0,ue=0,n=v,i=L,a=0;a=e.i?(++e.i,Ee(e.a,Ce(1)),Ee(e.b,p)):(i=e.c[t.p][1],Lu(e.a,d,Ce(c(Ne(e.a,d),19).a+1-i)),Lu(e.b,d,ge(Te(Ne(e.b,d)))+p-i*e.e)),(e.q==(iv(),gj)&&(c(Ne(e.a,d),19).a>e.j||c(Ne(e.a,d-1),19).a>e.j)||e.q==bj&&(ge(Te(Ne(e.b,d)))>e.k||ge(Te(Ne(e.b,d-1)))>e.k))&&(l=!1),u=new Kt(Ht(ko(t).a.Kc(),new j));dn(u);)o=c(rn(u),17),a=o.c.i,e.f[a.p]==d&&(v=PXe(e,a),r=r+c(v.a,19).a,l=l&&Be(Fe(v.b)));return e.f[t.p]=d,r=r+e.c[t.p][0],new yr(Ce(r),(Pt(),!!l))}function Mue(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y;for(v=new en,u=new Se,GGe(e,n,e.d.fg(),u,v),GGe(e,i,e.d.gg(),u,v),e.b=.2*(N=xUe($o(new ht(null,new bt(u,16)),new YSe)),z=xUe($o(new ht(null,new bt(u,16)),new XSe)),g.Math.min(N,z)),o=0,a=0;a=2&&(Y=iWe(u,!0,A),!e.e&&(e.e=new sje(e)),C9t(e.e,Y,u,e.b)),NVe(u,A),lqt(u),D=-1,p=new q(u);p.aa)}function XKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(n=c(B(e,(Oe(),ji)),98),u=e.f,o=e.d,a=u.a+o.b+o.c,l=0-o.d-e.c.b,p=u.b+o.d+o.a-e.c.b,d=new Se,v=new Se,r=new q(t);r.a0),c(p.a.Xb(p.c=--p.b),17));o!=i&&p.b>0;)e.a[o.p]=!0,e.a[i.p]=!0,o=(Lt(p.b>0),c(p.a.Xb(p.c=--p.b),17));p.b>0&&nu(p)}}function TXe(e,t,n){var i,r,o,u,a,l,d,p,v;if(e.a!=t.Aj())throw V(new St(UE+t.ne()+K0));if(i=gd((vs(),Ir),t).$k(),i)return i.Aj().Nh().Ih(i,n);if(u=gd(Ir,t).al(),u){if(n==null)return null;if(a=c(n,15),a.dc())return"";for(v=new nd,o=a.Kc();o.Ob();)r=o.Pb(),co(v,u.Aj().Nh().Ih(u,r)),v.a+=" ";return xF(v,v.a.length-1)}if(p=gd(Ir,t).bl(),!p.dc()){for(d=p.Kc();d.Ob();)if(l=c(d.Pb(),148),l.wj(n))try{if(v=l.Aj().Nh().Ih(l,n),v!=null)return v}catch(A){if(A=gi(A),!Q(A,102))throw V(A)}throw V(new St("Invalid value: '"+n+"' for datatype :"+t.ne()))}return c(t,834).Fj(),n==null?null:Q(n,172)?""+c(n,172).a:Fs(n)==Mk?nDe(rM[0],c(n,199)):Ro(n)}function nqt(e){var t,n,i,r,o,u,a,l,d,p;for(d=new wi,a=new wi,o=new q(e);o.a-1){for(r=Mn(a,0);r.b!=r.d.c;)i=c(Pn(r),128),i.v=u;for(;a.b!=0;)for(i=c(uq(a,0),128),n=new q(i.i);n.a0&&(n+=l.n.a+l.o.a/2,++v),L=new q(l.j);L.a0&&(n/=v),Y=oe(gr,lo,25,i.a.c.length,15,1),a=0,d=new q(i.a);d.a=a&&r<=l)a<=r&&o<=l?i+=2:a<=r?(e.b[i]=l+1,u+=2):o<=l?(n[p++]=r,n[p++]=a-1,i+=2):(n[p++]=r,n[p++]=a-1,e.b[i]=l+1,u+=2);else if(l0?r-=864e5:r+=864e5,l=new Jee(xr(ns(t.q.getTime()),r))),p=new _m,d=e.a.length,o=0;o=97&&i<=122||i>=65&&i<=90){for(u=o+1;u=d)throw V(new St("Missing trailing '"));u+10&&n.c==0&&(!t&&(t=new Se),t.c[t.c.length]=n);if(t)for(;t.c.length!=0;){if(n=c(ad(t,0),233),n.b&&n.b.c.length>0){for(o=(!n.b&&(n.b=new Se),new q(n.b));o.aDo(e,n,0))return new yr(r,n)}else if(ge(Tl(r.g,r.d[0]).a)>ge(Tl(n.g,n.d[0]).a))return new yr(r,n)}for(a=(!n.e&&(n.e=new Se),n.e).Kc();a.Ob();)u=c(a.Pb(),233),l=(!u.b&&(u.b=new Se),u.b),Vp(0,l.c.length),WS(l.c,0,n),u.c==l.c.length&&(t.c[t.c.length]=u)}return null}function kXe(e,t){var n,i,r,o,u,a,l,d,p;if(e==null)return rs;if(l=t.a.zc(e,t),l!=null)return"[...]";for(n=new Hg(zr,"[","]"),r=e,o=0,u=r.length;o=14&&p<=16))?t.a._b(i)?(n.a?wn(n.a,n.b):n.a=new lu(n.d),a5(n.a,"[...]")):(a=$g(i),d=new _5(t),jh(n,kXe(a,d))):Q(i,177)?jh(n,Zkt(c(i,177))):Q(i,190)?jh(n,q7t(c(i,190))):Q(i,195)?jh(n,QDt(c(i,195))):Q(i,2012)?jh(n,H7t(c(i,2012))):Q(i,48)?jh(n,Qkt(c(i,48))):Q(i,364)?jh(n,hRt(c(i,364))):Q(i,832)?jh(n,Jkt(c(i,832))):Q(i,104)&&jh(n,Xkt(c(i,104))):jh(n,i==null?rs:Ro(i));return n.a?n.e.length==0?n.a.a:n.a.a+(""+n.e):n.c}function RXe(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;for(a=rv(t,!1,!1),Y=HI(a),i&&(Y=_I(Y)),ne=ge(Te(Ke(t,(o6(),TG)))),z=(Lt(Y.b!=0),c(Y.a.a.c,8)),v=c(hl(Y,1),8),Y.b>2?(p=new Se,Hi(p,new Hf(Y,1,Y.b)),o=dJe(p,ne+e.a),ie=new kq(o),Mo(ie,t),n.c[n.c.length]=ie):i?ie=c(Bt(e.b,Uf(t)),266):ie=c(Bt(e.b,M1(t)),266),l=Uf(t),i&&(l=M1(t)),u=mkt(z,l),d=ne+e.a,u.a?(d+=g.Math.abs(z.b-v.b),N=new $e(v.a,(v.b+z.b)/2)):(d+=g.Math.abs(z.a-v.a),N=new $e((v.a+z.a)/2,v.b)),i?Kn(e.d,t,new Xoe(ie,u,N,d)):Kn(e.c,t,new Xoe(ie,u,N,d)),Kn(e.b,t,ie),L=(!t.n&&(t.n=new Me(Lo,t,1,7)),t.n),D=new $t(L);D.e!=D.i.gc();)A=c(Vt(D),137),r=eT(e,A,!0,0,0),n.c[n.c.length]=r}function lqt(e){var t,n,i,r,o,u,a,l,d,p;for(d=new Se,a=new Se,u=new q(e);u.a-1){for(o=new q(a);o.a0)&&(iQ(l,g.Math.min(l.o,r.o-1)),FA(l,l.i-1),l.i==0&&(a.c[a.c.length]=l))}}function AE(e,t,n){var i,r,o,u,a,l,d;if(d=e.c,!t&&(t=ume),e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&(l=new sr(e,1,2,d,e.c),n?n.Ei(l):n=l),d!=t){if(Q(e.Cb,284))e.Db>>16==-10?n=c(e.Cb,284).nk(t,n):e.Db>>16==-15&&(!t&&(t=(ot(),Ql)),!d&&(d=(ot(),Ql)),e.Cb.nh()&&(l=new Ah(e.Cb,1,13,d,t,wd(Ns(c(e.Cb,59)),e),!1),n?n.Ei(l):n=l));else if(Q(e.Cb,88))e.Db>>16==-23&&(Q(t,88)||(t=(ot(),Ea)),Q(d,88)||(d=(ot(),Ea)),e.Cb.nh()&&(l=new Ah(e.Cb,1,10,d,t,wd(dc(c(e.Cb,26)),e),!1),n?n.Ei(l):n=l));else if(Q(e.Cb,444))for(a=c(e.Cb,836),u=(!a.b&&(a.b=new zA(new BN)),a.b),o=(i=new Gg(new Pg(u.a).a),new VA(i));o.a.b;)r=c(g0(o.a).cd(),87),n=AE(r,H7(r,a),n)}return n}function fqt(e,t){var n,i,r,o,u,a,l,d,p,v,A;for(u=Be(Fe(Ke(e,(Oe(),Bw)))),A=c(Ke(e,Kw),21),l=!1,d=!1,v=new $t((!e.c&&(e.c=new Me(Vs,e,9,9)),e.c));v.e!=v.i.gc()&&(!l||!d);){for(o=c(Vt(v),118),a=0,r=d1(Ll(U(G(zl,1),xe,20,0,[(!o.d&&(o.d=new dt(rr,o,8,5)),o.d),(!o.e&&(o.e=new dt(rr,o,7,4)),o.e)])));dn(r)&&(i=c(rn(r),79),p=u&&T0(i)&&Be(Fe(Ke(i,pb))),n=fXe((!i.b&&(i.b=new dt(Ut,i,4,7)),i.b),o)?e==yi(Co(c(ee((!i.c&&(i.c=new dt(Ut,i,5,8)),i.c),0),82))):e==yi(Co(c(ee((!i.b&&(i.b=new dt(Ut,i,4,7)),i.b),0),82))),!((p||n)&&(++a,a>1))););(a>0||A.Hc((js(),Wh))&&(!o.n&&(o.n=new Me(Lo,o,1,7)),o.n).i>0)&&(l=!0),a>1&&(d=!0)}l&&t.Fc((to(),Gu)),d&&t.Fc((to(),mP))}function xXe(e){var t,n,i,r,o,u,a,l,d,p,v,A;if(A=c(Ke(e,(kn(),Eb)),21),A.dc())return null;if(a=0,u=0,A.Hc((ou(),$j))){for(p=c(Ke(e,UP),98),i=2,n=2,r=2,o=2,t=yi(e)?c(Ke(yi(e),rp),103):c(Ke(e,rp),103),d=new $t((!e.c&&(e.c=new Me(Vs,e,9,9)),e.c));d.e!=d.i.gc();)if(l=c(Vt(d),118),v=c(Ke(l,Gv),61),v==(Ie(),Vo)&&(v=lue(l,t),ao(l,Gv,v)),p==(wr(),Ic))switch(v.g){case 1:i=g.Math.max(i,l.i+l.g);break;case 2:n=g.Math.max(n,l.j+l.f);break;case 3:r=g.Math.max(r,l.i+l.g);break;case 4:o=g.Math.max(o,l.j+l.f)}else switch(v.g){case 1:i+=l.g+2;break;case 2:n+=l.f+2;break;case 3:r+=l.g+2;break;case 4:o+=l.f+2}a=g.Math.max(i,r),u=g.Math.max(n,o)}return k0(e,a,u,!0,!0)}function bH(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;for(ie=c(gu(CO(si(new ht(null,new bt(t.d,16)),new ITe(n)),new TTe(n)),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),v=Fn,p=Ar,l=new q(t.b.j);l.a0,d?d&&(A=Y.p,u?++A:--A,v=c(Ne(Y.c.a,A),10),i=Cqe(v),D=!(Bq(i,Pe,n[0])||rxe(i,Pe,n[0]))):D=!0),L=!1,be=t.D.i,be&&be.c&&a.e&&(p=u&&be.p>0||!u&&be.p0&&(t.a+=zr),sD(c(Vt(a),160),t);for(t.a+=Sz,l=new Vy((!i.c&&(i.c=new dt(Ut,i,5,8)),i.c));l.e!=l.i.gc();)l.e>0&&(t.a+=zr),sD(c(Vt(l),160),t);t.a+=")"}}function wqt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D;if(o=c(B(e,(ye(),Hn)),79),!!o){for(i=e.a,r=new go(n),Wn(r,s7t(e)),Y_(e.d.i,e.c.i)?(A=e.c,v=Ko(U(G(ir,1),we,8,0,[A.n,A.a])),hr(v,n)):v=Ol(e.c),Ri(i,v,i.a,i.a.a),D=Ol(e.d),B(e,TU)!=null&&Wn(D,c(B(e,TU),8)),Ri(i,D,i.c.b,i.c),Qp(i,r),u=rv(o,!0,!0),RO(u,c(ee((!o.b&&(o.b=new dt(Ut,o,4,7)),o.b),0),82)),xO(u,c(ee((!o.c&&(o.c=new dt(Ut,o,5,8)),o.c),0),82)),rT(i,u),p=new q(e.b);p.a=0){for(l=null,a=new _r(p.a,d+1);a.bu?1:Wb(isNaN(0),isNaN(u)))<0&&(Na(Mf),(g.Math.abs(u-1)<=Mf||u==1||isNaN(u)&&isNaN(1)?0:u<1?-1:u>1?1:Wb(isNaN(u),isNaN(1)))<0)&&(Na(Mf),(g.Math.abs(0-a)<=Mf||a==0||isNaN(0)&&isNaN(a)?0:0a?1:Wb(isNaN(0),isNaN(a)))<0)&&(Na(Mf),(g.Math.abs(a-1)<=Mf||a==1||isNaN(a)&&isNaN(1)?0:a<1?-1:a>1?1:Wb(isNaN(a),isNaN(1)))<0)),o)}function vqt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe;for(v=new Tne(new wQ(e));v.b!=v.c.a.d;)for(p=$Be(v),a=c(p.d,56),t=c(p.e,56),u=a.Tg(),N=0,ue=(u.i==null&&wf(u),u.i).length;N=0&&N=d.c.c.length?p=uie((Dt(),Ui),ur):p=uie((Dt(),ur),ur),p*=2,o=n.a.g,n.a.g=g.Math.max(o,o+(p-o)),u=n.b.g,n.b.g=g.Math.max(u,u+(p-u)),r=t}}function Eqt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be;for(be=nRe(e),p=new Se,a=e.c.length,v=a-1,A=a+1;be.a.c!=0;){for(;n.b!=0;)ne=(Lt(n.b!=0),c(Fu(n,n.a.a),112)),D5(be.a,ne)!=null,ne.g=v--,fue(ne,t,n,i);for(;t.b!=0;)ue=(Lt(t.b!=0),c(Fu(t,t.a.a),112)),D5(be.a,ue)!=null,ue.g=A++,fue(ue,t,n,i);for(d=Ar,Y=(u=new m5(new b5(new qM(be.a).a).b),new HM(u));iC(Y.a.a);){if(z=(o=e8(Y.a),c(o.cd(),112)),!i&&z.b>0&&z.a<=0){p.c=oe(xt,xe,1,0,5,1),p.c[p.c.length]=z;break}N=z.i-z.d,N>=d&&(N>d&&(p.c=oe(xt,xe,1,0,5,1),d=N),p.c[p.c.length]=z)}p.c.length!=0&&(l=c(Ne(p,S7(r,p.c.length)),112),D5(be.a,l)!=null,l.g=A++,fue(l,t,n,i),p.c=oe(xt,xe,1,0,5,1))}for(ie=e.c.length+1,L=new q(e);L.a0&&(A.d+=p.n.d,A.d+=p.d),A.a>0&&(A.a+=p.n.a,A.a+=p.d),A.b>0&&(A.b+=p.n.b,A.b+=p.d),A.c>0&&(A.c+=p.n.c,A.c+=p.d),A}function NXe(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L;for(A=n.d,v=n.c,o=new $e(n.f.a+n.d.b+n.d.c,n.f.b+n.d.d+n.d.a),u=o.b,d=new q(e.a);d.a0&&(e.c[t.c.p][t.p].d+=$s(e.i,24)*vT*.07000000029802322-.03500000014901161,e.c[t.c.p][t.p].a=e.c[t.c.p][t.p].d/e.c[t.c.p][t.p].b)}}function Aqt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;for(L=new q(e);L.ai.d,i.d=g.Math.max(i.d,t),a&&n&&(i.d=g.Math.max(i.d,i.a),i.a=i.d+r);break;case 3:n=t>i.a,i.a=g.Math.max(i.a,t),a&&n&&(i.a=g.Math.max(i.a,i.d),i.d=i.a+r);break;case 2:n=t>i.c,i.c=g.Math.max(i.c,t),a&&n&&(i.c=g.Math.max(i.b,i.c),i.b=i.c+r);break;case 4:n=t>i.b,i.b=g.Math.max(i.b,t),a&&n&&(i.b=g.Math.max(i.b,i.c),i.c=i.b+r)}}}function Rqt(e){var t,n,i,r,o,u,a,l,d,p,v;for(d=new q(e);d.a0||p.j==Mt&&p.e.c.length-p.g.c.length<0)){t=!1;break}for(r=new q(p.g);r.a=d&&be>=z&&(A+=L.n.b+N.n.b+N.a.b-ue,++a));if(n)for(u=new q(ie.e);u.a=d&&be>=z&&(A+=L.n.b+N.n.b+N.a.b-ue,++a))}a>0&&(Pe+=A/a,++D)}D>0?(t.a=r*Pe/D,t.g=D):(t.a=0,t.g=0)}function Lqt(e,t){var n,i,r,o,u,a,l,d,p,v,A;for(r=new q(e.a.b);r.a$i||t.o==yb&&p0&&es(Y,ue*Pe),be>0&&ts(Y,be*Ae);for(U5(e.b,new U2e),t=new Se,a=new Gg(new Pg(e.c).a);a.b;)u=g0(a),i=c(u.cd(),79),n=c(u.dd(),395).a,r=rv(i,!1,!1),v=FVe(Uf(i),HI(r),n),rT(v,r),ne=XVe(i),ne&&Do(t,ne,0)==-1&&(t.c[t.c.length]=ne,nLe(ne,(Lt(v.b!=0),c(v.a.a.c,8)),n));for(z=new Gg(new Pg(e.d).a);z.b;)N=g0(z),i=c(N.cd(),79),n=c(N.dd(),395).a,r=rv(i,!1,!1),v=FVe(M1(i),_I(HI(r)),n),v=_I(v),rT(v,r),ne=JVe(i),ne&&Do(t,ne,0)==-1&&(t.c[t.c.length]=ne,nLe(ne,(Lt(v.b!=0),c(v.c.b.c,8)),n))}function $Xe(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae;if(n.c.length!=0){for(D=new Se,A=new q(n);A.a1)for(D=new vue(L,ne,i),Mr(ne,new kOe(e,D)),u.c[u.c.length]=D,v=ne.a.ec().Kc();v.Ob();)p=c(v.Pb(),46),Jc(o,p.b);if(a.a.gc()>1)for(D=new vue(L,a,i),Mr(a,new ROe(e,D)),u.c[u.c.length]=D,v=a.a.ec().Kc();v.Ob();)p=c(v.Pb(),46),Jc(o,p.b)}}function qXe(e){Gb(e,new Zg(t9(qb(Bb(Kb($b(new _g,Cf),"ELK Radial"),'A radial layout provider which is based on the algorithm of Peter Eades published in "Drawing free trees.", published by International Institute for Advanced Study of Social Information Science, Fujitsu Limited in 1991. The radial layouter takes a tree and places the nodes in radial order around the root. The nodes of the same tree level are placed on the same radius.'),new f5e),Cf))),je(e,Cf,VD,Le(fat)),je(e,Cf,_w,Le(hat)),je(e,Cf,gv,Le(sat)),je(e,Cf,R2,Le(uat)),je(e,Cf,k2,Le(aat)),je(e,Cf,qE,Le(cat)),je(e,Cf,N6,Le(A0e)),je(e,Cf,HE,Le(lat)),je(e,Cf,fV,Le(PW)),je(e,Cf,lV,Le(MW)),je(e,Cf,Zle,Le(O0e)),je(e,Cf,Yle,Le(ux)),je(e,Cf,Xle,Le(ax)),je(e,Cf,Jle,Le(_j)),je(e,Cf,Qle,Le(D0e))}function Tue(e){var t;if(this.r=v5t(new TA,new fN),this.b=new n6(c(nn(Gr),290)),this.p=new n6(c(nn(Gr),290)),this.i=new n6(c(nn(eit),290)),this.e=e,this.o=new go(e.rf()),this.D=e.Df()||Be(Fe(e.We((kn(),Oj)))),this.A=c(e.We((kn(),Eb)),21),this.B=c(e.We(G1),21),this.q=c(e.We(UP),98),this.u=c(e.We(Uw),21),!CDt(this.u))throw V(new ym("Invalid port label placement: "+this.u));if(this.v=Be(Fe(e.We(lwe))),this.j=c(e.We(zv),21),!Xxt(this.j))throw V(new ym("Invalid node label placement: "+this.j));this.n=c(u6(e,Jpe),116),this.k=ge(Te(u6(e,Px))),this.d=ge(Te(u6(e,gwe))),this.w=ge(Te(u6(e,vwe))),this.s=ge(Te(u6(e,bwe))),this.t=ge(Te(u6(e,pwe))),this.C=c(u6(e,wwe),142),this.c=2*this.d,t=!this.B.Hc((Ks(),Kj)),this.f=new r6(0,t,0),this.g=new r6(1,t,0),HN(this.f,(al(),Nc),this.g)}function Vqt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At;for(ne=0,L=0,D=0,A=1,ie=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));ie.e!=ie.i.gc();)z=c(Vt(ie),33),A+=Th(new Kt(Ht(Fh(z).a.Kc(),new j))),Ve=z.g,L=g.Math.max(L,Ve),v=z.f,D=g.Math.max(D,v),ne+=Ve*v;for(N=(!e.a&&(e.a=new Me(Ei,e,10,11)),e.a).i,u=ne+2*i*i*A*N,o=g.Math.sqrt(u),l=g.Math.max(o*n,L),a=g.Math.max(o/n,D),Y=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));Y.e!=Y.i.gc();)z=c(Vt(Y),33),et=r.b+($s(t,26)*A6+$s(t,27)*O6)*(l-z.g),At=r.b+($s(t,26)*A6+$s(t,27)*O6)*(a-z.f),es(z,et),ts(z,At);for(Ae=l+(r.b+r.c),Pe=a+(r.d+r.a),be=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));be.e!=be.i.gc();)for(ue=c(Vt(be),33),p=new Kt(Ht(Fh(ue).a.Kc(),new j));dn(p);)d=c(rn(p),79),b6(d)||GHt(d,t,Ae,Pe);Ae+=r.b+r.c,Pe+=r.d+r.a,k0(e,Ae,Pe,!1,!0)}function aD(e){var t,n,i,r,o,u,a,l,d,p,v;if(e==null)throw V(new uf(rs));if(d=e,o=e.length,l=!1,o>0&&(t=(fn(0,e.length),e.charCodeAt(0)),(t==45||t==43)&&(e=e.substr(1),--o,l=t==45)),o==0)throw V(new uf(L0+d+'"'));for(;e.length>0&&(fn(0,e.length),e.charCodeAt(0)==48);)e=e.substr(1),--o;if(o>(AYe(),ent)[10])throw V(new uf(L0+d+'"'));for(r=0;r0&&(v=-parseInt(e.substr(0,i),10),e=e.substr(i),o-=i,n=!1);o>=u;){if(i=parseInt(e.substr(0,u),10),e=e.substr(u),o-=u,n)n=!1;else{if(uc(v,a)<0)throw V(new uf(L0+d+'"'));v=jr(v,p)}v=P1(v,i)}if(uc(v,0)>0)throw V(new uf(L0+d+'"'));if(!l&&(v=N_(v),uc(v,0)<0))throw V(new uf(L0+d+'"'));return v}function jue(e,t){vRe();var n,i,r,o,u,a,l;if(this.a=new vee(this),this.b=e,this.c=t,this.f=IB(wo((vs(),Ir),t)),this.f.dc())if((a=gce(Ir,e))==t)for(this.e=!0,this.d=new Se,this.f=new v6e,this.f.Fc(lb),c(oD(iI(Ir,bu(e)),""),26)==e&&this.f.Fc(S5(Ir,bu(e))),r=Yq(Ir,e).Kc();r.Ob();)switch(i=c(r.Pb(),170),o0(wo(Ir,i))){case 4:{this.d.Fc(i);break}case 5:{this.f.Gc(IB(wo(Ir,i)));break}}else if(Wr(),c(t,66).Oj())for(this.e=!0,this.f=null,this.d=new Se,u=0,l=(e.i==null&&wf(e),e.i).length;u=0&&u0&&(c(so(e.b,t),124).a.b=n)}function Gqt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;for(Wt(t,"Comment pre-processing",1),n=0,l=new q(e.a);l.a0&&(l=(fn(0,t.length),t.charCodeAt(0)),l!=64)){if(l==37&&(v=t.lastIndexOf("%"),d=!1,v!=0&&(v==A-1||(d=(fn(v+1,t.length),t.charCodeAt(v+1)==46))))){if(u=t.substr(1,v-1),ne=rt("%",u)?null:Oue(u),i=0,d)try{i=vu(t.substr(v+2),Ar,Fn)}catch(ue){throw ue=gi(ue),Q(ue,127)?(a=ue,V(new mO(a))):V(ue)}for(z=fre(e.Wg());z.Ob();)if(L=UO(z),Q(L,510)&&(r=c(L,590),ie=r.d,(ne==null?ie==null:rt(ne,ie))&&i--==0))return r;return null}if(p=t.lastIndexOf("."),D=p==-1?t:t.substr(0,p),n=0,p!=-1)try{n=vu(t.substr(p+1),Ar,Fn)}catch(ue){if(ue=gi(ue),Q(ue,127))D=t;else throw V(ue)}for(D=rt("%",D)?null:Oue(D),N=fre(e.Wg());N.Ob();)if(L=UO(N),Q(L,191)&&(o=c(L,191),Y=o.ne(),(D==null?Y==null:rt(D,Y))&&n--==0))return o;return null}return dXe(e,t)}function Yqt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot;for(Pe=new Se,L=new q(e.b);L.a=t.length)return{done:!0};var r=t[i++];return{value:[r,n.get(r)],done:!1}}}},eFt()||(e.prototype.createObject=function(){return{}},e.prototype.get=function(t){return this.obj[":"+t]},e.prototype.set=function(t,n){this.obj[":"+t]=n},e.prototype[ZH]=function(t){delete this.obj[":"+t]},e.prototype.keys=function(){var t=[];for(var n in this.obj)n.charCodeAt(0)==58&&t.push(n.substring(1));return t}),e}function Jqt(e){aue();var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(e==null)return null;if(v=e.length*8,v==0)return"";for(a=v%24,D=v/24|0,A=a!=0?D+1:D,o=null,o=oe(Yu,vf,25,A*4,15,1),d=0,p=0,t=0,n=0,i=0,u=0,r=0,l=0;l>24,d=(t&3)<<24>>24,L=(t&-128)==0?t>>2<<24>>24:(t>>2^192)<<24>>24,N=(n&-128)==0?n>>4<<24>>24:(n>>4^240)<<24>>24,z=(i&-128)==0?i>>6<<24>>24:(i>>6^252)<<24>>24,o[u++]=Fd[L],o[u++]=Fd[N|d<<4],o[u++]=Fd[p<<2|z],o[u++]=Fd[i&63];return a==8?(t=e[r],d=(t&3)<<24>>24,L=(t&-128)==0?t>>2<<24>>24:(t>>2^192)<<24>>24,o[u++]=Fd[L],o[u++]=Fd[d<<4],o[u++]=61,o[u++]=61):a==16&&(t=e[r],n=e[r+1],p=(n&15)<<24>>24,d=(t&3)<<24>>24,L=(t&-128)==0?t>>2<<24>>24:(t>>2^192)<<24>>24,N=(n&-128)==0?n>>4<<24>>24:(n>>4^240)<<24>>24,o[u++]=Fd[L],o[u++]=Fd[N|d<<4],o[u++]=Fd[p<<2],o[u++]=61),pf(o,0,o.length)}function Qqt(e,t){var n,i,r,o,u,a,l;if(e.e==0&&e.p>0&&(e.p=-(e.p-1)),e.p>Ar&&lie(t,e.p-O1),u=t.q.getDate(),$C(t,1),e.k>=0&&R6t(t,e.k),e.c>=0?$C(t,e.c):e.k>=0?(l=new Ore(t.q.getFullYear()-O1,t.q.getMonth(),35),i=35-l.q.getDate(),$C(t,g.Math.min(i,u))):$C(t,u),e.f<0&&(e.f=t.q.getHours()),e.b>0&&e.f<12&&(e.f+=12),V2t(t,e.f==24&&e.g?0:e.f),e.j>=0&&VMt(t,e.j),e.n>=0&&aCt(t,e.n),e.i>=0&&m7e(t,xr(jr(BI(ns(t.q.getTime()),_d),_d),e.i)),e.a&&(r=new u9,lie(r,r.q.getFullYear()-O1-80),iF(ns(t.q.getTime()),ns(r.q.getTime()))&&lie(t,r.q.getFullYear()-O1+100)),e.d>=0){if(e.c==-1)n=(7+e.d-t.q.getDay())%7,n>3&&(n-=7),a=t.q.getMonth(),$C(t,t.q.getDate()+n),t.q.getMonth()!=a&&$C(t,t.q.getDate()+(n>0?-7:7));else if(t.q.getDay()!=e.d)return!1}return e.o>Ar&&(o=t.q.getTimezoneOffset(),m7e(t,xr(ns(t.q.getTime()),(e.o-o)*60*_d))),!0}function VXe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;if(r=B(t,(ye(),Hn)),!!Q(r,239)){for(L=c(r,33),N=t.e,A=new go(t.c),o=t.d,A.a+=o.b,A.b+=o.d,ue=c(Ke(L,(Oe(),$R)),174),bs(ue,(Ks(),Ix))&&(D=c(Ke(L,gbe),116),Mmt(D,o.a),kmt(D,o.d),Cmt(D,o.b),Rmt(D,o.c)),n=new Se,p=new q(t.a);p.a0&&Ee(e.p,p),Ee(e.o,p);t-=i,D=l+t,d+=t*e.e,Lu(e.a,a,Ce(D)),Lu(e.b,a,d),e.j=g.Math.max(e.j,D),e.k=g.Math.max(e.k,d),e.d+=t,t+=N}}function Ie(){Ie=Z;var e;Vo=new bC(R6,0),_t=new bC(yD,1),jt=new bC(az,2),Yt=new bC(lz,3),Mt=new bC(fz,4),Jl=(st(),new t_((e=c(rl(Gr),9),new ku(e,c(Da(e,e.length),9),0)))),Xa=dd(ui(_t,U(G(Gr,1),ac,61,0,[]))),Uu=dd(ui(jt,U(G(Gr,1),ac,61,0,[]))),Cu=dd(ui(Yt,U(G(Gr,1),ac,61,0,[]))),wa=dd(ui(Mt,U(G(Gr,1),ac,61,0,[]))),cs=dd(ui(_t,U(G(Gr,1),ac,61,0,[Yt]))),Vc=dd(ui(jt,U(G(Gr,1),ac,61,0,[Mt]))),Ja=dd(ui(_t,U(G(Gr,1),ac,61,0,[Mt]))),Ds=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt]))),Iu=dd(ui(Yt,U(G(Gr,1),ac,61,0,[Mt]))),Wu=dd(ui(jt,U(G(Gr,1),ac,61,0,[Yt]))),ks=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt,Mt]))),os=dd(ui(jt,U(G(Gr,1),ac,61,0,[Yt,Mt]))),ss=dd(ui(_t,U(G(Gr,1),ac,61,0,[Yt,Mt]))),Ss=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt,Yt]))),Tc=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt,Yt,Mt])))}function YXe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;if(t.b!=0){for(D=new wi,a=null,L=null,i=xi(g.Math.floor(g.Math.log(t.b)*g.Math.LOG10E)+1),l=0,ne=Mn(t,0);ne.b!=ne.d.c;)for(Y=c(Pn(ne),86),le(L)!==le(B(Y,(ic(),BP)))&&(L=ln(B(Y,BP)),l=0),L!=null?a=L+pNe(l++,i):a=pNe(l++,i),pe(Y,BP,a),z=(r=Mn(new t1(Y).a.d,0),new Dy(r));r9(z.a);)N=c(Pn(z.a),188).c,Ri(D,N,D.c.b,D.c),pe(N,BP,a);for(A=new en,u=0;u=l){Lt(Y.b>0),Y.a.Xb(Y.c=--Y.b);break}else N.a>d&&(r?(Hi(r.b,N.b),r.a=g.Math.max(r.a,N.a),nu(Y)):(Ee(N.b,v),N.c=g.Math.min(N.c,d),N.a=g.Math.max(N.a,l),r=N));r||(r=new RAe,r.c=d,r.a=l,Np(Y,r),Ee(r.b,v))}for(a=t.b,p=0,z=new q(i);z.aa?1:0:(e.b&&(e.b._b(o)&&(r=c(e.b.xc(o),19).a),e.b._b(l)&&(a=c(e.b.xc(l),19).a)),ra?1:0)):t.e.c.length!=0&&n.g.c.length!=0?1:-1}function nHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae;for(Wt(t,BQe,1),N=new Se,Pe=new Se,d=new q(e.b);d.a0&&(ne-=D),yue(u,ne),p=0,A=new q(u.a);A.a0),a.a.Xb(a.c=--a.b)),l=.4*i*p,!o&&a.bt.d.c){if(D=e.c[t.a.d],z=e.c[v.a.d],D==z)continue;$a(Aa(ja(Oa(Ta(new Zu,1),100),D),z))}}}}}function Oue(e){hH();var t,n,i,r,o,u,a,l;if(e==null)return null;if(r=af(e,is(37)),r<0)return e;for(l=new lu(e.substr(0,r)),t=oe(Ps,vv,25,4,15,1),a=0,i=0,u=e.length;rr+2&&rK((fn(r+1,e.length),e.charCodeAt(r+1)),tme,nme)&&rK((fn(r+2,e.length),e.charCodeAt(r+2)),tme,nme))if(n=j4t((fn(r+1,e.length),e.charCodeAt(r+1)),(fn(r+2,e.length),e.charCodeAt(r+2))),r+=2,i>0?(n&192)==128?t[a++]=n<<24>>24:i=0:n>=128&&((n&224)==192?(t[a++]=n<<24>>24,i=2):(n&240)==224?(t[a++]=n<<24>>24,i=3):(n&248)==240&&(t[a++]=n<<24>>24,i=4)),i>0){if(a==i){switch(a){case 2:{Dg(l,((t[0]&31)<<6|t[1]&63)&Ni);break}case 3:{Dg(l,((t[0]&15)<<12|(t[1]&63)<<6|t[2]&63)&Ni);break}}a=0,i=0}}else{for(o=0;o0){if(u+i>e.length)return!1;a=B7(e.substr(0,u+i),t)}else a=B7(e,t);switch(o){case 71:return a=ev(e,u,U(G(Re,1),we,2,6,[OJe,DJe]),t),r.e=a,!0;case 77:return HNt(e,t,r,a,u);case 76:return zNt(e,t,r,a,u);case 69:return xkt(e,t,u,r);case 99:return Lkt(e,t,u,r);case 97:return a=ev(e,u,U(G(Re,1),we,2,6,["AM","PM"]),t),r.b=a,!0;case 121:return VNt(e,t,u,a,n,r);case 100:return a<=0?!1:(r.c=a,!0);case 83:return a<0?!1:YAt(a,u,t[0],r);case 104:a==12&&(a=0);case 75:case 72:return a<0?!1:(r.f=a,r.g=!1,!0);case 107:return a<0?!1:(r.f=a,r.g=!0,!0);case 109:return a<0?!1:(r.j=a,!0);case 115:return a<0?!1:(r.n=a,!0);case 90:if(uPe&&(L.c=Pe-L.b),Ee(u.d,new yB(L,soe(u,L))),ie=t==_t?g.Math.max(ie,N.b+d.b.rf().b):g.Math.min(ie,N.b));for(ie+=t==_t?e.t:-e.t,ne=Soe((u.e=ie,u)),ne>0&&(c(so(e.b,t),124).a.b=ne),p=A.Kc();p.Ob();)d=c(p.Pb(),111),!(!d.c||d.c.d.c.length<=0)&&(L=d.c.i,L.c-=d.e.a,L.d-=d.e.b)}function aHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;for(t=new en,l=new $t(e);l.e!=l.i.gc();){for(a=c(Vt(l),33),n=new er,Kn(AG,a,n),D=new q2e,r=c(gu(new ht(null,new t0(new Kt(Ht(XI(a).a.Kc(),new j)))),KRe(D,Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)])))),83),lKe(n,c(r.xc((Pt(),!0)),14),new H2e),i=c(gu(si(c(r.xc(!1),15).Lc(),new z2e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[Su]))),15),u=i.Kc();u.Ob();)o=c(u.Pb(),79),A=XVe(o),A&&(d=c(Uo(Po(t.f,A)),21),d||(d=pWe(A),Kc(t.f,A,d)),qr(n,d));for(r=c(gu(new ht(null,new t0(new Kt(Ht(Fh(a).a.Kc(),new j)))),KRe(D,Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[Su])))),83),lKe(n,c(r.xc(!0),14),new V2e),i=c(gu(si(c(r.xc(!1),15).Lc(),new G2e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[Su]))),15),v=i.Kc();v.Ob();)p=c(v.Pb(),79),A=JVe(p),A&&(d=c(Uo(Po(t.f,A)),21),d||(d=pWe(A),Kc(t.f,A,d)),qr(n,d))}}function lHt(e,t){cH();var n,i,r,o,u,a,l,d,p,v,A,D,L,N;if(l=uc(e,0)<0,l&&(e=N_(e)),uc(e,0)==0)switch(t){case 0:return"0";case 1:return LE;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return D=new n1,t<0?D.a+="0E+":D.a+="0E",D.a+=t==Ar?"2147483648":""+-t,D.a}p=18,v=oe(Yu,vf,25,p+1,15,1),n=p,N=e;do d=N,N=BI(N,10),v[--n]=tn(xr(48,P1(d,jr(N,10))))&Ni;while(uc(N,0)!=0);if(r=P1(P1(P1(p,n),t),1),t==0)return l&&(v[--n]=45),pf(v,n,p-n);if(t>0&&uc(r,-6)>=0){if(uc(r,0)>=0){for(o=n+tn(r),a=p-1;a>=o;a--)v[a+1]=v[a];return v[++o]=46,l&&(v[--n]=45),pf(v,n,p-n+1)}for(u=2;iF(u,xr(N_(r),1));u++)v[--n]=48;return v[--n]=46,v[--n]=48,l&&(v[--n]=45),pf(v,n,p-n)}return L=n+1,i=p,A=new _m,l&&(A.a+="-"),i-L>=1?(Dg(A,v[n]),A.a+=".",A.a+=pf(v,n+1,p-n-1)):A.a+=pf(v,n,p-n),A.a+="E",uc(r,0)>0&&(A.a+="+"),A.a+=""+P5(r),A.a}function fHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D;if(e.e.a.$b(),e.f.a.$b(),e.c.c=oe(xt,xe,1,0,5,1),e.i.c=oe(xt,xe,1,0,5,1),e.g.a.$b(),t)for(u=new q(t.a);u.a=1&&(be-d>0&&L>=0?(es(v,v.i+ue),ts(v,v.j+l*d)):be-d<0&&D>=0&&(es(v,v.i+ue*be),ts(v,v.j+l)));return ao(e,(kn(),Eb),(ou(),o=c(rl(tM),9),new ku(o,c(Da(o,o.length),9),0))),new $e(Pe,p)}function QXe(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L;if(D=yi(Co(c(ee((!e.b&&(e.b=new dt(Ut,e,4,7)),e.b),0),82))),L=yi(Co(c(ee((!e.c&&(e.c=new dt(Ut,e,5,8)),e.c),0),82))),v=D==L,a=new Tr,t=c(Ke(e,(QO(),Iwe)),74),t&&t.b>=2){if((!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i==0)n=(Hb(),r=new DA,r),on((!e.a&&(e.a=new Me(mi,e,6,6)),e.a),n);else if((!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i>1)for(A=new Vy((!e.a&&(e.a=new Me(mi,e,6,6)),e.a));A.e!=A.i.gc();)l6(A);rT(t,c(ee((!e.a&&(e.a=new Me(mi,e,6,6)),e.a),0),202))}if(v)for(i=new $t((!e.a&&(e.a=new Me(mi,e,6,6)),e.a));i.e!=i.i.gc();)for(n=c(Vt(i),202),d=new $t((!n.a&&(n.a=new qi(ma,n,5)),n.a));d.e!=d.i.gc();)l=c(Vt(d),469),a.a=g.Math.max(a.a,l.a),a.b=g.Math.max(a.b,l.b);for(u=new $t((!e.n&&(e.n=new Me(Lo,e,1,7)),e.n));u.e!=u.i.gc();)o=c(Vt(u),137),p=c(Ke(o,YP),8),p&&Cl(o,p.a,p.b),v&&(a.a=g.Math.max(a.a,o.i+o.g),a.b=g.Math.max(a.b,o.j+o.f));return a}function hHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve;for(ne=t.c.length,r=new cv(e.a,n,null,null),Ve=oe(gr,lo,25,ne,15,1),N=oe(gr,lo,25,ne,15,1),L=oe(gr,lo,25,ne,15,1),z=0,a=0;aVe[l]&&(z=l),v=new q(e.a.b);v.aD&&(o&&(Tg(Pe,A),Tg(Ve,Ce(d.b-1))),ti=n.b,Zi+=A+t,A=0,p=g.Math.max(p,n.b+n.c+Jt)),es(a,ti),ts(a,Zi),p=g.Math.max(p,ti+Jt+n.c),A=g.Math.max(A,v),ti+=Jt+t;if(p=g.Math.max(p,i),Ot=Zi+A+n.a,OtEf,et=g.Math.abs(A.b-L.b)>Ef,(!n&&Ve&&et||n&&(Ve||et))&&Cn(z.a,ue)),qr(z.a,i),i.b==0?A=ue:A=(Lt(i.b!=0),c(i.c.b.c,8)),ATt(D,v,N),KKe(r)==Ae&&(Nr(Ae.i)!=r.a&&(N=new Tr,Yce(N,Nr(Ae.i),ie)),pe(z,TU,N)),ekt(D,z,ie),p.a.zc(D,p);Rr(z,be),br(z,Ae)}for(d=p.a.ec().Kc();d.Ob();)l=c(d.Pb(),17),Rr(l,null),br(l,null);qt(t)}function ZXe(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;if(e.gc()==1)return c(e.Xb(0),231);if(e.gc()<=0)return new uO;for(r=e.Kc();r.Ob();){for(n=c(r.Pb(),231),L=0,p=Fn,v=Fn,l=Ar,d=Ar,D=new q(n.e);D.aa&&(ne=0,ue+=u+Y,u=0),QFt(N,n,ne,ue),t=g.Math.max(t,ne+z.a),u=g.Math.max(u,z.b),ne+=z.a+Y;return N}function eJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;switch(p=new ds,e.a.g){case 3:A=c(B(t.e,(ye(),bb)),15),D=c(B(t.j,bb),15),L=c(B(t.f,bb),15),n=c(B(t.e,xv),15),i=c(B(t.j,xv),15),r=c(B(t.f,xv),15),u=new Se,Hi(u,A),D.Jc(new W4e),Hi(u,Q(D,152)?s2(c(D,152)):Q(D,131)?c(D,131).a:Q(D,54)?new Fb(D):new jp(D)),Hi(u,L),o=new Se,Hi(o,n),Hi(o,Q(i,152)?s2(c(i,152)):Q(i,131)?c(i,131).a:Q(i,54)?new Fb(i):new jp(i)),Hi(o,r),pe(t.f,bb,u),pe(t.f,xv,o),pe(t.f,hge,t.f),pe(t.e,bb,null),pe(t.e,xv,null),pe(t.j,bb,null),pe(t.j,xv,null);break;case 1:qr(p,t.e.a),Cn(p,t.i.n),qr(p,Kg(t.j.a)),Cn(p,t.a.n),qr(p,t.f.a);break;default:qr(p,t.e.a),qr(p,Kg(t.j.a)),qr(p,t.f.a)}na(t.f.a),qr(t.f.a,p),Rr(t.f,t.e.c),a=c(B(t.e,(Oe(),yo)),74),d=c(B(t.j,yo),74),l=c(B(t.f,yo),74),(a||d||l)&&(v=new ds,mne(v,l),mne(v,d),mne(v,a),pe(t.f,yo,v)),Rr(t.j,null),br(t.j,null),Rr(t.e,null),br(t.e,null),po(t.a,null),po(t.i,null),t.g&&eJe(e,t.g)}function pHt(e){aue();var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(e==null||(o=yO(e),L=iAt(o),L%4!=0))return null;if(N=L/4|0,N==0)return oe(Ps,vv,25,0,15,1);for(v=null,t=0,n=0,i=0,r=0,u=0,a=0,l=0,d=0,D=0,A=0,p=0,v=oe(Ps,vv,25,N*3,15,1);D>4)<<24>>24,v[A++]=((n&15)<<4|i>>2&15)<<24>>24,v[A++]=(i<<6|r)<<24>>24}return!JM(u=o[p++])||!JM(a=o[p++])?null:(t=Zl[u],n=Zl[a],l=o[p++],d=o[p++],Zl[l]==-1||Zl[d]==-1?l==61&&d==61?(n&15)!=0?null:(z=oe(Ps,vv,25,D*3+1,15,1),bc(v,0,z,0,D*3),z[A]=(t<<2|n>>4)<<24>>24,z):l!=61&&d==61?(i=Zl[l],(i&3)!=0?null:(z=oe(Ps,vv,25,D*3+2,15,1),bc(v,0,z,0,D*3),z[A++]=(t<<2|n>>4)<<24>>24,z[A]=((n&15)<<4|i>>2&15)<<24>>24,z)):null:(i=Zl[l],r=Zl[d],v[A++]=(t<<2|n>>4)<<24>>24,v[A++]=((n&15)<<4|i>>2&15)<<24>>24,v[A++]=(i<<6|r)<<24>>24,v))}function wHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be;for(Wt(t,BQe,1),L=c(B(e,(Oe(),zh)),218),r=new q(e.b);r.a=2){for(N=!0,A=new q(o.j),n=c(K(A),11),D=null;A.a0&&(r=c(Ne(z.c.a,Pe-1),10),u=e.i[r.p],Ve=g.Math.ceil(Am(e.n,r,z)),o=be.a.e-z.d.d-(u.a.e+r.o.b+r.d.a)-Ve),d=Ii,Pe0&&Ae.a.e.e-Ae.a.a-(Ae.b.e.e-Ae.b.a)<0,L=ne.a.e.e-ne.a.a-(ne.b.e.e-ne.b.a)<0&&Ae.a.e.e-Ae.a.a-(Ae.b.e.e-Ae.b.a)>0,D=ne.a.e.e+ne.b.aAe.b.e.e+Ae.a.a,ue=0,!N&&!L&&(A?o+v>0?ue=v:d-i>0&&(ue=i):D&&(o+a>0?ue=a:d-ie>0&&(ue=ie))),be.a.e+=ue,be.b&&(be.d.e+=ue),!1))}function nJe(e,t,n){var i,r,o,u,a,l,d,p,v,A;if(i=new Ru(t.qf().a,t.qf().b,t.rf().a,t.rf().b),r=new zy,e.c)for(u=new q(t.wf());u.ad&&(i.a+=sDe(oe(Yu,vf,25,-d,15,1))),i.a+="Is",af(l,is(32))>=0)for(r=0;r=i.o.b/2}else ie=!v;ie?(Y=c(B(i,(ye(),X2)),15),Y?A?o=Y:(r=c(B(i,V2),15),r?Y.gc()<=r.gc()?o=Y:o=r:(o=new Se,pe(i,V2,o))):(o=new Se,pe(i,X2,o))):(r=c(B(i,(ye(),V2)),15),r?v?o=r:(Y=c(B(i,X2),15),Y?r.gc()<=Y.gc()?o=r:o=Y:(o=new Se,pe(i,X2,o))):(o=new Se,pe(i,V2,o))),o.Fc(e),pe(e,(ye(),SR),n),t.d==n?(br(t,null),n.e.c.length+n.g.c.length==0&&Bo(n,null),fjt(n)):(Rr(t,null),n.e.c.length+n.g.c.length==0&&Bo(n,null)),na(t.a)}function _Ht(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti;for(ie=new _r(e.b,0),p=t.Kc(),L=0,d=c(p.Pb(),19).a,be=0,n=new er,Ae=new Eh;ie.b=e.a&&(i=c$t(e,ie),p=g.Math.max(p,i.b),ue=g.Math.max(ue,i.d),Ee(a,new yr(ie,i)));for(Ve=new Se,d=0;d0),z.a.Xb(z.c=--z.b),et=new ta(e.b),Np(z,et),Lt(z.b0?(d=0,z&&(d+=a),d+=(et-1)*u,ne&&(d+=a),Ve&&ne&&(d=g.Math.max(d,oNt(ne,u,ie,Ae))),d0){for(A=p<100?null:new i1(p),d=new bre(t),L=d.g,Y=oe(Qt,_n,25,p,15,1),i=0,ue=new d0(p),r=0;r=0;)if(D!=null?$n(D,L[l]):le(D)===le(L[l])){Y.length<=i&&(z=Y,Y=oe(Qt,_n,25,2*Y.length,15,1),bc(z,0,Y,0,i)),Y[i++]=r,on(ue,L[l]);break e}if(D=D,le(D)===le(a))break}}if(d=ue,L=ue.g,p=i,i>Y.length&&(z=Y,Y=oe(Qt,_n,25,i,15,1),bc(z,0,Y,0,i)),i>0){for(ne=!0,o=0;o=0;)v2(e,Y[u]);if(i!=p){for(r=p;--r>=i;)v2(d,r);z=Y,Y=oe(Qt,_n,25,i,15,1),bc(z,0,Y,0,i)}t=d}}}else for(t=iOt(e,t),r=e.i;--r>=0;)t.Hc(e.g[r])&&(v2(e,r),ne=!0);if(ne){if(Y!=null){for(n=t.gc(),v=n==1?k5(e,4,t.Kc().Pb(),null,Y[0],N):k5(e,6,t,Y,Y[0],N),A=n<100?null:new i1(n),r=t.Kc();r.Ob();)D=r.Pb(),A=vte(e,c(D,72),A);A?(A.Ei(v),A.Fi()):Bn(e.e,v)}else{for(A=p_t(t.gc()),r=t.Kc();r.Ob();)D=r.Pb(),A=vte(e,c(D,72),A);A&&A.Fi()}return!0}else return!1}function CHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;for(n=new Aze(t),n.a||aBt(t),d=lFt(t),l=new u0,z=new PWe,N=new q(t.a);N.a0||n.o==Wl&&r0?(v=c(Ne(A.c.a,u-1),10),Ve=Am(e.b,A,v),z=A.n.b-A.d.d-(v.n.b+v.o.b+v.d.a+Ve)):z=A.n.b-A.d.d,d=g.Math.min(z,d),uu?ME(e,t,n):ME(e,n,t),ru?1:0}return i=c(B(t,(ye(),hc)),19).a,o=c(B(n,hc),19).a,i>o?ME(e,t,n):ME(e,n,t),io?1:0}function Due(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie;if(Be(Fe(Ke(t,(kn(),Ex)))))return st(),st(),Qr;if(d=(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i!=0,v=gRt(t),p=!v.dc(),d||p){if(r=c(Ke(t,j4),149),!r)throw V(new ym("Resolved algorithm is not set; apply a LayoutAlgorithmResolver before computing layout."));if(ie=tee(r,(_E(),xx)),fze(t),!d&&p&&!ie)return st(),st(),Qr;if(l=new Se,le(Ke(t,qv))===le((Rh(),kd))&&(tee(r,kx)||tee(r,Dx)))for(D=UWe(e,t),L=new wi,qr(L,(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));L.b!=0;)A=c(L.b==0?null:(Lt(L.b!=0),Fu(L,L.a.a)),33),fze(A),Y=le(Ke(A,qv))===le(XP),Y||Fg(A,GP)&&!bie(r,Ke(A,j4))?(a=Due(e,A,n,i),Hi(l,a),ao(A,qv,XP),lYe(A)):qr(L,(!A.a&&(A.a=new Me(Ei,A,10,11)),A.a));else for(D=(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i,u=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));u.e!=u.i.gc();)o=c(Vt(u),33),a=Due(e,o,n,i),Hi(l,a),lYe(o);for(z=new q(l);z.a=0?D=b2(a):D=II(b2(a)),e.Ye(_4,D)),d=new Tr,A=!1,e.Xe(ep)?(zee(d,c(e.We(ep),8)),A=!0):t3t(d,u.a/2,u.b/2),D.g){case 4:pe(p,zc,(Ku(),K1)),pe(p,MR,(zg(),jv)),p.o.b=u.b,N<0&&(p.o.a=-N),Ji(v,(Ie(),jt)),A||(d.a=u.a),d.a-=u.a;break;case 2:pe(p,zc,(Ku(),xw)),pe(p,MR,(zg(),d4)),p.o.b=u.b,N<0&&(p.o.a=-N),Ji(v,(Ie(),Mt)),A||(d.a=0);break;case 1:pe(p,gb,(Oh(),Ov)),p.o.a=u.a,N<0&&(p.o.b=-N),Ji(v,(Ie(),Yt)),A||(d.b=u.b),d.b-=u.b;break;case 3:pe(p,gb,(Oh(),z2)),p.o.a=u.a,N<0&&(p.o.b=-N),Ji(v,(Ie(),_t)),A||(d.b=0)}if(zee(v.n,d),pe(p,ep,d),t==Mb||t==ch||t==Ic){if(L=0,t==Mb&&e.Xe(Td))switch(D.g){case 1:case 2:L=c(e.We(Td),19).a;break;case 3:case 4:L=-c(e.We(Td),19).a}else switch(D.g){case 4:case 2:L=o.b,t==ch&&(L/=r.b);break;case 1:case 3:L=o.a,t==ch&&(L/=r.a)}pe(p,J0,L)}return pe(p,Zo,D),p}function jHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et;if(n=ge(Te(B(e.a.j,(Oe(),Gge)))),n<-1||!e.a.i||Wy(c(B(e.a.o,ji),98))||qo(e.a.o,(Ie(),jt)).gc()<2&&qo(e.a.o,Mt).gc()<2)return!0;if(e.a.c.Rf())return!1;for(be=0,ue=0,ne=new Se,l=e.a.e,d=0,p=l.length;d=n}function AHt(){gZ();function e(i){var r=this;this.dispatch=function(o){var u=o.data;switch(u.cmd){case"algorithms":var a=Eoe((st(),new W3(new yh(Z1.b))));i.postMessage({id:u.id,data:a});break;case"categories":var l=Eoe((st(),new W3(new yh(Z1.c))));i.postMessage({id:u.id,data:l});break;case"options":var d=Eoe((st(),new W3(new yh(Z1.d))));i.postMessage({id:u.id,data:d});break;case"register":NKt(u.algorithms),i.postMessage({id:u.id});break;case"layout":w$t(u.graph,u.layoutOptions||{},u.options||{}),i.postMessage({id:u.id,data:u.graph});break}},this.saveDispatch=function(o){try{r.dispatch(o)}catch(u){i.postMessage({id:o.data.id,error:u})}}}function t(i){var r=this;this.dispatcher=new e({postMessage:function(o){r.onmessage({data:o})}}),this.postMessage=function(o){setTimeout(function(){r.dispatcher.saveDispatch({data:o})},0)}}if(typeof document===iz&&typeof self!==iz){var n=new e(self);self.onmessage=n.saveDispatch}else typeof w!==iz&&w.exports&&(Object.defineProperty(m,"__esModule",{value:!0}),w.exports={default:t,Worker:t})}function OHt(e){e.N||(e.N=!0,e.b=Xo(e,0),_i(e.b,0),_i(e.b,1),_i(e.b,2),e.bb=Xo(e,1),_i(e.bb,0),_i(e.bb,1),e.fb=Xo(e,2),_i(e.fb,3),_i(e.fb,4),oi(e.fb,5),e.qb=Xo(e,3),_i(e.qb,0),oi(e.qb,1),oi(e.qb,2),_i(e.qb,3),_i(e.qb,4),oi(e.qb,5),_i(e.qb,6),e.a=On(e,4),e.c=On(e,5),e.d=On(e,6),e.e=On(e,7),e.f=On(e,8),e.g=On(e,9),e.i=On(e,10),e.j=On(e,11),e.k=On(e,12),e.n=On(e,13),e.o=On(e,14),e.p=On(e,15),e.q=On(e,16),e.s=On(e,17),e.r=On(e,18),e.t=On(e,19),e.u=On(e,20),e.v=On(e,21),e.w=On(e,22),e.B=On(e,23),e.A=On(e,24),e.C=On(e,25),e.D=On(e,26),e.F=On(e,27),e.G=On(e,28),e.H=On(e,29),e.J=On(e,30),e.I=On(e,31),e.K=On(e,32),e.M=On(e,33),e.L=On(e,34),e.P=On(e,35),e.Q=On(e,36),e.R=On(e,37),e.S=On(e,38),e.T=On(e,39),e.U=On(e,40),e.V=On(e,41),e.X=On(e,42),e.W=On(e,43),e.Y=On(e,44),e.Z=On(e,45),e.$=On(e,46),e._=On(e,47),e.ab=On(e,48),e.cb=On(e,49),e.db=On(e,50),e.eb=On(e,51),e.gb=On(e,52),e.hb=On(e,53),e.ib=On(e,54),e.jb=On(e,55),e.kb=On(e,56),e.lb=On(e,57),e.mb=On(e,58),e.nb=On(e,59),e.ob=On(e,60),e.pb=On(e,61))}function DHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;if(ie=0,t.f.a==0)for(z=new q(e);z.ad&&(pt(d,t.c.length),c(t.c[d],200)).a.c.length==0;)Jc(t,(pt(d,t.c.length),t.c[d]));if(!l){--o;continue}if(mBt(t,p,r,l,A,n,d,i)){v=!0;continue}if(A){if(M$t(t,p,r,l,n,d,i)){v=!0;continue}else if(Yre(p,r)){r.c=!0,v=!0;continue}}else if(Yre(p,r)){r.c=!0,v=!0;continue}if(v)continue}if(Yre(p,r)){r.c=!0,v=!0,l&&(l.k=!1);continue}else I7(r.q)}return v}function mH(e,t,n,i,r,o,u){var a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi;for(N=0,At=0,d=new q(e.b);d.aN&&(o&&(Tg(Pe,D),Tg(Ve,Ce(p.b-1)),Ee(e.d,L),a.c=oe(xt,xe,1,0,5,1)),ti=n.b,Zi+=D+t,D=0,v=g.Math.max(v,n.b+n.c+Jt)),a.c[a.c.length]=l,Sze(l,ti,Zi),v=g.Math.max(v,ti+Jt+n.c),D=g.Math.max(D,A),ti+=Jt+t,L=l;if(Hi(e.a,a),Ee(e.d,c(Ne(a,a.c.length-1),157)),v=g.Math.max(v,i),Ot=Zi+D+n.a,Ot1&&(u=g.Math.min(u,g.Math.abs(c(hl(a.a,1),8).b-p.b)))));else for(N=new q(t.j);N.ar&&(o=A.a-r,u=Fn,i.c=oe(xt,xe,1,0,5,1),r=A.a),A.a>=r&&(i.c[i.c.length]=a,a.a.b>1&&(u=g.Math.min(u,g.Math.abs(c(hl(a.a,a.a.b-2),8).b-A.b)))));if(i.c.length!=0&&o>t.o.a/2&&u>t.o.b/2){for(D=new gc,Bo(D,t),Ji(D,(Ie(),_t)),D.n.a=t.o.a/2,Y=new gc,Bo(Y,t),Ji(Y,Yt),Y.n.a=t.o.a/2,Y.n.b=t.o.b,l=new q(i);l.a=d.b?Rr(a,Y):Rr(a,D)):(d=c(T4t(a.a),8),z=a.a.b==0?Ol(a.c):c(Z9(a.a),8),z.b>=d.b?br(a,Y):br(a,D)),v=c(B(a,(Oe(),yo)),74),v&&nw(v,d,!0);t.n.a=r-t.o.a/2}}function NHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi,ju,Sa;if(At=null,Jt=t,Ot=lFe(e,cFe(n),Jt),H5(Ot,Ih(Jt,If)),ti=c(Bm(e.g,_2(Ch(Jt,IV))),33),A=Ch(Jt,"sourcePort"),i=null,A&&(i=_2(A)),Zi=c(Bm(e.j,i),118),!ti)throw a=fE(Jt),L="An edge must have a source node (edge id: '"+a,N=L+YE,V(new sf(N));if(Zi&&!df(jl(Zi),ti))throw l=Ih(Jt,If),z="The source port of an edge must be a port of the edge's source node (edge id: '"+l,Y=z+YE,V(new sf(Y));if(Ve=(!Ot.b&&(Ot.b=new dt(Ut,Ot,4,7)),Ot.b),o=null,Zi?o=Zi:o=ti,on(Ve,o),ju=c(Bm(e.g,_2(Ch(Jt,Ofe))),33),D=Ch(Jt,"targetPort"),r=null,D&&(r=_2(D)),Sa=c(Bm(e.j,r),118),!ju)throw v=fE(Jt),ie="An edge must have a target node (edge id: '"+v,ne=ie+YE,V(new sf(ne));if(Sa&&!df(jl(Sa),ju))throw d=Ih(Jt,If),ue="The target port of an edge must be a port of the edge's target node (edge id: '"+d,be=ue+YE,V(new sf(be));if(et=(!Ot.c&&(Ot.c=new dt(Ut,Ot,5,8)),Ot.c),u=null,Sa?u=Sa:u=ju,on(et,u),(!Ot.b&&(Ot.b=new dt(Ut,Ot,4,7)),Ot.b).i==0||(!Ot.c&&(Ot.c=new dt(Ut,Ot,5,8)),Ot.c).i==0)throw p=Ih(Jt,If),Pe=net+p,Ae=Pe+YE,V(new sf(Ae));return x7(Jt,Ot),Ixt(Jt,Ot),At=cK(e,Jt,Ot),At}function sJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At;return v=$Bt(Wc(e,(Ie(),Jl)),t),L=Xm(Wc(e,Xa),t),ue=Xm(Wc(e,Cu),t),Ve=T7(Wc(e,wa),t),A=T7(Wc(e,Uu),t),ie=Xm(Wc(e,Ja),t),N=Xm(Wc(e,Ds),t),Pe=Xm(Wc(e,Iu),t),be=Xm(Wc(e,Wu),t),et=T7(Wc(e,Vc),t),Y=Xm(Wc(e,cs),t),ne=Xm(Wc(e,ks),t),Ae=Xm(Wc(e,os),t),At=T7(Wc(e,ss),t),D=T7(Wc(e,Ss),t),z=Xm(Wc(e,Tc),t),n=qm(U(G(gr,1),lo,25,15,[ie.a,Ve.a,Pe.a,At.a])),i=qm(U(G(gr,1),lo,25,15,[L.a,v.a,ue.a,z.a])),r=Y.a,o=qm(U(G(gr,1),lo,25,15,[N.a,A.a,be.a,D.a])),d=qm(U(G(gr,1),lo,25,15,[ie.b,L.b,N.b,ne.b])),l=qm(U(G(gr,1),lo,25,15,[Ve.b,v.b,A.b,z.b])),p=et.b,a=qm(U(G(gr,1),lo,25,15,[Pe.b,ue.b,be.b,Ae.b])),fd(Wc(e,Jl),n+r,d+p),fd(Wc(e,Tc),n+r,d+p),fd(Wc(e,Xa),n+r,0),fd(Wc(e,Cu),n+r,d+p+l),fd(Wc(e,wa),0,d+p),fd(Wc(e,Uu),n+r+i,d+p),fd(Wc(e,Ds),n+r+i,0),fd(Wc(e,Iu),0,d+p+l),fd(Wc(e,Wu),n+r+i,d+p+l),fd(Wc(e,Vc),0,d),fd(Wc(e,cs),n,0),fd(Wc(e,os),0,d+p+l),fd(Wc(e,Ss),n+r+i,0),u=new Tr,u.a=qm(U(G(gr,1),lo,25,15,[n+i+r+o,et.a,ne.a,Ae.a])),u.b=qm(U(G(gr,1),lo,25,15,[d+l+p+a,Y.b,At.b,D.b])),u}function FHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;for(N=new Se,A=new q(e.d.b);A.ar.d.d+r.d.a?p.f.d=!0:(p.f.d=!0,p.f.a=!0))),i.b!=i.d.c&&(t=n);p&&(o=c(Bt(e.f,u.d.i),57),t.bo.d.d+o.d.a?p.f.d=!0:(p.f.d=!0,p.f.a=!0))}for(a=new Kt(Ht(ko(D).a.Kc(),new j));dn(a);)u=c(rn(a),17),u.a.b!=0&&(t=c(Z9(u.a),8),u.d.j==(Ie(),_t)&&(z=new E6(t,new $e(t.a,r.d.d),r,u),z.f.a=!0,z.a=u.d,N.c[N.c.length]=z),u.d.j==Yt&&(z=new E6(t,new $e(t.a,r.d.d+r.d.a),r,u),z.f.d=!0,z.a=u.d,N.c[N.c.length]=z))}return N}function BHt(e,t,n){var i,r,o,u,a,l,d,p,v;if(Wt(n,"Network simplex node placement",1),e.e=t,e.n=c(B(t,(ye(),Rv)),304),nKt(e),L7t(e),Di($o(new ht(null,new bt(e.e.b,16)),new fSe),new eje(e)),Di(si($o(si($o(new ht(null,new bt(e.e.b,16)),new PSe),new MSe),new CSe),new ISe),new ZTe(e)),Be(Fe(B(e.e,(Oe(),MP))))&&(u=yc(n,1),Wt(u,"Straight Edges Pre-Processing",1),_qt(e),qt(u)),w8t(e.f),o=c(B(t,TP),19).a*e.f.a.c.length,Xq(sZ(uZ(sB(e.f),o),!1),yc(n,1)),e.d.a.gc()!=0){for(u=yc(n,1),Wt(u,"Flexible Where Space Processing",1),a=c(Qb(M8(Yc(new ht(null,new bt(e.f.a,16)),new hSe),new oSe)),19).a,l=c(Qb(P8(Yc(new ht(null,new bt(e.f.a,16)),new dSe),new cSe)),19).a,d=l-a,p=Jb(new Cg,e.f),v=Jb(new Cg,e.f),$a(Aa(ja(Ta(Oa(new Zu,2e4),d),p),v)),Di(si(si(TB(e.i),new gSe),new bSe),new Jxe(a,p,d,v)),r=e.d.a.ec().Kc();r.Ob();)i=c(r.Pb(),213),i.g=1;Xq(sZ(uZ(sB(e.f),o),!1),yc(u,1)),qt(u)}Be(Fe(B(t,MP)))&&(u=yc(n,1),Wt(u,"Straight Edges Post-Processing",1),Ckt(e),qt(u)),oqt(e),e.e=null,e.f=null,e.i=null,e.c=null,Is(e.k),e.j=null,e.a=null,e.o=null,e.d.a.$b(),qt(n)}function $Ht(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be;for(a=new q(e.a.b);a.a0)if(i=v.gc(),d=xi(g.Math.floor((i+1)/2))-1,r=xi(g.Math.ceil((i+1)/2))-1,t.o==Wl)for(p=r;p>=d;p--)t.a[ue.p]==ue&&(N=c(v.Xb(p),46),L=c(N.a,10),!_h(n,N.b)&&D>e.b.e[L.p]&&(t.a[L.p]=ue,t.g[ue.p]=t.g[L.p],t.a[ue.p]=t.g[ue.p],t.f[t.g[ue.p].p]=(Pt(),!!(Be(t.f[t.g[ue.p].p])&ue.k==(Dt(),ur))),D=e.b.e[L.p]));else for(p=d;p<=r;p++)t.a[ue.p]==ue&&(Y=c(v.Xb(p),46),z=c(Y.a,10),!_h(n,Y.b)&&D=L&&(ie>L&&(D.c=oe(xt,xe,1,0,5,1),L=ie),D.c[D.c.length]=u);D.c.length!=0&&(A=c(Ne(D,S7(t,D.c.length)),128),Ot.a.Bc(A)!=null,A.s=N++,jse(A,et,Pe),D.c=oe(xt,xe,1,0,5,1))}for(ue=e.c.length+1,a=new q(e);a.aAt.s&&(nu(n),Jc(At.i,i),i.c>0&&(i.a=At,Ee(At.t,i),i.b=Ae,Ee(Ae.i,i)))}function kue(e){var t,n,i,r,o;switch(t=e.c,t){case 11:return e.Ml();case 12:return e.Ol();case 14:return e.Ql();case 15:return e.Tl();case 16:return e.Rl();case 17:return e.Ul();case 21:return xn(e),Ln(),Ln(),dM;case 10:switch(e.a){case 65:return e.yl();case 90:return e.Dl();case 122:return e.Kl();case 98:return e.El();case 66:return e.zl();case 60:return e.Jl();case 62:return e.Hl()}}switch(o=xHt(e),t=e.c,t){case 3:return e.Zl(o);case 4:return e.Xl(o);case 5:return e.Yl(o);case 0:if(e.a==123&&e.d=48&&t<=57){for(i=t-48;r=48&&t<=57;)if(i=i*10+t-48,i<0)throw V(new an(gn((un(),Nfe))))}else throw V(new an(gn((un(),Det))));if(n=i,t==44){if(r>=e.j)throw V(new an(gn((un(),Ret))));if((t=Pr(e.i,r++))>=48&&t<=57){for(n=t-48;r=48&&t<=57;)if(n=n*10+t-48,n<0)throw V(new an(gn((un(),Nfe))));if(i>n)throw V(new an(gn((un(),xet))))}else n=-1}if(t!=125)throw V(new an(gn((un(),ket))));e.sl(r)?(o=(Ln(),Ln(),new Gp(9,o)),e.d=r+1):(o=(Ln(),Ln(),new Gp(3,o)),e.d=r),o.dm(i),o.cm(n),xn(e)}}return o}function uJe(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot;for(N=new Dc(t.b),ue=new Dc(t.b),A=new Dc(t.b),Ve=new Dc(t.b),z=new Dc(t.b),Ae=Mn(t,0);Ae.b!=Ae.d.c;)for(be=c(Pn(Ae),11),a=new q(be.g);a.a0,Y=be.g.c.length>0,d&&Y?A.c[A.c.length]=be:d?N.c[N.c.length]=be:Y&&(ue.c[ue.c.length]=be);for(L=new q(N);L.a1)for(L=new Vy((!e.a&&(e.a=new Me(mi,e,6,6)),e.a));L.e!=L.i.gc();)l6(L);for(u=c(ee((!e.a&&(e.a=new Me(mi,e,6,6)),e.a),0),202),z=ti,ti>be+ue?z=be+ue:tiPe+N?Y=Pe+N:Zibe-ue&&zPe-N&&Yti+Jt?Ve=ti+Jt:beZi+Ae?et=Zi+Ae:Peti-Jt&&VeZi-Ae&&etn&&(A=n-1),D=eA+$s(t,24)*vT*v-v/2,D<0?D=1:D>i&&(D=i-1),r=(Hb(),l=new OA,l),jO(r,A),AO(r,D),on((!u.a&&(u.a=new qi(ma,u,5)),u.a),r)}function Oe(){Oe=Z,KU=(kn(),jlt),_be=Alt,hj=hwe,za=Olt,Z2=dwe,tp=Dlt,Hw=gwe,S4=bwe,P4=pwe,qU=Px,np=Pb,HU=klt,IP=vwe,KR=r3,fj=(Lue(),Cct),Lv=Ict,vb=Tct,Nv=jct,hst=new Yr(Sx,Ce(0)),E4=Sct,ybe=Pct,Q2=Mct,jbe=Jct,Ebe=Dct,Sbe=xct,VU=qct,Pbe=Fct,Mbe=$ct,qR=tst,GU=Qct,Ibe=Uct,Cbe=Vct,Tbe=Yct,Z0=wct,CP=mct,LU=xot,Qge=Not,bbe=new Yb(12),gbe=new Yr(Sb,bbe),Yge=(Lh(),D4),zh=new Yr(qpe,Yge),$w=new Yr(zs,0),dst=new Yr(eY,Ce(1)),TR=new Yr(n3,KE),mb=Ex,ji=UP,_4=Gv,ost=Aj,Of=ylt,Fw=qv,gst=new Yr(tY,(Pt(),!0)),Bw=Oj,pb=UW,wb=Eb,$R=G1,$U=_x,Wge=(eo(),ih),Pu=new Yr(rp,Wge),Q0=zv,FR=Jpe,Kw=Uw,fst=ZW,mbe=lwe,wbe=(Um(),Nj),new Yr(owe,wbe),ust=YW,ast=XW,lst=JW,sst=WW,zU=Oct,abe=oct,FU=rct,TP=Act,zc=Jot,Nw=Iot,PP=Cot,Lw=dot,Vge=got,DU=mot,lj=bot,kU=Pot,lbe=cct,fbe=sct,rbe=Vot,BR=_ct,BU=lct,NU=$ot,dbe=bct,Jge=kot,xU=Rot,OU=vx,hbe=uct,AR=cot,qge=oot,jR=rot,tbe=Hot,ebe=qot,nbe=zot,v4=Vv,yo=Hv,Id=zpe,Df=GW,RU=VW,Gge=yot,Td=QW,SP=Slt,xR=Plt,ep=swe,pbe=Mlt,y4=Clt,cbe=Zot,sbe=tct,qw=i3,jU=iot,ube=ict,RR=Aot,kR=jot,NR=Dj,obe=Wot,MP=hct,dj=wwe,Uge=Tot,vbe=Ect,Xge=Oot,cst=Xot,rst=Eot,ibe=Wpe,LR=Qot,DR=Sot,q1=hot,zge=lot,OR=uot,Hge=aot,AU=fot,J2=sot,Zge=Kot}function yH(e,t){cH();var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae;if(ne=e.e,p=e.d,r=e.a,ne==0)switch(t){case 0:return"0";case 1:return LE;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return Y=new n1,Y.a+="0E",Y.a+=-t,Y.a}if(N=p*10+1+7,z=oe(Yu,vf,25,N+1,15,1),n=N,p==1)if(o=r[0],o<0){Ae=Xi(o,no);do v=Ae,Ae=BI(Ae,10),z[--n]=48+tn(P1(v,jr(Ae,10)))&Ni;while(uc(Ae,0)!=0)}else{Ae=o;do v=Ae,Ae=Ae/10|0,z[--n]=48+(v-Ae*10)&Ni;while(Ae!=0)}else{ue=oe(Qt,_n,25,p,15,1),Pe=p,bc(r,0,ue,0,Pe);e:for(;;){for(ie=0,a=Pe-1;a>=0;a--)be=xr(Ph(ie,32),Xi(ue[a],no)),D=J7t(be),ue[a]=tn(D),ie=tn(h1(D,32));L=tn(ie),A=n;do z[--n]=48+L%10&Ni;while((L=L/10|0)!=0&&n!=0);for(i=9-A+n,u=0;u0;u++)z[--n]=48;for(l=Pe-1;ue[l]==0;l--)if(l==0)break e;Pe=l+1}for(;z[n]==48;)++n}return d=ne<0,d&&(z[--n]=45),pf(z,n,N-n)}function fJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe;switch(e.c=t,e.g=new en,n=(Ap(),new Ip(e.c)),i=new BA(n),poe(i),ne=ln(Ke(e.c,(KI(),fpe))),l=c(Ke(e.c,LW),316),be=c(Ke(e.c,NW),429),u=c(Ke(e.c,upe),482),ue=c(Ke(e.c,xW),430),e.j=ge(Te(Ke(e.c,zat))),a=e.a,l.g){case 0:a=e.a;break;case 1:a=e.b;break;case 2:a=e.i;break;case 3:a=e.e;break;case 4:a=e.f;break;default:throw V(new St(JD+(l.f!=null?l.f:""+l.g)))}if(e.d=new xLe(a,be,u),pe(e.d,(W_(),lP),Fe(Ke(e.c,qat))),e.d.c=Be(Fe(Ke(e.c,ape))),$8(e.c).i==0)return e.d;for(v=new $t($8(e.c));v.e!=v.i.gc();){for(p=c(Vt(v),33),D=p.g/2,A=p.f/2,Pe=new $e(p.i+D,p.j+A);tu(e.g,Pe);)xp(Pe,(g.Math.random()-.5)*Ef,(g.Math.random()-.5)*Ef);N=c(Ke(p,(kn(),Dj)),142),z=new QLe(Pe,new Ru(Pe.a-D-e.j/2-N.b,Pe.b-A-e.j/2-N.d,p.g+e.j+(N.b+N.c),p.f+e.j+(N.d+N.a))),Ee(e.d.i,z),Kn(e.g,Pe,new yr(z,p))}switch(ue.g){case 0:if(ne==null)e.d.d=c(Ne(e.d.i,0),65);else for(ie=new q(e.d.i);ie.a1&&Ri(p,Y,p.c.b,p.c),MO(r)));Y=ie}return p}function UHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi,ju,Sa,ef;for(Wt(n,"Greedy cycle removal",1),ne=t.a,ef=ne.c.length,e.a=oe(Qt,_n,25,ef,15,1),e.c=oe(Qt,_n,25,ef,15,1),e.b=oe(Qt,_n,25,ef,15,1),d=0,Y=new q(ne);Y.a0?Jt+1:1);for(u=new q(Pe.g);u.a0?Jt+1:1)}e.c[d]==0?Cn(e.e,N):e.a[d]==0&&Cn(e.f,N),++d}for(L=-1,D=1,v=new Se,e.d=c(B(t,(ye(),Y2)),230);ef>0;){for(;e.e.b!=0;)Zi=c(lB(e.e),10),e.b[Zi.p]=L--,nue(e,Zi),--ef;for(;e.f.b!=0;)ju=c(lB(e.f),10),e.b[ju.p]=D++,nue(e,ju),--ef;if(ef>0){for(A=Ar,ie=new q(ne);ie.a=A&&(ue>A&&(v.c=oe(xt,xe,1,0,5,1),A=ue),v.c[v.c.length]=N));p=e.Zf(v),e.b[p.p]=D++,nue(e,p),--ef}}for(ti=ne.c.length+1,d=0;de.b[Sa]&&(D0(i,!0),pe(t,oj,(Pt(),!0)));e.a=null,e.c=null,e.b=null,na(e.f),na(e.e),qt(n)}function dJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;for(i=new Se,a=new Se,z=t/2,D=e.gc(),r=c(e.Xb(0),8),Y=c(e.Xb(1),8),L=Rq(r.a,r.b,Y.a,Y.b,z),Ee(i,(pt(0,L.c.length),c(L.c[0],8))),Ee(a,(pt(1,L.c.length),c(L.c[1],8))),d=2;d=0;l--)Cn(n,(pt(l,u.c.length),c(u.c[l],8)));return n}function WHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;if(u=!0,v=null,i=null,r=null,t=!1,D=_ft,d=null,o=null,a=0,l=$K(e,a,ime,rme),l=0&&rt(e.substr(a,2),"//")?(a+=2,l=$K(e,a,oM,cM),i=e.substr(a,l-a),a=l):v!=null&&(a==e.length||(fn(a,e.length),e.charCodeAt(a)!=47))&&(u=!1,l=Ree(e,is(35),a),l==-1&&(l=e.length),i=e.substr(a,l-a),a=l);if(!n&&a0&&Pr(p,p.length-1)==58&&(r=p,a=l)),a=e.j){e.a=-1,e.c=1;return}if(t=Pr(e.i,e.d++),e.a=t,e.b==1){switch(t){case 92:if(i=10,e.d>=e.j)throw V(new an(gn((un(),rk))));e.a=Pr(e.i,e.d++);break;case 45:(e.e&512)==512&&e.d=e.j||Pr(e.i,e.d)!=63)break;if(++e.d>=e.j)throw V(new an(gn((un(),FV))));switch(t=Pr(e.i,e.d++),t){case 58:i=13;break;case 61:i=14;break;case 33:i=15;break;case 91:i=19;break;case 62:i=18;break;case 60:if(e.d>=e.j)throw V(new an(gn((un(),FV))));if(t=Pr(e.i,e.d++),t==61)i=16;else if(t==33)i=17;else throw V(new an(gn((un(),det))));break;case 35:for(;e.d=e.j)throw V(new an(gn((un(),rk))));e.a=Pr(e.i,e.d++);break;default:i=0}e.c=i}function XHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt;if(Ae=c(B(e,(Oe(),ji)),98),Ae!=(wr(),Xl)&&Ae!=Y1){for(L=e.b,D=L.c.length,p=new Dc((pu(D+2,MH),PO(xr(xr(5,D+2),(D+2)/10|0)))),N=new Dc((pu(D+2,MH),PO(xr(xr(5,D+2),(D+2)/10|0)))),Ee(p,new en),Ee(p,new en),Ee(N,new Se),Ee(N,new Se),Pe=new Se,t=0;t=be||!w9t(Y,i))&&(i=uNe(t,p)),po(Y,i),o=new Kt(Ht(ko(Y).a.Kc(),new j));dn(o);)r=c(rn(o),17),!e.a[r.p]&&(N=r.c.i,--e.e[N.p],e.e[N.p]==0&&R_(wE(D,N)));for(d=p.c.length-1;d>=0;--d)Ee(t.b,(pt(d,p.c.length),c(p.c[d],29)));t.a.c=oe(xt,xe,1,0,5,1),qt(n)}function gJe(e){var t,n,i,r,o,u,a,l,d;for(e.b=1,xn(e),t=null,e.c==0&&e.a==94?(xn(e),t=(Ln(),Ln(),new du(4)),_c(t,0,JE),a=new du(4)):a=(Ln(),Ln(),new du(4)),r=!0;(d=e.c)!=1;){if(d==0&&e.a==93&&!r){t&&(I6(t,a),a=t);break}if(n=e.a,i=!1,d==10)switch(n){case 100:case 68:case 119:case 87:case 115:case 83:pw(a,CE(n)),i=!0;break;case 105:case 73:case 99:case 67:n=(pw(a,CE(n)),-1),n<0&&(i=!0);break;case 112:case 80:if(l=lse(e,n),!l)throw V(new an(gn((un(),BV))));pw(a,l),i=!0;break;default:n=zse(e)}else if(d==24&&!r){if(t&&(I6(t,a),a=t),o=gJe(e),I6(a,o),e.c!=0||e.a!=93)throw V(new an(gn((un(),Pet))));break}if(xn(e),!i){if(d==0){if(n==91)throw V(new an(gn((un(),xfe))));if(n==93)throw V(new an(gn((un(),Lfe))));if(n==45&&!r&&e.a!=93)throw V(new an(gn((un(),$V))))}if(e.c!=0||e.a!=45||n==45&&r)_c(a,n,n);else{if(xn(e),(d=e.c)==1)throw V(new an(gn((un(),ok))));if(d==0&&e.a==93)_c(a,n,n),_c(a,45,45);else{if(d==0&&e.a==93||d==24)throw V(new an(gn((un(),$V))));if(u=e.a,d==0){if(u==91)throw V(new an(gn((un(),xfe))));if(u==93)throw V(new an(gn((un(),Lfe))));if(u==45)throw V(new an(gn((un(),$V))))}else d==10&&(u=zse(e));if(xn(e),n>u)throw V(new an(gn((un(),Iet))));_c(a,n,u)}}}r=!1}if(e.c==1)throw V(new an(gn((un(),ok))));return tv(a),M6(a),e.b=0,xn(e),a}function QHt(e){cn(e.c,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#decimal"])),cn(e.d,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#integer"])),cn(e.e,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#boolean"])),cn(e.f,yn,U(G(Re,1),we,2,6,[Or,"EBoolean",Dn,"EBoolean:Object"])),cn(e.i,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#byte"])),cn(e.g,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#hexBinary"])),cn(e.j,yn,U(G(Re,1),we,2,6,[Or,"EByte",Dn,"EByte:Object"])),cn(e.n,yn,U(G(Re,1),we,2,6,[Or,"EChar",Dn,"EChar:Object"])),cn(e.t,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#double"])),cn(e.u,yn,U(G(Re,1),we,2,6,[Or,"EDouble",Dn,"EDouble:Object"])),cn(e.F,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#float"])),cn(e.G,yn,U(G(Re,1),we,2,6,[Or,"EFloat",Dn,"EFloat:Object"])),cn(e.I,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#int"])),cn(e.J,yn,U(G(Re,1),we,2,6,[Or,"EInt",Dn,"EInt:Object"])),cn(e.N,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#long"])),cn(e.O,yn,U(G(Re,1),we,2,6,[Or,"ELong",Dn,"ELong:Object"])),cn(e.Z,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#short"])),cn(e.$,yn,U(G(Re,1),we,2,6,[Or,"EShort",Dn,"EShort:Object"])),cn(e._,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#string"]))}function ZHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt;if(e.c.length==1)return pt(0,e.c.length),c(e.c[0],135);if(e.c.length<=0)return new lO;for(l=new q(e);l.av&&(Ot=0,Jt+=p+Ae,p=0),aLt(be,u,Ot,Jt),t=g.Math.max(t,Ot+Pe.a),p=g.Math.max(p,Pe.b),Ot+=Pe.a+Ae;for(ue=new en,n=new en,et=new q(e);et.axq(o))&&(v=o);for(!v&&(v=(pt(0,z.c.length),c(z.c[0],180))),N=new q(t.b);N.a=-1900?1:0,n>=4?wn(e,U(G(Re,1),we,2,6,[OJe,DJe])[a]):wn(e,U(G(Re,1),we,2,6,["BC","AD"])[a]);break;case 121:U9t(e,n,i);break;case 77:JFt(e,n,i);break;case 107:l=r.q.getHours(),l==0?Vf(e,24,n):Vf(e,l,n);break;case 83:mLt(e,n,r);break;case 69:p=i.q.getDay(),n==5?wn(e,U(G(Re,1),we,2,6,["S","M","T","W","T","F","S"])[p]):n==4?wn(e,U(G(Re,1),we,2,6,[BH,$H,KH,qH,HH,zH,VH])[p]):wn(e,U(G(Re,1),we,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[p]);break;case 97:r.q.getHours()>=12&&r.q.getHours()<24?wn(e,U(G(Re,1),we,2,6,["AM","PM"])[1]):wn(e,U(G(Re,1),we,2,6,["AM","PM"])[0]);break;case 104:v=r.q.getHours()%12,v==0?Vf(e,12,n):Vf(e,v,n);break;case 75:A=r.q.getHours()%12,Vf(e,A,n);break;case 72:D=r.q.getHours(),Vf(e,D,n);break;case 99:L=i.q.getDay(),n==5?wn(e,U(G(Re,1),we,2,6,["S","M","T","W","T","F","S"])[L]):n==4?wn(e,U(G(Re,1),we,2,6,[BH,$H,KH,qH,HH,zH,VH])[L]):n==3?wn(e,U(G(Re,1),we,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[L]):Vf(e,L,1);break;case 76:N=i.q.getMonth(),n==5?wn(e,U(G(Re,1),we,2,6,["J","F","M","A","M","J","J","A","S","O","N","D"])[N]):n==4?wn(e,U(G(Re,1),we,2,6,[TH,jH,AH,OH,C2,DH,kH,RH,xH,LH,NH,FH])[N]):n==3?wn(e,U(G(Re,1),we,2,6,["Jan","Feb","Mar","Apr",C2,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"])[N]):Vf(e,N+1,n);break;case 81:z=i.q.getMonth()/3|0,n<4?wn(e,U(G(Re,1),we,2,6,["Q1","Q2","Q3","Q4"])[z]):wn(e,U(G(Re,1),we,2,6,["1st quarter","2nd quarter","3rd quarter","4th quarter"])[z]);break;case 100:Y=i.q.getDate(),Vf(e,Y,n);break;case 109:d=r.q.getMinutes(),Vf(e,d,n);break;case 115:u=r.q.getSeconds(),Vf(e,u,n);break;case 122:n<4?wn(e,o.c[0]):wn(e,o.c[1]);break;case 118:wn(e,o.b);break;case 90:n<3?wn(e,sRt(o)):n==3?wn(e,lRt(o)):wn(e,fRt(o.a));break;default:return!1}return!0}function xue(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti;if(tYe(t),l=c(ee((!t.b&&(t.b=new dt(Ut,t,4,7)),t.b),0),82),p=c(ee((!t.c&&(t.c=new dt(Ut,t,5,8)),t.c),0),82),a=Co(l),d=Co(p),u=(!t.a&&(t.a=new Me(mi,t,6,6)),t.a).i==0?null:c(ee((!t.a&&(t.a=new Me(mi,t,6,6)),t.a),0),202),Ae=c(Bt(e.a,a),10),Ot=c(Bt(e.a,d),10),Ve=null,Jt=null,Q(l,186)&&(Pe=c(Bt(e.a,l),299),Q(Pe,11)?Ve=c(Pe,11):Q(Pe,10)&&(Ae=c(Pe,10),Ve=c(Ne(Ae.j,0),11))),Q(p,186)&&(At=c(Bt(e.a,p),299),Q(At,11)?Jt=c(At,11):Q(At,10)&&(Ot=c(At,10),Jt=c(Ne(Ot.j,0),11))),!Ae||!Ot)throw V(new NS("The source or the target of edge "+t+" could not be found. This usually happens when an edge connects a node laid out by ELK Layered to a node in another level of hierarchy laid out by either another instance of ELK Layered or another layout algorithm alltogether. The former can be solved by setting the hierarchyHandling option to INCLUDE_CHILDREN."));for(N=new c0,Mo(N,t),pe(N,(ye(),Hn),t),pe(N,(Oe(),yo),null),D=c(B(i,Cc),21),Ae==Ot&&D.Fc((to(),vP)),Ve||(be=(Zr(),Fc),et=null,u&&Tm(c(B(Ae,ji),98))&&(et=new $e(u.j,u.k),fFe(et,KC(t)),KFe(et,n),Jp(d,a)&&(be=Os,Wn(et,Ae.n))),Ve=ZYe(Ae,et,be,i)),Jt||(be=(Zr(),Os),ti=null,u&&Tm(c(B(Ot,ji),98))&&(ti=new $e(u.b,u.c),fFe(ti,KC(t)),KFe(ti,n)),Jt=ZYe(Ot,ti,be,Nr(Ot))),Rr(N,Ve),br(N,Jt),(Ve.e.c.length>1||Ve.g.c.length>1||Jt.e.c.length>1||Jt.g.c.length>1)&&D.Fc((to(),mP)),A=new $t((!t.n&&(t.n=new Me(Lo,t,1,7)),t.n));A.e!=A.i.gc();)if(v=c(Vt(A),137),!Be(Fe(Ke(v,mb)))&&v.a)switch(z=_K(v),Ee(N.b,z),c(B(z,Df),272).g){case 1:case 2:D.Fc((to(),b4));break;case 0:D.Fc((to(),g4)),pe(z,Df,(xl(),A4))}if(o=c(B(i,PP),314),Y=c(B(i,BR),315),r=o==(f2(),nj)||Y==(s6(),QU),u&&(!u.a&&(u.a=new qi(ma,u,5)),u.a).i!=0&&r){for(ie=HI(u),L=new ds,ue=Mn(ie,0);ue.b!=ue.d.c;)ne=c(Pn(ue),8),Cn(L,new go(ne));pe(N,sge,L)}return N}function izt(e){e.gb||(e.gb=!0,e.b=Xo(e,0),_i(e.b,18),oi(e.b,19),e.a=Xo(e,1),_i(e.a,1),oi(e.a,2),oi(e.a,3),oi(e.a,4),oi(e.a,5),e.o=Xo(e,2),_i(e.o,8),_i(e.o,9),oi(e.o,10),oi(e.o,11),oi(e.o,12),oi(e.o,13),oi(e.o,14),oi(e.o,15),oi(e.o,16),oi(e.o,17),oi(e.o,18),oi(e.o,19),oi(e.o,20),oi(e.o,21),oi(e.o,22),oi(e.o,23),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),e.p=Xo(e,3),_i(e.p,2),_i(e.p,3),_i(e.p,4),_i(e.p,5),oi(e.p,6),oi(e.p,7),mo(e.p),mo(e.p),e.q=Xo(e,4),_i(e.q,8),e.v=Xo(e,5),oi(e.v,9),mo(e.v),mo(e.v),mo(e.v),e.w=Xo(e,6),_i(e.w,2),_i(e.w,3),_i(e.w,4),oi(e.w,5),e.B=Xo(e,7),oi(e.B,1),mo(e.B),mo(e.B),mo(e.B),e.Q=Xo(e,8),oi(e.Q,0),mo(e.Q),e.R=Xo(e,9),_i(e.R,1),e.S=Xo(e,10),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),e.T=Xo(e,11),oi(e.T,10),oi(e.T,11),oi(e.T,12),oi(e.T,13),oi(e.T,14),mo(e.T),mo(e.T),e.U=Xo(e,12),_i(e.U,2),_i(e.U,3),oi(e.U,4),oi(e.U,5),oi(e.U,6),oi(e.U,7),mo(e.U),e.V=Xo(e,13),oi(e.V,10),e.W=Xo(e,14),_i(e.W,18),_i(e.W,19),_i(e.W,20),oi(e.W,21),oi(e.W,22),oi(e.W,23),e.bb=Xo(e,15),_i(e.bb,10),_i(e.bb,11),_i(e.bb,12),_i(e.bb,13),_i(e.bb,14),_i(e.bb,15),_i(e.bb,16),oi(e.bb,17),mo(e.bb),mo(e.bb),e.eb=Xo(e,16),_i(e.eb,2),_i(e.eb,3),_i(e.eb,4),_i(e.eb,5),_i(e.eb,6),_i(e.eb,7),oi(e.eb,8),oi(e.eb,9),e.ab=Xo(e,17),_i(e.ab,0),_i(e.ab,1),e.H=Xo(e,18),oi(e.H,0),oi(e.H,1),oi(e.H,2),oi(e.H,3),oi(e.H,4),oi(e.H,5),mo(e.H),e.db=Xo(e,19),oi(e.db,2),e.c=On(e,20),e.d=On(e,21),e.e=On(e,22),e.f=On(e,23),e.i=On(e,24),e.g=On(e,25),e.j=On(e,26),e.k=On(e,27),e.n=On(e,28),e.r=On(e,29),e.s=On(e,30),e.t=On(e,31),e.u=On(e,32),e.fb=On(e,33),e.A=On(e,34),e.C=On(e,35),e.D=On(e,36),e.F=On(e,37),e.G=On(e,38),e.I=On(e,39),e.J=On(e,40),e.L=On(e,41),e.M=On(e,42),e.N=On(e,43),e.O=On(e,44),e.P=On(e,45),e.X=On(e,46),e.Y=On(e,47),e.Z=On(e,48),e.$=On(e,49),e._=On(e,50),e.cb=On(e,51),e.K=On(e,52))}function kn(){kn=Z;var e,t;GP=new hi(_Ze),j4=new hi(EZe),Npe=(Gf(),$W),ylt=new ut(Ele,Npe),n3=new ut(D2,null),_lt=new hi(pfe),Bpe=(sw(),ui(HW,U(G(zW,1),_e,291,0,[qW]))),vx=new ut(zD,Bpe),Aj=new ut(DT,(Pt(),!1)),$pe=(eo(),ih),rp=new ut(Mle,$pe),Hpe=(Lh(),nY),qpe=new ut(AT,Hpe),Gpe=new ut(XD,!1),Upe=(Rh(),Mx),qv=new ut(HD,Upe),iwe=new Yb(12),Sb=new ut(N0,iwe),yx=new ut(PT,!1),Wpe=new ut(iV,!1),kj=new ut(N6,!1),uwe=(wr(),Y1),UP=new ut(Ez,uwe),i3=new hi(VD),Sx=new hi(ST),eY=new hi(MD),tY=new hi(L6),Ype=new ds,Hv=new ut(Rle,Ype),Slt=new ut(Nle,!1),Plt=new ut(Fle,!1),Xpe=new OS,Dj=new ut($le,Xpe),Ex=new ut(yle,!1),Tlt=new ut(SZe,1),new ut(PZe,!0),Ce(0),new ut(MZe,Ce(100)),new ut(CZe,!1),Ce(0),new ut(IZe,Ce(4e3)),Ce(0),new ut(TZe,Ce(400)),new ut(jZe,!1),new ut(AZe,!1),new ut(OZe,!0),new ut(DZe,!1),Fpe=(l7(),cY),Elt=new ut(bfe,Fpe),jlt=new ut(ule,10),Alt=new ut(ale,10),hwe=new ut(pz,20),Olt=new ut(lle,10),dwe=new ut(_z,2),Dlt=new ut(fle,10),gwe=new ut(hle,0),Px=new ut(ble,5),bwe=new ut(dle,1),pwe=new ut(gle,1),Pb=new ut(_w,20),klt=new ut(ple,10),vwe=new ut(wle,10),r3=new hi(mle),mwe=new N7e,wwe=new ut(Kle,mwe),Clt=new hi(nV),rwe=!1,Mlt=new ut(tV,rwe),Qpe=new Yb(5),Jpe=new ut(Cle,Qpe),Zpe=(fw(),t=c(rl(ro),9),new ku(t,c(Da(t,t.length),9),0)),zv=new ut(qE,Zpe),cwe=(Um(),W1),owe=new ut(jle,cwe),YW=new hi(Ale),XW=new hi(Ole),JW=new hi(Dle),WW=new hi(kle),ewe=(e=c(rl(tM),9),new ku(e,c(Da(e,e.length),9),0)),Eb=new ut(gv,ewe),nwe=nt((Ks(),R4)),G1=new ut(k2,nwe),twe=new $e(0,0),Vv=new ut(R2,twe),_x=new ut(eV,!1),Kpe=(xl(),A4),GW=new ut(xle,Kpe),VW=new ut(CD,!1),Ce(1),new ut(kZe,null),swe=new hi(Ble),QW=new hi(Lle),fwe=(Ie(),Vo),Gv=new ut(_le,fwe),zs=new hi(vle),awe=(js(),nt(X1)),Uw=new ut(HE,awe),ZW=new ut(Ile,!1),lwe=new ut(Tle,!0),Oj=new ut(Sle,!1),UW=new ut(Ple,!1),zpe=new ut(wz,1),Vpe=(L7(),rY),new ut(RZe,Vpe),Ilt=!0}function ye(){ye=Z;var e,t;Hn=new hi(mae),ige=new hi("coordinateOrigin"),CU=new hi("processors"),nge=new Wi("compoundNode",(Pt(),!1)),cj=new Wi("insideConnections",!1),sge=new hi("originalBendpoints"),uge=new hi("originalDummyNodePosition"),age=new hi("originalLabelEdge"),uj=new hi("representedLabels"),yP=new hi("endLabels"),G2=new hi("endLabel.origin"),W2=new Wi("labelSide",(mu(),Lj)),Dv=new Wi("maxEdgeThickness",0),Ul=new Wi("reversed",!1),Y2=new hi(pQe),wl=new Wi("longEdgeSource",null),da=new Wi("longEdgeTarget",null),Rw=new Wi("longEdgeHasLabelDummies",!1),sj=new Wi("longEdgeBeforeLabelDummy",!1),MR=new Wi("edgeConstraint",(zg(),aU)),X0=new hi("inLayerLayoutUnit"),gb=new Wi("inLayerConstraint",(Oh(),rj)),U2=new Wi("inLayerSuccessorConstraint",new Se),cge=new Wi("inLayerSuccessorConstraintBetweenNonDummies",!1),As=new hi("portDummy"),PR=new Wi("crossingHint",Ce(0)),Cc=new Wi("graphProperties",(t=c(rl(pU),9),new ku(t,c(Da(t,t.length),9),0))),Zo=new Wi("externalPortSide",(Ie(),Vo)),oge=new Wi("externalPortSize",new Tr),_U=new hi("externalPortReplacedDummies"),CR=new hi("externalPortReplacedDummy"),kw=new Wi("externalPortConnections",(e=c(rl(Gr),9),new ku(e,c(Da(e,e.length),9),0))),J0=new Wi(uQe,0),tge=new hi("barycenterAssociates"),X2=new hi("TopSideComments"),V2=new hi("BottomSideComments"),SR=new hi("CommentConnectionPort"),SU=new Wi("inputCollect",!1),MU=new Wi("outputCollect",!1),oj=new Wi("cyclic",!1),rge=new hi("crossHierarchyMap"),TU=new hi("targetOffset"),new Wi("splineLabelSize",new Tr),Rv=new hi("spacings"),IR=new Wi("partitionConstraint",!1),W0=new hi("breakingPoint.info"),hge=new hi("splines.survivingEdge"),bb=new hi("splines.route.start"),xv=new hi("splines.edgeChain"),fge=new hi("originalPortConstraints"),w4=new hi("selfLoopHolder"),m4=new hi("splines.nsPortY"),hc=new hi("modelOrder"),PU=new hi("longEdgeTargetNode"),Y0=new Wi(HQe,!1),kv=new Wi(HQe,!1),EU=new hi("layerConstraints.hiddenNodes"),lge=new hi("layerConstraints.opposidePort"),IU=new hi("targetNode.modelOrder")}function Lue(){Lue=Z,Sge=(uI(),pR),Tot=new ut(Cae,Sge),$ot=new ut(Iae,(Pt(),!1)),jge=(iO(),yU),Vot=new ut(AD,jge),cct=new ut(Tae,!1),sct=new ut(jae,!0),iot=new ut(Aae,!1),Nge=(rI(),tW),Ect=new ut(Oae,Nge),Ce(1),Act=new ut(Dae,Ce(7)),Oct=new ut(kae,!1),Kot=new ut(Rae,!1),Ege=(Qg(),sU),Iot=new ut(Tz,Ege),Dge=(R7(),WU),oct=new ut(TT,Dge),Age=(Ku(),aj),Jot=new ut(xae,Age),Ce(-1),Xot=new ut(Lae,Ce(-1)),Ce(-1),Qot=new ut(Nae,Ce(-1)),Ce(-1),Zot=new ut(jz,Ce(4)),Ce(-1),tct=new ut(Az,Ce(2)),Oge=(iv(),UR),rct=new ut(Oz,Oge),Ce(0),ict=new ut(Dz,Ce(0)),Wot=new ut(kz,Ce(Fn)),_ge=(f2(),H2),Cot=new ut(K6,_ge),dot=new ut(Fae,!1),yot=new ut(Rz,.1),Pot=new ut(xz,!1),Ce(-1),Eot=new ut(Bae,Ce(-1)),Ce(-1),Sot=new ut($ae,Ce(-1)),Ce(0),got=new ut(Kae,Ce(40)),yge=(J_(),mU),mot=new ut(Lz,yge),vge=ij,bot=new ut(OD,vge),Lge=(s6(),jP),_ct=new ut(bv,Lge),hct=new hi(DD),kge=(eI(),mR),uct=new ut(Nz,kge),Rge=($I(),vR),lct=new ut(Fz,Rge),bct=new ut(Bz,.3),wct=new hi($z),xge=(rw(),GR),mct=new ut(Kz,xge),Cge=(VO(),iW),kot=new ut(qae,Cge),Ige=(WC(),rW),Rot=new ut(Hae,Ige),Tge=(rE(),DP),xot=new ut(kD,Tge),Not=new ut(RD,.2),Oot=new ut(qz,2),Cct=new ut(zae,null),Tct=new ut(Vae,10),Ict=new ut(Gae,10),jct=new ut(Uae,20),Ce(0),Sct=new ut(Wae,Ce(0)),Ce(0),Pct=new ut(Yae,Ce(0)),Ce(0),Mct=new ut(Xae,Ce(0)),rot=new ut(Hz,!1),bge=(mE(),wP),cot=new ut(Jae,bge),gge=(gO(),oU),oot=new ut(Qae,gge),Hot=new ut(xD,!1),Ce(0),qot=new ut(zz,Ce(16)),Ce(0),zot=new ut(Vz,Ce(5)),$ge=(XO(),sW),Jct=new ut(Hh,$ge),Dct=new ut(LD,10),xct=new ut(ND,1),Bge=(DO(),bR),qct=new ut(q6,Bge),Fct=new hi(Gz),Fge=Ce(1),Ce(0),$ct=new ut(Uz,Fge),Kge=(HO(),cW),tst=new ut(FD,Kge),Qct=new hi(BD),Uct=new ut($D,!0),Vct=new ut(KD,2),Yct=new ut(Wz,!0),Mge=(F7(),wR),Aot=new ut(Zae,Mge),Pge=(y2(),f4),jot=new ut(ele,Pge),mge=(kh(),H1),hot=new ut(qD,mge),fot=new ut(tle,!1),pge=(y0(),Mv),sot=new ut(Yz,pge),wge=(X5(),YU),lot=new ut(nle,wge),uot=new ut(Xz,0),aot=new ut(Jz,0),Uot=uU,Got=nj,ect=zR,nct=zR,Yot=UU,_ot=(Rh(),kd),Mot=H2,vot=H2,pot=H2,wot=kd,dct=AP,gct=jP,act=jP,fct=jP,pct=ZU,yct=AP,vct=AP,Lot=(Lh(),o3),Fot=o3,Bot=DP,Dot=Rj,kct=M4,Rct=zw,Lct=M4,Nct=zw,Hct=M4,zct=zw,Bct=cU,Kct=bR,nst=M4,ist=zw,Zct=M4,est=zw,Wct=zw,Gct=zw,Xct=zw}function Jr(){Jr=Z,e1e=new Li("DIRECTION_PREPROCESSOR",0),Jde=new Li("COMMENT_PREPROCESSOR",1),hP=new Li("EDGE_AND_LAYER_CONSTRAINT_EDGE_REVERSER",2),VG=new Li("INTERACTIVE_EXTERNAL_PORT_POSITIONER",3),v1e=new Li("PARTITION_PREPROCESSOR",4),Xk=new Li("LABEL_DUMMY_INSERTER",5),cR=new Li("SELF_LOOP_PREPROCESSOR",6),s4=new Li("LAYER_CONSTRAINT_PREPROCESSOR",7),w1e=new Li("PARTITION_MIDPROCESSOR",8),u1e=new Li("HIGH_DEGREE_NODE_LAYER_PROCESSOR",9),b1e=new Li("NODE_PROMOTION",10),c4=new Li("LAYER_CONSTRAINT_POSTPROCESSOR",11),m1e=new Li("PARTITION_POSTPROCESSOR",12),o1e=new Li("HIERARCHICAL_PORT_CONSTRAINT_PROCESSOR",13),y1e=new Li("SEMI_INTERACTIVE_CROSSMIN_PROCESSOR",14),Vde=new Li("BREAKING_POINT_INSERTER",15),eR=new Li("LONG_EDGE_SPLITTER",16),GG=new Li("PORT_SIDE_PROCESSOR",17),Wk=new Li("INVERTED_PORT_PROCESSOR",18),iR=new Li("PORT_LIST_SORTER",19),E1e=new Li("SORT_BY_INPUT_ORDER_OF_MODEL",20),nR=new Li("NORTH_SOUTH_PORT_PREPROCESSOR",21),Gde=new Li("BREAKING_POINT_PROCESSOR",22),p1e=new Li(xQe,23),S1e=new Li(LQe,24),rR=new Li("SELF_LOOP_PORT_RESTORER",25),_1e=new Li("SINGLE_EDGE_GRAPH_WRAPPER",26),Yk=new Li("IN_LAYER_CONSTRAINT_PROCESSOR",27),n1e=new Li("END_NODE_PORT_LABEL_MANAGEMENT_PROCESSOR",28),d1e=new Li("LABEL_AND_NODE_SIZE_PROCESSOR",29),h1e=new Li("INNERMOST_NODE_MARGIN_CALCULATOR",30),sR=new Li("SELF_LOOP_ROUTER",31),Yde=new Li("COMMENT_NODE_MARGIN_CALCULATOR",32),Uk=new Li("END_LABEL_PREPROCESSOR",33),Qk=new Li("LABEL_DUMMY_SWITCHER",34),Wde=new Li("CENTER_LABEL_MANAGEMENT_PROCESSOR",35),o4=new Li("LABEL_SIDE_SELECTOR",36),l1e=new Li("HYPEREDGE_DUMMY_MERGER",37),c1e=new Li("HIERARCHICAL_PORT_DUMMY_SIZE_PROCESSOR",38),g1e=new Li("LAYER_SIZE_AND_GRAPH_HEIGHT_CALCULATOR",39),dP=new Li("HIERARCHICAL_PORT_POSITION_PROCESSOR",40),Qde=new Li("CONSTRAINTS_POSTPROCESSOR",41),Xde=new Li("COMMENT_POSTPROCESSOR",42),f1e=new Li("HYPERNODE_PROCESSOR",43),s1e=new Li("HIERARCHICAL_PORT_ORTHOGONAL_EDGE_ROUTER",44),Zk=new Li("LONG_EDGE_JOINER",45),oR=new Li("SELF_LOOP_POSTPROCESSOR",46),Ude=new Li("BREAKING_POINT_REMOVER",47),tR=new Li("NORTH_SOUTH_PORT_POSTPROCESSOR",48),a1e=new Li("HORIZONTAL_COMPACTOR",49),Jk=new Li("LABEL_DUMMY_REMOVER",50),i1e=new Li("FINAL_SPLINE_BENDPOINTS_CALCULATOR",51),t1e=new Li("END_LABEL_SORTER",52),ej=new Li("REVERSED_EDGE_RESTORER",53),Gk=new Li("END_LABEL_POSTPROCESSOR",54),r1e=new Li("HIERARCHICAL_NODE_RESIZER",55),Zde=new Li("DIRECTION_POSTPROCESSOR",56)}function rzt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi,ju,Sa,ef,Ux,eA,gM,tA,B4,EY,mht,SY,Bd,lp,$4,nA,iA,f3,PY,bM,vht,Fme,fp,pM,MY,h3,wM,im,mM,CY,yht;for(Fme=0,ti=t,Sa=0,eA=ti.length;Sa0&&(e.a[Bd.p]=Fme++)}for(wM=0,Zi=n,ef=0,gM=Zi.length;ef0;){for(Bd=(Lt(iA.b>0),c(iA.a.Xb(iA.c=--iA.b),11)),nA=0,a=new q(Bd.e);a.a0&&(Bd.j==(Ie(),_t)?(e.a[Bd.p]=wM,++wM):(e.a[Bd.p]=wM+tA+EY,++EY))}wM+=EY}for($4=new en,L=new Eh,Jt=t,ju=0,Ux=Jt.length;jud.b&&(d.b=f3)):Bd.i.c==vht&&(f3d.c&&(d.c=f3));for(L_(N,0,N.length,null),h3=oe(Qt,_n,25,N.length,15,1),i=oe(Qt,_n,25,wM+1,15,1),Y=0;Y0;)Ae%2>0&&(r+=CY[Ae+1]),Ae=(Ae-1)/2|0,++CY[Ae];for(et=oe(Gst,xe,362,N.length*2,0,1),ue=0;ue'?":rt(det,e)?"'(?<' or '(? toIndex: ",Yue=", toIndex: ",Xue="Index: ",Jue=", Size: ",NE="org.eclipse.elk.alg.common",Zn={62:1},zJe="org.eclipse.elk.alg.common.compaction",VJe="Scanline/EventHandler",Qf="org.eclipse.elk.alg.common.compaction.oned",GJe="CNode belongs to another CGroup.",UJe="ISpacingsHandler/1",rz="The ",oz=" instance has been finished already.",WJe="The direction ",YJe=" is not supported by the CGraph instance.",XJe="OneDimensionalCompactor",JJe="OneDimensionalCompactor/lambda$0$Type",QJe="Quadruplet",ZJe="ScanlineConstraintCalculator",eQe="ScanlineConstraintCalculator/ConstraintsScanlineHandler",tQe="ScanlineConstraintCalculator/ConstraintsScanlineHandler/lambda$0$Type",nQe="ScanlineConstraintCalculator/Timestamp",iQe="ScanlineConstraintCalculator/lambda$0$Type",yf={169:1,45:1},cz="org.eclipse.elk.alg.common.compaction.options",zo="org.eclipse.elk.core.data",Que="org.eclipse.elk.polyomino.traversalStrategy",Zue="org.eclipse.elk.polyomino.lowLevelSort",eae="org.eclipse.elk.polyomino.highLevelSort",tae="org.eclipse.elk.polyomino.fill",ca={130:1},sz="polyomino",k6="org.eclipse.elk.alg.common.networksimplex",Zf={177:1,3:1,4:1},rQe="org.eclipse.elk.alg.common.nodespacing",ib="org.eclipse.elk.alg.common.nodespacing.cellsystem",FE="CENTER",oQe={212:1,326:1},nae={3:1,4:1,5:1,595:1},j2="LEFT",A2="RIGHT",iae="Vertical alignment cannot be null",rae="BOTTOM",vD="org.eclipse.elk.alg.common.nodespacing.internal",R6="UNDEFINED",ql=.01,yT="org.eclipse.elk.alg.common.nodespacing.internal.algorithm",cQe="LabelPlacer/lambda$0$Type",sQe="LabelPlacer/lambda$1$Type",uQe="portRatioOrPosition",BE="org.eclipse.elk.alg.common.overlaps",uz="DOWN",_f="org.eclipse.elk.alg.common.polyomino",yD="NORTH",az="EAST",lz="SOUTH",fz="WEST",_D="org.eclipse.elk.alg.common.polyomino.structures",oae="Direction",hz="Grid is only of size ",dz=". Requested point (",gz=") is out of bounds.",ED=" Given center based coordinates were (",_T="org.eclipse.elk.graph.properties",aQe="IPropertyHolder",cae={3:1,94:1,134:1},O2="org.eclipse.elk.alg.common.spore",lQe="org.eclipse.elk.alg.common.utils",rb={209:1},hv="org.eclipse.elk.core",fQe="Connected Components Compaction",hQe="org.eclipse.elk.alg.disco",SD="org.eclipse.elk.alg.disco.graph",bz="org.eclipse.elk.alg.disco.options",sae="CompactionStrategy",uae="org.eclipse.elk.disco.componentCompaction.strategy",aae="org.eclipse.elk.disco.componentCompaction.componentLayoutAlgorithm",lae="org.eclipse.elk.disco.debug.discoGraph",fae="org.eclipse.elk.disco.debug.discoPolys",dQe="componentCompaction",ob="org.eclipse.elk.disco",pz="org.eclipse.elk.spacing.componentComponent",wz="org.eclipse.elk.edge.thickness",D2="org.eclipse.elk.aspectRatio",N0="org.eclipse.elk.padding",dv="org.eclipse.elk.alg.disco.transform",mz=1.5707963267948966,$E=17976931348623157e292,yw={3:1,4:1,5:1,192:1},hae={3:1,6:1,4:1,5:1,106:1,120:1},dae="org.eclipse.elk.alg.force",gae="ComponentsProcessor",gQe="ComponentsProcessor/1",ET="org.eclipse.elk.alg.force.graph",bQe="Component Layout",bae="org.eclipse.elk.alg.force.model",PD="org.eclipse.elk.force.model",pae="org.eclipse.elk.force.iterations",wae="org.eclipse.elk.force.repulsivePower",vz="org.eclipse.elk.force.temperature",Ef=.001,yz="org.eclipse.elk.force.repulsion",x6="org.eclipse.elk.alg.force.options",KE=1.600000023841858,_u="org.eclipse.elk.force",ST="org.eclipse.elk.priority",_w="org.eclipse.elk.spacing.nodeNode",_z="org.eclipse.elk.spacing.edgeLabel",MD="org.eclipse.elk.randomSeed",L6="org.eclipse.elk.separateConnectedComponents",PT="org.eclipse.elk.interactive",Ez="org.eclipse.elk.portConstraints",CD="org.eclipse.elk.edgeLabels.inline",N6="org.eclipse.elk.omitNodeMicroLayout",k2="org.eclipse.elk.nodeSize.options",gv="org.eclipse.elk.nodeSize.constraints",qE="org.eclipse.elk.nodeLabels.placement",HE="org.eclipse.elk.portLabels.placement",mae="origin",pQe="random",wQe="boundingBox.upLeft",mQe="boundingBox.lowRight",vae="org.eclipse.elk.stress.fixed",yae="org.eclipse.elk.stress.desiredEdgeLength",_ae="org.eclipse.elk.stress.dimension",Eae="org.eclipse.elk.stress.epsilon",Sae="org.eclipse.elk.stress.iterationLimit",D1="org.eclipse.elk.stress",vQe="ELK Stress",R2="org.eclipse.elk.nodeSize.minimum",ID="org.eclipse.elk.alg.force.stress",yQe="Layered layout",x2="org.eclipse.elk.alg.layered",MT="org.eclipse.elk.alg.layered.compaction.components",F6="org.eclipse.elk.alg.layered.compaction.oned",TD="org.eclipse.elk.alg.layered.compaction.oned.algs",cb="org.eclipse.elk.alg.layered.compaction.recthull",Sf="org.eclipse.elk.alg.layered.components",qh="NONE",ac={3:1,6:1,4:1,9:1,5:1,122:1},_Qe={3:1,6:1,4:1,5:1,141:1,106:1,120:1},jD="org.eclipse.elk.alg.layered.compound",Ti={51:1},Lc="org.eclipse.elk.alg.layered.graph",Sz=" -> ",EQe="Not supported by LGraph",Pae="Port side is undefined",Pz={3:1,6:1,4:1,5:1,474:1,141:1,106:1,120:1},Ed={3:1,6:1,4:1,5:1,141:1,193:1,203:1,106:1,120:1},SQe={3:1,6:1,4:1,5:1,141:1,1943:1,203:1,106:1,120:1},PQe=`([{"' \r -`,MQe=`)]}"' \r -`,CQe="The given string contains parts that cannot be parsed as numbers.",CT="org.eclipse.elk.core.math",IQe={3:1,4:1,142:1,207:1,414:1},TQe={3:1,4:1,116:1,207:1,414:1},kt="org.eclipse.elk.layered",Sd="org.eclipse.elk.alg.layered.graph.transform",jQe="ElkGraphImporter",AQe="ElkGraphImporter/lambda$0$Type",OQe="ElkGraphImporter/lambda$1$Type",DQe="ElkGraphImporter/lambda$2$Type",kQe="ElkGraphImporter/lambda$4$Type",RQe="Node margin calculation",Ct="org.eclipse.elk.alg.layered.intermediate",xQe="ONE_SIDED_GREEDY_SWITCH",LQe="TWO_SIDED_GREEDY_SWITCH",Mz="No implementation is available for the layout processor ",Mae="IntermediateProcessorStrategy",Cz="Node '",NQe="FIRST_SEPARATE",FQe="LAST_SEPARATE",BQe="Odd port side processing",Ki="org.eclipse.elk.alg.layered.intermediate.compaction",B6="org.eclipse.elk.alg.layered.intermediate.greedyswitch",eh="org.eclipse.elk.alg.layered.p3order.counting",IT={225:1},L2="org.eclipse.elk.alg.layered.intermediate.loops",Eu="org.eclipse.elk.alg.layered.intermediate.loops.ordering",k1="org.eclipse.elk.alg.layered.intermediate.loops.routing",$6="org.eclipse.elk.alg.layered.intermediate.preserveorder",Pf="org.eclipse.elk.alg.layered.intermediate.wrapping",lc="org.eclipse.elk.alg.layered.options",Iz="INTERACTIVE",$Qe="DEPTH_FIRST",KQe="EDGE_LENGTH",qQe="SELF_LOOPS",HQe="firstTryWithInitialOrder",Cae="org.eclipse.elk.layered.directionCongruency",Iae="org.eclipse.elk.layered.feedbackEdges",AD="org.eclipse.elk.layered.interactiveReferencePoint",Tae="org.eclipse.elk.layered.mergeEdges",jae="org.eclipse.elk.layered.mergeHierarchyEdges",Aae="org.eclipse.elk.layered.allowNonFlowPortsToSwitchSides",Oae="org.eclipse.elk.layered.portSortingStrategy",Dae="org.eclipse.elk.layered.thoroughness",kae="org.eclipse.elk.layered.unnecessaryBendpoints",Rae="org.eclipse.elk.layered.generatePositionAndLayerIds",Tz="org.eclipse.elk.layered.cycleBreaking.strategy",TT="org.eclipse.elk.layered.layering.strategy",xae="org.eclipse.elk.layered.layering.layerConstraint",Lae="org.eclipse.elk.layered.layering.layerChoiceConstraint",Nae="org.eclipse.elk.layered.layering.layerId",jz="org.eclipse.elk.layered.layering.minWidth.upperBoundOnWidth",Az="org.eclipse.elk.layered.layering.minWidth.upperLayerEstimationScalingFactor",Oz="org.eclipse.elk.layered.layering.nodePromotion.strategy",Dz="org.eclipse.elk.layered.layering.nodePromotion.maxIterations",kz="org.eclipse.elk.layered.layering.coffmanGraham.layerBound",K6="org.eclipse.elk.layered.crossingMinimization.strategy",Fae="org.eclipse.elk.layered.crossingMinimization.forceNodeModelOrder",Rz="org.eclipse.elk.layered.crossingMinimization.hierarchicalSweepiness",xz="org.eclipse.elk.layered.crossingMinimization.semiInteractive",Bae="org.eclipse.elk.layered.crossingMinimization.positionChoiceConstraint",$ae="org.eclipse.elk.layered.crossingMinimization.positionId",Kae="org.eclipse.elk.layered.crossingMinimization.greedySwitch.activationThreshold",Lz="org.eclipse.elk.layered.crossingMinimization.greedySwitch.type",OD="org.eclipse.elk.layered.crossingMinimization.greedySwitchHierarchical.type",bv="org.eclipse.elk.layered.nodePlacement.strategy",DD="org.eclipse.elk.layered.nodePlacement.favorStraightEdges",Nz="org.eclipse.elk.layered.nodePlacement.bk.edgeStraightening",Fz="org.eclipse.elk.layered.nodePlacement.bk.fixedAlignment",Bz="org.eclipse.elk.layered.nodePlacement.linearSegments.deflectionDampening",$z="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility",Kz="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility.default",qae="org.eclipse.elk.layered.edgeRouting.selfLoopDistribution",Hae="org.eclipse.elk.layered.edgeRouting.selfLoopOrdering",kD="org.eclipse.elk.layered.edgeRouting.splines.mode",RD="org.eclipse.elk.layered.edgeRouting.splines.sloppy.layerSpacingFactor",qz="org.eclipse.elk.layered.edgeRouting.polyline.slopedEdgeZoneWidth",zae="org.eclipse.elk.layered.spacing.baseValue",Vae="org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers",Gae="org.eclipse.elk.layered.spacing.edgeEdgeBetweenLayers",Uae="org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers",Wae="org.eclipse.elk.layered.priority.direction",Yae="org.eclipse.elk.layered.priority.shortness",Xae="org.eclipse.elk.layered.priority.straightness",Hz="org.eclipse.elk.layered.compaction.connectedComponents",Jae="org.eclipse.elk.layered.compaction.postCompaction.strategy",Qae="org.eclipse.elk.layered.compaction.postCompaction.constraints",xD="org.eclipse.elk.layered.highDegreeNodes.treatment",zz="org.eclipse.elk.layered.highDegreeNodes.threshold",Vz="org.eclipse.elk.layered.highDegreeNodes.treeHeight",Hh="org.eclipse.elk.layered.wrapping.strategy",LD="org.eclipse.elk.layered.wrapping.additionalEdgeSpacing",ND="org.eclipse.elk.layered.wrapping.correctionFactor",q6="org.eclipse.elk.layered.wrapping.cutting.strategy",Gz="org.eclipse.elk.layered.wrapping.cutting.cuts",Uz="org.eclipse.elk.layered.wrapping.cutting.msd.freedom",FD="org.eclipse.elk.layered.wrapping.validify.strategy",BD="org.eclipse.elk.layered.wrapping.validify.forbiddenIndices",$D="org.eclipse.elk.layered.wrapping.multiEdge.improveCuts",KD="org.eclipse.elk.layered.wrapping.multiEdge.distancePenalty",Wz="org.eclipse.elk.layered.wrapping.multiEdge.improveWrappedEdges",Zae="org.eclipse.elk.layered.edgeLabels.sideSelection",ele="org.eclipse.elk.layered.edgeLabels.centerLabelPlacementStrategy",qD="org.eclipse.elk.layered.considerModelOrder.strategy",tle="org.eclipse.elk.layered.considerModelOrder.noModelOrder",Yz="org.eclipse.elk.layered.considerModelOrder.components",nle="org.eclipse.elk.layered.considerModelOrder.longEdgeStrategy",Xz="org.eclipse.elk.layered.considerModelOrder.crossingCounterNodeInfluence",Jz="org.eclipse.elk.layered.considerModelOrder.crossingCounterPortInfluence",Qz="layering",zQe="layering.minWidth",VQe="layering.nodePromotion",jT="crossingMinimization",HD="org.eclipse.elk.hierarchyHandling",GQe="crossingMinimization.greedySwitch",UQe="nodePlacement",WQe="nodePlacement.bk",YQe="edgeRouting",AT="org.eclipse.elk.edgeRouting",Hl="spacing",ile="priority",rle="compaction",XQe="compaction.postCompaction",JQe="Specifies whether and how post-process compaction is applied.",ole="highDegreeNodes",cle="wrapping",QQe="wrapping.cutting",ZQe="wrapping.validify",sle="wrapping.multiEdge",Zz="edgeLabels",OT="considerModelOrder",ule="org.eclipse.elk.spacing.commentComment",ale="org.eclipse.elk.spacing.commentNode",lle="org.eclipse.elk.spacing.edgeEdge",fle="org.eclipse.elk.spacing.edgeNode",hle="org.eclipse.elk.spacing.labelLabel",dle="org.eclipse.elk.spacing.labelPortHorizontal",gle="org.eclipse.elk.spacing.labelPortVertical",ble="org.eclipse.elk.spacing.labelNode",ple="org.eclipse.elk.spacing.nodeSelfLoop",wle="org.eclipse.elk.spacing.portPort",mle="org.eclipse.elk.spacing.individual",vle="org.eclipse.elk.port.borderOffset",yle="org.eclipse.elk.noLayout",_le="org.eclipse.elk.port.side",DT="org.eclipse.elk.debugMode",Ele="org.eclipse.elk.alignment",Sle="org.eclipse.elk.insideSelfLoops.activate",Ple="org.eclipse.elk.insideSelfLoops.yo",eV="org.eclipse.elk.nodeSize.fixedGraphSize",Mle="org.eclipse.elk.direction",Cle="org.eclipse.elk.nodeLabels.padding",Ile="org.eclipse.elk.portLabels.nextToPortIfPossible",Tle="org.eclipse.elk.portLabels.treatAsGroup",jle="org.eclipse.elk.portAlignment.default",Ale="org.eclipse.elk.portAlignment.north",Ole="org.eclipse.elk.portAlignment.south",Dle="org.eclipse.elk.portAlignment.west",kle="org.eclipse.elk.portAlignment.east",zD="org.eclipse.elk.contentAlignment",Rle="org.eclipse.elk.junctionPoints",xle="org.eclipse.elk.edgeLabels.placement",Lle="org.eclipse.elk.port.index",Nle="org.eclipse.elk.commentBox",Fle="org.eclipse.elk.hypernode",Ble="org.eclipse.elk.port.anchor",tV="org.eclipse.elk.partitioning.activate",nV="org.eclipse.elk.partitioning.partition",VD="org.eclipse.elk.position",$le="org.eclipse.elk.margins",Kle="org.eclipse.elk.spacing.portsSurrounding",iV="org.eclipse.elk.interactiveLayout",fc="org.eclipse.elk.core.util",qle={3:1,4:1,5:1,593:1},eZe="NETWORK_SIMPLEX",Sc={123:1,51:1},GD="org.eclipse.elk.alg.layered.p1cycles",Ew="org.eclipse.elk.alg.layered.p2layers",Hle={402:1,225:1},tZe={832:1,3:1,4:1},_s="org.eclipse.elk.alg.layered.p3order",io="org.eclipse.elk.alg.layered.p4nodes",nZe={3:1,4:1,5:1,840:1},Mf=1e-5,R1="org.eclipse.elk.alg.layered.p4nodes.bk",rV="org.eclipse.elk.alg.layered.p5edges",gl="org.eclipse.elk.alg.layered.p5edges.orthogonal",oV="org.eclipse.elk.alg.layered.p5edges.orthogonal.direction",cV=1e-6,Sw="org.eclipse.elk.alg.layered.p5edges.splines",sV=.09999999999999998,UD=1e-8,iZe=4.71238898038469,rZe=3.141592653589793,H6="org.eclipse.elk.alg.mrtree",z6="org.eclipse.elk.alg.mrtree.graph",N2="org.eclipse.elk.alg.mrtree.intermediate",oZe="Set neighbors in level",cZe="DESCENDANTS",zle="org.eclipse.elk.mrtree.weighting",Vle="org.eclipse.elk.mrtree.searchOrder",WD="org.eclipse.elk.alg.mrtree.options",Pd="org.eclipse.elk.mrtree",sZe="org.eclipse.elk.tree",Gle="org.eclipse.elk.alg.radial",pv=6.283185307179586,Ule=5e-324,uZe="org.eclipse.elk.alg.radial.intermediate",uV="org.eclipse.elk.alg.radial.intermediate.compaction",aZe={3:1,4:1,5:1,106:1},Wle="org.eclipse.elk.alg.radial.intermediate.optimization",aV="No implementation is available for the layout option ",V6="org.eclipse.elk.alg.radial.options",Yle="org.eclipse.elk.radial.orderId",Xle="org.eclipse.elk.radial.radius",lV="org.eclipse.elk.radial.compactor",fV="org.eclipse.elk.radial.compactionStepSize",Jle="org.eclipse.elk.radial.sorter",Qle="org.eclipse.elk.radial.wedgeCriteria",Zle="org.eclipse.elk.radial.optimizationCriteria",Cf="org.eclipse.elk.radial",lZe="org.eclipse.elk.alg.radial.p1position.wedge",efe="org.eclipse.elk.alg.radial.sorting",fZe=5.497787143782138,hZe=3.9269908169872414,dZe=2.356194490192345,gZe="org.eclipse.elk.alg.rectpacking",YD="org.eclipse.elk.alg.rectpacking.firstiteration",hV="org.eclipse.elk.alg.rectpacking.options",tfe="org.eclipse.elk.rectpacking.optimizationGoal",nfe="org.eclipse.elk.rectpacking.lastPlaceShift",ife="org.eclipse.elk.rectpacking.currentPosition",rfe="org.eclipse.elk.rectpacking.desiredPosition",ofe="org.eclipse.elk.rectpacking.onlyFirstIteration",cfe="org.eclipse.elk.rectpacking.rowCompaction",dV="org.eclipse.elk.rectpacking.expandToAspectRatio",sfe="org.eclipse.elk.rectpacking.targetWidth",XD="org.eclipse.elk.expandNodes",sa="org.eclipse.elk.rectpacking",kT="org.eclipse.elk.alg.rectpacking.util",JD="No implementation available for ",Pw="org.eclipse.elk.alg.spore",Mw="org.eclipse.elk.alg.spore.options",F0="org.eclipse.elk.sporeCompaction",gV="org.eclipse.elk.underlyingLayoutAlgorithm",ufe="org.eclipse.elk.processingOrder.treeConstruction",afe="org.eclipse.elk.processingOrder.spanningTreeCostFunction",bV="org.eclipse.elk.processingOrder.preferredRoot",pV="org.eclipse.elk.processingOrder.rootSelection",wV="org.eclipse.elk.structure.structureExtractionStrategy",lfe="org.eclipse.elk.compaction.compactionStrategy",ffe="org.eclipse.elk.compaction.orthogonal",hfe="org.eclipse.elk.overlapRemoval.maxIterations",dfe="org.eclipse.elk.overlapRemoval.runScanline",mV="processingOrder",bZe="overlapRemoval",zE="org.eclipse.elk.sporeOverlap",pZe="org.eclipse.elk.alg.spore.p1structure",vV="org.eclipse.elk.alg.spore.p2processingorder",yV="org.eclipse.elk.alg.spore.p3execution",wZe="Invalid index: ",VE="org.eclipse.elk.core.alg",wv={331:1},Cw={288:1},mZe="Make sure its type is registered with the ",gfe=" utility class.",GE="true",_V="false",vZe="Couldn't clone property '",B0=.05,ua="org.eclipse.elk.core.options",yZe=1.2999999523162842,$0="org.eclipse.elk.box",bfe="org.eclipse.elk.box.packingMode",_Ze="org.eclipse.elk.algorithm",EZe="org.eclipse.elk.resolvedAlgorithm",pfe="org.eclipse.elk.bendPoints",azt="org.eclipse.elk.labelManager",SZe="org.eclipse.elk.scaleFactor",PZe="org.eclipse.elk.animate",MZe="org.eclipse.elk.animTimeFactor",CZe="org.eclipse.elk.layoutAncestors",IZe="org.eclipse.elk.maxAnimTime",TZe="org.eclipse.elk.minAnimTime",jZe="org.eclipse.elk.progressBar",AZe="org.eclipse.elk.validateGraph",OZe="org.eclipse.elk.validateOptions",DZe="org.eclipse.elk.zoomToFit",lzt="org.eclipse.elk.font.name",kZe="org.eclipse.elk.font.size",RZe="org.eclipse.elk.edge.type",xZe="partitioning",LZe="nodeLabels",QD="portAlignment",EV="nodeSize",SV="port",wfe="portLabels",NZe="insideSelfLoops",G6="org.eclipse.elk.fixed",ZD="org.eclipse.elk.random",FZe="port must have a parent node to calculate the port side",BZe="The edge needs to have exactly one edge section. Found: ",U6="org.eclipse.elk.core.util.adapters",Hu="org.eclipse.emf.ecore",mv="org.eclipse.elk.graph",$Ze="EMapPropertyHolder",KZe="ElkBendPoint",qZe="ElkGraphElement",HZe="ElkConnectableShape",mfe="ElkEdge",zZe="ElkEdgeSection",VZe="EModelElement",GZe="ENamedElement",vfe="ElkLabel",yfe="ElkNode",_fe="ElkPort",UZe={92:1,90:1},F2="org.eclipse.emf.common.notify.impl",x1="The feature '",W6="' is not a valid changeable feature",WZe="Expecting null",PV="' is not a valid feature",YZe="The feature ID",XZe=" is not a valid feature ID",rc=32768,JZe={105:1,92:1,90:1,56:1,49:1,97:1},mt="org.eclipse.emf.ecore.impl",sb="org.eclipse.elk.graph.impl",Y6="Recursive containment not allowed for ",UE="The datatype '",K0="' is not a valid classifier",MV="The value '",vv={190:1,3:1,4:1},CV="The class '",WE="http://www.eclipse.org/elk/ElkGraph",Ka=1024,Efe="property",X6="value",IV="source",QZe="properties",ZZe="identifier",TV="height",jV="width",AV="parent",OV="text",DV="children",eet="hierarchical",Sfe="sources",kV="targets",Pfe="sections",ek="bendPoints",Mfe="outgoingShape",Cfe="incomingShape",Ife="outgoingSections",Tfe="incomingSections",Br="org.eclipse.emf.common.util",jfe="Severe implementation error in the Json to ElkGraph importer.",If="id",Cr="org.eclipse.elk.graph.json",Afe="Unhandled parameter types: ",tet="startPoint",net="An edge must have at least one source and one target (edge id: '",YE="').",iet="Referenced edge section does not exist: ",ret=" (edge id: '",Ofe="target",oet="sourcePoint",cet="targetPoint",tk="group",Dn="name",set="connectableShape cannot be null",uet="edge cannot be null",RV="Passed edge is not 'simple'.",nk="org.eclipse.elk.graph.util",RT="The 'no duplicates' constraint is violated",xV="targetIndex=",ub=", size=",LV="sourceIndex=",Tf={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1},NV={3:1,4:1,20:1,28:1,52:1,14:1,47:1,15:1,54:1,67:1,63:1,58:1,588:1},ik="logging",aet="measureExecutionTime",fet="parser.parse.1",het="parser.parse.2",rk="parser.next.1",FV="parser.next.2",det="parser.next.3",get="parser.next.4",ab="parser.factor.1",Dfe="parser.factor.2",bet="parser.factor.3",pet="parser.factor.4",wet="parser.factor.5",met="parser.factor.6",vet="parser.atom.1",yet="parser.atom.2",_et="parser.atom.3",kfe="parser.atom.4",BV="parser.atom.5",Rfe="parser.cc.1",ok="parser.cc.2",Eet="parser.cc.3",Pet="parser.cc.5",xfe="parser.cc.6",Lfe="parser.cc.7",$V="parser.cc.8",Met="parser.ope.1",Cet="parser.ope.2",Iet="parser.ope.3",Md="parser.descape.1",Tet="parser.descape.2",jet="parser.descape.3",Aet="parser.descape.4",Oet="parser.descape.5",zu="parser.process.1",Det="parser.quantifier.1",ket="parser.quantifier.2",Ret="parser.quantifier.3",xet="parser.quantifier.4",Nfe="parser.quantifier.5",Let="org.eclipse.emf.common.notify",Ffe={415:1,672:1},Net={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1},xT={366:1,143:1},J6="index=",KV={3:1,4:1,5:1,126:1},Fet={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,58:1},Bfe={3:1,6:1,4:1,5:1,192:1},Bet={3:1,4:1,5:1,165:1,367:1},$et=";/?:@&=+$,",Ket="invalid authority: ",qet="EAnnotation",Het="ETypedElement",zet="EStructuralFeature",Vet="EAttribute",Get="EClassifier",Uet="EEnumLiteral",Wet="EGenericType",Yet="EOperation",Xet="EParameter",Jet="EReference",Qet="ETypeParameter",ai="org.eclipse.emf.ecore.util",qV={76:1},$fe={3:1,20:1,14:1,15:1,58:1,589:1,76:1,69:1,95:1},Zet="org.eclipse.emf.ecore.util.FeatureMap$Entry",Es=8192,Iw=2048,Q6="byte",ck="char",Z6="double",eP="float",tP="int",nP="long",iP="short",ett="java.lang.Object",yv={3:1,4:1,5:1,247:1},Kfe={3:1,4:1,5:1,673:1},ttt={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,69:1},xo={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,69:1,95:1},LT="mixed",yn="http:///org/eclipse/emf/ecore/util/ExtendedMetaData",aa="kind",ntt={3:1,4:1,5:1,674:1},qfe={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1,76:1,69:1,95:1},sk={20:1,28:1,52:1,14:1,15:1,58:1,69:1},uk={47:1,125:1,279:1},ak={72:1,332:1},lk="The value of type '",fk="' must be of type '",_v=1316,la="http://www.eclipse.org/emf/2002/Ecore",hk=-32768,q0="constraints",Or="baseType",itt="getEStructuralFeature",rtt="getFeatureID",rP="feature",ott="getOperationID",Hfe="operation",ctt="defaultValue",stt="eTypeParameters",utt="isInstance",att="getEEnumLiteral",ltt="eContainingClass",Tn={55:1},ftt={3:1,4:1,5:1,119:1},htt="org.eclipse.emf.ecore.resource",dtt={92:1,90:1,591:1,1935:1},HV="org.eclipse.emf.ecore.resource.impl",zfe="unspecified",NT="simple",dk="attribute",gtt="attributeWildcard",gk="element",zV="elementWildcard",bl="collapse",VV="itemType",bk="namespace",FT="##targetNamespace",fa="whiteSpace",Vfe="wildcards",lb="http://www.eclipse.org/emf/2003/XMLType",GV="##any",XE="uninitialized",BT="The multiplicity constraint is violated",pk="org.eclipse.emf.ecore.xml.type",btt="ProcessingInstruction",ptt="SimpleAnyType",wtt="XMLTypeDocumentRoot",Fi="org.eclipse.emf.ecore.xml.type.impl",$T="INF",mtt="processing",vtt="ENTITIES_._base",Gfe="minLength",Ufe="ENTITY",wk="NCName",ytt="IDREFS_._base",Wfe="integer",UV="token",WV="pattern",_tt="[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",Yfe="\\i\\c*",Ett="[\\i-[:]][\\c-[:]]*",Stt="nonPositiveInteger",KT="maxInclusive",Xfe="NMTOKEN",Ptt="NMTOKENS_._base",Jfe="nonNegativeInteger",qT="minInclusive",Mtt="normalizedString",Ctt="unsignedByte",Itt="unsignedInt",Ttt="18446744073709551615",jtt="unsignedShort",Att="processingInstruction",Cd="org.eclipse.emf.ecore.xml.type.internal",JE=1114111,Ott="Internal Error: shorthands: \\u",oP="xml:isDigit",YV="xml:isWord",XV="xml:isSpace",JV="xml:isNameChar",QV="xml:isInitialNameChar",Dtt="09٠٩۰۹०९০৯੦੯૦૯୦୯௧௯౦౯೦೯൦൯๐๙໐໙༠༩",ktt="AZazÀÖØöøıĴľŁňŊžƀǃǍǰǴǵǺȗɐʨʻˁΆΆΈΊΌΌΎΡΣώϐϖϚϚϜϜϞϞϠϠϢϳЁЌЎяёќўҁҐӄӇӈӋӌӐӫӮӵӸӹԱՖՙՙաֆאתװײءغفيٱڷںھۀێېۓەەۥۦअहऽऽक़ॡঅঌএঐওনপরললশহড়ঢ়য়ৡৰৱਅਊਏਐਓਨਪਰਲਲ਼ਵਸ਼ਸਹਖ਼ੜਫ਼ਫ਼ੲੴઅઋઍઍએઑઓનપરલળવહઽઽૠૠଅଌଏଐଓନପରଲଳଶହଽଽଡ଼ଢ଼ୟୡஅஊஎஐஒகஙசஜஜஞடணதநபமவஷஹఅఌఎఐఒనపళవహౠౡಅಌಎಐಒನಪಳವಹೞೞೠೡഅഌഎഐഒനപഹൠൡกฮะะาำเๅກຂຄຄງຈຊຊຍຍດທນຟມຣລລວວສຫອຮະະາຳຽຽເໄཀཇཉཀྵႠჅაჶᄀᄀᄂᄃᄅᄇᄉᄉᄋᄌᄎᄒᄼᄼᄾᄾᅀᅀᅌᅌᅎᅎᅐᅐᅔᅕᅙᅙᅟᅡᅣᅣᅥᅥᅧᅧᅩᅩᅭᅮᅲᅳᅵᅵᆞᆞᆨᆨᆫᆫᆮᆯᆷᆸᆺᆺᆼᇂᇫᇫᇰᇰᇹᇹḀẛẠỹἀἕἘἝἠὅὈὍὐὗὙὙὛὛὝὝὟώᾀᾴᾶᾼιιῂῄῆῌῐΐῖΊῠῬῲῴῶῼΩΩKÅ℮℮ↀↂ〇〇〡〩ぁゔァヺㄅㄬ一龥가힣",Rtt="Private Use",ZV="ASSIGNED",eG="\0€ÿĀſƀɏɐʯʰ˿̀ͯͰϿЀӿ԰֏֐׿؀ۿ܀ݏހ޿ऀॿঀ৿਀੿઀૿଀୿஀௿ఀ౿ಀ೿ഀൿ඀෿฀๿຀໿ༀ࿿က႟Ⴀჿᄀᇿሀ፿Ꭰ᏿᐀ᙿ ᚟ᚠ᛿ក៿᠀᢯Ḁỿἀ῿ ⁰₟₠⃏⃐⃿℀⅏⅐↏←⇿∀⋿⌀⏿␀␿⑀⑟①⓿─╿▀▟■◿☀⛿✀➿⠀⣿⺀⻿⼀⿟⿰⿿ 〿぀ゟ゠ヿ㄀ㄯ㄰㆏㆐㆟ㆠㆿ㈀㋿㌀㏿㐀䶵一鿿ꀀ꒏꒐꓏가힣豈﫿ffﭏﭐ﷿︠︯︰﹏﹐﹯ﹰ﻾\uFEFF\uFEFF＀￯",Qfe="UNASSIGNED",QE={3:1,117:1},xtt="org.eclipse.emf.ecore.xml.type.util",mk={3:1,4:1,5:1,368:1},Zfe="org.eclipse.xtext.xbase.lib",Ltt="Cannot add elements to a Range",Ntt="Cannot set elements in a Range",Ftt="Cannot remove elements from a Range",vk="locale",yk="default",_k="user.agent",s,Ek,tG;g.goog=g.goog||{},g.goog.global=g.goog.global||g,LDt(),y(1,null,{},C),s.Fb=function(t){return O7e(this,t)},s.Gb=function(){return this.gm},s.Hb=function(){return Xb(this)},s.Ib=function(){var t;return r1(Fs(this))+"@"+(t=fi(this)>>>0,t.toString(16))},s.equals=function(e){return this.Fb(e)},s.hashCode=function(){return this.Hb()},s.toString=function(){return this.Ib()};var Btt,$tt,Ktt;y(290,1,{290:1,2026:1},Are),s.le=function(t){var n;return n=new Are,n.i=4,t>1?n.c=WLe(this,t-1):n.c=this,n},s.me=function(){return Sh(this),this.b},s.ne=function(){return r1(this)},s.oe=function(){return Sh(this),this.k},s.pe=function(){return(this.i&4)!=0},s.qe=function(){return(this.i&1)!=0},s.Ib=function(){return Vie(this)},s.i=0;var xt=S(Ho,"Object",1),ehe=S(Ho,"Class",290);y(1998,1,lT),S(fT,"Optional",1998),y(1170,1998,lT,T),s.Fb=function(t){return t===this},s.Hb=function(){return 2040732332},s.Ib=function(){return"Optional.absent()"},s.Jb=function(t){return nn(t),DS(),nG};var nG;S(fT,"Absent",1170),y(628,1,{},XN),S(fT,"Joiner",628);var fzt=pi(fT,"Predicate");y(582,1,{169:1,582:1,3:1,45:1},OCe),s.Mb=function(t){return Rqe(this,t)},s.Lb=function(t){return Rqe(this,t)},s.Fb=function(t){var n;return Q(t,582)?(n=c(t,582),Sse(this.a,n.a)):!1},s.Hb=function(){return xre(this.a)+306654252},s.Ib=function(){return Ekt(this.a)},S(fT,"Predicates/AndPredicate",582),y(408,1998,{408:1,3:1},LA),s.Fb=function(t){var n;return Q(t,408)?(n=c(t,408),$n(this.a,n.a)):!1},s.Hb=function(){return 1502476572+fi(this.a)},s.Ib=function(){return yJe+this.a+")"},s.Jb=function(t){return new LA(B8(t.Kb(this.a),"the Function passed to Optional.transform() must not return null."))},S(fT,"Present",408),y(198,1,OE),s.Nb=function(t){Sr(this,t)},s.Qb=function(){_9e()},S(qe,"UnmodifiableIterator",198),y(1978,198,DE),s.Qb=function(){_9e()},s.Rb=function(t){throw V(new sn)},s.Wb=function(t){throw V(new sn)},S(qe,"UnmodifiableListIterator",1978),y(386,1978,DE),s.Ob=function(){return this.c0},s.Pb=function(){if(this.c>=this.d)throw V(new tc);return this.Xb(this.c++)},s.Tb=function(){return this.c},s.Ub=function(){if(this.c<=0)throw V(new tc);return this.Xb(--this.c)},s.Vb=function(){return this.c-1},s.c=0,s.d=0,S(qe,"AbstractIndexedListIterator",386),y(699,198,OE),s.Ob=function(){return U$(this)},s.Pb=function(){return Bie(this)},s.e=1,S(qe,"AbstractIterator",699),y(1986,1,{224:1}),s.Zb=function(){var t;return t=this.f,t||(this.f=this.ac())},s.Fb=function(t){return fK(this,t)},s.Hb=function(){return fi(this.Zb())},s.dc=function(){return this.gc()==0},s.ec=function(){return Jy(this)},s.Ib=function(){return Ro(this.Zb())},S(qe,"AbstractMultimap",1986),y(726,1986,tb),s.$b=function(){kO(this)},s._b=function(t){return $9e(this,t)},s.ac=function(){return new c_(this,this.c)},s.ic=function(t){return this.hc()},s.bc=function(){return new Dm(this,this.c)},s.jc=function(){return this.mc(this.hc())},s.kc=function(){return new r9e(this)},s.lc=function(){return mq(this.c.vc().Nc(),new _,64,this.d)},s.cc=function(t){return Vn(this,t)},s.fc=function(t){return PI(this,t)},s.gc=function(){return this.d},s.mc=function(t){return st(),new W3(t)},s.nc=function(){return new i9e(this)},s.oc=function(){return mq(this.c.Cc().Nc(),new M,64,this.d)},s.pc=function(t,n){return new dO(this,t,n,null)},s.d=0,S(qe,"AbstractMapBasedMultimap",726),y(1631,726,tb),s.hc=function(){return new Dc(this.a)},s.jc=function(){return st(),st(),Qr},s.cc=function(t){return c(Vn(this,t),15)},s.fc=function(t){return c(PI(this,t),15)},s.Zb=function(){return n2(this)},s.Fb=function(t){return fK(this,t)},s.qc=function(t){return c(Vn(this,t),15)},s.rc=function(t){return c(PI(this,t),15)},s.mc=function(t){return NC(c(t,15))},s.pc=function(t,n){return ZNe(this,t,c(n,15),null)},S(qe,"AbstractListMultimap",1631),y(732,1,dr),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.c.Ob()||this.e.Ob()},s.Pb=function(){var t;return this.e.Ob()||(t=c(this.c.Pb(),42),this.b=t.cd(),this.a=c(t.dd(),14),this.e=this.a.Kc()),this.sc(this.b,this.e.Pb())},s.Qb=function(){this.e.Qb(),this.a.dc()&&this.c.Qb(),--this.d.d},S(qe,"AbstractMapBasedMultimap/Itr",732),y(1099,732,dr,i9e),s.sc=function(t,n){return n},S(qe,"AbstractMapBasedMultimap/1",1099),y(1100,1,{},M),s.Kb=function(t){return c(t,14).Nc()},S(qe,"AbstractMapBasedMultimap/1methodref$spliterator$Type",1100),y(1101,732,dr,r9e),s.sc=function(t,n){return new Vb(t,n)},S(qe,"AbstractMapBasedMultimap/2",1101);var the=pi(Gt,"Map");y(1967,1,x0),s.wc=function(t){U5(this,t)},s.yc=function(t,n,i){return TK(this,t,n,i)},s.$b=function(){this.vc().$b()},s.tc=function(t){return tq(this,t)},s._b=function(t){return!!Cce(this,t,!1)},s.uc=function(t){var n,i,r;for(i=this.vc().Kc();i.Ob();)if(n=c(i.Pb(),42),r=n.dd(),le(t)===le(r)||t!=null&&$n(t,r))return!0;return!1},s.Fb=function(t){var n,i,r;if(t===this)return!0;if(!Q(t,83)||(r=c(t,83),this.gc()!=r.gc()))return!1;for(i=r.vc().Kc();i.Ob();)if(n=c(i.Pb(),42),!this.tc(n))return!1;return!0},s.xc=function(t){return Uo(Cce(this,t,!1))},s.Hb=function(){return Mre(this.vc())},s.dc=function(){return this.gc()==0},s.ec=function(){return new U3(this)},s.zc=function(t,n){throw V(new td("Put not supported on this map"))},s.Ac=function(t){G5(this,t)},s.Bc=function(t){return Uo(Cce(this,t,!0))},s.gc=function(){return this.vc().gc()},s.Ib=function(){return LVe(this)},s.Cc=function(){return new yh(this)},S(Gt,"AbstractMap",1967),y(1987,1967,x0),s.bc=function(){return new c9(this)},s.vc=function(){return QRe(this)},s.ec=function(){var t;return t=this.g,t||(this.g=this.bc())},s.Cc=function(){var t;return t=this.i,t||(this.i=new D8e(this))},S(qe,"Maps/ViewCachingAbstractMap",1987),y(389,1987,x0,c_),s.xc=function(t){return rIt(this,t)},s.Bc=function(t){return yjt(this,t)},s.$b=function(){this.d==this.e.c?this.e.$b():b8(new Ute(this))},s._b=function(t){return dHe(this.d,t)},s.Ec=function(){return new xCe(this)},s.Dc=function(){return this.Ec()},s.Fb=function(t){return this===t||$n(this.d,t)},s.Hb=function(){return fi(this.d)},s.ec=function(){return this.e.ec()},s.gc=function(){return this.d.gc()},s.Ib=function(){return Ro(this.d)},S(qe,"AbstractMapBasedMultimap/AsMap",389);var zl=pi(Ho,"Iterable");y(28,1,ww),s.Jc=function(t){Mr(this,t)},s.Lc=function(){return this.Oc()},s.Nc=function(){return new bt(this,0)},s.Oc=function(){return new ht(null,this.Nc())},s.Fc=function(t){throw V(new td("Add not supported on this collection"))},s.Gc=function(t){return qr(this,t)},s.$b=function(){Dne(this)},s.Hc=function(t){return nw(this,t,!1)},s.Ic=function(t){return bI(this,t)},s.dc=function(){return this.gc()==0},s.Mc=function(t){return nw(this,t,!0)},s.Pc=function(){return cne(this)},s.Qc=function(t){return RI(this,t)},s.Ib=function(){return C1(this)},S(Gt,"AbstractCollection",28);var ha=pi(Gt,"Set");y(Kl,28,ys),s.Nc=function(){return new bt(this,1)},s.Fb=function(t){return cze(this,t)},s.Hb=function(){return Mre(this)},S(Gt,"AbstractSet",Kl),y(1970,Kl,ys),S(qe,"Sets/ImprovedAbstractSet",1970),y(1971,1970,ys),s.$b=function(){this.Rc().$b()},s.Hc=function(t){return KHe(this,t)},s.dc=function(){return this.Rc().dc()},s.Mc=function(t){var n;return this.Hc(t)?(n=c(t,42),this.Rc().ec().Mc(n.cd())):!1},s.gc=function(){return this.Rc().gc()},S(qe,"Maps/EntrySet",1971),y(1097,1971,ys,xCe),s.Hc=function(t){return eoe(this.a.d.vc(),t)},s.Kc=function(){return new Ute(this.a)},s.Rc=function(){return this.a},s.Mc=function(t){var n;return eoe(this.a.d.vc(),t)?(n=c(t,42),zMt(this.a.e,n.cd()),!0):!1},s.Nc=function(){return jC(this.a.d.vc().Nc(),new LCe(this.a))},S(qe,"AbstractMapBasedMultimap/AsMap/AsMapEntries",1097),y(1098,1,{},LCe),s.Kb=function(t){return qFe(this.a,c(t,42))},S(qe,"AbstractMapBasedMultimap/AsMap/AsMapEntries/0methodref$wrapEntry$Type",1098),y(730,1,dr,Ute),s.Nb=function(t){Sr(this,t)},s.Pb=function(){var t;return t=c(this.b.Pb(),42),this.a=c(t.dd(),14),qFe(this.c,t)},s.Ob=function(){return this.b.Ob()},s.Qb=function(){Km(!!this.a),this.b.Qb(),this.c.e.d-=this.a.gc(),this.a.$b(),this.a=null},S(qe,"AbstractMapBasedMultimap/AsMap/AsMapIterator",730),y(532,1970,ys,c9),s.$b=function(){this.b.$b()},s.Hc=function(t){return this.b._b(t)},s.Jc=function(t){nn(t),this.b.wc(new ZCe(t))},s.dc=function(){return this.b.dc()},s.Kc=function(){return new kS(this.b.vc().Kc())},s.Mc=function(t){return this.b._b(t)?(this.b.Bc(t),!0):!1},s.gc=function(){return this.b.gc()},S(qe,"Maps/KeySet",532),y(318,532,ys,Dm),s.$b=function(){var t;b8((t=this.b.vc().Kc(),new vZ(this,t)))},s.Ic=function(t){return this.b.ec().Ic(t)},s.Fb=function(t){return this===t||$n(this.b.ec(),t)},s.Hb=function(){return fi(this.b.ec())},s.Kc=function(){var t;return t=this.b.vc().Kc(),new vZ(this,t)},s.Mc=function(t){var n,i;return i=0,n=c(this.b.Bc(t),14),n&&(i=n.gc(),n.$b(),this.a.d-=i),i>0},s.Nc=function(){return this.b.ec().Nc()},S(qe,"AbstractMapBasedMultimap/KeySet",318),y(731,1,dr,vZ),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.c.Ob()},s.Pb=function(){return this.a=c(this.c.Pb(),42),this.a.cd()},s.Qb=function(){var t;Km(!!this.a),t=c(this.a.dd(),14),this.c.Qb(),this.b.a.d-=t.gc(),t.$b(),this.a=null},S(qe,"AbstractMapBasedMultimap/KeySet/1",731),y(491,389,{83:1,161:1},EC),s.bc=function(){return this.Sc()},s.ec=function(){return this.Tc()},s.Sc=function(){return new QM(this.c,this.Uc())},s.Tc=function(){var t;return t=this.b,t||(this.b=this.Sc())},s.Uc=function(){return c(this.d,161)},S(qe,"AbstractMapBasedMultimap/SortedAsMap",491),y(542,491,_Je,n8),s.bc=function(){return new o_(this.a,c(c(this.d,161),171))},s.Sc=function(){return new o_(this.a,c(c(this.d,161),171))},s.ec=function(){var t;return t=this.b,c(t||(this.b=new o_(this.a,c(c(this.d,161),171))),271)},s.Tc=function(){var t;return t=this.b,c(t||(this.b=new o_(this.a,c(c(this.d,161),171))),271)},s.Uc=function(){return c(c(this.d,161),171)},S(qe,"AbstractMapBasedMultimap/NavigableAsMap",542),y(490,318,EJe,QM),s.Nc=function(){return this.b.ec().Nc()},S(qe,"AbstractMapBasedMultimap/SortedKeySet",490),y(388,490,Fue,o_),S(qe,"AbstractMapBasedMultimap/NavigableKeySet",388),y(541,28,ww,dO),s.Fc=function(t){var n,i;return Bs(this),i=this.d.dc(),n=this.d.Fc(t),n&&(++this.f.d,i&&CC(this)),n},s.Gc=function(t){var n,i,r;return t.dc()?!1:(r=(Bs(this),this.d.gc()),n=this.d.Gc(t),n&&(i=this.d.gc(),this.f.d+=i-r,r==0&&CC(this)),n)},s.$b=function(){var t;t=(Bs(this),this.d.gc()),t!=0&&(this.d.$b(),this.f.d-=t,y8(this))},s.Hc=function(t){return Bs(this),this.d.Hc(t)},s.Ic=function(t){return Bs(this),this.d.Ic(t)},s.Fb=function(t){return t===this?!0:(Bs(this),$n(this.d,t))},s.Hb=function(){return Bs(this),fi(this.d)},s.Kc=function(){return Bs(this),new kte(this)},s.Mc=function(t){var n;return Bs(this),n=this.d.Mc(t),n&&(--this.f.d,y8(this)),n},s.gc=function(){return p7e(this)},s.Nc=function(){return Bs(this),this.d.Nc()},s.Ib=function(){return Bs(this),Ro(this.d)},S(qe,"AbstractMapBasedMultimap/WrappedCollection",541);var Vu=pi(Gt,"List");y(728,541,{20:1,28:1,14:1,15:1},une),s.ad=function(t){$m(this,t)},s.Nc=function(){return Bs(this),this.d.Nc()},s.Vc=function(t,n){var i;Bs(this),i=this.d.dc(),c(this.d,15).Vc(t,n),++this.a.d,i&&CC(this)},s.Wc=function(t,n){var i,r,o;return n.dc()?!1:(o=(Bs(this),this.d.gc()),i=c(this.d,15).Wc(t,n),i&&(r=this.d.gc(),this.a.d+=r-o,o==0&&CC(this)),i)},s.Xb=function(t){return Bs(this),c(this.d,15).Xb(t)},s.Xc=function(t){return Bs(this),c(this.d,15).Xc(t)},s.Yc=function(){return Bs(this),new Y7e(this)},s.Zc=function(t){return Bs(this),new uLe(this,t)},s.$c=function(t){var n;return Bs(this),n=c(this.d,15).$c(t),--this.a.d,y8(this),n},s._c=function(t,n){return Bs(this),c(this.d,15)._c(t,n)},s.bd=function(t,n){return Bs(this),ZNe(this.a,this.e,c(this.d,15).bd(t,n),this.b?this.b:this)},S(qe,"AbstractMapBasedMultimap/WrappedList",728),y(1096,728,{20:1,28:1,14:1,15:1,54:1},BDe),S(qe,"AbstractMapBasedMultimap/RandomAccessWrappedList",1096),y(620,1,dr,kte),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return I_(this),this.b.Ob()},s.Pb=function(){return I_(this),this.b.Pb()},s.Qb=function(){EDe(this)},S(qe,"AbstractMapBasedMultimap/WrappedCollection/WrappedIterator",620),y(729,620,Wf,Y7e,uLe),s.Qb=function(){EDe(this)},s.Rb=function(t){var n;n=p7e(this.a)==0,(I_(this),c(this.b,125)).Rb(t),++this.a.a.d,n&&CC(this.a)},s.Sb=function(){return(I_(this),c(this.b,125)).Sb()},s.Tb=function(){return(I_(this),c(this.b,125)).Tb()},s.Ub=function(){return(I_(this),c(this.b,125)).Ub()},s.Vb=function(){return(I_(this),c(this.b,125)).Vb()},s.Wb=function(t){(I_(this),c(this.b,125)).Wb(t)},S(qe,"AbstractMapBasedMultimap/WrappedList/WrappedListIterator",729),y(727,541,EJe,ete),s.Nc=function(){return Bs(this),this.d.Nc()},S(qe,"AbstractMapBasedMultimap/WrappedSortedSet",727),y(1095,727,Fue,K7e),S(qe,"AbstractMapBasedMultimap/WrappedNavigableSet",1095),y(1094,541,ys,ZDe),s.Nc=function(){return Bs(this),this.d.Nc()},S(qe,"AbstractMapBasedMultimap/WrappedSet",1094),y(1103,1,{},_),s.Kb=function(t){return XMt(c(t,42))},S(qe,"AbstractMapBasedMultimap/lambda$1$Type",1103),y(1102,1,{},NCe),s.Kb=function(t){return new Vb(this.a,t)},S(qe,"AbstractMapBasedMultimap/lambda$2$Type",1102);var fb=pi(Gt,"Map/Entry");y(345,1,hD),s.Fb=function(t){var n;return Q(t,42)?(n=c(t,42),df(this.cd(),n.cd())&&df(this.dd(),n.dd())):!1},s.Hb=function(){var t,n;return t=this.cd(),n=this.dd(),(t==null?0:fi(t))^(n==null?0:fi(n))},s.ed=function(t){throw V(new sn)},s.Ib=function(){return this.cd()+"="+this.dd()},S(qe,SJe,345),y(1988,28,ww),s.$b=function(){this.fd().$b()},s.Hc=function(t){var n;return Q(t,42)?(n=c(t,42),APt(this.fd(),n.cd(),n.dd())):!1},s.Mc=function(t){var n;return Q(t,42)?(n=c(t,42),kNe(this.fd(),n.cd(),n.dd())):!1},s.gc=function(){return this.fd().d},S(qe,"Multimaps/Entries",1988),y(733,1988,ww,YJ),s.Kc=function(){return this.a.kc()},s.fd=function(){return this.a},s.Nc=function(){return this.a.lc()},S(qe,"AbstractMultimap/Entries",733),y(734,733,ys,YQ),s.Nc=function(){return this.a.lc()},s.Fb=function(t){return zce(this,t)},s.Hb=function(){return RKe(this)},S(qe,"AbstractMultimap/EntrySet",734),y(735,28,ww,XJ),s.$b=function(){this.a.$b()},s.Hc=function(t){return gjt(this.a,t)},s.Kc=function(){return this.a.nc()},s.gc=function(){return this.a.d},s.Nc=function(){return this.a.oc()},S(qe,"AbstractMultimap/Values",735),y(1989,28,{835:1,20:1,28:1,14:1}),s.Jc=function(t){nn(t),Rm(this).Jc(new QCe(t))},s.Nc=function(){var t;return t=Rm(this).Nc(),mq(t,new ce,64|t.qd()&1296,this.a.d)},s.Fc=function(t){return rZ(),!0},s.Gc=function(t){return nn(this),nn(t),Q(t,543)?xPt(c(t,835)):!t.dc()&&F$(this,t.Kc())},s.Hc=function(t){var n;return n=c(tw(n2(this.a),t),14),(n?n.gc():0)>0},s.Fb=function(t){return Txt(this,t)},s.Hb=function(){return fi(Rm(this))},s.dc=function(){return Rm(this).dc()},s.Mc=function(t){return ZGe(this,t,1)>0},s.Ib=function(){return Ro(Rm(this))},S(qe,"AbstractMultiset",1989),y(1991,1970,ys),s.$b=function(){kO(this.a.a)},s.Hc=function(t){var n,i;return Q(t,492)?(i=c(t,416),c(i.a.dd(),14).gc()<=0?!1:(n=aNe(this.a,i.a.cd()),n==c(i.a.dd(),14).gc())):!1},s.Mc=function(t){var n,i,r,o;return Q(t,492)&&(i=c(t,416),n=i.a.cd(),r=c(i.a.dd(),14).gc(),r!=0)?(o=this.a,pRt(o,n,r)):!1},S(qe,"Multisets/EntrySet",1991),y(1109,1991,ys,FCe),s.Kc=function(){return new h9e(QRe(n2(this.a.a)).Kc())},s.gc=function(){return n2(this.a.a).gc()},S(qe,"AbstractMultiset/EntrySet",1109),y(619,726,tb),s.hc=function(){return this.gd()},s.jc=function(){return this.hd()},s.cc=function(t){return this.jd(t)},s.fc=function(t){return this.kd(t)},s.Zb=function(){var t;return t=this.f,t||(this.f=this.ac())},s.hd=function(){return st(),st(),Tk},s.Fb=function(t){return fK(this,t)},s.jd=function(t){return c(Vn(this,t),21)},s.kd=function(t){return c(PI(this,t),21)},s.mc=function(t){return st(),new t_(c(t,21))},s.pc=function(t,n){return new ZDe(this,t,c(n,21))},S(qe,"AbstractSetMultimap",619),y(1657,619,tb),s.hc=function(){return new o1(this.b)},s.gd=function(){return new o1(this.b)},s.jc=function(){return Sne(new o1(this.b))},s.hd=function(){return Sne(new o1(this.b))},s.cc=function(t){return c(c(Vn(this,t),21),84)},s.jd=function(t){return c(c(Vn(this,t),21),84)},s.fc=function(t){return c(c(PI(this,t),21),84)},s.kd=function(t){return c(c(PI(this,t),21),84)},s.mc=function(t){return Q(t,271)?Sne(c(t,271)):(st(),new kee(c(t,84)))},s.Zb=function(){var t;return t=this.f,t||(this.f=Q(this.c,171)?new n8(this,c(this.c,171)):Q(this.c,161)?new EC(this,c(this.c,161)):new c_(this,this.c))},s.pc=function(t,n){return Q(n,271)?new K7e(this,t,c(n,271)):new ete(this,t,c(n,84))},S(qe,"AbstractSortedSetMultimap",1657),y(1658,1657,tb),s.Zb=function(){var t;return t=this.f,c(c(t||(this.f=Q(this.c,171)?new n8(this,c(this.c,171)):Q(this.c,161)?new EC(this,c(this.c,161)):new c_(this,this.c)),161),171)},s.ec=function(){var t;return t=this.i,c(c(t||(this.i=Q(this.c,171)?new o_(this,c(this.c,171)):Q(this.c,161)?new QM(this,c(this.c,161)):new Dm(this,this.c)),84),271)},s.bc=function(){return Q(this.c,171)?new o_(this,c(this.c,171)):Q(this.c,161)?new QM(this,c(this.c,161)):new Dm(this,this.c)},S(qe,"AbstractSortedKeySortedSetMultimap",1658),y(2010,1,{1947:1}),s.Fb=function(t){return o7t(this,t)},s.Hb=function(){var t;return Mre((t=this.g,t||(this.g=new PN(this))))},s.Ib=function(){var t;return LVe((t=this.f,t||(this.f=new Mee(this))))},S(qe,"AbstractTable",2010),y(665,Kl,ys,PN),s.$b=function(){E9e()},s.Hc=function(t){var n,i;return Q(t,468)?(n=c(t,682),i=c(tw(_xe(this.a),u1(n.c.e,n.b)),83),!!i&&eoe(i.vc(),new Vb(u1(n.c.c,n.a),a2(n.c,n.b,n.a)))):!1},s.Kc=function(){return H5t(this.a)},s.Mc=function(t){var n,i;return Q(t,468)?(n=c(t,682),i=c(tw(_xe(this.a),u1(n.c.e,n.b)),83),!!i&&Kjt(i.vc(),new Vb(u1(n.c.c,n.a),a2(n.c,n.b,n.a)))):!1},s.gc=function(){return kRe(this.a)},s.Nc=function(){return FPt(this.a)},S(qe,"AbstractTable/CellSet",665),y(1928,28,ww,BCe),s.$b=function(){E9e()},s.Hc=function(t){return X7t(this.a,t)},s.Kc=function(){return z5t(this.a)},s.gc=function(){return kRe(this.a)},s.Nc=function(){return LNe(this.a)},S(qe,"AbstractTable/Values",1928),y(1632,1631,tb),S(qe,"ArrayListMultimapGwtSerializationDependencies",1632),y(513,1632,tb,YN,Wne),s.hc=function(){return new Dc(this.a)},s.a=0,S(qe,"ArrayListMultimap",513),y(664,2010,{664:1,1947:1,3:1},aUe),S(qe,"ArrayTable",664),y(1924,386,DE,pDe),s.Xb=function(t){return new jre(this.a,t)},S(qe,"ArrayTable/1",1924),y(1925,1,{},DCe),s.ld=function(t){return new jre(this.a,t)},S(qe,"ArrayTable/1methodref$getCell$Type",1925),y(2011,1,{682:1}),s.Fb=function(t){var n;return t===this?!0:Q(t,468)?(n=c(t,682),df(u1(this.c.e,this.b),u1(n.c.e,n.b))&&df(u1(this.c.c,this.a),u1(n.c.c,n.a))&&df(a2(this.c,this.b,this.a),a2(n.c,n.b,n.a))):!1},s.Hb=function(){return ZO(U(G(xt,1),xe,1,5,[u1(this.c.e,this.b),u1(this.c.c,this.a),a2(this.c,this.b,this.a)]))},s.Ib=function(){return"("+u1(this.c.e,this.b)+","+u1(this.c.c,this.a)+")="+a2(this.c,this.b,this.a)},S(qe,"Tables/AbstractCell",2011),y(468,2011,{468:1,682:1},jre),s.a=0,s.b=0,s.d=0,S(qe,"ArrayTable/2",468),y(1927,1,{},kCe),s.ld=function(t){return UBe(this.a,t)},S(qe,"ArrayTable/2methodref$getValue$Type",1927),y(1926,386,DE,wDe),s.Xb=function(t){return UBe(this.a,t)},S(qe,"ArrayTable/3",1926),y(1979,1967,x0),s.$b=function(){b8(this.kc())},s.vc=function(){return new eIe(this)},s.lc=function(){return new Yxe(this.kc(),this.gc())},S(qe,"Maps/IteratorBasedAbstractMap",1979),y(828,1979,x0),s.$b=function(){throw V(new sn)},s._b=function(t){return K9e(this.c,t)},s.kc=function(){return new mDe(this,this.c.b.c.gc())},s.lc=function(){return gB(this.c.b.c.gc(),16,new RCe(this))},s.xc=function(t){var n;return n=c(v5(this.c,t),19),n?this.nd(n.a):null},s.dc=function(){return this.c.b.c.dc()},s.ec=function(){return EB(this.c)},s.zc=function(t,n){var i;if(i=c(v5(this.c,t),19),!i)throw V(new St(this.md()+" "+t+" not in "+EB(this.c)));return this.od(i.a,n)},s.Bc=function(t){throw V(new sn)},s.gc=function(){return this.c.b.c.gc()},S(qe,"ArrayTable/ArrayMap",828),y(1923,1,{},RCe),s.ld=function(t){return Sxe(this.a,t)},S(qe,"ArrayTable/ArrayMap/0methodref$getEntry$Type",1923),y(1921,345,hD,_8e),s.cd=function(){return o3t(this.a,this.b)},s.dd=function(){return this.a.nd(this.b)},s.ed=function(t){return this.a.od(this.b,t)},s.b=0,S(qe,"ArrayTable/ArrayMap/1",1921),y(1922,386,DE,mDe),s.Xb=function(t){return Sxe(this.a,t)},S(qe,"ArrayTable/ArrayMap/2",1922),y(1920,828,x0,lxe),s.md=function(){return"Column"},s.nd=function(t){return a2(this.b,this.a,t)},s.od=function(t,n){return vqe(this.b,this.a,t,n)},s.a=0,S(qe,"ArrayTable/Row",1920),y(829,828,x0,Mee),s.nd=function(t){return new lxe(this.a,t)},s.zc=function(t,n){return c(n,83),qvt()},s.od=function(t,n){return c(n,83),Hvt()},s.md=function(){return"Row"},S(qe,"ArrayTable/RowMap",829),y(1120,1,oa,E8e),s.qd=function(){return this.a.qd()&-262},s.rd=function(){return this.a.rd()},s.Nb=function(t){this.a.Nb(new w8e(t,this.b))},s.sd=function(t){return this.a.sd(new p8e(t,this.b))},S(qe,"CollectSpliterators/1",1120),y(1121,1,Rt,p8e),s.td=function(t){this.a.td(this.b.Kb(t))},S(qe,"CollectSpliterators/1/lambda$0$Type",1121),y(1122,1,Rt,w8e),s.td=function(t){this.a.td(this.b.Kb(t))},S(qe,"CollectSpliterators/1/lambda$1$Type",1122),y(1123,1,oa,UNe),s.qd=function(){return this.a},s.rd=function(){return this.d&&(this.b=J7e(this.b,this.d.rd())),J7e(this.b,0)},s.Nb=function(t){this.d&&(this.d.Nb(t),this.d=null),this.c.Nb(new b8e(this.e,t)),this.b=0},s.sd=function(t){for(;;){if(this.d&&this.d.sd(t))return s5(this.b,dD)&&(this.b=P1(this.b,1)),!0;if(this.d=null,!this.c.sd(new m8e(this,this.e)))return!1}},s.a=0,s.b=0,S(qe,"CollectSpliterators/1FlatMapSpliterator",1123),y(1124,1,Rt,m8e),s.td=function(t){u_t(this.a,this.b,t)},S(qe,"CollectSpliterators/1FlatMapSpliterator/lambda$0$Type",1124),y(1125,1,Rt,b8e),s.td=function(t){G2t(this.b,this.a,t)},S(qe,"CollectSpliterators/1FlatMapSpliterator/lambda$1$Type",1125),y(1117,1,oa,jke),s.qd=function(){return 16464|this.b},s.rd=function(){return this.a.rd()},s.Nb=function(t){this.a.xe(new y8e(t,this.c))},s.sd=function(t){return this.a.ye(new v8e(t,this.c))},s.b=0,S(qe,"CollectSpliterators/1WithCharacteristics",1117),y(1118,1,hT,v8e),s.ud=function(t){this.a.td(this.b.ld(t))},S(qe,"CollectSpliterators/1WithCharacteristics/lambda$0$Type",1118),y(1119,1,hT,y8e),s.ud=function(t){this.a.td(this.b.ld(t))},S(qe,"CollectSpliterators/1WithCharacteristics/lambda$1$Type",1119),y(245,1,SH),s.wd=function(t){return this.vd(c(t,245))},s.vd=function(t){var n;return t==($N(),rG)?1:t==(KN(),iG)?-1:(n=(h8(),fI(this.a,t.a)),n!=0?n:Q(this,519)==Q(t,519)?0:Q(this,519)?1:-1)},s.zd=function(){return this.a},s.Fb=function(t){return Doe(this,t)},S(qe,"Cut",245),y(1761,245,SH,M9e),s.vd=function(t){return t==this?0:1},s.xd=function(t){throw V(new OQ)},s.yd=function(t){t.a+="+∞)"},s.zd=function(){throw V(new Ao(MJe))},s.Hb=function(){return Nf(),Koe(this)},s.Ad=function(t){return!1},s.Ib=function(){return"+∞"};var iG;S(qe,"Cut/AboveAll",1761),y(519,245,{245:1,519:1,3:1,35:1},SDe),s.xd=function(t){nc((t.a+="(",t),this.a)},s.yd=function(t){Dg(nc(t,this.a),93)},s.Hb=function(){return~fi(this.a)},s.Ad=function(t){return h8(),fI(this.a,t)<0},s.Ib=function(){return"/"+this.a+"\\"},S(qe,"Cut/AboveValue",519),y(1760,245,SH,C9e),s.vd=function(t){return t==this?0:-1},s.xd=function(t){t.a+="(-∞"},s.yd=function(t){throw V(new OQ)},s.zd=function(){throw V(new Ao(MJe))},s.Hb=function(){return Nf(),Koe(this)},s.Ad=function(t){return!0},s.Ib=function(){return"-∞"};var rG;S(qe,"Cut/BelowAll",1760),y(1762,245,SH,PDe),s.xd=function(t){nc((t.a+="[",t),this.a)},s.yd=function(t){Dg(nc(t,this.a),41)},s.Hb=function(){return fi(this.a)},s.Ad=function(t){return h8(),fI(this.a,t)<=0},s.Ib=function(){return"\\"+this.a+"/"},S(qe,"Cut/BelowValue",1762),y(537,1,Yf),s.Jc=function(t){Mr(this,t)},s.Ib=function(){return wAt(c(B8(this,"use Optional.orNull() instead of Optional.or(null)"),20).Kc())},S(qe,"FluentIterable",537),y(433,537,Yf,l5),s.Kc=function(){return new Kt(Ht(this.a.Kc(),new j))},S(qe,"FluentIterable/2",433),y(1046,537,Yf,T7e),s.Kc=function(){return d1(this)},S(qe,"FluentIterable/3",1046),y(708,386,DE,Cee),s.Xb=function(t){return this.a[t].Kc()},S(qe,"FluentIterable/3/1",708),y(1972,1,{}),s.Ib=function(){return Ro(this.Bd().b)},S(qe,"ForwardingObject",1972),y(1973,1972,CJe),s.Bd=function(){return this.Cd()},s.Jc=function(t){Mr(this,t)},s.Lc=function(){return this.Oc()},s.Nc=function(){return new bt(this,0)},s.Oc=function(){return new ht(null,this.Nc())},s.Fc=function(t){return this.Cd(),V9e()},s.Gc=function(t){return this.Cd(),G9e()},s.$b=function(){this.Cd(),U9e()},s.Hc=function(t){return this.Cd().Hc(t)},s.Ic=function(t){return this.Cd().Ic(t)},s.dc=function(){return this.Cd().b.dc()},s.Kc=function(){return this.Cd().Kc()},s.Mc=function(t){return this.Cd(),W9e()},s.gc=function(){return this.Cd().b.gc()},s.Pc=function(){return this.Cd().Pc()},s.Qc=function(t){return this.Cd().Qc(t)},S(qe,"ForwardingCollection",1973),y(1980,28,Bue),s.Kc=function(){return this.Ed()},s.Fc=function(t){throw V(new sn)},s.Gc=function(t){throw V(new sn)},s.$b=function(){throw V(new sn)},s.Hc=function(t){return t!=null&&nw(this,t,!1)},s.Dd=function(){switch(this.gc()){case 0:return Hp(),Hp(),oG;case 1:return Hp(),new bB(nn(this.Ed().Pb()));default:return new fxe(this,this.Pc())}},s.Mc=function(t){throw V(new sn)},S(qe,"ImmutableCollection",1980),y(712,1980,Bue,jQ),s.Kc=function(){return l2(this.a.Kc())},s.Hc=function(t){return t!=null&&this.a.Hc(t)},s.Ic=function(t){return this.a.Ic(t)},s.dc=function(){return this.a.dc()},s.Ed=function(){return l2(this.a.Kc())},s.gc=function(){return this.a.gc()},s.Pc=function(){return this.a.Pc()},s.Qc=function(t){return this.a.Qc(t)},s.Ib=function(){return Ro(this.a)},S(qe,"ForwardingImmutableCollection",712),y(152,1980,T6),s.Kc=function(){return this.Ed()},s.Yc=function(){return this.Fd(0)},s.Zc=function(t){return this.Fd(t)},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.bd=function(t,n){return this.Gd(t,n)},s.Vc=function(t,n){throw V(new sn)},s.Wc=function(t,n){throw V(new sn)},s.Fb=function(t){return hxt(this,t)},s.Hb=function(){return STt(this)},s.Xc=function(t){return t==null?-1:L8t(this,t)},s.Ed=function(){return this.Fd(0)},s.Fd=function(t){return Kee(this,t)},s.$c=function(t){throw V(new sn)},s._c=function(t,n){throw V(new sn)},s.Gd=function(t,n){var i;return n7((i=new k8e(this),new Hf(i,t,n)))};var oG;S(qe,"ImmutableList",152),y(2006,152,T6),s.Kc=function(){return l2(this.Hd().Kc())},s.bd=function(t,n){return n7(this.Hd().bd(t,n))},s.Hc=function(t){return t!=null&&this.Hd().Hc(t)},s.Ic=function(t){return this.Hd().Ic(t)},s.Fb=function(t){return $n(this.Hd(),t)},s.Xb=function(t){return u1(this,t)},s.Hb=function(){return fi(this.Hd())},s.Xc=function(t){return this.Hd().Xc(t)},s.dc=function(){return this.Hd().dc()},s.Ed=function(){return l2(this.Hd().Kc())},s.gc=function(){return this.Hd().gc()},s.Gd=function(t,n){return n7(this.Hd().bd(t,n))},s.Pc=function(){return this.Hd().Qc(oe(xt,xe,1,this.Hd().gc(),5,1))},s.Qc=function(t){return this.Hd().Qc(t)},s.Ib=function(){return Ro(this.Hd())},S(qe,"ForwardingImmutableList",2006),y(714,1,kE),s.vc=function(){return e0(this)},s.wc=function(t){U5(this,t)},s.ec=function(){return EB(this)},s.yc=function(t,n,i){return TK(this,t,n,i)},s.Cc=function(){return this.Ld()},s.$b=function(){throw V(new sn)},s._b=function(t){return this.xc(t)!=null},s.uc=function(t){return this.Ld().Hc(t)},s.Jd=function(){return new pAe(this)},s.Kd=function(){return new wAe(this)},s.Fb=function(t){return bjt(this,t)},s.Hb=function(){return e0(this).Hb()},s.dc=function(){return this.gc()==0},s.zc=function(t,n){return zvt()},s.Bc=function(t){throw V(new sn)},s.Ib=function(){return UDt(this)},s.Ld=function(){return this.e?this.e:this.e=this.Kd()},s.c=null,s.d=null,s.e=null;var qtt;S(qe,"ImmutableMap",714),y(715,714,kE),s._b=function(t){return K9e(this,t)},s.uc=function(t){return N8e(this.b,t)},s.Id=function(){return hHe(new $Ce(this))},s.Jd=function(){return hHe(Vxe(this.b))},s.Kd=function(){return hf(),new jQ(zxe(this.b))},s.Fb=function(t){return F8e(this.b,t)},s.xc=function(t){return v5(this,t)},s.Hb=function(){return fi(this.b.c)},s.dc=function(){return this.b.c.dc()},s.gc=function(){return this.b.c.gc()},s.Ib=function(){return Ro(this.b.c)},S(qe,"ForwardingImmutableMap",715),y(1974,1973,PH),s.Bd=function(){return this.Md()},s.Cd=function(){return this.Md()},s.Nc=function(){return new bt(this,1)},s.Fb=function(t){return t===this||this.Md().Fb(t)},s.Hb=function(){return this.Md().Hb()},S(qe,"ForwardingSet",1974),y(1069,1974,PH,$Ce),s.Bd=function(){return M_(this.a.b)},s.Cd=function(){return M_(this.a.b)},s.Hc=function(t){if(Q(t,42)&&c(t,42).cd()==null)return!1;try{return L8e(M_(this.a.b),t)}catch(n){if(n=gi(n),Q(n,205))return!1;throw V(n)}},s.Md=function(){return M_(this.a.b)},s.Qc=function(t){var n;return n=CLe(M_(this.a.b),t),M_(this.a.b).b.gc()=0?"+":"")+(i/60|0),n=B9(g.Math.abs(i)%60),(GVe(),rnt)[this.q.getDay()]+" "+ont[this.q.getMonth()]+" "+B9(this.q.getDate())+" "+B9(this.q.getHours())+":"+B9(this.q.getMinutes())+":"+B9(this.q.getSeconds())+" GMT"+t+n+" "+this.q.getFullYear()};var Mk=S(Gt,"Date",199);y(1915,199,xJe,vVe),s.a=!1,s.b=0,s.c=0,s.d=0,s.e=0,s.f=0,s.g=!1,s.i=0,s.j=0,s.k=0,s.n=0,s.o=0,s.p=0,S("com.google.gwt.i18n.shared.impl","DateRecord",1915),y(1966,1,{}),s.fe=function(){return null},s.ge=function(){return null},s.he=function(){return null},s.ie=function(){return null},s.je=function(){return null},S(I2,"JSONValue",1966),y(216,1966,{216:1},Eg,QJ),s.Fb=function(t){return Q(t,216)?Jne(this.a,c(t,216).a):!1},s.ee=function(){return hvt},s.Hb=function(){return Fne(this.a)},s.fe=function(){return this},s.Ib=function(){var t,n,i;for(i=new lu("["),n=0,t=this.a.length;n0&&(i.a+=","),nc(i,Yp(this,n));return i.a+="]",i.a},S(I2,"JSONArray",216),y(483,1966,{483:1},ZJ),s.ee=function(){return dvt},s.ge=function(){return this},s.Ib=function(){return Pt(),""+this.a},s.a=!1;var Ytt,Xtt;S(I2,"JSONBoolean",483),y(985,60,$h,d9e),S(I2,"JSONException",985),y(1023,1966,{},re),s.ee=function(){return mvt},s.Ib=function(){return rs};var Jtt;S(I2,"JSONNull",1023),y(258,1966,{258:1},NA),s.Fb=function(t){return Q(t,258)?this.a==c(t,258).a:!1},s.ee=function(){return gvt},s.Hb=function(){return f_(this.a)},s.he=function(){return this},s.Ib=function(){return this.a+""},s.a=0,S(I2,"JSONNumber",258),y(183,1966,{183:1},xy,BM),s.Fb=function(t){return Q(t,183)?Jne(this.a,c(t,183).a):!1},s.ee=function(){return bvt},s.Hb=function(){return Fne(this.a)},s.ie=function(){return this},s.Ib=function(){var t,n,i,r,o,u,a;for(a=new lu("{"),t=!0,u=J$(this,oe(Re,we,2,0,6,1)),i=u,r=0,o=i.length;r=0?":"+this.c:"")+")"},s.c=0;var mhe=S(Ho,"StackTraceElement",310);Ktt={3:1,475:1,35:1,2:1};var Re=S(Ho,$ue,2);y(107,418,{475:1},nd,FS,ea),S(Ho,"StringBuffer",107),y(100,418,{475:1},n1,_m,lu),S(Ho,"StringBuilder",100),y(687,73,UH,cZ),S(Ho,"StringIndexOutOfBoundsException",687),y(2043,1,{});var vhe;y(844,1,{},Gn),s.Kb=function(t){return c(t,78).e},S(Ho,"Throwable/lambda$0$Type",844),y(41,60,{3:1,102:1,60:1,78:1,41:1},sn,td),S(Ho,"UnsupportedOperationException",41),y(240,236,{3:1,35:1,236:1,240:1},cI,bZ),s.wd=function(t){return CYe(this,c(t,240))},s.ke=function(){return aw(uXe(this))},s.Fb=function(t){var n;return this===t?!0:Q(t,240)?(n=c(t,240),this.e==n.e&&CYe(this,n)==0):!1},s.Hb=function(){var t;return this.b!=0?this.b:this.a<54?(t=ns(this.f),this.b=tn(Xi(t,-1)),this.b=33*this.b+tn(Xi(h1(t,32),-1)),this.b=17*this.b+xi(this.e),this.b):(this.b=17*cHe(this.c)+xi(this.e),this.b)},s.Ib=function(){return uXe(this)},s.a=0,s.b=0,s.d=0,s.e=0,s.f=0;var tnt,db,yhe,_he,Ehe,She,Phe,Mhe,dG=S("java.math","BigDecimal",240);y(91,236,{3:1,35:1,236:1,91:1},$oe,ld,km,Ece,aze,l1),s.wd=function(t){return rze(this,c(t,91))},s.ke=function(){return aw(yH(this,0))},s.Fb=function(t){return voe(this,t)},s.Hb=function(){return cHe(this)},s.Ib=function(){return yH(this,0)},s.b=-2,s.c=0,s.d=0,s.e=0;var gG,Ck,Che,bG,Ik,t4,Ev=S("java.math","BigInteger",91),nnt,int,$2,uP;y(488,1967,x0),s.$b=function(){Is(this)},s._b=function(t){return tu(this,t)},s.uc=function(t){return zqe(this,t,this.g)||zqe(this,t,this.f)},s.vc=function(){return new Pg(this)},s.xc=function(t){return Bt(this,t)},s.zc=function(t,n){return Kn(this,t,n)},s.Bc=function(t){return u2(this,t)},s.gc=function(){return KS(this)},S(Gt,"AbstractHashMap",488),y(261,Kl,ys,Pg),s.$b=function(){this.a.$b()},s.Hc=function(t){return qNe(this,t)},s.Kc=function(){return new Gg(this.a)},s.Mc=function(t){var n;return qNe(this,t)?(n=c(t,42).cd(),this.a.Bc(n),!0):!1},s.gc=function(){return this.a.gc()},S(Gt,"AbstractHashMap/EntrySet",261),y(262,1,dr,Gg),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return g0(this)},s.Ob=function(){return this.b},s.Qb=function(){BBe(this)},s.b=!1,S(Gt,"AbstractHashMap/EntrySetIterator",262),y(417,1,dr,CS),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return iC(this)},s.Pb=function(){return lLe(this)},s.Qb=function(){nu(this)},s.b=0,s.c=-1,S(Gt,"AbstractList/IteratorImpl",417),y(96,417,Wf,_r),s.Qb=function(){nu(this)},s.Rb=function(t){Np(this,t)},s.Sb=function(){return this.b>0},s.Tb=function(){return this.b},s.Ub=function(){return Lt(this.b>0),this.a.Xb(this.c=--this.b)},s.Vb=function(){return this.b-1},s.Wb=function(t){Rp(this.c!=-1),this.a._c(this.c,t)},S(Gt,"AbstractList/ListIteratorImpl",96),y(219,52,xE,Hf),s.Vc=function(t,n){Vp(t,this.b),this.c.Vc(this.a+t,n),++this.b},s.Xb=function(t){return pt(t,this.b),this.c.Xb(this.a+t)},s.$c=function(t){var n;return pt(t,this.b),n=this.c.$c(this.a+t),--this.b,n},s._c=function(t,n){return pt(t,this.b),this.c._c(this.a+t,n)},s.gc=function(){return this.b},s.a=0,s.b=0,S(Gt,"AbstractList/SubList",219),y(384,Kl,ys,U3),s.$b=function(){this.a.$b()},s.Hc=function(t){return this.a._b(t)},s.Kc=function(){var t;return t=this.a.vc().Kc(),new oQ(t)},s.Mc=function(t){return this.a._b(t)?(this.a.Bc(t),!0):!1},s.gc=function(){return this.a.gc()},S(Gt,"AbstractMap/1",384),y(691,1,dr,oQ),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.a.Ob()},s.Pb=function(){var t;return t=c(this.a.Pb(),42),t.cd()},s.Qb=function(){this.a.Qb()},S(Gt,"AbstractMap/1/1",691),y(226,28,ww,yh),s.$b=function(){this.a.$b()},s.Hc=function(t){return this.a.uc(t)},s.Kc=function(){var t;return t=this.a.vc().Kc(),new Cp(t)},s.gc=function(){return this.a.gc()},S(Gt,"AbstractMap/2",226),y(294,1,dr,Cp),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.a.Ob()},s.Pb=function(){var t;return t=c(this.a.Pb(),42),t.dd()},s.Qb=function(){this.a.Qb()},S(Gt,"AbstractMap/2/1",294),y(484,1,{484:1,42:1}),s.Fb=function(t){var n;return Q(t,42)?(n=c(t,42),wc(this.d,n.cd())&&wc(this.e,n.dd())):!1},s.cd=function(){return this.d},s.dd=function(){return this.e},s.Hb=function(){return jm(this.d)^jm(this.e)},s.ed=function(t){return ste(this,t)},s.Ib=function(){return this.d+"="+this.e},S(Gt,"AbstractMap/AbstractEntry",484),y(383,484,{484:1,383:1,42:1},y9),S(Gt,"AbstractMap/SimpleEntry",383),y(1984,1,JH),s.Fb=function(t){var n;return Q(t,42)?(n=c(t,42),wc(this.cd(),n.cd())&&wc(this.dd(),n.dd())):!1},s.Hb=function(){return jm(this.cd())^jm(this.dd())},s.Ib=function(){return this.cd()+"="+this.dd()},S(Gt,SJe,1984),y(1992,1967,_Je),s.tc=function(t){return XFe(this,t)},s._b=function(t){return iB(this,t)},s.vc=function(){return new lQ(this)},s.xc=function(t){var n;return n=t,Uo($re(this,n))},s.ec=function(){return new qM(this)},S(Gt,"AbstractNavigableMap",1992),y(739,Kl,ys,lQ),s.Hc=function(t){return Q(t,42)&&XFe(this.b,c(t,42))},s.Kc=function(){return new m5(this.b)},s.Mc=function(t){var n;return Q(t,42)?(n=c(t,42),NBe(this.b,n)):!1},s.gc=function(){return this.b.c},S(Gt,"AbstractNavigableMap/EntrySet",739),y(493,Kl,Fue,qM),s.Nc=function(){return new m9(this)},s.$b=function(){RS(this.a)},s.Hc=function(t){return iB(this.a,t)},s.Kc=function(){var t;return t=new m5(new b5(this.a).b),new HM(t)},s.Mc=function(t){return iB(this.a,t)?(D5(this.a,t),!0):!1},s.gc=function(){return this.a.c},S(Gt,"AbstractNavigableMap/NavigableKeySet",493),y(494,1,dr,HM),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return iC(this.a.a)},s.Pb=function(){var t;return t=e8(this.a),t.cd()},s.Qb=function(){$ke(this.a)},S(Gt,"AbstractNavigableMap/NavigableKeySet/1",494),y(2004,28,ww),s.Fc=function(t){return R_(wE(this,t)),!0},s.Gc=function(t){return yt(t),u8(t!=this,"Can't add a queue to itself"),qr(this,t)},s.$b=function(){for(;B$(this)!=null;);},S(Gt,"AbstractQueue",2004),y(302,28,{4:1,20:1,28:1,14:1},vm,dNe),s.Fc=function(t){return oie(this,t),!0},s.$b=function(){fie(this)},s.Hc=function(t){return dqe(new O5(this),t)},s.dc=function(){return xS(this)},s.Kc=function(){return new O5(this)},s.Mc=function(t){return T6t(new O5(this),t)},s.gc=function(){return this.c-this.b&this.a.length-1},s.Nc=function(){return new bt(this,272)},s.Qc=function(t){var n;return n=this.c-this.b&this.a.length-1,t.lengthn&&vi(t,n,null),t},s.b=0,s.c=0,S(Gt,"ArrayDeque",302),y(446,1,dr,O5),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.a!=this.b},s.Pb=function(){return t7(this)},s.Qb=function(){fKe(this)},s.a=0,s.b=0,s.c=-1,S(Gt,"ArrayDeque/IteratorImpl",446),y(12,52,FJe,Se,Dc,ps),s.Vc=function(t,n){Bp(this,t,n)},s.Fc=function(t){return Ee(this,t)},s.Wc=function(t,n){return Gre(this,t,n)},s.Gc=function(t){return Hi(this,t)},s.$b=function(){this.c=oe(xt,xe,1,0,5,1)},s.Hc=function(t){return Do(this,t,0)!=-1},s.Jc=function(t){Zc(this,t)},s.Xb=function(t){return Ne(this,t)},s.Xc=function(t){return Do(this,t,0)},s.dc=function(){return this.c.length==0},s.Kc=function(){return new q(this)},s.$c=function(t){return ad(this,t)},s.Mc=function(t){return Jc(this,t)},s.Ud=function(t,n){hNe(this,t,n)},s._c=function(t,n){return Lu(this,t,n)},s.gc=function(){return this.c.length},s.ad=function(t){cr(this,t)},s.Pc=function(){return GF(this)},s.Qc=function(t){return Bl(this,t)};var hzt=S(Gt,"ArrayList",12);y(7,1,dr,q),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return Fo(this)},s.Pb=function(){return K(this)},s.Qb=function(){I5(this)},s.a=0,s.b=-1,S(Gt,"ArrayList/1",7),y(2013,g.Function,{},ve),s.te=function(t,n){return zi(t,n)},y(154,52,BJe,Js),s.Hc=function(t){return dKe(this,t)!=-1},s.Jc=function(t){var n,i,r,o;for(yt(t),i=this.a,r=0,o=i.length;r>>0,t.toString(16)))},s.f=0,s.i=$i;var Dk=S(Qf,"CNode",57);y(814,1,{},$Q),S(Qf,"CNode/CNodeBuilder",814);var vnt;y(1525,1,{},or),s.Oe=function(t,n){return 0},s.Pe=function(t,n){return 0},S(Qf,UJe,1525),y(1790,1,{},uu),s.Le=function(t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;for(p=Ii,r=new q(t.a.b);r.ar.d.c||r.d.c==u.d.c&&r.d.b0?t+this.n.d+this.n.a:0},s.Se=function(){var t,n,i,r,o;if(o=0,this.e)this.b?o=this.b.a:this.a[1][1]&&(o=this.a[1][1].Se());else if(this.g)o=goe(this,aq(this,null,!0));else for(n=(al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])),i=0,r=n.length;i0?o+this.n.b+this.n.c:0},s.Te=function(){var t,n,i,r,o;if(this.g)for(t=aq(this,null,!1),i=(al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])),r=0,o=i.length;r0&&(r[0]+=this.d,i-=r[0]),r[2]>0&&(r[2]+=this.d,i-=r[2]),this.c.a=g.Math.max(0,i),this.c.d=n.d+t.d+(this.c.a-i)/2,r[1]=g.Math.max(r[1],i),mie(this,Nc,n.d+t.d+r[0]-(r[1]-i)/2,r)},s.b=null,s.d=0,s.e=!1,s.f=!1,s.g=!1;var EG=0,kk=0;S(ib,"GridContainerCell",1473),y(461,22,{3:1,35:1,22:1,461:1},cF);var N1,jf,qa,jnt=hn(ib,"HorizontalLabelAlignment",461,bn,H6t,I_t),Ant;y(306,212,{212:1,306:1},kLe,$$e,ALe),s.Re=function(){return wRe(this)},s.Se=function(){return Vte(this)},s.a=0,s.c=!1;var Ezt=S(ib,"LabelCell",306);y(244,326,{212:1,326:1,244:1},r6),s.Re=function(){return GI(this)},s.Se=function(){return UI(this)},s.Te=function(){eH(this)},s.Ue=function(){tH(this)},s.b=0,s.c=0,s.d=!1,S(ib,"StripContainerCell",244),y(1626,1,Rn,Eo),s.Mb=function(t){return $vt(c(t,212))},S(ib,"StripContainerCell/lambda$0$Type",1626),y(1627,1,{},fs),s.Fe=function(t){return c(t,212).Se()},S(ib,"StripContainerCell/lambda$1$Type",1627),y(1628,1,Rn,au),s.Mb=function(t){return Kvt(c(t,212))},S(ib,"StripContainerCell/lambda$2$Type",1628),y(1629,1,{},e1),s.Fe=function(t){return c(t,212).Re()},S(ib,"StripContainerCell/lambda$3$Type",1629),y(462,22,{3:1,35:1,22:1,462:1},sF);var Ha,F1,pl,Ont=hn(ib,"VerticalLabelAlignment",462,bn,z6t,T_t),Dnt;y(789,1,{},Tue),s.c=0,s.d=0,s.k=0,s.s=0,s.t=0,s.v=!1,s.w=0,s.D=!1,S(vD,"NodeContext",789),y(1471,1,Zn,TA),s.ue=function(t,n){return k7e(c(t,61),c(n,61))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(vD,"NodeContext/0methodref$comparePortSides$Type",1471),y(1472,1,Zn,fN),s.ue=function(t,n){return gDt(c(t,111),c(n,111))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(vD,"NodeContext/1methodref$comparePortContexts$Type",1472),y(159,22,{3:1,35:1,22:1,159:1},Bu);var knt,Rnt,xnt,Lnt,Nnt,Fnt,Bnt,$nt,Knt,qnt,Hnt,znt,Vnt,Gnt,Unt,Wnt,Ynt,Xnt,Jnt,Qnt,Znt,SG,eit=hn(vD,"NodeLabelLocation",159,bn,KK,j_t),tit;y(111,1,{111:1},hUe),s.a=!1,S(vD,"PortContext",111),y(1476,1,Rt,hN),s.td=function(t){Q9e(c(t,306))},S(yT,cQe,1476),y(1477,1,Rn,w2e),s.Mb=function(t){return!!c(t,111).c},S(yT,sQe,1477),y(1478,1,Rt,m2e),s.td=function(t){Q9e(c(t,111).c)},S(yT,"LabelPlacer/lambda$2$Type",1478);var ude;y(1475,1,Rt,y2e),s.td=function(t){Lp(),yvt(c(t,111))},S(yT,"NodeLabelAndSizeUtilities/lambda$0$Type",1475),y(790,1,Rt,Pte),s.td=function(t){Dyt(this.b,this.c,this.a,c(t,181))},s.a=!1,s.c=!1,S(yT,"NodeLabelCellCreator/lambda$0$Type",790),y(1474,1,Rt,RIe),s.td=function(t){Svt(this.a,c(t,181))},S(yT,"PortContextCreator/lambda$0$Type",1474);var Rk;y(1829,1,{},_2e),S(BE,"GreedyRectangleStripOverlapRemover",1829),y(1830,1,Zn,v2e),s.ue=function(t,n){return l3t(c(t,222),c(n,222))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(BE,"GreedyRectangleStripOverlapRemover/0methodref$compareByYCoordinate$Type",1830),y(1786,1,{},AAe),s.a=5,s.e=0,S(BE,"RectangleStripOverlapRemover",1786),y(1787,1,Zn,S2e),s.ue=function(t,n){return f3t(c(t,222),c(n,222))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(BE,"RectangleStripOverlapRemover/0methodref$compareLeftRectangleBorders$Type",1787),y(1789,1,Zn,P2e),s.ue=function(t,n){return xSt(c(t,222),c(n,222))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(BE,"RectangleStripOverlapRemover/1methodref$compareRightRectangleBorders$Type",1789),y(406,22,{3:1,35:1,22:1,406:1},S9);var HT,PG,MG,zT,nit=hn(BE,"RectangleStripOverlapRemover/OverlapRemovalDirection",406,bn,HPt,A_t),iit;y(222,1,{222:1},yB),S(BE,"RectangleStripOverlapRemover/RectangleNode",222),y(1788,1,Rt,xIe),s.td=function(t){B8t(this.a,c(t,222))},S(BE,"RectangleStripOverlapRemover/lambda$1$Type",1788),y(1304,1,Zn,M2e),s.ue=function(t,n){return V$t(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator",1304),y(1307,1,{},C2e),s.Kb=function(t){return c(t,324).a},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$0$Type",1307),y(1308,1,Rn,I2e),s.Mb=function(t){return c(t,323).a},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$1$Type",1308),y(1309,1,Rn,T2e),s.Mb=function(t){return c(t,323).a},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$2$Type",1309),y(1302,1,Zn,j2e),s.ue=function(t,n){return MFt(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator",1302),y(1305,1,{},E2e),s.Kb=function(t){return c(t,324).a},S(_f,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator/lambda$0$Type",1305),y(767,1,Zn,CJ),s.ue=function(t,n){return ITt(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinNumOfExtensionsComparator",767),y(1300,1,Zn,A2e),s.ue=function(t,n){return LIt(c(t,321),c(n,321))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinPerimeterComparator",1300),y(1301,1,Zn,O2e),s.ue=function(t,n){return h8t(c(t,321),c(n,321))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinPerimeterComparatorWithShape",1301),y(1303,1,Zn,D2e),s.ue=function(t,n){return WFt(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator",1303),y(1306,1,{},k2e),s.Kb=function(t){return c(t,324).a},S(_f,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator/lambda$0$Type",1306),y(777,1,{},OZ),s.Ce=function(t,n){return BPt(this,c(t,46),c(n,167))},S(_f,"SuccessorCombination",777),y(644,1,{},dN),s.Ce=function(t,n){var i;return TRt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorJitter",644),y(643,1,{},gN),s.Ce=function(t,n){var i;return pNt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorLineByLine",643),y(568,1,{},jA),s.Ce=function(t,n){var i;return jxt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorManhattan",568),y(1356,1,{},R2e),s.Ce=function(t,n){var i;return $Lt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorMaxNormWindingInMathPosSense",1356),y(400,1,{},X3),s.Ce=function(t,n){return vne(this,t,n)},s.c=!1,s.d=!1,s.e=!1,s.f=!1,S(_f,"SuccessorQuadrantsGeneric",400),y(1357,1,{},x2e),s.Kb=function(t){return c(t,324).a},S(_f,"SuccessorQuadrantsGeneric/lambda$0$Type",1357),y(323,22,{3:1,35:1,22:1,323:1},E9),s.a=!1;var VT,GT,UT,WT,rit=hn(_D,oae,323,bn,GPt,O_t),oit;y(1298,1,{}),s.Ib=function(){var t,n,i,r,o,u;for(i=" ",t=Ce(0),o=0;o=0?"b"+t+"["+m$(this.a)+"]":"b["+m$(this.a)+"]"):"b_"+Xb(this)},S(ET,"FBendpoint",559),y(282,134,{3:1,282:1,94:1,134:1},dke),s.Ib=function(){return m$(this)},S(ET,"FEdge",282),y(231,134,{3:1,231:1,94:1,134:1},uO);var Pzt=S(ET,"FGraph",231);y(447,357,{3:1,447:1,357:1,94:1,134:1},pFe),s.Ib=function(){return this.b==null||this.b.length==0?"l["+m$(this.a)+"]":"l_"+this.b},S(ET,"FLabel",447),y(144,357,{3:1,144:1,357:1,94:1,134:1},Cxe),s.Ib=function(){return Xne(this)},s.b=0,S(ET,"FNode",144),y(2003,1,{}),s.bf=function(t){sue(this,t)},s.cf=function(){Yze(this)},s.d=0,S(bae,"AbstractForceModel",2003),y(631,2003,{631:1},oqe),s.af=function(t,n){var i,r,o,u,a;return VGe(this.f,t,n),o=hr(Wo(n.d),t.d),a=g.Math.sqrt(o.a*o.a+o.b*o.b),r=g.Math.max(0,a-j5(t.e)/2-j5(n.e)/2),i=xqe(this.e,t,n),i>0?u=-DSt(r,this.c)*i:u=P3t(r,this.b)*c(B(t,(dl(),r4)),19).a,lf(o,u/a),o},s.bf=function(t){sue(this,t),this.a=c(B(t,(dl(),$k)),19).a,this.c=ge(Te(B(t,Kk))),this.b=ge(Te(B(t,DG)))},s.df=function(t){return t0&&(u-=Lvt(r,this.a)*i),lf(o,u*this.b/a),o},s.bf=function(t){var n,i,r,o,u,a,l;for(sue(this,t),this.b=ge(Te(B(t,(dl(),kG)))),this.c=this.b/c(B(t,$k),19).a,r=t.e.c.length,u=0,o=0,l=new q(t.e);l.a0},s.a=0,s.b=0,s.c=0,S(bae,"FruchtermanReingoldModel",632),y(849,1,ca,$Me),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,PD),""),"Force Model"),"Determines the model for force calculation."),wde),(yd(),Ai)),mde),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,pae),""),"Iterations"),"The number of iterations on the force model."),Ce(300)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,wae),""),"Repulsive Power"),"Determines how many bend points are added to the edge; such bend points are regarded as repelling particles in the force model"),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,vz),""),"FR Temperature"),"The temperature is used as a scaling factor for particle displacements."),Ef),To),mr),nt(Tt)))),pr(t,vz,PD,Mit),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,yz),""),"Eades Repulsion"),"Factor for repulsive forces in Eades' model."),5),To),mr),nt(Tt)))),pr(t,yz,PD,Eit),GXe((new KMe,t))};var vit,yit,wde,_it,Eit,Sit,Pit,Mit;S(x6,"ForceMetaDataProvider",849),y(424,22,{3:1,35:1,22:1,424:1},xZ);var OG,Bk,mde=hn(x6,"ForceModelStrategy",424,bn,m6t,R_t),Cit;y(988,1,ca,KMe),s.Qe=function(t){GXe(t)};var Iit,Tit,vde,$k,yde,jit,Ait,Oit,_de,Dit,Ede,Sde,kit,r4,Rit,DG,Pde,xit,Lit,Kk,kG;S(x6,"ForceOptions",988),y(989,1,{},Y2e),s.$e=function(){var t;return t=new NQ,t},s._e=function(t){},S(x6,"ForceOptions/ForceFactory",989);var JT,fP,K2,qk;y(850,1,ca,qMe),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,vae),""),"Fixed Position"),"Prevent that the node is moved by the layout algorithm."),(Pt(),!1)),(yd(),Dr)),Qi),nt((fl(),ar))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,yae),""),"Desired Edge Length"),"Either specified for parent nodes or for individual edges, where the latter takes higher precedence."),100),To),mr),ui(Tt,U(G(Dd,1),_e,175,0,[kf]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_ae),""),"Layout Dimension"),"Dimensions that are permitted to be altered during layout."),Mde),Ai),Dde),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Eae),""),"Stress Epsilon"),"Termination criterion for the iterative process."),Ef),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Sae),""),"Iteration Limit"),"Maximum number of performed iterations. Takes higher precedence than 'epsilon'."),Ce(Fn)),oc),$r),nt(Tt)))),AXe((new HMe,t))};var Nit,Fit,Mde,Bit,$it,Kit;S(x6,"StressMetaDataProvider",850),y(992,1,ca,HMe),s.Qe=function(t){AXe(t)};var Hk,Cde,Ide,Tde,jde,Ade,qit,Hit,zit,Vit,Ode,Git;S(x6,"StressOptions",992),y(993,1,{},X2e),s.$e=function(){var t;return t=new gke,t},s._e=function(t){},S(x6,"StressOptions/StressFactory",993),y(1128,209,rb,gke),s.Ze=function(t,n){var i,r,o,u,a;for(Wt(n,vQe,1),Be(Fe(Ke(t,(NI(),jde))))?Be(Fe(Ke(t,Ode)))||V8((i=new zM((Ap(),new Ip(t))),i)):JUe(new NQ,t,yc(n,1)),o=Iqe(t),r=$Ye(this.a,o),a=r.Kc();a.Ob();)u=c(a.Pb(),231),!(u.e.c.length<=1)&&(H$t(this.b,u),_xt(this.b),Zc(u.d,new J2e));o=ZXe(r),XXe(o),qt(n)},S(ID,"StressLayoutProvider",1128),y(1129,1,Rt,J2e),s.td=function(t){gue(c(t,447))},S(ID,"StressLayoutProvider/lambda$0$Type",1129),y(990,1,{},SAe),s.c=0,s.e=0,s.g=0,S(ID,"StressMajorization",990),y(379,22,{3:1,35:1,22:1,379:1},uF);var RG,xG,LG,Dde=hn(ID,"StressMajorization/Dimension",379,bn,G6t,x_t),Uit;y(991,1,Zn,BIe),s.ue=function(t,n){return f_t(this.a,c(t,144),c(n,144))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(ID,"StressMajorization/lambda$0$Type",991),y(1229,1,{},jNe),S(x2,"ElkLayered",1229),y(1230,1,Rt,Q2e),s.td=function(t){ERt(c(t,37))},S(x2,"ElkLayered/lambda$0$Type",1230),y(1231,1,Rt,$Ie),s.td=function(t){h_t(this.a,c(t,37))},S(x2,"ElkLayered/lambda$1$Type",1231),y(1263,1,{},tDe);var Wit,Yit,Xit;S(x2,"GraphConfigurator",1263),y(759,1,Rt,vQ),s.td=function(t){iGe(this.a,c(t,10))},S(x2,"GraphConfigurator/lambda$0$Type",759),y(760,1,{},TJ),s.Kb=function(t){return fce(),new ht(null,new bt(c(t,29).a,16))},S(x2,"GraphConfigurator/lambda$1$Type",760),y(761,1,Rt,yQ),s.td=function(t){iGe(this.a,c(t,10))},S(x2,"GraphConfigurator/lambda$2$Type",761),y(1127,209,rb,CAe),s.Ze=function(t,n){var i;i=l$t(new DAe,t),le(Ke(t,(Oe(),Fw)))===le((Rh(),kd))?qAt(this.a,i,n):FRt(this.a,i,n),VXe(new VMe,i)},S(x2,"LayeredLayoutProvider",1127),y(356,22,{3:1,35:1,22:1,356:1},oC);var Af,B1,Hc,Pc,Io,kde=hn(x2,"LayeredPhases",356,bn,jMt,L_t),Jit;y(1651,1,{},gKe),s.i=0;var Qit;S(MT,"ComponentsToCGraphTransformer",1651);var Zit;y(1652,1,{},Z2e),s.ef=function(t,n){return g.Math.min(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},s.ff=function(t,n){return g.Math.min(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},S(MT,"ComponentsToCGraphTransformer/1",1652),y(81,1,{81:1}),s.i=0,s.k=!0,s.o=$i;var NG=S(F6,"CNode",81);y(460,81,{460:1,81:1},Lee,Noe),s.Ib=function(){return""},S(MT,"ComponentsToCGraphTransformer/CRectNode",460),y(1623,1,{},e3e);var FG,BG;S(MT,"OneDimensionalComponentsCompaction",1623),y(1624,1,{},t3e),s.Kb=function(t){return N6t(c(t,46))},s.Fb=function(t){return this===t},S(MT,"OneDimensionalComponentsCompaction/lambda$0$Type",1624),y(1625,1,{},n3e),s.Kb=function(t){return XAt(c(t,46))},s.Fb=function(t){return this===t},S(MT,"OneDimensionalComponentsCompaction/lambda$1$Type",1625),y(1654,1,{},Mxe),S(F6,"CGraph",1654),y(189,1,{189:1},FK),s.b=0,s.c=0,s.e=0,s.g=!0,s.i=$i,S(F6,"CGroup",189),y(1653,1,{},c3e),s.ef=function(t,n){return g.Math.max(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},s.ff=function(t,n){return g.Math.max(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},S(F6,UJe,1653),y(1655,1,{},rUe),s.d=!1;var ert,$G=S(F6,XJe,1655);y(1656,1,{},s3e),s.Kb=function(t){return EZ(),Pt(),c(c(t,46).a,81).d.e!=0},s.Fb=function(t){return this===t},S(F6,JJe,1656),y(823,1,{},Gte),s.a=!1,s.b=!1,s.c=!1,s.d=!1,S(F6,QJe,823),y(1825,1,{},HRe),S(TD,ZJe,1825);var QT=pi(cb,VJe);y(1826,1,{369:1},yLe),s.Ke=function(t){ONt(this,c(t,466))},S(TD,eQe,1826),y(1827,1,Zn,u3e),s.ue=function(t,n){return O5t(c(t,81),c(n,81))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(TD,tQe,1827),y(466,1,{466:1},NZ),s.a=!1,S(TD,nQe,466),y(1828,1,Zn,a3e),s.ue=function(t,n){return HOt(c(t,466),c(n,466))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(TD,iQe,1828),y(140,1,{140:1},l_,Kte),s.Fb=function(t){var n;return t==null||Mzt!=Fs(t)?!1:(n=c(t,140),wc(this.c,n.c)&&wc(this.d,n.d))},s.Hb=function(){return ZO(U(G(xt,1),xe,1,5,[this.c,this.d]))},s.Ib=function(){return"("+this.c+zr+this.d+(this.a?"cx":"")+this.b+")"},s.a=!0,s.c=0,s.d=0;var Mzt=S(cb,"Point",140);y(405,22,{3:1,35:1,22:1,405:1},P9);var V0,Aw,Pv,Ow,trt=hn(cb,"Point/Quadrant",405,bn,UPt,N_t),nrt;y(1642,1,{},IAe),s.b=null,s.c=null,s.d=null,s.e=null,s.f=null;var irt,rrt,ort,crt,srt;S(cb,"RectilinearConvexHull",1642),y(574,1,{369:1},v7),s.Ke=function(t){ACt(this,c(t,140))},s.b=0;var Rde;S(cb,"RectilinearConvexHull/MaximalElementsEventHandler",574),y(1644,1,Zn,r3e),s.ue=function(t,n){return y5t(Te(t),Te(n))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/MaximalElementsEventHandler/lambda$0$Type",1644),y(1643,1,{369:1},N$e),s.Ke=function(t){zLt(this,c(t,140))},s.a=0,s.b=null,s.c=null,s.d=null,s.e=null,S(cb,"RectilinearConvexHull/RectangleEventHandler",1643),y(1645,1,Zn,o3e),s.ue=function(t,n){return SPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$0$Type",1645),y(1646,1,Zn,i3e),s.ue=function(t,n){return PPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$1$Type",1646),y(1647,1,Zn,l3e),s.ue=function(t,n){return CPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$2$Type",1647),y(1648,1,Zn,f3e),s.ue=function(t,n){return MPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$3$Type",1648),y(1649,1,Zn,h3e),s.ue=function(t,n){return TDt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$4$Type",1649),y(1650,1,{},JLe),S(cb,"Scanline",1650),y(2005,1,{}),S(Sf,"AbstractGraphPlacer",2005),y(325,1,{325:1},HDe),s.mf=function(t){return this.nf(t)?(it(this.b,c(B(t,(ye(),kw)),21),t),!0):!1},s.nf=function(t){var n,i,r,o;for(n=c(B(t,(ye(),kw)),21),o=c(Vn(ei,n),21),r=o.Kc();r.Ob();)if(i=c(r.Pb(),21),!c(Vn(this.b,i),15).dc())return!1;return!0};var ei;S(Sf,"ComponentGroup",325),y(765,2005,{},KQ),s.of=function(t){var n,i;for(i=new q(this.a);i.aL&&(Pe=0,Ae+=D+o,D=0),Y=a.c,v6(a,Pe+Y.a,Ae+Y.b),ol(Y),i=g.Math.max(i,Pe+ne.a),D=g.Math.max(D,ne.b),Pe+=ne.a+o;if(n.f.a=i,n.f.b=Ae+D,Be(Fe(B(u,jR)))){for(r=new pN,Rue(r,t,o),A=t.Kc();A.Ob();)v=c(A.Pb(),37),Wn(ol(v.c),r.e);Wn(ol(n.f),r.a)}Rie(n,t)},S(Sf,"SimpleRowGraphPlacer",1291),y(1292,1,Zn,b3e),s.ue=function(t,n){return CTt(c(t,37),c(n,37))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Sf,"SimpleRowGraphPlacer/1",1292);var art;y(1262,1,yf,p3e),s.Lb=function(t){var n;return n=c(B(c(t,243).b,(Oe(),yo)),74),!!n&&n.b!=0},s.Fb=function(t){return this===t},s.Mb=function(t){var n;return n=c(B(c(t,243).b,(Oe(),yo)),74),!!n&&n.b!=0},S(jD,"CompoundGraphPostprocessor/1",1262),y(1261,1,Ti,kAe),s.pf=function(t,n){Dze(this,c(t,37),n)},S(jD,"CompoundGraphPreprocessor",1261),y(441,1,{441:1},vHe),s.c=!1,S(jD,"CompoundGraphPreprocessor/ExternalPort",441),y(243,1,{243:1},c8),s.Ib=function(){return UF(this.c)+":"+eUe(this.b)},S(jD,"CrossHierarchyEdge",243),y(763,1,Zn,_Q),s.ue=function(t,n){return bOt(this,c(t,243),c(n,243))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(jD,"CrossHierarchyEdgeComparator",763),y(299,134,{3:1,299:1,94:1,134:1}),s.p=0,S(Lc,"LGraphElement",299),y(17,299,{3:1,17:1,299:1,94:1,134:1},c0),s.Ib=function(){return eUe(this)};var qG=S(Lc,"LEdge",17);y(37,299,{3:1,20:1,37:1,299:1,94:1,134:1},nre),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return new q(this.b)},s.Ib=function(){return this.b.c.length==0?"G-unlayered"+C1(this.a):this.a.c.length==0?"G-layered"+C1(this.b):"G[layerless"+C1(this.a)+", layers"+C1(this.b)+"]"};var lrt=S(Lc,"LGraph",37),frt;y(657,1,{}),s.qf=function(){return this.e.n},s.We=function(t){return B(this.e,t)},s.rf=function(){return this.e.o},s.sf=function(){return this.e.p},s.Xe=function(t){return nr(this.e,t)},s.tf=function(t){this.e.n.a=t.a,this.e.n.b=t.b},s.uf=function(t){this.e.o.a=t.a,this.e.o.b=t.b},s.vf=function(t){this.e.p=t},S(Lc,"LGraphAdapters/AbstractLShapeAdapter",657),y(577,1,{839:1},$A),s.wf=function(){var t,n;if(!this.b)for(this.b=Ff(this.a.b.c.length),n=new q(this.a.b);n.a0&&oHe((fn(n-1,t.length),t.charCodeAt(n-1)),MQe);)--n;if(u> ",t),j7(i)),wn(nc((t.a+="[",t),i.i),"]")),t.a},s.c=!0,s.d=!1;var Bde,$de,Kde,qde,Hde,zde,drt=S(Lc,"LPort",11);y(397,1,Yf,J3),s.Jc=function(t){Mr(this,t)},s.Kc=function(){var t;return t=new q(this.a.e),new KIe(t)},S(Lc,"LPort/1",397),y(1290,1,dr,KIe),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(K(this.a),17).c},s.Ob=function(){return Fo(this.a)},s.Qb=function(){I5(this.a)},S(Lc,"LPort/1/1",1290),y(359,1,Yf,Oy),s.Jc=function(t){Mr(this,t)},s.Kc=function(){var t;return t=new q(this.a.g),new EQ(t)},S(Lc,"LPort/2",359),y(762,1,dr,EQ),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(K(this.a),17).d},s.Ob=function(){return Fo(this.a)},s.Qb=function(){I5(this.a)},S(Lc,"LPort/2/1",762),y(1283,1,Yf,yOe),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return new Rl(this)},S(Lc,"LPort/CombineIter",1283),y(201,1,dr,Rl),s.Nb=function(t){Sr(this,t)},s.Qb=function(){z9e()},s.Ob=function(){return p5(this)},s.Pb=function(){return Fo(this.a)?K(this.a):K(this.b)},S(Lc,"LPort/CombineIter/1",201),y(1285,1,yf,m3e),s.Lb=function(t){return txe(t)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).e.c.length!=0},S(Lc,"LPort/lambda$0$Type",1285),y(1284,1,yf,v3e),s.Lb=function(t){return nxe(t)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).g.c.length!=0},S(Lc,"LPort/lambda$1$Type",1284),y(1286,1,yf,y3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),_t)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),_t)},S(Lc,"LPort/lambda$2$Type",1286),y(1287,1,yf,_3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),jt)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),jt)},S(Lc,"LPort/lambda$3$Type",1287),y(1288,1,yf,E3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),Yt)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),Yt)},S(Lc,"LPort/lambda$4$Type",1288),y(1289,1,yf,S3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),Mt)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),Mt)},S(Lc,"LPort/lambda$5$Type",1289),y(29,299,{3:1,20:1,299:1,29:1,94:1,134:1},ta),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return new q(this.a)},s.Ib=function(){return"L_"+Do(this.b.b,this,0)+C1(this.a)},S(Lc,"Layer",29),y(1342,1,{},DAe),S(Sd,jQe,1342),y(1346,1,{},P3e),s.Kb=function(t){return Co(c(t,82))},S(Sd,"ElkGraphImporter/0methodref$connectableShapeToNode$Type",1346),y(1349,1,{},M3e),s.Kb=function(t){return Co(c(t,82))},S(Sd,"ElkGraphImporter/1methodref$connectableShapeToNode$Type",1349),y(1343,1,Rt,qIe),s.td=function(t){gUe(this.a,c(t,118))},S(Sd,AQe,1343),y(1344,1,Rt,HIe),s.td=function(t){gUe(this.a,c(t,118))},S(Sd,OQe,1344),y(1345,1,{},C3e),s.Kb=function(t){return new ht(null,new bt(b5t(c(t,79)),16))},S(Sd,DQe,1345),y(1347,1,Rn,zIe),s.Mb=function(t){return p2t(this.a,c(t,33))},S(Sd,kQe,1347),y(1348,1,{},I3e),s.Kb=function(t){return new ht(null,new bt(p5t(c(t,79)),16))},S(Sd,"ElkGraphImporter/lambda$5$Type",1348),y(1350,1,Rn,VIe),s.Mb=function(t){return w2t(this.a,c(t,33))},S(Sd,"ElkGraphImporter/lambda$7$Type",1350),y(1351,1,Rn,T3e),s.Mb=function(t){return k5t(c(t,79))},S(Sd,"ElkGraphImporter/lambda$8$Type",1351),y(1278,1,{},VMe);var grt;S(Sd,"ElkGraphLayoutTransferrer",1278),y(1279,1,Rn,GIe),s.Mb=function(t){return o_t(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$0$Type",1279),y(1280,1,Rt,UIe),s.td=function(t){tC(),Ee(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$1$Type",1280),y(1281,1,Rn,WIe),s.Mb=function(t){return z3t(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$2$Type",1281),y(1282,1,Rt,YIe),s.td=function(t){tC(),Ee(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$3$Type",1282),y(1485,1,Ti,j3e),s.pf=function(t,n){GIt(c(t,37),n)},S(Ct,"CommentNodeMarginCalculator",1485),y(1486,1,{},A3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"CommentNodeMarginCalculator/lambda$0$Type",1486),y(1487,1,Rt,O3e),s.td=function(t){C$t(c(t,10))},S(Ct,"CommentNodeMarginCalculator/lambda$1$Type",1487),y(1488,1,Ti,D3e),s.pf=function(t,n){BNt(c(t,37),n)},S(Ct,"CommentPostprocessor",1488),y(1489,1,Ti,k3e),s.pf=function(t,n){Gqt(c(t,37),n)},S(Ct,"CommentPreprocessor",1489),y(1490,1,Ti,R3e),s.pf=function(t,n){uLt(c(t,37),n)},S(Ct,"ConstraintsPostprocessor",1490),y(1491,1,Ti,x3e),s.pf=function(t,n){bTt(c(t,37),n)},S(Ct,"EdgeAndLayerConstraintEdgeReverser",1491),y(1492,1,Ti,L3e),s.pf=function(t,n){i9t(c(t,37),n)},S(Ct,"EndLabelPostprocessor",1492),y(1493,1,{},N3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"EndLabelPostprocessor/lambda$0$Type",1493),y(1494,1,Rn,F3e),s.Mb=function(t){return J5t(c(t,10))},S(Ct,"EndLabelPostprocessor/lambda$1$Type",1494),y(1495,1,Rt,B3e),s.td=function(t){zOt(c(t,10))},S(Ct,"EndLabelPostprocessor/lambda$2$Type",1495),y(1496,1,Ti,$3e),s.pf=function(t,n){kkt(c(t,37),n)},S(Ct,"EndLabelPreprocessor",1496),y(1497,1,{},K3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"EndLabelPreprocessor/lambda$0$Type",1497),y(1498,1,Rt,Gke),s.td=function(t){kyt(this.a,this.b,this.c,c(t,10))},s.a=0,s.b=0,s.c=!1,S(Ct,"EndLabelPreprocessor/lambda$1$Type",1498),y(1499,1,Rn,q3e),s.Mb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),O4))},S(Ct,"EndLabelPreprocessor/lambda$2$Type",1499),y(1500,1,Rt,XIe),s.td=function(t){Cn(this.a,c(t,70))},S(Ct,"EndLabelPreprocessor/lambda$3$Type",1500),y(1501,1,Rn,H3e),s.Mb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),Ww))},S(Ct,"EndLabelPreprocessor/lambda$4$Type",1501),y(1502,1,Rt,JIe),s.td=function(t){Cn(this.a,c(t,70))},S(Ct,"EndLabelPreprocessor/lambda$5$Type",1502),y(1551,1,Ti,zMe),s.pf=function(t,n){fAt(c(t,37),n)};var brt;S(Ct,"EndLabelSorter",1551),y(1552,1,Zn,z3e),s.ue=function(t,n){return K9t(c(t,456),c(n,456))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"EndLabelSorter/1",1552),y(456,1,{456:1},hLe),S(Ct,"EndLabelSorter/LabelGroup",456),y(1553,1,{},V3e),s.Kb=function(t){return nC(),new ht(null,new bt(c(t,29).a,16))},S(Ct,"EndLabelSorter/lambda$0$Type",1553),y(1554,1,Rn,G3e),s.Mb=function(t){return nC(),c(t,10).k==(Dt(),Ui)},S(Ct,"EndLabelSorter/lambda$1$Type",1554),y(1555,1,Rt,U3e),s.td=function(t){zDt(c(t,10))},S(Ct,"EndLabelSorter/lambda$2$Type",1555),y(1556,1,Rn,W3e),s.Mb=function(t){return nC(),le(B(c(t,70),(Oe(),Df)))===le((xl(),Ww))},S(Ct,"EndLabelSorter/lambda$3$Type",1556),y(1557,1,Rn,Y3e),s.Mb=function(t){return nC(),le(B(c(t,70),(Oe(),Df)))===le((xl(),O4))},S(Ct,"EndLabelSorter/lambda$4$Type",1557),y(1503,1,Ti,X3e),s.pf=function(t,n){N$t(this,c(t,37))},s.b=0,s.c=0,S(Ct,"FinalSplineBendpointsCalculator",1503),y(1504,1,{},J3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"FinalSplineBendpointsCalculator/lambda$0$Type",1504),y(1505,1,{},Q3e),s.Kb=function(t){return new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ct,"FinalSplineBendpointsCalculator/lambda$1$Type",1505),y(1506,1,Rn,Z3e),s.Mb=function(t){return!Kr(c(t,17))},S(Ct,"FinalSplineBendpointsCalculator/lambda$2$Type",1506),y(1507,1,Rn,e_e),s.Mb=function(t){return nr(c(t,17),(ye(),bb))},S(Ct,"FinalSplineBendpointsCalculator/lambda$3$Type",1507),y(1508,1,Rt,QIe),s.td=function(t){XFt(this.a,c(t,128))},S(Ct,"FinalSplineBendpointsCalculator/lambda$4$Type",1508),y(1509,1,Rt,t_e),s.td=function(t){Mq(c(t,17).a)},S(Ct,"FinalSplineBendpointsCalculator/lambda$5$Type",1509),y(792,1,Ti,SQ),s.pf=function(t,n){AKt(this,c(t,37),n)},S(Ct,"GraphTransformer",792),y(511,22,{3:1,35:1,22:1,511:1},LZ);var zG,ZT,prt=hn(Ct,"GraphTransformer/Mode",511,bn,v6t,JEt),wrt;y(1510,1,Ti,n_e),s.pf=function(t,n){cNt(c(t,37),n)},S(Ct,"HierarchicalNodeResizingProcessor",1510),y(1511,1,Ti,i_e),s.pf=function(t,n){KIt(c(t,37),n)},S(Ct,"HierarchicalPortConstraintProcessor",1511),y(1512,1,Zn,r_e),s.ue=function(t,n){return Q9t(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"HierarchicalPortConstraintProcessor/NodeComparator",1512),y(1513,1,Ti,o_e),s.pf=function(t,n){s$t(c(t,37),n)},S(Ct,"HierarchicalPortDummySizeProcessor",1513),y(1514,1,Ti,c_e),s.pf=function(t,n){rFt(this,c(t,37),n)},s.a=0,S(Ct,"HierarchicalPortOrthogonalEdgeRouter",1514),y(1515,1,Zn,s_e),s.ue=function(t,n){return a3t(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"HierarchicalPortOrthogonalEdgeRouter/1",1515),y(1516,1,Zn,u_e),s.ue=function(t,n){return SCt(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"HierarchicalPortOrthogonalEdgeRouter/2",1516),y(1517,1,Ti,a_e),s.pf=function(t,n){jDt(c(t,37),n)},S(Ct,"HierarchicalPortPositionProcessor",1517),y(1518,1,Ti,GMe),s.pf=function(t,n){PHt(this,c(t,37))},s.a=0,s.c=0;var zk,Vk;S(Ct,"HighDegreeNodeLayeringProcessor",1518),y(571,1,{571:1},l_e),s.b=-1,s.d=-1,S(Ct,"HighDegreeNodeLayeringProcessor/HighDegreeNodeInformation",571),y(1519,1,{},f_e),s.Kb=function(t){return TC(),ko(c(t,10))},s.Fb=function(t){return this===t},S(Ct,"HighDegreeNodeLayeringProcessor/lambda$0$Type",1519),y(1520,1,{},h_e),s.Kb=function(t){return TC(),Vi(c(t,10))},s.Fb=function(t){return this===t},S(Ct,"HighDegreeNodeLayeringProcessor/lambda$1$Type",1520),y(1526,1,Ti,d_e),s.pf=function(t,n){xBt(this,c(t,37),n)},S(Ct,"HyperedgeDummyMerger",1526),y(793,1,{},Cte),s.a=!1,s.b=!1,s.c=!1,S(Ct,"HyperedgeDummyMerger/MergeState",793),y(1527,1,{},g_e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"HyperedgeDummyMerger/lambda$0$Type",1527),y(1528,1,{},b_e),s.Kb=function(t){return new ht(null,new bt(c(t,10).j,16))},S(Ct,"HyperedgeDummyMerger/lambda$1$Type",1528),y(1529,1,Rt,p_e),s.td=function(t){c(t,11).p=-1},S(Ct,"HyperedgeDummyMerger/lambda$2$Type",1529),y(1530,1,Ti,w_e),s.pf=function(t,n){kBt(c(t,37),n)},S(Ct,"HypernodesProcessor",1530),y(1531,1,Ti,m_e),s.pf=function(t,n){RBt(c(t,37),n)},S(Ct,"InLayerConstraintProcessor",1531),y(1532,1,Ti,v_e),s.pf=function(t,n){lTt(c(t,37),n)},S(Ct,"InnermostNodeMarginCalculator",1532),y(1533,1,Ti,y_e),s.pf=function(t,n){Kqt(this,c(t,37))},s.a=$i,s.b=$i,s.c=Ii,s.d=Ii;var Czt=S(Ct,"InteractiveExternalPortPositioner",1533);y(1534,1,{},__e),s.Kb=function(t){return c(t,17).d.i},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$0$Type",1534),y(1535,1,{},ZIe),s.Kb=function(t){return h3t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$1$Type",1535),y(1536,1,{},E_e),s.Kb=function(t){return c(t,17).c.i},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$2$Type",1536),y(1537,1,{},eTe),s.Kb=function(t){return d3t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$3$Type",1537),y(1538,1,{},tTe),s.Kb=function(t){return n_t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$4$Type",1538),y(1539,1,{},nTe),s.Kb=function(t){return i_t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$5$Type",1539),y(77,22,{3:1,35:1,22:1,77:1,234:1},Li),s.Kf=function(){switch(this.g){case 15:return new H4e;case 22:return new z4e;case 47:return new U4e;case 28:case 35:return new k_e;case 32:return new j3e;case 42:return new D3e;case 1:return new k3e;case 41:return new R3e;case 56:return new SQ((G_(),ZT));case 0:return new SQ((G_(),zG));case 2:return new x3e;case 54:return new L3e;case 33:return new $3e;case 51:return new X3e;case 55:return new n_e;case 13:return new i_e;case 38:return new o_e;case 44:return new c_e;case 40:return new a_e;case 9:return new GMe;case 49:return new DDe;case 37:return new d_e;case 43:return new w_e;case 27:return new m_e;case 30:return new v_e;case 3:return new y_e;case 18:return new P_e;case 29:return new M_e;case 5:return new UMe;case 50:return new S_e;case 34:return new WMe;case 36:return new R_e;case 52:return new zMe;case 11:return new L_e;case 7:return new XMe;case 39:return new N_e;case 45:return new F_e;case 16:return new B_e;case 10:return new $_e;case 48:return new q_e;case 21:return new H_e;case 23:return new VN((w0(),kP));case 8:return new V_e;case 12:return new U_e;case 4:return new W_e;case 19:return new eCe;case 17:return new rEe;case 53:return new oEe;case 6:return new wEe;case 25:return new LAe;case 46:return new lEe;case 31:return new pke;case 14:return new MEe;case 26:return new X4e;case 20:return new AEe;case 24:return new VN((w0(),YR));default:throw V(new St(Mz+(this.f!=null?this.f:""+this.g)))}};var Vde,Gde,Ude,Wde,Yde,Xde,Jde,Qde,Zde,e1e,hP,Gk,Uk,t1e,n1e,i1e,r1e,o1e,c1e,s1e,dP,u1e,a1e,l1e,f1e,h1e,VG,Wk,Yk,d1e,Xk,Jk,Qk,o4,c4,s4,g1e,Zk,eR,b1e,tR,nR,p1e,w1e,m1e,v1e,iR,GG,ej,rR,oR,cR,sR,y1e,_1e,E1e,S1e,Izt=hn(Ct,Mae,77,bn,cWe,XEt),mrt;y(1540,1,Ti,P_e),s.pf=function(t,n){Hqt(c(t,37),n)},S(Ct,"InvertedPortProcessor",1540),y(1541,1,Ti,M_e),s.pf=function(t,n){HFt(c(t,37),n)},S(Ct,"LabelAndNodeSizeProcessor",1541),y(1542,1,Rn,C_e),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"LabelAndNodeSizeProcessor/lambda$0$Type",1542),y(1543,1,Rn,I_e),s.Mb=function(t){return c(t,10).k==(Dt(),Bi)},S(Ct,"LabelAndNodeSizeProcessor/lambda$1$Type",1543),y(1544,1,Rt,Uke),s.td=function(t){Ryt(this.b,this.a,this.c,c(t,10))},s.a=!1,s.c=!1,S(Ct,"LabelAndNodeSizeProcessor/lambda$2$Type",1544),y(1545,1,Ti,UMe),s.pf=function(t,n){dqt(c(t,37),n)};var vrt;S(Ct,"LabelDummyInserter",1545),y(1546,1,yf,T_e),s.Lb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),A4))},s.Fb=function(t){return this===t},s.Mb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),A4))},S(Ct,"LabelDummyInserter/1",1546),y(1547,1,Ti,S_e),s.pf=function(t,n){bKt(c(t,37),n)},S(Ct,"LabelDummyRemover",1547),y(1548,1,Rn,j_e),s.Mb=function(t){return Be(Fe(B(c(t,70),(Oe(),RU))))},S(Ct,"LabelDummyRemover/lambda$0$Type",1548),y(1359,1,Ti,WMe),s.pf=function(t,n){zKt(this,c(t,37),n)},s.a=null;var UG;S(Ct,"LabelDummySwitcher",1359),y(286,1,{286:1},rYe),s.c=0,s.d=null,s.f=0,S(Ct,"LabelDummySwitcher/LabelDummyInfo",286),y(1360,1,{},A_e),s.Kb=function(t){return h2(),new ht(null,new bt(c(t,29).a,16))},S(Ct,"LabelDummySwitcher/lambda$0$Type",1360),y(1361,1,Rn,O_e),s.Mb=function(t){return h2(),c(t,10).k==(Dt(),cu)},S(Ct,"LabelDummySwitcher/lambda$1$Type",1361),y(1362,1,{},oTe),s.Kb=function(t){return V3t(this.a,c(t,10))},S(Ct,"LabelDummySwitcher/lambda$2$Type",1362),y(1363,1,Rt,cTe),s.td=function(t){zSt(this.a,c(t,286))},S(Ct,"LabelDummySwitcher/lambda$3$Type",1363),y(1364,1,Zn,D_e),s.ue=function(t,n){return mSt(c(t,286),c(n,286))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"LabelDummySwitcher/lambda$4$Type",1364),y(791,1,Ti,k_e),s.pf=function(t,n){tCt(c(t,37),n)},S(Ct,"LabelManagementProcessor",791),y(1549,1,Ti,R_e),s.pf=function(t,n){CNt(c(t,37),n)},S(Ct,"LabelSideSelector",1549),y(1550,1,Rn,x_e),s.Mb=function(t){return Be(Fe(B(c(t,70),(Oe(),RU))))},S(Ct,"LabelSideSelector/lambda$0$Type",1550),y(1558,1,Ti,L_e),s.pf=function(t,n){u$t(c(t,37),n)},S(Ct,"LayerConstraintPostprocessor",1558),y(1559,1,Ti,XMe),s.pf=function(t,n){Ext(c(t,37),n)};var P1e;S(Ct,"LayerConstraintPreprocessor",1559),y(360,22,{3:1,35:1,22:1,360:1},M9);var tj,uR,aR,WG,yrt=hn(Ct,"LayerConstraintPreprocessor/HiddenNodeConnections",360,bn,WPt,K_t),_rt;y(1560,1,Ti,N_e),s.pf=function(t,n){hKt(c(t,37),n)},S(Ct,"LayerSizeAndGraphHeightCalculator",1560),y(1561,1,Ti,F_e),s.pf=function(t,n){bLt(c(t,37),n)},S(Ct,"LongEdgeJoiner",1561),y(1562,1,Ti,B_e),s.pf=function(t,n){U$t(c(t,37),n)},S(Ct,"LongEdgeSplitter",1562),y(1563,1,Ti,$_e),s.pf=function(t,n){UKt(this,c(t,37),n)},s.d=0,s.e=0,s.i=0,s.j=0,s.k=0,s.n=0,S(Ct,"NodePromotion",1563),y(1564,1,{},K_e),s.Kb=function(t){return c(t,46),Pt(),!0},s.Fb=function(t){return this===t},S(Ct,"NodePromotion/lambda$0$Type",1564),y(1565,1,{},iTe),s.Kb=function(t){return f5t(this.a,c(t,46))},s.Fb=function(t){return this===t},s.a=0,S(Ct,"NodePromotion/lambda$1$Type",1565),y(1566,1,{},rTe),s.Kb=function(t){return h5t(this.a,c(t,46))},s.Fb=function(t){return this===t},s.a=0,S(Ct,"NodePromotion/lambda$2$Type",1566),y(1567,1,Ti,q_e),s.pf=function(t,n){wHt(c(t,37),n)},S(Ct,"NorthSouthPortPostprocessor",1567),y(1568,1,Ti,H_e),s.pf=function(t,n){nHt(c(t,37),n)},S(Ct,"NorthSouthPortPreprocessor",1568),y(1569,1,Zn,z_e),s.ue=function(t,n){return OTt(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"NorthSouthPortPreprocessor/lambda$0$Type",1569),y(1570,1,Ti,V_e),s.pf=function(t,n){vBt(c(t,37),n)},S(Ct,"PartitionMidprocessor",1570),y(1571,1,Rn,G_e),s.Mb=function(t){return nr(c(t,10),(Oe(),y4))},S(Ct,"PartitionMidprocessor/lambda$0$Type",1571),y(1572,1,Rt,sTe),s.td=function(t){R5t(this.a,c(t,10))},S(Ct,"PartitionMidprocessor/lambda$1$Type",1572),y(1573,1,Ti,U_e),s.pf=function(t,n){xLt(c(t,37),n)},S(Ct,"PartitionPostprocessor",1573),y(1574,1,Ti,W_e),s.pf=function(t,n){VRt(c(t,37),n)},S(Ct,"PartitionPreprocessor",1574),y(1575,1,Rn,Y_e),s.Mb=function(t){return nr(c(t,10),(Oe(),y4))},S(Ct,"PartitionPreprocessor/lambda$0$Type",1575),y(1576,1,{},X_e),s.Kb=function(t){return new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ct,"PartitionPreprocessor/lambda$1$Type",1576),y(1577,1,Rn,J_e),s.Mb=function(t){return F9t(c(t,17))},S(Ct,"PartitionPreprocessor/lambda$2$Type",1577),y(1578,1,Rt,Q_e),s.td=function(t){KTt(c(t,17))},S(Ct,"PartitionPreprocessor/lambda$3$Type",1578),y(1579,1,Ti,eCe),s.pf=function(t,n){iBt(c(t,37),n)};var M1e,Ert,Srt,Prt,C1e,I1e;S(Ct,"PortListSorter",1579),y(1580,1,{},Z_e),s.Kb=function(t){return iE(),c(t,11).e},S(Ct,"PortListSorter/lambda$0$Type",1580),y(1581,1,{},eEe),s.Kb=function(t){return iE(),c(t,11).g},S(Ct,"PortListSorter/lambda$1$Type",1581),y(1582,1,Zn,tEe),s.ue=function(t,n){return mFe(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"PortListSorter/lambda$2$Type",1582),y(1583,1,Zn,nEe),s.ue=function(t,n){return uOt(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"PortListSorter/lambda$3$Type",1583),y(1584,1,Zn,iEe),s.ue=function(t,n){return IYe(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"PortListSorter/lambda$4$Type",1584),y(1585,1,Ti,rEe),s.pf=function(t,n){pxt(c(t,37),n)},S(Ct,"PortSideProcessor",1585),y(1586,1,Ti,oEe),s.pf=function(t,n){wFt(c(t,37),n)},S(Ct,"ReversedEdgeRestorer",1586),y(1591,1,Ti,LAe),s.pf=function(t,n){G8t(this,c(t,37),n)},S(Ct,"SelfLoopPortRestorer",1591),y(1592,1,{},cEe),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"SelfLoopPortRestorer/lambda$0$Type",1592),y(1593,1,Rn,sEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SelfLoopPortRestorer/lambda$1$Type",1593),y(1594,1,Rn,uEe),s.Mb=function(t){return nr(c(t,10),(ye(),w4))},S(Ct,"SelfLoopPortRestorer/lambda$2$Type",1594),y(1595,1,{},aEe),s.Kb=function(t){return c(B(c(t,10),(ye(),w4)),403)},S(Ct,"SelfLoopPortRestorer/lambda$3$Type",1595),y(1596,1,Rt,uTe),s.td=function(t){tkt(this.a,c(t,403))},S(Ct,"SelfLoopPortRestorer/lambda$4$Type",1596),y(794,1,Rt,AJ),s.td=function(t){pkt(c(t,101))},S(Ct,"SelfLoopPortRestorer/lambda$5$Type",794),y(1597,1,Ti,lEe),s.pf=function(t,n){t8t(c(t,37),n)},S(Ct,"SelfLoopPostProcessor",1597),y(1598,1,{},fEe),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"SelfLoopPostProcessor/lambda$0$Type",1598),y(1599,1,Rn,hEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SelfLoopPostProcessor/lambda$1$Type",1599),y(1600,1,Rn,dEe),s.Mb=function(t){return nr(c(t,10),(ye(),w4))},S(Ct,"SelfLoopPostProcessor/lambda$2$Type",1600),y(1601,1,Rt,gEe),s.td=function(t){u7t(c(t,10))},S(Ct,"SelfLoopPostProcessor/lambda$3$Type",1601),y(1602,1,{},bEe),s.Kb=function(t){return new ht(null,new bt(c(t,101).f,1))},S(Ct,"SelfLoopPostProcessor/lambda$4$Type",1602),y(1603,1,Rt,aTe),s.td=function(t){JPt(this.a,c(t,409))},S(Ct,"SelfLoopPostProcessor/lambda$5$Type",1603),y(1604,1,Rn,pEe),s.Mb=function(t){return!!c(t,101).i},S(Ct,"SelfLoopPostProcessor/lambda$6$Type",1604),y(1605,1,Rt,lTe),s.td=function(t){xvt(this.a,c(t,101))},S(Ct,"SelfLoopPostProcessor/lambda$7$Type",1605),y(1587,1,Ti,wEe),s.pf=function(t,n){Wxt(c(t,37),n)},S(Ct,"SelfLoopPreProcessor",1587),y(1588,1,{},mEe),s.Kb=function(t){return new ht(null,new bt(c(t,101).f,1))},S(Ct,"SelfLoopPreProcessor/lambda$0$Type",1588),y(1589,1,{},vEe),s.Kb=function(t){return c(t,409).a},S(Ct,"SelfLoopPreProcessor/lambda$1$Type",1589),y(1590,1,Rt,yEe),s.td=function(t){$2t(c(t,17))},S(Ct,"SelfLoopPreProcessor/lambda$2$Type",1590),y(1606,1,Ti,pke),s.pf=function(t,n){VDt(this,c(t,37),n)},S(Ct,"SelfLoopRouter",1606),y(1607,1,{},_Ee),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"SelfLoopRouter/lambda$0$Type",1607),y(1608,1,Rn,EEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SelfLoopRouter/lambda$1$Type",1608),y(1609,1,Rn,SEe),s.Mb=function(t){return nr(c(t,10),(ye(),w4))},S(Ct,"SelfLoopRouter/lambda$2$Type",1609),y(1610,1,{},PEe),s.Kb=function(t){return c(B(c(t,10),(ye(),w4)),403)},S(Ct,"SelfLoopRouter/lambda$3$Type",1610),y(1611,1,Rt,hOe),s.td=function(t){M5t(this.a,this.b,c(t,403))},S(Ct,"SelfLoopRouter/lambda$4$Type",1611),y(1612,1,Ti,MEe),s.pf=function(t,n){gNt(c(t,37),n)},S(Ct,"SemiInteractiveCrossMinProcessor",1612),y(1613,1,Rn,CEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$0$Type",1613),y(1614,1,Rn,IEe),s.Mb=function(t){return DRe(c(t,10))._b((Oe(),qw))},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$1$Type",1614),y(1615,1,Zn,TEe),s.ue=function(t,n){return HIt(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$2$Type",1615),y(1616,1,{},jEe),s.Ce=function(t,n){return q5t(c(t,10),c(n,10))},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$3$Type",1616),y(1618,1,Ti,AEe),s.pf=function(t,n){a$t(c(t,37),n)},S(Ct,"SortByInputModelProcessor",1618),y(1619,1,Rn,OEe),s.Mb=function(t){return c(t,11).g.c.length!=0},S(Ct,"SortByInputModelProcessor/lambda$0$Type",1619),y(1620,1,Rt,fTe),s.td=function(t){_kt(this.a,c(t,11))},S(Ct,"SortByInputModelProcessor/lambda$1$Type",1620),y(1693,803,{},IKe),s.Me=function(t){var n,i,r,o;switch(this.c=t,this.a.g){case 2:n=new Se,Di(si(new ht(null,new bt(this.c.a.b,16)),new VEe),new wOe(this,n)),zI(this,new REe),Zc(n,new xEe),n.c=oe(xt,xe,1,0,5,1),Di(si(new ht(null,new bt(this.c.a.b,16)),new LEe),new dTe(n)),zI(this,new NEe),Zc(n,new FEe),n.c=oe(xt,xe,1,0,5,1),i=X7e($Ke(x8(new ht(null,new bt(this.c.a.b,16)),new gTe(this))),new BEe),Di(new ht(null,new bt(this.c.a.a,16)),new gOe(i,n)),zI(this,new KEe),Zc(n,new DEe),n.c=oe(xt,xe,1,0,5,1);break;case 3:r=new Se,zI(this,new kEe),o=X7e($Ke(x8(new ht(null,new bt(this.c.a.b,16)),new hTe(this))),new $Ee),Di(si(new ht(null,new bt(this.c.a.b,16)),new qEe),new pOe(o,r)),zI(this,new HEe),Zc(r,new zEe),r.c=oe(xt,xe,1,0,5,1);break;default:throw V(new _Ae)}},s.b=0,S(Ki,"EdgeAwareScanlineConstraintCalculation",1693),y(1694,1,yf,kEe),s.Lb=function(t){return Q(c(t,57).g,145)},s.Fb=function(t){return this===t},s.Mb=function(t){return Q(c(t,57).g,145)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$0$Type",1694),y(1695,1,{},hTe),s.Fe=function(t){return eRt(this.a,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$1$Type",1695),y(1703,1,bD,dOe),s.Vd=function(){a6(this.a,this.b,-1)},s.b=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$10$Type",1703),y(1705,1,yf,REe),s.Lb=function(t){return Q(c(t,57).g,145)},s.Fb=function(t){return this===t},s.Mb=function(t){return Q(c(t,57).g,145)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$11$Type",1705),y(1706,1,Rt,xEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$12$Type",1706),y(1707,1,Rn,LEe),s.Mb=function(t){return Q(c(t,57).g,10)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$13$Type",1707),y(1709,1,Rt,dTe),s.td=function(t){IAt(this.a,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$14$Type",1709),y(1708,1,bD,_Oe),s.Vd=function(){a6(this.b,this.a,-1)},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$15$Type",1708),y(1710,1,yf,NEe),s.Lb=function(t){return Q(c(t,57).g,10)},s.Fb=function(t){return this===t},s.Mb=function(t){return Q(c(t,57).g,10)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$16$Type",1710),y(1711,1,Rt,FEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$17$Type",1711),y(1712,1,{},gTe),s.Fe=function(t){return tRt(this.a,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$18$Type",1712),y(1713,1,{},BEe),s.De=function(){return 0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$19$Type",1713),y(1696,1,{},$Ee),s.De=function(){return 0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$2$Type",1696),y(1715,1,Rt,gOe),s.td=function(t){uSt(this.a,this.b,c(t,307))},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$20$Type",1715),y(1714,1,bD,bOe),s.Vd=function(){NUe(this.a,this.b,-1)},s.b=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$21$Type",1714),y(1716,1,yf,KEe),s.Lb=function(t){return c(t,57),!0},s.Fb=function(t){return this===t},s.Mb=function(t){return c(t,57),!0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$22$Type",1716),y(1717,1,Rt,DEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$23$Type",1717),y(1697,1,Rn,qEe),s.Mb=function(t){return Q(c(t,57).g,10)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$3$Type",1697),y(1699,1,Rt,pOe),s.td=function(t){aSt(this.a,this.b,c(t,57))},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$4$Type",1699),y(1698,1,bD,EOe),s.Vd=function(){a6(this.b,this.a,-1)},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$5$Type",1698),y(1700,1,yf,HEe),s.Lb=function(t){return c(t,57),!0},s.Fb=function(t){return this===t},s.Mb=function(t){return c(t,57),!0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$6$Type",1700),y(1701,1,Rt,zEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$7$Type",1701),y(1702,1,Rn,VEe),s.Mb=function(t){return Q(c(t,57).g,145)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$8$Type",1702),y(1704,1,Rt,wOe),s.td=function(t){cIt(this.a,this.b,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$9$Type",1704),y(1521,1,Ti,DDe),s.pf=function(t,n){eKt(this,c(t,37),n)};var Mrt;S(Ki,"HorizontalGraphCompactor",1521),y(1522,1,{},bTe),s.Oe=function(t,n){var i,r,o;return Hie(t,n)||(i=Nm(t),r=Nm(n),i&&i.k==(Dt(),Bi)||r&&r.k==(Dt(),Bi))?0:(o=c(B(this.a.a,(ye(),Rv)),304),g3t(o,i?i.k:(Dt(),ur),r?r.k:(Dt(),ur)))},s.Pe=function(t,n){var i,r,o;return Hie(t,n)?1:(i=Nm(t),r=Nm(n),o=c(B(this.a.a,(ye(),Rv)),304),Fee(o,i?i.k:(Dt(),ur),r?r.k:(Dt(),ur)))},S(Ki,"HorizontalGraphCompactor/1",1522),y(1523,1,{},GEe),s.Ne=function(t,n){return HS(),t.a.i==0},S(Ki,"HorizontalGraphCompactor/lambda$0$Type",1523),y(1524,1,{},pTe),s.Ne=function(t,n){return F5t(this.a,t,n)},S(Ki,"HorizontalGraphCompactor/lambda$1$Type",1524),y(1664,1,{},h$e);var Crt,Irt;S(Ki,"LGraphToCGraphTransformer",1664),y(1672,1,Rn,UEe),s.Mb=function(t){return t!=null},S(Ki,"LGraphToCGraphTransformer/0methodref$nonNull$Type",1672),y(1665,1,{},WEe),s.Kb=function(t){return ka(),Ro(B(c(c(t,57).g,10),(ye(),Hn)))},S(Ki,"LGraphToCGraphTransformer/lambda$0$Type",1665),y(1666,1,{},YEe),s.Kb=function(t){return ka(),bHe(c(c(t,57).g,145))},S(Ki,"LGraphToCGraphTransformer/lambda$1$Type",1666),y(1675,1,Rn,XEe),s.Mb=function(t){return ka(),Q(c(t,57).g,10)},S(Ki,"LGraphToCGraphTransformer/lambda$10$Type",1675),y(1676,1,Rt,JEe),s.td=function(t){N5t(c(t,57))},S(Ki,"LGraphToCGraphTransformer/lambda$11$Type",1676),y(1677,1,Rn,QEe),s.Mb=function(t){return ka(),Q(c(t,57).g,145)},S(Ki,"LGraphToCGraphTransformer/lambda$12$Type",1677),y(1681,1,Rt,ZEe),s.td=function(t){qjt(c(t,57))},S(Ki,"LGraphToCGraphTransformer/lambda$13$Type",1681),y(1678,1,Rt,wTe),s.td=function(t){h2t(this.a,c(t,8))},s.a=0,S(Ki,"LGraphToCGraphTransformer/lambda$14$Type",1678),y(1679,1,Rt,mTe),s.td=function(t){g2t(this.a,c(t,110))},s.a=0,S(Ki,"LGraphToCGraphTransformer/lambda$15$Type",1679),y(1680,1,Rt,vTe),s.td=function(t){d2t(this.a,c(t,8))},s.a=0,S(Ki,"LGraphToCGraphTransformer/lambda$16$Type",1680),y(1682,1,{},e4e),s.Kb=function(t){return ka(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ki,"LGraphToCGraphTransformer/lambda$17$Type",1682),y(1683,1,Rn,t4e),s.Mb=function(t){return ka(),Kr(c(t,17))},S(Ki,"LGraphToCGraphTransformer/lambda$18$Type",1683),y(1684,1,Rt,yTe),s.td=function(t){WCt(this.a,c(t,17))},S(Ki,"LGraphToCGraphTransformer/lambda$19$Type",1684),y(1668,1,Rt,_Te),s.td=function(t){TPt(this.a,c(t,145))},S(Ki,"LGraphToCGraphTransformer/lambda$2$Type",1668),y(1685,1,{},n4e),s.Kb=function(t){return ka(),new ht(null,new bt(c(t,29).a,16))},S(Ki,"LGraphToCGraphTransformer/lambda$20$Type",1685),y(1686,1,{},i4e),s.Kb=function(t){return ka(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ki,"LGraphToCGraphTransformer/lambda$21$Type",1686),y(1687,1,{},r4e),s.Kb=function(t){return ka(),c(B(c(t,17),(ye(),bb)),15)},S(Ki,"LGraphToCGraphTransformer/lambda$22$Type",1687),y(1688,1,Rn,o4e),s.Mb=function(t){return p3t(c(t,15))},S(Ki,"LGraphToCGraphTransformer/lambda$23$Type",1688),y(1689,1,Rt,ETe),s.td=function(t){Vkt(this.a,c(t,15))},S(Ki,"LGraphToCGraphTransformer/lambda$24$Type",1689),y(1667,1,Rt,mOe),s.td=function(t){bMt(this.a,this.b,c(t,145))},S(Ki,"LGraphToCGraphTransformer/lambda$3$Type",1667),y(1669,1,{},c4e),s.Kb=function(t){return ka(),new ht(null,new bt(c(t,29).a,16))},S(Ki,"LGraphToCGraphTransformer/lambda$4$Type",1669),y(1670,1,{},s4e),s.Kb=function(t){return ka(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ki,"LGraphToCGraphTransformer/lambda$5$Type",1670),y(1671,1,{},u4e),s.Kb=function(t){return ka(),c(B(c(t,17),(ye(),bb)),15)},S(Ki,"LGraphToCGraphTransformer/lambda$6$Type",1671),y(1673,1,Rt,STe),s.td=function(t){SRt(this.a,c(t,15))},S(Ki,"LGraphToCGraphTransformer/lambda$8$Type",1673),y(1674,1,Rt,vOe),s.td=function(t){L2t(this.a,this.b,c(t,145))},S(Ki,"LGraphToCGraphTransformer/lambda$9$Type",1674),y(1663,1,{},a4e),s.Le=function(t){var n,i,r,o,u;for(this.a=t,this.d=new RN,this.c=oe(sde,xe,121,this.a.a.a.c.length,0,1),this.b=0,i=new q(this.a.a.a);i.a=z&&(Ee(u,Ce(v)),ne=g.Math.max(ne,ue[v-1]-A),l+=N,Y+=ue[v-1]-Y,A=ue[v-1],N=d[v]),N=g.Math.max(N,d[v]),++v;l+=N}L=g.Math.min(1/ne,1/n.b/l),L>r&&(r=L,i=u)}return i},s.Wf=function(){return!1},S(Pf,"MSDCutIndexHeuristic",802),y(1617,1,Ti,X4e),s.pf=function(t,n){t$t(c(t,37),n)},S(Pf,"SingleEdgeGraphWrapper",1617),y(227,22,{3:1,35:1,22:1,227:1},XS);var Iv,l4,f4,Dw,gP,Tv,h4=hn(lc,"CenterEdgeLabelPlacementStrategy",227,bn,hCt,z_t),Brt;y(422,22,{3:1,35:1,22:1,422:1},FZ);var j1e,oU,A1e=hn(lc,"ConstraintCalculationStrategy",422,bn,n6t,V_t),$rt;y(314,22,{3:1,35:1,22:1,314:1,246:1,234:1},fF),s.Kf=function(){return WGe(this)},s.Xf=function(){return WGe(this)};var nj,H2,O1e,D1e=hn(lc,"CrossingMinimizationStrategy",314,bn,W6t,G_t),Krt;y(337,22,{3:1,35:1,22:1,337:1},hF);var k1e,cU,bR,R1e=hn(lc,"CuttingStrategy",337,bn,Y6t,Y_t),qrt;y(335,22,{3:1,35:1,22:1,335:1,246:1,234:1},sC),s.Kf=function(){return RUe(this)},s.Xf=function(){return RUe(this)};var x1e,sU,bP,uU,pP,L1e=hn(lc,"CycleBreakingStrategy",335,bn,FMt,X_t),Hrt;y(419,22,{3:1,35:1,22:1,419:1},BZ);var pR,N1e,F1e=hn(lc,"DirectionCongruency",419,bn,t6t,J_t),zrt;y(450,22,{3:1,35:1,22:1,450:1},dF);var d4,aU,jv,Vrt=hn(lc,"EdgeConstraint",450,bn,X6t,Q_t),Grt;y(276,22,{3:1,35:1,22:1,276:1},JS);var lU,fU,hU,dU,wR,gU,B1e=hn(lc,"EdgeLabelSideSelection",276,bn,pCt,Z_t),Urt;y(479,22,{3:1,35:1,22:1,479:1},$Z);var mR,$1e,K1e=hn(lc,"EdgeStraighteningStrategy",479,bn,e6t,eEt),Wrt;y(274,22,{3:1,35:1,22:1,274:1},QS);var bU,q1e,H1e,vR,z1e,V1e,G1e=hn(lc,"FixedAlignment",274,bn,gCt,tEt),Yrt;y(275,22,{3:1,35:1,22:1,275:1},ZS);var U1e,W1e,Y1e,X1e,wP,J1e,Q1e=hn(lc,"GraphCompactionStrategy",275,bn,dCt,nEt),Xrt;y(256,22,{3:1,35:1,22:1,256:1},Op);var g4,yR,b4,Gu,mP,_R,p4,Av,ER,vP,pU=hn(lc,"GraphProperties",256,bn,tTt,iEt),Jrt;y(292,22,{3:1,35:1,22:1,292:1},gF);var ij,wU,mU,vU=hn(lc,"GreedySwitchType",292,bn,Z6t,rEt),Qrt;y(303,22,{3:1,35:1,22:1,303:1},bF);var z2,rj,Ov,Zrt=hn(lc,"InLayerConstraint",303,bn,Q6t,oEt),eot;y(420,22,{3:1,35:1,22:1,420:1},KZ);var yU,Z1e,ege=hn(lc,"InteractiveReferencePoint",420,bn,i6t,cEt),tot,tge,V2,W0,SR,nge,ige,PR,rge,oj,MR,yP,G2,kw,_U,CR,Zo,oge,Y0,Cc,EU,SU,cj,gb,X0,U2,cge,W2,sj,Rw,wl,da,PU,Dv,hc,Hn,sge,uge,age,lge,fge,MU,IR,As,J0,CU,Y2,uj,Ul,kv,w4,Rv,xv,m4,bb,hge,IU,TU,X2;y(163,22,{3:1,35:1,22:1,163:1},aC);var _P,K1,EP,xw,aj,dge=hn(lc,"LayerConstraint",163,bn,KMt,sEt),not;y(848,1,ca,rCe),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Cae),""),"Direction Congruency"),"Specifies how drawings of the same graph with different layout directions compare to each other: either a natural reading direction is preserved or the drawings are rotated versions of each other."),Sge),(yd(),Ai)),F1e),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Iae),""),"Feedback Edges"),"Whether feedback edges should be highlighted by routing around the nodes."),(Pt(),!1)),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,AD),""),"Interactive Reference Point"),"Determines which point of a node is considered by interactive layout phases."),jge),Ai),ege),nt(Tt)))),pr(t,AD,Tz,Uot),pr(t,AD,K6,Got),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Tae),""),"Merge Edges"),"Edges that have no ports are merged so they touch the connected nodes at the same points. When this option is disabled, one port is created for each edge directly connected to a node. When it is enabled, all such incoming edges share an input port, and all outgoing edges share an output port."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jae),""),"Merge Hierarchy-Crossing Edges"),"If hierarchical layout is active, hierarchy-crossing edges use as few hierarchical ports as possible. They are broken by the algorithm, with hierarchical ports inserted as required. Usually, one such port is created for each edge at each hierarchy crossing point. With this option set to true, we try to create as few hierarchical ports as possible in the process. In particular, all edges that form a hyperedge can share a port."),!0),Dr),Qi),nt(Tt)))),Ze(t,new ze(dyt(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Aae),""),"Allow Non-Flow Ports To Switch Sides"),"Specifies whether non-flow ports may switch sides if their node's port constraints are either FIXED_SIDE or FIXED_ORDER. A non-flow port is a port on a side that is not part of the currently configured layout flow. For instance, given a left-to-right layout direction, north and south ports would be considered non-flow ports. Further note that the underlying criterium whether to switch sides or not solely relies on the minimization of edge crossings. Hence, edge length and other aesthetics criteria are not addressed."),!1),Dr),Qi),nt(_b)),U(G(Re,1),we,2,6,["org.eclipse.elk.layered.northOrSouthPort"])))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Oae),""),"Port Sorting Strategy"),"Only relevant for nodes with FIXED_SIDE port constraints. Determines the way a node's ports are distributed on the sides of a node if their order is not prescribed. The option is set on parent nodes."),Nge),Ai),Vbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Dae),""),"Thoroughness"),"How much effort should be spent to produce a nice layout."),Ce(7)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,kae),""),"Add Unnecessary Bendpoints"),"Adds bend points even if an edge does not change direction. If true, each long edge dummy will contribute a bend point to its edges and hierarchy-crossing edges will always get a bend point where they cross hierarchy boundaries. By default, bend points are only added where an edge changes direction."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Rae),""),"Generate Position and Layer IDs"),"If enabled position id and layer id are generated, which are usually only used internally when setting the interactiveLayout option. This option should be specified on the root node."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Tz),"cycleBreaking"),"Cycle Breaking Strategy"),"Strategy for cycle breaking. Cycle breaking looks for cycles in the graph and determines which edges to reverse to break the cycles. Reversed edges will end up pointing to the opposite direction of regular edges (that is, reversed edges will point left if edges usually point right)."),Ege),Ai),L1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,TT),Qz),"Node Layering Strategy"),"Strategy for node layering."),Dge),Ai),kbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xae),Qz),"Layer Constraint"),"Determines a constraint on the placement of the node regarding the layering."),Age),Ai),dge),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Lae),Qz),"Layer Choice Constraint"),"Allows to set a constraint regarding the layer placement of a node. Let i be the value of teh constraint. Assumed the drawing has n layers and i < n. If set to i, it expresses that the node should be placed in i-th layer. Should i>=n be true then the node is placed in the last layer of the drawing. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Nae),Qz),"Layer ID"),"Layer identifier that was calculated by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jz),zQe),"Upper Bound On Width [MinWidth Layerer]"),"Defines a loose upper bound on the width of the MinWidth layerer. If set to '-1' multiple values are tested and the best result is selected."),Ce(4)),oc),$r),nt(Tt)))),pr(t,jz,TT,ect),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Az),zQe),"Upper Layer Estimation Scaling Factor [MinWidth Layerer]"),"Multiplied with Upper Bound On Width for defining an upper bound on the width of layers which haven't been determined yet, but whose maximum width had been (roughly) estimated by the MinWidth algorithm. Compensates for too high estimations. If set to '-1' multiple values are tested and the best result is selected."),Ce(2)),oc),$r),nt(Tt)))),pr(t,Az,TT,nct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Oz),VQe),"Node Promotion Strategy"),"Reduces number of dummy nodes after layering phase (if possible)."),Oge),Ai),qbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Dz),VQe),"Max Node Promotion Iterations"),"Limits the number of iterations for node promotion."),Ce(0)),oc),$r),nt(Tt)))),pr(t,Dz,Oz,null),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,kz),"layering.coffmanGraham"),"Layer Bound"),"The maximum number of nodes allowed per layer."),Ce(Fn)),oc),$r),nt(Tt)))),pr(t,kz,TT,Yot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,K6),jT),"Crossing Minimization Strategy"),"Strategy for crossing minimization."),_ge),Ai),D1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Fae),jT),"Force Node Model Order"),"The node order given by the model does not change to produce a better layout. E.g. if node A is before node B in the model this is not changed during crossing minimization. This assumes that the node model order is already respected before crossing minimization. This can be achieved by setting considerModelOrder.strategy to NODES_AND_EDGES."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Rz),jT),"Hierarchical Sweepiness"),"How likely it is to use cross-hierarchy (1) vs bottom-up (-1)."),.1),To),mr),nt(Tt)))),pr(t,Rz,HD,_ot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xz),jT),"Semi-Interactive Crossing Minimization"),"Preserves the order of nodes within a layer but still minimizes crossings between edges connecting long edge dummies. Derives the desired order from positions specified by the 'org.eclipse.elk.position' layout option. Requires a crossing minimization strategy that is able to process 'in-layer' constraints."),!1),Dr),Qi),nt(Tt)))),pr(t,xz,K6,Mot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Bae),jT),"Position Choice Constraint"),"Allows to set a constraint regarding the position placement of a node in a layer. Assumed the layer in which the node placed includes n other nodes and i < n. If set to i, it expresses that the node should be placed at the i-th position. Should i>=n be true then the node is placed at the last position in the layer. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,$ae),jT),"Position ID"),"Position within a layer that was determined by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Kae),GQe),"Greedy Switch Activation Threshold"),"By default it is decided automatically if the greedy switch is activated or not. The decision is based on whether the size of the input graph (without dummy nodes) is smaller than the value of this option. A '0' enforces the activation."),Ce(40)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Lz),GQe),"Greedy Switch Crossing Minimization"),"Greedy Switch strategy for crossing minimization. The greedy switch heuristic is executed after the regular crossing minimization as a post-processor. Note that if 'hierarchyHandling' is set to 'INCLUDE_CHILDREN', the 'greedySwitchHierarchical.type' option must be used."),yge),Ai),vU),nt(Tt)))),pr(t,Lz,K6,vot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,OD),"crossingMinimization.greedySwitchHierarchical"),"Greedy Switch Crossing Minimization (hierarchical)"),"Activates the greedy switch heuristic in case hierarchical layout is used. The differences to the non-hierarchical case (see 'greedySwitch.type') are: 1) greedy switch is inactive by default, 3) only the option value set on the node at which hierarchical layout starts is relevant, and 2) if it's activated by the user, it properly addresses hierarchy-crossing edges."),vge),Ai),vU),nt(Tt)))),pr(t,OD,K6,pot),pr(t,OD,HD,wot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,bv),UQe),"Node Placement Strategy"),"Strategy for node placement."),Lge),Ai),Nbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,DD),UQe),"Favor Straight Edges Over Balancing"),"Favor straight edges over a balanced node placement. The default behavior is determined automatically based on the used 'edgeRouting'. For an orthogonal style it is set to true, for all other styles to false."),Dr),Qi),nt(Tt)))),pr(t,DD,bv,dct),pr(t,DD,bv,gct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Nz),WQe),"BK Edge Straightening"),"Specifies whether the Brandes Koepf node placer tries to increase the number of straight edges at the expense of diagram size. There is a subtle difference to the 'favorStraightEdges' option, which decides whether a balanced placement of the nodes is desired, or not. In bk terms this means combining the four alignments into a single balanced one, or not. This option on the other hand tries to straighten additional edges during the creation of each of the four alignments."),kge),Ai),K1e),nt(Tt)))),pr(t,Nz,bv,act),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Fz),WQe),"BK Fixed Alignment"),"Tells the BK node placer to use a certain alignment (out of its four) instead of the one producing the smallest height, or the combination of all four."),Rge),Ai),G1e),nt(Tt)))),pr(t,Fz,bv,fct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Bz),"nodePlacement.linearSegments"),"Linear Segments Deflection Dampening"),"Dampens the movement of nodes to keep the diagram from getting too large."),.3),To),mr),nt(Tt)))),pr(t,Bz,bv,pct),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,$z),"nodePlacement.networkSimplex"),"Node Flexibility"),"Aims at shorter and straighter edges. Two configurations are possible: (a) allow ports to move freely on the side they are assigned to (the order is always defined beforehand), (b) additionally allow to enlarge a node wherever it helps. If this option is not configured for a node, the 'nodeFlexibility.default' value is used, which is specified for the node's parent."),Ai),JU),nt(ar)))),pr(t,$z,bv,yct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Kz),"nodePlacement.networkSimplex.nodeFlexibility"),"Node Flexibility Default"),"Default value of the 'nodeFlexibility' option for the children of a hierarchical node."),xge),Ai),JU),nt(Tt)))),pr(t,Kz,bv,vct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qae),YQe),"Self-Loop Distribution"),"Alter the distribution of the loops around the node. It only takes effect for PortConstraints.FREE."),Cge),Ai),Wbe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Hae),YQe),"Self-Loop Ordering"),"Alter the ordering of the loops they can either be stacked or sequenced. It only takes effect for PortConstraints.FREE."),Ige),Ai),Ybe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,kD),"edgeRouting.splines"),"Spline Routing Mode"),"Specifies the way control points are assembled for each individual edge. CONSERVATIVE ensures that edges are properly routed around the nodes but feels rather orthogonal at times. SLOPPY uses fewer control points to obtain curvier edge routes but may result in edges overlapping nodes."),Tge),Ai),Jbe),nt(Tt)))),pr(t,kD,AT,Lot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,RD),"edgeRouting.splines.sloppy"),"Sloppy Spline Layer Spacing Factor"),"Spacing factor for routing area between layers when using sloppy spline routing."),.2),To),mr),nt(Tt)))),pr(t,RD,AT,Fot),pr(t,RD,kD,Bot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qz),"edgeRouting.polyline"),"Sloped Edge Zone Width"),"Width of the strip to the left and to the right of each layer where the polyline edge router is allowed to refrain from ensuring that edges are routed horizontally. This prevents awkward bend points for nodes that extent almost to the edge of their layer."),2),To),mr),nt(Tt)))),pr(t,qz,AT,Dot),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,zae),Hl),"Spacing Base Value"),"An optional base value for all other layout options of the 'spacing' group. It can be used to conveniently alter the overall 'spaciousness' of the drawing. Whenever an explicit value is set for the other layout options, this base value will have no effect. The base value is not inherited, i.e. it must be set for each hierarchical node."),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Vae),Hl),"Edge Node Between Layers Spacing"),"The spacing to be preserved between nodes and edges that are routed next to the node's layer. For the spacing between nodes and edges that cross the node's layer 'spacing.edgeNode' is used."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Gae),Hl),"Edge Edge Between Layer Spacing"),"Spacing to be preserved between pairs of edges that are routed between the same pair of layers. Note that 'spacing.edgeEdge' is used for the spacing between pairs of edges crossing the same layer."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Uae),Hl),"Node Node Between Layers Spacing"),"The spacing to be preserved between any pair of nodes of two adjacent layers. Note that 'spacing.nodeNode' is used for the spacing between nodes within the layer itself."),20),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Wae),ile),"Direction Priority"),"Defines how important it is to have a certain edge point into the direction of the overall layout. This option is evaluated during the cycle breaking phase."),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Yae),ile),"Shortness Priority"),"Defines how important it is to keep an edge as short as possible. This option is evaluated during the layering phase."),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Xae),ile),"Straightness Priority"),"Defines how important it is to keep an edge straight, i.e. aligned with one of the two axes. This option is evaluated during node placement."),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Hz),rle),fQe),"Tries to further compact components (disconnected sub-graphs)."),!1),Dr),Qi),nt(Tt)))),pr(t,Hz,L6,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Jae),XQe),"Post Compaction Strategy"),JQe),bge),Ai),Q1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Qae),XQe),"Post Compaction Constraint Calculation"),JQe),gge),Ai),A1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xD),ole),"High Degree Node Treatment"),"Makes room around high degree nodes to place leafs and trees."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,zz),ole),"High Degree Node Threshold"),"Whether a node is considered to have a high degree."),Ce(16)),oc),$r),nt(Tt)))),pr(t,zz,xD,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Vz),ole),"High Degree Node Maximum Tree Height"),"Maximum height of a subtree connected to a high degree node to be moved to separate layers."),Ce(5)),oc),$r),nt(Tt)))),pr(t,Vz,xD,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Hh),cle),"Graph Wrapping Strategy"),"For certain graphs and certain prescribed drawing areas it may be desirable to split the laid out graph into chunks that are placed side by side. The edges that connect different chunks are 'wrapped' around from the end of one chunk to the start of the other chunk. The points between the chunks are referred to as 'cuts'."),$ge),Ai),t0e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,LD),cle),"Additional Wrapped Edges Spacing"),"To visually separate edges that are wrapped from regularly routed edges an additional spacing value can be specified in form of this layout option. The spacing is added to the regular edgeNode spacing."),10),To),mr),nt(Tt)))),pr(t,LD,Hh,kct),pr(t,LD,Hh,Rct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ND),cle),"Correction Factor for Wrapping"),"At times and for certain types of graphs the executed wrapping may produce results that are consistently biased in the same fashion: either wrapping to often or to rarely. This factor can be used to correct the bias. Internally, it is simply multiplied with the 'aspect ratio' layout option."),1),To),mr),nt(Tt)))),pr(t,ND,Hh,Lct),pr(t,ND,Hh,Nct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,q6),QQe),"Cutting Strategy"),"The strategy by which the layer indexes are determined at which the layering crumbles into chunks."),Bge),Ai),R1e),nt(Tt)))),pr(t,q6,Hh,Hct),pr(t,q6,Hh,zct),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Gz),QQe),"Manually Specified Cuts"),"Allows the user to specify her own cuts for a certain graph."),Yl),Vu),nt(Tt)))),pr(t,Gz,q6,Bct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Uz),"wrapping.cutting.msd"),"MSD Freedom"),"The MSD cutting strategy starts with an initial guess on the number of chunks the graph should be split into. The freedom specifies how much the strategy may deviate from this guess. E.g. if an initial number of 3 is computed, a freedom of 1 allows 2, 3, and 4 cuts."),Fge),oc),$r),nt(Tt)))),pr(t,Uz,q6,Kct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,FD),ZQe),"Validification Strategy"),"When wrapping graphs, one can specify indices that are not allowed as split points. The validification strategy makes sure every computed split point is allowed."),Kge),Ai),e0e),nt(Tt)))),pr(t,FD,Hh,nst),pr(t,FD,Hh,ist),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,BD),ZQe),"Valid Indices for Wrapping"),null),Yl),Vu),nt(Tt)))),pr(t,BD,Hh,Zct),pr(t,BD,Hh,est),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,$D),sle),"Improve Cuts"),"For general graphs it is important that not too many edges wrap backwards. Thus a compromise between evenly-distributed cuts and the total number of cut edges is sought."),!0),Dr),Qi),nt(Tt)))),pr(t,$D,Hh,Wct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,KD),sle),"Distance Penalty When Improving Cuts"),null),2),To),mr),nt(Tt)))),pr(t,KD,Hh,Gct),pr(t,KD,$D,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Wz),sle),"Improve Wrapped Edges"),"The initial wrapping is performed in a very simple way. As a consequence, edges that wrap from one chunk to another may be unnecessarily long. Activating this option tries to shorten such edges."),!0),Dr),Qi),nt(Tt)))),pr(t,Wz,Hh,Xct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Zae),Zz),"Edge Label Side Selection"),"Method to decide on edge label sides."),Mge),Ai),B1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ele),Zz),"Edge Center Label Placement Strategy"),"Determines in which layer center labels of long edges should be placed."),Pge),Ai),h4),ui(Tt,U(G(Dd,1),_e,175,0,[Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qD),OT),"Consider Model Order"),"Preserves the order of nodes and edges in the model file if this does not lead to additional edge crossings. Depending on the strategy this is not always possible since the node and edge order might be conflicting."),mge),Ai),zbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,tle),OT),"No Model Order"),"Set on a node to not set a model order for this node even though it is a real node."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Yz),OT),"Consider Model Order for Components"),"If set to NONE the usual ordering strategy (by cumulative node priority and size of nodes) is used. INSIDE_PORT_SIDES orders the components with external ports only inside the groups with the same port side. FORCE_MODEL_ORDER enforces the mode order on components. This option might produce bad alignments and sub optimal drawings in terms of used area since the ordering should be respected."),pge),Ai),Lde),nt(Tt)))),pr(t,Yz,L6,null),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,nle),OT),"Long Edge Ordering Strategy"),"Indicates whether long edges are sorted under, over, or equal to nodes that have no connection to a previous layer in a left-to-right or right-to-left layout. Under and over changes to right and left in a vertical layout."),wge),Ai),xbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Xz),OT),"Crossing Counter Node Order Influence"),"Indicates with what percentage (1 for 100%) violations of the node model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal node order. Defaults to no influence (0)."),0),To),mr),nt(Tt)))),pr(t,Xz,qD,null),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Jz),OT),"Crossing Counter Port Order Influence"),"Indicates with what percentage (1 for 100%) violations of the port model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal port order. Defaults to no influence (0)."),0),To),mr),nt(Tt)))),pr(t,Jz,qD,null),pJe((new sCe,t))};var iot,rot,oot,gge,cot,bge,sot,pge,uot,aot,lot,wge,fot,hot,mge,dot,got,bot,vge,pot,wot,mot,yge,vot,yot,_ot,Eot,Sot,Pot,Mot,Cot,_ge,Iot,Ege,Tot,Sge,jot,Pge,Aot,Mge,Oot,Dot,kot,Cge,Rot,Ige,xot,Tge,Lot,Not,Fot,Bot,$ot,Kot,qot,Hot,zot,Vot,jge,Got,Uot,Wot,Yot,Xot,Jot,Age,Qot,Zot,ect,tct,nct,ict,rct,Oge,oct,Dge,cct,sct,uct,kge,act,lct,Rge,fct,hct,dct,gct,bct,pct,wct,mct,xge,vct,yct,_ct,Lge,Ect,Nge,Sct,Pct,Mct,Cct,Ict,Tct,jct,Act,Oct,Dct,kct,Rct,xct,Lct,Nct,Fct,Bct,$ct,Fge,Kct,qct,Bge,Hct,zct,Vct,Gct,Uct,Wct,Yct,Xct,Jct,$ge,Qct,Zct,est,tst,Kge,nst,ist;S(lc,"LayeredMetaDataProvider",848),y(986,1,ca,sCe),s.Qe=function(t){pJe(t)};var Of,jU,TR,SP,jR,qge,AR,J2,OR,Hge,zge,AU,q1,OU,Lw,Vge,lj,DU,Gge,rst,DR,kU,PP,Nw,ost,Pu,Uge,Wge,kR,RU,Df,RR,zh,Yge,Xge,Jge,xU,LU,Qge,Id,NU,Zge,Fw,ebe,tbe,nbe,xR,Bw,pb,ibe,rbe,yo,obe,cst,zc,LR,cbe,sbe,ube,FU,abe,NR,lbe,fbe,FR,Q0,hbe,BU,MP,dbe,Z0,CP,BR,wb,$U,v4,$R,mb,gbe,bbe,pbe,y4,wbe,sst,ust,ast,lst,ep,$w,ji,Td,fst,Kw,mbe,_4,vbe,qw,hst,E4,ybe,Q2,dst,gst,fj,KU,_be,hj,za,Lv,Z2,tp,vb,KR,Hw,qU,S4,P4,np,Nv,HU,dj,IP,TP,zU,Ebe,Sbe,Pbe,Mbe,VU,Cbe,Ibe,Tbe,jbe,GU,qR;S(lc,"LayeredOptions",986),y(987,1,{},Q4e),s.$e=function(){var t;return t=new CAe,t},s._e=function(t){},S(lc,"LayeredOptions/LayeredFactory",987),y(1372,1,{}),s.a=0;var bst;S(fc,"ElkSpacings/AbstractSpacingsBuilder",1372),y(779,1372,{},moe);var HR,pst;S(lc,"LayeredSpacings/LayeredSpacingsBuilder",779),y(313,22,{3:1,35:1,22:1,313:1,246:1,234:1},e5),s.Kf=function(){return YUe(this)},s.Xf=function(){return YUe(this)};var UU,Abe,Obe,zR,WU,Dbe,kbe=hn(lc,"LayeringStrategy",313,bn,bCt,uEt),wst;y(378,22,{3:1,35:1,22:1,378:1},pF);var YU,Rbe,VR,xbe=hn(lc,"LongEdgeOrderingStrategy",378,bn,U6t,aEt),mst;y(197,22,{3:1,35:1,22:1,197:1},I9);var Fv,Bv,GR,XU,JU=hn(lc,"NodeFlexibility",197,bn,eMt,lEt),vst;y(315,22,{3:1,35:1,22:1,315:1,246:1,234:1},uC),s.Kf=function(){return kUe(this)},s.Xf=function(){return kUe(this)};var jP,QU,ZU,AP,Lbe,Nbe=hn(lc,"NodePlacementStrategy",315,bn,NMt,pEt),yst;y(260,22,{3:1,35:1,22:1,260:1},Ky);var Fbe,gj,Bbe,$be,bj,Kbe,UR,WR,qbe=hn(lc,"NodePromotionStrategy",260,bn,gIt,hEt),_st;y(339,22,{3:1,35:1,22:1,339:1},wF);var Hbe,H1,eW,zbe=hn(lc,"OrderingStrategy",339,bn,tPt,dEt),Est;y(421,22,{3:1,35:1,22:1,421:1},qZ);var tW,nW,Vbe=hn(lc,"PortSortingStrategy",421,bn,r6t,gEt),Sst;y(452,22,{3:1,35:1,22:1,452:1},mF);var Os,Fc,OP,Pst=hn(lc,"PortType",452,bn,ePt,fEt),Mst;y(375,22,{3:1,35:1,22:1,375:1},vF);var Gbe,iW,Ube,Wbe=hn(lc,"SelfLoopDistributionStrategy",375,bn,nPt,bEt),Cst;y(376,22,{3:1,35:1,22:1,376:1},HZ);var pj,rW,Ybe=hn(lc,"SelfLoopOrderingStrategy",376,bn,Z5t,wEt),Ist;y(304,1,{304:1},mXe),S(lc,"Spacings",304),y(336,22,{3:1,35:1,22:1,336:1},yF);var oW,Xbe,DP,Jbe=hn(lc,"SplineRoutingMode",336,bn,rPt,mEt),Tst;y(338,22,{3:1,35:1,22:1,338:1},_F);var cW,Qbe,Zbe,e0e=hn(lc,"ValidifyStrategy",338,bn,oPt,vEt),jst;y(377,22,{3:1,35:1,22:1,377:1},EF);var zw,sW,M4,t0e=hn(lc,"WrappingStrategy",377,bn,iPt,yEt),Ast;y(1383,1,Sc,uCe),s.Yf=function(t){return c(t,37),Ost},s.pf=function(t,n){Y$t(this,c(t,37),n)};var Ost;S(GD,"DepthFirstCycleBreaker",1383),y(782,1,Sc,nne),s.Yf=function(t){return c(t,37),Dst},s.pf=function(t,n){UHt(this,c(t,37),n)},s.Zf=function(t){return c(Ne(t,S7(this.d,t.c.length)),10)};var Dst;S(GD,"GreedyCycleBreaker",782),y(1386,782,Sc,o7e),s.Zf=function(t){var n,i,r,o;for(o=null,n=Fn,r=new q(t);r.a1&&(Be(Fe(B(Nr((pt(0,t.c.length),c(t.c[0],10))),(Oe(),Lw))))?HUe(t,this.d,c(this,660)):(st(),cr(t,this.d)),aqe(this.e,t))},s.Sf=function(t,n,i,r){var o,u,a,l,d,p,v;for(n!=RRe(i,t.length)&&(u=t[n-(i?1:-1)],Iie(this.f,u,i?(Zr(),Fc):(Zr(),Os))),o=t[n][0],v=!r||o.k==(Dt(),Bi),p=kl(t[n]),this.ag(p,v,!1,i),a=0,d=new q(p);d.a"),t0?n$(this.a,t[n-1],t[n]):!i&&n1&&(Be(Fe(B(Nr((pt(0,t.c.length),c(t.c[0],10))),(Oe(),Lw))))?HUe(t,this.d,this):(st(),cr(t,this.d)),Be(Fe(B(Nr((pt(0,t.c.length),c(t.c[0],10))),Lw)))||aqe(this.e,t))},S(_s,"ModelOrderBarycenterHeuristic",660),y(1803,1,Zn,HTe),s.ue=function(t,n){return akt(this.a,c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_s,"ModelOrderBarycenterHeuristic/lambda$0$Type",1803),y(1403,1,Sc,pCe),s.Yf=function(t){var n;return c(t,37),n=$9(Vst),Nn(n,(Hr(),Hc),(Jr(),iR)),n},s.pf=function(t,n){W5t((c(t,37),n))};var Vst;S(_s,"NoCrossingMinimizer",1403),y(796,402,Hle,hZ),s.$f=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L;switch(A=this.g,i.g){case 1:{for(o=0,u=0,v=new q(t.j);v.a1&&(o.j==(Ie(),jt)?this.b[t]=!0:o.j==Mt&&t>0&&(this.b[t-1]=!0))},s.f=0,S(eh,"AllCrossingsCounter",1798),y(587,1,{},BO),s.b=0,s.d=0,S(eh,"BinaryIndexedTree",587),y(524,1,{},IC);var r0e,XR;S(eh,"CrossingsCounter",524),y(1906,1,Zn,zTe),s.ue=function(t,n){return J4t(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$0$Type",1906),y(1907,1,Zn,VTe),s.ue=function(t,n){return Q4t(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$1$Type",1907),y(1908,1,Zn,GTe),s.ue=function(t,n){return Z4t(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$2$Type",1908),y(1909,1,Zn,UTe),s.ue=function(t,n){return eSt(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$3$Type",1909),y(1910,1,Rt,WTe),s.td=function(t){xCt(this.a,c(t,11))},S(eh,"CrossingsCounter/lambda$4$Type",1910),y(1911,1,Rn,YTe),s.Mb=function(t){return Yyt(this.a,c(t,11))},S(eh,"CrossingsCounter/lambda$5$Type",1911),y(1912,1,Rt,XTe),s.td=function(t){t7e(this,t)},S(eh,"CrossingsCounter/lambda$6$Type",1912),y(1913,1,Rt,IOe),s.td=function(t){var n;m_(),w1(this.b,(n=this.a,c(t,11),n))},S(eh,"CrossingsCounter/lambda$7$Type",1913),y(826,1,yf,NJ),s.Lb=function(t){return m_(),nr(c(t,11),(ye(),As))},s.Fb=function(t){return this===t},s.Mb=function(t){return m_(),nr(c(t,11),(ye(),As))},S(eh,"CrossingsCounter/lambda$8$Type",826),y(1905,1,{},JTe),S(eh,"HyperedgeCrossingsCounter",1905),y(467,1,{35:1,467:1},wke),s.wd=function(t){return D9t(this,c(t,467))},s.b=0,s.c=0,s.e=0,s.f=0;var Tzt=S(eh,"HyperedgeCrossingsCounter/Hyperedge",467);y(362,1,{35:1,362:1},N8),s.wd=function(t){return Axt(this,c(t,362))},s.b=0,s.c=0;var Gst=S(eh,"HyperedgeCrossingsCounter/HyperedgeCorner",362);y(523,22,{3:1,35:1,22:1,523:1},zZ);var RP,xP,Ust=hn(eh,"HyperedgeCrossingsCounter/HyperedgeCorner/Type",523,bn,o6t,EEt),Wst;y(1405,1,Sc,cCe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Yst:null},s.pf=function(t,n){JOt(this,c(t,37),n)};var Yst;S(io,"InteractiveNodePlacer",1405),y(1406,1,Sc,oCe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Xst:null},s.pf=function(t,n){x8t(this,c(t,37),n)};var Xst,JR,QR;S(io,"LinearSegmentsNodePlacer",1406),y(257,1,{35:1,257:1},qQ),s.wd=function(t){return syt(this,c(t,257))},s.Fb=function(t){var n;return Q(t,257)?(n=c(t,257),this.b==n.b):!1},s.Hb=function(){return this.b},s.Ib=function(){return"ls"+C1(this.e)},s.a=0,s.b=0,s.c=-1,s.d=-1,s.g=0;var Jst=S(io,"LinearSegmentsNodePlacer/LinearSegment",257);y(1408,1,Sc,zRe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Qst:null},s.pf=function(t,n){BHt(this,c(t,37),n)},s.b=0,s.g=0;var Qst;S(io,"NetworkSimplexPlacer",1408),y(1427,1,Zn,oSe),s.ue=function(t,n){return Uc(c(t,19).a,c(n,19).a)},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(io,"NetworkSimplexPlacer/0methodref$compare$Type",1427),y(1429,1,Zn,cSe),s.ue=function(t,n){return Uc(c(t,19).a,c(n,19).a)},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(io,"NetworkSimplexPlacer/1methodref$compare$Type",1429),y(649,1,{649:1},TOe);var jzt=S(io,"NetworkSimplexPlacer/EdgeRep",649);y(401,1,{401:1},Rne),s.b=!1;var Azt=S(io,"NetworkSimplexPlacer/NodeRep",401);y(508,12,{3:1,4:1,20:1,28:1,52:1,12:1,14:1,15:1,54:1,508:1},NAe),S(io,"NetworkSimplexPlacer/Path",508),y(1409,1,{},sSe),s.Kb=function(t){return c(t,17).d.i.k},S(io,"NetworkSimplexPlacer/Path/lambda$0$Type",1409),y(1410,1,Rn,uSe),s.Mb=function(t){return c(t,267)==(Dt(),ur)},S(io,"NetworkSimplexPlacer/Path/lambda$1$Type",1410),y(1411,1,{},aSe),s.Kb=function(t){return c(t,17).d.i},S(io,"NetworkSimplexPlacer/Path/lambda$2$Type",1411),y(1412,1,Rn,QTe),s.Mb=function(t){return tke($He(c(t,10)))},S(io,"NetworkSimplexPlacer/Path/lambda$3$Type",1412),y(1413,1,Rn,lSe),s.Mb=function(t){return $4t(c(t,11))},S(io,"NetworkSimplexPlacer/lambda$0$Type",1413),y(1414,1,Rt,jOe),s.td=function(t){N2t(this.a,this.b,c(t,11))},S(io,"NetworkSimplexPlacer/lambda$1$Type",1414),y(1423,1,Rt,ZTe),s.td=function(t){iRt(this.a,c(t,17))},S(io,"NetworkSimplexPlacer/lambda$10$Type",1423),y(1424,1,{},fSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$11$Type",1424),y(1425,1,Rt,eje),s.td=function(t){ZNt(this.a,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$12$Type",1425),y(1426,1,{},hSe),s.Kb=function(t){return hu(),Ce(c(t,121).e)},S(io,"NetworkSimplexPlacer/lambda$13$Type",1426),y(1428,1,{},dSe),s.Kb=function(t){return hu(),Ce(c(t,121).e)},S(io,"NetworkSimplexPlacer/lambda$15$Type",1428),y(1430,1,Rn,gSe),s.Mb=function(t){return hu(),c(t,401).c.k==(Dt(),Ui)},S(io,"NetworkSimplexPlacer/lambda$17$Type",1430),y(1431,1,Rn,bSe),s.Mb=function(t){return hu(),c(t,401).c.j.c.length>1},S(io,"NetworkSimplexPlacer/lambda$18$Type",1431),y(1432,1,Rt,Jxe),s.td=function(t){HAt(this.c,this.b,this.d,this.a,c(t,401))},s.c=0,s.d=0,S(io,"NetworkSimplexPlacer/lambda$19$Type",1432),y(1415,1,{},pSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$2$Type",1415),y(1433,1,Rt,tje),s.td=function(t){x2t(this.a,c(t,11))},s.a=0,S(io,"NetworkSimplexPlacer/lambda$20$Type",1433),y(1434,1,{},wSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$21$Type",1434),y(1435,1,Rt,nje),s.td=function(t){X2t(this.a,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$22$Type",1435),y(1436,1,Rn,mSe),s.Mb=function(t){return tke(t)},S(io,"NetworkSimplexPlacer/lambda$23$Type",1436),y(1437,1,{},vSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$24$Type",1437),y(1438,1,Rn,ije),s.Mb=function(t){return n2t(this.a,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$25$Type",1438),y(1439,1,Rt,AOe),s.td=function(t){Mkt(this.a,this.b,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$26$Type",1439),y(1440,1,Rn,ySe),s.Mb=function(t){return hu(),!Kr(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$27$Type",1440),y(1441,1,Rn,_Se),s.Mb=function(t){return hu(),!Kr(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$28$Type",1441),y(1442,1,{},rje),s.Ce=function(t,n){return U2t(this.a,c(t,29),c(n,29))},S(io,"NetworkSimplexPlacer/lambda$29$Type",1442),y(1416,1,{},ESe),s.Kb=function(t){return hu(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(io,"NetworkSimplexPlacer/lambda$3$Type",1416),y(1417,1,Rn,SSe),s.Mb=function(t){return hu(),RPt(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$4$Type",1417),y(1418,1,Rt,oje),s.td=function(t){QBt(this.a,c(t,17))},S(io,"NetworkSimplexPlacer/lambda$5$Type",1418),y(1419,1,{},PSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$6$Type",1419),y(1420,1,Rn,MSe),s.Mb=function(t){return hu(),c(t,10).k==(Dt(),Ui)},S(io,"NetworkSimplexPlacer/lambda$7$Type",1420),y(1421,1,{},CSe),s.Kb=function(t){return hu(),new ht(null,new t0(new Kt(Ht(xh(c(t,10)).a.Kc(),new j))))},S(io,"NetworkSimplexPlacer/lambda$8$Type",1421),y(1422,1,Rn,ISe),s.Mb=function(t){return hu(),R4t(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$9$Type",1422),y(1404,1,Sc,ECe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Zst:null},s.pf=function(t,n){k$t(c(t,37),n)};var Zst;S(io,"SimpleNodePlacer",1404),y(180,1,{180:1},cv),s.Ib=function(){var t;return t="",this.c==(gf(),ip)?t+=A2:this.c==jd&&(t+=j2),this.o==(Al(),yb)?t+=uz:this.o==Wl?t+="UP":t+="BALANCED",t},S(R1,"BKAlignedLayout",180),y(516,22,{3:1,35:1,22:1,516:1},GZ);var jd,ip,eut=hn(R1,"BKAlignedLayout/HDirection",516,bn,s6t,SEt),tut;y(515,22,{3:1,35:1,22:1,515:1},VZ);var yb,Wl,nut=hn(R1,"BKAlignedLayout/VDirection",515,bn,u6t,PEt),iut;y(1634,1,{},OOe),S(R1,"BKAligner",1634),y(1637,1,{},lVe),S(R1,"BKCompactor",1637),y(654,1,{654:1},TSe),s.a=0,S(R1,"BKCompactor/ClassEdge",654),y(458,1,{458:1},xAe),s.a=null,s.b=0,S(R1,"BKCompactor/ClassNode",458),y(1407,1,Sc,i7e),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?rut:null},s.pf=function(t,n){ezt(this,c(t,37),n)},s.d=!1;var rut;S(R1,"BKNodePlacer",1407),y(1635,1,{},jSe),s.d=0,S(R1,"NeighborhoodInformation",1635),y(1636,1,Zn,cje),s.ue=function(t,n){return sIt(this,c(t,46),c(n,46))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(R1,"NeighborhoodInformation/NeighborComparator",1636),y(808,1,{}),S(R1,"ThresholdStrategy",808),y(1763,808,{},$Ae),s.bg=function(t,n,i){return this.a.o==(Al(),Wl)?Ii:$i},s.cg=function(){},S(R1,"ThresholdStrategy/NullThresholdStrategy",1763),y(579,1,{579:1},DOe),s.c=!1,s.d=!1,S(R1,"ThresholdStrategy/Postprocessable",579),y(1764,808,{},KAe),s.bg=function(t,n,i){var r,o,u;return o=n==i,r=this.a.a[i.p]==n,o||r?(u=t,this.a.c==(gf(),ip)?(o&&(u=uH(this,n,!0)),!isNaN(u)&&!isFinite(u)&&r&&(u=uH(this,i,!1))):(o&&(u=uH(this,n,!0)),!isNaN(u)&&!isFinite(u)&&r&&(u=uH(this,i,!1))),u):t},s.cg=function(){for(var t,n,i,r,o;this.d.b!=0;)o=c(P6t(this.d),579),r=OYe(this,o),r.a&&(t=r.a,i=Be(this.a.f[this.a.g[o.b.p].p]),!(!i&&!Kr(t)&&t.c.i.c==t.d.i.c)&&(n=FUe(this,o),n||l2t(this.e,o)));for(;this.e.a.c.length!=0;)FUe(this,c(Wqe(this.e),579))},S(R1,"ThresholdStrategy/SimpleThresholdStrategy",1764),y(635,1,{635:1,246:1,234:1},ASe),s.Kf=function(){return rqe(this)},s.Xf=function(){return rqe(this)};var uW;S(rV,"EdgeRouterFactory",635),y(1458,1,Sc,SCe),s.Yf=function(t){return DNt(c(t,37))},s.pf=function(t,n){$$t(c(t,37),n)};var out,cut,sut,uut,aut,o0e,lut,fut;S(rV,"OrthogonalEdgeRouter",1458),y(1451,1,Sc,r7e),s.Yf=function(t){return n7t(c(t,37))},s.pf=function(t,n){cHt(this,c(t,37),n)};var hut,dut,gut,but,mj,put;S(rV,"PolylineEdgeRouter",1451),y(1452,1,yf,OSe),s.Lb=function(t){return _re(c(t,10))},s.Fb=function(t){return this===t},s.Mb=function(t){return _re(c(t,10))},S(rV,"PolylineEdgeRouter/1",1452),y(1809,1,Rn,DSe),s.Mb=function(t){return c(t,129).c==(cl(),z1)},S(gl,"HyperEdgeCycleDetector/lambda$0$Type",1809),y(1810,1,{},kSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$1$Type",1810),y(1811,1,Rn,RSe),s.Mb=function(t){return c(t,129).c==(cl(),z1)},S(gl,"HyperEdgeCycleDetector/lambda$2$Type",1811),y(1812,1,{},xSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$3$Type",1812),y(1813,1,{},LSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$4$Type",1813),y(1814,1,{},NSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$5$Type",1814),y(112,1,{35:1,112:1},dI),s.wd=function(t){return uyt(this,c(t,112))},s.Fb=function(t){var n;return Q(t,112)?(n=c(t,112),this.g==n.g):!1},s.Hb=function(){return this.g},s.Ib=function(){var t,n,i,r;for(t=new lu("{"),r=new q(this.n);r.a"+this.b+" ("+v3t(this.c)+")"},s.d=0,S(gl,"HyperEdgeSegmentDependency",129),y(520,22,{3:1,35:1,22:1,520:1},UZ);var z1,Vw,wut=hn(gl,"HyperEdgeSegmentDependency/DependencyType",520,bn,c6t,MEt),mut;y(1815,1,{},sje),S(gl,"HyperEdgeSegmentSplitter",1815),y(1816,1,{},F9e),s.a=0,s.b=0,S(gl,"HyperEdgeSegmentSplitter/AreaRating",1816),y(329,1,{329:1},uB),s.a=0,s.b=0,s.c=0,S(gl,"HyperEdgeSegmentSplitter/FreeArea",329),y(1817,1,Zn,VSe),s.ue=function(t,n){return b_t(c(t,112),c(n,112))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(gl,"HyperEdgeSegmentSplitter/lambda$0$Type",1817),y(1818,1,Rt,Qxe),s.td=function(t){yMt(this.a,this.d,this.c,this.b,c(t,112))},s.b=0,S(gl,"HyperEdgeSegmentSplitter/lambda$1$Type",1818),y(1819,1,{},GSe),s.Kb=function(t){return new ht(null,new bt(c(t,112).e,16))},S(gl,"HyperEdgeSegmentSplitter/lambda$2$Type",1819),y(1820,1,{},USe),s.Kb=function(t){return new ht(null,new bt(c(t,112).j,16))},S(gl,"HyperEdgeSegmentSplitter/lambda$3$Type",1820),y(1821,1,{},WSe),s.Fe=function(t){return ge(Te(t))},S(gl,"HyperEdgeSegmentSplitter/lambda$4$Type",1821),y(655,1,{},DB),s.a=0,s.b=0,s.c=0,S(gl,"OrthogonalRoutingGenerator",655),y(1638,1,{},YSe),s.Kb=function(t){return new ht(null,new bt(c(t,112).e,16))},S(gl,"OrthogonalRoutingGenerator/lambda$0$Type",1638),y(1639,1,{},XSe),s.Kb=function(t){return new ht(null,new bt(c(t,112).j,16))},S(gl,"OrthogonalRoutingGenerator/lambda$1$Type",1639),y(661,1,{}),S(oV,"BaseRoutingDirectionStrategy",661),y(1807,661,{},qAe),s.dg=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;if(!(t.r&&!t.q))for(v=n+t.o*i,p=new q(t.n);p.aEf&&(u=v,o=t,r=new $e(A,u),Cn(a.a,r),O0(this,a,o,r,!1),D=t.r,D&&(L=ge(Te(hl(D.e,0))),r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1),u=n+D.o*i,o=D,r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1)),r=new $e(z,u),Cn(a.a,r),O0(this,a,o,r,!1)))},s.eg=function(t){return t.i.n.a+t.n.a+t.a.a},s.fg=function(){return Ie(),Yt},s.gg=function(){return Ie(),_t},S(oV,"NorthToSouthRoutingStrategy",1807),y(1808,661,{},HAe),s.dg=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;if(!(t.r&&!t.q))for(v=n-t.o*i,p=new q(t.n);p.aEf&&(u=v,o=t,r=new $e(A,u),Cn(a.a,r),O0(this,a,o,r,!1),D=t.r,D&&(L=ge(Te(hl(D.e,0))),r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1),u=n-D.o*i,o=D,r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1)),r=new $e(z,u),Cn(a.a,r),O0(this,a,o,r,!1)))},s.eg=function(t){return t.i.n.a+t.n.a+t.a.a},s.fg=function(){return Ie(),_t},s.gg=function(){return Ie(),Yt},S(oV,"SouthToNorthRoutingStrategy",1808),y(1806,661,{},zAe),s.dg=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;if(!(t.r&&!t.q))for(v=n+t.o*i,p=new q(t.n);p.aEf&&(u=v,o=t,r=new $e(u,A),Cn(a.a,r),O0(this,a,o,r,!0),D=t.r,D&&(L=ge(Te(hl(D.e,0))),r=new $e(u,L),Cn(a.a,r),O0(this,a,o,r,!0),u=n+D.o*i,o=D,r=new $e(u,L),Cn(a.a,r),O0(this,a,o,r,!0)),r=new $e(u,z),Cn(a.a,r),O0(this,a,o,r,!0)))},s.eg=function(t){return t.i.n.b+t.n.b+t.a.b},s.fg=function(){return Ie(),jt},s.gg=function(){return Ie(),Mt},S(oV,"WestToEastRoutingStrategy",1806),y(813,1,{},due),s.Ib=function(){return C1(this.a)},s.b=0,s.c=!1,s.d=!1,s.f=0,S(Sw,"NubSpline",813),y(407,1,{407:1},dWe,DLe),S(Sw,"NubSpline/PolarCP",407),y(1453,1,Sc,nVe),s.Yf=function(t){return V7t(c(t,37))},s.pf=function(t,n){MHt(this,c(t,37),n)};var vut,yut,_ut,Eut,Sut;S(Sw,"SplineEdgeRouter",1453),y(268,1,{268:1},aO),s.Ib=function(){return this.a+" ->("+this.c+") "+this.b},s.c=0,S(Sw,"SplineEdgeRouter/Dependency",268),y(455,22,{3:1,35:1,22:1,455:1},WZ);var V1,$v,Put=hn(Sw,"SplineEdgeRouter/SideToProcess",455,bn,a6t,CEt),Mut;y(1454,1,Rn,HSe),s.Mb=function(t){return w6(),!c(t,128).o},S(Sw,"SplineEdgeRouter/lambda$0$Type",1454),y(1455,1,{},qSe),s.Ge=function(t){return w6(),c(t,128).v+1},S(Sw,"SplineEdgeRouter/lambda$1$Type",1455),y(1456,1,Rt,kOe),s.td=function(t){L4t(this.a,this.b,c(t,46))},S(Sw,"SplineEdgeRouter/lambda$2$Type",1456),y(1457,1,Rt,ROe),s.td=function(t){N4t(this.a,this.b,c(t,46))},S(Sw,"SplineEdgeRouter/lambda$3$Type",1457),y(128,1,{35:1,128:1},AGe,vue),s.wd=function(t){return ayt(this,c(t,128))},s.b=0,s.e=!1,s.f=0,s.g=0,s.j=!1,s.k=!1,s.n=0,s.o=!1,s.p=!1,s.q=!1,s.s=0,s.u=0,s.v=0,s.F=0,S(Sw,"SplineSegment",128),y(459,1,{459:1},zSe),s.a=0,s.b=!1,s.c=!1,s.d=!1,s.e=!1,s.f=0,S(Sw,"SplineSegment/EdgeInformation",459),y(1234,1,{},FSe),S(H6,gae,1234),y(1235,1,Zn,BSe),s.ue=function(t,n){return vRt(c(t,135),c(n,135))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(H6,gQe,1235),y(1233,1,{},e8e),S(H6,"MrTree",1233),y(393,22,{3:1,35:1,22:1,393:1,246:1,234:1},T9),s.Kf=function(){return tUe(this)},s.Xf=function(){return tUe(this)};var ZR,LP,vj,NP,c0e=hn(H6,"TreeLayoutPhases",393,bn,tMt,IEt),Cut;y(1130,209,rb,yke),s.Ze=function(t,n){var i,r,o,u,a,l,d;for(Be(Fe(Ke(t,(A0(),h0e))))||V8((i=new zM((Ap(),new Ip(t))),i)),a=(l=new lO,Mo(l,t),pe(l,(ic(),$P),t),d=new en,lBt(t,l,d),IBt(t,l,d),l),u=yBt(this.a,a),o=new q(u);o.a"+Q8(this.c):"e_"+fi(this)},S(z6,"TEdge",188),y(135,134,{3:1,135:1,94:1,134:1},lO),s.Ib=function(){var t,n,i,r,o;for(o=null,r=Mn(this.b,0);r.b!=r.d.c;)i=c(Pn(r),86),o+=(i.c==null||i.c.length==0?"n_"+i.g:"n_"+i.c)+` -`;for(n=Mn(this.a,0);n.b!=n.d.c;)t=c(Pn(n),188),o+=(t.b&&t.c?Q8(t.b)+"->"+Q8(t.c):"e_"+fi(t))+` -`;return o};var Ozt=S(z6,"TGraph",135);y(633,502,{3:1,502:1,633:1,94:1,134:1}),S(z6,"TShape",633),y(86,633,{3:1,502:1,86:1,633:1,94:1,134:1},uK),s.Ib=function(){return Q8(this)};var Dzt=S(z6,"TNode",86);y(255,1,Yf,t1),s.Jc=function(t){Mr(this,t)},s.Kc=function(){var t;return t=Mn(this.a.d,0),new Dy(t)},S(z6,"TNode/2",255),y(358,1,dr,Dy),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(Pn(this.a),188).c},s.Ob=function(){return r9(this.a)},s.Qb=function(){MO(this.a)},S(z6,"TNode/2/1",358),y(1840,1,Ti,vke),s.pf=function(t,n){HBt(this,c(t,135),n)},S(N2,"FanProcessor",1840),y(327,22,{3:1,35:1,22:1,327:1,234:1},t5),s.Kf=function(){switch(this.g){case 0:return new o9e;case 1:return new vke;case 2:return new ZSe;case 3:return new JSe;case 4:return new t5e;case 5:return new n5e;default:throw V(new St(Mz+(this.f!=null?this.f:""+this.g)))}};var aW,lW,fW,hW,dW,ex,Iut=hn(N2,Mae,327,bn,wCt,TEt),Tut;y(1843,1,Ti,JSe),s.pf=function(t,n){Mxt(this,c(t,135),n)},s.a=0,S(N2,"LevelHeightProcessor",1843),y(1844,1,Yf,QSe),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return st(),s_(),n4},S(N2,"LevelHeightProcessor/1",1844),y(1841,1,Ti,ZSe),s.pf=function(t,n){Dkt(this,c(t,135),n)},s.a=0,S(N2,"NeighborsProcessor",1841),y(1842,1,Yf,e5e),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return st(),s_(),n4},S(N2,"NeighborsProcessor/1",1842),y(1845,1,Ti,t5e),s.pf=function(t,n){Pxt(this,c(t,135),n)},s.a=0,S(N2,"NodePositionProcessor",1845),y(1839,1,Ti,o9e),s.pf=function(t,n){X$t(this,c(t,135))},S(N2,"RootProcessor",1839),y(1846,1,Ti,n5e),s.pf=function(t,n){oAt(c(t,135))},S(N2,"Untreeifyer",1846);var yj,FP,jut,gW,tx,BP,bW,nx,ix,C4,$P,rx,Ad,s0e,Aut,pW,Gw,wW,u0e;y(851,1,ca,_Ce),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,zle),""),"Weighting of Nodes"),"Which weighting to use when computing a node order."),l0e),(yd(),Ai)),w0e),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Vle),""),"Search Order"),"Which search order to use when computing a spanning tree."),a0e),Ai),v0e),nt(Tt)))),IXe((new yCe,t))};var Out,a0e,Dut,l0e;S(WD,"MrTreeMetaDataProvider",851),y(994,1,ca,yCe),s.Qe=function(t){IXe(t)};var kut,f0e,Rut,xut,Lut,Nut,h0e,Fut,d0e,But,ox,g0e,$ut,b0e,Kut;S(WD,"MrTreeOptions",994),y(995,1,{},i5e),s.$e=function(){var t;return t=new yke,t},s._e=function(t){},S(WD,"MrTreeOptions/MrtreeFactory",995),y(480,22,{3:1,35:1,22:1,480:1},YZ);var mW,p0e,w0e=hn(WD,"OrderWeighting",480,bn,f6t,jEt),qut;y(425,22,{3:1,35:1,22:1,425:1},XZ);var m0e,vW,v0e=hn(WD,"TreeifyingOrder",425,bn,l6t,OEt),Hut;y(1459,1,Sc,fCe),s.Yf=function(t){return c(t,135),zut},s.pf=function(t,n){rTt(this,c(t,135),n)};var zut;S("org.eclipse.elk.alg.mrtree.p1treeify","DFSTreeifyer",1459),y(1460,1,Sc,hCe),s.Yf=function(t){return c(t,135),Vut},s.pf=function(t,n){qkt(this,c(t,135),n)};var Vut;S("org.eclipse.elk.alg.mrtree.p2order","NodeOrderer",1460),y(1461,1,Sc,lCe),s.Yf=function(t){return c(t,135),Gut},s.pf=function(t,n){oFt(this,c(t,135),n)},s.a=0;var Gut;S("org.eclipse.elk.alg.mrtree.p3place","NodePlacer",1461),y(1462,1,Sc,dCe),s.Yf=function(t){return c(t,135),Uut},s.pf=function(t,n){OOt(c(t,135),n)};var Uut;S("org.eclipse.elk.alg.mrtree.p4route","EdgeRouter",1462);var KP;y(495,22,{3:1,35:1,22:1,495:1,246:1,234:1},JZ),s.Kf=function(){return kHe(this)},s.Xf=function(){return kHe(this)};var cx,I4,y0e=hn(Gle,"RadialLayoutPhases",495,bn,h6t,AEt),Wut;y(1131,209,rb,Z9e),s.Ze=function(t,n){var i,r,o,u,a,l;if(i=LGe(this,t),Wt(n,"Radial layout",i.c.length),Be(Fe(Ke(t,(ow(),A0e))))||V8((r=new zM((Ap(),new Ip(t))),r)),l=W7t(t),ao(t,(w5(),KP),l),!l)throw V(new St("The given graph is not a tree!"));for(o=ge(Te(Ke(t,ax))),o==0&&(o=XGe(t)),ao(t,ax,o),a=new q(LGe(this,t));a.a0&&rHe((fn(n-1,t.length),t.charCodeAt(n-1)),MQe);)--n;if(r>=n)throw V(new St("The given string does not contain any numbers."));if(o=gw(t.substr(r,n-r),`,|;|\r| -`),o.length!=2)throw V(new St("Exactly two numbers are expected, "+o.length+" were found."));try{this.a=aw(uw(o[0])),this.b=aw(uw(o[1]))}catch(u){throw u=gi(u),Q(u,127)?(i=u,V(new St(CQe+i))):V(u)}},s.Ib=function(){return"("+this.a+","+this.b+")"},s.a=0,s.b=0;var ir=S(CT,"KVector",8);y(74,68,{3:1,4:1,20:1,28:1,52:1,14:1,68:1,15:1,74:1,414:1},ds,n9,qDe),s.Pc=function(){return wjt(this)},s.Jf=function(t){var n,i,r,o,u,a;r=gw(t,`,|;|\\(|\\)|\\[|\\]|\\{|\\}| | | -`),na(this);try{for(i=0,u=0,o=0,a=0;i0&&(u%2==0?o=aw(r[i]):a=aw(r[i]),u>0&&u%2!=0&&Cn(this,new $e(o,a)),++u),++i}catch(l){throw l=gi(l),Q(l,127)?(n=l,V(new St("The given string does not match the expected format for vectors."+n))):V(l)}},s.Ib=function(){var t,n,i;for(t=new lu("("),n=Mn(this,0);n.b!=n.d.c;)i=c(Pn(n),8),wn(t,i.a+","+i.b),n.b!=n.d.c&&(t.a+="; ");return(t.a+=")",t).a};var jpe=S(CT,"KVectorChain",74);y(248,22,{3:1,35:1,22:1,248:1},n5);var $W,px,wx,Pj,Mj,mx,Ape=hn(ua,"Alignment",248,bn,fCt,WEt),dlt;y(979,1,ca,ICe),s.Qe=function(t){EYe(t)};var Ope,KW,glt,Dpe,kpe,blt,Rpe,plt,wlt,xpe,Lpe,mlt;S(ua,"BoxLayouterOptions",979),y(980,1,{},X5e),s.$e=function(){var t;return t=new r6e,t},s._e=function(t){},S(ua,"BoxLayouterOptions/BoxFactory",980),y(291,22,{3:1,35:1,22:1,291:1},i5);var Cj,qW,Ij,Tj,jj,HW,zW=hn(ua,"ContentAlignment",291,bn,lCt,YEt),vlt;y(684,1,ca,VJ),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,_Ze),""),"Layout Algorithm"),"Select a specific layout algorithm."),(yd(),T4)),Re),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,EZe),""),"Resolved Layout Algorithm"),"Meta data associated with the selected algorithm."),Yl),xzt),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ele),""),"Alignment"),"Alignment of the selected node relative to other nodes; the exact meaning depends on the used algorithm."),Npe),Ai),Ape),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,D2),""),"Aspect Ratio"),"The desired aspect ratio of the drawing, that is the quotient of width by height."),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,pfe),""),"Bend Points"),"A fixed list of bend points for the edge. This is used by the 'Fixed Layout' algorithm to specify a pre-defined routing for an edge. The vector chain must include the source point, any bend points, and the target point, so it must have at least two points."),Yl),jpe),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,zD),""),"Content Alignment"),"Specifies how the content of a node are aligned. Each node can individually control the alignment of its contents. I.e. if a node should be aligned top left in its parent node, the parent node should specify that option."),Bpe),t3),zW),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,DT),""),"Debug Mode"),"Whether additional debug information shall be generated."),(Pt(),!1)),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Mle),""),oae),"Overall direction of edges: horizontal (right / left) or vertical (down / up)."),$pe),Ai),WP),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,AT),""),"Edge Routing"),"What kind of edge routing style should be applied for the content of a parent node. Algorithms may also set this option to single edges in order to mark them as splines. The bend point list of edges with this option set to SPLINES must be interpreted as control points for a piecewise cubic spline."),Hpe),Ai),iY),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,XD),""),"Expand Nodes"),"If active, nodes are expanded to fill the area of their parent."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,HD),""),"Hierarchy Handling"),"Determines whether separate layout runs are triggered for different compound nodes in a hierarchical graph. Setting a node's hierarchy handling to `INCLUDE_CHILDREN` will lay out that node and all of its descendants in a single layout run, until a descendant is encountered which has its hierarchy handling set to `SEPARATE_CHILDREN`. In general, `SEPARATE_CHILDREN` will ensure that a new layout run is triggered for a node with that setting. Including multiple levels of hierarchy in a single layout run may allow cross-hierarchical edges to be laid out properly. If the root node is set to `INHERIT` (or not set at all), the default behavior is `SEPARATE_CHILDREN`."),Upe),Ai),Dwe),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,N0),""),"Padding"),"The padding to be left to a parent element's border when placing child elements. This can also serve as an output option of a layout algorithm if node size calculation is setup appropriately."),iwe),Yl),Fde),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,PT),""),"Interactive"),"Whether the algorithm should be run in interactive mode for the content of a parent node. What this means exactly depends on how the specific algorithm interprets this option. Usually in the interactive mode algorithms try to modify the current layout as little as possible."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,iV),""),"interactive Layout"),"Whether the graph should be changeable interactively and by setting constraints"),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,N6),""),"Omit Node Micro Layout"),"Node micro layout comprises the computation of node dimensions (if requested), the placement of ports and their labels, and the placement of node labels. The functionality is implemented independent of any specific layout algorithm and shouldn't have any negative impact on the layout algorithm's performance itself. Yet, if any unforeseen behavior occurs, this option allows to deactivate the micro layout."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ez),""),"Port Constraints"),"Defines constraints of the position of the ports of a node."),uwe),Ai),xwe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,VD),""),"Position"),"The position of a node, port, or label. This is used by the 'Fixed Layout' algorithm to specify a pre-defined position."),Yl),ir),ui(ar,U(G(Dd,1),_e,175,0,[_b,Od]))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,ST),""),"Priority"),"Defines the priority of an object; its meaning depends on the specific layout algorithm and the context where it is used."),oc),$r),ui(ar,U(G(Dd,1),_e,175,0,[kf]))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,MD),""),"Randomization Seed"),"Seed used for pseudo-random number generators to control the layout algorithm. If the value is 0, the seed shall be determined pseudo-randomly (e.g. from the system time)."),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,L6),""),"Separate Connected Components"),"Whether each connected component should be processed separately."),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Rle),""),"Junction Points"),"This option is not used as option, but as output of the layout algorithms. It is attached to edges and determines the points where junction symbols should be drawn in order to represent hyperedges with orthogonal routing. Whether such points are computed depends on the chosen layout algorithm and edge routing style. The points are put into the vector chain with no specific order."),Ype),Yl),jpe),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Nle),""),"Comment Box"),"Whether the node should be regarded as a comment box instead of a regular node. In that case its placement should be similar to how labels are handled. Any edges incident to a comment box specify to which graph elements the comment is related."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Fle),""),"Hypernode"),"Whether the node should be handled as a hypernode."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,azt),""),"Label Manager"),"Label managers can shorten labels upon a layout algorithm's request."),Yl),$zt),ui(Tt,U(G(Dd,1),_e,175,0,[Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,$le),""),"Margins"),"Margins define additional space around the actual bounds of a graph element. For instance, ports or labels being placed on the outside of a node's border might introduce such a margin. The margin is used to guarantee non-overlap of other graph elements with those ports or labels."),Xpe),Yl),Nde),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,yle),""),"No Layout"),"No layout is done for the associated element. This is used to mark parts of a diagram to avoid their inclusion in the layout graph, or to mark parts of the layout graph to prevent layout engines from processing them. If you wish to exclude the contents of a compound node from automatic layout, while the node itself is still considered on its own layer, use the 'Fixed Layout' algorithm for that node."),!1),Dr),Qi),ui(ar,U(G(Dd,1),_e,175,0,[kf,_b,Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,SZe),""),"Scale Factor"),"The scaling factor to be applied to the corresponding node in recursive layout. It causes the corresponding node's size to be adjusted, and its ports and labels to be sized and placed accordingly after the layout of that node has been determined (and before the node itself and its siblings are arranged). The scaling is not reverted afterwards, so the resulting layout graph contains the adjusted size and position data. This option is currently not supported if 'Layout Hierarchy' is set."),1),To),mr),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,PZe),""),"Animate"),"Whether the shift from the old layout to the new computed layout shall be animated."),!0),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,MZe),""),"Animation Time Factor"),"Factor for computation of animation time. The higher the value, the longer the animation time. If the value is 0, the resulting time is always equal to the minimum defined by 'Minimal Animation Time'."),Ce(100)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,CZe),""),"Layout Ancestors"),"Whether the hierarchy levels on the path from the selected element to the root of the diagram shall be included in the layout process."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,IZe),""),"Maximal Animation Time"),"The maximal time for animations, in milliseconds."),Ce(4e3)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,TZe),""),"Minimal Animation Time"),"The minimal time for animations, in milliseconds."),Ce(400)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jZe),""),"Progress Bar"),"Whether a progress bar shall be displayed during layout computations."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,AZe),""),"Validate Graph"),"Whether the graph shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,OZe),""),"Validate Options"),"Whether layout options shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!0),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,DZe),""),"Zoom to Fit"),"Whether the zoom level shall be set to view the whole diagram after layout."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,bfe),"box"),"Box Layout Mode"),"Configures the packing mode used by the {@link BoxLayoutProvider}. If SIMPLE is not required (neither priorities are used nor the interactive mode), GROUP_DEC can improve the packing and decrease the area. GROUP_MIXED and GROUP_INC may, in very specific scenarios, work better."),Fpe),Ai),Kwe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ule),Hl),"Comment Comment Spacing"),"Spacing to be preserved between a comment box and other comment boxes connected to the same node. The space left between comment boxes of different nodes is controlled by the node-node spacing."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ale),Hl),"Comment Node Spacing"),"Spacing to be preserved between a node and its connected comment boxes. The space left between a node and the comments of another node is controlled by the node-node spacing."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,pz),Hl),"Components Spacing"),"Spacing to be preserved between pairs of connected components. This option is only relevant if 'separateConnectedComponents' is activated."),20),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,lle),Hl),"Edge Spacing"),"Spacing to be preserved between any two edges. Note that while this can somewhat easily be satisfied for the segments of orthogonally drawn edges, it is harder for general polylines or splines."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_z),Hl),"Edge Label Spacing"),"The minimal distance to be preserved between a label and the edge it is associated with. Note that the placement of a label is influenced by the 'edgelabels.placement' option."),2),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,fle),Hl),"Edge Node Spacing"),"Spacing to be preserved between nodes and edges."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,hle),Hl),"Label Spacing"),"Determines the amount of space to be left between two labels of the same graph element."),0),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ble),Hl),"Label Node Spacing"),"Spacing to be preserved between labels and the border of node they are associated with. Note that the placement of a label is influenced by the 'nodelabels.placement' option."),5),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,dle),Hl),"Horizontal spacing between Label and Port"),"Horizontal spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,gle),Hl),"Vertical spacing between Label and Port"),"Vertical spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_w),Hl),"Node Spacing"),"The minimal distance to be preserved between each two nodes."),20),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ple),Hl),"Node Self Loop Spacing"),"Spacing to be preserved between a node and its self loops."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,wle),Hl),"Port Spacing"),"Spacing between pairs of ports of the same node."),10),To),mr),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,mle),Hl),"Individual Spacing"),"Allows to specify individual spacing values for graph elements that shall be different from the value specified for the element's parent."),Yl),eft),ui(ar,U(G(Dd,1),_e,175,0,[kf,_b,Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Kle),Hl),"Additional Port Space"),"Additional space around the sets of ports on each node side. For each side of a node, this option can reserve additional space before and after the ports on each side. For example, a top spacing of 20 makes sure that the first port on the western and eastern side is 20 units away from the northern border."),mwe),Yl),Nde),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,nV),xZe),"Layout Partition"),"Partition to which the node belongs. This requires Layout Partitioning to be active. Nodes with lower partition IDs will appear to the left of nodes with higher partition IDs (assuming a left-to-right layout direction)."),oc),$r),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),pr(t,nV,tV,Ilt),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,tV),xZe),"Layout Partitioning"),"Whether to activate partitioned layout. This will allow to group nodes through the Layout Partition option. a pair of nodes with different partition indices is then placed such that the node with lower index is placed to the left of the other node (with left-to-right layout direction). Depending on the layout algorithm, this may only be guaranteed to work if all nodes have a layout partition configured, or at least if edges that cross partitions are not part of a partition-crossing cycle."),rwe),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Cle),LZe),"Node Label Padding"),"Define padding for node labels that are placed inside of a node."),Qpe),Yl),Fde),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qE),LZe),"Node Label Placement"),"Hints for where node labels are to be placed; if empty, the node label's position is not modified."),Zpe),t3),ro),ui(ar,U(G(Dd,1),_e,175,0,[Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jle),QD),"Port Alignment"),"Defines the default port distribution for a node. May be overridden for each side individually."),cwe),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Ale),QD),"Port Alignment (North)"),"Defines how ports on the northern side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Ole),QD),"Port Alignment (South)"),"Defines how ports on the southern side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Dle),QD),"Port Alignment (West)"),"Defines how ports on the western side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,kle),QD),"Port Alignment (East)"),"Defines how ports on the eastern side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,gv),EV),"Node Size Constraints"),"What should be taken into account when calculating a node's size. Empty size constraints specify that a node's size is already fixed and should not be changed."),ewe),t3),tM),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,k2),EV),"Node Size Options"),"Options modifying the behavior of the size constraints set on a node. Each member of the set specifies something that should be taken into account when calculating node sizes. The empty set corresponds to no further modifications."),nwe),t3),Nwe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,R2),EV),"Node Size Minimum"),"The minimal size to which a node can be reduced."),twe),Yl),ir),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,eV),EV),"Fixed Graph Size"),"By default, the fixed layout provider will enlarge a graph until it is large enough to contain its children. If this option is set, it won't do so."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xle),Zz),"Edge Label Placement"),"Gives a hint on where to put edge labels."),Kpe),Ai),ywe),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,CD),Zz),"Inline Edge Labels"),"If true, an edge label is placed directly on its edge. May only apply to center edge labels. This kind of label placement is only advisable if the label's rendering is such that it is not crossed by its edge and thus stays legible."),!1),Dr),Qi),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,lzt),"font"),"Font Name"),"Font name used for a label."),T4),Re),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,kZe),"font"),"Font Size"),"Font size used for a label."),oc),$r),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Ble),SV),"Port Anchor Offset"),"The offset to the port position where connections shall be attached."),Yl),ir),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Lle),SV),"Port Index"),"The index of a port in the fixed order around a node. The order is assumed as clockwise, starting with the leftmost port on the top side. This option must be set if 'Port Constraints' is set to FIXED_ORDER and no specific positions are given for the ports. Additionally, the option 'Port Side' must be defined in this case."),oc),$r),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_le),SV),"Port Side"),"The side of a node on which a port is situated. This option must be set if 'Port Constraints' is set to FIXED_SIDE or FIXED_ORDER and no specific positions are given for the ports."),fwe),Ai),Gr),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,vle),SV),"Port Border Offset"),"The offset of ports on the node border. With a positive offset the port is moved outside of the node, while with a negative offset the port is moved towards the inside. An offset of 0 means that the port is placed directly on the node border, i.e. if the port side is north, the port's south border touches the nodes's north border; if the port side is east, the port's west border touches the nodes's east border; if the port side is south, the port's north border touches the node's south border; if the port side is west, the port's east border touches the node's west border."),To),mr),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,HE),wfe),"Port Label Placement"),"Decides on a placement method for port labels; if empty, the node label's position is not modified."),awe),t3),Cx),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ile),wfe),"Port Labels Next to Port"),"Use 'portLabels.placement': NEXT_TO_PORT_OF_POSSIBLE."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Tle),wfe),"Treat Port Labels as Group"),"If this option is true (default), the labels of a port will be treated as a group when it comes to centering them next to their port. If this option is false, only the first label will be centered next to the port, with the others being placed below. This only applies to labels of eastern and western ports and will have no effect if labels are not placed next to their port."),!0),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Sle),NZe),"Activate Inside Self Loops"),"Whether this node allows to route self loops inside of it instead of around it. If set to true, this will make the node a compound node if it isn't already, and will require the layout algorithm to support compound nodes with hierarchical ports."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ple),NZe),"Inside Self Loop"),"Whether a self loop should be routed inside a node instead of around that node."),!1),Dr),Qi),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,wz),"edge"),"Edge Thickness"),"The thickness of an edge. This is a hint on the line width used to draw an edge, possibly requiring more space to be reserved for it."),1),To),mr),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,RZe),"edge"),"Edge Type"),"The type of an edge. This is usually used for UML class diagrams, where associations must be handled differently from generalizations."),Vpe),Ai),Cwe),nt(kf)))),VS(t,new i2(BS(i_(n_(new Ay,kt),"Layered"),'The layer-based method was introduced by Sugiyama, Tagawa and Toda in 1981. It emphasizes the direction of edges by pointing as many edges as possible into the same direction. The nodes are arranged in layers, which are sometimes called "hierarchies", and then reordered such that the number of edge crossings is minimized. Afterwards, concrete coordinates are computed for the nodes and edge bend points.'))),VS(t,new i2(BS(i_(n_(new Ay,"org.eclipse.elk.orthogonal"),"Orthogonal"),`Orthogonal methods that follow the "topology-shape-metrics" approach by Batini, Nardelli and Tamassia '86. The first phase determines the topology of the drawing by applying a planarization technique, which results in a planar representation of the graph. The orthogonal shape is computed in the second phase, which aims at minimizing the number of edge bends, and is called orthogonalization. The third phase leads to concrete coordinates for nodes and edge bend points by applying a compaction method, thus defining the metrics.`))),VS(t,new i2(BS(i_(n_(new Ay,_u),"Force"),"Layout algorithms that follow physical analogies by simulating a system of attractive and repulsive forces. The first successful method of this kind was proposed by Eades in 1984."))),VS(t,new i2(BS(i_(n_(new Ay,"org.eclipse.elk.circle"),"Circle"),"Circular layout algorithms emphasize cycles or biconnected components of a graph by arranging them in circles. This is useful if a drawing is desired where such components are clearly grouped, or where cycles are shown as prominent OPTIONS of the graph."))),VS(t,new i2(BS(i_(n_(new Ay,sZe),"Tree"),"Specialized layout methods for trees, i.e. acyclic graphs. The regular structure of graphs that have no undirected cycles can be emphasized using an algorithm of this type."))),VS(t,new i2(BS(i_(n_(new Ay,"org.eclipse.elk.planar"),"Planar"),"Algorithms that require a planar or upward planar graph. Most of these algorithms are theoretically interesting, but not practically usable."))),VS(t,new i2(BS(i_(n_(new Ay,Cf),"Radial"),"Radial layout algorithms usually position the nodes of the graph on concentric circles."))),sYe((new TCe,t)),EYe((new ICe,t)),NWe((new jCe,t))};var GP,ylt,Npe,n3,_lt,Elt,Fpe,Slt,vx,Bpe,Aj,rp,$pe,VW,GW,Kpe,qpe,Hpe,zpe,Vpe,Gpe,qv,Upe,Plt,Oj,UW,yx,Wpe,Hv,Ype,Dj,Xpe,Jpe,Qpe,zv,Zpe,Eb,ewe,_x,Vv,twe,G1,nwe,Ex,kj,Sb,iwe,Mlt,rwe,Clt,Ilt,owe,cwe,WW,YW,XW,JW,swe,zs,UP,uwe,QW,ZW,Uw,awe,lwe,Gv,fwe,i3,Sx,eY,j4,Tlt,tY,jlt,Alt,hwe,Olt,dwe,Dlt,r3,gwe,Px,bwe,pwe,Pb,klt,wwe,mwe,vwe;S(ua,"CoreOptions",684),y(103,22,{3:1,35:1,22:1,103:1},dC);var Vh,ga,Va,ih,Gh,WP=hn(ua,oae,103,bn,kMt,QEt),Rlt;y(272,22,{3:1,35:1,22:1,272:1},jF);var A4,Ww,O4,ywe=hn(ua,"EdgeLabelPlacement",272,bn,dPt,ZEt),xlt;y(218,22,{3:1,35:1,22:1,218:1},A9);var D4,Rj,o3,nY,iY=hn(ua,"EdgeRouting",218,bn,oMt,e4t),Llt;y(312,22,{3:1,35:1,22:1,312:1},r5);var _we,Ewe,Swe,Pwe,rY,Mwe,Cwe=hn(ua,"EdgeType",312,bn,vCt,t4t),Nlt;y(977,1,ca,TCe),s.Qe=function(t){sYe(t)};var Iwe,Twe,jwe,Awe,Flt,Owe,YP;S(ua,"FixedLayouterOptions",977),y(978,1,{},a6e),s.$e=function(){var t;return t=new n6e,t},s._e=function(t){},S(ua,"FixedLayouterOptions/FixedFactory",978),y(334,22,{3:1,35:1,22:1,334:1},AF);var kd,Mx,XP,Dwe=hn(ua,"HierarchyHandling",334,bn,hPt,n4t),Blt;y(285,22,{3:1,35:1,22:1,285:1},O9);var rh,U1,xj,Lj,$lt=hn(ua,"LabelSide",285,bn,rMt,i4t),Klt;y(93,22,{3:1,35:1,22:1,93:1},Mm);var Uh,Ga,ba,Ua,Mu,Wa,pa,oh,Ya,ro=hn(ua,"NodeLabelPlacement",93,bn,EIt,r4t),qlt;y(249,22,{3:1,35:1,22:1,249:1},gC);var kwe,JP,W1,Rwe,Nj,QP=hn(ua,"PortAlignment",249,bn,RMt,o4t),Hlt;y(98,22,{3:1,35:1,22:1,98:1},o5);var Mb,Ic,ch,k4,Xl,Y1,xwe=hn(ua,"PortConstraints",98,bn,nCt,c4t),zlt;y(273,22,{3:1,35:1,22:1,273:1},c5);var ZP,eM,Wh,Fj,X1,c3,Cx=hn(ua,"PortLabelPlacement",273,bn,mCt,s4t),Vlt;y(61,22,{3:1,35:1,22:1,61:1},bC);var jt,_t,Uu,Wu,os,Vc,Jl,Xa,Ds,Ss,Tc,ks,cs,ss,Ja,Cu,Iu,wa,Yt,Vo,Mt,Gr=hn(ua,"PortSide",61,bn,AMt,l4t),Glt;y(981,1,ca,jCe),s.Qe=function(t){NWe(t)};var Ult,Wlt,Lwe,Ylt,Xlt;S(ua,"RandomLayouterOptions",981),y(982,1,{},l6e),s.$e=function(){var t;return t=new d6e,t},s._e=function(t){},S(ua,"RandomLayouterOptions/RandomFactory",982),y(374,22,{3:1,35:1,22:1,374:1},D9);var Yw,Bj,$j,Cb,tM=hn(ua,"SizeConstraint",374,bn,iMt,u4t),Jlt;y(259,22,{3:1,35:1,22:1,259:1},Cm);var Kj,Ix,R4,oY,qj,nM,Tx,jx,Ax,Nwe=hn(ua,"SizeOptions",259,bn,jIt,a4t),Qlt;y(370,1,{1949:1},Z3),s.b=!1,s.c=0,s.d=-1,s.e=null,s.f=null,s.g=-1,s.j=!1,s.k=!1,s.n=!1,s.o=0,s.q=0,s.r=0,S(fc,"BasicProgressMonitor",370),y(972,209,rb,r6e),s.Ze=function(t,n){var i,r,o,u,a,l,d,p,v;Wt(n,"Box layout",2),o=WM(Te(Ke(t,(N7(),mlt)))),u=c(Ke(t,wlt),116),i=Be(Fe(Ke(t,Dpe))),r=Be(Fe(Ke(t,kpe))),c(Ke(t,KW),311).g===0?(a=(l=new ps((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a)),st(),cr(l,new vje(r)),l),d=Qce(t),p=Te(Ke(t,Ope)),(p==null||(yt(p),p<=0))&&(p=1.3),v=gHt(a,o,u,d.a,d.b,i,(yt(p),p)),k0(t,v.a,v.b,!1,!0)):lKt(t,o,u,i),qt(n)},S(fc,"BoxLayoutProvider",972),y(973,1,Zn,vje),s.ue=function(t,n){return DLt(this,c(t,33),c(n,33))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},s.a=!1,S(fc,"BoxLayoutProvider/1",973),y(157,1,{157:1},TO,KDe),s.Ib=function(){return this.c?Jse(this.c):C1(this.b)},S(fc,"BoxLayoutProvider/Group",157),y(311,22,{3:1,35:1,22:1,311:1},k9);var Fwe,Bwe,$we,cY,Kwe=hn(fc,"BoxLayoutProvider/PackingMode",311,bn,cMt,f4t),Zlt;y(974,1,Zn,o6e),s.ue=function(t,n){return x5t(c(t,157),c(n,157))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(fc,"BoxLayoutProvider/lambda$0$Type",974),y(975,1,Zn,c6e),s.ue=function(t,n){return T5t(c(t,157),c(n,157))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(fc,"BoxLayoutProvider/lambda$1$Type",975),y(976,1,Zn,s6e),s.ue=function(t,n){return j5t(c(t,157),c(n,157))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(fc,"BoxLayoutProvider/lambda$2$Type",976),y(1365,1,{831:1},u6e),s.qg=function(t,n){return g9(),!Q(n,160)||J9e((d2(),c(t,160)),n)},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$0$Type",1365),y(1366,1,Rt,yje),s.td=function(t){vjt(this.a,c(t,146))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$1$Type",1366),y(1367,1,Rt,i6e),s.td=function(t){c(t,94),g9()},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$2$Type",1367),y(1371,1,Rt,_je),s.td=function(t){zIt(this.a,c(t,94))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$3$Type",1371),y(1369,1,Rn,NOe),s.Mb=function(t){return ojt(this.a,this.b,c(t,146))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$4$Type",1369),y(1368,1,Rn,FOe),s.Mb=function(t){return E3t(this.a,this.b,c(t,831))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$5$Type",1368),y(1370,1,Rt,BOe),s.td=function(t){ESt(this.a,this.b,c(t,146))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$6$Type",1370),y(935,1,{},t6e),s.Kb=function(t){return B7e(t)},s.Fb=function(t){return this===t},S(fc,"ElkUtil/lambda$0$Type",935),y(936,1,Rt,$Oe),s.td=function(t){RRt(this.a,this.b,c(t,79))},s.a=0,s.b=0,S(fc,"ElkUtil/lambda$1$Type",936),y(937,1,Rt,KOe),s.td=function(t){Rvt(this.a,this.b,c(t,202))},s.a=0,s.b=0,S(fc,"ElkUtil/lambda$2$Type",937),y(938,1,Rt,qOe),s.td=function(t){M2t(this.a,this.b,c(t,137))},s.a=0,s.b=0,S(fc,"ElkUtil/lambda$3$Type",938),y(939,1,Rt,Eje),s.td=function(t){F4t(this.a,c(t,469))},S(fc,"ElkUtil/lambda$4$Type",939),y(342,1,{35:1,342:1},lvt),s.wd=function(t){return Z2t(this,c(t,236))},s.Fb=function(t){var n;return Q(t,342)?(n=c(t,342),this.a==n.a):!1},s.Hb=function(){return xi(this.a)},s.Ib=function(){return this.a+" (exclusive)"},s.a=0,S(fc,"ExclusiveBounds/ExclusiveLowerBound",342),y(1138,209,rb,n6e),s.Ze=function(t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et;for(Wt(n,"Fixed Layout",1),u=c(Ke(t,(kn(),qpe)),218),A=0,D=0,ne=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));ne.e!=ne.i.gc();){for(Y=c(Vt(ne),33),et=c(Ke(Y,(QO(),YP)),8),et&&(Cl(Y,et.a,et.b),c(Ke(Y,Twe),174).Hc((ou(),Yw))&&(L=c(Ke(Y,Awe),8),L.a>0&&L.b>0&&k0(Y,L.a,L.b,!0,!0))),A=g.Math.max(A,Y.i+Y.g),D=g.Math.max(D,Y.j+Y.f),p=new $t((!Y.n&&(Y.n=new Me(Lo,Y,1,7)),Y.n));p.e!=p.i.gc();)l=c(Vt(p),137),et=c(Ke(l,YP),8),et&&Cl(l,et.a,et.b),A=g.Math.max(A,Y.i+l.i+l.g),D=g.Math.max(D,Y.j+l.j+l.f);for(Pe=new $t((!Y.c&&(Y.c=new Me(Vs,Y,9,9)),Y.c));Pe.e!=Pe.i.gc();)for(be=c(Vt(Pe),118),et=c(Ke(be,YP),8),et&&Cl(be,et.a,et.b),Ae=Y.i+be.i,Ve=Y.j+be.j,A=g.Math.max(A,Ae+be.g),D=g.Math.max(D,Ve+be.f),d=new $t((!be.n&&(be.n=new Me(Lo,be,1,7)),be.n));d.e!=d.i.gc();)l=c(Vt(d),137),et=c(Ke(l,YP),8),et&&Cl(l,et.a,et.b),A=g.Math.max(A,Ae+l.i+l.g),D=g.Math.max(D,Ve+l.j+l.f);for(o=new Kt(Ht(Fh(Y).a.Kc(),new j));dn(o);)i=c(rn(o),79),v=QXe(i),A=g.Math.max(A,v.a),D=g.Math.max(D,v.b);for(r=new Kt(Ht(XI(Y).a.Kc(),new j));dn(r);)i=c(rn(r),79),yi(Uf(i))!=t&&(v=QXe(i),A=g.Math.max(A,v.a),D=g.Math.max(D,v.b))}if(u==(Lh(),D4))for(ie=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));ie.e!=ie.i.gc();)for(Y=c(Vt(ie),33),r=new Kt(Ht(Fh(Y).a.Kc(),new j));dn(r);)i=c(rn(r),79),a=OBt(i),a.b==0?ao(i,Hv,null):ao(i,Hv,a);Be(Fe(Ke(t,(QO(),jwe))))||(ue=c(Ke(t,Flt),116),z=A+ue.b+ue.c,N=D+ue.d+ue.a,k0(t,z,N,!0,!0)),qt(n)},S(fc,"FixedLayoutProvider",1138),y(373,134,{3:1,414:1,373:1,94:1,134:1},yN,b$e),s.Jf=function(t){var n,i,r,o,u,a,l,d,p;if(t)try{for(d=gw(t,";,;"),u=d,a=0,l=u.length;a>16&Ni|n^r<<16},s.Kc=function(){return new Sje(this)},s.Ib=function(){return this.a==null&&this.b==null?"pair(null,null)":this.a==null?"pair(null,"+Ro(this.b)+")":this.b==null?"pair("+Ro(this.a)+",null)":"pair("+Ro(this.a)+","+Ro(this.b)+")"},S(fc,"Pair",46),y(983,1,dr,Sje),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return!this.c&&(!this.b&&this.a.a!=null||this.a.b!=null)},s.Pb=function(){if(!this.c&&!this.b&&this.a.a!=null)return this.b=!0,this.a.a;if(!this.c&&this.a.b!=null)return this.c=!0,this.a.b;throw V(new tc)},s.Qb=function(){throw this.c&&this.a.b!=null?this.a.b=null:this.b&&this.a.a!=null&&(this.a.a=null),V(new hs)},s.b=!1,s.c=!1,S(fc,"Pair/1",983),y(448,1,{448:1},Zxe),s.Fb=function(t){return wc(this.a,c(t,448).a)&&wc(this.c,c(t,448).c)&&wc(this.d,c(t,448).d)&&wc(this.b,c(t,448).b)},s.Hb=function(){return ZO(U(G(xt,1),xe,1,5,[this.a,this.c,this.d,this.b]))},s.Ib=function(){return"("+this.a+zr+this.c+zr+this.d+zr+this.b+")"},S(fc,"Quadruple",448),y(1126,209,rb,d6e),s.Ze=function(t,n){var i,r,o,u,a;if(Wt(n,"Random Layout",1),(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i==0){qt(n);return}u=c(Ke(t,(Toe(),Ylt)),19),u&&u.a!=0?o=new cO(u.a):o=new jK,i=WM(Te(Ke(t,Ult))),a=WM(Te(Ke(t,Xlt))),r=c(Ke(t,Wlt),116),Vqt(t,o,i,a,r),qt(n)},S(fc,"RandomLayoutProvider",1126);var ift;y(553,1,{}),s.qf=function(){return new $e(this.f.i,this.f.j)},s.We=function(t){return MLe(t,(kn(),zs))?Ke(this.f,rft):Ke(this.f,t)},s.rf=function(){return new $e(this.f.g,this.f.f)},s.sf=function(){return this.g},s.Xe=function(t){return Fg(this.f,t)},s.tf=function(t){es(this.f,t.a),ts(this.f,t.b)},s.uf=function(t){p0(this.f,t.a),b0(this.f,t.b)},s.vf=function(t){this.g=t},s.g=0;var rft;S(U6,"ElkGraphAdapters/AbstractElkGraphElementAdapter",553),y(554,1,{839:1},qA),s.wf=function(){var t,n;if(!this.b)for(this.b=nO(R8(this.a).i),n=new $t(R8(this.a));n.e!=n.i.gc();)t=c(Vt(n),137),Ee(this.b,new GN(t));return this.b},s.b=null,S(U6,"ElkGraphAdapters/ElkEdgeAdapter",554),y(301,553,{},Ip),s.xf=function(){return Zze(this)},s.a=null,S(U6,"ElkGraphAdapters/ElkGraphAdapter",301),y(630,553,{181:1},GN),S(U6,"ElkGraphAdapters/ElkLabelAdapter",630),y(629,553,{680:1},VF),s.wf=function(){return U8t(this)},s.Af=function(){var t;return t=c(Ke(this.f,(kn(),Dj)),142),!t&&(t=new OS),t},s.Cf=function(){return W8t(this)},s.Ef=function(t){var n;n=new cB(t),ao(this.f,(kn(),Dj),n)},s.Ff=function(t){ao(this.f,(kn(),Sb),new Ste(t))},s.yf=function(){return this.d},s.zf=function(){var t,n;if(!this.a)for(this.a=new Se,n=new Kt(Ht(XI(c(this.f,33)).a.Kc(),new j));dn(n);)t=c(rn(n),79),Ee(this.a,new qA(t));return this.a},s.Bf=function(){var t,n;if(!this.c)for(this.c=new Se,n=new Kt(Ht(Fh(c(this.f,33)).a.Kc(),new j));dn(n);)t=c(rn(n),79),Ee(this.c,new qA(t));return this.c},s.Df=function(){return $8(c(this.f,33)).i!=0||Be(Fe(c(this.f,33).We((kn(),Oj))))},s.Gf=function(){FCt(this,(Ap(),ift))},s.a=null,s.b=null,s.c=null,s.d=null,s.e=null,S(U6,"ElkGraphAdapters/ElkNodeAdapter",629),y(1266,553,{838:1},Qje),s.wf=function(){return nOt(this)},s.zf=function(){var t,n;if(!this.a)for(this.a=Ff(c(this.f,118).xg().i),n=new $t(c(this.f,118).xg());n.e!=n.i.gc();)t=c(Vt(n),79),Ee(this.a,new qA(t));return this.a},s.Bf=function(){var t,n;if(!this.c)for(this.c=Ff(c(this.f,118).yg().i),n=new $t(c(this.f,118).yg());n.e!=n.i.gc();)t=c(Vt(n),79),Ee(this.c,new qA(t));return this.c},s.Hf=function(){return c(c(this.f,118).We((kn(),Gv)),61)},s.If=function(){var t,n,i,r,o,u,a,l;for(r=jl(c(this.f,118)),i=new $t(c(this.f,118).yg());i.e!=i.i.gc();)for(t=c(Vt(i),79),l=new $t((!t.c&&(t.c=new dt(Ut,t,5,8)),t.c));l.e!=l.i.gc();){if(a=c(Vt(l),82),Jp(Co(a),r))return!0;if(Co(a)==r&&Be(Fe(Ke(t,(kn(),UW)))))return!0}for(n=new $t(c(this.f,118).xg());n.e!=n.i.gc();)for(t=c(Vt(n),79),u=new $t((!t.b&&(t.b=new dt(Ut,t,4,7)),t.b));u.e!=u.i.gc();)if(o=c(Vt(u),82),Jp(Co(o),r))return!0;return!1},s.a=null,s.b=null,s.c=null,S(U6,"ElkGraphAdapters/ElkPortAdapter",1266),y(1267,1,Zn,g6e),s.ue=function(t,n){return PFt(c(t,118),c(n,118))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(U6,"ElkGraphAdapters/PortComparator",1267);var J1=pi(Hu,"EObject"),x4=pi(mv,$Ze),ma=pi(mv,KZe),Hj=pi(mv,qZe),zj=pi(mv,"ElkShape"),Ut=pi(mv,HZe),rr=pi(mv,mfe),mi=pi(mv,zZe),Vj=pi(Hu,VZe),iM=pi(Hu,"EFactory"),oft,sY=pi(Hu,GZe),ml=pi(Hu,"EPackage"),lr,cft,sft,Vwe,Ox,uft,Gwe,Uwe,Wwe,Q1,aft,lft,Lo=pi(mv,vfe),Ei=pi(mv,yfe),Vs=pi(mv,_fe);y(90,1,UZe),s.Jg=function(){return this.Kg(),null},s.Kg=function(){return null},s.Lg=function(){return this.Kg(),!1},s.Mg=function(){return!1},s.Ng=function(t){Bn(this,t)},S(F2,"BasicNotifierImpl",90),y(97,90,JZe),s.nh=function(){return Qs(this)},s.Og=function(t,n){return t},s.Pg=function(){throw V(new sn)},s.Qg=function(t){var n;return n=Xr(c(at(this.Tg(),this.Vg()),18)),this.eh().ih(this,n.n,n.f,t)},s.Rg=function(t,n){throw V(new sn)},s.Sg=function(t,n,i){return yu(this,t,n,i)},s.Tg=function(){var t;return this.Pg()&&(t=this.Pg().ck(),t)?t:this.zh()},s.Ug=function(){return Dq(this)},s.Vg=function(){throw V(new sn)},s.Wg=function(){var t,n;return n=this.ph().dk(),!n&&this.Pg().ik(n=(GS(),t=$ne(wf(this.Tg())),t==null?bY:new mC(this,t))),n},s.Xg=function(t,n){return t},s.Yg=function(t){var n;return n=t.Gj(),n?t.aj():di(this.Tg(),t)},s.Zg=function(){var t;return t=this.Pg(),t?t.fk():null},s.$g=function(){return this.Pg()?this.Pg().ck():null},s._g=function(t,n,i){return _7(this,t,n,i)},s.ah=function(t){return x_(this,t)},s.bh=function(t,n){return S$(this,t,n)},s.dh=function(){var t;return t=this.Pg(),!!t&&t.gk()},s.eh=function(){throw V(new sn)},s.fh=function(){return g7(this)},s.gh=function(t,n,i,r){return w2(this,t,n,r)},s.hh=function(t,n,i){var r;return r=c(at(this.Tg(),n),66),r.Nj().Qj(this,this.yh(),n-this.Ah(),t,i)},s.ih=function(t,n,i,r){return z8(this,t,n,r)},s.jh=function(t,n,i){var r;return r=c(at(this.Tg(),n),66),r.Nj().Rj(this,this.yh(),n-this.Ah(),t,i)},s.kh=function(){return!!this.Pg()&&!!this.Pg().ek()},s.lh=function(t){return HK(this,t)},s.mh=function(t){return qLe(this,t)},s.oh=function(t){return dXe(this,t)},s.ph=function(){throw V(new sn)},s.qh=function(){return this.Pg()?this.Pg().ek():null},s.rh=function(){return g7(this)},s.sh=function(t,n){Iq(this,t,n)},s.th=function(t){this.ph().hk(t)},s.uh=function(t){this.ph().kk(t)},s.vh=function(t){this.ph().jk(t)},s.wh=function(t,n){var i,r,o,u;return u=this.Zg(),u&&t&&(n=Fr(u.Vk(),this,n),u.Zk(this)),r=this.eh(),r&&((Wq(this,this.eh(),this.Vg()).Bb&Vr)!=0?(o=r.fh(),o&&(t?!u&&o.Zk(this):o.Yk(this))):(n=(i=this.Vg(),i>=0?this.Qg(n):this.eh().ih(this,-1-i,null,n)),n=this.Sg(null,-1,n))),this.uh(t),n},s.xh=function(t){var n,i,r,o,u,a,l,d;if(i=this.Tg(),u=di(i,t),n=this.Ah(),u>=n)return c(t,66).Nj().Uj(this,this.yh(),u-n);if(u<=-1)if(a=uv((vs(),Ir),i,t),a){if(Wr(),c(a,66).Oj()||(a=r2(wo(Ir,a))),o=(r=this.Yg(a),c(r>=0?this._g(r,!0,!0):j0(this,a,!0),153)),d=a.Zj(),d>1||d==-1)return c(c(o,215).hl(t,!1),76)}else throw V(new St(x1+t.ne()+PV));else if(t.$j())return r=this.Yg(t),c(r>=0?this._g(r,!1,!0):j0(this,t,!1),76);return l=new u7e(this,t),l},s.yh=function(){return Kie(this)},s.zh=function(){return(g1(),wt).S},s.Ah=function(){return Ft(this.zh())},s.Bh=function(t){Eq(this,t)},s.Ib=function(){return Ba(this)},S(mt,"BasicEObjectImpl",97);var fft;y(114,97,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1}),s.Ch=function(t){var n;return n=qie(this),n[t]},s.Dh=function(t,n){var i;i=qie(this),vi(i,t,n)},s.Eh=function(t){var n;n=qie(this),vi(n,t,null)},s.Jg=function(){return c(vt(this,4),126)},s.Kg=function(){throw V(new sn)},s.Lg=function(){return(this.Db&4)!=0},s.Pg=function(){throw V(new sn)},s.Fh=function(t){p2(this,2,t)},s.Rg=function(t,n){this.Db=n<<16|this.Db&255,this.Fh(t)},s.Tg=function(){return Xc(this)},s.Vg=function(){return this.Db>>16},s.Wg=function(){var t,n;return GS(),n=$ne(wf((t=c(vt(this,16),26),t||this.zh()))),n==null?bY:new mC(this,n)},s.Mg=function(){return(this.Db&1)==0},s.Zg=function(){return c(vt(this,128),1935)},s.$g=function(){return c(vt(this,16),26)},s.dh=function(){return(this.Db&32)!=0},s.eh=function(){return c(vt(this,2),49)},s.kh=function(){return(this.Db&64)!=0},s.ph=function(){throw V(new sn)},s.qh=function(){return c(vt(this,64),281)},s.th=function(t){p2(this,16,t)},s.uh=function(t){p2(this,128,t)},s.vh=function(t){p2(this,64,t)},s.yh=function(){return $c(this)},s.Db=0,S(mt,"MinimalEObjectImpl",114),y(115,114,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s.Fh=function(t){this.Cb=t},s.eh=function(){return this.Cb},S(mt,"MinimalEObjectImpl/Container",115),y(1985,115,{105:1,413:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return Zoe(this,t,n,i)},s.jh=function(t,n,i){return Kce(this,t,n,i)},s.lh=function(t){return Qne(this,t)},s.sh=function(t,n){Fre(this,t,n)},s.zh=function(){return xc(),lft},s.Bh=function(t){Ire(this,t)},s.Ve=function(){return yze(this)},s.We=function(t){return Ke(this,t)},s.Xe=function(t){return Fg(this,t)},s.Ye=function(t,n){return ao(this,t,n)},S(sb,"EMapPropertyHolderImpl",1985),y(567,115,{105:1,469:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},OA),s._g=function(t,n,i){switch(t){case 0:return this.a;case 1:return this.b}return _7(this,t,n,i)},s.lh=function(t){switch(t){case 0:return this.a!=0;case 1:return this.b!=0}return HK(this,t)},s.sh=function(t,n){switch(t){case 0:jO(this,ge(Te(n)));return;case 1:AO(this,ge(Te(n)));return}Iq(this,t,n)},s.zh=function(){return xc(),cft},s.Bh=function(t){switch(t){case 0:jO(this,0);return;case 1:AO(this,0);return}Eq(this,t)},s.Ib=function(){var t;return(this.Db&64)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (x: ",Sm(t,this.a),t.a+=", y: ",Sm(t,this.b),t.a+=")",t.a)},s.a=0,s.b=0,S(sb,"ElkBendPointImpl",567),y(723,1985,{105:1,413:1,160:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return ioe(this,t,n,i)},s.hh=function(t,n,i){return pq(this,t,n,i)},s.jh=function(t,n,i){return eK(this,t,n,i)},s.lh=function(t){return vre(this,t)},s.sh=function(t,n){mce(this,t,n)},s.zh=function(){return xc(),uft},s.Bh=function(t){Zre(this,t)},s.zg=function(){return this.k},s.Ag=function(){return R8(this)},s.Ib=function(){return IK(this)},s.k=null,S(sb,"ElkGraphElementImpl",723),y(724,723,{105:1,413:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return doe(this,t,n,i)},s.lh=function(t){return yoe(this,t)},s.sh=function(t,n){vce(this,t,n)},s.zh=function(){return xc(),aft},s.Bh=function(t){Moe(this,t)},s.Bg=function(){return this.f},s.Cg=function(){return this.g},s.Dg=function(){return this.i},s.Eg=function(){return this.j},s.Fg=function(t,n){K9(this,t,n)},s.Gg=function(t,n){Cl(this,t,n)},s.Hg=function(t){es(this,t)},s.Ig=function(t){ts(this,t)},s.Ib=function(){return _q(this)},s.f=0,s.g=0,s.i=0,s.j=0,S(sb,"ElkShapeImpl",724),y(725,724,{105:1,413:1,82:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return Uoe(this,t,n,i)},s.hh=function(t,n,i){return hce(this,t,n,i)},s.jh=function(t,n,i){return dce(this,t,n,i)},s.lh=function(t){return Lre(this,t)},s.sh=function(t,n){Ese(this,t,n)},s.zh=function(){return xc(),sft},s.Bh=function(t){Boe(this,t)},s.xg=function(){return!this.d&&(this.d=new dt(rr,this,8,5)),this.d},s.yg=function(){return!this.e&&(this.e=new dt(rr,this,7,4)),this.e},S(sb,"ElkConnectableShapeImpl",725),y(352,723,{105:1,413:1,79:1,160:1,352:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},$J),s.Qg=function(t){return uce(this,t)},s._g=function(t,n,i){switch(t){case 3:return KC(this);case 4:return!this.b&&(this.b=new dt(Ut,this,4,7)),this.b;case 5:return!this.c&&(this.c=new dt(Ut,this,5,8)),this.c;case 6:return!this.a&&(this.a=new Me(mi,this,6,6)),this.a;case 7:return Pt(),!this.b&&(this.b=new dt(Ut,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i<=1));case 8:return Pt(),!!b6(this);case 9:return Pt(),!!T0(this);case 10:return Pt(),!this.b&&(this.b=new dt(Ut,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i!=0)}return ioe(this,t,n,i)},s.hh=function(t,n,i){var r;switch(n){case 3:return this.Cb&&(i=(r=this.Db>>16,r>=0?uce(this,i):this.Cb.ih(this,-1-r,null,i))),tte(this,c(t,33),i);case 4:return!this.b&&(this.b=new dt(Ut,this,4,7)),Rc(this.b,t,i);case 5:return!this.c&&(this.c=new dt(Ut,this,5,8)),Rc(this.c,t,i);case 6:return!this.a&&(this.a=new Me(mi,this,6,6)),Rc(this.a,t,i)}return pq(this,t,n,i)},s.jh=function(t,n,i){switch(n){case 3:return tte(this,null,i);case 4:return!this.b&&(this.b=new dt(Ut,this,4,7)),Fr(this.b,t,i);case 5:return!this.c&&(this.c=new dt(Ut,this,5,8)),Fr(this.c,t,i);case 6:return!this.a&&(this.a=new Me(mi,this,6,6)),Fr(this.a,t,i)}return eK(this,t,n,i)},s.lh=function(t){switch(t){case 3:return!!KC(this);case 4:return!!this.b&&this.b.i!=0;case 5:return!!this.c&&this.c.i!=0;case 6:return!!this.a&&this.a.i!=0;case 7:return!this.b&&(this.b=new dt(Ut,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i<=1));case 8:return b6(this);case 9:return T0(this);case 10:return!this.b&&(this.b=new dt(Ut,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i!=0)}return vre(this,t)},s.sh=function(t,n){switch(t){case 3:Fq(this,c(n,33));return;case 4:!this.b&&(this.b=new dt(Ut,this,4,7)),Xt(this.b),!this.b&&(this.b=new dt(Ut,this,4,7)),Mi(this.b,c(n,14));return;case 5:!this.c&&(this.c=new dt(Ut,this,5,8)),Xt(this.c),!this.c&&(this.c=new dt(Ut,this,5,8)),Mi(this.c,c(n,14));return;case 6:!this.a&&(this.a=new Me(mi,this,6,6)),Xt(this.a),!this.a&&(this.a=new Me(mi,this,6,6)),Mi(this.a,c(n,14));return}mce(this,t,n)},s.zh=function(){return xc(),Vwe},s.Bh=function(t){switch(t){case 3:Fq(this,null);return;case 4:!this.b&&(this.b=new dt(Ut,this,4,7)),Xt(this.b);return;case 5:!this.c&&(this.c=new dt(Ut,this,5,8)),Xt(this.c);return;case 6:!this.a&&(this.a=new Me(mi,this,6,6)),Xt(this.a);return}Zre(this,t)},s.Ib=function(){return QYe(this)},S(sb,"ElkEdgeImpl",352),y(439,1985,{105:1,413:1,202:1,439:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},DA),s.Qg=function(t){return rce(this,t)},s._g=function(t,n,i){switch(t){case 1:return this.j;case 2:return this.k;case 3:return this.b;case 4:return this.c;case 5:return!this.a&&(this.a=new qi(ma,this,5)),this.a;case 6:return BLe(this);case 7:return n?WK(this):this.i;case 8:return n?UK(this):this.f;case 9:return!this.g&&(this.g=new dt(mi,this,9,10)),this.g;case 10:return!this.e&&(this.e=new dt(mi,this,10,9)),this.e;case 11:return this.d}return Zoe(this,t,n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 6:return this.Cb&&(i=(o=this.Db>>16,o>=0?rce(this,i):this.Cb.ih(this,-1-o,null,i))),nte(this,c(t,79),i);case 9:return!this.g&&(this.g=new dt(mi,this,9,10)),Rc(this.g,t,i);case 10:return!this.e&&(this.e=new dt(mi,this,10,9)),Rc(this.e,t,i)}return u=c(at((r=c(vt(this,16),26),r||(xc(),Ox)),n),66),u.Nj().Qj(this,$c(this),n-Ft((xc(),Ox)),t,i)},s.jh=function(t,n,i){switch(n){case 5:return!this.a&&(this.a=new qi(ma,this,5)),Fr(this.a,t,i);case 6:return nte(this,null,i);case 9:return!this.g&&(this.g=new dt(mi,this,9,10)),Fr(this.g,t,i);case 10:return!this.e&&(this.e=new dt(mi,this,10,9)),Fr(this.e,t,i)}return Kce(this,t,n,i)},s.lh=function(t){switch(t){case 1:return this.j!=0;case 2:return this.k!=0;case 3:return this.b!=0;case 4:return this.c!=0;case 5:return!!this.a&&this.a.i!=0;case 6:return!!BLe(this);case 7:return!!this.i;case 8:return!!this.f;case 9:return!!this.g&&this.g.i!=0;case 10:return!!this.e&&this.e.i!=0;case 11:return this.d!=null}return Qne(this,t)},s.sh=function(t,n){switch(t){case 1:K_(this,ge(Te(n)));return;case 2:H_(this,ge(Te(n)));return;case 3:$_(this,ge(Te(n)));return;case 4:q_(this,ge(Te(n)));return;case 5:!this.a&&(this.a=new qi(ma,this,5)),Xt(this.a),!this.a&&(this.a=new qi(ma,this,5)),Mi(this.a,c(n,14));return;case 6:ZUe(this,c(n,79));return;case 7:xO(this,c(n,82));return;case 8:RO(this,c(n,82));return;case 9:!this.g&&(this.g=new dt(mi,this,9,10)),Xt(this.g),!this.g&&(this.g=new dt(mi,this,9,10)),Mi(this.g,c(n,14));return;case 10:!this.e&&(this.e=new dt(mi,this,10,9)),Xt(this.e),!this.e&&(this.e=new dt(mi,this,10,9)),Mi(this.e,c(n,14));return;case 11:lre(this,ln(n));return}Fre(this,t,n)},s.zh=function(){return xc(),Ox},s.Bh=function(t){switch(t){case 1:K_(this,0);return;case 2:H_(this,0);return;case 3:$_(this,0);return;case 4:q_(this,0);return;case 5:!this.a&&(this.a=new qi(ma,this,5)),Xt(this.a);return;case 6:ZUe(this,null);return;case 7:xO(this,null);return;case 8:RO(this,null);return;case 9:!this.g&&(this.g=new dt(mi,this,9,10)),Xt(this.g);return;case 10:!this.e&&(this.e=new dt(mi,this,10,9)),Xt(this.e);return;case 11:lre(this,null);return}Ire(this,t)},s.Ib=function(){return wUe(this)},s.b=0,s.c=0,s.d=null,s.j=0,s.k=0,S(sb,"ElkEdgeSectionImpl",439),y(150,115,{105:1,92:1,90:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),s._g=function(t,n,i){var r;return t==0?(!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab):Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.hh=function(t,n,i){var r,o;return n==0?(!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i)):(o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Qj(this,$c(this),n-Ft(this.zh()),t,i))},s.jh=function(t,n,i){var r,o;return n==0?(!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i)):(o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i))},s.lh=function(t){var n;return t==0?!!this.Ab&&this.Ab.i!=0:xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.oh=function(t){return Aue(this,t)},s.sh=function(t,n){var i;if(t===0){!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.uh=function(t){p2(this,128,t)},s.zh=function(){return ot(),jft},s.Bh=function(t){var n;if(t===0){!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.Gh=function(){this.Bb|=1},s.Hh=function(t){return y6(this,t)},s.Bb=0,S(mt,"EModelElementImpl",150),y(704,150,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},GJ),s.Ih=function(t,n){return TXe(this,t,n)},s.Jh=function(t){var n,i,r,o,u;if(this.a!=bu(t)||(t.Bb&256)!=0)throw V(new St(CV+t.zb+K0));for(r=So(t);dc(r.a).i!=0;){if(i=c(sT(r,0,(n=c(ee(dc(r.a),0),87),u=n.c,Q(u,88)?c(u,26):(ot(),Ea))),26),I0(i))return o=bu(i).Nh().Jh(i),c(o,49).th(t),o;r=So(i)}return(t.D!=null?t.D:t.B)=="java.util.Map$Entry"?new SRe(t):new qte(t)},s.Kh=function(t,n){return R0(this,t,n)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.a}return Nu(this,t-Ft((ot(),ng)),at((r=c(vt(this,16),26),r||ng),t),n,i)},s.hh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 1:return this.a&&(i=c(this.a,49).ih(this,4,ml,i)),Jre(this,c(t,235),i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),ng)),n),66),o.Nj().Qj(this,$c(this),n-Ft((ot(),ng)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 1:return Jre(this,null,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),ng)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),ng)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return!!this.a}return xu(this,t-Ft((ot(),ng)),at((n=c(vt(this,16),26),n||ng),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:ZVe(this,c(n,235));return}qu(this,t-Ft((ot(),ng)),at((i=c(vt(this,16),26),i||ng),t),n)},s.zh=function(){return ot(),ng},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:ZVe(this,null);return}$u(this,t-Ft((ot(),ng)),at((n=c(vt(this,16),26),n||ng),t))};var rM,Ywe,hft;S(mt,"EFactoryImpl",704),y(Ka,704,{105:1,2014:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},p6e),s.Ih=function(t,n){switch(t.yj()){case 12:return c(n,146).tg();case 13:return Ro(n);default:throw V(new St(UE+t.ne()+K0))}},s.Jh=function(t){var n,i,r,o,u,a,l,d;switch(t.G==-1&&(t.G=(n=bu(t),n?wd(n.Mh(),t):-1)),t.G){case 4:return u=new KJ,u;case 6:return a=new VQ,a;case 7:return l=new GQ,l;case 8:return r=new $J,r;case 9:return i=new OA,i;case 10:return o=new DA,o;case 11:return d=new w6e,d;default:throw V(new St(CV+t.zb+K0))}},s.Kh=function(t,n){switch(t.yj()){case 13:case 12:return null;default:throw V(new St(UE+t.ne()+K0))}},S(sb,"ElkGraphFactoryImpl",Ka),y(438,150,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),s.Wg=function(){var t,n;return n=(t=c(vt(this,16),26),$ne(wf(t||this.zh()))),n==null?(GS(),GS(),bY):new zDe(this,n)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.ne()}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:this.Lh(ln(n));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),Aft},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:this.Lh(null);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.ne=function(){return this.zb},s.Lh=function(t){kc(this,t)},s.Ib=function(){return J5(this)},s.zb=null,S(mt,"ENamedElementImpl",438),y(179,438,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},PLe),s.Qg=function(t){return dVe(this,t)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.yb;case 3:return this.xb;case 4:return this.sb;case 5:return!this.rb&&(this.rb=new Kp(this,vl,this)),this.rb;case 6:return!this.vb&&(this.vb=new Uy(ml,this,6,7)),this.vb;case 7:return n?this.Db>>16==7?c(this.Cb,235):null:$Le(this)}return Nu(this,t-Ft((ot(),Nd)),at((r=c(vt(this,16),26),r||Nd),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 4:return this.sb&&(i=c(this.sb,49).ih(this,1,iM,i)),toe(this,c(t,471),i);case 5:return!this.rb&&(this.rb=new Kp(this,vl,this)),Rc(this.rb,t,i);case 6:return!this.vb&&(this.vb=new Uy(ml,this,6,7)),Rc(this.vb,t,i);case 7:return this.Cb&&(i=(o=this.Db>>16,o>=0?dVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,7,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),Nd)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),Nd)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 4:return toe(this,null,i);case 5:return!this.rb&&(this.rb=new Kp(this,vl,this)),Fr(this.rb,t,i);case 6:return!this.vb&&(this.vb=new Uy(ml,this,6,7)),Fr(this.vb,t,i);case 7:return yu(this,null,7,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),Nd)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),Nd)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.yb!=null;case 3:return this.xb!=null;case 4:return!!this.sb;case 5:return!!this.rb&&this.rb.i!=0;case 6:return!!this.vb&&this.vb.i!=0;case 7:return!!$Le(this)}return xu(this,t-Ft((ot(),Nd)),at((n=c(vt(this,16),26),n||Nd),t))},s.oh=function(t){var n;return n=GLt(this,t),n||Aue(this,t)},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:qO(this,ln(n));return;case 3:KO(this,ln(n));return;case 4:yq(this,c(n,471));return;case 5:!this.rb&&(this.rb=new Kp(this,vl,this)),Xt(this.rb),!this.rb&&(this.rb=new Kp(this,vl,this)),Mi(this.rb,c(n,14));return;case 6:!this.vb&&(this.vb=new Uy(ml,this,6,7)),Xt(this.vb),!this.vb&&(this.vb=new Uy(ml,this,6,7)),Mi(this.vb,c(n,14));return}qu(this,t-Ft((ot(),Nd)),at((i=c(vt(this,16),26),i||Nd),t),n)},s.vh=function(t){var n,i;if(t&&this.rb)for(i=new $t(this.rb);i.e!=i.i.gc();)n=Vt(i),Q(n,351)&&(c(n,351).w=null);p2(this,64,t)},s.zh=function(){return ot(),Nd},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:qO(this,null);return;case 3:KO(this,null);return;case 4:yq(this,null);return;case 5:!this.rb&&(this.rb=new Kp(this,vl,this)),Xt(this.rb);return;case 6:!this.vb&&(this.vb=new Uy(ml,this,6,7)),Xt(this.vb);return}$u(this,t-Ft((ot(),Nd)),at((n=c(vt(this,16),26),n||Nd),t))},s.Gh=function(){sq(this)},s.Mh=function(){return!this.rb&&(this.rb=new Kp(this,vl,this)),this.rb},s.Nh=function(){return this.sb},s.Oh=function(){return this.ub},s.Ph=function(){return this.xb},s.Qh=function(){return this.yb},s.Rh=function(t){this.ub=t},s.Ib=function(){var t;return(this.Db&64)!=0?J5(this):(t=new ea(J5(this)),t.a+=" (nsURI: ",co(t,this.yb),t.a+=", nsPrefix: ",co(t,this.xb),t.a+=")",t.a)},s.xb=null,s.yb=null,S(mt,"EPackageImpl",179),y(555,179,{105:1,2016:1,555:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},CUe),s.q=!1,s.r=!1;var dft=!1;S(sb,"ElkGraphPackageImpl",555),y(354,724,{105:1,413:1,160:1,137:1,470:1,354:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},KJ),s.Qg=function(t){return oce(this,t)},s._g=function(t,n,i){switch(t){case 7:return KLe(this);case 8:return this.a}return doe(this,t,n,i)},s.hh=function(t,n,i){var r;return n===7?(this.Cb&&(i=(r=this.Db>>16,r>=0?oce(this,i):this.Cb.ih(this,-1-r,null,i))),ine(this,c(t,160),i)):pq(this,t,n,i)},s.jh=function(t,n,i){return n==7?ine(this,null,i):eK(this,t,n,i)},s.lh=function(t){switch(t){case 7:return!!KLe(this);case 8:return!rt("",this.a)}return yoe(this,t)},s.sh=function(t,n){switch(t){case 7:Lse(this,c(n,160));return;case 8:ire(this,ln(n));return}vce(this,t,n)},s.zh=function(){return xc(),Gwe},s.Bh=function(t){switch(t){case 7:Lse(this,null);return;case 8:ire(this,"");return}Moe(this,t)},s.Ib=function(){return dGe(this)},s.a="",S(sb,"ElkLabelImpl",354),y(239,725,{105:1,413:1,82:1,160:1,33:1,470:1,239:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},VQ),s.Qg=function(t){return ace(this,t)},s._g=function(t,n,i){switch(t){case 9:return!this.c&&(this.c=new Me(Vs,this,9,9)),this.c;case 10:return!this.a&&(this.a=new Me(Ei,this,10,11)),this.a;case 11:return yi(this);case 12:return!this.b&&(this.b=new Me(rr,this,12,3)),this.b;case 13:return Pt(),!this.a&&(this.a=new Me(Ei,this,10,11)),this.a.i>0}return Uoe(this,t,n,i)},s.hh=function(t,n,i){var r;switch(n){case 9:return!this.c&&(this.c=new Me(Vs,this,9,9)),Rc(this.c,t,i);case 10:return!this.a&&(this.a=new Me(Ei,this,10,11)),Rc(this.a,t,i);case 11:return this.Cb&&(i=(r=this.Db>>16,r>=0?ace(this,i):this.Cb.ih(this,-1-r,null,i))),fte(this,c(t,33),i);case 12:return!this.b&&(this.b=new Me(rr,this,12,3)),Rc(this.b,t,i)}return hce(this,t,n,i)},s.jh=function(t,n,i){switch(n){case 9:return!this.c&&(this.c=new Me(Vs,this,9,9)),Fr(this.c,t,i);case 10:return!this.a&&(this.a=new Me(Ei,this,10,11)),Fr(this.a,t,i);case 11:return fte(this,null,i);case 12:return!this.b&&(this.b=new Me(rr,this,12,3)),Fr(this.b,t,i)}return dce(this,t,n,i)},s.lh=function(t){switch(t){case 9:return!!this.c&&this.c.i!=0;case 10:return!!this.a&&this.a.i!=0;case 11:return!!yi(this);case 12:return!!this.b&&this.b.i!=0;case 13:return!this.a&&(this.a=new Me(Ei,this,10,11)),this.a.i>0}return Lre(this,t)},s.sh=function(t,n){switch(t){case 9:!this.c&&(this.c=new Me(Vs,this,9,9)),Xt(this.c),!this.c&&(this.c=new Me(Vs,this,9,9)),Mi(this.c,c(n,14));return;case 10:!this.a&&(this.a=new Me(Ei,this,10,11)),Xt(this.a),!this.a&&(this.a=new Me(Ei,this,10,11)),Mi(this.a,c(n,14));return;case 11:kse(this,c(n,33));return;case 12:!this.b&&(this.b=new Me(rr,this,12,3)),Xt(this.b),!this.b&&(this.b=new Me(rr,this,12,3)),Mi(this.b,c(n,14));return}Ese(this,t,n)},s.zh=function(){return xc(),Uwe},s.Bh=function(t){switch(t){case 9:!this.c&&(this.c=new Me(Vs,this,9,9)),Xt(this.c);return;case 10:!this.a&&(this.a=new Me(Ei,this,10,11)),Xt(this.a);return;case 11:kse(this,null);return;case 12:!this.b&&(this.b=new Me(rr,this,12,3)),Xt(this.b);return}Boe(this,t)},s.Ib=function(){return Jse(this)},S(sb,"ElkNodeImpl",239),y(186,725,{105:1,413:1,82:1,160:1,118:1,470:1,186:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},GQ),s.Qg=function(t){return cce(this,t)},s._g=function(t,n,i){return t==9?jl(this):Uoe(this,t,n,i)},s.hh=function(t,n,i){var r;return n===9?(this.Cb&&(i=(r=this.Db>>16,r>=0?cce(this,i):this.Cb.ih(this,-1-r,null,i))),ite(this,c(t,33),i)):hce(this,t,n,i)},s.jh=function(t,n,i){return n==9?ite(this,null,i):dce(this,t,n,i)},s.lh=function(t){return t==9?!!jl(this):Lre(this,t)},s.sh=function(t,n){if(t===9){Dse(this,c(n,33));return}Ese(this,t,n)},s.zh=function(){return xc(),Wwe},s.Bh=function(t){if(t===9){Dse(this,null);return}Boe(this,t)},s.Ib=function(){return ZWe(this)},S(sb,"ElkPortImpl",186);var gft=pi(Br,"BasicEMap/Entry");y(1092,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,114:1,115:1},w6e),s.Fb=function(t){return this===t},s.cd=function(){return this.b},s.Hb=function(){return Xb(this)},s.Uh=function(t){rre(this,c(t,146))},s._g=function(t,n,i){switch(t){case 0:return this.b;case 1:return this.c}return _7(this,t,n,i)},s.lh=function(t){switch(t){case 0:return!!this.b;case 1:return this.c!=null}return HK(this,t)},s.sh=function(t,n){switch(t){case 0:rre(this,c(n,146));return;case 1:sre(this,n);return}Iq(this,t,n)},s.zh=function(){return xc(),Q1},s.Bh=function(t){switch(t){case 0:rre(this,null);return;case 1:sre(this,null);return}Eq(this,t)},s.Sh=function(){var t;return this.a==-1&&(t=this.b,this.a=t?fi(t):0),this.a},s.dd=function(){return this.c},s.Th=function(t){this.a=t},s.ed=function(t){var n;return n=this.c,sre(this,t),n},s.Ib=function(){var t;return(this.Db&64)!=0?Ba(this):(t=new n1,wn(wn(wn(t,this.b?this.b.tg():rs),Sz),g5(this.c)),t.a)},s.a=-1,s.c=null;var op=S(sb,"ElkPropertyToValueMapEntryImpl",1092);y(984,1,{},y6e),S(Cr,"JsonAdapter",984),y(210,60,$h,sf),S(Cr,"JsonImportException",210),y(857,1,{},gVe),S(Cr,"JsonImporter",857),y(891,1,{},HOe),S(Cr,"JsonImporter/lambda$0$Type",891),y(892,1,{},zOe),S(Cr,"JsonImporter/lambda$1$Type",892),y(900,1,{},Pje),S(Cr,"JsonImporter/lambda$10$Type",900),y(902,1,{},VOe),S(Cr,"JsonImporter/lambda$11$Type",902),y(903,1,{},GOe),S(Cr,"JsonImporter/lambda$12$Type",903),y(909,1,{},rLe),S(Cr,"JsonImporter/lambda$13$Type",909),y(908,1,{},iLe),S(Cr,"JsonImporter/lambda$14$Type",908),y(904,1,{},UOe),S(Cr,"JsonImporter/lambda$15$Type",904),y(905,1,{},WOe),S(Cr,"JsonImporter/lambda$16$Type",905),y(906,1,{},YOe),S(Cr,"JsonImporter/lambda$17$Type",906),y(907,1,{},XOe),S(Cr,"JsonImporter/lambda$18$Type",907),y(912,1,{},Mje),S(Cr,"JsonImporter/lambda$19$Type",912),y(893,1,{},Cje),S(Cr,"JsonImporter/lambda$2$Type",893),y(910,1,{},Ije),S(Cr,"JsonImporter/lambda$20$Type",910),y(911,1,{},Tje),S(Cr,"JsonImporter/lambda$21$Type",911),y(915,1,{},jje),S(Cr,"JsonImporter/lambda$22$Type",915),y(913,1,{},Aje),S(Cr,"JsonImporter/lambda$23$Type",913),y(914,1,{},Oje),S(Cr,"JsonImporter/lambda$24$Type",914),y(917,1,{},Dje),S(Cr,"JsonImporter/lambda$25$Type",917),y(916,1,{},kje),S(Cr,"JsonImporter/lambda$26$Type",916),y(918,1,Rt,JOe),s.td=function(t){_Ct(this.b,this.a,ln(t))},S(Cr,"JsonImporter/lambda$27$Type",918),y(919,1,Rt,QOe),s.td=function(t){ECt(this.b,this.a,ln(t))},S(Cr,"JsonImporter/lambda$28$Type",919),y(920,1,{},ZOe),S(Cr,"JsonImporter/lambda$29$Type",920),y(896,1,{},Rje),S(Cr,"JsonImporter/lambda$3$Type",896),y(921,1,{},e7e),S(Cr,"JsonImporter/lambda$30$Type",921),y(922,1,{},xje),S(Cr,"JsonImporter/lambda$31$Type",922),y(923,1,{},Lje),S(Cr,"JsonImporter/lambda$32$Type",923),y(924,1,{},Nje),S(Cr,"JsonImporter/lambda$33$Type",924),y(925,1,{},Fje),S(Cr,"JsonImporter/lambda$34$Type",925),y(859,1,{},Bje),S(Cr,"JsonImporter/lambda$35$Type",859),y(929,1,{},Yke),S(Cr,"JsonImporter/lambda$36$Type",929),y(926,1,Rt,$je),s.td=function(t){MMt(this.a,c(t,469))},S(Cr,"JsonImporter/lambda$37$Type",926),y(927,1,Rt,c7e),s.td=function(t){Zyt(this.a,this.b,c(t,202))},S(Cr,"JsonImporter/lambda$38$Type",927),y(928,1,Rt,s7e),s.td=function(t){e2t(this.a,this.b,c(t,202))},S(Cr,"JsonImporter/lambda$39$Type",928),y(894,1,{},Kje),S(Cr,"JsonImporter/lambda$4$Type",894),y(930,1,Rt,qje),s.td=function(t){CMt(this.a,c(t,8))},S(Cr,"JsonImporter/lambda$40$Type",930),y(895,1,{},Hje),S(Cr,"JsonImporter/lambda$5$Type",895),y(899,1,{},zje),S(Cr,"JsonImporter/lambda$6$Type",899),y(897,1,{},Vje),S(Cr,"JsonImporter/lambda$7$Type",897),y(898,1,{},Gje),S(Cr,"JsonImporter/lambda$8$Type",898),y(901,1,{},Uje),S(Cr,"JsonImporter/lambda$9$Type",901),y(948,1,Rt,Wje),s.td=function(t){Zy(this.a,new qp(ln(t)))},S(Cr,"JsonMetaDataConverter/lambda$0$Type",948),y(949,1,Rt,Yje),s.td=function(t){qSt(this.a,c(t,237))},S(Cr,"JsonMetaDataConverter/lambda$1$Type",949),y(950,1,Rt,Xje),s.td=function(t){B6t(this.a,c(t,149))},S(Cr,"JsonMetaDataConverter/lambda$2$Type",950),y(951,1,Rt,Jje),s.td=function(t){HSt(this.a,c(t,175))},S(Cr,"JsonMetaDataConverter/lambda$3$Type",951),y(237,22,{3:1,35:1,22:1,237:1},Hy);var Dx,kx,uY,Rx,xx,Lx,aY,lY,Nx=hn(_T,"GraphFeature",237,bn,fIt,d4t),bft;y(13,1,{35:1,146:1},hi,Wi,ut,Yr),s.wd=function(t){return Q2t(this,c(t,146))},s.Fb=function(t){return MLe(this,t)},s.wg=function(){return Le(this)},s.tg=function(){return this.b},s.Hb=function(){return md(this.b)},s.Ib=function(){return this.b},S(_T,"Property",13),y(818,1,Zn,PQ),s.ue=function(t,n){return pAt(this,c(t,94),c(n,94))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_T,"PropertyHolderComparator",818),y(695,1,dr,MQ),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return CCt(this)},s.Qb=function(){z9e()},s.Ob=function(){return!!this.a},S(nk,"ElkGraphUtil/AncestorIterator",695);var Xwe=pi(Br,"EList");y(67,52,{20:1,28:1,52:1,14:1,15:1,67:1,58:1}),s.Vc=function(t,n){e6(this,t,n)},s.Fc=function(t){return on(this,t)},s.Wc=function(t,n){return Tre(this,t,n)},s.Gc=function(t){return Mi(this,t)},s.Zh=function(){return new Gy(this)},s.$h=function(){return new vC(this)},s._h=function(t){return lI(this,t)},s.ai=function(){return!0},s.bi=function(t,n){},s.ci=function(){},s.di=function(t,n){M$(this,t,n)},s.ei=function(t,n,i){},s.fi=function(t,n){},s.gi=function(t,n,i){},s.Fb=function(t){return BWe(this,t)},s.Hb=function(){return Sre(this)},s.hi=function(){return!1},s.Kc=function(){return new $t(this)},s.Yc=function(){return new Vy(this)},s.Zc=function(t){var n;if(n=this.gc(),t<0||t>n)throw V(new Fp(t,n));return new AB(this,t)},s.ji=function(t,n){this.ii(t,this.Xc(n))},s.Mc=function(t){return _O(this,t)},s.li=function(t,n){return n},s._c=function(t,n){return Wm(this,t,n)},s.Ib=function(){return boe(this)},s.ni=function(){return!0},s.oi=function(t,n){return tE(this,n)},S(Br,"AbstractEList",67),y(63,67,Tf,RA,d0,bre),s.Vh=function(t,n){return wq(this,t,n)},s.Wh=function(t){return Kze(this,t)},s.Xh=function(t,n){MI(this,t,n)},s.Yh=function(t){UC(this,t)},s.pi=function(t){return Lie(this,t)},s.$b=function(){B5(this)},s.Hc=function(t){return pE(this,t)},s.Xb=function(t){return ee(this,t)},s.qi=function(t){var n,i,r;++this.j,i=this.g==null?0:this.g.length,t>i&&(r=this.g,n=i+(i/2|0)+4,n=0?(this.$c(n),!0):!1},s.mi=function(t,n){return this.Ui(t,this.oi(t,n))},s.gc=function(){return this.Vi()},s.Pc=function(){return this.Wi()},s.Qc=function(t){return this.Xi(t)},s.Ib=function(){return this.Yi()},S(Br,"DelegatingEList",1995),y(1996,1995,Net),s.Vh=function(t,n){return cue(this,t,n)},s.Wh=function(t){return this.Vh(this.Vi(),t)},s.Xh=function(t,n){PUe(this,t,n)},s.Yh=function(t){bUe(this,t)},s.ai=function(){return!this.bj()},s.$b=function(){C6(this)},s.Zi=function(t,n,i,r,o){return new ILe(this,t,n,i,r,o)},s.$i=function(t){Bn(this.Ai(),t)},s._i=function(){return null},s.aj=function(){return-1},s.Ai=function(){return null},s.bj=function(){return!1},s.cj=function(t,n){return n},s.dj=function(t,n){return n},s.ej=function(){return!1},s.fj=function(){return!this.Ri()},s.ii=function(t,n){var i,r;return this.ej()?(r=this.fj(),i=Fce(this,t,n),this.$i(this.Zi(7,Ce(n),i,t,r)),i):Fce(this,t,n)},s.$c=function(t){var n,i,r,o;return this.ej()?(i=null,r=this.fj(),n=this.Zi(4,o=g8(this,t),null,t,r),this.bj()&&o?(i=this.dj(o,i),i?(i.Ei(n),i.Fi()):this.$i(n)):i?(i.Ei(n),i.Fi()):this.$i(n),o):(o=g8(this,t),this.bj()&&o&&(i=this.dj(o,null),i&&i.Fi()),o)},s.mi=function(t,n){return DYe(this,t,n)},S(F2,"DelegatingNotifyingListImpl",1996),y(143,1,xT),s.Ei=function(t){return Mce(this,t)},s.Fi=function(){R$(this)},s.xi=function(){return this.d},s._i=function(){return null},s.gj=function(){return null},s.yi=function(t){return-1},s.zi=function(){return mWe(this)},s.Ai=function(){return null},s.Bi=function(){return Kse(this)},s.Ci=function(){return this.o<0?this.o<-2?-2-this.o-1:-1:this.o},s.hj=function(){return!1},s.Di=function(t){var n,i,r,o,u,a,l,d,p,v,A;switch(this.d){case 1:case 2:switch(o=t.xi(),o){case 1:case 2:if(u=t.Ai(),le(u)===le(this.Ai())&&this.yi(null)==t.yi(null))return this.g=t.zi(),t.xi()==1&&(this.d=1),!0}case 4:{switch(o=t.xi(),o){case 4:{if(u=t.Ai(),le(u)===le(this.Ai())&&this.yi(null)==t.yi(null))return p=Sue(this),d=this.o<0?this.o<-2?-2-this.o-1:-1:this.o,a=t.Ci(),this.d=6,A=new d0(2),d<=a?(on(A,this.n),on(A,t.Bi()),this.g=U(G(Qt,1),_n,25,15,[this.o=d,a+1])):(on(A,t.Bi()),on(A,this.n),this.g=U(G(Qt,1),_n,25,15,[this.o=a,d])),this.n=A,p||(this.o=-2-this.o-1),!0;break}}break}case 6:{switch(o=t.xi(),o){case 4:{if(u=t.Ai(),le(u)===le(this.Ai())&&this.yi(null)==t.yi(null)){for(p=Sue(this),a=t.Ci(),v=c(this.g,48),r=oe(Qt,_n,25,v.length+1,15,1),n=0;n>>0,n.toString(16))),r.a+=" (eventType: ",this.d){case 1:{r.a+="SET";break}case 2:{r.a+="UNSET";break}case 3:{r.a+="ADD";break}case 5:{r.a+="ADD_MANY";break}case 4:{r.a+="REMOVE";break}case 6:{r.a+="REMOVE_MANY";break}case 7:{r.a+="MOVE";break}case 8:{r.a+="REMOVING_ADAPTER";break}case 9:{r.a+="RESOLVE";break}default:{ZN(r,this.d);break}}if(cYe(this)&&(r.a+=", touch: true"),r.a+=", position: ",ZN(r,this.o<0?this.o<-2?-2-this.o-1:-1:this.o),r.a+=", notifier: ",u5(r,this.Ai()),r.a+=", feature: ",u5(r,this._i()),r.a+=", oldValue: ",u5(r,Kse(this)),r.a+=", newValue: ",this.d==6&&Q(this.g,48)){for(i=c(this.g,48),r.a+="[",t=0;t10?((!this.b||this.c.j!=this.a)&&(this.b=new _5(this),this.a=this.j),_h(this.b,t)):pE(this,t)},s.ni=function(){return!0},s.a=0,S(Br,"AbstractEList/1",953),y(295,73,UH,Fp),S(Br,"AbstractEList/BasicIndexOutOfBoundsException",295),y(40,1,dr,$t),s.Nb=function(t){Sr(this,t)},s.mj=function(){if(this.i.j!=this.f)throw V(new Ou)},s.nj=function(){return Vt(this)},s.Ob=function(){return this.e!=this.i.gc()},s.Pb=function(){return this.nj()},s.Qb=function(){l6(this)},s.e=0,s.f=0,s.g=-1,S(Br,"AbstractEList/EIterator",40),y(278,40,Wf,Vy,AB),s.Qb=function(){l6(this)},s.Rb=function(t){HHe(this,t)},s.oj=function(){var t;try{return t=this.d.Xb(--this.e),this.mj(),this.g=this.e,t}catch(n){throw n=gi(n),Q(n,73)?(this.mj(),V(new tc)):V(n)}},s.pj=function(t){zze(this,t)},s.Sb=function(){return this.e!=0},s.Tb=function(){return this.e},s.Ub=function(){return this.oj()},s.Vb=function(){return this.e-1},s.Wb=function(t){this.pj(t)},S(Br,"AbstractEList/EListIterator",278),y(341,40,dr,Gy),s.nj=function(){return zK(this)},s.Qb=function(){throw V(new sn)},S(Br,"AbstractEList/NonResolvingEIterator",341),y(385,278,Wf,vC,mte),s.Rb=function(t){throw V(new sn)},s.nj=function(){var t;try{return t=this.c.ki(this.e),this.mj(),this.g=this.e++,t}catch(n){throw n=gi(n),Q(n,73)?(this.mj(),V(new tc)):V(n)}},s.oj=function(){var t;try{return t=this.c.ki(--this.e),this.mj(),this.g=this.e,t}catch(n){throw n=gi(n),Q(n,73)?(this.mj(),V(new tc)):V(n)}},s.Qb=function(){throw V(new sn)},s.Wb=function(t){throw V(new sn)},S(Br,"AbstractEList/NonResolvingEListIterator",385),y(1982,67,Fet),s.Vh=function(t,n){var i,r,o,u,a,l,d,p,v,A,D;if(o=n.gc(),o!=0){for(p=c(vt(this.a,4),126),v=p==null?0:p.length,D=v+o,r=hK(this,D),A=v-t,A>0&&bc(p,t,r,t+o,A),d=n.Kc(),a=0;ai)throw V(new Fp(t,i));return new Fxe(this,t)},s.$b=function(){var t,n;++this.j,t=c(vt(this.a,4),126),n=t==null?0:t.length,hE(this,null),M$(this,n,t)},s.Hc=function(t){var n,i,r,o,u;if(n=c(vt(this.a,4),126),n!=null){if(t!=null){for(r=n,o=0,u=r.length;o=i)throw V(new Fp(t,i));return n[t]},s.Xc=function(t){var n,i,r;if(n=c(vt(this.a,4),126),n!=null){if(t!=null){for(i=0,r=n.length;ii)throw V(new Fp(t,i));return new Nxe(this,t)},s.ii=function(t,n){var i,r,o;if(i=JHe(this),o=i==null?0:i.length,t>=o)throw V(new ho(xV+t+ub+o));if(n>=o)throw V(new ho(LV+n+ub+o));return r=i[n],t!=n&&(t0&&bc(t,0,n,0,i),n},s.Qc=function(t){var n,i,r;return n=c(vt(this.a,4),126),r=n==null?0:n.length,r>0&&(t.lengthr&&vi(t,r,null),t};var pft;S(Br,"ArrayDelegatingEList",1982),y(1038,40,dr,UFe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},s.Qb=function(){l6(this),this.a=c(vt(this.b.a,4),126)},S(Br,"ArrayDelegatingEList/EIterator",1038),y(706,278,Wf,sxe,Nxe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},s.pj=function(t){zze(this,t),this.a=c(vt(this.b.a,4),126)},s.Qb=function(){l6(this),this.a=c(vt(this.b.a,4),126)},S(Br,"ArrayDelegatingEList/EListIterator",706),y(1039,341,dr,WFe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},S(Br,"ArrayDelegatingEList/NonResolvingEIterator",1039),y(707,385,Wf,uxe,Fxe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},S(Br,"ArrayDelegatingEList/NonResolvingEListIterator",707),y(606,295,UH,kF),S(Br,"BasicEList/BasicIndexOutOfBoundsException",606),y(696,63,Tf,iee),s.Vc=function(t,n){throw V(new sn)},s.Fc=function(t){throw V(new sn)},s.Wc=function(t,n){throw V(new sn)},s.Gc=function(t){throw V(new sn)},s.$b=function(){throw V(new sn)},s.qi=function(t){throw V(new sn)},s.Kc=function(){return this.Zh()},s.Yc=function(){return this.$h()},s.Zc=function(t){return this._h(t)},s.ii=function(t,n){throw V(new sn)},s.ji=function(t,n){throw V(new sn)},s.$c=function(t){throw V(new sn)},s.Mc=function(t){throw V(new sn)},s._c=function(t,n){throw V(new sn)},S(Br,"BasicEList/UnmodifiableEList",696),y(705,1,{3:1,20:1,14:1,15:1,58:1,589:1}),s.Vc=function(t,n){q2t(this,t,c(n,42))},s.Fc=function(t){return T3t(this,c(t,42))},s.Jc=function(t){Mr(this,t)},s.Xb=function(t){return c(ee(this.c,t),133)},s.ii=function(t,n){return c(this.c.ii(t,n),42)},s.ji=function(t,n){H2t(this,t,c(n,42))},s.Lc=function(){return new ht(null,new bt(this,16))},s.$c=function(t){return c(this.c.$c(t),42)},s._c=function(t,n){return LSt(this,t,c(n,42))},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.Oc=function(){return new ht(null,new bt(this,16))},s.Wc=function(t,n){return this.c.Wc(t,n)},s.Gc=function(t){return this.c.Gc(t)},s.$b=function(){this.c.$b()},s.Hc=function(t){return this.c.Hc(t)},s.Ic=function(t){return bI(this.c,t)},s.qj=function(){var t,n,i;if(this.d==null){for(this.d=oe(Jwe,Bfe,63,2*this.f+1,0,1),i=this.e,this.f=0,n=this.c.Kc();n.e!=n.i.gc();)t=c(n.nj(),133),P7(this,t);this.e=i}},s.Fb=function(t){return kke(this,t)},s.Hb=function(){return Sre(this.c)},s.Xc=function(t){return this.c.Xc(t)},s.rj=function(){this.c=new Zje(this)},s.dc=function(){return this.f==0},s.Kc=function(){return this.c.Kc()},s.Yc=function(){return this.c.Yc()},s.Zc=function(t){return this.c.Zc(t)},s.sj=function(){return XC(this)},s.tj=function(t,n,i){return new Xke(t,n,i)},s.uj=function(){return new P6e},s.Mc=function(t){return hKe(this,t)},s.gc=function(){return this.f},s.bd=function(t,n){return new Hf(this.c,t,n)},s.Pc=function(){return this.c.Pc()},s.Qc=function(t){return this.c.Qc(t)},s.Ib=function(){return boe(this.c)},s.e=0,s.f=0,S(Br,"BasicEMap",705),y(1033,63,Tf,Zje),s.bi=function(t,n){Mvt(this,c(n,133))},s.ei=function(t,n,i){var r;++(r=this,c(n,133),r).a.e},s.fi=function(t,n){Cvt(this,c(n,133))},s.gi=function(t,n,i){b3t(this,c(n,133),c(i,133))},s.di=function(t,n){nqe(this.a)},S(Br,"BasicEMap/1",1033),y(1034,63,Tf,P6e),s.ri=function(t){return oe(Nzt,Bet,612,t,0,1)},S(Br,"BasicEMap/2",1034),y(1035,Kl,ys,eAe),s.$b=function(){this.a.c.$b()},s.Hc=function(t){return xK(this.a,t)},s.Kc=function(){return this.a.f==0?(p_(),Wj.a):new x9e(this.a)},s.Mc=function(t){var n;return n=this.a.f,d7(this.a,t),this.a.f!=n},s.gc=function(){return this.a.f},S(Br,"BasicEMap/3",1035),y(1036,28,ww,tAe),s.$b=function(){this.a.c.$b()},s.Hc=function(t){return $We(this.a,t)},s.Kc=function(){return this.a.f==0?(p_(),Wj.a):new L9e(this.a)},s.gc=function(){return this.a.f},S(Br,"BasicEMap/4",1036),y(1037,Kl,ys,nAe),s.$b=function(){this.a.c.$b()},s.Hc=function(t){var n,i,r,o,u,a,l,d,p;if(this.a.f>0&&Q(t,42)&&(this.a.qj(),d=c(t,42),l=d.cd(),o=l==null?0:fi(l),u=rte(this.a,o),n=this.a.d[u],n)){for(i=c(n.g,367),p=n.i,a=0;a"+this.c},s.a=0;var Nzt=S(Br,"BasicEMap/EntryImpl",612);y(536,1,{},kA),S(Br,"BasicEMap/View",536);var Wj;y(768,1,{}),s.Fb=function(t){return Sse((st(),Qr),t)},s.Hb=function(){return xre((st(),Qr))},s.Ib=function(){return C1((st(),Qr))},S(Br,"ECollections/BasicEmptyUnmodifiableEList",768),y(1312,1,Wf,M6e),s.Nb=function(t){Sr(this,t)},s.Rb=function(t){throw V(new sn)},s.Ob=function(){return!1},s.Sb=function(){return!1},s.Pb=function(){throw V(new tc)},s.Tb=function(){return 0},s.Ub=function(){throw V(new tc)},s.Vb=function(){return-1},s.Qb=function(){throw V(new sn)},s.Wb=function(t){throw V(new sn)},S(Br,"ECollections/BasicEmptyUnmodifiableEList/1",1312),y(1310,768,{20:1,14:1,15:1,58:1},GAe),s.Vc=function(t,n){i8e()},s.Fc=function(t){return r8e()},s.Wc=function(t,n){return o8e()},s.Gc=function(t){return c8e()},s.$b=function(){s8e()},s.Hc=function(t){return!1},s.Ic=function(t){return!1},s.Jc=function(t){Mr(this,t)},s.Xb=function(t){return cee((st(),t)),null},s.Xc=function(t){return-1},s.dc=function(){return!0},s.Kc=function(){return this.a},s.Yc=function(){return this.a},s.Zc=function(t){return this.a},s.ii=function(t,n){return u8e()},s.ji=function(t,n){a8e()},s.Lc=function(){return new ht(null,new bt(this,16))},s.$c=function(t){return l8e()},s.Mc=function(t){return f8e()},s._c=function(t,n){return h8e()},s.gc=function(){return 0},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.Oc=function(){return new ht(null,new bt(this,16))},s.bd=function(t,n){return st(),new Hf(Qr,t,n)},s.Pc=function(){return cne((st(),Qr))},s.Qc=function(t){return st(),RI(Qr,t)},S(Br,"ECollections/EmptyUnmodifiableEList",1310),y(1311,768,{20:1,14:1,15:1,58:1,589:1},UAe),s.Vc=function(t,n){i8e()},s.Fc=function(t){return r8e()},s.Wc=function(t,n){return o8e()},s.Gc=function(t){return c8e()},s.$b=function(){s8e()},s.Hc=function(t){return!1},s.Ic=function(t){return!1},s.Jc=function(t){Mr(this,t)},s.Xb=function(t){return cee((st(),t)),null},s.Xc=function(t){return-1},s.dc=function(){return!0},s.Kc=function(){return this.a},s.Yc=function(){return this.a},s.Zc=function(t){return this.a},s.ii=function(t,n){return u8e()},s.ji=function(t,n){a8e()},s.Lc=function(){return new ht(null,new bt(this,16))},s.$c=function(t){return l8e()},s.Mc=function(t){return f8e()},s._c=function(t,n){return h8e()},s.gc=function(){return 0},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.Oc=function(){return new ht(null,new bt(this,16))},s.bd=function(t,n){return st(),new Hf(Qr,t,n)},s.Pc=function(){return cne((st(),Qr))},s.Qc=function(t){return st(),RI(Qr,t)},s.sj=function(){return st(),st(),th},S(Br,"ECollections/EmptyUnmodifiableEMap",1311);var Zwe=pi(Br,"Enumerator"),Fx;y(281,1,{281:1},Hq),s.Fb=function(t){var n;return this===t?!0:Q(t,281)?(n=c(t,281),this.f==n.f&&iSt(this.i,n.i)&&pB(this.a,(this.f&256)!=0?(n.f&256)!=0?n.a:null:(n.f&256)!=0?null:n.a)&&pB(this.d,n.d)&&pB(this.g,n.g)&&pB(this.e,n.e)&&J9t(this,n)):!1},s.Hb=function(){return this.f},s.Ib=function(){return wYe(this)},s.f=0;var wft=0,mft=0,vft=0,yft=0,eme=0,tme=0,nme=0,ime=0,rme=0,_ft,oM=0,cM=0,Eft=0,Sft=0,Bx,ome;S(Br,"URI",281),y(1091,43,fv,WAe),s.zc=function(t,n){return c(bo(this,ln(t),c(n,281)),281)},S(Br,"URI/URICache",1091),y(497,63,Tf,v6e,p8),s.hi=function(){return!0},S(Br,"UniqueEList",497),y(581,60,$h,mO),S(Br,"WrappedException",581);var Sn=pi(Hu,qet),Xw=pi(Hu,Het),us=pi(Hu,zet),Jw=pi(Hu,Vet),vl=pi(Hu,Get),va=pi(Hu,"EClass"),dY=pi(Hu,"EDataType"),Pft;y(1183,43,fv,YAe),s.xc=function(t){return fr(t)?mc(this,t):Uo(Po(this.f,t))},S(Hu,"EDataType/Internal/ConversionDelegate/Factory/Registry/Impl",1183);var $x=pi(Hu,"EEnum"),Yh=pi(Hu,Uet),oo=pi(Hu,Wet),ya=pi(Hu,Yet),_a,cp=pi(Hu,Xet),Qw=pi(Hu,Jet);y(1029,1,{},m6e),s.Ib=function(){return"NIL"},S(Hu,"EStructuralFeature/Internal/DynamicValueHolder/1",1029);var Mft;y(1028,43,fv,XAe),s.xc=function(t){return fr(t)?mc(this,t):Uo(Po(this.f,t))},S(Hu,"EStructuralFeature/Internal/SettingDelegate/Factory/Registry/Impl",1028);var Gc=pi(Hu,Qet),s3=pi(Hu,"EValidator/PatternMatcher"),cme,sme,wt,Rd,Zw,eg,Cft,Ift,Tft,tg,xd,ng,sp,Ql,jft,Aft,Ea,Ld,Oft,Nd,em,Uv,Ur,Dft,kft,up,Kx=pi(ai,"FeatureMap/Entry");y(535,1,{72:1},x9),s.ak=function(){return this.a},s.dd=function(){return this.b},S(mt,"BasicEObjectImpl/1",535),y(1027,1,qV,u7e),s.Wj=function(t){return S$(this.a,this.b,t)},s.fj=function(){return qLe(this.a,this.b)},s.Wb=function(t){qne(this.a,this.b,t)},s.Xj=function(){ZSt(this.a,this.b)},S(mt,"BasicEObjectImpl/4",1027),y(1983,1,{108:1}),s.bk=function(t){this.e=t==0?Rft:oe(xt,xe,1,t,5,1)},s.Ch=function(t){return this.e[t]},s.Dh=function(t,n){this.e[t]=n},s.Eh=function(t){this.e[t]=null},s.ck=function(){return this.c},s.dk=function(){throw V(new sn)},s.ek=function(){throw V(new sn)},s.fk=function(){return this.d},s.gk=function(){return this.e!=null},s.hk=function(t){this.c=t},s.ik=function(t){throw V(new sn)},s.jk=function(t){throw V(new sn)},s.kk=function(t){this.d=t};var Rft;S(mt,"BasicEObjectImpl/EPropertiesHolderBaseImpl",1983),y(185,1983,{108:1},il),s.dk=function(){return this.a},s.ek=function(){return this.b},s.ik=function(t){this.a=t},s.jk=function(t){this.b=t},S(mt,"BasicEObjectImpl/EPropertiesHolderImpl",185),y(506,97,JZe,xA),s.Kg=function(){return this.f},s.Pg=function(){return this.k},s.Rg=function(t,n){this.g=t,this.i=n},s.Tg=function(){return(this.j&2)==0?this.zh():this.ph().ck()},s.Vg=function(){return this.i},s.Mg=function(){return(this.j&1)!=0},s.eh=function(){return this.g},s.kh=function(){return(this.j&4)!=0},s.ph=function(){return!this.k&&(this.k=new il),this.k},s.th=function(t){this.ph().hk(t),t?this.j|=2:this.j&=-3},s.vh=function(t){this.ph().jk(t),t?this.j|=4:this.j&=-5},s.zh=function(){return(g1(),wt).S},s.i=0,s.j=1,S(mt,"EObjectImpl",506),y(780,506,{105:1,92:1,90:1,56:1,108:1,49:1,97:1},qte),s.Ch=function(t){return this.e[t]},s.Dh=function(t,n){this.e[t]=n},s.Eh=function(t){this.e[t]=null},s.Tg=function(){return this.d},s.Yg=function(t){return di(this.d,t)},s.$g=function(){return this.d},s.dh=function(){return this.e!=null},s.ph=function(){return!this.k&&(this.k=new C6e),this.k},s.th=function(t){this.d=t},s.yh=function(){var t;return this.e==null&&(t=Ft(this.d),this.e=t==0?xft:oe(xt,xe,1,t,5,1)),this},s.Ah=function(){return 0};var xft;S(mt,"DynamicEObjectImpl",780),y(1376,780,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1},SRe),s.Fb=function(t){return this===t},s.Hb=function(){return Xb(this)},s.th=function(t){this.d=t,this.b=QI(t,"key"),this.c=QI(t,X6)},s.Sh=function(){var t;return this.a==-1&&(t=x$(this,this.b),this.a=t==null?0:fi(t)),this.a},s.cd=function(){return x$(this,this.b)},s.dd=function(){return x$(this,this.c)},s.Th=function(t){this.a=t},s.Uh=function(t){qne(this,this.b,t)},s.ed=function(t){var n;return n=x$(this,this.c),qne(this,this.c,t),n},s.a=0,S(mt,"DynamicEObjectImpl/BasicEMapEntry",1376),y(1377,1,{108:1},C6e),s.bk=function(t){throw V(new sn)},s.Ch=function(t){throw V(new sn)},s.Dh=function(t,n){throw V(new sn)},s.Eh=function(t){throw V(new sn)},s.ck=function(){throw V(new sn)},s.dk=function(){return this.a},s.ek=function(){return this.b},s.fk=function(){return this.c},s.gk=function(){throw V(new sn)},s.hk=function(t){throw V(new sn)},s.ik=function(t){this.a=t},s.jk=function(t){this.b=t},s.kk=function(t){this.c=t},S(mt,"DynamicEObjectImpl/DynamicEPropertiesHolderImpl",1377),y(510,150,{105:1,92:1,90:1,590:1,147:1,56:1,108:1,49:1,97:1,510:1,150:1,114:1,115:1},qJ),s.Qg=function(t){return sce(this,t)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.d;case 2:return i?(!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),this.b):(!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),XC(this.b));case 3:return ULe(this);case 4:return!this.a&&(this.a=new qi(J1,this,4)),this.a;case 5:return!this.c&&(this.c=new Om(J1,this,5)),this.c}return Nu(this,t-Ft((ot(),Rd)),at((r=c(vt(this,16),26),r||Rd),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 3:return this.Cb&&(i=(o=this.Db>>16,o>=0?sce(this,i):this.Cb.ih(this,-1-o,null,i))),rne(this,c(t,147),i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),Rd)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),Rd)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 2:return!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),r8(this.b,t,i);case 3:return rne(this,null,i);case 4:return!this.a&&(this.a=new qi(J1,this,4)),Fr(this.a,t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),Rd)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),Rd)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.d!=null;case 2:return!!this.b&&this.b.f!=0;case 3:return!!ULe(this);case 4:return!!this.a&&this.a.i!=0;case 5:return!!this.c&&this.c.i!=0}return xu(this,t-Ft((ot(),Rd)),at((n=c(vt(this,16),26),n||Rd),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:q4t(this,ln(n));return;case 2:!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),GO(this.b,n);return;case 3:sWe(this,c(n,147));return;case 4:!this.a&&(this.a=new qi(J1,this,4)),Xt(this.a),!this.a&&(this.a=new qi(J1,this,4)),Mi(this.a,c(n,14));return;case 5:!this.c&&(this.c=new Om(J1,this,5)),Xt(this.c),!this.c&&(this.c=new Om(J1,this,5)),Mi(this.c,c(n,14));return}qu(this,t-Ft((ot(),Rd)),at((i=c(vt(this,16),26),i||Rd),t),n)},s.zh=function(){return ot(),Rd},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:ure(this,null);return;case 2:!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),this.b.c.$b();return;case 3:sWe(this,null);return;case 4:!this.a&&(this.a=new qi(J1,this,4)),Xt(this.a);return;case 5:!this.c&&(this.c=new Om(J1,this,5)),Xt(this.c);return}$u(this,t-Ft((ot(),Rd)),at((n=c(vt(this,16),26),n||Rd),t))},s.Ib=function(){return EHe(this)},s.d=null,S(mt,"EAnnotationImpl",510),y(151,705,$fe,iu),s.Xh=function(t,n){P2t(this,t,c(n,42))},s.lk=function(t,n){return m_t(this,c(t,42),n)},s.pi=function(t){return c(c(this.c,69).pi(t),133)},s.Zh=function(){return c(this.c,69).Zh()},s.$h=function(){return c(this.c,69).$h()},s._h=function(t){return c(this.c,69)._h(t)},s.mk=function(t,n){return r8(this,t,n)},s.Wj=function(t){return c(this.c,76).Wj(t)},s.rj=function(){},s.fj=function(){return c(this.c,76).fj()},s.tj=function(t,n,i){var r;return r=c(bu(this.b).Nh().Jh(this.b),133),r.Th(t),r.Uh(n),r.ed(i),r},s.uj=function(){return new IQ(this)},s.Wb=function(t){GO(this,t)},s.Xj=function(){c(this.c,76).Xj()},S(ai,"EcoreEMap",151),y(158,151,$fe,Zs),s.qj=function(){var t,n,i,r,o,u;if(this.d==null){for(u=oe(Jwe,Bfe,63,2*this.f+1,0,1),i=this.c.Kc();i.e!=i.i.gc();)n=c(i.nj(),133),r=n.Sh(),o=(r&Fn)%u.length,t=u[o],!t&&(t=u[o]=new IQ(this)),t.Fc(n);this.d=u}},S(mt,"EAnnotationImpl/1",158),y(284,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,472:1,49:1,97:1,150:1,284:1,114:1,115:1}),s._g=function(t,n,i){var r,o;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),!!this.$j();case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i)}return o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i)},s.lh=function(t){var n,i;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0)}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:this.Lh(ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:this.ok(c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),kft},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:this.Lh(null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:this.ok(1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.Gh=function(){ra(this),this.Bb|=1},s.Yj=function(){return ra(this)},s.Zj=function(){return this.t},s.$j=function(){var t;return t=this.t,t>1||t==-1},s.hi=function(){return(this.Bb&512)!=0},s.nk=function(t,n){return noe(this,t,n)},s.ok=function(t){Zp(this,t)},s.Ib=function(){return dse(this)},s.s=0,s.t=1,S(mt,"ETypedElementImpl",284),y(449,284,{105:1,92:1,90:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,449:1,284:1,114:1,115:1,677:1}),s.Qg=function(t){return rVe(this,t)},s._g=function(t,n,i){var r,o;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),!!this.$j();case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return Pt(),(this.Bb&Ka)!=0;case 11:return Pt(),(this.Bb&Iw)!=0;case 12:return Pt(),(this.Bb&vw)!=0;case 13:return this.j;case 14:return SE(this);case 15:return Pt(),(this.Bb&Es)!=0;case 16:return Pt(),(this.Bb&mf)!=0;case 17:return zp(this)}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 17:return this.Cb&&(i=(o=this.Db>>16,o>=0?rVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,17,i)}return u=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),u.Nj().Qj(this,$c(this),n-Ft(this.zh()),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i);case 17:return yu(this,null,17,i)}return o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i)},s.lh=function(t){var n,i;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return(this.Bb&Ka)==0;case 11:return(this.Bb&Iw)!=0;case 12:return(this.Bb&vw)!=0;case 13:return this.j!=null;case 14:return SE(this)!=null;case 15:return(this.Bb&Es)!=0;case 16:return(this.Bb&mf)!=0;case 17:return!!zp(this)}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:s$(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:this.ok(c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 10:cE(this,Be(Fe(n)));return;case 11:aE(this,Be(Fe(n)));return;case 12:sE(this,Be(Fe(n)));return;case 13:ree(this,ln(n));return;case 15:uE(this,Be(Fe(n)));return;case 16:lE(this,Be(Fe(n)));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),Dft},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),4),kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:this.ok(1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 10:cE(this,!0);return;case 11:aE(this,!1);return;case 12:sE(this,!1);return;case 13:this.i=null,NO(this,null);return;case 15:uE(this,!1);return;case 16:lE(this,!1);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.Gh=function(){C_(wo((vs(),Ir),this)),ra(this),this.Bb|=1},s.Gj=function(){return this.f},s.zj=function(){return SE(this)},s.Hj=function(){return zp(this)},s.Lj=function(){return null},s.pk=function(){return this.k},s.aj=function(){return this.n},s.Mj=function(){return k7(this)},s.Nj=function(){var t,n,i,r,o,u,a,l,d;return this.p||(i=zp(this),(i.i==null&&wf(i),i.i).length,r=this.Lj(),r&&Ft(zp(r)),o=ra(this),a=o.Bj(),t=a?(a.i&1)!=0?a==Gs?Qi:a==Qt?$r:a==nm?e4:a==gr?mr:a==rg?H0:a==Jv?z0:a==Ps?B2:sP:a:null,n=SE(this),l=o.zj(),EAt(this),(this.Bb&mf)!=0&&((u=gce((vs(),Ir),i))&&u!=this||(u=r2(wo(Ir,this))))?this.p=new l7e(this,u):this.$j()?this.rk()?r?(this.Bb&Es)!=0?t?this.sk()?this.p=new kg(47,t,this,r):this.p=new kg(5,t,this,r):this.sk()?this.p=new Lg(46,this,r):this.p=new Lg(4,this,r):t?this.sk()?this.p=new kg(49,t,this,r):this.p=new kg(7,t,this,r):this.sk()?this.p=new Lg(48,this,r):this.p=new Lg(6,this,r):(this.Bb&Es)!=0?t?t==fb?this.p=new cd(50,gft,this):this.sk()?this.p=new cd(43,t,this):this.p=new cd(1,t,this):this.sk()?this.p=new ud(42,this):this.p=new ud(0,this):t?t==fb?this.p=new cd(41,gft,this):this.sk()?this.p=new cd(45,t,this):this.p=new cd(3,t,this):this.sk()?this.p=new ud(44,this):this.p=new ud(2,this):Q(o,148)?t==Kx?this.p=new ud(40,this):(this.Bb&512)!=0?(this.Bb&Es)!=0?t?this.p=new cd(9,t,this):this.p=new ud(8,this):t?this.p=new cd(11,t,this):this.p=new ud(10,this):(this.Bb&Es)!=0?t?this.p=new cd(13,t,this):this.p=new ud(12,this):t?this.p=new cd(15,t,this):this.p=new ud(14,this):r?(d=r.t,d>1||d==-1?this.sk()?(this.Bb&Es)!=0?t?this.p=new kg(25,t,this,r):this.p=new Lg(24,this,r):t?this.p=new kg(27,t,this,r):this.p=new Lg(26,this,r):(this.Bb&Es)!=0?t?this.p=new kg(29,t,this,r):this.p=new Lg(28,this,r):t?this.p=new kg(31,t,this,r):this.p=new Lg(30,this,r):this.sk()?(this.Bb&Es)!=0?t?this.p=new kg(33,t,this,r):this.p=new Lg(32,this,r):t?this.p=new kg(35,t,this,r):this.p=new Lg(34,this,r):(this.Bb&Es)!=0?t?this.p=new kg(37,t,this,r):this.p=new Lg(36,this,r):t?this.p=new kg(39,t,this,r):this.p=new Lg(38,this,r)):this.sk()?(this.Bb&Es)!=0?t?this.p=new cd(17,t,this):this.p=new ud(16,this):t?this.p=new cd(19,t,this):this.p=new ud(18,this):(this.Bb&Es)!=0?t?this.p=new cd(21,t,this):this.p=new ud(20,this):t?this.p=new cd(23,t,this):this.p=new ud(22,this):this.qk()?this.sk()?this.p=new Jke(c(o,26),this,r):this.p=new Kne(c(o,26),this,r):Q(o,148)?t==Kx?this.p=new ud(40,this):(this.Bb&Es)!=0?t?this.p=new YRe(n,l,this,(RK(),a==Qt?gme:a==Gs?ame:a==rg?bme:a==nm?dme:a==gr?hme:a==Jv?pme:a==Ps?lme:a==Yu?fme:pY)):this.p=new sLe(c(o,148),n,l,this):t?this.p=new WRe(n,l,this,(RK(),a==Qt?gme:a==Gs?ame:a==rg?bme:a==nm?dme:a==gr?hme:a==Jv?pme:a==Ps?lme:a==Yu?fme:pY)):this.p=new cLe(c(o,148),n,l,this):this.rk()?r?(this.Bb&Es)!=0?this.sk()?this.p=new Zke(c(o,26),this,r):this.p=new Dte(c(o,26),this,r):this.sk()?this.p=new Qke(c(o,26),this,r):this.p=new aB(c(o,26),this,r):(this.Bb&Es)!=0?this.sk()?this.p=new WDe(c(o,26),this):this.p=new Gee(c(o,26),this):this.sk()?this.p=new UDe(c(o,26),this):this.p=new YF(c(o,26),this):this.sk()?r?(this.Bb&Es)!=0?this.p=new eRe(c(o,26),this,r):this.p=new Ate(c(o,26),this,r):(this.Bb&Es)!=0?this.p=new YDe(c(o,26),this):this.p=new Uee(c(o,26),this):r?(this.Bb&Es)!=0?this.p=new tRe(c(o,26),this,r):this.p=new Ote(c(o,26),this,r):(this.Bb&Es)!=0?this.p=new XDe(c(o,26),this):this.p=new w8(c(o,26),this)),this.p},s.Ij=function(){return(this.Bb&Ka)!=0},s.qk=function(){return!1},s.rk=function(){return!1},s.Jj=function(){return(this.Bb&mf)!=0},s.Oj=function(){return N$(this)},s.sk=function(){return!1},s.Kj=function(){return(this.Bb&Es)!=0},s.tk=function(t){this.k=t},s.Lh=function(t){s$(this,t)},s.Ib=function(){return J7(this)},s.e=!1,s.n=0,S(mt,"EStructuralFeatureImpl",449),y(322,449,{105:1,92:1,90:1,34:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,322:1,150:1,449:1,284:1,114:1,115:1,677:1},LN),s._g=function(t,n,i){var r,o;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),!!ase(this);case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return Pt(),(this.Bb&Ka)!=0;case 11:return Pt(),(this.Bb&Iw)!=0;case 12:return Pt(),(this.Bb&vw)!=0;case 13:return this.j;case 14:return SE(this);case 15:return Pt(),(this.Bb&Es)!=0;case 16:return Pt(),(this.Bb&mf)!=0;case 17:return zp(this);case 18:return Pt(),(this.Bb&rc)!=0;case 19:return n?tK(this):sBe(this)}return Nu(this,t-Ft((ot(),Zw)),at((r=c(vt(this,16),26),r||Zw),t),n,i)},s.lh=function(t){var n,i;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return ase(this);case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return(this.Bb&Ka)==0;case 11:return(this.Bb&Iw)!=0;case 12:return(this.Bb&vw)!=0;case 13:return this.j!=null;case 14:return SE(this)!=null;case 15:return(this.Bb&Es)!=0;case 16:return(this.Bb&mf)!=0;case 17:return!!zp(this);case 18:return(this.Bb&rc)!=0;case 19:return!!sBe(this)}return xu(this,t-Ft((ot(),Zw)),at((n=c(vt(this,16),26),n||Zw),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:s$(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:B9e(this,c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 10:cE(this,Be(Fe(n)));return;case 11:aE(this,Be(Fe(n)));return;case 12:sE(this,Be(Fe(n)));return;case 13:ree(this,ln(n));return;case 15:uE(this,Be(Fe(n)));return;case 16:lE(this,Be(Fe(n)));return;case 18:CK(this,Be(Fe(n)));return}qu(this,t-Ft((ot(),Zw)),at((i=c(vt(this,16),26),i||Zw),t),n)},s.zh=function(){return ot(),Zw},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),4),kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:this.b=0,Zp(this,1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 10:cE(this,!0);return;case 11:aE(this,!1);return;case 12:sE(this,!1);return;case 13:this.i=null,NO(this,null);return;case 15:uE(this,!1);return;case 16:lE(this,!1);return;case 18:CK(this,!1);return}$u(this,t-Ft((ot(),Zw)),at((n=c(vt(this,16),26),n||Zw),t))},s.Gh=function(){tK(this),C_(wo((vs(),Ir),this)),ra(this),this.Bb|=1},s.$j=function(){return ase(this)},s.nk=function(t,n){return this.b=0,this.a=null,noe(this,t,n)},s.ok=function(t){B9e(this,t)},s.Ib=function(){var t;return(this.Db&64)!=0?J7(this):(t=new ea(J7(this)),t.a+=" (iD: ",id(t,(this.Bb&rc)!=0),t.a+=")",t.a)},s.b=0,S(mt,"EAttributeImpl",322),y(351,438,{105:1,92:1,90:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,351:1,150:1,114:1,115:1,676:1}),s.uk=function(t){return t.Tg()==this},s.Qg=function(t){return cq(this,t)},s.Rg=function(t,n){this.w=null,this.Db=n<<16|this.Db&255,this.Cb=t},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return I0(this);case 4:return this.zj();case 5:return this.F;case 6:return n?bu(this):j_(this);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),this.A}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 6:return this.Cb&&(i=(o=this.Db>>16,o>=0?cq(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,6,i)}return u=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),u.Nj().Qj(this,$c(this),n-Ft(this.zh()),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 6:return yu(this,null,6,i);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),Fr(this.A,t,i)}return o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!I0(this);case 4:return this.zj()!=null;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!j_(this);case 7:return!!this.A&&this.A.i!=0}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:J8(this,ln(n));return;case 2:LF(this,ln(n));return;case 5:jE(this,ln(n));return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A),!this.A&&(this.A=new gs(Gc,this,7)),Mi(this.A,c(n,14));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),Cft},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,179)&&(c(this.Cb,179).tb=null),kc(this,null);return;case 2:nE(this,null),z_(this,this.D);return;case 5:jE(this,null);return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.yj=function(){var t;return this.G==-1&&(this.G=(t=bu(this),t?wd(t.Mh(),this):-1)),this.G},s.zj=function(){return null},s.Aj=function(){return bu(this)},s.vk=function(){return this.v},s.Bj=function(){return I0(this)},s.Cj=function(){return this.D!=null?this.D:this.B},s.Dj=function(){return this.F},s.wj=function(t){return Qq(this,t)},s.wk=function(t){this.v=t},s.xk=function(t){NKe(this,t)},s.yk=function(t){this.C=t},s.Lh=function(t){J8(this,t)},s.Ib=function(){return a7(this)},s.C=null,s.D=null,s.G=-1,S(mt,"EClassifierImpl",351),y(88,351,{105:1,92:1,90:1,26:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,88:1,351:1,150:1,473:1,114:1,115:1,676:1},UJ),s.uk=function(t){return r_t(this,t.Tg())},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return I0(this);case 4:return null;case 5:return this.F;case 6:return n?bu(this):j_(this);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),this.A;case 8:return Pt(),(this.Bb&256)!=0;case 9:return Pt(),(this.Bb&512)!=0;case 10:return So(this);case 11:return!this.q&&(this.q=new Me(ya,this,11,10)),this.q;case 12:return sv(this);case 13:return S6(this);case 14:return S6(this),this.r;case 15:return sv(this),this.k;case 16:return Zce(this);case 17:return iH(this);case 18:return wf(this);case 19:return z7(this);case 20:return sv(this),this.o;case 21:return!this.s&&(this.s=new Me(us,this,21,17)),this.s;case 22:return dc(this);case 23:return qq(this)}return Nu(this,t-Ft((ot(),eg)),at((r=c(vt(this,16),26),r||eg),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 6:return this.Cb&&(i=(o=this.Db>>16,o>=0?cq(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,6,i);case 11:return!this.q&&(this.q=new Me(ya,this,11,10)),Rc(this.q,t,i);case 21:return!this.s&&(this.s=new Me(us,this,21,17)),Rc(this.s,t,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),eg)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),eg)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 6:return yu(this,null,6,i);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),Fr(this.A,t,i);case 11:return!this.q&&(this.q=new Me(ya,this,11,10)),Fr(this.q,t,i);case 21:return!this.s&&(this.s=new Me(us,this,21,17)),Fr(this.s,t,i);case 22:return Fr(dc(this),t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),eg)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),eg)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!I0(this);case 4:return!1;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!j_(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)!=0;case 9:return(this.Bb&512)!=0;case 10:return!!this.u&&dc(this.u.a).i!=0&&!(this.n&&YK(this.n));case 11:return!!this.q&&this.q.i!=0;case 12:return sv(this).i!=0;case 13:return S6(this).i!=0;case 14:return S6(this),this.r.i!=0;case 15:return sv(this),this.k.i!=0;case 16:return Zce(this).i!=0;case 17:return iH(this).i!=0;case 18:return wf(this).i!=0;case 19:return z7(this).i!=0;case 20:return sv(this),!!this.o;case 21:return!!this.s&&this.s.i!=0;case 22:return!!this.n&&YK(this.n);case 23:return qq(this).i!=0}return xu(this,t-Ft((ot(),eg)),at((n=c(vt(this,16),26),n||eg),t))},s.oh=function(t){var n;return n=this.i==null||this.q&&this.q.i!=0?null:QI(this,t),n||Aue(this,t)},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:J8(this,ln(n));return;case 2:LF(this,ln(n));return;case 5:jE(this,ln(n));return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A),!this.A&&(this.A=new gs(Gc,this,7)),Mi(this.A,c(n,14));return;case 8:roe(this,Be(Fe(n)));return;case 9:ooe(this,Be(Fe(n)));return;case 10:C6(So(this)),Mi(So(this),c(n,14));return;case 11:!this.q&&(this.q=new Me(ya,this,11,10)),Xt(this.q),!this.q&&(this.q=new Me(ya,this,11,10)),Mi(this.q,c(n,14));return;case 21:!this.s&&(this.s=new Me(us,this,21,17)),Xt(this.s),!this.s&&(this.s=new Me(us,this,21,17)),Mi(this.s,c(n,14));return;case 22:Xt(dc(this)),Mi(dc(this),c(n,14));return}qu(this,t-Ft((ot(),eg)),at((i=c(vt(this,16),26),i||eg),t),n)},s.zh=function(){return ot(),eg},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,179)&&(c(this.Cb,179).tb=null),kc(this,null);return;case 2:nE(this,null),z_(this,this.D);return;case 5:jE(this,null);return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A);return;case 8:roe(this,!1);return;case 9:ooe(this,!1);return;case 10:this.u&&C6(this.u);return;case 11:!this.q&&(this.q=new Me(ya,this,11,10)),Xt(this.q);return;case 21:!this.s&&(this.s=new Me(us,this,21,17)),Xt(this.s);return;case 22:this.n&&Xt(this.n);return}$u(this,t-Ft((ot(),eg)),at((n=c(vt(this,16),26),n||eg),t))},s.Gh=function(){var t,n;if(sv(this),S6(this),Zce(this),iH(this),wf(this),z7(this),qq(this),B5(_4t(Ls(this))),this.s)for(t=0,n=this.s.i;t=0;--n)ee(this,n);return Ioe(this,t)},s.Xj=function(){Xt(this)},s.oi=function(t,n){return cKe(this,t,n)},S(ai,"EcoreEList",622),y(496,622,xo,OC),s.ai=function(){return!1},s.aj=function(){return this.c},s.bj=function(){return!1},s.Fk=function(){return!0},s.hi=function(){return!0},s.li=function(t,n){return n},s.ni=function(){return!1},s.c=0,S(ai,"EObjectEList",496),y(85,496,xo,qi),s.bj=function(){return!0},s.Dk=function(){return!1},s.rk=function(){return!0},S(ai,"EObjectContainmentEList",85),y(545,85,xo,U9),s.ci=function(){this.b=!0},s.fj=function(){return this.b},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.b,this.b=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.b=!1},s.b=!1,S(ai,"EObjectContainmentEList/Unsettable",545),y(1140,545,xo,GRe),s.ii=function(t,n){var i,r;return i=c(t6(this,t,n),87),Qs(this.e)&&Q3(this,new QC(this.a,7,(ot(),Ift),Ce(n),(r=i.c,Q(r,88)?c(r,26):Ea),t)),i},s.jj=function(t,n){return a9t(this,c(t,87),n)},s.kj=function(t,n){return u9t(this,c(t,87),n)},s.lj=function(t,n,i){return l7t(this,c(t,87),c(n,87),i)},s.Zi=function(t,n,i,r,o){switch(t){case 3:return k5(this,t,n,i,r,this.i>1);case 5:return k5(this,t,n,i,r,this.i-c(i,15).gc()>0);default:return new Ah(this.e,t,this.c,n,i,r,!0)}},s.ij=function(){return!0},s.fj=function(){return YK(this)},s.Xj=function(){Xt(this)},S(mt,"EClassImpl/1",1140),y(1154,1153,Ffe),s.ui=function(t){var n,i,r,o,u,a,l;if(i=t.xi(),i!=8){if(r=G9t(t),r==0)switch(i){case 1:case 9:{l=t.Bi(),l!=null&&(n=Ls(c(l,473)),!n.c&&(n.c=new G3),_O(n.c,t.Ai())),a=t.zi(),a!=null&&(o=c(a,473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),on(n.c,c(t.Ai(),26))));break}case 3:{a=t.zi(),a!=null&&(o=c(a,473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),on(n.c,c(t.Ai(),26))));break}case 5:{if(a=t.zi(),a!=null)for(u=c(a,14).Kc();u.Ob();)o=c(u.Pb(),473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),on(n.c,c(t.Ai(),26)));break}case 4:{l=t.Bi(),l!=null&&(o=c(l,473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),_O(n.c,t.Ai())));break}case 6:{if(l=t.Bi(),l!=null)for(u=c(l,14).Kc();u.Ob();)o=c(u.Pb(),473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),_O(n.c,t.Ai()));break}}this.Hk(r)}},s.Hk=function(t){VWe(this,t)},s.b=63,S(mt,"ESuperAdapter",1154),y(1155,1154,Ffe,rAe),s.Hk=function(t){lw(this,t)},S(mt,"EClassImpl/10",1155),y(1144,696,xo),s.Vh=function(t,n){return wq(this,t,n)},s.Wh=function(t){return Kze(this,t)},s.Xh=function(t,n){MI(this,t,n)},s.Yh=function(t){UC(this,t)},s.pi=function(t){return Lie(this,t)},s.mi=function(t,n){return L$(this,t,n)},s.lk=function(t,n){throw V(new sn)},s.Zh=function(){return new Gy(this)},s.$h=function(){return new vC(this)},s._h=function(t){return lI(this,t)},s.mk=function(t,n){throw V(new sn)},s.Wj=function(t){return this},s.fj=function(){return this.i!=0},s.Wb=function(t){throw V(new sn)},s.Xj=function(){throw V(new sn)},S(ai,"EcoreEList/UnmodifiableEList",1144),y(319,1144,xo,Im),s.ni=function(){return!1},S(ai,"EcoreEList/UnmodifiableEList/FastCompare",319),y(1147,319,xo,jqe),s.Xc=function(t){var n,i,r;if(Q(t,170)&&(n=c(t,170),i=n.aj(),i!=-1)){for(r=this.i;i4)if(this.wj(t)){if(this.rk()){if(r=c(t,49),i=r.Ug(),l=i==this.b&&(this.Dk()?r.Og(r.Vg(),c(at(Xc(this.b),this.aj()).Yj(),26).Bj())==Xr(c(at(Xc(this.b),this.aj()),18)).n:-1-r.Vg()==this.aj()),this.Ek()&&!l&&!i&&r.Zg()){for(o=0;o1||r==-1)):!1},s.Dk=function(){var t,n,i;return n=at(Xc(this.b),this.aj()),Q(n,99)?(t=c(n,18),i=Xr(t),!!i):!1},s.Ek=function(){var t,n;return n=at(Xc(this.b),this.aj()),Q(n,99)?(t=c(n,18),(t.Bb&Vr)!=0):!1},s.Xc=function(t){var n,i,r,o;if(r=this.Qi(t),r>=0)return r;if(this.Fk()){for(i=0,o=this.Vi();i=0;--t)sT(this,t,this.Oi(t));return this.Wi()},s.Qc=function(t){var n;if(this.Ek())for(n=this.Vi()-1;n>=0;--n)sT(this,n,this.Oi(n));return this.Xi(t)},s.Xj=function(){C6(this)},s.oi=function(t,n){return zBe(this,t,n)},S(ai,"DelegatingEcoreEList",742),y(1150,742,qfe,ske),s.Hi=function(t,n){D3t(this,t,c(n,26))},s.Ii=function(t){C2t(this,c(t,26))},s.Oi=function(t){var n,i;return n=c(ee(dc(this.a),t),87),i=n.c,Q(i,88)?c(i,26):(ot(),Ea)},s.Ti=function(t){var n,i;return n=c(hw(dc(this.a),t),87),i=n.c,Q(i,88)?c(i,26):(ot(),Ea)},s.Ui=function(t,n){return k8t(this,t,c(n,26))},s.ai=function(){return!1},s.Zi=function(t,n,i,r,o){return null},s.Ji=function(){return new cAe(this)},s.Ki=function(){Xt(dc(this.a))},s.Li=function(t){return yHe(this,t)},s.Mi=function(t){var n,i;for(i=t.Kc();i.Ob();)if(n=i.Pb(),!yHe(this,n))return!1;return!0},s.Ni=function(t){var n,i,r;if(Q(t,15)&&(r=c(t,15),r.gc()==dc(this.a).i)){for(n=r.Kc(),i=new $t(this);n.Ob();)if(le(n.Pb())!==le(Vt(i)))return!1;return!0}return!1},s.Pi=function(){var t,n,i,r,o;for(i=1,n=new $t(dc(this.a));n.e!=n.i.gc();)t=c(Vt(n),87),r=(o=t.c,Q(o,88)?c(o,26):(ot(),Ea)),i=31*i+(r?Xb(r):0);return i},s.Qi=function(t){var n,i,r,o;for(r=0,i=new $t(dc(this.a));i.e!=i.i.gc();){if(n=c(Vt(i),87),le(t)===le((o=n.c,Q(o,88)?c(o,26):(ot(),Ea))))return r;++r}return-1},s.Ri=function(){return dc(this.a).i==0},s.Si=function(){return null},s.Vi=function(){return dc(this.a).i},s.Wi=function(){var t,n,i,r,o,u;for(u=dc(this.a).i,o=oe(xt,xe,1,u,5,1),i=0,n=new $t(dc(this.a));n.e!=n.i.gc();)t=c(Vt(n),87),o[i++]=(r=t.c,Q(r,88)?c(r,26):(ot(),Ea));return o},s.Xi=function(t){var n,i,r,o,u,a,l;for(l=dc(this.a).i,t.lengthl&&vi(t,l,null),r=0,i=new $t(dc(this.a));i.e!=i.i.gc();)n=c(Vt(i),87),u=(a=n.c,Q(a,88)?c(a,26):(ot(),Ea)),vi(t,r++,u);return t},s.Yi=function(){var t,n,i,r,o;for(o=new nd,o.a+="[",t=dc(this.a),n=0,r=dc(this.a).i;n>16,o>=0?cq(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,6,i);case 9:return!this.a&&(this.a=new Me(Yh,this,9,5)),Rc(this.a,t,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),tg)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),tg)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 6:return yu(this,null,6,i);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),Fr(this.A,t,i);case 9:return!this.a&&(this.a=new Me(Yh,this,9,5)),Fr(this.a,t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),tg)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),tg)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!I0(this);case 4:return!!zre(this);case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!j_(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)==0;case 9:return!!this.a&&this.a.i!=0}return xu(this,t-Ft((ot(),tg)),at((n=c(vt(this,16),26),n||tg),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:J8(this,ln(n));return;case 2:LF(this,ln(n));return;case 5:jE(this,ln(n));return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A),!this.A&&(this.A=new gs(Gc,this,7)),Mi(this.A,c(n,14));return;case 8:i7(this,Be(Fe(n)));return;case 9:!this.a&&(this.a=new Me(Yh,this,9,5)),Xt(this.a),!this.a&&(this.a=new Me(Yh,this,9,5)),Mi(this.a,c(n,14));return}qu(this,t-Ft((ot(),tg)),at((i=c(vt(this,16),26),i||tg),t),n)},s.zh=function(){return ot(),tg},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,179)&&(c(this.Cb,179).tb=null),kc(this,null);return;case 2:nE(this,null),z_(this,this.D);return;case 5:jE(this,null);return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A);return;case 8:i7(this,!0);return;case 9:!this.a&&(this.a=new Me(Yh,this,9,5)),Xt(this.a);return}$u(this,t-Ft((ot(),tg)),at((n=c(vt(this,16),26),n||tg),t))},s.Gh=function(){var t,n;if(this.a)for(t=0,n=this.a.i;t>16==5?c(this.Cb,671):null}return Nu(this,t-Ft((ot(),xd)),at((r=c(vt(this,16),26),r||xd),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 5:return this.Cb&&(i=(o=this.Db>>16,o>=0?hVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,5,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),xd)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),xd)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 5:return yu(this,null,5,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),xd)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),xd)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.d!=0;case 3:return!!this.b;case 4:return this.c!=null;case 5:return!!(this.Db>>16==5&&c(this.Cb,671))}return xu(this,t-Ft((ot(),xd)),at((n=c(vt(this,16),26),n||xd),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:q$(this,c(n,19).a);return;case 3:sUe(this,c(n,1940));return;case 4:z$(this,ln(n));return}qu(this,t-Ft((ot(),xd)),at((i=c(vt(this,16),26),i||xd),t),n)},s.zh=function(){return ot(),xd},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:q$(this,0);return;case 3:sUe(this,null);return;case 4:z$(this,null);return}$u(this,t-Ft((ot(),xd)),at((n=c(vt(this,16),26),n||xd),t))},s.Ib=function(){var t;return t=this.c,t??this.zb},s.b=null,s.c=null,s.d=0,S(mt,"EEnumLiteralImpl",573);var Fzt=pi(mt,"EFactoryImpl/InternalEDateTimeFormat");y(489,1,{2015:1},VM),S(mt,"EFactoryImpl/1ClientInternalEDateTimeFormat",489),y(241,115,{105:1,92:1,90:1,87:1,56:1,108:1,49:1,97:1,241:1,114:1,115:1},Nb),s.Sg=function(t,n,i){var r;return i=yu(this,t,n,i),this.e&&Q(t,170)&&(r=H7(this,this.e),r!=this.c&&(i=AE(this,r,i))),i},s._g=function(t,n,i){var r;switch(t){case 0:return this.f;case 1:return!this.d&&(this.d=new qi(oo,this,1)),this.d;case 2:return n?eD(this):this.c;case 3:return this.b;case 4:return this.e;case 5:return n?QK(this):this.a}return Nu(this,t-Ft((ot(),sp)),at((r=c(vt(this,16),26),r||sp),t),n,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return lHe(this,null,i);case 1:return!this.d&&(this.d=new qi(oo,this,1)),Fr(this.d,t,i);case 3:return aHe(this,null,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),sp)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),sp)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.f;case 1:return!!this.d&&this.d.i!=0;case 2:return!!this.c;case 3:return!!this.b;case 4:return!!this.e;case 5:return!!this.a}return xu(this,t-Ft((ot(),sp)),at((n=c(vt(this,16),26),n||sp),t))},s.sh=function(t,n){var i;switch(t){case 0:AVe(this,c(n,87));return;case 1:!this.d&&(this.d=new qi(oo,this,1)),Xt(this.d),!this.d&&(this.d=new qi(oo,this,1)),Mi(this.d,c(n,14));return;case 3:Sce(this,c(n,87));return;case 4:$ce(this,c(n,836));return;case 5:B_(this,c(n,138));return}qu(this,t-Ft((ot(),sp)),at((i=c(vt(this,16),26),i||sp),t),n)},s.zh=function(){return ot(),sp},s.Bh=function(t){var n;switch(t){case 0:AVe(this,null);return;case 1:!this.d&&(this.d=new qi(oo,this,1)),Xt(this.d);return;case 3:Sce(this,null);return;case 4:$ce(this,null);return;case 5:B_(this,null);return}$u(this,t-Ft((ot(),sp)),at((n=c(vt(this,16),26),n||sp),t))},s.Ib=function(){var t;return t=new lu(Ba(this)),t.a+=" (expression: ",sH(this,t),t.a+=")",t.a};var ume;S(mt,"EGenericTypeImpl",241),y(1969,1964,sk),s.Xh=function(t,n){rke(this,t,n)},s.lk=function(t,n){return rke(this,this.gc(),t),n},s.pi=function(t){return hl(this.Gi(),t)},s.Zh=function(){return this.$h()},s.Gi=function(){return new lAe(this)},s.$h=function(){return this._h(0)},s._h=function(t){return this.Gi().Zc(t)},s.mk=function(t,n){return nw(this,t,!0),n},s.ii=function(t,n){var i,r;return r=uq(this,n),i=this.Zc(t),i.Rb(r),r},s.ji=function(t,n){var i;nw(this,n,!0),i=this.Zc(t),i.Rb(n)},S(ai,"AbstractSequentialInternalEList",1969),y(486,1969,sk,mC),s.pi=function(t){return hl(this.Gi(),t)},s.Zh=function(){return this.b==null?(rd(),rd(),Yj):this.Jk()},s.Gi=function(){return new j7e(this.a,this.b)},s.$h=function(){return this.b==null?(rd(),rd(),Yj):this.Jk()},s._h=function(t){var n,i;if(this.b==null){if(t<0||t>1)throw V(new ho(J6+t+", size=0"));return rd(),rd(),Yj}for(i=this.Jk(),n=0;n0;)if(n=this.c[--this.d],(!this.e||n.Gj()!=x4||n.aj()!=0)&&(!this.Mk()||this.b.mh(n))){if(u=this.b.bh(n,this.Lk()),this.f=(Wr(),c(n,66).Oj()),this.f||n.$j()){if(this.Lk()?(r=c(u,15),this.k=r):(r=c(u,69),this.k=this.j=r),Q(this.k,54)?(this.o=this.k.gc(),this.n=this.o):this.p=this.j?this.j._h(this.k.gc()):this.k.Zc(this.k.gc()),this.p?EGe(this,this.p):RGe(this))return o=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?(t=c(o,72),t.ak(),i=t.dd(),this.i=i):(i=o,this.i=i),this.g=-3,!0}else if(u!=null)return this.k=null,this.p=null,i=u,this.i=i,this.g=-2,!0}return this.k=null,this.p=null,this.g=-1,!1}else return o=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?(t=c(o,72),t.ak(),i=t.dd(),this.i=i):(i=o,this.i=i),this.g=-3,!0}},s.Pb=function(){return UO(this)},s.Tb=function(){return this.a},s.Ub=function(){var t;if(this.g<-1||this.Sb())return--this.a,this.g=0,t=this.i,this.Sb(),t;throw V(new tc)},s.Vb=function(){return this.a-1},s.Qb=function(){throw V(new sn)},s.Lk=function(){return!1},s.Wb=function(t){throw V(new sn)},s.Mk=function(){return!0},s.a=0,s.d=0,s.f=!1,s.g=0,s.n=0,s.o=0;var Yj;S(ai,"EContentsEList/FeatureIteratorImpl",279),y(697,279,uk,Vee),s.Lk=function(){return!0},S(ai,"EContentsEList/ResolvingFeatureIteratorImpl",697),y(1157,697,uk,GDe),s.Mk=function(){return!1},S(mt,"ENamedElementImpl/1/1",1157),y(1158,279,uk,VDe),s.Mk=function(){return!1},S(mt,"ENamedElementImpl/1/2",1158),y(36,143,xT,Up,b$,sr,A$,Ah,La,Yie,yNe,Xie,_Ne,yie,ENe,Zie,SNe,_ie,PNe,Jie,MNe,C5,QC,UB,Qie,CNe,Eie,INe),s._i=function(){return kie(this)},s.gj=function(){var t;return t=kie(this),t?t.zj():null},s.yi=function(t){return this.b==-1&&this.a&&(this.b=this.c.Xg(this.a.aj(),this.a.Gj())),this.c.Og(this.b,t)},s.Ai=function(){return this.c},s.hj=function(){var t;return t=kie(this),t?t.Kj():!1},s.b=-1,S(mt,"ENotificationImpl",36),y(399,284,{105:1,92:1,90:1,147:1,191:1,56:1,59:1,108:1,472:1,49:1,97:1,150:1,399:1,284:1,114:1,115:1},NN),s.Qg=function(t){return bVe(this,t)},s._g=function(t,n,i){var r,o,u;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),u=this.t,u>1||u==-1;case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?c(this.Cb,26):null;case 11:return!this.d&&(this.d=new gs(Gc,this,11)),this.d;case 12:return!this.c&&(this.c=new Me(cp,this,12,10)),this.c;case 13:return!this.a&&(this.a=new PC(this,this)),this.a;case 14:return Ns(this)}return Nu(this,t-Ft((ot(),Ld)),at((r=c(vt(this,16),26),r||Ld),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 10:return this.Cb&&(i=(o=this.Db>>16,o>=0?bVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,10,i);case 12:return!this.c&&(this.c=new Me(cp,this,12,10)),Rc(this.c,t,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),Ld)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),Ld)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i);case 10:return yu(this,null,10,i);case 11:return!this.d&&(this.d=new gs(Gc,this,11)),Fr(this.d,t,i);case 12:return!this.c&&(this.c=new Me(cp,this,12,10)),Fr(this.c,t,i);case 14:return Fr(Ns(this),t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),Ld)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),Ld)),t,i)},s.lh=function(t){var n,i,r;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return r=this.t,r>1||r==-1;case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return!!(this.Db>>16==10&&c(this.Cb,26));case 11:return!!this.d&&this.d.i!=0;case 12:return!!this.c&&this.c.i!=0;case 13:return!!this.a&&Ns(this.a.a).i!=0&&!(this.b&&XK(this.b));case 14:return!!this.b&&XK(this.b)}return xu(this,t-Ft((ot(),Ld)),at((n=c(vt(this,16),26),n||Ld),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:Zp(this,c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 11:!this.d&&(this.d=new gs(Gc,this,11)),Xt(this.d),!this.d&&(this.d=new gs(Gc,this,11)),Mi(this.d,c(n,14));return;case 12:!this.c&&(this.c=new Me(cp,this,12,10)),Xt(this.c),!this.c&&(this.c=new Me(cp,this,12,10)),Mi(this.c,c(n,14));return;case 13:!this.a&&(this.a=new PC(this,this)),C6(this.a),!this.a&&(this.a=new PC(this,this)),Mi(this.a,c(n,14));return;case 14:Xt(Ns(this)),Mi(Ns(this),c(n,14));return}qu(this,t-Ft((ot(),Ld)),at((i=c(vt(this,16),26),i||Ld),t),n)},s.zh=function(){return ot(),Ld},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:Zp(this,1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 11:!this.d&&(this.d=new gs(Gc,this,11)),Xt(this.d);return;case 12:!this.c&&(this.c=new Me(cp,this,12,10)),Xt(this.c);return;case 13:this.a&&C6(this.a);return;case 14:this.b&&Xt(this.b);return}$u(this,t-Ft((ot(),Ld)),at((n=c(vt(this,16),26),n||Ld),t))},s.Gh=function(){var t,n;if(this.c)for(t=0,n=this.c.i;tl&&vi(t,l,null),r=0,i=new $t(Ns(this.a));i.e!=i.i.gc();)n=c(Vt(i),87),u=(a=n.c,a||(ot(),Ql)),vi(t,r++,u);return t},s.Yi=function(){var t,n,i,r,o;for(o=new nd,o.a+="[",t=Ns(this.a),n=0,r=Ns(this.a).i;n1);case 5:return k5(this,t,n,i,r,this.i-c(i,15).gc()>0);default:return new Ah(this.e,t,this.c,n,i,r,!0)}},s.ij=function(){return!0},s.fj=function(){return XK(this)},s.Xj=function(){Xt(this)},S(mt,"EOperationImpl/2",1341),y(498,1,{1938:1,498:1},a7e),S(mt,"EPackageImpl/1",498),y(16,85,xo,Me),s.zk=function(){return this.d},s.Ak=function(){return this.b},s.Dk=function(){return!0},s.b=0,S(ai,"EObjectContainmentWithInverseEList",16),y(353,16,xo,Uy),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentWithInverseEList/Resolving",353),y(298,353,xo,Kp),s.ci=function(){this.a.tb=null},S(mt,"EPackageImpl/2",298),y(1228,1,{},Pmt),S(mt,"EPackageImpl/3",1228),y(718,43,fv,UQ),s._b=function(t){return fr(t)?WB(this,t):!!Po(this.f,t)},S(mt,"EPackageRegistryImpl",718),y(509,284,{105:1,92:1,90:1,147:1,191:1,56:1,2017:1,108:1,472:1,49:1,97:1,150:1,509:1,284:1,114:1,115:1},FN),s.Qg=function(t){return pVe(this,t)},s._g=function(t,n,i){var r,o,u;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),u=this.t,u>1||u==-1;case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?c(this.Cb,59):null}return Nu(this,t-Ft((ot(),em)),at((r=c(vt(this,16),26),r||em),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 10:return this.Cb&&(i=(o=this.Db>>16,o>=0?pVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,10,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),em)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),em)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i);case 10:return yu(this,null,10,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),em)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),em)),t,i)},s.lh=function(t){var n,i,r;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return r=this.t,r>1||r==-1;case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return!!(this.Db>>16==10&&c(this.Cb,59))}return xu(this,t-Ft((ot(),em)),at((n=c(vt(this,16),26),n||em),t))},s.zh=function(){return ot(),em},S(mt,"EParameterImpl",509),y(99,449,{105:1,92:1,90:1,147:1,191:1,56:1,18:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,99:1,449:1,284:1,114:1,115:1,677:1},Xee),s._g=function(t,n,i){var r,o,u,a;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),a=this.t,a>1||a==-1;case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return Pt(),(this.Bb&Ka)!=0;case 11:return Pt(),(this.Bb&Iw)!=0;case 12:return Pt(),(this.Bb&vw)!=0;case 13:return this.j;case 14:return SE(this);case 15:return Pt(),(this.Bb&Es)!=0;case 16:return Pt(),(this.Bb&mf)!=0;case 17:return zp(this);case 18:return Pt(),(this.Bb&rc)!=0;case 19:return Pt(),u=Xr(this),!!(u&&(u.Bb&rc)!=0);case 20:return Pt(),(this.Bb&Vr)!=0;case 21:return n?Xr(this):this.b;case 22:return n?kre(this):YFe(this);case 23:return!this.a&&(this.a=new Om(Jw,this,23)),this.a}return Nu(this,t-Ft((ot(),Uv)),at((r=c(vt(this,16),26),r||Uv),t),n,i)},s.lh=function(t){var n,i,r,o;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return o=this.t,o>1||o==-1;case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return(this.Bb&Ka)==0;case 11:return(this.Bb&Iw)!=0;case 12:return(this.Bb&vw)!=0;case 13:return this.j!=null;case 14:return SE(this)!=null;case 15:return(this.Bb&Es)!=0;case 16:return(this.Bb&mf)!=0;case 17:return!!zp(this);case 18:return(this.Bb&rc)!=0;case 19:return r=Xr(this),!!r&&(r.Bb&rc)!=0;case 20:return(this.Bb&Vr)==0;case 21:return!!this.b;case 22:return!!YFe(this);case 23:return!!this.a&&this.a.i!=0}return xu(this,t-Ft((ot(),Uv)),at((n=c(vt(this,16),26),n||Uv),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:s$(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:Zp(this,c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 10:cE(this,Be(Fe(n)));return;case 11:aE(this,Be(Fe(n)));return;case 12:sE(this,Be(Fe(n)));return;case 13:ree(this,ln(n));return;case 15:uE(this,Be(Fe(n)));return;case 16:lE(this,Be(Fe(n)));return;case 18:F6t(this,Be(Fe(n)));return;case 20:loe(this,Be(Fe(n)));return;case 21:are(this,c(n,18));return;case 23:!this.a&&(this.a=new Om(Jw,this,23)),Xt(this.a),!this.a&&(this.a=new Om(Jw,this,23)),Mi(this.a,c(n,14));return}qu(this,t-Ft((ot(),Uv)),at((i=c(vt(this,16),26),i||Uv),t),n)},s.zh=function(){return ot(),Uv},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),4),kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:Zp(this,1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 10:cE(this,!0);return;case 11:aE(this,!1);return;case 12:sE(this,!1);return;case 13:this.i=null,NO(this,null);return;case 15:uE(this,!1);return;case 16:lE(this,!1);return;case 18:aoe(this,!1),Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),2);return;case 20:loe(this,!0);return;case 21:are(this,null);return;case 23:!this.a&&(this.a=new Om(Jw,this,23)),Xt(this.a);return}$u(this,t-Ft((ot(),Uv)),at((n=c(vt(this,16),26),n||Uv),t))},s.Gh=function(){kre(this),C_(wo((vs(),Ir),this)),ra(this),this.Bb|=1},s.Lj=function(){return Xr(this)},s.qk=function(){var t;return t=Xr(this),!!t&&(t.Bb&rc)!=0},s.rk=function(){return(this.Bb&rc)!=0},s.sk=function(){return(this.Bb&Vr)!=0},s.nk=function(t,n){return this.c=null,noe(this,t,n)},s.Ib=function(){var t;return(this.Db&64)!=0?J7(this):(t=new ea(J7(this)),t.a+=" (containment: ",id(t,(this.Bb&rc)!=0),t.a+=", resolveProxies: ",id(t,(this.Bb&Vr)!=0),t.a+=")",t.a)},S(mt,"EReferenceImpl",99),y(548,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,548:1,114:1,115:1},D6e),s.Fb=function(t){return this===t},s.cd=function(){return this.b},s.dd=function(){return this.c},s.Hb=function(){return Xb(this)},s.Uh=function(t){H4t(this,ln(t))},s.ed=function(t){return O4t(this,ln(t))},s._g=function(t,n,i){var r;switch(t){case 0:return this.b;case 1:return this.c}return Nu(this,t-Ft((ot(),Ur)),at((r=c(vt(this,16),26),r||Ur),t),n,i)},s.lh=function(t){var n;switch(t){case 0:return this.b!=null;case 1:return this.c!=null}return xu(this,t-Ft((ot(),Ur)),at((n=c(vt(this,16),26),n||Ur),t))},s.sh=function(t,n){var i;switch(t){case 0:z4t(this,ln(n));return;case 1:cre(this,ln(n));return}qu(this,t-Ft((ot(),Ur)),at((i=c(vt(this,16),26),i||Ur),t),n)},s.zh=function(){return ot(),Ur},s.Bh=function(t){var n;switch(t){case 0:ore(this,null);return;case 1:cre(this,null);return}$u(this,t-Ft((ot(),Ur)),at((n=c(vt(this,16),26),n||Ur),t))},s.Sh=function(){var t;return this.a==-1&&(t=this.b,this.a=t==null?0:md(t)),this.a},s.Th=function(t){this.a=t},s.Ib=function(){var t;return(this.Db&64)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (key: ",co(t,this.b),t.a+=", value: ",co(t,this.c),t.a+=")",t.a)},s.a=-1,s.b=null,s.c=null;var ec=S(mt,"EStringToStringMapEntryImpl",548),Nft=pi(ai,"FeatureMap/Entry/Internal");y(565,1,ak),s.Ok=function(t){return this.Pk(c(t,49))},s.Pk=function(t){return this.Ok(t)},s.Fb=function(t){var n,i;return this===t?!0:Q(t,72)?(n=c(t,72),n.ak()==this.c?(i=this.dd(),i==null?n.dd()==null:$n(i,n.dd())):!1):!1},s.ak=function(){return this.c},s.Hb=function(){var t;return t=this.dd(),fi(this.c)^(t==null?0:fi(t))},s.Ib=function(){var t,n;return t=this.c,n=bu(t.Hj()).Ph(),t.ne(),(n!=null&&n.length!=0?n+":"+t.ne():t.ne())+"="+this.dd()},S(mt,"EStructuralFeatureImpl/BasicFeatureMapEntry",565),y(776,565,ak,ote),s.Pk=function(t){return new ote(this.c,t)},s.dd=function(){return this.a},s.Qk=function(t,n,i){return cTt(this,t,this.a,n,i)},s.Rk=function(t,n,i){return sTt(this,t,this.a,n,i)},S(mt,"EStructuralFeatureImpl/ContainmentUpdatingFeatureMapEntry",776),y(1314,1,{},l7e),s.Pj=function(t,n,i,r,o){var u;return u=c(x_(t,this.b),215),u.nl(this.a).Wj(r)},s.Qj=function(t,n,i,r,o){var u;return u=c(x_(t,this.b),215),u.el(this.a,r,o)},s.Rj=function(t,n,i,r,o){var u;return u=c(x_(t,this.b),215),u.fl(this.a,r,o)},s.Sj=function(t,n,i){var r;return r=c(x_(t,this.b),215),r.nl(this.a).fj()},s.Tj=function(t,n,i,r){var o;o=c(x_(t,this.b),215),o.nl(this.a).Wb(r)},s.Uj=function(t,n,i){return c(x_(t,this.b),215).nl(this.a)},s.Vj=function(t,n,i){var r;r=c(x_(t,this.b),215),r.nl(this.a).Xj()},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateFeatureMapDelegator",1314),y(89,1,{},cd,kg,ud,Lg),s.Pj=function(t,n,i,r,o){var u;if(u=n.Ch(i),u==null&&n.Dh(i,u=lD(this,t)),!o)switch(this.e){case 50:case 41:return c(u,589).sj();case 40:return c(u,215).kl()}return u},s.Qj=function(t,n,i,r,o){var u,a;return a=n.Ch(i),a==null&&n.Dh(i,a=lD(this,t)),u=c(a,69).lk(r,o),u},s.Rj=function(t,n,i,r,o){var u;return u=n.Ch(i),u!=null&&(o=c(u,69).mk(r,o)),o},s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null&&c(r,76).fj()},s.Tj=function(t,n,i,r){var o;o=c(n.Ch(i),76),!o&&n.Dh(i,o=lD(this,t)),o.Wb(r)},s.Uj=function(t,n,i){var r,o;return o=n.Ch(i),o==null&&n.Dh(i,o=lD(this,t)),Q(o,76)?c(o,76):(r=c(n.Ch(i),15),new aAe(r))},s.Vj=function(t,n,i){var r;r=c(n.Ch(i),76),!r&&n.Dh(i,r=lD(this,t)),r.Xj()},s.b=0,s.e=0,S(mt,"EStructuralFeatureImpl/InternalSettingDelegateMany",89),y(504,1,{}),s.Qj=function(t,n,i,r,o){throw V(new sn)},s.Rj=function(t,n,i,r,o){throw V(new sn)},s.Uj=function(t,n,i){return new oLe(this,t,n,i)};var sh;S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingle",504),y(1331,1,qV,oLe),s.Wj=function(t){return this.a.Pj(this.c,this.d,this.b,t,!0)},s.fj=function(){return this.a.Sj(this.c,this.d,this.b)},s.Wb=function(t){this.a.Tj(this.c,this.d,this.b,t)},s.Xj=function(){this.a.Vj(this.c,this.d,this.b)},s.b=0,S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingle/1",1331),y(769,504,{},Kne),s.Pj=function(t,n,i,r,o){return Wq(t,t.eh(),t.Vg())==this.b?this.sk()&&r?Dq(t):t.eh():null},s.Qj=function(t,n,i,r,o){var u,a;return t.eh()&&(o=(u=t.Vg(),u>=0?t.Qg(o):t.eh().ih(t,-1-u,null,o))),a=di(t.Tg(),this.e),t.Sg(r,a,o)},s.Rj=function(t,n,i,r,o){var u;return u=di(t.Tg(),this.e),t.Sg(null,u,o)},s.Sj=function(t,n,i){var r;return r=di(t.Tg(),this.e),!!t.eh()&&t.Vg()==r},s.Tj=function(t,n,i,r){var o,u,a,l,d;if(r!=null&&!Qq(this.a,r))throw V(new e_(lk+(Q(r,56)?_ce(c(r,56).Tg()):Vie(Fs(r)))+fk+this.a+"'"));if(o=t.eh(),a=di(t.Tg(),this.e),le(r)!==le(o)||t.Vg()!=a&&r!=null){if(gE(t,c(r,56)))throw V(new St(Y6+t.Ib()));d=null,o&&(d=(u=t.Vg(),u>=0?t.Qg(d):t.eh().ih(t,-1-u,null,d))),l=c(r,49),l&&(d=l.gh(t,di(l.Tg(),this.b),null,d)),d=t.Sg(l,a,d),d&&d.Fi()}else t.Lg()&&t.Mg()&&Bn(t,new sr(t,1,a,r,r))},s.Vj=function(t,n,i){var r,o,u,a;r=t.eh(),r?(a=(o=t.Vg(),o>=0?t.Qg(null):t.eh().ih(t,-1-o,null,null)),u=di(t.Tg(),this.e),a=t.Sg(null,u,a),a&&a.Fi()):t.Lg()&&t.Mg()&&Bn(t,new C5(t,1,this.e,null,null))},s.sk=function(){return!1},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainer",769),y(1315,769,{},Jke),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainerResolving",1315),y(563,504,{}),s.Pj=function(t,n,i,r,o){var u;return u=n.Ch(i),u==null?this.b:le(u)===le(sh)?null:u},s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null&&(le(r)===le(sh)||!$n(r,this.b))},s.Tj=function(t,n,i,r){var o,u;t.Lg()&&t.Mg()?(o=(u=n.Ch(i),u==null?this.b:le(u)===le(sh)?null:u),r==null?this.c!=null?(n.Dh(i,null),r=this.b):this.b!=null?n.Dh(i,sh):n.Dh(i,null):(this.Sk(r),n.Dh(i,r)),Bn(t,this.d.Tk(t,1,this.e,o,r))):r==null?this.c!=null?n.Dh(i,null):this.b!=null?n.Dh(i,sh):n.Dh(i,null):(this.Sk(r),n.Dh(i,r))},s.Vj=function(t,n,i){var r,o;t.Lg()&&t.Mg()?(r=(o=n.Ch(i),o==null?this.b:le(o)===le(sh)?null:o),n.Eh(i),Bn(t,this.d.Tk(t,1,this.e,r,this.b))):n.Eh(i)},s.Sk=function(t){throw V(new vAe)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData",563),y(_v,1,{},k6e),s.Tk=function(t,n,i,r,o){return new C5(t,n,i,r,o)},s.Uk=function(t,n,i,r,o,u){return new UB(t,n,i,r,o,u)};var ame,lme,fme,hme,dme,gme,bme,pY,pme;S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator",_v),y(1332,_v,{},R6e),s.Tk=function(t,n,i,r,o){return new Eie(t,n,i,Be(Fe(r)),Be(Fe(o)))},s.Uk=function(t,n,i,r,o,u){return new INe(t,n,i,Be(Fe(r)),Be(Fe(o)),u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/1",1332),y(1333,_v,{},x6e),s.Tk=function(t,n,i,r,o){return new Yie(t,n,i,c(r,217).a,c(o,217).a)},s.Uk=function(t,n,i,r,o,u){return new yNe(t,n,i,c(r,217).a,c(o,217).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/2",1333),y(1334,_v,{},L6e),s.Tk=function(t,n,i,r,o){return new Xie(t,n,i,c(r,172).a,c(o,172).a)},s.Uk=function(t,n,i,r,o,u){return new _Ne(t,n,i,c(r,172).a,c(o,172).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/3",1334),y(1335,_v,{},N6e),s.Tk=function(t,n,i,r,o){return new yie(t,n,i,ge(Te(r)),ge(Te(o)))},s.Uk=function(t,n,i,r,o,u){return new ENe(t,n,i,ge(Te(r)),ge(Te(o)),u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/4",1335),y(1336,_v,{},F6e),s.Tk=function(t,n,i,r,o){return new Zie(t,n,i,c(r,155).a,c(o,155).a)},s.Uk=function(t,n,i,r,o,u){return new SNe(t,n,i,c(r,155).a,c(o,155).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/5",1336),y(1337,_v,{},B6e),s.Tk=function(t,n,i,r,o){return new _ie(t,n,i,c(r,19).a,c(o,19).a)},s.Uk=function(t,n,i,r,o,u){return new PNe(t,n,i,c(r,19).a,c(o,19).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/6",1337),y(1338,_v,{},$6e),s.Tk=function(t,n,i,r,o){return new Jie(t,n,i,c(r,162).a,c(o,162).a)},s.Uk=function(t,n,i,r,o,u){return new MNe(t,n,i,c(r,162).a,c(o,162).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/7",1338),y(1339,_v,{},K6e),s.Tk=function(t,n,i,r,o){return new Qie(t,n,i,c(r,184).a,c(o,184).a)},s.Uk=function(t,n,i,r,o,u){return new CNe(t,n,i,c(r,184).a,c(o,184).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/8",1339),y(1317,563,{},cLe),s.Sk=function(t){if(!this.a.wj(t))throw V(new e_(lk+Fs(t)+fk+this.a+"'"))},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataDynamic",1317),y(1318,563,{},WRe),s.Sk=function(t){},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataStatic",1318),y(770,563,{}),s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null},s.Tj=function(t,n,i,r){var o,u;t.Lg()&&t.Mg()?(o=!0,u=n.Ch(i),u==null?(o=!1,u=this.b):le(u)===le(sh)&&(u=null),r==null?this.c!=null?(n.Dh(i,null),r=this.b):n.Dh(i,sh):(this.Sk(r),n.Dh(i,r)),Bn(t,this.d.Uk(t,1,this.e,u,r,!o))):r==null?this.c!=null?n.Dh(i,null):n.Dh(i,sh):(this.Sk(r),n.Dh(i,r))},s.Vj=function(t,n,i){var r,o;t.Lg()&&t.Mg()?(r=!0,o=n.Ch(i),o==null?(r=!1,o=this.b):le(o)===le(sh)&&(o=null),n.Eh(i),Bn(t,this.d.Uk(t,2,this.e,o,this.b,r))):n.Eh(i)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettable",770),y(1319,770,{},sLe),s.Sk=function(t){if(!this.a.wj(t))throw V(new e_(lk+Fs(t)+fk+this.a+"'"))},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableDynamic",1319),y(1320,770,{},YRe),s.Sk=function(t){},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableStatic",1320),y(398,504,{},w8),s.Pj=function(t,n,i,r,o){var u,a,l,d,p;if(p=n.Ch(i),this.Kj()&&le(p)===le(sh))return null;if(this.sk()&&r&&p!=null){if(l=c(p,49),l.kh()&&(d=S1(t,l),l!=d)){if(!Qq(this.a,d))throw V(new e_(lk+Fs(d)+fk+this.a+"'"));n.Dh(i,p=d),this.rk()&&(u=c(d,49),a=l.ih(t,this.b?di(l.Tg(),this.b):-1-di(t.Tg(),this.e),null,null),!u.eh()&&(a=u.gh(t,this.b?di(u.Tg(),this.b):-1-di(t.Tg(),this.e),null,a)),a&&a.Fi()),t.Lg()&&t.Mg()&&Bn(t,new C5(t,9,this.e,l,d))}return p}else return p},s.Qj=function(t,n,i,r,o){var u,a;return a=n.Ch(i),le(a)===le(sh)&&(a=null),n.Dh(i,r),this.bj()?le(a)!==le(r)&&a!=null&&(u=c(a,49),o=u.ih(t,di(u.Tg(),this.b),null,o)):this.rk()&&a!=null&&(o=c(a,49).ih(t,-1-di(t.Tg(),this.e),null,o)),t.Lg()&&t.Mg()&&(!o&&(o=new i1(4)),o.Ei(new C5(t,1,this.e,a,r))),o},s.Rj=function(t,n,i,r,o){var u;return u=n.Ch(i),le(u)===le(sh)&&(u=null),n.Eh(i),t.Lg()&&t.Mg()&&(!o&&(o=new i1(4)),this.Kj()?o.Ei(new C5(t,2,this.e,u,null)):o.Ei(new C5(t,1,this.e,u,null))),o},s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null},s.Tj=function(t,n,i,r){var o,u,a,l,d;if(r!=null&&!Qq(this.a,r))throw V(new e_(lk+(Q(r,56)?_ce(c(r,56).Tg()):Vie(Fs(r)))+fk+this.a+"'"));d=n.Ch(i),l=d!=null,this.Kj()&&le(d)===le(sh)&&(d=null),a=null,this.bj()?le(d)!==le(r)&&(d!=null&&(o=c(d,49),a=o.ih(t,di(o.Tg(),this.b),null,a)),r!=null&&(o=c(r,49),a=o.gh(t,di(o.Tg(),this.b),null,a))):this.rk()&&le(d)!==le(r)&&(d!=null&&(a=c(d,49).ih(t,-1-di(t.Tg(),this.e),null,a)),r!=null&&(a=c(r,49).gh(t,-1-di(t.Tg(),this.e),null,a))),r==null&&this.Kj()?n.Dh(i,sh):n.Dh(i,r),t.Lg()&&t.Mg()?(u=new UB(t,1,this.e,d,r,this.Kj()&&!l),a?(a.Ei(u),a.Fi()):Bn(t,u)):a&&a.Fi()},s.Vj=function(t,n,i){var r,o,u,a,l;l=n.Ch(i),a=l!=null,this.Kj()&&le(l)===le(sh)&&(l=null),u=null,l!=null&&(this.bj()?(r=c(l,49),u=r.ih(t,di(r.Tg(),this.b),null,u)):this.rk()&&(u=c(l,49).ih(t,-1-di(t.Tg(),this.e),null,u))),n.Eh(i),t.Lg()&&t.Mg()?(o=new UB(t,this.Kj()?2:1,this.e,l,null,a),u?(u.Ei(o),u.Fi()):Bn(t,o)):u&&u.Fi()},s.bj=function(){return!1},s.rk=function(){return!1},s.sk=function(){return!1},s.Kj=function(){return!1},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObject",398),y(564,398,{},YF),s.rk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainment",564),y(1323,564,{},UDe),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentResolving",1323),y(772,564,{},Gee),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettable",772),y(1325,772,{},WDe),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettableResolving",1325),y(640,564,{},aB),s.bj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverse",640),y(1324,640,{},Qke),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseResolving",1324),y(773,640,{},Dte),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettable",773),y(1326,773,{},Zke),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettableResolving",1326),y(641,398,{},Uee),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolving",641),y(1327,641,{},YDe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingUnsettable",1327),y(774,641,{},Ate),s.bj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverse",774),y(1328,774,{},eRe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverseUnsettable",1328),y(1321,398,{},XDe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectUnsettable",1321),y(771,398,{},Ote),s.bj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverse",771),y(1322,771,{},tRe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverseUnsettable",1322),y(775,565,ak,Ine),s.Pk=function(t){return new Ine(this.a,this.c,t)},s.dd=function(){return this.b},s.Qk=function(t,n,i){return sCt(this,t,this.b,i)},s.Rk=function(t,n,i){return uCt(this,t,this.b,i)},S(mt,"EStructuralFeatureImpl/InverseUpdatingFeatureMapEntry",775),y(1329,1,qV,aAe),s.Wj=function(t){return this.a},s.fj=function(){return Q(this.a,95)?c(this.a,95).fj():!this.a.dc()},s.Wb=function(t){this.a.$b(),this.a.Gc(c(t,15))},s.Xj=function(){Q(this.a,95)?c(this.a,95).Xj():this.a.$b()},S(mt,"EStructuralFeatureImpl/SettingMany",1329),y(1330,565,ak,bFe),s.Ok=function(t){return new QF((Jn(),lM),this.b.Ih(this.a,t))},s.dd=function(){return null},s.Qk=function(t,n,i){return i},s.Rk=function(t,n,i){return i},S(mt,"EStructuralFeatureImpl/SimpleContentFeatureMapEntry",1330),y(642,565,ak,QF),s.Ok=function(t){return new QF(this.c,t)},s.dd=function(){return this.a},s.Qk=function(t,n,i){return i},s.Rk=function(t,n,i){return i},S(mt,"EStructuralFeatureImpl/SimpleFeatureMapEntry",642),y(391,497,Tf,G3),s.ri=function(t){return oe(va,xe,26,t,0,1)},s.ni=function(){return!1},S(mt,"ESuperAdapter/1",391),y(444,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,836:1,49:1,97:1,150:1,444:1,114:1,115:1},EN),s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return!this.a&&(this.a=new E5(this,oo,this)),this.a}return Nu(this,t-Ft((ot(),up)),at((r=c(vt(this,16),26),r||up),t),n,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 2:return!this.a&&(this.a=new E5(this,oo,this)),Fr(this.a,t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),up)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),up)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return!!this.a&&this.a.i!=0}return xu(this,t-Ft((ot(),up)),at((n=c(vt(this,16),26),n||up),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:!this.a&&(this.a=new E5(this,oo,this)),Xt(this.a),!this.a&&(this.a=new E5(this,oo,this)),Mi(this.a,c(n,14));return}qu(this,t-Ft((ot(),up)),at((i=c(vt(this,16),26),i||up),t),n)},s.zh=function(){return ot(),up},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:!this.a&&(this.a=new E5(this,oo,this)),Xt(this.a);return}$u(this,t-Ft((ot(),up)),at((n=c(vt(this,16),26),n||up),t))},S(mt,"ETypeParameterImpl",444),y(445,85,xo,E5),s.cj=function(t,n){return uDt(this,c(t,87),n)},s.dj=function(t,n){return aDt(this,c(t,87),n)},S(mt,"ETypeParameterImpl/1",445),y(634,43,fv,BN),s.ec=function(){return new zA(this)},S(mt,"ETypeParameterImpl/2",634),y(556,Kl,ys,zA),s.Fc=function(t){return Eke(this,c(t,87))},s.Gc=function(t){var n,i,r;for(r=!1,i=t.Kc();i.Ob();)n=c(i.Pb(),87),Kn(this.a,n,"")==null&&(r=!0);return r},s.$b=function(){Is(this.a)},s.Hc=function(t){return tu(this.a,t)},s.Kc=function(){var t;return t=new Gg(new Pg(this.a).a),new VA(t)},s.Mc=function(t){return uBe(this,t)},s.gc=function(){return KS(this.a)},S(mt,"ETypeParameterImpl/2/1",556),y(557,1,dr,VA),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(g0(this.a).cd(),87)},s.Ob=function(){return this.a.b},s.Qb=function(){BBe(this.a)},S(mt,"ETypeParameterImpl/2/1/1",557),y(1276,43,fv,ZAe),s._b=function(t){return fr(t)?WB(this,t):!!Po(this.f,t)},s.xc=function(t){var n,i;return n=fr(t)?mc(this,t):Uo(Po(this.f,t)),Q(n,837)?(i=c(n,837),n=i._j(),Kn(this,c(t,235),n),n):n??(t==null?(nF(),Bft):null)},S(mt,"EValidatorRegistryImpl",1276),y(1313,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,1941:1,49:1,97:1,150:1,114:1,115:1},q6e),s.Ih=function(t,n){switch(t.yj()){case 21:case 22:case 23:case 24:case 26:case 31:case 32:case 37:case 38:case 39:case 40:case 43:case 44:case 48:case 49:case 20:return n==null?null:Ro(n);case 25:return pIt(n);case 27:return kCt(n);case 28:return RCt(n);case 29:return n==null?null:nDe(rM[0],c(n,199));case 41:return n==null?"":r1(c(n,290));case 42:return Ro(n);case 50:return ln(n);default:throw V(new St(UE+t.ne()+K0))}},s.Jh=function(t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;switch(t.G==-1&&(t.G=(D=bu(t),D?wd(D.Mh(),t):-1)),t.G){case 0:return i=new LN,i;case 1:return n=new qJ,n;case 2:return r=new UJ,r;case 4:return o=new GA,o;case 5:return u=new QAe,u;case 6:return a=new EAe,a;case 7:return l=new GJ,l;case 10:return p=new xA,p;case 11:return v=new NN,v;case 12:return A=new PLe,A;case 13:return L=new FN,L;case 14:return N=new Xee,N;case 17:return z=new D6e,z;case 18:return d=new Nb,d;case 19:return Y=new EN,Y;default:throw V(new St(CV+t.zb+K0))}},s.Kh=function(t,n){switch(t.yj()){case 20:return n==null?null:new bZ(n);case 21:return n==null?null:new l1(n);case 23:case 22:return n==null?null:_9t(n);case 26:case 24:return n==null?null:sI(vu(n,-128,127)<<24>>24);case 25:return Dxt(n);case 27:return rOt(n);case 28:return oOt(n);case 29:return IDt(n);case 32:case 31:return n==null?null:aw(n);case 38:case 37:return n==null?null:new xQ(n);case 40:case 39:return n==null?null:Ce(vu(n,Ar,Fn));case 41:return null;case 42:return n==null,null;case 44:case 43:return n==null?null:Yg(aD(n));case 49:case 48:return n==null?null:oE(vu(n,hk,32767)<<16>>16);case 50:return n;default:throw V(new St(UE+t.ne()+K0))}},S(mt,"EcoreFactoryImpl",1313),y(547,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,1939:1,49:1,97:1,150:1,179:1,547:1,114:1,115:1,675:1},Kxe),s.gb=!1,s.hb=!1;var wme,Fft=!1;S(mt,"EcorePackageImpl",547),y(1184,1,{837:1},H6e),s._j=function(){return CDe(),$ft},S(mt,"EcorePackageImpl/1",1184),y(1193,1,Tn,z6e),s.wj=function(t){return Q(t,147)},s.xj=function(t){return oe(Vj,xe,147,t,0,1)},S(mt,"EcorePackageImpl/10",1193),y(1194,1,Tn,V6e),s.wj=function(t){return Q(t,191)},s.xj=function(t){return oe(sY,xe,191,t,0,1)},S(mt,"EcorePackageImpl/11",1194),y(1195,1,Tn,G6e),s.wj=function(t){return Q(t,56)},s.xj=function(t){return oe(J1,xe,56,t,0,1)},S(mt,"EcorePackageImpl/12",1195),y(1196,1,Tn,U6e),s.wj=function(t){return Q(t,399)},s.xj=function(t){return oe(ya,Kfe,59,t,0,1)},S(mt,"EcorePackageImpl/13",1196),y(1197,1,Tn,W6e),s.wj=function(t){return Q(t,235)},s.xj=function(t){return oe(ml,xe,235,t,0,1)},S(mt,"EcorePackageImpl/14",1197),y(1198,1,Tn,Y6e),s.wj=function(t){return Q(t,509)},s.xj=function(t){return oe(cp,xe,2017,t,0,1)},S(mt,"EcorePackageImpl/15",1198),y(1199,1,Tn,X6e),s.wj=function(t){return Q(t,99)},s.xj=function(t){return oe(Qw,yv,18,t,0,1)},S(mt,"EcorePackageImpl/16",1199),y(1200,1,Tn,J6e),s.wj=function(t){return Q(t,170)},s.xj=function(t){return oe(us,yv,170,t,0,1)},S(mt,"EcorePackageImpl/17",1200),y(1201,1,Tn,Q6e),s.wj=function(t){return Q(t,472)},s.xj=function(t){return oe(Xw,xe,472,t,0,1)},S(mt,"EcorePackageImpl/18",1201),y(1202,1,Tn,Z6e),s.wj=function(t){return Q(t,548)},s.xj=function(t){return oe(ec,Bet,548,t,0,1)},S(mt,"EcorePackageImpl/19",1202),y(1185,1,Tn,ePe),s.wj=function(t){return Q(t,322)},s.xj=function(t){return oe(Jw,yv,34,t,0,1)},S(mt,"EcorePackageImpl/2",1185),y(1203,1,Tn,tPe),s.wj=function(t){return Q(t,241)},s.xj=function(t){return oe(oo,ntt,87,t,0,1)},S(mt,"EcorePackageImpl/20",1203),y(1204,1,Tn,nPe),s.wj=function(t){return Q(t,444)},s.xj=function(t){return oe(Gc,xe,836,t,0,1)},S(mt,"EcorePackageImpl/21",1204),y(1205,1,Tn,iPe),s.wj=function(t){return Dp(t)},s.xj=function(t){return oe(Qi,we,476,t,8,1)},S(mt,"EcorePackageImpl/22",1205),y(1206,1,Tn,rPe),s.wj=function(t){return Q(t,190)},s.xj=function(t){return oe(Ps,we,190,t,0,2)},S(mt,"EcorePackageImpl/23",1206),y(1207,1,Tn,oPe),s.wj=function(t){return Q(t,217)},s.xj=function(t){return oe(B2,we,217,t,0,1)},S(mt,"EcorePackageImpl/24",1207),y(1208,1,Tn,cPe),s.wj=function(t){return Q(t,172)},s.xj=function(t){return oe(sP,we,172,t,0,1)},S(mt,"EcorePackageImpl/25",1208),y(1209,1,Tn,sPe),s.wj=function(t){return Q(t,199)},s.xj=function(t){return oe(Mk,we,199,t,0,1)},S(mt,"EcorePackageImpl/26",1209),y(1210,1,Tn,uPe),s.wj=function(t){return!1},s.xj=function(t){return oe(xme,xe,2110,t,0,1)},S(mt,"EcorePackageImpl/27",1210),y(1211,1,Tn,aPe),s.wj=function(t){return kp(t)},s.xj=function(t){return oe(mr,we,333,t,7,1)},S(mt,"EcorePackageImpl/28",1211),y(1212,1,Tn,lPe),s.wj=function(t){return Q(t,58)},s.xj=function(t){return oe(Xwe,yw,58,t,0,1)},S(mt,"EcorePackageImpl/29",1212),y(1186,1,Tn,fPe),s.wj=function(t){return Q(t,510)},s.xj=function(t){return oe(Sn,{3:1,4:1,5:1,1934:1},590,t,0,1)},S(mt,"EcorePackageImpl/3",1186),y(1213,1,Tn,hPe),s.wj=function(t){return Q(t,573)},s.xj=function(t){return oe(Zwe,xe,1940,t,0,1)},S(mt,"EcorePackageImpl/30",1213),y(1214,1,Tn,dPe),s.wj=function(t){return Q(t,153)},s.xj=function(t){return oe(Eme,yw,153,t,0,1)},S(mt,"EcorePackageImpl/31",1214),y(1215,1,Tn,gPe),s.wj=function(t){return Q(t,72)},s.xj=function(t){return oe(Kx,ftt,72,t,0,1)},S(mt,"EcorePackageImpl/32",1215),y(1216,1,Tn,bPe),s.wj=function(t){return Q(t,155)},s.xj=function(t){return oe(e4,we,155,t,0,1)},S(mt,"EcorePackageImpl/33",1216),y(1217,1,Tn,pPe),s.wj=function(t){return Q(t,19)},s.xj=function(t){return oe($r,we,19,t,0,1)},S(mt,"EcorePackageImpl/34",1217),y(1218,1,Tn,wPe),s.wj=function(t){return Q(t,290)},s.xj=function(t){return oe(ehe,xe,290,t,0,1)},S(mt,"EcorePackageImpl/35",1218),y(1219,1,Tn,mPe),s.wj=function(t){return Q(t,162)},s.xj=function(t){return oe(H0,we,162,t,0,1)},S(mt,"EcorePackageImpl/36",1219),y(1220,1,Tn,vPe),s.wj=function(t){return Q(t,83)},s.xj=function(t){return oe(the,xe,83,t,0,1)},S(mt,"EcorePackageImpl/37",1220),y(1221,1,Tn,yPe),s.wj=function(t){return Q(t,591)},s.xj=function(t){return oe(mme,xe,591,t,0,1)},S(mt,"EcorePackageImpl/38",1221),y(1222,1,Tn,_Pe),s.wj=function(t){return!1},s.xj=function(t){return oe(Lme,xe,2111,t,0,1)},S(mt,"EcorePackageImpl/39",1222),y(1187,1,Tn,EPe),s.wj=function(t){return Q(t,88)},s.xj=function(t){return oe(va,xe,26,t,0,1)},S(mt,"EcorePackageImpl/4",1187),y(1223,1,Tn,SPe),s.wj=function(t){return Q(t,184)},s.xj=function(t){return oe(z0,we,184,t,0,1)},S(mt,"EcorePackageImpl/40",1223),y(1224,1,Tn,PPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(mt,"EcorePackageImpl/41",1224),y(1225,1,Tn,MPe),s.wj=function(t){return Q(t,588)},s.xj=function(t){return oe(Qwe,xe,588,t,0,1)},S(mt,"EcorePackageImpl/42",1225),y(1226,1,Tn,CPe),s.wj=function(t){return!1},s.xj=function(t){return oe(Nme,we,2112,t,0,1)},S(mt,"EcorePackageImpl/43",1226),y(1227,1,Tn,IPe),s.wj=function(t){return Q(t,42)},s.xj=function(t){return oe(fb,gD,42,t,0,1)},S(mt,"EcorePackageImpl/44",1227),y(1188,1,Tn,TPe),s.wj=function(t){return Q(t,138)},s.xj=function(t){return oe(vl,xe,138,t,0,1)},S(mt,"EcorePackageImpl/5",1188),y(1189,1,Tn,jPe),s.wj=function(t){return Q(t,148)},s.xj=function(t){return oe(dY,xe,148,t,0,1)},S(mt,"EcorePackageImpl/6",1189),y(1190,1,Tn,APe),s.wj=function(t){return Q(t,457)},s.xj=function(t){return oe($x,xe,671,t,0,1)},S(mt,"EcorePackageImpl/7",1190),y(1191,1,Tn,OPe),s.wj=function(t){return Q(t,573)},s.xj=function(t){return oe(Yh,xe,678,t,0,1)},S(mt,"EcorePackageImpl/8",1191),y(1192,1,Tn,DPe),s.wj=function(t){return Q(t,471)},s.xj=function(t){return oe(iM,xe,471,t,0,1)},S(mt,"EcorePackageImpl/9",1192),y(1025,1982,Fet,w9e),s.bi=function(t,n){Ujt(this,c(n,415))},s.fi=function(t,n){OGe(this,t,c(n,415))},S(mt,"MinimalEObjectImpl/1ArrayDelegatingAdapterList",1025),y(1026,143,xT,Dxe),s.Ai=function(){return this.a.a},S(mt,"MinimalEObjectImpl/1ArrayDelegatingAdapterList/1",1026),y(1053,1052,{},W7e),S("org.eclipse.emf.ecore.plugin","EcorePlugin",1053);var mme=pi(htt,"Resource");y(781,1378,dtt),s.Yk=function(t){},s.Zk=function(t){},s.Vk=function(){return!this.a&&(this.a=new ON(this)),this.a},s.Wk=function(t){var n,i,r,o,u;if(r=t.length,r>0)if(fn(0,t.length),t.charCodeAt(0)==47){for(u=new Dc(4),o=1,n=1;n0&&(t=t.substr(0,i)));return bRt(this,t)},s.Xk=function(){return this.c},s.Ib=function(){var t;return r1(this.gm)+"@"+(t=fi(this)>>>0,t.toString(16))+" uri='"+this.d+"'"},s.b=!1,S(HV,"ResourceImpl",781),y(1379,781,dtt,fAe),S(HV,"BinaryResourceImpl",1379),y(1169,694,NV),s.si=function(t){return Q(t,56)?X5t(this,c(t,56)):Q(t,591)?new $t(c(t,591).Vk()):le(t)===le(this.f)?c(t,14).Kc():(p_(),Wj.a)},s.Ob=function(){return hse(this)},s.a=!1,S(ai,"EcoreUtil/ContentTreeIterator",1169),y(1380,1169,NV,axe),s.si=function(t){return le(t)===le(this.f)?c(t,15).Kc():new GNe(c(t,56))},S(HV,"ResourceImpl/5",1380),y(648,1994,ttt,ON),s.Hc=function(t){return this.i<=4?pE(this,t):Q(t,49)&&c(t,49).Zg()==this.a},s.bi=function(t,n){t==this.i-1&&(this.a.b||(this.a.b=!0))},s.di=function(t,n){t==0?this.a.b||(this.a.b=!0):M$(this,t,n)},s.fi=function(t,n){},s.gi=function(t,n,i){},s.aj=function(){return 2},s.Ai=function(){return this.a},s.bj=function(){return!0},s.cj=function(t,n){var i;return i=c(t,49),n=i.wh(this.a,n),n},s.dj=function(t,n){var i;return i=c(t,49),i.wh(null,n)},s.ej=function(){return!1},s.hi=function(){return!0},s.ri=function(t){return oe(J1,xe,56,t,0,1)},s.ni=function(){return!1},S(HV,"ResourceImpl/ContentsEList",648),y(957,1964,xE,lAe),s.Zc=function(t){return this.a._h(t)},s.gc=function(){return this.a.gc()},S(ai,"AbstractSequentialInternalEList/1",957);var vme,yme,Ir,_me;y(624,1,{},fRe);var qx,Hx;S(ai,"BasicExtendedMetaData",624),y(1160,1,{},f7e),s.$k=function(){return null},s._k=function(){return this.a==-2&&Wmt(this,EDt(this.d,this.b)),this.a},s.al=function(){return null},s.bl=function(){return st(),st(),Qr},s.ne=function(){return this.c==XE&&Xmt(this,uze(this.d,this.b)),this.c},s.cl=function(){return 0},s.a=-2,s.c=XE,S(ai,"BasicExtendedMetaData/EClassExtendedMetaDataImpl",1160),y(1161,1,{},DNe),s.$k=function(){return this.a==(k_(),qx)&&Ymt(this,FLt(this.f,this.b)),this.a},s._k=function(){return 0},s.al=function(){return this.c==(k_(),qx)&&Jmt(this,BLt(this.f,this.b)),this.c},s.bl=function(){return!this.d&&Qmt(this,FFt(this.f,this.b)),this.d},s.ne=function(){return this.e==XE&&Zmt(this,uze(this.f,this.b)),this.e},s.cl=function(){return this.g==-2&&evt(this,K7t(this.f,this.b)),this.g},s.e=XE,s.g=-2,S(ai,"BasicExtendedMetaData/EDataTypeExtendedMetaDataImpl",1161),y(1159,1,{},d7e),s.b=!1,s.c=!1,S(ai,"BasicExtendedMetaData/EPackageExtendedMetaDataImpl",1159),y(1162,1,{},ONe),s.c=-2,s.e=XE,s.f=XE,S(ai,"BasicExtendedMetaData/EStructuralFeatureExtendedMetaDataImpl",1162),y(585,622,xo,a8),s.aj=function(){return this.c},s.Fk=function(){return!1},s.li=function(t,n){return n},s.c=0,S(ai,"EDataTypeEList",585);var Eme=pi(ai,"FeatureMap");y(75,585,{3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},Ci),s.Vc=function(t,n){RLt(this,t,c(n,72))},s.Fc=function(t){return Zxt(this,c(t,72))},s.Yh=function(t){BSt(this,c(t,72))},s.cj=function(t,n){return v_t(this,c(t,72),n)},s.dj=function(t,n){return vte(this,c(t,72),n)},s.ii=function(t,n){return nBt(this,t,n)},s.li=function(t,n){return xKt(this,t,c(n,72))},s._c=function(t,n){return PNt(this,t,c(n,72))},s.jj=function(t,n){return y_t(this,c(t,72),n)},s.kj=function(t,n){return Lke(this,c(t,72),n)},s.lj=function(t,n,i){return P7t(this,c(t,72),c(n,72),i)},s.oi=function(t,n){return bq(this,t,c(n,72))},s.dl=function(t,n){return eue(this,t,n)},s.Wc=function(t,n){var i,r,o,u,a,l,d,p,v;for(p=new d0(n.gc()),o=n.Kc();o.Ob();)if(r=c(o.Pb(),72),u=r.ak(),Bh(this.e,u))(!u.hi()||!rO(this,u,r.dd())&&!pE(p,r))&&on(p,r);else{for(v=qc(this.e.Tg(),u),i=c(this.g,119),a=!0,l=0;l=0;)if(n=t[this.c],this.k.rl(n.ak()))return this.j=this.f?n:n.dd(),this.i=-2,!0;return this.i=-1,this.g=-1,!1},S(ai,"BasicFeatureMap/FeatureEIterator",410),y(662,410,Wf,RF),s.Lk=function(){return!0},S(ai,"BasicFeatureMap/ResolvingFeatureEIterator",662),y(955,486,sk,rDe),s.Gi=function(){return this},S(ai,"EContentsEList/1",955),y(956,486,sk,j7e),s.Lk=function(){return!1},S(ai,"EContentsEList/2",956),y(954,279,uk,oDe),s.Nk=function(t){},s.Ob=function(){return!1},s.Sb=function(){return!1},S(ai,"EContentsEList/FeatureIteratorImpl/1",954),y(825,585,xo,Pee),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EDataTypeEList/Unsettable",825),y(1849,585,xo,dDe),s.hi=function(){return!0},S(ai,"EDataTypeUniqueEList",1849),y(1850,825,xo,gDe),s.hi=function(){return!0},S(ai,"EDataTypeUniqueEList/Unsettable",1850),y(139,85,xo,gs),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentEList/Resolving",139),y(1163,545,xo,hDe),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentEList/Unsettable/Resolving",1163),y(748,16,xo,hte),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EObjectContainmentWithInverseEList/Unsettable",748),y(1173,748,xo,Ske),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentWithInverseEList/Unsettable/Resolving",1173),y(743,496,xo,See),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EObjectEList/Unsettable",743),y(328,496,xo,Om),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectResolvingEList",328),y(1641,743,xo,bDe),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectResolvingEList/Unsettable",1641),y(1381,1,{},kPe);var Bft;S(ai,"EObjectValidator",1381),y(546,496,xo,T8),s.zk=function(){return this.d},s.Ak=function(){return this.b},s.bj=function(){return!0},s.Dk=function(){return!0},s.b=0,S(ai,"EObjectWithInverseEList",546),y(1176,546,xo,Pke),s.Ck=function(){return!0},S(ai,"EObjectWithInverseEList/ManyInverse",1176),y(625,546,xo,eB),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EObjectWithInverseEList/Unsettable",625),y(1175,625,xo,Mke),s.Ck=function(){return!0},S(ai,"EObjectWithInverseEList/Unsettable/ManyInverse",1175),y(749,546,xo,dte),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectWithInverseResolvingEList",749),y(31,749,xo,dt),s.Ck=function(){return!0},S(ai,"EObjectWithInverseResolvingEList/ManyInverse",31),y(750,625,xo,gte),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectWithInverseResolvingEList/Unsettable",750),y(1174,750,xo,Cke),s.Ck=function(){return!0},S(ai,"EObjectWithInverseResolvingEList/Unsettable/ManyInverse",1174),y(1164,622,xo),s.ai=function(){return(this.b&1792)==0},s.ci=function(){this.b|=1},s.Bk=function(){return(this.b&4)!=0},s.bj=function(){return(this.b&40)!=0},s.Ck=function(){return(this.b&16)!=0},s.Dk=function(){return(this.b&8)!=0},s.Ek=function(){return(this.b&Iw)!=0},s.rk=function(){return(this.b&32)!=0},s.Fk=function(){return(this.b&Ka)!=0},s.wj=function(t){return this.d?sFe(this.d,t):this.ak().Yj().wj(t)},s.fj=function(){return(this.b&2)!=0?(this.b&1)!=0:this.i!=0},s.hi=function(){return(this.b&128)!=0},s.Xj=function(){var t;Xt(this),(this.b&2)!=0&&(Qs(this.e)?(t=(this.b&1)!=0,this.b&=-2,Q3(this,new La(this.e,2,di(this.e.Tg(),this.ak()),t,!1))):this.b&=-2)},s.ni=function(){return(this.b&1536)==0},s.b=0,S(ai,"EcoreEList/Generic",1164),y(1165,1164,xo,pLe),s.ak=function(){return this.a},S(ai,"EcoreEList/Dynamic",1165),y(747,63,Tf,IQ),s.ri=function(t){return aI(this.a.a,t)},S(ai,"EcoreEMap/1",747),y(746,85,xo,hne),s.bi=function(t,n){P7(this.b,c(n,133))},s.di=function(t,n){nqe(this.b)},s.ei=function(t,n,i){var r;++(r=this.b,c(n,133),r).e},s.fi=function(t,n){PK(this.b,c(n,133))},s.gi=function(t,n,i){PK(this.b,c(i,133)),le(i)===le(n)&&c(i,133).Th(T2t(c(n,133).cd())),P7(this.b,c(n,133))},S(ai,"EcoreEMap/DelegateEObjectContainmentEList",746),y(1171,151,$fe,bKe),S(ai,"EcoreEMap/Unsettable",1171),y(1172,746,xo,Ike),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EcoreEMap/Unsettable/UnsettableDelegateEObjectContainmentEList",1172),y(1168,228,fv,vxe),s.a=!1,s.b=!1,S(ai,"EcoreUtil/Copier",1168),y(745,1,dr,GNe),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return qHe(this)},s.Pb=function(){var t;return qHe(this),t=this.b,this.b=null,t},s.Qb=function(){this.a.Qb()},S(ai,"EcoreUtil/ProperContentIterator",745),y(1382,1381,{},ACe);var $ft;S(ai,"EcoreValidator",1382);var Kft;pi(ai,"FeatureMapUtil/Validator"),y(1260,1,{1942:1},RPe),s.rl=function(t){return!0},S(ai,"FeatureMapUtil/1",1260),y(757,1,{1942:1},jue),s.rl=function(t){var n;return this.c==t?!0:(n=Fe(Bt(this.a,t)),n==null?vFt(this,t)?(eBe(this.a,t,(Pt(),ZE)),!0):(eBe(this.a,t,(Pt(),hb)),!1):n==(Pt(),ZE))},s.e=!1;var wY;S(ai,"FeatureMapUtil/BasicValidator",757),y(758,43,fv,vee),S(ai,"FeatureMapUtil/BasicValidator/Cache",758),y(501,52,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,69:1,95:1},pC),s.Vc=function(t,n){wWe(this.c,this.b,t,n)},s.Fc=function(t){return eue(this.c,this.b,t)},s.Wc=function(t,n){return R$t(this.c,this.b,t,n)},s.Gc=function(t){return h5(this,t)},s.Xh=function(t,n){tIt(this.c,this.b,t,n)},s.lk=function(t,n){return Wse(this.c,this.b,t,n)},s.pi=function(t){return iD(this.c,this.b,t,!1)},s.Zh=function(){return $7e(this.c,this.b)},s.$h=function(){return b2t(this.c,this.b)},s._h=function(t){return cCt(this.c,this.b,t)},s.mk=function(t,n){return oke(this,t,n)},s.$b=function(){ky(this)},s.Hc=function(t){return rO(this.c,this.b,t)},s.Ic=function(t){return oTt(this.c,this.b,t)},s.Xb=function(t){return iD(this.c,this.b,t,!0)},s.Wj=function(t){return this},s.Xc=function(t){return wMt(this.c,this.b,t)},s.dc=function(){return L9(this)},s.fj=function(){return!jI(this.c,this.b)},s.Kc=function(){return HCt(this.c,this.b)},s.Yc=function(){return zCt(this.c,this.b)},s.Zc=function(t){return nAt(this.c,this.b,t)},s.ii=function(t,n){return xYe(this.c,this.b,t,n)},s.ji=function(t,n){eCt(this.c,this.b,t,n)},s.$c=function(t){return gGe(this.c,this.b,t)},s.Mc=function(t){return $Ft(this.c,this.b,t)},s._c=function(t,n){return KYe(this.c,this.b,t,n)},s.Wb=function(t){$7(this.c,this.b),h5(this,c(t,15))},s.gc=function(){return bAt(this.c,this.b)},s.Pc=function(){return gPt(this.c,this.b)},s.Qc=function(t){return mMt(this.c,this.b,t)},s.Ib=function(){var t,n;for(n=new nd,n.a+="[",t=$7e(this.c,this.b);gK(t);)co(n,g5(E7(t))),gK(t)&&(n.a+=zr);return n.a+="]",n.a},s.Xj=function(){$7(this.c,this.b)},S(ai,"FeatureMapUtil/FeatureEList",501),y(627,36,xT,p$),s.yi=function(t){return Z5(this,t)},s.Di=function(t){var n,i,r,o,u,a,l;switch(this.d){case 1:case 2:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.g=t.zi(),t.xi()==1&&(this.d=1),!0;break}case 3:{switch(o=t.xi(),o){case 3:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.d=5,n=new d0(2),on(n,this.g),on(n,t.zi()),this.g=n,!0;break}}break}case 5:{switch(o=t.xi(),o){case 3:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return i=c(this.g,14),i.Fc(t.zi()),!0;break}}break}case 4:{switch(o=t.xi(),o){case 3:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.d=1,this.g=t.zi(),!0;break}case 4:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.d=6,l=new d0(2),on(l,this.n),on(l,t.Bi()),this.n=l,a=U(G(Qt,1),_n,25,15,[this.o,t.Ci()]),this.g=a,!0;break}}break}case 6:{switch(o=t.xi(),o){case 4:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return i=c(this.n,14),i.Fc(t.Bi()),a=c(this.g,48),r=oe(Qt,_n,25,a.length+1,15,1),bc(a,0,r,0,a.length),r[a.length]=t.Ci(),this.g=r,!0;break}}break}}return!1},S(ai,"FeatureMapUtil/FeatureENotificationImpl",627),y(552,501,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},d8),s.dl=function(t,n){return eue(this.c,t,n)},s.el=function(t,n,i){return Wse(this.c,t,n,i)},s.fl=function(t,n,i){return wue(this.c,t,n,i)},s.gl=function(){return this},s.hl=function(t,n){return cT(this.c,t,n)},s.il=function(t){return c(iD(this.c,this.b,t,!1),72).ak()},s.jl=function(t){return c(iD(this.c,this.b,t,!1),72).dd()},s.kl=function(){return this.a},s.ll=function(t){return!jI(this.c,t)},s.ml=function(t,n){rD(this.c,t,n)},s.nl=function(t){return EKe(this.c,t)},s.ol=function(t){Gze(this.c,t)},S(ai,"FeatureMapUtil/FeatureFeatureMap",552),y(1259,1,qV,g7e),s.Wj=function(t){return iD(this.b,this.a,-1,t)},s.fj=function(){return!jI(this.b,this.a)},s.Wb=function(t){rD(this.b,this.a,t)},s.Xj=function(){$7(this.b,this.a)},S(ai,"FeatureMapUtil/FeatureValue",1259);var u3,mY,vY,a3,qft,Xj=pi(pk,"AnyType");y(666,60,$h,UN),S(pk,"InvalidDatatypeValueException",666);var zx=pi(pk,btt),Jj=pi(pk,ptt),Sme=pi(pk,wtt),Hft,cc,Pme,Ib,zft,Vft,Gft,Uft,Wft,Yft,Xft,Jft,Qft,Zft,eht,Wv,tht,Yv,uM,nht,ap,Qj,Zj,iht,aM,lM;y(830,506,{105:1,92:1,90:1,56:1,49:1,97:1,843:1},WQ),s._g=function(t,n,i){switch(t){case 0:return i?(!this.c&&(this.c=new Ci(this,0)),this.c):(!this.c&&(this.c=new Ci(this,0)),this.c.b);case 1:return i?(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)):(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).kl();case 2:return i?(!this.b&&(this.b=new Ci(this,2)),this.b):(!this.b&&(this.b=new Ci(this,2)),this.b.b)}return Nu(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.jh=function(t,n,i){var r;switch(n){case 0:return!this.c&&(this.c=new Ci(this,0)),nT(this.c,t,i);case 1:return(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),69)).mk(t,i);case 2:return!this.b&&(this.b=new Ci(this,2)),nT(this.b,t,i)}return r=c(at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),n),66),r.Nj().Rj(this,Kie(this),n-Ft(this.zh()),t,i)},s.lh=function(t){switch(t){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).dc();case 2:return!!this.b&&this.b.i!=0}return xu(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),xC(this.c,n);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).Wb(n);return;case 2:!this.b&&(this.b=new Ci(this,2)),xC(this.b,n);return}qu(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),Pme},s.Bh=function(t){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),Xt(this.c);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).$b();return;case 2:!this.b&&(this.b=new Ci(this,2)),Xt(this.b);return}$u(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t))},s.Ib=function(){var t;return(this.j&4)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (mixed: ",u5(t,this.c),t.a+=", anyAttribute: ",u5(t,this.b),t.a+=")",t.a)},S(Fi,"AnyTypeImpl",830),y(667,506,{105:1,92:1,90:1,56:1,49:1,97:1,2021:1,667:1},LPe),s._g=function(t,n,i){switch(t){case 0:return this.a;case 1:return this.b}return Nu(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.lh=function(t){switch(t){case 0:return this.a!=null;case 1:return this.b!=null}return xu(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:svt(this,ln(n));return;case 1:uvt(this,ln(n));return}qu(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),Wv},s.Bh=function(t){switch(t){case 0:this.a=null;return;case 1:this.b=null;return}$u(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t))},s.Ib=function(){var t;return(this.j&4)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (data: ",co(t,this.a),t.a+=", target: ",co(t,this.b),t.a+=")",t.a)},s.a=null,s.b=null,S(Fi,"ProcessingInstructionImpl",667),y(668,830,{105:1,92:1,90:1,56:1,49:1,97:1,843:1,2022:1,668:1},t9e),s._g=function(t,n,i){switch(t){case 0:return i?(!this.c&&(this.c=new Ci(this,0)),this.c):(!this.c&&(this.c=new Ci(this,0)),this.c.b);case 1:return i?(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)):(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).kl();case 2:return i?(!this.b&&(this.b=new Ci(this,2)),this.b):(!this.b&&(this.b=new Ci(this,2)),this.b.b);case 3:return!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0));case 4:return bte(this.a,(!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0))));case 5:return this.a}return Nu(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.lh=function(t){switch(t){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).dc();case 2:return!!this.b&&this.b.i!=0;case 3:return!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0))!=null;case 4:return bte(this.a,(!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0))))!=null;case 5:return!!this.a}return xu(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),xC(this.c,n);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).Wb(n);return;case 2:!this.b&&(this.b=new Ci(this,2)),xC(this.b,n);return;case 3:eie(this,ln(n));return;case 4:eie(this,pte(this.a,n));return;case 5:avt(this,c(n,148));return}qu(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),Yv},s.Bh=function(t){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),Xt(this.c);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).$b();return;case 2:!this.b&&(this.b=new Ci(this,2)),Xt(this.b);return;case 3:!this.c&&(this.c=new Ci(this,0)),rD(this.c,(Jn(),uM),null);return;case 4:eie(this,pte(this.a,null));return;case 5:this.a=null;return}$u(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t))},S(Fi,"SimpleAnyTypeImpl",668),y(669,506,{105:1,92:1,90:1,56:1,49:1,97:1,2023:1,669:1},e9e),s._g=function(t,n,i){switch(t){case 0:return i?(!this.a&&(this.a=new Ci(this,0)),this.a):(!this.a&&(this.a=new Ci(this,0)),this.a.b);case 1:return i?(!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),this.b):(!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),XC(this.b));case 2:return i?(!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),this.c):(!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),XC(this.c));case 3:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),Qj));case 4:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),Zj));case 5:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),aM));case 6:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),lM))}return Nu(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.jh=function(t,n,i){var r;switch(n){case 0:return!this.a&&(this.a=new Ci(this,0)),nT(this.a,t,i);case 1:return!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),r8(this.b,t,i);case 2:return!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),r8(this.c,t,i);case 5:return!this.a&&(this.a=new Ci(this,0)),oke(vc(this.a,(Jn(),aM)),t,i)}return r=c(at((this.j&2)==0?(Jn(),ap):(!this.k&&(this.k=new il),this.k).ck(),n),66),r.Nj().Rj(this,Kie(this),n-Ft((Jn(),ap)),t,i)},s.lh=function(t){switch(t){case 0:return!!this.a&&this.a.i!=0;case 1:return!!this.b&&this.b.f!=0;case 2:return!!this.c&&this.c.f!=0;case 3:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),Qj)));case 4:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),Zj)));case 5:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),aM)));case 6:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),lM)))}return xu(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:!this.a&&(this.a=new Ci(this,0)),xC(this.a,n);return;case 1:!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),GO(this.b,n);return;case 2:!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),GO(this.c,n);return;case 3:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Qj))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,Qj),c(n,14));return;case 4:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Zj))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,Zj),c(n,14));return;case 5:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),aM))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,aM),c(n,14));return;case 6:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),lM))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,lM),c(n,14));return}qu(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),ap},s.Bh=function(t){switch(t){case 0:!this.a&&(this.a=new Ci(this,0)),Xt(this.a);return;case 1:!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),this.b.c.$b();return;case 2:!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),this.c.c.$b();return;case 3:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Qj)));return;case 4:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Zj)));return;case 5:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),aM)));return;case 6:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),lM)));return}$u(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t))},s.Ib=function(){var t;return(this.j&4)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (mixed: ",u5(t,this.a),t.a+=")",t.a)},S(Fi,"XMLTypeDocumentRootImpl",669),y(1919,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1,2024:1},xPe),s.Ih=function(t,n){switch(t.yj()){case 7:case 8:case 9:case 10:case 16:case 22:case 23:case 24:case 25:case 26:case 32:case 33:case 34:case 36:case 37:case 44:case 45:case 50:case 51:case 53:case 55:case 56:case 57:case 58:case 60:case 61:case 4:return n==null?null:Ro(n);case 19:case 28:case 29:case 35:case 38:case 39:case 41:case 46:case 52:case 54:case 5:return ln(n);case 6:return k3t(c(n,190));case 12:case 47:case 49:case 11:return TXe(this,t,n);case 13:return n==null?null:y$t(c(n,240));case 15:case 14:return n==null?null:ASt(ge(Te(n)));case 17:return OVe((Jn(),n));case 18:return OVe(n);case 21:case 20:return n==null?null:OSt(c(n,155).a);case 27:return R3t(c(n,190));case 30:return Uze((Jn(),c(n,15)));case 31:return Uze(c(n,15));case 40:return L3t((Jn(),n));case 42:return DVe((Jn(),n));case 43:return DVe(n);case 59:case 48:return x3t((Jn(),n));default:throw V(new St(UE+t.ne()+K0))}},s.Jh=function(t){var n,i,r,o,u;switch(t.G==-1&&(t.G=(i=bu(t),i?wd(i.Mh(),t):-1)),t.G){case 0:return n=new WQ,n;case 1:return r=new LPe,r;case 2:return o=new t9e,o;case 3:return u=new e9e,u;default:throw V(new St(CV+t.zb+K0))}},s.Kh=function(t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie;switch(t.yj()){case 5:case 52:case 4:return n;case 6:return X9t(n);case 8:case 7:return n==null?null:N7t(n);case 9:return n==null?null:sI(vu((r=Ec(n,!0),r.length>0&&(fn(0,r.length),r.charCodeAt(0)==43)?r.substr(1):r),-128,127)<<24>>24);case 10:return n==null?null:sI(vu((o=Ec(n,!0),o.length>0&&(fn(0,o.length),o.charCodeAt(0)==43)?o.substr(1):o),-128,127)<<24>>24);case 11:return ln(R0(this,(Jn(),Gft),n));case 12:return ln(R0(this,(Jn(),Uft),n));case 13:return n==null?null:new bZ(Ec(n,!0));case 15:case 14:return rLt(n);case 16:return ln(R0(this,(Jn(),Wft),n));case 17:return ZHe((Jn(),n));case 18:return ZHe(n);case 28:case 29:case 35:case 38:case 39:case 41:case 54:case 19:return Ec(n,!0);case 21:case 20:return dLt(n);case 22:return ln(R0(this,(Jn(),Yft),n));case 23:return ln(R0(this,(Jn(),Xft),n));case 24:return ln(R0(this,(Jn(),Jft),n));case 25:return ln(R0(this,(Jn(),Qft),n));case 26:return ln(R0(this,(Jn(),Zft),n));case 27:return V9t(n);case 30:return eze((Jn(),n));case 31:return eze(n);case 32:return n==null?null:Ce(vu((v=Ec(n,!0),v.length>0&&(fn(0,v.length),v.charCodeAt(0)==43)?v.substr(1):v),Ar,Fn));case 33:return n==null?null:new l1((A=Ec(n,!0),A.length>0&&(fn(0,A.length),A.charCodeAt(0)==43)?A.substr(1):A));case 34:return n==null?null:Ce(vu((D=Ec(n,!0),D.length>0&&(fn(0,D.length),D.charCodeAt(0)==43)?D.substr(1):D),Ar,Fn));case 36:return n==null?null:Yg(aD((L=Ec(n,!0),L.length>0&&(fn(0,L.length),L.charCodeAt(0)==43)?L.substr(1):L)));case 37:return n==null?null:Yg(aD((N=Ec(n,!0),N.length>0&&(fn(0,N.length),N.charCodeAt(0)==43)?N.substr(1):N)));case 40:return s9t((Jn(),n));case 42:return tze((Jn(),n));case 43:return tze(n);case 44:return n==null?null:new l1((z=Ec(n,!0),z.length>0&&(fn(0,z.length),z.charCodeAt(0)==43)?z.substr(1):z));case 45:return n==null?null:new l1((Y=Ec(n,!0),Y.length>0&&(fn(0,Y.length),Y.charCodeAt(0)==43)?Y.substr(1):Y));case 46:return Ec(n,!1);case 47:return ln(R0(this,(Jn(),eht),n));case 59:case 48:return c9t((Jn(),n));case 49:return ln(R0(this,(Jn(),tht),n));case 50:return n==null?null:oE(vu((ie=Ec(n,!0),ie.length>0&&(fn(0,ie.length),ie.charCodeAt(0)==43)?ie.substr(1):ie),hk,32767)<<16>>16);case 51:return n==null?null:oE(vu((u=Ec(n,!0),u.length>0&&(fn(0,u.length),u.charCodeAt(0)==43)?u.substr(1):u),hk,32767)<<16>>16);case 53:return ln(R0(this,(Jn(),nht),n));case 55:return n==null?null:oE(vu((a=Ec(n,!0),a.length>0&&(fn(0,a.length),a.charCodeAt(0)==43)?a.substr(1):a),hk,32767)<<16>>16);case 56:return n==null?null:oE(vu((l=Ec(n,!0),l.length>0&&(fn(0,l.length),l.charCodeAt(0)==43)?l.substr(1):l),hk,32767)<<16>>16);case 57:return n==null?null:Yg(aD((d=Ec(n,!0),d.length>0&&(fn(0,d.length),d.charCodeAt(0)==43)?d.substr(1):d)));case 58:return n==null?null:Yg(aD((p=Ec(n,!0),p.length>0&&(fn(0,p.length),p.charCodeAt(0)==43)?p.substr(1):p)));case 60:return n==null?null:Ce(vu((i=Ec(n,!0),i.length>0&&(fn(0,i.length),i.charCodeAt(0)==43)?i.substr(1):i),Ar,Fn));case 61:return n==null?null:Ce(vu(Ec(n,!0),Ar,Fn));default:throw V(new St(UE+t.ne()+K0))}};var rht,Mme,oht,Cme;S(Fi,"XMLTypeFactoryImpl",1919),y(586,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1,1945:1,586:1},$xe),s.N=!1,s.O=!1;var cht=!1;S(Fi,"XMLTypePackageImpl",586),y(1852,1,{837:1},NPe),s._j=function(){return uue(),bht},S(Fi,"XMLTypePackageImpl/1",1852),y(1861,1,Tn,FPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/10",1861),y(1862,1,Tn,BPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/11",1862),y(1863,1,Tn,$Pe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/12",1863),y(1864,1,Tn,KPe),s.wj=function(t){return kp(t)},s.xj=function(t){return oe(mr,we,333,t,7,1)},S(Fi,"XMLTypePackageImpl/13",1864),y(1865,1,Tn,qPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/14",1865),y(1866,1,Tn,HPe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/15",1866),y(1867,1,Tn,zPe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/16",1867),y(1868,1,Tn,VPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/17",1868),y(1869,1,Tn,GPe),s.wj=function(t){return Q(t,155)},s.xj=function(t){return oe(e4,we,155,t,0,1)},S(Fi,"XMLTypePackageImpl/18",1869),y(1870,1,Tn,UPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/19",1870),y(1853,1,Tn,WPe),s.wj=function(t){return Q(t,843)},s.xj=function(t){return oe(Xj,xe,843,t,0,1)},S(Fi,"XMLTypePackageImpl/2",1853),y(1871,1,Tn,YPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/20",1871),y(1872,1,Tn,XPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/21",1872),y(1873,1,Tn,JPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/22",1873),y(1874,1,Tn,QPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/23",1874),y(1875,1,Tn,ZPe),s.wj=function(t){return Q(t,190)},s.xj=function(t){return oe(Ps,we,190,t,0,2)},S(Fi,"XMLTypePackageImpl/24",1875),y(1876,1,Tn,eMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/25",1876),y(1877,1,Tn,tMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/26",1877),y(1878,1,Tn,nMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/27",1878),y(1879,1,Tn,iMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/28",1879),y(1880,1,Tn,rMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/29",1880),y(1854,1,Tn,oMe),s.wj=function(t){return Q(t,667)},s.xj=function(t){return oe(zx,xe,2021,t,0,1)},S(Fi,"XMLTypePackageImpl/3",1854),y(1881,1,Tn,cMe),s.wj=function(t){return Q(t,19)},s.xj=function(t){return oe($r,we,19,t,0,1)},S(Fi,"XMLTypePackageImpl/30",1881),y(1882,1,Tn,sMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/31",1882),y(1883,1,Tn,uMe),s.wj=function(t){return Q(t,162)},s.xj=function(t){return oe(H0,we,162,t,0,1)},S(Fi,"XMLTypePackageImpl/32",1883),y(1884,1,Tn,aMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/33",1884),y(1885,1,Tn,lMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/34",1885),y(1886,1,Tn,fMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/35",1886),y(1887,1,Tn,hMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/36",1887),y(1888,1,Tn,dMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/37",1888),y(1889,1,Tn,gMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/38",1889),y(1890,1,Tn,bMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/39",1890),y(1855,1,Tn,pMe),s.wj=function(t){return Q(t,668)},s.xj=function(t){return oe(Jj,xe,2022,t,0,1)},S(Fi,"XMLTypePackageImpl/4",1855),y(1891,1,Tn,wMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/40",1891),y(1892,1,Tn,mMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/41",1892),y(1893,1,Tn,vMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/42",1893),y(1894,1,Tn,yMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/43",1894),y(1895,1,Tn,_Me),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/44",1895),y(1896,1,Tn,EMe),s.wj=function(t){return Q(t,184)},s.xj=function(t){return oe(z0,we,184,t,0,1)},S(Fi,"XMLTypePackageImpl/45",1896),y(1897,1,Tn,SMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/46",1897),y(1898,1,Tn,PMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/47",1898),y(1899,1,Tn,MMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/48",1899),y(O1,1,Tn,CMe),s.wj=function(t){return Q(t,184)},s.xj=function(t){return oe(z0,we,184,t,0,1)},S(Fi,"XMLTypePackageImpl/49",O1),y(1856,1,Tn,IMe),s.wj=function(t){return Q(t,669)},s.xj=function(t){return oe(Sme,xe,2023,t,0,1)},S(Fi,"XMLTypePackageImpl/5",1856),y(1901,1,Tn,TMe),s.wj=function(t){return Q(t,162)},s.xj=function(t){return oe(H0,we,162,t,0,1)},S(Fi,"XMLTypePackageImpl/50",1901),y(1902,1,Tn,jMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/51",1902),y(1903,1,Tn,AMe),s.wj=function(t){return Q(t,19)},s.xj=function(t){return oe($r,we,19,t,0,1)},S(Fi,"XMLTypePackageImpl/52",1903),y(1857,1,Tn,OMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/6",1857),y(1858,1,Tn,DMe),s.wj=function(t){return Q(t,190)},s.xj=function(t){return oe(Ps,we,190,t,0,2)},S(Fi,"XMLTypePackageImpl/7",1858),y(1859,1,Tn,kMe),s.wj=function(t){return Dp(t)},s.xj=function(t){return oe(Qi,we,476,t,8,1)},S(Fi,"XMLTypePackageImpl/8",1859),y(1860,1,Tn,RMe),s.wj=function(t){return Q(t,217)},s.xj=function(t){return oe(B2,we,217,t,0,1)},S(Fi,"XMLTypePackageImpl/9",1860);var Zl,Fd,fM,Vx,X;y(50,60,$h,an),S(Cd,"RegEx/ParseException",50),y(820,1,{},zJ),s.sl=function(t){return ti*16)throw V(new an(gn((un(),Tet))));i=i*16+o}while(!0);if(this.a!=125)throw V(new an(gn((un(),jet))));if(i>JE)throw V(new an(gn((un(),Aet))));t=i}else{if(o=0,this.c!=0||(o=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(i=o,xn(this),this.c!=0||(o=Jg(this.a))<0)throw V(new an(gn((un(),Md))));i=i*16+o,t=i}break;case 117:if(r=0,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));n=n*16+r,t=n;break;case 118:if(xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,n>JE)throw V(new an(gn((un(),"parser.descappe.4"))));t=n;break;case 65:case 90:case 122:throw V(new an(gn((un(),Oet))))}return t},s.ul=function(t){var n,i;switch(t){case 100:i=(this.e&32)==32?j1("Nd",!0):(Ln(),Gx);break;case 68:i=(this.e&32)==32?j1("Nd",!1):(Ln(),Dme);break;case 119:i=(this.e&32)==32?j1("IsWord",!0):(Ln(),F4);break;case 87:i=(this.e&32)==32?j1("IsWord",!1):(Ln(),Rme);break;case 115:i=(this.e&32)==32?j1("IsSpace",!0):(Ln(),l3);break;case 83:i=(this.e&32)==32?j1("IsSpace",!1):(Ln(),kme);break;default:throw V(new No((n=t,Ott+n.toString(16))))}return i},s.vl=function(t){var n,i,r,o,u,a,l,d,p,v,A,D;for(this.b=1,xn(this),n=null,this.c==0&&this.a==94?(xn(this),t?v=(Ln(),Ln(),new du(5)):(n=(Ln(),Ln(),new du(4)),_c(n,0,JE),v=new du(4))):v=(Ln(),Ln(),new du(4)),o=!0;(D=this.c)!=1&&!(D==0&&this.a==93&&!o);){if(o=!1,i=this.a,r=!1,D==10)switch(i){case 100:case 68:case 119:case 87:case 115:case 83:pw(v,this.ul(i)),r=!0;break;case 105:case 73:case 99:case 67:i=this.Ll(v,i),i<0&&(r=!0);break;case 112:case 80:if(A=lse(this,i),!A)throw V(new an(gn((un(),BV))));pw(v,A),r=!0;break;default:i=this.tl()}else if(D==20){if(a=g_(this.i,58,this.d),a<0)throw V(new an(gn((un(),Rfe))));if(l=!0,Pr(this.i,this.d)==94&&(++this.d,l=!1),u=fu(this.i,this.d,a),d=KBe(u,l,(this.e&512)==512),!d)throw V(new an(gn((un(),Eet))));if(pw(v,d),r=!0,a+1>=this.j||Pr(this.i,a+1)!=93)throw V(new an(gn((un(),Rfe))));this.d=a+2}if(xn(this),!r)if(this.c!=0||this.a!=45)_c(v,i,i);else{if(xn(this),(D=this.c)==1)throw V(new an(gn((un(),ok))));D==0&&this.a==93?(_c(v,i,i),_c(v,45,45)):(p=this.a,D==10&&(p=this.tl()),xn(this),_c(v,i,p))}(this.e&Ka)==Ka&&this.c==0&&this.a==44&&xn(this)}if(this.c==1)throw V(new an(gn((un(),ok))));return n&&(I6(n,v),v=n),tv(v),M6(v),this.b=0,xn(this),v},s.wl=function(){var t,n,i,r;for(i=this.vl(!1);(r=this.c)!=7;)if(t=this.a,r==0&&(t==45||t==38)||r==4){if(xn(this),this.c!=9)throw V(new an(gn((un(),Met))));if(n=this.vl(!1),r==4)pw(i,n);else if(t==45)I6(i,n);else if(t==38)EXe(i,n);else throw V(new No("ASSERT"))}else throw V(new an(gn((un(),Cet))));return xn(this),i},s.xl=function(){var t,n;return t=this.a-48,n=(Ln(),Ln(),new ZB(12,null,t)),!this.g&&(this.g=new WA),UA(this.g,new TQ(t)),xn(this),n},s.yl=function(){return xn(this),Ln(),aht},s.zl=function(){return xn(this),Ln(),uht},s.Al=function(){throw V(new an(gn((un(),zu))))},s.Bl=function(){throw V(new an(gn((un(),zu))))},s.Cl=function(){return xn(this),ujt()},s.Dl=function(){return xn(this),Ln(),fht},s.El=function(){return xn(this),Ln(),dht},s.Fl=function(){var t;if(this.d>=this.j||((t=Pr(this.i,this.d++))&65504)!=64)throw V(new an(gn((un(),vet))));return xn(this),Ln(),Ln(),new $f(0,t-64)},s.Gl=function(){return xn(this),VBt()},s.Hl=function(){return xn(this),Ln(),ght},s.Il=function(){var t;return t=(Ln(),Ln(),new $f(0,105)),xn(this),t},s.Jl=function(){return xn(this),Ln(),hht},s.Kl=function(){return xn(this),Ln(),lht},s.Ll=function(t,n){return this.tl()},s.Ml=function(){return xn(this),Ln(),Ame},s.Nl=function(){var t,n,i,r,o;if(this.d+1>=this.j)throw V(new an(gn((un(),pet))));if(r=-1,n=null,t=Pr(this.i,this.d),49<=t&&t<=57){if(r=t-48,!this.g&&(this.g=new WA),UA(this.g,new TQ(r)),++this.d,Pr(this.i,this.d)!=41)throw V(new an(gn((un(),ab))));++this.d}else switch(t==63&&--this.d,xn(this),n=kue(this),n.e){case 20:case 21:case 22:case 23:break;case 8:if(this.c!=7)throw V(new an(gn((un(),ab))));break;default:throw V(new an(gn((un(),wet))))}if(xn(this),o=P0(this),i=null,o.e==2){if(o.em()!=2)throw V(new an(gn((un(),met))));i=o.am(1),o=o.am(0)}if(this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),Ln(),Ln(),new v$e(r,n,o,i)},s.Ol=function(){return xn(this),Ln(),Ome},s.Pl=function(){var t;if(xn(this),t=j8(24,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Ql=function(){var t;if(xn(this),t=j8(20,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Rl=function(){var t;if(xn(this),t=j8(22,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Sl=function(){var t,n,i,r,o;for(t=0,i=0,n=-1;this.d=this.j)throw V(new an(gn((un(),Dfe))));if(n==45){for(++this.d;this.d=this.j)throw V(new an(gn((un(),Dfe))))}if(n==58){if(++this.d,xn(this),r=Pxe(P0(this),t,i),this.c!=7)throw V(new an(gn((un(),ab))));xn(this)}else if(n==41)++this.d,xn(this),r=Pxe(P0(this),t,i);else throw V(new an(gn((un(),bet))));return r},s.Tl=function(){var t;if(xn(this),t=j8(21,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Ul=function(){var t;if(xn(this),t=j8(23,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Vl=function(){var t,n;if(xn(this),t=this.f++,n=CB(P0(this),t),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),n},s.Wl=function(){var t;if(xn(this),t=CB(P0(this),0),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Xl=function(t){return xn(this),this.c==5?(xn(this),v8(t,(Ln(),Ln(),new Gp(9,t)))):v8(t,(Ln(),Ln(),new Gp(3,t)))},s.Yl=function(t){var n;return xn(this),n=(Ln(),Ln(),new f5(2)),this.c==5?(xn(this),eb(n,dM),eb(n,t)):(eb(n,t),eb(n,dM)),n},s.Zl=function(t){return xn(this),this.c==5?(xn(this),Ln(),Ln(),new Gp(9,t)):(Ln(),Ln(),new Gp(3,t))},s.a=0,s.b=0,s.c=0,s.d=0,s.e=0,s.f=1,s.g=null,s.j=0,S(Cd,"RegEx/RegexParser",820),y(1824,820,{},n9e),s.sl=function(t){return!1},s.tl=function(){return zse(this)},s.ul=function(t){return CE(t)},s.vl=function(t){return gJe(this)},s.wl=function(){throw V(new an(gn((un(),zu))))},s.xl=function(){throw V(new an(gn((un(),zu))))},s.yl=function(){throw V(new an(gn((un(),zu))))},s.zl=function(){throw V(new an(gn((un(),zu))))},s.Al=function(){return xn(this),CE(67)},s.Bl=function(){return xn(this),CE(73)},s.Cl=function(){throw V(new an(gn((un(),zu))))},s.Dl=function(){throw V(new an(gn((un(),zu))))},s.El=function(){throw V(new an(gn((un(),zu))))},s.Fl=function(){return xn(this),CE(99)},s.Gl=function(){throw V(new an(gn((un(),zu))))},s.Hl=function(){throw V(new an(gn((un(),zu))))},s.Il=function(){return xn(this),CE(105)},s.Jl=function(){throw V(new an(gn((un(),zu))))},s.Kl=function(){throw V(new an(gn((un(),zu))))},s.Ll=function(t,n){return pw(t,CE(n)),-1},s.Ml=function(){return xn(this),Ln(),Ln(),new $f(0,94)},s.Nl=function(){throw V(new an(gn((un(),zu))))},s.Ol=function(){return xn(this),Ln(),Ln(),new $f(0,36)},s.Pl=function(){throw V(new an(gn((un(),zu))))},s.Ql=function(){throw V(new an(gn((un(),zu))))},s.Rl=function(){throw V(new an(gn((un(),zu))))},s.Sl=function(){throw V(new an(gn((un(),zu))))},s.Tl=function(){throw V(new an(gn((un(),zu))))},s.Ul=function(){throw V(new an(gn((un(),zu))))},s.Vl=function(){var t;if(xn(this),t=CB(P0(this),0),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Wl=function(){throw V(new an(gn((un(),zu))))},s.Xl=function(t){return xn(this),v8(t,(Ln(),Ln(),new Gp(3,t)))},s.Yl=function(t){var n;return xn(this),n=(Ln(),Ln(),new f5(2)),eb(n,t),eb(n,dM),n},s.Zl=function(t){return xn(this),Ln(),Ln(),new Gp(3,t)};var Xv=null,L4=null;S(Cd,"RegEx/ParserForXMLSchema",1824),y(117,1,QE,Lb),s.$l=function(t){throw V(new No("Not supported."))},s._l=function(){return-1},s.am=function(t){return null},s.bm=function(){return null},s.cm=function(t){},s.dm=function(t){},s.em=function(){return 0},s.Ib=function(){return this.fm(0)},s.fm=function(t){return this.e==11?".":""},s.e=0;var Ime,N4,hM,sht,Tme,tm=null,Gx,yY=null,jme,dM,_Y=null,Ame,Ome,Dme,kme,Rme,uht,l3,aht,lht,fht,hht,F4,dht,ght,Bzt=S(Cd,"RegEx/Token",117);y(136,117,{3:1,136:1,117:1},du),s.fm=function(t){var n,i,r;if(this.e==4)if(this==jme)i=".";else if(this==Gx)i="\\d";else if(this==F4)i="\\w";else if(this==l3)i="\\s";else{for(r=new nd,r.a+="[",n=0;n0&&(r.a+=","),this.b[n]===this.b[n+1]?co(r,oT(this.b[n])):(co(r,oT(this.b[n])),r.a+="-",co(r,oT(this.b[n+1])));r.a+="]",i=r.a}else if(this==Dme)i="\\D";else if(this==Rme)i="\\W";else if(this==kme)i="\\S";else{for(r=new nd,r.a+="[^",n=0;n0&&(r.a+=","),this.b[n]===this.b[n+1]?co(r,oT(this.b[n])):(co(r,oT(this.b[n])),r.a+="-",co(r,oT(this.b[n+1])));r.a+="]",i=r.a}return i},s.a=!1,s.c=!1,S(Cd,"RegEx/RangeToken",136),y(584,1,{584:1},TQ),s.a=0,S(Cd,"RegEx/RegexParser/ReferencePosition",584),y(583,1,{3:1,583:1},d8e),s.Fb=function(t){var n;return t==null||!Q(t,583)?!1:(n=c(t,583),rt(this.b,n.b)&&this.a==n.a)},s.Hb=function(){return md(this.b+"/"+Fse(this.a))},s.Ib=function(){return this.c.fm(this.a)},s.a=0,S(Cd,"RegEx/RegularExpression",583),y(223,117,QE,$f),s._l=function(){return this.a},s.fm=function(t){var n,i,r;switch(this.e){case 0:switch(this.a){case 124:case 42:case 43:case 63:case 40:case 41:case 46:case 91:case 123:case 92:r="\\"+ZF(this.a&Ni);break;case 12:r="\\f";break;case 10:r="\\n";break;case 13:r="\\r";break;case 9:r="\\t";break;case 27:r="\\e";break;default:this.a>=Vr?(i=(n=this.a>>>0,"0"+n.toString(16)),r="\\v"+fu(i,i.length-6,i.length)):r=""+ZF(this.a&Ni)}break;case 8:this==Ame||this==Ome?r=""+ZF(this.a&Ni):r="\\"+ZF(this.a&Ni);break;default:r=null}return r},s.a=0,S(Cd,"RegEx/Token/CharToken",223),y(309,117,QE,Gp),s.am=function(t){return this.a},s.cm=function(t){this.b=t},s.dm=function(t){this.c=t},s.em=function(){return 1},s.fm=function(t){var n;if(this.e==3)if(this.c<0&&this.b<0)n=this.a.fm(t)+"*";else if(this.c==this.b)n=this.a.fm(t)+"{"+this.c+"}";else if(this.c>=0&&this.b>=0)n=this.a.fm(t)+"{"+this.c+","+this.b+"}";else if(this.c>=0&&this.b<0)n=this.a.fm(t)+"{"+this.c+",}";else throw V(new No("Token#toString(): CLOSURE "+this.c+zr+this.b));else if(this.c<0&&this.b<0)n=this.a.fm(t)+"*?";else if(this.c==this.b)n=this.a.fm(t)+"{"+this.c+"}?";else if(this.c>=0&&this.b>=0)n=this.a.fm(t)+"{"+this.c+","+this.b+"}?";else if(this.c>=0&&this.b<0)n=this.a.fm(t)+"{"+this.c+",}?";else throw V(new No("Token#toString(): NONGREEDYCLOSURE "+this.c+zr+this.b));return n},s.b=0,s.c=0,S(Cd,"RegEx/Token/ClosureToken",309),y(821,117,QE,yne),s.am=function(t){return t==0?this.a:this.b},s.em=function(){return 2},s.fm=function(t){var n;return this.b.e==3&&this.b.am(0)==this.a?n=this.a.fm(t)+"+":this.b.e==9&&this.b.am(0)==this.a?n=this.a.fm(t)+"+?":n=this.a.fm(t)+(""+this.b.fm(t)),n},S(Cd,"RegEx/Token/ConcatToken",821),y(1822,117,QE,v$e),s.am=function(t){if(t==0)return this.d;if(t==1)return this.b;throw V(new No("Internal Error: "+t))},s.em=function(){return this.b?2:1},s.fm=function(t){var n;return this.c>0?n="(?("+this.c+")":this.a.e==8?n="(?("+this.a+")":n="(?"+this.a,this.b?n+=this.d+"|"+this.b+")":n+=this.d+")",n},s.c=0,S(Cd,"RegEx/Token/ConditionToken",1822),y(1823,117,QE,vNe),s.am=function(t){return this.b},s.em=function(){return 1},s.fm=function(t){return"(?"+(this.a==0?"":Fse(this.a))+(this.c==0?"":Fse(this.c))+":"+this.b.fm(t)+")"},s.a=0,s.c=0,S(Cd,"RegEx/Token/ModifierToken",1823),y(822,117,QE,Cne),s.am=function(t){return this.a},s.em=function(){return 1},s.fm=function(t){var n;switch(n=null,this.e){case 6:this.b==0?n="(?:"+this.a.fm(t)+")":n="("+this.a.fm(t)+")";break;case 20:n="(?="+this.a.fm(t)+")";break;case 21:n="(?!"+this.a.fm(t)+")";break;case 22:n="(?<="+this.a.fm(t)+")";break;case 23:n="(?"+this.a.fm(t)+")"}return n},s.b=0,S(Cd,"RegEx/Token/ParenToken",822),y(521,117,{3:1,117:1,521:1},ZB),s.bm=function(){return this.b},s.fm=function(t){return this.e==12?"\\"+this.a:ZRt(this.b)},s.a=0,S(Cd,"RegEx/Token/StringToken",521),y(465,117,QE,f5),s.$l=function(t){eb(this,t)},s.am=function(t){return c(i0(this.a,t),117)},s.em=function(){return this.a?this.a.a.c.length:0},s.fm=function(t){var n,i,r,o,u;if(this.e==1){if(this.a.a.c.length==2)n=c(i0(this.a,0),117),i=c(i0(this.a,1),117),i.e==3&&i.am(0)==n?o=n.fm(t)+"+":i.e==9&&i.am(0)==n?o=n.fm(t)+"+?":o=n.fm(t)+(""+i.fm(t));else{for(u=new nd,r=0;r=this.c.b:this.a<=this.c.b},s.Sb=function(){return this.b>0},s.Tb=function(){return this.b},s.Vb=function(){return this.b-1},s.Qb=function(){throw V(new td(Ftt))},s.a=0,s.b=0,S(Zfe,"ExclusiveRange/RangeIterator",254);var Yu=P_(ck,"C"),Qt=P_(tP,"I"),Gs=P_(M2,"Z"),rg=P_(nP,"J"),Ps=P_(Q6,"B"),gr=P_(Z6,"D"),nm=P_(eP,"F"),Jv=P_(iP,"S"),$zt=pi("org.eclipse.elk.core.labels","ILabelManager"),xme=pi(Br,"DiagnosticChain"),Lme=pi(htt,"ResourceSet"),Nme=S(Br,"InvocationTargetException",null),pht=(ZA(),OMt),wht=wht=y7t;CIt(vvt),QIt("permProps",[[[vk,yk],[_k,"gecko1_8"]],[[vk,yk],[_k,"ie10"]],[[vk,yk],[_k,"ie8"]],[[vk,yk],[_k,"ie9"]],[[vk,yk],[_k,"safari"]]]),wht(null,"elk",null)}).call(this)}).call(this,typeof fS<"u"?fS:typeof self<"u"?self:typeof window<"u"?window:{})},{}],3:[function(b,w,m){function P(M,_){if(!(M instanceof _))throw new TypeError("Cannot call a class as a function")}function g(M,_){if(!M)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return _&&(typeof _=="object"||typeof _=="function")?_:M}function E(M,_){if(typeof _!="function"&&_!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof _);M.prototype=Object.create(_&&_.prototype,{constructor:{value:M,enumerable:!1,writable:!0,configurable:!0}}),_&&(Object.setPrototypeOf?Object.setPrototypeOf(M,_):M.__proto__=_)}var C=b("./elk-api.js").default,T=(function(M){E(_,M);function _(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};P(this,_);var O=Object.assign({},I),j=!1;try{b.resolve("web-worker"),j=!0}catch{}if(I.workerUrl)if(j){var k=b("web-worker");O.workerFactory=function(H){return new k(H)}}else console.warn(`Web worker requested but 'web-worker' package not installed. -Consider installing the package or pass your own 'workerFactory' to ELK's constructor. -... Falling back to non-web worker version.`);if(!O.workerFactory){var x=b("./elk-worker.min.js"),R=x.Worker;O.workerFactory=function(H){return new R(H)}}return g(this,(_.__proto__||Object.getPrototypeOf(_)).call(this,O))}return _})(C);Object.defineProperty(w.exports,"__esModule",{value:!0}),w.exports=T,T.default=T},{"./elk-api.js":1,"./elk-worker.min.js":2,"web-worker":4}],4:[function(b,w,m){w.exports=Worker},{}]},{},[3])(3)})})(_ve)),_ve.exports}var JUt=XUt();const QUt=qzt(JUt);var TM={},Eve={},P3={},T0t;function ZUt(){if(T0t)return P3;T0t=1,Object.defineProperty(P3,"__esModule",{value:!0}),P3.DefaultLayoutConfigurator=P3.DefaultElementFilter=P3.ElkLayoutEngine=void 0;const f=LM();class h{constructor(g,E=new w,C=new m,T,M){this.filter=E,this.configurator=C,this.preprocessor=T,this.postprocessor=M,this.elk=g()}layout(g,E){if(this.getBasicType(g)!=="graph")return g;E||(E=new f.SModelIndex,E.add(g));const C=this.transformGraph(g,E);return this.preprocessor&&this.preprocessor.preprocess(C,g,E),this.elk.layout(C).then(T=>(this.postprocessor&&this.postprocessor.postprocess(T,g,E),this.applyLayout(T,E),g))}getBasicType(g){return(0,f.getBasicType)(g)}transformGraph(g,E){const C={id:g.id,layoutOptions:this.configurator.apply(g,E)};return g.children&&(C.children=g.children.filter(T=>this.getBasicType(T)==="node"&&this.filter.apply(T,E)).map(T=>this.transformNode(T,E)),C.edges=g.children.filter(T=>this.getBasicType(T)==="edge"&&this.filter.apply(T,E)).map(T=>this.transformEdge(T,E))),C}transformNode(g,E){var C,T,M;const _={id:g.id,layoutOptions:this.configurator.apply(g,E)};if(g.children){const I={top:0,right:0,bottom:0,left:0};_.children=this.transformCompartment(g,E,I),(I.top!==0||I.right!==0||I.bottom!==0||I.left!==0)&&((C=_.layoutOptions)!==null&&C!==void 0||(_.layoutOptions={}),(T=(M=_.layoutOptions)["org.eclipse.elk.padding"])!==null&&T!==void 0||(M["org.eclipse.elk.padding"]=`[top=${I.top},left=${I.left},bottom=${I.bottom},right=${I.right}]`)),_.edges=g.children.filter(O=>this.getBasicType(O)==="edge"&&this.filter.apply(O,E)).map(O=>this.transformEdge(O,E)),_.labels=g.children.filter(O=>this.getBasicType(O)==="label"&&this.filter.apply(O,E)).map(O=>this.transformLabel(O,E)),_.ports=g.children.filter(O=>this.getBasicType(O)==="port"&&this.filter.apply(O,E)).map(O=>this.transformPort(O,E))}return this.transformShape(_,g),_}transformCompartment(g,E,C){if(!g.children)return;const T=g.children.filter(M=>this.getBasicType(M)==="node"&&this.filter.apply(M,E));if(T.length>0)return T.map(M=>this.transformNode(M,E));for(const M of g.children)if(this.getBasicType(M)==="compartment"&&this.filter.apply(M,E)){const _=M;g.layout&&(_.position&&(C.left+=_.position.x,C.top+=_.position.y),_.size&&g.size&&(C.right+=g.size.width-_.size.width-(_.position?_.position.x:0),C.bottom+=g.size.height-_.size.height-(_.position?_.position.y:0)));const I=this.transformCompartment(_,E,C);if(I)return I}}transformEdge(g,E){const C={id:g.id,sources:[g.sourceId],targets:[g.targetId],layoutOptions:this.configurator.apply(g,E)};g.children&&(C.labels=g.children.filter(M=>this.getBasicType(M)==="label"&&this.filter.apply(M,E)).map(M=>this.transformLabel(M,E)));const T=g.routingPoints;return T&&T.length>=2&&(C.sections=[{id:g.id+":section",startPoint:T[0],bendPoints:T.slice(1,T.length-1),endPoint:T[T.length-1]}]),C}transformLabel(g,E){const C={id:g.id,text:g.text,layoutOptions:this.configurator.apply(g,E)};return this.transformShape(C,g),C}transformPort(g,E){const C={id:g.id,layoutOptions:this.configurator.apply(g,E)};return g.children&&(C.labels=g.children.filter(T=>this.getBasicType(T)==="label"&&this.filter.apply(T,E)).map(T=>this.transformLabel(T,E))),this.transformShape(C,g),C}transformShape(g,E){E.position&&(g.x=E.position.x,g.y=E.position.y),E.size&&(g.width=E.size.width,g.height=E.size.height)}applyLayout(g,E){const C=E.getById(g.id);if(C&&this.getBasicType(C)==="node"&&this.applyShape(C,g,E),g.children)for(const T of g.children)this.applyLayout(T,E);if(g.edges)for(const T of g.edges){const M=E.getById(T.id);M&&this.getBasicType(M)==="edge"&&this.applyEdge(M,T,E)}if(g.ports)for(const T of g.ports){const M=E.getById(T.id);M&&this.getBasicType(M)==="port"&&this.applyShape(M,T,E)}}applyShape(g,E,C){if(E.x!==void 0&&E.y!==void 0&&(g.position={x:E.x,y:E.y}),E.width!==void 0&&E.height!==void 0&&(g.size={width:E.width,height:E.height}),E.labels)for(const T of E.labels){const M=T.id&&C.getById(T.id);M&&this.applyShape(M,T,C)}}applyEdge(g,E,C){const T=[];if(E.sections&&E.sections.length>0){const M=E.sections[0];M.startPoint&&T.push(M.startPoint),M.bendPoints&&T.push(...M.bendPoints),M.endPoint&&T.push(M.endPoint)}else b(E)&&(E.sourcePoint&&T.push(E.sourcePoint),E.bendPoints&&T.push(...E.bendPoints),E.targetPoint&&T.push(E.targetPoint));g.routingPoints=T,E.labels&&E.labels.forEach(M=>{const _=M.id&&C.getById(M.id);_&&this.applyShape(_,M,C)})}}P3.ElkLayoutEngine=h;function b(P){return typeof P.source=="string"&&typeof P.target=="string"}class w{apply(g,E){switch(this.getBasicType(g)){case"node":return this.filterNode(g,E);case"edge":return this.filterEdge(g,E);case"label":return this.filterLabel(g,E);case"port":return this.filterPort(g,E);case"compartment":return this.filterCompartment(g,E);default:return!0}}getBasicType(g){return(0,f.getBasicType)(g)}filterNode(g,E){return!0}filterEdge(g,E){const C=E.getById(g.sourceId);if(!C)return!1;const T=this.getBasicType(C);if(T==="node"&&!this.filterNode(C,E)||T==="port"&&!this.filterPort(C,E))return!1;const M=E.getById(g.targetId);if(!M)return!1;const _=this.getBasicType(M);return!(_==="node"&&!this.filterNode(M,E)||_==="port"&&!this.filterPort(M,E))}filterLabel(g,E){return!0}filterPort(g,E){return!0}filterCompartment(g,E){return!0}}P3.DefaultElementFilter=w;class m{apply(g,E){switch(this.getBasicType(g)){case"graph":return this.graphOptions(g,E);case"node":return this.nodeOptions(g,E);case"edge":return this.edgeOptions(g,E);case"label":return this.labelOptions(g,E);case"port":return this.portOptions(g,E);default:return}}getBasicType(g){return(0,f.getBasicType)(g)}graphOptions(g,E){}nodeOptions(g,E){}edgeOptions(g,E){}labelOptions(g,E){}portOptions(g,E){}}return P3.DefaultLayoutConfigurator=m,P3}var j0t;function eWt(){return j0t||(j0t=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.elkLayoutModule=f.ILayoutPostprocessor=f.ILayoutPreprocessor=f.DefaultLayoutConfigurator=f.ILayoutConfigurator=f.DefaultElementFilter=f.IElementFilter=f.ElkFactory=f.ElkLayoutEngine=void 0;const h=Zt(),b=ZUt();f.ElkLayoutEngine=(0,h.injectable)()(b.ElkLayoutEngine),f.ElkFactory=Symbol("ElkFactory"),f.IElementFilter=Symbol("IElementFilter"),f.DefaultElementFilter=(0,h.injectable)()(b.DefaultElementFilter),f.ILayoutConfigurator=Symbol("ILayoutConfigurator"),f.DefaultLayoutConfigurator=(0,h.injectable)()(b.DefaultLayoutConfigurator),f.ILayoutPreprocessor=Symbol("ILayoutPreprocessor"),f.ILayoutPostprocessor=Symbol("ILayoutPostprocessor"),f.elkLayoutModule=new h.ContainerModule(w=>{w(f.ElkLayoutEngine).toDynamicValue(m=>{const P=m.container.get(f.ElkFactory),g=m.container.get(f.IElementFilter),E=m.container.get(f.ILayoutConfigurator),C=m.container.isBound(f.ILayoutPreprocessor)?m.container.get(f.ILayoutPreprocessor):void 0,T=m.container.isBound(f.ILayoutPostprocessor)?m.container.get(f.ILayoutPostprocessor):void 0;return new f.ElkLayoutEngine(P,g,E,C,T)}).inSingletonScope(),w(f.IElementFilter).to(f.DefaultElementFilter),w(f.ILayoutConfigurator).to(f.DefaultLayoutConfigurator)})})(Eve)),Eve}var A0t;function tWt(){return A0t||(A0t=1,(function(f){var h=TM&&TM.__createBinding||(Object.create?(function(w,m,P,g){g===void 0&&(g=P);var E=Object.getOwnPropertyDescriptor(m,P);(!E||("get"in E?!m.__esModule:E.writable||E.configurable))&&(E={enumerable:!0,get:function(){return m[P]}}),Object.defineProperty(w,g,E)}):(function(w,m,P,g){g===void 0&&(g=P),w[g]=m[P]})),b=TM&&TM.__exportStar||function(w,m){for(var P in w)P!=="default"&&!Object.prototype.hasOwnProperty.call(m,P)&&h(m,w,P)};Object.defineProperty(f,"__esModule",{value:!0}),b(eWt(),f)})(TM)),TM}var R3=tWt(),Xd=(f=>(f.LINES="Lines",f.WRAPPING="Wrapping Lines",f.CIRCLES="Circles",f))(Xd||{});function PX(f){const h=f.value||f.placeholder,{width:b}=uN(h,window.getComputedStyle(f).font),w=f.classList.contains("label-type-name")?2:8,m=b+w;f.style.width=m+"px"}const O0t=new Map;function uN(f,h="11pt sans-serif"){if(!f||f.length===0)return{width:20,height:20};h==""&&(h="11pt sans-serif");let b=O0t.get(h);if(!b){const E=document.createElement("canvas").getContext("2d");if(!E)throw new Error("Could not create canvas context used to measure text width");E.font=h,b={context:E,cache:new Map},O0t.set(h,b)}const{context:w,cache:m}=b,P=m.get(f);if(P)return P;{const g=w.measureText(f),E={width:Math.ceil(g.width),height:Math.ceil(g.actualBoundingBoxAscent+g.actualBoundingBoxDescent)};return m.set(f,E),E}}var nWt=Object.getOwnPropertyDescriptor,nmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?nWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},DL=(f,h)=>(b,w)=>h(b,w,f);class x3 extends R3.DefaultLayoutConfigurator{static _method=Xd.LINES;set method(h){x3._method=h}get method(){return x3._method}graphOptions(){return{[Xd.LINES]:{"org.eclipse.elk.algorithm":"org.eclipse.elk.layered","org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers":"30.0","org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers":"20.0","org.eclipse.elk.port.borderOffset":"14.0","org.eclipse.elk.omitNodeMicroLayout":"true","org.eclipse.elk.layered.nodePlacement.favorStraightEdges":"false"},[Xd.WRAPPING]:{"org.eclipse.elk.algorithm":"org.eclipse.elk.layered","org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers":"10.0","org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers":"5.0","org.eclipse.elk.edgeRouting":"ORTHOGONAL","org.eclipse.elk.layered.layering.strategy":"COFFMAN_GRAHAM","org.eclipse.elk.layered.compaction.postCompaction.strategy":"LEFT_RIGHT_CONSTRAINT_LOCKING","org.eclipse.elk.layered.wrapping.strategy":"MULTI_EDGE","org.eclipse.elk.layered.wrapping.correctionFactor":"2.0","org.eclipse.elk.omitNodeMicroLayout":"true","org.eclipse.elk.port.borderOffset":"14.0"},[Xd.CIRCLES]:{"org.eclipse.elk.algorithm":"org.eclipse.elk.stress","org.eclipse.elk.force.repulsion":"5.0","org.eclipse.elk.force.iterations":"100","org.eclipse.elk.force.repulsivePower":"1","org.eclipse.elk.omitNodeMicroLayout":"true"}}[this.method]}}const iWt=()=>new QUt({algorithms:["layered","stress"]});let $X=class extends R3.ElkLayoutEngine{constructor(f,h,b,w){super(f,h,b,void 0,w),this.configurator=b,this.postprocessor=w}transformShape(f,h){h.position&&(f.x=h.position.x,f.y=h.position.y),"bounds"in h&&(f.width=h.bounds.width??h.size.width,f.height=h.bounds.height??h.size.height)}transformEdge(f,h){const b=super.transformEdge(f,h);return b.sections=[],b}transformLabel(f,h){const b=super.transformLabel(f,h);if(this.configurator.method===Xd.WRAPPING)return b;const w=uN(f.text??"");return b.height=w.height,b.width=w.width,b}applyShape(f,h,b){if(this.getBasicType(f)==="port"&&f instanceof de.SChildElementImpl&&de.isBoundsAware(f.parent)){const P=f.parent;h.x!==void 0&&h.width!==void 0&&h.y!==void 0&&h.height!==void 0&&(this.configurator.method===Xd.CIRCLES?(h.x<=0&&(h.x-=h.width/2),h.y<=0&&(h.y-=h.height/2),h.x>=P.bounds.width&&(h.x-=h.width/2),h.y>=P.bounds.height&&(h.y-=h.height/2)):(h.x<=0&&(h.x+=h.width/2),h.y<=0&&(h.y+=h.height/2),h.x>=P.bounds.width&&(h.x-=h.width/2),h.y>=P.bounds.height&&(h.y-=h.height/2)))}super.applyShape(f,h,b);const w=b.getParent(f.id),m=w?this.getBasicType(w):"unknown";this.getBasicType(f)==="label"&&m=="edge"&&(f.size={width:-1,height:-1})}applyEdge(f,h,b){this.configurator.method===Xd.CIRCLES&&(h.sections=[]),super.applyEdge(f,h,b)}};$X=nmt([vr(),DL(0,Et(R3.ElkFactory)),DL(1,Et(R3.IElementFilter)),DL(2,Et(x3)),DL(3,Et(R3.ILayoutPostprocessor))],$X);let Lve=class{constructor(f){this.configurator=f}portToNodes=new Map;connectedPorts=new Map;nodeSquares=new Map;postprocess(f){if(this.configurator.method===Xd.CIRCLES&&(this.connectedPorts=new Map,!(!f.edges||!f.children))){for(const h of f.edges)for(const b of h.sources){this.connectedPorts.has(b)||this.connectedPorts.set(b,[]);for(const w of h.targets)this.connectedPorts.has(w)||this.connectedPorts.set(w,[]),this.connectedPorts.get(b)?.push(w),this.connectedPorts.get(w)?.push(b)}this.portToNodes=new Map,this.nodeSquares=new Map;for(const h of f.children)if(h.ports){for(const b of h.ports)this.portToNodes.set(b.id,h.id);this.nodeSquares.set(h.id,this.getNodeSquare(h))}for(const[h,b]of this.connectedPorts){if(b.length===0)continue;const w=b.map(x=>{const R=this.getLine(h,x),H=this.portToNodes.get(h);if(!H)return{x:0,y:0};const F=this.nodeSquares.get(H);return F?this.getIntersection(F,R):{x:0,y:0}}),m={x:w.reduce((x,R)=>x+R.x,0)/w.length,y:w.reduce((x,R)=>x+R.y,0)/w.length},P=this.portToNodes.get(h);if(!P)continue;const g=this.nodeSquares.get(P);if(!g)continue;const E={x:m.x,y:m.y},C={x1:g.x,y1:g.y,x2:g.x+g.width,y2:g.y},T={x1:g.x,y1:g.y+g.height,x2:g.x+g.width,y2:g.y+g.height},M={x1:g.x,y1:g.y,x2:g.x,y2:g.y+g.height},_={x1:g.x+g.width,y1:g.y,x2:g.x+g.width,y2:g.y+g.height},I=[{distance:Math.abs(m.y-g.y),dimension:"y",edge:C},{distance:Math.abs(m.y-(g.y+g.height)),dimension:"y",edge:T},{distance:Math.abs(m.x-g.x),dimension:"x",edge:M},{distance:Math.abs(m.x-(g.x+g.width)),dimension:"x",edge:_}];I.sort((x,R)=>x.distance-R.distance);const O=I[0].edge;I[0].dimension==="y"?(E.x=D0t(m.x,O.x1,O.x2),E.y=O.y1):(E.x=O.x1,E.y=D0t(m.y,O.y1,O.y2));const j=f.children.find(x=>x.id===P);if(!j)continue;const k=j.ports?.find(x=>x.id===h);k&&(k.x=E.x-(j.x??0),k.y=E.y-(j.y??0))}}}getNodeSquare(f){return{x:f.x??0,y:f.y??0,width:f.width??0,height:f.height??0}}getCenter(f){return{x:f.x+f.width/2,y:f.y+f.height/2}}getLine(f,h){const b=this.portToNodes.get(f),w=this.portToNodes.get(h);if(!b||!w)return{x1:0,y1:0,x2:0,y2:0};const m=this.nodeSquares.get(b),P=this.nodeSquares.get(w),g=this.getCenter(m),E=this.getCenter(P);return{x1:g.x,y1:g.y,x2:E.x,y2:E.y}}getIntersection(f,h){const b={x:f.x,y:f.y},w={x:f.x+f.width,y:f.y},m={x:f.x,y:f.y+f.height},P={x:f.x+f.width,y:f.y+f.height};return[this.getLineIntersection(h,{x1:b.x,y1:b.y,x2:w.x,y2:w.y}),this.getLineIntersection(h,{x1:w.x,y1:w.y,x2:P.x,y2:P.y}),this.getLineIntersection(h,{x1:P.x,y1:P.y,x2:m.x,y2:m.y}),this.getLineIntersection(h,{x1:m.x,y1:m.y,x2:b.x,y2:b.y})].filter(C=>C.x>=Math.min(h.x1,h.x2)&&C.x<=Math.max(h.x1,h.x2)&&C.y>=Math.min(h.y1,h.y2)&&C.y<=Math.max(h.y1,h.y2))[0]??{x:0,y:0}}getLineIntersection(f,h){const b=f.x1,w=f.y1,m=f.x2,P=f.y2,g=h.x1,E=h.y1,C=h.x2,T=h.y2,M=(b-m)*(E-T)-(w-P)*(g-C);if(M===0)return{x:0,y:0};const _=((b*P-w*m)*(g-C)-(b-m)*(g*T-E*C))/M,I=((b*P-w*m)*(E-T)-(w-P)*(g*T-E*C))/M;return{x:_,y:I}}};Lve=nmt([vr(),DL(0,Et(x3))],Lve);function D0t(f,h,b){const w=Math.min(h,b),m=Math.max(h,b);return Math.max(w,Math.min(m,f))}class Jd extends de.AbstractUIExtension{static ID="loading-indicator";loadingIndicatorWrapper;loadingIndicatorText;waitTimeout;id(){return Jd.ID}containerClass(){return Jd.ID}initializeContents(h){this.loadingIndicatorWrapper=document.createElement("div"),this.loadingIndicatorWrapper.id="loading-indicator-wrapper",this.loadingIndicatorWrapper.style.display="none";const b=document.createElement("div");b.id="turning-circle",this.loadingIndicatorWrapper.appendChild(b),this.loadingIndicatorText=document.createElement("div"),this.loadingIndicatorText.id="loading-indicator-text",this.loadingIndicatorWrapper.appendChild(this.loadingIndicatorText),h.appendChild(this.loadingIndicatorWrapper)}showIndicator(h){this.waitTimeout=setTimeout(()=>{this.waitTimeout&&this.loadingIndicatorWrapper&&(this.loadingIndicatorWrapper.style.display="flex",this.loadingIndicatorText&&(this.loadingIndicatorText.innerText=h||"Loading..."),this.loadingIndicatorWrapper.focus(),this.waitTimeout=void 0)},200)}hideIndicator(){this.waitTimeout&&(clearTimeout(this.waitTimeout),this.waitTimeout=void 0),this.loadingIndicatorWrapper&&(this.loadingIndicatorWrapper.style.display="none")}}var rWt=Object.getOwnPropertyDescriptor,oWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?rWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},MX=(f,h)=>(b,w)=>h(b,w,f),D3;(f=>{f.KIND="layoutModel";function h(b){return{kind:f.KIND,layoutMethod:b}}f.create=h})(D3||(D3={}));let Nve=class extends de.Command{constructor(f,h,b,w){super(),this.action=f,this.layoutEngine=h,this.configurator=b,this.loadingIndicator=w}static KIND=D3.KIND;oldRoot;newModel;async execute(f){this.loadingIndicator.showIndicator("Layouting..."),this.oldRoot=f.root,this.configurator.method=this.action.layoutMethod;const h=await this.layoutEngine.layout(f.root);return this.newModel=h,this.loadingIndicator.hideIndicator(),this.newModel}undo(f){return this.oldRoot??f.root}redo(f){return this.newModel??f.root}};Nve=oWt([MX(0,Et(de.TYPES.Action)),MX(1,Et(de.TYPES.IModelLayoutEngine)),MX(2,Et(x3)),MX(3,Et(Jd))],Nve);class Ey extends de.Command{constructor(h,b,w,m,P,g,E){super(),this.logger=h,this.labelTypeRegistry=b,this.constraintRegistry=w,this.editorModeController=m,this.actionDispatcher=P,this.fileName=g,this.loadingIndicator=E}blockUntil=Ey.loadBlockUntilFn;static loadBlockUntilFn=h=>h.kind==="initializeCanvasBounds";oldRoot;newRoot;oldLabelTypes;oldEditorMode;oldFileName;oldConstrains;file;async execute(h){if(this.loadingIndicator.showIndicator("Loading model..."),this.oldRoot=h.root,this.file=await this.getFile(h).catch(()=>{}),!this.file)return this.loadingIndicator.hide(),this.actionDispatcher.dispatch(de.InitializeCanvasBoundsAction.create(this.oldRoot.canvasBounds)),this.oldRoot;try{const b=Ey.preprocessModelSchema(this.file.content.model);this.newRoot=h.modelFactory.createRoot(b),this.logger.info(this,"Model loaded successfully"),this.oldLabelTypes=this.labelTypeRegistry.getLabelTypes();const w=this.file.content.labelTypes;this.labelTypeRegistry.clearLabelTypes(),w?(this.labelTypeRegistry.setLabelTypes(w),this.logger.info(this,"Label types loaded successfully")):this.labelTypeRegistry.clearLabelTypes(),this.oldEditorMode=this.editorModeController.get();const m=this.file.content.mode;m?this.editorModeController.set(m):this.editorModeController.setDefault(),this.logger.info(this,"Editor mode loaded successfully"),this.oldConstrains=this.constraintRegistry.getConstraintList();const P=this.file.content.constraints;return P?this.constraintRegistry.setConstraintsFromArray(P):this.constraintRegistry.clearConstraints(),this.postLoadActions(),this.oldFileName=this.fileName.getName(),this.fileName.setName(this.file.fileName),this.loadingIndicator.hide(),this.newRoot}catch(b){return this.logger.error(this,"Error loading model",b),this.newRoot=this.oldRoot,this.actionDispatcher.dispatch(de.InitializeCanvasBoundsAction.create(this.oldRoot.canvasBounds)),this.loadingIndicator.hide(),this.oldRoot}}undo(h){return this.loadingIndicator.showIndicator("Reverting model load..."),this.oldLabelTypes?this.labelTypeRegistry.setLabelTypes(this.oldLabelTypes):this.labelTypeRegistry.clearLabelTypes(),this.oldEditorMode?this.editorModeController.set(this.oldEditorMode):this.editorModeController.setDefault(),this.oldEditorMode&&this.editorModeController.set(this.oldEditorMode),this.oldConstrains&&this.constraintRegistry.setConstraintsFromArray(this.oldConstrains),this.fileName.setName(this.oldFileName??"diagram"),this.loadingIndicator.hide(),this.oldRoot??h.modelFactory.createRoot(de.EMPTY_ROOT)}redo(h){this.loadingIndicator.showIndicator("Re-applying model load...");const b=this.file?.content.labelTypes;this.labelTypeRegistry.clearLabelTypes(),b?(this.labelTypeRegistry.setLabelTypes(b),this.logger.info(this,"Label types loaded successfully")):this.labelTypeRegistry.clearLabelTypes();const w=this.file?.content.mode;w?this.editorModeController.set(w):this.editorModeController.setDefault(),this.logger.info(this,"Editor mode loaded successfully");const m=this.file?.content.constraints;return m?this.constraintRegistry.setConstraintsFromArray(m):this.constraintRegistry.clearConstraints(),this.fileName.setName(this.file?.fileName??"diagram"),this.loadingIndicator.hide(),this.newRoot??this.oldRoot??h.modelFactory.createRoot(de.EMPTY_ROOT)}static preprocessModelSchema(h){return"features"in h&&delete h.features,"canvasBounds"in h&&delete h.canvasBounds,h.children&&h.children.forEach(b=>this.preprocessModelSchema(b)),h}async postLoadActions(){return this.newRoot?(this.newRoot.children.filter(b=>b instanceof de.SNodeImpl).some(b=>de.isLocateable(b)&&b.position.x===0&&b.position.y===0)&&await this.actionDispatcher.dispatch(D3.create(Xd.LINES)),this.actionDispatcher.dispatch(xL.create(this.newRoot,!1))):void 0}}const cWt={canvasBounds:{x:0,y:0,width:1278,height:1324},scroll:{x:181.68489464915504,y:-12.838536201820945},zoom:6.057478948161569,position:{x:0,y:0},size:{width:-1,height:-1},features:{},type:"graph",id:"root",children:[{position:{x:84,y:54},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"User",labels:[{labelTypeId:"gvia09",labelTypeValueId:"g10hr"}],ports:[{position:{x:58.5,y:7},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"nhcrad",type:"port:dfd-input",children:[]},{position:{x:31,y:38.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set Sensitivity.Personal",features:{},id:"4wbyft",type:"port:dfd-output",children:[]},{position:{x:58.5,y:25.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set Sensitivity.Public",features:{},id:"wksxi8",type:"port:dfd-output",children:[]}],features:{},id:"7oii5l",type:"node:input-output",children:[]},{position:{x:249,y:67},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"view",labels:[],ports:[{position:{x:-3.5,y:13},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"ti4ri7",type:"port:dfd-input",children:[]},{position:{x:58.5,y:13},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward request",features:{},id:"bsqjm",type:"port:dfd-output",children:[]}],features:{},id:"0bh7yh",type:"node:function",children:[]},{position:{x:249,y:22},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"display",labels:[],ports:[{position:{x:58.5,y:15},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"0hfzu",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:9},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward items",features:{},id:"y1p7qq",type:"port:dfd-output",children:[]}],features:{},id:"4myuyr",type:"node:function",children:[]},{position:{x:364,y:152},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"encrypt",labels:[],ports:[{position:{x:-3.5,y:15.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"kqjy4g",type:"port:dfd-input",children:[]},{position:{x:29,y:-3.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward data -set Encryption.Encrypted`,features:{},id:"3wntc",type:"port:dfd-output",children:[]}],features:{},id:"3n988k",type:"node:function",children:[]},{position:{x:104,y:157},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"buy",labels:[],ports:[{position:{x:19,y:-3.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"2331e8",type:"port:dfd-input",children:[]},{position:{x:58.5,y:10.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward data",features:{},id:"vnkg73",type:"port:dfd-output",children:[]}],features:{},id:"z9v1jp",type:"node:function",children:[]},{position:{x:233.5,y:157},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"process",labels:[],ports:[{position:{x:-3.5,y:10.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"xyepdb",type:"port:dfd-input",children:[]},{position:{x:59.5,y:10.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward data",features:{},id:"eedb56",type:"port:dfd-output",children:[]}],features:{},id:"js61f",type:"node:function",children:[]},{position:{x:422.5,y:59},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Database",labels:[{labelTypeId:"gvia09",labelTypeValueId:"5hnugm"}],ports:[{position:{x:-3.5,y:23},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"scljwi",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set Sensitivity.Public",features:{},id:"1j7bn5",type:"port:dfd-output",children:[]}],features:{},id:"8j2r1g",type:"node:storage",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"vq8g3l",type:"edge:arrow",sourceId:"4wbyft",targetId:"2331e8",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"xrzc19",type:"edge:arrow",sourceId:"vnkg73",targetId:"xyepdb",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"ufflto",type:"edge:arrow",sourceId:"eedb56",targetId:"kqjy4g",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"ojjvtp",type:"edge:arrow",sourceId:"3wntc",targetId:"scljwi",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"c9n88l",type:"edge:arrow",sourceId:"bsqjm",targetId:"scljwi",text:"request",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"uflsc",type:"edge:arrow",sourceId:"wksxi8",targetId:"ti4ri7",text:"request",routerKind:"polyline",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"n81f3b",type:"edge:arrow",sourceId:"1j7bn5",targetId:"0hfzu",text:"items",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"hi397b",type:"edge:arrow",sourceId:"y1p7qq",targetId:"nhcrad",text:"items",children:[]}]},sWt=[{id:"4h3wzk",name:"Sensitivity",values:[{id:"zzvphn",text:"Personal"},{id:"veaan9",text:"Public"}]},{id:"gvia09",name:"Location",values:[{id:"g10hr",text:"EU"},{id:"5hnugm",text:"nonEU"}]},{id:"84rllz",name:"Encryption",values:[{id:"2r6xe6",text:"Encrypted"}]}],uWt=[{name:"Test",constraint:"data Sensitivity.Personal neverFlows vertex Location.nonEU"}],aWt="edit",lWt=1,fWt={model:cWt,labelTypes:sWt,constraints:uWt,mode:aWt,version:lWt},hWt={canvasBounds:{x:0,y:0,width:2333.75,height:1168.75},scroll:{x:-105.89197860962565,y:-63},zoom:3.0837730870712403,position:{x:0,y:0},size:{width:-1,height:-1},features:{},type:"graph",id:"root",children:[{position:{x:222,y:75},size:{width:71,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Mother",labels:[{labelTypeId:"vljvh",labelTypeValueId:"z2vuaa"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"6bvsh7",type:"port:dfd-input",children:[]},{position:{x:67.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set TraversedNodes.mother",features:{},id:"pzv6hg",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"3lqxlo",type:"node:input-output",children:[]},{position:{x:226.5,y:199},size:{width:62,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Dad",labels:[{labelTypeId:"vljvh",labelTypeValueId:"oqq2r"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"rva68j",type:"port:dfd-input",children:[]},{position:{x:58.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture -set TraversedNodes.dad`,features:{},id:"f6wz2q",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"wocqg",type:"node:input-output",children:[]},{position:{x:211,y:137},size:{width:63,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Aunt",labels:[{labelTypeId:"vljvh",labelTypeValueId:"vb0xw"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"j6a32",type:"port:dfd-input",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"mhu9ma",type:"node:input-output",children:[]},{position:{x:570,y:99.41666666666666},size:{width:125,height:78},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Family Pictures",labels:[{labelTypeId:"9jr84l",labelTypeValueId:"01mazd"},{labelTypeId:"6drw8l",labelTypeValueId:"dhfohg"},{labelTypeId:"6drw8l",labelTypeValueId:"qsj85"},{labelTypeId:"6drw8l",labelTypeValueId:"7p1lcu"}],ports:[{position:{x:-3.5,y:49.66666666666667},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"efr68k",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:21.333333333333336},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture -set TraversedNodes.pictureStorage -set Read.Aunt`,features:{},id:"l7yqhg",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"050esr",type:"node:storage",children:[]},{position:{x:211,y:12},size:{width:100,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Indexing Bot",labels:[{labelTypeId:"vljvh",labelTypeValueId:"1cnzie"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"h5c7l",type:"port:dfd-input",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"fagty",type:"node:input-output",children:[]},{position:{x:12,y:78},size:{width:105,height:36},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Read Pictures",labels:[],ports:[{position:{x:101.5,y:7.333333333333332},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"hmhlg5",type:"port:dfd-input",children:[]},{position:{x:101.5,y:14.499999999999998},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture -set TraversedNodes.readPicture`,features:{},id:"9fv3si",type:"port:dfd-output",children:[]},{position:{x:101.5,y:21.666666666666664},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture -set TraversedNodes.readPicture`,features:{},id:"b4g3ml",type:"port:dfd-output",children:[]},{position:{x:101.5,y:28.83333333333333},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture -set TraversedNodes.readPicture`,features:{},id:"tj9ox",type:"port:dfd-output",children:[]},{position:{x:101.5,y:.16666666666666607},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture -set TraversedNodes.readPicture`,features:{},id:"j4hq8ov",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"2ksl0i",type:"node:function",children:[]},{routingPoints:[{x:563,y:124.25},{x:543,y:124.25},{x:543,y:64},{x:154,y:64},{x:154,y:88.83333333333333},{x:124,y:88.83333333333333}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"xw3tf",type:"edge:arrow",sourceId:"l7yqhg",targetId:"hmhlg5",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:96},{x:215,y:96}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"wr13pw",type:"edge:arrow",sourceId:"9fv3si",targetId:"6bvsh7",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:103.16666666666666},{x:154,y:103.16666666666666},{x:154,y:158},{x:204,y:158}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"osynnp",type:"edge:arrow",sourceId:"b4g3ml",targetId:"j6a32",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:110.33333333333333},{x:144,y:110.33333333333333},{x:144,y:220},{x:219.5,y:220}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"ymvkcs",type:"edge:arrow",sourceId:"tj9ox",targetId:"rva68j",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:81.66666666666667},{x:144,y:81.66666666666667},{x:144,y:33},{x:204,y:33}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"ryd2n",type:"edge:arrow",sourceId:"j4hq8ov",targetId:"h5c7l",labels:null,ports:null,children:[]},{position:{x:388,y:140},size:{width:98,height:36},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Add Pictures",labels:[],ports:[{position:{x:94.5,y:14.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward mother_picture -set TraversedNodes.addPicture`,features:{},id:"i75rub",type:"port:dfd-output",children:[]},{position:{x:-3.5,y:21.666666666666668},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"q9uoh2",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:7.333333333333334},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"y7wy2c",type:"port:dfd-input",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"d2erj",type:"node:function",children:[]},{routingPoints:[{x:493,y:158},{x:543,y:158},{x:543,y:152.58333333333331},{x:563,y:152.58333333333331}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"c9na5t",type:"edge:arrow",sourceId:"i75rub",targetId:"efr68k",labels:null,ports:null,children:[]},{routingPoints:[{x:295.5,y:220},{x:361,y:220},{x:361,y:165.16666666666666},{x:381,y:165.16666666666666}],selected:!1,hoverFeedback:!1,opacity:1,text:"dad_picture",features:{},id:"pd8t5y",type:"edge:arrow",sourceId:"f6wz2q",targetId:"q9uoh2",labels:null,ports:null,children:[]},{routingPoints:[{x:300,y:96},{x:361,y:96},{x:361,y:150.83333333333334},{x:381,y:150.83333333333334}],selected:!1,hoverFeedback:!1,opacity:1,text:"mother_picture",features:{},id:"ekx5wq",type:"edge:arrow",sourceId:"pzv6hg",targetId:"y7wy2c",labels:null,ports:null,children:[]}]},dWt=[{id:"vljvh",name:"Identity",values:[{id:"z2vuaa",text:"Mother"},{id:"oqq2r",text:"Dad"},{id:"vb0xw",text:"Aunt"},{id:"1cnzie",text:"IndexingBot"}]},{id:"6drw8l",name:"Read",values:[{id:"7p1lcu",text:"Mother"},{id:"qsj85",text:"Dad"},{id:"dhfohg",text:"Aunt"},{id:"e8kf57",text:"IndexingBot"}]},{id:"9jr84l",name:"Owner",values:[{id:"01mazd",text:"Mother"}]},{id:"4qmig",name:"TraversedNodes",values:[{id:"6p4cbg",text:"addPicture"},{id:"igu1hs",text:"pictureStorage"},{id:"yqu7nt",text:"readPicture"},{id:"huqgc6",text:"mother"},{id:"as8h9i",text:"dad"},{id:"0noedq",text:"aunt"},{id:"33ryia",text:"indexingBot"}]}],gWt=[{name:"Isolation",constraint:"data !Read.IndexingBot neverFlows vertex Identity.IndexingBot"}],bWt="edit",pWt=1,wWt={model:hWt,labelTypes:dWt,constraints:gWt,mode:bWt,version:pWt};function L3(){return Math.random().toString(36).substring(7)}class Zd{labelTypes=[];updateCallbacks=[];registerLabelType(h){const b={id:L3(),name:h,values:[]};return this.labelTypes.push(b),this._registerLabelTypeValue(b.id,"Value",!0),this.labelTypeChanged(),b}unregisterLabelType(h){this.labelTypes=this.labelTypes.filter(b=>b.id!==h),this.labelTypeChanged()}updateLabelTypeName(h,b){const w=this.labelTypes.find(m=>m.id===h);if(!w)throw`No Label Type with id ${h} found`;w.name=b,this.labelTypeChanged()}setLabelTypes(h){this.labelTypes=h,this.labelTypeChanged()}registerLabelTypeValue(h,b){return this._registerLabelTypeValue(h,b)}_registerLabelTypeValue(h,b,w=!1){const m={id:L3(),text:b},P=this.labelTypes.find(g=>g.id===h);if(!P)throw`No Label Type with id ${h} found`;return P.values.push(m),w||this.labelTypeChanged(),m}unregisterLabelTypeValue(h,b){const w=this.labelTypes.find(m=>m.id===h);if(!w)throw`No Label Type with id ${h} found`;w.values=w.values.filter(m=>m.id!==b),this.labelTypeChanged()}updateLabelTypeValueText(h,b,w){const m=this.labelTypes.find(g=>g.id===h);if(!m)throw`No Label Type with id ${h} found`;const P=m.values.find(g=>g.id===b);if(!P)throw`Label Type ${m.name} has no value with id ${b}`;P.text=w,this.labelTypeChanged()}clearLabelTypes(){this.labelTypes=[],this.updateCallbacks.forEach(h=>h())}labelTypeChanged(){this.updateCallbacks.forEach(h=>h())}onUpdate(h){this.updateCallbacks.push(h)}getLabelTypes(){return this.labelTypes}getLabelType(h){return this.labelTypes.find(b=>b.id===h)}}class Ty{name="diagram";getName(){return this.name}setName(h){const b=h.lastIndexOf(".");this.name=b===-1?h:h.substring(0,b),document.title=this.name+".json - DFD WebEditor"}}const sc={Theme:Symbol("Theme"),Mode:Symbol("EditorMode"),HideEdgeNames:Symbol("HideEdgeNames"),SimplifyNodeNames:Symbol("SimplifyNodeNames"),ShownLabels:Symbol("ShownLabels")};var mWt=Object.getOwnPropertyDescriptor,vWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?mWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let Qd=class{constraints=[];updateCallbacks=[];selectedConstraints=this.constraints.map(f=>f.name);setConstraints(f){this.constraints=this.splitIntoConstraintTexts(f).map(h=>this.mapToConstraint(h)),this.constraintListChanged()}setConstraintsFromArray(f){this.constraints=f.map(h=>({name:h.name,constraint:h.constraint})),this.constraintListChanged()}setSelectedConstraints(f){this.selectedConstraints=f}getSelectedConstraints(){return this.selectedConstraints}clearConstraints(){this.constraints=[],this.constraintListChanged()}constraintListChanged(){this.updateCallbacks.forEach(f=>f())}onUpdate(f){this.updateCallbacks.push(f)}getConstraintsAsText(){return this.constraints.map(f=>`- ${f.name}: ${f.constraint}`).join(` -`)}getConstraintList(){return this.constraints}selectedContainsAllConstraints(){return this.getConstraintList().map(f=>f.name).every(f=>this.getSelectedConstraints().includes(f))}setAllConstraintsAsSelected(){this.selectedConstraints=this.constraints.map(f=>f.name)}splitIntoConstraintTexts(f){const h=[];let b="";for(const w of f)w.startsWith("- ")?(b!==""&&h.push(b),b=w):b+=` -${w}`;return b!==""&&h.push(b),h}mapToConstraint(f){const h=f.split(/(\s+)/);if(h.length<3)return{name:"",constraint:""};let b=h[2];b.endsWith(":")&&(b=b.slice(0,-1));let w="";for(let m=4;m{for(var m=w>1?void 0:w?yWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},oS=(f,h)=>(b,w)=>h(b,w,f),dA;(f=>{f.KIND="loadDefaultDiagram";function h(){return{kind:f.KIND}}f.create=h})(dA||(dA={}));let Fve=class extends Ey{static KIND=dA.KIND;constructor(f,h,b,w,m,P,g,E){super(h,b,w,m,P,g,E)}async getFile(){return this.loadDAC()}async loadOnlineShop(){return{fileName:"online-shop",content:fWt}}async loadDAC(){return{fileName:"dac",content:wWt}}};Fve=_Wt([oS(0,Et(de.TYPES.Action)),oS(1,Et(de.TYPES.ILogger)),oS(2,Et(Zd)),oS(3,Et(Qd)),oS(4,Et(sc.Mode)),oS(5,Et(de.TYPES.IActionDispatcher)),oS(6,Et(Ty)),oS(7,Et(Jd))],Fve);var EWt=Object.getOwnPropertyDescriptor,SWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?EWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},cS=(f,h)=>(b,w)=>h(b,w,f),KX;(f=>{f.KIND="loadUrl";function h(b){return{kind:f.KIND,url:b}}f.create=h})(KX||(KX={}));let Bve=class extends Ey{constructor(f,h,b,w,m,P,g,E){super(h,b,w,m,P,g,E),this.action=f}static KIND=KX.KIND;async getFile(){const f=await fetch(this.action.url).then(w=>w.json()),h=this.action.url.split("/"),b=h[h.length-1];return{content:f,fileName:b}}};Bve=SWt([cS(0,Et(de.TYPES.Action)),cS(1,Et(de.TYPES.ILogger)),cS(2,Et(Zd)),cS(3,Et(Qd)),cS(4,Et(sc.Mode)),cS(5,Et(de.TYPES.IActionDispatcher)),cS(6,Et(Ty)),cS(7,Et(Jd))],Bve);var PWt=Object.getOwnPropertyDescriptor,MWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?PWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},CWt=(f,h)=>(b,w)=>h(b,w,f);let $ve=class{constructor(f){this.actionDispatcher=f}run(){const h=new URLSearchParams(window.location.search).get("file");this.actionDispatcher.dispatch(h!=null?KX.create(h):dA.create())}};$ve=MWt([CWt(0,Et(de.TYPES.IActionDispatcher))],$ve);var IWt=Object.defineProperty,TWt=Object.getOwnPropertyDescriptor,jWt=(f,h,b)=>h in f?IWt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,AWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?TWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},k0t=(f,h)=>(b,w)=>h(b,w,f),OWt=(f,h,b)=>jWt(f,h+"",b);let Sy=class{constructor(f,h){this.logger=f,this.fileName=h,this.init()}webSocket;webSocketId=-1;lastRequest={};init(){this.webSocket=new WebSocket(Sy.WS_URL),this.webSocket.onopen=()=>{this.logger.log(this,"WebSocket connection established.")},this.webSocket.onclose=()=>{this.logger.log(this,"WebSocket connection closed. Reconnecting..."),this.reject(new Error("WebSocket connection closed")),this.init()},this.webSocket.onerror=()=>{this.logger.log(this,"WebSocket error occurred."),this.reject(new Error("WebSocket error occurred")),this.init()},this.webSocket.onmessage=f=>{const h=f.data;if(this.logger.log(this,"WebSocket message received: "+h),h.startsWith("Error:")&&this.reject(new Error(h)),h.startsWith("ID assigned:")){const b=h.split(":");this.webSocketId=parseInt(b[1].trim()),this.logger.log(this,"WebSocket ID assigned: "+this.webSocketId);return}this.lastRequest.resolve?(this.lastRequest.resolve(h),this.lastRequest.resolve=void 0,this.lastRequest.reject=void 0):this.logger.log(this,"No pending request to resolve.")}}reject(f){this.lastRequest.reject&&(this.lastRequest.reject(f),this.lastRequest.resolve=void 0,this.lastRequest.reject=void 0)}async requestDiagram(f){const h=await this.sendMessage(f),b=h.split(":")[0],w=h.replace(b+":","");return{fileName:b,content:JSON.parse(w)}}sendMessage(f){const h=new Promise((b,w)=>{this.lastRequest.resolve=b,this.lastRequest.reject=w});return!this.webSocket||this.webSocket.readyState!==WebSocket.OPEN?(this.reject(new Error("WebSocket is not connected")),h):(this.webSocket.send(this.webSocketId+":"+this.fileName.getName()+":"+f),h)}};OWt(Sy,"WS_URL","ws://localhost:3000/events/");Sy=AWt([vr(),k0t(0,Et(de.TYPES.ILogger)),k0t(1,Et(Ty))],Sy);var DWt=Object.getOwnPropertyDescriptor,kWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?DWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},RWt=(f,h)=>(b,w)=>h(b,w,f);let Kve=class{constructor(f){}run(){}};Kve=kWt([RWt(0,Et(Sy))],Kve);var qX;(f=>{f.KIND="hide-edge-names";function h(){return{kind:f.KIND}}f.create=h})(qX||(qX={}));class xWt extends de.Command{static KIND=qX.KIND;execute(h){return h.root}undo(h){return h.root}redo(h){return h.root}}var LWt=Object.getOwnPropertyDescriptor,imt=(f,h,b,w)=>{for(var m=w>1?void 0:w?LWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},NWt=(f,h)=>(b,w)=>h(b,w,f);class a2e extends de.SEdgeImpl{text;get editableLabel(){const h=this.children.find(b=>b.type.startsWith("label"));if(h&&de.isEditableLabel(h))return h}}let qve=class extends de.PolylineEdgeViewWithGapsOnIntersections{constructor(f){super(),this.hideEdgeNames=f}renderAdditionals(f,h,b){const w=super.renderAdditionals(f,h,b),m=h[h.length-2],P=h[h.length-1],g=de.svg("path",{"class-arrow":!0,d:"M 0.5,0 L 10,-4 L 10,4 Z",transform:`rotate(${mg.toDegrees(mg.angleOfPoint({x:m.x-P.x,y:m.y-P.y}))} ${P.x} ${P.y}) translate(${P.x} ${P.y})`,style:{opacity:f.opacity.toString()}});return w.push(g),w}renderLine(f,h){const b=h[0];let w=`M ${b.x},${b.y}`;for(let m=1;m{for(var m=w>1?void 0:w?BWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let gA=class extends rmt{getName(){const f=[];if(this.incomingEdges.forEach(h=>{if(h instanceof a2e){const b=h.editableLabel?.text;b&&f.push(b)}else return}),f.length!==0)return f.sort().join("|")}canConnect(f,h){return h==="target"}};gA=$Wt([vr()],gA);class KWt extends de.ShapeView{render(h,b){if(!this.isVisible(h,b))return;const{width:w,height:m}=h.bounds;return de.svg("g",{"class-sprotty-port":!0,"class-selected":h.selected,style:{opacity:h.opacity.toString()}},de.svg("rect",{x:"0",y:"0",width:w,height:m}),de.svg("text",{x:w/2,y:m/2,"class-port-text":!0},"I"),b.renderChildren(h))}}var omt=Object.defineProperty,qWt=Object.getOwnPropertyDescriptor,HWt=(f,h,b)=>h in f?omt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,l2e=(f,h,b,w)=>{for(var m=w>1?void 0:w?qWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&omt(h,b,m),m},zWt=(f,h)=>(b,w)=>h(b,w,f),VWt=(f,h,b)=>HWt(f,h+"",b);class x0t extends de.CenterGridSnapper{constructor(h){super(),this.gridSize=h}get gridX(){return this.gridSize}get gridY(){return this.gridSize}}let Hve=class{nodeSnapper=new x0t(5);portSnapper=new x0t(2.5);snapPort(f,h){const b=h.parent;if(b instanceof de.SPortImpl||!de.isBoundsAware(b))return f;const w=b.bounds,m=(_,I,O)=>Math.min(Math.max(_,I),O);f=this.portSnapper.snap(f,h);const P=m(f.x,0,w.width),g=m(f.y,0,w.height),C=[{x:P,y:0},{x:0,y:g},{x:w.width,y:g},{x:P,y:w.height}].reduce((_,I)=>Math.hypot(I.x-f.x,I.y-f.y){if(b instanceof de.SPortImpl){const w={...b.position},{width:m,height:P}=b.bounds;w.x+=m/2,w.y+=P/2,b.position=h.snap(w,b)}})}const cmt=Symbol("dfd-label-feature");function smt(f){return f.features?.has(cmt)??!1}var UWt=Object.defineProperty,WWt=Object.getOwnPropertyDescriptor,YWt=(f,h,b)=>h in f?UWt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,XWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?WWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Sve=(f,h)=>(b,w)=>h(b,w,f),JWt=(f,h,b)=>YWt(f,h+"",b),zX;(f=>{function h(b,w){return{kind:bA.KIND,action:"add",labelAssignment:b,element:w}}f.create=h})(zX||(zX={}));var Vve;(f=>{function h(b,w){return{kind:bA.KIND,action:"remove",labelAssignment:b,element:w}}f.create=h})(Vve||(Vve={}));let bA=class{constructor(f,h,b){this.action=f,this.editorModeController=h,this.snapper=b}elements;execute(f){if(this.editorModeController.isReadOnly())return f.root;if(this.action.element)this.elements=[this.action.element];else{const h=umt(f.root.children);this.elements=h.filter(b=>de.isSelected(b)&&smt(b))}return this.action.action=="add"?this.addLabel():this.removeLabel(),f.root}undo(f){return this.editorModeController.isReadOnly()||(this.action.action=="add"?this.removeLabel():this.addLabel()),f.root}redo(f){return this.editorModeController.isReadOnly()||(this.action.action=="add"?this.addLabel():this.removeLabel()),f.root}addLabel(){this.elements?.forEach(f=>{f.labels.find(b=>b.labelTypeId===this.action.labelAssignment.labelTypeId&&b.labelTypeValueId===this.action.labelAssignment.labelTypeValueId)!==void 0||(f.labels.push(this.action.labelAssignment),f instanceof de.SNodeImpl&&zve(f,this.snapper))})}removeLabel(){this.elements?.forEach(f=>{const h=f.labels,b=h.findIndex(w=>w.labelTypeId==this.action.labelAssignment.labelTypeId&&w.labelTypeValueId==this.action.labelAssignment.labelTypeValueId);b>=0&&(h.splice(b,1),f instanceof de.SNodeImpl&&zve(f,this.snapper))})}};JWt(bA,"KIND","labelAction");bA=XWt([vr(),Sve(0,Et(de.TYPES.Action)),Sve(1,Et(sc.Mode)),Sve(2,Et(de.TYPES.ISnapper))],bA);function umt(f){const h=[];for(const b of f)h.push(b),"children"in b&&h.push(...umt(b.children));return h}var QWt=Object.defineProperty,ZWt=Object.getOwnPropertyDescriptor,eYt=(f,h,b)=>h in f?QWt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,tYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?ZWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},L0t=(f,h)=>(b,w)=>h(b,w,f),EJ=(f,h,b)=>eYt(f,typeof h!="symbol"?h+"":h,b);let Rf=class{constructor(f,h){this.actionDispatcher=f,this.labelTypeRegistry=h}getLabel(f){const h=this.labelTypeRegistry.getLabelType(f.labelTypeId),b=h?.values.find(w=>w.id===f.labelTypeValueId);if(!(!h||!b))return{type:h,value:b}}computeLabelContent(f){const h=this.getLabel(f);if(!h)return["",0];const b=`${h.type.name}: ${h.value.text}`,w=uN(b,"5pt sans-serif").width+Rf.LABEL_TEXT_PADDING;return[b,w]}renderSingleNodeLabel(f,h,b,w){const[m,P]=this.computeLabelContent(h),g=b-P/2,E=b+P/2,C=Rf.LABEL_HEIGHT,T=C/2,M=()=>{this.actionDispatcher.dispatch(Vve.create(h,f))};return de.svg("g",{"class-node-label":!0},de.svg("rect",{x:g,y:w,width:P,height:C,rx:T,ry:T}),de.svg("text",{x:b,y:w+C/2},m),f.hoverFeedback?de.svg("g",{"class-label-delete":!0,on:{click:M}},de.svg("circle",{cx:E,cy:w,r:T*.8}),de.svg("text",{x:E,y:w},"X")):void 0)}sortLabels(f){f.sort((h,b)=>{const w=this.getLabel(h),m=this.getLabel(b);return!w||!m?0:w.type.namem.type.name?1:w.value.text.localeCompare(m.value.text)})}renderNodeLabels(f,h,b=0,w=Rf.LABEL_SPACING_HEIGHT){return this.sortLabels(f.labels),de.svg("g",null,f.labels.map((m,P)=>{const g=f.bounds.width/2,E=h+P*w;return this.renderSingleNodeLabel(f,m,g+b,E)}))}};EJ(Rf,"LABEL_HEIGHT",10);EJ(Rf,"LABEL_SPACE_BETWEEN",2);EJ(Rf,"LABEL_SPACING_HEIGHT",Rf.LABEL_HEIGHT+Rf.LABEL_SPACE_BETWEEN);EJ(Rf,"LABEL_TEXT_PADDING",8);Rf=tYt([vr(),L0t(0,Et(de.TYPES.IActionDispatcher)),L0t(1,Et(Zd))],Rf);var nYt=Object.defineProperty,iYt=(f,h,b,w)=>{for(var m=void 0,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(h,b,m)||m);return m&&nYt(h,b,m),m};const amt=class uA extends de.SNodeImpl{static DEFAULT_FEATURES=[...de.SNodeImpl.DEFAULT_FEATURES,de.withEditLabelFeature,cmt];static DEFAULT_WIDTH=50;static WIDTH_PADDING=12;static NODE_COLOR="var(--color-primary)";static HIGHLIGHTED_COLOR="var(--color-highlighted)";dfdNodeLabelRenderer;text="";color;labels=[];ports=[];hideLabels=!1;minimumWidth=uA.DEFAULT_WIDTH;annotations=[];constructor(){super()}get editableLabel(){const h=this.children.find(b=>b.type==="label:positional");if(h&&de.isEditableLabel(h))return h}calculateWidth(){if(this.hideLabels)return this.minimumWidth+uA.WIDTH_PADDING;const h=uN(this.text).width,b=this.labels.map(m=>this.dfdNodeLabelRenderer?.computeLabelContent(m)[1]??0);return Math.max(...b,h,uA.DEFAULT_WIDTH)+uA.WIDTH_PADDING}calculateHeight(){return this.labels.length>0&&!this.hideLabels?this.labelStartHeight()+this.labels.length*Rf.LABEL_SPACING_HEIGHT+Rf.LABEL_SPACE_BETWEEN:this.noLabelHeight()}get bounds(){return{x:this.position.x,y:this.position.y,width:this.calculateWidth(),height:this.calculateHeight()}}getAvailableInputs(){return this.children.filter(h=>h instanceof gA).map(h=>h).map(h=>h.getName())}getEdgeTexts(h){return this.children.filter(w=>w instanceof gA).map(w=>w).flatMap(w=>w.incomingEdges).filter(w=>w instanceof a2e).map(w=>w).filter(h).map(w=>w.editableLabel?.text??"")}geViewStyleObject(){const h={opacity:this.opacity.toString()};return h["--border"]="#FFFFFF",this.color&&(h["--color"]=this.color),h}setColor(h,b=!0){(b||this.color===uA.NODE_COLOR)&&(this.color=h)}};iYt([Et(Rf)],amt.prototype,"dfdNodeLabelRenderer");let jy=amt;var rYt=Object.getOwnPropertyDescriptor,lmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?rYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Pve=(f,h)=>(b,w)=>h(b,w,f);let VX=class{plainNames;anonymousNames;nextNummber=1;constructor(){this.plainNames=new Map,this.anonymousNames=new Map}setPlainName(f){f.editableLabel&&this.plainNames.has(f.id)&&(f.editableLabel.text=this.plainNames.get(f.id))}setAnonymousName(f){f instanceof jy&&f.editableLabel&&this.plainNames.set(f.id,f.editableLabel.text),this.anonymousNames.has(f.id)||(this.anonymousNames.set(f.id,this.nextNummber),this.nextNummber++),f.editableLabel&&(f.editableLabel.text=this.anonymousNames.get(f.id).toString())}};VX=lmt([vr()],VX);var GX;(f=>{f.KIND="simplify-node-names";function h(){return{kind:f.KIND}}f.create=h})(GX||(GX={}));let Gve=class extends de.Command{constructor(f,h,b){super(),this.nodeNameRegistry=h,this.simplifyNodeNames=b}static KIND=GX.KIND;execute(f){return this.iterate(f.root,h=>this.simplifyNodeNames.get()?this.nodeNameRegistry.setAnonymousName(h):this.nodeNameRegistry.setPlainName(h)),f.root}undo(f){return f.root}redo(f){return f.root}iterate(f,h){f instanceof jy&&h(f);for(const b of f.children)this.iterate(b,h)}};Gve=lmt([Pve(0,Et(de.TYPES.Action)),Pve(1,Et(VX)),Pve(2,Et(sc.SimplifyNodeNames))],Gve);function oYt(f,h,b){f.registerListener(()=>{f.isReadOnly()||(h.set(!1),b.set(!1))}),h.registerListener(w=>{w&&f.set("view")}),b.registerListener(w=>{w&&f.set("view")})}function cYt(f,h,b){b.registerListener(()=>f.dispatch(qX.create())),h.registerListener(()=>f.dispatch(GX.create()))}class SJ{value;listeners=[];constructor(h){this.value=h}get(){return this.value}set(h){const b=this.value;this.value=h,b!==h&&this.listeners.forEach(w=>w(h))}registerListener(h){this.listeners.push(h)}}class N0t extends SJ{constructor(h=!1){super(h)}}var DM=(f=>(f.LIGHT="Light",f.DARK="Dark",f.SYSTEM_DEFAULT="System Default",f))(DM||{});class fA extends SJ{static SYSTEM_DEFAULT=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"Dark":"Light";static LOCAL_STORAGE_KEY="dfdwebeditor:theme";constructor(){super(localStorage.getItem(fA.LOCAL_STORAGE_KEY)??fA.SYSTEM_DEFAULT)}getTheme(){const h=this.get();return h==="System Default"?fA.SYSTEM_DEFAULT:h}}const fmt=Symbol("ThemeSwitchable");function sYt(f,h){f.registerListener(()=>{F0t(f,h)}),F0t(f,h)}function F0t(f,h){const b=document.querySelector(":root"),w=document.querySelector("#sprotty"),m=f.getTheme()==="Dark"?"dark":"light";b.setAttribute("data-theme",m),w.setAttribute("data-theme",m),localStorage.setItem(fA.LOCAL_STORAGE_KEY,f.get()),h.forEach(P=>P.switchTheme(f.getTheme()))}var uYt=Object.getOwnPropertyDescriptor,aYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?uYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},rA=(f,h)=>(b,w)=>h(b,w,f);let Uve=class{constructor(f,h,b,w,m,P){this.themeManager=f,this.hideEdgeNames=h,this.simplifyNodeNames=b,this.editorModeController=w,this.switchables=m,this.actionDispatcher=P}run(){oYt(this.editorModeController,this.simplifyNodeNames,this.hideEdgeNames),sYt(this.themeManager,this.switchables),cYt(this.actionDispatcher,this.simplifyNodeNames,this.hideEdgeNames)}};Uve=aYt([rA(0,Et(sc.Theme)),rA(1,Et(sc.HideEdgeNames)),rA(2,Et(sc.SimplifyNodeNames)),rA(3,Et(sc.Mode)),rA(4,cJ(fmt)),rA(5,Et(de.TYPES.IActionDispatcher))],Uve);const lYt=new xf(f=>{f(OL).to(xve),f(OL).to($ve),f(OL).to(Kve),f(OL).to(Uve)}),fYt=new xf((f,h,b,w)=>{f(de.TYPES.ModelSource).to(de.LocalModelSource).inSingletonScope(),w(de.TYPES.ILogger).to(de.ConsoleLogger).inSingletonScope(),w(de.TYPES.LogLevel).toConstantValue(de.LogLevel.log);const m={bind:f,unbind:h,isBound:b,rebind:w};de.configureViewerOptions(m,{zoomLimits:{min:.05,max:20}})});class CX{constructor(){}static buildDeleteButton(){const h=document.createElement("button");h.classList.add("delete-button");const b=document.createElement("span");return b.classList.add("codicon","codicon-trash"),h.appendChild(b),h}static buildAddButton(h){const b=document.createElement("button");b.classList.add("add-button");const w=document.createElement("span");w.classList.add("codicon","codicon-add"),b.appendChild(w);const m=document.createElement("span");return m.innerText=h,b.appendChild(m),b}}var hYt=Object.getOwnPropertyDescriptor,dYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?hYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},gYt=(f,h)=>(b,w)=>h(b,w,f);const hmt="application/x-label-assignment";let Wve=class extends de.MouseListener{constructor(f){super(),this.logger=f}dragOver(f,h){return h.preventDefault(),[]}drop(f,h){const b=h.dataTransfer?.getData(hmt);if(!b)return[];const w=dmt(f);if(!w)return this.logger.info(this,"Aborted drop of label assignment because the target element nor the parent elements have the dfd label feature"),[];if(!(w instanceof de.SNodeImpl))return this.logger.info(this,"Aborted drop of label assignment because the target element is not a node"),[];const m=JSON.parse(b);return this.logger.info(this,"Adding label assignment to element",w,m),[zX.create(m,w),de.CommitModelAction.create()]}};Wve=dYt([vr(),gYt(0,Et(de.TYPES.ILogger))],Wve);function dmt(f){if(smt(f))return f;if("parent"in f)return dmt(f.parent)}function aN(f){if(!f||f.length==0)return[];const h=[];for(const[b,w]of f.entries()){const m=w.split(/(\s+)/);let P=0;for(let g=0;g0&&h.push({text:E,line:b+1,column:P+1}),P+=E.length}(w.match(/\s$/)||w.length==0)&&h.push({text:"",line:b+1,column:P+1})}return h}function B0t(f,h,b){const w=aN(f),m=Yve(w,h,h,0,b);for(let g=0;g=f.length)return[];if(!P&&f[w].column==1&&b.some(C=>C.word.verify(f[w].text).length===0))return Yve(f,b,b,w,m,!0);let g=f[w].text;for(const E of h)E.word.replace&&(g=E.word.replace(g,m));return[{...f[w],newText:g},...Yve(f,h.flatMap(E=>E.children),b,w+1,m)]}function f2e(f,h){return Xve(f,h,0,!1,h,!0)}function Xve(f,h,b,w,m,P=!1){if(b>=f.length)return h.length==0||w?[]:[{message:"Unexpected end of line",line:f[b-1].line,startColumn:f[b-1].column+f[b-1].text.length-1,endColumn:f[b-1].column+f[b-1].text.length}];if(!P&&f[b].column==1&&m.some(T=>T.word.verify(f[b].text).length===0))return Xve(f,m,b,!1,m,!0);const g=[];let E=[];for(const C of h){const T=C.word.verify(f[b].text);if(T.length>0){g.push({message:T[0],startColumn:f[b].column,endColumn:f[b].column+f[b].text.length,line:f[b].line});continue}const M=Xve(f,C.children,b+1,C.canBeFinal||!1,m);if(M.length==0)return[];E=E.concat(M)}return E.length>0?$0t(E):$0t(g)}function $0t(f){const h=new Set;return f.filter(b=>{const w=`${b.line}-${b.startColumn}-${b.endColumn}-${b.message}`;return h.has(w)?!1:(h.add(w),!0)})}class tl{constructor(h){this.word=h}verify(h){return h===this.word?[]:[`Expected keyword "${this.word}"`]}completionOptions(){return[{insertText:this.word,kind:wh.CompletionItemKind.Keyword}]}}class bYt{verify(h){return h.length>0?[]:["Expected a symbol"]}completionOptions(){return[]}}class oA{constructor(h){this.word=h}verify(h){return h.startsWith("!")?this.word.verify(h.substring(1)):this.word.verify(h)}completionOptions(h){return h.startsWith("!")?this.word.completionOptions(h.substring(1)).map(w=>({...w,startOffset:(w.startOffset??0)+1})):this.word.completionOptions(h)}replace(h,b){return this.word.replace?h.startsWith("!")?this.replace(h.substring(1),b):this.word.replace(h,b):h}}class Mve{constructor(h){this.word=h}verify(h){const b=h.split(",");for(const w of b){const m=this.word.verify(w);if(m.length>0)return m}return[]}completionOptions(h){const b=h.split(","),w=b[b.length-1];return this.word.completionOptions(w)}replace(h,b){return this.word.replace?h.split(",").map(m=>this.word.replace(m,b)).join(","):h}}const IX="dfd-assignment-language",pYt=["forward","assign","set","unset"],wYt=[...pYt,"if","from"],mYt=["TRUE","FALSE"],vYt={keywords:[...wYt,...mYt],operators:["=","||","&&","!"],symbols:/[=>{function h(g,E){return[b(E,"set"),b(E,"unset"),w(g),m(E,g)]}f.buildTree=h;function b(g,E){const C={word:new Mve(new Jve(g)),children:[]};return{word:new tl(E),children:[C]}}function w(g){const E={word:new Mve(new Qve(g)),children:[]};return{word:new tl("forward"),children:[E]}}function m(g,E){const C={word:new tl("from"),children:[{word:new Mve(new Qve(E)),children:[]}]},T={word:new tl("if"),children:P(g,C,E)};return{word:new tl("assign"),children:[{word:new Jve(g),children:[T]}]}}function P(g,E,C){const T=["&&","||"].map(_=>({word:new tl(_),children:[]})),M=[new tl("TRUE"),new tl("FALSE"),new _Yt(g,C)].map(_=>({word:_,children:[...T,E],canBeFinal:!0}));return T.forEach(_=>{_.children=M}),M}})(NL||(NL={}));class yYt{constructor(h){this.port=h}getAvailableInputs(){const h=this.port.parent;return h instanceof jy?h.getAvailableInputs().filter(b=>b!==void 0):[]}}class Jve{constructor(h){this.labelTypeRegistry=h}completionOptions(h){const b=h.split(".");if(b.length==1)return this.labelTypeRegistry.getLabelTypes().map(w=>({insertText:w.name,kind:wh.CompletionItemKind.Class}));if(b.length==2){const w=this.labelTypeRegistry.getLabelTypes().find(m=>m.name===b[0]);return w?w.values.map(m=>({insertText:m.text,kind:wh.CompletionItemKind.Enum,startOffset:b[0].length+1})):[]}return[]}verify(h){const b=h.split(".");if(b.length>2)return["Expected at most 2 parts in characteristic selector"];const w=this.labelTypeRegistry.getLabelTypes().find(P=>P.name===b[0]);return w?b.length<2?["Expected characteristic to have value"]:b[1].startsWith("$")&&b[1].length>=2?[]:w.values.find(P=>P.text===b[1])?[]:['Unknown label value "'+b[1]+'" for type "'+b[0]+'"']:['Unknown label type "'+b[0]+'"']}replace(h,b){return b.type=="label"&&h==b.old?b.replacement:h}}class Qve extends yYt{completionOptions(){return this.getAvailableInputs().map(b=>({insertText:b,kind:wh.CompletionItemKind.Variable}))}verify(h){return this.getAvailableInputs().includes(h)?[]:[`Unknown input "${h}"`]}}class _Yt{inputWord;labelWord;constructor(h,b){this.inputWord=new Qve(b),this.labelWord=new Jve(h)}completionOptions(h){const b=this.getParts(h);return b[1]===void 0?this.inputWord.completionOptions().map(w=>({...w,insertText:w.insertText})):b.length>=2?this.labelWord.completionOptions(b[1]).map(w=>({...w,insertText:w.insertText,startOffset:(w.startOffset??0)+b[0].length+1})):[]}verify(h){const b=this.getParts(h),w=this.inputWord.verify(b[0]);if(w.length>0)return w;if(b[1]===void 0)return["Expected input and label separated by a dot"];const m=this.labelWord.verify(b[1]);return[...w,...m]}replaceWord(h,b){const[w,m]=this.getParts(h);return b.type=="label"&&m===b.old?w+"."+b.replacement:h}getParts(h){if(h.includes(".")){const b=h.indexOf("."),w=h.substring(0,b),m=h.substring(b+1);return[w,m]}return[h,void 0]}}var EYt=Object.defineProperty,SYt=Object.getOwnPropertyDescriptor,h2e=(f,h,b,w)=>{for(var m=w>1?void 0:w?SYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&EYt(h,b,m),m};let pA=class extends rmt{behavior="";validBehavior=!0;tree;labelTypeRegistry;constructor(){super()}get editableLabel(){const f=this.children.find(h=>h.type==="label:invisible");if(f&&de.isEditableLabel(f))return f}canConnect(f,h){return h==="source"}geViewStyleObject(){const f={opacity:this.opacity.toString()};return this.validBehavior||(f["--port-border"]="#ff0000",f["--port-color"]="#ff6961"),f}setBehavior(f){if(this.behavior=f,f===""){this.validBehavior=!0;return}if(!this.tree){if(!this.labelTypeRegistry)return;this.tree=NL.buildTree(this,this.labelTypeRegistry)}const h=f2e(aN(this.behavior.split(` -`)),this.tree);this.validBehavior=h.length===0}getBehavior(){return this.behavior}};h2e([Et(Zd)],pA.prototype,"labelTypeRegistry",2);pA=h2e([vr()],pA);let Zve=class extends de.ShapeView{render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds;return de.svg("g",{"class-sprotty-port":!0,"class-selected":f.selected,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w}),de.svg("text",{x:b/2,y:w/2,"class-port-text":!0},"O"),h.renderChildren(f))}};Zve=h2e([vr()],Zve);const TX="dfd-constraint",PYt={keywords:["data","vertex","neverFlows","to","where","named","present","empty","type"],symbols:/[=>{function h(_,I){const O=m(),j={word:new tl("where"),children:O},k=w(_,I);k.forEach(ce=>{b(ce).forEach(J=>{J.canBeFinal=!0,J.children.push(j)})});const x={word:new tl("vertex"),children:k},R={word:new tl("neverFlows"),children:[x,j],canBeFinal:!0},H={word:new tl("data"),children:[]},F=w(_,I);F.forEach(ce=>{b(ce).forEach(J=>{J.children.push(H),J.children.push(R)})});const $={word:new tl("vertex"),children:F},W=w(_,I);W.forEach(ce=>{b(ce).forEach(J=>{J.children.push($),J.children.push(R)})}),H.children=W;const re={word:new C,children:[$,H]};return[{word:new tl("-"),children:[re]}]}f.buildTree=h;function b(_){if(_.children.length==0)return[_];let I=[];for(const O of _.children)I=I.concat(b(O));return I}function w(_,I){const O={word:new tl("type"),children:[new oA(new tl("EXTERNAL")),new oA(new tl("PROCESS")),new oA(new tl("STORE"))].map(R=>({word:R,children:[]}))},j={word:new oA(new E(I)),children:[]},k={word:new oA(new M(I)),children:[]},x={word:new tl("named"),children:[{word:new T(_),children:[]}]};return[O,j,k,x]}function m(){const _={word:new tl("present"),children:[{word:new oA(new g),children:[]}]},I={word:new tl("empty"),children:[{word:new P,children:[]}]};return[_,I]}class P{constraintVariableReference;constructor(){this.constraintVariableReference=new g}completionOptions(I){return I.startsWith("intersection(")?I.substring(13,I.length-1).split(",").length>2?[]:this.constraintVariableReference.completionOptions():"intersection(".includes(I)?[{label:"intersection()",insertText:"intersection($0)",insertTextRules:wh.CompletionItemInsertTextRule.InsertAsSnippet,kind:wh.CompletionItemKind.Function}]:[]}verify(I){if(!I.startsWith("intersection("))return['Expected keyword "intersection"'];const O=I.substring(13,I.length-1).split(",");return O.length>2?['Expected at most 2 attributes in "intersection"']:O.flatMap(j=>this.constraintVariableReference.verify(j))}}class g extends bYt{}class E{constructor(I){this.labelTypeRegistry=I}completionOptions(I){const O=I.split(".");if(O.length==1)return this.labelTypeRegistry.getLabelTypes().map(j=>({insertText:j.name,kind:wh.CompletionItemKind.Class}));if(O.length==2){const j=this.labelTypeRegistry.getLabelTypes().find(x=>x.name===O[0]);if(!j)return[];const k=j.values.map(x=>({insertText:x.text,kind:wh.CompletionItemKind.Enum,startOffset:O[0].length+1}));return k.push({insertText:"$"+j.name,kind:wh.CompletionItemKind.Variable,startOffset:O[0].length+1}),k}return[]}verify(I){const O=I.split(".");if(O.length>2)return["Expected at most 2 parts in characteristic selector"];const j=this.labelTypeRegistry.getLabelTypes().find(x=>x.name===O[0]);return j?O.length<2?["Expected characteristic to have value"]:O[1].startsWith("$")&&O[1].length>=2?[]:j.values.find(x=>x.text===O[1])?[]:['Unknown label value "'+O[1]+'" for type "'+O[0]+'"']:['Unknown label type "'+O[0]+'"']}replace(I,O){return O.type=="label"&&I==O.old?O.replacement:I}}class C{completionOptions(I){return I.length===0?[]:[{insertText:":",kind:wh.CompletionItemKind.Keyword}]}verify(I){return I.split(":")[0].length===0?["Expected a name"]:I.endsWith(":")?[]:['Expected ":" at the end of name']}}class T{constructor(I){this.modelSource=I}completionOptions(){return this.getAllPortNames().map(I=>({insertText:I,kind:wh.CompletionItemKind.Variable}))}verify(I){return this.getAllPortNames().includes(I)?[]:['Unknown variable name "'+I+'"']}getAllPortNames(){const I=new Map,O=this.modelSource.model;if(O.children===void 0)return[];for(const j of O.children){const k=j;if(k.text!==void 0&&k.targetId!==void 0){const x=k.text,R=k.targetId;I.has(R)?I.get(R)?.push(x):I.set(R,[x])}}return Array.from(I.keys()).map(j=>I.get(j).sort().join("|"))}}class M{characteristicSelectorData;constructor(I){this.characteristicSelectorData=new E(I)}completionOptions(I){const O=I.split(","),j=O[O.length-1];return this.characteristicSelectorData.completionOptions(j)}verify(I){const O=I.split(",");for(let j=0;j0)return k}return[]}replace(I,O){return this.characteristicSelectorData.replace?I.split(",").map(k=>this.characteristicSelectorData.replace(k,O)).join(","):I}}})(UX||(UX={}));var MYt=Object.getOwnPropertyDescriptor,CYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?MYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},jX=(f,h)=>(b,w)=>h(b,w,f),FL;(f=>{f.KIND="replace-action";function h(b){return{kind:f.KIND,replacements:b}}f.create=h})(FL||(FL={}));let eye=class extends de.Command{constructor(f,h,b,w){super(),this.action=f,this.constraintRegistry=h,this.labelTypeRegistry=b,this.localModelSource=w}static KIND=FL.KIND;execute(f){this.iterateForPorts(f.root);for(const h of this.action.replacements)this.constraintRegistry.setConstraints(B0t(this.constraintRegistry.getConstraintsAsText().split(` -`),UX.buildTree(this.localModelSource,this.labelTypeRegistry),h));return f.root}undo(f){return f.root}redo(f){return f.root}iterateForPorts(f){if(f instanceof pA)for(const h of this.action.replacements)f.setBehavior(B0t(f.getBehavior().split(` -`),NL.buildTree(f,this.labelTypeRegistry),h).join(` -`));for(const h of f.children)this.iterateForPorts(h)}};eye=CYt([jX(0,Et(de.TYPES.Action)),jX(1,Et(Qd)),jX(2,Et(Zd)),jX(3,Et(de.TYPES.ModelSource))],eye);var Pl=z3(),IYt=Object.getOwnPropertyDescriptor,TYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?IYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Cve=(f,h)=>(b,w)=>h(b,w,f);let hS=class extends RM{constructor(f,h,b){super("left","down"),this.labelTypeRegistry=f,this.actionDispatcher=h,this.editorModeController=b,f.onUpdate(()=>this.renderLabelTypes())}static ID="label-type-editor-ui";labelSectionContainer;id(){return hS.ID}containerClass(){return hS.ID}initializeHidableContent(f){const h=CX.buildAddButton("Label Type");h.onclick=()=>{this.editorModeController.isReadOnly()||this.labelTypeRegistry.registerLabelType("")},this.labelSectionContainer=document.createElement("div"),this.renderLabelTypes(),f.appendChild(this.labelSectionContainer),f.appendChild(h)}initializeHeaderContent(f){f.innerText="Label Types"}renderLabelTypes(){if(!this.labelSectionContainer)return;const f=this.labelSectionContainer.scrollWidth,h=this.labelSectionContainer.scrollHeight;this.labelSectionContainer.style.width=`${f}px`,this.labelSectionContainer.style.height=`${h}px`;const b=document.createDocumentFragment(),w=this.labelTypeRegistry.getLabelTypes();for(let m=0;mthis.onInputHandler(g,b),PX(b),setTimeout(()=>PX(b),0),b.onchange=()=>{if(this.editorModeController.isReadOnly())return;const g=f.values.map(E=>({old:`${f.name}.${E}`,replacement:`${b.value}.${E}`,type:"label"}));this.labelTypeRegistry.updateLabelTypeName(f.id,b.value),this.actionDispatcher.dispatch(FL.create(g))},b.onfocus=()=>{this.editorModeController.isReadOnly()&&b.blur()};for(let g=0;g{this.editorModeController.isReadOnly()||this.labelTypeRegistry.registerLabelTypeValue(f.id,"")},w.onclick=()=>{this.editorModeController.isReadOnly()||this.labelTypeRegistry.unregisterLabelType(f.id)},h.appendChild(b),h.appendChild(w),h.appendChild(m),h.appendChild(P),h}buildLabelTypeValue(f,h){const b=document.createElement("div");b.classList.add("label-type-value");const w=document.createElement("input");w.classList.add("label-type-value-name");const m=CX.buildDeleteButton(),P=f.values[h];return w.value=P.text,w.placeholder="Value",w.oninput=g=>this.onInputHandler(g,w),w.style.width="0px",setTimeout(()=>PX(w),0),w.onchange=()=>{if(this.editorModeController.isReadOnly())return;const g=[{old:`${f.name}.${P.text}`,replacement:`${f.name}.${w.value}`,type:"label"}];this.labelTypeRegistry.updateLabelTypeValueText(f.id,P.id,w.value),this.actionDispatcher.dispatch(FL.create(g))},m.onclick=()=>{this.editorModeController.isReadOnly()||this.labelTypeRegistry.unregisterLabelTypeValue(f.id,P.id)},w.draggable=!0,w.ondragstart=g=>{if(this.editorModeController.isReadOnly())return;const E={labelTypeId:f.id,labelTypeValueId:P.id},C=JSON.stringify(E);g.dataTransfer?.setData(hmt,C)},w.onclick=()=>{this.editorModeController.isReadOnly()||w.getAttribute("clicked")!=="true"&&(w.setAttribute("clicked","true"),setTimeout(()=>{w.getAttribute("clicked")==="true"&&(this.actionDispatcher.dispatch(zX.create({labelTypeId:f.id,labelTypeValueId:P.id})),w.removeAttribute("clicked"))},500))},w.ondblclick=()=>{this.editorModeController.isReadOnly()||(w.removeAttribute("clicked"),w.focus())},w.onfocus=g=>{if(this.editorModeController.isReadOnly()){w.blur();return}w.getAttribute("clicked")!=="true"&&(g.preventDefault(),setTimeout(()=>{w.blur()},0))},b.appendChild(w),b.appendChild(m),b}onInputHandler(f,h){f.data?.match(/^[a-zA-Z0-9]*$/)||f.preventDefault(),PX(h)}keyDown(f,h){return Pl.matchesKeystroke(h,"KeyT")&&this.toggleStatus(),[]}keyUp(){return[]}};hS=TYt([Cve(0,Et(Zd)),Cve(1,Et(de.TYPES.IActionDispatcher)),Cve(2,Et(sc.Mode))],hS);const jYt=new xf((f,h,b)=>{f(Zd).toSelf().inSingletonScope(),f(hS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(hS),f(Db.DefaultUIElement).to(hS),f(de.TYPES.KeyListener).toService(hS),de.configureCommand({bind:f,isBound:b},bA),de.configureCommand({bind:f,isBound:b},eye),f(de.TYPES.MouseListener).to(Wve)});function AYt(f,h){const b=document.createElement("input");b.type="file",b.accept=f.join(","),b.multiple=h>1;const w=new Promise((m,P)=>{b.onchange=()=>{if(!b.files||b.files.length!==h){P("No file selected");return}m(Array.from(b.files))},b.oncancel=()=>{P("Canceled file selection")}});return b.click(),w}function OYt(f){return new Promise((h,b)=>{const w=new FileReader;w.onload=()=>h({fileName:f.name,content:w.result}),w.onerror=()=>b(w.error),w.readAsText(f)})}async function d2e(f,h){const b=await AYt(f,h).catch(()=>[]);return Promise.all(b.map(OYt))}function DYt(f){return d2e(f,1).then(h=>h?h[0]:void 0)}var kYt=Object.getOwnPropertyDescriptor,RYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?kYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},M3=(f,h)=>(b,w)=>h(b,w,f),WX;(f=>{f.KIND="loadDfdAndDdFile";function h(){return{kind:f.KIND}}f.create=h})(WX||(WX={}));let tye=class extends Ey{constructor(f,h,b,w,m,P,g,E,C){super(h,b,w,m,E,P,C),this.dfdWebSocket=g}static KIND=WX.KIND;async getFile(){const f=await d2e([".dataflowdiagram",".datadictionary"],2),h=f.find(m=>m.fileName.endsWith(".dataflowdiagram"))?.content,b=f.find(m=>m.fileName.endsWith(".datadictionary"))?.content;if(!h||!b)return;const w=this.fileName.getName();return this.fileName.setName(f[0].fileName),this.dfdWebSocket.requestDiagram("DFD:"+h+` -:DD: -`+b).catch(m=>{throw this.fileName.setName(w),m})}};tye=RYt([M3(0,Et(de.TYPES.Action)),M3(1,Et(de.TYPES.ILogger)),M3(2,Et(Zd)),M3(3,Et(Qd)),M3(4,Et(sc.Mode)),M3(5,Et(Ty)),M3(6,Et(Sy)),M3(7,Et(de.TYPES.IActionDispatcher)),M3(8,Et(Jd))],tye);var xYt=Object.getOwnPropertyDescriptor,LYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?xYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},sS=(f,h)=>(b,w)=>h(b,w,f),BL;(f=>{f.KIND="loadJsonFile";function h(){return{kind:f.KIND}}f.create=h})(BL||(BL={}));let nye=class extends Ey{static KIND=BL.KIND;constructor(f,h,b,w,m,P,g,E){super(h,b,w,m,P,g,E)}async getFile(){const f=await DYt(["application/json"]);if(f)return this.fileName.setName(f.fileName),{fileName:f.fileName,content:JSON.parse(f.content)}}};nye=LYt([sS(0,Et(de.TYPES.Action)),sS(1,Et(de.TYPES.ILogger)),sS(2,Et(Zd)),sS(3,Et(Qd)),sS(4,Et(sc.Mode)),sS(5,Et(de.TYPES.IActionDispatcher)),sS(6,Et(Ty)),sS(7,Et(Jd))],nye);var NYt=Object.getOwnPropertyDescriptor,FYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?NYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},C3=(f,h)=>(b,w)=>h(b,w,f),YX;(f=>{f.KIND="loadPcmFile";function h(){return{kind:f.KIND}}f.create=h})(YX||(YX={}));let hA=class extends Ey{constructor(f,h,b,w,m,P,g,E,C){super(h,b,w,m,P,g,C),this.dfdWebSocket=E}static KIND=YX.KIND;static FILE_ENDINGS=[".pddc",".allocation",".nodecharacteristics",".repository",".resourceenvironment",".system",".usagemodel"];async getFile(){const f=await d2e(hA.FILE_ENDINGS,hA.FILE_ENDINGS.length);if(hA.FILE_ENDINGS.some(b=>!f.find(w=>w.fileName.endsWith(b))))throw new Error("Please select one file of each required type: .pddc, .allocation, .nodecharacteristics, .repository, .resourceenvironment, .system, .usagemodel");const h=this.fileName.getName();return this.fileName.setName(f[0].fileName),this.dfdWebSocket.requestDiagram(f.map(b=>`${b.fileName}:${b.content}`).join("---FILE---")).catch(b=>{throw this.fileName.setName(h),b})}};hA=FYt([C3(0,Et(de.TYPES.Action)),C3(1,Et(de.TYPES.ILogger)),C3(2,Et(Zd)),C3(3,Et(Qd)),C3(4,Et(sc.Mode)),C3(5,Et(de.TYPES.IActionDispatcher)),C3(6,Et(Ty)),C3(7,Et(Sy)),C3(8,Et(Jd))],hA);var BYt=Object.getOwnPropertyDescriptor,$Yt=(f,h,b,w)=>{for(var m=w>1?void 0:w?BYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let iye=class extends de.SModelFactory{createElement(f,h){if(f instanceof de.SModelElementImpl)return super.createElement(f,h);if(f.type==="node:storage"||f.type==="node:function"||f.type==="node:input-output"){const w=f;f.children=f.children??[];for(const m of w.ports)"features"in m&&delete m.features;f.children.push(...w.ports,{type:"label:positional",text:w.text??"",id:f.id+"-label"})}if(f.type==="edge:arrow"){const w=f;f.children=f.children??[],f.children.push({type:"label:filled-background",text:w.text??"",id:f.id+"-label",edgePlacement:{position:.5,side:"on",rotate:!1}})}"features"in f&&delete f.features;const b=super.createElement(f,h);return b.features===void 0&&(b.features=new Set),b}createSchema(f){const h=super.createSchema(f);if(h.type==="node:storage"||h.type==="node:function"||h.type==="node:input-output"){const b=h,w=b.children?.filter(P=>mg.getBasicType(P)==="port")??[];b.ports=w;const m=h.children?.find(P=>P.type==="label:positional");return m&&(b.text=m.text),b.children=[],b}if(h.type==="edge:arrow"){const b=h,w=h.children?.find(m=>m.type==="label:filled-background");return w&&(b.text=w.text),b.children=[],b}return h}};iye=$Yt([vr()],iye);const gmt=1;class KYt extends de.Command{constructor(h,b,w){super(),this.labelTypeRegistry=h,this.constraintRegistry=b,this.editorModeController=w}createSavedDiagram(h){return{model:h.modelFactory.createSchema(h.root),labelTypes:this.labelTypeRegistry.getLabelTypes(),constraints:this.constraintRegistry.getConstraintList(),mode:this.editorModeController.get(),version:gmt}}}class bmt extends KYt{constructor(h,b,w,m){super(h,b,w),this.loadingIndicator=m}async execute(h){this.loadingIndicator.showIndicator("Saving diagram...");const b=await this.getFiles(h);for(const w of b)this.downloadFile(w);return this.loadingIndicator.hide(),h.root}undo(h){return h.root}redo(h){return h.root}downloadFile(h){const b=document.createElement("a"),w=new Blob([h.content],{type:"application/json"});b.href=URL.createObjectURL(w),b.download=h.fileName,b.click(),URL.revokeObjectURL(b.href),b.remove()}}var qYt=Object.getOwnPropertyDescriptor,HYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?qYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},cA=(f,h)=>(b,w)=>h(b,w,f),$L;(f=>{f.KIND="saveJsonFile";function h(){return{kind:f.KIND}}f.create=h})($L||($L={}));let rye=class extends bmt{constructor(f,h,b,w,m,P){super(h,b,w,P),this.fileName=m}static KIND=$L.KIND;getFiles(f){const h={fileName:this.fileName.getName()+".json",content:JSON.stringify(this.createSavedDiagram(f))};return Promise.resolve([h])}};rye=HYt([cA(0,Et(de.TYPES.Action)),cA(1,Et(Zd)),cA(2,Et(Qd)),cA(3,Et(sc.Mode)),cA(4,Et(Ty)),cA(5,Et(Jd))],rye);var zYt=Object.getOwnPropertyDescriptor,VYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?zYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},jM=(f,h)=>(b,w)=>h(b,w,f),XX;(f=>{f.KIND="saveDfdAndDdFile";function h(){return{kind:f.KIND}}f.create=h})(XX||(XX={}));let KL=class extends bmt{constructor(f,h,b,w,m,P,g){super(h,b,w,g),this.dfdWebSocket=m,this.fileName=P}static KIND=XX.KIND;static CLOSING_TAG="";async getFiles(f){const h=this.createSavedDiagram(f),b=await this.dfdWebSocket.sendMessage("Json2DFD:"+JSON.stringify(h)),w=b.indexOf(KL.CLOSING_TAG)+KL.CLOSING_TAG.length,m=b.substring(0,w).trim(),P=b.substring(w).trim(),g=this.fileName.getName();return Promise.resolve([{fileName:g+".dataflowdiagram",content:m},{fileName:g+".datadictionary",content:P}])}};KL=VYt([jM(0,Et(de.TYPES.Action)),jM(1,Et(Zd)),jM(2,Et(Qd)),jM(3,Et(sc.Mode)),jM(4,Et(Sy)),jM(5,Et(Ty)),jM(6,Et(Jd))],KL);var GYt=Object.getOwnPropertyDescriptor,UYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?GYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let qL=class{violations=[];listeners=[];updateViolations(f){this.violations=f,this.listeners.forEach(h=>h(this.violations))}onViolationsChanged(f){this.listeners.push(f)}getViolations(){return this.violations}};qL=UYt([vr()],qL);var WYt=Object.getOwnPropertyDescriptor,YYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?WYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},yy=(f,h)=>(b,w)=>h(b,w,f),HL;(f=>{f.KIND="analyze";function h(){return{kind:f.KIND}}f.create=h})(HL||(HL={}));let oye=class extends Ey{constructor(f,h,b,w,m,P,g,E,C,T){super(h,b,w,m,E,P,C),this.dfdWebSocket=g,this.violationService=T}static KIND=HL.KIND;async getFile(f){const h={model:f.modelFactory.createSchema(f.root),labelTypes:this.labelTypeRegistry.getLabelTypes(),constraints:this.constraintRegistry.getConstraintList(),mode:this.editorModeController.get(),version:gmt},b=await this.dfdWebSocket.requestDiagram("Json:"+JSON.stringify(h));if(b&&b.content){const w=b.content.violations||[];this.violationService.updateViolations(w),b.content.violations=w}return b}};oye=YYt([yy(0,Et(de.TYPES.Action)),yy(1,Et(de.TYPES.ILogger)),yy(2,Et(Zd)),yy(3,Et(Qd)),yy(4,Et(sc.Mode)),yy(5,Et(Ty)),yy(6,Et(Sy)),yy(7,Et(de.TYPES.IActionDispatcher)),yy(8,Et(Jd)),yy(9,Et(qL))],oye);const XYt=new xf((f,h,b,w)=>{const m={bind:f,unbind:h,isBound:b,rebind:w};de.configureCommand(m,Fve),de.configureCommand(m,nye),de.configureCommand(m,tye),de.configureCommand(m,hA),de.configureCommand(m,Bve),de.configureCommand(m,rye),de.configureCommand(m,KL),de.configureCommand(m,oye),w(de.TYPES.IModelFactory).to(iye)});var JYt=Object.defineProperty,QYt=Object.getOwnPropertyDescriptor,ZYt=(f,h,b)=>h in f?JYt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,pmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?QYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},eXt=(f,h)=>(b,w)=>h(b,w,f),g2e=(f,h,b)=>ZYt(f,typeof h!="symbol"?h+"":h,b);let pg=class extends jy{noLabelHeight(){return pg.TEXT_HEIGHT}labelStartHeight(){return pg.LABEL_START_HEIGHT}calculateWidth(){return super.calculateWidth()+pg.LEFT_PADDING}};g2e(pg,"TEXT_HEIGHT",32);g2e(pg,"LABEL_START_HEIGHT",28);g2e(pg,"LEFT_PADDING",10);pg=pmt([vr()],pg);let cye=class extends de.ShapeView{constructor(f){super(),this.labelRenderer=f}render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds,m=pg.LEFT_PADDING/2;return de.svg("g",{"class-sprotty-node":!0,"class-storage":!0,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w,stroke:"red"}),de.svg("line",{x1:pg.LEFT_PADDING,y1:"0",x2:pg.LEFT_PADDING,y2:w}),h.renderChildren(f,{xPosition:b/2+m,yPosition:pg.TEXT_HEIGHT/2}),this.labelRenderer.renderNodeLabels(f,pg.LABEL_START_HEIGHT,m))}};cye=pmt([vr(),eXt(0,Et(Rf))],cye);var tXt=Object.getOwnPropertyDescriptor,nXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?tXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},iXt=(f,h)=>(b,w)=>h(b,w,f);class _y extends jy{static TEXT_HEIGHT=28;static SEPARATOR_NO_LABEL_PADDING=4;static SEPARATOR_LABEL_PADDING=4;static LABEL_START_HEIGHT=this.TEXT_HEIGHT+this.SEPARATOR_LABEL_PADDING;static BORDER_RADIUS=5;noLabelHeight(){return _y.LABEL_START_HEIGHT+_y.SEPARATOR_NO_LABEL_PADDING}labelStartHeight(){return _y.LABEL_START_HEIGHT}}let sye=class extends de.ShapeView{constructor(f){super(),this.labelRenderer=f}render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds,m=_y.BORDER_RADIUS;return de.svg("g",{"class-sprotty-node":!0,"class-function":!0,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w,rx:m,ry:m}),de.svg("line",{x1:"0",y1:_y.TEXT_HEIGHT,x2:b,y2:_y.TEXT_HEIGHT}),h.renderChildren(f,{xPosition:b/2,yPosition:_y.TEXT_HEIGHT/2}),this.labelRenderer.renderNodeLabels(f,_y.LABEL_START_HEIGHT))}};sye=nXt([vr(),iXt(0,Et(Rf))],sye);var rXt=Object.defineProperty,oXt=Object.getOwnPropertyDescriptor,cXt=(f,h,b)=>h in f?rXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,wmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?oXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},sXt=(f,h)=>(b,w)=>h(b,w,f),mmt=(f,h,b)=>cXt(f,typeof h!="symbol"?h+"":h,b);let B3=class extends jy{noLabelHeight(){return B3.TEXT_HEIGHT}labelStartHeight(){return B3.LABEL_START_HEIGHT}};mmt(B3,"TEXT_HEIGHT",32);mmt(B3,"LABEL_START_HEIGHT",28);B3=wmt([vr()],B3);let uye=class extends de.ShapeView{constructor(f){super(),this.labelRenderer=f}render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds;return de.svg("g",{"class-sprotty-node":!0,"class-io":!0,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w}),h.renderChildren(f,{xPosition:b/2,yPosition:B3.TEXT_HEIGHT/2}),this.labelRenderer.renderNodeLabels(f,B3.LABEL_START_HEIGHT))}};uye=wmt([vr(),sXt(0,Et(Rf))],uye);var uXt=Object.getOwnPropertyDescriptor,aXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?uXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let aye=class extends de.ShapeView{getPosition(f,h){if(h&&"xPosition"in h&&"yPosition"in h)return{x:h.xPosition,y:h.yPosition};{const b=f.parent?.bounds,w=b?.width??0,m=b?.height??0;return{x:w/2,y:m/2}}}render(f,h,b){const w=this.getPosition(f,b);return de.svg("text",{"class-sprotty-label":!0,x:w.x,y:w.y},f.text)}};aye=aXt([vr()],aye);var lXt=Object.defineProperty,fXt=Object.getOwnPropertyDescriptor,hXt=(f,h,b)=>h in f?lXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,dXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?fXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},gXt=(f,h,b)=>hXt(f,h+"",b);let wA=class extends de.ShapeView{render(f,h){if(!this.isVisible(f,h))return;const b=uN(f.text),w=b.width+wA.PADDING,m=b.height+wA.PADDING;return de.svg("g",{"class-label-background":!0},f.text?de.svg("rect",{x:-w/2,y:-m/2,width:w,height:m}):void 0,de.svg("text",{"class-sprotty-label":!0},f.text))}};gXt(wA,"PADDING",5);wA=dXt([vr()],wA);var bXt=Object.getOwnPropertyDescriptor,pXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?bXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let lye=class{cssClass="label-validation-results";decorate(f,h){const b=f.parentElement;if(b&&h.severity!=="ok"){const w=document.createElement("span");w.innerText=h.message??h.severity,w.classList.add(this.cssClass),w.style.top=`${f.clientHeight}px`,b.appendChild(w)}}dispose(f){const h=f.parentElement;h&&h.querySelector(`span.${this.cssClass}`)?.remove()}};lye=pXt([vr()],lye);var wXt=Object.getOwnPropertyDescriptor,mXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?wXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let fye=class{async validate(f,h){if(!(h instanceof de.SChildElementImpl))return{severity:"ok"};const b=h.parent;if(!(b instanceof de.SEdgeImpl))return{severity:"ok"};if(f.includes(" "))return{severity:"error",message:"Input name cannot contain spaces"};if(f.includes(","))return{severity:"error",message:"Input name cannot contain commas"};if(f.length==0)return{severity:"error",message:"Input name cannot be empty"};const w=b,m=w.target;return m instanceof gA?m.parent.getEdgeTexts(C=>C.id!==w.id).find(C=>C.toLowerCase()===f.toLowerCase())?{severity:"error",message:"Input name already used"}:{severity:"ok"}:{severity:"ok"}}};fye=mXt([vr()],fye);class K0t extends de.EditLabelUI{onBeforeShow(h,b,...w){super.onBeforeShow(h,b,...w),(window.scrollX!==0||window.scrollY!==0)&&window.scrollTo(0,0)}}var dS=(f=>(f.INCOMING="Incoming",f.OUTGOING="Outgoing",f.ALL="All",f))(dS||{});class vXt extends SJ{constructor(){super("All")}}var yXt=Object.defineProperty,_Xt=Object.getOwnPropertyDescriptor,EXt=(f,h,b)=>h in f?yXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,vmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?_Xt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},hye=(f,h)=>(b,w)=>h(b,w,f),SXt=(f,h,b)=>EXt(f,h+"",b);let zL=class extends de.MouseListener{constructor(f){super(),this.actionDispatcher=f}stillTimeout;lastTarget;lastPosition={x:0,y:0};mouseMove(f,h){const b=this.findDfdNode(f);return b?(this.lastPosition={x:h.clientX,y:h.clientY},b===this.lastTarget?[]:(this.stillTimeout=setTimeout(()=>{this.stillTimeout=void 0,b.opacity===1&&this.showPopup(b)},500),this.lastTarget!==b?(this.lastTarget=b,this.hidePopup()):[])):(this.stillTimeout&&(clearTimeout(this.stillTimeout),this.stillTimeout=void 0),this.hidePopup())}findDfdNode(f){return f instanceof jy?f:f instanceof de.SChildElementImpl&&f.parent?this.findDfdNode(f.parent):void 0}showPopup(f){f.annotations&&this.actionDispatcher.dispatch(de.SetUIExtensionVisibilityAction.create({extensionId:yS.ID,visible:!0,contextElementsId:[f.id]}))}hidePopup(){return[de.SetUIExtensionVisibilityAction.create({extensionId:yS.ID,visible:!1})]}getMousePosition(){return this.lastPosition}};zL=vmt([hye(0,Et(de.TYPES.IActionDispatcher))],zL);let yS=class extends de.AbstractUIExtension{constructor(f,h){super(),this.mouseListener=f,this.shownLabels=h}annotationParagraph=document.createElement("p");id(){return yS.ID}containerClass(){return this.id()}initializeContents(f){f.classList.add("ui-float"),f.appendChild(this.annotationParagraph)}onBeforeShow(f,h,...b){if(b.length!==1){this.annotationParagraph.innerText="UI Error: Expected exactly one context element id, but got "+b.length;return}const w=h.index.getById(b[0]);if(!(w instanceof jy)){this.annotationParagraph.innerText="UI Error: Expected context element to be a DfdNodeImpl, but got "+w;return}this.annotationParagraph.innerText="";const m=this.mouseListener.getMousePosition(),P={x:m.x-2,y:m.y-2};f.style.left=`${P.x}px`,f.style.top=`${P.y}px`,f.style.overflowY="auto",this.annotationParagraph.style.whiteSpace="normal",this.annotationParagraph.style.wordBreak="break-word";const g=window.innerWidth,E=window.innerHeight;if(f.style.maxWidth=`${Math.max(g-P.x-50,100)}px`,f.style.maxHeight=`${Math.max(E-P.y-50,50)}px`,!w.annotations||w.annotations.length==0){this.annotationParagraph.innerText="No errors";return}this.annotationParagraph.innerHTML="";const C=this.shownLabels.get();w.annotations.forEach(T=>{if((C===dS.INCOMING||C===dS.ALL)&&T.message.trim().startsWith("Incoming")||(C===dS.OUTGOING||C===dS.ALL)&&T.message.trim().startsWith("Propagated")||T.message.startsWith("Constraint")){const M=document.createElement("div");if(M.style.display="flex",M.style.alignItems="center",M.style.gap="6px",T.icon){const I=document.createElement("i");I.classList.add("fa",`fa-${T.icon}`),M.appendChild(I)}const _=document.createElement("span");_.innerText=T.message,M.appendChild(_),this.annotationParagraph.appendChild(M)}})}};SXt(yS,"ID","dfd-node-annotation-ui");yS=vmt([vr(),hye(0,Et(zL)),hye(1,Et(sc.ShownLabels))],yS);const PXt=new xf((f,h,b,w)=>{const m={bind:f,unbind:h,isBound:b,rebind:w};f(de.TYPES.IEditLabelValidator).to(fye).inSingletonScope(),f(de.TYPES.IEditLabelValidationDecorator).to(lye).inSingletonScope(),de.configureActionHandler(m,de.EditLabelAction.KIND,de.EditLabelActionHandler),f(K0t).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(K0t),f(de.TYPES.ISnapper).to(Hve).inSingletonScope(),f(de.TYPES.MouseListener).to(GWt).inSingletonScope(),de.configureCommand(m,LL),f(yS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(yS),f(zL).toSelf().inSingletonScope(),f(de.TYPES.MouseListener).toService(zL),de.configureModelElement(m,"graph",de.SGraphImpl,de.SGraphView),de.configureModelElement(m,"node:storage",pg,cye),de.configureModelElement(m,"node:function",_y,sye),de.configureModelElement(m,"node:input-output",B3,uye),de.configureModelElement(m,"edge:arrow",a2e,qve,{enable:[de.withEditLabelFeature]}),de.configureModelElement(m,"routing-point",de.SRoutingHandleImpl,HX),de.configureModelElement(m,"volatile-routing-point",de.SRoutingHandleImpl,HX),de.configureModelElement(m,"port:dfd-input",gA,KWt),de.configureModelElement(m,"port:dfd-output",pA,Zve),de.configureModelElement(m,"label",de.SLabelImpl,de.SLabelView,{enable:[de.editLabelFeature]}),de.configureModelElement(m,"label:positional",de.SLabelImpl,aye,{enable:[de.editLabelFeature]}),de.configureModelElement(m,"label:filled-background",de.SLabelImpl,wA,{enable:[de.editLabelFeature]}),f(Rf).toSelf().inSingletonScope()}),MXt=new xf(f=>{f(Sy).toSelf().inSingletonScope()});var CXt=Object.getOwnPropertyDescriptor,IXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?CXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let JX=class{async getActions(f){const h=xL.create(f),b=de.CommitModelAction.create();return[new lS("Load",[new de.LabeledAction("Load diagram from JSON",[BL.create(),b],"json"),new de.LabeledAction("Load DFD and DD",[WX.create(),b],"coffee"),new de.LabeledAction("Load Palladio",[YX.create(),b],"fa-puzzle-piece")],"go-to-file"),new lS("Save",[new de.LabeledAction("Save diagram as JSON",[$L.create()],"json"),new de.LabeledAction("Save diagram as DFD and DD",[XX.create()],"coffee")],"save"),new de.LabeledAction("Load default diagram",[dA.create(),b],"clear-all"),new de.LabeledAction("Fit to Screen",[h],"screen-normal"),new lS("Layout diagram (Method: Lines)",[new de.LabeledAction("Layout: Lines",[D3.create(Xd.LINES),b,h],"grabber"),new de.LabeledAction("Layout: Wrapping Lines",[D3.create(Xd.WRAPPING),b,h],"word-wrap"),new de.LabeledAction("Layout: Circles",[D3.create(Xd.CIRCLES),b,h],"circle-large")],"layout",[D3.create(Xd.LINES),b,h])]}};JX=IXt([vr()],JX);class lS extends de.LabeledAction{constructor(h,b,w,m=[]){super(h,m,w),this.children=b}}var TXt=Object.defineProperty,jXt=Object.getOwnPropertyDescriptor,AXt=(f,h,b)=>h in f?TXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,OXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?jXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},DXt=(f,h,b)=>AXt(f,h+"",b);let mA=class extends de.CommandPalette{suggestionElement;index=-1;childIndex=-1;insideChild=!1;actions=[];filteredActions=[];initializeContents(f){f.style.position="absolute",f.style.top="100px",f.style.left="100px",this.inputElement=document.createElement("input"),this.inputElement.style.width="100%",this.inputElement.addEventListener("keydown",h=>this.processKeyStrokeInInput(h)),this.inputElement.addEventListener("input",()=>this.updateSuggestions()),this.inputElement.onblur=()=>window.setTimeout(()=>this.hide(),200),this.suggestionElement=document.createElement("div"),this.suggestionElement.className="command-palette-suggestions-holder",f.appendChild(this.inputElement),f.appendChild(this.suggestionElement)}show(f,...h){super.show(f,...h),this.autoCompleteResult.destroy(),this.index=-1,this.childIndex=-1,this.insideChild=!1,this.filteredActions=[],this.actions=[],this.suggestionElement.innerHTML="",this.inputElement.value="",this.inputElement.focus(),this.actionProviderRegistry.getActions(f,"",this.mousePositionTracker.lastPositionOnDiagram).then(b=>this.actions=b).then(()=>this.updateSuggestions())}updateSuggestions(){if(!this.suggestionElement)return;this.suggestionElement.innerHTML="";const f=this.inputElement.value.toLowerCase();this.filteredActions=[];for(const h of this.actions){if(this.matchFilter(h,f)){this.filteredActions.push(h);continue}if(h instanceof lS){const b=h.children.filter(w=>this.matchFilter(w,f));if(b.length>0){this.filteredActions.push(new lS(h.label,b,h.icon));continue}}}this.index>=this.filteredActions.length&&(this.index=-1);for(const[h,b]of this.filteredActions.entries()){const w=this.renderSuggestion(b);h===this.index&&(w.classList.add("expanded"),this.insideChild||w.classList.add("selected")),this.suggestionElement.appendChild(w)}}renderSuggestion(f){const h=document.createElement("div");h.className="command-palette-suggestion";const b=document.createElement("span");b.className=this.getIconClasses(f.icon),h.appendChild(b);const w=document.createElement("span");w.className="command-palette-suggestion-label",w.innerText=f.label,h.appendChild(w);const m=document.createElement("span");if(h.appendChild(m),f instanceof lS){m.className="codicon codicon-chevron-right",h.appendChild(m);const P=document.createElement("div");P.className="command-palette-suggestion-children";for(const[g,E]of f.children.entries()){const C=this.renderSuggestion(E);this.insideChild&&this.childIndex===g&&C.classList.add("selected"),P.appendChild(C)}h.appendChild(P)}return h.addEventListener("click",()=>{f instanceof lS||this.executeAction(f)}),h}getIconClasses(f){return f?f.startsWith("fa-")?"fa-solid "+f:f.startsWith("codicon-")?"codicon "+f:"codicon codicon-"+f:"codicon codicon-gear"}matchFilter(f,h){return f.label.toLowerCase().includes(h)}id(){return mA.ID}containerClass(){return mA.ID}processKeyStrokeInInput(f){Pl.matchesKeystroke(f,"Escape")&&this.hide(),Pl.matchesKeystroke(f,"ArrowDown")&&(this.insideChild?this.childIndex=(this.childIndex+1)%this.filteredActions[this.index].children.length:this.index===-1?this.index=0:this.index=(this.index+1)%this.suggestionElement.children.length),Pl.matchesKeystroke(f,"ArrowUp")&&(this.insideChild?this.childIndex=(this.childIndex-1+this.filteredActions[this.index].children.length)%this.filteredActions[this.index].children.length:this.index===-1?this.index=this.suggestionElement.children.length-1:this.index=(this.index-1+this.suggestionElement.children.length)%this.suggestionElement.children.length),Pl.matchesKeystroke(f,"ArrowRight")&&!this.insideChild&&this.filteredActions[this.index]instanceof lS&&(f.preventDefault(),this.insideChild=!0,this.childIndex=0),Pl.matchesKeystroke(f,"ArrowLeft")&&this.insideChild&&(f.preventDefault(),this.insideChild=!1,this.childIndex=-1),Pl.matchesKeystroke(f,"Enter")&&(this.insideChild?this.executeAction(this.filteredActions[this.index].children[this.childIndex]):this.index!==-1&&this.executeAction(this.filteredActions[this.index]),this.hide()),this.updateSuggestions()}executeAction(f){this.actionDispatcherProvider().then(h=>h.dispatchAll(f.actions)).catch(h=>this.logger.error(this,"No action dispatcher available to execute command palette action",h))}};DXt(mA,"ID","command-palette");mA=OXt([vr()],mA);class kXt extends de.CommandStack{isPushToUndoStack(h){return!(h instanceof de.HiddenCommand||h instanceof de.SelectCommand||h instanceof de.SetViewportCommand||h instanceof de.BringToFrontCommand||h instanceof de.FitToScreenCommand||h instanceof de.CenterCommand)}}const RXt=new xf((f,h,b,w)=>{w(de.CommandPalette).to(mA).inSingletonScope(),f(JX).toSelf().inSingletonScope(),f(de.TYPES.ICommandPaletteActionProvider).toService(JX),w(de.TYPES.ICommandStack).to(kXt).inSingletonScope()});class xXt extends de.KeyListener{keyDown(h,b){return Pl.matchesKeystroke(b,"KeyL","ctrlCmd")?(b.preventDefault(),[D3.create(Xd.LINES),de.CommitModelAction.create(),xL.create(h.root)]):[]}}const LXt=new xf((f,h,b,w)=>{f($X).toSelf().inSingletonScope(),f(de.TYPES.IModelLayoutEngine).toService($X),f(x3).to(x3),w(R3.ILayoutConfigurator).to(x3),f(R3.ILayoutPostprocessor).to(Lve).inSingletonScope(),f(R3.ElkFactory).toConstantValue(iWt),f(de.TYPES.KeyListener).to(xXt).inSingletonScope();const m={bind:f,unbind:h,isBound:b,rebind:w};de.configureCommand(m,Nve)}),NXt=new xf(f=>{f(Ty).toSelf().inSingletonScope()});var FXt=Object.defineProperty,BXt=Object.getOwnPropertyDescriptor,$Xt=(f,h,b)=>h in f?FXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,KXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?BXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},IL=(f,h)=>(b,w)=>h(b,w,f),qXt=(f,h,b)=>$Xt(f,h+"",b);let wS=class extends RM{constructor(f,h,b,w,m){super("right","up"),this.themeManager=f,this.shownLabels=h,this.hideEdgeNames=b,this.simplifyNodeNames=w,this.editorModeController=m}id(){return wS.ID}containerClass(){return wS.ID}initializeHidableContent(f){const h=document.createElement("div");h.id="settings-content",f.appendChild(h),this.addDropDown(h,"Theme",this.themeManager,[DM.SYSTEM_DEFAULT,DM.LIGHT,DM.DARK]),this.addDropDown(h,"Shown Labels",this.shownLabels,[dS.INCOMING,dS.OUTGOING,dS.ALL]),this.addBooleanSwitch(h,"Hide Edge Names",this.hideEdgeNames),this.addBooleanSwitch(h,"Simplify Node Names",this.simplifyNodeNames),this.addSwitch(h,"Read Only",this.editorModeController,{true:"view",false:"edit"})}initializeHeaderContent(f){f.classList.add("settings-accordion-icon"),f.innerText="Settings"}addBooleanSwitch(f,h,b){this.addSwitch(f,h,b,{true:!0,false:!1})}addSwitch(f,h,b,w){const m={[w.true.toString()]:!0,[w.false.toString()]:!1},P=document.createElement("label");P.textContent=h,P.htmlFor=`setting-${h.toLowerCase().replace(/\s+/g,"-")}`;const g=document.createElement("label");g.classList.add("switch");const E=document.createElement("input");E.type="checkbox",E.id=`setting-${h.toLowerCase().replace(/\s+/g,"-")}`,E.checked=m[b.get().toString()],g.appendChild(E);const C=document.createElement("span");C.classList.add("slider","round"),g.appendChild(C),f.appendChild(P),f.appendChild(g),g.addEventListener("change",()=>{b.set(w[E.checked?"true":"false"])}),b.registerListener(T=>{E.checked=m[T.toString()]})}addDropDown(f,h,b,w){const m=document.createElement("label");m.textContent=h,m.htmlFor=`setting-${h.toLowerCase().replace(/\s+/g,"-")}`;const P=document.createElement("select");for(const g of w){const E=document.createElement("option");E.value=g.toString(),E.innerText=g.toString(),P.appendChild(E)}P.value=b.get().toString(),P.onchange=()=>{const g=w.find(E=>E.toString()===P.value);g&&b.set(g)},f.appendChild(m),f.appendChild(P)}};qXt(wS,"ID","settings-ui");wS=KXt([vr(),IL(0,Et(sc.Theme)),IL(1,Et(sc.ShownLabels)),IL(2,Et(sc.HideEdgeNames)),IL(3,Et(sc.SimplifyNodeNames)),IL(4,Et(sc.Mode))],wS);class HXt extends SJ{constructor(){super("edit")}setDefault(){this.set("edit")}isReadOnly(){return this.get()!=="edit"}}const zXt=new xf((f,h,b)=>{f(wS).toSelf().inSingletonScope(),f(Db.DefaultUIElement).toService(wS),f(de.TYPES.IUIExtension).toService(wS),f(sc.Theme).to(fA).inSingletonScope(),f(sc.HideEdgeNames).to(N0t).inSingletonScope(),f(sc.SimplifyNodeNames).to(N0t).inSingletonScope(),f(sc.Mode).to(HXt).inSingletonScope(),f(sc.ShownLabels).to(vXt).inSingletonScope();const w={bind:f,isBound:b};de.configureCommand(w,xWt),de.configureCommand(w,Gve),f(VX).toSelf().inSingletonScope()});var ymt=Object.defineProperty,VXt=Object.getOwnPropertyDescriptor,GXt=(f,h,b)=>h in f?ymt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,PJ=(f,h,b,w)=>{for(var m=w>1?void 0:w?VXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&ymt(h,b,m),m},aS=(f,h)=>(b,w)=>h(b,w,f),UXt=(f,h,b)=>GXt(f,h+"",b);let VL=class extends de.MouseListener{constructor(f,h,b,w,m,P,g){super(),this.mouseTool=f,this.mousePositionTracker=h,this.modelFactory=b,this.actionDispatcher=w,this.commandStack=m,this.snapper=P,this.logger=g}element;previewOpacity=.5;insertIntoGraphRootAfterCreation=!0;elementType="";async createElement(){const f=this.createElementSchema();f.opacity??=this.previewOpacity;const h=this.modelFactory.createElement(f);return this.insertIntoGraphRootAfterCreation&&(await this.commandStack.executeAll([])).add(h),h}enable(f){this.elementType=f,this.mouseTool.register(this),this.createElement().then(h=>{this.element=h,this.logger.log(this,"Created element",h),this.mousePositionTracker.lastPositionOnDiagram&&this.updateElementPosition(this.mousePositionTracker.lastPositionOnDiagram)}).catch(h=>{this.logger.error(this,"Failed to create element",h)})}disable(){if(this.mouseTool.deregister(this),this.element){let f;try{f=this.element.root}catch{}this.element.parent?.remove(this.element),this.element=void 0,f&&this.commandStack.update(f),this.logger.info(this,"Cancelled element creation")}}finishPlacingElement(){if(this.element){const f=this.element.parent;f.remove(this.element),this.element.opacity=1,this.actionDispatcher.dispatch(QX.create(this.element,f)),this.logger.log(this,"Finalized element creation of element",this.element),this.element=void 0}this.disable()}updateElementPosition(f){if(!this.element)return;const h={...f};if(this.element instanceof de.SEdgeImpl)this.element.targetId&&this.element.target&&(mg.Point.equals(this.element.target.position,h)||(this.element.target.position=h,this.commandStack.update(this.element.root)));else{const b=this.element.position;if(this.element instanceof de.SNodeImpl){const{width:m,height:P}=this.element.bounds;h.x-=m/2,h.y-=P/2}else if(this.element instanceof de.SPortImpl){const m=this.element.parent;m instanceof de.SNodeImpl&&(h.x-=m.position.x,h.y-=m.position.y)}const w=this.snapper.snap(h,this.element);mg.Point.equals(b,w)||(this.element.position=w,this.commandStack.update(this.element.root))}}mouseMove(f,h){const b=this.calculateMousePosition(f,h);return this.updateElementPosition(b),[]}mouseDown(f,h){return h.preventDefault(),this.finishPlacingElement(),[de.CommitModelAction.create()]}calculateMousePosition(f,h){const b=f.root,w=m=>{const P=b.scroll[m],E=(m==="x"?h.offsetX:h.offsetY)/b.zoom;return P+E};return{x:w("x"),y:w("y")}}};VL=PJ([vr(),aS(0,Et(de.MouseTool)),aS(1,Et(de.MousePositionTracker)),aS(2,Et(de.TYPES.IModelFactory)),aS(3,Et(de.TYPES.IActionDispatcher)),aS(4,Et(de.TYPES.ICommandStack)),aS(5,Et(de.TYPES.ISnapper)),aS(6,Et(de.TYPES.ILogger))],VL);var QX;(f=>{f.TYPE="addElementToGraph";function h(b,w){return{kind:f.TYPE,element:b,parent:w}}f.create=h})(QX||(QX={}));let ZX=class{constructor(f){this.action=f}execute(f){return this.action.parent.add(this.action.element),f.root}undo(f){return this.action.element.parent.remove(this.action.element),f.root}redo(f){return this.execute(f)}};UXt(ZX,"KIND",QX.TYPE);ZX=PJ([vr(),aS(0,Et(de.TYPES.Action))],ZX);let GL=class extends de.KeyListener{tools=[];keyDown(f,h){return h.key==="Escape"&&this.disableAllTools(),[]}disableAllTools(){this.tools.forEach(f=>f.disable())}};PJ([cJ(Db.CreationTool)],GL.prototype,"tools",2);GL=PJ([vr()],GL);var WXt=Object.getOwnPropertyDescriptor,YXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?WXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let UL=class extends VL{edgeTargetElement;insertIntoGraphRootAfterCreation=!1;createElementSchema(){return{id:L3(),type:this.elementType,sourceId:"",targetId:""}}disable(){this.edgeTargetElement&&(this.edgeTargetElement.parent?.remove(this.edgeTargetElement),this.edgeTargetElement=void 0),super.disable()}mouseDown(f,h){if(!this.element)return[];const b=this.findConnectable(f);if(!b)return[];if(this.element.sourceId){if(b.canConnect(this.element,"target")){this.element.targetId=b.id;const w=super.mouseDown(b,h);return this.disable(),w}}else if(b.canConnect(this.element,"source")){this.element.sourceId=b.id;const w=f.root;w.add(this.element),this.edgeTargetElement=this.modelFactory.createElement({id:L3(),type:"empty-node",position:this.calculateMousePosition(f,h)}),w.add(this.edgeTargetElement),this.element.targetId=this.edgeTargetElement.id}return[]}findConnectable(f){if(de.isConnectable(f))return f;if("parent"in f&&f.parent)return this.findConnectable(f.parent)}};UL=YXt([vr()],UL);var XXt=Object.getOwnPropertyDescriptor,JXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?XXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let WL=class extends VL{createElementSchema(){const f=this.elementType.replace("node:",""),h=f.charAt(0).toUpperCase()+f.slice(1);return{id:L3(),type:this.elementType,text:h,ports:[],labels:[]}}};WL=JXt([vr()],WL);var QXt=Object.getOwnPropertyDescriptor,ZXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?QXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let YL=class extends VL{createElementSchema(){return{id:L3(),type:this.elementType,opacity:0}}mouseMove(f,h){if(!this.element)return[];const b=this.element.parent,w=this.findNodeElement(f);return w?b!==w&&f instanceof de.SChildElementImpl&&(this.element.opacity=this.previewOpacity,b.remove(this.element),f.add(this.element),this.commandStack.update(this.element.root)):b!==f.root&&(this.element.opacity=0,b.remove(this.element),f.root.add(this.element),this.commandStack.update(this.element.root)),super.mouseMove(f,h)}mouseDown(f,h){return this.element?.parent===f.root?(this.disable(),[de.CommitModelAction.create()]):super.mouseDown(f,h)}findNodeElement(f){if(f.type.startsWith("node"))return f;if(f instanceof de.SChildElementImpl&&f.parent instanceof de.SShapeElementImpl)return this.findNodeElement(f.parent)}};YL=ZXt([vr()],YL);var eJt=Object.defineProperty,tJt=Object.getOwnPropertyDescriptor,nJt=(f,h,b)=>h in f?eJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,iJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?tJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},uS=(f,h)=>(b,w)=>h(b,w,f),rJt=(f,h,b)=>nJt(f,h+"",b);let A3=class extends de.AbstractUIExtension{constructor(f,h,b,w,m,P,g){super(),this.actionDispatcher=f,this.patcherProvider=h,this.nodeCreationTool=b,this.edgeCreationTool=w,this.portCreationTool=m,this.allTools=P,this.editorModeController=g}keyboardShortcuts=new Map;id(){return A3.ID}containerClass(){return"tool-palette"}initializeContents(f){f.classList.add("ui-float"),document.addEventListener("keydown",h=>{Pl.matchesKeystroke(h,"Escape")&&this.disableTools()}),this.addTool(f,this.nodeCreationTool,"Storage node",h=>h.enable("node:storage"),de.svg("g",null,de.svg("rect",{x:"10%",y:"20%",width:"80%",height:"60%","stroke-width":"1"}),de.svg("line",{x1:"25%",y1:"20%",x2:"25%",y2:"80%","stroke-width":"1"}),de.svg("text",{x:"55%",y:"50%"},"Sto")),"Digit1"),this.addTool(f,this.nodeCreationTool,"Input/Output node",h=>h.enable("node:input-output"),de.svg("g",null,de.svg("rect",{x:"10%",y:"20%",width:"80%",height:"60%","stroke-width":"1"}),de.svg("text",{x:"50%",y:"50%"},"IO")),"Digit2"),this.addTool(f,this.nodeCreationTool,"Function node",h=>h.enable("node:function"),de.svg("g",null,de.svg("rect",{x:"10%",y:"20%",width:"80%",height:"60%",rx:"20%",ry:"20%"}),de.svg("line",{x1:"10%",y1:"65%",x2:"90%",y2:"65%"}),de.svg("text",{x:"50%",y:"44%"},"Fun")),"Digit3"),this.addTool(f,this.edgeCreationTool,"Edge",h=>h.enable("edge:arrow"),de.svg("g",null,de.svg("path",{d:"M 4,4 L 22,22","attrs-stroke-width":"2"}),de.svg("path",{d:"M 0,0 L -3,3 L 6,6 L 3,-3 Z",transform:"translate(22,22)","attrs-stroke-width":"2","class-fill":!0})),"Digit4"),this.addTool(f,this.portCreationTool,"Input port",h=>h.enable("port:dfd-input"),de.svg("g",null,de.svg("rect",{x:"25%",y:"25%",width:"50%",height:"50%"}),de.svg("text",{x:"50%",y:"50%"},"I")),"Digit5"),this.addTool(f,this.portCreationTool,"Output port",h=>h.enable("port:dfd-output"),de.svg("g",null,de.svg("rect",{x:"25%",y:"25%",width:"50%",height:"50%"}),de.svg("text",{x:"50%",y:"50%"},"O")),"Digit6"),f.classList.add("tool-palette")}addTool(f,h,b,w,m,P){const g=document.createElement("div");g.classList.add("tool"),g.addEventListener("click",()=>{g.classList.contains("active")||this.editorModeController?.isReadOnly()?(h.disable(),g.classList.remove("active")):(this.disableTools(),w(h),g.classList.add("active"))}),f.appendChild(g);const E=document.createElement("div");g.appendChild(E);const C=de.svg("svg",{width:"32",height:"32"},de.svg("title",null,b),m);this.patcherProvider.patcher(E,C);const T=document.createElement("kbd");T.classList.add("shortcut"),T.textContent=P?.replace("Key","").replace("Digit","")??"",g.appendChild(T),P&&(this.keyboardShortcuts.set(P,()=>{g.click()}),P.startsWith("Digit")&&this.keyboardShortcuts.set(P.replace("Digit","Numpad"),()=>{g.click()}))}disableTools(){this.allTools.forEach(f=>f.disable()),this.markAllToolsInactive()}markAllToolsInactive(){this.containerElement&&this.containerElement.childNodes.forEach(f=>{f instanceof HTMLElement&&f.classList.remove("active")})}handle(f){f.kind===de.CommitModelAction.KIND&&this.markAllToolsInactive()}keyDown(f,h){return this.keyboardShortcuts.forEach((b,w)=>{Pl.matchesKeystroke(h,w)&&b()}),[]}keyUp(){return[]}};rJt(A3,"ID","tool-palette");A3=iJt([vr(),uS(0,Et(de.TYPES.IActionDispatcher)),uS(1,Et(de.TYPES.PatcherProvider)),uS(2,Et(WL)),uS(3,Et(UL)),uS(4,Et(YL)),uS(5,cJ(Db.CreationTool)),uS(6,Et(sc.Mode)),uS(6,EVt())],A3);const oJt=new xf((f,h,b,w)=>{const m={bind:f,unbind:h,isBound:b,rebind:w};f(GL).toSelf().inSingletonScope(),f(de.TYPES.KeyListener).toService(GL),de.configureModelElement(m,"empty-node",de.SNodeImpl,de.EmptyView),de.configureCommand(m,ZX),f(WL).toSelf().inSingletonScope(),f(Db.CreationTool).toService(WL),f(UL).toSelf().inSingletonScope(),f(Db.CreationTool).toService(UL),f(YL).toSelf().inSingletonScope(),f(Db.CreationTool).toService(YL),f(A3).toSelf().inSingletonScope(),de.configureActionHandler(m,de.CommitModelAction.KIND,A3),f(de.TYPES.IUIExtension).toService(A3),f(de.TYPES.KeyListener).toService(A3),f(Db.DefaultUIElement).toService(A3)});function cJt(f,h){return sJt(kX(f,h,0,h),f)}function kX(f,h,b,w,m=!1,P=!1){if(!P&&f[b].column==1){if(w.some(C=>C.word.verify(f[b].text).length===0))return kX(f,w,b,w,m,!0);if(m||h.length==0)return kX(f,[...w,...h],b,w,m,!0)}let g=[];if(b==f.length-1){for(const E of h)g=g.concat(E.word.completionOptions(f[b].text));return g}for(const E of h)E.word.verify(f[b].text).length>0||(g=g.concat(kX(f,E.children,b+1,w,E.canBeFinal||!1)));return g}function sJt(f,h){const b=[],w=f.filter((m,P)=>f.findIndex(g=>g.insertText===m.insertText&&g.kind===m.kind)===P);for(const m of w){const P=uJt(m,h);b.push(P)}return b}function uJt(f,h){const b=h.length==0?1:h[h.length-1].column,w=h.length==0?1:h[h.length-1].line;return{insertText:f.insertText,kind:f.kind,label:f.label??f.insertText,insertTextRules:f.insertTextRules,range:new Kzt(w,b+(f.startOffset??0),w,b+(f.startOffset??0))}}class _mt{constructor(h){this.tree=h}triggerCharacters=[".","("," ",","];provideCompletionItems(h,b){const w=h.getLinesContent(),m=[];for(let C=0;C{for(var m=w>1?void 0:w?aJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let eJ=class{selectedTfgs=new Set;getSelectedTfgs(){return this.selectedTfgs}clearTfgs(){this.selectedTfgs=new Set}addTfg(f){this.selectedTfgs.add(f)}constructor(){}};eJ=lJt([vr()],eJ);var fJt=Object.getOwnPropertyDescriptor,hJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?fJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Ive=(f,h)=>(b,w)=>h(b,w,f);function Tve(f,h,b,w){w.clearTfgs(),b.setSelectedConstraints(f);const m=h.children.filter(P=>mg.getBasicType(P)==="node");return f.length===0?(m.forEach(P=>{P.setColor("var(--color-primary)")}),h):(m.forEach(P=>{const g=P.annotations;let E=!1;b.selectedContainsAllConstraints()&&g.forEach(C=>{C.message.startsWith("Constraint")&&(E=!0,P.setColor(C.color))}),f.forEach(C=>{g.forEach(T=>{T.message.startsWith("Constraint ")&&T.message.split(" ")[1]===C&&(P.setColor(T.color),E=!0,w.addTfg(T.tfg))})}),E||P.setColor("var(--color-primary)")}),m.forEach(P=>{P.annotations.filter(E=>w.getSelectedTfgs().has(E.tfg)).length>0&&P.setColor("var(--color-highlighted)",!1)}),h)}var gS;(f=>{f.KIND="select-constraints";function h(b){return{kind:f.KIND,selectedConstraintNames:b}}f.create=h})(gS||(gS={}));let dye=class extends de.Command{constructor(f,h,b){super(),this.action=f,this.constraintRegistry=h,this.tfgManager=b}static KIND=gS.KIND;oldConstraintSelection;execute(f){return this.oldConstraintSelection=this.constraintRegistry.getSelectedConstraints(),Tve(this.action.selectedConstraintNames,f.root,this.constraintRegistry,this.tfgManager)}undo(f){return Tve(this.oldConstraintSelection??[],f.root,this.constraintRegistry,this.tfgManager)}redo(f){return Tve(this.action.selectedConstraintNames,f.root,this.constraintRegistry,this.tfgManager)}};dye=hJt([Ive(0,Et(de.TYPES.Action)),Ive(1,Et(Qd)),Ive(2,Et(eJ))],dye);var dJt=Object.defineProperty,gJt=Object.getOwnPropertyDescriptor,bJt=(f,h,b)=>h in f?dJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,pJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?gJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},sA=(f,h)=>(b,w)=>h(b,w,f),wJt=(f,h,b)=>bJt(f,h+"",b);let k3=class extends RM{constructor(f,h,b,w,m,P){super("left","up"),this.constraintRegistry=f,this.dispatcher=w,this.editorModeController=m,this.themeManager=P,this.constraintRegistry=f,m.registerListener(()=>{this.editor?.updateOptions({readOnly:m.isReadOnly()})}),f.onUpdate(()=>{this.editor&&this.editor.getValue()!==this.constraintRegistry.getConstraintsAsText()&&this.editor.setValue(this.constraintRegistry.getConstraintsAsText()||"")}),this.tree=UX.buildTree(b,h)}editorContainer=document.createElement("div");validationLabel=document.createElement("div");editor;optionsMenu;ignoreCheckboxChange=!1;tree;id(){return k3.ID}containerClass(){return k3.ID}initializeHeaderContent(f){f.id="constraint-menu-expand-title",f.innerText="Constraints",f.appendChild(this.buildOptionsButton())}initializeHidableContent(f){const h=document.createElement("div");h.id="constraint-menu-content",h.appendChild(this.buildConstraintInputWrapper()),f.appendChild(h)}initializeContents(f){super.initializeContents(f),f.appendChild(this.buildRunButton())}buildConstraintInputWrapper(){const f=document.createElement("div");f.id="constraint-menu-input",f.appendChild(this.editorContainer),this.validationLabel.id="validation-label",this.validationLabel.classList.add("valid"),this.validationLabel.innerText="Valid constraints",f.appendChild(this.validationLabel);const h=document.createElement("div");h.innerHTML="Press CTRL+Space for autocompletion",f.appendChild(h),wh.register({id:TX}),wh.setMonarchTokensProvider(TX,PYt),wh.registerCompletionItemProvider(TX,new _mt(this.tree));const b=this.themeManager.getTheme()===DM.DARK?"vs-dark":"vs";return this.editor=RX.create(this.editorContainer,{minimap:{enabled:!1},folding:!1,wordBasedSuggestions:"off",scrollBeyondLastLine:!1,theme:b,wordWrap:"on",language:TX,scrollBeyondLastColumn:0,scrollbar:{horizontal:"hidden",vertical:"auto",alwaysConsumeMouseWheel:!1},lineNumbers:"on",readOnly:this.editorModeController.isReadOnly()}),this.editor.setValue(this.constraintRegistry.getConstraintsAsText()||""),this.editor.onDidChangeModelContent(()=>{if(!this.editor)return;const w=this.editor?.getModel();if(!w)return;this.constraintRegistry.setConstraints(w.getLinesContent());const m=w.getLinesContent(),P=[];if(!(m.length==0||m.length==1&&m[0]==="")){const E=f2e(aN(m),this.tree);P.push(...E.map(C=>({severity:z0t.Error,startLineNumber:C.line,startColumn:C.startColumn,endLineNumber:C.line,endColumn:C.endColumn,message:C.message})))}this.validationLabel.innerText=P.length==0?"Valid constraints":`Invalid constraints: ${P.length} errors`,this.validationLabel.classList.toggle("valid",P.length==0),RX.setModelMarkers(w,"constraint",P)}),f}buildRunButton(){const f=document.createElement("div");f.id="run-button-container";const h=document.createElement("button");return h.id="run-button",h.innerHTML="Run",h.onclick=()=>{this.dispatcher.dispatchAll([HL.create(),gS.create(this.constraintRegistry.getConstraintList().map(b=>b.name))])},f.appendChild(h),f}onBeforeShow(){this.resizeEditor()}resizeEditor(){const f=this.editor;if(!f)return;const h=f.getContentHeight(),w=100+f.getValue().split(` -`).reduce((T,M)=>Math.max(T,M.length),0)*8,m=(T,M)=>Math.min(M[1],Math.max(M[0],T)),P=[200,200],g=[500,750],E=m(h,P),C=m(w,g);f.layout({height:E,width:C})}switchTheme(f){this.editor?.updateOptions({theme:f==DM.DARK?"vs-dark":"vs"})}buildOptionsButton(){const f=document.createElement("button");return f.id="constraint-options-button",f.title="Filter…",f.innerHTML='',f.onclick=()=>this.toggleOptionsMenu(),f}toggleOptionsMenu(){if(this.optionsMenu!==void 0){this.optionsMenu.remove(),this.optionsMenu=void 0;return}this.optionsMenu=document.createElement("div"),this.optionsMenu.id="constraint-options-menu";const f=document.createElement("label");f.classList.add("options-item");const h=document.createElement("input");h.type="checkbox",h.value="ALL",h.checked=this.constraintRegistry.getConstraintList().map(m=>m.name).every(m=>this.constraintRegistry.getSelectedConstraints().includes(m)),h.onchange=()=>{if(this.optionsMenu){this.ignoreCheckboxChange=!0;try{h.checked?(this.optionsMenu.querySelectorAll("input[type=checkbox]").forEach(m=>{m!==h&&(m.checked=!0)}),this.dispatcher.dispatch(gS.create(this.constraintRegistry.getConstraintList().map(m=>m.name)))):(this.optionsMenu.querySelectorAll("input[type=checkbox]").forEach(m=>{m!==h&&(m.checked=!1)}),this.dispatcher.dispatch(gS.create([])))}finally{this.ignoreCheckboxChange=!1}}},f.appendChild(h),f.appendChild(document.createTextNode("All constraints")),this.optionsMenu.appendChild(f),this.constraintRegistry.getConstraintList().forEach(m=>{const P=document.createElement("label");P.classList.add("options-item");const g=document.createElement("input");g.type="checkbox",g.value=m.name,g.checked=this.constraintRegistry.getSelectedConstraints().includes(g.value),g.onchange=()=>{if(this.ignoreCheckboxChange)return;const E=this.optionsMenu.querySelectorAll("input[type=checkbox]"),C=Array.from(E).filter(M=>M!==h),T=C.filter(M=>M.checked).map(M=>M.value);h.checked=C.every(M=>M.checked),this.dispatcher.dispatch(gS.create(T))},P.appendChild(g),P.appendChild(document.createTextNode(m.name)),this.optionsMenu.appendChild(P)}),this.editorContainer.appendChild(this.optionsMenu);const w=m=>{const P=m.target;if(!this.optionsMenu||this.optionsMenu.contains(P))return;const g=document.getElementById("constraint-options-button");g&&g.contains(P)||(this.optionsMenu.remove(),this.optionsMenu=void 0,document.removeEventListener("click",w))};document.addEventListener("click",w)}};wJt(k3,"ID","constraint-menu");k3=pJt([vr(),sA(0,Et(Qd)),sA(1,Et(Zd)),sA(2,Et(de.TYPES.ModelSource)),sA(3,Et(de.TYPES.IActionDispatcher)),sA(4,Et(sc.Mode)),sA(5,Et(sc.Theme))],k3);const mJt=new xf((f,h,b)=>{f(Qd).toSelf().inSingletonScope(),f(k3).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(k3),f(Db.DefaultUIElement).toService(k3),f(fmt).toService(k3),f(eJ).toSelf().inSingletonScope(),de.configureCommand({bind:f,isBound:b},dye)});var vJt=Object.defineProperty,yJt=Object.getOwnPropertyDescriptor,_Jt=(f,h,b)=>h in f?vJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,EJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?yJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},TL=(f,h)=>(b,w)=>h(b,w,f),SJt=(f,h,b)=>_Jt(f,h+"",b);let $3=class extends de.AbstractUIExtension{constructor(f,h,b,w,m){super(),this.labelTypeRegistry=f,this.editorModeController=h,this.themeManager=b,this.viewerOptions=w,this.domHelper=m,h.registerListener(()=>{this.editor?.updateOptions({readOnly:this.editorModeController.isReadOnly()})})}port;tree;editorContainer=document.createElement("div");validationLabel=document.createElement("div");unavailableInputsLabel=document.createElement("div");editor;id(){return $3.ID}containerClass(){return $3.ID}initializeContents(f){f.classList.add("ui-float"),f.appendChild(this.unavailableInputsLabel),this.unavailableInputsLabel.classList.add("unavailable-inputs"),f.appendChild(this.editorContainer),this.editorContainer.classList.add("monaco-container"),f.appendChild(this.validationLabel),this.validationLabel.classList.add("validation-label");const h=document.createElement("div");h.innerHTML="Press CTRL+Space for autocompletion",f.appendChild(h),wh.register({id:IX}),wh.setMonarchTokensProvider(IX,vYt);const b=this.themeManager.getTheme()===DM.DARK?"vs-dark":"vs";this.editor=RX.create(this.editorContainer,{minimap:{enabled:!1},lineNumbersMinChars:3,folding:!1,wordBasedSuggestions:"off",scrollBeyondLastLine:!1,theme:b,language:IX,readOnly:this.editorModeController.isReadOnly()}),this.editor.onDidChangeModelContent(()=>{this.validate()}),this.editor.onDidContentSizeChange(()=>{this.resizeEditor()}),this.labelTypeRegistry?.onUpdate(()=>{setTimeout(()=>{this.editor&&this.port&&this.editor?.setValue(this.port?.getBehavior())},0)}),f.addEventListener("keydown",w=>{Pl.matchesKeystroke(w,"Escape")&&this.hide()})}onBeforeShow(f,h,...b){if(b.length!==1)throw new Error("Expected exactly one context element id which should be the port that shall be shown in the UI.");this.setPort(h.index.getById(b[0]),f),this.checkForUnavailableInputs(),this.resizeEditor(),this.editor?.focus()}setPort(f,h){this.port=f;const b=de.getAbsoluteClientBounds(this.port,this.domHelper,this.viewerOptions);if(h.style.left=`${b.x}px`,h.style.top=`${b.y}px`,this.tree=NL.buildTree(f,this.labelTypeRegistry),wh.registerCompletionItemProvider(IX,new _mt(this.tree)),!this.editor)throw new Error("Expected editor to be initialized");this.editor.setValue(f.getBehavior())}checkForUnavailableInputs(){if(!this.port)throw new Error("Expected Assignment Edit Ui to be assigned to a port");const f=this.port.parent;if(!(f instanceof jy))throw new Error("Expected parent to be a DfdNodeImpl.");const b=f.getAvailableInputs().filter(w=>w===void 0).length;if(b>0){const w=b>1?`There are ${b} inputs that don't have a named edge and cannot be used`:`There is ${b} input that doesn't have a named edge and cannot be used`;this.unavailableInputsLabel.innerText=w,this.unavailableInputsLabel.style.display="block"}else this.unavailableInputsLabel.innerText="",this.unavailableInputsLabel.style.display="none"}resizeEditor(){if(!this.editor)return;const f=this.editor.getContentHeight(),b=100+this.editor.getValue().split(` -`).reduce((C,T)=>Math.max(C,T.length),0)*8,w=(C,T)=>Math.min(T[1],Math.max(T[0],C)),m=[100,350],P=[275,650],g=w(f,m),E=w(b,P);this.editor.layout({height:g,width:E})}validate(){if(!this.editor||!this.tree)return;const f=this.editor?.getModel();if(!f)return;const h=f.getLinesContent();this.port?.setBehavior(h.join(` -`));const b=[];if(!(h.length==0||h.length==1&&h[0]==="")){const m=f2e(aN(h),this.tree);b.push(...m.map(P=>({severity:z0t.Error,startLineNumber:P.line,startColumn:P.startColumn,endLineNumber:P.line,endColumn:P.endColumn,message:P.message})))}b.length==0?(this.validationLabel.innerText="Assignments are valid",this.validationLabel.classList.remove("validation-error"),this.validationLabel.classList.add("validation-success")):(this.validationLabel.innerText=`Assignments are invalid: ${b.length} error${b.length===1?"":"s"}.`,this.validationLabel.classList.remove("validation-success"),this.validationLabel.classList.add("validation-error")),RX.setModelMarkers(f,"constraint",b)}};SJt($3,"ID","assignment-edit-ui");$3=EJt([vr(),TL(0,Et(Zd)),TL(1,Et(sc.Mode)),TL(2,Et(sc.Theme)),TL(3,Et(de.TYPES.ViewerOptions)),TL(4,Et(de.TYPES.DOMHelper))],$3);var PJt=Object.getOwnPropertyDescriptor,MJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?PJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let gye=class extends de.MouseListener{editUIVisible=!1;mouseDown(f){return this.editUIVisible?(this.editUIVisible=!1,[de.SetUIExtensionVisibilityAction.create({extensionId:$3.ID,visible:!1,contextElementsId:[f.id]})]):[]}doubleClick(f){return f instanceof pA?(this.editUIVisible=!0,[de.SetUIExtensionVisibilityAction.create({extensionId:$3.ID,visible:!0,contextElementsId:[f.id]})]):[]}};gye=MJt([vr()],gye);const CJt=new xf(f=>{f($3).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService($3),f(de.TYPES.MouseListener).to(gye).inSingletonScope()});var IJt=Object.defineProperty,TJt=Object.getOwnPropertyDescriptor,b2e=(f,h,b,w)=>{for(var m=w>1?void 0:w?TJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&IJt(h,b,m),m},jJt=(f,h)=>(b,w)=>h(b,w,f);let bye=class extends de.EditLabelMouseListener{constructor(f){super(),this.editorModeController=f}doubleClick(f,h){return this.editorModeController.isReadOnly()?[]:super.doubleClick(f,h)}};bye=b2e([vr(),jJt(0,Et(sc.Mode))],bye);let tJ=class extends de.DeleteElementCommand{editorModeController;execute(f){return this.editorModeController?.isReadOnly()?f.root:super.execute(f)}undo(f){return this.editorModeController?.isReadOnly()?f.root:super.undo(f)}redo(f){return this.editorModeController?.isReadOnly()?f.root:super.redo(f)}};b2e([Et(sc.Mode)],tJ.prototype,"editorModeController",2);tJ=b2e([vr()],tJ);const AJt=new xf((f,h,b,w)=>{w(de.EditLabelMouseListener).to(bye),w(de.DeleteElementCommand).to(tJ)}),OJt=new xf(f=>{f(Jd).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(Jd),f(Db.DefaultUIElement).toService(Jd)});class q0t extends de.KeyListener{keyDown(h,b){return Pl.matchesKeystroke(b,"Delete")?this.deleteSelectedElements(h):[]}deleteSelectedElements(h){const b=h.root.index,m=Array.from(b.all().filter(P=>de.isDeletable(P)&&de.isSelectable(P)&&P.selected).filter(P=>P.id!==P.root.id)).flatMap(P=>{const g=[P.id];return P instanceof de.SConnectableElementImpl&&g.push(...this.getEdgeIdsOfElement(P)),P instanceof de.SChildElementImpl&&P.children.forEach(E=>{g.push(E.id),E instanceof de.SConnectableElementImpl&&g.push(...this.getEdgeIdsOfElement(E))}),g});if(m.length>0){const P=[...new Set(m)];return[mg.DeleteElementAction.create(P),de.CommitModelAction.create()]}else return[]}getEdgeIdsOfElement(h){return[...h.incomingEdges.map(b=>b.id),...h.outgoingEdges.map(b=>b.id)]}}var DJt=Object.defineProperty,kJt=Object.getOwnPropertyDescriptor,RJt=(f,h,b)=>h in f?DJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,Emt=(f,h,b,w)=>{for(var m=w>1?void 0:w?kJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},pye=(f,h)=>(b,w)=>h(b,w,f),xJt=(f,h,b)=>RJt(f,h+"",b);let wye=class{constructor(f){this.mousePositionTracker=f}copyElements=[];keyUp(){return[]}keyDown(f,h){return Pl.matchesKeystroke(h,"KeyC","ctrl")?this.copy(f.root):Pl.matchesKeystroke(h,"KeyV","ctrl")?this.paste():[]}copy(f){return this.copyElements=[],f.index.all().filter(h=>de.isSelected(h)).forEach(h=>this.copyElements.push(h)),[]}paste(){const f=this.mousePositionTracker.lastPositionOnDiagram??{x:0,y:0};return[nJ.create(this.copyElements,f),de.CommitModelAction.create()]}};wye=Emt([vr(),pye(0,Et(de.MousePositionTracker))],wye);var nJ;(f=>{f.KIND="paste-clipboard-elements";function h(b,w){return{kind:f.KIND,copyElements:b,targetPosition:w}}f.create=h})(nJ||(nJ={}));let iJ=class extends de.Command{constructor(f,h){super(),this.action=f,this.editorModeController=h}newElements=[];copyElementIdMapping={};computeElementOffset(){const f={x:1/0,y:1/0};return this.action.copyElements.forEach(h=>{h instanceof de.SNodeImpl&&(h.position.x{if(!(b instanceof de.SNodeImpl))return;const w=JSON.parse(JSON.stringify(f.modelFactory.createSchema(b)));"features"in w&&(w.features=void 0),w.id=L3(),this.copyElementIdMapping[b.id]=w.id,"position"in w&&(w.position=mg.Point.add(b.position,h)),b instanceof jy&&w.ports.forEach(P=>{const g=P.id;P.id=L3(),this.copyElementIdMapping[g]=P.id});const m=f.modelFactory.createElement(w,f.root);this.newElements.push(m)}),this.action.copyElements.forEach(b=>{if(!(b instanceof de.SEdgeImpl))return;const w=this.copyElementIdMapping[b.sourceId],m=this.copyElementIdMapping[b.targetId];if(!w||!m)return;const P=JSON.parse(JSON.stringify(f.modelFactory.createSchema(b)));Ey.preprocessModelSchema(P),P.id=L3(),this.copyElementIdMapping[b.id]=P.id,P.sourceId=w,P.targetId=m;const g=f.modelFactory.createElement(P);this.newElements.push(g)}),this.newElements.forEach(b=>{f.root.add(b)}),f.root}undo(f){return this.editorModeController?.isReadOnly()||this.newElements.forEach(h=>{f.root.remove(h)}),f.root}redo(f){return this.editorModeController?.isReadOnly()||this.newElements.forEach(h=>{f.root.add(h)}),f.root}};xJt(iJ,"KIND",nJ.KIND);iJ=Emt([vr(),pye(0,Et(de.TYPES.Action)),pye(1,Et(sc.Mode))],iJ);var LJt=Object.getOwnPropertyDescriptor,NJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?LJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},FJt=(f,h)=>(b,w)=>h(b,w,f);let mye=class extends de.KeyListener{constructor(f){super(),this.constraintRegistry=f}keyDown(f,h){return Pl.matchesKeystroke(h,"KeyO","ctrlCmd")?(h.preventDefault(),[BL.create(),de.CommitModelAction.create()]):Pl.matchesKeystroke(h,"KeyO","ctrlCmd","shift")?(h.preventDefault(),[dA.create(),de.CommitModelAction.create()]):Pl.matchesKeystroke(h,"KeyS","ctrlCmd")?(h.preventDefault(),[$L.create()]):Pl.matchesKeystroke(h,"KeyA","ctrlCmd","shift")?(h.preventDefault(),[HL.create(),gS.create(this.constraintRegistry.getConstraintList().map(b=>b.name)),de.CommitModelAction.create()]):[]}};mye=NJt([vr(),FJt(0,Et(Qd))],mye);class H0t extends de.KeyListener{keyDown(h,b){return Pl.matchesKeystroke(b,"KeyC","ctrlCmd","shift")?[mg.CenterAction.create([])]:Pl.matchesKeystroke(b,"KeyF","ctrlCmd","shift")?[mg.FitToScreenAction.create([h.root.id])]:[]}}const BJt=new xf((f,h,b,w)=>{f(q0t).toSelf().inSingletonScope(),f(de.TYPES.KeyListener).toService(q0t);const m={bind:f,unbind:h,isBound:b,rebind:w};f(de.TYPES.KeyListener).to(wye).inSingletonScope(),de.configureCommand(m,iJ),f(de.TYPES.KeyListener).to(mye).inSingletonScope(),f(H0t).toSelf().inSingletonScope(),w(de.CenterKeyboardListener).toService(H0t)});var $Jt=Object.defineProperty,KJt=Object.getOwnPropertyDescriptor,qJt=(f,h,b)=>h in f?$Jt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,HJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?KJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},zJt=(f,h)=>(b,w)=>h(b,w,f),VJt=(f,h,b)=>qJt(f,h+"",b);let mS=class extends RM{constructor(f){super("left","up"),this.violationService=f}id(){return mS.ID}containerClass(){return mS.ID}initializeHeaderContent(f){f.innerText="Violation Summary"}initializeHidableContent(f){f.innerHTML=` -
    - - -
    -
    -
    -
    -

    - No violation data found. Run a Analysis first. -

    -
    -
    - -
    -
    -

    - No violation data found. Run a Analysis first, then enter your API key to generate an AI summary. -

    -
    -
    - - -
    -
    - -
    -
    -
    - `,this.violationService.onViolationsChanged(h=>{this.updateSimpleTab(f,h)}),this.setupTabLogic(f),this.setupGenerateLogic(f)}setupGenerateLogic(f){f.querySelector("#generate-btn").addEventListener("click",()=>{})}setupTabLogic(f){const h=f.querySelectorAll(".tab-btn"),b=f.querySelectorAll(".tab-pane");h.forEach(w=>{w.addEventListener("click",()=>{const m=w.getAttribute("data-tab");h.forEach(P=>P.classList.remove("active")),b.forEach(P=>P.classList.remove("active")),w.classList.add("active"),f.querySelector(`#${m}-summary`)?.classList.add("active")})})}updateSimpleTab(f,h){const b=f.querySelector("#simple-summary .summary-text");if(!b)return;if(h.length===0){b.innerHTML='

    No violations found. Everything looks good!

    ';return}const w=h.map(m=>` -
    - Violated constraint: ${m.constraint}
    - Flow of violation cause : ${m.violationCauseGraph.join(", ")} -
    - `).join("");b.innerHTML=` -
    Found ${h.length} issues:
    -
    ${w}
    - `}};VJt(mS,"ID","violation-ui");mS=HJt([vr(),zJt(0,Et(qL))],mS);const GJt=new xf(f=>{f(mS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(mS),f(Db.DefaultUIElement).toService(mS),f(qL).toSelf().inSingletonScope()}),p2e=new FX;de.loadDefaultModules(p2e,{exclude:[de.labelEditUiModule]});p2e.load(GUt,fYt,lYt,jYt,PXt,XYt,MXt,RXt,R3.elkLayoutModule,LXt,NXt,zXt,oJt,mJt,CJt,AJt,OJt,BJt,GJt);const UJt=p2e.getAll(OL);for(const f of UJt)f.run(); diff --git a/deploy/dac/assets/monaco-editor-B8Nwu8CH.css b/deploy/dac/assets/monaco-editor-B8Nwu8CH.css deleted file mode 100644 index fa4c03b9..00000000 --- a/deploy/dac/assets/monaco-editor-B8Nwu8CH.css +++ /dev/null @@ -1 +0,0 @@ -.monaco-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,system-ui,Ubuntu,Droid Sans,sans-serif;--monaco-monospace-font: "SF Mono", Monaco, Menlo, Consolas, "Ubuntu Mono", "Liberation Mono", "DejaVu Sans Mono", "Courier New", monospace}.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-hover p{margin:0}.monaco-aria-container{position:absolute!important;top:0;height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%)}.monaco-editor,.monaco-diff-editor .synthetic-focus,.monaco-diff-editor [tabindex="0"]:focus,.monaco-diff-editor [tabindex="-1"]:focus,.monaco-diff-editor button:focus,.monaco-diff-editor input[type=button]:focus,.monaco-diff-editor input[type=checkbox]:focus,.monaco-diff-editor input[type=search]:focus,.monaco-diff-editor input[type=text]:focus,.monaco-diff-editor select:focus,.monaco-diff-editor textarea:focus{outline-width:1px;outline-style:solid;outline-offset:-1px;outline-color:var(--vscode-focusBorder);opacity:1}.monaco-workbench .workbench-hover{position:relative;font-size:13px;line-height:19px;z-index:40;overflow:hidden;max-width:700px;background:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px;color:var(--vscode-editorHoverWidget-foreground);box-shadow:0 2px 8px var(--vscode-widget-shadow)}.monaco-workbench .workbench-hover hr{border-bottom:none}.monaco-workbench .workbench-hover:not(.skip-fade-in){animation:fadein .1s linear}.monaco-workbench .workbench-hover.compact{font-size:12px}.monaco-workbench .workbench-hover.compact .hover-contents{padding:2px 8px}.monaco-workbench .workbench-hover-container.locked .workbench-hover{outline:1px solid var(--vscode-editorHoverWidget-border)}.monaco-workbench .workbench-hover-container.locked .workbench-hover:focus,.monaco-workbench .workbench-hover-lock:focus{outline:1px solid var(--vscode-focusBorder)}.monaco-workbench .workbench-hover-container.locked .workbench-hover-lock:hover{background:var(--vscode-toolbar-hoverBackground)}.monaco-workbench .workbench-hover-pointer{position:absolute;z-index:41;pointer-events:none}.monaco-workbench .workbench-hover-pointer:after{content:"";position:absolute;width:5px;height:5px;background-color:var(--vscode-editorHoverWidget-background);border-right:1px solid var(--vscode-editorHoverWidget-border);border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-workbench .locked .workbench-hover-pointer:after{width:4px;height:4px;border-right-width:2px;border-bottom-width:2px}.monaco-workbench .workbench-hover-pointer.left{left:-3px}.monaco-workbench .workbench-hover-pointer.right{right:3px}.monaco-workbench .workbench-hover-pointer.top{top:-3px}.monaco-workbench .workbench-hover-pointer.bottom{bottom:3px}.monaco-workbench .workbench-hover-pointer.left:after{transform:rotate(135deg)}.monaco-workbench .workbench-hover-pointer.right:after{transform:rotate(315deg)}.monaco-workbench .workbench-hover-pointer.top:after{transform:rotate(225deg)}.monaco-workbench .workbench-hover-pointer.bottom:after{transform:rotate(45deg)}.monaco-workbench .workbench-hover a{color:var(--vscode-textLink-foreground)}.monaco-workbench .workbench-hover a:focus{outline:1px solid;outline-offset:-1px;text-decoration:underline;outline-color:var(--vscode-focusBorder)}.monaco-workbench .workbench-hover a:hover,.monaco-workbench .workbench-hover a:active{color:var(--vscode-textLink-activeForeground)}.monaco-workbench .workbench-hover code{background:var(--vscode-textCodeBlock-background)}.monaco-workbench .workbench-hover .hover-row .actions{background:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-workbench .workbench-hover.right-aligned{left:1px}.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions{flex-direction:row-reverse}.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions .action-container{margin-right:0;margin-left:16px}.monaco-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.monaco-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity .8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.scrollbar>.slider{background:var(--vscode-scrollbarSlider-background)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-scrollable-element>.scrollbar>.slider.active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-hover{cursor:default;position:absolute;overflow:hidden;user-select:text;-webkit-user-select:text;box-sizing:border-box;animation:fadein .1s linear;line-height:1.5em;white-space:var(--vscode-hover-whiteSpace, normal)}.monaco-hover.hidden{display:none}.monaco-hover a:hover:not(.disabled){cursor:pointer}.monaco-hover .hover-contents:not(.html-hover-contents){padding:4px 8px}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:var(--vscode-hover-maxWidth, 500px);word-wrap:break-word}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100%}.monaco-hover p,.monaco-hover .code,.monaco-hover ul,.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{margin:8px 0}.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{line-height:1.1}.monaco-hover code{font-family:var(--monaco-monospace-font)}.monaco-hover hr{box-sizing:border-box;border-left:0px;border-right:0px;margin:4px -8px -4px;height:1px}.monaco-hover p:first-child,.monaco-hover .code:first-child,.monaco-hover ul:first-child{margin-top:0}.monaco-hover p:last-child,.monaco-hover .code:last-child,.monaco-hover ul:last-child{margin-bottom:0}.monaco-hover ul,.monaco-hover ol{padding-left:20px}.monaco-hover li>p{margin-bottom:0}.monaco-hover li>ul{margin-top:0}.monaco-hover code{border-radius:3px;padding:0 .4em}.monaco-hover .monaco-tokenized-source{white-space:var(--vscode-hover-sourceWhiteSpace, pre-wrap)}.monaco-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-hover .hover-row.status-bar .info{font-style:italic;padding:0 8px}.monaco-hover .hover-row.status-bar .actions{display:flex;padding:0 8px;width:100%}.monaco-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-hover .hover-row.status-bar .actions .action-container a{color:var(--vscode-textLink-foreground);text-decoration:var(--text-link-decoration)}.monaco-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-hover .hover-contents a.code-link:hover,.monaco-hover .hover-contents a.code-link{color:inherit}.monaco-hover .hover-contents a.code-link:before{content:"("}.monaco-hover .hover-contents a.code-link:after{content:")"}.monaco-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground)}.monaco-hover .hover-contents a.code-link>span:hover{color:var(--vscode-textLink-activeForeground)}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span{margin-bottom:4px;display:inline-block}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span.codicon{margin-bottom:2px}.monaco-hover-content .action-container a{-webkit-user-select:none;user-select:none}.monaco-hover-content .action-container.disabled{pointer-events:none;opacity:.4;cursor:default}.monaco-editor .rendered-markdown kbd{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow);vertical-align:middle;padding:1px 3px}.rendered-markdown li:has(input[type=checkbox]){list-style-type:none}.monaco-aria-container{position:absolute;left:-999em}.context-view{position:absolute}.context-view.fixed{all:initial;font-family:inherit;font-size:13px;position:fixed;color:inherit}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{user-select:none;-webkit-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list .monaco-scrollable-element>.scrollbar.vertical,.monaco-pane-view>.monaco-split-view2.vertical>.monaco-scrollable-element>.scrollbar.vertical{z-index:14}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-single,.monaco-list.selection-multiple{outline:0!important}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute;z-index:1000}.monaco-list-type-filter-message{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-select-box-dropdown-padding{--dropdown-padding-top: 1px;--dropdown-padding-bottom: 1px}.hc-black .monaco-select-box-dropdown-padding,.hc-light .monaco-select-box-dropdown-padding{--dropdown-padding-top: 3px;--dropdown-padding-bottom: 4px}.monaco-select-box-dropdown-container{display:none;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown *{margin:0}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown a:focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown code{line-height:15px;font-family:var(--monaco-monospace-font)}.monaco-select-box-dropdown-container.visible{display:flex;flex-direction:column;text-align:left;width:1px;overflow:hidden;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container{flex:0 0 auto;align-self:flex-start;padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom);padding-left:1px;padding-right:1px;width:100%;overflow:hidden;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane{padding:5px}.hc-black .monaco-select-box-dropdown-container>.select-box-dropdown-list-container{padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom)}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row{cursor:pointer}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-text{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-detail{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left;opacity:.7}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-decorator-right{text-overflow:ellipsis;overflow:hidden;padding-right:10px;white-space:nowrap;float:right}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.visually-hidden{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control{flex:1 1 auto;align-self:flex-start;opacity:0}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div{overflow:hidden;max-height:0px}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div>.option-text-width-control{padding-left:4px;padding-right:8px;white-space:nowrap}.monaco-select-box{width:100%;cursor:pointer;border-radius:2px}.monaco-select-box-dropdown-container{font-size:13px;font-weight:400;text-transform:none}.monaco-action-bar .action-item.select-container{cursor:default}.monaco-action-bar .action-item .monaco-select-box{cursor:pointer;min-width:100px;min-height:18px;padding:2px 23px 2px 8px}.mac .monaco-action-bar .action-item .monaco-select-box{font-size:11px;border-radius:5px}.monaco-action-bar{white-space:nowrap;height:100%}.monaco-action-bar .actions-container{display:flex;margin:0 auto;padding:0;height:100%;width:100%;align-items:center}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar .action-item{display:block;align-items:center;justify-content:center;cursor:pointer;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar .action-item .icon,.monaco-action-bar .action-item .codicon{display:block}.monaco-action-bar .action-item .codicon{display:flex;align-items:center;width:16px;height:16px}.monaco-action-bar .action-label{display:flex;font-size:11px;padding:3px;border-radius:5px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:before,.monaco-action-bar .action-item.disabled .action-label:hover{color:var(--vscode-disabledForeground)}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:.8em;margin-right:.8em}.monaco-action-bar .action-item .action-label.separator{width:1px;height:16px;margin:5px 4px!important;cursor:default;min-width:1px;padding:0;background-color:#bbb}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;flex:1;max-width:170px;min-width:60px;display:flex;align-items:center;justify-content:center;margin-right:10px}.monaco-action-bar .action-item.action-dropdown-item{display:flex}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator{display:flex;align-items:center;cursor:default}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator>div{width:1px}.monaco-dropdown{height:100%;padding:0}.monaco-dropdown>.dropdown-label{cursor:pointer;height:100%;display:flex;align-items:center;justify-content:center}.monaco-dropdown>.dropdown-label>.action-label.disabled{cursor:default}.monaco-dropdown-with-primary{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-primary>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.monaco-action-bar .action-item.menu-entry .action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-action-bar .action-item.menu-entry.text-only .action-label{color:var(--vscode-descriptionForeground);overflow:hidden;border-radius:2px}.monaco-action-bar .action-item.menu-entry.text-only.use-comma:not(:last-of-type) .action-label:after{content:", "}.monaco-action-bar .action-item.menu-entry.text-only+.action-item:not(.text-only)>.monaco-dropdown .action-label{color:var(--vscode-descriptionForeground)}.monaco-dropdown-with-default{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-default>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-default>.action-container.menu-entry>.action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.quick-input-widget{font-size:13px}.quick-input-widget .monaco-highlighted-label .highlight{color:#0066bf}.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight{color:#9dddff}.vs-dark .quick-input-widget .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .quick-input-widget .monaco-highlighted-label .highlight{color:#f38518}.hc-light .quick-input-widget .monaco-highlighted-label .highlight{color:#0f4a85}.monaco-keybinding>.monaco-keybinding-key{background-color:#ddd6;border:solid 1px rgba(204,204,204,.4);border-bottom-color:#bbb6;box-shadow:inset 0 -1px #bbb6;color:#555}.hc-black .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px rgb(111,195,223);box-shadow:none;color:#fff}.hc-light .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px #0F4A85;box-shadow:none;color:#292929}.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:#8080802b;border:solid 1px rgba(51,51,51,.6);border-bottom-color:#4449;box-shadow:inset 0 -1px #4449;color:#ccc}.monaco-custom-toggle{margin-left:2px;float:left;cursor:pointer;overflow:hidden;width:20px;height:20px;border-radius:3px;border:1px solid transparent;padding:1px;box-sizing:border-box;user-select:none;-webkit-user-select:none}.monaco-custom-toggle:hover{background-color:var(--vscode-inputOption-hoverBackground)}.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{border:1px dashed var(--vscode-focusBorder)}.hc-black .monaco-custom-toggle,.hc-light .monaco-custom-toggle,.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{background:none}.monaco-custom-toggle.monaco-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px!important}.monaco-action-bar .checkbox-action-item{display:flex;align-items:center;border-radius:2px;padding-right:2px}.monaco-action-bar .checkbox-action-item:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-action-bar .checkbox-action-item>.monaco-custom-toggle.monaco-checkbox{margin-right:4px}.monaco-action-bar .checkbox-action-item>.checkbox-label{font-size:12px}.monaco-custom-toggle.monaco-checkbox:not(.checked):before{visibility:hidden}.quick-input-widget{position:absolute;width:600px;z-index:2550;left:50%;margin-left:-300px;-webkit-app-region:no-drag;border-radius:6px}.quick-input-titlebar{display:flex;align-items:center;border-top-right-radius:5px;border-top-left-radius:5px}.quick-input-left-action-bar{display:flex;margin-left:4px;flex:1}.quick-input-inline-action-bar{margin:2px 0 0 5px}.quick-input-title{padding:3px 0;text-align:center;text-overflow:ellipsis;overflow:hidden}.quick-input-right-action-bar{display:flex;margin-right:4px;flex:1}.quick-input-right-action-bar>.actions-container{justify-content:flex-end}.quick-input-titlebar .monaco-action-bar .action-label.codicon{background-position:center;background-repeat:no-repeat;padding:2px}.quick-input-description{margin:6px 6px 6px 11px}.quick-input-header .quick-input-description{margin:4px 2px;flex:1}.quick-input-header{display:flex;padding:8px 6px 2px}.quick-input-widget.hidden-input .quick-input-header{padding:0;margin-bottom:0}.quick-input-and-message{display:flex;flex-direction:column;flex-grow:1;min-width:0;position:relative}.quick-input-check-all{align-self:center;margin:0}.quick-input-filter{flex-grow:1;display:flex;position:relative}.quick-input-box{flex-grow:1}.quick-input-widget.show-checkboxes .quick-input-box,.quick-input-widget.show-checkboxes .quick-input-message{margin-left:5px}.quick-input-visible-count{position:absolute;left:-10000px}.quick-input-count{align-self:center;position:absolute;right:4px;display:flex;align-items:center}.quick-input-count .monaco-count-badge{vertical-align:middle;padding:2px 4px;border-radius:2px;min-height:auto;line-height:normal}.quick-input-action{margin-left:6px}.quick-input-action .monaco-text-button{font-size:11px;padding:0 6px;display:flex;height:25px;align-items:center}.quick-input-message{margin-top:-1px;padding:5px;overflow-wrap:break-word}.quick-input-message>.codicon{margin:0 .2em;vertical-align:text-bottom}.quick-input-message a{color:inherit}.quick-input-progress.monaco-progress-container{position:relative}.quick-input-list{line-height:22px}.quick-input-widget.hidden-input .quick-input-list{margin-top:4px;padding-bottom:4px}.quick-input-list .monaco-list{overflow:hidden;max-height:440px;padding-bottom:5px}.quick-input-list .monaco-scrollable-element{padding:0 5px}.quick-input-list .quick-input-list-entry{box-sizing:border-box;overflow:hidden;display:flex;padding:0 6px}.quick-input-list .quick-input-list-entry.quick-input-list-separator-border{border-top-width:1px;border-top-style:solid}.quick-input-list .monaco-list-row{border-radius:3px}.quick-input-list .monaco-list-row[data-index="0"] .quick-input-list-entry.quick-input-list-separator-border{border-top-style:none}.quick-input-list .quick-input-list-label{overflow:hidden;display:flex;height:100%;flex:1}.quick-input-list .quick-input-list-checkbox{align-self:center;margin:0}.quick-input-list .quick-input-list-icon{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;display:flex;align-items:center;justify-content:center}.quick-input-list .quick-input-list-rows{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%;flex:1;margin-left:5px}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-rows{margin-left:10px}.quick-input-widget .quick-input-list .quick-input-list-checkbox{display:none}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-checkbox{display:inline}.quick-input-list .quick-input-list-rows>.quick-input-list-row{display:flex;align-items:center}.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label,.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.quick-input-list .quick-input-list-rows>.quick-input-list-row .codicon[class*=codicon-]{vertical-align:text-bottom}.quick-input-list .quick-input-list-rows .monaco-highlighted-label>span{opacity:1}.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding{margin-right:8px}.quick-input-list .quick-input-list-label-meta{opacity:.7;line-height:normal;text-overflow:ellipsis;overflow:hidden}.quick-input-list .monaco-list .monaco-list-row .monaco-highlighted-label .highlight{font-weight:700;background-color:unset;color:var(--vscode-list-highlightForeground)!important}.quick-input-list .monaco-list .monaco-list-row.focused .monaco-highlighted-label .highlight{color:var(--vscode-list-focusHighlightForeground)!important}.quick-input-list .quick-input-list-entry .quick-input-list-separator{margin-right:4px}.quick-input-list .quick-input-list-entry-action-bar{display:flex;flex:0;overflow:visible}.quick-input-list .quick-input-list-entry-action-bar .action-label{display:none}.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon{margin-right:4px;padding:2px}.quick-input-list .quick-input-list-entry-action-bar{margin-top:1px}.quick-input-list .quick-input-list-entry-action-bar{margin-right:4px}.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label,.quick-input-list .quick-input-list-entry.focus-inside .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.passive-focused .quick-input-list-entry-action-bar .action-label{display:flex}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator{color:inherit}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key{background:none}.quick-input-list .quick-input-list-separator-as-item{padding:4px 6px;font-size:12px}.quick-input-list .quick-input-list-separator-as-item .label-name{font-weight:600}.quick-input-list .quick-input-list-separator-as-item .label-description{opacity:1!important}.quick-input-list .monaco-tree-sticky-row .quick-input-list-entry.quick-input-list-separator-as-item.quick-input-list-separator-border{border-top-style:none}.quick-input-list .monaco-tree-sticky-row{padding:0 5px}.quick-input-list .monaco-tl-twistie{display:none!important}.monaco-text-button{box-sizing:border-box;display:flex;width:100%;padding:4px;border-radius:2px;text-align:center;cursor:pointer;justify-content:center;align-items:center;border:1px solid var(--vscode-button-border, transparent);line-height:18px}.monaco-text-button:focus{outline-offset:2px!important}.monaco-text-button:hover{text-decoration:none!important}.monaco-button.disabled:focus,.monaco-button.disabled{opacity:.4!important;cursor:default}.monaco-text-button .codicon{margin:0 .2em;color:inherit!important}.monaco-text-button.monaco-text-button-with-short-label{flex-direction:row;flex-wrap:wrap;padding:0 4px;overflow:hidden;height:28px}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label{flex-basis:100%}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{flex-grow:1;width:0;overflow:hidden}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label,.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{display:flex;justify-content:center;align-items:center;font-weight:400;font-style:inherit;padding:4px 0}.monaco-button-dropdown{display:flex;cursor:pointer}.monaco-button-dropdown.disabled{cursor:default}.monaco-button-dropdown>.monaco-button:focus{outline-offset:-1px!important}.monaco-button-dropdown.disabled>.monaco-button.disabled,.monaco-button-dropdown.disabled>.monaco-button.disabled:focus,.monaco-button-dropdown.disabled>.monaco-button-dropdown-separator{opacity:.4!important}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-right-width:0!important}.monaco-button-dropdown .monaco-button-dropdown-separator{padding:4px 0;cursor:default}.monaco-button-dropdown .monaco-button-dropdown-separator>div{height:100%;width:1px}.monaco-button-dropdown>.monaco-button.monaco-dropdown-button{border:1px solid var(--vscode-button-border, transparent);border-left-width:0!important;border-radius:0 2px 2px 0;display:flex;align-items:center}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-radius:2px 0 0 2px}.monaco-description-button{display:flex;flex-direction:column;align-items:center;margin:4px 5px}.monaco-description-button .monaco-button-description{font-style:italic;font-size:11px;padding:4px 20px}.monaco-description-button .monaco-button-label,.monaco-description-button .monaco-button-description{display:flex;justify-content:center;align-items:center}.monaco-description-button .monaco-button-label>.codicon,.monaco-description-button .monaco-button-description>.codicon{margin:0 .2em;color:inherit!important}.monaco-button.default-colors,.monaco-button-dropdown.default-colors>.monaco-button{color:var(--vscode-button-foreground);background-color:var(--vscode-button-background)}.monaco-button.default-colors:hover,.monaco-button-dropdown.default-colors>.monaco-button:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-button.default-colors.secondary,.monaco-button-dropdown.default-colors>.monaco-button.secondary{color:var(--vscode-button-secondaryForeground);background-color:var(--vscode-button-secondaryBackground)}.monaco-button.default-colors.secondary:hover,.monaco-button-dropdown.default-colors>.monaco-button.secondary:hover{background-color:var(--vscode-button-secondaryHoverBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator{background-color:var(--vscode-button-background);border-top:1px solid var(--vscode-button-border);border-bottom:1px solid var(--vscode-button-border)}.monaco-button-dropdown.default-colors .monaco-button.secondary+.monaco-button-dropdown-separator{background-color:var(--vscode-button-secondaryBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator>div{background-color:var(--vscode-button-separator)}.monaco-count-badge{padding:3px 6px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;box-sizing:border-box}.monaco-count-badge.long{padding:2px 3px;border-radius:2px;min-height:auto;line-height:normal}.monaco-progress-container{width:100%;height:2px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:2px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;transition:width .1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{animation-name:progress;animation-duration:4s;animation-iteration-count:infinite;transform:translateZ(0);animation-timing-function:linear}.monaco-progress-container.infinite.infinite-long-running .progress-bit{animation-timing-function:steps(100)}@keyframes progress{0%{transform:translate(0) scaleX(1)}50%{transform:translate(2500%) scaleX(3)}to{transform:translate(4900%) scaleX(1)}}.monaco-inputbox{position:relative;display:block;padding:0;box-sizing:border-box;border-radius:2px;font-size:inherit}.monaco-inputbox>.ibwrapper>.input,.monaco-inputbox>.ibwrapper>.mirror{padding:4px 6px}.monaco-inputbox>.ibwrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.ibwrapper>.input{display:inline-block;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.ibwrapper>input{text-overflow:ellipsis}.monaco-inputbox>.ibwrapper>textarea.input{display:block;scrollbar-width:none;outline:none}.monaco-inputbox>.ibwrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.ibwrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.ibwrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;box-sizing:border-box;padding:.4em;font-size:12px;line-height:17px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.monaco-findInput.highlight-0 .controls,.hc-light .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-0 .1s linear 0s}.monaco-findInput.highlight-1 .controls,.hc-light .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-1 .1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-dark-0 .1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-dark-1 .1s linear 0s}@keyframes monaco-findInput-highlight-0{0%{background:#fdff00cc}to{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:#fdff00cc}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:#ffffff70}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:#ffffff70}99%{background:transparent}}:root{--vscode-sash-size: 4px;--vscode-sash-hover-size: 4px}.monaco-sash{position:absolute;z-index:35;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.vertical{cursor:ew-resize;top:0;width:var(--vscode-sash-size);height:100%}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:var(--vscode-sash-size)}.monaco-sash:not(.disabled)>.orthogonal-drag-handle{content:" ";height:calc(var(--vscode-sash-size) * 2);width:calc(var(--vscode-sash-size) * 2);z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.start,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.end{cursor:nwse-resize}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.end,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.start{cursor:nesw-resize}.monaco-sash.vertical>.orthogonal-drag-handle.start{left:calc(var(--vscode-sash-size) * -.5);top:calc(var(--vscode-sash-size) * -1)}.monaco-sash.vertical>.orthogonal-drag-handle.end{left:calc(var(--vscode-sash-size) * -.5);bottom:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.start{top:calc(var(--vscode-sash-size) * -.5);left:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.end{top:calc(var(--vscode-sash-size) * -.5);right:calc(var(--vscode-sash-size) * -1)}.monaco-sash:before{content:"";pointer-events:none;position:absolute;width:100%;height:100%;background:transparent}.monaco-workbench:not(.reduce-motion) .monaco-sash:before{transition:background-color .1s ease-out}.monaco-sash.hover:before,.monaco-sash.active:before{background:var(--vscode-sash-hoverBorder)}.monaco-sash.vertical:before{width:var(--vscode-sash-hover-size);left:calc(50% - (var(--vscode-sash-hover-size) / 2))}.monaco-sash.horizontal:before{height:var(--vscode-sash-hover-size);top:calc(50% - (var(--vscode-sash-hover-size) / 2))}.pointer-events-disabled{pointer-events:none!important}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:#0ff3}.monaco-sash.debug:not(.disabled)>.orthogonal-drag-handle{background:red}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:initial}.monaco-split-view2>.monaco-scrollable-element{width:100%;height:100%}.monaco-split-view2>.monaco-scrollable-element>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view{white-space:initial;position:absolute}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{content:" ";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-table{display:flex;flex-direction:column;position:relative;height:100%;width:100%;white-space:nowrap;overflow:hidden}.monaco-table>.monaco-split-view2{border-bottom:1px solid transparent}.monaco-table>.monaco-list{flex:1}.monaco-table-tr{display:flex;height:100%}.monaco-table-th{width:100%;height:100%;font-weight:700;overflow:hidden;text-overflow:ellipsis}.monaco-table-th,.monaco-table-td{box-sizing:border-box;flex-shrink:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{content:"";position:absolute;left:calc(var(--vscode-sash-size) / 2);width:0;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2,.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{transition:border-color .2s ease-out}.monaco-tl-row{display:flex;height:100%;align-items:center;position:relative}.monaco-tl-row.disabled{cursor:default}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;box-sizing:border-box;height:100%;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-tl-indent>.indent-guide{transition:border-color .1s linear}.monaco-tl-twistie,.monaco-tl-contents{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;flex-shrink:0;width:16px;display:flex!important;align-items:center;justify-content:center;transform:translate(3px)}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie:before{border-radius:20px}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-tree-item-loading:before{animation:codicon-spin 1.25s steps(30) infinite}.monaco-tree-type-filter{position:absolute;top:0;display:flex;padding:3px;max-width:200px;z-index:100;margin:0 6px;border:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-workbench:not(.reduce-motion) .monaco-tree-type-filter{transition:top .3s}.monaco-tree-type-filter.disabled{top:-40px!important}.monaco-tree-type-filter-grab{display:flex!important;align-items:center;justify-content:center;cursor:grab;margin-right:2px}.monaco-tree-type-filter-grab.grabbing{cursor:grabbing}.monaco-tree-type-filter-input{flex:1}.monaco-tree-type-filter-input .monaco-inputbox{height:23px}.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.input,.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.mirror{padding:2px 4px}.monaco-tree-type-filter-input .monaco-findInput>.controls{top:2px}.monaco-tree-type-filter-actionbar{margin-left:4px}.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label{padding:2px}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container{position:absolute;top:0;left:0;width:100%;height:0;z-index:13;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row.monaco-list-row{position:absolute;width:100%;opacity:1!important;overflow:hidden;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row:hover{background-color:var(--vscode-list-hoverBackground)!important;cursor:pointer}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty,.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty .monaco-tree-sticky-container-shadow{display:none}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow{position:absolute;bottom:-3px;left:0;height:0px;width:100%}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container[tabindex="0"]:focus{outline:none}.monaco-icon-label{display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit!important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;flex-shrink:0}.monaco-icon-label-iconpath{width:16px;height:16px;padding-left:2px;margin-top:2px;display:flex}.monaco-icon-label-container.disabled{color:var(--vscode-disabledForeground)}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-suffix-container>.label-suffix{opacity:.7;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;margin-left:.5em;font-size:.9em;white-space:pre}.monaco-icon-label.nowrap>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{white-space:nowrap}.vs .monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.95}.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{font-style:italic}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:.66}.monaco-icon-label.italic:after{font-style:italic}.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{text-decoration:line-through}.monaco-icon-label:after{opacity:.75;font-size:90%;font-weight:600;margin:auto 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description{opacity:.8}.monaco-keybinding{display:flex;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border-style:solid;border-width:1px;border-radius:3px;vertical-align:middle;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%;color:var(--vscode-editor-foreground);background-color:var(--vscode-editor-background);overflow-wrap:initial}.monaco-editor-background{background-color:var(--vscode-editor-background)}.monaco-editor .rangeHighlight{background-color:var(--vscode-editor-rangeHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-rangeHighlightBorder)}.monaco-editor.hc-black .rangeHighlight,.monaco-editor.hc-light .rangeHighlight{border-style:dotted}.monaco-editor .symbolHighlight{background-color:var(--vscode-editor-symbolHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-symbolHighlightBorder)}.monaco-editor.hc-black .symbolHighlight,.monaco-editor.hc-light .symbolHighlight{border-style:dotted}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .view-overlays>div,.monaco-editor .margin-view-overlays>div{position:absolute;width:100%}.monaco-editor .squiggly-error{border-bottom:4px double var(--vscode-editorError-border)}.monaco-editor .squiggly-error:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorError-background)}.monaco-editor .squiggly-warning{border-bottom:4px double var(--vscode-editorWarning-border)}.monaco-editor .squiggly-warning:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorWarning-background)}.monaco-editor .squiggly-info{border-bottom:4px double var(--vscode-editorInfo-border)}.monaco-editor .squiggly-info:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorInfo-background)}.monaco-editor .squiggly-hint{border-bottom:2px dotted var(--vscode-editorHint-border)}.monaco-editor.showUnused .squiggly-unnecessary{border-bottom:2px dashed var(--vscode-editorUnnecessaryCode-border)}.monaco-editor.showDeprecated .squiggly-inline-deprecated{text-decoration:line-through;text-decoration-color:var(--vscode-editor-foreground, inherit)}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent;z-index:-10}.monaco-editor .inputarea.ime-input{z-index:10;caret-color:var(--vscode-editorCursor-foreground);color:var(--vscode-editor-foreground)}.monaco-editor .margin-view-overlays .line-numbers{bottom:0;font-variant-numeric:tabular-nums;position:absolute;text-align:right;display:inline-block;vertical-align:middle;box-sizing:border-box;cursor:default}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .line-numbers{color:var(--vscode-editorLineNumber-foreground)}.monaco-editor .line-numbers.active-line-number{color:var(--vscode-editorLineNumber-activeForeground)}.monaco-editor .margin{background-color:var(--vscode-editorGutter-background)}.monaco-mouse-cursor-text{cursor:text}.monaco-editor .blockDecorations-container{position:absolute;top:0;pointer-events:none}.monaco-editor .blockDecorations-block{position:absolute;box-sizing:border-box}.monaco-editor .view-overlays .current-line,.monaco-editor .margin-view-overlays .current-line{display:block;position:absolute;left:0;top:0;box-sizing:border-box;height:100%}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute;height:100%}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .glyph-margin-widgets .cgmr{position:absolute;display:flex;align-items:center;justify-content:center}.monaco-editor .glyph-margin-widgets .cgmr.codicon-modifier-spin:before{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.monaco-editor .lines-content .core-guide{position:absolute;box-sizing:border-box;height:100%}.mtkcontrol{color:#fff!important;background:#960000!important}.mtkoverflow{background-color:var(--vscode-button-background, var(--vscode-editor-background));color:var(--vscode-button-foreground, var(--vscode-editor-foreground));border-width:1px;border-style:solid;border-color:var(--vscode-contrastBorder);border-radius:2px;padding:4px;cursor:pointer}.mtkoverflow:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{user-select:none;-webkit-user-select:none}.monaco-editor.mac .lines-content:hover,.monaco-editor.mac .view-line:hover,.monaco-editor.mac .view-lines:hover{user-select:text;-webkit-user-select:text;-ms-user-select:text}.monaco-editor.enable-user-select{user-select:initial;-webkit-user-select:initial}.monaco-editor .view-lines{white-space:nowrap}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .lines-content>.view-lines>.view-line>span{top:0;bottom:0;position:absolute}.monaco-editor .mtkw{color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .mtkz{display:inline-block;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover:hover .minimap-slider,.monaco-editor .minimap.slider-mouseover .minimap-slider.active{opacity:1}.monaco-editor .minimap-slider .minimap-slider-horizontal{background:var(--vscode-minimapSlider-background)}.monaco-editor .minimap-slider:hover .minimap-slider-horizontal{background:var(--vscode-minimapSlider-hoverBackground)}.monaco-editor .minimap-slider.active .minimap-slider-horizontal{background:var(--vscode-minimapSlider-activeBackground)}.monaco-editor .minimap-shadow-visible{box-shadow:var(--vscode-scrollbar-shadow) -6px 0 6px -6px inset}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor.no-minimap-shadow .minimap-shadow-visible{position:absolute;left:-1px;width:1px}.minimap.autohide{opacity:0;transition:opacity .5s}.minimap.autohide:hover{opacity:1}.monaco-editor .minimap{z-index:5}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0;box-shadow:1px 0 0 0 var(--vscode-editorRuler-foreground) inset}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .focused .selected-text{background-color:var(--vscode-editor-selectionBackground)}.monaco-editor .selected-text{background-color:var(--vscode-editor-inactiveSelectionBackground)}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor.hc-light .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-light .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-light .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-light .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;overflow:hidden;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{background:transparent!important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent!important}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent!important}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate}.cursor-phase{animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate}.monaco-editor .mwh{position:absolute;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .diff-hidden-lines-widget{width:100%}.monaco-editor .diff-hidden-lines{height:0px;transform:translateY(-10px);font-size:13px;line-height:14px}.monaco-editor .diff-hidden-lines:not(.dragging) .top:hover,.monaco-editor .diff-hidden-lines:not(.dragging) .bottom:hover,.monaco-editor .diff-hidden-lines .top.dragging,.monaco-editor .diff-hidden-lines .bottom.dragging{background-color:var(--vscode-focusBorder)}.monaco-editor .diff-hidden-lines .top,.monaco-editor .diff-hidden-lines .bottom{transition:background-color .1s ease-out;height:4px;background-color:transparent;background-clip:padding-box;border-bottom:2px solid transparent;border-top:4px solid transparent}.monaco-editor.draggingUnchangedRegion.canMoveTop:not(.canMoveBottom) *,.monaco-editor .diff-hidden-lines .top.canMoveTop:not(.canMoveBottom),.monaco-editor .diff-hidden-lines .bottom.canMoveTop:not(.canMoveBottom){cursor:n-resize!important}.monaco-editor.draggingUnchangedRegion:not(.canMoveTop).canMoveBottom *,.monaco-editor .diff-hidden-lines .top:not(.canMoveTop).canMoveBottom,.monaco-editor .diff-hidden-lines .bottom:not(.canMoveTop).canMoveBottom{cursor:s-resize!important}.monaco-editor.draggingUnchangedRegion.canMoveTop.canMoveBottom *,.monaco-editor .diff-hidden-lines .top.canMoveTop.canMoveBottom,.monaco-editor .diff-hidden-lines .bottom.canMoveTop.canMoveBottom{cursor:ns-resize!important}.monaco-editor .diff-hidden-lines .top{transform:translateY(4px)}.monaco-editor .diff-hidden-lines .bottom{transform:translateY(-6px)}.monaco-editor .diff-unchanged-lines{background:var(--vscode-diffEditor-unchangedCodeBackground)}.monaco-editor .noModificationsOverlay{z-index:1;background:var(--vscode-editor-background);display:flex;justify-content:center;align-items:center}.monaco-editor .diff-hidden-lines .center{background:var(--vscode-diffEditor-unchangedRegionBackground);color:var(--vscode-diffEditor-unchangedRegionForeground);overflow:hidden;display:block;text-overflow:ellipsis;white-space:nowrap;height:24px;box-shadow:inset 0 -5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow),inset 0 5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow)}.monaco-editor .diff-hidden-lines .center span.codicon{vertical-align:middle}.monaco-editor .diff-hidden-lines .center a:hover .codicon{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .diff-hidden-lines div.breadcrumb-item{cursor:pointer}.monaco-editor .diff-hidden-lines div.breadcrumb-item:hover{color:var(--vscode-editorLink-activeForeground)}.monaco-editor .movedOriginal,.monaco-editor .movedModified{border:2px solid var(--vscode-diffEditor-move-border)}.monaco-editor .movedOriginal.currentMove,.monaco-editor .movedModified.currentMove{border:2px solid var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path.currentMove{stroke:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path{pointer-events:visiblestroke}.monaco-diff-editor .moved-blocks-lines .arrow{fill:var(--vscode-diffEditor-move-border)}.monaco-diff-editor .moved-blocks-lines .arrow.currentMove{fill:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines .arrow-rectangle{fill:var(--vscode-editor-background)}.monaco-diff-editor .moved-blocks-lines{position:absolute;pointer-events:none}.monaco-diff-editor .moved-blocks-lines path{fill:none;stroke:var(--vscode-diffEditor-move-border);stroke-width:2}.monaco-editor .char-delete.diff-range-empty{margin-left:-1px;border-left:solid var(--vscode-diffEditor-removedTextBackground) 3px}.monaco-editor .char-insert.diff-range-empty{border-left:solid var(--vscode-diffEditor-insertedTextBackground) 3px}.monaco-editor .fold-unchanged{cursor:pointer}.monaco-diff-editor .diff-moved-code-block{display:flex;justify-content:flex-end;margin-top:-4px}.monaco-diff-editor .diff-moved-code-block .action-bar .action-label.codicon{width:12px;height:12px;font-size:12px}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor .diffOverview .diffViewport{z-index:10}.monaco-diff-editor.vs .diffOverview{background:#00000008}.monaco-diff-editor.vs-dark .diffOverview{background:#ffffff03}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar{background:#0000}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:#ababab66}.modified-in-monaco-diff-editor.hc-black .slider.active,.modified-in-monaco-diff-editor.hc-light .slider.active{background:none}.monaco-editor .insert-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-diff-editor .delete-sign{font-size:11px!important;opacity:.7!important;display:flex!important;align-items:center}.monaco-editor.hc-black .insert-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .delete-sign,.monaco-editor.hc-light .insert-sign,.monaco-diff-editor.hc-light .insert-sign,.monaco-editor.hc-light .delete-sign,.monaco-diff-editor.hc-light .delete-sign{opacity:1}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .inline-added-margin-view-zone{text-align:right}.monaco-editor .arrow-revert-change{z-index:10;position:absolute}.monaco-editor .arrow-revert-change:hover{cursor:pointer}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-editor .char-insert,.monaco-diff-editor .char-insert{background-color:var(--vscode-diffEditor-insertedTextBackground)}.monaco-editor .line-insert,.monaco-diff-editor .line-insert{background-color:var(--vscode-diffEditor-insertedLineBackground, var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .line-insert,.monaco-editor .char-insert{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-insertedTextBorder)}.monaco-editor.hc-black .line-insert,.monaco-editor.hc-light .line-insert,.monaco-editor.hc-black .char-insert,.monaco-editor.hc-light .char-insert{border-style:dashed}.monaco-editor .line-delete,.monaco-editor .char-delete{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-removedTextBorder)}.monaco-editor.hc-black .line-delete,.monaco-editor.hc-light .line-delete,.monaco-editor.hc-black .char-delete,.monaco-editor.hc-light .char-delete{border-style:dashed}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .gutter-insert,.monaco-diff-editor .gutter-insert{background-color:var(--vscode-diffEditorGutter-insertedLineBackground, var(--vscode-diffEditor-insertedLineBackground), var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .char-delete,.monaco-diff-editor .char-delete,.monaco-editor .inline-deleted-text{background-color:var(--vscode-diffEditor-removedTextBackground)}.monaco-editor .inline-deleted-text{text-decoration:line-through}.monaco-editor .line-delete,.monaco-diff-editor .line-delete{background-color:var(--vscode-diffEditor-removedLineBackground, var(--vscode-diffEditor-removedTextBackground))}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .gutter-delete,.monaco-diff-editor .gutter-delete{background-color:var(--vscode-diffEditorGutter-removedLineBackground, var(--vscode-diffEditor-removedLineBackground), var(--vscode-diffEditor-removedTextBackground))}.monaco-diff-editor.side-by-side .editor.modified{box-shadow:-6px 0 5px -5px var(--vscode-scrollbar-shadow);border-left:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor.side-by-side .editor.original{box-shadow:6px 0 5px -5px var(--vscode-scrollbar-shadow);border-right:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor .diffViewport{background:var(--vscode-scrollbarSlider-background)}.monaco-diff-editor .diffViewport:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-diff-editor .diffViewport:active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .diagonal-fill{background-image:linear-gradient(-45deg,var(--vscode-diffEditor-diagonalFill) 12.5%,#0000 12.5%,#0000 50%,var(--vscode-diffEditor-diagonalFill) 50%,var(--vscode-diffEditor-diagonalFill) 62.5%,#0000 62.5%,#0000 100%);background-size:8px 8px}.monaco-diff-editor .gutter{position:relative;overflow:hidden;flex-shrink:0;flex-grow:0}.monaco-diff-editor .gutter>div{position:absolute}.monaco-diff-editor .gutter .gutterItem{opacity:0;transition:opacity .7s}.monaco-diff-editor .gutter .gutterItem.showAlways{opacity:1;transition:none}.monaco-diff-editor .gutter .gutterItem.noTransition{transition:none}.monaco-diff-editor .gutter:hover .gutterItem{opacity:1;transition:opacity .1s ease-in-out}.monaco-diff-editor .gutter .gutterItem .background{position:absolute;height:100%;left:50%;width:1px;border-left:2px var(--vscode-menu-border) solid}.monaco-diff-editor .gutter .gutterItem .buttons{position:absolute;width:100%;display:flex;justify-content:center;align-items:center}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar{height:fit-content}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar{line-height:1}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container{width:fit-content;border-radius:4px;background:var(--vscode-editorGutter-commentRangeForeground)}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container .action-item:hover{background:var(--vscode-toolbar-hoverBackground)}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container .action-item .action-label{padding:1px 2px}.monaco-diff-editor .diff-hidden-lines-compact{display:flex;height:11px}.monaco-diff-editor .diff-hidden-lines-compact .line-left,.monaco-diff-editor .diff-hidden-lines-compact .line-right{height:1px;border-top:1px solid;border-color:var(--vscode-editorCodeLens-foreground);opacity:.5;margin:auto;width:100%}.monaco-diff-editor .diff-hidden-lines-compact .line-left{width:20px}.monaco-diff-editor .diff-hidden-lines-compact .text{color:var(--vscode-editorCodeLens-foreground);text-wrap:nowrap;font-size:11px;line-height:11px;margin:0 4px}.monaco-component.diff-review{user-select:none;-webkit-user-select:none;z-index:99}.monaco-diff-editor .diff-review{position:absolute}.monaco-component.diff-review .diff-review-line-number{text-align:right;display:inline-block;color:var(--vscode-editorLineNumber-foreground)}.monaco-component.diff-review .diff-review-summary{padding-left:10px}.monaco-component.diff-review .diff-review-shadow{position:absolute;box-shadow:var(--vscode-scrollbar-shadow) 0 -6px 6px -6px inset}.monaco-component.diff-review .diff-review-row{white-space:pre}.monaco-component.diff-review .diff-review-table{display:table;min-width:100%}.monaco-component.diff-review .diff-review-row{display:table-row;width:100%}.monaco-component.diff-review .diff-review-spacer{display:inline-block;width:10px;vertical-align:middle}.monaco-component.diff-review .diff-review-spacer>.codicon{font-size:9px!important}.monaco-component.diff-review .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px;z-index:100}.monaco-component.diff-review .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-component.diff-review .revertButton{cursor:pointer}.monaco-toolbar{height:100%}.monaco-toolbar .toolbar-toggle-more{display:inline-block;padding:0}.monaco-component.multiDiffEditor{background:var(--vscode-multiDiffEditor-background);position:relative;height:100%;width:100%;overflow-y:hidden}.monaco-component.multiDiffEditor>div{position:absolute;top:0;left:0;height:100%;width:100%}.monaco-component.multiDiffEditor>div.placeholder{visibility:hidden;display:grid;place-items:center;place-content:center}.monaco-component.multiDiffEditor>div.placeholder.visible{visibility:visible}.monaco-component.multiDiffEditor .active{--vscode-multiDiffEditor-border: var(--vscode-focusBorder)}.monaco-component.multiDiffEditor .multiDiffEntry{display:flex;flex-direction:column;flex:1;overflow:hidden}.monaco-component.multiDiffEditor .multiDiffEntry .collapse-button{margin:0 5px;cursor:pointer}.monaco-component.multiDiffEditor .multiDiffEntry .collapse-button a{display:block}.monaco-component.multiDiffEditor .multiDiffEntry .header{z-index:1000;background:var(--vscode-editor-background)}.monaco-component.multiDiffEditor .multiDiffEntry .header:not(.collapsed) .header-content{border-bottom:1px solid var(--vscode-sideBarSectionHeader-border)}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content{margin:8px 0 0;padding:4px 5px;border-top:1px solid var(--vscode-multiDiffEditor-border);display:flex;align-items:center;color:var(--vscode-foreground);background:var(--vscode-multiDiffEditor-headerBackground)}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content.shadow{box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path{display:flex;flex:1;min-width:0}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .title{font-size:14px;line-height:22px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .title.original{flex:1;min-width:0;text-overflow:ellipsis}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .status{font-weight:600;opacity:.75;margin:0 10px;line-height:22px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .actions{padding:0 8px}.monaco-component.multiDiffEditor .multiDiffEntry .editorParent{flex:1;display:flex;flex-direction:column;border-bottom:1px solid var(--vscode-multiDiffEditor-border);overflow:hidden}.monaco-component.multiDiffEditor .multiDiffEntry .editorContainer{flex:1}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .peekview-widget .head{box-sizing:border-box;display:flex;justify-content:space-between;flex-wrap:nowrap}.monaco-editor .peekview-widget .head .peekview-title{display:flex;align-items:baseline;font-size:13px;margin-left:20px;min-width:0;text-overflow:ellipsis;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title.clickable{cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:.9em;margin-left:.5em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monaco-editor .peekview-widget .head .peekview-title .dirname,.monaco-editor .peekview-widget .head .peekview-title .filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px;align-self:center}.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon{color:inherit!important}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px;background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-lineForeground)}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:inline-flex;width:100%;height:100%;color:var(--vscode-peekViewResult-fileForeground)}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground)!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight{background-color:var(--vscode-peekViewResult-matchHighlightBackground)}.monaco-editor .reference-zone-widget .preview .reference-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .reference-zone-widget .preview .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight{border:1px dotted var(--vscode-contrastActiveBorder, transparent);box-sizing:border-box}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px;z-index:10000}.monaco-editor .monaco-editor-overlaymessage.below{padding-bottom:0;padding-top:8px;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{animation:fadeIn .15s ease-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{animation:fadeOut .1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:2px 4px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-inputValidation-infoBorder);border-radius:3px}.monaco-editor .monaco-editor-overlaymessage .message p{margin-block:0px}.monaco-editor .monaco-editor-overlaymessage .message a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-editor-overlaymessage .message a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor.hc-black .monaco-editor-overlaymessage .message,.monaco-editor.hc-light .monaco-editor-overlaymessage .message{border-width:2px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0!important;height:0!important;border-color:transparent;border-style:solid;z-index:1000;border-width:8px;position:absolute;left:2px}.monaco-editor .monaco-editor-overlaymessage .anchor.top{border-bottom-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage .anchor.below{border-top-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top,.monaco-editor .monaco-editor-overlaymessage.below .anchor.below{display:none}.monaco-editor .monaco-editor-overlaymessage.below .anchor.top{display:inherit;top:-8px}.monaco-editor .inlineSuggestionsHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineSuggestionsHints a,.monaco-editor .inlineSuggestionsHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineSuggestionsHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a{display:flex;min-width:19px;justify-content:center}.monaco-editor .inlineSuggestionStatusBarItemLabel{margin-right:2px}.colorpicker-widget{height:190px;user-select:none;-webkit-user-select:none}.colorpicker-color-decoration,.hc-light .colorpicker-color-decoration{border:solid .1em #000;box-sizing:border-box;margin:.1em .2em 0;width:.8em;height:.8em;line-height:.8em;display:inline-block;cursor:pointer}.hc-black .colorpicker-color-decoration,.vs-dark .colorpicker-color-decoration{border:solid .1em #eee}.colorpicker-header{display:flex;height:24px;position:relative;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-header .picked-color{width:240px;display:flex;align-items:center;justify-content:center;line-height:24px;cursor:pointer;color:#fff;flex:1;white-space:nowrap;overflow:hidden}.colorpicker-header .picked-color .picked-color-presentation{white-space:nowrap;margin-left:5px;margin-right:5px}.colorpicker-header .picked-color .codicon{color:inherit;font-size:14px}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.standalone-colorpicker{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header.standalone-colorpicker{border-bottom:none}.colorpicker-header .close-button{cursor:pointer;background-color:var(--vscode-editorHoverWidget-background);border-left:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header .close-button-inner-div{width:100%;height:100%;text-align:center}.colorpicker-header .close-button-inner-div:hover{background-color:var(--vscode-toolbar-hoverBackground)}.colorpicker-header .close-icon{padding:3px}.colorpicker-body{display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid rgb(255,255,255);border-radius:100%;box-shadow:0 0 2px #000c;position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .standalone-strip{width:25px;height:122px}.colorpicker-body .hue-strip{position:relative;margin-left:8px;cursor:grab;background:linear-gradient(to bottom,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:grab;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;box-sizing:border-box;border:1px solid rgba(255,255,255,.71);box-shadow:0 0 1px #000000d9}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.colorpicker-body .standalone-strip .standalone-overlay{height:122px;pointer-events:none}.standalone-colorpicker-body{display:block;border:1px solid transparent;border-bottom:1px solid var(--vscode-editorHoverWidget-border);overflow:hidden}.colorpicker-body .insert-button{position:absolute;height:20px;width:58px;padding:0;right:8px;bottom:8px;background:var(--vscode-button-background);color:var(--vscode-button-foreground);border-radius:2px;border:none;cursor:pointer}.colorpicker-body .insert-button:hover{background:var(--vscode-button-hoverBackground)}.monaco-editor .hoverHighlight{background-color:var(--vscode-editor-hoverHighlightBackground)}.monaco-editor .monaco-hover-content{padding-right:2px;padding-bottom:2px;box-sizing:border-box}.monaco-editor .monaco-hover{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px}.monaco-editor .monaco-hover a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .monaco-hover .hover-row{display:flex}.monaco-editor .monaco-hover .hover-row .hover-row-contents{min-width:0;display:flex;flex-direction:column}.monaco-editor .monaco-hover .hover-row .verbosity-actions{display:flex;flex-direction:column;padding-left:5px;padding-right:5px;justify-content:end;border-right:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon{cursor:pointer;font-size:11px}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon.enabled{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon.disabled{opacity:.6}.monaco-editor .monaco-hover .hover-row .actions{background-color:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-editor .monaco-hover code{background-color:var(--vscode-textCodeBlock-background)}@font-face{font-family:codicon;font-display:block;src:url(./codicon-DCmgc-ay.ttf) format("truetype")}.codicon[class*=codicon-]{font: 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none}.codicon-wrench-subaction{opacity:.5}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin,.codicon-notebook-state-executing.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:.4}.codicon-loading,.codicon-tree-item-loading:before{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.monaco-editor .codicon.codicon-symbol-array,.monaco-workbench .codicon.codicon-symbol-array{color:var(--vscode-symbolIcon-arrayForeground)}.monaco-editor .codicon.codicon-symbol-boolean,.monaco-workbench .codicon.codicon-symbol-boolean{color:var(--vscode-symbolIcon-booleanForeground)}.monaco-editor .codicon.codicon-symbol-class,.monaco-workbench .codicon.codicon-symbol-class{color:var(--vscode-symbolIcon-classForeground)}.monaco-editor .codicon.codicon-symbol-method,.monaco-workbench .codicon.codicon-symbol-method{color:var(--vscode-symbolIcon-methodForeground)}.monaco-editor .codicon.codicon-symbol-color,.monaco-workbench .codicon.codicon-symbol-color{color:var(--vscode-symbolIcon-colorForeground)}.monaco-editor .codicon.codicon-symbol-constant,.monaco-workbench .codicon.codicon-symbol-constant{color:var(--vscode-symbolIcon-constantForeground)}.monaco-editor .codicon.codicon-symbol-constructor,.monaco-workbench .codicon.codicon-symbol-constructor{color:var(--vscode-symbolIcon-constructorForeground)}.monaco-editor .codicon.codicon-symbol-value,.monaco-workbench .codicon.codicon-symbol-value,.monaco-editor .codicon.codicon-symbol-enum,.monaco-workbench .codicon.codicon-symbol-enum{color:var(--vscode-symbolIcon-enumeratorForeground)}.monaco-editor .codicon.codicon-symbol-enum-member,.monaco-workbench .codicon.codicon-symbol-enum-member{color:var(--vscode-symbolIcon-enumeratorMemberForeground)}.monaco-editor .codicon.codicon-symbol-event,.monaco-workbench .codicon.codicon-symbol-event{color:var(--vscode-symbolIcon-eventForeground)}.monaco-editor .codicon.codicon-symbol-field,.monaco-workbench .codicon.codicon-symbol-field{color:var(--vscode-symbolIcon-fieldForeground)}.monaco-editor .codicon.codicon-symbol-file,.monaco-workbench .codicon.codicon-symbol-file{color:var(--vscode-symbolIcon-fileForeground)}.monaco-editor .codicon.codicon-symbol-folder,.monaco-workbench .codicon.codicon-symbol-folder{color:var(--vscode-symbolIcon-folderForeground)}.monaco-editor .codicon.codicon-symbol-function,.monaco-workbench .codicon.codicon-symbol-function{color:var(--vscode-symbolIcon-functionForeground)}.monaco-editor .codicon.codicon-symbol-interface,.monaco-workbench .codicon.codicon-symbol-interface{color:var(--vscode-symbolIcon-interfaceForeground)}.monaco-editor .codicon.codicon-symbol-key,.monaco-workbench .codicon.codicon-symbol-key{color:var(--vscode-symbolIcon-keyForeground)}.monaco-editor .codicon.codicon-symbol-keyword,.monaco-workbench .codicon.codicon-symbol-keyword{color:var(--vscode-symbolIcon-keywordForeground)}.monaco-editor .codicon.codicon-symbol-module,.monaco-workbench .codicon.codicon-symbol-module{color:var(--vscode-symbolIcon-moduleForeground)}.monaco-editor .codicon.codicon-symbol-namespace,.monaco-workbench .codicon.codicon-symbol-namespace{color:var(--vscode-symbolIcon-namespaceForeground)}.monaco-editor .codicon.codicon-symbol-null,.monaco-workbench .codicon.codicon-symbol-null{color:var(--vscode-symbolIcon-nullForeground)}.monaco-editor .codicon.codicon-symbol-number,.monaco-workbench .codicon.codicon-symbol-number{color:var(--vscode-symbolIcon-numberForeground)}.monaco-editor .codicon.codicon-symbol-object,.monaco-workbench .codicon.codicon-symbol-object{color:var(--vscode-symbolIcon-objectForeground)}.monaco-editor .codicon.codicon-symbol-operator,.monaco-workbench .codicon.codicon-symbol-operator{color:var(--vscode-symbolIcon-operatorForeground)}.monaco-editor .codicon.codicon-symbol-package,.monaco-workbench .codicon.codicon-symbol-package{color:var(--vscode-symbolIcon-packageForeground)}.monaco-editor .codicon.codicon-symbol-property,.monaco-workbench .codicon.codicon-symbol-property{color:var(--vscode-symbolIcon-propertyForeground)}.monaco-editor .codicon.codicon-symbol-reference,.monaco-workbench .codicon.codicon-symbol-reference{color:var(--vscode-symbolIcon-referenceForeground)}.monaco-editor .codicon.codicon-symbol-snippet,.monaco-workbench .codicon.codicon-symbol-snippet{color:var(--vscode-symbolIcon-snippetForeground)}.monaco-editor .codicon.codicon-symbol-string,.monaco-workbench .codicon.codicon-symbol-string{color:var(--vscode-symbolIcon-stringForeground)}.monaco-editor .codicon.codicon-symbol-struct,.monaco-workbench .codicon.codicon-symbol-struct{color:var(--vscode-symbolIcon-structForeground)}.monaco-editor .codicon.codicon-symbol-text,.monaco-workbench .codicon.codicon-symbol-text{color:var(--vscode-symbolIcon-textForeground)}.monaco-editor .codicon.codicon-symbol-type-parameter,.monaco-workbench .codicon.codicon-symbol-type-parameter{color:var(--vscode-symbolIcon-typeParameterForeground)}.monaco-editor .codicon.codicon-symbol-unit,.monaco-workbench .codicon.codicon-symbol-unit{color:var(--vscode-symbolIcon-unitForeground)}.monaco-editor .codicon.codicon-symbol-variable,.monaco-workbench .codicon.codicon-symbol-variable{color:var(--vscode-symbolIcon-variableForeground)}.monaco-editor .lightBulbWidget{display:flex;align-items:center;justify-content:center}.monaco-editor .lightBulbWidget:hover{cursor:pointer}.monaco-editor .lightBulbWidget.codicon-light-bulb,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle-autofix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .lightBulbWidget.codicon-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.monaco-editor .lightBulbWidget:before{position:relative;z-index:2}.monaco-editor .lightBulbWidget:after{position:absolute;top:0;left:0;content:"";display:block;width:100%;height:100%;opacity:.3;z-index:1}.monaco-editor .glyph-margin-widgets .cgmr[class*=codicon-gutter-lightbulb]{display:block;cursor:pointer}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb,.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-auto-fix,.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-aifix-auto-fix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.action-widget{font-size:13px;min-width:160px;max-width:80vw;z-index:40;display:block;width:100%;border:1px solid var(--vscode-editorWidget-border)!important;border-radius:5px;background-color:var(--vscode-editorActionList-background);color:var(--vscode-editorActionList-foreground);padding:4px;box-shadow:0 2px 8px var(--vscode-widget-shadow)}.context-view-block{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:-1}.context-view-pointerBlock{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:2}.action-widget .monaco-list{user-select:none;-webkit-user-select:none;border:none!important;border-width:0!important}.action-widget .monaco-list:focus:before{outline:0!important}.action-widget .monaco-list .monaco-scrollable-element{overflow:visible}.action-widget .monaco-list .monaco-list-row{padding:0 10px;white-space:nowrap;cursor:pointer;touch-action:none;width:100%;border-radius:4px}.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled){background-color:var(--vscode-editorActionList-focusBackground)!important;color:var(--vscode-editorActionList-focusForeground);outline:1px solid var(--vscode-menu-selectionBorder, transparent);outline-offset:-1px}.action-widget .monaco-list-row.group-header{color:var(--vscode-descriptionForeground)!important;font-weight:600;font-size:12px}.action-widget .monaco-list-row.group-header:not(:first-of-type){margin-top:2px}.action-widget .monaco-list .group-header,.action-widget .monaco-list .option-disabled,.action-widget .monaco-list .option-disabled:before,.action-widget .monaco-list .option-disabled .focused,.action-widget .monaco-list .option-disabled .focused:before{cursor:default!important;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background-color:transparent!important;outline:0 solid!important}.action-widget .monaco-list-row.action{display:flex;gap:8px;align-items:center}.action-widget .monaco-list-row.action.option-disabled,.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,.action-widget .monaco-list-row.action.option-disabled .codicon,.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled{color:var(--vscode-disabledForeground)}.action-widget .monaco-list-row.action:not(.option-disabled) .codicon{color:inherit}.action-widget .monaco-list-row.action .title{flex:1;overflow:hidden;text-overflow:ellipsis}.action-widget .monaco-list-row.action .monaco-keybinding>.monaco-keybinding-key{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow)}.action-widget .action-widget-action-bar{background-color:var(--vscode-editorActionList-background);border-top:1px solid var(--vscode-editorHoverWidget-border);margin-top:2px}.action-widget .action-widget-action-bar:before{display:block;content:"";width:100%}.action-widget .action-widget-action-bar .actions-container{padding:3px 8px 0}.action-widget-action-bar .action-label{color:var(--vscode-textLink-activeForeground);font-size:12px;line-height:22px;padding:0;pointer-events:all}.action-widget-action-bar .action-item{margin-right:16px;pointer-events:none}.action-widget-action-bar .action-label:hover{background-color:transparent!important}.monaco-action-bar .actions-container.highlight-toggled .action-label.checked{background:var(--vscode-actionBar-toggledBackground)!important}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;user-select:text;-webkit-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:flex;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-activeForeground)}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer;color:var(--vscode-textLink-activeForeground)}.monaco-editor .zone-widget .codicon.codicon-error,.markers-panel .marker-icon.error,.markers-panel .marker-icon .codicon.codicon-error,.text-search-provider-messages .providerMessage .codicon.codicon-error,.extensions-viewlet>.extensions .codicon.codicon-error,.extension-editor .codicon.codicon-error,.preferences-editor .codicon.codicon-error{color:var(--vscode-problemsErrorIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-warning,.markers-panel .marker-icon.warning,.markers-panel .marker-icon .codicon.codicon-warning,.text-search-provider-messages .providerMessage .codicon.codicon-warning,.extensions-viewlet>.extensions .codicon.codicon-warning,.extension-editor .codicon.codicon-warning,.preferences-editor .codicon.codicon-warning{color:var(--vscode-problemsWarningIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-info,.markers-panel .marker-icon.info,.markers-panel .marker-icon .codicon.codicon-info,.text-search-provider-messages .providerMessage .codicon.codicon-info,.extensions-viewlet>.extensions .codicon.codicon-info,.extension-editor .codicon.codicon-info,.preferences-editor .codicon.codicon-info{color:var(--vscode-problemsInfoIcon-foreground)}.monaco-editor .suggest-preview-additional-widget{white-space:nowrap}.monaco-editor .suggest-preview-additional-widget .content-spacer{color:transparent;white-space:pre}.monaco-editor .suggest-preview-additional-widget .button{display:inline-block;cursor:pointer;text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-hidden{opacity:0;font-size:0}.monaco-editor .ghost-text-decoration,.monaco-editor .suggest-preview-text .ghost-text{font-style:italic}.monaco-editor .ghost-text-decoration,.monaco-editor .ghost-text-decoration-preview,.monaco-editor .suggest-preview-text .ghost-text{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.monaco-editor .snippet-placeholder{min-width:2px;outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetTabstopHighlightBorder, transparent)}.monaco-editor .finish-snippet-placeholder{outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetFinalTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetFinalTabstopHighlightBorder, transparent)}.monaco-editor .suggest-widget{width:430px;z-index:40;display:flex;flex-direction:column;border-radius:3px}.monaco-editor .suggest-widget.message{flex-direction:row;align-items:center}.monaco-editor .suggest-widget,.monaco-editor .suggest-details{flex:0 1 auto;width:100%;border-style:solid;border-width:1px;border-color:var(--vscode-editorSuggestWidget-border);background-color:var(--vscode-editorSuggestWidget-background)}.monaco-editor.hc-black .suggest-widget,.monaco-editor.hc-black .suggest-details,.monaco-editor.hc-light .suggest-widget,.monaco-editor.hc-light .suggest-details{border-width:2px}.monaco-editor .suggest-widget .suggest-status-bar{box-sizing:border-box;display:none;flex-flow:row nowrap;justify-content:space-between;width:100%;font-size:80%;padding:0 4px;border-top:1px solid var(--vscode-editorSuggestWidget-border);overflow:hidden}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{display:flex}.monaco-editor .suggest-widget .suggest-status-bar .left{padding-right:8px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label{color:var(--vscode-editorSuggestWidgetStatus-foreground)}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label{margin-right:0}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label:after{content:", ";margin-right:.3em}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%;width:100%}.monaco-editor .suggest-widget .monaco-list{user-select:none;-webkit-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:flex;-mox-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused{color:var(--vscode-editorSuggestWidget-selectedForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon{color:var(--vscode-editorSuggestWidget-selectedIconForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused)>.contents>.main .monaco-icon-label{color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-highlightForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-focusHighlightForeground)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:6px;right:2px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label{overflow:hidden;text-overflow:ellipsis;opacity:.6}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:12px;opacity:.4;font-size:85%;line-height:initial;text-overflow:ellipsis;overflow:hidden;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{font-size:85%;margin-left:1.1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label)>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-shrink:1;flex-grow:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:0}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.left>.monaco-icon-label{max-width:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;flex-shrink:4;max-width:70%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:inline-block}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:flex;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 .3em;border:.1em solid #000;width:.7em;height:.7em;display:inline-block}.monaco-editor .suggest-details-container{z-index:41}.monaco-editor .suggest-details{display:flex;flex-direction:column;cursor:default;color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-details.focused{border-color:var(--vscode-focusBorder)}.monaco-editor .suggest-details a{color:var(--vscode-textLink-foreground)}.monaco-editor .suggest-details a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .suggest-details code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .suggest-details.no-docs{display:none}.monaco-editor .suggest-details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-details>.monaco-scrollable-element>.body{box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type{flex:2;overflow:hidden;text-overflow:ellipsis;opacity:.7;white-space:pre;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type.auto-wrap{white-space:normal;word-break:break-all}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-details.no-type>.monaco-scrollable-element>.body>.docs{margin-right:24px;overflow:hidden}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:initial;min-height:calc(1rem + 8px)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .monaco-tokenized-source{white-space:pre}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .codicon{vertical-align:sub}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-details ul,.monaco-editor .suggest-details ol{padding-left:20px}.monaco-editor .suggest-details p code{font-family:var(--monaco-monospace-font)}.monaco-link{color:var(--vscode-textLink-foreground)}.monaco-link:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .sticky-widget{overflow:hidden}.monaco-editor .sticky-widget-line-numbers{float:left;background-color:inherit}.monaco-editor .sticky-widget-lines-scrollable{display:inline-block;position:absolute;overflow:hidden;width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit}.monaco-editor .sticky-widget-lines{position:absolute;background-color:inherit}.monaco-editor .sticky-line-number,.monaco-editor .sticky-line-content{color:var(--vscode-editorLineNumber-foreground);white-space:nowrap;display:inline-block;position:absolute;background-color:inherit}.monaco-editor .sticky-line-number .codicon-folding-expanded,.monaco-editor .sticky-line-number .codicon-folding-collapsed{float:right;transition:var(--vscode-editorStickyScroll-foldingOpacityTransition)}.monaco-editor .sticky-line-content{width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit;white-space:nowrap}.monaco-editor .sticky-line-number-inner{display:inline-block;text-align:right}.monaco-editor .sticky-widget{border-bottom:1px solid var(--vscode-editorStickyScroll-border)}.monaco-editor .sticky-line-content:hover{background-color:var(--vscode-editorStickyScrollHover-background);cursor:pointer}.monaco-editor .sticky-widget{width:100%;box-shadow:var(--vscode-editorStickyScroll-shadow) 0 4px 2px -2px;z-index:4;background-color:var(--vscode-editorStickyScroll-background);right:initial!important}.monaco-editor .sticky-widget.peek{background-color:var(--vscode-peekViewEditorStickyScroll-background)}.monaco-editor div.inline-edits-widget{--widget-color: var(--vscode-notifications-background)}.monaco-editor div.inline-edits-widget .promptEditor .monaco-editor{--vscode-editor-placeholder-foreground: var(--vscode-editorGhostText-foreground)}.monaco-editor div.inline-edits-widget .toolbar,.monaco-editor div.inline-edits-widget .promptEditor{opacity:0;transition:opacity .2s ease-in-out}:is(.monaco-editor div.inline-edits-widget:hover,.monaco-editor div.inline-edits-widget.focused) .toolbar,:is(.monaco-editor div.inline-edits-widget:hover,.monaco-editor div.inline-edits-widget.focused) .promptEditor{opacity:1}.monaco-editor div.inline-edits-widget .preview .monaco-editor{--vscode-editor-background: var(--widget-color)}.monaco-editor div.inline-edits-widget .preview .monaco-editor .mtk1{color:var(--vscode-editorGhostText-foreground)}.monaco-editor div.inline-edits-widget .preview .monaco-editor .view-overlays .current-line-exact,.monaco-editor div.inline-edits-widget .preview .monaco-editor .current-line-margin{border:none}.monaco-editor div.inline-edits-widget svg .gradient-start{stop-color:var(--vscode-editor-background)}.monaco-editor div.inline-edits-widget svg .gradient-stop{stop-color:var(--widget-color)}.monaco-editor .inlineEditSideBySide{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);white-space:pre}.monaco-editor .inlineEditHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineEditHints a,.monaco-editor .inlineEditHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineEditHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineEditHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineEditStatusBarItemLabel{margin-right:2px}.monaco-editor .inline-edit-remove{background-color:var(--vscode-editorGhostText-background);font-style:italic}.monaco-editor .inline-edit-hidden{opacity:0;font-size:0}.monaco-editor .inline-edit-decoration,.monaco-editor .suggest-preview-text .inline-edit{font-style:italic}.monaco-editor .inline-completion-text-to-replace{text-decoration:underline;text-underline-position:under}.monaco-editor .inline-edit-decoration,.monaco-editor .inline-edit-decoration-preview,.monaco-editor .suggest-preview-text .inline-edit{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.post-edit-widget{box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:1px solid var(--vscode-widget-border, transparent);border-radius:4px;background-color:var(--vscode-editorWidget-background);overflow:hidden}.post-edit-widget .monaco-button{padding:2px;border:none;border-radius:0}.post-edit-widget .monaco-button:hover{background-color:var(--vscode-button-secondaryHoverBackground)!important}.post-edit-widget .monaco-button .codicon{margin:0}.editor-banner{box-sizing:border-box;cursor:default;width:100%;font-size:12px;display:flex;overflow:visible;height:26px;background:var(--vscode-banner-background)}.editor-banner .icon-container{display:flex;flex-shrink:0;align-items:center;padding:0 6px 0 10px}.editor-banner .icon-container.custom-icon{background-repeat:no-repeat;background-position:center center;background-size:16px;width:16px;padding:0;margin:0 6px 0 10px}.editor-banner .message-container{display:flex;align-items:center;line-height:26px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-banner .message-container p{margin-block-start:0;margin-block-end:0}.editor-banner .message-actions-container{flex-grow:1;flex-shrink:0;line-height:26px;margin:0 4px}.editor-banner .message-actions-container a.monaco-button{width:inherit;margin:2px 8px;padding:0 12px}.editor-banner .message-actions-container a{padding:3px;margin-left:12px;text-decoration:underline}.editor-banner .action-container{padding:0 10px 0 6px}.editor-banner{background-color:var(--vscode-banner-background)}.editor-banner,.editor-banner .action-container .codicon,.editor-banner .message-actions-container .monaco-link{color:var(--vscode-banner-foreground)}.editor-banner .icon-container .codicon{color:var(--vscode-banner-iconForeground)}.monaco-editor .rename-box{z-index:100;color:inherit;border-radius:4px}.monaco-editor .rename-box.preview{padding:4px 4px 0}.monaco-editor .rename-box .rename-input-with-button{padding:3px;border-radius:2px;width:calc(100% - 8px)}.monaco-editor .rename-box .rename-input{width:calc(100% - 8px);padding:0}.monaco-editor .rename-box .rename-input:focus{outline:none}.monaco-editor .rename-box .rename-suggestions-button{display:flex;align-items:center;padding:3px;background-color:transparent;border:none;border-radius:5px;cursor:pointer}.monaco-editor .rename-box .rename-suggestions-button:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-editor .rename-box .rename-candidate-list-container .monaco-list-row{border-radius:2px}.monaco-editor .rename-box .rename-label{display:none;opacity:.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .parameter-hints-widget{z-index:39;display:flex;flex-direction:column;line-height:1.5em;cursor:default;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.hc-black .monaco-editor .parameter-hints-widget,.hc-light .monaco-editor .parameter-hints-widget{border-width:2px}.monaco-editor .parameter-hints-widget>.phwrapper{max-width:440px;display:flex;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.multiple .body:before{content:"";display:block;height:100%;position:absolute;opacity:.5;border-left:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .monaco-scrollable-element,.monaco-editor .parameter-hints-widget .body{display:flex;flex:1;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px;position:relative}.monaco-editor .parameter-hints-widget .signature.has-docs:after{content:"";display:block;position:absolute;left:0;width:100%;padding-top:4px;opacity:.5;border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget .code{font-family:var(--vscode-parameterHintsWidget-editorFontFamily),var(--vscode-parameterHintsWidget-editorFontFamilyDefault)}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs a{color:var(--vscode-textLink-foreground)}.monaco-editor .parameter-hints-widget .docs a:hover{color:var(--vscode-textLink-activeForeground);cursor:pointer}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:initial}.monaco-editor .parameter-hints-widget .docs code{font-family:var(--monaco-monospace-font);border-radius:3px;padding:0 .4em;background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source,.monaco-editor .parameter-hints-widget .docs .code{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .controls{display:none;flex-direction:column;align-items:center;min-width:22px;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{color:var(--vscode-editorHoverWidget-highlightForeground);font-weight:700}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:.5em}.monaco-editor .focused .selectionHighlight{background-color:var(--vscode-editor-selectionHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-selectionHighlightBorder)}.monaco-editor.hc-black .focused .selectionHighlight,.monaco-editor.hc-light .focused .selectionHighlight{border-style:dotted}.monaco-editor .wordHighlight{background-color:var(--vscode-editor-wordHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightBorder)}.monaco-editor.hc-black .wordHighlight,.monaco-editor.hc-light .wordHighlight{border-style:dotted}.monaco-editor .wordHighlightStrong{background-color:var(--vscode-editor-wordHighlightStrongBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightStrongBorder)}.monaco-editor.hc-black .wordHighlightStrong,.monaco-editor.hc-light .wordHighlightStrong{border-style:dotted}.monaco-editor .wordHighlightText{background-color:var(--vscode-editor-wordHighlightTextBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightTextBorder)}.monaco-editor.hc-black .wordHighlightText,.monaco-editor.hc-light .wordHighlightText{border-style:dotted}.monaco-editor .find-widget{position:absolute;z-index:35;height:33px;overflow:hidden;line-height:19px;transition:transform .2s linear;padding:0 4px;box-sizing:border-box;transform:translateY(calc(-100% - 10px));box-shadow:0 0 8px 2px var(--vscode-widget-shadow);color:var(--vscode-editorWidget-foreground);border-left:1px solid var(--vscode-widget-border);border-right:1px solid var(--vscode-widget-border);border-bottom:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px;background-color:var(--vscode-editorWidget-background)}.monaco-workbench.reduce-motion .monaco-editor .find-widget{transition:transform 0ms linear}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px;outline-color:var(--vscode-focusBorder)}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:3px 25px 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:flex;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{display:flex;flex:initial;margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button{width:16px;height:16px;padding:3px;border-radius:5px;flex:initial;margin-left:3px;background-position:center center;background-repeat:no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}.monaco-editor .find-widget .codicon-find-selection{width:22px;height:22px;padding:3px;border-radius:5px}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;border-radius:0;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{color:var(--vscode-disabledForeground);cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:flex;vertical-align:middle;flex:auto;flex-grow:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .find-widget.no-results .matchesCount{color:var(--vscode-errorForeground)}.monaco-editor .findMatch{animation-duration:0;animation-name:inherit!important;background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor .currentFindMatch{background-color:var(--vscode-editor-findMatchBackground);border:2px solid var(--vscode-editor-findMatchBorder);padding:1px;box-sizing:border-box}.monaco-editor .findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor .find-widget .monaco-sash{left:0!important;background-color:var(--vscode-editorWidget-resizeBorder, var(--vscode-editorWidget-border))}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-editor .find-widget .button:not(.disabled):hover,.monaco-editor .find-widget .codicon-find-selection:hover{background-color:var(--vscode-toolbar-hoverBackground)!important}.monaco-editor.findMatch{background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor.currentFindMatch{background-color:var(--vscode-editor-findMatchBackground)}.monaco-editor.findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor.findMatch{background-color:var(--vscode-editorWidget-background)}.monaco-editor .find-widget>.button.codicon-widget-close{position:absolute;top:5px;right:4px}.monaco-editor .findOptionsWidget{background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground);box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:2px solid var(--vscode-contrastBorder)}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis;white-space:nowrap;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize);padding-right:calc(var(--vscode-editorCodeLens-fontSize)*.5);font-feature-settings:var(--vscode-editorCodeLens-fontFeatureSettings);font-family:var(--vscode-editorCodeLens-fontFamily),var(--vscode-editorCodeLens-fontFamilyDefault)}.monaco-editor .codelens-decoration>span,.monaco-editor .codelens-decoration>a{user-select:none;-webkit-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration>a:hover .codicon{color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor!important;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize)}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{animation:fadein .1s linear}.monaco-editor .unicode-highlight{border:1px solid var(--vscode-editorUnicodeHighlight-border);background-color:var(--vscode-editorUnicodeHighlight-background);box-sizing:border-box}.monaco-editor{--vscode-editor-placeholder-foreground: var(--vscode-editorGhostText-foreground)}.monaco-editor .editorPlaceholder{top:0;position:absolute;overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap;pointer-events:none;color:var(--vscode-editor-placeholder-foreground)}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .linked-editing-decoration{background-color:var(--vscode-editor-linkedEditingBackground);min-width:1px}.monaco-editor.vs .valueSetReplacement{outline:solid 2px var(--vscode-editorBracketMatch-border)}.inline-editor-progress-decoration{display:inline-block;width:1em;height:1em}.inline-progress-widget{display:flex!important;justify-content:center;align-items:center}.inline-progress-widget .icon{font-size:80%!important}.inline-progress-widget:hover .icon{font-size:90%!important;animation:none}.inline-progress-widget:hover .icon:before{content:var(--vscode-icon-x-content);font-family:var(--vscode-icon-x-font-family)}.monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-editor .margin-view-overlays .codicon-folding-collapsed{cursor:pointer;opacity:0;transition:opacity .5s;display:flex;align-items:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-collapsed{transition:initial}.monaco-editor .margin-view-overlays:hover .codicon,.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon.codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons{opacity:1}.monaco-editor .inline-folded:after{color:var(--vscode-editor-foldPlaceholderForeground);margin:.1em .2em 0;content:"⋯";display:inline;line-height:1em;cursor:pointer}.monaco-editor .folded-background{background-color:var(--vscode-editor-foldBackground)}.monaco-editor .cldr.codicon.codicon-folding-expanded,.monaco-editor .cldr.codicon.codicon-folding-collapsed,.monaco-editor .cldr.codicon.codicon-folding-manual-expanded,.monaco-editor .cldr.codicon.codicon-folding-manual-collapsed{color:var(--vscode-editorGutter-foldingControlForeground)!important}.monaco-editor.vs .dnd-target,.monaco-editor.hc-light .dnd-target{border-right:2px dotted black;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #AEAFAD;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines,.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.hc-light.mac.mouse-default .view-lines{cursor:default}.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines,.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.hc-light.mac.mouse-copy .view-lines{cursor:copy}.monaco-editor .bracket-match{box-sizing:border-box;background-color:var(--vscode-editorBracketMatch-background);border:1px solid var(--vscode-editorBracketMatch-border)}.monaco-editor .selection-anchor{background-color:#007acc;width:2px!important}.monaco-editor .tokens-inspect-widget{z-index:50;user-select:text;-webkit-user-select:text;padding:10px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor.hc-black .tokens-inspect-widget,.monaco-editor.hc-light .tokens-inspect-widget{border-width:2px}.monaco-editor .tokens-inspect-widget .tokens-inspect-separator{height:1px;border:0;background-color:var(--vscode-editorHoverWidget-border)}.monaco-editor .tokens-inspect-widget .tm-token{font-family:var(--monaco-monospace-font)}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:var(--monaco-monospace-font);text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:var(--monaco-monospace-font)}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjNDI0MjQyIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #F6F6F6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjQzVDNUM1Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #252526} diff --git a/deploy/dac/assets/monaco-editor-BSmz0_Ko.js b/deploy/dac/assets/monaco-editor-BSmz0_Ko.js deleted file mode 100644 index 6833df7d..00000000 --- a/deploy/dac/assets/monaco-editor-BSmz0_Ko.js +++ /dev/null @@ -1,676 +0,0 @@ -function Gs(o,e=0){return o[o.length-(1+e)]}function XB(o){if(o.length===0)throw new Error("Invalid tail call");return[o.slice(0,o.length-1),o[o.length-1]]}function li(o,e,t=(i,n)=>i===n){if(o===e)return!0;if(!o||!e||o.length!==e.length)return!1;for(let i=0,n=o.length;it(o[i],e))}function e6(o,e){let t=0,i=o-1;for(;t<=i;){const n=(t+i)/2|0,s=e(n);if(s<0)t=n+1;else if(s>0)i=n-1;else return n}return-(t+1)}function LL(o,e,t){if(o=o|0,o>=e.length)throw new TypeError("invalid index");const i=e[Math.floor(e.length*Math.random())],n=[],s=[],r=[];for(const a of e){const l=t(a,i);l<0?n.push(a):l>0?s.push(a):r.push(a)}return o!!e)}function RM(o){let e=0;for(let t=0;t0}function Eh(o,e=t=>t){const t=new Set;return o.filter(i=>{const n=e(i);return t.has(n)?!1:(t.add(n),!0)})}function xN(o,e){return o.length>0?o[0]:e}function Bn(o,e){let t=typeof e=="number"?o:0;typeof e=="number"?t=o:(t=0,e=o);const i=[];if(t<=e)for(let n=t;ne;n--)i.push(n);return i}function y0(o,e,t){const i=o.slice(0,e),n=o.slice(e);return i.concat(t,n)}function $y(o,e){const t=o.indexOf(e);t>-1&&(o.splice(t,1),o.unshift(e))}function bb(o,e){const t=o.indexOf(e);t>-1&&(o.splice(t,1),o.push(e))}function xL(o,e){for(const t of e)o.push(t)}function T5(o){return Array.isArray(o)?o:[o]}function i6(o,e,t){const i=M5(o,e),n=o.length,s=t.length;o.length=n+s;for(let r=n-1;r>=i;r--)o[r+s]=o[r];for(let r=0;r0}o.isGreaterThan=i;function n(s){return s===0}o.isNeitherLessOrGreaterThan=n,o.greaterThan=1,o.lessThan=-1,o.neitherLessOrGreaterThan=0})(Bp||(Bp={}));function rs(o,e){return(t,i)=>e(o(t),o(i))}function n6(...o){return(e,t)=>{for(const i of o){const n=i(e,t);if(!Bp.isNeitherLessOrGreaterThan(n))return n}return Bp.neitherLessOrGreaterThan}}const ia=(o,e)=>o-e,s6=(o,e)=>ia(o?1:0,e?1:0);function o6(o){return(e,t)=>-o(e,t)}class Ll{constructor(e){this.items=e,this.firstIdx=0,this.lastIdx=this.items.length-1}get length(){return this.lastIdx-this.firstIdx+1}takeWhile(e){let t=this.firstIdx;for(;t=0&&e(this.items[t]);)t--;const i=t===this.lastIdx?null:this.items.slice(t+1,this.lastIdx+1);return this.lastIdx=t,i}peek(){if(this.length!==0)return this.items[this.firstIdx]}dequeue(){const e=this.items[this.firstIdx];return this.firstIdx++,e}takeCount(e){const t=this.items.slice(this.firstIdx,this.firstIdx+e);return this.firstIdx+=e,t}}const pf=class pf{constructor(e){this.iterate=e}toArray(){const e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(e){return new pf(t=>this.iterate(i=>e(i)?t(i):!0))}map(e){return new pf(t=>this.iterate(i=>t(e(i))))}findLast(e){let t;return this.iterate(i=>(e(i)&&(t=i),!0)),t}findLastMaxBy(e){let t,i=!0;return this.iterate(n=>((i||Bp.isGreaterThan(e(n,t)))&&(i=!1,t=n),!0)),t}};pf.empty=new pf(e=>{});let Zd=pf;class eC{constructor(e){this._indexMap=e}static createSortPermutation(e,t){const i=Array.from(e.keys()).sort((n,s)=>t(e[n],e[s]));return new eC(i)}apply(e){return e.map((t,i)=>e[this._indexMap[i]])}inverse(){const e=this._indexMap.slice();for(let t=0;t"u"}function _l(o){return!xs(o)}function xs(o){return Es(o)||o===null}function ai(o,e){if(!o)throw new Error("Unexpected type")}function A5(o){if(xs(o))throw new Error("Assertion Failed: argument is undefined or null");return o}function tC(o){return typeof o=="function"}function a6(o,e){const t=Math.min(o.length,e.length);for(let i=0;i{e[t]=i&&typeof i=="object"?Ya(i):i}),e}function c6(o){if(!o||typeof o!="object")return o;const e=[o];for(;e.length>0;){const t=e.shift();Object.freeze(t);for(const i in t)if(P5.call(t,i)){const n=t[i];typeof n=="object"&&!Object.isFrozen(n)&&!r6(n)&&e.push(n)}}return o}const P5=Object.prototype.hasOwnProperty;function O5(o,e){return kL(o,e,new Set)}function kL(o,e,t){if(xs(o))return o;const i=e(o);if(typeof i<"u")return i;if(Array.isArray(o)){const n=[];for(const s of o)n.push(kL(s,e,t));return n}if(Oi(o)){if(t.has(o))throw new Error("Cannot clone recursive data-structure");t.add(o);const n={};for(const s in o)P5.call(o,s)&&(n[s]=kL(o[s],e,t));return t.delete(o),n}return o}function S0(o,e,t=!0){return Oi(o)?(Oi(e)&&Object.keys(e).forEach(i=>{i in o?t&&(Oi(o[i])&&Oi(e[i])?S0(o[i],e[i],t):o[i]=e[i]):o[i]=e[i]}),o):e}function as(o,e){if(o===e)return!0;if(o==null||e===null||e===void 0||typeof o!=typeof e||typeof o!="object"||Array.isArray(o)!==Array.isArray(e))return!1;let t,i;if(Array.isArray(o)){if(o.length!==e.length)return!1;for(t=0;tfunction(){const s=Array.prototype.slice.call(arguments,0);return e(n,s)},i={};for(const n of o)i[n]=t(n);return i}function F5(){return globalThis._VSCODE_NLS_MESSAGES}function kN(){return globalThis._VSCODE_NLS_LANGUAGE}const u6=kN()==="pseudo"||typeof document<"u"&&document.location&&document.location.hash.indexOf("pseudo=true")>=0;function iC(o,e){let t;return e.length===0?t=o:t=o.replace(/\{(\d+)\}/g,(i,n)=>{const s=n[0],r=e[s];let a=i;return typeof r=="string"?a=r:(typeof r=="number"||typeof r=="boolean"||r===void 0||r===null)&&(a=String(r)),a}),u6&&(t="["+t.replace(/[aouei]/g,"$&$&")+"]"),t}function m(o,e,...t){return iC(typeof o=="number"?B5(o,e):e,t)}function B5(o,e){const t=F5()?.[o];if(typeof t!="string"){if(typeof e=="string")return e;throw new Error(`!!! NLS MISSING: ${o} !!!`)}return t}function di(o,e,...t){let i;typeof o=="number"?i=B5(o,e):i=e;const n=iC(i,t);return{value:n,original:e===i?n:iC(e,t)}}const Gu="en";let nC=!1,sC=!1,v1=!1,W5=!1,DN=!1,IN=!1,H5=!1,Cb,Ky=Gu,OM=Gu,f6,Ba;const bl=globalThis;let Qs;typeof bl.vscode<"u"&&typeof bl.vscode.process<"u"?Qs=bl.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(Qs=process);const g6=typeof Qs?.versions?.electron=="string",m6=g6&&Qs?.type==="renderer";if(typeof Qs=="object"){nC=Qs.platform==="win32",sC=Qs.platform==="darwin",v1=Qs.platform==="linux",v1&&Qs.env.SNAP&&Qs.env.SNAP_REVISION,Qs.env.CI||Qs.env.BUILD_ARTIFACTSTAGINGDIRECTORY,Cb=Gu,Ky=Gu;const o=Qs.env.VSCODE_NLS_CONFIG;if(o)try{const e=JSON.parse(o);Cb=e.userLocale,OM=e.osLocale,Ky=e.resolvedLanguage||Gu,f6=e.languagePack?.translationsConfigFile}catch{}W5=!0}else typeof navigator=="object"&&!m6?(Ba=navigator.userAgent,nC=Ba.indexOf("Windows")>=0,sC=Ba.indexOf("Macintosh")>=0,IN=(Ba.indexOf("Macintosh")>=0||Ba.indexOf("iPad")>=0||Ba.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,v1=Ba.indexOf("Linux")>=0,H5=Ba?.indexOf("Mobi")>=0,DN=!0,Ky=kN()||Gu,Cb=navigator.language.toLowerCase(),OM=Cb):console.error("Unable to resolve platform.");const kn=nC,Ue=sC,Un=v1,oC=W5,Og=DN,p6=DN&&typeof bl.importScripts=="function",_6=p6?bl.origin:void 0,Tc=IN,V5=H5,da=Ba,b6=typeof bl.postMessage=="function"&&!bl.importScripts,z5=(()=>{if(b6){const o=[];bl.addEventListener("message",t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let i=0,n=o.length;i{const i=++e;o.push({id:i,callback:t}),bl.postMessage({vscodeScheduleAsyncWork:i},"*")}}return o=>setTimeout(o)})(),Ns=sC||IN?2:nC?1:3;let FM=!0,BM=!1;function C6(){if(!BM){BM=!0;const o=new Uint8Array(2);o[0]=1,o[1]=2,FM=new Uint16Array(o.buffer)[0]===513}return FM}const U5=!!(da&&da.indexOf("Chrome")>=0),v6=!!(da&&da.indexOf("Firefox")>=0),w6=!!(!U5&&da&&da.indexOf("Safari")>=0),y6=!!(da&&da.indexOf("Edg/")>=0),S6=!!(da&&da.indexOf("Android")>=0),Qi={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0,bracketPairColorizationOptions:{enabled:!0,independentColorPoolPerBracketType:!1}};var st;(function(o){function e(v){return v&&typeof v=="object"&&typeof v[Symbol.iterator]=="function"}o.is=e;const t=Object.freeze([]);function i(){return t}o.empty=i;function*n(v){yield v}o.single=n;function s(v){return e(v)?v:n(v)}o.wrap=s;function r(v){return v||t}o.from=r;function*a(v){for(let y=v.length-1;y>=0;y--)yield v[y]}o.reverse=a;function l(v){return!v||v[Symbol.iterator]().next().done===!0}o.isEmpty=l;function c(v){return v[Symbol.iterator]().next().value}o.first=c;function d(v,y){let x=0;for(const L of v)if(y(L,x++))return!0;return!1}o.some=d;function h(v,y){for(const x of v)if(y(x))return x}o.find=h;function*u(v,y){for(const x of v)y(x)&&(yield x)}o.filter=u;function*f(v,y){let x=0;for(const L of v)yield y(L,x++)}o.map=f;function*g(v,y){let x=0;for(const L of v)yield*y(L,x++)}o.flatMap=g;function*p(...v){for(const y of v)yield*y}o.concat=p;function _(v,y,x){let L=x;for(const E of v)L=y(L,E);return L}o.reduce=_;function*b(v,y,x=v.length){for(y<0&&(y+=v.length),x<0?x+=v.length:x>v.length&&(x=v.length);y{n||(n=!0,this._remove(i))}}shift(){if(this._first!==Ci.Undefined){const e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==Ci.Undefined){const e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==Ci.Undefined&&e.next!==Ci.Undefined){const t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===Ci.Undefined&&e.next===Ci.Undefined?(this._first=Ci.Undefined,this._last=Ci.Undefined):e.next===Ci.Undefined?(this._last=this._last.prev,this._last.next=Ci.Undefined):e.prev===Ci.Undefined&&(this._first=this._first.next,this._first.prev=Ci.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==Ci.Undefined;)yield e.element,e=e.next}}const $5="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";function L6(o=""){let e="(-?\\d*\\.\\d\\w*)|([^";for(const t of $5)o.indexOf(t)>=0||(e+="\\"+t);return e+="\\s]+)",new RegExp(e,"g")}const EN=L6();function NN(o){let e=EN;if(o&&o instanceof RegExp)if(o.global)e=o;else{let t="g";o.ignoreCase&&(t+="i"),o.multiline&&(t+="m"),o.unicode&&(t+="u"),e=new RegExp(o.source,t)}return e.lastIndex=0,e}const K5=new yn;K5.unshift({maxLen:1e3,windowSize:15,timeBudget:150});function Wp(o,e,t,i,n){if(e=NN(e),n||(n=st.first(K5)),t.length>n.maxLen){let c=o-n.maxLen/2;return c<0?c=0:i+=c,t=t.substring(c,o+n.maxLen/2),Wp(o,e,t,i,n)}const s=Date.now(),r=o-1-i;let a=-1,l=null;for(let c=1;!(Date.now()-s>=n.timeBudget);c++){const d=r-n.windowSize*c;e.lastIndex=Math.max(0,d);const h=x6(e,t,r,a);if(!h&&l||(l=h,d<=0))break;a=d}if(l){const c={word:l[0],startColumn:i+1+l.index,endColumn:i+1+l.index+l[0].length};return e.lastIndex=0,c}return null}function x6(o,e,t,i){let n;for(;n=o.exec(e);){const s=n.index||0;if(s<=t&&o.lastIndex>=t)return n;if(i>0&&s>i)return null}return null}const Ar=8;class j5{constructor(e){this._values=e}hasChanged(e){return this._values[e]}}class q5{constructor(){this.stableMinimapLayoutInput=null,this.stableFitMaxMinimapScale=0,this.stableFitRemainingWidth=0}}class Mt{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return L0(e,t)}compute(e,t,i){return i}}class $m{constructor(e,t){this.newValue=e,this.didChange=t}}function L0(o,e){if(typeof o!="object"||typeof e!="object"||!o||!e)return new $m(e,o!==e);if(Array.isArray(o)||Array.isArray(e)){const i=Array.isArray(o)&&Array.isArray(e)&&li(o,e);return new $m(e,!i)}let t=!1;for(const i in e)if(e.hasOwnProperty(i)){const n=L0(o[i],e[i]);n.didChange&&(o[i]=n.newValue,t=!0)}return new $m(o,t)}class B_{constructor(e){this.schema=void 0,this.id=e,this.name="_never_",this.defaultValue=void 0}applyUpdate(e,t){return L0(e,t)}validate(e){return this.defaultValue}}class Fg{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return L0(e,t)}validate(e){return typeof e>"u"?this.defaultValue:e}compute(e,t,i){return i}}function he(o,e){return typeof o>"u"?e:o==="false"?!1:!!o}class Je extends Fg{constructor(e,t,i,n=void 0){typeof n<"u"&&(n.type="boolean",n.default=i),super(e,t,i,n)}validate(e){return he(e,this.defaultValue)}}function dd(o,e,t,i){if(typeof o>"u")return e;let n=parseInt(o,10);return isNaN(n)?e:(n=Math.max(t,n),n=Math.min(i,n),n|0)}class pt extends Fg{static clampedInt(e,t,i,n){return dd(e,t,i,n)}constructor(e,t,i,n,s,r=void 0){typeof r<"u"&&(r.type="integer",r.default=i,r.minimum=n,r.maximum=s),super(e,t,i,r),this.minimum=n,this.maximum=s}validate(e){return pt.clampedInt(e,this.defaultValue,this.minimum,this.maximum)}}function k6(o,e,t,i){if(typeof o>"u")return e;const n=Ts.float(o,e);return Ts.clamp(n,t,i)}class Ts extends Fg{static clamp(e,t,i){return ei?i:e}static float(e,t){if(typeof e=="number")return e;if(typeof e>"u")return t;const i=parseFloat(e);return isNaN(i)?t:i}constructor(e,t,i,n,s){typeof s<"u"&&(s.type="number",s.default=i),super(e,t,i,s),this.validationFn=n}validate(e){return this.validationFn(Ts.float(e,this.defaultValue))}}class dn extends Fg{static string(e,t){return typeof e!="string"?t:e}constructor(e,t,i,n=void 0){typeof n<"u"&&(n.type="string",n.default=i),super(e,t,i,n)}validate(e){return dn.string(e,this.defaultValue)}}function Ht(o,e,t,i){return typeof o!="string"?e:i&&o in i?i[o]:t.indexOf(o)===-1?e:o}class Wt extends Fg{constructor(e,t,i,n,s=void 0){typeof s<"u"&&(s.type="string",s.enum=n,s.default=i),super(e,t,i,s),this._allowedValues=n}validate(e){return Ht(e,this.defaultValue,this._allowedValues)}}class vb extends Mt{constructor(e,t,i,n,s,r,a=void 0){typeof a<"u"&&(a.type="string",a.enum=s,a.default=n),super(e,t,i,a),this._allowedValues=s,this._convert=r}validate(e){return typeof e!="string"?this.defaultValue:this._allowedValues.indexOf(e)===-1?this.defaultValue:this._convert(e)}}function D6(o){switch(o){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}class I6 extends Mt{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[m("accessibilitySupport.auto","Use platform APIs to detect when a Screen Reader is attached."),m("accessibilitySupport.on","Optimize for usage with a Screen Reader."),m("accessibilitySupport.off","Assume a screen reader is not attached.")],default:"auto",tags:["accessibility"],description:m("accessibilitySupport","Controls if the UI should run in a mode where it is optimized for screen readers.")})}validate(e){switch(e){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}compute(e,t,i){return i===0?e.accessibilitySupport:i}}class E6 extends Mt{constructor(){const e={insertSpace:!0,ignoreEmptyLines:!0};super(23,"comments",e,{"editor.comments.insertSpace":{type:"boolean",default:e.insertSpace,description:m("comments.insertSpace","Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:e.ignoreEmptyLines,description:m("comments.ignoreEmptyLines","Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{insertSpace:he(t.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:he(t.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}}function N6(o){switch(o){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}var Ai;(function(o){o[o.Line=1]="Line",o[o.Block=2]="Block",o[o.Underline=3]="Underline",o[o.LineThin=4]="LineThin",o[o.BlockOutline=5]="BlockOutline",o[o.UnderlineThin=6]="UnderlineThin"})(Ai||(Ai={}));function T6(o){switch(o){case"line":return Ai.Line;case"block":return Ai.Block;case"underline":return Ai.Underline;case"line-thin":return Ai.LineThin;case"block-outline":return Ai.BlockOutline;case"underline-thin":return Ai.UnderlineThin}}class M6 extends B_{constructor(){super(143)}compute(e,t,i){const n=["monaco-editor"];return t.get(39)&&n.push(t.get(39)),e.extraEditorClassName&&n.push(e.extraEditorClassName),t.get(74)==="default"?n.push("mouse-default"):t.get(74)==="copy"&&n.push("mouse-copy"),t.get(112)&&n.push("showUnused"),t.get(141)&&n.push("showDeprecated"),n.join(" ")}}class R6 extends Je{constructor(){super(37,"emptySelectionClipboard",!0,{description:m("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})}compute(e,t,i){return i&&e.emptySelectionClipboard}}class A6 extends Mt{constructor(){const e={cursorMoveOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0};super(41,"find",e,{"editor.find.cursorMoveOnType":{type:"boolean",default:e.cursorMoveOnType,description:m("find.cursorMoveOnType","Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:e.seedSearchStringFromSelection,enumDescriptions:[m("editor.find.seedSearchStringFromSelection.never","Never seed search string from the editor selection."),m("editor.find.seedSearchStringFromSelection.always","Always seed search string from the editor selection, including word at cursor position."),m("editor.find.seedSearchStringFromSelection.selection","Only seed search string from the editor selection.")],description:m("find.seedSearchStringFromSelection","Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:e.autoFindInSelection,enumDescriptions:[m("editor.find.autoFindInSelection.never","Never turn on Find in Selection automatically (default)."),m("editor.find.autoFindInSelection.always","Always turn on Find in Selection automatically."),m("editor.find.autoFindInSelection.multiline","Turn on Find in Selection automatically when multiple lines of content are selected.")],description:m("find.autoFindInSelection","Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:e.globalFindClipboard,description:m("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:Ue},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:e.addExtraSpaceOnTop,description:m("find.addExtraSpaceOnTop","Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")},"editor.find.loop":{type:"boolean",default:e.loop,description:m("find.loop","Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{cursorMoveOnType:he(t.cursorMoveOnType,this.defaultValue.cursorMoveOnType),seedSearchStringFromSelection:typeof e.seedSearchStringFromSelection=="boolean"?e.seedSearchStringFromSelection?"always":"never":Ht(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:typeof e.autoFindInSelection=="boolean"?e.autoFindInSelection?"always":"never":Ht(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:he(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:he(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:he(t.loop,this.defaultValue.loop)}}}const Ka=class Ka extends Mt{constructor(){super(51,"fontLigatures",Ka.OFF,{anyOf:[{type:"boolean",description:m("fontLigatures","Enables/Disables font ligatures ('calt' and 'liga' font features). Change this to a string for fine-grained control of the 'font-feature-settings' CSS property.")},{type:"string",description:m("fontFeatureSettings","Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:m("fontLigaturesGeneral","Configures font ligatures or font features. Can be either a boolean to enable/disable ligatures or a string for the value of the CSS 'font-feature-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"||e.length===0?Ka.OFF:e==="true"?Ka.ON:e:e?Ka.ON:Ka.OFF}};Ka.OFF='"liga" off, "calt" off',Ka.ON='"liga" on, "calt" on';let Mc=Ka;const ja=class ja extends Mt{constructor(){super(54,"fontVariations",ja.OFF,{anyOf:[{type:"boolean",description:m("fontVariations","Enables/Disables the translation from font-weight to font-variation-settings. Change this to a string for fine-grained control of the 'font-variation-settings' CSS property.")},{type:"string",description:m("fontVariationSettings","Explicit 'font-variation-settings' CSS property. A boolean can be passed instead if one only needs to translate font-weight to font-variation-settings.")}],description:m("fontVariationsGeneral","Configures font variations. Can be either a boolean to enable/disable the translation from font-weight to font-variation-settings or a string for the value of the CSS 'font-variation-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"?ja.OFF:e==="true"?ja.TRANSLATE:e:e?ja.TRANSLATE:ja.OFF}compute(e,t,i){return e.fontInfo.fontVariationSettings}};ja.OFF="normal",ja.TRANSLATE="translate";let Hp=ja;class P6 extends B_{constructor(){super(50)}compute(e,t,i){return e.fontInfo}}class O6 extends Fg{constructor(){super(52,"fontSize",ls.fontSize,{type:"number",minimum:6,maximum:100,default:ls.fontSize,description:m("fontSize","Controls the font size in pixels.")})}validate(e){const t=Ts.float(e,this.defaultValue);return t===0?ls.fontSize:Ts.clamp(t,6,100)}compute(e,t,i){return e.fontInfo.fontSize}}const Br=class Br extends Mt{constructor(){super(53,"fontWeight",ls.fontWeight,{anyOf:[{type:"number",minimum:Br.MINIMUM_VALUE,maximum:Br.MAXIMUM_VALUE,errorMessage:m("fontWeightErrorMessage",'Only "normal" and "bold" keywords or numbers between 1 and 1000 are allowed.')},{type:"string",pattern:"^(normal|bold|1000|[1-9][0-9]{0,2})$"},{enum:Br.SUGGESTION_VALUES}],default:ls.fontWeight,description:m("fontWeight",'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(e){return e==="normal"||e==="bold"?e:String(pt.clampedInt(e,ls.fontWeight,Br.MINIMUM_VALUE,Br.MAXIMUM_VALUE))}};Br.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"],Br.MINIMUM_VALUE=1,Br.MAXIMUM_VALUE=1e3;let IL=Br;class F6 extends Mt{constructor(){const e={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",multipleTests:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:"",alternativeTestsCommand:""},t={type:"string",enum:["peek","gotoAndPeek","goto"],default:e.multiple,enumDescriptions:[m("editor.gotoLocation.multiple.peek","Show Peek view of the results (default)"),m("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a Peek view"),m("editor.gotoLocation.multiple.goto","Go to the primary result and enable Peek-less navigation to others")]},i=["","editor.action.referenceSearch.trigger","editor.action.goToReferences","editor.action.peekImplementation","editor.action.goToImplementation","editor.action.peekTypeDefinition","editor.action.goToTypeDefinition","editor.action.peekDeclaration","editor.action.revealDeclaration","editor.action.peekDefinition","editor.action.revealDefinitionAside","editor.action.revealDefinition"];super(58,"gotoLocation",e,{"editor.gotoLocation.multiple":{deprecationMessage:m("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":{description:m("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleTypeDefinitions":{description:m("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleDeclarations":{description:m("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleImplementations":{description:m("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleReferences":{description:m("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist."),...t},"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:e.alternativeDefinitionCommand,enum:i,description:m("alternativeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:e.alternativeTypeDefinitionCommand,enum:i,description:m("alternativeTypeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:e.alternativeDeclarationCommand,enum:i,description:m("alternativeDeclarationCommand","Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:e.alternativeImplementationCommand,enum:i,description:m("alternativeImplementationCommand","Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:e.alternativeReferenceCommand,enum:i,description:m("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{multiple:Ht(t.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:t.multipleDefinitions??Ht(t.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:t.multipleTypeDefinitions??Ht(t.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:t.multipleDeclarations??Ht(t.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:t.multipleImplementations??Ht(t.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:t.multipleReferences??Ht(t.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),multipleTests:t.multipleTests??Ht(t.multipleTests,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:dn.string(t.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:dn.string(t.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:dn.string(t.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:dn.string(t.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:dn.string(t.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand),alternativeTestsCommand:dn.string(t.alternativeTestsCommand,this.defaultValue.alternativeTestsCommand)}}}class B6 extends Mt{constructor(){const e={enabled:!0,delay:300,hidingDelay:300,sticky:!0,above:!0};super(60,"hover",e,{"editor.hover.enabled":{type:"boolean",default:e.enabled,description:m("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:e.delay,minimum:0,maximum:1e4,description:m("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:e.sticky,description:m("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.hidingDelay":{type:"integer",minimum:0,default:e.hidingDelay,description:m("hover.hidingDelay","Controls the delay in milliseconds after which the hover is hidden. Requires `editor.hover.sticky` to be enabled.")},"editor.hover.above":{type:"boolean",default:e.above,description:m("hover.above","Prefer showing hovers above the line, if there's space.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),delay:pt.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:he(t.sticky,this.defaultValue.sticky),hidingDelay:pt.clampedInt(t.hidingDelay,this.defaultValue.hidingDelay,0,6e5),above:he(t.above,this.defaultValue.above)}}}class Ef extends B_{constructor(){super(146)}compute(e,t,i){return Ef.computeLayout(t,{memory:e.memory,outerWidth:e.outerWidth,outerHeight:e.outerHeight,isDominatedByLongLines:e.isDominatedByLongLines,lineHeight:e.fontInfo.lineHeight,viewLineCount:e.viewLineCount,lineNumbersDigitCount:e.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:e.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:e.fontInfo.maxDigitWidth,pixelRatio:e.pixelRatio,glyphMarginDecorationLaneCount:e.glyphMarginDecorationLaneCount})}static computeContainedMinimapLineCount(e){const t=e.height/e.lineHeight,i=Math.floor(e.paddingTop/e.lineHeight);let n=Math.floor(e.paddingBottom/e.lineHeight);e.scrollBeyondLastLine&&(n=Math.max(n,t-1));const s=(i+e.viewLineCount+n)/(e.pixelRatio*e.height),r=Math.floor(e.viewLineCount/s);return{typicalViewportLineCount:t,extraLinesBeforeFirstLine:i,extraLinesBeyondLastLine:n,desiredRatio:s,minimapLineCount:r}}static _computeMinimapLayout(e,t){const i=e.outerWidth,n=e.outerHeight,s=e.pixelRatio;if(!e.minimap.enabled)return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(s*n),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:n};const r=t.stableMinimapLayoutInput,a=r&&e.outerHeight===r.outerHeight&&e.lineHeight===r.lineHeight&&e.typicalHalfwidthCharacterWidth===r.typicalHalfwidthCharacterWidth&&e.pixelRatio===r.pixelRatio&&e.scrollBeyondLastLine===r.scrollBeyondLastLine&&e.paddingTop===r.paddingTop&&e.paddingBottom===r.paddingBottom&&e.minimap.enabled===r.minimap.enabled&&e.minimap.side===r.minimap.side&&e.minimap.size===r.minimap.size&&e.minimap.showSlider===r.minimap.showSlider&&e.minimap.renderCharacters===r.minimap.renderCharacters&&e.minimap.maxColumn===r.minimap.maxColumn&&e.minimap.scale===r.minimap.scale&&e.verticalScrollbarWidth===r.verticalScrollbarWidth&&e.isViewportWrapping===r.isViewportWrapping,l=e.lineHeight,c=e.typicalHalfwidthCharacterWidth,d=e.scrollBeyondLastLine,h=e.minimap.renderCharacters;let u=s>=2?Math.round(e.minimap.scale*2):e.minimap.scale;const f=e.minimap.maxColumn,g=e.minimap.size,p=e.minimap.side,_=e.verticalScrollbarWidth,b=e.viewLineCount,C=e.remainingWidth,w=e.isViewportWrapping,v=h?2:3;let y=Math.floor(s*n);const x=y/s;let L=!1,E=!1,N=v*u,H=u/s,F=1;if(g==="fill"||g==="fit"){const{typicalViewportLineCount:de,extraLinesBeforeFirstLine:se,extraLinesBeyondLastLine:be,desiredRatio:we,minimapLineCount:Rt}=Ef.computeContainedMinimapLineCount({viewLineCount:b,scrollBeyondLastLine:d,paddingTop:e.paddingTop,paddingBottom:e.paddingBottom,height:n,lineHeight:l,pixelRatio:s});if(b/Rt>1)L=!0,E=!0,u=1,N=1,H=u/s;else{let Bt=!1,ht=u+1;if(g==="fit"){const ei=Math.ceil((se+b+be)*N);w&&a&&C<=t.stableFitRemainingWidth?(Bt=!0,ht=t.stableFitMaxMinimapScale):Bt=ei>y}if(g==="fill"||Bt){L=!0;const ei=u;N=Math.min(l*s,Math.max(1,Math.floor(1/we))),w&&a&&C<=t.stableFitRemainingWidth&&(ht=t.stableFitMaxMinimapScale),u=Math.min(ht,Math.max(1,Math.floor(N/v))),u>ei&&(F=Math.min(2,u/ei)),H=u/s/F,y=Math.ceil(Math.max(de,se+b+be)*N),w?(t.stableMinimapLayoutInput=e,t.stableFitRemainingWidth=C,t.stableFitMaxMinimapScale=u):(t.stableMinimapLayoutInput=null,t.stableFitRemainingWidth=0)}}}const W=Math.floor(f*H),j=Math.min(W,Math.max(0,Math.floor((C-_-2)*H/(c+H)))+Ar);let B=Math.floor(s*j);const G=B/s;B=Math.floor(B*F);const ne=h?1:2,ae=p==="left"?0:i-j-_;return{renderMinimap:ne,minimapLeft:ae,minimapWidth:j,minimapHeightIsEditorHeight:L,minimapIsSampling:E,minimapScale:u,minimapLineHeight:N,minimapCanvasInnerWidth:B,minimapCanvasInnerHeight:y,minimapCanvasOuterWidth:G,minimapCanvasOuterHeight:x}}static computeLayout(e,t){const i=t.outerWidth|0,n=t.outerHeight|0,s=t.lineHeight|0,r=t.lineNumbersDigitCount|0,a=t.typicalHalfwidthCharacterWidth,l=t.maxDigitWidth,c=t.pixelRatio,d=t.viewLineCount,h=e.get(138),u=h==="inherit"?e.get(137):h,f=u==="inherit"?e.get(133):u,g=e.get(136),p=t.isDominatedByLongLines,_=e.get(57),b=e.get(68).renderType!==0,C=e.get(69),w=e.get(106),v=e.get(84),y=e.get(73),x=e.get(104),L=x.verticalScrollbarSize,E=x.verticalHasArrows,N=x.arrowSize,H=x.horizontalScrollbarSize,F=e.get(43),W=e.get(111)!=="never";let j=e.get(66);F&&W&&(j+=16);let B=0;if(b){const fi=Math.max(r,C);B=Math.round(fi*l)}let G=0;_&&(G=s*t.glyphMarginDecorationLaneCount);let ne=0,ae=ne+G,de=ae+B,se=de+j;const be=i-G-B-j;let we=!1,Rt=!1,ct=-1;u==="inherit"&&p?(we=!0,Rt=!0):f==="on"||f==="bounded"?Rt=!0:f==="wordWrapColumn"&&(ct=g);const Bt=Ef._computeMinimapLayout({outerWidth:i,outerHeight:n,lineHeight:s,typicalHalfwidthCharacterWidth:a,pixelRatio:c,scrollBeyondLastLine:w,paddingTop:v.top,paddingBottom:v.bottom,minimap:y,verticalScrollbarWidth:L,viewLineCount:d,remainingWidth:be,isViewportWrapping:Rt},t.memory||new q5);Bt.renderMinimap!==0&&Bt.minimapLeft===0&&(ne+=Bt.minimapWidth,ae+=Bt.minimapWidth,de+=Bt.minimapWidth,se+=Bt.minimapWidth);const ht=be-Bt.minimapWidth,ei=Math.max(1,Math.floor((ht-L-2)/a)),js=E?N:0;return Rt&&(ct=Math.max(1,ei),f==="bounded"&&(ct=Math.min(ct,g))),{width:i,height:n,glyphMarginLeft:ne,glyphMarginWidth:G,glyphMarginDecorationLaneCount:t.glyphMarginDecorationLaneCount,lineNumbersLeft:ae,lineNumbersWidth:B,decorationsLeft:de,decorationsWidth:j,contentLeft:se,contentWidth:ht,minimap:Bt,viewportColumn:ei,isWordWrapMinified:we,isViewportWrapping:Rt,wrappingColumn:ct,verticalScrollbarWidth:L,horizontalScrollbarHeight:H,overviewRuler:{top:js,width:L,height:n-2*js,right:0}}}}class W6 extends Mt{constructor(){super(140,"wrappingStrategy","simple",{"editor.wrappingStrategy":{enumDescriptions:[m("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),m("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],type:"string",enum:["simple","advanced"],default:"simple",description:m("wrappingStrategy","Controls the algorithm that computes wrapping points. Note that when in accessibility mode, advanced will be used for the best experience.")}})}validate(e){return Ht(e,"simple",["simple","advanced"])}compute(e,t,i){return t.get(2)===2?"advanced":i}}var xo;(function(o){o.Off="off",o.OnCode="onCode",o.On="on"})(xo||(xo={}));class H6 extends Mt{constructor(){const e={enabled:xo.OnCode};super(65,"lightbulb",e,{"editor.lightbulb.enabled":{type:"string",tags:["experimental"],enum:[xo.Off,xo.OnCode,xo.On],default:e.enabled,enumDescriptions:[m("editor.lightbulb.enabled.off","Disable the code action menu."),m("editor.lightbulb.enabled.onCode","Show the code action menu when the cursor is on lines with code."),m("editor.lightbulb.enabled.on","Show the code action menu when the cursor is on lines with code or on empty lines.")],description:m("enabled","Enables the Code Action lightbulb in the editor.")}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{enabled:Ht(e.enabled,this.defaultValue.enabled,[xo.Off,xo.OnCode,xo.On])}}}class V6 extends Mt{constructor(){const e={enabled:!0,maxLineCount:5,defaultModel:"outlineModel",scrollWithEditor:!0};super(116,"stickyScroll",e,{"editor.stickyScroll.enabled":{type:"boolean",default:e.enabled,description:m("editor.stickyScroll.enabled","Shows the nested current scopes during the scroll at the top of the editor."),tags:["experimental"]},"editor.stickyScroll.maxLineCount":{type:"number",default:e.maxLineCount,minimum:1,maximum:20,description:m("editor.stickyScroll.maxLineCount","Defines the maximum number of sticky lines to show.")},"editor.stickyScroll.defaultModel":{type:"string",enum:["outlineModel","foldingProviderModel","indentationModel"],default:e.defaultModel,description:m("editor.stickyScroll.defaultModel","Defines the model to use for determining which lines to stick. If the outline model does not exist, it will fall back on the folding provider model which falls back on the indentation model. This order is respected in all three cases.")},"editor.stickyScroll.scrollWithEditor":{type:"boolean",default:e.scrollWithEditor,description:m("editor.stickyScroll.scrollWithEditor","Enable scrolling of Sticky Scroll with the editor's horizontal scrollbar.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),maxLineCount:pt.clampedInt(t.maxLineCount,this.defaultValue.maxLineCount,1,20),defaultModel:Ht(t.defaultModel,this.defaultValue.defaultModel,["outlineModel","foldingProviderModel","indentationModel"]),scrollWithEditor:he(t.scrollWithEditor,this.defaultValue.scrollWithEditor)}}}class z6 extends Mt{constructor(){const e={enabled:"on",fontSize:0,fontFamily:"",padding:!1};super(142,"inlayHints",e,{"editor.inlayHints.enabled":{type:"string",default:e.enabled,description:m("inlayHints.enable","Enables the inlay hints in the editor."),enum:["on","onUnlessPressed","offUnlessPressed","off"],markdownEnumDescriptions:[m("editor.inlayHints.on","Inlay hints are enabled"),m("editor.inlayHints.onUnlessPressed","Inlay hints are showing by default and hide when holding {0}",Ue?"Ctrl+Option":"Ctrl+Alt"),m("editor.inlayHints.offUnlessPressed","Inlay hints are hidden by default and show when holding {0}",Ue?"Ctrl+Option":"Ctrl+Alt"),m("editor.inlayHints.off","Inlay hints are disabled")]},"editor.inlayHints.fontSize":{type:"number",default:e.fontSize,markdownDescription:m("inlayHints.fontSize","Controls font size of inlay hints in the editor. As default the {0} is used when the configured value is less than {1} or greater than the editor font size.","`#editor.fontSize#`","`5`")},"editor.inlayHints.fontFamily":{type:"string",default:e.fontFamily,markdownDescription:m("inlayHints.fontFamily","Controls font family of inlay hints in the editor. When set to empty, the {0} is used.","`#editor.fontFamily#`")},"editor.inlayHints.padding":{type:"boolean",default:e.padding,description:m("inlayHints.padding","Enables the padding around the inlay hints in the editor.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return typeof t.enabled=="boolean"&&(t.enabled=t.enabled?"on":"off"),{enabled:Ht(t.enabled,this.defaultValue.enabled,["on","off","offUnlessPressed","onUnlessPressed"]),fontSize:pt.clampedInt(t.fontSize,this.defaultValue.fontSize,0,100),fontFamily:dn.string(t.fontFamily,this.defaultValue.fontFamily),padding:he(t.padding,this.defaultValue.padding)}}}class U6 extends Mt{constructor(){super(66,"lineDecorationsWidth",10)}validate(e){return typeof e=="string"&&/^\d+(\.\d+)?ch$/.test(e)?-parseFloat(e.substring(0,e.length-2)):pt.clampedInt(e,this.defaultValue,0,1e3)}compute(e,t,i){return i<0?pt.clampedInt(-i*e.fontInfo.typicalHalfwidthCharacterWidth,this.defaultValue,0,1e3):i}}class $6 extends Ts{constructor(){super(67,"lineHeight",ls.lineHeight,e=>Ts.clamp(e,0,150),{markdownDescription:m("lineHeight",`Controls the line height. - - Use 0 to automatically compute the line height from the font size. - - Values between 0 and 8 will be used as a multiplier with the font size. - - Values greater than or equal to 8 will be used as effective values.`)})}compute(e,t,i){return e.fontInfo.lineHeight}}class K6 extends Mt{constructor(){const e={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",autohide:!1,renderCharacters:!0,maxColumn:120,scale:1,showRegionSectionHeaders:!0,showMarkSectionHeaders:!0,sectionHeaderFontSize:9,sectionHeaderLetterSpacing:1};super(73,"minimap",e,{"editor.minimap.enabled":{type:"boolean",default:e.enabled,description:m("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.autohide":{type:"boolean",default:e.autohide,description:m("minimap.autohide","Controls whether the minimap is hidden automatically.")},"editor.minimap.size":{type:"string",enum:["proportional","fill","fit"],enumDescriptions:[m("minimap.size.proportional","The minimap has the same size as the editor contents (and might scroll)."),m("minimap.size.fill","The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling)."),m("minimap.size.fit","The minimap will shrink as necessary to never be larger than the editor (no scrolling).")],default:e.size,description:m("minimap.size","Controls the size of the minimap.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:e.side,description:m("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:e.showSlider,description:m("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:e.scale,minimum:1,maximum:3,enum:[1,2,3],description:m("minimap.scale","Scale of content drawn in the minimap: 1, 2 or 3.")},"editor.minimap.renderCharacters":{type:"boolean",default:e.renderCharacters,description:m("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:e.maxColumn,description:m("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")},"editor.minimap.showRegionSectionHeaders":{type:"boolean",default:e.showRegionSectionHeaders,description:m("minimap.showRegionSectionHeaders","Controls whether named regions are shown as section headers in the minimap.")},"editor.minimap.showMarkSectionHeaders":{type:"boolean",default:e.showMarkSectionHeaders,description:m("minimap.showMarkSectionHeaders","Controls whether MARK: comments are shown as section headers in the minimap.")},"editor.minimap.sectionHeaderFontSize":{type:"number",default:e.sectionHeaderFontSize,description:m("minimap.sectionHeaderFontSize","Controls the font size of section headers in the minimap.")},"editor.minimap.sectionHeaderLetterSpacing":{type:"number",default:e.sectionHeaderLetterSpacing,description:m("minimap.sectionHeaderLetterSpacing","Controls the amount of space (in pixels) between characters of section header. This helps the readability of the header in small font sizes.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),autohide:he(t.autohide,this.defaultValue.autohide),size:Ht(t.size,this.defaultValue.size,["proportional","fill","fit"]),side:Ht(t.side,this.defaultValue.side,["right","left"]),showSlider:Ht(t.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:he(t.renderCharacters,this.defaultValue.renderCharacters),scale:pt.clampedInt(t.scale,1,1,3),maxColumn:pt.clampedInt(t.maxColumn,this.defaultValue.maxColumn,1,1e4),showRegionSectionHeaders:he(t.showRegionSectionHeaders,this.defaultValue.showRegionSectionHeaders),showMarkSectionHeaders:he(t.showMarkSectionHeaders,this.defaultValue.showMarkSectionHeaders),sectionHeaderFontSize:Ts.clamp(t.sectionHeaderFontSize??this.defaultValue.sectionHeaderFontSize,4,32),sectionHeaderLetterSpacing:Ts.clamp(t.sectionHeaderLetterSpacing??this.defaultValue.sectionHeaderLetterSpacing,0,5)}}}function j6(o){return o==="ctrlCmd"?Ue?"metaKey":"ctrlKey":"altKey"}class q6 extends Mt{constructor(){super(84,"padding",{top:0,bottom:0},{"editor.padding.top":{type:"number",default:0,minimum:0,maximum:1e3,description:m("padding.top","Controls the amount of space between the top edge of the editor and the first line.")},"editor.padding.bottom":{type:"number",default:0,minimum:0,maximum:1e3,description:m("padding.bottom","Controls the amount of space between the bottom edge of the editor and the last line.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{top:pt.clampedInt(t.top,0,0,1e3),bottom:pt.clampedInt(t.bottom,0,0,1e3)}}}class G6 extends Mt{constructor(){const e={enabled:!0,cycle:!0};super(86,"parameterHints",e,{"editor.parameterHints.enabled":{type:"boolean",default:e.enabled,description:m("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:e.cycle,description:m("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),cycle:he(t.cycle,this.defaultValue.cycle)}}}class Z6 extends B_{constructor(){super(144)}compute(e,t,i){return e.pixelRatio}}class Y6 extends Mt{constructor(){super(88,"placeholder",void 0)}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e:this.defaultValue}}class Q6 extends Mt{constructor(){const e={other:"on",comments:"off",strings:"off"},t=[{type:"boolean"},{type:"string",enum:["on","inline","off"],enumDescriptions:[m("on","Quick suggestions show inside the suggest widget"),m("inline","Quick suggestions show as ghost text"),m("off","Quick suggestions are disabled")]}];super(90,"quickSuggestions",e,{type:"object",additionalProperties:!1,properties:{strings:{anyOf:t,default:e.strings,description:m("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{anyOf:t,default:e.comments,description:m("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{anyOf:t,default:e.other,description:m("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}},default:e,markdownDescription:m("quickSuggestions","Controls whether suggestions should automatically show up while typing. This can be controlled for typing in comments, strings, and other code. Quick suggestion can be configured to show as ghost text or with the suggest widget. Also be aware of the {0}-setting which controls if suggestions are triggered by special characters.","`#editor.suggestOnTriggerCharacters#`")}),this.defaultValue=e}validate(e){if(typeof e=="boolean"){const c=e?"on":"off";return{comments:c,strings:c,other:c}}if(!e||typeof e!="object")return this.defaultValue;const{other:t,comments:i,strings:n}=e,s=["on","inline","off"];let r,a,l;return typeof t=="boolean"?r=t?"on":"off":r=Ht(t,this.defaultValue.other,s),typeof i=="boolean"?a=i?"on":"off":a=Ht(i,this.defaultValue.comments,s),typeof n=="boolean"?l=n?"on":"off":l=Ht(n,this.defaultValue.strings,s),{other:r,comments:a,strings:l}}}class X6 extends Mt{constructor(){super(68,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[m("lineNumbers.off","Line numbers are not rendered."),m("lineNumbers.on","Line numbers are rendered as absolute number."),m("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),m("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:m("lineNumbers","Controls the display of line numbers.")})}validate(e){let t=this.defaultValue.renderType,i=this.defaultValue.renderFn;return typeof e<"u"&&(typeof e=="function"?(t=4,i=e):e==="interval"?t=3:e==="relative"?t=2:e==="on"?t=1:t=0),{renderType:t,renderFn:i}}}function rC(o){const e=o.get(99);return e==="editable"?o.get(92):e!=="on"}class J6 extends Mt{constructor(){const e=[],t={type:"number",description:m("rulers.size","Number of monospace characters at which this editor ruler will render.")};super(103,"rulers",e,{type:"array",items:{anyOf:[t,{type:["object"],properties:{column:t,color:{type:"string",description:m("rulers.color","Color of this editor ruler."),format:"color-hex"}}}]},default:e,description:m("rulers","Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.")})}validate(e){if(Array.isArray(e)){const t=[];for(const i of e)if(typeof i=="number")t.push({column:pt.clampedInt(i,0,0,1e4),color:null});else if(i&&typeof i=="object"){const n=i;t.push({column:pt.clampedInt(n.column,0,0,1e4),color:n.color})}return t.sort((i,n)=>i.column-n.column),t}return this.defaultValue}}class eW extends Mt{constructor(){super(93,"readOnlyMessage",void 0)}validate(e){return!e||typeof e!="object"?this.defaultValue:e}}function WM(o,e){if(typeof o!="string")return e;switch(o){case"hidden":return 2;case"visible":return 3;default:return 1}}let tW=class extends Mt{constructor(){const e={vertical:1,horizontal:1,arrowSize:11,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,horizontalScrollbarSize:12,horizontalSliderSize:12,verticalScrollbarSize:14,verticalSliderSize:14,handleMouseWheel:!0,alwaysConsumeMouseWheel:!0,scrollByPage:!1,ignoreHorizontalScrollbarInContentHeight:!1};super(104,"scrollbar",e,{"editor.scrollbar.vertical":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[m("scrollbar.vertical.auto","The vertical scrollbar will be visible only when necessary."),m("scrollbar.vertical.visible","The vertical scrollbar will always be visible."),m("scrollbar.vertical.fit","The vertical scrollbar will always be hidden.")],default:"auto",description:m("scrollbar.vertical","Controls the visibility of the vertical scrollbar.")},"editor.scrollbar.horizontal":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[m("scrollbar.horizontal.auto","The horizontal scrollbar will be visible only when necessary."),m("scrollbar.horizontal.visible","The horizontal scrollbar will always be visible."),m("scrollbar.horizontal.fit","The horizontal scrollbar will always be hidden.")],default:"auto",description:m("scrollbar.horizontal","Controls the visibility of the horizontal scrollbar.")},"editor.scrollbar.verticalScrollbarSize":{type:"number",default:e.verticalScrollbarSize,description:m("scrollbar.verticalScrollbarSize","The width of the vertical scrollbar.")},"editor.scrollbar.horizontalScrollbarSize":{type:"number",default:e.horizontalScrollbarSize,description:m("scrollbar.horizontalScrollbarSize","The height of the horizontal scrollbar.")},"editor.scrollbar.scrollByPage":{type:"boolean",default:e.scrollByPage,description:m("scrollbar.scrollByPage","Controls whether clicks scroll by page or jump to click position.")},"editor.scrollbar.ignoreHorizontalScrollbarInContentHeight":{type:"boolean",default:e.ignoreHorizontalScrollbarInContentHeight,description:m("scrollbar.ignoreHorizontalScrollbarInContentHeight","When set, the horizontal scrollbar will not increase the size of the editor's content.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e,i=pt.clampedInt(t.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),n=pt.clampedInt(t.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:pt.clampedInt(t.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:WM(t.vertical,this.defaultValue.vertical),horizontal:WM(t.horizontal,this.defaultValue.horizontal),useShadows:he(t.useShadows,this.defaultValue.useShadows),verticalHasArrows:he(t.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:he(t.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:he(t.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:he(t.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:i,horizontalSliderSize:pt.clampedInt(t.horizontalSliderSize,i,0,1e3),verticalScrollbarSize:n,verticalSliderSize:pt.clampedInt(t.verticalSliderSize,n,0,1e3),scrollByPage:he(t.scrollByPage,this.defaultValue.scrollByPage),ignoreHorizontalScrollbarInContentHeight:he(t.ignoreHorizontalScrollbarInContentHeight,this.defaultValue.ignoreHorizontalScrollbarInContentHeight)}}};const $o="inUntrustedWorkspace",ed={allowedCharacters:"editor.unicodeHighlight.allowedCharacters",invisibleCharacters:"editor.unicodeHighlight.invisibleCharacters",nonBasicASCII:"editor.unicodeHighlight.nonBasicASCII",ambiguousCharacters:"editor.unicodeHighlight.ambiguousCharacters",includeComments:"editor.unicodeHighlight.includeComments",includeStrings:"editor.unicodeHighlight.includeStrings",allowedLocales:"editor.unicodeHighlight.allowedLocales"};class iW extends Mt{constructor(){const e={nonBasicASCII:$o,invisibleCharacters:!0,ambiguousCharacters:!0,includeComments:$o,includeStrings:!0,allowedCharacters:{},allowedLocales:{_os:!0,_vscode:!0}};super(126,"unicodeHighlight",e,{[ed.nonBasicASCII]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,$o],default:e.nonBasicASCII,description:m("unicodeHighlight.nonBasicASCII","Controls whether all non-basic ASCII characters are highlighted. Only characters between U+0020 and U+007E, tab, line-feed and carriage-return are considered basic ASCII.")},[ed.invisibleCharacters]:{restricted:!0,type:"boolean",default:e.invisibleCharacters,description:m("unicodeHighlight.invisibleCharacters","Controls whether characters that just reserve space or have no width at all are highlighted.")},[ed.ambiguousCharacters]:{restricted:!0,type:"boolean",default:e.ambiguousCharacters,description:m("unicodeHighlight.ambiguousCharacters","Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.")},[ed.includeComments]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,$o],default:e.includeComments,description:m("unicodeHighlight.includeComments","Controls whether characters in comments should also be subject to Unicode highlighting.")},[ed.includeStrings]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,$o],default:e.includeStrings,description:m("unicodeHighlight.includeStrings","Controls whether characters in strings should also be subject to Unicode highlighting.")},[ed.allowedCharacters]:{restricted:!0,type:"object",default:e.allowedCharacters,description:m("unicodeHighlight.allowedCharacters","Defines allowed characters that are not being highlighted."),additionalProperties:{type:"boolean"}},[ed.allowedLocales]:{restricted:!0,type:"object",additionalProperties:{type:"boolean"},default:e.allowedLocales,description:m("unicodeHighlight.allowedLocales","Unicode characters that are common in allowed locales are not being highlighted.")}})}applyUpdate(e,t){let i=!1;t.allowedCharacters&&e&&(as(e.allowedCharacters,t.allowedCharacters)||(e={...e,allowedCharacters:t.allowedCharacters},i=!0)),t.allowedLocales&&e&&(as(e.allowedLocales,t.allowedLocales)||(e={...e,allowedLocales:t.allowedLocales},i=!0));const n=super.applyUpdate(e,t);return i?new $m(n.newValue,!0):n}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{nonBasicASCII:Nf(t.nonBasicASCII,$o,[!0,!1,$o]),invisibleCharacters:he(t.invisibleCharacters,this.defaultValue.invisibleCharacters),ambiguousCharacters:he(t.ambiguousCharacters,this.defaultValue.ambiguousCharacters),includeComments:Nf(t.includeComments,$o,[!0,!1,$o]),includeStrings:Nf(t.includeStrings,$o,[!0,!1,$o]),allowedCharacters:this.validateBooleanMap(e.allowedCharacters,this.defaultValue.allowedCharacters),allowedLocales:this.validateBooleanMap(e.allowedLocales,this.defaultValue.allowedLocales)}}validateBooleanMap(e,t){if(typeof e!="object"||!e)return t;const i={};for(const[n,s]of Object.entries(e))s===!0&&(i[n]=!0);return i}}class nW extends Mt{constructor(){const e={enabled:!0,mode:"subwordSmart",showToolbar:"onHover",suppressSuggestions:!1,keepOnBlur:!1,fontFamily:"default"};super(62,"inlineSuggest",e,{"editor.inlineSuggest.enabled":{type:"boolean",default:e.enabled,description:m("inlineSuggest.enabled","Controls whether to automatically show inline suggestions in the editor.")},"editor.inlineSuggest.showToolbar":{type:"string",default:e.showToolbar,enum:["always","onHover","never"],enumDescriptions:[m("inlineSuggest.showToolbar.always","Show the inline suggestion toolbar whenever an inline suggestion is shown."),m("inlineSuggest.showToolbar.onHover","Show the inline suggestion toolbar when hovering over an inline suggestion."),m("inlineSuggest.showToolbar.never","Never show the inline suggestion toolbar.")],description:m("inlineSuggest.showToolbar","Controls when to show the inline suggestion toolbar.")},"editor.inlineSuggest.suppressSuggestions":{type:"boolean",default:e.suppressSuggestions,description:m("inlineSuggest.suppressSuggestions","Controls how inline suggestions interact with the suggest widget. If enabled, the suggest widget is not shown automatically when inline suggestions are available.")},"editor.inlineSuggest.fontFamily":{type:"string",default:e.fontFamily,description:m("inlineSuggest.fontFamily","Controls the font family of the inline suggestions.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),mode:Ht(t.mode,this.defaultValue.mode,["prefix","subword","subwordSmart"]),showToolbar:Ht(t.showToolbar,this.defaultValue.showToolbar,["always","onHover","never"]),suppressSuggestions:he(t.suppressSuggestions,this.defaultValue.suppressSuggestions),keepOnBlur:he(t.keepOnBlur,this.defaultValue.keepOnBlur),fontFamily:dn.string(t.fontFamily,this.defaultValue.fontFamily)}}}class sW extends Mt{constructor(){const e={enabled:!1,showToolbar:"onHover",fontFamily:"default",keepOnBlur:!1};super(63,"experimentalInlineEdit",e,{"editor.experimentalInlineEdit.enabled":{type:"boolean",default:e.enabled,description:m("inlineEdit.enabled","Controls whether to show inline edits in the editor.")},"editor.experimentalInlineEdit.showToolbar":{type:"string",default:e.showToolbar,enum:["always","onHover","never"],enumDescriptions:[m("inlineEdit.showToolbar.always","Show the inline edit toolbar whenever an inline suggestion is shown."),m("inlineEdit.showToolbar.onHover","Show the inline edit toolbar when hovering over an inline suggestion."),m("inlineEdit.showToolbar.never","Never show the inline edit toolbar.")],description:m("inlineEdit.showToolbar","Controls when to show the inline edit toolbar.")},"editor.experimentalInlineEdit.fontFamily":{type:"string",default:e.fontFamily,description:m("inlineEdit.fontFamily","Controls the font family of the inline edit.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),showToolbar:Ht(t.showToolbar,this.defaultValue.showToolbar,["always","onHover","never"]),fontFamily:dn.string(t.fontFamily,this.defaultValue.fontFamily),keepOnBlur:he(t.keepOnBlur,this.defaultValue.keepOnBlur)}}}class oW extends Mt{constructor(){const e={enabled:Qi.bracketPairColorizationOptions.enabled,independentColorPoolPerBracketType:Qi.bracketPairColorizationOptions.independentColorPoolPerBracketType};super(15,"bracketPairColorization",e,{"editor.bracketPairColorization.enabled":{type:"boolean",default:e.enabled,markdownDescription:m("bracketPairColorization.enabled","Controls whether bracket pair colorization is enabled or not. Use {0} to override the bracket highlight colors.","`#workbench.colorCustomizations#`")},"editor.bracketPairColorization.independentColorPoolPerBracketType":{type:"boolean",default:e.independentColorPoolPerBracketType,description:m("bracketPairColorization.independentColorPoolPerBracketType","Controls whether each bracket type has its own independent color pool.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),independentColorPoolPerBracketType:he(t.independentColorPoolPerBracketType,this.defaultValue.independentColorPoolPerBracketType)}}}class rW extends Mt{constructor(){const e={bracketPairs:!1,bracketPairsHorizontal:"active",highlightActiveBracketPair:!0,indentation:!0,highlightActiveIndentation:!0};super(16,"guides",e,{"editor.guides.bracketPairs":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[m("editor.guides.bracketPairs.true","Enables bracket pair guides."),m("editor.guides.bracketPairs.active","Enables bracket pair guides only for the active bracket pair."),m("editor.guides.bracketPairs.false","Disables bracket pair guides.")],default:e.bracketPairs,description:m("editor.guides.bracketPairs","Controls whether bracket pair guides are enabled or not.")},"editor.guides.bracketPairsHorizontal":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[m("editor.guides.bracketPairsHorizontal.true","Enables horizontal guides as addition to vertical bracket pair guides."),m("editor.guides.bracketPairsHorizontal.active","Enables horizontal guides only for the active bracket pair."),m("editor.guides.bracketPairsHorizontal.false","Disables horizontal bracket pair guides.")],default:e.bracketPairsHorizontal,description:m("editor.guides.bracketPairsHorizontal","Controls whether horizontal bracket pair guides are enabled or not.")},"editor.guides.highlightActiveBracketPair":{type:"boolean",default:e.highlightActiveBracketPair,description:m("editor.guides.highlightActiveBracketPair","Controls whether the editor should highlight the active bracket pair.")},"editor.guides.indentation":{type:"boolean",default:e.indentation,description:m("editor.guides.indentation","Controls whether the editor should render indent guides.")},"editor.guides.highlightActiveIndentation":{type:["boolean","string"],enum:[!0,"always",!1],enumDescriptions:[m("editor.guides.highlightActiveIndentation.true","Highlights the active indent guide."),m("editor.guides.highlightActiveIndentation.always","Highlights the active indent guide even if bracket guides are highlighted."),m("editor.guides.highlightActiveIndentation.false","Do not highlight the active indent guide.")],default:e.highlightActiveIndentation,description:m("editor.guides.highlightActiveIndentation","Controls whether the editor should highlight the active indent guide.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{bracketPairs:Nf(t.bracketPairs,this.defaultValue.bracketPairs,[!0,!1,"active"]),bracketPairsHorizontal:Nf(t.bracketPairsHorizontal,this.defaultValue.bracketPairsHorizontal,[!0,!1,"active"]),highlightActiveBracketPair:he(t.highlightActiveBracketPair,this.defaultValue.highlightActiveBracketPair),indentation:he(t.indentation,this.defaultValue.indentation),highlightActiveIndentation:Nf(t.highlightActiveIndentation,this.defaultValue.highlightActiveIndentation,[!0,!1,"always"])}}}function Nf(o,e,t){const i=t.indexOf(o);return i===-1?e:t[i]}class aW extends Mt{constructor(){const e={insertMode:"insert",filterGraceful:!0,snippetsPreventQuickSuggestions:!1,localityBonus:!1,shareSuggestSelections:!1,selectionMode:"always",showIcons:!0,showStatusBar:!1,preview:!1,previewMode:"subwordSmart",showInlineDetails:!0,showMethods:!0,showFunctions:!0,showConstructors:!0,showDeprecated:!0,matchOnWordStartOnly:!0,showFields:!0,showVariables:!0,showClasses:!0,showStructs:!0,showInterfaces:!0,showModules:!0,showProperties:!0,showEvents:!0,showOperators:!0,showUnits:!0,showValues:!0,showConstants:!0,showEnums:!0,showEnumMembers:!0,showKeywords:!0,showWords:!0,showColors:!0,showFiles:!0,showReferences:!0,showFolders:!0,showTypeParameters:!0,showSnippets:!0,showUsers:!0,showIssues:!0};super(119,"suggest",e,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[m("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),m("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:e.insertMode,description:m("suggest.insertMode","Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.filterGraceful":{type:"boolean",default:e.filterGraceful,description:m("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:e.localityBonus,description:m("suggest.localityBonus","Controls whether sorting favors words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:e.shareSuggestSelections,markdownDescription:m("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.selectionMode":{type:"string",enum:["always","never","whenTriggerCharacter","whenQuickSuggestion"],enumDescriptions:[m("suggest.insertMode.always","Always select a suggestion when automatically triggering IntelliSense."),m("suggest.insertMode.never","Never select a suggestion when automatically triggering IntelliSense."),m("suggest.insertMode.whenTriggerCharacter","Select a suggestion only when triggering IntelliSense from a trigger character."),m("suggest.insertMode.whenQuickSuggestion","Select a suggestion only when triggering IntelliSense as you type.")],default:e.selectionMode,markdownDescription:m("suggest.selectionMode","Controls whether a suggestion is selected when the widget shows. Note that this only applies to automatically triggered suggestions ({0} and {1}) and that a suggestion is always selected when explicitly invoked, e.g via `Ctrl+Space`.","`#editor.quickSuggestions#`","`#editor.suggestOnTriggerCharacters#`")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:e.snippetsPreventQuickSuggestions,description:m("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:e.showIcons,description:m("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.showStatusBar":{type:"boolean",default:e.showStatusBar,description:m("suggest.showStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")},"editor.suggest.preview":{type:"boolean",default:e.preview,description:m("suggest.preview","Controls whether to preview the suggestion outcome in the editor.")},"editor.suggest.showInlineDetails":{type:"boolean",default:e.showInlineDetails,description:m("suggest.showInlineDetails","Controls whether suggest details show inline with the label or only in the details widget.")},"editor.suggest.maxVisibleSuggestions":{type:"number",deprecationMessage:m("suggest.maxVisibleSuggestions.dep","This setting is deprecated. The suggest widget can now be resized.")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:m("deprecated","This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.")},"editor.suggest.showMethods":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showDeprecated":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showDeprecated","When enabled IntelliSense shows `deprecated`-suggestions.")},"editor.suggest.matchOnWordStartOnly":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.matchOnWordStartOnly","When enabled IntelliSense filtering requires that the first character matches on a word start. For example, `c` on `Console` or `WebContext` but _not_ on `description`. When disabled IntelliSense will show more results but still sorts them by match quality.")},"editor.suggest.showFields":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.showUsers":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showUsers","When enabled IntelliSense shows `user`-suggestions.")},"editor.suggest.showIssues":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showIssues","When enabled IntelliSense shows `issues`-suggestions.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{insertMode:Ht(t.insertMode,this.defaultValue.insertMode,["insert","replace"]),filterGraceful:he(t.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:he(t.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:he(t.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:he(t.shareSuggestSelections,this.defaultValue.shareSuggestSelections),selectionMode:Ht(t.selectionMode,this.defaultValue.selectionMode,["always","never","whenQuickSuggestion","whenTriggerCharacter"]),showIcons:he(t.showIcons,this.defaultValue.showIcons),showStatusBar:he(t.showStatusBar,this.defaultValue.showStatusBar),preview:he(t.preview,this.defaultValue.preview),previewMode:Ht(t.previewMode,this.defaultValue.previewMode,["prefix","subword","subwordSmart"]),showInlineDetails:he(t.showInlineDetails,this.defaultValue.showInlineDetails),showMethods:he(t.showMethods,this.defaultValue.showMethods),showFunctions:he(t.showFunctions,this.defaultValue.showFunctions),showConstructors:he(t.showConstructors,this.defaultValue.showConstructors),showDeprecated:he(t.showDeprecated,this.defaultValue.showDeprecated),matchOnWordStartOnly:he(t.matchOnWordStartOnly,this.defaultValue.matchOnWordStartOnly),showFields:he(t.showFields,this.defaultValue.showFields),showVariables:he(t.showVariables,this.defaultValue.showVariables),showClasses:he(t.showClasses,this.defaultValue.showClasses),showStructs:he(t.showStructs,this.defaultValue.showStructs),showInterfaces:he(t.showInterfaces,this.defaultValue.showInterfaces),showModules:he(t.showModules,this.defaultValue.showModules),showProperties:he(t.showProperties,this.defaultValue.showProperties),showEvents:he(t.showEvents,this.defaultValue.showEvents),showOperators:he(t.showOperators,this.defaultValue.showOperators),showUnits:he(t.showUnits,this.defaultValue.showUnits),showValues:he(t.showValues,this.defaultValue.showValues),showConstants:he(t.showConstants,this.defaultValue.showConstants),showEnums:he(t.showEnums,this.defaultValue.showEnums),showEnumMembers:he(t.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:he(t.showKeywords,this.defaultValue.showKeywords),showWords:he(t.showWords,this.defaultValue.showWords),showColors:he(t.showColors,this.defaultValue.showColors),showFiles:he(t.showFiles,this.defaultValue.showFiles),showReferences:he(t.showReferences,this.defaultValue.showReferences),showFolders:he(t.showFolders,this.defaultValue.showFolders),showTypeParameters:he(t.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:he(t.showSnippets,this.defaultValue.showSnippets),showUsers:he(t.showUsers,this.defaultValue.showUsers),showIssues:he(t.showIssues,this.defaultValue.showIssues)}}}class lW extends Mt{constructor(){super(114,"smartSelect",{selectLeadingAndTrailingWhitespace:!0,selectSubwords:!0},{"editor.smartSelect.selectLeadingAndTrailingWhitespace":{description:m("selectLeadingAndTrailingWhitespace","Whether leading and trailing whitespace should always be selected."),default:!0,type:"boolean"},"editor.smartSelect.selectSubwords":{description:m("selectSubwords","Whether subwords (like 'foo' in 'fooBar' or 'foo_bar') should be selected."),default:!0,type:"boolean"}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{selectLeadingAndTrailingWhitespace:he(e.selectLeadingAndTrailingWhitespace,this.defaultValue.selectLeadingAndTrailingWhitespace),selectSubwords:he(e.selectSubwords,this.defaultValue.selectSubwords)}}}class cW extends Mt{constructor(){const e=[];super(131,"wordSegmenterLocales",e,{anyOf:[{description:m("wordSegmenterLocales","Locales to be used for word segmentation when doing word related navigations or operations. Specify the BCP 47 language tag of the word you wish to recognize (e.g., ja, zh-CN, zh-Hant-TW, etc.)."),type:"string"},{description:m("wordSegmenterLocales","Locales to be used for word segmentation when doing word related navigations or operations. Specify the BCP 47 language tag of the word you wish to recognize (e.g., ja, zh-CN, zh-Hant-TW, etc.)."),type:"array",items:{type:"string"}}]})}validate(e){if(typeof e=="string"&&(e=[e]),Array.isArray(e)){const t=[];for(const i of e)if(typeof i=="string")try{Intl.Segmenter.supportedLocalesOf(i).length>0&&t.push(i)}catch{}return t}return this.defaultValue}}class dW extends Mt{constructor(){super(139,"wrappingIndent",1,{"editor.wrappingIndent":{type:"string",enum:["none","same","indent","deepIndent"],enumDescriptions:[m("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),m("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),m("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),m("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:m("wrappingIndent","Controls the indentation of wrapped lines."),default:"same"}})}validate(e){switch(e){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}return 1}compute(e,t,i){return t.get(2)===2?0:i}}class hW extends B_{constructor(){super(147)}compute(e,t,i){const n=t.get(146);return{isDominatedByLongLines:e.isDominatedByLongLines,isWordWrapMinified:n.isWordWrapMinified,isViewportWrapping:n.isViewportWrapping,wrappingColumn:n.wrappingColumn}}}class uW extends Mt{constructor(){const e={enabled:!0,showDropSelector:"afterDrop"};super(36,"dropIntoEditor",e,{"editor.dropIntoEditor.enabled":{type:"boolean",default:e.enabled,markdownDescription:m("dropIntoEditor.enabled","Controls whether you can drag and drop a file into a text editor by holding down the `Shift` key (instead of opening the file in an editor).")},"editor.dropIntoEditor.showDropSelector":{type:"string",markdownDescription:m("dropIntoEditor.showDropSelector","Controls if a widget is shown when dropping files into the editor. This widget lets you control how the file is dropped."),enum:["afterDrop","never"],enumDescriptions:[m("dropIntoEditor.showDropSelector.afterDrop","Show the drop selector widget after a file is dropped into the editor."),m("dropIntoEditor.showDropSelector.never","Never show the drop selector widget. Instead the default drop provider is always used.")],default:"afterDrop"}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),showDropSelector:Ht(t.showDropSelector,this.defaultValue.showDropSelector,["afterDrop","never"])}}}class fW extends Mt{constructor(){const e={enabled:!0,showPasteSelector:"afterPaste"};super(85,"pasteAs",e,{"editor.pasteAs.enabled":{type:"boolean",default:e.enabled,markdownDescription:m("pasteAs.enabled","Controls whether you can paste content in different ways.")},"editor.pasteAs.showPasteSelector":{type:"string",markdownDescription:m("pasteAs.showPasteSelector","Controls if a widget is shown when pasting content in to the editor. This widget lets you control how the file is pasted."),enum:["afterPaste","never"],enumDescriptions:[m("pasteAs.showPasteSelector.afterPaste","Show the paste selector widget after content is pasted into the editor."),m("pasteAs.showPasteSelector.never","Never show the paste selector widget. Instead the default pasting behavior is always used.")],default:"afterPaste"}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),showPasteSelector:Ht(t.showPasteSelector,this.defaultValue.showPasteSelector,["afterPaste","never"])}}}const gW="Consolas, 'Courier New', monospace",mW="Menlo, Monaco, 'Courier New', monospace",pW="'Droid Sans Mono', 'monospace', monospace",ls={fontFamily:Ue?mW:Un?pW:gW,fontWeight:"normal",fontSize:Ue?12:14,lineHeight:0,letterSpacing:0},Zu=[];function Q(o){return Zu[o.id]=o,o}const Xh={acceptSuggestionOnCommitCharacter:Q(new Je(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:m("acceptSuggestionOnCommitCharacter","Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.")})),acceptSuggestionOnEnter:Q(new Wt(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",m("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:m("acceptSuggestionOnEnter","Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:Q(new I6),accessibilityPageSize:Q(new pt(3,"accessibilityPageSize",10,1,1073741824,{description:m("accessibilityPageSize","Controls the number of lines in the editor that can be read out by a screen reader at once. When we detect a screen reader we automatically set the default to be 500. Warning: this has a performance implication for numbers larger than the default."),tags:["accessibility"]})),ariaLabel:Q(new dn(4,"ariaLabel",m("editorViewAccessibleLabel","Editor content"))),ariaRequired:Q(new Je(5,"ariaRequired",!1,void 0)),screenReaderAnnounceInlineSuggestion:Q(new Je(8,"screenReaderAnnounceInlineSuggestion",!0,{description:m("screenReaderAnnounceInlineSuggestion","Control whether inline suggestions are announced by a screen reader."),tags:["accessibility"]})),autoClosingBrackets:Q(new Wt(6,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",m("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),m("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:m("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingComments:Q(new Wt(7,"autoClosingComments","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",m("editor.autoClosingComments.languageDefined","Use language configurations to determine when to autoclose comments."),m("editor.autoClosingComments.beforeWhitespace","Autoclose comments only when the cursor is to the left of whitespace."),""],description:m("autoClosingComments","Controls whether the editor should automatically close comments after the user adds an opening comment.")})),autoClosingDelete:Q(new Wt(9,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",m("editor.autoClosingDelete.auto","Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:m("autoClosingDelete","Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:Q(new Wt(10,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",m("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:m("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:Q(new Wt(11,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",m("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),m("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:m("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:Q(new vb(12,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],D6,{enumDescriptions:[m("editor.autoIndent.none","The editor will not insert indentation automatically."),m("editor.autoIndent.keep","The editor will keep the current line's indentation."),m("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),m("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),m("editor.autoIndent.full","The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.")],description:m("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:Q(new Je(13,"automaticLayout",!1)),autoSurround:Q(new Wt(14,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[m("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),m("editor.autoSurround.quotes","Surround with quotes but not brackets."),m("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:m("autoSurround","Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),bracketPairColorization:Q(new oW),bracketPairGuides:Q(new rW),stickyTabStops:Q(new Je(117,"stickyTabStops",!1,{description:m("stickyTabStops","Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:Q(new Je(17,"codeLens",!0,{description:m("codeLens","Controls whether the editor shows CodeLens.")})),codeLensFontFamily:Q(new dn(18,"codeLensFontFamily","",{description:m("codeLensFontFamily","Controls the font family for CodeLens.")})),codeLensFontSize:Q(new pt(19,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,markdownDescription:m("codeLensFontSize","Controls the font size in pixels for CodeLens. When set to 0, 90% of `#editor.fontSize#` is used.")})),colorDecorators:Q(new Je(20,"colorDecorators",!0,{description:m("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),colorDecoratorActivatedOn:Q(new Wt(149,"colorDecoratorsActivatedOn","clickAndHover",["clickAndHover","hover","click"],{enumDescriptions:[m("editor.colorDecoratorActivatedOn.clickAndHover","Make the color picker appear both on click and hover of the color decorator"),m("editor.colorDecoratorActivatedOn.hover","Make the color picker appear on hover of the color decorator"),m("editor.colorDecoratorActivatedOn.click","Make the color picker appear on click of the color decorator")],description:m("colorDecoratorActivatedOn","Controls the condition to make a color picker appear from a color decorator")})),colorDecoratorsLimit:Q(new pt(21,"colorDecoratorsLimit",500,1,1e6,{markdownDescription:m("colorDecoratorsLimit","Controls the max number of color decorators that can be rendered in an editor at once.")})),columnSelection:Q(new Je(22,"columnSelection",!1,{description:m("columnSelection","Enable that the selection with the mouse and keys is doing column selection.")})),comments:Q(new E6),contextmenu:Q(new Je(24,"contextmenu",!0)),copyWithSyntaxHighlighting:Q(new Je(25,"copyWithSyntaxHighlighting",!0,{description:m("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:Q(new vb(26,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],N6,{description:m("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:Q(new Wt(27,"cursorSmoothCaretAnimation","off",["off","explicit","on"],{enumDescriptions:[m("cursorSmoothCaretAnimation.off","Smooth caret animation is disabled."),m("cursorSmoothCaretAnimation.explicit","Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture."),m("cursorSmoothCaretAnimation.on","Smooth caret animation is always enabled.")],description:m("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:Q(new vb(28,"cursorStyle",Ai.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],T6,{description:m("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:Q(new pt(29,"cursorSurroundingLines",0,0,1073741824,{description:m("cursorSurroundingLines","Controls the minimal number of visible leading lines (minimum 0) and trailing lines (minimum 1) surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.")})),cursorSurroundingLinesStyle:Q(new Wt(30,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[m("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),m("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],markdownDescription:m("cursorSurroundingLinesStyle","Controls when `#editor.cursorSurroundingLines#` should be enforced.")})),cursorWidth:Q(new pt(31,"cursorWidth",0,0,1073741824,{markdownDescription:m("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:Q(new Je(32,"disableLayerHinting",!1)),disableMonospaceOptimizations:Q(new Je(33,"disableMonospaceOptimizations",!1)),domReadOnly:Q(new Je(34,"domReadOnly",!1)),dragAndDrop:Q(new Je(35,"dragAndDrop",!0,{description:m("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:Q(new R6),dropIntoEditor:Q(new uW),stickyScroll:Q(new V6),experimentalWhitespaceRendering:Q(new Wt(38,"experimentalWhitespaceRendering","svg",["svg","font","off"],{enumDescriptions:[m("experimentalWhitespaceRendering.svg","Use a new rendering method with svgs."),m("experimentalWhitespaceRendering.font","Use a new rendering method with font characters."),m("experimentalWhitespaceRendering.off","Use the stable rendering method.")],description:m("experimentalWhitespaceRendering","Controls whether whitespace is rendered with a new, experimental method.")})),extraEditorClassName:Q(new dn(39,"extraEditorClassName","")),fastScrollSensitivity:Q(new Ts(40,"fastScrollSensitivity",5,o=>o<=0?5:o,{markdownDescription:m("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:Q(new A6),fixedOverflowWidgets:Q(new Je(42,"fixedOverflowWidgets",!1)),folding:Q(new Je(43,"folding",!0,{description:m("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:Q(new Wt(44,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[m("foldingStrategy.auto","Use a language-specific folding strategy if available, else the indentation-based one."),m("foldingStrategy.indentation","Use the indentation-based folding strategy.")],description:m("foldingStrategy","Controls the strategy for computing folding ranges.")})),foldingHighlight:Q(new Je(45,"foldingHighlight",!0,{description:m("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),foldingImportsByDefault:Q(new Je(46,"foldingImportsByDefault",!1,{description:m("foldingImportsByDefault","Controls whether the editor automatically collapses import ranges.")})),foldingMaximumRegions:Q(new pt(47,"foldingMaximumRegions",5e3,10,65e3,{description:m("foldingMaximumRegions","The maximum number of foldable regions. Increasing this value may result in the editor becoming less responsive when the current source has a large number of foldable regions.")})),unfoldOnClickAfterEndOfLine:Q(new Je(48,"unfoldOnClickAfterEndOfLine",!1,{description:m("unfoldOnClickAfterEndOfLine","Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:Q(new dn(49,"fontFamily",ls.fontFamily,{description:m("fontFamily","Controls the font family.")})),fontInfo:Q(new P6),fontLigatures2:Q(new Mc),fontSize:Q(new O6),fontWeight:Q(new IL),fontVariations:Q(new Hp),formatOnPaste:Q(new Je(55,"formatOnPaste",!1,{description:m("formatOnPaste","Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.")})),formatOnType:Q(new Je(56,"formatOnType",!1,{description:m("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:Q(new Je(57,"glyphMargin",!0,{description:m("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:Q(new F6),hideCursorInOverviewRuler:Q(new Je(59,"hideCursorInOverviewRuler",!1,{description:m("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),hover:Q(new B6),inDiffEditor:Q(new Je(61,"inDiffEditor",!1)),letterSpacing:Q(new Ts(64,"letterSpacing",ls.letterSpacing,o=>Ts.clamp(o,-5,20),{description:m("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:Q(new H6),lineDecorationsWidth:Q(new U6),lineHeight:Q(new $6),lineNumbers:Q(new X6),lineNumbersMinChars:Q(new pt(69,"lineNumbersMinChars",5,1,300)),linkedEditing:Q(new Je(70,"linkedEditing",!1,{description:m("linkedEditing","Controls whether the editor has linked editing enabled. Depending on the language, related symbols such as HTML tags, are updated while editing.")})),links:Q(new Je(71,"links",!0,{description:m("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:Q(new Wt(72,"matchBrackets","always",["always","near","never"],{description:m("matchBrackets","Highlight matching brackets.")})),minimap:Q(new K6),mouseStyle:Q(new Wt(74,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:Q(new Ts(75,"mouseWheelScrollSensitivity",1,o=>o===0?1:o,{markdownDescription:m("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:Q(new Je(76,"mouseWheelZoom",!1,{markdownDescription:Ue?m("mouseWheelZoom.mac","Zoom the font of the editor when using mouse wheel and holding `Cmd`."):m("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:Q(new Je(77,"multiCursorMergeOverlapping",!0,{description:m("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:Q(new vb(78,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],j6,{markdownEnumDescriptions:[m("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),m("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:m({key:"multiCursorModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add multiple cursors with the mouse. The Go to Definition and Open Link mouse gestures will adapt such that they do not conflict with the [multicursor modifier](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).")})),multiCursorPaste:Q(new Wt(79,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[m("multiCursorPaste.spread","Each cursor pastes a single line of the text."),m("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:m("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),multiCursorLimit:Q(new pt(80,"multiCursorLimit",1e4,1,1e5,{markdownDescription:m("multiCursorLimit","Controls the max number of cursors that can be in an active editor at once.")})),occurrencesHighlight:Q(new Wt(81,"occurrencesHighlight","singleFile",["off","singleFile","multiFile"],{markdownEnumDescriptions:[m("occurrencesHighlight.off","Does not highlight occurrences."),m("occurrencesHighlight.singleFile","Highlights occurrences only in the current file."),m("occurrencesHighlight.multiFile","Experimental: Highlights occurrences across all valid open files.")],markdownDescription:m("occurrencesHighlight","Controls whether occurrences should be highlighted across open files.")})),overviewRulerBorder:Q(new Je(82,"overviewRulerBorder",!0,{description:m("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:Q(new pt(83,"overviewRulerLanes",3,0,3)),padding:Q(new q6),pasteAs:Q(new fW),parameterHints:Q(new G6),peekWidgetDefaultFocus:Q(new Wt(87,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[m("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),m("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:m("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),placeholder:Q(new Y6),definitionLinkOpensInPeek:Q(new Je(89,"definitionLinkOpensInPeek",!1,{description:m("definitionLinkOpensInPeek","Controls whether the Go to Definition mouse gesture always opens the peek widget.")})),quickSuggestions:Q(new Q6),quickSuggestionsDelay:Q(new pt(91,"quickSuggestionsDelay",10,0,1073741824,{description:m("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:Q(new Je(92,"readOnly",!1)),readOnlyMessage:Q(new eW),renameOnType:Q(new Je(94,"renameOnType",!1,{description:m("renameOnType","Controls whether the editor auto renames on type."),markdownDeprecationMessage:m("renameOnTypeDeprecate","Deprecated, use `editor.linkedEditing` instead.")})),renderControlCharacters:Q(new Je(95,"renderControlCharacters",!0,{description:m("renderControlCharacters","Controls whether the editor should render control characters."),restricted:!0})),renderFinalNewline:Q(new Wt(96,"renderFinalNewline",Un?"dimmed":"on",["off","on","dimmed"],{description:m("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:Q(new Wt(97,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",m("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:m("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderLineHighlightOnlyWhenFocus:Q(new Je(98,"renderLineHighlightOnlyWhenFocus",!1,{description:m("renderLineHighlightOnlyWhenFocus","Controls if the editor should render the current line highlight only when the editor is focused.")})),renderValidationDecorations:Q(new Wt(99,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:Q(new Wt(100,"renderWhitespace","selection",["none","boundary","selection","trailing","all"],{enumDescriptions:["",m("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),m("renderWhitespace.selection","Render whitespace characters only on selected text."),m("renderWhitespace.trailing","Render only trailing whitespace characters."),""],description:m("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:Q(new pt(101,"revealHorizontalRightPadding",15,0,1e3)),roundedSelection:Q(new Je(102,"roundedSelection",!0,{description:m("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:Q(new J6),scrollbar:Q(new tW),scrollBeyondLastColumn:Q(new pt(105,"scrollBeyondLastColumn",4,0,1073741824,{description:m("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:Q(new Je(106,"scrollBeyondLastLine",!0,{description:m("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),scrollPredominantAxis:Q(new Je(107,"scrollPredominantAxis",!0,{description:m("scrollPredominantAxis","Scroll only along the predominant axis when scrolling both vertically and horizontally at the same time. Prevents horizontal drift when scrolling vertically on a trackpad.")})),selectionClipboard:Q(new Je(108,"selectionClipboard",!0,{description:m("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:Un})),selectionHighlight:Q(new Je(109,"selectionHighlight",!0,{description:m("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:Q(new Je(110,"selectOnLineNumbers",!0)),showFoldingControls:Q(new Wt(111,"showFoldingControls","mouseover",["always","never","mouseover"],{enumDescriptions:[m("showFoldingControls.always","Always show the folding controls."),m("showFoldingControls.never","Never show the folding controls and reduce the gutter size."),m("showFoldingControls.mouseover","Only show the folding controls when the mouse is over the gutter.")],description:m("showFoldingControls","Controls when the folding controls on the gutter are shown.")})),showUnused:Q(new Je(112,"showUnused",!0,{description:m("showUnused","Controls fading out of unused code.")})),showDeprecated:Q(new Je(141,"showDeprecated",!0,{description:m("showDeprecated","Controls strikethrough deprecated variables.")})),inlayHints:Q(new z6),snippetSuggestions:Q(new Wt(113,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[m("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),m("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),m("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),m("snippetSuggestions.none","Do not show snippet suggestions.")],description:m("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smartSelect:Q(new lW),smoothScrolling:Q(new Je(115,"smoothScrolling",!1,{description:m("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:Q(new pt(118,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:Q(new aW),inlineSuggest:Q(new nW),inlineEdit:Q(new sW),inlineCompletionsAccessibilityVerbose:Q(new Je(150,"inlineCompletionsAccessibilityVerbose",!1,{description:m("inlineCompletionsAccessibilityVerbose","Controls whether the accessibility hint should be provided to screen reader users when an inline completion is shown.")})),suggestFontSize:Q(new pt(120,"suggestFontSize",0,0,1e3,{markdownDescription:m("suggestFontSize","Font size for the suggest widget. When set to {0}, the value of {1} is used.","`0`","`#editor.fontSize#`")})),suggestLineHeight:Q(new pt(121,"suggestLineHeight",0,0,1e3,{markdownDescription:m("suggestLineHeight","Line height for the suggest widget. When set to {0}, the value of {1} is used. The minimum value is 8.","`0`","`#editor.lineHeight#`")})),suggestOnTriggerCharacters:Q(new Je(122,"suggestOnTriggerCharacters",!0,{description:m("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:Q(new Wt(123,"suggestSelection","first",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[m("suggestSelection.first","Always select the first suggestion."),m("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),m("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:m("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:Q(new Wt(124,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[m("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),m("tabCompletion.off","Disable tab completions."),m("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:m("tabCompletion","Enables tab completions.")})),tabIndex:Q(new pt(125,"tabIndex",0,-1,1073741824)),unicodeHighlight:Q(new iW),unusualLineTerminators:Q(new Wt(127,"unusualLineTerminators","prompt",["auto","off","prompt"],{enumDescriptions:[m("unusualLineTerminators.auto","Unusual line terminators are automatically removed."),m("unusualLineTerminators.off","Unusual line terminators are ignored."),m("unusualLineTerminators.prompt","Unusual line terminators prompt to be removed.")],description:m("unusualLineTerminators","Remove unusual line terminators that might cause problems.")})),useShadowDOM:Q(new Je(128,"useShadowDOM",!0)),useTabStops:Q(new Je(129,"useTabStops",!0,{description:m("useTabStops","Spaces and tabs are inserted and deleted in alignment with tab stops.")})),wordBreak:Q(new Wt(130,"wordBreak","normal",["normal","keepAll"],{markdownEnumDescriptions:[m("wordBreak.normal","Use the default line break rule."),m("wordBreak.keepAll","Word breaks should not be used for Chinese/Japanese/Korean (CJK) text. Non-CJK text behavior is the same as for normal.")],description:m("wordBreak","Controls the word break rules used for Chinese/Japanese/Korean (CJK) text.")})),wordSegmenterLocales:Q(new cW),wordSeparators:Q(new dn(132,"wordSeparators",$5,{description:m("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:Q(new Wt(133,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[m("wordWrap.off","Lines will never wrap."),m("wordWrap.on","Lines will wrap at the viewport width."),m({key:"wordWrap.wordWrapColumn",comment:["- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at `#editor.wordWrapColumn#`."),m({key:"wordWrap.bounded",comment:["- viewport means the edge of the visible window size.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:m({key:"wordWrap",comment:["- 'off', 'on', 'wordWrapColumn' and 'bounded' refer to values the setting can take and should not be localized.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:Q(new dn(134,"wordWrapBreakAfterCharacters"," })]?|/&.,;¢°′″‰℃、。。、¢,.:;?!%・・ゝゞヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ァィゥェォャュョッー”〉》」』】〕)]}」")),wordWrapBreakBeforeCharacters:Q(new dn(135,"wordWrapBreakBeforeCharacters","([{‘“〈《「『【〔([{「£¥$£¥++")),wordWrapColumn:Q(new pt(136,"wordWrapColumn",80,1,1073741824,{markdownDescription:m({key:"wordWrapColumn",comment:["- `editor.wordWrap` refers to a different setting and should not be localized.","- 'wordWrapColumn' and 'bounded' refer to values the different setting can take and should not be localized."]},"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapOverride1:Q(new Wt(137,"wordWrapOverride1","inherit",["off","on","inherit"])),wordWrapOverride2:Q(new Wt(138,"wordWrapOverride2","inherit",["off","on","inherit"])),editorClassName:Q(new M6),defaultColorDecorators:Q(new Je(148,"defaultColorDecorators",!1,{markdownDescription:m("defaultColorDecorators","Controls whether inline color decorations should be shown using the default document color provider")})),pixelRatio:Q(new Z6),tabFocusMode:Q(new Je(145,"tabFocusMode",!1,{markdownDescription:m("tabFocusMode","Controls whether the editor receives tabs or defers them to the workbench for navigation.")})),layoutInfo:Q(new Ef),wrappingInfo:Q(new hW),wrappingIndent:Q(new dW),wrappingStrategy:Q(new W6)};class _W{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?ig.isErrorNoTelemetry(e)?new ig(e.message+` - -`+e.stack):new Error(e.message+` - -`+e.stack):e},0)}}emit(e){this.listeners.forEach(t=>{t(e)})}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}}const G5=new _W;function Ze(o){$c(o)||G5.onUnexpectedError(o)}function $n(o){$c(o)||G5.onUnexpectedExternalError(o)}function HM(o){if(o instanceof Error){const{name:e,message:t}=o,i=o.stacktrace||o.stack;return{$isError:!0,name:e,message:t,stack:i,noTelemetry:ig.isErrorNoTelemetry(o)}}return o}const aC="Canceled";function $c(o){return o instanceof ha?!0:o instanceof Error&&o.name===aC&&o.message===aC}class ha extends Error{constructor(){super(aC),this.name=this.message}}function bW(){const o=new Error(aC);return o.name=o.message,o}function na(o){return o?new Error(`Illegal argument: ${o}`):new Error("Illegal argument")}function TN(o){return o?new Error(`Illegal state: ${o}`):new Error("Illegal state")}class CW extends Error{constructor(e){super("NotSupported"),e&&(this.message=e)}}class ig extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof ig)return e;const t=new ig;return t.message=e.message,t.stack=e.stack,t}static isErrorNoTelemetry(e){return e.name==="CodeExpectedError"}}class nt extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,nt.prototype)}}function ng(o,e){const t=this;let i=!1,n;return function(){return i||(i=!0,n=o.apply(t,arguments)),n}}function MN(o){return typeof o=="object"&&o!==null&&typeof o.dispose=="function"&&o.dispose.length===0}function xt(o){if(st.is(o)){const e=[];for(const t of o)if(t)try{t.dispose()}catch(i){e.push(i)}if(e.length===1)throw e[0];if(e.length>1)throw new AggregateError(e,"Encountered errors while disposing of store");return Array.isArray(o)?[]:o}else if(o)return o.dispose(),o}function No(...o){return _e(()=>xt(o))}function _e(o){return{dispose:ng(()=>{o()})}}const bw=class bw{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{xt(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?bw.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e}deleteAndLeak(e){e&&this._toDispose.has(e)&&this._toDispose.delete(e)}};bw.DISABLE_DISPOSED_WARNING=!1;let X=bw;const kM=class kM{constructor(){this._store=new X,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}};kM.None=Object.freeze({dispose(){}});let z=kM;class Dn{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){this._isDisposed||e===this._value||(this._value?.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}}class vW{constructor(e){this.object=e}dispose(){}}class RN{constructor(){this._store=new Map,this._isDisposed=!1}dispose(){this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{xt(this._store.values())}finally{this._store.clear()}}get(e){return this._store.get(e)}set(e,t,i=!1){this._isDisposed&&console.warn(new Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),i||this._store.get(e)?.dispose(),this._store.set(e,t)}deleteAndDispose(e){this._store.get(e)?.dispose(),this._store.delete(e)}[Symbol.iterator](){return this._store[Symbol.iterator]()}}const wW=globalThis.performance&&typeof globalThis.performance.now=="function";class Hs{static create(e){return new Hs(e)}constructor(e){this._now=wW&&e===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}}var J;(function(o){o.None=()=>z.None;function e(j,B){return u(j,()=>{},0,void 0,!0,void 0,B)}o.defer=e;function t(j){return(B,G=null,ne)=>{let ae=!1,de;return de=j(se=>{if(!ae)return de?de.dispose():ae=!0,B.call(G,se)},null,ne),ae&&de.dispose(),de}}o.once=t;function i(j,B){return o.once(o.filter(j,B))}o.onceIf=i;function n(j,B,G){return d((ne,ae=null,de)=>j(se=>ne.call(ae,B(se)),null,de),G)}o.map=n;function s(j,B,G){return d((ne,ae=null,de)=>j(se=>{B(se),ne.call(ae,se)},null,de),G)}o.forEach=s;function r(j,B,G){return d((ne,ae=null,de)=>j(se=>B(se)&&ne.call(ae,se),null,de),G)}o.filter=r;function a(j){return j}o.signal=a;function l(...j){return(B,G=null,ne)=>{const ae=No(...j.map(de=>de(se=>B.call(G,se))));return h(ae,ne)}}o.any=l;function c(j,B,G,ne){let ae=G;return n(j,de=>(ae=B(ae,de),ae),ne)}o.reduce=c;function d(j,B){let G;const ne={onWillAddFirstListener(){G=j(ae.fire,ae)},onDidRemoveLastListener(){G?.dispose()}},ae=new A(ne);return B?.add(ae),ae.event}function h(j,B){return B instanceof Array?B.push(j):B&&B.add(j),j}function u(j,B,G=100,ne=!1,ae=!1,de,se){let be,we,Rt,ct=0,Bt;const ht={leakWarningThreshold:de,onWillAddFirstListener(){be=j(js=>{ct++,we=B(we,js),ne&&!Rt&&(ei.fire(we),we=void 0),Bt=()=>{const fi=we;we=void 0,Rt=void 0,(!ne||ct>1)&&ei.fire(fi),ct=0},typeof G=="number"?(clearTimeout(Rt),Rt=setTimeout(Bt,G)):Rt===void 0&&(Rt=0,queueMicrotask(Bt))})},onWillRemoveListener(){ae&&ct>0&&Bt?.()},onDidRemoveLastListener(){Bt=void 0,be.dispose()}},ei=new A(ht);return se?.add(ei),ei.event}o.debounce=u;function f(j,B=0,G){return o.debounce(j,(ne,ae)=>ne?(ne.push(ae),ne):[ae],B,void 0,!0,void 0,G)}o.accumulate=f;function g(j,B=(ne,ae)=>ne===ae,G){let ne=!0,ae;return r(j,de=>{const se=ne||!B(de,ae);return ne=!1,ae=de,se},G)}o.latch=g;function p(j,B,G){return[o.filter(j,B,G),o.filter(j,ne=>!B(ne),G)]}o.split=p;function _(j,B=!1,G=[],ne){let ae=G.slice(),de=j(we=>{ae?ae.push(we):be.fire(we)});ne&&ne.add(de);const se=()=>{ae?.forEach(we=>be.fire(we)),ae=null},be=new A({onWillAddFirstListener(){de||(de=j(we=>be.fire(we)),ne&&ne.add(de))},onDidAddFirstListener(){ae&&(B?setTimeout(se):se())},onDidRemoveLastListener(){de&&de.dispose(),de=null}});return ne&&ne.add(be),be.event}o.buffer=_;function b(j,B){return(ne,ae,de)=>{const se=B(new w);return j(function(be){const we=se.evaluate(be);we!==C&&ne.call(ae,we)},void 0,de)}}o.chain=b;const C=Symbol("HaltChainable");class w{constructor(){this.steps=[]}map(B){return this.steps.push(B),this}forEach(B){return this.steps.push(G=>(B(G),G)),this}filter(B){return this.steps.push(G=>B(G)?G:C),this}reduce(B,G){let ne=G;return this.steps.push(ae=>(ne=B(ne,ae),ne)),this}latch(B=(G,ne)=>G===ne){let G=!0,ne;return this.steps.push(ae=>{const de=G||!B(ae,ne);return G=!1,ne=ae,de?ae:C}),this}evaluate(B){for(const G of this.steps)if(B=G(B),B===C)break;return B}}function v(j,B,G=ne=>ne){const ne=(...be)=>se.fire(G(...be)),ae=()=>j.on(B,ne),de=()=>j.removeListener(B,ne),se=new A({onWillAddFirstListener:ae,onDidRemoveLastListener:de});return se.event}o.fromNodeEventEmitter=v;function y(j,B,G=ne=>ne){const ne=(...be)=>se.fire(G(...be)),ae=()=>j.addEventListener(B,ne),de=()=>j.removeEventListener(B,ne),se=new A({onWillAddFirstListener:ae,onDidRemoveLastListener:de});return se.event}o.fromDOMEventEmitter=y;function x(j){return new Promise(B=>t(j)(B))}o.toPromise=x;function L(j){const B=new A;return j.then(G=>{B.fire(G)},()=>{B.fire(void 0)}).finally(()=>{B.dispose()}),B.event}o.fromPromise=L;function E(j,B){return j(G=>B.fire(G))}o.forward=E;function N(j,B,G){return B(G),j(ne=>B(ne))}o.runAndSubscribe=N;class H{constructor(B,G){this._observable=B,this._counter=0,this._hasChanged=!1;const ne={onWillAddFirstListener:()=>{B.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{B.removeObserver(this)}};this.emitter=new A(ne),G&&G.add(this.emitter)}beginUpdate(B){this._counter++}handlePossibleChange(B){}handleChange(B,G){this._hasChanged=!0}endUpdate(B){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function F(j,B){return new H(j,B).emitter.event}o.fromObservable=F;function W(j){return(B,G,ne)=>{let ae=0,de=!1;const se={beginUpdate(){ae++},endUpdate(){ae--,ae===0&&(j.reportChanges(),de&&(de=!1,B.call(G)))},handlePossibleChange(){},handleChange(){de=!0}};j.addObserver(se),j.reportChanges();const be={dispose(){j.removeObserver(se)}};return ne instanceof X?ne.add(be):Array.isArray(ne)&&ne.push(be),be}}o.fromObservableLight=W})(J||(J={}));const _f=class _f{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${_f._idPool++}`,_f.all.add(this)}start(e){this._stopWatch=new Hs,this.listenerCount=e}stop(){if(this._stopWatch){const e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}};_f.all=new Set,_f._idPool=0;let EL=_f,yW=-1;const Cw=class Cw{constructor(e,t,i=(Cw._idPool++).toString(16).padStart(3,"0")){this._errorHandler=e,this.threshold=t,this.name=i,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(e,t){const i=this.threshold;if(i<=0||t{const s=this._stacks.get(e.value)||0;this._stacks.set(e.value,s-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,t=0;for(const[i,n]of this._stacks)(!e||t{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){const a=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(a);const l=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],c=new LW(`${a}. HINT: Stack shows most frequent listener (${l[1]}-times)`,l[0]);return(this._options?.onListenerError||Ze)(c),z.None}if(this._disposed)return z.None;t&&(e=e.bind(t));const n=new jy(e);let s;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(n.stack=AN.create(),s=this._leakageMon.check(n.stack,this._size+1)),this._listeners?this._listeners instanceof jy?(this._deliveryQueue??=new Z5,this._listeners=[this._listeners,n]):this._listeners.push(n):(this._options?.onWillAddFirstListener?.(this),this._listeners=n,this._options?.onDidAddFirstListener?.(this)),this._size++;const r=_e(()=>{s?.(),this._removeListener(n)});return i instanceof X?i.add(r):Array.isArray(i)&&i.push(r),r},this._event}_removeListener(e){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(this._size===1){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}const t=this._listeners,i=t.indexOf(e);if(i===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,t[i]=void 0;const n=this._deliveryQueue.current===this;if(this._size*xW<=t.length){let s=0;for(let r=0;r0}}const kW=()=>new Z5;class Z5{constructor(){this.i=-1,this.end=0}enqueue(e,t,i){this.i=0,this.end=i,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}}class Nh extends A{constructor(e){super(e),this._isPaused=0,this._eventQueue=new yn,this._mergeFn=e?.merge}pause(){this._isPaused++}resume(){if(this._isPaused!==0&&--this._isPaused===0)if(this._mergeFn){if(this._eventQueue.size>0){const e=Array.from(this._eventQueue);this._eventQueue.clear(),super.fire(this._mergeFn(e))}}else for(;!this._isPaused&&this._eventQueue.size!==0;)super.fire(this._eventQueue.shift())}fire(e){this._size&&(this._isPaused!==0?this._eventQueue.push(e):super.fire(e))}}class Y5 extends Nh{constructor(e){super(e),this._delay=e.delay??100}fire(e){this._handle||(this.pause(),this._handle=setTimeout(()=>{this._handle=void 0,this.resume()},this._delay)),super.fire(e)}}class DW extends A{constructor(e){super(e),this._queuedEvents=[],this._mergeFn=e?.merge}fire(e){this.hasListeners()&&(this._queuedEvents.push(e),this._queuedEvents.length===1&&queueMicrotask(()=>{this._mergeFn?super.fire(this._mergeFn(this._queuedEvents)):this._queuedEvents.forEach(t=>super.fire(t)),this._queuedEvents=[]}))}}class IW{constructor(){this.hasListeners=!1,this.events=[],this.emitter=new A({onWillAddFirstListener:()=>this.onFirstListenerAdd(),onDidRemoveLastListener:()=>this.onLastListenerRemove()})}get event(){return this.emitter.event}add(e){const t={event:e,listener:null};return this.events.push(t),this.hasListeners&&this.hook(t),_e(ng(()=>{this.hasListeners&&this.unhook(t);const n=this.events.indexOf(t);this.events.splice(n,1)}))}onFirstListenerAdd(){this.hasListeners=!0,this.events.forEach(e=>this.hook(e))}onLastListenerRemove(){this.hasListeners=!1,this.events.forEach(e=>this.unhook(e))}hook(e){e.listener=e.event(t=>this.emitter.fire(t))}unhook(e){e.listener?.dispose(),e.listener=null}dispose(){this.emitter.dispose();for(const e of this.events)e.listener?.dispose();this.events=[]}}class W_{constructor(){this.data=[]}wrapEvent(e,t,i){return(n,s,r)=>e(a=>{const l=this.data[this.data.length-1];if(!t){l?l.buffers.push(()=>n.call(s,a)):n.call(s,a);return}const c=l;if(!c){n.call(s,t(i,a));return}c.items??=[],c.items.push(a),c.buffers.length===0&&l.buffers.push(()=>{c.reducedResult??=i?c.items.reduce(t,i):c.items.reduce(t),n.call(s,c.reducedResult)})},void 0,r)}bufferEvents(e){const t={buffers:new Array};this.data.push(t);const i=e();return this.data.pop(),t.buffers.forEach(n=>n()),i}}class VM{constructor(){this.listening=!1,this.inputEvent=J.None,this.inputEventListener=z.None,this.emitter=new A({onDidAddFirstListener:()=>{this.listening=!0,this.inputEventListener=this.inputEvent(this.emitter.fire,this.emitter)},onDidRemoveLastListener:()=>{this.listening=!1,this.inputEventListener.dispose()}}),this.event=this.emitter.event}set input(e){this.inputEvent=e,this.listening&&(this.inputEventListener.dispose(),this.inputEventListener=e(this.emitter.fire,this.emitter))}dispose(){this.inputEventListener.dispose(),this.emitter.dispose()}}const Q5=Object.freeze(function(o,e){const t=setTimeout(o.bind(e),0);return{dispose(){clearTimeout(t)}}});var ut;(function(o){function e(t){return t===o.None||t===o.Cancelled||t instanceof w1?!0:!t||typeof t!="object"?!1:typeof t.isCancellationRequested=="boolean"&&typeof t.onCancellationRequested=="function"}o.isCancellationToken=e,o.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:J.None}),o.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Q5})})(ut||(ut={}));class w1{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?Q5:(this._emitter||(this._emitter=new A),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class In{constructor(e){this._token=void 0,this._parentListener=void 0,this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new w1),this._token}cancel(){this._token?this._token instanceof w1&&this._token.cancel():this._token=ut.Cancelled}dispose(e=!1){e&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof w1&&this._token.dispose():this._token=ut.None}}function zM(o){const e=new In;return o.add({dispose(){e.cancel()}}),e.token}class PN{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}}const y1=new PN,TL=new PN,ML=new PN,X5=new Array(230),EW=Object.create(null),NW=Object.create(null),ON=[];for(let o=0;o<=193;o++)ON[o]=-1;(function(){const e=[[1,0,"None",0,"unknown",0,"VK_UNKNOWN","",""],[1,1,"Hyper",0,"",0,"","",""],[1,2,"Super",0,"",0,"","",""],[1,3,"Fn",0,"",0,"","",""],[1,4,"FnLock",0,"",0,"","",""],[1,5,"Suspend",0,"",0,"","",""],[1,6,"Resume",0,"",0,"","",""],[1,7,"Turbo",0,"",0,"","",""],[1,8,"Sleep",0,"",0,"VK_SLEEP","",""],[1,9,"WakeUp",0,"",0,"","",""],[0,10,"KeyA",31,"A",65,"VK_A","",""],[0,11,"KeyB",32,"B",66,"VK_B","",""],[0,12,"KeyC",33,"C",67,"VK_C","",""],[0,13,"KeyD",34,"D",68,"VK_D","",""],[0,14,"KeyE",35,"E",69,"VK_E","",""],[0,15,"KeyF",36,"F",70,"VK_F","",""],[0,16,"KeyG",37,"G",71,"VK_G","",""],[0,17,"KeyH",38,"H",72,"VK_H","",""],[0,18,"KeyI",39,"I",73,"VK_I","",""],[0,19,"KeyJ",40,"J",74,"VK_J","",""],[0,20,"KeyK",41,"K",75,"VK_K","",""],[0,21,"KeyL",42,"L",76,"VK_L","",""],[0,22,"KeyM",43,"M",77,"VK_M","",""],[0,23,"KeyN",44,"N",78,"VK_N","",""],[0,24,"KeyO",45,"O",79,"VK_O","",""],[0,25,"KeyP",46,"P",80,"VK_P","",""],[0,26,"KeyQ",47,"Q",81,"VK_Q","",""],[0,27,"KeyR",48,"R",82,"VK_R","",""],[0,28,"KeyS",49,"S",83,"VK_S","",""],[0,29,"KeyT",50,"T",84,"VK_T","",""],[0,30,"KeyU",51,"U",85,"VK_U","",""],[0,31,"KeyV",52,"V",86,"VK_V","",""],[0,32,"KeyW",53,"W",87,"VK_W","",""],[0,33,"KeyX",54,"X",88,"VK_X","",""],[0,34,"KeyY",55,"Y",89,"VK_Y","",""],[0,35,"KeyZ",56,"Z",90,"VK_Z","",""],[0,36,"Digit1",22,"1",49,"VK_1","",""],[0,37,"Digit2",23,"2",50,"VK_2","",""],[0,38,"Digit3",24,"3",51,"VK_3","",""],[0,39,"Digit4",25,"4",52,"VK_4","",""],[0,40,"Digit5",26,"5",53,"VK_5","",""],[0,41,"Digit6",27,"6",54,"VK_6","",""],[0,42,"Digit7",28,"7",55,"VK_7","",""],[0,43,"Digit8",29,"8",56,"VK_8","",""],[0,44,"Digit9",30,"9",57,"VK_9","",""],[0,45,"Digit0",21,"0",48,"VK_0","",""],[1,46,"Enter",3,"Enter",13,"VK_RETURN","",""],[1,47,"Escape",9,"Escape",27,"VK_ESCAPE","",""],[1,48,"Backspace",1,"Backspace",8,"VK_BACK","",""],[1,49,"Tab",2,"Tab",9,"VK_TAB","",""],[1,50,"Space",10,"Space",32,"VK_SPACE","",""],[0,51,"Minus",88,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[0,52,"Equal",86,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[0,53,"BracketLeft",92,"[",219,"VK_OEM_4","[","OEM_4"],[0,54,"BracketRight",94,"]",221,"VK_OEM_6","]","OEM_6"],[0,55,"Backslash",93,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,56,"IntlHash",0,"",0,"","",""],[0,57,"Semicolon",85,";",186,"VK_OEM_1",";","OEM_1"],[0,58,"Quote",95,"'",222,"VK_OEM_7","'","OEM_7"],[0,59,"Backquote",91,"`",192,"VK_OEM_3","`","OEM_3"],[0,60,"Comma",87,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[0,61,"Period",89,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[0,62,"Slash",90,"/",191,"VK_OEM_2","/","OEM_2"],[1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL","",""],[1,64,"F1",59,"F1",112,"VK_F1","",""],[1,65,"F2",60,"F2",113,"VK_F2","",""],[1,66,"F3",61,"F3",114,"VK_F3","",""],[1,67,"F4",62,"F4",115,"VK_F4","",""],[1,68,"F5",63,"F5",116,"VK_F5","",""],[1,69,"F6",64,"F6",117,"VK_F6","",""],[1,70,"F7",65,"F7",118,"VK_F7","",""],[1,71,"F8",66,"F8",119,"VK_F8","",""],[1,72,"F9",67,"F9",120,"VK_F9","",""],[1,73,"F10",68,"F10",121,"VK_F10","",""],[1,74,"F11",69,"F11",122,"VK_F11","",""],[1,75,"F12",70,"F12",123,"VK_F12","",""],[1,76,"PrintScreen",0,"",0,"","",""],[1,77,"ScrollLock",84,"ScrollLock",145,"VK_SCROLL","",""],[1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE","",""],[1,79,"Insert",19,"Insert",45,"VK_INSERT","",""],[1,80,"Home",14,"Home",36,"VK_HOME","",""],[1,81,"PageUp",11,"PageUp",33,"VK_PRIOR","",""],[1,82,"Delete",20,"Delete",46,"VK_DELETE","",""],[1,83,"End",13,"End",35,"VK_END","",""],[1,84,"PageDown",12,"PageDown",34,"VK_NEXT","",""],[1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",""],[1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",""],[1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",""],[1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",""],[1,89,"NumLock",83,"NumLock",144,"VK_NUMLOCK","",""],[1,90,"NumpadDivide",113,"NumPad_Divide",111,"VK_DIVIDE","",""],[1,91,"NumpadMultiply",108,"NumPad_Multiply",106,"VK_MULTIPLY","",""],[1,92,"NumpadSubtract",111,"NumPad_Subtract",109,"VK_SUBTRACT","",""],[1,93,"NumpadAdd",109,"NumPad_Add",107,"VK_ADD","",""],[1,94,"NumpadEnter",3,"",0,"","",""],[1,95,"Numpad1",99,"NumPad1",97,"VK_NUMPAD1","",""],[1,96,"Numpad2",100,"NumPad2",98,"VK_NUMPAD2","",""],[1,97,"Numpad3",101,"NumPad3",99,"VK_NUMPAD3","",""],[1,98,"Numpad4",102,"NumPad4",100,"VK_NUMPAD4","",""],[1,99,"Numpad5",103,"NumPad5",101,"VK_NUMPAD5","",""],[1,100,"Numpad6",104,"NumPad6",102,"VK_NUMPAD6","",""],[1,101,"Numpad7",105,"NumPad7",103,"VK_NUMPAD7","",""],[1,102,"Numpad8",106,"NumPad8",104,"VK_NUMPAD8","",""],[1,103,"Numpad9",107,"NumPad9",105,"VK_NUMPAD9","",""],[1,104,"Numpad0",98,"NumPad0",96,"VK_NUMPAD0","",""],[1,105,"NumpadDecimal",112,"NumPad_Decimal",110,"VK_DECIMAL","",""],[0,106,"IntlBackslash",97,"OEM_102",226,"VK_OEM_102","",""],[1,107,"ContextMenu",58,"ContextMenu",93,"","",""],[1,108,"Power",0,"",0,"","",""],[1,109,"NumpadEqual",0,"",0,"","",""],[1,110,"F13",71,"F13",124,"VK_F13","",""],[1,111,"F14",72,"F14",125,"VK_F14","",""],[1,112,"F15",73,"F15",126,"VK_F15","",""],[1,113,"F16",74,"F16",127,"VK_F16","",""],[1,114,"F17",75,"F17",128,"VK_F17","",""],[1,115,"F18",76,"F18",129,"VK_F18","",""],[1,116,"F19",77,"F19",130,"VK_F19","",""],[1,117,"F20",78,"F20",131,"VK_F20","",""],[1,118,"F21",79,"F21",132,"VK_F21","",""],[1,119,"F22",80,"F22",133,"VK_F22","",""],[1,120,"F23",81,"F23",134,"VK_F23","",""],[1,121,"F24",82,"F24",135,"VK_F24","",""],[1,122,"Open",0,"",0,"","",""],[1,123,"Help",0,"",0,"","",""],[1,124,"Select",0,"",0,"","",""],[1,125,"Again",0,"",0,"","",""],[1,126,"Undo",0,"",0,"","",""],[1,127,"Cut",0,"",0,"","",""],[1,128,"Copy",0,"",0,"","",""],[1,129,"Paste",0,"",0,"","",""],[1,130,"Find",0,"",0,"","",""],[1,131,"AudioVolumeMute",117,"AudioVolumeMute",173,"VK_VOLUME_MUTE","",""],[1,132,"AudioVolumeUp",118,"AudioVolumeUp",175,"VK_VOLUME_UP","",""],[1,133,"AudioVolumeDown",119,"AudioVolumeDown",174,"VK_VOLUME_DOWN","",""],[1,134,"NumpadComma",110,"NumPad_Separator",108,"VK_SEPARATOR","",""],[0,135,"IntlRo",115,"ABNT_C1",193,"VK_ABNT_C1","",""],[1,136,"KanaMode",0,"",0,"","",""],[0,137,"IntlYen",0,"",0,"","",""],[1,138,"Convert",0,"",0,"","",""],[1,139,"NonConvert",0,"",0,"","",""],[1,140,"Lang1",0,"",0,"","",""],[1,141,"Lang2",0,"",0,"","",""],[1,142,"Lang3",0,"",0,"","",""],[1,143,"Lang4",0,"",0,"","",""],[1,144,"Lang5",0,"",0,"","",""],[1,145,"Abort",0,"",0,"","",""],[1,146,"Props",0,"",0,"","",""],[1,147,"NumpadParenLeft",0,"",0,"","",""],[1,148,"NumpadParenRight",0,"",0,"","",""],[1,149,"NumpadBackspace",0,"",0,"","",""],[1,150,"NumpadMemoryStore",0,"",0,"","",""],[1,151,"NumpadMemoryRecall",0,"",0,"","",""],[1,152,"NumpadMemoryClear",0,"",0,"","",""],[1,153,"NumpadMemoryAdd",0,"",0,"","",""],[1,154,"NumpadMemorySubtract",0,"",0,"","",""],[1,155,"NumpadClear",131,"Clear",12,"VK_CLEAR","",""],[1,156,"NumpadClearEntry",0,"",0,"","",""],[1,0,"",5,"Ctrl",17,"VK_CONTROL","",""],[1,0,"",4,"Shift",16,"VK_SHIFT","",""],[1,0,"",6,"Alt",18,"VK_MENU","",""],[1,0,"",57,"Meta",91,"VK_COMMAND","",""],[1,157,"ControlLeft",5,"",0,"VK_LCONTROL","",""],[1,158,"ShiftLeft",4,"",0,"VK_LSHIFT","",""],[1,159,"AltLeft",6,"",0,"VK_LMENU","",""],[1,160,"MetaLeft",57,"",0,"VK_LWIN","",""],[1,161,"ControlRight",5,"",0,"VK_RCONTROL","",""],[1,162,"ShiftRight",4,"",0,"VK_RSHIFT","",""],[1,163,"AltRight",6,"",0,"VK_RMENU","",""],[1,164,"MetaRight",57,"",0,"VK_RWIN","",""],[1,165,"BrightnessUp",0,"",0,"","",""],[1,166,"BrightnessDown",0,"",0,"","",""],[1,167,"MediaPlay",0,"",0,"","",""],[1,168,"MediaRecord",0,"",0,"","",""],[1,169,"MediaFastForward",0,"",0,"","",""],[1,170,"MediaRewind",0,"",0,"","",""],[1,171,"MediaTrackNext",124,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK","",""],[1,172,"MediaTrackPrevious",125,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK","",""],[1,173,"MediaStop",126,"MediaStop",178,"VK_MEDIA_STOP","",""],[1,174,"Eject",0,"",0,"","",""],[1,175,"MediaPlayPause",127,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE","",""],[1,176,"MediaSelect",128,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT","",""],[1,177,"LaunchMail",129,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL","",""],[1,178,"LaunchApp2",130,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2","",""],[1,179,"LaunchApp1",0,"",0,"VK_MEDIA_LAUNCH_APP1","",""],[1,180,"SelectTask",0,"",0,"","",""],[1,181,"LaunchScreenSaver",0,"",0,"","",""],[1,182,"BrowserSearch",120,"BrowserSearch",170,"VK_BROWSER_SEARCH","",""],[1,183,"BrowserHome",121,"BrowserHome",172,"VK_BROWSER_HOME","",""],[1,184,"BrowserBack",122,"BrowserBack",166,"VK_BROWSER_BACK","",""],[1,185,"BrowserForward",123,"BrowserForward",167,"VK_BROWSER_FORWARD","",""],[1,186,"BrowserStop",0,"",0,"VK_BROWSER_STOP","",""],[1,187,"BrowserRefresh",0,"",0,"VK_BROWSER_REFRESH","",""],[1,188,"BrowserFavorites",0,"",0,"VK_BROWSER_FAVORITES","",""],[1,189,"ZoomToggle",0,"",0,"","",""],[1,190,"MailReply",0,"",0,"","",""],[1,191,"MailForward",0,"",0,"","",""],[1,192,"MailSend",0,"",0,"","",""],[1,0,"",114,"KeyInComposition",229,"","",""],[1,0,"",116,"ABNT_C2",194,"VK_ABNT_C2","",""],[1,0,"",96,"OEM_8",223,"VK_OEM_8","",""],[1,0,"",0,"",0,"VK_KANA","",""],[1,0,"",0,"",0,"VK_HANGUL","",""],[1,0,"",0,"",0,"VK_JUNJA","",""],[1,0,"",0,"",0,"VK_FINAL","",""],[1,0,"",0,"",0,"VK_HANJA","",""],[1,0,"",0,"",0,"VK_KANJI","",""],[1,0,"",0,"",0,"VK_CONVERT","",""],[1,0,"",0,"",0,"VK_NONCONVERT","",""],[1,0,"",0,"",0,"VK_ACCEPT","",""],[1,0,"",0,"",0,"VK_MODECHANGE","",""],[1,0,"",0,"",0,"VK_SELECT","",""],[1,0,"",0,"",0,"VK_PRINT","",""],[1,0,"",0,"",0,"VK_EXECUTE","",""],[1,0,"",0,"",0,"VK_SNAPSHOT","",""],[1,0,"",0,"",0,"VK_HELP","",""],[1,0,"",0,"",0,"VK_APPS","",""],[1,0,"",0,"",0,"VK_PROCESSKEY","",""],[1,0,"",0,"",0,"VK_PACKET","",""],[1,0,"",0,"",0,"VK_DBE_SBCSCHAR","",""],[1,0,"",0,"",0,"VK_DBE_DBCSCHAR","",""],[1,0,"",0,"",0,"VK_ATTN","",""],[1,0,"",0,"",0,"VK_CRSEL","",""],[1,0,"",0,"",0,"VK_EXSEL","",""],[1,0,"",0,"",0,"VK_EREOF","",""],[1,0,"",0,"",0,"VK_PLAY","",""],[1,0,"",0,"",0,"VK_ZOOM","",""],[1,0,"",0,"",0,"VK_NONAME","",""],[1,0,"",0,"",0,"VK_PA1","",""],[1,0,"",0,"",0,"VK_OEM_CLEAR","",""]],t=[],i=[];for(const n of e){const[s,r,a,l,c,d,h,u,f]=n;if(i[r]||(i[r]=!0,EW[a]=r,NW[a.toLowerCase()]=r,s&&(ON[r]=l)),!t[l]){if(t[l]=!0,!c)throw new Error(`String representation missing for key code ${l} around scan code ${a}`);y1.define(l,c),TL.define(l,u||c),ML.define(l,f||u||c)}d&&(X5[d]=l)}})();var el;(function(o){function e(a){return y1.keyCodeToStr(a)}o.toString=e;function t(a){return y1.strToKeyCode(a)}o.fromString=t;function i(a){return TL.keyCodeToStr(a)}o.toUserSettingsUS=i;function n(a){return ML.keyCodeToStr(a)}o.toUserSettingsGeneral=n;function s(a){return TL.strToKeyCode(a)||ML.strToKeyCode(a)}o.fromUserSettings=s;function r(a){if(a>=98&&a<=113)return null;switch(a){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return y1.keyCodeToStr(a)}o.toElectronAccelerator=r})(el||(el={}));function Vp(o,e){const t=(e&65535)<<16>>>0;return(o|t)>>>0}var UM={};let Tf;const qy=globalThis.vscode;if(typeof qy<"u"&&typeof qy.process<"u"){const o=qy.process;Tf={get platform(){return o.platform},get arch(){return o.arch},get env(){return o.env},cwd(){return o.cwd()}}}else typeof process<"u"&&typeof process?.versions?.node=="string"?Tf={get platform(){return process.platform},get arch(){return process.arch},get env(){return UM},cwd(){return UM.VSCODE_CWD||process.cwd()}}:Tf={get platform(){return kn?"win32":Ue?"darwin":"linux"},get arch(){},get env(){return{}},cwd(){return"/"}};const lC=Tf.cwd,RL=Tf.env,TW=Tf.platform,MW=65,RW=97,AW=90,PW=122,hc=46,on=47,vs=92,Wl=58,OW=63;class J5 extends Error{constructor(e,t,i){let n;typeof t=="string"&&t.indexOf("not ")===0?(n="must not be",t=t.replace(/^not /,"")):n="must be";const s=e.indexOf(".")!==-1?"property":"argument";let r=`The "${e}" ${s} ${n} of type ${t}`;r+=`. Received type ${typeof i}`,super(r),this.code="ERR_INVALID_ARG_TYPE"}}function FW(o,e){if(o===null||typeof o!="object")throw new J5(e,"Object",o)}function ki(o,e){if(typeof o!="string")throw new J5(e,"string",o)}const Tl=TW==="win32";function at(o){return o===on||o===vs}function AL(o){return o===on}function Hl(o){return o>=MW&&o<=AW||o>=RW&&o<=PW}function cC(o,e,t,i){let n="",s=0,r=-1,a=0,l=0;for(let c=0;c<=o.length;++c){if(c2){const d=n.lastIndexOf(t);d===-1?(n="",s=0):(n=n.slice(0,d),s=n.length-1-n.lastIndexOf(t)),r=c,a=0;continue}else if(n.length!==0){n="",s=0,r=c,a=0;continue}}e&&(n+=n.length>0?`${t}..`:"..",s=2)}else n.length>0?n+=`${t}${o.slice(r+1,c)}`:n=o.slice(r+1,c),s=c-r-1;r=c,a=0}else l===hc&&a!==-1?++a:a=-1}return n}function BW(o){return o?`${o[0]==="."?"":"."}${o}`:""}function eF(o,e){FW(e,"pathObject");const t=e.dir||e.root,i=e.base||`${e.name||""}${BW(e.ext)}`;return t?t===e.root?`${t}${i}`:`${t}${o}${i}`:i}const Vn={resolve(...o){let e="",t="",i=!1;for(let n=o.length-1;n>=-1;n--){let s;if(n>=0){if(s=o[n],ki(s,`paths[${n}]`),s.length===0)continue}else e.length===0?s=lC():(s=RL[`=${e}`]||lC(),(s===void 0||s.slice(0,2).toLowerCase()!==e.toLowerCase()&&s.charCodeAt(2)===vs)&&(s=`${e}\\`));const r=s.length;let a=0,l="",c=!1;const d=s.charCodeAt(0);if(r===1)at(d)&&(a=1,c=!0);else if(at(d))if(c=!0,at(s.charCodeAt(1))){let h=2,u=h;for(;h2&&at(s.charCodeAt(2))&&(c=!0,a=3));if(l.length>0)if(e.length>0){if(l.toLowerCase()!==e.toLowerCase())continue}else e=l;if(i){if(e.length>0)break}else if(t=`${s.slice(a)}\\${t}`,i=c,c&&e.length>0)break}return t=cC(t,!i,"\\",at),i?`${e}\\${t}`:`${e}${t}`||"."},normalize(o){ki(o,"path");const e=o.length;if(e===0)return".";let t=0,i,n=!1;const s=o.charCodeAt(0);if(e===1)return AL(s)?"\\":o;if(at(s))if(n=!0,at(o.charCodeAt(1))){let a=2,l=a;for(;a2&&at(o.charCodeAt(2))&&(n=!0,t=3));let r=t0&&at(o.charCodeAt(e-1))&&(r+="\\"),i===void 0?n?`\\${r}`:r:n?`${i}\\${r}`:`${i}${r}`},isAbsolute(o){ki(o,"path");const e=o.length;if(e===0)return!1;const t=o.charCodeAt(0);return at(t)||e>2&&Hl(t)&&o.charCodeAt(1)===Wl&&at(o.charCodeAt(2))},join(...o){if(o.length===0)return".";let e,t;for(let s=0;s0&&(e===void 0?e=t=r:e+=`\\${r}`)}if(e===void 0)return".";let i=!0,n=0;if(typeof t=="string"&&at(t.charCodeAt(0))){++n;const s=t.length;s>1&&at(t.charCodeAt(1))&&(++n,s>2&&(at(t.charCodeAt(2))?++n:i=!1))}if(i){for(;n=2&&(e=`\\${e.slice(n)}`)}return Vn.normalize(e)},relative(o,e){if(ki(o,"from"),ki(e,"to"),o===e)return"";const t=Vn.resolve(o),i=Vn.resolve(e);if(t===i||(o=t.toLowerCase(),e=i.toLowerCase(),o===e))return"";let n=0;for(;nn&&o.charCodeAt(s-1)===vs;)s--;const r=s-n;let a=0;for(;aa&&e.charCodeAt(l-1)===vs;)l--;const c=l-a,d=rd){if(e.charCodeAt(a+u)===vs)return i.slice(a+u+1);if(u===2)return i.slice(a+u)}r>d&&(o.charCodeAt(n+u)===vs?h=u:u===2&&(h=3)),h===-1&&(h=0)}let f="";for(u=n+h+1;u<=s;++u)(u===s||o.charCodeAt(u)===vs)&&(f+=f.length===0?"..":"\\..");return a+=h,f.length>0?`${f}${i.slice(a,l)}`:(i.charCodeAt(a)===vs&&++a,i.slice(a,l))},toNamespacedPath(o){if(typeof o!="string"||o.length===0)return o;const e=Vn.resolve(o);if(e.length<=2)return o;if(e.charCodeAt(0)===vs){if(e.charCodeAt(1)===vs){const t=e.charCodeAt(2);if(t!==OW&&t!==hc)return`\\\\?\\UNC\\${e.slice(2)}`}}else if(Hl(e.charCodeAt(0))&&e.charCodeAt(1)===Wl&&e.charCodeAt(2)===vs)return`\\\\?\\${e}`;return o},dirname(o){ki(o,"path");const e=o.length;if(e===0)return".";let t=-1,i=0;const n=o.charCodeAt(0);if(e===1)return at(n)?o:".";if(at(n)){if(t=i=1,at(o.charCodeAt(1))){let a=2,l=a;for(;a2&&at(o.charCodeAt(2))?3:2,i=t);let s=-1,r=!0;for(let a=e-1;a>=i;--a)if(at(o.charCodeAt(a))){if(!r){s=a;break}}else r=!1;if(s===-1){if(t===-1)return".";s=t}return o.slice(0,s)},basename(o,e){e!==void 0&&ki(e,"suffix"),ki(o,"path");let t=0,i=-1,n=!0,s;if(o.length>=2&&Hl(o.charCodeAt(0))&&o.charCodeAt(1)===Wl&&(t=2),e!==void 0&&e.length>0&&e.length<=o.length){if(e===o)return"";let r=e.length-1,a=-1;for(s=o.length-1;s>=t;--s){const l=o.charCodeAt(s);if(at(l)){if(!n){t=s+1;break}}else a===-1&&(n=!1,a=s+1),r>=0&&(l===e.charCodeAt(r)?--r===-1&&(i=s):(r=-1,i=a))}return t===i?i=a:i===-1&&(i=o.length),o.slice(t,i)}for(s=o.length-1;s>=t;--s)if(at(o.charCodeAt(s))){if(!n){t=s+1;break}}else i===-1&&(n=!1,i=s+1);return i===-1?"":o.slice(t,i)},extname(o){ki(o,"path");let e=0,t=-1,i=0,n=-1,s=!0,r=0;o.length>=2&&o.charCodeAt(1)===Wl&&Hl(o.charCodeAt(0))&&(e=i=2);for(let a=o.length-1;a>=e;--a){const l=o.charCodeAt(a);if(at(l)){if(!s){i=a+1;break}continue}n===-1&&(s=!1,n=a+1),l===hc?t===-1?t=a:r!==1&&(r=1):t!==-1&&(r=-1)}return t===-1||n===-1||r===0||r===1&&t===n-1&&t===i+1?"":o.slice(t,n)},format:eF.bind(null,"\\"),parse(o){ki(o,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(o.length===0)return e;const t=o.length;let i=0,n=o.charCodeAt(0);if(t===1)return at(n)?(e.root=e.dir=o,e):(e.base=e.name=o,e);if(at(n)){if(i=1,at(o.charCodeAt(1))){let h=2,u=h;for(;h0&&(e.root=o.slice(0,i));let s=-1,r=i,a=-1,l=!0,c=o.length-1,d=0;for(;c>=i;--c){if(n=o.charCodeAt(c),at(n)){if(!l){r=c+1;break}continue}a===-1&&(l=!1,a=c+1),n===hc?s===-1?s=c:d!==1&&(d=1):s!==-1&&(d=-1)}return a!==-1&&(s===-1||d===0||d===1&&s===a-1&&s===r+1?e.base=e.name=o.slice(r,a):(e.name=o.slice(r,s),e.base=o.slice(r,a),e.ext=o.slice(s,a))),r>0&&r!==i?e.dir=o.slice(0,r-1):e.dir=e.root,e},sep:"\\",delimiter:";",win32:null,posix:null},WW=(()=>{if(Tl){const o=/\\/g;return()=>{const e=lC().replace(o,"/");return e.slice(e.indexOf("/"))}}return()=>lC()})(),oi={resolve(...o){let e="",t=!1;for(let i=o.length-1;i>=-1&&!t;i--){const n=i>=0?o[i]:WW();ki(n,`paths[${i}]`),n.length!==0&&(e=`${n}/${e}`,t=n.charCodeAt(0)===on)}return e=cC(e,!t,"/",AL),t?`/${e}`:e.length>0?e:"."},normalize(o){if(ki(o,"path"),o.length===0)return".";const e=o.charCodeAt(0)===on,t=o.charCodeAt(o.length-1)===on;return o=cC(o,!e,"/",AL),o.length===0?e?"/":t?"./":".":(t&&(o+="/"),e?`/${o}`:o)},isAbsolute(o){return ki(o,"path"),o.length>0&&o.charCodeAt(0)===on},join(...o){if(o.length===0)return".";let e;for(let t=0;t0&&(e===void 0?e=i:e+=`/${i}`)}return e===void 0?".":oi.normalize(e)},relative(o,e){if(ki(o,"from"),ki(e,"to"),o===e||(o=oi.resolve(o),e=oi.resolve(e),o===e))return"";const t=1,i=o.length,n=i-t,s=1,r=e.length-s,a=na){if(e.charCodeAt(s+c)===on)return e.slice(s+c+1);if(c===0)return e.slice(s+c)}else n>a&&(o.charCodeAt(t+c)===on?l=c:c===0&&(l=0));let d="";for(c=t+l+1;c<=i;++c)(c===i||o.charCodeAt(c)===on)&&(d+=d.length===0?"..":"/..");return`${d}${e.slice(s+l)}`},toNamespacedPath(o){return o},dirname(o){if(ki(o,"path"),o.length===0)return".";const e=o.charCodeAt(0)===on;let t=-1,i=!0;for(let n=o.length-1;n>=1;--n)if(o.charCodeAt(n)===on){if(!i){t=n;break}}else i=!1;return t===-1?e?"/":".":e&&t===1?"//":o.slice(0,t)},basename(o,e){e!==void 0&&ki(e,"ext"),ki(o,"path");let t=0,i=-1,n=!0,s;if(e!==void 0&&e.length>0&&e.length<=o.length){if(e===o)return"";let r=e.length-1,a=-1;for(s=o.length-1;s>=0;--s){const l=o.charCodeAt(s);if(l===on){if(!n){t=s+1;break}}else a===-1&&(n=!1,a=s+1),r>=0&&(l===e.charCodeAt(r)?--r===-1&&(i=s):(r=-1,i=a))}return t===i?i=a:i===-1&&(i=o.length),o.slice(t,i)}for(s=o.length-1;s>=0;--s)if(o.charCodeAt(s)===on){if(!n){t=s+1;break}}else i===-1&&(n=!1,i=s+1);return i===-1?"":o.slice(t,i)},extname(o){ki(o,"path");let e=-1,t=0,i=-1,n=!0,s=0;for(let r=o.length-1;r>=0;--r){const a=o.charCodeAt(r);if(a===on){if(!n){t=r+1;break}continue}i===-1&&(n=!1,i=r+1),a===hc?e===-1?e=r:s!==1&&(s=1):e!==-1&&(s=-1)}return e===-1||i===-1||s===0||s===1&&e===i-1&&e===t+1?"":o.slice(e,i)},format:eF.bind(null,"/"),parse(o){ki(o,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(o.length===0)return e;const t=o.charCodeAt(0)===on;let i;t?(e.root="/",i=1):i=0;let n=-1,s=0,r=-1,a=!0,l=o.length-1,c=0;for(;l>=i;--l){const d=o.charCodeAt(l);if(d===on){if(!a){s=l+1;break}continue}r===-1&&(a=!1,r=l+1),d===hc?n===-1?n=l:c!==1&&(c=1):n!==-1&&(c=-1)}if(r!==-1){const d=s===0&&t?1:s;n===-1||c===0||c===1&&n===r-1&&n===s+1?e.base=e.name=o.slice(d,r):(e.name=o.slice(d,n),e.base=o.slice(d,r),e.ext=o.slice(n,r))}return s>0?e.dir=o.slice(0,s-1):t&&(e.dir="/"),e},sep:"/",delimiter:":",win32:null,posix:null};oi.win32=Vn.win32=Vn;oi.posix=Vn.posix=oi;const tF=Tl?Vn.normalize:oi.normalize,HW=Tl?Vn.join:oi.join,VW=Tl?Vn.resolve:oi.resolve,zW=Tl?Vn.relative:oi.relative,iF=Tl?Vn.dirname:oi.dirname,uc=Tl?Vn.basename:oi.basename,UW=Tl?Vn.extname:oi.extname,fc=Tl?Vn.sep:oi.sep,$W=/^\w[\w\d+.-]*$/,KW=/^\//,jW=/^\/\//;function qW(o,e){if(!o.scheme&&e)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${o.authority}", path: "${o.path}", query: "${o.query}", fragment: "${o.fragment}"}`);if(o.scheme&&!$W.test(o.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(o.path){if(o.authority){if(!KW.test(o.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(jW.test(o.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}function GW(o,e){return!o&&!e?"file":o}function ZW(o,e){switch(o){case"https":case"http":case"file":e?e[0]!==nr&&(e=nr+e):e=nr;break}return e}const ti="",nr="/",YW=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class ve{static isUri(e){return e instanceof ve?!0:e?typeof e.authority=="string"&&typeof e.fragment=="string"&&typeof e.path=="string"&&typeof e.query=="string"&&typeof e.scheme=="string"&&typeof e.fsPath=="string"&&typeof e.with=="function"&&typeof e.toString=="function":!1}constructor(e,t,i,n,s,r=!1){typeof e=="object"?(this.scheme=e.scheme||ti,this.authority=e.authority||ti,this.path=e.path||ti,this.query=e.query||ti,this.fragment=e.fragment||ti):(this.scheme=GW(e,r),this.authority=t||ti,this.path=ZW(this.scheme,i||ti),this.query=n||ti,this.fragment=s||ti,qW(this,r))}get fsPath(){return dC(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:i,path:n,query:s,fragment:r}=e;return t===void 0?t=this.scheme:t===null&&(t=ti),i===void 0?i=this.authority:i===null&&(i=ti),n===void 0?n=this.path:n===null&&(n=ti),s===void 0?s=this.query:s===null&&(s=ti),r===void 0?r=this.fragment:r===null&&(r=ti),t===this.scheme&&i===this.authority&&n===this.path&&s===this.query&&r===this.fragment?this:new xu(t,i,n,s,r)}static parse(e,t=!1){const i=YW.exec(e);return i?new xu(i[2]||ti,wb(i[4]||ti),wb(i[5]||ti),wb(i[7]||ti),wb(i[9]||ti),t):new xu(ti,ti,ti,ti,ti)}static file(e){let t=ti;if(kn&&(e=e.replace(/\\/g,nr)),e[0]===nr&&e[1]===nr){const i=e.indexOf(nr,2);i===-1?(t=e.substring(2),e=nr):(t=e.substring(2,i),e=e.substring(i)||nr)}return new xu("file",t,e,ti,ti)}static from(e,t){return new xu(e.scheme,e.authority,e.path,e.query,e.fragment,t)}static joinPath(e,...t){if(!e.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let i;return kn&&e.scheme==="file"?i=ve.file(Vn.join(dC(e,!0),...t)).path:i=oi.join(e.path,...t),e.with({path:i})}toString(e=!1){return PL(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof ve)return e;{const t=new xu(e);return t._formatted=e.external??null,t._fsPath=e._sep===nF?e.fsPath??null:null,t}}else return e}}const nF=kn?1:void 0;class xu extends ve{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=dC(this,!1)),this._fsPath}toString(e=!1){return e?PL(this,!0):(this._formatted||(this._formatted=PL(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=nF),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}const sF={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function $M(o,e,t){let i,n=-1;for(let s=0;s=97&&r<=122||r>=65&&r<=90||r>=48&&r<=57||r===45||r===46||r===95||r===126||e&&r===47||t&&r===91||t&&r===93||t&&r===58)n!==-1&&(i+=encodeURIComponent(o.substring(n,s)),n=-1),i!==void 0&&(i+=o.charAt(s));else{i===void 0&&(i=o.substr(0,s));const a=sF[r];a!==void 0?(n!==-1&&(i+=encodeURIComponent(o.substring(n,s)),n=-1),i+=a):n===-1&&(n=s)}}return n!==-1&&(i+=encodeURIComponent(o.substring(n))),i!==void 0?i:o}function QW(o){let e;for(let t=0;t1&&o.scheme==="file"?t=`//${o.authority}${o.path}`:o.path.charCodeAt(0)===47&&(o.path.charCodeAt(1)>=65&&o.path.charCodeAt(1)<=90||o.path.charCodeAt(1)>=97&&o.path.charCodeAt(1)<=122)&&o.path.charCodeAt(2)===58?e?t=o.path.substr(1):t=o.path[1].toLowerCase()+o.path.substr(2):t=o.path,kn&&(t=t.replace(/\//g,"\\")),t}function PL(o,e){const t=e?QW:$M;let i="",{scheme:n,authority:s,path:r,query:a,fragment:l}=o;if(n&&(i+=n,i+=":"),(s||n==="file")&&(i+=nr,i+=nr),s){let c=s.indexOf("@");if(c!==-1){const d=s.substr(0,c);s=s.substr(c+1),c=d.lastIndexOf(":"),c===-1?i+=t(d,!1,!1):(i+=t(d.substr(0,c),!1,!1),i+=":",i+=t(d.substr(c+1),!1,!0)),i+="@"}s=s.toLowerCase(),c=s.lastIndexOf(":"),c===-1?i+=t(s,!1,!0):(i+=t(s.substr(0,c),!1,!0),i+=s.substr(c))}if(r){if(r.length>=3&&r.charCodeAt(0)===47&&r.charCodeAt(2)===58){const c=r.charCodeAt(1);c>=65&&c<=90&&(r=`/${String.fromCharCode(c+32)}:${r.substr(3)}`)}else if(r.length>=2&&r.charCodeAt(1)===58){const c=r.charCodeAt(0);c>=65&&c<=90&&(r=`${String.fromCharCode(c+32)}:${r.substr(2)}`)}i+=t(r,!0,!1)}return a&&(i+="?",i+=t(a,!1,!1)),l&&(i+="#",i+=e?l:$M(l,!1,!1)),i}function oF(o){try{return decodeURIComponent(o)}catch{return o.length>3?o.substr(0,3)+oF(o.substr(3)):o}}const KM=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function wb(o){return o.match(KM)?o.replace(KM,e=>oF(e)):o}class P{constructor(e,t){this.lineNumber=e,this.column=t}with(e=this.lineNumber,t=this.column){return e===this.lineNumber&&t===this.column?this:new P(e,t)}delta(e=0,t=0){return this.with(this.lineNumber+e,this.column+t)}equals(e){return P.equals(this,e)}static equals(e,t){return!e&&!t?!0:!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(e){return P.isBefore(this,e)}static isBefore(e,t){return e.lineNumberi||e===i&&t>n?(this.startLineNumber=i,this.startColumn=n,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=i,this.endColumn=n)}isEmpty(){return Mi.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return Mi.containsPosition(this,e)}static containsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.columne.endColumn)}static strictContainsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.column<=e.startColumn||t.lineNumber===e.endLineNumber&&t.column>=e.endColumn)}containsRange(e){return Mi.containsRange(this,e)}static containsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumne.endColumn)}strictContainsRange(e){return Mi.strictContainsRange(this,e)}static strictContainsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn||t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)}plusRange(e){return Mi.plusRange(this,e)}static plusRange(e,t){let i,n,s,r;return t.startLineNumbere.endLineNumber?(s=t.endLineNumber,r=t.endColumn):t.endLineNumber===e.endLineNumber?(s=t.endLineNumber,r=Math.max(t.endColumn,e.endColumn)):(s=e.endLineNumber,r=e.endColumn),new Mi(i,n,s,r)}intersectRanges(e){return Mi.intersectRanges(this,e)}static intersectRanges(e,t){let i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn;const a=t.startLineNumber,l=t.startColumn,c=t.endLineNumber,d=t.endColumn;return ic?(s=c,r=d):s===c&&(r=Math.min(r,d)),i>s||i===s&&n>r?null:new Mi(i,n,s,r)}equalsRange(e){return Mi.equalsRange(this,e)}static equalsRange(e,t){return!e&&!t?!0:!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn}getEndPosition(){return Mi.getEndPosition(this)}static getEndPosition(e){return new P(e.endLineNumber,e.endColumn)}getStartPosition(){return Mi.getStartPosition(this)}static getStartPosition(e){return new P(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,t){return new Mi(this.startLineNumber,this.startColumn,e,t)}setStartPosition(e,t){return new Mi(e,t,this.endLineNumber,this.endColumn)}collapseToStart(){return Mi.collapseToStart(this)}static collapseToStart(e){return new Mi(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}collapseToEnd(){return Mi.collapseToEnd(this)}static collapseToEnd(e){return new Mi(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn)}delta(e){return new Mi(this.startLineNumber+e,this.startColumn,this.endLineNumber+e,this.endColumn)}static fromPositions(e,t=e){return new Mi(e.lineNumber,e.column,t.lineNumber,t.column)}static lift(e){return e?new Mi(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):null}static isIRange(e){return e&&typeof e.startLineNumber=="number"&&typeof e.startColumn=="number"&&typeof e.endLineNumber=="number"&&typeof e.endColumn=="number"}static areIntersectingOrTouching(e,t){return!(e.endLineNumbere.startLineNumber}toJSON(){return this}};class Fe extends I{constructor(e,t,i,n){super(e,t,i,n),this.selectionStartLineNumber=e,this.selectionStartColumn=t,this.positionLineNumber=i,this.positionColumn=n}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(e){return Fe.selectionsEqual(this,e)}static selectionsEqual(e,t){return e.selectionStartLineNumber===t.selectionStartLineNumber&&e.selectionStartColumn===t.selectionStartColumn&&e.positionLineNumber===t.positionLineNumber&&e.positionColumn===t.positionColumn}getDirection(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1}setEndPosition(e,t){return this.getDirection()===0?new Fe(this.startLineNumber,this.startColumn,e,t):new Fe(e,t,this.startLineNumber,this.startColumn)}getPosition(){return new P(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new P(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(e,t){return this.getDirection()===0?new Fe(e,t,this.endLineNumber,this.endColumn):new Fe(this.endLineNumber,this.endColumn,e,t)}static fromPositions(e,t=e){return new Fe(e.lineNumber,e.column,t.lineNumber,t.column)}static fromRange(e,t){return t===0?new Fe(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new Fe(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn)}static liftSelection(e){return new Fe(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn)}static selectionsArrEqual(e,t){if(e&&!t||!e&&t)return!1;if(!e&&!t)return!0;if(e.length!==t.length)return!1;for(let i=0,n=e.length;i{this._tokenizationSupports.get(e)===t&&(this._tokenizationSupports.delete(e),this.handleChange([e]))})}get(e){return this._tokenizationSupports.get(e)||null}registerFactory(e,t){this._factories.get(e)?.dispose();const i=new eH(this,e,t);return this._factories.set(e,i),_e(()=>{const n=this._factories.get(e);!n||n!==i||(this._factories.delete(e),n.dispose())})}async getOrCreate(e){const t=this.get(e);if(t)return t;const i=this._factories.get(e);return!i||i.isResolved?null:(await i.resolve(),this.get(e))}isResolved(e){if(this.get(e))return!0;const i=this._factories.get(e);return!!(!i||i.isResolved)}setColorMap(e){this._colorMap=e,this._onDidChange.fire({changedLanguages:Array.from(this._tokenizationSupports.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}};class eH extends z{get isResolved(){return this._isResolved}constructor(e,t,i){super(),this._registry=e,this._languageId=t,this._factory=i,this._isDisposed=!1,this._resolvePromise=null,this._isResolved=!1}dispose(){this._isDisposed=!0,super.dispose()}async resolve(){return this._resolvePromise||(this._resolvePromise=this._create()),this._resolvePromise}async _create(){const e=await this._factory.tokenizationSupport;this._isResolved=!0,e&&!this._isDisposed&&this._register(this._registry.register(this._languageId,e))}}let zp=class{constructor(e,t,i){this.offset=e,this.type=t,this.language=i,this._tokenBrand=void 0}toString(){return"("+this.offset+", "+this.type+")"}};class FN{constructor(e,t){this.tokens=e,this.endState=t,this._tokenizationResultBrand=void 0}}class x0{constructor(e,t){this.tokens=e,this.endState=t,this._encodedTokenizationResultBrand=void 0}}var is;(function(o){o[o.Increase=0]="Increase",o[o.Decrease=1]="Decrease"})(is||(is={}));var Up;(function(o){const e=new Map;e.set(0,ie.symbolMethod),e.set(1,ie.symbolFunction),e.set(2,ie.symbolConstructor),e.set(3,ie.symbolField),e.set(4,ie.symbolVariable),e.set(5,ie.symbolClass),e.set(6,ie.symbolStruct),e.set(7,ie.symbolInterface),e.set(8,ie.symbolModule),e.set(9,ie.symbolProperty),e.set(10,ie.symbolEvent),e.set(11,ie.symbolOperator),e.set(12,ie.symbolUnit),e.set(13,ie.symbolValue),e.set(15,ie.symbolEnum),e.set(14,ie.symbolConstant),e.set(15,ie.symbolEnum),e.set(16,ie.symbolEnumMember),e.set(17,ie.symbolKeyword),e.set(27,ie.symbolSnippet),e.set(18,ie.symbolText),e.set(19,ie.symbolColor),e.set(20,ie.symbolFile),e.set(21,ie.symbolReference),e.set(22,ie.symbolCustomColor),e.set(23,ie.symbolFolder),e.set(24,ie.symbolTypeParameter),e.set(25,ie.account),e.set(26,ie.issues);function t(s){let r=e.get(s);return r||(console.info("No codicon found for CompletionItemKind "+s),r=ie.symbolProperty),r}o.toIcon=t;const i=new Map;i.set("method",0),i.set("function",1),i.set("constructor",2),i.set("field",3),i.set("variable",4),i.set("class",5),i.set("struct",6),i.set("interface",7),i.set("module",8),i.set("property",9),i.set("event",10),i.set("operator",11),i.set("unit",12),i.set("value",13),i.set("constant",14),i.set("enum",15),i.set("enum-member",16),i.set("enumMember",16),i.set("keyword",17),i.set("snippet",27),i.set("text",18),i.set("color",19),i.set("file",20),i.set("reference",21),i.set("customcolor",22),i.set("folder",23),i.set("type-parameter",24),i.set("typeParameter",24),i.set("account",25),i.set("issue",26);function n(s,r){let a=i.get(s);return typeof a>"u"&&!r&&(a=9),a}o.fromString=n})(Up||(Up={}));var Cl;(function(o){o[o.Automatic=0]="Automatic",o[o.Explicit=1]="Explicit"})(Cl||(Cl={}));class lF{constructor(e,t,i,n){this.range=e,this.text=t,this.completionKind=i,this.isSnippetText=n}equals(e){return I.lift(this.range).equalsRange(e.range)&&this.text===e.text&&this.completionKind===e.completionKind&&this.isSnippetText===e.isSnippetText}}var jM;(function(o){o[o.Automatic=0]="Automatic",o[o.PasteAs=1]="PasteAs"})(jM||(jM={}));var qM;(function(o){o[o.Invoke=1]="Invoke",o[o.TriggerCharacter=2]="TriggerCharacter",o[o.ContentChange=3]="ContentChange"})(qM||(qM={}));var GM;(function(o){o[o.Text=0]="Text",o[o.Read=1]="Read",o[o.Write=2]="Write"})(GM||(GM={}));function tH(o){return o&&ve.isUri(o.uri)&&I.isIRange(o.range)&&(I.isIRange(o.originSelectionRange)||I.isIRange(o.targetSelectionRange))}m("Array","array"),m("Boolean","boolean"),m("Class","class"),m("Constant","constant"),m("Constructor","constructor"),m("Enum","enumeration"),m("EnumMember","enumeration member"),m("Event","event"),m("Field","field"),m("File","file"),m("Function","function"),m("Interface","interface"),m("Key","key"),m("Method","method"),m("Module","module"),m("Namespace","namespace"),m("Null","null"),m("Number","number"),m("Object","object"),m("Operator","operator"),m("Package","package"),m("Property","property"),m("String","string"),m("Struct","struct"),m("TypeParameter","type parameter"),m("Variable","variable");var FL;(function(o){const e=new Map;e.set(0,ie.symbolFile),e.set(1,ie.symbolModule),e.set(2,ie.symbolNamespace),e.set(3,ie.symbolPackage),e.set(4,ie.symbolClass),e.set(5,ie.symbolMethod),e.set(6,ie.symbolProperty),e.set(7,ie.symbolField),e.set(8,ie.symbolConstructor),e.set(9,ie.symbolEnum),e.set(10,ie.symbolInterface),e.set(11,ie.symbolFunction),e.set(12,ie.symbolVariable),e.set(13,ie.symbolConstant),e.set(14,ie.symbolString),e.set(15,ie.symbolNumber),e.set(16,ie.symbolBoolean),e.set(17,ie.symbolArray),e.set(18,ie.symbolObject),e.set(19,ie.symbolKey),e.set(20,ie.symbolNull),e.set(21,ie.symbolEnumMember),e.set(22,ie.symbolStruct),e.set(23,ie.symbolEvent),e.set(24,ie.symbolOperator),e.set(25,ie.symbolTypeParameter);function t(i){let n=e.get(i);return n||(console.info("No codicon found for SymbolKind "+i),n=ie.symbolProperty),n}o.toIcon=t})(FL||(FL={}));const vo=class vo{static fromValue(e){switch(e){case"comment":return vo.Comment;case"imports":return vo.Imports;case"region":return vo.Region}return new vo(e)}constructor(e){this.value=e}};vo.Comment=new vo("comment"),vo.Imports=new vo("imports"),vo.Region=new vo("region");let BL=vo;var ZM;(function(o){o[o.AIGenerated=1]="AIGenerated"})(ZM||(ZM={}));var YM;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(YM||(YM={}));var WL;(function(o){function e(t){return!t||typeof t!="object"?!1:typeof t.id=="string"&&typeof t.title=="string"}o.is=e})(WL||(WL={}));var hC;(function(o){o[o.Type=1]="Type",o[o.Parameter=2]="Parameter"})(hC||(hC={}));class iH{constructor(e){this.createSupport=e,this._tokenizationSupport=null}dispose(){this._tokenizationSupport&&this._tokenizationSupport.then(e=>{e&&e.dispose()})}get tokenizationSupport(){return this._tokenizationSupport||(this._tokenizationSupport=this.createSupport()),this._tokenizationSupport}}const si=new aF,HL=new aF;var QM;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(QM||(QM={}));var VL;(function(o){o[o.Unknown=0]="Unknown",o[o.Disabled=1]="Disabled",o[o.Enabled=2]="Enabled"})(VL||(VL={}));var zL;(function(o){o[o.Invoke=1]="Invoke",o[o.Auto=2]="Auto"})(zL||(zL={}));var UL;(function(o){o[o.None=0]="None",o[o.KeepWhitespace=1]="KeepWhitespace",o[o.InsertAsSnippet=4]="InsertAsSnippet"})(UL||(UL={}));var $L;(function(o){o[o.Method=0]="Method",o[o.Function=1]="Function",o[o.Constructor=2]="Constructor",o[o.Field=3]="Field",o[o.Variable=4]="Variable",o[o.Class=5]="Class",o[o.Struct=6]="Struct",o[o.Interface=7]="Interface",o[o.Module=8]="Module",o[o.Property=9]="Property",o[o.Event=10]="Event",o[o.Operator=11]="Operator",o[o.Unit=12]="Unit",o[o.Value=13]="Value",o[o.Constant=14]="Constant",o[o.Enum=15]="Enum",o[o.EnumMember=16]="EnumMember",o[o.Keyword=17]="Keyword",o[o.Text=18]="Text",o[o.Color=19]="Color",o[o.File=20]="File",o[o.Reference=21]="Reference",o[o.Customcolor=22]="Customcolor",o[o.Folder=23]="Folder",o[o.TypeParameter=24]="TypeParameter",o[o.User=25]="User",o[o.Issue=26]="Issue",o[o.Snippet=27]="Snippet"})($L||($L={}));var KL;(function(o){o[o.Deprecated=1]="Deprecated"})(KL||(KL={}));var jL;(function(o){o[o.Invoke=0]="Invoke",o[o.TriggerCharacter=1]="TriggerCharacter",o[o.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"})(jL||(jL={}));var qL;(function(o){o[o.EXACT=0]="EXACT",o[o.ABOVE=1]="ABOVE",o[o.BELOW=2]="BELOW"})(qL||(qL={}));var GL;(function(o){o[o.NotSet=0]="NotSet",o[o.ContentFlush=1]="ContentFlush",o[o.RecoverFromMarkers=2]="RecoverFromMarkers",o[o.Explicit=3]="Explicit",o[o.Paste=4]="Paste",o[o.Undo=5]="Undo",o[o.Redo=6]="Redo"})(GL||(GL={}));var ZL;(function(o){o[o.LF=1]="LF",o[o.CRLF=2]="CRLF"})(ZL||(ZL={}));var YL;(function(o){o[o.Text=0]="Text",o[o.Read=1]="Read",o[o.Write=2]="Write"})(YL||(YL={}));var QL;(function(o){o[o.None=0]="None",o[o.Keep=1]="Keep",o[o.Brackets=2]="Brackets",o[o.Advanced=3]="Advanced",o[o.Full=4]="Full"})(QL||(QL={}));var XL;(function(o){o[o.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",o[o.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",o[o.accessibilitySupport=2]="accessibilitySupport",o[o.accessibilityPageSize=3]="accessibilityPageSize",o[o.ariaLabel=4]="ariaLabel",o[o.ariaRequired=5]="ariaRequired",o[o.autoClosingBrackets=6]="autoClosingBrackets",o[o.autoClosingComments=7]="autoClosingComments",o[o.screenReaderAnnounceInlineSuggestion=8]="screenReaderAnnounceInlineSuggestion",o[o.autoClosingDelete=9]="autoClosingDelete",o[o.autoClosingOvertype=10]="autoClosingOvertype",o[o.autoClosingQuotes=11]="autoClosingQuotes",o[o.autoIndent=12]="autoIndent",o[o.automaticLayout=13]="automaticLayout",o[o.autoSurround=14]="autoSurround",o[o.bracketPairColorization=15]="bracketPairColorization",o[o.guides=16]="guides",o[o.codeLens=17]="codeLens",o[o.codeLensFontFamily=18]="codeLensFontFamily",o[o.codeLensFontSize=19]="codeLensFontSize",o[o.colorDecorators=20]="colorDecorators",o[o.colorDecoratorsLimit=21]="colorDecoratorsLimit",o[o.columnSelection=22]="columnSelection",o[o.comments=23]="comments",o[o.contextmenu=24]="contextmenu",o[o.copyWithSyntaxHighlighting=25]="copyWithSyntaxHighlighting",o[o.cursorBlinking=26]="cursorBlinking",o[o.cursorSmoothCaretAnimation=27]="cursorSmoothCaretAnimation",o[o.cursorStyle=28]="cursorStyle",o[o.cursorSurroundingLines=29]="cursorSurroundingLines",o[o.cursorSurroundingLinesStyle=30]="cursorSurroundingLinesStyle",o[o.cursorWidth=31]="cursorWidth",o[o.disableLayerHinting=32]="disableLayerHinting",o[o.disableMonospaceOptimizations=33]="disableMonospaceOptimizations",o[o.domReadOnly=34]="domReadOnly",o[o.dragAndDrop=35]="dragAndDrop",o[o.dropIntoEditor=36]="dropIntoEditor",o[o.emptySelectionClipboard=37]="emptySelectionClipboard",o[o.experimentalWhitespaceRendering=38]="experimentalWhitespaceRendering",o[o.extraEditorClassName=39]="extraEditorClassName",o[o.fastScrollSensitivity=40]="fastScrollSensitivity",o[o.find=41]="find",o[o.fixedOverflowWidgets=42]="fixedOverflowWidgets",o[o.folding=43]="folding",o[o.foldingStrategy=44]="foldingStrategy",o[o.foldingHighlight=45]="foldingHighlight",o[o.foldingImportsByDefault=46]="foldingImportsByDefault",o[o.foldingMaximumRegions=47]="foldingMaximumRegions",o[o.unfoldOnClickAfterEndOfLine=48]="unfoldOnClickAfterEndOfLine",o[o.fontFamily=49]="fontFamily",o[o.fontInfo=50]="fontInfo",o[o.fontLigatures=51]="fontLigatures",o[o.fontSize=52]="fontSize",o[o.fontWeight=53]="fontWeight",o[o.fontVariations=54]="fontVariations",o[o.formatOnPaste=55]="formatOnPaste",o[o.formatOnType=56]="formatOnType",o[o.glyphMargin=57]="glyphMargin",o[o.gotoLocation=58]="gotoLocation",o[o.hideCursorInOverviewRuler=59]="hideCursorInOverviewRuler",o[o.hover=60]="hover",o[o.inDiffEditor=61]="inDiffEditor",o[o.inlineSuggest=62]="inlineSuggest",o[o.inlineEdit=63]="inlineEdit",o[o.letterSpacing=64]="letterSpacing",o[o.lightbulb=65]="lightbulb",o[o.lineDecorationsWidth=66]="lineDecorationsWidth",o[o.lineHeight=67]="lineHeight",o[o.lineNumbers=68]="lineNumbers",o[o.lineNumbersMinChars=69]="lineNumbersMinChars",o[o.linkedEditing=70]="linkedEditing",o[o.links=71]="links",o[o.matchBrackets=72]="matchBrackets",o[o.minimap=73]="minimap",o[o.mouseStyle=74]="mouseStyle",o[o.mouseWheelScrollSensitivity=75]="mouseWheelScrollSensitivity",o[o.mouseWheelZoom=76]="mouseWheelZoom",o[o.multiCursorMergeOverlapping=77]="multiCursorMergeOverlapping",o[o.multiCursorModifier=78]="multiCursorModifier",o[o.multiCursorPaste=79]="multiCursorPaste",o[o.multiCursorLimit=80]="multiCursorLimit",o[o.occurrencesHighlight=81]="occurrencesHighlight",o[o.overviewRulerBorder=82]="overviewRulerBorder",o[o.overviewRulerLanes=83]="overviewRulerLanes",o[o.padding=84]="padding",o[o.pasteAs=85]="pasteAs",o[o.parameterHints=86]="parameterHints",o[o.peekWidgetDefaultFocus=87]="peekWidgetDefaultFocus",o[o.placeholder=88]="placeholder",o[o.definitionLinkOpensInPeek=89]="definitionLinkOpensInPeek",o[o.quickSuggestions=90]="quickSuggestions",o[o.quickSuggestionsDelay=91]="quickSuggestionsDelay",o[o.readOnly=92]="readOnly",o[o.readOnlyMessage=93]="readOnlyMessage",o[o.renameOnType=94]="renameOnType",o[o.renderControlCharacters=95]="renderControlCharacters",o[o.renderFinalNewline=96]="renderFinalNewline",o[o.renderLineHighlight=97]="renderLineHighlight",o[o.renderLineHighlightOnlyWhenFocus=98]="renderLineHighlightOnlyWhenFocus",o[o.renderValidationDecorations=99]="renderValidationDecorations",o[o.renderWhitespace=100]="renderWhitespace",o[o.revealHorizontalRightPadding=101]="revealHorizontalRightPadding",o[o.roundedSelection=102]="roundedSelection",o[o.rulers=103]="rulers",o[o.scrollbar=104]="scrollbar",o[o.scrollBeyondLastColumn=105]="scrollBeyondLastColumn",o[o.scrollBeyondLastLine=106]="scrollBeyondLastLine",o[o.scrollPredominantAxis=107]="scrollPredominantAxis",o[o.selectionClipboard=108]="selectionClipboard",o[o.selectionHighlight=109]="selectionHighlight",o[o.selectOnLineNumbers=110]="selectOnLineNumbers",o[o.showFoldingControls=111]="showFoldingControls",o[o.showUnused=112]="showUnused",o[o.snippetSuggestions=113]="snippetSuggestions",o[o.smartSelect=114]="smartSelect",o[o.smoothScrolling=115]="smoothScrolling",o[o.stickyScroll=116]="stickyScroll",o[o.stickyTabStops=117]="stickyTabStops",o[o.stopRenderingLineAfter=118]="stopRenderingLineAfter",o[o.suggest=119]="suggest",o[o.suggestFontSize=120]="suggestFontSize",o[o.suggestLineHeight=121]="suggestLineHeight",o[o.suggestOnTriggerCharacters=122]="suggestOnTriggerCharacters",o[o.suggestSelection=123]="suggestSelection",o[o.tabCompletion=124]="tabCompletion",o[o.tabIndex=125]="tabIndex",o[o.unicodeHighlighting=126]="unicodeHighlighting",o[o.unusualLineTerminators=127]="unusualLineTerminators",o[o.useShadowDOM=128]="useShadowDOM",o[o.useTabStops=129]="useTabStops",o[o.wordBreak=130]="wordBreak",o[o.wordSegmenterLocales=131]="wordSegmenterLocales",o[o.wordSeparators=132]="wordSeparators",o[o.wordWrap=133]="wordWrap",o[o.wordWrapBreakAfterCharacters=134]="wordWrapBreakAfterCharacters",o[o.wordWrapBreakBeforeCharacters=135]="wordWrapBreakBeforeCharacters",o[o.wordWrapColumn=136]="wordWrapColumn",o[o.wordWrapOverride1=137]="wordWrapOverride1",o[o.wordWrapOverride2=138]="wordWrapOverride2",o[o.wrappingIndent=139]="wrappingIndent",o[o.wrappingStrategy=140]="wrappingStrategy",o[o.showDeprecated=141]="showDeprecated",o[o.inlayHints=142]="inlayHints",o[o.editorClassName=143]="editorClassName",o[o.pixelRatio=144]="pixelRatio",o[o.tabFocusMode=145]="tabFocusMode",o[o.layoutInfo=146]="layoutInfo",o[o.wrappingInfo=147]="wrappingInfo",o[o.defaultColorDecorators=148]="defaultColorDecorators",o[o.colorDecoratorsActivatedOn=149]="colorDecoratorsActivatedOn",o[o.inlineCompletionsAccessibilityVerbose=150]="inlineCompletionsAccessibilityVerbose"})(XL||(XL={}));var JL;(function(o){o[o.TextDefined=0]="TextDefined",o[o.LF=1]="LF",o[o.CRLF=2]="CRLF"})(JL||(JL={}));var ex;(function(o){o[o.LF=0]="LF",o[o.CRLF=1]="CRLF"})(ex||(ex={}));var tx;(function(o){o[o.Left=1]="Left",o[o.Center=2]="Center",o[o.Right=3]="Right"})(tx||(tx={}));var ix;(function(o){o[o.Increase=0]="Increase",o[o.Decrease=1]="Decrease"})(ix||(ix={}));var nx;(function(o){o[o.None=0]="None",o[o.Indent=1]="Indent",o[o.IndentOutdent=2]="IndentOutdent",o[o.Outdent=3]="Outdent"})(nx||(nx={}));var sx;(function(o){o[o.Both=0]="Both",o[o.Right=1]="Right",o[o.Left=2]="Left",o[o.None=3]="None"})(sx||(sx={}));var ox;(function(o){o[o.Type=1]="Type",o[o.Parameter=2]="Parameter"})(ox||(ox={}));var rx;(function(o){o[o.Automatic=0]="Automatic",o[o.Explicit=1]="Explicit"})(rx||(rx={}));var ax;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(ax||(ax={}));var lx;(function(o){o[o.DependsOnKbLayout=-1]="DependsOnKbLayout",o[o.Unknown=0]="Unknown",o[o.Backspace=1]="Backspace",o[o.Tab=2]="Tab",o[o.Enter=3]="Enter",o[o.Shift=4]="Shift",o[o.Ctrl=5]="Ctrl",o[o.Alt=6]="Alt",o[o.PauseBreak=7]="PauseBreak",o[o.CapsLock=8]="CapsLock",o[o.Escape=9]="Escape",o[o.Space=10]="Space",o[o.PageUp=11]="PageUp",o[o.PageDown=12]="PageDown",o[o.End=13]="End",o[o.Home=14]="Home",o[o.LeftArrow=15]="LeftArrow",o[o.UpArrow=16]="UpArrow",o[o.RightArrow=17]="RightArrow",o[o.DownArrow=18]="DownArrow",o[o.Insert=19]="Insert",o[o.Delete=20]="Delete",o[o.Digit0=21]="Digit0",o[o.Digit1=22]="Digit1",o[o.Digit2=23]="Digit2",o[o.Digit3=24]="Digit3",o[o.Digit4=25]="Digit4",o[o.Digit5=26]="Digit5",o[o.Digit6=27]="Digit6",o[o.Digit7=28]="Digit7",o[o.Digit8=29]="Digit8",o[o.Digit9=30]="Digit9",o[o.KeyA=31]="KeyA",o[o.KeyB=32]="KeyB",o[o.KeyC=33]="KeyC",o[o.KeyD=34]="KeyD",o[o.KeyE=35]="KeyE",o[o.KeyF=36]="KeyF",o[o.KeyG=37]="KeyG",o[o.KeyH=38]="KeyH",o[o.KeyI=39]="KeyI",o[o.KeyJ=40]="KeyJ",o[o.KeyK=41]="KeyK",o[o.KeyL=42]="KeyL",o[o.KeyM=43]="KeyM",o[o.KeyN=44]="KeyN",o[o.KeyO=45]="KeyO",o[o.KeyP=46]="KeyP",o[o.KeyQ=47]="KeyQ",o[o.KeyR=48]="KeyR",o[o.KeyS=49]="KeyS",o[o.KeyT=50]="KeyT",o[o.KeyU=51]="KeyU",o[o.KeyV=52]="KeyV",o[o.KeyW=53]="KeyW",o[o.KeyX=54]="KeyX",o[o.KeyY=55]="KeyY",o[o.KeyZ=56]="KeyZ",o[o.Meta=57]="Meta",o[o.ContextMenu=58]="ContextMenu",o[o.F1=59]="F1",o[o.F2=60]="F2",o[o.F3=61]="F3",o[o.F4=62]="F4",o[o.F5=63]="F5",o[o.F6=64]="F6",o[o.F7=65]="F7",o[o.F8=66]="F8",o[o.F9=67]="F9",o[o.F10=68]="F10",o[o.F11=69]="F11",o[o.F12=70]="F12",o[o.F13=71]="F13",o[o.F14=72]="F14",o[o.F15=73]="F15",o[o.F16=74]="F16",o[o.F17=75]="F17",o[o.F18=76]="F18",o[o.F19=77]="F19",o[o.F20=78]="F20",o[o.F21=79]="F21",o[o.F22=80]="F22",o[o.F23=81]="F23",o[o.F24=82]="F24",o[o.NumLock=83]="NumLock",o[o.ScrollLock=84]="ScrollLock",o[o.Semicolon=85]="Semicolon",o[o.Equal=86]="Equal",o[o.Comma=87]="Comma",o[o.Minus=88]="Minus",o[o.Period=89]="Period",o[o.Slash=90]="Slash",o[o.Backquote=91]="Backquote",o[o.BracketLeft=92]="BracketLeft",o[o.Backslash=93]="Backslash",o[o.BracketRight=94]="BracketRight",o[o.Quote=95]="Quote",o[o.OEM_8=96]="OEM_8",o[o.IntlBackslash=97]="IntlBackslash",o[o.Numpad0=98]="Numpad0",o[o.Numpad1=99]="Numpad1",o[o.Numpad2=100]="Numpad2",o[o.Numpad3=101]="Numpad3",o[o.Numpad4=102]="Numpad4",o[o.Numpad5=103]="Numpad5",o[o.Numpad6=104]="Numpad6",o[o.Numpad7=105]="Numpad7",o[o.Numpad8=106]="Numpad8",o[o.Numpad9=107]="Numpad9",o[o.NumpadMultiply=108]="NumpadMultiply",o[o.NumpadAdd=109]="NumpadAdd",o[o.NUMPAD_SEPARATOR=110]="NUMPAD_SEPARATOR",o[o.NumpadSubtract=111]="NumpadSubtract",o[o.NumpadDecimal=112]="NumpadDecimal",o[o.NumpadDivide=113]="NumpadDivide",o[o.KEY_IN_COMPOSITION=114]="KEY_IN_COMPOSITION",o[o.ABNT_C1=115]="ABNT_C1",o[o.ABNT_C2=116]="ABNT_C2",o[o.AudioVolumeMute=117]="AudioVolumeMute",o[o.AudioVolumeUp=118]="AudioVolumeUp",o[o.AudioVolumeDown=119]="AudioVolumeDown",o[o.BrowserSearch=120]="BrowserSearch",o[o.BrowserHome=121]="BrowserHome",o[o.BrowserBack=122]="BrowserBack",o[o.BrowserForward=123]="BrowserForward",o[o.MediaTrackNext=124]="MediaTrackNext",o[o.MediaTrackPrevious=125]="MediaTrackPrevious",o[o.MediaStop=126]="MediaStop",o[o.MediaPlayPause=127]="MediaPlayPause",o[o.LaunchMediaPlayer=128]="LaunchMediaPlayer",o[o.LaunchMail=129]="LaunchMail",o[o.LaunchApp2=130]="LaunchApp2",o[o.Clear=131]="Clear",o[o.MAX_VALUE=132]="MAX_VALUE"})(lx||(lx={}));var cx;(function(o){o[o.Hint=1]="Hint",o[o.Info=2]="Info",o[o.Warning=4]="Warning",o[o.Error=8]="Error"})(cx||(cx={}));var dx;(function(o){o[o.Unnecessary=1]="Unnecessary",o[o.Deprecated=2]="Deprecated"})(dx||(dx={}));var hx;(function(o){o[o.Inline=1]="Inline",o[o.Gutter=2]="Gutter"})(hx||(hx={}));var ux;(function(o){o[o.Normal=1]="Normal",o[o.Underlined=2]="Underlined"})(ux||(ux={}));var fx;(function(o){o[o.UNKNOWN=0]="UNKNOWN",o[o.TEXTAREA=1]="TEXTAREA",o[o.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",o[o.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",o[o.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",o[o.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",o[o.CONTENT_TEXT=6]="CONTENT_TEXT",o[o.CONTENT_EMPTY=7]="CONTENT_EMPTY",o[o.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",o[o.CONTENT_WIDGET=9]="CONTENT_WIDGET",o[o.OVERVIEW_RULER=10]="OVERVIEW_RULER",o[o.SCROLLBAR=11]="SCROLLBAR",o[o.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",o[o.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"})(fx||(fx={}));var gx;(function(o){o[o.AIGenerated=1]="AIGenerated"})(gx||(gx={}));var mx;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(mx||(mx={}));var px;(function(o){o[o.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",o[o.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",o[o.TOP_CENTER=2]="TOP_CENTER"})(px||(px={}));var _x;(function(o){o[o.Left=1]="Left",o[o.Center=2]="Center",o[o.Right=4]="Right",o[o.Full=7]="Full"})(_x||(_x={}));var bx;(function(o){o[o.Word=0]="Word",o[o.Line=1]="Line",o[o.Suggest=2]="Suggest"})(bx||(bx={}));var Cx;(function(o){o[o.Left=0]="Left",o[o.Right=1]="Right",o[o.None=2]="None",o[o.LeftOfInjectedText=3]="LeftOfInjectedText",o[o.RightOfInjectedText=4]="RightOfInjectedText"})(Cx||(Cx={}));var vx;(function(o){o[o.Off=0]="Off",o[o.On=1]="On",o[o.Relative=2]="Relative",o[o.Interval=3]="Interval",o[o.Custom=4]="Custom"})(vx||(vx={}));var wx;(function(o){o[o.None=0]="None",o[o.Text=1]="Text",o[o.Blocks=2]="Blocks"})(wx||(wx={}));var yx;(function(o){o[o.Smooth=0]="Smooth",o[o.Immediate=1]="Immediate"})(yx||(yx={}));var Sx;(function(o){o[o.Auto=1]="Auto",o[o.Hidden=2]="Hidden",o[o.Visible=3]="Visible"})(Sx||(Sx={}));var Lx;(function(o){o[o.LTR=0]="LTR",o[o.RTL=1]="RTL"})(Lx||(Lx={}));var xx;(function(o){o.Off="off",o.OnCode="onCode",o.On="on"})(xx||(xx={}));var kx;(function(o){o[o.Invoke=1]="Invoke",o[o.TriggerCharacter=2]="TriggerCharacter",o[o.ContentChange=3]="ContentChange"})(kx||(kx={}));var Dx;(function(o){o[o.File=0]="File",o[o.Module=1]="Module",o[o.Namespace=2]="Namespace",o[o.Package=3]="Package",o[o.Class=4]="Class",o[o.Method=5]="Method",o[o.Property=6]="Property",o[o.Field=7]="Field",o[o.Constructor=8]="Constructor",o[o.Enum=9]="Enum",o[o.Interface=10]="Interface",o[o.Function=11]="Function",o[o.Variable=12]="Variable",o[o.Constant=13]="Constant",o[o.String=14]="String",o[o.Number=15]="Number",o[o.Boolean=16]="Boolean",o[o.Array=17]="Array",o[o.Object=18]="Object",o[o.Key=19]="Key",o[o.Null=20]="Null",o[o.EnumMember=21]="EnumMember",o[o.Struct=22]="Struct",o[o.Event=23]="Event",o[o.Operator=24]="Operator",o[o.TypeParameter=25]="TypeParameter"})(Dx||(Dx={}));var Ix;(function(o){o[o.Deprecated=1]="Deprecated"})(Ix||(Ix={}));var Ex;(function(o){o[o.Hidden=0]="Hidden",o[o.Blink=1]="Blink",o[o.Smooth=2]="Smooth",o[o.Phase=3]="Phase",o[o.Expand=4]="Expand",o[o.Solid=5]="Solid"})(Ex||(Ex={}));var Nx;(function(o){o[o.Line=1]="Line",o[o.Block=2]="Block",o[o.Underline=3]="Underline",o[o.LineThin=4]="LineThin",o[o.BlockOutline=5]="BlockOutline",o[o.UnderlineThin=6]="UnderlineThin"})(Nx||(Nx={}));var Tx;(function(o){o[o.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",o[o.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",o[o.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",o[o.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"})(Tx||(Tx={}));var Mx;(function(o){o[o.None=0]="None",o[o.Same=1]="Same",o[o.Indent=2]="Indent",o[o.DeepIndent=3]="DeepIndent"})(Mx||(Mx={}));const bf=class bf{static chord(e,t){return Vp(e,t)}};bf.CtrlCmd=2048,bf.Shift=1024,bf.Alt=512,bf.WinCtrl=256;let Rx=bf;function cF(){return{editor:void 0,languages:void 0,CancellationTokenSource:In,Emitter:A,KeyCode:lx,KeyMod:Rx,Position:P,Range:I,Selection:Fe,SelectionDirection:Lx,MarkerSeverity:cx,MarkerTag:dx,Uri:ve,Token:zp}}function nH(o,e){const t=o;typeof t.vscodeWindowId!="number"&&Object.defineProperty(t,"vscodeWindowId",{get:()=>e})}const _t=window;function dF(o){return o}class sH{constructor(e,t){this.lastCache=void 0,this.lastArgKey=void 0,typeof e=="function"?(this._fn=e,this._computeKey=dF):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);return this.lastArgKey!==t&&(this.lastArgKey=t,this.lastCache=this._fn(e)),this.lastCache}}class XM{get cachedValues(){return this._map}constructor(e,t){this._map=new Map,this._map2=new Map,typeof e=="function"?(this._fn=e,this._computeKey=dF):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);if(this._map2.has(t))return this._map2.get(t);const i=this._fn(e);return this._map.set(e,i),this._map2.set(t,i),i}}class ua{constructor(e){this.executor=e,this._didRun=!1}get value(){if(!this._didRun)try{this._value=this.executor()}catch(e){this._error=e}finally{this._didRun=!0}if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}function hF(o){return!o||typeof o!="string"?!0:o.trim().length===0}const oH=/{(\d+)}/g;function $p(o,...e){return e.length===0?o:o.replace(oH,function(t,i){const n=parseInt(i,10);return isNaN(n)||n<0||n>=e.length?t:e[n]})}function rH(o){return o.replace(/[<>"'&]/g,e=>{switch(e){case"<":return"<";case">":return">";case'"':return""";case"'":return"'";case"&":return"&"}return e})}function Km(o){return o.replace(/[<>&]/g,function(e){switch(e){case"<":return"<";case">":return">";case"&":return"&";default:return e}})}function xl(o){return o.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function k0(o,e){if(!o||!e)return o;const t=e.length;if(t===0||o.length===0)return o;let i=0;for(;o.indexOf(e,i)===i;)i=i+t;return o.substring(i)}function aH(o,e){if(!o||!e)return o;const t=e.length,i=o.length;if(t===0||i===0)return o;let n=i,s=-1;for(;s=o.lastIndexOf(e,n-1),!(s===-1||s+t!==n);){if(s===0)return"";n=s}return o.substring(0,n)}function lH(o){return o.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}function uF(o,e,t={}){if(!o)throw new Error("Cannot create regex from empty string");e||(o=xl(o)),t.wholeWord&&(/\B/.test(o.charAt(0))||(o="\\b"+o),/\B/.test(o.charAt(o.length-1))||(o=o+"\\b"));let i="";return t.global&&(i+="g"),t.matchCase||(i+="i"),t.multiline&&(i+="m"),t.unicode&&(i+="u"),new RegExp(o,i)}function cH(o){return o.source==="^"||o.source==="^$"||o.source==="$"||o.source==="^\\s*$"?!1:!!(o.exec("")&&o.lastIndex===0)}function va(o){return o.split(/\r\n|\r|\n/)}function dH(o){const e=[],t=o.split(/(\r\n|\r|\n)/);for(let i=0;i=0;t--){const i=o.charCodeAt(t);if(i!==32&&i!==9)return t}return-1}function Kp(o,e){return oe?1:0}function BN(o,e,t=0,i=o.length,n=0,s=e.length){for(;tc)return 1}const r=i-t,a=s-n;return ra?1:0}function Ax(o,e){return H_(o,e,0,o.length,0,e.length)}function H_(o,e,t=0,i=o.length,n=0,s=e.length){for(;t=128||c>=128)return BN(o.toLowerCase(),e.toLowerCase(),t,i,n,s);Yu(l)&&(l-=32),Yu(c)&&(c-=32);const d=l-c;if(d!==0)return d}const r=i-t,a=s-n;return ra?1:0}function yb(o){return o>=48&&o<=57}function Yu(o){return o>=97&&o<=122}function ql(o){return o>=65&&o<=90}function Qu(o,e){return o.length===e.length&&H_(o,e)===0}function WN(o,e){const t=e.length;return e.length>o.length?!1:H_(o,e,0,t)===0}function Th(o,e){const t=Math.min(o.length,e.length);let i;for(i=0;i1){const i=o.charCodeAt(e-2);if(wi(i))return HN(i,t)}return t}class VN{get offset(){return this._offset}constructor(e,t=0){this._str=e,this._len=e.length,this._offset=t}setOffset(e){this._offset=e}prevCodePoint(){const e=hH(this._str,this._offset);return this._offset-=e>=65536?2:1,e}nextCodePoint(){const e=uC(this._str,this._len,this._offset);return this._offset+=e>=65536?2:1,e}eol(){return this._offset>=this._len}}class fC{get offset(){return this._iterator.offset}constructor(e,t=0){this._iterator=new VN(e,t)}nextGraphemeLength(){const e=gC.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.nextCodePoint());for(;!t.eol();){const s=t.offset,r=e.getGraphemeBreakType(t.nextCodePoint());if(JM(n,r)){t.setOffset(s);break}n=r}return t.offset-i}prevGraphemeLength(){const e=gC.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.prevCodePoint());for(;t.offset>0;){const s=t.offset,r=e.getGraphemeBreakType(t.prevCodePoint());if(JM(r,n)){t.setOffset(s);break}n=r}return i-t.offset}eol(){return this._iterator.eol()}}function zN(o,e){return new fC(o,e).nextGraphemeLength()}function fF(o,e){return new fC(o,e).prevGraphemeLength()}function uH(o,e){e>0&&Mh(o.charCodeAt(e))&&e--;const t=e+zN(o,e);return[t-fF(o,t),t]}let Gy;function fH(){return/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDC7\uFDF0-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE35\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDD23\uDE80-\uDEA9\uDEAD-\uDF45\uDF51-\uDF81\uDF86-\uDFF6]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD4B-\uDFFF]|\uD83B[\uDC00-\uDEBB])/}function sg(o){return Gy||(Gy=fH()),Gy.test(o)}const gH=/^[\t\n\r\x20-\x7E]*$/;function D0(o){return gH.test(o)}const gF=/[\u2028\u2029]/;function mF(o){return gF.test(o)}function Rc(o){return o>=11904&&o<=55215||o>=63744&&o<=64255||o>=65281&&o<=65374}function UN(o){return o>=127462&&o<=127487||o===8986||o===8987||o===9200||o===9203||o>=9728&&o<=10175||o===11088||o===11093||o>=127744&&o<=128591||o>=128640&&o<=128764||o>=128992&&o<=129008||o>=129280&&o<=129535||o>=129648&&o<=129782}const mH="\uFEFF";function $N(o){return!!(o&&o.length>0&&o.charCodeAt(0)===65279)}function pF(o){return o=o%52,o<26?String.fromCharCode(97+o):String.fromCharCode(65+o-26)}function JM(o,e){return o===0?e!==5&&e!==7:o===2&&e===3?!1:o===4||o===2||o===3||e===4||e===2||e===3?!0:!(o===8&&(e===8||e===9||e===11||e===12)||(o===11||o===9)&&(e===9||e===10)||(o===12||o===10)&&e===10||e===5||e===13||e===7||o===1||o===13&&e===14||o===6&&e===6)}const Rd=class Rd{static getInstance(){return Rd._INSTANCE||(Rd._INSTANCE=new Rd),Rd._INSTANCE}constructor(){this._data=pH()}getGraphemeBreakType(e){if(e<32)return e===10?3:e===13?2:4;if(e<127)return 0;const t=this._data,i=t.length/3;let n=1;for(;n<=i;)if(et[3*n+1])n=2*n+1;else return t[3*n+2];return 0}};Rd._INSTANCE=null;let gC=Rd;function pH(){return JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}function _H(o,e){if(o===0)return 0;const t=bH(o,e);if(t!==void 0)return t;const i=new VN(e,o);return i.prevCodePoint(),i.offset}function bH(o,e){const t=new VN(e,o);let i=t.prevCodePoint();for(;CH(i)||i===65039||i===8419;){if(t.offset===0)return;i=t.prevCodePoint()}if(!UN(i))return;let n=t.offset;return n>0&&t.prevCodePoint()===8205&&(n=t.offset),n}function CH(o){return 127995<=o&&o<=127999}const vH=" ",Wr=class Wr{static getInstance(e){return Wr.cache.get(Array.from(e))}static getLocales(){return Wr._locales.value}constructor(e){this.confusableDictionary=e}isAmbiguous(e){return this.confusableDictionary.has(e)}getPrimaryConfusable(e){return this.confusableDictionary.get(e)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}};Wr.ambiguousCharacterData=new ua(()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,8218,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,8242,96,1370,96,1523,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71922,67,71913,67,65315,67,8557,67,8450,67,8493,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71919,87,71910,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,66293,90,71909,90,65338,90,8484,90,8488,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65297,49,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"cs":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"es":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"fr":[65374,126,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"it":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ja":[8211,45,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65292,44,65307,59],"ko":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pt-BR":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ru":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"zh-hans":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41],"zh-hant":[8211,45,65374,126,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65307,59]}')),Wr.cache=new sH({getCacheKey:JSON.stringify},e=>{function t(d){const h=new Map;for(let u=0;u!d.startsWith("_")&&d in s);r.length===0&&(r=["_default"]);let a;for(const d of r){const h=t(s[d]);a=n(a,h)}const l=t(s._common),c=i(l,a);return new Wr(c)}),Wr._locales=new ua(()=>Object.keys(Wr.ambiguousCharacterData.value).filter(e=>!e.startsWith("_")));let jp=Wr;const Cf=class Cf{static getRawData(){return JSON.parse("[9,10,11,12,13,32,127,160,173,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8203,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12288,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999]")}static getData(){return this._data||(this._data=new Set(Cf.getRawData())),this._data}static isInvisibleCharacter(e){return Cf.getData().has(e)}static get codePoints(){return Cf.getData()}};Cf._data=void 0;let jm=Cf;const vw=class vw{constructor(){this.mapWindowIdToZoomFactor=new Map}getZoomFactor(e){return this.mapWindowIdToZoomFactor.get(this.getWindowId(e))??1}getWindowId(e){return e.vscodeWindowId}};vw.INSTANCE=new vw;let Ox=vw;function _F(o,e,t){typeof e=="string"&&(e=o.matchMedia(e)),e.addEventListener("change",t)}function wH(o){return Ox.INSTANCE.getZoomFactor(o)}const Bg=navigator.userAgent,Mo=Bg.indexOf("Firefox")>=0,I0=Bg.indexOf("AppleWebKit")>=0,V_=Bg.indexOf("Chrome")>=0,Ac=!V_&&Bg.indexOf("Safari")>=0,bF=!V_&&!Ac&&I0;Bg.indexOf("Electron/")>=0;const eR=Bg.indexOf("Android")>=0;let Zy=!1;if(typeof _t.matchMedia=="function"){const o=_t.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),e=_t.matchMedia("(display-mode: fullscreen)");Zy=o.matches,_F(_t,o,({matches:t})=>{Zy&&e.matches||(Zy=t)})}const KN={clipboard:{writeText:oC||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:oC||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},pointerEvents:_t.PointerEvent&&("ontouchstart"in _t||navigator.maxTouchPoints>0)};function Fx(o,e){if(typeof o=="number"){if(o===0)return null;const t=(o&65535)>>>0,i=(o&4294901760)>>>16;return i!==0?new Yy([Sb(t,e),Sb(i,e)]):new Yy([Sb(t,e)])}else{const t=[];for(let i=0;i{const r=e.token.onCancellationRequested(()=>{r.dispose(),s(new ha)});Promise.resolve(t).then(a=>{r.dispose(),e.dispose(),n(a)},a=>{r.dispose(),e.dispose(),s(a)})});return new class{cancel(){e.cancel(),e.dispose()}then(n,s){return i.then(n,s)}catch(n){return this.then(void 0,n)}finally(n){return i.finally(n)}}}function TH(o,e,t){return new Promise((i,n)=>{const s=e.onCancellationRequested(()=>{s.dispose(),i(t)});o.then(i,n).finally(()=>s.dispose())})}class MH{constructor(){this.isDisposed=!1,this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null}queue(e){if(this.isDisposed)return Promise.reject(new Error("Throttler is disposed"));if(this.activePromise){if(this.queuedPromiseFactory=e,!this.queuedPromise){const t=()=>{if(this.queuedPromise=null,this.isDisposed)return;const i=this.queue(this.queuedPromiseFactory);return this.queuedPromiseFactory=null,i};this.queuedPromise=new Promise(i=>{this.activePromise.then(t,t).then(i)})}return new Promise((t,i)=>{this.queuedPromise.then(t,i)})}return this.activePromise=e(),new Promise((t,i)=>{this.activePromise.then(n=>{this.activePromise=null,t(n)},n=>{this.activePromise=null,i(n)})})}dispose(){this.isDisposed=!0}}const RH=(o,e)=>{let t=!0;const i=setTimeout(()=>{t=!1,e()},o);return{isTriggered:()=>t,dispose:()=>{clearTimeout(i),t=!1}}},AH=o=>{let e=!0;return queueMicrotask(()=>{e&&(e=!1,o())}),{isTriggered:()=>e,dispose:()=>{e=!1}}};class z_{constructor(e){this.defaultDelay=e,this.deferred=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}trigger(e,t=this.defaultDelay){this.task=e,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise((n,s)=>{this.doResolve=n,this.doReject=s}).then(()=>{if(this.completionPromise=null,this.doResolve=null,this.task){const n=this.task;return this.task=null,n()}}));const i=()=>{this.deferred=null,this.doResolve?.(null)};return this.deferred=t===CF?AH(i):RH(t,i),this.completionPromise}isTriggered(){return!!this.deferred?.isTriggered()}cancel(){this.cancelTimeout(),this.completionPromise&&(this.doReject?.(new ha),this.completionPromise=null)}cancelTimeout(){this.deferred?.dispose(),this.deferred=null}dispose(){this.cancel()}}class vF{constructor(e){this.delayer=new z_(e),this.throttler=new MH}trigger(e,t){return this.delayer.trigger(()=>this.throttler.queue(e),t)}cancel(){this.delayer.cancel()}dispose(){this.delayer.dispose(),this.throttler.dispose()}}function og(o,e){return e?new Promise((t,i)=>{const n=setTimeout(()=>{s.dispose(),t()},o),s=e.onCancellationRequested(()=>{clearTimeout(n),s.dispose(),i(new ha)})}):wa(t=>og(o,t))}function rg(o,e=0,t){const i=setTimeout(()=>{o(),t&&n.dispose()},e),n=_e(()=>{clearTimeout(i),t?.deleteAndLeak(n)});return t?.add(n),n}class wr{constructor(e,t){this._isDisposed=!1,this._token=-1,typeof e=="function"&&typeof t=="number"&&this.setIfNotSet(e,t)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(e,t){if(this._isDisposed)throw new nt("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,e()},t)}setIfNotSet(e,t){if(this._isDisposed)throw new nt("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,e()},t))}}class jN{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(e,t,i=globalThis){if(this.isDisposed)throw new nt("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();const n=i.setInterval(()=>{e()},t);this.disposable=_e(()=>{i.clearInterval(n),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}}class ci{constructor(e,t){this.timeoutToken=-1,this.runner=e,this.timeout=t,this.timeoutHandler=this.onTimeout.bind(this)}dispose(){this.cancel(),this.runner=null}cancel(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=-1)}schedule(e=this.timeout){this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,e)}get delay(){return this.timeout}set delay(e){this.timeout=e}isScheduled(){return this.timeoutToken!==-1}onTimeout(){this.timeoutToken=-1,this.runner&&this.doRun()}doRun(){this.runner?.()}}let wF,qm;(function(){typeof globalThis.requestIdleCallback!="function"||typeof globalThis.cancelIdleCallback!="function"?qm=(o,e)=>{z5(()=>{if(t)return;const i=Date.now()+15;e(Object.freeze({didTimeout:!0,timeRemaining(){return Math.max(0,i-Date.now())}}))});let t=!1;return{dispose(){t||(t=!0)}}}:qm=(o,e,t)=>{const i=o.requestIdleCallback(e,typeof t=="number"?{timeout:t}:void 0);let n=!1;return{dispose(){n||(n=!0,o.cancelIdleCallback(i))}}},wF=o=>qm(globalThis,o)})();class yF{constructor(e,t){this._didRun=!1,this._executor=()=>{try{this._value=t()}catch(i){this._error=i}finally{this._didRun=!0}},this._handle=qm(e,()=>this._executor())}dispose(){this._handle.dispose()}get value(){if(this._didRun||(this._handle.dispose(),this._executor()),this._error)throw this._error;return this._value}get isInitialized(){return this._didRun}}class PH extends yF{constructor(e){super(globalThis,e)}}class qN{get isRejected(){return this.outcome?.outcome===1}get isSettled(){return!!this.outcome}constructor(){this.p=new Promise((e,t)=>{this.completeCallback=e,this.errorCallback=t})}complete(e){return new Promise(t=>{this.completeCallback(e),this.outcome={outcome:0,value:e},t()})}error(e){return new Promise(t=>{this.errorCallback(e),this.outcome={outcome:1,value:e},t()})}cancel(){return this.error(new ha)}}var Wx;(function(o){async function e(i){let n;const s=await Promise.all(i.map(r=>r.then(a=>a,a=>{n||(n=a)})));if(typeof n<"u")throw n;return s}o.settled=e;function t(i){return new Promise(async(n,s)=>{try{await i(n,s)}catch(r){s(r)}})}o.withAsyncBody=t})(Wx||(Wx={}));const es=class es{static fromArray(e){return new es(t=>{t.emitMany(e)})}static fromPromise(e){return new es(async t=>{t.emitMany(await e)})}static fromPromises(e){return new es(async t=>{await Promise.all(e.map(async i=>t.emitOne(await i)))})}static merge(e){return new es(async t=>{await Promise.all(e.map(async i=>{for await(const n of i)t.emitOne(n)}))})}constructor(e,t){this._state=0,this._results=[],this._error=null,this._onReturn=t,this._onStateChanged=new A,queueMicrotask(async()=>{const i={emitOne:n=>this.emitOne(n),emitMany:n=>this.emitMany(n),reject:n=>this.reject(n)};try{await Promise.resolve(e(i)),this.resolve()}catch(n){this.reject(n)}finally{i.emitOne=void 0,i.emitMany=void 0,i.reject=void 0}})}[Symbol.asyncIterator](){let e=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(e(this._onReturn?.(),{done:!0,value:void 0})}}static map(e,t){return new es(async i=>{for await(const n of e)i.emitOne(t(n))})}map(e){return es.map(this,e)}static filter(e,t){return new es(async i=>{for await(const n of e)t(n)&&i.emitOne(n)})}filter(e){return es.filter(this,e)}static coalesce(e){return es.filter(e,t=>!!t)}coalesce(){return es.coalesce(this)}static async toPromise(e){const t=[];for await(const i of e)t.push(i);return t}toPromise(){return es.toPromise(this)}emitOne(e){this._state===0&&(this._results.push(e),this._onStateChanged.fire())}emitMany(e){this._state===0&&(this._results=this._results.concat(e),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(e){this._state===0&&(this._state=2,this._error=e,this._onStateChanged.fire())}};es.EMPTY=es.fromArray([]);let Ms=es;class OH extends Ms{constructor(e,t){super(t),this._source=e}cancel(){this._source.cancel()}}function FH(o){const e=new In,t=o(e.token);return new OH(e,async i=>{const n=e.token.onCancellationRequested(()=>{n.dispose(),e.dispose(),i.reject(new ha)});try{for await(const s of t){if(e.token.isCancellationRequested)return;i.emitOne(s)}n.dispose(),e.dispose()}catch(s){n.dispose(),e.dispose(),i.reject(s)}})}const{entries:SF,setPrototypeOf:iR,isFrozen:BH,getPrototypeOf:WH,getOwnPropertyDescriptor:HH}=Object;let{freeze:us,seal:Ro,create:LF}=Object,{apply:Hx,construct:Vx}=typeof Reflect<"u"&&Reflect;us||(us=function(e){return e});Ro||(Ro=function(e){return e});Hx||(Hx=function(e,t,i){return e.apply(t,i)});Vx||(Vx=function(e,t){return new e(...t)});const Lb=lo(Array.prototype.forEach),nR=lo(Array.prototype.pop),im=lo(Array.prototype.push),S1=lo(String.prototype.toLowerCase),Qy=lo(String.prototype.toString),sR=lo(String.prototype.match),nm=lo(String.prototype.replace),VH=lo(String.prototype.indexOf),zH=lo(String.prototype.trim),Yo=lo(Object.prototype.hasOwnProperty),Qn=lo(RegExp.prototype.test),sm=UH(TypeError);function lo(o){return function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),n=1;n2&&arguments[2]!==void 0?arguments[2]:S1;iR&&iR(o,null);let i=e.length;for(;i--;){let n=e[i];if(typeof n=="string"){const s=t(n);s!==n&&(BH(e)||(e[i]=s),n=s)}o[n]=!0}return o}function $H(o){for(let e=0;e/gm),ZH=Ro(/\${[\w\W]*}/gm),YH=Ro(/^data-[\-\w.\u00B7-\uFFFF]/),QH=Ro(/^aria-[\-\w]+$/),xF=Ro(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),XH=Ro(/^(?:\w+script|data):/i),JH=Ro(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),kF=Ro(/^html$/i),eV=Ro(/^[a-z][.\w]*(-[.\w]+)+$/i);var cR=Object.freeze({__proto__:null,MUSTACHE_EXPR:qH,ERB_EXPR:GH,TMPLIT_EXPR:ZH,DATA_ATTR:YH,ARIA_ATTR:QH,IS_ALLOWED_URI:xF,IS_SCRIPT_OR_DATA:XH,ATTR_WHITESPACE:JH,DOCTYPE_NAME:kF,CUSTOM_ELEMENT:eV});const rm={element:1,text:3,progressingInstruction:7,comment:8,document:9},tV=function(){return typeof window>"u"?null:window},iV=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let i=null;const n="data-tt-policy-suffix";t&&t.hasAttribute(n)&&(i=t.getAttribute(n));const s="dompurify"+(i?"#"+i:"");try{return e.createPolicy(s,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return console.warn("TrustedTypes policy "+s+" could not be created."),null}};function DF(){let o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:tV();const e=Oe=>DF(Oe);if(e.version="3.1.7",e.removed=[],!o||!o.document||o.document.nodeType!==rm.document)return e.isSupported=!1,e;let{document:t}=o;const i=t,n=i.currentScript,{DocumentFragment:s,HTMLTemplateElement:r,Node:a,Element:l,NodeFilter:c,NamedNodeMap:d=o.NamedNodeMap||o.MozNamedAttrMap,HTMLFormElement:h,DOMParser:u,trustedTypes:f}=o,g=l.prototype,p=om(g,"cloneNode"),_=om(g,"remove"),b=om(g,"nextSibling"),C=om(g,"childNodes"),w=om(g,"parentNode");if(typeof r=="function"){const Oe=t.createElement("template");Oe.content&&Oe.content.ownerDocument&&(t=Oe.content.ownerDocument)}let v,y="";const{implementation:x,createNodeIterator:L,createDocumentFragment:E,getElementsByTagName:N}=t,{importNode:H}=i;let F={};e.isSupported=typeof SF=="function"&&typeof w=="function"&&x&&x.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:W,ERB_EXPR:j,TMPLIT_EXPR:B,DATA_ATTR:G,ARIA_ATTR:ne,IS_SCRIPT_OR_DATA:ae,ATTR_WHITESPACE:de,CUSTOM_ELEMENT:se}=cR;let{IS_ALLOWED_URI:be}=cR,we=null;const Rt=mt({},[...oR,...Xy,...Jy,...eS,...rR]);let ct=null;const Bt=mt({},[...aR,...tS,...lR,...xb]);let ht=Object.seal(LF(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ei=null,js=null,fi=!0,po=!0,Al=!1,fb=!0,Pl=!1,Yg=!0,Ia=!1,Qg=!1,Xg=!1,Ol=!1,vu=!1,wu=!1,Yc=!0,gb=!1;const mb="user-content-";let yu=!0,Qc=!1,Dr={},Fl=null;const Su=mt({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let pb=null;const Xc=mt({},["audio","video","img","source","image","track"]);let Ea=null;const bs=mt({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ir="http://www.w3.org/1998/Math/MathML",Na="http://www.w3.org/2000/svg",Ti="http://www.w3.org/1999/xhtml";let _o=Ti,Lu=!1,Uo=null;const Ot=mt({},[Ir,Na,Ti],Qy);let Jc=null;const Vy=["application/xhtml+xml","text/html"],zy="text/html";let Hi=null,Bl=null;const Uy=t.createElement("form"),_b=function($){return $ instanceof RegExp||$ instanceof Function},Jg=function(){let $=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(Bl&&Bl===$)){if((!$||typeof $!="object")&&($={}),$=hd($),Jc=Vy.indexOf($.PARSER_MEDIA_TYPE)===-1?zy:$.PARSER_MEDIA_TYPE,Hi=Jc==="application/xhtml+xml"?Qy:S1,we=Yo($,"ALLOWED_TAGS")?mt({},$.ALLOWED_TAGS,Hi):Rt,ct=Yo($,"ALLOWED_ATTR")?mt({},$.ALLOWED_ATTR,Hi):Bt,Uo=Yo($,"ALLOWED_NAMESPACES")?mt({},$.ALLOWED_NAMESPACES,Qy):Ot,Ea=Yo($,"ADD_URI_SAFE_ATTR")?mt(hd(bs),$.ADD_URI_SAFE_ATTR,Hi):bs,pb=Yo($,"ADD_DATA_URI_TAGS")?mt(hd(Xc),$.ADD_DATA_URI_TAGS,Hi):Xc,Fl=Yo($,"FORBID_CONTENTS")?mt({},$.FORBID_CONTENTS,Hi):Su,ei=Yo($,"FORBID_TAGS")?mt({},$.FORBID_TAGS,Hi):{},js=Yo($,"FORBID_ATTR")?mt({},$.FORBID_ATTR,Hi):{},Dr=Yo($,"USE_PROFILES")?$.USE_PROFILES:!1,fi=$.ALLOW_ARIA_ATTR!==!1,po=$.ALLOW_DATA_ATTR!==!1,Al=$.ALLOW_UNKNOWN_PROTOCOLS||!1,fb=$.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Pl=$.SAFE_FOR_TEMPLATES||!1,Yg=$.SAFE_FOR_XML!==!1,Ia=$.WHOLE_DOCUMENT||!1,Ol=$.RETURN_DOM||!1,vu=$.RETURN_DOM_FRAGMENT||!1,wu=$.RETURN_TRUSTED_TYPE||!1,Xg=$.FORCE_BODY||!1,Yc=$.SANITIZE_DOM!==!1,gb=$.SANITIZE_NAMED_PROPS||!1,yu=$.KEEP_CONTENT!==!1,Qc=$.IN_PLACE||!1,be=$.ALLOWED_URI_REGEXP||xF,_o=$.NAMESPACE||Ti,ht=$.CUSTOM_ELEMENT_HANDLING||{},$.CUSTOM_ELEMENT_HANDLING&&_b($.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(ht.tagNameCheck=$.CUSTOM_ELEMENT_HANDLING.tagNameCheck),$.CUSTOM_ELEMENT_HANDLING&&_b($.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(ht.attributeNameCheck=$.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),$.CUSTOM_ELEMENT_HANDLING&&typeof $.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(ht.allowCustomizedBuiltInElements=$.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Pl&&(po=!1),vu&&(Ol=!0),Dr&&(we=mt({},rR),ct=[],Dr.html===!0&&(mt(we,oR),mt(ct,aR)),Dr.svg===!0&&(mt(we,Xy),mt(ct,tS),mt(ct,xb)),Dr.svgFilters===!0&&(mt(we,Jy),mt(ct,tS),mt(ct,xb)),Dr.mathMl===!0&&(mt(we,eS),mt(ct,lR),mt(ct,xb))),$.ADD_TAGS&&(we===Rt&&(we=hd(we)),mt(we,$.ADD_TAGS,Hi)),$.ADD_ATTR&&(ct===Bt&&(ct=hd(ct)),mt(ct,$.ADD_ATTR,Hi)),$.ADD_URI_SAFE_ATTR&&mt(Ea,$.ADD_URI_SAFE_ATTR,Hi),$.FORBID_CONTENTS&&(Fl===Su&&(Fl=hd(Fl)),mt(Fl,$.FORBID_CONTENTS,Hi)),yu&&(we["#text"]=!0),Ia&&mt(we,["html","head","body"]),we.table&&(mt(we,["tbody"]),delete ei.tbody),$.TRUSTED_TYPES_POLICY){if(typeof $.TRUSTED_TYPES_POLICY.createHTML!="function")throw sm('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof $.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw sm('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');v=$.TRUSTED_TYPES_POLICY,y=v.createHTML("")}else v===void 0&&(v=iV(f,n)),v!==null&&typeof y=="string"&&(y=v.createHTML(""));us&&us($),Bl=$}},Xe=mt({},["mi","mo","mn","ms","mtext"]),T=mt({},["annotation-xml"]),M=mt({},["title","style","font","a","script"]),R=mt({},[...Xy,...Jy,...KH]),O=mt({},[...eS,...jH]),V=function($){let ue=w($);(!ue||!ue.tagName)&&(ue={namespaceURI:_o,tagName:"template"});const Ie=S1($.tagName),ui=S1(ue.tagName);return Uo[$.namespaceURI]?$.namespaceURI===Na?ue.namespaceURI===Ti?Ie==="svg":ue.namespaceURI===Ir?Ie==="svg"&&(ui==="annotation-xml"||Xe[ui]):!!R[Ie]:$.namespaceURI===Ir?ue.namespaceURI===Ti?Ie==="math":ue.namespaceURI===Na?Ie==="math"&&T[ui]:!!O[Ie]:$.namespaceURI===Ti?ue.namespaceURI===Na&&!T[ui]||ue.namespaceURI===Ir&&!Xe[ui]?!1:!O[Ie]&&(M[Ie]||!R[Ie]):!!(Jc==="application/xhtml+xml"&&Uo[$.namespaceURI]):!1},Y=function($){im(e.removed,{element:$});try{w($).removeChild($)}catch{_($)}},te=function($,ue){try{im(e.removed,{attribute:ue.getAttributeNode($),from:ue})}catch{im(e.removed,{attribute:null,from:ue})}if(ue.removeAttribute($),$==="is"&&!ct[$])if(Ol||vu)try{Y(ue)}catch{}else try{ue.setAttribute($,"")}catch{}},me=function($){let ue=null,Ie=null;if(Xg)$=""+$;else{const pn=sR($,/^[\r\n\t ]+/);Ie=pn&&pn[0]}Jc==="application/xhtml+xml"&&_o===Ti&&($=''+$+"");const ui=v?v.createHTML($):$;if(_o===Ti)try{ue=new u().parseFromString(ui,Jc)}catch{}if(!ue||!ue.documentElement){ue=x.createDocument(_o,"template",null);try{ue.documentElement.innerHTML=Lu?y:ui}catch{}}const On=ue.body||ue.documentElement;return $&&Ie&&On.insertBefore(t.createTextNode(Ie),On.childNodes[0]||null),_o===Ti?N.call(ue,Ia?"html":"body")[0]:Ia?ue.documentElement:On},ye=function($){return L.call($.ownerDocument||$,$,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},Ve=function($){return $ instanceof h&&(typeof $.nodeName!="string"||typeof $.textContent!="string"||typeof $.removeChild!="function"||!($.attributes instanceof d)||typeof $.removeAttribute!="function"||typeof $.setAttribute!="function"||typeof $.namespaceURI!="string"||typeof $.insertBefore!="function"||typeof $.hasChildNodes!="function")},ft=function($){return typeof a=="function"&&$ instanceof a},Ct=function($,ue,Ie){F[$]&&Lb(F[$],ui=>{ui.call(e,ue,Ie,Bl)})},Si=function($){let ue=null;if(Ct("beforeSanitizeElements",$,null),Ve($))return Y($),!0;const Ie=Hi($.nodeName);if(Ct("uponSanitizeElement",$,{tagName:Ie,allowedTags:we}),$.hasChildNodes()&&!ft($.firstElementChild)&&Qn(/<[/\w]/g,$.innerHTML)&&Qn(/<[/\w]/g,$.textContent)||$.nodeType===rm.progressingInstruction||Yg&&$.nodeType===rm.comment&&Qn(/<[/\w]/g,$.data))return Y($),!0;if(!we[Ie]||ei[Ie]){if(!ei[Ie]&&Zn(Ie)&&(ht.tagNameCheck instanceof RegExp&&Qn(ht.tagNameCheck,Ie)||ht.tagNameCheck instanceof Function&&ht.tagNameCheck(Ie)))return!1;if(yu&&!Fl[Ie]){const ui=w($)||$.parentNode,On=C($)||$.childNodes;if(On&&ui){const pn=On.length;for(let Cs=pn-1;Cs>=0;--Cs){const Er=p(On[Cs],!0);Er.__removalCount=($.__removalCount||0)+1,ui.insertBefore(Er,b($))}}}return Y($),!0}return $ instanceof l&&!V($)||(Ie==="noscript"||Ie==="noembed"||Ie==="noframes")&&Qn(/<\/no(script|embed|frames)/i,$.innerHTML)?(Y($),!0):(Pl&&$.nodeType===rm.text&&(ue=$.textContent,Lb([W,j,B],ui=>{ue=nm(ue,ui," ")}),$.textContent!==ue&&(im(e.removed,{element:$.cloneNode()}),$.textContent=ue)),Ct("afterSanitizeElements",$,null),!1)},Gt=function($,ue,Ie){if(Yc&&(ue==="id"||ue==="name")&&(Ie in t||Ie in Uy))return!1;if(!(po&&!js[ue]&&Qn(G,ue))){if(!(fi&&Qn(ne,ue))){if(!ct[ue]||js[ue]){if(!(Zn($)&&(ht.tagNameCheck instanceof RegExp&&Qn(ht.tagNameCheck,$)||ht.tagNameCheck instanceof Function&&ht.tagNameCheck($))&&(ht.attributeNameCheck instanceof RegExp&&Qn(ht.attributeNameCheck,ue)||ht.attributeNameCheck instanceof Function&&ht.attributeNameCheck(ue))||ue==="is"&&ht.allowCustomizedBuiltInElements&&(ht.tagNameCheck instanceof RegExp&&Qn(ht.tagNameCheck,Ie)||ht.tagNameCheck instanceof Function&&ht.tagNameCheck(Ie))))return!1}else if(!Ea[ue]){if(!Qn(be,nm(Ie,de,""))){if(!((ue==="src"||ue==="xlink:href"||ue==="href")&&$!=="script"&&VH(Ie,"data:")===0&&pb[$])){if(!(Al&&!Qn(ae,nm(Ie,de,"")))){if(Ie)return!1}}}}}}return!0},Zn=function($){return $!=="annotation-xml"&&sR($,se)},qs=function($){Ct("beforeSanitizeAttributes",$,null);const{attributes:ue}=$;if(!ue)return;const Ie={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ct};let ui=ue.length;for(;ui--;){const On=ue[ui],{name:pn,namespaceURI:Cs,value:Er}=On,tm=Hi(pn);let Yn=pn==="value"?Er:zH(Er);if(Ie.attrName=tm,Ie.attrValue=Yn,Ie.keepAttr=!0,Ie.forceKeepAttr=void 0,Ct("uponSanitizeAttribute",$,Ie),Yn=Ie.attrValue,Ie.forceKeepAttr||(te(pn,$),!Ie.keepAttr))continue;if(!fb&&Qn(/\/>/i,Yn)){te(pn,$);continue}Pl&&Lb([W,j,B],TM=>{Yn=nm(Yn,TM," ")});const NM=Hi($.nodeName);if(Gt(NM,tm,Yn)){if(gb&&(tm==="id"||tm==="name")&&(te(pn,$),Yn=mb+Yn),Yg&&Qn(/((--!?|])>)|<\/(style|title)/i,Yn)){te(pn,$);continue}if(v&&typeof f=="object"&&typeof f.getAttributeType=="function"&&!Cs)switch(f.getAttributeType(NM,tm)){case"TrustedHTML":{Yn=v.createHTML(Yn);break}case"TrustedScriptURL":{Yn=v.createScriptURL(Yn);break}}try{Cs?$.setAttributeNS(Cs,pn,Yn):$.setAttribute(pn,Yn),Ve($)?Y($):nR(e.removed)}catch{}}}Ct("afterSanitizeAttributes",$,null)},em=function Oe($){let ue=null;const Ie=ye($);for(Ct("beforeSanitizeShadowDOM",$,null);ue=Ie.nextNode();)Ct("uponSanitizeShadowNode",ue,null),!Si(ue)&&(ue.content instanceof s&&Oe(ue.content),qs(ue));Ct("afterSanitizeShadowDOM",$,null)};return e.sanitize=function(Oe){let $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ue=null,Ie=null,ui=null,On=null;if(Lu=!Oe,Lu&&(Oe=""),typeof Oe!="string"&&!ft(Oe))if(typeof Oe.toString=="function"){if(Oe=Oe.toString(),typeof Oe!="string")throw sm("dirty is not a string, aborting")}else throw sm("toString is not a function");if(!e.isSupported)return Oe;if(Qg||Jg($),e.removed=[],typeof Oe=="string"&&(Qc=!1),Qc){if(Oe.nodeName){const Er=Hi(Oe.nodeName);if(!we[Er]||ei[Er])throw sm("root node is forbidden and cannot be sanitized in-place")}}else if(Oe instanceof a)ue=me(""),Ie=ue.ownerDocument.importNode(Oe,!0),Ie.nodeType===rm.element&&Ie.nodeName==="BODY"||Ie.nodeName==="HTML"?ue=Ie:ue.appendChild(Ie);else{if(!Ol&&!Pl&&!Ia&&Oe.indexOf("<")===-1)return v&&wu?v.createHTML(Oe):Oe;if(ue=me(Oe),!ue)return Ol?null:wu?y:""}ue&&Xg&&Y(ue.firstChild);const pn=ye(Qc?Oe:ue);for(;ui=pn.nextNode();)Si(ui)||(ui.content instanceof s&&em(ui.content),qs(ui));if(Qc)return Oe;if(Ol){if(vu)for(On=E.call(ue.ownerDocument);ue.firstChild;)On.appendChild(ue.firstChild);else On=ue;return(ct.shadowroot||ct.shadowrootmode)&&(On=H.call(i,On,!0)),On}let Cs=Ia?ue.outerHTML:ue.innerHTML;return Ia&&we["!doctype"]&&ue.ownerDocument&&ue.ownerDocument.doctype&&ue.ownerDocument.doctype.name&&Qn(kF,ue.ownerDocument.doctype.name)&&(Cs=" -`+Cs),Pl&&Lb([W,j,B],Er=>{Cs=nm(Cs,Er," ")}),v&&wu?v.createHTML(Cs):Cs},e.setConfig=function(){let Oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Jg(Oe),Qg=!0},e.clearConfig=function(){Bl=null,Qg=!1},e.isValidAttribute=function(Oe,$,ue){Bl||Jg({});const Ie=Hi(Oe),ui=Hi($);return Gt(Ie,ui,ue)},e.addHook=function(Oe,$){typeof $=="function"&&(F[Oe]=F[Oe]||[],im(F[Oe],$))},e.removeHook=function(Oe){if(F[Oe])return nR(F[Oe])},e.removeHooks=function(Oe){F[Oe]&&(F[Oe]=[])},e.removeAllHooks=function(){F={}},e}var ya=DF();ya.version;ya.isSupported;const IF=ya.sanitize;ya.setConfig;ya.clearConfig;ya.isValidAttribute;const EF=ya.addHook,NF=ya.removeHook;ya.removeHooks;ya.removeAllHooks;var Te;(function(o){o.inMemory="inmemory",o.vscode="vscode",o.internal="private",o.walkThrough="walkThrough",o.walkThroughSnippet="walkThroughSnippet",o.http="http",o.https="https",o.file="file",o.mailto="mailto",o.untitled="untitled",o.data="data",o.command="command",o.vscodeRemote="vscode-remote",o.vscodeRemoteResource="vscode-remote-resource",o.vscodeManagedRemoteResource="vscode-managed-remote-resource",o.vscodeUserData="vscode-userdata",o.vscodeCustomEditor="vscode-custom-editor",o.vscodeNotebookCell="vscode-notebook-cell",o.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",o.vscodeNotebookCellMetadataDiff="vscode-notebook-cell-metadata-diff",o.vscodeNotebookCellOutput="vscode-notebook-cell-output",o.vscodeNotebookCellOutputDiff="vscode-notebook-cell-output-diff",o.vscodeNotebookMetadata="vscode-notebook-metadata",o.vscodeInteractiveInput="vscode-interactive-input",o.vscodeSettings="vscode-settings",o.vscodeWorkspaceTrust="vscode-workspace-trust",o.vscodeTerminal="vscode-terminal",o.vscodeChatCodeBlock="vscode-chat-code-block",o.vscodeChatCodeCompareBlock="vscode-chat-code-compare-block",o.vscodeChatSesssion="vscode-chat-editor",o.webviewPanel="webview-panel",o.vscodeWebview="vscode-webview",o.extension="extension",o.vscodeFileResource="vscode-file",o.tmp="tmp",o.vsls="vsls",o.vscodeSourceControl="vscode-scm",o.commentsInput="comment",o.codeSetting="code-setting",o.outputChannel="output"})(Te||(Te={}));function GN(o,e){return ve.isUri(o)?Qu(o.scheme,e):WN(o,e+":")}function zx(o,...e){return e.some(t=>GN(o,t))}const nV="tkn";class sV{constructor(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null,this._serverRootPath="/"}setPreferredWebSchema(e){this._preferredWebSchema=e}get _remoteResourcesPath(){return oi.join(this._serverRootPath,Te.vscodeRemoteResource)}rewrite(e){if(this._delegate)try{return this._delegate(e)}catch(a){return Ze(a),e}const t=e.authority;let i=this._hosts[t];i&&i.indexOf(":")!==-1&&i.indexOf("[")===-1&&(i=`[${i}]`);const n=this._ports[t],s=this._connectionTokens[t];let r=`path=${encodeURIComponent(e.path)}`;return typeof s=="string"&&(r+=`&${nV}=${encodeURIComponent(s)}`),ve.from({scheme:Og?this._preferredWebSchema:Te.vscodeRemoteResource,authority:`${i}:${n}`,path:this._remoteResourcesPath,query:r})}}const TF=new sV,oV="vscode-app",Lp=class Lp{asBrowserUri(e){const t=this.toUri(e);return this.uriToBrowserUri(t)}uriToBrowserUri(e){return e.scheme===Te.vscodeRemote?TF.rewrite(e):e.scheme===Te.file&&(oC||_6===`${Te.vscodeFileResource}://${Lp.FALLBACK_AUTHORITY}`)?e.with({scheme:Te.vscodeFileResource,authority:e.authority||Lp.FALLBACK_AUTHORITY,query:null,fragment:null}):e}toUri(e,t){if(ve.isUri(e))return e;if(globalThis._VSCODE_FILE_ROOT){const i=globalThis._VSCODE_FILE_ROOT;if(/^\w[\w\d+.-]*:\/\//.test(i))return ve.joinPath(ve.parse(i,!0),e);const n=HW(i,e);return ve.file(n)}return ve.parse(t.toUrl(e))}};Lp.FALLBACK_AUTHORITY=oV;let Ux=Lp;const E0=new Ux;var $x;(function(o){const e=new Map([["1",{"Cross-Origin-Opener-Policy":"same-origin"}],["2",{"Cross-Origin-Embedder-Policy":"require-corp"}],["3",{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}]]);o.CoopAndCoep=Object.freeze(e.get("3"));const t="vscode-coi";function i(s){let r;typeof s=="string"?r=new URL(s).searchParams:s instanceof URL?r=s.searchParams:ve.isUri(s)&&(r=new URL(s.toString(!0)).searchParams);const a=r?.get(t);if(a)return e.get(a)}o.getHeadersFromQuery=i;function n(s,r,a){if(!globalThis.crossOriginIsolated)return;const l=r&&a?"3":a?"2":"1";s instanceof URLSearchParams?s.set(t,l):s[t]=l}o.addSearchParam=n})($x||($x={}));function ZN(o){return N0(o,0)}function N0(o,e){switch(typeof o){case"object":return o===null?ol(349,e):Array.isArray(o)?aV(o,e):lV(o,e);case"string":return YN(o,e);case"boolean":return rV(o,e);case"number":return ol(o,e);case"undefined":return ol(937,e);default:return ol(617,e)}}function ol(o,e){return(e<<5)-e+o|0}function rV(o,e){return ol(o?433:863,e)}function YN(o,e){e=ol(149417,e);for(let t=0,i=o.length;tN0(i,t),e)}function lV(o,e){return e=ol(181387,e),Object.keys(o).sort().reduce((t,i)=>(t=YN(i,t),N0(o[i],t)),e)}function iS(o,e,t=32){const i=t-e,n=~((1<>>i)>>>0}function dR(o,e=0,t=o.byteLength,i=0){for(let n=0;nt.toString(16).padStart(2,"0")).join(""):cV((o>>>0).toString(16),e/4)}const ww=class ww{constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(e){const t=e.length;if(t===0)return;const i=this._buff;let n=this._buffLen,s=this._leftoverHighSurrogate,r,a;for(s!==0?(r=s,a=-1,s=0):(r=e.charCodeAt(0),a=0);;){let l=r;if(wi(r))if(a+1>>6,e[t++]=128|(i&63)>>>0):i<65536?(e[t++]=224|(i&61440)>>>12,e[t++]=128|(i&4032)>>>6,e[t++]=128|(i&63)>>>0):(e[t++]=240|(i&1835008)>>>18,e[t++]=128|(i&258048)>>>12,e[t++]=128|(i&4032)>>>6,e[t++]=128|(i&63)>>>0),t>=64&&(this._step(),t-=64,this._totalLen+=64,e[0]=e[64],e[1]=e[65],e[2]=e[66]),t}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),am(this._h0)+am(this._h1)+am(this._h2)+am(this._h3)+am(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,dR(this._buff,this._buffLen),this._buffLen>56&&(this._step(),dR(this._buff));const e=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(e/4294967296),!1),this._buffDV.setUint32(60,e%4294967296,!1),this._step()}_step(){const e=ww._bigBlock32,t=this._buffDV;for(let h=0;h<64;h+=4)e.setUint32(h,t.getUint32(h,!1),!1);for(let h=64;h<320;h+=4)e.setUint32(h,iS(e.getUint32(h-12,!1)^e.getUint32(h-32,!1)^e.getUint32(h-56,!1)^e.getUint32(h-64,!1),1),!1);let i=this._h0,n=this._h1,s=this._h2,r=this._h3,a=this._h4,l,c,d;for(let h=0;h<80;h++)h<20?(l=n&s|~n&r,c=1518500249):h<40?(l=n^s^r,c=1859775393):h<60?(l=n&s|n&r|s&r,c=2400959708):(l=n^s^r,c=3395469782),d=iS(i,5)+l+a+c+e.getUint32(h*4,!1)&4294967295,a=r,r=s,s=iS(n,30),n=i,i=d;this._h0=this._h0+i&4294967295,this._h1=this._h1+n&4294967295,this._h2=this._h2+s&4294967295,this._h3=this._h3+r&4294967295,this._h4=this._h4+a&4294967295}};ww._bigBlock32=new DataView(new ArrayBuffer(320));let Kx=ww;const{getWindow:fe,getWindows:MF,getWindowsCount:dV,getWindowId:mC,getWindowById:hR,onDidRegisterWindow:T0,onWillUnregisterWindow:hV,onDidUnregisterWindow:uV}=(function(){const o=new Map;nH(_t,1);const e={window:_t,disposables:new X};o.set(_t.vscodeWindowId,e);const t=new A,i=new A,n=new A;function s(r,a){return(typeof r=="number"?o.get(r):void 0)??(a?e:void 0)}return{onDidRegisterWindow:t.event,onWillUnregisterWindow:n.event,onDidUnregisterWindow:i.event,registerWindow(r){if(o.has(r.vscodeWindowId))return z.None;const a=new X,l={window:r,disposables:a.add(new X)};return o.set(r.vscodeWindowId,l),a.add(_e(()=>{o.delete(r.vscodeWindowId),i.fire(r)})),a.add(U(r,ee.BEFORE_UNLOAD,()=>{n.fire(r)})),t.fire(l),a},getWindows(){return o.values()},getWindowsCount(){return o.size},getWindowId(r){return r.vscodeWindowId},hasWindow(r){return o.has(r)},getWindowById:s,getWindow(r){const a=r;if(a?.ownerDocument?.defaultView)return a.ownerDocument.defaultView.window;const l=r;return l?.view?l.view.window:_t},getDocument(r){return fe(r).document}}})();function xn(o){for(;o.firstChild;)o.firstChild.remove()}class fV{constructor(e,t,i,n){this._node=e,this._type=t,this._handler=i,this._options=n||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}}function U(o,e,t,i){return new fV(o,e,t,i)}function RF(o,e){return function(t){return e(new ur(o,t))}}function gV(o){return function(e){return o(new Nt(e))}}const jt=function(e,t,i,n){let s=i;return t==="click"||t==="mousedown"||t==="contextmenu"?s=RF(fe(e),i):(t==="keydown"||t==="keypress"||t==="keyup")&&(s=gV(i)),U(e,t,s,n)},mV=function(e,t,i){const n=RF(fe(e),t);return pV(e,n,i)};function pV(o,e,t){return U(o,Tc&&KN.pointerEvents?ee.POINTER_DOWN:ee.MOUSE_DOWN,e,t)}function kb(o,e,t){return qm(o,e,t)}class nS extends yF{constructor(e,t){super(e,t)}}let pC,fs;class QN extends jN{constructor(e){super(),this.defaultTarget=e&&fe(e)}cancelAndSet(e,t,i){return super.cancelAndSet(e,t,i??this.defaultTarget)}}class sS{constructor(e,t=0){this._runner=e,this.priority=t,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(e){Ze(e)}}static sort(e,t){return t.priority-e.priority}}(function(){const o=new Map,e=new Map,t=new Map,i=new Map,n=s=>{t.set(s,!1);const r=o.get(s)??[];for(e.set(s,r),o.set(s,[]),i.set(s,!0);r.length>0;)r.sort(sS.sort),r.shift().execute();i.set(s,!1)};fs=(s,r,a=0)=>{const l=mC(s),c=new sS(r,a);let d=o.get(l);return d||(d=[],o.set(l,d)),d.push(c),t.get(l)||(t.set(l,!0),s.requestAnimationFrame(()=>n(l))),c},pC=(s,r,a)=>{const l=mC(s);if(i.get(l)){const c=new sS(r,a);let d=e.get(l);return d||(d=[],e.set(l,d)),d.push(c),c}else return fs(s,r,a)}})();function XN(o){return fe(o).getComputedStyle(o,null)}function Ah(o,e){const t=fe(o),i=t.document;if(o!==i.body)return new rt(o.clientWidth,o.clientHeight);if(Tc&&t?.visualViewport)return new rt(t.visualViewport.width,t.visualViewport.height);if(t?.innerWidth&&t.innerHeight)return new rt(t.innerWidth,t.innerHeight);if(i.body&&i.body.clientWidth&&i.body.clientHeight)return new rt(i.body.clientWidth,i.body.clientHeight);if(i.documentElement&&i.documentElement.clientWidth&&i.documentElement.clientHeight)return new rt(i.documentElement.clientWidth,i.documentElement.clientHeight);throw new Error("Unable to figure out browser width and height")}class Yt{static convertToPixels(e,t){return parseFloat(t)||0}static getDimension(e,t,i){const n=XN(e),s=n?n.getPropertyValue(t):"0";return Yt.convertToPixels(e,s)}static getBorderLeftWidth(e){return Yt.getDimension(e,"border-left-width","borderLeftWidth")}static getBorderRightWidth(e){return Yt.getDimension(e,"border-right-width","borderRightWidth")}static getBorderTopWidth(e){return Yt.getDimension(e,"border-top-width","borderTopWidth")}static getBorderBottomWidth(e){return Yt.getDimension(e,"border-bottom-width","borderBottomWidth")}static getPaddingLeft(e){return Yt.getDimension(e,"padding-left","paddingLeft")}static getPaddingRight(e){return Yt.getDimension(e,"padding-right","paddingRight")}static getPaddingTop(e){return Yt.getDimension(e,"padding-top","paddingTop")}static getPaddingBottom(e){return Yt.getDimension(e,"padding-bottom","paddingBottom")}static getMarginLeft(e){return Yt.getDimension(e,"margin-left","marginLeft")}static getMarginTop(e){return Yt.getDimension(e,"margin-top","marginTop")}static getMarginRight(e){return Yt.getDimension(e,"margin-right","marginRight")}static getMarginBottom(e){return Yt.getDimension(e,"margin-bottom","marginBottom")}}const Ad=class Ad{constructor(e,t){this.width=e,this.height=t}with(e=this.width,t=this.height){return e!==this.width||t!==this.height?new Ad(e,t):this}static is(e){return typeof e=="object"&&typeof e.height=="number"&&typeof e.width=="number"}static lift(e){return e instanceof Ad?e:new Ad(e.width,e.height)}static equals(e,t){return e===t?!0:!e||!t?!1:e.width===t.width&&e.height===t.height}};Ad.None=new Ad(0,0);let rt=Ad;function _V(o){let e=o.offsetParent,t=o.offsetTop,i=o.offsetLeft;for(;(o=o.parentNode)!==null&&o!==o.ownerDocument.body&&o!==o.ownerDocument.documentElement;){t-=o.scrollTop;const n=PF(o)?null:XN(o);n&&(i-=n.direction!=="rtl"?o.scrollLeft:-o.scrollLeft),o===e&&(i+=Yt.getBorderLeftWidth(o),t+=Yt.getBorderTopWidth(o),t+=o.offsetTop,i+=o.offsetLeft,e=o.offsetParent)}return{left:i,top:t}}function bV(o,e,t){typeof e=="number"&&(o.style.width=`${e}px`),typeof t=="number"&&(o.style.height=`${t}px`)}function gi(o){const e=o.getBoundingClientRect(),t=fe(o);return{left:e.left+t.scrollX,top:e.top+t.scrollY,width:e.width,height:e.height}}function AF(o){let e=o,t=1;do{const i=XN(e).zoom;i!=null&&i!=="1"&&(t*=i),e=e.parentElement}while(e!==null&&e!==e.ownerDocument.documentElement);return t}function qp(o){const e=Yt.getMarginLeft(o)+Yt.getMarginRight(o);return o.offsetWidth+e}function oS(o){const e=Yt.getBorderLeftWidth(o)+Yt.getBorderRightWidth(o),t=Yt.getPaddingLeft(o)+Yt.getPaddingRight(o);return o.offsetWidth-e-t}function CV(o){const e=Yt.getBorderTopWidth(o)+Yt.getBorderBottomWidth(o),t=Yt.getPaddingTop(o)+Yt.getPaddingBottom(o);return o.offsetHeight-e-t}function Hd(o){const e=Yt.getMarginTop(o)+Yt.getMarginBottom(o);return o.offsetHeight+e}function yi(o,e){return!!e?.contains(o)}function vV(o,e,t){for(;o&&o.nodeType===o.ELEMENT_NODE;){if(o.classList.contains(e))return o;if(t){if(typeof t=="string"){if(o.classList.contains(t))return null}else if(o===t)return null}o=o.parentNode}return null}function rS(o,e,t){return!!vV(o,e,t)}function PF(o){return o&&!!o.host&&!!o.mode}function _C(o){return!!ag(o)}function ag(o){for(;o.parentNode;){if(o===o.ownerDocument?.body)return null;o=o.parentNode}return PF(o)?o:null}function Xi(){let o=JN().activeElement;for(;o?.shadowRoot;)o=o.shadowRoot.activeElement;return o}function M0(o){return Xi()===o}function OF(o){return yi(Xi(),o)}function JN(){return dV()<=1?_t.document:Array.from(MF()).map(({window:e})=>e.document).find(e=>e.hasFocus())??_t.document}function km(){return JN().defaultView?.window??_t}const eT=new Map;function wV(){return new yV}class yV{constructor(){this._currentCssStyle="",this._styleSheet=void 0}setStyle(e){e!==this._currentCssStyle&&(this._currentCssStyle=e,this._styleSheet?this._styleSheet.innerText=e:this._styleSheet=Vs(_t.document.head,t=>t.innerText=e))}dispose(){this._styleSheet&&(this._styleSheet.remove(),this._styleSheet=void 0)}}function Vs(o=_t.document.head,e,t){const i=document.createElement("style");if(i.type="text/css",i.media="screen",e?.(i),o.appendChild(i),t&&t.add(_e(()=>i.remove())),o===_t.document.head){const n=new Set;eT.set(i,n);for(const{window:s,disposables:r}of MF()){if(s===_t)continue;const a=r.add(SV(i,n,s));t?.add(a)}}return i}function SV(o,e,t){const i=new X,n=o.cloneNode(!0);t.document.head.appendChild(n),i.add(_e(()=>n.remove()));for(const s of BF(o))n.sheet?.insertRule(s.cssText,n.sheet?.cssRules.length);return i.add(LV.observe(o,i,{childList:!0})(()=>{n.textContent=o.textContent})),e.add(n),i.add(_e(()=>e.delete(n))),i}const LV=new class{constructor(){this.mutationObservers=new Map}observe(o,e,t){let i=this.mutationObservers.get(o);i||(i=new Map,this.mutationObservers.set(o,i));const n=ZN(t);let s=i.get(n);if(s)s.users+=1;else{const r=new A,a=new MutationObserver(c=>r.fire(c));a.observe(o,t);const l=s={users:1,observer:a,onDidMutate:r.event};e.add(_e(()=>{l.users-=1,l.users===0&&(r.dispose(),a.disconnect(),i?.delete(n),i?.size===0&&this.mutationObservers.delete(o))})),i.set(n,s)}return s.onDidMutate}};let aS=null;function FF(){return aS||(aS=Vs()),aS}function BF(o){return o?.sheet?.rules?o.sheet.rules:o?.sheet?.cssRules?o.sheet.cssRules:[]}function bC(o,e,t=FF()){if(!(!t||!e)){t.sheet?.insertRule(`${o} {${e}}`,0);for(const i of eT.get(t)??[])bC(o,e,i)}}function jx(o,e=FF()){if(!e)return;const t=BF(e),i=[];for(let n=0;n=0;n--)e.sheet?.deleteRule(i[n]);for(const n of eT.get(e)??[])jx(o,n)}function xV(o){return typeof o.selectorText=="string"}function Ei(o){return o instanceof HTMLElement||o instanceof fe(o).HTMLElement}function uR(o){return o instanceof HTMLAnchorElement||o instanceof fe(o).HTMLAnchorElement}function kV(o){return o instanceof SVGElement||o instanceof fe(o).SVGElement}function tT(o){return o instanceof MouseEvent||o instanceof fe(o).MouseEvent}function Qa(o){return o instanceof KeyboardEvent||o instanceof fe(o).KeyboardEvent}const ee={CLICK:"click",AUXCLICK:"auxclick",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",POINTER_LEAVE:"pointerleave",CONTEXT_MENU:"contextmenu",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",CHANGE:"change",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",DRAG_START:"dragstart",DRAG:"drag",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend"};function DV(o){const e=o;return!!(e&&typeof e.preventDefault=="function"&&typeof e.stopPropagation=="function")}const je={stop:(o,e)=>(o.preventDefault(),e&&o.stopPropagation(),o)};function IV(o){const e=[];for(let t=0;o&&o.nodeType===o.ELEMENT_NODE;t++)e[t]=o.scrollTop,o=o.parentNode;return e}function EV(o,e){for(let t=0;o&&o.nodeType===o.ELEMENT_NODE;t++)o.scrollTop!==e[t]&&(o.scrollTop=e[t]),o=o.parentNode}class CC extends z{static hasFocusWithin(e){if(Ei(e)){const t=ag(e),i=t?t.activeElement:e.ownerDocument.activeElement;return yi(i,e)}else{const t=e;return yi(t.document.activeElement,t.document)}}constructor(e){super(),this._onDidFocus=this._register(new A),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new A),this.onDidBlur=this._onDidBlur.event;let t=CC.hasFocusWithin(e),i=!1;const n=()=>{i=!1,t||(t=!0,this._onDidFocus.fire())},s=()=>{t&&(i=!0,(Ei(e)?fe(e):e).setTimeout(()=>{i&&(i=!1,t=!1,this._onDidBlur.fire())},0))};this._refreshStateHandler=()=>{CC.hasFocusWithin(e)!==t&&(t?s():n())},this._register(U(e,ee.FOCUS,n,!0)),this._register(U(e,ee.BLUR,s,!0)),Ei(e)&&(this._register(U(e,ee.FOCUS_IN,()=>this._refreshStateHandler())),this._register(U(e,ee.FOCUS_OUT,()=>this._refreshStateHandler())))}}function Ph(o){return new CC(o)}function NV(o,e){return o.after(e),e}function Z(o,...e){if(o.append(...e),e.length===1&&typeof e[0]!="string")return e[0]}function iT(o,e){return o.insertBefore(e,o.firstChild),e}function un(o,...e){o.innerText="",Z(o,...e)}const TV=/([\w\-]+)?(#([\w\-]+))?((\.([\w\-]+))*)/;var Gp;(function(o){o.HTML="http://www.w3.org/1999/xhtml",o.SVG="http://www.w3.org/2000/svg"})(Gp||(Gp={}));function WF(o,e,t,...i){const n=TV.exec(e);if(!n)throw new Error("Bad use of emmet");const s=n[1]||"div";let r;return o!==Gp.HTML?r=document.createElementNS(o,s):r=document.createElement(s),n[3]&&(r.id=n[3]),n[4]&&(r.className=n[4].replace(/\./g," ").trim()),t&&Object.entries(t).forEach(([a,l])=>{typeof l>"u"||(/^on\w+$/.test(a)?r[a]=l:a==="selected"?l&&r.setAttribute(a,"true"):r.setAttribute(a,l))}),r.append(...i),r}function ce(o,e,...t){return WF(Gp.HTML,o,e,...t)}ce.SVG=function(o,e,...t){return WF(Gp.SVG,o,e,...t)};function MV(o,...e){o?ns(...e):Cn(...e)}function ns(...o){for(const e of o)e.style.display="",e.removeAttribute("aria-hidden")}function Cn(...o){for(const e of o)e.style.display="none",e.setAttribute("aria-hidden","true")}function fR(o,e){const t=o.devicePixelRatio*e;return Math.max(1,Math.floor(t))/o.devicePixelRatio}function HF(o){_t.open(o,"_blank","noopener")}function RV(o,e){const t=()=>{e(),i=fs(o,t)};let i=fs(o,t);return _e(()=>i.dispose())}TF.setPreferredWebSchema(/^https:/.test(_t.location.href)?"https":"http");function Dl(o){return o?`url('${E0.uriToBrowserUri(o).toString(!0).replace(/'/g,"%27")}')`:"url('')"}function lS(o){return`'${o.replace(/'/g,"%27")}'`}function vl(o,e){if(o!==void 0){const t=o.match(/^\s*var\((.+)\)$/);if(t){const i=t[1].split(",",2);return i.length===2&&(e=vl(i[1].trim(),e)),`var(${i[0]}, ${e})`}return o}return e}function AV(o,e=!1){const t=document.createElement("a");return EF("afterSanitizeAttributes",i=>{for(const n of["href","src"])if(i.hasAttribute(n)){const s=i.getAttribute(n);if(n==="href"&&s.startsWith("#"))continue;if(t.href=s,!o.includes(t.protocol.replace(/:$/,""))){if(e&&n==="src"&&t.href.startsWith("data:"))continue;i.removeAttribute(n)}}}),_e(()=>{NF("afterSanitizeAttributes")})}const PV=Object.freeze(["a","abbr","b","bdo","blockquote","br","caption","cite","code","col","colgroup","dd","del","details","dfn","div","dl","dt","em","figcaption","figure","h1","h2","h3","h4","h5","h6","hr","i","img","input","ins","kbd","label","li","mark","ol","p","pre","q","rp","rt","ruby","samp","small","small","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","time","tr","tt","u","ul","var","video","wbr"]);class rl extends A{constructor(){super(),this._subscriptions=new X,this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1},this._subscriptions.add(J.runAndSubscribe(T0,({window:e,disposables:t})=>this.registerListeners(e,t),{window:_t,disposables:this._subscriptions}))}registerListeners(e,t){t.add(U(e,"keydown",i=>{if(i.defaultPrevented)return;const n=new Nt(i);if(!(n.keyCode===6&&i.repeat)){if(i.altKey&&!this._keyStatus.altKey)this._keyStatus.lastKeyPressed="alt";else if(i.ctrlKey&&!this._keyStatus.ctrlKey)this._keyStatus.lastKeyPressed="ctrl";else if(i.metaKey&&!this._keyStatus.metaKey)this._keyStatus.lastKeyPressed="meta";else if(i.shiftKey&&!this._keyStatus.shiftKey)this._keyStatus.lastKeyPressed="shift";else if(n.keyCode!==6)this._keyStatus.lastKeyPressed=void 0;else return;this._keyStatus.altKey=i.altKey,this._keyStatus.ctrlKey=i.ctrlKey,this._keyStatus.metaKey=i.metaKey,this._keyStatus.shiftKey=i.shiftKey,this._keyStatus.lastKeyPressed&&(this._keyStatus.event=i,this.fire(this._keyStatus))}},!0)),t.add(U(e,"keyup",i=>{i.defaultPrevented||(!i.altKey&&this._keyStatus.altKey?this._keyStatus.lastKeyReleased="alt":!i.ctrlKey&&this._keyStatus.ctrlKey?this._keyStatus.lastKeyReleased="ctrl":!i.metaKey&&this._keyStatus.metaKey?this._keyStatus.lastKeyReleased="meta":!i.shiftKey&&this._keyStatus.shiftKey?this._keyStatus.lastKeyReleased="shift":this._keyStatus.lastKeyReleased=void 0,this._keyStatus.lastKeyPressed!==this._keyStatus.lastKeyReleased&&(this._keyStatus.lastKeyPressed=void 0),this._keyStatus.altKey=i.altKey,this._keyStatus.ctrlKey=i.ctrlKey,this._keyStatus.metaKey=i.metaKey,this._keyStatus.shiftKey=i.shiftKey,this._keyStatus.lastKeyReleased&&(this._keyStatus.event=i,this.fire(this._keyStatus)))},!0)),t.add(U(e.document.body,"mousedown",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),t.add(U(e.document.body,"mouseup",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),t.add(U(e.document.body,"mousemove",i=>{i.buttons&&(this._keyStatus.lastKeyPressed=void 0)},!0)),t.add(U(e,"blur",()=>{this.resetKeyStatus()}))}get keyStatus(){return this._keyStatus}resetKeyStatus(){this.doResetKeyStatus(),this.fire(this._keyStatus)}doResetKeyStatus(){this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1}}static getInstance(){return rl.instance||(rl.instance=new rl),rl.instance}dispose(){super.dispose(),this._subscriptions.dispose()}}class OV extends z{constructor(e,t){super(),this.element=e,this.callbacks=t,this.counter=0,this.dragStartTime=0,this.registerListeners()}registerListeners(){this.callbacks.onDragStart&&this._register(U(this.element,ee.DRAG_START,e=>{this.callbacks.onDragStart?.(e)})),this.callbacks.onDrag&&this._register(U(this.element,ee.DRAG,e=>{this.callbacks.onDrag?.(e)})),this._register(U(this.element,ee.DRAG_ENTER,e=>{this.counter++,this.dragStartTime=e.timeStamp,this.callbacks.onDragEnter?.(e)})),this._register(U(this.element,ee.DRAG_OVER,e=>{e.preventDefault(),this.callbacks.onDragOver?.(e,e.timeStamp-this.dragStartTime)})),this._register(U(this.element,ee.DRAG_LEAVE,e=>{this.counter--,this.counter===0&&(this.dragStartTime=0,this.callbacks.onDragLeave?.(e))})),this._register(U(this.element,ee.DRAG_END,e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDragEnd?.(e)})),this._register(U(this.element,ee.DROP,e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDrop?.(e)}))}}const FV=/(?[\w\-]+)?(?:#(?[\w\-]+))?(?(?:\.(?:[\w\-]+))*)(?:@(?(?:[\w\_])+))?/;function tt(o,...e){let t,i;Array.isArray(e[0])?(t={},i=e[0]):(t=e[0]||{},i=e[1]);const n=FV.exec(o);if(!n||!n.groups)throw new Error("Bad use of h");const s=n.groups.tag||"div",r=document.createElement(s);n.groups.id&&(r.id=n.groups.id);const a=[];if(n.groups.class)for(const c of n.groups.class.split("."))c!==""&&a.push(c);if(t.className!==void 0)for(const c of t.className.split("."))c!==""&&a.push(c);a.length>0&&(r.className=a.join(" "));const l={};if(n.groups.name&&(l[n.groups.name]=r),i)for(const c of i)Ei(c)?r.appendChild(c):typeof c=="string"?r.append(c):"root"in c&&(Object.assign(l,c),r.appendChild(c.root));for(const[c,d]of Object.entries(t))if(c!=="className")if(c==="style")for(const[h,u]of Object.entries(d))r.style.setProperty(gR(h),typeof u=="number"?u+"px":""+u);else c==="tabIndex"?r.tabIndex=d:r.setAttribute(gR(c),d.toString());return l.root=r,l}function gR(o){return o.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}class BV extends z{constructor(e){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._listener=()=>this._handleChange(e,!0),this._mediaQueryList=null,this._handleChange(e,!1)}_handleChange(e,t){this._mediaQueryList?.removeEventListener("change",this._listener),this._mediaQueryList=e.matchMedia(`(resolution: ${e.devicePixelRatio}dppx)`),this._mediaQueryList.addEventListener("change",this._listener),t&&this._onDidChange.fire()}}class WV extends z{get value(){return this._value}constructor(e){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._value=this._getPixelRatio(e);const t=this._register(new BV(e));this._register(t.onDidChange(()=>{this._value=this._getPixelRatio(e),this._onDidChange.fire(this._value)}))}_getPixelRatio(e){const t=document.createElement("canvas").getContext("2d"),i=e.devicePixelRatio||1,n=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return i/n}}class HV{constructor(){this.mapWindowIdToPixelRatioMonitor=new Map}_getOrCreatePixelRatioMonitor(e){const t=mC(e);let i=this.mapWindowIdToPixelRatioMonitor.get(t);return i||(i=new WV(e),this.mapWindowIdToPixelRatioMonitor.set(t,i),J.once(uV)(({vscodeWindowId:n})=>{n===t&&(i?.dispose(),this.mapWindowIdToPixelRatioMonitor.delete(t))})),i}getInstance(e){return this._getOrCreatePixelRatioMonitor(e)}}const Zp=new HV;class VF{constructor(e){this.domNode=e,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingLeft="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(e){const t=Ko(e);this._maxWidth!==t&&(this._maxWidth=t,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){const t=Ko(e);this._width!==t&&(this._width=t,this.domNode.style.width=this._width)}setHeight(e){const t=Ko(e);this._height!==t&&(this._height=t,this.domNode.style.height=this._height)}setTop(e){const t=Ko(e);this._top!==t&&(this._top=t,this.domNode.style.top=this._top)}setLeft(e){const t=Ko(e);this._left!==t&&(this._left=t,this.domNode.style.left=this._left)}setBottom(e){const t=Ko(e);this._bottom!==t&&(this._bottom=t,this.domNode.style.bottom=this._bottom)}setRight(e){const t=Ko(e);this._right!==t&&(this._right=t,this.domNode.style.right=this._right)}setPaddingLeft(e){const t=Ko(e);this._paddingLeft!==t&&(this._paddingLeft=t,this.domNode.style.paddingLeft=this._paddingLeft)}setFontFamily(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(e){const t=Ko(e);this._fontSize!==t&&(this._fontSize=t,this.domNode.style.fontSize=this._fontSize)}setFontStyle(e){this._fontStyle!==e&&(this._fontStyle=e,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(e){this._fontVariationSettings!==e&&(this._fontVariationSettings=e,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(e){this._textDecoration!==e&&(this._textDecoration=e,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(e){const t=Ko(e);this._lineHeight!==t&&(this._lineHeight=t,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){const t=Ko(e);this._letterSpacing!==t&&(this._letterSpacing=t,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)}toggleClassName(e,t){this.domNode.classList.toggle(e,t),this._className=this.domNode.className}setDisplay(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)}setPosition(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)}setColor(e){this._color!==e&&(this._color=e,this.domNode.style.color=this._color)}setBackgroundColor(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(e){this._boxShadow!==e&&(this._boxShadow=e,this.domNode.style.boxShadow=e)}setContain(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)}setAttribute(e,t){this.domNode.setAttribute(e,t)}removeAttribute(e){this.domNode.removeAttribute(e)}appendChild(e){this.domNode.appendChild(e.domNode)}removeChild(e){this.domNode.removeChild(e.domNode)}}function Ko(o){return typeof o=="number"?`${o}px`:o}function ot(o){return new VF(o)}function qi(o,e){o instanceof VF?(o.setFontFamily(e.getMassagedFontFamily()),o.setFontWeight(e.fontWeight),o.setFontSize(e.fontSize),o.setFontFeatureSettings(e.fontFeatureSettings),o.setFontVariationSettings(e.fontVariationSettings),o.setLineHeight(e.lineHeight),o.setLetterSpacing(e.letterSpacing)):(o.style.fontFamily=e.getMassagedFontFamily(),o.style.fontWeight=e.fontWeight,o.style.fontSize=e.fontSize+"px",o.style.fontFeatureSettings=e.fontFeatureSettings,o.style.fontVariationSettings=e.fontVariationSettings,o.style.lineHeight=e.lineHeight+"px",o.style.letterSpacing=e.letterSpacing+"px")}class VV{constructor(e,t){this.chr=e,this.type=t,this.width=0}fulfill(e){this.width=e}}class nT{constructor(e,t){this._bareFontInfo=e,this._requests=t,this._container=null,this._testElements=null}read(e){this._createDomElements(),e.document.body.appendChild(this._container),this._readFromDomElements(),this._container?.remove(),this._container=null,this._testElements=null}_createDomElements(){const e=document.createElement("div");e.style.position="absolute",e.style.top="-50000px",e.style.width="50000px";const t=document.createElement("div");qi(t,this._bareFontInfo),e.appendChild(t);const i=document.createElement("div");qi(i,this._bareFontInfo),i.style.fontWeight="bold",e.appendChild(i);const n=document.createElement("div");qi(n,this._bareFontInfo),n.style.fontStyle="italic",e.appendChild(n);const s=[];for(const r of this._requests){let a;r.type===0&&(a=t),r.type===2&&(a=i),r.type===1&&(a=n),a.appendChild(document.createElement("br"));const l=document.createElement("span");nT._render(l,r),a.appendChild(l),s.push(l)}this._container=e,this._testElements=s}static _render(e,t){if(t.chr===" "){let i=" ";for(let n=0;n<8;n++)i+=i;e.innerText=i}else{let i=t.chr;for(let n=0;n<8;n++)i+=i;e.textContent=i}}_readFromDomElements(){for(let e=0,t=this._requests.length;e{this._evictUntrustedReadingsTimeout=-1,this._evictUntrustedReadings(e)},5e3))}_evictUntrustedReadings(e){const t=this._ensureCache(e),i=t.getValues();let n=!1;for(const s of i)s.isTrusted||(n=!0,t.remove(s));n&&this._onDidChange.fire()}readFontInfo(e,t){const i=this._ensureCache(e);if(!i.has(t)){let n=this._actualReadFontInfo(e,t);(n.typicalHalfwidthCharacterWidth<=2||n.typicalFullwidthCharacterWidth<=2||n.spaceWidth<=2||n.maxDigitWidth<=2)&&(n=new qx({pixelRatio:Zp.getInstance(e).value,fontFamily:n.fontFamily,fontWeight:n.fontWeight,fontSize:n.fontSize,fontFeatureSettings:n.fontFeatureSettings,fontVariationSettings:n.fontVariationSettings,lineHeight:n.lineHeight,letterSpacing:n.letterSpacing,isMonospace:n.isMonospace,typicalHalfwidthCharacterWidth:Math.max(n.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(n.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:n.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(n.spaceWidth,5),middotWidth:Math.max(n.middotWidth,5),wsmiddotWidth:Math.max(n.wsmiddotWidth,5),maxDigitWidth:Math.max(n.maxDigitWidth,5)},!1)),this._writeToCache(e,t,n)}return i.get(t)}_createRequest(e,t,i,n){const s=new VV(e,t);return i.push(s),n?.push(s),s}_actualReadFontInfo(e,t){const i=[],n=[],s=this._createRequest("n",0,i,n),r=this._createRequest("m",0,i,null),a=this._createRequest(" ",0,i,n),l=this._createRequest("0",0,i,n),c=this._createRequest("1",0,i,n),d=this._createRequest("2",0,i,n),h=this._createRequest("3",0,i,n),u=this._createRequest("4",0,i,n),f=this._createRequest("5",0,i,n),g=this._createRequest("6",0,i,n),p=this._createRequest("7",0,i,n),_=this._createRequest("8",0,i,n),b=this._createRequest("9",0,i,n),C=this._createRequest("→",0,i,n),w=this._createRequest("→",0,i,null),v=this._createRequest("·",0,i,n),y=this._createRequest("⸱",0,i,null),x="|/-_ilm%";for(let F=0,W=x.length;F.001){E=!1;break}}let H=!0;return E&&w.width!==N&&(H=!1),w.width>C.width&&(H=!1),new qx({pixelRatio:Zp.getInstance(e).value,fontFamily:t.fontFamily,fontWeight:t.fontWeight,fontSize:t.fontSize,fontFeatureSettings:t.fontFeatureSettings,fontVariationSettings:t.fontVariationSettings,lineHeight:t.lineHeight,letterSpacing:t.letterSpacing,isMonospace:E,typicalHalfwidthCharacterWidth:s.width,typicalFullwidthCharacterWidth:r.width,canUseHalfwidthRightwardsArrow:H,spaceWidth:a.width,middotWidth:v.width,wsmiddotWidth:y.width,maxDigitWidth:L},!0)}}class jV{constructor(){this._keys=Object.create(null),this._values=Object.create(null)}has(e){const t=e.getId();return!!this._values[t]}get(e){const t=e.getId();return this._values[t]}put(e,t){const i=e.getId();this._keys[i]=e,this._values[i]=t}remove(e){const t=e.getId();delete this._keys[t],delete this._values[t]}getValues(){return Object.keys(this._keys).map(e=>this._values[e])}}const Gx=new KV;var fr;(function(o){o.serviceIds=new Map,o.DI_TARGET="$di$target",o.DI_DEPENDENCIES="$di$dependencies";function e(t){return t[o.DI_DEPENDENCIES]||[]}o.getServiceDependencies=e})(fr||(fr={}));const ke=He("instantiationService");function qV(o,e,t){e[fr.DI_TARGET]===e?e[fr.DI_DEPENDENCIES].push({id:o,index:t}):(e[fr.DI_DEPENDENCIES]=[{id:o,index:t}],e[fr.DI_TARGET]=e)}function He(o){if(fr.serviceIds.has(o))return fr.serviceIds.get(o);const e=function(t,i,n){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");qV(e,t,n)};return e.toString=()=>o,fr.serviceIds.set(o,e),e}const Pt=He("codeEditorService"),Fi=He("modelService"),fo=He("textModelService");class Fs extends z{constructor(e,t="",i="",n=!0,s){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._enabled=!0,this._id=e,this._label=t,this._cssClass=i,this._enabled=n,this._actionCallback=s}get id(){return this._id}get label(){return this._label}set label(e){this._setLabel(e)}_setLabel(e){this._label!==e&&(this._label=e,this._onDidChange.fire({label:e}))}get tooltip(){return this._tooltip||""}set tooltip(e){this._setTooltip(e)}_setTooltip(e){this._tooltip!==e&&(this._tooltip=e,this._onDidChange.fire({tooltip:e}))}get class(){return this._cssClass}set class(e){this._setClass(e)}_setClass(e){this._cssClass!==e&&(this._cssClass=e,this._onDidChange.fire({class:e}))}get enabled(){return this._enabled}set enabled(e){this._setEnabled(e)}_setEnabled(e){this._enabled!==e&&(this._enabled=e,this._onDidChange.fire({enabled:e}))}get checked(){return this._checked}set checked(e){this._setChecked(e)}_setChecked(e){this._checked!==e&&(this._checked=e,this._onDidChange.fire({checked:e}))}async run(e,t){this._actionCallback&&await this._actionCallback(e)}}class Oh extends z{constructor(){super(...arguments),this._onWillRun=this._register(new A),this.onWillRun=this._onWillRun.event,this._onDidRun=this._register(new A),this.onDidRun=this._onDidRun.event}async run(e,t){if(!e.enabled)return;this._onWillRun.fire({action:e});let i;try{await this.runAction(e,t)}catch(n){i=n}this._onDidRun.fire({action:e,error:i})}async runAction(e,t){await e.run(t)}}const xp=class xp{constructor(){this.id=xp.ID,this.label="",this.tooltip="",this.class="separator",this.enabled=!1,this.checked=!1}static join(...e){let t=[];for(const i of e)i.length&&(t.length?t=[...t,new xp,...i]:t=i);return t}async run(){}};xp.ID="vs.actions.separator";let Gi=xp;class R0{get actions(){return this._actions}constructor(e,t,i,n){this.tooltip="",this.enabled=!0,this.checked=void 0,this.id=e,this.label=t,this.class=n,this._actions=i}async run(){}}const yw=class yw extends Fs{constructor(){super(yw.ID,m("submenu.empty","(empty)"),void 0,!1)}};yw.ID="vs.actions.empty";let Zx=yw;function Mf(o){return{id:o.id,label:o.label,tooltip:o.tooltip??o.label,class:o.class,enabled:o.enabled??!0,checked:o.checked,run:async(...e)=>o.run(...e)}}var Yx;(function(o){function e(t){return t&&typeof t=="object"&&typeof t.id=="string"}o.isThemeColor=e})(Yx||(Yx={}));var Ee;(function(o){o.iconNameSegment="[A-Za-z0-9]+",o.iconNameExpression="[A-Za-z0-9-]+",o.iconModifierExpression="~[A-Za-z]+",o.iconNameCharacter="[A-Za-z0-9~-]";const e=new RegExp(`^(${o.iconNameExpression})(${o.iconModifierExpression})?$`);function t(u){const f=e.exec(u.id);if(!f)return t(ie.error);const[,g,p]=f,_=["codicon","codicon-"+g];return p&&_.push("codicon-modifier-"+p.substring(1)),_}o.asClassNameArray=t;function i(u){return t(u).join(" ")}o.asClassName=i;function n(u){return"."+t(u).join(".")}o.asCSSSelector=n;function s(u){return u&&typeof u=="object"&&typeof u.id=="string"&&(typeof u.color>"u"||Yx.isThemeColor(u.color))}o.isThemeIcon=s;const r=new RegExp(`^\\$\\((${o.iconNameExpression}(?:${o.iconModifierExpression})?)\\)$`);function a(u){const f=r.exec(u);if(!f)return;const[,g]=f;return{id:g}}o.fromString=a;function l(u){return{id:u}}o.fromId=l;function c(u,f){let g=u.id;const p=g.lastIndexOf("~");return p!==-1&&(g=g.substring(0,p)),f&&(g=`${g}~${f}`),{id:g}}o.modify=c;function d(u){const f=u.id.lastIndexOf("~");if(f!==-1)return u.id.substring(f+1)}o.getModifier=d;function h(u,f){return u.id===f.id&&u.color?.id===f.color?.id}o.isEqual=h})(Ee||(Ee={}));const hi=He("commandService"),bt=new class{constructor(){this._commands=new Map,this._onDidRegisterCommand=new A,this.onDidRegisterCommand=this._onDidRegisterCommand.event}registerCommand(o,e){if(!o)throw new Error("invalid command");if(typeof o=="string"){if(!e)throw new Error("invalid command");return this.registerCommand({id:o,handler:e})}if(o.metadata&&Array.isArray(o.metadata.args)){const r=[];for(const l of o.metadata.args)r.push(l.constraint);const a=o.handler;o.handler=function(l,...c){return a6(c,r),a(l,...c)}}const{id:t}=o;let i=this._commands.get(t);i||(i=new yn,this._commands.set(t,i));const n=i.unshift(o),s=_e(()=>{n(),this._commands.get(t)?.isEmpty()&&this._commands.delete(t)});return this._onDidRegisterCommand.fire(t),s}registerCommandAlias(o,e){return bt.registerCommand(o,(t,...i)=>t.get(hi).executeCommand(e,...i))}getCommand(o){const e=this._commands.get(o);if(!(!e||e.isEmpty()))return st.first(e)}getCommands(){const o=new Map;for(const e of this._commands.keys()){const t=this.getCommand(e);t&&o.set(e,t)}return o}};bt.registerCommand("noop",()=>{});function dS(...o){switch(o.length){case 1:return m("contextkey.scanner.hint.didYouMean1","Did you mean {0}?",o[0]);case 2:return m("contextkey.scanner.hint.didYouMean2","Did you mean {0} or {1}?",o[0],o[1]);case 3:return m("contextkey.scanner.hint.didYouMean3","Did you mean {0}, {1} or {2}?",o[0],o[1],o[2]);default:return}}const GV=m("contextkey.scanner.hint.didYouForgetToOpenOrCloseQuote","Did you forget to open or close the quote?"),ZV=m("contextkey.scanner.hint.didYouForgetToEscapeSlash","Did you forget to escape the '/' (slash) character? Put two backslashes before it to escape, e.g., '\\\\/'.");var fl;let lm=(fl=class{constructor(){this._input="",this._start=0,this._current=0,this._tokens=[],this._errors=[],this.stringRe=/[a-zA-Z0-9_<>\-\./\\:\*\?\+\[\]\^,#@;"%\$\p{L}-]+/uy}static getLexeme(e){switch(e.type){case 0:return"(";case 1:return")";case 2:return"!";case 3:return e.isTripleEq?"===":"==";case 4:return e.isTripleEq?"!==":"!=";case 5:return"<";case 6:return"<=";case 7:return">=";case 8:return">=";case 9:return"=~";case 10:return e.lexeme;case 11:return"true";case 12:return"false";case 13:return"in";case 14:return"not";case 15:return"&&";case 16:return"||";case 17:return e.lexeme;case 18:return e.lexeme;case 19:return e.lexeme;case 20:return"EOF";default:throw TN(`unhandled token type: ${JSON.stringify(e)}; have you forgotten to add a case?`)}}reset(e){return this._input=e,this._start=0,this._current=0,this._tokens=[],this._errors=[],this}scan(){for(;!this._isAtEnd();)switch(this._start=this._current,this._advance()){case 40:this._addToken(0);break;case 41:this._addToken(1);break;case 33:if(this._match(61)){const t=this._match(61);this._tokens.push({type:4,offset:this._start,isTripleEq:t})}else this._addToken(2);break;case 39:this._quotedString();break;case 47:this._regex();break;case 61:if(this._match(61)){const t=this._match(61);this._tokens.push({type:3,offset:this._start,isTripleEq:t})}else this._match(126)?this._addToken(9):this._error(dS("==","=~"));break;case 60:this._addToken(this._match(61)?6:5);break;case 62:this._addToken(this._match(61)?8:7);break;case 38:this._match(38)?this._addToken(15):this._error(dS("&&"));break;case 124:this._match(124)?this._addToken(16):this._error(dS("||"));break;case 32:case 13:case 9:case 10:case 160:break;default:this._string()}return this._start=this._current,this._addToken(20),Array.from(this._tokens)}_match(e){return this._isAtEnd()||this._input.charCodeAt(this._current)!==e?!1:(this._current++,!0)}_advance(){return this._input.charCodeAt(this._current++)}_peek(){return this._isAtEnd()?0:this._input.charCodeAt(this._current)}_addToken(e){this._tokens.push({type:e,offset:this._start})}_error(e){const t=this._start,i=this._input.substring(this._start,this._current),n={type:19,offset:this._start,lexeme:i};this._errors.push({offset:t,lexeme:i,additionalInfo:e}),this._tokens.push(n)}_string(){this.stringRe.lastIndex=this._start;const e=this.stringRe.exec(this._input);if(e){this._current=this._start+e[0].length;const t=this._input.substring(this._start,this._current),i=fl._keywords.get(t);i?this._addToken(i):this._tokens.push({type:17,lexeme:t,offset:this._start})}}_quotedString(){for(;this._peek()!==39&&!this._isAtEnd();)this._advance();if(this._isAtEnd()){this._error(GV);return}this._advance(),this._tokens.push({type:18,lexeme:this._input.substring(this._start+1,this._current-1),offset:this._start+1})}_regex(){let e=this._current,t=!1,i=!1;for(;;){if(e>=this._input.length){this._current=e,this._error(ZV);return}const s=this._input.charCodeAt(e);if(t)t=!1;else if(s===47&&!i){e++;break}else s===91?i=!0:s===92?t=!0:s===93&&(i=!1);e++}for(;e=this._input.length}},fl._regexFlags=new Set(["i","g","s","m","y","u"].map(e=>e.charCodeAt(0))),fl._keywords=new Map([["not",14],["in",13],["false",12],["true",11]]),fl);const Ji=new Map;Ji.set("false",!1);Ji.set("true",!0);Ji.set("isMac",Ue);Ji.set("isLinux",Un);Ji.set("isWindows",kn);Ji.set("isWeb",Og);Ji.set("isMacNative",Ue&&!Og);Ji.set("isEdge",y6);Ji.set("isFirefox",v6);Ji.set("isChrome",U5);Ji.set("isSafari",w6);const YV=Object.prototype.hasOwnProperty,QV={regexParsingWithErrorRecovery:!0},XV=m("contextkey.parser.error.emptyString","Empty context key expression"),JV=m("contextkey.parser.error.emptyString.hint","Did you forget to write an expression? You can also put 'false' or 'true' to always evaluate to false or true, respectively."),ez=m("contextkey.parser.error.noInAfterNot","'in' after 'not'."),mR=m("contextkey.parser.error.closingParenthesis","closing parenthesis ')'"),tz=m("contextkey.parser.error.unexpectedToken","Unexpected token"),iz=m("contextkey.parser.error.unexpectedToken.hint","Did you forget to put && or || before the token?"),nz=m("contextkey.parser.error.unexpectedEOF","Unexpected end of expression"),sz=m("contextkey.parser.error.unexpectedEOF.hint","Did you forget to put a context key?");var Xr;let oz=(Xr=class{constructor(e=QV){this._config=e,this._scanner=new lm,this._tokens=[],this._current=0,this._parsingErrors=[],this._flagsGYRe=/g|y/g}parse(e){if(e===""){this._parsingErrors.push({message:XV,offset:0,lexeme:"",additionalInfo:JV});return}this._tokens=this._scanner.reset(e).scan(),this._current=0,this._parsingErrors=[];try{const t=this._expr();if(!this._isAtEnd()){const i=this._peek(),n=i.type===17?iz:void 0;throw this._parsingErrors.push({message:tz,offset:i.offset,lexeme:lm.getLexeme(i),additionalInfo:n}),Xr._parseError}return t}catch(t){if(t!==Xr._parseError)throw t;return}}_expr(){return this._or()}_or(){const e=[this._and()];for(;this._matchOne(16);){const t=this._and();e.push(t)}return e.length===1?e[0]:re.or(...e)}_and(){const e=[this._term()];for(;this._matchOne(15);){const t=this._term();e.push(t)}return e.length===1?e[0]:re.and(...e)}_term(){if(this._matchOne(2)){const e=this._peek();switch(e.type){case 11:return this._advance(),En.INSTANCE;case 12:return this._advance(),Kn.INSTANCE;case 0:{this._advance();const t=this._expr();return this._consume(1,mR),t?.negate()}case 17:return this._advance(),tu.create(e.lexeme);default:throw this._errExpectedButGot("KEY | true | false | '(' expression ')'",e)}}return this._primary()}_primary(){const e=this._peek();switch(e.type){case 11:return this._advance(),re.true();case 12:return this._advance(),re.false();case 0:{this._advance();const t=this._expr();return this._consume(1,mR),t}case 17:{const t=e.lexeme;if(this._advance(),this._matchOne(9)){const n=this._peek();if(!this._config.regexParsingWithErrorRecovery){if(this._advance(),n.type!==10)throw this._errExpectedButGot("REGEX",n);const s=n.lexeme,r=s.lastIndexOf("/"),a=r===s.length-1?void 0:this._removeFlagsGY(s.substring(r+1));let l;try{l=new RegExp(s.substring(1,r),a)}catch{throw this._errExpectedButGot("REGEX",n)}return Yp.create(t,l)}switch(n.type){case 10:case 19:{const s=[n.lexeme];this._advance();let r=this._peek(),a=0;for(let u=0;u=0){const c=s.slice(a+1,l),d=s[l+1]==="i"?"i":"";try{r=new RegExp(c,d)}catch{throw this._errExpectedButGot("REGEX",n)}}}if(r===null)throw this._errExpectedButGot("REGEX",n);return Yp.create(t,r)}default:throw this._errExpectedButGot("REGEX",this._peek())}}if(this._matchOne(14)){this._consume(13,ez);const n=this._value();return re.notIn(t,n)}switch(this._peek().type){case 3:{this._advance();const n=this._value();if(this._previous().type===18)return re.equals(t,n);switch(n){case"true":return re.has(t);case"false":return re.not(t);default:return re.equals(t,n)}}case 4:{this._advance();const n=this._value();if(this._previous().type===18)return re.notEquals(t,n);switch(n){case"true":return re.not(t);case"false":return re.has(t);default:return re.notEquals(t,n)}}case 5:return this._advance(),H0.create(t,this._value());case 6:return this._advance(),V0.create(t,this._value());case 7:return this._advance(),B0.create(t,this._value());case 8:return this._advance(),W0.create(t,this._value());case 13:return this._advance(),re.in(t,this._value());default:return re.has(t)}}case 20:throw this._parsingErrors.push({message:nz,offset:e.offset,lexeme:"",additionalInfo:sz}),Xr._parseError;default:throw this._errExpectedButGot(`true | false | KEY - | KEY '=~' REGEX - | KEY ('==' | '!=' | '<' | '<=' | '>' | '>=' | 'in' | 'not' 'in') value`,this._peek())}}_value(){const e=this._peek();switch(e.type){case 17:case 18:return this._advance(),e.lexeme;case 11:return this._advance(),"true";case 12:return this._advance(),"false";case 13:return this._advance(),"in";default:return""}}_removeFlagsGY(e){return e.replaceAll(this._flagsGYRe,"")}_previous(){return this._tokens[this._current-1]}_matchOne(e){return this._check(e)?(this._advance(),!0):!1}_advance(){return this._isAtEnd()||this._current++,this._previous()}_consume(e,t){if(this._check(e))return this._advance();throw this._errExpectedButGot(t,this._peek())}_errExpectedButGot(e,t,i){const n=m("contextkey.parser.error.expectedButGot",`Expected: {0} -Received: '{1}'.`,e,lm.getLexeme(t)),s=t.offset,r=lm.getLexeme(t);return this._parsingErrors.push({message:n,offset:s,lexeme:r,additionalInfo:i}),Xr._parseError}_check(e){return this._peek().type===e}_peek(){return this._tokens[this._current]}_isAtEnd(){return this._peek().type===20}},Xr._parseError=new Error,Xr);const DM=class DM{static false(){return En.INSTANCE}static true(){return Kn.INSTANCE}static has(e){return eu.create(e)}static equals(e,t){return U_.create(e,t)}static notEquals(e,t){return O0.create(e,t)}static regex(e,t){return Yp.create(e,t)}static in(e,t){return A0.create(e,t)}static notIn(e,t){return P0.create(e,t)}static not(e){return tu.create(e)}static and(...e){return Vd.create(e,null,!0)}static or(...e){return tl.create(e,null,!0)}static deserialize(e){return e==null?void 0:this._parser.parse(e)}};DM._parser=new oz({regexParsingWithErrorRecovery:!1});let re=DM;function rz(o,e){const t=o?o.substituteConstants():void 0,i=e?e.substituteConstants():void 0;return!t&&!i?!0:!t||!i?!1:t.equals(i)}function Gm(o,e){return o.cmp(e)}const Sw=class Sw{constructor(){this.type=0}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!1}serialize(){return"false"}keys(){return[]}negate(){return Kn.INSTANCE}};Sw.INSTANCE=new Sw;let En=Sw;const Lw=class Lw{constructor(){this.type=1}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!0}serialize(){return"true"}keys(){return[]}negate(){return En.INSTANCE}};Lw.INSTANCE=new Lw;let Kn=Lw;class eu{static create(e,t=null){const i=Ji.get(e);return typeof i=="boolean"?i?Kn.INSTANCE:En.INSTANCE:new eu(e,t)}constructor(e,t){this.key=e,this.negated=t,this.type=2}cmp(e){return e.type!==this.type?this.type-e.type:UF(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=Ji.get(this.key);return typeof e=="boolean"?e?Kn.INSTANCE:En.INSTANCE:this}evaluate(e){return!!e.getValue(this.key)}serialize(){return this.key}keys(){return[this.key]}negate(){return this.negated||(this.negated=tu.create(this.key,this)),this.negated}}class U_{static create(e,t,i=null){if(typeof t=="boolean")return t?eu.create(e,i):tu.create(e,i);const n=Ji.get(e);return typeof n=="boolean"?t===(n?"true":"false")?Kn.INSTANCE:En.INSTANCE:new U_(e,t,i)}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=4}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){const e=Ji.get(this.key);if(typeof e=="boolean"){const t=e?"true":"false";return this.value===t?Kn.INSTANCE:En.INSTANCE}return this}evaluate(e){return e.getValue(this.key)==this.value}serialize(){return`${this.key} == '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=O0.create(this.key,this.value,this)),this.negated}}class A0{static create(e,t){return new A0(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=10,this.negated=null}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.valueKey,e.key,e.valueKey)}equals(e){return e.type===this.type?this.key===e.key&&this.valueKey===e.valueKey:!1}substituteConstants(){return this}evaluate(e){const t=e.getValue(this.valueKey),i=e.getValue(this.key);return Array.isArray(t)?t.includes(i):typeof i=="string"&&typeof t=="object"&&t!==null?YV.call(t,i):!1}serialize(){return`${this.key} in '${this.valueKey}'`}keys(){return[this.key,this.valueKey]}negate(){return this.negated||(this.negated=P0.create(this.key,this.valueKey)),this.negated}}class P0{static create(e,t){return new P0(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=11,this._negated=A0.create(e,t)}cmp(e){return e.type!==this.type?this.type-e.type:this._negated.cmp(e._negated)}equals(e){return e.type===this.type?this._negated.equals(e._negated):!1}substituteConstants(){return this}evaluate(e){return!this._negated.evaluate(e)}serialize(){return`${this.key} not in '${this.valueKey}'`}keys(){return this._negated.keys()}negate(){return this._negated}}class O0{static create(e,t,i=null){if(typeof t=="boolean")return t?tu.create(e,i):eu.create(e,i);const n=Ji.get(e);return typeof n=="boolean"?t===(n?"true":"false")?En.INSTANCE:Kn.INSTANCE:new O0(e,t,i)}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=5}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){const e=Ji.get(this.key);if(typeof e=="boolean"){const t=e?"true":"false";return this.value===t?En.INSTANCE:Kn.INSTANCE}return this}evaluate(e){return e.getValue(this.key)!=this.value}serialize(){return`${this.key} != '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=U_.create(this.key,this.value,this)),this.negated}}class tu{static create(e,t=null){const i=Ji.get(e);return typeof i=="boolean"?i?En.INSTANCE:Kn.INSTANCE:new tu(e,t)}constructor(e,t){this.key=e,this.negated=t,this.type=3}cmp(e){return e.type!==this.type?this.type-e.type:UF(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=Ji.get(this.key);return typeof e=="boolean"?e?En.INSTANCE:Kn.INSTANCE:this}evaluate(e){return!e.getValue(this.key)}serialize(){return`!${this.key}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=eu.create(this.key,this)),this.negated}}function F0(o,e){if(typeof o=="string"){const t=parseFloat(o);isNaN(t)||(o=t)}return typeof o=="string"||typeof o=="number"?e(o):En.INSTANCE}class B0{static create(e,t,i=null){return F0(t,n=>new B0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=12}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))>this.value}serialize(){return`${this.key} > ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=V0.create(this.key,this.value,this)),this.negated}}class W0{static create(e,t,i=null){return F0(t,n=>new W0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=13}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))>=this.value}serialize(){return`${this.key} >= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=H0.create(this.key,this.value,this)),this.negated}}class H0{static create(e,t,i=null){return F0(t,n=>new H0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=14}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))new V0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=15}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))<=this.value}serialize(){return`${this.key} <= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=B0.create(this.key,this.value,this)),this.negated}}class Yp{static create(e,t){return new Yp(e,t)}constructor(e,t){this.key=e,this.regexp=t,this.type=7,this.negated=null}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.keye.key)return 1;const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return ti?1:0}equals(e){if(e.type===this.type){const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return this.key===e.key&&t===i}return!1}substituteConstants(){return this}evaluate(e){const t=e.getValue(this.key);return this.regexp?this.regexp.test(t):!1}serialize(){const e=this.regexp?`/${this.regexp.source}/${this.regexp.flags}`:"/invalid/";return`${this.key} =~ ${e}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=sT.create(this)),this.negated}}class sT{static create(e){return new sT(e)}constructor(e){this._actual=e,this.type=8}cmp(e){return e.type!==this.type?this.type-e.type:this._actual.cmp(e._actual)}equals(e){return e.type===this.type?this._actual.equals(e._actual):!1}substituteConstants(){return this}evaluate(e){return!this._actual.evaluate(e)}serialize(){return`!(${this._actual.serialize()})`}keys(){return this._actual.keys()}negate(){return this._actual}}function zF(o){let e=null;for(let t=0,i=o.length;te.expr.length)return 1;for(let t=0,i=this.expr.length;t1;){const r=n[n.length-1];if(r.type!==9)break;n.pop();const a=n.pop(),l=n.length===0,c=tl.create(r.expr.map(d=>Vd.create([d,a],null,i)),null,l);c&&(n.push(c),n.sort(Gm))}if(n.length===1)return n[0];if(i){for(let r=0;re.serialize()).join(" && ")}keys(){const e=[];for(const t of this.expr)e.push(...t.keys());return e}negate(){if(!this.negated){const e=[];for(const t of this.expr)e.push(t.negate());this.negated=tl.create(e,this,!0)}return this.negated}}class tl{static create(e,t,i){return tl._normalizeArr(e,t,i)}constructor(e,t){this.expr=e,this.negated=t,this.type=9}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.expr.lengthe.expr.length)return 1;for(let t=0,i=this.expr.length;te.serialize()).join(" || ")}keys(){const e=[];for(const t of this.expr)e.push(...t.keys());return e}negate(){if(!this.negated){const e=[];for(const t of this.expr)e.push(t.negate());for(;e.length>1;){const t=e.shift(),i=e.shift(),n=[];for(const s of _R(t))for(const r of _R(i))n.push(Vd.create([s,r],null,!1));e.unshift(tl.create(n,null,!1))}this.negated=tl.create(e,this,!0)}return this.negated}}const vf=class vf extends eu{static all(){return vf._info.values()}constructor(e,t,i){super(e,null),this._defaultValue=t,typeof i=="object"?vf._info.push({...i,key:e}):i!==!0&&vf._info.push({key:e,description:i,type:t!=null?typeof t:void 0})}bindTo(e){return e.createKey(this.key,this._defaultValue)}getValue(e){return e.getContextKeyValue(this.key)}toNegated(){return this.negate()}isEqualTo(e){return U_.create(this.key,e)}};vf._info=[];let le=vf;const De=He("contextKeyService");function UF(o,e){return oe?1:0}function iu(o,e,t,i){return ot?1:ei?1:0}function Qx(o,e){if(o.type===0||e.type===1)return!0;if(o.type===9)return e.type===9?pR(o.expr,e.expr):!1;if(e.type===9){for(const t of e.expr)if(Qx(o,t))return!0;return!1}if(o.type===6){if(e.type===6)return pR(e.expr,o.expr);for(const t of o.expr)if(Qx(t,e))return!0;return!1}return o.equals(e)}function pR(o,e){let t=0,i=0;for(;t{a(),this._cachedMergedKeybindings=null})}getDefaultKeybindings(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=Array.from(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(cz)),this._cachedMergedKeybindings.slice(0)}}const Nn=new rT,lz={EditorModes:"platform.keybindingsRegistry"};Bi.add(lz.EditorModes,Nn);function cz(o,e){if(o.weight1!==e.weight1)return o.weight1-e.weight1;if(o.command&&e.command){if(o.commande.command)return 1}return o.weight2-e.weight2}var dz=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},CR=function(o,e){return function(t,i){e(t,i,o)}},L1;function Rf(o){return o.command!==void 0}function hz(o){return o.submenu!==void 0}const k=class k{constructor(e){if(k._instances.has(e))throw new TypeError(`MenuId with identifier '${e}' already exists. Use MenuId.for(ident) or a unique identifier`);k._instances.set(e,this),this.id=e}};k._instances=new Map,k.CommandPalette=new k("CommandPalette"),k.DebugBreakpointsContext=new k("DebugBreakpointsContext"),k.DebugCallStackContext=new k("DebugCallStackContext"),k.DebugConsoleContext=new k("DebugConsoleContext"),k.DebugVariablesContext=new k("DebugVariablesContext"),k.NotebookVariablesContext=new k("NotebookVariablesContext"),k.DebugHoverContext=new k("DebugHoverContext"),k.DebugWatchContext=new k("DebugWatchContext"),k.DebugToolBar=new k("DebugToolBar"),k.DebugToolBarStop=new k("DebugToolBarStop"),k.DebugCallStackToolbar=new k("DebugCallStackToolbar"),k.DebugCreateConfiguration=new k("DebugCreateConfiguration"),k.EditorContext=new k("EditorContext"),k.SimpleEditorContext=new k("SimpleEditorContext"),k.EditorContent=new k("EditorContent"),k.EditorLineNumberContext=new k("EditorLineNumberContext"),k.EditorContextCopy=new k("EditorContextCopy"),k.EditorContextPeek=new k("EditorContextPeek"),k.EditorContextShare=new k("EditorContextShare"),k.EditorTitle=new k("EditorTitle"),k.EditorTitleRun=new k("EditorTitleRun"),k.EditorTitleContext=new k("EditorTitleContext"),k.EditorTitleContextShare=new k("EditorTitleContextShare"),k.EmptyEditorGroup=new k("EmptyEditorGroup"),k.EmptyEditorGroupContext=new k("EmptyEditorGroupContext"),k.EditorTabsBarContext=new k("EditorTabsBarContext"),k.EditorTabsBarShowTabsSubmenu=new k("EditorTabsBarShowTabsSubmenu"),k.EditorTabsBarShowTabsZenModeSubmenu=new k("EditorTabsBarShowTabsZenModeSubmenu"),k.EditorActionsPositionSubmenu=new k("EditorActionsPositionSubmenu"),k.ExplorerContext=new k("ExplorerContext"),k.ExplorerContextShare=new k("ExplorerContextShare"),k.ExtensionContext=new k("ExtensionContext"),k.GlobalActivity=new k("GlobalActivity"),k.CommandCenter=new k("CommandCenter"),k.CommandCenterCenter=new k("CommandCenterCenter"),k.LayoutControlMenuSubmenu=new k("LayoutControlMenuSubmenu"),k.LayoutControlMenu=new k("LayoutControlMenu"),k.MenubarMainMenu=new k("MenubarMainMenu"),k.MenubarAppearanceMenu=new k("MenubarAppearanceMenu"),k.MenubarDebugMenu=new k("MenubarDebugMenu"),k.MenubarEditMenu=new k("MenubarEditMenu"),k.MenubarCopy=new k("MenubarCopy"),k.MenubarFileMenu=new k("MenubarFileMenu"),k.MenubarGoMenu=new k("MenubarGoMenu"),k.MenubarHelpMenu=new k("MenubarHelpMenu"),k.MenubarLayoutMenu=new k("MenubarLayoutMenu"),k.MenubarNewBreakpointMenu=new k("MenubarNewBreakpointMenu"),k.PanelAlignmentMenu=new k("PanelAlignmentMenu"),k.PanelPositionMenu=new k("PanelPositionMenu"),k.ActivityBarPositionMenu=new k("ActivityBarPositionMenu"),k.MenubarPreferencesMenu=new k("MenubarPreferencesMenu"),k.MenubarRecentMenu=new k("MenubarRecentMenu"),k.MenubarSelectionMenu=new k("MenubarSelectionMenu"),k.MenubarShare=new k("MenubarShare"),k.MenubarSwitchEditorMenu=new k("MenubarSwitchEditorMenu"),k.MenubarSwitchGroupMenu=new k("MenubarSwitchGroupMenu"),k.MenubarTerminalMenu=new k("MenubarTerminalMenu"),k.MenubarViewMenu=new k("MenubarViewMenu"),k.MenubarHomeMenu=new k("MenubarHomeMenu"),k.OpenEditorsContext=new k("OpenEditorsContext"),k.OpenEditorsContextShare=new k("OpenEditorsContextShare"),k.ProblemsPanelContext=new k("ProblemsPanelContext"),k.SCMInputBox=new k("SCMInputBox"),k.SCMChangesSeparator=new k("SCMChangesSeparator"),k.SCMChangesContext=new k("SCMChangesContext"),k.SCMIncomingChanges=new k("SCMIncomingChanges"),k.SCMIncomingChangesContext=new k("SCMIncomingChangesContext"),k.SCMIncomingChangesSetting=new k("SCMIncomingChangesSetting"),k.SCMOutgoingChanges=new k("SCMOutgoingChanges"),k.SCMOutgoingChangesContext=new k("SCMOutgoingChangesContext"),k.SCMOutgoingChangesSetting=new k("SCMOutgoingChangesSetting"),k.SCMIncomingChangesAllChangesContext=new k("SCMIncomingChangesAllChangesContext"),k.SCMIncomingChangesHistoryItemContext=new k("SCMIncomingChangesHistoryItemContext"),k.SCMOutgoingChangesAllChangesContext=new k("SCMOutgoingChangesAllChangesContext"),k.SCMOutgoingChangesHistoryItemContext=new k("SCMOutgoingChangesHistoryItemContext"),k.SCMChangeContext=new k("SCMChangeContext"),k.SCMResourceContext=new k("SCMResourceContext"),k.SCMResourceContextShare=new k("SCMResourceContextShare"),k.SCMResourceFolderContext=new k("SCMResourceFolderContext"),k.SCMResourceGroupContext=new k("SCMResourceGroupContext"),k.SCMSourceControl=new k("SCMSourceControl"),k.SCMSourceControlInline=new k("SCMSourceControlInline"),k.SCMSourceControlTitle=new k("SCMSourceControlTitle"),k.SCMHistoryTitle=new k("SCMHistoryTitle"),k.SCMTitle=new k("SCMTitle"),k.SearchContext=new k("SearchContext"),k.SearchActionMenu=new k("SearchActionContext"),k.StatusBarWindowIndicatorMenu=new k("StatusBarWindowIndicatorMenu"),k.StatusBarRemoteIndicatorMenu=new k("StatusBarRemoteIndicatorMenu"),k.StickyScrollContext=new k("StickyScrollContext"),k.TestItem=new k("TestItem"),k.TestItemGutter=new k("TestItemGutter"),k.TestProfilesContext=new k("TestProfilesContext"),k.TestMessageContext=new k("TestMessageContext"),k.TestMessageContent=new k("TestMessageContent"),k.TestPeekElement=new k("TestPeekElement"),k.TestPeekTitle=new k("TestPeekTitle"),k.TestCallStack=new k("TestCallStack"),k.TouchBarContext=new k("TouchBarContext"),k.TitleBarContext=new k("TitleBarContext"),k.TitleBarTitleContext=new k("TitleBarTitleContext"),k.TunnelContext=new k("TunnelContext"),k.TunnelPrivacy=new k("TunnelPrivacy"),k.TunnelProtocol=new k("TunnelProtocol"),k.TunnelPortInline=new k("TunnelInline"),k.TunnelTitle=new k("TunnelTitle"),k.TunnelLocalAddressInline=new k("TunnelLocalAddressInline"),k.TunnelOriginInline=new k("TunnelOriginInline"),k.ViewItemContext=new k("ViewItemContext"),k.ViewContainerTitle=new k("ViewContainerTitle"),k.ViewContainerTitleContext=new k("ViewContainerTitleContext"),k.ViewTitle=new k("ViewTitle"),k.ViewTitleContext=new k("ViewTitleContext"),k.CommentEditorActions=new k("CommentEditorActions"),k.CommentThreadTitle=new k("CommentThreadTitle"),k.CommentThreadActions=new k("CommentThreadActions"),k.CommentThreadAdditionalActions=new k("CommentThreadAdditionalActions"),k.CommentThreadTitleContext=new k("CommentThreadTitleContext"),k.CommentThreadCommentContext=new k("CommentThreadCommentContext"),k.CommentTitle=new k("CommentTitle"),k.CommentActions=new k("CommentActions"),k.CommentsViewThreadActions=new k("CommentsViewThreadActions"),k.InteractiveToolbar=new k("InteractiveToolbar"),k.InteractiveCellTitle=new k("InteractiveCellTitle"),k.InteractiveCellDelete=new k("InteractiveCellDelete"),k.InteractiveCellExecute=new k("InteractiveCellExecute"),k.InteractiveInputExecute=new k("InteractiveInputExecute"),k.InteractiveInputConfig=new k("InteractiveInputConfig"),k.ReplInputExecute=new k("ReplInputExecute"),k.IssueReporter=new k("IssueReporter"),k.NotebookToolbar=new k("NotebookToolbar"),k.NotebookStickyScrollContext=new k("NotebookStickyScrollContext"),k.NotebookCellTitle=new k("NotebookCellTitle"),k.NotebookCellDelete=new k("NotebookCellDelete"),k.NotebookCellInsert=new k("NotebookCellInsert"),k.NotebookCellBetween=new k("NotebookCellBetween"),k.NotebookCellListTop=new k("NotebookCellTop"),k.NotebookCellExecute=new k("NotebookCellExecute"),k.NotebookCellExecuteGoTo=new k("NotebookCellExecuteGoTo"),k.NotebookCellExecutePrimary=new k("NotebookCellExecutePrimary"),k.NotebookDiffCellInputTitle=new k("NotebookDiffCellInputTitle"),k.NotebookDiffCellMetadataTitle=new k("NotebookDiffCellMetadataTitle"),k.NotebookDiffCellOutputsTitle=new k("NotebookDiffCellOutputsTitle"),k.NotebookOutputToolbar=new k("NotebookOutputToolbar"),k.NotebookOutlineFilter=new k("NotebookOutlineFilter"),k.NotebookOutlineActionMenu=new k("NotebookOutlineActionMenu"),k.NotebookEditorLayoutConfigure=new k("NotebookEditorLayoutConfigure"),k.NotebookKernelSource=new k("NotebookKernelSource"),k.BulkEditTitle=new k("BulkEditTitle"),k.BulkEditContext=new k("BulkEditContext"),k.TimelineItemContext=new k("TimelineItemContext"),k.TimelineTitle=new k("TimelineTitle"),k.TimelineTitleContext=new k("TimelineTitleContext"),k.TimelineFilterSubMenu=new k("TimelineFilterSubMenu"),k.AccountsContext=new k("AccountsContext"),k.SidebarTitle=new k("SidebarTitle"),k.PanelTitle=new k("PanelTitle"),k.AuxiliaryBarTitle=new k("AuxiliaryBarTitle"),k.AuxiliaryBarHeader=new k("AuxiliaryBarHeader"),k.TerminalInstanceContext=new k("TerminalInstanceContext"),k.TerminalEditorInstanceContext=new k("TerminalEditorInstanceContext"),k.TerminalNewDropdownContext=new k("TerminalNewDropdownContext"),k.TerminalTabContext=new k("TerminalTabContext"),k.TerminalTabEmptyAreaContext=new k("TerminalTabEmptyAreaContext"),k.TerminalStickyScrollContext=new k("TerminalStickyScrollContext"),k.WebviewContext=new k("WebviewContext"),k.InlineCompletionsActions=new k("InlineCompletionsActions"),k.InlineEditsActions=new k("InlineEditsActions"),k.InlineEditActions=new k("InlineEditActions"),k.NewFile=new k("NewFile"),k.MergeInput1Toolbar=new k("MergeToolbar1Toolbar"),k.MergeInput2Toolbar=new k("MergeToolbar2Toolbar"),k.MergeBaseToolbar=new k("MergeBaseToolbar"),k.MergeInputResultToolbar=new k("MergeToolbarResultToolbar"),k.InlineSuggestionToolbar=new k("InlineSuggestionToolbar"),k.InlineEditToolbar=new k("InlineEditToolbar"),k.ChatContext=new k("ChatContext"),k.ChatCodeBlock=new k("ChatCodeblock"),k.ChatCompareBlock=new k("ChatCompareBlock"),k.ChatMessageTitle=new k("ChatMessageTitle"),k.ChatExecute=new k("ChatExecute"),k.ChatExecuteSecondary=new k("ChatExecuteSecondary"),k.ChatInputSide=new k("ChatInputSide"),k.AccessibleView=new k("AccessibleView"),k.MultiDiffEditorFileToolbar=new k("MultiDiffEditorFileToolbar"),k.DiffEditorHunkToolbar=new k("DiffEditorHunkToolbar"),k.DiffEditorSelectionToolbar=new k("DiffEditorSelectionToolbar");let $e=k;const yr=He("menuService"),kp=class kp{static for(e){let t=this._all.get(e);return t||(t=new kp(e),this._all.set(e,t)),t}static merge(e){const t=new Set;for(const i of e)i instanceof kp&&t.add(i.id);return t}constructor(e){this.id=e,this.has=t=>t===e}};kp._all=new Map;let _d=kp;const Eo=new class{constructor(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new DW({merge:_d.merge}),this.onDidChangeMenu=this._onDidChangeMenu.event}addCommand(o){return this._commands.set(o.id,o),this._onDidChangeMenu.fire(_d.for($e.CommandPalette)),_e(()=>{this._commands.delete(o.id)&&this._onDidChangeMenu.fire(_d.for($e.CommandPalette))})}getCommand(o){return this._commands.get(o)}getCommands(){const o=new Map;return this._commands.forEach((e,t)=>o.set(t,e)),o}appendMenuItem(o,e){let t=this._menuItems.get(o);t||(t=new yn,this._menuItems.set(o,t));const i=t.push(e);return this._onDidChangeMenu.fire(_d.for(o)),_e(()=>{i(),this._onDidChangeMenu.fire(_d.for(o))})}appendMenuItems(o){const e=new X;for(const{id:t,item:i}of o)e.add(this.appendMenuItem(t,i));return e}getMenuItems(o){let e;return this._menuItems.has(o)?e=[...this._menuItems.get(o)]:e=[],o===$e.CommandPalette&&this._appendImplicitItems(e),e}_appendImplicitItems(o){const e=new Set;for(const t of o)Rf(t)&&(e.add(t.command.id),t.alt&&e.add(t.alt.id));this._commands.forEach((t,i)=>{e.has(i)||o.push({command:t})})}};class Zm extends R0{constructor(e,t,i){super(`submenuitem.${e.submenu.id}`,typeof e.title=="string"?e.title:e.title.value,i,"submenu"),this.item=e,this.hideActions=t}}let so=L1=class{static label(e,t){return t?.renderShortTitle&&e.shortTitle?typeof e.shortTitle=="string"?e.shortTitle:e.shortTitle.value:typeof e.title=="string"?e.title:e.title.value}constructor(e,t,i,n,s,r,a){this.hideActions=n,this.menuKeybinding=s,this._commandService=a,this.id=e.id,this.label=L1.label(e,i),this.tooltip=(typeof e.tooltip=="string"?e.tooltip:e.tooltip?.value)??"",this.enabled=!e.precondition||r.contextMatchesRules(e.precondition),this.checked=void 0;let l;if(e.toggled){const c=e.toggled.condition?e.toggled:{condition:e.toggled};this.checked=r.contextMatchesRules(c.condition),this.checked&&c.tooltip&&(this.tooltip=typeof c.tooltip=="string"?c.tooltip:c.tooltip.value),this.checked&&Ee.isThemeIcon(c.icon)&&(l=c.icon),this.checked&&c.title&&(this.label=typeof c.title=="string"?c.title:c.title.value)}l||(l=Ee.isThemeIcon(e.icon)?e.icon:void 0),this.item=e,this.alt=t?new L1(t,void 0,i,n,void 0,r,a):void 0,this._options=i,this.class=l&&Ee.asClassName(l)}run(...e){let t=[];return this._options?.arg&&(t=[...t,this._options.arg]),this._options?.shouldForwardArgs&&(t=[...t,...e]),this._commandService.executeCommand(this.id,...t)}};so=L1=dz([CR(5,De),CR(6,hi)],so);class nu{constructor(e){this.desc=e}}function Rn(o){const e=[],t=new o,{f1:i,menu:n,keybinding:s,...r}=t.desc;if(bt.getCommand(r.id))throw new Error(`Cannot register two commands with the same id: ${r.id}`);if(e.push(bt.registerCommand({id:r.id,handler:(a,...l)=>t.run(a,...l),metadata:r.metadata})),Array.isArray(n))for(const a of n)e.push(Eo.appendMenuItem(a.id,{command:{...r,precondition:a.precondition===null?void 0:r.precondition},...a}));else n&&e.push(Eo.appendMenuItem(n.id,{command:{...r,precondition:n.precondition===null?void 0:r.precondition},...n}));if(i&&(e.push(Eo.appendMenuItem($e.CommandPalette,{command:r,when:r.precondition})),e.push(Eo.addCommand(r))),Array.isArray(s))for(const a of s)e.push(Nn.registerKeybindingRule({...a,id:r.id,when:r.precondition?re.and(r.precondition,a.when):a.when}));else s&&e.push(Nn.registerKeybindingRule({...s,id:r.id,when:r.precondition?re.and(r.precondition,s.when):s.when}));return{dispose(){xt(e)}}}const $s=He("telemetryService"),gs=He("logService");var Wn;(function(o){o[o.Off=0]="Off",o[o.Trace=1]="Trace",o[o.Debug=2]="Debug",o[o.Info=3]="Info",o[o.Warning=4]="Warning",o[o.Error=5]="Error"})(Wn||(Wn={}));const $F=Wn.Info;class KF extends z{constructor(){super(...arguments),this.level=$F,this._onDidChangeLogLevel=this._register(new A),this.onDidChangeLogLevel=this._onDidChangeLogLevel.event}setLevel(e){this.level!==e&&(this.level=e,this._onDidChangeLogLevel.fire(this.level))}getLevel(){return this.level}checkLogLevel(e){return this.level!==Wn.Off&&this.level<=e}}class uz extends KF{constructor(e=$F,t=!0){super(),this.useColors=t,this.setLevel(e)}trace(e,...t){this.checkLogLevel(Wn.Trace)&&(this.useColors?console.log("%cTRACE","color: #888",e,...t):console.log(e,...t))}debug(e,...t){this.checkLogLevel(Wn.Debug)&&(this.useColors?console.log("%cDEBUG","background: #eee; color: #888",e,...t):console.log(e,...t))}info(e,...t){this.checkLogLevel(Wn.Info)&&(this.useColors?console.log("%c INFO","color: #33f",e,...t):console.log(e,...t))}warn(e,...t){this.checkLogLevel(Wn.Warning)&&(this.useColors?console.log("%c WARN","color: #993",e,...t):console.log(e,...t))}error(e,...t){this.checkLogLevel(Wn.Error)&&(this.useColors?console.log("%c ERR","color: #f33",e,...t):console.error(e,...t))}}class fz extends KF{constructor(e){super(),this.loggers=e,e.length&&this.setLevel(e[0].getLevel())}setLevel(e){for(const t of this.loggers)t.setLevel(e);super.setLevel(e)}trace(e,...t){for(const i of this.loggers)i.trace(e,...t)}debug(e,...t){for(const i of this.loggers)i.debug(e,...t)}info(e,...t){for(const i of this.loggers)i.info(e,...t)}warn(e,...t){for(const i of this.loggers)i.warn(e,...t)}error(e,...t){for(const i of this.loggers)i.error(e,...t)}dispose(){for(const e of this.loggers)e.dispose();super.dispose()}}function gz(o){switch(o){case Wn.Trace:return"trace";case Wn.Debug:return"debug";case Wn.Info:return"info";case Wn.Warning:return"warn";case Wn.Error:return"error";case Wn.Off:return"off"}}new le("logLevel",gz(Wn.Info));class U0{constructor(e){this.id=e.id,this.precondition=e.precondition,this._kbOpts=e.kbOpts,this._menuOpts=e.menuOpts,this.metadata=e.metadata}register(){if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts){const e=Array.isArray(this._kbOpts)?this._kbOpts:[this._kbOpts];for(const t of e){let i=t.kbExpr;this.precondition&&(i?i=re.and(i,this.precondition):i=this.precondition);const n={id:this.id,weight:t.weight,args:t.args,when:i,primary:t.primary,secondary:t.secondary,win:t.win,linux:t.linux,mac:t.mac};Nn.registerKeybindingRule(n)}}bt.registerCommand({id:this.id,handler:(e,t)=>this.runCommand(e,t),metadata:this.metadata})}_registerMenuItem(e){Eo.appendMenuItem(e.menuId,{group:e.group,command:{id:this.id,title:e.title,icon:e.icon,precondition:this.precondition},when:e.when,order:e.order})}}class aT extends U0{constructor(){super(...arguments),this._implementations=[]}addImplementation(e,t,i,n){return this._implementations.push({priority:e,name:t,implementation:i,when:n}),this._implementations.sort((s,r)=>r.priority-s.priority),{dispose:()=>{for(let s=0;s{if(a.get(De).contextMatchesRules(i??void 0))return n(a,r,t)})}runCommand(e,t){return co.runEditorCommand(e,t,this.precondition,(i,n,s)=>this.runEditorCommand(i,n,s))}}class bi extends co{static convertOptions(e){let t;Array.isArray(e.menuOpts)?t=e.menuOpts:e.menuOpts?t=[e.menuOpts]:t=[];function i(n){return n.menuId||(n.menuId=$e.EditorContext),n.title||(n.title=e.label),n.when=re.and(e.precondition,n.when),n}return Array.isArray(e.contextMenuOpts)?t.push(...e.contextMenuOpts.map(i)):e.contextMenuOpts&&t.push(i(e.contextMenuOpts)),e.menuOpts=t,e}constructor(e){super(bi.convertOptions(e)),this.label=e.label,this.alias=e.alias}runEditorCommand(e,t,i){return this.reportTelemetry(e,t),this.run(e,t,i||{})}reportTelemetry(e,t){e.get($s).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class mz extends nu{run(e,...t){const i=e.get(Pt),n=i.getFocusedCodeEditor()||i.getActiveCodeEditor();if(n)return n.invokeWithinContext(s=>{const r=s.get(De),a=s.get(gs);if(!r.contextMatchesRules(this.desc.precondition??void 0)){a.debug("[EditorAction2] NOT running command because its precondition is FALSE",this.desc.id,this.desc.precondition?.serialize());return}return this.runEditorCommand(s,n,...t)})}}function Wo(o,e){bt.registerCommand(o,function(t,...i){const n=t.get(ke),[s,r]=i;ai(ve.isUri(s)),ai(P.isIPosition(r));const a=t.get(Fi).getModel(s);if(a){const l=P.lift(r);return n.invokeFunction(e,a,l,...i.slice(2))}return t.get(fo).createModelReference(s).then(l=>new Promise((c,d)=>{try{const h=n.invokeFunction(e,l.object.textEditorModel,P.lift(r),i.slice(2));c(h)}catch(h){d(h)}}).finally(()=>{l.dispose()}))})}function ge(o){return cr.INSTANCE.registerEditorCommand(o),o}function mi(o){const e=new o;return cr.INSTANCE.registerEditorAction(e),e}function Ho(o,e,t){cr.INSTANCE.registerEditorContribution(o,e,t)}var Af;(function(o){function e(r){return cr.INSTANCE.getEditorCommand(r)}o.getEditorCommand=e;function t(){return cr.INSTANCE.getEditorActions()}o.getEditorActions=t;function i(){return cr.INSTANCE.getEditorContributions()}o.getEditorContributions=i;function n(r){return cr.INSTANCE.getEditorContributions().filter(a=>r.indexOf(a.id)>=0)}o.getSomeEditorContributions=n;function s(){return cr.INSTANCE.getDiffEditorContributions()}o.getDiffEditorContributions=s})(Af||(Af={}));const pz={EditorCommonContributions:"editor.contributions"},xw=class xw{constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(e,t,i){this.editorContributions.push({id:e,ctor:t,instantiation:i})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(e){e.register(),this.editorActions.push(e)}getEditorActions(){return this.editorActions}registerEditorCommand(e){e.register(),this.editorCommands[e.id]=e}getEditorCommand(e){return this.editorCommands[e]||null}};xw.INSTANCE=new xw;let cr=xw;Bi.add(pz.EditorCommonContributions,cr.INSTANCE);function $_(o){return o.register(),o}const qF=$_(new aT({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2104},menuOpts:[{menuId:$e.MenubarEditMenu,group:"1_do",title:m({key:"miUndo",comment:["&& denotes a mnemonic"]},"&&Undo"),order:1},{menuId:$e.CommandPalette,group:"",title:m("undo","Undo"),order:1}]}));$_(new jF(qF,{id:"default:undo",precondition:void 0}));const GF=$_(new aT({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:[{menuId:$e.MenubarEditMenu,group:"1_do",title:m({key:"miRedo",comment:["&& denotes a mnemonic"]},"&&Redo"),order:2},{menuId:$e.CommandPalette,group:"",title:m("redo","Redo"),order:1}]}));$_(new jF(GF,{id:"default:redo",precondition:void 0}));const _z=$_(new aT({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:[{menuId:$e.MenubarSelectionMenu,group:"1_basic",title:m({key:"miSelectAll",comment:["&& denotes a mnemonic"]},"&&Select All"),order:1},{menuId:$e.CommandPalette,group:"",title:m("selectAll","Select All"),order:1}]})),bz="modulepreload",Cz=function(o,e){return new URL(o,e).href},vR={},vz=function(e,t,i){let n=Promise.resolve();if(t&&t.length>0){let c=function(d){return Promise.all(d.map(h=>Promise.resolve(h).then(u=>({status:"fulfilled",value:u}),u=>({status:"rejected",reason:u}))))};const r=document.getElementsByTagName("link"),a=document.querySelector("meta[property=csp-nonce]"),l=a?.nonce||a?.getAttribute("nonce");n=c(t.map(d=>{if(d=Cz(d,i),d in vR)return;vR[d]=!0;const h=d.endsWith(".css"),u=h?'[rel="stylesheet"]':"";if(i)for(let g=r.length-1;g>=0;g--){const p=r[g];if(p.href===d&&(!h||p.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${d}"]${u}`))return;const f=document.createElement("link");if(f.rel=h?"stylesheet":bz,h||(f.as="script"),f.crossOrigin="",f.href=d,l&&f.setAttribute("nonce",l),document.head.appendChild(f),h)return new Promise((g,p)=>{f.addEventListener("load",g),f.addEventListener("error",()=>p(new Error(`Unable to preload CSS for ${d}`)))})}))}function s(r){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=r,window.dispatchEvent(a),!a.defaultPrevented)throw r}return n.then(r=>{for(const a of r||[])a.status==="rejected"&&s(a.reason);return e().catch(s)})},wR="default",wz="$initialize";let yR=!1;function Xx(o){Og&&(yR||(yR=!0,console.warn("Could not create web worker(s). Falling back to loading web worker code in main thread, which might cause UI freezes. Please see https://github.com/microsoft/monaco-editor#faq")),console.warn(o.message))}class yz{constructor(e,t,i,n,s){this.vsWorker=e,this.req=t,this.channel=i,this.method=n,this.args=s,this.type=0}}class SR{constructor(e,t,i,n){this.vsWorker=e,this.seq=t,this.res=i,this.err=n,this.type=1}}class Sz{constructor(e,t,i,n,s){this.vsWorker=e,this.req=t,this.channel=i,this.eventName=n,this.arg=s,this.type=2}}class Lz{constructor(e,t,i){this.vsWorker=e,this.req=t,this.event=i,this.type=3}}class xz{constructor(e,t){this.vsWorker=e,this.req=t,this.type=4}}class kz{constructor(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(e){this._workerId=e}sendMessage(e,t,i){const n=String(++this._lastSentReq);return new Promise((s,r)=>{this._pendingReplies[n]={resolve:s,reject:r},this._send(new yz(this._workerId,n,e,t,i))})}listen(e,t,i){let n=null;const s=new A({onWillAddFirstListener:()=>{n=String(++this._lastSentReq),this._pendingEmitters.set(n,s),this._send(new Sz(this._workerId,n,e,t,i))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(n),this._send(new xz(this._workerId,n)),n=null}});return s.event}handleMessage(e){!e||!e.vsWorker||this._workerId!==-1&&e.vsWorker!==this._workerId||this._handleMessage(e)}createProxyToRemoteChannel(e,t){const i={get:(n,s)=>(typeof s=="string"&&!n[s]&&(YF(s)?n[s]=r=>this.listen(e,s,r):ZF(s)?n[s]=this.listen(e,s,void 0):s.charCodeAt(0)===36&&(n[s]=async(...r)=>(await t?.(),this.sendMessage(e,s,r)))),n[s])};return new Proxy(Object.create(null),i)}_handleMessage(e){switch(e.type){case 1:return this._handleReplyMessage(e);case 0:return this._handleRequestMessage(e);case 2:return this._handleSubscribeEventMessage(e);case 3:return this._handleEventMessage(e);case 4:return this._handleUnsubscribeEventMessage(e)}}_handleReplyMessage(e){if(!this._pendingReplies[e.seq]){console.warn("Got reply to unknown seq");return}const t=this._pendingReplies[e.seq];if(delete this._pendingReplies[e.seq],e.err){let i=e.err;e.err.$isError&&(i=new Error,i.name=e.err.name,i.message=e.err.message,i.stack=e.err.stack),t.reject(i);return}t.resolve(e.res)}_handleRequestMessage(e){const t=e.req;this._handler.handleMessage(e.channel,e.method,e.args).then(n=>{this._send(new SR(this._workerId,t,n,void 0))},n=>{n.detail instanceof Error&&(n.detail=HM(n.detail)),this._send(new SR(this._workerId,t,void 0,HM(n)))})}_handleSubscribeEventMessage(e){const t=e.req,i=this._handler.handleEvent(e.channel,e.eventName,e.arg)(n=>{this._send(new Lz(this._workerId,t,n))});this._pendingEvents.set(t,i)}_handleEventMessage(e){if(!this._pendingEmitters.has(e.req)){console.warn("Got event for unknown req");return}this._pendingEmitters.get(e.req).fire(e.event)}_handleUnsubscribeEventMessage(e){if(!this._pendingEvents.has(e.req)){console.warn("Got unsubscribe for unknown req");return}this._pendingEvents.get(e.req).dispose(),this._pendingEvents.delete(e.req)}_send(e){const t=[];if(e.type===0)for(let i=0;i{this._protocol.handleMessage(s)},s=>{Ze(s)})),this._protocol=new kz({sendMessage:(s,r)=>{this._worker.postMessage(s,r)},handleMessage:(s,r,a)=>this._handleMessage(s,r,a),handleEvent:(s,r,a)=>this._handleEvent(s,r,a)}),this._protocol.setWorkerId(this._worker.getId());let i=null;const n=globalThis.require;typeof n<"u"&&typeof n.getConfig=="function"?i=n.getConfig():typeof globalThis.requirejs<"u"&&(i=globalThis.requirejs.s.contexts._.config),this._onModuleLoaded=this._protocol.sendMessage(wR,wz,[this._worker.getId(),JSON.parse(JSON.stringify(i)),t.amdModuleId]),this.proxy=this._protocol.createProxyToRemoteChannel(wR,async()=>{await this._onModuleLoaded}),this._onModuleLoaded.catch(s=>{this._onError("Worker failed to load "+t.amdModuleId,s)})}_handleMessage(e,t,i){const n=this._localChannels.get(e);if(!n)return Promise.reject(new Error(`Missing channel ${e} on main thread`));if(typeof n[t]!="function")return Promise.reject(new Error(`Missing method ${t} on main thread channel ${e}`));try{return Promise.resolve(n[t].apply(n,i))}catch(s){return Promise.reject(s)}}_handleEvent(e,t,i){const n=this._localChannels.get(e);if(!n)throw new Error(`Missing channel ${e} on main thread`);if(YF(t)){const s=n[t].call(n,i);if(typeof s!="function")throw new Error(`Missing dynamic event ${t} on main thread channel ${e}.`);return s}if(ZF(t)){const s=n[t];if(typeof s!="function")throw new Error(`Missing event ${t} on main thread channel ${e}.`);return s}throw new Error(`Malformed event name ${t}`)}setChannel(e,t){this._localChannels.set(e,t)}_onError(e,t){console.error(e),console.info(t)}}function ZF(o){return o[0]==="o"&&o[1]==="n"&&ql(o.charCodeAt(2))}function YF(o){return/^onDynamic/.test(o)&&ql(o.charCodeAt(9))}function Kc(o,e){const t=globalThis.MonacoEnvironment;if(t?.createTrustedTypesPolicy)try{return t.createTrustedTypesPolicy(o,e)}catch(i){Ze(i);return}try{return globalThis.trustedTypes?.createPolicy(o,e)}catch(i){Ze(i);return}}let Xu;typeof self=="object"&&self.constructor&&self.constructor.name==="DedicatedWorkerGlobalScope"&&globalThis.workerttPolicy!==void 0?Xu=globalThis.workerttPolicy:Xu=Kc("defaultWorkerFactory",{createScriptURL:o=>o});function Iz(o,e){const t=globalThis.MonacoEnvironment;if(t){if(typeof t.getWorker=="function")return t.getWorker("workerMain.js",e);if(typeof t.getWorkerUrl=="function"){const i=t.getWorkerUrl("workerMain.js",e);return new Worker(Xu?Xu.createScriptURL(i):i,{name:e,type:"module"})}}if(o){const i=Ez(e,o.toString(!0)),n=new Worker(Xu?Xu.createScriptURL(i):i,{name:e,type:"module"});return Nz(n)}throw new Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}function Ez(o,e,t){if(!(/^((http:)|(https:)|(file:)|(vscode-file:))/.test(e)&&e.substring(0,globalThis.origin.length)!==globalThis.origin)){const s=e.lastIndexOf("?"),r=e.lastIndexOf("#",s),a=s>0?new URLSearchParams(e.substring(s+1,~r?r:void 0)):new URLSearchParams;$x.addSearchParam(a,!0,!0),a.toString()?e=`${e}?${a.toString()}#${o}`:e=`${e}#${o}`}const n=new Blob([Ag([`/*${o}*/`,void 0,`globalThis._VSCODE_NLS_MESSAGES = ${JSON.stringify(F5())};`,`globalThis._VSCODE_NLS_LANGUAGE = ${JSON.stringify(kN())};`,`globalThis._VSCODE_FILE_ROOT = '${globalThis._VSCODE_FILE_ROOT}';`,"const ttPolicy = globalThis.trustedTypes?.createPolicy('defaultWorkerFactory', { createScriptURL: value => value });","globalThis.workerttPolicy = ttPolicy;",`await import(ttPolicy?.createScriptURL('${e}') ?? '${e}');`,"globalThis.postMessage({ type: 'vscode-worker-ready' });",`/*${o}*/`]).join("")],{type:"application/javascript"});return URL.createObjectURL(n)}function Nz(o){return new Promise((e,t)=>{o.onmessage=function(i){i.data.type==="vscode-worker-ready"&&(o.onmessage=null,e(o))},o.onerror=t})}function Tz(o){return typeof o.then=="function"}class Mz extends z{constructor(e,t,i,n,s,r){super(),this.id=i,this.label=n;const a=Iz(e,n);Tz(a)?this.worker=a:this.worker=Promise.resolve(a),this.postMessage(t,[]),this.worker.then(l=>{l.onmessage=function(c){s(c.data)},l.onmessageerror=r,typeof l.addEventListener=="function"&&l.addEventListener("error",r)}),this._register(_e(()=>{this.worker?.then(l=>{l.onmessage=null,l.onmessageerror=null,l.removeEventListener("error",r),l.terminate()}),this.worker=null}))}getId(){return this.id}postMessage(e,t){this.worker?.then(i=>{try{i.postMessage(e,t)}catch(n){Ze(n),Ze(new Error(`FAILED to post message to '${this.label}'-worker`,{cause:n}))}})}}class Rz{constructor(e,t){this.amdModuleId=e,this.label=t,this.esmModuleLocation=E0.asBrowserUri(`${e}.esm.js`)}}const kw=class kw{constructor(){this._webWorkerFailedBeforeError=!1}create(e,t,i){const n=++kw.LAST_WORKER_ID;if(this._webWorkerFailedBeforeError)throw this._webWorkerFailedBeforeError;return new Mz(e.esmModuleLocation,e.amdModuleId,n,e.label||"anonymous"+n,t,s=>{Xx(s),this._webWorkerFailedBeforeError=s,i(s)})}};kw.LAST_WORKER_ID=0;let Jx=kw;function Az(o,e){const t=typeof o=="string"?new Rz(o,e):o;return new Dz(new Jx,t)}var Sn;(function(o){o[o.None=0]="None",o[o.Indent=1]="Indent",o[o.IndentOutdent=2]="IndentOutdent",o[o.Outdent=3]="Outdent"})(Sn||(Sn={}));class uS{constructor(e){if(this._neutralCharacter=null,this._neutralCharacterSearched=!1,this.open=e.open,this.close=e.close,this._inString=!0,this._inComment=!0,this._inRegEx=!0,Array.isArray(e.notIn))for(let t=0,i=e.notIn.length;tnew uS(t)):e.brackets?this._autoClosingPairs=e.brackets.map(t=>new uS({open:t[0],close:t[1]})):this._autoClosingPairs=[],e.__electricCharacterSupport&&e.__electricCharacterSupport.docComment){const t=e.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new uS({open:t.open,close:t.close||""}))}this._autoCloseBeforeForQuotes=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES,this._autoCloseBeforeForBrackets=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS,this._surroundingPairs=e.surroundingPairs||this._autoClosingPairs}getAutoClosingPairs(){return this._autoClosingPairs}getAutoCloseBeforeSet(e){return e?this._autoCloseBeforeForQuotes:this._autoCloseBeforeForBrackets}getSurroundingPairs(){return this._surroundingPairs}};wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES=`;:.,=}])> - `,wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS=`'"\`;:.,=}])> - `;let ek=wf;function zd(o,e){const t=o.getCount(),i=o.findTokenIndexAtOffset(e),n=o.getLanguageId(i);let s=i;for(;s+10&&o.getLanguageId(r-1)===n;)r--;return new Oz(o,n,r,s+1,o.getStartOffset(r),o.getEndOffset(s))}class Oz{constructor(e,t,i,n,s,r){this._scopedLineTokensBrand=void 0,this._actual=e,this.languageId=t,this._firstTokenIndex=i,this._lastTokenIndex=n,this.firstCharOffset=s,this._lastCharOffset=r,this.languageIdCodec=e.languageIdCodec}getLineContent(){return this._actual.getLineContent().substring(this.firstCharOffset,this._lastCharOffset)}getLineLength(){return this._lastCharOffset-this.firstCharOffset}getActualLineContentBefore(e){return this._actual.getLineContent().substring(0,this.firstCharOffset+e)}getTokenCount(){return this._lastTokenIndex-this._firstTokenIndex}findTokenIndexAtOffset(e){return this._actual.findTokenIndexAtOffset(e+this.firstCharOffset)-this._firstTokenIndex}getStandardTokenType(e){return this._actual.getStandardTokenType(e+this._firstTokenIndex)}toIViewLineTokens(){return this._actual.sliceAndInflate(this.firstCharOffset,this._lastCharOffset,0)}}function Pr(o){return(o&3)!==0}const LR=typeof Buffer<"u";let fS;class lT{static wrap(e){return LR&&!Buffer.isBuffer(e)&&(e=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),new lT(e)}constructor(e){this.buffer=e,this.byteLength=this.buffer.byteLength}toString(){return LR?this.buffer.toString():(fS||(fS=new TextDecoder),fS.decode(this.buffer))}}function Fz(o,e){return o[e+0]<<0>>>0|o[e+1]<<8>>>0}function Bz(o,e,t){o[t+0]=e&255,e=e>>>8,o[t+1]=e&255}function Jo(o,e){return o[e]*2**24+o[e+1]*2**16+o[e+2]*2**8+o[e+3]}function er(o,e,t){o[t+3]=e,e=e>>>8,o[t+2]=e,e=e>>>8,o[t+1]=e,e=e>>>8,o[t]=e}function xR(o,e){return o[e]}function kR(o,e,t){o[t]=e}let gS;function QF(){return gS||(gS=new TextDecoder("UTF-16LE")),gS}let mS;function Wz(){return mS||(mS=new TextDecoder("UTF-16BE")),mS}let pS;function XF(){return pS||(pS=C6()?QF():Wz()),pS}function Hz(o,e,t){const i=new Uint16Array(o.buffer,e,t);return t>0&&(i[0]===65279||i[0]===65534)?Vz(o,e,t):QF().decode(i)}function Vz(o,e,t){const i=[];let n=0;for(let s=0;s=this._capacity){this._flushBuffer(),this._completedStrings[this._completedStrings.length]=e;return}for(let i=0;i[r[0].toLowerCase(),r[1].toLowerCase()]);const t=[];for(let r=0;r{const[l,c]=r,[d,h]=a;return l===d||l===h||c===d||c===h},n=(r,a)=>{const l=Math.min(r,a),c=Math.max(r,a);for(let d=0;d0&&s.push({open:a,close:l})}return s}class Uz{constructor(e,t){this._richEditBracketsBrand=void 0;const i=zz(t);this.brackets=i.map((n,s)=>new vC(e,s,n.open,n.close,$z(n.open,n.close,i,s),Kz(n.open,n.close,i,s))),this.forwardRegex=jz(this.brackets),this.reversedRegex=qz(this.brackets),this.textIsBracket={},this.textIsOpenBracket={},this.maxBracketLength=0;for(const n of this.brackets){for(const s of n.open)this.textIsBracket[s]=n,this.textIsOpenBracket[s]=!0,this.maxBracketLength=Math.max(this.maxBracketLength,s.length);for(const s of n.close)this.textIsBracket[s]=n,this.textIsOpenBracket[s]=!1,this.maxBracketLength=Math.max(this.maxBracketLength,s.length)}}}function JF(o,e,t,i){for(let n=0,s=e.length;n=0&&i.push(a);for(const a of r.close)a.indexOf(o)>=0&&i.push(a)}}function e3(o,e){return o.length-e.length}function $0(o){if(o.length<=1)return o;const e=[],t=new Set;for(const i of o)t.has(i)||(e.push(i),t.add(i));return e}function $z(o,e,t,i){let n=[];n=n.concat(o),n=n.concat(e);for(let s=0,r=n.length;s=0;r--)n[s++]=i.charCodeAt(r);return XF().decode(n)}let e=null,t=null;return function(n){return e!==n&&(e=n,t=o(e)),t}})();class Co{static _findPrevBracketInText(e,t,i,n){const s=i.match(e);if(!s)return null;const r=i.length-(s.index||0),a=s[0].length,l=n+r;return new I(t,l-a+1,t,l+1)}static findPrevBracketInRange(e,t,i,n,s){const a=cT(i).substring(i.length-s,i.length-n);return this._findPrevBracketInText(e,t,a,n)}static findNextBracketInText(e,t,i,n){const s=i.match(e);if(!s)return null;const r=s.index||0,a=s[0].length;if(a===0)return null;const l=n+r;return new I(t,l+1,t,l+1+a)}static findNextBracketInRange(e,t,i,n,s){const r=i.substring(n,s);return this.findNextBracketInText(e,t,r,n)}}class Zz{constructor(e){this._richEditBrackets=e}getElectricCharacters(){const e=[];if(this._richEditBrackets)for(const t of this._richEditBrackets.brackets)for(const i of t.close){const n=i.charAt(i.length-1);e.push(n)}return Eh(e)}onElectricCharacter(e,t,i){if(!this._richEditBrackets||this._richEditBrackets.brackets.length===0)return null;const n=t.findTokenIndexAtOffset(i-1);if(Pr(t.getStandardTokenType(n)))return null;const s=this._richEditBrackets.reversedRegex,r=t.getLineContent().substring(0,i-1)+e,a=Co.findPrevBracketInRange(s,1,r,0,r.length);if(!a)return null;const l=r.substring(a.startColumn-1,a.endColumn-1).toLowerCase();if(this._richEditBrackets.textIsOpenBracket[l])return null;const d=t.getActualLineContentBefore(a.startColumn-1);return/^\s*$/.test(d)?{matchOpenBracket:l}:null}}function Db(o){return o.global&&(o.lastIndex=0),!0}class Yz{constructor(e){this._indentationRules=e}shouldIncrease(e){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&Db(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(e))}shouldDecrease(e){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&Db(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(e))}shouldIndentNextLine(e){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&Db(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(e))}shouldIgnore(e){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&Db(this._indentationRules.unIndentedLinePattern)&&this._indentationRules.unIndentedLinePattern.test(e))}getIndentMetadata(e){let t=0;return this.shouldIncrease(e)&&(t+=1),this.shouldDecrease(e)&&(t+=2),this.shouldIndentNextLine(e)&&(t+=4),this.shouldIgnore(e)&&(t+=8),t}}class Ju{constructor(e){e=e||{},e.brackets=e.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],e.brackets.forEach(t=>{const i=Ju._createOpenBracketRegExp(t[0]),n=Ju._createCloseBracketRegExp(t[1]);i&&n&&this._brackets.push({open:t[0],openRegExp:i,close:t[1],closeRegExp:n})}),this._regExpRules=e.onEnterRules||[]}onEnter(e,t,i,n){if(e>=3)for(let s=0,r=this._regExpRules.length;sc.reg?(c.reg.lastIndex=0,c.reg.test(c.text)):!0))return a.action}if(e>=2&&i.length>0&&n.length>0)for(let s=0,r=this._brackets.length;s=2&&i.length>0){for(let s=0,r=this._brackets.length;s"u"?t:s}function Xz(o){return o.replace(/[\[\]]/g,"")}const qt=He("languageService");class Gr{constructor(e,t=[],i=!1){this.ctor=e,this.staticArguments=t,this.supportsDelayedInstantiation=i}}const n3=[];function Qe(o,e,t){e instanceof Gr||(e=new Gr(e,[],!!t)),n3.push([o,e])}function IR(){return n3}const il=Object.freeze({text:"text/plain",binary:"application/octet-stream",unknown:"application/unknown",markdown:"text/markdown",latex:"text/latex",uriList:"text/uri-list"}),K0={JSONContribution:"base.contributions.json"};function Jz(o){return o.length>0&&o.charAt(o.length-1)==="#"?o.substring(0,o.length-1):o}class eU{constructor(){this._onDidChangeSchema=new A,this.schemasById={}}registerSchema(e,t){this.schemasById[Jz(e)]=t,this._onDidChangeSchema.fire(e)}notifySchemaChanged(e){this._onDidChangeSchema.fire(e)}}const tU=new eU;Bi.add(K0.JSONContribution,tU);const su={Configuration:"base.contributions.configuration"},Ib="vscode://schemas/settings/resourceLanguage",ER=Bi.as(K0.JSONContribution);class iU{constructor(){this.registeredConfigurationDefaults=[],this.overrideIdentifiers=new Set,this._onDidSchemaChange=new A,this._onDidUpdateConfiguration=new A,this.configurationDefaultsOverrides=new Map,this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:m("defaultLanguageConfigurationOverrides.title","Default Language Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultLanguageConfigurationOverridesNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!0,allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.policyConfigurations=new Map,this.excludedConfigurationProperties={},ER.registerSchema(Ib,this.resourceLanguageSettingsSchema),this.registerOverridePropertyPatternKey()}registerConfiguration(e,t=!0){this.registerConfigurations([e],t)}registerConfigurations(e,t=!0){const i=new Set;this.doRegisterConfigurations(e,t,i),ER.registerSchema(Ib,this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:i})}registerDefaultConfigurations(e){const t=new Set;this.doRegisterDefaultConfigurations(e,t),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:t,defaultsOverrides:!0})}doRegisterDefaultConfigurations(e,t){this.registeredConfigurationDefaults.push(...e);const i=[];for(const{overrides:n,source:s}of e)for(const r in n){t.add(r);const a=this.configurationDefaultsOverrides.get(r)??this.configurationDefaultsOverrides.set(r,{configurationDefaultOverrides:[]}).get(r),l=n[r];if(a.configurationDefaultOverrides.push({value:l,source:s}),Pc.test(r)){const c=this.mergeDefaultConfigurationsForOverrideIdentifier(r,l,s,a.configurationDefaultOverrideValue);if(!c)continue;a.configurationDefaultOverrideValue=c,this.updateDefaultOverrideProperty(r,c,s),i.push(...wC(r))}else{const c=this.mergeDefaultConfigurationsForConfigurationProperty(r,l,s,a.configurationDefaultOverrideValue);if(!c)continue;a.configurationDefaultOverrideValue=c;const d=this.configurationProperties[r];d&&(this.updatePropertyDefaultValue(r,d),this.updateSchema(r,d))}}this.doRegisterOverrideIdentifiers(i)}updateDefaultOverrideProperty(e,t,i){const n={type:"object",default:t.value,description:m("defaultLanguageConfiguration.description","Configure settings to be overridden for the {0} language.",Xz(e)),$ref:Ib,defaultDefaultValue:t.value,source:i,defaultValueSource:i};this.configurationProperties[e]=n,this.defaultLanguageConfigurationOverridesNode.properties[e]=n}mergeDefaultConfigurationsForOverrideIdentifier(e,t,i,n){const s=n?.value||{},r=n?.source??new Map;if(!(r instanceof Map)){console.error("objectConfigurationSources is not a Map");return}for(const a of Object.keys(t)){const l=t[a];if(Oi(l)&&(Es(s[a])||Oi(s[a]))){if(s[a]={...s[a]??{},...l},i)for(const d in l)r.set(`${a}.${d}`,i)}else s[a]=l,i?r.set(a,i):r.delete(a)}return{value:s,source:r}}mergeDefaultConfigurationsForConfigurationProperty(e,t,i,n){const s=this.configurationProperties[e],r=n?.value??s?.defaultDefaultValue;let a=i;if(Oi(t)&&(s!==void 0&&s.type==="object"||s===void 0&&(Es(r)||Oi(r)))){if(a=n?.source??new Map,!(a instanceof Map)){console.error("defaultValueSource is not a Map");return}for(const c in t)i&&a.set(`${e}.${c}`,i);t={...Oi(r)?r:{},...t}}return{value:t,source:a}}registerOverrideIdentifiers(e){this.doRegisterOverrideIdentifiers(e),this._onDidSchemaChange.fire()}doRegisterOverrideIdentifiers(e){for(const t of e)this.overrideIdentifiers.add(t);this.updateOverridePropertyPatternKey()}doRegisterConfigurations(e,t,i){e.forEach(n=>{this.validateAndRegisterProperties(n,t,n.extensionInfo,n.restrictedProperties,void 0,i),this.configurationContributors.push(n),this.registerJSONConfiguration(n)})}validateAndRegisterProperties(e,t=!0,i,n,s=3,r){s=xs(e.scope)?s:e.scope;const a=e.properties;if(a)for(const c in a){const d=a[c];if(t&&oU(c,d)){delete a[c];continue}if(d.source=i,d.defaultDefaultValue=a[c].default,this.updatePropertyDefaultValue(c,d),Pc.test(c)?d.scope=void 0:(d.scope=xs(d.scope)?s:d.scope,d.restricted=xs(d.restricted)?!!n?.includes(c):d.restricted),a[c].hasOwnProperty("included")&&!a[c].included){this.excludedConfigurationProperties[c]=a[c],delete a[c];continue}else this.configurationProperties[c]=a[c],a[c].policy?.name&&this.policyConfigurations.set(a[c].policy.name,c);!a[c].deprecationMessage&&a[c].markdownDeprecationMessage&&(a[c].deprecationMessage=a[c].markdownDeprecationMessage),r.add(c)}const l=e.allOf;if(l)for(const c of l)this.validateAndRegisterProperties(c,t,i,n,s,r)}getConfigurationProperties(){return this.configurationProperties}getPolicyConfigurations(){return this.policyConfigurations}registerJSONConfiguration(e){const t=i=>{const n=i.properties;if(n)for(const r in n)this.updateSchema(r,n[r]);i.allOf?.forEach(t)};t(e)}updateSchema(e,t){switch(t.scope){case 1:break;case 2:break;case 6:break;case 3:break;case 4:break;case 5:this.resourceLanguageSettingsSchema.properties[e]=t;break}}updateOverridePropertyPatternKey(){for(const e of this.overrideIdentifiers.values()){const t=`[${e}]`,i={type:"object",description:m("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:m("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:Ib};this.updatePropertyDefaultValue(t,i)}}registerOverridePropertyPatternKey(){m("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),m("overrideSettings.errorMessage","This setting does not support per-language configuration."),this._onDidSchemaChange.fire()}updatePropertyDefaultValue(e,t){const i=this.configurationDefaultsOverrides.get(e)?.configurationDefaultOverrideValue;let n,s;i&&(!t.disallowConfigurationDefault||!i.source)&&(n=i.value,s=i.source),Es(n)&&(n=t.defaultDefaultValue,s=void 0),Es(n)&&(n=sU(t.type)),t.default=n,t.defaultValueSource=s}}const s3="\\[([^\\]]+)\\]",NR=new RegExp(s3,"g"),nU=`^(${s3})+$`,Pc=new RegExp(nU);function wC(o){const e=[];if(Pc.test(o)){let t=NR.exec(o);for(;t?.length;){const i=t[1].trim();i&&e.push(i),t=NR.exec(o)}}return Eh(e)}function sU(o){switch(Array.isArray(o)?o[0]:o){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}const x1=new iU;Bi.add(su.Configuration,x1);function oU(o,e){return o.trim()?Pc.test(o)?m("config.property.languageDefault","Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",o):x1.getConfigurationProperties()[o]!==void 0?m("config.property.duplicate","Cannot register '{0}'. This property is already registered.",o):e.policy?.name&&x1.getPolicyConfigurations().get(e.policy?.name)!==void 0?m("config.policy.duplicate","Cannot register '{0}'. The associated policy {1} is already registered with {2}.",o,e.policy?.name,x1.getPolicyConfigurations().get(e.policy?.name)):null:m("config.property.empty","Cannot register an empty property")}const rU={ModesRegistry:"editor.modesRegistry"};class aU{constructor(){this._onDidChangeLanguages=new A,this.onDidChangeLanguages=this._onDidChangeLanguages.event,this._languages=[]}registerLanguage(e){return this._languages.push(e),this._onDidChangeLanguages.fire(void 0),{dispose:()=>{for(let t=0,i=this._languages.length;t{const l=new Set;return{info:new dU(this,a,l),closing:l}}),s=new XM(a=>{const l=new Set,c=new Set;return{info:new hU(this,a,l,c),opening:l,openingColorized:c}});for(const[a,l]of i){const c=n.get(a),d=s.get(l);c.closing.add(d.info),d.opening.add(c.info)}const r=t.colorizedBracketPairs?TR(t.colorizedBracketPairs):i.filter(a=>!(a[0]==="<"&&a[1]===">"));for(const[a,l]of r){const c=n.get(a),d=s.get(l);c.closing.add(d.info),d.openingColorized.add(c.info),d.opening.add(c.info)}this._openingBrackets=new Map([...n.cachedValues].map(([a,l])=>[a,l.info])),this._closingBrackets=new Map([...s.cachedValues].map(([a,l])=>[a,l.info]))}get openingBrackets(){return[...this._openingBrackets.values()]}get closingBrackets(){return[...this._closingBrackets.values()]}getOpeningBracketInfo(e){return this._openingBrackets.get(e)}getClosingBracketInfo(e){return this._closingBrackets.get(e)}getBracketInfo(e){return this.getOpeningBracketInfo(e)||this.getClosingBracketInfo(e)}getBracketRegExp(e){const t=Array.from([...this._openingBrackets.keys(),...this._closingBrackets.keys()]);return j_(t,e)}}function TR(o){return o.filter(([e,t])=>e!==""&&t!=="")}class o3{constructor(e,t){this.config=e,this.bracketText=t}get languageId(){return this.config.languageId}}class dU extends o3{constructor(e,t,i){super(e,t),this.openedBrackets=i,this.isOpeningBracket=!0}}class hU extends o3{constructor(e,t,i,n){super(e,t),this.openingBrackets=i,this.openingColorizedBrackets=n,this.isOpeningBracket=!1}closes(e){return e.config!==this.config?!1:this.openingBrackets.has(e)}closesColorized(e){return e.config!==this.config?!1:this.openingColorizedBrackets.has(e)}getOpeningBrackets(){return[...this.openingBrackets]}}var uU=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},MR=function(o,e){return function(t,i){e(t,i,o)}};class _S{constructor(e){this.languageId=e}affects(e){return this.languageId?this.languageId===e:!0}}const Gn=He("languageConfigurationService");let ik=class extends z{constructor(e,t){super(),this.configurationService=e,this.languageService=t,this._registry=this._register(new pU),this.onDidChangeEmitter=this._register(new A),this.onDidChange=this.onDidChangeEmitter.event,this.configurations=new Map;const i=new Set(Object.values(nk));this._register(this.configurationService.onDidChangeConfiguration(n=>{const s=n.change.keys.some(a=>i.has(a)),r=n.change.overrides.filter(([a,l])=>l.some(c=>i.has(c))).map(([a])=>a);if(s)this.configurations.clear(),this.onDidChangeEmitter.fire(new _S(void 0));else for(const a of r)this.languageService.isRegisteredLanguageId(a)&&(this.configurations.delete(a),this.onDidChangeEmitter.fire(new _S(a)))})),this._register(this._registry.onDidChange(n=>{this.configurations.delete(n.languageId),this.onDidChangeEmitter.fire(new _S(n.languageId))}))}register(e,t,i){return this._registry.register(e,t,i)}getLanguageConfiguration(e){let t=this.configurations.get(e);return t||(t=fU(e,this._registry,this.configurationService,this.languageService),this.configurations.set(e,t)),t}};ik=uU([MR(0,lt),MR(1,qt)],ik);function fU(o,e,t,i){let n=e.getLanguageConfiguration(o);if(!n){if(!i.isRegisteredLanguageId(o))return new Pf(o,{});n=new Pf(o,{})}const s=gU(n.languageId,t),r=a3([n.underlyingConfig,s]);return new Pf(n.languageId,r)}const nk={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function gU(o,e){const t=e.getValue(nk.brackets,{overrideIdentifier:o}),i=e.getValue(nk.colorizedBracketPairs,{overrideIdentifier:o});return{brackets:RR(t),colorizedBracketPairs:RR(i)}}function RR(o){if(Array.isArray(o))return o.map(e=>{if(!(!Array.isArray(e)||e.length!==2))return[e[0],e[1]]}).filter(e=>!!e)}function r3(o,e,t){const i=o.getLineContent(e);let n=pi(i);return n.length>t-1&&(n=n.substring(0,t-1)),n}class mU{constructor(e){this.languageId=e,this._resolved=null,this._entries=[],this._order=0,this._resolved=null}register(e,t){const i=new AR(e,t,++this._order);return this._entries.push(i),this._resolved=null,_e(()=>{for(let n=0;ne.configuration)))}}function a3(o){let e={comments:void 0,brackets:void 0,wordPattern:void 0,indentationRules:void 0,onEnterRules:void 0,autoClosingPairs:void 0,surroundingPairs:void 0,autoCloseBefore:void 0,folding:void 0,colorizedBracketPairs:void 0,__electricCharacterSupport:void 0};for(const t of o)e={comments:t.comments||e.comments,brackets:t.brackets||e.brackets,wordPattern:t.wordPattern||e.wordPattern,indentationRules:t.indentationRules||e.indentationRules,onEnterRules:t.onEnterRules||e.onEnterRules,autoClosingPairs:t.autoClosingPairs||e.autoClosingPairs,surroundingPairs:t.surroundingPairs||e.surroundingPairs,autoCloseBefore:t.autoCloseBefore||e.autoCloseBefore,folding:t.folding||e.folding,colorizedBracketPairs:t.colorizedBracketPairs||e.colorizedBracketPairs,__electricCharacterSupport:t.__electricCharacterSupport||e.__electricCharacterSupport};return e}class AR{constructor(e,t,i){this.configuration=e,this.priority=t,this.order=i}static cmp(e,t){return e.priority===t.priority?e.order-t.order:e.priority-t.priority}}class PR{constructor(e){this.languageId=e}}class pU extends z{constructor(){super(),this._entries=new Map,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._register(this.register(Bs,{brackets:[["(",")"],["[","]"],["{","}"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],colorizedBracketPairs:[],folding:{offSide:!0}},0))}register(e,t,i=0){let n=this._entries.get(e);n||(n=new mU(e),this._entries.set(e,n));const s=n.register(t,i);return this._onDidChange.fire(new PR(e)),_e(()=>{s.dispose(),this._onDidChange.fire(new PR(e))})}getLanguageConfiguration(e){return this._entries.get(e)?.getResolvedConfiguration()||null}}class Pf{constructor(e,t){this.languageId=e,this.underlyingConfig=t,this._brackets=null,this._electricCharacter=null,this._onEnterSupport=this.underlyingConfig.brackets||this.underlyingConfig.indentationRules||this.underlyingConfig.onEnterRules?new Ju(this.underlyingConfig):null,this.comments=Pf._handleComments(this.underlyingConfig),this.characterPair=new ek(this.underlyingConfig),this.wordDefinition=this.underlyingConfig.wordPattern||EN,this.indentationRules=this.underlyingConfig.indentationRules,this.underlyingConfig.indentationRules?this.indentRulesSupport=new Yz(this.underlyingConfig.indentationRules):this.indentRulesSupport=null,this.foldingRules=this.underlyingConfig.folding||{},this.bracketsNew=new cU(e,this.underlyingConfig)}getWordDefinition(){return NN(this.wordDefinition)}get brackets(){return!this._brackets&&this.underlyingConfig.brackets&&(this._brackets=new Uz(this.languageId,this.underlyingConfig.brackets)),this._brackets}get electricCharacter(){return this._electricCharacter||(this._electricCharacter=new Zz(this.brackets)),this._electricCharacter}onEnter(e,t,i,n){return this._onEnterSupport?this._onEnterSupport.onEnter(e,t,i,n):null}getAutoClosingPairs(){return new Pz(this.characterPair.getAutoClosingPairs())}getAutoCloseBeforeSet(e){return this.characterPair.getAutoCloseBeforeSet(e)}getSurroundingPairs(){return this.characterPair.getSurroundingPairs()}static _handleComments(e){const t=e.comments;if(!t)return null;const i={};if(t.lineComment&&(i.lineCommentToken=t.lineComment),t.blockComment){const[n,s]=t.blockComment;i.blockCommentStartToken=n,i.blockCommentEndToken=s}return i}}Qe(Gn,ik,1);class $l{constructor(e,t,i,n){this.originalStart=e,this.originalLength=t,this.modifiedStart=i,this.modifiedLength=n}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}class OR{constructor(e){this.source=e}getElements(){const e=this.source,t=new Int32Array(e.length);for(let i=0,n=e.length;i0||this.m_modifiedCount>0)&&this.m_changes.push(new $l(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824}AddOriginalElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_originalCount++}AddModifiedElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_modifiedCount++}getChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes}getReverseChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes}}class Yr{constructor(e,t,i=null){this.ContinueProcessingPredicate=i,this._originalSequence=e,this._modifiedSequence=t;const[n,s,r]=Yr._getElements(e),[a,l,c]=Yr._getElements(t);this._hasStrings=r&&c,this._originalStringElements=n,this._originalElementsOrHash=s,this._modifiedStringElements=a,this._modifiedElementsOrHash=l,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(e){return e.length>0&&typeof e[0]=="string"}static _getElements(e){const t=e.getElements();if(Yr._isStringArray(t)){const i=new Int32Array(t.length);for(let n=0,s=t.length;n=e&&n>=i&&this.ElementsAreEqual(t,n);)t--,n--;if(e>t||i>n){let h;return i<=n?(ku.Assert(e===t+1,"originalStart should only be one more than originalEnd"),h=[new $l(e,0,i,n-i+1)]):e<=t?(ku.Assert(i===n+1,"modifiedStart should only be one more than modifiedEnd"),h=[new $l(e,t-e+1,i,0)]):(ku.Assert(e===t+1,"originalStart should only be one more than originalEnd"),ku.Assert(i===n+1,"modifiedStart should only be one more than modifiedEnd"),h=[]),h}const r=[0],a=[0],l=this.ComputeRecursionPoint(e,t,i,n,r,a,s),c=r[0],d=a[0];if(l!==null)return l;if(!s[0]){const h=this.ComputeDiffRecursive(e,c,i,d,s);let u=[];return s[0]?u=[new $l(c+1,t-(c+1)+1,d+1,n-(d+1)+1)]:u=this.ComputeDiffRecursive(c+1,t,d+1,n,s),this.ConcatenateChanges(h,u)}return[new $l(e,t-e+1,i,n-i+1)]}WALKTRACE(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_,b,C){let w=null,v=null,y=new FR,x=t,L=i,E=f[0]-_[0]-n,N=-1073741824,H=this.m_forwardHistory.length-1;do{const F=E+e;F===x||F=0&&(c=this.m_forwardHistory[H],e=c[0],x=1,L=c.length-1)}while(--H>=-1);if(w=y.getReverseChanges(),C[0]){let F=f[0]+1,W=_[0]+1;if(w!==null&&w.length>0){const j=w[w.length-1];F=Math.max(F,j.getOriginalEnd()),W=Math.max(W,j.getModifiedEnd())}v=[new $l(F,u-F+1,W,p-W+1)]}else{y=new FR,x=r,L=a,E=f[0]-_[0]-l,N=1073741824,H=b?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const F=E+s;F===x||F=d[F+1]?(h=d[F+1]-1,g=h-E-l,h>N&&y.MarkNextChange(),N=h+1,y.AddOriginalElement(h+1,g+1),E=F+1-s):(h=d[F-1],g=h-E-l,h>N&&y.MarkNextChange(),N=h,y.AddModifiedElement(h+1,g+1),E=F-1-s),H>=0&&(d=this.m_reverseHistory[H],s=d[0],x=1,L=d.length-1)}while(--H>=-1);v=y.getChanges()}return this.ConcatenateChanges(w,v)}ComputeRecursionPoint(e,t,i,n,s,r,a){let l=0,c=0,d=0,h=0,u=0,f=0;e--,i--,s[0]=0,r[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];const g=t-e+(n-i),p=g+1,_=new Int32Array(p),b=new Int32Array(p),C=n-i,w=t-e,v=e-i,y=t-n,L=(w-C)%2===0;_[C]=e,b[w]=t,a[0]=!1;for(let E=1;E<=g/2+1;E++){let N=0,H=0;d=this.ClipDiagonalBound(C-E,E,C,p),h=this.ClipDiagonalBound(C+E,E,C,p);for(let W=d;W<=h;W+=2){W===d||WN+H&&(N=l,H=c),!L&&Math.abs(W-w)<=E-1&&l>=b[W])return s[0]=l,r[0]=c,j<=b[W]&&E<=1448?this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a):null}const F=(N-e+(H-i)-E)/2;if(this.ContinueProcessingPredicate!==null&&!this.ContinueProcessingPredicate(N,F))return a[0]=!0,s[0]=N,r[0]=H,F>0&&E<=1448?this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a):(e++,i++,[new $l(e,t-e+1,i,n-i+1)]);u=this.ClipDiagonalBound(w-E,E,w,p),f=this.ClipDiagonalBound(w+E,E,w,p);for(let W=u;W<=f;W+=2){W===u||W=b[W+1]?l=b[W+1]-1:l=b[W-1],c=l-(W-w)-y;const j=l;for(;l>e&&c>i&&this.ElementsAreEqual(l,c);)l--,c--;if(b[W]=l,L&&Math.abs(W-C)<=E&&l<=_[W])return s[0]=l,r[0]=c,j>=_[W]&&E<=1448?this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a):null}if(E<=1447){let W=new Int32Array(h-d+2);W[0]=C-d+1,Du.Copy2(_,d,W,1,h-d+1),this.m_forwardHistory.push(W),W=new Int32Array(f-u+2),W[0]=w-u+1,Du.Copy2(b,u,W,1,f-u+1),this.m_reverseHistory.push(W)}}return this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a)}PrettifyChanges(e){for(let t=0;t0,a=i.modifiedLength>0;for(;i.originalStart+i.originalLength=0;t--){const i=e[t];let n=0,s=0;if(t>0){const h=e[t-1];n=h.originalStart+h.originalLength,s=h.modifiedStart+h.modifiedLength}const r=i.originalLength>0,a=i.modifiedLength>0;let l=0,c=this._boundaryScore(i.originalStart,i.originalLength,i.modifiedStart,i.modifiedLength);for(let h=1;;h++){const u=i.originalStart-h,f=i.modifiedStart-h;if(uc&&(c=p,l=h)}i.originalStart-=l,i.modifiedStart-=l;const d=[null];if(t>0&&this.ChangesOverlap(e[t-1],e[t],d)){e[t-1]=d[0],e.splice(t,1),t++;continue}}if(this._hasStrings)for(let t=1,i=e.length;t0&&f>l&&(l=f,c=h,d=u)}return l>0?[c,d]:null}_contiguousSequenceScore(e,t,i){let n=0;for(let s=0;s=this._originalElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._originalStringElements[e])}_OriginalRegionIsBoundary(e,t){if(this._OriginalIsBoundary(e)||this._OriginalIsBoundary(e-1))return!0;if(t>0){const i=e+t;if(this._OriginalIsBoundary(i-1)||this._OriginalIsBoundary(i))return!0}return!1}_ModifiedIsBoundary(e){return e<=0||e>=this._modifiedElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[e])}_ModifiedRegionIsBoundary(e,t){if(this._ModifiedIsBoundary(e)||this._ModifiedIsBoundary(e-1))return!0;if(t>0){const i=e+t;if(this._ModifiedIsBoundary(i-1)||this._ModifiedIsBoundary(i))return!0}return!1}_boundaryScore(e,t,i,n){const s=this._OriginalRegionIsBoundary(e,t)?1:0,r=this._ModifiedRegionIsBoundary(i,n)?1:0;return s+r}ConcatenateChanges(e,t){const i=[];if(e.length===0||t.length===0)return t.length>0?t:e;if(this.ChangesOverlap(e[e.length-1],t[0],i)){const n=new Array(e.length+t.length-1);return Du.Copy(e,0,n,0,e.length-1),n[e.length-1]=i[0],Du.Copy(t,1,n,e.length,t.length-1),n}else{const n=new Array(e.length+t.length);return Du.Copy(e,0,n,0,e.length),Du.Copy(t,0,n,e.length,t.length),n}}ChangesOverlap(e,t,i){if(ku.Assert(e.originalStart<=t.originalStart,"Left change is not less than or equal to right change"),ku.Assert(e.modifiedStart<=t.modifiedStart,"Left change is not less than or equal to right change"),e.originalStart+e.originalLength>=t.originalStart||e.modifiedStart+e.modifiedLength>=t.modifiedStart){const n=e.originalStart;let s=e.originalLength;const r=e.modifiedStart;let a=e.modifiedLength;return e.originalStart+e.originalLength>=t.originalStart&&(s=t.originalStart+t.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=t.modifiedStart&&(a=t.modifiedStart+t.modifiedLength-e.modifiedStart),i[0]=new $l(n,s,r,a),!0}else return i[0]=null,!1}ClipDiagonalBound(e,t,i,n){if(e>=0&&e255?255:o|0}function Iu(o){return o<0?0:o>4294967295?4294967295:o|0}class Wg{constructor(e){const t=yC(e);this._defaultValue=t,this._asciiMap=Wg._createAsciiMap(t),this._map=new Map}static _createAsciiMap(e){const t=new Uint8Array(256);return t.fill(e),t}set(e,t){const i=yC(t);e>=0&&e<256?this._asciiMap[e]=i:this._map.set(e,i)}get(e){return e>=0&&e<256?this._asciiMap[e]:this._map.get(e)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class bU{constructor(){this._actual=new Wg(0)}add(e){this._actual.set(e,1)}has(e){return this._actual.get(e)===1}clear(){return this._actual.clear()}}class CU{constructor(e,t,i){const n=new Uint8Array(e*t);for(let s=0,r=e*t;st&&(t=l),a>i&&(i=a),c>i&&(i=c)}t++,i++;const n=new CU(i,t,0);for(let s=0,r=e.length;s=this._maxCharCode?0:this._states.get(e,t)}}let bS=null;function wU(){return bS===null&&(bS=new vU([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),bS}let dm=null;function yU(){if(dm===null){dm=new Wg(0);const o=` <>'"、。。、,.:;‘〈「『〔([{「」}])〕』」〉’`~…`;for(let t=0;tn);if(n>0){const a=t.charCodeAt(n-1),l=t.charCodeAt(r);(a===40&&l===41||a===91&&l===93||a===123&&l===125)&&r--}return{range:{startLineNumber:i,startColumn:n+1,endLineNumber:i,endColumn:r+2},url:t.substring(n,r+1)}}static computeLinks(e,t=wU()){const i=yU(),n=[];for(let s=1,r=e.getLineCount();s<=r;s++){const a=e.getLineContent(s),l=a.length;let c=0,d=0,h=0,u=1,f=!1,g=!1,p=!1,_=!1;for(;c=0?(n+=i?1:-1,n<0?n=e.length-1:n%=e.length,e[n]):null}};Dw.INSTANCE=new Dw;let sk=Dw;const Dp=class Dp{static getChannel(e){return e.getChannel(Dp.CHANNEL_NAME)}static setChannel(e,t){e.setChannel(Dp.CHANNEL_NAME,t)}};Dp.CHANNEL_NAME="editorWorkerHost";let ok=Dp;var BR,WR;class LU{constructor(e,t){this.uri=e,this.value=t}}function xU(o){return Array.isArray(o)}const Pd=class Pd{constructor(e,t){if(this[BR]="ResourceMap",e instanceof Pd)this.map=new Map(e.map),this.toKey=t??Pd.defaultToKey;else if(xU(e)){this.map=new Map,this.toKey=t??Pd.defaultToKey;for(const[i,n]of e)this.set(i,n)}else this.map=new Map,this.toKey=e??Pd.defaultToKey}set(e,t){return this.map.set(this.toKey(e),new LU(e,t)),this}get(e){return this.map.get(this.toKey(e))?.value}has(e){return this.map.has(this.toKey(e))}get size(){return this.map.size}clear(){this.map.clear()}delete(e){return this.map.delete(this.toKey(e))}forEach(e,t){typeof t<"u"&&(e=e.bind(t));for(const[i,n]of this.map)e(n.value,n.uri,this)}*values(){for(const e of this.map.values())yield e.value}*keys(){for(const e of this.map.values())yield e.uri}*entries(){for(const e of this.map.values())yield[e.uri,e.value]}*[(BR=Symbol.toStringTag,Symbol.iterator)](){for(const[,e]of this.map)yield[e.uri,e.value]}};Pd.defaultToKey=e=>e.toString();let cs=Pd;class kU{constructor(){this[WR]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,t=0){const i=this._map.get(e);if(i)return t!==0&&this.touch(i,t),i.value}set(e,t,i=0){let n=this._map.get(e);if(n)n.value=t,i!==0&&this.touch(n,i);else{switch(n={key:e,value:t,next:void 0,previous:void 0},i){case 0:this.addItemLast(n);break;case 1:this.addItemFirst(n);break;case 2:this.addItemLast(n);break;default:this.addItemLast(n);break}this._map.set(e,n),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){const t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){const i=this._state;let n=this._head;for(;n;){if(t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),this._state!==i)throw new Error("LinkedMap got modified during iteration.");n=n.next}}keys(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:i.key,done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}values(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:i.value,done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}entries(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:[i.key,i.value],done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}[(WR=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._head,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.next,i--;this._head=t,this._size=i,t&&(t.previous=void 0),this._state++}trimNew(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._tail,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.previous,i--;this._tail=t,this._size=i,t&&(t.next=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw new Error("Invalid list");this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw new Error("Invalid list");this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{const t=e.next,i=e.previous;if(!t||!i)throw new Error("Invalid list");t.previous=i,i.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,t){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(t!==1&&t!==2)){if(t===1){if(e===this._head)return;const i=e.next,n=e.previous;e===this._tail?(n.next=void 0,this._tail=n):(i.previous=n,n.next=i),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(t===2){if(e===this._tail)return;const i=e.next,n=e.previous;e===this._head?(i.previous=void 0,this._head=i):(i.previous=n,n.next=i),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){const e=[];return this.forEach((t,i)=>{e.push([i,t])}),e}fromJSON(e){this.clear();for(const[t,i]of e)this.set(t,i)}}class DU extends kU{constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get(e,t=2){return super.get(e,t)}peek(e){return super.get(e,0)}set(e,t){return super.set(e,t,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}class ou extends DU{constructor(e,t=1){super(e,t)}trim(e){this.trimOld(e)}set(e,t){return super.set(e,t),this.checkTrim(),this}}class IU{constructor(e){if(this._m1=new Map,this._m2=new Map,e)for(const[t,i]of e)this.set(t,i)}clear(){this._m1.clear(),this._m2.clear()}set(e,t){this._m1.set(e,t),this._m2.set(t,e)}get(e){return this._m1.get(e)}getKey(e){return this._m2.get(e)}delete(e){const t=this._m1.get(e);return t===void 0?!1:(this._m1.delete(e),this._m2.delete(t),!0)}keys(){return this._m1.keys()}values(){return this._m1.values()}}class dT{constructor(){this.map=new Map}add(e,t){let i=this.map.get(e);i||(i=new Set,this.map.set(e,i)),i.add(t)}delete(e,t){const i=this.map.get(e);i&&(i.delete(t),i.size===0&&this.map.delete(e))}forEach(e,t){const i=this.map.get(e);i&&i.forEach(t)}get(e){const t=this.map.get(e);return t||new Set}}class EU extends Wg{constructor(e,t){super(0),this._segmenter=null,this._cachedLine=null,this._cachedSegments=[],this.intlSegmenterLocales=t,this.intlSegmenterLocales.length>0?this._segmenter=new Intl.Segmenter(this.intlSegmenterLocales,{granularity:"word"}):this._segmenter=null;for(let i=0,n=e.length;it)break;i=n}return i}findNextIntlWordAtOrAfterOffset(e,t){for(const i of this._getIntlSegmenterWordsOnLine(e))if(!(i.index=0;let t=null;try{t=uF(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:e,global:!0,unicode:!0})}catch{return null}if(!t)return null;let i=!this.isRegex&&!e;return i&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(i=this.matchCase),new TU(t,this.wordSeparators?cg(this.wordSeparators,[]):null,i?this.searchString:null)}}function PU(o){if(!o||o.length===0)return!1;for(let e=0,t=o.length;e=t)break;const n=o.charCodeAt(e);if(n===110||n===114||n===87)return!0}}return!1}function bd(o,e,t){if(!t)return new Qp(o,null);const i=[];for(let n=0,s=e.length;n>0);t[s]>=e?n=s-1:t[s+1]>=e?(i=s,n=s):i=s+1}return i+1}}class Eb{static findMatches(e,t,i,n,s){const r=t.parseSearchRequest();return r?r.regex.multiline?this._doFindMatchesMultiline(e,i,new ef(r.wordSeparators,r.regex),n,s):this._doFindMatchesLineByLine(e,i,r,n,s):[]}static _getMultilineMatchRange(e,t,i,n,s,r){let a,l=0;n?(l=n.findLineFeedCountBeforeOffset(s),a=t+s+l):a=t+s;let c;if(n){const f=n.findLineFeedCountBeforeOffset(s+r.length)-l;c=a+r.length+f}else c=a+r.length;const d=e.getPositionAt(a),h=e.getPositionAt(c);return new I(d.lineNumber,d.column,h.lineNumber,h.column)}static _doFindMatchesMultiline(e,t,i,n,s){const r=e.getOffsetAt(t.getStartPosition()),a=e.getValueInRange(t,1),l=e.getEOL()===`\r -`?new VR(a):null,c=[];let d=0,h;for(i.reset(0);h=i.next(a);)if(c[d++]=bd(this._getMultilineMatchRange(e,r,a,l,h.index,h[0]),h,n),d>=s)return c;return c}static _doFindMatchesLineByLine(e,t,i,n,s){const r=[];let a=0;if(t.startLineNumber===t.endLineNumber){const c=e.getLineContent(t.startLineNumber).substring(t.startColumn-1,t.endColumn-1);return a=this._findMatchesInLine(i,c,t.startLineNumber,t.startColumn-1,a,r,n,s),r}const l=e.getLineContent(t.startLineNumber).substring(t.startColumn-1);a=this._findMatchesInLine(i,l,t.startLineNumber,t.startColumn-1,a,r,n,s);for(let c=t.startLineNumber+1;c=l))return s;return s}const d=new ef(e.wordSeparators,e.regex);let h;d.reset(0);do if(h=d.next(t),h&&(r[s++]=bd(new I(i,h.index+1+n,i,h.index+1+h[0].length+n),h,a),s>=l))return s;while(h);return s}static findNextMatch(e,t,i,n){const s=t.parseSearchRequest();if(!s)return null;const r=new ef(s.wordSeparators,s.regex);return s.regex.multiline?this._doFindNextMatchMultiline(e,i,r,n):this._doFindNextMatchLineByLine(e,i,r,n)}static _doFindNextMatchMultiline(e,t,i,n){const s=new P(t.lineNumber,1),r=e.getOffsetAt(s),a=e.getLineCount(),l=e.getValueInRange(new I(s.lineNumber,s.column,a,e.getLineMaxColumn(a)),1),c=e.getEOL()===`\r -`?new VR(l):null;i.reset(t.column-1);const d=i.next(l);return d?bd(this._getMultilineMatchRange(e,r,l,c,d.index,d[0]),d,n):t.lineNumber!==1||t.column!==1?this._doFindNextMatchMultiline(e,new P(1,1),i,n):null}static _doFindNextMatchLineByLine(e,t,i,n){const s=e.getLineCount(),r=t.lineNumber,a=e.getLineContent(r),l=this._findFirstMatchInLine(i,a,r,t.column,n);if(l)return l;for(let c=1;c<=s;c++){const d=(r+c-1)%s,h=e.getLineContent(d+1),u=this._findFirstMatchInLine(i,h,d+1,1,n);if(u)return u}return null}static _findFirstMatchInLine(e,t,i,n,s){e.reset(n-1);const r=e.next(t);return r?bd(new I(i,r.index+1,i,r.index+1+r[0].length),r,s):null}static findPreviousMatch(e,t,i,n){const s=t.parseSearchRequest();if(!s)return null;const r=new ef(s.wordSeparators,s.regex);return s.regex.multiline?this._doFindPreviousMatchMultiline(e,i,r,n):this._doFindPreviousMatchLineByLine(e,i,r,n)}static _doFindPreviousMatchMultiline(e,t,i,n){const s=this._doFindMatchesMultiline(e,new I(1,1,t.lineNumber,t.column),i,n,10*AU);if(s.length>0)return s[s.length-1];const r=e.getLineCount();return t.lineNumber!==r||t.column!==e.getLineMaxColumn(r)?this._doFindPreviousMatchMultiline(e,new P(r,e.getLineMaxColumn(r)),i,n):null}static _doFindPreviousMatchLineByLine(e,t,i,n){const s=e.getLineCount(),r=t.lineNumber,a=e.getLineContent(r).substring(0,t.column-1),l=this._findLastMatchInLine(i,a,r,n);if(l)return l;for(let c=1;c<=s;c++){const d=(s+r-c-1)%s,h=e.getLineContent(d+1),u=this._findLastMatchInLine(i,h,d+1,n);if(u)return u}return null}static _findLastMatchInLine(e,t,i,n){let s=null,r;for(e.reset(0);r=e.next(t);)s=bd(new I(i,r.index+1,i,r.index+1+r[0].length),r,n);return s}}function OU(o,e,t,i,n){if(i===0)return!0;const s=e.charCodeAt(i-1);if(o.get(s)!==0||s===13||s===10)return!0;if(n>0){const r=e.charCodeAt(i);if(o.get(r)!==0)return!0}return!1}function FU(o,e,t,i,n){if(i+n===t)return!0;const s=e.charCodeAt(i+n);if(o.get(s)!==0||s===13||s===10)return!0;if(n>0){const r=e.charCodeAt(i+n-1);if(o.get(r)!==0)return!0}return!1}function hT(o,e,t,i,n){return OU(o,e,t,i,n)&&FU(o,e,t,i,n)}class ef{constructor(e,t){this._wordSeparators=e,this._searchRegex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(e){this._searchRegex.lastIndex=e,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(e){const t=e.length;let i;do{if(this._prevMatchStartIndex+this._prevMatchLength===t||(i=this._searchRegex.exec(e),!i))return null;const n=i.index,s=i[0].length;if(n===this._prevMatchStartIndex&&s===this._prevMatchLength){if(s===0){uC(e,t,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=n,this._prevMatchLength=s,!this._wordSeparators||hT(this._wordSeparators,e,t,n,s))return i}while(i);return null}}class BU{static computeUnicodeHighlights(e,t,i){const n=i?i.startLineNumber:1,s=i?i.endLineNumber:e.getLineCount(),r=new zR(t),a=r.getCandidateCodePoints();let l;a==="allNonBasicAscii"?l=new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):l=new RegExp(`${WU(Array.from(a))}`,"g");const c=new ef(null,l),d=[];let h=!1,u,f=0,g=0,p=0;e:for(let _=n,b=s;_<=b;_++){const C=e.getLineContent(_),w=C.length;c.reset(0);do if(u=c.next(C),u){let v=u.index,y=u.index+u[0].length;if(v>0){const N=C.charCodeAt(v-1);wi(N)&&v--}if(y+1=1e3){h=!0;break e}d.push(new I(_,v+1,_,y+1))}}while(u)}return{ranges:d,hasMore:h,ambiguousCharacterCount:f,invisibleCharacterCount:g,nonBasicAsciiCharacterCount:p}}static computeUnicodeHighlightReason(e,t){const i=new zR(t);switch(i.shouldHighlightNonBasicASCII(e,null)){case 0:return null;case 2:return{kind:1};case 3:{const s=e.codePointAt(0),r=i.ambiguousCharacters.getPrimaryConfusable(s),a=jp.getLocales().filter(l=>!jp.getInstance(new Set([...t.allowedLocales,l])).isAmbiguous(s));return{kind:0,confusableWith:String.fromCodePoint(r),notAmbiguousInLocales:a}}case 1:return{kind:2}}}}function WU(o,e){return`[${xl(o.map(i=>String.fromCodePoint(i)).join(""))}]`}class zR{constructor(e){this.options=e,this.allowedCodePoints=new Set(e.allowedCodePoints),this.ambiguousCharacters=jp.getInstance(new Set(e.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";const e=new Set;if(this.options.invisibleCharacters)for(const t of jm.codePoints)UR(String.fromCodePoint(t))||e.add(t);if(this.options.ambiguousCharacters)for(const t of this.ambiguousCharacters.getConfusableCodePoints())e.add(t);for(const t of this.allowedCodePoints)e.delete(t);return e}shouldHighlightNonBasicASCII(e,t){const i=e.codePointAt(0);if(this.allowedCodePoints.has(i))return 0;if(this.options.nonBasicASCII)return 1;let n=!1,s=!1;if(t)for(const r of t){const a=r.codePointAt(0),l=D0(r);n=n||l,!l&&!this.ambiguousCharacters.isAmbiguous(a)&&!jm.isInvisibleCharacter(a)&&(s=!0)}return!n&&s?0:this.options.invisibleCharacters&&!UR(e)&&jm.isInvisibleCharacter(i)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(i)?3:0}}function UR(o){return o===" "||o===` -`||o===" "}class D1{constructor(e,t,i){this.changes=e,this.moves=t,this.hitTimeout=i}}class l3{constructor(e,t){this.lineRangeMapping=e,this.changes=t}}class Re{static addRange(e,t){let i=0;for(;it))return new Re(e,t)}static ofLength(e){return new Re(0,e)}static ofStartAndLength(e,t){return new Re(e,e+t)}constructor(e,t){if(this.start=e,this.endExclusive=t,e>t)throw new nt(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(e){return new Re(this.start+e,this.endExclusive+e)}deltaStart(e){return new Re(this.start+e,this.endExclusive)}deltaEnd(e){return new Re(this.start,this.endExclusive+e)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}contains(e){return this.start<=e&&e=e.endExclusive}slice(e){return e.slice(this.start,this.endExclusive)}substring(e){return e.substring(this.start,this.endExclusive)}clip(e){if(this.isEmpty)throw new nt(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,e))}clipCyclic(e){if(this.isEmpty)throw new nt(`Invalid clipping range: ${this.toString()}`);return e=this.endExclusive?this.start+(e-this.start)%this.length:e}forEach(e){for(let t=this.start;te.toString()).join(", ")}intersectsStrict(e){let t=0;for(;te+t.length,0)}}function xC(o,e){const t=HU(o,e);if(t!==-1)return o[t]}function HU(o,e,t=o.length-1){for(let i=t;i>=0;i--){const n=o[i];if(e(n))return i}return-1}function dg(o,e){const t=Xp(o,e);return t===-1?void 0:o[t]}function Xp(o,e,t=0,i=o.length){let n=t,s=i;for(;n0&&(t=n)}return t}function zU(o,e){if(o.length===0)return;let t=o[0];for(let i=1;i=0&&(t=n)}return t}function UU(o,e){return fT(o,(t,i)=>-e(t,i))}function $U(o,e){if(o.length===0)return-1;let t=0;for(let i=1;i0&&(t=i)}return t}function KU(o,e){for(const t of o){const i=e(t);if(i!==void 0)return i}}let xe=class Wa{static fromRangeInclusive(e){return new Wa(e.startLineNumber,e.endLineNumber+1)}static joinMany(e){if(e.length===0)return[];let t=new to(e[0].slice());for(let i=1;it)throw new nt(`startLineNumber ${e} cannot be after endLineNumberExclusive ${t}`);this.startLineNumber=e,this.endLineNumberExclusive=t}contains(e){return this.startLineNumber<=e&&en.endLineNumberExclusive>=e.startLineNumber),i=Xp(this._normalizedRanges,n=>n.startLineNumber<=e.endLineNumberExclusive)+1;if(t===i)this._normalizedRanges.splice(t,0,e);else if(t===i-1){const n=this._normalizedRanges[t];this._normalizedRanges[t]=n.join(e)}else{const n=this._normalizedRanges[t].join(this._normalizedRanges[i-1]).join(e);this._normalizedRanges.splice(t,i-t,n)}}contains(e){const t=dg(this._normalizedRanges,i=>i.startLineNumber<=e);return!!t&&t.endLineNumberExclusive>e}intersects(e){const t=dg(this._normalizedRanges,i=>i.startLineNumbere.startLineNumber}getUnion(e){if(this._normalizedRanges.length===0)return e;if(e._normalizedRanges.length===0)return this;const t=[];let i=0,n=0,s=null;for(;i=r.startLineNumber?s=new xe(s.startLineNumber,Math.max(s.endLineNumberExclusive,r.endLineNumberExclusive)):(t.push(s),s=r)}return s!==null&&t.push(s),new to(t)}subtractFrom(e){const t=rk(this._normalizedRanges,r=>r.endLineNumberExclusive>=e.startLineNumber),i=Xp(this._normalizedRanges,r=>r.startLineNumber<=e.endLineNumberExclusive)+1;if(t===i)return new to([e]);const n=[];let s=e.startLineNumber;for(let r=t;rs&&n.push(new xe(s,a.startLineNumber)),s=a.endLineNumberExclusive}return se.toString()).join(", ")}getIntersection(e){const t=[];let i=0,n=0;for(;it.delta(e)))}}const Zl=class Zl{static betweenPositions(e,t){return e.lineNumber===t.lineNumber?new Zl(0,t.column-e.column):new Zl(t.lineNumber-e.lineNumber,t.column-1)}static ofRange(e){return Zl.betweenPositions(e.getStartPosition(),e.getEndPosition())}static ofText(e){let t=0,i=0;for(const n of e)n===` -`?(t++,i=0):i++;return new Zl(t,i)}constructor(e,t){this.lineCount=e,this.columnCount=t}isGreaterThanOrEqualTo(e){return this.lineCount!==e.lineCount?this.lineCount>e.lineCount:this.columnCount>=e.columnCount}createRange(e){return this.lineCount===0?new I(e.lineNumber,e.column,e.lineNumber,e.column+this.columnCount):new I(e.lineNumber,e.column,e.lineNumber+this.lineCount,this.columnCount+1)}addToPosition(e){return this.lineCount===0?new P(e.lineNumber,e.column+this.columnCount):new P(e.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}};Zl.zero=new Zl(0,0);let Po=Zl;class jU{constructor(e){this.text=e,this.lineStartOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let t=0;toT(e,(t,i)=>t.range.getEndPosition().isBeforeOrEqual(i.range.getStartPosition())))}apply(e){let t="",i=new P(1,1);for(const s of this.edits){const r=s.range,a=r.getStartPosition(),l=r.getEndPosition(),c=$R(i,a);c.isEmpty()||(t+=e.getValueOfRange(c)),t+=s.text,i=l}const n=$R(i,e.endPositionExclusive);return n.isEmpty()||(t+=e.getValueOfRange(n)),t}applyToString(e){const t=new qU(e);return this.apply(t)}getNewRanges(){const e=[];let t=0,i=0,n=0;for(const s of this.edits){const r=Po.ofText(s.text),a=P.lift({lineNumber:s.range.startLineNumber+i,column:s.range.startColumn+(s.range.startLineNumber===t?n:0)}),l=r.createRange(a);e.push(l),i=l.endLineNumber-s.range.endLineNumber,n=l.endColumn-s.range.endColumn,t=s.range.endLineNumber}return e}}class fa{constructor(e,t){this.range=e,this.text=t}toSingleEditOperation(){return{range:this.range,text:this.text}}}function $R(o,e){if(o.lineNumber===e.lineNumber&&o.column===Number.MAX_SAFE_INTEGER)return I.fromPositions(e,e);if(!o.isBeforeOrEqual(e))throw new nt("start must be before end");return new I(o.lineNumber,o.column,e.lineNumber,e.column)}class c3{get endPositionExclusive(){return this.length.addToPosition(new P(1,1))}}class qU extends c3{constructor(e){super(),this.value=e,this._t=new jU(this.value)}getValueOfRange(e){return this._t.getOffsetRange(e).substring(this.value)}get length(){return this._t.textLength}}class hn{static inverse(e,t,i){const n=[];let s=1,r=1;for(const l of e){const c=new hn(new xe(s,l.original.startLineNumber),new xe(r,l.modified.startLineNumber));c.modified.isEmpty||n.push(c),s=l.original.endLineNumberExclusive,r=l.modified.endLineNumberExclusive}const a=new hn(new xe(s,t+1),new xe(r,i+1));return a.modified.isEmpty||n.push(a),n}static clip(e,t,i){const n=[];for(const s of e){const r=s.original.intersect(t),a=s.modified.intersect(i);r&&!r.isEmpty&&a&&!a.isEmpty&&n.push(new hn(r,a))}return n}constructor(e,t){this.original=e,this.modified=t}toString(){return`{${this.original.toString()}->${this.modified.toString()}}`}flip(){return new hn(this.modified,this.original)}join(e){return new hn(this.original.join(e.original),this.modified.join(e.modified))}toRangeMapping(){const e=this.original.toInclusiveRange(),t=this.modified.toInclusiveRange();if(e&&t)return new Ls(e,t);if(this.original.startLineNumber===1||this.modified.startLineNumber===1){if(!(this.modified.startLineNumber===1&&this.original.startLineNumber===1))throw new nt("not a valid diff");return new Ls(new I(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new I(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1))}else return new Ls(new I(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),new I(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER))}toRangeMapping2(e,t){if(KR(this.original.endLineNumberExclusive,e)&&KR(this.modified.endLineNumberExclusive,t))return new Ls(new I(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new I(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1));if(!this.original.isEmpty&&!this.modified.isEmpty)return new Ls(I.fromPositions(new P(this.original.startLineNumber,1),Nu(new P(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),e)),I.fromPositions(new P(this.modified.startLineNumber,1),Nu(new P(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)));if(this.original.startLineNumber>1&&this.modified.startLineNumber>1)return new Ls(I.fromPositions(Nu(new P(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER),e),Nu(new P(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),e)),I.fromPositions(Nu(new P(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER),t),Nu(new P(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)));throw new nt}}function Nu(o,e){if(o.lineNumber<1)return new P(1,1);if(o.lineNumber>e.length)return new P(e.length,e[e.length-1].length+1);const t=e[o.lineNumber-1];return o.column>t.length+1?new P(o.lineNumber,t.length+1):o}function KR(o,e){return o>=1&&o<=e.length}class Ws extends hn{static fromRangeMappings(e){const t=xe.join(e.map(n=>xe.fromRangeInclusive(n.originalRange))),i=xe.join(e.map(n=>xe.fromRangeInclusive(n.modifiedRange)));return new Ws(t,i,e)}constructor(e,t,i){super(e,t),this.innerChanges=i}flip(){return new Ws(this.modified,this.original,this.innerChanges?.map(e=>e.flip()))}withInnerChangesFromLineRanges(){return new Ws(this.original,this.modified,[this.toRangeMapping()])}}class Ls{static assertSorted(e){for(let t=1;t${this.modifiedRange.toString()}}`}flip(){return new Ls(this.modifiedRange,this.originalRange)}toTextEdit(e){const t=e.getValueOfRange(this.modifiedRange);return new fa(this.originalRange,t)}}const GU=3;class ZU{computeDiff(e,t,i){const s=new XU(e,t,{maxComputationTime:i.maxComputationTimeMs,shouldIgnoreTrimWhitespace:i.ignoreTrimWhitespace,shouldComputeCharChanges:!0,shouldMakePrettyDiff:!0,shouldPostProcessCharChanges:!0}).computeDiff(),r=[];let a=null;for(const l of s.changes){let c;l.originalEndLineNumber===0?c=new xe(l.originalStartLineNumber+1,l.originalStartLineNumber+1):c=new xe(l.originalStartLineNumber,l.originalEndLineNumber+1);let d;l.modifiedEndLineNumber===0?d=new xe(l.modifiedStartLineNumber+1,l.modifiedStartLineNumber+1):d=new xe(l.modifiedStartLineNumber,l.modifiedEndLineNumber+1);let h=new Ws(c,d,l.charChanges?.map(u=>new Ls(new I(u.originalStartLineNumber,u.originalStartColumn,u.originalEndLineNumber,u.originalEndColumn),new I(u.modifiedStartLineNumber,u.modifiedStartColumn,u.modifiedEndLineNumber,u.modifiedEndColumn))));a&&(a.modified.endLineNumberExclusive===h.modified.startLineNumber||a.original.endLineNumberExclusive===h.original.startLineNumber)&&(h=new Ws(a.original.join(h.original),a.modified.join(h.modified),a.innerChanges&&h.innerChanges?a.innerChanges.concat(h.innerChanges):void 0),r.pop()),r.push(h),a=h}return Fh(()=>oT(r,(l,c)=>c.original.startLineNumber-l.original.endLineNumberExclusive===c.modified.startLineNumber-l.modified.endLineNumberExclusive&&l.original.endLineNumberExclusive(e===10?"\\n":String.fromCharCode(e))+`-(${this._lineNumbers[t]},${this._columns[t]})`).join(", ")+"]"}_assertIndex(e,t){if(e<0||e>=t.length)throw new Error("Illegal index")}getElements(){return this._charCodes}getStartLineNumber(e){return e>0&&e===this._lineNumbers.length?this.getEndLineNumber(e-1):(this._assertIndex(e,this._lineNumbers),this._lineNumbers[e])}getEndLineNumber(e){return e===-1?this.getStartLineNumber(e+1):(this._assertIndex(e,this._lineNumbers),this._charCodes[e]===10?this._lineNumbers[e]+1:this._lineNumbers[e])}getStartColumn(e){return e>0&&e===this._columns.length?this.getEndColumn(e-1):(this._assertIndex(e,this._columns),this._columns[e])}getEndColumn(e){return e===-1?this.getStartColumn(e+1):(this._assertIndex(e,this._columns),this._charCodes[e]===10?1:this._columns[e]+1)}}class Of{constructor(e,t,i,n,s,r,a,l){this.originalStartLineNumber=e,this.originalStartColumn=t,this.originalEndLineNumber=i,this.originalEndColumn=n,this.modifiedStartLineNumber=s,this.modifiedStartColumn=r,this.modifiedEndLineNumber=a,this.modifiedEndColumn=l}static createFromDiffChange(e,t,i){const n=t.getStartLineNumber(e.originalStart),s=t.getStartColumn(e.originalStart),r=t.getEndLineNumber(e.originalStart+e.originalLength-1),a=t.getEndColumn(e.originalStart+e.originalLength-1),l=i.getStartLineNumber(e.modifiedStart),c=i.getStartColumn(e.modifiedStart),d=i.getEndLineNumber(e.modifiedStart+e.modifiedLength-1),h=i.getEndColumn(e.modifiedStart+e.modifiedLength-1);return new Of(n,s,r,a,l,c,d,h)}}function QU(o){if(o.length<=1)return o;const e=[o[0]];let t=e[0];for(let i=1,n=o.length;i0&&t.originalLength<20&&t.modifiedLength>0&&t.modifiedLength<20&&s()){const f=i.createCharSequence(e,t.originalStart,t.originalStart+t.originalLength-1),g=n.createCharSequence(e,t.modifiedStart,t.modifiedStart+t.modifiedLength-1);if(f.getElements().length>0&&g.getElements().length>0){let p=d3(f,g,s,!0).changes;a&&(p=QU(p)),u=[];for(let _=0,b=p.length;_1&&p>1;){const _=u.charCodeAt(g-2),b=f.charCodeAt(p-2);if(_!==b)break;g--,p--}(g>1||p>1)&&this._pushTrimWhitespaceCharChange(n,s+1,1,g,r+1,1,p)}{let g=lk(u,1),p=lk(f,1);const _=u.length+1,b=f.length+1;for(;g<_&&p!0;const e=Date.now();return()=>Date.now()-e{i.push(vi.fromOffsetPairs(n?n.getEndExclusives():al.zero,s?s.getStarts():new al(t,(n?n.seq2Range.endExclusive-n.seq1Range.endExclusive:0)+t)))}),i}static fromOffsetPairs(e,t){return new vi(new Re(e.offset1,t.offset1),new Re(e.offset2,t.offset2))}static assertSorted(e){let t;for(const i of e){if(t&&!(t.seq1Range.endExclusive<=i.seq1Range.start&&t.seq2Range.endExclusive<=i.seq2Range.start))throw new nt("Sequence diffs must be sorted");t=i}}constructor(e,t){this.seq1Range=e,this.seq2Range=t}swap(){return new vi(this.seq2Range,this.seq1Range)}toString(){return`${this.seq1Range} <-> ${this.seq2Range}`}join(e){return new vi(this.seq1Range.join(e.seq1Range),this.seq2Range.join(e.seq2Range))}delta(e){return e===0?this:new vi(this.seq1Range.delta(e),this.seq2Range.delta(e))}deltaStart(e){return e===0?this:new vi(this.seq1Range.deltaStart(e),this.seq2Range.deltaStart(e))}deltaEnd(e){return e===0?this:new vi(this.seq1Range.deltaEnd(e),this.seq2Range.deltaEnd(e))}intersect(e){const t=this.seq1Range.intersect(e.seq1Range),i=this.seq2Range.intersect(e.seq2Range);if(!(!t||!i))return new vi(t,i)}getStarts(){return new al(this.seq1Range.start,this.seq2Range.start)}getEndExclusives(){return new al(this.seq1Range.endExclusive,this.seq2Range.endExclusive)}}const Od=class Od{constructor(e,t){this.offset1=e,this.offset2=t}toString(){return`${this.offset1} <-> ${this.offset2}`}delta(e){return e===0?this:new Od(this.offset1+e,this.offset2+e)}equals(e){return this.offset1===e.offset1&&this.offset2===e.offset2}};Od.zero=new Od(0,0),Od.max=new Od(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER);let al=Od;const Ew=class Ew{isValid(){return!0}};Ew.instance=new Ew;let Jp=Ew;class JU{constructor(e){if(this.timeout=e,this.startTime=Date.now(),this.valid=!0,e<=0)throw new nt("timeout must be positive")}isValid(){if(!(Date.now()-this.startTime0&&p>0&&r.get(g-1,p-1)===3&&(C+=a.get(g-1,p-1)),C+=n?n(g,p):1):C=-1;const w=Math.max(_,b,C);if(w===C){const v=g>0&&p>0?a.get(g-1,p-1):0;a.set(g,p,v+1),r.set(g,p,3)}else w===_?(a.set(g,p,0),r.set(g,p,1)):w===b&&(a.set(g,p,0),r.set(g,p,2));s.set(g,p,w)}const l=[];let c=e.length,d=t.length;function h(g,p){(g+1!==c||p+1!==d)&&l.push(new vi(new Re(g+1,c),new Re(p+1,d))),c=g,d=p}let u=e.length-1,f=t.length-1;for(;u>=0&&f>=0;)r.get(u,f)===3?(h(u,f),u--,f--):r.get(u,f)===1?u--:f--;return h(-1,-1),l.reverse(),new wl(l,!1)}}class h3{compute(e,t,i=Jp.instance){if(e.length===0||t.length===0)return wl.trivial(e,t);const n=e,s=t;function r(p,_){for(;pn.length||v>s.length)continue;const y=r(w,v);l.set(d,y);const x=w===b?c.get(d+1):c.get(d-1);if(c.set(d,y!==w?new GR(x,w,v,y-w):x),l.get(d)===n.length&&l.get(d)-d===s.length)break e}}let h=c.get(d);const u=[];let f=n.length,g=s.length;for(;;){const p=h?h.x+h.length:0,_=h?h.y+h.length:0;if((p!==f||_!==g)&&u.push(new vi(new Re(p,f),new Re(_,g))),!h)break;f=h.x,g=h.y,h=h.prev}return u.reverse(),new wl(u,!1)}}class GR{constructor(e,t,i,n){this.prev=e,this.x=t,this.y=i,this.length=n}}class t${constructor(){this.positiveArr=new Int32Array(10),this.negativeArr=new Int32Array(10)}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){if(e<0){if(e=-e-1,e>=this.negativeArr.length){const i=this.negativeArr;this.negativeArr=new Int32Array(i.length*2),this.negativeArr.set(i)}this.negativeArr[e]=t}else{if(e>=this.positiveArr.length){const i=this.positiveArr;this.positiveArr=new Int32Array(i.length*2),this.positiveArr.set(i)}this.positiveArr[e]=t}}}class i${constructor(){this.positiveArr=[],this.negativeArr=[]}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){e<0?(e=-e-1,this.negativeArr[e]=t):this.positiveArr[e]=t}}class IC{constructor(e,t,i){this.lines=e,this.range=t,this.considerWhitespaceChanges=i,this.elements=[],this.firstElementOffsetByLineIdx=[],this.lineStartOffsets=[],this.trimmedWsLengthsByLineIdx=[],this.firstElementOffsetByLineIdx.push(0);for(let n=this.range.startLineNumber;n<=this.range.endLineNumber;n++){let s=e[n-1],r=0;n===this.range.startLineNumber&&this.range.startColumn>1&&(r=this.range.startColumn-1,s=s.substring(r)),this.lineStartOffsets.push(r);let a=0;if(!i){const c=s.trimStart();a=s.length-c.length,s=c.trimEnd()}this.trimmedWsLengthsByLineIdx.push(a);const l=n===this.range.endLineNumber?Math.min(this.range.endColumn-1-r-a,s.length):s.length;for(let c=0;cString.fromCharCode(t)).join("")}getElement(e){return this.elements[e]}get length(){return this.elements.length}getBoundaryScore(e){const t=YR(e>0?this.elements[e-1]:-1),i=YR(es<=e),n=e-this.firstElementOffsetByLineIdx[i];return new P(this.range.startLineNumber+i,1+this.lineStartOffsets[i]+n+(n===0&&t==="left"?0:this.trimmedWsLengthsByLineIdx[i]))}translateRange(e){const t=this.translateOffset(e.start,"right"),i=this.translateOffset(e.endExclusive,"left");return i.isBefore(t)?I.fromPositions(i,i):I.fromPositions(t,i)}findWordContaining(e){if(e<0||e>=this.elements.length||!wS(this.elements[e]))return;let t=e;for(;t>0&&wS(this.elements[t-1]);)t--;let i=e;for(;in<=e.start)??0,i=VU(this.firstElementOffsetByLineIdx,n=>e.endExclusive<=n)??this.elements.length;return new Re(t,i)}}function wS(o){return o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57}const n$={0:0,1:0,2:0,3:10,4:2,5:30,6:3,7:10,8:10};function ZR(o){return n$[o]}function YR(o){return o===10?8:o===13?7:ck(o)?6:o>=97&&o<=122?0:o>=65&&o<=90?1:o>=48&&o<=57?2:o===-1?3:o===44||o===59?5:4}function s$(o,e,t,i,n,s){let{moves:r,excludedChanges:a}=r$(o,e,t,s);if(!s.isValid())return[];const l=o.filter(d=>!a.has(d)),c=a$(l,i,n,e,t,s);return xL(r,c),r=l$(r),r=r.filter(d=>{const h=d.original.toOffsetRange().slice(e).map(f=>f.trim());return h.join(` -`).length>=15&&o$(h,f=>f.length>=2)>=2}),r=c$(o,r),r}function o$(o,e){let t=0;for(const i of o)e(i)&&t++;return t}function r$(o,e,t,i){const n=[],s=o.filter(l=>l.modified.isEmpty&&l.original.length>=3).map(l=>new DC(l.original,e,l)),r=new Set(o.filter(l=>l.original.isEmpty&&l.modified.length>=3).map(l=>new DC(l.modified,t,l))),a=new Set;for(const l of s){let c=-1,d;for(const h of r){const u=l.computeSimilarity(h);u>c&&(c=u,d=h)}if(c>.9&&d&&(r.delete(d),n.push(new hn(l.range,d.range)),a.add(l.source),a.add(d.source)),!i.isValid())return{moves:n,excludedChanges:a}}return{moves:n,excludedChanges:a}}function a$(o,e,t,i,n,s){const r=[],a=new dT;for(const u of o)for(let f=u.original.startLineNumber;fu.modified.startLineNumber,ia));for(const u of o){let f=[];for(let g=u.modified.startLineNumber;g{for(const v of f)if(v.originalLineRange.endLineNumberExclusive+1===C.endLineNumberExclusive&&v.modifiedLineRange.endLineNumberExclusive+1===_.endLineNumberExclusive){v.originalLineRange=new xe(v.originalLineRange.startLineNumber,C.endLineNumberExclusive),v.modifiedLineRange=new xe(v.modifiedLineRange.startLineNumber,_.endLineNumberExclusive),b.push(v);return}const w={modifiedLineRange:_,originalLineRange:C};l.push(w),b.push(w)}),f=b}if(!s.isValid())return[]}l.sort(o6(rs(u=>u.modifiedLineRange.length,ia)));const c=new to,d=new to;for(const u of l){const f=u.modifiedLineRange.startLineNumber-u.originalLineRange.startLineNumber,g=c.subtractFrom(u.modifiedLineRange),p=d.subtractFrom(u.originalLineRange).getWithDelta(f),_=g.getIntersection(p);for(const b of _.ranges){if(b.length<3)continue;const C=b,w=b.delta(-f);r.push(new hn(w,C)),c.addRange(C),d.addRange(w)}}r.sort(rs(u=>u.original.startLineNumber,ia));const h=new kC(o);for(let u=0;ux.original.startLineNumber<=f.original.startLineNumber),p=dg(o,x=>x.modified.startLineNumber<=f.modified.startLineNumber),_=Math.max(f.original.startLineNumber-g.original.startLineNumber,f.modified.startLineNumber-p.modified.startLineNumber),b=h.findLastMonotonous(x=>x.original.startLineNumberx.modified.startLineNumberi.length||L>n.length||c.contains(L)||d.contains(x)||!QR(i[x-1],n[L-1],s))break}v>0&&(d.addRange(new xe(f.original.startLineNumber-v,f.original.startLineNumber)),c.addRange(new xe(f.modified.startLineNumber-v,f.modified.startLineNumber)));let y;for(y=0;yi.length||L>n.length||c.contains(L)||d.contains(x)||!QR(i[x-1],n[L-1],s))break}y>0&&(d.addRange(new xe(f.original.endLineNumberExclusive,f.original.endLineNumberExclusive+y)),c.addRange(new xe(f.modified.endLineNumberExclusive,f.modified.endLineNumberExclusive+y))),(v>0||y>0)&&(r[u]=new hn(new xe(f.original.startLineNumber-v,f.original.endLineNumberExclusive+y),new xe(f.modified.startLineNumber-v,f.modified.endLineNumberExclusive+y)))}return r}function QR(o,e,t){if(o.trim()===e.trim())return!0;if(o.length>300&&e.length>300)return!1;const n=new h3().compute(new IC([o],new I(1,1,1,o.length),!1),new IC([e],new I(1,1,1,e.length),!1),t);let s=0;const r=vi.invert(n.diffs,o.length);for(const d of r)d.seq1Range.forEach(h=>{ck(o.charCodeAt(h))||s++});function a(d){let h=0;for(let u=0;ue.length?o:e);return s/l>.6&&l>10}function l$(o){if(o.length===0)return o;o.sort(rs(t=>t.original.startLineNumber,ia));const e=[o[0]];for(let t=1;t=0&&r>=0&&s+r<=2){e[e.length-1]=i.join(n);continue}e.push(n)}return e}function c$(o,e){const t=new kC(o);return e=e.filter(i=>{const n=t.findLastMonotonous(a=>a.original.startLineNumbera.modified.startLineNumber0&&(a=a.delta(c))}n.push(a)}return i.length>0&&n.push(i[i.length-1]),n}function d$(o,e,t){if(!o.getBoundaryScore||!e.getBoundaryScore)return t;for(let i=0;i0?t[i-1]:void 0,s=t[i],r=i+1=i.start&&o.seq2Range.start-r>=n.start&&t.isStronglyEqual(o.seq2Range.start-r,o.seq2Range.endExclusive-r)&&r<100;)r++;r--;let a=0;for(;o.seq1Range.start+ac&&(c=g,l=d)}return o.delta(l)}function h$(o,e,t){const i=[];for(const n of t){const s=i[i.length-1];if(!s){i.push(n);continue}n.seq1Range.start-s.seq1Range.endExclusive<=2||n.seq2Range.start-s.seq2Range.endExclusive<=2?i[i.length-1]=new vi(s.seq1Range.join(n.seq1Range),s.seq2Range.join(n.seq2Range)):i.push(n)}return i}function u$(o,e,t){const i=vi.invert(t,o.length),n=[];let s=new al(0,0);function r(l,c){if(l.offset10;){const _=i[0];if(!(_.seq1Range.intersects(u.seq1Range)||_.seq2Range.intersects(u.seq2Range)))break;const C=o.findWordContaining(_.seq1Range.start),w=e.findWordContaining(_.seq2Range.start),v=new vi(C,w),y=v.intersect(_);if(g+=y.seq1Range.length,p+=y.seq2Range.length,u=u.join(v),u.seq1Range.endExclusive>=_.seq1Range.endExclusive)i.shift();else break}g+p<(u.seq1Range.length+u.seq2Range.length)*2/3&&n.push(u),s=u.getEndExclusives()}for(;i.length>0;){const l=i.shift();l.seq1Range.isEmpty||(r(l.getStarts(),l),r(l.getEndExclusives().delta(-1),l))}return f$(t,n)}function f$(o,e){const t=[];for(;o.length>0||e.length>0;){const i=o[0],n=e[0];let s;i&&(!n||i.seq1Range.start0&&t[t.length-1].seq1Range.endExclusive>=s.seq1Range.start?t[t.length-1]=t[t.length-1].join(s):t.push(s)}return t}function g$(o,e,t){let i=t;if(i.length===0)return i;let n=0,s;do{s=!1;const r=[i[0]];for(let a=1;a5||f.seq1Range.length+f.seq2Range.length>5)};const l=i[a],c=r[r.length-1];d(c,l)?(s=!0,r[r.length-1]=r[r.length-1].join(l)):r.push(l)}i=r}while(n++<10&&s);return i}function m$(o,e,t){let i=t;if(i.length===0)return i;let n=0,s;do{s=!1;const a=[i[0]];for(let l=1;l5||p.length>500)return!1;const b=o.getText(p).trim();if(b.length>20||b.split(/\r\n|\r|\n/).length>1)return!1;const C=o.countLinesIn(f.seq1Range),w=f.seq1Range.length,v=e.countLinesIn(f.seq2Range),y=f.seq2Range.length,x=o.countLinesIn(g.seq1Range),L=g.seq1Range.length,E=e.countLinesIn(g.seq2Range),N=g.seq2Range.length,H=130;function F(W){return Math.min(W,H)}return Math.pow(Math.pow(F(C*40+w),1.5)+Math.pow(F(v*40+y),1.5),1.5)+Math.pow(Math.pow(F(x*40+L),1.5)+Math.pow(F(E*40+N),1.5),1.5)>(H**1.5)**1.5*1.3};const c=i[l],d=a[a.length-1];h(d,c)?(s=!0,a[a.length-1]=a[a.length-1].join(c)):a.push(c)}i=a}while(n++<10&&s);const r=[];return t6(i,(a,l,c)=>{let d=l;function h(b){return b.length>0&&b.trim().length<=3&&l.seq1Range.length+l.seq2Range.length>100}const u=o.extendToFullLines(l.seq1Range),f=o.getText(new Re(u.start,l.seq1Range.start));h(f)&&(d=d.deltaStart(-f.length));const g=o.getText(new Re(l.seq1Range.endExclusive,u.endExclusive));h(g)&&(d=d.deltaEnd(g.length));const p=vi.fromOffsetPairs(a?a.getEndExclusives():al.zero,c?c.getStarts():al.max),_=d.intersect(p);r.length>0&&_.getStarts().equals(r[r.length-1].getEndExclusives())?r[r.length-1]=r[r.length-1].join(_):r.push(_)}),r}class eA{constructor(e,t){this.trimmedHash=e,this.lines=t}getElement(e){return this.trimmedHash[e]}get length(){return this.trimmedHash.length}getBoundaryScore(e){const t=e===0?0:tA(this.lines[e-1]),i=e===this.lines.length?0:tA(this.lines[e]);return 1e3-(t+i)}getText(e){return this.lines.slice(e.start,e.endExclusive).join(` -`)}isStronglyEqual(e,t){return this.lines[e]===this.lines[t]}}function tA(o){let e=0;for(;ey===x))return new D1([],[],!1);if(e.length===1&&e[0].length===0||t.length===1&&t[0].length===0)return new D1([new Ws(new xe(1,e.length+1),new xe(1,t.length+1),[new Ls(new I(1,1,e.length,e[e.length-1].length+1),new I(1,1,t.length,t[t.length-1].length+1))])],[],!1);const n=i.maxComputationTimeMs===0?Jp.instance:new JU(i.maxComputationTimeMs),s=!i.ignoreTrimWhitespace,r=new Map;function a(y){let x=r.get(y);return x===void 0&&(x=r.size,r.set(y,x)),x}const l=e.map(y=>a(y.trim())),c=t.map(y=>a(y.trim())),d=new eA(l,e),h=new eA(c,t),u=d.length+h.length<1700?this.dynamicProgrammingDiffing.compute(d,h,n,(y,x)=>e[y]===t[x]?t[x].length===0?.1:1+Math.log(1+t[x].length):.99):this.myersDiffingAlgorithm.compute(d,h,n);let f=u.diffs,g=u.hitTimeout;f=dk(d,h,f),f=g$(d,h,f);const p=[],_=y=>{if(s)for(let x=0;xy.seq1Range.start-b===y.seq2Range.start-C);const x=y.seq1Range.start-b;_(x),b=y.seq1Range.endExclusive,C=y.seq2Range.endExclusive;const L=this.refineDiff(e,t,y,n,s);L.hitTimeout&&(g=!0);for(const E of L.mappings)p.push(E)}_(e.length-b);const w=iA(p,e,t);let v=[];return i.computeMoves&&(v=this.computeMoves(w,e,t,l,c,n,s)),Fh(()=>{function y(L,E){if(L.lineNumber<1||L.lineNumber>E.length)return!1;const N=E[L.lineNumber-1];return!(L.column<1||L.column>N.length+1)}function x(L,E){return!(L.startLineNumber<1||L.startLineNumber>E.length+1||L.endLineNumberExclusive<1||L.endLineNumberExclusive>E.length+1)}for(const L of w){if(!L.innerChanges)return!1;for(const E of L.innerChanges)if(!(y(E.modifiedRange.getStartPosition(),t)&&y(E.modifiedRange.getEndPosition(),t)&&y(E.originalRange.getStartPosition(),e)&&y(E.originalRange.getEndPosition(),e)))return!1;if(!x(L.modified,t)||!x(L.original,e))return!1}return!0}),new D1(w,v,g)}computeMoves(e,t,i,n,s,r,a){return s$(e,t,i,n,s,r).map(d=>{const h=this.refineDiff(t,i,new vi(d.original.toOffsetRange(),d.modified.toOffsetRange()),r,a),u=iA(h.mappings,t,i,!0);return new l3(d,u)})}refineDiff(e,t,i,n,s){const a=_$(i).toRangeMapping2(e,t),l=new IC(e,a.originalRange,s),c=new IC(t,a.modifiedRange,s),d=l.length+c.length<500?this.dynamicProgrammingDiffing.compute(l,c,n):this.myersDiffingAlgorithm.compute(l,c,n);let h=d.diffs;return h=dk(l,c,h),h=u$(l,c,h),h=h$(l,c,h),h=m$(l,c,h),{mappings:h.map(f=>new Ls(l.translateRange(f.seq1Range),c.translateRange(f.seq2Range))),hitTimeout:d.hitTimeout}}}function iA(o,e,t,i=!1){const n=[];for(const s of LN(o.map(r=>p$(r,e,t)),(r,a)=>r.original.overlapOrTouch(a.original)||r.modified.overlapOrTouch(a.modified))){const r=s[0],a=s[s.length-1];n.push(new Ws(r.original.join(a.original),r.modified.join(a.modified),s.map(l=>l.innerChanges[0])))}return Fh(()=>!i&&n.length>0&&(n[0].modified.startLineNumber!==n[0].original.startLineNumber||t.length-n[n.length-1].modified.endLineNumberExclusive!==e.length-n[n.length-1].original.endLineNumberExclusive)?!1:oT(n,(s,r)=>r.original.startLineNumber-s.original.endLineNumberExclusive===r.modified.startLineNumber-s.modified.endLineNumberExclusive&&s.original.endLineNumberExclusive=t[o.modifiedRange.startLineNumber-1].length&&o.originalRange.startColumn-1>=e[o.originalRange.startLineNumber-1].length&&o.originalRange.startLineNumber<=o.originalRange.endLineNumber+n&&o.modifiedRange.startLineNumber<=o.modifiedRange.endLineNumber+n&&(i=1);const s=new xe(o.originalRange.startLineNumber+i,o.originalRange.endLineNumber+1+n),r=new xe(o.modifiedRange.startLineNumber+i,o.modifiedRange.endLineNumber+1+n);return new Ws(s,r,[o])}function _$(o){return new hn(new xe(o.seq1Range.start+1,o.seq1Range.endExclusive+1),new xe(o.seq2Range.start+1,o.seq2Range.endExclusive+1))}const nA={getLegacy:()=>new ZU,getDefault:()=>new u3};function gc(o,e){const t=Math.pow(10,e);return Math.round(o*t)/t}class qe{constructor(e,t,i,n=1){this._rgbaBrand=void 0,this.r=Math.min(255,Math.max(0,e))|0,this.g=Math.min(255,Math.max(0,t))|0,this.b=Math.min(255,Math.max(0,i))|0,this.a=gc(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.r===t.r&&e.g===t.g&&e.b===t.b&&e.a===t.a}}class ko{constructor(e,t,i,n){this._hslaBrand=void 0,this.h=Math.max(Math.min(360,e),0)|0,this.s=gc(Math.max(Math.min(1,t),0),3),this.l=gc(Math.max(Math.min(1,i),0),3),this.a=gc(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.l===t.l&&e.a===t.a}static fromRGBA(e){const t=e.r/255,i=e.g/255,n=e.b/255,s=e.a,r=Math.max(t,i,n),a=Math.min(t,i,n);let l=0,c=0;const d=(a+r)/2,h=r-a;if(h>0){switch(c=Math.min(d<=.5?h/(2*d):h/(2-2*d),1),r){case t:l=(i-n)/h+(i1&&(i-=1),i<1/6?e+(t-e)*6*i:i<1/2?t:i<2/3?e+(t-e)*(2/3-i)*6:e}static toRGBA(e){const t=e.h/360,{s:i,l:n,a:s}=e;let r,a,l;if(i===0)r=a=l=n;else{const c=n<.5?n*(1+i):n+i-n*i,d=2*n-c;r=ko._hue2rgb(d,c,t+1/3),a=ko._hue2rgb(d,c,t),l=ko._hue2rgb(d,c,t-1/3)}return new qe(Math.round(r*255),Math.round(a*255),Math.round(l*255),s)}}class ea{constructor(e,t,i,n){this._hsvaBrand=void 0,this.h=Math.max(Math.min(360,e),0)|0,this.s=gc(Math.max(Math.min(1,t),0),3),this.v=gc(Math.max(Math.min(1,i),0),3),this.a=gc(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.v===t.v&&e.a===t.a}static fromRGBA(e){const t=e.r/255,i=e.g/255,n=e.b/255,s=Math.max(t,i,n),r=Math.min(t,i,n),a=s-r,l=s===0?0:a/s;let c;return a===0?c=0:s===t?c=((i-n)/a%6+6)%6:s===i?c=(n-t)/a+2:c=(t-i)/a+4,new ea(Math.round(c*60),l,s,e.a)}static toRGBA(e){const{h:t,s:i,v:n,a:s}=e,r=n*i,a=r*(1-Math.abs(t/60%2-1)),l=n-r;let[c,d,h]=[0,0,0];return t<60?(c=r,d=a):t<120?(c=a,d=r):t<180?(d=r,h=a):t<240?(d=a,h=r):t<300?(c=a,h=r):t<=360&&(c=r,h=a),c=Math.round((c+l)*255),d=Math.round((d+l)*255),h=Math.round((h+l)*255),new qe(c,d,h,s)}}const Kt=class Kt{static fromHex(e){return Kt.Format.CSS.parseHex(e)||Kt.red}static equals(e,t){return!e&&!t?!0:!e||!t?!1:e.equals(t)}get hsla(){return this._hsla?this._hsla:ko.fromRGBA(this.rgba)}get hsva(){return this._hsva?this._hsva:ea.fromRGBA(this.rgba)}constructor(e){if(e)if(e instanceof qe)this.rgba=e;else if(e instanceof ko)this._hsla=e,this.rgba=ko.toRGBA(e);else if(e instanceof ea)this._hsva=e,this.rgba=ea.toRGBA(e);else throw new Error("Invalid color ctor argument");else throw new Error("Color needs a value")}equals(e){return!!e&&qe.equals(this.rgba,e.rgba)&&ko.equals(this.hsla,e.hsla)&&ea.equals(this.hsva,e.hsva)}getRelativeLuminance(){const e=Kt._relativeLuminanceForComponent(this.rgba.r),t=Kt._relativeLuminanceForComponent(this.rgba.g),i=Kt._relativeLuminanceForComponent(this.rgba.b),n=.2126*e+.7152*t+.0722*i;return gc(n,4)}static _relativeLuminanceForComponent(e){const t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)}isLighter(){return(this.rgba.r*299+this.rgba.g*587+this.rgba.b*114)/1e3>=128}isLighterThan(e){const t=this.getRelativeLuminance(),i=e.getRelativeLuminance();return t>i}isDarkerThan(e){const t=this.getRelativeLuminance(),i=e.getRelativeLuminance();return t0)for(const n of i){const s=n.filter(c=>c!==void 0),r=s[1],a=s[2];if(!a)continue;let l;if(r==="rgb"){const c=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*\)$/gm;l=sA(hm(o,n),um(a,c),!1)}else if(r==="rgba"){const c=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;l=sA(hm(o,n),um(a,c),!0)}else if(r==="hsl"){const c=/^\(\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*\)$/gm;l=oA(hm(o,n),um(a,c),!1)}else if(r==="hsla"){const c=/^\(\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;l=oA(hm(o,n),um(a,c),!0)}else r==="#"&&(l=b$(hm(o,n),r+a));l&&e.push(l)}return e}function v$(o){return!o||typeof o.getValue!="function"||typeof o.positionAt!="function"?[]:C$(o)}const rA=new RegExp("\\bMARK:\\s*(.*)$","d"),w$=/^-+|-+$/g;function y$(o,e){let t=[];if(e.findRegionSectionHeaders&&e.foldingRules?.markers){const i=S$(o,e);t=t.concat(i)}if(e.findMarkSectionHeaders){const i=L$(o);t=t.concat(i)}return t}function S$(o,e){const t=[],i=o.getLineCount();for(let n=1;n<=i;n++){const s=o.getLineContent(n),r=s.match(e.foldingRules.markers.start);if(r){const a={startLineNumber:n,startColumn:r[0].length+1,endLineNumber:n,endColumn:s.length+1};if(a.endColumn>a.startColumn){const l={range:a,...g3(s.substring(r[0].length)),shouldBeInComments:!1};(l.text||l.hasSeparatorLine)&&t.push(l)}}}return t}function L$(o){const e=[],t=o.getLineCount();for(let i=1;i<=t;i++){const n=o.getLineContent(i);x$(n,i,e)}return e}function x$(o,e,t){rA.lastIndex=0;const i=rA.exec(o);if(i){const n=i.indices[1][0]+1,s=i.indices[1][1]+1,r={startLineNumber:e,startColumn:n,endLineNumber:e,endColumn:s};if(r.endColumn>r.startColumn){const a={range:r,...g3(i[1]),shouldBeInComments:!0};(a.text||a.hasSeparatorLine)&&t.push(a)}}}function g3(o){o=o.trim();const e=o.startsWith("-");return o=o.replace(w$,""),{text:o,hasSeparatorLine:e}}class k${constructor(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(e,t){e=Iu(e);const i=this.values,n=this.prefixSum,s=t.length;return s===0?!1:(this.values=new Uint32Array(i.length+s),this.values.set(i.subarray(0,e),0),this.values.set(i.subarray(e),e+s),this.values.set(t,e),e-1=0&&this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(e,t){return e=Iu(e),t=Iu(t),this.values[e]===t?!1:(this.values[e]=t,e-1=i.length)return!1;const s=i.length-e;return t>=s&&(t=s),t===0?!1:(this.values=new Uint32Array(i.length-t),this.values.set(i.subarray(0,e),0),this.values.set(i.subarray(e+t),e),this.prefixSum=new Uint32Array(this.values.length),e-1=0&&this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return this.values.length===0?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(e){return e<0?0:(e=Iu(e),this._getPrefixSum(e))}_getPrefixSum(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];let t=this.prefixSumValidIndex[0]+1;t===0&&(this.prefixSum[0]=this.values[0],t++),e>=this.values.length&&(e=this.values.length-1);for(let i=t;i<=e;i++)this.prefixSum[i]=this.prefixSum[i-1]+this.values[i];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]}getIndexOf(e){e=Math.floor(e),this.getTotalSum();let t=0,i=this.values.length-1,n=0,s=0,r=0;for(;t<=i;)if(n=t+(i-t)/2|0,s=this.prefixSum[n],r=s-this.values[n],e=s)t=n+1;else break;return new m3(n,e-r)}}class D${constructor(e){this._values=e,this._isValid=!1,this._validEndIndex=-1,this._prefixSum=[],this._indexBySum=[]}getTotalSum(){return this._ensureValid(),this._indexBySum.length}getPrefixSum(e){return this._ensureValid(),e===0?0:this._prefixSum[e-1]}getIndexOf(e){this._ensureValid();const t=this._indexBySum[e],i=t>0?this._prefixSum[t-1]:0;return new m3(t,e-i)}removeValues(e,t){this._values.splice(e,t),this._invalidate(e)}insertValues(e,t){this._values=y0(this._values,e,t),this._invalidate(e)}_invalidate(e){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,e-1)}_ensureValid(){if(!this._isValid){for(let e=this._validEndIndex+1,t=this._values.length;e0?this._prefixSum[e-1]:0;this._prefixSum[e]=n+i;for(let s=0;sthis._checkStopModelSync(),Math.round(aA/2)),this._register(n)}}dispose(){for(const e in this._syncedModels)xt(this._syncedModels[e]);this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),super.dispose()}ensureSyncedResources(e,t=!1){for(const i of e){const n=i.toString();this._syncedModels[n]||this._beginModelSync(i,t),this._syncedModels[n]&&(this._syncedModelsLastUsedTime[n]=new Date().getTime())}}_checkStopModelSync(){const e=new Date().getTime(),t=[];for(const i in this._syncedModelsLastUsedTime)e-this._syncedModelsLastUsedTime[i]>aA&&t.push(i);for(const i of t)this._stopModelSync(i)}_beginModelSync(e,t){const i=this._modelService.getModel(e);if(!i||!t&&i.isTooLargeForSyncing())return;const n=e.toString();this._proxy.$acceptNewModel({url:i.uri.toString(),lines:i.getLinesContent(),EOL:i.getEOL(),versionId:i.getVersionId()});const s=new X;s.add(i.onDidChangeContent(r=>{this._proxy.$acceptModelChanged(n.toString(),r)})),s.add(i.onWillDispose(()=>{this._stopModelSync(n)})),s.add(_e(()=>{this._proxy.$acceptRemovedModel(n)})),this._syncedModels[n]=s}_stopModelSync(e){const t=this._syncedModels[e];delete this._syncedModels[e],delete this._syncedModelsLastUsedTime[e],xt(t)}}class N${constructor(){this._models=Object.create(null)}getModel(e){return this._models[e]}getModels(){const e=[];return Object.keys(this._models).forEach(t=>e.push(this._models[t])),e}$acceptNewModel(e){this._models[e.url]=new T$(ve.parse(e.url),e.lines,e.EOL,e.versionId)}$acceptModelChanged(e,t){if(!this._models[e])return;this._models[e].onEvents(t)}$acceptRemovedModel(e){this._models[e]&&delete this._models[e]}}class T$ extends I${get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}findMatches(e){const t=[];for(let i=0;ithis._lines.length)t=this._lines.length,i=this._lines[t-1].length+1,n=!0;else{const s=this._lines[t-1].length+1;i<1?(i=1,n=!0):i>s&&(i=s,n=!0)}return n?{lineNumber:t,column:i}:e}}const Nw=class Nw{constructor(){this._workerTextModelSyncServer=new N$}dispose(){}_getModel(e){return this._workerTextModelSyncServer.getModel(e)}_getModels(){return this._workerTextModelSyncServer.getModels()}$acceptNewModel(e){this._workerTextModelSyncServer.$acceptNewModel(e)}$acceptModelChanged(e,t){this._workerTextModelSyncServer.$acceptModelChanged(e,t)}$acceptRemovedModel(e){this._workerTextModelSyncServer.$acceptRemovedModel(e)}async $computeUnicodeHighlights(e,t,i){const n=this._getModel(e);return n?BU.computeUnicodeHighlights(n,t,i):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}}async $findSectionHeaders(e,t){const i=this._getModel(e);return i?y$(i,t):[]}async $computeDiff(e,t,i,n){const s=this._getModel(e),r=this._getModel(t);return!s||!r?null:I1.computeDiff(s,r,i,n)}static computeDiff(e,t,i,n){const s=n==="advanced"?nA.getDefault():nA.getLegacy(),r=e.getLinesContent(),a=t.getLinesContent(),l=s.computeDiff(r,a,i),c=l.changes.length>0?!1:this._modelsAreIdentical(e,t);function d(h){return h.map(u=>[u.original.startLineNumber,u.original.endLineNumberExclusive,u.modified.startLineNumber,u.modified.endLineNumberExclusive,u.innerChanges?.map(f=>[f.originalRange.startLineNumber,f.originalRange.startColumn,f.originalRange.endLineNumber,f.originalRange.endColumn,f.modifiedRange.startLineNumber,f.modifiedRange.startColumn,f.modifiedRange.endLineNumber,f.modifiedRange.endColumn])])}return{identical:c,quitEarly:l.hitTimeout,changes:d(l.changes),moves:l.moves.map(h=>[h.lineRangeMapping.original.startLineNumber,h.lineRangeMapping.original.endLineNumberExclusive,h.lineRangeMapping.modified.startLineNumber,h.lineRangeMapping.modified.endLineNumberExclusive,d(h.changes)])}}static _modelsAreIdentical(e,t){const i=e.getLineCount(),n=t.getLineCount();if(i!==n)return!1;for(let s=1;s<=i;s++){const r=e.getLineContent(s),a=t.getLineContent(s);if(r!==a)return!1}return!0}async $computeMoreMinimalEdits(e,t,i){const n=this._getModel(e);if(!n)return t;const s=[];let r;t=t.slice(0).sort((l,c)=>{if(l.range&&c.range)return I.compareRangesUsingStarts(l.range,c.range);const d=l.range?0:1,h=c.range?0:1;return d-h});let a=0;for(let l=1;lI1._diffLimit){s.push({range:l,text:c});continue}const u=_U(h,c,i),f=n.offsetAt(I.lift(l).getStartPosition());for(const g of u){const p=n.positionAt(f+g.originalStart),_=n.positionAt(f+g.originalStart+g.originalLength),b={text:c.substr(g.modifiedStart,g.modifiedLength),range:{startLineNumber:p.lineNumber,startColumn:p.column,endLineNumber:_.lineNumber,endColumn:_.column}};n.getValueInRange(b.range)!==b.text&&s.push(b)}}return typeof r=="number"&&s.push({eol:r,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),s}async $computeLinks(e){const t=this._getModel(e);return t?SU(t):null}async $computeDefaultDocumentColors(e){const t=this._getModel(e);return t?v$(t):null}async $textualSuggest(e,t,i,n){const s=new Hs,r=new RegExp(i,n),a=new Set;e:for(const l of e){const c=this._getModel(l);if(c){for(const d of c.words(r))if(!(d===t||!isNaN(Number(d)))&&(a.add(d),a.size>I1._suggestionsLimit))break e}}return{words:Array.from(a),duration:s.elapsed()}}async $computeWordRanges(e,t,i,n){const s=this._getModel(e);if(!s)return Object.create(null);const r=new RegExp(i,n),a=Object.create(null);for(let l=t.startLineNumber;lthis._host.$fhr(a,l)),getMirrorModels:()=>this._getModels()};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(r,t),Promise.resolve(DL(this._foreignModule))):new Promise((a,l)=>{const c=d=>{this._foreignModule=d.create(r,t),a(DL(this._foreignModule))};{const d=E0.asBrowserUri(`${e}.js`).toString(!0);vz(()=>import(`${d}`),[],import.meta.url).then(c).catch(l)}})}$fmr(e,t){if(!this._foreignModule||typeof this._foreignModule[e]!="function")return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(i){return Promise.reject(i)}}}typeof importScripts=="function"&&(globalThis.monaco=cF());const pT=He("textResourceConfigurationService"),p3=He("textResourcePropertiesService"),Se=He("ILanguageFeaturesService");var _T=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Cd=function(o,e){return function(t,i){e(t,i,o)}};const lA=300*1e3;function vd(o,e){const t=o.getModel(e);return!(!t||t.isTooLargeForSyncing())}let uk=class extends z{constructor(e,t,i,n,s,r){super(),this._languageConfigurationService=s,this._modelService=t,this._workerManager=this._register(new fk(e,this._modelService)),this._logService=n,this._register(r.linkProvider.register({language:"*",hasAccessToAllModels:!0},{provideLinks:async(a,l)=>{if(!vd(this._modelService,a.uri))return Promise.resolve({links:[]});const d=await(await this._workerWithResources([a.uri])).$computeLinks(a.uri.toString());return d&&{links:d}}})),this._register(r.completionProvider.register("*",new M$(this._workerManager,i,this._modelService,this._languageConfigurationService)))}dispose(){super.dispose()}canComputeUnicodeHighlights(e){return vd(this._modelService,e)}async computedUnicodeHighlights(e,t,i){return(await this._workerWithResources([e])).$computeUnicodeHighlights(e.toString(),t,i)}async computeDiff(e,t,i,n){const r=await(await this._workerWithResources([e,t],!0)).$computeDiff(e.toString(),t.toString(),i,n);if(!r)return null;return{identical:r.identical,quitEarly:r.quitEarly,changes:l(r.changes),moves:r.moves.map(c=>new l3(new hn(new xe(c[0],c[1]),new xe(c[2],c[3])),l(c[4])))};function l(c){return c.map(d=>new Ws(new xe(d[0],d[1]),new xe(d[2],d[3]),d[4]?.map(h=>new Ls(new I(h[0],h[1],h[2],h[3]),new I(h[4],h[5],h[6],h[7])))))}}async computeMoreMinimalEdits(e,t,i=!1){if(Ps(t)){if(!vd(this._modelService,e))return Promise.resolve(t);const n=Hs.create(),s=this._workerWithResources([e]).then(r=>r.$computeMoreMinimalEdits(e.toString(),t,i));return s.finally(()=>this._logService.trace("FORMAT#computeMoreMinimalEdits",e.toString(!0),n.elapsed())),Promise.race([s,og(1e3).then(()=>t)])}else return Promise.resolve(void 0)}canNavigateValueSet(e){return vd(this._modelService,e)}async navigateValueSet(e,t,i){const n=this._modelService.getModel(e);if(!n)return null;const s=this._languageConfigurationService.getLanguageConfiguration(n.getLanguageId()).getWordDefinition(),r=s.source,a=s.flags;return(await this._workerWithResources([e])).$navigateValueSet(e.toString(),t,i,r,a)}canComputeWordRanges(e){return vd(this._modelService,e)}async computeWordRanges(e,t){const i=this._modelService.getModel(e);if(!i)return Promise.resolve(null);const n=this._languageConfigurationService.getLanguageConfiguration(i.getLanguageId()).getWordDefinition(),s=n.source,r=n.flags;return(await this._workerWithResources([e])).$computeWordRanges(e.toString(),t,s,r)}async findSectionHeaders(e,t){return(await this._workerWithResources([e])).$findSectionHeaders(e.toString(),t)}async computeDefaultDocumentColors(e){return(await this._workerWithResources([e])).$computeDefaultDocumentColors(e.toString())}async _workerWithResources(e,t=!1){return await(await this._workerManager.withWorker()).workerWithSyncedResources(e,t)}};uk=_T([Cd(1,Fi),Cd(2,pT),Cd(3,gs),Cd(4,Gn),Cd(5,Se)],uk);class M${constructor(e,t,i,n){this.languageConfigurationService=n,this._debugDisplayName="wordbasedCompletions",this._workerManager=e,this._configurationService=t,this._modelService=i}async provideCompletionItems(e,t){const i=this._configurationService.getValue(e.uri,t,"editor");if(i.wordBasedSuggestions==="off")return;const n=[];if(i.wordBasedSuggestions==="currentDocument")vd(this._modelService,e.uri)&&n.push(e.uri);else for(const h of this._modelService.getModels())vd(this._modelService,h.uri)&&(h===e?n.unshift(h.uri):(i.wordBasedSuggestions==="allDocuments"||h.getLanguageId()===e.getLanguageId())&&n.push(h.uri));if(n.length===0)return;const s=this.languageConfigurationService.getLanguageConfiguration(e.getLanguageId()).getWordDefinition(),r=e.getWordAtPosition(t),a=r?new I(t.lineNumber,r.startColumn,t.lineNumber,r.endColumn):I.fromPositions(t),l=a.setEndPosition(t.lineNumber,t.column),d=await(await this._workerManager.withWorker()).textualSuggest(n,r?.word,s);if(d)return{duration:d.duration,suggestions:d.words.map(h=>({kind:18,label:h,insertText:h,range:{insert:l,replace:a}}))}}}let fk=class extends z{constructor(e,t){super(),this._workerDescriptor=e,this._modelService=t,this._editorWorkerClient=null,this._lastWorkerUsedTime=new Date().getTime(),this._register(new QN).cancelAndSet(()=>this._checkStopIdleWorker(),Math.round(lA/2),_t),this._register(this._modelService.onModelRemoved(n=>this._checkStopEmptyWorker()))}dispose(){this._editorWorkerClient&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null),super.dispose()}_checkStopEmptyWorker(){if(!this._editorWorkerClient)return;this._modelService.getModels().length===0&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}_checkStopIdleWorker(){if(!this._editorWorkerClient)return;new Date().getTime()-this._lastWorkerUsedTime>lA&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}withWorker(){return this._lastWorkerUsedTime=new Date().getTime(),this._editorWorkerClient||(this._editorWorkerClient=new EC(this._workerDescriptor,!1,this._modelService)),Promise.resolve(this._editorWorkerClient)}};fk=_T([Cd(1,Fi)],fk);class R${constructor(e){this._instance=e,this.proxy=this._instance}dispose(){this._instance.dispose()}setChannel(e,t){throw new Error("Not supported")}}let EC=class extends z{constructor(e,t,i){super(),this._workerDescriptor=e,this._disposed=!1,this._modelService=i,this._keepIdleModels=t,this._worker=null,this._modelManager=null}fhr(e,t){throw new Error("Not implemented!")}_getOrCreateWorker(){if(!this._worker)try{this._worker=this._register(Az(this._workerDescriptor)),ok.setChannel(this._worker,this._createEditorWorkerHost())}catch(e){Xx(e),this._worker=this._createFallbackLocalWorker()}return this._worker}async _getProxy(){try{const e=this._getOrCreateWorker().proxy;return await e.$ping(),e}catch(e){return Xx(e),this._worker=this._createFallbackLocalWorker(),this._worker.proxy}}_createFallbackLocalWorker(){return new R$(new I1(this._createEditorWorkerHost(),null))}_createEditorWorkerHost(){return{$fhr:(e,t)=>this.fhr(e,t)}}_getOrCreateModelManager(e){return this._modelManager||(this._modelManager=this._register(new E$(e,this._modelService,this._keepIdleModels))),this._modelManager}async workerWithSyncedResources(e,t=!1){if(this._disposed)return Promise.reject(bW());const i=await this._getProxy();return this._getOrCreateModelManager(i).ensureSyncedResources(e,t),i}async textualSuggest(e,t,i){const n=await this.workerWithSyncedResources(e),s=i.source,r=i.flags;return n.$textualSuggest(e.map(a=>a.toString()),t,s,r)}dispose(){super.dispose(),this._disposed=!0}};EC=_T([Cd(2,Fi)],EC);var io;(function(o){o.DARK="dark",o.LIGHT="light",o.HIGH_CONTRAST_DARK="hcDark",o.HIGH_CONTRAST_LIGHT="hcLight"})(io||(io={}));function mc(o){return o===io.HIGH_CONTRAST_DARK||o===io.HIGH_CONTRAST_LIGHT}function j0(o){return o===io.DARK||o===io.HIGH_CONTRAST_DARK}const en=He("themeService");function Xs(o){return{id:o}}function gk(o){switch(o){case io.DARK:return"vs-dark";case io.HIGH_CONTRAST_DARK:return"hc-black";case io.HIGH_CONTRAST_LIGHT:return"hc-light";default:return"vs"}}const _3={ThemingContribution:"base.contributions.theming"};class A${constructor(){this.themingParticipants=[],this.themingParticipants=[],this.onThemingParticipantAddedEmitter=new A}onColorThemeChange(e){return this.themingParticipants.push(e),this.onThemingParticipantAddedEmitter.fire(e),_e(()=>{const t=this.themingParticipants.indexOf(e);this.themingParticipants.splice(t,1)})}getThemingParticipants(){return this.themingParticipants}}const b3=new A$;Bi.add(_3.ThemingContribution,b3);function Sr(o){return b3.onColorThemeChange(o)}class P$ extends z{constructor(e){super(),this.themeService=e,this.theme=e.getColorTheme(),this._register(this.themeService.onDidColorThemeChange(t=>this.onThemeChange(t)))}onThemeChange(e){this.theme=e,this.updateStyles()}updateStyles(){}}var O$=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},F$=function(o,e){return function(t,i){e(t,i,o)}};let mk=class extends z{constructor(e){super(),this._themeService=e,this._onWillCreateCodeEditor=this._register(new A),this._onCodeEditorAdd=this._register(new A),this.onCodeEditorAdd=this._onCodeEditorAdd.event,this._onCodeEditorRemove=this._register(new A),this.onCodeEditorRemove=this._onCodeEditorRemove.event,this._onWillCreateDiffEditor=this._register(new A),this._onDiffEditorAdd=this._register(new A),this.onDiffEditorAdd=this._onDiffEditorAdd.event,this._onDiffEditorRemove=this._register(new A),this.onDiffEditorRemove=this._onDiffEditorRemove.event,this._decorationOptionProviders=new Map,this._codeEditorOpenHandlers=new yn,this._modelProperties=new Map,this._codeEditors=Object.create(null),this._diffEditors=Object.create(null),this._globalStyleSheet=null}willCreateCodeEditor(){this._onWillCreateCodeEditor.fire()}addCodeEditor(e){this._codeEditors[e.getId()]=e,this._onCodeEditorAdd.fire(e)}removeCodeEditor(e){delete this._codeEditors[e.getId()]&&this._onCodeEditorRemove.fire(e)}listCodeEditors(){return Object.keys(this._codeEditors).map(e=>this._codeEditors[e])}willCreateDiffEditor(){this._onWillCreateDiffEditor.fire()}addDiffEditor(e){this._diffEditors[e.getId()]=e,this._onDiffEditorAdd.fire(e)}listDiffEditors(){return Object.keys(this._diffEditors).map(e=>this._diffEditors[e])}getFocusedCodeEditor(){let e=null;const t=this.listCodeEditors();for(const i of t){if(i.hasTextFocus())return i;i.hasWidgetFocus()&&(e=i)}return e}removeDecorationType(e){const t=this._decorationOptionProviders.get(e);t&&(t.refCount--,t.refCount<=0&&(this._decorationOptionProviders.delete(e),t.dispose(),this.listCodeEditors().forEach(i=>i.removeDecorationsByType(e))))}setModelProperty(e,t,i){const n=e.toString();let s;this._modelProperties.has(n)?s=this._modelProperties.get(n):(s=new Map,this._modelProperties.set(n,s)),s.set(t,i)}getModelProperty(e,t){const i=e.toString();if(this._modelProperties.has(i))return this._modelProperties.get(i).get(t)}async openCodeEditor(e,t,i){for(const n of this._codeEditorOpenHandlers){const s=await n(e,t,i);if(s!==null)return s}return null}registerCodeEditorOpenHandler(e){const t=this._codeEditorOpenHandlers.unshift(e);return _e(t)}};mk=O$([F$(0,en)],mk);var B$=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},cA=function(o,e){return function(t,i){e(t,i,o)}};let NC=class extends mk{constructor(e,t){super(t),this._register(this.onCodeEditorAdd(()=>this._checkContextKey())),this._register(this.onCodeEditorRemove(()=>this._checkContextKey())),this._editorIsOpen=e.createKey("editorIsOpen",!1),this._activeCodeEditor=null,this._register(this.registerCodeEditorOpenHandler(async(i,n,s)=>n?this.doOpenEditor(n,i):null))}_checkContextKey(){let e=!1;for(const t of this.listCodeEditors())if(!t.isSimpleWidget){e=!0;break}this._editorIsOpen.set(e)}setActiveCodeEditor(e){this._activeCodeEditor=e}getActiveCodeEditor(){return this._activeCodeEditor}doOpenEditor(e,t){if(!this.findModel(e,t.resource)){if(t.resource){const s=t.resource.scheme;if(s===Te.http||s===Te.https)return HF(t.resource.toString()),e}return null}const n=t.options?t.options.selection:null;if(n)if(typeof n.endLineNumber=="number"&&typeof n.endColumn=="number")e.setSelection(n),e.revealRangeInCenter(n,1);else{const s={lineNumber:n.startLineNumber,column:n.startColumn};e.setPosition(s),e.revealPositionInCenter(s,1)}return e}findModel(e,t){const i=e.getModel();return i&&i.uri.toString()!==t.toString()?null:i}};NC=B$([cA(0,De),cA(1,en)],NC);Qe(Pt,NC,0);const jc=He("layoutService");var C3=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},v3=function(o,e){return function(t,i){e(t,i,o)}};let TC=class{get mainContainer(){return xN(this._codeEditorService.listCodeEditors())?.getContainerDomNode()??_t.document.body}get activeContainer(){return(this._codeEditorService.getFocusedCodeEditor()??this._codeEditorService.getActiveCodeEditor())?.getContainerDomNode()??this.mainContainer}get mainContainerDimension(){return Ah(this.mainContainer)}get activeContainerDimension(){return Ah(this.activeContainer)}get containers(){return Ag(this._codeEditorService.listCodeEditors().map(e=>e.getContainerDomNode()))}getContainer(){return this.activeContainer}whenContainerStylesLoaded(){}focus(){this._codeEditorService.getFocusedCodeEditor()?.focus()}constructor(e){this._codeEditorService=e,this.onDidLayoutMainContainer=J.None,this.onDidLayoutActiveContainer=J.None,this.onDidLayoutContainer=J.None,this.onDidChangeActiveContainer=J.None,this.onDidAddContainer=J.None,this.mainContainerOffset={top:0,quickPickTop:0},this.activeContainerOffset={top:0,quickPickTop:0}}};TC=C3([v3(0,Pt)],TC);let pk=class extends TC{get mainContainer(){return this._container}constructor(e,t){super(t),this._container=e}};pk=C3([v3(1,Pt)],pk);Qe(jc,TC,1);var e_;(function(o){o[o.Ignore=0]="Ignore",o[o.Info=1]="Info",o[o.Warning=2]="Warning",o[o.Error=3]="Error"})(e_||(e_={}));(function(o){const e="error",t="warning",i="warn",n="info",s="ignore";function r(l){return l?Qu(e,l)?o.Error:Qu(t,l)||Qu(i,l)?o.Warning:Qu(n,l)?o.Info:o.Ignore:o.Ignore}o.fromValue=r;function a(l){switch(l){case o.Error:return e;case o.Warning:return t;case o.Info:return n;default:return s}}o.toString=a})(e_||(e_={}));const Qt=e_,w3=He("dialogService");var bT=Qt;const mn=He("notificationService");class W${}const CT=He("undoRedoService");class y3{constructor(e,t){this.resource=e,this.elements=t}}const yf=class yf{constructor(){this.id=yf._ID++,this.order=1}nextOrder(){return this.id===0?0:this.order++}};yf._ID=0,yf.None=new yf;let _k=yf;const Sf=class Sf{constructor(){this.id=Sf._ID++,this.order=1}nextOrder(){return this.id===0?0:this.order++}};Sf._ID=0,Sf.None=new Sf;let wd=Sf;var H$=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},dA=function(o,e){return function(t,i){e(t,i,o)}};function Nb(o){return o.scheme===Te.file?o.fsPath:o.path}let S3=0;class Tb{constructor(e,t,i,n,s,r,a){this.id=++S3,this.type=0,this.actual=e,this.label=e.label,this.confirmBeforeUndo=e.confirmBeforeUndo||!1,this.resourceLabel=t,this.strResource=i,this.resourceLabels=[this.resourceLabel],this.strResources=[this.strResource],this.groupId=n,this.groupOrder=s,this.sourceId=r,this.sourceOrder=a,this.isValid=!0}setValid(e){this.isValid=e}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.isValid?" VALID":"INVALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class hA{constructor(e,t){this.resourceLabel=e,this.reason=t}}class uA{constructor(){this.elements=new Map}createMessage(){const e=[],t=[];for(const[,n]of this.elements)(n.reason===0?e:t).push(n.resourceLabel);const i=[];return e.length>0&&i.push(m({key:"externalRemoval",comment:["{0} is a list of filenames"]},"The following files have been closed and modified on disk: {0}.",e.join(", "))),t.length>0&&i.push(m({key:"noParallelUniverses",comment:["{0} is a list of filenames"]},"The following files have been modified in an incompatible way: {0}.",t.join(", "))),i.join(` -`)}get size(){return this.elements.size}has(e){return this.elements.has(e)}set(e,t){this.elements.set(e,t)}delete(e){return this.elements.delete(e)}}class V${constructor(e,t,i,n,s,r,a){this.id=++S3,this.type=1,this.actual=e,this.label=e.label,this.confirmBeforeUndo=e.confirmBeforeUndo||!1,this.resourceLabels=t,this.strResources=i,this.groupId=n,this.groupOrder=s,this.sourceId=r,this.sourceOrder=a,this.removedResources=null,this.invalidatedResources=null}canSplit(){return typeof this.actual.split=="function"}removeResource(e,t,i){this.removedResources||(this.removedResources=new uA),this.removedResources.has(t)||this.removedResources.set(t,new hA(e,i))}setValid(e,t,i){i?this.invalidatedResources&&(this.invalidatedResources.delete(t),this.invalidatedResources.size===0&&(this.invalidatedResources=null)):(this.invalidatedResources||(this.invalidatedResources=new uA),this.invalidatedResources.has(t)||this.invalidatedResources.set(t,new hA(e,0)))}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.invalidatedResources?"INVALID":" VALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class L3{constructor(e,t){this.resourceLabel=e,this.strResource=t,this._past=[],this._future=[],this.locked=!1,this.versionId=1}dispose(){for(const e of this._past)e.type===1&&e.removeResource(this.resourceLabel,this.strResource,0);for(const e of this._future)e.type===1&&e.removeResource(this.resourceLabel,this.strResource,0);this.versionId++}toString(){const e=[];e.push(`* ${this.strResource}:`);for(let t=0;t=0;t--)e.push(` * [REDO] ${this._future[t]}`);return e.join(` -`)}flushAllElements(){this._past=[],this._future=[],this.versionId++}_setElementValidFlag(e,t){e.type===1?e.setValid(this.resourceLabel,this.strResource,t):e.setValid(t)}setElementsValidFlag(e,t){for(const i of this._past)t(i.actual)&&this._setElementValidFlag(i,e);for(const i of this._future)t(i.actual)&&this._setElementValidFlag(i,e)}pushElement(e){for(const t of this._future)t.type===1&&t.removeResource(this.resourceLabel,this.strResource,1);this._future=[],this._past.push(e),this.versionId++}createSnapshot(e){const t=[];for(let i=0,n=this._past.length;i=0;i--)t.push(this._future[i].id);return new y3(e,t)}restoreSnapshot(e){const t=e.elements.length;let i=!0,n=0,s=-1;for(let a=0,l=this._past.length;a=t||c.id!==e.elements[n])&&(i=!1,s=0),!i&&c.type===1&&c.removeResource(this.resourceLabel,this.strResource,0)}let r=-1;for(let a=this._future.length-1;a>=0;a--,n++){const l=this._future[a];i&&(n>=t||l.id!==e.elements[n])&&(i=!1,r=a),!i&&l.type===1&&l.removeResource(this.resourceLabel,this.strResource,0)}s!==-1&&(this._past=this._past.slice(0,s)),r!==-1&&(this._future=this._future.slice(r+1)),this.versionId++}getElements(){const e=[],t=[];for(const i of this._past)e.push(i.actual);for(const i of this._future)t.push(i.actual);return{past:e,future:t}}getClosestPastElement(){return this._past.length===0?null:this._past[this._past.length-1]}getSecondClosestPastElement(){return this._past.length<2?null:this._past[this._past.length-2]}getClosestFutureElement(){return this._future.length===0?null:this._future[this._future.length-1]}hasPastElements(){return this._past.length>0}hasFutureElements(){return this._future.length>0}splitPastWorkspaceElement(e,t){for(let i=this._past.length-1;i>=0;i--)if(this._past[i]===e){t.has(this.strResource)?this._past[i]=t.get(this.strResource):this._past.splice(i,1);break}this.versionId++}splitFutureWorkspaceElement(e,t){for(let i=this._future.length-1;i>=0;i--)if(this._future[i]===e){t.has(this.strResource)?this._future[i]=t.get(this.strResource):this._future.splice(i,1);break}this.versionId++}moveBackward(e){this._past.pop(),this._future.push(e),this.versionId++}moveForward(e){this._future.pop(),this._past.push(e),this.versionId++}}class yS{constructor(e){this.editStacks=e,this._versionIds=[];for(let t=0,i=this.editStacks.length;tt.sourceOrder)&&(t=r,i=n)}return[t,i]}canUndo(e){if(e instanceof wd){const[,i]=this._findClosestUndoElementWithSource(e.id);return!!i}const t=this.getUriComparisonKey(e);return this._editStacks.has(t)?this._editStacks.get(t).hasPastElements():!1}_onError(e,t){Ze(e);for(const i of t.strResources)this.removeElements(i);this._notificationService.error(e)}_acquireLocks(e){for(const t of e.editStacks)if(t.locked)throw new Error("Cannot acquire edit stack lock");for(const t of e.editStacks)t.locked=!0;return()=>{for(const t of e.editStacks)t.locked=!1}}_safeInvokeWithLocks(e,t,i,n,s){const r=this._acquireLocks(i);let a;try{a=t()}catch(l){return r(),n.dispose(),this._onError(l,e)}return a?a.then(()=>(r(),n.dispose(),s()),l=>(r(),n.dispose(),this._onError(l,e))):(r(),n.dispose(),s())}async _invokeWorkspacePrepare(e){if(typeof e.actual.prepareUndoRedo>"u")return z.None;const t=e.actual.prepareUndoRedo();return typeof t>"u"?z.None:t}_invokeResourcePrepare(e,t){if(e.actual.type!==1||typeof e.actual.prepareUndoRedo>"u")return t(z.None);const i=e.actual.prepareUndoRedo();return i?MN(i)?t(i):i.then(n=>t(n)):t(z.None)}_getAffectedEditStacks(e){const t=[];for(const i of e.strResources)t.push(this._editStacks.get(i)||x3);return new yS(t)}_tryToSplitAndUndo(e,t,i,n){if(t.canSplit())return this._splitPastWorkspaceElement(t,i),this._notificationService.warn(n),new Mb(this._undo(e,0,!0));for(const s of t.strResources)this.removeElements(s);return this._notificationService.warn(n),new Mb}_checkWorkspaceUndo(e,t,i,n){if(t.removedResources)return this._tryToSplitAndUndo(e,t,t.removedResources,m({key:"cannotWorkspaceUndo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not undo '{0}' across all files. {1}",t.label,t.removedResources.createMessage()));if(n&&t.invalidatedResources)return this._tryToSplitAndUndo(e,t,t.invalidatedResources,m({key:"cannotWorkspaceUndo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not undo '{0}' across all files. {1}",t.label,t.invalidatedResources.createMessage()));const s=[];for(const a of i.editStacks)a.getClosestPastElement()!==t&&s.push(a.resourceLabel);if(s.length>0)return this._tryToSplitAndUndo(e,t,null,m({key:"cannotWorkspaceUndoDueToChanges",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because changes were made to {1}",t.label,s.join(", ")));const r=[];for(const a of i.editStacks)a.locked&&r.push(a.resourceLabel);return r.length>0?this._tryToSplitAndUndo(e,t,null,m({key:"cannotWorkspaceUndoDueToInProgressUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because there is already an undo or redo operation running on {1}",t.label,r.join(", "))):i.isValid()?null:this._tryToSplitAndUndo(e,t,null,m({key:"cannotWorkspaceUndoDueToInMeantimeUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because an undo or redo operation occurred in the meantime",t.label))}_workspaceUndo(e,t,i){const n=this._getAffectedEditStacks(t),s=this._checkWorkspaceUndo(e,t,n,!1);return s?s.returnValue:this._confirmAndExecuteWorkspaceUndo(e,t,n,i)}_isPartOfUndoGroup(e){if(!e.groupId)return!1;for(const[,t]of this._editStacks){const i=t.getClosestPastElement();if(i){if(i===e){const n=t.getSecondClosestPastElement();if(n&&n.groupId===e.groupId)return!0}if(i.groupId===e.groupId)return!0}}return!1}async _confirmAndExecuteWorkspaceUndo(e,t,i,n){if(t.canSplit()&&!this._isPartOfUndoGroup(t)){let a;(function(d){d[d.All=0]="All",d[d.This=1]="This",d[d.Cancel=2]="Cancel"})(a||(a={}));const{result:l}=await this._dialogService.prompt({type:Qt.Info,message:m("confirmWorkspace","Would you like to undo '{0}' across all files?",t.label),buttons:[{label:m({key:"ok",comment:["{0} denotes a number that is > 1, && denotes a mnemonic"]},"&&Undo in {0} Files",i.editStacks.length),run:()=>a.All},{label:m({key:"nok",comment:["&& denotes a mnemonic"]},"Undo this &&File"),run:()=>a.This}],cancelButton:{run:()=>a.Cancel}});if(l===a.Cancel)return;if(l===a.This)return this._splitPastWorkspaceElement(t,null),this._undo(e,0,!0);const c=this._checkWorkspaceUndo(e,t,i,!1);if(c)return c.returnValue;n=!0}let s;try{s=await this._invokeWorkspacePrepare(t)}catch(a){return this._onError(a,t)}const r=this._checkWorkspaceUndo(e,t,i,!0);if(r)return s.dispose(),r.returnValue;for(const a of i.editStacks)a.moveBackward(t);return this._safeInvokeWithLocks(t,()=>t.actual.undo(),i,s,()=>this._continueUndoInGroup(t.groupId,n))}_resourceUndo(e,t,i){if(!t.isValid){e.flushAllElements();return}if(e.locked){const n=m({key:"cannotResourceUndoDueToInProgressUndoRedo",comment:["{0} is a label for an operation."]},"Could not undo '{0}' because there is already an undo or redo operation running.",t.label);this._notificationService.warn(n);return}return this._invokeResourcePrepare(t,n=>(e.moveBackward(t),this._safeInvokeWithLocks(t,()=>t.actual.undo(),new yS([e]),n,()=>this._continueUndoInGroup(t.groupId,i))))}_findClosestUndoElementInGroup(e){if(!e)return[null,null];let t=null,i=null;for(const[n,s]of this._editStacks){const r=s.getClosestPastElement();r&&r.groupId===e&&(!t||r.groupOrder>t.groupOrder)&&(t=r,i=n)}return[t,i]}_continueUndoInGroup(e,t){if(!e)return;const[,i]=this._findClosestUndoElementInGroup(e);if(i)return this._undo(i,0,t)}undo(e){if(e instanceof wd){const[,t]=this._findClosestUndoElementWithSource(e.id);return t?this._undo(t,e.id,!1):void 0}return typeof e=="string"?this._undo(e,0,!1):this._undo(this.getUriComparisonKey(e),0,!1)}_undo(e,t=0,i){if(!this._editStacks.has(e))return;const n=this._editStacks.get(e),s=n.getClosestPastElement();if(!s)return;if(s.groupId){const[a,l]=this._findClosestUndoElementInGroup(s.groupId);if(s!==a&&l)return this._undo(l,t,i)}return(s.sourceId!==t||s.confirmBeforeUndo)&&!i?this._confirmAndContinueUndo(e,t,s):s.type===1?this._workspaceUndo(e,s,i):this._resourceUndo(n,s,i)}async _confirmAndContinueUndo(e,t,i){if((await this._dialogService.confirm({message:m("confirmDifferentSource","Would you like to undo '{0}'?",i.label),primaryButton:m({key:"confirmDifferentSource.yes",comment:["&& denotes a mnemonic"]},"&&Yes"),cancelButton:m("confirmDifferentSource.no","No")})).confirmed)return this._undo(e,t,!0)}_findClosestRedoElementWithSource(e){if(!e)return[null,null];let t=null,i=null;for(const[n,s]of this._editStacks){const r=s.getClosestFutureElement();r&&r.sourceId===e&&(!t||r.sourceOrder0)return this._tryToSplitAndRedo(e,t,null,m({key:"cannotWorkspaceRedoDueToChanges",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because changes were made to {1}",t.label,s.join(", ")));const r=[];for(const a of i.editStacks)a.locked&&r.push(a.resourceLabel);return r.length>0?this._tryToSplitAndRedo(e,t,null,m({key:"cannotWorkspaceRedoDueToInProgressUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because there is already an undo or redo operation running on {1}",t.label,r.join(", "))):i.isValid()?null:this._tryToSplitAndRedo(e,t,null,m({key:"cannotWorkspaceRedoDueToInMeantimeUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because an undo or redo operation occurred in the meantime",t.label))}_workspaceRedo(e,t){const i=this._getAffectedEditStacks(t),n=this._checkWorkspaceRedo(e,t,i,!1);return n?n.returnValue:this._executeWorkspaceRedo(e,t,i)}async _executeWorkspaceRedo(e,t,i){let n;try{n=await this._invokeWorkspacePrepare(t)}catch(r){return this._onError(r,t)}const s=this._checkWorkspaceRedo(e,t,i,!0);if(s)return n.dispose(),s.returnValue;for(const r of i.editStacks)r.moveForward(t);return this._safeInvokeWithLocks(t,()=>t.actual.redo(),i,n,()=>this._continueRedoInGroup(t.groupId))}_resourceRedo(e,t){if(!t.isValid){e.flushAllElements();return}if(e.locked){const i=m({key:"cannotResourceRedoDueToInProgressUndoRedo",comment:["{0} is a label for an operation."]},"Could not redo '{0}' because there is already an undo or redo operation running.",t.label);this._notificationService.warn(i);return}return this._invokeResourcePrepare(t,i=>(e.moveForward(t),this._safeInvokeWithLocks(t,()=>t.actual.redo(),new yS([e]),i,()=>this._continueRedoInGroup(t.groupId))))}_findClosestRedoElementInGroup(e){if(!e)return[null,null];let t=null,i=null;for(const[n,s]of this._editStacks){const r=s.getClosestFutureElement();r&&r.groupId===e&&(!t||r.groupOrder=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fA=function(o,e){return function(t,i){e(t,i,o)}};const q0=He("ILanguageFeatureDebounceService");var MC;(function(o){const e=new WeakMap;let t=0;function i(n){let s=e.get(n);return s===void 0&&(s=++t,e.set(n,s)),s}o.of=i})(MC||(MC={}));class $${constructor(e){this._default=e}get(e){return this._default}update(e,t){return this._default}default(){return this._default}}class K${constructor(e,t,i,n,s,r){this._logService=e,this._name=t,this._registry=i,this._default=n,this._min=s,this._max=r,this._cache=new ou(50,.7)}_key(e){return e.id+this._registry.all(e).reduce((t,i)=>N0(MC.of(i),t),0)}get(e){const t=this._key(e),i=this._cache.get(t);return i?bn(i.value,this._min,this._max):this.default()}update(e,t){const i=this._key(e);let n=this._cache.get(i);n||(n=new z$(6),this._cache.set(i,n));const s=bn(n.update(t),this._min,this._max);return GN(e.uri,"output")||this._logService.trace(`[DEBOUNCE: ${this._name}] for ${e.uri.toString()} is ${s}ms`),s}_overall(){const e=new k3;for(const[,t]of this._cache)e.update(t.value);return e.value}default(){const e=this._overall()|0||this._default;return bn(e,this._min,this._max)}}let Ck=class{constructor(e,t){this._logService=e,this._data=new Map,this._isDev=t.isExtensionDevelopment||!t.isBuilt}for(e,t,i){const n=i?.min??50,s=i?.max??n**2,r=i?.key??void 0,a=`${MC.of(e)},${n}${r?","+r:""}`;let l=this._data.get(a);return l||(this._isDev?(this._logService.debug(`[DEBOUNCE: ${t}] is disabled in developed mode`),l=new $$(n*1.5)):l=new K$(this._logService,t,e,this._overallAverage()|0||n*1.5,n,s),this._data.set(a,l)),l}_overallAverage(){const e=new k3;for(const t of this._data.values())e.update(t.default());return e.value}};Ck=U$([fA(0,gs),fA(1,vT)],Ck);Qe(q0,Ck,1);class sr{static getLanguageId(e){return(e&255)>>>0}static getTokenType(e){return(e&768)>>>8}static containsBalancedBrackets(e){return(e&1024)!==0}static getFontStyle(e){return(e&30720)>>>11}static getForeground(e){return(e&16744448)>>>15}static getBackground(e){return(e&4278190080)>>>24}static getClassNameFromMetadata(e){let i="mtk"+this.getForeground(e);const n=this.getFontStyle(e);return n&1&&(i+=" mtki"),n&2&&(i+=" mtkb"),n&4&&(i+=" mtku"),n&8&&(i+=" mtks"),i}static getInlineStyleFromMetadata(e,t){const i=this.getForeground(e),n=this.getFontStyle(e);let s=`color: ${t[i]};`;n&1&&(s+="font-style: italic;"),n&2&&(s+="font-weight: bold;");let r="";return n&4&&(r+=" underline"),n&8&&(r+=" line-through"),r&&(s+=`text-decoration:${r};`),s}static getPresentationFromMetadata(e){const t=this.getForeground(e),i=this.getFontStyle(e);return{foreground:t,italic:!!(i&1),bold:!!(i&2),underline:!!(i&4),strikethrough:!!(i&8)}}}function hg(o){let e=0,t=0,i=0,n=0;for(let s=0,r=o.length;s=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},SS=function(o,e){return function(t,i){e(t,i,o)}};let vk=class{constructor(e,t,i,n){this._legend=e,this._themeService=t,this._languageService=i,this._logService=n,this._hasWarnedOverlappingTokens=!1,this._hasWarnedInvalidLengthTokens=!1,this._hasWarnedInvalidEditStart=!1,this._hashTable=new wk}getMetadata(e,t,i){const n=this._languageService.languageIdCodec.encodeLanguageId(i),s=this._hashTable.get(e,t,n);let r;if(s)r=s.metadata;else{let a=this._legend.tokenTypes[e];const l=[];if(a){let c=t;for(let h=0;c>0&&h>1;const d=this._themeService.getColorTheme().getTokenStyleMetadata(a,l,i);if(typeof d>"u")r=2147483647;else{if(r=0,typeof d.italic<"u"){const h=(d.italic?1:0)<<11;r|=h|1}if(typeof d.bold<"u"){const h=(d.bold?2:0)<<11;r|=h|2}if(typeof d.underline<"u"){const h=(d.underline?4:0)<<11;r|=h|4}if(typeof d.strikethrough<"u"){const h=(d.strikethrough?8:0)<<11;r|=h|8}if(d.foreground){const h=d.foreground<<15;r|=h|16}r===0&&(r=2147483647)}}else r=2147483647,a="not-in-legend";this._hashTable.add(e,t,n,r)}return r}warnOverlappingSemanticTokens(e,t){this._hasWarnedOverlappingTokens||(this._hasWarnedOverlappingTokens=!0,this._logService.warn(`Overlapping semantic tokens detected at lineNumber ${e}, column ${t}`))}warnInvalidLengthSemanticTokens(e,t){this._hasWarnedInvalidLengthTokens||(this._hasWarnedInvalidLengthTokens=!0,this._logService.warn(`Semantic token with invalid length detected at lineNumber ${e}, column ${t}`))}warnInvalidEditStart(e,t,i,n,s){this._hasWarnedInvalidEditStart||(this._hasWarnedInvalidEditStart=!0,this._logService.warn(`Invalid semantic tokens edit detected (previousResultId: ${e}, resultId: ${t}) at edit #${i}: The provided start offset ${n} is outside the previous data (length ${s}).`))}};vk=j$([SS(1,en),SS(2,qt),SS(3,gs)],vk);class q${constructor(e,t,i,n){this.tokenTypeIndex=e,this.tokenModifierSet=t,this.languageId=i,this.metadata=n,this.next=null}}const qa=class qa{constructor(){this._elementsCount=0,this._currentLengthIndex=0,this._currentLength=qa._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1=this._growCount){const s=this._elements;this._currentLengthIndex++,this._currentLength=qa._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},LS=function(o,e){return function(t,i){e(t,i,o)}};let yk=class extends z{constructor(e,t,i){super(),this._themeService=e,this._logService=t,this._languageService=i,this._caches=new WeakMap,this._register(this._themeService.onDidColorThemeChange(()=>{this._caches=new WeakMap}))}getStyling(e){return this._caches.has(e)||this._caches.set(e,new vk(e.getLegend(),this._themeService,this._languageService,this._logService)),this._caches.get(e)}};yk=Z$([LS(0,en),LS(1,gs),LS(2,qt)],yk);Qe(G$,yk,1);function Vl(o){return o===47||o===92}function D3(o){return o.replace(/[\\/]/g,oi.sep)}function Y$(o){return o.indexOf("/")===-1&&(o=D3(o)),/^[a-zA-Z]:(\/|$)/.test(o)&&(o="/"+o),o}function gA(o,e=oi.sep){if(!o)return"";const t=o.length,i=o.charCodeAt(0);if(Vl(i)){if(Vl(o.charCodeAt(1))&&!Vl(o.charCodeAt(2))){let s=3;const r=s;for(;so.length)return!1;if(t){if(!WN(o,e))return!1;if(e.length===o.length)return!0;let s=e.length;return e.charAt(e.length-1)===i&&s--,o.charAt(s)===i}return e.charAt(e.length-1)!==i&&(e+=i),o.indexOf(e)===0}function I3(o){return o>=65&&o<=90||o>=97&&o<=122}function Q$(o,e=kn){return e?I3(o.charCodeAt(0))&&o.charCodeAt(1)===58:!1}const Rb="**",mA="/",E1="[/\\\\]",N1="[^/\\\\]",X$=/\//g;function pA(o,e){switch(o){case 0:return"";case 1:return`${N1}*?`;default:return`(?:${E1}|${N1}+${E1}${e?`|${E1}${N1}+`:""})*?`}}function _A(o,e){if(!o)return[];const t=[];let i=!1,n=!1,s="";for(const r of o){switch(r){case e:if(!i&&!n){t.push(s),s="";continue}break;case"{":i=!0;break;case"}":i=!1;break;case"[":n=!0;break;case"]":n=!1;break}s+=r}return s&&t.push(s),t}function E3(o){if(!o)return"";let e="";const t=_A(o,mA);if(t.every(i=>i===Rb))e=".*";else{let i=!1;t.forEach((n,s)=>{if(n===Rb){if(i)return;e+=pA(2,s===t.length-1)}else{let r=!1,a="",l=!1,c="";for(const d of n){if(d!=="}"&&r){a+=d;continue}if(l&&(d!=="]"||!c)){let h;d==="-"?h=d:(d==="^"||d==="!")&&!c?h="^":d===mA?h="":h=xl(d),c+=h;continue}switch(d){case"{":r=!0;continue;case"[":l=!0;continue;case"}":{const u=`(?:${_A(a,",").map(f=>E3(f)).join("|")})`;e+=u,r=!1,a="";break}case"]":{e+="["+c+"]",l=!1,c="";break}case"?":e+=N1;continue;case"*":e+=pA(1);continue;default:e+=xl(d)}}swT(a,e)).filter(a=>a!==sa),o),i=t.length;if(!i)return sa;if(i===1)return t[0];const n=function(a,l){for(let c=0,d=t.length;c!!a.allBasenames);s&&(n.allBasenames=s.allBasenames);const r=t.reduce((a,l)=>l.allPaths?a.concat(l.allPaths):a,[]);return r.length&&(n.allPaths=r),n}function wA(o,e,t){const i=fc===oi.sep,n=i?o:o.replace(X$,fc),s=fc+n,r=oi.sep+o;let a;return t?a=function(l,c){return typeof l=="string"&&(l===n||l.endsWith(s)||!i&&(l===o||l.endsWith(r)))?e:null}:a=function(l,c){return typeof l=="string"&&(l===n||!i&&l===o)?e:null},a.allPaths=[(t?"*/":"./")+o],a}function lK(o){try{const e=new RegExp(`^${E3(o)}$`);return function(t){return e.lastIndex=0,typeof t=="string"&&e.test(t)?o:null}}catch{return sa}}function cK(o,e,t){return!o||typeof e!="string"?!1:N3(o)(e,void 0,t)}function N3(o,e={}){if(!o)return CA;if(typeof o=="string"||dK(o)){const t=wT(o,e);if(t===sa)return CA;const i=function(n,s){return!!t(n,s)};return t.allBasenames&&(i.allBasenames=t.allBasenames),t.allPaths&&(i.allPaths=t.allPaths),i}return hK(o,e)}function dK(o){const e=o;return e?typeof e.base=="string"&&typeof e.pattern=="string":!1}function hK(o,e){const t=T3(Object.getOwnPropertyNames(o).map(a=>uK(a,o[a],e)).filter(a=>a!==sa)),i=t.length;if(!i)return sa;if(!t.some(a=>!!a.requiresSiblings)){if(i===1)return t[0];const a=function(d,h){let u;for(let f=0,g=t.length;f{for(const f of u){const g=await f;if(typeof g=="string")return g}return null})():null},l=t.find(d=>!!d.allBasenames);l&&(a.allBasenames=l.allBasenames);const c=t.reduce((d,h)=>h.allPaths?d.concat(h.allPaths):d,[]);return c.length&&(a.allPaths=c),a}const n=function(a,l,c){let d,h;for(let u=0,f=t.length;u{for(const u of h){const f=await u;if(typeof f=="string")return f}return null})():null},s=t.find(a=>!!a.allBasenames);s&&(n.allBasenames=s.allBasenames);const r=t.reduce((a,l)=>l.allPaths?a.concat(l.allPaths):a,[]);return r.length&&(n.allPaths=r),n}function uK(o,e,t){if(e===!1)return sa;const i=wT(o,t);if(i===sa)return sa;if(typeof e=="boolean")return i;if(e){const n=e.when;if(typeof n=="string"){const s=(r,a,l,c)=>{if(!c||!i(r,a))return null;const d=n.replace("$(basename)",()=>l),h=c(d);return Bx(h)?h.then(u=>u?o:null):h?o:null};return s.requiresSiblings=!0,s}}return i}function T3(o,e){const t=o.filter(a=>!!a.basenames);if(t.length<2)return o;const i=t.reduce((a,l)=>{const c=l.basenames;return c?a.concat(c):a},[]);let n;if(e){n=[];for(let a=0,l=i.length;a{const c=l.patterns;return c?a.concat(c):a},[]);const s=function(a,l){if(typeof a!="string")return null;if(!l){let d;for(d=a.length;d>0;d--){const h=a.charCodeAt(d-1);if(h===47||h===92)break}l=a.substr(d)}const c=i.indexOf(l);return c!==-1?n[c]:null};s.basenames=i,s.patterns=n,s.allBasenames=i;const r=o.filter(a=>!a.basenames);return r.push(s),r}function M3(o,e,t,i,n,s){if(Array.isArray(o)){let r=0;for(const a of o){const l=M3(a,e,t,i,n,s);if(l===10)return l;l>r&&(r=l)}return r}else{if(typeof o=="string")return i?o==="*"?5:o===t?10:0:0;if(o){const{language:r,pattern:a,scheme:l,hasAccessToAllModels:c,notebookType:d}=o;if(!i&&!c)return 0;d&&n&&(e=n);let h=0;if(l)if(l===e.scheme)h=10;else if(l==="*")h=5;else return 0;if(r)if(r===t)h=10;else if(r==="*")h=Math.max(h,5);else return 0;if(d)if(d===s)h=10;else if(d==="*"&&s!==void 0)h=Math.max(h,5);else return 0;if(a){let u;if(typeof a=="string"?u=a:u={...a,base:tF(a.base)},u===e.fsPath||cK(u,e.fsPath))h=10;else return 0}return h}else return 0}}function R3(o){return typeof o=="string"?!1:Array.isArray(o)?o.every(R3):!!o.exclusive}class yA{constructor(e,t,i,n,s){this.uri=e,this.languageId=t,this.notebookUri=i,this.notebookType=n,this.recursive=s}equals(e){return this.notebookType===e.notebookType&&this.languageId===e.languageId&&this.uri.toString()===e.uri.toString()&&this.notebookUri?.toString()===e.notebookUri?.toString()&&this.recursive===e.recursive}}class Ft{constructor(e){this._notebookInfoResolver=e,this._clock=0,this._entries=[],this._onDidChange=new A,this.onDidChange=this._onDidChange.event}register(e,t){let i={selector:e,provider:t,_score:-1,_time:this._clock++};return this._entries.push(i),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),_e(()=>{if(i){const n=this._entries.indexOf(i);n>=0&&(this._entries.splice(n,1),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),i=void 0)}})}has(e){return this.all(e).length>0}all(e){if(!e)return[];this._updateScores(e,!1);const t=[];for(const i of this._entries)i._score>0&&t.push(i.provider);return t}ordered(e,t=!1){const i=[];return this._orderedForEach(e,t,n=>i.push(n.provider)),i}orderedGroups(e){const t=[];let i,n;return this._orderedForEach(e,!1,s=>{i&&n===s._score?i.push(s.provider):(n=s._score,i=[s.provider],t.push(i))}),t}_orderedForEach(e,t,i){this._updateScores(e,t);for(const n of this._entries)n._score>0&&i(n)}_updateScores(e,t){const i=this._notebookInfoResolver?.(e.uri),n=i?new yA(e.uri,e.getLanguageId(),i.uri,i.type,t):new yA(e.uri,e.getLanguageId(),void 0,void 0,t);if(!this._lastCandidate?.equals(n)){this._lastCandidate=n;for(const s of this._entries)if(s._score=M3(s.selector,n.uri,n.languageId,RU(e),n.notebookUri,n.notebookType),R3(s.selector)&&s._score>0)if(t)s._score=0;else{for(const r of this._entries)r._score=0;s._score=1e3;break}this._entries.sort(Ft._compareByScoreAndTime)}}static _compareByScoreAndTime(e,t){return e._scoret._score?-1:Dm(e.selector)&&!Dm(t.selector)?1:!Dm(e.selector)&&Dm(t.selector)?-1:e._timet._time?-1:0}}function Dm(o){return typeof o=="string"?!1:Array.isArray(o)?o.some(Dm):!!o.isBuiltin}class fK{constructor(){this.referenceProvider=new Ft(this._score.bind(this)),this.renameProvider=new Ft(this._score.bind(this)),this.newSymbolNamesProvider=new Ft(this._score.bind(this)),this.codeActionProvider=new Ft(this._score.bind(this)),this.definitionProvider=new Ft(this._score.bind(this)),this.typeDefinitionProvider=new Ft(this._score.bind(this)),this.declarationProvider=new Ft(this._score.bind(this)),this.implementationProvider=new Ft(this._score.bind(this)),this.documentSymbolProvider=new Ft(this._score.bind(this)),this.inlayHintsProvider=new Ft(this._score.bind(this)),this.colorProvider=new Ft(this._score.bind(this)),this.codeLensProvider=new Ft(this._score.bind(this)),this.documentFormattingEditProvider=new Ft(this._score.bind(this)),this.documentRangeFormattingEditProvider=new Ft(this._score.bind(this)),this.onTypeFormattingEditProvider=new Ft(this._score.bind(this)),this.signatureHelpProvider=new Ft(this._score.bind(this)),this.hoverProvider=new Ft(this._score.bind(this)),this.documentHighlightProvider=new Ft(this._score.bind(this)),this.multiDocumentHighlightProvider=new Ft(this._score.bind(this)),this.selectionRangeProvider=new Ft(this._score.bind(this)),this.foldingRangeProvider=new Ft(this._score.bind(this)),this.linkProvider=new Ft(this._score.bind(this)),this.inlineCompletionsProvider=new Ft(this._score.bind(this)),this.inlineEditProvider=new Ft(this._score.bind(this)),this.completionProvider=new Ft(this._score.bind(this)),this.linkedEditingRangeProvider=new Ft(this._score.bind(this)),this.documentRangeSemanticTokensProvider=new Ft(this._score.bind(this)),this.documentSemanticTokensProvider=new Ft(this._score.bind(this)),this.documentDropEditProvider=new Ft(this._score.bind(this)),this.documentPasteEditProvider=new Ft(this._score.bind(this))}_score(e){return this._notebookTypeResolver?.(e)}}Qe(Se,fK,1);function yT(o){return`--vscode-${o.replace(/\./g,"-")}`}function oe(o){return`var(${yT(o)})`}function gK(o,e){return`var(${yT(o)}, ${e})`}function mK(o){return o!==null&&typeof o=="object"&&"light"in o&&"dark"in o}const A3={ColorContribution:"base.contributions.colors"},pK="default";class _K{constructor(){this._onDidChangeSchema=new A,this.onDidChangeSchema=this._onDidChangeSchema.event,this.colorSchema={type:"object",properties:{}},this.colorReferenceSchema={type:"string",enum:[],enumDescriptions:[]},this.colorsById={}}registerColor(e,t,i,n=!1,s){const r={id:e,description:i,defaults:t,needsTransparency:n,deprecationMessage:s};this.colorsById[e]=r;const a={type:"string",format:"color-hex",defaultSnippets:[{body:"${1:#ff0000}"}]};return s&&(a.deprecationMessage=s),n&&(a.pattern="^#(?:(?[0-9a-fA-f]{3}[0-9a-eA-E])|(?:[0-9a-fA-F]{6}(?:(?![fF]{2})(?:[0-9a-fA-F]{2}))))?$",a.patternErrorMessage=m("transparecyRequired","This color must be transparent or it will obscure content")),this.colorSchema.properties[e]={description:i,oneOf:[a,{type:"string",const:pK,description:m("useDefault","Use the default color.")}]},this.colorReferenceSchema.enum.push(e),this.colorReferenceSchema.enumDescriptions.push(i),this._onDidChangeSchema.fire(),e}getColors(){return Object.keys(this.colorsById).map(e=>this.colorsById[e])}resolveDefaultColor(e,t){const i=this.colorsById[e];if(i?.defaults){const n=mK(i.defaults)?i.defaults[t.type]:i.defaults;return jo(n,t)}}getColorSchema(){return this.colorSchema}toString(){const e=(t,i)=>{const n=t.indexOf(".")===-1?0:1,s=i.indexOf(".")===-1?0:1;return n!==s?n-s:t.localeCompare(i)};return Object.keys(this.colorsById).sort(e).map(t=>`- \`${t}\`: ${this.colorsById[t].description}`).join(` -`)}}const G0=new _K;Bi.add(A3.ColorContribution,G0);function D(o,e,t,i,n){return G0.registerColor(o,e,t,i,n)}function bK(o,e){switch(o.op){case 0:return jo(o.value,e)?.darken(o.factor);case 1:return jo(o.value,e)?.lighten(o.factor);case 2:return jo(o.value,e)?.transparent(o.factor);case 3:{const t=jo(o.background,e);return t?jo(o.value,e)?.makeOpaque(t):jo(o.value,e)}case 4:for(const t of o.values){const i=jo(t,e);if(i)return i}return;case 6:return jo(e.defines(o.if)?o.then:o.else,e);case 5:{const t=jo(o.value,e);if(!t)return;const i=jo(o.background,e);return i?t.isDarkerThan(i)?q.getLighterColor(t,i,o.factor).transparent(o.transparency):q.getDarkerColor(t,i,o.factor).transparent(o.transparency):t.transparent(o.factor*o.transparency)}default:throw z0()}}function ru(o,e){return{op:0,value:o,factor:e}}function pr(o,e){return{op:1,value:o,factor:e}}function Ae(o,e){return{op:2,value:o,factor:e}}function t_(...o){return{op:4,values:o}}function CK(o,e,t){return{op:6,if:o,then:e,else:t}}function SA(o,e,t,i){return{op:5,value:o,background:e,factor:t,transparency:i}}function jo(o,e){if(o!==null){if(typeof o=="string")return o[0]==="#"?q.fromHex(o):e.getColor(o);if(o instanceof q)return o;if(typeof o=="object")return bK(o,e)}}const P3="vscode://schemas/workbench-colors",O3=Bi.as(K0.JSONContribution);O3.registerSchema(P3,G0.getColorSchema());const LA=new ci(()=>O3.notifySchemaChanged(P3),200);G0.onDidChangeSchema(()=>{LA.isScheduled()||LA.schedule()});const Pe=D("foreground",{dark:"#CCCCCC",light:"#616161",hcDark:"#FFFFFF",hcLight:"#292929"},m("foreground","Overall foreground color. This color is only used if not overridden by a component."));D("disabledForeground",{dark:"#CCCCCC80",light:"#61616180",hcDark:"#A5A5A5",hcLight:"#7F7F7F"},m("disabledForeground","Overall foreground for disabled elements. This color is only used if not overridden by a component."));D("errorForeground",{dark:"#F48771",light:"#A1260D",hcDark:"#F48771",hcLight:"#B5200D"},m("errorForeground","Overall foreground color for error messages. This color is only used if not overridden by a component."));D("descriptionForeground",{light:"#717171",dark:Ae(Pe,.7),hcDark:Ae(Pe,.7),hcLight:Ae(Pe,.7)},m("descriptionForeground","Foreground color for description text providing additional information, for example for a label."));const Lk=D("icon.foreground",{dark:"#C5C5C5",light:"#424242",hcDark:"#FFFFFF",hcLight:"#292929"},m("iconForeground","The default color for icons in the workbench.")),ga=D("focusBorder",{dark:"#007FD4",light:"#0090F1",hcDark:"#F38518",hcLight:"#006BBD"},m("focusBorder","Overall border color for focused elements. This color is only used if not overridden by a component.")),Ye=D("contrastBorder",{light:null,dark:null,hcDark:"#6FC3DF",hcLight:"#0F4A85"},m("contrastBorder","An extra border around elements to separate them from others for greater contrast.")),Ut=D("contrastActiveBorder",{light:null,dark:null,hcDark:ga,hcLight:ga},m("activeContrastBorder","An extra border around active elements to separate them from others for greater contrast."));D("selection.background",null,m("selectionBackground","The background color of text selections in the workbench (e.g. for input fields or text areas). Note that this does not apply to selections within the editor."));const vK=D("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},m("textLinkForeground","Foreground color for links in text."));D("textLink.activeForeground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},m("textLinkActiveForeground","Foreground color for links in text when clicked on and on mouse hover."));D("textSeparator.foreground",{light:"#0000002e",dark:"#ffffff2e",hcDark:q.black,hcLight:"#292929"},m("textSeparatorForeground","Color for text separators."));D("textPreformat.foreground",{light:"#A31515",dark:"#D7BA7D",hcDark:"#000000",hcLight:"#FFFFFF"},m("textPreformatForeground","Foreground color for preformatted text segments."));D("textPreformat.background",{light:"#0000001A",dark:"#FFFFFF1A",hcDark:"#FFFFFF",hcLight:"#09345f"},m("textPreformatBackground","Background color for preformatted text segments."));D("textBlockQuote.background",{light:"#f2f2f2",dark:"#222222",hcDark:null,hcLight:"#F2F2F2"},m("textBlockQuoteBackground","Background color for block quotes in text."));D("textBlockQuote.border",{light:"#007acc80",dark:"#007acc80",hcDark:q.white,hcLight:"#292929"},m("textBlockQuoteBorder","Border color for block quotes in text."));D("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hcDark:q.black,hcLight:"#F2F2F2"},m("textCodeBlockBackground","Background color for code blocks in text."));D("sash.hoverBorder",ga,m("sashActiveBorder","Border color of active sashes."));const T1=D("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hcDark:q.black,hcLight:"#0F4A85"},m("badgeBackground","Badge background color. Badges are small information labels, e.g. for search results count.")),wK=D("badge.foreground",{dark:q.white,light:"#333",hcDark:q.white,hcLight:q.white},m("badgeForeground","Badge foreground color. Badges are small information labels, e.g. for search results count.")),ST=D("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hcDark:null,hcLight:null},m("scrollbarShadow","Scrollbar shadow to indicate that the view is scrolled.")),F3=D("scrollbarSlider.background",{dark:q.fromHex("#797979").transparent(.4),light:q.fromHex("#646464").transparent(.4),hcDark:Ae(Ye,.6),hcLight:Ae(Ye,.4)},m("scrollbarSliderBackground","Scrollbar slider background color.")),B3=D("scrollbarSlider.hoverBackground",{dark:q.fromHex("#646464").transparent(.7),light:q.fromHex("#646464").transparent(.7),hcDark:Ae(Ye,.8),hcLight:Ae(Ye,.8)},m("scrollbarSliderHoverBackground","Scrollbar slider background color when hovering.")),W3=D("scrollbarSlider.activeBackground",{dark:q.fromHex("#BFBFBF").transparent(.4),light:q.fromHex("#000000").transparent(.6),hcDark:Ye,hcLight:Ye},m("scrollbarSliderActiveBackground","Scrollbar slider background color when clicked on.")),yK=D("progressBar.background",{dark:q.fromHex("#0E70C0"),light:q.fromHex("#0E70C0"),hcDark:Ye,hcLight:Ye},m("progressBarBackground","Background color of the progress bar that can show for long running operations.")),Oo=D("editor.background",{light:"#ffffff",dark:"#1E1E1E",hcDark:q.black,hcLight:q.white},m("editorBackground","Editor background color.")),Sa=D("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:q.white,hcLight:Pe},m("editorForeground","Editor default foreground color."));D("editorStickyScroll.background",Oo,m("editorStickyScrollBackground","Background color of sticky scroll in the editor"));D("editorStickyScrollHover.background",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:q.fromHex("#0F4A85").transparent(.1)},m("editorStickyScrollHoverBackground","Background color of sticky scroll on hover in the editor"));D("editorStickyScroll.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("editorStickyScrollBorder","Border color of sticky scroll in the editor"));D("editorStickyScroll.shadow",ST,m("editorStickyScrollShadow"," Shadow color of sticky scroll in the editor"));const no=D("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:q.white},m("editorWidgetBackground","Background color of editor widgets, such as find/replace.")),Z0=D("editorWidget.foreground",Pe,m("editorWidgetForeground","Foreground color of editor widgets, such as find/replace.")),LT=D("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hcDark:Ye,hcLight:Ye},m("editorWidgetBorder","Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget."));D("editorWidget.resizeBorder",null,m("editorWidgetResizeBorder","Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget."));D("editorError.background",null,m("editorError.background","Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);const Y0=D("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},m("editorError.foreground","Foreground color of error squigglies in the editor.")),SK=D("editorError.border",{dark:null,light:null,hcDark:q.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},m("errorBorder","If set, color of double underlines for errors in the editor.")),LK=D("editorWarning.background",null,m("editorWarning.background","Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),Il=D("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD370",hcLight:"#895503"},m("editorWarning.foreground","Foreground color of warning squigglies in the editor.")),i_=D("editorWarning.border",{dark:null,light:null,hcDark:q.fromHex("#FFCC00").transparent(.8),hcLight:q.fromHex("#FFCC00").transparent(.8)},m("warningBorder","If set, color of double underlines for warnings in the editor."));D("editorInfo.background",null,m("editorInfo.background","Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);const ma=D("editorInfo.foreground",{dark:"#3794FF",light:"#1a85ff",hcDark:"#3794FF",hcLight:"#1a85ff"},m("editorInfo.foreground","Foreground color of info squigglies in the editor.")),n_=D("editorInfo.border",{dark:null,light:null,hcDark:q.fromHex("#3794FF").transparent(.8),hcLight:"#292929"},m("infoBorder","If set, color of double underlines for infos in the editor.")),xK=D("editorHint.foreground",{dark:q.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},m("editorHint.foreground","Foreground color of hint squigglies in the editor."));D("editorHint.border",{dark:null,light:null,hcDark:q.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},m("hintBorder","If set, color of double underlines for hints in the editor."));const kK=D("editorLink.activeForeground",{dark:"#4E94CE",light:q.blue,hcDark:q.cyan,hcLight:"#292929"},m("activeLinkForeground","Color of active links.")),tf=D("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},m("editorSelectionBackground","Color of the editor selection.")),DK=D("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:q.white},m("editorSelectionForeground","Color of the selected text for high contrast.")),H3=D("editor.inactiveSelectionBackground",{light:Ae(tf,.5),dark:Ae(tf,.5),hcDark:Ae(tf,.7),hcLight:Ae(tf,.5)},m("editorInactiveSelection","Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),V3=D("editor.selectionHighlightBackground",{light:SA(tf,Oo,.3,.6),dark:SA(tf,Oo,.3,.6),hcDark:null,hcLight:null},m("editorSelectionHighlight","Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:Ut,hcLight:Ut},m("editorSelectionHighlightBorder","Border color for regions with the same content as the selection."));D("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},m("editorFindMatch","Color of the current search match."));D("editor.findMatchForeground",null,m("editorFindMatchForeground","Text color of the current search match."));const ll=D("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},m("findMatchHighlight","Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.findMatchHighlightForeground",null,m("findMatchHighlightForeground","Foreground color of the other search matches."),!0);D("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},m("findRangeHighlight","Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.findMatchBorder",{light:null,dark:null,hcDark:Ut,hcLight:Ut},m("editorFindMatchBorder","Border color of the current search match."));const Ud=D("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:Ut,hcLight:Ut},m("findMatchHighlightBorder","Border color of the other search matches."));D("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:Ae(Ut,.4),hcLight:Ae(Ut,.4)},m("findRangeHighlightBorder","Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},m("hoverHighlight","Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0);const RC=D("editorHoverWidget.background",no,m("hoverBackground","Background color of the editor hover."));D("editorHoverWidget.foreground",Z0,m("hoverForeground","Foreground color of the editor hover."));const z3=D("editorHoverWidget.border",LT,m("hoverBorder","Border color of the editor hover."));D("editorHoverWidget.statusBarBackground",{dark:pr(RC,.2),light:ru(RC,.05),hcDark:no,hcLight:no},m("statusBarBackground","Background color of the editor hover status bar."));const xT=D("editorInlayHint.foreground",{dark:"#969696",light:"#969696",hcDark:q.white,hcLight:q.black},m("editorInlayHintForeground","Foreground color of inline hints")),kT=D("editorInlayHint.background",{dark:Ae(T1,.1),light:Ae(T1,.1),hcDark:Ae(q.white,.1),hcLight:Ae(T1,.1)},m("editorInlayHintBackground","Background color of inline hints")),IK=D("editorInlayHint.typeForeground",xT,m("editorInlayHintForegroundTypes","Foreground color of inline hints for types")),EK=D("editorInlayHint.typeBackground",kT,m("editorInlayHintBackgroundTypes","Background color of inline hints for types")),NK=D("editorInlayHint.parameterForeground",xT,m("editorInlayHintForegroundParameter","Foreground color of inline hints for parameters")),TK=D("editorInlayHint.parameterBackground",kT,m("editorInlayHintBackgroundParameter","Background color of inline hints for parameters")),MK=D("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},m("editorLightBulbForeground","The color used for the lightbulb actions icon."));D("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("editorLightBulbAutoFixForeground","The color used for the lightbulb auto fix actions icon."));D("editorLightBulbAi.foreground",MK,m("editorLightBulbAiForeground","The color used for the lightbulb AI icon."));D("editor.snippetTabstopHighlightBackground",{dark:new q(new qe(124,124,124,.3)),light:new q(new qe(10,50,100,.2)),hcDark:new q(new qe(124,124,124,.3)),hcLight:new q(new qe(10,50,100,.2))},m("snippetTabstopHighlightBackground","Highlight background color of a snippet tabstop."));D("editor.snippetTabstopHighlightBorder",null,m("snippetTabstopHighlightBorder","Highlight border color of a snippet tabstop."));D("editor.snippetFinalTabstopHighlightBackground",null,m("snippetFinalTabstopHighlightBackground","Highlight background color of the final tabstop of a snippet."));D("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new q(new qe(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},m("snippetFinalTabstopHighlightBorder","Highlight border color of the final tabstop of a snippet."));const xk=new q(new qe(155,185,85,.2)),kk=new q(new qe(255,0,0,.2)),RK=D("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c40",hcDark:null,hcLight:null},m("diffEditorInserted","Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),AK=D("diffEditor.removedTextBackground",{dark:"#ff000033",light:"#ff000033",hcDark:null,hcLight:null},m("diffEditorRemoved","Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0);D("diffEditor.insertedLineBackground",{dark:xk,light:xk,hcDark:null,hcLight:null},m("diffEditorInsertedLines","Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0);D("diffEditor.removedLineBackground",{dark:kk,light:kk,hcDark:null,hcLight:null},m("diffEditorRemovedLines","Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0);D("diffEditorGutter.insertedLineBackground",null,m("diffEditorInsertedLineGutter","Background color for the margin where lines got inserted."));D("diffEditorGutter.removedLineBackground",null,m("diffEditorRemovedLineGutter","Background color for the margin where lines got removed."));const PK=D("diffEditorOverview.insertedForeground",null,m("diffEditorOverviewInserted","Diff overview ruler foreground for inserted content.")),OK=D("diffEditorOverview.removedForeground",null,m("diffEditorOverviewRemoved","Diff overview ruler foreground for removed content."));D("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},m("diffEditorInsertedOutline","Outline color for the text that got inserted."));D("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},m("diffEditorRemovedOutline","Outline color for text that got removed."));D("diffEditor.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("diffEditorBorder","Border color between the two text editors."));D("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},m("diffDiagonalFill","Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views."));D("diffEditor.unchangedRegionBackground","sideBar.background",m("diffEditor.unchangedRegionBackground","The background color of unchanged blocks in the diff editor."));D("diffEditor.unchangedRegionForeground","foreground",m("diffEditor.unchangedRegionForeground","The foreground color of unchanged blocks in the diff editor."));D("diffEditor.unchangedCodeBackground",{dark:"#74747429",light:"#b8b8b829",hcDark:null,hcLight:null},m("diffEditor.unchangedCodeBackground","The background color of unchanged code in the diff editor."));const q_=D("widget.shadow",{dark:Ae(q.black,.36),light:Ae(q.black,.16),hcDark:null,hcLight:null},m("widgetShadow","Shadow color of widgets such as find/replace inside the editor.")),FK=D("widget.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("widgetBorder","Border color of widgets such as find/replace inside the editor.")),xA=D("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},m("toolbarHoverBackground","Toolbar background when hovering over actions using the mouse"));D("toolbar.hoverOutline",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("toolbarHoverOutline","Toolbar outline when hovering over actions using the mouse"));D("toolbar.activeBackground",{dark:pr(xA,.1),light:ru(xA,.1),hcDark:null,hcLight:null},m("toolbarActiveBackground","Toolbar background when holding the mouse over actions"));const BK=D("breadcrumb.foreground",Ae(Pe,.8),m("breadcrumbsFocusForeground","Color of focused breadcrumb items.")),WK=D("breadcrumb.background",Oo,m("breadcrumbsBackground","Background color of breadcrumb items.")),kA=D("breadcrumb.focusForeground",{light:ru(Pe,.2),dark:pr(Pe,.1),hcDark:pr(Pe,.1),hcLight:pr(Pe,.1)},m("breadcrumbsFocusForeground","Color of focused breadcrumb items.")),HK=D("breadcrumb.activeSelectionForeground",{light:ru(Pe,.2),dark:pr(Pe,.1),hcDark:pr(Pe,.1),hcLight:pr(Pe,.1)},m("breadcrumbsSelectedForeground","Color of selected breadcrumb items."));D("breadcrumbPicker.background",no,m("breadcrumbsSelectedBackground","Background color of breadcrumb item picker."));const U3=.5,DA=q.fromHex("#40C8AE").transparent(U3),IA=q.fromHex("#40A6FF").transparent(U3),EA=q.fromHex("#606060").transparent(.4),DT=.4,ug=1,Dk=D("merge.currentHeaderBackground",{dark:DA,light:DA,hcDark:null,hcLight:null},m("mergeCurrentHeaderBackground","Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);D("merge.currentContentBackground",Ae(Dk,DT),m("mergeCurrentContentBackground","Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const Ik=D("merge.incomingHeaderBackground",{dark:IA,light:IA,hcDark:null,hcLight:null},m("mergeIncomingHeaderBackground","Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);D("merge.incomingContentBackground",Ae(Ik,DT),m("mergeIncomingContentBackground","Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const Ek=D("merge.commonHeaderBackground",{dark:EA,light:EA,hcDark:null,hcLight:null},m("mergeCommonHeaderBackground","Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);D("merge.commonContentBackground",Ae(Ek,DT),m("mergeCommonContentBackground","Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const fg=D("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},m("mergeBorder","Border color on headers and the splitter in inline merge-conflicts."));D("editorOverviewRuler.currentContentForeground",{dark:Ae(Dk,ug),light:Ae(Dk,ug),hcDark:fg,hcLight:fg},m("overviewRulerCurrentContentForeground","Current overview ruler foreground for inline merge-conflicts."));D("editorOverviewRuler.incomingContentForeground",{dark:Ae(Ik,ug),light:Ae(Ik,ug),hcDark:fg,hcLight:fg},m("overviewRulerIncomingContentForeground","Incoming overview ruler foreground for inline merge-conflicts."));D("editorOverviewRuler.commonContentForeground",{dark:Ae(Ek,ug),light:Ae(Ek,ug),hcDark:fg,hcLight:fg},m("overviewRulerCommonContentForeground","Common ancestor overview ruler foreground for inline merge-conflicts."));D("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:"#AB5A00"},m("overviewRulerFindMatchForeground","Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0);D("editorOverviewRuler.selectionHighlightForeground","#A0A0A0CC",m("overviewRulerSelectionHighlightForeground","Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0);const VK=D("problemsErrorIcon.foreground",Y0,m("problemsErrorIconForeground","The color used for the problems error icon.")),zK=D("problemsWarningIcon.foreground",Il,m("problemsWarningIconForeground","The color used for the problems warning icon.")),UK=D("problemsInfoIcon.foreground",ma,m("problemsInfoIconForeground","The color used for the problems info icon.")),$K=D("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hcDark:"#AB5A00",hcLight:"#0F4A85"},m("minimapFindMatchHighlight","Minimap marker color for find matches."),!0);D("minimap.selectionOccurrenceHighlight",{light:"#c9c9c9",dark:"#676767",hcDark:"#ffffff",hcLight:"#0F4A85"},m("minimapSelectionOccurrenceHighlight","Minimap marker color for repeating editor selections."),!0);const NA=D("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hcDark:"#ffffff",hcLight:"#0F4A85"},m("minimapSelectionHighlight","Minimap marker color for the editor selection."),!0),KK=D("minimap.infoHighlight",{dark:ma,light:ma,hcDark:n_,hcLight:n_},m("minimapInfo","Minimap marker color for infos.")),jK=D("minimap.warningHighlight",{dark:Il,light:Il,hcDark:i_,hcLight:i_},m("overviewRuleWarning","Minimap marker color for warnings.")),qK=D("minimap.errorHighlight",{dark:new q(new qe(255,18,18,.7)),light:new q(new qe(255,18,18,.7)),hcDark:new q(new qe(255,50,50,1)),hcLight:"#B5200D"},m("minimapError","Minimap marker color for errors.")),GK=D("minimap.background",null,m("minimapBackground","Minimap background color.")),ZK=D("minimap.foregroundOpacity",q.fromHex("#000f"),m("minimapForegroundOpacity",'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.'));D("minimapSlider.background",Ae(F3,.5),m("minimapSliderBackground","Minimap slider background color."));D("minimapSlider.hoverBackground",Ae(B3,.5),m("minimapSliderHoverBackground","Minimap slider background color when hovering."));D("minimapSlider.activeBackground",Ae(W3,.5),m("minimapSliderActiveBackground","Minimap slider background color when clicked on."));D("charts.foreground",Pe,m("chartsForeground","The foreground color used in charts."));D("charts.lines",Ae(Pe,.5),m("chartsLines","The color used for horizontal lines in charts."));D("charts.red",Y0,m("chartsRed","The red color used in chart visualizations."));D("charts.blue",ma,m("chartsBlue","The blue color used in chart visualizations."));D("charts.yellow",Il,m("chartsYellow","The yellow color used in chart visualizations."));D("charts.orange",$K,m("chartsOrange","The orange color used in chart visualizations."));D("charts.green",{dark:"#89D185",light:"#388A34",hcDark:"#89D185",hcLight:"#374e06"},m("chartsGreen","The green color used in chart visualizations."));D("charts.purple",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("chartsPurple","The purple color used in chart visualizations."));const YK=D("input.background",{dark:"#3C3C3C",light:q.white,hcDark:q.black,hcLight:q.white},m("inputBoxBackground","Input box background.")),QK=D("input.foreground",Pe,m("inputBoxForeground","Input box foreground.")),XK=D("input.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("inputBoxBorder","Input box border.")),$3=D("inputOption.activeBorder",{dark:"#007ACC",light:"#007ACC",hcDark:Ye,hcLight:Ye},m("inputBoxActiveOptionBorder","Border color of activated options in input fields.")),JK=D("inputOption.hoverBackground",{dark:"#5a5d5e80",light:"#b8b8b850",hcDark:null,hcLight:null},m("inputOption.hoverBackground","Background color of activated options in input fields.")),IT=D("inputOption.activeBackground",{dark:Ae(ga,.4),light:Ae(ga,.2),hcDark:q.transparent,hcLight:q.transparent},m("inputOption.activeBackground","Background hover color of options in input fields.")),K3=D("inputOption.activeForeground",{dark:q.white,light:q.black,hcDark:Pe,hcLight:Pe},m("inputOption.activeForeground","Foreground color of activated options in input fields."));D("input.placeholderForeground",{light:Ae(Pe,.5),dark:Ae(Pe,.5),hcDark:Ae(Pe,.7),hcLight:Ae(Pe,.7)},m("inputPlaceholderForeground","Input box foreground color for placeholder text."));const ej=D("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hcDark:q.black,hcLight:q.white},m("inputValidationInfoBackground","Input validation background color for information severity.")),tj=D("inputValidation.infoForeground",{dark:null,light:null,hcDark:null,hcLight:Pe},m("inputValidationInfoForeground","Input validation foreground color for information severity.")),ij=D("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hcDark:Ye,hcLight:Ye},m("inputValidationInfoBorder","Input validation border color for information severity.")),nj=D("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hcDark:q.black,hcLight:q.white},m("inputValidationWarningBackground","Input validation background color for warning severity.")),sj=D("inputValidation.warningForeground",{dark:null,light:null,hcDark:null,hcLight:Pe},m("inputValidationWarningForeground","Input validation foreground color for warning severity.")),oj=D("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hcDark:Ye,hcLight:Ye},m("inputValidationWarningBorder","Input validation border color for warning severity.")),rj=D("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hcDark:q.black,hcLight:q.white},m("inputValidationErrorBackground","Input validation background color for error severity.")),aj=D("inputValidation.errorForeground",{dark:null,light:null,hcDark:null,hcLight:Pe},m("inputValidationErrorForeground","Input validation foreground color for error severity.")),lj=D("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hcDark:Ye,hcLight:Ye},m("inputValidationErrorBorder","Input validation border color for error severity.")),Q0=D("dropdown.background",{dark:"#3C3C3C",light:q.white,hcDark:q.black,hcLight:q.white},m("dropdownBackground","Dropdown background.")),cj=D("dropdown.listBackground",{dark:null,light:null,hcDark:q.black,hcLight:q.white},m("dropdownListBackground","Dropdown list background.")),ET=D("dropdown.foreground",{dark:"#F0F0F0",light:Pe,hcDark:q.white,hcLight:Pe},m("dropdownForeground","Dropdown foreground.")),NT=D("dropdown.border",{dark:Q0,light:"#CECECE",hcDark:Ye,hcLight:Ye},m("dropdownBorder","Dropdown border.")),j3=D("button.foreground",q.white,m("buttonForeground","Button foreground color.")),dj=D("button.separator",Ae(j3,.4),m("buttonSeparator","Button separator color.")),Im=D("button.background",{dark:"#0E639C",light:"#007ACC",hcDark:null,hcLight:"#0F4A85"},m("buttonBackground","Button background color.")),hj=D("button.hoverBackground",{dark:pr(Im,.2),light:ru(Im,.2),hcDark:Im,hcLight:Im},m("buttonHoverBackground","Button background color when hovering.")),uj=D("button.border",Ye,m("buttonBorder","Button border color.")),fj=D("button.secondaryForeground",{dark:q.white,light:q.white,hcDark:q.white,hcLight:Pe},m("buttonSecondaryForeground","Secondary button foreground color.")),Nk=D("button.secondaryBackground",{dark:"#3A3D41",light:"#5F6A79",hcDark:null,hcLight:q.white},m("buttonSecondaryBackground","Secondary button background color.")),gj=D("button.secondaryHoverBackground",{dark:pr(Nk,.2),light:ru(Nk,.2),hcDark:null,hcLight:null},m("buttonSecondaryHoverBackground","Secondary button background color when hovering.")),Em=D("radio.activeForeground",K3,m("radioActiveForeground","Foreground color of active radio option.")),mj=D("radio.activeBackground",IT,m("radioBackground","Background color of active radio option.")),pj=D("radio.activeBorder",$3,m("radioActiveBorder","Border color of the active radio option.")),_j=D("radio.inactiveForeground",null,m("radioInactiveForeground","Foreground color of inactive radio option.")),bj=D("radio.inactiveBackground",null,m("radioInactiveBackground","Background color of inactive radio option.")),Cj=D("radio.inactiveBorder",{light:Ae(Em,.2),dark:Ae(Em,.2),hcDark:Ae(Em,.4),hcLight:Ae(Em,.2)},m("radioInactiveBorder","Border color of the inactive radio option.")),vj=D("radio.inactiveHoverBackground",JK,m("radioHoverBackground","Background color of inactive active radio option when hovering.")),wj=D("checkbox.background",Q0,m("checkbox.background","Background color of checkbox widget."));D("checkbox.selectBackground",no,m("checkbox.select.background","Background color of checkbox widget when the element it's in is selected."));const yj=D("checkbox.foreground",ET,m("checkbox.foreground","Foreground color of checkbox widget.")),Sj=D("checkbox.border",NT,m("checkbox.border","Border color of checkbox widget."));D("checkbox.selectBorder",Lk,m("checkbox.select.border","Border color of checkbox widget when the element it's in is selected."));const Lj=D("keybindingLabel.background",{dark:new q(new qe(128,128,128,.17)),light:new q(new qe(221,221,221,.4)),hcDark:q.transparent,hcLight:q.transparent},m("keybindingLabelBackground","Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),xj=D("keybindingLabel.foreground",{dark:q.fromHex("#CCCCCC"),light:q.fromHex("#555555"),hcDark:q.white,hcLight:Pe},m("keybindingLabelForeground","Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),kj=D("keybindingLabel.border",{dark:new q(new qe(51,51,51,.6)),light:new q(new qe(204,204,204,.4)),hcDark:new q(new qe(111,195,223)),hcLight:Ye},m("keybindingLabelBorder","Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),Dj=D("keybindingLabel.bottomBorder",{dark:new q(new qe(68,68,68,.6)),light:new q(new qe(187,187,187,.4)),hcDark:new q(new qe(111,195,223)),hcLight:Pe},m("keybindingLabelBottomBorder","Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.")),Ij=D("list.focusBackground",null,m("listFocusBackground","List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Ej=D("list.focusForeground",null,m("listFocusForeground","List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Nj=D("list.focusOutline",{dark:ga,light:ga,hcDark:Ut,hcLight:Ut},m("listFocusOutline","List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Tj=D("list.focusAndSelectionOutline",null,m("listFocusAndSelectionOutline","List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not.")),Bh=D("list.activeSelectionBackground",{dark:"#04395E",light:"#0060C0",hcDark:null,hcLight:q.fromHex("#0F4A85").transparent(.1)},m("listActiveSelectionBackground","List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),s_=D("list.activeSelectionForeground",{dark:q.white,light:q.white,hcDark:null,hcLight:null},m("listActiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),q3=D("list.activeSelectionIconForeground",null,m("listActiveSelectionIconForeground","List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Mj=D("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hcDark:null,hcLight:q.fromHex("#0F4A85").transparent(.1)},m("listInactiveSelectionBackground","List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Rj=D("list.inactiveSelectionForeground",null,m("listInactiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Aj=D("list.inactiveSelectionIconForeground",null,m("listInactiveSelectionIconForeground","List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Pj=D("list.inactiveFocusBackground",null,m("listInactiveFocusBackground","List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Oj=D("list.inactiveFocusOutline",null,m("listInactiveFocusOutline","List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),G3=D("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:q.white.transparent(.1),hcLight:q.fromHex("#0F4A85").transparent(.1)},m("listHoverBackground","List/Tree background when hovering over items using the mouse.")),Z3=D("list.hoverForeground",null,m("listHoverForeground","List/Tree foreground when hovering over items using the mouse.")),Fj=D("list.dropBackground",{dark:"#062F4A",light:"#D6EBFF",hcDark:null,hcLight:null},m("listDropBackground","List/Tree drag and drop background when moving items over other items when using the mouse.")),Bj=D("list.dropBetweenBackground",{dark:Lk,light:Lk,hcDark:null,hcLight:null},m("listDropBetweenBackground","List/Tree drag and drop border color when moving items between items when using the mouse.")),Nm=D("list.highlightForeground",{dark:"#2AAAFF",light:"#0066BF",hcDark:ga,hcLight:ga},m("highlight","List/Tree foreground color of the match highlights when searching inside the list/tree.")),Wj=D("list.focusHighlightForeground",{dark:Nm,light:CK(Bh,Nm,"#BBE7FF"),hcDark:Nm,hcLight:Nm},m("listFocusHighlightForeground","List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree."));D("list.invalidItemForeground",{dark:"#B89500",light:"#B89500",hcDark:"#B89500",hcLight:"#B5200D"},m("invalidItemForeground","List/Tree foreground color for invalid items, for example an unresolved root in explorer."));D("list.errorForeground",{dark:"#F88070",light:"#B01011",hcDark:null,hcLight:null},m("listErrorForeground","Foreground color of list items containing errors."));D("list.warningForeground",{dark:"#CCA700",light:"#855F00",hcDark:null,hcLight:null},m("listWarningForeground","Foreground color of list items containing warnings."));const Hj=D("listFilterWidget.background",{light:ru(no,0),dark:pr(no,0),hcDark:no,hcLight:no},m("listFilterWidgetBackground","Background color of the type filter widget in lists and trees.")),Vj=D("listFilterWidget.outline",{dark:q.transparent,light:q.transparent,hcDark:"#f38518",hcLight:"#007ACC"},m("listFilterWidgetOutline","Outline color of the type filter widget in lists and trees.")),zj=D("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hcDark:Ye,hcLight:Ye},m("listFilterWidgetNoMatchesOutline","Outline color of the type filter widget in lists and trees, when there are no matches.")),Uj=D("listFilterWidget.shadow",q_,m("listFilterWidgetShadow","Shadow color of the type filter widget in lists and trees."));D("list.filterMatchBackground",{dark:ll,light:ll,hcDark:null,hcLight:null},m("listFilterMatchHighlight","Background color of the filtered match."));D("list.filterMatchBorder",{dark:Ud,light:Ud,hcDark:Ye,hcLight:Ut},m("listFilterMatchHighlightBorder","Border color of the filtered match."));D("list.deemphasizedForeground",{dark:"#8C8C8C",light:"#8E8E90",hcDark:"#A7A8A9",hcLight:"#666666"},m("listDeemphasizedForeground","List/Tree foreground color for items that are deemphasized."));const Y3=D("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hcDark:"#a9a9a9",hcLight:"#a5a5a5"},m("treeIndentGuidesStroke","Tree stroke color for the indentation guides.")),$j=D("tree.inactiveIndentGuidesStroke",Ae(Y3,.4),m("treeInactiveIndentGuidesStroke","Tree stroke color for the indentation guides that are not active.")),Kj=D("tree.tableColumnsBorder",{dark:"#CCCCCC20",light:"#61616120",hcDark:null,hcLight:null},m("tableColumnsBorder","Table border color between columns.")),jj=D("tree.tableOddRowsBackground",{dark:Ae(Pe,.04),light:Ae(Pe,.04),hcDark:null,hcLight:null},m("tableOddRowsBackgroundColor","Background color for odd table rows."));D("editorActionList.background",no,m("editorActionListBackground","Action List background color."));D("editorActionList.foreground",Z0,m("editorActionListForeground","Action List foreground color."));D("editorActionList.focusForeground",s_,m("editorActionListFocusForeground","Action List foreground color for the focused item."));D("editorActionList.focusBackground",Bh,m("editorActionListFocusBackground","Action List background color for the focused item."));const qj=D("menu.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("menuBorder","Border color of menus.")),Gj=D("menu.foreground",ET,m("menuForeground","Foreground color of menu items.")),Zj=D("menu.background",Q0,m("menuBackground","Background color of menu items.")),Yj=D("menu.selectionForeground",s_,m("menuSelectionForeground","Foreground color of the selected menu item in menus.")),Qj=D("menu.selectionBackground",Bh,m("menuSelectionBackground","Background color of the selected menu item in menus.")),Xj=D("menu.selectionBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("menuSelectionBorder","Border color of the selected menu item in menus.")),Jj=D("menu.separatorBackground",{dark:"#606060",light:"#D4D4D4",hcDark:Ye,hcLight:Ye},m("menuSeparatorBackground","Color of a separator menu item in menus.")),TA=D("quickInput.background",no,m("pickerBackground","Quick picker background color. The quick picker widget is the container for pickers like the command palette.")),eq=D("quickInput.foreground",Z0,m("pickerForeground","Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.")),tq=D("quickInputTitle.background",{dark:new q(new qe(255,255,255,.105)),light:new q(new qe(0,0,0,.06)),hcDark:"#000000",hcLight:q.white},m("pickerTitleBackground","Quick picker title background color. The quick picker widget is the container for pickers like the command palette.")),Q3=D("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hcDark:q.white,hcLight:"#0F4A85"},m("pickerGroupForeground","Quick picker color for grouping labels.")),iq=D("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hcDark:q.white,hcLight:"#0F4A85"},m("pickerGroupBorder","Quick picker color for grouping borders.")),MA=D("quickInput.list.focusBackground",null,"",void 0,m("quickInput.list.focusBackground deprecation","Please use quickInputList.focusBackground instead")),AC=D("quickInputList.focusForeground",s_,m("quickInput.listFocusForeground","Quick picker foreground color for the focused item.")),TT=D("quickInputList.focusIconForeground",q3,m("quickInput.listFocusIconForeground","Quick picker icon foreground color for the focused item.")),PC=D("quickInputList.focusBackground",{dark:t_(MA,Bh),light:t_(MA,Bh),hcDark:null,hcLight:null},m("quickInput.listFocusBackground","Quick picker background color for the focused item."));D("search.resultsInfoForeground",{light:Pe,dark:Ae(Pe,.65),hcDark:Pe,hcLight:Pe},m("search.resultsInfoForeground","Color of the text in the search viewlet's completion message."));D("searchEditor.findMatchBackground",{light:Ae(ll,.66),dark:Ae(ll,.66),hcDark:ll,hcLight:ll},m("searchEditor.queryMatch","Color of the Search Editor query matches."));D("searchEditor.findMatchBorder",{light:Ae(Ud,.66),dark:Ae(Ud,.66),hcDark:Ud,hcLight:Ud},m("searchEditor.editorFindMatchBorder","Border color of the Search Editor query matches."));var nq=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},RA=function(o,e){return function(t,i){e(t,i,o)}};const au=He("hoverService");let gg=class extends z{get delay(){return this.isInstantlyHovering()?0:this._delay}constructor(e,t,i={},n,s){super(),this.placement=e,this.instantHover=t,this.overrideOptions=i,this.configurationService=n,this.hoverService=s,this.lastHoverHideTime=0,this.timeLimit=200,this.hoverDisposables=this._register(new X),this._delay=this.configurationService.getValue("workbench.hover.delay"),this._register(this.configurationService.onDidChangeConfiguration(r=>{r.affectsConfiguration("workbench.hover.delay")&&(this._delay=this.configurationService.getValue("workbench.hover.delay"))}))}showHover(e,t){const i=typeof this.overrideOptions=="function"?this.overrideOptions(e,t):this.overrideOptions;this.hoverDisposables.clear();const n=Ei(e.target)?[e.target]:e.target.targetElements;for(const r of n)this.hoverDisposables.add(jt(r,"keydown",a=>{a.equals(9)&&this.hoverService.hideHover()}));const s=Ei(e.content)?void 0:e.content.toString();return this.hoverService.showHover({...e,...i,persistence:{hideOnKeyDown:!0,...i.persistence},id:s,appearance:{...e.appearance,compact:!0,skipFadeInAnimation:this.isInstantlyHovering(),...i.appearance}},t)}isInstantlyHovering(){return this.instantHover&&Date.now()-this.lastHoverHideTime{try{e.releasePointerCapture(t)}catch{}}))}catch{r=fe(e)}this._hooks.add(U(r,ee.POINTER_MOVE,a=>{if(a.buttons!==i){this.stopMonitoring(!0);return}a.preventDefault(),this._pointerMoveCallback(a)})),this._hooks.add(U(r,ee.POINTER_UP,a=>this.stopMonitoring(!0)))}}function Jt(o,e,t){let i=null,n=null;if(typeof t.value=="function"?(i="value",n=t.value,n.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof t.get=="function"&&(i="get",n=t.get),!n)throw new Error("not supported");const s=`$memoize$${e}`;t[i]=function(...r){return this.hasOwnProperty(s)||Object.defineProperty(this,s,{configurable:!1,enumerable:!1,writable:!1,value:n.apply(this,r)}),this[s]}}var sq=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},St;(function(o){o.Tap="-monaco-gesturetap",o.Change="-monaco-gesturechange",o.Start="-monaco-gesturestart",o.End="-monaco-gesturesend",o.Contextmenu="-monaco-gesturecontextmenu"})(St||(St={}));const $i=class $i extends z{constructor(){super(),this.dispatched=!1,this.targets=new yn,this.ignoreTargets=new yn,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(J.runAndSubscribe(T0,({window:e,disposables:t})=>{t.add(U(e.document,"touchstart",i=>this.onTouchStart(i),{passive:!1})),t.add(U(e.document,"touchend",i=>this.onTouchEnd(e,i))),t.add(U(e.document,"touchmove",i=>this.onTouchMove(i),{passive:!1}))},{window:_t,disposables:this._store}))}static addTarget(e){if(!$i.isTouchDevice())return z.None;$i.INSTANCE||($i.INSTANCE=new $i);const t=$i.INSTANCE.targets.push(e);return _e(t)}static ignoreTarget(e){if(!$i.isTouchDevice())return z.None;$i.INSTANCE||($i.INSTANCE=new $i);const t=$i.INSTANCE.ignoreTargets.push(e);return _e(t)}static isTouchDevice(){return"ontouchstart"in _t||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(e){const t=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let i=0,n=e.targetTouches.length;i=$i.HOLD_DELAY&&Math.abs(l.initialPageX-Gs(l.rollingPageX))<30&&Math.abs(l.initialPageY-Gs(l.rollingPageY))<30){const d=this.newGestureEvent(St.Contextmenu,l.initialTarget);d.pageX=Gs(l.rollingPageX),d.pageY=Gs(l.rollingPageY),this.dispatchEvent(d)}else if(n===1){const d=Gs(l.rollingPageX),h=Gs(l.rollingPageY),u=Gs(l.rollingTimestamps)-l.rollingTimestamps[0],f=d-l.rollingPageX[0],g=h-l.rollingPageY[0],p=[...this.targets].filter(_=>l.initialTarget instanceof Node&&_.contains(l.initialTarget));this.inertia(e,p,i,Math.abs(f)/u,f>0?1:-1,d,Math.abs(g)/u,g>0?1:-1,h)}this.dispatchEvent(this.newGestureEvent(St.End,l.initialTarget)),delete this.activeTouches[a.identifier]}this.dispatched&&(t.preventDefault(),t.stopPropagation(),this.dispatched=!1)}newGestureEvent(e,t){const i=document.createEvent("CustomEvent");return i.initEvent(e,!1,!0),i.initialTarget=t,i.tapCount=0,i}dispatchEvent(e){if(e.type===St.Tap){const t=new Date().getTime();let i=0;t-this._lastSetTapCountTime>$i.CLEAR_TAP_COUNT_TIME?i=1:i=2,this._lastSetTapCountTime=t,e.tapCount=i}else(e.type===St.Change||e.type===St.Contextmenu)&&(this._lastSetTapCountTime=0);if(e.initialTarget instanceof Node){for(const i of this.ignoreTargets)if(i.contains(e.initialTarget))return;const t=[];for(const i of this.targets)if(i.contains(e.initialTarget)){let n=0,s=e.initialTarget;for(;s&&s!==i;)n++,s=s.parentElement;t.push([n,i])}t.sort((i,n)=>i[0]-n[0]);for(const[i,n]of t)n.dispatchEvent(e),this.dispatched=!0}}inertia(e,t,i,n,s,r,a,l,c){this.handle=fs(e,()=>{const d=Date.now(),h=d-i;let u=0,f=0,g=!0;n+=$i.SCROLL_FRICTION*h,a+=$i.SCROLL_FRICTION*h,n>0&&(g=!1,u=s*n*h),a>0&&(g=!1,f=l*a*h);const p=this.newGestureEvent(St.Change);p.translationX=u,p.translationY=f,t.forEach(_=>_.dispatchEvent(p)),g||this.inertia(e,t,d,n,s,r+u,a,l,c+f)})}onTouchMove(e){const t=Date.now();for(let i=0,n=e.changedTouches.length;i3&&(r.rollingPageX.shift(),r.rollingPageY.shift(),r.rollingTimestamps.shift()),r.rollingPageX.push(s.pageX),r.rollingPageY.push(s.pageY),r.rollingTimestamps.push(t)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}};$i.SCROLL_FRICTION=-.005,$i.HOLD_DELAY=700,$i.CLEAR_TAP_COUNT_TIME=400;let fn=$i;sq([Jt],fn,"isTouchDevice",null);let xr=class extends z{onclick(e,t){this._register(U(e,ee.CLICK,i=>t(new ur(fe(e),i))))}onmousedown(e,t){this._register(U(e,ee.MOUSE_DOWN,i=>t(new ur(fe(e),i))))}onmouseover(e,t){this._register(U(e,ee.MOUSE_OVER,i=>t(new ur(fe(e),i))))}onmouseleave(e,t){this._register(U(e,ee.MOUSE_LEAVE,i=>t(new ur(fe(e),i))))}onkeydown(e,t){this._register(U(e,ee.KEY_DOWN,i=>t(new Nt(i))))}onkeyup(e,t){this._register(U(e,ee.KEY_UP,i=>t(new Nt(i))))}oninput(e,t){this._register(U(e,ee.INPUT,t))}onblur(e,t){this._register(U(e,ee.BLUR,t))}onfocus(e,t){this._register(U(e,ee.FOCUS,t))}ignoreGesture(e){return fn.ignoreTarget(e)}};const mg=11;class oq extends xr{constructor(e){super(),this._onActivate=e.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=e.bgWidth+"px",this.bgDomNode.style.height=e.bgHeight+"px",typeof e.top<"u"&&(this.bgDomNode.style.top="0px"),typeof e.left<"u"&&(this.bgDomNode.style.left="0px"),typeof e.bottom<"u"&&(this.bgDomNode.style.bottom="0px"),typeof e.right<"u"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=e.className,this.domNode.classList.add(...Ee.asClassNameArray(e.icon)),this.domNode.style.position="absolute",this.domNode.style.width=mg+"px",this.domNode.style.height=mg+"px",typeof e.top<"u"&&(this.domNode.style.top=e.top+"px"),typeof e.left<"u"&&(this.domNode.style.left=e.left+"px"),typeof e.bottom<"u"&&(this.domNode.style.bottom=e.bottom+"px"),typeof e.right<"u"&&(this.domNode.style.right=e.right+"px"),this._pointerMoveMonitor=this._register(new Hg),this._register(jt(this.bgDomNode,ee.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._register(jt(this.domNode,ee.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._pointerdownRepeatTimer=this._register(new QN),this._pointerdownScheduleRepeatTimer=this._register(new wr)}_arrowPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const t=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,fe(e))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(t,200),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,i=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),e.preventDefault()}}class rq extends z{constructor(e,t,i){super(),this._visibility=e,this._visibleClassName=t,this._invisibleClassName=i,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new wr)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this._updateShouldBeVisible())}setShouldBeVisible(e){this._rawShouldBeVisible=e,this._updateShouldBeVisible()}_applyVisibilitySetting(){return this._visibility===2?!1:this._visibility===3?!0:this._rawShouldBeVisible}_updateShouldBeVisible(){const e=this._applyVisibilitySetting();this._shouldBeVisible!==e&&(this._shouldBeVisible=e,this.ensureVisibility())}setIsNeeded(e){this._isNeeded!==e&&(this._isNeeded=e,this.ensureVisibility())}setDomNode(e){this._domNode=e,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded){this._hide(!1);return}this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(e){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(e?" fade":"")))}}const aq=140;class X3 extends xr{constructor(e){super(),this._lazyRender=e.lazyRender,this._host=e.host,this._scrollable=e.scrollable,this._scrollByPage=e.scrollByPage,this._scrollbarState=e.scrollbarState,this._visibilityController=this._register(new rq(e.visibility,"visible scrollbar "+e.extraScrollbarClassName,"invisible scrollbar "+e.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new Hg),this._shouldRender=!0,this.domNode=ot(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(U(this.domNode.domNode,ee.POINTER_DOWN,t=>this._domNodePointerDown(t)))}_createArrow(e){const t=this._register(new oq(e));this.domNode.domNode.appendChild(t.bgDomNode),this.domNode.domNode.appendChild(t.domNode)}_createSlider(e,t,i,n){this.slider=ot(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(e),this.slider.setLeft(t),typeof i=="number"&&this.slider.setWidth(i),typeof n=="number"&&this.slider.setHeight(n),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(U(this.slider.domNode,ee.POINTER_DOWN,s=>{s.button===0&&(s.preventDefault(),this._sliderPointerDown(s))})),this.onclick(this.slider.domNode,s=>{s.leftButton&&s.stopPropagation()})}_onElementSize(e){return this._scrollbarState.setVisibleSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(e){return this._scrollbarState.setScrollSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(e){return this._scrollbarState.setScrollPosition(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(e){e.target===this.domNode.domNode&&this._onPointerDown(e)}delegatePointerDown(e){const t=this.domNode.domNode.getClientRects()[0].top,i=t+this._scrollbarState.getSliderPosition(),n=t+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),s=this._sliderPointerPosition(e);i<=s&&s<=n?e.button===0&&(e.preventDefault(),this._sliderPointerDown(e)):this._onPointerDown(e)}_onPointerDown(e){let t,i;if(e.target===this.domNode.domNode&&typeof e.offsetX=="number"&&typeof e.offsetY=="number")t=e.offsetX,i=e.offsetY;else{const s=gi(this.domNode.domNode);t=e.pageX-s.left,i=e.pageY-s.top}const n=this._pointerDownRelativePosition(t,i);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(n):this._scrollbarState.getDesiredScrollPositionFromOffset(n)),e.button===0&&(e.preventDefault(),this._sliderPointerDown(e))}_sliderPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const t=this._sliderPointerPosition(e),i=this._sliderOrthogonalPointerPosition(e),n=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,s=>{const r=this._sliderOrthogonalPointerPosition(s),a=Math.abs(r-i);if(kn&&a>aq){this._setDesiredScrollPositionNow(n.getScrollPosition());return}const c=this._sliderPointerPosition(s)-t;this._setDesiredScrollPositionNow(n.getDesiredScrollPositionFromDelta(c))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(e){const t={};this.writeScrollPosition(t,e),this._scrollable.setScrollPositionNow(t)}updateScrollbarSize(e){this._updateScrollbarSize(e),this._scrollbarState.setScrollbarSize(e),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}}const lq=20;class pg{constructor(e,t,i,n,s,r){this._scrollbarSize=Math.round(t),this._oppositeScrollbarSize=Math.round(i),this._arrowSize=Math.round(e),this._visibleSize=n,this._scrollSize=s,this._scrollPosition=r,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new pg(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(e){const t=Math.round(e);return this._visibleSize!==t?(this._visibleSize=t,this._refreshComputedValues(),!0):!1}setScrollSize(e){const t=Math.round(e);return this._scrollSize!==t?(this._scrollSize=t,this._refreshComputedValues(),!0):!1}setScrollPosition(e){const t=Math.round(e);return this._scrollPosition!==t?(this._scrollPosition=t,this._refreshComputedValues(),!0):!1}setScrollbarSize(e){this._scrollbarSize=Math.round(e)}setOppositeScrollbarSize(e){this._oppositeScrollbarSize=Math.round(e)}static _computeValues(e,t,i,n,s){const r=Math.max(0,i-e),a=Math.max(0,r-2*t),l=n>0&&n>i;if(!l)return{computedAvailableSize:Math.round(r),computedIsNeeded:l,computedSliderSize:Math.round(a),computedSliderRatio:0,computedSliderPosition:0};const c=Math.round(Math.max(lq,Math.floor(i*a/n))),d=(a-c)/(n-i),h=s*d;return{computedAvailableSize:Math.round(r),computedIsNeeded:l,computedSliderSize:Math.round(c),computedSliderRatio:d,computedSliderPosition:Math.round(h)}}_refreshComputedValues(){const e=pg._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=e.computedAvailableSize,this._computedIsNeeded=e.computedIsNeeded,this._computedSliderSize=e.computedSliderSize,this._computedSliderRatio=e.computedSliderRatio,this._computedSliderPosition=e.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(e){if(!this._computedIsNeeded)return 0;const t=e-this._arrowSize-this._computedSliderSize/2;return Math.round(t/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(e){if(!this._computedIsNeeded)return 0;const t=e-this._arrowSize;let i=this._scrollPosition;return tthis._host.onMouseWheel(new Rh(null,1,0))}),this._createArrow({className:"scra",icon:ie.scrollbarButtonRight,top:a,left:void 0,bottom:void 0,right:r,bgWidth:t.arrowSize,bgHeight:t.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new Rh(null,-1,0))})}this._createSlider(Math.floor((t.horizontalScrollbarSize-t.horizontalSliderSize)/2),0,void 0,t.horizontalSliderSize)}_updateSlider(e,t){this.slider.setWidth(e),this.slider.setLeft(t)}_renderDomNode(e,t){this.domNode.setWidth(e),this.domNode.setHeight(t),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(e.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return e}_sliderPointerPosition(e){return e.pageX}_sliderOrthogonalPointerPosition(e){return e.pageY}_updateScrollbarSize(e){this.slider.setHeight(e)}writeScrollPosition(e,t){e.scrollLeft=t}updateOptions(e){this.updateScrollbarSize(e.horizontal===2?0:e.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._visibilityController.setVisibility(e.horizontal),this._scrollByPage=e.scrollByPage}}class dq extends X3{constructor(e,t,i){const n=e.getScrollDimensions(),s=e.getCurrentScrollPosition();if(super({lazyRender:t.lazyRender,host:i,scrollbarState:new pg(t.verticalHasArrows?t.arrowSize:0,t.vertical===2?0:t.verticalScrollbarSize,0,n.height,n.scrollHeight,s.scrollTop),visibility:t.vertical,extraScrollbarClassName:"vertical",scrollable:e,scrollByPage:t.scrollByPage}),t.verticalHasArrows){const r=(t.arrowSize-mg)/2,a=(t.verticalScrollbarSize-mg)/2;this._createArrow({className:"scra",icon:ie.scrollbarButtonUp,top:r,left:a,bottom:void 0,right:void 0,bgWidth:t.verticalScrollbarSize,bgHeight:t.arrowSize,onActivate:()=>this._host.onMouseWheel(new Rh(null,0,1))}),this._createArrow({className:"scra",icon:ie.scrollbarButtonDown,top:void 0,left:a,bottom:r,right:void 0,bgWidth:t.verticalScrollbarSize,bgHeight:t.arrowSize,onActivate:()=>this._host.onMouseWheel(new Rh(null,0,-1))})}this._createSlider(0,Math.floor((t.verticalScrollbarSize-t.verticalSliderSize)/2),t.verticalSliderSize,void 0)}_updateSlider(e,t){this.slider.setHeight(e),this.slider.setTop(t)}_renderDomNode(e,t){this.domNode.setWidth(t),this.domNode.setHeight(e),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(e.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return t}_sliderPointerPosition(e){return e.pageY}_sliderOrthogonalPointerPosition(e){return e.pageX}_updateScrollbarSize(e){this.slider.setWidth(e)}writeScrollPosition(e,t){e.scrollTop=t}updateOptions(e){this.updateScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(e.vertical),this._scrollByPage=e.scrollByPage}}class OC{constructor(e,t,i,n,s,r,a){this._forceIntegerValues=e,this._scrollStateBrand=void 0,this._forceIntegerValues&&(t=t|0,i=i|0,n=n|0,s=s|0,r=r|0,a=a|0),this.rawScrollLeft=n,this.rawScrollTop=a,t<0&&(t=0),n+t>i&&(n=i-t),n<0&&(n=0),s<0&&(s=0),a+s>r&&(a=r-s),a<0&&(a=0),this.width=t,this.scrollWidth=i,this.scrollLeft=n,this.height=s,this.scrollHeight=r,this.scrollTop=a}equals(e){return this.rawScrollLeft===e.rawScrollLeft&&this.rawScrollTop===e.rawScrollTop&&this.width===e.width&&this.scrollWidth===e.scrollWidth&&this.scrollLeft===e.scrollLeft&&this.height===e.height&&this.scrollHeight===e.scrollHeight&&this.scrollTop===e.scrollTop}withScrollDimensions(e,t){return new OC(this._forceIntegerValues,typeof e.width<"u"?e.width:this.width,typeof e.scrollWidth<"u"?e.scrollWidth:this.scrollWidth,t?this.rawScrollLeft:this.scrollLeft,typeof e.height<"u"?e.height:this.height,typeof e.scrollHeight<"u"?e.scrollHeight:this.scrollHeight,t?this.rawScrollTop:this.scrollTop)}withScrollPosition(e){return new OC(this._forceIntegerValues,this.width,this.scrollWidth,typeof e.scrollLeft<"u"?e.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof e.scrollTop<"u"?e.scrollTop:this.rawScrollTop)}createScrollEvent(e,t){const i=this.width!==e.width,n=this.scrollWidth!==e.scrollWidth,s=this.scrollLeft!==e.scrollLeft,r=this.height!==e.height,a=this.scrollHeight!==e.scrollHeight,l=this.scrollTop!==e.scrollTop;return{inSmoothScrolling:t,oldWidth:e.width,oldScrollWidth:e.scrollWidth,oldScrollLeft:e.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:e.height,oldScrollHeight:e.scrollHeight,oldScrollTop:e.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:i,scrollWidthChanged:n,scrollLeftChanged:s,heightChanged:r,scrollHeightChanged:a,scrollTopChanged:l}}}class Vg extends z{constructor(e){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new A),this.onScroll=this._onScroll.event,this._smoothScrollDuration=e.smoothScrollDuration,this._scheduleAtNextAnimationFrame=e.scheduleAtNextAnimationFrame,this._state=new OC(e.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(e){this._smoothScrollDuration=e}validateScrollPosition(e){return this._state.withScrollPosition(e)}getScrollDimensions(){return this._state}setScrollDimensions(e,t){const i=this._state.withScrollDimensions(e,t);this._setState(i,!!this._smoothScrolling),this._smoothScrolling?.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(e){const t=this._state.withScrollPosition(e);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(t,!1)}setScrollPositionSmooth(e,t){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(e);if(this._smoothScrolling){e={scrollLeft:typeof e.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:e.scrollLeft,scrollTop:typeof e.scrollTop>"u"?this._smoothScrolling.to.scrollTop:e.scrollTop};const i=this._state.withScrollPosition(e);if(this._smoothScrolling.to.scrollLeft===i.scrollLeft&&this._smoothScrolling.to.scrollTop===i.scrollTop)return;let n;t?n=new o_(this._smoothScrolling.from,i,this._smoothScrolling.startTime,this._smoothScrolling.duration):n=this._smoothScrolling.combine(this._state,i,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=n}else{const i=this._state.withScrollPosition(e);this._smoothScrolling=o_.start(this._state,i,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}hasPendingScrollAnimation(){return!!this._smoothScrolling}_performSmoothScrolling(){if(!this._smoothScrolling)return;const e=this._smoothScrolling.tick(),t=this._state.withScrollPosition(e);if(this._setState(t,!0),!!this._smoothScrolling){if(e.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(e,t){const i=this._state;i.equals(e)||(this._state=e,this._onScroll.fire(this._state.createScrollEvent(i,t)))}}class AA{constructor(e,t,i){this.scrollLeft=e,this.scrollTop=t,this.isDone=i}}function kS(o,e){const t=e-o;return function(i){return o+t*fq(i)}}function hq(o,e,t){return function(i){return i2.5*i){let s,r;return e0&&Math.abs(e.deltaY)>0)return 1;let i=.5;if((!this._isAlmostInt(e.deltaX)||!this._isAlmostInt(e.deltaY))&&(i+=.25),t){const n=Math.abs(e.deltaX),s=Math.abs(e.deltaY),r=Math.abs(t.deltaX),a=Math.abs(t.deltaY),l=Math.max(Math.min(n,r),1),c=Math.max(Math.min(s,a),1),d=Math.max(n,r),h=Math.max(s,a);d%l===0&&h%c===0&&(i-=.5)}return Math.min(Math.max(i,0),1)}_isAlmostInt(e){return Math.abs(Math.round(e)-e)<.01}};Tw.INSTANCE=new Tw;let FC=Tw;class MT extends xr{get options(){return this._options}constructor(e,t,i){super(),this._onScroll=this._register(new A),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new A),e.style.overflow="hidden",this._options=pq(t),this._scrollable=i,this._register(this._scrollable.onScroll(s=>{this._onWillScroll.fire(s),this._onDidScroll(s),this._onScroll.fire(s)}));const n={onMouseWheel:s=>this._onMouseWheel(s),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new dq(this._scrollable,this._options,n)),this._horizontalScrollbar=this._register(new cq(this._scrollable,this._options,n)),this._domNode=document.createElement("div"),this._domNode.className="monaco-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.style.overflow="hidden",this._domNode.appendChild(e),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=ot(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=ot(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=ot(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,s=>this._onMouseOver(s)),this.onmouseleave(this._listenOnDomNode,s=>this._onMouseLeave(s)),this._hideTimeout=this._register(new wr),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}dispose(){this._mouseWheelToDispose=xt(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(e){this._verticalScrollbar.delegatePointerDown(e)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(e){this._scrollable.setScrollDimensions(e,!1)}updateClassName(e){this._options.className=e,Ue&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className}updateOptions(e){typeof e.handleMouseWheel<"u"&&(this._options.handleMouseWheel=e.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof e.mouseWheelScrollSensitivity<"u"&&(this._options.mouseWheelScrollSensitivity=e.mouseWheelScrollSensitivity),typeof e.fastScrollSensitivity<"u"&&(this._options.fastScrollSensitivity=e.fastScrollSensitivity),typeof e.scrollPredominantAxis<"u"&&(this._options.scrollPredominantAxis=e.scrollPredominantAxis),typeof e.horizontal<"u"&&(this._options.horizontal=e.horizontal),typeof e.vertical<"u"&&(this._options.vertical=e.vertical),typeof e.horizontalScrollbarSize<"u"&&(this._options.horizontalScrollbarSize=e.horizontalScrollbarSize),typeof e.verticalScrollbarSize<"u"&&(this._options.verticalScrollbarSize=e.verticalScrollbarSize),typeof e.scrollByPage<"u"&&(this._options.scrollByPage=e.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}delegateScrollFromMouseWheelEvent(e){this._onMouseWheel(new Rh(e))}_setListeningToMouseWheel(e){if(this._mouseWheelToDispose.length>0!==e&&(this._mouseWheelToDispose=xt(this._mouseWheelToDispose),e)){const i=n=>{this._onMouseWheel(new Rh(n))};this._mouseWheelToDispose.push(U(this._listenOnDomNode,ee.MOUSE_WHEEL,i,{passive:!1}))}}_onMouseWheel(e){if(e.browserEvent?.defaultPrevented)return;const t=FC.INSTANCE;t.acceptStandardWheelEvent(e);let i=!1;if(e.deltaY||e.deltaX){let s=e.deltaY*this._options.mouseWheelScrollSensitivity,r=e.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&r+s===0?r=s=0:Math.abs(s)>=Math.abs(r)?r=0:s=0),this._options.flipAxes&&([s,r]=[r,s]);const a=!Ue&&e.browserEvent&&e.browserEvent.shiftKey;(this._options.scrollYToX||a)&&!r&&(r=s,s=0),e.browserEvent&&e.browserEvent.altKey&&(r=r*this._options.fastScrollSensitivity,s=s*this._options.fastScrollSensitivity);const l=this._scrollable.getFutureScrollPosition();let c={};if(s){const d=PA*s,h=l.scrollTop-(d<0?Math.floor(d):Math.ceil(d));this._verticalScrollbar.writeScrollPosition(c,h)}if(r){const d=PA*r,h=l.scrollLeft-(d<0?Math.floor(d):Math.ceil(d));this._horizontalScrollbar.writeScrollPosition(c,h)}c=this._scrollable.validateScrollPosition(c),(l.scrollLeft!==c.scrollLeft||l.scrollTop!==c.scrollTop)&&(this._options.mouseWheelSmoothScroll&&t.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(c):this._scrollable.setScrollPositionNow(c),i=!0)}let n=i;!n&&this._options.alwaysConsumeMouseWheel&&(n=!0),!n&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(n=!0),n&&(e.preventDefault(),e.stopPropagation())}_onDidScroll(e){this._shouldRender=this._horizontalScrollbar.onDidScroll(e)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(e)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){const e=this._scrollable.getCurrentScrollPosition(),t=e.scrollTop>0,i=e.scrollLeft>0,n=i?" left":"",s=t?" top":"",r=i||t?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${n}`),this._topShadowDomNode.setClassName(`shadow${s}`),this._topLeftShadowDomNode.setClassName(`shadow${r}${s}${n}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(e){this._mouseIsOver=!1,this._hide()}_onMouseOver(e){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),gq)}}class J3 extends MT{constructor(e,t){t=t||{},t.mouseWheelSmoothScroll=!1;const i=new Vg({forceIntegerValues:!0,smoothScrollDuration:0,scheduleAtNextAnimationFrame:n=>fs(fe(e),n)});super(e,t,i),this._register(i)}setScrollPosition(e){this._scrollable.setScrollPositionNow(e)}}class X0 extends MT{constructor(e,t,i){super(e,t,i)}setScrollPosition(e){e.reuseAnimation?this._scrollable.setScrollPositionSmooth(e,e.reuseAnimation):this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}}class J0 extends MT{constructor(e,t){t=t||{},t.mouseWheelSmoothScroll=!1;const i=new Vg({forceIntegerValues:!1,smoothScrollDuration:0,scheduleAtNextAnimationFrame:n=>fs(fe(e),n)});super(e,t,i),this._register(i),this._element=e,this._register(this.onScroll(n=>{n.scrollTopChanged&&(this._element.scrollTop=n.scrollTop),n.scrollLeftChanged&&(this._element.scrollLeft=n.scrollLeft)})),this.scanDomNode()}setScrollPosition(e){this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}scanDomNode(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})}}function pq(o){const e={lazyRender:typeof o.lazyRender<"u"?o.lazyRender:!1,className:typeof o.className<"u"?o.className:"",useShadows:typeof o.useShadows<"u"?o.useShadows:!0,handleMouseWheel:typeof o.handleMouseWheel<"u"?o.handleMouseWheel:!0,flipAxes:typeof o.flipAxes<"u"?o.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof o.consumeMouseWheelIfScrollbarIsNeeded<"u"?o.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof o.alwaysConsumeMouseWheel<"u"?o.alwaysConsumeMouseWheel:!1,scrollYToX:typeof o.scrollYToX<"u"?o.scrollYToX:!1,mouseWheelScrollSensitivity:typeof o.mouseWheelScrollSensitivity<"u"?o.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof o.fastScrollSensitivity<"u"?o.fastScrollSensitivity:5,scrollPredominantAxis:typeof o.scrollPredominantAxis<"u"?o.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof o.mouseWheelSmoothScroll<"u"?o.mouseWheelSmoothScroll:!0,arrowSize:typeof o.arrowSize<"u"?o.arrowSize:11,listenOnDomNode:typeof o.listenOnDomNode<"u"?o.listenOnDomNode:null,horizontal:typeof o.horizontal<"u"?o.horizontal:1,horizontalScrollbarSize:typeof o.horizontalScrollbarSize<"u"?o.horizontalScrollbarSize:10,horizontalSliderSize:typeof o.horizontalSliderSize<"u"?o.horizontalSliderSize:0,horizontalHasArrows:typeof o.horizontalHasArrows<"u"?o.horizontalHasArrows:!1,vertical:typeof o.vertical<"u"?o.vertical:1,verticalScrollbarSize:typeof o.verticalScrollbarSize<"u"?o.verticalScrollbarSize:10,verticalHasArrows:typeof o.verticalHasArrows<"u"?o.verticalHasArrows:!1,verticalSliderSize:typeof o.verticalSliderSize<"u"?o.verticalSliderSize:0,scrollByPage:typeof o.scrollByPage<"u"?o.scrollByPage:!1};return e.horizontalSliderSize=typeof o.horizontalSliderSize<"u"?o.horizontalSliderSize:e.horizontalScrollbarSize,e.verticalSliderSize=typeof o.verticalSliderSize<"u"?o.verticalSliderSize:e.verticalScrollbarSize,Ue&&(e.className+=" mac"),e}const Ab=ce;let RT=class extends z{constructor(){super(),this.containerDomNode=document.createElement("div"),this.containerDomNode.className="monaco-hover",this.containerDomNode.tabIndex=0,this.containerDomNode.setAttribute("role","tooltip"),this.contentsDomNode=document.createElement("div"),this.contentsDomNode.className="monaco-hover-content",this.scrollbar=this._register(new J0(this.contentsDomNode,{consumeMouseWheelIfScrollbarIsNeeded:!0})),this.containerDomNode.appendChild(this.scrollbar.getDomNode())}onContentsChanged(){this.scrollbar.scanDomNode()}};class ey extends z{static render(e,t,i){return new ey(e,t,i)}constructor(e,t,i){super(),this.actionLabel=t.label,this.actionKeybindingLabel=i,this.actionContainer=Z(e,Ab("div.action-container")),this.actionContainer.setAttribute("tabindex","0"),this.action=Z(this.actionContainer,Ab("a.action")),this.action.setAttribute("role","button"),t.iconClass&&Z(this.action,Ab(`span.icon.${t.iconClass}`));const n=Z(this.action,Ab("span"));n.textContent=i?`${t.label} (${i})`:t.label,this._store.add(new t7(this.actionContainer,t.run)),this._store.add(new i7(this.actionContainer,t.run,[3,10])),this.setEnabled(!0)}setEnabled(e){e?(this.actionContainer.classList.remove("disabled"),this.actionContainer.removeAttribute("aria-disabled")):(this.actionContainer.classList.add("disabled"),this.actionContainer.setAttribute("aria-disabled","true"))}}function e7(o,e){return o&&e?m("acessibleViewHint","Inspect this in the accessible view with {0}.",e):o?m("acessibleViewHintNoKbOpen","Inspect this in the accessible view via the command Open Accessible View which is currently not triggerable via keybinding."):""}class t7 extends z{constructor(e,t){super(),this._register(U(e,ee.CLICK,i=>{i.stopPropagation(),i.preventDefault(),t(e)}))}}class i7 extends z{constructor(e,t,i){super(),this._register(U(e,ee.KEY_DOWN,n=>{const s=new Nt(n);i.some(r=>s.equals(r))&&(n.stopPropagation(),n.preventDefault(),t(e))}))}}const Vo=He("openerService");function _q(o){let e;const t=/^L?(\d+)(?:,(\d+))?(-L?(\d+)(?:,(\d+))?)?/.exec(o.fragment);return t&&(e={startLineNumber:parseInt(t[1]),startColumn:t[2]?parseInt(t[2]):1,endLineNumber:t[4]?parseInt(t[4]):void 0,endColumn:t[4]?t[5]?parseInt(t[5]):1:void 0},o=o.with({fragment:""})),{selection:e,uri:o}}class ze{get event(){return this.emitter.event}constructor(e,t,i){const n=s=>this.emitter.fire(s);this.emitter=new A({onWillAddFirstListener:()=>e.addEventListener(t,n,i),onDidRemoveLastListener:()=>e.removeEventListener(t,n,i)})}dispose(){this.emitter.dispose()}}function bq(o,e={}){const t=AT(e);return t.textContent=o,t}function Cq(o,e={}){const t=AT(e);return n7(t,wq(o,!!e.renderCodeSegments),e.actionHandler,e.renderCodeSegments),t}function AT(o){const e=o.inline?"span":"div",t=document.createElement(e);return o.className&&(t.className=o.className),t}class vq{constructor(e){this.source=e,this.index=0}eos(){return this.index>=this.source.length}next(){const e=this.peek();return this.advance(),e}peek(){return this.source[this.index]}advance(){this.index++}}function n7(o,e,t,i){let n;if(e.type===2)n=document.createTextNode(e.content||"");else if(e.type===3)n=document.createElement("b");else if(e.type===4)n=document.createElement("i");else if(e.type===7&&i)n=document.createElement("code");else if(e.type===5&&t){const s=document.createElement("a");t.disposables.add(jt(s,"click",r=>{t.callback(String(e.index),r)})),n=s}else e.type===8?n=document.createElement("br"):e.type===1&&(n=o);n&&o!==n&&o.appendChild(n),n&&Array.isArray(e.children)&&e.children.forEach(s=>{n7(n,s,t,i)})}function wq(o,e){const t={type:1,children:[]};let i=0,n=t;const s=[],r=new vq(o);for(;!r.eos();){let a=r.next();const l=a==="\\"&&Tk(r.peek(),e)!==0;if(l&&(a=r.next()),!l&&yq(a,e)&&a===r.peek()){r.advance(),n.type===2&&(n=s.pop());const c=Tk(a,e);if(n.type===c||n.type===5&&c===6)n=s.pop();else{const d={type:c,children:[]};c===5&&(d.index=i,i++),n.children.push(d),s.push(n),n=d}}else if(a===` -`)n.type===2&&(n=s.pop()),n.children.push({type:8});else if(n.type!==2){const c={type:2,content:a};n.children.push(c),s.push(n),n=c}else n.content+=a}return n.type===2&&(n=s.pop()),t}function yq(o,e){return Tk(o,e)!==0}function Tk(o,e){switch(o){case"*":return 3;case"_":return 4;case"[":return 5;case"]":return 6;case"`":return e?7:0;default:return 0}}const Sq=new RegExp(`(\\\\)?\\$\\((${Ee.iconNameExpression}(?:${Ee.iconModifierExpression})?)\\)`,"g");function Qd(o){const e=new Array;let t,i=0,n=0;for(;(t=Sq.exec(o))!==null;){n=t.index||0,i0?[{start:0,end:e.length}]:[]:null}function Lq(o,e){const t=e.toLowerCase().indexOf(o.toLowerCase());return t===-1?null:[{start:t,end:t+o.length}]}function r7(o,e){return Mk(o.toLowerCase(),e.toLowerCase(),0,0)}function Mk(o,e,t,i){if(t===o.length)return[];if(i===e.length)return null;if(o[t]===e[i]){let n=null;return(n=Mk(o,e,t+1,i+1))?l7({start:i,end:i+1},n):null}return Mk(o,e,t,i+1)}function PT(o){return 97<=o&&o<=122}function ty(o){return 65<=o&&o<=90}function OT(o){return 48<=o&&o<=57}function xq(o){return o===32||o===9||o===10||o===13}const kq=new Set;"()[]{}<>`'\"-/;:,.?!".split("").forEach(o=>kq.add(o.charCodeAt(0)));function a7(o){return PT(o)||ty(o)||OT(o)}function l7(o,e){return e.length===0?e=[o]:o.end===e[0].start?e[0].start=o.start:e.unshift(o),e}function c7(o,e){for(let t=e;t0&&!a7(o.charCodeAt(t-1)))return t}return o.length}function Rk(o,e,t,i){if(t===o.length)return[];if(i===e.length)return null;if(o[t]!==e[i].toLowerCase())return null;{let n=null,s=i+1;for(n=Rk(o,e,t+1,i+1);!n&&(s=c7(e,s)).6}function Eq(o){const{upperPercent:e,lowerPercent:t,alphaPercent:i,numericPercent:n}=o;return t>.2&&e<.8&&i>.6&&n<.2}function Nq(o){let e=0,t=0,i=0,n=0;for(let s=0;s60&&(e=e.substring(0,60));const t=Dq(e);if(!Eq(t)){if(!Iq(t))return null;e=e.toLowerCase()}let i=null,n=0;for(o=o.toLowerCase();n"u")return[];const e=[],t=o[1];for(let i=o.length-1;i>1;i--){const n=o[i]+t,s=e[e.length-1];s&&s.end===n?s.end=n+1:e.push({start:n,end:n+1})}return e}const sc=128;function FT(){const o=[],e=[];for(let t=0;t<=sc;t++)e[t]=0;for(let t=0;t<=sc;t++)o.push(e.slice(0));return o}function h7(o){const e=[];for(let t=0;t<=o;t++)e[t]=0;return e}const u7=h7(2*sc),Ak=h7(2*sc),Ta=FT(),td=FT(),Pb=FT();function Ob(o,e){if(e<0||e>=o.length)return!1;const t=o.codePointAt(e);switch(t){case 95:case 45:case 46:case 32:case 47:case 92:case 39:case 34:case 58:case 36:case 60:case 62:case 40:case 41:case 91:case 93:case 123:case 125:return!0;case void 0:return!1;default:return!!UN(t)}}function BA(o,e){if(e<0||e>=o.length)return!1;switch(o.charCodeAt(e)){case 32:case 9:return!0;default:return!1}}function M1(o,e,t){return e[o]!==t[o]}function Pq(o,e,t,i,n,s,r=!1){for(;esc?sc:o.length,l=i.length>sc?sc:i.length;if(t>=a||s>=l||a-t>l-s||!Pq(e,t,a,n,s,l,!0))return;Oq(a,l,t,s,e,n);let c=1,d=1,h=t,u=s;const f=[!1];for(c=1,h=t;hC,N=E?td[c][d-1]+(Ta[c][d-1]>0?-5:0):0,H=u>C+1&&Ta[c][d-1]>0,F=H?td[c][d-2]+(Ta[c][d-2]>0?-5:0):0;if(H&&(!E||F>=N)&&(!x||F>=L))td[c][d]=F,Pb[c][d]=3,Ta[c][d]=0;else if(E&&(!x||N>=L))td[c][d]=N,Pb[c][d]=2,Ta[c][d]=0;else if(x)td[c][d]=L,Pb[c][d]=1,Ta[c][d]=Ta[c-1][d-1]+1;else throw new Error("not possible")}}if(!f[0]&&!r.firstMatchCanBeWeak)return;c--,d--;const g=[td[c][d],s];let p=0,_=0;for(;c>=1;){let C=d;do{const w=Pb[c][C];if(w===3)C=C-2;else if(w===2)C=C-1;else break}while(C>=1);p>1&&e[t+c-1]===n[s+d-1]&&!M1(C+s-1,i,n)&&p+1>Ta[c][C]&&(C=d),C===d?p++:p=1,_||(_=C),c--,d=C-1,g.push(d)}l-s===a&&r.boostFullMatch&&(g[0]+=2);const b=_-a;return g[0]-=b,g}function Oq(o,e,t,i,n,s){let r=o-1,a=e-1;for(;r>=t&&a>=i;)n[r]===s[a]&&(Ak[r]=a,r--),a--}function Fq(o,e,t,i,n,s,r,a,l,c,d){if(e[t]!==s[r])return Number.MIN_SAFE_INTEGER;let h=1,u=!1;return r===t-i?h=o[t]===n[r]?7:5:M1(r,n,s)&&(r===0||!M1(r-1,n,s))?(h=o[t]===n[r]?7:5,u=!0):Ob(s,r)&&(r===0||!Ob(s,r-1))?h=5:(Ob(s,r-1)||BA(s,r-1))&&(h=5,u=!0),h>1&&t===i&&(d[0]=!0),u||(u=M1(r,n,s)||Ob(s,r-1)||BA(s,r-1)),t===i?r>l&&(h-=u?3:5):c?h+=u?2:0:h+=u?0:1,r+1===a&&(h-=u?3:5),h}function Bq(o,e,t,i,n,s,r){return Wq(o,e,t,i,n,s,!0,r)}function Wq(o,e,t,i,n,s,r,a){let l=_g(o,e,t,i,n,s,a);if(o.length>=3){const c=Math.min(7,o.length-1);for(let d=t+1;dl[0])&&(l=u))}}}return l}function Hq(o,e){if(e+1>=o.length)return;const t=o[e],i=o[e+1];if(t!==i)return o.slice(0,e)+i+t+o.slice(e+2)}const Vq="$(",BT=new RegExp(`\\$\\(${Ee.iconNameExpression}(?:${Ee.iconModifierExpression})?\\)`,"g"),zq=new RegExp(`(\\\\)?${BT.source}`,"g");function Uq(o){return o.replace(zq,(e,t)=>t?e:`\\${e}`)}const $q=new RegExp(`\\\\${BT.source}`,"g");function Kq(o){return o.replace($q,e=>`\\${e}`)}const jq=new RegExp(`(\\s)?(\\\\)?${BT.source}(\\s)?`,"g");function f7(o){return o.indexOf(Vq)===-1?o:o.replace(jq,(e,t,i,n)=>i?e:t||n||"")}function qq(o){return o?o.replace(/\$\((.*?)\)/g,(e,t)=>` ${t} `).trim():""}const DS=new RegExp(`\\$\\(${Ee.iconNameCharacter}+\\)`,"g");function Tm(o){DS.lastIndex=0;let e="";const t=[];let i=0;for(;;){const n=DS.lastIndex,s=DS.exec(o),r=o.substring(n,s?.index);if(r.length>0){e+=r;for(let a=0;agA(i).length&&i[i.length-1]===t}else{const i=e.path;return i.length>1&&i.charCodeAt(i.length-1)===47&&!/^[a-zA-Z]:(\/$|\\$)/.test(e.fsPath)}}removeTrailingPathSeparator(e,t=fc){return VA(e,t)?e.with({path:e.path.substr(0,e.path.length-1)}):e}addTrailingPathSeparator(e,t=fc){let i=!1;if(e.scheme===Te.file){const n=Ma(e);i=n!==void 0&&n.length===gA(n).length&&n[n.length-1]===t}else{t="/";const n=e.path;i=n.length===1&&n.charCodeAt(n.length-1)===47}return!i&&!VA(e,t)?e.with({path:e.path+"/"}):e}}const Tt=new Gq(()=>!1),WT=Tt.isEqual.bind(Tt);Tt.isEqualOrParent.bind(Tt);Tt.getComparisonKey.bind(Tt);const Zq=Tt.basenameOrAuthority.bind(Tt),Fo=Tt.basename.bind(Tt),Yq=Tt.extname.bind(Tt),ny=Tt.dirname.bind(Tt);Tt.joinPath.bind(Tt);const Qq=Tt.normalizePath.bind(Tt);Tt.relativePath.bind(Tt);const WA=Tt.resolvePath.bind(Tt);Tt.isAbsolutePath.bind(Tt);const HA=Tt.isEqualAuthority.bind(Tt),VA=Tt.hasTrailingPathSeparator.bind(Tt);Tt.removeTrailingPathSeparator.bind(Tt);Tt.addTrailingPathSeparator.bind(Tt);var Oc;(function(o){o.META_DATA_LABEL="label",o.META_DATA_DESCRIPTION="description",o.META_DATA_SIZE="size",o.META_DATA_MIME="mime";function e(t){const i=new Map;t.path.substring(t.path.indexOf(";")+1,t.path.lastIndexOf(";")).split(";").forEach(r=>{const[a,l]=r.split(":");a&&l&&i.set(a,l)});const s=t.path.substring(0,t.path.indexOf(";"));return s&&i.set(o.META_DATA_MIME,s),i}o.parseMetaData=e})(Oc||(Oc={}));class Js{constructor(e="",t=!1){if(this.value=e,typeof this.value!="string")throw na("value");typeof t=="boolean"?(this.isTrusted=t,this.supportThemeIcons=!1,this.supportHtml=!1):(this.isTrusted=t.isTrusted??void 0,this.supportThemeIcons=t.supportThemeIcons??!1,this.supportHtml=t.supportHtml??!1)}appendText(e,t=0){return this.value+=Jq(this.supportThemeIcons?Uq(e):e).replace(/([ \t]+)/g,(i,n)=>" ".repeat(n.length)).replace(/\>/gm,"\\>").replace(/\n/g,t===1?`\\ -`:` - -`),this}appendMarkdown(e){return this.value+=e,this}appendCodeblock(e,t){return this.value+=` -${eG(t,e)} -`,this}appendLink(e,t,i){return this.value+="[",this.value+=this._escape(t,"]"),this.value+="](",this.value+=this._escape(String(e),")"),i&&(this.value+=` "${this._escape(this._escape(i,'"'),")")}"`),this.value+=")",this}_escape(e,t){const i=new RegExp(xl(t),"g");return e.replace(i,(n,s)=>e.charAt(s-1)!=="\\"?`\\${n}`:n)}}function bg(o){return ra(o)?!o.value:Array.isArray(o)?o.every(bg):!0}function ra(o){return o instanceof Js?!0:o&&typeof o=="object"?typeof o.value=="string"&&(typeof o.isTrusted=="boolean"||typeof o.isTrusted=="object"||o.isTrusted===void 0)&&(typeof o.supportThemeIcons=="boolean"||o.supportThemeIcons===void 0):!1}function Xq(o,e){return o===e?!0:!o||!e?!1:o.value===e.value&&o.isTrusted===e.isTrusted&&o.supportThemeIcons===e.supportThemeIcons&&o.supportHtml===e.supportHtml&&(o.baseUri===e.baseUri||!!o.baseUri&&!!e.baseUri&&WT(ve.from(o.baseUri),ve.from(e.baseUri)))}function Jq(o){return o.replace(/[\\`*_{}[\]()#+\-!~]/g,"\\$&")}function eG(o,e){const t=o.match(/^`+/gm)?.reduce((n,s)=>n.length>s.length?n:s).length??0,i=t>=3?t+1:3;return[`${"`".repeat(i)}${e}`,o,`${"`".repeat(i)}`].join(` -`)}function Fb(o){return o.replace(/"/g,""")}function ES(o){return o&&o.replace(/\\([\\`*_{}[\]()#+\-.!~])/g,"$1")}function tG(o){const e=[],t=o.split("|").map(n=>n.trim());o=t[0];const i=t[1];if(i){const n=/height=(\d+)/.exec(i),s=/width=(\d+)/.exec(i),r=n?n[1]:"",a=s?s[1]:"",l=isFinite(parseInt(a)),c=isFinite(parseInt(r));l&&e.push(`width="${a}"`),c&&e.push(`height="${r}"`)}return{href:o,dimensions:e}}class HT{constructor(e){this._prefix=e,this._lastId=0}nextId(){return this._prefix+ ++this._lastId}}const Pk=new HT("id#");let tn={};(function(){function o(e,t){t(tn)}o.amd=!0,(function(e,t){typeof o=="function"&&o.amd?o(["exports"],t):typeof exports=="object"&&typeof module<"u"?t(exports):(e=typeof globalThis<"u"?globalThis:e||self,t(e.marked={}))})(this,(function(e){function t(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}e.defaults=t();function i(Xe){e.defaults=Xe}const n=/[&<>"']/,s=new RegExp(n.source,"g"),r=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,a=new RegExp(r.source,"g"),l={"&":"&","<":"<",">":">",'"':""","'":"'"},c=Xe=>l[Xe];function d(Xe,T){if(T){if(n.test(Xe))return Xe.replace(s,c)}else if(r.test(Xe))return Xe.replace(a,c);return Xe}const h=/(^|[^\[])\^/g;function u(Xe,T){let M=typeof Xe=="string"?Xe:Xe.source;T=T||"";const R={replace:(O,V)=>{let Y=typeof V=="string"?V:V.source;return Y=Y.replace(h,"$1"),M=M.replace(O,Y),R},getRegex:()=>new RegExp(M,T)};return R}function f(Xe){try{Xe=encodeURI(Xe).replace(/%25/g,"%")}catch{return null}return Xe}const g={exec:()=>null};function p(Xe,T){const M=Xe.replace(/\|/g,(V,Y,te)=>{let me=!1,ye=Y;for(;--ye>=0&&te[ye]==="\\";)me=!me;return me?"|":" |"}),R=M.split(/ \|/);let O=0;if(R[0].trim()||R.shift(),R.length>0&&!R[R.length-1].trim()&&R.pop(),T)if(R.length>T)R.splice(T);else for(;R.length{const V=O.match(/^\s+/);if(V===null)return O;const[Y]=V;return Y.length>=R.length?O.slice(R.length):O}).join(` -`)}class v{options;rules;lexer;constructor(T){this.options=T||e.defaults}space(T){const M=this.rules.block.newline.exec(T);if(M&&M[0].length>0)return{type:"space",raw:M[0]}}code(T){const M=this.rules.block.code.exec(T);if(M){const R=M[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:M[0],codeBlockStyle:"indented",text:this.options.pedantic?R:_(R,` -`)}}}fences(T){const M=this.rules.block.fences.exec(T);if(M){const R=M[0],O=w(R,M[3]||"");return{type:"code",raw:R,lang:M[2]?M[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):M[2],text:O}}}heading(T){const M=this.rules.block.heading.exec(T);if(M){let R=M[2].trim();if(/#$/.test(R)){const O=_(R,"#");(this.options.pedantic||!O||/ $/.test(O))&&(R=O.trim())}return{type:"heading",raw:M[0],depth:M[1].length,text:R,tokens:this.lexer.inline(R)}}}hr(T){const M=this.rules.block.hr.exec(T);if(M)return{type:"hr",raw:_(M[0],` -`)}}blockquote(T){const M=this.rules.block.blockquote.exec(T);if(M){let R=_(M[0],` -`).split(` -`),O="",V="";const Y=[];for(;R.length>0;){let te=!1;const me=[];let ye;for(ye=0;ye/.test(R[ye]))me.push(R[ye]),te=!0;else if(!te)me.push(R[ye]);else break;R=R.slice(ye);const Ve=me.join(` -`),ft=Ve.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` - $1`).replace(/^ {0,3}>[ \t]?/gm,"");O=O?`${O} -${Ve}`:Ve,V=V?`${V} -${ft}`:ft;const Ct=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(ft,Y,!0),this.lexer.state.top=Ct,R.length===0)break;const Si=Y[Y.length-1];if(Si?.type==="code")break;if(Si?.type==="blockquote"){const Gt=Si,Zn=Gt.raw+` -`+R.join(` -`),qs=this.blockquote(Zn);Y[Y.length-1]=qs,O=O.substring(0,O.length-Gt.raw.length)+qs.raw,V=V.substring(0,V.length-Gt.text.length)+qs.text;break}else if(Si?.type==="list"){const Gt=Si,Zn=Gt.raw+` -`+R.join(` -`),qs=this.list(Zn);Y[Y.length-1]=qs,O=O.substring(0,O.length-Si.raw.length)+qs.raw,V=V.substring(0,V.length-Gt.raw.length)+qs.raw,R=Zn.substring(Y[Y.length-1].raw.length).split(` -`);continue}}return{type:"blockquote",raw:O,tokens:Y,text:V}}}list(T){let M=this.rules.block.list.exec(T);if(M){let R=M[1].trim();const O=R.length>1,V={type:"list",raw:"",ordered:O,start:O?+R.slice(0,-1):"",loose:!1,items:[]};R=O?`\\d{1,9}\\${R.slice(-1)}`:`\\${R}`,this.options.pedantic&&(R=O?R:"[*+-]");const Y=new RegExp(`^( {0,3}${R})((?:[ ][^\\n]*)?(?:\\n|$))`);let te=!1;for(;T;){let me=!1,ye="",Ve="";if(!(M=Y.exec(T))||this.rules.block.hr.test(T))break;ye=M[0],T=T.substring(ye.length);let ft=M[2].split(` -`,1)[0].replace(/^\t+/,em=>" ".repeat(3*em.length)),Ct=T.split(` -`,1)[0],Si=!ft.trim(),Gt=0;if(this.options.pedantic?(Gt=2,Ve=ft.trimStart()):Si?Gt=M[1].length+1:(Gt=M[2].search(/[^ ]/),Gt=Gt>4?1:Gt,Ve=ft.slice(Gt),Gt+=M[1].length),Si&&/^ *$/.test(Ct)&&(ye+=Ct+` -`,T=T.substring(Ct.length+1),me=!0),!me){const em=new RegExp(`^ {0,${Math.min(3,Gt-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),Oe=new RegExp(`^ {0,${Math.min(3,Gt-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),$=new RegExp(`^ {0,${Math.min(3,Gt-1)}}(?:\`\`\`|~~~)`),ue=new RegExp(`^ {0,${Math.min(3,Gt-1)}}#`);for(;T;){const Ie=T.split(` -`,1)[0];if(Ct=Ie,this.options.pedantic&&(Ct=Ct.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),$.test(Ct)||ue.test(Ct)||em.test(Ct)||Oe.test(T))break;if(Ct.search(/[^ ]/)>=Gt||!Ct.trim())Ve+=` -`+Ct.slice(Gt);else{if(Si||ft.search(/[^ ]/)>=4||$.test(ft)||ue.test(ft)||Oe.test(ft))break;Ve+=` -`+Ct}!Si&&!Ct.trim()&&(Si=!0),ye+=Ie+` -`,T=T.substring(Ie.length+1),ft=Ct.slice(Gt)}}V.loose||(te?V.loose=!0:/\n *\n *$/.test(ye)&&(te=!0));let Zn=null,qs;this.options.gfm&&(Zn=/^\[[ xX]\] /.exec(Ve),Zn&&(qs=Zn[0]!=="[ ] ",Ve=Ve.replace(/^\[[ xX]\] +/,""))),V.items.push({type:"list_item",raw:ye,task:!!Zn,checked:qs,loose:!1,text:Ve,tokens:[]}),V.raw+=ye}V.items[V.items.length-1].raw=V.items[V.items.length-1].raw.trimEnd(),V.items[V.items.length-1].text=V.items[V.items.length-1].text.trimEnd(),V.raw=V.raw.trimEnd();for(let me=0;meft.type==="space"),Ve=ye.length>0&&ye.some(ft=>/\n.*\n/.test(ft.raw));V.loose=Ve}if(V.loose)for(let me=0;me$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",V=M[3]?M[3].substring(1,M[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):M[3];return{type:"def",tag:R,raw:M[0],href:O,title:V}}}table(T){const M=this.rules.block.table.exec(T);if(!M||!/[:|]/.test(M[2]))return;const R=p(M[1]),O=M[2].replace(/^\||\| *$/g,"").split("|"),V=M[3]&&M[3].trim()?M[3].replace(/\n[ \t]*$/,"").split(` -`):[],Y={type:"table",raw:M[0],header:[],align:[],rows:[]};if(R.length===O.length){for(const te of O)/^ *-+: *$/.test(te)?Y.align.push("right"):/^ *:-+: *$/.test(te)?Y.align.push("center"):/^ *:-+ *$/.test(te)?Y.align.push("left"):Y.align.push(null);for(let te=0;te({text:me,tokens:this.lexer.inline(me),header:!1,align:Y.align[ye]})));return Y}}lheading(T){const M=this.rules.block.lheading.exec(T);if(M)return{type:"heading",raw:M[0],depth:M[2].charAt(0)==="="?1:2,text:M[1],tokens:this.lexer.inline(M[1])}}paragraph(T){const M=this.rules.block.paragraph.exec(T);if(M){const R=M[1].charAt(M[1].length-1)===` -`?M[1].slice(0,-1):M[1];return{type:"paragraph",raw:M[0],text:R,tokens:this.lexer.inline(R)}}}text(T){const M=this.rules.block.text.exec(T);if(M)return{type:"text",raw:M[0],text:M[0],tokens:this.lexer.inline(M[0])}}escape(T){const M=this.rules.inline.escape.exec(T);if(M)return{type:"escape",raw:M[0],text:d(M[1])}}tag(T){const M=this.rules.inline.tag.exec(T);if(M)return!this.lexer.state.inLink&&/^
    /i.test(M[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(M[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(M[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:M[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:M[0]}}link(T){const M=this.rules.inline.link.exec(T);if(M){const R=M[2].trim();if(!this.options.pedantic&&/^$/.test(R))return;const Y=_(R.slice(0,-1),"\\");if((R.length-Y.length)%2===0)return}else{const Y=b(M[2],"()");if(Y>-1){const me=(M[0].indexOf("!")===0?5:4)+M[1].length+Y;M[2]=M[2].substring(0,Y),M[0]=M[0].substring(0,me).trim(),M[3]=""}}let O=M[2],V="";if(this.options.pedantic){const Y=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(O);Y&&(O=Y[1],V=Y[3])}else V=M[3]?M[3].slice(1,-1):"";return O=O.trim(),/^$/.test(R)?O=O.slice(1):O=O.slice(1,-1)),C(M,{href:O&&O.replace(this.rules.inline.anyPunctuation,"$1"),title:V&&V.replace(this.rules.inline.anyPunctuation,"$1")},M[0],this.lexer)}}reflink(T,M){let R;if((R=this.rules.inline.reflink.exec(T))||(R=this.rules.inline.nolink.exec(T))){const O=(R[2]||R[1]).replace(/\s+/g," "),V=M[O.toLowerCase()];if(!V){const Y=R[0].charAt(0);return{type:"text",raw:Y,text:Y}}return C(R,V,R[0],this.lexer)}}emStrong(T,M,R=""){let O=this.rules.inline.emStrongLDelim.exec(T);if(!O||O[3]&&R.match(/[\p{L}\p{N}]/u))return;if(!(O[1]||O[2]||"")||!R||this.rules.inline.punctuation.exec(R)){const Y=[...O[0]].length-1;let te,me,ye=Y,Ve=0;const ft=O[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(ft.lastIndex=0,M=M.slice(-1*T.length+Y);(O=ft.exec(M))!=null;){if(te=O[1]||O[2]||O[3]||O[4]||O[5]||O[6],!te)continue;if(me=[...te].length,O[3]||O[4]){ye+=me;continue}else if((O[5]||O[6])&&Y%3&&!((Y+me)%3)){Ve+=me;continue}if(ye-=me,ye>0)continue;me=Math.min(me,me+ye+Ve);const Ct=[...O[0]][0].length,Si=T.slice(0,Y+O.index+Ct+me);if(Math.min(Y,me)%2){const Zn=Si.slice(1,-1);return{type:"em",raw:Si,text:Zn,tokens:this.lexer.inlineTokens(Zn)}}const Gt=Si.slice(2,-2);return{type:"strong",raw:Si,text:Gt,tokens:this.lexer.inlineTokens(Gt)}}}}codespan(T){const M=this.rules.inline.code.exec(T);if(M){let R=M[2].replace(/\n/g," ");const O=/[^ ]/.test(R),V=/^ /.test(R)&&/ $/.test(R);return O&&V&&(R=R.substring(1,R.length-1)),R=d(R,!0),{type:"codespan",raw:M[0],text:R}}}br(T){const M=this.rules.inline.br.exec(T);if(M)return{type:"br",raw:M[0]}}del(T){const M=this.rules.inline.del.exec(T);if(M)return{type:"del",raw:M[0],text:M[2],tokens:this.lexer.inlineTokens(M[2])}}autolink(T){const M=this.rules.inline.autolink.exec(T);if(M){let R,O;return M[2]==="@"?(R=d(M[1]),O="mailto:"+R):(R=d(M[1]),O=R),{type:"link",raw:M[0],text:R,href:O,tokens:[{type:"text",raw:R,text:R}]}}}url(T){let M;if(M=this.rules.inline.url.exec(T)){let R,O;if(M[2]==="@")R=d(M[0]),O="mailto:"+R;else{let V;do V=M[0],M[0]=this.rules.inline._backpedal.exec(M[0])?.[0]??"";while(V!==M[0]);R=d(M[0]),M[1]==="www."?O="http://"+M[0]:O=M[0]}return{type:"link",raw:M[0],text:R,href:O,tokens:[{type:"text",raw:R,text:R}]}}}inlineText(T){const M=this.rules.inline.text.exec(T);if(M){let R;return this.lexer.state.inRawBlock?R=M[0]:R=d(M[0]),{type:"text",raw:M[0],text:R}}}}const y=/^(?: *(?:\n|$))+/,x=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,L=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,E=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,N=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,H=/(?:[*+-]|\d{1,9}[.)])/,F=u(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,H).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),W=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,j=/^[^\n]+/,B=/(?!\s*\])(?:\\.|[^\[\]\\])+/,G=u(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",B).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),ne=u(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,H).getRegex(),ae="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",de=/|$))/,se=u("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",de).replace("tag",ae).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),be=u(W).replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ae).getRegex(),Rt={blockquote:u(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",be).getRegex(),code:x,def:G,fences:L,heading:N,hr:E,html:se,lheading:F,list:ne,newline:y,paragraph:be,table:g,text:j},ct=u("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ae).getRegex(),Bt={...Rt,table:ct,paragraph:u(W).replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",ct).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ae).getRegex()},ht={...Rt,html:u(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",de).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:g,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:u(W).replace("hr",E).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",F).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},ei=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,js=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,fi=/^( {2,}|\\)\n(?!\s*$)/,po=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,Yg=u(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Al).getRegex(),Ia=u("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Al).getRegex(),Qg=u("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Al).getRegex(),Xg=u(/\\([punct])/,"gu").replace(/punct/g,Al).getRegex(),Ol=u(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),vu=u(de).replace("(?:-->|$)","-->").getRegex(),wu=u("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",vu).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Yc=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,gb=u(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Yc).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),mb=u(/^!?\[(label)\]\[(ref)\]/).replace("label",Yc).replace("ref",B).getRegex(),yu=u(/^!?\[(ref)\](?:\[\])?/).replace("ref",B).getRegex(),Qc=u("reflink|nolink(?!\\()","g").replace("reflink",mb).replace("nolink",yu).getRegex(),Dr={_backpedal:g,anyPunctuation:Xg,autolink:Ol,blockSkip:Pl,br:fi,code:js,del:g,emStrongLDelim:Yg,emStrongRDelimAst:Ia,emStrongRDelimUnd:Qg,escape:ei,link:gb,nolink:yu,punctuation:fb,reflink:mb,reflinkSearch:Qc,tag:wu,text:po,url:g},Fl={...Dr,link:u(/^!?\[(label)\]\((.*?)\)/).replace("label",Yc).getRegex(),reflink:u(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Yc).getRegex()},Su={...Dr,escape:u(ei).replace("])","~|])").getRegex(),url:u(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\me+" ".repeat(ye.length));let O,V,Y;for(;T;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(te=>(O=te.call({lexer:this},T,M))?(T=T.substring(O.raw.length),M.push(O),!0):!1))){if(O=this.tokenizer.space(T)){T=T.substring(O.raw.length),O.raw.length===1&&M.length>0?M[M.length-1].raw+=` -`:M.push(O);continue}if(O=this.tokenizer.code(T)){T=T.substring(O.raw.length),V=M[M.length-1],V&&(V.type==="paragraph"||V.type==="text")?(V.raw+=` -`+O.raw,V.text+=` -`+O.text,this.inlineQueue[this.inlineQueue.length-1].src=V.text):M.push(O);continue}if(O=this.tokenizer.fences(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.heading(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.hr(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.blockquote(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.list(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.html(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.def(T)){T=T.substring(O.raw.length),V=M[M.length-1],V&&(V.type==="paragraph"||V.type==="text")?(V.raw+=` -`+O.raw,V.text+=` -`+O.raw,this.inlineQueue[this.inlineQueue.length-1].src=V.text):this.tokens.links[O.tag]||(this.tokens.links[O.tag]={href:O.href,title:O.title});continue}if(O=this.tokenizer.table(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.lheading(T)){T=T.substring(O.raw.length),M.push(O);continue}if(Y=T,this.options.extensions&&this.options.extensions.startBlock){let te=1/0;const me=T.slice(1);let ye;this.options.extensions.startBlock.forEach(Ve=>{ye=Ve.call({lexer:this},me),typeof ye=="number"&&ye>=0&&(te=Math.min(te,ye))}),te<1/0&&te>=0&&(Y=T.substring(0,te+1))}if(this.state.top&&(O=this.tokenizer.paragraph(Y))){V=M[M.length-1],R&&V?.type==="paragraph"?(V.raw+=` -`+O.raw,V.text+=` -`+O.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=V.text):M.push(O),R=Y.length!==T.length,T=T.substring(O.raw.length);continue}if(O=this.tokenizer.text(T)){T=T.substring(O.raw.length),V=M[M.length-1],V&&V.type==="text"?(V.raw+=` -`+O.raw,V.text+=` -`+O.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=V.text):M.push(O);continue}if(T){const te="Infinite loop on byte: "+T.charCodeAt(0);if(this.options.silent){console.error(te);break}else throw new Error(te)}}return this.state.top=!0,M}inline(T,M=[]){return this.inlineQueue.push({src:T,tokens:M}),M}inlineTokens(T,M=[]){let R,O,V,Y=T,te,me,ye;if(this.tokens.links){const Ve=Object.keys(this.tokens.links);if(Ve.length>0)for(;(te=this.tokenizer.rules.inline.reflinkSearch.exec(Y))!=null;)Ve.includes(te[0].slice(te[0].lastIndexOf("[")+1,-1))&&(Y=Y.slice(0,te.index)+"["+"a".repeat(te[0].length-2)+"]"+Y.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(te=this.tokenizer.rules.inline.blockSkip.exec(Y))!=null;)Y=Y.slice(0,te.index)+"["+"a".repeat(te[0].length-2)+"]"+Y.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(te=this.tokenizer.rules.inline.anyPunctuation.exec(Y))!=null;)Y=Y.slice(0,te.index)+"++"+Y.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;T;)if(me||(ye=""),me=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(Ve=>(R=Ve.call({lexer:this},T,M))?(T=T.substring(R.raw.length),M.push(R),!0):!1))){if(R=this.tokenizer.escape(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.tag(T)){T=T.substring(R.raw.length),O=M[M.length-1],O&&R.type==="text"&&O.type==="text"?(O.raw+=R.raw,O.text+=R.text):M.push(R);continue}if(R=this.tokenizer.link(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.reflink(T,this.tokens.links)){T=T.substring(R.raw.length),O=M[M.length-1],O&&R.type==="text"&&O.type==="text"?(O.raw+=R.raw,O.text+=R.text):M.push(R);continue}if(R=this.tokenizer.emStrong(T,Y,ye)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.codespan(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.br(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.del(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.autolink(T)){T=T.substring(R.raw.length),M.push(R);continue}if(!this.state.inLink&&(R=this.tokenizer.url(T))){T=T.substring(R.raw.length),M.push(R);continue}if(V=T,this.options.extensions&&this.options.extensions.startInline){let Ve=1/0;const ft=T.slice(1);let Ct;this.options.extensions.startInline.forEach(Si=>{Ct=Si.call({lexer:this},ft),typeof Ct=="number"&&Ct>=0&&(Ve=Math.min(Ve,Ct))}),Ve<1/0&&Ve>=0&&(V=T.substring(0,Ve+1))}if(R=this.tokenizer.inlineText(V)){T=T.substring(R.raw.length),R.raw.slice(-1)!=="_"&&(ye=R.raw.slice(-1)),me=!0,O=M[M.length-1],O&&O.type==="text"?(O.raw+=R.raw,O.text+=R.text):M.push(R);continue}if(T){const Ve="Infinite loop on byte: "+T.charCodeAt(0);if(this.options.silent){console.error(Ve);break}else throw new Error(Ve)}}return M}}class Ir{options;parser;constructor(T){this.options=T||e.defaults}space(T){return""}code({text:T,lang:M,escaped:R}){const O=(M||"").match(/^\S*/)?.[0],V=T.replace(/\n$/,"")+` -`;return O?'
    '+(R?V:d(V,!0))+`
    -`:"
    "+(R?V:d(V,!0))+`
    -`}blockquote({tokens:T}){return`
    -${this.parser.parse(T)}
    -`}html({text:T}){return T}heading({tokens:T,depth:M}){return`${this.parser.parseInline(T)} -`}hr(T){return`
    -`}list(T){const M=T.ordered,R=T.start;let O="";for(let te=0;te -`+O+" -`}listitem(T){let M="";if(T.task){const R=this.checkbox({checked:!!T.checked});T.loose?T.tokens.length>0&&T.tokens[0].type==="paragraph"?(T.tokens[0].text=R+" "+T.tokens[0].text,T.tokens[0].tokens&&T.tokens[0].tokens.length>0&&T.tokens[0].tokens[0].type==="text"&&(T.tokens[0].tokens[0].text=R+" "+T.tokens[0].tokens[0].text)):T.tokens.unshift({type:"text",raw:R+" ",text:R+" "}):M+=R+" "}return M+=this.parser.parse(T.tokens,!!T.loose),`
  • ${M}
  • -`}checkbox({checked:T}){return"'}paragraph({tokens:T}){return`

    ${this.parser.parseInline(T)}

    -`}table(T){let M="",R="";for(let V=0;V${O}`),` - -`+M+` -`+O+`
    -`}tablerow({text:T}){return` -${T} -`}tablecell(T){const M=this.parser.parseInline(T.tokens),R=T.header?"th":"td";return(T.align?`<${R} align="${T.align}">`:`<${R}>`)+M+` -`}strong({tokens:T}){return`${this.parser.parseInline(T)}`}em({tokens:T}){return`${this.parser.parseInline(T)}`}codespan({text:T}){return`${T}`}br(T){return"
    "}del({tokens:T}){return`${this.parser.parseInline(T)}`}link({href:T,title:M,tokens:R}){const O=this.parser.parseInline(R),V=f(T);if(V===null)return O;T=V;let Y='
    ",Y}image({href:T,title:M,text:R}){const O=f(T);if(O===null)return R;T=O;let V=`${R}{const te=V[Y].flat(1/0);R=R.concat(this.walkTokens(te,M))}):V.tokens&&(R=R.concat(this.walkTokens(V.tokens,M)))}}return R}use(...T){const M=this.defaults.extensions||{renderers:{},childTokens:{}};return T.forEach(R=>{const O={...R};if(O.async=this.defaults.async||O.async||!1,R.extensions&&(R.extensions.forEach(V=>{if(!V.name)throw new Error("extension name required");if("renderer"in V){const Y=M.renderers[V.name];Y?M.renderers[V.name]=function(...te){let me=V.renderer.apply(this,te);return me===!1&&(me=Y.apply(this,te)),me}:M.renderers[V.name]=V.renderer}if("tokenizer"in V){if(!V.level||V.level!=="block"&&V.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const Y=M[V.level];Y?Y.unshift(V.tokenizer):M[V.level]=[V.tokenizer],V.start&&(V.level==="block"?M.startBlock?M.startBlock.push(V.start):M.startBlock=[V.start]:V.level==="inline"&&(M.startInline?M.startInline.push(V.start):M.startInline=[V.start]))}"childTokens"in V&&V.childTokens&&(M.childTokens[V.name]=V.childTokens)}),O.extensions=M),R.renderer){const V=this.defaults.renderer||new Ir(this.defaults);for(const Y in R.renderer){if(!(Y in V))throw new Error(`renderer '${Y}' does not exist`);if(["options","parser"].includes(Y))continue;const te=Y,me=R.renderer[te],ye=V[te];V[te]=(...Ve)=>{let ft=me.apply(V,Ve);return ft===!1&&(ft=ye.apply(V,Ve)),ft||""}}O.renderer=V}if(R.tokenizer){const V=this.defaults.tokenizer||new v(this.defaults);for(const Y in R.tokenizer){if(!(Y in V))throw new Error(`tokenizer '${Y}' does not exist`);if(["options","rules","lexer"].includes(Y))continue;const te=Y,me=R.tokenizer[te],ye=V[te];V[te]=(...Ve)=>{let ft=me.apply(V,Ve);return ft===!1&&(ft=ye.apply(V,Ve)),ft}}O.tokenizer=V}if(R.hooks){const V=this.defaults.hooks||new _o;for(const Y in R.hooks){if(!(Y in V))throw new Error(`hook '${Y}' does not exist`);if(Y==="options")continue;const te=Y,me=R.hooks[te],ye=V[te];_o.passThroughHooks.has(Y)?V[te]=Ve=>{if(this.defaults.async)return Promise.resolve(me.call(V,Ve)).then(Ct=>ye.call(V,Ct));const ft=me.call(V,Ve);return ye.call(V,ft)}:V[te]=(...Ve)=>{let ft=me.apply(V,Ve);return ft===!1&&(ft=ye.apply(V,Ve)),ft}}O.hooks=V}if(R.walkTokens){const V=this.defaults.walkTokens,Y=R.walkTokens;O.walkTokens=function(te){let me=[];return me.push(Y.call(this,te)),V&&(me=me.concat(V.call(this,te))),me}}this.defaults={...this.defaults,...O}}),this}setOptions(T){return this.defaults={...this.defaults,...T},this}lexer(T,M){return bs.lex(T,M??this.defaults)}parser(T,M){return Ti.parse(T,M??this.defaults)}parseMarkdown(T,M){return(O,V)=>{const Y={...V},te={...this.defaults,...Y},me=this.onError(!!te.silent,!!te.async);if(this.defaults.async===!0&&Y.async===!1)return me(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof O>"u"||O===null)return me(new Error("marked(): input parameter is undefined or null"));if(typeof O!="string")return me(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(O)+", string expected"));if(te.hooks&&(te.hooks.options=te),te.async)return Promise.resolve(te.hooks?te.hooks.preprocess(O):O).then(ye=>T(ye,te)).then(ye=>te.hooks?te.hooks.processAllTokens(ye):ye).then(ye=>te.walkTokens?Promise.all(this.walkTokens(ye,te.walkTokens)).then(()=>ye):ye).then(ye=>M(ye,te)).then(ye=>te.hooks?te.hooks.postprocess(ye):ye).catch(me);try{te.hooks&&(O=te.hooks.preprocess(O));let ye=T(O,te);te.hooks&&(ye=te.hooks.processAllTokens(ye)),te.walkTokens&&this.walkTokens(ye,te.walkTokens);let Ve=M(ye,te);return te.hooks&&(Ve=te.hooks.postprocess(Ve)),Ve}catch(ye){return me(ye)}}}onError(T,M){return R=>{if(R.message+=` -Please report this to https://github.com/markedjs/marked.`,T){const O="

    An error occurred:

    "+d(R.message+"",!0)+"
    ";return M?Promise.resolve(O):O}if(M)return Promise.reject(R);throw R}}}const Uo=new Lu;function Ot(Xe,T){return Uo.parse(Xe,T)}Ot.options=Ot.setOptions=function(Xe){return Uo.setOptions(Xe),Ot.defaults=Uo.defaults,i(Ot.defaults),Ot},Ot.getDefaults=t,Ot.defaults=e.defaults,Ot.use=function(...Xe){return Uo.use(...Xe),Ot.defaults=Uo.defaults,i(Ot.defaults),Ot},Ot.walkTokens=function(Xe,T){return Uo.walkTokens(Xe,T)},Ot.parseInline=Uo.parseInline,Ot.Parser=Ti,Ot.parser=Ti.parse,Ot.Renderer=Ir,Ot.TextRenderer=Na,Ot.Lexer=bs,Ot.lexer=bs.lex,Ot.Tokenizer=v,Ot.Hooks=_o,Ot.parse=Ot;const Jc=Ot.options,Vy=Ot.setOptions,zy=Ot.use,Hi=Ot.walkTokens,Bl=Ot.parseInline,Uy=Ot,_b=Ti.parse,Jg=bs.lex;e.Hooks=_o,e.Lexer=bs,e.Marked=Lu,e.Parser=Ti,e.Renderer=Ir,e.TextRenderer=Na,e.Tokenizer=v,e.getDefaults=t,e.lexer=Jg,e.marked=Ot,e.options=Jc,e.parse=Uy,e.parseInline=Bl,e.parser=_b,e.setOptions=Vy,e.use=zy,e.walkTokens=Hi}))})();tn.Hooks||exports.Hooks;tn.Lexer||exports.Lexer;tn.Marked||exports.Marked;tn.Parser||exports.Parser;var g7=tn.Renderer||exports.Renderer;tn.TextRenderer||exports.TextRenderer;tn.Tokenizer||exports.Tokenizer;var iG=tn.defaults||exports.defaults;tn.getDefaults||exports.getDefaults;var sy=tn.lexer||exports.lexer;tn.marked||exports.marked;tn.options||exports.options;var m7=tn.parse||exports.parse;tn.parseInline||exports.parseInline;var nG=tn.parser||exports.parser;tn.setOptions||exports.setOptions;tn.use||exports.use;tn.walkTokens||exports.walkTokens;function sG(o){return JSON.stringify(o,oG)}function Ok(o){let e=JSON.parse(o);return e=Fk(e),e}function oG(o,e){return e instanceof RegExp?{$mid:2,source:e.source,flags:e.flags}:e}function Fk(o,e=0){if(!o||e>200)return o;if(typeof o=="object"){switch(o.$mid){case 1:return ve.revive(o);case 2:return new RegExp(o.source,o.flags);case 17:return new Date(o.source)}if(o instanceof lT||o instanceof Uint8Array)return o;if(Array.isArray(o))for(let t=0;t{let i=[],n=[];return o&&({href:o,dimensions:i}=tG(o),n.push(`src="${Fb(o)}"`)),t&&n.push(`alt="${Fb(t)}"`),e&&n.push(`title="${Fb(e)}"`),i.length&&(n=n.concat(i)),""},paragraph({tokens:o}){return`

    ${this.parser.parseInline(o)}

    `},link({href:o,title:e,tokens:t}){let i=this.parser.parseInline(t);return typeof o!="string"?"":(o===i&&(i=ES(i)),e=typeof e=="string"?Fb(ES(e)):"",o=ES(o),o=o.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"),`
    ${i}`)}});function oy(o,e={},t={}){const i=new X;let n=!1;const s=AT(e),r=function(p){let _;try{_=Ok(decodeURIComponent(p))}catch{}return _?(_=O5(_,b=>{if(o.uris&&o.uris[b])return ve.revive(o.uris[b])}),encodeURIComponent(JSON.stringify(_))):p},a=function(p,_){const b=o.uris&&o.uris[p];let C=ve.revive(b);return _?p.startsWith(Te.data+":")?p:(C||(C=ve.parse(p)),E0.uriToBrowserUri(C).toString(!0)):!C||ve.parse(p).toString()===C.toString()?p:(C.query&&(C=C.with({query:r(C.query)})),C.toString())},l=new g7;l.image=NS.image,l.link=NS.link,l.paragraph=NS.paragraph;const c=[],d=[];if(e.codeBlockRendererSync?l.code=({text:p,lang:_})=>{const b=Pk.nextId(),C=e.codeBlockRendererSync(zA(_),p);return d.push([b,C]),`
    ${Km(p)}
    `}:e.codeBlockRenderer&&(l.code=({text:p,lang:_})=>{const b=Pk.nextId(),C=e.codeBlockRenderer(zA(_),p);return c.push(C.then(w=>[b,w])),`
    ${Km(p)}
    `}),e.actionHandler){const p=function(C){let w=C.target;if(!(w.tagName!=="A"&&(w=w.parentElement,!w||w.tagName!=="A")))try{let v=w.dataset.href;v&&(o.baseUri&&(v=TS(ve.from(o.baseUri),v)),e.actionHandler.callback(v,C))}catch(v){Ze(v)}finally{C.preventDefault()}},_=e.actionHandler.disposables.add(new ze(s,"click")),b=e.actionHandler.disposables.add(new ze(s,"auxclick"));e.actionHandler.disposables.add(J.any(_.event,b.event)(C=>{const w=new ur(fe(s),C);!w.leftButton&&!w.middleButton||p(w)})),e.actionHandler.disposables.add(U(s,"keydown",C=>{const w=new Nt(C);!w.equals(10)&&!w.equals(3)||p(w)}))}o.supportHtml||(l.html=({text:p})=>e.sanitizerOptions?.replaceWithPlaintext?Km(p):(o.isTrusted?p.match(/^(]+>)|(<\/\s*span>)$/):void 0)?p:""),t.renderer=l;let h=o.value??"";h.length>1e5&&(h=`${h.substr(0,1e5)}…`),o.supportThemeIcons&&(h=Kq(h));let u;if(e.fillInIncompleteTokens){const p={...iG,...t},_=sy(h,p),b=bG(_);u=nG(b,p)}else u=m7(h,{...t,async:!1});o.supportThemeIcons&&(u=Qd(u).map(_=>typeof _=="string"?_:_.outerHTML).join(""));const g=new DOMParser().parseFromString(Bk({isTrusted:o.isTrusted,...e.sanitizerOptions},u),"text/html");if(g.body.querySelectorAll("img, audio, video, source").forEach(p=>{const _=p.getAttribute("src");if(_){let b=_;try{o.baseUri&&(b=TS(ve.from(o.baseUri),b))}catch{}if(p.setAttribute("src",a(b,!0)),e.remoteImageIsAllowed){const C=ve.parse(b);C.scheme!==Te.file&&C.scheme!==Te.data&&!e.remoteImageIsAllowed(C)&&p.replaceWith(ce("",void 0,p.outerHTML))}}}),g.body.querySelectorAll("a").forEach(p=>{const _=p.getAttribute("href");if(p.setAttribute("href",""),!_||/^data:|javascript:/i.test(_)||/^command:/i.test(_)&&!o.isTrusted||/^command:(\/\/\/)?_workbench\.downloadResource/i.test(_))p.replaceWith(...p.childNodes);else{let b=a(_,!1);o.baseUri&&(b=TS(ve.from(o.baseUri),_)),p.dataset.href=b}}),s.innerHTML=Bk({isTrusted:o.isTrusted,...e.sanitizerOptions},g.body.innerHTML),c.length>0)Promise.all(c).then(p=>{if(n)return;const _=new Map(p),b=s.querySelectorAll("div[data-code]");for(const C of b){const w=_.get(C.dataset.code??"");w&&un(C,w)}e.asyncRenderCallback?.()});else if(d.length>0){const p=new Map(d),_=s.querySelectorAll("div[data-code]");for(const b of _){const C=p.get(b.dataset.code??"");C&&un(b,C)}}if(e.asyncRenderCallback)for(const p of s.getElementsByTagName("img")){const _=i.add(U(p,"load",()=>{_.dispose(),e.asyncRenderCallback()}))}return{element:s,dispose:()=>{n=!0,i.dispose()}}}function zA(o){if(!o)return"";const e=o.split(/[\s+|:|,|\{|\?]/,1);return e.length?e[0]:o}function TS(o,e){return/^\w[\w\d+.-]*:/.test(e)?e:o.path.endsWith("/")?WA(o,e).toString():WA(ny(o),e).toString()}const rG=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"];function Bk(o,e){const{config:t,allowedSchemes:i}=lG(o),n=new X;n.add(UA("uponSanitizeAttribute",(s,r)=>{if(r.attrName==="style"||r.attrName==="class"){if(s.tagName==="SPAN"){if(r.attrName==="style"){r.keepAttr=/^(color\:(#[0-9a-fA-F]+|var\(--vscode(-[a-zA-Z]+)+\));)?(background-color\:(#[0-9a-fA-F]+|var\(--vscode(-[a-zA-Z]+)+\));)?(border-radius:[0-9]+px;)?$/.test(r.attrValue);return}else if(r.attrName==="class"){r.keepAttr=/^codicon codicon-[a-z\-]+( codicon-modifier-[a-z\-]+)?$/.test(r.attrValue);return}}r.keepAttr=!1;return}else if(s.tagName==="INPUT"&&s.attributes.getNamedItem("type")?.value==="checkbox"){if(r.attrName==="type"&&r.attrValue==="checkbox"||r.attrName==="disabled"||r.attrName==="checked"){r.keepAttr=!0;return}r.keepAttr=!1}})),n.add(UA("uponSanitizeElement",(s,r)=>{if(r.tagName==="input"&&(s.attributes.getNamedItem("type")?.value==="checkbox"?s.setAttribute("disabled",""):o.replaceWithPlaintext||s.remove()),o.replaceWithPlaintext&&!r.allowedTags[r.tagName]&&r.tagName!=="body"&&s.parentElement){let a,l;if(r.tagName==="#comment")a=``;else{const u=rG.includes(r.tagName),f=s.attributes.length?" "+Array.from(s.attributes).map(g=>`${g.name}="${g.value}"`).join(" "):"";a=`<${r.tagName}${f}>`,u||(l=``)}const c=document.createDocumentFragment(),d=s.parentElement.ownerDocument.createTextNode(a);c.appendChild(d);const h=l?s.parentElement.ownerDocument.createTextNode(l):void 0;for(;s.firstChild;)c.appendChild(s.firstChild);h&&c.appendChild(h),s.nodeType===Node.COMMENT_NODE?s.parentElement.insertBefore(c,s):s.parentElement.replaceChild(c,s)}})),n.add(AV(i));try{return IF(e,{...t,RETURN_TRUSTED_TYPE:!0})}finally{n.dispose()}}const aG=["align","autoplay","alt","checked","class","colspan","controls","data-code","data-href","disabled","draggable","height","href","loop","muted","playsinline","poster","rowspan","src","style","target","title","type","width","start"];function lG(o){const e=[Te.http,Te.https,Te.mailto,Te.data,Te.file,Te.vscodeFileResource,Te.vscodeRemote,Te.vscodeRemoteResource];return o.isTrusted&&e.push(Te.command),{config:{ALLOWED_TAGS:o.allowedTags??[...PV],ALLOWED_ATTR:aG,ALLOW_UNKNOWN_PROTOCOLS:!0},allowedSchemes:e}}function cG(o){return typeof o=="string"?o:dG(o)}function dG(o,e){let t=o.value??"";t.length>1e5&&(t=`${t.substr(0,1e5)}…`);const i=m7(t,{async:!1,renderer:fG.value}).replace(/&(#\d+|[a-zA-Z]+);/g,n=>hG.get(n)??n);return Bk({isTrusted:!1},i).toString()}const hG=new Map([[""",'"'],[" "," "],["&","&"],["'","'"],["<","<"],[">",">"]]);function uG(){const o=new g7;return o.code=({text:e})=>e,o.blockquote=({text:e})=>e+` -`,o.html=e=>"",o.heading=function({tokens:e}){return this.parser.parseInline(e)+` -`},o.hr=()=>"",o.list=function({items:e}){return e.map(t=>this.listitem(t)).join(` -`)+` -`},o.listitem=({text:e})=>e+` -`,o.paragraph=function({tokens:e}){return this.parser.parseInline(e)+` -`},o.table=function({header:e,rows:t}){return e.map(i=>this.tablecell(i)).join(" ")+` -`+t.map(i=>i.map(n=>this.tablecell(n)).join(" ")).join(` -`)+` -`},o.tablerow=({text:e})=>e,o.tablecell=function({tokens:e}){return this.parser.parseInline(e)},o.strong=({text:e})=>e,o.em=({text:e})=>e,o.codespan=({text:e})=>e,o.br=e=>` -`,o.del=({text:e})=>e,o.image=e=>"",o.text=({text:e})=>e,o.link=({text:e})=>e,o}const fG=new ua(o=>uG());function HC(o){let e="";return o.forEach(t=>{e+=t.raw}),e}function p7(o){if(o.tokens)for(let e=o.tokens.length-1;e>=0;e--){const t=o.tokens[e];if(t.type==="text"){const i=t.raw.split(` -`),n=i[i.length-1];if(n.includes("`"))return vG(o);if(n.includes("**"))return kG(o);if(n.match(/\*\w/))return wG(o);if(n.match(/(^|\s)__\w/))return DG(o);if(n.match(/(^|\s)_\w/))return yG(o);if(gG(n)||mG(n)&&o.tokens.slice(0,e).some(s=>s.type==="text"&&s.raw.match(/\[[^\]]*$/))){const s=o.tokens.slice(e+1);return s[0]?.type==="link"&&s[1]?.type==="text"&&s[1].raw.match(/^ *"[^"]*$/)||n.match(/^[^"]* +"[^"]*$/)?LG(o):SG(o)}else if(n.match(/(^|\s)\[\w*/))return xG(o)}}}function gG(o){return!!o.match(/(^|\s)\[.*\]\(\w*/)}function mG(o){return!!o.match(/^[^\[]*\]\([^\)]*$/)}function pG(o){const e=o.items[o.items.length-1],t=e.tokens?e.tokens[e.tokens.length-1]:void 0;let i;if(t?.type==="text"&&!("inRawBlock"in e)&&(i=p7(t)),!i||i.type!=="paragraph")return;const n=HC(o.items.slice(0,-1)),s=e.raw.match(/^(\s*(-|\d+\.|\*) +)/)?.[0];if(!s)return;const r=s+HC(e.tokens.slice(0,-1))+i.raw,a=sy(n+r)[0];if(a.type==="list")return a}const _G=3;function bG(o){for(let e=0;e<_G;e++){const t=CG(o);if(t)o=t;else break}return o}function CG(o){let e,t;for(e=0;e"u"&&r.match(/^\s*\|/)){const a=r.match(/(\|[^\|]+)(?=\||$)/g);a&&(i=a.length)}else if(typeof i=="number")if(r.match(/^\s*\|/)){if(s!==t.length-1)return;n=!0}else return}if(typeof i=="number"&&i>0){const s=n?t.slice(0,-1).join(` -`):e,r=!!s.match(/\|\s*$/),a=s+(r?"":"|")+` -|${" --- |".repeat(i)}`;return sy(a)}}function UA(o,e){return EF(o,e),_e(()=>NF(o))}const Ga=class Ga{static createEmpty(e,t){const i=Ga.defaultTokenMetadata,n=new Uint32Array(2);return n[0]=e.length,n[1]=i,new Ga(n,e,t)}static createFromTextAndMetadata(e,t){let i=0,n="";const s=new Array;for(const{text:r,metadata:a}of e)s.push(i+r.length,a),i+=r.length,n+=r;return new Ga(new Uint32Array(s),n,t)}constructor(e,t,i){this._lineTokensBrand=void 0,this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=t,this.languageIdCodec=i}equals(e){return e instanceof Ga?this.slicedEquals(e,0,this._tokensCount):!1}slicedEquals(e,t,i){if(this._text!==e._text||this._tokensCount!==e._tokensCount)return!1;const n=t<<1,s=n+(i<<1);for(let r=n;r0?this._tokens[e-1<<1]:0}getMetadata(e){return this._tokens[(e<<1)+1]}getLanguageId(e){const t=this._tokens[(e<<1)+1],i=sr.getLanguageId(t);return this.languageIdCodec.decodeLanguageId(i)}getStandardTokenType(e){const t=this._tokens[(e<<1)+1];return sr.getTokenType(t)}getForeground(e){const t=this._tokens[(e<<1)+1];return sr.getForeground(t)}getClassName(e){const t=this._tokens[(e<<1)+1];return sr.getClassNameFromMetadata(t)}getInlineStyle(e,t){const i=this._tokens[(e<<1)+1];return sr.getInlineStyleFromMetadata(i,t)}getPresentation(e){const t=this._tokens[(e<<1)+1];return sr.getPresentationFromMetadata(t)}getEndOffset(e){return this._tokens[e<<1]}findTokenIndexAtOffset(e){return Ga.findIndexInTokensArray(this._tokens,e)}inflate(){return this}sliceAndInflate(e,t,i){return new VT(this,e,t,i)}static convertToEndOffset(e,t){const n=(e.length>>>1)-1;for(let s=0;s>>1)-1;for(;it&&(n=s)}return i}withInserted(e){if(e.length===0)return this;let t=0,i=0,n="";const s=new Array;let r=0;for(;;){const a=tr){n+=this._text.substring(r,l.offset);const c=this._tokens[(t<<1)+1];s.push(n.length,c),r=l.offset}n+=l.text,s.push(n.length,l.tokenMetadata),i++}else break}return new Ga(new Uint32Array(s),n,this.languageIdCodec)}getTokenText(e){const t=this.getStartOffset(e),i=this.getEndOffset(e);return this._text.substring(t,i)}forEach(e){const t=this.getCount();for(let i=0;i>>0;let Ni=Ga;class VT{constructor(e,t,i,n){this._source=e,this._startOffset=t,this._endOffset=i,this._deltaOffset=n,this._firstTokenIndex=e.findTokenIndexAtOffset(t),this.languageIdCodec=e.languageIdCodec,this._tokensCount=0;for(let s=this._firstTokenIndex,r=e.getCount();s=i);s++)this._tokensCount++}getMetadata(e){return this._source.getMetadata(this._firstTokenIndex+e)}getLanguageId(e){return this._source.getLanguageId(this._firstTokenIndex+e)}getLineContent(){return this._source.getLineContent().substring(this._startOffset,this._endOffset)}equals(e){return e instanceof VT?this._startOffset===e._startOffset&&this._endOffset===e._endOffset&&this._deltaOffset===e._deltaOffset&&this._source.slicedEquals(e._source,this._firstTokenIndex,this._tokensCount):!1}getCount(){return this._tokensCount}getStandardTokenType(e){return this._source.getStandardTokenType(this._firstTokenIndex+e)}getForeground(e){return this._source.getForeground(this._firstTokenIndex+e)}getEndOffset(e){const t=this._source.getEndOffset(this._firstTokenIndex+e);return Math.min(this._endOffset,t)-this._startOffset+this._deltaOffset}getClassName(e){return this._source.getClassName(this._firstTokenIndex+e)}getInlineStyle(e,t){return this._source.getInlineStyle(this._firstTokenIndex+e,t)}getPresentation(e){return this._source.getPresentation(this._firstTokenIndex+e)}findTokenIndexAtOffset(e){return this._source.findTokenIndexAtOffset(e+this._startOffset-this._deltaOffset)-this._firstTokenIndex}getTokenText(e){const t=this._firstTokenIndex+e,i=this._source.getStartOffset(t),n=this._source.getEndOffset(t);let s=this._source.getTokenText(t);return ithis._endOffset&&(s=s.substring(0,s.length-(n-this._endOffset))),s}forEach(e){for(let t=0;t>>0,new x0(t,e===null?a_:e)}const $A={getInitialState:()=>a_,tokenizeEncoded:(o,e,t)=>zT(0,t)};async function EG(o,e,t){if(!t)return KA(e,o.languageIdCodec,$A);const i=await si.getOrCreate(t);return KA(e,o.languageIdCodec,i||$A)}function NG(o,e,t,i,n,s,r){let a="
    ",l=i,c=0,d=!0;for(let h=0,u=e.getCount();h0;)r&&d?(g+=" ",d=!1):(g+=" ",d=!0),_--;break}case 60:g+="<",d=!1;break;case 62:g+=">",d=!1;break;case 38:g+="&",d=!1;break;case 0:g+="�",d=!1;break;case 65279:case 8232:case 8233:case 133:g+="�",d=!1;break;case 13:g+="​",d=!1;break;case 32:r&&d?(g+=" ",d=!1):(g+=" ",d=!0);break;default:g+=String.fromCharCode(p),d=!1}}if(a+=`${g}`,f>n||l>=n)break}return a+="
    ",a}function KA(o,e,t){let i='
    ';const n=va(o);let s=t.getInitialState();for(let r=0,a=n.length;r0&&(i+="
    ");const c=t.tokenizeEncoded(l,!0,s);Ni.convertToEndOffset(c.tokens,l.length);const h=new Ni(c.tokens,l,e).inflate();let u=0;for(let f=0,g=h.getCount();f${Km(l.substring(u,_))}`,u=_}s=c.endState}return i+="
    ",i}var TG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},jA=function(o,e){return function(t,i){e(t,i,o)}},Wk,sh;let Wh=(sh=class{constructor(e,t,i){this._options=e,this._languageService=t,this._openerService=i,this._onDidRenderAsync=new A,this.onDidRenderAsync=this._onDidRenderAsync.event}dispose(){this._onDidRenderAsync.dispose()}render(e,t,i){if(!e)return{element:document.createElement("span"),dispose:()=>{}};const n=new X,s=n.add(oy(e,{...this._getRenderOptions(e,n),...t},i));return s.element.classList.add("rendered-markdown"),{element:s.element,dispose:()=>n.dispose()}}_getRenderOptions(e,t){return{codeBlockRenderer:async(i,n)=>{let s;i?s=this._languageService.getLanguageIdByLanguageName(i):this._options.editor&&(s=this._options.editor.getModel()?.getLanguageId()),s||(s=Bs);const r=await EG(this._languageService,n,s),a=document.createElement("span");if(a.innerHTML=Wk._ttpTokenizer?.createHTML(r)??r,this._options.editor){const l=this._options.editor.getOption(50);qi(a,l)}else this._options.codeBlockFontFamily&&(a.style.fontFamily=this._options.codeBlockFontFamily);return this._options.codeBlockFontSize!==void 0&&(a.style.fontSize=this._options.codeBlockFontSize),a},asyncRenderCallback:()=>this._onDidRenderAsync.fire(),actionHandler:{callback:i=>UT(this._openerService,i,e.isTrusted),disposables:t}}}},Wk=sh,sh._ttpTokenizer=Kc("tokenizeToString",{createHTML(e){return e}}),sh);Wh=Wk=TG([jA(1,qt),jA(2,Vo)],Wh);async function UT(o,e,t){try{return await o.open(e,{fromUserGesture:!0,allowContributedOpeners:!0,allowCommands:MG(t)})}catch(i){return Ze(i),!1}}function MG(o){return o===!0?!0:o&&Array.isArray(o.enabledCommands)?o.enabledCommands:!1}const ms=He("accessibilityService"),RG=new le("accessibilityModeEnabled",!1),qA=2e4;let yd,R1,Hk,A1,Vk;function AG(o){yd=document.createElement("div"),yd.className="monaco-aria-container";const e=()=>{const i=document.createElement("div");return i.className="monaco-alert",i.setAttribute("role","alert"),i.setAttribute("aria-atomic","true"),yd.appendChild(i),i};R1=e(),Hk=e();const t=()=>{const i=document.createElement("div");return i.className="monaco-status",i.setAttribute("aria-live","polite"),i.setAttribute("aria-atomic","true"),yd.appendChild(i),i};A1=t(),Vk=t(),o.appendChild(yd)}function El(o){yd&&(R1.textContent!==o?(xn(Hk),VC(R1,o)):(xn(R1),VC(Hk,o)))}function Hh(o){yd&&(A1.textContent!==o?(xn(Vk),VC(A1,o)):(xn(A1),VC(Vk,o)))}function VC(o,e){xn(o),e.length>qA&&(e=e.substr(0,qA)),o.textContent=e,o.style.visibility="hidden",o.style.visibility="visible"}var PG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fm=function(o,e){return function(t,i){e(t,i,o)}};const Nr=ce;let zk=class extends xr{get _targetWindow(){return fe(this._target.targetElements[0])}get _targetDocumentElement(){return fe(this._target.targetElements[0]).document.documentElement}get isDisposed(){return this._isDisposed}get isMouseIn(){return this._lockMouseTracker.isMouseIn}get domNode(){return this._hover.containerDomNode}get onDispose(){return this._onDispose.event}get onRequestLayout(){return this._onRequestLayout.event}get anchor(){return this._hoverPosition===2?0:1}get x(){return this._x}get y(){return this._y}get isLocked(){return this._isLocked}set isLocked(e){this._isLocked!==e&&(this._isLocked=e,this._hoverContainer.classList.toggle("locked",this._isLocked))}constructor(e,t,i,n,s,r){super(),this._keybindingService=t,this._configurationService=i,this._openerService=n,this._instantiationService=s,this._accessibilityService=r,this._messageListeners=new X,this._isDisposed=!1,this._forcePosition=!1,this._x=0,this._y=0,this._isLocked=!1,this._enableFocusTraps=!1,this._addedFocusTrap=!1,this._onDispose=this._register(new A),this._onRequestLayout=this._register(new A),this._linkHandler=e.linkHandler||(u=>UT(this._openerService,u,ra(e.content)?e.content.isTrusted:void 0)),this._target="targetElements"in e.target?e.target:new OG(e.target),this._hoverPointer=e.appearance?.showPointer?Nr("div.workbench-hover-pointer"):void 0,this._hover=this._register(new RT),this._hover.containerDomNode.classList.add("workbench-hover","fadeIn"),e.appearance?.compact&&this._hover.containerDomNode.classList.add("workbench-hover","compact"),e.appearance?.skipFadeInAnimation&&this._hover.containerDomNode.classList.add("skip-fade-in"),e.additionalClasses&&this._hover.containerDomNode.classList.add(...e.additionalClasses),e.position?.forcePosition&&(this._forcePosition=!0),e.trapFocus&&(this._enableFocusTraps=!0),this._hoverPosition=e.position?.hoverPosition??3,this.onmousedown(this._hover.containerDomNode,u=>u.stopPropagation()),this.onkeydown(this._hover.containerDomNode,u=>{u.equals(9)&&this.dispose()}),this._register(U(this._targetWindow,"blur",()=>this.dispose()));const a=Nr("div.hover-row.markdown-hover"),l=Nr("div.hover-contents");if(typeof e.content=="string")l.textContent=e.content,l.style.whiteSpace="pre-wrap";else if(Ei(e.content))l.appendChild(e.content),l.classList.add("html-hover-contents");else{const u=e.content,f=this._instantiationService.createInstance(Wh,{codeBlockFontFamily:this._configurationService.getValue("editor").fontFamily||ls.fontFamily}),{element:g}=f.render(u,{actionHandler:{callback:p=>this._linkHandler(p),disposables:this._messageListeners},asyncRenderCallback:()=>{l.classList.add("code-hover-contents"),this.layout(),this._onRequestLayout.fire()}});l.appendChild(g)}if(a.appendChild(l),this._hover.contentsDomNode.appendChild(a),e.actions&&e.actions.length>0){const u=Nr("div.hover-row.status-bar"),f=Nr("div.actions");e.actions.forEach(g=>{const p=this._keybindingService.lookupKeybinding(g.commandId),_=p?p.getLabel():null;ey.render(f,{label:g.label,commandId:g.commandId,run:b=>{g.run(b),this.dispose()},iconClass:g.iconClass},_)}),u.appendChild(f),this._hover.containerDomNode.appendChild(u)}this._hoverContainer=Nr("div.workbench-hover-container"),this._hoverPointer&&this._hoverContainer.appendChild(this._hoverPointer),this._hoverContainer.appendChild(this._hover.containerDomNode);let c;if(e.actions&&e.actions.length>0?c=!1:e.persistence?.hideOnHover===void 0?c=typeof e.content=="string"||ra(e.content)&&!e.content.value.includes("](")&&!e.content.value.includes(""):c=e.persistence.hideOnHover,e.appearance?.showHoverHint){const u=Nr("div.hover-row.status-bar"),f=Nr("div.info");f.textContent=m("hoverhint","Hold {0} key to mouse over",Ue?"Option":"Alt"),u.appendChild(f),this._hover.containerDomNode.appendChild(u)}const d=[...this._target.targetElements];c||d.push(this._hoverContainer);const h=this._register(new GA(d));if(this._register(h.onMouseOut(()=>{this._isLocked||this.dispose()})),c){const u=[...this._target.targetElements,this._hoverContainer];this._lockMouseTracker=this._register(new GA(u)),this._register(this._lockMouseTracker.onMouseOut(()=>{this._isLocked||this.dispose()}))}else this._lockMouseTracker=h}addFocusTrap(){if(!this._enableFocusTraps||this._addedFocusTrap)return;this._addedFocusTrap=!0;const e=this._hover.containerDomNode,t=this.findLastFocusableChild(this._hover.containerDomNode);if(t){const i=iT(this._hoverContainer,Nr("div")),n=Z(this._hoverContainer,Nr("div"));i.tabIndex=0,n.tabIndex=0,this._register(U(n,"focus",s=>{e.focus(),s.preventDefault()})),this._register(U(i,"focus",s=>{t.focus(),s.preventDefault()}))}}findLastFocusableChild(e){if(e.hasChildNodes())for(let t=0;t=0)return s}const n=this.findLastFocusableChild(i);if(n)return n}}render(e){e.appendChild(this._hoverContainer);const i=this._hoverContainer.contains(this._hoverContainer.ownerDocument.activeElement)&&e7(this._configurationService.getValue("accessibility.verbosity.hover")===!0&&this._accessibilityService.isScreenReaderOptimized(),this._keybindingService.lookupKeybinding("editor.action.accessibleView")?.getAriaLabel());i&&Hh(i),this.layout(),this.addFocusTrap()}layout(){this._hover.containerDomNode.classList.remove("right-aligned"),this._hover.contentsDomNode.style.maxHeight="";const e=d=>{const h=AF(d),u=d.getBoundingClientRect();return{top:u.top*h,bottom:u.bottom*h,right:u.right*h,left:u.left*h}},t=this._target.targetElements.map(d=>e(d)),{top:i,right:n,bottom:s,left:r}=t[0],a=n-r,l=s-i,c={top:i,right:n,bottom:s,left:r,width:a,height:l,center:{x:r+a/2,y:i+l/2}};if(this.adjustHorizontalHoverPosition(c),this.adjustVerticalHoverPosition(c),this.adjustHoverMaxHeight(c),this._hoverContainer.style.padding="",this._hoverContainer.style.margin="",this._hoverPointer){switch(this._hoverPosition){case 1:c.left+=3,c.right+=3,this._hoverContainer.style.paddingLeft="3px",this._hoverContainer.style.marginLeft="-3px";break;case 0:c.left-=3,c.right-=3,this._hoverContainer.style.paddingRight="3px",this._hoverContainer.style.marginRight="-3px";break;case 2:c.top+=3,c.bottom+=3,this._hoverContainer.style.paddingTop="3px",this._hoverContainer.style.marginTop="-3px";break;case 3:c.top-=3,c.bottom-=3,this._hoverContainer.style.paddingBottom="3px",this._hoverContainer.style.marginBottom="-3px";break}c.center.x=c.left+a/2,c.center.y=c.top+l/2}this.computeXCordinate(c),this.computeYCordinate(c),this._hoverPointer&&(this._hoverPointer.classList.remove("top"),this._hoverPointer.classList.remove("left"),this._hoverPointer.classList.remove("right"),this._hoverPointer.classList.remove("bottom"),this.setHoverPointerPosition(c)),this._hover.onContentsChanged()}computeXCordinate(e){const t=this._hover.containerDomNode.clientWidth+2;this._target.x!==void 0?this._x=this._target.x:this._hoverPosition===1?this._x=e.right:this._hoverPosition===0?this._x=e.left-t:(this._hoverPointer?this._x=e.center.x-this._hover.containerDomNode.clientWidth/2:this._x=e.left,this._x+t>=this._targetDocumentElement.clientWidth&&(this._hover.containerDomNode.classList.add("right-aligned"),this._x=Math.max(this._targetDocumentElement.clientWidth-t-2,this._targetDocumentElement.clientLeft))),this._xthis._targetWindow.innerHeight&&(this._y=e.bottom)}adjustHorizontalHoverPosition(e){if(this._target.x!==void 0)return;const t=this._hoverPointer?3:0;if(this._forcePosition){const i=t+2;this._hoverPosition===1?this._hover.containerDomNode.style.maxWidth=`${this._targetDocumentElement.clientWidth-e.right-i}px`:this._hoverPosition===0&&(this._hover.containerDomNode.style.maxWidth=`${e.left-i}px`);return}this._hoverPosition===1?this._targetDocumentElement.clientWidth-e.right=this._hover.containerDomNode.clientWidth+t?this._hoverPosition=0:this._hoverPosition=2):this._hoverPosition===0&&(e.left=this._hover.containerDomNode.clientWidth+t?this._hoverPosition=1:this._hoverPosition=2),e.left-this._hover.containerDomNode.clientWidth-t<=this._targetDocumentElement.clientLeft&&(this._hoverPosition=1))}adjustVerticalHoverPosition(e){if(this._target.y!==void 0||this._forcePosition)return;const t=this._hoverPointer?3:0;this._hoverPosition===3?e.top-this._hover.containerDomNode.clientHeight-t<0&&(this._hoverPosition=2):this._hoverPosition===2&&e.bottom+this._hover.containerDomNode.clientHeight+t>this._targetWindow.innerHeight&&(this._hoverPosition=3)}adjustHoverMaxHeight(e){let t=this._targetWindow.innerHeight/2;if(this._forcePosition){const i=(this._hoverPointer?3:0)+2;this._hoverPosition===3?t=Math.min(t,e.top-i):this._hoverPosition===2&&(t=Math.min(t,this._targetWindow.innerHeight-e.bottom-i))}if(this._hover.containerDomNode.style.maxHeight=`${t}px`,this._hover.contentsDomNode.clientHeighte.height?this._hoverPointer.style.top=`${e.center.y-(this._y-t)-3}px`:this._hoverPointer.style.top=`${Math.round(t/2)-3}px`;break}case 3:case 2:{this._hoverPointer.classList.add(this._hoverPosition===3?"bottom":"top");const t=this._hover.containerDomNode.clientWidth;let i=Math.round(t/2)-3;const n=this._x+i;(ne.right)&&(i=e.center.x-this._x-3),this._hoverPointer.style.left=`${i}px`;break}}}focus(){this._hover.containerDomNode.focus()}dispose(){this._isDisposed||(this._onDispose.fire(),this._hoverContainer.remove(),this._messageListeners.dispose(),this._target.dispose(),super.dispose()),this._isDisposed=!0}};zk=PG([fm(1,vt),fm(2,lt),fm(3,Vo),fm(4,ke),fm(5,ms)],zk);class GA extends xr{get onMouseOut(){return this._onMouseOut.event}get isMouseIn(){return this._isMouseIn}constructor(e){super(),this._elements=e,this._isMouseIn=!0,this._onMouseOut=this._register(new A),this._elements.forEach(t=>this.onmouseover(t,()=>this._onTargetMouseOver(t))),this._elements.forEach(t=>this.onmouseleave(t,()=>this._onTargetMouseLeave(t)))}_onTargetMouseOver(e){this._isMouseIn=!0,this._clearEvaluateMouseStateTimeout(e)}_onTargetMouseLeave(e){this._isMouseIn=!1,this._evaluateMouseState(e)}_evaluateMouseState(e){this._clearEvaluateMouseStateTimeout(e),this._mouseTimeout=fe(e).setTimeout(()=>this._fireIfMouseOutside(),0)}_clearEvaluateMouseStateTimeout(e){this._mouseTimeout&&(fe(e).clearTimeout(this._mouseTimeout),this._mouseTimeout=void 0)}_fireIfMouseOutside(){this._isMouseIn||this._onMouseOut.fire()}}class OG{constructor(e){this._element=e,this.targetElements=[this._element]}dispose(){}}var Yi;(function(o){function e(s,r){if(s.start>=r.end||r.start>=s.end)return{start:0,end:0};const a=Math.max(s.start,r.start),l=Math.min(s.end,r.end);return l-a<=0?{start:0,end:0}:{start:a,end:l}}o.intersect=e;function t(s){return s.end-s.start<=0}o.isEmpty=t;function i(s,r){return!t(e(s,r))}o.intersects=i;function n(s,r){const a=[],l={start:s.start,end:Math.min(r.start,s.end)},c={start:Math.max(r.end,s.start),end:s.end};return t(l)||a.push(l),t(c)||a.push(c),a}o.relativeComplement=n})(Yi||(Yi={}));function FG(o){const e=o;return!!e&&typeof e.x=="number"&&typeof e.y=="number"}var oc;(function(o){o[o.AVOID=0]="AVOID",o[o.ALIGN=1]="ALIGN"})(oc||(oc={}));function nf(o,e,t){const i=t.mode===oc.ALIGN?t.offset:t.offset+t.size,n=t.mode===oc.ALIGN?t.offset+t.size:t.offset;return t.position===0?e<=o-i?i:e<=n?n-e:Math.max(o-e,0):e<=n?n-e:e<=o-i?i:0}const Lf=class Lf extends z{constructor(e,t){super(),this.container=null,this.useFixedPosition=!1,this.useShadowDOM=!1,this.delegate=null,this.toDisposeOnClean=z.None,this.toDisposeOnSetContainer=z.None,this.shadowRoot=null,this.shadowRootHostElement=null,this.view=ce(".context-view"),Cn(this.view),this.setContainer(e,t),this._register(_e(()=>this.setContainer(null,1)))}setContainer(e,t){this.useFixedPosition=t!==1;const i=this.useShadowDOM;if(this.useShadowDOM=t===3,!(e===this.container&&i===this.useShadowDOM)&&(this.container&&(this.toDisposeOnSetContainer.dispose(),this.view.remove(),this.shadowRoot&&(this.shadowRoot=null,this.shadowRootHostElement?.remove(),this.shadowRootHostElement=null),this.container=null),e)){if(this.container=e,this.useShadowDOM){this.shadowRootHostElement=ce(".shadow-root-host"),this.container.appendChild(this.shadowRootHostElement),this.shadowRoot=this.shadowRootHostElement.attachShadow({mode:"open"});const s=document.createElement("style");s.textContent=BG,this.shadowRoot.appendChild(s),this.shadowRoot.appendChild(this.view),this.shadowRoot.appendChild(ce("slot"))}else this.container.appendChild(this.view);const n=new X;Lf.BUBBLE_UP_EVENTS.forEach(s=>{n.add(jt(this.container,s,r=>{this.onDOMEvent(r,!1)}))}),Lf.BUBBLE_DOWN_EVENTS.forEach(s=>{n.add(jt(this.container,s,r=>{this.onDOMEvent(r,!0)},!0))}),this.toDisposeOnSetContainer=n}}show(e){this.isVisible()&&this.hide(),xn(this.view),this.view.className="context-view monaco-component",this.view.style.top="0px",this.view.style.left="0px",this.view.style.zIndex=`${2575+(e.layer??0)}`,this.view.style.position=this.useFixedPosition?"fixed":"absolute",ns(this.view),this.toDisposeOnClean=e.render(this.view)||z.None,this.delegate=e,this.doLayout(),this.delegate.focus?.()}getViewElement(){return this.view}layout(){if(this.isVisible()){if(this.delegate.canRelayout===!1&&!(Tc&&KN.pointerEvents)){this.hide();return}this.delegate?.layout?.(),this.doLayout()}}doLayout(){if(!this.isVisible())return;const e=this.delegate.getAnchor();let t;if(Ei(e)){const u=gi(e),f=AF(e);t={top:u.top*f,left:u.left*f,width:u.width*f,height:u.height*f}}else FG(e)?t={top:e.y,left:e.x,width:e.width||1,height:e.height||2}:t={top:e.posy,left:e.posx,width:2,height:2};const i=qp(this.view),n=Hd(this.view),s=this.delegate.anchorPosition||0,r=this.delegate.anchorAlignment||0,a=this.delegate.anchorAxisAlignment||0;let l,c;const d=km();if(a===0){const u={offset:t.top-d.pageYOffset,size:t.height,position:s===0?0:1},f={offset:t.left,size:t.width,position:r===0?0:1,mode:oc.ALIGN};l=nf(d.innerHeight,n,u)+d.pageYOffset,Yi.intersects({start:l,end:l+n},{start:u.offset,end:u.offset+u.size})&&(f.mode=oc.AVOID),c=nf(d.innerWidth,i,f)}else{const u={offset:t.left,size:t.width,position:r===0?0:1},f={offset:t.top,size:t.height,position:s===0?0:1,mode:oc.ALIGN};c=nf(d.innerWidth,i,u),Yi.intersects({start:c,end:c+i},{start:u.offset,end:u.offset+u.size})&&(f.mode=oc.AVOID),l=nf(d.innerHeight,n,f)+d.pageYOffset}this.view.classList.remove("top","bottom","left","right"),this.view.classList.add(s===0?"bottom":"top"),this.view.classList.add(r===0?"left":"right"),this.view.classList.toggle("fixed",this.useFixedPosition);const h=gi(this.container);this.view.style.top=`${l-(this.useFixedPosition?gi(this.view).top:h.top)}px`,this.view.style.left=`${c-(this.useFixedPosition?gi(this.view).left:h.left)}px`,this.view.style.width="initial"}hide(e){const t=this.delegate;this.delegate=null,t?.onHide&&t.onHide(e),this.toDisposeOnClean.dispose(),Cn(this.view)}isVisible(){return!!this.delegate}onDOMEvent(e,t){this.delegate&&(this.delegate.onDOMEvent?this.delegate.onDOMEvent(e,fe(e).document.activeElement):t&&!yi(e.target,this.container)&&this.hide())}dispose(){this.hide(),super.dispose()}};Lf.BUBBLE_UP_EVENTS=["click","keydown","focus","blur"],Lf.BUBBLE_DOWN_EVENTS=["click"];let Uk=Lf;const BG=` - :host { - all: initial; /* 1st rule so subsequent properties are reset. */ - } - - .codicon[class*='codicon-'] { - font: normal normal normal 16px/1 codicon; - display: inline-block; - text-decoration: none; - text-rendering: auto; - text-align: center; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - user-select: none; - -webkit-user-select: none; - -ms-user-select: none; - } - - :host { - font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "HelveticaNeue-Light", system-ui, "Ubuntu", "Droid Sans", sans-serif; - } - - :host-context(.mac) { font-family: -apple-system, BlinkMacSystemFont, sans-serif; } - :host-context(.mac:lang(zh-Hans)) { font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", sans-serif; } - :host-context(.mac:lang(zh-Hant)) { font-family: -apple-system, BlinkMacSystemFont, "PingFang TC", sans-serif; } - :host-context(.mac:lang(ja)) { font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic Pro", sans-serif; } - :host-context(.mac:lang(ko)) { font-family: -apple-system, BlinkMacSystemFont, "Nanum Gothic", "Apple SD Gothic Neo", "AppleGothic", sans-serif; } - - :host-context(.windows) { font-family: "Segoe WPC", "Segoe UI", sans-serif; } - :host-context(.windows:lang(zh-Hans)) { font-family: "Segoe WPC", "Segoe UI", "Microsoft YaHei", sans-serif; } - :host-context(.windows:lang(zh-Hant)) { font-family: "Segoe WPC", "Segoe UI", "Microsoft Jhenghei", sans-serif; } - :host-context(.windows:lang(ja)) { font-family: "Segoe WPC", "Segoe UI", "Yu Gothic UI", "Meiryo UI", sans-serif; } - :host-context(.windows:lang(ko)) { font-family: "Segoe WPC", "Segoe UI", "Malgun Gothic", "Dotom", sans-serif; } - - :host-context(.linux) { font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif; } - :host-context(.linux:lang(zh-Hans)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans SC", "Source Han Sans CN", "Source Han Sans", sans-serif; } - :host-context(.linux:lang(zh-Hant)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans TC", "Source Han Sans TW", "Source Han Sans", sans-serif; } - :host-context(.linux:lang(ja)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans J", "Source Han Sans JP", "Source Han Sans", sans-serif; } - :host-context(.linux:lang(ko)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans K", "Source Han Sans JR", "Source Han Sans", "UnDotum", "FBaekmuk Gulim", sans-serif; } -`;var WG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},HG=function(o,e){return function(t,i){e(t,i,o)}};let zC=class extends z{constructor(e){super(),this.layoutService=e,this.contextView=this._register(new Uk(this.layoutService.mainContainer,1)),this.layout(),this._register(e.onDidLayoutContainer(()=>this.layout()))}showContextView(e,t,i){let n;t?t===this.layoutService.getContainer(fe(t))?n=1:i?n=3:n=2:n=1,this.contextView.setContainer(t??this.layoutService.activeContainer,n),this.contextView.show(e);const s={close:()=>{this.openContextView===s&&this.hideContextView()}};return this.openContextView=s,s}layout(){this.contextView.layout()}hideContextView(e){this.contextView.hide(e),this.openContextView=void 0}};zC=WG([HG(0,jc)],zC);class VG extends zC{getContextViewElement(){return this.contextView.getViewElement()}}class zG{constructor(e,t,i){this.hoverDelegate=e,this.target=t,this.fadeInAnimation=i}async update(e,t,i){if(this._cancellationTokenSource&&(this._cancellationTokenSource.dispose(!0),this._cancellationTokenSource=void 0),this.isDisposed)return;let n;if(e===void 0||Os(e)||Ei(e))n=e;else if(!tC(e.markdown))n=e.markdown??e.markdownNotSupportedFallback;else{this._hoverWidget||this.show(m("iconLabel.loading","Loading..."),t,i),this._cancellationTokenSource=new In;const s=this._cancellationTokenSource.token;if(n=await e.markdown(s),n===void 0&&(n=e.markdownNotSupportedFallback),this.isDisposed||s.isCancellationRequested)return}this.show(n,t,i)}show(e,t,i){const n=this._hoverWidget;if(this.hasContent(e)){const s={content:e,target:this.target,actions:i?.actions,linkHandler:i?.linkHandler,trapFocus:i?.trapFocus,appearance:{showPointer:this.hoverDelegate.placement==="element",skipFadeInAnimation:!this.fadeInAnimation||!!n,showHoverHint:i?.appearance?.showHoverHint},position:{hoverPosition:2}};this._hoverWidget=this.hoverDelegate.showHover(s,t)}n?.dispose()}hasContent(e){return e?ra(e)?!!e.value:!0:!1}get isDisposed(){return this._hoverWidget?.isDisposed}dispose(){this._hoverWidget?.dispose(),this._cancellationTokenSource?.dispose(!0),this._cancellationTokenSource=void 0}}var UG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},gm=function(o,e){return function(t,i){e(t,i,o)}};let $k=class extends z{constructor(e,t,i,n,s){super(),this._instantiationService=e,this._keybindingService=i,this._layoutService=n,this._accessibilityService=s,this._managedHovers=new Map,t.onDidShowContextMenu(()=>this.hideHover()),this._contextViewHandler=this._register(new zC(this._layoutService))}showHover(e,t,i){if(ZA(this._currentHoverOptions)===ZA(e)||this._currentHover&&this._currentHoverOptions?.persistence?.sticky)return;this._currentHoverOptions=e,this._lastHoverOptions=e;const n=e.trapFocus||this._accessibilityService.isScreenReaderOptimized(),s=Xi();i||(n&&s?s.classList.contains("monaco-hover")||(this._lastFocusedElementBeforeOpen=s):this._lastFocusedElementBeforeOpen=void 0);const r=new X,a=this._instantiationService.createInstance(zk,e);if(e.persistence?.sticky&&(a.isLocked=!0),a.onDispose(()=>{this._currentHover?.domNode&&OF(this._currentHover.domNode)&&this._lastFocusedElementBeforeOpen?.focus(),this._currentHoverOptions===e&&(this._currentHoverOptions=void 0),r.dispose()},void 0,r),!e.container){const l=Ei(e.target)?e.target:e.target.targetElements[0];e.container=this._layoutService.getContainer(fe(l))}if(this._contextViewHandler.showContextView(new $G(a,t),e.container),a.onRequestLayout(()=>this._contextViewHandler.layout(),void 0,r),e.persistence?.sticky)r.add(U(fe(e.container).document,ee.MOUSE_DOWN,l=>{yi(l.target,a.domNode)||this.doHideHover()}));else{if("targetElements"in e.target)for(const c of e.target.targetElements)r.add(U(c,ee.CLICK,()=>this.hideHover()));else r.add(U(e.target,ee.CLICK,()=>this.hideHover()));const l=Xi();if(l){const c=fe(l).document;r.add(U(l,ee.KEY_DOWN,d=>this._keyDown(d,a,!!e.persistence?.hideOnKeyDown))),r.add(U(c,ee.KEY_DOWN,d=>this._keyDown(d,a,!!e.persistence?.hideOnKeyDown))),r.add(U(l,ee.KEY_UP,d=>this._keyUp(d,a))),r.add(U(c,ee.KEY_UP,d=>this._keyUp(d,a)))}}if("IntersectionObserver"in _t){const l=new IntersectionObserver(d=>this._intersectionChange(d,a),{threshold:0}),c="targetElements"in e.target?e.target.targetElements[0]:e.target;l.observe(c),r.add(_e(()=>l.disconnect()))}return this._currentHover=a,a}hideHover(){this._currentHover?.isLocked||!this._currentHoverOptions||this.doHideHover()}doHideHover(){this._currentHover=void 0,this._currentHoverOptions=void 0,this._contextViewHandler.hideContextView()}_intersectionChange(e,t){e[e.length-1].isIntersecting||t.dispose()}showAndFocusLastHover(){this._lastHoverOptions&&this.showHover(this._lastHoverOptions,!0,!0)}_keyDown(e,t,i){if(e.key==="Alt"){t.isLocked=!0;return}const n=new Nt(e);this._keybindingService.resolveKeyboardEvent(n).getSingleModifierDispatchChords().some(r=>!!r)||this._keybindingService.softDispatch(n,n.target).kind!==0||i&&(!this._currentHoverOptions?.trapFocus||e.key!=="Tab")&&(this.hideHover(),this._lastFocusedElementBeforeOpen?.focus())}_keyUp(e,t){e.key==="Alt"&&(t.isLocked=!1,t.isMouseIn||(this.hideHover(),this._lastFocusedElementBeforeOpen?.focus()))}setupManagedHover(e,t,i,n){t.setAttribute("custom-hover","true"),t.title!==""&&(console.warn("HTML element already has a title attribute, which will conflict with the custom hover. Please remove the title attribute."),console.trace("Stack trace:",t.title),t.title="");let s,r;const a=(w,v)=>{const y=r!==void 0;w&&(r?.dispose(),r=void 0),v&&(s?.dispose(),s=void 0),y&&(e.onDidHideHover?.(),r=void 0)},l=(w,v,y,x)=>new wr(async()=>{(!r||r.isDisposed)&&(r=new zG(e,y||t,w>0),await r.update(typeof i=="function"?i():i,v,{...n,trapFocus:x}))},w);let c=!1;const d=U(t,ee.MOUSE_DOWN,()=>{c=!0,a(!0,!0)},!0),h=U(t,ee.MOUSE_UP,()=>{c=!1},!0),u=U(t,ee.MOUSE_LEAVE,w=>{c=!1,a(!1,w.fromElement===t)},!0),f=w=>{if(s)return;const v=new X,y={targetElements:[t],dispose:()=>{}};if(e.placement===void 0||e.placement==="mouse"){const x=L=>{y.x=L.x+10,Ei(L.target)&&YA(L.target,t)!==t&&a(!0,!0)};v.add(U(t,ee.MOUSE_MOVE,x,!0))}s=v,!(Ei(w.target)&&YA(w.target,t)!==t)&&v.add(l(e.delay,!1,y))},g=U(t,ee.MOUSE_OVER,f,!0),p=()=>{if(c||s)return;const w={targetElements:[t],dispose:()=>{}},v=new X,y=()=>a(!0,!0);v.add(U(t,ee.BLUR,y,!0)),v.add(l(e.delay,!1,w)),s=v};let _;const b=t.tagName.toLowerCase();b!=="input"&&b!=="textarea"&&(_=U(t,ee.FOCUS,p,!0));const C={show:w=>{a(!1,!0),l(0,w,void 0,w)},hide:()=>{a(!0,!0)},update:async(w,v)=>{i=w,await r?.update(i,void 0,v)},dispose:()=>{this._managedHovers.delete(t),g.dispose(),u.dispose(),d.dispose(),h.dispose(),_?.dispose(),a(!0,!0)}};return this._managedHovers.set(t,C),C}showManagedHover(e){const t=this._managedHovers.get(e);t&&t.show(!0)}dispose(){this._managedHovers.forEach(e=>e.dispose()),super.dispose()}};$k=UG([gm(0,ke),gm(1,Lr),gm(2,vt),gm(3,jc),gm(4,ms)],$k);function ZA(o){if(o!==void 0)return o?.id??o}class $G{get anchorPosition(){return this._hover.anchor}constructor(e,t=!1){this._hover=e,this._focus=t,this.layer=1}render(e){return this._hover.render(e),this._focus&&this._hover.focus(),this._hover}getAnchor(){return{x:this._hover.x,y:this._hover.y}}layout(){this._hover.layout()}}function YA(o,e){for(e=e??fe(o).document.body;!o.hasAttribute("custom-hover")&&o!==e;)o=o.parentElement;return o}Qe(au,$k,1);Sr((o,e)=>{const t=o.getColor(z3);t&&(e.addRule(`.monaco-workbench .workbench-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${t.transparent(.5)}; }`),e.addRule(`.monaco-workbench .workbench-hover hr { border-top: 1px solid ${t.transparent(.5)}; }`))});const b7=He("IWorkspaceEditService");class $T{constructor(e){this.metadata=e}static convert(e){return e.edits.map(t=>{if(Xd.is(t))return Xd.lift(t);if(Ff.is(t))return Ff.lift(t);throw new Error("Unsupported edit")})}}class Xd extends $T{static is(e){return e instanceof Xd?!0:Oi(e)&&ve.isUri(e.resource)&&Oi(e.textEdit)}static lift(e){return e instanceof Xd?e:new Xd(e.resource,e.textEdit,e.versionId,e.metadata)}constructor(e,t,i=void 0,n){super(n),this.resource=e,this.textEdit=t,this.versionId=i}}class Ff extends $T{static is(e){return e instanceof Ff?!0:Oi(e)&&(!!e.newResource||!!e.oldResource)}static lift(e){return e instanceof Ff?e:new Ff(e.oldResource,e.newResource,e.options,e.metadata)}constructor(e,t,i={},n){super(n),this.oldResource=e,this.newResource=t,this.options=i}}const Vi={enableSplitViewResizing:!0,renderSideBySide:!0,renderMarginRevertIcon:!0,renderGutterMenu:!0,maxComputationTime:5e3,maxFileSize:50,ignoreTrimWhitespace:!0,renderIndicators:!0,originalEditable:!1,diffCodeLens:!1,renderOverviewRuler:!0,diffWordWrap:"inherit",diffAlgorithm:"advanced",accessibilityVerbose:!1,experimental:{showMoves:!1,showEmptyDecorations:!0,useTrueInlineView:!1},hideUnchangedRegions:{enabled:!1,contextLineCount:3,minimumLineCount:3,revealLineCount:20},isInEmbeddedEditor:!1,onlyShowAccessibleDiffViewer:!1,renderSideBySideInlineBreakpoint:900,useInlineViewWhenSpaceIsLimited:!0,compactMode:!1},KG=Object.freeze({id:"editor",order:5,type:"object",title:m("editorConfigurationTitle","Editor"),scope:5}),UC={...KG,properties:{"editor.tabSize":{type:"number",default:Qi.tabSize,minimum:1,markdownDescription:m("tabSize","The number of spaces a tab is equal to. This setting is overridden based on the file contents when {0} is on.","`#editor.detectIndentation#`")},"editor.indentSize":{anyOf:[{type:"string",enum:["tabSize"]},{type:"number",minimum:1}],default:"tabSize",markdownDescription:m("indentSize",'The number of spaces used for indentation or `"tabSize"` to use the value from `#editor.tabSize#`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.')},"editor.insertSpaces":{type:"boolean",default:Qi.insertSpaces,markdownDescription:m("insertSpaces","Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when {0} is on.","`#editor.detectIndentation#`")},"editor.detectIndentation":{type:"boolean",default:Qi.detectIndentation,markdownDescription:m("detectIndentation","Controls whether {0} and {1} will be automatically detected when a file is opened based on the file contents.","`#editor.tabSize#`","`#editor.insertSpaces#`")},"editor.trimAutoWhitespace":{type:"boolean",default:Qi.trimAutoWhitespace,description:m("trimAutoWhitespace","Remove trailing auto inserted whitespace.")},"editor.largeFileOptimizations":{type:"boolean",default:Qi.largeFileOptimizations,description:m("largeFileOptimizations","Special handling for large files to disable certain memory intensive features.")},"editor.wordBasedSuggestions":{enum:["off","currentDocument","matchingDocuments","allDocuments"],default:"matchingDocuments",enumDescriptions:[m("wordBasedSuggestions.off","Turn off Word Based Suggestions."),m("wordBasedSuggestions.currentDocument","Only suggest words from the active document."),m("wordBasedSuggestions.matchingDocuments","Suggest words from all open documents of the same language."),m("wordBasedSuggestions.allDocuments","Suggest words from all open documents.")],description:m("wordBasedSuggestions","Controls whether completions should be computed based on words in the document and from which documents they are computed.")},"editor.semanticHighlighting.enabled":{enum:[!0,!1,"configuredByTheme"],enumDescriptions:[m("semanticHighlighting.true","Semantic highlighting enabled for all color themes."),m("semanticHighlighting.false","Semantic highlighting disabled for all color themes."),m("semanticHighlighting.configuredByTheme","Semantic highlighting is configured by the current color theme's `semanticHighlighting` setting.")],default:"configuredByTheme",description:m("semanticHighlighting.enabled","Controls whether the semanticHighlighting is shown for the languages that support it.")},"editor.stablePeek":{type:"boolean",default:!1,markdownDescription:m("stablePeek","Keep peek editors open even when double-clicking their content or when hitting `Escape`.")},"editor.maxTokenizationLineLength":{type:"integer",default:2e4,description:m("maxTokenizationLineLength","Lines above this length will not be tokenized for performance reasons")},"editor.experimental.asyncTokenization":{type:"boolean",default:!0,description:m("editor.experimental.asyncTokenization","Controls whether the tokenization should happen asynchronously on a web worker."),tags:["experimental"]},"editor.experimental.asyncTokenizationLogging":{type:"boolean",default:!1,description:m("editor.experimental.asyncTokenizationLogging","Controls whether async tokenization should be logged. For debugging only.")},"editor.experimental.asyncTokenizationVerification":{type:"boolean",default:!1,description:m("editor.experimental.asyncTokenizationVerification","Controls whether async tokenization should be verified against legacy background tokenization. Might slow down tokenization. For debugging only."),tags:["experimental"]},"editor.experimental.treeSitterTelemetry":{type:"boolean",default:!1,markdownDescription:m("editor.experimental.treeSitterTelemetry","Controls whether tree sitter parsing should be turned on and telemetry collected. Setting `editor.experimental.preferTreeSitter` for specific languages will take precedence."),tags:["experimental"]},"editor.language.brackets":{type:["array","null"],default:null,description:m("schema.brackets","Defines the bracket symbols that increase or decrease the indentation."),items:{type:"array",items:[{type:"string",description:m("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:m("schema.closeBracket","The closing bracket character or string sequence.")}]}},"editor.language.colorizedBracketPairs":{type:["array","null"],default:null,description:m("schema.colorizedBracketPairs","Defines the bracket pairs that are colorized by their nesting level if bracket pair colorization is enabled."),items:{type:"array",items:[{type:"string",description:m("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:m("schema.closeBracket","The closing bracket character or string sequence.")}]}},"diffEditor.maxComputationTime":{type:"number",default:Vi.maxComputationTime,description:m("maxComputationTime","Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.")},"diffEditor.maxFileSize":{type:"number",default:Vi.maxFileSize,description:m("maxFileSize","Maximum file size in MB for which to compute diffs. Use 0 for no limit.")},"diffEditor.renderSideBySide":{type:"boolean",default:Vi.renderSideBySide,description:m("sideBySide","Controls whether the diff editor shows the diff side by side or inline.")},"diffEditor.renderSideBySideInlineBreakpoint":{type:"number",default:Vi.renderSideBySideInlineBreakpoint,description:m("renderSideBySideInlineBreakpoint","If the diff editor width is smaller than this value, the inline view is used.")},"diffEditor.useInlineViewWhenSpaceIsLimited":{type:"boolean",default:Vi.useInlineViewWhenSpaceIsLimited,description:m("useInlineViewWhenSpaceIsLimited","If enabled and the editor width is too small, the inline view is used.")},"diffEditor.renderMarginRevertIcon":{type:"boolean",default:Vi.renderMarginRevertIcon,description:m("renderMarginRevertIcon","When enabled, the diff editor shows arrows in its glyph margin to revert changes.")},"diffEditor.renderGutterMenu":{type:"boolean",default:Vi.renderGutterMenu,description:m("renderGutterMenu","When enabled, the diff editor shows a special gutter for revert and stage actions.")},"diffEditor.ignoreTrimWhitespace":{type:"boolean",default:Vi.ignoreTrimWhitespace,description:m("ignoreTrimWhitespace","When enabled, the diff editor ignores changes in leading or trailing whitespace.")},"diffEditor.renderIndicators":{type:"boolean",default:Vi.renderIndicators,description:m("renderIndicators","Controls whether the diff editor shows +/- indicators for added/removed changes.")},"diffEditor.codeLens":{type:"boolean",default:Vi.diffCodeLens,description:m("codeLens","Controls whether the editor shows CodeLens.")},"diffEditor.wordWrap":{type:"string",enum:["off","on","inherit"],default:Vi.diffWordWrap,markdownEnumDescriptions:[m("wordWrap.off","Lines will never wrap."),m("wordWrap.on","Lines will wrap at the viewport width."),m("wordWrap.inherit","Lines will wrap according to the {0} setting.","`#editor.wordWrap#`")]},"diffEditor.diffAlgorithm":{type:"string",enum:["legacy","advanced"],default:Vi.diffAlgorithm,markdownEnumDescriptions:[m("diffAlgorithm.legacy","Uses the legacy diffing algorithm."),m("diffAlgorithm.advanced","Uses the advanced diffing algorithm.")],tags:["experimental"]},"diffEditor.hideUnchangedRegions.enabled":{type:"boolean",default:Vi.hideUnchangedRegions.enabled,markdownDescription:m("hideUnchangedRegions.enabled","Controls whether the diff editor shows unchanged regions.")},"diffEditor.hideUnchangedRegions.revealLineCount":{type:"integer",default:Vi.hideUnchangedRegions.revealLineCount,markdownDescription:m("hideUnchangedRegions.revealLineCount","Controls how many lines are used for unchanged regions."),minimum:1},"diffEditor.hideUnchangedRegions.minimumLineCount":{type:"integer",default:Vi.hideUnchangedRegions.minimumLineCount,markdownDescription:m("hideUnchangedRegions.minimumLineCount","Controls how many lines are used as a minimum for unchanged regions."),minimum:1},"diffEditor.hideUnchangedRegions.contextLineCount":{type:"integer",default:Vi.hideUnchangedRegions.contextLineCount,markdownDescription:m("hideUnchangedRegions.contextLineCount","Controls how many lines are used as context when comparing unchanged regions."),minimum:1},"diffEditor.experimental.showMoves":{type:"boolean",default:Vi.experimental.showMoves,markdownDescription:m("showMoves","Controls whether the diff editor should show detected code moves.")},"diffEditor.experimental.showEmptyDecorations":{type:"boolean",default:Vi.experimental.showEmptyDecorations,description:m("showEmptyDecorations","Controls whether the diff editor shows empty decorations to see where characters got inserted or deleted.")},"diffEditor.experimental.useTrueInlineView":{type:"boolean",default:Vi.experimental.useTrueInlineView,description:m("useTrueInlineView","If enabled and the editor uses the inline view, word changes are rendered inline.")}}};function jG(o){return typeof o.type<"u"||typeof o.anyOf<"u"}for(const o of Zu){const e=o.schema;if(typeof e<"u")if(jG(e))UC.properties[`editor.${o.name}`]=e;else for(const t in e)Object.hasOwnProperty.call(e,t)&&(UC.properties[t]=e[t])}let Bb=null;function C7(){return Bb===null&&(Bb=Object.create(null),Object.keys(UC.properties).forEach(o=>{Bb[o]=!0})),Bb}function qG(o){return C7()[`editor.${o}`]||!1}function GG(o){return C7()[`diffEditor.${o}`]||!1}const ZG=Bi.as(su.Configuration);ZG.registerConfiguration(UC);class aa{static insert(e,t){return{range:new I(e.lineNumber,e.column,e.lineNumber,e.column),text:t,forceMoveMarkers:!0}}static delete(e){return{range:e,text:null}}static replace(e,t){return{range:e,text:t}}static replaceMove(e,t){return{range:e,text:t,forceMoveMarkers:!0}}}function Wb(o){return Object.isFrozen(o)?o:c6(o)}class Pi{static createEmptyModel(e){return new Pi({},[],[],void 0,e)}constructor(e,t,i,n,s){this._contents=e,this._keys=t,this._overrides=i,this.raw=n,this.logService=s,this.overrideConfigurations=new Map}get rawConfiguration(){if(!this._rawConfiguration)if(this.raw?.length){const e=this.raw.map(t=>{if(t instanceof Pi)return t;const i=new YG("",this.logService);return i.parseRaw(t),i.configurationModel});this._rawConfiguration=e.reduce((t,i)=>i===t?i:t.merge(i),e[0])}else this._rawConfiguration=this;return this._rawConfiguration}get contents(){return this._contents}get overrides(){return this._overrides}get keys(){return this._keys}isEmpty(){return this._keys.length===0&&Object.keys(this._contents).length===0&&this._overrides.length===0}getValue(e){return e?DR(this.contents,e):this.contents}inspect(e,t){const i=this;return{get value(){return Wb(i.rawConfiguration.getValue(e))},get override(){return t?Wb(i.rawConfiguration.getOverrideValue(e,t)):void 0},get merged(){return Wb(t?i.rawConfiguration.override(t).getValue(e):i.rawConfiguration.getValue(e))},get overrides(){const n=[];for(const{contents:s,identifiers:r,keys:a}of i.rawConfiguration.overrides){const l=new Pi(s,a,[],void 0,i.logService).getValue(e);l!==void 0&&n.push({identifiers:r,value:l})}return n.length?Wb(n):void 0}}}getOverrideValue(e,t){const i=this.getContentsForOverrideIdentifer(t);return i?e?DR(i,e):i:void 0}override(e){let t=this.overrideConfigurations.get(e);return t||(t=this.createOverrideConfigurationModel(e),this.overrideConfigurations.set(e,t)),t}merge(...e){const t=Ya(this.contents),i=Ya(this.overrides),n=[...this.keys],s=this.raw?.length?[...this.raw]:[this];for(const r of e)if(s.push(...r.raw?.length?r.raw:[r]),!r.isEmpty()){this.mergeContents(t,r.contents);for(const a of r.overrides){const[l]=i.filter(c=>li(c.identifiers,a.identifiers));l?(this.mergeContents(l.contents,a.contents),l.keys.push(...a.keys),l.keys=Eh(l.keys)):i.push(Ya(a))}for(const a of r.keys)n.indexOf(a)===-1&&n.push(a)}return new Pi(t,n,i,s.every(r=>r instanceof Pi)?void 0:s,this.logService)}createOverrideConfigurationModel(e){const t=this.getContentsForOverrideIdentifer(e);if(!t||typeof t!="object"||!Object.keys(t).length)return this;const i={};for(const n of Eh([...Object.keys(this.contents),...Object.keys(t)])){let s=this.contents[n];const r=t[n];r&&(typeof s=="object"&&typeof r=="object"?(s=Ya(s),this.mergeContents(s,r)):s=r),i[n]=s}return new Pi(i,this.keys,this.overrides,void 0,this.logService)}mergeContents(e,t){for(const i of Object.keys(t)){if(i in e&&Oi(e[i])&&Oi(t[i])){this.mergeContents(e[i],t[i]);continue}e[i]=Ya(t[i])}}getContentsForOverrideIdentifer(e){let t=null,i=null;const n=s=>{s&&(i?this.mergeContents(i,s):i=Ya(s))};for(const s of this.overrides)s.identifiers.length===1&&s.identifiers[0]===e?t=s.contents:s.identifiers.includes(e)&&n(s.contents);return n(t),i}toJSON(){return{contents:this.contents,overrides:this.overrides,keys:this.keys}}setValue(e,t){this.updateValue(e,t,!1)}removeValue(e){const t=this.keys.indexOf(e);t!==-1&&(this.keys.splice(t,1),Qz(this.contents,e),Pc.test(e)&&this.overrides.splice(this.overrides.findIndex(i=>li(i.identifiers,wC(e))),1))}updateValue(e,t,i){if(t3(this.contents,e,t,n=>this.logService.error(n)),i=i||this.keys.indexOf(e)===-1,i&&this.keys.push(e),Pc.test(e)){const n=wC(e),s={identifiers:n,keys:Object.keys(this.contents[e]),contents:tk(this.contents[e],a=>this.logService.error(a))},r=this.overrides.findIndex(a=>li(a.identifiers,n));r!==-1?this.overrides[r]=s:this.overrides.push(s)}}}class YG{constructor(e,t){this._name=e,this.logService=t,this._raw=null,this._configurationModel=null,this._restrictedConfigurations=[]}get configurationModel(){return this._configurationModel||Pi.createEmptyModel(this.logService)}parseRaw(e,t){this._raw=e;const{contents:i,keys:n,overrides:s,restricted:r,hasExcludedProperties:a}=this.doParseRaw(e,t);this._configurationModel=new Pi(i,n,s,a?[e]:void 0,this.logService),this._restrictedConfigurations=r||[]}doParseRaw(e,t){const i=Bi.as(su.Configuration).getConfigurationProperties(),n=this.filter(e,i,!0,t);e=n.raw;const s=tk(e,l=>this.logService.error(`Conflict in settings file ${this._name}: ${l}`)),r=Object.keys(e),a=this.toOverrides(e,l=>this.logService.error(`Conflict in settings file ${this._name}: ${l}`));return{contents:s,keys:r,overrides:a,restricted:n.restricted,hasExcludedProperties:n.hasExcludedProperties}}filter(e,t,i,n){let s=!1;if(!n?.scopes&&!n?.skipRestricted&&!n?.exclude?.length)return{raw:e,restricted:[],hasExcludedProperties:s};const r={},a=[];for(const l in e)if(Pc.test(l)&&i){const c=this.filter(e[l],t,!1,n);r[l]=c.raw,s=s||c.hasExcludedProperties,a.push(...c.restricted)}else{const c=t[l],d=c?typeof c.scope<"u"?c.scope:3:void 0;c?.restricted&&a.push(l),!n.exclude?.includes(l)&&(n.include?.includes(l)||(d===void 0||n.scopes===void 0||n.scopes.includes(d))&&!(n.skipRestricted&&c?.restricted))?r[l]=e[l]:s=!0}return{raw:r,restricted:a,hasExcludedProperties:s}}toOverrides(e,t){const i=[];for(const n of Object.keys(e))if(Pc.test(n)){const s={};for(const r in e[n])s[r]=e[n][r];i.push({identifiers:wC(n),keys:Object.keys(s),contents:tk(s,t)})}return i}}class QG{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f){this.key=e,this.overrides=t,this._value=i,this.overrideIdentifiers=n,this.defaultConfiguration=s,this.policyConfiguration=r,this.applicationConfiguration=a,this.userConfiguration=l,this.localUserConfiguration=c,this.remoteUserConfiguration=d,this.workspaceConfiguration=h,this.folderConfigurationModel=u,this.memoryConfigurationModel=f}toInspectValue(e){return e?.value!==void 0||e?.override!==void 0||e?.overrides!==void 0?e:void 0}get userInspectValue(){return this._userInspectValue||(this._userInspectValue=this.userConfiguration.inspect(this.key,this.overrides.overrideIdentifier)),this._userInspectValue}get user(){return this.toInspectValue(this.userInspectValue)}}class ry{constructor(e,t,i,n,s,r,a,l,c,d){this._defaultConfiguration=e,this._policyConfiguration=t,this._applicationConfiguration=i,this._localUserConfiguration=n,this._remoteUserConfiguration=s,this._workspaceConfiguration=r,this._folderConfigurations=a,this._memoryConfiguration=l,this._memoryConfigurationByResource=c,this.logService=d,this._workspaceConsolidatedConfiguration=null,this._foldersConsolidatedConfigurations=new cs,this._userConfiguration=null}getValue(e,t,i){return this.getConsolidatedConfigurationModel(e,t,i).getValue(e)}updateValue(e,t,i={}){let n;i.resource?(n=this._memoryConfigurationByResource.get(i.resource),n||(n=Pi.createEmptyModel(this.logService),this._memoryConfigurationByResource.set(i.resource,n))):n=this._memoryConfiguration,t===void 0?n.removeValue(e):n.setValue(e,t),i.resource||(this._workspaceConsolidatedConfiguration=null)}inspect(e,t,i){const n=this.getConsolidatedConfigurationModel(e,t,i),s=this.getFolderConfigurationModelForResource(t.resource,i),r=t.resource?this._memoryConfigurationByResource.get(t.resource)||this._memoryConfiguration:this._memoryConfiguration,a=new Set;for(const l of n.overrides)for(const c of l.identifiers)n.getOverrideValue(e,c)!==void 0&&a.add(c);return new QG(e,t,n.getValue(e),a.size?[...a]:void 0,this._defaultConfiguration,this._policyConfiguration.isEmpty()?void 0:this._policyConfiguration,this.applicationConfiguration.isEmpty()?void 0:this.applicationConfiguration,this.userConfiguration,this.localUserConfiguration,this.remoteUserConfiguration,i?this._workspaceConfiguration:void 0,s||void 0,r)}get applicationConfiguration(){return this._applicationConfiguration}get userConfiguration(){return this._userConfiguration||(this._userConfiguration=this._remoteUserConfiguration.isEmpty()?this._localUserConfiguration:this._localUserConfiguration.merge(this._remoteUserConfiguration)),this._userConfiguration}get localUserConfiguration(){return this._localUserConfiguration}get remoteUserConfiguration(){return this._remoteUserConfiguration}getConsolidatedConfigurationModel(e,t,i){let n=this.getConsolidatedConfigurationModelForResource(t,i);return t.overrideIdentifier&&(n=n.override(t.overrideIdentifier)),!this._policyConfiguration.isEmpty()&&this._policyConfiguration.getValue(e)!==void 0&&(n=n.merge(this._policyConfiguration)),n}getConsolidatedConfigurationModelForResource({resource:e},t){let i=this.getWorkspaceConsolidatedConfiguration();if(t&&e){const n=t.getFolder(e);n&&(i=this.getFolderConsolidatedConfiguration(n.uri)||i);const s=this._memoryConfigurationByResource.get(e);s&&(i=i.merge(s))}return i}getWorkspaceConsolidatedConfiguration(){return this._workspaceConsolidatedConfiguration||(this._workspaceConsolidatedConfiguration=this._defaultConfiguration.merge(this.applicationConfiguration,this.userConfiguration,this._workspaceConfiguration,this._memoryConfiguration)),this._workspaceConsolidatedConfiguration}getFolderConsolidatedConfiguration(e){let t=this._foldersConsolidatedConfigurations.get(e);if(!t){const i=this.getWorkspaceConsolidatedConfiguration(),n=this._folderConfigurations.get(e);n?(t=i.merge(n),this._foldersConsolidatedConfigurations.set(e,t)):t=i}return t}getFolderConfigurationModelForResource(e,t){if(t&&e){const i=t.getFolder(e);if(i)return this._folderConfigurations.get(i.uri)}}toData(){return{defaults:{contents:this._defaultConfiguration.contents,overrides:this._defaultConfiguration.overrides,keys:this._defaultConfiguration.keys},policy:{contents:this._policyConfiguration.contents,overrides:this._policyConfiguration.overrides,keys:this._policyConfiguration.keys},application:{contents:this.applicationConfiguration.contents,overrides:this.applicationConfiguration.overrides,keys:this.applicationConfiguration.keys},user:{contents:this.userConfiguration.contents,overrides:this.userConfiguration.overrides,keys:this.userConfiguration.keys},workspace:{contents:this._workspaceConfiguration.contents,overrides:this._workspaceConfiguration.overrides,keys:this._workspaceConfiguration.keys},folders:[...this._folderConfigurations.keys()].reduce((e,t)=>{const{contents:i,overrides:n,keys:s}=this._folderConfigurations.get(t);return e.push([t,{contents:i,overrides:n,keys:s}]),e},[])}}static parse(e,t){const i=this.parseConfigurationModel(e.defaults,t),n=this.parseConfigurationModel(e.policy,t),s=this.parseConfigurationModel(e.application,t),r=this.parseConfigurationModel(e.user,t),a=this.parseConfigurationModel(e.workspace,t),l=e.folders.reduce((c,d)=>(c.set(ve.revive(d[0]),this.parseConfigurationModel(d[1],t)),c),new cs);return new ry(i,n,s,r,Pi.createEmptyModel(t),a,l,Pi.createEmptyModel(t),new cs,t)}static parseConfigurationModel(e,t){return new Pi(e.contents,e.keys,e.overrides,void 0,t)}}class XG{constructor(e,t,i,n,s){this.change=e,this.previous=t,this.currentConfiguraiton=i,this.currentWorkspace=n,this.logService=s,this._marker=` -`,this._markerCode1=this._marker.charCodeAt(0),this._markerCode2=46,this.affectedKeys=new Set,this._previousConfiguration=void 0;for(const r of e.keys)this.affectedKeys.add(r);for(const[,r]of e.overrides)for(const a of r)this.affectedKeys.add(a);this._affectsConfigStr=this._marker;for(const r of this.affectedKeys)this._affectsConfigStr+=r+this._marker}get previousConfiguration(){return!this._previousConfiguration&&this.previous&&(this._previousConfiguration=ry.parse(this.previous.data,this.logService)),this._previousConfiguration}affectsConfiguration(e,t){const i=this._marker+e,n=this._affectsConfigStr.indexOf(i);if(n<0)return!1;const s=n+i.length;if(s>=this._affectsConfigStr.length)return!1;const r=this._affectsConfigStr.charCodeAt(s);if(r!==this._markerCode1&&r!==this._markerCode2)return!1;if(t){const a=this.previousConfiguration?this.previousConfiguration.getValue(e,t,this.previous?.workspace):void 0,l=this.currentConfiguraiton.getValue(e,t,this.currentWorkspace);return!as(a,l)}return!0}}class JG{constructor(){this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._enabled=!0}get enabled(){return this._enabled}enable(){this._enabled=!0,this._onDidChange.fire()}disable(){this._enabled=!1,this._onDidChange.fire()}}const Qm=new JG,$C={kind:0},eZ={kind:1};function tZ(o,e,t){return{kind:2,commandId:o,commandArgs:e,isBubble:t}}class Xm{constructor(e,t,i){this._log=i,this._defaultKeybindings=e,this._defaultBoundCommands=new Map;for(const n of e){const s=n.command;s&&s.charAt(0)!=="-"&&this._defaultBoundCommands.set(s,!0)}this._map=new Map,this._lookupMap=new Map,this._keybindings=Xm.handleRemovals([].concat(e).concat(t));for(let n=0,s=this._keybindings.length;n"u"){this._map.set(e,[t]),this._addToLookupMap(t);return}for(let n=i.length-1;n>=0;n--){const s=i[n];if(s.command===t.command)continue;let r=!0;for(let a=1;a"u"?(t=[e],this._lookupMap.set(e.command,t)):t.push(e)}_removeFromLookupMap(e){if(!e.command)return;const t=this._lookupMap.get(e.command);if(!(typeof t>"u")){for(let i=0,n=t.length;i"u"||i.length===0)return null;if(i.length===1)return i[0];for(let n=i.length-1;n>=0;n--){const s=i[n];if(t.contextMatchesRules(s.when))return s}return i[i.length-1]}resolve(e,t,i){const n=[...t,i];this._log(`| Resolving ${n}`);const s=this._map.get(n[0]);if(s===void 0)return this._log("\\ No keybinding entries."),$C;let r=null;if(n.length<2)r=s;else{r=[];for(let l=0,c=s.length;ld.chords.length)continue;let h=!0;for(let u=1;u=0;i--){const n=t[i];if(Xm._contextMatchesRules(e,n.when))return n}return null}static _contextMatchesRules(e,t){return t?t.evaluate(e):!0}}function QA(o){return o?`${o.serialize()}`:"no when condition"}function XA(o){return o.extensionId?o.isBuiltinExtension?`built-in extension ${o.extensionId}`:`user extension ${o.extensionId}`:o.isDefault?"built-in":"user"}const iZ=/^(cursor|delete|undo|redo|tab|editor\.action\.clipboard)/;class nZ extends z{get onDidUpdateKeybindings(){return this._onDidUpdateKeybindings?this._onDidUpdateKeybindings.event:J.None}get inChordMode(){return this._currentChords.length>0}constructor(e,t,i,n,s){super(),this._contextKeyService=e,this._commandService=t,this._telemetryService=i,this._notificationService=n,this._logService=s,this._onDidUpdateKeybindings=this._register(new A),this._currentChords=[],this._currentChordChecker=new jN,this._currentChordStatusMessage=null,this._ignoreSingleModifiers=sf.EMPTY,this._currentSingleModifier=null,this._currentSingleModifierClearTimeout=new wr,this._currentlyDispatchingCommandId=null,this._logging=!1}dispose(){super.dispose()}_log(e){this._logging&&this._logService.info(`[KeybindingService]: ${e}`)}getKeybindings(){return this._getResolver().getKeybindings()}lookupKeybinding(e,t){const i=this._getResolver().lookupPrimaryKeybinding(e,t||this._contextKeyService);if(i)return i.resolvedKeybinding}dispatchEvent(e,t){return this._dispatch(e,t)}softDispatch(e,t){this._log("/ Soft dispatching keyboard event");const i=this.resolveKeyboardEvent(e);if(i.hasMultipleChords())return console.warn("keyboard event should not be mapped to multiple chords"),$C;const[n]=i.getDispatchChords();if(n===null)return this._log("\\ Keyboard event cannot be dispatched"),$C;const s=this._contextKeyService.getContext(t),r=this._currentChords.map((({keypress:a})=>a));return this._getResolver().resolve(s,r,n)}_scheduleLeaveChordMode(){const e=Date.now();this._currentChordChecker.cancelAndSet(()=>{if(!this._documentHasFocus()){this._leaveChordMode();return}Date.now()-e>5e3&&this._leaveChordMode()},500)}_expectAnotherChord(e,t){switch(this._currentChords.push({keypress:e,label:t}),this._currentChords.length){case 0:throw TN("impossible");case 1:this._currentChordStatusMessage=this._notificationService.status(m("first.chord","({0}) was pressed. Waiting for second key of chord...",t));break;default:{const i=this._currentChords.map(({label:n})=>n).join(", ");this._currentChordStatusMessage=this._notificationService.status(m("next.chord","({0}) was pressed. Waiting for next key of chord...",i))}}this._scheduleLeaveChordMode(),Qm.enabled&&Qm.disable()}_leaveChordMode(){this._currentChordStatusMessage&&(this._currentChordStatusMessage.dispose(),this._currentChordStatusMessage=null),this._currentChordChecker.cancel(),this._currentChords=[],Qm.enable()}_dispatch(e,t){return this._doDispatch(this.resolveKeyboardEvent(e),t,!1)}_singleModifierDispatch(e,t){const i=this.resolveKeyboardEvent(e),[n]=i.getSingleModifierDispatchChords();if(n)return this._ignoreSingleModifiers.has(n)?(this._log(`+ Ignoring single modifier ${n} due to it being pressed together with other keys.`),this._ignoreSingleModifiers=sf.EMPTY,this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1):(this._ignoreSingleModifiers=sf.EMPTY,this._currentSingleModifier===null?(this._log(`+ Storing single modifier for possible chord ${n}.`),this._currentSingleModifier=n,this._currentSingleModifierClearTimeout.cancelAndSet(()=>{this._log("+ Clearing single modifier due to 300ms elapsed."),this._currentSingleModifier=null},300),!1):n===this._currentSingleModifier?(this._log(`/ Dispatching single modifier chord ${n} ${n}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,this._doDispatch(i,t,!0)):(this._log(`+ Clearing single modifier due to modifier mismatch: ${this._currentSingleModifier} ${n}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1));const[s]=i.getChords();return this._ignoreSingleModifiers=new sf(s),this._currentSingleModifier!==null&&this._log("+ Clearing single modifier due to other key up."),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1}_doDispatch(e,t,i=!1){let n=!1;if(e.hasMultipleChords())return console.warn("Unexpected keyboard event mapped to multiple chords"),!1;let s=null,r=null;if(i){const[d]=e.getSingleModifierDispatchChords();s=d,r=d?[d]:[]}else[s]=e.getDispatchChords(),r=this._currentChords.map(({keypress:d})=>d);if(s===null)return this._log("\\ Keyboard event cannot be dispatched in keydown phase."),n;const a=this._contextKeyService.getContext(t),l=e.getLabel(),c=this._getResolver().resolve(a,r,s);switch(c.kind){case 0:{if(this._logService.trace("KeybindingService#dispatch",l,"[ No matching keybinding ]"),this.inChordMode){const d=this._currentChords.map(({label:h})=>h).join(", ");this._log(`+ Leaving multi-chord mode: Nothing bound to "${d}, ${l}".`),this._notificationService.status(m("missing.chord","The key combination ({0}, {1}) is not a command.",d,l),{hideAfter:10*1e3}),this._leaveChordMode(),n=!0}return n}case 1:return this._logService.trace("KeybindingService#dispatch",l,"[ Several keybindings match - more chords needed ]"),n=!0,this._expectAnotherChord(s,l),this._log(this._currentChords.length===1?"+ Entering multi-chord mode...":"+ Continuing multi-chord mode..."),n;case 2:{if(this._logService.trace("KeybindingService#dispatch",l,`[ Will dispatch command ${c.commandId} ]`),c.commandId===null||c.commandId===""){if(this.inChordMode){const d=this._currentChords.map(({label:h})=>h).join(", ");this._log(`+ Leaving chord mode: Nothing bound to "${d}, ${l}".`),this._notificationService.status(m("missing.chord","The key combination ({0}, {1}) is not a command.",d,l),{hideAfter:10*1e3}),this._leaveChordMode(),n=!0}}else{this.inChordMode&&this._leaveChordMode(),c.isBubble||(n=!0),this._log(`+ Invoking command ${c.commandId}.`),this._currentlyDispatchingCommandId=c.commandId;try{typeof c.commandArgs>"u"?this._commandService.executeCommand(c.commandId).then(void 0,d=>this._notificationService.warn(d)):this._commandService.executeCommand(c.commandId,c.commandArgs).then(void 0,d=>this._notificationService.warn(d))}finally{this._currentlyDispatchingCommandId=null}iZ.test(c.commandId)||this._telemetryService.publicLog2("workbenchActionExecuted",{id:c.commandId,from:"keybinding",detail:e.getUserSettingsLabel()??void 0})}return n}}}mightProducePrintableCharacter(e){return e.ctrlKey||e.metaKey?!1:e.keyCode>=31&&e.keyCode<=56||e.keyCode>=21&&e.keyCode<=30}}const Mw=class Mw{constructor(e){this._ctrlKey=e?e.ctrlKey:!1,this._shiftKey=e?e.shiftKey:!1,this._altKey=e?e.altKey:!1,this._metaKey=e?e.metaKey:!1}has(e){switch(e){case"ctrl":return this._ctrlKey;case"shift":return this._shiftKey;case"alt":return this._altKey;case"meta":return this._metaKey}}};Mw.EMPTY=new Mw(null);let sf=Mw;class JA{constructor(e,t,i,n,s,r,a){this._resolvedKeybindingItemBrand=void 0,this.resolvedKeybinding=e,this.chords=e?Kk(e.getDispatchChords()):[],e&&this.chords.length===0&&(this.chords=Kk(e.getSingleModifierDispatchChords())),this.bubble=t?t.charCodeAt(0)===94:!1,this.command=this.bubble?t.substr(1):t,this.commandArgs=i,this.when=n,this.isDefault=s,this.extensionId=r,this.isBuiltinExtension=a}}function Kk(o){const e=[];for(let t=0,i=o.length;tthis._getLabel(e))}getAriaLabel(){return sZ.toLabel(this._os,this._chords,e=>this._getAriaLabel(e))}getElectronAccelerator(){return this._chords.length>1||this._chords[0].isDuplicateModifierCase()?null:oZ.toLabel(this._os,this._chords,e=>this._getElectronAccelerator(e))}getUserSettingsLabel(){return rZ.toLabel(this._os,this._chords,e=>this._getUserSettingsLabel(e))}hasMultipleChords(){return this._chords.length>1}getChords(){return this._chords.map(e=>this._getChord(e))}_getChord(e){return new yH(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,this._getLabel(e),this._getAriaLabel(e))}getDispatchChords(){return this._chords.map(e=>this._getChordDispatch(e))}getSingleModifierDispatchChords(){return this._chords.map(e=>this._getSingleModifierChordDispatch(e))}}class l_ extends lZ{constructor(e,t){super(t,e)}_keyCodeToUILabel(e){if(this._os===2)switch(e){case 15:return"←";case 16:return"↑";case 17:return"→";case 18:return"↓"}return el.toString(e)}_getLabel(e){return e.isDuplicateModifierCase()?"":this._keyCodeToUILabel(e.keyCode)}_getAriaLabel(e){return e.isDuplicateModifierCase()?"":el.toString(e.keyCode)}_getElectronAccelerator(e){return el.toElectronAccelerator(e.keyCode)}_getUserSettingsLabel(e){if(e.isDuplicateModifierCase())return"";const t=el.toUserSettingsUS(e.keyCode);return t&&t.toLowerCase()}_getChordDispatch(e){return l_.getDispatchStr(e)}static getDispatchStr(e){if(e.isModifierKey())return null;let t="";return e.ctrlKey&&(t+="ctrl+"),e.shiftKey&&(t+="shift+"),e.altKey&&(t+="alt+"),e.metaKey&&(t+="meta+"),t+=el.toString(e.keyCode),t}_getSingleModifierChordDispatch(e){return e.keyCode===5&&!e.shiftKey&&!e.altKey&&!e.metaKey?"ctrl":e.keyCode===4&&!e.ctrlKey&&!e.altKey&&!e.metaKey?"shift":e.keyCode===6&&!e.ctrlKey&&!e.shiftKey&&!e.metaKey?"alt":e.keyCode===57&&!e.ctrlKey&&!e.shiftKey&&!e.altKey?"meta":null}static _scanCodeToKeyCode(e){const t=ON[e];if(t!==-1)return t;switch(e){case 10:return 31;case 11:return 32;case 12:return 33;case 13:return 34;case 14:return 35;case 15:return 36;case 16:return 37;case 17:return 38;case 18:return 39;case 19:return 40;case 20:return 41;case 21:return 42;case 22:return 43;case 23:return 44;case 24:return 45;case 25:return 46;case 26:return 47;case 27:return 48;case 28:return 49;case 29:return 50;case 30:return 51;case 31:return 52;case 32:return 53;case 33:return 54;case 34:return 55;case 35:return 56;case 36:return 22;case 37:return 23;case 38:return 24;case 39:return 25;case 40:return 26;case 41:return 27;case 42:return 28;case 43:return 29;case 44:return 30;case 45:return 21;case 51:return 88;case 52:return 86;case 53:return 92;case 54:return 94;case 55:return 93;case 56:return 0;case 57:return 85;case 58:return 95;case 59:return 91;case 60:return 87;case 61:return 89;case 62:return 90;case 106:return 97}return 0}static _toKeyCodeChord(e){if(!e)return null;if(e instanceof kl)return e;const t=this._scanCodeToKeyCode(e.scanCode);return t===0?null:new kl(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,t)}static resolveKeybinding(e,t){const i=Kk(e.chords.map(n=>this._toKeyCodeChord(n)));return i.length>0?[new l_(i,t)]:[]}}const Cg=He("labelService"),cZ=He("progressService"),EM=class EM{constructor(e){this.callback=e}report(e){this._value=e,this.callback(this._value)}};EM.None=Object.freeze({report(){}});let rc=EM;const G_=He("editorProgressService");class dZ{constructor(){this._value="",this._pos=0}reset(e){return this._value=e,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos=0;t--,this._valueLen--){const i=this._value.charCodeAt(t);if(!(i===47||this._splitOnBackslash&&i===92))break}return this.next()}hasNext(){return this._to!1,t=()=>!1){return new Bf(new fZ(e,t))}static forStrings(){return new Bf(new dZ)}static forConfigKeys(){return new Bf(new hZ)}constructor(e){this._iter=e}clear(){this._root=void 0}set(e,t){const i=this._iter.reset(e);let n;this._root||(this._root=new Hb,this._root.segment=i.value());const s=[];for(n=this._root;;){const a=i.cmp(n.segment);if(a>0)n.left||(n.left=new Hb,n.left.segment=i.value()),s.push([-1,n]),n=n.left;else if(a<0)n.right||(n.right=new Hb,n.right.segment=i.value()),s.push([1,n]),n=n.right;else if(i.hasNext())i.next(),n.mid||(n.mid=new Hb,n.mid.segment=i.value()),s.push([0,n]),n=n.mid;else break}const r=n.value;n.value=t,n.key=e;for(let a=s.length-1;a>=0;a--){const l=s[a][1];l.updateHeight();const c=l.balanceFactor();if(c<-1||c>1){const d=s[a][0],h=s[a+1][0];if(d===1&&h===1)s[a][1]=l.rotateLeft();else if(d===-1&&h===-1)s[a][1]=l.rotateRight();else if(d===1&&h===-1)l.right=s[a+1][1]=s[a+1][1].rotateRight(),s[a][1]=l.rotateLeft();else if(d===-1&&h===1)l.left=s[a+1][1]=s[a+1][1].rotateLeft(),s[a][1]=l.rotateRight();else throw new Error;if(a>0)switch(s[a-1][0]){case-1:s[a-1][1].left=s[a][1];break;case 1:s[a-1][1].right=s[a][1];break;case 0:s[a-1][1].mid=s[a][1];break}else this._root=s[0][1]}}return r}get(e){return this._getNode(e)?.value}_getNode(e){const t=this._iter.reset(e);let i=this._root;for(;i;){const n=t.cmp(i.segment);if(n>0)i=i.left;else if(n<0)i=i.right;else if(t.hasNext())t.next(),i=i.mid;else break}return i}has(e){const t=this._getNode(e);return!(t?.value===void 0&&t?.mid===void 0)}delete(e){return this._delete(e,!1)}deleteSuperstr(e){return this._delete(e,!0)}_delete(e,t){const i=this._iter.reset(e),n=[];let s=this._root;for(;s;){const r=i.cmp(s.segment);if(r>0)n.push([-1,s]),s=s.left;else if(r<0)n.push([1,s]),s=s.right;else if(i.hasNext())i.next(),n.push([0,s]),s=s.mid;else break}if(s){if(t?(s.left=void 0,s.mid=void 0,s.right=void 0,s.height=1):(s.key=void 0,s.value=void 0),!s.mid&&!s.value)if(s.left&&s.right){const r=this._min(s.right);if(r.key){const{key:a,value:l,segment:c}=r;this._delete(r.key,!1),s.key=a,s.value=l,s.segment=c}}else{const r=s.left??s.right;if(n.length>0){const[a,l]=n[n.length-1];switch(a){case-1:l.left=r;break;case 0:l.mid=r;break;case 1:l.right=r;break}}else this._root=r}for(let r=n.length-1;r>=0;r--){const a=n[r][1];a.updateHeight();const l=a.balanceFactor();if(l>1?(a.right.balanceFactor()>=0||(a.right=a.right.rotateRight()),n[r][1]=a.rotateLeft()):l<-1&&(a.left.balanceFactor()<=0||(a.left=a.left.rotateLeft()),n[r][1]=a.rotateRight()),r>0)switch(n[r-1][0]){case-1:n[r-1][1].left=n[r][1];break;case 1:n[r-1][1].right=n[r][1];break;case 0:n[r-1][1].mid=n[r][1];break}else this._root=n[0][1]}}}_min(e){for(;e.left;)e=e.left;return e}findSubstr(e){const t=this._iter.reset(e);let i=this._root,n;for(;i;){const s=t.cmp(i.segment);if(s>0)i=i.left;else if(s<0)i=i.right;else if(t.hasNext())t.next(),n=i.value||n,i=i.mid;else break}return i&&i.value||n}findSuperstr(e){return this._findSuperstrOrElement(e,!1)}_findSuperstrOrElement(e,t){const i=this._iter.reset(e);let n=this._root;for(;n;){const s=i.cmp(n.segment);if(s>0)n=n.left;else if(s<0)n=n.right;else if(i.hasNext())i.next(),n=n.mid;else return n.mid?this._entries(n.mid):t?n.value:void 0}}forEach(e){for(const[t,i]of this)e(i,t)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(e){const t=[];return this._dfsEntries(e,t),t[Symbol.iterator]()}_dfsEntries(e,t){e&&(e.left&&this._dfsEntries(e.left,t),e.value&&t.push([e.key,e.value]),e.mid&&this._dfsEntries(e.mid,t),e.right&&this._dfsEntries(e.right,t))}}const jk=He("contextService");function qk(o){const e=o;return typeof e?.id=="string"&&ve.isUri(e.uri)}function gZ(o){return typeof o?.id=="string"&&!qk(o)&&!_Z(o)}const mZ={id:"empty-window"};function pZ(o,e){if(typeof o=="string"||typeof o>"u")return typeof o=="string"?{id:uc(o)}:mZ;const t=o;return t.configuration?{id:t.id,configPath:t.configuration}:t.folders.length===1?{id:t.id,uri:t.folders[0].uri}:{id:t.id}}function _Z(o){const e=o;return typeof e?.id=="string"&&ve.isUri(e.configPath)}class bZ{constructor(e,t){this.raw=t,this.uri=e.uri,this.index=e.index,this.name=e.name}toJSON(){return{uri:this.uri,name:this.name,index:this.index}}}const Gk="code-workspace";m("codeWorkspace","Code Workspace");const CZ="4064f6ec-cb38-4ad0-af64-ee6467e63c82";var eP;(function(o){o.inspectTokensAction=m("inspectTokens","Developer: Inspect Tokens")})(eP||(eP={}));var tP;(function(o){o.gotoLineActionLabel=m("gotoLineActionLabel","Go to Line/Column...")})(tP||(tP={}));var iP;(function(o){o.helpQuickAccessActionLabel=m("helpQuickAccess","Show all Quick Access Providers")})(iP||(iP={}));var nP;(function(o){o.quickCommandActionLabel=m("quickCommandActionLabel","Command Palette"),o.quickCommandHelp=m("quickCommandActionHelp","Show And Run Commands")})(nP||(nP={}));var sP;(function(o){o.quickOutlineActionLabel=m("quickOutlineActionLabel","Go to Symbol..."),o.quickOutlineByCategoryActionLabel=m("quickOutlineByCategoryActionLabel","Go to Symbol by Category...")})(sP||(sP={}));var Zk;(function(o){o.editorViewAccessibleLabel=m("editorViewAccessibleLabel","Editor content")})(Zk||(Zk={}));var oP;(function(o){o.toggleHighContrast=m("toggleHighContrast","Toggle High Contrast Theme")})(oP||(oP={}));var Yk;(function(o){o.bulkEditServiceSummary=m("bulkEditServiceSummary","Made {0} edits in {1} files")})(Yk||(Yk={}));const vZ=He("workspaceTrustManagementService");let vg=[],jT=[],v7=[];function Vb(o,e=!1){wZ(o,!1,e)}function wZ(o,e,t){const i=yZ(o,e);vg.push(i),i.userConfigured?v7.push(i):jT.push(i),t&&!i.userConfigured&&vg.forEach(n=>{n.mime===i.mime||n.userConfigured||(i.extension&&n.extension===i.extension&&console.warn(`Overwriting extension <<${i.extension}>> to now point to mime <<${i.mime}>>`),i.filename&&n.filename===i.filename&&console.warn(`Overwriting filename <<${i.filename}>> to now point to mime <<${i.mime}>>`),i.filepattern&&n.filepattern===i.filepattern&&console.warn(`Overwriting filepattern <<${i.filepattern}>> to now point to mime <<${i.mime}>>`),i.firstline&&n.firstline===i.firstline&&console.warn(`Overwriting firstline <<${i.firstline}>> to now point to mime <<${i.mime}>>`))})}function yZ(o,e){return{id:o.id,mime:o.mime,filename:o.filename,extension:o.extension,filepattern:o.filepattern,firstline:o.firstline,userConfigured:e,filenameLowercase:o.filename?o.filename.toLowerCase():void 0,extensionLowercase:o.extension?o.extension.toLowerCase():void 0,filepatternLowercase:o.filepattern?N3(o.filepattern.toLowerCase()):void 0,filepatternOnPath:o.filepattern?o.filepattern.indexOf(oi.sep)>=0:!1}}function SZ(){vg=vg.filter(o=>o.userConfigured),jT=[]}function LZ(o,e){return xZ(o,e).map(t=>t.id)}function xZ(o,e){let t;if(o)switch(o.scheme){case Te.file:t=o.fsPath;break;case Te.data:{t=Oc.parseMetaData(o).get(Oc.META_DATA_LABEL);break}case Te.vscodeNotebookCell:t=void 0;break;default:t=o.path}if(!t)return[{id:"unknown",mime:il.unknown}];t=t.toLowerCase();const i=uc(t),n=rP(t,i,v7);if(n)return[n,{id:Bs,mime:il.text}];const s=rP(t,i,jT);if(s)return[s,{id:Bs,mime:il.text}];if(e){const r=kZ(e);if(r)return[r,{id:Bs,mime:il.text}]}return[{id:"unknown",mime:il.unknown}]}function rP(o,e,t){let i,n,s;for(let r=t.length-1;r>=0;r--){const a=t[r];if(e===a.filenameLowercase){i=a;break}if(a.filepattern&&(!n||a.filepattern.length>n.filepattern.length)){const l=a.filepatternOnPath?o:e;a.filepatternLowercase?.(l)&&(n=a)}a.extension&&(!s||a.extension.length>s.extension.length)&&e.endsWith(a.extensionLowercase)&&(s=a)}if(i)return i;if(n)return n;if(s)return s}function kZ(o){if($N(o)&&(o=o.substr(1)),o.length>0)for(let e=vg.length-1;e>=0;e--){const t=vg[e];if(!t.firstline)continue;const i=o.match(t.firstline);if(i&&i.length>0)return t}}const zb=Object.prototype.hasOwnProperty,aP="vs.editor.nullLanguage";class DZ{constructor(){this._languageIdToLanguage=[],this._languageToLanguageId=new Map,this._register(aP,0),this._register(Bs,1),this._nextLanguageId=2}_register(e,t){this._languageIdToLanguage[t]=e,this._languageToLanguageId.set(e,t)}register(e){if(this._languageToLanguageId.has(e))return;const t=this._nextLanguageId++;this._register(e,t)}encodeLanguageId(e){return this._languageToLanguageId.get(e)||0}decodeLanguageId(e){return this._languageIdToLanguage[e]||aP}}const Ep=class Ep extends z{constructor(e=!0,t=!1){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,Ep.instanceCount++,this._warnOnOverwrite=t,this.languageIdCodec=new DZ,this._dynamicLanguages=[],this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},e&&(this._initializeFromRegistry(),this._register(lg.onDidChangeLanguages(i=>{this._initializeFromRegistry()})))}dispose(){Ep.instanceCount--,super.dispose()}_initializeFromRegistry(){this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},SZ();const e=[].concat(lg.getLanguages()).concat(this._dynamicLanguages);this._registerLanguages(e)}_registerLanguages(e){for(const t of e)this._registerLanguage(t);this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Object.keys(this._languages).forEach(t=>{const i=this._languages[t];i.name&&(this._nameMap[i.name]=i.identifier),i.aliases.forEach(n=>{this._lowercaseNameMap[n.toLowerCase()]=i.identifier}),i.mimetypes.forEach(n=>{this._mimeTypesMap[n]=i.identifier})}),Bi.as(su.Configuration).registerOverrideIdentifiers(this.getRegisteredLanguageIds()),this._onDidChange.fire()}_registerLanguage(e){const t=e.id;let i;zb.call(this._languages,t)?i=this._languages[t]:(this.languageIdCodec.register(t),i={identifier:t,name:null,mimetypes:[],aliases:[],extensions:[],filenames:[],configurationFiles:[],icons:[]},this._languages[t]=i),this._mergeLanguage(i,e)}_mergeLanguage(e,t){const i=t.id;let n=null;if(Array.isArray(t.mimetypes)&&t.mimetypes.length>0&&(e.mimetypes.push(...t.mimetypes),n=t.mimetypes[0]),n||(n=`text/x-${i}`,e.mimetypes.push(n)),Array.isArray(t.extensions)){t.configuration?e.extensions=t.extensions.concat(e.extensions):e.extensions=e.extensions.concat(t.extensions);for(const a of t.extensions)Vb({id:i,mime:n,extension:a},this._warnOnOverwrite)}if(Array.isArray(t.filenames))for(const a of t.filenames)Vb({id:i,mime:n,filename:a},this._warnOnOverwrite),e.filenames.push(a);if(Array.isArray(t.filenamePatterns))for(const a of t.filenamePatterns)Vb({id:i,mime:n,filepattern:a},this._warnOnOverwrite);if(typeof t.firstLine=="string"&&t.firstLine.length>0){let a=t.firstLine;a.charAt(0)!=="^"&&(a="^"+a);try{const l=new RegExp(a);cH(l)||Vb({id:i,mime:n,firstline:l},this._warnOnOverwrite)}catch(l){console.warn(`[${t.id}]: Invalid regular expression \`${a}\`: `,l)}}e.aliases.push(i);let s=null;if(typeof t.aliases<"u"&&Array.isArray(t.aliases)&&(t.aliases.length===0?s=[null]:s=t.aliases),s!==null)for(const a of s)!a||a.length===0||e.aliases.push(a);const r=s!==null&&s.length>0;if(!(r&&s[0]===null)){const a=(r?s[0]:null)||i;(r||!e.name)&&(e.name=a)}t.configuration&&e.configurationFiles.push(t.configuration),t.icon&&e.icons.push(t.icon)}isRegisteredLanguageId(e){return e?zb.call(this._languages,e):!1}getRegisteredLanguageIds(){return Object.keys(this._languages)}getLanguageIdByLanguageName(e){const t=e.toLowerCase();return zb.call(this._lowercaseNameMap,t)?this._lowercaseNameMap[t]:null}getLanguageIdByMimeType(e){return e&&zb.call(this._mimeTypesMap,e)?this._mimeTypesMap[e]:null}guessLanguageIdByFilepathOrFirstLine(e,t){return!e&&!t?[]:LZ(e,t)}};Ep.instanceCount=0;let Qk=Ep;const ho=(o,e)=>o===e;function Xk(o=ho){return(e,t)=>li(e,t,o)}function IZ(){return(o,e)=>o.equals(e)}function Jk(o,e,t){if(t!==void 0){const i=o;return i==null||e===void 0||e===null?e===i:t(i,e)}else{const i=o;return(n,s)=>n==null||s===void 0||s===null?s===n:i(n,s)}}class gn{constructor(e,t,i){this.owner=e,this.debugNameSource=t,this.referenceFn=i}getDebugName(e){return EZ(e,this)}}const lP=new Map,eD=new WeakMap;function EZ(o,e){const t=eD.get(o);if(t)return t;const i=NZ(o,e);if(i){let n=lP.get(i)??0;n++,lP.set(i,n);const s=n===1?i:`${i}#${n}`;return eD.set(o,s),s}}function NZ(o,e){const t=eD.get(o);if(t)return t;const i=e.owner?MZ(e.owner)+".":"";let n;const s=e.debugNameSource;if(s!==void 0)if(typeof s=="function"){if(n=s(),n!==void 0)return i+n}else return i+s;const r=e.referenceFn;if(r!==void 0&&(n=qT(r),n!==void 0))return i+n;if(e.owner!==void 0){const a=TZ(e.owner,o);if(a!==void 0)return i+a}}function TZ(o,e){for(const t in o)if(o[t]===e)return t}const cP=new Map,dP=new WeakMap;function MZ(o){const e=dP.get(o);if(e)return e;const t=RZ(o);let i=cP.get(t)??0;i++,cP.set(t,i);const n=i===1?t:`${t}#${i}`;return dP.set(o,n),n}function RZ(o){const e=o.constructor;return e?e.name:"Object"}function qT(o){const e=o.toString(),i=/\/\*\*\s*@description\s*([^*]*)\*\//.exec(e);return(i?i[1]:void 0)?.trim()}let AZ;function w7(){return AZ}let y7;function PZ(o){y7=o}let S7;function OZ(o){S7=o}let tD;function FZ(o){tD=o}class L7{get TChange(){return null}reportChanges(){this.get()}read(e){return e?e.readObservable(this):this.get()}map(e,t){const i=t===void 0?void 0:e,n=t===void 0?e:t;return tD({owner:i,debugName:()=>{const s=qT(n);if(s!==void 0)return s;const a=/^\s*\(?\s*([a-zA-Z_$][a-zA-Z_$0-9]*)\s*\)?\s*=>\s*\1(?:\??)\.([a-zA-Z_$][a-zA-Z_$0-9]*)\s*$/.exec(n.toString());if(a)return`${this.debugName}.${a[2]}`;if(!i)return`${this.debugName} (mapped)`},debugReferenceFn:n},s=>n(this.read(s),s))}flatten(){return tD({owner:void 0,debugName:()=>`${this.debugName} (flattened)`},e=>this.read(e).read(e))}recomputeInitiallyAndOnChange(e,t){return e.add(y7(this,t)),this}keepObserved(e){return e.add(S7(this)),this}}class zg extends L7{constructor(){super(...arguments),this.observers=new Set}addObserver(e){const t=this.observers.size;this.observers.add(e),t===0&&this.onFirstObserverAdded()}removeObserver(e){this.observers.delete(e)&&this.observers.size===0&&this.onLastObserverRemoved()}onFirstObserverAdded(){}onLastObserverRemoved(){}}function Xt(o,e){const t=new Ug(o,e);try{o(t)}finally{t.finish()}}let Ub;function Mm(o){if(Ub)o(Ub);else{const e=new Ug(o,void 0);Ub=e;try{o(e)}finally{e.finish(),Ub=void 0}}}async function BZ(o,e){const t=new Ug(o,e);try{await o(t)}finally{t.finish()}}function c_(o,e,t){o?e(o):Xt(e,t)}class Ug{constructor(e,t){this._fn=e,this._getDebugName=t,this.updatingObservers=[]}getDebugName(){return this._getDebugName?this._getDebugName():qT(this._fn)}updateObserver(e,t){this.updatingObservers.push({observer:e,observable:t}),e.beginUpdate(t)}finish(){const e=this.updatingObservers;for(let t=0;t{},()=>`Setting ${this.debugName}`));try{const s=this._value;this._setValue(e),w7()?.handleObservableChanged(this,{oldValue:s,newValue:e,change:i,didChange:!0,hadValue:!0});for(const r of this.observers)t.updateObserver(r,this),r.handleChange(this,i)}finally{n&&n.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}function KC(o,e){let t;return typeof o=="string"?t=new gn(void 0,o,void 0):t=new gn(o,void 0,void 0),new WZ(t,e,ho)}class WZ extends GT{_setValue(e){this._value!==e&&(this._value&&this._value.dispose(),this._value=e)}dispose(){this._value?.dispose()}}function Ce(o,e){return e!==void 0?new Vh(new gn(o,void 0,e),e,void 0,void 0,void 0,ho):new Vh(new gn(void 0,void 0,o),o,void 0,void 0,void 0,ho)}function ZT(o,e,t){return new VZ(new gn(o,void 0,e),e,void 0,void 0,void 0,ho,t)}function dr(o,e){return new Vh(new gn(o.owner,o.debugName,o.debugReferenceFn),e,void 0,void 0,o.onLastObserverRemoved,o.equalsFn??ho)}FZ(dr);function HZ(o,e){return new Vh(new gn(o.owner,o.debugName,void 0),e,o.createEmptyChangeSummary,o.handleChange,void 0,o.equalityComparer??ho)}function cu(o,e){let t,i;e===void 0?(t=o,i=void 0):(i=o,t=e);const n=new X;return new Vh(new gn(i,void 0,t),s=>(n.clear(),t(s,n)),void 0,void 0,()=>n.dispose(),ho)}function tr(o,e){let t,i;e===void 0?(t=o,i=void 0):(i=o,t=e);let n;return new Vh(new gn(i,void 0,t),s=>{n?n.clear():n=new X;const r=t(s);return r&&n.add(r),r},void 0,void 0,()=>{n&&(n.dispose(),n=void 0)},ho)}class Vh extends zg{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,n,s=void 0,r){super(),this._debugNameData=e,this._computeFn=t,this.createChangeSummary=i,this._handleChange=n,this._handleLastObserverRemoved=s,this._equalityComparator=r,this.state=0,this.value=void 0,this.updateCount=0,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=void 0,this.changeSummary=this.createChangeSummary?.()}onLastObserverRemoved(){this.state=0,this.value=void 0;for(const e of this.dependencies)e.removeObserver(this);this.dependencies.clear(),this._handleLastObserverRemoved?.()}get(){if(this.observers.size===0){const e=this._computeFn(this,this.createChangeSummary?.());return this.onLastObserverRemoved(),e}else{do{if(this.state===1){for(const e of this.dependencies)if(e.reportChanges(),this.state===2)break}this.state===1&&(this.state=3),this._recomputeIfNeeded()}while(this.state!==3);return this.value}}_recomputeIfNeeded(){if(this.state===3)return;const e=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=e;const t=this.state!==0,i=this.value;this.state=3;const n=this.changeSummary;this.changeSummary=this.createChangeSummary?.();try{this.value=this._computeFn(this,n)}finally{for(const r of this.dependenciesToBeRemoved)r.removeObserver(this);this.dependenciesToBeRemoved.clear()}if(t&&!this._equalityComparator(i,this.value))for(const r of this.observers)r.handleChange(this,void 0)}toString(){return`LazyDerived<${this.debugName}>`}beginUpdate(e){this.updateCount++;const t=this.updateCount===1;if(this.state===3&&(this.state=1,!t))for(const i of this.observers)i.handlePossibleChange(this);if(t)for(const i of this.observers)i.beginUpdate(this)}endUpdate(e){if(this.updateCount--,this.updateCount===0){const t=[...this.observers];for(const i of t)i.endUpdate(this)}Fh(()=>this.updateCount>=0)}handlePossibleChange(e){if(this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){this.state=1;for(const t of this.observers)t.handlePossibleChange(this)}}handleChange(e,t){if(this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){const i=this._handleChange?this._handleChange({changedObservable:e,change:t,didChange:s=>s===e},this.changeSummary):!0,n=this.state===3;if(i&&(this.state===1||n)&&(this.state=2,n))for(const s of this.observers)s.handlePossibleChange(this)}}readObservable(e){e.addObserver(this);const t=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),t}addObserver(e){const t=!this.observers.has(e)&&this.updateCount>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){const t=this.observers.has(e)&&this.updateCount>0;super.removeObserver(e),t&&e.endUpdate(this)}}class VZ extends Vh{constructor(e,t,i,n,s=void 0,r,a){super(e,t,i,n,s,r),this.set=a}}function We(o){return new ly(new gn(void 0,void 0,o),o,void 0,void 0)}function Z_(o,e){return new ly(new gn(o.owner,o.debugName,o.debugReferenceFn??e),e,void 0,void 0)}function Y_(o,e){return new ly(new gn(o.owner,o.debugName,o.debugReferenceFn??e),e,o.createEmptyChangeSummary,o.handleChange)}function zZ(o,e){const t=new X,i=Y_({owner:o.owner,debugName:o.debugName,debugReferenceFn:o.debugReferenceFn??e,createEmptyChangeSummary:o.createEmptyChangeSummary,handleChange:o.handleChange},(n,s)=>{t.clear(),e(n,s,t)});return _e(()=>{i.dispose(),t.dispose()})}function To(o){const e=new X,t=Z_({owner:void 0,debugName:void 0,debugReferenceFn:o},i=>{e.clear(),o(i,e)});return _e(()=>{t.dispose(),e.dispose()})}class ly{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,n){this._debugNameData=e,this._runFn=t,this.createChangeSummary=i,this._handleChange=n,this.state=2,this.updateCount=0,this.disposed=!1,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=this.createChangeSummary?.(),this._runIfNeeded()}dispose(){this.disposed=!0;for(const e of this.dependencies)e.removeObserver(this);this.dependencies.clear()}_runIfNeeded(){if(this.state===3)return;const e=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=e,this.state=3;const t=this.disposed;try{if(!t){w7()?.handleAutorunTriggered(this);const i=this.changeSummary;this.changeSummary=this.createChangeSummary?.(),this._runFn(this,i)}}finally{for(const i of this.dependenciesToBeRemoved)i.removeObserver(this);this.dependenciesToBeRemoved.clear()}}toString(){return`Autorun<${this.debugName}>`}beginUpdate(){this.state===3&&(this.state=1),this.updateCount++}endUpdate(){if(this.updateCount===1)do{if(this.state===1){this.state=3;for(const e of this.dependencies)if(e.reportChanges(),this.state===2)break}this._runIfNeeded()}while(this.state!==3);this.updateCount--,Fh(()=>this.updateCount>=0)}handlePossibleChange(e){this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(this.state=1)}handleChange(e,t){this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(!this._handleChange||this._handleChange({changedObservable:e,change:t,didChange:n=>n===e},this.changeSummary))&&(this.state=2)}readObservable(e){if(this.disposed)return e.get();e.addObserver(this);const t=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),t}}(function(o){o.Observer=ly})(We||(We={}));function wg(o){return new UZ(o)}class UZ extends L7{constructor(e){super(),this.value=e}get debugName(){return this.toString()}get(){return this.value}addObserver(e){}removeObserver(e){}toString(){return`Const: ${this.value}`}}function gt(...o){let e,t,i;return o.length===3?[e,t,i]=o:[t,i]=o,new of(new gn(e,void 0,i),t,i,()=>of.globalTransaction,ho)}class of extends zg{constructor(e,t,i,n,s){super(),this._debugNameData=e,this.event=t,this._getValue=i,this._getTransaction=n,this._equalityComparator=s,this.hasValue=!1,this.handleEvent=r=>{const a=this._getValue(r),l=this.value;(!this.hasValue||!this._equalityComparator(l,a))&&(this.value=a,this.hasValue&&c_(this._getTransaction(),d=>{for(const h of this.observers)d.updateObserver(h,this),h.handleChange(this,void 0)},()=>{const d=this.getDebugName();return"Event fired"+(d?`: ${d}`:"")}),this.hasValue=!0)}}getDebugName(){return this._debugNameData.getDebugName(this)}get debugName(){const e=this.getDebugName();return"From Event"+(e?`: ${e}`:"")}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0,this.hasValue=!1,this.value=void 0}get(){return this.subscription?(this.hasValue||this.handleEvent(void 0),this.value):this._getValue(void 0)}}(function(o){o.Observer=of;function e(t,i){let n=!1;of.globalTransaction===void 0&&(of.globalTransaction=t,n=!0);try{i()}finally{n&&(of.globalTransaction=void 0)}}o.batchEventsGlobally=e})(gt||(gt={}));function ks(o,e){return new $Z(o,e)}class $Z extends zg{constructor(e,t){super(),this.debugName=e,this.event=t,this.handleEvent=()=>{Xt(i=>{for(const n of this.observers)i.updateObserver(n,this),n.handleChange(this,void 0)},()=>this.debugName)}}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0}get(){}}function Q_(o){return typeof o=="string"?new hP(o):new hP(void 0,o)}class hP extends zg{get debugName(){return new gn(this._owner,this._debugName,void 0).getDebugName(this)??"Observable Signal"}toString(){return this.debugName}constructor(e,t){super(),this._debugName=e,this._owner=t}trigger(e,t){if(!e){Xt(i=>{this.trigger(i,t)},()=>`Trigger signal ${this.debugName}`);return}for(const i of this.observers)e.updateObserver(i,this),i.handleChange(this,t)}get(){}}function KZ(o){const e=new x7(!1,void 0);return o.addObserver(e),_e(()=>{o.removeObserver(e)})}OZ(KZ);function X_(o,e){const t=new x7(!0,e);return o.addObserver(t),e?e(o.get()):o.reportChanges(),_e(()=>{o.removeObserver(t)})}PZ(X_);class x7{constructor(e,t){this._forceRecompute=e,this._handleValue=t,this._counter=0}beginUpdate(e){this._counter++}endUpdate(e){this._counter--,this._counter===0&&this._forceRecompute&&(this._handleValue?this._handleValue(e.get()):e.reportChanges())}handlePossibleChange(e){}handleChange(e,t){}}function YT(o,e){let t;return dr({owner:o,debugReferenceFn:e},n=>(t=e(n,t),t))}function jZ(o,e,t,i){let n=new uP(t,i);return dr({debugReferenceFn:t,owner:o,onLastObserverRemoved:()=>{n.dispose(),n=new uP(t)}},r=>(n.setItems(e.read(r)),n.getItems()))}class uP{constructor(e,t){this._map=e,this._keySelector=t,this._cache=new Map,this._items=[]}dispose(){this._cache.forEach(e=>e.store.dispose()),this._cache.clear()}setItems(e){const t=[],i=new Set(this._cache.keys());for(const n of e){const s=this._keySelector?this._keySelector(n):n;let r=this._cache.get(s);if(r)i.delete(s);else{const a=new X;r={out:this._map(n,a),store:a},this._cache.set(s,r)}t.push(r.out)}for(const n of i)this._cache.get(n).store.dispose(),this._cache.delete(n);this._items=t}getItems(){return this._items}}function qZ(o,e){return YT(o,(t,i)=>i??e(t))}function k7(o,e,t,i){return e||(e=n=>n!=null),new Promise((n,s)=>{let r=!0,a=!1;const l=o.map(d=>({isFinished:e(d),error:t?t(d):!1,state:d})),c=We(d=>{const{isFinished:h,error:u,state:f}=l.read(d);(h||u)&&(r?a=!0:c.dispose(),u?s(u===!0?f:u):n(f))});if(i){const d=i.onCancellationRequested(()=>{c.dispose(),d.dispose(),s(new ha)});if(i.isCancellationRequested){c.dispose(),d.dispose(),s(new ha);return}}r=!1,a&&c.dispose()})}class GZ extends zg{get debugName(){return this._debugNameData.getDebugName(this)??"LazyObservableValue"}constructor(e,t,i){super(),this._debugNameData=e,this._equalityComparator=i,this._isUpToDate=!0,this._deltas=[],this._updateCounter=0,this._value=t}get(){return this._update(),this._value}_update(){if(!this._isUpToDate)if(this._isUpToDate=!0,this._deltas.length>0){for(const e of this.observers)for(const t of this._deltas)e.handleChange(this,t);this._deltas.length=0}else for(const e of this.observers)e.handleChange(this,void 0)}_beginUpdate(){if(this._updateCounter++,this._updateCounter===1)for(const e of this.observers)e.beginUpdate(this)}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){this._update();const e=[...this.observers];for(const t of e)t.endUpdate(this)}}addObserver(e){const t=!this.observers.has(e)&&this._updateCounter>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){const t=this.observers.has(e)&&this._updateCounter>0;super.removeObserver(e),t&&e.endUpdate(this)}set(e,t,i){if(i===void 0&&this._equalityComparator(this._value,e))return;let n;t||(t=n=new Ug(()=>{},()=>`Setting ${this.debugName}`));try{if(this._isUpToDate=!1,this._setValue(e),i!==void 0&&this._deltas.push(i),t.updateObserver({beginUpdate:()=>this._beginUpdate(),endUpdate:()=>this._endUpdate(),handleChange:(s,r)=>{},handlePossibleChange:s=>{}},this),this._updateCounter>1)for(const s of this.observers)s.handlePossibleChange(this)}finally{n&&n.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}function iD(o,e){return o.lazy?new GZ(new gn(o.owner,o.debugName,void 0),e,o.equalsFn??ho):new GT(new gn(o.owner,o.debugName,void 0),e,o.equalsFn??ho)}const Np=class Np extends z{constructor(e=!1){super(),this._onDidRequestBasicLanguageFeatures=this._register(new A),this.onDidRequestBasicLanguageFeatures=this._onDidRequestBasicLanguageFeatures.event,this._onDidRequestRichLanguageFeatures=this._register(new A),this.onDidRequestRichLanguageFeatures=this._onDidRequestRichLanguageFeatures.event,this._onDidChange=this._register(new A({leakWarningThreshold:200})),this.onDidChange=this._onDidChange.event,this._requestedBasicLanguages=new Set,this._requestedRichLanguages=new Set,Np.instanceCount++,this._registry=this._register(new Qk(!0,e)),this.languageIdCodec=this._registry.languageIdCodec,this._register(this._registry.onDidChange(()=>this._onDidChange.fire()))}dispose(){Np.instanceCount--,super.dispose()}isRegisteredLanguageId(e){return this._registry.isRegisteredLanguageId(e)}getLanguageIdByLanguageName(e){return this._registry.getLanguageIdByLanguageName(e)}getLanguageIdByMimeType(e){return this._registry.getLanguageIdByMimeType(e)}guessLanguageIdByFilepathOrFirstLine(e,t){const i=this._registry.guessLanguageIdByFilepathOrFirstLine(e,t);return xN(i,null)}createById(e){return new fP(this.onDidChange,()=>this._createAndGetLanguageIdentifier(e))}createByFilepathOrFirstLine(e,t){return new fP(this.onDidChange,()=>{const i=this.guessLanguageIdByFilepathOrFirstLine(e,t);return this._createAndGetLanguageIdentifier(i)})}_createAndGetLanguageIdentifier(e){return(!e||!this.isRegisteredLanguageId(e))&&(e=Bs),e}requestBasicLanguageFeatures(e){this._requestedBasicLanguages.has(e)||(this._requestedBasicLanguages.add(e),this._onDidRequestBasicLanguageFeatures.fire(e))}requestRichLanguageFeatures(e){this._requestedRichLanguages.has(e)||(this._requestedRichLanguages.add(e),this.requestBasicLanguageFeatures(e),si.getOrCreate(e),this._onDidRequestRichLanguageFeatures.fire(e))}};Np.instanceCount=0;let nD=Np;class fP{constructor(e,t){this._value=gt(this,e,()=>t()),this.onDidChange=J.fromObservable(this._value)}get languageId(){return this._value.get()}}const D7={TEXT:il.text},ZZ=()=>({get delay(){return-1},dispose:()=>{},showHover:()=>{}});let cy=ZZ;const YZ=new ua(()=>cy("mouse",!1)),QZ=new ua(()=>cy("element",!1));function XZ(o){cy=o}function Ks(o){return o==="element"?QZ.value:YZ.value}function QT(){return cy("element",!0)}let I7={showHover:()=>{},hideHover:()=>{},showAndFocusLastHover:()=>{},setupManagedHover:()=>null,showManagedHover:()=>{}};function JZ(o){I7=o}function La(){return I7}class eY{constructor(e){this.spliceables=e}splice(e,t,i){this.spliceables.forEach(n=>n.splice(e,t,i))}}class id extends Error{constructor(e,t){super(`ListError [${e}] ${t}`)}}function gP(o,e){const t=[];for(const i of e){if(o.start>=i.range.end)continue;if(o.ende.concat(t),[]))}class nY{get paddingTop(){return this._paddingTop}set paddingTop(e){this._size=this._size+e-this._paddingTop,this._paddingTop=e}constructor(e){this.groups=[],this._size=0,this._paddingTop=0,this._paddingTop=e??0,this._size=this._paddingTop}splice(e,t,i=[]){const n=i.length-t,s=gP({start:0,end:e},this.groups),r=gP({start:e+t,end:Number.POSITIVE_INFINITY},this.groups).map(l=>({range:sD(l.range,n),size:l.size})),a=i.map((l,c)=>({range:{start:e+c,end:e+c+1},size:l.size}));this.groups=iY(s,a,r),this._size=this._paddingTop+this.groups.reduce((l,c)=>l+c.size*(c.range.end-c.range.start),0)}get count(){const e=this.groups.length;return e?this.groups[e-1].range.end:0}get size(){return this._size}indexAt(e){if(e<0)return-1;if(e{for(const i of e)this.getRenderer(t).disposeTemplate(i.templateData),i.templateData=null}),this.cache.clear(),this.transactionNodesPendingRemoval.clear()}getRenderer(e){const t=this.renderers.get(e);if(!t)throw new Error(`No renderer found for ${e}`);return t}}var Ml=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};const nd={CurrentDragAndDropData:void 0},Tr={useShadows:!0,verticalScrollMode:1,setRowLineHeight:!0,setRowHeight:!0,supportDynamicHeights:!1,dnd:{getDragElements(o){return[o]},getDragURI(){return null},onDragStart(){},onDragOver(){return!1},drop(){},dispose(){}},horizontalScrolling:!1,transformOptimization:!0,alwaysConsumeMouseWheel:!0};class J_{constructor(e){this.elements=e}update(){}getData(){return this.elements}}class oY{constructor(e){this.elements=e}update(){}getData(){return this.elements}}class rY{constructor(){this.types=[],this.files=[]}update(e){if(e.types&&this.types.splice(0,this.types.length,...e.types),e.files){this.files.splice(0,this.files.length);for(let t=0;tn,e?.getPosInSet?this.getPosInSet=e.getPosInSet.bind(e):this.getPosInSet=(t,i)=>i+1,e?.getRole?this.getRole=e.getRole.bind(e):this.getRole=t=>"listitem",e?.isChecked?this.isChecked=e.isChecked.bind(e):this.isChecked=t=>{}}}const Rw=class Rw{get contentHeight(){return this.rangeMap.size}get onDidScroll(){return this.scrollableElement.onScroll}get scrollableElementDomNode(){return this.scrollableElement.getDomNode()}get horizontalScrolling(){return this._horizontalScrolling}set horizontalScrolling(e){if(e!==this._horizontalScrolling){if(e&&this.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");if(this._horizontalScrolling=e,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this._horizontalScrolling){for(const t of this.items)this.measureItemWidth(t);this.updateScrollWidth(),this.scrollableElement.setScrollDimensions({width:oS(this.domNode)}),this.rowsContainer.style.width=`${Math.max(this.scrollWidth||0,this.renderWidth)}px`}else this.scrollableElementWidthDelayer.cancel(),this.scrollableElement.setScrollDimensions({width:this.renderWidth,scrollWidth:this.renderWidth}),this.rowsContainer.style.width=""}}constructor(e,t,i,n=Tr){if(this.virtualDelegate=t,this.domId=`list_id_${++Rw.InstanceCount}`,this.renderers=new Map,this.renderWidth=0,this._scrollHeight=0,this.scrollableElementUpdateDisposable=null,this.scrollableElementWidthDelayer=new z_(50),this.splicing=!1,this.dragOverAnimationStopDisposable=z.None,this.dragOverMouseY=0,this.canDrop=!1,this.currentDragFeedbackDisposable=z.None,this.onDragLeaveTimeout=z.None,this.disposables=new X,this._onDidChangeContentHeight=new A,this._onDidChangeContentWidth=new A,this.onDidChangeContentHeight=J.latch(this._onDidChangeContentHeight.event,void 0,this.disposables),this._horizontalScrolling=!1,n.horizontalScrolling&&n.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");this.items=[],this.itemId=0,this.rangeMap=this.createRangeMap(n.paddingTop??0);for(const r of i)this.renderers.set(r.templateId,r);this.cache=this.disposables.add(new sY(this.renderers)),this.lastRenderTop=0,this.lastRenderHeight=0,this.domNode=document.createElement("div"),this.domNode.className="monaco-list",this.domNode.classList.add(this.domId),this.domNode.tabIndex=0,this.domNode.classList.toggle("mouse-support",typeof n.mouseSupport=="boolean"?n.mouseSupport:!0),this._horizontalScrolling=n.horizontalScrolling??Tr.horizontalScrolling,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this.paddingBottom=typeof n.paddingBottom>"u"?0:n.paddingBottom,this.accessibilityProvider=new lY(n.accessibilityProvider),this.rowsContainer=document.createElement("div"),this.rowsContainer.className="monaco-list-rows",(n.transformOptimization??Tr.transformOptimization)&&(this.rowsContainer.style.transform="translate3d(0px, 0px, 0px)",this.rowsContainer.style.overflow="hidden",this.rowsContainer.style.contain="strict"),this.disposables.add(fn.addTarget(this.rowsContainer)),this.scrollable=this.disposables.add(new Vg({forceIntegerValues:!0,smoothScrollDuration:n.smoothScrolling??!1?125:0,scheduleAtNextAnimationFrame:r=>fs(fe(this.domNode),r)})),this.scrollableElement=this.disposables.add(new X0(this.rowsContainer,{alwaysConsumeMouseWheel:n.alwaysConsumeMouseWheel??Tr.alwaysConsumeMouseWheel,horizontal:1,vertical:n.verticalScrollMode??Tr.verticalScrollMode,useShadows:n.useShadows??Tr.useShadows,mouseWheelScrollSensitivity:n.mouseWheelScrollSensitivity,fastScrollSensitivity:n.fastScrollSensitivity,scrollByPage:n.scrollByPage},this.scrollable)),this.domNode.appendChild(this.scrollableElement.getDomNode()),e.appendChild(this.domNode),this.scrollableElement.onScroll(this.onScroll,this,this.disposables),this.disposables.add(U(this.rowsContainer,St.Change,r=>this.onTouchChange(r))),this.disposables.add(U(this.scrollableElement.getDomNode(),"scroll",r=>r.target.scrollTop=0)),this.disposables.add(U(this.domNode,"dragover",r=>this.onDragOver(this.toDragEvent(r)))),this.disposables.add(U(this.domNode,"drop",r=>this.onDrop(this.toDragEvent(r)))),this.disposables.add(U(this.domNode,"dragleave",r=>this.onDragLeave(this.toDragEvent(r)))),this.disposables.add(U(this.domNode,"dragend",r=>this.onDragEnd(r))),this.setRowLineHeight=n.setRowLineHeight??Tr.setRowLineHeight,this.setRowHeight=n.setRowHeight??Tr.setRowHeight,this.supportDynamicHeights=n.supportDynamicHeights??Tr.supportDynamicHeights,this.dnd=n.dnd??this.disposables.add(Tr.dnd),this.layout(n.initialSize?.height,n.initialSize?.width)}updateOptions(e){e.paddingBottom!==void 0&&(this.paddingBottom=e.paddingBottom,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),e.smoothScrolling!==void 0&&this.scrollable.setSmoothScrollDuration(e.smoothScrolling?125:0),e.horizontalScrolling!==void 0&&(this.horizontalScrolling=e.horizontalScrolling);let t;if(e.scrollByPage!==void 0&&(t={...t??{},scrollByPage:e.scrollByPage}),e.mouseWheelScrollSensitivity!==void 0&&(t={...t??{},mouseWheelScrollSensitivity:e.mouseWheelScrollSensitivity}),e.fastScrollSensitivity!==void 0&&(t={...t??{},fastScrollSensitivity:e.fastScrollSensitivity}),t&&this.scrollableElement.updateOptions(t),e.paddingTop!==void 0&&e.paddingTop!==this.rangeMap.paddingTop){const i=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),n=e.paddingTop-this.rangeMap.paddingTop;this.rangeMap.paddingTop=e.paddingTop,this.render(i,Math.max(0,this.lastRenderTop+n),this.lastRenderHeight,void 0,void 0,!0),this.setScrollTop(this.lastRenderTop),this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.lastRenderTop,this.lastRenderHeight)}}createRangeMap(e){return new nY(e)}splice(e,t,i=[]){if(this.splicing)throw new Error("Can't run recursive splices.");this.splicing=!0;try{return this._splice(e,t,i)}finally{this.splicing=!1,this._onDidChangeContentHeight.fire(this.contentHeight)}}_splice(e,t,i=[]){const n=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),s={start:e,end:e+t},r=Yi.intersect(n,s),a=new Map;for(let y=r.end-1;y>=r.start;y--){const x=this.items[y];if(x.dragStartDisposable.dispose(),x.checkedDisposable.dispose(),x.row){let L=a.get(x.templateId);L||(L=[],a.set(x.templateId,L));const E=this.renderers.get(x.templateId);E&&E.disposeElement&&E.disposeElement(x.element,y,x.row.templateData,x.size),L.unshift(x.row)}x.row=null,x.stale=!0}const l={start:e+t,end:this.items.length},c=Yi.intersect(l,n),d=Yi.relativeComplement(l,n),h=i.map(y=>({id:String(this.itemId++),element:y,templateId:this.virtualDelegate.getTemplateId(y),size:this.virtualDelegate.getHeight(y),width:void 0,hasDynamicHeight:!!this.virtualDelegate.hasDynamicHeight&&this.virtualDelegate.hasDynamicHeight(y),lastDynamicHeightWidth:void 0,row:null,uri:void 0,dropTarget:!1,dragStartDisposable:z.None,checkedDisposable:z.None,stale:!1}));let u;e===0&&t>=this.items.length?(this.rangeMap=this.createRangeMap(this.rangeMap.paddingTop),this.rangeMap.splice(0,0,h),u=this.items,this.items=h):(this.rangeMap.splice(e,t,h),u=this.items.splice(e,t,...h));const f=i.length-t,g=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),p=sD(c,f),_=Yi.intersect(g,p);for(let y=_.start;y<_.end;y++)this.updateItemInDOM(this.items[y],y);const b=Yi.relativeComplement(p,g);for(const y of b)for(let x=y.start;xsD(y,f)),v=[{start:e,end:e+i.length},...C].map(y=>Yi.intersect(g,y)).reverse();for(const y of v)for(let x=y.end-1;x>=y.start;x--){const L=this.items[x],N=a.get(L.templateId)?.pop();this.insertItemInDOM(x,N)}for(const y of a.values())for(const x of y)this.cache.release(x);return this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight),u.map(y=>y.element)}eventuallyUpdateScrollDimensions(){this._scrollHeight=this.contentHeight,this.rowsContainer.style.height=`${this._scrollHeight}px`,this.scrollableElementUpdateDisposable||(this.scrollableElementUpdateDisposable=fs(fe(this.domNode),()=>{this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight}),this.updateScrollWidth(),this.scrollableElementUpdateDisposable=null}))}eventuallyUpdateScrollWidth(){if(!this.horizontalScrolling){this.scrollableElementWidthDelayer.cancel();return}this.scrollableElementWidthDelayer.trigger(()=>this.updateScrollWidth())}updateScrollWidth(){if(!this.horizontalScrolling)return;let e=0;for(const t of this.items)typeof t.width<"u"&&(e=Math.max(e,t.width));this.scrollWidth=e,this.scrollableElement.setScrollDimensions({scrollWidth:e===0?0:e+10}),this._onDidChangeContentWidth.fire(this.scrollWidth)}rerender(){if(this.supportDynamicHeights){for(const e of this.items)e.lastDynamicHeightWidth=void 0;this._rerender(this.lastRenderTop,this.lastRenderHeight)}}get length(){return this.items.length}get renderHeight(){return this.scrollableElement.getScrollDimensions().height}get firstVisibleIndex(){return this.getRenderRange(this.lastRenderTop,this.lastRenderHeight).start}element(e){return this.items[e].element}indexOf(e){return this.items.findIndex(t=>t.element===e)}domElement(e){const t=this.items[e].row;return t&&t.domNode}elementHeight(e){return this.items[e].size}elementTop(e){return this.rangeMap.positionAt(e)}indexAt(e){return this.rangeMap.indexAt(e)}indexAfter(e){return this.rangeMap.indexAfter(e)}layout(e,t){const i={height:typeof e=="number"?e:CV(this.domNode)};this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,i.scrollHeight=this.scrollHeight),this.scrollableElement.setScrollDimensions(i),typeof t<"u"&&(this.renderWidth=t,this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight)),this.horizontalScrolling&&this.scrollableElement.setScrollDimensions({width:typeof t=="number"?t:oS(this.domNode)})}render(e,t,i,n,s,r=!1){const a=this.getRenderRange(t,i),l=Yi.relativeComplement(a,e).reverse(),c=Yi.relativeComplement(e,a);if(r){const d=Yi.intersect(e,a);for(let h=d.start;h{for(const d of c)for(let h=d.start;h=d.start;h--)this.insertItemInDOM(h)}),n!==void 0&&(this.rowsContainer.style.left=`-${n}px`),this.rowsContainer.style.top=`-${t}px`,this.horizontalScrolling&&s!==void 0&&(this.rowsContainer.style.width=`${Math.max(s,this.renderWidth)}px`),this.lastRenderTop=t,this.lastRenderHeight=i}insertItemInDOM(e,t){const i=this.items[e];if(!i.row)if(t)i.row=t,i.stale=!0;else{const l=this.cache.alloc(i.templateId);i.row=l.row,i.stale||=l.isReusingConnectedDomNode}const n=this.accessibilityProvider.getRole(i.element)||"listitem";i.row.domNode.setAttribute("role",n);const s=this.accessibilityProvider.isChecked(i.element);if(typeof s=="boolean")i.row.domNode.setAttribute("aria-checked",String(!!s));else if(s){const l=c=>i.row.domNode.setAttribute("aria-checked",String(!!c));l(s.value),i.checkedDisposable=s.onDidChange(()=>l(s.value))}if(i.stale||!i.row.domNode.parentElement){const l=this.items.at(e+1)?.row?.domNode??null;(i.row.domNode.parentElement!==this.rowsContainer||i.row.domNode.nextElementSibling!==l)&&this.rowsContainer.insertBefore(i.row.domNode,l),i.stale=!1}this.updateItemInDOM(i,e);const r=this.renderers.get(i.templateId);if(!r)throw new Error(`No renderer found for template id ${i.templateId}`);r?.renderElement(i.element,e,i.row.templateData,i.size);const a=this.dnd.getDragURI(i.element);i.dragStartDisposable.dispose(),i.row.domNode.draggable=!!a,a&&(i.dragStartDisposable=U(i.row.domNode,"dragstart",l=>this.onDragStart(i.element,a,l))),this.horizontalScrolling&&(this.measureItemWidth(i),this.eventuallyUpdateScrollWidth())}measureItemWidth(e){if(!e.row||!e.row.domNode)return;e.row.domNode.style.width="fit-content",e.width=oS(e.row.domNode);const t=fe(e.row.domNode).getComputedStyle(e.row.domNode);t.paddingLeft&&(e.width+=parseFloat(t.paddingLeft)),t.paddingRight&&(e.width+=parseFloat(t.paddingRight)),e.row.domNode.style.width=""}updateItemInDOM(e,t){e.row.domNode.style.top=`${this.elementTop(t)}px`,this.setRowHeight&&(e.row.domNode.style.height=`${e.size}px`),this.setRowLineHeight&&(e.row.domNode.style.lineHeight=`${e.size}px`),e.row.domNode.setAttribute("data-index",`${t}`),e.row.domNode.setAttribute("data-last-element",t===this.length-1?"true":"false"),e.row.domNode.setAttribute("data-parity",t%2===0?"even":"odd"),e.row.domNode.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(e.element,t,this.length))),e.row.domNode.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(e.element,t))),e.row.domNode.setAttribute("id",this.getElementDomId(t)),e.row.domNode.classList.toggle("drop-target",e.dropTarget)}removeItemFromDOM(e){const t=this.items[e];if(t.dragStartDisposable.dispose(),t.checkedDisposable.dispose(),t.row){const i=this.renderers.get(t.templateId);i&&i.disposeElement&&i.disposeElement(t.element,e,t.row.templateData,t.size),this.cache.release(t.row),t.row=null}this.horizontalScrolling&&this.eventuallyUpdateScrollWidth()}getScrollTop(){return this.scrollableElement.getScrollPosition().scrollTop}setScrollTop(e,t){this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),this.scrollableElement.setScrollPosition({scrollTop:e,reuseAnimation:t})}get scrollTop(){return this.getScrollTop()}set scrollTop(e){this.setScrollTop(e)}get scrollHeight(){return this._scrollHeight+(this.horizontalScrolling?10:0)+this.paddingBottom}get onMouseClick(){return J.map(this.disposables.add(new ze(this.domNode,"click")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseDblClick(){return J.map(this.disposables.add(new ze(this.domNode,"dblclick")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseMiddleClick(){return J.filter(J.map(this.disposables.add(new ze(this.domNode,"auxclick")).event,e=>this.toMouseEvent(e),this.disposables),e=>e.browserEvent.button===1,this.disposables)}get onMouseDown(){return J.map(this.disposables.add(new ze(this.domNode,"mousedown")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseOver(){return J.map(this.disposables.add(new ze(this.domNode,"mouseover")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseOut(){return J.map(this.disposables.add(new ze(this.domNode,"mouseout")).event,e=>this.toMouseEvent(e),this.disposables)}get onContextMenu(){return J.any(J.map(this.disposables.add(new ze(this.domNode,"contextmenu")).event,e=>this.toMouseEvent(e),this.disposables),J.map(this.disposables.add(new ze(this.domNode,St.Contextmenu)).event,e=>this.toGestureEvent(e),this.disposables))}get onTouchStart(){return J.map(this.disposables.add(new ze(this.domNode,"touchstart")).event,e=>this.toTouchEvent(e),this.disposables)}get onTap(){return J.map(this.disposables.add(new ze(this.rowsContainer,St.Tap)).event,e=>this.toGestureEvent(e),this.disposables)}toMouseEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element;return{browserEvent:e,index:t,element:n}}toTouchEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element;return{browserEvent:e,index:t,element:n}}toGestureEvent(e){const t=this.getItemIndexFromEventTarget(e.initialTarget||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element;return{browserEvent:e,index:t,element:n}}toDragEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element,s=this.getTargetSector(e,t);return{browserEvent:e,index:t,element:n,sector:s}}onScroll(e){try{const t=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight);this.render(t,e.scrollTop,e.height,e.scrollLeft,e.scrollWidth),this.supportDynamicHeights&&this._rerender(e.scrollTop,e.height,e.inSmoothScrolling)}catch(t){throw console.error("Got bad scroll event:",e),t}}onTouchChange(e){e.preventDefault(),e.stopPropagation(),this.scrollTop-=e.translationY}onDragStart(e,t,i){if(!i.dataTransfer)return;const n=this.dnd.getDragElements(e);if(i.dataTransfer.effectAllowed="copyMove",i.dataTransfer.setData(D7.TEXT,t),i.dataTransfer.setDragImage){let s;this.dnd.getDragLabel&&(s=this.dnd.getDragLabel(n,i)),typeof s>"u"&&(s=String(n.length));const r=ce(".monaco-drag-image");r.textContent=s,(c=>{for(;c&&!c.classList.contains("monaco-workbench");)c=c.parentElement;return c||this.domNode.ownerDocument})(this.domNode).appendChild(r),i.dataTransfer.setDragImage(r,-10,-10),setTimeout(()=>r.remove(),0)}this.domNode.classList.add("dragging"),this.currentDragData=new J_(n),nd.CurrentDragAndDropData=new oY(n),this.dnd.onDragStart?.(this.currentDragData,i)}onDragOver(e){if(e.browserEvent.preventDefault(),this.onDragLeaveTimeout.dispose(),nd.CurrentDragAndDropData&&nd.CurrentDragAndDropData.getData()==="vscode-ui"||(this.setupDragAndDropScrollTopAnimation(e.browserEvent),!e.browserEvent.dataTransfer))return!1;if(!this.currentDragData)if(nd.CurrentDragAndDropData)this.currentDragData=nd.CurrentDragAndDropData;else{if(!e.browserEvent.dataTransfer.types)return!1;this.currentDragData=new rY}const t=this.dnd.onDragOver(this.currentDragData,e.element,e.index,e.sector,e.browserEvent);if(this.canDrop=typeof t=="boolean"?t:t.accept,!this.canDrop)return this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),!1;e.browserEvent.dataTransfer.dropEffect=typeof t!="boolean"&&t.effect?.type===0?"copy":"move";let i;typeof t!="boolean"&&t.feedback?i=t.feedback:typeof e.index>"u"?i=[-1]:i=[e.index],i=Eh(i).filter(s=>s>=-1&&ss-r),i=i[0]===-1?[-1]:i;let n=typeof t!="boolean"&&t.effect&&t.effect.position?t.effect.position:"drop-target";if(aY(this.currentDragFeedback,i)&&this.currentDragFeedbackPosition===n)return!0;if(this.currentDragFeedback=i,this.currentDragFeedbackPosition=n,this.currentDragFeedbackDisposable.dispose(),i[0]===-1)this.domNode.classList.add(n),this.rowsContainer.classList.add(n),this.currentDragFeedbackDisposable=_e(()=>{this.domNode.classList.remove(n),this.rowsContainer.classList.remove(n)});else{if(i.length>1&&n!=="drop-target")throw new Error("Can't use multiple feedbacks with position different than 'over'");n==="drop-target-after"&&i[0]{for(const s of i){const r=this.items[s];r.dropTarget=!1,r.row?.domNode.classList.remove(n)}})}return!0}onDragLeave(e){this.onDragLeaveTimeout.dispose(),this.onDragLeaveTimeout=rg(()=>this.clearDragOverFeedback(),100,this.disposables),this.currentDragData&&this.dnd.onDragLeave?.(this.currentDragData,e.element,e.index,e.browserEvent)}onDrop(e){if(!this.canDrop)return;const t=this.currentDragData;this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,nd.CurrentDragAndDropData=void 0,!(!t||!e.browserEvent.dataTransfer)&&(e.browserEvent.preventDefault(),t.update(e.browserEvent.dataTransfer),this.dnd.drop(t,e.element,e.index,e.sector,e.browserEvent))}onDragEnd(e){this.canDrop=!1,this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,nd.CurrentDragAndDropData=void 0,this.dnd.onDragEnd?.(e)}clearDragOverFeedback(){this.currentDragFeedback=void 0,this.currentDragFeedbackPosition=void 0,this.currentDragFeedbackDisposable.dispose(),this.currentDragFeedbackDisposable=z.None}setupDragAndDropScrollTopAnimation(e){if(!this.dragOverAnimationDisposable){const t=_V(this.domNode).top;this.dragOverAnimationDisposable=RV(fe(this.domNode),this.animateDragAndDropScrollTop.bind(this,t))}this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationStopDisposable=rg(()=>{this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)},1e3,this.disposables),this.dragOverMouseY=e.pageY}animateDragAndDropScrollTop(e){if(this.dragOverMouseY===void 0)return;const t=this.dragOverMouseY-e,i=this.renderHeight-35;t<35?this.scrollTop+=Math.max(-14,Math.floor(.3*(t-35))):t>i&&(this.scrollTop+=Math.min(14,Math.floor(.3*(t-i))))}teardownDragAndDropScrollTopAnimation(){this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)}getTargetSector(e,t){if(t===void 0)return;const i=e.offsetY/this.items[t].size,n=Math.floor(i/.25);return bn(n,0,3)}getItemIndexFromEventTarget(e){const t=this.scrollableElement.getDomNode();let i=e;for(;(Ei(i)||kV(i))&&i!==this.rowsContainer&&t.contains(i);){const n=i.getAttribute("data-index");if(n){const s=Number(n);if(!isNaN(s))return s}i=i.parentElement}}getRenderRange(e,t){return{start:this.rangeMap.indexAt(e),end:this.rangeMap.indexAfter(e+t-1)}}_rerender(e,t,i){const n=this.getRenderRange(e,t);let s,r;e===this.elementTop(n.start)?(s=n.start,r=0):n.end-n.start>1&&(s=n.start+1,r=this.elementTop(s)-e);let a=0;for(;;){const l=this.getRenderRange(e,t);let c=!1;for(let d=l.start;d=u.start;f--)this.insertItemInDOM(f);for(let u=l.start;u=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};class cY{constructor(e){this.trait=e,this.renderedElements=[]}get templateId(){return`template:${this.trait.name}`}renderTemplate(e){return e}renderElement(e,t,i){const n=this.renderedElements.findIndex(s=>s.templateData===i);if(n>=0){const s=this.renderedElements[n];this.trait.unrender(i),s.index=t}else{const s={index:t,templateData:i};this.renderedElements.push(s)}this.trait.renderIndex(t,i)}splice(e,t,i){const n=[];for(const s of this.renderedElements)s.index=e+t&&n.push({index:s.index+i-t,templateData:s.templateData});this.renderedElements=n}renderIndexes(e){for(const{index:t,templateData:i}of this.renderedElements)e.indexOf(t)>-1&&this.trait.renderIndex(t,i)}disposeTemplate(e){const t=this.renderedElements.findIndex(i=>i.templateData===e);t<0||this.renderedElements.splice(t,1)}}let jC=class{get name(){return this._trait}get renderer(){return new cY(this)}constructor(e){this._trait=e,this.indexes=[],this.sortedIndexes=[],this._onChange=new A,this.onChange=this._onChange.event}splice(e,t,i){const n=i.length-t,s=e+t,r=[];let a=0;for(;a=s;)r.push(this.sortedIndexes[a++]+n);this.renderer.splice(e,t,i.length),this._set(r,r)}renderIndex(e,t){t.classList.toggle(this._trait,this.contains(e))}unrender(e){e.classList.remove(this._trait)}set(e,t){return this._set(e,[...e].sort(pP),t)}_set(e,t,i){const n=this.indexes,s=this.sortedIndexes;this.indexes=e,this.sortedIndexes=t;const r=oD(s,e);return this.renderer.renderIndexes(r),this._onChange.fire({indexes:e,browserEvent:i}),n}get(){return this.indexes}contains(e){return SN(this.sortedIndexes,e,pP)>=0}dispose(){xt(this._onChange)}};Gc([Jt],jC.prototype,"renderer",null);class dY extends jC{constructor(e){super("selected"),this.setAriaSelected=e}renderIndex(e,t){super.renderIndex(e,t),this.setAriaSelected&&(this.contains(e)?t.setAttribute("aria-selected","true"):t.setAttribute("aria-selected","false"))}}class MS{constructor(e,t,i){this.trait=e,this.view=t,this.identityProvider=i}splice(e,t,i){if(!this.identityProvider)return this.trait.splice(e,t,new Array(i.length).fill(!1));const n=this.trait.get().map(a=>this.identityProvider.getId(this.view.element(a)).toString());if(n.length===0)return this.trait.splice(e,t,new Array(i.length).fill(!1));const s=new Set(n),r=i.map(a=>s.has(this.identityProvider.getId(a).toString()));this.trait.splice(e,t,r)}}function pc(o){return o.tagName==="INPUT"||o.tagName==="TEXTAREA"}function eb(o,e){return o.classList.contains(e)?!0:o.classList.contains("monaco-list")||!o.parentElement?!1:eb(o.parentElement,e)}function Rm(o){return eb(o,"monaco-editor")}function hY(o){return eb(o,"monaco-custom-toggle")}function uY(o){return eb(o,"action-item")}function Jm(o){return eb(o,"monaco-tree-sticky-row")}function d_(o){return o.classList.contains("monaco-tree-sticky-container")}function E7(o){return o.tagName==="A"&&o.classList.contains("monaco-button")||o.tagName==="DIV"&&o.classList.contains("monaco-button-dropdown")?!0:o.classList.contains("monaco-list")||!o.parentElement?!1:E7(o.parentElement)}class N7{get onKeyDown(){return J.chain(this.disposables.add(new ze(this.view.domNode,"keydown")).event,e=>e.filter(t=>!pc(t.target)).map(t=>new Nt(t)))}constructor(e,t,i){this.list=e,this.view=t,this.disposables=new X,this.multipleSelectionDisposables=new X,this.multipleSelectionSupport=i.multipleSelectionSupport,this.disposables.add(this.onKeyDown(n=>{switch(n.keyCode){case 3:return this.onEnter(n);case 16:return this.onUpArrow(n);case 18:return this.onDownArrow(n);case 11:return this.onPageUpArrow(n);case 12:return this.onPageDownArrow(n);case 9:return this.onEscape(n);case 31:this.multipleSelectionSupport&&(Ue?n.metaKey:n.ctrlKey)&&this.onCtrlA(n)}}))}updateOptions(e){e.multipleSelectionSupport!==void 0&&(this.multipleSelectionSupport=e.multipleSelectionSupport)}onEnter(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(this.list.getFocus(),e.browserEvent)}onUpArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusPrevious(1,!1,e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onDownArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusNext(1,!1,e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onPageUpArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusPreviousPage(e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onPageDownArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusNextPage(e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onCtrlA(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(Bn(this.list.length),e.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus()}onEscape(e){this.list.getSelection().length&&(e.preventDefault(),e.stopPropagation(),this.list.setSelection([],e.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus())}dispose(){this.disposables.dispose(),this.multipleSelectionDisposables.dispose()}}Gc([Jt],N7.prototype,"onKeyDown",null);var Qr;(function(o){o[o.Automatic=0]="Automatic",o[o.Trigger=1]="Trigger"})(Qr||(Qr={}));var rf;(function(o){o[o.Idle=0]="Idle",o[o.Typing=1]="Typing"})(rf||(rf={}));const fY=new class{mightProducePrintableCharacter(o){return o.ctrlKey||o.metaKey||o.altKey?!1:o.keyCode>=31&&o.keyCode<=56||o.keyCode>=21&&o.keyCode<=30||o.keyCode>=98&&o.keyCode<=107||o.keyCode>=85&&o.keyCode<=95}};class gY{constructor(e,t,i,n,s){this.list=e,this.view=t,this.keyboardNavigationLabelProvider=i,this.keyboardNavigationEventFilter=n,this.delegate=s,this.enabled=!1,this.state=rf.Idle,this.mode=Qr.Automatic,this.triggered=!1,this.previouslyFocused=-1,this.enabledDisposables=new X,this.disposables=new X,this.updateOptions(e.options)}updateOptions(e){e.typeNavigationEnabled??!0?this.enable():this.disable(),this.mode=e.typeNavigationMode??Qr.Automatic}enable(){if(this.enabled)return;let e=!1;const t=J.chain(this.enabledDisposables.add(new ze(this.view.domNode,"keydown")).event,s=>s.filter(r=>!pc(r.target)).filter(()=>this.mode===Qr.Automatic||this.triggered).map(r=>new Nt(r)).filter(r=>e||this.keyboardNavigationEventFilter(r)).filter(r=>this.delegate.mightProducePrintableCharacter(r)).forEach(r=>je.stop(r,!0)).map(r=>r.browserEvent.key)),i=J.debounce(t,()=>null,800,void 0,void 0,void 0,this.enabledDisposables);J.reduce(J.any(t,i),(s,r)=>r===null?null:(s||"")+r,void 0,this.enabledDisposables)(this.onInput,this,this.enabledDisposables),i(this.onClear,this,this.enabledDisposables),t(()=>e=!0,void 0,this.enabledDisposables),i(()=>e=!1,void 0,this.enabledDisposables),this.enabled=!0,this.triggered=!1}disable(){this.enabled&&(this.enabledDisposables.clear(),this.enabled=!1,this.triggered=!1)}onClear(){const e=this.list.getFocus();if(e.length>0&&e[0]===this.previouslyFocused){const t=this.list.options.accessibilityProvider?.getAriaLabel(this.list.element(e[0]));typeof t=="string"?El(t):t&&El(t.get())}this.previouslyFocused=-1}onInput(e){if(!e){this.state=rf.Idle,this.triggered=!1;return}const t=this.list.getFocus(),i=t.length>0?t[0]:0,n=this.state===rf.Idle?1:0;this.state=rf.Typing;for(let s=0;s1&&c.length===1){this.previouslyFocused=i,this.list.setFocus([r]),this.list.reveal(r);return}}}else if(typeof l>"u"||WC(e,l)){this.previouslyFocused=i,this.list.setFocus([r]),this.list.reveal(r);return}}}dispose(){this.disable(),this.enabledDisposables.dispose(),this.disposables.dispose()}}class mY{constructor(e,t){this.list=e,this.view=t,this.disposables=new X;const i=J.chain(this.disposables.add(new ze(t.domNode,"keydown")).event,s=>s.filter(r=>!pc(r.target)).map(r=>new Nt(r)));J.chain(i,s=>s.filter(r=>r.keyCode===2&&!r.ctrlKey&&!r.metaKey&&!r.shiftKey&&!r.altKey))(this.onTab,this,this.disposables)}onTab(e){if(e.target!==this.view.domNode)return;const t=this.list.getFocus();if(t.length===0)return;const i=this.view.domElement(t[0]);if(!i)return;const n=i.querySelector("[tabIndex]");if(!n||!Ei(n)||n.tabIndex===-1)return;const s=fe(n).getComputedStyle(n);s.visibility==="hidden"||s.display==="none"||(e.preventDefault(),e.stopPropagation(),n.focus())}dispose(){this.disposables.dispose()}}function T7(o){return Ue?o.browserEvent.metaKey:o.browserEvent.ctrlKey}function M7(o){return o.browserEvent.shiftKey}function pY(o){return tT(o)&&o.button===2}const mP={isSelectionSingleChangeEvent:T7,isSelectionRangeChangeEvent:M7};class R7{constructor(e){this.list=e,this.disposables=new X,this._onPointer=new A,this.onPointer=this._onPointer.event,e.options.multipleSelectionSupport!==!1&&(this.multipleSelectionController=this.list.options.multipleSelectionController||mP),this.mouseSupport=typeof e.options.mouseSupport>"u"||!!e.options.mouseSupport,this.mouseSupport&&(e.onMouseDown(this.onMouseDown,this,this.disposables),e.onContextMenu(this.onContextMenu,this,this.disposables),e.onMouseDblClick(this.onDoubleClick,this,this.disposables),e.onTouchStart(this.onMouseDown,this,this.disposables),this.disposables.add(fn.addTarget(e.getHTMLElement()))),J.any(e.onMouseClick,e.onMouseMiddleClick,e.onTap)(this.onViewPointer,this,this.disposables)}updateOptions(e){e.multipleSelectionSupport!==void 0&&(this.multipleSelectionController=void 0,e.multipleSelectionSupport&&(this.multipleSelectionController=this.list.options.multipleSelectionController||mP))}isSelectionSingleChangeEvent(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionSingleChangeEvent(e):!1}isSelectionRangeChangeEvent(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionRangeChangeEvent(e):!1}isSelectionChangeEvent(e){return this.isSelectionSingleChangeEvent(e)||this.isSelectionRangeChangeEvent(e)}onMouseDown(e){Rm(e.browserEvent.target)||Xi()!==e.browserEvent.target&&this.list.domFocus()}onContextMenu(e){if(pc(e.browserEvent.target)||Rm(e.browserEvent.target))return;const t=typeof e.index>"u"?[]:[e.index];this.list.setFocus(t,e.browserEvent)}onViewPointer(e){if(!this.mouseSupport||pc(e.browserEvent.target)||Rm(e.browserEvent.target)||e.browserEvent.isHandledByList)return;e.browserEvent.isHandledByList=!0;const t=e.index;if(typeof t>"u"){this.list.setFocus([],e.browserEvent),this.list.setSelection([],e.browserEvent),this.list.setAnchor(void 0);return}if(this.isSelectionChangeEvent(e))return this.changeSelection(e);this.list.setFocus([t],e.browserEvent),this.list.setAnchor(t),pY(e.browserEvent)||this.list.setSelection([t],e.browserEvent),this._onPointer.fire(e)}onDoubleClick(e){if(pc(e.browserEvent.target)||Rm(e.browserEvent.target)||this.isSelectionChangeEvent(e)||e.browserEvent.isHandledByList)return;e.browserEvent.isHandledByList=!0;const t=this.list.getFocus();this.list.setSelection(t,e.browserEvent)}changeSelection(e){const t=e.index;let i=this.list.getAnchor();if(this.isSelectionRangeChangeEvent(e)){typeof i>"u"&&(i=this.list.getFocus()[0]??t,this.list.setAnchor(i));const n=Math.min(i,t),s=Math.max(i,t),r=Bn(n,s+1),a=this.list.getSelection(),l=CY(oD(a,[i]),i);if(l.length===0)return;const c=oD(r,vY(a,l));this.list.setSelection(c,e.browserEvent),this.list.setFocus([t],e.browserEvent)}else if(this.isSelectionSingleChangeEvent(e)){const n=this.list.getSelection(),s=n.filter(r=>r!==t);this.list.setFocus([t]),this.list.setAnchor(t),n.length===s.length?this.list.setSelection([...s,t],e.browserEvent):this.list.setSelection(s,e.browserEvent)}}dispose(){this.disposables.dispose()}}class A7{constructor(e,t){this.styleElement=e,this.selectorSuffix=t}style(e){const t=this.selectorSuffix&&`.${this.selectorSuffix}`,i=[];e.listBackground&&i.push(`.monaco-list${t} .monaco-list-rows { background: ${e.listBackground}; }`),e.listFocusBackground&&(i.push(`.monaco-list${t}:focus .monaco-list-row.focused { background-color: ${e.listFocusBackground}; }`),i.push(`.monaco-list${t}:focus .monaco-list-row.focused:hover { background-color: ${e.listFocusBackground}; }`)),e.listFocusForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.focused { color: ${e.listFocusForeground}; }`),e.listActiveSelectionBackground&&(i.push(`.monaco-list${t}:focus .monaco-list-row.selected { background-color: ${e.listActiveSelectionBackground}; }`),i.push(`.monaco-list${t}:focus .monaco-list-row.selected:hover { background-color: ${e.listActiveSelectionBackground}; }`)),e.listActiveSelectionForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.selected { color: ${e.listActiveSelectionForeground}; }`),e.listActiveSelectionIconForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.selected .codicon { color: ${e.listActiveSelectionIconForeground}; }`),e.listFocusAndSelectionBackground&&i.push(` - .monaco-drag-image, - .monaco-list${t}:focus .monaco-list-row.selected.focused { background-color: ${e.listFocusAndSelectionBackground}; } - `),e.listFocusAndSelectionForeground&&i.push(` - .monaco-drag-image, - .monaco-list${t}:focus .monaco-list-row.selected.focused { color: ${e.listFocusAndSelectionForeground}; } - `),e.listInactiveFocusForeground&&(i.push(`.monaco-list${t} .monaco-list-row.focused { color: ${e.listInactiveFocusForeground}; }`),i.push(`.monaco-list${t} .monaco-list-row.focused:hover { color: ${e.listInactiveFocusForeground}; }`)),e.listInactiveSelectionIconForeground&&i.push(`.monaco-list${t} .monaco-list-row.focused .codicon { color: ${e.listInactiveSelectionIconForeground}; }`),e.listInactiveFocusBackground&&(i.push(`.monaco-list${t} .monaco-list-row.focused { background-color: ${e.listInactiveFocusBackground}; }`),i.push(`.monaco-list${t} .monaco-list-row.focused:hover { background-color: ${e.listInactiveFocusBackground}; }`)),e.listInactiveSelectionBackground&&(i.push(`.monaco-list${t} .monaco-list-row.selected { background-color: ${e.listInactiveSelectionBackground}; }`),i.push(`.monaco-list${t} .monaco-list-row.selected:hover { background-color: ${e.listInactiveSelectionBackground}; }`)),e.listInactiveSelectionForeground&&i.push(`.monaco-list${t} .monaco-list-row.selected { color: ${e.listInactiveSelectionForeground}; }`),e.listHoverBackground&&i.push(`.monaco-list${t}:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused) { background-color: ${e.listHoverBackground}; }`),e.listHoverForeground&&i.push(`.monaco-list${t}:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused) { color: ${e.listHoverForeground}; }`);const n=vl(e.listFocusAndSelectionOutline,vl(e.listSelectionOutline,e.listFocusOutline??""));n&&i.push(`.monaco-list${t}:focus .monaco-list-row.focused.selected { outline: 1px solid ${n}; outline-offset: -1px;}`),e.listFocusOutline&&i.push(` - .monaco-drag-image, - .monaco-list${t}:focus .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; } - .monaco-workbench.context-menu-visible .monaco-list${t}.last-focused .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; } - `);const s=vl(e.listSelectionOutline,e.listInactiveFocusOutline??"");s&&i.push(`.monaco-list${t} .monaco-list-row.focused.selected { outline: 1px dotted ${s}; outline-offset: -1px; }`),e.listSelectionOutline&&i.push(`.monaco-list${t} .monaco-list-row.selected { outline: 1px dotted ${e.listSelectionOutline}; outline-offset: -1px; }`),e.listInactiveFocusOutline&&i.push(`.monaco-list${t} .monaco-list-row.focused { outline: 1px dotted ${e.listInactiveFocusOutline}; outline-offset: -1px; }`),e.listHoverOutline&&i.push(`.monaco-list${t} .monaco-list-row:hover { outline: 1px dashed ${e.listHoverOutline}; outline-offset: -1px; }`),e.listDropOverBackground&&i.push(` - .monaco-list${t}.drop-target, - .monaco-list${t} .monaco-list-rows.drop-target, - .monaco-list${t} .monaco-list-row.drop-target { background-color: ${e.listDropOverBackground} !important; color: inherit !important; } - `),e.listDropBetweenBackground&&(i.push(` - .monaco-list${t} .monaco-list-rows.drop-target-before .monaco-list-row:first-child::before, - .monaco-list${t} .monaco-list-row.drop-target-before::before { - content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 1px; - background-color: ${e.listDropBetweenBackground}; - }`),i.push(` - .monaco-list${t} .monaco-list-rows.drop-target-after .monaco-list-row:last-child::after, - .monaco-list${t} .monaco-list-row.drop-target-after::after { - content: ""; position: absolute; bottom: 0px; left: 0px; width: 100%; height: 1px; - background-color: ${e.listDropBetweenBackground}; - }`)),e.tableColumnsBorder&&i.push(` - .monaco-table > .monaco-split-view2, - .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before, - .monaco-workbench:not(.reduce-motion) .monaco-table:hover > .monaco-split-view2, - .monaco-workbench:not(.reduce-motion) .monaco-table:hover > .monaco-split-view2 .monaco-sash.vertical::before { - border-color: ${e.tableColumnsBorder}; - } - - .monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2, - .monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before { - border-color: transparent; - } - `),e.tableOddRowsBackgroundColor&&i.push(` - .monaco-table .monaco-list-row[data-parity=odd]:not(.focused):not(.selected):not(:hover) .monaco-table-tr, - .monaco-table .monaco-list:not(:focus) .monaco-list-row[data-parity=odd].focused:not(.selected):not(:hover) .monaco-table-tr, - .monaco-table .monaco-list:not(.focused) .monaco-list-row[data-parity=odd].focused:not(.selected):not(:hover) .monaco-table-tr { - background-color: ${e.tableOddRowsBackgroundColor}; - } - `),this.styleElement.textContent=i.join(` -`)}}const _Y={listFocusBackground:"#7FB0D0",listActiveSelectionBackground:"#0E639C",listActiveSelectionForeground:"#FFFFFF",listActiveSelectionIconForeground:"#FFFFFF",listFocusAndSelectionOutline:"#90C2F9",listFocusAndSelectionBackground:"#094771",listFocusAndSelectionForeground:"#FFFFFF",listInactiveSelectionBackground:"#3F3F46",listInactiveSelectionIconForeground:"#FFFFFF",listHoverBackground:"#2A2D2E",listDropOverBackground:"#383B3D",listDropBetweenBackground:"#EEEEEE",treeIndentGuidesStroke:"#a9a9a9",treeInactiveIndentGuidesStroke:q.fromHex("#a9a9a9").transparent(.4).toString(),tableColumnsBorder:q.fromHex("#cccccc").transparent(.2).toString(),tableOddRowsBackgroundColor:q.fromHex("#cccccc").transparent(.04).toString(),listBackground:void 0,listFocusForeground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusForeground:void 0,listInactiveFocusBackground:void 0,listHoverForeground:void 0,listFocusOutline:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listHoverOutline:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},bY={keyboardSupport:!0,mouseSupport:!0,multipleSelectionSupport:!0,dnd:{getDragURI(){return null},onDragStart(){},onDragOver(){return!1},drop(){},dispose(){}}};function CY(o,e){const t=o.indexOf(e);if(t===-1)return[];const i=[];let n=t-1;for(;n>=0&&o[n]===e-(t-n);)i.push(o[n--]);for(i.reverse(),n=t;n=o.length)t.push(e[n++]);else if(n>=e.length)t.push(o[i++]);else if(o[i]===e[n]){t.push(o[i]),i++,n++;continue}else o[i]=o.length)t.push(e[n++]);else if(n>=e.length)t.push(o[i++]);else if(o[i]===e[n]){i++,n++;continue}else o[i]o-e;class wY{constructor(e,t){this._templateId=e,this.renderers=t}get templateId(){return this._templateId}renderTemplate(e){return this.renderers.map(t=>t.renderTemplate(e))}renderElement(e,t,i,n){let s=0;for(const r of this.renderers)r.renderElement(e,t,i[s++],n)}disposeElement(e,t,i,n){let s=0;for(const r of this.renderers)r.disposeElement?.(e,t,i[s],n),s+=1}disposeTemplate(e){let t=0;for(const i of this.renderers)i.disposeTemplate(e[t++])}}class yY{constructor(e){this.accessibilityProvider=e,this.templateId="a18n"}renderTemplate(e){return{container:e,disposables:new X}}renderElement(e,t,i){const n=this.accessibilityProvider.getAriaLabel(e),s=n&&typeof n!="string"?n:wg(n);i.disposables.add(We(a=>{this.setAriaLabel(a.readObservable(s),i.container)}));const r=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(e);typeof r=="number"?i.container.setAttribute("aria-level",`${r}`):i.container.removeAttribute("aria-level")}setAriaLabel(e,t){e?t.setAttribute("aria-label",e):t.removeAttribute("aria-label")}disposeElement(e,t,i,n){i.disposables.clear()}disposeTemplate(e){e.disposables.dispose()}}class SY{constructor(e,t){this.list=e,this.dnd=t}getDragElements(e){const t=this.list.getSelectedElements();return t.indexOf(e)>-1?t:[e]}getDragURI(e){return this.dnd.getDragURI(e)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e,t)}onDragStart(e,t){this.dnd.onDragStart?.(e,t)}onDragOver(e,t,i,n,s){return this.dnd.onDragOver(e,t,i,n,s)}onDragLeave(e,t,i,n){this.dnd.onDragLeave?.(e,t,i,n)}onDragEnd(e){this.dnd.onDragEnd?.(e)}drop(e,t,i,n,s){this.dnd.drop(e,t,i,n,s)}dispose(){this.dnd.dispose()}}class go{get onDidChangeFocus(){return J.map(this.eventBufferer.wrapEvent(this.focus.onChange),e=>this.toListEvent(e),this.disposables)}get onDidChangeSelection(){return J.map(this.eventBufferer.wrapEvent(this.selection.onChange),e=>this.toListEvent(e),this.disposables)}get domId(){return this.view.domId}get onDidScroll(){return this.view.onDidScroll}get onMouseClick(){return this.view.onMouseClick}get onMouseDblClick(){return this.view.onMouseDblClick}get onMouseMiddleClick(){return this.view.onMouseMiddleClick}get onPointer(){return this.mouseController.onPointer}get onMouseDown(){return this.view.onMouseDown}get onMouseOver(){return this.view.onMouseOver}get onMouseOut(){return this.view.onMouseOut}get onTouchStart(){return this.view.onTouchStart}get onTap(){return this.view.onTap}get onContextMenu(){let e=!1;const t=J.chain(this.disposables.add(new ze(this.view.domNode,"keydown")).event,s=>s.map(r=>new Nt(r)).filter(r=>e=r.keyCode===58||r.shiftKey&&r.keyCode===68).map(r=>je.stop(r,!0)).filter(()=>!1)),i=J.chain(this.disposables.add(new ze(this.view.domNode,"keyup")).event,s=>s.forEach(()=>e=!1).map(r=>new Nt(r)).filter(r=>r.keyCode===58||r.shiftKey&&r.keyCode===68).map(r=>je.stop(r,!0)).map(({browserEvent:r})=>{const a=this.getFocus(),l=a.length?a[0]:void 0,c=typeof l<"u"?this.view.element(l):void 0,d=typeof l<"u"?this.view.domElement(l):this.view.domNode;return{index:l,element:c,anchor:d,browserEvent:r}})),n=J.chain(this.view.onContextMenu,s=>s.filter(r=>!e).map(({element:r,index:a,browserEvent:l})=>({element:r,index:a,anchor:new ur(fe(this.view.domNode),l),browserEvent:l})));return J.any(t,i,n)}get onKeyDown(){return this.disposables.add(new ze(this.view.domNode,"keydown")).event}get onDidFocus(){return J.signal(this.disposables.add(new ze(this.view.domNode,"focus",!0)).event)}get onDidBlur(){return J.signal(this.disposables.add(new ze(this.view.domNode,"blur",!0)).event)}constructor(e,t,i,n,s=bY){this.user=e,this._options=s,this.focus=new jC("focused"),this.anchor=new jC("anchor"),this.eventBufferer=new W_,this._ariaLabel="",this.disposables=new X,this._onDidDispose=new A,this.onDidDispose=this._onDidDispose.event;const r=this._options.accessibilityProvider&&this._options.accessibilityProvider.getWidgetRole?this._options.accessibilityProvider?.getWidgetRole():"list";this.selection=new dY(r!=="listbox");const a=[this.focus.renderer,this.selection.renderer];this.accessibilityProvider=s.accessibilityProvider,this.accessibilityProvider&&(a.push(new yY(this.accessibilityProvider)),this.accessibilityProvider.onDidChangeActiveDescendant?.(this.onDidChangeActiveDescendant,this,this.disposables)),n=n.map(c=>new wY(c.templateId,[...a,c]));const l={...s,dnd:s.dnd&&new SY(this,s.dnd)};if(this.view=this.createListView(t,i,n,l),this.view.domNode.setAttribute("role",r),s.styleController)this.styleController=s.styleController(this.view.domId);else{const c=Vs(this.view.domNode);this.styleController=new A7(c,this.view.domId)}if(this.spliceable=new eY([new MS(this.focus,this.view,s.identityProvider),new MS(this.selection,this.view,s.identityProvider),new MS(this.anchor,this.view,s.identityProvider),this.view]),this.disposables.add(this.focus),this.disposables.add(this.selection),this.disposables.add(this.anchor),this.disposables.add(this.view),this.disposables.add(this._onDidDispose),this.disposables.add(new mY(this,this.view)),(typeof s.keyboardSupport!="boolean"||s.keyboardSupport)&&(this.keyboardController=new N7(this,this.view,s),this.disposables.add(this.keyboardController)),s.keyboardNavigationLabelProvider){const c=s.keyboardNavigationDelegate||fY;this.typeNavigationController=new gY(this,this.view,s.keyboardNavigationLabelProvider,s.keyboardNavigationEventFilter??(()=>!0),c),this.disposables.add(this.typeNavigationController)}this.mouseController=this.createMouseController(s),this.disposables.add(this.mouseController),this.onDidChangeFocus(this._onFocusChange,this,this.disposables),this.onDidChangeSelection(this._onSelectionChange,this,this.disposables),this.accessibilityProvider&&(this.ariaLabel=this.accessibilityProvider.getWidgetAriaLabel()),this._options.multipleSelectionSupport!==!1&&this.view.domNode.setAttribute("aria-multiselectable","true")}createListView(e,t,i,n){return new Bo(e,t,i,n)}createMouseController(e){return new R7(this)}updateOptions(e={}){this._options={...this._options,...e},this.typeNavigationController?.updateOptions(this._options),this._options.multipleSelectionController!==void 0&&(this._options.multipleSelectionSupport?this.view.domNode.setAttribute("aria-multiselectable","true"):this.view.domNode.removeAttribute("aria-multiselectable")),this.mouseController.updateOptions(e),this.keyboardController?.updateOptions(e),this.view.updateOptions(e)}get options(){return this._options}splice(e,t,i=[]){if(e<0||e>this.view.length)throw new id(this.user,`Invalid start index: ${e}`);if(t<0)throw new id(this.user,`Invalid delete count: ${t}`);t===0&&i.length===0||this.eventBufferer.bufferEvents(()=>this.spliceable.splice(e,t,i))}rerender(){this.view.rerender()}element(e){return this.view.element(e)}indexOf(e){return this.view.indexOf(e)}indexAt(e){return this.view.indexAt(e)}get length(){return this.view.length}get contentHeight(){return this.view.contentHeight}get onDidChangeContentHeight(){return this.view.onDidChangeContentHeight}get scrollTop(){return this.view.getScrollTop()}set scrollTop(e){this.view.setScrollTop(e)}get scrollHeight(){return this.view.scrollHeight}get renderHeight(){return this.view.renderHeight}get firstVisibleIndex(){return this.view.firstVisibleIndex}get ariaLabel(){return this._ariaLabel}set ariaLabel(e){this._ariaLabel=e,this.view.domNode.setAttribute("aria-label",e)}domFocus(){this.view.domNode.focus({preventScroll:!0})}layout(e,t){this.view.layout(e,t)}setSelection(e,t){for(const i of e)if(i<0||i>=this.length)throw new id(this.user,`Invalid index ${i}`);this.selection.set(e,t)}getSelection(){return this.selection.get()}getSelectedElements(){return this.getSelection().map(e=>this.view.element(e))}setAnchor(e){if(typeof e>"u"){this.anchor.set([]);return}if(e<0||e>=this.length)throw new id(this.user,`Invalid index ${e}`);this.anchor.set([e])}getAnchor(){return xN(this.anchor.get(),void 0)}getAnchorElement(){const e=this.getAnchor();return typeof e>"u"?void 0:this.element(e)}setFocus(e,t){for(const i of e)if(i<0||i>=this.length)throw new id(this.user,`Invalid index ${i}`);this.focus.set(e,t)}focusNext(e=1,t=!1,i,n){if(this.length===0)return;const s=this.focus.get(),r=this.findNextIndex(s.length>0?s[0]+e:0,t,n);r>-1&&this.setFocus([r],i)}focusPrevious(e=1,t=!1,i,n){if(this.length===0)return;const s=this.focus.get(),r=this.findPreviousIndex(s.length>0?s[0]-e:0,t,n);r>-1&&this.setFocus([r],i)}async focusNextPage(e,t){let i=this.view.indexAt(this.view.getScrollTop()+this.view.renderHeight);i=i===0?0:i-1;const n=this.getFocus()[0];if(n!==i&&(n===void 0||i>n)){const s=this.findPreviousIndex(i,!1,t);s>-1&&n!==s?this.setFocus([s],e):this.setFocus([i],e)}else{const s=this.view.getScrollTop();let r=s+this.view.renderHeight;i>n&&(r-=this.view.elementHeight(i)),this.view.setScrollTop(r),this.view.getScrollTop()!==s&&(this.setFocus([]),await og(0),await this.focusNextPage(e,t))}}async focusPreviousPage(e,t,i=()=>0){let n;const s=i(),r=this.view.getScrollTop()+s;r===0?n=this.view.indexAt(r):n=this.view.indexAfter(r-1);const a=this.getFocus()[0];if(a!==n&&(a===void 0||a>=n)){const l=this.findNextIndex(n,!1,t);l>-1&&a!==l?this.setFocus([l],e):this.setFocus([n],e)}else{const l=r;this.view.setScrollTop(r-this.view.renderHeight-s),this.view.getScrollTop()+i()!==l&&(this.setFocus([]),await og(0),await this.focusPreviousPage(e,t,i))}}focusLast(e,t){if(this.length===0)return;const i=this.findPreviousIndex(this.length-1,!1,t);i>-1&&this.setFocus([i],e)}focusFirst(e,t){this.focusNth(0,e,t)}focusNth(e,t,i){if(this.length===0)return;const n=this.findNextIndex(e,!1,i);n>-1&&this.setFocus([n],t)}findNextIndex(e,t=!1,i){for(let n=0;n=this.length&&!t)return-1;if(e=e%this.length,!i||i(this.element(e)))return e;e++}return-1}findPreviousIndex(e,t=!1,i){for(let n=0;nthis.view.element(e))}reveal(e,t,i=0){if(e<0||e>=this.length)throw new id(this.user,`Invalid index ${e}`);const n=this.view.getScrollTop(),s=this.view.elementTop(e),r=this.view.elementHeight(e);if(Pg(t)){const a=r-this.view.renderHeight+i;this.view.setScrollTop(a*bn(t,0,1)+s-i)}else{const a=s+r,l=n+this.view.renderHeight;s=l||(s=l&&r>=this.view.renderHeight?this.view.setScrollTop(s-i):a>=l&&this.view.setScrollTop(a-this.view.renderHeight))}}getRelativeTop(e,t=0){if(e<0||e>=this.length)throw new id(this.user,`Invalid index ${e}`);const i=this.view.getScrollTop(),n=this.view.elementTop(e),s=this.view.elementHeight(e);if(ni+this.view.renderHeight)return null;const r=s-this.view.renderHeight+t;return Math.abs((i+t-n)/r)}getHTMLElement(){return this.view.domNode}getScrollableElement(){return this.view.scrollableElementDomNode}getElementID(e){return this.view.getElementDomId(e)}getElementTop(e){return this.view.elementTop(e)}style(e){this.styleController.style(e)}toListEvent({indexes:e,browserEvent:t}){return{indexes:e,elements:e.map(i=>this.view.element(i)),browserEvent:t}}_onFocusChange(){const e=this.focus.get();this.view.domNode.classList.toggle("element-focused",e.length>0),this.onDidChangeActiveDescendant()}onDidChangeActiveDescendant(){const e=this.focus.get();if(e.length>0){let t;this.accessibilityProvider?.getActiveDescendantId&&(t=this.accessibilityProvider.getActiveDescendantId(this.view.element(e[0]))),this.view.domNode.setAttribute("aria-activedescendant",t||this.view.getElementDomId(e[0]))}else this.view.domNode.removeAttribute("aria-activedescendant")}_onSelectionChange(){const e=this.selection.get();this.view.domNode.classList.toggle("selection-none",e.length===0),this.view.domNode.classList.toggle("selection-single",e.length===1),this.view.domNode.classList.toggle("selection-multiple",e.length>1)}dispose(){this._onDidDispose.fire(),this.disposables.dispose(),this._onDidDispose.dispose()}}Gc([Jt],go.prototype,"onDidChangeFocus",null);Gc([Jt],go.prototype,"onDidChangeSelection",null);Gc([Jt],go.prototype,"onContextMenu",null);Gc([Jt],go.prototype,"onKeyDown",null);Gc([Jt],go.prototype,"onDidFocus",null);Gc([Jt],go.prototype,"onDidBlur",null);const $d=ce,P7="selectOption.entry.template";class LY{get templateId(){return P7}renderTemplate(e){const t=Object.create(null);return t.root=e,t.text=Z(e,$d(".option-text")),t.detail=Z(e,$d(".option-detail")),t.decoratorRight=Z(e,$d(".option-decorator-right")),t}renderElement(e,t,i){const n=i,s=e.text,r=e.detail,a=e.decoratorRight,l=e.isDisabled;n.text.textContent=s,n.detail.textContent=r||"",n.decoratorRight.innerText=a||"",l?n.root.classList.add("option-disabled"):n.root.classList.remove("option-disabled")}disposeTemplate(e){}}const Hr=class Hr extends z{constructor(e,t,i,n,s){super(),this.options=[],this._currentSelection=0,this._hasDetails=!1,this._skipLayout=!1,this._sticky=!1,this._isVisible=!1,this.styles=n,this.selectBoxOptions=s||Object.create(null),typeof this.selectBoxOptions.minBottomMargin!="number"?this.selectBoxOptions.minBottomMargin=Hr.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN:this.selectBoxOptions.minBottomMargin<0&&(this.selectBoxOptions.minBottomMargin=0),this.selectElement=document.createElement("select"),this.selectElement.className="monaco-select-box monaco-select-box-dropdown-padding",typeof this.selectBoxOptions.ariaLabel=="string"&&this.selectElement.setAttribute("aria-label",this.selectBoxOptions.ariaLabel),typeof this.selectBoxOptions.ariaDescription=="string"&&this.selectElement.setAttribute("aria-description",this.selectBoxOptions.ariaDescription),this._onDidSelect=new A,this._register(this._onDidSelect),this.registerListeners(),this.constructSelectDropDown(i),this.selected=t||0,e&&this.setOptions(e,t),this.initStyleSheet()}setTitle(e){!this._hover&&e?this._hover=this._register(La().setupManagedHover(Ks("mouse"),this.selectElement,e)):this._hover&&this._hover.update(e)}getHeight(){return 22}getTemplateId(){return P7}constructSelectDropDown(e){this.contextViewProvider=e,this.selectDropDownContainer=ce(".monaco-select-box-dropdown-container"),this.selectDropDownContainer.classList.add("monaco-select-box-dropdown-padding"),this.selectionDetailsPane=Z(this.selectDropDownContainer,$d(".select-box-details-pane"));const t=Z(this.selectDropDownContainer,$d(".select-box-dropdown-container-width-control")),i=Z(t,$d(".width-control-div"));this.widthControlElement=document.createElement("span"),this.widthControlElement.className="option-text-width-control",Z(i,this.widthControlElement),this._dropDownPosition=0,this.styleElement=Vs(this.selectDropDownContainer),this.selectDropDownContainer.setAttribute("draggable","true"),this._register(U(this.selectDropDownContainer,ee.DRAG_START,n=>{je.stop(n,!0)}))}registerListeners(){this._register(jt(this.selectElement,"change",t=>{this.selected=t.target.selectedIndex,this._onDidSelect.fire({index:t.target.selectedIndex,selected:t.target.value}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)})),this._register(U(this.selectElement,ee.CLICK,t=>{je.stop(t),this._isVisible?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(U(this.selectElement,ee.MOUSE_DOWN,t=>{je.stop(t)}));let e;this._register(U(this.selectElement,"touchstart",t=>{e=this._isVisible})),this._register(U(this.selectElement,"touchend",t=>{je.stop(t),e?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(U(this.selectElement,ee.KEY_DOWN,t=>{const i=new Nt(t);let n=!1;Ue?(i.keyCode===18||i.keyCode===16||i.keyCode===10||i.keyCode===3)&&(n=!0):(i.keyCode===18&&i.altKey||i.keyCode===16&&i.altKey||i.keyCode===10||i.keyCode===3)&&(n=!0),n&&(this.showSelectDropDown(),je.stop(t,!0))}))}get onDidSelect(){return this._onDidSelect.event}setOptions(e,t){li(this.options,e)||(this.options=e,this.selectElement.options.length=0,this._hasDetails=!1,this._cachedMaxDetailsHeight=void 0,this.options.forEach((i,n)=>{this.selectElement.add(this.createOption(i.text,n,i.isDisabled)),typeof i.description=="string"&&(this._hasDetails=!0)})),t!==void 0&&(this.select(t),this._currentSelection=this.selected)}setOptionsList(){this.selectList?.splice(0,this.selectList.length,this.options)}select(e){e>=0&&ethis.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)}focus(){this.selectElement&&(this.selectElement.tabIndex=0,this.selectElement.focus())}blur(){this.selectElement&&(this.selectElement.tabIndex=-1,this.selectElement.blur())}setFocusable(e){this.selectElement.tabIndex=e?0:-1}render(e){this.container=e,e.classList.add("select-container"),e.appendChild(this.selectElement),this.styleSelectElement()}initStyleSheet(){const e=[];this.styles.listFocusBackground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { background-color: ${this.styles.listFocusBackground} !important; }`),this.styles.listFocusForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { color: ${this.styles.listFocusForeground} !important; }`),this.styles.decoratorRightForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.focused) .option-decorator-right { color: ${this.styles.decoratorRightForeground}; }`),this.styles.selectBackground&&this.styles.selectBorder&&this.styles.selectBorder!==this.styles.selectBackground?(e.push(`.monaco-select-box-dropdown-container { border: 1px solid ${this.styles.selectBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectBorder} } `)):this.styles.selectListBorder&&(e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectListBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectListBorder} } `)),this.styles.listHoverForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { color: ${this.styles.listHoverForeground} !important; }`),this.styles.listHoverBackground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { background-color: ${this.styles.listHoverBackground} !important; }`),this.styles.listFocusOutline&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { outline: 1.6px dotted ${this.styles.listFocusOutline} !important; outline-offset: -1.6px !important; }`),this.styles.listHoverOutline&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { outline: 1.6px dashed ${this.styles.listHoverOutline} !important; outline-offset: -1.6px !important; }`),e.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled.focused { background-color: transparent !important; color: inherit !important; outline: none !important; }"),e.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled:hover { background-color: transparent !important; color: inherit !important; outline: none !important; }"),this.styleElement.textContent=e.join(` -`)}styleSelectElement(){const e=this.styles.selectBackground??"",t=this.styles.selectForeground??"",i=this.styles.selectBorder??"";this.selectElement.style.backgroundColor=e,this.selectElement.style.color=t,this.selectElement.style.borderColor=i}styleList(){const e=this.styles.selectBackground??"",t=vl(this.styles.selectListBackground,e);this.selectDropDownListContainer.style.backgroundColor=t,this.selectionDetailsPane.style.backgroundColor=t;const i=this.styles.focusBorder??"";this.selectDropDownContainer.style.outlineColor=i,this.selectDropDownContainer.style.outlineOffset="-1px",this.selectList.style(this.styles)}createOption(e,t,i){const n=document.createElement("option");return n.value=e,n.text=e,n.disabled=!!i,n}showSelectDropDown(){this.selectionDetailsPane.innerText="",!(!this.contextViewProvider||this._isVisible)&&(this.createSelectList(this.selectDropDownContainer),this.setOptionsList(),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:e=>this.renderSelectDropDown(e,!0),layout:()=>{this.layoutSelectDropDown()},onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._isVisible=!0,this.hideSelectDropDown(!1),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:e=>this.renderSelectDropDown(e),layout:()=>this.layoutSelectDropDown(),onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._currentSelection=this.selected,this._isVisible=!0,this.selectElement.setAttribute("aria-expanded","true"))}hideSelectDropDown(e){!this.contextViewProvider||!this._isVisible||(this._isVisible=!1,this.selectElement.setAttribute("aria-expanded","false"),e&&this.selectElement.focus(),this.contextViewProvider.hideContextView())}renderSelectDropDown(e,t){return e.appendChild(this.selectDropDownContainer),this.layoutSelectDropDown(t),{dispose:()=>{this.selectDropDownContainer.remove()}}}measureMaxDetailsHeight(){let e=0;return this.options.forEach((t,i)=>{this.updateDetail(i),this.selectionDetailsPane.offsetHeight>e&&(e=this.selectionDetailsPane.offsetHeight)}),e}layoutSelectDropDown(e){if(this._skipLayout)return!1;if(this.selectList){this.selectDropDownContainer.classList.add("visible");const t=fe(this.selectElement),i=gi(this.selectElement),n=fe(this.selectElement).getComputedStyle(this.selectElement),s=parseFloat(n.getPropertyValue("--dropdown-padding-top"))+parseFloat(n.getPropertyValue("--dropdown-padding-bottom")),r=t.innerHeight-i.top-i.height-(this.selectBoxOptions.minBottomMargin||0),a=i.top-Hr.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN,l=this.selectElement.offsetWidth,c=this.setWidthControlElement(this.widthControlElement),d=Math.max(c,Math.round(l)).toString()+"px";this.selectDropDownContainer.style.width=d,this.selectList.getHTMLElement().style.height="",this.selectList.layout();let h=this.selectList.contentHeight;this._hasDetails&&this._cachedMaxDetailsHeight===void 0&&(this._cachedMaxDetailsHeight=this.measureMaxDetailsHeight());const u=this._hasDetails?this._cachedMaxDetailsHeight:0,f=h+s+u,g=Math.floor((r-s-u)/this.getHeight()),p=Math.floor((a-s-u)/this.getHeight());if(e)return i.top+i.height>t.innerHeight-22||i.topg&&this.options.length>g?(this._dropDownPosition=1,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectionDetailsPane.classList.remove("border-top"),this.selectionDetailsPane.classList.add("border-bottom")):(this._dropDownPosition=0,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectionDetailsPane.classList.remove("border-bottom"),this.selectionDetailsPane.classList.add("border-top")),!0);if(i.top+i.height>t.innerHeight-22||i.topr&&(h=g*this.getHeight())}else f>a&&(h=p*this.getHeight());return this.selectList.layout(h),this.selectList.domFocus(),this.selectList.length>0&&(this.selectList.setFocus([this.selected||0]),this.selectList.reveal(this.selectList.getFocus()[0]||0)),this._hasDetails?(this.selectList.getHTMLElement().style.height=h+s+"px",this.selectDropDownContainer.style.height=""):this.selectDropDownContainer.style.height=h+s+"px",this.updateDetail(this.selected),this.selectDropDownContainer.style.width=d,this.selectDropDownListContainer.setAttribute("tabindex","0"),this.selectElement.classList.add("synthetic-focus"),this.selectDropDownContainer.classList.add("synthetic-focus"),!0}else return!1}setWidthControlElement(e){let t=0;if(e){let i=0,n=0;this.options.forEach((s,r)=>{const a=s.detail?s.detail.length:0,l=s.decoratorRight?s.decoratorRight.length:0,c=s.text.length+a+l;c>n&&(i=r,n=c)}),e.textContent=this.options[i].text+(this.options[i].decoratorRight?this.options[i].decoratorRight+" ":""),t=qp(e)}return t}createSelectList(e){if(this.selectList)return;this.selectDropDownListContainer=Z(e,$d(".select-box-dropdown-list-container")),this.listRenderer=new LY,this.selectList=this._register(new go("SelectBoxCustom",this.selectDropDownListContainer,this,[this.listRenderer],{useShadows:!1,verticalScrollMode:3,keyboardSupport:!1,mouseSupport:!1,accessibilityProvider:{getAriaLabel:n=>{let s=n.text;return n.detail&&(s+=`. ${n.detail}`),n.decoratorRight&&(s+=`. ${n.decoratorRight}`),n.description&&(s+=`. ${n.description}`),s},getWidgetAriaLabel:()=>m({key:"selectBox",comment:["Behave like native select dropdown element."]},"Select Box"),getRole:()=>Ue?"":"option",getWidgetRole:()=>"listbox"}})),this.selectBoxOptions.ariaLabel&&(this.selectList.ariaLabel=this.selectBoxOptions.ariaLabel);const t=this._register(new ze(this.selectDropDownListContainer,"keydown")),i=J.chain(t.event,n=>n.filter(()=>this.selectList.length>0).map(s=>new Nt(s)));this._register(J.chain(i,n=>n.filter(s=>s.keyCode===3))(this.onEnter,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===2))(this.onEnter,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===9))(this.onEscape,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===16))(this.onUpArrow,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===18))(this.onDownArrow,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===12))(this.onPageDown,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===11))(this.onPageUp,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===14))(this.onHome,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===13))(this.onEnd,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode>=21&&s.keyCode<=56||s.keyCode>=85&&s.keyCode<=113))(this.onCharacter,this)),this._register(U(this.selectList.getHTMLElement(),ee.POINTER_UP,n=>this.onPointerUp(n))),this._register(this.selectList.onMouseOver(n=>typeof n.index<"u"&&this.selectList.setFocus([n.index]))),this._register(this.selectList.onDidChangeFocus(n=>this.onListFocus(n))),this._register(U(this.selectDropDownContainer,ee.FOCUS_OUT,n=>{!this._isVisible||yi(n.relatedTarget,this.selectDropDownContainer)||this.onListBlur()})),this.selectList.getHTMLElement().setAttribute("aria-label",this.selectBoxOptions.ariaLabel||""),this.selectList.getHTMLElement().setAttribute("aria-expanded","true"),this.styleList()}onPointerUp(e){if(!this.selectList.length)return;je.stop(e);const t=e.target;if(!t||t.classList.contains("slider"))return;const i=t.closest(".monaco-list-row");if(!i)return;const n=Number(i.getAttribute("data-index")),s=i.classList.contains("option-disabled");n>=0&&n{for(let r=0;rthis.selected+2)this.selected+=2;else{if(t)return;this.selected++}this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0])}}onUpArrow(e){this.selected>0&&(je.stop(e,!0),this.options[this.selected-1].isDisabled&&this.selected>1?this.selected-=2:this.selected--,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]))}onPageUp(e){je.stop(e),this.selectList.focusPreviousPage(),setTimeout(()=>{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected>0&&(this.selected--,this.selectList.setFocus([this.selected])),this.selectList.reveal(this.selected),this.select(this.selected)},1)}onHome(e){je.stop(e),!(this.options.length<2)&&(this.selected=0,this.options[this.selected].isDisabled&&this.selected>1&&this.selected++,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onEnd(e){je.stop(e),!(this.options.length<2)&&(this.selected=this.options.length-1,this.options[this.selected].isDisabled&&this.selected>1&&this.selected--,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onCharacter(e){const t=el.toString(e.keyCode);let i=-1;for(let n=0;n{this._register(U(this.selectElement,e,t=>{this.selectElement.focus()}))}),this._register(jt(this.selectElement,"click",e=>{je.stop(e,!0)})),this._register(jt(this.selectElement,"change",e=>{this.selectElement.title=e.target.value,this._onDidSelect.fire({index:e.target.selectedIndex,selected:e.target.value})})),this._register(jt(this.selectElement,"keydown",e=>{let t=!1;Ue?(e.keyCode===18||e.keyCode===16||e.keyCode===10)&&(t=!0):(e.keyCode===18&&e.altKey||e.keyCode===10||e.keyCode===3)&&(t=!0),t&&e.stopPropagation()}))}get onDidSelect(){return this._onDidSelect.event}setOptions(e,t){(!this.options||!li(this.options,e))&&(this.options=e,this.selectElement.options.length=0,this.options.forEach((i,n)=>{this.selectElement.add(this.createOption(i.text,n,i.isDisabled))})),t!==void 0&&this.select(t)}select(e){this.options.length===0?this.selected=0:e>=0&&ethis.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.selected{this.element&&this.handleActionChangeEvent(n)}))}handleActionChangeEvent(e){e.enabled!==void 0&&this.updateEnabled(),e.checked!==void 0&&this.updateChecked(),e.class!==void 0&&this.updateClass(),e.label!==void 0&&(this.updateLabel(),this.updateTooltip()),e.tooltip!==void 0&&this.updateTooltip()}get actionRunner(){return this._actionRunner||(this._actionRunner=this._register(new Oh)),this._actionRunner}set actionRunner(e){this._actionRunner=e}isEnabled(){return this._action.enabled}setActionContext(e){this._context=e}render(e){const t=this.element=e;this._register(fn.addTarget(e));const i=this.options&&this.options.draggable;i&&(e.draggable=!0,Mo&&this._register(U(e,ee.DRAG_START,n=>n.dataTransfer?.setData(D7.TEXT,this._action.label)))),this._register(U(t,St.Tap,n=>this.onClick(n,!0))),this._register(U(t,ee.MOUSE_DOWN,n=>{i||je.stop(n,!0),this._action.enabled&&n.button===0&&t.classList.add("active")})),Ue&&this._register(U(t,ee.CONTEXT_MENU,n=>{n.button===0&&n.ctrlKey===!0&&this.onClick(n)})),this._register(U(t,ee.CLICK,n=>{je.stop(n,!0),this.options&&this.options.isMenu||this.onClick(n)})),this._register(U(t,ee.DBLCLICK,n=>{je.stop(n,!0)})),[ee.MOUSE_UP,ee.MOUSE_OUT].forEach(n=>{this._register(U(t,n,s=>{je.stop(s),t.classList.remove("active")}))})}onClick(e,t=!1){je.stop(e,!0);const i=xs(this._context)?this.options?.useEventAsContext?e:{preserveFocus:t}:this._context;this.actionRunner.run(this._action,i)}focus(){this.element&&(this.element.tabIndex=0,this.element.focus(),this.element.classList.add("focused"))}blur(){this.element&&(this.element.blur(),this.element.tabIndex=-1,this.element.classList.remove("focused"))}setFocusable(e){this.element&&(this.element.tabIndex=e?0:-1)}get trapsArrowNavigation(){return!1}updateEnabled(){}updateLabel(){}getClass(){return this.action.class}getTooltip(){return this.action.tooltip}updateTooltip(){if(!this.element)return;const e=this.getTooltip()??"";if(this.updateAriaLabel(),this.options.hoverDelegate?.showNativeHover)this.element.title=e;else if(!this.customHover&&e!==""){const t=this.options.hoverDelegate??Ks("element");this.customHover=this._store.add(La().setupManagedHover(t,this.element,e))}else this.customHover&&this.customHover.update(e)}updateAriaLabel(){if(this.element){const e=this.getTooltip()??"";this.element.setAttribute("aria-label",e)}}updateClass(){}updateChecked(){}dispose(){this.element&&(this.element.remove(),this.element=void 0),this._context=void 0,super.dispose()}}class dy extends or{constructor(e,t,i){super(e,t,i),this.options=i,this.options.icon=i.icon!==void 0?i.icon:!1,this.options.label=i.label!==void 0?i.label:!0,this.cssClass=""}render(e){super.render(e),ai(this.element);const t=document.createElement("a");if(t.classList.add("action-label"),t.setAttribute("role",this.getDefaultAriaRole()),this.label=t,this.element.appendChild(t),this.options.label&&this.options.keybinding){const i=document.createElement("span");i.classList.add("keybinding"),i.textContent=this.options.keybinding,this.element.appendChild(i)}this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()}getDefaultAriaRole(){return this._action.id===Gi.ID?"presentation":this.options.isMenu?"menuitem":this.options.isTabList?"tab":"button"}focus(){this.label&&(this.label.tabIndex=0,this.label.focus())}blur(){this.label&&(this.label.tabIndex=-1)}setFocusable(e){this.label&&(this.label.tabIndex=e?0:-1)}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this.action.label)}getTooltip(){let e=null;return this.action.tooltip?e=this.action.tooltip:!this.options.label&&this.action.label&&this.options.icon&&(e=this.action.label,this.options.keybinding&&(e=m({key:"titleLabel",comment:["action title","action keybinding"]},"{0} ({1})",e,this.options.keybinding))),e??void 0}updateClass(){this.cssClass&&this.label&&this.label.classList.remove(...this.cssClass.split(" ")),this.options.icon?(this.cssClass=this.getClass(),this.label&&(this.label.classList.add("codicon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" "))),this.updateEnabled()):this.label?.classList.remove("codicon")}updateEnabled(){this.action.enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),this.label.classList.remove("disabled")),this.element?.classList.remove("disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),this.label.classList.add("disabled")),this.element?.classList.add("disabled"))}updateAriaLabel(){if(this.label){const e=this.getTooltip()??"";this.label.setAttribute("aria-label",e)}}updateChecked(){this.label&&(this.action.checked!==void 0?(this.label.classList.toggle("checked",this.action.checked),this.options.isTabList?this.label.setAttribute("aria-selected",this.action.checked?"true":"false"):(this.label.setAttribute("aria-checked",this.action.checked?"true":"false"),this.label.setAttribute("role","checkbox"))):(this.label.classList.remove("checked"),this.label.removeAttribute(this.options.isTabList?"aria-selected":"aria-checked"),this.label.setAttribute("role",this.getDefaultAriaRole())))}}class DY extends or{constructor(e,t,i,n,s,r,a){super(e,t),this.selectBox=new kY(i,n,s,r,a),this.selectBox.setFocusable(!1),this._register(this.selectBox),this.registerListeners()}select(e){this.selectBox.select(e)}registerListeners(){this._register(this.selectBox.onDidSelect(e=>this.runAction(e.selected,e.index)))}runAction(e,t){this.actionRunner.run(this._action,this.getActionContext(e,t))}getActionContext(e,t){return e}setFocusable(e){this.selectBox.setFocusable(e)}focus(){this.selectBox?.focus()}blur(){this.selectBox?.blur()}render(e){this.selectBox.render(e)}}class IY extends Oh{constructor(e,t){super(),this._onDidChangeVisibility=this._register(new A),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this._element=Z(e,ce(".monaco-dropdown")),this._label=Z(this._element,ce(".dropdown-label"));let i=t.labelRenderer;i||(i=s=>(s.textContent=t.label||"",null));for(const s of[ee.CLICK,ee.MOUSE_DOWN,St.Tap])this._register(U(this.element,s,r=>je.stop(r,!0)));for(const s of[ee.MOUSE_DOWN,St.Tap])this._register(U(this._label,s,r=>{tT(r)&&(r.detail>1||r.button!==0)||(this.visible?this.hide():this.show())}));this._register(U(this._label,ee.KEY_UP,s=>{const r=new Nt(s);(r.equals(3)||r.equals(10))&&(je.stop(s,!0),this.visible?this.hide():this.show())}));const n=i(this._label);n&&this._register(n),this._register(fn.addTarget(this._label))}get element(){return this._element}show(){this.visible||(this.visible=!0,this._onDidChangeVisibility.fire(!0))}hide(){this.visible&&(this.visible=!1,this._onDidChangeVisibility.fire(!1))}dispose(){super.dispose(),this.hide(),this.boxContainer&&(this.boxContainer.remove(),this.boxContainer=void 0),this.contents&&(this.contents.remove(),this.contents=void 0),this._label&&(this._label.remove(),this._label=void 0)}}class EY extends IY{constructor(e,t){super(e,t),this._options=t,this._actions=[],this.actions=t.actions||[]}set menuOptions(e){this._menuOptions=e}get menuOptions(){return this._menuOptions}get actions(){return this._options.actionProvider?this._options.actionProvider.getActions():this._actions}set actions(e){this._actions=e}show(){super.show(),this.element.classList.add("active"),this._options.contextMenuProvider.showContextMenu({getAnchor:()=>this.element,getActions:()=>this.actions,getActionsContext:()=>this.menuOptions?this.menuOptions.context:null,getActionViewItem:(e,t)=>this.menuOptions&&this.menuOptions.actionViewItemProvider?this.menuOptions.actionViewItemProvider(e,t):void 0,getKeyBinding:e=>this.menuOptions&&this.menuOptions.getKeyBinding?this.menuOptions.getKeyBinding(e):void 0,getMenuClassName:()=>this._options.menuClassName||"",onHide:()=>this.onHide(),actionRunner:this.menuOptions?this.menuOptions.actionRunner:void 0,anchorAlignment:this.menuOptions?this.menuOptions.anchorAlignment:0,domForShadowRoot:this._options.menuAsChild?this.element:void 0,skipTelemetry:this._options.skipTelemetry})}hide(){super.hide()}onHide(){this.hide(),this.element.classList.remove("active")}}class qC extends or{constructor(e,t,i,n=Object.create(null)){super(null,e,n),this.actionItem=null,this._onDidChangeVisibility=this._register(new A),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this.menuActionsOrProvider=t,this.contextMenuProvider=i,this.options=n,this.options.actionRunner&&(this.actionRunner=this.options.actionRunner)}render(e){this.actionItem=e;const t=s=>{this.element=Z(s,ce("a.action-label"));let r=[];return typeof this.options.classNames=="string"?r=this.options.classNames.split(/\s+/g).filter(a=>!!a):this.options.classNames&&(r=this.options.classNames),r.find(a=>a==="icon")||r.push("codicon"),this.element.classList.add(...r),this.element.setAttribute("role","button"),this.element.setAttribute("aria-haspopup","true"),this.element.setAttribute("aria-expanded","false"),this._action.label&&this._register(La().setupManagedHover(this.options.hoverDelegate??Ks("mouse"),this.element,this._action.label)),this.element.ariaLabel=this._action.label||"",null},i=Array.isArray(this.menuActionsOrProvider),n={contextMenuProvider:this.contextMenuProvider,labelRenderer:t,menuAsChild:this.options.menuAsChild,actions:i?this.menuActionsOrProvider:void 0,actionProvider:i?void 0:this.menuActionsOrProvider,skipTelemetry:this.options.skipTelemetry};if(this.dropdownMenu=this._register(new EY(e,n)),this._register(this.dropdownMenu.onDidChangeVisibility(s=>{this.element?.setAttribute("aria-expanded",`${s}`),this._onDidChangeVisibility.fire(s)})),this.dropdownMenu.menuOptions={actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,getKeyBinding:this.options.keybindingProvider,context:this._context},this.options.anchorAlignmentProvider){const s=this;this.dropdownMenu.menuOptions={...this.dropdownMenu.menuOptions,get anchorAlignment(){return s.options.anchorAlignmentProvider()}}}this.updateTooltip(),this.updateEnabled()}getTooltip(){let e=null;return this.action.tooltip?e=this.action.tooltip:this.action.label&&(e=this.action.label),e??void 0}setActionContext(e){super.setActionContext(e),this.dropdownMenu&&(this.dropdownMenu.menuOptions?this.dropdownMenu.menuOptions.context=e:this.dropdownMenu.menuOptions={context:e})}show(){this.dropdownMenu?.show()}updateEnabled(){const e=!this.action.enabled;this.actionItem?.classList.toggle("disabled",e),this.element?.classList.toggle("disabled",e)}}function NY(o){return o?o.condition!==void 0:!1}var Wf;(function(o){o[o.STORAGE_DOES_NOT_EXIST=0]="STORAGE_DOES_NOT_EXIST",o[o.STORAGE_IN_MEMORY=1]="STORAGE_IN_MEMORY"})(Wf||(Wf={}));var af;(function(o){o[o.None=0]="None",o[o.Initialized=1]="Initialized",o[o.Closed=2]="Closed"})(af||(af={}));const Aw=class Aw extends z{constructor(e,t=Object.create(null)){super(),this.database=e,this.options=t,this._onDidChangeStorage=this._register(new Nh),this.onDidChangeStorage=this._onDidChangeStorage.event,this.state=af.None,this.cache=new Map,this.flushDelayer=this._register(new vF(Aw.DEFAULT_FLUSH_DELAY)),this.pendingDeletes=new Set,this.pendingInserts=new Map,this.whenFlushedCallbacks=[],this.registerListeners()}registerListeners(){this._register(this.database.onDidChangeItemsExternal(e=>this.onDidChangeItemsExternal(e)))}onDidChangeItemsExternal(e){this._onDidChangeStorage.pause();try{e.changed?.forEach((t,i)=>this.acceptExternal(i,t)),e.deleted?.forEach(t=>this.acceptExternal(t,void 0))}finally{this._onDidChangeStorage.resume()}}acceptExternal(e,t){if(this.state===af.Closed)return;let i=!1;xs(t)?i=this.cache.delete(e):this.cache.get(e)!==t&&(this.cache.set(e,t),i=!0),i&&this._onDidChangeStorage.fire({key:e,external:!0})}get(e,t){const i=this.cache.get(e);return xs(i)?t:i}getBoolean(e,t){const i=this.get(e);return xs(i)?t:i==="true"}getNumber(e,t){const i=this.get(e);return xs(i)?t:parseInt(i,10)}async set(e,t,i=!1){if(this.state===af.Closed)return;if(xs(t))return this.delete(e,i);const n=Oi(t)||Array.isArray(t)?sG(t):String(t);if(this.cache.get(e)!==n)return this.cache.set(e,n),this.pendingInserts.set(e,n),this.pendingDeletes.delete(e),this._onDidChangeStorage.fire({key:e,external:i}),this.doFlush()}async delete(e,t=!1){if(!(this.state===af.Closed||!this.cache.delete(e)))return this.pendingDeletes.has(e)||this.pendingDeletes.add(e),this.pendingInserts.delete(e),this._onDidChangeStorage.fire({key:e,external:t}),this.doFlush()}get hasPending(){return this.pendingInserts.size>0||this.pendingDeletes.size>0}async flushPending(){if(!this.hasPending)return;const e={insert:this.pendingInserts,delete:this.pendingDeletes};return this.pendingDeletes=new Set,this.pendingInserts=new Map,this.database.updateItems(e).finally(()=>{if(!this.hasPending)for(;this.whenFlushedCallbacks.length;)this.whenFlushedCallbacks.pop()?.()})}async doFlush(e){return this.options.hint===Wf.STORAGE_IN_MEMORY?this.flushPending():this.flushDelayer.trigger(()=>this.flushPending(),e)}};Aw.DEFAULT_FLUSH_DELAY=100;let ep=Aw;class RS{constructor(){this.onDidChangeItemsExternal=J.None,this.items=new Map}async updateItems(e){e.insert?.forEach((t,i)=>this.items.set(i,t)),e.delete?.forEach(t=>this.items.delete(t))}}const P1="__$__targetStorageMarker",du=He("storageService");var aD;(function(o){o[o.NONE=0]="NONE",o[o.SHUTDOWN=1]="SHUTDOWN"})(aD||(aD={}));function TY(o){const e=o.get(P1);if(e)try{return JSON.parse(e)}catch{}return Object.create(null)}const Pw=class Pw extends z{constructor(e={flushInterval:Pw.DEFAULT_FLUSH_INTERVAL}){super(),this.options=e,this._onDidChangeValue=this._register(new Nh),this._onDidChangeTarget=this._register(new Nh),this._onWillSaveState=this._register(new A),this.onWillSaveState=this._onWillSaveState.event,this._workspaceKeyTargets=void 0,this._profileKeyTargets=void 0,this._applicationKeyTargets=void 0}onDidChangeValue(e,t,i){return J.filter(this._onDidChangeValue.event,n=>n.scope===e&&(t===void 0||n.key===t),i)}emitDidChangeValue(e,t){const{key:i,external:n}=t;if(i===P1){switch(e){case-1:this._applicationKeyTargets=void 0;break;case 0:this._profileKeyTargets=void 0;break;case 1:this._workspaceKeyTargets=void 0;break}this._onDidChangeTarget.fire({scope:e})}else this._onDidChangeValue.fire({scope:e,key:i,target:this.getKeyTargets(e)[i],external:n})}get(e,t,i){return this.getStorage(t)?.get(e,i)}getBoolean(e,t,i){return this.getStorage(t)?.getBoolean(e,i)}getNumber(e,t,i){return this.getStorage(t)?.getNumber(e,i)}store(e,t,i,n,s=!1){if(xs(t)){this.remove(e,i,s);return}this.withPausedEmitters(()=>{this.updateKeyTarget(e,i,n),this.getStorage(i)?.set(e,t,s)})}remove(e,t,i=!1){this.withPausedEmitters(()=>{this.updateKeyTarget(e,t,void 0),this.getStorage(t)?.delete(e,i)})}withPausedEmitters(e){this._onDidChangeValue.pause(),this._onDidChangeTarget.pause();try{e()}finally{this._onDidChangeValue.resume(),this._onDidChangeTarget.resume()}}updateKeyTarget(e,t,i,n=!1){const s=this.getKeyTargets(t);typeof i=="number"?s[e]!==i&&(s[e]=i,this.getStorage(t)?.set(P1,JSON.stringify(s),n)):typeof s[e]=="number"&&(delete s[e],this.getStorage(t)?.set(P1,JSON.stringify(s),n))}get workspaceKeyTargets(){return this._workspaceKeyTargets||(this._workspaceKeyTargets=this.loadKeyTargets(1)),this._workspaceKeyTargets}get profileKeyTargets(){return this._profileKeyTargets||(this._profileKeyTargets=this.loadKeyTargets(0)),this._profileKeyTargets}get applicationKeyTargets(){return this._applicationKeyTargets||(this._applicationKeyTargets=this.loadKeyTargets(-1)),this._applicationKeyTargets}getKeyTargets(e){switch(e){case-1:return this.applicationKeyTargets;case 0:return this.profileKeyTargets;default:return this.workspaceKeyTargets}}loadKeyTargets(e){const t=this.getStorage(e);return t?TY(t):Object.create(null)}};Pw.DEFAULT_FLUSH_INTERVAL=60*1e3;let lD=Pw;class MY extends lD{constructor(){super(),this.applicationStorage=this._register(new ep(new RS,{hint:Wf.STORAGE_IN_MEMORY})),this.profileStorage=this._register(new ep(new RS,{hint:Wf.STORAGE_IN_MEMORY})),this.workspaceStorage=this._register(new ep(new RS,{hint:Wf.STORAGE_IN_MEMORY})),this._register(this.workspaceStorage.onDidChangeStorage(e=>this.emitDidChangeValue(1,e))),this._register(this.profileStorage.onDidChangeStorage(e=>this.emitDidChangeValue(0,e))),this._register(this.applicationStorage.onDidChangeStorage(e=>this.emitDidChangeValue(-1,e)))}getStorage(e){switch(e){case-1:return this.applicationStorage;case 0:return this.profileStorage;default:return this.workspaceStorage}}}function RY(o,e){const t={...e};for(const i in o){const n=o[i];t[i]=n!==void 0?oe(n):void 0}return t}const AY={keybindingLabelBackground:oe(Lj),keybindingLabelForeground:oe(xj),keybindingLabelBorder:oe(kj),keybindingLabelBottomBorder:oe(Dj),keybindingLabelShadow:oe(q_)},PY={buttonForeground:oe(j3),buttonSeparator:oe(dj),buttonBackground:oe(Im),buttonHoverBackground:oe(hj),buttonSecondaryForeground:oe(fj),buttonSecondaryBackground:oe(Nk),buttonSecondaryHoverBackground:oe(gj),buttonBorder:oe(uj)},OY={progressBarBackground:oe(yK)},O7={inputActiveOptionBorder:oe($3),inputActiveOptionForeground:oe(K3),inputActiveOptionBackground:oe(IT)};oe(Em),oe(mj),oe(pj),oe(_j),oe(bj),oe(Cj),oe(vj);oe(wj),oe(Sj),oe(yj);oe(no),oe(Z0),oe(q_),oe(Ye),oe(VK),oe(zK),oe(UK),oe(vK);const F7={inputBackground:oe(YK),inputForeground:oe(QK),inputBorder:oe(XK),inputValidationInfoBorder:oe(ij),inputValidationInfoBackground:oe(ej),inputValidationInfoForeground:oe(tj),inputValidationWarningBorder:oe(oj),inputValidationWarningBackground:oe(nj),inputValidationWarningForeground:oe(sj),inputValidationErrorBorder:oe(lj),inputValidationErrorBackground:oe(rj),inputValidationErrorForeground:oe(aj)},FY={listFilterWidgetBackground:oe(Hj),listFilterWidgetOutline:oe(Vj),listFilterWidgetNoMatchesOutline:oe(zj),listFilterWidgetShadow:oe(Uj),inputBoxStyles:F7,toggleStyles:O7},B7={badgeBackground:oe(T1),badgeForeground:oe(wK),badgeBorder:oe(Ye)};oe(WK),oe(BK),oe(kA),oe(kA),oe(HK);const hu={listBackground:void 0,listInactiveFocusForeground:void 0,listFocusBackground:oe(Ij),listFocusForeground:oe(Ej),listFocusOutline:oe(Nj),listActiveSelectionBackground:oe(Bh),listActiveSelectionForeground:oe(s_),listActiveSelectionIconForeground:oe(q3),listFocusAndSelectionOutline:oe(Tj),listFocusAndSelectionBackground:oe(Bh),listFocusAndSelectionForeground:oe(s_),listInactiveSelectionBackground:oe(Mj),listInactiveSelectionIconForeground:oe(Aj),listInactiveSelectionForeground:oe(Rj),listInactiveFocusBackground:oe(Pj),listInactiveFocusOutline:oe(Oj),listHoverBackground:oe(G3),listHoverForeground:oe(Z3),listDropOverBackground:oe(Fj),listDropBetweenBackground:oe(Bj),listSelectionOutline:oe(Ut),listHoverOutline:oe(Ut),treeIndentGuidesStroke:oe(Y3),treeInactiveIndentGuidesStroke:oe($j),treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:oe(ST),tableColumnsBorder:oe(Kj),tableOddRowsBackgroundColor:oe(jj)};function $g(o){return RY(o,hu)}const BY={selectBackground:oe(Q0),selectListBackground:oe(cj),selectForeground:oe(ET),decoratorRightForeground:oe(Q3),selectBorder:oe(NT),focusBorder:oe(ga),listFocusBackground:oe(PC),listInactiveSelectionIconForeground:oe(TT),listFocusForeground:oe(AC),listFocusOutline:gK(Ut,q.transparent.toString()),listHoverBackground:oe(G3),listHoverForeground:oe(Z3),listHoverOutline:oe(Ut),selectListBorder:oe(LT),listBackground:void 0,listActiveSelectionBackground:void 0,listActiveSelectionForeground:void 0,listActiveSelectionIconForeground:void 0,listFocusAndSelectionBackground:void 0,listDropOverBackground:void 0,listDropBetweenBackground:void 0,listInactiveSelectionBackground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusBackground:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listFocusAndSelectionForeground:void 0,listFocusAndSelectionOutline:void 0,listInactiveFocusForeground:void 0,tableColumnsBorder:void 0,tableOddRowsBackgroundColor:void 0,treeIndentGuidesStroke:void 0,treeInactiveIndentGuidesStroke:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},WY={shadowColor:oe(q_),borderColor:oe(qj),foregroundColor:oe(Gj),backgroundColor:oe(Zj),selectionForegroundColor:oe(Yj),selectionBackgroundColor:oe(Qj),selectionBorderColor:oe(Xj),separatorColor:oe(Jj),scrollbarShadow:oe(ST),scrollbarSliderBackground:oe(F3),scrollbarSliderHoverBackground:oe(B3),scrollbarSliderActiveBackground:oe(W3)};var hy=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Hn=function(o,e){return function(t,i){e(t,i,o)}};function HY(o,e,t,i){let n,s,r;if(Array.isArray(o))r=o,n=e,s=t;else{const c=e;r=o.getActions(c),n=t,s=i}const a=rl.getInstance(),l=a.keyStatus.altKey||(kn||Un)&&a.keyStatus.shiftKey;W7(r,n,l,s?c=>c===s:c=>c==="navigation")}function XT(o,e,t,i,n,s){let r,a,l,c,d;if(Array.isArray(o))d=o,r=e,a=t,l=i,c=n;else{const u=e;d=o.getActions(u),r=t,a=i,l=n,c=s}W7(d,r,!1,typeof a=="string"?u=>u===a:a,l,c)}function W7(o,e,t,i=r=>r==="navigation",n=()=>!1,s=!1){let r,a;Array.isArray(e)?(r=e,a=e):(r=e.primary,a=e.secondary);const l=new Set;for(const[c,d]of o){let h;i(c)?(h=r,h.length>0&&s&&h.push(new Gi)):(h=a,h.length>0&&h.push(new Gi));for(let u of d){t&&(u=u instanceof so&&u.alt?u.alt:u);const f=h.push(u);u instanceof R0&&l.add({group:c,action:u,index:f-1})}}for(const{group:c,action:d,index:h}of l){const u=i(c)?r:a,f=d.actions;n(d,c,u.length)&&u.splice(h,1,...f)}}let zh=class extends dy{constructor(e,t,i,n,s,r,a,l){super(void 0,e,{icon:!!(e.class||e.item.icon),label:!e.class&&!e.item.icon,draggable:t?.draggable,keybinding:t?.keybinding,hoverDelegate:t?.hoverDelegate}),this._options=t,this._keybindingService=i,this._notificationService=n,this._contextKeyService=s,this._themeService=r,this._contextMenuService=a,this._accessibilityService=l,this._wantsAltCommand=!1,this._itemClassDispose=this._register(new Dn),this._altKey=rl.getInstance()}get _menuItemAction(){return this._action}get _commandAction(){return this._wantsAltCommand&&this._menuItemAction.alt||this._menuItemAction}async onClick(e){e.preventDefault(),e.stopPropagation();try{await this.actionRunner.run(this._commandAction,this._context)}catch(t){this._notificationService.error(t)}}render(e){if(super.render(e),e.classList.add("menu-entry"),this.options.icon&&this._updateItemClass(this._menuItemAction.item),this._menuItemAction.alt){let t=!1;const i=()=>{const n=!!this._menuItemAction.alt?.enabled&&(!this._accessibilityService.isMotionReduced()||t)&&(this._altKey.keyStatus.altKey||this._altKey.keyStatus.shiftKey&&t);n!==this._wantsAltCommand&&(this._wantsAltCommand=n,this.updateLabel(),this.updateTooltip(),this.updateClass())};this._register(this._altKey.event(i)),this._register(U(e,"mouseleave",n=>{t=!1,i()})),this._register(U(e,"mouseenter",n=>{t=!0,i()})),i()}}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this._commandAction.label)}getTooltip(){const e=this._keybindingService.lookupKeybinding(this._commandAction.id,this._contextKeyService),t=e&&e.getLabel(),i=this._commandAction.tooltip||this._commandAction.label;let n=t?m("titleAndKb","{0} ({1})",i,t):i;if(!this._wantsAltCommand&&this._menuItemAction.alt?.enabled){const s=this._menuItemAction.alt.tooltip||this._menuItemAction.alt.label,r=this._keybindingService.lookupKeybinding(this._menuItemAction.alt.id,this._contextKeyService),a=r&&r.getLabel(),l=a?m("titleAndKb","{0} ({1})",s,a):s;n=m("titleAndKbAndAlt",`{0} -[{1}] {2}`,n,KT.modifierLabels[Ns].altKey,l)}return n}updateClass(){this.options.icon&&(this._commandAction!==this._menuItemAction?this._menuItemAction.alt&&this._updateItemClass(this._menuItemAction.alt.item):this._updateItemClass(this._menuItemAction.item))}_updateItemClass(e){this._itemClassDispose.value=void 0;const{element:t,label:i}=this;if(!t||!i)return;const n=this._commandAction.checked&&NY(e.toggled)&&e.toggled.icon?e.toggled.icon:e.icon;if(n)if(Ee.isThemeIcon(n)){const s=Ee.asClassNameArray(n);i.classList.add(...s),this._itemClassDispose.value=_e(()=>{i.classList.remove(...s)})}else i.style.backgroundImage=j0(this._themeService.getColorTheme().type)?Dl(n.dark):Dl(n.light),i.classList.add("icon"),this._itemClassDispose.value=No(_e(()=>{i.style.backgroundImage="",i.classList.remove("icon")}),this._themeService.onDidColorThemeChange(()=>{this.updateClass()}))}};zh=hy([Hn(2,vt),Hn(3,mn),Hn(4,De),Hn(5,en),Hn(6,Lr),Hn(7,ms)],zh);class JT extends zh{render(e){this.options.label=!0,this.options.icon=!1,super.render(e),e.classList.add("text-only"),e.classList.toggle("use-comma",this._options?.useComma??!1)}updateLabel(){const e=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!e)return super.updateLabel();if(this.label){const t=JT._symbolPrintEnter(e);this._options?.conversational?this.label.textContent=m({key:"content2",comment:['A label with keybindg like "ESC to dismiss"']},"{1} to {0}",this._action.label,t):this.label.textContent=m({key:"content",comment:["A label","A keybinding"]},"{0} ({1})",this._action.label,t)}}static _symbolPrintEnter(e){return e.getLabel()?.replace(/\benter\b/gi,"⏎").replace(/\bEscape\b/gi,"Esc")}}let cD=class extends qC{constructor(e,t,i,n,s){const r={...t,menuAsChild:t?.menuAsChild??!1,classNames:t?.classNames??(Ee.isThemeIcon(e.item.icon)?Ee.asClassName(e.item.icon):void 0),keybindingProvider:t?.keybindingProvider??(a=>i.lookupKeybinding(a.id))};super(e,{getActions:()=>e.actions},n,r),this._keybindingService=i,this._contextMenuService=n,this._themeService=s}render(e){super.render(e),ai(this.element),e.classList.add("menu-entry");const t=this._action,{icon:i}=t.item;if(i&&!Ee.isThemeIcon(i)){this.element.classList.add("icon");const n=()=>{this.element&&(this.element.style.backgroundImage=j0(this._themeService.getColorTheme().type)?Dl(i.dark):Dl(i.light))};n(),this._register(this._themeService.onDidColorThemeChange(()=>{n()}))}}};cD=hy([Hn(2,vt),Hn(3,Lr),Hn(4,en)],cD);let dD=class extends or{constructor(e,t,i,n,s,r,a,l){super(null,e),this._keybindingService=i,this._notificationService=n,this._contextMenuService=s,this._menuService=r,this._instaService=a,this._storageService=l,this._container=null,this._options=t,this._storageKey=`${e.item.submenu.id}_lastActionId`;let c;const d=t?.persistLastActionId?l.get(this._storageKey,1):void 0;d&&(c=e.actions.find(u=>d===u.id)),c||(c=e.actions[0]),this._defaultAction=this._instaService.createInstance(zh,c,{keybinding:this._getDefaultActionKeybindingLabel(c)});const h={keybindingProvider:u=>this._keybindingService.lookupKeybinding(u.id),...t,menuAsChild:t?.menuAsChild??!0,classNames:t?.classNames??["codicon","codicon-chevron-down"],actionRunner:t?.actionRunner??new Oh};this._dropdown=new qC(e,e.actions,this._contextMenuService,h),this._register(this._dropdown.actionRunner.onDidRun(u=>{u.action instanceof so&&this.update(u.action)}))}update(e){this._options?.persistLastActionId&&this._storageService.store(this._storageKey,e.id,1,1),this._defaultAction.dispose(),this._defaultAction=this._instaService.createInstance(zh,e,{keybinding:this._getDefaultActionKeybindingLabel(e)}),this._defaultAction.actionRunner=new class extends Oh{async runAction(t,i){await t.run(void 0)}},this._container&&this._defaultAction.render(iT(this._container,ce(".action-container")))}_getDefaultActionKeybindingLabel(e){let t;if(this._options?.renderKeybindingWithDefaultActionLabel){const i=this._keybindingService.lookupKeybinding(e.id);i&&(t=`(${i.getLabel()})`)}return t}setActionContext(e){super.setActionContext(e),this._defaultAction.setActionContext(e),this._dropdown.setActionContext(e)}render(e){this._container=e,super.render(this._container),this._container.classList.add("monaco-dropdown-with-default");const t=ce(".action-container");this._defaultAction.render(Z(this._container,t)),this._register(U(t,ee.KEY_DOWN,n=>{const s=new Nt(n);s.equals(17)&&(this._defaultAction.element.tabIndex=-1,this._dropdown.focus(),s.stopPropagation())}));const i=ce(".dropdown-action-container");this._dropdown.render(Z(this._container,i)),this._register(U(i,ee.KEY_DOWN,n=>{const s=new Nt(n);s.equals(15)&&(this._defaultAction.element.tabIndex=0,this._dropdown.setFocusable(!1),this._defaultAction.element?.focus(),s.stopPropagation())}))}focus(e){e?this._dropdown.focus():(this._defaultAction.element.tabIndex=0,this._defaultAction.element.focus())}blur(){this._defaultAction.element.tabIndex=-1,this._dropdown.blur(),this._container.blur()}setFocusable(e){e?this._defaultAction.element.tabIndex=0:(this._defaultAction.element.tabIndex=-1,this._dropdown.setFocusable(!1))}dispose(){this._defaultAction.dispose(),this._dropdown.dispose(),super.dispose()}};dD=hy([Hn(2,vt),Hn(3,mn),Hn(4,Lr),Hn(5,yr),Hn(6,ke),Hn(7,du)],dD);let hD=class extends DY{constructor(e,t){super(null,e,e.actions.map(i=>({text:i.id===Gi.ID?"─────────":i.label,isDisabled:!i.enabled})),0,t,BY,{ariaLabel:e.tooltip,optionsAsChildren:!0}),this.select(Math.max(0,e.actions.findIndex(i=>i.checked)))}render(e){super.render(e),e.style.borderColor=oe(NT)}runAction(e,t){const i=this.action.actions[t];i&&this.actionRunner.run(i)}};hD=hy([Hn(1,lu)],hD);function H7(o,e,t){return e instanceof so?o.createInstance(zh,e,t):e instanceof Zm?e.item.isSelection?o.createInstance(hD,e):e.item.rememberDefaultAction?o.createInstance(dD,e,{...t,persistLastActionId:!0}):o.createInstance(cD,e,t):void 0}class oo extends z{constructor(e,t={}){super(),this._actionRunnerDisposables=this._register(new X),this.viewItemDisposables=this._register(new RN),this.triggerKeyDown=!1,this.focusable=!0,this._onDidBlur=this._register(new A),this.onDidBlur=this._onDidBlur.event,this._onDidCancel=this._register(new A({onWillAddFirstListener:()=>this.cancelHasListener=!0})),this.onDidCancel=this._onDidCancel.event,this.cancelHasListener=!1,this._onDidRun=this._register(new A),this.onDidRun=this._onDidRun.event,this._onWillRun=this._register(new A),this.onWillRun=this._onWillRun.event,this.options=t,this._context=t.context??null,this._orientation=this.options.orientation??0,this._triggerKeys={keyDown:this.options.triggerKeys?.keyDown??!1,keys:this.options.triggerKeys?.keys??[3,10]},this._hoverDelegate=t.hoverDelegate??this._register(QT()),this.options.actionRunner?this._actionRunner=this.options.actionRunner:(this._actionRunner=new Oh,this._actionRunnerDisposables.add(this._actionRunner)),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(s=>this._onDidRun.fire(s))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(s=>this._onWillRun.fire(s))),this.viewItems=[],this.focusedItem=void 0,this.domNode=document.createElement("div"),this.domNode.className="monaco-action-bar";let i,n;switch(this._orientation){case 0:i=[15],n=[17];break;case 1:i=[16],n=[18],this.domNode.className+=" vertical";break}this._register(U(this.domNode,ee.KEY_DOWN,s=>{const r=new Nt(s);let a=!0;const l=typeof this.focusedItem=="number"?this.viewItems[this.focusedItem]:void 0;i&&(r.equals(i[0])||r.equals(i[1]))?a=this.focusPrevious():n&&(r.equals(n[0])||r.equals(n[1]))?a=this.focusNext():r.equals(9)&&this.cancelHasListener?this._onDidCancel.fire():r.equals(14)?a=this.focusFirst():r.equals(13)?a=this.focusLast():r.equals(2)&&l instanceof or&&l.trapsArrowNavigation?a=this.focusNext(void 0,!0):this.isTriggerKeyEvent(r)?this._triggerKeys.keyDown?this.doTrigger(r):this.triggerKeyDown=!0:a=!1,a&&(r.preventDefault(),r.stopPropagation())})),this._register(U(this.domNode,ee.KEY_UP,s=>{const r=new Nt(s);this.isTriggerKeyEvent(r)?(!this._triggerKeys.keyDown&&this.triggerKeyDown&&(this.triggerKeyDown=!1,this.doTrigger(r)),r.preventDefault(),r.stopPropagation()):(r.equals(2)||r.equals(1026)||r.equals(16)||r.equals(18)||r.equals(15)||r.equals(17))&&this.updateFocusedItem()})),this.focusTracker=this._register(Ph(this.domNode)),this._register(this.focusTracker.onDidBlur(()=>{(Xi()===this.domNode||!yi(Xi(),this.domNode))&&(this._onDidBlur.fire(),this.previouslyFocusedItem=this.focusedItem,this.focusedItem=void 0,this.triggerKeyDown=!1)})),this._register(this.focusTracker.onDidFocus(()=>this.updateFocusedItem())),this.actionsList=document.createElement("ul"),this.actionsList.className="actions-container",this.options.highlightToggledItems&&this.actionsList.classList.add("highlight-toggled"),this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"),this.options.ariaLabel&&this.actionsList.setAttribute("aria-label",this.options.ariaLabel),this.domNode.appendChild(this.actionsList),e.appendChild(this.domNode)}refreshRole(){this.length()>=1?this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"):this.actionsList.setAttribute("role","presentation")}setFocusable(e){if(this.focusable=e,this.focusable){const t=this.viewItems.find(i=>i instanceof or&&i.isEnabled());t instanceof or&&t.setFocusable(!0)}else this.viewItems.forEach(t=>{t instanceof or&&t.setFocusable(!1)})}isTriggerKeyEvent(e){let t=!1;return this._triggerKeys.keys.forEach(i=>{t=t||e.equals(i)}),t}updateFocusedItem(){for(let e=0;et.setActionContext(e))}get actionRunner(){return this._actionRunner}set actionRunner(e){this._actionRunner=e,this._actionRunnerDisposables.clear(),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(t=>this._onDidRun.fire(t))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(t=>this._onWillRun.fire(t))),this.viewItems.forEach(t=>t.actionRunner=e)}getContainer(){return this.domNode}getAction(e){if(typeof e=="number")return this.viewItems[e]?.action;if(Ei(e)){for(;e.parentElement!==this.actionsList;){if(!e.parentElement)return;e=e.parentElement}for(let t=0;t{const r=document.createElement("li");r.className="action-item",r.setAttribute("role","presentation");let a;const l={hoverDelegate:this._hoverDelegate,...t,isTabList:this.options.ariaRole==="tablist"};this.options.actionViewItemProvider&&(a=this.options.actionViewItemProvider(s,l)),a||(a=new dy(this.context,s,l)),this.options.allowContextMenu||this.viewItemDisposables.set(a,U(r,ee.CONTEXT_MENU,c=>{je.stop(c,!0)})),a.actionRunner=this._actionRunner,a.setActionContext(this.context),a.render(r),this.focusable&&a instanceof or&&this.viewItems.length===0&&a.setFocusable(!0),n===null||n<0||n>=this.actionsList.children.length?(this.actionsList.appendChild(r),this.viewItems.push(a)):(this.actionsList.insertBefore(r,this.actionsList.children[n]),this.viewItems.splice(n,0,a),n++)}),typeof this.focusedItem=="number"&&this.focus(this.focusedItem),this.refreshRole()}clear(){this.isEmpty()||(this.viewItems=xt(this.viewItems),this.viewItemDisposables.clearAndDisposeAll(),xn(this.actionsList),this.refreshRole())}length(){return this.viewItems.length}isEmpty(){return this.viewItems.length===0}focus(e){let t=!1,i;if(e===void 0?t=!0:typeof e=="number"?i=e:typeof e=="boolean"&&(t=e),t&&typeof this.focusedItem>"u"){const n=this.viewItems.findIndex(s=>s.isEnabled());this.focusedItem=n===-1?void 0:n,this.updateFocus(void 0,void 0,!0)}else i!==void 0&&(this.focusedItem=i),this.updateFocus(void 0,void 0,!0)}focusFirst(){return this.focusedItem=this.length()-1,this.focusNext(!0)}focusLast(){return this.focusedItem=0,this.focusPrevious(!0)}focusNext(e,t){if(typeof this.focusedItem>"u")this.focusedItem=this.viewItems.length-1;else if(this.viewItems.length<=1)return!1;const i=this.focusedItem;let n;do{if(!e&&this.options.preventLoopNavigation&&this.focusedItem+1>=this.viewItems.length)return this.focusedItem=i,!1;this.focusedItem=(this.focusedItem+1)%this.viewItems.length,n=this.viewItems[this.focusedItem]}while(this.focusedItem!==i&&(this.options.focusOnlyEnabledItems&&!n.isEnabled()||n.action.id===Gi.ID));return this.updateFocus(void 0,void 0,t),!0}focusPrevious(e){if(typeof this.focusedItem>"u")this.focusedItem=0;else if(this.viewItems.length<=1)return!1;const t=this.focusedItem;let i;do{if(this.focusedItem=this.focusedItem-1,this.focusedItem<0){if(!e&&this.options.preventLoopNavigation)return this.focusedItem=t,!1;this.focusedItem=this.viewItems.length-1}i=this.viewItems[this.focusedItem]}while(this.focusedItem!==t&&(this.options.focusOnlyEnabledItems&&!i.isEnabled()||i.action.id===Gi.ID));return this.updateFocus(!0),!0}updateFocus(e,t,i=!1){typeof this.focusedItem>"u"&&this.actionsList.focus({preventScroll:t}),this.previouslyFocusedItem!==void 0&&this.previouslyFocusedItem!==this.focusedItem&&this.viewItems[this.previouslyFocusedItem]?.blur();const n=this.focusedItem!==void 0?this.viewItems[this.focusedItem]:void 0;if(n){let s=!0;tC(n.focus)||(s=!1),this.options.focusOnlyEnabledItems&&tC(n.isEnabled)&&!n.isEnabled()&&(s=!1),n.action.id===Gi.ID&&(s=!1),s?(i||this.previouslyFocusedItem!==this.focusedItem)&&(n.focus(e),this.previouslyFocusedItem=this.focusedItem):(this.actionsList.focus({preventScroll:t}),this.previouslyFocusedItem=void 0),s&&n.showHover?.()}}doTrigger(e){if(typeof this.focusedItem>"u")return;const t=this.viewItems[this.focusedItem];if(t instanceof or){const i=t._context===null||t._context===void 0?e:t._context;this.run(t._action,i)}}async run(e,t){await this._actionRunner.run(e,t)}dispose(){this._context=void 0,this.viewItems=xt(this.viewItems),this.getContainer().remove(),super.dispose()}}const uD=/\(&([^\s&])\)|(^|[^&])&([^\s&])/,AS=/(&)?(&)([^\s&])/g;var GC;(function(o){o[o.Right=0]="Right",o[o.Left=1]="Left"})(GC||(GC={}));var fD;(function(o){o[o.Above=0]="Above",o[o.Below=1]="Below"})(fD||(fD={}));class Hf extends oo{constructor(e,t,i,n){e.classList.add("monaco-menu-container"),e.setAttribute("role","presentation");const s=document.createElement("div");s.classList.add("monaco-menu"),s.setAttribute("role","presentation"),super(s,{orientation:1,actionViewItemProvider:c=>this.doGetActionViewItem(c,i,r),context:i.context,actionRunner:i.actionRunner,ariaLabel:i.ariaLabel,ariaRole:"menu",focusOnlyEnabledItems:!0,triggerKeys:{keys:[3,...Ue||Un?[10]:[]],keyDown:!0}}),this.menuStyles=n,this.menuElement=s,this.actionsList.tabIndex=0,this.initializeOrUpdateStyleSheet(e,n),this._register(fn.addTarget(s)),this._register(U(s,ee.KEY_DOWN,c=>{new Nt(c).equals(2)&&c.preventDefault()})),i.enableMnemonics&&this._register(U(s,ee.KEY_DOWN,c=>{const d=c.key.toLocaleLowerCase();if(this.mnemonics.has(d)){je.stop(c,!0);const h=this.mnemonics.get(d);if(h.length===1&&(h[0]instanceof _P&&h[0].container&&this.focusItemByElement(h[0].container),h[0].onClick(c)),h.length>1){const u=h.shift();u&&u.container&&(this.focusItemByElement(u.container),h.push(u)),this.mnemonics.set(d,h)}}})),Un&&this._register(U(s,ee.KEY_DOWN,c=>{const d=new Nt(c);d.equals(14)||d.equals(11)?(this.focusedItem=this.viewItems.length-1,this.focusNext(),je.stop(c,!0)):(d.equals(13)||d.equals(12))&&(this.focusedItem=0,this.focusPrevious(),je.stop(c,!0))})),this._register(U(this.domNode,ee.MOUSE_OUT,c=>{const d=c.relatedTarget;yi(d,this.domNode)||(this.focusedItem=void 0,this.updateFocus(),c.stopPropagation())})),this._register(U(this.actionsList,ee.MOUSE_OVER,c=>{let d=c.target;if(!(!d||!yi(d,this.actionsList)||d===this.actionsList)){for(;d.parentElement!==this.actionsList&&d.parentElement!==null;)d=d.parentElement;if(d.classList.contains("action-item")){const h=this.focusedItem;this.setFocusedItem(d),h!==this.focusedItem&&this.updateFocus()}}})),this._register(fn.addTarget(this.actionsList)),this._register(U(this.actionsList,St.Tap,c=>{let d=c.initialTarget;if(!(!d||!yi(d,this.actionsList)||d===this.actionsList)){for(;d.parentElement!==this.actionsList&&d.parentElement!==null;)d=d.parentElement;if(d.classList.contains("action-item")){const h=this.focusedItem;this.setFocusedItem(d),h!==this.focusedItem&&this.updateFocus()}}}));const r={parent:this};this.mnemonics=new Map,this.scrollableElement=this._register(new J0(s,{alwaysConsumeMouseWheel:!0,horizontal:2,vertical:3,verticalScrollbarSize:7,handleMouseWheel:!0,useShadows:!0}));const a=this.scrollableElement.getDomNode();a.style.position="",this.styleScrollElement(a,n),this._register(U(s,St.Change,c=>{je.stop(c,!0);const d=this.scrollableElement.getScrollPosition().scrollTop;this.scrollableElement.setScrollPosition({scrollTop:d-c.translationY})})),this._register(U(a,ee.MOUSE_UP,c=>{c.preventDefault()}));const l=fe(e);s.style.maxHeight=`${Math.max(10,l.innerHeight-e.getBoundingClientRect().top-35)}px`,t=t.filter((c,d)=>i.submenuIds?.has(c.id)?(console.warn(`Found submenu cycle: ${c.id}`),!1):!(c instanceof Gi&&(d===t.length-1||d===0||t[d-1]instanceof Gi))),this.push(t,{icon:!0,label:!0,isMenu:!0}),e.appendChild(this.scrollableElement.getDomNode()),this.scrollableElement.scanDomNode(),this.viewItems.filter(c=>!(c instanceof bP)).forEach((c,d,h)=>{c.updatePositionInSet(d+1,h.length)})}initializeOrUpdateStyleSheet(e,t){this.styleSheet||(_C(e)?this.styleSheet=Vs(e):(Hf.globalStyleSheet||(Hf.globalStyleSheet=Vs()),this.styleSheet=Hf.globalStyleSheet)),this.styleSheet.textContent=zY(t,_C(e))}styleScrollElement(e,t){const i=t.foregroundColor??"",n=t.backgroundColor??"",s=t.borderColor?`1px solid ${t.borderColor}`:"",r="5px",a=t.shadowColor?`0 2px 8px ${t.shadowColor}`:"";e.style.outline=s,e.style.borderRadius=r,e.style.color=i,e.style.backgroundColor=n,e.style.boxShadow=a}getContainer(){return this.scrollableElement.getDomNode()}get onScroll(){return this.scrollableElement.onScroll}focusItemByElement(e){const t=this.focusedItem;this.setFocusedItem(e),t!==this.focusedItem&&this.updateFocus()}setFocusedItem(e){for(let t=0;t{this.element&&(this._register(U(this.element,ee.MOUSE_UP,s=>{if(je.stop(s,!0),Mo){if(new ur(fe(this.element),s).rightButton)return;this.onClick(s)}else setTimeout(()=>{this.onClick(s)},0)})),this._register(U(this.element,ee.CONTEXT_MENU,s=>{je.stop(s,!0)})))},100),this._register(this.runOnceToEnableMouseUp)}render(e){super.render(e),this.element&&(this.container=e,this.item=Z(this.element,ce("a.action-menu-item")),this._action.id===Gi.ID?this.item.setAttribute("role","presentation"):(this.item.setAttribute("role","menuitem"),this.mnemonic&&this.item.setAttribute("aria-keyshortcuts",`${this.mnemonic}`)),this.check=Z(this.item,ce("span.menu-item-check"+Ee.asCSSSelector(ie.menuSelection))),this.check.setAttribute("role","none"),this.label=Z(this.item,ce("span.action-label")),this.options.label&&this.options.keybinding&&(Z(this.item,ce("span.keybinding")).textContent=this.options.keybinding),this.runOnceToEnableMouseUp.schedule(),this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked(),this.applyStyle())}blur(){super.blur(),this.applyStyle()}focus(){super.focus(),this.item?.focus(),this.applyStyle()}updatePositionInSet(e,t){this.item&&(this.item.setAttribute("aria-posinset",`${e}`),this.item.setAttribute("aria-setsize",`${t}`))}updateLabel(){if(this.label&&this.options.label){xn(this.label);let e=f7(this.action.label);if(e){const t=VY(e);this.options.enableMnemonics||(e=t),this.label.setAttribute("aria-label",t.replace(/&&/g,"&"));const i=uD.exec(e);if(i){e=Km(e),AS.lastIndex=0;let n=AS.exec(e);for(;n&&n[1];)n=AS.exec(e);const s=r=>r.replace(/&&/g,"&");n?this.label.append(k0(s(e.substr(0,n.index))," "),ce("u",{"aria-hidden":"true"},n[3]),aH(s(e.substr(n.index+n[0].length))," ")):this.label.innerText=s(e).trim(),this.item?.setAttribute("aria-keyshortcuts",(i[1]?i[1]:i[3]).toLocaleLowerCase())}else this.label.innerText=e.replace(/&&/g,"&").trim()}}}updateTooltip(){}updateClass(){this.cssClass&&this.item&&this.item.classList.remove(...this.cssClass.split(" ")),this.options.icon&&this.label?(this.cssClass=this.action.class||"",this.label.classList.add("icon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" ")),this.updateEnabled()):this.label&&this.label.classList.remove("icon")}updateEnabled(){this.action.enabled?(this.element&&(this.element.classList.remove("disabled"),this.element.removeAttribute("aria-disabled")),this.item&&(this.item.classList.remove("disabled"),this.item.removeAttribute("aria-disabled"),this.item.tabIndex=0)):(this.element&&(this.element.classList.add("disabled"),this.element.setAttribute("aria-disabled","true")),this.item&&(this.item.classList.add("disabled"),this.item.setAttribute("aria-disabled","true")))}updateChecked(){if(!this.item)return;const e=this.action.checked;this.item.classList.toggle("checked",!!e),e!==void 0?(this.item.setAttribute("role","menuitemcheckbox"),this.item.setAttribute("aria-checked",e?"true":"false")):(this.item.setAttribute("role","menuitem"),this.item.setAttribute("aria-checked",""))}getMnemonic(){return this.mnemonic}applyStyle(){const e=this.element&&this.element.classList.contains("focused"),t=e&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor,i=e&&this.menuStyle.selectionBackgroundColor?this.menuStyle.selectionBackgroundColor:void 0,n=e&&this.menuStyle.selectionBorderColor?`1px solid ${this.menuStyle.selectionBorderColor}`:"",s=e&&this.menuStyle.selectionBorderColor?"-1px":"";this.item&&(this.item.style.color=t??"",this.item.style.backgroundColor=i??"",this.item.style.outline=n,this.item.style.outlineOffset=s),this.check&&(this.check.style.color=t??"")}}class _P extends V7{constructor(e,t,i,n,s){super(e,e,n,s),this.submenuActions=t,this.parentData=i,this.submenuOptions=n,this.mysubmenu=null,this.submenuDisposables=this._register(new X),this.mouseOver=!1,this.expandDirection=n&&n.expandDirection!==void 0?n.expandDirection:{horizontal:GC.Right,vertical:fD.Below},this.showScheduler=new ci(()=>{this.mouseOver&&(this.cleanupExistingSubmenu(!1),this.createSubmenu(!1))},250),this.hideScheduler=new ci(()=>{this.element&&!yi(Xi(),this.element)&&this.parentData.submenu===this.mysubmenu&&(this.parentData.parent.focus(!1),this.cleanupExistingSubmenu(!0))},750)}render(e){super.render(e),this.element&&(this.item&&(this.item.classList.add("monaco-submenu-item"),this.item.tabIndex=0,this.item.setAttribute("aria-haspopup","true"),this.updateAriaExpanded("false"),this.submenuIndicator=Z(this.item,ce("span.submenu-indicator"+Ee.asCSSSelector(ie.menuSubmenu))),this.submenuIndicator.setAttribute("aria-hidden","true")),this._register(U(this.element,ee.KEY_UP,t=>{const i=new Nt(t);(i.equals(17)||i.equals(3))&&(je.stop(t,!0),this.createSubmenu(!0))})),this._register(U(this.element,ee.KEY_DOWN,t=>{const i=new Nt(t);Xi()===this.item&&(i.equals(17)||i.equals(3))&&je.stop(t,!0)})),this._register(U(this.element,ee.MOUSE_OVER,t=>{this.mouseOver||(this.mouseOver=!0,this.showScheduler.schedule())})),this._register(U(this.element,ee.MOUSE_LEAVE,t=>{this.mouseOver=!1})),this._register(U(this.element,ee.FOCUS_OUT,t=>{this.element&&!yi(Xi(),this.element)&&this.hideScheduler.schedule()})),this._register(this.parentData.parent.onScroll(()=>{this.parentData.submenu===this.mysubmenu&&(this.parentData.parent.focus(!1),this.cleanupExistingSubmenu(!0))})))}updateEnabled(){}onClick(e){je.stop(e,!0),this.cleanupExistingSubmenu(!1),this.createSubmenu(!0)}cleanupExistingSubmenu(e){if(this.parentData.submenu&&(e||this.parentData.submenu!==this.mysubmenu)){try{this.parentData.submenu.dispose()}catch{}this.parentData.submenu=void 0,this.updateAriaExpanded("false"),this.submenuContainer&&(this.submenuDisposables.clear(),this.submenuContainer=void 0)}}calculateSubmenuMenuLayout(e,t,i,n){const s={top:0,left:0};return s.left=nf(e.width,t.width,{position:n.horizontal===GC.Right?0:1,offset:i.left,size:i.width}),s.left>=i.left&&s.left{new Nt(d).equals(15)&&(je.stop(d,!0),this.parentData.parent.focus(),this.cleanupExistingSubmenu(!0))})),this.submenuDisposables.add(U(this.submenuContainer,ee.KEY_DOWN,d=>{new Nt(d).equals(15)&&je.stop(d,!0)})),this.submenuDisposables.add(this.parentData.submenu.onDidCancel(()=>{this.parentData.parent.focus(),this.cleanupExistingSubmenu(!0)})),this.parentData.submenu.focus(e),this.mysubmenu=this.parentData.submenu}}updateAriaExpanded(e){this.item&&this.item?.setAttribute("aria-expanded",e)}applyStyle(){super.applyStyle();const t=this.element&&this.element.classList.contains("focused")&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor;this.submenuIndicator&&(this.submenuIndicator.style.color=t??"")}dispose(){super.dispose(),this.hideScheduler.dispose(),this.mysubmenu&&(this.mysubmenu.dispose(),this.mysubmenu=null),this.submenuContainer&&(this.submenuContainer=void 0)}}class bP extends dy{constructor(e,t,i,n){super(e,t,i),this.menuStyles=n}render(e){super.render(e),this.label&&(this.label.style.borderBottomColor=this.menuStyles.separatorColor?`${this.menuStyles.separatorColor}`:"")}}function VY(o){const e=uD,t=e.exec(o);if(!t)return o;const i=!t[1];return o.replace(e,i?"$2$3":"").trim()}function CP(o){const e=rF()[o.id];return`.codicon-${o.id}:before { content: '\\${e.toString(16)}'; }`}function zY(o,e){let t=` -.monaco-menu { - font-size: 13px; - border-radius: 5px; - min-width: 160px; -} - -${CP(ie.menuSelection)} -${CP(ie.menuSubmenu)} - -.monaco-menu .monaco-action-bar { - text-align: right; - overflow: hidden; - white-space: nowrap; -} - -.monaco-menu .monaco-action-bar .actions-container { - display: flex; - margin: 0 auto; - padding: 0; - width: 100%; - justify-content: flex-end; -} - -.monaco-menu .monaco-action-bar.vertical .actions-container { - display: inline-block; -} - -.monaco-menu .monaco-action-bar.reverse .actions-container { - flex-direction: row-reverse; -} - -.monaco-menu .monaco-action-bar .action-item { - cursor: pointer; - display: inline-block; - transition: transform 50ms ease; - position: relative; /* DO NOT REMOVE - this is the key to preventing the ghosting icon bug in Chrome 42 */ -} - -.monaco-menu .monaco-action-bar .action-item.disabled { - cursor: default; -} - -.monaco-menu .monaco-action-bar .action-item .icon, -.monaco-menu .monaco-action-bar .action-item .codicon { - display: inline-block; -} - -.monaco-menu .monaco-action-bar .action-item .codicon { - display: flex; - align-items: center; -} - -.monaco-menu .monaco-action-bar .action-label { - font-size: 11px; - margin-right: 4px; -} - -.monaco-menu .monaco-action-bar .action-item.disabled .action-label, -.monaco-menu .monaco-action-bar .action-item.disabled .action-label:hover { - color: var(--vscode-disabledForeground); -} - -/* Vertical actions */ - -.monaco-menu .monaco-action-bar.vertical { - text-align: left; -} - -.monaco-menu .monaco-action-bar.vertical .action-item { - display: block; -} - -.monaco-menu .monaco-action-bar.vertical .action-label.separator { - display: block; - border-bottom: 1px solid var(--vscode-menu-separatorBackground); - padding-top: 1px; - padding: 30px; -} - -.monaco-menu .secondary-actions .monaco-action-bar .action-label { - margin-left: 6px; -} - -/* Action Items */ -.monaco-menu .monaco-action-bar .action-item.select-container { - overflow: hidden; /* somehow the dropdown overflows its container, we prevent it here to not push */ - flex: 1; - max-width: 170px; - min-width: 60px; - display: flex; - align-items: center; - justify-content: center; - margin-right: 10px; -} - -.monaco-menu .monaco-action-bar.vertical { - margin-left: 0; - overflow: visible; -} - -.monaco-menu .monaco-action-bar.vertical .actions-container { - display: block; -} - -.monaco-menu .monaco-action-bar.vertical .action-item { - padding: 0; - transform: none; - display: flex; -} - -.monaco-menu .monaco-action-bar.vertical .action-item.active { - transform: none; -} - -.monaco-menu .monaco-action-bar.vertical .action-menu-item { - flex: 1 1 auto; - display: flex; - height: 2em; - align-items: center; - position: relative; - margin: 0 4px; - border-radius: 4px; -} - -.monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .keybinding, -.monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .keybinding { - opacity: unset; -} - -.monaco-menu .monaco-action-bar.vertical .action-label { - flex: 1 1 auto; - text-decoration: none; - padding: 0 1em; - background: none; - font-size: 12px; - line-height: 1; -} - -.monaco-menu .monaco-action-bar.vertical .keybinding, -.monaco-menu .monaco-action-bar.vertical .submenu-indicator { - display: inline-block; - flex: 2 1 auto; - padding: 0 1em; - text-align: right; - font-size: 12px; - line-height: 1; -} - -.monaco-menu .monaco-action-bar.vertical .submenu-indicator { - height: 100%; -} - -.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon { - font-size: 16px !important; - display: flex; - align-items: center; -} - -.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon::before { - margin-left: auto; - margin-right: -20px; -} - -.monaco-menu .monaco-action-bar.vertical .action-item.disabled .keybinding, -.monaco-menu .monaco-action-bar.vertical .action-item.disabled .submenu-indicator { - opacity: 0.4; -} - -.monaco-menu .monaco-action-bar.vertical .action-label:not(.separator) { - display: inline-block; - box-sizing: border-box; - margin: 0; -} - -.monaco-menu .monaco-action-bar.vertical .action-item { - position: static; - overflow: visible; -} - -.monaco-menu .monaco-action-bar.vertical .action-item .monaco-submenu { - position: absolute; -} - -.monaco-menu .monaco-action-bar.vertical .action-label.separator { - width: 100%; - height: 0px !important; - opacity: 1; -} - -.monaco-menu .monaco-action-bar.vertical .action-label.separator.text { - padding: 0.7em 1em 0.1em 1em; - font-weight: bold; - opacity: 1; -} - -.monaco-menu .monaco-action-bar.vertical .action-label:hover { - color: inherit; -} - -.monaco-menu .monaco-action-bar.vertical .menu-item-check { - position: absolute; - visibility: hidden; - width: 1em; - height: 100%; -} - -.monaco-menu .monaco-action-bar.vertical .action-menu-item.checked .menu-item-check { - visibility: visible; - display: flex; - align-items: center; - justify-content: center; -} - -/* Context Menu */ - -.context-view.monaco-menu-container { - outline: 0; - border: none; - animation: fadeIn 0.083s linear; - -webkit-app-region: no-drag; -} - -.context-view.monaco-menu-container :focus, -.context-view.monaco-menu-container .monaco-action-bar.vertical:focus, -.context-view.monaco-menu-container .monaco-action-bar.vertical :focus { - outline: 0; -} - -.hc-black .context-view.monaco-menu-container, -.hc-light .context-view.monaco-menu-container, -:host-context(.hc-black) .context-view.monaco-menu-container, -:host-context(.hc-light) .context-view.monaco-menu-container { - box-shadow: none; -} - -.hc-black .monaco-menu .monaco-action-bar.vertical .action-item.focused, -.hc-light .monaco-menu .monaco-action-bar.vertical .action-item.focused, -:host-context(.hc-black) .monaco-menu .monaco-action-bar.vertical .action-item.focused, -:host-context(.hc-light) .monaco-menu .monaco-action-bar.vertical .action-item.focused { - background: none; -} - -/* Vertical Action Bar Styles */ - -.monaco-menu .monaco-action-bar.vertical { - padding: 4px 0; -} - -.monaco-menu .monaco-action-bar.vertical .action-menu-item { - height: 2em; -} - -.monaco-menu .monaco-action-bar.vertical .action-label:not(.separator), -.monaco-menu .monaco-action-bar.vertical .keybinding { - font-size: inherit; - padding: 0 2em; - max-height: 100%; -} - -.monaco-menu .monaco-action-bar.vertical .menu-item-check { - font-size: inherit; - width: 2em; -} - -.monaco-menu .monaco-action-bar.vertical .action-label.separator { - font-size: inherit; - margin: 5px 0 !important; - padding: 0; - border-radius: 0; -} - -.linux .monaco-menu .monaco-action-bar.vertical .action-label.separator, -:host-context(.linux) .monaco-menu .monaco-action-bar.vertical .action-label.separator { - margin-left: 0; - margin-right: 0; -} - -.monaco-menu .monaco-action-bar.vertical .submenu-indicator { - font-size: 60%; - padding: 0 1.8em; -} - -.linux .monaco-menu .monaco-action-bar.vertical .submenu-indicator, -:host-context(.linux) .monaco-menu .monaco-action-bar.vertical .submenu-indicator { - height: 100%; - mask-size: 10px 10px; - -webkit-mask-size: 10px 10px; -} - -.monaco-menu .action-item { - cursor: default; -}`;if(e){t+=` - /* Arrows */ - .monaco-scrollable-element > .scrollbar > .scra { - cursor: pointer; - font-size: 11px !important; - } - - .monaco-scrollable-element > .visible { - opacity: 1; - - /* Background rule added for IE9 - to allow clicks on dom node */ - background:rgba(0,0,0,0); - - transition: opacity 100ms linear; - } - .monaco-scrollable-element > .invisible { - opacity: 0; - pointer-events: none; - } - .monaco-scrollable-element > .invisible.fade { - transition: opacity 800ms linear; - } - - /* Scrollable Content Inset Shadow */ - .monaco-scrollable-element > .shadow { - position: absolute; - display: none; - } - .monaco-scrollable-element > .shadow.top { - display: block; - top: 0; - left: 3px; - height: 3px; - width: 100%; - } - .monaco-scrollable-element > .shadow.left { - display: block; - top: 3px; - left: 0; - height: 100%; - width: 3px; - } - .monaco-scrollable-element > .shadow.top-left-corner { - display: block; - top: 0; - left: 0; - height: 3px; - width: 3px; - } - `;const i=o.scrollbarShadow;i&&(t+=` - .monaco-scrollable-element > .shadow.top { - box-shadow: ${i} 0 6px 6px -6px inset; - } - - .monaco-scrollable-element > .shadow.left { - box-shadow: ${i} 6px 0 6px -6px inset; - } - - .monaco-scrollable-element > .shadow.top.left { - box-shadow: ${i} 6px 6px 6px -6px inset; - } - `);const n=o.scrollbarSliderBackground;n&&(t+=` - .monaco-scrollable-element > .scrollbar > .slider { - background: ${n}; - } - `);const s=o.scrollbarSliderHoverBackground;s&&(t+=` - .monaco-scrollable-element > .scrollbar > .slider:hover { - background: ${s}; - } - `);const r=o.scrollbarSliderActiveBackground;r&&(t+=` - .monaco-scrollable-element > .scrollbar > .slider.active { - background: ${r}; - } - `)}return t}class UY{constructor(e,t,i,n){this.contextViewService=e,this.telemetryService=t,this.notificationService=i,this.keybindingService=n,this.focusToReturn=null,this.lastContainer=null,this.block=null,this.blockDisposable=null,this.options={blockMouse:!0}}configure(e){this.options=e}showContextMenu(e){const t=e.getActions();if(!t.length)return;this.focusToReturn=Xi();let i;const n=Ei(e.domForShadowRoot)?e.domForShadowRoot:void 0;this.contextViewService.showContextView({getAnchor:()=>e.getAnchor(),canRelayout:!1,anchorAlignment:e.anchorAlignment,anchorAxisAlignment:e.anchorAxisAlignment,render:s=>{this.lastContainer=s;const r=e.getMenuClassName?e.getMenuClassName():"";r&&(s.className+=" "+r),this.options.blockMouse&&(this.block=s.appendChild(ce(".context-view-block")),this.block.style.position="fixed",this.block.style.cursor="initial",this.block.style.left="0",this.block.style.top="0",this.block.style.width="100%",this.block.style.height="100%",this.block.style.zIndex="-1",this.blockDisposable?.dispose(),this.blockDisposable=U(this.block,ee.MOUSE_DOWN,d=>d.stopPropagation()));const a=new X,l=e.actionRunner||new Oh;l.onWillRun(d=>this.onActionRun(d,!e.skipTelemetry),this,a),l.onDidRun(this.onDidActionRun,this,a),i=new Hf(s,t,{actionViewItemProvider:e.getActionViewItem,context:e.getActionsContext?e.getActionsContext():null,actionRunner:l,getKeyBinding:e.getKeyBinding?e.getKeyBinding:d=>this.keybindingService.lookupKeybinding(d.id)},WY),i.onDidCancel(()=>this.contextViewService.hideContextView(!0),null,a),i.onDidBlur(()=>this.contextViewService.hideContextView(!0),null,a);const c=fe(s);return a.add(U(c,ee.BLUR,()=>this.contextViewService.hideContextView(!0))),a.add(U(c,ee.MOUSE_DOWN,d=>{if(d.defaultPrevented)return;const h=new ur(c,d);let u=h.target;if(!h.rightButton){for(;u;){if(u===s)return;u=u.parentElement}this.contextViewService.hideContextView(!0)}})),No(a,i)},focus:()=>{i?.focus(!!e.autoSelectFirstItem)},onHide:s=>{e.onHide?.(!!s),this.block&&(this.block.remove(),this.block=null),this.blockDisposable?.dispose(),this.blockDisposable=null,this.lastContainer&&(Xi()===this.lastContainer||yi(Xi(),this.lastContainer))&&this.focusToReturn?.focus(),this.lastContainer=null}},n,!!n)}onActionRun(e,t){t&&this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.action.id,from:"contextMenu"}),this.contextViewService.hideContextView(!1)}onDidActionRun(e){e.error&&!$c(e.error)&&this.notificationService.error(e.error)}}var $Y=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Tu=function(o,e){return function(t,i){e(t,i,o)}};let gD=class extends z{get contextMenuHandler(){return this._contextMenuHandler||(this._contextMenuHandler=new UY(this.contextViewService,this.telemetryService,this.notificationService,this.keybindingService)),this._contextMenuHandler}constructor(e,t,i,n,s,r){super(),this.telemetryService=e,this.notificationService=t,this.contextViewService=i,this.keybindingService=n,this.menuService=s,this.contextKeyService=r,this._contextMenuHandler=void 0,this._onDidShowContextMenu=this._store.add(new A),this.onDidShowContextMenu=this._onDidShowContextMenu.event,this._onDidHideContextMenu=this._store.add(new A)}configure(e){this.contextMenuHandler.configure(e)}showContextMenu(e){e=mD.transform(e,this.menuService,this.contextKeyService),this.contextMenuHandler.showContextMenu({...e,onHide:t=>{e.onHide?.(t),this._onDidHideContextMenu.fire()}}),rl.getInstance().resetKeyStatus(),this._onDidShowContextMenu.fire()}};gD=$Y([Tu(0,$s),Tu(1,mn),Tu(2,lu),Tu(3,vt),Tu(4,yr),Tu(5,De)],gD);var mD;(function(o){function e(i){return i&&i.menuId instanceof $e}function t(i,n,s){if(!e(i))return i;const{menuId:r,menuActionOptions:a,contextKeyService:l}=i;return{...i,getActions:()=>{const c=[];if(r){const d=n.getMenuActions(r,l??s,a);HY(d,c)}return i.getActions?Gi.join(i.getActions(),c):c}}}o.transform=t})(mD||(mD={}));var ZC;(function(o){o[o.API=0]="API",o[o.USER=1]="USER"})(ZC||(ZC={}));var e2=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},YC=function(o,e){return function(t,i){e(t,i,o)}};let pD=class{constructor(e){this._commandService=e}async open(e,t){if(!GN(e,Te.command))return!1;if(!t?.allowCommands||(typeof e=="string"&&(e=ve.parse(e)),Array.isArray(t.allowCommands)&&!t.allowCommands.includes(e.path)))return!0;let i=[];try{i=Ok(decodeURIComponent(e.query))}catch{try{i=Ok(e.query)}catch{}}return Array.isArray(i)||(i=[i]),await this._commandService.executeCommand(e.path,...i),!0}};pD=e2([YC(0,hi)],pD);let _D=class{constructor(e){this._editorService=e}async open(e,t){typeof e=="string"&&(e=ve.parse(e));const{selection:i,uri:n}=_q(e);return e=n,e.scheme===Te.file&&(e=Qq(e)),await this._editorService.openCodeEditor({resource:e,options:{selection:i,source:t?.fromUserGesture?ZC.USER:ZC.API,...t?.editorOptions}},this._editorService.getFocusedCodeEditor(),t?.openToSide),!0}};_D=e2([YC(0,Pt)],_D);let bD=class{constructor(e,t){this._openers=new yn,this._validators=new yn,this._resolvers=new yn,this._resolvedUriTargets=new cs(i=>i.with({path:null,fragment:null,query:null}).toString()),this._externalOpeners=new yn,this._defaultExternalOpener={openExternal:async i=>(zx(i,Te.http,Te.https)?HF(i):_t.location.href=i,!0)},this._openers.push({open:async(i,n)=>n?.openExternal||zx(i,Te.mailto,Te.http,Te.https,Te.vsls)?(await this._doOpenExternal(i,n),!0):!1}),this._openers.push(new pD(t)),this._openers.push(new _D(e))}registerOpener(e){return{dispose:this._openers.unshift(e)}}async open(e,t){const i=typeof e=="string"?ve.parse(e):e,n=this._resolvedUriTargets.get(i)??e;for(const s of this._validators)if(!await s.shouldOpen(n,t))return!1;for(const s of this._openers)if(await s.open(e,t))return!0;return!1}async resolveExternalUri(e,t){for(const i of this._resolvers)try{const n=await i.resolveExternalUri(e,t);if(n)return this._resolvedUriTargets.has(n.resolved)||this._resolvedUriTargets.set(n.resolved,e),n}catch{}throw new Error("Could not resolve external URI: "+e.toString())}async _doOpenExternal(e,t){const i=typeof e=="string"?ve.parse(e):e;let n;try{n=(await this.resolveExternalUri(i,t)).resolved}catch{n=i}let s;if(typeof e=="string"&&i.toString()===n.toString()?s=e:s=encodeURI(n.toString(!0)),t?.allowContributedOpeners){const r=typeof t?.allowContributedOpeners=="string"?t?.allowContributedOpeners:void 0;for(const a of this._externalOpeners)if(await a.openExternal(s,{sourceUri:i,preferredOpenerId:r},ut.None))return!0}return this._defaultExternalOpener.openExternal(s,{sourceUri:i},ut.None)}dispose(){this._validators.clear()}};bD=e2([YC(0,Pt),YC(1,hi)],bD);const Zc=He("editorWorkerService");var Vt;(function(o){o[o.Hint=1]="Hint",o[o.Info=2]="Info",o[o.Warning=4]="Warning",o[o.Error=8]="Error"})(Vt||(Vt={}));(function(o){function e(r,a){return a-r}o.compare=e;const t=Object.create(null);t[o.Error]=m("sev.error","Error"),t[o.Warning]=m("sev.warning","Warning"),t[o.Info]=m("sev.info","Info");function i(r){return t[r]||""}o.toString=i;function n(r){switch(r){case Qt.Error:return o.Error;case Qt.Warning:return o.Warning;case Qt.Info:return o.Info;case Qt.Ignore:return o.Hint}}o.fromSeverity=n;function s(r){switch(r){case o.Error:return Qt.Error;case o.Warning:return Qt.Warning;case o.Info:return Qt.Info;case o.Hint:return Qt.Ignore}}o.toSeverity=s})(Vt||(Vt={}));var QC;(function(o){function t(n){return i(n,!0)}o.makeKey=t;function i(n,s){const r=[""];return n.source?r.push(n.source.replace("¦","\\¦")):r.push(""),n.code?typeof n.code=="string"?r.push(n.code.replace("¦","\\¦")):r.push(n.code.value.replace("¦","\\¦")):r.push(""),n.severity!==void 0&&n.severity!==null?r.push(Vt.toString(n.severity)):r.push(""),n.message&&s?r.push(n.message.replace("¦","\\¦")):r.push(""),n.startLineNumber!==void 0&&n.startLineNumber!==null?r.push(n.startLineNumber.toString()):r.push(""),n.startColumn!==void 0&&n.startColumn!==null?r.push(n.startColumn.toString()):r.push(""),n.endLineNumber!==void 0&&n.endLineNumber!==null?r.push(n.endLineNumber.toString()):r.push(""),n.endColumn!==void 0&&n.endColumn!==null?r.push(n.endColumn.toString()):r.push(""),r.push(""),r.join("¦")}o.makeKeyOptionalMessage=i})(QC||(QC={}));const xa=He("markerService"),z7=D("editor.lineHighlightBackground",null,m("lineHighlight","Background color for the highlight of line at the cursor position.")),vP=D("editor.lineHighlightBorder",{dark:"#282828",light:"#eeeeee",hcDark:"#f38518",hcLight:Ye},m("lineHighlightBorderBox","Background color for the border around the line at the cursor position."));D("editor.rangeHighlightBackground",{dark:"#ffffff0b",light:"#fdff0033",hcDark:null,hcLight:null},m("rangeHighlight","Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.rangeHighlightBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("rangeHighlightBorder","Background color of the border around highlighted ranges."));D("editor.symbolHighlightBackground",{dark:ll,light:ll,hcDark:null,hcLight:null},m("symbolHighlight","Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.symbolHighlightBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("symbolHighlightBorder","Background color of the border around highlighted symbols."));const uy=D("editorCursor.foreground",{dark:"#AEAFAD",light:q.black,hcDark:q.white,hcLight:"#0F4A85"},m("caret","Color of the editor cursor.")),t2=D("editorCursor.background",null,m("editorCursorBackground","The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.")),U7=D("editorMultiCursor.primary.foreground",uy,m("editorMultiCursorPrimaryForeground","Color of the primary editor cursor when multiple cursors are present.")),KY=D("editorMultiCursor.primary.background",t2,m("editorMultiCursorPrimaryBackground","The background color of the primary editor cursor when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),$7=D("editorMultiCursor.secondary.foreground",uy,m("editorMultiCursorSecondaryForeground","Color of secondary editor cursors when multiple cursors are present.")),jY=D("editorMultiCursor.secondary.background",t2,m("editorMultiCursorSecondaryBackground","The background color of secondary editor cursors when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),i2=D("editorWhitespace.foreground",{dark:"#e3e4e229",light:"#33333333",hcDark:"#e3e4e229",hcLight:"#CCCCCC"},m("editorWhitespaces","Color of whitespace characters in the editor.")),qY=D("editorLineNumber.foreground",{dark:"#858585",light:"#237893",hcDark:q.white,hcLight:"#292929"},m("editorLineNumbers","Color of editor line numbers.")),GY=D("editorIndentGuide.background",i2,m("editorIndentGuides","Color of the editor indentation guides."),!1,m("deprecatedEditorIndentGuides","'editorIndentGuide.background' is deprecated. Use 'editorIndentGuide.background1' instead.")),ZY=D("editorIndentGuide.activeBackground",i2,m("editorActiveIndentGuide","Color of the active editor indentation guides."),!1,m("deprecatedEditorActiveIndentGuide","'editorIndentGuide.activeBackground' is deprecated. Use 'editorIndentGuide.activeBackground1' instead.")),tb=D("editorIndentGuide.background1",GY,m("editorIndentGuides1","Color of the editor indentation guides (1).")),YY=D("editorIndentGuide.background2","#00000000",m("editorIndentGuides2","Color of the editor indentation guides (2).")),QY=D("editorIndentGuide.background3","#00000000",m("editorIndentGuides3","Color of the editor indentation guides (3).")),XY=D("editorIndentGuide.background4","#00000000",m("editorIndentGuides4","Color of the editor indentation guides (4).")),JY=D("editorIndentGuide.background5","#00000000",m("editorIndentGuides5","Color of the editor indentation guides (5).")),eQ=D("editorIndentGuide.background6","#00000000",m("editorIndentGuides6","Color of the editor indentation guides (6).")),ib=D("editorIndentGuide.activeBackground1",ZY,m("editorActiveIndentGuide1","Color of the active editor indentation guides (1).")),tQ=D("editorIndentGuide.activeBackground2","#00000000",m("editorActiveIndentGuide2","Color of the active editor indentation guides (2).")),iQ=D("editorIndentGuide.activeBackground3","#00000000",m("editorActiveIndentGuide3","Color of the active editor indentation guides (3).")),nQ=D("editorIndentGuide.activeBackground4","#00000000",m("editorActiveIndentGuide4","Color of the active editor indentation guides (4).")),sQ=D("editorIndentGuide.activeBackground5","#00000000",m("editorActiveIndentGuide5","Color of the active editor indentation guides (5).")),oQ=D("editorIndentGuide.activeBackground6","#00000000",m("editorActiveIndentGuide6","Color of the active editor indentation guides (6).")),rQ=D("editorActiveLineNumber.foreground",{dark:"#c6c6c6",light:"#0B216F",hcDark:Ut,hcLight:Ut},m("editorActiveLineNumber","Color of editor active line number"),!1,m("deprecatedEditorActiveLineNumber","Id is deprecated. Use 'editorLineNumber.activeForeground' instead."));D("editorLineNumber.activeForeground",rQ,m("editorActiveLineNumber","Color of editor active line number"));const aQ=D("editorLineNumber.dimmedForeground",null,m("editorDimmedLineNumber","Color of the final editor line when editor.renderFinalNewline is set to dimmed."));D("editorRuler.foreground",{dark:"#5A5A5A",light:q.lightgrey,hcDark:q.white,hcLight:"#292929"},m("editorRuler","Color of the editor rulers."));D("editorCodeLens.foreground",{dark:"#999999",light:"#919191",hcDark:"#999999",hcLight:"#292929"},m("editorCodeLensForeground","Foreground color of editor CodeLens"));D("editorBracketMatch.background",{dark:"#0064001a",light:"#0064001a",hcDark:"#0064001a",hcLight:"#0000"},m("editorBracketMatchBackground","Background color behind matching brackets"));D("editorBracketMatch.border",{dark:"#888",light:"#B9B9B9",hcDark:Ye,hcLight:Ye},m("editorBracketMatchBorder","Color for matching brackets boxes"));const lQ=D("editorOverviewRuler.border",{dark:"#7f7f7f4d",light:"#7f7f7f4d",hcDark:"#7f7f7f4d",hcLight:"#666666"},m("editorOverviewRulerBorder","Color of the overview ruler border.")),cQ=D("editorOverviewRuler.background",null,m("editorOverviewRulerBackground","Background color of the editor overview ruler."));D("editorGutter.background",Oo,m("editorGutter","Background color of the editor gutter. The gutter contains the glyph margins and the line numbers."));D("editorUnnecessaryCode.border",{dark:null,light:null,hcDark:q.fromHex("#fff").transparent(.8),hcLight:Ye},m("unnecessaryCodeBorder","Border color of unnecessary (unused) source code in the editor."));const dQ=D("editorUnnecessaryCode.opacity",{dark:q.fromHex("#000a"),light:q.fromHex("#0007"),hcDark:null,hcLight:null},m("unnecessaryCodeOpacity",`Opacity of unnecessary (unused) source code in the editor. For example, "#000000c0" will render the code with 75% opacity. For high contrast themes, use the 'editorUnnecessaryCode.border' theme color to underline unnecessary code instead of fading it out.`));D("editorGhostText.border",{dark:null,light:null,hcDark:q.fromHex("#fff").transparent(.8),hcLight:q.fromHex("#292929").transparent(.8)},m("editorGhostTextBorder","Border color of ghost text in the editor."));D("editorGhostText.foreground",{dark:q.fromHex("#ffffff56"),light:q.fromHex("#0007"),hcDark:null,hcLight:null},m("editorGhostTextForeground","Foreground color of the ghost text in the editor."));D("editorGhostText.background",null,m("editorGhostTextBackground","Background color of the ghost text in the editor."));const hQ=new q(new qe(0,122,204,.6));D("editorOverviewRuler.rangeHighlightForeground",hQ,m("overviewRulerRangeHighlight","Overview ruler marker color for range highlights. The color must not be opaque so as not to hide underlying decorations."),!0);const uQ=D("editorOverviewRuler.errorForeground",{dark:new q(new qe(255,18,18,.7)),light:new q(new qe(255,18,18,.7)),hcDark:new q(new qe(255,50,50,1)),hcLight:"#B5200D"},m("overviewRuleError","Overview ruler marker color for errors.")),fQ=D("editorOverviewRuler.warningForeground",{dark:Il,light:Il,hcDark:i_,hcLight:i_},m("overviewRuleWarning","Overview ruler marker color for warnings.")),gQ=D("editorOverviewRuler.infoForeground",{dark:ma,light:ma,hcDark:n_,hcLight:n_},m("overviewRuleInfo","Overview ruler marker color for infos.")),K7=D("editorBracketHighlight.foreground1",{dark:"#FFD700",light:"#0431FAFF",hcDark:"#FFD700",hcLight:"#0431FAFF"},m("editorBracketHighlightForeground1","Foreground color of brackets (1). Requires enabling bracket pair colorization.")),j7=D("editorBracketHighlight.foreground2",{dark:"#DA70D6",light:"#319331FF",hcDark:"#DA70D6",hcLight:"#319331FF"},m("editorBracketHighlightForeground2","Foreground color of brackets (2). Requires enabling bracket pair colorization.")),q7=D("editorBracketHighlight.foreground3",{dark:"#179FFF",light:"#7B3814FF",hcDark:"#87CEFA",hcLight:"#7B3814FF"},m("editorBracketHighlightForeground3","Foreground color of brackets (3). Requires enabling bracket pair colorization.")),G7=D("editorBracketHighlight.foreground4","#00000000",m("editorBracketHighlightForeground4","Foreground color of brackets (4). Requires enabling bracket pair colorization.")),Z7=D("editorBracketHighlight.foreground5","#00000000",m("editorBracketHighlightForeground5","Foreground color of brackets (5). Requires enabling bracket pair colorization.")),Y7=D("editorBracketHighlight.foreground6","#00000000",m("editorBracketHighlightForeground6","Foreground color of brackets (6). Requires enabling bracket pair colorization.")),mQ=D("editorBracketHighlight.unexpectedBracket.foreground",{dark:new q(new qe(255,18,18,.8)),light:new q(new qe(255,18,18,.8)),hcDark:"new Color(new RGBA(255, 50, 50, 1))",hcLight:"#B5200D"},m("editorBracketHighlightUnexpectedBracketForeground","Foreground color of unexpected brackets.")),pQ=D("editorBracketPairGuide.background1","#00000000",m("editorBracketPairGuide.background1","Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides.")),_Q=D("editorBracketPairGuide.background2","#00000000",m("editorBracketPairGuide.background2","Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides.")),bQ=D("editorBracketPairGuide.background3","#00000000",m("editorBracketPairGuide.background3","Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides.")),CQ=D("editorBracketPairGuide.background4","#00000000",m("editorBracketPairGuide.background4","Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides.")),vQ=D("editorBracketPairGuide.background5","#00000000",m("editorBracketPairGuide.background5","Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides.")),wQ=D("editorBracketPairGuide.background6","#00000000",m("editorBracketPairGuide.background6","Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides.")),yQ=D("editorBracketPairGuide.activeBackground1","#00000000",m("editorBracketPairGuide.activeBackground1","Background color of active bracket pair guides (1). Requires enabling bracket pair guides.")),SQ=D("editorBracketPairGuide.activeBackground2","#00000000",m("editorBracketPairGuide.activeBackground2","Background color of active bracket pair guides (2). Requires enabling bracket pair guides.")),LQ=D("editorBracketPairGuide.activeBackground3","#00000000",m("editorBracketPairGuide.activeBackground3","Background color of active bracket pair guides (3). Requires enabling bracket pair guides.")),xQ=D("editorBracketPairGuide.activeBackground4","#00000000",m("editorBracketPairGuide.activeBackground4","Background color of active bracket pair guides (4). Requires enabling bracket pair guides.")),kQ=D("editorBracketPairGuide.activeBackground5","#00000000",m("editorBracketPairGuide.activeBackground5","Background color of active bracket pair guides (5). Requires enabling bracket pair guides.")),DQ=D("editorBracketPairGuide.activeBackground6","#00000000",m("editorBracketPairGuide.activeBackground6","Background color of active bracket pair guides (6). Requires enabling bracket pair guides."));D("editorUnicodeHighlight.border",Il,m("editorUnicodeHighlight.border","Border color used to highlight unicode characters."));D("editorUnicodeHighlight.background",LK,m("editorUnicodeHighlight.background","Background color used to highlight unicode characters."));Sr((o,e)=>{const t=o.getColor(Oo),i=o.getColor(z7),n=i&&!i.isTransparent()?i:t;n&&e.addRule(`.monaco-editor .inputarea.ime-input { background-color: ${n}; }`)});function IQ(o,e){const t=[],i=[];for(const n of o)e.has(n)||t.push(n);for(const n of e)o.has(n)||i.push(n);return{removed:t,added:i}}function EQ(o,e){const t=new Set;for(const i of e)o.has(i)&&t.add(i);return t}var NQ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},wP=function(o,e){return function(t,i){e(t,i,o)}};let CD=class extends z{constructor(e,t){super(),this._markerService=t,this._onDidChangeMarker=this._register(new A),this._markerDecorations=new cs,e.getModels().forEach(i=>this._onModelAdded(i)),this._register(e.onModelAdded(this._onModelAdded,this)),this._register(e.onModelRemoved(this._onModelRemoved,this)),this._register(this._markerService.onMarkerChanged(this._handleMarkerChange,this))}dispose(){super.dispose(),this._markerDecorations.forEach(e=>e.dispose()),this._markerDecorations.clear()}getMarker(e,t){const i=this._markerDecorations.get(e);return i&&i.getMarker(t)||null}_handleMarkerChange(e){e.forEach(t=>{const i=this._markerDecorations.get(t);i&&this._updateDecorations(i)})}_onModelAdded(e){const t=new TQ(e);this._markerDecorations.set(e.uri,t),this._updateDecorations(t)}_onModelRemoved(e){const t=this._markerDecorations.get(e.uri);t&&(t.dispose(),this._markerDecorations.delete(e.uri)),(e.uri.scheme===Te.inMemory||e.uri.scheme===Te.internal||e.uri.scheme===Te.vscode)&&this._markerService?.read({resource:e.uri}).map(i=>i.owner).forEach(i=>this._markerService.remove(i,[e.uri]))}_updateDecorations(e){const t=this._markerService.read({resource:e.model.uri,take:500});e.update(t)&&this._onDidChangeMarker.fire(e.model)}};CD=NQ([wP(0,Fi),wP(1,xa)],CD);class TQ extends z{constructor(e){super(),this.model=e,this._map=new IU,this._register(_e(()=>{this.model.deltaDecorations([...this._map.values()],[]),this._map.clear()}))}update(e){const{added:t,removed:i}=IQ(new Set(this._map.keys()),new Set(e));if(t.length===0&&i.length===0)return!1;const n=i.map(a=>this._map.get(a)),s=t.map(a=>({range:this._createDecorationRange(this.model,a),options:this._createDecorationOption(a)})),r=this.model.deltaDecorations(n,s);for(const a of i)this._map.delete(a);for(let a=0;a=n)return i;const s=e.getWordAtPosition(i.getStartPosition());s&&(i=new I(i.startLineNumber,s.startColumn,i.endLineNumber,s.endColumn))}else if(t.endColumn===Number.MAX_VALUE&&t.startColumn===1&&i.startLineNumber===i.endLineNumber){const n=e.getLineFirstNonWhitespaceColumn(t.startLineNumber);n=0:!1}}const n2=He("markerDecorationsService");class _i{static _nextVisibleColumn(e,t,i){return e===9?_i.nextRenderTabStop(t,i):Rc(e)||UN(e)?t+2:t+1}static visibleColumnFromColumn(e,t,i){const n=Math.min(t-1,e.length),s=e.substring(0,n),r=new fC(s);let a=0;for(;!r.eol();){const l=uC(s,n,r.offset);r.nextGraphemeLength(),a=this._nextVisibleColumn(l,a,i)}return a}static columnFromVisibleColumn(e,t,i){if(t<=0)return 1;const n=e.length,s=new fC(e);let r=0,a=1;for(;!s.eol();){const l=uC(e,n,s.offset);s.nextGraphemeLength();const c=this._nextVisibleColumn(l,r,i),d=s.offset+1;if(c>=t){const h=t-r;return c-t=Rs&&(t=t-o%Rs),t}function FQ(o,e){return o.reduce((t,i)=>zt(t,e(i)),Ln)}function X7(o,e){return o===e}function h_(o,e){const t=o,i=e;if(i-t<=0)return Ln;const s=Math.floor(t/Rs),r=Math.floor(i/Rs),a=i-r*Rs;if(s===r){const l=t-s*Rs;return ni(0,a-l)}else return ni(r-s,a)}function Vf(o,e){return o=e}function lf(o){return ni(o.lineNumber-1,o.column-1)}function Jd(o,e){const t=o,i=Math.floor(t/Rs),n=t-i*Rs,s=e,r=Math.floor(s/Rs),a=s-r*Rs;return new I(i+1,n+1,r+1,a+1)}function BQ(o){const e=va(o);return ni(e.length-1,e[e.length-1].length)}class cl{static fromModelContentChanges(e){return e.map(i=>{const n=I.lift(i.range);return new cl(lf(n.getStartPosition()),lf(n.getEndPosition()),BQ(i.text))}).reverse()}constructor(e,t,i){this.startOffset=e,this.endOffset=t,this.newLength=i}toString(){return`[${ro(this.startOffset)}...${ro(this.endOffset)}) -> ${ro(this.newLength)}`}}class WQ{constructor(e){this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=e.map(t=>s2.from(t))}getOffsetBeforeChange(e){return this.adjustNextEdit(e),this.translateCurToOld(e)}getDistanceToNextChange(e){this.adjustNextEdit(e);const t=this.edits[this.nextEditIdx],i=t?this.translateOldToCur(t.offsetObj):null;return i===null?null:h_(e,i)}translateOldToCur(e){return e.lineCount===this.deltaLineIdxInOld?ni(e.lineCount+this.deltaOldToNewLineCount,e.columnCount+this.deltaOldToNewColumnCount):ni(e.lineCount+this.deltaOldToNewLineCount,e.columnCount)}translateCurToOld(e){const t=ro(e);return t.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?ni(t.lineCount-this.deltaOldToNewLineCount,t.columnCount-this.deltaOldToNewColumnCount):ni(t.lineCount-this.deltaOldToNewLineCount,t.columnCount)}adjustNextEdit(e){for(;this.nextEditIdx>5;if(n===0){const r=1<this.textBufferLineCount-1||this.lineIdx===this.textBufferLineCount-1&&this.lineCharOffset>=this.textBufferLastLineLength)return null;this.line===null&&(this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.line=this.lineTokens.getLineContent(),this.lineTokenOffset=this.lineCharOffset===0?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset));const e=this.lineIdx,t=this.lineCharOffset;let i=0;for(;;){const s=this.lineTokens,r=s.getCount();let a=null;if(this.lineTokenOffset1e3))break;if(i>1500)break}const n=PQ(e,t,this.lineIdx,this.lineCharOffset);return new Jl(n,0,-1,ss.getEmpty(),new Sd(n))}}class KQ{constructor(e,t){this.text=e,this._offset=Ln,this.idx=0;const i=t.getRegExpStr(),n=i?new RegExp(i+`| -`,"gi"):null,s=[];let r,a=0,l=0,c=0,d=0;const h=[];for(let g=0;g<60;g++)h.push(new Jl(ni(0,g),0,-1,ss.getEmpty(),new Sd(ni(0,g))));const u=[];for(let g=0;g<60;g++)u.push(new Jl(ni(1,g),0,-1,ss.getEmpty(),new Sd(ni(1,g))));if(n)for(n.lastIndex=0;(r=n.exec(e))!==null;){const g=r.index,p=r[0];if(p===` -`)a++,l=g+1;else{if(c!==g){let _;if(d===a){const b=g-c;if(bjQ(t)).join("|")}}get regExpGlobal(){if(!this.hasRegExp){const e=this.getRegExpStr();this._regExpGlobal=e?new RegExp(e,"gi"):null,this.hasRegExp=!0}return this._regExpGlobal}getToken(e){return this.map.get(e.toLowerCase())}findClosingTokenText(e){for(const[t,i]of this.map)if(i.kind===2&&i.bracketIds.intersects(e))return t}get isEmpty(){return this.map.size===0}}function jQ(o){let e=xl(o);return/^[\w ]+/.test(o)&&(e=`\\b${e}`),/[\w ]+$/.test(o)&&(e=`${e}\\b`),e}class t9{constructor(e,t){this.denseKeyProvider=e,this.getLanguageConfiguration=t,this.languageIdToBracketTokens=new Map}didLanguageChange(e){return this.languageIdToBracketTokens.has(e)}getSingleLanguageBracketTokens(e){let t=this.languageIdToBracketTokens.get(e);return t||(t=a2.createFromLanguage(this.getLanguageConfiguration(e),this.denseKeyProvider),this.languageIdToBracketTokens.set(e,t)),t}}function qQ(o){if(o.length===0)return null;if(o.length===1)return o[0];let e=0;function t(){if(e>=o.length)return null;const r=e,a=o[r].listHeight;for(e++;e=2?i9(r===0&&e===o.length?o:o.slice(r,e),!1):o[r]}let i=t(),n=t();if(!n)return i;for(let r=t();r;r=t())LP(i,n)<=LP(n,r)?(i=PS(i,n),n=r):n=PS(n,r);return PS(i,n)}function i9(o,e=!1){if(o.length===0)return null;if(o.length===1)return o[0];let t=o.length;for(;t>3;){const i=t>>1;for(let n=0;n=3?o[2]:null,e)}function LP(o,e){return Math.abs(o.listHeight-e.listHeight)}function PS(o,e){return o.listHeight===e.listHeight?pa.create23(o,e,null,!1):o.listHeight>e.listHeight?GQ(o,e):ZQ(e,o)}function GQ(o,e){o=o.toMutable();let t=o;const i=[];let n;for(;;){if(e.listHeight===t.listHeight){n=e;break}if(t.kind!==4)throw new Error("unexpected");i.push(t),t=t.makeLastElementMutable()}for(let s=i.length-1;s>=0;s--){const r=i[s];n?r.childrenLength>=3?n=pa.create23(r.unappendChild(),n,null,!1):(r.appendChildOfSameHeight(n),n=void 0):r.handleChildrenChanged()}return n?pa.create23(o,n,null,!1):o}function ZQ(o,e){o=o.toMutable();let t=o;const i=[];for(;e.listHeight!==t.listHeight;){if(t.kind!==4)throw new Error("unexpected");i.push(t),t=t.makeFirstElementMutable()}let n=e;for(let s=i.length-1;s>=0;s--){const r=i[s];n?r.childrenLength>=3?n=pa.create23(n,r.unprependChild(),null,!1):(r.prependChildOfSameHeight(n),n=void 0):r.handleChildrenChanged()}return n?pa.create23(n,o,null,!1):o}class YQ{constructor(e){this.lastOffset=Ln,this.nextNodes=[e],this.offsets=[Ln],this.idxs=[]}readLongestNodeAt(e,t){if(Vf(e,this.lastOffset))throw new Error("Invalid offset");for(this.lastOffset=e;;){const i=mm(this.nextNodes);if(!i)return;const n=mm(this.offsets);if(Vf(e,n))return;if(Vf(n,e))if(zt(n,i.length)<=e)this.nextNodeAfterCurrent();else{const s=OS(i);s!==-1?(this.nextNodes.push(i.getChild(s)),this.offsets.push(n),this.idxs.push(s)):this.nextNodeAfterCurrent()}else{if(t(i))return this.nextNodeAfterCurrent(),i;{const s=OS(i);if(s===-1){this.nextNodeAfterCurrent();return}else this.nextNodes.push(i.getChild(s)),this.offsets.push(n),this.idxs.push(s)}}}}nextNodeAfterCurrent(){for(;;){const e=mm(this.offsets),t=mm(this.nextNodes);if(this.nextNodes.pop(),this.offsets.pop(),this.idxs.length===0)break;const i=mm(this.nextNodes),n=OS(i,this.idxs[this.idxs.length-1]);if(n!==-1){this.nextNodes.push(i.getChild(n)),this.offsets.push(zt(e,t.length)),this.idxs[this.idxs.length-1]=n;break}else this.idxs.pop()}}}function OS(o,e=-1){for(;;){if(e++,e>=o.childrenLength)return-1;if(o.getChild(e))return e}}function mm(o){return o.length>0?o[o.length-1]:void 0}function vD(o,e,t,i){return new QQ(o,e,t,i).parseDocument()}class QQ{constructor(e,t,i,n){if(this.tokenizer=e,this.createImmutableLists=n,this._itemsConstructed=0,this._itemsFromCache=0,i&&n)throw new Error("Not supported");this.oldNodeReader=i?new YQ(i):void 0,this.positionMapper=new WQ(t)}parseDocument(){this._itemsConstructed=0,this._itemsFromCache=0;let e=this.parseList(ss.getEmpty(),0);return e||(e=pa.getEmpty()),e}parseList(e,t){const i=[];for(;;){let s=this.tryReadChildFromCache(e);if(!s){const r=this.tokenizer.peek();if(!r||r.kind===2&&r.bracketIds.intersects(e))break;s=this.parseChild(e,t+1)}s.kind===4&&s.childrenLength===0||i.push(s)}return this.oldNodeReader?qQ(i):i9(i,this.createImmutableLists)}tryReadChildFromCache(e){if(this.oldNodeReader){const t=this.positionMapper.getDistanceToNextChange(this.tokenizer.offset);if(t===null||!XC(t)){const i=this.oldNodeReader.readLongestNodeAt(this.positionMapper.getOffsetBeforeChange(this.tokenizer.offset),n=>t!==null&&!Vf(n.length,t)?!1:n.canBeReused(e));if(i)return this._itemsFromCache++,this.tokenizer.skip(i.length),i}}}parseChild(e,t){this._itemsConstructed++;const i=this.tokenizer.read();switch(i.kind){case 2:return new UQ(i.bracketIds,i.length);case 0:return i.astNode;case 1:{if(t>300)return new Sd(i.length);const n=e.merge(i.bracketIds),s=this.parseList(n,t+1),r=this.tokenizer.peek();return r&&r.kind===2&&(r.bracketId===i.bracketId||r.bracketIds.intersects(i.bracketIds))?(this.tokenizer.read(),u_.create(i.astNode,s,r.astNode)):u_.create(i.astNode,s,null)}default:throw new Error("unexpected")}}}function tv(o,e){if(o.length===0)return e;if(e.length===0)return o;const t=new Ll(xP(o)),i=xP(e);i.push({modified:!1,lengthBefore:void 0,lengthAfter:void 0});let n=t.dequeue();function s(c){if(c===void 0){const h=t.takeWhile(u=>!0)||[];return n&&h.unshift(n),h}const d=[];for(;n&&!XC(c);){const[h,u]=n.splitAt(c);d.push(h),c=h_(h.lengthAfter,c),n=u??t.dequeue()}return XC(c)||d.push(new ac(!1,c,c)),d}const r=[];function a(c,d,h){if(r.length>0&&X7(r[r.length-1].endOffset,c)){const u=r[r.length-1];r[r.length-1]=new cl(u.startOffset,d,zt(u.newLength,h))}else r.push({startOffset:c,endOffset:d,newLength:h})}let l=Ln;for(const c of i){const d=s(c.lengthBefore);if(c.modified){const h=FQ(d,f=>f.lengthBefore),u=zt(l,h);a(l,u,c.lengthAfter),l=u}else for(const h of d){const u=l;l=zt(l,h.lengthBefore),h.modified&&a(u,l,h.lengthAfter)}}return r}class ac{constructor(e,t,i){this.modified=e,this.lengthBefore=t,this.lengthAfter=i}splitAt(e){const t=h_(e,this.lengthAfter);return X7(t,Ln)?[this,void 0]:this.modified?[new ac(this.modified,this.lengthBefore,e),new ac(this.modified,Ln,t)]:[new ac(this.modified,e,e),new ac(this.modified,t,t)]}toString(){return`${this.modified?"M":"U"}:${ro(this.lengthBefore)} -> ${ro(this.lengthAfter)}`}}function xP(o){const e=[];let t=Ln;for(const i of o){const n=h_(t,i.startOffset);XC(n)||e.push(new ac(!1,n,n));const s=h_(i.startOffset,i.endOffset);e.push(new ac(!0,s,i.newLength)),t=i.endOffset}return e}class XQ extends z{didLanguageChange(e){return this.brackets.didLanguageChange(e)}constructor(e,t){if(super(),this.textModel=e,this.getLanguageConfiguration=t,this.didChangeEmitter=new A,this.denseKeyProvider=new J7,this.brackets=new t9(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],e.tokenization.hasTokens)e.tokenization.backgroundTokenizationState===2?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{const i=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),n=new KQ(this.textModel.getValue(),i);this.initialAstWithoutTokens=vD(n,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(this.textModel.tokenization.backgroundTokenizationState===2){const e=this.initialAstWithoutTokens===void 0;this.initialAstWithoutTokens=void 0,e||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:e}){const t=e.map(i=>new cl(ni(i.fromLineNumber-1,0),ni(i.toLineNumber,0),ni(i.toLineNumber-i.fromLineNumber+1,0)));this.handleEdits(t,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(e){const t=cl.fromModelContentChanges(e.changes);this.handleEdits(t,!1)}handleEdits(e,t){const i=tv(this.queuedTextEdits,e);this.queuedTextEdits=i,this.initialAstWithoutTokens&&!t&&(this.queuedTextEditsForInitialAstWithoutTokens=tv(this.queuedTextEditsForInitialAstWithoutTokens,e))}flushQueue(){this.queuedTextEdits.length>0&&(this.astWithTokens=this.parseDocumentFromTextBuffer(this.queuedTextEdits,this.astWithTokens,!1),this.queuedTextEdits=[]),this.queuedTextEditsForInitialAstWithoutTokens.length>0&&(this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(this.queuedTextEditsForInitialAstWithoutTokens,this.initialAstWithoutTokens,!1)),this.queuedTextEditsForInitialAstWithoutTokens=[])}parseDocumentFromTextBuffer(e,t,i){const n=t,s=new e9(this.textModel,this.brackets);return vD(s,e,n,i)}getBracketsInRange(e,t){this.flushQueue();const i=ni(e.startLineNumber-1,e.startColumn-1),n=ni(e.endLineNumber-1,e.endColumn-1);return new Zd(s=>{const r=this.initialAstWithoutTokens||this.astWithTokens;wD(r,Ln,r.length,i,n,s,0,0,new Map,t)})}getBracketPairsInRange(e,t){this.flushQueue();const i=lf(e.getStartPosition()),n=lf(e.getEndPosition());return new Zd(s=>{const r=this.initialAstWithoutTokens||this.astWithTokens,a=new JQ(s,t,this.textModel);yD(r,Ln,r.length,i,n,a,0,new Map)})}getFirstBracketAfter(e){this.flushQueue();const t=this.initialAstWithoutTokens||this.astWithTokens;return s9(t,Ln,t.length,lf(e))}getFirstBracketBefore(e){this.flushQueue();const t=this.initialAstWithoutTokens||this.astWithTokens;return n9(t,Ln,t.length,lf(e))}}function n9(o,e,t,i){if(o.kind===4||o.kind===2){const n=[];for(const s of o.children)t=zt(e,s.length),n.push({nodeOffsetStart:e,nodeOffsetEnd:t}),e=t;for(let s=n.length-1;s>=0;s--){const{nodeOffsetStart:r,nodeOffsetEnd:a}=n[s];if(Vf(r,i)){const l=n9(o.children[s],r,a,i);if(l)return l}}return null}else{if(o.kind===3)return null;if(o.kind===1){const n=Jd(e,t);return{bracketInfo:o.bracketInfo,range:n}}}return null}function s9(o,e,t,i){if(o.kind===4||o.kind===2){for(const n of o.children){if(t=zt(e,n.length),Vf(i,t)){const s=s9(n,e,t,i);if(s)return s}e=t}return null}else{if(o.kind===3)return null;if(o.kind===1){const n=Jd(e,t);return{bracketInfo:o.bracketInfo,range:n}}}return null}function wD(o,e,t,i,n,s,r,a,l,c,d=!1){if(r>200)return!0;e:for(;;)switch(o.kind){case 4:{const h=o.childrenLength;for(let u=0;u200)return!0;let l=!0;if(o.kind===2){let c=0;if(a){let u=a.get(o.openingBracket.text);u===void 0&&(u=0),c=u,u++,a.set(o.openingBracket.text,u)}const d=zt(e,o.openingBracket.length);let h=-1;if(s.includeMinIndentation&&(h=o.computeMinIndentation(e,s.textModel)),l=s.push(new AQ(Jd(e,t),Jd(e,d),o.closingBracket?Jd(zt(d,o.child?.length||Ln),t):void 0,r,c,o,h)),e=d,l&&o.child){const u=o.child;if(t=zt(e,u.length),zf(e,n)&&Am(t,i)&&(l=yD(u,e,t,i,n,s,r+1,a),!l))return!1}a?.set(o.openingBracket.text,c)}else{let c=e;for(const d of o.children){const h=c;if(c=zt(c,d.length),zf(h,n)&&zf(i,c)&&(l=yD(d,h,c,i,n,s,r,a),!l))return!1}}return l}class eX extends z{get canBuildAST(){return this.textModel.getValueLength()<=5e6}constructor(e,t){super(),this.textModel=e,this.languageConfigurationService=t,this.bracketPairsTree=this._register(new Dn),this.onDidChangeEmitter=new A,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1}handleLanguageConfigurationServiceChange(e){(!e.languageId||this.bracketPairsTree.value?.object.didLanguageChange(e.languageId))&&(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}handleDidChangeOptions(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(e){this.bracketPairsTree.value?.object.handleContentChanged(e)}handleDidChangeBackgroundTokenizationState(){this.bracketPairsTree.value?.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(e){this.bracketPairsTree.value?.object.handleDidChangeTokens(e)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){const e=new X;this.bracketPairsTree.value=tX(e.add(new XQ(this.textModel,t=>this.languageConfigurationService.getLanguageConfiguration(t))),e),e.add(this.bracketPairsTree.value.object.onDidChange(t=>this.onDidChangeEmitter.fire(t))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire())}getBracketPairsInRange(e){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(e,!1)||Zd.empty}getBracketPairsInRangeWithMinIndentation(e){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(e,!0)||Zd.empty}getBracketsInRange(e,t=!1){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketsInRange(e,t)||Zd.empty}findMatchingBracketUp(e,t,i){const n=this.textModel.validatePosition(t),s=this.textModel.getLanguageIdAtPosition(n.lineNumber,n.column);if(this.canBuildAST){const r=this.languageConfigurationService.getLanguageConfiguration(s).bracketsNew.getClosingBracketInfo(e);if(!r)return null;const a=this.getBracketPairsInRange(I.fromPositions(t,t)).findLast(l=>r.closes(l.openingBracketInfo));return a?a.openingBracketRange:null}else{const r=e.toLowerCase(),a=this.languageConfigurationService.getLanguageConfiguration(s).brackets;if(!a)return null;const l=a.textIsBracket[r];return l?Kb(this._findMatchingBracketUp(l,n,FS(i))):null}}matchBracket(e,t){if(this.canBuildAST){const i=this.getBracketPairsInRange(I.fromPositions(e,e)).filter(n=>n.closingBracketRange!==void 0&&(n.openingBracketRange.containsPosition(e)||n.closingBracketRange.containsPosition(e))).findLastMaxBy(rs(n=>n.openingBracketRange.containsPosition(e)?n.openingBracketRange:n.closingBracketRange,I.compareRangesUsingStarts));return i?[i.openingBracketRange,i.closingBracketRange]:null}else{const i=FS(t);return this._matchBracket(this.textModel.validatePosition(e),i)}}_establishBracketSearchOffsets(e,t,i,n){const s=t.getCount(),r=t.getLanguageId(n);let a=Math.max(0,e.column-1-i.maxBracketLength);for(let c=n-1;c>=0;c--){const d=t.getEndOffset(c);if(d<=a)break;if(Pr(t.getStandardTokenType(c))||t.getLanguageId(c)!==r){a=d;break}}let l=Math.min(t.getLineContent().length,e.column-1+i.maxBracketLength);for(let c=n+1;c=l)break;if(Pr(t.getStandardTokenType(c))||t.getLanguageId(c)!==r){l=d;break}}return{searchStartOffset:a,searchEndOffset:l}}_matchBracket(e,t){const i=e.lineNumber,n=this.textModel.tokenization.getLineTokens(i),s=this.textModel.getLineContent(i),r=n.findTokenIndexAtOffset(e.column-1);if(r<0)return null;const a=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId(r)).brackets;if(a&&!Pr(n.getStandardTokenType(r))){let{searchStartOffset:l,searchEndOffset:c}=this._establishBracketSearchOffsets(e,n,a,r),d=null;for(;;){const h=Co.findNextBracketInRange(a.forwardRegex,i,s,l,c);if(!h)break;if(h.startColumn<=e.column&&e.column<=h.endColumn){const u=s.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),f=this._matchFoundBracket(h,a.textIsBracket[u],a.textIsOpenBracket[u],t);if(f){if(f instanceof Xa)return null;d=f}}l=h.endColumn-1}if(d)return d}if(r>0&&n.getStartOffset(r)===e.column-1){const l=r-1,c=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId(l)).brackets;if(c&&!Pr(n.getStandardTokenType(l))){const{searchStartOffset:d,searchEndOffset:h}=this._establishBracketSearchOffsets(e,n,c,l),u=Co.findPrevBracketInRange(c.reversedRegex,i,s,d,h);if(u&&u.startColumn<=e.column&&e.column<=u.endColumn){const f=s.substring(u.startColumn-1,u.endColumn-1).toLowerCase(),g=this._matchFoundBracket(u,c.textIsBracket[f],c.textIsOpenBracket[f],t);if(g)return g instanceof Xa?null:g}}}return null}_matchFoundBracket(e,t,i,n){if(!t)return null;const s=i?this._findMatchingBracketDown(t,e.getEndPosition(),n):this._findMatchingBracketUp(t,e.getStartPosition(),n);return s?s instanceof Xa?s:[e,s]:null}_findMatchingBracketUp(e,t,i){const n=e.languageId,s=e.reversedRegex;let r=-1,a=0;const l=(c,d,h,u)=>{for(;;){if(i&&++a%100===0&&!i())return Xa.INSTANCE;const f=Co.findPrevBracketInRange(s,c,d,h,u);if(!f)break;const g=d.substring(f.startColumn-1,f.endColumn-1).toLowerCase();if(e.isOpen(g)?r++:e.isClose(g)&&r--,r===0)return f;u=f.startColumn-1}return null};for(let c=t.lineNumber;c>=1;c--){const d=this.textModel.tokenization.getLineTokens(c),h=d.getCount(),u=this.textModel.getLineContent(c);let f=h-1,g=u.length,p=u.length;c===t.lineNumber&&(f=d.findTokenIndexAtOffset(t.column-1),g=t.column-1,p=t.column-1);let _=!0;for(;f>=0;f--){const b=d.getLanguageId(f)===n&&!Pr(d.getStandardTokenType(f));if(b)_?g=d.getStartOffset(f):(g=d.getStartOffset(f),p=d.getEndOffset(f));else if(_&&g!==p){const C=l(c,u,g,p);if(C)return C}_=b}if(_&&g!==p){const b=l(c,u,g,p);if(b)return b}}return null}_findMatchingBracketDown(e,t,i){const n=e.languageId,s=e.forwardRegex;let r=1,a=0;const l=(d,h,u,f)=>{for(;;){if(i&&++a%100===0&&!i())return Xa.INSTANCE;const g=Co.findNextBracketInRange(s,d,h,u,f);if(!g)break;const p=h.substring(g.startColumn-1,g.endColumn-1).toLowerCase();if(e.isOpen(p)?r++:e.isClose(p)&&r--,r===0)return g;u=g.endColumn-1}return null},c=this.textModel.getLineCount();for(let d=t.lineNumber;d<=c;d++){const h=this.textModel.tokenization.getLineTokens(d),u=h.getCount(),f=this.textModel.getLineContent(d);let g=0,p=0,_=0;d===t.lineNumber&&(g=h.findTokenIndexAtOffset(t.column-1),p=t.column-1,_=t.column-1);let b=!0;for(;g=1;r--){const a=this.textModel.tokenization.getLineTokens(r),l=a.getCount(),c=this.textModel.getLineContent(r);let d=l-1,h=c.length,u=c.length;if(r===t.lineNumber){d=a.findTokenIndexAtOffset(t.column-1),h=t.column-1,u=t.column-1;const g=a.getLanguageId(d);i!==g&&(i=g,n=this.languageConfigurationService.getLanguageConfiguration(i).brackets,s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew)}let f=!0;for(;d>=0;d--){const g=a.getLanguageId(d);if(i!==g){if(n&&s&&f&&h!==u){const _=Co.findPrevBracketInRange(n.reversedRegex,r,c,h,u);if(_)return this._toFoundBracket(s,_);f=!1}i=g,n=this.languageConfigurationService.getLanguageConfiguration(i).brackets,s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew}const p=!!n&&!Pr(a.getStandardTokenType(d));if(p)f?h=a.getStartOffset(d):(h=a.getStartOffset(d),u=a.getEndOffset(d));else if(s&&n&&f&&h!==u){const _=Co.findPrevBracketInRange(n.reversedRegex,r,c,h,u);if(_)return this._toFoundBracket(s,_)}f=p}if(s&&n&&f&&h!==u){const g=Co.findPrevBracketInRange(n.reversedRegex,r,c,h,u);if(g)return this._toFoundBracket(s,g)}}return null}findNextBracket(e){const t=this.textModel.validatePosition(e);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketAfter(t)||null;const i=this.textModel.getLineCount();let n=null,s=null,r=null;for(let a=t.lineNumber;a<=i;a++){const l=this.textModel.tokenization.getLineTokens(a),c=l.getCount(),d=this.textModel.getLineContent(a);let h=0,u=0,f=0;if(a===t.lineNumber){h=l.findTokenIndexAtOffset(t.column-1),u=t.column-1,f=t.column-1;const p=l.getLanguageId(h);n!==p&&(n=p,s=this.languageConfigurationService.getLanguageConfiguration(n).brackets,r=this.languageConfigurationService.getLanguageConfiguration(n).bracketsNew)}let g=!0;for(;hp.closingBracketRange!==void 0&&p.range.strictContainsRange(f));return g?[g.openingBracketRange,g.closingBracketRange]:null}const n=FS(t),s=this.textModel.getLineCount(),r=new Map;let a=[];const l=(f,g)=>{if(!r.has(f)){const p=[];for(let _=0,b=g?g.brackets.length:0;_{for(;;){if(n&&++c%100===0&&!n())return Xa.INSTANCE;const C=Co.findNextBracketInRange(f.forwardRegex,g,p,_,b);if(!C)break;const w=p.substring(C.startColumn-1,C.endColumn-1).toLowerCase(),v=f.textIsBracket[w];if(v&&(v.isOpen(w)?a[v.index]++:v.isClose(w)&&a[v.index]--,a[v.index]===-1))return this._matchFoundBracket(C,v,!1,n);_=C.endColumn-1}return null};let h=null,u=null;for(let f=i.lineNumber;f<=s;f++){const g=this.textModel.tokenization.getLineTokens(f),p=g.getCount(),_=this.textModel.getLineContent(f);let b=0,C=0,w=0;if(f===i.lineNumber){b=g.findTokenIndexAtOffset(i.column-1),C=i.column-1,w=i.column-1;const y=g.getLanguageId(b);h!==y&&(h=y,u=this.languageConfigurationService.getLanguageConfiguration(h).brackets,l(h,u))}let v=!0;for(;be?.dispose()}}function FS(o){if(typeof o>"u")return()=>!0;{const e=Date.now();return()=>Date.now()-e<=o}}const Ow=class Ow{constructor(){this._searchCanceledBrand=void 0}};Ow.INSTANCE=new Ow;let Xa=Ow;function Kb(o){return o instanceof Xa?null:o}class iX extends z{constructor(e){super(),this.textModel=e,this.colorProvider=new o9,this.onDidChangeEmitter=new A,this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=e.getOptions().bracketPairColorizationOptions,this._register(e.bracketPairs.onDidChange(t=>{this.onDidChangeEmitter.fire()}))}handleDidChangeOptions(e){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(e,t,i,n){return n?[]:t===void 0?[]:this.colorizationOptions.enabled?this.textModel.bracketPairs.getBracketsInRange(e,!0).map(r=>({id:`bracket${r.range.toString()}-${r.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(r,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:r.range})).toArray():[]}getAllDecorations(e,t){return e===void 0?[]:this.colorizationOptions.enabled?this.getDecorationsInRange(new I(1,1,this.textModel.getLineCount(),1),e,t):[]}}class o9{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(e,t){return e.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(t?e.nestingLevelOfEqualBracketType:e.nestingLevel)}getInlineClassNameOfLevel(e){return`bracket-highlighting-${e%30}`}}Sr((o,e)=>{const t=[K7,j7,q7,G7,Z7,Y7],i=new o9;e.addRule(`.monaco-editor .${i.unexpectedClosingBracketClassName} { color: ${o.getColor(mQ)}; }`);const n=t.map(s=>o.getColor(s)).filter(s=>!!s).filter(s=>!s.isTransparent());for(let s=0;s<30;s++){const r=n[s%n.length];e.addRule(`.monaco-editor .${i.getInlineClassNameOfLevel(s)} { color: ${r}; }`)}});function jb(o){return o.replace(/\n/g,"\\n").replace(/\r/g,"\\r")}class Ki{get oldLength(){return this.oldText.length}get oldEnd(){return this.oldPosition+this.oldText.length}get newLength(){return this.newText.length}get newEnd(){return this.newPosition+this.newText.length}constructor(e,t,i,n){this.oldPosition=e,this.oldText=t,this.newPosition=i,this.newText=n}toString(){return this.oldText.length===0?`(insert@${this.oldPosition} "${jb(this.newText)}")`:this.newText.length===0?`(delete@${this.oldPosition} "${jb(this.oldText)}")`:`(replace@${this.oldPosition} "${jb(this.oldText)}" with "${jb(this.newText)}")`}static _writeStringSize(e){return 4+2*e.length}static _writeString(e,t,i){const n=t.length;er(e,n,i),i+=4;for(let s=0;s0&&(this.changes=nX(this.changes,t)),this.afterEOL=i,this.afterVersionId=n,this.afterCursorState=s}static _writeSelectionsSize(e){return 4+16*(e?e.length:0)}static _writeSelections(e,t,i){if(er(e,t?t.length:0,i),i+=4,t)for(const n of t)er(e,n.selectionStartLineNumber,i),i+=4,er(e,n.selectionStartColumn,i),i+=4,er(e,n.positionLineNumber,i),i+=4,er(e,n.positionColumn,i),i+=4;return i}static _readSelections(e,t,i){const n=Jo(e,t);t+=4;for(let s=0;st.toString()).join(", ")}matchesResource(e){return(ve.isUri(this.model)?this.model:this.model.uri).toString()===e.toString()}setModel(e){this.model=e}canAppend(e){return this.model===e&&this._data instanceof xi}append(e,t,i,n,s){this._data instanceof xi&&this._data.append(e,t,i,n,s)}close(){this._data instanceof xi&&(this._data=this._data.serialize())}open(){this._data instanceof xi||(this._data=xi.deserialize(this._data))}undo(){if(ve.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof xi&&(this._data=this._data.serialize());const e=xi.deserialize(this._data);this.model._applyUndo(e.changes,e.beforeEOL,e.beforeVersionId,e.beforeCursorState)}redo(){if(ve.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof xi&&(this._data=this._data.serialize());const e=xi.deserialize(this._data);this.model._applyRedo(e.changes,e.afterEOL,e.afterVersionId,e.afterCursorState)}heapSize(){return this._data instanceof xi&&(this._data=this._data.serialize()),this._data.byteLength+168}}class sX{get resources(){return this._editStackElementsArr.map(e=>e.resource)}constructor(e,t,i){this.label=e,this.code=t,this.type=1,this._isOpen=!0,this._editStackElementsArr=i.slice(0),this._editStackElementsMap=new Map;for(const n of this._editStackElementsArr){const s=Mu(n.resource);this._editStackElementsMap.set(s,n)}this._delegate=null}prepareUndoRedo(){if(this._delegate)return this._delegate.prepareUndoRedo(this)}matchesResource(e){const t=Mu(e);return this._editStackElementsMap.has(t)}setModel(e){const t=Mu(ve.isUri(e)?e:e.uri);this._editStackElementsMap.has(t)&&this._editStackElementsMap.get(t).setModel(e)}canAppend(e){if(!this._isOpen)return!1;const t=Mu(e.uri);return this._editStackElementsMap.has(t)?this._editStackElementsMap.get(t).canAppend(e):!1}append(e,t,i,n,s){const r=Mu(e.uri);this._editStackElementsMap.get(r).append(e,t,i,n,s)}close(){this._isOpen=!1}open(){}undo(){this._isOpen=!1;for(const e of this._editStackElementsArr)e.undo()}redo(){for(const e of this._editStackElementsArr)e.redo()}heapSize(e){const t=Mu(e);return this._editStackElementsMap.has(t)?this._editStackElementsMap.get(t).heapSize():0}split(){return this._editStackElementsArr}toString(){const e=[];for(const t of this._editStackElementsArr)e.push(`${Fo(t.resource)}: ${t}`);return`{${e.join(", ")}}`}}function SD(o){return o.getEOL()===` -`?0:1}function Ja(o){return o?o instanceof r9||o instanceof sX:!1}class l2{constructor(e,t){this._model=e,this._undoRedoService=t}pushStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);Ja(e)&&e.close()}popStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);Ja(e)&&e.open()}clear(){this._undoRedoService.removeElements(this._model.uri)}_getOrCreateEditStackElement(e,t){const i=this._undoRedoService.getLastElement(this._model.uri);if(Ja(i)&&i.canAppend(this._model))return i;const n=new r9(m("edit","Typing"),"undoredo.textBufferEdit",this._model,e);return this._undoRedoService.pushElement(n,t),n}pushEOL(e){const t=this._getOrCreateEditStackElement(null,void 0);this._model.setEOL(e),t.append(this._model,[],SD(this._model),this._model.getAlternativeVersionId(),null)}pushEditOperation(e,t,i,n){const s=this._getOrCreateEditStackElement(e,n),r=this._model.applyEdits(t,!0),a=l2._computeCursorState(i,r),l=r.map((c,d)=>({index:d,textChange:c.textChange}));return l.sort((c,d)=>c.textChange.oldPosition===d.textChange.oldPosition?c.index-d.index:c.textChange.oldPosition-d.textChange.oldPosition),s.append(this._model,l.map(c=>c.textChange),SD(this._model),this._model.getAlternativeVersionId(),a),a}static _computeCursorState(e,t){try{return e?e(t):null}catch(i){return Ze(i),null}}}class a9 extends z{constructor(){super(...arguments),this._isDisposed=!1}dispose(){super.dispose(),this._isDisposed=!0}assertNotDisposed(){if(this._isDisposed)throw new Error("TextModelPart is disposed!")}}function l9(o,e){let t=0,i=0;const n=o.length;for(;in)throw new nt("Illegal value for lineNumber");const s=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,r=!!(s&&s.offSide);let a=-2,l=-1,c=-2,d=-1;const h=L=>{if(a!==-1&&(a===-2||a>L-1)){a=-1,l=-1;for(let E=L-2;E>=0;E--){const N=this._computeIndentLevel(E);if(N>=0){a=E,l=N;break}}}if(c===-2){c=-1,d=-1;for(let E=L;E=0){c=E,d=N;break}}}};let u=-2,f=-1,g=-2,p=-1;const _=L=>{if(u===-2){u=-1,f=-1;for(let E=L-2;E>=0;E--){const N=this._computeIndentLevel(E);if(N>=0){u=E,f=N;break}}}if(g!==-1&&(g===-2||g=0){g=E,p=N;break}}}};let b=0,C=!0,w=0,v=!0,y=0,x=0;for(let L=0;C||v;L++){const E=e-L,N=e+L;L>1&&(E<1||E1&&(N>n||N>i)&&(v=!1),L>5e4&&(C=!1,v=!1);let H=-1;if(C&&E>=1){const W=this._computeIndentLevel(E-1);W>=0?(c=E-1,d=W,H=Math.ceil(W/this.textModel.getOptions().indentSize)):(h(E),H=this._getIndentLevelForWhitespaceLine(r,l,d))}let F=-1;if(v&&N<=n){const W=this._computeIndentLevel(N-1);W>=0?(u=N-1,f=W,F=Math.ceil(W/this.textModel.getOptions().indentSize)):(_(N),F=this._getIndentLevelForWhitespaceLine(r,f,p))}if(L===0){x=H;continue}if(L===1){if(N<=n&&F>=0&&x+1===F){C=!1,b=N,w=N,y=F;continue}if(E>=1&&H>=0&&H-1===x){v=!1,b=E,w=E,y=H;continue}if(b=e,w=e,y=x,y===0)return{startLineNumber:b,endLineNumber:w,indent:y}}C&&(H>=y?b=E:C=!1),v&&(F>=y?w=N:v=!1)}return{startLineNumber:b,endLineNumber:w,indent:y}}getLinesBracketGuides(e,t,i,n){const s=[];for(let h=e;h<=t;h++)s.push([]);const r=!0,a=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new I(e,1,t,this.textModel.getLineMaxColumn(t))).toArray();let l;if(i&&a.length>0){const h=(e<=i.lineNumber&&i.lineNumber<=t?a:this.textModel.bracketPairs.getBracketPairsInRange(I.fromPositions(i)).toArray()).filter(u=>I.strictContainsPosition(u.range,i));l=xC(h,u=>r)?.range}const c=this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType,d=new c9;for(const h of a){if(!h.closingBracketRange)continue;const u=l&&h.range.equalsRange(l);if(!u&&!n.includeInactive)continue;const f=d.getInlineClassName(h.nestingLevel,h.nestingLevelOfEqualBracketType,c)+(n.highlightActive&&u?" "+d.activeClassName:""),g=h.openingBracketRange.getStartPosition(),p=h.closingBracketRange.getStartPosition(),_=n.horizontalGuides===eh.Enabled||n.horizontalGuides===eh.EnabledForActive&&u;if(h.range.startLineNumber===h.range.endLineNumber){_&&s[h.range.startLineNumber-e].push(new Kd(-1,h.openingBracketRange.getEndPosition().column,f,new tp(!1,p.column),-1,-1));continue}const b=this.getVisibleColumnFromPosition(p),C=this.getVisibleColumnFromPosition(h.openingBracketRange.getStartPosition()),w=Math.min(C,b,h.minVisibleColumnIndentation+1);let v=!1;zn(this.textModel.getLineContent(h.closingBracketRange.startLineNumber))=e&&C>w&&s[g.lineNumber-e].push(new Kd(w,-1,f,new tp(!1,g.column),-1,-1)),p.lineNumber<=t&&b>w&&s[p.lineNumber-e].push(new Kd(w,-1,f,new tp(!v,p.column),-1,-1)))}for(const h of s)h.sort((u,f)=>u.visibleColumn-f.visibleColumn);return s}getVisibleColumnFromPosition(e){return _i.visibleColumnFromColumn(this.textModel.getLineContent(e.lineNumber),e.column,this.textModel.getOptions().tabSize)+1}getLinesIndentGuides(e,t){this.assertNotDisposed();const i=this.textModel.getLineCount();if(e<1||e>i)throw new Error("Illegal value for startLineNumber");if(t<1||t>i)throw new Error("Illegal value for endLineNumber");const n=this.textModel.getOptions(),s=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,r=!!(s&&s.offSide),a=new Array(t-e+1);let l=-2,c=-1,d=-2,h=-1;for(let u=e;u<=t;u++){const f=u-e,g=this._computeIndentLevel(u-1);if(g>=0){l=u-1,c=g,a[f]=Math.ceil(g/n.indentSize);continue}if(l===-2){l=-1,c=-1;for(let p=u-2;p>=0;p--){const _=this._computeIndentLevel(p);if(_>=0){l=p,c=_;break}}}if(d!==-1&&(d===-2||d=0){d=p,h=_;break}}}a[f]=this._getIndentLevelForWhitespaceLine(r,c,h)}return a}_getIndentLevelForWhitespaceLine(e,t,i){const n=this.textModel.getOptions();return t===-1||i===-1?0:t0&&a>0||l>0&&c>0)return;const d=Math.abs(a-c),h=Math.abs(r-l);if(d===0){n.spacesDiff=h,h>0&&0<=l-1&&l-10?n++:v>1&&s++,aX(r,a,_,w,h),h.looksLikeAlignment&&!(t&&e===h.spacesDiff)))continue;const x=h.spacesDiff;x<=c&&d[x]++,r=_,a=w}let u=t;n!==s&&(u=n{const _=d[p];_>g&&(g=_,f=p)}),f===4&&d[4]>0&&d[2]>0&&d[2]>=d[4]/2&&(f=2)}return{insertSpaces:u,tabSize:f}}function Fn(o){return(o.metadata&1)>>>0}function It(o,e){o.metadata=o.metadata&254|e<<0}function Zi(o){return(o.metadata&2)>>>1===1}function Lt(o,e){o.metadata=o.metadata&253|(e?1:0)<<1}function d9(o){return(o.metadata&4)>>>2===1}function DP(o,e){o.metadata=o.metadata&251|(e?1:0)<<2}function h9(o){return(o.metadata&64)>>>6===1}function IP(o,e){o.metadata=o.metadata&191|(e?1:0)<<6}function lX(o){return(o.metadata&24)>>>3}function EP(o,e){o.metadata=o.metadata&231|e<<3}function cX(o){return(o.metadata&32)>>>5===1}function NP(o,e){o.metadata=o.metadata&223|(e?1:0)<<5}class u9{constructor(e,t,i){this.metadata=0,this.parent=this,this.left=this,this.right=this,It(this,1),this.start=t,this.end=i,this.delta=0,this.maxEnd=i,this.id=e,this.ownerId=0,this.options=null,DP(this,!1),IP(this,!1),EP(this,1),NP(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=null,Lt(this,!1)}reset(e,t,i,n){this.start=t,this.end=i,this.maxEnd=i,this.cachedVersionId=e,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=n}setOptions(e){this.options=e;const t=this.options.className;DP(this,t==="squiggly-error"||t==="squiggly-warning"||t==="squiggly-info"),IP(this,this.options.glyphMarginClassName!==null),EP(this,this.options.stickiness),NP(this,this.options.collapseOnReplaceEdit)}setCachedOffsets(e,t,i){this.cachedVersionId!==i&&(this.range=null),this.cachedVersionId=i,this.cachedAbsoluteStart=e,this.cachedAbsoluteEnd=t}detach(){this.parent=null,this.left=null,this.right=null}}const Be=new u9(null,0,0);Be.parent=Be;Be.left=Be;Be.right=Be;It(Be,0);class BS{constructor(){this.root=Be,this.requestNormalizeDelta=!1}intervalSearch(e,t,i,n,s,r){return this.root===Be?[]:_X(this,e,t,i,n,s,r)}search(e,t,i,n){return this.root===Be?[]:pX(this,e,t,i,n)}collectNodesFromOwner(e){return gX(this,e)}collectNodesPostOrder(){return mX(this)}insert(e){TP(this,e),this._normalizeDeltaIfNecessary()}delete(e){MP(this,e),this._normalizeDeltaIfNecessary()}resolveNode(e,t){const i=e;let n=0;for(;e!==this.root;)e===e.parent.right&&(n+=e.parent.delta),e=e.parent;const s=i.start+n,r=i.end+n;i.setCachedOffsets(s,r,t)}acceptReplace(e,t,i,n){const s=uX(this,e,e+t);for(let r=0,a=s.length;rt||i===1?!1:i===2?!0:e}function hX(o,e,t,i,n){const s=lX(o),r=s===0||s===2,a=s===1||s===2,l=t-e,c=i,d=Math.min(l,c),h=o.start;let u=!1;const f=o.end;let g=!1;e<=h&&f<=t&&cX(o)&&(o.start=e,u=!0,o.end=e,g=!0);{const _=n?1:l>0?2:0;!u&&Ru(h,r,e,_)&&(u=!0),!g&&Ru(f,a,e,_)&&(g=!0)}if(d>0&&!n){const _=l>c?2:0;!u&&Ru(h,r,e+d,_)&&(u=!0),!g&&Ru(f,a,e+d,_)&&(g=!0)}{const _=n?1:0;!u&&Ru(h,r,t,_)&&(o.start=e+c,u=!0),!g&&Ru(f,a,t,_)&&(o.end=e+c,g=!0)}const p=c-l;u||(o.start=Math.max(0,h+p)),g||(o.end=Math.max(0,f+p)),o.start>o.end&&(o.end=o.start)}function uX(o,e,t){let i=o.root,n=0,s=0,r=0,a=0;const l=[];let c=0;for(;i!==Be;){if(Zi(i)){Lt(i.left,!1),Lt(i.right,!1),i===i.parent.right&&(n-=i.parent.delta),i=i.parent;continue}if(!Zi(i.left)){if(s=n+i.maxEnd,st){Lt(i,!0);continue}if(a=n+i.end,a>=e&&(i.setCachedOffsets(r,a,0),l[c++]=i),Lt(i,!0),i.right!==Be&&!Zi(i.right)){n+=i.delta,i=i.right;continue}}return Lt(o.root,!1),l}function fX(o,e,t,i){let n=o.root,s=0,r=0,a=0;const l=i-(t-e);for(;n!==Be;){if(Zi(n)){Lt(n.left,!1),Lt(n.right,!1),n===n.parent.right&&(s-=n.parent.delta),Fc(n),n=n.parent;continue}if(!Zi(n.left)){if(r=s+n.maxEnd,rt){n.start+=l,n.end+=l,n.delta+=l,(n.delta<-1073741824||n.delta>1073741824)&&(o.requestNormalizeDelta=!0),Lt(n,!0);continue}if(Lt(n,!0),n.right!==Be&&!Zi(n.right)){s+=n.delta,n=n.right;continue}}Lt(o.root,!1)}function gX(o,e){let t=o.root;const i=[];let n=0;for(;t!==Be;){if(Zi(t)){Lt(t.left,!1),Lt(t.right,!1),t=t.parent;continue}if(t.left!==Be&&!Zi(t.left)){t=t.left;continue}if(t.ownerId===e&&(i[n++]=t),Lt(t,!0),t.right!==Be&&!Zi(t.right)){t=t.right;continue}}return Lt(o.root,!1),i}function mX(o){let e=o.root;const t=[];let i=0;for(;e!==Be;){if(Zi(e)){Lt(e.left,!1),Lt(e.right,!1),e=e.parent;continue}if(e.left!==Be&&!Zi(e.left)){e=e.left;continue}if(e.right!==Be&&!Zi(e.right)){e=e.right;continue}t[i++]=e,Lt(e,!0)}return Lt(o.root,!1),t}function pX(o,e,t,i,n){let s=o.root,r=0,a=0,l=0;const c=[];let d=0;for(;s!==Be;){if(Zi(s)){Lt(s.left,!1),Lt(s.right,!1),s===s.parent.right&&(r-=s.parent.delta),s=s.parent;continue}if(s.left!==Be&&!Zi(s.left)){s=s.left;continue}a=r+s.start,l=r+s.end,s.setCachedOffsets(a,l,i);let h=!0;if(e&&s.ownerId&&s.ownerId!==e&&(h=!1),t&&d9(s)&&(h=!1),n&&!h9(s)&&(h=!1),h&&(c[d++]=s),Lt(s,!0),s.right!==Be&&!Zi(s.right)){r+=s.delta,s=s.right;continue}}return Lt(o.root,!1),c}function _X(o,e,t,i,n,s,r){let a=o.root,l=0,c=0,d=0,h=0;const u=[];let f=0;for(;a!==Be;){if(Zi(a)){Lt(a.left,!1),Lt(a.right,!1),a===a.parent.right&&(l-=a.parent.delta),a=a.parent;continue}if(!Zi(a.left)){if(c=l+a.maxEnd,ct){Lt(a,!0);continue}if(h=l+a.end,h>=e){a.setCachedOffsets(d,h,s);let g=!0;i&&a.ownerId&&a.ownerId!==i&&(g=!1),n&&d9(a)&&(g=!1),r&&!h9(a)&&(g=!1),g&&(u[f++]=a)}if(Lt(a,!0),a.right!==Be&&!Zi(a.right)){l+=a.delta,a=a.right;continue}}return Lt(o.root,!1),u}function TP(o,e){if(o.root===Be)return e.parent=Be,e.left=Be,e.right=Be,It(e,0),o.root=e,o.root;bX(o,e),Kl(e.parent);let t=e;for(;t!==o.root&&Fn(t.parent)===1;)if(t.parent===t.parent.parent.left){const i=t.parent.parent.right;Fn(i)===1?(It(t.parent,0),It(i,0),It(t.parent.parent,1),t=t.parent.parent):(t===t.parent.right&&(t=t.parent,ip(o,t)),It(t.parent,0),It(t.parent.parent,1),np(o,t.parent.parent))}else{const i=t.parent.parent.left;Fn(i)===1?(It(t.parent,0),It(i,0),It(t.parent.parent,1),t=t.parent.parent):(t===t.parent.left&&(t=t.parent,np(o,t)),It(t.parent,0),It(t.parent.parent,1),ip(o,t.parent.parent))}return It(o.root,0),e}function bX(o,e){let t=0,i=o.root;const n=e.start,s=e.end;for(;;)if(vX(n,s,i.start+t,i.end+t)<0)if(i.left===Be){e.start-=t,e.end-=t,e.maxEnd-=t,i.left=e;break}else i=i.left;else if(i.right===Be){e.start-=t+i.delta,e.end-=t+i.delta,e.maxEnd-=t+i.delta,i.right=e;break}else t+=i.delta,i=i.right;e.parent=i,e.left=Be,e.right=Be,It(e,1)}function MP(o,e){let t,i;if(e.left===Be?(t=e.right,i=e,t.delta+=e.delta,(t.delta<-1073741824||t.delta>1073741824)&&(o.requestNormalizeDelta=!0),t.start+=e.delta,t.end+=e.delta):e.right===Be?(t=e.left,i=e):(i=CX(e.right),t=i.right,t.start+=i.delta,t.end+=i.delta,t.delta+=i.delta,(t.delta<-1073741824||t.delta>1073741824)&&(o.requestNormalizeDelta=!0),i.start+=e.delta,i.end+=e.delta,i.delta=e.delta,(i.delta<-1073741824||i.delta>1073741824)&&(o.requestNormalizeDelta=!0)),i===o.root){o.root=t,It(t,0),e.detach(),WS(),Fc(t),o.root.parent=Be;return}const n=Fn(i)===1;if(i===i.parent.left?i.parent.left=t:i.parent.right=t,i===e?t.parent=i.parent:(i.parent===e?t.parent=i:t.parent=i.parent,i.left=e.left,i.right=e.right,i.parent=e.parent,It(i,Fn(e)),e===o.root?o.root=i:e===e.parent.left?e.parent.left=i:e.parent.right=i,i.left!==Be&&(i.left.parent=i),i.right!==Be&&(i.right.parent=i)),e.detach(),n){Kl(t.parent),i!==e&&(Kl(i),Kl(i.parent)),WS();return}Kl(t),Kl(t.parent),i!==e&&(Kl(i),Kl(i.parent));let s;for(;t!==o.root&&Fn(t)===0;)t===t.parent.left?(s=t.parent.right,Fn(s)===1&&(It(s,0),It(t.parent,1),ip(o,t.parent),s=t.parent.right),Fn(s.left)===0&&Fn(s.right)===0?(It(s,1),t=t.parent):(Fn(s.right)===0&&(It(s.left,0),It(s,1),np(o,s),s=t.parent.right),It(s,Fn(t.parent)),It(t.parent,0),It(s.right,0),ip(o,t.parent),t=o.root)):(s=t.parent.left,Fn(s)===1&&(It(s,0),It(t.parent,1),np(o,t.parent),s=t.parent.left),Fn(s.left)===0&&Fn(s.right)===0?(It(s,1),t=t.parent):(Fn(s.left)===0&&(It(s.right,0),It(s,1),ip(o,s),s=t.parent.left),It(s,Fn(t.parent)),It(t.parent,0),It(s.left,0),np(o,t.parent),t=o.root));It(t,0),WS()}function CX(o){for(;o.left!==Be;)o=o.left;return o}function WS(){Be.parent=Be,Be.delta=0,Be.start=0,Be.end=0}function ip(o,e){const t=e.right;t.delta+=e.delta,(t.delta<-1073741824||t.delta>1073741824)&&(o.requestNormalizeDelta=!0),t.start+=e.delta,t.end+=e.delta,e.right=t.left,t.left!==Be&&(t.left.parent=e),t.parent=e.parent,e.parent===Be?o.root=t:e===e.parent.left?e.parent.left=t:e.parent.right=t,t.left=e,e.parent=t,Fc(e),Fc(t)}function np(o,e){const t=e.left;e.delta-=t.delta,(e.delta<-1073741824||e.delta>1073741824)&&(o.requestNormalizeDelta=!0),e.start-=t.delta,e.end-=t.delta,e.left=t.right,t.right!==Be&&(t.right.parent=e),t.parent=e.parent,e.parent===Be?o.root=t:e===e.parent.right?e.parent.right=t:e.parent.left=t,t.right=e,e.parent=t,Fc(e),Fc(t)}function f9(o){let e=o.end;if(o.left!==Be){const t=o.left.maxEnd;t>e&&(e=t)}if(o.right!==Be){const t=o.right.maxEnd+o.delta;t>e&&(e=t)}return e}function Fc(o){o.maxEnd=f9(o)}function Kl(o){for(;o!==Be;){const e=f9(o);if(o.maxEnd===e)return;o.maxEnd=e,o=o.parent}}function vX(o,e,t,i){return o===t?e-i:o-t}class LD{constructor(e,t){this.piece=e,this.color=t,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==Le)return c2(this.right);let e=this;for(;e.parent!==Le&&e.parent.left!==e;)e=e.parent;return e.parent===Le?Le:e.parent}prev(){if(this.left!==Le)return g9(this.left);let e=this;for(;e.parent!==Le&&e.parent.right!==e;)e=e.parent;return e.parent===Le?Le:e.parent}detach(){this.parent=null,this.left=null,this.right=null}}const Le=new LD(null,0);Le.parent=Le;Le.left=Le;Le.right=Le;Le.color=0;function c2(o){for(;o.left!==Le;)o=o.left;return o}function g9(o){for(;o.right!==Le;)o=o.right;return o}function d2(o){return o===Le?0:o.size_left+o.piece.length+d2(o.right)}function h2(o){return o===Le?0:o.lf_left+o.piece.lineFeedCnt+h2(o.right)}function HS(){Le.parent=Le}function sp(o,e){const t=e.right;t.size_left+=e.size_left+(e.piece?e.piece.length:0),t.lf_left+=e.lf_left+(e.piece?e.piece.lineFeedCnt:0),e.right=t.left,t.left!==Le&&(t.left.parent=e),t.parent=e.parent,e.parent===Le?o.root=t:e.parent.left===e?e.parent.left=t:e.parent.right=t,t.left=e,e.parent=t}function op(o,e){const t=e.left;e.left=t.right,t.right!==Le&&(t.right.parent=e),t.parent=e.parent,e.size_left-=t.size_left+(t.piece?t.piece.length:0),e.lf_left-=t.lf_left+(t.piece?t.piece.lineFeedCnt:0),e.parent===Le?o.root=t:e===e.parent.right?e.parent.right=t:e.parent.left=t,t.right=e,e.parent=t}function qb(o,e){let t,i;if(e.left===Le?(i=e,t=i.right):e.right===Le?(i=e,t=i.left):(i=c2(e.right),t=i.right),i===o.root){o.root=t,t.color=0,e.detach(),HS(),o.root.parent=Le;return}const n=i.color===1;if(i===i.parent.left?i.parent.left=t:i.parent.right=t,i===e?(t.parent=i.parent,Pm(o,t)):(i.parent===e?t.parent=i:t.parent=i.parent,Pm(o,t),i.left=e.left,i.right=e.right,i.parent=e.parent,i.color=e.color,e===o.root?o.root=i:e===e.parent.left?e.parent.left=i:e.parent.right=i,i.left!==Le&&(i.left.parent=i),i.right!==Le&&(i.right.parent=i),i.size_left=e.size_left,i.lf_left=e.lf_left,Pm(o,i)),e.detach(),t.parent.left===t){const r=d2(t),a=h2(t);if(r!==t.parent.size_left||a!==t.parent.lf_left){const l=r-t.parent.size_left,c=a-t.parent.lf_left;t.parent.size_left=r,t.parent.lf_left=a,Ha(o,t.parent,l,c)}}if(Pm(o,t.parent),n){HS();return}let s;for(;t!==o.root&&t.color===0;)t===t.parent.left?(s=t.parent.right,s.color===1&&(s.color=0,t.parent.color=1,sp(o,t.parent),s=t.parent.right),s.left.color===0&&s.right.color===0?(s.color=1,t=t.parent):(s.right.color===0&&(s.left.color=0,s.color=1,op(o,s),s=t.parent.right),s.color=t.parent.color,t.parent.color=0,s.right.color=0,sp(o,t.parent),t=o.root)):(s=t.parent.left,s.color===1&&(s.color=0,t.parent.color=1,op(o,t.parent),s=t.parent.left),s.left.color===0&&s.right.color===0?(s.color=1,t=t.parent):(s.left.color===0&&(s.right.color=0,s.color=1,sp(o,s),s=t.parent.left),s.color=t.parent.color,t.parent.color=0,s.left.color=0,op(o,t.parent),t=o.root));t.color=0,HS()}function RP(o,e){for(Pm(o,e);e!==o.root&&e.parent.color===1;)if(e.parent===e.parent.parent.left){const t=e.parent.parent.right;t.color===1?(e.parent.color=0,t.color=0,e.parent.parent.color=1,e=e.parent.parent):(e===e.parent.right&&(e=e.parent,sp(o,e)),e.parent.color=0,e.parent.parent.color=1,op(o,e.parent.parent))}else{const t=e.parent.parent.left;t.color===1?(e.parent.color=0,t.color=0,e.parent.parent.color=1,e=e.parent.parent):(e===e.parent.left&&(e=e.parent,op(o,e)),e.parent.color=0,e.parent.parent.color=1,sp(o,e.parent.parent))}o.root.color=0}function Ha(o,e,t,i){for(;e!==o.root&&e!==Le;)e.parent.left===e&&(e.parent.size_left+=t,e.parent.lf_left+=i),e=e.parent}function Pm(o,e){let t=0,i=0;if(e!==o.root){for(;e!==o.root&&e===e.parent.right;)e=e.parent;if(e!==o.root)for(e=e.parent,t=d2(e.left)-e.size_left,i=h2(e.left)-e.lf_left,e.size_left+=t,e.lf_left+=i;e!==o.root&&(t!==0||i!==0);)e.parent.left===e&&(e.parent.size_left+=t,e.parent.lf_left+=i),e=e.parent}}const Ra=65535;function m9(o){let e;return o[o.length-1]<65536?e=new Uint16Array(o.length):e=new Uint32Array(o.length),e.set(o,0),e}class wX{constructor(e,t,i,n,s){this.lineStarts=e,this.cr=t,this.lf=i,this.crlf=n,this.isBasicASCII=s}}function Va(o,e=!0){const t=[0];let i=1;for(let n=0,s=o.length;n126)&&(r=!1)}const a=new wX(m9(o),i,n,s,r);return o.length=0,a}class Xn{constructor(e,t,i,n,s){this.bufferIndex=e,this.start=t,this.end=i,this.lineFeedCnt=n,this.length=s}}class Ld{constructor(e,t){this.buffer=e,this.lineStarts=t}}class SX{constructor(e,t){this._pieces=[],this._tree=e,this._BOM=t,this._index=0,e.root!==Le&&e.iterate(e.root,i=>(i!==Le&&this._pieces.push(i.piece),!0))}read(){return this._pieces.length===0?this._index===0?(this._index++,this._BOM):null:this._index>this._pieces.length-1?null:this._index===0?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class LX{constructor(e){this._limit=e,this._cache=[]}get(e){for(let t=this._cache.length-1;t>=0;t--){const i=this._cache[t];if(i.nodeStartOffset<=e&&i.nodeStartOffset+i.node.piece.length>=e)return i}return null}get2(e){for(let t=this._cache.length-1;t>=0;t--){const i=this._cache[t];if(i.nodeStartLineNumber&&i.nodeStartLineNumber=e)return i}return null}set(e){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(e)}validate(e){let t=!1;const i=this._cache;for(let n=0;n=e){i[n]=null,t=!0;continue}}if(t){const n=[];for(const s of i)s!==null&&n.push(s);this._cache=n}}}class xX{constructor(e,t,i){this.create(e,t,i)}create(e,t,i){this._buffers=[new Ld("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=Le,this._lineCnt=1,this._length=0,this._EOL=t,this._EOLLength=t.length,this._EOLNormalized=i;let n=null;for(let s=0,r=e.length;s0){e[s].lineStarts||(e[s].lineStarts=Va(e[s].buffer));const a=new Xn(s+1,{line:0,column:0},{line:e[s].lineStarts.length-1,column:e[s].buffer.length-e[s].lineStarts[e[s].lineStarts.length-1]},e[s].lineStarts.length-1,e[s].buffer.length);this._buffers.push(e[s]),n=this.rbInsertRight(n,a)}this._searchCache=new LX(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(e){const t=Ra,i=t-Math.floor(t/3),n=i*2;let s="",r=0;const a=[];if(this.iterate(this.root,l=>{const c=this.getNodeContent(l),d=c.length;if(r<=i||r+d0){const l=s.replace(/\r\n|\r|\n/g,e);a.push(new Ld(l,Va(l)))}this.create(a,e,!0)}getEOL(){return this._EOL}setEOL(e){this._EOL=e,this._EOLLength=this._EOL.length,this.normalizeEOL(e)}createSnapshot(e){return new SX(this,e)}getOffsetAt(e,t){let i=0,n=this.root;for(;n!==Le;)if(n.left!==Le&&n.lf_left+1>=e)n=n.left;else if(n.lf_left+n.piece.lineFeedCnt+1>=e){i+=n.size_left;const s=this.getAccumulatedValue(n,e-n.lf_left-2);return i+=s+t-1}else e-=n.lf_left+n.piece.lineFeedCnt,i+=n.size_left+n.piece.length,n=n.right;return i}getPositionAt(e){e=Math.floor(e),e=Math.max(0,e);let t=this.root,i=0;const n=e;for(;t!==Le;)if(t.size_left!==0&&t.size_left>=e)t=t.left;else if(t.size_left+t.piece.length>=e){const s=this.getIndexOf(t,e-t.size_left);if(i+=t.lf_left+s.index,s.index===0){const r=this.getOffsetAt(i+1,1),a=n-r;return new P(i+1,a+1)}return new P(i+1,s.remainder+1)}else if(e-=t.size_left+t.piece.length,i+=t.lf_left+t.piece.lineFeedCnt,t.right===Le){const s=this.getOffsetAt(i+1,1),r=n-e-s;return new P(i+1,r+1)}else t=t.right;return new P(1,1)}getValueInRange(e,t){if(e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn)return"";const i=this.nodeAt2(e.startLineNumber,e.startColumn),n=this.nodeAt2(e.endLineNumber,e.endColumn),s=this.getValueInRange2(i,n);return t?t!==this._EOL||!this._EOLNormalized?s.replace(/\r\n|\r|\n/g,t):t===this.getEOL()&&this._EOLNormalized?s:s.replace(/\r\n|\r|\n/g,t):s}getValueInRange2(e,t){if(e.node===t.node){const a=e.node,l=this._buffers[a.piece.bufferIndex].buffer,c=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start);return l.substring(c+e.remainder,c+t.remainder)}let i=e.node;const n=this._buffers[i.piece.bufferIndex].buffer,s=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);let r=n.substring(s+e.remainder,s+i.piece.length);for(i=i.next();i!==Le;){const a=this._buffers[i.piece.bufferIndex].buffer,l=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);if(i===t.node){r+=a.substring(l,l+t.remainder);break}else r+=a.substr(l,i.piece.length);i=i.next()}return r}getLinesContent(){const e=[];let t=0,i="",n=!1;return this.iterate(this.root,s=>{if(s===Le)return!0;const r=s.piece;let a=r.length;if(a===0)return!0;const l=this._buffers[r.bufferIndex].buffer,c=this._buffers[r.bufferIndex].lineStarts,d=r.start.line,h=r.end.line;let u=c[d]+r.start.column;if(n&&(l.charCodeAt(u)===10&&(u++,a--),e[t++]=i,i="",n=!1,a===0))return!0;if(d===h)return!this._EOLNormalized&&l.charCodeAt(u+a-1)===13?(n=!0,i+=l.substr(u,a-1)):i+=l.substr(u,a),!0;i+=this._EOLNormalized?l.substring(u,Math.max(u,c[d+1]-this._EOLLength)):l.substring(u,c[d+1]).replace(/(\r\n|\r|\n)$/,""),e[t++]=i;for(let f=d+1;fv+g,t.reset(0)):(C=u.buffer,w=v=>v,t.reset(g));do if(_=t.next(C),_){if(w(_.index)>=p)return d;this.positionInBuffer(e,w(_.index)-f,b);const v=this.getLineFeedCnt(e.piece.bufferIndex,s,b),y=b.line===s.line?b.column-s.column+n:b.column+1,x=y+_[0].length;if(h[d++]=bd(new I(i+v,y,i+v,x),_,l),w(_.index)+_[0].length>=p||d>=c)return d}while(_);return d}findMatchesLineByLine(e,t,i,n){const s=[];let r=0;const a=new ef(t.wordSeparators,t.regex);let l=this.nodeAt2(e.startLineNumber,e.startColumn);if(l===null)return[];const c=this.nodeAt2(e.endLineNumber,e.endColumn);if(c===null)return[];let d=this.positionInBuffer(l.node,l.remainder);const h=this.positionInBuffer(c.node,c.remainder);if(l.node===c.node)return this.findMatchesInNode(l.node,a,e.startLineNumber,e.startColumn,d,h,t,i,n,r,s),s;let u=e.startLineNumber,f=l.node;for(;f!==c.node;){const p=this.getLineFeedCnt(f.piece.bufferIndex,d,f.piece.end);if(p>=1){const b=this._buffers[f.piece.bufferIndex].lineStarts,C=this.offsetInBuffer(f.piece.bufferIndex,f.piece.start),w=b[d.line+p],v=u===e.startLineNumber?e.startColumn:1;if(r=this.findMatchesInNode(f,a,u,v,d,this.positionInBuffer(f,w-C),t,i,n,r,s),r>=n)return s;u+=p}const _=u===e.startLineNumber?e.startColumn-1:0;if(u===e.endLineNumber){const b=this.getLineContent(u).substring(_,e.endColumn-1);return r=this._findMatchesInLine(t,a,b,e.endLineNumber,_,r,s,i,n),s}if(r=this._findMatchesInLine(t,a,this.getLineContent(u).substr(_),u,_,r,s,i,n),r>=n)return s;u++,l=this.nodeAt2(u,1),f=l.node,d=this.positionInBuffer(l.node,l.remainder)}if(u===e.endLineNumber){const p=u===e.startLineNumber?e.startColumn-1:0,_=this.getLineContent(u).substring(p,e.endColumn-1);return r=this._findMatchesInLine(t,a,_,e.endLineNumber,p,r,s,i,n),s}const g=u===e.startLineNumber?e.startColumn:1;return r=this.findMatchesInNode(c.node,a,u,g,d,h,t,i,n,r,s),s}_findMatchesInLine(e,t,i,n,s,r,a,l,c){const d=e.wordSeparators;if(!l&&e.simpleSearch){const u=e.simpleSearch,f=u.length,g=i.length;let p=-f;for(;(p=i.indexOf(u,p+f))!==-1;)if((!d||hT(d,i,g,p,f))&&(a[r++]=new Qp(new I(n,p+1+s,n,p+1+f+s),null),r>=c))return r;return r}let h;t.reset(0);do if(h=t.next(i),h&&(a[r++]=bd(new I(n,h.index+1+s,n,h.index+1+h[0].length+s),h,l),r>=c))return r;while(h);return r}insert(e,t,i=!1){if(this._EOLNormalized=this._EOLNormalized&&i,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==Le){const{node:n,remainder:s,nodeStartOffset:r}=this.nodeAt(e),a=n.piece,l=a.bufferIndex,c=this.positionInBuffer(n,s);if(n.piece.bufferIndex===0&&a.end.line===this._lastChangeBufferPos.line&&a.end.column===this._lastChangeBufferPos.column&&r+a.length===e&&t.lengthe){const d=[];let h=new Xn(a.bufferIndex,c,a.end,this.getLineFeedCnt(a.bufferIndex,c,a.end),this.offsetInBuffer(l,a.end)-this.offsetInBuffer(l,c));if(this.shouldCheckCRLF()&&this.endWithCR(t)&&this.nodeCharCodeAt(n,s)===10){const p={line:h.start.line+1,column:0};h=new Xn(h.bufferIndex,p,h.end,this.getLineFeedCnt(h.bufferIndex,p,h.end),h.length-1),t+=` -`}if(this.shouldCheckCRLF()&&this.startWithLF(t))if(this.nodeCharCodeAt(n,s-1)===13){const p=this.positionInBuffer(n,s-1);this.deleteNodeTail(n,p),t="\r"+t,n.piece.length===0&&d.push(n)}else this.deleteNodeTail(n,c);else this.deleteNodeTail(n,c);const u=this.createNewPieces(t);h.length>0&&this.rbInsertRight(n,h);let f=n;for(let g=0;g=0;r--)s=this.rbInsertLeft(s,n[r]);this.validateCRLFWithPrevNode(s),this.deleteNodes(i)}insertContentToNodeRight(e,t){this.adjustCarriageReturnFromNext(e,t)&&(e+=` -`);const i=this.createNewPieces(e),n=this.rbInsertRight(t,i[0]);let s=n;for(let r=1;r=u)c=h+1;else break;return i?(i.line=h,i.column=l-f,null):{line:h,column:l-f}}getLineFeedCnt(e,t,i){if(i.column===0)return i.line-t.line;const n=this._buffers[e].lineStarts;if(i.line===n.length-1)return i.line-t.line;const s=n[i.line+1],r=n[i.line]+i.column;if(s>r+1)return i.line-t.line;const a=r-1;return this._buffers[e].buffer.charCodeAt(a)===13?i.line-t.line+1:i.line-t.line}offsetInBuffer(e,t){return this._buffers[e].lineStarts[t.line]+t.column}deleteNodes(e){for(let t=0;tRa){const d=[];for(;e.length>Ra;){const u=e.charCodeAt(Ra-1);let f;u===13||u>=55296&&u<=56319?(f=e.substring(0,Ra-1),e=e.substring(Ra-1)):(f=e.substring(0,Ra),e=e.substring(Ra));const g=Va(f);d.push(new Xn(this._buffers.length,{line:0,column:0},{line:g.length-1,column:f.length-g[g.length-1]},g.length-1,f.length)),this._buffers.push(new Ld(f,g))}const h=Va(e);return d.push(new Xn(this._buffers.length,{line:0,column:0},{line:h.length-1,column:e.length-h[h.length-1]},h.length-1,e.length)),this._buffers.push(new Ld(e,h)),d}let t=this._buffers[0].buffer.length;const i=Va(e,!1);let n=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===t&&t!==0&&this.startWithLF(e)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},n=this._lastChangeBufferPos;for(let d=0;d=e-1)i=i.left;else if(i.lf_left+i.piece.lineFeedCnt>e-1){const l=this.getAccumulatedValue(i,e-i.lf_left-2),c=this.getAccumulatedValue(i,e-i.lf_left-1),d=this._buffers[i.piece.bufferIndex].buffer,h=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return r+=i.size_left,this._searchCache.set({node:i,nodeStartOffset:r,nodeStartLineNumber:a-(e-1-i.lf_left)}),d.substring(h+l,h+c-t)}else if(i.lf_left+i.piece.lineFeedCnt===e-1){const l=this.getAccumulatedValue(i,e-i.lf_left-2),c=this._buffers[i.piece.bufferIndex].buffer,d=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);n=c.substring(d+l,d+i.piece.length);break}else e-=i.lf_left+i.piece.lineFeedCnt,r+=i.size_left+i.piece.length,i=i.right}for(i=i.next();i!==Le;){const r=this._buffers[i.piece.bufferIndex].buffer;if(i.piece.lineFeedCnt>0){const a=this.getAccumulatedValue(i,0),l=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return n+=r.substring(l,l+a-t),n}else{const a=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);n+=r.substr(a,i.piece.length)}i=i.next()}return n}computeBufferMetadata(){let e=this.root,t=1,i=0;for(;e!==Le;)t+=e.lf_left+e.piece.lineFeedCnt,i+=e.size_left+e.piece.length,e=e.right;this._lineCnt=t,this._length=i,this._searchCache.validate(this._length)}getIndexOf(e,t){const i=e.piece,n=this.positionInBuffer(e,t),s=n.line-i.start.line;if(this.offsetInBuffer(i.bufferIndex,i.end)-this.offsetInBuffer(i.bufferIndex,i.start)===t){const r=this.getLineFeedCnt(e.piece.bufferIndex,i.start,n);if(r!==s)return{index:r,remainder:0}}return{index:s,remainder:n.column}}getAccumulatedValue(e,t){if(t<0)return 0;const i=e.piece,n=this._buffers[i.bufferIndex].lineStarts,s=i.start.line+t+1;return s>i.end.line?n[i.end.line]+i.end.column-n[i.start.line]-i.start.column:n[s]-n[i.start.line]-i.start.column}deleteNodeTail(e,t){const i=e.piece,n=i.lineFeedCnt,s=this.offsetInBuffer(i.bufferIndex,i.end),r=t,a=this.offsetInBuffer(i.bufferIndex,r),l=this.getLineFeedCnt(i.bufferIndex,i.start,r),c=l-n,d=a-s,h=i.length+d;e.piece=new Xn(i.bufferIndex,i.start,r,l,h),Ha(this,e,d,c)}deleteNodeHead(e,t){const i=e.piece,n=i.lineFeedCnt,s=this.offsetInBuffer(i.bufferIndex,i.start),r=t,a=this.getLineFeedCnt(i.bufferIndex,r,i.end),l=this.offsetInBuffer(i.bufferIndex,r),c=a-n,d=s-l,h=i.length+d;e.piece=new Xn(i.bufferIndex,r,i.end,a,h),Ha(this,e,d,c)}shrinkNode(e,t,i){const n=e.piece,s=n.start,r=n.end,a=n.length,l=n.lineFeedCnt,c=t,d=this.getLineFeedCnt(n.bufferIndex,n.start,c),h=this.offsetInBuffer(n.bufferIndex,t)-this.offsetInBuffer(n.bufferIndex,s);e.piece=new Xn(n.bufferIndex,n.start,c,d,h),Ha(this,e,h-a,d-l);const u=new Xn(n.bufferIndex,i,r,this.getLineFeedCnt(n.bufferIndex,i,r),this.offsetInBuffer(n.bufferIndex,r)-this.offsetInBuffer(n.bufferIndex,i)),f=this.rbInsertRight(e,u);this.validateCRLFWithPrevNode(f)}appendToNode(e,t){this.adjustCarriageReturnFromNext(t,e)&&(t+=` -`);const i=this.shouldCheckCRLF()&&this.startWithLF(t)&&this.endWithCR(e),n=this._buffers[0].buffer.length;this._buffers[0].buffer+=t;const s=Va(t,!1);for(let f=0;fe)t=t.left;else if(t.size_left+t.piece.length>=e){n+=t.size_left;const s={node:t,remainder:e-t.size_left,nodeStartOffset:n};return this._searchCache.set(s),s}else e-=t.size_left+t.piece.length,n+=t.size_left+t.piece.length,t=t.right;return null}nodeAt2(e,t){let i=this.root,n=0;for(;i!==Le;)if(i.left!==Le&&i.lf_left>=e-1)i=i.left;else if(i.lf_left+i.piece.lineFeedCnt>e-1){const s=this.getAccumulatedValue(i,e-i.lf_left-2),r=this.getAccumulatedValue(i,e-i.lf_left-1);return n+=i.size_left,{node:i,remainder:Math.min(s+t-1,r),nodeStartOffset:n}}else if(i.lf_left+i.piece.lineFeedCnt===e-1){const s=this.getAccumulatedValue(i,e-i.lf_left-2);if(s+t-1<=i.piece.length)return{node:i,remainder:s+t-1,nodeStartOffset:n};t-=i.piece.length-s;break}else e-=i.lf_left+i.piece.lineFeedCnt,n+=i.size_left+i.piece.length,i=i.right;for(i=i.next();i!==Le;){if(i.piece.lineFeedCnt>0){const s=this.getAccumulatedValue(i,0),r=this.offsetOfNode(i);return{node:i,remainder:Math.min(t-1,s),nodeStartOffset:r}}else if(i.piece.length>=t-1){const s=this.offsetOfNode(i);return{node:i,remainder:t-1,nodeStartOffset:s}}else t-=i.piece.length;i=i.next()}return null}nodeCharCodeAt(e,t){if(e.piece.lineFeedCnt<1)return-1;const i=this._buffers[e.piece.bufferIndex],n=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start)+t;return i.buffer.charCodeAt(n)}offsetOfNode(e){if(!e)return 0;let t=e.size_left;for(;e!==this.root;)e.parent.right===e&&(t+=e.parent.size_left+e.parent.piece.length),e=e.parent;return t}shouldCheckCRLF(){return!(this._EOLNormalized&&this._EOL===` -`)}startWithLF(e){if(typeof e=="string")return e.charCodeAt(0)===10;if(e===Le||e.piece.lineFeedCnt===0)return!1;const t=e.piece,i=this._buffers[t.bufferIndex].lineStarts,n=t.start.line,s=i[n]+t.start.column;return n===i.length-1||i[n+1]>s+1?!1:this._buffers[t.bufferIndex].buffer.charCodeAt(s)===10}endWithCR(e){return typeof e=="string"?e.charCodeAt(e.length-1)===13:e===Le||e.piece.lineFeedCnt===0?!1:this.nodeCharCodeAt(e,e.piece.length-1)===13}validateCRLFWithPrevNode(e){if(this.shouldCheckCRLF()&&this.startWithLF(e)){const t=e.prev();this.endWithCR(t)&&this.fixCRLF(t,e)}}validateCRLFWithNextNode(e){if(this.shouldCheckCRLF()&&this.endWithCR(e)){const t=e.next();this.startWithLF(t)&&this.fixCRLF(e,t)}}fixCRLF(e,t){const i=[],n=this._buffers[e.piece.bufferIndex].lineStarts;let s;e.piece.end.column===0?s={line:e.piece.end.line-1,column:n[e.piece.end.line]-n[e.piece.end.line-1]-1}:s={line:e.piece.end.line,column:e.piece.end.column-1};const r=e.piece.length-1,a=e.piece.lineFeedCnt-1;e.piece=new Xn(e.piece.bufferIndex,e.piece.start,s,a,r),Ha(this,e,-1,-1),e.piece.length===0&&i.push(e);const l={line:t.piece.start.line+1,column:0},c=t.piece.length-1,d=this.getLineFeedCnt(t.piece.bufferIndex,l,t.piece.end);t.piece=new Xn(t.piece.bufferIndex,l,t.piece.end,d,c),Ha(this,t,-1,-1),t.piece.length===0&&i.push(t);const h=this.createNewPieces(`\r -`);this.rbInsertRight(e,h[0]);for(let u=0;u_.sortIndex-b.sortIndex)}this._mightContainRTL=n,this._mightContainUnusualLineTerminators=s,this._mightContainNonBasicASCII=r;const f=this._doApplyEdits(l);let g=null;if(t&&h.length>0){h.sort((p,_)=>_.lineNumber-p.lineNumber),g=[];for(let p=0,_=h.length;p<_;p++){const b=h[p].lineNumber;if(p>0&&h[p-1].lineNumber===b)continue;const C=h[p].oldContent,w=this.getLineContent(b);w.length===0||w===C||zn(w)!==-1||g.push(b)}}return this._onDidChangeContent.fire(),new MU(u,f,g)}_reduceOperations(e){return e.length<1e3?e:[this._toSingleEditOperation(e)]}_toSingleEditOperation(e){let t=!1;const i=e[0].range,n=e[e.length-1].range,s=new I(i.startLineNumber,i.startColumn,n.endLineNumber,n.endColumn);let r=i.startLineNumber,a=i.startColumn;const l=[];for(let f=0,g=e.length;f0&&l.push(p.text),r=_.endLineNumber,a=_.endColumn}const c=l.join(""),[d,h,u]=hg(c);return{sortIndex:0,identifier:e[0].identifier,range:s,rangeOffset:this.getOffsetAt(s.startLineNumber,s.startColumn),rangeLength:this.getValueLengthInRange(s,0),text:c,eolCount:d,firstLineLength:h,lastLineLength:u,forceMoveMarkers:t,isAutoWhitespaceEdit:!1}}_doApplyEdits(e){e.sort(Uf._sortOpsDescending);const t=[];for(let i=0;i0){const u=l.eolCount+1;u===1?h=new I(c,d,c,d+l.firstLineLength):h=new I(c,d,c+u-1,l.lastLineLength+1)}else h=new I(c,d,c,d);i=h.endLineNumber,n=h.endColumn,t.push(h),s=l}return t}static _sortOpsAscending(e,t){const i=I.compareRangesUsingEnds(e.range,t.range);return i===0?e.sortIndex-t.sortIndex:i}static _sortOpsDescending(e,t){const i=I.compareRangesUsingEnds(e.range,t.range);return i===0?t.sortIndex-e.sortIndex:-i}}class kX{constructor(e,t,i,n,s,r,a,l,c){this._chunks=e,this._bom=t,this._cr=i,this._lf=n,this._crlf=s,this._containsRTL=r,this._containsUnusualLineTerminators=a,this._isBasicASCII=l,this._normalizeEOL=c}_getEOL(e){const t=this._cr+this._lf+this._crlf,i=this._cr+this._crlf;return t===0?e===1?` -`:`\r -`:i>t/2?`\r -`:` -`}create(e){const t=this._getEOL(e),i=this._chunks;if(this._normalizeEOL&&(t===`\r -`&&(this._cr>0||this._lf>0)||t===` -`&&(this._cr>0||this._crlf>0)))for(let s=0,r=i.length;s=55296&&t<=56319?(this._acceptChunk1(e.substr(0,e.length-1),!1),this._hasPreviousChar=!0,this._previousChar=t):(this._acceptChunk1(e,!1),this._hasPreviousChar=!1,this._previousChar=t)}_acceptChunk1(e,t){!t&&e.length===0||(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+e):this._acceptChunk2(e))}_acceptChunk2(e){const t=yX(this._tmpLineStarts,e);this.chunks.push(new Ld(e,t.lineStarts)),this.cr+=t.cr,this.lf+=t.lf,this.crlf+=t.crlf,t.isBasicASCII||(this.isBasicASCII=!1,this.containsRTL||(this.containsRTL=sg(e)),this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=mF(e)))}finish(e=!0){return this._finish(),new kX(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,e)}_finish(){if(this.chunks.length===0&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;const e=this.chunks[this.chunks.length-1];e.buffer+=String.fromCharCode(this._previousChar);const t=Va(e.buffer);e.lineStarts=t,this._previousChar===13&&this.cr++}}}class DX{constructor(e){this._default=e,this._store=[]}get(e){return e=this._store.length;)this._store[this._store.length]=this._default;this._store[e]=t}replace(e,t,i){if(e>=this._store.length)return;if(t===0){this.insert(e,i);return}else if(i===0){this.delete(e,t);return}const n=this._store.slice(0,e),s=this._store.slice(e+t),r=IX(i,this._default);this._store=n.concat(r,s)}delete(e,t){t===0||e>=this._store.length||this._store.splice(e,t)}insert(e,t){if(t===0||e>=this._store.length)return;const i=[];for(let n=0;n0){const i=this._tokens[this._tokens.length-1];if(i.endLineNumber+1===e){i.appendLineTokens(t);return}}this._tokens.push(new EX(e,[t]))}finalize(){return this._tokens}}class NX{constructor(e,t){this.tokenizationSupport=t,this.initialState=this.tokenizationSupport.getInitialState(),this.store=new kD(e)}getStartState(e){return this.store.getStartState(e,this.initialState)}getFirstInvalidLine(){return this.store.getFirstInvalidLine(this.initialState)}}class TX extends NX{constructor(e,t,i,n){super(e,t),this._textModel=i,this._languageIdCodec=n}updateTokensUntilLine(e,t){const i=this._textModel.getLanguageId();for(;;){const n=this.getFirstInvalidLine();if(!n||n.lineNumber>t)break;const s=this._textModel.getLineContent(n.lineNumber),r=pm(this._languageIdCodec,i,this.tokenizationSupport,s,!0,n.startState);e.add(n.lineNumber,r.tokens),this.store.setEndState(n.lineNumber,r.endState)}}getTokenTypeIfInsertingCharacter(e,t){const i=this.getStartState(e.lineNumber);if(!i)return 0;const n=this._textModel.getLanguageId(),s=this._textModel.getLineContent(e.lineNumber),r=s.substring(0,e.column-1)+t+s.substring(e.column-1),a=pm(this._languageIdCodec,n,this.tokenizationSupport,r,!0,i),l=new Ni(a.tokens,r,this._languageIdCodec);if(l.getCount()===0)return 0;const c=l.findTokenIndexAtOffset(e.column-1);return l.getStandardTokenType(c)}tokenizeLineWithEdit(e,t,i){const n=e.lineNumber,s=e.column,r=this.getStartState(n);if(!r)return null;const a=this._textModel.getLineContent(n),l=a.substring(0,s-1)+i+a.substring(s-1+t),c=this._textModel.getLanguageIdAtPosition(n,0),d=pm(this._languageIdCodec,c,this.tokenizationSupport,l,!0,r);return new Ni(d.tokens,l,this._languageIdCodec)}hasAccurateTokensForLine(e){const t=this.store.getFirstInvalidEndStateLineNumberOrMax();return e1&&a>=1;a--){const l=this._textModel.getLineFirstNonWhitespaceColumn(a);if(l!==0&&l0&&i>0&&(i--,t--),this._lineEndStates.replace(e.startLineNumber,i,t)}}class RX{constructor(){this._ranges=[]}get min(){return this._ranges.length===0?null:this._ranges[0].start}delete(e){const t=this._ranges.findIndex(i=>i.contains(e));if(t!==-1){const i=this._ranges[t];i.start===e?i.endExclusive===e+1?this._ranges.splice(t,1):this._ranges[t]=new Re(e+1,i.endExclusive):i.endExclusive===e+1?this._ranges[t]=new Re(i.start,e):this._ranges.splice(t,1,new Re(i.start,e),new Re(e+1,i.endExclusive))}}addRange(e){Re.addRange(e,this._ranges)}addRangeAndResize(e,t){let i=0;for(;!(i>=this._ranges.length||e.start<=this._ranges[i].endExclusive);)i++;let n=i;for(;!(n>=this._ranges.length||e.endExclusivee.toString()).join(" + ")}}function pm(o,e,t,i,n,s){let r=null;if(t)try{r=t.tokenizeEncoded(i,n,s.clone())}catch(a){Ze(a)}return r||(r=zT(o.encodeLanguageId(e),s)),Ni.convertToEndOffset(r.tokens,i.length),r}class AX{constructor(e,t){this._tokenizerWithStateStore=e,this._backgroundTokenStore=t,this._isDisposed=!1,this._isScheduled=!1}dispose(){this._isDisposed=!0}handleChanges(){this._beginBackgroundTokenization()}_beginBackgroundTokenization(){this._isScheduled||!this._tokenizerWithStateStore._textModel.isAttachedToEditor()||!this._hasLinesToTokenize()||(this._isScheduled=!0,wF(e=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(e)}))}_backgroundTokenizeWithDeadline(e){const t=Date.now()+e.timeRemaining(),i=()=>{this._isDisposed||!this._tokenizerWithStateStore._textModel.isAttachedToEditor()||!this._hasLinesToTokenize()||(this._backgroundTokenizeForAtLeast1ms(),Date.now()1||this._tokenizeOneInvalidLine(t)>=e)break;while(this._hasLinesToTokenize());this._backgroundTokenStore.setTokens(t.finalize()),this.checkFinished()}_hasLinesToTokenize(){return this._tokenizerWithStateStore?!this._tokenizerWithStateStore.store.allStatesValid():!1}_tokenizeOneInvalidLine(e){const t=this._tokenizerWithStateStore?.getFirstInvalidLine();return t?(this._tokenizerWithStateStore.updateTokensUntilLine(e,t.lineNumber),t.lineNumber):this._tokenizerWithStateStore._textModel.getLineCount()+1}checkFinished(){this._isDisposed||this._tokenizerWithStateStore.store.allStatesValid()&&this._backgroundTokenStore.backgroundTokenizationFinished()}requestTokens(e,t){this._tokenizerWithStateStore.store.invalidateEndStateRange(new xe(e,t))}}class PX{constructor(){this._onDidChangeVisibleRanges=new A,this.onDidChangeVisibleRanges=this._onDidChangeVisibleRanges.event,this._views=new Set}attachView(){const e=new OX(t=>{this._onDidChangeVisibleRanges.fire({view:e,state:t})});return this._views.add(e),e}detachView(e){this._views.delete(e),this._onDidChangeVisibleRanges.fire({view:e,state:void 0})}}class OX{constructor(e){this.handleStateChange=e}setVisibleLines(e,t){const i=e.map(n=>new xe(n.startLineNumber,n.endLineNumber+1));this.handleStateChange({visibleLineRanges:i,stabilized:t})}}class FX extends z{get lineRanges(){return this._lineRanges}constructor(e){super(),this._refreshTokens=e,this.runner=this._register(new ci(()=>this.update(),50)),this._computedLineRanges=[],this._lineRanges=[]}update(){li(this._computedLineRanges,this._lineRanges,(e,t)=>e.equals(t))||(this._computedLineRanges=this._lineRanges,this._refreshTokens())}handleStateChange(e){this._lineRanges=e.visibleLineRanges,e.stabilized?(this.runner.cancel(),this.update()):this.runner.schedule()}}class _9 extends z{get backgroundTokenizationState(){return this._backgroundTokenizationState}constructor(e,t,i){super(),this._languageIdCodec=e,this._textModel=t,this.getLanguageId=i,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new A),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event,this._onDidChangeTokens=this._register(new A),this.onDidChangeTokens=this._onDidChangeTokens.event}tokenizeIfCheap(e){this.isCheapToTokenize(e)&&this.forceTokenization(e)}}class AP extends _9{constructor(e,t,i,n){super(t,i,n),this._treeSitterService=e,this._tokenizationSupport=null,this._initialize()}_initialize(){const e=this.getLanguageId();(!this._tokenizationSupport||this._lastLanguageId!==e)&&(this._lastLanguageId=e,this._tokenizationSupport=HL.get(e))}getLineTokens(e){const t=this._textModel.getLineContent(e);if(this._tokenizationSupport){const i=this._tokenizationSupport.tokenizeEncoded(e,this._textModel);if(i)return new Ni(i,t,this._languageIdCodec)}return Ni.createEmpty(t,this._languageIdCodec)}resetTokenization(e=!0){e&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]}),this._initialize()}handleDidChangeAttached(){}handleDidChangeContent(e){e.isFlush&&this.resetTokenization(!1)}forceTokenization(e){}hasAccurateTokensForLine(e){return!0}isCheapToTokenize(e){return!0}getTokenTypeIfInsertingCharacter(e,t,i){return 0}tokenizeLineWithEdit(e,t,i){return null}get hasTokens(){return this._treeSitterService.getParseResult(this._textModel)!==void 0}}const b9=He("treeSitterParserService"),za=new Uint32Array(0).buffer;class Kr{static deleteBeginning(e,t){return e===null||e===za?e:Kr.delete(e,0,t)}static deleteEnding(e,t){if(e===null||e===za)return e;const i=nl(e),n=i[i.length-2];return Kr.delete(e,t,n)}static delete(e,t,i){if(e===null||e===za||t===i)return e;const n=nl(e),s=n.length>>>1;if(t===0&&n[n.length-2]===i)return za;const r=Ni.findIndexInTokensArray(n,t),a=r>0?n[r-1<<1]:0,l=n[r<<1];if(id&&(n[c++]=g,n[c++]=n[(f<<1)+1],d=g)}if(c===n.length)return e;const u=new Uint32Array(c);return u.set(n.subarray(0,c),0),u.buffer}static append(e,t){if(t===za)return e;if(e===za)return t;if(e===null)return e;if(t===null)return null;const i=nl(e),n=nl(t),s=n.length>>>1,r=new Uint32Array(i.length+n.length);r.set(i,0);let a=i.length;const l=i[i.length-2];for(let c=0;c>>1;let r=Ni.findIndexInTokensArray(n,t);r>0&&n[r-1<<1]===t&&r--;for(let a=r;a0}getTokens(e,t,i){let n=null;if(t1&&(s=sr.getLanguageId(n[1])!==e),!s)return za}if(!n||n.length===0){const s=new Uint32Array(2);return s[0]=t,s[1]=PP(e),s.buffer}return n[n.length-2]=t,n.byteOffset===0&&n.byteLength===n.buffer.byteLength?n.buffer:n}_ensureLine(e){for(;e>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(e,t){t!==0&&(e+t>this._len&&(t=this._len-e),this._lineTokens.splice(e,t),this._len-=t)}_insertLines(e,t){if(t===0)return;const i=[];for(let n=0;n=this._len)return;if(e.startLineNumber===e.endLineNumber){if(e.startColumn===e.endColumn)return;this._lineTokens[t]=Kr.delete(this._lineTokens[t],e.startColumn-1,e.endColumn-1);return}this._lineTokens[t]=Kr.deleteEnding(this._lineTokens[t],e.startColumn-1);const i=e.endLineNumber-1;let n=null;i=this._len)){if(t===0){this._lineTokens[n]=Kr.insert(this._lineTokens[n],e.column-1,i);return}this._lineTokens[n]=Kr.deleteEnding(this._lineTokens[n],e.column-1),this._lineTokens[n]=Kr.insert(this._lineTokens[n],e.column-1,i),this._insertLines(e.lineNumber,t)}}setMultilineTokens(e,t){if(e.length===0)return{changes:[]};const i=[];for(let n=0,s=e.length;n>>0}class u2{constructor(e){this._pieces=[],this._isComplete=!1,this._languageIdCodec=e}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return this._pieces.length===0}set(e,t){this._pieces=e||[],this._isComplete=t}setPartial(e,t){let i=e;if(t.length>0){const s=t[0].getRange(),r=t[t.length-1].getRange();if(!s||!r)return e;i=e.plusRange(s).plusRange(r)}let n=null;for(let s=0,r=this._pieces.length;si.endLineNumber){n=n||{index:s};break}if(a.removeTokens(i),a.isEmpty()){this._pieces.splice(s,1),s--,r--;continue}if(a.endLineNumberi.endLineNumber){n=n||{index:s};continue}const[l,c]=a.split(i);if(l.isEmpty()){n=n||{index:s};continue}c.isEmpty()||(this._pieces.splice(s,1,l,c),s++,r++,n=n||{index:s})}return n=n||{index:this._pieces.length},t.length>0&&(this._pieces=y0(this._pieces,n.index,t)),i}isComplete(){return this._isComplete}addSparseTokens(e,t){if(t.getLineContent().length===0)return t;const i=this._pieces;if(i.length===0)return t;const n=u2._findFirstPieceWithLine(i,e),s=i[n].getLineTokens(e);if(!s)return t;const r=t.getCount(),a=s.getCount();let l=0;const c=[];let d=0,h=0;const u=(f,g)=>{f!==h&&(h=f,c[d++]=f,c[d++]=g)};for(let f=0;f>>0,C=~b>>>0;for(;lt)n=s-1;else{for(;s>i&&e[s-1].startLineNumber<=t&&t<=e[s-1].endLineNumber;)s--;return s}}return i}acceptEdit(e,t,i,n,s){for(const r of this._pieces)r.acceptEdit(e,t,i,n,s)}}var BX=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},VS=function(o,e){return function(t,i){e(t,i,o)}},O1;let DD=O1=class extends a9{constructor(e,t,i,n,s,r,a){super(),this._textModel=e,this._bracketPairsTextModelPart=t,this._languageId=i,this._attachedViews=n,this._languageService=s,this._languageConfigurationService=r,this._treeSitterService=a,this._semanticTokens=new u2(this._languageService.languageIdCodec),this._onDidChangeLanguage=this._register(new A),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new A),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new A),this.onDidChangeTokens=this._onDidChangeTokens.event,this._tokensDisposables=this._register(new X),this._register(this._languageConfigurationService.onDidChange(l=>{l.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})})),this._register(J.filter(HL.onDidChange,l=>l.changedLanguages.includes(this._languageId))(()=>{this.createPreferredTokenProvider()})),this.createPreferredTokenProvider()}createGrammarTokens(){return this._register(new OP(this._languageService.languageIdCodec,this._textModel,()=>this._languageId,this._attachedViews))}createTreeSitterTokens(){return this._register(new AP(this._treeSitterService,this._languageService.languageIdCodec,this._textModel,()=>this._languageId))}createTokens(e){const t=this._tokens!==void 0;this._tokens?.dispose(),this._tokens=e?this.createTreeSitterTokens():this.createGrammarTokens(),this._tokensDisposables.clear(),this._tokensDisposables.add(this._tokens.onDidChangeTokens(i=>{this._emitModelTokensChangedEvent(i)})),this._tokensDisposables.add(this._tokens.onDidChangeBackgroundTokenizationState(i=>{this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState()})),t&&this._tokens.resetTokenization()}createPreferredTokenProvider(){HL.get(this._languageId)?this._tokens instanceof AP||this.createTokens(!0):this._tokens instanceof OP||this.createTokens(!1)}handleLanguageConfigurationServiceChange(e){e.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}handleDidChangeContent(e){if(e.isFlush)this._semanticTokens.flush();else if(!e.isEolChange)for(const t of e.changes){const[i,n,s]=hg(t.text);this._semanticTokens.acceptEdit(t.range,i,n,s,t.text.length>0?t.text.charCodeAt(0):0)}this._tokens.handleDidChangeContent(e)}handleDidChangeAttached(){this._tokens.handleDidChangeAttached()}getLineTokens(e){this.validateLineNumber(e);const t=this._tokens.getLineTokens(e);return this._semanticTokens.addSparseTokens(e,t)}_emitModelTokensChangedEvent(e){this._textModel._isDisposing()||(this._bracketPairsTextModelPart.handleDidChangeTokens(e),this._onDidChangeTokens.fire(e))}validateLineNumber(e){if(e<1||e>this._textModel.getLineCount())throw new nt("Illegal value for lineNumber")}get hasTokens(){return this._tokens.hasTokens}resetTokenization(){this._tokens.resetTokenization()}get backgroundTokenizationState(){return this._tokens.backgroundTokenizationState}forceTokenization(e){this.validateLineNumber(e),this._tokens.forceTokenization(e)}hasAccurateTokensForLine(e){return this.validateLineNumber(e),this._tokens.hasAccurateTokensForLine(e)}isCheapToTokenize(e){return this.validateLineNumber(e),this._tokens.isCheapToTokenize(e)}tokenizeIfCheap(e){this.validateLineNumber(e),this._tokens.tokenizeIfCheap(e)}getTokenTypeIfInsertingCharacter(e,t,i){return this._tokens.getTokenTypeIfInsertingCharacter(e,t,i)}tokenizeLineWithEdit(e,t,i){return this._tokens.tokenizeLineWithEdit(e,t,i)}setSemanticTokens(e,t){this._semanticTokens.set(e,t),this._emitModelTokensChangedEvent({semanticTokensApplied:e!==null,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}hasCompleteSemanticTokens(){return this._semanticTokens.isComplete()}hasSomeSemanticTokens(){return!this._semanticTokens.isEmpty()}setPartialSemanticTokens(e,t){if(this.hasCompleteSemanticTokens())return;const i=this._textModel.validateRange(this._semanticTokens.setPartial(e,t));this._emitModelTokensChangedEvent({semanticTokensApplied:!0,ranges:[{fromLineNumber:i.startLineNumber,toLineNumber:i.endLineNumber}]})}getWordAtPosition(e){this.assertNotDisposed();const t=this._textModel.validatePosition(e),i=this._textModel.getLineContent(t.lineNumber),n=this.getLineTokens(t.lineNumber),s=n.findTokenIndexAtOffset(t.column-1),[r,a]=O1._findLanguageBoundaries(n,s),l=Wp(t.column,this.getLanguageConfiguration(n.getLanguageId(s)).getWordDefinition(),i.substring(r,a),r);if(l&&l.startColumn<=e.column&&e.column<=l.endColumn)return l;if(s>0&&r===t.column-1){const[c,d]=O1._findLanguageBoundaries(n,s-1),h=Wp(t.column,this.getLanguageConfiguration(n.getLanguageId(s-1)).getWordDefinition(),i.substring(c,d),c);if(h&&h.startColumn<=e.column&&e.column<=h.endColumn)return h}return null}getLanguageConfiguration(e){return this._languageConfigurationService.getLanguageConfiguration(e)}static _findLanguageBoundaries(e,t){const i=e.getLanguageId(t);let n=0;for(let r=t;r>=0&&e.getLanguageId(r)===i;r--)n=e.getStartOffset(r);let s=e.getLineContent().length;for(let r=t,a=e.getCount();r{const r=this.getLanguageId();s.changedLanguages.indexOf(r)!==-1&&this.resetTokenization()})),this.resetTokenization(),this._register(n.onDidChangeVisibleRanges(({view:s,state:r})=>{if(r){let a=this._attachedViewStates.get(s);a||(a=new FX(()=>this.refreshRanges(a.lineRanges)),this._attachedViewStates.set(s,a)),a.handleStateChange(r)}else this._attachedViewStates.deleteAndDispose(s)}))}resetTokenization(e=!0){this._tokens.flush(),this._debugBackgroundTokens?.flush(),this._debugBackgroundStates&&(this._debugBackgroundStates=new kD(this._textModel.getLineCount())),e&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]});const t=()=>{if(this._textModel.isTooLargeForTokenization())return[null,null];const s=si.get(this.getLanguageId());if(!s)return[null,null];let r;try{r=s.getInitialState()}catch(a){return Ze(a),[null,null]}return[s,r]},[i,n]=t();if(i&&n?this._tokenizer=new TX(this._textModel.getLineCount(),i,this._textModel,this._languageIdCodec):this._tokenizer=null,this._backgroundTokenizer.clear(),this._defaultBackgroundTokenizer=null,this._tokenizer){const s={setTokens:r=>{this.setTokens(r)},backgroundTokenizationFinished:()=>{if(this._backgroundTokenizationState===2)return;const r=2;this._backgroundTokenizationState=r,this._onDidChangeBackgroundTokenizationState.fire()},setEndState:(r,a)=>{if(!this._tokenizer)return;const l=this._tokenizer.store.getFirstInvalidEndStateLineNumber();l!==null&&r>=l&&this._tokenizer?.store.setEndState(r,a)}};i&&i.createBackgroundTokenizer&&!i.backgroundTokenizerShouldOnlyVerifyTokens&&(this._backgroundTokenizer.value=i.createBackgroundTokenizer(this._textModel,s)),!this._backgroundTokenizer.value&&!this._textModel.isTooLargeForTokenization()&&(this._backgroundTokenizer.value=this._defaultBackgroundTokenizer=new AX(this._tokenizer,s),this._defaultBackgroundTokenizer.handleChanges()),i?.backgroundTokenizerShouldOnlyVerifyTokens&&i.createBackgroundTokenizer?(this._debugBackgroundTokens=new g_(this._languageIdCodec),this._debugBackgroundStates=new kD(this._textModel.getLineCount()),this._debugBackgroundTokenizer.clear(),this._debugBackgroundTokenizer.value=i.createBackgroundTokenizer(this._textModel,{setTokens:r=>{this._debugBackgroundTokens?.setMultilineTokens(r,this._textModel)},backgroundTokenizationFinished(){},setEndState:(r,a)=>{this._debugBackgroundStates?.setEndState(r,a)}})):(this._debugBackgroundTokens=void 0,this._debugBackgroundStates=void 0,this._debugBackgroundTokenizer.value=void 0)}this.refreshAllVisibleLineTokens()}handleDidChangeAttached(){this._defaultBackgroundTokenizer?.handleChanges()}handleDidChangeContent(e){if(e.isFlush)this.resetTokenization(!1);else if(!e.isEolChange){for(const t of e.changes){const[i,n]=hg(t.text);this._tokens.acceptEdit(t.range,i,n),this._debugBackgroundTokens?.acceptEdit(t.range,i,n)}this._debugBackgroundStates?.acceptChanges(e.changes),this._tokenizer&&this._tokenizer.store.acceptChanges(e.changes),this._defaultBackgroundTokenizer?.handleChanges()}}setTokens(e){const{changes:t}=this._tokens.setMultilineTokens(e,this._textModel);return t.length>0&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:t}),{changes:t}}refreshAllVisibleLineTokens(){const e=xe.joinMany([...this._attachedViewStates].map(([t,i])=>i.lineRanges));this.refreshRanges(e)}refreshRanges(e){for(const t of e)this.refreshRange(t.startLineNumber,t.endLineNumberExclusive-1)}refreshRange(e,t){if(!this._tokenizer)return;e=Math.max(1,Math.min(this._textModel.getLineCount(),e)),t=Math.min(this._textModel.getLineCount(),t);const i=new xD,{heuristicTokens:n}=this._tokenizer.tokenizeHeuristically(i,e,t),s=this.setTokens(i.finalize());if(n)for(const r of s.changes)this._backgroundTokenizer.value?.requestTokens(r.fromLineNumber,r.toLineNumber+1);this._defaultBackgroundTokenizer?.checkFinished()}forceTokenization(e){const t=new xD;this._tokenizer?.updateTokensUntilLine(t,e),this.setTokens(t.finalize()),this._defaultBackgroundTokenizer?.checkFinished()}hasAccurateTokensForLine(e){return this._tokenizer?this._tokenizer.hasAccurateTokensForLine(e):!0}isCheapToTokenize(e){return this._tokenizer?this._tokenizer.isCheapToTokenize(e):!0}getLineTokens(e){const t=this._textModel.getLineContent(e),i=this._tokens.getTokens(this._textModel.getLanguageId(),e-1,t);if(this._debugBackgroundTokens&&this._debugBackgroundStates&&this._tokenizer&&this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax()>e&&this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax()>e){const n=this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(),e-1,t);!i.equals(n)&&this._debugBackgroundTokenizer.value?.reportMismatchingTokens&&this._debugBackgroundTokenizer.value.reportMismatchingTokens(e)}return i}getTokenTypeIfInsertingCharacter(e,t,i){if(!this._tokenizer)return 0;const n=this._textModel.validatePosition(new P(e,t));return this.forceTokenization(n.lineNumber),this._tokenizer.getTokenTypeIfInsertingCharacter(n,i)}tokenizeLineWithEdit(e,t,i){if(!this._tokenizer)return null;const n=this._textModel.validatePosition(e);return this.forceTokenization(n.lineNumber),this._tokenizer.tokenizeLineWithEdit(n,t,i)}get hasTokens(){return this._tokens.hasTokens}}class WX{constructor(){this.changeType=1}}class _r{static applyInjectedText(e,t){if(!t||t.length===0)return e;let i="",n=0;for(const s of t)i+=e.substring(n,s.column-1),n=s.column-1,i+=s.options.content;return i+=e.substring(n),i}static fromDecorations(e){const t=[];for(const i of e)i.options.before&&i.options.before.content.length>0&&t.push(new _r(i.ownerId,i.range.startLineNumber,i.range.startColumn,i.options.before,0)),i.options.after&&i.options.after.content.length>0&&t.push(new _r(i.ownerId,i.range.endLineNumber,i.range.endColumn,i.options.after,1));return t.sort((i,n)=>i.lineNumber===n.lineNumber?i.column===n.column?i.order-n.order:i.column-n.column:i.lineNumber-n.lineNumber),t}constructor(e,t,i,n,s){this.ownerId=e,this.lineNumber=t,this.column=i,this.options=n,this.order=s}}class FP{constructor(e,t,i){this.changeType=2,this.lineNumber=e,this.detail=t,this.injectedText=i}}class HX{constructor(e,t){this.changeType=3,this.fromLineNumber=e,this.toLineNumber=t}}class VX{constructor(e,t,i,n){this.changeType=4,this.injectedTexts=n,this.fromLineNumber=e,this.toLineNumber=t,this.detail=i}}class zX{constructor(){this.changeType=5}}class $f{constructor(e,t,i,n){this.changes=e,this.versionId=t,this.isUndoing=i,this.isRedoing=n,this.resultingSelection=null}containsEvent(e){for(let t=0,i=this.changes.length;t=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Gb=function(o,e){return function(t,i){e(t,i,o)}},ud;function $X(o){const e=new p9;return e.acceptChunk(o),e.finish()}function KX(o){const e=new p9;let t;for(;typeof(t=o.read())=="string";)e.acceptChunk(t);return e.finish()}function BP(o,e){let t;return typeof o=="string"?t=$X(o):NU(o)?t=KX(o):t=o,t.create(e)}let Zb=0;const jX=999,qX=1e4;class GX{constructor(e){this._source=e,this._eos=!1}read(){if(this._eos)return null;const e=[];let t=0,i=0;do{const n=this._source.read();if(n===null)return this._eos=!0,t===0?null:e.join("");if(n.length>0&&(e[t++]=n,i+=n.length),i>=64*1024)return e.join("")}while(!0)}}const _m=()=>{throw new Error("Invalid change accessor")};var ar;let m_=(ar=class extends z{static resolveOptions(e,t){if(t.detectIndentation){const i=kP(e,t.tabSize,t.insertSpaces);return new k1({tabSize:i.tabSize,indentSize:"tabSize",insertSpaces:i.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL,bracketPairColorizationOptions:t.bracketPairColorizationOptions})}return new k1(t)}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}onDidChangeContent(e){return this._eventEmitter.slowEvent(t=>e(t.contentChangedEvent))}onDidChangeContentOrInjectedText(e){return No(this._eventEmitter.fastEvent(t=>e(t)),this._onDidChangeInjectedText.event(t=>e(t)))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}constructor(e,t,i,n=null,s,r,a,l){super(),this._undoRedoService=s,this._languageService=r,this._languageConfigurationService=a,this.instantiationService=l,this._onWillDispose=this._register(new A),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new eJ(g=>this.handleBeforeFireDecorationsChangedEvent(g))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new A),this.onDidChangeOptions=this._onDidChangeOptions.event,this._onDidChangeAttached=this._register(new A),this.onDidChangeAttached=this._onDidChangeAttached.event,this._onDidChangeInjectedText=this._register(new A),this._eventEmitter=this._register(new tJ),this._languageSelectionListener=this._register(new Dn),this._deltaDecorationCallCnt=0,this._attachedViews=new PX,Zb++,this.id="$model"+Zb,this.isForSimpleWidget=i.isForSimpleWidget,typeof n>"u"||n===null?this._associatedResource=ve.parse("inmemory://model/"+Zb):this._associatedResource=n,this._attachedEditorCount=0;const{textBuffer:c,disposable:d}=BP(e,i.defaultEOL);this._buffer=c,this._bufferDisposable=d,this._options=ud.resolveOptions(this._buffer,i);const h=typeof t=="string"?t:t.languageId;typeof t!="string"&&(this._languageSelectionListener.value=t.onDidChange(()=>this._setLanguage(t.languageId))),this._bracketPairs=this._register(new eX(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new oX(this,this._languageConfigurationService)),this._decorationProvider=this._register(new iX(this)),this._tokenizationTextModelPart=this.instantiationService.createInstance(DD,this,this._bracketPairs,h,this._attachedViews);const u=this._buffer.getLineCount(),f=this._buffer.getValueLengthInRange(new I(1,1,u,this._buffer.getLineLength(u)+1),0);i.largeFileOptimizations?(this._isTooLargeForTokenization=f>ud.LARGE_FILE_SIZE_THRESHOLD||u>ud.LARGE_FILE_LINE_COUNT_THRESHOLD,this._isTooLargeForHeapOperation=f>ud.LARGE_FILE_HEAP_OPERATION_THRESHOLD):(this._isTooLargeForTokenization=!1,this._isTooLargeForHeapOperation=!1),this._isTooLargeForSyncing=f>ud._MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=pF(Zb),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new WP,this._commandManager=new l2(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._register(this._decorationProvider.onDidChange(()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()})),this._languageService.requestRichLanguageFeatures(h),this._register(this._languageConfigurationService.onDidChange(g=>{this._bracketPairs.handleLanguageConfigurationServiceChange(g),this._tokenizationTextModelPart.handleLanguageConfigurationServiceChange(g)}))}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;const e=new Uf([],"",` -`,!1,!1,!0,!0);e.dispose(),this._buffer=e,this._bufferDisposable=z.None}_assertNotDisposed(){if(this._isDisposed)throw new nt("Model is disposed!")}_emitContentChangedEvent(e,t){this.__isDisposing||(this._tokenizationTextModelPart.handleDidChangeContent(t),this._bracketPairs.handleDidChangeContent(t),this._eventEmitter.fire(new th(e,t)))}setValue(e){if(this._assertNotDisposed(),e==null)throw na();const{textBuffer:t,disposable:i}=BP(e,this._options.defaultEOL);this._setValueFromTextBuffer(t,i)}_createContentChanged2(e,t,i,n,s,r,a,l){return{changes:[{range:e,rangeOffset:t,rangeLength:i,text:n}],eol:this._buffer.getEOL(),isEolChange:l,versionId:this.getVersionId(),isUndoing:s,isRedoing:r,isFlush:a}}_setValueFromTextBuffer(e,t){this._assertNotDisposed();const i=this.getFullModelRange(),n=this.getValueLengthInRange(i),s=this.getLineCount(),r=this.getLineMaxColumn(s);this._buffer=e,this._bufferDisposable.dispose(),this._bufferDisposable=t,this._increaseVersionId(),this._decorations=Object.create(null),this._decorationsTree=new WP,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new $f([new WX],this._versionId,!1,!1),this._createContentChanged2(new I(1,1,s,r),0,n,this.getValue(),!1,!1,!0,!1))}setEOL(e){this._assertNotDisposed();const t=e===1?`\r -`:` -`;if(this._buffer.getEOL()===t)return;const i=this.getFullModelRange(),n=this.getValueLengthInRange(i),s=this.getLineCount(),r=this.getLineMaxColumn(s);this._onBeforeEOLChange(),this._buffer.setEOL(t),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new $f([new zX],this._versionId,!1,!1),this._createContentChanged2(new I(1,1,s,r),0,n,this.getValue(),!1,!1,!1,!0))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){const e=this.getVersionId(),t=this._decorationsTree.collectNodesPostOrder();for(let i=0,n=t.length;i0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isTooLargeForHeapOperation(){return this._isTooLargeForHeapOperation}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let e=0,t=0;const i=this._buffer.getLineCount();for(let n=1;n<=i;n++){const s=this._buffer.getLineLength(n);s>=qX?t+=s:e+=s}return t>e}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(e){this._assertNotDisposed();const t=typeof e.tabSize<"u"?e.tabSize:this._options.tabSize,i=typeof e.indentSize<"u"?e.indentSize:this._options.originalIndentSize,n=typeof e.insertSpaces<"u"?e.insertSpaces:this._options.insertSpaces,s=typeof e.trimAutoWhitespace<"u"?e.trimAutoWhitespace:this._options.trimAutoWhitespace,r=typeof e.bracketColorizationOptions<"u"?e.bracketColorizationOptions:this._options.bracketPairColorizationOptions,a=new k1({tabSize:t,indentSize:i,insertSpaces:n,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:s,bracketPairColorizationOptions:r});if(this._options.equals(a))return;const l=this._options.createChangeEvent(a);this._options=a,this._bracketPairs.handleDidChangeOptions(l),this._decorationProvider.handleDidChangeOptions(l),this._onDidChangeOptions.fire(l)}detectIndentation(e,t){this._assertNotDisposed();const i=kP(this._buffer,t,e);this.updateOptions({insertSpaces:i.insertSpaces,tabSize:i.tabSize,indentSize:i.tabSize})}normalizeIndentation(e){return this._assertNotDisposed(),Q7(e,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(e=null){const t=this.findMatches(gF.source,!1,!0,!1,null,!1,1073741824);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(e,t.map(i=>({range:i.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(e){this._assertNotDisposed();const t=this._validatePosition(e.lineNumber,e.column,0);return this._buffer.getOffsetAt(t.lineNumber,t.column)}getPositionAt(e){this._assertNotDisposed();const t=Math.min(this._buffer.getLength(),Math.max(0,e));return this._buffer.getPositionAt(t)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(e){this._versionId=e}_overwriteAlternativeVersionId(e){this._alternativeVersionId=e}_overwriteInitialUndoRedoSnapshot(e){this._initialUndoRedoSnapshot=e}getValue(e,t=!1){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new nt("Operation would exceed heap memory limits");const i=this.getFullModelRange(),n=this.getValueInRange(i,e);return t?this._buffer.getBOM()+n:n}createSnapshot(e=!1){return new GX(this._buffer.createSnapshot(e))}getValueLength(e,t=!1){this._assertNotDisposed();const i=this.getFullModelRange(),n=this.getValueLengthInRange(i,e);return t?this._buffer.getBOM().length+n:n}getValueInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(e),t)}getValueLengthInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(e),t)}getCharacterCountInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(e),t)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineContent(e)}getLineLength(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineLength(e)}getLinesContent(){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new nt("Operation would exceed heap memory limits");return this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),this._buffer.getEOL()===` -`?0:1}getLineMinColumn(e){return this._assertNotDisposed(),1}getLineMaxColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineLength(e)+1}getLineFirstNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(e)}getLineLastNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(e)}_validateRangeRelaxedNoAllocations(e){const t=this._buffer.getLineCount(),i=e.startLineNumber,n=e.startColumn;let s=Math.floor(typeof i=="number"&&!isNaN(i)?i:1),r=Math.floor(typeof n=="number"&&!isNaN(n)?n:1);if(s<1)s=1,r=1;else if(s>t)s=t,r=this.getLineMaxColumn(s);else if(r<=1)r=1;else{const h=this.getLineMaxColumn(s);r>=h&&(r=h)}const a=e.endLineNumber,l=e.endColumn;let c=Math.floor(typeof a=="number"&&!isNaN(a)?a:1),d=Math.floor(typeof l=="number"&&!isNaN(l)?l:1);if(c<1)c=1,d=1;else if(c>t)c=t,d=this.getLineMaxColumn(c);else if(d<=1)d=1;else{const h=this.getLineMaxColumn(c);d>=h&&(d=h)}return i===s&&n===r&&a===c&&l===d&&e instanceof I&&!(e instanceof Fe)?e:new I(s,r,c,d)}_isValidPosition(e,t,i){if(typeof e!="number"||typeof t!="number"||isNaN(e)||isNaN(t)||e<1||t<1||(e|0)!==e||(t|0)!==t)return!1;const n=this._buffer.getLineCount();if(e>n)return!1;if(t===1)return!0;const s=this.getLineMaxColumn(e);if(t>s)return!1;if(i===1){const r=this._buffer.getLineCharCode(e,t-2);if(wi(r))return!1}return!0}_validatePosition(e,t,i){const n=Math.floor(typeof e=="number"&&!isNaN(e)?e:1),s=Math.floor(typeof t=="number"&&!isNaN(t)?t:1),r=this._buffer.getLineCount();if(n<1)return new P(1,1);if(n>r)return new P(r,this.getLineMaxColumn(r));if(s<=1)return new P(n,1);const a=this.getLineMaxColumn(n);if(s>=a)return new P(n,a);if(i===1){const l=this._buffer.getLineCharCode(n,s-2);if(wi(l))return new P(n,s-1)}return new P(n,s)}validatePosition(e){return this._assertNotDisposed(),e instanceof P&&this._isValidPosition(e.lineNumber,e.column,1)?e:this._validatePosition(e.lineNumber,e.column,1)}_isValidRange(e,t){const i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn;if(!this._isValidPosition(i,n,0)||!this._isValidPosition(s,r,0))return!1;if(t===1){const a=n>1?this._buffer.getLineCharCode(i,n-2):0,l=r>1&&r<=this._buffer.getLineLength(s)?this._buffer.getLineCharCode(s,r-2):0,c=wi(a),d=wi(l);return!c&&!d}return!0}validateRange(e){if(this._assertNotDisposed(),e instanceof I&&!(e instanceof Fe)&&this._isValidRange(e,1))return e;const i=this._validatePosition(e.startLineNumber,e.startColumn,0),n=this._validatePosition(e.endLineNumber,e.endColumn,0),s=i.lineNumber,r=i.column,a=n.lineNumber,l=n.column;{const c=r>1?this._buffer.getLineCharCode(s,r-2):0,d=l>1&&l<=this._buffer.getLineLength(a)?this._buffer.getLineCharCode(a,l-2):0,h=wi(c),u=wi(d);return!h&&!u?new I(s,r,a,l):s===a&&r===l?new I(s,r-1,a,l-1):h&&u?new I(s,r-1,a,l+1):h?new I(s,r-1,a,l):new I(s,r,a,l+1)}}modifyPosition(e,t){this._assertNotDisposed();const i=this.getOffsetAt(e)+t;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,i)))}getFullModelRange(){this._assertNotDisposed();const e=this.getLineCount();return new I(1,1,e,this.getLineMaxColumn(e))}findMatchesLineByLine(e,t,i,n){return this._buffer.findMatchesLineByLine(e,t,i,n)}findMatches(e,t,i,n,s,r,a=jX){this._assertNotDisposed();let l=null;t!==null&&(Array.isArray(t)||(t=[t]),t.every(h=>I.isIRange(h))&&(l=t.map(h=>this.validateRange(h)))),l===null&&(l=[this.getFullModelRange()]),l=l.sort((h,u)=>h.startLineNumber-u.startLineNumber||h.startColumn-u.startColumn);const c=[];c.push(l.reduce((h,u)=>I.areIntersecting(h,u)?h.plusRange(u):(c.push(h),u)));let d;if(!i&&e.indexOf(` -`)<0){const u=new Eu(e,i,n,s).parseSearchRequest();if(!u)return[];d=f=>this.findMatchesLineByLine(f,u,r,a)}else d=h=>Eb.findMatches(this,new Eu(e,i,n,s),h,r,a);return c.map(d).reduce((h,u)=>h.concat(u),[])}findNextMatch(e,t,i,n,s,r){this._assertNotDisposed();const a=this.validatePosition(t);if(!i&&e.indexOf(` -`)<0){const c=new Eu(e,i,n,s).parseSearchRequest();if(!c)return null;const d=this.getLineCount();let h=new I(a.lineNumber,a.column,d,this.getLineMaxColumn(d)),u=this.findMatchesLineByLine(h,c,r,1);return Eb.findNextMatch(this,new Eu(e,i,n,s),a,r),u.length>0||(h=new I(1,1,a.lineNumber,this.getLineMaxColumn(a.lineNumber)),u=this.findMatchesLineByLine(h,c,r,1),u.length>0)?u[0]:null}return Eb.findNextMatch(this,new Eu(e,i,n,s),a,r)}findPreviousMatch(e,t,i,n,s,r){this._assertNotDisposed();const a=this.validatePosition(t);return Eb.findPreviousMatch(this,new Eu(e,i,n,s),a,r)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(e){if((this.getEOL()===` -`?0:1)!==e)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(e){return e instanceof CS?e:new CS(e.identifier||null,this.validateRange(e.range),e.text,e.forceMoveMarkers||!1,e.isAutoWhitespaceEdit||!1,e._isTracked||!1)}_validateEditOperations(e){const t=[];for(let i=0,n=e.length;i({range:this.validateRange(a.range),text:a.text}));let r=!0;if(e)for(let a=0,l=e.length;ac.endLineNumber,p=c.startLineNumber>f.endLineNumber;if(!g&&!p){d=!0;break}}if(!d){r=!1;break}}if(r)for(let a=0,l=this._trimAutoWhitespaceLines.length;ag.endLineNumber)&&!(c===g.startLineNumber&&g.startColumn===d&&g.isEmpty()&&p&&p.length>0&&p.charAt(0)===` -`)&&!(c===g.startLineNumber&&g.startColumn===1&&g.isEmpty()&&p&&p.length>0&&p.charAt(p.length-1)===` -`)){h=!1;break}}if(h){const u=new I(c,1,c,d);t.push(new CS(null,u,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(e,t,i,n)}_applyUndo(e,t,i,n){const s=e.map(r=>{const a=this.getPositionAt(r.newPosition),l=this.getPositionAt(r.newEnd);return{range:new I(a.lineNumber,a.column,l.lineNumber,l.column),text:r.oldText}});this._applyUndoRedoEdits(s,t,!0,!1,i,n)}_applyRedo(e,t,i,n){const s=e.map(r=>{const a=this.getPositionAt(r.oldPosition),l=this.getPositionAt(r.oldEnd);return{range:new I(a.lineNumber,a.column,l.lineNumber,l.column),text:r.newText}});this._applyUndoRedoEdits(s,t,!1,!0,i,n)}_applyUndoRedoEdits(e,t,i,n,s,r){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=i,this._isRedoing=n,this.applyEdits(e,!1),this.setEOL(t),this._overwriteAlternativeVersionId(s)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(r),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(e,t=!1){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();const i=this._validateEditOperations(e);return this._doApplyEdits(i,t)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(e,t){const i=this._buffer.getLineCount(),n=this._buffer.applyEdits(e,this._options.trimAutoWhitespace,t),s=this._buffer.getLineCount(),r=n.changes;if(this._trimAutoWhitespaceLines=n.trimAutoWhitespaceLineNumbers,r.length!==0){for(let c=0,d=r.length;c=0;N--){const H=f+N,F=w+N;E.takeFromEndWhile(j=>j.lineNumber>F);const W=E.takeFromEndWhile(j=>j.lineNumber===F);a.push(new FP(H,this.getLineContent(F),W))}if(bae.lineNumberae.lineNumber===ne)}a.push(new VX(H+1,f+_,B,j))}l+=C}this._emitContentChangedEvent(new $f(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:r,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return n.reverseEdits===null?void 0:n.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(e){if(e===null||e.size===0)return;const i=Array.from(e).map(n=>new FP(n,this.getLineContent(n),this._getInjectedTextInLine(n)));this._onDidChangeInjectedText.fire(new C9(i))}changeDecorations(e,t=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(t,e)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(e,t){const i={addDecoration:(s,r)=>this._deltaDecorationsImpl(e,[],[{range:s,options:r}])[0],changeDecoration:(s,r)=>{this._changeDecorationImpl(s,r)},changeDecorationOptions:(s,r)=>{this._changeDecorationOptionsImpl(s,VP(r))},removeDecoration:s=>{this._deltaDecorationsImpl(e,[s],[])},deltaDecorations:(s,r)=>s.length===0&&r.length===0?[]:this._deltaDecorationsImpl(e,s,r)};let n=null;try{n=t(i)}catch(s){Ze(s)}return i.addDecoration=_m,i.changeDecoration=_m,i.changeDecorationOptions=_m,i.removeDecoration=_m,i.deltaDecorations=_m,n}deltaDecorations(e,t,i=0){if(this._assertNotDisposed(),e||(e=[]),e.length===0&&t.length===0)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),Ze(new Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(i,e,t)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(e){return this.getDecorationRange(e)}_setTrackedRange(e,t,i){const n=e?this._decorations[e]:null;if(!n)return t?this._deltaDecorationsImpl(0,[],[{range:t,options:HP[i]}],!0)[0]:null;if(!t)return this._decorationsTree.delete(n),delete this._decorations[n.id],null;const s=this._validateRangeRelaxedNoAllocations(t),r=this._buffer.getOffsetAt(s.startLineNumber,s.startColumn),a=this._buffer.getOffsetAt(s.endLineNumber,s.endColumn);return this._decorationsTree.delete(n),n.reset(this.getVersionId(),r,a,s),n.setOptions(HP[i]),this._decorationsTree.insert(n),n.id}removeAllDecorationsWithOwnerId(e){if(this._isDisposed)return;const t=this._decorationsTree.collectNodesFromOwner(e);for(let i=0,n=t.length;ithis.getLineCount()?[]:this.getLinesDecorations(e,e,t,i)}getLinesDecorations(e,t,i=0,n=!1,s=!1){const r=this.getLineCount(),a=Math.min(r,Math.max(1,e)),l=Math.min(r,Math.max(1,t)),c=this.getLineMaxColumn(l),d=new I(a,1,l,c),h=this._getDecorationsInRange(d,i,n,s);return xL(h,this._decorationProvider.getDecorationsInRange(d,i,n)),h}getDecorationsInRange(e,t=0,i=!1,n=!1,s=!1){const r=this.validateRange(e),a=this._getDecorationsInRange(r,t,i,s);return xL(a,this._decorationProvider.getDecorationsInRange(r,t,i,n)),a}getOverviewRulerDecorations(e=0,t=!1){return this._decorationsTree.getAll(this,e,t,!0,!1)}getInjectedTextDecorations(e=0){return this._decorationsTree.getAllInjectedText(this,e)}_getInjectedTextInLine(e){const t=this._buffer.getOffsetAt(e,1),i=t+this._buffer.getLineLength(e),n=this._decorationsTree.getInjectedTextInInterval(this,t,i,0);return _r.fromDecorations(n).filter(s=>s.lineNumber===e)}getAllDecorations(e=0,t=!1){let i=this._decorationsTree.getAll(this,e,t,!1,!1);return i=i.concat(this._decorationProvider.getAllDecorations(e,t)),i}getAllMarginDecorations(e=0){return this._decorationsTree.getAll(this,e,!1,!1,!0)}_getDecorationsInRange(e,t,i,n){const s=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),r=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.getAllInInterval(this,s,r,t,i,n)}getRangeAt(e,t){return this._buffer.getRangeAt(e,t-e)}_changeDecorationImpl(e,t){const i=this._decorations[e];if(!i)return;if(i.options.after){const a=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(i.options.before){const a=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}const n=this._validateRangeRelaxedNoAllocations(t),s=this._buffer.getOffsetAt(n.startLineNumber,n.startColumn),r=this._buffer.getOffsetAt(n.endLineNumber,n.endColumn);this._decorationsTree.delete(i),i.reset(this.getVersionId(),s,r,n),this._decorationsTree.insert(i),this._onDidChangeDecorations.checkAffectedAndFire(i.options),i.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.endLineNumber),i.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.startLineNumber)}_changeDecorationOptionsImpl(e,t){const i=this._decorations[e];if(!i)return;const n=!!(i.options.overviewRuler&&i.options.overviewRuler.color),s=!!(t.overviewRuler&&t.overviewRuler.color);if(this._onDidChangeDecorations.checkAffectedAndFire(i.options),this._onDidChangeDecorations.checkAffectedAndFire(t),i.options.after||t.after){const l=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.endLineNumber)}if(i.options.before||t.before){const l=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.startLineNumber)}const r=n!==s,a=YX(t)!==F1(i);r||a?(this._decorationsTree.delete(i),i.setOptions(t),this._decorationsTree.insert(i)):i.setOptions(t)}_deltaDecorationsImpl(e,t,i,n=!1){const s=this.getVersionId(),r=t.length;let a=0;const l=i.length;let c=0;this._onDidChangeDecorations.beginDeferredEmit();try{const d=new Array(l);for(;athis._setLanguage(e.languageId,t)),this._setLanguage(e.languageId,t))}_setLanguage(e,t){this.tokenization.setLanguageId(e,t),this._languageService.requestRichLanguageFeatures(e)}getLanguageIdAtPosition(e,t){return this.tokenization.getLanguageIdAtPosition(e,t)}getWordAtPosition(e){return this._tokenizationTextModelPart.getWordAtPosition(e)}getWordUntilPosition(e){return this._tokenizationTextModelPart.getWordUntilPosition(e)}normalizePosition(e,t){return e}getLineIndentColumn(e){return ZX(this.getLineContent(e))+1}},ud=ar,ar._MODEL_SYNC_LIMIT=50*1024*1024,ar.LARGE_FILE_SIZE_THRESHOLD=20*1024*1024,ar.LARGE_FILE_LINE_COUNT_THRESHOLD=300*1e3,ar.LARGE_FILE_HEAP_OPERATION_THRESHOLD=256*1024*1024,ar.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:Qi.tabSize,indentSize:Qi.indentSize,insertSpaces:Qi.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:Qi.trimAutoWhitespace,largeFileOptimizations:Qi.largeFileOptimizations,bracketPairColorizationOptions:Qi.bracketPairColorizationOptions},ar);m_=ud=UX([Gb(4,CT),Gb(5,qt),Gb(6,Gn),Gb(7,ke)],m_);function ZX(o){let e=0;for(const t of o)if(t===" "||t===" ")e++;else break;return e}function zS(o){return!!(o.options.overviewRuler&&o.options.overviewRuler.color)}function YX(o){return!!o.after||!!o.before}function F1(o){return!!o.options.after||!!o.options.before}class WP{constructor(){this._decorationsTree0=new BS,this._decorationsTree1=new BS,this._injectedTextDecorationsTree=new BS}ensureAllNodesHaveRanges(e){this.getAll(e,0,!1,!1,!1)}_ensureNodesHaveRanges(e,t){for(const i of t)i.range===null&&(i.range=e.getRangeAt(i.cachedAbsoluteStart,i.cachedAbsoluteEnd));return t}getAllInInterval(e,t,i,n,s,r){const a=e.getVersionId(),l=this._intervalSearch(t,i,n,s,a,r);return this._ensureNodesHaveRanges(e,l)}_intervalSearch(e,t,i,n,s,r){const a=this._decorationsTree0.intervalSearch(e,t,i,n,s,r),l=this._decorationsTree1.intervalSearch(e,t,i,n,s,r),c=this._injectedTextDecorationsTree.intervalSearch(e,t,i,n,s,r);return a.concat(l).concat(c)}getInjectedTextInInterval(e,t,i,n){const s=e.getVersionId(),r=this._injectedTextDecorationsTree.intervalSearch(t,i,n,!1,s,!1);return this._ensureNodesHaveRanges(e,r).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getAllInjectedText(e,t){const i=e.getVersionId(),n=this._injectedTextDecorationsTree.search(t,!1,i,!1);return this._ensureNodesHaveRanges(e,n).filter(s=>s.options.showIfCollapsed||!s.range.isEmpty())}getAll(e,t,i,n,s){const r=e.getVersionId(),a=this._search(t,i,n,r,s);return this._ensureNodesHaveRanges(e,a)}_search(e,t,i,n,s){if(i)return this._decorationsTree1.search(e,t,n,s);{const r=this._decorationsTree0.search(e,t,n,s),a=this._decorationsTree1.search(e,t,n,s),l=this._injectedTextDecorationsTree.search(e,t,n,s);return r.concat(a).concat(l)}}collectNodesFromOwner(e){const t=this._decorationsTree0.collectNodesFromOwner(e),i=this._decorationsTree1.collectNodesFromOwner(e),n=this._injectedTextDecorationsTree.collectNodesFromOwner(e);return t.concat(i).concat(n)}collectNodesPostOrder(){const e=this._decorationsTree0.collectNodesPostOrder(),t=this._decorationsTree1.collectNodesPostOrder(),i=this._injectedTextDecorationsTree.collectNodesPostOrder();return e.concat(t).concat(i)}insert(e){F1(e)?this._injectedTextDecorationsTree.insert(e):zS(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)}delete(e){F1(e)?this._injectedTextDecorationsTree.delete(e):zS(e)?this._decorationsTree1.delete(e):this._decorationsTree0.delete(e)}getNodeRange(e,t){const i=e.getVersionId();return t.cachedVersionId!==i&&this._resolveNode(t,i),t.range===null&&(t.range=e.getRangeAt(t.cachedAbsoluteStart,t.cachedAbsoluteEnd)),t.range}_resolveNode(e,t){F1(e)?this._injectedTextDecorationsTree.resolveNode(e,t):zS(e)?this._decorationsTree1.resolveNode(e,t):this._decorationsTree0.resolveNode(e,t)}acceptReplace(e,t,i,n){this._decorationsTree0.acceptReplace(e,t,i,n),this._decorationsTree1.acceptReplace(e,t,i,n),this._injectedTextDecorationsTree.acceptReplace(e,t,i,n)}}function Mr(o){return o.replace(/[^a-z0-9\-_]/gi," ")}class v9{constructor(e){this.color=e.color||"",this.darkColor=e.darkColor||""}}class QX extends v9{constructor(e){super(e),this._resolvedColor=null,this.position=typeof e.position=="number"?e.position:LC.Center}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(e,t){if(typeof e=="string")return e;const i=e?t.getColor(e.id):null;return i?i.toString():""}}class XX{constructor(e){this.position=e?.position??Ao.Center,this.persistLane=e?.persistLane}}class JX extends v9{constructor(e){super(e),this.position=e.position,this.sectionHeaderStyle=e.sectionHeaderStyle??null,this.sectionHeaderText=e.sectionHeaderText??null}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(e,t){return typeof e=="string"?q.fromHex(e):t.getColor(e.id)}}class Bc{static from(e){return e instanceof Bc?e:new Bc(e)}constructor(e){this.content=e.content||"",this.inlineClassName=e.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=e.attachedData||null,this.cursorStops=e.cursorStops||null}}class kt{static register(e){return new kt(e)}static createDynamic(e){return new kt(e)}constructor(e){this.description=e.description,this.blockClassName=e.blockClassName?Mr(e.blockClassName):null,this.blockDoesNotCollapse=e.blockDoesNotCollapse??null,this.blockIsAfterEnd=e.blockIsAfterEnd??null,this.blockPadding=e.blockPadding??null,this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?Mr(e.className):null,this.shouldFillLineOnLineBreak=e.shouldFillLineOnLineBreak??null,this.hoverMessage=e.hoverMessage||null,this.glyphMarginHoverMessage=e.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=e.lineNumberHoverMessage||null,this.isWholeLine=e.isWholeLine||!1,this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new QX(e.overviewRuler):null,this.minimap=e.minimap?new JX(e.minimap):null,this.glyphMargin=e.glyphMarginClassName?new XX(e.glyphMargin):null,this.glyphMarginClassName=e.glyphMarginClassName?Mr(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?Mr(e.linesDecorationsClassName):null,this.lineNumberClassName=e.lineNumberClassName?Mr(e.lineNumberClassName):null,this.linesDecorationsTooltip=e.linesDecorationsTooltip?rH(e.linesDecorationsTooltip):null,this.firstLineDecorationClassName=e.firstLineDecorationClassName?Mr(e.firstLineDecorationClassName):null,this.marginClassName=e.marginClassName?Mr(e.marginClassName):null,this.inlineClassName=e.inlineClassName?Mr(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?Mr(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?Mr(e.afterContentClassName):null,this.after=e.after?Bc.from(e.after):null,this.before=e.before?Bc.from(e.before):null,this.hideInCommentTokens=e.hideInCommentTokens??!1,this.hideInStringTokens=e.hideInStringTokens??!1}}kt.EMPTY=kt.register({description:"empty"});const HP=[kt.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),kt.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),kt.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),kt.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function VP(o){return o instanceof kt?o:kt.createDynamic(o)}class eJ extends z{constructor(e){super(),this.handleBeforeFire=e,this._actual=this._register(new A),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._deferredCnt=0,this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._affectsLineNumber=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){this._deferredCnt--,this._deferredCnt===0&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null)}recordLineAffectedByInjectedText(e){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(e)}checkAffectedAndFire(e){this._affectsMinimap||=!!e.minimap?.position,this._affectsOverviewRuler||=!!e.overviewRuler?.color,this._affectsGlyphMargin||=!!e.glyphMarginClassName,this._affectsLineNumber||=!!e.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){this._deferredCnt===0?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines);const e={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler,affectsGlyphMargin:this._affectsGlyphMargin,affectsLineNumber:this._affectsLineNumber};this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._actual.fire(e)}}class tJ extends z{constructor(){super(),this._fastEmitter=this._register(new A),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new A),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(e=null){if(this._deferredCnt--,this._deferredCnt===0&&this._deferredEvent!==null){this._deferredEvent.rawContentChangedEvent.resultingSelection=e;const t=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(t),this._slowEmitter.fire(t)}}fire(e){if(this._deferredCnt>0){this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(e):this._deferredEvent=e;return}this._fastEmitter.fire(e),this._slowEmitter.fire(e)}}var iJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Yb=function(o,e){return function(t,i){e(t,i,o)}},Vu;function sd(o){return o.toString()}let nJ=class{constructor(e,t,i){this.model=e,this._modelEventListeners=new X,this.model=e,this._modelEventListeners.add(e.onWillDispose(()=>t(e))),this._modelEventListeners.add(e.onDidChangeLanguage(n=>i(e,n)))}dispose(){this._modelEventListeners.dispose()}};const sJ=Un||Ue?1:2;class oJ{constructor(e,t,i,n,s,r,a,l){this.uri=e,this.initialUndoRedoSnapshot=t,this.time=i,this.sharesUndoRedoStack=n,this.heapSize=s,this.sha1=r,this.versionId=a,this.alternativeVersionId=l}}var oh;let ID=(oh=class extends z{constructor(e,t,i,n){super(),this._configurationService=e,this._resourcePropertiesService=t,this._undoRedoService=i,this._instantiationService=n,this._onModelAdded=this._register(new A),this.onModelAdded=this._onModelAdded.event,this._onModelRemoved=this._register(new A),this.onModelRemoved=this._onModelRemoved.event,this._onModelModeChanged=this._register(new A),this.onModelLanguageChanged=this._onModelModeChanged.event,this._modelCreationOptionsByLanguageAndResource=Object.create(null),this._models={},this._disposedModels=new Map,this._disposedModelsHeapSize=0,this._register(this._configurationService.onDidChangeConfiguration(s=>this._updateModelOptions(s))),this._updateModelOptions(void 0)}static _readModelOptions(e,t){let i=Qi.tabSize;if(e.editor&&typeof e.editor.tabSize<"u"){const u=parseInt(e.editor.tabSize,10);isNaN(u)||(i=u),i<1&&(i=1)}let n="tabSize";if(e.editor&&typeof e.editor.indentSize<"u"&&e.editor.indentSize!=="tabSize"){const u=parseInt(e.editor.indentSize,10);isNaN(u)||(n=Math.max(u,1))}let s=Qi.insertSpaces;e.editor&&typeof e.editor.insertSpaces<"u"&&(s=e.editor.insertSpaces==="false"?!1:!!e.editor.insertSpaces);let r=sJ;const a=e.eol;a===`\r -`?r=2:a===` -`&&(r=1);let l=Qi.trimAutoWhitespace;e.editor&&typeof e.editor.trimAutoWhitespace<"u"&&(l=e.editor.trimAutoWhitespace==="false"?!1:!!e.editor.trimAutoWhitespace);let c=Qi.detectIndentation;e.editor&&typeof e.editor.detectIndentation<"u"&&(c=e.editor.detectIndentation==="false"?!1:!!e.editor.detectIndentation);let d=Qi.largeFileOptimizations;e.editor&&typeof e.editor.largeFileOptimizations<"u"&&(d=e.editor.largeFileOptimizations==="false"?!1:!!e.editor.largeFileOptimizations);let h=Qi.bracketPairColorizationOptions;return e.editor?.bracketPairColorization&&typeof e.editor.bracketPairColorization=="object"&&(h={enabled:!!e.editor.bracketPairColorization.enabled,independentColorPoolPerBracketType:!!e.editor.bracketPairColorization.independentColorPoolPerBracketType}),{isForSimpleWidget:t,tabSize:i,indentSize:n,insertSpaces:s,detectIndentation:c,defaultEOL:r,trimAutoWhitespace:l,largeFileOptimizations:d,bracketPairColorizationOptions:h}}_getEOL(e,t){if(e)return this._resourcePropertiesService.getEOL(e,t);const i=this._configurationService.getValue("files.eol",{overrideIdentifier:t});return i&&typeof i=="string"&&i!=="auto"?i:Ns===3||Ns===2?` -`:`\r -`}_shouldRestoreUndoStack(){const e=this._configurationService.getValue("files.restoreUndoStack");return typeof e=="boolean"?e:!0}getCreationOptions(e,t,i){const n=typeof e=="string"?e:e.languageId;let s=this._modelCreationOptionsByLanguageAndResource[n+t];if(!s){const r=this._configurationService.getValue("editor",{overrideIdentifier:n,resource:t}),a=this._getEOL(t,n);s=Vu._readModelOptions({editor:r,eol:a},i),this._modelCreationOptionsByLanguageAndResource[n+t]=s}return s}_updateModelOptions(e){const t=this._modelCreationOptionsByLanguageAndResource;this._modelCreationOptionsByLanguageAndResource=Object.create(null);const i=Object.keys(this._models);for(let n=0,s=i.length;ne){const t=[];for(this._disposedModels.forEach(i=>{i.sharesUndoRedoStack||t.push(i)}),t.sort((i,n)=>i.time-n.time);t.length>0&&this._disposedModelsHeapSize>e;){const i=t.shift();this._removeDisposedModel(i.uri),i.initialUndoRedoSnapshot!==null&&this._undoRedoService.restoreSnapshot(i.initialUndoRedoSnapshot)}}}_createModelData(e,t,i,n){const s=this.getCreationOptions(t,i,n),r=this._instantiationService.createInstance(m_,e,t,s,i);if(i&&this._disposedModels.has(sd(i))){const c=this._removeDisposedModel(i),d=this._undoRedoService.getElements(i),h=this._getSHA1Computer(),u=h.canComputeSHA1(r)?h.computeSHA1(r)===c.sha1:!1;if(u||c.sharesUndoRedoStack){for(const f of d.past)Ja(f)&&f.matchesResource(i)&&f.setModel(r);for(const f of d.future)Ja(f)&&f.matchesResource(i)&&f.setModel(r);this._undoRedoService.setElementsValidFlag(i,!0,f=>Ja(f)&&f.matchesResource(i)),u&&(r._overwriteVersionId(c.versionId),r._overwriteAlternativeVersionId(c.alternativeVersionId),r._overwriteInitialUndoRedoSnapshot(c.initialUndoRedoSnapshot))}else c.initialUndoRedoSnapshot!==null&&this._undoRedoService.restoreSnapshot(c.initialUndoRedoSnapshot)}const a=sd(r.uri);if(this._models[a])throw new Error("ModelService: Cannot add model because it already exists!");const l=new nJ(r,c=>this._onWillDispose(c),(c,d)=>this._onDidChangeLanguage(c,d));return this._models[a]=l,l}createModel(e,t,i,n=!1){let s;return t?s=this._createModelData(e,t,i,n):s=this._createModelData(e,Bs,i,n),this._onModelAdded.fire(s.model),s.model}getModels(){const e=[],t=Object.keys(this._models);for(let i=0,n=t.length;i0||c.future.length>0){for(const d of c.past)Ja(d)&&d.matchesResource(e.uri)&&(s=!0,r+=d.heapSize(e.uri),d.setModel(e.uri));for(const d of c.future)Ja(d)&&d.matchesResource(e.uri)&&(s=!0,r+=d.heapSize(e.uri),d.setModel(e.uri))}}const a=Vu.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK,l=this._getSHA1Computer();if(s)if(!n&&(r>a||!l.canComputeSHA1(e))){const c=i.model.getInitialUndoRedoSnapshot();c!==null&&this._undoRedoService.restoreSnapshot(c)}else this._ensureDisposedModelsHeapSize(a-r),this._undoRedoService.setElementsValidFlag(e.uri,!1,c=>Ja(c)&&c.matchesResource(e.uri)),this._insertDisposedModel(new oJ(e.uri,i.model.getInitialUndoRedoSnapshot(),Date.now(),n,r,l.computeSHA1(e),e.getVersionId(),e.getAlternativeVersionId()));else if(!n){const c=i.model.getInitialUndoRedoSnapshot();c!==null&&this._undoRedoService.restoreSnapshot(c)}delete this._models[t],i.dispose(),delete this._modelCreationOptionsByLanguageAndResource[e.getLanguageId()+e.uri],this._onModelRemoved.fire(e)}_onDidChangeLanguage(e,t){const i=t.oldLanguage,n=e.getLanguageId(),s=this.getCreationOptions(i,e.uri,e.isForSimpleWidget),r=this.getCreationOptions(n,e.uri,e.isForSimpleWidget);Vu._setModelOptionsForModel(e,r,s),this._onModelModeChanged.fire({model:e,oldLanguageId:i})}_getSHA1Computer(){return new ED}},Vu=oh,oh.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK=20*1024*1024,oh);ID=Vu=iJ([Yb(0,lt),Yb(1,p3),Yb(2,CT),Yb(3,ke)],ID);const Fw=class Fw{canComputeSHA1(e){return e.getValueLength()<=Fw.MAX_MODEL_SIZE}computeSHA1(e){const t=new Kx,i=e.createSnapshot();let n;for(;n=i.read();)t.update(n);return t.digest()}};Fw.MAX_MODEL_SIZE=10*1024*1024;let ED=Fw;var ND;(function(o){o[o.PRESERVE=0]="PRESERVE",o[o.LAST=1]="LAST"})(ND||(ND={}));const w9={Quickaccess:"workbench.contributions.quickaccess"};class rJ{constructor(){this.providers=[],this.defaultProvider=void 0}registerQuickAccessProvider(e){return e.prefix.length===0?this.defaultProvider=e:this.providers.push(e),this.providers.sort((t,i)=>i.prefix.length-t.prefix.length),_e(()=>{this.providers.splice(this.providers.indexOf(e),1),this.defaultProvider===e&&(this.defaultProvider=void 0)})}getQuickAccessProviders(){return Ag([this.defaultProvider,...this.providers])}getQuickAccessProvider(e){return e&&this.providers.find(i=>e.startsWith(i.prefix))||void 0||this.defaultProvider}}Bi.add(w9.Quickaccess,new rJ);const aJ={ctrlCmd:!1,alt:!1};var yg;(function(o){o[o.Blur=1]="Blur",o[o.Gesture=2]="Gesture",o[o.Other=3]="Other"})(yg||(yg={}));var jr;(function(o){o[o.NONE=0]="NONE",o[o.FIRST=1]="FIRST",o[o.SECOND=2]="SECOND",o[o.LAST=3]="LAST"})(jr||(jr={}));var yt;(function(o){o[o.First=1]="First",o[o.Second=2]="Second",o[o.Last=3]="Last",o[o.Next=4]="Next",o[o.Previous=5]="Previous",o[o.NextPage=6]="NextPage",o[o.PreviousPage=7]="PreviousPage",o[o.NextSeparator=8]="NextSeparator",o[o.PreviousSeparator=9]="PreviousSeparator"})(yt||(yt={}));var iv;(function(o){o[o.Title=1]="Title",o[o.Inline=2]="Inline"})(iv||(iv={}));const fy=He("quickInputService");var lJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},zP=function(o,e){return function(t,i){e(t,i,o)}};let TD=class extends z{constructor(e,t){super(),this.quickInputService=e,this.instantiationService=t,this.registry=Bi.as(w9.Quickaccess),this.mapProviderToDescriptor=new Map,this.lastAcceptedPickerValues=new Map,this.visibleQuickAccess=void 0}show(e="",t){this.doShowOrPick(e,!1,t)}doShowOrPick(e,t,i){const[n,s]=this.getOrInstantiateProvider(e,i?.enabledProviderPrefixes),r=this.visibleQuickAccess,a=r?.descriptor;if(r&&s&&a===s){e!==s.prefix&&!i?.preserveValue&&(r.picker.value=e),this.adjustValueSelection(r.picker,s,i);return}if(s&&!i?.preserveValue){let g;if(r&&a&&a!==s){const p=r.value.substr(a.prefix.length);p&&(g=`${s.prefix}${p}`)}if(!g){const p=n?.defaultFilterValue;p===ND.LAST?g=this.lastAcceptedPickerValues.get(s):typeof p=="string"&&(g=`${s.prefix}${p}`)}typeof g=="string"&&(e=g)}const l=r?.picker?.valueSelection,c=r?.picker?.value,d=new X,h=d.add(this.quickInputService.createQuickPick({useSeparators:!0}));h.value=e,this.adjustValueSelection(h,s,i),h.placeholder=i?.placeholder??s?.placeholder,h.quickNavigate=i?.quickNavigateConfiguration,h.hideInput=!!h.quickNavigate&&!r,(typeof i?.itemActivation=="number"||i?.quickNavigateConfiguration)&&(h.itemActivation=i?.itemActivation??jr.SECOND),h.contextKey=s?.contextKey,h.filterValue=g=>g.substring(s?s.prefix.length:0);let u;t&&(u=new qN,d.add(J.once(h.onWillAccept)(g=>{g.veto(),h.hide()}))),d.add(this.registerPickerListeners(h,n,s,e,i));const f=d.add(new In);if(n&&d.add(n.provide(h,f.token,i?.providerOptions)),J.once(h.onDidHide)(()=>{h.selectedItems.length===0&&f.cancel(),d.dispose(),u?.complete(h.selectedItems.slice(0))}),h.show(),l&&c===e&&(h.valueSelection=l),t)return u?.p}adjustValueSelection(e,t,i){let n;i?.preserveValue?n=[e.value.length,e.value.length]:n=[t?.prefix.length??0,e.value.length],e.valueSelection=n}registerPickerListeners(e,t,i,n,s){const r=new X,a=this.visibleQuickAccess={picker:e,descriptor:i,value:n};return r.add(_e(()=>{a===this.visibleQuickAccess&&(this.visibleQuickAccess=void 0)})),r.add(e.onDidChangeValue(l=>{const[c]=this.getOrInstantiateProvider(l,s?.enabledProviderPrefixes);c!==t?this.show(l,{enabledProviderPrefixes:s?.enabledProviderPrefixes,preserveValue:!0,providerOptions:s?.providerOptions}):a.value=l})),i&&r.add(e.onDidAccept(()=>{this.lastAcceptedPickerValues.set(i,e.value)})),r}getOrInstantiateProvider(e,t){const i=this.registry.getQuickAccessProvider(e);if(!i||t&&!t?.includes(i.prefix))return[void 0,void 0];let n=this.mapProviderToDescriptor.get(i);return n||(n=this.instantiationService.createInstance(i.ctor),this.mapProviderToDescriptor.set(i,n)),[n,i]}};TD=lJ([zP(0,fy),zP(1,ke)],TD);class nb extends xr{constructor(e){super(),this._onChange=this._register(new A),this.onChange=this._onChange.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._opts=e,this._checked=this._opts.isChecked;const t=["monaco-custom-toggle"];this._opts.icon&&(this._icon=this._opts.icon,t.push(...Ee.asClassNameArray(this._icon))),this._opts.actionClassName&&t.push(...this._opts.actionClassName.split(" ")),this._checked&&t.push("checked"),this.domNode=document.createElement("div"),this._hover=this._register(La().setupManagedHover(e.hoverDelegate??Ks("mouse"),this.domNode,this._opts.title)),this.domNode.classList.add(...t),this._opts.notFocusable||(this.domNode.tabIndex=0),this.domNode.setAttribute("role","checkbox"),this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.setAttribute("aria-label",this._opts.title),this.applyStyles(),this.onclick(this.domNode,i=>{this.enabled&&(this.checked=!this._checked,this._onChange.fire(!1),i.preventDefault())}),this._register(this.ignoreGesture(this.domNode)),this.onkeydown(this.domNode,i=>{if(i.keyCode===10||i.keyCode===3){this.checked=!this._checked,this._onChange.fire(!0),i.preventDefault(),i.stopPropagation();return}this._onKeyDown.fire(i)})}get enabled(){return this.domNode.getAttribute("aria-disabled")!=="true"}focus(){this.domNode.focus()}get checked(){return this._checked}set checked(e){this._checked=e,this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.classList.toggle("checked",this._checked),this.applyStyles()}width(){return 22}applyStyles(){this.domNode&&(this.domNode.style.borderColor=this._checked&&this._opts.inputActiveOptionBorder||"",this.domNode.style.color=this._checked&&this._opts.inputActiveOptionForeground||"inherit",this.domNode.style.backgroundColor=this._checked&&this._opts.inputActiveOptionBackground||"")}enable(){this.domNode.setAttribute("aria-disabled",String(!1))}disable(){this.domNode.setAttribute("aria-disabled",String(!0))}}var cJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};class y9{constructor(e){this.nodes=e}toString(){return this.nodes.map(e=>typeof e=="string"?e:e.label).join("")}}cJ([Jt],y9.prototype,"toString",null);const dJ=/\[([^\]]+)\]\(((?:https?:\/\/|command:|file:)[^\)\s]+)(?: (["'])(.+?)(\3))?\)/gi;function hJ(o){const e=[];let t=0,i;for(;i=dJ.exec(o);){i.index-t>0&&e.push(o.substring(t,i.index));const[,n,s,,r]=i;r?e.push({label:n,href:s,title:r}):e.push({label:n,href:s}),t=i.index+i[0].length}return t{DV(f)&&je.stop(f,!0),t.callback(s.href)},c=t.disposables.add(new ze(a,ee.CLICK)).event,d=t.disposables.add(new ze(a,ee.KEY_DOWN)).event,h=J.chain(d,f=>f.filter(g=>{const p=new Nt(g);return p.equals(10)||p.equals(3)}));t.disposables.add(fn.addTarget(a));const u=t.disposables.add(new ze(a,St.Tap)).event;J.any(c,u,h)(l,null,t.disposables),e.appendChild(a)}}var mJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},UP=function(o,e){return function(t,i){e(t,i,o)}};const S9="inQuickInput",pJ=new le(S9,!1,m("inQuickInput","Whether keyboard focus is inside the quick input control")),_J=re.has(S9),L9="quickInputType",bJ=new le(L9,void 0,m("quickInputType","The type of the currently visible quick input")),x9="cursorAtEndOfQuickInputBox",CJ=new le(x9,!1,m("cursorAtEndOfQuickInputBox","Whether the cursor in the quick input is at the end of the input box")),vJ=re.has(x9),MD={iconClass:Ee.asClassName(ie.quickInputBack),tooltip:m("quickInput.back","Back")},Bw=class Bw extends z{constructor(e){super(),this.ui=e,this._widgetUpdated=!1,this.visible=!1,this._enabled=!0,this._busy=!1,this._ignoreFocusOut=!1,this._leftButtons=[],this._rightButtons=[],this._inlineButtons=[],this.buttonsUpdated=!1,this._toggles=[],this.togglesUpdated=!1,this.noValidationMessage=Bw.noPromptMessage,this._severity=Qt.Ignore,this.onDidTriggerButtonEmitter=this._register(new A),this.onDidHideEmitter=this._register(new A),this.onWillHideEmitter=this._register(new A),this.onDisposeEmitter=this._register(new A),this.visibleDisposables=this._register(new X),this.onDidHide=this.onDidHideEmitter.event}get title(){return this._title}set title(e){this._title=e,this.update()}get description(){return this._description}set description(e){this._description=e,this.update()}get step(){return this._steps}set step(e){this._steps=e,this.update()}get totalSteps(){return this._totalSteps}set totalSteps(e){this._totalSteps=e,this.update()}get enabled(){return this._enabled}set enabled(e){this._enabled=e,this.update()}get contextKey(){return this._contextKey}set contextKey(e){this._contextKey=e,this.update()}get busy(){return this._busy}set busy(e){this._busy=e,this.update()}get ignoreFocusOut(){return this._ignoreFocusOut}set ignoreFocusOut(e){const t=this._ignoreFocusOut!==e&&!Tc;this._ignoreFocusOut=e&&!Tc,t&&this.update()}get titleButtons(){return this._leftButtons.length?[...this._leftButtons,this._rightButtons]:this._rightButtons}get buttons(){return[...this._leftButtons,...this._rightButtons,...this._inlineButtons]}set buttons(e){this._leftButtons=e.filter(t=>t===MD),this._rightButtons=e.filter(t=>t!==MD&&t.location!==iv.Inline),this._inlineButtons=e.filter(t=>t.location===iv.Inline),this.buttonsUpdated=!0,this.update()}get toggles(){return this._toggles}set toggles(e){this._toggles=e??[],this.togglesUpdated=!0,this.update()}get validationMessage(){return this._validationMessage}set validationMessage(e){this._validationMessage=e,this.update()}get severity(){return this._severity}set severity(e){this._severity=e,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.onDidTriggerButton(e=>{this.buttons.indexOf(e)!==-1&&this.onDidTriggerButtonEmitter.fire(e)})),this.ui.show(this),this.visible=!0,this._lastValidationMessage=void 0,this._lastSeverity=void 0,this.buttons.length&&(this.buttonsUpdated=!0),this.toggles.length&&(this.togglesUpdated=!0),this.update())}hide(){this.visible&&this.ui.hide()}didHide(e=yg.Other){this.visible=!1,this.visibleDisposables.clear(),this.onDidHideEmitter.fire({reason:e})}willHide(e=yg.Other){this.onWillHideEmitter.fire({reason:e})}update(){if(!this.visible)return;const e=this.getTitle();e&&this.ui.title.textContent!==e?this.ui.title.textContent=e:!e&&this.ui.title.innerHTML!==" "&&(this.ui.title.innerText=" ");const t=this.getDescription();if(this.ui.description1.textContent!==t&&(this.ui.description1.textContent=t),this.ui.description2.textContent!==t&&(this.ui.description2.textContent=t),this._widgetUpdated&&(this._widgetUpdated=!1,this._widget?un(this.ui.widget,this._widget):un(this.ui.widget)),this.busy&&!this.busyDelay&&(this.busyDelay=new wr,this.busyDelay.setIfNotSet(()=>{this.visible&&this.ui.progressBar.infinite()},800)),!this.busy&&this.busyDelay&&(this.ui.progressBar.stop(),this.busyDelay.cancel(),this.busyDelay=void 0),this.buttonsUpdated){this.buttonsUpdated=!1,this.ui.leftActionBar.clear();const n=this._leftButtons.map((a,l)=>rp(a,`id-${l}`,async()=>this.onDidTriggerButtonEmitter.fire(a)));this.ui.leftActionBar.push(n,{icon:!0,label:!1}),this.ui.rightActionBar.clear();const s=this._rightButtons.map((a,l)=>rp(a,`id-${l}`,async()=>this.onDidTriggerButtonEmitter.fire(a)));this.ui.rightActionBar.push(s,{icon:!0,label:!1}),this.ui.inlineActionBar.clear();const r=this._inlineButtons.map((a,l)=>rp(a,`id-${l}`,async()=>this.onDidTriggerButtonEmitter.fire(a)));this.ui.inlineActionBar.push(r,{icon:!0,label:!1})}if(this.togglesUpdated){this.togglesUpdated=!1;const n=this.toggles?.filter(s=>s instanceof nb)??[];this.ui.inputBox.toggles=n}this.ui.ignoreFocusOut=this.ignoreFocusOut,this.ui.setEnabled(this.enabled),this.ui.setContextKey(this.contextKey);const i=this.validationMessage||this.noValidationMessage;this._lastValidationMessage!==i&&(this._lastValidationMessage=i,un(this.ui.message),gJ(i,this.ui.message,{callback:n=>{this.ui.linkOpenerDelegate(n)},disposables:this.visibleDisposables})),this._lastSeverity!==this.severity&&(this._lastSeverity=this.severity,this.showMessageDecoration(this.severity))}getTitle(){return this.title&&this.step?`${this.title} (${this.getSteps()})`:this.title?this.title:this.step?this.getSteps():""}getDescription(){return this.description||""}getSteps(){return this.step&&this.totalSteps?m("quickInput.steps","{0}/{1}",this.step,this.totalSteps):this.step?String(this.step):""}showMessageDecoration(e){if(this.ui.inputBox.showDecoration(e),e!==Qt.Ignore){const t=this.ui.inputBox.stylesForType(e);this.ui.message.style.color=t.foreground?`${t.foreground}`:"",this.ui.message.style.backgroundColor=t.background?`${t.background}`:"",this.ui.message.style.border=t.border?`1px solid ${t.border}`:"",this.ui.message.style.marginBottom="-2px"}else this.ui.message.style.color="",this.ui.message.style.backgroundColor="",this.ui.message.style.border="",this.ui.message.style.marginBottom=""}dispose(){this.hide(),this.onDisposeEmitter.fire(),super.dispose()}};Bw.noPromptMessage=m("inputModeEntry","Press 'Enter' to confirm your input or 'Escape' to cancel");let nv=Bw;const Ww=class Ww extends nv{constructor(){super(...arguments),this._value="",this.onDidChangeValueEmitter=this._register(new A),this.onWillAcceptEmitter=this._register(new A),this.onDidAcceptEmitter=this._register(new A),this.onDidCustomEmitter=this._register(new A),this._items=[],this.itemsUpdated=!1,this._canSelectMany=!1,this._canAcceptInBackground=!1,this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._matchOnLabelMode="fuzzy",this._sortByLabel=!0,this._keepScrollPosition=!1,this._itemActivation=jr.FIRST,this._activeItems=[],this.activeItemsUpdated=!1,this.activeItemsToConfirm=[],this.onDidChangeActiveEmitter=this._register(new A),this._selectedItems=[],this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=[],this.onDidChangeSelectionEmitter=this._register(new A),this.onDidTriggerItemButtonEmitter=this._register(new A),this.onDidTriggerSeparatorButtonEmitter=this._register(new A),this.valueSelectionUpdated=!0,this._ok="default",this._customButton=!1,this._focusEventBufferer=new W_,this.type="quickPick",this.filterValue=e=>e,this.onDidChangeValue=this.onDidChangeValueEmitter.event,this.onWillAccept=this.onWillAcceptEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event,this.onDidChangeActive=this.onDidChangeActiveEmitter.event,this.onDidChangeSelection=this.onDidChangeSelectionEmitter.event,this.onDidTriggerItemButton=this.onDidTriggerItemButtonEmitter.event,this.onDidTriggerSeparatorButton=this.onDidTriggerSeparatorButtonEmitter.event}get quickNavigate(){return this._quickNavigate}set quickNavigate(e){this._quickNavigate=e,this.update()}get value(){return this._value}set value(e){this.doSetValue(e)}doSetValue(e,t){this._value!==e&&(this._value=e,t||this.update(),this.visible&&this.ui.list.filter(this.filterValue(this._value))&&this.trySelectFirst(),this.onDidChangeValueEmitter.fire(this._value))}set ariaLabel(e){this._ariaLabel=e,this.update()}get ariaLabel(){return this._ariaLabel}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.update()}get items(){return this._items}get scrollTop(){return this.ui.list.scrollTop}set scrollTop(e){this.ui.list.scrollTop=e}set items(e){this._items=e,this.itemsUpdated=!0,this.update()}get canSelectMany(){return this._canSelectMany}set canSelectMany(e){this._canSelectMany=e,this.update()}get canAcceptInBackground(){return this._canAcceptInBackground}set canAcceptInBackground(e){this._canAcceptInBackground=e}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(e){this._matchOnDescription=e,this.update()}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(e){this._matchOnDetail=e,this.update()}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(e){this._matchOnLabel=e,this.update()}get matchOnLabelMode(){return this._matchOnLabelMode}set matchOnLabelMode(e){this._matchOnLabelMode=e,this.update()}get sortByLabel(){return this._sortByLabel}set sortByLabel(e){this._sortByLabel=e,this.update()}get keepScrollPosition(){return this._keepScrollPosition}set keepScrollPosition(e){this._keepScrollPosition=e}get itemActivation(){return this._itemActivation}set itemActivation(e){this._itemActivation=e}get activeItems(){return this._activeItems}set activeItems(e){this._activeItems=e,this.activeItemsUpdated=!0,this.update()}get selectedItems(){return this._selectedItems}set selectedItems(e){this._selectedItems=e,this.selectedItemsUpdated=!0,this.update()}get keyMods(){return this._quickNavigate?aJ:this.ui.keyMods}get valueSelection(){const e=this.ui.inputBox.getSelection();if(e)return[e.start,e.end]}set valueSelection(e){this._valueSelection=e,this.valueSelectionUpdated=!0,this.update()}get customButton(){return this._customButton}set customButton(e){this._customButton=e,this.update()}get customLabel(){return this._customButtonLabel}set customLabel(e){this._customButtonLabel=e,this.update()}get customHover(){return this._customButtonHover}set customHover(e){this._customButtonHover=e,this.update()}get ok(){return this._ok}set ok(e){this._ok=e,this.update()}get hideInput(){return!!this._hideInput}set hideInput(e){this._hideInput=e,this.update()}trySelectFirst(){this.canSelectMany||this.ui.list.focus(yt.First)}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(e=>{this.doSetValue(e,!0)})),this.visibleDisposables.add(this.ui.onDidAccept(()=>{this.canSelectMany?this.ui.list.getCheckedElements().length||(this._selectedItems=[],this.onDidChangeSelectionEmitter.fire(this.selectedItems)):this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems)),this.handleAccept(!1)})),this.visibleDisposables.add(this.ui.onDidCustom(()=>{this.onDidCustomEmitter.fire()})),this.visibleDisposables.add(this._focusEventBufferer.wrapEvent(this.ui.list.onDidChangeFocus,(e,t)=>t)(e=>{this.activeItemsUpdated||this.activeItemsToConfirm!==this._activeItems&&li(e,this._activeItems,(t,i)=>t===i)||(this._activeItems=e,this.onDidChangeActiveEmitter.fire(e))})),this.visibleDisposables.add(this.ui.list.onDidChangeSelection(({items:e,event:t})=>{if(this.canSelectMany){e.length&&this.ui.list.setSelectedElements([]);return}this.selectedItemsToConfirm!==this._selectedItems&&li(e,this._selectedItems,(i,n)=>i===n)||(this._selectedItems=e,this.onDidChangeSelectionEmitter.fire(e),e.length&&this.handleAccept(tT(t)&&t.button===1))})),this.visibleDisposables.add(this.ui.list.onChangedCheckedElements(e=>{!this.canSelectMany||!this.visible||this.selectedItemsToConfirm!==this._selectedItems&&li(e,this._selectedItems,(t,i)=>t===i)||(this._selectedItems=e,this.onDidChangeSelectionEmitter.fire(e))})),this.visibleDisposables.add(this.ui.list.onButtonTriggered(e=>this.onDidTriggerItemButtonEmitter.fire(e))),this.visibleDisposables.add(this.ui.list.onSeparatorButtonTriggered(e=>this.onDidTriggerSeparatorButtonEmitter.fire(e))),this.visibleDisposables.add(this.registerQuickNavigation()),this.valueSelectionUpdated=!0),super.show()}handleAccept(e){let t=!1;this.onWillAcceptEmitter.fire({veto:()=>t=!0}),t||this.onDidAcceptEmitter.fire({inBackground:e})}registerQuickNavigation(){return U(this.ui.container,ee.KEY_UP,e=>{if(this.canSelectMany||!this._quickNavigate)return;const t=new Nt(e),i=t.keyCode;this._quickNavigate.keybindings.some(r=>{const a=r.getChords();return a.length>1?!1:a[0].shiftKey&&i===4?!(t.ctrlKey||t.altKey||t.metaKey):!!(a[0].altKey&&i===6||a[0].ctrlKey&&i===5||a[0].metaKey&&i===57)})&&(this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(!1)),this._quickNavigate=void 0)})}update(){if(!this.visible)return;const e=this.keepScrollPosition?this.scrollTop:0,t=!!this.description,i={title:!!this.title||!!this.step||!!this.titleButtons.length,description:t,checkAll:this.canSelectMany&&!this._hideCheckAll,checkBox:this.canSelectMany,inputBox:!this._hideInput,progressBar:!this._hideInput||t,visibleCount:!0,count:this.canSelectMany&&!this._hideCountBadge,ok:this.ok==="default"?this.canSelectMany:this.ok,list:!0,message:!!this.validationMessage,customButton:this.customButton};this.ui.setVisibilities(i),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||"");let n=this.ariaLabel;!n&&i.inputBox&&(n=this.placeholder||Ww.DEFAULT_ARIA_LABEL,this.title&&(n+=` - ${this.title}`)),this.ui.list.ariaLabel!==n&&(this.ui.list.ariaLabel=n??null),this.ui.list.matchOnDescription=this.matchOnDescription,this.ui.list.matchOnDetail=this.matchOnDetail,this.ui.list.matchOnLabel=this.matchOnLabel,this.ui.list.matchOnLabelMode=this.matchOnLabelMode,this.ui.list.sortByLabel=this.sortByLabel,this.itemsUpdated&&(this.itemsUpdated=!1,this._focusEventBufferer.bufferEvents(()=>{switch(this.ui.list.setElements(this.items),this.ui.list.shouldLoop=!this.canSelectMany,this.ui.list.filter(this.filterValue(this.ui.inputBox.value)),this._itemActivation){case jr.NONE:this._itemActivation=jr.FIRST;break;case jr.SECOND:this.ui.list.focus(yt.Second),this._itemActivation=jr.FIRST;break;case jr.LAST:this.ui.list.focus(yt.Last),this._itemActivation=jr.FIRST;break;default:this.trySelectFirst();break}})),this.ui.container.classList.contains("show-checkboxes")!==!!this.canSelectMany&&(this.canSelectMany?this.ui.list.clearFocus():this.trySelectFirst()),this.activeItemsUpdated&&(this.activeItemsUpdated=!1,this.activeItemsToConfirm=this._activeItems,this.ui.list.setFocusedElements(this.activeItems),this.activeItemsToConfirm===this._activeItems&&(this.activeItemsToConfirm=null)),this.selectedItemsUpdated&&(this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=this._selectedItems,this.canSelectMany?this.ui.list.setCheckedElements(this.selectedItems):this.ui.list.setSelectedElements(this.selectedItems),this.selectedItemsToConfirm===this._selectedItems&&(this.selectedItemsToConfirm=null)),this.ui.customButton.label=this.customLabel||"",this.ui.customButton.element.title=this.customHover||"",i.inputBox||(this.ui.list.domFocus(),this.canSelectMany&&this.ui.list.focus(yt.First)),this.keepScrollPosition&&(this.scrollTop=e)}focus(e){this.ui.list.focus(e),this.canSelectMany&&this.ui.list.domFocus()}accept(e){e&&!this._canAcceptInBackground||this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(e??!1))}};Ww.DEFAULT_ARIA_LABEL=m("quickInputBox.ariaLabel","Type to narrow down results.");let sv=Ww,wJ=class extends nv{constructor(){super(...arguments),this._value="",this.valueSelectionUpdated=!0,this._password=!1,this.onDidValueChangeEmitter=this._register(new A),this.onDidAcceptEmitter=this._register(new A),this.type="inputBox",this.onDidChangeValue=this.onDidValueChangeEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event}get value(){return this._value}set value(e){this._value=e||"",this.update()}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.update()}get password(){return this._password}set password(e){this._password=e,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(e=>{e!==this.value&&(this._value=e,this.onDidValueChangeEmitter.fire(e))})),this.visibleDisposables.add(this.ui.onDidAccept(()=>this.onDidAcceptEmitter.fire())),this.valueSelectionUpdated=!0),super.show()}update(){if(!this.visible)return;this.ui.container.classList.remove("hidden-input");const e={title:!!this.title||!!this.step||!!this.titleButtons.length,description:!!this.description||!!this.step,inputBox:!0,message:!0,progressBar:!0};this.ui.setVisibilities(e),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||""),this.ui.inputBox.password!==this.password&&(this.ui.inputBox.password=this.password)}},RD=class extends gg{constructor(e,t){super("element",!1,i=>this.getOverrideOptions(i),e,t)}getOverrideOptions(e){const t=(Ei(e.content)?e.content.textContent??"":typeof e.content=="string"?e.content:e.content.value).includes(` -`);return{persistence:{hideOnKeyDown:!1},appearance:{showHoverHint:t,skipFadeInAnimation:!0}}}};RD=mJ([UP(0,lt),UP(1,au)],RD);q.white.toString(),q.white.toString();class AD extends z{get onDidClick(){return this._onDidClick.event}constructor(e,t){super(),this._label="",this._onDidClick=this._register(new A),this._onDidEscape=this._register(new A),this.options=t,this._element=document.createElement("a"),this._element.classList.add("monaco-button"),this._element.tabIndex=0,this._element.setAttribute("role","button"),this._element.classList.toggle("secondary",!!t.secondary);const i=t.secondary?t.buttonSecondaryBackground:t.buttonBackground,n=t.secondary?t.buttonSecondaryForeground:t.buttonForeground;this._element.style.color=n||"",this._element.style.backgroundColor=i||"",t.supportShortLabel&&(this._labelShortElement=document.createElement("div"),this._labelShortElement.classList.add("monaco-button-label-short"),this._element.appendChild(this._labelShortElement),this._labelElement=document.createElement("div"),this._labelElement.classList.add("monaco-button-label"),this._element.appendChild(this._labelElement),this._element.classList.add("monaco-text-button-with-short-label")),typeof t.title=="string"&&this.setTitle(t.title),typeof t.ariaLabel=="string"&&this._element.setAttribute("aria-label",t.ariaLabel),e.appendChild(this._element),this._register(fn.addTarget(this._element)),[ee.CLICK,St.Tap].forEach(s=>{this._register(U(this._element,s,r=>{if(!this.enabled){je.stop(r);return}this._onDidClick.fire(r)}))}),this._register(U(this._element,ee.KEY_DOWN,s=>{const r=new Nt(s);let a=!1;this.enabled&&(r.equals(3)||r.equals(10))?(this._onDidClick.fire(s),a=!0):r.equals(9)&&(this._onDidEscape.fire(s),this._element.blur(),a=!0),a&&je.stop(r,!0)})),this._register(U(this._element,ee.MOUSE_OVER,s=>{this._element.classList.contains("disabled")||this.updateBackground(!0)})),this._register(U(this._element,ee.MOUSE_OUT,s=>{this.updateBackground(!1)})),this.focusTracker=this._register(Ph(this._element)),this._register(this.focusTracker.onDidFocus(()=>{this.enabled&&this.updateBackground(!0)})),this._register(this.focusTracker.onDidBlur(()=>{this.enabled&&this.updateBackground(!1)}))}dispose(){super.dispose(),this._element.remove()}getContentElements(e){const t=[];for(let i of Qd(e))if(typeof i=="string"){if(i=i.trim(),i==="")continue;const n=document.createElement("span");n.textContent=i,t.push(n)}else t.push(i);return t}updateBackground(e){let t;this.options.secondary?t=e?this.options.buttonSecondaryHoverBackground:this.options.buttonSecondaryBackground:t=e?this.options.buttonHoverBackground:this.options.buttonBackground,t&&(this._element.style.backgroundColor=t)}get element(){return this._element}set label(e){if(this._label===e||ra(this._label)&&ra(e)&&Xq(this._label,e))return;this._element.classList.add("monaco-text-button");const t=this.options.supportShortLabel?this._labelElement:this._element;if(ra(e)){const n=oy(e,{inline:!0});n.dispose();const s=n.element.querySelector("p")?.innerHTML;if(s){const r=IF(s,{ADD_TAGS:["b","i","u","code","span"],ALLOWED_ATTR:["class"],RETURN_TRUSTED_TYPE:!0});t.innerHTML=r}else un(t)}else this.options.supportIcons?un(t,...this.getContentElements(e)):t.textContent=e;let i="";typeof this.options.title=="string"?i=this.options.title:this.options.title&&(i=cG(e)),this.setTitle(i),typeof this.options.ariaLabel=="string"?this._element.setAttribute("aria-label",this.options.ariaLabel):this.options.ariaLabel&&this._element.setAttribute("aria-label",i),this._label=e}get label(){return this._label}set icon(e){this._element.classList.add(...Ee.asClassNameArray(e))}set enabled(e){e?(this._element.classList.remove("disabled"),this._element.setAttribute("aria-disabled",String(!1)),this._element.tabIndex=0):(this._element.classList.add("disabled"),this._element.setAttribute("aria-disabled",String(!0)))}get enabled(){return!this._element.classList.contains("disabled")}setTitle(e){!this._hover&&e!==""?this._hover=this._register(La().setupManagedHover(this.options.hoverDelegate??Ks("mouse"),this._element,e)):this._hover&&this._hover.update(e)}}class PD{constructor(e,t,i){this.options=t,this.styles=i,this.count=0,this.element=Z(e,ce(".monaco-count-badge")),this.countFormat=this.options.countFormat||"{0}",this.titleFormat=this.options.titleFormat||"",this.setCount(this.options.count||0)}setCount(e){this.count=e,this.render()}setTitleFormat(e){this.titleFormat=e,this.render()}render(){this.element.textContent=$p(this.countFormat,this.count),this.element.title=$p(this.titleFormat,this.count),this.element.style.backgroundColor=this.styles.badgeBackground??"",this.element.style.color=this.styles.badgeForeground??"",this.styles.badgeBorder&&(this.element.style.border=`1px solid ${this.styles.badgeBorder}`)}}const $P="done",KP="active",$S="infinite",KS="infinite-long-running",jP="discrete",Hw=class Hw extends z{constructor(e,t){super(),this.progressSignal=this._register(new Dn),this.workedVal=0,this.showDelayedScheduler=this._register(new ci(()=>ns(this.element),0)),this.longRunningScheduler=this._register(new ci(()=>this.infiniteLongRunning(),Hw.LONG_RUNNING_INFINITE_THRESHOLD)),this.create(e,t)}create(e,t){this.element=document.createElement("div"),this.element.classList.add("monaco-progress-container"),this.element.setAttribute("role","progressbar"),this.element.setAttribute("aria-valuemin","0"),e.appendChild(this.element),this.bit=document.createElement("div"),this.bit.classList.add("progress-bit"),this.bit.style.backgroundColor=t?.progressBarBackground||"#0E70C0",this.element.appendChild(this.bit)}off(){this.bit.style.width="inherit",this.bit.style.opacity="1",this.element.classList.remove(KP,$S,KS,jP),this.workedVal=0,this.totalWork=void 0,this.longRunningScheduler.cancel(),this.progressSignal.clear()}stop(){return this.doDone(!1)}doDone(e){return this.element.classList.add($P),this.element.classList.contains($S)?(this.bit.style.opacity="0",e?setTimeout(()=>this.off(),200):this.off()):(this.bit.style.width="inherit",e?setTimeout(()=>this.off(),200):this.off()),this}infinite(){return this.bit.style.width="2%",this.bit.style.opacity="1",this.element.classList.remove(jP,$P,KS),this.element.classList.add(KP,$S),this.longRunningScheduler.schedule(),this}infiniteLongRunning(){this.element.classList.add(KS)}getContainer(){return this.element}};Hw.LONG_RUNNING_INFINITE_THRESHOLD=1e4;let OD=Hw;const yJ=m("caseDescription","Match Case"),SJ=m("wordsDescription","Match Whole Word"),LJ=m("regexDescription","Use Regular Expression");class xJ extends nb{constructor(e){super({icon:ie.caseSensitive,title:yJ+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class kJ extends nb{constructor(e){super({icon:ie.wholeWord,title:SJ+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class DJ extends nb{constructor(e){super({icon:ie.regex,title:LJ+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class IJ{constructor(e,t=0,i=e.length,n=t-1){this.items=e,this.start=t,this.end=i,this.index=n}current(){return this.index===this.start-1||this.index===this.end?null:this.items[this.index]}next(){return this.index=Math.min(this.index+1,this.end),this.current()}previous(){return this.index=Math.max(this.index-1,this.start-1),this.current()}first(){return this.index=this.start,this.current()}last(){return this.index=this.end-1,this.current()}}class EJ{constructor(e=[],t=10){this._initialize(e),this._limit=t,this._onChange()}getHistory(){return this._elements}add(e){this._history.delete(e),this._history.add(e),this._onChange()}next(){return this._navigator.next()}previous(){return this._currentPosition()!==0?this._navigator.previous():null}current(){return this._navigator.current()}first(){return this._navigator.first()}last(){return this._navigator.last()}isLast(){return this._currentPosition()>=this._elements.length-1}isNowhere(){return this._navigator.current()===null}has(e){return this._history.has(e)}_onChange(){this._reduceToLimit();const e=this._elements;this._navigator=new IJ(e,0,e.length,e.length)}_reduceToLimit(){const e=this._elements;e.length>this._limit&&this._initialize(e.slice(e.length-this._limit))}_currentPosition(){const e=this._navigator.current();return e?this._elements.indexOf(e):-1}_initialize(e){this._history=new Set;for(const t of e)this._history.add(t)}get _elements(){const e=[];return this._history.forEach(t=>e.push(t)),e}}const bm=ce;class NJ extends xr{constructor(e,t,i){super(),this.state="idle",this.maxHeight=Number.POSITIVE_INFINITY,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._onDidHeightChange=this._register(new A),this.onDidHeightChange=this._onDidHeightChange.event,this.contextViewProvider=t,this.options=i,this.message=null,this.placeholder=this.options.placeholder||"",this.tooltip=this.options.tooltip??(this.placeholder||""),this.ariaLabel=this.options.ariaLabel||"",this.options.validationOptions&&(this.validation=this.options.validationOptions.validation),this.element=Z(e,bm(".monaco-inputbox.idle"));const n=this.options.flexibleHeight?"textarea":"input",s=Z(this.element,bm(".ibwrapper"));if(this.input=Z(s,bm(n+".input.empty")),this.input.setAttribute("autocorrect","off"),this.input.setAttribute("autocapitalize","off"),this.input.setAttribute("spellcheck","false"),this.onfocus(this.input,()=>this.element.classList.add("synthetic-focus")),this.onblur(this.input,()=>this.element.classList.remove("synthetic-focus")),this.options.flexibleHeight){this.maxHeight=typeof this.options.flexibleMaxHeight=="number"?this.options.flexibleMaxHeight:Number.POSITIVE_INFINITY,this.mirror=Z(s,bm("div.mirror")),this.mirror.innerText=" ",this.scrollableElement=new J3(this.element,{vertical:1}),this.options.flexibleWidth&&(this.input.setAttribute("wrap","off"),this.mirror.style.whiteSpace="pre",this.mirror.style.wordWrap="initial"),Z(e,this.scrollableElement.getDomNode()),this._register(this.scrollableElement),this._register(this.scrollableElement.onScroll(l=>this.input.scrollTop=l.scrollTop));const r=this._register(new ze(e.ownerDocument,"selectionchange")),a=J.filter(r.event,()=>e.ownerDocument.getSelection()?.anchorNode===s);this._register(a(this.updateScrollDimensions,this)),this._register(this.onDidHeightChange(this.updateScrollDimensions,this))}else this.input.type=this.options.type||"text",this.input.setAttribute("wrap","off");this.ariaLabel&&this.input.setAttribute("aria-label",this.ariaLabel),this.placeholder&&!this.options.showPlaceholderOnFocus&&this.setPlaceHolder(this.placeholder),this.tooltip&&this.setTooltip(this.tooltip),this.oninput(this.input,()=>this.onValueChange()),this.onblur(this.input,()=>this.onBlur()),this.onfocus(this.input,()=>this.onFocus()),this._register(this.ignoreGesture(this.input)),setTimeout(()=>this.updateMirror(),0),this.options.actions&&(this.actionbar=this._register(new oo(this.element)),this.actionbar.push(this.options.actions,{icon:!0,label:!1})),this.applyStyles()}onBlur(){this._hideMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder","")}onFocus(){this._showMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder",this.placeholder||"")}setPlaceHolder(e){this.placeholder=e,this.input.setAttribute("placeholder",e)}setTooltip(e){this.tooltip=e,this.hover?this.hover.update(e):this.hover=this._register(La().setupManagedHover(Ks("mouse"),this.input,e))}get inputElement(){return this.input}get value(){return this.input.value}set value(e){this.input.value!==e&&(this.input.value=e,this.onValueChange())}get height(){return typeof this.cachedHeight=="number"?this.cachedHeight:Hd(this.element)}focus(){this.input.focus()}blur(){this.input.blur()}hasFocus(){return M0(this.input)}select(e=null){this.input.select(),e&&(this.input.setSelectionRange(e.start,e.end),e.end===this.input.value.length&&(this.input.scrollLeft=this.input.scrollWidth))}isSelectionAtEnd(){return this.input.selectionEnd===this.input.value.length&&this.input.selectionStart===this.input.selectionEnd}getSelection(){const e=this.input.selectionStart;if(e===null)return null;const t=this.input.selectionEnd??e;return{start:e,end:t}}enable(){this.input.removeAttribute("disabled")}disable(){this.blur(),this.input.disabled=!0,this._hideMessage()}set paddingRight(e){this.input.style.width=`calc(100% - ${e}px)`,this.mirror&&(this.mirror.style.paddingRight=e+"px")}updateScrollDimensions(){if(typeof this.cachedContentHeight!="number"||typeof this.cachedHeight!="number"||!this.scrollableElement)return;const e=this.cachedContentHeight,t=this.cachedHeight,i=this.input.scrollTop;this.scrollableElement.setScrollDimensions({scrollHeight:e,height:t}),this.scrollableElement.setScrollPosition({scrollTop:i})}showMessage(e,t){if(this.state==="open"&&as(this.message,e))return;this.message=e,this.element.classList.remove("idle"),this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add(this.classForType(e.type));const i=this.stylesForType(this.message.type);this.element.style.border=`1px solid ${vl(i.border,"transparent")}`,this.message.content&&(this.hasFocus()||t)&&this._showMessage()}hideMessage(){this.message=null,this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add("idle"),this._hideMessage(),this.applyStyles()}validate(){let e=null;return this.validation&&(e=this.validation(this.value),e?(this.inputElement.setAttribute("aria-invalid","true"),this.showMessage(e)):this.inputElement.hasAttribute("aria-invalid")&&(this.inputElement.removeAttribute("aria-invalid"),this.hideMessage())),e?.type}stylesForType(e){const t=this.options.inputBoxStyles;switch(e){case 1:return{border:t.inputValidationInfoBorder,background:t.inputValidationInfoBackground,foreground:t.inputValidationInfoForeground};case 2:return{border:t.inputValidationWarningBorder,background:t.inputValidationWarningBackground,foreground:t.inputValidationWarningForeground};default:return{border:t.inputValidationErrorBorder,background:t.inputValidationErrorBackground,foreground:t.inputValidationErrorForeground}}}classForType(e){switch(e){case 1:return"info";case 2:return"warning";default:return"error"}}_showMessage(){if(!this.contextViewProvider||!this.message)return;let e;const t=()=>e.style.width=qp(this.element)+"px";this.contextViewProvider.showContextView({getAnchor:()=>this.element,anchorAlignment:1,render:n=>{if(!this.message)return null;e=Z(n,bm(".monaco-inputbox-container")),t();const s={inline:!0,className:"monaco-inputbox-message"},r=this.message.formatContent?Cq(this.message.content,s):bq(this.message.content,s);r.classList.add(this.classForType(this.message.type));const a=this.stylesForType(this.message.type);return r.style.backgroundColor=a.background??"",r.style.color=a.foreground??"",r.style.border=a.border?`1px solid ${a.border}`:"",Z(e,r),null},onHide:()=>{this.state="closed"},layout:t});let i;this.message.type===3?i=m("alertErrorMessage","Error: {0}",this.message.content):this.message.type===2?i=m("alertWarningMessage","Warning: {0}",this.message.content):i=m("alertInfoMessage","Info: {0}",this.message.content),El(i),this.state="open"}_hideMessage(){this.contextViewProvider&&(this.state==="open"&&this.contextViewProvider.hideContextView(),this.state="idle")}onValueChange(){this._onDidChange.fire(this.value),this.validate(),this.updateMirror(),this.input.classList.toggle("empty",!this.value),this.state==="open"&&this.contextViewProvider&&this.contextViewProvider.layout()}updateMirror(){if(!this.mirror)return;const e=this.value,i=e.charCodeAt(e.length-1)===10?" ":"";(e+i).replace(/\u000c/g,"")?this.mirror.textContent=e+i:this.mirror.innerText=" ",this.layout()}applyStyles(){const e=this.options.inputBoxStyles,t=e.inputBackground??"",i=e.inputForeground??"",n=e.inputBorder??"";this.element.style.backgroundColor=t,this.element.style.color=i,this.input.style.backgroundColor="inherit",this.input.style.color=i,this.element.style.border=`1px solid ${vl(n,"transparent")}`}layout(){if(!this.mirror)return;const e=this.cachedContentHeight;this.cachedContentHeight=Hd(this.mirror),e!==this.cachedContentHeight&&(this.cachedHeight=Math.min(this.cachedContentHeight,this.maxHeight),this.input.style.height=this.cachedHeight+"px",this._onDidHeightChange.fire(this.cachedContentHeight))}insertAtCursor(e){const t=this.inputElement,i=t.selectionStart,n=t.selectionEnd,s=t.value;i!==null&&n!==null&&(this.value=s.substr(0,i)+e+s.substr(n),t.setSelectionRange(i+1,i+1),this.layout())}dispose(){this._hideMessage(),this.message=null,this.actionbar?.dispose(),super.dispose()}}class k9 extends NJ{constructor(e,t,i){const n=m({key:"history.inputbox.hint.suffix.noparens",comment:['Text is the suffix of an input field placeholder coming after the action the input field performs, this will be used when the input field ends in a closing parenthesis ")", for example "Filter (e.g. text, !exclude)". The character inserted into the final string is ⇅ to represent the up and down arrow keys.']}," or {0} for history","⇅"),s=m({key:"history.inputbox.hint.suffix.inparens",comment:['Text is the suffix of an input field placeholder coming after the action the input field performs, this will be used when the input field does NOT end in a closing parenthesis (eg. "Find"). The character inserted into the final string is ⇅ to represent the up and down arrow keys.']}," ({0} for history)","⇅");super(e,t,i),this._onDidFocus=this._register(new A),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new A),this.onDidBlur=this._onDidBlur.event,this.history=new EJ(i.history,100);const r=()=>{if(i.showHistoryHint&&i.showHistoryHint()&&!this.placeholder.endsWith(n)&&!this.placeholder.endsWith(s)&&this.history.getHistory().length){const a=this.placeholder.endsWith(")")?n:s,l=this.placeholder+a;i.showPlaceholderOnFocus&&!M0(this.input)?this.placeholder=l:this.setPlaceHolder(l)}};this.observer=new MutationObserver((a,l)=>{a.forEach(c=>{c.target.textContent||r()})}),this.observer.observe(this.input,{attributeFilter:["class"]}),this.onfocus(this.input,()=>r()),this.onblur(this.input,()=>{const a=l=>{if(this.placeholder.endsWith(l)){const c=this.placeholder.slice(0,this.placeholder.length-l.length);return i.showPlaceholderOnFocus?this.placeholder=c:this.setPlaceHolder(c),!0}else return!1};a(s)||a(n)})}dispose(){super.dispose(),this.observer&&(this.observer.disconnect(),this.observer=void 0)}addToHistory(e){this.value&&(e||this.value!==this.getCurrentValue())&&this.history.add(this.value)}isAtLastInHistory(){return this.history.isLast()}isNowhereInHistory(){return this.history.isNowhere()}showNextValue(){this.history.has(this.value)||this.addToHistory();let e=this.getNextValue();e&&(e=e===this.value?this.getNextValue():e),this.value=e??"",Hh(this.value?this.value:m("clearedInput","Cleared Input"))}showPreviousValue(){this.history.has(this.value)||this.addToHistory();let e=this.getPreviousValue();e&&(e=e===this.value?this.getPreviousValue():e),e&&(this.value=e,Hh(this.value))}setPlaceHolder(e){super.setPlaceHolder(e),this.setTooltip(e)}onBlur(){super.onBlur(),this._onDidBlur.fire()}onFocus(){super.onFocus(),this._onDidFocus.fire()}getCurrentValue(){let e=this.history.current();return e||(e=this.history.last(),this.history.next()),e}getPreviousValue(){return this.history.previous()||this.history.first()}getNextValue(){return this.history.next()}}const TJ=m("defaultLabel","input");class D9 extends xr{constructor(e,t,i){super(),this.fixFocusOnOptionClickEnabled=!0,this.imeSessionInProgress=!1,this.additionalTogglesDisposables=this._register(new Dn),this.additionalToggles=[],this._onDidOptionChange=this._register(new A),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new A),this.onMouseDown=this._onMouseDown.event,this._onInput=this._register(new A),this._onKeyUp=this._register(new A),this._onCaseSensitiveKeyDown=this._register(new A),this.onCaseSensitiveKeyDown=this._onCaseSensitiveKeyDown.event,this._onRegexKeyDown=this._register(new A),this.onRegexKeyDown=this._onRegexKeyDown.event,this._lastHighlightFindOptions=0,this.placeholder=i.placeholder||"",this.validation=i.validation,this.label=i.label||TJ,this.showCommonFindToggles=!!i.showCommonFindToggles;const n=i.appendCaseSensitiveLabel||"",s=i.appendWholeWordsLabel||"",r=i.appendRegexLabel||"",a=i.history||[],l=!!i.flexibleHeight,c=!!i.flexibleWidth,d=i.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new k9(this.domNode,t,{placeholder:this.placeholder||"",ariaLabel:this.label||"",validationOptions:{validation:this.validation},history:a,showHistoryHint:i.showHistoryHint,flexibleHeight:l,flexibleWidth:c,flexibleMaxHeight:d,inputBoxStyles:i.inputBoxStyles}));const h=this._register(QT());if(this.showCommonFindToggles){this.regex=this._register(new DJ({appendTitle:r,isChecked:!1,hoverDelegate:h,...i.toggleStyles})),this._register(this.regex.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.regex.onKeyDown(f=>{this._onRegexKeyDown.fire(f)})),this.wholeWords=this._register(new kJ({appendTitle:s,isChecked:!1,hoverDelegate:h,...i.toggleStyles})),this._register(this.wholeWords.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this.caseSensitive=this._register(new xJ({appendTitle:n,isChecked:!1,hoverDelegate:h,...i.toggleStyles})),this._register(this.caseSensitive.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.caseSensitive.onKeyDown(f=>{this._onCaseSensitiveKeyDown.fire(f)}));const u=[this.caseSensitive.domNode,this.wholeWords.domNode,this.regex.domNode];this.onkeydown(this.domNode,f=>{if(f.equals(15)||f.equals(17)||f.equals(9)){const g=u.indexOf(this.domNode.ownerDocument.activeElement);if(g>=0){let p=-1;f.equals(17)?p=(g+1)%u.length:f.equals(15)&&(g===0?p=u.length-1:p=g-1),f.equals(9)?(u[g].blur(),this.inputBox.focus()):p>=0&&u[p].focus(),je.stop(f,!0)}}})}this.controls=document.createElement("div"),this.controls.className="controls",this.controls.style.display=this.showCommonFindToggles?"":"none",this.caseSensitive&&this.controls.append(this.caseSensitive.domNode),this.wholeWords&&this.controls.appendChild(this.wholeWords.domNode),this.regex&&this.controls.appendChild(this.regex.domNode),this.setAdditionalToggles(i?.additionalToggles),this.controls&&this.domNode.appendChild(this.controls),e?.appendChild(this.domNode),this._register(U(this.inputBox.inputElement,"compositionstart",u=>{this.imeSessionInProgress=!0})),this._register(U(this.inputBox.inputElement,"compositionend",u=>{this.imeSessionInProgress=!1,this._onInput.fire()})),this.onkeydown(this.inputBox.inputElement,u=>this._onKeyDown.fire(u)),this.onkeyup(this.inputBox.inputElement,u=>this._onKeyUp.fire(u)),this.oninput(this.inputBox.inputElement,u=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,u=>this._onMouseDown.fire(u))}get onDidChange(){return this.inputBox.onDidChange}layout(e){this.inputBox.layout(),this.updateInputBoxPadding(e.collapsedFindWidget)}enable(){this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.regex?.enable(),this.wholeWords?.enable(),this.caseSensitive?.enable();for(const e of this.additionalToggles)e.enable()}disable(){this.domNode.classList.add("disabled"),this.inputBox.disable(),this.regex?.disable(),this.wholeWords?.disable(),this.caseSensitive?.disable();for(const e of this.additionalToggles)e.disable()}setFocusInputOnOptionClick(e){this.fixFocusOnOptionClickEnabled=e}setEnabled(e){e?this.enable():this.disable()}setAdditionalToggles(e){for(const t of this.additionalToggles)t.domNode.remove();this.additionalToggles=[],this.additionalTogglesDisposables.value=new X;for(const t of e??[])this.additionalTogglesDisposables.value.add(t),this.controls.appendChild(t.domNode),this.additionalTogglesDisposables.value.add(t.onChange(i=>{this._onDidOptionChange.fire(i),!i&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus()})),this.additionalToggles.push(t);this.additionalToggles.length>0&&(this.controls.style.display=""),this.updateInputBoxPadding()}updateInputBoxPadding(e=!1){e?this.inputBox.paddingRight=0:this.inputBox.paddingRight=(this.caseSensitive?.width()??0)+(this.wholeWords?.width()??0)+(this.regex?.width()??0)+this.additionalToggles.reduce((t,i)=>t+i.width(),0)}getValue(){return this.inputBox.value}setValue(e){this.inputBox.value!==e&&(this.inputBox.value=e)}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getCaseSensitive(){return this.caseSensitive?.checked??!1}setCaseSensitive(e){this.caseSensitive&&(this.caseSensitive.checked=e)}getWholeWords(){return this.wholeWords?.checked??!1}setWholeWords(e){this.wholeWords&&(this.wholeWords.checked=e)}getRegex(){return this.regex?.checked??!1}setRegex(e){this.regex&&(this.regex.checked=e,this.validate())}focusOnCaseSensitive(){this.caseSensitive?.focus()}highlightFindOptions(){this.domNode.classList.remove("highlight-"+this._lastHighlightFindOptions),this._lastHighlightFindOptions=1-this._lastHighlightFindOptions,this.domNode.classList.add("highlight-"+this._lastHighlightFindOptions)}validate(){this.inputBox.validate()}showMessage(e){this.inputBox.showMessage(e)}clearMessage(){this.inputBox.hideMessage()}}const MJ=ce;class RJ extends z{constructor(e,t,i){super(),this.parent=e,this.onKeyDown=s=>jt(this.findInput.inputBox.inputElement,ee.KEY_DOWN,s),this.onDidChange=s=>this.findInput.onDidChange(s),this.container=Z(this.parent,MJ(".quick-input-box")),this.findInput=this._register(new D9(this.container,void 0,{label:"",inputBoxStyles:t,toggleStyles:i}));const n=this.findInput.inputBox.inputElement;n.role="combobox",n.ariaHasPopup="menu",n.ariaAutoComplete="list",n.ariaExpanded="true"}get value(){return this.findInput.getValue()}set value(e){this.findInput.setValue(e)}select(e=null){this.findInput.inputBox.select(e)}getSelection(){return this.findInput.inputBox.getSelection()}isSelectionAtEnd(){return this.findInput.inputBox.isSelectionAtEnd()}get placeholder(){return this.findInput.inputBox.inputElement.getAttribute("placeholder")||""}set placeholder(e){this.findInput.inputBox.setPlaceHolder(e)}get password(){return this.findInput.inputBox.inputElement.type==="password"}set password(e){this.findInput.inputBox.inputElement.type=e?"password":"text"}set enabled(e){this.findInput.inputBox.inputElement.toggleAttribute("readonly",!e)}set toggles(e){this.findInput.setAdditionalToggles(e)}setAttribute(e,t){this.findInput.inputBox.inputElement.setAttribute(e,t)}showDecoration(e){e===Qt.Ignore?this.findInput.clearMessage():this.findInput.showMessage({type:e===Qt.Info?1:e===Qt.Warning?2:3,content:""})}stylesForType(e){return this.findInput.inputBox.stylesForType(e===Qt.Info?1:e===Qt.Warning?2:3)}setFocus(){this.findInput.focus()}layout(){this.findInput.inputBox.layout()}}class AJ{get templateId(){return this.renderer.templateId}constructor(e,t){this.renderer=e,this.modelProvider=t}renderTemplate(e){return{data:this.renderer.renderTemplate(e),disposable:z.None}}renderElement(e,t,i,n){if(i.disposable?.dispose(),!i.data)return;const s=this.modelProvider();if(s.isResolved(e))return this.renderer.renderElement(s.get(e),e,i.data,n);const r=new In,a=s.resolve(e,r.token);i.disposable={dispose:()=>r.cancel()},this.renderer.renderPlaceholder(e,i.data),a.then(l=>this.renderer.renderElement(l,e,i.data,n))}disposeTemplate(e){e.disposable&&(e.disposable.dispose(),e.disposable=void 0),e.data&&(this.renderer.disposeTemplate(e.data),e.data=void 0)}}class PJ{constructor(e,t){this.modelProvider=e,this.accessibilityProvider=t}getWidgetAriaLabel(){return this.accessibilityProvider.getWidgetAriaLabel()}getAriaLabel(e){const t=this.modelProvider();return t.isResolved(e)?this.accessibilityProvider.getAriaLabel(t.get(e)):null}}function OJ(o,e){return{...e,accessibilityProvider:e.accessibilityProvider&&new PJ(o,e.accessibilityProvider)}}class FJ{constructor(e,t,i,n,s={}){const r=()=>this.model,a=n.map(l=>new AJ(l,r));this.list=new go(e,t,i,a,OJ(r,s))}updateOptions(e){this.list.updateOptions(e)}getHTMLElement(){return this.list.getHTMLElement()}get onDidFocus(){return this.list.onDidFocus}get widget(){return this.list}get onDidDispose(){return this.list.onDidDispose}get onMouseDblClick(){return J.map(this.list.onMouseDblClick,({element:e,index:t,browserEvent:i})=>({element:e===void 0?void 0:this._model.get(e),index:t,browserEvent:i}))}get onPointer(){return J.map(this.list.onPointer,({element:e,index:t,browserEvent:i})=>({element:e===void 0?void 0:this._model.get(e),index:t,browserEvent:i}))}get onDidChangeSelection(){return J.map(this.list.onDidChangeSelection,({elements:e,indexes:t,browserEvent:i})=>({elements:e.map(n=>this._model.get(n)),indexes:t,browserEvent:i}))}get model(){return this._model}set model(e){this._model=e,this.list.splice(0,this.list.length,Bn(e.length))}getFocus(){return this.list.getFocus()}getSelection(){return this.list.getSelection()}getSelectedElements(){return this.getSelection().map(e=>this.model.get(e))}style(e){this.list.style(e)}dispose(){this.list.dispose()}}var Kg=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};const BJ=!1;var ov;(function(o){o.North="north",o.South="south",o.East="east",o.West="west"})(ov||(ov={}));let WJ=4;const HJ=new A;let VJ=300;const zJ=new A;class f2{constructor(e){this.el=e,this.disposables=new X}get onPointerMove(){return this.disposables.add(new ze(fe(this.el),"mousemove")).event}get onPointerUp(){return this.disposables.add(new ze(fe(this.el),"mouseup")).event}dispose(){this.disposables.dispose()}}Kg([Jt],f2.prototype,"onPointerMove",null);Kg([Jt],f2.prototype,"onPointerUp",null);class g2{get onPointerMove(){return this.disposables.add(new ze(this.el,St.Change)).event}get onPointerUp(){return this.disposables.add(new ze(this.el,St.End)).event}constructor(e){this.el=e,this.disposables=new X}dispose(){this.disposables.dispose()}}Kg([Jt],g2.prototype,"onPointerMove",null);Kg([Jt],g2.prototype,"onPointerUp",null);class rv{get onPointerMove(){return this.factory.onPointerMove}get onPointerUp(){return this.factory.onPointerUp}constructor(e){this.factory=e}dispose(){}}Kg([Jt],rv.prototype,"onPointerMove",null);Kg([Jt],rv.prototype,"onPointerUp",null);const qP="pointer-events-disabled";class an extends z{get state(){return this._state}get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}set state(e){this._state!==e&&(this.el.classList.toggle("disabled",e===0),this.el.classList.toggle("minimum",e===1),this.el.classList.toggle("maximum",e===2),this._state=e,this.onDidEnablementChange.fire(e))}set orthogonalStartSash(e){if(this._orthogonalStartSash!==e){if(this.orthogonalStartDragHandleDisposables.clear(),this.orthogonalStartSashDisposables.clear(),e){const t=i=>{this.orthogonalStartDragHandleDisposables.clear(),i!==0&&(this._orthogonalStartDragHandle=Z(this.el,ce(".orthogonal-drag-handle.start")),this.orthogonalStartDragHandleDisposables.add(_e(()=>this._orthogonalStartDragHandle.remove())),this.orthogonalStartDragHandleDisposables.add(new ze(this._orthogonalStartDragHandle,"mouseenter")).event(()=>an.onMouseEnter(e),void 0,this.orthogonalStartDragHandleDisposables),this.orthogonalStartDragHandleDisposables.add(new ze(this._orthogonalStartDragHandle,"mouseleave")).event(()=>an.onMouseLeave(e),void 0,this.orthogonalStartDragHandleDisposables))};this.orthogonalStartSashDisposables.add(e.onDidEnablementChange.event(t,this)),t(e.state)}this._orthogonalStartSash=e}}set orthogonalEndSash(e){if(this._orthogonalEndSash!==e){if(this.orthogonalEndDragHandleDisposables.clear(),this.orthogonalEndSashDisposables.clear(),e){const t=i=>{this.orthogonalEndDragHandleDisposables.clear(),i!==0&&(this._orthogonalEndDragHandle=Z(this.el,ce(".orthogonal-drag-handle.end")),this.orthogonalEndDragHandleDisposables.add(_e(()=>this._orthogonalEndDragHandle.remove())),this.orthogonalEndDragHandleDisposables.add(new ze(this._orthogonalEndDragHandle,"mouseenter")).event(()=>an.onMouseEnter(e),void 0,this.orthogonalEndDragHandleDisposables),this.orthogonalEndDragHandleDisposables.add(new ze(this._orthogonalEndDragHandle,"mouseleave")).event(()=>an.onMouseLeave(e),void 0,this.orthogonalEndDragHandleDisposables))};this.orthogonalEndSashDisposables.add(e.onDidEnablementChange.event(t,this)),t(e.state)}this._orthogonalEndSash=e}}constructor(e,t,i){super(),this.hoverDelay=VJ,this.hoverDelayer=this._register(new z_(this.hoverDelay)),this._state=3,this.onDidEnablementChange=this._register(new A),this._onDidStart=this._register(new A),this._onDidChange=this._register(new A),this._onDidReset=this._register(new A),this._onDidEnd=this._register(new A),this.orthogonalStartSashDisposables=this._register(new X),this.orthogonalStartDragHandleDisposables=this._register(new X),this.orthogonalEndSashDisposables=this._register(new X),this.orthogonalEndDragHandleDisposables=this._register(new X),this.onDidStart=this._onDidStart.event,this.onDidChange=this._onDidChange.event,this.onDidReset=this._onDidReset.event,this.onDidEnd=this._onDidEnd.event,this.linkedSash=void 0,this.el=Z(e,ce(".monaco-sash")),i.orthogonalEdge&&this.el.classList.add(`orthogonal-edge-${i.orthogonalEdge}`),Ue&&this.el.classList.add("mac");const n=this._register(new ze(this.el,"mousedown")).event;this._register(n(h=>this.onPointerStart(h,new f2(e)),this));const s=this._register(new ze(this.el,"dblclick")).event;this._register(s(this.onPointerDoublePress,this));const r=this._register(new ze(this.el,"mouseenter")).event;this._register(r(()=>an.onMouseEnter(this)));const a=this._register(new ze(this.el,"mouseleave")).event;this._register(a(()=>an.onMouseLeave(this))),this._register(fn.addTarget(this.el));const l=this._register(new ze(this.el,St.Start)).event;this._register(l(h=>this.onPointerStart(h,new g2(this.el)),this));const c=this._register(new ze(this.el,St.Tap)).event;let d;this._register(c(h=>{if(d){clearTimeout(d),d=void 0,this.onPointerDoublePress(h);return}clearTimeout(d),d=setTimeout(()=>d=void 0,250)},this)),typeof i.size=="number"?(this.size=i.size,i.orientation===0?this.el.style.width=`${this.size}px`:this.el.style.height=`${this.size}px`):(this.size=WJ,this._register(HJ.event(h=>{this.size=h,this.layout()}))),this._register(zJ.event(h=>this.hoverDelay=h)),this.layoutProvider=t,this.orthogonalStartSash=i.orthogonalStartSash,this.orthogonalEndSash=i.orthogonalEndSash,this.orientation=i.orientation||0,this.orientation===1?(this.el.classList.add("horizontal"),this.el.classList.remove("vertical")):(this.el.classList.remove("horizontal"),this.el.classList.add("vertical")),this.el.classList.toggle("debug",BJ),this.layout()}onPointerStart(e,t){je.stop(e);let i=!1;if(!e.__orthogonalSashEvent){const g=this.getOrthogonalSash(e);g&&(i=!0,e.__orthogonalSashEvent=!0,g.onPointerStart(e,new rv(t)))}if(this.linkedSash&&!e.__linkedSashEvent&&(e.__linkedSashEvent=!0,this.linkedSash.onPointerStart(e,new rv(t))),!this.state)return;const n=this.el.ownerDocument.getElementsByTagName("iframe");for(const g of n)g.classList.add(qP);const s=e.pageX,r=e.pageY,a=e.altKey,l={startX:s,currentX:s,startY:r,currentY:r,altKey:a};this.el.classList.add("active"),this._onDidStart.fire(l);const c=Vs(this.el),d=()=>{let g="";i?g="all-scroll":this.orientation===1?this.state===1?g="s-resize":this.state===2?g="n-resize":g=Ue?"row-resize":"ns-resize":this.state===1?g="e-resize":this.state===2?g="w-resize":g=Ue?"col-resize":"ew-resize",c.textContent=`* { cursor: ${g} !important; }`},h=new X;d(),i||this.onDidEnablementChange.event(d,null,h);const u=g=>{je.stop(g,!1);const p={startX:s,currentX:g.pageX,startY:r,currentY:g.pageY,altKey:a};this._onDidChange.fire(p)},f=g=>{je.stop(g,!1),c.remove(),this.el.classList.remove("active"),this._onDidEnd.fire(),h.dispose();for(const p of n)p.classList.remove(qP)};t.onPointerMove(u,null,h),t.onPointerUp(f,null,h),h.add(t)}onPointerDoublePress(e){const t=this.getOrthogonalSash(e);t&&t._onDidReset.fire(),this.linkedSash&&this.linkedSash._onDidReset.fire(),this._onDidReset.fire()}static onMouseEnter(e,t=!1){e.el.classList.contains("active")?(e.hoverDelayer.cancel(),e.el.classList.add("hover")):e.hoverDelayer.trigger(()=>e.el.classList.add("hover"),e.hoverDelay).then(void 0,()=>{}),!t&&e.linkedSash&&an.onMouseEnter(e.linkedSash,!0)}static onMouseLeave(e,t=!1){e.hoverDelayer.cancel(),e.el.classList.remove("hover"),!t&&e.linkedSash&&an.onMouseLeave(e.linkedSash,!0)}clearSashHoverState(){an.onMouseLeave(this)}layout(){if(this.orientation===0){const e=this.layoutProvider;this.el.style.left=e.getVerticalSashLeft(this)-this.size/2+"px",e.getVerticalSashTop&&(this.el.style.top=e.getVerticalSashTop(this)+"px"),e.getVerticalSashHeight&&(this.el.style.height=e.getVerticalSashHeight(this)+"px")}else{const e=this.layoutProvider;this.el.style.top=e.getHorizontalSashTop(this)-this.size/2+"px",e.getHorizontalSashLeft&&(this.el.style.left=e.getHorizontalSashLeft(this)+"px"),e.getHorizontalSashWidth&&(this.el.style.width=e.getHorizontalSashWidth(this)+"px")}}getOrthogonalSash(e){const t=e.initialTarget??e.target;if(!(!t||!Ei(t))&&t.classList.contains("orthogonal-drag-handle"))return t.classList.contains("start")?this.orthogonalStartSash:this.orthogonalEndSash}dispose(){super.dispose(),this.el.remove()}}const UJ={separatorBorder:q.transparent};class I9{set size(e){this._size=e}get size(){return this._size}get visible(){return typeof this._cachedVisibleSize>"u"}setVisible(e,t){if(e!==this.visible){e?(this.size=bn(this._cachedVisibleSize,this.viewMinimumSize,this.viewMaximumSize),this._cachedVisibleSize=void 0):(this._cachedVisibleSize=typeof t=="number"?t:this.size,this.size=0),this.container.classList.toggle("visible",e);try{this.view.setVisible?.(e)}catch(i){console.error("Splitview: Failed to set visible view"),console.error(i)}}}get minimumSize(){return this.visible?this.view.minimumSize:0}get viewMinimumSize(){return this.view.minimumSize}get maximumSize(){return this.visible?this.view.maximumSize:0}get viewMaximumSize(){return this.view.maximumSize}get priority(){return this.view.priority}get proportionalLayout(){return this.view.proportionalLayout??!0}get snap(){return!!this.view.snap}set enabled(e){this.container.style.pointerEvents=e?"":"none"}constructor(e,t,i,n){this.container=e,this.view=t,this.disposable=n,this._cachedVisibleSize=void 0,typeof i=="number"?(this._size=i,this._cachedVisibleSize=void 0,e.classList.add("visible")):(this._size=0,this._cachedVisibleSize=i.cachedVisibleSize)}layout(e,t){this.layoutContainer(e);try{this.view.layout(this.size,e,t)}catch(i){console.error("Splitview: Failed to layout view"),console.error(i)}}dispose(){this.disposable.dispose()}}class $J extends I9{layoutContainer(e){this.container.style.top=`${e}px`,this.container.style.height=`${this.size}px`}}class KJ extends I9{layoutContainer(e){this.container.style.left=`${e}px`,this.container.style.width=`${this.size}px`}}var Ua;(function(o){o[o.Idle=0]="Idle",o[o.Busy=1]="Busy"})(Ua||(Ua={}));var av;(function(o){o.Distribute={type:"distribute"};function e(n){return{type:"split",index:n}}o.Split=e;function t(n){return{type:"auto",index:n}}o.Auto=t;function i(n){return{type:"invisible",cachedVisibleSize:n}}o.Invisible=i})(av||(av={}));class E9 extends z{get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}get startSnappingEnabled(){return this._startSnappingEnabled}get endSnappingEnabled(){return this._endSnappingEnabled}set orthogonalStartSash(e){for(const t of this.sashItems)t.sash.orthogonalStartSash=e;this._orthogonalStartSash=e}set orthogonalEndSash(e){for(const t of this.sashItems)t.sash.orthogonalEndSash=e;this._orthogonalEndSash=e}set startSnappingEnabled(e){this._startSnappingEnabled!==e&&(this._startSnappingEnabled=e,this.updateSashEnablement())}set endSnappingEnabled(e){this._endSnappingEnabled!==e&&(this._endSnappingEnabled=e,this.updateSashEnablement())}constructor(e,t={}){super(),this.size=0,this._contentSize=0,this.proportions=void 0,this.viewItems=[],this.sashItems=[],this.state=Ua.Idle,this._onDidSashChange=this._register(new A),this._onDidSashReset=this._register(new A),this._startSnappingEnabled=!0,this._endSnappingEnabled=!0,this.onDidSashChange=this._onDidSashChange.event,this.onDidSashReset=this._onDidSashReset.event,this.orientation=t.orientation??0,this.inverseAltBehavior=t.inverseAltBehavior??!1,this.proportionalLayout=t.proportionalLayout??!0,this.getSashOrthogonalSize=t.getSashOrthogonalSize,this.el=document.createElement("div"),this.el.classList.add("monaco-split-view2"),this.el.classList.add(this.orientation===0?"vertical":"horizontal"),e.appendChild(this.el),this.sashContainer=Z(this.el,ce(".sash-container")),this.viewContainer=ce(".split-view-container"),this.scrollable=this._register(new Vg({forceIntegerValues:!0,smoothScrollDuration:125,scheduleAtNextAnimationFrame:n=>fs(fe(this.el),n)})),this.scrollableElement=this._register(new X0(this.viewContainer,{vertical:this.orientation===0?t.scrollbarVisibility??1:2,horizontal:this.orientation===1?t.scrollbarVisibility??1:2},this.scrollable));const i=this._register(new ze(this.viewContainer,"scroll")).event;this._register(i(n=>{const s=this.scrollableElement.getScrollPosition(),r=Math.abs(this.viewContainer.scrollLeft-s.scrollLeft)<=1?void 0:this.viewContainer.scrollLeft,a=Math.abs(this.viewContainer.scrollTop-s.scrollTop)<=1?void 0:this.viewContainer.scrollTop;(r!==void 0||a!==void 0)&&this.scrollableElement.setScrollPosition({scrollLeft:r,scrollTop:a})})),this.onDidScroll=this.scrollableElement.onScroll,this._register(this.onDidScroll(n=>{n.scrollTopChanged&&(this.viewContainer.scrollTop=n.scrollTop),n.scrollLeftChanged&&(this.viewContainer.scrollLeft=n.scrollLeft)})),Z(this.el,this.scrollableElement.getDomNode()),this.style(t.styles||UJ),t.descriptor&&(this.size=t.descriptor.size,t.descriptor.views.forEach((n,s)=>{const r=Es(n.visible)||n.visible?n.size:{type:"invisible",cachedVisibleSize:n.size},a=n.view;this.doAddView(a,r,s,!0)}),this._contentSize=this.viewItems.reduce((n,s)=>n+s.size,0),this.saveProportions())}style(e){e.separatorBorder.isTransparent()?(this.el.classList.remove("separator-border"),this.el.style.removeProperty("--separator-border")):(this.el.classList.add("separator-border"),this.el.style.setProperty("--separator-border",e.separatorBorder.toString()))}addView(e,t,i=this.viewItems.length,n){this.doAddView(e,t,i,n)}layout(e,t){const i=Math.max(this.size,this._contentSize);if(this.size=e,this.layoutContext=t,this.proportions){let n=0;for(let s=0;s0&&(r.size=bn(Math.round(a*e/n),r.minimumSize,r.maximumSize))}}else{const n=Bn(this.viewItems.length),s=n.filter(a=>this.viewItems[a].priority===1),r=n.filter(a=>this.viewItems[a].priority===2);this.resize(this.viewItems.length-1,e-i,void 0,s,r)}this.distributeEmptySpace(),this.layoutViews()}saveProportions(){this.proportionalLayout&&this._contentSize>0&&(this.proportions=this.viewItems.map(e=>e.proportionalLayout&&e.visible?e.size/this._contentSize:void 0))}onSashStart({sash:e,start:t,alt:i}){for(const a of this.viewItems)a.enabled=!1;const n=this.sashItems.findIndex(a=>a.sash===e),s=No(U(this.el.ownerDocument.body,"keydown",a=>r(this.sashDragState.current,a.altKey)),U(this.el.ownerDocument.body,"keyup",()=>r(this.sashDragState.current,!1))),r=(a,l)=>{const c=this.viewItems.map(g=>g.size);let d=Number.NEGATIVE_INFINITY,h=Number.POSITIVE_INFINITY;if(this.inverseAltBehavior&&(l=!l),l)if(n===this.sashItems.length-1){const p=this.viewItems[n];d=(p.minimumSize-p.size)/2,h=(p.maximumSize-p.size)/2}else{const p=this.viewItems[n+1];d=(p.size-p.maximumSize)/2,h=(p.size-p.minimumSize)/2}let u,f;if(!l){const g=Bn(n,-1),p=Bn(n+1,this.viewItems.length),_=g.reduce((E,N)=>E+(this.viewItems[N].minimumSize-c[N]),0),b=g.reduce((E,N)=>E+(this.viewItems[N].viewMaximumSize-c[N]),0),C=p.length===0?Number.POSITIVE_INFINITY:p.reduce((E,N)=>E+(c[N]-this.viewItems[N].minimumSize),0),w=p.length===0?Number.NEGATIVE_INFINITY:p.reduce((E,N)=>E+(c[N]-this.viewItems[N].viewMaximumSize),0),v=Math.max(_,w),y=Math.min(C,b),x=this.findFirstSnapIndex(g),L=this.findFirstSnapIndex(p);if(typeof x=="number"){const E=this.viewItems[x],N=Math.floor(E.viewMinimumSize/2);u={index:x,limitDelta:E.visible?v-N:v+N,size:E.size}}if(typeof L=="number"){const E=this.viewItems[L],N=Math.floor(E.viewMinimumSize/2);f={index:L,limitDelta:E.visible?y+N:y-N,size:E.size}}}this.sashDragState={start:a,current:a,index:n,sizes:c,minDelta:d,maxDelta:h,alt:l,snapBefore:u,snapAfter:f,disposable:s}};r(t,i)}onSashChange({current:e}){const{index:t,start:i,sizes:n,alt:s,minDelta:r,maxDelta:a,snapBefore:l,snapAfter:c}=this.sashDragState;this.sashDragState.current=e;const d=e-i,h=this.resize(t,d,n,void 0,void 0,r,a,l,c);if(s){const u=t===this.sashItems.length-1,f=this.viewItems.map(w=>w.size),g=u?t:t+1,p=this.viewItems[g],_=p.size-p.maximumSize,b=p.size-p.minimumSize,C=u?t-1:t+1;this.resize(C,-h,f,void 0,void 0,_,b)}this.distributeEmptySpace(),this.layoutViews()}onSashEnd(e){this._onDidSashChange.fire(e),this.sashDragState.disposable.dispose(),this.saveProportions();for(const t of this.viewItems)t.enabled=!0}onViewChange(e,t){const i=this.viewItems.indexOf(e);i<0||i>=this.viewItems.length||(t=typeof t=="number"?t:e.size,t=bn(t,e.minimumSize,e.maximumSize),this.inverseAltBehavior&&i>0?(this.resize(i-1,Math.floor((e.size-t)/2)),this.distributeEmptySpace(),this.layoutViews()):(e.size=t,this.relayout([i],void 0)))}resizeView(e,t){if(!(e<0||e>=this.viewItems.length)){if(this.state!==Ua.Idle)throw new Error("Cant modify splitview");this.state=Ua.Busy;try{const i=Bn(this.viewItems.length).filter(a=>a!==e),n=[...i.filter(a=>this.viewItems[a].priority===1),e],s=i.filter(a=>this.viewItems[a].priority===2),r=this.viewItems[e];t=Math.round(t),t=bn(t,r.minimumSize,Math.min(r.maximumSize,this.size)),r.size=t,this.relayout(n,s)}finally{this.state=Ua.Idle}}}distributeViewSizes(){const e=[];let t=0;for(const a of this.viewItems)a.maximumSize-a.minimumSize>0&&(e.push(a),t+=a.size);const i=Math.floor(t/e.length);for(const a of e)a.size=bn(i,a.minimumSize,a.maximumSize);const n=Bn(this.viewItems.length),s=n.filter(a=>this.viewItems[a].priority===1),r=n.filter(a=>this.viewItems[a].priority===2);this.relayout(s,r)}getViewSize(e){return e<0||e>=this.viewItems.length?-1:this.viewItems[e].size}doAddView(e,t,i=this.viewItems.length,n){if(this.state!==Ua.Idle)throw new Error("Cant modify splitview");this.state=Ua.Busy;try{const s=ce(".split-view-view");i===this.viewItems.length?this.viewContainer.appendChild(s):this.viewContainer.insertBefore(s,this.viewContainer.children.item(i));const r=e.onDidChange(u=>this.onViewChange(d,u)),a=_e(()=>s.remove()),l=No(r,a);let c;typeof t=="number"?c=t:(t.type==="auto"&&(this.areViewsDistributed()?t={type:"distribute"}:t={type:"split",index:t.index}),t.type==="split"?c=this.getViewSize(t.index)/2:t.type==="invisible"?c={cachedVisibleSize:t.cachedVisibleSize}:c=e.minimumSize);const d=this.orientation===0?new $J(s,e,c,l):new KJ(s,e,c,l);if(this.viewItems.splice(i,0,d),this.viewItems.length>1){const u={orthogonalStartSash:this.orthogonalStartSash,orthogonalEndSash:this.orthogonalEndSash},f=this.orientation===0?new an(this.sashContainer,{getHorizontalSashTop:E=>this.getSashPosition(E),getHorizontalSashWidth:this.getSashOrthogonalSize},{...u,orientation:1}):new an(this.sashContainer,{getVerticalSashLeft:E=>this.getSashPosition(E),getVerticalSashHeight:this.getSashOrthogonalSize},{...u,orientation:0}),g=this.orientation===0?E=>({sash:f,start:E.startY,current:E.currentY,alt:E.altKey}):E=>({sash:f,start:E.startX,current:E.currentX,alt:E.altKey}),_=J.map(f.onDidStart,g)(this.onSashStart,this),C=J.map(f.onDidChange,g)(this.onSashChange,this),v=J.map(f.onDidEnd,()=>this.sashItems.findIndex(E=>E.sash===f))(this.onSashEnd,this),y=f.onDidReset(()=>{const E=this.sashItems.findIndex(j=>j.sash===f),N=Bn(E,-1),H=Bn(E+1,this.viewItems.length),F=this.findFirstSnapIndex(N),W=this.findFirstSnapIndex(H);typeof F=="number"&&!this.viewItems[F].visible||typeof W=="number"&&!this.viewItems[W].visible||this._onDidSashReset.fire(E)}),x=No(_,C,v,y,f),L={sash:f,disposable:x};this.sashItems.splice(i-1,0,L)}s.appendChild(e.element);let h;typeof t!="number"&&t.type==="split"&&(h=[t.index]),n||this.relayout([i],h),!n&&typeof t!="number"&&t.type==="distribute"&&this.distributeViewSizes()}finally{this.state=Ua.Idle}}relayout(e,t){const i=this.viewItems.reduce((n,s)=>n+s.size,0);this.resize(this.viewItems.length-1,this.size-i,void 0,e,t),this.distributeEmptySpace(),this.layoutViews(),this.saveProportions()}resize(e,t,i=this.viewItems.map(d=>d.size),n,s,r=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY,l,c){if(e<0||e>=this.viewItems.length)return 0;const d=Bn(e,-1),h=Bn(e+1,this.viewItems.length);if(s)for(const L of s)$y(d,L),$y(h,L);if(n)for(const L of n)bb(d,L),bb(h,L);const u=d.map(L=>this.viewItems[L]),f=d.map(L=>i[L]),g=h.map(L=>this.viewItems[L]),p=h.map(L=>i[L]),_=d.reduce((L,E)=>L+(this.viewItems[E].minimumSize-i[E]),0),b=d.reduce((L,E)=>L+(this.viewItems[E].maximumSize-i[E]),0),C=h.length===0?Number.POSITIVE_INFINITY:h.reduce((L,E)=>L+(i[E]-this.viewItems[E].minimumSize),0),w=h.length===0?Number.NEGATIVE_INFINITY:h.reduce((L,E)=>L+(i[E]-this.viewItems[E].maximumSize),0),v=Math.max(_,w,r),y=Math.min(C,b,a);let x=!1;if(l){const L=this.viewItems[l.index],E=t>=l.limitDelta;x=E!==L.visible,L.setVisible(E,l.size)}if(!x&&c){const L=this.viewItems[c.index],E=ta+l.size,0);let i=this.size-t;const n=Bn(this.viewItems.length-1,-1),s=n.filter(a=>this.viewItems[a].priority===1),r=n.filter(a=>this.viewItems[a].priority===2);for(const a of r)$y(n,a);for(const a of s)bb(n,a);typeof e=="number"&&bb(n,e);for(let a=0;i!==0&&at+i.size,0);let e=0;for(const t of this.viewItems)t.layout(e,this.layoutContext),e+=t.size;this.sashItems.forEach(t=>t.sash.layout()),this.updateSashEnablement(),this.updateScrollableElement()}updateScrollableElement(){this.orientation===0?this.scrollableElement.setScrollDimensions({height:this.size,scrollHeight:this._contentSize}):this.scrollableElement.setScrollDimensions({width:this.size,scrollWidth:this._contentSize})}updateSashEnablement(){let e=!1;const t=this.viewItems.map(l=>e=l.size-l.minimumSize>0||e);e=!1;const i=this.viewItems.map(l=>e=l.maximumSize-l.size>0||e),n=[...this.viewItems].reverse();e=!1;const s=n.map(l=>e=l.size-l.minimumSize>0||e).reverse();e=!1;const r=n.map(l=>e=l.maximumSize-l.size>0||e).reverse();let a=0;for(let l=0;l0||this.startSnappingEnabled)?c.state=1:C&&t[l]&&(a0)return;if(!i.visible&&i.snap)return t}}areViewsDistributed(){let e,t;for(const i of this.viewItems)if(e=e===void 0?i.size:Math.min(e,i.size),t=t===void 0?i.size:Math.max(t,i.size),t-e>2)return!1;return!0}dispose(){this.sashDragState?.disposable.dispose(),xt(this.viewItems),this.viewItems=[],this.sashItems.forEach(e=>e.disposable.dispose()),this.sashItems=[],super.dispose()}}const Vw=class Vw{constructor(e,t,i){this.columns=e,this.getColumnSize=i,this.templateId=Vw.TemplateId,this.renderedTemplates=new Set;const n=new Map(t.map(s=>[s.templateId,s]));this.renderers=[];for(const s of e){const r=n.get(s.templateId);if(!r)throw new Error(`Table cell renderer for template id ${s.templateId} not found.`);this.renderers.push(r)}}renderTemplate(e){const t=Z(e,ce(".monaco-table-tr")),i=[],n=[];for(let r=0;rthis.disposables.add(new qJ(d,h))),l={size:a.reduce((d,h)=>d+h.column.weight,0),views:a.map(d=>({size:d.column.weight,view:d}))};this.splitview=this.disposables.add(new E9(this.domNode,{orientation:1,scrollbarVisibility:2,getSashOrthogonalSize:()=>this.cachedHeight,descriptor:l})),this.splitview.el.style.height=`${i.headerRowHeight}px`,this.splitview.el.style.lineHeight=`${i.headerRowHeight}px`;const c=new lv(n,s,d=>this.splitview.getViewSize(d));this.list=this.disposables.add(new go(e,this.domNode,jJ(i),[c],r)),J.any(...a.map(d=>d.onDidLayout))(([d,h])=>c.layoutColumn(d,h),null,this.disposables),this.splitview.onDidSashReset(d=>{const h=n.reduce((f,g)=>f+g.weight,0),u=n[d].weight/h*this.cachedWidth;this.splitview.resizeView(d,u)},null,this.disposables),this.styleElement=Vs(this.domNode),this.style(_Y)}updateOptions(e){this.list.updateOptions(e)}splice(e,t,i=[]){this.list.splice(e,t,i)}getHTMLElement(){return this.domNode}style(e){const t=[];t.push(`.monaco-table.${this.domId} > .monaco-split-view2 .monaco-sash.vertical::before { - top: ${this.virtualDelegate.headerRowHeight+1}px; - height: calc(100% - ${this.virtualDelegate.headerRowHeight}px); - }`),this.styleElement.textContent=t.join(` -`),this.list.style(e)}getSelectedElements(){return this.list.getSelectedElements()}getSelection(){return this.list.getSelection()}getFocus(){return this.list.getFocus()}dispose(){this.disposables.dispose()}};zw.InstanceCount=0;let FD=zw;var ys;(function(o){o[o.Expanded=0]="Expanded",o[o.Collapsed=1]="Collapsed",o[o.PreserveOrExpanded=2]="PreserveOrExpanded",o[o.PreserveOrCollapsed=3]="PreserveOrCollapsed"})(ys||(ys={}));var jd;(function(o){o[o.Unknown=0]="Unknown",o[o.Twistie=1]="Twistie",o[o.Element=2]="Element",o[o.Filter=3]="Filter"})(jd||(jd={}));class Ds extends Error{constructor(e,t){super(`TreeError [${e}] ${t}`)}}class m2{constructor(e){this.fn=e,this._map=new WeakMap}map(e){let t=this._map.get(e);return t||(t=this.fn(e),this._map.set(e,t)),t}}function p2(o){return typeof o=="object"&&"visibility"in o&&"data"in o}function p_(o){switch(o){case!0:return 1;case!1:return 0;default:return o}}function jS(o){return typeof o.collapsible=="boolean"}class GJ{constructor(e,t,i,n={}){this.user=e,this.list=t,this.rootRef=[],this.eventBufferer=new W_,this._onDidChangeCollapseState=new A,this.onDidChangeCollapseState=this.eventBufferer.wrapEvent(this._onDidChangeCollapseState.event),this._onDidChangeRenderNodeCount=new A,this.onDidChangeRenderNodeCount=this.eventBufferer.wrapEvent(this._onDidChangeRenderNodeCount.event),this._onDidSplice=new A,this.onDidSplice=this._onDidSplice.event,this.refilterDelayer=new z_(CF),this.collapseByDefault=typeof n.collapseByDefault>"u"?!1:n.collapseByDefault,this.allowNonCollapsibleParents=n.allowNonCollapsibleParents??!1,this.filter=n.filter,this.autoExpandSingleChildren=typeof n.autoExpandSingleChildren>"u"?!1:n.autoExpandSingleChildren,this.root={parent:void 0,element:i,children:[],depth:0,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:!1,collapsed:!1,renderNodeCount:0,visibility:1,visible:!0,filterData:void 0}}splice(e,t,i=st.empty(),n={}){if(e.length===0)throw new Ds(this.user,"Invalid tree location");n.diffIdentityProvider?this.spliceSmart(n.diffIdentityProvider,e,t,i,n):this.spliceSimple(e,t,i,n)}spliceSmart(e,t,i,n=st.empty(),s,r=s.diffDepth??0){const{parentNode:a}=this.getParentNodeWithListIndex(t);if(!a.lastDiffIds)return this.spliceSimple(t,i,n,s);const l=[...n],c=t[t.length-1],d=new Yr({getElements:()=>a.lastDiffIds},{getElements:()=>[...a.children.slice(0,c),...l,...a.children.slice(c+i)].map(p=>e.getId(p.element).toString())}).ComputeDiff(!1);if(d.quitEarly)return a.lastDiffIds=void 0,this.spliceSimple(t,i,l,s);const h=t.slice(0,-1),u=(p,_,b)=>{if(r>0)for(let C=0;Cb.originalStart-_.originalStart))u(f,g,f-(p.originalStart+p.originalLength)),f=p.originalStart,g=p.modifiedStart-c,this.spliceSimple([...h,f],p.originalLength,st.slice(l,g,g+p.modifiedLength),s);u(f,g,f)}spliceSimple(e,t,i=st.empty(),{onDidCreateNode:n,onDidDeleteNode:s,diffIdentityProvider:r}){const{parentNode:a,listIndex:l,revealed:c,visible:d}=this.getParentNodeWithListIndex(e),h=[],u=st.map(i,y=>this.createTreeNode(y,a,a.visible?1:0,c,h,n)),f=e[e.length-1];let g=0;for(let y=f;y>=0&&yr.getId(y.element).toString())):a.lastDiffIds=a.children.map(y=>r.getId(y.element).toString()):a.lastDiffIds=void 0;let w=0;for(const y of C)y.visible&&w++;if(w!==0)for(let y=f+p.length;yx+(L.visible?L.renderNodeCount:0),0);this._updateAncestorsRenderNodeCount(a,b-y),this.list.splice(l,y,h)}if(C.length>0&&s){const y=x=>{s(x),x.children.forEach(y)};C.forEach(y)}this._onDidSplice.fire({insertedNodes:p,deletedNodes:C});let v=a;for(;v;){if(v.visibility===2){this.refilterDelayer.trigger(()=>this.refilter());break}v=v.parent}}rerender(e){if(e.length===0)throw new Ds(this.user,"Invalid tree location");const{node:t,listIndex:i,revealed:n}=this.getTreeNodeWithListIndex(e);t.visible&&n&&this.list.splice(i,1,[t])}has(e){return this.hasTreeNode(e)}getListIndex(e){const{listIndex:t,visible:i,revealed:n}=this.getTreeNodeWithListIndex(e);return i&&n?t:-1}getListRenderCount(e){return this.getTreeNode(e).renderNodeCount}isCollapsible(e){return this.getTreeNode(e).collapsible}setCollapsible(e,t){const i=this.getTreeNode(e);typeof t>"u"&&(t=!i.collapsible);const n={collapsible:t};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(e,n))}isCollapsed(e){return this.getTreeNode(e).collapsed}setCollapsed(e,t,i){const n=this.getTreeNode(e);typeof t>"u"&&(t=!n.collapsed);const s={collapsed:t,recursive:i||!1};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(e,s))}_setCollapseState(e,t){const{node:i,listIndex:n,revealed:s}=this.getTreeNodeWithListIndex(e),r=this._setListNodeCollapseState(i,n,s,t);if(i!==this.root&&this.autoExpandSingleChildren&&r&&!jS(t)&&i.collapsible&&!i.collapsed&&!t.recursive){let a=-1;for(let l=0;l-1){a=-1;break}else a=l;a>-1&&this._setCollapseState([...e,a],t)}return r}_setListNodeCollapseState(e,t,i,n){const s=this._setNodeCollapseState(e,n,!1);if(!i||!e.visible||!s)return s;const r=e.renderNodeCount,a=this.updateNodeAfterCollapseChange(e),l=r-(t===-1?0:1);return this.list.splice(t+1,l,a.slice(1)),s}_setNodeCollapseState(e,t,i){let n;if(e===this.root?n=!1:(jS(t)?(n=e.collapsible!==t.collapsible,e.collapsible=t.collapsible):e.collapsible?(n=e.collapsed!==t.collapsed,e.collapsed=t.collapsed):n=!1,n&&this._onDidChangeCollapseState.fire({node:e,deep:i})),!jS(t)&&t.recursive)for(const s of e.children)n=this._setNodeCollapseState(s,t,!0)||n;return n}expandTo(e){this.eventBufferer.bufferEvents(()=>{let t=this.getTreeNode(e);for(;t.parent;)t=t.parent,e=e.slice(0,e.length-1),t.collapsed&&this._setCollapseState(e,{collapsed:!1,recursive:!1})})}refilter(){const e=this.root.renderNodeCount,t=this.updateNodeAfterFilterChange(this.root);this.list.splice(0,e,t),this.refilterDelayer.cancel()}createTreeNode(e,t,i,n,s,r){const a={parent:t,element:e.element,children:[],depth:t.depth+1,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:typeof e.collapsible=="boolean"?e.collapsible:typeof e.collapsed<"u",collapsed:typeof e.collapsed>"u"?this.collapseByDefault:e.collapsed,renderNodeCount:1,visibility:1,visible:!0,filterData:void 0},l=this._filterNode(a,i);a.visibility=l,n&&s.push(a);const c=e.children||st.empty(),d=n&&l!==0&&!a.collapsed;let h=0,u=1;for(const f of c){const g=this.createTreeNode(f,a,l,d,s,r);a.children.push(g),u+=g.renderNodeCount,g.visible&&(g.visibleChildIndex=h++)}return this.allowNonCollapsibleParents||(a.collapsible=a.collapsible||a.children.length>0),a.visibleChildrenCount=h,a.visible=l===2?h>0:l===1,a.visible?a.collapsed||(a.renderNodeCount=u):(a.renderNodeCount=0,n&&s.pop()),r?.(a),a}updateNodeAfterCollapseChange(e){const t=e.renderNodeCount,i=[];return this._updateNodeAfterCollapseChange(e,i),this._updateAncestorsRenderNodeCount(e.parent,i.length-t),i}_updateNodeAfterCollapseChange(e,t){if(e.visible===!1)return 0;if(t.push(e),e.renderNodeCount=1,!e.collapsed)for(const i of e.children)e.renderNodeCount+=this._updateNodeAfterCollapseChange(i,t);return this._onDidChangeRenderNodeCount.fire(e),e.renderNodeCount}updateNodeAfterFilterChange(e){const t=e.renderNodeCount,i=[];return this._updateNodeAfterFilterChange(e,e.visible?1:0,i),this._updateAncestorsRenderNodeCount(e.parent,i.length-t),i}_updateNodeAfterFilterChange(e,t,i,n=!0){let s;if(e!==this.root){if(s=this._filterNode(e,t),s===0)return e.visible=!1,e.renderNodeCount=0,!1;n&&i.push(e)}const r=i.length;e.renderNodeCount=e===this.root?0:1;let a=!1;if(!e.collapsed||s!==0){let l=0;for(const c of e.children)a=this._updateNodeAfterFilterChange(c,s,i,n&&!e.collapsed)||a,c.visible&&(c.visibleChildIndex=l++);e.visibleChildrenCount=l}else e.visibleChildrenCount=0;return e!==this.root&&(e.visible=s===2?a:s===1,e.visibility=s),e.visible?e.collapsed||(e.renderNodeCount+=i.length-r):(e.renderNodeCount=0,n&&i.pop()),this._onDidChangeRenderNodeCount.fire(e),e.visible}_updateAncestorsRenderNodeCount(e,t){if(t!==0)for(;e;)e.renderNodeCount+=t,this._onDidChangeRenderNodeCount.fire(e),e=e.parent}_filterNode(e,t){const i=this.filter?this.filter.filter(e.element,t):1;return typeof i=="boolean"?(e.filterData=void 0,i?1:0):p2(i)?(e.filterData=i.data,p_(i.visibility)):(e.filterData=void 0,p_(i))}hasTreeNode(e,t=this.root){if(!e||e.length===0)return!0;const[i,...n]=e;return i<0||i>t.children.length?!1:this.hasTreeNode(n,t.children[i])}getTreeNode(e,t=this.root){if(!e||e.length===0)return t;const[i,...n]=e;if(i<0||i>t.children.length)throw new Ds(this.user,"Invalid tree location");return this.getTreeNode(n,t.children[i])}getTreeNodeWithListIndex(e){if(e.length===0)return{node:this.root,listIndex:-1,revealed:!0,visible:!1};const{parentNode:t,listIndex:i,revealed:n,visible:s}=this.getParentNodeWithListIndex(e),r=e[e.length-1];if(r<0||r>t.children.length)throw new Ds(this.user,"Invalid tree location");const a=t.children[r];return{node:a,listIndex:i,revealed:n,visible:s&&a.visible}}getParentNodeWithListIndex(e,t=this.root,i=0,n=!0,s=!0){const[r,...a]=e;if(r<0||r>t.children.length)throw new Ds(this.user,"Invalid tree location");for(let l=0;lt.element)),this.data=e}}function qS(o){return o instanceof J_?new ZJ(o):o}class YJ{constructor(e,t){this.modelProvider=e,this.dnd=t,this.autoExpandDisposable=z.None,this.disposables=new X}getDragURI(e){return this.dnd.getDragURI(e.element)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map(i=>i.element),t)}onDragStart(e,t){this.dnd.onDragStart?.(qS(e),t)}onDragOver(e,t,i,n,s,r=!0){const a=this.dnd.onDragOver(qS(e),t&&t.element,i,n,s),l=this.autoExpandNode!==t;if(l&&(this.autoExpandDisposable.dispose(),this.autoExpandNode=t),typeof t>"u")return a;if(l&&typeof a!="boolean"&&a.autoExpand&&(this.autoExpandDisposable=rg(()=>{const f=this.modelProvider(),g=f.getNodeLocation(t);f.isCollapsed(g)&&f.setCollapsed(g,!1),this.autoExpandNode=void 0},500,this.disposables)),typeof a=="boolean"||!a.accept||typeof a.bubble>"u"||a.feedback){if(!r){const f=typeof a=="boolean"?a:a.accept,g=typeof a=="boolean"?void 0:a.effect;return{accept:f,effect:g,feedback:[i]}}return a}if(a.bubble===1){const f=this.modelProvider(),g=f.getNodeLocation(t),p=f.getParentNodeLocation(g),_=f.getNode(p),b=p&&f.getListIndex(p);return this.onDragOver(e,_,b,n,s,!1)}const c=this.modelProvider(),d=c.getNodeLocation(t),h=c.getListIndex(d),u=c.getListRenderCount(d);return{...a,feedback:Bn(h,h+u)}}drop(e,t,i,n,s){this.autoExpandDisposable.dispose(),this.autoExpandNode=void 0,this.dnd.drop(qS(e),t&&t.element,i,n,s)}onDragEnd(e){this.dnd.onDragEnd?.(e)}dispose(){this.disposables.dispose(),this.dnd.dispose()}}function QJ(o,e){return e&&{...e,identityProvider:e.identityProvider&&{getId(t){return e.identityProvider.getId(t.element)}},dnd:e.dnd&&new YJ(o,e.dnd),multipleSelectionController:e.multipleSelectionController&&{isSelectionSingleChangeEvent(t){return e.multipleSelectionController.isSelectionSingleChangeEvent({...t,element:t.element})},isSelectionRangeChangeEvent(t){return e.multipleSelectionController.isSelectionRangeChangeEvent({...t,element:t.element})}},accessibilityProvider:e.accessibilityProvider&&{...e.accessibilityProvider,getSetSize(t){const i=o(),n=i.getNodeLocation(t),s=i.getParentNodeLocation(n);return i.getNode(s).visibleChildrenCount},getPosInSet(t){return t.visibleChildIndex+1},isChecked:e.accessibilityProvider&&e.accessibilityProvider.isChecked?t=>e.accessibilityProvider.isChecked(t.element):void 0,getRole:e.accessibilityProvider&&e.accessibilityProvider.getRole?t=>e.accessibilityProvider.getRole(t.element):()=>"treeitem",getAriaLabel(t){return e.accessibilityProvider.getAriaLabel(t.element)},getWidgetAriaLabel(){return e.accessibilityProvider.getWidgetAriaLabel()},getWidgetRole:e.accessibilityProvider&&e.accessibilityProvider.getWidgetRole?()=>e.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:e.accessibilityProvider&&e.accessibilityProvider.getAriaLevel?t=>e.accessibilityProvider.getAriaLevel(t.element):t=>t.depth,getActiveDescendantId:e.accessibilityProvider.getActiveDescendantId&&(t=>e.accessibilityProvider.getActiveDescendantId(t.element))},keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&{...e.keyboardNavigationLabelProvider,getKeyboardNavigationLabel(t){return e.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(t.element)}}}}class _2{constructor(e){this.delegate=e}getHeight(e){return this.delegate.getHeight(e.element)}getTemplateId(e){return this.delegate.getTemplateId(e.element)}hasDynamicHeight(e){return!!this.delegate.hasDynamicHeight&&this.delegate.hasDynamicHeight(e.element)}setDynamicHeight(e,t){this.delegate.setDynamicHeight?.(e.element,t)}}var Sg;(function(o){o.None="none",o.OnHover="onHover",o.Always="always"})(Sg||(Sg={}));class XJ{get elements(){return this._elements}constructor(e,t=[]){this._elements=t,this.disposables=new X,this.onDidChange=J.forEach(e,i=>this._elements=i,this.disposables)}dispose(){this.disposables.dispose()}}const Tp=class Tp{constructor(e,t,i,n,s,r={}){this.renderer=e,this.modelProvider=t,this.activeNodes=n,this.renderedIndentGuides=s,this.renderedElements=new Map,this.renderedNodes=new Map,this.indent=Tp.DefaultIndent,this.hideTwistiesOfChildlessElements=!1,this.shouldRenderIndentGuides=!1,this.activeIndentNodes=new Set,this.indentGuidesDisposable=z.None,this.disposables=new X,this.templateId=e.templateId,this.updateOptions(r),J.map(i,a=>a.node)(this.onDidChangeNodeTwistieState,this,this.disposables),e.onDidChangeTwistieState?.(this.onDidChangeTwistieState,this,this.disposables)}updateOptions(e={}){if(typeof e.indent<"u"){const t=bn(e.indent,0,40);if(t!==this.indent){this.indent=t;for(const[i,n]of this.renderedNodes)this.renderTreeElement(i,n)}}if(typeof e.renderIndentGuides<"u"){const t=e.renderIndentGuides!==Sg.None;if(t!==this.shouldRenderIndentGuides){this.shouldRenderIndentGuides=t;for(const[i,n]of this.renderedNodes)this._renderIndentGuides(i,n);if(this.indentGuidesDisposable.dispose(),t){const i=new X;this.activeNodes.onDidChange(this._onDidChangeActiveNodes,this,i),this.indentGuidesDisposable=i,this._onDidChangeActiveNodes(this.activeNodes.elements)}}}typeof e.hideTwistiesOfChildlessElements<"u"&&(this.hideTwistiesOfChildlessElements=e.hideTwistiesOfChildlessElements)}renderTemplate(e){const t=Z(e,ce(".monaco-tl-row")),i=Z(t,ce(".monaco-tl-indent")),n=Z(t,ce(".monaco-tl-twistie")),s=Z(t,ce(".monaco-tl-contents")),r=this.renderer.renderTemplate(s);return{container:e,indent:i,twistie:n,indentGuidesDisposable:z.None,templateData:r}}renderElement(e,t,i,n){this.renderedNodes.set(e,i),this.renderedElements.set(e.element,e),this.renderTreeElement(e,i),this.renderer.renderElement(e,t,i.templateData,n)}disposeElement(e,t,i,n){i.indentGuidesDisposable.dispose(),this.renderer.disposeElement?.(e,t,i.templateData,n),typeof n=="number"&&(this.renderedNodes.delete(e),this.renderedElements.delete(e.element))}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}onDidChangeTwistieState(e){const t=this.renderedElements.get(e);t&&this.onDidChangeNodeTwistieState(t)}onDidChangeNodeTwistieState(e){const t=this.renderedNodes.get(e);t&&(this._onDidChangeActiveNodes(this.activeNodes.elements),this.renderTreeElement(e,t))}renderTreeElement(e,t){const i=Tp.DefaultIndent+(e.depth-1)*this.indent;t.twistie.style.paddingLeft=`${i}px`,t.indent.style.width=`${i+this.indent-16}px`,e.collapsible?t.container.setAttribute("aria-expanded",String(!e.collapsed)):t.container.removeAttribute("aria-expanded"),t.twistie.classList.remove(...Ee.asClassNameArray(ie.treeItemExpanded));let n=!1;this.renderer.renderTwistie&&(n=this.renderer.renderTwistie(e.element,t.twistie)),e.collapsible&&(!this.hideTwistiesOfChildlessElements||e.visibleChildrenCount>0)?(n||t.twistie.classList.add(...Ee.asClassNameArray(ie.treeItemExpanded)),t.twistie.classList.add("collapsible"),t.twistie.classList.toggle("collapsed",e.collapsed)):t.twistie.classList.remove("collapsible","collapsed"),this._renderIndentGuides(e,t)}_renderIndentGuides(e,t){if(xn(t.indent),t.indentGuidesDisposable.dispose(),!this.shouldRenderIndentGuides)return;const i=new X,n=this.modelProvider();for(;;){const s=n.getNodeLocation(e),r=n.getParentNodeLocation(s);if(!r)break;const a=n.getNode(r),l=ce(".indent-guide",{style:`width: ${this.indent}px`});this.activeIndentNodes.has(a)&&l.classList.add("active"),t.indent.childElementCount===0?t.indent.appendChild(l):t.indent.insertBefore(l,t.indent.firstElementChild),this.renderedIndentGuides.add(a,l),i.add(_e(()=>this.renderedIndentGuides.delete(a,l))),e=a}t.indentGuidesDisposable=i}_onDidChangeActiveNodes(e){if(!this.shouldRenderIndentGuides)return;const t=new Set,i=this.modelProvider();e.forEach(n=>{const s=i.getNodeLocation(n);try{const r=i.getParentNodeLocation(s);n.collapsible&&n.children.length>0&&!n.collapsed?t.add(n):r&&t.add(i.getNode(r))}catch{}}),this.activeIndentNodes.forEach(n=>{t.has(n)||this.renderedIndentGuides.forEach(n,s=>s.classList.remove("active"))}),t.forEach(n=>{this.activeIndentNodes.has(n)||this.renderedIndentGuides.forEach(n,s=>s.classList.add("active"))}),this.activeIndentNodes=t}dispose(){this.renderedNodes.clear(),this.renderedElements.clear(),this.indentGuidesDisposable.dispose(),xt(this.disposables)}};Tp.DefaultIndent=8;let BD=Tp;class JJ{get totalCount(){return this._totalCount}get matchCount(){return this._matchCount}constructor(e,t,i){this.tree=e,this.keyboardNavigationLabelProvider=t,this._filter=i,this._totalCount=0,this._matchCount=0,this._pattern="",this._lowercasePattern="",this.disposables=new X,e.onWillRefilter(this.reset,this,this.disposables)}filter(e,t){let i=1;if(this._filter){const r=this._filter.filter(e,t);if(typeof r=="boolean"?i=r?1:0:p2(r)?i=p_(r.visibility):i=r,i===0)return!1}if(this._totalCount++,!this._pattern)return this._matchCount++,{data:oa.Default,visibility:i};const n=this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e),s=Array.isArray(n)?n:[n];for(const r of s){const a=r&&r.toString();if(typeof a>"u")return{data:oa.Default,visibility:i};let l;if(this.tree.findMatchType===Uh.Contiguous){const c=a.toLowerCase().indexOf(this._lowercasePattern);if(c>-1){l=[Number.MAX_SAFE_INTEGER,0];for(let d=this._lowercasePattern.length;d>0;d--)l.push(c+d-1)}}else l=_g(this._pattern,this._lowercasePattern,0,a,a.toLowerCase(),0,{firstMatchCanBeWeak:!0,boostFullMatch:!0});if(l)return this._matchCount++,s.length===1?{data:l,visibility:i}:{data:{label:a,score:l},visibility:i}}return this.tree.findMode===dl.Filter?typeof this.tree.options.defaultFindVisibility=="number"?this.tree.options.defaultFindVisibility:this.tree.options.defaultFindVisibility?this.tree.options.defaultFindVisibility(e):2:{data:oa.Default,visibility:i}}reset(){this._totalCount=0,this._matchCount=0}dispose(){xt(this.disposables)}}var dl;(function(o){o[o.Highlight=0]="Highlight",o[o.Filter=1]="Filter"})(dl||(dl={}));var Uh;(function(o){o[o.Fuzzy=0]="Fuzzy",o[o.Contiguous=1]="Contiguous"})(Uh||(Uh={}));class eee{get pattern(){return this._pattern}get mode(){return this._mode}set mode(e){e!==this._mode&&(this._mode=e,this.widget&&(this.widget.mode=this._mode),this.tree.refilter(),this.render(),this._onDidChangeMode.fire(e))}get matchType(){return this._matchType}set matchType(e){e!==this._matchType&&(this._matchType=e,this.widget&&(this.widget.matchType=this._matchType),this.tree.refilter(),this.render(),this._onDidChangeMatchType.fire(e))}constructor(e,t,i,n,s,r={}){this.tree=e,this.view=i,this.filter=n,this.contextViewProvider=s,this.options=r,this._pattern="",this.width=0,this._onDidChangeMode=new A,this.onDidChangeMode=this._onDidChangeMode.event,this._onDidChangeMatchType=new A,this.onDidChangeMatchType=this._onDidChangeMatchType.event,this._onDidChangePattern=new A,this._onDidChangeOpenState=new A,this.onDidChangeOpenState=this._onDidChangeOpenState.event,this.enabledDisposables=new X,this.disposables=new X,this._mode=e.options.defaultFindMode??dl.Highlight,this._matchType=e.options.defaultFindMatchType??Uh.Fuzzy,t.onDidSplice(this.onDidSpliceModel,this,this.disposables)}updateOptions(e={}){e.defaultFindMode!==void 0&&(this.mode=e.defaultFindMode),e.defaultFindMatchType!==void 0&&(this.matchType=e.defaultFindMatchType)}onDidSpliceModel(){!this.widget||this.pattern.length===0||(this.tree.refilter(),this.render())}render(){const e=this.filter.totalCount>0&&this.filter.matchCount===0;this.pattern&&e?(El(m("replFindNoResults","No results")),this.tree.options.showNotFoundMessage??!0?this.widget?.showMessage({type:2,content:m("not found","No elements found.")}):this.widget?.showMessage({type:2})):(this.widget?.clearMessage(),this.pattern&&El(m("replFindResults","{0} results",this.filter.matchCount)))}shouldAllowFocus(e){return!this.widget||!this.pattern||this.filter.totalCount>0&&this.filter.matchCount<=1?!0:!oa.isDefault(e.filterData)}layout(e){this.width=e,this.widget?.layout(e)}dispose(){this._history=void 0,this._onDidChangePattern.dispose(),this.enabledDisposables.dispose(),this.disposables.dispose()}}function tee(o,e){return o.position===e.position&&N9(o,e)}function N9(o,e){return o.node.element===e.node.element&&o.startIndex===e.startIndex&&o.height===e.height&&o.endIndex===e.endIndex}class iee{constructor(e=[]){this.stickyNodes=e}get count(){return this.stickyNodes.length}equal(e){return li(this.stickyNodes,e.stickyNodes,tee)}lastNodePartiallyVisible(){if(this.count===0)return!1;const e=this.stickyNodes[this.count-1];if(this.count===1)return e.position!==0;const t=this.stickyNodes[this.count-2];return t.position+t.height!==e.position}animationStateChanged(e){if(!li(this.stickyNodes,e.stickyNodes,N9)||this.count===0)return!1;const t=this.stickyNodes[this.count-1],i=e.stickyNodes[e.count-1];return t.position!==i.position}}class nee{constrainStickyScrollNodes(e,t,i){for(let n=0;ni||n>=t)return e.slice(0,n)}return e}}class GP extends z{constructor(e,t,i,n,s,r={}){super(),this.tree=e,this.model=t,this.view=i,this.treeDelegate=s,this.maxWidgetViewRatio=.4;const a=this.validateStickySettings(r);this.stickyScrollMaxItemCount=a.stickyScrollMaxItemCount,this.stickyScrollDelegate=r.stickyScrollDelegate??new nee,this._widget=this._register(new see(i.getScrollableElement(),i,e,n,s,r.accessibilityProvider)),this.onDidChangeHasFocus=this._widget.onDidChangeHasFocus,this.onContextMenu=this._widget.onContextMenu,this._register(i.onDidScroll(()=>this.update())),this._register(i.onDidChangeContentHeight(()=>this.update())),this._register(e.onDidChangeCollapseState(()=>this.update())),this.update()}get height(){return this._widget.height}getNodeAtHeight(e){let t;if(e===0?t=this.view.firstVisibleIndex:t=this.view.indexAt(e+this.view.scrollTop),!(t<0||t>=this.view.length))return this.view.element(t)}update(){const e=this.getNodeAtHeight(0);if(!e||this.tree.scrollTop===0){this._widget.setState(void 0);return}const t=this.findStickyState(e);this._widget.setState(t)}findStickyState(e){const t=[];let i=e,n=0,s=this.getNextStickyNode(i,void 0,n);for(;s&&(t.push(s),n+=s.height,!(t.length<=this.stickyScrollMaxItemCount&&(i=this.getNextVisibleNode(s),!i)));)s=this.getNextStickyNode(i,s.node,n);const r=this.constrainStickyNodes(t);return r.length?new iee(r):void 0}getNextVisibleNode(e){return this.getNodeAtHeight(e.position+e.height)}getNextStickyNode(e,t,i){const n=this.getAncestorUnderPrevious(e,t);if(n&&!(n===e&&(!this.nodeIsUncollapsedParent(e)||this.nodeTopAlignsWithStickyNodesBottom(e,i))))return this.createStickyScrollNode(n,i)}nodeTopAlignsWithStickyNodesBottom(e,t){const i=this.getNodeIndex(e),n=this.view.getElementTop(i),s=t;return this.view.scrollTop===n-s}createStickyScrollNode(e,t){const i=this.treeDelegate.getHeight(e),{startIndex:n,endIndex:s}=this.getNodeRange(e),r=this.calculateStickyNodePosition(s,t,i);return{node:e,position:r,height:i,startIndex:n,endIndex:s}}getAncestorUnderPrevious(e,t=void 0){let i=e,n=this.getParentNode(i);for(;n;){if(n===t)return i;i=n,n=this.getParentNode(i)}if(t===void 0)return i}calculateStickyNodePosition(e,t,i){let n=this.view.getRelativeTop(e);if(n===null&&this.view.firstVisibleIndex===e&&e+1l&&t<=l?l-i:t}constrainStickyNodes(e){if(e.length===0)return[];const t=this.view.renderHeight*this.maxWidgetViewRatio,i=e[e.length-1];if(e.length<=this.stickyScrollMaxItemCount&&i.position+i.height<=t)return e;const n=this.stickyScrollDelegate.constrainStickyScrollNodes(e,this.stickyScrollMaxItemCount,t);if(!n.length)return[];const s=n[n.length-1];if(n.length>this.stickyScrollMaxItemCount||s.position+s.height>t)throw new Error("stickyScrollDelegate violates constraints");return n}getParentNode(e){const t=this.model.getNodeLocation(e),i=this.model.getParentNodeLocation(t);return i?this.model.getNode(i):void 0}nodeIsUncollapsedParent(e){const t=this.model.getNodeLocation(e);return this.model.getListRenderCount(t)>1}getNodeIndex(e){const t=this.model.getNodeLocation(e);return this.model.getListIndex(t)}getNodeRange(e){const t=this.model.getNodeLocation(e),i=this.model.getListIndex(t);if(i<0)throw new Error("Node not found in tree");const n=this.model.getListRenderCount(t),s=i+n-1;return{startIndex:i,endIndex:s}}nodePositionTopBelowWidget(e){const t=[];let i=this.getParentNode(e);for(;i;)t.push(i),i=this.getParentNode(i);let n=0;for(let s=0;s0,i=!!e&&e.count>0;if(!t&&!i||t&&i&&this._previousState.equal(e))return;if(t!==i&&this.setVisible(i),!i){this._previousState=void 0,this._previousElements=[],this._previousStateDisposables.clear();return}const n=e.stickyNodes[e.count-1];if(this._previousState&&e.animationStateChanged(this._previousState))this._previousElements[this._previousState.count-1].style.top=`${n.position}px`;else{this._previousStateDisposables.clear();const s=Array(e.count);for(let r=e.count-1;r>=0;r--){const a=e.stickyNodes[r],{element:l,disposable:c}=this.createElement(a,r,e.count);s[r]=l,this._rootDomNode.appendChild(l),this._previousStateDisposables.add(c)}this.stickyScrollFocus.updateElements(s,e),this._previousElements=s}this._previousState=e,this._rootDomNode.style.height=`${n.position+n.height}px`}createElement(e,t,i){const n=e.startIndex,s=document.createElement("div");s.style.top=`${e.position}px`,this.tree.options.setRowHeight!==!1&&(s.style.height=`${e.height}px`),this.tree.options.setRowLineHeight!==!1&&(s.style.lineHeight=`${e.height}px`),s.classList.add("monaco-tree-sticky-row"),s.classList.add("monaco-list-row"),s.setAttribute("data-index",`${n}`),s.setAttribute("data-parity",n%2===0?"even":"odd"),s.setAttribute("id",this.view.getElementID(n));const r=this.setAccessibilityAttributes(s,e.node.element,t,i),a=this.treeDelegate.getTemplateId(e.node),l=this.treeRenderers.find(u=>u.templateId===a);if(!l)throw new Error(`No renderer found for template id ${a}`);let c=e.node;c===this.tree.getNode(this.tree.getNodeLocation(e.node))&&(c=new Proxy(e.node,{}));const d=l.renderTemplate(s);l.renderElement(c,e.startIndex,d,e.height);const h=_e(()=>{r.dispose(),l.disposeElement(c,e.startIndex,d,e.height),l.disposeTemplate(d),s.remove()});return{element:s,disposable:h}}setAccessibilityAttributes(e,t,i,n){if(!this.accessibilityProvider)return z.None;this.accessibilityProvider.getSetSize&&e.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(t,i,n))),this.accessibilityProvider.getPosInSet&&e.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(t,i))),this.accessibilityProvider.getRole&&e.setAttribute("role",this.accessibilityProvider.getRole(t)??"treeitem");const s=this.accessibilityProvider.getAriaLabel(t),r=s&&typeof s!="string"?s:wg(s),a=We(c=>{const d=c.readObservable(r);d?e.setAttribute("aria-label",d):e.removeAttribute("aria-label")});typeof s=="string"||s&&e.setAttribute("aria-label",s.get());const l=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(t);return typeof l=="number"&&e.setAttribute("aria-level",`${l}`),e.setAttribute("aria-selected",String(!1)),a}setVisible(e){this._rootDomNode.classList.toggle("empty",!e),e||this.stickyScrollFocus.updateElements([],void 0)}domFocus(){this.stickyScrollFocus.domFocus()}focusedLast(){return this.stickyScrollFocus.focusedLast()}dispose(){this.stickyScrollFocus.dispose(),this._previousStateDisposables.dispose(),this._rootDomNode.remove()}}class oee extends z{get domHasFocus(){return this._domHasFocus}set domHasFocus(e){e!==this._domHasFocus&&(this._onDidChangeHasFocus.fire(e),this._domHasFocus=e)}constructor(e,t){super(),this.container=e,this.view=t,this.focusedIndex=-1,this.elements=[],this._onDidChangeHasFocus=new A,this.onDidChangeHasFocus=this._onDidChangeHasFocus.event,this._onContextMenu=new A,this.onContextMenu=this._onContextMenu.event,this._domHasFocus=!1,this._register(U(this.container,"focus",()=>this.onFocus())),this._register(U(this.container,"blur",()=>this.onBlur())),this._register(this.view.onDidFocus(()=>this.toggleStickyScrollFocused(!1))),this._register(this.view.onKeyDown(i=>this.onKeyDown(i))),this._register(this.view.onMouseDown(i=>this.onMouseDown(i))),this._register(this.view.onContextMenu(i=>this.handleContextMenu(i)))}handleContextMenu(e){const t=e.browserEvent.target;if(!d_(t)&&!Jm(t)){this.focusedLast()&&this.view.domFocus();return}if(!Qa(e.browserEvent)){if(!this.state)throw new Error("Context menu should not be triggered when state is undefined");const r=this.state.stickyNodes.findIndex(a=>a.node.element===e.element?.element);if(r===-1)throw new Error("Context menu should not be triggered when element is not in sticky scroll widget");this.container.focus(),this.setFocus(r);return}if(!this.state||this.focusedIndex<0)throw new Error("Context menu key should not be triggered when focus is not in sticky scroll widget");const n=this.state.stickyNodes[this.focusedIndex].node.element,s=this.elements[this.focusedIndex];this._onContextMenu.fire({element:n,anchor:s,browserEvent:e.browserEvent,isStickyScroll:!0})}onKeyDown(e){if(this.domHasFocus&&this.state){if(e.key==="ArrowUp")this.setFocusedElement(Math.max(0,this.focusedIndex-1)),e.preventDefault(),e.stopPropagation();else if(e.key==="ArrowDown"||e.key==="ArrowRight"){if(this.focusedIndex>=this.state.count-1){const t=this.state.stickyNodes[this.state.count-1].startIndex+1;this.view.domFocus(),this.view.setFocus([t]),this.scrollNodeUnderWidget(t,this.state)}else this.setFocusedElement(this.focusedIndex+1);e.preventDefault(),e.stopPropagation()}}}onMouseDown(e){const t=e.browserEvent.target;!d_(t)&&!Jm(t)||(e.browserEvent.preventDefault(),e.browserEvent.stopPropagation())}updateElements(e,t){if(t&&t.count===0)throw new Error("Sticky scroll state must be undefined when there are no sticky nodes");if(t&&t.count!==e.length)throw new Error("Sticky scroll focus received illigel state");const i=this.focusedIndex;if(this.removeFocus(),this.elements=e,this.state=t,t){const n=bn(i,0,t.count-1);this.setFocus(n)}else this.domHasFocus&&this.view.domFocus();this.container.tabIndex=t?0:-1}setFocusedElement(e){const t=this.state;if(!t)throw new Error("Cannot set focus when state is undefined");if(this.setFocus(e),!(e1?t.stickyNodes[t.count-2]:void 0,s=this.view.getElementTop(e),r=n?n.position+n.height+i.height:i.height;this.view.scrollTop=s-r}domFocus(){if(!this.state)throw new Error("Cannot focus when state is undefined");this.container.focus()}focusedLast(){return this.state?this.view.getHTMLElement().classList.contains("sticky-scroll-focused"):!1}removeFocus(){this.focusedIndex!==-1&&(this.toggleElementFocus(this.elements[this.focusedIndex],!1),this.focusedIndex=-1)}setFocus(e){if(0>e)throw new Error("addFocus() can not remove focus");if(!this.state&&e>=0)throw new Error("Cannot set focus index when state is undefined");if(this.state&&e>=this.state.count)throw new Error("Cannot set focus index to an index that does not exist");const t=this.focusedIndex;t>=0&&this.toggleElementFocus(this.elements[t],!1),e>=0&&this.toggleElementFocus(this.elements[e],!0),this.focusedIndex=e}toggleElementFocus(e,t){this.toggleElementActiveFocus(e,t&&this.domHasFocus),this.toggleElementPassiveFocus(e,t)}toggleCurrentElementActiveFocus(e){this.focusedIndex!==-1&&this.toggleElementActiveFocus(this.elements[this.focusedIndex],e)}toggleElementActiveFocus(e,t){e.classList.toggle("focused",t)}toggleElementPassiveFocus(e,t){e.classList.toggle("passive-focused",t)}toggleStickyScrollFocused(e){this.view.getHTMLElement().classList.toggle("sticky-scroll-focused",e)}onFocus(){if(!this.state||this.elements.length===0)throw new Error("Cannot focus when state is undefined or elements are empty");this.domHasFocus=!0,this.toggleStickyScrollFocused(!0),this.toggleCurrentElementActiveFocus(!0),this.focusedIndex===-1&&this.setFocus(0)}onBlur(){this.domHasFocus=!1,this.toggleCurrentElementActiveFocus(!1)}dispose(){this.toggleStickyScrollFocused(!1),this._onDidChangeHasFocus.fire(!1),super.dispose()}}function Qb(o){let e=jd.Unknown;return rS(o.browserEvent.target,"monaco-tl-twistie","monaco-tl-row")?e=jd.Twistie:rS(o.browserEvent.target,"monaco-tl-contents","monaco-tl-row")?e=jd.Element:rS(o.browserEvent.target,"monaco-tree-type-filter","monaco-list")&&(e=jd.Filter),{browserEvent:o.browserEvent,element:o.element?o.element.element:null,target:e}}function ree(o){const e=d_(o.browserEvent.target);return{element:o.element?o.element.element:null,browserEvent:o.browserEvent,anchor:o.anchor,isStickyScroll:e}}function B1(o,e){e(o),o.children.forEach(t=>B1(t,e))}class GS{get nodeSet(){return this._nodeSet||(this._nodeSet=this.createNodeSet()),this._nodeSet}constructor(e,t){this.getFirstViewElementWithTrait=e,this.identityProvider=t,this.nodes=[],this._onDidChange=new A,this.onDidChange=this._onDidChange.event}set(e,t){!t?.__forceEvent&&li(this.nodes,e)||this._set(e,!1,t)}_set(e,t,i){if(this.nodes=[...e],this.elements=void 0,this._nodeSet=void 0,!t){const n=this;this._onDidChange.fire({get elements(){return n.get()},browserEvent:i})}}get(){return this.elements||(this.elements=this.nodes.map(e=>e.element)),[...this.elements]}getNodes(){return this.nodes}has(e){return this.nodeSet.has(e)}onDidModelSplice({insertedNodes:e,deletedNodes:t}){if(!this.identityProvider){const l=this.createNodeSet(),c=d=>l.delete(d);t.forEach(d=>B1(d,c)),this.set([...l.values()]);return}const i=new Set,n=l=>i.add(this.identityProvider.getId(l.element).toString());t.forEach(l=>B1(l,n));const s=new Map,r=l=>s.set(this.identityProvider.getId(l.element).toString(),l);e.forEach(l=>B1(l,r));const a=[];for(const l of this.nodes){const c=this.identityProvider.getId(l.element).toString();if(!i.has(c))a.push(l);else{const h=s.get(c);h&&h.visible&&a.push(h)}}if(this.nodes.length>0&&a.length===0){const l=this.getFirstViewElementWithTrait();l&&a.push(l)}this._set(a,!0)}createNodeSet(){const e=new Set;for(const t of this.nodes)e.add(t);return e}}class aee extends R7{constructor(e,t,i){super(e),this.tree=t,this.stickyScrollProvider=i}onViewPointer(e){if(E7(e.browserEvent.target)||pc(e.browserEvent.target)||Rm(e.browserEvent.target)||e.browserEvent.isHandledByList)return;const t=e.element;if(!t)return super.onViewPointer(e);if(this.isSelectionRangeChangeEvent(e)||this.isSelectionSingleChangeEvent(e))return super.onViewPointer(e);const i=e.browserEvent.target,n=i.classList.contains("monaco-tl-twistie")||i.classList.contains("monaco-icon-label")&&i.classList.contains("folder-icon")&&e.browserEvent.offsetX<16,s=Jm(e.browserEvent.target);let r=!1;if(s?r=!0:typeof this.tree.expandOnlyOnTwistieClick=="function"?r=this.tree.expandOnlyOnTwistieClick(t.element):r=!!this.tree.expandOnlyOnTwistieClick,s)this.handleStickyScrollMouseEvent(e,t);else{if(r&&!n&&e.browserEvent.detail!==2)return super.onViewPointer(e);if(!this.tree.expandOnDoubleClick&&e.browserEvent.detail===2)return super.onViewPointer(e)}if(t.collapsible&&(!s||n)){const a=this.tree.getNodeLocation(t),l=e.browserEvent.altKey;if(this.tree.setFocus([a]),this.tree.toggleCollapsed(a,l),n){e.browserEvent.isHandledByList=!0;return}}s||super.onViewPointer(e)}handleStickyScrollMouseEvent(e,t){if(hY(e.browserEvent.target)||uY(e.browserEvent.target))return;const i=this.stickyScrollProvider();if(!i)throw new Error("Sticky scroll controller not found");const n=this.list.indexOf(t),s=this.list.getElementTop(n),r=i.nodePositionTopBelowWidget(t);this.tree.scrollTop=s-r,this.list.domFocus(),this.list.setFocus([n]),this.list.setSelection([n])}onDoubleClick(e){e.browserEvent.target.classList.contains("monaco-tl-twistie")||!this.tree.expandOnDoubleClick||e.browserEvent.isHandledByList||super.onDoubleClick(e)}onMouseDown(e){const t=e.browserEvent.target;if(!d_(t)&&!Jm(t)){super.onMouseDown(e);return}}onContextMenu(e){const t=e.browserEvent.target;if(!d_(t)&&!Jm(t)){super.onContextMenu(e);return}}}class lee extends go{constructor(e,t,i,n,s,r,a,l){super(e,t,i,n,l),this.focusTrait=s,this.selectionTrait=r,this.anchorTrait=a}createMouseController(e){return new aee(this,e.tree,e.stickyScrollProvider)}splice(e,t,i=[]){if(super.splice(e,t,i),i.length===0)return;const n=[],s=[];let r;i.forEach((a,l)=>{this.focusTrait.has(a)&&n.push(e+l),this.selectionTrait.has(a)&&s.push(e+l),this.anchorTrait.has(a)&&(r=e+l)}),n.length>0&&super.setFocus(Eh([...super.getFocus(),...n])),s.length>0&&super.setSelection(Eh([...super.getSelection(),...s])),typeof r=="number"&&super.setAnchor(r)}setFocus(e,t,i=!1){super.setFocus(e,t),i||this.focusTrait.set(e.map(n=>this.element(n)),t)}setSelection(e,t,i=!1){super.setSelection(e,t),i||this.selectionTrait.set(e.map(n=>this.element(n)),t)}setAnchor(e,t=!1){super.setAnchor(e),t||(typeof e>"u"?this.anchorTrait.set([]):this.anchorTrait.set([this.element(e)]))}}class T9{get onDidScroll(){return this.view.onDidScroll}get onDidChangeFocus(){return this.eventBufferer.wrapEvent(this.focus.onDidChange)}get onDidChangeSelection(){return this.eventBufferer.wrapEvent(this.selection.onDidChange)}get onMouseDblClick(){return J.filter(J.map(this.view.onMouseDblClick,Qb),e=>e.target!==jd.Filter)}get onMouseOver(){return J.map(this.view.onMouseOver,Qb)}get onMouseOut(){return J.map(this.view.onMouseOut,Qb)}get onContextMenu(){return J.any(J.filter(J.map(this.view.onContextMenu,ree),e=>!e.isStickyScroll),this.stickyScrollController?.onContextMenu??J.None)}get onPointer(){return J.map(this.view.onPointer,Qb)}get onKeyDown(){return this.view.onKeyDown}get onDidFocus(){return this.view.onDidFocus}get onDidChangeModel(){return J.signal(this.model.onDidSplice)}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get findMode(){return this.findController?.mode??dl.Highlight}set findMode(e){this.findController&&(this.findController.mode=e)}get findMatchType(){return this.findController?.matchType??Uh.Fuzzy}set findMatchType(e){this.findController&&(this.findController.matchType=e)}get expandOnDoubleClick(){return typeof this._options.expandOnDoubleClick>"u"?!0:this._options.expandOnDoubleClick}get expandOnlyOnTwistieClick(){return typeof this._options.expandOnlyOnTwistieClick>"u"?!0:this._options.expandOnlyOnTwistieClick}get onDidDispose(){return this.view.onDidDispose}constructor(e,t,i,n,s={}){this._user=e,this._options=s,this.eventBufferer=new W_,this.onDidChangeFindOpenState=J.None,this.onDidChangeStickyScrollFocused=J.None,this.disposables=new X,this._onWillRefilter=new A,this.onWillRefilter=this._onWillRefilter.event,this._onDidUpdateOptions=new A,this.treeDelegate=new _2(i);const r=new VM,a=new VM,l=this.disposables.add(new XJ(a.event)),c=new dT;this.renderers=n.map(g=>new BD(g,()=>this.model,r.event,l,c,s));for(const g of this.renderers)this.disposables.add(g);let d;s.keyboardNavigationLabelProvider&&(d=new JJ(this,s.keyboardNavigationLabelProvider,s.filter),s={...s,filter:d},this.disposables.add(d)),this.focus=new GS(()=>this.view.getFocusedElements()[0],s.identityProvider),this.selection=new GS(()=>this.view.getSelectedElements()[0],s.identityProvider),this.anchor=new GS(()=>this.view.getAnchorElement(),s.identityProvider),this.view=new lee(e,t,this.treeDelegate,this.renderers,this.focus,this.selection,this.anchor,{...QJ(()=>this.model,s),tree:this,stickyScrollProvider:()=>this.stickyScrollController}),this.model=this.createModel(e,this.view,s),r.input=this.model.onDidChangeCollapseState;const h=J.forEach(this.model.onDidSplice,g=>{this.eventBufferer.bufferEvents(()=>{this.focus.onDidModelSplice(g),this.selection.onDidModelSplice(g)})},this.disposables);h(()=>null,null,this.disposables);const u=this.disposables.add(new A),f=this.disposables.add(new z_(0));if(this.disposables.add(J.any(h,this.focus.onDidChange,this.selection.onDidChange)(()=>{f.trigger(()=>{const g=new Set;for(const p of this.focus.getNodes())g.add(p);for(const p of this.selection.getNodes())g.add(p);u.fire([...g.values()])})})),a.input=u.event,s.keyboardSupport!==!1){const g=J.chain(this.view.onKeyDown,p=>p.filter(_=>!pc(_.target)).map(_=>new Nt(_)));J.chain(g,p=>p.filter(_=>_.keyCode===15))(this.onLeftArrow,this,this.disposables),J.chain(g,p=>p.filter(_=>_.keyCode===17))(this.onRightArrow,this,this.disposables),J.chain(g,p=>p.filter(_=>_.keyCode===10))(this.onSpace,this,this.disposables)}if((s.findWidgetEnabled??!0)&&s.keyboardNavigationLabelProvider&&s.contextViewProvider){const g=this.options.findWidgetStyles?{styles:this.options.findWidgetStyles}:void 0;this.findController=new eee(this,this.model,this.view,d,s.contextViewProvider,g),this.focusNavigationFilter=p=>this.findController.shouldAllowFocus(p),this.onDidChangeFindOpenState=this.findController.onDidChangeOpenState,this.disposables.add(this.findController),this.onDidChangeFindMode=this.findController.onDidChangeMode,this.onDidChangeFindMatchType=this.findController.onDidChangeMatchType}else this.onDidChangeFindMode=J.None,this.onDidChangeFindMatchType=J.None;s.enableStickyScroll&&(this.stickyScrollController=new GP(this,this.model,this.view,this.renderers,this.treeDelegate,s),this.onDidChangeStickyScrollFocused=this.stickyScrollController.onDidChangeHasFocus),this.styleElement=Vs(this.view.getHTMLElement()),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===Sg.Always)}updateOptions(e={}){this._options={...this._options,...e};for(const t of this.renderers)t.updateOptions(e);this.view.updateOptions(this._options),this.findController?.updateOptions(e),this.updateStickyScroll(e),this._onDidUpdateOptions.fire(this._options),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===Sg.Always)}get options(){return this._options}updateStickyScroll(e){!this.stickyScrollController&&this._options.enableStickyScroll?(this.stickyScrollController=new GP(this,this.model,this.view,this.renderers,this.treeDelegate,this._options),this.onDidChangeStickyScrollFocused=this.stickyScrollController.onDidChangeHasFocus):this.stickyScrollController&&!this._options.enableStickyScroll&&(this.onDidChangeStickyScrollFocused=J.None,this.stickyScrollController.dispose(),this.stickyScrollController=void 0),this.stickyScrollController?.updateOptions(e)}getHTMLElement(){return this.view.getHTMLElement()}get scrollTop(){return this.view.scrollTop}set scrollTop(e){this.view.scrollTop=e}get scrollHeight(){return this.view.scrollHeight}get renderHeight(){return this.view.renderHeight}get ariaLabel(){return this.view.ariaLabel}set ariaLabel(e){this.view.ariaLabel=e}domFocus(){this.stickyScrollController?.focusedLast()?this.stickyScrollController.domFocus():this.view.domFocus()}layout(e,t){this.view.layout(e,t),Pg(t)&&this.findController?.layout(t)}style(e){const t=`.${this.view.domId}`,i=[];e.treeIndentGuidesStroke&&(i.push(`.monaco-list${t}:hover .monaco-tl-indent > .indent-guide, .monaco-list${t}.always .monaco-tl-indent > .indent-guide { border-color: ${e.treeInactiveIndentGuidesStroke}; }`),i.push(`.monaco-list${t} .monaco-tl-indent > .indent-guide.active { border-color: ${e.treeIndentGuidesStroke}; }`));const n=e.treeStickyScrollBackground??e.listBackground;n&&(i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container { background-color: ${n}; }`),i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row { background-color: ${n}; }`)),e.treeStickyScrollBorder&&i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container { border-bottom: 1px solid ${e.treeStickyScrollBorder}; }`),e.treeStickyScrollShadow&&i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow { box-shadow: ${e.treeStickyScrollShadow} 0 6px 6px -6px inset; height: 3px; }`),e.listFocusForeground&&(i.push(`.monaco-list${t}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused { color: ${e.listFocusForeground}; }`),i.push(`.monaco-list${t}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused { color: inherit; }`));const s=vl(e.listFocusAndSelectionOutline,vl(e.listSelectionOutline,e.listFocusOutline??""));s&&(i.push(`.monaco-list${t}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused.selected { outline: 1px solid ${s}; outline-offset: -1px;}`),i.push(`.monaco-list${t}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused.selected { outline: inherit;}`)),e.listFocusOutline&&(i.push(`.monaco-list${t}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; }`),i.push(`.monaco-list${t}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused { outline: inherit; }`),i.push(`.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.passive-focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; }`),i.push(`.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused.sticky-scroll-focused .monaco-list-rows .monaco-list-row.focused { outline: inherit; }`),i.push(`.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused:not(.sticky-scroll-focused) .monaco-tree-sticky-container .monaco-list-rows .monaco-list-row.focused { outline: inherit; }`)),this.styleElement.textContent=i.join(` -`),this.view.style(e)}getParentElement(e){const t=this.model.getParentNodeLocation(e);return this.model.getNode(t).element}getFirstElementChild(e){return this.model.getFirstElementChild(e)}getNode(e){return this.model.getNode(e)}getNodeLocation(e){return this.model.getNodeLocation(e)}collapse(e,t=!1){return this.model.setCollapsed(e,!0,t)}expand(e,t=!1){return this.model.setCollapsed(e,!1,t)}toggleCollapsed(e,t=!1){return this.model.setCollapsed(e,void 0,t)}isCollapsible(e){return this.model.isCollapsible(e)}setCollapsible(e,t){return this.model.setCollapsible(e,t)}isCollapsed(e){return this.model.isCollapsed(e)}refilter(){this._onWillRefilter.fire(void 0),this.model.refilter()}setSelection(e,t){this.eventBufferer.bufferEvents(()=>{const i=e.map(s=>this.model.getNode(s));this.selection.set(i,t);const n=e.map(s=>this.model.getListIndex(s)).filter(s=>s>-1);this.view.setSelection(n,t,!0)})}getSelection(){return this.selection.get()}setFocus(e,t){this.eventBufferer.bufferEvents(()=>{const i=e.map(s=>this.model.getNode(s));this.focus.set(i,t);const n=e.map(s=>this.model.getListIndex(s)).filter(s=>s>-1);this.view.setFocus(n,t,!0)})}focusNext(e=1,t=!1,i,n=Qa(i)&&i.altKey?void 0:this.focusNavigationFilter){this.view.focusNext(e,t,i,n)}focusPrevious(e=1,t=!1,i,n=Qa(i)&&i.altKey?void 0:this.focusNavigationFilter){this.view.focusPrevious(e,t,i,n)}focusNextPage(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){return this.view.focusNextPage(e,t)}focusPreviousPage(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){return this.view.focusPreviousPage(e,t,()=>this.stickyScrollController?.height??0)}focusLast(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){this.view.focusLast(e,t)}focusFirst(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){this.view.focusFirst(e,t)}getFocus(){return this.focus.get()}reveal(e,t){this.model.expandTo(e);const i=this.model.getListIndex(e);if(i!==-1)if(!this.stickyScrollController)this.view.reveal(i,t);else{const n=this.stickyScrollController.nodePositionTopBelowWidget(this.getNode(e));this.view.reveal(i,t,n)}}onLeftArrow(e){e.preventDefault(),e.stopPropagation();const t=this.view.getFocusedElements();if(t.length===0)return;const i=t[0],n=this.model.getNodeLocation(i);if(!this.model.setCollapsed(n,!0)){const r=this.model.getParentNodeLocation(n);if(!r)return;const a=this.model.getListIndex(r);this.view.reveal(a),this.view.setFocus([a])}}onRightArrow(e){e.preventDefault(),e.stopPropagation();const t=this.view.getFocusedElements();if(t.length===0)return;const i=t[0],n=this.model.getNodeLocation(i);if(!this.model.setCollapsed(n,!1)){if(!i.children.some(l=>l.visible))return;const[r]=this.view.getFocus(),a=r+1;this.view.reveal(a),this.view.setFocus([a])}}onSpace(e){e.preventDefault(),e.stopPropagation();const t=this.view.getFocusedElements();if(t.length===0)return;const i=t[0],n=this.model.getNodeLocation(i),s=e.browserEvent.altKey;this.model.setCollapsed(n,void 0,s)}dispose(){xt(this.disposables),this.stickyScrollController?.dispose(),this.view.dispose()}}class b2{constructor(e,t,i={}){this.user=e,this.rootRef=null,this.nodes=new Map,this.nodesByIdentity=new Map,this.model=new GJ(e,t,null,i),this.onDidSplice=this.model.onDidSplice,this.onDidChangeCollapseState=this.model.onDidChangeCollapseState,this.onDidChangeRenderNodeCount=this.model.onDidChangeRenderNodeCount,i.sorter&&(this.sorter={compare(n,s){return i.sorter.compare(n.element,s.element)}}),this.identityProvider=i.identityProvider}setChildren(e,t=st.empty(),i={}){const n=this.getElementLocation(e);this._setChildren(n,this.preserveCollapseState(t),i)}_setChildren(e,t=st.empty(),i){const n=new Set,s=new Set,r=l=>{if(l.element===null)return;const c=l;if(n.add(c.element),this.nodes.set(c.element,c),this.identityProvider){const d=this.identityProvider.getId(c.element).toString();s.add(d),this.nodesByIdentity.set(d,c)}i.onDidCreateNode?.(c)},a=l=>{if(l.element===null)return;const c=l;if(n.has(c.element)||this.nodes.delete(c.element),this.identityProvider){const d=this.identityProvider.getId(c.element).toString();s.has(d)||this.nodesByIdentity.delete(d)}i.onDidDeleteNode?.(c)};this.model.splice([...e,0],Number.MAX_VALUE,t,{...i,onDidCreateNode:r,onDidDeleteNode:a})}preserveCollapseState(e=st.empty()){return this.sorter&&(e=[...e].sort(this.sorter.compare.bind(this.sorter))),st.map(e,t=>{let i=this.nodes.get(t.element);if(!i&&this.identityProvider){const r=this.identityProvider.getId(t.element).toString();i=this.nodesByIdentity.get(r)}if(!i){let r;return typeof t.collapsed>"u"?r=void 0:t.collapsed===ys.Collapsed||t.collapsed===ys.PreserveOrCollapsed?r=!0:t.collapsed===ys.Expanded||t.collapsed===ys.PreserveOrExpanded?r=!1:r=!!t.collapsed,{...t,children:this.preserveCollapseState(t.children),collapsed:r}}const n=typeof t.collapsible=="boolean"?t.collapsible:i.collapsible;let s;return typeof t.collapsed>"u"||t.collapsed===ys.PreserveOrCollapsed||t.collapsed===ys.PreserveOrExpanded?s=i.collapsed:t.collapsed===ys.Collapsed?s=!0:t.collapsed===ys.Expanded?s=!1:s=!!t.collapsed,{...t,collapsible:n,collapsed:s,children:this.preserveCollapseState(t.children)}})}rerender(e){const t=this.getElementLocation(e);this.model.rerender(t)}getFirstElementChild(e=null){const t=this.getElementLocation(e);return this.model.getFirstElementChild(t)}has(e){return this.nodes.has(e)}getListIndex(e){const t=this.getElementLocation(e);return this.model.getListIndex(t)}getListRenderCount(e){const t=this.getElementLocation(e);return this.model.getListRenderCount(t)}isCollapsible(e){const t=this.getElementLocation(e);return this.model.isCollapsible(t)}setCollapsible(e,t){const i=this.getElementLocation(e);return this.model.setCollapsible(i,t)}isCollapsed(e){const t=this.getElementLocation(e);return this.model.isCollapsed(t)}setCollapsed(e,t,i){const n=this.getElementLocation(e);return this.model.setCollapsed(n,t,i)}expandTo(e){const t=this.getElementLocation(e);this.model.expandTo(t)}refilter(){this.model.refilter()}getNode(e=null){if(e===null)return this.model.getNode(this.model.rootRef);const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);return t}getNodeLocation(e){return e.element}getParentNodeLocation(e){if(e===null)throw new Ds(this.user,"Invalid getParentNodeLocation call");const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);const i=this.model.getNodeLocation(t),n=this.model.getParentNodeLocation(i);return this.model.getNode(n).element}getElementLocation(e){if(e===null)return[];const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);return this.model.getNodeLocation(t)}}function W1(o){const e=[o.element],t=o.incompressible||!1;return{element:{elements:e,incompressible:t},children:st.map(st.from(o.children),W1),collapsible:o.collapsible,collapsed:o.collapsed}}function H1(o){const e=[o.element],t=o.incompressible||!1;let i,n;for(;[n,i]=st.consume(st.from(o.children),2),!(n.length!==1||n[0].incompressible);)o=n[0],e.push(o.element);return{element:{elements:e,incompressible:t},children:st.map(st.concat(n,i),H1),collapsible:o.collapsible,collapsed:o.collapsed}}function WD(o,e=0){let t;return eWD(i,0)),e===0&&o.element.incompressible?{element:o.element.elements[e],children:t,incompressible:!0,collapsible:o.collapsible,collapsed:o.collapsed}:{element:o.element.elements[e],children:t,collapsible:o.collapsible,collapsed:o.collapsed}}function ZP(o){return WD(o,0)}function M9(o,e,t){return o.element===e?{...o,children:t}:{...o,children:st.map(st.from(o.children),i=>M9(i,e,t))}}const cee=o=>({getId(e){return e.elements.map(t=>o.getId(t).toString()).join("\0")}});class dee{get onDidSplice(){return this.model.onDidSplice}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get onDidChangeRenderNodeCount(){return this.model.onDidChangeRenderNodeCount}constructor(e,t,i={}){this.user=e,this.rootRef=null,this.nodes=new Map,this.model=new b2(e,t,i),this.enabled=typeof i.compressionEnabled>"u"?!0:i.compressionEnabled,this.identityProvider=i.identityProvider}setChildren(e,t=st.empty(),i){const n=i.diffIdentityProvider&&cee(i.diffIdentityProvider);if(e===null){const g=st.map(t,this.enabled?H1:W1);this._setChildren(null,g,{diffIdentityProvider:n,diffDepth:1/0});return}const s=this.nodes.get(e);if(!s)throw new Ds(this.user,"Unknown compressed tree node");const r=this.model.getNode(s),a=this.model.getParentNodeLocation(s),l=this.model.getNode(a),c=ZP(r),d=M9(c,e,t),h=(this.enabled?H1:W1)(d),u=i.diffIdentityProvider?((g,p)=>i.diffIdentityProvider.getId(g)===i.diffIdentityProvider.getId(p)):void 0;if(li(h.element.elements,r.element.elements,u)){this._setChildren(s,h.children||st.empty(),{diffIdentityProvider:n,diffDepth:1});return}const f=l.children.map(g=>g===r?h:g);this._setChildren(l.element,f,{diffIdentityProvider:n,diffDepth:r.depth-l.depth})}isCompressionEnabled(){return this.enabled}setCompressionEnabled(e){if(e===this.enabled)return;this.enabled=e;const i=this.model.getNode().children,n=st.map(i,ZP),s=st.map(n,e?H1:W1);this._setChildren(null,s,{diffIdentityProvider:this.identityProvider,diffDepth:1/0})}_setChildren(e,t,i){const n=new Set,s=a=>{for(const l of a.element.elements)n.add(l),this.nodes.set(l,a.element)},r=a=>{for(const l of a.element.elements)n.has(l)||this.nodes.delete(l)};this.model.setChildren(e,t,{...i,onDidCreateNode:s,onDidDeleteNode:r})}has(e){return this.nodes.has(e)}getListIndex(e){const t=this.getCompressedNode(e);return this.model.getListIndex(t)}getListRenderCount(e){const t=this.getCompressedNode(e);return this.model.getListRenderCount(t)}getNode(e){if(typeof e>"u")return this.model.getNode();const t=this.getCompressedNode(e);return this.model.getNode(t)}getNodeLocation(e){const t=this.model.getNodeLocation(e);return t===null?null:t.elements[t.elements.length-1]}getParentNodeLocation(e){const t=this.getCompressedNode(e),i=this.model.getParentNodeLocation(t);return i===null?null:i.elements[i.elements.length-1]}getFirstElementChild(e){const t=this.getCompressedNode(e);return this.model.getFirstElementChild(t)}isCollapsible(e){const t=this.getCompressedNode(e);return this.model.isCollapsible(t)}setCollapsible(e,t){const i=this.getCompressedNode(e);return this.model.setCollapsible(i,t)}isCollapsed(e){const t=this.getCompressedNode(e);return this.model.isCollapsed(t)}setCollapsed(e,t,i){const n=this.getCompressedNode(e);return this.model.setCollapsed(n,t,i)}expandTo(e){const t=this.getCompressedNode(e);this.model.expandTo(t)}rerender(e){const t=this.getCompressedNode(e);this.model.rerender(t)}refilter(){this.model.refilter()}getCompressedNode(e){if(e===null)return null;const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);return t}}const hee=o=>o[o.length-1];class C2{get element(){return this.node.element===null?null:this.unwrapper(this.node.element)}get children(){return this.node.children.map(e=>new C2(this.unwrapper,e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e,t){this.unwrapper=e,this.node=t}}function uee(o,e){return{splice(t,i,n){e.splice(t,i,n.map(s=>o.map(s)))},updateElementHeight(t,i){e.updateElementHeight(t,i)}}}function fee(o,e){return{...e,identityProvider:e.identityProvider&&{getId(t){return e.identityProvider.getId(o(t))}},sorter:e.sorter&&{compare(t,i){return e.sorter.compare(t.elements[0],i.elements[0])}},filter:e.filter&&{filter(t,i){return e.filter.filter(o(t),i)}}}}class gee{get onDidSplice(){return J.map(this.model.onDidSplice,({insertedNodes:e,deletedNodes:t})=>({insertedNodes:e.map(i=>this.nodeMapper.map(i)),deletedNodes:t.map(i=>this.nodeMapper.map(i))}))}get onDidChangeCollapseState(){return J.map(this.model.onDidChangeCollapseState,({node:e,deep:t})=>({node:this.nodeMapper.map(e),deep:t}))}get onDidChangeRenderNodeCount(){return J.map(this.model.onDidChangeRenderNodeCount,e=>this.nodeMapper.map(e))}constructor(e,t,i={}){this.rootRef=null,this.elementMapper=i.elementMapper||hee;const n=s=>this.elementMapper(s.elements);this.nodeMapper=new m2(s=>new C2(n,s)),this.model=new dee(e,uee(this.nodeMapper,t),fee(n,i))}setChildren(e,t=st.empty(),i={}){this.model.setChildren(e,t,i)}isCompressionEnabled(){return this.model.isCompressionEnabled()}setCompressionEnabled(e){this.model.setCompressionEnabled(e)}has(e){return this.model.has(e)}getListIndex(e){return this.model.getListIndex(e)}getListRenderCount(e){return this.model.getListRenderCount(e)}getNode(e){return this.nodeMapper.map(this.model.getNode(e))}getNodeLocation(e){return e.element}getParentNodeLocation(e){return this.model.getParentNodeLocation(e)}getFirstElementChild(e){const t=this.model.getFirstElementChild(e);return t===null||typeof t>"u"?t:this.elementMapper(t.elements)}isCollapsible(e){return this.model.isCollapsible(e)}setCollapsible(e,t){return this.model.setCollapsible(e,t)}isCollapsed(e){return this.model.isCollapsed(e)}setCollapsed(e,t,i){return this.model.setCollapsed(e,t,i)}expandTo(e){return this.model.expandTo(e)}rerender(e){return this.model.rerender(e)}refilter(){return this.model.refilter()}getCompressedTreeNode(e=null){return this.model.getNode(e)}}var mee=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};class v2 extends T9{get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}constructor(e,t,i,n,s={}){super(e,t,i,n,s),this.user=e}setChildren(e,t=st.empty(),i){this.model.setChildren(e,t,i)}rerender(e){if(e===void 0){this.view.rerender();return}this.model.rerender(e)}hasElement(e){return this.model.has(e)}createModel(e,t,i){return new b2(e,t,i)}}class R9{get compressedTreeNodeProvider(){return this._compressedTreeNodeProvider()}constructor(e,t,i){this._compressedTreeNodeProvider=e,this.stickyScrollDelegate=t,this.renderer=i,this.templateId=i.templateId,i.onDidChangeTwistieState&&(this.onDidChangeTwistieState=i.onDidChangeTwistieState)}renderTemplate(e){return{compressedTreeNode:void 0,data:this.renderer.renderTemplate(e)}}renderElement(e,t,i,n){let s=this.stickyScrollDelegate.getCompressedNode(e);s||(s=this.compressedTreeNodeProvider.getCompressedTreeNode(e.element)),s.element.elements.length===1?(i.compressedTreeNode=void 0,this.renderer.renderElement(e,t,i.data,n)):(i.compressedTreeNode=s,this.renderer.renderCompressedElements(s,t,i.data,n))}disposeElement(e,t,i,n){i.compressedTreeNode?this.renderer.disposeCompressedElements?.(i.compressedTreeNode,t,i.data,n):this.renderer.disposeElement?.(e,t,i.data,n)}disposeTemplate(e){this.renderer.disposeTemplate(e.data)}renderTwistie(e,t){return this.renderer.renderTwistie?this.renderer.renderTwistie(e,t):!1}}mee([Jt],R9.prototype,"compressedTreeNodeProvider",null);class pee{constructor(e){this.modelProvider=e,this.compressedStickyNodes=new Map}getCompressedNode(e){return this.compressedStickyNodes.get(e)}constrainStickyScrollNodes(e,t,i){if(this.compressedStickyNodes.clear(),e.length===0)return[];for(let n=0;ni||n>=t-1&&tthis,a=new pee(()=>this.model),l=n.map(c=>new R9(r,a,c));super(e,t,i,l,{..._ee(r,s),stickyScrollDelegate:a})}setChildren(e,t=st.empty(),i){this.model.setChildren(e,t,i)}createModel(e,t,i){return new gee(e,t,i)}updateOptions(e={}){super.updateOptions(e),typeof e.compressionEnabled<"u"&&this.model.setCompressionEnabled(e.compressionEnabled)}getCompressedTreeNode(e=null){return this.model.getCompressedTreeNode(e)}}function ZS(o){return{...o,children:[],refreshPromise:void 0,stale:!0,slow:!1,forceExpanded:!1}}function HD(o,e){return e.parent?e.parent===o?!0:HD(o,e.parent):!1}function bee(o,e){return o===e||HD(o,e)||HD(e,o)}class w2{get element(){return this.node.element.element}get children(){return this.node.children.map(e=>new w2(e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e){this.node=e}}class Cee{constructor(e,t,i){this.renderer=e,this.nodeMapper=t,this.onDidChangeTwistieState=i,this.renderedNodes=new Map,this.templateId=e.templateId}renderTemplate(e){return{templateData:this.renderer.renderTemplate(e)}}renderElement(e,t,i,n){this.renderer.renderElement(this.nodeMapper.map(e),t,i.templateData,n)}renderTwistie(e,t){return e.slow?(t.classList.add(...Ee.asClassNameArray(ie.treeItemLoading)),!0):(t.classList.remove(...Ee.asClassNameArray(ie.treeItemLoading)),!1)}disposeElement(e,t,i,n){this.renderer.disposeElement?.(this.nodeMapper.map(e),t,i.templateData,n)}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}dispose(){this.renderedNodes.clear()}}function YP(o){return{browserEvent:o.browserEvent,elements:o.elements.map(e=>e.element)}}function QP(o){return{browserEvent:o.browserEvent,element:o.element&&o.element.element,target:o.target}}class vee extends J_{constructor(e){super(e.elements.map(t=>t.element)),this.data=e}}function YS(o){return o instanceof J_?new vee(o):o}class wee{constructor(e){this.dnd=e}getDragURI(e){return this.dnd.getDragURI(e.element)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map(i=>i.element),t)}onDragStart(e,t){this.dnd.onDragStart?.(YS(e),t)}onDragOver(e,t,i,n,s,r=!0){return this.dnd.onDragOver(YS(e),t&&t.element,i,n,s)}drop(e,t,i,n,s){this.dnd.drop(YS(e),t&&t.element,i,n,s)}onDragEnd(e){this.dnd.onDragEnd?.(e)}dispose(){this.dnd.dispose()}}function P9(o){return o&&{...o,collapseByDefault:!0,identityProvider:o.identityProvider&&{getId(e){return o.identityProvider.getId(e.element)}},dnd:o.dnd&&new wee(o.dnd),multipleSelectionController:o.multipleSelectionController&&{isSelectionSingleChangeEvent(e){return o.multipleSelectionController.isSelectionSingleChangeEvent({...e,element:e.element})},isSelectionRangeChangeEvent(e){return o.multipleSelectionController.isSelectionRangeChangeEvent({...e,element:e.element})}},accessibilityProvider:o.accessibilityProvider&&{...o.accessibilityProvider,getPosInSet:void 0,getSetSize:void 0,getRole:o.accessibilityProvider.getRole?e=>o.accessibilityProvider.getRole(e.element):()=>"treeitem",isChecked:o.accessibilityProvider.isChecked?e=>!!o.accessibilityProvider?.isChecked(e.element):void 0,getAriaLabel(e){return o.accessibilityProvider.getAriaLabel(e.element)},getWidgetAriaLabel(){return o.accessibilityProvider.getWidgetAriaLabel()},getWidgetRole:o.accessibilityProvider.getWidgetRole?()=>o.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:o.accessibilityProvider.getAriaLevel&&(e=>o.accessibilityProvider.getAriaLevel(e.element)),getActiveDescendantId:o.accessibilityProvider.getActiveDescendantId&&(e=>o.accessibilityProvider.getActiveDescendantId(e.element))},filter:o.filter&&{filter(e,t){return o.filter.filter(e.element,t)}},keyboardNavigationLabelProvider:o.keyboardNavigationLabelProvider&&{...o.keyboardNavigationLabelProvider,getKeyboardNavigationLabel(e){return o.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e.element)}},sorter:void 0,expandOnlyOnTwistieClick:typeof o.expandOnlyOnTwistieClick>"u"?void 0:typeof o.expandOnlyOnTwistieClick!="function"?o.expandOnlyOnTwistieClick:(e=>o.expandOnlyOnTwistieClick(e.element)),defaultFindVisibility:e=>e.hasChildren&&e.stale?1:typeof o.defaultFindVisibility=="number"?o.defaultFindVisibility:typeof o.defaultFindVisibility>"u"?2:o.defaultFindVisibility(e.element)}}function VD(o,e){e(o),o.children.forEach(t=>VD(t,e))}class O9{get onDidScroll(){return this.tree.onDidScroll}get onDidChangeFocus(){return J.map(this.tree.onDidChangeFocus,YP)}get onDidChangeSelection(){return J.map(this.tree.onDidChangeSelection,YP)}get onMouseDblClick(){return J.map(this.tree.onMouseDblClick,QP)}get onPointer(){return J.map(this.tree.onPointer,QP)}get onDidFocus(){return this.tree.onDidFocus}get onDidChangeModel(){return this.tree.onDidChangeModel}get onDidChangeCollapseState(){return this.tree.onDidChangeCollapseState}get onDidChangeFindOpenState(){return this.tree.onDidChangeFindOpenState}get onDidChangeStickyScrollFocused(){return this.tree.onDidChangeStickyScrollFocused}get onDidDispose(){return this.tree.onDidDispose}constructor(e,t,i,n,s,r={}){this.user=e,this.dataSource=s,this.nodes=new Map,this.subTreeRefreshPromises=new Map,this.refreshPromises=new Map,this._onDidRender=new A,this._onDidChangeNodeSlowState=new A,this.nodeMapper=new m2(a=>new w2(a)),this.disposables=new X,this.identityProvider=r.identityProvider,this.autoExpandSingleChildren=typeof r.autoExpandSingleChildren>"u"?!1:r.autoExpandSingleChildren,this.sorter=r.sorter,this.getDefaultCollapseState=a=>r.collapseByDefault?r.collapseByDefault(a)?ys.PreserveOrCollapsed:ys.PreserveOrExpanded:void 0,this.tree=this.createTree(e,t,i,n,r),this.onDidChangeFindMode=this.tree.onDidChangeFindMode,this.onDidChangeFindMatchType=this.tree.onDidChangeFindMatchType,this.root=ZS({element:void 0,parent:null,hasChildren:!0,defaultCollapseState:void 0}),this.identityProvider&&(this.root={...this.root,id:null}),this.nodes.set(null,this.root),this.tree.onDidChangeCollapseState(this._onDidChangeCollapseState,this,this.disposables)}createTree(e,t,i,n,s){const r=new _2(i),a=n.map(c=>new Cee(c,this.nodeMapper,this._onDidChangeNodeSlowState.event)),l=P9(s)||{};return new v2(e,t,r,a,l)}updateOptions(e={}){this.tree.updateOptions(e)}getHTMLElement(){return this.tree.getHTMLElement()}get scrollTop(){return this.tree.scrollTop}set scrollTop(e){this.tree.scrollTop=e}get scrollHeight(){return this.tree.scrollHeight}get renderHeight(){return this.tree.renderHeight}domFocus(){this.tree.domFocus()}layout(e,t){this.tree.layout(e,t)}style(e){this.tree.style(e)}getInput(){return this.root.element}async setInput(e,t){this.refreshPromises.forEach(n=>n.cancel()),this.refreshPromises.clear(),this.root.element=e;const i=t&&{viewState:t,focus:[],selection:[]};await this._updateChildren(e,!0,!1,i),i&&(this.tree.setFocus(i.focus),this.tree.setSelection(i.selection)),t&&typeof t.scrollTop=="number"&&(this.scrollTop=t.scrollTop)}async _updateChildren(e=this.root.element,t=!0,i=!1,n,s){if(typeof this.root.element>"u")throw new Ds(this.user,"Tree input not set");this.root.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event));const r=this.getDataNode(e);if(await this.refreshAndRenderNode(r,t,n,s),i)try{this.tree.rerender(r)}catch{}}rerender(e){if(e===void 0||e===this.root.element){this.tree.rerender();return}const t=this.getDataNode(e);this.tree.rerender(t)}getNode(e=this.root.element){const t=this.getDataNode(e),i=this.tree.getNode(t===this.root?null:t);return this.nodeMapper.map(i)}collapse(e,t=!1){const i=this.getDataNode(e);return this.tree.collapse(i===this.root?null:i,t)}async expand(e,t=!1){if(typeof this.root.element>"u")throw new Ds(this.user,"Tree input not set");this.root.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event));const i=this.getDataNode(e);if(this.tree.hasElement(i)&&!this.tree.isCollapsible(i)||(i.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event)),i!==this.root&&!i.refreshPromise&&!this.tree.isCollapsed(i)))return!1;const n=this.tree.expand(i===this.root?null:i,t);return i.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event)),n}setSelection(e,t){const i=e.map(n=>this.getDataNode(n));this.tree.setSelection(i,t)}getSelection(){return this.tree.getSelection().map(t=>t.element)}setFocus(e,t){const i=e.map(n=>this.getDataNode(n));this.tree.setFocus(i,t)}getFocus(){return this.tree.getFocus().map(t=>t.element)}reveal(e,t){this.tree.reveal(this.getDataNode(e),t)}getParentElement(e){const t=this.tree.getParentElement(this.getDataNode(e));return t&&t.element}getFirstElementChild(e=this.root.element){const t=this.getDataNode(e),i=this.tree.getFirstElementChild(t===this.root?null:t);return i&&i.element}getDataNode(e){const t=this.nodes.get(e===this.root.element?null:e);if(!t)throw new Ds(this.user,`Data tree node not found: ${e}`);return t}async refreshAndRenderNode(e,t,i,n){await this.refreshNode(e,t,i),!this.disposables.isDisposed&&this.render(e,i,n)}async refreshNode(e,t,i){let n;if(this.subTreeRefreshPromises.forEach((s,r)=>{!n&&bee(r,e)&&(n=s.then(()=>this.refreshNode(e,t,i)))}),n)return n;if(e!==this.root&&this.tree.getNode(e).collapsed){e.hasChildren=!!this.dataSource.hasChildren(e.element),e.stale=!0,this.setChildren(e,[],t,i);return}return this.doRefreshSubTree(e,t,i)}async doRefreshSubTree(e,t,i){let n;e.refreshPromise=new Promise(s=>n=s),this.subTreeRefreshPromises.set(e,e.refreshPromise),e.refreshPromise.finally(()=>{e.refreshPromise=void 0,this.subTreeRefreshPromises.delete(e)});try{const s=await this.doRefreshNode(e,t,i);e.stale=!1,await Wx.settled(s.map(r=>this.doRefreshSubTree(r,t,i)))}finally{n()}}async doRefreshNode(e,t,i){e.hasChildren=!!this.dataSource.hasChildren(e.element);let n;if(!e.hasChildren)n=Promise.resolve(st.empty());else{const s=this.doGetChildren(e);if(PM(s))n=Promise.resolve(s);else{const r=og(800);r.then(()=>{e.slow=!0,this._onDidChangeNodeSlowState.fire(e)},a=>null),n=s.finally(()=>r.cancel())}}try{const s=await n;return this.setChildren(e,s,t,i)}catch(s){if(e!==this.root&&this.tree.hasElement(e)&&this.tree.collapse(e),$c(s))return[];throw s}finally{e.slow&&(e.slow=!1,this._onDidChangeNodeSlowState.fire(e))}}doGetChildren(e){let t=this.refreshPromises.get(e);if(t)return t;const i=this.dataSource.getChildren(e.element);return PM(i)?this.processChildren(i):(t=wa(async()=>this.processChildren(await i)),this.refreshPromises.set(e,t),t.finally(()=>{this.refreshPromises.delete(e)}))}_onDidChangeCollapseState({node:e,deep:t}){e.element!==null&&!e.collapsed&&e.element.stale&&(t?this.collapse(e.element.element):this.refreshAndRenderNode(e.element,!1).catch(Ze))}setChildren(e,t,i,n){const s=[...t];if(e.children.length===0&&s.length===0)return[];const r=new Map,a=new Map;for(const d of e.children)r.set(d.element,d),this.identityProvider&&a.set(d.id,{node:d,collapsed:this.tree.hasElement(d)&&this.tree.isCollapsed(d)});const l=[],c=s.map(d=>{const h=!!this.dataSource.hasChildren(d);if(!this.identityProvider){const p=ZS({element:d,parent:e,hasChildren:h,defaultCollapseState:this.getDefaultCollapseState(d)});return h&&p.defaultCollapseState===ys.PreserveOrExpanded&&l.push(p),p}const u=this.identityProvider.getId(d).toString(),f=a.get(u);if(f){const p=f.node;return r.delete(p.element),this.nodes.delete(p.element),this.nodes.set(d,p),p.element=d,p.hasChildren=h,i?f.collapsed?(p.children.forEach(_=>VD(_,b=>this.nodes.delete(b.element))),p.children.splice(0,p.children.length),p.stale=!0):l.push(p):h&&!f.collapsed&&l.push(p),p}const g=ZS({element:d,parent:e,id:u,hasChildren:h,defaultCollapseState:this.getDefaultCollapseState(d)});return n&&n.viewState.focus&&n.viewState.focus.indexOf(u)>-1&&n.focus.push(g),n&&n.viewState.selection&&n.viewState.selection.indexOf(u)>-1&&n.selection.push(g),(n&&n.viewState.expanded&&n.viewState.expanded.indexOf(u)>-1||h&&g.defaultCollapseState===ys.PreserveOrExpanded)&&l.push(g),g});for(const d of r.values())VD(d,h=>this.nodes.delete(h.element));for(const d of c)this.nodes.set(d.element,d);return e.children.splice(0,e.children.length,...c),e!==this.root&&this.autoExpandSingleChildren&&c.length===1&&l.length===0&&(c[0].forceExpanded=!0,l.push(c[0])),l}render(e,t,i){const n=e.children.map(r=>this.asTreeElement(r,t)),s=i&&{...i,diffIdentityProvider:i.diffIdentityProvider&&{getId(r){return i.diffIdentityProvider.getId(r.element)}}};this.tree.setChildren(e===this.root?null:e,n,s),e!==this.root&&this.tree.setCollapsible(e,e.hasChildren),this._onDidRender.fire()}asTreeElement(e,t){if(e.stale)return{element:e,collapsible:e.hasChildren,collapsed:!0};let i;return t&&t.viewState.expanded&&e.id&&t.viewState.expanded.indexOf(e.id)>-1?i=!1:e.forceExpanded?(i=!1,e.forceExpanded=!1):i=e.defaultCollapseState,{element:e,children:e.hasChildren?st.map(e.children,n=>this.asTreeElement(n,t)):[],collapsible:e.hasChildren,collapsed:i}}processChildren(e){return this.sorter&&(e=[...e].sort(this.sorter.compare.bind(this.sorter))),e}dispose(){this.disposables.dispose(),this.tree.dispose()}}class y2{get element(){return{elements:this.node.element.elements.map(e=>e.element),incompressible:this.node.element.incompressible}}get children(){return this.node.children.map(e=>new y2(e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e){this.node=e}}class yee{constructor(e,t,i,n){this.renderer=e,this.nodeMapper=t,this.compressibleNodeMapperProvider=i,this.onDidChangeTwistieState=n,this.renderedNodes=new Map,this.disposables=[],this.templateId=e.templateId}renderTemplate(e){return{templateData:this.renderer.renderTemplate(e)}}renderElement(e,t,i,n){this.renderer.renderElement(this.nodeMapper.map(e),t,i.templateData,n)}renderCompressedElements(e,t,i,n){this.renderer.renderCompressedElements(this.compressibleNodeMapperProvider().map(e),t,i.templateData,n)}renderTwistie(e,t){return e.slow?(t.classList.add(...Ee.asClassNameArray(ie.treeItemLoading)),!0):(t.classList.remove(...Ee.asClassNameArray(ie.treeItemLoading)),!1)}disposeElement(e,t,i,n){this.renderer.disposeElement?.(this.nodeMapper.map(e),t,i.templateData,n)}disposeCompressedElements(e,t,i,n){this.renderer.disposeCompressedElements?.(this.compressibleNodeMapperProvider().map(e),t,i.templateData,n)}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}dispose(){this.renderedNodes.clear(),this.disposables=xt(this.disposables)}}function See(o){const e=o&&P9(o);return e&&{...e,keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&{...e.keyboardNavigationLabelProvider,getCompressedNodeKeyboardNavigationLabel(t){return o.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(t.map(i=>i.element))}}}}class Lee extends O9{constructor(e,t,i,n,s,r,a={}){super(e,t,i,s,r,a),this.compressionDelegate=n,this.compressibleNodeMapper=new m2(l=>new y2(l)),this.filter=a.filter}createTree(e,t,i,n,s){const r=new _2(i),a=n.map(c=>new yee(c,this.nodeMapper,()=>this.compressibleNodeMapper,this._onDidChangeNodeSlowState.event)),l=See(s)||{};return new A9(e,t,r,a,l)}asTreeElement(e,t){return{incompressible:this.compressionDelegate.isIncompressible(e.element),...super.asTreeElement(e,t)}}updateOptions(e={}){this.tree.updateOptions(e)}render(e,t,i){if(!this.identityProvider)return super.render(e,t);const n=f=>this.identityProvider.getId(f).toString(),s=f=>{const g=new Set;for(const p of f){const _=this.tree.getCompressedTreeNode(p===this.root?null:p);if(_.element)for(const b of _.element.elements)g.add(n(b.element))}return g},r=s(this.tree.getSelection()),a=s(this.tree.getFocus());super.render(e,t,i);const l=this.getSelection();let c=!1;const d=this.getFocus();let h=!1;const u=f=>{const g=f.element;if(g)for(let p=0;p{const i=this.filter.filter(t,1),n=xee(i);if(n===2)throw new Error("Recursive tree visibility not supported in async data compressed trees");return n===1})),super.processChildren(e)}}function xee(o){return typeof o=="boolean"?o?1:0:p2(o)?p_(o.visibility):p_(o)}class kee extends T9{constructor(e,t,i,n,s,r={}){super(e,t,i,n,r),this.user=e,this.dataSource=s,this.identityProvider=r.identityProvider}createModel(e,t,i){return new b2(e,t,i)}}new le("isMac",Ue,m("isMac","Whether the operating system is macOS"));new le("isLinux",Un,m("isLinux","Whether the operating system is Linux"));new le("isWindows",kn,m("isWindows","Whether the operating system is Windows"));const F9=new le("isWeb",Og,m("isWeb","Whether the platform is a web browser"));new le("isMacNative",Ue&&!Og,m("isMacNative","Whether the operating system is macOS on a non-browser platform"));new le("isIOS",Tc,m("isIOS","Whether the operating system is iOS"));new le("isMobile",V5,m("isMobile","Whether the platform is a mobile web browser"));new le("isDevelopment",!1,!0);new le("productQualityType","",m("productQualityType","Quality type of VS Code"));const B9="inputFocus",W9=new le(B9,!1,m("inputFocus","Whether keyboard focus is inside an input box"));var Rl=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Dt=function(o,e){return function(t,i){e(t,i,o)}};const mo=He("listService");class Dee{get lastFocusedList(){return this._lastFocusedWidget}constructor(){this.disposables=new X,this.lists=[],this._lastFocusedWidget=void 0,this._hasCreatedStyleController=!1}setLastFocusedList(e){e!==this._lastFocusedWidget&&(this._lastFocusedWidget?.getHTMLElement().classList.remove("last-focused"),this._lastFocusedWidget=e,this._lastFocusedWidget?.getHTMLElement().classList.add("last-focused"))}register(e,t){if(this._hasCreatedStyleController||(this._hasCreatedStyleController=!0,new A7(Vs(),"").style(hu)),this.lists.some(n=>n.widget===e))throw new Error("Cannot register the same widget multiple times");const i={widget:e,extraContextKeys:t};return this.lists.push(i),M0(e.getHTMLElement())&&this.setLastFocusedList(e),No(e.onDidFocus(()=>this.setLastFocusedList(e)),_e(()=>this.lists.splice(this.lists.indexOf(i),1)),e.onDidDispose(()=>{this.lists=this.lists.filter(n=>n!==i),this._lastFocusedWidget===e&&this.setLastFocusedList(void 0)}))}dispose(){this.disposables.dispose()}}const __=new le("listScrollAtBoundary","none");re.or(__.isEqualTo("top"),__.isEqualTo("both"));re.or(__.isEqualTo("bottom"),__.isEqualTo("both"));const H9=new le("listFocus",!0),V9=new le("treestickyScrollFocused",!1),gy=new le("listSupportsMultiselect",!0),z9=re.and(H9,re.not(B9),V9.negate()),S2=new le("listHasSelectionOrFocus",!1),L2=new le("listDoubleSelection",!1),x2=new le("listMultiSelection",!1),my=new le("listSelectionNavigation",!1),Iee=new le("listSupportsFind",!0),k2=new le("treeElementCanCollapse",!1),Eee=new le("treeElementHasParent",!1),D2=new le("treeElementCanExpand",!1),Nee=new le("treeElementHasChild",!1),Tee=new le("treeFindOpen",!1),U9="listTypeNavigationMode",$9="listAutomaticKeyboardNavigation";function py(o,e){const t=o.createScoped(e.getHTMLElement());return H9.bindTo(t),t}function _y(o,e){const t=__.bindTo(o),i=()=>{const n=e.scrollTop===0,s=e.scrollHeight-e.renderHeight-e.scrollTop<1;n&&s?t.set("both"):n?t.set("top"):s?t.set("bottom"):t.set("none")};return i(),e.onDidScroll(i)}const uu="workbench.list.multiSelectModifier",V1="workbench.list.openMode",ao="workbench.list.horizontalScrolling",I2="workbench.list.defaultFindMode",E2="workbench.list.typeNavigationMode",cv="workbench.list.keyboardNavigation",br="workbench.list.scrollByPage",N2="workbench.list.defaultFindMatchType",b_="workbench.tree.indent",dv="workbench.tree.renderIndentGuides",Cr="workbench.list.smoothScrolling",_a="workbench.list.mouseWheelScrollSensitivity",ba="workbench.list.fastScrollSensitivity",hv="workbench.tree.expandMode",uv="workbench.tree.enableStickyScroll",fv="workbench.tree.stickyScrollMaxItemCount";function Ca(o){return o.getValue(uu)==="alt"}class Mee extends z{constructor(e){super(),this.configurationService=e,this.useAltAsMultipleSelectionModifier=Ca(e),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(e=>{e.affectsConfiguration(uu)&&(this.useAltAsMultipleSelectionModifier=Ca(this.configurationService))}))}isSelectionSingleChangeEvent(e){return this.useAltAsMultipleSelectionModifier?e.browserEvent.altKey:T7(e)}isSelectionRangeChangeEvent(e){return M7(e)}}function by(o,e){const t=o.get(lt),i=o.get(vt),n=new X;return[{...e,keyboardNavigationDelegate:{mightProducePrintableCharacter(r){return i.mightProducePrintableCharacter(r)}},smoothScrolling:!!t.getValue(Cr),mouseWheelScrollSensitivity:t.getValue(_a),fastScrollSensitivity:t.getValue(ba),multipleSelectionController:e.multipleSelectionController??n.add(new Mee(t)),keyboardNavigationEventFilter:Pee(i),scrollByPage:!!t.getValue(br)},n]}let XP=class extends go{constructor(e,t,i,n,s,r,a,l,c){const d=typeof s.horizontalScrolling<"u"?s.horizontalScrolling:!!l.getValue(ao),[h,u]=c.invokeFunction(by,s);super(e,t,i,n,{keyboardSupport:!1,...h,horizontalScrolling:d}),this.disposables.add(u),this.contextKeyService=py(r,this),this.disposables.add(_y(this.contextKeyService,this)),this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(s.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!s.selectionNavigation),this.listHasSelectionOrFocus=S2.bindTo(this.contextKeyService),this.listDoubleSelection=L2.bindTo(this.contextKeyService),this.listMultiSelection=x2.bindTo(this.contextKeyService),this.horizontalScrolling=s.horizontalScrolling,this._useAltAsMultipleSelectionModifier=Ca(l),this.disposables.add(this.contextKeyService),this.disposables.add(a.register(this)),this.updateStyles(s.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{const g=this.getSelection(),p=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(g.length>0||p.length>0),this.listMultiSelection.set(g.length>1),this.listDoubleSelection.set(g.length===2)})})),this.disposables.add(this.onDidChangeFocus(()=>{const g=this.getSelection(),p=this.getFocus();this.listHasSelectionOrFocus.set(g.length>0||p.length>0)})),this.disposables.add(l.onDidChangeConfiguration(g=>{g.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(l));let p={};if(g.affectsConfiguration(ao)&&this.horizontalScrolling===void 0){const _=!!l.getValue(ao);p={...p,horizontalScrolling:_}}if(g.affectsConfiguration(br)){const _=!!l.getValue(br);p={...p,scrollByPage:_}}if(g.affectsConfiguration(Cr)){const _=!!l.getValue(Cr);p={...p,smoothScrolling:_}}if(g.affectsConfiguration(_a)){const _=l.getValue(_a);p={...p,mouseWheelScrollSensitivity:_}}if(g.affectsConfiguration(ba)){const _=l.getValue(ba);p={...p,fastScrollSensitivity:_}}Object.keys(p).length>0&&this.updateOptions(p)})),this.navigator=new K9(this,{configurationService:l,...s}),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?$g(e):hu)}};XP=Rl([Dt(5,De),Dt(6,mo),Dt(7,lt),Dt(8,ke)],XP);let JP=class extends FJ{constructor(e,t,i,n,s,r,a,l,c){const d=typeof s.horizontalScrolling<"u"?s.horizontalScrolling:!!l.getValue(ao),[h,u]=c.invokeFunction(by,s);super(e,t,i,n,{keyboardSupport:!1,...h,horizontalScrolling:d}),this.disposables=new X,this.disposables.add(u),this.contextKeyService=py(r,this),this.disposables.add(_y(this.contextKeyService,this.widget)),this.horizontalScrolling=s.horizontalScrolling,this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(s.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!s.selectionNavigation),this._useAltAsMultipleSelectionModifier=Ca(l),this.disposables.add(this.contextKeyService),this.disposables.add(a.register(this)),this.updateStyles(s.overrideStyles),this.disposables.add(l.onDidChangeConfiguration(g=>{g.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(l));let p={};if(g.affectsConfiguration(ao)&&this.horizontalScrolling===void 0){const _=!!l.getValue(ao);p={...p,horizontalScrolling:_}}if(g.affectsConfiguration(br)){const _=!!l.getValue(br);p={...p,scrollByPage:_}}if(g.affectsConfiguration(Cr)){const _=!!l.getValue(Cr);p={...p,smoothScrolling:_}}if(g.affectsConfiguration(_a)){const _=l.getValue(_a);p={...p,mouseWheelScrollSensitivity:_}}if(g.affectsConfiguration(ba)){const _=l.getValue(ba);p={...p,fastScrollSensitivity:_}}Object.keys(p).length>0&&this.updateOptions(p)})),this.navigator=new K9(this,{configurationService:l,...s}),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?$g(e):hu)}dispose(){this.disposables.dispose(),super.dispose()}};JP=Rl([Dt(5,De),Dt(6,mo),Dt(7,lt),Dt(8,ke)],JP);let eO=class extends FD{constructor(e,t,i,n,s,r,a,l,c,d){const h=typeof r.horizontalScrolling<"u"?r.horizontalScrolling:!!c.getValue(ao),[u,f]=d.invokeFunction(by,r);super(e,t,i,n,s,{keyboardSupport:!1,...u,horizontalScrolling:h}),this.disposables.add(f),this.contextKeyService=py(a,this),this.disposables.add(_y(this.contextKeyService,this)),this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(r.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!r.selectionNavigation),this.listHasSelectionOrFocus=S2.bindTo(this.contextKeyService),this.listDoubleSelection=L2.bindTo(this.contextKeyService),this.listMultiSelection=x2.bindTo(this.contextKeyService),this.horizontalScrolling=r.horizontalScrolling,this._useAltAsMultipleSelectionModifier=Ca(c),this.disposables.add(this.contextKeyService),this.disposables.add(l.register(this)),this.updateStyles(r.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{const p=this.getSelection(),_=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(p.length>0||_.length>0),this.listMultiSelection.set(p.length>1),this.listDoubleSelection.set(p.length===2)})})),this.disposables.add(this.onDidChangeFocus(()=>{const p=this.getSelection(),_=this.getFocus();this.listHasSelectionOrFocus.set(p.length>0||_.length>0)})),this.disposables.add(c.onDidChangeConfiguration(p=>{p.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(c));let _={};if(p.affectsConfiguration(ao)&&this.horizontalScrolling===void 0){const b=!!c.getValue(ao);_={..._,horizontalScrolling:b}}if(p.affectsConfiguration(br)){const b=!!c.getValue(br);_={..._,scrollByPage:b}}if(p.affectsConfiguration(Cr)){const b=!!c.getValue(Cr);_={..._,smoothScrolling:b}}if(p.affectsConfiguration(_a)){const b=c.getValue(_a);_={..._,mouseWheelScrollSensitivity:b}}if(p.affectsConfiguration(ba)){const b=c.getValue(ba);_={..._,fastScrollSensitivity:b}}Object.keys(_).length>0&&this.updateOptions(_)})),this.navigator=new Ree(this,{configurationService:c,...r}),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?$g(e):hu)}dispose(){this.disposables.dispose(),super.dispose()}};eO=Rl([Dt(6,De),Dt(7,mo),Dt(8,lt),Dt(9,ke)],eO);class T2 extends z{constructor(e,t){super(),this.widget=e,this._onDidOpen=this._register(new A),this.onDidOpen=this._onDidOpen.event,this._register(J.filter(this.widget.onDidChangeSelection,i=>Qa(i.browserEvent))(i=>this.onSelectionFromKeyboard(i))),this._register(this.widget.onPointer(i=>this.onPointer(i.element,i.browserEvent))),this._register(this.widget.onMouseDblClick(i=>this.onMouseDblClick(i.element,i.browserEvent))),typeof t?.openOnSingleClick!="boolean"&&t?.configurationService?(this.openOnSingleClick=t?.configurationService.getValue(V1)!=="doubleClick",this._register(t?.configurationService.onDidChangeConfiguration(i=>{i.affectsConfiguration(V1)&&(this.openOnSingleClick=t?.configurationService.getValue(V1)!=="doubleClick")}))):this.openOnSingleClick=t?.openOnSingleClick??!0}onSelectionFromKeyboard(e){if(e.elements.length!==1)return;const t=e.browserEvent,i=typeof t.preserveFocus=="boolean"?t.preserveFocus:!0,n=typeof t.pinned=="boolean"?t.pinned:!i;this._open(this.getSelectedElement(),i,n,!1,e.browserEvent)}onPointer(e,t){if(!this.openOnSingleClick||t.detail===2)return;const n=t.button===1,s=!0,r=n,a=t.ctrlKey||t.metaKey||t.altKey;this._open(e,s,r,a,t)}onMouseDblClick(e,t){if(!t)return;const i=t.target;if(i.classList.contains("monaco-tl-twistie")||i.classList.contains("monaco-icon-label")&&i.classList.contains("folder-icon")&&t.offsetX<16)return;const s=!1,r=!0,a=t.ctrlKey||t.metaKey||t.altKey;this._open(e,s,r,a,t)}_open(e,t,i,n,s){e&&this._onDidOpen.fire({editorOptions:{preserveFocus:t,pinned:i,revealIfVisible:!0},sideBySide:n,element:e,browserEvent:s})}}class K9 extends T2{constructor(e,t){super(e,t),this.widget=e}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class Ree extends T2{constructor(e,t){super(e,t)}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class Aee extends T2{constructor(e,t){super(e,t)}getSelectedElement(){return this.widget.getSelection()[0]??void 0}}function Pee(o){let e=!1;return t=>{if(t.toKeyCodeChord().isModifierKey())return!1;if(e)return e=!1,!1;const i=o.softDispatch(t,t.target);return i.kind===1?(e=!0,!1):(e=!1,i.kind===0)}}let zD=class extends v2{constructor(e,t,i,n,s,r,a,l,c){const{options:d,getTypeNavigationMode:h,disposable:u}=r.invokeFunction(sb,s);super(e,t,i,n,d),this.disposables.add(u),this.internals=new $h(this,s,h,s.overrideStyles,a,l,c),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};zD=Rl([Dt(5,ke),Dt(6,De),Dt(7,mo),Dt(8,lt)],zD);let tO=class extends A9{constructor(e,t,i,n,s,r,a,l,c){const{options:d,getTypeNavigationMode:h,disposable:u}=r.invokeFunction(sb,s);super(e,t,i,n,d),this.disposables.add(u),this.internals=new $h(this,s,h,s.overrideStyles,a,l,c),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};tO=Rl([Dt(5,ke),Dt(6,De),Dt(7,mo),Dt(8,lt)],tO);let iO=class extends kee{constructor(e,t,i,n,s,r,a,l,c,d){const{options:h,getTypeNavigationMode:u,disposable:f}=a.invokeFunction(sb,r);super(e,t,i,n,s,h),this.disposables.add(f),this.internals=new $h(this,r,u,r.overrideStyles,l,c,d),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles!==void 0&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};iO=Rl([Dt(6,ke),Dt(7,De),Dt(8,mo),Dt(9,lt)],iO);let UD=class extends O9{get onDidOpen(){return this.internals.onDidOpen}constructor(e,t,i,n,s,r,a,l,c,d){const{options:h,getTypeNavigationMode:u,disposable:f}=a.invokeFunction(sb,r);super(e,t,i,n,s,h),this.disposables.add(f),this.internals=new $h(this,r,u,r.overrideStyles,l,c,d),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};UD=Rl([Dt(6,ke),Dt(7,De),Dt(8,mo),Dt(9,lt)],UD);let nO=class extends Lee{constructor(e,t,i,n,s,r,a,l,c,d,h){const{options:u,getTypeNavigationMode:f,disposable:g}=l.invokeFunction(sb,a);super(e,t,i,n,s,r,u),this.disposables.add(g),this.internals=new $h(this,a,f,a.overrideStyles,c,d,h),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};nO=Rl([Dt(7,ke),Dt(8,De),Dt(9,mo),Dt(10,lt)],nO);function j9(o){const e=o.getValue(I2);if(e==="highlight")return dl.Highlight;if(e==="filter")return dl.Filter;const t=o.getValue(cv);if(t==="simple"||t==="highlight")return dl.Highlight;if(t==="filter")return dl.Filter}function q9(o){const e=o.getValue(N2);if(e==="fuzzy")return Uh.Fuzzy;if(e==="contiguous")return Uh.Contiguous}function sb(o,e){const t=o.get(lt),i=o.get(lu),n=o.get(De),s=o.get(ke),r=()=>{const u=n.getContextKeyValue(U9);if(u==="automatic")return Qr.Automatic;if(u==="trigger"||n.getContextKeyValue($9)===!1)return Qr.Trigger;const g=t.getValue(E2);if(g==="automatic")return Qr.Automatic;if(g==="trigger")return Qr.Trigger},a=e.horizontalScrolling!==void 0?e.horizontalScrolling:!!t.getValue(ao),[l,c]=s.invokeFunction(by,e),d=e.paddingBottom,h=e.renderIndentGuides!==void 0?e.renderIndentGuides:t.getValue(dv);return{getTypeNavigationMode:r,disposable:c,options:{keyboardSupport:!1,...l,indent:typeof t.getValue(b_)=="number"?t.getValue(b_):void 0,renderIndentGuides:h,smoothScrolling:!!t.getValue(Cr),defaultFindMode:j9(t),defaultFindMatchType:q9(t),horizontalScrolling:a,scrollByPage:!!t.getValue(br),paddingBottom:d,hideTwistiesOfChildlessElements:e.hideTwistiesOfChildlessElements,expandOnlyOnTwistieClick:e.expandOnlyOnTwistieClick??t.getValue(hv)==="doubleClick",contextViewProvider:i,findWidgetStyles:FY,enableStickyScroll:!!t.getValue(uv),stickyScrollMaxItemCount:Number(t.getValue(fv))}}}let $h=class{get onDidOpen(){return this.navigator.onDidOpen}constructor(e,t,i,n,s,r,a){this.tree=e,this.disposables=[],this.contextKeyService=py(s,e),this.disposables.push(_y(this.contextKeyService,e)),this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(t.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!t.selectionNavigation),this.listSupportFindWidget=Iee.bindTo(this.contextKeyService),this.listSupportFindWidget.set(t.findWidgetEnabled??!0),this.hasSelectionOrFocus=S2.bindTo(this.contextKeyService),this.hasDoubleSelection=L2.bindTo(this.contextKeyService),this.hasMultiSelection=x2.bindTo(this.contextKeyService),this.treeElementCanCollapse=k2.bindTo(this.contextKeyService),this.treeElementHasParent=Eee.bindTo(this.contextKeyService),this.treeElementCanExpand=D2.bindTo(this.contextKeyService),this.treeElementHasChild=Nee.bindTo(this.contextKeyService),this.treeFindOpen=Tee.bindTo(this.contextKeyService),this.treeStickyScrollFocused=V9.bindTo(this.contextKeyService),this._useAltAsMultipleSelectionModifier=Ca(a),this.updateStyleOverrides(n);const c=()=>{const h=e.getFocus()[0];if(!h)return;const u=e.getNode(h);this.treeElementCanCollapse.set(u.collapsible&&!u.collapsed),this.treeElementHasParent.set(!!e.getParentElement(h)),this.treeElementCanExpand.set(u.collapsible&&u.collapsed),this.treeElementHasChild.set(!!e.getFirstElementChild(h))},d=new Set;d.add(U9),d.add($9),this.disposables.push(this.contextKeyService,r.register(e),e.onDidChangeSelection(()=>{const h=e.getSelection(),u=e.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.hasSelectionOrFocus.set(h.length>0||u.length>0),this.hasMultiSelection.set(h.length>1),this.hasDoubleSelection.set(h.length===2)})}),e.onDidChangeFocus(()=>{const h=e.getSelection(),u=e.getFocus();this.hasSelectionOrFocus.set(h.length>0||u.length>0),c()}),e.onDidChangeCollapseState(c),e.onDidChangeModel(c),e.onDidChangeFindOpenState(h=>this.treeFindOpen.set(h)),e.onDidChangeStickyScrollFocused(h=>this.treeStickyScrollFocused.set(h)),a.onDidChangeConfiguration(h=>{let u={};if(h.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(a)),h.affectsConfiguration(b_)){const f=a.getValue(b_);u={...u,indent:f}}if(h.affectsConfiguration(dv)&&t.renderIndentGuides===void 0){const f=a.getValue(dv);u={...u,renderIndentGuides:f}}if(h.affectsConfiguration(Cr)){const f=!!a.getValue(Cr);u={...u,smoothScrolling:f}}if(h.affectsConfiguration(I2)||h.affectsConfiguration(cv)){const f=j9(a);u={...u,defaultFindMode:f}}if(h.affectsConfiguration(E2)||h.affectsConfiguration(cv)){const f=i();u={...u,typeNavigationMode:f}}if(h.affectsConfiguration(N2)){const f=q9(a);u={...u,defaultFindMatchType:f}}if(h.affectsConfiguration(ao)&&t.horizontalScrolling===void 0){const f=!!a.getValue(ao);u={...u,horizontalScrolling:f}}if(h.affectsConfiguration(br)){const f=!!a.getValue(br);u={...u,scrollByPage:f}}if(h.affectsConfiguration(hv)&&t.expandOnlyOnTwistieClick===void 0&&(u={...u,expandOnlyOnTwistieClick:a.getValue(hv)==="doubleClick"}),h.affectsConfiguration(uv)){const f=a.getValue(uv);u={...u,enableStickyScroll:f}}if(h.affectsConfiguration(fv)){const f=Math.max(1,a.getValue(fv));u={...u,stickyScrollMaxItemCount:f}}if(h.affectsConfiguration(_a)){const f=a.getValue(_a);u={...u,mouseWheelScrollSensitivity:f}}if(h.affectsConfiguration(ba)){const f=a.getValue(ba);u={...u,fastScrollSensitivity:f}}Object.keys(u).length>0&&e.updateOptions(u)}),this.contextKeyService.onDidChangeContext(h=>{h.affectsSome(d)&&e.updateOptions({typeNavigationMode:i()})})),this.navigator=new Aee(e,{configurationService:a,...t}),this.disposables.push(this.navigator)}updateOptions(e){e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyleOverrides(e){this.tree.style(e?$g(e):hu)}dispose(){this.disposables=xt(this.disposables)}};$h=Rl([Dt(4,De),Dt(5,mo),Dt(6,lt)],$h);const Oee=Bi.as(su.Configuration);Oee.registerConfiguration({id:"workbench",order:7,title:m("workbenchConfigurationTitle","Workbench"),type:"object",properties:{[uu]:{type:"string",enum:["ctrlCmd","alt"],markdownEnumDescriptions:[m("multiSelectModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),m("multiSelectModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],default:"ctrlCmd",description:m({key:"multiSelectModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add an item in trees and lists to a multi-selection with the mouse (for example in the explorer, open editors and scm view). The 'Open to Side' mouse gestures - if supported - will adapt such that they do not conflict with the multiselect modifier.")},[V1]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:m({key:"openModeModifier",comment:["`singleClick` and `doubleClick` refers to a value the setting can take and should not be localized."]},"Controls how to open items in trees and lists using the mouse (if supported). Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[ao]:{type:"boolean",default:!1,description:m("horizontalScrolling setting","Controls whether lists and trees support horizontal scrolling in the workbench. Warning: turning on this setting has a performance implication.")},[br]:{type:"boolean",default:!1,description:m("list.scrollByPage","Controls whether clicks in the scrollbar scroll page by page.")},[b_]:{type:"number",default:8,minimum:4,maximum:40,description:m("tree indent setting","Controls tree indentation in pixels.")},[dv]:{type:"string",enum:["none","onHover","always"],default:"onHover",description:m("render tree indent guides","Controls whether the tree should render indent guides.")},[Cr]:{type:"boolean",default:!1,description:m("list smoothScrolling setting","Controls whether lists and trees have smooth scrolling.")},[_a]:{type:"number",default:1,markdownDescription:m("Mouse Wheel Scroll Sensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")},[ba]:{type:"number",default:5,markdownDescription:m("Fast Scroll Sensitivity","Scrolling speed multiplier when pressing `Alt`.")},[I2]:{type:"string",enum:["highlight","filter"],enumDescriptions:[m("defaultFindModeSettingKey.highlight","Highlight elements when searching. Further up and down navigation will traverse only the highlighted elements."),m("defaultFindModeSettingKey.filter","Filter elements when searching.")],default:"highlight",description:m("defaultFindModeSettingKey","Controls the default find mode for lists and trees in the workbench.")},[cv]:{type:"string",enum:["simple","highlight","filter"],enumDescriptions:[m("keyboardNavigationSettingKey.simple","Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes."),m("keyboardNavigationSettingKey.highlight","Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements."),m("keyboardNavigationSettingKey.filter","Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.")],default:"highlight",description:m("keyboardNavigationSettingKey","Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter."),deprecated:!0,deprecationMessage:m("keyboardNavigationSettingKeyDeprecated","Please use 'workbench.list.defaultFindMode' and 'workbench.list.typeNavigationMode' instead.")},[N2]:{type:"string",enum:["fuzzy","contiguous"],enumDescriptions:[m("defaultFindMatchTypeSettingKey.fuzzy","Use fuzzy matching when searching."),m("defaultFindMatchTypeSettingKey.contiguous","Use contiguous matching when searching.")],default:"fuzzy",description:m("defaultFindMatchTypeSettingKey","Controls the type of matching used when searching lists and trees in the workbench.")},[hv]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:m("expand mode","Controls how tree folders are expanded when clicking the folder names. Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[uv]:{type:"boolean",default:!0,description:m("sticky scroll","Controls whether sticky scrolling is enabled in trees.")},[fv]:{type:"number",minimum:1,default:7,markdownDescription:m("sticky scroll maximum items","Controls the number of sticky elements displayed in the tree when {0} is enabled.","`#workbench.tree.enableStickyScroll#`")},[E2]:{type:"string",enum:["automatic","trigger"],default:"automatic",markdownDescription:m("typeNavigationMode2","Controls how type navigation works in lists and trees in the workbench. When set to `trigger`, type navigation begins once the `list.triggerTypeNavigation` command is run.")}}});class _c extends z{constructor(e,t){super(),this.options=t,this.text="",this.title="",this.highlights=[],this.didEverRender=!1,this.supportIcons=t?.supportIcons??!1,this.domNode=Z(e,ce("span.monaco-highlighted-label"))}get element(){return this.domNode}set(e,t=[],i="",n){e||(e=""),n&&(e=_c.escapeNewLines(e,t)),!(this.didEverRender&&this.text===e&&this.title===i&&as(this.highlights,t))&&(this.text=e,this.title=i,this.highlights=t,this.render())}render(){const e=[];let t=0;for(const i of this.highlights){if(i.end===i.start)continue;if(t{n=s===`\r -`?-1:0,r+=i;for(const a of t)a.end<=r||(a.start>=r&&(a.start+=n),a.end>=r&&(a.end+=n));return i+=n,"⏎"})}}class Cm{constructor(e){this._element=e}get element(){return this._element}set textContent(e){this.disposed||e===this._textContent||(this._textContent=e,this._element.textContent=e)}set classNames(e){this.disposed||as(e,this._classNames)||(this._classNames=e,this._element.classList.value="",this._element.classList.add(...e))}set empty(e){this.disposed||e===this._empty||(this._empty=e,this._element.style.marginLeft=e?"0":"")}dispose(){this.disposed=!0}}class gv extends z{constructor(e,t){super(),this.customHovers=new Map,this.creationOptions=t,this.domNode=this._register(new Cm(Z(e,ce(".monaco-icon-label")))),this.labelContainer=Z(this.domNode.element,ce(".monaco-icon-label-container")),this.nameContainer=Z(this.labelContainer,ce("span.monaco-icon-name-container")),t?.supportHighlights||t?.supportIcons?this.nameNode=this._register(new Wee(this.nameContainer,!!t.supportIcons)):this.nameNode=new Fee(this.nameContainer),this.hoverDelegate=t?.hoverDelegate??Ks("mouse")}get element(){return this.domNode.element}setLabel(e,t,i){const n=["monaco-icon-label"],s=["monaco-icon-label-container"];let r="";i&&(i.extraClasses&&n.push(...i.extraClasses),i.italic&&n.push("italic"),i.strikethrough&&n.push("strikethrough"),i.disabledCommand&&s.push("disabled"),i.title&&(typeof i.title=="string"?r+=i.title:r+=e));const a=this.domNode.element.querySelector(".monaco-icon-label-iconpath");if(i?.iconPath){let l;!a||!Ei(a)?(l=ce(".monaco-icon-label-iconpath"),this.domNode.element.prepend(l)):l=a,l.style.backgroundImage=Dl(i?.iconPath)}else a&&a.remove();if(this.domNode.classNames=n,this.domNode.element.setAttribute("aria-label",r),this.labelContainer.classList.value="",this.labelContainer.classList.add(...s),this.setupHover(i?.descriptionTitle?this.labelContainer:this.element,i?.title),this.nameNode.setLabel(e,i),t||this.descriptionNode){const l=this.getOrCreateDescriptionNode();l instanceof _c?(l.set(t||"",i?i.descriptionMatches:void 0,void 0,i?.labelEscapeNewLines),this.setupHover(l.element,i?.descriptionTitle)):(l.textContent=t&&i?.labelEscapeNewLines?_c.escapeNewLines(t,[]):t||"",this.setupHover(l.element,i?.descriptionTitle||""),l.empty=!t)}if(i?.suffix||this.suffixNode){const l=this.getOrCreateSuffixNode();l.textContent=i?.suffix??""}}setupHover(e,t){const i=this.customHovers.get(e);if(i&&(i.dispose(),this.customHovers.delete(e)),!t){e.removeAttribute("title");return}if(this.hoverDelegate.showNativeHover)(function(s,r){Os(r)?s.title=f7(r):r?.markdownNotSupportedFallback?s.title=r.markdownNotSupportedFallback:s.removeAttribute("title")})(e,t);else{const n=La().setupManagedHover(this.hoverDelegate,e,t);n&&this.customHovers.set(e,n)}}dispose(){super.dispose();for(const e of this.customHovers.values())e.dispose();this.customHovers.clear()}getOrCreateSuffixNode(){if(!this.suffixNode){const e=this._register(new Cm(NV(this.nameContainer,ce("span.monaco-icon-suffix-container"))));this.suffixNode=this._register(new Cm(Z(e.element,ce("span.label-suffix"))))}return this.suffixNode}getOrCreateDescriptionNode(){if(!this.descriptionNode){const e=this._register(new Cm(Z(this.labelContainer,ce("span.monaco-icon-description-container"))));this.creationOptions?.supportDescriptionHighlights?this.descriptionNode=this._register(new _c(Z(e.element,ce("span.label-description")),{supportIcons:!!this.creationOptions.supportIcons})):this.descriptionNode=this._register(new Cm(Z(e.element,ce("span.label-description"))))}return this.descriptionNode}}class Fee{constructor(e){this.container=e,this.label=void 0,this.singleLabel=void 0}setLabel(e,t){if(!(this.label===e&&as(this.options,t)))if(this.label=e,this.options=t,typeof e=="string")this.singleLabel||(this.container.innerText="",this.container.classList.remove("multiple"),this.singleLabel=Z(this.container,ce("a.label-name",{id:t?.domId}))),this.singleLabel.textContent=e;else{this.container.innerText="",this.container.classList.add("multiple"),this.singleLabel=void 0;for(let i=0;i{const s={start:i,end:i+n.length},r=t.map(a=>Yi.intersect(s,a)).filter(a=>!Yi.isEmpty(a)).map(({start:a,end:l})=>({start:a-i,end:l-i}));return i=s.end+e.length,r})}class Wee extends z{constructor(e,t){super(),this.container=e,this.supportIcons=t,this.label=void 0,this.singleLabel=void 0}setLabel(e,t){if(!(this.label===e&&as(this.options,t)))if(this.label=e,this.options=t,typeof e=="string")this.singleLabel||(this.container.innerText="",this.container.classList.remove("multiple"),this.singleLabel=this._register(new _c(Z(this.container,ce("a.label-name",{id:t?.domId})),{supportIcons:this.supportIcons}))),this.singleLabel.set(e,t?.matches,void 0,t?.labelEscapeNewLines);else{this.container.innerText="",this.container.classList.add("multiple"),this.singleLabel=void 0;const i=t?.separator||"/",n=Bee(e,i,t?.matches);for(let s=0;s{const o=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});return{collator:o,collatorIsNumeric:o.resolvedOptions().numeric}});function Vee(o,e,t=!1){const i=o||"",n=e||"",s=sO.value.collator.compare(i,n);return sO.value.collatorIsNumeric&&s===0&&i!==n?in.length)return 1}return 0}var Cy=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},$D=function(o,e){return function(t,i){e(t,i,o)}},KD;const qo=ce;class G9{constructor(e,t,i){this.index=e,this.hasCheckbox=t,this._hidden=!1,this._init=new ua(()=>{const n=i.label??"",s=Tm(n).text.trim(),r=i.ariaLabel||[n,this.saneDescription,this.saneDetail].map(a=>qq(a)).filter(a=>!!a).join(", ");return{saneLabel:n,saneSortLabel:s,saneAriaLabel:r}}),this._saneDescription=i.description,this._saneTooltip=i.tooltip}get saneLabel(){return this._init.value.saneLabel}get saneSortLabel(){return this._init.value.saneSortLabel}get saneAriaLabel(){return this._init.value.saneAriaLabel}get element(){return this._element}set element(e){this._element=e}get hidden(){return this._hidden}set hidden(e){this._hidden=e}get saneDescription(){return this._saneDescription}set saneDescription(e){this._saneDescription=e}get saneDetail(){return this._saneDetail}set saneDetail(e){this._saneDetail=e}get saneTooltip(){return this._saneTooltip}set saneTooltip(e){this._saneTooltip=e}get labelHighlights(){return this._labelHighlights}set labelHighlights(e){this._labelHighlights=e}get descriptionHighlights(){return this._descriptionHighlights}set descriptionHighlights(e){this._descriptionHighlights=e}get detailHighlights(){return this._detailHighlights}set detailHighlights(e){this._detailHighlights=e}}class zi extends G9{constructor(e,t,i,n,s,r){super(e,t,s),this.fireButtonTriggered=i,this._onChecked=n,this.item=s,this._separator=r,this._checked=!1,this.onChecked=t?J.map(J.filter(this._onChecked.event,a=>a.element===this),a=>a.checked):J.None,this._saneDetail=s.detail,this._labelHighlights=s.highlights?.label,this._descriptionHighlights=s.highlights?.description,this._detailHighlights=s.highlights?.detail}get separator(){return this._separator}set separator(e){this._separator=e}get checked(){return this._checked}set checked(e){e!==this._checked&&(this._checked=e,this._onChecked.fire({element:this,checked:e}))}get checkboxDisabled(){return!!this.item.disabled}}var qr;(function(o){o[o.NONE=0]="NONE",o[o.MOUSE_HOVER=1]="MOUSE_HOVER",o[o.ACTIVE_ITEM=2]="ACTIVE_ITEM"})(qr||(qr={}));class fd extends G9{constructor(e,t,i){super(e,!1,i),this.fireSeparatorButtonTriggered=t,this.separator=i,this.children=new Array,this.focusInsideSeparator=qr.NONE}}class $ee{getHeight(e){return e instanceof fd?30:e.saneDetail?44:22}getTemplateId(e){return e instanceof zi?mv.ID:pv.ID}}class Kee{getWidgetAriaLabel(){return m("quickInput","Quick Input")}getAriaLabel(e){return e.separator?.label?`${e.saneAriaLabel}, ${e.separator.label}`:e.saneAriaLabel}getWidgetRole(){return"listbox"}getRole(e){return e.hasCheckbox?"checkbox":"option"}isChecked(e){if(!(!e.hasCheckbox||!(e instanceof zi)))return{get value(){return e.checked},onDidChange:t=>e.onChecked(()=>t())}}}class Z9{constructor(e){this.hoverDelegate=e}renderTemplate(e){const t=Object.create(null);t.toDisposeElement=new X,t.toDisposeTemplate=new X,t.entry=Z(e,qo(".quick-input-list-entry"));const i=Z(t.entry,qo("label.quick-input-list-label"));t.toDisposeTemplate.add(jt(i,ee.CLICK,c=>{t.checkbox.offsetParent||c.preventDefault()})),t.checkbox=Z(i,qo("input.quick-input-list-checkbox")),t.checkbox.type="checkbox";const n=Z(i,qo(".quick-input-list-rows")),s=Z(n,qo(".quick-input-list-row")),r=Z(n,qo(".quick-input-list-row"));t.label=new gv(s,{supportHighlights:!0,supportDescriptionHighlights:!0,supportIcons:!0,hoverDelegate:this.hoverDelegate}),t.toDisposeTemplate.add(t.label),t.icon=iT(t.label.element,qo(".quick-input-list-icon"));const a=Z(s,qo(".quick-input-list-entry-keybinding"));t.keybinding=new ob(a,Ns),t.toDisposeTemplate.add(t.keybinding);const l=Z(r,qo(".quick-input-list-label-meta"));return t.detail=new gv(l,{supportHighlights:!0,supportIcons:!0,hoverDelegate:this.hoverDelegate}),t.toDisposeTemplate.add(t.detail),t.separator=Z(t.entry,qo(".quick-input-list-separator")),t.actionBar=new oo(t.entry,this.hoverDelegate?{hoverDelegate:this.hoverDelegate}:void 0),t.actionBar.domNode.classList.add("quick-input-list-entry-action-bar"),t.toDisposeTemplate.add(t.actionBar),t}disposeTemplate(e){e.toDisposeElement.dispose(),e.toDisposeTemplate.dispose()}disposeElement(e,t,i){i.toDisposeElement.clear(),i.actionBar.clear()}}var rh;let mv=(rh=class extends Z9{constructor(e,t){super(e),this.themeService=t,this._itemsWithSeparatorsFrequency=new Map}get templateId(){return KD.ID}renderTemplate(e){const t=super.renderTemplate(e);return t.toDisposeTemplate.add(jt(t.checkbox,ee.CHANGE,i=>{t.element.checked=t.checkbox.checked})),t}renderElement(e,t,i){const n=e.element;i.element=n,n.element=i.entry??void 0;const s=n.item;i.checkbox.checked=n.checked,i.toDisposeElement.add(n.onChecked(u=>i.checkbox.checked=u)),i.checkbox.disabled=n.checkboxDisabled;const{labelHighlights:r,descriptionHighlights:a,detailHighlights:l}=n;if(s.iconPath){const u=j0(this.themeService.getColorTheme().type)?s.iconPath.dark:s.iconPath.light??s.iconPath.dark,f=ve.revive(u);i.icon.className="quick-input-list-icon",i.icon.style.backgroundImage=Dl(f)}else i.icon.style.backgroundImage="",i.icon.className=s.iconClass?`quick-input-list-icon ${s.iconClass}`:"";let c;!n.saneTooltip&&n.saneDescription&&(c={markdown:{value:n.saneDescription,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDescription});const d={matches:r||[],descriptionTitle:c,descriptionMatches:a||[],labelEscapeNewLines:!0};if(d.extraClasses=s.iconClasses,d.italic=s.italic,d.strikethrough=s.strikethrough,i.entry.classList.remove("quick-input-list-separator-as-item"),i.label.setLabel(n.saneLabel,n.saneDescription,d),i.keybinding.set(s.keybinding),n.saneDetail){let u;n.saneTooltip||(u={markdown:{value:n.saneDetail,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDetail}),i.detail.element.style.display="",i.detail.setLabel(n.saneDetail,void 0,{matches:l,title:u,labelEscapeNewLines:!0})}else i.detail.element.style.display="none";n.separator?.label?(i.separator.textContent=n.separator.label,i.separator.style.display="",this.addItemWithSeparator(n)):i.separator.style.display="none",i.entry.classList.toggle("quick-input-list-separator-border",!!n.separator);const h=s.buttons;h&&h.length?(i.actionBar.push(h.map((u,f)=>rp(u,`id-${f}`,()=>n.fireButtonTriggered({button:u,item:n.item}))),{icon:!0,label:!1}),i.entry.classList.add("has-actions")):i.entry.classList.remove("has-actions")}disposeElement(e,t,i){this.removeItemWithSeparator(e.element),super.disposeElement(e,t,i)}isItemWithSeparatorVisible(e){return this._itemsWithSeparatorsFrequency.has(e)}addItemWithSeparator(e){this._itemsWithSeparatorsFrequency.set(e,(this._itemsWithSeparatorsFrequency.get(e)||0)+1)}removeItemWithSeparator(e){const t=this._itemsWithSeparatorsFrequency.get(e)||0;t>1?this._itemsWithSeparatorsFrequency.set(e,t-1):this._itemsWithSeparatorsFrequency.delete(e)}},KD=rh,rh.ID="quickpickitem",rh);mv=KD=Cy([$D(1,en)],mv);const Uw=class Uw extends Z9{constructor(){super(...arguments),this._visibleSeparatorsFrequency=new Map}get templateId(){return Uw.ID}get visibleSeparators(){return[...this._visibleSeparatorsFrequency.keys()]}isSeparatorVisible(e){return this._visibleSeparatorsFrequency.has(e)}renderTemplate(e){const t=super.renderTemplate(e);return t.checkbox.style.display="none",t}renderElement(e,t,i){const n=e.element;i.element=n,n.element=i.entry??void 0,n.element.classList.toggle("focus-inside",!!n.focusInsideSeparator);const s=n.separator,{labelHighlights:r,descriptionHighlights:a,detailHighlights:l}=n;i.icon.style.backgroundImage="",i.icon.className="";let c;!n.saneTooltip&&n.saneDescription&&(c={markdown:{value:n.saneDescription,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDescription});const d={matches:r||[],descriptionTitle:c,descriptionMatches:a||[],labelEscapeNewLines:!0};if(i.entry.classList.add("quick-input-list-separator-as-item"),i.label.setLabel(n.saneLabel,n.saneDescription,d),n.saneDetail){let u;n.saneTooltip||(u={markdown:{value:n.saneDetail,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDetail}),i.detail.element.style.display="",i.detail.setLabel(n.saneDetail,void 0,{matches:l,title:u,labelEscapeNewLines:!0})}else i.detail.element.style.display="none";i.separator.style.display="none",i.entry.classList.add("quick-input-list-separator-border");const h=s.buttons;h&&h.length?(i.actionBar.push(h.map((u,f)=>rp(u,`id-${f}`,()=>n.fireSeparatorButtonTriggered({button:u,separator:n.separator}))),{icon:!0,label:!1}),i.entry.classList.add("has-actions")):i.entry.classList.remove("has-actions"),this.addSeparator(n)}disposeElement(e,t,i){this.removeSeparator(e.element),this.isSeparatorVisible(e.element)||e.element.element?.classList.remove("focus-inside"),super.disposeElement(e,t,i)}addSeparator(e){this._visibleSeparatorsFrequency.set(e,(this._visibleSeparatorsFrequency.get(e)||0)+1)}removeSeparator(e){const t=this._visibleSeparatorsFrequency.get(e)||0;t>1?this._visibleSeparatorsFrequency.set(e,t-1):this._visibleSeparatorsFrequency.delete(e)}};Uw.ID="quickpickseparator";let pv=Uw,C_=class extends z{constructor(e,t,i,n,s,r){super(),this.parent=e,this.hoverDelegate=t,this.linkOpenerDelegate=i,this.accessibilityService=r,this._onKeyDown=new A,this._onLeave=new A,this.onLeave=this._onLeave.event,this._visibleCountObservable=Ge("VisibleCount",0),this.onChangedVisibleCount=J.fromObservable(this._visibleCountObservable,this._store),this._allVisibleCheckedObservable=Ge("AllVisibleChecked",!1),this.onChangedAllVisibleChecked=J.fromObservable(this._allVisibleCheckedObservable,this._store),this._checkedCountObservable=Ge("CheckedCount",0),this.onChangedCheckedCount=J.fromObservable(this._checkedCountObservable,this._store),this._checkedElementsObservable=iD({equalsFn:li},new Array),this.onChangedCheckedElements=J.fromObservable(this._checkedElementsObservable,this._store),this._onButtonTriggered=new A,this.onButtonTriggered=this._onButtonTriggered.event,this._onSeparatorButtonTriggered=new A,this.onSeparatorButtonTriggered=this._onSeparatorButtonTriggered.event,this._elementChecked=new A,this._elementCheckedEventBufferer=new W_,this._hasCheckboxes=!1,this._inputElements=new Array,this._elementTree=new Array,this._itemElements=new Array,this._elementDisposable=this._register(new X),this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._matchOnLabelMode="fuzzy",this._sortByLabel=!0,this._shouldLoop=!0,this._container=Z(this.parent,qo(".quick-input-list")),this._separatorRenderer=new pv(t),this._itemRenderer=s.createInstance(mv,t),this._tree=this._register(s.createInstance(zD,"QuickInput",this._container,new $ee,[this._itemRenderer,this._separatorRenderer],{filter:{filter(a){return a.hidden?0:a instanceof fd?2:1}},sorter:{compare:(a,l)=>{if(!this.sortByLabel||!this._lastQueryString)return 0;const c=this._lastQueryString.toLowerCase();return qee(a,l,c)}},accessibilityProvider:new Kee,setRowLineHeight:!1,multipleSelectionSupport:!1,hideTwistiesOfChildlessElements:!0,renderIndentGuides:Sg.None,findWidgetEnabled:!1,indent:0,horizontalScrolling:!1,allowNonCollapsibleParents:!0,alwaysConsumeMouseWheel:!0})),this._tree.getHTMLElement().id=n,this._registerListeners()}get onDidChangeFocus(){return J.map(this._tree.onDidChangeFocus,e=>e.elements.filter(t=>t instanceof zi).map(t=>t.item),this._store)}get onDidChangeSelection(){return J.map(this._tree.onDidChangeSelection,e=>({items:e.elements.filter(t=>t instanceof zi).map(t=>t.item),event:e.browserEvent}),this._store)}get displayed(){return this._container.style.display!=="none"}set displayed(e){this._container.style.display=e?"":"none"}get scrollTop(){return this._tree.scrollTop}set scrollTop(e){this._tree.scrollTop=e}get ariaLabel(){return this._tree.ariaLabel}set ariaLabel(e){this._tree.ariaLabel=e??""}set enabled(e){this._tree.getHTMLElement().style.pointerEvents=e?"":"none"}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(e){this._matchOnDescription=e}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(e){this._matchOnDetail=e}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(e){this._matchOnLabel=e}get matchOnLabelMode(){return this._matchOnLabelMode}set matchOnLabelMode(e){this._matchOnLabelMode=e}get sortByLabel(){return this._sortByLabel}set sortByLabel(e){this._sortByLabel=e}get shouldLoop(){return this._shouldLoop}set shouldLoop(e){this._shouldLoop=e}_registerListeners(){this._registerOnKeyDown(),this._registerOnContainerClick(),this._registerOnMouseMiddleClick(),this._registerOnTreeModelChanged(),this._registerOnElementChecked(),this._registerOnContextMenu(),this._registerHoverListeners(),this._registerSelectionChangeListener(),this._registerSeparatorActionShowingListeners()}_registerOnKeyDown(){this._register(this._tree.onKeyDown(e=>{const t=new Nt(e);t.keyCode===10&&this.toggleCheckbox(),this._onKeyDown.fire(t)}))}_registerOnContainerClick(){this._register(U(this._container,ee.CLICK,e=>{(e.x||e.y)&&this._onLeave.fire()}))}_registerOnMouseMiddleClick(){this._register(U(this._container,ee.AUXCLICK,e=>{e.button===1&&this._onLeave.fire()}))}_registerOnTreeModelChanged(){this._register(this._tree.onDidChangeModel(()=>{const e=this._itemElements.filter(t=>!t.hidden).length;this._visibleCountObservable.set(e,void 0),this._hasCheckboxes&&this._updateCheckedObservables()}))}_registerOnElementChecked(){this._register(this._elementCheckedEventBufferer.wrapEvent(this._elementChecked.event,(e,t)=>t)(e=>this._updateCheckedObservables()))}_registerOnContextMenu(){this._register(this._tree.onContextMenu(e=>{e.element&&(e.browserEvent.preventDefault(),this._tree.setSelection([e.element]))}))}_registerHoverListeners(){const e=this._register(new vF(this.hoverDelegate.delay));this._register(this._tree.onMouseOver(async t=>{if(uR(t.browserEvent.target)){e.cancel();return}if(!(!uR(t.browserEvent.relatedTarget)&&yi(t.browserEvent.relatedTarget,t.element?.element)))try{await e.trigger(async()=>{t.element instanceof zi&&this.showHover(t.element)})}catch(i){if(!$c(i))throw i}})),this._register(this._tree.onMouseOut(t=>{yi(t.browserEvent.relatedTarget,t.element?.element)||e.cancel()}))}_registerSeparatorActionShowingListeners(){this._register(this._tree.onDidChangeFocus(e=>{const t=e.elements[0]?this._tree.getParentElement(e.elements[0]):null;for(const i of this._separatorRenderer.visibleSeparators){const n=i===t;!!(i.focusInsideSeparator&qr.ACTIVE_ITEM)!==n&&(n?i.focusInsideSeparator|=qr.ACTIVE_ITEM:i.focusInsideSeparator&=~qr.ACTIVE_ITEM,this._tree.rerender(i))}})),this._register(this._tree.onMouseOver(e=>{const t=e.element?this._tree.getParentElement(e.element):null;for(const i of this._separatorRenderer.visibleSeparators){if(i!==t)continue;i.focusInsideSeparator&qr.MOUSE_HOVER||(i.focusInsideSeparator|=qr.MOUSE_HOVER,this._tree.rerender(i))}})),this._register(this._tree.onMouseOut(e=>{const t=e.element?this._tree.getParentElement(e.element):null;for(const i of this._separatorRenderer.visibleSeparators){if(i!==t)continue;i.focusInsideSeparator&qr.MOUSE_HOVER&&(i.focusInsideSeparator&=~qr.MOUSE_HOVER,this._tree.rerender(i))}}))}_registerSelectionChangeListener(){this._register(this._tree.onDidChangeSelection(e=>{const t=e.elements.filter(i=>i instanceof zi);t.length!==e.elements.length&&(e.elements.length===1&&e.elements[0]instanceof fd&&(this._tree.setFocus([e.elements[0].children[0]]),this._tree.reveal(e.elements[0],0)),this._tree.setSelection(t))}))}setAllVisibleChecked(e){this._elementCheckedEventBufferer.bufferEvents(()=>{this._itemElements.forEach(t=>{!t.hidden&&!t.checkboxDisabled&&(t.checked=e)})})}setElements(e){this._elementDisposable.clear(),this._lastQueryString=void 0,this._inputElements=e,this._hasCheckboxes=this.parent.classList.contains("show-checkboxes");let t;this._itemElements=new Array,this._elementTree=e.reduce((i,n,s)=>{let r;if(n.type==="separator"){if(!n.buttons)return i;t=new fd(s,a=>this._onSeparatorButtonTriggered.fire(a),n),r=t}else{const a=s>0?e[s-1]:void 0;let l;a&&a.type==="separator"&&!a.buttons&&(t=void 0,l=a);const c=new zi(s,this._hasCheckboxes,d=>this._onButtonTriggered.fire(d),this._elementChecked,n,l);if(this._itemElements.push(c),t)return t.children.push(c),i;r=c}return i.push(r),i},new Array),this._setElementsToTree(this._elementTree),this.accessibilityService.isScreenReaderOptimized()&&setTimeout(()=>{const i=this._tree.getHTMLElement().querySelector(".monaco-list-row.focused"),n=i?.parentNode;if(i&&n){const s=i.nextSibling;i.remove(),n.insertBefore(i,s)}},0)}setFocusedElements(e){const t=e.map(i=>this._itemElements.find(n=>n.item===i)).filter(i=>!!i).filter(i=>!i.hidden);if(this._tree.setFocus(t),e.length>0){const i=this._tree.getFocus()[0];i&&this._tree.reveal(i)}}getActiveDescendant(){return this._tree.getHTMLElement().getAttribute("aria-activedescendant")}setSelectedElements(e){const t=e.map(i=>this._itemElements.find(n=>n.item===i)).filter(i=>!!i);this._tree.setSelection(t)}getCheckedElements(){return this._itemElements.filter(e=>e.checked).map(e=>e.item)}setCheckedElements(e){this._elementCheckedEventBufferer.bufferEvents(()=>{const t=new Set;for(const i of e)t.add(i);for(const i of this._itemElements)i.checked=t.has(i.item)})}focus(e){if(this._itemElements.length)switch(e===yt.Second&&this._itemElements.length<2&&(e=yt.First),e){case yt.First:this._tree.scrollTop=0,this._tree.focusFirst(void 0,t=>t.element instanceof zi);break;case yt.Second:{this._tree.scrollTop=0;let t=!1;this._tree.focusFirst(void 0,i=>i.element instanceof zi?t?!0:(t=!t,!1):!1);break}case yt.Last:this._tree.scrollTop=this._tree.scrollHeight,this._tree.focusLast(void 0,t=>t.element instanceof zi);break;case yt.Next:{const t=this._tree.getFocus();this._tree.focusNext(void 0,this._shouldLoop,void 0,n=>n.element instanceof zi?(this._tree.reveal(n.element),!0):!1);const i=this._tree.getFocus();t.length&&t[0]===i[0]&&t[0]===this._itemElements[this._itemElements.length-1]&&this._onLeave.fire();break}case yt.Previous:{const t=this._tree.getFocus();this._tree.focusPrevious(void 0,this._shouldLoop,void 0,n=>{if(!(n.element instanceof zi))return!1;const s=this._tree.getParentElement(n.element);return s===null||s.children[0]!==n.element?this._tree.reveal(n.element):this._tree.reveal(s),!0});const i=this._tree.getFocus();t.length&&t[0]===i[0]&&t[0]===this._itemElements[0]&&this._onLeave.fire();break}case yt.NextPage:this._tree.focusNextPage(void 0,t=>t.element instanceof zi?(this._tree.reveal(t.element),!0):!1);break;case yt.PreviousPage:this._tree.focusPreviousPage(void 0,t=>{if(!(t.element instanceof zi))return!1;const i=this._tree.getParentElement(t.element);return i===null||i.children[0]!==t.element?this._tree.reveal(t.element):this._tree.reveal(i),!0});break;case yt.NextSeparator:{let t=!1;const i=this._tree.getFocus()[0];this._tree.focusNext(void 0,!0,void 0,s=>{if(t)return!0;if(s.element instanceof fd)t=!0,this._separatorRenderer.isSeparatorVisible(s.element)?this._tree.reveal(s.element.children[0]):this._tree.reveal(s.element,0);else if(s.element instanceof zi){if(s.element.separator)return this._itemRenderer.isItemWithSeparatorVisible(s.element)?this._tree.reveal(s.element):this._tree.reveal(s.element,0),!0;if(s.element===this._elementTree[0])return this._tree.reveal(s.element,0),!0}return!1});const n=this._tree.getFocus()[0];i===n&&(this._tree.scrollTop=this._tree.scrollHeight,this._tree.focusLast(void 0,s=>s.element instanceof zi));break}case yt.PreviousSeparator:{let t,i=!!this._tree.getFocus()[0]?.separator;this._tree.focusPrevious(void 0,!0,void 0,n=>{if(n.element instanceof fd)i?t||(this._separatorRenderer.isSeparatorVisible(n.element)?this._tree.reveal(n.element):this._tree.reveal(n.element,0),t=n.element.children[0]):i=!0;else if(n.element instanceof zi&&!t){if(n.element.separator)this._itemRenderer.isItemWithSeparatorVisible(n.element)?this._tree.reveal(n.element):this._tree.reveal(n.element,0),t=n.element;else if(n.element===this._elementTree[0])return this._tree.reveal(n.element,0),!0}return!1}),t&&this._tree.setFocus([t]);break}}}clearFocus(){this._tree.setFocus([])}domFocus(){this._tree.domFocus()}layout(e){this._tree.getHTMLElement().style.maxHeight=e?`${Math.floor(e/44)*44+6}px`:"",this._tree.layout()}filter(e){if(this._lastQueryString=e,!(this._sortByLabel||this._matchOnLabel||this._matchOnDescription||this._matchOnDetail))return this._tree.layout(),!1;const t=e;if(e=e.trim(),!e||!(this.matchOnLabel||this.matchOnDescription||this.matchOnDetail))this._itemElements.forEach(i=>{i.labelHighlights=void 0,i.descriptionHighlights=void 0,i.detailHighlights=void 0,i.hidden=!1;const n=i.index&&this._inputElements[i.index-1];i.item&&(i.separator=n&&n.type==="separator"&&!n.buttons?n:void 0)});else{let i;this._itemElements.forEach(n=>{let s;this.matchOnLabelMode==="fuzzy"?s=this.matchOnLabel?IS(e,Tm(n.saneLabel))??void 0:void 0:s=this.matchOnLabel?jee(t,Tm(n.saneLabel))??void 0:void 0;const r=this.matchOnDescription?IS(e,Tm(n.saneDescription||""))??void 0:void 0,a=this.matchOnDetail?IS(e,Tm(n.saneDetail||""))??void 0:void 0;if(s||r||a?(n.labelHighlights=s,n.descriptionHighlights=r,n.detailHighlights=a,n.hidden=!1):(n.labelHighlights=void 0,n.descriptionHighlights=void 0,n.detailHighlights=void 0,n.hidden=n.item?!n.item.alwaysShow:!0),n.item?n.separator=void 0:n.separator&&(n.hidden=!0),!this.sortByLabel){const l=n.index&&this._inputElements[n.index-1]||void 0;l?.type==="separator"&&!l.buttons&&(i=l),i&&!n.hidden&&(n.separator=i,i=void 0)}})}return this._setElementsToTree(this._sortByLabel&&e?this._itemElements:this._elementTree),this._tree.layout(),!0}toggleCheckbox(){this._elementCheckedEventBufferer.bufferEvents(()=>{const e=this._tree.getFocus().filter(i=>i instanceof zi),t=this._allVisibleChecked(e);for(const i of e)i.checkboxDisabled||(i.checked=!t)})}style(e){this._tree.style(e)}toggleHover(){const e=this._tree.getFocus()[0];if(!e?.saneTooltip||!(e instanceof zi))return;if(this._lastHover&&!this._lastHover.isDisposed){this._lastHover.dispose();return}this.showHover(e);const t=new X;t.add(this._tree.onDidChangeFocus(i=>{i.elements[0]instanceof zi&&this.showHover(i.elements[0])})),this._lastHover&&t.add(this._lastHover),this._elementDisposable.add(t)}_setElementsToTree(e){const t=new Array;for(const i of e)i instanceof fd?t.push({element:i,collapsible:!1,collapsed:!1,children:i.children.map(n=>({element:n,collapsible:!1,collapsed:!1}))}):t.push({element:i,collapsible:!1,collapsed:!1});this._tree.setChildren(null,t)}_allVisibleChecked(e,t=!0){for(let i=0,n=e.length;i{this._allVisibleCheckedObservable.set(this._allVisibleChecked(this._itemElements,!1),e);const t=this._itemElements.filter(i=>i.checked).length;this._checkedCountObservable.set(t,e),this._checkedElementsObservable.set(this.getCheckedElements(),e)})}showHover(e){this._lastHover&&!this._lastHover.isDisposed&&(this.hoverDelegate.onDidHideHover?.(),this._lastHover?.dispose()),!(!e.element||!e.saneTooltip)&&(this._lastHover=this.hoverDelegate.showHover({content:e.saneTooltip,target:e.element,linkHandler:t=>{this.linkOpenerDelegate(t)},appearance:{showPointer:!0},container:this._container,position:{hoverPosition:1}},!1))}};Cy([Jt],C_.prototype,"onDidChangeFocus",null);Cy([Jt],C_.prototype,"onDidChangeSelection",null);C_=Cy([$D(4,ke),$D(5,ms)],C_);function jee(o,e){const{text:t,iconOffsets:i}=e;if(!i||i.length===0)return oO(o,t);const n=k0(t," "),s=t.length-n.length,r=oO(o,n);if(r)for(const a of r){const l=i[a.start+s]+s;a.start+=l,a.end+=l}return r}function oO(o,e){const t=e.toLowerCase().indexOf(o.toLowerCase());return t!==-1?[{start:t,end:t+o.length}]:null}function qee(o,e,t){const i=o.labelHighlights||[],n=e.labelHighlights||[];return i.length&&!n.length?-1:!i.length&&n.length?1:i.length===0&&n.length===0?0:zee(o.saneSortLabel,e.saneSortLabel,t)}const Y9={weight:200,when:re.and(re.equals(L9,"quickPick"),_J),metadata:{description:m("quickPick","Used while in the context of the quick pick. If you change one keybinding for this command, you should change all of the other keybindings (modifier variants) of this command as well.")}};function ts(o,e={}){Nn.registerCommandAndKeybindingRule({...Y9,...o,secondary:Gee(o.primary,o.secondary??[],e)})}const _v=Ue?256:2048;function Gee(o,e,t={}){return t.withAltMod&&e.push(512+o),t.withCtrlMod&&(e.push(_v+o),t.withAltMod&&e.push(512+_v+o)),t.withCmdMod&&Ue&&(e.push(2048+o),t.withCtrlMod&&e.push(2304+o),t.withAltMod&&(e.push(2560+o),t.withCtrlMod&&e.push(2816+o))),e}function Ss(o,e){return t=>{const i=t.get(fy).currentQuickInput;if(i)return e&&i.quickNavigate?i.focus(e):i.focus(o)}}ts({id:"quickInput.pageNext",primary:12,handler:Ss(yt.NextPage)},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0});ts({id:"quickInput.pagePrevious",primary:11,handler:Ss(yt.PreviousPage)},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0});ts({id:"quickInput.first",primary:_v+14,handler:Ss(yt.First)},{withAltMod:!0,withCmdMod:!0});ts({id:"quickInput.last",primary:_v+13,handler:Ss(yt.Last)},{withAltMod:!0,withCmdMod:!0});ts({id:"quickInput.next",primary:18,handler:Ss(yt.Next)},{withCtrlMod:!0});ts({id:"quickInput.previous",primary:16,handler:Ss(yt.Previous)},{withCtrlMod:!0});const rO=m("quickInput.nextSeparatorWithQuickAccessFallback","If we're in quick access mode, this will navigate to the next item. If we are not in quick access mode, this will navigate to the next separator."),aO=m("quickInput.previousSeparatorWithQuickAccessFallback","If we're in quick access mode, this will navigate to the previous item. If we are not in quick access mode, this will navigate to the previous separator.");Ue?(ts({id:"quickInput.nextSeparatorWithQuickAccessFallback",primary:2066,handler:Ss(yt.NextSeparator,yt.Next),metadata:{description:rO}}),ts({id:"quickInput.nextSeparator",primary:2578,secondary:[2322],handler:Ss(yt.NextSeparator)},{withCtrlMod:!0}),ts({id:"quickInput.previousSeparatorWithQuickAccessFallback",primary:2064,handler:Ss(yt.PreviousSeparator,yt.Previous),metadata:{description:aO}}),ts({id:"quickInput.previousSeparator",primary:2576,secondary:[2320],handler:Ss(yt.PreviousSeparator)},{withCtrlMod:!0})):(ts({id:"quickInput.nextSeparatorWithQuickAccessFallback",primary:530,handler:Ss(yt.NextSeparator,yt.Next),metadata:{description:rO}}),ts({id:"quickInput.nextSeparator",primary:2578,handler:Ss(yt.NextSeparator)}),ts({id:"quickInput.previousSeparatorWithQuickAccessFallback",primary:528,handler:Ss(yt.PreviousSeparator,yt.Previous),metadata:{description:aO}}),ts({id:"quickInput.previousSeparator",primary:2576,handler:Ss(yt.PreviousSeparator)}));ts({id:"quickInput.acceptInBackground",when:re.and(Y9.when,re.or(W9.negate(),vJ)),primary:17,weight:250,handler:o=>{o.get(fy).currentQuickInput?.accept(!0)}},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0});var Zee=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},QS=function(o,e){return function(t,i){e(t,i,o)}},jD;const Jn=ce;var ah;let qD=(ah=class extends z{get currentQuickInput(){return this.controller??void 0}get container(){return this._container}constructor(e,t,i,n){super(),this.options=e,this.layoutService=t,this.instantiationService=i,this.contextKeyService=n,this.enabled=!0,this.onDidAcceptEmitter=this._register(new A),this.onDidCustomEmitter=this._register(new A),this.onDidTriggerButtonEmitter=this._register(new A),this.keyMods={ctrlCmd:!1,alt:!1},this.controller=null,this.onShowEmitter=this._register(new A),this.onShow=this.onShowEmitter.event,this.onHideEmitter=this._register(new A),this.onHide=this.onHideEmitter.event,this.inQuickInputContext=pJ.bindTo(this.contextKeyService),this.quickInputTypeContext=bJ.bindTo(this.contextKeyService),this.endOfQuickInputBoxContext=CJ.bindTo(this.contextKeyService),this.idPrefix=e.idPrefix,this._container=e.container,this.styles=e.styles,this._register(J.runAndSubscribe(T0,({window:s,disposables:r})=>this.registerKeyModsListeners(s,r),{window:_t,disposables:this._store})),this._register(hV(s=>{this.ui&&fe(this.ui.container)===s&&(this.reparentUI(this.layoutService.mainContainer),this.layout(this.layoutService.mainContainerDimension,this.layoutService.mainContainerOffset.quickPickTop))}))}registerKeyModsListeners(e,t){const i=n=>{this.keyMods.ctrlCmd=n.ctrlKey||n.metaKey,this.keyMods.alt=n.altKey};for(const n of[ee.KEY_DOWN,ee.KEY_UP,ee.MOUSE_DOWN])t.add(U(e,n,i,!0))}getUI(e){if(this.ui)return e&&fe(this._container)!==fe(this.layoutService.activeContainer)&&(this.reparentUI(this.layoutService.activeContainer),this.layout(this.layoutService.activeContainerDimension,this.layoutService.activeContainerOffset.quickPickTop)),this.ui;const t=Z(this._container,Jn(".quick-input-widget.show-file-icons"));t.tabIndex=-1,t.style.display="none";const i=Vs(t),n=Z(t,Jn(".quick-input-titlebar")),s=this._register(new oo(n,{hoverDelegate:this.options.hoverDelegate}));s.domNode.classList.add("quick-input-left-action-bar");const r=Z(n,Jn(".quick-input-title")),a=this._register(new oo(n,{hoverDelegate:this.options.hoverDelegate}));a.domNode.classList.add("quick-input-right-action-bar");const l=Z(t,Jn(".quick-input-header")),c=Z(l,Jn("input.quick-input-check-all"));c.type="checkbox",c.setAttribute("aria-label",m("quickInput.checkAll","Toggle all checkboxes")),this._register(jt(c,ee.CHANGE,B=>{const G=c.checked;W.setAllVisibleChecked(G)})),this._register(U(c,ee.CLICK,B=>{(B.x||B.y)&&f.setFocus()}));const d=Z(l,Jn(".quick-input-description")),h=Z(l,Jn(".quick-input-and-message")),u=Z(h,Jn(".quick-input-filter")),f=this._register(new RJ(u,this.styles.inputBox,this.styles.toggle));f.setAttribute("aria-describedby",`${this.idPrefix}message`);const g=Z(u,Jn(".quick-input-visible-count"));g.setAttribute("aria-live","polite"),g.setAttribute("aria-atomic","true");const p=new PD(g,{countFormat:m({key:"quickInput.visibleCount",comment:["This tells the user how many items are shown in a list of items to select from. The items can be anything. Currently not visible, but read by screen readers."]},"{0} Results")},this.styles.countBadge),_=Z(u,Jn(".quick-input-count"));_.setAttribute("aria-live","polite");const b=new PD(_,{countFormat:m({key:"quickInput.countSelected",comment:["This tells the user how many items are selected in a list of items to select from. The items can be anything."]},"{0} Selected")},this.styles.countBadge),C=this._register(new oo(l,{hoverDelegate:this.options.hoverDelegate}));C.domNode.classList.add("quick-input-inline-action-bar");const w=Z(l,Jn(".quick-input-action")),v=this._register(new AD(w,this.styles.button));v.label=m("ok","OK"),this._register(v.onDidClick(B=>{this.onDidAcceptEmitter.fire()}));const y=Z(l,Jn(".quick-input-action")),x=this._register(new AD(y,{...this.styles.button,supportIcons:!0}));x.label=m("custom","Custom"),this._register(x.onDidClick(B=>{this.onDidCustomEmitter.fire()}));const L=Z(h,Jn(`#${this.idPrefix}message.quick-input-message`)),E=this._register(new OD(t,this.styles.progressBar));E.getContainer().classList.add("quick-input-progress");const N=Z(t,Jn(".quick-input-html-widget"));N.tabIndex=-1;const H=Z(t,Jn(".quick-input-description")),F=this.idPrefix+"list",W=this._register(this.instantiationService.createInstance(C_,t,this.options.hoverDelegate,this.options.linkOpenerDelegate,F));f.setAttribute("aria-controls",F),this._register(W.onDidChangeFocus(()=>{f.setAttribute("aria-activedescendant",W.getActiveDescendant()??"")})),this._register(W.onChangedAllVisibleChecked(B=>{c.checked=B})),this._register(W.onChangedVisibleCount(B=>{p.setCount(B)})),this._register(W.onChangedCheckedCount(B=>{b.setCount(B)})),this._register(W.onLeave(()=>{setTimeout(()=>{this.controller&&(f.setFocus(),this.controller instanceof sv&&this.controller.canSelectMany&&W.clearFocus())},0)}));const j=Ph(t);return this._register(j),this._register(U(t,ee.FOCUS,B=>{const G=this.getUI();if(yi(B.relatedTarget,G.inputContainer)){const ne=G.inputBox.isSelectionAtEnd();this.endOfQuickInputBoxContext.get()!==ne&&this.endOfQuickInputBoxContext.set(ne)}yi(B.relatedTarget,G.container)||(this.inQuickInputContext.set(!0),this.previousFocusElement=Ei(B.relatedTarget)?B.relatedTarget:void 0)},!0)),this._register(j.onDidBlur(()=>{!this.getUI().ignoreFocusOut&&!this.options.ignoreFocusOut()&&this.hide(yg.Blur),this.inQuickInputContext.set(!1),this.endOfQuickInputBoxContext.set(!1),this.previousFocusElement=void 0})),this._register(f.onKeyDown(B=>{const G=this.getUI().inputBox.isSelectionAtEnd();this.endOfQuickInputBoxContext.get()!==G&&this.endOfQuickInputBoxContext.set(G)})),this._register(U(t,ee.FOCUS,B=>{f.setFocus()})),this._register(jt(t,ee.KEY_DOWN,B=>{if(!yi(B.target,N))switch(B.keyCode){case 3:je.stop(B,!0),this.enabled&&this.onDidAcceptEmitter.fire();break;case 9:je.stop(B,!0),this.hide(yg.Gesture);break;case 2:if(!B.altKey&&!B.ctrlKey&&!B.metaKey){const G=[".quick-input-list .monaco-action-bar .always-visible",".quick-input-list-entry:hover .monaco-action-bar",".monaco-list-row.focused .monaco-action-bar"];if(t.classList.contains("show-checkboxes")?G.push("input"):G.push("input[type=text]"),this.getUI().list.displayed&&G.push(".monaco-list"),this.getUI().message&&G.push(".quick-input-message a"),this.getUI().widget){if(yi(B.target,this.getUI().widget))break;G.push(".quick-input-html-widget")}const ne=t.querySelectorAll(G.join(", "));B.shiftKey&&B.target===ne[0]?(je.stop(B,!0),W.clearFocus()):!B.shiftKey&&yi(B.target,ne[ne.length-1])&&(je.stop(B,!0),ne[0].focus())}break;case 10:B.ctrlKey&&(je.stop(B,!0),this.getUI().list.toggleHover());break}})),this.ui={container:t,styleSheet:i,leftActionBar:s,titleBar:n,title:r,description1:H,description2:d,widget:N,rightActionBar:a,inlineActionBar:C,checkAll:c,inputContainer:h,filterContainer:u,inputBox:f,visibleCountContainer:g,visibleCount:p,countContainer:_,count:b,okContainer:w,ok:v,message:L,customButtonContainer:y,customButton:x,list:W,progressBar:E,onDidAccept:this.onDidAcceptEmitter.event,onDidCustom:this.onDidCustomEmitter.event,onDidTriggerButton:this.onDidTriggerButtonEmitter.event,ignoreFocusOut:!1,keyMods:this.keyMods,show:B=>this.show(B),hide:()=>this.hide(),setVisibilities:B=>this.setVisibilities(B),setEnabled:B=>this.setEnabled(B),setContextKey:B=>this.options.setContextKey(B),linkOpenerDelegate:B=>this.options.linkOpenerDelegate(B)},this.updateStyles(),this.ui}reparentUI(e){this.ui&&(this._container=e,Z(this._container,this.ui.container))}pick(e,t={},i=ut.None){return new Promise((n,s)=>{let r=d=>{r=n,t.onKeyMods?.(a.keyMods),n(d)};if(i.isCancellationRequested){r(void 0);return}const a=this.createQuickPick({useSeparators:!0});let l;const c=[a,a.onDidAccept(()=>{if(a.canSelectMany)r(a.selectedItems.slice()),a.hide();else{const d=a.activeItems[0];d&&(r(d),a.hide())}}),a.onDidChangeActive(d=>{const h=d[0];h&&t.onDidFocus&&t.onDidFocus(h)}),a.onDidChangeSelection(d=>{if(!a.canSelectMany){const h=d[0];h&&(r(h),a.hide())}}),a.onDidTriggerItemButton(d=>t.onDidTriggerItemButton&&t.onDidTriggerItemButton({...d,removeItem:()=>{const h=a.items.indexOf(d.item);if(h!==-1){const u=a.items.slice(),f=u.splice(h,1),g=a.activeItems.filter(_=>_!==f[0]),p=a.keepScrollPosition;a.keepScrollPosition=!0,a.items=u,g&&(a.activeItems=g),a.keepScrollPosition=p}}})),a.onDidTriggerSeparatorButton(d=>t.onDidTriggerSeparatorButton?.(d)),a.onDidChangeValue(d=>{l&&!d&&(a.activeItems.length!==1||a.activeItems[0]!==l)&&(a.activeItems=[l])}),i.onCancellationRequested(()=>{a.hide()}),a.onDidHide(()=>{xt(c),r(void 0)})];a.title=t.title,t.value&&(a.value=t.value),a.canSelectMany=!!t.canPickMany,a.placeholder=t.placeHolder,a.ignoreFocusOut=!!t.ignoreFocusLost,a.matchOnDescription=!!t.matchOnDescription,a.matchOnDetail=!!t.matchOnDetail,a.matchOnLabel=t.matchOnLabel===void 0||t.matchOnLabel,a.quickNavigate=t.quickNavigate,a.hideInput=!!t.hideInput,a.contextKey=t.contextKey,a.busy=!0,Promise.all([e,t.activeItem]).then(([d,h])=>{l=h,a.busy=!1,a.items=d,a.canSelectMany&&(a.selectedItems=d.filter(u=>u.type!=="separator"&&u.picked)),l&&(a.activeItems=[l])}),a.show(),Promise.resolve(e).then(void 0,d=>{s(d),a.hide()})})}createQuickPick(e={useSeparators:!1}){const t=this.getUI(!0);return new sv(t)}createInputBox(){const e=this.getUI(!0);return new wJ(e)}show(e){const t=this.getUI(!0);this.onShowEmitter.fire();const i=this.controller;this.controller=e,i?.didHide(),this.setEnabled(!0),t.leftActionBar.clear(),t.title.textContent="",t.description1.textContent="",t.description2.textContent="",un(t.widget),t.rightActionBar.clear(),t.inlineActionBar.clear(),t.checkAll.checked=!1,t.inputBox.placeholder="",t.inputBox.password=!1,t.inputBox.showDecoration(Qt.Ignore),t.visibleCount.setCount(0),t.count.setCount(0),un(t.message),t.progressBar.stop(),t.list.setElements([]),t.list.matchOnDescription=!1,t.list.matchOnDetail=!1,t.list.matchOnLabel=!0,t.list.sortByLabel=!0,t.ignoreFocusOut=!1,t.inputBox.toggles=void 0;const n=this.options.backKeybindingLabel();MD.tooltip=n?m("quickInput.backWithKeybinding","Back ({0})",n):m("quickInput.back","Back"),t.container.style.display="",this.updateLayout(),t.inputBox.setFocus(),this.quickInputTypeContext.set(e.type)}isVisible(){return!!this.ui&&this.ui.container.style.display!=="none"}setVisibilities(e){const t=this.getUI();t.title.style.display=e.title?"":"none",t.description1.style.display=e.description&&(e.inputBox||e.checkAll)?"":"none",t.description2.style.display=e.description&&!(e.inputBox||e.checkAll)?"":"none",t.checkAll.style.display=e.checkAll?"":"none",t.inputContainer.style.display=e.inputBox?"":"none",t.filterContainer.style.display=e.inputBox?"":"none",t.visibleCountContainer.style.display=e.visibleCount?"":"none",t.countContainer.style.display=e.count?"":"none",t.okContainer.style.display=e.ok?"":"none",t.customButtonContainer.style.display=e.customButton?"":"none",t.message.style.display=e.message?"":"none",t.progressBar.getContainer().style.display=e.progressBar?"":"none",t.list.displayed=!!e.list,t.container.classList.toggle("show-checkboxes",!!e.checkBox),t.container.classList.toggle("hidden-input",!e.inputBox&&!e.description),this.updateLayout()}setEnabled(e){if(e!==this.enabled){this.enabled=e;for(const t of this.getUI().leftActionBar.viewItems)t.action.enabled=e;for(const t of this.getUI().rightActionBar.viewItems)t.action.enabled=e;this.getUI().checkAll.disabled=!e,this.getUI().inputBox.enabled=e,this.getUI().ok.enabled=e,this.getUI().list.enabled=e}}hide(e){const t=this.controller;if(!t)return;t.willHide(e);const i=this.ui?.container,n=i&&!OF(i);if(this.controller=null,this.onHideEmitter.fire(),i&&(i.style.display="none"),!n){let s=this.previousFocusElement;for(;s&&!s.offsetParent;)s=s.parentElement??void 0;s?.offsetParent?(s.focus(),this.previousFocusElement=void 0):this.options.returnFocus()}t.didHide(e)}layout(e,t){this.dimension=e,this.titleBarOffset=t,this.updateLayout()}updateLayout(){if(this.ui&&this.isVisible()){this.ui.container.style.top=`${this.titleBarOffset}px`;const e=this.ui.container.style,t=Math.min(this.dimension.width*.62,jD.MAX_WIDTH);e.width=t+"px",e.marginLeft="-"+t/2+"px",this.ui.inputBox.layout(),this.ui.list.layout(this.dimension&&this.dimension.height*.4)}}applyStyles(e){this.styles=e,this.updateStyles()}updateStyles(){if(this.ui){const{quickInputTitleBackground:e,quickInputBackground:t,quickInputForeground:i,widgetBorder:n,widgetShadow:s}=this.styles.widget;this.ui.titleBar.style.backgroundColor=e??"",this.ui.container.style.backgroundColor=t??"",this.ui.container.style.color=i??"",this.ui.container.style.border=n?`1px solid ${n}`:"",this.ui.container.style.boxShadow=s?`0 0 8px 2px ${s}`:"",this.ui.list.style(this.styles.list);const r=[];this.styles.pickerGroup.pickerGroupBorder&&r.push(`.quick-input-list .quick-input-list-entry { border-top-color: ${this.styles.pickerGroup.pickerGroupBorder}; }`),this.styles.pickerGroup.pickerGroupForeground&&r.push(`.quick-input-list .quick-input-list-separator { color: ${this.styles.pickerGroup.pickerGroupForeground}; }`),this.styles.pickerGroup.pickerGroupForeground&&r.push(".quick-input-list .quick-input-list-separator-as-item { color: var(--vscode-descriptionForeground); }"),(this.styles.keybindingLabel.keybindingLabelBackground||this.styles.keybindingLabel.keybindingLabelBorder||this.styles.keybindingLabel.keybindingLabelBottomBorder||this.styles.keybindingLabel.keybindingLabelShadow||this.styles.keybindingLabel.keybindingLabelForeground)&&(r.push(".quick-input-list .monaco-keybinding > .monaco-keybinding-key {"),this.styles.keybindingLabel.keybindingLabelBackground&&r.push(`background-color: ${this.styles.keybindingLabel.keybindingLabelBackground};`),this.styles.keybindingLabel.keybindingLabelBorder&&r.push(`border-color: ${this.styles.keybindingLabel.keybindingLabelBorder};`),this.styles.keybindingLabel.keybindingLabelBottomBorder&&r.push(`border-bottom-color: ${this.styles.keybindingLabel.keybindingLabelBottomBorder};`),this.styles.keybindingLabel.keybindingLabelShadow&&r.push(`box-shadow: inset 0 -1px 0 ${this.styles.keybindingLabel.keybindingLabelShadow};`),this.styles.keybindingLabel.keybindingLabelForeground&&r.push(`color: ${this.styles.keybindingLabel.keybindingLabelForeground};`),r.push("}"));const a=r.join(` -`);a!==this.ui.styleSheet.textContent&&(this.ui.styleSheet.textContent=a)}}},jD=ah,ah.MAX_WIDTH=600,ah);qD=jD=Zee([QS(1,jc),QS(2,ke),QS(3,De)],qD);var Yee=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vm=function(o,e){return function(t,i){e(t,i,o)}};let GD=class extends P${get controller(){return this._controller||(this._controller=this._register(this.createController())),this._controller}get hasController(){return!!this._controller}get currentQuickInput(){return this.controller.currentQuickInput}get quickAccess(){return this._quickAccess||(this._quickAccess=this._register(this.instantiationService.createInstance(TD))),this._quickAccess}constructor(e,t,i,n,s){super(i),this.instantiationService=e,this.contextKeyService=t,this.layoutService=n,this.configurationService=s,this._onShow=this._register(new A),this._onHide=this._register(new A),this.contexts=new Map}createController(e=this.layoutService,t){const i={idPrefix:"quickInput_",container:e.activeContainer,ignoreFocusOut:()=>!1,backKeybindingLabel:()=>{},setContextKey:s=>this.setContextKey(s),linkOpenerDelegate:s=>{this.instantiationService.invokeFunction(r=>{r.get(Vo).open(s,{allowCommands:!0,fromUserGesture:!0})})},returnFocus:()=>e.focus(),styles:this.computeStyles(),hoverDelegate:this._register(this.instantiationService.createInstance(RD))},n=this._register(this.instantiationService.createInstance(qD,{...i,...t}));return n.layout(e.activeContainerDimension,e.activeContainerOffset.quickPickTop),this._register(e.onDidLayoutActiveContainer(s=>{fe(e.activeContainer)===fe(n.container)&&n.layout(s,e.activeContainerOffset.quickPickTop)})),this._register(e.onDidChangeActiveContainer(()=>{n.isVisible()||n.layout(e.activeContainerDimension,e.activeContainerOffset.quickPickTop)})),this._register(n.onShow(()=>{this.resetContextKeys(),this._onShow.fire()})),this._register(n.onHide(()=>{this.resetContextKeys(),this._onHide.fire()})),n}setContextKey(e){let t;e&&(t=this.contexts.get(e),t||(t=new le(e,!1).bindTo(this.contextKeyService),this.contexts.set(e,t))),!(t&&t.get())&&(this.resetContextKeys(),t?.set(!0))}resetContextKeys(){this.contexts.forEach(e=>{e.get()&&e.reset()})}pick(e,t,i=ut.None){return this.controller.pick(e,t,i)}createQuickPick(e={useSeparators:!1}){return this.controller.createQuickPick(e)}createInputBox(){return this.controller.createInputBox()}updateStyles(){this.hasController&&this.controller.applyStyles(this.computeStyles())}computeStyles(){return{widget:{quickInputBackground:oe(TA),quickInputForeground:oe(eq),quickInputTitleBackground:oe(tq),widgetBorder:oe(FK),widgetShadow:oe(q_)},inputBox:F7,toggle:O7,countBadge:B7,button:PY,progressBar:OY,keybindingLabel:AY,list:$g({listBackground:TA,listFocusBackground:PC,listFocusForeground:AC,listInactiveFocusForeground:AC,listInactiveSelectionIconForeground:TT,listInactiveFocusBackground:PC,listFocusOutline:Ut,listInactiveFocusOutline:Ut}),pickerGroup:{pickerGroupBorder:oe(iq),pickerGroupForeground:oe(Q3)}}}};GD=Yee([vm(0,ke),vm(1,De),vm(2,en),vm(3,jc),vm(4,lt)],GD);var Q9=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},xd=function(o,e){return function(t,i){e(t,i,o)}};let ZD=class extends GD{constructor(e,t,i,n,s,r){super(t,i,n,new pk(e.getContainerDomNode(),s),r),this.host=void 0;const a=v_.get(e);if(a){const l=a.widget;this.host={_serviceBrand:void 0,get mainContainer(){return l.getDomNode()},getContainer(){return l.getDomNode()},whenContainerStylesLoaded(){},get containers(){return[l.getDomNode()]},get activeContainer(){return l.getDomNode()},get mainContainerDimension(){return e.getLayoutInfo()},get activeContainerDimension(){return e.getLayoutInfo()},get onDidLayoutMainContainer(){return e.onDidLayoutChange},get onDidLayoutActiveContainer(){return e.onDidLayoutChange},get onDidLayoutContainer(){return J.map(e.onDidLayoutChange,c=>({container:l.getDomNode(),dimension:c}))},get onDidChangeActiveContainer(){return J.None},get onDidAddContainer(){return J.None},get mainContainerOffset(){return{top:0,quickPickTop:0}},get activeContainerOffset(){return{top:0,quickPickTop:0}},focus:()=>e.focus()}}else this.host=void 0}createController(){return super.createController(this.host)}};ZD=Q9([xd(1,ke),xd(2,De),xd(3,en),xd(4,Pt),xd(5,lt)],ZD);let YD=class{get activeService(){const e=this.codeEditorService.getFocusedCodeEditor();if(!e)throw new Error("Quick input service needs a focused editor to work.");let t=this.mapEditorToService.get(e);if(!t){const i=t=this.instantiationService.createInstance(ZD,e);this.mapEditorToService.set(e,t),ng(e.onDidDispose)(()=>{i.dispose(),this.mapEditorToService.delete(e)})}return t}get currentQuickInput(){return this.activeService.currentQuickInput}get quickAccess(){return this.activeService.quickAccess}constructor(e,t){this.instantiationService=e,this.codeEditorService=t,this.mapEditorToService=new Map}pick(e,t,i=ut.None){return this.activeService.pick(e,t,i)}createQuickPick(e={useSeparators:!1}){return this.activeService.createQuickPick(e)}createInputBox(){return this.activeService.createInputBox()}};YD=Q9([xd(0,ke),xd(1,Pt)],YD);const $w=class $w{static get(e){return e.getContribution($w.ID)}constructor(e){this.editor=e,this.widget=new QD(this.editor)}dispose(){this.widget.dispose()}};$w.ID="editor.controller.quickInput";let v_=$w;const Kw=class Kw{constructor(e){this.codeEditor=e,this.domNode=document.createElement("div"),this.codeEditor.addOverlayWidget(this)}getId(){return Kw.ID}getDomNode(){return this.domNode}getPosition(){return{preference:2}}dispose(){this.codeEditor.removeOverlayWidget(this)}};Kw.ID="editor.contrib.quickInputWidget";let QD=Kw;Ho(v_.ID,v_,4);class Qee{constructor(e,t,i,n,s){this._parsedThemeRuleBrand=void 0,this.token=e,this.index=t,this.fontStyle=i,this.foreground=n,this.background=s}}function Xee(o){if(!o||!Array.isArray(o))return[];const e=[];let t=0;for(let i=0,n=o.length;i{const u=ste(d.token,h.token);return u!==0?u:d.index-h.index});let t=0,i="000000",n="ffffff";for(;o.length>=1&&o[0].token==="";){const d=o.shift();d.fontStyle!==-1&&(t=d.fontStyle),d.foreground!==null&&(i=d.foreground),d.background!==null&&(n=d.background)}const s=new tte;for(const d of e)s.getId(d);const r=s.getId(i),a=s.getId(n),l=new M2(t,r,a),c=new R2(l);for(let d=0,h=o.length;d"u"){const n=this._match(t),s=nte(t);i=(n.metadata|s<<8)>>>0,this._cache.set(t,i)}return(i|e<<0)>>>0}}const ite=/\b(comment|string|regex|regexp)\b/;function nte(o){const e=o.match(ite);if(!e)return 0;switch(e[1]){case"comment":return 1;case"string":return 2;case"regex":return 3;case"regexp":return 3}throw new Error("Unexpected match for standard token type!")}function ste(o,e){return oe?1:0}class M2{constructor(e,t,i){this._themeTrieElementRuleBrand=void 0,this._fontStyle=e,this._foreground=t,this._background=i,this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}clone(){return new M2(this._fontStyle,this._foreground,this._background)}acceptOverwrite(e,t,i){e!==-1&&(this._fontStyle=e),t!==0&&(this._foreground=t),i!==0&&(this._background=i),this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}}class R2{constructor(e){this._themeTrieElementBrand=void 0,this._mainRule=e,this._children=new Map}match(e){if(e==="")return this._mainRule;const t=e.indexOf(".");let i,n;t===-1?(i=e,n=""):(i=e.substring(0,t),n=e.substring(t+1));const s=this._children.get(i);return typeof s<"u"?s.match(n):this._mainRule}insert(e,t,i,n){if(e===""){this._mainRule.acceptOverwrite(t,i,n);return}const s=e.indexOf(".");let r,a;s===-1?(r=e,a=""):(r=e.substring(0,s),a=e.substring(s+1));let l=this._children.get(r);typeof l>"u"&&(l=new R2(this._mainRule.clone()),this._children.set(r,l)),l.insert(a,t,i,n)}}function ote(o){const e=[];for(let t=1,i=o.length;t({format:n.format,location:n.location.toString()}))}}o.toJSONObject=e;function t(i){const n=s=>Os(s)?s:void 0;if(i&&Array.isArray(i.src)&&i.src.every(s=>Os(s.format)&&Os(s.location)))return{weight:n(i.weight),style:n(i.style),src:i.src.map(s=>({format:s.format,location:ve.parse(s.location)}))}}o.fromJSONObject=t})(cO||(cO={}));class hte{constructor(){this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this.iconSchema={definitions:{icons:{type:"object",properties:{fontId:{type:"string",description:m("iconDefinition.fontId","The id of the font to use. If not set, the font that is defined first is used.")},fontCharacter:{type:"string",description:m("iconDefinition.fontCharacter","The font character associated with the icon definition.")}},additionalProperties:!1,defaultSnippets:[{body:{fontCharacter:"\\\\e030"}}]}},type:"object",properties:{}},this.iconReferenceSchema={type:"string",pattern:`^${Ee.iconNameExpression}$`,enum:[],enumDescriptions:[]},this.iconsById={},this.iconFontsById={}}registerIcon(e,t,i,n){const s=this.iconsById[e];if(s){if(i&&!s.description){s.description=i,this.iconSchema.properties[e].markdownDescription=`${i} $(${e})`;const l=this.iconReferenceSchema.enum.indexOf(e);l!==-1&&(this.iconReferenceSchema.enumDescriptions[l]=i),this._onDidChange.fire()}return s}const r={id:e,description:i,defaults:t,deprecationMessage:n};this.iconsById[e]=r;const a={$ref:"#/definitions/icons"};return n&&(a.deprecationMessage=n),i&&(a.markdownDescription=`${i}: $(${e})`),this.iconSchema.properties[e]=a,this.iconReferenceSchema.enum.push(e),this.iconReferenceSchema.enumDescriptions.push(i||""),this._onDidChange.fire(),{id:e}}getIcons(){return Object.keys(this.iconsById).map(e=>this.iconsById[e])}getIcon(e){return this.iconsById[e]}getIconSchema(){return this.iconSchema}toString(){const e=(s,r)=>s.id.localeCompare(r.id),t=s=>{for(;Ee.isThemeIcon(s.defaults);)s=this.iconsById[s.defaults.id];return`codicon codicon-${s?s.id:""}`},i=[];i.push("| preview | identifier | default codicon ID | description"),i.push("| ----------- | --------------------------------- | --------------------------------- | --------------------------------- |");const n=Object.keys(this.iconsById).map(s=>this.iconsById[s]);for(const s of n.filter(r=>!!r.description).sort(e))i.push(`||${s.id}|${Ee.isThemeIcon(s.defaults)?s.defaults.id:s.id}|${s.description||""}|`);i.push("| preview | identifier "),i.push("| ----------- | --------------------------------- |");for(const s of n.filter(r=>!Ee.isThemeIcon(r.defaults)).sort(e))i.push(`||${s.id}|`);return i.join(` -`)}}const fu=new hte;Bi.add(dte.IconContribution,fu);function Wi(o,e,t,i){return fu.registerIcon(o,e,t,i)}function J9(){return fu}function ute(){const o=rF();for(const e in o){const t="\\"+o[e].toString(16);fu.registerIcon(e,{fontCharacter:t})}}ute();const e8="vscode://schemas/icons",t8=Bi.as(K0.JSONContribution);t8.registerSchema(e8,fu.getIconSchema());const dO=new ci(()=>t8.notifySchemaChanged(e8),200);fu.onDidChange(()=>{dO.isScheduled()||dO.schedule()});Wi("widget-close",ie.close,m("widgetClose","Icon for the close action in widgets."));Wi("goto-previous-location",ie.arrowUp,m("previousChangeIcon","Icon for goto previous editor location."));Wi("goto-next-location",ie.arrowDown,m("nextChangeIcon","Icon for goto next editor location."));Ee.modify(ie.sync,"spin");Ee.modify(ie.loading,"spin");function fte(o){const e=new X,t=e.add(new A),i=J9();return e.add(i.onDidChange(()=>t.fire())),o&&e.add(o.onDidProductIconThemeChange(()=>t.fire())),{dispose:()=>e.dispose(),onDidChange:t.event,getCSS(){const n=o?o.getProductIconTheme():new i8,s={},r=[],a=[];for(const l of i.getIcons()){const c=n.getIcon(l);if(!c)continue;const d=c.font,h=`--vscode-icon-${l.id}-font-family`,u=`--vscode-icon-${l.id}-content`;d?(s[d.id]=d.definition,a.push(`${h}: ${lS(d.id)};`,`${u}: '${c.fontCharacter}';`),r.push(`.codicon-${l.id}:before { content: '${c.fontCharacter}'; font-family: ${lS(d.id)}; }`)):(a.push(`${u}: '${c.fontCharacter}'; ${h}: 'codicon';`),r.push(`.codicon-${l.id}:before { content: '${c.fontCharacter}'; }`))}for(const l in s){const c=s[l],d=c.weight?`font-weight: ${c.weight};`:"",h=c.style?`font-style: ${c.style};`:"",u=c.src.map(f=>`${Dl(f.location)} format('${f.format}')`).join(", ");r.push(`@font-face { src: ${u}; font-family: ${lS(l)};${d}${h} font-display: block; }`)}return r.push(`:root { ${a.join(" ")} }`),r.join(` -`)}}}class i8{getIcon(e){const t=J9();let i=e.defaults;for(;Ee.isThemeIcon(i);){const n=t.getIcon(i.id);if(!n)return;i=n.defaults}return i}}const ec="vs",ap="vs-dark",Kf="hc-black",jf="hc-light",n8=Bi.as(A3.ColorContribution),gte=Bi.as(_3.ThemingContribution);class s8{constructor(e,t){this.semanticHighlighting=!1,this.themeData=t;const i=t.base;e.length>0?(z1(e)?this.id=e:this.id=i+" "+e,this.themeName=e):(this.id=i,this.themeName=i),this.colors=null,this.defaultColors=Object.create(null),this._tokenTheme=null}get base(){return this.themeData.base}notifyBaseUpdated(){this.themeData.inherit&&(this.colors=null,this._tokenTheme=null)}getColors(){if(!this.colors){const e=new Map;for(const t in this.themeData.colors)e.set(t,q.fromHex(this.themeData.colors[t]));if(this.themeData.inherit){const t=XD(this.themeData.base);for(const i in t.colors)e.has(i)||e.set(i,q.fromHex(t.colors[i]))}this.colors=e}return this.colors}getColor(e,t){const i=this.getColors().get(e);if(i)return i;if(t!==!1)return this.getDefault(e)}getDefault(e){let t=this.defaultColors[e];return t||(t=n8.resolveDefaultColor(e,this),this.defaultColors[e]=t,t)}defines(e){return this.getColors().has(e)}get type(){switch(this.base){case ec:return io.LIGHT;case Kf:return io.HIGH_CONTRAST_DARK;case jf:return io.HIGH_CONTRAST_LIGHT;default:return io.DARK}}get tokenTheme(){if(!this._tokenTheme){let e=[],t=[];if(this.themeData.inherit){const s=XD(this.themeData.base);e=s.rules,s.encodedTokensColors&&(t=s.encodedTokensColors)}const i=this.themeData.colors["editor.foreground"],n=this.themeData.colors["editor.background"];if(i||n){const s={token:""};i&&(s.foreground=i),n&&(s.background=n),e.push(s)}e=e.concat(this.themeData.rules),this.themeData.encodedTokensColors&&(t=this.themeData.encodedTokensColors),this._tokenTheme=X9.createFromRawTokenTheme(e,t)}return this._tokenTheme}getTokenStyleMetadata(e,t,i){const s=this.tokenTheme._match([e].concat(t).join(".")).metadata,r=sr.getForeground(s),a=sr.getFontStyle(s);return{foreground:r,italic:!!(a&1),bold:!!(a&2),underline:!!(a&4),strikethrough:!!(a&8)}}}function z1(o){return o===ec||o===ap||o===Kf||o===jf}function XD(o){switch(o){case ec:return rte;case ap:return ate;case Kf:return lte;case jf:return cte}}function Jb(o){const e=XD(o);return new s8(o,e)}class mte extends z{constructor(){super(),this._onColorThemeChange=this._register(new A),this.onDidColorThemeChange=this._onColorThemeChange.event,this._onProductIconThemeChange=this._register(new A),this.onDidProductIconThemeChange=this._onProductIconThemeChange.event,this._environment=Object.create(null),this._builtInProductIconTheme=new i8,this._autoDetectHighContrast=!0,this._knownThemes=new Map,this._knownThemes.set(ec,Jb(ec)),this._knownThemes.set(ap,Jb(ap)),this._knownThemes.set(Kf,Jb(Kf)),this._knownThemes.set(jf,Jb(jf));const e=this._register(fte(this));this._codiconCSS=e.getCSS(),this._themeCSS="",this._allCSS=`${this._codiconCSS} -${this._themeCSS}`,this._globalStyleElement=null,this._styleElements=[],this._colorMapOverride=null,this.setTheme(ec),this._onOSSchemeChanged(),this._register(e.onDidChange(()=>{this._codiconCSS=e.getCSS(),this._updateCSS()})),_F(_t,"(forced-colors: active)",()=>{this._onOSSchemeChanged()})}registerEditorContainer(e){return _C(e)?this._registerShadowDomContainer(e):this._registerRegularEditorContainer()}_registerRegularEditorContainer(){return this._globalStyleElement||(this._globalStyleElement=Vs(void 0,e=>{e.className="monaco-colors",e.textContent=this._allCSS}),this._styleElements.push(this._globalStyleElement)),z.None}_registerShadowDomContainer(e){const t=Vs(e,i=>{i.className="monaco-colors",i.textContent=this._allCSS});return this._styleElements.push(t),{dispose:()=>{for(let i=0;i{i.base===e&&i.notifyBaseUpdated()}),this._theme.themeName===e&&this.setTheme(e)}getColorTheme(){return this._theme}setColorMapOverride(e){this._colorMapOverride=e,this._updateThemeOrColorMap()}setTheme(e){let t;this._knownThemes.has(e)?t=this._knownThemes.get(e):t=this._knownThemes.get(ec),this._updateActualTheme(t)}_updateActualTheme(e){!e||this._theme===e||(this._theme=e,this._updateThemeOrColorMap())}_onOSSchemeChanged(){if(this._autoDetectHighContrast){const e=_t.matchMedia("(forced-colors: active)").matches;if(e!==mc(this._theme.type)){let t;j0(this._theme.type)?t=e?Kf:ap:t=e?jf:ec,this._updateActualTheme(this._knownThemes.get(t))}}}setAutoDetectHighContrast(e){this._autoDetectHighContrast=e,this._onOSSchemeChanged()}_updateThemeOrColorMap(){const e=[],t={},i={addRule:r=>{t[r]||(e.push(r),t[r]=!0)}};gte.getThemingParticipants().forEach(r=>r(this._theme,i,this._environment));const n=[];for(const r of n8.getColors()){const a=this._theme.getColor(r.id,!0);a&&n.push(`${yT(r.id)}: ${a.toString()};`)}i.addRule(`.monaco-editor, .monaco-diff-editor, .monaco-component { ${n.join(` -`)} }`);const s=this._colorMapOverride||this._theme.tokenTheme.getColorMap();i.addRule(ote(s)),this._themeCSS=e.join(` -`),this._updateCSS(),si.setColorMap(s),this._onColorThemeChange.fire(this._theme)}_updateCSS(){this._allCSS=`${this._codiconCSS} -${this._themeCSS}`,this._styleElements.forEach(e=>e.textContent=this._allCSS)}getFileIconTheme(){return{hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!1}}getProductIconTheme(){return this._builtInProductIconTheme}}const zo=He("themeService");var pte=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},XS=function(o,e){return function(t,i){e(t,i,o)}};let JD=class extends z{constructor(e,t,i){super(),this._contextKeyService=e,this._layoutService=t,this._configurationService=i,this._accessibilitySupport=0,this._onDidChangeScreenReaderOptimized=new A,this._onDidChangeReducedMotion=new A,this._onDidChangeLinkUnderline=new A,this._accessibilityModeEnabledContext=RG.bindTo(this._contextKeyService);const n=()=>this._accessibilityModeEnabledContext.set(this.isScreenReaderOptimized());this._register(this._configurationService.onDidChangeConfiguration(r=>{r.affectsConfiguration("editor.accessibilitySupport")&&(n(),this._onDidChangeScreenReaderOptimized.fire()),r.affectsConfiguration("workbench.reduceMotion")&&(this._configMotionReduced=this._configurationService.getValue("workbench.reduceMotion"),this._onDidChangeReducedMotion.fire())})),n(),this._register(this.onDidChangeScreenReaderOptimized(()=>n()));const s=_t.matchMedia("(prefers-reduced-motion: reduce)");this._systemMotionReduced=s.matches,this._configMotionReduced=this._configurationService.getValue("workbench.reduceMotion"),this._linkUnderlinesEnabled=this._configurationService.getValue("accessibility.underlineLinks"),this.initReducedMotionListeners(s),this.initLinkUnderlineListeners()}initReducedMotionListeners(e){this._register(U(e,"change",()=>{this._systemMotionReduced=e.matches,this._configMotionReduced==="auto"&&this._onDidChangeReducedMotion.fire()}));const t=()=>{const i=this.isMotionReduced();this._layoutService.mainContainer.classList.toggle("reduce-motion",i),this._layoutService.mainContainer.classList.toggle("enable-motion",!i)};t(),this._register(this.onDidChangeReducedMotion(()=>t()))}initLinkUnderlineListeners(){this._register(this._configurationService.onDidChangeConfiguration(t=>{if(t.affectsConfiguration("accessibility.underlineLinks")){const i=this._configurationService.getValue("accessibility.underlineLinks");this._linkUnderlinesEnabled=i,this._onDidChangeLinkUnderline.fire()}}));const e=()=>{const t=this._linkUnderlinesEnabled;this._layoutService.mainContainer.classList.toggle("underline-links",t)};e(),this._register(this.onDidChangeLinkUnderlines(()=>e()))}onDidChangeLinkUnderlines(e){return this._onDidChangeLinkUnderline.event(e)}get onDidChangeScreenReaderOptimized(){return this._onDidChangeScreenReaderOptimized.event}isScreenReaderOptimized(){const e=this._configurationService.getValue("editor.accessibilitySupport");return e==="on"||e==="auto"&&this._accessibilitySupport===2}get onDidChangeReducedMotion(){return this._onDidChangeReducedMotion.event}isMotionReduced(){const e=this._configMotionReduced;return e==="on"||e==="auto"&&this._systemMotionReduced}getAccessibilitySupport(){return this._accessibilitySupport}};JD=pte([XS(0,De),XS(1,jc),XS(2,lt)],JD);var vy=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},la=function(o,e){return function(t,i){e(t,i,o)}},zu,Om;let eI=class{constructor(e,t,i){this._commandService=e,this._keybindingService=t,this._hiddenStates=new tI(i)}createMenu(e,t,i){return new bv(e,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...i},this._commandService,this._keybindingService,t)}getMenuActions(e,t,i){const n=new bv(e,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...i},this._commandService,this._keybindingService,t),s=n.getActions(i);return n.dispose(),s}resetHiddenStates(e){this._hiddenStates.reset(e)}};eI=vy([la(0,hi),la(1,vt),la(2,du)],eI);var lh;let tI=(lh=class{constructor(e){this._storageService=e,this._disposables=new X,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._ignoreChangeEvent=!1,this._hiddenByDefaultCache=new Map;try{const t=e.get(zu._key,0,"{}");this._data=JSON.parse(t)}catch{this._data=Object.create(null)}this._disposables.add(e.onDidChangeValue(0,zu._key,this._disposables)(()=>{if(!this._ignoreChangeEvent)try{const t=e.get(zu._key,0,"{}");this._data=JSON.parse(t)}catch(t){console.log("FAILED to read storage after UPDATE",t)}this._onDidChange.fire()}))}dispose(){this._onDidChange.dispose(),this._disposables.dispose()}_isHiddenByDefault(e,t){return this._hiddenByDefaultCache.get(`${e.id}/${t}`)??!1}setDefaultState(e,t,i){this._hiddenByDefaultCache.set(`${e.id}/${t}`,i)}isHidden(e,t){const i=this._isHiddenByDefault(e,t),n=this._data[e.id]?.includes(t)??!1;return i?!n:n}updateHidden(e,t,i){this._isHiddenByDefault(e,t)&&(i=!i);const s=this._data[e.id];if(i)s?s.indexOf(t)<0&&s.push(t):this._data[e.id]=[t];else if(s){const r=s.indexOf(t);r>=0&&JB(s,r),s.length===0&&delete this._data[e.id]}this._persist()}reset(e){if(e===void 0)this._data=Object.create(null),this._persist();else{for(const{id:t}of e)this._data[t]&&delete this._data[t];this._persist()}}_persist(){try{this._ignoreChangeEvent=!0;const e=JSON.stringify(this._data);this._storageService.store(zu._key,e,0,0)}finally{this._ignoreChangeEvent=!1}}},zu=lh,lh._key="menu.hiddenCommands",lh);tI=zu=vy([la(0,du)],tI);class lp{constructor(e,t){this._id=e,this._collectContextKeysForSubmenus=t,this._menuGroups=[],this._allMenuIds=new Set,this._structureContextKeys=new Set,this._preconditionContextKeys=new Set,this._toggledContextKeys=new Set,this.refresh()}get allMenuIds(){return this._allMenuIds}get structureContextKeys(){return this._structureContextKeys}get preconditionContextKeys(){return this._preconditionContextKeys}get toggledContextKeys(){return this._toggledContextKeys}refresh(){this._menuGroups.length=0,this._allMenuIds.clear(),this._structureContextKeys.clear(),this._preconditionContextKeys.clear(),this._toggledContextKeys.clear();const e=this._sort(Eo.getMenuItems(this._id));let t;for(const i of e){const n=i.group||"";(!t||t[0]!==n)&&(t=[n,[]],this._menuGroups.push(t)),t[1].push(i),this._collectContextKeysAndSubmenuIds(i)}this._allMenuIds.add(this._id)}_sort(e){return e}_collectContextKeysAndSubmenuIds(e){if(lp._fillInKbExprKeys(e.when,this._structureContextKeys),Rf(e)){if(e.command.precondition&&lp._fillInKbExprKeys(e.command.precondition,this._preconditionContextKeys),e.command.toggled){const t=e.command.toggled.condition||e.command.toggled;lp._fillInKbExprKeys(t,this._toggledContextKeys)}}else this._collectContextKeysForSubmenus&&(Eo.getMenuItems(e.submenu).forEach(this._collectContextKeysAndSubmenuIds,this),this._allMenuIds.add(e.submenu))}static _fillInKbExprKeys(e,t){if(e)for(const i of e.keys())t.add(i)}}let iI=Om=class extends lp{constructor(e,t,i,n,s,r){super(e,i),this._hiddenStates=t,this._commandService=n,this._keybindingService=s,this._contextKeyService=r,this.refresh()}createActionGroups(e){const t=[];for(const i of this._menuGroups){const[n,s]=i;let r;for(const a of s)if(this._contextKeyService.contextMatchesRules(a.when)){const l=Rf(a);l&&this._hiddenStates.setDefaultState(this._id,a.command.id,!!a.isHiddenByDefault);const c=_te(this._id,l?a.command:a,this._hiddenStates);if(l){const d=o8(this._commandService,this._keybindingService,a.command.id,a.when);(r??=[]).push(new so(a.command,a.alt,e,c,d,this._contextKeyService,this._commandService))}else{const d=new Om(a.submenu,this._hiddenStates,this._collectContextKeysForSubmenus,this._commandService,this._keybindingService,this._contextKeyService).createActionGroups(e),h=Gi.join(...d.map(u=>u[1]));h.length>0&&(r??=[]).push(new Zm(a,c,h))}}r&&r.length>0&&t.push([n,r])}return t}_sort(e){return e.sort(Om._compareMenuItems)}static _compareMenuItems(e,t){const i=e.group,n=t.group;if(i!==n){if(i){if(!n)return-1}else return 1;if(i==="navigation")return-1;if(n==="navigation")return 1;const a=i.localeCompare(n);if(a!==0)return a}const s=e.order||0,r=t.order||0;return sr?1:Om._compareTitles(Rf(e)?e.command.title:e.title,Rf(t)?t.command.title:t.title)}static _compareTitles(e,t){const i=typeof e=="string"?e:e.original,n=typeof t=="string"?t:t.original;return i.localeCompare(n)}};iI=Om=vy([la(3,hi),la(4,vt),la(5,De)],iI);let bv=class{constructor(e,t,i,n,s,r){this._disposables=new X,this._menuInfo=new iI(e,t,i.emitEventsForSubmenuChanges,n,s,r);const a=new ci(()=>{this._menuInfo.refresh(),this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!0,isToggleChange:!0})},i.eventDebounceDelay);this._disposables.add(a),this._disposables.add(Eo.onDidChangeMenu(h=>{for(const u of this._menuInfo.allMenuIds)if(h.has(u)){a.schedule();break}}));const l=this._disposables.add(new X),c=h=>{let u=!1,f=!1,g=!1;for(const p of h)if(u=u||p.isStructuralChange,f=f||p.isEnablementChange,g=g||p.isToggleChange,u&&f&&g)break;return{menu:this,isStructuralChange:u,isEnablementChange:f,isToggleChange:g}},d=()=>{l.add(r.onDidChangeContext(h=>{const u=h.affectsSome(this._menuInfo.structureContextKeys),f=h.affectsSome(this._menuInfo.preconditionContextKeys),g=h.affectsSome(this._menuInfo.toggledContextKeys);(u||f||g)&&this._onDidChange.fire({menu:this,isStructuralChange:u,isEnablementChange:f,isToggleChange:g})})),l.add(t.onDidChange(h=>{this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!1,isToggleChange:!1})}))};this._onDidChange=new Y5({onWillAddFirstListener:d,onDidRemoveLastListener:l.clear.bind(l),delay:i.eventDebounceDelay,merge:c}),this.onDidChange=this._onDidChange.event}getActions(e){return this._menuInfo.createActionGroups(e)}dispose(){this._disposables.dispose(),this._onDidChange.dispose()}};bv=vy([la(3,hi),la(4,vt),la(5,De)],bv);function _te(o,e,t){const i=hz(e)?e.submenu.id:e.id,n=typeof e.title=="string"?e.title:e.title.value,s=Mf({id:`hide/${o.id}/${i}`,label:m("hide.label","Hide '{0}'",n),run(){t.updateHidden(o,i,!0)}}),r=Mf({id:`toggle/${o.id}/${i}`,label:n,get checked(){return!t.isHidden(o,i)},run(){t.updateHidden(o,i,!!this.checked)}});return{hide:s,toggle:r,get isHidden(){return!r.checked}}}function o8(o,e,t,i=void 0,n=!0){return Mf({id:`configureKeybinding/${t}`,label:m("configure keybinding","Configure Keybinding"),enabled:n,run(){const r=!!!e.lookupKeybinding(t)&&i?i.serialize():void 0;o.executeCommand("workbench.action.openGlobalKeybindings",`@command:${t}`+(r?` +when:${r}`:""))}})}var bte=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},hO=function(o,e){return function(t,i){e(t,i,o)}},nI;const uO="application/vnd.code.resources";var ch;let sI=(ch=class extends z{constructor(e,t){super(),this.layoutService=e,this.logService=t,this.mapTextToType=new Map,this.findText="",this.resources=[],this.resourcesStateHash=void 0,(Ac||bF)&&this.installWebKitWriteTextWorkaround(),this._register(J.runAndSubscribe(T0,({window:i,disposables:n})=>{n.add(U(i.document,"copy",()=>this.clearResourcesState()))},{window:_t,disposables:this._store}))}installWebKitWriteTextWorkaround(){const e=()=>{const t=new qN;this.webKitPendingClipboardWritePromise&&!this.webKitPendingClipboardWritePromise.isSettled&&this.webKitPendingClipboardWritePromise.cancel(),this.webKitPendingClipboardWritePromise=t,km().navigator.clipboard.write([new ClipboardItem({"text/plain":t.p})]).catch(async i=>{(!(i instanceof Error)||i.name!=="NotAllowedError"||!t.isRejected)&&this.logService.error(i)})};this._register(J.runAndSubscribe(this.layoutService.onDidAddContainer,({container:t,disposables:i})=>{i.add(U(t,"click",e)),i.add(U(t,"keydown",e))},{container:this.layoutService.mainContainer,disposables:this._store}))}async writeText(e,t){if(this.clearResourcesState(),t){this.mapTextToType.set(t,e);return}if(this.webKitPendingClipboardWritePromise)return this.webKitPendingClipboardWritePromise.complete(e);try{return await km().navigator.clipboard.writeText(e)}catch(i){console.error(i)}this.fallbackWriteText(e)}fallbackWriteText(e){const t=JN(),i=t.activeElement,n=t.body.appendChild(ce("textarea",{"aria-hidden":!0}));n.style.height="1px",n.style.width="1px",n.style.position="absolute",n.value=e,n.focus(),n.select(),t.execCommand("copy"),Ei(i)&&i.focus(),n.remove()}async readText(e){if(e)return this.mapTextToType.get(e)||"";try{return await km().navigator.clipboard.readText()}catch(t){console.error(t)}return""}async readFindText(){return this.findText}async writeFindText(e){this.findText=e}async readResources(){try{const t=await km().navigator.clipboard.read();for(const i of t)if(i.types.includes(`web ${uO}`)){const n=await i.getType(`web ${uO}`);return JSON.parse(await n.text()).map(r=>ve.from(r))}}catch{}const e=await this.computeResourcesStateHash();return this.resourcesStateHash!==e&&this.clearResourcesState(),this.resources}async computeResourcesStateHash(){if(this.resources.length===0)return;const e=await this.readText();return ZN(e.substring(0,nI.MAX_RESOURCE_STATE_SOURCE_LENGTH))}clearInternalState(){this.clearResourcesState()}clearResourcesState(){this.resources=[],this.resourcesStateHash=void 0}},nI=ch,ch.MAX_RESOURCE_STATE_SOURCE_LENGTH=1e3,ch);sI=nI=bte([hO(0,jc),hO(1,gs)],sI);const wy=He("clipboardService");var Cte=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vte=function(o,e){return function(t,i){e(t,i,o)}};const cp="data-keybinding-context";let A2=class{constructor(e,t){this._id=e,this._parent=t,this._value=Object.create(null),this._value._contextId=e}get value(){return{...this._value}}setValue(e,t){return this._value[e]!==t?(this._value[e]=t,!0):!1}removeValue(e){return e in this._value?(delete this._value[e],!0):!1}getValue(e){const t=this._value[e];return typeof t>"u"&&this._parent?this._parent.getValue(e):t}};const jw=class jw extends A2{constructor(){super(-1,null)}setValue(e,t){return!1}removeValue(e){return!1}getValue(e){}};jw.INSTANCE=new jw;let Lg=jw;const Mp=class Mp extends A2{constructor(e,t,i){super(e,null),this._configurationService=t,this._values=Bf.forConfigKeys(),this._listener=this._configurationService.onDidChangeConfiguration(n=>{if(n.source===7){const s=Array.from(this._values,([r])=>r);this._values.clear(),i.fire(new gO(s))}else{const s=[];for(const r of n.affectedKeys){const a=`config.${r}`,l=this._values.findSuperstr(a);l!==void 0&&(s.push(...st.map(l,([c])=>c)),this._values.deleteSuperstr(a)),this._values.has(a)&&(s.push(a),this._values.delete(a))}i.fire(new gO(s))}})}dispose(){this._listener.dispose()}getValue(e){if(e.indexOf(Mp._keyPrefix)!==0)return super.getValue(e);if(this._values.has(e))return this._values.get(e);const t=e.substr(Mp._keyPrefix.length),i=this._configurationService.getValue(t);let n;switch(typeof i){case"number":case"boolean":case"string":n=i;break;default:Array.isArray(i)?n=JSON.stringify(i):n=i}return this._values.set(e,n),n}setValue(e,t){return super.setValue(e,t)}removeValue(e){return super.removeValue(e)}};Mp._keyPrefix="config.";let oI=Mp;class wte{constructor(e,t,i){this._service=e,this._key=t,this._defaultValue=i,this.reset()}set(e){this._service.setContext(this._key,e)}reset(){typeof this._defaultValue>"u"?this._service.removeContext(this._key):this._service.setContext(this._key,this._defaultValue)}get(){return this._service.getContextKeyValue(this._key)}}class fO{constructor(e){this.key=e}affectsSome(e){return e.has(this.key)}allKeysContainedIn(e){return this.affectsSome(e)}}class gO{constructor(e){this.keys=e}affectsSome(e){for(const t of this.keys)if(e.has(t))return!0;return!1}allKeysContainedIn(e){return this.keys.every(t=>e.has(t))}}class yte{constructor(e){this.events=e}affectsSome(e){for(const t of this.events)if(t.affectsSome(e))return!0;return!1}allKeysContainedIn(e){return this.events.every(t=>t.allKeysContainedIn(e))}}function Ste(o,e){return o.allKeysContainedIn(new Set(Object.keys(e)))}class r8 extends z{constructor(e){super(),this._onDidChangeContext=this._register(new Nh({merge:t=>new yte(t)})),this.onDidChangeContext=this._onDidChangeContext.event,this._isDisposed=!1,this._myContextId=e}createKey(e,t){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new wte(this,e,t)}bufferChangeEvents(e){this._onDidChangeContext.pause();try{e()}finally{this._onDidChangeContext.resume()}}createScoped(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new Lte(this,e)}contextMatchesRules(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");const t=this.getContextValuesContainer(this._myContextId);return e?e.evaluate(t):!0}getContextKeyValue(e){if(!this._isDisposed)return this.getContextValuesContainer(this._myContextId).getValue(e)}setContext(e,t){if(this._isDisposed)return;const i=this.getContextValuesContainer(this._myContextId);i&&i.setValue(e,t)&&this._onDidChangeContext.fire(new fO(e))}removeContext(e){this._isDisposed||this.getContextValuesContainer(this._myContextId).removeValue(e)&&this._onDidChangeContext.fire(new fO(e))}getContext(e){return this._isDisposed?Lg.INSTANCE:this.getContextValuesContainer(xte(e))}dispose(){super.dispose(),this._isDisposed=!0}}let rI=class extends r8{constructor(e){super(0),this._contexts=new Map,this._lastContextId=0;const t=this._register(new oI(this._myContextId,e,this._onDidChangeContext));this._contexts.set(this._myContextId,t)}getContextValuesContainer(e){return this._isDisposed?Lg.INSTANCE:this._contexts.get(e)||Lg.INSTANCE}createChildContext(e=this._myContextId){if(this._isDisposed)throw new Error("ContextKeyService has been disposed");const t=++this._lastContextId;return this._contexts.set(t,new A2(t,this.getContextValuesContainer(e))),t}disposeContext(e){this._isDisposed||this._contexts.delete(e)}};rI=Cte([vte(0,lt)],rI);class Lte extends r8{constructor(e,t){if(super(e.createChildContext()),this._parentChangeListener=this._register(new Dn),this._parent=e,this._updateParentChangeListener(),this._domNode=t,this._domNode.hasAttribute(cp)){let i="";this._domNode.classList&&(i=Array.from(this._domNode.classList.values()).join(", ")),console.error(`Element already has context attribute${i?": "+i:""}`)}this._domNode.setAttribute(cp,String(this._myContextId))}_updateParentChangeListener(){this._parentChangeListener.value=this._parent.onDidChangeContext(e=>{const i=this._parent.getContextValuesContainer(this._myContextId).value;Ste(e,i)||this._onDidChangeContext.fire(e)})}dispose(){this._isDisposed||(this._parent.disposeContext(this._myContextId),this._domNode.removeAttribute(cp),super.dispose())}getContextValuesContainer(e){return this._isDisposed?Lg.INSTANCE:this._parent.getContextValuesContainer(e)}createChildContext(e=this._myContextId){if(this._isDisposed)throw new Error("ScopedContextKeyService has been disposed");return this._parent.createChildContext(e)}disposeContext(e){this._isDisposed||this._parent.disposeContext(e)}}function xte(o){for(;o;){if(o.hasAttribute(cp)){const e=o.getAttribute(cp);return e?parseInt(e,10):NaN}o=o.parentElement}return 0}function kte(o,e,t){o.get(De).createKey(String(e),Dte(t))}function Dte(o){return O5(o,e=>{if(typeof e=="object"&&e.$mid===1)return ve.revive(e).toString();if(e instanceof ve)return e.toString()})}bt.registerCommand("_setContext",kte);bt.registerCommand({id:"getContextKeyInfo",handler(){return[...le.all()].sort((o,e)=>o.key.localeCompare(e.key))},metadata:{description:m("getContextKeyInfo","A command that returns information about context keys"),args:[]}});bt.registerCommand("_generateContextKeyInfo",function(){const o=[],e=new Set;for(const t of le.all())e.has(t.key)||(e.add(t.key),o.push(t));o.sort((t,i)=>t.key.localeCompare(i.key)),console.log(JSON.stringify(o,void 0,2))});let Ite=class{constructor(e,t){this.key=e,this.data=t,this.incoming=new Map,this.outgoing=new Map}};class mO{constructor(e){this._hashFn=e,this._nodes=new Map}roots(){const e=[];for(const t of this._nodes.values())t.outgoing.size===0&&e.push(t);return e}insertEdge(e,t){const i=this.lookupOrInsertNode(e),n=this.lookupOrInsertNode(t);i.outgoing.set(n.key,n),n.incoming.set(i.key,i)}removeNode(e){const t=this._hashFn(e);this._nodes.delete(t);for(const i of this._nodes.values())i.outgoing.delete(t),i.incoming.delete(t)}lookupOrInsertNode(e){const t=this._hashFn(e);let i=this._nodes.get(t);return i||(i=new Ite(t,e),this._nodes.set(t,i)),i}isEmpty(){return this._nodes.size===0}toString(){const e=[];for(const[t,i]of this._nodes)e.push(`${t} - (-> incoming)[${[...i.incoming.keys()].join(", ")}] - (outgoing ->)[${[...i.outgoing.keys()].join(",")}] -`);return e.join(` -`)}findCycleSlow(){for(const[e,t]of this._nodes){const i=new Set([e]),n=this._findCycle(t,i);if(n)return n}}_findCycle(e,t){for(const[i,n]of e.outgoing){if(t.has(i))return[...t,i].join(" -> ");t.add(i);const s=this._findCycle(n,t);if(s)return s;t.delete(i)}}}class jg{constructor(...e){this._entries=new Map;for(const[t,i]of e)this.set(t,i)}set(e,t){const i=this._entries.get(e);return this._entries.set(e,t),i}get(e){return this._entries.get(e)}}const Ete=!1;class pO extends Error{constructor(e){super("cyclic dependency between services"),this.message=e.findCycleSlow()??`UNABLE to detect cycle, dumping graph: -${e.toString()}`}}class Cv{constructor(e=new jg,t=!1,i,n=Ete){this._services=e,this._strict=t,this._parent=i,this._enableTracing=n,this._isDisposed=!1,this._servicesToMaybeDispose=new Set,this._children=new Set,this._activeInstantiations=new Set,this._services.set(ke,this),this._globalGraph=n?i?._globalGraph??new mO(s=>s):void 0}dispose(){if(!this._isDisposed){this._isDisposed=!0,xt(this._children),this._children.clear();for(const e of this._servicesToMaybeDispose)MN(e)&&e.dispose();this._servicesToMaybeDispose.clear()}}_throwIfDisposed(){if(this._isDisposed)throw new Error("InstantiationService has been disposed")}createChild(e,t){this._throwIfDisposed();const i=this,n=new class extends Cv{dispose(){i._children.delete(n),super.dispose()}}(e,this._strict,this,this._enableTracing);return this._children.add(n),t?.add(n),n}invokeFunction(e,...t){this._throwIfDisposed();const i=dp.traceInvocation(this._enableTracing,e);let n=!1;try{return e({get:r=>{if(n)throw TN("service accessor is only valid during the invocation of its target method");const a=this._getOrCreateServiceInstance(r,i);if(!a)throw new Error(`[invokeFunction] unknown service '${r}'`);return a}},...t)}finally{n=!0,i.stop()}}createInstance(e,...t){this._throwIfDisposed();let i,n;return e instanceof Gr?(i=dp.traceCreation(this._enableTracing,e.ctor),n=this._createInstance(e.ctor,e.staticArguments.concat(t),i)):(i=dp.traceCreation(this._enableTracing,e),n=this._createInstance(e,t,i)),i.stop(),n}_createInstance(e,t=[],i){const n=fr.getServiceDependencies(e).sort((a,l)=>a.index-l.index),s=[];for(const a of n){const l=this._getOrCreateServiceInstance(a.id,i);l||this._throwIfStrict(`[createInstance] ${e.name} depends on UNKNOWN service ${a.id}.`,!1),s.push(l)}const r=n.length>0?n[0].index:t.length;if(t.length!==r){console.trace(`[createInstance] First service dependency of ${e.name} at position ${r+1} conflicts with ${t.length} static arguments`);const a=r-t.length;a>0?t=t.concat(new Array(a)):t=t.slice(0,r)}return Reflect.construct(e,t.concat(s))}_setCreatedServiceInstance(e,t){if(this._services.get(e)instanceof Gr)this._services.set(e,t);else if(this._parent)this._parent._setCreatedServiceInstance(e,t);else throw new Error("illegalState - setting UNKNOWN service instance")}_getServiceInstanceOrDescriptor(e){const t=this._services.get(e);return!t&&this._parent?this._parent._getServiceInstanceOrDescriptor(e):t}_getOrCreateServiceInstance(e,t){this._globalGraph&&this._globalGraphImplicitDependency&&this._globalGraph.insertEdge(this._globalGraphImplicitDependency,String(e));const i=this._getServiceInstanceOrDescriptor(e);return i instanceof Gr?this._safeCreateAndCacheServiceInstance(e,i,t.branch(e,!0)):(t.branch(e,!1),i)}_safeCreateAndCacheServiceInstance(e,t,i){if(this._activeInstantiations.has(e))throw new Error(`illegal state - RECURSIVELY instantiating service '${e}'`);this._activeInstantiations.add(e);try{return this._createAndCacheServiceInstance(e,t,i)}finally{this._activeInstantiations.delete(e)}}_createAndCacheServiceInstance(e,t,i){const n=new mO(l=>l.id.toString());let s=0;const r=[{id:e,desc:t,_trace:i}],a=new Set;for(;r.length;){const l=r.pop();if(!a.has(String(l.id))){if(a.add(String(l.id)),n.lookupOrInsertNode(l),s++>1e3)throw new pO(n);for(const c of fr.getServiceDependencies(l.desc.ctor)){const d=this._getServiceInstanceOrDescriptor(c.id);if(d||this._throwIfStrict(`[createInstance] ${e} depends on ${c.id} which is NOT registered.`,!0),this._globalGraph?.insertEdge(String(l.id),String(c.id)),d instanceof Gr){const h={id:c.id,desc:d,_trace:l._trace.branch(c.id,!0)};n.insertEdge(l,h),r.push(h)}}}}for(;;){const l=n.roots();if(l.length===0){if(!n.isEmpty())throw new pO(n);break}for(const{data:c}of l){if(this._getServiceInstanceOrDescriptor(c.id)instanceof Gr){const h=this._createServiceInstanceWithOwner(c.id,c.desc.ctor,c.desc.staticArguments,c.desc.supportsDelayedInstantiation,c._trace);this._setCreatedServiceInstance(c.id,h)}n.removeNode(c)}}return this._getServiceInstanceOrDescriptor(e)}_createServiceInstanceWithOwner(e,t,i=[],n,s){if(this._services.get(e)instanceof Gr)return this._createServiceInstance(e,t,i,n,s,this._servicesToMaybeDispose);if(this._parent)return this._parent._createServiceInstanceWithOwner(e,t,i,n,s);throw new Error(`illegalState - creating UNKNOWN service instance ${t.name}`)}_createServiceInstance(e,t,i=[],n,s,r){if(n){const a=new Cv(void 0,this._strict,this,this._enableTracing);a._globalGraphImplicitDependency=String(e);const l=new Map,c=new PH(()=>{const d=a._createInstance(t,i,s);for(const[h,u]of l){const f=d[h];if(typeof f=="function")for(const g of u)g.disposable=f.apply(d,g.listener)}return l.clear(),r.add(d),d});return new Proxy(Object.create(null),{get(d,h){if(!c.isInitialized&&typeof h=="string"&&(h.startsWith("onDid")||h.startsWith("onWill"))){let g=l.get(h);return g||(g=new yn,l.set(h,g)),(_,b,C)=>{if(c.isInitialized)return c.value[h](_,b,C);{const w={listener:[_,b,C],disposable:void 0},v=g.push(w);return _e(()=>{v(),w.disposable?.dispose()})}}}if(h in d)return d[h];const u=c.value;let f=u[h];return typeof f!="function"||(f=f.bind(u),d[h]=f),f},set(d,h,u){return c.value[h]=u,!0},getPrototypeOf(d){return t.prototype}})}else{const a=this._createInstance(t,i,s);return r.add(a),a}}_throwIfStrict(e,t){if(t&&console.warn(e),this._strict)throw new Error(e)}}const ws=class ws{static traceInvocation(e,t){return e?new ws(2,t.name||new Error().stack.split(` -`).slice(3,4).join(` -`)):ws._None}static traceCreation(e,t){return e?new ws(1,t.name):ws._None}constructor(e,t){this.type=e,this.name=t,this._start=Date.now(),this._dep=[]}branch(e,t){const i=new ws(3,e.toString());return this._dep.push([e,t,i]),i}stop(){const e=Date.now()-this._start;ws._totals+=e;let t=!1;function i(s,r){const a=[],l=new Array(s+1).join(" ");for(const[c,d,h]of r._dep)if(d&&h){t=!0,a.push(`${l}CREATES -> ${c}`);const u=i(s+1,h);u&&a.push(u)}else a.push(`${l}uses -> ${c}`);return a.join(` -`)}const n=[`${this.type===1?"CREATE":"CALL"} ${this.name}`,`${i(1,this)}`,`DONE, took ${e.toFixed(2)}ms (grand total ${ws._totals.toFixed(2)}ms)`];(e>2||t)&&ws.all.add(n.join(` -`))}};ws.all=new Set,ws._None=new class extends ws{constructor(){super(0,null)}stop(){}branch(){return this}},ws._totals=0;let dp=ws;const Nte=new Set([Te.inMemory,Te.vscodeSourceControl,Te.walkThrough,Te.walkThroughSnippet,Te.vscodeChatCodeBlock]);class Tte{constructor(){this._byResource=new cs,this._byOwner=new Map}set(e,t,i){let n=this._byResource.get(e);n||(n=new Map,this._byResource.set(e,n)),n.set(t,i);let s=this._byOwner.get(t);s||(s=new cs,this._byOwner.set(t,s)),s.set(e,i)}get(e,t){return this._byResource.get(e)?.get(t)}delete(e,t){let i=!1,n=!1;const s=this._byResource.get(e);s&&(i=s.delete(t));const r=this._byOwner.get(t);if(r&&(n=r.delete(e)),i!==n)throw new Error("illegal state");return i&&n}values(e){return typeof e=="string"?this._byOwner.get(e)?.values()??st.empty():ve.isUri(e)?this._byResource.get(e)?.values()??st.empty():st.map(st.concat(...this._byOwner.values()),t=>t[1])}}class Mte{constructor(e){this.errors=0,this.infos=0,this.warnings=0,this.unknowns=0,this._data=new cs,this._service=e,this._subscription=e.onMarkerChanged(this._update,this)}dispose(){this._subscription.dispose()}_update(e){for(const t of e){const i=this._data.get(t);i&&this._substract(i);const n=this._resourceStats(t);this._add(n),this._data.set(t,n)}}_resourceStats(e){const t={errors:0,warnings:0,infos:0,unknowns:0};if(Nte.has(e.scheme))return t;for(const{severity:i}of this._service.read({resource:e}))i===Vt.Error?t.errors+=1:i===Vt.Warning?t.warnings+=1:i===Vt.Info?t.infos+=1:t.unknowns+=1;return t}_substract(e){this.errors-=e.errors,this.warnings-=e.warnings,this.infos-=e.infos,this.unknowns-=e.unknowns}_add(e){this.errors+=e.errors,this.warnings+=e.warnings,this.infos+=e.infos,this.unknowns+=e.unknowns}}class Gl{constructor(){this._onMarkerChanged=new Y5({delay:0,merge:Gl._merge}),this.onMarkerChanged=this._onMarkerChanged.event,this._data=new Tte,this._stats=new Mte(this)}dispose(){this._stats.dispose(),this._onMarkerChanged.dispose()}remove(e,t){for(const i of t||[])this.changeOne(e,i,[])}changeOne(e,t,i){if(N5(i))this._data.delete(t,e)&&this._onMarkerChanged.fire([t]);else{const n=[];for(const s of i){const r=Gl._toMarker(e,t,s);r&&n.push(r)}this._data.set(t,e,n),this._onMarkerChanged.fire([t])}}static _toMarker(e,t,i){let{code:n,severity:s,message:r,source:a,startLineNumber:l,startColumn:c,endLineNumber:d,endColumn:h,relatedInformation:u,tags:f}=i;if(r)return l=l>0?l:1,c=c>0?c:1,d=d>=l?d:l,h=h>0?h:c,{resource:t,owner:e,code:n,severity:s,message:r,source:a,startLineNumber:l,startColumn:c,endLineNumber:d,endColumn:h,relatedInformation:u,tags:f}}changeAll(e,t){const i=[],n=this._data.values(e);if(n)for(const s of n){const r=st.first(s);r&&(i.push(r.resource),this._data.delete(r.resource,e))}if(Ps(t)){const s=new cs;for(const{resource:r,marker:a}of t){const l=Gl._toMarker(e,r,a);if(!l)continue;const c=s.get(r);c?c.push(l):(s.set(r,[l]),i.push(r))}for(const[r,a]of s)this._data.set(r,e,a)}i.length>0&&this._onMarkerChanged.fire(i)}read(e=Object.create(null)){let{owner:t,resource:i,severities:n,take:s}=e;if((!s||s<0)&&(s=-1),t&&i){const r=this._data.get(i,t);if(r){const a=[];for(const l of r)if(Gl._accept(l,n)){const c=a.push(l);if(s>0&&c===s)break}return a}else return[]}else if(!t&&!i){const r=[];for(const a of this._data.values())for(const l of a)if(Gl._accept(l,n)){const c=r.push(l);if(s>0&&c===s)return r}return r}else{const r=this._data.values(i??t),a=[];for(const l of r)for(const c of l)if(Gl._accept(c,n)){const d=a.push(c);if(s>0&&d===s)return a}return a}}static _accept(e,t){return t===void 0||(t&e.severity)===e.severity}static _merge(e){const t=new cs;for(const i of e)for(const n of i)t.set(n,!0);return Array.from(t.keys())}}class Rte extends z{get configurationModel(){return this._configurationModel}constructor(e){super(),this.logService=e,this._configurationModel=Pi.createEmptyModel(this.logService)}reload(){return this.resetConfigurationModel(),this.configurationModel}getConfigurationDefaultOverrides(){return{}}resetConfigurationModel(){this._configurationModel=Pi.createEmptyModel(this.logService);const e=Bi.as(su.Configuration).getConfigurationProperties();this.updateConfigurationModel(Object.keys(e),e)}updateConfigurationModel(e,t){const i=this.getConfigurationDefaultOverrides();for(const n of e){const s=i[n],r=t[n];s!==void 0?this._configurationModel.setValue(n,s):r?this._configurationModel.setValue(n,r.default):this._configurationModel.removeValue(n)}}}const rb=He("accessibilitySignalService"),et=class et{static register(e){return new et(e.fileName)}constructor(e){this.fileName=e}};et.error=et.register({fileName:"error.mp3"}),et.warning=et.register({fileName:"warning.mp3"}),et.success=et.register({fileName:"success.mp3"}),et.foldedArea=et.register({fileName:"foldedAreas.mp3"}),et.break=et.register({fileName:"break.mp3"}),et.quickFixes=et.register({fileName:"quickFixes.mp3"}),et.taskCompleted=et.register({fileName:"taskCompleted.mp3"}),et.taskFailed=et.register({fileName:"taskFailed.mp3"}),et.terminalBell=et.register({fileName:"terminalBell.mp3"}),et.diffLineInserted=et.register({fileName:"diffLineInserted.mp3"}),et.diffLineDeleted=et.register({fileName:"diffLineDeleted.mp3"}),et.diffLineModified=et.register({fileName:"diffLineModified.mp3"}),et.chatRequestSent=et.register({fileName:"chatRequestSent.mp3"}),et.chatResponseReceived1=et.register({fileName:"chatResponseReceived1.mp3"}),et.chatResponseReceived2=et.register({fileName:"chatResponseReceived2.mp3"}),et.chatResponseReceived3=et.register({fileName:"chatResponseReceived3.mp3"}),et.chatResponseReceived4=et.register({fileName:"chatResponseReceived4.mp3"}),et.clear=et.register({fileName:"clear.mp3"}),et.save=et.register({fileName:"save.mp3"}),et.format=et.register({fileName:"format.mp3"}),et.voiceRecordingStarted=et.register({fileName:"voiceRecordingStarted.mp3"}),et.voiceRecordingStopped=et.register({fileName:"voiceRecordingStopped.mp3"}),et.progress=et.register({fileName:"progress.mp3"});let At=et;class Ate{constructor(e){this.randomOneOf=e}}const Me=class Me{constructor(e,t,i,n,s,r){this.sound=e,this.name=t,this.legacySoundSettingsKey=i,this.settingsKey=n,this.legacyAnnouncementSettingsKey=s,this.announcementMessage=r}static register(e){const t=new Ate("randomOneOf"in e.sound?e.sound.randomOneOf:[e.sound]),i=new Me(t,e.name,e.legacySoundSettingsKey,e.settingsKey,e.legacyAnnouncementSettingsKey,e.announcementMessage);return Me._signals.add(i),i}};Me._signals=new Set,Me.errorAtPosition=Me.register({name:m("accessibilitySignals.positionHasError.name","Error at Position"),sound:At.error,announcementMessage:m("accessibility.signals.positionHasError","Error"),settingsKey:"accessibility.signals.positionHasError",delaySettingsKey:"accessibility.signalOptions.delays.errorAtPosition"}),Me.warningAtPosition=Me.register({name:m("accessibilitySignals.positionHasWarning.name","Warning at Position"),sound:At.warning,announcementMessage:m("accessibility.signals.positionHasWarning","Warning"),settingsKey:"accessibility.signals.positionHasWarning",delaySettingsKey:"accessibility.signalOptions.delays.warningAtPosition"}),Me.errorOnLine=Me.register({name:m("accessibilitySignals.lineHasError.name","Error on Line"),sound:At.error,legacySoundSettingsKey:"audioCues.lineHasError",legacyAnnouncementSettingsKey:"accessibility.alert.error",announcementMessage:m("accessibility.signals.lineHasError","Error on Line"),settingsKey:"accessibility.signals.lineHasError"}),Me.warningOnLine=Me.register({name:m("accessibilitySignals.lineHasWarning.name","Warning on Line"),sound:At.warning,legacySoundSettingsKey:"audioCues.lineHasWarning",legacyAnnouncementSettingsKey:"accessibility.alert.warning",announcementMessage:m("accessibility.signals.lineHasWarning","Warning on Line"),settingsKey:"accessibility.signals.lineHasWarning"}),Me.foldedArea=Me.register({name:m("accessibilitySignals.lineHasFoldedArea.name","Folded Area on Line"),sound:At.foldedArea,legacySoundSettingsKey:"audioCues.lineHasFoldedArea",legacyAnnouncementSettingsKey:"accessibility.alert.foldedArea",announcementMessage:m("accessibility.signals.lineHasFoldedArea","Folded"),settingsKey:"accessibility.signals.lineHasFoldedArea"}),Me.break=Me.register({name:m("accessibilitySignals.lineHasBreakpoint.name","Breakpoint on Line"),sound:At.break,legacySoundSettingsKey:"audioCues.lineHasBreakpoint",legacyAnnouncementSettingsKey:"accessibility.alert.breakpoint",announcementMessage:m("accessibility.signals.lineHasBreakpoint","Breakpoint"),settingsKey:"accessibility.signals.lineHasBreakpoint"}),Me.inlineSuggestion=Me.register({name:m("accessibilitySignals.lineHasInlineSuggestion.name","Inline Suggestion on Line"),sound:At.quickFixes,legacySoundSettingsKey:"audioCues.lineHasInlineSuggestion",settingsKey:"accessibility.signals.lineHasInlineSuggestion"}),Me.terminalQuickFix=Me.register({name:m("accessibilitySignals.terminalQuickFix.name","Terminal Quick Fix"),sound:At.quickFixes,legacySoundSettingsKey:"audioCues.terminalQuickFix",legacyAnnouncementSettingsKey:"accessibility.alert.terminalQuickFix",announcementMessage:m("accessibility.signals.terminalQuickFix","Quick Fix"),settingsKey:"accessibility.signals.terminalQuickFix"}),Me.onDebugBreak=Me.register({name:m("accessibilitySignals.onDebugBreak.name","Debugger Stopped on Breakpoint"),sound:At.break,legacySoundSettingsKey:"audioCues.onDebugBreak",legacyAnnouncementSettingsKey:"accessibility.alert.onDebugBreak",announcementMessage:m("accessibility.signals.onDebugBreak","Breakpoint"),settingsKey:"accessibility.signals.onDebugBreak"}),Me.noInlayHints=Me.register({name:m("accessibilitySignals.noInlayHints","No Inlay Hints on Line"),sound:At.error,legacySoundSettingsKey:"audioCues.noInlayHints",legacyAnnouncementSettingsKey:"accessibility.alert.noInlayHints",announcementMessage:m("accessibility.signals.noInlayHints","No Inlay Hints"),settingsKey:"accessibility.signals.noInlayHints"}),Me.taskCompleted=Me.register({name:m("accessibilitySignals.taskCompleted","Task Completed"),sound:At.taskCompleted,legacySoundSettingsKey:"audioCues.taskCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.taskCompleted",announcementMessage:m("accessibility.signals.taskCompleted","Task Completed"),settingsKey:"accessibility.signals.taskCompleted"}),Me.taskFailed=Me.register({name:m("accessibilitySignals.taskFailed","Task Failed"),sound:At.taskFailed,legacySoundSettingsKey:"audioCues.taskFailed",legacyAnnouncementSettingsKey:"accessibility.alert.taskFailed",announcementMessage:m("accessibility.signals.taskFailed","Task Failed"),settingsKey:"accessibility.signals.taskFailed"}),Me.terminalCommandFailed=Me.register({name:m("accessibilitySignals.terminalCommandFailed","Terminal Command Failed"),sound:At.error,legacySoundSettingsKey:"audioCues.terminalCommandFailed",legacyAnnouncementSettingsKey:"accessibility.alert.terminalCommandFailed",announcementMessage:m("accessibility.signals.terminalCommandFailed","Command Failed"),settingsKey:"accessibility.signals.terminalCommandFailed"}),Me.terminalCommandSucceeded=Me.register({name:m("accessibilitySignals.terminalCommandSucceeded","Terminal Command Succeeded"),sound:At.success,announcementMessage:m("accessibility.signals.terminalCommandSucceeded","Command Succeeded"),settingsKey:"accessibility.signals.terminalCommandSucceeded"}),Me.terminalBell=Me.register({name:m("accessibilitySignals.terminalBell","Terminal Bell"),sound:At.terminalBell,legacySoundSettingsKey:"audioCues.terminalBell",legacyAnnouncementSettingsKey:"accessibility.alert.terminalBell",announcementMessage:m("accessibility.signals.terminalBell","Terminal Bell"),settingsKey:"accessibility.signals.terminalBell"}),Me.notebookCellCompleted=Me.register({name:m("accessibilitySignals.notebookCellCompleted","Notebook Cell Completed"),sound:At.taskCompleted,legacySoundSettingsKey:"audioCues.notebookCellCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellCompleted",announcementMessage:m("accessibility.signals.notebookCellCompleted","Notebook Cell Completed"),settingsKey:"accessibility.signals.notebookCellCompleted"}),Me.notebookCellFailed=Me.register({name:m("accessibilitySignals.notebookCellFailed","Notebook Cell Failed"),sound:At.taskFailed,legacySoundSettingsKey:"audioCues.notebookCellFailed",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellFailed",announcementMessage:m("accessibility.signals.notebookCellFailed","Notebook Cell Failed"),settingsKey:"accessibility.signals.notebookCellFailed"}),Me.diffLineInserted=Me.register({name:m("accessibilitySignals.diffLineInserted","Diff Line Inserted"),sound:At.diffLineInserted,legacySoundSettingsKey:"audioCues.diffLineInserted",settingsKey:"accessibility.signals.diffLineInserted"}),Me.diffLineDeleted=Me.register({name:m("accessibilitySignals.diffLineDeleted","Diff Line Deleted"),sound:At.diffLineDeleted,legacySoundSettingsKey:"audioCues.diffLineDeleted",settingsKey:"accessibility.signals.diffLineDeleted"}),Me.diffLineModified=Me.register({name:m("accessibilitySignals.diffLineModified","Diff Line Modified"),sound:At.diffLineModified,legacySoundSettingsKey:"audioCues.diffLineModified",settingsKey:"accessibility.signals.diffLineModified"}),Me.chatRequestSent=Me.register({name:m("accessibilitySignals.chatRequestSent","Chat Request Sent"),sound:At.chatRequestSent,legacySoundSettingsKey:"audioCues.chatRequestSent",legacyAnnouncementSettingsKey:"accessibility.alert.chatRequestSent",announcementMessage:m("accessibility.signals.chatRequestSent","Chat Request Sent"),settingsKey:"accessibility.signals.chatRequestSent"}),Me.chatResponseReceived=Me.register({name:m("accessibilitySignals.chatResponseReceived","Chat Response Received"),legacySoundSettingsKey:"audioCues.chatResponseReceived",sound:{randomOneOf:[At.chatResponseReceived1,At.chatResponseReceived2,At.chatResponseReceived3,At.chatResponseReceived4]},settingsKey:"accessibility.signals.chatResponseReceived"}),Me.progress=Me.register({name:m("accessibilitySignals.progress","Progress"),sound:At.progress,legacySoundSettingsKey:"audioCues.chatResponsePending",legacyAnnouncementSettingsKey:"accessibility.alert.progress",announcementMessage:m("accessibility.signals.progress","Progress"),settingsKey:"accessibility.signals.progress"}),Me.clear=Me.register({name:m("accessibilitySignals.clear","Clear"),sound:At.clear,legacySoundSettingsKey:"audioCues.clear",legacyAnnouncementSettingsKey:"accessibility.alert.clear",announcementMessage:m("accessibility.signals.clear","Clear"),settingsKey:"accessibility.signals.clear"}),Me.save=Me.register({name:m("accessibilitySignals.save","Save"),sound:At.save,legacySoundSettingsKey:"audioCues.save",legacyAnnouncementSettingsKey:"accessibility.alert.save",announcementMessage:m("accessibility.signals.save","Save"),settingsKey:"accessibility.signals.save"}),Me.format=Me.register({name:m("accessibilitySignals.format","Format"),sound:At.format,legacySoundSettingsKey:"audioCues.format",legacyAnnouncementSettingsKey:"accessibility.alert.format",announcementMessage:m("accessibility.signals.format","Format"),settingsKey:"accessibility.signals.format"}),Me.voiceRecordingStarted=Me.register({name:m("accessibilitySignals.voiceRecordingStarted","Voice Recording Started"),sound:At.voiceRecordingStarted,legacySoundSettingsKey:"audioCues.voiceRecordingStarted",settingsKey:"accessibility.signals.voiceRecordingStarted"}),Me.voiceRecordingStopped=Me.register({name:m("accessibilitySignals.voiceRecordingStopped","Voice Recording Stopped"),sound:At.voiceRecordingStopped,legacySoundSettingsKey:"audioCues.voiceRecordingStopped",settingsKey:"accessibility.signals.voiceRecordingStopped"});let rr=Me;class Pte extends z{constructor(e,t=[]){super(),this.logger=new fz([e,...t]),this._register(e.onDidChangeLogLevel(i=>this.setLevel(i)))}get onDidChangeLogLevel(){return this.logger.onDidChangeLogLevel}setLevel(e){this.logger.setLevel(e)}getLevel(){return this.logger.getLevel()}trace(e,...t){this.logger.trace(e,...t)}debug(e,...t){this.logger.debug(e,...t)}info(e,...t){this.logger.info(e,...t)}warn(e,...t){this.logger.warn(e,...t)}error(e,...t){this.logger.error(e,...t)}}const a8=[];function Ote(o){a8.push(o)}function Fte(){return a8.slice(0)}class Bte{getParseResult(e){}}var ka=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},ri=function(o,e){return function(t,i){e(t,i,o)}};class Wte{constructor(e){this.disposed=!1,this.model=e,this._onWillDispose=new A}get textEditorModel(){return this.model}dispose(){this.disposed=!0,this._onWillDispose.fire()}}let aI=class{constructor(e){this.modelService=e}createModelReference(e){const t=this.modelService.getModel(e);return t?Promise.resolve(new vW(new Wte(t))):Promise.reject(new Error("Model not found"))}};aI=ka([ri(0,Fi)],aI);const qw=class qw{show(){return qw.NULL_PROGRESS_RUNNER}async showWhile(e,t){await e}};qw.NULL_PROGRESS_RUNNER={done:()=>{},total:()=>{},worked:()=>{}};let lI=qw;class Hte{withProgress(e,t,i){return t({report:()=>{}})}}class Vte{constructor(){this.isExtensionDevelopment=!1,this.isBuilt=!1}}class zte{async confirm(e){return{confirmed:this.doConfirm(e.message,e.detail),checkboxChecked:!1}}doConfirm(e,t){let i=e;return t&&(i=i+` - -`+t),_t.confirm(i)}async prompt(e){let t;if(this.doConfirm(e.message,e.detail)){const n=[...e.buttons??[]];e.cancelButton&&typeof e.cancelButton!="string"&&typeof e.cancelButton!="boolean"&&n.push(e.cancelButton),t=await n[0]?.run({checkboxChecked:!1})}return{result:t}}async error(e,t){await this.prompt({type:Qt.Error,message:e,detail:t})}}const Rp=class Rp{info(e){return this.notify({severity:Qt.Info,message:e})}warn(e){return this.notify({severity:Qt.Warning,message:e})}error(e){return this.notify({severity:Qt.Error,message:e})}notify(e){switch(e.severity){case Qt.Error:console.error(e.message);break;case Qt.Warning:console.warn(e.message);break;default:console.log(e.message);break}return Rp.NO_OP}prompt(e,t,i,n){return Rp.NO_OP}status(e,t){return z.None}};Rp.NO_OP=new W$;let cI=Rp,dI=class{constructor(e){this._onWillExecuteCommand=new A,this._onDidExecuteCommand=new A,this.onDidExecuteCommand=this._onDidExecuteCommand.event,this._instantiationService=e}executeCommand(e,...t){const i=bt.getCommand(e);if(!i)return Promise.reject(new Error(`command '${e}' not found`));try{this._onWillExecuteCommand.fire({commandId:e,args:t});const n=this._instantiationService.invokeFunction.apply(this._instantiationService,[i.handler,...t]);return this._onDidExecuteCommand.fire({commandId:e,args:t}),Promise.resolve(n)}catch(n){return Promise.reject(n)}}};dI=ka([ri(0,ke)],dI);let xg=class extends nZ{constructor(e,t,i,n,s,r){super(e,t,i,n,s),this._cachedResolver=null,this._dynamicKeybindings=[],this._domNodeListeners=[];const a=f=>{const g=new X;g.add(U(f,ee.KEY_DOWN,p=>{const _=new Nt(p);this._dispatch(_,_.target)&&(_.preventDefault(),_.stopPropagation())})),g.add(U(f,ee.KEY_UP,p=>{const _=new Nt(p);this._singleModifierDispatch(_,_.target)&&_.preventDefault()})),this._domNodeListeners.push(new Ute(f,g))},l=f=>{for(let g=0;g{f.getOption(61)||a(f.getContainerDomNode())},d=f=>{f.getOption(61)||l(f.getContainerDomNode())};this._register(r.onCodeEditorAdd(c)),this._register(r.onCodeEditorRemove(d)),r.listCodeEditors().forEach(c);const h=f=>{a(f.getContainerDomNode())},u=f=>{l(f.getContainerDomNode())};this._register(r.onDiffEditorAdd(h)),this._register(r.onDiffEditorRemove(u)),r.listDiffEditors().forEach(h)}addDynamicKeybinding(e,t,i,n){return No(bt.registerCommand(e,i),this.addDynamicKeybindings([{keybinding:t,command:e,when:n}]))}addDynamicKeybindings(e){const t=e.map(i=>({keybinding:Fx(i.keybinding,Ns),command:i.command??null,commandArgs:i.commandArgs,when:i.when,weight1:1e3,weight2:0,extensionId:null,isBuiltinExtension:!1}));return this._dynamicKeybindings=this._dynamicKeybindings.concat(t),this.updateResolver(),_e(()=>{for(let i=0;ithis._log(i))}return this._cachedResolver}_documentHasFocus(){return _t.document.hasFocus()}_toNormalizedKeybindingItems(e,t){const i=[];let n=0;for(const s of e){const r=s.when||void 0,a=s.keybinding;if(!a)i[n++]=new JA(void 0,s.command,s.commandArgs,r,t,null,!1);else{const l=l_.resolveKeybinding(a,Ns);for(const c of l)i[n++]=new JA(c,s.command,s.commandArgs,r,t,null,!1)}}return i}resolveKeyboardEvent(e){const t=new kl(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,e.keyCode);return new l_([t],Ns)}};xg=ka([ri(0,De),ri(1,hi),ri(2,$s),ri(3,mn),ri(4,gs),ri(5,Pt)],xg);class Ute extends z{constructor(e,t){super(),this.domNode=e,this._register(t)}}function _O(o){return o&&typeof o=="object"&&(!o.overrideIdentifier||typeof o.overrideIdentifier=="string")&&(!o.resource||o.resource instanceof ve)}let vv=class{constructor(e){this.logService=e,this._onDidChangeConfiguration=new A,this.onDidChangeConfiguration=this._onDidChangeConfiguration.event;const t=new Rte(e);this._configuration=new ry(t.reload(),Pi.createEmptyModel(e),Pi.createEmptyModel(e),Pi.createEmptyModel(e),Pi.createEmptyModel(e),Pi.createEmptyModel(e),new cs,Pi.createEmptyModel(e),new cs,e),t.dispose()}getValue(e,t){const i=typeof e=="string"?e:void 0,n=_O(e)?e:_O(t)?t:{};return this._configuration.getValue(i,n,void 0)}updateValues(e){const t={data:this._configuration.toData()},i=[];for(const n of e){const[s,r]=n;this.getValue(s)!==r&&(this._configuration.updateValue(s,r),i.push(s))}if(i.length>0){const n=new XG({keys:i,overrides:[]},t,this._configuration,void 0,this.logService);n.source=8,this._onDidChangeConfiguration.fire(n)}return Promise.resolve()}updateValue(e,t,i,n){return this.updateValues([[e,t]])}inspect(e,t={}){return this._configuration.inspect(e,t,void 0)}};vv=ka([ri(0,gs)],vv);let hI=class{constructor(e,t,i){this.configurationService=e,this.modelService=t,this.languageService=i,this._onDidChangeConfiguration=new A,this.configurationService.onDidChangeConfiguration(n=>{this._onDidChangeConfiguration.fire({affectedKeys:n.affectedKeys,affectsConfiguration:(s,r)=>n.affectsConfiguration(r)})})}getValue(e,t,i){const n=P.isIPosition(t)?t:null,s=n?typeof i=="string"?i:void 0:typeof t=="string"?t:void 0,r=e?this.getLanguage(e,n):void 0;return typeof s>"u"?this.configurationService.getValue({resource:e,overrideIdentifier:r}):this.configurationService.getValue(s,{resource:e,overrideIdentifier:r})}getLanguage(e,t){const i=this.modelService.getModel(e);return i?t?i.getLanguageIdAtPosition(t.lineNumber,t.column):i.getLanguageId():this.languageService.guessLanguageIdByFilepathOrFirstLine(e)}};hI=ka([ri(0,lt),ri(1,Fi),ri(2,qt)],hI);let uI=class{constructor(e){this.configurationService=e}getEOL(e,t){const i=this.configurationService.getValue("files.eol",{overrideIdentifier:t,resource:e});return i&&typeof i=="string"&&i!=="auto"?i:Un||Ue?` -`:`\r -`}};uI=ka([ri(0,lt)],uI);class $te{publicLog2(){}}const Ap=class Ap{constructor(){const e=ve.from({scheme:Ap.SCHEME,authority:"model",path:"/"});this.workspace={id:CZ,folders:[new bZ({uri:e,name:"",index:0})]}}getWorkspace(){return this.workspace}getWorkspaceFolder(e){return e&&e.scheme===Ap.SCHEME?this.workspace.folders[0]:null}};Ap.SCHEME="inmemory";let fI=Ap;function wv(o,e,t){if(!e||!(o instanceof vv))return;const i=[];Object.keys(e).forEach(n=>{qG(n)&&i.push([`editor.${n}`,e[n]]),t&&GG(n)&&i.push([`diffEditor.${n}`,e[n]])}),i.length>0&&o.updateValues(i)}let gI=class{constructor(e){this._modelService=e}hasPreviewHandler(){return!1}async apply(e,t){const i=Array.isArray(e)?e:$T.convert(e),n=new Map;for(const a of i){if(!(a instanceof Xd))throw new Error("bad edit - only text edits are supported");const l=this._modelService.getModel(a.resource);if(!l)throw new Error("bad edit - model not found");if(typeof a.versionId=="number"&&l.getVersionId()!==a.versionId)throw new Error("bad state - model changed in the meantime");let c=n.get(l);c||(c=[],n.set(l,c)),c.push(aa.replaceMove(I.lift(a.textEdit.range),a.textEdit.text))}let s=0,r=0;for(const[a,l]of n)a.pushStackElement(),a.pushEditOperations([],l,()=>[]),a.pushStackElement(),r+=1,s+=l.length;return{ariaSummary:$p(Yk.bulkEditServiceSummary,s,r),isApplied:s>0}}};gI=ka([ri(0,Fi)],gI);class Kte{getUriLabel(e,t){return e.scheme==="file"?e.fsPath:e.path}getUriBasenameLabel(e){return Fo(e)}}let mI=class extends VG{constructor(e,t){super(e),this._codeEditorService=t}showContextView(e,t,i){if(!t){const n=this._codeEditorService.getFocusedCodeEditor()||this._codeEditorService.getActiveCodeEditor();n&&(t=n.getContainerDomNode())}return super.showContextView(e,t,i)}};mI=ka([ri(0,jc),ri(1,Pt)],mI);class jte{constructor(){this._neverEmitter=new A,this.onDidChangeTrust=this._neverEmitter.event}isWorkspaceTrusted(){return!0}}class qte extends nD{constructor(){super()}}class Gte extends Pte{constructor(){super(new uz)}}let pI=class extends gD{constructor(e,t,i,n,s,r){super(e,t,i,n,s,r),this.configure({blockMouse:!1})}};pI=ka([ri(0,$s),ri(1,mn),ri(2,lu),ri(3,vt),ri(4,yr),ri(5,De)],pI);const _I={amdModuleId:"vs/editor/common/services/editorSimpleWorker",esmModuleLocation:void 0,label:"editorWorkerService"};let bI=class extends uk{constructor(e,t,i,n,s){super(_I,e,t,i,n,s)}};bI=ka([ri(0,Fi),ri(1,pT),ri(2,gs),ri(3,Gn),ri(4,Se)],bI);class Zte{async playSignal(e,t){}}Qe(gs,Gte,0);Qe(lt,vv,0);Qe(pT,hI,0);Qe(p3,uI,0);Qe(jk,fI,0);Qe(Cg,Kte,0);Qe($s,$te,0);Qe(w3,zte,0);Qe(vT,Vte,0);Qe(mn,cI,0);Qe(xa,Gl,0);Qe(qt,qte,0);Qe(zo,mte,0);Qe(Fi,ID,0);Qe(n2,CD,0);Qe(De,rI,0);Qe(cZ,Hte,0);Qe(G_,lI,0);Qe(du,MY,0);Qe(Zc,bI,0);Qe(b7,gI,0);Qe(vZ,jte,0);Qe(fo,aI,0);Qe(ms,JD,0);Qe(mo,Dee,0);Qe(hi,dI,0);Qe(vt,xg,0);Qe(fy,YD,0);Qe(lu,mI,0);Qe(Vo,bD,0);Qe(wy,sI,0);Qe(Lr,pI,0);Qe(yr,eI,0);Qe(rb,Zte,0);Qe(b9,Bte,0);var pe;(function(o){const e=new jg;for(const[l,c]of IR())e.set(l,c);const t=new Cv(e,!0);e.set(ke,t);function i(l){n||r({});const c=e.get(l);if(!c)throw new Error("Missing service "+l);return c instanceof Gr?t.invokeFunction(d=>d.get(l)):c}o.get=i;let n=!1;const s=new A;function r(l){if(n)return t;n=!0;for(const[d,h]of IR())e.get(d)||e.set(d,h);for(const d in l)if(l.hasOwnProperty(d)){const h=He(d);e.get(h)instanceof Gr&&e.set(h,l[d])}const c=Fte();for(const d of c)try{t.createInstance(d)}catch(h){Ze(h)}return s.fire(),t}o.initialize=r;function a(l){if(n)return l();const c=new X,d=c.add(s.event(()=>{d.dispose(),c.add(l())}));return c}o.withServices=a})(pe||(pe={}));function Yte(o,e){return new Qte(o,e)}class Qte extends EC{constructor(e,t){const i={amdModuleId:_I.amdModuleId,esmModuleLocation:_I.esmModuleLocation,label:t.label};super(i,t.keepIdleModels||!1,e),this._foreignModuleId=t.moduleId,this._foreignModuleCreateData=t.createData||null,this._foreignModuleHost=t.host||null,this._foreignProxy=null}fhr(e,t){if(!this._foreignModuleHost||typeof this._foreignModuleHost[e]!="function")return Promise.reject(new Error("Missing method "+e+" or missing main thread foreign host."));try{return Promise.resolve(this._foreignModuleHost[e].apply(this._foreignModuleHost,t))}catch(i){return Promise.reject(i)}}_getForeignProxy(){return this._foreignProxy||(this._foreignProxy=this._getProxy().then(e=>{const t=this._foreignModuleHost?DL(this._foreignModuleHost):[];return e.$loadForeignModule(this._foreignModuleId,this._foreignModuleCreateData,t).then(i=>{this._foreignModuleCreateData=null;const n=(a,l)=>e.$fmr(a,l),s=(a,l)=>function(){const c=Array.prototype.slice.call(arguments,0);return l(a,c)},r={};for(const a of i)r[a]=s(a,n);return r})})),this._foreignProxy}getProxy(){return this._getForeignProxy()}withSyncedResources(e){return this.workerWithSyncedResources(e).then(t=>this.getProxy())}}const yy={ICodeEditor:"vs.editor.ICodeEditor",IDiffEditor:"vs.editor.IDiffEditor"};class As{constructor(e,t,i,n){this.startColumn=e,this.endColumn=t,this.className=i,this.type=n,this._lineDecorationBrand=void 0}static _equals(e,t){return e.startColumn===t.startColumn&&e.endColumn===t.endColumn&&e.className===t.className&&e.type===t.type}static equalsArr(e,t){const i=e.length,n=t.length;if(i!==n)return!1;for(let s=0;s=s||(a[l++]=new As(Math.max(1,c.startColumn-n+1),Math.min(r+1,c.endColumn-n+1),c.className,c.type));return a}static filter(e,t,i,n){if(e.length===0)return[];const s=[];let r=0;for(let a=0,l=e.length;at||d.isEmpty()&&(c.type===0||c.type===3))continue;const h=d.startLineNumber===t?d.startColumn:i,u=d.endLineNumber===t?d.endColumn:n;s[r++]=new As(h,u,c.inlineClassName,c.type)}return s}static _typeCompare(e,t){const i=[2,0,1,3];return i[e]-i[t]}static compare(e,t){if(e.startColumn!==t.startColumn)return e.startColumn-t.startColumn;if(e.endColumn!==t.endColumn)return e.endColumn-t.endColumn;const i=As._typeCompare(e.type,t.type);return i!==0?i:e.className!==t.className?e.className0&&this.stopOffsets[0]0&&t=e){this.stopOffsets.splice(n,0,e),this.classNames.splice(n,0,t),this.metadata.splice(n,0,i);break}this.count++}}class Xte{static normalize(e,t){if(t.length===0)return[];const i=[],n=new yv;let s=0;for(let r=0,a=t.length;r1){const p=e.charCodeAt(c-2);wi(p)&&c--}if(d>1){const p=e.charCodeAt(d-2);wi(p)&&d--}const f=c-1,g=d-2;s=n.consumeLowerThan(f,s,i),n.count===0&&(s=f),n.insert(g,h,u)}return n.consumeLowerThan(1073741824,s,i),i}}class Ii{constructor(e,t,i,n){this.endIndex=e,this.type=t,this.metadata=i,this.containsRTL=n,this._linePartBrand=void 0}isWhitespace(){return!!(this.metadata&1)}isPseudoAfter(){return!!(this.metadata&4)}}class l8{constructor(e,t){this.startOffset=e,this.endOffset=t}equals(e){return this.startOffset===e.startOffset&&this.endOffset===e.endOffset}}class gu{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_,b,C,w){this.useMonospaceOptimizations=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=i,this.continuesWithWrappedLine=n,this.isBasicASCII=s,this.containsRTL=r,this.fauxIndentLength=a,this.lineTokens=l,this.lineDecorations=c.sort(As.compare),this.tabSize=d,this.startVisibleColumn=h,this.spaceWidth=u,this.stopRenderingLineAfter=p,this.renderWhitespace=_==="all"?4:_==="boundary"?1:_==="selection"?2:_==="trailing"?3:0,this.renderControlCharacters=b,this.fontLigatures=C,this.selectionsOnLine=w&&w.sort((x,L)=>x.startOffset>>16}static getCharIndex(e){return(e&65535)>>>0}constructor(e,t){this.length=e,this._data=new Uint32Array(this.length),this._horizontalOffset=new Uint32Array(this.length)}setColumnInfo(e,t,i,n){const s=(t<<16|i<<0)>>>0;this._data[e-1]=s,this._horizontalOffset[e-1]=n}getHorizontalOffset(e){return this._horizontalOffset.length===0?0:this._horizontalOffset[e-1]}charOffsetToPartData(e){return this.length===0?0:e<0?this._data[0]:e>=this.length?this._data[this.length-1]:this._data[e]}getDomPosition(e){const t=this.charOffsetToPartData(e-1),i=Zr.getPartIndex(t),n=Zr.getCharIndex(t);return new c8(i,n)}getColumn(e,t){return this.partDataToCharOffset(e.partIndex,t,e.charIndex)+1}partDataToCharOffset(e,t,i){if(this.length===0)return 0;const n=(e<<16|i<<0)>>>0;let s=0,r=this.length-1;for(;s+1>>1,_=this._data[p];if(_===n)return p;_>n?r=p:s=p}if(s===r)return s;const a=this._data[s],l=this._data[r];if(a===n)return s;if(l===n)return r;const c=Zr.getPartIndex(a),d=Zr.getCharIndex(a),h=Zr.getPartIndex(l);let u;c!==h?u=t:u=Zr.getCharIndex(l);const f=i-d,g=u-i;return f<=g?s:r}}class CI{constructor(e,t,i){this._renderLineOutputBrand=void 0,this.characterMapping=e,this.containsRTL=t,this.containsForeignElements=i}}function Sy(o,e){if(o.lineContent.length===0){if(o.lineDecorations.length>0){e.appendString("");let t=0,i=0,n=0;for(const r of o.lineDecorations)(r.type===1||r.type===2)&&(e.appendString(''),r.type===1&&(n|=1,t++),r.type===2&&(n|=2,i++));e.appendString("");const s=new Zr(1,t+i);return s.setColumnInfo(1,t,0,0),new CI(s,!1,n)}return e.appendString(""),new CI(new Zr(0,0),!1,0)}return aie(tie(o),e)}class Jte{constructor(e,t,i,n){this.characterMapping=e,this.html=t,this.containsRTL=i,this.containsForeignElements=n}}function Ly(o){const e=new K_(1e4),t=Sy(o,e);return new Jte(t.characterMapping,e.build(),t.containsRTL,t.containsForeignElements)}class eie{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_){this.fontIsMonospace=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=i,this.len=n,this.isOverflowing=s,this.overflowingCharCount=r,this.parts=a,this.containsForeignElements=l,this.fauxIndentLength=c,this.tabSize=d,this.startVisibleColumn=h,this.containsRTL=u,this.spaceWidth=f,this.renderSpaceCharCode=g,this.renderWhitespace=p,this.renderControlCharacters=_}}function tie(o){const e=o.lineContent;let t,i,n;o.stopRenderingLineAfter!==-1&&o.stopRenderingLineAfter0){for(let a=0,l=o.lineDecorations.length;a0&&(s[r++]=new Ii(i,"",0,!1));let a=i;for(let l=0,c=t.getCount();l=n){const f=e?sg(o.substring(a,n)):!1;s[r++]=new Ii(n,h,0,f);break}const u=e?sg(o.substring(a,d)):!1;s[r++]=new Ii(d,h,0,u),a=d}return s}function nie(o,e,t){let i=0;const n=[];let s=0;if(t)for(let r=0,a=e.length;r=50&&(n[s++]=new Ii(f+1,d,h,u),g=f+1,f=-1);g!==c&&(n[s++]=new Ii(c,d,h,u))}else n[s++]=l;i=c}else for(let r=0,a=e.length;r50){const h=l.type,u=l.metadata,f=l.containsRTL,g=Math.ceil(d/50);for(let p=1;p=8234&&o<=8238||o>=8294&&o<=8297||o>=8206&&o<=8207||o===1564}function sie(o,e){const t=[];let i=new Ii(0,"",0,!1),n=0;for(const s of e){const r=s.endIndex;for(;ni.endIndex&&(i=new Ii(n,s.type,s.metadata,s.containsRTL),t.push(i)),i=new Ii(n+1,"mtkcontrol",s.metadata,!1),t.push(i))}n>i.endIndex&&(i=new Ii(r,s.type,s.metadata,s.containsRTL),t.push(i))}return t}function oie(o,e,t,i){const n=o.continuesWithWrappedLine,s=o.fauxIndentLength,r=o.tabSize,a=o.startVisibleColumn,l=o.useMonospaceOptimizations,c=o.selectionsOnLine,d=o.renderWhitespace===1,h=o.renderWhitespace===3,u=o.renderSpaceWidth!==o.spaceWidth,f=[];let g=0,p=0,_=i[p].type,b=i[p].containsRTL,C=i[p].endIndex;const w=i.length;let v=!1,y=zn(e),x;y===-1?(v=!0,y=t,x=t):x=Jh(e);let L=!1,E=0,N=c&&c[E],H=a%r;for(let W=s;W=N.endOffset&&(E++,N=c&&c[E]);let B;if(Wx)B=!0;else if(j===9)B=!0;else if(j===32)if(d)if(L)B=!0;else{const G=W+1W),B&&h&&(B=v||W>x),B&&b&&W>=y&&W<=x&&(B=!1),L){if(!B||!l&&H>=r){if(u){const G=g>0?f[g-1].endIndex:s;for(let ne=G+1;ne<=W;ne++)f[g++]=new Ii(ne,"mtkw",1,!1)}else f[g++]=new Ii(W,"mtkw",1,!1);H=H%r}}else(W===C||B&&W>s)&&(f[g++]=new Ii(W,_,0,b),H=H%r);for(j===9?H=r:Rc(j)?H+=2:H++,L=B;W===C&&(p++,p0?e.charCodeAt(t-1):0,j=t>1?e.charCodeAt(t-2):0;W===32&&j!==32&&j!==9||(F=!0)}else F=!0;if(F)if(u){const W=g>0?f[g-1].endIndex:s;for(let j=W+1;j<=t;j++)f[g++]=new Ii(j,"mtkw",1,!1)}else f[g++]=new Ii(t,"mtkw",1,!1);else f[g++]=new Ii(t,_,0,b);return f}function rie(o,e,t,i){i.sort(As.compare);const n=Xte.normalize(o,i),s=n.length;let r=0;const a=[];let l=0,c=0;for(let h=0,u=t.length;hc&&(c=C.startOffset,a[l++]=new Ii(c,p,_,b)),C.endOffset+1<=g)c=C.endOffset+1,a[l++]=new Ii(c,p+" "+C.className,_|C.metadata,b),r++;else{c=g,a[l++]=new Ii(c,p+" "+C.className,_|C.metadata,b);break}}g>c&&(c=g,a[l++]=new Ii(c,p,_,b))}const d=t[t.length-1].endIndex;if(r'):e.appendString("");for(let N=0,H=c.length;N=d&&(be+=Rt)}}for(ne&&(e.appendString(' style="width:'),e.appendString(String(g*de)),e.appendString('px"')),e.appendASCIICharCode(62);v1?e.appendCharCode(8594):e.appendCharCode(65515);for(let Rt=2;Rt<=we;Rt++)e.appendCharCode(160)}else be=2,we=1,e.appendCharCode(p),e.appendCharCode(8204);x+=be,L+=we,v>=d&&(y+=we)}}else for(e.appendASCIICharCode(62);v=d&&(y+=be)}ae?E++:E=0,v>=r&&!w&&F.isPseudoAfter()&&(w=!0,C.setColumnInfo(v+1,N,x,L)),e.appendString("")}return w||C.setColumnInfo(r+1,c.length-1,x,L),a&&(e.appendString(''),e.appendString(m("showMore","Show more ({0})",cie(l))),e.appendString("")),e.appendString(""),new CI(C,f,n)}function lie(o){return o.toString(16).toUpperCase().padStart(4,"0")}function cie(o){return o<1024?m("overflow.chars","{0} chars",o):o<1024*1024?`${(o/1024).toFixed(1)} KB`:`${(o/1024/1024).toFixed(1)} MB`}class CO{constructor(e,t,i,n){this._viewportBrand=void 0,this.top=e|0,this.left=t|0,this.width=i|0,this.height=n|0}}class die{constructor(e,t){this.tabSize=e,this.data=t}}class P2{constructor(e,t,i,n,s,r,a){this._viewLineDataBrand=void 0,this.content=e,this.continuesWithWrappedLine=t,this.minColumn=i,this.maxColumn=n,this.startVisibleColumn=s,this.tokens=r,this.inlineDecorations=a}}class zs{constructor(e,t,i,n,s,r,a,l,c,d){this.minColumn=e,this.maxColumn=t,this.content=i,this.continuesWithWrappedLine=n,this.isBasicASCII=zs.isBasicASCII(i,r),this.containsRTL=zs.containsRTL(i,this.isBasicASCII,s),this.tokens=a,this.inlineDecorations=l,this.tabSize=c,this.startVisibleColumn=d}static isBasicASCII(e,t){return t?D0(e):!0}static containsRTL(e,t,i){return!t&&i?sg(e):!1}}class hp{constructor(e,t,i){this.range=e,this.inlineClassName=t,this.type=i}}class hie{constructor(e,t,i,n){this.startOffset=e,this.endOffset=t,this.inlineClassName=i,this.inlineClassNameAffectsLetterSpacing=n}toInlineDecoration(e){return new hp(new I(e,this.startOffset+1,e,this.endOffset+1),this.inlineClassName,this.inlineClassNameAffectsLetterSpacing?3:0)}}class h8{constructor(e,t){this._viewModelDecorationBrand=void 0,this.range=e,this.options=t}}class w_{constructor(e,t,i){this.color=e,this.zIndex=t,this.data=i}static compareByRenderingProps(e,t){return e.zIndex===t.zIndex?e.colort.color?1:0:e.zIndex-t.zIndex}static equals(e,t){return e.color===t.color&&e.zIndex===t.zIndex&&li(e.data,t.data)}static equalsArr(e,t){return li(e,t,w_.equals)}}function uie(o){return Array.isArray(o)}function fie(o){return!uie(o)}function u8(o){return typeof o=="string"}function vO(o){return!u8(o)}function kd(o){return!o}function yl(o,e){return o.ignoreCase&&e?e.toLowerCase():e}function wO(o){return o.replace(/[&<>'"_]/g,"-")}function gie(o,e){console.log(`${o.languageId}: ${e}`)}function Et(o,e){return new Error(`${o.languageId}: ${e}`)}function tc(o,e,t,i,n){const s=/\$((\$)|(#)|(\d\d?)|[sS](\d\d?)|@(\w+))/g;let r=null;return e.replace(s,function(a,l,c,d,h,u,f,g,p){return kd(c)?kd(d)?!kd(h)&&h0;){const i=o.tokenizer[t];if(i)return i;const n=t.lastIndexOf(".");n<0?t=null:t=t.substr(0,n)}return null}function pie(o,e){let t=e;for(;t&&t.length>0;){if(o.stateNames[t])return!0;const n=t.lastIndexOf(".");n<0?t=null:t=t.substr(0,n)}return!1}var _ie=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},bie=function(o,e){return function(t,i){e(t,i,o)}},vI;const f8=5,Gw=class Gw{static create(e,t){return this._INSTANCE.create(e,t)}constructor(e){this._maxCacheDepth=e,this._entries=Object.create(null)}create(e,t){if(e!==null&&e.depth>=this._maxCacheDepth)return new qf(e,t);let i=qf.getStackElementId(e);i.length>0&&(i+="|"),i+=t;let n=this._entries[i];return n||(n=new qf(e,t),this._entries[i]=n,n)}};Gw._INSTANCE=new Gw(f8);let y_=Gw;class qf{constructor(e,t){this.parent=e,this.state=t,this.depth=(this.parent?this.parent.depth:0)+1}static getStackElementId(e){let t="";for(;e!==null;)t.length>0&&(t+="|"),t+=e.state,e=e.parent;return t}static _equals(e,t){for(;e!==null&&t!==null;){if(e===t)return!0;if(e.state!==t.state)return!1;e=e.parent,t=t.parent}return e===null&&t===null}equals(e){return qf._equals(this,e)}push(e){return y_.create(this,e)}pop(){return this.parent}popall(){let e=this;for(;e.parent;)e=e.parent;return e}switchTo(e){return y_.create(this.parent,e)}}class cf{constructor(e,t){this.languageId=e,this.state=t}equals(e){return this.languageId===e.languageId&&this.state.equals(e.state)}clone(){return this.state.clone()===this.state?this:new cf(this.languageId,this.state)}}const Zw=class Zw{static create(e,t){return this._INSTANCE.create(e,t)}constructor(e){this._maxCacheDepth=e,this._entries=Object.create(null)}create(e,t){if(t!==null)return new up(e,t);if(e!==null&&e.depth>=this._maxCacheDepth)return new up(e,t);const i=qf.getStackElementId(e);let n=this._entries[i];return n||(n=new up(e,null),this._entries[i]=n,n)}};Zw._INSTANCE=new Zw(f8);let ic=Zw;class up{constructor(e,t){this.stack=e,this.embeddedLanguageData=t}clone(){return(this.embeddedLanguageData?this.embeddedLanguageData.clone():null)===this.embeddedLanguageData?this:ic.create(this.stack,this.embeddedLanguageData)}equals(e){return!(e instanceof up)||!this.stack.equals(e.stack)?!1:this.embeddedLanguageData===null&&e.embeddedLanguageData===null?!0:this.embeddedLanguageData===null||e.embeddedLanguageData===null?!1:this.embeddedLanguageData.equals(e.embeddedLanguageData)}}class Cie{constructor(){this._tokens=[],this._languageId=null,this._lastTokenType=null,this._lastTokenLanguage=null}enterLanguage(e){this._languageId=e}emit(e,t){this._lastTokenType===t&&this._lastTokenLanguage===this._languageId||(this._lastTokenType=t,this._lastTokenLanguage=this._languageId,this._tokens.push(new zp(e,t,this._languageId)))}nestedLanguageTokenize(e,t,i,n){const s=i.languageId,r=i.state,a=si.get(s);if(!a)return this.enterLanguage(s),this.emit(n,""),r;const l=a.tokenize(e,t,r);if(n!==0)for(const c of l.tokens)this._tokens.push(new zp(c.offset+n,c.type,c.language));else this._tokens=this._tokens.concat(l.tokens);return this._lastTokenType=null,this._lastTokenLanguage=null,this._languageId=null,l.endState}finalize(e){return new FN(this._tokens,e)}}class Sv{constructor(e,t){this._languageService=e,this._theme=t,this._prependTokens=null,this._tokens=[],this._currentLanguageId=0,this._lastTokenMetadata=0}enterLanguage(e){this._currentLanguageId=this._languageService.languageIdCodec.encodeLanguageId(e)}emit(e,t){const i=this._theme.match(this._currentLanguageId,t)|1024;this._lastTokenMetadata!==i&&(this._lastTokenMetadata=i,this._tokens.push(e),this._tokens.push(i))}static _merge(e,t,i){const n=e!==null?e.length:0,s=t.length,r=i!==null?i.length:0;if(n===0&&s===0&&r===0)return new Uint32Array(0);if(n===0&&s===0)return i;if(s===0&&r===0)return e;const a=new Uint32Array(n+s+r);e!==null&&a.set(e);for(let l=0;l{if(r)return;let l=!1;for(let c=0,d=a.changedLanguages.length;c{a.affectsConfiguration("editor.maxTokenizationLineLength")&&(this._maxTokenizationLineLength=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:this._languageId}))}))}getLoadStatus(){const e=[];for(const t in this._embeddedLanguages){const i=si.get(t);if(i){if(i instanceof vI){const n=i.getLoadStatus();n.loaded===!1&&e.push(n.promise)}continue}si.isResolved(t)||e.push(si.getOrCreate(t))}return e.length===0?{loaded:!0}:{loaded:!1,promise:Promise.all(e).then(t=>{})}}getInitialState(){const e=y_.create(null,this._lexer.start);return ic.create(e,null)}tokenize(e,t,i){if(e.length>=this._maxTokenizationLineLength)return _7(this._languageId,i);const n=new Cie,s=this._tokenize(e,t,i,n);return n.finalize(s)}tokenizeEncoded(e,t,i){if(e.length>=this._maxTokenizationLineLength)return zT(this._languageService.languageIdCodec.encodeLanguageId(this._languageId),i);const n=new Sv(this._languageService,this._standaloneThemeService.getColorTheme().tokenTheme),s=this._tokenize(e,t,i,n);return n.finalize(s)}_tokenize(e,t,i,n){return i.embeddedLanguageData?this._nestedTokenize(e,t,i,0,n):this._myTokenize(e,t,i,0,n)}_findLeavingNestedLanguageOffset(e,t){let i=this._lexer.tokenizer[t.stack.state];if(!i&&(i=e1(this._lexer,t.stack.state),!i))throw Et(this._lexer,"tokenizer state is not defined: "+t.stack.state);let n=-1,s=!1;for(const r of i){if(!vO(r.action)||r.action.nextEmbedded!=="@pop")continue;s=!0;let a=r.resolveRegex(t.stack.state);const l=a.source;if(l.substr(0,4)==="^(?:"&&l.substr(l.length-1,1)===")"){const d=(a.ignoreCase?"i":"")+(a.unicode?"u":"");a=new RegExp(l.substr(4,l.length-5),d)}const c=e.search(a);c===-1||c!==0&&r.matchOnlyAtLineStart||(n===-1||c0&&s.nestedLanguageTokenize(a,!1,i.embeddedLanguageData,n);const l=e.substring(r);return this._myTokenize(l,t,i,n+r,s)}_safeRuleName(e){return e?e.name:"(unknown)"}_myTokenize(e,t,i,n,s){s.enterLanguage(this._languageId);const r=e.length,a=t&&this._lexer.includeLF?e+` -`:e,l=a.length;let c=i.embeddedLanguageData,d=i.stack,h=0,u=null,f=!0;for(;f||h=l)break;f=!1;let N=this._lexer.tokenizer[b];if(!N&&(N=e1(this._lexer,b),!N))throw Et(this._lexer,"tokenizer state is not defined: "+b);const H=a.substr(h);for(const F of N)if((h===0||!F.matchOnlyAtLineStart)&&(C=H.match(F.resolveRegex(b)),C)){w=C[0],v=F.action;break}}if(C||(C=[""],w=""),v||(h=this._lexer.maxStack)throw Et(this._lexer,"maximum tokenizer stack size reached: ["+d.state+","+d.parent.state+",...]");d=d.push(b)}else if(v.next==="@pop"){if(d.depth<=1)throw Et(this._lexer,"trying to pop an empty stack in rule: "+this._safeRuleName(y));d=d.pop()}else if(v.next==="@popall")d=d.popall();else{let N=tc(this._lexer,v.next,w,C,b);if(N[0]==="@"&&(N=N.substr(1)),e1(this._lexer,N))d=d.push(N);else throw Et(this._lexer,"trying to set a next state '"+N+"' that is undefined in rule: "+this._safeRuleName(y))}}v.log&&typeof v.log=="string"&&gie(this._lexer,this._lexer.languageId+": "+tc(this._lexer,v.log,w,C,b))}if(L===null)throw Et(this._lexer,"lexer rule has no well-defined action in rule: "+this._safeRuleName(y));const E=N=>{const H=this._languageService.getLanguageIdByLanguageName(N)||this._languageService.getLanguageIdByMimeType(N)||N,F=this._getNestedEmbeddedLanguageData(H);if(h0)throw Et(this._lexer,"groups cannot be nested: "+this._safeRuleName(y));if(C.length!==L.length+1)throw Et(this._lexer,"matched number of groups does not match the number of actions in rule: "+this._safeRuleName(y));let N=0;for(let H=1;Ho});class O2{static colorizeElement(e,t,i,n){n=n||{};const s=n.theme||"vs",r=n.mimeType||i.getAttribute("lang")||i.getAttribute("data-lang");if(!r)return console.error("Mode not detected"),Promise.resolve();const a=t.getLanguageIdByMimeType(r)||r;e.setTheme(s);const l=i.firstChild?i.firstChild.nodeValue:"";i.className+=" "+s;const c=d=>{const h=wie?.createHTML(d)??d;i.innerHTML=h};return this.colorize(t,l||"",a,n).then(c,d=>console.error(d))}static async colorize(e,t,i,n){const s=e.languageIdCodec;let r=4;n&&typeof n.tabSize=="number"&&(r=n.tabSize),$N(t)&&(t=t.substr(1));const a=va(t);if(!e.isRegisteredLanguageId(i))return yO(a,r,s);const l=await si.getOrCreate(i);return l?yie(a,r,l,s):yO(a,r,s)}static colorizeLine(e,t,i,n,s=4){const r=zs.isBasicASCII(e,t),a=zs.containsRTL(e,r,i);return Ly(new gu(!1,!0,e,!1,r,a,0,n,[],s,0,0,0,0,-1,"none",!1,!1,null)).html}static colorizeModelLine(e,t,i=4){const n=e.getLineContent(t);e.tokenization.forceTokenization(t);const r=e.tokenization.getLineTokens(t).inflate();return this.colorizeLine(n,e.mightContainNonBasicASCII(),e.mightContainRTL(),r,i)}}function yie(o,e,t,i){return new Promise((n,s)=>{const r=()=>{const a=Sie(o,e,t,i);if(t instanceof S_){const l=t.getLoadStatus();if(l.loaded===!1){l.promise.then(r,s);return}}n(a)};r()})}function yO(o,e,t){let i=[];const s=new Uint32Array(2);s[0]=0,s[1]=33587200;for(let r=0,a=o.length;r")}return i.join("")}function Sie(o,e,t,i){let n=[],s=t.getInitialState();for(let r=0,a=o.length;r"),s=c.endState}return n.join("")}var Lie=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},xie=function(o,e){return function(t,i){e(t,i,o)}},Xf;let Lv=(Xf=class{constructor(e,t){}dispose(){}},Xf.ID="editor.contrib.markerDecorations",Xf);Lv=Lie([xie(1,n2)],Lv);Ho(Lv.ID,Lv,0);class g8 extends z{constructor(e,t){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._referenceDomElement=e,this._width=-1,this._height=-1,this._resizeObserver=null,this.measureReferenceDomElement(!1,t)}dispose(){this.stopObserving(),super.dispose()}getWidth(){return this._width}getHeight(){return this._height}startObserving(){if(!this._resizeObserver&&this._referenceDomElement){let e=null;const t=()=>{e?this.observe({width:e.width,height:e.height}):this.observe()};let i=!1,n=!1;const s=()=>{if(i&&!n)try{i=!1,n=!0,t()}finally{fs(fe(this._referenceDomElement),()=>{n=!1,s()})}};this._resizeObserver=new ResizeObserver(r=>{r&&r[0]&&r[0].contentRect?e={width:r[0].contentRect.width,height:r[0].contentRect.height}:e=null,i=!0,s()}),this._resizeObserver.observe(this._referenceDomElement)}}stopObserving(){this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null)}observe(e){this.measureReferenceDomElement(!0,e)}measureReferenceDomElement(e,t){let i=0,n=0;t?(i=t.width,n=t.height):this._referenceDomElement&&(i=this._referenceDomElement.clientWidth,n=this._referenceDomElement.clientHeight),i=Math.max(5,i),n=Math.max(5,n),(this._width!==i||this._height!==n)&&(this._width=i,this._height=n,e&&this._onDidChange.fire())}}const xf=class xf{constructor(e,t){this.key=e,this.migrate=t}apply(e){const t=xf._read(e,this.key),i=s=>xf._read(e,s),n=(s,r)=>xf._write(e,s,r);this.migrate(t,i,n)}static _read(e,t){if(typeof e>"u")return;const i=t.indexOf(".");if(i>=0){const n=t.substring(0,i);return this._read(e[n],t.substring(i+1))}return e[t]}static _write(e,t,i){const n=t.indexOf(".");if(n>=0){const s=t.substring(0,n);e[s]=e[s]||{},this._write(e[s],t.substring(n+1),i);return}e[t]=i}};xf.items=[];let L_=xf;function kr(o,e){L_.items.push(new L_(o,e))}function ps(o,e){kr(o,(t,i,n)=>{if(typeof t<"u"){for(const[s,r]of e)if(t===s){n(o,r);return}}})}function kie(o){L_.items.forEach(e=>e.apply(o))}ps("wordWrap",[[!0,"on"],[!1,"off"]]);ps("lineNumbers",[[!0,"on"],[!1,"off"]]);ps("cursorBlinking",[["visible","solid"]]);ps("renderWhitespace",[[!0,"boundary"],[!1,"none"]]);ps("renderLineHighlight",[[!0,"line"],[!1,"none"]]);ps("acceptSuggestionOnEnter",[[!0,"on"],[!1,"off"]]);ps("tabCompletion",[[!1,"off"],[!0,"onlySnippets"]]);ps("hover",[[!0,{enabled:!0}],[!1,{enabled:!1}]]);ps("parameterHints",[[!0,{enabled:!0}],[!1,{enabled:!1}]]);ps("autoIndent",[[!1,"advanced"],[!0,"full"]]);ps("matchBrackets",[[!0,"always"],[!1,"never"]]);ps("renderFinalNewline",[[!0,"on"],[!1,"off"]]);ps("cursorSmoothCaretAnimation",[[!0,"on"],[!1,"off"]]);ps("occurrencesHighlight",[[!0,"singleFile"],[!1,"off"]]);ps("wordBasedSuggestions",[[!0,"matchingDocuments"],[!1,"off"]]);kr("autoClosingBrackets",(o,e,t)=>{o===!1&&(t("autoClosingBrackets","never"),typeof e("autoClosingQuotes")>"u"&&t("autoClosingQuotes","never"),typeof e("autoSurround")>"u"&&t("autoSurround","never"))});kr("renderIndentGuides",(o,e,t)=>{typeof o<"u"&&(t("renderIndentGuides",void 0),typeof e("guides.indentation")>"u"&&t("guides.indentation",!!o))});kr("highlightActiveIndentGuide",(o,e,t)=>{typeof o<"u"&&(t("highlightActiveIndentGuide",void 0),typeof e("guides.highlightActiveIndentation")>"u"&&t("guides.highlightActiveIndentation",!!o))});const Die={method:"showMethods",function:"showFunctions",constructor:"showConstructors",deprecated:"showDeprecated",field:"showFields",variable:"showVariables",class:"showClasses",struct:"showStructs",interface:"showInterfaces",module:"showModules",property:"showProperties",event:"showEvents",operator:"showOperators",unit:"showUnits",value:"showValues",constant:"showConstants",enum:"showEnums",enumMember:"showEnumMembers",keyword:"showKeywords",text:"showWords",color:"showColors",file:"showFiles",reference:"showReferences",folder:"showFolders",typeParameter:"showTypeParameters",snippet:"showSnippets"};kr("suggest.filteredTypes",(o,e,t)=>{if(o&&typeof o=="object"){for(const i of Object.entries(Die))o[i[0]]===!1&&typeof e(`suggest.${i[1]}`)>"u"&&t(`suggest.${i[1]}`,!1);t("suggest.filteredTypes",void 0)}});kr("quickSuggestions",(o,e,t)=>{if(typeof o=="boolean"){const i=o?"on":"off";t("quickSuggestions",{comments:i,strings:i,other:i})}});kr("experimental.stickyScroll.enabled",(o,e,t)=>{typeof o=="boolean"&&(t("experimental.stickyScroll.enabled",void 0),typeof e("stickyScroll.enabled")>"u"&&t("stickyScroll.enabled",o))});kr("experimental.stickyScroll.maxLineCount",(o,e,t)=>{typeof o=="number"&&(t("experimental.stickyScroll.maxLineCount",void 0),typeof e("stickyScroll.maxLineCount")>"u"&&t("stickyScroll.maxLineCount",o))});kr("codeActionsOnSave",(o,e,t)=>{if(o&&typeof o=="object"){let i=!1;const n={};for(const s of Object.entries(o))typeof s[1]=="boolean"?(i=!0,n[s[0]]=s[1]?"explicit":"never"):n[s[0]]=s[1];i&&t("codeActionsOnSave",n)}});kr("codeActionWidget.includeNearbyQuickfixes",(o,e,t)=>{typeof o=="boolean"&&(t("codeActionWidget.includeNearbyQuickfixes",void 0),typeof e("codeActionWidget.includeNearbyQuickFixes")>"u"&&t("codeActionWidget.includeNearbyQuickFixes",o))});kr("lightbulb.enabled",(o,e,t)=>{typeof o=="boolean"&&t("lightbulb.enabled",o?void 0:"off")});class Iie{constructor(){this._tabFocus=!1,this._onDidChangeTabFocus=new A,this.onDidChangeTabFocus=this._onDidChangeTabFocus.event}getTabFocusMode(){return this._tabFocus}setTabFocusMode(e){this._tabFocus=e,this._onDidChangeTabFocus.fire(this._tabFocus)}}const xv=new Iie;var Eie=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Nie=function(o,e){return function(t,i){e(t,i,o)}};let wI=class extends z{constructor(e,t,i,n,s){super(),this._accessibilityService=s,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._onDidChangeFast=this._register(new A),this.onDidChangeFast=this._onDidChangeFast.event,this._isDominatedByLongLines=!1,this._viewLineCount=1,this._lineNumbersDigitCount=1,this._reservedHeight=0,this._glyphMarginDecorationLaneCount=1,this._computeOptionsMemory=new q5,this.isSimpleWidget=e,this.contextMenuId=t,this._containerObserver=this._register(new g8(n,i.dimension)),this._targetWindowId=fe(n).vscodeWindowId,this._rawOptions=SO(i),this._validatedOptions=nc.validateOptions(this._rawOptions),this.options=this._computeOptions(),this.options.get(13)&&this._containerObserver.startObserving(),this._register(Xl.onDidChangeZoomLevel(()=>this._recomputeOptions())),this._register(xv.onDidChangeTabFocus(()=>this._recomputeOptions())),this._register(this._containerObserver.onDidChange(()=>this._recomputeOptions())),this._register(Gx.onDidChange(()=>this._recomputeOptions())),this._register(Zp.getInstance(fe(n)).onDidChange(()=>this._recomputeOptions())),this._register(this._accessibilityService.onDidChangeScreenReaderOptimized(()=>this._recomputeOptions()))}_recomputeOptions(){const e=this._computeOptions(),t=nc.checkEquals(this.options,e);t!==null&&(this.options=e,this._onDidChangeFast.fire(t),this._onDidChange.fire(t))}_computeOptions(){const e=this._readEnvConfiguration(),t=Yd.createFromValidatedSettings(this._validatedOptions,e.pixelRatio,this.isSimpleWidget),i=this._readFontInfo(t),n={memory:this._computeOptionsMemory,outerWidth:e.outerWidth,outerHeight:e.outerHeight-this._reservedHeight,fontInfo:i,extraEditorClassName:e.extraEditorClassName,isDominatedByLongLines:this._isDominatedByLongLines,viewLineCount:this._viewLineCount,lineNumbersDigitCount:this._lineNumbersDigitCount,emptySelectionClipboard:e.emptySelectionClipboard,pixelRatio:e.pixelRatio,tabFocusMode:xv.getTabFocusMode(),accessibilitySupport:e.accessibilitySupport,glyphMarginDecorationLaneCount:this._glyphMarginDecorationLaneCount};return nc.computeOptions(this._validatedOptions,n)}_readEnvConfiguration(){return{extraEditorClassName:Mie(),outerWidth:this._containerObserver.getWidth(),outerHeight:this._containerObserver.getHeight(),emptySelectionClipboard:I0||Mo,pixelRatio:Zp.getInstance(hR(this._targetWindowId,!0).window).value,accessibilitySupport:this._accessibilityService.isScreenReaderOptimized()?2:this._accessibilityService.getAccessibilitySupport()}}_readFontInfo(e){return Gx.readFontInfo(hR(this._targetWindowId,!0).window,e)}getRawOptions(){return this._rawOptions}updateOptions(e){const t=SO(e);nc.applyUpdate(this._rawOptions,t)&&(this._validatedOptions=nc.validateOptions(this._rawOptions),this._recomputeOptions())}observeContainer(e){this._containerObserver.observe(e)}setIsDominatedByLongLines(e){this._isDominatedByLongLines!==e&&(this._isDominatedByLongLines=e,this._recomputeOptions())}setModelLineCount(e){const t=Tie(e);this._lineNumbersDigitCount!==t&&(this._lineNumbersDigitCount=t,this._recomputeOptions())}setViewLineCount(e){this._viewLineCount!==e&&(this._viewLineCount=e,this._recomputeOptions())}setReservedHeight(e){this._reservedHeight!==e&&(this._reservedHeight=e,this._recomputeOptions())}setGlyphMarginDecorationLaneCount(e){this._glyphMarginDecorationLaneCount!==e&&(this._glyphMarginDecorationLaneCount=e,this._recomputeOptions())}};wI=Eie([Nie(4,ms)],wI);function Tie(o){let e=0;for(;o;)o=Math.floor(o/10),e++;return e||1}function Mie(){let o="";return!Ac&&!bF&&(o+="no-user-select "),Ac&&(o+="no-minimap-shadow ",o+="enable-user-select "),Ue&&(o+="mac "),o}class Rie{constructor(){this._values=[]}_read(e){return this._values[e]}get(e){return this._values[e]}_write(e,t){this._values[e]=t}}class Aie{constructor(){this._values=[]}_read(e){if(e>=this._values.length)throw new Error("Cannot read uninitialized value");return this._values[e]}get(e){return this._read(e)}_write(e,t){this._values[e]=t}}class nc{static validateOptions(e){const t=new Rie;for(const i of Zu){const n=i.name==="_never_"?void 0:e[i.name];t._write(i.id,i.validate(n))}return t}static computeOptions(e,t){const i=new Aie;for(const n of Zu)i._write(n.id,n.compute(t,i,e._read(n.id)));return i}static _deepEquals(e,t){if(typeof e!="object"||typeof t!="object"||!e||!t)return e===t;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)?li(e,t):!1;if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const i in e)if(!nc._deepEquals(e[i],t[i]))return!1;return!0}static checkEquals(e,t){const i=[];let n=!1;for(const s of Zu){const r=!nc._deepEquals(e._read(s.id),t._read(s.id));i[s.id]=r,r&&(n=!0)}return n?new j5(i):null}static applyUpdate(e,t){let i=!1;for(const n of Zu)if(t.hasOwnProperty(n.name)){const s=n.applyUpdate(e[n.name],t[n.name]);e[n.name]=s.newValue,i=i||s.didChange}return i}}function SO(o){const e=Ya(o);return kie(e),e}var lc;(function(o){const e={total:0,min:Number.MAX_VALUE,max:0},t={...e},i={...e},n={...e};let s=0;const r={keydown:0,input:0,render:0};function a(){b(),performance.mark("inputlatency/start"),performance.mark("keydown/start"),r.keydown=1,queueMicrotask(l)}o.onKeyDown=a;function l(){r.keydown===1&&(performance.mark("keydown/end"),r.keydown=2)}function c(){performance.mark("input/start"),r.input=1,_()}o.onBeforeInput=c;function d(){r.input===0&&c(),queueMicrotask(h)}o.onInput=d;function h(){r.input===1&&(performance.mark("input/end"),r.input=2)}function u(){b()}o.onKeyUp=u;function f(){b()}o.onSelectionChange=f;function g(){r.keydown===2&&r.input===2&&r.render===0&&(performance.mark("render/start"),r.render=1,queueMicrotask(p),_())}o.onRenderStart=g;function p(){r.render===1&&(performance.mark("render/end"),r.render=2)}function _(){setTimeout(b)}function b(){r.keydown===2&&r.input===2&&r.render===2&&(performance.mark("inputlatency/end"),performance.measure("keydown","keydown/start","keydown/end"),performance.measure("input","input/start","input/end"),performance.measure("render","render/start","render/end"),performance.measure("inputlatency","inputlatency/start","inputlatency/end"),C("keydown",e),C("input",t),C("render",i),C("inputlatency",n),s++,w())}function C(L,E){const N=performance.getEntriesByName(L)[0].duration;E.total+=N,E.min=Math.min(E.min,N),E.max=Math.max(E.max,N)}function w(){performance.clearMarks("keydown/start"),performance.clearMarks("keydown/end"),performance.clearMarks("input/start"),performance.clearMarks("input/end"),performance.clearMarks("render/start"),performance.clearMarks("render/end"),performance.clearMarks("inputlatency/start"),performance.clearMarks("inputlatency/end"),performance.clearMeasures("keydown"),performance.clearMeasures("input"),performance.clearMeasures("render"),performance.clearMeasures("inputlatency"),r.keydown=0,r.input=0,r.render=0}function v(){if(s===0)return;const L={keydown:y(e),input:y(t),render:y(i),total:y(n),sampleCount:s};return x(e),x(t),x(i),x(n),s=0,L}o.getAndClearMeasurements=v;function y(L){return{average:L.total/s,max:L.max,min:L.min}}function x(L){L.total=0,L.min=Number.MAX_VALUE,L.max=0}})(lc||(lc={}));class xy{constructor(e,t){this.x=e,this.y=t,this._pageCoordinatesBrand=void 0}toClientCoordinates(e){return new m8(this.x-e.scrollX,this.y-e.scrollY)}}class m8{constructor(e,t){this.clientX=e,this.clientY=t,this._clientCoordinatesBrand=void 0}toPageCoordinates(e){return new xy(this.clientX+e.scrollX,this.clientY+e.scrollY)}}class Pie{constructor(e,t,i,n){this.x=e,this.y=t,this.width=i,this.height=n,this._editorPagePositionBrand=void 0}}class Oie{constructor(e,t){this.x=e,this.y=t,this._positionRelativeToEditorBrand=void 0}}function F2(o){const e=gi(o);return new Pie(e.left,e.top,e.width,e.height)}function B2(o,e,t){const i=e.width/o.offsetWidth,n=e.height/o.offsetHeight,s=(t.x-e.x)/i,r=(t.y-e.y)/n;return new Oie(s,r)}class Wc extends ur{constructor(e,t,i){super(fe(i),e),this._editorMouseEventBrand=void 0,this.isFromPointerCapture=t,this.pos=new xy(this.posx,this.posy),this.editorPos=F2(i),this.relativePos=B2(i,this.editorPos,this.pos)}}class Fie{constructor(e){this._editorViewDomNode=e}_create(e){return new Wc(e,!1,this._editorViewDomNode)}onContextMenu(e,t){return U(e,"contextmenu",i=>{t(this._create(i))})}onMouseUp(e,t){return U(e,"mouseup",i=>{t(this._create(i))})}onMouseDown(e,t){return U(e,ee.MOUSE_DOWN,i=>{t(this._create(i))})}onPointerDown(e,t){return U(e,ee.POINTER_DOWN,i=>{t(this._create(i),i.pointerId)})}onMouseLeave(e,t){return U(e,ee.MOUSE_LEAVE,i=>{t(this._create(i))})}onMouseMove(e,t){return U(e,"mousemove",i=>t(this._create(i)))}}class Bie{constructor(e){this._editorViewDomNode=e}_create(e){return new Wc(e,!1,this._editorViewDomNode)}onPointerUp(e,t){return U(e,"pointerup",i=>{t(this._create(i))})}onPointerDown(e,t){return U(e,ee.POINTER_DOWN,i=>{t(this._create(i),i.pointerId)})}onPointerLeave(e,t){return U(e,ee.POINTER_LEAVE,i=>{t(this._create(i))})}onPointerMove(e,t){return U(e,"pointermove",i=>t(this._create(i)))}}class Wie extends z{constructor(e){super(),this._editorViewDomNode=e,this._globalPointerMoveMonitor=this._register(new Hg),this._keydownListener=null}startMonitoring(e,t,i,n,s){this._keydownListener=jt(e.ownerDocument,"keydown",r=>{r.toKeyCodeChord().isModifierKey()||this._globalPointerMoveMonitor.stopMonitoring(!0,r.browserEvent)},!0),this._globalPointerMoveMonitor.startMonitoring(e,t,i,r=>{n(new Wc(r,!0,this._editorViewDomNode))},r=>{this._keydownListener.dispose(),s(r)})}stopMonitoring(){this._globalPointerMoveMonitor.stopMonitoring(!0)}}const Yw=class Yw{constructor(e){this._editor=e,this._instanceId=++Yw._idPool,this._counter=0,this._rules=new Map,this._garbageCollectionScheduler=new ci(()=>this.garbageCollect(),1e3)}createClassNameRef(e){const t=this.getOrCreateRule(e);return t.increaseRefCount(),{className:t.className,dispose:()=>{t.decreaseRefCount(),this._garbageCollectionScheduler.schedule()}}}getOrCreateRule(e){const t=this.computeUniqueKey(e);let i=this._rules.get(t);if(!i){const n=this._counter++;i=new Hie(t,`dyn-rule-${this._instanceId}-${n}`,_C(this._editor.getContainerDomNode())?this._editor.getContainerDomNode():void 0,e),this._rules.set(t,i)}return i}computeUniqueKey(e){return JSON.stringify(e)}garbageCollect(){for(const e of this._rules.values())e.hasReferences()||(this._rules.delete(e.key),e.dispose())}};Yw._idPool=0;let kv=Yw;class Hie{constructor(e,t,i,n){this.key=e,this.className=t,this.properties=n,this._referenceCount=0,this._styleElementDisposables=new X,this._styleElement=Vs(i,void 0,this._styleElementDisposables),this._styleElement.textContent=this.getCssText(this.className,this.properties)}getCssText(e,t){let i=`.${e} {`;for(const n in t){const s=t[n];let r;typeof s=="object"?r=oe(s.id):r=s;const a=Vie(n);i+=` - ${a}: ${r};`}return i+=` -}`,i}dispose(){this._styleElementDisposables.dispose(),this._styleElement=void 0}increaseRefCount(){this._referenceCount++}decreaseRefCount(){this._referenceCount--}hasReferences(){return this._referenceCount>0}}function Vie(o){return o.replace(/(^[A-Z])/,([e])=>e.toLowerCase()).replace(/([A-Z])/g,([e])=>`-${e.toLowerCase()}`)}class ab extends z{constructor(){super(),this._shouldRender=!0}shouldRender(){return this._shouldRender}forceShouldRender(){this._shouldRender=!0}setShouldRender(){this._shouldRender=!0}onDidRender(){this._shouldRender=!1}onCompositionStart(e){return!1}onCompositionEnd(e){return!1}onConfigurationChanged(e){return!1}onCursorStateChanged(e){return!1}onDecorationsChanged(e){return!1}onFlushed(e){return!1}onFocusChanged(e){return!1}onLanguageConfigurationChanged(e){return!1}onLineMappingChanged(e){return!1}onLinesChanged(e){return!1}onLinesDeleted(e){return!1}onLinesInserted(e){return!1}onRevealRangeRequest(e){return!1}onScrollChanged(e){return!1}onThemeChanged(e){return!1}onTokensChanged(e){return!1}onTokensColorsChanged(e){return!1}onZonesChanged(e){return!1}handleEvents(e){let t=!1;for(let i=0,n=e.length;i=a.left?n.width=Math.max(n.width,a.left+a.width-n.left):(t[i++]=n,n=a)}return t[i++]=n,t}static _createHorizontalRangesFromClientRects(e,t,i){if(!e||e.length===0)return null;const n=[];for(let s=0,r=e.length;sl)return null;if(t=Math.min(l,Math.max(0,t)),n=Math.min(l,Math.max(0,n)),t===n&&i===s&&i===0&&!e.children[t].firstChild){const u=e.children[t].getClientRects();return r.markDidDomLayout(),this._createHorizontalRangesFromClientRects(u,r.clientRectDeltaLeft,r.clientRectScale)}t!==n&&n>0&&s===0&&(n--,s=1073741824);let c=e.children[t].firstChild,d=e.children[n].firstChild;if((!c||!d)&&(!c&&i===0&&t>0&&(c=e.children[t-1].firstChild,i=1073741824),!d&&s===0&&n>0&&(d=e.children[n-1].firstChild,s=1073741824)),!c||!d)return null;i=Math.min(c.textContent.length,Math.max(0,i)),s=Math.min(d.textContent.length,Math.max(0,s));const h=this._readClientRects(c,i,d,s,r.endNode);return r.markDidDomLayout(),this._createHorizontalRangesFromClientRects(h,r.clientRectDeltaLeft,r.clientRectScale)}}const jie=(function(){return oC?!0:!(Un||Mo||Ac)})();let Gf=!0;class xO{constructor(e,t){this.themeType=t;const i=e.options,n=i.get(50);i.get(38)==="off"?this.renderWhitespace=i.get(100):this.renderWhitespace="none",this.renderControlCharacters=i.get(95),this.spaceWidth=n.spaceWidth,this.middotWidth=n.middotWidth,this.wsmiddotWidth=n.wsmiddotWidth,this.useMonospaceOptimizations=n.isMonospace&&!i.get(33),this.canUseHalfwidthRightwardsArrow=n.canUseHalfwidthRightwardsArrow,this.lineHeight=i.get(67),this.stopRenderingLineAfter=i.get(118),this.fontLigatures=i.get(51)}equals(e){return this.themeType===e.themeType&&this.renderWhitespace===e.renderWhitespace&&this.renderControlCharacters===e.renderControlCharacters&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.wsmiddotWidth===e.wsmiddotWidth&&this.useMonospaceOptimizations===e.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineHeight===e.lineHeight&&this.stopRenderingLineAfter===e.stopRenderingLineAfter&&this.fontLigatures===e.fontLigatures}}const Qw=class Qw{constructor(e){this._options=e,this._isMaybeInvalid=!0,this._renderedViewLine=null}getDomNode(){return this._renderedViewLine&&this._renderedViewLine.domNode?this._renderedViewLine.domNode.domNode:null}setDomNode(e){if(this._renderedViewLine)this._renderedViewLine.domNode=ot(e);else throw new Error("I have no rendered view line to set the dom node to...")}onContentChanged(){this._isMaybeInvalid=!0}onTokensChanged(){this._isMaybeInvalid=!0}onDecorationsChanged(){this._isMaybeInvalid=!0}onOptionsChanged(e){this._isMaybeInvalid=!0,this._options=e}onSelectionChanged(){return mc(this._options.themeType)||this._options.renderWhitespace==="selection"?(this._isMaybeInvalid=!0,!0):!1}renderLine(e,t,i,n,s){if(this._isMaybeInvalid===!1)return!1;this._isMaybeInvalid=!1;const r=n.getViewLineRenderingData(e),a=this._options,l=As.filter(r.inlineDecorations,e,r.minColumn,r.maxColumn);let c=null;if(mc(a.themeType)||this._options.renderWhitespace==="selection"){const f=n.selections;for(const g of f){if(g.endLineNumbere)continue;const p=g.startLineNumber===e?g.startColumn:r.minColumn,_=g.endLineNumber===e?g.endColumn:r.maxColumn;p<_&&(mc(a.themeType)&&l.push(new As(p,_,"inline-selected-text",0)),this._options.renderWhitespace==="selection"&&(c||(c=[]),c.push(new l8(p-1,_-1))))}}const d=new gu(a.useMonospaceOptimizations,a.canUseHalfwidthRightwardsArrow,r.content,r.continuesWithWrappedLine,r.isBasicASCII,r.containsRTL,r.minColumn-1,r.tokens,l,r.tabSize,r.startVisibleColumn,a.spaceWidth,a.middotWidth,a.wsmiddotWidth,a.stopRenderingLineAfter,a.renderWhitespace,a.renderControlCharacters,a.fontLigatures!==Mc.OFF,c);if(this._renderedViewLine&&this._renderedViewLine.input.equals(d))return!1;s.appendString('
    ');const h=Sy(d,s);s.appendString("
    ");let u=null;return Gf&&jie&&r.isBasicASCII&&a.useMonospaceOptimizations&&h.containsForeignElements===0&&(u=new t1(this._renderedViewLine?this._renderedViewLine.domNode:null,d,h.characterMapping)),u||(u=_8(this._renderedViewLine?this._renderedViewLine.domNode:null,d,h.characterMapping,h.containsRTL,h.containsForeignElements)),this._renderedViewLine=u,!0}layoutLine(e,t,i){this._renderedViewLine&&this._renderedViewLine.domNode&&(this._renderedViewLine.domNode.setTop(t),this._renderedViewLine.domNode.setHeight(i))}getWidth(e){return this._renderedViewLine?this._renderedViewLine.getWidth(e):0}getWidthIsFast(){return this._renderedViewLine?this._renderedViewLine.getWidthIsFast():!0}needsMonospaceFontCheck(){return this._renderedViewLine?this._renderedViewLine instanceof t1:!1}monospaceAssumptionsAreValid(){return this._renderedViewLine&&this._renderedViewLine instanceof t1?this._renderedViewLine.monospaceAssumptionsAreValid():Gf}onMonospaceAssumptionsInvalidated(){this._renderedViewLine&&this._renderedViewLine instanceof t1&&(this._renderedViewLine=this._renderedViewLine.toSlowRenderedLine())}getVisibleRangesForRange(e,t,i,n){if(!this._renderedViewLine)return null;t=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,t)),i=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,i));const s=this._renderedViewLine.input.stopRenderingLineAfter;if(s!==-1&&t>s+1&&i>s+1)return new LO(!0,[new ih(this.getWidth(n),0)]);s!==-1&&t>s+1&&(t=s+1),s!==-1&&i>s+1&&(i=s+1);const r=this._renderedViewLine.getVisibleRangesForRange(e,t,i,n);return r&&r.length>0?new LO(!1,r):null}getColumnOfNodeOffset(e,t){return this._renderedViewLine?this._renderedViewLine.getColumnOfNodeOffset(e,t):1}};Qw.CLASS_NAME="view-line";let sl=Qw;class t1{constructor(e,t,i){this._cachedWidth=-1,this.domNode=e,this.input=t;const n=Math.floor(t.lineContent.length/300);if(n>0){this._keyColumnPixelOffsetCache=new Float32Array(n);for(let s=0;s=2&&(console.warn("monospace assumptions have been violated, therefore disabling monospace optimizations!"),Gf=!1)}return Gf}toSlowRenderedLine(){return _8(this.domNode,this.input,this._characterMapping,!1,0)}getVisibleRangesForRange(e,t,i,n){const s=this._getColumnPixelOffset(e,t,n),r=this._getColumnPixelOffset(e,i,n);return[new ih(s,r-s)]}_getColumnPixelOffset(e,t,i){if(t<=300){const c=this._characterMapping.getHorizontalOffset(t);return this._charWidth*c}const n=Math.floor((t-1)/300)-1,s=(n+1)*300+1;let r=-1;if(this._keyColumnPixelOffsetCache&&(r=this._keyColumnPixelOffsetCache[n],r===-1&&(r=this._actualReadPixelOffset(e,s,i),this._keyColumnPixelOffsetCache[n]=r)),r===-1){const c=this._characterMapping.getHorizontalOffset(t);return this._charWidth*c}const a=this._characterMapping.getHorizontalOffset(s),l=this._characterMapping.getHorizontalOffset(t);return r+this._charWidth*(l-a)}_getReadingTarget(e){return e.domNode.firstChild}_actualReadPixelOffset(e,t,i){if(!this.domNode)return-1;const n=this._characterMapping.getDomPosition(t),s=U1.readHorizontalRanges(this._getReadingTarget(this.domNode),n.partIndex,n.charIndex,n.partIndex,n.charIndex,i);return!s||s.length===0?-1:s[0].left}getColumnOfNodeOffset(e,t){return b8(this._characterMapping,e,t)}}class p8{constructor(e,t,i,n,s){if(this.domNode=e,this.input=t,this._characterMapping=i,this._isWhitespaceOnly=/^\s*$/.test(t.lineContent),this._containsForeignElements=s,this._cachedWidth=-1,this._pixelOffsetCache=null,!n||this._characterMapping.length===0){this._pixelOffsetCache=new Float32Array(Math.max(2,this._characterMapping.length+1));for(let r=0,a=this._characterMapping.length;r<=a;r++)this._pixelOffsetCache[r]=-1}}_getReadingTarget(e){return e.domNode.firstChild}getWidth(e){return this.domNode?(this._cachedWidth===-1&&(this._cachedWidth=this._getReadingTarget(this.domNode).offsetWidth,e?.markDidDomLayout()),this._cachedWidth):0}getWidthIsFast(){return this._cachedWidth!==-1}getVisibleRangesForRange(e,t,i,n){if(!this.domNode)return null;if(this._pixelOffsetCache!==null){const s=this._readPixelOffset(this.domNode,e,t,n);if(s===-1)return null;const r=this._readPixelOffset(this.domNode,e,i,n);return r===-1?null:[new ih(s,r-s)]}return this._readVisibleRangesForRange(this.domNode,e,t,i,n)}_readVisibleRangesForRange(e,t,i,n,s){if(i===n){const r=this._readPixelOffset(e,t,i,s);return r===-1?null:[new ih(r,0)]}else return this._readRawVisibleRangesForRange(e,i,n,s)}_readPixelOffset(e,t,i,n){if(this._characterMapping.length===0){if(this._containsForeignElements===0||this._containsForeignElements===2)return 0;if(this._containsForeignElements===1)return this.getWidth(n);const s=this._getReadingTarget(e);return s.firstChild?(n.markDidDomLayout(),s.firstChild.offsetWidth):0}if(this._pixelOffsetCache!==null){const s=this._pixelOffsetCache[i];if(s!==-1)return s;const r=this._actualReadPixelOffset(e,t,i,n);return this._pixelOffsetCache[i]=r,r}return this._actualReadPixelOffset(e,t,i,n)}_actualReadPixelOffset(e,t,i,n){if(this._characterMapping.length===0){const l=U1.readHorizontalRanges(this._getReadingTarget(e),0,0,0,0,n);return!l||l.length===0?-1:l[0].left}if(i===this._characterMapping.length&&this._isWhitespaceOnly&&this._containsForeignElements===0)return this.getWidth(n);const s=this._characterMapping.getDomPosition(i),r=U1.readHorizontalRanges(this._getReadingTarget(e),s.partIndex,s.charIndex,s.partIndex,s.charIndex,n);if(!r||r.length===0)return-1;const a=r[0].left;if(this.input.isBasicASCII){const l=this._characterMapping.getHorizontalOffset(i),c=Math.round(this.input.spaceWidth*l);if(Math.abs(c-a)<=1)return c}return a}_readRawVisibleRangesForRange(e,t,i,n){if(t===1&&i===this._characterMapping.length)return[new ih(0,this.getWidth(n))];const s=this._characterMapping.getDomPosition(t),r=this._characterMapping.getDomPosition(i);return U1.readHorizontalRanges(this._getReadingTarget(e),s.partIndex,s.charIndex,r.partIndex,r.charIndex,n)}getColumnOfNodeOffset(e,t){return b8(this._characterMapping,e,t)}}class qie extends p8{_readVisibleRangesForRange(e,t,i,n,s){const r=super._readVisibleRangesForRange(e,t,i,n,s);if(!r||r.length===0||i===n||i===1&&n===this._characterMapping.length)return r;if(!this.input.containsRTL){const a=this._readPixelOffset(e,t,n,s);if(a!==-1){const l=r[r.length-1];l.left=4&&e[0]===3&&e[3]===8}static isStrictChildOfViewLines(e){return e.length>4&&e[0]===3&&e[3]===8}static isChildOfScrollableElement(e){return e.length>=2&&e[0]===3&&e[1]===6}static isChildOfMinimap(e){return e.length>=2&&e[0]===3&&e[1]===9}static isChildOfContentWidgets(e){return e.length>=4&&e[0]===3&&e[3]===1}static isChildOfOverflowGuard(e){return e.length>=1&&e[0]===3}static isChildOfOverflowingContentWidgets(e){return e.length>=1&&e[0]===2}static isChildOfOverlayWidgets(e){return e.length>=2&&e[0]===3&&e[1]===4}static isChildOfOverflowingOverlayWidgets(e){return e.length>=1&&e[0]===5}}class kg{constructor(e,t,i){this.viewModel=e.viewModel;const n=e.configuration.options;this.layoutInfo=n.get(146),this.viewDomNode=t.viewDomNode,this.lineHeight=n.get(67),this.stickyTabStops=n.get(117),this.typicalHalfwidthCharacterWidth=n.get(50).typicalHalfwidthCharacterWidth,this.lastRenderData=i,this._context=e,this._viewHelper=t}getZoneAtCoord(e){return kg.getZoneAtCoord(this._context,e)}static getZoneAtCoord(e,t){const i=e.viewLayout.getWhitespaceAtVerticalOffset(t);if(i){const n=i.verticalOffset+i.height/2,s=e.viewModel.getLineCount();let r=null,a,l=null;return i.afterLineNumber!==s&&(l=new P(i.afterLineNumber+1,1)),i.afterLineNumber>0&&(r=new P(i.afterLineNumber,e.viewModel.getLineMaxColumn(i.afterLineNumber))),l===null?a=r:r===null?a=l:t=e.layoutInfo.glyphMarginLeft,this.isInContentArea=!this.isInMarginArea,this.mouseColumn=Math.max(0,rn._getMouseColumn(this.mouseContentHorizontalOffset,e.typicalHalfwidthCharacterWidth))}}class Xie extends Qie{get target(){return this._useHitTestTarget?this.hitTestResult.value.hitTarget:this._eventTarget}get targetPath(){return this._targetPathCacheElement!==this.target&&(this._targetPathCacheElement=this.target,this._targetPathCacheValue=vr.collect(this.target,this._ctx.viewDomNode)),this._targetPathCacheValue}constructor(e,t,i,n,s){super(e,t,i,n),this.hitTestResult=new ua(()=>rn.doHitTest(this._ctx,this)),this._targetPathCacheElement=null,this._targetPathCacheValue=new Uint8Array(0),this._ctx=e,this._eventTarget=s;const r=!!this._eventTarget;this._useHitTestTarget=!r}toString(){return`pos(${this.pos.x},${this.pos.y}), editorPos(${this.editorPos.x},${this.editorPos.y}), relativePos(${this.relativePos.x},${this.relativePos.y}), mouseVerticalOffset: ${this.mouseVerticalOffset}, mouseContentHorizontalOffset: ${this.mouseContentHorizontalOffset} - target: ${this.target?this.target.outerHTML:null}`}get wouldBenefitFromHitTestTargetSwitch(){return!this._useHitTestTarget&&this.hitTestResult.value.hitTarget!==null&&this.target!==this.hitTestResult.value.hitTarget}switchToHitTestTarget(){this._useHitTestTarget=!0}_getMouseColumn(e=null){return e&&e.columnr.contentLeft+r.width)continue;const a=e.getVerticalOffsetForLineNumber(r.position.lineNumber);if(a<=s&&s<=a+r.height)return t.fulfillContentText(r.position,null,{mightBeForeignElement:!1,injectedText:null})}}return null}static _hitTestViewZone(e,t){const i=e.getZoneAtCoord(t.mouseVerticalOffset);if(i){const n=t.isInContentArea?8:5;return t.fulfillViewZone(n,i.position,i)}return null}static _hitTestTextArea(e,t){return _n.isTextArea(t.targetPath)?e.lastRenderData.lastTextareaPosition?t.fulfillContentText(e.lastRenderData.lastTextareaPosition,null,{mightBeForeignElement:!1,injectedText:null}):t.fulfillTextarea():null}static _hitTestMargin(e,t){if(t.isInMarginArea){const i=e.getFullLineRangeAtCoord(t.mouseVerticalOffset),n=i.range.getStartPosition();let s=Math.abs(t.relativePos.x);const r={isAfterLines:i.isAfterLines,glyphMarginLeft:e.layoutInfo.glyphMarginLeft,glyphMarginWidth:e.layoutInfo.glyphMarginWidth,lineNumbersWidth:e.layoutInfo.lineNumbersWidth,offsetX:s};if(s-=e.layoutInfo.glyphMarginLeft,s<=e.layoutInfo.glyphMarginWidth){const a=e.viewModel.coordinatesConverter.convertViewPositionToModelPosition(i.range.getStartPosition()),l=e.viewModel.glyphLanes.getLanesAtLine(a.lineNumber);return r.glyphMarginLane=l[Math.floor(s/e.lineHeight)],t.fulfillMargin(2,n,i.range,r)}return s-=e.layoutInfo.glyphMarginWidth,s<=e.layoutInfo.lineNumbersWidth?t.fulfillMargin(3,n,i.range,r):(s-=e.layoutInfo.lineNumbersWidth,t.fulfillMargin(4,n,i.range,r))}return null}static _hitTestViewLines(e,t){if(!_n.isChildOfViewLines(t.targetPath))return null;if(e.isInTopPadding(t.mouseVerticalOffset))return t.fulfillContentEmpty(new P(1,1),kO);if(e.isAfterLines(t.mouseVerticalOffset)||e.isInBottomPadding(t.mouseVerticalOffset)){const n=e.viewModel.getLineCount(),s=e.viewModel.getLineMaxColumn(n);return t.fulfillContentEmpty(new P(n,s),kO)}if(_n.isStrictChildOfViewLines(t.targetPath)){const n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset);if(e.viewModel.getLineLength(n)===0){const r=e.getLineWidth(n),a=JS(t.mouseContentHorizontalOffset-r);return t.fulfillContentEmpty(new P(n,1),a)}const s=e.getLineWidth(n);if(t.mouseContentHorizontalOffset>=s){const r=JS(t.mouseContentHorizontalOffset-s),a=new P(n,e.viewModel.getLineMaxColumn(n));return t.fulfillContentEmpty(a,r)}}const i=t.hitTestResult.value;return i.type===1?rn.createMouseTargetFromHitTestPosition(e,t,i.spanNode,i.position,i.injectedText):t.wouldBenefitFromHitTestTargetSwitch?(t.switchToHitTestTarget(),this._createMouseTarget(e,t)):t.fulfillUnknown()}static _hitTestMinimap(e,t){if(_n.isChildOfMinimap(t.targetPath)){const i=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),n=e.viewModel.getLineMaxColumn(i);return t.fulfillScrollbar(new P(i,n))}return null}static _hitTestScrollbarSlider(e,t){if(_n.isChildOfScrollableElement(t.targetPath)&&t.target&&t.target.nodeType===1){const i=t.target.className;if(i&&/\b(slider|scrollbar)\b/.test(i)){const n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),s=e.viewModel.getLineMaxColumn(n);return t.fulfillScrollbar(new P(n,s))}}return null}static _hitTestScrollbar(e,t){if(_n.isChildOfScrollableElement(t.targetPath)){const i=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),n=e.viewModel.getLineMaxColumn(i);return t.fulfillScrollbar(new P(i,n))}return null}getMouseColumn(e){const t=this._context.configuration.options,i=t.get(146),n=this._context.viewLayout.getCurrentScrollLeft()+e.x-i.contentLeft;return rn._getMouseColumn(n,t.get(50).typicalHalfwidthCharacterWidth)}static _getMouseColumn(e,t){return e<0?1:Math.round(e/t)+1}static createMouseTargetFromHitTestPosition(e,t,i,n,s){const r=n.lineNumber,a=n.column,l=e.getLineWidth(r);if(t.mouseContentHorizontalOffset>l){const b=JS(t.mouseContentHorizontalOffset-l);return t.fulfillContentEmpty(n,b)}const c=e.visibleRangeForPosition(r,a);if(!c)return t.fulfillUnknown(n);const d=c.left;if(Math.abs(t.mouseContentHorizontalOffset-d)<1)return t.fulfillContentText(n,null,{mightBeForeignElement:!!s,injectedText:s});const h=[];if(h.push({offset:c.left,column:a}),a>1){const b=e.visibleRangeForPosition(r,a-1);b&&h.push({offset:b.left,column:a-1})}const u=e.viewModel.getLineMaxColumn(r);if(ab.offset-C.offset);const f=t.pos.toClientCoordinates(fe(e.viewDomNode)),g=i.getBoundingClientRect(),p=g.left<=f.clientX&&f.clientX<=g.right;let _=null;for(let b=1;bs)){const a=Math.floor((n+s)/2);let l=t.pos.y+(a-t.mouseVerticalOffset);l<=t.editorPos.y&&(l=t.editorPos.y+1),l>=t.editorPos.y+t.editorPos.height&&(l=t.editorPos.y+t.editorPos.height-1);const c=new xy(t.pos.x,l),d=this._actualDoHitTestWithCaretRangeFromPoint(e,c.toClientCoordinates(fe(e.viewDomNode)));if(d.type===1)return d}return this._actualDoHitTestWithCaretRangeFromPoint(e,t.pos.toClientCoordinates(fe(e.viewDomNode)))}static _actualDoHitTestWithCaretRangeFromPoint(e,t){const i=ag(e.viewDomNode);let n;if(i?typeof i.caretRangeFromPoint>"u"?n=Jie(i,t.clientX,t.clientY):n=i.caretRangeFromPoint(t.clientX,t.clientY):n=e.viewDomNode.ownerDocument.caretRangeFromPoint(t.clientX,t.clientY),!n||!n.startContainer)return new jl;const s=n.startContainer;if(s.nodeType===s.TEXT_NODE){const r=s.parentNode,a=r?r.parentNode:null,l=a?a.parentNode:null;return(l&&l.nodeType===l.ELEMENT_NODE?l.className:null)===sl.CLASS_NAME?Dd.createFromDOMInfo(e,r,n.startOffset):new jl(s.parentNode)}else if(s.nodeType===s.ELEMENT_NODE){const r=s.parentNode,a=r?r.parentNode:null;return(a&&a.nodeType===a.ELEMENT_NODE?a.className:null)===sl.CLASS_NAME?Dd.createFromDOMInfo(e,s,s.textContent.length):new jl(s)}return new jl}static _doHitTestWithCaretPositionFromPoint(e,t){const i=e.viewDomNode.ownerDocument.caretPositionFromPoint(t.clientX,t.clientY);if(i.offsetNode.nodeType===i.offsetNode.TEXT_NODE){const n=i.offsetNode.parentNode,s=n?n.parentNode:null,r=s?s.parentNode:null;return(r&&r.nodeType===r.ELEMENT_NODE?r.className:null)===sl.CLASS_NAME?Dd.createFromDOMInfo(e,i.offsetNode.parentNode,i.offset):new jl(i.offsetNode.parentNode)}if(i.offsetNode.nodeType===i.offsetNode.ELEMENT_NODE){const n=i.offsetNode.parentNode,s=n&&n.nodeType===n.ELEMENT_NODE?n.className:null,r=n?n.parentNode:null,a=r&&r.nodeType===r.ELEMENT_NODE?r.className:null;if(s===sl.CLASS_NAME){const l=i.offsetNode.childNodes[Math.min(i.offset,i.offsetNode.childNodes.length-1)];if(l)return Dd.createFromDOMInfo(e,l,0)}else if(a===sl.CLASS_NAME)return Dd.createFromDOMInfo(e,i.offsetNode,0)}return new jl(i.offsetNode)}static _snapToSoftTabBoundary(e,t){const i=t.getLineContent(e.lineNumber),{tabSize:n}=t.model.getOptions(),s=x_.atomicPosition(i,e.column-1,n,2);return s!==-1?new P(e.lineNumber,s+1):e}static doHitTest(e,t){let i=new jl;if(typeof e.viewDomNode.ownerDocument.caretRangeFromPoint=="function"?i=this._doHitTestWithCaretRangeFromPoint(e,t):e.viewDomNode.ownerDocument.caretPositionFromPoint&&(i=this._doHitTestWithCaretPositionFromPoint(e,t.pos.toClientCoordinates(fe(e.viewDomNode)))),i.type===1){const n=e.viewModel.getInjectedTextAt(i.position),s=e.viewModel.normalizePosition(i.position,2);(n||!s.equals(i.position))&&(i=new C8(s,i.spanNode,n))}return i}}function Jie(o,e,t){const i=document.createRange();let n=o.elementFromPoint(e,t);if(n!==null){for(;n&&n.firstChild&&n.firstChild.nodeType!==n.firstChild.TEXT_NODE&&n.lastChild&&n.lastChild.firstChild;)n=n.lastChild;const s=n.getBoundingClientRect(),r=fe(n),a=r.getComputedStyle(n,null).getPropertyValue("font-style"),l=r.getComputedStyle(n,null).getPropertyValue("font-variant"),c=r.getComputedStyle(n,null).getPropertyValue("font-weight"),d=r.getComputedStyle(n,null).getPropertyValue("font-size"),h=r.getComputedStyle(n,null).getPropertyValue("line-height"),u=r.getComputedStyle(n,null).getPropertyValue("font-family"),f=`${a} ${l} ${c} ${d}/${h} ${u}`,g=n.innerText;let p=s.left,_=0,b;if(e>s.left+s.width)_=g.length;else{const C=yI.getInstance();for(let w=0;wthis._createMouseTarget(r,a),r=>this._getMouseColumn(r))),this.lastMouseLeaveTime=-1,this._height=this._context.configuration.options.get(146).height;const n=new Fie(this.viewHelper.viewDomNode);this._register(n.onContextMenu(this.viewHelper.viewDomNode,r=>this._onContextMenu(r,!0))),this._register(n.onMouseMove(this.viewHelper.viewDomNode,r=>{this._onMouseMove(r),this._mouseLeaveMonitor||(this._mouseLeaveMonitor=U(this.viewHelper.viewDomNode.ownerDocument,"mousemove",a=>{this.viewHelper.viewDomNode.contains(a.target)||this._onMouseLeave(new Wc(a,!1,this.viewHelper.viewDomNode))}))})),this._register(n.onMouseUp(this.viewHelper.viewDomNode,r=>this._onMouseUp(r))),this._register(n.onMouseLeave(this.viewHelper.viewDomNode,r=>this._onMouseLeave(r)));let s=0;this._register(n.onPointerDown(this.viewHelper.viewDomNode,(r,a)=>{s=a})),this._register(U(this.viewHelper.viewDomNode,ee.POINTER_UP,r=>{this._mouseDownOperation.onPointerUp()})),this._register(n.onMouseDown(this.viewHelper.viewDomNode,r=>this._onMouseDown(r,s))),this._setupMouseWheelZoomListener(),this._context.addEventHandler(this)}_setupMouseWheelZoomListener(){const e=FC.INSTANCE;let t=0,i=Xl.getZoomLevel(),n=!1,s=0;const r=l=>{if(this.viewController.emitMouseWheel(l),!this._context.configuration.options.get(76))return;const c=new Rh(l);if(e.acceptStandardWheelEvent(c),e.isPhysicalMouseWheel()){if(a(l)){const d=Xl.getZoomLevel(),h=c.deltaY>0?1:-1;Xl.setZoomLevel(d+h),c.preventDefault(),c.stopPropagation()}}else Date.now()-t>50&&(i=Xl.getZoomLevel(),n=a(l),s=0),t=Date.now(),s+=c.deltaY,n&&(Xl.setZoomLevel(i+s/5),c.preventDefault(),c.stopPropagation())};this._register(U(this.viewHelper.viewDomNode,ee.MOUSE_WHEEL,r,{capture:!0,passive:!1}));function a(l){return Ue?(l.metaKey||l.ctrlKey)&&!l.shiftKey&&!l.altKey:l.ctrlKey&&!l.metaKey&&!l.shiftKey&&!l.altKey}}dispose(){this._context.removeEventHandler(this),this._mouseLeaveMonitor&&(this._mouseLeaveMonitor.dispose(),this._mouseLeaveMonitor=null),super.dispose()}onConfigurationChanged(e){if(e.hasChanged(146)){const t=this._context.configuration.options.get(146).height;this._height!==t&&(this._height=t,this._mouseDownOperation.onHeightChanged())}return!1}onCursorStateChanged(e){return this._mouseDownOperation.onCursorStateChanged(e),!1}onFocusChanged(e){return!1}getTargetAtClientPoint(e,t){const n=new m8(e,t).toPageCoordinates(fe(this.viewHelper.viewDomNode)),s=F2(this.viewHelper.viewDomNode);if(n.ys.y+s.height||n.xs.x+s.width)return null;const r=B2(this.viewHelper.viewDomNode,s,n);return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),s,n,r,null)}_createMouseTarget(e,t){let i=e.target;if(!this.viewHelper.viewDomNode.contains(i)){const n=ag(this.viewHelper.viewDomNode);n&&(i=n.elementsFromPoint(e.posx,e.posy).find(s=>this.viewHelper.viewDomNode.contains(s)))}return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),e.editorPos,e.pos,e.relativePos,t?i:null)}_getMouseColumn(e){return this.mouseTargetFactory.getMouseColumn(e.relativePos)}_onContextMenu(e,t){this.viewController.emitContextMenu({event:e,target:this._createMouseTarget(e,t)})}_onMouseMove(e){this.mouseTargetFactory.mouseTargetIsWidget(e)||e.preventDefault(),!(this._mouseDownOperation.isActive()||e.timestamp{e.preventDefault(),this.viewHelper.focusTextArea()};if(d&&(n||r&&a))h(),this._mouseDownOperation.start(i.type,e,t);else if(s)e.preventDefault();else if(l){const u=i.detail;d&&this.viewHelper.shouldSuppressMouseDownOnViewZone(u.viewZoneId)&&(h(),this._mouseDownOperation.start(i.type,e,t),e.preventDefault())}else c&&this.viewHelper.shouldSuppressMouseDownOnWidget(i.detail)&&(h(),e.preventDefault());this.viewController.emitMouseDown({event:e,target:i})}}class ene extends z{constructor(e,t,i,n,s,r){super(),this._context=e,this._viewController=t,this._viewHelper=i,this._mouseTargetFactory=n,this._createMouseTarget=s,this._getMouseColumn=r,this._mouseMoveMonitor=this._register(new Wie(this._viewHelper.viewDomNode)),this._topBottomDragScrolling=this._register(new tne(this._context,this._viewHelper,this._mouseTargetFactory,(a,l,c)=>this._dispatchMouse(a,l,c))),this._mouseState=new SI,this._currentSelection=new Fe(1,1,1,1),this._isActive=!1,this._lastMouseEvent=null}dispose(){super.dispose()}isActive(){return this._isActive}_onMouseDownThenMove(e){this._lastMouseEvent=e,this._mouseState.setModifiers(e);const t=this._findMousePosition(e,!1);t&&(this._mouseState.isDragAndDrop?this._viewController.emitMouseDrag({event:e,target:t}):t.type===13&&(t.outsidePosition==="above"||t.outsidePosition==="below")?this._topBottomDragScrolling.start(t,e):(this._topBottomDragScrolling.stop(),this._dispatchMouse(t,!0,1)))}start(e,t,i){this._lastMouseEvent=t,this._mouseState.setStartedOnLineNumbers(e===3),this._mouseState.setStartButtons(t),this._mouseState.setModifiers(t);const n=this._findMousePosition(t,!0);if(!n||!n.position)return;this._mouseState.trySetCount(t.detail,n.position),t.detail=this._mouseState.count;const s=this._context.configuration.options;if(!s.get(92)&&s.get(35)&&!s.get(22)&&!this._mouseState.altKey&&t.detail<2&&!this._isActive&&!this._currentSelection.isEmpty()&&n.type===6&&n.position&&this._currentSelection.containsPosition(n.position)){this._mouseState.isDragAndDrop=!0,this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,i,t.buttons,r=>this._onMouseDownThenMove(r),r=>{const a=this._findMousePosition(this._lastMouseEvent,!1);Qa(r)?this._viewController.emitMouseDropCanceled():this._viewController.emitMouseDrop({event:this._lastMouseEvent,target:a?this._createMouseTarget(this._lastMouseEvent,!0):null}),this._stop()});return}this._mouseState.isDragAndDrop=!1,this._dispatchMouse(n,t.shiftKey,1),this._isActive||(this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,i,t.buttons,r=>this._onMouseDownThenMove(r),()=>this._stop()))}_stop(){this._isActive=!1,this._topBottomDragScrolling.stop()}onHeightChanged(){this._mouseMoveMonitor.stopMonitoring()}onPointerUp(){this._mouseMoveMonitor.stopMonitoring()}onCursorStateChanged(e){this._currentSelection=e.selections[0]}_getPositionOutsideEditor(e){const t=e.editorPos,i=this._context.viewModel,n=this._context.viewLayout,s=this._getMouseColumn(e);if(e.posyt.y+t.height){const a=e.posy-t.y-t.height,l=n.getCurrentScrollTop()+e.relativePos.y,c=kg.getZoneAtCoord(this._context,l);if(c){const h=this._helpPositionJumpOverViewZone(c);if(h)return ln.createOutsideEditor(s,h,"below",a)}const d=n.getLineNumberAtVerticalOffset(l);return ln.createOutsideEditor(s,new P(d,i.getLineMaxColumn(d)),"below",a)}const r=n.getLineNumberAtVerticalOffset(n.getCurrentScrollTop()+e.relativePos.y);if(e.posxt.x+t.width){const a=e.posx-t.x-t.width;return ln.createOutsideEditor(s,new P(r,i.getLineMaxColumn(r)),"right",a)}return null}_findMousePosition(e,t){const i=this._getPositionOutsideEditor(e);if(i)return i;const n=this._createMouseTarget(e,t);if(!n.position)return null;if(n.type===8||n.type===5){const r=this._helpPositionJumpOverViewZone(n.detail);if(r)return ln.createViewZone(n.type,n.element,n.mouseColumn,r,n.detail)}return n}_helpPositionJumpOverViewZone(e){const t=new P(this._currentSelection.selectionStartLineNumber,this._currentSelection.selectionStartColumn),i=e.positionBefore,n=e.positionAfter;return i&&n?i.isBefore(t)?i:n:null}_dispatchMouse(e,t,i){e.position&&this._viewController.dispatchMouse({position:e.position,mouseColumn:e.mouseColumn,startedOnLineNumbers:this._mouseState.startedOnLineNumbers,revealType:i,inSelectionMode:t,mouseDownCount:this._mouseState.count,altKey:this._mouseState.altKey,ctrlKey:this._mouseState.ctrlKey,metaKey:this._mouseState.metaKey,shiftKey:this._mouseState.shiftKey,leftButton:this._mouseState.leftButton,middleButton:this._mouseState.middleButton,onInjectedText:e.type===6&&e.detail.injectedText!==null})}}class tne extends z{constructor(e,t,i,n){super(),this._context=e,this._viewHelper=t,this._mouseTargetFactory=i,this._dispatchMouse=n,this._operation=null}dispose(){super.dispose(),this.stop()}start(e,t){this._operation?this._operation.setPosition(e,t):this._operation=new ine(this._context,this._viewHelper,this._mouseTargetFactory,this._dispatchMouse,e,t)}stop(){this._operation&&(this._operation.dispose(),this._operation=null)}}class ine extends z{constructor(e,t,i,n,s,r){super(),this._context=e,this._viewHelper=t,this._mouseTargetFactory=i,this._dispatchMouse=n,this._position=s,this._mouseEvent=r,this._lastTime=Date.now(),this._animationFrameDisposable=fs(fe(r.browserEvent),()=>this._execute())}dispose(){this._animationFrameDisposable.dispose(),super.dispose()}setPosition(e,t){this._position=e,this._mouseEvent=t}_tick(){const e=Date.now(),t=e-this._lastTime;return this._lastTime=e,t}_getScrollSpeed(){const e=this._context.configuration.options.get(67),t=this._context.configuration.options.get(146).height/e,i=this._position.outsideDistance/e;return i<=1.5?Math.max(30,t*(1+i)):i<=3?Math.max(60,t*(2+i)):Math.max(200,t*(7+i))}_execute(){const e=this._context.configuration.options.get(67),t=this._getScrollSpeed(),i=this._tick(),n=t*(i/1e3)*e,s=this._position.outsidePosition==="above"?-n:n;this._context.viewModel.viewLayout.deltaScrollNow(0,s),this._viewHelper.renderNow();const r=this._context.viewLayout.getLinesViewportData(),a=this._position.outsidePosition==="above"?r.startLineNumber:r.endLineNumber;let l;{const c=F2(this._viewHelper.viewDomNode),d=this._context.configuration.options.get(146).horizontalScrollbarHeight,h=new xy(this._mouseEvent.pos.x,c.y+c.height-d-.1),u=B2(this._viewHelper.viewDomNode,c,h);l=this._mouseTargetFactory.createMouseTarget(this._viewHelper.getLastRenderData(),c,h,u,null)}(!l.position||l.position.lineNumber!==a)&&(this._position.outsidePosition==="above"?l=ln.createOutsideEditor(this._position.mouseColumn,new P(a,1),"above",this._position.outsideDistance):l=ln.createOutsideEditor(this._position.mouseColumn,new P(a,this._context.viewModel.getLineMaxColumn(a)),"below",this._position.outsideDistance)),this._dispatchMouse(l,!0,2),this._animationFrameDisposable=fs(fe(l.element),()=>this._execute())}}const Xw=class Xw{get altKey(){return this._altKey}get ctrlKey(){return this._ctrlKey}get metaKey(){return this._metaKey}get shiftKey(){return this._shiftKey}get leftButton(){return this._leftButton}get middleButton(){return this._middleButton}get startedOnLineNumbers(){return this._startedOnLineNumbers}constructor(){this._altKey=!1,this._ctrlKey=!1,this._metaKey=!1,this._shiftKey=!1,this._leftButton=!1,this._middleButton=!1,this._startedOnLineNumbers=!1,this._lastMouseDownPosition=null,this._lastMouseDownPositionEqualCount=0,this._lastMouseDownCount=0,this._lastSetMouseDownCountTime=0,this.isDragAndDrop=!1}get count(){return this._lastMouseDownCount}setModifiers(e){this._altKey=e.altKey,this._ctrlKey=e.ctrlKey,this._metaKey=e.metaKey,this._shiftKey=e.shiftKey}setStartButtons(e){this._leftButton=e.leftButton,this._middleButton=e.middleButton}setStartedOnLineNumbers(e){this._startedOnLineNumbers=e}trySetCount(e,t){const i=new Date().getTime();i-this._lastSetMouseDownCountTime>Xw.CLEAR_MOUSE_DOWN_COUNT_TIME&&(e=1),this._lastSetMouseDownCountTime=i,e>this._lastMouseDownCount+1&&(e=this._lastMouseDownCount+1),this._lastMouseDownPosition&&this._lastMouseDownPosition.equals(t)?this._lastMouseDownPositionEqualCount++:this._lastMouseDownPositionEqualCount=1,this._lastMouseDownPosition=t,this._lastMouseDownCount=Math.min(e,this._lastMouseDownPositionEqualCount)}};Xw.CLEAR_MOUSE_DOWN_COUNT_TIME=400;let SI=Xw;const kf=class kf{constructor(e,t,i,n,s){this.value=e,this.selectionStart=t,this.selectionEnd=i,this.selection=n,this.newlineCountBeforeSelection=s}toString(){return`[ <${this.value}>, selectionStart: ${this.selectionStart}, selectionEnd: ${this.selectionEnd}]`}static readFromTextArea(e,t){const i=e.getValue(),n=e.getSelectionStart(),s=e.getSelectionEnd();let r;if(t){const a=i.substring(0,n),l=t.value.substring(0,t.selectionStart);a===l&&(r=t.newlineCountBeforeSelection)}return new kf(i,n,s,null,r)}collapseSelection(){return this.selectionStart===this.value.length?this:new kf(this.value,this.value.length,this.value.length,null,void 0)}writeToTextArea(e,t,i){t.setValue(e,this.value),i&&t.setSelectionRange(e,this.selectionStart,this.selectionEnd)}deduceEditorPosition(e){if(e<=this.selectionStart){const n=this.value.substring(e,this.selectionStart);return this._finishDeduceEditorPosition(this.selection?.getStartPosition()??null,n,-1)}if(e>=this.selectionEnd){const n=this.value.substring(this.selectionEnd,e);return this._finishDeduceEditorPosition(this.selection?.getEndPosition()??null,n,1)}const t=this.value.substring(this.selectionStart,e);if(t.indexOf("…")===-1)return this._finishDeduceEditorPosition(this.selection?.getStartPosition()??null,t,1);const i=this.value.substring(e,this.selectionEnd);return this._finishDeduceEditorPosition(this.selection?.getEndPosition()??null,i,-1)}_finishDeduceEditorPosition(e,t,i){let n=0,s=-1;for(;(s=t.indexOf(` -`,s+1))!==-1;)n++;return[e,i*t.length,n]}static deduceInput(e,t,i){if(!e)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};const n=Math.min(Th(e.value,t.value),e.selectionStart,t.selectionStart),s=Math.min(Px(e.value,t.value),e.value.length-e.selectionEnd,t.value.length-t.selectionEnd);e.value.substring(n,e.value.length-s);const r=t.value.substring(n,t.value.length-s),a=e.selectionStart-n,l=e.selectionEnd-n,c=t.selectionStart-n,d=t.selectionEnd-n;if(c===d){const u=e.selectionStart-n;return{text:r,replacePrevCharCnt:u,replaceNextCharCnt:0,positionDelta:0}}const h=l-a;return{text:r,replacePrevCharCnt:h,replaceNextCharCnt:0,positionDelta:0}}static deduceAndroidCompositionInput(e,t){if(!e)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};if(e.value===t.value)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:t.selectionEnd-e.selectionEnd};const i=Math.min(Th(e.value,t.value),e.selectionEnd),n=Math.min(Px(e.value,t.value),e.value.length-e.selectionEnd),s=e.value.substring(i,e.value.length-n),r=t.value.substring(i,t.value.length-n);e.selectionStart-i;const a=e.selectionEnd-i;t.selectionStart-i;const l=t.selectionEnd-i;return{text:r,replacePrevCharCnt:a,replaceNextCharCnt:s.length-a,positionDelta:l-r.length}}};kf.EMPTY=new kf("",0,0,null,void 0);let cn=kf;class df{static _getPageOfLine(e,t){return Math.floor((e-1)/t)}static _getRangeForPage(e,t){const i=e*t,n=i+1,s=i+t;return new I(n,1,s+1,1)}static fromEditorSelection(e,t,i,n){const r=df._getPageOfLine(t.startLineNumber,i),a=df._getRangeForPage(r,i),l=df._getPageOfLine(t.endLineNumber,i),c=df._getRangeForPage(l,i);let d=a.intersectRanges(new I(1,1,t.startLineNumber,t.startColumn));if(n&&e.getValueLengthInRange(d,1)>500){const b=e.modifyPosition(d.getEndPosition(),-500);d=I.fromPositions(b,d.getEndPosition())}const h=e.getValueInRange(d,1),u=e.getLineCount(),f=e.getLineMaxColumn(u);let g=c.intersectRanges(new I(t.endLineNumber,t.endColumn,u,f));if(n&&e.getValueLengthInRange(g,1)>500){const b=e.modifyPosition(g.getStartPosition(),500);g=I.fromPositions(g.getStartPosition(),b)}const p=e.getValueInRange(g,1);let _;if(r===l||r+1===l)_=e.getValueInRange(t,1);else{const b=a.intersectRanges(t),C=c.intersectRanges(t);_=e.getValueInRange(b,1)+"…"+e.getValueInRange(C,1)}return n&&_.length>2*500&&(_=_.substring(0,500)+"…"+_.substring(_.length-500,_.length)),new cn(h+_+p,h.length,h.length+_.length,t,d.endLineNumber-d.startLineNumber)}}var nne=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},DO=function(o,e){return function(t,i){e(t,i,o)}},Dv;(function(o){o.Tap="-monaco-textarea-synthetic-tap"})(Dv||(Dv={}));const Jw=class Jw{constructor(){this._lastState=null}set(e,t){this._lastState={lastCopiedValue:e,data:t}}get(e){return this._lastState&&this._lastState.lastCopiedValue===e?this._lastState.data:(this._lastState=null,null)}};Jw.INSTANCE=new Jw;let Iv=Jw;class sne{constructor(){this._lastTypeTextLength=0}handleCompositionUpdate(e){e=e||"";const t={text:e,replacePrevCharCnt:this._lastTypeTextLength,replaceNextCharCnt:0,positionDelta:0};return this._lastTypeTextLength=e.length,t}}let LI=class extends z{get textAreaState(){return this._textAreaState}constructor(e,t,i,n,s,r){super(),this._host=e,this._textArea=t,this._OS=i,this._browser=n,this._accessibilityService=s,this._logService=r,this._onFocus=this._register(new A),this.onFocus=this._onFocus.event,this._onBlur=this._register(new A),this.onBlur=this._onBlur.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._onKeyUp=this._register(new A),this.onKeyUp=this._onKeyUp.event,this._onCut=this._register(new A),this.onCut=this._onCut.event,this._onPaste=this._register(new A),this.onPaste=this._onPaste.event,this._onType=this._register(new A),this.onType=this._onType.event,this._onCompositionStart=this._register(new A),this.onCompositionStart=this._onCompositionStart.event,this._onCompositionUpdate=this._register(new A),this.onCompositionUpdate=this._onCompositionUpdate.event,this._onCompositionEnd=this._register(new A),this.onCompositionEnd=this._onCompositionEnd.event,this._onSelectionChangeRequest=this._register(new A),this.onSelectionChangeRequest=this._onSelectionChangeRequest.event,this._asyncFocusGainWriteScreenReaderContent=this._register(new Dn),this._asyncTriggerCut=this._register(new ci(()=>this._onCut.fire(),0)),this._textAreaState=cn.EMPTY,this._selectionChangeListener=null,this._accessibilityService.isScreenReaderOptimized()&&this.writeNativeTextAreaContent("ctor"),this._register(J.runAndSubscribe(this._accessibilityService.onDidChangeScreenReaderOptimized,()=>{this._accessibilityService.isScreenReaderOptimized()&&!this._asyncFocusGainWriteScreenReaderContent.value?this._asyncFocusGainWriteScreenReaderContent.value=this._register(new ci(()=>this.writeNativeTextAreaContent("asyncFocusGain"),0)):this._asyncFocusGainWriteScreenReaderContent.clear()})),this._hasFocus=!1,this._currentComposition=null;let a=null;this._register(this._textArea.onKeyDown(l=>{const c=new Nt(l);(c.keyCode===114||this._currentComposition&&c.keyCode===1)&&c.stopPropagation(),c.equals(9)&&c.preventDefault(),a=c,this._onKeyDown.fire(c)})),this._register(this._textArea.onKeyUp(l=>{const c=new Nt(l);this._onKeyUp.fire(c)})),this._register(this._textArea.onCompositionStart(l=>{const c=new sne;if(this._currentComposition){this._currentComposition=c;return}if(this._currentComposition=c,this._OS===2&&a&&a.equals(114)&&this._textAreaState.selectionStart===this._textAreaState.selectionEnd&&this._textAreaState.selectionStart>0&&this._textAreaState.value.substr(this._textAreaState.selectionStart-1,1)===l.data&&(a.code==="ArrowRight"||a.code==="ArrowLeft")){c.handleCompositionUpdate("x"),this._onCompositionStart.fire({data:l.data});return}if(this._browser.isAndroid){this._onCompositionStart.fire({data:l.data});return}this._onCompositionStart.fire({data:l.data})})),this._register(this._textArea.onCompositionUpdate(l=>{const c=this._currentComposition;if(!c)return;if(this._browser.isAndroid){const h=cn.readFromTextArea(this._textArea,this._textAreaState),u=cn.deduceAndroidCompositionInput(this._textAreaState,h);this._textAreaState=h,this._onType.fire(u),this._onCompositionUpdate.fire(l);return}const d=c.handleCompositionUpdate(l.data);this._textAreaState=cn.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(d),this._onCompositionUpdate.fire(l)})),this._register(this._textArea.onCompositionEnd(l=>{const c=this._currentComposition;if(!c)return;if(this._currentComposition=null,this._browser.isAndroid){const h=cn.readFromTextArea(this._textArea,this._textAreaState),u=cn.deduceAndroidCompositionInput(this._textAreaState,h);this._textAreaState=h,this._onType.fire(u),this._onCompositionEnd.fire();return}const d=c.handleCompositionUpdate(l.data);this._textAreaState=cn.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(d),this._onCompositionEnd.fire()})),this._register(this._textArea.onInput(l=>{if(this._textArea.setIgnoreSelectionChangeTime("received input event"),this._currentComposition)return;const c=cn.readFromTextArea(this._textArea,this._textAreaState),d=cn.deduceInput(this._textAreaState,c,this._OS===2);d.replacePrevCharCnt===0&&d.text.length===1&&(wi(d.text.charCodeAt(0))||d.text.charCodeAt(0)===127)||(this._textAreaState=c,(d.text!==""||d.replacePrevCharCnt!==0||d.replaceNextCharCnt!==0||d.positionDelta!==0)&&this._onType.fire(d))})),this._register(this._textArea.onCut(l=>{this._textArea.setIgnoreSelectionChangeTime("received cut event"),this._ensureClipboardGetsEditorSelection(l),this._asyncTriggerCut.schedule()})),this._register(this._textArea.onCopy(l=>{this._ensureClipboardGetsEditorSelection(l)})),this._register(this._textArea.onPaste(l=>{if(this._textArea.setIgnoreSelectionChangeTime("received paste event"),l.preventDefault(),!l.clipboardData)return;let[c,d]=IO.getTextData(l.clipboardData);c&&(d=d||Iv.INSTANCE.get(c),this._onPaste.fire({text:c,metadata:d}))})),this._register(this._textArea.onFocus(()=>{const l=this._hasFocus;this._setHasFocus(!0),this._accessibilityService.isScreenReaderOptimized()&&this._browser.isSafari&&!l&&this._hasFocus&&(this._asyncFocusGainWriteScreenReaderContent.value||(this._asyncFocusGainWriteScreenReaderContent.value=new ci(()=>this.writeNativeTextAreaContent("asyncFocusGain"),0)),this._asyncFocusGainWriteScreenReaderContent.value.schedule())})),this._register(this._textArea.onBlur(()=>{this._currentComposition&&(this._currentComposition=null,this.writeNativeTextAreaContent("blurWithoutCompositionEnd"),this._onCompositionEnd.fire()),this._setHasFocus(!1)})),this._register(this._textArea.onSyntheticTap(()=>{this._browser.isAndroid&&this._currentComposition&&(this._currentComposition=null,this.writeNativeTextAreaContent("tapWithoutCompositionEnd"),this._onCompositionEnd.fire())}))}_installSelectionChangeListener(){let e=0;return U(this._textArea.ownerDocument,"selectionchange",t=>{if(lc.onSelectionChange(),!this._hasFocus||this._currentComposition||!this._browser.isChrome)return;const i=Date.now(),n=i-e;if(e=i,n<5)return;const s=i-this._textArea.getIgnoreSelectionChangeTime();if(this._textArea.resetSelectionChangeTime(),s<100||!this._textAreaState.selection)return;const r=this._textArea.getValue();if(this._textAreaState.value!==r)return;const a=this._textArea.getSelectionStart(),l=this._textArea.getSelectionEnd();if(this._textAreaState.selectionStart===a&&this._textAreaState.selectionEnd===l)return;const c=this._textAreaState.deduceEditorPosition(a),d=this._host.deduceModelPosition(c[0],c[1],c[2]),h=this._textAreaState.deduceEditorPosition(l),u=this._host.deduceModelPosition(h[0],h[1],h[2]),f=new Fe(d.lineNumber,d.column,u.lineNumber,u.column);this._onSelectionChangeRequest.fire(f)})}dispose(){super.dispose(),this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null)}focusTextArea(){this._setHasFocus(!0),this.refreshFocusState()}isFocused(){return this._hasFocus}refreshFocusState(){this._setHasFocus(this._textArea.hasFocus())}_setHasFocus(e){this._hasFocus!==e&&(this._hasFocus=e,this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null),this._hasFocus&&(this._selectionChangeListener=this._installSelectionChangeListener()),this._hasFocus&&this.writeNativeTextAreaContent("focusgain"),this._hasFocus?this._onFocus.fire():this._onBlur.fire())}_setAndWriteTextAreaState(e,t){this._hasFocus||(t=t.collapseSelection()),t.writeToTextArea(e,this._textArea,this._hasFocus),this._textAreaState=t}writeNativeTextAreaContent(e){!this._accessibilityService.isScreenReaderOptimized()&&e==="render"||this._currentComposition||(this._logService.trace(`writeTextAreaState(reason: ${e})`),this._setAndWriteTextAreaState(e,this._host.getScreenReaderContent()))}_ensureClipboardGetsEditorSelection(e){const t=this._host.getDataToCopy(),i={version:1,isFromEmptySelection:t.isFromEmptySelection,multicursorText:t.multicursorText,mode:t.mode};Iv.INSTANCE.set(this._browser.isFirefox?t.text.replace(/\r\n/g,` -`):t.text,i),e.preventDefault(),e.clipboardData&&IO.setTextData(e.clipboardData,t.text,t.html,i)}};LI=nne([DO(4,ms),DO(5,gs)],LI);const IO={getTextData(o){const e=o.getData(il.text);let t=null;const i=o.getData("vscode-editor-data");if(typeof i=="string")try{t=JSON.parse(i),t.version!==1&&(t=null)}catch{}return e.length===0&&t===null&&o.files.length>0?[Array.prototype.slice.call(o.files,0).map(s=>s.name).join(` -`),null]:[e,t]},setTextData(o,e,t,i){o.setData(il.text,e),typeof t=="string"&&o.setData("text/html",t),o.setData("vscode-editor-data",JSON.stringify(i))}};class one extends z{get ownerDocument(){return this._actual.ownerDocument}constructor(e){super(),this._actual=e,this.onKeyDown=this._register(new ze(this._actual,"keydown")).event,this.onKeyUp=this._register(new ze(this._actual,"keyup")).event,this.onCompositionStart=this._register(new ze(this._actual,"compositionstart")).event,this.onCompositionUpdate=this._register(new ze(this._actual,"compositionupdate")).event,this.onCompositionEnd=this._register(new ze(this._actual,"compositionend")).event,this.onBeforeInput=this._register(new ze(this._actual,"beforeinput")).event,this.onInput=this._register(new ze(this._actual,"input")).event,this.onCut=this._register(new ze(this._actual,"cut")).event,this.onCopy=this._register(new ze(this._actual,"copy")).event,this.onPaste=this._register(new ze(this._actual,"paste")).event,this.onFocus=this._register(new ze(this._actual,"focus")).event,this.onBlur=this._register(new ze(this._actual,"blur")).event,this._onSyntheticTap=this._register(new A),this.onSyntheticTap=this._onSyntheticTap.event,this._ignoreSelectionChangeTime=0,this._register(this.onKeyDown(()=>lc.onKeyDown())),this._register(this.onBeforeInput(()=>lc.onBeforeInput())),this._register(this.onInput(()=>lc.onInput())),this._register(this.onKeyUp(()=>lc.onKeyUp())),this._register(U(this._actual,Dv.Tap,()=>this._onSyntheticTap.fire()))}hasFocus(){const e=ag(this._actual);return e?e.activeElement===this._actual:this._actual.isConnected?Xi()===this._actual:!1}setIgnoreSelectionChangeTime(e){this._ignoreSelectionChangeTime=Date.now()}getIgnoreSelectionChangeTime(){return this._ignoreSelectionChangeTime}resetSelectionChangeTime(){this._ignoreSelectionChangeTime=0}getValue(){return this._actual.value}setValue(e,t){const i=this._actual;i.value!==t&&(this.setIgnoreSelectionChangeTime("setValue"),i.value=t)}getSelectionStart(){return this._actual.selectionDirection==="backward"?this._actual.selectionEnd:this._actual.selectionStart}getSelectionEnd(){return this._actual.selectionDirection==="backward"?this._actual.selectionStart:this._actual.selectionEnd}setSelectionRange(e,t,i){const n=this._actual;let s=null;const r=ag(n);r?s=r.activeElement:s=Xi();const a=fe(s),l=s===n,c=n.selectionStart,d=n.selectionEnd;if(l&&c===t&&d===i){Mo&&a.parent!==a&&n.focus();return}if(l){this.setIgnoreSelectionChangeTime("setSelectionRange"),n.setSelectionRange(t,i),Mo&&a.parent!==a&&n.focus();return}try{const h=IV(n);this.setIgnoreSelectionChangeTime("setSelectionRange"),n.focus(),n.setSelectionRange(t,i),EV(n,h)}catch{}}}class rne extends W2{constructor(e,t,i){super(e,t,i),this._register(fn.addTarget(this.viewHelper.linesContentDomNode)),this._register(U(this.viewHelper.linesContentDomNode,St.Tap,s=>this.onTap(s))),this._register(U(this.viewHelper.linesContentDomNode,St.Change,s=>this.onChange(s))),this._register(U(this.viewHelper.linesContentDomNode,St.Contextmenu,s=>this._onContextMenu(new Wc(s,!1,this.viewHelper.viewDomNode),!1))),this._lastPointerType="mouse",this._register(U(this.viewHelper.linesContentDomNode,"pointerdown",s=>{const r=s.pointerType;if(r==="mouse"){this._lastPointerType="mouse";return}else r==="touch"?this._lastPointerType="touch":this._lastPointerType="pen"}));const n=new Bie(this.viewHelper.viewDomNode);this._register(n.onPointerMove(this.viewHelper.viewDomNode,s=>this._onMouseMove(s))),this._register(n.onPointerUp(this.viewHelper.viewDomNode,s=>this._onMouseUp(s))),this._register(n.onPointerLeave(this.viewHelper.viewDomNode,s=>this._onMouseLeave(s))),this._register(n.onPointerDown(this.viewHelper.viewDomNode,(s,r)=>this._onMouseDown(s,r)))}onTap(e){!e.initialTarget||!this.viewHelper.linesContentDomNode.contains(e.initialTarget)||(e.preventDefault(),this.viewHelper.focusTextArea(),this._dispatchGesture(e,!1))}onChange(e){this._lastPointerType==="touch"&&this._context.viewModel.viewLayout.deltaScrollNow(-e.translationX,-e.translationY),this._lastPointerType==="pen"&&this._dispatchGesture(e,!0)}_dispatchGesture(e,t){const i=this._createMouseTarget(new Wc(e,!1,this.viewHelper.viewDomNode),!1);i.position&&this.viewController.dispatchMouse({position:i.position,mouseColumn:i.position.column,startedOnLineNumbers:!1,revealType:1,mouseDownCount:e.tapCount,inSelectionMode:t,altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1,leftButton:!1,middleButton:!1,onInjectedText:i.type===6&&i.detail.injectedText!==null})}_onMouseDown(e,t){e.browserEvent.pointerType!=="touch"&&super._onMouseDown(e,t)}}class ane extends W2{constructor(e,t,i){super(e,t,i),this._register(fn.addTarget(this.viewHelper.linesContentDomNode)),this._register(U(this.viewHelper.linesContentDomNode,St.Tap,n=>this.onTap(n))),this._register(U(this.viewHelper.linesContentDomNode,St.Change,n=>this.onChange(n))),this._register(U(this.viewHelper.linesContentDomNode,St.Contextmenu,n=>this._onContextMenu(new Wc(n,!1,this.viewHelper.viewDomNode),!1)))}onTap(e){e.preventDefault(),this.viewHelper.focusTextArea();const t=this._createMouseTarget(new Wc(e,!1,this.viewHelper.viewDomNode),!1);if(t.position){const i=document.createEvent("CustomEvent");i.initEvent(Dv.Tap,!1,!0),this.viewHelper.dispatchTextAreaEvent(i),this.viewController.moveTo(t.position,1)}}onChange(e){this._context.viewModel.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)}}class lne extends z{constructor(e,t,i){super(),(Tc||S6&&V5)&&KN.pointerEvents?this.handler=this._register(new rne(e,t,i)):_t.TouchEvent?this.handler=this._register(new ane(e,t,i)):this.handler=this._register(new W2(e,t,i))}getTargetAtClientPoint(e,t){return this.handler.getTargetAtClientPoint(e,t)}}class mu extends ab{}const e0=class e0 extends mu{constructor(e){super(),this._context=e,this._readConfig(),this._lastCursorModelPosition=new P(1,1),this._renderResult=null,this._activeLineNumber=1,this._context.addEventHandler(this)}_readConfig(){const e=this._context.configuration.options;this._lineHeight=e.get(67);const t=e.get(68);this._renderLineNumbers=t.renderType,this._renderCustomLineNumbers=t.renderFn,this._renderFinalNewline=e.get(96);const i=e.get(146);this._lineNumbersLeft=i.lineNumbersLeft,this._lineNumbersWidth=i.lineNumbersWidth}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){return this._readConfig(),!0}onCursorStateChanged(e){const t=e.selections[0].getPosition();this._lastCursorModelPosition=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(t);let i=!1;return this._activeLineNumber!==t.lineNumber&&(this._activeLineNumber=t.lineNumber,i=!0),(this._renderLineNumbers===2||this._renderLineNumbers===3)&&(i=!0),i}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}onDecorationsChanged(e){return e.affectsLineNumber}_getLineRenderLineNumber(e){const t=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new P(e,1));if(t.column!==1)return"";const i=t.lineNumber;if(this._renderCustomLineNumbers)return this._renderCustomLineNumbers(i);if(this._renderLineNumbers===2){const n=Math.abs(this._lastCursorModelPosition.lineNumber-i);return n===0?''+i+"":String(n)}if(this._renderLineNumbers===3){if(this._lastCursorModelPosition.lineNumber===i||i%10===0)return String(i);const n=this._context.viewModel.getLineCount();return i===n?String(i):""}return String(i)}prepareRender(e){if(this._renderLineNumbers===0){this._renderResult=null;return}const t=Un?this._lineHeight%2===0?" lh-even":" lh-odd":"",i=e.visibleRange.startLineNumber,n=e.visibleRange.endLineNumber,s=this._context.viewModel.getDecorationsInViewport(e.visibleRange).filter(c=>!!c.options.lineNumberClassName);s.sort((c,d)=>I.compareRangesUsingEnds(c.range,d.range));let r=0;const a=this._context.viewModel.getLineCount(),l=[];for(let c=i;c<=n;c++){const d=c-i;let h=this._getLineRenderLineNumber(c),u="";for(;r${h}
    `}this._renderResult=l}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}};e0.CLASS_NAME="line-numbers";let Ev=e0;Sr((o,e)=>{const t=o.getColor(qY),i=o.getColor(aQ);i?e.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${i}; }`):t&&e.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${t.transparent(.4)}; }`)});const Df=class Df extends _s{constructor(e){super(e);const t=this._context.configuration.options,i=t.get(146);this._canUseLayerHinting=!t.get(32),this._contentLeft=i.contentLeft,this._glyphMarginLeft=i.glyphMarginLeft,this._glyphMarginWidth=i.glyphMarginWidth,this._domNode=ot(document.createElement("div")),this._domNode.setClassName(Df.OUTER_CLASS_NAME),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._glyphMarginBackgroundDomNode=ot(document.createElement("div")),this._glyphMarginBackgroundDomNode.setClassName(Df.CLASS_NAME),this._domNode.appendChild(this._glyphMarginBackgroundDomNode)}dispose(){super.dispose()}getDomNode(){return this._domNode}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(146);return this._canUseLayerHinting=!t.get(32),this._contentLeft=i.contentLeft,this._glyphMarginLeft=i.glyphMarginLeft,this._glyphMarginWidth=i.glyphMarginWidth,!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollTopChanged}prepareRender(e){}render(e){this._domNode.setLayerHinting(this._canUseLayerHinting),this._domNode.setContain("strict");const t=e.scrollTop-e.bigNumbersDelta;this._domNode.setTop(-t);const i=Math.min(e.scrollHeight,1e6);this._domNode.setHeight(i),this._domNode.setWidth(this._contentLeft),this._glyphMarginBackgroundDomNode.setLeft(this._glyphMarginLeft),this._glyphMarginBackgroundDomNode.setWidth(this._glyphMarginWidth),this._glyphMarginBackgroundDomNode.setHeight(i)}};Df.CLASS_NAME="glyph-margin",Df.OUTER_CLASS_NAME="margin";let Nv=Df;const Zf="monaco-mouse-cursor-text";var cne=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},EO=function(o,e){return function(t,i){e(t,i,o)}};class dne{constructor(e,t,i,n,s){this._context=e,this.modelLineNumber=t,this.distanceToModelLineStart=i,this.widthOfHiddenLineTextBefore=n,this.distanceToModelLineEnd=s,this._visibleTextAreaBrand=void 0,this.startPosition=null,this.endPosition=null,this.visibleTextareaStart=null,this.visibleTextareaEnd=null,this._previousPresentation=null}prepareRender(e){const t=new P(this.modelLineNumber,this.distanceToModelLineStart+1),i=new P(this.modelLineNumber,this._context.viewModel.model.getLineMaxColumn(this.modelLineNumber)-this.distanceToModelLineEnd);this.startPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(t),this.endPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(i),this.startPosition.lineNumber===this.endPosition.lineNumber?(this.visibleTextareaStart=e.visibleRangeForPosition(this.startPosition),this.visibleTextareaEnd=e.visibleRangeForPosition(this.endPosition)):(this.visibleTextareaStart=null,this.visibleTextareaEnd=null)}definePresentation(e){return this._previousPresentation||(e?this._previousPresentation=e:this._previousPresentation={foreground:1,italic:!1,bold:!1,underline:!1,strikethrough:!1}),this._previousPresentation}}const eL=Mo;let xI=class extends _s{constructor(e,t,i,n,s){super(e),this._keybindingService=n,this._instantiationService=s,this._primaryCursorPosition=new P(1,1),this._primaryCursorVisibleRange=null,this._viewController=t,this._visibleRangeProvider=i,this._scrollLeft=0,this._scrollTop=0;const r=this._context.configuration.options,a=r.get(146);this._setAccessibilityOptions(r),this._contentLeft=a.contentLeft,this._contentWidth=a.contentWidth,this._contentHeight=a.height,this._fontInfo=r.get(50),this._lineHeight=r.get(67),this._emptySelectionClipboard=r.get(37),this._copyWithSyntaxHighlighting=r.get(25),this._visibleTextArea=null,this._selections=[new Fe(1,1,1,1)],this._modelSelections=[new Fe(1,1,1,1)],this._lastRenderPosition=null,this.textArea=ot(document.createElement("textarea")),vr.write(this.textArea,7),this.textArea.setClassName(`inputarea ${Zf}`),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");const{tabSize:l}=this._context.viewModel.model.getOptions();this.textArea.domNode.style.tabSize=`${l*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("autocorrect","off"),this.textArea.setAttribute("autocapitalize","off"),this.textArea.setAttribute("autocomplete","off"),this.textArea.setAttribute("spellcheck","false"),this.textArea.setAttribute("aria-label",this._getAriaLabel(r)),this.textArea.setAttribute("aria-required",r.get(5)?"true":"false"),this.textArea.setAttribute("tabindex",String(r.get(125))),this.textArea.setAttribute("role","textbox"),this.textArea.setAttribute("aria-roledescription",m("editor","editor")),this.textArea.setAttribute("aria-multiline","true"),this.textArea.setAttribute("aria-autocomplete",r.get(92)?"none":"both"),this._ensureReadOnlyAttribute(),this.textAreaCover=ot(document.createElement("div")),this.textAreaCover.setPosition("absolute");const c={getLineCount:()=>this._context.viewModel.getLineCount(),getLineMaxColumn:u=>this._context.viewModel.getLineMaxColumn(u),getValueInRange:(u,f)=>this._context.viewModel.getValueInRange(u,f),getValueLengthInRange:(u,f)=>this._context.viewModel.getValueLengthInRange(u,f),modifyPosition:(u,f)=>this._context.viewModel.modifyPosition(u,f)},d={getDataToCopy:()=>{const u=this._context.viewModel.getPlainTextToCopy(this._modelSelections,this._emptySelectionClipboard,kn),f=this._context.viewModel.model.getEOL(),g=this._emptySelectionClipboard&&this._modelSelections.length===1&&this._modelSelections[0].isEmpty(),p=Array.isArray(u)?u:null,_=Array.isArray(u)?u.join(f):u;let b,C=null;if(this._copyWithSyntaxHighlighting&&_.length<65536){const w=this._context.viewModel.getRichTextToCopy(this._modelSelections,this._emptySelectionClipboard);w&&(b=w.html,C=w.mode)}return{isFromEmptySelection:g,multicursorText:p,text:_,html:b,mode:C}},getScreenReaderContent:()=>{if(this._accessibilitySupport===1){const u=this._selections[0];if(Ue&&u.isEmpty()){const g=u.getStartPosition();let p=this._getWordBeforePosition(g);if(p.length===0&&(p=this._getCharacterBeforePosition(g)),p.length>0)return new cn(p,p.length,p.length,I.fromPositions(g),0)}if(Ue&&!u.isEmpty()&&c.getValueLengthInRange(u,0)<500){const g=c.getValueInRange(u,0);return new cn(g,0,g.length,u,0)}if(Ac&&!u.isEmpty()){const g="vscode-placeholder";return new cn(g,0,g.length,null,void 0)}return cn.EMPTY}if(eR){const u=this._selections[0];if(u.isEmpty()){const f=u.getStartPosition(),[g,p]=this._getAndroidWordAtPosition(f);if(g.length>0)return new cn(g,p,p,I.fromPositions(f),0)}return cn.EMPTY}return df.fromEditorSelection(c,this._selections[0],this._accessibilityPageSize,this._accessibilitySupport===0)},deduceModelPosition:(u,f,g)=>this._context.viewModel.deduceModelPositionRelativeToViewPosition(u,f,g)},h=this._register(new one(this.textArea.domNode));this._textAreaInput=this._register(this._instantiationService.createInstance(LI,d,h,Ns,{isAndroid:eR,isChrome:V_,isFirefox:Mo,isSafari:Ac})),this._register(this._textAreaInput.onKeyDown(u=>{this._viewController.emitKeyDown(u)})),this._register(this._textAreaInput.onKeyUp(u=>{this._viewController.emitKeyUp(u)})),this._register(this._textAreaInput.onPaste(u=>{let f=!1,g=null,p=null;u.metadata&&(f=this._emptySelectionClipboard&&!!u.metadata.isFromEmptySelection,g=typeof u.metadata.multicursorText<"u"?u.metadata.multicursorText:null,p=u.metadata.mode),this._viewController.paste(u.text,f,g,p)})),this._register(this._textAreaInput.onCut(()=>{this._viewController.cut()})),this._register(this._textAreaInput.onType(u=>{u.replacePrevCharCnt||u.replaceNextCharCnt||u.positionDelta?this._viewController.compositionType(u.text,u.replacePrevCharCnt,u.replaceNextCharCnt,u.positionDelta):this._viewController.type(u.text)})),this._register(this._textAreaInput.onSelectionChangeRequest(u=>{this._viewController.setSelection(u)})),this._register(this._textAreaInput.onCompositionStart(u=>{const f=this.textArea.domNode,g=this._modelSelections[0],{distanceToModelLineStart:p,widthOfHiddenTextBefore:_}=(()=>{const C=f.value.substring(0,Math.min(f.selectionStart,f.selectionEnd)),w=C.lastIndexOf(` -`),v=C.substring(w+1),y=v.lastIndexOf(" "),x=v.length-y-1,L=g.getStartPosition(),E=Math.min(L.column-1,x),N=L.column-1-E,H=v.substring(0,v.length-E),{tabSize:F}=this._context.viewModel.model.getOptions(),W=hne(this.textArea.domNode.ownerDocument,H,this._fontInfo,F);return{distanceToModelLineStart:N,widthOfHiddenTextBefore:W}})(),{distanceToModelLineEnd:b}=(()=>{const C=f.value.substring(Math.max(f.selectionStart,f.selectionEnd)),w=C.indexOf(` -`),v=w===-1?C:C.substring(0,w),y=v.indexOf(" "),x=y===-1?v.length:v.length-y-1,L=g.getEndPosition(),E=Math.min(this._context.viewModel.model.getLineMaxColumn(L.lineNumber)-L.column,x);return{distanceToModelLineEnd:this._context.viewModel.model.getLineMaxColumn(L.lineNumber)-L.column-E}})();this._context.viewModel.revealRange("keyboard",!0,I.fromPositions(this._selections[0].getStartPosition()),0,1),this._visibleTextArea=new dne(this._context,g.startLineNumber,p,_,b),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render(),this.textArea.setClassName(`inputarea ${Zf} ime-input`),this._viewController.compositionStart(),this._context.viewModel.onCompositionStart()})),this._register(this._textAreaInput.onCompositionUpdate(u=>{this._visibleTextArea&&(this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render())})),this._register(this._textAreaInput.onCompositionEnd(()=>{this._visibleTextArea=null,this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._render(),this.textArea.setClassName(`inputarea ${Zf}`),this._viewController.compositionEnd(),this._context.viewModel.onCompositionEnd()})),this._register(this._textAreaInput.onFocus(()=>{this._context.viewModel.setHasFocus(!0)})),this._register(this._textAreaInput.onBlur(()=>{this._context.viewModel.setHasFocus(!1)})),this._register(Qm.onDidChange(()=>{this._ensureReadOnlyAttribute()}))}writeScreenReaderContent(e){this._textAreaInput.writeNativeTextAreaContent(e)}dispose(){super.dispose()}_getAndroidWordAtPosition(e){const t='`~!@#$%^&*()-=+[{]}\\|;:",.<>/?',i=this._context.viewModel.getLineContent(e.lineNumber),n=cg(t,[]);let s=!0,r=e.column,a=!0,l=e.column,c=0;for(;c<50&&(s||a);){if(s&&r<=1&&(s=!1),s){const d=i.charCodeAt(r-2);n.get(d)!==0?s=!1:r--}if(a&&l>i.length&&(a=!1),a){const d=i.charCodeAt(l-1);n.get(d)!==0?a=!1:l++}c++}return[i.substring(r-1,l-1),e.column-r]}_getWordBeforePosition(e){const t=this._context.viewModel.getLineContent(e.lineNumber),i=cg(this._context.configuration.options.get(132),[]);let n=e.column,s=0;for(;n>1;){const r=t.charCodeAt(n-2);if(i.get(r)!==0||s>50)return t.substring(n-1,e.column-1);s++,n--}return t.substring(0,e.column-1)}_getCharacterBeforePosition(e){if(e.column>1){const i=this._context.viewModel.getLineContent(e.lineNumber).charAt(e.column-2);if(!wi(i.charCodeAt(0)))return i}return""}_getAriaLabel(e){if(e.get(2)===1){const i=this._keybindingService.lookupKeybinding("editor.action.toggleScreenReaderAccessibilityMode")?.getAriaLabel(),n=this._keybindingService.lookupKeybinding("workbench.action.showCommands")?.getAriaLabel(),s=this._keybindingService.lookupKeybinding("workbench.action.openGlobalKeybindings")?.getAriaLabel(),r=m("accessibilityModeOff","The editor is not accessible at this time.");return i?m("accessibilityOffAriaLabel","{0} To enable screen reader optimized mode, use {1}",r,i):n?m("accessibilityOffAriaLabelNoKb","{0} To enable screen reader optimized mode, open the quick pick with {1} and run the command Toggle Screen Reader Accessibility Mode, which is currently not triggerable via keyboard.",r,n):s?m("accessibilityOffAriaLabelNoKbs","{0} Please assign a keybinding for the command Toggle Screen Reader Accessibility Mode by accessing the keybindings editor with {1} and run it.",r,s):r}return e.get(4)}_setAccessibilityOptions(e){this._accessibilitySupport=e.get(2);const t=e.get(3);this._accessibilitySupport===2&&t===Xh.accessibilityPageSize.defaultValue?this._accessibilityPageSize=500:this._accessibilityPageSize=t;const n=e.get(146).wrappingColumn;if(n!==-1&&this._accessibilitySupport!==1){const s=e.get(50);this._textAreaWrapping=!0,this._textAreaWidth=Math.round(n*s.typicalHalfwidthCharacterWidth)}else this._textAreaWrapping=!1,this._textAreaWidth=eL?0:1}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(146);this._setAccessibilityOptions(t),this._contentLeft=i.contentLeft,this._contentWidth=i.contentWidth,this._contentHeight=i.height,this._fontInfo=t.get(50),this._lineHeight=t.get(67),this._emptySelectionClipboard=t.get(37),this._copyWithSyntaxHighlighting=t.get(25),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");const{tabSize:n}=this._context.viewModel.model.getOptions();return this.textArea.domNode.style.tabSize=`${n*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("aria-label",this._getAriaLabel(t)),this.textArea.setAttribute("aria-required",t.get(5)?"true":"false"),this.textArea.setAttribute("tabindex",String(t.get(125))),(e.hasChanged(34)||e.hasChanged(92))&&this._ensureReadOnlyAttribute(),e.hasChanged(2)&&this._textAreaInput.writeNativeTextAreaContent("strategy changed"),!0}onCursorStateChanged(e){return this._selections=e.selections.slice(0),this._modelSelections=e.modelSelections.slice(0),this._textAreaInput.writeNativeTextAreaContent("selection changed"),!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return this._scrollLeft=e.scrollLeft,this._scrollTop=e.scrollTop,!0}onZonesChanged(e){return!0}isFocused(){return this._textAreaInput.isFocused()}focusTextArea(){this._textAreaInput.focusTextArea()}getLastRenderData(){return this._lastRenderPosition}setAriaOptions(e){e.activeDescendant?(this.textArea.setAttribute("aria-haspopup","true"),this.textArea.setAttribute("aria-autocomplete","list"),this.textArea.setAttribute("aria-activedescendant",e.activeDescendant)):(this.textArea.setAttribute("aria-haspopup","false"),this.textArea.setAttribute("aria-autocomplete","both"),this.textArea.removeAttribute("aria-activedescendant")),e.role&&this.textArea.setAttribute("role",e.role)}_ensureReadOnlyAttribute(){const e=this._context.configuration.options;!Qm.enabled||e.get(34)&&e.get(92)?this.textArea.setAttribute("readonly","true"):this.textArea.removeAttribute("readonly")}prepareRender(e){this._primaryCursorPosition=new P(this._selections[0].positionLineNumber,this._selections[0].positionColumn),this._primaryCursorVisibleRange=e.visibleRangeForPosition(this._primaryCursorPosition),this._visibleTextArea?.prepareRender(e)}render(e){this._textAreaInput.writeNativeTextAreaContent("render"),this._render()}_render(){if(this._visibleTextArea){const i=this._visibleTextArea.visibleTextareaStart,n=this._visibleTextArea.visibleTextareaEnd,s=this._visibleTextArea.startPosition,r=this._visibleTextArea.endPosition;if(s&&r&&i&&n&&n.left>=this._scrollLeft&&i.left<=this._scrollLeft+this._contentWidth){const a=this._context.viewLayout.getVerticalOffsetForLineNumber(this._primaryCursorPosition.lineNumber)-this._scrollTop,l=this._newlinecount(this.textArea.domNode.value.substr(0,this.textArea.domNode.selectionStart));let c=this._visibleTextArea.widthOfHiddenLineTextBefore,d=this._contentLeft+i.left-this._scrollLeft,h=n.left-i.left+1;if(dthis._contentWidth&&(h=this._contentWidth);const u=this._context.viewModel.getViewLineData(s.lineNumber),f=u.tokens.findTokenIndexAtOffset(s.column-1),g=u.tokens.findTokenIndexAtOffset(r.column-1),p=f===g,_=this._visibleTextArea.definePresentation(p?u.tokens.getPresentation(f):null);this.textArea.domNode.scrollTop=l*this._lineHeight,this.textArea.domNode.scrollLeft=c,this._doRender({lastRenderPosition:null,top:a,left:d,width:h,height:this._lineHeight,useCover:!1,color:(si.getColorMap()||[])[_.foreground],italic:_.italic,bold:_.bold,underline:_.underline,strikethrough:_.strikethrough})}return}if(!this._primaryCursorVisibleRange){this._renderAtTopLeft();return}const e=this._contentLeft+this._primaryCursorVisibleRange.left-this._scrollLeft;if(ethis._contentLeft+this._contentWidth){this._renderAtTopLeft();return}const t=this._context.viewLayout.getVerticalOffsetForLineNumber(this._selections[0].positionLineNumber)-this._scrollTop;if(t<0||t>this._contentHeight){this._renderAtTopLeft();return}if(Ue||this._accessibilitySupport===2){this._doRender({lastRenderPosition:this._primaryCursorPosition,top:t,left:this._textAreaWrapping?this._contentLeft:e,width:this._textAreaWidth,height:this._lineHeight,useCover:!1}),this.textArea.domNode.scrollLeft=this._primaryCursorVisibleRange.left;const i=this._textAreaInput.textAreaState.newlineCountBeforeSelection??this._newlinecount(this.textArea.domNode.value.substr(0,this.textArea.domNode.selectionStart));this.textArea.domNode.scrollTop=i*this._lineHeight;return}this._doRender({lastRenderPosition:this._primaryCursorPosition,top:t,left:this._textAreaWrapping?this._contentLeft:e,width:this._textAreaWidth,height:eL?0:1,useCover:!1})}_newlinecount(e){let t=0,i=-1;do{if(i=e.indexOf(` -`,i+1),i===-1)break;t++}while(!0);return t}_renderAtTopLeft(){this._doRender({lastRenderPosition:null,top:0,left:0,width:this._textAreaWidth,height:eL?0:1,useCover:!0})}_doRender(e){this._lastRenderPosition=e.lastRenderPosition;const t=this.textArea,i=this.textAreaCover;qi(t,this._fontInfo),t.setTop(e.top),t.setLeft(e.left),t.setWidth(e.width),t.setHeight(e.height),t.setColor(e.color?q.Format.CSS.formatHex(e.color):""),t.setFontStyle(e.italic?"italic":""),e.bold&&t.setFontWeight("bold"),t.setTextDecoration(`${e.underline?" underline":""}${e.strikethrough?" line-through":""}`),i.setTop(e.useCover?e.top:0),i.setLeft(e.useCover?e.left:0),i.setWidth(e.useCover?e.width:0),i.setHeight(e.useCover?e.height:0);const n=this._context.configuration.options;n.get(57)?i.setClassName("monaco-editor-background textAreaCover "+Nv.OUTER_CLASS_NAME):n.get(68).renderType!==0?i.setClassName("monaco-editor-background textAreaCover "+Ev.CLASS_NAME):i.setClassName("monaco-editor-background textAreaCover")}};xI=cne([EO(3,vt),EO(4,ke)],xI);function hne(o,e,t,i){if(e.length===0)return 0;const n=o.createElement("div");n.style.position="absolute",n.style.top="-50000px",n.style.width="50000px";const s=o.createElement("span");qi(s,t),s.style.whiteSpace="pre",s.style.tabSize=`${i*t.spaceWidth}px`,s.append(e),n.appendChild(s),o.body.appendChild(n);const r=s.offsetWidth;return n.remove(),r}const une=()=>!0,fne=()=>!1,gne=o=>o===" "||o===" ";class Au{static shouldRecreate(e){return e.hasChanged(146)||e.hasChanged(132)||e.hasChanged(37)||e.hasChanged(77)||e.hasChanged(79)||e.hasChanged(80)||e.hasChanged(6)||e.hasChanged(7)||e.hasChanged(11)||e.hasChanged(9)||e.hasChanged(10)||e.hasChanged(14)||e.hasChanged(129)||e.hasChanged(50)||e.hasChanged(92)||e.hasChanged(131)}constructor(e,t,i,n){this.languageConfigurationService=n,this._cursorMoveConfigurationBrand=void 0,this._languageId=e;const s=i.options,r=s.get(146),a=s.get(50);this.readOnly=s.get(92),this.tabSize=t.tabSize,this.indentSize=t.indentSize,this.insertSpaces=t.insertSpaces,this.stickyTabStops=s.get(117),this.lineHeight=a.lineHeight,this.typicalHalfwidthCharacterWidth=a.typicalHalfwidthCharacterWidth,this.pageSize=Math.max(1,Math.floor(r.height/this.lineHeight)-2),this.useTabStops=s.get(129),this.wordSeparators=s.get(132),this.emptySelectionClipboard=s.get(37),this.copyWithSyntaxHighlighting=s.get(25),this.multiCursorMergeOverlapping=s.get(77),this.multiCursorPaste=s.get(79),this.multiCursorLimit=s.get(80),this.autoClosingBrackets=s.get(6),this.autoClosingComments=s.get(7),this.autoClosingQuotes=s.get(11),this.autoClosingDelete=s.get(9),this.autoClosingOvertype=s.get(10),this.autoSurround=s.get(14),this.autoIndent=s.get(12),this.wordSegmenterLocales=s.get(131),this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:this._getShouldAutoClose(e,this.autoClosingQuotes,!0),comment:this._getShouldAutoClose(e,this.autoClosingComments,!1),bracket:this._getShouldAutoClose(e,this.autoClosingBrackets,!1)},this.autoClosingPairs=this.languageConfigurationService.getLanguageConfiguration(e).getAutoClosingPairs();const l=this.languageConfigurationService.getLanguageConfiguration(e).getSurroundingPairs();if(l)for(const d of l)this.surroundingPairs[d.open]=d.close;const c=this.languageConfigurationService.getLanguageConfiguration(e).comments;this.blockCommentStartToken=c?.blockCommentStartToken??null}get electricChars(){if(!this._electricChars){this._electricChars={};const e=this.languageConfigurationService.getLanguageConfiguration(this._languageId).electricCharacter?.getElectricCharacters();if(e)for(const t of e)this._electricChars[t]=!0}return this._electricChars}onElectricCharacter(e,t,i){const n=zd(t,i-1),s=this.languageConfigurationService.getLanguageConfiguration(n.languageId).electricCharacter;return s?s.onElectricCharacter(e,n,i-n.firstCharOffset):null}normalizeIndentation(e){return Q7(e,this.indentSize,this.insertSpaces)}_getShouldAutoClose(e,t,i){switch(t){case"beforeWhitespace":return gne;case"languageDefined":return this._getLanguageDefinedShouldAutoClose(e,i);case"always":return une;case"never":return fne}}_getLanguageDefinedShouldAutoClose(e,t){const i=this.languageConfigurationService.getLanguageConfiguration(e).getAutoCloseBeforeSet(t);return n=>i.indexOf(n)!==-1}visibleColumnFromColumn(e,t){return _i.visibleColumnFromColumn(e.getLineContent(t.lineNumber),t.column,this.tabSize)}columnFromVisibleColumn(e,t,i){const n=_i.columnFromVisibleColumn(e.getLineContent(t),i,this.tabSize),s=e.getLineMinColumn(t);if(nr?r:n}}class Ke{static fromModelState(e){return new mne(e)}static fromViewState(e){return new pne(e)}static fromModelSelection(e){const t=Fe.liftSelection(e),i=new Ri(I.fromPositions(t.getSelectionStart()),0,0,t.getPosition(),0);return Ke.fromModelState(i)}static fromModelSelections(e){const t=[];for(let i=0,n=e.length;is,c=n>r,d=nr||bn||_0&&n--,Id.columnSelect(e,t,i.fromViewLineNumber,i.fromViewVisualColumn,i.toViewLineNumber,n)}static columnSelectRight(e,t,i){let n=0;const s=Math.min(i.fromViewLineNumber,i.toViewLineNumber),r=Math.max(i.fromViewLineNumber,i.toViewLineNumber);for(let l=s;l<=r;l++){const c=t.getLineMaxColumn(l),d=e.visibleColumnFromColumn(t,new P(l,c));n=Math.max(n,d)}let a=i.toViewVisualColumn;return ae.getLineMinColumn(t.lineNumber))return t.delta(void 0,-fF(e.getLineContent(t.lineNumber),t.column-1));if(t.lineNumber>1){const i=t.lineNumber-1;return new P(i,e.getLineMaxColumn(i))}else return t}static leftPositionAtomicSoftTabs(e,t,i){if(t.column<=e.getLineIndentColumn(t.lineNumber)){const n=e.getLineMinColumn(t.lineNumber),s=e.getLineContent(t.lineNumber),r=x_.atomicPosition(s,t.column-1,i,0);if(r!==-1&&r+1>=n)return new P(t.lineNumber,r+1)}return this.leftPosition(e,t)}static left(e,t,i){const n=e.stickyTabStops?dt.leftPositionAtomicSoftTabs(t,i,e.tabSize):dt.leftPosition(t,i);return new tL(n.lineNumber,n.column,0)}static moveLeft(e,t,i,n,s){let r,a;if(i.hasSelection()&&!n)r=i.selection.startLineNumber,a=i.selection.startColumn;else{const l=i.position.delta(void 0,-(s-1)),c=t.normalizePosition(dt.clipPositionColumn(l,t),0),d=dt.left(e,t,c);r=d.lineNumber,a=d.column}return i.move(n,r,a,0)}static clipPositionColumn(e,t){return new P(e.lineNumber,dt.clipRange(e.column,t.getLineMinColumn(e.lineNumber),t.getLineMaxColumn(e.lineNumber)))}static clipRange(e,t,i){return ei?i:e}static rightPosition(e,t,i){return id?(i=d,a?n=t.getLineMaxColumn(i):n=Math.min(t.getLineMaxColumn(i),n)):n=e.columnFromVisibleColumn(t,i,c),f?s=0:s=c-_i.visibleColumnFromColumn(t.getLineContent(i),n,e.tabSize),l!==void 0){const g=new P(i,n),p=t.normalizePosition(g,l);s=s+(n-p.column),i=p.lineNumber,n=p.column}return new tL(i,n,s)}static down(e,t,i,n,s,r,a){return this.vertical(e,t,i,n,s,i+r,a,4)}static moveDown(e,t,i,n,s){let r,a;i.hasSelection()&&!n?(r=i.selection.endLineNumber,a=i.selection.endColumn):(r=i.position.lineNumber,a=i.position.column);let l=0,c;do if(c=dt.down(e,t,r+l,a,i.leftoverVisibleColumns,s,!0),t.normalizePosition(new P(c.lineNumber,c.column),2).lineNumber>r)break;while(l++<10&&r+l1&&this._isBlankLine(t,s);)s--;for(;s>1&&!this._isBlankLine(t,s);)s--;return i.move(n,s,t.getLineMinColumn(s),0)}static moveToNextBlankLine(e,t,i,n){const s=t.getLineCount();let r=i.position.lineNumber;for(;r=u.length+1)return!1;const f=u.charAt(h.column-2),g=n.get(f);if(!g)return!1;if(Hc(f)){if(i==="never")return!1}else if(t==="never")return!1;const p=u.charAt(h.column-1);let _=!1;for(const b of g)b.open===f&&b.close===p&&(_=!0);if(!_)return!1;if(e==="auto"){let b=!1;for(let C=0,w=a.length;C1){const s=t.getLineContent(n.lineNumber),r=zn(s),a=r===-1?s.length+1:r+1;if(n.column<=a){const l=i.visibleColumnFromColumn(t,n),c=_i.prevIndentTabStop(l,i.indentSize),d=i.columnFromVisibleColumn(t,n.lineNumber,c);return new I(n.lineNumber,d,n.lineNumber,n.column)}}return I.fromPositions(Kh.getPositionAfterDeleteLeft(n,t),n)}static getPositionAfterDeleteLeft(e,t){if(e.column>1){const i=_H(e.column-1,t.getLineContent(e.lineNumber));return e.with(void 0,i+1)}else if(e.lineNumber>1){const i=e.lineNumber-1;return new P(i,t.getLineMaxColumn(i))}else return e}static cut(e,t,i){const n=[];let s=null;i.sort((r,a)=>P.compare(r.getStartPosition(),a.getEndPosition()));for(let r=0,a=i.length;r1&&s?.endLineNumber!==c.lineNumber?(d=c.lineNumber-1,h=t.getLineMaxColumn(c.lineNumber-1),u=c.lineNumber,f=t.getLineMaxColumn(c.lineNumber)):(d=c.lineNumber,h=1,u=c.lineNumber,f=t.getLineMaxColumn(c.lineNumber));const g=new I(d,h,u,f);s=g,g.isEmpty()?n[r]=null:n[r]=new os(g,"")}else n[r]=null;else n[r]=new os(l,"")}return new jn(0,n,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}class ii{static _createWord(e,t,i,n,s){return{start:n,end:s,wordType:t,nextCharClass:i}}static _createIntlWord(e,t){return{start:e.index,end:e.index+e.segment.length,wordType:1,nextCharClass:t}}static _findPreviousWordOnLine(e,t,i){const n=t.getLineContent(i.lineNumber);return this._doFindPreviousWordOnLine(n,e,i)}static _doFindPreviousWordOnLine(e,t,i){let n=0;const s=t.findPrevIntlWordBeforeOrAtOffset(e,i.column-2);for(let r=i.column-2;r>=0;r--){const a=e.charCodeAt(r),l=t.get(a);if(s&&r===s.index)return this._createIntlWord(s,l);if(l===0){if(n===2)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1));n=1}else if(l===2){if(n===1)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1));n=2}else if(l===1&&n!==0)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1))}return n!==0?this._createWord(e,n,1,0,this._findEndOfWord(e,t,n,0)):null}static _findEndOfWord(e,t,i,n){const s=t.findNextIntlWordAtOrAfterOffset(e,n),r=e.length;for(let a=n;a=0;r--){const a=e.charCodeAt(r),l=t.get(a);if(s&&r===s.index)return r;if(l===1||i===1&&l===2||i===2&&l===0)return r+1}return 0}static moveWordLeft(e,t,i,n,s){let r=i.lineNumber,a=i.column;a===1&&r>1&&(r=r-1,a=t.getLineMaxColumn(r));let l=ii._findPreviousWordOnLine(e,t,new P(r,a));if(n===0)return new P(r,l?l.start+1:1);if(n===1)return!s&&l&&l.wordType===2&&l.end-l.start===1&&l.nextCharClass===0&&(l=ii._findPreviousWordOnLine(e,t,new P(r,l.start+1))),new P(r,l?l.start+1:1);if(n===3){for(;l&&l.wordType===2;)l=ii._findPreviousWordOnLine(e,t,new P(r,l.start+1));return new P(r,l?l.start+1:1)}return l&&a<=l.end+1&&(l=ii._findPreviousWordOnLine(e,t,new P(r,l.start+1))),new P(r,l?l.end+1:1)}static _moveWordPartLeft(e,t){const i=t.lineNumber,n=e.getLineMaxColumn(i);if(t.column===1)return i>1?new P(i-1,e.getLineMaxColumn(i-1)):t;const s=e.getLineContent(i);for(let r=t.column-1;r>1;r--){const a=s.charCodeAt(r-2),l=s.charCodeAt(r-1);if(a===95&&l!==95)return new P(i,r);if(a===45&&l!==45)return new P(i,r);if((Yu(a)||yb(a))&&ql(l))return new P(i,r);if(ql(a)&&ql(l)&&r+1=l.start+1&&(l=ii._findNextWordOnLine(e,t,new P(s,l.end+1))),l?r=l.start+1:r=t.getLineMaxColumn(s);return new P(s,r)}static _moveWordPartRight(e,t){const i=t.lineNumber,n=e.getLineMaxColumn(i);if(t.column===n)return i1?c=1:(l--,c=n.getLineMaxColumn(l)):(d&&c<=d.end+1&&(d=ii._findPreviousWordOnLine(i,n,new P(l,d.start+1))),d?c=d.end+1:c>1?c=1:(l--,c=n.getLineMaxColumn(l))),new I(l,c,a.lineNumber,a.column)}static deleteInsideWord(e,t,i){if(!i.isEmpty())return i;const n=new P(i.positionLineNumber,i.positionColumn),s=this._deleteInsideWordWhitespace(t,n);return s||this._deleteInsideWordDetermineDeleteRange(e,t,n)}static _charAtIsWhitespace(e,t){const i=e.charCodeAt(t);return i===32||i===9}static _deleteInsideWordWhitespace(e,t){const i=e.getLineContent(t.lineNumber),n=i.length;if(n===0)return null;let s=Math.max(t.column-2,0);if(!this._charAtIsWhitespace(i,s))return null;let r=Math.min(t.column-1,n-1);if(!this._charAtIsWhitespace(i,r))return null;for(;s>0&&this._charAtIsWhitespace(i,s-1);)s--;for(;r+11?new I(i.lineNumber-1,t.getLineMaxColumn(i.lineNumber-1),i.lineNumber,1):i.lineNumberh.start+1<=i.column&&i.column<=h.end+1,a=(h,u)=>(h=Math.min(h,i.column),u=Math.max(u,i.column),new I(i.lineNumber,h,i.lineNumber,u)),l=h=>{let u=h.start+1,f=h.end+1,g=!1;for(;f-11&&this._charAtIsWhitespace(n,u-2);)u--;return a(u,f)},c=ii._findPreviousWordOnLine(e,t,i);if(c&&r(c))return l(c);const d=ii._findNextWordOnLine(e,t,i);return d&&r(d)?l(d):c&&d?a(c.end+1,d.start+1):c?a(c.start+1,c.end+1):d?a(d.start+1,d.end+1):a(1,s+1)}static _deleteWordPartLeft(e,t){if(!t.isEmpty())return t;const i=t.getPosition(),n=ii._moveWordPartLeft(e,i);return new I(i.lineNumber,i.column,n.lineNumber,n.column)}static _findFirstNonWhitespaceChar(e,t){const i=e.length;for(let n=t;n=u.start+1&&(u=ii._findNextWordOnLine(i,n,new P(l,u.end+1))),u?c=u.start+1:cc&&(d=c,h=e.model.getLineMaxColumn(d)),Ke.fromModelState(new Ri(new I(r.lineNumber,1,d,h),2,0,new P(d,h),0))}const l=t.modelState.selectionStart.getStartPosition().lineNumber;if(r.lineNumberl){const c=e.getLineCount();let d=a.lineNumber+1,h=1;return d>c&&(d=c,h=e.getLineMaxColumn(d)),Ke.fromViewState(t.viewState.move(!0,d,h,0))}else{const c=t.modelState.selectionStart.getEndPosition();return Ke.fromModelState(t.modelState.move(!0,c.lineNumber,c.column,0))}}static word(e,t,i,n){const s=e.model.validatePosition(n);return Ke.fromModelState(ii.word(e.cursorConfig,e.model,t.modelState,i,s))}static cancelSelection(e,t){if(!t.modelState.hasSelection())return new Ke(t.modelState,t.viewState);const i=t.viewState.position.lineNumber,n=t.viewState.position.column;return Ke.fromViewState(new Ri(new I(i,n,i,n),0,0,new P(i,n),0))}static moveTo(e,t,i,n,s){if(i){if(t.modelState.selectionStartKind===1)return this.word(e,t,i,n);if(t.modelState.selectionStartKind===2)return this.line(e,t,i,n,s)}const r=e.model.validatePosition(n),a=s?e.coordinatesConverter.validateViewPosition(new P(s.lineNumber,s.column),r):e.coordinatesConverter.convertModelPositionToViewPosition(r);return Ke.fromViewState(t.viewState.move(i,a.lineNumber,a.column,0))}static simpleMove(e,t,i,n,s,r){switch(i){case 0:return r===4?this._moveHalfLineLeft(e,t,n):this._moveLeft(e,t,n,s);case 1:return r===4?this._moveHalfLineRight(e,t,n):this._moveRight(e,t,n,s);case 2:return r===2?this._moveUpByViewLines(e,t,n,s):this._moveUpByModelLines(e,t,n,s);case 3:return r===2?this._moveDownByViewLines(e,t,n,s):this._moveDownByModelLines(e,t,n,s);case 4:return r===2?t.map(a=>Ke.fromViewState(dt.moveToPrevBlankLine(e.cursorConfig,e,a.viewState,n))):t.map(a=>Ke.fromModelState(dt.moveToPrevBlankLine(e.cursorConfig,e.model,a.modelState,n)));case 5:return r===2?t.map(a=>Ke.fromViewState(dt.moveToNextBlankLine(e.cursorConfig,e,a.viewState,n))):t.map(a=>Ke.fromModelState(dt.moveToNextBlankLine(e.cursorConfig,e.model,a.modelState,n)));case 6:return this._moveToViewMinColumn(e,t,n);case 7:return this._moveToViewFirstNonWhitespaceColumn(e,t,n);case 8:return this._moveToViewCenterColumn(e,t,n);case 9:return this._moveToViewMaxColumn(e,t,n);case 10:return this._moveToViewLastNonWhitespaceColumn(e,t,n);default:return null}}static viewportMove(e,t,i,n,s){const r=e.getCompletelyVisibleViewRange(),a=e.coordinatesConverter.convertViewRangeToModelRange(r);switch(i){case 11:{const l=this._firstLineNumberInRange(e.model,a,s),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 13:{const l=this._lastLineNumberInRange(e.model,a,s),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 12:{const l=Math.round((a.startLineNumber+a.endLineNumber)/2),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 14:{const l=[];for(let c=0,d=t.length;ci.endLineNumber-1?r=i.endLineNumber-1:sKe.fromViewState(dt.moveLeft(e.cursorConfig,e,s.viewState,i,n)))}static _moveHalfLineLeft(e,t,i){const n=[];for(let s=0,r=t.length;sKe.fromViewState(dt.moveRight(e.cursorConfig,e,s.viewState,i,n)))}static _moveHalfLineRight(e,t,i){const n=[];for(let s=0,r=t.length;s{this.model.tokenization.forceTokenization(f);const g=this.model.tokenization.getLineTokens(f),p=this.model.getLineMaxColumn(f)-1;return zd(g,p)};this.model.tokenization.forceTokenization(e.startLineNumber);const i=this.model.tokenization.getLineTokens(e.startLineNumber),n=zd(i,e.startColumn-1),s=Ni.createEmpty("",n.languageIdCodec),r=e.startLineNumber-1;if(r===0||!(n.firstCharOffset===0))return s;const c=t(r);if(!(n.languageId===c.languageId))return s;const h=c.toIViewLineTokens();return this.indentationLineProcessor.getProcessedTokens(h)}}class v8{constructor(e,t){this.model=e,this.languageConfigurationService=t}getProcessedLine(e,t){const i=(r,a)=>{const l=pi(r);return a+r.substring(l.length)};this.model.tokenization.forceTokenization?.(e);const n=this.model.tokenization.getLineTokens(e);let s=this.getProcessedTokens(n).getLineContent();return t!==void 0&&(s=i(s,t)),s}getProcessedTokens(e){const t=l=>l===2||l===3||l===1,i=e.getLanguageId(0),s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew.getBracketRegExp({global:!0}),r=[];return e.forEach(l=>{const c=e.getStandardTokenType(l);let d=e.getTokenText(l);t(c)&&(d=d.replace(s,""));const h=e.getMetadata(l);r.push({text:d,metadata:h})}),Ni.createFromTextAndMetadata(r,e.languageIdCodec)}}function V2(o,e){o.tokenization.forceTokenization(e.lineNumber);const t=o.tokenization.getLineTokens(e.lineNumber),i=zd(t,e.column-1),n=i.firstCharOffset===0,s=t.getLanguageId(0)===i.languageId;return!n&&!s}function z2(o,e,t,i){e.tokenization.forceTokenization(t.startLineNumber);const n=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),s=i.getLanguageConfiguration(n);if(!s)return null;const a=new H2(e,i).getProcessedTokenContextAroundRange(t),l=a.previousLineProcessedTokens.getLineContent(),c=a.beforeRangeProcessedTokens.getLineContent(),d=a.afterRangeProcessedTokens.getLineContent(),h=s.onEnter(o,l,c,d);if(!h)return null;const u=h.indentAction;let f=h.appendText;const g=h.removeText||0;f?u===Sn.Indent&&(f=" "+f):u===Sn.Indent||u===Sn.IndentOutdent?f=" ":f="";let p=r3(e,t.startLineNumber,t.startColumn);return g&&(p=p.substring(0,p.length-g)),{indentAction:u,appendText:f,removeText:g,indentation:p}}var Cne=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vne=function(o,e){return function(t,i){e(t,i,o)}},K1;const iL=Object.create(null);function od(o,e){if(e<=0)return"";iL[o]||(iL[o]=["",o]);const t=iL[o];for(let i=t.length;i<=e;i++)t[i]=t[i-1]+o;return t[e]}let jh=K1=class{static unshiftIndent(e,t,i,n,s){const r=_i.visibleColumnFromColumn(e,t,i);if(s){const a=od(" ",n),c=_i.prevIndentTabStop(r,n)/n;return od(a,c)}else{const c=_i.prevRenderTabStop(r,i)/i;return od(" ",c)}}static shiftIndent(e,t,i,n,s){const r=_i.visibleColumnFromColumn(e,t,i);if(s){const a=od(" ",n),c=_i.nextIndentTabStop(r,n)/n;return od(a,c)}else{const c=_i.nextRenderTabStop(r,i)/i;return od(" ",c)}}constructor(e,t,i){this._languageConfigurationService=i,this._opts=t,this._selection=e,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}_addEditOperation(e,t,i){this._useLastEditRangeForCursorEndPosition?e.addTrackedEditOperation(t,i):e.addEditOperation(t,i)}getEditOperations(e,t){const i=this._selection.startLineNumber;let n=this._selection.endLineNumber;this._selection.endColumn===1&&i!==n&&(n=n-1);const{tabSize:s,indentSize:r,insertSpaces:a}=this._opts,l=i===n;if(this._opts.useTabStops){this._selection.isEmpty()&&/^\s*$/.test(e.getLineContent(i))&&(this._useLastEditRangeForCursorEndPosition=!0);let c=0,d=0;for(let h=i;h<=n;h++,c=d){d=0;const u=e.getLineContent(h);let f=zn(u);if(this._opts.isUnshift&&(u.length===0||f===0)||!l&&!this._opts.isUnshift&&u.length===0)continue;if(f===-1&&(f=u.length),h>1&&_i.visibleColumnFromColumn(u,f+1,s)%r!==0&&e.tokenization.isCheapToTokenize(h-1)){const _=z2(this._opts.autoIndent,e,new I(h-1,e.getLineMaxColumn(h-1),h-1,e.getLineMaxColumn(h-1)),this._languageConfigurationService);if(_){if(d=c,_.appendText)for(let b=0,C=_.appendText.length;b1){let n,s=-1;for(n=e-1;n>=1;n--){if(o.tokenization.getLanguageIdAtPosition(n,0)!==i)return s;const r=o.getLineContent(n);if(t.shouldIgnore(n)||/^\s+$/.test(r)||r===""){s=n;continue}return n}}return-1}function Rv(o,e,t,i=!0,n){if(o<4)return null;const s=n.getLanguageConfiguration(e.tokenization.getLanguageId()).indentRulesSupport;if(!s)return null;const r=new bne(e,s,n);if(t<=1)return{indentation:"",action:null};for(let l=t-1;l>0&&e.getLineContent(l)==="";l--)if(l===1)return{indentation:"",action:null};const a=Sne(e,t,r);if(a<0)return null;if(a<1)return{indentation:"",action:null};if(r.shouldIncrease(a)||r.shouldIndentNextLine(a)){const l=e.getLineContent(a);return{indentation:pi(l),action:Sn.Indent,line:a}}else if(r.shouldDecrease(a)){const l=e.getLineContent(a);return{indentation:pi(l),action:null,line:a}}else{if(a===1)return{indentation:pi(e.getLineContent(a)),action:null,line:a};const l=a-1,c=s.getIndentMetadata(e.getLineContent(l));if(!(c&3)&&c&4){let d=0;for(let h=l-1;h>0;h--)if(!r.shouldIndentNextLine(h)){d=h;break}return{indentation:pi(e.getLineContent(d+1)),action:null,line:d+1}}if(i)return{indentation:pi(e.getLineContent(a)),action:null,line:a};for(let d=a;d>0;d--){if(r.shouldIncrease(d))return{indentation:pi(e.getLineContent(d)),action:Sn.Indent,line:d};if(r.shouldIndentNextLine(d)){let h=0;for(let u=d-1;u>0;u--)if(!r.shouldIndentNextLine(d)){h=u;break}return{indentation:pi(e.getLineContent(h+1)),action:null,line:h+1}}else if(r.shouldDecrease(d))return{indentation:pi(e.getLineContent(d)),action:null,line:d}}return{indentation:pi(e.getLineContent(1)),action:null,line:1}}}function Lne(o,e,t,i,n){if(o<4)return null;const s=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),r=n.getLanguageConfiguration(s).indentRulesSupport;if(!r)return null;e.tokenization.forceTokenization(t.startLineNumber);const l=new H2(e,n).getProcessedTokenContextAroundRange(t),c=l.afterRangeProcessedTokens,d=l.beforeRangeProcessedTokens,h=pi(d.getLineContent()),u=kne(e,t.startLineNumber,d),f=V2(e,t.getStartPosition()),g=e.getLineContent(t.startLineNumber),p=pi(g),_=Rv(o,u,t.startLineNumber+1,void 0,n);if(!_){const C=f?p:h;return{beforeEnter:C,afterEnter:C}}let b=f?p:_.indentation;return _.action===Sn.Indent&&(b=i.shiftIndent(b)),r.shouldDecrease(c.getLineContent())&&(b=i.unshiftIndent(b)),{beforeEnter:f?p:h,afterEnter:b}}function xne(o,e,t,i,n,s){const r=o.autoIndent;if(r<4||V2(e,t.getStartPosition()))return null;const l=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),c=s.getLanguageConfiguration(l).indentRulesSupport;if(!c)return null;const h=new H2(e,s).getProcessedTokenContextAroundRange(t),u=h.beforeRangeProcessedTokens.getLineContent(),f=h.afterRangeProcessedTokens.getLineContent(),g=u+f,p=u+i+f;if(!c.shouldDecrease(g)&&c.shouldDecrease(p)){const b=Rv(r,e,t.startLineNumber,!1,s);if(!b)return null;let C=b.indentation;return b.action!==Sn.Indent&&(C=n.unshiftIndent(C)),C}const _=t.startLineNumber-1;if(_>0){const b=e.getLineContent(_);if(c.shouldIndentNextLine(b)&&c.shouldIncrease(p)){const w=Rv(r,e,t.startLineNumber,!1,s)?.indentation;if(w!==void 0){const v=e.getLineContent(t.startLineNumber),y=pi(v),L=n.shiftIndent(w)===y,E=/^\s*$/.test(g),N=o.autoClosingPairs.autoClosingPairsOpenByEnd.get(i),F=N&&N.length>0&&E;if(L&&F)return w}}}return null}function kne(o,e,t){return{tokenization:{getLineTokens:n=>n===e?t:o.tokenization.getLineTokens(n),getLanguageId:()=>o.getLanguageId(),getLanguageIdAtPosition:(n,s)=>o.getLanguageIdAtPosition(n,s)},getLineContent:n=>n===e?t.getLineContent():o.getLineContent(n)}}class Dne{static getEdits(e,t,i,n,s){if(!s&&this._isAutoIndentType(e,t,i)){const r=[];for(const l of i){const c=this._findActualIndentationForSelection(e,t,l,n);if(c===null)return;r.push({selection:l,indentation:c})}const a=kI.getAutoClosingPairClose(e,t,i,n,!1);return this._getIndentationAndAutoClosingPairEdits(e,t,r,n,a)}}static _isAutoIndentType(e,t,i){if(e.autoIndent<4)return!1;for(let n=0,s=i.length;nK2(e,a),unshiftIndent:a=>Av(e,a)},e.languageConfigurationService);if(s===null)return null;const r=r3(t,i.startLineNumber,i.startColumn);return s===e.normalizeIndentation(r)?null:s}static _getIndentationAndAutoClosingPairEdits(e,t,i,n,s){const r=i.map(({selection:l,indentation:c})=>{if(s!==null){const d=this._getEditFromIndentationAndSelection(e,t,c,l,n,!1);return new Bne(d,l,n,s)}else{const d=this._getEditFromIndentationAndSelection(e,t,c,l,n,!0);return gd(d.range,d.text,!1)}}),a={shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1};return new jn(4,r,a)}static _getEditFromIndentationAndSelection(e,t,i,n,s,r=!0){const a=n.startLineNumber,l=t.getLineFirstNonWhitespaceColumn(a);let c=e.normalizeIndentation(i);if(l!==0){const h=t.getLineContent(a);c+=h.substring(l-1,n.startColumn-1)}return c+=r?s:"",{range:new I(a,1,n.endLineNumber,n.endColumn),text:c}}}class Ine{static getEdits(e,t,i,n,s,r){if(y8(t,i,n,s,r))return this._runAutoClosingOvertype(e,n,r)}static _runAutoClosingOvertype(e,t,i){const n=[];for(let s=0,r=t.length;snew os(new I(a.positionLineNumber,a.positionColumn,a.positionLineNumber,a.positionColumn+1),"",!1));return new jn(4,r,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}}class kI{static getEdits(e,t,i,n,s,r){if(!r){const a=this.getAutoClosingPairClose(e,t,i,n,s);if(a!==null)return this._runAutoClosingOpenCharType(i,n,s,a)}}static _runAutoClosingOpenCharType(e,t,i,n){const s=[];for(let r=0,a=e.length;r{const p=g.getPosition();return s?{lineNumber:p.lineNumber,beforeColumn:p.column-n.length,afterColumn:p.column}:{lineNumber:p.lineNumber,beforeColumn:p.column,afterColumn:p.column}}),a=this._findAutoClosingPairOpen(e,t,r.map(g=>new P(g.lineNumber,g.beforeColumn)),n);if(!a)return null;let l,c;if(Hc(n)?(l=e.autoClosingQuotes,c=e.shouldAutoCloseBefore.quote):(e.blockCommentStartToken?a.open.includes(e.blockCommentStartToken):!1)?(l=e.autoClosingComments,c=e.shouldAutoCloseBefore.comment):(l=e.autoClosingBrackets,c=e.shouldAutoCloseBefore.bracket),l==="never")return null;const h=this._findContainedAutoClosingPair(e,a),u=h?h.close:"";let f=!0;for(const g of r){const{lineNumber:p,beforeColumn:_,afterColumn:b}=g,C=t.getLineContent(p),w=C.substring(0,_-1),v=C.substring(b-1);if(v.startsWith(u)||(f=!1),v.length>0){const E=v.charAt(0);if(!this._isBeforeClosingBrace(e,v)&&!c(E))return null}if(a.open.length===1&&(n==="'"||n==='"')&&l!=="always"){const E=cg(e.wordSeparators,[]);if(w.length>0){const N=w.charCodeAt(w.length-1);if(E.get(N)===0)return null}}if(!t.tokenization.isCheapToTokenize(p))return null;t.tokenization.forceTokenization(p);const y=t.tokenization.getLineTokens(p),x=zd(y,_-1);if(!a.shouldAutoClose(x,_-x.firstCharOffset))return null;const L=a.findNeutralCharacter();if(L){const E=t.tokenization.getTokenTypeIfInsertingCharacter(p,_,L);if(!a.isOK(E))return null}}return f?a.close.substring(0,a.close.length-u.length):a.close}static _findContainedAutoClosingPair(e,t){if(t.open.length<=1)return null;const i=t.close.charAt(t.close.length-1),n=e.autoClosingPairs.autoClosingPairsCloseByEnd.get(i)||[];let s=null;for(const r of n)r.open!==t.open&&t.open.includes(r.open)&&t.close.endsWith(r.close)&&(!s||r.open.length>s.open.length)&&(s=r);return s}static _findAutoClosingPairOpen(e,t,i,n){const s=e.autoClosingPairs.autoClosingPairsOpenByEnd.get(n);if(!s)return null;let r=null;for(const a of s)if(r===null||a.open.length>r.open.length){let l=!0;for(const c of i)if(t.getValueInRange(new I(c.lineNumber,c.column-a.open.length+1,c.lineNumber,c.column))+n!==a.open){l=!1;break}l&&(r=a)}return r}static _isBeforeClosingBrace(e,t){const i=t.charAt(0),n=e.autoClosingPairs.autoClosingPairsOpenByStart.get(i)||[],s=e.autoClosingPairs.autoClosingPairsCloseByStart.get(i)||[],r=n.some(l=>t.startsWith(l.open)),a=s.some(l=>t.startsWith(l.close));return!r&&a}}class Nne{static getEdits(e,t,i,n,s){if(!s&&this._isSurroundSelectionType(e,t,i,n))return this._runSurroundSelectionType(e,i,n)}static _runSurroundSelectionType(e,t,i){const n=[];for(let s=0,r=t.length;s=4){const l=Lne(e.autoIndent,t,n,{unshiftIndent:c=>Av(e,c),shiftIndent:c=>K2(e,c),normalizeIndentation:c=>e.normalizeIndentation(c)},e.languageConfigurationService);if(l){let c=e.visibleColumnFromColumn(t,n.getEndPosition());const d=n.endColumn,h=t.getLineContent(n.endLineNumber),u=zn(h);if(u>=0?n=n.setEndPosition(n.endLineNumber,Math.max(n.endColumn,u+1)):n=n.setEndPosition(n.endLineNumber,t.getLineMaxColumn(n.endLineNumber)),i)return new $1(n,` -`+e.normalizeIndentation(l.afterEnter),!0);{let f=0;return d<=u+1&&(e.insertSpaces||(c=Math.ceil(c/e.indentSize)),f=Math.min(c+1-e.normalizeIndentation(l.afterEnter).length-1,0)),new Tv(n,` -`+e.normalizeIndentation(l.afterEnter),0,f,!0)}}}return gd(n,` -`+e.normalizeIndentation(a),i)}static lineInsertBefore(e,t,i){if(t===null||i===null)return[];const n=[];for(let s=0,r=i.length;sthis._compositionType(i,d,s,r,a,l));return new jn(4,c,{shouldPushStackElementBefore:Dy(e,4),shouldPushStackElementAfter:!1})}static _compositionType(e,t,i,n,s,r){if(!t.isEmpty())return null;const a=t.getPosition(),l=Math.max(1,a.column-n),c=Math.min(e.getLineMaxColumn(a.lineNumber),a.column+s),d=new I(a.lineNumber,l,a.lineNumber,c);return e.getValueInRange(d)===i&&r===0?null:new Tv(d,i,0,r)}}class Pne{static getEdits(e,t,i){const n=[];for(let r=0,a=t.length;r1){let a;for(a=i-1;a>=1;a--){const d=t.getLineContent(a);if(Jh(d)>=0)break}if(a<1)return null;const l=t.getLineMaxColumn(a),c=z2(e.autoIndent,t,new I(a,l,a,l),e.languageConfigurationService);c&&(s=c.indentation+c.appendText)}return n&&(n===Sn.Indent&&(s=K2(e,s)),n===Sn.Outdent&&(s=Av(e,s)),s=e.normalizeIndentation(s)),s||null}static _replaceJumpToNextIndent(e,t,i,n){let s="";const r=i.getStartPosition();if(e.insertSpaces){const a=e.visibleColumnFromColumn(t,r),l=e.indentSize,c=l-a%l;for(let d=0;d2?c.charCodeAt(l.column-2):0)===92&&h)return!1;if(o.autoClosingOvertype==="auto"){let f=!1;for(let g=0,p=i.length;g{const n=t.get(Pt).getFocusedCodeEditor();return n&&n.hasTextFocus()?this._runEditorCommand(t,n,i):!1}),e.addImplementation(1e3,"generic-dom-input-textarea",(t,i)=>{const n=Xi();return n&&["input","textarea"].indexOf(n.tagName.toLowerCase())>=0?(this.runDOMCommand(n),!0):!1}),e.addImplementation(0,"generic-dom",(t,i)=>{const n=t.get(Pt).getActiveCodeEditor();return n?(n.focus(),this._runEditorCommand(t,n,i)):!1})}_runEditorCommand(e,t,i){const n=this.runEditorCommand(e,t,i);return n||!0}}var Li;(function(o){class e extends $t{constructor(C){super(C),this._inSelectionMode=C.inSelectionMode}runCoreEditorCommand(C,w){if(!w.position)return;C.model.pushStackElement(),C.setCursorStates(w.source,3,[nn.moveTo(C,C.getPrimaryCursorState(),this._inSelectionMode,w.position,w.viewPosition)])&&w.revealType!==2&&C.revealAllCursors(w.source,!0,!0)}}o.MoveTo=ge(new e({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),o.MoveToSelect=ge(new e({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));class t extends $t{runCoreEditorCommand(C,w){C.model.pushStackElement();const v=this._getColumnSelectResult(C,C.getPrimaryCursorState(),C.getCursorColumnSelectData(),w);v!==null&&(C.setCursorStates(w.source,3,v.viewStates.map(y=>Ke.fromViewState(y))),C.setCursorColumnSelectData({isReal:!0,fromViewLineNumber:v.fromLineNumber,fromViewVisualColumn:v.fromVisualColumn,toViewLineNumber:v.toLineNumber,toViewVisualColumn:v.toVisualColumn}),v.reversed?C.revealTopMostCursor(w.source):C.revealBottomMostCursor(w.source))}}o.ColumnSelect=ge(new class extends t{constructor(){super({id:"columnSelect",precondition:void 0})}_getColumnSelectResult(b,C,w,v){if(typeof v.position>"u"||typeof v.viewPosition>"u"||typeof v.mouseColumn>"u")return null;const y=b.model.validatePosition(v.position),x=b.coordinatesConverter.validateViewPosition(new P(v.viewPosition.lineNumber,v.viewPosition.column),y),L=v.doColumnSelect?w.fromViewLineNumber:x.lineNumber,E=v.doColumnSelect?w.fromViewVisualColumn:v.mouseColumn-1;return Id.columnSelect(b.cursorConfig,b,L,E,x.lineNumber,v.mouseColumn-1)}}),o.CursorColumnSelectLeft=ge(new class extends t{constructor(){super({id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3599,linux:{primary:0}}})}_getColumnSelectResult(b,C,w,v){return Id.columnSelectLeft(b.cursorConfig,b,w)}}),o.CursorColumnSelectRight=ge(new class extends t{constructor(){super({id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3601,linux:{primary:0}}})}_getColumnSelectResult(b,C,w,v){return Id.columnSelectRight(b.cursorConfig,b,w)}});class i extends t{constructor(C){super(C),this._isPaged=C.isPaged}_getColumnSelectResult(C,w,v,y){return Id.columnSelectUp(C.cursorConfig,C,v,this._isPaged)}}o.CursorColumnSelectUp=ge(new i({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3600,linux:{primary:0}}})),o.CursorColumnSelectPageUp=ge(new i({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3595,linux:{primary:0}}}));class n extends t{constructor(C){super(C),this._isPaged=C.isPaged}_getColumnSelectResult(C,w,v,y){return Id.columnSelectDown(C.cursorConfig,C,v,this._isPaged)}}o.CursorColumnSelectDown=ge(new n({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3602,linux:{primary:0}}})),o.CursorColumnSelectPageDown=ge(new n({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3596,linux:{primary:0}}}));class s extends $t{constructor(){super({id:"cursorMove",precondition:void 0,metadata:Mv.metadata})}runCoreEditorCommand(C,w){const v=Mv.parse(w);v&&this._runCursorMove(C,w.source,v)}_runCursorMove(C,w,v){C.model.pushStackElement(),C.setCursorStates(w,3,s._move(C,C.getCursorStates(),v)),C.revealAllCursors(w,!0)}static _move(C,w,v){const y=v.select,x=v.value;switch(v.direction){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:return nn.simpleMove(C,w,v.direction,y,x,v.unit);case 11:case 13:case 12:case 14:return nn.viewportMove(C,w,v.direction,y,x);default:return null}}}o.CursorMoveImpl=s,o.CursorMove=ge(new s);class r extends $t{constructor(C){super(C),this._staticArgs=C.args}runCoreEditorCommand(C,w){let v=this._staticArgs;this._staticArgs.value===-1&&(v={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:w.pageSize||C.cursorConfig.pageSize}),C.model.pushStackElement(),C.setCursorStates(w.source,3,nn.simpleMove(C,C.getCursorStates(),v.direction,v.select,v.value,v.unit)),C.revealAllCursors(w.source,!0)}}o.CursorLeft=ge(new r({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:15,mac:{primary:15,secondary:[288]}}})),o.CursorLeftSelect=ge(new r({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1039}})),o.CursorRight=ge(new r({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:17,mac:{primary:17,secondary:[292]}}})),o.CursorRightSelect=ge(new r({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1041}})),o.CursorUp=ge(new r({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:16,mac:{primary:16,secondary:[302]}}})),o.CursorUpSelect=ge(new r({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1040,secondary:[3088],mac:{primary:1040},linux:{primary:1040}}})),o.CursorPageUp=ge(new r({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:11}})),o.CursorPageUpSelect=ge(new r({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1035}})),o.CursorDown=ge(new r({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:18,mac:{primary:18,secondary:[300]}}})),o.CursorDownSelect=ge(new r({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1042,secondary:[3090],mac:{primary:1042},linux:{primary:1042}}})),o.CursorPageDown=ge(new r({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:12}})),o.CursorPageDownSelect=ge(new r({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1036}})),o.CreateCursor=ge(new class extends $t{constructor(){super({id:"createCursor",precondition:void 0})}runCoreEditorCommand(b,C){if(!C.position)return;let w;C.wholeLine?w=nn.line(b,b.getPrimaryCursorState(),!1,C.position,C.viewPosition):w=nn.moveTo(b,b.getPrimaryCursorState(),!1,C.position,C.viewPosition);const v=b.getCursorStates();if(v.length>1){const y=w.modelState?w.modelState.position:null,x=w.viewState?w.viewState.position:null;for(let L=0,E=v.length;Lx&&(y=x);const L=new I(y,1,y,b.model.getLineMaxColumn(y));let E=0;if(w.at)switch(w.at){case hf.RawAtArgument.Top:E=3;break;case hf.RawAtArgument.Center:E=1;break;case hf.RawAtArgument.Bottom:E=4;break}const N=b.coordinatesConverter.convertModelRangeToViewRange(L);b.revealRange(C.source,!1,N,E,0)}}),o.SelectAll=new class extends DI{constructor(){super(_z)}runDOMCommand(b){Mo&&(b.focus(),b.select()),b.ownerDocument.execCommand("selectAll")}runEditorCommand(b,C,w){const v=C._getViewModel();v&&this.runCoreEditorCommand(v,w)}runCoreEditorCommand(b,C){b.model.pushStackElement(),b.setCursorStates("keyboard",3,[nn.selectAll(b,b.getPrimaryCursorState())])}},o.SetSelection=ge(new class extends $t{constructor(){super({id:"setSelection",precondition:void 0})}runCoreEditorCommand(b,C){C.selection&&(b.model.pushStackElement(),b.setCursorStates(C.source,3,[Ke.fromModelSelection(C.selection)]))}})})(Li||(Li={}));const Hne=re.and(K.textInputFocus,K.columnSelection);function qg(o,e){Nn.registerKeybindingRule({id:o,primary:e,when:Hne,weight:it+1})}qg(Li.CursorColumnSelectLeft.id,1039);qg(Li.CursorColumnSelectRight.id,1041);qg(Li.CursorColumnSelectUp.id,1040);qg(Li.CursorColumnSelectPageUp.id,1035);qg(Li.CursorColumnSelectDown.id,1042);qg(Li.CursorColumnSelectPageDown.id,1036);function MO(o){return o.register(),o}var fp;(function(o){class e extends co{runEditorCommand(i,n,s){const r=n._getViewModel();r&&this.runCoreEditingCommand(n,r,s||{})}}o.CoreEditingCommand=e,o.LineBreakInsert=ge(new class extends e{constructor(){super({id:"lineBreakInsert",precondition:K.writable,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:0,mac:{primary:301}}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,w8.lineBreakInsert(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection)))}}),o.Outdent=ge(new class extends e{constructor(){super({id:"outdent",precondition:K.writable,kbOpts:{weight:it,kbExpr:re.and(K.editorTextFocus,K.tabDoesNotMoveFocus),primary:1026}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,Ed.outdent(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection))),t.pushUndoStop()}}),o.Tab=ge(new class extends e{constructor(){super({id:"tab",precondition:K.writable,kbOpts:{weight:it,kbExpr:re.and(K.editorTextFocus,K.tabDoesNotMoveFocus),primary:2}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,Ed.tab(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection))),t.pushUndoStop()}}),o.DeleteLeft=ge(new class extends e{constructor(){super({id:"deleteLeft",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1,secondary:[1025],mac:{primary:1,secondary:[1025,294,257]}}})}runCoreEditingCommand(t,i,n){const[s,r]=Kh.deleteLeft(i.getPrevEditOperationType(),i.cursorConfig,i.model,i.getCursorStates().map(a=>a.modelState.selection),i.getCursorAutoClosedCharacters());s&&t.pushUndoStop(),t.executeCommands(this.id,r),i.setPrevEditOperationType(2)}}),o.DeleteRight=ge(new class extends e{constructor(){super({id:"deleteRight",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:20,mac:{primary:20,secondary:[290,276]}}})}runCoreEditingCommand(t,i,n){const[s,r]=Kh.deleteRight(i.getPrevEditOperationType(),i.cursorConfig,i.model,i.getCursorStates().map(a=>a.modelState.selection));s&&t.pushUndoStop(),t.executeCommands(this.id,r),i.setPrevEditOperationType(3)}}),o.Undo=new class extends DI{constructor(){super(qF)}runDOMCommand(t){t.ownerDocument.execCommand("undo")}runEditorCommand(t,i,n){if(!(!i.hasModel()||i.getOption(92)===!0))return i.getModel().undo()}},o.Redo=new class extends DI{constructor(){super(GF)}runDOMCommand(t){t.ownerDocument.execCommand("redo")}runEditorCommand(t,i,n){if(!(!i.hasModel()||i.getOption(92)===!0))return i.getModel().redo()}}})(fp||(fp={}));class RO extends U0{constructor(e,t,i){super({id:e,precondition:void 0,metadata:i}),this._handlerId=t}runCommand(e,t){const i=e.get(Pt).getFocusedCodeEditor();i&&i.trigger("keyboard",this._handlerId,t)}}function pu(o,e){MO(new RO("default:"+o,o)),MO(new RO(o,o,e))}pu("type",{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]});pu("replacePreviousChar");pu("compositionType");pu("compositionStart");pu("compositionEnd");pu("paste");pu("cut");class Vne{constructor(e,t,i,n){this.configuration=e,this.viewModel=t,this.userInputEvents=i,this.commandDelegate=n}paste(e,t,i,n){this.commandDelegate.paste(e,t,i,n)}type(e){this.commandDelegate.type(e)}compositionType(e,t,i,n){this.commandDelegate.compositionType(e,t,i,n)}compositionStart(){this.commandDelegate.startComposition()}compositionEnd(){this.commandDelegate.endComposition()}cut(){this.commandDelegate.cut()}setSelection(e){Li.SetSelection.runCoreEditorCommand(this.viewModel,{source:"keyboard",selection:e})}_validateViewColumn(e){const t=this.viewModel.getLineMinColumn(e.lineNumber);return e.column=4?this._selectAll():e.mouseDownCount===3?this._hasMulticursorModifier(e)?e.inSelectionMode?this._lastCursorLineSelectDrag(e.position,e.revealType):this._lastCursorLineSelect(e.position,e.revealType):e.inSelectionMode?this._lineSelectDrag(e.position,e.revealType):this._lineSelect(e.position,e.revealType):e.mouseDownCount===2?e.onInjectedText||(this._hasMulticursorModifier(e)?this._lastCursorWordSelect(e.position,e.revealType):e.inSelectionMode?this._wordSelectDrag(e.position,e.revealType):this._wordSelect(e.position,e.revealType)):this._hasMulticursorModifier(e)?this._hasNonMulticursorModifier(e)||(e.shiftKey?this._columnSelect(e.position,e.mouseColumn,!0):e.inSelectionMode?this._lastCursorMoveToSelect(e.position,e.revealType):this._createCursor(e.position,!1)):e.inSelectionMode?e.altKey?this._columnSelect(e.position,e.mouseColumn,!0):n?this._columnSelect(e.position,e.mouseColumn,!0):this._moveToSelect(e.position,e.revealType):this.moveTo(e.position,e.revealType)}_usualArgs(e,t){return e=this._validateViewColumn(e),{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,revealType:t}}moveTo(e,t){Li.MoveTo.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_moveToSelect(e,t){Li.MoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_columnSelect(e,t,i){e=this._validateViewColumn(e),Li.ColumnSelect.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,mouseColumn:t,doColumnSelect:i})}_createCursor(e,t){e=this._validateViewColumn(e),Li.CreateCursor.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,wholeLine:t})}_lastCursorMoveToSelect(e,t){Li.LastCursorMoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_wordSelect(e,t){Li.WordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_wordSelectDrag(e,t){Li.WordSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lastCursorWordSelect(e,t){Li.LastCursorWordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lineSelect(e,t){Li.LineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lineSelectDrag(e,t){Li.LineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lastCursorLineSelect(e,t){Li.LastCursorLineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lastCursorLineSelectDrag(e,t){Li.LastCursorLineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_selectAll(){Li.SelectAll.runCoreEditorCommand(this.viewModel,{source:"mouse"})}_convertViewToModelPosition(e){return this.viewModel.coordinatesConverter.convertViewPositionToModelPosition(e)}emitKeyDown(e){this.userInputEvents.emitKeyDown(e)}emitKeyUp(e){this.userInputEvents.emitKeyUp(e)}emitContextMenu(e){this.userInputEvents.emitContextMenu(e)}emitMouseMove(e){this.userInputEvents.emitMouseMove(e)}emitMouseLeave(e){this.userInputEvents.emitMouseLeave(e)}emitMouseUp(e){this.userInputEvents.emitMouseUp(e)}emitMouseDown(e){this.userInputEvents.emitMouseDown(e)}emitMouseDrag(e){this.userInputEvents.emitMouseDrag(e)}emitMouseDrop(e){this.userInputEvents.emitMouseDrop(e)}emitMouseDropCanceled(){this.userInputEvents.emitMouseDropCanceled()}emitMouseWheel(e){this.userInputEvents.emitMouseWheel(e)}}class L8{constructor(e){this._lineFactory=e,this._set(1,[])}flush(){this._set(1,[])}_set(e,t){this._lines=t,this._rendLineNumberStart=e}_get(){return{rendLineNumberStart:this._rendLineNumberStart,lines:this._lines}}getStartLineNumber(){return this._rendLineNumberStart}getEndLineNumber(){return this._rendLineNumberStart+this._lines.length-1}getCount(){return this._lines.length}getLine(e){const t=e-this._rendLineNumberStart;if(t<0||t>=this._lines.length)throw new nt("Illegal value for lineNumber");return this._lines[t]}onLinesDeleted(e,t){if(this.getCount()===0)return null;const i=this.getStartLineNumber(),n=this.getEndLineNumber();if(tn)return null;let s=0,r=0;for(let l=i;l<=n;l++){const c=l-this._rendLineNumberStart;e<=l&&l<=t&&(r===0?(s=c,r=1):r++)}if(e=n&&a<=s&&(this._lines[a-this._rendLineNumberStart].onContentChanged(),r=!0);return r}onLinesInserted(e,t){if(this.getCount()===0)return null;const i=t-e+1,n=this.getStartLineNumber(),s=this.getEndLineNumber();if(e<=n)return this._rendLineNumberStart+=i,null;if(e>s)return null;if(i+e>s)return this._lines.splice(e-this._rendLineNumberStart,s-e+1);const r=[];for(let h=0;hi)continue;const l=Math.max(t,a.fromLineNumber),c=Math.min(i,a.toLineNumber);for(let d=l;d<=c;d++){const h=d-this._rendLineNumberStart;this._lines[h].onTokensChanged(),n=!0}}return n}}class x8{constructor(e){this._lineFactory=e,this.domNode=this._createDomNode(),this._linesCollection=new L8(this._lineFactory)}_createDomNode(){const e=ot(document.createElement("div"));return e.setClassName("view-layer"),e.setPosition("absolute"),e.domNode.setAttribute("role","presentation"),e.domNode.setAttribute("aria-hidden","true"),e}onConfigurationChanged(e){return!!e.hasChanged(146)}onFlushed(e){return this._linesCollection.flush(),!0}onLinesChanged(e){return this._linesCollection.onLinesChanged(e.fromLineNumber,e.count)}onLinesDeleted(e){const t=this._linesCollection.onLinesDeleted(e.fromLineNumber,e.toLineNumber);if(t)for(let i=0,n=t.length;it){const r=t,a=Math.min(i,s.rendLineNumberStart-1);r<=a&&(this._insertLinesBefore(s,r,a,n,t),s.linesLength+=a-r+1)}else if(s.rendLineNumberStart0&&(this._removeLinesBefore(s,r),s.linesLength-=r)}if(s.rendLineNumberStart=t,s.rendLineNumberStart+s.linesLength-1i){const r=Math.max(0,i-s.rendLineNumberStart+1),l=s.linesLength-1-r+1;l>0&&(this._removeLinesAfter(s,l),s.linesLength-=l)}return this._finishRendering(s,!1,n),s}_renderUntouchedLines(e,t,i,n,s){const r=e.rendLineNumberStart,a=e.lines;for(let l=t;l<=i;l++){const c=r+l;a[l].layoutLine(c,n[c-s],this._viewportData.lineHeight)}}_insertLinesBefore(e,t,i,n,s){const r=[];let a=0;for(let l=t;l<=i;l++)r[a++]=this._lineFactory.createLine();e.lines=r.concat(e.lines)}_removeLinesBefore(e,t){for(let i=0;i=0;a--){const l=e.lines[a];n[a]&&(l.setDomNode(r),r=r.previousSibling)}}_finishRenderingInvalidLines(e,t,i){const n=document.createElement("div");Za._ttPolicy&&(t=Za._ttPolicy.createHTML(t)),n.innerHTML=t;for(let s=0;se}),Za._sb=new K_(1e5);let II=Za;class k8 extends _s{constructor(e){super(e),this._dynamicOverlays=[],this._isFocused=!1,this._visibleLines=new x8({createLine:()=>new zne(this._dynamicOverlays)}),this.domNode=this._visibleLines.domNode;const i=this._context.configuration.options.get(50);qi(this.domNode,i),this.domNode.setClassName("view-overlays")}shouldRender(){if(super.shouldRender())return!0;for(let e=0,t=this._dynamicOverlays.length;ei.shouldRender());for(let i=0,n=t.length;i'),s.appendString(r),s.appendString(""),!0)}layoutLine(e,t,i){this._domNode&&(this._domNode.setTop(t),this._domNode.setHeight(i))}}class Une extends k8{constructor(e){super(e);const i=this._context.configuration.options.get(146);this._contentWidth=i.contentWidth,this.domNode.setHeight(0)}onConfigurationChanged(e){const i=this._context.configuration.options.get(146);return this._contentWidth=i.contentWidth,super.onConfigurationChanged(e)||!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollWidthChanged}_viewOverlaysRender(e){super._viewOverlaysRender(e),this.domNode.setWidth(Math.max(e.scrollWidth,this._contentWidth))}}class $ne extends k8{constructor(e){super(e);const t=this._context.configuration.options,i=t.get(146);this._contentLeft=i.contentLeft,this.domNode.setClassName("margin-view-overlays"),this.domNode.setWidth(1),qi(this.domNode,t.get(50))}onConfigurationChanged(e){const t=this._context.configuration.options;qi(this.domNode,t.get(50));const i=t.get(146);return this._contentLeft=i.contentLeft,super.onConfigurationChanged(e)||!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollHeightChanged}_viewOverlaysRender(e){super._viewOverlaysRender(e);const t=Math.min(e.scrollHeight,1e6);this.domNode.setHeight(t),this.domNode.setWidth(this._contentLeft)}}class Iy{constructor(e){this.onKeyDown=null,this.onKeyUp=null,this.onContextMenu=null,this.onMouseMove=null,this.onMouseLeave=null,this.onMouseDown=null,this.onMouseUp=null,this.onMouseDrag=null,this.onMouseDrop=null,this.onMouseDropCanceled=null,this.onMouseWheel=null,this._coordinatesConverter=e}emitKeyDown(e){this.onKeyDown?.(e)}emitKeyUp(e){this.onKeyUp?.(e)}emitContextMenu(e){this.onContextMenu?.(this._convertViewToModelMouseEvent(e))}emitMouseMove(e){this.onMouseMove?.(this._convertViewToModelMouseEvent(e))}emitMouseLeave(e){this.onMouseLeave?.(this._convertViewToModelMouseEvent(e))}emitMouseDown(e){this.onMouseDown?.(this._convertViewToModelMouseEvent(e))}emitMouseUp(e){this.onMouseUp?.(this._convertViewToModelMouseEvent(e))}emitMouseDrag(e){this.onMouseDrag?.(this._convertViewToModelMouseEvent(e))}emitMouseDrop(e){this.onMouseDrop?.(this._convertViewToModelMouseEvent(e))}emitMouseDropCanceled(){this.onMouseDropCanceled?.()}emitMouseWheel(e){this.onMouseWheel?.(e)}_convertViewToModelMouseEvent(e){return e.target?{event:e.event,target:this._convertViewToModelMouseTarget(e.target)}:e}_convertViewToModelMouseTarget(e){return Iy.convertViewToModelMouseTarget(e,this._coordinatesConverter)}static convertViewToModelMouseTarget(e,t){const i={...e};return i.position&&(i.position=t.convertViewPositionToModelPosition(i.position)),i.range&&(i.range=t.convertViewRangeToModelRange(i.range)),(i.type===5||i.type===8)&&(i.detail=this.convertViewToModelViewZoneData(i.detail,t)),i}static convertViewToModelViewZoneData(e,t){return{viewZoneId:e.viewZoneId,positionBefore:e.positionBefore?t.convertViewPositionToModelPosition(e.positionBefore):e.positionBefore,positionAfter:e.positionAfter?t.convertViewPositionToModelPosition(e.positionAfter):e.positionAfter,position:t.convertViewPositionToModelPosition(e.position),afterLineNumber:t.convertViewPositionToModelPosition(new P(e.afterLineNumber,1)).lineNumber}}}class Kne extends _s{constructor(e){super(e),this.blocks=[],this.contentWidth=-1,this.contentLeft=0,this.domNode=ot(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("blockDecorations-container"),this.update()}update(){let e=!1;const i=this._context.configuration.options.get(146),n=i.contentWidth-i.verticalScrollbarWidth;this.contentWidth!==n&&(this.contentWidth=n,e=!0);const s=i.contentLeft;return this.contentLeft!==s&&(this.contentLeft=s,e=!0),e}dispose(){super.dispose()}onConfigurationChanged(e){return this.update()}onScrollChanged(e){return e.scrollTopChanged||e.scrollLeftChanged}onDecorationsChanged(e){return!0}onZonesChanged(e){return!0}prepareRender(e){}render(e){let t=0;const i=e.getDecorationsInViewport();for(const n of i){if(!n.options.blockClassName)continue;let s=this.blocks[t];s||(s=this.blocks[t]=ot(document.createElement("div")),this.domNode.appendChild(s));let r,a;n.options.blockIsAfterEnd?(r=e.getVerticalOffsetAfterLineNumber(n.range.endLineNumber,!1),a=e.getVerticalOffsetAfterLineNumber(n.range.endLineNumber,!0)):(r=e.getVerticalOffsetForLineNumber(n.range.startLineNumber,!0),a=n.range.isEmpty()&&!n.options.blockDoesNotCollapse?e.getVerticalOffsetForLineNumber(n.range.startLineNumber,!1):e.getVerticalOffsetAfterLineNumber(n.range.endLineNumber,!0));const[l,c,d,h]=n.options.blockPadding??[0,0,0,0];s.setClassName("blockDecorations-block "+n.options.blockClassName),s.setLeft(this.contentLeft-h),s.setWidth(this.contentWidth+h+c),s.setTop(r-e.scrollTop-l),s.setHeight(a-r+l+d),t++}for(let n=t;n0?this.domNode.setDisplay("block"):this.domNode.setDisplay("none"),this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1}_layoutBoxInViewport(e,t,i,n){const s=e.top,r=s,a=e.top+e.height,l=n.viewportHeight-a,c=s-i,d=r>=i,h=a,u=l>=i;let f=e.left;return f+t>n.scrollLeft+n.viewportWidth&&(f=n.scrollLeft+n.viewportWidth-t),fl){const u=h-(l-n);h-=u,i-=u}if(h=p,C=h+i<=u.height-_;return this._fixedOverflowWidgets?{fitsAbove:b,aboveTop:Math.max(d,p),fitsBelow:C,belowTop:h,left:g}:{fitsAbove:b,aboveTop:s,fitsBelow:C,belowTop:r,left:f}}_prepareRenderWidgetAtExactPositionOverflowing(e){return new ym(e.top,e.left+this._contentLeft)}_getAnchorsCoordinates(e){const t=s(this._primaryAnchor.viewPosition,this._affinity,this._lineHeight),i=this._secondaryAnchor.viewPosition?.lineNumber===this._primaryAnchor.viewPosition?.lineNumber?this._secondaryAnchor.viewPosition:null,n=s(i,this._affinity,this._lineHeight);return{primary:t,secondary:n};function s(r,a,l){if(!r)return null;const c=e.visibleRangeForPosition(r);if(!c)return null;const d=r.column===1&&a===3?0:c.left,h=e.getVerticalOffsetForLineNumber(r.lineNumber)-e.scrollTop;return new AO(h,d,l)}}_reduceAnchorCoordinates(e,t,i){if(!t)return e;const n=this._context.configuration.options.get(50);let s=t.left;return se.endLineNumber||this.domNode.setMaxWidth(this._maxWidth)}prepareRender(e){this._renderData=this._prepareRenderWidget(e)}render(e){if(!this._renderData||this._renderData.kind==="offViewport"){this._isVisible&&(this.domNode.removeAttribute("monaco-visible-content-widget"),this._isVisible=!1,this._renderData?.kind==="offViewport"&&this._renderData.preserveFocus?this.domNode.setTop(-1e3):this.domNode.setVisibility("hidden")),typeof this._actual.afterRender=="function"&&nL(this._actual.afterRender,this._actual,null);return}this.allowEditorOverflow?(this.domNode.setTop(this._renderData.coordinate.top),this.domNode.setLeft(this._renderData.coordinate.left)):(this.domNode.setTop(this._renderData.coordinate.top+e.scrollTop-e.bigNumbersDelta),this.domNode.setLeft(this._renderData.coordinate.left)),this._isVisible||(this.domNode.setVisibility("inherit"),this.domNode.setAttribute("monaco-visible-content-widget","true"),this._isVisible=!0),typeof this._actual.afterRender=="function"&&nL(this._actual.afterRender,this._actual,this._renderData.position)}}class wm{constructor(e,t){this.modelPosition=e,this.viewPosition=t}}class ym{constructor(e,t){this.top=e,this.left=t,this._coordinateBrand=void 0}}class AO{constructor(e,t,i){this.top=e,this.left=t,this.height=i,this._anchorCoordinateBrand=void 0}}function nL(o,e,...t){try{return o.call(e,...t)}catch{return null}}class D8 extends mu{constructor(e){super(),this._context=e;const t=this._context.configuration.options,i=t.get(146);this._renderLineHighlight=t.get(97),this._renderLineHighlightOnlyWhenFocus=t.get(98),this._wordWrap=i.isViewportWrapping,this._contentLeft=i.contentLeft,this._contentWidth=i.contentWidth,this._selectionIsEmpty=!0,this._focused=!1,this._cursorLineNumbers=[1],this._selections=[new Fe(1,1,1,1)],this._renderData=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}_readFromSelections(){let e=!1;const t=new Set;for(const s of this._selections)t.add(s.positionLineNumber);const i=Array.from(t);i.sort((s,r)=>s-r),li(this._cursorLineNumbers,i)||(this._cursorLineNumbers=i,e=!0);const n=this._selections.every(s=>s.isEmpty());return this._selectionIsEmpty!==n&&(this._selectionIsEmpty=n,e=!0),e}onThemeChanged(e){return this._readFromSelections()}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(146);return this._renderLineHighlight=t.get(97),this._renderLineHighlightOnlyWhenFocus=t.get(98),this._wordWrap=i.isViewportWrapping,this._contentLeft=i.contentLeft,this._contentWidth=i.contentWidth,!0}onCursorStateChanged(e){return this._selections=e.selections,this._readFromSelections()}onFlushed(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollWidthChanged||e.scrollTopChanged}onZonesChanged(e){return!0}onFocusChanged(e){return this._renderLineHighlightOnlyWhenFocus?(this._focused=e.isFocused,!0):!1}prepareRender(e){if(!this._shouldRenderThis()){this._renderData=null;return}const t=e.visibleRange.startLineNumber,i=e.visibleRange.endLineNumber,n=[];for(let r=t;r<=i;r++){const a=r-t;n[a]=""}if(this._wordWrap){const r=this._renderOne(e,!1);for(const a of this._cursorLineNumbers){const l=this._context.viewModel.coordinatesConverter,c=l.convertViewPositionToModelPosition(new P(a,1)).lineNumber,d=l.convertModelPositionToViewPosition(new P(c,1)).lineNumber,h=l.convertModelPositionToViewPosition(new P(c,this._context.viewModel.model.getLineMaxColumn(c))).lineNumber,u=Math.max(d,t),f=Math.min(h,i);for(let g=u;g<=f;g++){const p=g-t;n[p]=r}}}const s=this._renderOne(e,!0);for(const r of this._cursorLineNumbers){if(ri)continue;const a=r-t;n[a]=s}this._renderData=n}render(e,t){if(!this._renderData)return"";const i=t-e;return i>=this._renderData.length?"":this._renderData[i]}_shouldRenderInMargin(){return(this._renderLineHighlight==="gutter"||this._renderLineHighlight==="all")&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}_shouldRenderInContent(){return(this._renderLineHighlight==="line"||this._renderLineHighlight==="all")&&this._selectionIsEmpty&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}}class Gne extends D8{_renderOne(e,t){return`
    `}_shouldRenderThis(){return this._shouldRenderInContent()}_shouldRenderOther(){return this._shouldRenderInMargin()}}class Zne extends D8{_renderOne(e,t){return`
    `}_shouldRenderThis(){return!0}_shouldRenderOther(){return this._shouldRenderInContent()}}Sr((o,e)=>{const t=o.getColor(z7);if(t&&(e.addRule(`.monaco-editor .view-overlays .current-line { background-color: ${t}; }`),e.addRule(`.monaco-editor .margin-view-overlays .current-line-margin { background-color: ${t}; border: none; }`)),!t||t.isTransparent()||o.defines(vP)){const i=o.getColor(vP);i&&(e.addRule(`.monaco-editor .view-overlays .current-line-exact { border: 2px solid ${i}; }`),e.addRule(`.monaco-editor .margin-view-overlays .current-line-exact-margin { border: 2px solid ${i}; }`),mc(o.type)&&(e.addRule(".monaco-editor .view-overlays .current-line-exact { border-width: 1px; }"),e.addRule(".monaco-editor .margin-view-overlays .current-line-exact-margin { border-width: 1px; }")))}});class Yne extends mu{constructor(e){super(),this._context=e;const t=this._context.configuration.options;this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged||e.scrollWidthChanged}onZonesChanged(e){return!0}prepareRender(e){const t=e.getDecorationsInViewport();let i=[],n=0;for(let l=0,c=t.length;l{if(l.options.zIndexc.options.zIndex)return 1;const d=l.options.className,h=c.options.className;return dh?1:I.compareRangesUsingStarts(l.range,c.range)});const s=e.visibleRange.startLineNumber,r=e.visibleRange.endLineNumber,a=[];for(let l=s;l<=r;l++){const c=l-s;a[c]=""}this._renderWholeLineDecorations(e,i,a),this._renderNormalDecorations(e,i,a),this._renderResult=a}_renderWholeLineDecorations(e,t,i){const n=e.visibleRange.startLineNumber,s=e.visibleRange.endLineNumber;for(let r=0,a=t.length;r',d=Math.max(l.range.startLineNumber,n),h=Math.min(l.range.endLineNumber,s);for(let u=d;u<=h;u++){const f=u-n;i[f]+=c}}}_renderNormalDecorations(e,t,i){const n=e.visibleRange.startLineNumber;let s=null,r=!1,a=null,l=!1;for(let c=0,d=t.length;c';a[u]+=b}}}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}class Qne extends _s{constructor(e,t,i,n){super(e);const s=this._context.configuration.options,r=s.get(104),a=s.get(75),l=s.get(40),c=s.get(107),d={listenOnDomNode:i.domNode,className:"editor-scrollable "+gk(e.theme.type),useShadows:!1,lazyRender:!0,vertical:r.vertical,horizontal:r.horizontal,verticalHasArrows:r.verticalHasArrows,horizontalHasArrows:r.horizontalHasArrows,verticalScrollbarSize:r.verticalScrollbarSize,verticalSliderSize:r.verticalSliderSize,horizontalScrollbarSize:r.horizontalScrollbarSize,horizontalSliderSize:r.horizontalSliderSize,handleMouseWheel:r.handleMouseWheel,alwaysConsumeMouseWheel:r.alwaysConsumeMouseWheel,arrowSize:r.arrowSize,mouseWheelScrollSensitivity:a,fastScrollSensitivity:l,scrollPredominantAxis:c,scrollByPage:r.scrollByPage};this.scrollbar=this._register(new X0(t.domNode,d,this._context.viewLayout.getScrollable())),vr.write(this.scrollbar.getDomNode(),6),this.scrollbarDomNode=ot(this.scrollbar.getDomNode()),this.scrollbarDomNode.setPosition("absolute"),this._setLayout();const h=(u,f,g)=>{const p={};{const _=u.scrollTop;_&&(p.scrollTop=this._context.viewLayout.getCurrentScrollTop()+_,u.scrollTop=0)}if(g){const _=u.scrollLeft;_&&(p.scrollLeft=this._context.viewLayout.getCurrentScrollLeft()+_,u.scrollLeft=0)}this._context.viewModel.viewLayout.setScrollPosition(p,1)};this._register(U(i.domNode,"scroll",u=>h(i.domNode,!0,!0))),this._register(U(t.domNode,"scroll",u=>h(t.domNode,!0,!1))),this._register(U(n.domNode,"scroll",u=>h(n.domNode,!0,!1))),this._register(U(this.scrollbarDomNode.domNode,"scroll",u=>h(this.scrollbarDomNode.domNode,!0,!1)))}dispose(){super.dispose()}_setLayout(){const e=this._context.configuration.options,t=e.get(146);this.scrollbarDomNode.setLeft(t.contentLeft),e.get(73).side==="right"?this.scrollbarDomNode.setWidth(t.contentWidth+t.minimap.minimapWidth):this.scrollbarDomNode.setWidth(t.contentWidth),this.scrollbarDomNode.setHeight(t.height)}getOverviewRulerLayoutInfo(){return this.scrollbar.getOverviewRulerLayoutInfo()}getDomNode(){return this.scrollbarDomNode}delegateVerticalScrollbarPointerDown(e){this.scrollbar.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){this.scrollbar.delegateScrollFromMouseWheelEvent(e)}onConfigurationChanged(e){if(e.hasChanged(104)||e.hasChanged(75)||e.hasChanged(40)){const t=this._context.configuration.options,i=t.get(104),n=t.get(75),s=t.get(40),r=t.get(107),a={vertical:i.vertical,horizontal:i.horizontal,verticalScrollbarSize:i.verticalScrollbarSize,horizontalScrollbarSize:i.horizontalScrollbarSize,scrollByPage:i.scrollByPage,handleMouseWheel:i.handleMouseWheel,mouseWheelScrollSensitivity:n,fastScrollSensitivity:s,scrollPredominantAxis:r};this.scrollbar.updateOptions(a)}return e.hasChanged(146)&&this._setLayout(),!0}onScrollChanged(e){return!0}onThemeChanged(e){return this.scrollbar.updateClassName("editor-scrollable "+gk(this._context.theme.type)),!0}prepareRender(e){}render(e){this.scrollbar.renderNow()}}class EI{constructor(e,t,i,n,s){this.startLineNumber=e,this.endLineNumber=t,this.className=i,this.tooltip=n,this._decorationToRenderBrand=void 0,this.zIndex=s??0}}class Xne{constructor(e,t,i){this.className=e,this.zIndex=t,this.tooltip=i}}class Jne{constructor(){this.decorations=[]}add(e){this.decorations.push(e)}getDecorations(){return this.decorations}}class I8 extends mu{_render(e,t,i){const n=[];for(let a=e;a<=t;a++){const l=a-e;n[l]=new Jne}if(i.length===0)return n;i.sort((a,l)=>a.className===l.className?a.startLineNumber===l.startLineNumber?a.endLineNumber-l.endLineNumber:a.startLineNumber-l.startLineNumber:a.classNamen)continue;const c=Math.max(a,i),d=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new P(c,0)),h=this._context.viewModel.glyphLanes.getLanesAtLine(d.lineNumber).indexOf(s.preference.lane);t.push(new ise(c,h,s.preference.zIndex,s))}}_collectSortedGlyphRenderRequests(e){const t=[];return this._collectDecorationBasedGlyphRenderRequest(e,t),this._collectWidgetBasedGlyphRenderRequest(e,t),t.sort((i,n)=>i.lineNumber===n.lineNumber?i.laneIndex===n.laneIndex?i.zIndex===n.zIndex?n.type===i.type?i.type===0&&n.type===0?i.className0;){const n=t.peek();if(!n)break;const s=t.takeWhile(a=>a.lineNumber===n.lineNumber&&a.laneIndex===n.laneIndex);if(!s||s.length===0)break;const r=s[0];if(r.type===0){const a=[];for(const l of s){if(l.zIndex!==r.zIndex||l.type!==r.type)break;(a.length===0||a[a.length-1]!==l.className)&&a.push(l.className)}i.push(r.accept(a.join(" ")))}else r.widget.renderInfo={lineNumber:r.lineNumber,laneIndex:r.laneIndex}}this._decorationGlyphsToRender=i}render(e){if(!this._glyphMargin){for(const i of Object.values(this._widgets))i.domNode.setDisplay("none");for(;this._managedDomNodes.length>0;)this._managedDomNodes.pop()?.domNode.remove();return}const t=Math.round(this._glyphMarginWidth/this._glyphMarginDecorationLaneCount);for(const i of Object.values(this._widgets))if(!i.renderInfo)i.domNode.setDisplay("none");else{const n=e.viewportData.relativeVerticalOffset[i.renderInfo.lineNumber-e.viewportData.startLineNumber],s=this._glyphMarginLeft+i.renderInfo.laneIndex*this._lineHeight;i.domNode.setDisplay("block"),i.domNode.setTop(n),i.domNode.setLeft(s),i.domNode.setWidth(t),i.domNode.setHeight(this._lineHeight)}for(let i=0;ithis._decorationGlyphsToRender.length;)this._managedDomNodes.pop()?.domNode.remove()}}class tse{constructor(e,t,i,n){this.lineNumber=e,this.laneIndex=t,this.zIndex=i,this.className=n,this.type=0}accept(e){return new nse(this.lineNumber,this.laneIndex,e)}}class ise{constructor(e,t,i,n){this.lineNumber=e,this.laneIndex=t,this.zIndex=i,this.widget=n,this.type=1}}class nse{constructor(e,t,i){this.lineNumber=e,this.laneIndex=t,this.combinedClassName=i}}class sse extends mu{constructor(e){super(),this._context=e,this._primaryPosition=null;const t=this._context.configuration.options,i=t.get(147),n=t.get(50);this._spaceWidth=n.spaceWidth,this._maxIndentLeft=i.wrappingColumn===-1?-1:i.wrappingColumn*n.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=t.get(16),this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(147),n=t.get(50);return this._spaceWidth=n.spaceWidth,this._maxIndentLeft=i.wrappingColumn===-1?-1:i.wrappingColumn*n.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=t.get(16),!0}onCursorStateChanged(e){const i=e.selections[0].getPosition();return this._primaryPosition?.equals(i)?!1:(this._primaryPosition=i,!0)}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}onLanguageConfigurationChanged(e){return!0}prepareRender(e){if(!this._bracketPairGuideOptions.indentation&&this._bracketPairGuideOptions.bracketPairs===!1){this._renderResult=null;return}const t=e.visibleRange.startLineNumber,i=e.visibleRange.endLineNumber,n=e.scrollWidth,s=this._primaryPosition,r=this.getGuidesByLine(t,Math.min(i+1,this._context.viewModel.getLineCount()),s),a=[];for(let l=t;l<=i;l++){const c=l-t,d=r[c];let h="";const u=e.visibleRangeForPosition(new P(l,1))?.left??0;for(const f of d){const g=f.column===-1?u+(f.visibleColumn-1)*this._spaceWidth:e.visibleRangeForPosition(new P(l,f.column)).left;if(g>n||this._maxIndentLeft>0&&g>this._maxIndentLeft)break;const p=f.horizontalLine?f.horizontalLine.top?"horizontal-top":"horizontal-bottom":"vertical",_=f.horizontalLine?(e.visibleRangeForPosition(new P(l,f.horizontalLine.endColumn))?.left??g+this._spaceWidth)-g:this._spaceWidth;h+=`
    `}a[c]=h}this._renderResult=a}getGuidesByLine(e,t,i){const n=this._bracketPairGuideOptions.bracketPairs!==!1?this._context.viewModel.getBracketGuidesInRangeByLine(e,t,i,{highlightActive:this._bracketPairGuideOptions.highlightActiveBracketPair,horizontalGuides:this._bracketPairGuideOptions.bracketPairsHorizontal===!0?eh.Enabled:this._bracketPairGuideOptions.bracketPairsHorizontal==="active"?eh.EnabledForActive:eh.Disabled,includeInactive:this._bracketPairGuideOptions.bracketPairs===!0}):null,s=this._bracketPairGuideOptions.indentation?this._context.viewModel.getLinesIndentGuides(e,t):null;let r=0,a=0,l=0;if(this._bracketPairGuideOptions.highlightActiveIndentation!==!1&&i){const h=this._context.viewModel.getActiveIndentGuide(i.lineNumber,e,t);r=h.startLineNumber,a=h.endLineNumber,l=h.indent}const{indentSize:c}=this._context.viewModel.model.getOptions(),d=[];for(let h=e;h<=t;h++){const u=new Array;d.push(u);const f=n?n[h-e]:[],g=new Ll(f),p=s?s[h-e]:0;for(let _=1;_<=p;_++){const b=(_-1)*c+1,C=(this._bracketPairGuideOptions.highlightActiveIndentation==="always"||f.length===0)&&r<=h&&h<=a&&_===l;u.push(...g.takeWhile(v=>v.visibleColumn!0)||[])}return d}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}function Pu(o){if(!(o&&o.isTransparent()))return o}Sr((o,e)=>{const t=[{bracketColor:K7,guideColor:pQ,guideColorActive:yQ},{bracketColor:j7,guideColor:_Q,guideColorActive:SQ},{bracketColor:q7,guideColor:bQ,guideColorActive:LQ},{bracketColor:G7,guideColor:CQ,guideColorActive:xQ},{bracketColor:Z7,guideColor:vQ,guideColorActive:kQ},{bracketColor:Y7,guideColor:wQ,guideColorActive:DQ}],i=new c9,n=[{indentColor:tb,indentColorActive:ib},{indentColor:YY,indentColorActive:tQ},{indentColor:QY,indentColorActive:iQ},{indentColor:XY,indentColorActive:nQ},{indentColor:JY,indentColorActive:sQ},{indentColor:eQ,indentColorActive:oQ}],s=t.map(a=>{const l=o.getColor(a.bracketColor),c=o.getColor(a.guideColor),d=o.getColor(a.guideColorActive),h=Pu(Pu(c)??l?.transparent(.3)),u=Pu(Pu(d)??l);if(!(!h||!u))return{guideColor:h,guideColorActive:u}}).filter(_l),r=n.map(a=>{const l=o.getColor(a.indentColor),c=o.getColor(a.indentColorActive),d=Pu(l),h=Pu(c);if(!(!d||!h))return{indentColor:d,indentColorActive:h}}).filter(_l);if(s.length>0){for(let a=0;a<30;a++){const l=s[a%s.length];e.addRule(`.monaco-editor .${i.getInlineClassNameOfLevel(a).replace(/ /g,".")} { --guide-color: ${l.guideColor}; --guide-color-active: ${l.guideColorActive}; }`)}e.addRule(".monaco-editor .vertical { box-shadow: 1px 0 0 0 var(--guide-color) inset; }"),e.addRule(".monaco-editor .horizontal-top { border-top: 1px solid var(--guide-color); }"),e.addRule(".monaco-editor .horizontal-bottom { border-bottom: 1px solid var(--guide-color); }"),e.addRule(`.monaco-editor .vertical.${i.activeClassName} { box-shadow: 1px 0 0 0 var(--guide-color-active) inset; }`),e.addRule(`.monaco-editor .horizontal-top.${i.activeClassName} { border-top: 1px solid var(--guide-color-active); }`),e.addRule(`.monaco-editor .horizontal-bottom.${i.activeClassName} { border-bottom: 1px solid var(--guide-color-active); }`)}if(r.length>0){for(let a=0;a<30;a++){const l=r[a%r.length];e.addRule(`.monaco-editor .lines-content .core-guide-indent.lvl-${a} { --indent-color: ${l.indentColor}; --indent-color-active: ${l.indentColorActive}; }`)}e.addRule(".monaco-editor .lines-content .core-guide-indent { box-shadow: 1px 0 0 0 var(--indent-color) inset; }"),e.addRule(".monaco-editor .lines-content .core-guide-indent.indent-active { box-shadow: 1px 0 0 0 var(--indent-color-active) inset; }")}});class sL{get didDomLayout(){return this._didDomLayout}readClientRect(){if(!this._clientRectRead){this._clientRectRead=!0;const e=this._domNode.getBoundingClientRect();this.markDidDomLayout(),this._clientRectDeltaLeft=e.left,this._clientRectScale=e.width/this._domNode.offsetWidth}}get clientRectDeltaLeft(){return this._clientRectRead||this.readClientRect(),this._clientRectDeltaLeft}get clientRectScale(){return this._clientRectRead||this.readClientRect(),this._clientRectScale}constructor(e,t){this._domNode=e,this.endNode=t,this._didDomLayout=!1,this._clientRectDeltaLeft=0,this._clientRectScale=1,this._clientRectRead=!1}markDidDomLayout(){this._didDomLayout=!0}}class ose{constructor(){this._currentVisibleRange=new I(1,1,1,1)}getCurrentVisibleRange(){return this._currentVisibleRange}setCurrentVisibleRange(e){this._currentVisibleRange=e}}class rse{constructor(e,t,i,n,s,r,a){this.minimalReveal=e,this.lineNumber=t,this.startColumn=i,this.endColumn=n,this.startScrollTop=s,this.stopScrollTop=r,this.scrollType=a,this.type="range",this.minLineNumber=t,this.maxLineNumber=t}}class ase{constructor(e,t,i,n,s){this.minimalReveal=e,this.selections=t,this.startScrollTop=i,this.stopScrollTop=n,this.scrollType=s,this.type="selections";let r=t[0].startLineNumber,a=t[0].endLineNumber;for(let l=1,c=t.length;lnew sl(this._viewLineOptions)}),this.domNode=this._visibleLines.domNode,vr.write(this.domNode,8),this.domNode.setClassName(`view-lines ${Zf}`),qi(this.domNode,s),this._maxLineWidth=0,this._asyncUpdateLineWidths=new ci(()=>{this._updateLineWidthsSlow()},200),this._asyncCheckMonospaceFontAssumptions=new ci(()=>{this._checkMonospaceFontAssumptions()},2e3),this._lastRenderedData=new ose,this._horizontalRevealRequest=null,this._stickyScrollEnabled=n.get(116).enabled,this._maxNumberStickyLines=n.get(116).maxLineCount}dispose(){this._asyncUpdateLineWidths.dispose(),this._asyncCheckMonospaceFontAssumptions.dispose(),super.dispose()}getDomNode(){return this.domNode}onConfigurationChanged(e){this._visibleLines.onConfigurationChanged(e),e.hasChanged(147)&&(this._maxLineWidth=0);const t=this._context.configuration.options,i=t.get(50),n=t.get(147);return this._lineHeight=t.get(67),this._typicalHalfwidthCharacterWidth=i.typicalHalfwidthCharacterWidth,this._isViewportWrapping=n.isViewportWrapping,this._revealHorizontalRightPadding=t.get(101),this._cursorSurroundingLines=t.get(29),this._cursorSurroundingLinesStyle=t.get(30),this._canUseLayerHinting=!t.get(32),this._stickyScrollEnabled=t.get(116).enabled,this._maxNumberStickyLines=t.get(116).maxLineCount,qi(this.domNode,i),this._onOptionsMaybeChanged(),e.hasChanged(146)&&(this._maxLineWidth=0),!0}_onOptionsMaybeChanged(){const e=this._context.configuration,t=new xO(e,this._context.theme.type);if(!this._viewLineOptions.equals(t)){this._viewLineOptions=t;const i=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();for(let s=i;s<=n;s++)this._visibleLines.getVisibleLine(s).onOptionsChanged(this._viewLineOptions);return!0}return!1}onCursorStateChanged(e){const t=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber();let n=!1;for(let s=t;s<=i;s++)n=this._visibleLines.getVisibleLine(s).onSelectionChanged()||n;return n}onDecorationsChanged(e){{const t=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber();for(let n=t;n<=i;n++)this._visibleLines.getVisibleLine(n).onDecorationsChanged()}return!0}onFlushed(e){const t=this._visibleLines.onFlushed(e);return this._maxLineWidth=0,t}onLinesChanged(e){return this._visibleLines.onLinesChanged(e)}onLinesDeleted(e){return this._visibleLines.onLinesDeleted(e)}onLinesInserted(e){return this._visibleLines.onLinesInserted(e)}onRevealRangeRequest(e){const t=this._computeScrollTopToRevealRange(this._context.viewLayout.getFutureViewport(),e.source,e.minimalReveal,e.range,e.selections,e.verticalType);if(t===-1)return!1;let i=this._context.viewLayout.validateScrollPosition({scrollTop:t});e.revealHorizontal?e.range&&e.range.startLineNumber!==e.range.endLineNumber?i={scrollTop:i.scrollTop,scrollLeft:0}:e.range?this._horizontalRevealRequest=new rse(e.minimalReveal,e.range.startLineNumber,e.range.startColumn,e.range.endColumn,this._context.viewLayout.getCurrentScrollTop(),i.scrollTop,e.scrollType):e.selections&&e.selections.length>0&&(this._horizontalRevealRequest=new ase(e.minimalReveal,e.selections,this._context.viewLayout.getCurrentScrollTop(),i.scrollTop,e.scrollType)):this._horizontalRevealRequest=null;const s=Math.abs(this._context.viewLayout.getCurrentScrollTop()-i.scrollTop)<=this._lineHeight?1:e.scrollType;return this._context.viewModel.viewLayout.setScrollPosition(i,s),!0}onScrollChanged(e){if(this._horizontalRevealRequest&&e.scrollLeftChanged&&(this._horizontalRevealRequest=null),this._horizontalRevealRequest&&e.scrollTopChanged){const t=Math.min(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop),i=Math.max(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop);(e.scrollTopi)&&(this._horizontalRevealRequest=null)}return this.domNode.setWidth(e.scrollWidth),this._visibleLines.onScrollChanged(e)||!0}onTokensChanged(e){return this._visibleLines.onTokensChanged(e)}onZonesChanged(e){return this._context.viewModel.viewLayout.setMaxLineWidth(this._maxLineWidth),this._visibleLines.onZonesChanged(e)}onThemeChanged(e){return this._onOptionsMaybeChanged()}getPositionFromDOMInfo(e,t){const i=this._getViewLineDomNode(e);if(i===null)return null;const n=this._getLineNumberFor(i);if(n===-1||n<1||n>this._context.viewModel.getLineCount())return null;if(this._context.viewModel.getLineMaxColumn(n)===1)return new P(n,1);const s=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();if(nr)return null;let a=this._visibleLines.getVisibleLine(n).getColumnOfNodeOffset(e,t);const l=this._context.viewModel.getLineMinColumn(n);return ai)return-1;const n=new sL(this.domNode.domNode,this._textRangeRestingSpot),s=this._visibleLines.getVisibleLine(e).getWidth(n);return this._updateLineWidthsSlowIfDomDidLayout(n),s}linesVisibleRangesForRange(e,t){if(this.shouldRender())return null;const i=e.endLineNumber,n=I.intersectRanges(e,this._lastRenderedData.getCurrentVisibleRange());if(!n)return null;const s=[];let r=0;const a=new sL(this.domNode.domNode,this._textRangeRestingSpot);let l=0;t&&(l=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new P(n.startLineNumber,1)).lineNumber);const c=this._visibleLines.getStartLineNumber(),d=this._visibleLines.getEndLineNumber();for(let h=n.startLineNumber;h<=n.endLineNumber;h++){if(hd)continue;const u=h===n.startLineNumber?n.startColumn:1,f=h!==n.endLineNumber,g=f?this._context.viewModel.getLineMaxColumn(h):n.endColumn,p=this._visibleLines.getVisibleLine(h).getVisibleRangesForRange(h,u,g,a);if(p){if(t&&hthis._visibleLines.getEndLineNumber())return null;const n=new sL(this.domNode.domNode,this._textRangeRestingSpot),s=this._visibleLines.getVisibleLine(e).getVisibleRangesForRange(e,t,i,n);return this._updateLineWidthsSlowIfDomDidLayout(n),s}visibleRangeForPosition(e){const t=this._visibleRangesForLineRange(e.lineNumber,e.column,e.column);return t?new Kie(t.outsideRenderedLine,t.ranges[0].left):null}_updateLineWidthsFast(){return this._updateLineWidths(!0)}_updateLineWidthsSlow(){this._updateLineWidths(!1)}_updateLineWidthsSlowIfDomDidLayout(e){e.didDomLayout&&(this._asyncUpdateLineWidths.isScheduled()||(this._asyncUpdateLineWidths.cancel(),this._updateLineWidthsSlow()))}_updateLineWidths(e){const t=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber();let n=1,s=!0;for(let r=t;r<=i;r++){const a=this._visibleLines.getVisibleLine(r);if(e&&!a.getWidthIsFast()){s=!1;continue}n=Math.max(n,a.getWidth(null))}return s&&t===1&&i===this._context.viewModel.getLineCount()&&(this._maxLineWidth=0),this._ensureMaxLineWidth(n),s}_checkMonospaceFontAssumptions(){let e=-1,t=-1;const i=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();for(let s=i;s<=n;s++){const r=this._visibleLines.getVisibleLine(s);if(r.needsMonospaceFontCheck()){const a=r.getWidth(null);a>t&&(t=a,e=s)}}if(e!==-1&&!this._visibleLines.getVisibleLine(e).monospaceAssumptionsAreValid())for(let s=i;s<=n;s++)this._visibleLines.getVisibleLine(s).onMonospaceAssumptionsInvalidated()}prepareRender(){throw new Error("Not supported")}render(){throw new Error("Not supported")}renderText(e){if(this._visibleLines.renderLines(e),this._lastRenderedData.setCurrentVisibleRange(e.visibleRange),this.domNode.setWidth(this._context.viewLayout.getScrollWidth()),this.domNode.setHeight(Math.min(this._context.viewLayout.getScrollHeight(),1e6)),this._horizontalRevealRequest){const i=this._horizontalRevealRequest;if(e.startLineNumber<=i.minLineNumber&&i.maxLineNumber<=e.endLineNumber){this._horizontalRevealRequest=null,this.onDidRender();const n=this._computeScrollLeftToReveal(i);n&&(this._isViewportWrapping||this._ensureMaxLineWidth(n.maxHorizontalOffset),this._context.viewModel.viewLayout.setScrollPosition({scrollLeft:n.scrollLeft},i.scrollType))}}if(this._updateLineWidthsFast()?this._asyncUpdateLineWidths.cancel():this._asyncUpdateLineWidths.schedule(),Un&&!this._asyncCheckMonospaceFontAssumptions.isScheduled()){const i=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();for(let s=i;s<=n;s++)if(this._visibleLines.getVisibleLine(s).needsMonospaceFontCheck()){this._asyncCheckMonospaceFontAssumptions.schedule();break}}this._linesContent.setLayerHinting(this._canUseLayerHinting),this._linesContent.setContain("strict");const t=this._context.viewLayout.getCurrentScrollTop()-e.bigNumbersDelta;this._linesContent.setTop(-t),this._linesContent.setLeft(-this._context.viewLayout.getCurrentScrollLeft())}_ensureMaxLineWidth(e){const t=Math.ceil(e);this._maxLineWidth0){let b=s[0].startLineNumber,C=s[0].endLineNumber;for(let w=1,v=s.length;wl){if(!d)return-1;_=h}else if(r===5||r===6)if(r===6&&a<=h&&u<=c)_=a;else{const b=Math.max(5*this._lineHeight,l*.2),C=h-b,w=u-l;_=Math.max(w,C)}else if(r===1||r===2)if(r===2&&a<=h&&u<=c)_=a;else{const b=(h+u)/2;_=Math.max(0,b-l/2)}else _=this._computeMinimumScrolling(a,c,h,u,r===3,r===4);return _}_computeScrollLeftToReveal(e){const t=this._context.viewLayout.getCurrentViewport(),i=this._context.configuration.options.get(146),n=t.left,s=n+t.width-i.verticalScrollbarWidth;let r=1073741824,a=0;if(e.type==="range"){const c=this._visibleRangesForLineRange(e.lineNumber,e.startColumn,e.endColumn);if(!c)return null;for(const d of c.ranges)r=Math.min(r,Math.round(d.left)),a=Math.max(a,Math.round(d.left+d.width))}else for(const c of e.selections){if(c.startLineNumber!==c.endLineNumber)return null;const d=this._visibleRangesForLineRange(c.startLineNumber,c.startColumn,c.endColumn);if(!d)return null;for(const h of d.ranges)r=Math.min(r,Math.round(h.left)),a=Math.max(a,Math.round(h.left+h.width))}return e.minimalReveal||(r=Math.max(0,r-t0.HORIZONTAL_EXTRA_PX),a+=this._revealHorizontalRightPadding),e.type==="selections"&&a-r>t.width?null:{scrollLeft:this._computeMinimumScrolling(n,s,r,a),maxHorizontalOffset:a}}_computeMinimumScrolling(e,t,i,n,s,r){e=e|0,t=t|0,i=i|0,n=n|0,s=!!s,r=!!r;const a=t-e;if(n-it)return Math.max(0,n-a)}else return i;return e}};t0.HORIZONTAL_EXTRA_PX=30;let NI=t0;class lse extends I8{constructor(e){super(),this._context=e;const i=this._context.configuration.options.get(146);this._decorationsLeft=i.decorationsLeft,this._decorationsWidth=i.decorationsWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const i=this._context.configuration.options.get(146);return this._decorationsLeft=i.decorationsLeft,this._decorationsWidth=i.decorationsWidth,!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}_getDecorations(e){const t=e.getDecorationsInViewport(),i=[];let n=0;for(let s=0,r=t.length;s',l=[];for(let c=t;c<=i;c++){const d=c-t,h=n[d].getDecorations();let u="";for(const f of h){let g='
    ';s[a]=c}this._renderResult=s}render(e,t){return this._renderResult?this._renderResult[t-e]:""}}const Yl=class Yl{constructor(e,t,i,n){this._rgba8Brand=void 0,this.r=Yl._clamp(e),this.g=Yl._clamp(t),this.b=Yl._clamp(i),this.a=Yl._clamp(n)}equals(e){return this.r===e.r&&this.g===e.g&&this.b===e.b&&this.a===e.a}static _clamp(e){return e<0?0:e>255?255:e|0}};Yl.Empty=new Yl(0,0,0,0);let Sl=Yl;const i0=class i0 extends z{static getInstance(){return this._INSTANCE||(this._INSTANCE=new i0),this._INSTANCE}constructor(){super(),this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._updateColorMap(),this._register(si.onDidChange(e=>{e.changedColorMap&&this._updateColorMap()}))}_updateColorMap(){const e=si.getColorMap();if(!e){this._colors=[Sl.Empty],this._backgroundIsLight=!0;return}this._colors=[Sl.Empty];for(let i=1;i=.5,this._onDidChange.fire(void 0)}getColor(e){return(e<1||e>=this._colors.length)&&(e=2),this._colors[e]}backgroundIsLight(){return this._backgroundIsLight}};i0._INSTANCE=null;let Pv=i0;const dse=(()=>{const o=[];for(let e=32;e<=126;e++)o.push(e);return o.push(65533),o})(),hse=(o,e)=>(o-=32,o<0||o>96?e<=2?(o+96)%96:95:o);class k_{constructor(e,t){this.scale=t,this._minimapCharRendererBrand=void 0,this.charDataNormal=k_.soften(e,12/15),this.charDataLight=k_.soften(e,50/60)}static soften(e,t){const i=new Uint8ClampedArray(e.length);for(let n=0,s=e.length;ne.width||i+g>e.height){console.warn("bad render request outside image data");return}const p=d?this.charDataLight:this.charDataNormal,_=hse(n,c),b=e.width*4,C=a.r,w=a.g,v=a.b,y=s.r-C,x=s.g-w,L=s.b-v,E=Math.max(r,l),N=e.data;let H=_*u*f,F=i*b+t*4;for(let W=0;We.width||i+h>e.height){console.warn("bad render request outside image data");return}const u=e.width*4,f=.5*(s/255),g=r.r,p=r.g,_=r.b,b=n.r-g,C=n.g-p,w=n.b-_,v=g+b*f,y=p+C*f,x=_+w*f,L=Math.max(s,a),E=e.data;let N=i*u+t*4;for(let H=0;H{const e=new Uint8ClampedArray(o.length/2);for(let t=0;t>1]=PO[o[t]]<<4|PO[o[t+1]]&15;return e},FO={1:ng(()=>OO("0000511D6300CF609C709645A78432005642574171487021003C451900274D35D762755E8B629C5BA856AF57BA649530C167D1512A272A3F6038604460398526BCA2A968DB6F8957C768BE5FBE2FB467CF5D8D5B795DC7625B5DFF50DE64C466DB2FC47CD860A65E9A2EB96CB54CE06DA763AB2EA26860524D3763536601005116008177A8705E53AB738E6A982F88BAA35B5F5B626D9C636B449B737E5B7B678598869A662F6B5B8542706C704C80736A607578685B70594A49715A4522E792")),2:ng(()=>OO("000000000000000055394F383D2800008B8B1F210002000081B1CBCBCC820000847AAF6B9AAF2119BE08B8881AD60000A44FD07DCCF107015338130C00000000385972265F390B406E2437634B4B48031B12B8A0847000001E15B29A402F0000000000004B33460B00007A752C2A0000000000004D3900000084394B82013400ABA5CFC7AD9C0302A45A3E5A98AB000089A43382D97900008BA54AA087A70A0248A6A7AE6DBE0000BF6F94987EA40A01A06DCFA7A7A9030496C32F77891D0000A99FB1A0AFA80603B29AB9CA75930D010C0948354D3900000C0948354F37460D0028BE673D8400000000AF9D7B6E00002B007AA8933400007AA642675C2700007984CFB9C3985B768772A8A6B7B20000CAAECAAFC4B700009F94A6009F840009D09F9BA4CA9C0000CC8FC76DC87F0000C991C472A2000000A894A48CA7B501079BA2C9C69BA20000B19A5D3FA89000005CA6009DA2960901B0A7F0669FB200009D009E00B7890000DAD0F5D092820000D294D4C48BD10000B5A7A4A3B1A50402CAB6CBA6A2000000B5A7A4A3B1A8044FCDADD19D9CB00000B7778F7B8AAE0803C9AB5D3F5D3F00009EA09EA0BAB006039EA0989A8C7900009B9EF4D6B7C00000A9A7816CACA80000ABAC84705D3F000096DA635CDC8C00006F486F266F263D4784006124097B00374F6D2D6D2D6D4A3A95872322000000030000000000008D8939130000000000002E22A5C9CBC70600AB25C0B5C9B400061A2DB04CA67001082AA6BEBEBFC606002321DACBC19E03087AA08B6768380000282FBAC0B8CA7A88AD25BBA5A29900004C396C5894A6000040485A6E356E9442A32CD17EADA70000B4237923628600003E2DE9C1D7B500002F25BBA5A2990000231DB6AFB4A804023025C0B5CAB588062B2CBDBEC0C706882435A75CA20000002326BD6A82A908048B4B9A5A668000002423A09CB4BB060025259C9D8A7900001C1FCAB2C7C700002A2A9387ABA200002626A4A47D6E9D14333163A0C87500004B6F9C2D643A257049364936493647358A34438355497F1A0000A24C1D590000D38DFFBDD4CD3126"))};class gp{static create(e,t){if(this.lastCreated&&e===this.lastCreated.scale&&t===this.lastFontFamily)return this.lastCreated;let i;return FO[e]?i=new k_(FO[e](),e):i=gp.createFromSampleData(gp.createSampleData(t).data,e),this.lastFontFamily=t,this.lastCreated=i,i}static createSampleData(e){const t=document.createElement("canvas"),i=t.getContext("2d");t.style.height="16px",t.height=16,t.width=960,t.style.width="960px",i.fillStyle="#ffffff",i.font=`bold 16px ${e}`,i.textBaseline="middle";let n=0;for(const s of dse)i.fillText(String.fromCharCode(s),n,16/2),n+=10;return i.getImageData(0,0,960,16)}static createFromSampleData(e,t){if(e.length!==61440)throw new Error("Unexpected source in MinimapCharRenderer");const n=gp._downsample(e,t);return new k_(n,t)}static _downsampleChar(e,t,i,n,s){const r=1*s,a=2*s;let l=n,c=0;for(let d=0;d0){const c=255/l;for(let d=0;dgp.create(this.fontScale,l.fontFamily)),this.defaultBackgroundColor=i.getColor(2),this.backgroundColor=Yf._getMinimapBackground(t,this.defaultBackgroundColor),this.foregroundAlpha=Yf._getMinimapForegroundOpacity(t)}static _getMinimapBackground(e,t){const i=e.getColor(GK);return i?new Sl(i.rgba.r,i.rgba.g,i.rgba.b,Math.round(255*i.rgba.a)):t}static _getMinimapForegroundOpacity(e){const t=e.getColor(ZK);return t?Sl._clamp(Math.round(255*t.rgba.a)):255}static _getSectionHeaderColor(e,t){const i=e.getColor(Sa);return i?new Sl(i.rgba.r,i.rgba.g,i.rgba.b,Math.round(255*i.rgba.a)):t}equals(e){return this.renderMinimap===e.renderMinimap&&this.size===e.size&&this.minimapHeightIsEditorHeight===e.minimapHeightIsEditorHeight&&this.scrollBeyondLastLine===e.scrollBeyondLastLine&&this.paddingTop===e.paddingTop&&this.paddingBottom===e.paddingBottom&&this.showSlider===e.showSlider&&this.autohide===e.autohide&&this.pixelRatio===e.pixelRatio&&this.typicalHalfwidthCharacterWidth===e.typicalHalfwidthCharacterWidth&&this.lineHeight===e.lineHeight&&this.minimapLeft===e.minimapLeft&&this.minimapWidth===e.minimapWidth&&this.minimapHeight===e.minimapHeight&&this.canvasInnerWidth===e.canvasInnerWidth&&this.canvasInnerHeight===e.canvasInnerHeight&&this.canvasOuterWidth===e.canvasOuterWidth&&this.canvasOuterHeight===e.canvasOuterHeight&&this.isSampling===e.isSampling&&this.editorHeight===e.editorHeight&&this.fontScale===e.fontScale&&this.minimapLineHeight===e.minimapLineHeight&&this.minimapCharWidth===e.minimapCharWidth&&this.sectionHeaderFontSize===e.sectionHeaderFontSize&&this.sectionHeaderLetterSpacing===e.sectionHeaderLetterSpacing&&this.defaultBackgroundColor&&this.defaultBackgroundColor.equals(e.defaultBackgroundColor)&&this.backgroundColor&&this.backgroundColor.equals(e.backgroundColor)&&this.foregroundAlpha===e.foregroundAlpha}}class mp{constructor(e,t,i,n,s,r,a,l,c){this.scrollTop=e,this.scrollHeight=t,this.sliderNeeded=i,this._computedSliderRatio=n,this.sliderTop=s,this.sliderHeight=r,this.topPaddingLineCount=a,this.startLineNumber=l,this.endLineNumber=c}getDesiredScrollTopFromDelta(e){return Math.round(this.scrollTop+e/this._computedSliderRatio)}getDesiredScrollTopFromTouchLocation(e){return Math.round((e-this.sliderHeight/2)/this._computedSliderRatio)}intersectWithViewport(e){const t=Math.max(this.startLineNumber,e.startLineNumber),i=Math.min(this.endLineNumber,e.endLineNumber);return t>i?null:[t,i]}getYForLineNumber(e,t){return+(e-this.startLineNumber+this.topPaddingLineCount)*t}static create(e,t,i,n,s,r,a,l,c,d,h){const u=e.pixelRatio,f=e.minimapLineHeight,g=Math.floor(e.canvasInnerHeight/f),p=e.lineHeight;if(e.minimapHeightIsEditorHeight){let x=l*e.lineHeight+e.paddingTop+e.paddingBottom;e.scrollBeyondLastLine&&(x+=Math.max(0,s-e.lineHeight-e.paddingBottom));const L=Math.max(1,Math.floor(s*s/x)),E=Math.max(0,e.minimapHeight-L),N=E/(d-s),H=c*N,F=E>0,W=Math.floor(e.canvasInnerHeight/e.minimapLineHeight),j=Math.floor(e.paddingTop/e.lineHeight);return new mp(c,d,F,N,H,L,j,1,Math.min(a,W))}let _;if(r&&i!==a){const x=i-t+1;_=Math.floor(x*f/u)}else{const x=s/p;_=Math.floor(x*f/u)}const b=Math.floor(e.paddingTop/p);let C=Math.floor(e.paddingBottom/p);if(e.scrollBeyondLastLine){const x=s/p;C=Math.max(C,x-1)}let w;if(C>0){const x=s/p;w=(b+a+C-x-1)*f/u}else w=Math.max(0,(b+a)*f/u-_);w=Math.min(e.minimapHeight-_,w);const v=w/(d-s),y=c*v;if(g>=b+a+C){const x=w>0;return new mp(c,d,x,v,y,_,b,1,a)}else{let x;t>1?x=t+b:x=Math.max(1,c/p);let L,E=Math.max(1,Math.floor(x-y*u/f));Ec&&(E=Math.min(E,h.startLineNumber),L=Math.max(L,h.topPaddingLineCount)),h.scrollTop=e.paddingTop?F=(t-E+L+H)*f/u:F=c/e.paddingTop*(L+H)*f/u,new mp(c,d,!0,v,F,_,L,E,N)}}}const n0=class n0{constructor(e){this.dy=e}onContentChanged(){this.dy=-1}onTokensChanged(){this.dy=-1}};n0.INVALID=new n0(-1);let Ov=n0;class BO{constructor(e,t,i){this.renderedLayout=e,this._imageData=t,this._renderedLines=new L8({createLine:()=>Ov.INVALID}),this._renderedLines._set(e.startLineNumber,i)}linesEquals(e){if(!this.scrollEquals(e))return!1;const i=this._renderedLines._get().lines;for(let n=0,s=i.length;n1){for(let b=0,C=n-1;b0&&this.minimapLines[i-1]>=e;)i--;let n=this.modelLineToMinimapLine(t)-1;for(;n+1t)return null}return[i+1,n+1]}decorationLineRangeToMinimapLineRange(e,t){let i=this.modelLineToMinimapLine(e),n=this.modelLineToMinimapLine(t);return e!==t&&n===i&&(n===this.minimapLines.length?i>1&&i--:n++),[i,n]}onLinesDeleted(e){const t=e.toLineNumber-e.fromLineNumber+1;let i=this.minimapLines.length,n=0;for(let s=this.minimapLines.length-1;s>=0&&!(this.minimapLines[s]=0&&!(this.minimapLines[i]0,scrollWidth:e.scrollWidth,scrollHeight:e.scrollHeight,viewportStartLineNumber:t,viewportEndLineNumber:i,viewportStartLineNumberVerticalOffset:e.getVerticalOffsetForLineNumber(t),scrollTop:e.scrollTop,scrollLeft:e.scrollLeft,viewportWidth:e.viewportWidth,viewportHeight:e.viewportHeight};this._actual.render(n)}_recreateLineSampling(){this._minimapSelections=null;const e=!!this._samplingState,[t,i]=D_.compute(this.options,this._context.viewModel.getLineCount(),this._samplingState);if(this._samplingState=t,e&&this._samplingState)for(const n of i)switch(n.type){case"deleted":this._actual.onLinesDeleted(n.deleteFromLineNumber,n.deleteToLineNumber);break;case"inserted":this._actual.onLinesInserted(n.insertFromLineNumber,n.insertToLineNumber);break;case"flush":this._actual.onFlushed();break}}getLineCount(){return this._samplingState?this._samplingState.minimapLines.length:this._context.viewModel.getLineCount()}getRealLineCount(){return this._context.viewModel.getLineCount()}getLineContent(e){return this._samplingState?this._context.viewModel.getLineContent(this._samplingState.minimapLines[e-1]):this._context.viewModel.getLineContent(e)}getLineMaxColumn(e){return this._samplingState?this._context.viewModel.getLineMaxColumn(this._samplingState.minimapLines[e-1]):this._context.viewModel.getLineMaxColumn(e)}getMinimapLinesRenderingData(e,t,i){if(this._samplingState){const n=[];for(let s=0,r=t-e+1;s!n.options.minimap?.sectionHeaderStyle);if(this._samplingState){const n=[];for(const s of i){if(!s.options.minimap)continue;const r=s.range,a=this._samplingState.modelLineToMinimapLine(r.startLineNumber),l=this._samplingState.modelLineToMinimapLine(r.endLineNumber);n.push(new h8(new I(a,r.startColumn,l,r.endColumn),s.options))}return n}return i}getSectionHeaderDecorationsInViewport(e,t){const i=this.options.minimapLineHeight,s=this.options.sectionHeaderFontSize/i;return e=Math.floor(Math.max(1,e-s)),this._getMinimapDecorationsInViewport(e,t).filter(r=>!!r.options.minimap?.sectionHeaderStyle)}_getMinimapDecorationsInViewport(e,t){let i;if(this._samplingState){const n=this._samplingState.minimapLines[e-1],s=this._samplingState.minimapLines[t-1];i=new I(n,1,s,this._context.viewModel.getLineMaxColumn(s))}else i=new I(e,1,t,this._context.viewModel.getLineMaxColumn(t));return this._context.viewModel.getMinimapDecorationsInRange(i)}getSectionHeaderText(e,t){const i=e.options.minimap?.sectionHeaderText;if(!i)return null;const n=this._sectionHeaderCache.get(i);if(n)return n;const s=t(i);return this._sectionHeaderCache.set(i,s),s}getOptions(){return this._context.viewModel.model.getOptions()}revealLineNumber(e){this._samplingState&&(e=this._samplingState.minimapLines[e-1]),this._context.viewModel.revealRange("mouse",!1,new I(e,1,e,1),1,0)}setScrollTop(e){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:e},1)}}class uf extends z{constructor(e,t){super(),this._renderDecorations=!1,this._gestureInProgress=!1,this._theme=e,this._model=t,this._lastRenderData=null,this._buffers=null,this._selectionColor=this._theme.getColor(NA),this._domNode=ot(document.createElement("div")),vr.write(this._domNode,9),this._domNode.setClassName(this._getMinimapDomNodeClassName()),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._shadow=ot(document.createElement("div")),this._shadow.setClassName("minimap-shadow-hidden"),this._domNode.appendChild(this._shadow),this._canvas=ot(document.createElement("canvas")),this._canvas.setPosition("absolute"),this._canvas.setLeft(0),this._domNode.appendChild(this._canvas),this._decorationsCanvas=ot(document.createElement("canvas")),this._decorationsCanvas.setPosition("absolute"),this._decorationsCanvas.setClassName("minimap-decorations-layer"),this._decorationsCanvas.setLeft(0),this._domNode.appendChild(this._decorationsCanvas),this._slider=ot(document.createElement("div")),this._slider.setPosition("absolute"),this._slider.setClassName("minimap-slider"),this._slider.setLayerHinting(!0),this._slider.setContain("strict"),this._domNode.appendChild(this._slider),this._sliderHorizontal=ot(document.createElement("div")),this._sliderHorizontal.setPosition("absolute"),this._sliderHorizontal.setClassName("minimap-slider-horizontal"),this._slider.appendChild(this._sliderHorizontal),this._applyLayout(),this._pointerDownListener=jt(this._domNode.domNode,ee.POINTER_DOWN,i=>{if(i.preventDefault(),this._model.options.renderMinimap===0||!this._lastRenderData)return;if(this._model.options.size!=="proportional"){if(i.button===0&&this._lastRenderData){const c=gi(this._slider.domNode),d=c.top+c.height/2;this._startSliderDragging(i,d,this._lastRenderData.renderedLayout)}return}const s=this._model.options.minimapLineHeight,r=this._model.options.canvasInnerHeight/this._model.options.canvasOuterHeight*i.offsetY;let l=Math.floor(r/s)+this._lastRenderData.renderedLayout.startLineNumber-this._lastRenderData.renderedLayout.topPaddingLineCount;l=Math.min(l,this._model.getLineCount()),this._model.revealLineNumber(l)}),this._sliderPointerMoveMonitor=new Hg,this._sliderPointerDownListener=jt(this._slider.domNode,ee.POINTER_DOWN,i=>{i.preventDefault(),i.stopPropagation(),i.button===0&&this._lastRenderData&&this._startSliderDragging(i,i.pageY,this._lastRenderData.renderedLayout)}),this._gestureDisposable=fn.addTarget(this._domNode.domNode),this._sliderTouchStartListener=U(this._domNode.domNode,St.Start,i=>{i.preventDefault(),i.stopPropagation(),this._lastRenderData&&(this._slider.toggleClassName("active",!0),this._gestureInProgress=!0,this.scrollDueToTouchEvent(i))},{passive:!1}),this._sliderTouchMoveListener=U(this._domNode.domNode,St.Change,i=>{i.preventDefault(),i.stopPropagation(),this._lastRenderData&&this._gestureInProgress&&this.scrollDueToTouchEvent(i)},{passive:!1}),this._sliderTouchEndListener=jt(this._domNode.domNode,St.End,i=>{i.preventDefault(),i.stopPropagation(),this._gestureInProgress=!1,this._slider.toggleClassName("active",!1)})}_startSliderDragging(e,t,i){if(!e.target||!(e.target instanceof Element))return;const n=e.pageX;this._slider.toggleClassName("active",!0);const s=(r,a)=>{const l=gi(this._domNode.domNode),c=Math.min(Math.abs(a-n),Math.abs(a-l.left),Math.abs(a-l.left-l.width));if(kn&&c>fse){this._model.setScrollTop(i.scrollTop);return}const d=r-t;this._model.setScrollTop(i.getDesiredScrollTopFromDelta(d))};e.pageY!==t&&s(e.pageY,n),this._sliderPointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,r=>s(r.pageY,r.pageX),()=>{this._slider.toggleClassName("active",!1)})}scrollDueToTouchEvent(e){const t=this._domNode.domNode.getBoundingClientRect().top,i=this._lastRenderData.renderedLayout.getDesiredScrollTopFromTouchLocation(e.pageY-t);this._model.setScrollTop(i)}dispose(){this._pointerDownListener.dispose(),this._sliderPointerMoveMonitor.dispose(),this._sliderPointerDownListener.dispose(),this._gestureDisposable.dispose(),this._sliderTouchStartListener.dispose(),this._sliderTouchMoveListener.dispose(),this._sliderTouchEndListener.dispose(),super.dispose()}_getMinimapDomNodeClassName(){const e=["minimap"];return this._model.options.showSlider==="always"?e.push("slider-always"):e.push("slider-mouseover"),this._model.options.autohide&&e.push("autohide"),e.join(" ")}getDomNode(){return this._domNode}_applyLayout(){this._domNode.setLeft(this._model.options.minimapLeft),this._domNode.setWidth(this._model.options.minimapWidth),this._domNode.setHeight(this._model.options.minimapHeight),this._shadow.setHeight(this._model.options.minimapHeight),this._canvas.setWidth(this._model.options.canvasOuterWidth),this._canvas.setHeight(this._model.options.canvasOuterHeight),this._canvas.domNode.width=this._model.options.canvasInnerWidth,this._canvas.domNode.height=this._model.options.canvasInnerHeight,this._decorationsCanvas.setWidth(this._model.options.canvasOuterWidth),this._decorationsCanvas.setHeight(this._model.options.canvasOuterHeight),this._decorationsCanvas.domNode.width=this._model.options.canvasInnerWidth,this._decorationsCanvas.domNode.height=this._model.options.canvasInnerHeight,this._slider.setWidth(this._model.options.minimapWidth)}_getBuffer(){return this._buffers||this._model.options.canvasInnerWidth>0&&this._model.options.canvasInnerHeight>0&&(this._buffers=new j2(this._canvas.domNode.getContext("2d"),this._model.options.canvasInnerWidth,this._model.options.canvasInnerHeight,this._model.options.backgroundColor)),this._buffers?this._buffers.getBuffer():null}onDidChangeOptions(){this._lastRenderData=null,this._buffers=null,this._applyLayout(),this._domNode.setClassName(this._getMinimapDomNodeClassName())}onSelectionChanged(){return this._renderDecorations=!0,!0}onDecorationsChanged(){return this._renderDecorations=!0,!0}onFlushed(){return this._lastRenderData=null,!0}onLinesChanged(e,t){return this._lastRenderData?this._lastRenderData.onLinesChanged(e,t):!1}onLinesDeleted(e,t){return this._lastRenderData?.onLinesDeleted(e,t),!0}onLinesInserted(e,t){return this._lastRenderData?.onLinesInserted(e,t),!0}onScrollChanged(){return this._renderDecorations=!0,!0}onThemeChanged(){return this._selectionColor=this._theme.getColor(NA),this._renderDecorations=!0,!0}onTokensChanged(e){return this._lastRenderData?this._lastRenderData.onTokensChanged(e):!1}onTokensColorsChanged(){return this._lastRenderData=null,this._buffers=null,!0}onZonesChanged(){return this._lastRenderData=null,!0}render(e){if(this._model.options.renderMinimap===0){this._shadow.setClassName("minimap-shadow-hidden"),this._sliderHorizontal.setWidth(0),this._sliderHorizontal.setHeight(0);return}e.scrollLeft+e.viewportWidth>=e.scrollWidth?this._shadow.setClassName("minimap-shadow-hidden"):this._shadow.setClassName("minimap-shadow-visible");const i=mp.create(this._model.options,e.viewportStartLineNumber,e.viewportEndLineNumber,e.viewportStartLineNumberVerticalOffset,e.viewportHeight,e.viewportContainsWhitespaceGaps,this._model.getLineCount(),this._model.getRealLineCount(),e.scrollTop,e.scrollHeight,this._lastRenderData?this._lastRenderData.renderedLayout:null);this._slider.setDisplay(i.sliderNeeded?"block":"none"),this._slider.setTop(i.sliderTop),this._slider.setHeight(i.sliderHeight),this._sliderHorizontal.setLeft(0),this._sliderHorizontal.setWidth(this._model.options.minimapWidth),this._sliderHorizontal.setTop(0),this._sliderHorizontal.setHeight(i.sliderHeight),this.renderDecorations(i),this._lastRenderData=this.renderLines(i)}renderDecorations(e){if(this._renderDecorations){this._renderDecorations=!1;const t=this._model.getSelections();t.sort(I.compareRangesUsingStarts);const i=this._model.getMinimapDecorationsInViewport(e.startLineNumber,e.endLineNumber);i.sort((u,f)=>(u.options.zIndex||0)-(f.options.zIndex||0));const{canvasInnerWidth:n,canvasInnerHeight:s}=this._model.options,r=this._model.options.minimapLineHeight,a=this._model.options.minimapCharWidth,l=this._model.getOptions().tabSize,c=this._decorationsCanvas.domNode.getContext("2d");c.clearRect(0,0,n,s);const d=new WO(e.startLineNumber,e.endLineNumber,!1);this._renderSelectionLineHighlights(c,t,d,e,r),this._renderDecorationsLineHighlights(c,i,d,e,r);const h=new WO(e.startLineNumber,e.endLineNumber,null);this._renderSelectionsHighlights(c,t,h,e,r,l,a,n),this._renderDecorationsHighlights(c,i,h,e,r,l,a,n),this._renderSectionHeaders(e)}}_renderSelectionLineHighlights(e,t,i,n,s){if(!this._selectionColor||this._selectionColor.isTransparent())return;e.fillStyle=this._selectionColor.transparent(.5).toString();let r=0,a=0;for(const l of t){const c=n.intersectWithViewport(l);if(!c)continue;const[d,h]=c;for(let g=d;g<=h;g++)i.set(g,!0);const u=n.getYForLineNumber(d,s),f=n.getYForLineNumber(h,s);a>=u||(a>r&&e.fillRect(Ar,r,e.canvas.width,a-r),r=u),a=f}a>r&&e.fillRect(Ar,r,e.canvas.width,a-r)}_renderDecorationsLineHighlights(e,t,i,n,s){const r=new Map;for(let a=t.length-1;a>=0;a--){const l=t[a],c=l.options.minimap;if(!c||c.position!==1)continue;const d=n.intersectWithViewport(l.range);if(!d)continue;const[h,u]=d,f=c.getColor(this._theme.value);if(!f||f.isTransparent())continue;let g=r.get(f.toString());g||(g=f.transparent(.5).toString(),r.set(f.toString(),g)),e.fillStyle=g;for(let p=h;p<=u;p++){if(i.has(p))continue;i.set(p,!0);const _=n.getYForLineNumber(h,s);e.fillRect(Ar,_,e.canvas.width,s)}}}_renderSelectionsHighlights(e,t,i,n,s,r,a,l){if(!(!this._selectionColor||this._selectionColor.isTransparent()))for(const c of t){const d=n.intersectWithViewport(c);if(!d)continue;const[h,u]=d;for(let f=h;f<=u;f++)this.renderDecorationOnLine(e,i,c,this._selectionColor,n,f,s,s,r,a,l)}}_renderDecorationsHighlights(e,t,i,n,s,r,a,l){for(const c of t){const d=c.options.minimap;if(!d)continue;const h=n.intersectWithViewport(c.range);if(!h)continue;const[u,f]=h,g=d.getColor(this._theme.value);if(!(!g||g.isTransparent()))for(let p=u;p<=f;p++)switch(d.position){case 1:this.renderDecorationOnLine(e,i,c.range,g,n,p,s,s,r,a,l);continue;case 2:{const _=n.getYForLineNumber(p,s);this.renderDecoration(e,g,2,_,gse,s);continue}}}}renderDecorationOnLine(e,t,i,n,s,r,a,l,c,d,h){const u=s.getYForLineNumber(r,l);if(u+a<0||u>this._model.options.canvasInnerHeight)return;const{startLineNumber:f,endLineNumber:g}=i,p=f===r?i.startColumn:1,_=g===r?i.endColumn:this._model.getLineMaxColumn(r),b=this.getXOffsetForPosition(t,r,p,c,d,h),C=this.getXOffsetForPosition(t,r,_,c,d,h);this.renderDecoration(e,n,b,u,C-b,a)}getXOffsetForPosition(e,t,i,n,s,r){if(i===1)return Ar;if((i-1)*s>=r)return r;let l=e.get(t);if(!l){const c=this._model.getLineContent(t);l=[Ar];let d=Ar;for(let h=1;h=r){l[h]=r;break}l[h]=g,d=g}e.set(t,l)}return i-1p.range.startLineNumber-_.range.startLineNumber);const g=uf._fitSectionHeader.bind(null,u,r-Ar);for(const p of f){const _=e.getYForLineNumber(p.range.startLineNumber,t)+i,b=_-i,C=b+2,w=this._model.getSectionHeaderText(p,g);uf._renderSectionLabel(u,w,p.options.minimap?.sectionHeaderStyle===2,l,d,r,b,s,_,C)}}static _fitSectionHeader(e,t,i){if(!i)return i;const n="…",s=e.measureText(i).width,r=e.measureText(n).width;if(s<=t||s<=r)return i;const a=i.length,l=s/i.length,c=Math.floor((t-r)/l)-1;let d=Math.ceil(c/2);for(;d>0&&/\s/.test(i[d-1]);)--d;return i.substring(0,d)+n+i.substring(a-(c-d))}static _renderSectionLabel(e,t,i,n,s,r,a,l,c,d){t&&(e.fillStyle=n,e.fillRect(0,a,r,l),e.fillStyle=s,e.fillText(t,Ar,c)),i&&(e.beginPath(),e.moveTo(0,d),e.lineTo(r,d),e.closePath(),e.stroke())}renderLines(e){const t=e.startLineNumber,i=e.endLineNumber,n=this._model.options.minimapLineHeight;if(this._lastRenderData&&this._lastRenderData.linesEquals(e)){const G=this._lastRenderData._get();return new BO(e,G.imageData,G.lines)}const s=this._getBuffer();if(!s)return null;const[r,a,l]=uf._renderUntouchedLines(s,e.topPaddingLineCount,t,i,n,this._lastRenderData),c=this._model.getMinimapLinesRenderingData(t,i,l),d=this._model.getOptions().tabSize,h=this._model.options.defaultBackgroundColor,u=this._model.options.backgroundColor,f=this._model.options.foregroundAlpha,g=this._model.tokensColorTracker,p=g.backgroundIsLight(),_=this._model.options.renderMinimap,b=this._model.options.charRenderer(),C=this._model.options.fontScale,w=this._model.options.minimapCharWidth,y=(_===1?2:3)*C,x=n>y?Math.floor((n-y)/2):0,L=u.a/255,E=new Sl(Math.round((u.r-h.r)*L+h.r),Math.round((u.g-h.g)*L+h.g),Math.round((u.b-h.b)*L+h.b),255);let N=e.topPaddingLineCount*n;const H=[];for(let G=0,ne=i-t+1;G=0&&FC)return;const W=_.charCodeAt(y);if(W===9){const j=u-(y+x)%u;x+=j-1,v+=j*r}else if(W===32)v+=r;else{const j=Rc(W)?2:1;for(let B=0;BC)return}}}}}class WO{constructor(e,t,i){this._startLineNumber=e,this._endLineNumber=t,this._defaultValue=i,this._values=[];for(let n=0,s=this._endLineNumber-this._startLineNumber+1;nthis._endLineNumber||(this._values[e-this._startLineNumber]=t)}get(e){return ethis._endLineNumber?this._defaultValue:this._values[e-this._startLineNumber]}}class pse extends _s{constructor(e,t){super(e),this._viewDomNode=t;const n=this._context.configuration.options.get(146);this._widgets={},this._verticalScrollbarWidth=n.verticalScrollbarWidth,this._minimapWidth=n.minimap.minimapWidth,this._horizontalScrollbarHeight=n.horizontalScrollbarHeight,this._editorHeight=n.height,this._editorWidth=n.width,this._viewDomNodeRect={top:0,left:0,width:0,height:0},this._domNode=ot(document.createElement("div")),vr.write(this._domNode,4),this._domNode.setClassName("overlayWidgets"),this.overflowingOverlayWidgetsDomNode=ot(document.createElement("div")),vr.write(this.overflowingOverlayWidgetsDomNode,5),this.overflowingOverlayWidgetsDomNode.setClassName("overflowingOverlayWidgets")}dispose(){super.dispose(),this._widgets={}}getDomNode(){return this._domNode}onConfigurationChanged(e){const i=this._context.configuration.options.get(146);return this._verticalScrollbarWidth=i.verticalScrollbarWidth,this._minimapWidth=i.minimap.minimapWidth,this._horizontalScrollbarHeight=i.horizontalScrollbarHeight,this._editorHeight=i.height,this._editorWidth=i.width,!0}addWidget(e){const t=ot(e.getDomNode());this._widgets[e.getId()]={widget:e,preference:null,domNode:t},t.setPosition("absolute"),t.setAttribute("widgetId",e.getId()),e.allowEditorOverflow?this.overflowingOverlayWidgetsDomNode.appendChild(t):this._domNode.appendChild(t),this.setShouldRender(),this._updateMaxMinWidth()}setWidgetPosition(e,t){const i=this._widgets[e.getId()],n=t?t.preference:null,s=t?.stackOridinal;return i.preference===n&&i.stack===s?(this._updateMaxMinWidth(),!1):(i.preference=n,i.stack=s,this.setShouldRender(),this._updateMaxMinWidth(),!0)}removeWidget(e){const t=e.getId();if(this._widgets.hasOwnProperty(t)){const n=this._widgets[t].domNode.domNode;delete this._widgets[t],n.remove(),this.setShouldRender(),this._updateMaxMinWidth()}}_updateMaxMinWidth(){let e=0;const t=Object.keys(this._widgets);for(let i=0,n=t.length;i0);t.sort((n,s)=>(this._widgets[n].stack||0)-(this._widgets[s].stack||0));for(let n=0,s=t.length;n=3){const s=Math.floor(n/3),r=Math.floor(n/3),a=n-s-r,l=e,c=l+s,d=l+s+a;return[[0,l,c,l,d,l,c,l],[0,s,a,s+a,r,s+a+r,a+r,s+a+r]]}else if(i===2){const s=Math.floor(n/2),r=n-s,a=e,l=a+s;return[[0,a,a,a,l,a,a,a],[0,s,s,s,r,s+r,s+r,s+r]]}else{const s=e,r=n;return[[0,s,s,s,s,s,s,s],[0,r,r,r,r,r,r,r]]}}equals(e){return this.lineHeight===e.lineHeight&&this.pixelRatio===e.pixelRatio&&this.overviewRulerLanes===e.overviewRulerLanes&&this.renderBorder===e.renderBorder&&this.borderColor===e.borderColor&&this.hideCursor===e.hideCursor&&this.cursorColorSingle===e.cursorColorSingle&&this.cursorColorPrimary===e.cursorColorPrimary&&this.cursorColorSecondary===e.cursorColorSecondary&&this.themeType===e.themeType&&q.equals(this.backgroundColor,e.backgroundColor)&&this.top===e.top&&this.right===e.right&&this.domWidth===e.domWidth&&this.domHeight===e.domHeight&&this.canvasWidth===e.canvasWidth&&this.canvasHeight===e.canvasHeight}}class bse extends _s{constructor(e){super(e),this._actualShouldRender=0,this._renderedDecorations=[],this._renderedCursorPositions=[],this._domNode=ot(document.createElement("canvas")),this._domNode.setClassName("decorationsOverviewRuler"),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._domNode.setAttribute("aria-hidden","true"),this._updateSettings(!1),this._tokensColorTrackerListener=si.onDidChange(t=>{t.changedColorMap&&this._updateSettings(!0)}),this._cursorPositions=[{position:new P(1,1),color:this._settings.cursorColorSingle}]}dispose(){super.dispose(),this._tokensColorTrackerListener.dispose()}_updateSettings(e){const t=new _se(this._context.configuration,this._context.theme);return this._settings&&this._settings.equals(t)?!1:(this._settings=t,this._domNode.setTop(this._settings.top),this._domNode.setRight(this._settings.right),this._domNode.setWidth(this._settings.domWidth),this._domNode.setHeight(this._settings.domHeight),this._domNode.domNode.width=this._settings.canvasWidth,this._domNode.domNode.height=this._settings.canvasHeight,e&&this._render(),!0)}_markRenderingIsNeeded(){return this._actualShouldRender=2,!0}_markRenderingIsMaybeNeeded(){return this._actualShouldRender=1,!0}onConfigurationChanged(e){return this._updateSettings(!1)?this._markRenderingIsNeeded():!1}onCursorStateChanged(e){this._cursorPositions=[];for(let t=0,i=e.selections.length;t1&&(n=t===0?this._settings.cursorColorPrimary:this._settings.cursorColorSecondary),this._cursorPositions.push({position:e.selections[t].getPosition(),color:n})}return this._cursorPositions.sort((t,i)=>P.compare(t.position,i.position)),this._markRenderingIsMaybeNeeded()}onDecorationsChanged(e){return e.affectsOverviewRuler?this._markRenderingIsMaybeNeeded():!1}onFlushed(e){return this._markRenderingIsNeeded()}onScrollChanged(e){return e.scrollHeightChanged?this._markRenderingIsNeeded():!1}onZonesChanged(e){return this._markRenderingIsNeeded()}onThemeChanged(e){return this._updateSettings(!1)?this._markRenderingIsNeeded():!1}getDomNode(){return this._domNode.domNode}prepareRender(e){}render(e){this._render(),this._actualShouldRender=0}_render(){const e=this._settings.backgroundColor;if(this._settings.overviewRulerLanes===0){this._domNode.setBackgroundColor(e?q.Format.CSS.formatHexA(e):""),this._domNode.setDisplay("none");return}const t=this._context.viewModel.getAllOverviewRulerDecorations(this._context.theme);if(t.sort(w_.compareByRenderingProps),this._actualShouldRender===1&&!w_.equalsArr(this._renderedDecorations,t)&&(this._actualShouldRender=2),this._actualShouldRender===1&&!li(this._renderedCursorPositions,this._cursorPositions,(g,p)=>g.position.lineNumber===p.position.lineNumber&&g.color===p.color)&&(this._actualShouldRender=2),this._actualShouldRender===1)return;this._renderedDecorations=t,this._renderedCursorPositions=this._cursorPositions,this._domNode.setDisplay("block");const i=this._settings.canvasWidth,n=this._settings.canvasHeight,s=this._settings.lineHeight,r=this._context.viewLayout,a=this._context.viewLayout.getScrollHeight(),l=n/a,c=6*this._settings.pixelRatio|0,d=c/2|0,h=this._domNode.domNode.getContext("2d");e?e.isOpaque()?(h.fillStyle=q.Format.CSS.formatHexA(e),h.fillRect(0,0,i,n)):(h.clearRect(0,0,i,n),h.fillStyle=q.Format.CSS.formatHexA(e),h.fillRect(0,0,i,n)):h.clearRect(0,0,i,n);const u=this._settings.x,f=this._settings.w;for(const g of t){const p=g.color,_=g.data;h.fillStyle=p;let b=0,C=0,w=0;for(let v=0,y=_.length/3;vn&&(W=n-d),N=W-d,H=W+d}N>w+1||x!==b?(v!==0&&h.fillRect(u[b],C,f[b],w-C),b=x,C=N,w=H):H>w&&(w=H)}h.fillRect(u[b],C,f[b],w-C)}if(!this._settings.hideCursor){const g=2*this._settings.pixelRatio|0,p=g/2|0,_=this._settings.x[7],b=this._settings.w[7];let C=-100,w=-100,v=null;for(let y=0,x=this._cursorPositions.length;yn&&(N=n-p);const H=N-p,F=H+g;H>w+1||L!==v?(y!==0&&v&&h.fillRect(_,C,b,w-C),C=H,w=F):F>w&&(w=F),v=L,h.fillStyle=L}v&&h.fillRect(_,C,b,w-C)}this._settings.renderBorder&&this._settings.borderColor&&this._settings.overviewRulerLanes>0&&(h.beginPath(),h.lineWidth=1,h.strokeStyle=this._settings.borderColor,h.moveTo(0,0),h.lineTo(0,n),h.moveTo(1,0),h.lineTo(i,0),h.stroke())}}class HO{constructor(e,t,i){this._colorZoneBrand=void 0,this.from=e|0,this.to=t|0,this.colorId=i|0}static compare(e,t){return e.colorId===t.colorId?e.from===t.from?e.to-t.to:e.from-t.from:e.colorId-t.colorId}}class E8{constructor(e,t,i,n){this._overviewRulerZoneBrand=void 0,this.startLineNumber=e,this.endLineNumber=t,this.heightInLines=i,this.color=n,this._colorZone=null}static compare(e,t){return e.color===t.color?e.startLineNumber===t.startLineNumber?e.heightInLines===t.heightInLines?e.endLineNumber-t.endLineNumber:e.heightInLines-t.heightInLines:e.startLineNumber-t.startLineNumber:e.colori&&(p=i-_);const b=d.color;let C=this._color2Id[b];C||(C=++this._lastAssignedId,this._color2Id[b]=C,this._id2Color[C]=b);const w=new HO(p-_,p+_,C);d.setColorZone(w),a.push(w)}return this._colorZonesInvalid=!1,a.sort(HO.compare),a}}class vse extends ab{constructor(e,t){super(),this._context=e;const i=this._context.configuration.options;this._domNode=ot(document.createElement("canvas")),this._domNode.setClassName(t),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._zoneManager=new Cse(n=>this._context.viewLayout.getVerticalOffsetForLineNumber(n)),this._zoneManager.setDOMWidth(0),this._zoneManager.setDOMHeight(0),this._zoneManager.setOuterHeight(this._context.viewLayout.getScrollHeight()),this._zoneManager.setLineHeight(i.get(67)),this._zoneManager.setPixelRatio(i.get(144)),this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return e.hasChanged(67)&&(this._zoneManager.setLineHeight(t.get(67)),this._render()),e.hasChanged(144)&&(this._zoneManager.setPixelRatio(t.get(144)),this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render()),!0}onFlushed(e){return this._render(),!0}onScrollChanged(e){return e.scrollHeightChanged&&(this._zoneManager.setOuterHeight(e.scrollHeight),this._render()),!0}onZonesChanged(e){return this._render(),!0}getDomNode(){return this._domNode.domNode}setLayout(e){this._domNode.setTop(e.top),this._domNode.setRight(e.right);let t=!1;t=this._zoneManager.setDOMWidth(e.width)||t,t=this._zoneManager.setDOMHeight(e.height)||t,t&&(this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render())}setZones(e){this._zoneManager.setZones(e),this._render()}_render(){if(this._zoneManager.getOuterHeight()===0)return!1;const e=this._zoneManager.getCanvasWidth(),t=this._zoneManager.getCanvasHeight(),i=this._zoneManager.resolveColorZones(),n=this._zoneManager.getId2Color(),s=this._domNode.domNode.getContext("2d");return s.clearRect(0,0,e,t),i.length>0&&this._renderOneLane(s,i,n,e),!0}_renderOneLane(e,t,i,n){let s=0,r=0,a=0;for(const l of t){const c=l.colorId,d=l.from,h=l.to;c!==s?(e.fillRect(0,r,n,a-r),s=c,e.fillStyle=i[s],r=d,a=h):a>=d?a=Math.max(a,h):(e.fillRect(0,r,n,a-r),r=d,a=h)}e.fillRect(0,r,n,a-r)}}class wse extends _s{constructor(e){super(e),this.domNode=ot(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("view-rulers"),this._renderedRulers=[];const t=this._context.configuration.options;this._rulers=t.get(103),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth}dispose(){super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return this._rulers=t.get(103),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,!0}onScrollChanged(e){return e.scrollHeightChanged}prepareRender(e){}_ensureRulersCount(){const e=this._renderedRulers.length,t=this._rulers.length;if(e===t)return;if(e0;){const a=ot(document.createElement("div"));a.setClassName("view-ruler"),a.setWidth(s),this.domNode.appendChild(a),this._renderedRulers.push(a),r--}return}let i=e-t;for(;i>0;){const n=this._renderedRulers.pop();this.domNode.removeChild(n),i--}}render(e){this._ensureRulersCount();for(let t=0,i=this._rulers.length;t0;return this._shouldShow!==e?(this._shouldShow=e,!0):!1}getDomNode(){return this._domNode}_updateWidth(){const t=this._context.configuration.options.get(146);t.minimap.renderMinimap===0||t.minimap.minimapWidth>0&&t.minimap.minimapLeft===0?this._width=t.width:this._width=t.width-t.verticalScrollbarWidth}onConfigurationChanged(e){const i=this._context.configuration.options.get(104);return this._useShadows=i.useShadows,this._updateWidth(),this._updateShouldShow(),!0}onScrollChanged(e){return this._scrollTop=e.scrollTop,this._updateShouldShow()}prepareRender(e){}render(e){this._domNode.setWidth(this._width),this._domNode.setClassName(this._shouldShow?"scroll-decoration":"")}}class Sse{constructor(e){this.left=e.left,this.width=e.width,this.startStyle=null,this.endStyle=null}}class Lse{constructor(e,t){this.lineNumber=e,this.ranges=t}}function xse(o){return new Sse(o)}function kse(o){return new Lse(o.lineNumber,o.ranges.map(xse))}const Zt=class Zt extends mu{constructor(e){super(),this._previousFrameVisibleRangesWithStyle=[],this._context=e;const t=this._context.configuration.options;this._roundedSelection=t.get(102),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,this._selections=[],this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return this._roundedSelection=t.get(102),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,!0}onCursorStateChanged(e){return this._selections=e.selections.slice(0),!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}_visibleRangesHaveGaps(e){for(let t=0,i=e.length;t1)return!0;return!1}_enrichVisibleRangesWithStyle(e,t,i){const n=this._typicalHalfwidthCharacterWidth/4;let s=null,r=null;if(i&&i.length>0&&t.length>0){const a=t[0].lineNumber;if(a===e.startLineNumber)for(let c=0;!s&&c=0;c--)i[c].lineNumber===l&&(r=i[c].ranges[0]);s&&!s.startStyle&&(s=null),r&&!r.startStyle&&(r=null)}for(let a=0,l=t.length;a0){const g=t[a-1].ranges[0].left,p=t[a-1].ranges[0].left+t[a-1].ranges[0].width;i1(d-g)g&&(u.top=1),i1(h-p)'}_actualRenderOneSelection(e,t,i,n){if(n.length===0)return;const s=!!n[0].ranges[0].startStyle,r=n[0].lineNumber,a=n[n.length-1].lineNumber;for(let l=0,c=n.length;l1,c)}this._previousFrameVisibleRangesWithStyle=s,this._renderResult=t.map(([r,a])=>r+a)}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}};Zt.SELECTION_CLASS_NAME="selected-text",Zt.SELECTION_TOP_LEFT="top-left-radius",Zt.SELECTION_BOTTOM_LEFT="bottom-left-radius",Zt.SELECTION_TOP_RIGHT="top-right-radius",Zt.SELECTION_BOTTOM_RIGHT="bottom-right-radius",Zt.EDITOR_BACKGROUND_CLASS_NAME="monaco-editor-background",Zt.ROUNDED_PIECE_WIDTH=10;let TI=Zt;Sr((o,e)=>{const t=o.getColor(DK);t&&!t.isTransparent()&&e.addRule(`.monaco-editor .view-line span.inline-selected-text { color: ${t}; }`)});function i1(o){return o<0?-o:o}class VO{constructor(e,t,i,n,s,r,a){this.top=e,this.left=t,this.paddingLeft=i,this.width=n,this.height=s,this.textContent=r,this.textContentClassName=a}}var hl;(function(o){o[o.Single=0]="Single",o[o.MultiPrimary=1]="MultiPrimary",o[o.MultiSecondary=2]="MultiSecondary"})(hl||(hl={}));class zO{constructor(e,t){this._context=e;const i=this._context.configuration.options,n=i.get(50);this._cursorStyle=i.get(28),this._lineHeight=i.get(67),this._typicalHalfwidthCharacterWidth=n.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(i.get(31),this._typicalHalfwidthCharacterWidth),this._isVisible=!0,this._domNode=ot(document.createElement("div")),this._domNode.setClassName(`cursor ${Zf}`),this._domNode.setHeight(this._lineHeight),this._domNode.setTop(0),this._domNode.setLeft(0),qi(this._domNode,n),this._domNode.setDisplay("none"),this._position=new P(1,1),this._pluralityClass="",this.setPlurality(t),this._lastRenderedContent="",this._renderData=null}getDomNode(){return this._domNode}getPosition(){return this._position}setPlurality(e){switch(e){default:case hl.Single:this._pluralityClass="";break;case hl.MultiPrimary:this._pluralityClass="cursor-primary";break;case hl.MultiSecondary:this._pluralityClass="cursor-secondary";break}}show(){this._isVisible||(this._domNode.setVisibility("inherit"),this._isVisible=!0)}hide(){this._isVisible&&(this._domNode.setVisibility("hidden"),this._isVisible=!1)}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(50);return this._cursorStyle=t.get(28),this._lineHeight=t.get(67),this._typicalHalfwidthCharacterWidth=i.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(t.get(31),this._typicalHalfwidthCharacterWidth),qi(this._domNode,i),!0}onCursorPositionChanged(e,t){return t?this._domNode.domNode.style.transitionProperty="none":this._domNode.domNode.style.transitionProperty="",this._position=e,!0}_getGraphemeAwarePosition(){const{lineNumber:e,column:t}=this._position,i=this._context.viewModel.getLineContent(e),[n,s]=uH(i,t-1);return[new P(e,n+1),i.substring(n,s)]}_prepareRender(e){let t="",i="";const[n,s]=this._getGraphemeAwarePosition();if(this._cursorStyle===Ai.Line||this._cursorStyle===Ai.LineThin){const u=e.visibleRangeForPosition(n);if(!u||u.outsideRenderedLine)return null;const f=fe(this._domNode.domNode);let g;this._cursorStyle===Ai.Line?(g=fR(f,this._lineCursorWidth>0?this._lineCursorWidth:2),g>2&&(t=s,i=this._getTokenClassName(n))):g=fR(f,1);let p=u.left,_=0;g>=2&&p>=1&&(_=1,p-=_);const b=e.getVerticalOffsetForLineNumber(n.lineNumber)-e.bigNumbersDelta;return new VO(b,p,_,g,this._lineHeight,t,i)}const r=e.linesVisibleRangesForRange(new I(n.lineNumber,n.column,n.lineNumber,n.column+s.length),!1);if(!r||r.length===0)return null;const a=r[0];if(a.outsideRenderedLine||a.ranges.length===0)return null;const l=a.ranges[0],c=s===" "?this._typicalHalfwidthCharacterWidth:l.width<1?this._typicalHalfwidthCharacterWidth:l.width;this._cursorStyle===Ai.Block&&(t=s,i=this._getTokenClassName(n));let d=e.getVerticalOffsetForLineNumber(n.lineNumber)-e.bigNumbersDelta,h=this._lineHeight;return(this._cursorStyle===Ai.Underline||this._cursorStyle===Ai.UnderlineThin)&&(d+=this._lineHeight-2,h=2),new VO(d,l.left,0,c,h,t,i)}_getTokenClassName(e){const t=this._context.viewModel.getViewLineData(e.lineNumber),i=t.tokens.findTokenIndexAtOffset(e.column-1);return t.tokens.getClassName(i)}prepareRender(e){this._renderData=this._prepareRender(e)}render(e){return this._renderData?(this._lastRenderedContent!==this._renderData.textContent&&(this._lastRenderedContent=this._renderData.textContent,this._domNode.domNode.textContent=this._lastRenderedContent),this._domNode.setClassName(`cursor ${this._pluralityClass} ${Zf} ${this._renderData.textContentClassName}`),this._domNode.setDisplay("block"),this._domNode.setTop(this._renderData.top),this._domNode.setLeft(this._renderData.left),this._domNode.setPaddingLeft(this._renderData.paddingLeft),this._domNode.setWidth(this._renderData.width),this._domNode.setLineHeight(this._renderData.height),this._domNode.setHeight(this._renderData.height),{domNode:this._domNode.domNode,position:this._position,contentLeft:this._renderData.left,height:this._renderData.height,width:2}):(this._domNode.setDisplay("none"),null)}}const Pp=class Pp extends _s{constructor(e){super(e);const t=this._context.configuration.options;this._readOnly=t.get(92),this._cursorBlinking=t.get(26),this._cursorStyle=t.get(28),this._cursorSmoothCaretAnimation=t.get(27),this._selectionIsEmpty=!0,this._isComposingInput=!1,this._isVisible=!1,this._primaryCursor=new zO(this._context,hl.Single),this._secondaryCursors=[],this._renderData=[],this._domNode=ot(document.createElement("div")),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._updateDomClassName(),this._domNode.appendChild(this._primaryCursor.getDomNode()),this._startCursorBlinkAnimation=new wr,this._cursorFlatBlinkInterval=new QN,this._blinkingEnabled=!1,this._editorHasFocus=!1,this._updateBlinking()}dispose(){super.dispose(),this._startCursorBlinkAnimation.dispose(),this._cursorFlatBlinkInterval.dispose()}getDomNode(){return this._domNode}onCompositionStart(e){return this._isComposingInput=!0,this._updateBlinking(),!0}onCompositionEnd(e){return this._isComposingInput=!1,this._updateBlinking(),!0}onConfigurationChanged(e){const t=this._context.configuration.options;this._readOnly=t.get(92),this._cursorBlinking=t.get(26),this._cursorStyle=t.get(28),this._cursorSmoothCaretAnimation=t.get(27),this._updateBlinking(),this._updateDomClassName(),this._primaryCursor.onConfigurationChanged(e);for(let i=0,n=this._secondaryCursors.length;it.length){const s=this._secondaryCursors.length-t.length;for(let r=0;r{for(let n=0,s=e.ranges.length;n{this._isVisible?this._hide():this._show()},Pp.BLINK_INTERVAL,fe(this._domNode.domNode)):this._startCursorBlinkAnimation.setIfNotSet(()=>{this._blinkingEnabled=!0,this._updateDomClassName()},Pp.BLINK_INTERVAL))}_updateDomClassName(){this._domNode.setClassName(this._getClassName())}_getClassName(){let e="cursors-layer";switch(this._selectionIsEmpty||(e+=" has-selection"),this._cursorStyle){case Ai.Line:e+=" cursor-line-style";break;case Ai.Block:e+=" cursor-block-style";break;case Ai.Underline:e+=" cursor-underline-style";break;case Ai.LineThin:e+=" cursor-line-thin-style";break;case Ai.BlockOutline:e+=" cursor-block-outline-style";break;case Ai.UnderlineThin:e+=" cursor-underline-thin-style";break;default:e+=" cursor-line-style"}if(this._blinkingEnabled)switch(this._getCursorBlinking()){case 1:e+=" cursor-blink";break;case 2:e+=" cursor-smooth";break;case 3:e+=" cursor-phase";break;case 4:e+=" cursor-expand";break;case 5:e+=" cursor-solid";break;default:e+=" cursor-solid"}else e+=" cursor-solid";return(this._cursorSmoothCaretAnimation==="on"||this._cursorSmoothCaretAnimation==="explicit")&&(e+=" cursor-smooth-caret-animation"),e}_show(){this._primaryCursor.show();for(let e=0,t=this._secondaryCursors.length;e{const t=[{class:".cursor",foreground:uy,background:t2},{class:".cursor-primary",foreground:U7,background:KY},{class:".cursor-secondary",foreground:$7,background:jY}];for(const i of t){const n=o.getColor(i.foreground);if(n){let s=o.getColor(i.background);s||(s=n.opposite()),e.addRule(`.monaco-editor .cursors-layer ${i.class} { background-color: ${n}; border-color: ${n}; color: ${s}; }`),mc(o.type)&&e.addRule(`.monaco-editor .cursors-layer.has-selection ${i.class} { border-left: 1px solid ${s}; border-right: 1px solid ${s}; }`)}}});const oL=()=>{throw new Error("Invalid change accessor")};class Dse extends _s{constructor(e){super(e);const t=this._context.configuration.options,i=t.get(146);this._lineHeight=t.get(67),this._contentWidth=i.contentWidth,this._contentLeft=i.contentLeft,this.domNode=ot(document.createElement("div")),this.domNode.setClassName("view-zones"),this.domNode.setPosition("absolute"),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.marginDomNode=ot(document.createElement("div")),this.marginDomNode.setClassName("margin-view-zones"),this.marginDomNode.setPosition("absolute"),this.marginDomNode.setAttribute("role","presentation"),this.marginDomNode.setAttribute("aria-hidden","true"),this._zones={}}dispose(){super.dispose(),this._zones={}}_recomputeWhitespacesProps(){const e=this._context.viewLayout.getWhitespaces(),t=new Map;for(const n of e)t.set(n.id,n);let i=!1;return this._context.viewModel.changeWhitespace(n=>{const s=Object.keys(this._zones);for(let r=0,a=s.length;r{const n={addZone:s=>(t=!0,this._addZone(i,s)),removeZone:s=>{s&&(t=this._removeZone(i,s)||t)},layoutZone:s=>{s&&(t=this._layoutZone(i,s)||t)}};Ise(e,n),n.addZone=oL,n.removeZone=oL,n.layoutZone=oL}),t}_addZone(e,t){const i=this._computeWhitespaceProps(t),s={whitespaceId:e.insertWhitespace(i.afterViewLineNumber,this._getZoneOrdinal(t),i.heightInPx,i.minWidthInPx),delegate:t,isInHiddenArea:i.isInHiddenArea,isVisible:!1,domNode:ot(t.domNode),marginDomNode:t.marginDomNode?ot(t.marginDomNode):null};return this._safeCallOnComputedHeight(s.delegate,i.heightInPx),s.domNode.setPosition("absolute"),s.domNode.domNode.style.width="100%",s.domNode.setDisplay("none"),s.domNode.setAttribute("monaco-view-zone",s.whitespaceId),this.domNode.appendChild(s.domNode),s.marginDomNode&&(s.marginDomNode.setPosition("absolute"),s.marginDomNode.domNode.style.width="100%",s.marginDomNode.setDisplay("none"),s.marginDomNode.setAttribute("monaco-view-zone",s.whitespaceId),this.marginDomNode.appendChild(s.marginDomNode)),this._zones[s.whitespaceId]=s,this.setShouldRender(),s.whitespaceId}_removeZone(e,t){if(this._zones.hasOwnProperty(t)){const i=this._zones[t];return delete this._zones[t],e.removeWhitespace(i.whitespaceId),i.domNode.removeAttribute("monaco-visible-view-zone"),i.domNode.removeAttribute("monaco-view-zone"),i.domNode.domNode.remove(),i.marginDomNode&&(i.marginDomNode.removeAttribute("monaco-visible-view-zone"),i.marginDomNode.removeAttribute("monaco-view-zone"),i.marginDomNode.domNode.remove()),this.setShouldRender(),!0}return!1}_layoutZone(e,t){if(this._zones.hasOwnProperty(t)){const i=this._zones[t],n=this._computeWhitespaceProps(i.delegate);return i.isInHiddenArea=n.isInHiddenArea,e.changeOneWhitespace(i.whitespaceId,n.afterViewLineNumber,n.heightInPx),this._safeCallOnComputedHeight(i.delegate,n.heightInPx),this.setShouldRender(),!0}return!1}shouldSuppressMouseDownOnViewZone(e){return this._zones.hasOwnProperty(e)?!!this._zones[e].delegate.suppressMouseDown:!1}_heightInPixels(e){return typeof e.heightInPx=="number"?e.heightInPx:typeof e.heightInLines=="number"?this._lineHeight*e.heightInLines:this._lineHeight}_minWidthInPixels(e){return typeof e.minWidthInPx=="number"?e.minWidthInPx:0}_safeCallOnComputedHeight(e,t){if(typeof e.onComputedHeight=="function")try{e.onComputedHeight(t)}catch(i){Ze(i)}}_safeCallOnDomNodeTop(e,t){if(typeof e.onDomNodeTop=="function")try{e.onDomNodeTop(t)}catch(i){Ze(i)}}prepareRender(e){}render(e){const t=e.viewportData.whitespaceViewportData,i={};let n=!1;for(const r of t)this._zones[r.id].isInHiddenArea||(i[r.id]=r,n=!0);const s=Object.keys(this._zones);for(let r=0,a=s.length;ra)continue;const f=u.startLineNumber===a?u.startColumn:c.minColumn,g=u.endLineNumber===a?u.endColumn:c.maxColumn;f=H.endOffset&&(N++,H=i&&i[N]),j!==9&&j!==32||u&&!x&&W<=E)continue;if(h&&W>=L&&W<=E&&j===32){const G=W-1>=0?a.charCodeAt(W-1):0,ne=W+1=0?a.charCodeAt(W-1):0;if(j===32&&G!==32&&G!==9)continue}if(i&&(!H||H.startOffset>W||H.endOffset<=W))continue;const B=e.visibleRangeForPosition(new P(t,W+1));B&&(r?(F=Math.max(F,B.left),j===9?y+=this._renderArrow(f,_,B.left):y+=``):j===9?y+=`
    ${v?"→":"→"}
    `:y+=`
    ${String.fromCharCode(w)}
    `)}return r?(F=Math.round(F+_),``+y+""):y}_renderArrow(e,t,i){const n=t/7,s=t,r=e/2,a=i,l={x:0,y:n/2},c={x:100/125*s,y:l.y},d={x:c.x-.2*c.x,y:c.y+.2*c.x},h={x:d.x+.1*c.x,y:d.y+.1*c.x},u={x:h.x+.35*c.x,y:h.y-.35*c.x},f={x:u.x,y:-u.y},g={x:h.x,y:-h.y},p={x:d.x,y:-d.y},_={x:c.x,y:-c.y},b={x:l.x,y:-l.y};return``}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}class UO{constructor(e){const t=e.options,i=t.get(50),n=t.get(38);n==="off"?(this.renderWhitespace="none",this.renderWithSVG=!1):n==="svg"?(this.renderWhitespace=t.get(100),this.renderWithSVG=!0):(this.renderWhitespace=t.get(100),this.renderWithSVG=!1),this.spaceWidth=i.spaceWidth,this.middotWidth=i.middotWidth,this.wsmiddotWidth=i.wsmiddotWidth,this.canUseHalfwidthRightwardsArrow=i.canUseHalfwidthRightwardsArrow,this.lineHeight=t.get(67),this.stopRenderingLineAfter=t.get(118)}equals(e){return this.renderWhitespace===e.renderWhitespace&&this.renderWithSVG===e.renderWithSVG&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.wsmiddotWidth===e.wsmiddotWidth&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineHeight===e.lineHeight&&this.stopRenderingLineAfter===e.stopRenderingLineAfter}}class Nse{constructor(e,t,i,n){this.selections=e,this.startLineNumber=t.startLineNumber|0,this.endLineNumber=t.endLineNumber|0,this.relativeVerticalOffset=t.relativeVerticalOffset,this.bigNumbersDelta=t.bigNumbersDelta|0,this.lineHeight=t.lineHeight|0,this.whitespaceViewportData=i,this._model=n,this.visibleRange=new I(t.startLineNumber,this._model.getLineMinColumn(t.startLineNumber),t.endLineNumber,this._model.getLineMaxColumn(t.endLineNumber))}getViewLineRenderingData(e){return this._model.getViewportViewLineRenderingData(this.visibleRange,e)}getDecorationsInViewport(){return this._model.getDecorationsInViewport(this.visibleRange)}}class Tse{get type(){return this._theme.type}get value(){return this._theme}constructor(e){this._theme=e}update(e){this._theme=e}getColor(e){return this._theme.getColor(e)}}class Mse{constructor(e,t,i){this.configuration=e,this.theme=new Tse(t),this.viewModel=i,this.viewLayout=i.viewLayout}addEventHandler(e){this.viewModel.addViewEventHandler(e)}removeEventHandler(e){this.viewModel.removeViewEventHandler(e)}}var Rse=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ase=function(o,e){return function(t,i){e(t,i,o)}};let RI=class extends ab{constructor(e,t,i,n,s,r,a){super(),this._instantiationService=a,this._shouldRecomputeGlyphMarginLanes=!1,this._selections=[new Fe(1,1,1,1)],this._renderAnimationFrame=null;const l=new Vne(t,n,s,e);this._context=new Mse(t,i,n),this._context.addEventHandler(this),this._viewParts=[],this._textAreaHandler=this._instantiationService.createInstance(xI,this._context,l,this._createTextAreaHandlerHelper()),this._viewParts.push(this._textAreaHandler),this._linesContent=ot(document.createElement("div")),this._linesContent.setClassName("lines-content monaco-editor-background"),this._linesContent.setPosition("absolute"),this.domNode=ot(document.createElement("div")),this.domNode.setClassName(this._getEditorClassName()),this.domNode.setAttribute("role","code"),this._overflowGuardContainer=ot(document.createElement("div")),vr.write(this._overflowGuardContainer,3),this._overflowGuardContainer.setClassName("overflow-guard"),this._scrollbar=new Qne(this._context,this._linesContent,this.domNode,this._overflowGuardContainer),this._viewParts.push(this._scrollbar),this._viewLines=new NI(this._context,this._linesContent),this._viewZones=new Dse(this._context),this._viewParts.push(this._viewZones);const c=new bse(this._context);this._viewParts.push(c);const d=new yse(this._context);this._viewParts.push(d);const h=new Une(this._context);this._viewParts.push(h),h.addDynamicOverlay(new Gne(this._context)),h.addDynamicOverlay(new TI(this._context)),h.addDynamicOverlay(new sse(this._context)),h.addDynamicOverlay(new Yne(this._context)),h.addDynamicOverlay(new Ese(this._context));const u=new $ne(this._context);this._viewParts.push(u),u.addDynamicOverlay(new Zne(this._context)),u.addDynamicOverlay(new cse(this._context)),u.addDynamicOverlay(new lse(this._context)),u.addDynamicOverlay(new Ev(this._context)),this._glyphMarginWidgets=new ese(this._context),this._viewParts.push(this._glyphMarginWidgets);const f=new Nv(this._context);f.getDomNode().appendChild(this._viewZones.marginDomNode),f.getDomNode().appendChild(u.getDomNode()),f.getDomNode().appendChild(this._glyphMarginWidgets.domNode),this._viewParts.push(f),this._contentWidgets=new jne(this._context,this.domNode),this._viewParts.push(this._contentWidgets),this._viewCursors=new MI(this._context),this._viewParts.push(this._viewCursors),this._overlayWidgets=new pse(this._context,this.domNode),this._viewParts.push(this._overlayWidgets);const g=new wse(this._context);this._viewParts.push(g);const p=new Kne(this._context);this._viewParts.push(p);const _=new mse(this._context);if(this._viewParts.push(_),c){const b=this._scrollbar.getOverviewRulerLayoutInfo();b.parent.insertBefore(c.getDomNode(),b.insertBefore)}this._linesContent.appendChild(h.getDomNode()),this._linesContent.appendChild(g.domNode),this._linesContent.appendChild(this._viewZones.domNode),this._linesContent.appendChild(this._viewLines.getDomNode()),this._linesContent.appendChild(this._contentWidgets.domNode),this._linesContent.appendChild(this._viewCursors.getDomNode()),this._overflowGuardContainer.appendChild(f.getDomNode()),this._overflowGuardContainer.appendChild(this._scrollbar.getDomNode()),this._overflowGuardContainer.appendChild(d.getDomNode()),this._overflowGuardContainer.appendChild(this._textAreaHandler.textArea),this._overflowGuardContainer.appendChild(this._textAreaHandler.textAreaCover),this._overflowGuardContainer.appendChild(this._overlayWidgets.getDomNode()),this._overflowGuardContainer.appendChild(_.getDomNode()),this._overflowGuardContainer.appendChild(p.domNode),this.domNode.appendChild(this._overflowGuardContainer),r?(r.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode.domNode),r.appendChild(this._overlayWidgets.overflowingOverlayWidgetsDomNode.domNode)):(this.domNode.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode),this.domNode.appendChild(this._overlayWidgets.overflowingOverlayWidgetsDomNode)),this._applyLayout(),this._pointerHandler=this._register(new lne(this._context,l,this._createPointerHandlerHelper()))}_computeGlyphMarginLanes(){const e=this._context.viewModel.model,t=this._context.viewModel.glyphLanes;let i=[],n=0;i=i.concat(e.getAllMarginDecorations().map(s=>{const r=s.options.glyphMargin?.position??Ao.Center;return n=Math.max(n,s.range.endLineNumber),{range:s.range,lane:r,persist:s.options.glyphMargin?.persistLane}})),i=i.concat(this._glyphMarginWidgets.getWidgets().map(s=>{const r=e.validateRange(s.preference.range);return n=Math.max(n,r.endLineNumber),{range:r,lane:s.preference.lane}})),i.sort((s,r)=>I.compareRangesUsingStarts(s.range,r.range)),t.reset(n);for(const s of i)t.push(s.lane,s.range,s.persist);return t}_createPointerHandlerHelper(){return{viewDomNode:this.domNode.domNode,linesContentDomNode:this._linesContent.domNode,viewLinesDomNode:this._viewLines.getDomNode().domNode,focusTextArea:()=>{this.focus()},dispatchTextAreaEvent:e=>{this._textAreaHandler.textArea.domNode.dispatchEvent(e)},getLastRenderData:()=>{const e=this._viewCursors.getLastRenderData()||[],t=this._textAreaHandler.getLastRenderData();return new Yie(e,t)},renderNow:()=>{this.render(!0,!1)},shouldSuppressMouseDownOnViewZone:e=>this._viewZones.shouldSuppressMouseDownOnViewZone(e),shouldSuppressMouseDownOnWidget:e=>this._contentWidgets.shouldSuppressMouseDownOnWidget(e),getPositionFromDOMInfo:(e,t)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getPositionFromDOMInfo(e,t)),visibleRangeForPosition:(e,t)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(new P(e,t))),getLineWidth:e=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getLineWidth(e))}}_createTextAreaHandlerHelper(){return{visibleRangeForPosition:e=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(e))}}_applyLayout(){const t=this._context.configuration.options.get(146);this.domNode.setWidth(t.width),this.domNode.setHeight(t.height),this._overflowGuardContainer.setWidth(t.width),this._overflowGuardContainer.setHeight(t.height),this._linesContent.setWidth(16777216),this._linesContent.setHeight(16777216)}_getEditorClassName(){const e=this._textAreaHandler.isFocused()?" focused":"";return this._context.configuration.options.get(143)+" "+gk(this._context.theme.type)+e}handleEvents(e){super.handleEvents(e),this._scheduleRender()}onConfigurationChanged(e){return this.domNode.setClassName(this._getEditorClassName()),this._applyLayout(),!1}onCursorStateChanged(e){return this._selections=e.selections,!1}onDecorationsChanged(e){return e.affectsGlyphMargin&&(this._shouldRecomputeGlyphMarginLanes=!0),!1}onFocusChanged(e){return this.domNode.setClassName(this._getEditorClassName()),!1}onThemeChanged(e){return this._context.theme.update(e.theme),this.domNode.setClassName(this._getEditorClassName()),!1}dispose(){this._renderAnimationFrame!==null&&(this._renderAnimationFrame.dispose(),this._renderAnimationFrame=null),this._contentWidgets.overflowingContentWidgetsDomNode.domNode.remove(),this._context.removeEventHandler(this),this._viewLines.dispose();for(const e of this._viewParts)e.dispose();super.dispose()}_scheduleRender(){if(this._store.isDisposed)throw new nt;if(this._renderAnimationFrame===null){const e=this._createCoordinatedRendering();this._renderAnimationFrame=AI.INSTANCE.scheduleCoordinatedRendering({window:fe(this.domNode?.domNode),prepareRenderText:()=>{if(this._store.isDisposed)throw new nt;try{return e.prepareRenderText()}finally{this._renderAnimationFrame=null}},renderText:()=>{if(this._store.isDisposed)throw new nt;return e.renderText()},prepareRender:(t,i)=>{if(this._store.isDisposed)throw new nt;return e.prepareRender(t,i)},render:(t,i)=>{if(this._store.isDisposed)throw new nt;return e.render(t,i)}})}}_flushAccumulatedAndRenderNow(){const e=this._createCoordinatedRendering();cc(()=>e.prepareRenderText());const t=cc(()=>e.renderText());if(t){const[i,n]=t;cc(()=>e.prepareRender(i,n)),cc(()=>e.render(i,n))}}_getViewPartsToRender(){const e=[];let t=0;for(const i of this._viewParts)i.shouldRender()&&(e[t++]=i);return e}_createCoordinatedRendering(){return{prepareRenderText:()=>{if(this._shouldRecomputeGlyphMarginLanes){this._shouldRecomputeGlyphMarginLanes=!1;const e=this._computeGlyphMarginLanes();this._context.configuration.setGlyphMarginDecorationLaneCount(e.requiredLanes)}lc.onRenderStart()},renderText:()=>{if(!this.domNode.domNode.isConnected)return null;let e=this._getViewPartsToRender();if(!this._viewLines.shouldRender()&&e.length===0)return null;const t=this._context.viewLayout.getLinesViewportData();this._context.viewModel.setViewport(t.startLineNumber,t.endLineNumber,t.centeredLineNumber);const i=new Nse(this._selections,t,this._context.viewLayout.getWhitespaceViewportData(),this._context.viewModel);return this._contentWidgets.shouldRender()&&this._contentWidgets.onBeforeRender(i),this._viewLines.shouldRender()&&(this._viewLines.renderText(i),this._viewLines.onDidRender(),e=this._getViewPartsToRender()),[e,new Uie(this._context.viewLayout,i,this._viewLines)]},prepareRender:(e,t)=>{for(const i of e)i.prepareRender(t)},render:(e,t)=>{for(const i of e)i.render(t),i.onDidRender()}}}delegateVerticalScrollbarPointerDown(e){this._scrollbar.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){this._scrollbar.delegateScrollFromMouseWheelEvent(e)}restoreState(e){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:e.scrollTop,scrollLeft:e.scrollLeft},1),this._context.viewModel.visibleLinesStabilized()}getOffsetForColumn(e,t){const i=this._context.viewModel.model.validatePosition({lineNumber:e,column:t}),n=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(i);this._flushAccumulatedAndRenderNow();const s=this._viewLines.visibleRangeForPosition(new P(n.lineNumber,n.column));return s?s.left:-1}getTargetAtClientPoint(e,t){const i=this._pointerHandler.getTargetAtClientPoint(e,t);return i?Iy.convertViewToModelMouseTarget(i,this._context.viewModel.coordinatesConverter):null}createOverviewRuler(e){return new vse(this._context,e)}change(e){this._viewZones.changeViewZones(e),this._scheduleRender()}render(e,t){if(t){this._viewLines.forceShouldRender();for(const i of this._viewParts)i.forceShouldRender()}e?this._flushAccumulatedAndRenderNow():this._scheduleRender()}writeScreenReaderContent(e){this._textAreaHandler.writeScreenReaderContent(e)}focus(){this._textAreaHandler.focusTextArea()}isFocused(){return this._textAreaHandler.isFocused()}setAriaOptions(e){this._textAreaHandler.setAriaOptions(e)}addContentWidget(e){this._contentWidgets.addWidget(e.widget),this.layoutContentWidget(e),this._scheduleRender()}layoutContentWidget(e){this._contentWidgets.setWidgetPosition(e.widget,e.position?.position??null,e.position?.secondaryPosition??null,e.position?.preference??null,e.position?.positionAffinity??null),this._scheduleRender()}removeContentWidget(e){this._contentWidgets.removeWidget(e.widget),this._scheduleRender()}addOverlayWidget(e){this._overlayWidgets.addWidget(e.widget),this.layoutOverlayWidget(e),this._scheduleRender()}layoutOverlayWidget(e){this._overlayWidgets.setWidgetPosition(e.widget,e.position)&&this._scheduleRender()}removeOverlayWidget(e){this._overlayWidgets.removeWidget(e.widget),this._scheduleRender()}addGlyphMarginWidget(e){this._glyphMarginWidgets.addWidget(e.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}layoutGlyphMarginWidget(e){const t=e.position;this._glyphMarginWidgets.setWidgetPosition(e.widget,t)&&(this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender())}removeGlyphMarginWidget(e){this._glyphMarginWidgets.removeWidget(e.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}};RI=Rse([Ase(6,ke)],RI);function cc(o){try{return o()}catch(e){return Ze(e),null}}const s0=class s0{constructor(){this._coordinatedRenderings=[],this._animationFrameRunners=new Map}scheduleCoordinatedRendering(e){return this._coordinatedRenderings.push(e),this._scheduleRender(e.window),{dispose:()=>{const t=this._coordinatedRenderings.indexOf(e);if(t!==-1&&(this._coordinatedRenderings.splice(t,1),this._coordinatedRenderings.length===0)){for(const[i,n]of this._animationFrameRunners)n.dispose();this._animationFrameRunners.clear()}}}}_scheduleRender(e){if(!this._animationFrameRunners.has(e)){const t=()=>{this._animationFrameRunners.delete(e),this._onRenderScheduled()};this._animationFrameRunners.set(e,pC(e,t,100))}}_onRenderScheduled(){const e=this._coordinatedRenderings.slice(0);this._coordinatedRenderings=[];for(const i of e)cc(()=>i.prepareRenderText());const t=[];for(let i=0,n=e.length;is.renderText())}for(let i=0,n=e.length;is.prepareRender(a,l))}for(let i=0,n=e.length;is.render(a,l))}}};s0.INSTANCE=new s0;let AI=s0;class pp{constructor(e,t,i,n,s){this.injectionOffsets=e,this.injectionOptions=t,this.breakOffsets=i,this.breakOffsetsVisibleColumn=n,this.wrappedTextIndentLength=s}getOutputLineCount(){return this.breakOffsets.length}getMinOutputOffset(e){return e>0?this.wrappedTextIndentLength:0}getLineLength(e){const t=e>0?this.breakOffsets[e-1]:0;let n=this.breakOffsets[e]-t;return e>0&&(n+=this.wrappedTextIndentLength),n}getMaxOutputOffset(e){return this.getLineLength(e)}translateToInputOffset(e,t){e>0&&(t=Math.max(0,t-this.wrappedTextIndentLength));let n=e===0?t:this.breakOffsets[e-1]+t;if(this.injectionOffsets!==null)for(let s=0;sthis.injectionOffsets[s];s++)n0?this.breakOffsets[s-1]:0,t===0)if(e<=r)n=s-1;else if(e>l)i=s+1;else break;else if(e=l)i=s+1;else break}let a=e-r;return s>0&&(a+=this.wrappedTextIndentLength),new n1(s,a)}normalizeOutputPosition(e,t,i){if(this.injectionOffsets!==null){const n=this.outputPositionToOffsetInInputWithInjections(e,t),s=this.normalizeOffsetInInputWithInjectionsAroundInjections(n,i);if(s!==n)return this.offsetInInputWithInjectionsToOutputPosition(s,i)}if(i===0){if(e>0&&t===this.getMinOutputOffset(e))return new n1(e-1,this.getMaxOutputOffset(e-1))}else if(i===1){const n=this.getOutputLineCount()-1;if(e0&&(t=Math.max(0,t-this.wrappedTextIndentLength)),(e>0?this.breakOffsets[e-1]:0)+t}normalizeOffsetInInputWithInjectionsAroundInjections(e,t){const i=this.getInjectedTextAtOffset(e);if(!i)return e;if(t===2){if(e===i.offsetInInputWithInjections+i.length&&$O(this.injectionOptions[i.injectedTextIndex].cursorStops))return i.offsetInInputWithInjections+i.length;{let n=i.offsetInInputWithInjections;if(KO(this.injectionOptions[i.injectedTextIndex].cursorStops))return n;let s=i.injectedTextIndex-1;for(;s>=0&&this.injectionOffsets[s]===this.injectionOffsets[i.injectedTextIndex]&&!($O(this.injectionOptions[s].cursorStops)||(n-=this.injectionOptions[s].content.length,KO(this.injectionOptions[s].cursorStops)));)s--;return n}}else if(t===1||t===4){let n=i.offsetInInputWithInjections+i.length,s=i.injectedTextIndex;for(;s+1=0&&this.injectionOffsets[s-1]===this.injectionOffsets[s];)n-=this.injectionOptions[s-1].content.length,s--;return n}z0()}getInjectedText(e,t){const i=this.outputPositionToOffsetInInputWithInjections(e,t),n=this.getInjectedTextAtOffset(i);return n?{options:this.injectionOptions[n.injectedTextIndex]}:null}getInjectedTextAtOffset(e){const t=this.injectionOffsets,i=this.injectionOptions;if(t!==null){let n=0;for(let s=0;se)break;if(e<=l)return{injectedTextIndex:s,offsetInInputWithInjections:a,length:r};n+=r}}}}function $O(o){return o==null?!0:o===gr.Right||o===gr.Both}function KO(o){return o==null?!0:o===gr.Left||o===gr.Both}class n1{constructor(e,t){this.outputLineIndex=e,this.outputOffset=t}toString(){return`${this.outputLineIndex}:${this.outputOffset}`}toPosition(e){return new P(e+this.outputLineIndex,this.outputOffset+1)}}const Pse=Kc("domLineBreaksComputer",{createHTML:o=>o});class q2{static create(e){return new q2(new WeakRef(e))}constructor(e){this.targetWindow=e}createLineBreaksComputer(e,t,i,n,s){const r=[],a=[];return{addRequest:(l,c,d)=>{r.push(l),a.push(c)},finalize:()=>Ose(A5(this.targetWindow.deref()),r,e,t,i,n,s,a)}}}function Ose(o,e,t,i,n,s,r,a){function l(N){const H=a[N];if(H){const F=_r.applyInjectedText(e[N],H),W=H.map(B=>B.options),j=H.map(B=>B.column-1);return new pp(j,W,[F.length],[],0)}else return null}if(n===-1){const N=[];for(let H=0,F=e.length;Hc?(F=0,W=0):j=c-ne}const B=H.substr(F),G=Fse(B,W,i,j,g,u);p[N]=F,_[N]=W,b[N]=B,C[N]=G[0],w[N]=G[1]}const v=g.build(),y=Pse?.createHTML(v)??v;f.innerHTML=y,f.style.position="absolute",f.style.top="10000",r==="keepAll"?(f.style.wordBreak="keep-all",f.style.overflowWrap="anywhere"):(f.style.wordBreak="inherit",f.style.overflowWrap="break-word"),o.document.body.appendChild(f);const x=document.createRange(),L=Array.prototype.slice.call(f.children,0),E=[];for(let N=0;Nse.options),ae=de.map(se=>se.column-1)):(ne=null,ae=null),E[N]=new pp(ae,ne,F,G,j)}return f.remove(),E}function Fse(o,e,t,i,n,s){if(s!==0){const u=String(s);n.appendString('
    ');const r=o.length;let a=e,l=0;const c=[],d=[];let h=0");for(let u=0;u"),c[u]=l,d[u]=a;const f=h;h=u+1"),c[o.length]=l,d[o.length]=a,n.appendString("
    "),[c,d]}function Bse(o,e,t,i){if(t.length<=1)return null;const n=Array.prototype.slice.call(e.children,0),s=[];try{PI(o,n,i,0,null,t.length-1,null,s)}catch(r){return console.log(r),null}return s.length===0?null:(s.push(t.length),s)}function PI(o,e,t,i,n,s,r,a){if(i===s||(n=n||rL(o,e,t[i],t[i+1]),r=r||rL(o,e,t[s],t[s+1]),Math.abs(n[0].top-r[0].top)<=.1))return;if(i+1===s){a.push(s);return}const l=i+(s-i)/2|0,c=rL(o,e,t[l],t[l+1]);PI(o,e,t,i,n,l,c,a),PI(o,e,t,l,c,s,r,a)}function rL(o,e,t,i){return o.setStart(e[t/16384|0].firstChild,t%16384),o.setEnd(e[i/16384|0].firstChild,i%16384),o.getClientRects()}class Wse extends z{constructor(){super(),this._editor=null,this._instantiationService=null,this._instances=this._register(new RN),this._pending=new Map,this._finishedInstantiation=[],this._finishedInstantiation[0]=!1,this._finishedInstantiation[1]=!1,this._finishedInstantiation[2]=!1,this._finishedInstantiation[3]=!1}initialize(e,t,i){this._editor=e,this._instantiationService=i;for(const n of t){if(this._pending.has(n.id)){Ze(new Error(`Cannot have two contributions with the same id ${n.id}`));continue}this._pending.set(n.id,n)}this._instantiateSome(0),this._register(kb(fe(this._editor.getDomNode()),()=>{this._instantiateSome(1)})),this._register(kb(fe(this._editor.getDomNode()),()=>{this._instantiateSome(2)})),this._register(kb(fe(this._editor.getDomNode()),()=>{this._instantiateSome(3)},5e3))}saveViewState(){const e={};for(const[t,i]of this._instances)typeof i.saveViewState=="function"&&(e[t]=i.saveViewState());return e}restoreViewState(e){for(const[t,i]of this._instances)typeof i.restoreViewState=="function"&&i.restoreViewState(e[t])}get(e){return this._instantiateById(e),this._instances.get(e)||null}onBeforeInteractionEvent(){this._instantiateSome(2)}onAfterModelAttached(){return kb(fe(this._editor?.getDomNode()),()=>{this._instantiateSome(1)},50)}_instantiateSome(e){if(this._finishedInstantiation[e])return;this._finishedInstantiation[e]=!0;const t=this._findPendingContributionsByInstantiation(e);for(const i of t)this._instantiateById(i.id)}_findPendingContributionsByInstantiation(e){const t=[];for(const[,i]of this._pending)i.instantiation===e&&t.push(i);return t}_instantiateById(e){const t=this._pending.get(e);if(t){if(this._pending.delete(e),!this._instantiationService||!this._editor)throw new Error("Cannot instantiate contributions before being initialized!");try{const i=this._instantiationService.createInstance(t.ctor,this._editor);this._instances.set(t.id,i),typeof i.restoreViewState=="function"&&t.instantiation!==0&&console.warn(`Editor contribution '${t.id}' should be eager instantiated because it uses saveViewState / restoreViewState.`)}catch(i){Ze(i)}}}}class N8{constructor(e,t,i,n,s,r,a){this.id=e,this.label=t,this.alias=i,this.metadata=n,this._precondition=s,this._run=r,this._contextKeyService=a}isSupported(){return this._contextKeyService.contextMatchesRules(this._precondition)}run(e){return this.isSupported()?this._run(e):Promise.resolve(void 0)}}class G2{static create(e){return new G2(e.get(135),e.get(134))}constructor(e,t){this.classifier=new Hse(e,t)}createLineBreaksComputer(e,t,i,n,s){const r=[],a=[],l=[];return{addRequest:(c,d,h)=>{r.push(c),a.push(d),l.push(h)},finalize:()=>{const c=e.typicalFullwidthCharacterWidth/e.typicalHalfwidthCharacterWidth,d=[];for(let h=0,u=r.length;h=0&&e<256?this._asciiMap[e]:e>=12352&&e<=12543||e>=13312&&e<=19903||e>=19968&&e<=40959?3:this._map.get(e)||this._defaultValue}}let OI=[],FI=[];function Vse(o,e,t,i,n,s,r,a){if(n===-1)return null;const l=t.length;if(l<=1)return null;const c=a==="keepAll",d=e.breakOffsets,h=e.breakOffsetsVisibleColumn,u=T8(t,i,n,s,r),f=n-u,g=OI,p=FI;let _=0,b=0,C=0,w=n;const v=d.length;let y=0;if(y>=0){let x=Math.abs(h[y]-w);for(;y+1=x)break;x=L,y++}}for(;yx&&(x=b,L=C);let E=0,N=0,H=0,F=0;if(L<=w){let j=L,B=x===0?0:t.charCodeAt(x-1),G=x===0?0:o.get(B),ne=!0;for(let ae=x;aeb&&BI(B,G,se,be,c)&&(E=de,N=j),j+=we,j>w){de>b?(H=de,F=j-we):(H=ae+1,F=j),j-N>f&&(E=0),ne=!1;break}B=se,G=be}if(ne){_>0&&(g[_]=d[d.length-1],p[_]=h[d.length-1],_++);break}}if(E===0){let j=L,B=t.charCodeAt(x),G=o.get(B),ne=!1;for(let ae=x-1;ae>=b;ae--){const de=ae+1,se=t.charCodeAt(ae);if(se===9){ne=!0;break}let be,we;if(Mh(se)?(ae--,be=0,we=2):(be=o.get(se),we=Rc(se)?s:1),j<=w){if(H===0&&(H=de,F=j),j<=w-f)break;if(BI(se,be,B,G,c)){E=de,N=j;break}}j-=we,B=se,G=be}if(E!==0){const ae=f-(F-N);if(ae<=i){const de=t.charCodeAt(H);let se;wi(de)?se=2:se=_p(de,F,i,s),ae-se<0&&(E=0)}}if(ne){y--;continue}}if(E===0&&(E=H,N=F),E<=b){const j=t.charCodeAt(b);wi(j)?(E=b+2,N=C+2):(E=b+1,N=C+_p(j,C,i,s))}for(b=E,g[_]=E,C=N,p[_]=N,_++,w=N+f;y<0||y=W)break;W=j,y++}}return _===0?null:(g.length=_,p.length=_,OI=e.breakOffsets,FI=e.breakOffsetsVisibleColumn,e.breakOffsets=g,e.breakOffsetsVisibleColumn=p,e.wrappedTextIndentLength=u,e)}function zse(o,e,t,i,n,s,r,a){const l=_r.applyInjectedText(e,t);let c,d;if(t&&t.length>0?(c=t.map(N=>N.options),d=t.map(N=>N.column-1)):(c=null,d=null),n===-1)return c?new pp(d,c,[l.length],[],0):null;const h=l.length;if(h<=1)return c?new pp(d,c,[l.length],[],0):null;const u=a==="keepAll",f=T8(l,i,n,s,r),g=n-f,p=[],_=[];let b=0,C=0,w=0,v=n,y=l.charCodeAt(0),x=o.get(y),L=_p(y,0,i,s),E=1;wi(y)&&(L+=1,y=l.charCodeAt(1),x=o.get(y),E++);for(let N=E;Nv&&((C===0||L-w>g)&&(C=H,w=L-j),p[b]=C,_[b]=w,b++,v=w+g,C=0),y=F,x=W}return b===0&&(!t||t.length===0)?null:(p[b]=h,_[b]=L,new pp(d,c,p,_,f))}function _p(o,e,t,i){return o===9?t-e%t:Rc(o)||o<32?i:1}function jO(o,e){return e-o%e}function BI(o,e,t,i,n){return t!==32&&(e===2&&i!==2||e!==1&&i===1||!n&&e===3&&i!==2||!n&&i===3&&e!==1)}function T8(o,e,t,i,n){let s=0;if(n!==0){const r=zn(o);if(r!==-1){for(let l=0;lt&&(s=0)}}return s}class Fv{constructor(e){this._selTrackedRange=null,this._trackSelection=!0,this._setState(e,new Ri(new I(1,1,1,1),0,0,new P(1,1),0),new Ri(new I(1,1,1,1),0,0,new P(1,1),0))}dispose(e){this._removeTrackedRange(e)}startTrackingSelection(e){this._trackSelection=!0,this._updateTrackedRange(e)}stopTrackingSelection(e){this._trackSelection=!1,this._removeTrackedRange(e)}_updateTrackedRange(e){this._trackSelection&&(this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,this.modelState.selection,0))}_removeTrackedRange(e){this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,null,0)}asCursorState(){return new Ke(this.modelState,this.viewState)}readSelectionFromMarkers(e){const t=e.model._getTrackedRange(this._selTrackedRange);return this.modelState.selection.isEmpty()&&!t.isEmpty()?Fe.fromRange(t.collapseToEnd(),this.modelState.selection.getDirection()):Fe.fromRange(t,this.modelState.selection.getDirection())}ensureValidState(e){this._setState(e,this.modelState,this.viewState)}setState(e,t,i){this._setState(e,t,i)}static _validatePositionWithCache(e,t,i,n){return t.equals(i)?n:e.normalizePosition(t,2)}static _validateViewState(e,t){const i=t.position,n=t.selectionStart.getStartPosition(),s=t.selectionStart.getEndPosition(),r=e.normalizePosition(i,2),a=this._validatePositionWithCache(e,n,i,r),l=this._validatePositionWithCache(e,s,n,a);return i.equals(r)&&n.equals(a)&&s.equals(l)?t:new Ri(I.fromPositions(a,l),t.selectionStartKind,t.selectionStartLeftoverVisibleColumns+n.column-a.column,r,t.leftoverVisibleColumns+i.column-r.column)}_setState(e,t,i){if(i&&(i=Fv._validateViewState(e.viewModel,i)),t){const n=e.model.validateRange(t.selectionStart),s=t.selectionStart.equalsRange(n)?t.selectionStartLeftoverVisibleColumns:0,r=e.model.validatePosition(t.position),a=t.position.equals(r)?t.leftoverVisibleColumns:0;t=new Ri(n,t.selectionStartKind,s,r,a)}else{if(!i)return;const n=e.model.validateRange(e.coordinatesConverter.convertViewRangeToModelRange(i.selectionStart)),s=e.model.validatePosition(e.coordinatesConverter.convertViewPositionToModelPosition(i.position));t=new Ri(n,i.selectionStartKind,i.selectionStartLeftoverVisibleColumns,s,i.leftoverVisibleColumns)}if(i){const n=e.coordinatesConverter.validateViewRange(i.selectionStart,t.selectionStart),s=e.coordinatesConverter.validateViewPosition(i.position,t.position);i=new Ri(n,t.selectionStartKind,t.selectionStartLeftoverVisibleColumns,s,t.leftoverVisibleColumns)}else{const n=e.coordinatesConverter.convertModelPositionToViewPosition(new P(t.selectionStart.startLineNumber,t.selectionStart.startColumn)),s=e.coordinatesConverter.convertModelPositionToViewPosition(new P(t.selectionStart.endLineNumber,t.selectionStart.endColumn)),r=new I(n.lineNumber,n.column,s.lineNumber,s.column),a=e.coordinatesConverter.convertModelPositionToViewPosition(t.position);i=new Ri(r,t.selectionStartKind,t.selectionStartLeftoverVisibleColumns,a,t.leftoverVisibleColumns)}this.modelState=t,this.viewState=i,this._updateTrackedRange(e)}}class qO{constructor(e){this.context=e,this.cursors=[new Fv(e)],this.lastAddedCursorIndex=0}dispose(){for(const e of this.cursors)e.dispose(this.context)}startTrackingSelections(){for(const e of this.cursors)e.startTrackingSelection(this.context)}stopTrackingSelections(){for(const e of this.cursors)e.stopTrackingSelection(this.context)}updateContext(e){this.context=e}ensureValidState(){for(const e of this.cursors)e.ensureValidState(this.context)}readSelectionFromMarkers(){return this.cursors.map(e=>e.readSelectionFromMarkers(this.context))}getAll(){return this.cursors.map(e=>e.asCursorState())}getViewPositions(){return this.cursors.map(e=>e.viewState.position)}getTopMostViewPosition(){return UU(this.cursors,rs(e=>e.viewState.position,P.compare)).viewState.position}getBottomMostViewPosition(){return zU(this.cursors,rs(e=>e.viewState.position,P.compare)).viewState.position}getSelections(){return this.cursors.map(e=>e.modelState.selection)}getViewSelections(){return this.cursors.map(e=>e.viewState.selection)}setSelections(e){this.setStates(Ke.fromModelSelections(e))}getPrimaryCursor(){return this.cursors[0].asCursorState()}setStates(e){e!==null&&(this.cursors[0].setState(this.context,e[0].modelState,e[0].viewState),this._setSecondaryStates(e.slice(1)))}_setSecondaryStates(e){const t=this.cursors.length-1,i=e.length;if(ti){const n=t-i;for(let s=0;s=e+1&&this.lastAddedCursorIndex--,this.cursors[e+1].dispose(this.context),this.cursors.splice(e+1,1)}normalize(){if(this.cursors.length===1)return;const e=this.cursors.slice(0),t=[];for(let i=0,n=e.length;ii.selection,I.compareRangesUsingStarts));for(let i=0;ih&&p.index--;e.splice(h,1),t.splice(d,1),this._removeSecondaryCursor(h-1),i--}}}}class GO{constructor(e,t,i,n){this._cursorContextBrand=void 0,this.model=e,this.viewModel=t,this.coordinatesConverter=i,this.cursorConfig=n}}class Use{constructor(){this.type=0}}class $se{constructor(){this.type=1}}class Kse{constructor(e){this.type=2,this._source=e}hasChanged(e){return this._source.hasChanged(e)}}class jse{constructor(e,t,i){this.selections=e,this.modelSelections=t,this.reason=i,this.type=3}}class rd{constructor(e){this.type=4,e?(this.affectsMinimap=e.affectsMinimap,this.affectsOverviewRuler=e.affectsOverviewRuler,this.affectsGlyphMargin=e.affectsGlyphMargin,this.affectsLineNumber=e.affectsLineNumber):(this.affectsMinimap=!0,this.affectsOverviewRuler=!0,this.affectsGlyphMargin=!0,this.affectsLineNumber=!0)}}class s1{constructor(){this.type=5}}class qse{constructor(e){this.type=6,this.isFocused=e}}class Gse{constructor(){this.type=7}}class o1{constructor(){this.type=8}}class M8{constructor(e,t){this.fromLineNumber=e,this.count=t,this.type=9}}class WI{constructor(e,t){this.type=10,this.fromLineNumber=e,this.toLineNumber=t}}class HI{constructor(e,t){this.type=11,this.fromLineNumber=e,this.toLineNumber=t}}class bp{constructor(e,t,i,n,s,r,a){this.source=e,this.minimalReveal=t,this.range=i,this.selections=n,this.verticalType=s,this.revealHorizontal=r,this.scrollType=a,this.type=12}}class Zse{constructor(e){this.type=13,this.scrollWidth=e.scrollWidth,this.scrollLeft=e.scrollLeft,this.scrollHeight=e.scrollHeight,this.scrollTop=e.scrollTop,this.scrollWidthChanged=e.scrollWidthChanged,this.scrollLeftChanged=e.scrollLeftChanged,this.scrollHeightChanged=e.scrollHeightChanged,this.scrollTopChanged=e.scrollTopChanged}}class Yse{constructor(e){this.theme=e,this.type=14}}class Qse{constructor(e){this.type=15,this.ranges=e}}class Xse{constructor(){this.type=16}}let Jse=class{constructor(){this.type=17}};class eoe extends z{constructor(){super(),this._onEvent=this._register(new A),this.onEvent=this._onEvent.event,this._eventHandlers=[],this._viewEventQueue=null,this._isConsumingViewEventQueue=!1,this._collector=null,this._collectorCnt=0,this._outgoingEvents=[]}emitOutgoingEvent(e){this._addOutgoingEvent(e),this._emitOutgoingEvents()}_addOutgoingEvent(e){for(let t=0,i=this._outgoingEvents.length;t0;){if(this._collector||this._isConsumingViewEventQueue)return;const e=this._outgoingEvents.shift();e.isNoOp()||this._onEvent.fire(e)}}addViewEventHandler(e){for(let t=0,i=this._eventHandlers.length;t0&&this._emitMany(t)}this._emitOutgoingEvents()}emitSingleViewEvent(e){try{this.beginEmitViewEvents().emitViewEvent(e)}finally{this.endEmitViewEvents()}}_emitMany(e){this._viewEventQueue?this._viewEventQueue=this._viewEventQueue.concat(e):this._viewEventQueue=e,this._isConsumingViewEventQueue||this._consumeViewEventQueue()}_consumeViewEventQueue(){try{this._isConsumingViewEventQueue=!0,this._doConsumeQueue()}finally{this._isConsumingViewEventQueue=!1}}_doConsumeQueue(){for(;this._viewEventQueue;){const e=this._viewEventQueue;this._viewEventQueue=null;const t=this._eventHandlers.slice(0);for(const i of t)i.handleEvents(e)}}}class toe{constructor(){this.viewEvents=[],this.outgoingEvents=[]}emitViewEvent(e){this.viewEvents.push(e)}emitOutgoingEvent(e){this.outgoingEvents.push(e)}}class Z2{constructor(e,t,i,n){this.kind=0,this._oldContentWidth=e,this._oldContentHeight=t,this.contentWidth=i,this.contentHeight=n,this.contentWidthChanged=this._oldContentWidth!==this.contentWidth,this.contentHeightChanged=this._oldContentHeight!==this.contentHeight}isNoOp(){return!this.contentWidthChanged&&!this.contentHeightChanged}attemptToMerge(e){return e.kind!==this.kind?null:new Z2(this._oldContentWidth,this._oldContentHeight,e.contentWidth,e.contentHeight)}}class Y2{constructor(e,t){this.kind=1,this.oldHasFocus=e,this.hasFocus=t}isNoOp(){return this.oldHasFocus===this.hasFocus}attemptToMerge(e){return e.kind!==this.kind?null:new Y2(this.oldHasFocus,e.hasFocus)}}class Q2{constructor(e,t,i,n,s,r,a,l){this.kind=2,this._oldScrollWidth=e,this._oldScrollLeft=t,this._oldScrollHeight=i,this._oldScrollTop=n,this.scrollWidth=s,this.scrollLeft=r,this.scrollHeight=a,this.scrollTop=l,this.scrollWidthChanged=this._oldScrollWidth!==this.scrollWidth,this.scrollLeftChanged=this._oldScrollLeft!==this.scrollLeft,this.scrollHeightChanged=this._oldScrollHeight!==this.scrollHeight,this.scrollTopChanged=this._oldScrollTop!==this.scrollTop}isNoOp(){return!this.scrollWidthChanged&&!this.scrollLeftChanged&&!this.scrollHeightChanged&&!this.scrollTopChanged}attemptToMerge(e){return e.kind!==this.kind?null:new Q2(this._oldScrollWidth,this._oldScrollLeft,this._oldScrollHeight,this._oldScrollTop,e.scrollWidth,e.scrollLeft,e.scrollHeight,e.scrollTop)}}class ioe{constructor(){this.kind=3}isNoOp(){return!1}attemptToMerge(e){return e.kind!==this.kind?null:this}}class noe{constructor(){this.kind=4}isNoOp(){return!1}attemptToMerge(e){return e.kind!==this.kind?null:this}}class Bv{constructor(e,t,i,n,s,r,a){this.kind=6,this.oldSelections=e,this.selections=t,this.oldModelVersionId=i,this.modelVersionId=n,this.source=s,this.reason=r,this.reachedMaxCursorCount=a}static _selectionsAreEqual(e,t){if(!e&&!t)return!0;if(!e||!t)return!1;const i=e.length,n=t.length;if(i!==n)return!1;for(let s=0;s0){const e=this._cursors.getSelections();for(let t=0;tr&&(n=n.slice(0,r),s=!0);const a=Cp.from(this._model,this);return this._cursors.setStates(n),this._cursors.normalize(),this._columnSelectData=null,this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(e,t,i,a,s)}setCursorColumnSelectData(e){this._columnSelectData=e}revealAll(e,t,i,n,s,r){const a=this._cursors.getViewPositions();let l=null,c=null;a.length>1?c=this._cursors.getViewSelections():l=I.fromPositions(a[0],a[0]),e.emitViewEvent(new bp(t,i,l,c,n,s,r))}revealPrimary(e,t,i,n,s,r){const l=[this._cursors.getPrimaryCursor().viewState.selection];e.emitViewEvent(new bp(t,i,null,l,n,s,r))}saveState(){const e=[],t=this._cursors.getSelections();for(let i=0,n=t.length;i0){const s=Ke.fromModelSelections(i.resultingSelection);this.setStates(e,"modelChange",i.isUndoing?5:i.isRedoing?6:2,s)&&this.revealAll(e,"modelChange",!1,0,!0,0)}else{const s=this._cursors.readSelectionFromMarkers();this.setStates(e,"modelChange",2,Ke.fromModelSelections(s))}}}getSelection(){return this._cursors.getPrimaryCursor().modelState.selection}getTopMostViewPosition(){return this._cursors.getTopMostViewPosition()}getBottomMostViewPosition(){return this._cursors.getBottomMostViewPosition()}getCursorColumnSelectData(){if(this._columnSelectData)return this._columnSelectData;const e=this._cursors.getPrimaryCursor(),t=e.viewState.selectionStart.getStartPosition(),i=e.viewState.position;return{isReal:!1,fromViewLineNumber:t.lineNumber,fromViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,t),toViewLineNumber:i.lineNumber,toViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,i)}}getSelections(){return this._cursors.getSelections()}setSelections(e,t,i,n){this.setStates(e,t,n,Ke.fromModelSelections(i))}getPrevEditOperationType(){return this._prevEditOperationType}setPrevEditOperationType(e){this._prevEditOperationType=e}_pushAutoClosedAction(e,t){const i=[],n=[];for(let a=0,l=e.length;a0&&this._pushAutoClosedAction(i,n),this._prevEditOperationType=e.type}e.shouldPushStackElementAfter&&this._model.pushStackElement()}_interpretCommandResult(e){(!e||e.length===0)&&(e=this._cursors.readSelectionFromMarkers()),this._columnSelectData=null,this._cursors.setSelections(e),this._cursors.normalize()}_emitStateChangedIfNecessary(e,t,i,n,s){const r=Cp.from(this._model,this);if(r.equals(n))return!1;const a=this._cursors.getSelections(),l=this._cursors.getViewSelections();if(e.emitViewEvent(new jse(l,a,i)),!n||n.cursorState.length!==r.cursorState.length||r.cursorState.some((c,d)=>!c.modelState.equals(n.cursorState[d].modelState))){const c=n?n.cursorState.map(h=>h.modelState.selection):null,d=n?n.modelVersionId:0;e.emitOutgoingEvent(new Bv(c,a,d,r.modelVersionId,t||"keyboard",i,s))}return!0}_findAutoClosingPairs(e){if(!e.length)return null;const t=[];for(let i=0,n=e.length;i=0)return null;const r=s.text.match(/([)\]}>'"`])([^)\]}>'"`]*)$/);if(!r)return null;const a=r[1],l=this.context.cursorConfig.autoClosingPairs.autoClosingPairsCloseSingleChar.get(a);if(!l||l.length!==1)return null;const c=l[0].open,d=s.text.length-r[2].length-1,h=s.text.lastIndexOf(c,d-1);if(h===-1)return null;t.push([h,d])}return t}executeEdits(e,t,i,n){let s=null;t==="snippet"&&(s=this._findAutoClosingPairs(i)),s&&(i[0]._isTracked=!0);const r=[],a=[],l=this._model.pushEditOperations(this.getSelections(),i,c=>{if(s)for(let h=0,u=s.length;h0&&this._pushAutoClosedAction(r,a)}_executeEdit(e,t,i,n=0){if(this.context.cursorConfig.readOnly)return;const s=Cp.from(this._model,this);this._cursors.stopTrackingSelections(),this._isHandling=!0;try{this._cursors.ensureValidState(),e()}catch(r){Ze(r)}this._isHandling=!1,this._cursors.startTrackingSelections(),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(t,i,n,s,!1)&&this.revealAll(t,i,!1,0,!0,0)}getAutoClosedCharacters(){return ZO.getAllAutoClosedCharacters(this._autoClosedActions)}startComposition(e){this._compositionState=new vp(this._model,this.getSelections())}endComposition(e,t){const i=this._compositionState?this._compositionState.deduceOutcome(this._model,this.getSelections()):null;this._compositionState=null,this._executeEdit(()=>{t==="keyboard"&&this._executeEditOperation(Ed.compositionEndWithInterceptors(this._prevEditOperationType,this.context.cursorConfig,this._model,i,this.getSelections(),this.getAutoClosedCharacters()))},e,t)}type(e,t,i){this._executeEdit(()=>{if(i==="keyboard"){const n=t.length;let s=0;for(;s{const c=l.getPosition();return new Fe(c.lineNumber,c.column+s,c.lineNumber,c.column+s)});this.setSelections(e,r,a,0)}return}this._executeEdit(()=>{this._executeEditOperation(Ed.compositionType(this._prevEditOperationType,this.context.cursorConfig,this._model,this.getSelections(),t,i,n,s))},e,r)}paste(e,t,i,n,s){this._executeEdit(()=>{this._executeEditOperation(Ed.paste(this.context.cursorConfig,this._model,this.getSelections(),t,i,n||[]))},e,s,4)}cut(e,t){this._executeEdit(()=>{this._executeEditOperation(Kh.cut(this.context.cursorConfig,this._model,this.getSelections()))},e,t)}executeCommand(e,t,i){this._executeEdit(()=>{this._cursors.killSecondaryCursors(),this._executeEditOperation(new jn(0,[t],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},e,i)}executeCommands(e,t,i){this._executeEdit(()=>{this._executeEditOperation(new jn(0,t,{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},e,i)}}class Cp{static from(e,t){return new Cp(e.getVersionId(),t.getCursorStates())}constructor(e,t){this.modelVersionId=e,this.cursorState=t}equals(e){if(!e||this.modelVersionId!==e.modelVersionId||this.cursorState.length!==e.cursorState.length)return!1;for(let t=0,i=this.cursorState.length;t=t.length||!t[i].strictContainsRange(e[i]))return!1;return!0}}class uoe{static executeCommands(e,t,i){const n={model:e,selectionsBefore:t,trackedRanges:[],trackedRangesDirection:[]},s=this._innerExecuteCommands(n,i);for(let r=0,a=n.trackedRanges.length;r0&&(r[0]._isTracked=!0);let a=e.model.pushEditOperations(e.selectionsBefore,r,c=>{const d=[];for(let f=0;ff.identifier.minor-g.identifier.minor,u=[];for(let f=0;f0?(d[f].sort(h),u[f]=t[f].computeCursorState(e.model,{getInverseEditOperations:()=>d[f],getTrackedSelection:g=>{const p=parseInt(g,10),_=e.model._getTrackedRange(e.trackedRanges[p]);return e.trackedRangesDirection[p]===0?new Fe(_.startLineNumber,_.startColumn,_.endLineNumber,_.endColumn):new Fe(_.endLineNumber,_.endColumn,_.startLineNumber,_.startColumn)}})):u[f]=e.selectionsBefore[f];return u});a||(a=e.selectionsBefore);const l=[];for(const c in s)s.hasOwnProperty(c)&&l.push(parseInt(c,10));l.sort((c,d)=>d-c);for(const c of l)a.splice(c,1);return a}static _arrayIsEmpty(e){for(let t=0,i=e.length;t{I.isEmpty(h)&&u===""||n.push({identifier:{major:t,minor:s++},range:h,text:u,forceMoveMarkers:f,isAutoWhitespaceEdit:i.insertsAutoWhitespace})};let a=!1;const d={addEditOperation:r,addTrackedEditOperation:(h,u,f)=>{a=!0,r(h,u,f)},trackSelection:(h,u)=>{const f=Fe.liftSelection(h);let g;if(f.isEmpty())if(typeof u=="boolean")u?g=2:g=3;else{const b=e.model.getLineMaxColumn(f.startLineNumber);f.startColumn===b?g=2:g=3}else g=1;const p=e.trackedRanges.length,_=e.model._setTrackedRange(null,f,g);return e.trackedRanges[p]=_,e.trackedRangesDirection[p]=f.getDirection(),p.toString()}};try{i.getEditOperations(e.model,d)}catch(h){return Ze(h),{operations:[],hadTrackedEditOperation:!1}}return{operations:n,hadTrackedEditOperation:a}}static _getLoserCursorMap(e){e=e.slice(0),e.sort((i,n)=>-I.compareRangesUsingEnds(i.range,n.range));const t={};for(let i=1;is.identifier.major?r=n.identifier.major:r=s.identifier.major,t[r.toString()]=!0;for(let a=0;a0&&i--}}return t}}class foe{constructor(e,t,i){this.text=e,this.startSelection=t,this.endSelection=i}}class vp{static _capture(e,t){const i=[];for(const n of t){if(n.startLineNumber!==n.endLineNumber)return null;i.push(new foe(e.getLineContent(n.startLineNumber),n.startColumn-1,n.endColumn-1))}return i}constructor(e,t){this._original=vp._capture(e,t)}deduceOutcome(e,t){if(!this._original)return null;const i=vp._capture(e,t);if(!i||this._original.length!==i.length)return null;const n=[];for(let s=0,r=this._original.length;s>>1;t===e[r].afterLineNumber?i{t=!0,n=n|0,s=s|0,r=r|0,a=a|0;const l=this._instanceId+ ++this._lastWhitespaceId;return this._pendingChanges.insert(new moe(l,n,s,r,a)),l},changeOneWhitespace:(n,s,r)=>{t=!0,s=s|0,r=r|0,this._pendingChanges.change({id:n,newAfterLineNumber:s,newHeight:r})},removeWhitespace:n=>{t=!0,this._pendingChanges.remove({id:n})}})}finally{this._pendingChanges.commit(this)}return t}_commitPendingChanges(e,t,i){if((e.length>0||i.length>0)&&(this._minWidth=-1),e.length+t.length+i.length<=1){for(const l of e)this._insertWhitespace(l);for(const l of t)this._changeOneWhitespace(l.id,l.newAfterLineNumber,l.newHeight);for(const l of i){const c=this._findWhitespaceIndex(l.id);c!==-1&&this._removeWhitespace(c)}return}const n=new Set;for(const l of i)n.add(l.id);const s=new Map;for(const l of t)s.set(l.id,l);const r=l=>{const c=[];for(const d of l)if(!n.has(d.id)){if(s.has(d.id)){const h=s.get(d.id);d.afterLineNumber=h.newAfterLineNumber,d.height=h.newHeight}c.push(d)}return c},a=r(this._arr).concat(r(e));a.sort((l,c)=>l.afterLineNumber===c.afterLineNumber?l.ordinal-c.ordinal:l.afterLineNumber-c.afterLineNumber),this._arr=a,this._prefixSumValidIndex=-1}_checkPendingChanges(){this._pendingChanges.mustCommit()&&this._pendingChanges.commit(this)}_insertWhitespace(e){const t=Cc.findInsertionIndex(this._arr,e.afterLineNumber,e.ordinal);this._arr.splice(t,0,e),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,t-1)}_findWhitespaceIndex(e){const t=this._arr;for(let i=0,n=t.length;it&&(this._arr[i].afterLineNumber-=t-e+1)}}onLinesInserted(e,t){this._checkPendingChanges(),e=e|0,t=t|0,this._lineCount+=t-e+1;for(let i=0,n=this._arr.length;i=t.length||t[a+1].afterLineNumber>=e)return a;i=a+1|0}else n=a-1|0}return-1}_findFirstWhitespaceAfterLineNumber(e){e=e|0;const i=this._findLastWhitespaceBeforeLineNumber(e)+1;return i1?i=this._lineHeight*(e-1):i=0;const n=this.getWhitespaceAccumulatedHeightBeforeLineNumber(e-(t?1:0));return i+n+this._paddingTop}getVerticalOffsetAfterLineNumber(e,t=!1){this._checkPendingChanges(),e=e|0;const i=this._lineHeight*e,n=this.getWhitespaceAccumulatedHeightBeforeLineNumber(e+(t?1:0));return i+n+this._paddingTop}getWhitespaceMinWidth(){if(this._checkPendingChanges(),this._minWidth===-1){let e=0;for(let t=0,i=this._arr.length;tt}isInTopPadding(e){return this._paddingTop===0?!1:(this._checkPendingChanges(),e=t-this._paddingBottom}getLineNumberAtOrAfterVerticalOffset(e){if(this._checkPendingChanges(),e=e|0,e<0)return 1;const t=this._lineCount|0,i=this._lineHeight;let n=1,s=t;for(;n=a+i)n=r+1;else{if(e>=a)return r;s=r}}return n>t?t:n}getLinesViewportData(e,t){this._checkPendingChanges(),e=e|0,t=t|0;const i=this._lineHeight,n=this.getLineNumberAtOrAfterVerticalOffset(e)|0,s=this.getVerticalOffsetForLineNumber(n)|0;let r=this._lineCount|0,a=this.getFirstWhitespaceIndexAfterLineNumber(n)|0;const l=this.getWhitespacesCount()|0;let c,d;a===-1?(a=l,d=r+1,c=0):(d=this.getAfterLineNumberForWhitespaceIndex(a)|0,c=this.getHeightForWhitespaceIndex(a)|0);let h=s,u=h;const f=5e5;let g=0;s>=f&&(g=Math.floor(s/f)*f,g=Math.floor(g/i)*i,u-=g);const p=[],_=e+(t-e)/2;let b=-1;for(let y=n;y<=r;y++){if(b===-1){const x=h,L=h+i;(x<=_&&__)&&(b=y)}for(h+=i,p[y-n]=u,u+=i;d===y;)u+=c,h+=c,a++,a>=l?d=r+1:(d=this.getAfterLineNumberForWhitespaceIndex(a)|0,c=this.getHeightForWhitespaceIndex(a)|0);if(h>=t){r=y;break}}b===-1&&(b=r);const C=this.getVerticalOffsetForLineNumber(r)|0;let w=n,v=r;return wt&&v--,{bigNumbersDelta:g,startLineNumber:n,endLineNumber:r,relativeVerticalOffset:p,centeredLineNumber:b,completelyVisibleStartLineNumber:w,completelyVisibleEndLineNumber:v,lineHeight:this._lineHeight}}getVerticalOffsetForWhitespaceIndex(e){this._checkPendingChanges(),e=e|0;const t=this.getAfterLineNumberForWhitespaceIndex(e);let i;t>=1?i=this._lineHeight*t:i=0;let n;return e>0?n=this.getWhitespacesAccumulatedHeight(e-1):n=0,i+n+this._paddingTop}getWhitespaceIndexAtOrAfterVerticallOffset(e){this._checkPendingChanges(),e=e|0;let t=0,i=this.getWhitespacesCount()-1;if(i<0)return-1;const n=this.getVerticalOffsetForWhitespaceIndex(i),s=this.getHeightForWhitespaceIndex(i);if(e>=n+s)return-1;for(;t=a+l)t=r+1;else{if(e>=a)return r;i=r}}return t}getWhitespaceAtVerticalOffset(e){this._checkPendingChanges(),e=e|0;const t=this.getWhitespaceIndexAtOrAfterVerticallOffset(e);if(t<0||t>=this.getWhitespacesCount())return null;const i=this.getVerticalOffsetForWhitespaceIndex(t);if(i>e)return null;const n=this.getHeightForWhitespaceIndex(t),s=this.getIdForWhitespaceIndex(t),r=this.getAfterLineNumberForWhitespaceIndex(t);return{id:s,afterLineNumber:r,verticalOffset:i,height:n}}getWhitespaceViewportData(e,t){this._checkPendingChanges(),e=e|0,t=t|0;const i=this.getWhitespaceIndexAtOrAfterVerticallOffset(e),n=this.getWhitespacesCount()-1;if(i<0)return[];const s=[];for(let r=i;r<=n;r++){const a=this.getVerticalOffsetForWhitespaceIndex(r),l=this.getHeightForWhitespaceIndex(r);if(a>=t)break;s.push({id:this.getIdForWhitespaceIndex(r),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(r),verticalOffset:a,height:l})}return s}getWhitespaces(){return this._checkPendingChanges(),this._arr.slice(0)}getWhitespacesCount(){return this._checkPendingChanges(),this._arr.length}getIdForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].id}getAfterLineNumberForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].afterLineNumber}getHeightForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].height}},Cc.INSTANCE_COUNT=0,Cc);const _oe=125;class Fm{constructor(e,t,i,n){e=e|0,t=t|0,i=i|0,n=n|0,e<0&&(e=0),t<0&&(t=0),i<0&&(i=0),n<0&&(n=0),this.width=e,this.contentWidth=t,this.scrollWidth=Math.max(e,t),this.height=i,this.contentHeight=n,this.scrollHeight=Math.max(i,n)}equals(e){return this.width===e.width&&this.contentWidth===e.contentWidth&&this.height===e.height&&this.contentHeight===e.contentHeight}}class boe extends z{constructor(e,t){super(),this._onDidContentSizeChange=this._register(new A),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._dimensions=new Fm(0,0,0,0),this._scrollable=this._register(new Vg({forceIntegerValues:!0,smoothScrollDuration:e,scheduleAtNextAnimationFrame:t})),this.onDidScroll=this._scrollable.onScroll}getScrollable(){return this._scrollable}setSmoothScrollDuration(e){this._scrollable.setSmoothScrollDuration(e)}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}getScrollDimensions(){return this._dimensions}setScrollDimensions(e){if(this._dimensions.equals(e))return;const t=this._dimensions;this._dimensions=e,this._scrollable.setScrollDimensions({width:e.width,scrollWidth:e.scrollWidth,height:e.height,scrollHeight:e.scrollHeight},!0);const i=t.contentWidth!==e.contentWidth,n=t.contentHeight!==e.contentHeight;(i||n)&&this._onDidContentSizeChange.fire(new Z2(t.contentWidth,t.contentHeight,e.contentWidth,e.contentHeight))}getFutureScrollPosition(){return this._scrollable.getFutureScrollPosition()}getCurrentScrollPosition(){return this._scrollable.getCurrentScrollPosition()}setScrollPositionNow(e){this._scrollable.setScrollPositionNow(e)}setScrollPositionSmooth(e){this._scrollable.setScrollPositionSmooth(e)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}}class Coe extends z{constructor(e,t,i){super(),this._configuration=e;const n=this._configuration.options,s=n.get(146),r=n.get(84);this._linesLayout=new poe(t,n.get(67),r.top,r.bottom),this._maxLineWidth=0,this._overlayWidgetsMinWidth=0,this._scrollable=this._register(new boe(0,i)),this._configureSmoothScrollDuration(),this._scrollable.setScrollDimensions(new Fm(s.contentWidth,0,s.height,0)),this.onDidScroll=this._scrollable.onDidScroll,this.onDidContentSizeChange=this._scrollable.onDidContentSizeChange,this._updateHeight()}dispose(){super.dispose()}getScrollable(){return this._scrollable.getScrollable()}onHeightMaybeChanged(){this._updateHeight()}_configureSmoothScrollDuration(){this._scrollable.setSmoothScrollDuration(this._configuration.options.get(115)?_oe:0)}onConfigurationChanged(e){const t=this._configuration.options;if(e.hasChanged(67)&&this._linesLayout.setLineHeight(t.get(67)),e.hasChanged(84)){const i=t.get(84);this._linesLayout.setPadding(i.top,i.bottom)}if(e.hasChanged(146)){const i=t.get(146),n=i.contentWidth,s=i.height,r=this._scrollable.getScrollDimensions(),a=r.contentWidth;this._scrollable.setScrollDimensions(new Fm(n,r.contentWidth,s,this._getContentHeight(n,s,a)))}else this._updateHeight();e.hasChanged(115)&&this._configureSmoothScrollDuration()}onFlushed(e){this._linesLayout.onFlushed(e)}onLinesDeleted(e,t){this._linesLayout.onLinesDeleted(e,t)}onLinesInserted(e,t){this._linesLayout.onLinesInserted(e,t)}_getHorizontalScrollbarHeight(e,t){const n=this._configuration.options.get(104);return n.horizontal===2||e>=t?0:n.horizontalScrollbarSize}_getContentHeight(e,t,i){const n=this._configuration.options;let s=this._linesLayout.getLinesTotalHeight();return n.get(106)?s+=Math.max(0,t-n.get(67)-n.get(84).bottom):n.get(104).ignoreHorizontalScrollbarInContentHeight||(s+=this._getHorizontalScrollbarHeight(e,i)),s}_updateHeight(){const e=this._scrollable.getScrollDimensions(),t=e.width,i=e.height,n=e.contentWidth;this._scrollable.setScrollDimensions(new Fm(t,e.contentWidth,i,this._getContentHeight(t,i,n)))}getCurrentViewport(){const e=this._scrollable.getScrollDimensions(),t=this._scrollable.getCurrentScrollPosition();return new CO(t.scrollTop,t.scrollLeft,e.width,e.height)}getFutureViewport(){const e=this._scrollable.getScrollDimensions(),t=this._scrollable.getFutureScrollPosition();return new CO(t.scrollTop,t.scrollLeft,e.width,e.height)}_computeContentWidth(){const e=this._configuration.options,t=this._maxLineWidth,i=e.get(147),n=e.get(50),s=e.get(146);if(i.isViewportWrapping){const r=e.get(73);return t>s.contentWidth+n.typicalHalfwidthCharacterWidth&&r.enabled&&r.side==="right"?t+s.verticalScrollbarWidth:t}else{const r=e.get(105)*n.typicalHalfwidthCharacterWidth,a=this._linesLayout.getWhitespaceMinWidth();return Math.max(t+r+s.verticalScrollbarWidth,a,this._overlayWidgetsMinWidth)}}setMaxLineWidth(e){this._maxLineWidth=e,this._updateContentWidth()}setOverlayWidgetsMinWidth(e){this._overlayWidgetsMinWidth=e,this._updateContentWidth()}_updateContentWidth(){const e=this._scrollable.getScrollDimensions();this._scrollable.setScrollDimensions(new Fm(e.width,this._computeContentWidth(),e.height,e.contentHeight)),this._updateHeight()}saveState(){const e=this._scrollable.getFutureScrollPosition(),t=e.scrollTop,i=this._linesLayout.getLineNumberAtOrAfterVerticalOffset(t),n=this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(i);return{scrollTop:t,scrollTopWithoutViewZones:t-n,scrollLeft:e.scrollLeft}}changeWhitespace(e){const t=this._linesLayout.changeWhitespace(e);return t&&this.onHeightMaybeChanged(),t}getVerticalOffsetForLineNumber(e,t=!1){return this._linesLayout.getVerticalOffsetForLineNumber(e,t)}getVerticalOffsetAfterLineNumber(e,t=!1){return this._linesLayout.getVerticalOffsetAfterLineNumber(e,t)}isAfterLines(e){return this._linesLayout.isAfterLines(e)}isInTopPadding(e){return this._linesLayout.isInTopPadding(e)}isInBottomPadding(e){return this._linesLayout.isInBottomPadding(e)}getLineNumberAtVerticalOffset(e){return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(e)}getWhitespaceAtVerticalOffset(e){return this._linesLayout.getWhitespaceAtVerticalOffset(e)}getLinesViewportData(){const e=this.getCurrentViewport();return this._linesLayout.getLinesViewportData(e.top,e.top+e.height)}getLinesViewportDataAtScrollTop(e){const t=this._scrollable.getScrollDimensions();return e+t.height>t.scrollHeight&&(e=t.scrollHeight-t.height),e<0&&(e=0),this._linesLayout.getLinesViewportData(e,e+t.height)}getWhitespaceViewportData(){const e=this.getCurrentViewport();return this._linesLayout.getWhitespaceViewportData(e.top,e.top+e.height)}getWhitespaces(){return this._linesLayout.getWhitespaces()}getContentWidth(){return this._scrollable.getScrollDimensions().contentWidth}getScrollWidth(){return this._scrollable.getScrollDimensions().scrollWidth}getContentHeight(){return this._scrollable.getScrollDimensions().contentHeight}getScrollHeight(){return this._scrollable.getScrollDimensions().scrollHeight}getCurrentScrollLeft(){return this._scrollable.getCurrentScrollPosition().scrollLeft}getCurrentScrollTop(){return this._scrollable.getCurrentScrollPosition().scrollTop}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}setScrollPosition(e,t){t===1?this._scrollable.setScrollPositionNow(e):this._scrollable.setScrollPositionSmooth(e)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}deltaScrollNow(e,t){const i=this._scrollable.getCurrentScrollPosition();this._scrollable.setScrollPositionNow({scrollLeft:i.scrollLeft+e,scrollTop:i.scrollTop+t})}}class voe{constructor(e,t,i,n,s){this.editorId=e,this.model=t,this.configuration=i,this._linesCollection=n,this._coordinatesConverter=s,this._decorationsCache=Object.create(null),this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}_clearCachedModelDecorationsResolver(){this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}dispose(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}reset(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onModelDecorationsChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onLineMappingChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}_getOrCreateViewModelDecoration(e){const t=e.id;let i=this._decorationsCache[t];if(!i){const n=e.range,s=e.options;let r;if(s.isWholeLine){const a=this._coordinatesConverter.convertModelPositionToViewPosition(new P(n.startLineNumber,1),0,!1,!0),l=this._coordinatesConverter.convertModelPositionToViewPosition(new P(n.endLineNumber,this.model.getLineMaxColumn(n.endLineNumber)),1);r=new I(a.lineNumber,a.column,l.lineNumber,l.column)}else r=this._coordinatesConverter.convertModelRangeToViewRange(n,1);i=new h8(r,s),this._decorationsCache[t]=i}return i}getMinimapDecorationsInRange(e){return this._getDecorationsInRange(e,!0,!1).decorations}getDecorationsViewportData(e){let t=this._cachedModelDecorationsResolver!==null;return t=t&&e.equalsRange(this._cachedModelDecorationsResolverViewRange),t||(this._cachedModelDecorationsResolver=this._getDecorationsInRange(e,!1,!1),this._cachedModelDecorationsResolverViewRange=e),this._cachedModelDecorationsResolver}getInlineDecorationsOnLine(e,t=!1,i=!1){const n=new I(e,this._linesCollection.getViewLineMinColumn(e),e,this._linesCollection.getViewLineMaxColumn(e));return this._getDecorationsInRange(n,t,i).inlineDecorations[0]}_getDecorationsInRange(e,t,i){const n=this._linesCollection.getDecorationsInRange(e,this.editorId,rC(this.configuration.options),t,i),s=e.startLineNumber,r=e.endLineNumber,a=[];let l=0;const c=[];for(let d=s;d<=r;d++)c[d-s]=[];for(let d=0,h=n.length;dt===1)}function Soe(o,e){return R8(o,e.range,t=>t===2)}function R8(o,e,t){for(let i=e.startLineNumber;i<=e.endLineNumber;i++){const n=o.tokenization.getLineTokens(i),s=i===e.startLineNumber,r=i===e.endLineNumber;let a=s?n.findTokenIndexAtOffset(e.startColumn-1):0;for(;ae.endColumn-1);){if(!t(n.getStandardTokenType(a)))return!1;a++}}return!0}function aL(o,e){return o===null?e?Wv.INSTANCE:Hv.INSTANCE:new Loe(o,e)}class Loe{constructor(e,t){this._projectionData=e,this._isVisible=t}isVisible(){return this._isVisible}setVisible(e){return this._isVisible=e,this}getProjectionData(){return this._projectionData}getViewLineCount(){return this._isVisible?this._projectionData.getOutputLineCount():0}getViewLineContent(e,t,i){this._assertVisible();const n=i>0?this._projectionData.breakOffsets[i-1]:0,s=this._projectionData.breakOffsets[i];let r;if(this._projectionData.injectionOffsets!==null){const a=this._projectionData.injectionOffsets.map((c,d)=>new _r(0,0,c+1,this._projectionData.injectionOptions[d],0));r=_r.applyInjectedText(e.getLineContent(t),a).substring(n,s)}else r=e.getValueInRange({startLineNumber:t,startColumn:n+1,endLineNumber:t,endColumn:s+1});return i>0&&(r=YO(this._projectionData.wrappedTextIndentLength)+r),r}getViewLineLength(e,t,i){return this._assertVisible(),this._projectionData.getLineLength(i)}getViewLineMinColumn(e,t,i){return this._assertVisible(),this._projectionData.getMinOutputOffset(i)+1}getViewLineMaxColumn(e,t,i){return this._assertVisible(),this._projectionData.getMaxOutputOffset(i)+1}getViewLineData(e,t,i){const n=new Array;return this.getViewLinesData(e,t,i,1,0,[!0],n),n[0]}getViewLinesData(e,t,i,n,s,r,a){this._assertVisible();const l=this._projectionData,c=l.injectionOffsets,d=l.injectionOptions;let h=null;if(c){h=[];let f=0,g=0;for(let p=0;p0?l.breakOffsets[p-1]:0,C=l.breakOffsets[p];for(;gC)break;if(b0?l.wrappedTextIndentLength:0,E=L+Math.max(v-b,0),N=L+Math.min(y-b,C-b);E!==N&&_.push(new hie(E,N,x.inlineClassName,x.inlineClassNameAffectsLetterSpacing))}}if(y<=C)f+=w,g++;else break}}}let u;c?u=e.tokenization.getLineTokens(t).withInserted(c.map((f,g)=>({offset:f,text:d[g].content,tokenMetadata:Ni.defaultTokenMetadata}))):u=e.tokenization.getLineTokens(t);for(let f=i;f0?n.wrappedTextIndentLength:0,r=i>0?n.breakOffsets[i-1]:0,a=n.breakOffsets[i],l=e.sliceAndInflate(r,a,s);let c=l.getLineContent();i>0&&(c=YO(n.wrappedTextIndentLength)+c);const d=this._projectionData.getMinOutputOffset(i)+1,h=c.length+1,u=i+1=lL.length)for(let e=1;e<=o;e++)lL[e]=xoe(e);return lL[o]}function xoe(o){return new Array(o+1).join(" ")}class koe{constructor(e,t,i,n,s,r,a,l,c,d){this._editorId=e,this.model=t,this._validModelVersionId=-1,this._domLineBreaksComputerFactory=i,this._monospaceLineBreaksComputerFactory=n,this.fontInfo=s,this.tabSize=r,this.wrappingStrategy=a,this.wrappingColumn=l,this.wrappingIndent=c,this.wordBreak=d,this._constructLines(!0,null)}dispose(){this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[])}createCoordinatesConverter(){return new Ioe(this)}_constructLines(e,t){this.modelLineProjections=[],e&&(this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[]));const i=this.model.getLinesContent(),n=this.model.getInjectedTextDecorations(this._editorId),s=i.length,r=this.createLineBreaksComputer(),a=new Ll(_r.fromDecorations(n));for(let p=0;pb.lineNumber===p+1);r.addRequest(i[p],_,t?t[p]:null)}const l=r.finalize(),c=[],d=this.hiddenAreasDecorationIds.map(p=>this.model.getDecorationRange(p)).sort(I.compareRangesUsingStarts);let h=1,u=0,f=-1,g=f+1=h&&_<=u,C=aL(l[p],!b);c[p]=C.getViewLineCount(),this.modelLineProjections[p]=C}this._validModelVersionId=this.model.getVersionId(),this.projectedModelLineLineCounts=new D$(c)}getHiddenAreas(){return this.hiddenAreasDecorationIds.map(e=>this.model.getDecorationRange(e))}setHiddenAreas(e){const t=e.map(u=>this.model.validateRange(u)),i=Doe(t),n=this.hiddenAreasDecorationIds.map(u=>this.model.getDecorationRange(u)).sort(I.compareRangesUsingStarts);if(i.length===n.length){let u=!1;for(let f=0;f({range:u,options:kt.EMPTY}));this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,s);const r=i;let a=1,l=0,c=-1,d=c+1=a&&f<=l?this.modelLineProjections[u].isVisible()&&(this.modelLineProjections[u]=this.modelLineProjections[u].setVisible(!1),g=!0):(h=!0,this.modelLineProjections[u].isVisible()||(this.modelLineProjections[u]=this.modelLineProjections[u].setVisible(!0),g=!0)),g){const p=this.modelLineProjections[u].getViewLineCount();this.projectedModelLineLineCounts.setValue(u,p)}}return h||this.setHiddenAreas([]),!0}modelPositionIsVisible(e,t){return e<1||e>this.modelLineProjections.length?!1:this.modelLineProjections[e-1].isVisible()}getModelLineViewLineCount(e){return e<1||e>this.modelLineProjections.length?1:this.modelLineProjections[e-1].getViewLineCount()}setTabSize(e){return this.tabSize===e?!1:(this.tabSize=e,this._constructLines(!1,null),!0)}setWrappingSettings(e,t,i,n,s){const r=this.fontInfo.equals(e),a=this.wrappingStrategy===t,l=this.wrappingColumn===i,c=this.wrappingIndent===n,d=this.wordBreak===s;if(r&&a&&l&&c&&d)return!1;const h=r&&a&&!l&&c&&d;this.fontInfo=e,this.wrappingStrategy=t,this.wrappingColumn=i,this.wrappingIndent=n,this.wordBreak=s;let u=null;if(h){u=[];for(let f=0,g=this.modelLineProjections.length;f2&&!this.modelLineProjections[t-2].isVisible(),r=t===1?1:this.projectedModelLineLineCounts.getPrefixSum(t-1)+1;let a=0;const l=[],c=[];for(let d=0,h=n.length;dl?(d=this.projectedModelLineLineCounts.getPrefixSum(t-1)+1,h=d+l-1,g=h+1,p=g+(s-l)-1,c=!0):st?t:e|0}getActiveIndentGuide(e,t,i){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t),i=this._toValidViewLineNumber(i);const n=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),s=this.convertViewPositionToModelPosition(t,this.getViewLineMinColumn(t)),r=this.convertViewPositionToModelPosition(i,this.getViewLineMinColumn(i)),a=this.model.guides.getActiveIndentGuide(n.lineNumber,s.lineNumber,r.lineNumber),l=this.convertModelPositionToViewPosition(a.startLineNumber,1),c=this.convertModelPositionToViewPosition(a.endLineNumber,this.model.getLineMaxColumn(a.endLineNumber));return{startLineNumber:l.lineNumber,endLineNumber:c.lineNumber,indent:a.indent}}getViewLineInfo(e){e=this._toValidViewLineNumber(e);const t=this.projectedModelLineLineCounts.getIndexOf(e-1),i=t.index,n=t.remainder;return new QO(i+1,n)}getMinColumnOfViewLine(e){return this.modelLineProjections[e.modelLineNumber-1].getViewLineMinColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx)}getMaxColumnOfViewLine(e){return this.modelLineProjections[e.modelLineNumber-1].getViewLineMaxColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx)}getModelStartPositionOfViewLine(e){const t=this.modelLineProjections[e.modelLineNumber-1],i=t.getViewLineMinColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx),n=t.getModelColumnOfViewPosition(e.modelLineWrappedLineIdx,i);return new P(e.modelLineNumber,n)}getModelEndPositionOfViewLine(e){const t=this.modelLineProjections[e.modelLineNumber-1],i=t.getViewLineMaxColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx),n=t.getModelColumnOfViewPosition(e.modelLineWrappedLineIdx,i);return new P(e.modelLineNumber,n)}getViewLineInfosGroupedByModelRanges(e,t){const i=this.getViewLineInfo(e),n=this.getViewLineInfo(t),s=new Array;let r=this.getModelStartPositionOfViewLine(i),a=new Array;for(let l=i.modelLineNumber;l<=n.modelLineNumber;l++){const c=this.modelLineProjections[l-1];if(c.isVisible()){const d=l===i.modelLineNumber?i.modelLineWrappedLineIdx:0,h=l===n.modelLineNumber?n.modelLineWrappedLineIdx+1:c.getViewLineCount();for(let u=d;u{if(f.forWrappedLinesAfterColumn!==-1&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,f.forWrappedLinesAfterColumn).lineNumber>=d.modelLineWrappedLineIdx||f.forWrappedLinesBeforeOrAtColumn!==-1&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,f.forWrappedLinesBeforeOrAtColumn).lineNumberd.modelLineWrappedLineIdx)return}const p=this.convertModelPositionToViewPosition(d.modelLineNumber,f.horizontalLine.endColumn),_=this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,f.horizontalLine.endColumn);return _.lineNumber===d.modelLineWrappedLineIdx?new Kd(f.visibleColumn,g,f.className,new tp(f.horizontalLine.top,p.column),-1,-1):_.lineNumber!!f))}}return r}getViewLinesIndentGuides(e,t){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t);const i=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),n=this.convertViewPositionToModelPosition(t,this.getViewLineMaxColumn(t));let s=[];const r=[],a=[],l=i.lineNumber-1,c=n.lineNumber-1;let d=null;for(let g=l;g<=c;g++){const p=this.modelLineProjections[g];if(p.isVisible()){const _=p.getViewLineNumberOfModelPosition(0,g===l?i.column:1),b=p.getViewLineNumberOfModelPosition(0,this.model.getLineMaxColumn(g+1)),C=b-_+1;let w=0;C>1&&p.getViewLineMinColumn(this.model,g+1,b)===1&&(w=_===0?1:2),r.push(C),a.push(w),d===null&&(d=new P(g+1,0))}else d!==null&&(s=s.concat(this.model.guides.getLinesIndentGuides(d.lineNumber,g)),d=null)}d!==null&&(s=s.concat(this.model.guides.getLinesIndentGuides(d.lineNumber,n.lineNumber)),d=null);const h=t-e+1,u=new Array(h);let f=0;for(let g=0,p=s.length;gt&&(g=!0,f=t-s+1),h.getViewLinesData(this.model,c+1,u,f,s-e,i,l),s+=f,g)break}return l}validateViewPosition(e,t,i){e=this._toValidViewLineNumber(e);const n=this.projectedModelLineLineCounts.getIndexOf(e-1),s=n.index,r=n.remainder,a=this.modelLineProjections[s],l=a.getViewLineMinColumn(this.model,s+1,r),c=a.getViewLineMaxColumn(this.model,s+1,r);tc&&(t=c);const d=a.getModelColumnOfViewPosition(r,t);return this.model.validatePosition(new P(s+1,d)).equals(i)?new P(e,t):this.convertModelPositionToViewPosition(i.lineNumber,i.column)}validateViewRange(e,t){const i=this.validateViewPosition(e.startLineNumber,e.startColumn,t.getStartPosition()),n=this.validateViewPosition(e.endLineNumber,e.endColumn,t.getEndPosition());return new I(i.lineNumber,i.column,n.lineNumber,n.column)}convertViewPositionToModelPosition(e,t){const i=this.getViewLineInfo(e),n=this.modelLineProjections[i.modelLineNumber-1].getModelColumnOfViewPosition(i.modelLineWrappedLineIdx,t);return this.model.validatePosition(new P(i.modelLineNumber,n))}convertViewRangeToModelRange(e){const t=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),i=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);return new I(t.lineNumber,t.column,i.lineNumber,i.column)}convertModelPositionToViewPosition(e,t,i=2,n=!1,s=!1){const r=this.model.validatePosition(new P(e,t)),a=r.lineNumber,l=r.column;let c=a-1,d=!1;if(s)for(;c0&&!this.modelLineProjections[c].isVisible();)c--,d=!0;if(c===0&&!this.modelLineProjections[c].isVisible())return new P(n?0:1,1);const h=1+this.projectedModelLineLineCounts.getPrefixSum(c);let u;return d?s?u=this.modelLineProjections[c].getViewPositionOfModelPosition(h,1,i):u=this.modelLineProjections[c].getViewPositionOfModelPosition(h,this.model.getLineMaxColumn(c+1),i):u=this.modelLineProjections[a-1].getViewPositionOfModelPosition(h,l,i),u}convertModelRangeToViewRange(e,t=0){if(e.isEmpty()){const i=this.convertModelPositionToViewPosition(e.startLineNumber,e.startColumn,t);return I.fromPositions(i)}else{const i=this.convertModelPositionToViewPosition(e.startLineNumber,e.startColumn,1),n=this.convertModelPositionToViewPosition(e.endLineNumber,e.endColumn,0);return new I(i.lineNumber,i.column,n.lineNumber,n.column)}}getViewLineNumberOfModelPosition(e,t){let i=e-1;if(this.modelLineProjections[i].isVisible()){const s=1+this.projectedModelLineLineCounts.getPrefixSum(i);return this.modelLineProjections[i].getViewLineNumberOfModelPosition(s,t)}for(;i>0&&!this.modelLineProjections[i].isVisible();)i--;if(i===0&&!this.modelLineProjections[i].isVisible())return 1;const n=1+this.projectedModelLineLineCounts.getPrefixSum(i);return this.modelLineProjections[i].getViewLineNumberOfModelPosition(n,this.model.getLineMaxColumn(i+1))}getDecorationsInRange(e,t,i,n,s){const r=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),a=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);if(a.lineNumber-r.lineNumber<=e.endLineNumber-e.startLineNumber)return this.model.getDecorationsInRange(new I(r.lineNumber,1,a.lineNumber,a.column),t,i,n,s);let l=[];const c=r.lineNumber-1,d=a.lineNumber-1;let h=null;for(let p=c;p<=d;p++)if(this.modelLineProjections[p].isVisible())h===null&&(h=new P(p+1,p===c?r.column:1));else if(h!==null){const b=this.model.getLineMaxColumn(p);l=l.concat(this.model.getDecorationsInRange(new I(h.lineNumber,h.column,p,b),t,i,n)),h=null}h!==null&&(l=l.concat(this.model.getDecorationsInRange(new I(h.lineNumber,h.column,a.lineNumber,a.column),t,i,n)),h=null),l.sort((p,_)=>{const b=I.compareRangesUsingStarts(p.range,_.range);return b===0?p.id<_.id?-1:p.id>_.id?1:0:b});const u=[];let f=0,g=null;for(const p of l){const _=p.id;g!==_&&(g=_,u[f++]=p)}return u}getInjectedTextAt(e){const t=this.getViewLineInfo(e.lineNumber);return this.modelLineProjections[t.modelLineNumber-1].getInjectedTextAt(t.modelLineWrappedLineIdx,e.column)}normalizePosition(e,t){const i=this.getViewLineInfo(e.lineNumber);return this.modelLineProjections[i.modelLineNumber-1].normalizePosition(i.modelLineWrappedLineIdx,e,t)}getLineIndentColumn(e){const t=this.getViewLineInfo(e);return t.modelLineWrappedLineIdx===0?this.model.getLineIndentColumn(t.modelLineNumber):0}}function Doe(o){if(o.length===0)return[];const e=o.slice();e.sort(I.compareRangesUsingStarts);const t=[];let i=e[0].startLineNumber,n=e[0].endLineNumber;for(let s=1,r=e.length;sn+1?(t.push(new I(i,1,n,1)),i=a.startLineNumber,n=a.endLineNumber):a.endLineNumber>n&&(n=a.endLineNumber)}return t.push(new I(i,1,n,1)),t}class QO{constructor(e,t){this.modelLineNumber=e,this.modelLineWrappedLineIdx=t}}class XO{constructor(e,t){this.modelRange=e,this.viewLines=t}}class Ioe{constructor(e){this._lines=e}convertViewPositionToModelPosition(e){return this._lines.convertViewPositionToModelPosition(e.lineNumber,e.column)}convertViewRangeToModelRange(e){return this._lines.convertViewRangeToModelRange(e)}validateViewPosition(e,t){return this._lines.validateViewPosition(e.lineNumber,e.column,t)}validateViewRange(e,t){return this._lines.validateViewRange(e,t)}convertModelPositionToViewPosition(e,t,i,n){return this._lines.convertModelPositionToViewPosition(e.lineNumber,e.column,t,i,n)}convertModelRangeToViewRange(e,t){return this._lines.convertModelRangeToViewRange(e,t)}modelPositionIsVisible(e){return this._lines.modelPositionIsVisible(e.lineNumber,e.column)}getModelLineViewLineCount(e){return this._lines.getModelLineViewLineCount(e)}getViewLineNumberOfModelPosition(e,t){return this._lines.getViewLineNumberOfModelPosition(e,t)}}class Eoe{constructor(e){this.model=e}dispose(){}createCoordinatesConverter(){return new Noe(this)}getHiddenAreas(){return[]}setHiddenAreas(e){return!1}setTabSize(e){return!1}setWrappingSettings(e,t,i,n){return!1}createLineBreaksComputer(){const e=[];return{addRequest:(t,i,n)=>{e.push(null)},finalize:()=>e}}onModelFlushed(){}onModelLinesDeleted(e,t,i){return new WI(t,i)}onModelLinesInserted(e,t,i,n){return new HI(t,i)}onModelLineChanged(e,t,i){return[!1,new M8(t,1),null,null]}acceptVersionId(e){}getViewLineCount(){return this.model.getLineCount()}getActiveIndentGuide(e,t,i){return{startLineNumber:e,endLineNumber:e,indent:0}}getViewLinesBracketGuides(e,t,i){return new Array(t-e+1).fill([])}getViewLinesIndentGuides(e,t){const i=t-e+1,n=new Array(i);for(let s=0;st)}getModelLineViewLineCount(e){return 1}getViewLineNumberOfModelPosition(e,t){return e}}const ad=Ao.Right;class Toe{constructor(e){this.persist=0,this._requiredLanes=1,this.lanes=new Uint8Array(Math.ceil((e+1)*ad/8))}reset(e){const t=Math.ceil((e+1)*ad/8);this.lanes.length>>3]|=1<>>3]&1<>>3]&1<this._updateConfigurationViewLineCountNow(),0)),this._hasFocus=!1,this._viewportStart=X2.create(this.model),this.glyphLanes=new Toe(0),this.model.isTooLargeForTokenization())this._lines=new Eoe(this.model);else{const h=this._configuration.options,u=h.get(50),f=h.get(140),g=h.get(147),p=h.get(139),_=h.get(130);this._lines=new koe(this._editorId,this.model,n,s,u,this.model.getOptions().tabSize,f,g.wrappingColumn,p,_)}this.coordinatesConverter=this._lines.createCoordinatesConverter(),this._cursor=this._register(new hoe(i,this,this.coordinatesConverter,this.cursorConfig)),this.viewLayout=this._register(new Coe(this._configuration,this.getLineCount(),r)),this._register(this.viewLayout.onDidScroll(h=>{h.scrollTopChanged&&this._handleVisibleLinesChanged(),h.scrollTopChanged&&this._viewportStart.invalidate(),this._eventDispatcher.emitSingleViewEvent(new Zse(h)),this._eventDispatcher.emitOutgoingEvent(new Q2(h.oldScrollWidth,h.oldScrollLeft,h.oldScrollHeight,h.oldScrollTop,h.scrollWidth,h.scrollLeft,h.scrollHeight,h.scrollTop))})),this._register(this.viewLayout.onDidContentSizeChange(h=>{this._eventDispatcher.emitOutgoingEvent(h)})),this._decorations=new voe(this._editorId,this.model,this._configuration,this._lines,this.coordinatesConverter),this._registerModelEvents(),this._register(this._configuration.onDidChangeFast(h=>{try{const u=this._eventDispatcher.beginEmitViewEvents();this._onConfigurationChanged(u,h)}finally{this._eventDispatcher.endEmitViewEvents()}})),this._register(Pv.getInstance().onDidChange(()=>{this._eventDispatcher.emitSingleViewEvent(new Xse)})),this._register(this._themeService.onDidColorThemeChange(h=>{this._invalidateDecorationsColorCache(),this._eventDispatcher.emitSingleViewEvent(new Yse(h))})),this._updateConfigurationViewLineCountNow()}dispose(){super.dispose(),this._decorations.dispose(),this._lines.dispose(),this._viewportStart.dispose(),this._eventDispatcher.dispose()}createLineBreaksComputer(){return this._lines.createLineBreaksComputer()}addViewEventHandler(e){this._eventDispatcher.addViewEventHandler(e)}removeViewEventHandler(e){this._eventDispatcher.removeViewEventHandler(e)}_updateConfigurationViewLineCountNow(){this._configuration.setViewLineCount(this._lines.getViewLineCount())}getModelVisibleRanges(){const e=this.viewLayout.getLinesViewportData(),t=new I(e.startLineNumber,this.getLineMinColumn(e.startLineNumber),e.endLineNumber,this.getLineMaxColumn(e.endLineNumber));return this._toModelVisibleRanges(t)}visibleLinesStabilized(){const e=this.getModelVisibleRanges();this._attachedView.setVisibleLines(e,!0)}_handleVisibleLinesChanged(){const e=this.getModelVisibleRanges();this._attachedView.setVisibleLines(e,!1)}setHasFocus(e){this._hasFocus=e,this._cursor.setHasFocus(e),this._eventDispatcher.emitSingleViewEvent(new qse(e)),this._eventDispatcher.emitOutgoingEvent(new Y2(!e,e))}onCompositionStart(){this._eventDispatcher.emitSingleViewEvent(new Use)}onCompositionEnd(){this._eventDispatcher.emitSingleViewEvent(new $se)}_captureStableViewport(){if(this._viewportStart.isValid&&this.viewLayout.getCurrentScrollTop()>0){const e=new P(this._viewportStart.viewLineNumber,this.getLineMinColumn(this._viewportStart.viewLineNumber)),t=this.coordinatesConverter.convertViewPositionToModelPosition(e);return new e4(t,this._viewportStart.startLineDelta)}return new e4(null,0)}_onConfigurationChanged(e,t){const i=this._captureStableViewport(),n=this._configuration.options,s=n.get(50),r=n.get(140),a=n.get(147),l=n.get(139),c=n.get(130);this._lines.setWrappingSettings(s,r,a.wrappingColumn,l,c)&&(e.emitViewEvent(new s1),e.emitViewEvent(new o1),e.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(e),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this._updateConfigurationViewLineCount.schedule()),t.hasChanged(92)&&(this._decorations.reset(),e.emitViewEvent(new rd(null))),t.hasChanged(99)&&(this._decorations.reset(),e.emitViewEvent(new rd(null))),e.emitViewEvent(new Kse(t)),this.viewLayout.onConfigurationChanged(t),i.recoverViewportStart(this.coordinatesConverter,this.viewLayout),Au.shouldRecreate(t)&&(this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig))}_registerModelEvents(){this._register(this.model.onDidChangeContentOrInjectedText(e=>{try{const i=this._eventDispatcher.beginEmitViewEvents();let n=!1,s=!1;const r=e instanceof th?e.rawContentChangedEvent.changes:e.changes,a=e instanceof th?e.rawContentChangedEvent.versionId:null,l=this._lines.createLineBreaksComputer();for(const h of r)switch(h.changeType){case 4:{for(let u=0;u!p.ownerId||p.ownerId===this._editorId)),l.addRequest(f,g,null)}break}case 2:{let u=null;h.injectedText&&(u=h.injectedText.filter(f=>!f.ownerId||f.ownerId===this._editorId)),l.addRequest(h.detail,u,null);break}}const c=l.finalize(),d=new Ll(c);for(const h of r)switch(h.changeType){case 1:{this._lines.onModelFlushed(),i.emitViewEvent(new s1),this._decorations.reset(),this.viewLayout.onFlushed(this.getLineCount()),n=!0;break}case 3:{const u=this._lines.onModelLinesDeleted(a,h.fromLineNumber,h.toLineNumber);u!==null&&(i.emitViewEvent(u),this.viewLayout.onLinesDeleted(u.fromLineNumber,u.toLineNumber)),n=!0;break}case 4:{const u=d.takeCount(h.detail.length),f=this._lines.onModelLinesInserted(a,h.fromLineNumber,h.toLineNumber,u);f!==null&&(i.emitViewEvent(f),this.viewLayout.onLinesInserted(f.fromLineNumber,f.toLineNumber)),n=!0;break}case 2:{const u=d.dequeue(),[f,g,p,_]=this._lines.onModelLineChanged(a,h.lineNumber,u);s=f,g&&i.emitViewEvent(g),p&&(i.emitViewEvent(p),this.viewLayout.onLinesInserted(p.fromLineNumber,p.toLineNumber)),_&&(i.emitViewEvent(_),this.viewLayout.onLinesDeleted(_.fromLineNumber,_.toLineNumber));break}case 5:break}a!==null&&this._lines.acceptVersionId(a),this.viewLayout.onHeightMaybeChanged(),!n&&s&&(i.emitViewEvent(new o1),i.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(i),this._decorations.onLineMappingChanged())}finally{this._eventDispatcher.endEmitViewEvents()}const t=this._viewportStart.isValid;if(this._viewportStart.invalidate(),this._configuration.setModelLineCount(this.model.getLineCount()),this._updateConfigurationViewLineCountNow(),!this._hasFocus&&this.model.getAttachedEditorCount()>=2&&t){const i=this.model._getTrackedRange(this._viewportStart.modelTrackedRange);if(i){const n=this.coordinatesConverter.convertModelPositionToViewPosition(i.getStartPosition()),s=this.viewLayout.getVerticalOffsetForLineNumber(n.lineNumber);this.viewLayout.setScrollPosition({scrollTop:s+this._viewportStart.startLineDelta},1)}}try{const i=this._eventDispatcher.beginEmitViewEvents();e instanceof th&&i.emitOutgoingEvent(new loe(e.contentChangedEvent)),this._cursor.onModelContentChanged(i,e)}finally{this._eventDispatcher.endEmitViewEvents()}this._handleVisibleLinesChanged()})),this._register(this.model.onDidChangeTokens(e=>{const t=[];for(let i=0,n=e.ranges.length;i{this._eventDispatcher.emitSingleViewEvent(new Gse),this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new aoe(e))})),this._register(this.model.onDidChangeLanguage(e=>{this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new roe(e))})),this._register(this.model.onDidChangeOptions(e=>{if(this._lines.setTabSize(this.model.getOptions().tabSize)){try{const t=this._eventDispatcher.beginEmitViewEvents();t.emitViewEvent(new s1),t.emitViewEvent(new o1),t.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(t),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount())}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule()}this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new coe(e))})),this._register(this.model.onDidChangeDecorations(e=>{this._decorations.onModelDecorationsChanged(),this._eventDispatcher.emitSingleViewEvent(new rd(e)),this._eventDispatcher.emitOutgoingEvent(new ooe(e))}))}setHiddenAreas(e,t){this.hiddenAreasModel.setHiddenAreas(t,e);const i=this.hiddenAreasModel.getMergedRanges();if(i===this.previousHiddenAreas)return;this.previousHiddenAreas=i;const n=this._captureStableViewport();let s=!1;try{const r=this._eventDispatcher.beginEmitViewEvents();s=this._lines.setHiddenAreas(i),s&&(r.emitViewEvent(new s1),r.emitViewEvent(new o1),r.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(r),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this.viewLayout.onHeightMaybeChanged());const a=n.viewportStartModelPosition?.lineNumber;a&&i.some(c=>c.startLineNumber<=a&&a<=c.endLineNumber)||n.recoverViewportStart(this.coordinatesConverter,this.viewLayout)}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule(),s&&this._eventDispatcher.emitOutgoingEvent(new noe)}getVisibleRangesPlusViewportAboveBelow(){const e=this._configuration.options.get(146),t=this._configuration.options.get(67),i=Math.max(20,Math.round(e.height/t)),n=this.viewLayout.getLinesViewportData(),s=Math.max(1,n.completelyVisibleStartLineNumber-i),r=Math.min(this.getLineCount(),n.completelyVisibleEndLineNumber+i);return this._toModelVisibleRanges(new I(s,this.getLineMinColumn(s),r,this.getLineMaxColumn(r)))}getVisibleRanges(){const e=this.getCompletelyVisibleViewRange();return this._toModelVisibleRanges(e)}getHiddenAreas(){return this._lines.getHiddenAreas()}_toModelVisibleRanges(e){const t=this.coordinatesConverter.convertViewRangeToModelRange(e),i=this._lines.getHiddenAreas();if(i.length===0)return[t];const n=[];let s=0,r=t.startLineNumber,a=t.startColumn;const l=t.endLineNumber,c=t.endColumn;for(let d=0,h=i.length;dl||(r"u")return this._reduceRestoreStateCompatibility(e);const t=this.model.validatePosition(e.firstPosition),i=this.coordinatesConverter.convertModelPositionToViewPosition(t),n=this.viewLayout.getVerticalOffsetForLineNumber(i.lineNumber)-e.firstPositionDeltaTop;return{scrollLeft:e.scrollLeft,scrollTop:n}}_reduceRestoreStateCompatibility(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTopWithoutViewZones}}getTabSize(){return this.model.getOptions().tabSize}getLineCount(){return this._lines.getViewLineCount()}setViewport(e,t,i){this._viewportStart.update(this,e)}getActiveIndentGuide(e,t,i){return this._lines.getActiveIndentGuide(e,t,i)}getLinesIndentGuides(e,t){return this._lines.getViewLinesIndentGuides(e,t)}getBracketGuidesInRangeByLine(e,t,i,n){return this._lines.getViewLinesBracketGuides(e,t,i,n)}getLineContent(e){return this._lines.getViewLineContent(e)}getLineLength(e){return this._lines.getViewLineLength(e)}getLineMinColumn(e){return this._lines.getViewLineMinColumn(e)}getLineMaxColumn(e){return this._lines.getViewLineMaxColumn(e)}getLineFirstNonWhitespaceColumn(e){const t=zn(this.getLineContent(e));return t===-1?0:t+1}getLineLastNonWhitespaceColumn(e){const t=Jh(this.getLineContent(e));return t===-1?0:t+2}getMinimapDecorationsInRange(e){return this._decorations.getMinimapDecorationsInRange(e)}getDecorationsInViewport(e){return this._decorations.getDecorationsViewportData(e).decorations}getInjectedTextAt(e){return this._lines.getInjectedTextAt(e)}getViewportViewLineRenderingData(e,t){const n=this._decorations.getDecorationsViewportData(e).inlineDecorations[t-e.startLineNumber];return this._getViewLineRenderingData(t,n)}getViewLineRenderingData(e){const t=this._decorations.getInlineDecorationsOnLine(e);return this._getViewLineRenderingData(e,t)}_getViewLineRenderingData(e,t){const i=this.model.mightContainRTL(),n=this.model.mightContainNonBasicASCII(),s=this.getTabSize(),r=this._lines.getViewLineData(e);return r.inlineDecorations&&(t=[...t,...r.inlineDecorations.map(a=>a.toInlineDecoration(e))]),new zs(r.minColumn,r.maxColumn,r.content,r.continuesWithWrappedLine,i,n,r.tokens,t,s,r.startVisibleColumn)}getViewLineData(e){return this._lines.getViewLineData(e)}getMinimapLinesRenderingData(e,t,i){const n=this._lines.getViewLinesData(e,t,i);return new die(this.getTabSize(),n)}getAllOverviewRulerDecorations(e){const t=this.model.getOverviewRulerDecorations(this._editorId,rC(this._configuration.options)),i=new Roe;for(const n of t){const s=n.options,r=s.overviewRuler;if(!r)continue;const a=r.position;if(a===0)continue;const l=r.getColor(e.value),c=this.coordinatesConverter.getViewLineNumberOfModelPosition(n.range.startLineNumber,n.range.startColumn),d=this.coordinatesConverter.getViewLineNumberOfModelPosition(n.range.endLineNumber,n.range.endColumn);i.accept(l,s.zIndex,c,d,a)}return i.asArray}_invalidateDecorationsColorCache(){const e=this.model.getOverviewRulerDecorations();for(const t of e)t.options.overviewRuler?.invalidateCachedColor(),t.options.minimap?.invalidateCachedColor()}getValueInRange(e,t){const i=this.coordinatesConverter.convertViewRangeToModelRange(e);return this.model.getValueInRange(i,t)}getValueLengthInRange(e,t){const i=this.coordinatesConverter.convertViewRangeToModelRange(e);return this.model.getValueLengthInRange(i,t)}modifyPosition(e,t){const i=this.coordinatesConverter.convertViewPositionToModelPosition(e),n=this.model.modifyPosition(i,t);return this.coordinatesConverter.convertModelPositionToViewPosition(n)}deduceModelPositionRelativeToViewPosition(e,t,i){const n=this.coordinatesConverter.convertViewPositionToModelPosition(e);this.model.getEOL().length===2&&(t<0?t-=i:t+=i);const r=this.model.getOffsetAt(n)+t;return this.model.getPositionAt(r)}getPlainTextToCopy(e,t,i){const n=i?`\r -`:this.model.getEOL();e=e.slice(0),e.sort(I.compareRangesUsingStarts);let s=!1,r=!1;for(const l of e)l.isEmpty()?s=!0:r=!0;if(!r){if(!t)return"";const l=e.map(d=>d.startLineNumber);let c="";for(let d=0;d0&&l[d-1]===l[d]||(c+=this.model.getLineContent(l[d])+n);return c}if(s&&t){const l=[];let c=0;for(const d of e){const h=d.startLineNumber;d.isEmpty()?h!==c&&l.push(this.model.getLineContent(h)):l.push(this.model.getValueInRange(d,i?2:0)),c=h}return l.length===1?l[0]:l}const a=[];for(const l of e)l.isEmpty()||a.push(this.model.getValueInRange(l,i?2:0));return a.length===1?a[0]:a}getRichTextToCopy(e,t){const i=this.model.getLanguageId();if(i===Bs||e.length!==1)return null;let n=e[0];if(n.isEmpty()){if(!t)return null;const d=n.startLineNumber;n=new I(d,this.model.getLineMinColumn(d),d,this.model.getLineMaxColumn(d))}const s=this._configuration.options.get(50),r=this._getColorMap(),l=/[:;\\\/<>]/.test(s.fontFamily)||s.fontFamily===ls.fontFamily;let c;return l?c=ls.fontFamily:(c=s.fontFamily,c=c.replace(/"/g,"'"),/[,']/.test(c)||/[+ ]/.test(c)&&(c=`'${c}'`),c=`${c}, ${ls.fontFamily}`),{mode:i,html:`
    `+this._getHTMLToCopy(n,r)+"
    "}}_getHTMLToCopy(e,t){const i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn,a=this.getTabSize();let l="";for(let c=i;c<=s;c++){const d=this.model.tokenization.getLineTokens(c),h=d.getLineContent(),u=c===i?n-1:0,f=c===s?r-1:h.length;h===""?l+="
    ":l+=NG(h,d.inflate(),t,u,f,a,kn)}return l}_getColorMap(){const e=si.getColorMap(),t=["#000000"];if(e)for(let i=1,n=e.length;ithis._cursor.setStates(n,e,t,i))}getCursorColumnSelectData(){return this._cursor.getCursorColumnSelectData()}getCursorAutoClosedCharacters(){return this._cursor.getAutoClosedCharacters()}setCursorColumnSelectData(e){this._cursor.setCursorColumnSelectData(e)}getPrevEditOperationType(){return this._cursor.getPrevEditOperationType()}setPrevEditOperationType(e){this._cursor.setPrevEditOperationType(e)}getSelection(){return this._cursor.getSelection()}getSelections(){return this._cursor.getSelections()}getPosition(){return this._cursor.getPrimaryCursorState().modelState.position}setSelections(e,t,i=0){this._withViewEventsCollector(n=>this._cursor.setSelections(n,e,t,i))}saveCursorState(){return this._cursor.saveState()}restoreCursorState(e){this._withViewEventsCollector(t=>this._cursor.restoreState(t,e))}_executeCursorEdit(e){if(this._cursor.context.cursorConfig.readOnly){this._eventDispatcher.emitOutgoingEvent(new soe);return}this._withViewEventsCollector(e)}executeEdits(e,t,i){this._executeCursorEdit(n=>this._cursor.executeEdits(n,e,t,i))}startComposition(){this._executeCursorEdit(e=>this._cursor.startComposition(e))}endComposition(e){this._executeCursorEdit(t=>this._cursor.endComposition(t,e))}type(e,t){this._executeCursorEdit(i=>this._cursor.type(i,e,t))}compositionType(e,t,i,n,s){this._executeCursorEdit(r=>this._cursor.compositionType(r,e,t,i,n,s))}paste(e,t,i,n){this._executeCursorEdit(s=>this._cursor.paste(s,e,t,i,n))}cut(e){this._executeCursorEdit(t=>this._cursor.cut(t,e))}executeCommand(e,t){this._executeCursorEdit(i=>this._cursor.executeCommand(i,e,t))}executeCommands(e,t){this._executeCursorEdit(i=>this._cursor.executeCommands(i,e,t))}revealAllCursors(e,t,i=!1){this._withViewEventsCollector(n=>this._cursor.revealAll(n,e,i,0,t,0))}revealPrimaryCursor(e,t,i=!1){this._withViewEventsCollector(n=>this._cursor.revealPrimary(n,e,i,0,t,0))}revealTopMostCursor(e){const t=this._cursor.getTopMostViewPosition(),i=new I(t.lineNumber,t.column,t.lineNumber,t.column);this._withViewEventsCollector(n=>n.emitViewEvent(new bp(e,!1,i,null,0,!0,0)))}revealBottomMostCursor(e){const t=this._cursor.getBottomMostViewPosition(),i=new I(t.lineNumber,t.column,t.lineNumber,t.column);this._withViewEventsCollector(n=>n.emitViewEvent(new bp(e,!1,i,null,0,!0,0)))}revealRange(e,t,i,n,s){this._withViewEventsCollector(r=>r.emitViewEvent(new bp(e,!1,i,null,n,t,s)))}changeWhitespace(e){this.viewLayout.changeWhitespace(e)&&(this._eventDispatcher.emitSingleViewEvent(new Jse),this._eventDispatcher.emitOutgoingEvent(new ioe))}_withViewEventsCollector(e){return this._transactionalTarget.batchChanges(()=>{try{const t=this._eventDispatcher.beginEmitViewEvents();return e(t)}finally{this._eventDispatcher.endEmitViewEvents()}})}batchEvents(e){this._withViewEventsCollector(()=>{e()})}normalizePosition(e,t){return this._lines.normalizePosition(e,t)}getLineIndentColumn(e){return this._lines.getLineIndentColumn(e)}};class X2{static create(e){const t=e._setTrackedRange(null,new I(1,1,1,1),1);return new X2(e,1,!1,t,0)}get viewLineNumber(){return this._viewLineNumber}get isValid(){return this._isValid}get modelTrackedRange(){return this._modelTrackedRange}get startLineDelta(){return this._startLineDelta}constructor(e,t,i,n,s){this._model=e,this._viewLineNumber=t,this._isValid=i,this._modelTrackedRange=n,this._startLineDelta=s}dispose(){this._model._setTrackedRange(this._modelTrackedRange,null,1)}update(e,t){const i=e.coordinatesConverter.convertViewPositionToModelPosition(new P(t,e.getLineMinColumn(t))),n=e.model._setTrackedRange(this._modelTrackedRange,new I(i.lineNumber,i.column,i.lineNumber,i.column),1),s=e.viewLayout.getVerticalOffsetForLineNumber(t),r=e.viewLayout.getCurrentScrollTop();this._viewLineNumber=t,this._isValid=!0,this._modelTrackedRange=n,this._startLineDelta=r-s}invalidate(){this._isValid=!1}}class Roe{constructor(){this._asMap=Object.create(null),this.asArray=[]}accept(e,t,i,n,s){const r=this._asMap[e];if(r){const a=r.data,l=a[a.length-3],c=a[a.length-1];if(l===s&&c+1>=i){n>c&&(a[a.length-1]=n);return}a.push(s,i,n)}else{const a=new w_(e,t,[s,i,n]);this._asMap[e]=a,this.asArray.push(a)}}}class Aoe{constructor(){this.hiddenAreas=new Map,this.shouldRecompute=!1,this.ranges=[]}setHiddenAreas(e,t){const i=this.hiddenAreas.get(e);i&&JO(i,t)||(this.hiddenAreas.set(e,t),this.shouldRecompute=!0)}getMergedRanges(){if(!this.shouldRecompute)return this.ranges;this.shouldRecompute=!1;const e=Array.from(this.hiddenAreas.values()).reduce((t,i)=>Poe(t,i),[]);return JO(this.ranges,e)?this.ranges:(this.ranges=e,this.ranges)}}function Poe(o,e){const t=[];let i=0,n=0;for(;i=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Aa=function(o,e){return function(t,i){e(t,i,o)}},md,dh;let I_=(dh=class extends z{get isSimpleWidget(){return this._configuration.isSimpleWidget}get contextMenuId(){return this._configuration.contextMenuId}constructor(e,t,i,n,s,r,a,l,c,d,h,u){super(),this.languageConfigurationService=h,this._deliveryQueue=kW(),this._contributions=this._register(new Wse),this._onDidDispose=this._register(new A),this.onDidDispose=this._onDidDispose.event,this._onDidChangeModelContent=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelContent=this._onDidChangeModelContent.event,this._onDidChangeModelLanguage=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguage=this._onDidChangeModelLanguage.event,this._onDidChangeModelLanguageConfiguration=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguageConfiguration=this._onDidChangeModelLanguageConfiguration.event,this._onDidChangeModelOptions=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelOptions=this._onDidChangeModelOptions.event,this._onDidChangeModelDecorations=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelDecorations=this._onDidChangeModelDecorations.event,this._onDidChangeModelTokens=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelTokens=this._onDidChangeModelTokens.event,this._onDidChangeConfiguration=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._onWillChangeModel=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onWillChangeModel=this._onWillChangeModel.event,this._onDidChangeModel=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModel=this._onDidChangeModel.event,this._onDidChangeCursorPosition=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorPosition=this._onDidChangeCursorPosition.event,this._onDidChangeCursorSelection=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorSelection=this._onDidChangeCursorSelection.event,this._onDidAttemptReadOnlyEdit=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidAttemptReadOnlyEdit=this._onDidAttemptReadOnlyEdit.event,this._onDidLayoutChange=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidLayoutChange=this._onDidLayoutChange.event,this._editorTextFocus=this._register(new t4({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorText=this._editorTextFocus.onDidChangeToTrue,this.onDidBlurEditorText=this._editorTextFocus.onDidChangeToFalse,this._editorWidgetFocus=this._register(new t4({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorWidget=this._editorWidgetFocus.onDidChangeToTrue,this.onDidBlurEditorWidget=this._editorWidgetFocus.onDidChangeToFalse,this._onWillType=this._register(new sn(this._contributions,this._deliveryQueue)),this.onWillType=this._onWillType.event,this._onDidType=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidType=this._onDidType.event,this._onDidCompositionStart=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidCompositionStart=this._onDidCompositionStart.event,this._onDidCompositionEnd=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidCompositionEnd=this._onDidCompositionEnd.event,this._onDidPaste=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidPaste=this._onDidPaste.event,this._onMouseUp=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseUp=this._onMouseUp.event,this._onMouseDown=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDown=this._onMouseDown.event,this._onMouseDrag=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDrag=this._onMouseDrag.event,this._onMouseDrop=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDrop=this._onMouseDrop.event,this._onMouseDropCanceled=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDropCanceled=this._onMouseDropCanceled.event,this._onDropIntoEditor=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDropIntoEditor=this._onDropIntoEditor.event,this._onContextMenu=this._register(new sn(this._contributions,this._deliveryQueue)),this.onContextMenu=this._onContextMenu.event,this._onMouseMove=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseMove=this._onMouseMove.event,this._onMouseLeave=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseLeave=this._onMouseLeave.event,this._onMouseWheel=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseWheel=this._onMouseWheel.event,this._onKeyUp=this._register(new sn(this._contributions,this._deliveryQueue)),this.onKeyUp=this._onKeyUp.event,this._onKeyDown=this._register(new sn(this._contributions,this._deliveryQueue)),this.onKeyDown=this._onKeyDown.event,this._onDidContentSizeChange=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._onDidScrollChange=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidScrollChange=this._onDidScrollChange.event,this._onDidChangeViewZones=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeViewZones=this._onDidChangeViewZones.event,this._onDidChangeHiddenAreas=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeHiddenAreas=this._onDidChangeHiddenAreas.event,this._updateCounter=0,this._onBeginUpdate=this._register(new A),this.onBeginUpdate=this._onBeginUpdate.event,this._onEndUpdate=this._register(new A),this.onEndUpdate=this._onEndUpdate.event,this._actions=new Map,this._bannerDomNode=null,this._dropIntoEditorDecorations=this.createDecorationsCollection(),s.willCreateCodeEditor();const f={...t};this._domElement=e,this._overflowWidgetsDomNode=f.overflowWidgetsDomNode,delete f.overflowWidgetsDomNode,this._id=++Foe,this._decorationTypeKeysToIds={},this._decorationTypeSubtypes={},this._telemetryData=i.telemetryData,this._configuration=this._register(this._createConfiguration(i.isSimpleWidget||!1,i.contextMenuId??(i.isSimpleWidget?$e.SimpleEditorContext:$e.EditorContext),f,d)),this._register(this._configuration.onDidChange(_=>{this._onDidChangeConfiguration.fire(_);const b=this._configuration.options;if(_.hasChanged(146)){const C=b.get(146);this._onDidLayoutChange.fire(C)}})),this._contextKeyService=this._register(a.createScoped(this._domElement)),this._notificationService=c,this._codeEditorService=s,this._commandService=r,this._themeService=l,this._register(new Woe(this,this._contextKeyService)),this._register(new Hoe(this,this._contextKeyService,u)),this._instantiationService=this._register(n.createChild(new jg([De,this._contextKeyService]))),this._modelData=null,this._focusTracker=new Voe(e,this._overflowWidgetsDomNode),this._register(this._focusTracker.onChange(()=>{this._editorWidgetFocus.setValue(this._focusTracker.hasFocus())})),this._contentWidgets={},this._overlayWidgets={},this._glyphMarginWidgets={};let g;Array.isArray(i.contributions)?g=i.contributions:g=Af.getEditorContributions(),this._contributions.initialize(this,g,this._instantiationService);for(const _ of Af.getEditorActions()){if(this._actions.has(_.id)){Ze(new Error(`Cannot have two actions with the same id ${_.id}`));continue}const b=new N8(_.id,_.label,_.alias,_.metadata,_.precondition??void 0,C=>this._instantiationService.invokeFunction(w=>Promise.resolve(_.runEditorCommand(w,this,C))),this._contextKeyService);this._actions.set(b.id,b)}const p=()=>!this._configuration.options.get(92)&&this._configuration.options.get(36).enabled;this._register(new OV(this._domElement,{onDragOver:_=>{if(!p())return;const b=this.getTargetAtClientPoint(_.clientX,_.clientY);b?.position&&this.showDropIndicatorAt(b.position)},onDrop:async _=>{if(!p()||(this.removeDropIndicator(),!_.dataTransfer))return;const b=this.getTargetAtClientPoint(_.clientX,_.clientY);b?.position&&this._onDropIntoEditor.fire({position:b.position,event:_})},onDragLeave:()=>{this.removeDropIndicator()},onDragEnd:()=>{this.removeDropIndicator()}})),this._codeEditorService.addCodeEditor(this)}writeScreenReaderContent(e){this._modelData?.view.writeScreenReaderContent(e)}_createConfiguration(e,t,i,n){return new wI(e,t,i,this._domElement,n)}getId(){return this.getEditorType()+":"+this._id}getEditorType(){return yy.ICodeEditor}dispose(){this._codeEditorService.removeCodeEditor(this),this._focusTracker.dispose(),this._actions.clear(),this._contentWidgets={},this._overlayWidgets={},this._removeDecorationTypes(),this._postDetachModelCleanup(this._detachModel()),this._onDidDispose.fire(),super.dispose()}invokeWithinContext(e){return this._instantiationService.invokeFunction(e)}updateOptions(e){this._configuration.updateOptions(e||{})}getOptions(){return this._configuration.options}getOption(e){return this._configuration.options.get(e)}getRawOptions(){return this._configuration.getRawOptions()}getOverflowWidgetsDomNode(){return this._overflowWidgetsDomNode}getConfiguredWordAtPosition(e){return this._modelData?ii.getWordAtPosition(this._modelData.model,this._configuration.options.get(132),this._configuration.options.get(131),e):null}getValue(e=null){if(!this._modelData)return"";const t=!!(e&&e.preserveBOM);let i=0;return e&&e.lineEnding&&e.lineEnding===` -`?i=1:e&&e.lineEnding&&e.lineEnding===`\r -`&&(i=2),this._modelData.model.getValue(i,t)}setValue(e){try{if(this._beginUpdate(),!this._modelData)return;this._modelData.model.setValue(e)}finally{this._endUpdate()}}getModel(){return this._modelData?this._modelData.model:null}setModel(e=null){try{this._beginUpdate();const t=e;if(this._modelData===null&&t===null||this._modelData&&this._modelData.model===t)return;const i={oldModelUrl:this._modelData?.model.uri||null,newModelUrl:t?.uri||null};this._onWillChangeModel.fire(i);const n=this.hasTextFocus(),s=this._detachModel();this._attachModel(t),n&&this.hasModel()&&this.focus(),this._removeDecorationTypes(),this._onDidChangeModel.fire(i),this._postDetachModelCleanup(s),this._contributionsDisposable=this._contributions.onAfterModelAttached()}finally{this._endUpdate()}}_removeDecorationTypes(){if(this._decorationTypeKeysToIds={},this._decorationTypeSubtypes){for(const e in this._decorationTypeSubtypes){const t=this._decorationTypeSubtypes[e];for(const i in t)this._removeDecorationType(e+"-"+i)}this._decorationTypeSubtypes={}}}getVisibleRanges(){return this._modelData?this._modelData.viewModel.getVisibleRanges():[]}getVisibleRangesPlusViewportAboveBelow(){return this._modelData?this._modelData.viewModel.getVisibleRangesPlusViewportAboveBelow():[]}getWhitespaces(){return this._modelData?this._modelData.viewModel.viewLayout.getWhitespaces():[]}static _getVerticalOffsetAfterPosition(e,t,i,n){const s=e.model.validatePosition({lineNumber:t,column:i}),r=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(s);return e.viewModel.viewLayout.getVerticalOffsetAfterLineNumber(r.lineNumber,n)}getTopForLineNumber(e,t=!1){return this._modelData?md._getVerticalOffsetForPosition(this._modelData,e,1,t):-1}getTopForPosition(e,t){return this._modelData?md._getVerticalOffsetForPosition(this._modelData,e,t,!1):-1}static _getVerticalOffsetForPosition(e,t,i,n=!1){const s=e.model.validatePosition({lineNumber:t,column:i}),r=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(s);return e.viewModel.viewLayout.getVerticalOffsetForLineNumber(r.lineNumber,n)}getBottomForLineNumber(e,t=!1){if(!this._modelData)return-1;const i=this._modelData.model.getLineMaxColumn(e);return md._getVerticalOffsetAfterPosition(this._modelData,e,i,t)}setHiddenAreas(e,t){this._modelData?.viewModel.setHiddenAreas(e.map(i=>I.lift(i)),t)}getVisibleColumnFromPosition(e){if(!this._modelData)return e.column;const t=this._modelData.model.validatePosition(e),i=this._modelData.model.getOptions().tabSize;return _i.visibleColumnFromColumn(this._modelData.model.getLineContent(t.lineNumber),t.column,i)+1}getPosition(){return this._modelData?this._modelData.viewModel.getPosition():null}setPosition(e,t="api"){if(this._modelData){if(!P.isIPosition(e))throw new Error("Invalid arguments");this._modelData.viewModel.setSelections(t,[{selectionStartLineNumber:e.lineNumber,selectionStartColumn:e.column,positionLineNumber:e.lineNumber,positionColumn:e.column}])}}_sendRevealRange(e,t,i,n){if(!this._modelData)return;if(!I.isIRange(e))throw new Error("Invalid arguments");const s=this._modelData.model.validateRange(e),r=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(s);this._modelData.viewModel.revealRange("api",i,r,t,n)}revealLine(e,t=0){this._revealLine(e,0,t)}revealLineInCenter(e,t=0){this._revealLine(e,1,t)}revealLineInCenterIfOutsideViewport(e,t=0){this._revealLine(e,2,t)}revealLineNearTop(e,t=0){this._revealLine(e,5,t)}_revealLine(e,t,i){if(typeof e!="number")throw new Error("Invalid arguments");this._sendRevealRange(new I(e,1,e,1),t,!1,i)}revealPosition(e,t=0){this._revealPosition(e,0,!0,t)}revealPositionInCenter(e,t=0){this._revealPosition(e,1,!0,t)}revealPositionInCenterIfOutsideViewport(e,t=0){this._revealPosition(e,2,!0,t)}revealPositionNearTop(e,t=0){this._revealPosition(e,5,!0,t)}_revealPosition(e,t,i,n){if(!P.isIPosition(e))throw new Error("Invalid arguments");this._sendRevealRange(new I(e.lineNumber,e.column,e.lineNumber,e.column),t,i,n)}getSelection(){return this._modelData?this._modelData.viewModel.getSelection():null}getSelections(){return this._modelData?this._modelData.viewModel.getSelections():null}setSelection(e,t="api"){const i=Fe.isISelection(e),n=I.isIRange(e);if(!i&&!n)throw new Error("Invalid arguments");if(i)this._setSelectionImpl(e,t);else if(n){const s={selectionStartLineNumber:e.startLineNumber,selectionStartColumn:e.startColumn,positionLineNumber:e.endLineNumber,positionColumn:e.endColumn};this._setSelectionImpl(s,t)}}_setSelectionImpl(e,t){if(!this._modelData)return;const i=new Fe(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn);this._modelData.viewModel.setSelections(t,[i])}revealLines(e,t,i=0){this._revealLines(e,t,0,i)}revealLinesInCenter(e,t,i=0){this._revealLines(e,t,1,i)}revealLinesInCenterIfOutsideViewport(e,t,i=0){this._revealLines(e,t,2,i)}revealLinesNearTop(e,t,i=0){this._revealLines(e,t,5,i)}_revealLines(e,t,i,n){if(typeof e!="number"||typeof t!="number")throw new Error("Invalid arguments");this._sendRevealRange(new I(e,1,t,1),i,!1,n)}revealRange(e,t=0,i=!1,n=!0){this._revealRange(e,i?1:0,n,t)}revealRangeInCenter(e,t=0){this._revealRange(e,1,!0,t)}revealRangeInCenterIfOutsideViewport(e,t=0){this._revealRange(e,2,!0,t)}revealRangeNearTop(e,t=0){this._revealRange(e,5,!0,t)}revealRangeNearTopIfOutsideViewport(e,t=0){this._revealRange(e,6,!0,t)}revealRangeAtTop(e,t=0){this._revealRange(e,3,!0,t)}_revealRange(e,t,i,n){if(!I.isIRange(e))throw new Error("Invalid arguments");this._sendRevealRange(I.lift(e),t,i,n)}setSelections(e,t="api",i=0){if(this._modelData){if(!e||e.length===0)throw new Error("Invalid arguments");for(let n=0,s=e.length;n0&&this._modelData.viewModel.restoreCursorState(i):this._modelData.viewModel.restoreCursorState([i]),this._contributions.restoreViewState(t.contributionsState||{});const n=this._modelData.viewModel.reduceRestoreState(t.viewState);this._modelData.view.restoreState(n)}}handleInitialized(){this._getViewModel()?.visibleLinesStabilized()}getContribution(e){return this._contributions.get(e)}getActions(){return Array.from(this._actions.values())}getSupportedActions(){let e=this.getActions();return e=e.filter(t=>t.isSupported()),e}getAction(e){return this._actions.get(e)||null}trigger(e,t,i){i=i||{};try{switch(this._beginUpdate(),t){case"compositionStart":this._startComposition();return;case"compositionEnd":this._endComposition(e);return;case"type":{const s=i;this._type(e,s.text||"");return}case"replacePreviousChar":{const s=i;this._compositionType(e,s.text||"",s.replaceCharCnt||0,0,0);return}case"compositionType":{const s=i;this._compositionType(e,s.text||"",s.replacePrevCharCnt||0,s.replaceNextCharCnt||0,s.positionDelta||0);return}case"paste":{const s=i;this._paste(e,s.text||"",s.pasteOnNewLine||!1,s.multicursorText||null,s.mode||null,s.clipboardEvent);return}case"cut":this._cut(e);return}const n=this.getAction(t);if(n){Promise.resolve(n.run(i)).then(void 0,Ze);return}if(!this._modelData||this._triggerEditorCommand(e,t,i))return;this._triggerCommand(t,i)}finally{this._endUpdate()}}_triggerCommand(e,t){this._commandService.executeCommand(e,t)}_startComposition(){this._modelData&&(this._modelData.viewModel.startComposition(),this._onDidCompositionStart.fire())}_endComposition(e){this._modelData&&(this._modelData.viewModel.endComposition(e),this._onDidCompositionEnd.fire())}_type(e,t){!this._modelData||t.length===0||(e==="keyboard"&&this._onWillType.fire(t),this._modelData.viewModel.type(t,e),e==="keyboard"&&this._onDidType.fire(t))}_compositionType(e,t,i,n,s){this._modelData&&this._modelData.viewModel.compositionType(t,i,n,s,e)}_paste(e,t,i,n,s,r){if(!this._modelData)return;const a=this._modelData.viewModel,l=a.getSelection().getStartPosition();a.paste(t,i,n,e);const c=a.getSelection().getStartPosition();e==="keyboard"&&this._onDidPaste.fire({clipboardEvent:r,range:new I(l.lineNumber,l.column,c.lineNumber,c.column),languageId:s})}_cut(e){this._modelData&&this._modelData.viewModel.cut(e)}_triggerEditorCommand(e,t,i){const n=Af.getEditorCommand(t);return n?(i=i||{},i.source=e,this._instantiationService.invokeFunction(s=>{Promise.resolve(n.runEditorCommand(s,this,i)).then(void 0,Ze)}),!0):!1}_getViewModel(){return this._modelData?this._modelData.viewModel:null}pushUndoStop(){return!this._modelData||this._configuration.options.get(92)?!1:(this._modelData.model.pushStackElement(),!0)}popUndoStop(){return!this._modelData||this._configuration.options.get(92)?!1:(this._modelData.model.popStackElement(),!0)}executeEdits(e,t,i){if(!this._modelData||this._configuration.options.get(92))return!1;let n;return i?Array.isArray(i)?n=()=>i:n=i:n=()=>null,this._modelData.viewModel.executeEdits(e,t,n),!0}executeCommand(e,t){this._modelData&&this._modelData.viewModel.executeCommand(t,e)}executeCommands(e,t){this._modelData&&this._modelData.viewModel.executeCommands(t,e)}createDecorationsCollection(e){return new zoe(this,e)}changeDecorations(e){return this._modelData?this._modelData.model.changeDecorations(e,this._id):null}getLineDecorations(e){return this._modelData?this._modelData.model.getLineDecorations(e,this._id,rC(this._configuration.options)):null}getDecorationsInRange(e){return this._modelData?this._modelData.model.getDecorationsInRange(e,this._id,rC(this._configuration.options)):null}deltaDecorations(e,t){return this._modelData?e.length===0&&t.length===0?e:this._modelData.model.deltaDecorations(e,t,this._id):[]}removeDecorations(e){!this._modelData||e.length===0||this._modelData.model.changeDecorations(t=>{t.deltaDecorations(e,[])})}removeDecorationsByType(e){const t=this._decorationTypeKeysToIds[e];t&&this.changeDecorations(i=>i.deltaDecorations(t,[])),this._decorationTypeKeysToIds.hasOwnProperty(e)&&delete this._decorationTypeKeysToIds[e],this._decorationTypeSubtypes.hasOwnProperty(e)&&delete this._decorationTypeSubtypes[e]}getLayoutInfo(){return this._configuration.options.get(146)}createOverviewRuler(e){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.createOverviewRuler(e)}getContainerDomNode(){return this._domElement}getDomNode(){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.domNode.domNode}delegateVerticalScrollbarPointerDown(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.delegateScrollFromMouseWheelEvent(e)}layout(e,t=!1){this._configuration.observeContainer(e),t||this.render()}focus(){!this._modelData||!this._modelData.hasRealView||this._modelData.view.focus()}hasTextFocus(){return!this._modelData||!this._modelData.hasRealView?!1:this._modelData.view.isFocused()}hasWidgetFocus(){return this._focusTracker&&this._focusTracker.hasFocus()}addContentWidget(e){const t={widget:e,position:e.getPosition()};this._contentWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a content widget with the same id:"+e.getId()),this._contentWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(t)}layoutContentWidget(e){const t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){const i=this._contentWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(i)}}removeContentWidget(e){const t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){const i=this._contentWidgets[t];delete this._contentWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(i)}}addOverlayWidget(e){const t={widget:e,position:e.getPosition()};this._overlayWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(t)}layoutOverlayWidget(e){const t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){const i=this._overlayWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(i)}}removeOverlayWidget(e){const t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){const i=this._overlayWidgets[t];delete this._overlayWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(i)}}addGlyphMarginWidget(e){const t={widget:e,position:e.getPosition()};this._glyphMarginWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a glyph margin widget with the same id."),this._glyphMarginWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addGlyphMarginWidget(t)}layoutGlyphMarginWidget(e){const t=e.getId();if(this._glyphMarginWidgets.hasOwnProperty(t)){const i=this._glyphMarginWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutGlyphMarginWidget(i)}}removeGlyphMarginWidget(e){const t=e.getId();if(this._glyphMarginWidgets.hasOwnProperty(t)){const i=this._glyphMarginWidgets[t];delete this._glyphMarginWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeGlyphMarginWidget(i)}}changeViewZones(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.change(e)}getTargetAtClientPoint(e,t){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.getTargetAtClientPoint(e,t)}getScrolledVisiblePosition(e){if(!this._modelData||!this._modelData.hasRealView)return null;const t=this._modelData.model.validatePosition(e),i=this._configuration.options,n=i.get(146),s=md._getVerticalOffsetForPosition(this._modelData,t.lineNumber,t.column)-this.getScrollTop(),r=this._modelData.view.getOffsetForColumn(t.lineNumber,t.column)+n.glyphMarginWidth+n.lineNumbersWidth+n.decorationsWidth-this.getScrollLeft();return{top:s,left:r,height:i.get(67)}}getOffsetForColumn(e,t){return!this._modelData||!this._modelData.hasRealView?-1:this._modelData.view.getOffsetForColumn(e,t)}render(e=!1){!this._modelData||!this._modelData.hasRealView||this._modelData.viewModel.batchEvents(()=>{this._modelData.view.render(!0,e)})}setAriaOptions(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.setAriaOptions(e)}applyFontInfo(e){qi(e,this._configuration.options.get(50))}setBanner(e,t){this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._bannerDomNode.remove(),this._bannerDomNode=e,this._configuration.setReservedHeight(e?t:0),this._bannerDomNode&&this._domElement.prepend(this._bannerDomNode)}_attachModel(e){if(!e){this._modelData=null;return}const t=[];this._domElement.setAttribute("data-mode-id",e.getLanguageId()),this._configuration.setIsDominatedByLongLines(e.isDominatedByLongLines()),this._configuration.setModelLineCount(e.getLineCount());const i=e.onBeforeAttached(),n=new Moe(this._id,this._configuration,e,q2.create(fe(this._domElement)),G2.create(this._configuration.options),a=>fs(fe(this._domElement),a),this.languageConfigurationService,this._themeService,i,{batchChanges:a=>{try{return this._beginUpdate(),a()}finally{this._endUpdate()}}});t.push(e.onWillDispose(()=>this.setModel(null))),t.push(n.onEvent(a=>{switch(a.kind){case 0:this._onDidContentSizeChange.fire(a);break;case 1:this._editorTextFocus.setValue(a.hasFocus);break;case 2:this._onDidScrollChange.fire(a);break;case 3:this._onDidChangeViewZones.fire();break;case 4:this._onDidChangeHiddenAreas.fire();break;case 5:this._onDidAttemptReadOnlyEdit.fire();break;case 6:{if(a.reachedMaxCursorCount){const h=this.getOption(80),u=m("cursors.maximum","The number of cursors has been limited to {0}. Consider using [find and replace](https://code.visualstudio.com/docs/editor/codebasics#_find-and-replace) for larger changes or increase the editor multi cursor limit setting.",h);this._notificationService.prompt(bT.Warning,u,[{label:"Find and Replace",run:()=>{this._commandService.executeCommand("editor.action.startFindReplaceAction")}},{label:m("goToSetting","Increase Multi Cursor Limit"),run:()=>{this._commandService.executeCommand("workbench.action.openSettings2",{query:"editor.multiCursorLimit"})}}])}const l=[];for(let h=0,u=a.selections.length;h{this._paste("keyboard",s,r,a,l)},type:s=>{this._type("keyboard",s)},compositionType:(s,r,a,l)=>{this._compositionType("keyboard",s,r,a,l)},startComposition:()=>{this._startComposition()},endComposition:()=>{this._endComposition("keyboard")},cut:()=>{this._cut("keyboard")}}:t={paste:(s,r,a,l)=>{const c={text:s,pasteOnNewLine:r,multicursorText:a,mode:l};this._commandService.executeCommand("paste",c)},type:s=>{const r={text:s};this._commandService.executeCommand("type",r)},compositionType:(s,r,a,l)=>{if(a||l){const c={text:s,replacePrevCharCnt:r,replaceNextCharCnt:a,positionDelta:l};this._commandService.executeCommand("compositionType",c)}else{const c={text:s,replaceCharCnt:r};this._commandService.executeCommand("replacePreviousChar",c)}},startComposition:()=>{this._commandService.executeCommand("compositionStart",{})},endComposition:()=>{this._commandService.executeCommand("compositionEnd",{})},cut:()=>{this._commandService.executeCommand("cut",{})}};const i=new Iy(e.coordinatesConverter);return i.onKeyDown=s=>this._onKeyDown.fire(s),i.onKeyUp=s=>this._onKeyUp.fire(s),i.onContextMenu=s=>this._onContextMenu.fire(s),i.onMouseMove=s=>this._onMouseMove.fire(s),i.onMouseLeave=s=>this._onMouseLeave.fire(s),i.onMouseDown=s=>this._onMouseDown.fire(s),i.onMouseUp=s=>this._onMouseUp.fire(s),i.onMouseDrag=s=>this._onMouseDrag.fire(s),i.onMouseDrop=s=>this._onMouseDrop.fire(s),i.onMouseDropCanceled=s=>this._onMouseDropCanceled.fire(s),i.onMouseWheel=s=>this._onMouseWheel.fire(s),[new RI(t,this._configuration,this._themeService.getColorTheme(),e,i,this._overflowWidgetsDomNode,this._instantiationService),!0]}_postDetachModelCleanup(e){e?.removeAllDecorationsWithOwnerId(this._id)}_detachModel(){if(this._contributionsDisposable?.dispose(),this._contributionsDisposable=void 0,!this._modelData)return null;const e=this._modelData.model,t=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),t&&this._domElement.contains(t)&&t.remove(),this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._bannerDomNode.remove(),e}_removeDecorationType(e){this._codeEditorService.removeDecorationType(e)}hasModel(){return this._modelData!==null}showDropIndicatorAt(e){const t=[{range:new I(e.lineNumber,e.column,e.lineNumber,e.column),options:md.dropIntoEditorDecorationOptions}];this._dropIntoEditorDecorations.set(t),this.revealPosition(e,1)}removeDropIndicator(){this._dropIntoEditorDecorations.clear()}setContextValue(e,t){this._contextKeyService.createKey(e,t)}_beginUpdate(){this._updateCounter++,this._updateCounter===1&&this._onBeginUpdate.fire()}_endUpdate(){this._updateCounter--,this._updateCounter===0&&this._onEndUpdate.fire()}},md=dh,dh.dropIntoEditorDecorationOptions=kt.register({description:"workbench-dnd-target",className:"dnd-target"}),dh);I_=md=Ooe([Aa(3,ke),Aa(4,Pt),Aa(5,hi),Aa(6,De),Aa(7,en),Aa(8,mn),Aa(9,ms),Aa(10,Gn),Aa(11,Se)],I_);let Foe=0;class Boe{constructor(e,t,i,n,s,r){this.model=e,this.viewModel=t,this.view=i,this.hasRealView=n,this.listenersToRemove=s,this.attachedView=r}dispose(){xt(this.listenersToRemove),this.model.onBeforeDetached(this.attachedView),this.hasRealView&&this.view.dispose(),this.viewModel.dispose()}}class t4 extends z{constructor(e){super(),this._emitterOptions=e,this._onDidChangeToTrue=this._register(new A(this._emitterOptions)),this.onDidChangeToTrue=this._onDidChangeToTrue.event,this._onDidChangeToFalse=this._register(new A(this._emitterOptions)),this.onDidChangeToFalse=this._onDidChangeToFalse.event,this._value=0}setValue(e){const t=e?2:1;this._value!==t&&(this._value=t,this._value===2?this._onDidChangeToTrue.fire():this._value===1&&this._onDidChangeToFalse.fire())}}class sn extends A{constructor(e,t){super({deliveryQueue:t}),this._contributions=e}fire(e){this._contributions.onBeforeInteractionEvent(),super.fire(e)}}class Woe extends z{constructor(e,t){super(),this._editor=e,t.createKey("editorId",e.getId()),this._editorSimpleInput=K.editorSimpleInput.bindTo(t),this._editorFocus=K.focus.bindTo(t),this._textInputFocus=K.textInputFocus.bindTo(t),this._editorTextFocus=K.editorTextFocus.bindTo(t),this._tabMovesFocus=K.tabMovesFocus.bindTo(t),this._editorReadonly=K.readOnly.bindTo(t),this._inDiffEditor=K.inDiffEditor.bindTo(t),this._editorColumnSelection=K.columnSelection.bindTo(t),this._hasMultipleSelections=K.hasMultipleSelections.bindTo(t),this._hasNonEmptySelection=K.hasNonEmptySelection.bindTo(t),this._canUndo=K.canUndo.bindTo(t),this._canRedo=K.canRedo.bindTo(t),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromConfig())),this._register(this._editor.onDidChangeCursorSelection(()=>this._updateFromSelection())),this._register(this._editor.onDidFocusEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidFocusEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidChangeModel(()=>this._updateFromModel())),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromModel())),this._register(xv.onDidChangeTabFocus(i=>this._tabMovesFocus.set(i))),this._updateFromConfig(),this._updateFromSelection(),this._updateFromFocus(),this._updateFromModel(),this._editorSimpleInput.set(this._editor.isSimpleWidget)}_updateFromConfig(){const e=this._editor.getOptions();this._tabMovesFocus.set(xv.getTabFocusMode()),this._editorReadonly.set(e.get(92)),this._inDiffEditor.set(e.get(61)),this._editorColumnSelection.set(e.get(22))}_updateFromSelection(){const e=this._editor.getSelections();e?(this._hasMultipleSelections.set(e.length>1),this._hasNonEmptySelection.set(e.some(t=>!t.isEmpty()))):(this._hasMultipleSelections.reset(),this._hasNonEmptySelection.reset())}_updateFromFocus(){this._editorFocus.set(this._editor.hasWidgetFocus()&&!this._editor.isSimpleWidget),this._editorTextFocus.set(this._editor.hasTextFocus()&&!this._editor.isSimpleWidget),this._textInputFocus.set(this._editor.hasTextFocus())}_updateFromModel(){const e=this._editor.getModel();this._canUndo.set(!!(e&&e.canUndo())),this._canRedo.set(!!(e&&e.canRedo()))}}class Hoe extends z{constructor(e,t,i){super(),this._editor=e,this._contextKeyService=t,this._languageFeaturesService=i,this._langId=K.languageId.bindTo(t),this._hasCompletionItemProvider=K.hasCompletionItemProvider.bindTo(t),this._hasCodeActionsProvider=K.hasCodeActionsProvider.bindTo(t),this._hasCodeLensProvider=K.hasCodeLensProvider.bindTo(t),this._hasDefinitionProvider=K.hasDefinitionProvider.bindTo(t),this._hasDeclarationProvider=K.hasDeclarationProvider.bindTo(t),this._hasImplementationProvider=K.hasImplementationProvider.bindTo(t),this._hasTypeDefinitionProvider=K.hasTypeDefinitionProvider.bindTo(t),this._hasHoverProvider=K.hasHoverProvider.bindTo(t),this._hasDocumentHighlightProvider=K.hasDocumentHighlightProvider.bindTo(t),this._hasDocumentSymbolProvider=K.hasDocumentSymbolProvider.bindTo(t),this._hasReferenceProvider=K.hasReferenceProvider.bindTo(t),this._hasRenameProvider=K.hasRenameProvider.bindTo(t),this._hasSignatureHelpProvider=K.hasSignatureHelpProvider.bindTo(t),this._hasInlayHintsProvider=K.hasInlayHintsProvider.bindTo(t),this._hasDocumentFormattingProvider=K.hasDocumentFormattingProvider.bindTo(t),this._hasDocumentSelectionFormattingProvider=K.hasDocumentSelectionFormattingProvider.bindTo(t),this._hasMultipleDocumentFormattingProvider=K.hasMultipleDocumentFormattingProvider.bindTo(t),this._hasMultipleDocumentSelectionFormattingProvider=K.hasMultipleDocumentSelectionFormattingProvider.bindTo(t),this._isInEmbeddedEditor=K.isInEmbeddedEditor.bindTo(t);const n=()=>this._update();this._register(e.onDidChangeModel(n)),this._register(e.onDidChangeModelLanguage(n)),this._register(i.completionProvider.onDidChange(n)),this._register(i.codeActionProvider.onDidChange(n)),this._register(i.codeLensProvider.onDidChange(n)),this._register(i.definitionProvider.onDidChange(n)),this._register(i.declarationProvider.onDidChange(n)),this._register(i.implementationProvider.onDidChange(n)),this._register(i.typeDefinitionProvider.onDidChange(n)),this._register(i.hoverProvider.onDidChange(n)),this._register(i.documentHighlightProvider.onDidChange(n)),this._register(i.documentSymbolProvider.onDidChange(n)),this._register(i.referenceProvider.onDidChange(n)),this._register(i.renameProvider.onDidChange(n)),this._register(i.documentFormattingEditProvider.onDidChange(n)),this._register(i.documentRangeFormattingEditProvider.onDidChange(n)),this._register(i.signatureHelpProvider.onDidChange(n)),this._register(i.inlayHintsProvider.onDidChange(n)),n()}dispose(){super.dispose()}reset(){this._contextKeyService.bufferChangeEvents(()=>{this._langId.reset(),this._hasCompletionItemProvider.reset(),this._hasCodeActionsProvider.reset(),this._hasCodeLensProvider.reset(),this._hasDefinitionProvider.reset(),this._hasDeclarationProvider.reset(),this._hasImplementationProvider.reset(),this._hasTypeDefinitionProvider.reset(),this._hasHoverProvider.reset(),this._hasDocumentHighlightProvider.reset(),this._hasDocumentSymbolProvider.reset(),this._hasReferenceProvider.reset(),this._hasRenameProvider.reset(),this._hasDocumentFormattingProvider.reset(),this._hasDocumentSelectionFormattingProvider.reset(),this._hasSignatureHelpProvider.reset(),this._isInEmbeddedEditor.reset()})}_update(){const e=this._editor.getModel();if(!e){this.reset();return}this._contextKeyService.bufferChangeEvents(()=>{this._langId.set(e.getLanguageId()),this._hasCompletionItemProvider.set(this._languageFeaturesService.completionProvider.has(e)),this._hasCodeActionsProvider.set(this._languageFeaturesService.codeActionProvider.has(e)),this._hasCodeLensProvider.set(this._languageFeaturesService.codeLensProvider.has(e)),this._hasDefinitionProvider.set(this._languageFeaturesService.definitionProvider.has(e)),this._hasDeclarationProvider.set(this._languageFeaturesService.declarationProvider.has(e)),this._hasImplementationProvider.set(this._languageFeaturesService.implementationProvider.has(e)),this._hasTypeDefinitionProvider.set(this._languageFeaturesService.typeDefinitionProvider.has(e)),this._hasHoverProvider.set(this._languageFeaturesService.hoverProvider.has(e)),this._hasDocumentHighlightProvider.set(this._languageFeaturesService.documentHighlightProvider.has(e)),this._hasDocumentSymbolProvider.set(this._languageFeaturesService.documentSymbolProvider.has(e)),this._hasReferenceProvider.set(this._languageFeaturesService.referenceProvider.has(e)),this._hasRenameProvider.set(this._languageFeaturesService.renameProvider.has(e)),this._hasSignatureHelpProvider.set(this._languageFeaturesService.signatureHelpProvider.has(e)),this._hasInlayHintsProvider.set(this._languageFeaturesService.inlayHintsProvider.has(e)),this._hasDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.has(e)||this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasMultipleDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.all(e).length+this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._hasMultipleDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._isInEmbeddedEditor.set(e.uri.scheme===Te.walkThroughSnippet||e.uri.scheme===Te.vscodeChatCodeBlock)})}}class Voe extends z{constructor(e,t){super(),this._onChange=this._register(new A),this.onChange=this._onChange.event,this._hadFocus=void 0,this._hasDomElementFocus=!1,this._domFocusTracker=this._register(Ph(e)),this._overflowWidgetsDomNodeHasFocus=!1,this._register(this._domFocusTracker.onDidFocus(()=>{this._hasDomElementFocus=!0,this._update()})),this._register(this._domFocusTracker.onDidBlur(()=>{this._hasDomElementFocus=!1,this._update()})),t&&(this._overflowWidgetsDomNode=this._register(Ph(t)),this._register(this._overflowWidgetsDomNode.onDidFocus(()=>{this._overflowWidgetsDomNodeHasFocus=!0,this._update()})),this._register(this._overflowWidgetsDomNode.onDidBlur(()=>{this._overflowWidgetsDomNodeHasFocus=!1,this._update()})))}_update(){const e=this._hasDomElementFocus||this._overflowWidgetsDomNodeHasFocus;this._hadFocus!==e&&(this._hadFocus=e,this._onChange.fire(void 0))}hasFocus(){return this._hadFocus??!1}}class zoe{get length(){return this._decorationIds.length}constructor(e,t){this._editor=e,this._decorationIds=[],this._isChangingDecorations=!1,Array.isArray(t)&&t.length>0&&this.set(t)}onDidChange(e,t,i){return this._editor.onDidChangeModelDecorations(n=>{this._isChangingDecorations||e.call(t,n)},i)}getRange(e){return!this._editor.hasModel()||e>=this._decorationIds.length?null:this._editor.getModel().getDecorationRange(this._decorationIds[e])}getRanges(){if(!this._editor.hasModel())return[];const e=this._editor.getModel(),t=[];for(const i of this._decorationIds){const n=e.getDecorationRange(i);n&&t.push(n)}return t}has(e){return this._decorationIds.includes(e.id)}clear(){this._decorationIds.length!==0&&this.set([])}set(e){try{this._isChangingDecorations=!0,this._editor.changeDecorations(t=>{this._decorationIds=t.deltaDecorations(this._decorationIds,e)})}finally{this._isChangingDecorations=!1}return this._decorationIds}append(e){let t=[];try{this._isChangingDecorations=!0,this._editor.changeDecorations(i=>{t=i.deltaDecorations([],e),this._decorationIds=this._decorationIds.concat(t)})}finally{this._isChangingDecorations=!1}return t}}const Uoe=encodeURIComponent("");function cL(o){return Uoe+encodeURIComponent(o.toString())+$oe}const Koe=encodeURIComponent('');function qoe(o){return Koe+encodeURIComponent(o.toString())+joe}Sr((o,e)=>{const t=o.getColor(Y0);t&&e.addRule(`.monaco-editor .squiggly-error { background: url("data:image/svg+xml,${cL(t)}") repeat-x bottom left; }`);const i=o.getColor(Il);i&&e.addRule(`.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,${cL(i)}") repeat-x bottom left; }`);const n=o.getColor(ma);n&&e.addRule(`.monaco-editor .squiggly-info { background: url("data:image/svg+xml,${cL(n)}") repeat-x bottom left; }`);const s=o.getColor(xK);s&&e.addRule(`.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,${qoe(s)}") no-repeat bottom left; }`);const r=o.getColor(dQ);r&&e.addRule(`.monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: ${r.rgba.a}; }`)});class qh{static capture(e){if(e.getScrollTop()===0||e.hasPendingScrollAnimation())return new qh(e.getScrollTop(),e.getContentHeight(),null,0,null);let t=null,i=0;const n=e.getVisibleRanges();if(n.length>0){t=n[0].getStartPosition();const s=e.getTopForPosition(t.lineNumber,t.column);i=e.getScrollTop()-s}return new qh(e.getScrollTop(),e.getContentHeight(),t,i,e.getPosition())}constructor(e,t,i,n,s){this._initialScrollTop=e,this._initialContentHeight=t,this._visiblePosition=i,this._visiblePositionScrollDelta=n,this._cursorPosition=s}restore(e){if(!(this._initialContentHeight===e.getContentHeight()&&this._initialScrollTop===e.getScrollTop())&&this._visiblePosition){const t=e.getTopForPosition(this._visiblePosition.lineNumber,this._visiblePosition.column);e.setScrollTop(t+this._visiblePositionScrollDelta)}}restoreRelativeVerticalPositionOfCursor(e){if(this._initialContentHeight===e.getContentHeight()&&this._initialScrollTop===e.getScrollTop())return;const t=e.getPosition();if(!this._cursorPosition||!t)return;const i=e.getTopForLineNumber(t.lineNumber)-e.getTopForLineNumber(this._cursorPosition.lineNumber);e.setScrollTop(e.getScrollTop()+i,1)}}function Goe(o,e,t,i){if(o.length===0)return e;if(e.length===0)return o;const n=[];let s=0,r=0;for(;sd?(n.push(l),r++):(n.push(i(a,l)),s++,r++)}for(;s`Apply decorations from ${e.debugName}`},n=>{const s=e.read(n);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}function Bm(o,e){return o.appendChild(e),_e(()=>{e.remove()})}function Zoe(o,e){return o.prepend(e),_e(()=>{e.remove()})}class A8 extends z{get width(){return this._width}get height(){return this._height}get automaticLayout(){return this._automaticLayout}constructor(e,t){super(),this._automaticLayout=!1,this.elementSizeObserver=this._register(new g8(e,t)),this._width=Ge(this,this.elementSizeObserver.getWidth()),this._height=Ge(this,this.elementSizeObserver.getHeight()),this._register(this.elementSizeObserver.onDidChange(i=>Xt(n=>{this._width.set(this.elementSizeObserver.getWidth(),n),this._height.set(this.elementSizeObserver.getHeight(),n)})))}observe(e){this.elementSizeObserver.observe(e)}setAutomaticLayout(e){this._automaticLayout=e,e?this.elementSizeObserver.startObserving():this.elementSizeObserver.stopObserving()}}function i4(o,e,t){let i=e.get(),n=i,s=i;const r=Ge("animatedValue",i);let a=-1;const l=300;let c;t.add(Y_({createEmptyChangeSummary:()=>({animate:!1}),handleChange:(h,u)=>(h.didChange(e)&&(u.animate=u.animate||h.change),!0)},(h,u)=>{c!==void 0&&(o.cancelAnimationFrame(c),c=void 0),n=s,i=e.read(h),a=Date.now()-(u.animate?0:l),d()}));function d(){const h=Date.now()-a;s=Math.floor(Yoe(h,n,i-n,l)),h{this._actualTop.set(i,void 0)},this.onComputedHeight=i=>{this._actualHeight.set(i,void 0)}}}const a0=class a0{constructor(e,t){this._editor=e,this._domElement=t,this._overlayWidgetId=`managedOverlayWidget-${a0._counter++}`,this._overlayWidget={getId:()=>this._overlayWidgetId,getDomNode:()=>this._domElement,getPosition:()=>null},this._editor.addOverlayWidget(this._overlayWidget)}dispose(){this._editor.removeOverlayWidget(this._overlayWidget)}};a0._counter=0;let VI=a0;function Vc(o,e){return We(t=>{for(let[i,n]of Object.entries(e))n&&typeof n=="object"&&"read"in n&&(n=n.read(t)),typeof n=="number"&&(n=`${n}px`),i=i.replace(/[A-Z]/g,s=>"-"+s.toLowerCase()),o.style[i]=n})}function zv(o,e,t,i){const n=new X,s=[];return n.add(To((r,a)=>{const l=e.read(r),c=new Map,d=new Map;t&&t(!0),o.changeViewZones(h=>{for(const u of s)h.removeZone(u),i?.delete(u);s.length=0;for(const u of l){const f=h.addZone(u);u.setZoneId&&u.setZoneId(f),s.push(f),i?.add(f),c.set(u,f)}}),t&&t(!1),a.add(Y_({createEmptyChangeSummary(){return{zoneIds:[]}},handleChange(h,u){const f=d.get(h.changedObservable);return f!==void 0&&u.zoneIds.push(f),!0}},(h,u)=>{for(const f of l)f.onChange&&(d.set(f.onChange,c.get(f)),f.onChange.read(h));t&&t(!0),o.changeViewZones(f=>{for(const g of u.zoneIds)f.layoutZone(g)}),t&&t(!1)}))})),n.add({dispose(){t&&t(!0),o.changeViewZones(r=>{for(const a of s)r.removeZone(a)}),i?.clear(),t&&t(!1)}}),n}function n4(o,e){const t=xC(e,n=>n.original.startLineNumber<=o.lineNumber);if(!t)return I.fromPositions(o);if(t.original.endLineNumberExclusive<=o.lineNumber){const n=o.lineNumber-t.original.endLineNumberExclusive+t.modified.endLineNumberExclusive;return I.fromPositions(new P(n,o.column))}if(!t.innerChanges)return I.fromPositions(new P(t.modified.startLineNumber,1));const i=xC(t.innerChanges,n=>n.originalRange.getStartPosition().isBeforeOrEqual(o));if(!i){const n=o.lineNumber-t.original.startLineNumber+t.modified.startLineNumber;return I.fromPositions(new P(n,o.column))}if(i.originalRange.containsPosition(o))return i.modifiedRange;{const n=Qoe(i.originalRange.getEndPosition(),o);return I.fromPositions(n.addToPosition(i.modifiedRange.getEndPosition()))}}function Qoe(o,e){return o.lineNumber===e.lineNumber?new Po(0,e.column-o.column):new Po(e.lineNumber-o.lineNumber,e.column-1)}function Xoe(o,e){let t;return o.filter(i=>{const n=e(i,t);return t=i,n})}class Uv{static create(e,t=void 0){return new s4(e,e,t)}static createWithDisposable(e,t,i=void 0){const n=new X;return n.add(t),n.add(e),new s4(e,n,i)}}class s4 extends Uv{constructor(e,t,i){super(),this.object=e,this._disposable=t,this._debugOwner=i,this._refCount=1,this._isDisposed=!1,this._owners=[],i&&this._addOwner(i)}_addOwner(e){e&&this._owners.push(e)}createNewRef(e){return this._refCount++,e&&this._addOwner(e),new Joe(this,e)}dispose(){this._isDisposed||(this._isDisposed=!0,this._decreaseRefCount(this._debugOwner))}_decreaseRefCount(e){if(this._refCount--,this._refCount===0&&this._disposable.dispose(),e){const t=this._owners.indexOf(e);t!==-1&&this._owners.splice(t,1)}}}class Joe extends Uv{constructor(e,t){super(),this._base=e,this._debugOwner=t,this._isDisposed=!1}get object(){return this._base.object}createNewRef(e){return this._base.createNewRef(e)}dispose(){this._isDisposed||(this._isDisposed=!0,this._base._decreaseRefCount(this._debugOwner))}}var eM=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},tM=function(o,e){return function(t,i){e(t,i,o)}};const ere=Wi("diff-review-insert",ie.add,m("accessibleDiffViewerInsertIcon","Icon for 'Insert' in accessible diff viewer.")),tre=Wi("diff-review-remove",ie.remove,m("accessibleDiffViewerRemoveIcon","Icon for 'Remove' in accessible diff viewer.")),ire=Wi("diff-review-close",ie.close,m("accessibleDiffViewerCloseIcon","Icon for 'Close' in accessible diff viewer."));var Jf;let qd=(Jf=class extends z{constructor(e,t,i,n,s,r,a,l,c){super(),this._parentNode=e,this._visible=t,this._setVisible=i,this._canClose=n,this._width=s,this._height=r,this._diffs=a,this._models=l,this._instantiationService=c,this._state=cu(this,(d,h)=>{const u=this._visible.read(d);if(this._parentNode.style.visibility=u?"visible":"hidden",!u)return null;const f=h.add(this._instantiationService.createInstance(zI,this._diffs,this._models,this._setVisible,this._canClose)),g=h.add(this._instantiationService.createInstance(UI,this._parentNode,f,this._width,this._height,this._models));return{model:f,view:g}}).recomputeInitiallyAndOnChange(this._store)}next(){Xt(e=>{const t=this._visible.get();this._setVisible(!0,e),t&&this._state.get().model.nextGroup(e)})}prev(){Xt(e=>{this._setVisible(!0,e),this._state.get().model.previousGroup(e)})}close(){Xt(e=>{this._setVisible(!1,e)})}},Jf._ttPolicy=Kc("diffReview",{createHTML:e=>e}),Jf);qd=eM([tM(8,ke)],qd);let zI=class extends z{constructor(e,t,i,n,s){super(),this._diffs=e,this._models=t,this._setVisible=i,this.canClose=n,this._accessibilitySignalService=s,this._groups=Ge(this,[]),this._currentGroupIdx=Ge(this,0),this._currentElementIdx=Ge(this,0),this.groups=this._groups,this.currentGroup=this._currentGroupIdx.map((r,a)=>this._groups.read(a)[r]),this.currentGroupIndex=this._currentGroupIdx,this.currentElement=this._currentElementIdx.map((r,a)=>this.currentGroup.read(a)?.lines[r]),this._register(We(r=>{const a=this._diffs.read(r);if(!a){this._groups.set([],void 0);return}const l=nre(a,this._models.getOriginalModel().getLineCount(),this._models.getModifiedModel().getLineCount());Xt(c=>{const d=this._models.getModifiedPosition();if(d){const h=l.findIndex(u=>d?.lineNumber{const a=this.currentElement.read(r);a?.type===vn.Deleted?this._accessibilitySignalService.playSignal(rr.diffLineDeleted,{source:"accessibleDiffViewer.currentElementChanged"}):a?.type===vn.Added&&this._accessibilitySignalService.playSignal(rr.diffLineInserted,{source:"accessibleDiffViewer.currentElementChanged"})})),this._register(We(r=>{const a=this.currentElement.read(r);if(a&&a.type!==vn.Header){const l=a.modifiedLineNumber??a.diff.modified.startLineNumber;this._models.modifiedSetSelection(I.fromPositions(new P(l,1)))}}))}_goToGroupDelta(e,t){const i=this.groups.get();!i||i.length<=1||c_(t,n=>{this._currentGroupIdx.set(Re.ofLength(i.length).clipCyclic(this._currentGroupIdx.get()+e),n),this._currentElementIdx.set(0,n)})}nextGroup(e){this._goToGroupDelta(1,e)}previousGroup(e){this._goToGroupDelta(-1,e)}_goToLineDelta(e){const t=this.currentGroup.get();!t||t.lines.length<=1||Xt(i=>{this._currentElementIdx.set(Re.ofLength(t.lines.length).clip(this._currentElementIdx.get()+e),i)})}goToNextLine(){this._goToLineDelta(1)}goToPreviousLine(){this._goToLineDelta(-1)}goToLine(e){const t=this.currentGroup.get();if(!t)return;const i=t.lines.indexOf(e);i!==-1&&Xt(n=>{this._currentElementIdx.set(i,n)})}revealCurrentElementInEditor(){if(!this.canClose.get())return;this._setVisible(!1,void 0);const e=this.currentElement.get();e&&(e.type===vn.Deleted?this._models.originalReveal(I.fromPositions(new P(e.originalLineNumber,1))):this._models.modifiedReveal(e.type!==vn.Header?I.fromPositions(new P(e.modifiedLineNumber,1)):void 0))}close(){this.canClose.get()&&(this._setVisible(!1,void 0),this._models.modifiedFocus())}};zI=eM([tM(4,rb)],zI);const Sm=3;function nre(o,e,t){const i=[];for(const n of LN(o,(s,r)=>r.modified.startLineNumber-s.modified.endLineNumberExclusive<2*Sm)){const s=[];s.push(new ore);const r=new xe(Math.max(1,n[0].original.startLineNumber-Sm),Math.min(n[n.length-1].original.endLineNumberExclusive+Sm,e+1)),a=new xe(Math.max(1,n[0].modified.startLineNumber-Sm),Math.min(n[n.length-1].modified.endLineNumberExclusive+Sm,t+1));E5(n,(d,h)=>{const u=new xe(d?d.original.endLineNumberExclusive:r.startLineNumber,h?h.original.startLineNumber:r.endLineNumberExclusive),f=new xe(d?d.modified.endLineNumberExclusive:a.startLineNumber,h?h.modified.startLineNumber:a.endLineNumberExclusive);u.forEach(g=>{s.push(new lre(g,f.startLineNumber+(g-u.startLineNumber)))}),h&&(h.original.forEach(g=>{s.push(new rre(h,g))}),h.modified.forEach(g=>{s.push(new are(h,g))}))});const l=n[0].modified.join(n[n.length-1].modified),c=n[0].original.join(n[n.length-1].original);i.push(new sre(new hn(l,c),s))}return i}var vn;(function(o){o[o.Header=0]="Header",o[o.Unchanged=1]="Unchanged",o[o.Deleted=2]="Deleted",o[o.Added=3]="Added"})(vn||(vn={}));class sre{constructor(e,t){this.range=e,this.lines=t}}class ore{constructor(){this.type=vn.Header}}class rre{constructor(e,t){this.diff=e,this.originalLineNumber=t,this.type=vn.Deleted,this.modifiedLineNumber=void 0}}class are{constructor(e,t){this.diff=e,this.modifiedLineNumber=t,this.type=vn.Added,this.originalLineNumber=void 0}}class lre{constructor(e,t){this.originalLineNumber=e,this.modifiedLineNumber=t,this.type=vn.Unchanged}}let UI=class extends z{constructor(e,t,i,n,s,r){super(),this._element=e,this._model=t,this._width=i,this._height=n,this._models=s,this._languageService=r,this.domNode=this._element,this.domNode.className="monaco-component diff-review monaco-editor-background";const a=document.createElement("div");a.className="diff-review-actions",this._actionBar=this._register(new oo(a)),this._register(We(l=>{this._actionBar.clear(),this._model.canClose.read(l)&&this._actionBar.push(new Fs("diffreview.close",m("label.close","Close"),"close-diff-review "+Ee.asClassName(ire),!0,async()=>t.close()),{label:!1,icon:!0})})),this._content=document.createElement("div"),this._content.className="diff-review-content",this._content.setAttribute("role","code"),this._scrollbar=this._register(new J0(this._content,{})),un(this.domNode,this._scrollbar.getDomNode(),a),this._register(We(l=>{this._height.read(l),this._width.read(l),this._scrollbar.scanDomNode()})),this._register(_e(()=>{un(this.domNode)})),this._register(Vc(this.domNode,{width:this._width,height:this._height})),this._register(Vc(this._content,{width:this._width,height:this._height})),this._register(To((l,c)=>{this._model.currentGroup.read(l),this._render(c)})),this._register(jt(this.domNode,"keydown",l=>{(l.equals(18)||l.equals(2066)||l.equals(530))&&(l.preventDefault(),this._model.goToNextLine()),(l.equals(16)||l.equals(2064)||l.equals(528))&&(l.preventDefault(),this._model.goToPreviousLine()),(l.equals(9)||l.equals(2057)||l.equals(521)||l.equals(1033))&&(l.preventDefault(),this._model.close()),(l.equals(10)||l.equals(3))&&(l.preventDefault(),this._model.revealCurrentElementInEditor())}))}_render(e){const t=this._models.getOriginalOptions(),i=this._models.getModifiedOptions(),n=document.createElement("div");n.className="diff-review-table",n.setAttribute("role","list"),n.setAttribute("aria-label",m("ariaLabel","Accessible Diff Viewer. Use arrow up and down to navigate.")),qi(n,i.get(50)),un(this._content,n);const s=this._models.getOriginalModel(),r=this._models.getModifiedModel();if(!s||!r)return;const a=s.getOptions(),l=r.getOptions(),c=i.get(67),d=this._model.currentGroup.get();for(const h of d?.lines||[]){if(!d)break;let u;if(h.type===vn.Header){const g=document.createElement("div");g.className="diff-review-row",g.setAttribute("role","listitem");const p=d.range,_=this._model.currentGroupIndex.get(),b=this._model.groups.get().length,C=x=>x===0?m("no_lines_changed","no lines changed"):x===1?m("one_line_changed","1 line changed"):m("more_lines_changed","{0} lines changed",x),w=C(p.original.length),v=C(p.modified.length);g.setAttribute("aria-label",m({key:"header",comment:["This is the ARIA label for a git diff header.","A git diff header looks like this: @@ -154,12 +159,39 @@.","That encodes that at original line 154 (which is now line 159), 12 lines were removed/changed with 39 lines.","Variables 0 and 1 refer to the diff index out of total number of diffs.","Variables 2 and 4 will be numbers (a line number).",'Variables 3 and 5 will be "no lines changed", "1 line changed" or "X lines changed", localized separately.']},"Difference {0} of {1}: original line {2}, {3}, modified line {4}, {5}",_+1,b,p.original.startLineNumber,w,p.modified.startLineNumber,v));const y=document.createElement("div");y.className="diff-review-cell diff-review-summary",y.appendChild(document.createTextNode(`${_+1}/${b}: @@ -${p.original.startLineNumber},${p.original.length} +${p.modified.startLineNumber},${p.modified.length} @@`)),g.appendChild(y),u=g}else u=this._createRow(h,c,this._width.get(),t,s,a,i,r,l);n.appendChild(u);const f=Ce(g=>this._model.currentElement.read(g)===h);e.add(We(g=>{const p=f.read(g);u.tabIndex=p?0:-1,p&&u.focus()})),e.add(U(u,"focus",()=>{this._model.goToLine(h)}))}this._scrollbar.scanDomNode()}_createRow(e,t,i,n,s,r,a,l,c){const d=n.get(146),h=d.glyphMarginWidth+d.lineNumbersWidth,u=a.get(146),f=10+u.glyphMarginWidth+u.lineNumbersWidth;let g="diff-review-row",p="";const _="diff-review-spacer";let b=null;switch(e.type){case vn.Added:g="diff-review-row line-insert",p=" char-insert",b=ere;break;case vn.Deleted:g="diff-review-row line-delete",p=" char-delete",b=tre;break}const C=document.createElement("div");C.style.minWidth=i+"px",C.className=g,C.setAttribute("role","listitem"),C.ariaLevel="";const w=document.createElement("div");w.className="diff-review-cell",w.style.height=`${t}px`,C.appendChild(w);const v=document.createElement("span");v.style.width=h+"px",v.style.minWidth=h+"px",v.className="diff-review-line-number"+p,e.originalLineNumber!==void 0?v.appendChild(document.createTextNode(String(e.originalLineNumber))):v.innerText=" ",w.appendChild(v);const y=document.createElement("span");y.style.width=f+"px",y.style.minWidth=f+"px",y.style.paddingRight="10px",y.className="diff-review-line-number"+p,e.modifiedLineNumber!==void 0?y.appendChild(document.createTextNode(String(e.modifiedLineNumber))):y.innerText=" ",w.appendChild(y);const x=document.createElement("span");if(x.className=_,b){const N=document.createElement("span");N.className=Ee.asClassName(b),N.innerText="  ",x.appendChild(N)}else x.innerText="  ";w.appendChild(x);let L;if(e.modifiedLineNumber!==void 0){let N=this._getLineHtml(l,a,c.tabSize,e.modifiedLineNumber,this._languageService.languageIdCodec);qd._ttPolicy&&(N=qd._ttPolicy.createHTML(N)),w.insertAdjacentHTML("beforeend",N),L=l.getLineContent(e.modifiedLineNumber)}else{let N=this._getLineHtml(s,n,r.tabSize,e.originalLineNumber,this._languageService.languageIdCodec);qd._ttPolicy&&(N=qd._ttPolicy.createHTML(N)),w.insertAdjacentHTML("beforeend",N),L=s.getLineContent(e.originalLineNumber)}L.length===0&&(L=m("blankLine","blank"));let E="";switch(e.type){case vn.Unchanged:e.originalLineNumber===e.modifiedLineNumber?E=m({key:"unchangedLine",comment:["The placeholders are contents of the line and should not be translated."]},"{0} unchanged line {1}",L,e.originalLineNumber):E=m("equalLine","{0} original line {1} modified line {2}",L,e.originalLineNumber,e.modifiedLineNumber);break;case vn.Added:E=m("insertLine","+ {0} modified line {1}",L,e.modifiedLineNumber);break;case vn.Deleted:E=m("deleteLine","- {0} original line {1}",L,e.originalLineNumber);break}return C.setAttribute("aria-label",E),C}_getLineHtml(e,t,i,n,s){const r=e.getLineContent(n),a=t.get(50),l=Ni.createEmpty(r,s),c=zs.isBasicASCII(r,e.mightContainNonBasicASCII()),d=zs.containsRTL(r,c,e.mightContainRTL());return Ly(new gu(a.isMonospace&&!t.get(33),a.canUseHalfwidthRightwardsArrow,r,!1,c,d,0,l,[],i,0,a.spaceWidth,a.middotWidth,a.wsmiddotWidth,t.get(118),t.get(100),t.get(95),t.get(51)!==Mc.OFF,null)).html}};UI=eM([tM(5,qt)],UI);class cre{constructor(e){this.editors=e}getOriginalModel(){return this.editors.original.getModel()}getOriginalOptions(){return this.editors.original.getOptions()}originalReveal(e){this.editors.original.revealRange(e),this.editors.original.setSelection(e),this.editors.original.focus()}getModifiedModel(){return this.editors.modified.getModel()}getModifiedOptions(){return this.editors.modified.getOptions()}modifiedReveal(e){e&&(this.editors.modified.revealRange(e),this.editors.modified.setSelection(e)),this.editors.modified.focus()}modifiedSetSelection(e){this.editors.modified.setSelection(e)}modifiedFocus(){this.editors.modified.focus()}getModifiedPosition(){return this.editors.modified.getPosition()??void 0}}D("diffEditor.move.border","#8b8b8b9c",m("diffEditor.move.border","The border color for text that got moved in the diff editor."));D("diffEditor.moveActive.border","#FFA500",m("diffEditor.moveActive.border","The active border color for text that got moved in the diff editor."));D("diffEditor.unchangedRegionShadow",{dark:"#000000",light:"#737373BF",hcDark:"#000000",hcLight:"#737373BF"},m("diffEditor.unchangedRegionShadow","The color of the shadow around unchanged region widgets."));const dre=Wi("diff-insert",ie.add,m("diffInsertIcon","Line decoration for inserts in the diff editor.")),P8=Wi("diff-remove",ie.remove,m("diffRemoveIcon","Line decoration for removals in the diff editor.")),o4=kt.register({className:"line-insert",description:"line-insert",isWholeLine:!0,linesDecorationsClassName:"insert-sign "+Ee.asClassName(dre),marginClassName:"gutter-insert"}),r4=kt.register({className:"line-delete",description:"line-delete",isWholeLine:!0,linesDecorationsClassName:"delete-sign "+Ee.asClassName(P8),marginClassName:"gutter-delete"}),a4=kt.register({className:"line-insert",description:"line-insert",isWholeLine:!0,marginClassName:"gutter-insert"}),l4=kt.register({className:"line-delete",description:"line-delete",isWholeLine:!0,marginClassName:"gutter-delete"}),c4=kt.register({className:"char-insert",description:"char-insert",shouldFillLineOnLineBreak:!0}),hre=kt.register({className:"char-insert",description:"char-insert",isWholeLine:!0}),ure=kt.register({className:"char-insert diff-range-empty",description:"char-insert diff-range-empty"}),$I=kt.register({className:"char-delete",description:"char-delete",shouldFillLineOnLineBreak:!0}),fre=kt.register({className:"char-delete",description:"char-delete",isWholeLine:!0}),gre=kt.register({className:"char-delete diff-range-empty",description:"char-delete diff-range-empty"});var O8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},KI=function(o,e){return function(t,i){e(t,i,o)}},pd;const F8=He("diffProviderFactoryService");let jI=class{constructor(e){this.instantiationService=e}createDiffProvider(e){return this.instantiationService.createInstance(qI,e)}};jI=O8([KI(0,ke)],jI);Qe(F8,jI,1);var hh;let qI=(hh=class{constructor(e,t,i){this.editorWorkerService=t,this.telemetryService=i,this.onDidChangeEventEmitter=new A,this.onDidChange=this.onDidChangeEventEmitter.event,this.diffAlgorithm="advanced",this.diffAlgorithmOnDidChangeSubscription=void 0,this.setOptions(e)}dispose(){this.diffAlgorithmOnDidChangeSubscription?.dispose()}async computeDiff(e,t,i,n){if(typeof this.diffAlgorithm!="string")return this.diffAlgorithm.computeDiff(e,t,i,n);if(e.isDisposed()||t.isDisposed())return{changes:[],identical:!0,quitEarly:!1,moves:[]};if(e.getLineCount()===1&&e.getLineMaxColumn(1)===1)return t.getLineCount()===1&&t.getLineMaxColumn(1)===1?{changes:[],identical:!0,quitEarly:!1,moves:[]}:{changes:[new Ws(new xe(1,2),new xe(1,t.getLineCount()+1),[new Ls(e.getFullModelRange(),t.getFullModelRange())])],identical:!1,quitEarly:!1,moves:[]};const s=JSON.stringify([e.uri.toString(),t.uri.toString()]),r=JSON.stringify([e.id,t.id,e.getAlternativeVersionId(),t.getAlternativeVersionId(),JSON.stringify(i)]),a=pd.diffCache.get(s);if(a&&a.context===r)return a.result;const l=Hs.create(),c=await this.editorWorkerService.computeDiff(e.uri,t.uri,i,this.diffAlgorithm),d=l.elapsed();if(this.telemetryService.publicLog2("diffEditor.computeDiff",{timeMs:d,timedOut:c?.quitEarly??!0,detectedMoves:i.computeMoves?c?.moves.length??0:-1}),n.isCancellationRequested)return{changes:[],identical:!1,quitEarly:!0,moves:[]};if(!c)throw new Error("no diff result available");return pd.diffCache.size>10&&pd.diffCache.delete(pd.diffCache.keys().next().value),pd.diffCache.set(s,{result:c,context:r}),c}setOptions(e){let t=!1;e.diffAlgorithm&&this.diffAlgorithm!==e.diffAlgorithm&&(this.diffAlgorithmOnDidChangeSubscription?.dispose(),this.diffAlgorithmOnDidChangeSubscription=void 0,this.diffAlgorithm=e.diffAlgorithm,typeof e.diffAlgorithm!="string"&&(this.diffAlgorithmOnDidChangeSubscription=e.diffAlgorithm.onDidChange(()=>this.onDidChangeEventEmitter.fire())),t=!0),t&&this.onDidChangeEventEmitter.fire()}},pd=hh,hh.diffCache=new Map,hh);qI=pd=O8([KI(1,Zc),KI(2,$s)],qI);function iM(){return RL&&!!RL.VSCODE_DEV}function B8(o){if(iM()){const e=mre();return e.add(o),{dispose(){e.delete(o)}}}else return{dispose(){}}}function mre(){r1||(r1=new Set);const o=globalThis;return o.$hotReload_applyNewExports||(o.$hotReload_applyNewExports=e=>{const t={config:{mode:void 0},...e},i=[];for(const n of r1){const s=n(t);s&&i.push(s)}if(i.length>0)return n=>{let s=!1;for(const r of i)r(n)&&(s=!0);return s}}),r1}let r1;iM()&&B8(({oldExports:o,newSrc:e,config:t})=>{if(t.mode==="patch-prototype")return i=>{for(const n in i){const s=i[n];if(console.log(`[hot-reload] Patching prototype methods of '${n}'`,{exportedItem:s}),typeof s=="function"&&s.prototype){const r=o[n];if(r){for(const a of Object.getOwnPropertyNames(s.prototype)){const l=Object.getOwnPropertyDescriptor(s.prototype,a),c=Object.getOwnPropertyDescriptor(r.prototype,a);l?.value?.toString()!==c?.value?.toString()&&console.log(`[hot-reload] Patching prototype method '${n}.${a}'`),Object.defineProperty(r.prototype,a,l)}i[n]=r}}}return!0}});function Lo(o,e){return pre([o],e),o}function pre(o,e){iM()&&ks("reload",i=>B8(({oldExports:n})=>{if([...Object.values(n)].some(s=>o.includes(s)))return s=>(i(void 0),!0)})).read(e)}var _re=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},bre=function(o,e){return function(t,i){e(t,i,o)}};let GI=class extends z{setActiveMovedText(e){this._activeMovedText.set(e,void 0)}constructor(e,t,i){super(),this.model=e,this._options=t,this._diffProviderFactoryService=i,this._isDiffUpToDate=Ge(this,!1),this.isDiffUpToDate=this._isDiffUpToDate,this._diff=Ge(this,void 0),this.diff=this._diff,this._unchangedRegions=Ge(this,void 0),this.unchangedRegions=Ce(this,a=>this._options.hideUnchangedRegions.read(a)?this._unchangedRegions.read(a)?.regions??[]:(Xt(l=>{for(const c of this._unchangedRegions.get()?.regions||[])c.collapseAll(l)}),[])),this.movedTextToCompare=Ge(this,void 0),this._activeMovedText=Ge(this,void 0),this._hoveredMovedText=Ge(this,void 0),this.activeMovedText=Ce(this,a=>this.movedTextToCompare.read(a)??this._hoveredMovedText.read(a)??this._activeMovedText.read(a)),this._cancellationTokenSource=new In,this._diffProvider=Ce(this,a=>{const l=this._diffProviderFactoryService.createDiffProvider({diffAlgorithm:this._options.diffAlgorithm.read(a)}),c=ks("onDidChange",l.onDidChange);return{diffProvider:l,onChangeSignal:c}}),this._register(_e(()=>this._cancellationTokenSource.cancel()));const n=Q_("contentChangedSignal"),s=this._register(new ci(()=>n.trigger(void 0),200));this._register(We(a=>{const l=this._unchangedRegions.read(a);if(!l||l.regions.some(g=>g.isDragged.read(a)))return;const c=l.originalDecorationIds.map(g=>e.original.getDecorationRange(g)).map(g=>g?xe.fromRangeInclusive(g):void 0),d=l.modifiedDecorationIds.map(g=>e.modified.getDecorationRange(g)).map(g=>g?xe.fromRangeInclusive(g):void 0),h=l.regions.map((g,p)=>!c[p]||!d[p]?void 0:new dc(c[p].startLineNumber,d[p].startLineNumber,c[p].length,g.visibleLineCountTop.read(a),g.visibleLineCountBottom.read(a))).filter(_l),u=[];let f=!1;for(const g of LN(h,(p,_)=>p.getHiddenModifiedRange(a).endLineNumberExclusive===_.getHiddenModifiedRange(a).startLineNumber))if(g.length>1){f=!0;const p=g.reduce((b,C)=>b+C.lineCount,0),_=new dc(g[0].originalLineNumber,g[0].modifiedLineNumber,p,g[0].visibleLineCountTop.get(),g[g.length-1].visibleLineCountBottom.get());u.push(_)}else u.push(g[0]);if(f){const g=e.original.deltaDecorations(l.originalDecorationIds,u.map(_=>({range:_.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),p=e.modified.deltaDecorations(l.modifiedDecorationIds,u.map(_=>({range:_.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));Xt(_=>{this._unchangedRegions.set({regions:u,originalDecorationIds:g,modifiedDecorationIds:p},_)})}}));const r=(a,l,c)=>{const d=dc.fromDiffs(a.changes,e.original.getLineCount(),e.modified.getLineCount(),this._options.hideUnchangedRegionsMinimumLineCount.read(c),this._options.hideUnchangedRegionsContextLineCount.read(c));let h;const u=this._unchangedRegions.get();if(u){const _=u.originalDecorationIds.map(v=>e.original.getDecorationRange(v)).map(v=>v?xe.fromRangeInclusive(v):void 0),b=u.modifiedDecorationIds.map(v=>e.modified.getDecorationRange(v)).map(v=>v?xe.fromRangeInclusive(v):void 0);let w=Xoe(u.regions.map((v,y)=>{if(!_[y]||!b[y])return;const x=_[y].length;return new dc(_[y].startLineNumber,b[y].startLineNumber,x,Math.min(v.visibleLineCountTop.get(),x),Math.min(v.visibleLineCountBottom.get(),x-v.visibleLineCountTop.get()))}).filter(_l),(v,y)=>!y||v.modifiedLineNumber>=y.modifiedLineNumber+y.lineCount&&v.originalLineNumber>=y.originalLineNumber+y.lineCount).map(v=>new hn(v.getHiddenOriginalRange(c),v.getHiddenModifiedRange(c)));w=hn.clip(w,xe.ofLength(1,e.original.getLineCount()),xe.ofLength(1,e.modified.getLineCount())),h=hn.inverse(w,e.original.getLineCount(),e.modified.getLineCount())}const f=[];if(h)for(const _ of d){const b=h.filter(C=>C.original.intersectsStrict(_.originalUnchangedRange)&&C.modified.intersectsStrict(_.modifiedUnchangedRange));f.push(..._.setVisibleRanges(b,l))}else f.push(...d);const g=e.original.deltaDecorations(u?.originalDecorationIds||[],f.map(_=>({range:_.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),p=e.modified.deltaDecorations(u?.modifiedDecorationIds||[],f.map(_=>({range:_.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));this._unchangedRegions.set({regions:f,originalDecorationIds:g,modifiedDecorationIds:p},l)};this._register(e.modified.onDidChangeContent(a=>{if(this._diff.get()){const c=cl.fromModelContentChanges(a.changes);this._lastDiff,e.original,e.modified}this._isDiffUpToDate.set(!1,void 0),s.schedule()})),this._register(e.original.onDidChangeContent(a=>{if(this._diff.get()){const c=cl.fromModelContentChanges(a.changes);this._lastDiff,e.original,e.modified}this._isDiffUpToDate.set(!1,void 0),s.schedule()})),this._register(To(async(a,l)=>{this._options.hideUnchangedRegionsMinimumLineCount.read(a),this._options.hideUnchangedRegionsContextLineCount.read(a),s.cancel(),n.read(a);const c=this._diffProvider.read(a);c.onChangeSignal.read(a),Lo(u3,a),Lo(dk,a),this._isDiffUpToDate.set(!1,void 0);let d=[];l.add(e.original.onDidChangeContent(f=>{const g=cl.fromModelContentChanges(f.changes);d=tv(d,g)}));let h=[];l.add(e.modified.onDidChangeContent(f=>{const g=cl.fromModelContentChanges(f.changes);h=tv(h,g)}));let u=await c.diffProvider.computeDiff(e.original,e.modified,{ignoreTrimWhitespace:this._options.ignoreTrimWhitespace.read(a),maxComputationTimeMs:this._options.maxComputationTimeMs.read(a),computeMoves:this._options.showMoves.read(a)},this._cancellationTokenSource.token);this._cancellationTokenSource.token.isCancellationRequested||e.original.isDisposed()||e.modified.isDisposed()||(u=Cre(u,e.original,e.modified),u=(e.original,e.modified,void 0)??u,u=(e.original,e.modified,void 0)??u,Xt(f=>{r(u,f),this._lastDiff=u;const g=nM.fromDiffResult(u);this._diff.set(g,f),this._isDiffUpToDate.set(!0,f);const p=this.movedTextToCompare.get();this.movedTextToCompare.set(p?this._lastDiff.moves.find(_=>_.lineRangeMapping.modified.intersect(p.lineRangeMapping.modified)):void 0,f)}))}))}ensureModifiedLineIsVisible(e,t,i){if(this.diff.get()?.mappings.length===0)return;const n=this._unchangedRegions.get()?.regions||[];for(const s of n)if(s.getHiddenModifiedRange(void 0).contains(e)){s.showModifiedLine(e,t,i);return}}ensureOriginalLineIsVisible(e,t,i){if(this.diff.get()?.mappings.length===0)return;const n=this._unchangedRegions.get()?.regions||[];for(const s of n)if(s.getHiddenOriginalRange(void 0).contains(e)){s.showOriginalLine(e,t,i);return}}async waitForDiff(){await k7(this.isDiffUpToDate,e=>e)}serializeState(){return{collapsedRegions:this._unchangedRegions.get()?.regions.map(t=>({range:t.getHiddenModifiedRange(void 0).serialize()}))}}restoreSerializedState(e){const t=e.collapsedRegions?.map(n=>xe.deserialize(n.range)),i=this._unchangedRegions.get();!i||!t||Xt(n=>{for(const s of i.regions)for(const r of t)if(s.modifiedUnchangedRange.intersect(r)){s.setHiddenModifiedRange(r,n);break}})}};GI=_re([bre(2,F8)],GI);function Cre(o,e,t){return{changes:o.changes.map(i=>new Ws(i.original,i.modified,i.innerChanges?i.innerChanges.map(n=>vre(n,e,t)):void 0)),moves:o.moves,identical:o.identical,quitEarly:o.quitEarly}}function vre(o,e,t){let i=o.originalRange,n=o.modifiedRange;return i.startColumn===1&&n.startColumn===1&&(i.endColumn!==1||n.endColumn!==1)&&i.endColumn===e.getLineMaxColumn(i.endLineNumber)&&n.endColumn===t.getLineMaxColumn(n.endLineNumber)&&i.endLineNumbernew W8(t)),e.moves||[],e.identical,e.quitEarly)}constructor(e,t,i,n){this.mappings=e,this.movedTexts=t,this.identical=i,this.quitEarly=n}}class W8{constructor(e){this.lineRangeMapping=e}}class dc{static fromDiffs(e,t,i,n,s){const r=Ws.inverse(e,t,i),a=[];for(const l of r){let c=l.original.startLineNumber,d=l.modified.startLineNumber,h=l.original.length;const u=c===1&&d===1,f=c+h===t+1&&d+h===i+1;(u||f)&&h>=s+n?(u&&!f&&(h-=s),f&&!u&&(c+=s,d+=s,h-=s),a.push(new dc(c,d,h,0,0))):h>=s*2+n&&(c+=s,d+=s,h-=s*2,a.push(new dc(c,d,h,0,0)))}return a}get originalUnchangedRange(){return xe.ofLength(this.originalLineNumber,this.lineCount)}get modifiedUnchangedRange(){return xe.ofLength(this.modifiedLineNumber,this.lineCount)}constructor(e,t,i,n,s){this.originalLineNumber=e,this.modifiedLineNumber=t,this.lineCount=i,this._visibleLineCountTop=Ge(this,0),this.visibleLineCountTop=this._visibleLineCountTop,this._visibleLineCountBottom=Ge(this,0),this.visibleLineCountBottom=this._visibleLineCountBottom,this._shouldHideControls=Ce(this,l=>this.visibleLineCountTop.read(l)+this.visibleLineCountBottom.read(l)===this.lineCount&&!this.isDragged.read(l)),this.isDragged=Ge(this,void 0);const r=Math.max(Math.min(n,this.lineCount),0),a=Math.max(Math.min(s,this.lineCount-n),0);bR(n===r),bR(s===a),this._visibleLineCountTop.set(r,void 0),this._visibleLineCountBottom.set(a,void 0)}setVisibleRanges(e,t){const i=[],n=new to(e.map(l=>l.modified)).subtractFrom(this.modifiedUnchangedRange);let s=this.originalLineNumber,r=this.modifiedLineNumber;const a=this.modifiedLineNumber+this.lineCount;if(n.ranges.length===0)this.showAll(t),i.push(this);else{let l=0;for(const c of n.ranges){const d=l===n.ranges.length-1;l++;const h=(d?a:c.endLineNumberExclusive)-r,u=new dc(s,r,h,0,0);u.setHiddenModifiedRange(c,t),i.push(u),s=u.originalUnchangedRange.endLineNumberExclusive,r=u.modifiedUnchangedRange.endLineNumberExclusive}}return i}shouldHideControls(e){return this._shouldHideControls.read(e)}getHiddenOriginalRange(e){return xe.ofLength(this.originalLineNumber+this._visibleLineCountTop.read(e),this.lineCount-this._visibleLineCountTop.read(e)-this._visibleLineCountBottom.read(e))}getHiddenModifiedRange(e){return xe.ofLength(this.modifiedLineNumber+this._visibleLineCountTop.read(e),this.lineCount-this._visibleLineCountTop.read(e)-this._visibleLineCountBottom.read(e))}setHiddenModifiedRange(e,t){const i=e.startLineNumber-this.modifiedLineNumber,n=this.modifiedLineNumber+this.lineCount-e.endLineNumberExclusive;this.setState(i,n,t)}getMaxVisibleLineCountTop(){return this.lineCount-this._visibleLineCountBottom.get()}getMaxVisibleLineCountBottom(){return this.lineCount-this._visibleLineCountTop.get()}showMoreAbove(e=10,t){const i=this.getMaxVisibleLineCountTop();this._visibleLineCountTop.set(Math.min(this._visibleLineCountTop.get()+e,i),t)}showMoreBelow(e=10,t){const i=this.lineCount-this._visibleLineCountTop.get();this._visibleLineCountBottom.set(Math.min(this._visibleLineCountBottom.get()+e,i),t)}showAll(e){this._visibleLineCountBottom.set(this.lineCount-this._visibleLineCountTop.get(),e)}showModifiedLine(e,t,i){const n=e+1-(this.modifiedLineNumber+this._visibleLineCountTop.get()),s=this.modifiedLineNumber-this._visibleLineCountBottom.get()+this.lineCount-e;t===0&&n{this._contextMenuService.showContextMenu({domForShadowRoot:u?i.getDomNode()??void 0:void 0,getAnchor:()=>({x:g,y:p}),getActions:()=>{const _=[],b=n.modified.isEmpty;return _.push(new Fs("diff.clipboard.copyDeletedContent",b?n.original.length>1?m("diff.clipboard.copyDeletedLinesContent.label","Copy deleted lines"):m("diff.clipboard.copyDeletedLinesContent.single.label","Copy deleted line"):n.original.length>1?m("diff.clipboard.copyChangedLinesContent.label","Copy changed lines"):m("diff.clipboard.copyChangedLinesContent.single.label","Copy changed line"),void 0,!0,async()=>{const w=this._originalTextModel.getValueInRange(n.original.toExclusiveRange());await this._clipboardService.writeText(w)})),n.original.length>1&&_.push(new Fs("diff.clipboard.copyDeletedLineContent",b?m("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",n.original.startLineNumber+h):m("diff.clipboard.copyChangedLineContent.label","Copy changed line ({0})",n.original.startLineNumber+h),void 0,!0,async()=>{let w=this._originalTextModel.getLineContent(n.original.startLineNumber+h);w===""&&(w=this._originalTextModel.getEndOfLineSequence()===0?` -`:`\r -`),await this._clipboardService.writeText(w)})),i.getOption(92)||_.push(new Fs("diff.inline.revertChange",m("diff.inline.revertChange.label","Revert this change"),void 0,!0,async()=>{this._editor.revert(this._diff)})),_},autoSelectFirstItem:!0})};this._register(jt(this._diffActions,"mousedown",g=>{if(!g.leftButton)return;const{top:p,height:_}=gi(this._diffActions),b=Math.floor(d/3);g.preventDefault(),f(g.posx,p+_+b)})),this._register(i.onMouseMove(g=>{(g.target.type===8||g.target.type===5)&&g.target.detail.viewZoneId===this._getViewZoneId()?(h=this._updateLightBulbPosition(this._marginDomNode,g.event.browserEvent.y,d),this.visibility=!0):this.visibility=!1})),this._register(i.onMouseDown(g=>{g.event.leftButton&&(g.target.type===8||g.target.type===5)&&g.target.detail.viewZoneId===this._getViewZoneId()&&(g.event.preventDefault(),h=this._updateLightBulbPosition(this._marginDomNode,g.event.browserEvent.y,d),f(g.event.posx,g.event.posy+d))}))}_updateLightBulbPosition(e,t,i){const{top:n}=gi(e),s=t-n,r=Math.floor(s/i),a=r*i;if(this._diffActions.style.top=`${a}px`,this._viewLineCounts){let l=0;for(let c=0;co});function yre(o,e,t,i){qi(i,e.fontInfo);const n=t.length>0,s=new K_(1e4);let r=0,a=0;const l=[];for(let u=0;u');const l=e.getLineContent(),c=zs.isBasicASCII(l,n),d=zs.containsRTL(l,c,s),h=Sy(new gu(r.fontInfo.isMonospace&&!r.disableMonospaceOptimizations,r.fontInfo.canUseHalfwidthRightwardsArrow,l,!1,c,d,0,e,t,r.tabSize,0,r.fontInfo.spaceWidth,r.fontInfo.middotWidth,r.fontInfo.wsmiddotWidth,r.stopRenderingLineAfter,r.renderWhitespace,r.renderControlCharacters,r.fontLigatures!==Mc.OFF,null),a);return a.appendString(""),h.characterMapping.getHorizontalOffset(h.characterMapping.length)}var Lre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},u4=function(o,e){return function(t,i){e(t,i,o)}};let ZI=class extends z{constructor(e,t,i,n,s,r,a,l,c,d){super(),this._targetWindow=e,this._editors=t,this._diffModel=i,this._options=n,this._diffEditorWidget=s,this._canIgnoreViewZoneUpdateEvent=r,this._origViewZonesToIgnore=a,this._modViewZonesToIgnore=l,this._clipboardService=c,this._contextMenuService=d,this._originalTopPadding=Ge(this,0),this._originalScrollOffset=Ge(this,0),this._originalScrollOffsetAnimated=i4(this._targetWindow,this._originalScrollOffset,this._store),this._modifiedTopPadding=Ge(this,0),this._modifiedScrollOffset=Ge(this,0),this._modifiedScrollOffsetAnimated=i4(this._targetWindow,this._modifiedScrollOffset,this._store);const h=Ge("invalidateAlignmentsState",0),u=this._register(new ci(()=>{h.set(h.get()+1,void 0)},0));this._register(this._editors.original.onDidChangeViewZones(w=>{this._canIgnoreViewZoneUpdateEvent()||u.schedule()})),this._register(this._editors.modified.onDidChangeViewZones(w=>{this._canIgnoreViewZoneUpdateEvent()||u.schedule()})),this._register(this._editors.original.onDidChangeConfiguration(w=>{(w.hasChanged(147)||w.hasChanged(67))&&u.schedule()})),this._register(this._editors.modified.onDidChangeConfiguration(w=>{(w.hasChanged(147)||w.hasChanged(67))&&u.schedule()}));const f=this._diffModel.map(w=>w?gt(this,w.model.original.onDidChangeTokens,()=>w.model.original.tokenization.backgroundTokenizationState===2):void 0).map((w,v)=>w?.read(v)),g=Ce(w=>{const v=this._diffModel.read(w),y=v?.diff.read(w);if(!v||!y)return null;h.read(w);const L=this._options.renderSideBySide.read(w);return f4(this._editors.original,this._editors.modified,y.mappings,this._origViewZonesToIgnore,this._modViewZonesToIgnore,L)}),p=Ce(w=>{const v=this._diffModel.read(w)?.movedTextToCompare.read(w);if(!v)return null;h.read(w);const y=v.changes.map(x=>new W8(x));return f4(this._editors.original,this._editors.modified,y,this._origViewZonesToIgnore,this._modViewZonesToIgnore,!0)});function _(){const w=document.createElement("div");return w.className="diagonal-fill",w}const b=this._register(new X);this.viewZones=cu(this,(w,v)=>{b.clear();const y=g.read(w)||[],x=[],L=[],E=this._modifiedTopPadding.read(w);E>0&&L.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:E,showInHiddenAreas:!0,suppressMouseDown:!0});const N=this._originalTopPadding.read(w);N>0&&x.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:N,showInHiddenAreas:!0,suppressMouseDown:!0});const H=this._options.renderSideBySide.read(w),F=H?void 0:this._editors.modified._getViewModel()?.createLineBreaksComputer();if(F){const se=this._editors.original.getModel();for(const be of y)if(be.diff)for(let we=be.originalRange.startLineNumber;wese.getLineCount())return{orig:x,mod:L};F?.addRequest(se.getLineContent(we),null,null)}}const W=F?.finalize()??[];let j=0;const B=this._editors.modified.getOption(67),G=this._diffModel.read(w)?.movedTextToCompare.read(w),ne=this._editors.original.getModel()?.mightContainNonBasicASCII()??!1,ae=this._editors.original.getModel()?.mightContainRTL()??!1,de=sM.fromEditor(this._editors.modified);for(const se of y)if(se.diff&&!H&&(!this._options.useTrueInlineDiffRendering.read(w)||!oM(se.diff))){if(!se.originalRange.isEmpty){f.read(w);const we=document.createElement("div");we.classList.add("view-lines","line-delete","monaco-mouse-cursor-text");const Rt=this._editors.original.getModel();if(se.originalRange.endLineNumberExclusive-1>Rt.getLineCount())return{orig:x,mod:L};const ct=new Sre(se.originalRange.mapToLineArray(fi=>Rt.tokenization.getLineTokens(fi)),se.originalRange.mapToLineArray(fi=>W[j++]),ne,ae),Bt=[];for(const fi of se.diff.innerChanges||[])Bt.push(new hp(fi.originalRange.delta(-(se.diff.original.startLineNumber-1)),$I.className,0));const ht=yre(ct,de,Bt,we),ei=document.createElement("div");if(ei.className="inline-deleted-margin-view-zone",qi(ei,de.fontInfo),this._options.renderIndicators.read(w))for(let fi=0;fiA5(js),ei,this._editors.modified,se.diff,this._diffEditorWidget,ht.viewLineCounts,this._editors.original.getModel(),this._contextMenuService,this._clipboardService));for(let fi=0;fi1&&x.push({afterLineNumber:se.originalRange.startLineNumber+fi,domNode:_(),heightInPx:(po-1)*B,showInHiddenAreas:!0,suppressMouseDown:!0})}L.push({afterLineNumber:se.modifiedRange.startLineNumber-1,domNode:we,heightInPx:ht.heightInLines*B,minWidthInPx:ht.minWidthInPx,marginDomNode:ei,setZoneId(fi){js=fi},showInHiddenAreas:!0,suppressMouseDown:!0})}const be=document.createElement("div");be.className="gutter-delete",x.push({afterLineNumber:se.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:se.modifiedHeightInPx,marginDomNode:be,showInHiddenAreas:!0,suppressMouseDown:!0})}else{const be=se.modifiedHeightInPx-se.originalHeightInPx;if(be>0){if(G?.lineRangeMapping.original.delta(-1).deltaLength(2).contains(se.originalRange.endLineNumberExclusive-1))continue;x.push({afterLineNumber:se.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:be,showInHiddenAreas:!0,suppressMouseDown:!0})}else{let we=function(){const ct=document.createElement("div");return ct.className="arrow-revert-change "+Ee.asClassName(ie.arrowRight),v.add(U(ct,"mousedown",Bt=>Bt.stopPropagation())),v.add(U(ct,"click",Bt=>{Bt.stopPropagation(),s.revert(se.diff)})),ce("div",{},ct)};if(G?.lineRangeMapping.modified.delta(-1).deltaLength(2).contains(se.modifiedRange.endLineNumberExclusive-1))continue;let Rt;se.diff&&se.diff.modified.isEmpty&&this._options.shouldRenderOldRevertArrows.read(w)&&(Rt=we()),L.push({afterLineNumber:se.modifiedRange.endLineNumberExclusive-1,domNode:_(),heightInPx:-be,marginDomNode:Rt,showInHiddenAreas:!0,suppressMouseDown:!0})}}for(const se of p.read(w)??[]){if(!G?.lineRangeMapping.original.intersect(se.originalRange)||!G?.lineRangeMapping.modified.intersect(se.modifiedRange))continue;const be=se.modifiedHeightInPx-se.originalHeightInPx;be>0?x.push({afterLineNumber:se.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:be,showInHiddenAreas:!0,suppressMouseDown:!0}):L.push({afterLineNumber:se.modifiedRange.endLineNumberExclusive-1,domNode:_(),heightInPx:-be,showInHiddenAreas:!0,suppressMouseDown:!0})}return{orig:x,mod:L}});let C=!1;this._register(this._editors.original.onDidScrollChange(w=>{w.scrollLeftChanged&&!C&&(C=!0,this._editors.modified.setScrollLeft(w.scrollLeft),C=!1)})),this._register(this._editors.modified.onDidScrollChange(w=>{w.scrollLeftChanged&&!C&&(C=!0,this._editors.original.setScrollLeft(w.scrollLeft),C=!1)})),this._originalScrollTop=gt(this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=gt(this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._register(We(w=>{const v=this._originalScrollTop.read(w)-(this._originalScrollOffsetAnimated.get()-this._modifiedScrollOffsetAnimated.read(w))-(this._originalTopPadding.get()-this._modifiedTopPadding.read(w));v!==this._editors.modified.getScrollTop()&&this._editors.modified.setScrollTop(v,1)})),this._register(We(w=>{const v=this._modifiedScrollTop.read(w)-(this._modifiedScrollOffsetAnimated.get()-this._originalScrollOffsetAnimated.read(w))-(this._modifiedTopPadding.get()-this._originalTopPadding.read(w));v!==this._editors.original.getScrollTop()&&this._editors.original.setScrollTop(v,1)})),this._register(We(w=>{const v=this._diffModel.read(w)?.movedTextToCompare.read(w);let y=0;if(v){const x=this._editors.original.getTopForLineNumber(v.lineRangeMapping.original.startLineNumber,!0)-this._originalTopPadding.get();y=this._editors.modified.getTopForLineNumber(v.lineRangeMapping.modified.startLineNumber,!0)-this._modifiedTopPadding.get()-x}y>0?(this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(y,void 0)):y<0?(this._modifiedTopPadding.set(-y,void 0),this._originalTopPadding.set(0,void 0)):setTimeout(()=>{this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(0,void 0)},400),this._editors.modified.hasTextFocus()?this._originalScrollOffset.set(this._modifiedScrollOffset.get()-y,void 0,!0):this._modifiedScrollOffset.set(this._originalScrollOffset.get()+y,void 0,!0)}))}};ZI=Lre([u4(8,wy),u4(9,Lr)],ZI);function f4(o,e,t,i,n,s){const r=new Ll(g4(o,i)),a=new Ll(g4(e,n)),l=o.getOption(67),c=e.getOption(67),d=[];let h=0,u=0;function f(g,p){for(;;){let _=r.peek(),b=a.peek();if(_&&_.lineNumber>=g&&(_=void 0),b&&b.lineNumber>=p&&(b=void 0),!_&&!b)break;const C=_?_.lineNumber-h:Number.MAX_VALUE,w=b?b.lineNumber-u:Number.MAX_VALUE;Cw?(a.dequeue(),_={lineNumber:b.lineNumber-u+h,heightInPx:0}):(r.dequeue(),a.dequeue()),d.push({originalRange:xe.ofLength(_.lineNumber,1),modifiedRange:xe.ofLength(b.lineNumber,1),originalHeightInPx:l+_.heightInPx,modifiedHeightInPx:c+b.heightInPx,diff:void 0})}}for(const g of t){let w=function(v,y,x=!1){if(vF.lineNumberF+W.heightInPx,0)??0,H=a.takeWhile(F=>F.lineNumberF+W.heightInPx,0)??0;d.push({originalRange:L,modifiedRange:E,originalHeightInPx:L.length*l+N,modifiedHeightInPx:E.length*c+H,diff:g.lineRangeMapping}),C=v,b=y};const p=g.lineRangeMapping;f(p.original.startLineNumber,p.modified.startLineNumber);let _=!0,b=p.modified.startLineNumber,C=p.original.startLineNumber;if(s)for(const v of p.innerChanges||[]){v.originalRange.startColumn>1&&v.modifiedRange.startColumn>1&&w(v.originalRange.startLineNumber,v.modifiedRange.startLineNumber);const y=o.getModel(),x=v.originalRange.endLineNumber<=y.getLineCount()?y.getLineMaxColumn(v.originalRange.endLineNumber):Number.MAX_SAFE_INTEGER;v.originalRange.endColumn1&&i.push({lineNumber:l,heightInPx:r*(c-1)})}for(const l of o.getWhitespaces()){if(e.has(l.id))continue;const c=l.afterLineNumber===0?0:s.convertViewPositionToModelPosition(new P(l.afterLineNumber,1)).lineNumber;t.push({lineNumber:c,heightInPx:l.height})}return Goe(t,i,l=>l.lineNumber,(l,c)=>({lineNumber:l.lineNumber,heightInPx:l.heightInPx+c.heightInPx}))}function oM(o){return o.innerChanges?o.innerChanges.every(e=>m4(e.modifiedRange)&&m4(e.originalRange)||e.originalRange.equalsRange(new I(1,1,1,1))):!1}function m4(o){return o.startLineNumber===o.endLineNumber}const Op=class Op extends z{constructor(e,t,i,n,s){super(),this._rootElement=e,this._diffModel=t,this._originalEditorLayoutInfo=i,this._modifiedEditorLayoutInfo=n,this._editors=s,this._originalScrollTop=gt(this,this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=gt(this,this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._viewZonesChanged=ks("onDidChangeViewZones",this._editors.modified.onDidChangeViewZones),this.width=Ge(this,0),this._modifiedViewZonesChangedSignal=ks("modified.onDidChangeViewZones",this._editors.modified.onDidChangeViewZones),this._originalViewZonesChangedSignal=ks("original.onDidChangeViewZones",this._editors.original.onDidChangeViewZones),this._state=cu(this,(d,h)=>{this._element.replaceChildren();const u=this._diffModel.read(d),f=u?.diff.read(d)?.movedTexts;if(!f||f.length===0){this.width.set(0,void 0);return}this._viewZonesChanged.read(d);const g=this._originalEditorLayoutInfo.read(d),p=this._modifiedEditorLayoutInfo.read(d);if(!g||!p){this.width.set(0,void 0);return}this._modifiedViewZonesChangedSignal.read(d),this._originalViewZonesChangedSignal.read(d);const _=f.map(L=>{function E(ae,de){const se=de.getTopForLineNumber(ae.startLineNumber,!0),be=de.getTopForLineNumber(ae.endLineNumberExclusive,!0);return(se+be)/2}const N=E(L.lineRangeMapping.original,this._editors.original),H=this._originalScrollTop.read(d),F=E(L.lineRangeMapping.modified,this._editors.modified),W=this._modifiedScrollTop.read(d),j=N-H,B=F-W,G=Math.min(N,F),ne=Math.max(N,F);return{range:new Re(G,ne),from:j,to:B,fromWithoutScroll:N,toWithoutScroll:F,move:L}});_.sort(n6(rs(L=>L.fromWithoutScroll>L.toWithoutScroll,s6),rs(L=>L.fromWithoutScroll>L.toWithoutScroll?L.fromWithoutScroll:-L.toWithoutScroll,ia)));const b=rM.compute(_.map(L=>L.range)),C=10,w=g.verticalScrollbarWidth,v=(b.getTrackCount()-1)*10+C*2,y=w+v+(p.contentLeft-Op.movedCodeBlockPadding);let x=0;for(const L of _){const E=b.getTrack(x),N=w+C+E*10,H=15,F=15,W=y,j=p.glyphMarginWidth+p.lineNumbersWidth,B=18,G=document.createElementNS("http://www.w3.org/2000/svg","rect");G.classList.add("arrow-rectangle"),G.setAttribute("x",`${W-j}`),G.setAttribute("y",`${L.to-B/2}`),G.setAttribute("width",`${j}`),G.setAttribute("height",`${B}`),this._element.appendChild(G);const ne=document.createElementNS("http://www.w3.org/2000/svg","g"),ae=document.createElementNS("http://www.w3.org/2000/svg","path");ae.setAttribute("d",`M 0 ${L.from} L ${N} ${L.from} L ${N} ${L.to} L ${W-F} ${L.to}`),ae.setAttribute("fill","none"),ne.appendChild(ae);const de=document.createElementNS("http://www.w3.org/2000/svg","polygon");de.classList.add("arrow"),h.add(We(se=>{ae.classList.toggle("currentMove",L.move===u.activeMovedText.read(se)),de.classList.toggle("currentMove",L.move===u.activeMovedText.read(se))})),de.setAttribute("points",`${W-F},${L.to-H/2} ${W},${L.to} ${W-F},${L.to+H/2}`),ne.appendChild(de),this._element.appendChild(ne),x++}this.width.set(v,void 0)}),this._element=document.createElementNS("http://www.w3.org/2000/svg","svg"),this._element.setAttribute("class","moved-blocks-lines"),this._rootElement.appendChild(this._element),this._register(_e(()=>this._element.remove())),this._register(We(d=>{const h=this._originalEditorLayoutInfo.read(d),u=this._modifiedEditorLayoutInfo.read(d);!h||!u||(this._element.style.left=`${h.width-h.verticalScrollbarWidth}px`,this._element.style.height=`${h.height}px`,this._element.style.width=`${h.verticalScrollbarWidth+h.contentLeft-Op.movedCodeBlockPadding+this.width.read(d)}px`)})),this._register(X_(this._state));const r=Ce(d=>{const u=this._diffModel.read(d)?.diff.read(d);return u?u.movedTexts.map(f=>({move:f,original:new ff(wg(f.lineRangeMapping.original.startLineNumber-1),18),modified:new ff(wg(f.lineRangeMapping.modified.startLineNumber-1),18)})):[]});this._register(zv(this._editors.original,r.map(d=>d.map(h=>h.original)))),this._register(zv(this._editors.modified,r.map(d=>d.map(h=>h.modified)))),this._register(To((d,h)=>{const u=r.read(d);for(const f of u)h.add(new p4(this._editors.original,f.original,f.move,"original",this._diffModel.get())),h.add(new p4(this._editors.modified,f.modified,f.move,"modified",this._diffModel.get()))}));const a=ks("original.onDidFocusEditorWidget",d=>this._editors.original.onDidFocusEditorWidget(()=>setTimeout(()=>d(void 0),0))),l=ks("modified.onDidFocusEditorWidget",d=>this._editors.modified.onDidFocusEditorWidget(()=>setTimeout(()=>d(void 0),0)));let c="modified";this._register(Y_({createEmptyChangeSummary:()=>{},handleChange:(d,h)=>(d.didChange(a)&&(c="original"),d.didChange(l)&&(c="modified"),!0)},d=>{a.read(d),l.read(d);const h=this._diffModel.read(d);if(!h)return;const u=h.diff.read(d);let f;if(u&&c==="original"){const g=this._editors.originalCursor.read(d);g&&(f=u.movedTexts.find(p=>p.lineRangeMapping.original.contains(g.lineNumber)))}if(u&&c==="modified"){const g=this._editors.modifiedCursor.read(d);g&&(f=u.movedTexts.find(p=>p.lineRangeMapping.modified.contains(g.lineNumber)))}f!==h.movedTextToCompare.get()&&h.movedTextToCompare.set(void 0,void 0),h.setActiveMovedText(f)}))}};Op.movedCodeBlockPadding=4;let Qf=Op;class rM{static compute(e){const t=[],i=[];for(const n of e){let s=t.findIndex(r=>!r.intersectsStrict(n));s===-1&&(t.length>=6?s=$U(t,rs(a=>a.intersectWithRangeLength(n),ia)):(s=t.length,t.push(new uT))),t[s].addRange(n),i.push(s)}return new rM(t.length,i)}constructor(e,t){this._trackCount=e,this.trackPerLineIdx=t}getTrack(e){return this.trackPerLineIdx[e]}getTrackCount(){return this._trackCount}}class p4 extends J2{constructor(e,t,i,n,s){const r=tt("div.diff-hidden-lines-widget");super(e,t,r.root),this._editor=e,this._move=i,this._kind=n,this._diffModel=s,this._nodes=tt("div.diff-moved-code-block",{style:{marginRight:"4px"}},[tt("div.text-content@textContent"),tt("div.action-bar@actionBar")]),r.root.appendChild(this._nodes.root);const a=gt(this._editor.onDidLayoutChange,()=>this._editor.getLayoutInfo());this._register(Vc(this._nodes.root,{paddingRight:a.map(u=>u.verticalScrollbarWidth)}));let l;i.changes.length>0?l=this._kind==="original"?m("codeMovedToWithChanges","Code moved with changes to line {0}-{1}",this._move.lineRangeMapping.modified.startLineNumber,this._move.lineRangeMapping.modified.endLineNumberExclusive-1):m("codeMovedFromWithChanges","Code moved with changes from line {0}-{1}",this._move.lineRangeMapping.original.startLineNumber,this._move.lineRangeMapping.original.endLineNumberExclusive-1):l=this._kind==="original"?m("codeMovedTo","Code moved to line {0}-{1}",this._move.lineRangeMapping.modified.startLineNumber,this._move.lineRangeMapping.modified.endLineNumberExclusive-1):m("codeMovedFrom","Code moved from line {0}-{1}",this._move.lineRangeMapping.original.startLineNumber,this._move.lineRangeMapping.original.endLineNumberExclusive-1);const c=this._register(new oo(this._nodes.actionBar,{highlightToggledItems:!0})),d=new Fs("",l,"",!1);c.push(d,{icon:!1,label:!0});const h=new Fs("","Compare",Ee.asClassName(ie.compareChanges),!0,()=>{this._editor.focus(),this._diffModel.movedTextToCompare.set(this._diffModel.movedTextToCompare.get()===i?void 0:this._move,void 0)});this._register(We(u=>{const f=this._diffModel.movedTextToCompare.read(u)===i;h.checked=f})),c.push(h,{icon:!1,label:!0})}}class xre extends z{constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._decorations=Ce(this,s=>{const r=this._diffModel.read(s),a=r?.diff.read(s);if(!a)return null;const l=this._diffModel.read(s).movedTextToCompare.read(s),c=this._options.renderIndicators.read(s),d=this._options.showEmptyDecorations.read(s),h=[],u=[];if(!l)for(const g of a.mappings)if(g.lineRangeMapping.original.isEmpty||h.push({range:g.lineRangeMapping.original.toInclusiveRange(),options:c?r4:l4}),g.lineRangeMapping.modified.isEmpty||u.push({range:g.lineRangeMapping.modified.toInclusiveRange(),options:c?o4:a4}),g.lineRangeMapping.modified.isEmpty||g.lineRangeMapping.original.isEmpty)g.lineRangeMapping.original.isEmpty||h.push({range:g.lineRangeMapping.original.toInclusiveRange(),options:fre}),g.lineRangeMapping.modified.isEmpty||u.push({range:g.lineRangeMapping.modified.toInclusiveRange(),options:hre});else{const p=this._options.useTrueInlineDiffRendering.read(s)&&oM(g.lineRangeMapping);for(const _ of g.lineRangeMapping.innerChanges||[])if(g.lineRangeMapping.original.contains(_.originalRange.startLineNumber)&&h.push({range:_.originalRange,options:_.originalRange.isEmpty()&&d?gre:$I}),g.lineRangeMapping.modified.contains(_.modifiedRange.startLineNumber)&&u.push({range:_.modifiedRange,options:_.modifiedRange.isEmpty()&&d&&!p?ure:c4}),p){const b=r.model.original.getValueInRange(_.originalRange);u.push({range:_.modifiedRange,options:{description:"deleted-text",before:{content:b,inlineClassName:"inline-deleted-text"},zIndex:1e5,showIfCollapsed:!0}})}}if(l)for(const g of l.changes){const p=g.original.toInclusiveRange();p&&h.push({range:p,options:c?r4:l4});const _=g.modified.toInclusiveRange();_&&u.push({range:_,options:c?o4:a4});for(const b of g.innerChanges||[])h.push({range:b.originalRange,options:$I}),u.push({range:b.modifiedRange,options:c4})}const f=this._diffModel.read(s).activeMovedText.read(s);for(const g of a.movedTexts)h.push({range:g.lineRangeMapping.original.toInclusiveRange(),options:{description:"moved",blockClassName:"movedOriginal"+(g===f?" currentMove":""),blockPadding:[Qf.movedCodeBlockPadding,0,Qf.movedCodeBlockPadding,Qf.movedCodeBlockPadding]}}),u.push({range:g.lineRangeMapping.modified.toInclusiveRange(),options:{description:"moved",blockClassName:"movedModified"+(g===f?" currentMove":""),blockPadding:[4,0,4,4]}});return{originalDecorations:h,modifiedDecorations:u}}),this._register(Vv(this._editors.original,this._decorations.map(s=>s?.originalDecorations||[]))),this._register(Vv(this._editors.modified,this._decorations.map(s=>s?.modifiedDecorations||[])))}}class kre{resetSash(){this._sashRatio.set(void 0,void 0)}constructor(e,t){this._options=e,this.dimensions=t,this.sashLeft=ZT(this,i=>{const n=this._sashRatio.read(i)??this._options.splitViewDefaultRatio.read(i);return this._computeSashLeft(n,i)},(i,n)=>{const s=this.dimensions.width.get();this._sashRatio.set(i/s,n)}),this._sashRatio=Ge(this,void 0)}_computeSashLeft(e,t){const i=this.dimensions.width.read(t),n=Math.floor(this._options.splitViewDefaultRatio.read(t)*i),s=this._options.enableSplitViewResizing.read(t)?Math.floor(e*i):n,r=100;return i<=r*2?n:si-r?i-r:s}}class H8 extends z{constructor(e,t,i,n,s,r){super(),this._domNode=e,this._dimensions=t,this._enabled=i,this._boundarySashes=n,this.sashLeft=s,this._resetSash=r,this._sash=this._register(new an(this._domNode,{getVerticalSashTop:a=>0,getVerticalSashLeft:a=>this.sashLeft.get(),getVerticalSashHeight:a=>this._dimensions.height.get()},{orientation:0})),this._startSashPosition=void 0,this._register(this._sash.onDidStart(()=>{this._startSashPosition=this.sashLeft.get()})),this._register(this._sash.onDidChange(a=>{this.sashLeft.set(this._startSashPosition+(a.currentX-a.startX),void 0)})),this._register(this._sash.onDidEnd(()=>this._sash.layout())),this._register(this._sash.onDidReset(()=>this._resetSash())),this._register(We(a=>{const l=this._boundarySashes.read(a);l&&(this._sash.orthogonalEndSash=l.bottom)})),this._register(We(a=>{const l=this._enabled.read(a);this._sash.state=l?3:0,this.sashLeft.read(a),this._dimensions.height.read(a),this._sash.layout()}))}}class Dre extends z{constructor(e,t,i){super(),this._editor=e,this._domNode=t,this.itemProvider=i,this.scrollTop=gt(this,this._editor.onDidScrollChange,r=>this._editor.getScrollTop()),this.isScrollTopZero=this.scrollTop.map(r=>r===0),this.modelAttached=gt(this,this._editor.onDidChangeModel,r=>this._editor.hasModel()),this.editorOnDidChangeViewZones=ks("onDidChangeViewZones",this._editor.onDidChangeViewZones),this.editorOnDidContentSizeChange=ks("onDidContentSizeChange",this._editor.onDidContentSizeChange),this.domNodeSizeChanged=Q_("domNodeSizeChanged"),this.views=new Map,this._domNode.className="gutter monaco-editor";const n=this._domNode.appendChild(tt("div.scroll-decoration",{role:"presentation",ariaHidden:"true",style:{width:"100%"}}).root),s=new ResizeObserver(()=>{Xt(r=>{this.domNodeSizeChanged.trigger(r)})});s.observe(this._domNode),this._register(_e(()=>s.disconnect())),this._register(We(r=>{n.className=this.isScrollTopZero.read(r)?"":"scroll-decoration"})),this._register(We(r=>this.render(r)))}dispose(){super.dispose(),un(this._domNode)}render(e){if(!this.modelAttached.read(e))return;this.domNodeSizeChanged.read(e),this.editorOnDidChangeViewZones.read(e),this.editorOnDidContentSizeChange.read(e);const t=this.scrollTop.read(e),i=this._editor.getVisibleRanges(),n=new Set(this.views.keys()),s=Re.ofStartAndLength(0,this._domNode.clientHeight);if(!s.isEmpty)for(const r of i){const a=new xe(r.startLineNumber,r.endLineNumber+1),l=this.itemProvider.getIntersectingGutterItems(a,e);Xt(c=>{for(const d of l){if(!d.range.intersect(a))continue;n.delete(d.id);let h=this.views.get(d.id);if(h)h.item.set(d,c);else{const p=document.createElement("div");this._domNode.appendChild(p);const _=Ge("item",d),b=this.itemProvider.createView(_,p);h=new Ire(_,b,p),this.views.set(d.id,h)}const u=d.range.startLineNumber<=this._editor.getModel().getLineCount()?this._editor.getTopForLineNumber(d.range.startLineNumber,!0)-t:this._editor.getBottomForLineNumber(d.range.startLineNumber-1,!1)-t,g=(d.range.endLineNumberExclusive===1?Math.max(u,this._editor.getTopForLineNumber(d.range.startLineNumber,!1)-t):Math.max(u,this._editor.getBottomForLineNumber(d.range.endLineNumberExclusive-1,!0)-t))-u;h.domNode.style.top=`${u}px`,h.domNode.style.height=`${g}px`,h.gutterItemView.layout(Re.ofStartAndLength(u,g),s)}})}for(const r of n){const a=this.views.get(r);a.gutterItemView.dispose(),a.domNode.remove(),this.views.delete(r)}}}class Ire{constructor(e,t,i){this.item=e,this.gutterItemView=t,this.domNode=i}}class V8 extends Oh{constructor(e){super(),this._getContext=e}runAction(e,t){const i=this._getContext();return super.runAction(e,i)}}class _4 extends c3{constructor(e){super(),this._textModel=e}getValueOfRange(e){return this._textModel.getValueInRange(e)}get length(){const e=this._textModel.getLineCount(),t=this._textModel.getLineLength(e);return new Po(e-1,t)}}class Ere extends z{constructor(e,t,i={orientation:0}){super(),this.submenuActionViewItems=[],this.hasSecondaryActions=!1,this._onDidChangeDropdownVisibility=this._register(new IW),this.onDidChangeDropdownVisibility=this._onDidChangeDropdownVisibility.event,this.disposables=this._register(new X),i.hoverDelegate=i.hoverDelegate??this._register(QT()),this.options=i,this.toggleMenuAction=this._register(new E_(()=>this.toggleMenuActionViewItem?.show(),i.toggleMenuTitle)),this.element=document.createElement("div"),this.element.className="monaco-toolbar",e.appendChild(this.element),this.actionBar=this._register(new oo(this.element,{orientation:i.orientation,ariaLabel:i.ariaLabel,actionRunner:i.actionRunner,allowContextMenu:i.allowContextMenu,highlightToggledItems:i.highlightToggledItems,hoverDelegate:i.hoverDelegate,actionViewItemProvider:(n,s)=>{if(n.id===E_.ID)return this.toggleMenuActionViewItem=new qC(n,n.menuActions,t,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:Ee.asClassNameArray(i.moreIcon??ie.toolBarMore),anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,isMenu:!0,hoverDelegate:this.options.hoverDelegate}),this.toggleMenuActionViewItem.setActionContext(this.actionBar.context),this.disposables.add(this._onDidChangeDropdownVisibility.add(this.toggleMenuActionViewItem.onDidChangeVisibility)),this.toggleMenuActionViewItem;if(i.actionViewItemProvider){const r=i.actionViewItemProvider(n,s);if(r)return r}if(n instanceof R0){const r=new qC(n,n.actions,t,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:n.class,anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,hoverDelegate:this.options.hoverDelegate});return r.setActionContext(this.actionBar.context),this.submenuActionViewItems.push(r),this.disposables.add(this._onDidChangeDropdownVisibility.add(r.onDidChangeVisibility)),r}}}))}set actionRunner(e){this.actionBar.actionRunner=e}get actionRunner(){return this.actionBar.actionRunner}getElement(){return this.element}getItemAction(e){return this.actionBar.getAction(e)}setActions(e,t){this.clear();const i=e?e.slice(0):[];this.hasSecondaryActions=!!(t&&t.length>0),this.hasSecondaryActions&&t&&(this.toggleMenuAction.menuActions=t.slice(0),i.push(this.toggleMenuAction)),i.forEach(n=>{this.actionBar.push(n,{icon:this.options.icon??!0,label:this.options.label??!1,keybinding:this.getKeybindingLabel(n)})})}getKeybindingLabel(e){return this.options.getKeyBinding?.(e)?.getLabel()??void 0}clear(){this.submenuActionViewItems=[],this.disposables.clear(),this.actionBar.clear()}dispose(){this.clear(),this.disposables.dispose(),super.dispose()}}const l0=class l0 extends Fs{constructor(e,t){t=t||m("moreActions","More Actions..."),super(l0.ID,t,void 0,!0),this._menuActions=[],this.toggleDropdownMenu=e}async run(){this.toggleDropdownMenu()}get menuActions(){return this._menuActions}set menuActions(e){this._menuActions=e}};l0.ID="toolbar.toggle.more";let E_=l0;var z8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Do=function(o,e){return function(t,i){e(t,i,o)}};let $v=class extends Ere{constructor(e,t,i,n,s,r,a,l){super(e,s,{getKeyBinding:d=>r.lookupKeybinding(d.id)??void 0,...t,allowContextMenu:!0,skipTelemetry:typeof t?.telemetrySource=="string"}),this._options=t,this._menuService=i,this._contextKeyService=n,this._contextMenuService=s,this._keybindingService=r,this._commandService=a,this._sessionDisposables=this._store.add(new X);const c=t?.telemetrySource;c&&this._store.add(this.actionBar.onDidRun(d=>l.publicLog2("workbenchActionExecuted",{id:d.action.id,from:c})))}setActions(e,t=[],i){this._sessionDisposables.clear();const n=e.slice(),s=t.slice(),r=[];let a=0;const l=[];let c=!1;if(this._options?.hiddenItemStrategy!==-1)for(let d=0;df?.id)),h=this._options.overflowBehavior.maxItems-d.size;let u=0;for(let f=0;f=h&&(n[f]=void 0,l[f]=g))}}RM(n),RM(l),super.setActions(n,Gi.join(l,s)),(r.length>0||n.length>0)&&this._sessionDisposables.add(U(this.getElement(),"contextmenu",d=>{const h=new ur(fe(this.getElement()),d),u=this.getItemAction(h.target);if(!u)return;h.preventDefault(),h.stopPropagation();const f=[];if(u instanceof so&&u.menuKeybinding)f.push(u.menuKeybinding);else if(!(u instanceof Zm||u instanceof E_)){const p=!!this._keybindingService.lookupKeybinding(u.id);f.push(o8(this._commandService,this._keybindingService,u.id,void 0,p))}if(r.length>0){let p=!1;if(a===1&&this._options?.hiddenItemStrategy===0){p=!0;for(let _=0;_this._menuService.resetHiddenStates(i)}))),g.length!==0&&this._contextMenuService.showContextMenu({getAnchor:()=>h,getActions:()=>g,menuId:this._options?.contextMenu,menuActionOptions:{renderShortTitle:!0,...this._options?.menuOptions},skipTelemetry:typeof this._options?.telemetrySource=="string",contextKeyService:this._contextKeyService})}))}};$v=z8([Do(2,yr),Do(3,De),Do(4,Lr),Do(5,vt),Do(6,hi),Do(7,$s)],$v);let Kv=class extends $v{constructor(e,t,i,n,s,r,a,l,c){super(e,{resetMenu:t,...i},n,s,r,a,l,c),this._onDidChangeMenuItems=this._store.add(new A),this.onDidChangeMenuItems=this._onDidChangeMenuItems.event;const d=this._store.add(n.createMenu(t,s,{emitEventsForSubmenuChanges:!0})),h=()=>{const u=[],f=[];XT(d,i?.menuOptions,{primary:u,secondary:f},i?.toolbarOptions?.primaryGroup,i?.toolbarOptions?.shouldInlineSubmenu,i?.toolbarOptions?.useSeparatorsInPrimaryActions),e.classList.toggle("has-no-actions",u.length===0&&f.length===0),super.setActions(u,f)};this._store.add(d.onDidChange(()=>{h(),this._onDidChangeMenuItems.fire(this)})),h()}setActions(){throw new nt("This toolbar is populated from a menu.")}};Kv=z8([Do(3,yr),Do(4,De),Do(5,Lr),Do(6,vt),Do(7,hi),Do(8,$s)],Kv);var U8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},j1=function(o,e){return function(t,i){e(t,i,o)}};const dL=[],a1=35;let YI=class extends z{constructor(e,t,i,n,s,r,a,l,c){super(),this._diffModel=t,this._editors=i,this._options=n,this._sashLayout=s,this._boundarySashes=r,this._instantiationService=a,this._contextKeyService=l,this._menuService=c,this._menu=this._register(this._menuService.createMenu($e.DiffEditorHunkToolbar,this._contextKeyService)),this._actions=gt(this,this._menu.onDidChange,()=>this._menu.getActions()),this._hasActions=this._actions.map(d=>d.length>0),this._showSash=Ce(this,d=>this._options.renderSideBySide.read(d)&&this._hasActions.read(d)),this.width=Ce(this,d=>this._hasActions.read(d)?a1:0),this.elements=tt("div.gutter@gutter",{style:{position:"absolute",height:"100%",width:a1+"px"}},[]),this._currentDiff=Ce(this,d=>{const h=this._diffModel.read(d);if(!h)return;const u=h.diff.read(d)?.mappings,f=this._editors.modifiedCursor.read(d);if(f)return u?.find(g=>g.lineRangeMapping.modified.contains(f.lineNumber))}),this._selectedDiffs=Ce(this,d=>{const u=this._diffModel.read(d)?.diff.read(d);if(!u)return dL;const f=this._editors.modifiedSelections.read(d);if(f.every(b=>b.isEmpty()))return dL;const g=new to(f.map(b=>xe.fromRangeInclusive(b))),_=u.mappings.filter(b=>b.lineRangeMapping.innerChanges&&g.intersects(b.lineRangeMapping.modified)).map(b=>({mapping:b,rangeMappings:b.lineRangeMapping.innerChanges.filter(C=>f.some(w=>I.areIntersecting(C.modifiedRange,w)))}));return _.length===0||_.every(b=>b.rangeMappings.length===0)?dL:_}),this._register(Zoe(e,this.elements.root)),this._register(U(this.elements.root,"click",()=>{this._editors.modified.focus()})),this._register(Vc(this.elements.root,{display:this._hasActions.map(d=>d?"block":"none")})),tr(this,d=>this._showSash.read(d)?new H8(e,this._sashLayout.dimensions,this._options.enableSplitViewResizing,this._boundarySashes,ZT(this,u=>this._sashLayout.sashLeft.read(u)-a1,(u,f)=>this._sashLayout.sashLeft.set(u+a1,f)),()=>this._sashLayout.resetSash()):void 0).recomputeInitiallyAndOnChange(this._store),this._register(new Dre(this._editors.modified,this.elements.root,{getIntersectingGutterItems:(d,h)=>{const u=this._diffModel.read(h);if(!u)return[];const f=u.diff.read(h);if(!f)return[];const g=this._selectedDiffs.read(h);if(g.length>0){const _=Ws.fromRangeMappings(g.flatMap(b=>b.rangeMappings));return[new b4(_,!0,$e.DiffEditorSelectionToolbar,void 0,u.model.original.uri,u.model.modified.uri)]}const p=this._currentDiff.read(h);return f.mappings.map(_=>new b4(_.lineRangeMapping.withInnerChangesFromLineRanges(),_.lineRangeMapping===p?.lineRangeMapping,$e.DiffEditorHunkToolbar,void 0,u.model.original.uri,u.model.modified.uri))},createView:(d,h)=>this._instantiationService.createInstance(QI,d,h,this)})),this._register(U(this.elements.gutter,ee.MOUSE_WHEEL,d=>{this._editors.modified.getOption(104).handleMouseWheel&&this._editors.modified.delegateScrollFromMouseWheelEvent(d)},{passive:!1}))}computeStagedValue(e){const t=e.innerChanges??[],i=new _4(this._editors.modifiedModel.get()),n=new _4(this._editors.original.getModel());return new gT(t.map(a=>a.toTextEdit(i))).apply(n)}layout(e){this.elements.gutter.style.left=e+"px"}};YI=U8([j1(6,ke),j1(7,De),j1(8,yr)],YI);class b4{constructor(e,t,i,n,s,r){this.mapping=e,this.showAlways=t,this.menuId=i,this.rangeOverride=n,this.originalUri=s,this.modifiedUri=r}get id(){return this.mapping.modified.toString()}get range(){return this.rangeOverride??this.mapping.modified}}let QI=class extends z{constructor(e,t,i,n){super(),this._item=e,this._elements=tt("div.gutterItem",{style:{height:"20px",width:"34px"}},[tt("div.background@background",{},[]),tt("div.buttons@buttons",{},[])]),this._showAlways=this._item.map(this,r=>r.showAlways),this._menuId=this._item.map(this,r=>r.menuId),this._isSmall=Ge(this,!1),this._lastItemRange=void 0,this._lastViewRange=void 0;const s=this._register(n.createInstance(gg,"element",!0,{position:{hoverPosition:1}}));this._register(Bm(t,this._elements.root)),this._register(We(r=>{const a=this._showAlways.read(r);this._elements.root.classList.toggle("noTransition",!0),this._elements.root.classList.toggle("showAlways",a),setTimeout(()=>{this._elements.root.classList.toggle("noTransition",!1)},0)})),this._register(To((r,a)=>{this._elements.buttons.replaceChildren();const l=a.add(n.createInstance(Kv,this._elements.buttons,this._menuId.read(r),{orientation:1,hoverDelegate:s,toolbarOptions:{primaryGroup:c=>c.startsWith("primary")},overflowBehavior:{maxItems:this._isSmall.read(r)?1:3},hiddenItemStrategy:0,actionRunner:new V8(()=>{const c=this._item.get(),d=c.mapping;return{mapping:d,originalWithModifiedChanges:i.computeStagedValue(d),originalUri:c.originalUri,modifiedUri:c.modifiedUri}}),menuOptions:{shouldForwardArgs:!0}}));a.add(l.onDidChangeMenuItems(()=>{this._lastItemRange&&this.layout(this._lastItemRange,this._lastViewRange)}))}))}layout(e,t){this._lastItemRange=e,this._lastViewRange=t;let i=this._elements.buttons.clientHeight;this._isSmall.set(this._item.get().mapping.original.startLineNumber===1&&e.length<30,void 0),i=this._elements.buttons.clientHeight;const n=e.length/2-i/2,s=i;let r=e.start+n;const a=Re.tryCreate(s,t.endExclusive-s-i),l=Re.tryCreate(e.start+s,e.endExclusive-i-s);l&&a&&l.start{const n=Ql._map.get(e);n&&(Ql._map.delete(e),n.dispose(),i.dispose())})}return t}_beginUpdate(){this._updateCounter++,this._updateCounter===1&&(this._currentTransaction=new Ug(()=>{}))}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){const e=this._currentTransaction;this._currentTransaction=void 0,e.finish()}}constructor(e){super(),this.editor=e,this._updateCounter=0,this._currentTransaction=void 0,this._model=Ge(this,this.editor.getModel()),this.model=this._model,this.isReadonly=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(92)),this._versionId=iD({owner:this,lazy:!0},this.editor.getModel()?.getVersionId()??null),this.versionId=this._versionId,this._selections=iD({owner:this,equalsFn:Jk(Xk(Fe.selectionsEqual)),lazy:!0},this.editor.getSelections()??null),this.selections=this._selections,this.isFocused=gt(this,t=>{const i=this.editor.onDidFocusEditorWidget(t),n=this.editor.onDidBlurEditorWidget(t);return{dispose(){i.dispose(),n.dispose()}}},()=>this.editor.hasWidgetFocus()),this.value=ZT(this,t=>(this.versionId.read(t),this.model.read(t)?.getValue()??""),(t,i)=>{const n=this.model.get();n!==null&&t!==n.getValue()&&n.setValue(t)}),this.valueIsEmpty=Ce(this,t=>(this.versionId.read(t),this.editor.getModel()?.getValueLength()===0)),this.cursorSelection=dr({owner:this,equalsFn:Jk(Fe.selectionsEqual)},t=>this.selections.read(t)?.[0]??null),this.onDidType=Q_(this),this.scrollTop=gt(this.editor.onDidScrollChange,()=>this.editor.getScrollTop()),this.scrollLeft=gt(this.editor.onDidScrollChange,()=>this.editor.getScrollLeft()),this.layoutInfo=gt(this.editor.onDidLayoutChange,()=>this.editor.getLayoutInfo()),this.layoutInfoContentLeft=this.layoutInfo.map(t=>t.contentLeft),this.layoutInfoDecorationsLeft=this.layoutInfo.map(t=>t.decorationsLeft),this.contentWidth=gt(this.editor.onDidContentSizeChange,()=>this.editor.getContentWidth()),this._overlayWidgetCounter=0,this._register(this.editor.onBeginUpdate(()=>this._beginUpdate())),this._register(this.editor.onEndUpdate(()=>this._endUpdate())),this._register(this.editor.onDidChangeModel(()=>{this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidType(t=>{this._beginUpdate();try{this._forceUpdate(),this.onDidType.trigger(this._currentTransaction,t)}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeModelContent(t=>{this._beginUpdate();try{this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeCursorSelection(t=>{this._beginUpdate();try{this._selections.set(this.editor.getSelections(),this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}}))}forceUpdate(e){this._beginUpdate();try{return this._forceUpdate(),e?e(this._currentTransaction):void 0}finally{this._endUpdate()}}_forceUpdate(){this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,void 0),this._selections.set(this.editor.getSelections(),this._currentTransaction,void 0)}finally{this._endUpdate()}}getOption(e){return gt(this,t=>this.editor.onDidChangeConfiguration(i=>{i.hasChanged(e)&&t(void 0)}),()=>this.editor.getOption(e))}setDecorations(e){const t=new X,i=this.editor.createDecorationsCollection();return t.add(Z_({owner:this,debugName:()=>`Apply decorations from ${e.debugName}`},n=>{const s=e.read(n);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}createOverlayWidget(e){const t="observableOverlayWidget"+this._overlayWidgetCounter++,i={getDomNode:()=>e.domNode,getPosition:()=>e.position.get(),getId:()=>t,allowEditorOverflow:e.allowEditorOverflow,getMinContentWidthInPx:()=>e.minContentWidthInPx.get()};this.editor.addOverlayWidget(i);const n=We(s=>{e.position.read(s),e.minContentWidthInPx.read(s),this.editor.layoutOverlayWidget(i)});return _e(()=>{n.dispose(),this.editor.removeOverlayWidget(i)})}};Ql._map=new Map;let XI=Ql;function JI(o,e){return zZ({createEmptyChangeSummary:()=>({deltas:[],didChange:!1}),handleChange:(t,i)=>{if(t.didChange(o)){const n=t.change;n!==void 0&&i.deltas.push(n),i.didChange=!0}return!0}},(t,i)=>{const n=o.read(t);i.didChange&&e(n,i.deltas)})}function Nre(o,e){const t=new X,i=JI(o,(n,s)=>{t.clear(),e(n,s,t)});return{dispose(){i.dispose(),t.dispose()}}}var Tre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Mre=function(o,e){return function(t,i){e(t,i,o)}},q1,uh;let eE=(uh=class extends z{static setBreadcrumbsSourceFactory(e){this._breadcrumbsSourceFactory.set(e,void 0)}get isUpdatingHiddenAreas(){return this._isUpdatingHiddenAreas}constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._instantiationService=n,this._modifiedOutlineSource=tr(this,l=>{const c=this._editors.modifiedModel.read(l),d=q1._breadcrumbsSourceFactory.read(l);return!c||!d?void 0:d(c,this._instantiationService)}),this._isUpdatingHiddenAreas=!1,this._register(this._editors.original.onDidChangeCursorPosition(l=>{if(l.reason===1)return;const c=this._diffModel.get();Xt(d=>{for(const h of this._editors.original.getSelections()||[])c?.ensureOriginalLineIsVisible(h.getStartPosition().lineNumber,0,d),c?.ensureOriginalLineIsVisible(h.getEndPosition().lineNumber,0,d)})})),this._register(this._editors.modified.onDidChangeCursorPosition(l=>{if(l.reason===1)return;const c=this._diffModel.get();Xt(d=>{for(const h of this._editors.modified.getSelections()||[])c?.ensureModifiedLineIsVisible(h.getStartPosition().lineNumber,0,d),c?.ensureModifiedLineIsVisible(h.getEndPosition().lineNumber,0,d)})}));const s=this._diffModel.map((l,c)=>{const d=l?.unchangedRegions.read(c)??[];return d.length===1&&d[0].modifiedLineNumber===1&&d[0].lineCount===this._editors.modifiedModel.read(c)?.getLineCount()?[]:d});this.viewZones=cu(this,(l,c)=>{const d=this._modifiedOutlineSource.read(l);if(!d)return{origViewZones:[],modViewZones:[]};const h=[],u=[],f=this._options.renderSideBySide.read(l),g=this._options.compactMode.read(l),p=s.read(l);for(let _=0;_b.getHiddenOriginalRange(v).startLineNumber-1),w=new ff(C,12);h.push(w),c.add(new C4(this._editors.original,w,b,!f))}{const C=Ce(this,v=>b.getHiddenModifiedRange(v).startLineNumber-1),w=new ff(C,12);u.push(w),c.add(new C4(this._editors.modified,w,b))}}else{{const C=Ce(this,v=>b.getHiddenOriginalRange(v).startLineNumber-1),w=new ff(C,24);h.push(w),c.add(new v4(this._editors.original,w,b,b.originalUnchangedRange,!f,d,v=>this._diffModel.get().ensureModifiedLineIsVisible(v,2,void 0),this._options))}{const C=Ce(this,v=>b.getHiddenModifiedRange(v).startLineNumber-1),w=new ff(C,24);u.push(w),c.add(new v4(this._editors.modified,w,b,b.modifiedUnchangedRange,!1,d,v=>this._diffModel.get().ensureModifiedLineIsVisible(v,2,void 0),this._options))}}}return{origViewZones:h,modViewZones:u}});const r={description:"unchanged lines",className:"diff-unchanged-lines",isWholeLine:!0},a={description:"Fold Unchanged",glyphMarginHoverMessage:new Js(void 0,{isTrusted:!0,supportThemeIcons:!0}).appendMarkdown(m("foldUnchanged","Fold Unchanged Region")),glyphMarginClassName:"fold-unchanged "+Ee.asClassName(ie.fold),zIndex:10001};this._register(Vv(this._editors.original,Ce(this,l=>{const c=s.read(l),d=c.map(h=>({range:h.originalUnchangedRange.toInclusiveRange(),options:r}));for(const h of c)h.shouldHideControls(l)&&d.push({range:I.fromPositions(new P(h.originalLineNumber,1)),options:a});return d}))),this._register(Vv(this._editors.modified,Ce(this,l=>{const c=s.read(l),d=c.map(h=>({range:h.modifiedUnchangedRange.toInclusiveRange(),options:r}));for(const h of c)h.shouldHideControls(l)&&d.push({range:xe.ofLength(h.modifiedLineNumber,1).toInclusiveRange(),options:a});return d}))),this._register(We(l=>{const c=s.read(l);this._isUpdatingHiddenAreas=!0;try{this._editors.original.setHiddenAreas(c.map(d=>d.getHiddenOriginalRange(l).toInclusiveRange()).filter(_l)),this._editors.modified.setHiddenAreas(c.map(d=>d.getHiddenModifiedRange(l).toInclusiveRange()).filter(_l))}finally{this._isUpdatingHiddenAreas=!1}})),this._register(this._editors.modified.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){const c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;const h=d.unchangedRegions.get().find(u=>u.modifiedUnchangedRange.includes(c));if(!h)return;h.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}})),this._register(this._editors.original.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){const c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;const h=d.unchangedRegions.get().find(u=>u.originalUnchangedRange.includes(c));if(!h)return;h.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}}))}},q1=uh,uh._breadcrumbsSourceFactory=Ge(q1,()=>({dispose(){},getBreadcrumbItems(e,t){return[]}})),uh);eE=q1=Tre([Mre(3,ke)],eE);class C4 extends J2{constructor(e,t,i,n=!1){const s=tt("div.diff-hidden-lines-widget");super(e,t,s.root),this._unchangedRegion=i,this._hide=n,this._nodes=tt("div.diff-hidden-lines-compact",[tt("div.line-left",[]),tt("div.text@text",[]),tt("div.line-right",[])]),s.root.appendChild(this._nodes.root),this._hide&&this._nodes.root.replaceChildren(),this._register(We(r=>{if(!this._hide){const a=this._unchangedRegion.getHiddenModifiedRange(r).length,l=m("hiddenLines","{0} hidden lines",a);this._nodes.text.innerText=l}}))}}class v4 extends J2{constructor(e,t,i,n,s,r,a,l){const c=tt("div.diff-hidden-lines-widget");super(e,t,c.root),this._editor=e,this._unchangedRegion=i,this._unchangedRegionRange=n,this._hide=s,this._modifiedOutlineSource=r,this._revealModifiedHiddenLine=a,this._options=l,this._nodes=tt("div.diff-hidden-lines",[tt("div.top@top",{title:m("diff.hiddenLines.top","Click or drag to show more above")}),tt("div.center@content",{style:{display:"flex"}},[tt("div@first",{style:{display:"flex",justifyContent:"center",alignItems:"center",flexShrink:"0"}},[ce("a",{title:m("showUnchangedRegion","Show Unchanged Region"),role:"button",onclick:()=>{this._unchangedRegion.showAll(void 0)}},...Qd("$(unfold)"))]),tt("div@others",{style:{display:"flex",justifyContent:"center",alignItems:"center"}})]),tt("div.bottom@bottom",{title:m("diff.bottom","Click or drag to show more below"),role:"button"})]),c.root.appendChild(this._nodes.root),this._hide?un(this._nodes.first):this._register(Vc(this._nodes.first,{width:Dg(this._editor).layoutInfoContentLeft})),this._register(We(h=>{const u=this._unchangedRegion.visibleLineCountTop.read(h)+this._unchangedRegion.visibleLineCountBottom.read(h)===this._unchangedRegion.lineCount;this._nodes.bottom.classList.toggle("canMoveTop",!u),this._nodes.bottom.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(h)>0),this._nodes.top.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(h)>0),this._nodes.top.classList.toggle("canMoveBottom",!u);const f=this._unchangedRegion.isDragged.read(h),g=this._editor.getDomNode();g&&(g.classList.toggle("draggingUnchangedRegion",!!f),f==="top"?(g.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(h)>0),g.classList.toggle("canMoveBottom",!u)):f==="bottom"?(g.classList.toggle("canMoveTop",!u),g.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(h)>0)):(g.classList.toggle("canMoveTop",!1),g.classList.toggle("canMoveBottom",!1)))}));const d=this._editor;this._register(U(this._nodes.top,"mousedown",h=>{if(h.button!==0)return;this._nodes.top.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),h.preventDefault();const u=h.clientY;let f=!1;const g=this._unchangedRegion.visibleLineCountTop.get();this._unchangedRegion.isDragged.set("top",void 0);const p=fe(this._nodes.top),_=U(p,"mousemove",C=>{const v=C.clientY-u;f=f||Math.abs(v)>2;const y=Math.round(v/d.getOption(67)),x=Math.max(0,Math.min(g+y,this._unchangedRegion.getMaxVisibleLineCountTop()));this._unchangedRegion.visibleLineCountTop.set(x,void 0)}),b=U(p,"mouseup",C=>{f||this._unchangedRegion.showMoreAbove(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0),this._nodes.top.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),this._unchangedRegion.isDragged.set(void 0,void 0),_.dispose(),b.dispose()})})),this._register(U(this._nodes.bottom,"mousedown",h=>{if(h.button!==0)return;this._nodes.bottom.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),h.preventDefault();const u=h.clientY;let f=!1;const g=this._unchangedRegion.visibleLineCountBottom.get();this._unchangedRegion.isDragged.set("bottom",void 0);const p=fe(this._nodes.bottom),_=U(p,"mousemove",C=>{const v=C.clientY-u;f=f||Math.abs(v)>2;const y=Math.round(v/d.getOption(67)),x=Math.max(0,Math.min(g-y,this._unchangedRegion.getMaxVisibleLineCountBottom())),L=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.visibleLineCountBottom.set(x,void 0);const E=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(E-L))}),b=U(p,"mouseup",C=>{if(this._unchangedRegion.isDragged.set(void 0,void 0),!f){const w=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.showMoreBelow(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0);const v=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(v-w))}this._nodes.bottom.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),_.dispose(),b.dispose()})})),this._register(We(h=>{const u=[];if(!this._hide){const f=i.getHiddenModifiedRange(h).length,g=m("hiddenLines","{0} hidden lines",f),p=ce("span",{title:m("diff.hiddenLines.expandAll","Double click to unfold")},g);p.addEventListener("dblclick",C=>{C.button===0&&(C.preventDefault(),this._unchangedRegion.showAll(void 0))}),u.push(p);const _=this._unchangedRegion.getHiddenModifiedRange(h),b=this._modifiedOutlineSource.getBreadcrumbItems(_,h);if(b.length>0){u.push(ce("span",void 0,"  |  "));for(let C=0;C{this._revealModifiedHiddenLine(w.startLineNumber)}}}}un(this._nodes.others,...u)}))}}var Rre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Are=function(o,e){return function(t,i){e(t,i,o)}},Go,gl;let N_=(gl=class extends z{constructor(e,t,i,n,s,r,a){super(),this._editors=e,this._rootElement=t,this._diffModel=i,this._rootWidth=n,this._rootHeight=s,this._modifiedEditorLayoutInfo=r,this._themeService=a,this.width=Go.ENTIRE_DIFF_OVERVIEW_WIDTH;const l=gt(this._themeService.onDidColorThemeChange,()=>this._themeService.getColorTheme()),c=Ce(u=>{const f=l.read(u),g=f.getColor(PK)||(f.getColor(RK)||xk).transparent(2),p=f.getColor(OK)||(f.getColor(AK)||kk).transparent(2);return{insertColor:g,removeColor:p}}),d=ot(document.createElement("div"));d.setClassName("diffViewport"),d.setPosition("absolute");const h=tt("div.diffOverview",{style:{position:"absolute",top:"0px",width:Go.ENTIRE_DIFF_OVERVIEW_WIDTH+"px"}}).root;this._register(Bm(h,d.domNode)),this._register(jt(h,ee.POINTER_DOWN,u=>{this._editors.modified.delegateVerticalScrollbarPointerDown(u)})),this._register(U(h,ee.MOUSE_WHEEL,u=>{this._editors.modified.delegateScrollFromMouseWheelEvent(u)},{passive:!1})),this._register(Bm(this._rootElement,h)),this._register(To((u,f)=>{const g=this._diffModel.read(u),p=this._editors.original.createOverviewRuler("original diffOverviewRuler");p&&(f.add(p),f.add(Bm(h,p.getDomNode())));const _=this._editors.modified.createOverviewRuler("modified diffOverviewRuler");if(_&&(f.add(_),f.add(Bm(h,_.getDomNode()))),!p||!_)return;const b=ks("viewZoneChanged",this._editors.original.onDidChangeViewZones),C=ks("viewZoneChanged",this._editors.modified.onDidChangeViewZones),w=ks("hiddenRangesChanged",this._editors.original.onDidChangeHiddenAreas),v=ks("hiddenRangesChanged",this._editors.modified.onDidChangeHiddenAreas);f.add(We(y=>{b.read(y),C.read(y),w.read(y),v.read(y);const x=c.read(y),L=g?.diff.read(y)?.mappings;function E(F,W,j){const B=j._getViewModel();return B?F.filter(G=>G.length>0).map(G=>{const ne=B.coordinatesConverter.convertModelPositionToViewPosition(new P(G.startLineNumber,1)),ae=B.coordinatesConverter.convertModelPositionToViewPosition(new P(G.endLineNumberExclusive,1)),de=ae.lineNumber-ne.lineNumber;return new E8(ne.lineNumber,ae.lineNumber,de,W.toString())}):[]}const N=E((L||[]).map(F=>F.lineRangeMapping.original),x.removeColor,this._editors.original),H=E((L||[]).map(F=>F.lineRangeMapping.modified),x.insertColor,this._editors.modified);p?.setZones(N),_?.setZones(H)})),f.add(We(y=>{const x=this._rootHeight.read(y),L=this._rootWidth.read(y),E=this._modifiedEditorLayoutInfo.read(y);if(E){const N=Go.ENTIRE_DIFF_OVERVIEW_WIDTH-2*Go.ONE_OVERVIEW_WIDTH;p.setLayout({top:0,height:x,right:N+Go.ONE_OVERVIEW_WIDTH,width:Go.ONE_OVERVIEW_WIDTH}),_.setLayout({top:0,height:x,right:0,width:Go.ONE_OVERVIEW_WIDTH});const H=this._editors.modifiedScrollTop.read(y),F=this._editors.modifiedScrollHeight.read(y),W=this._editors.modified.getOption(104),j=new pg(W.verticalHasArrows?W.arrowSize:0,W.verticalScrollbarSize,0,E.height,F,H);d.setTop(j.getSliderPosition()),d.setHeight(j.getSliderSize())}else d.setTop(0),d.setHeight(0);h.style.height=x+"px",h.style.left=L-Go.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",d.setWidth(Go.ENTIRE_DIFF_OVERVIEW_WIDTH)}))}))}},Go=gl,gl.ONE_OVERVIEW_WIDTH=15,gl.ENTIRE_DIFF_OVERVIEW_WIDTH=gl.ONE_OVERVIEW_WIDTH*2,gl);N_=Go=Rre([Are(6,en)],N_);const hL=[];class Pre extends z{constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._widget=n,this._selectedDiffs=Ce(this,s=>{const a=this._diffModel.read(s)?.diff.read(s);if(!a)return hL;const l=this._editors.modifiedSelections.read(s);if(l.every(u=>u.isEmpty()))return hL;const c=new to(l.map(u=>xe.fromRangeInclusive(u))),h=a.mappings.filter(u=>u.lineRangeMapping.innerChanges&&c.intersects(u.lineRangeMapping.modified)).map(u=>({mapping:u,rangeMappings:u.lineRangeMapping.innerChanges.filter(f=>l.some(g=>I.areIntersecting(f.modifiedRange,g)))}));return h.length===0||h.every(u=>u.rangeMappings.length===0)?hL:h}),this._register(To((s,r)=>{if(!this._options.shouldRenderOldRevertArrows.read(s))return;const a=this._diffModel.read(s),l=a?.diff.read(s);if(!a||!l||a.movedTextToCompare.read(s))return;const c=[],d=this._selectedDiffs.read(s),h=new Set(d.map(u=>u.mapping));if(d.length>0){const u=this._editors.modifiedSelections.read(s),f=r.add(new jv(u[u.length-1].positionLineNumber,this._widget,d.flatMap(g=>g.rangeMappings),!0));this._editors.modified.addGlyphMarginWidget(f),c.push(f)}for(const u of l.mappings)if(!h.has(u)&&!u.lineRangeMapping.modified.isEmpty&&u.lineRangeMapping.innerChanges){const f=r.add(new jv(u.lineRangeMapping.modified.startLineNumber,this._widget,u.lineRangeMapping,!1));this._editors.modified.addGlyphMarginWidget(f),c.push(f)}r.add(_e(()=>{for(const u of c)this._editors.modified.removeGlyphMarginWidget(u)}))}))}}const c0=class c0 extends z{getId(){return this._id}constructor(e,t,i,n){super(),this._lineNumber=e,this._widget=t,this._diffs=i,this._revertSelection=n,this._id=`revertButton${c0.counter++}`,this._domNode=tt("div.revertButton",{title:this._revertSelection?m("revertSelectedChanges","Revert Selected Changes"):m("revertChange","Revert Change")},[BC(ie.arrowRight)]).root,this._register(U(this._domNode,ee.MOUSE_DOWN,s=>{s.button!==2&&(s.stopPropagation(),s.preventDefault())})),this._register(U(this._domNode,ee.MOUSE_UP,s=>{s.stopPropagation(),s.preventDefault()})),this._register(U(this._domNode,ee.CLICK,s=>{this._diffs instanceof hn?this._widget.revert(this._diffs):this._widget.revertRangeMappings(this._diffs),s.stopPropagation(),s.preventDefault()}))}getDomNode(){return this._domNode}getPosition(){return{lane:Ao.Right,range:{startColumn:1,startLineNumber:this._lineNumber,endColumn:1,endLineNumber:this._lineNumber},zIndex:10001}}};c0.counter=0;let jv=c0;function Pa(o,e,t){const i=o.bindTo(e);return Z_({debugName:()=>`Set Context Key "${o.key}"`},n=>{i.set(t(n))})}var Ore=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},w4=function(o,e){return function(t,i){e(t,i,o)}};let tE=class extends z{get onDidContentSizeChange(){return this._onDidContentSizeChange.event}constructor(e,t,i,n,s,r,a){super(),this.originalEditorElement=e,this.modifiedEditorElement=t,this._options=i,this._argCodeEditorWidgetOptions=n,this._createInnerEditor=s,this._instantiationService=r,this._keybindingService=a,this.original=this._register(this._createLeftHandSideEditor(this._options.editorOptions.get(),this._argCodeEditorWidgetOptions.originalEditor||{})),this.modified=this._register(this._createRightHandSideEditor(this._options.editorOptions.get(),this._argCodeEditorWidgetOptions.modifiedEditor||{})),this._onDidContentSizeChange=this._register(new A),this.modifiedScrollTop=gt(this,this.modified.onDidScrollChange,()=>this.modified.getScrollTop()),this.modifiedScrollHeight=gt(this,this.modified.onDidScrollChange,()=>this.modified.getScrollHeight()),this.modifiedObs=Dg(this.modified),this.originalObs=Dg(this.original),this.modifiedModel=this.modifiedObs.model,this.modifiedSelections=gt(this,this.modified.onDidChangeCursorSelection,()=>this.modified.getSelections()??[]),this.modifiedCursor=dr({owner:this,equalsFn:P.equals},l=>this.modifiedSelections.read(l)[0]?.getPosition()??new P(1,1)),this.originalCursor=gt(this,this.original.onDidChangeCursorPosition,()=>this.original.getPosition()??new P(1,1)),this._argCodeEditorWidgetOptions=null,this._register(Y_({createEmptyChangeSummary:()=>({}),handleChange:(l,c)=>(l.didChange(i.editorOptions)&&Object.assign(c,l.change.changedOptions),!0)},(l,c)=>{i.editorOptions.read(l),this._options.renderSideBySide.read(l),this.modified.updateOptions(this._adjustOptionsForRightHandSide(l,c)),this.original.updateOptions(this._adjustOptionsForLeftHandSide(l,c))}))}_createLeftHandSideEditor(e,t){const i=this._adjustOptionsForLeftHandSide(void 0,e),n=this._constructInnerEditor(this._instantiationService,this.originalEditorElement,i,t);return n.setContextValue("isInDiffLeftEditor",!0),n}_createRightHandSideEditor(e,t){const i=this._adjustOptionsForRightHandSide(void 0,e),n=this._constructInnerEditor(this._instantiationService,this.modifiedEditorElement,i,t);return n.setContextValue("isInDiffRightEditor",!0),n}_constructInnerEditor(e,t,i,n){const s=this._createInnerEditor(e,t,i,n);return this._register(s.onDidContentSizeChange(r=>{const a=this.original.getContentWidth()+this.modified.getContentWidth()+N_.ENTIRE_DIFF_OVERVIEW_WIDTH,l=Math.max(this.modified.getContentHeight(),this.original.getContentHeight());this._onDidContentSizeChange.fire({contentHeight:l,contentWidth:a,contentHeightChanged:r.contentHeightChanged,contentWidthChanged:r.contentWidthChanged})})),s}_adjustOptionsForLeftHandSide(e,t){const i=this._adjustOptionsForSubEditor(t);return this._options.renderSideBySide.get()?(i.unicodeHighlight=this._options.editorOptions.get().unicodeHighlight||{},i.wordWrapOverride1=this._options.diffWordWrap.get()):(i.wordWrapOverride1="off",i.wordWrapOverride2="off",i.stickyScroll={enabled:!1},i.unicodeHighlight={nonBasicASCII:!1,ambiguousCharacters:!1,invisibleCharacters:!1}),i.glyphMargin=this._options.renderSideBySide.get(),t.originalAriaLabel&&(i.ariaLabel=t.originalAriaLabel),i.ariaLabel=this._updateAriaLabel(i.ariaLabel),i.readOnly=!this._options.originalEditable.get(),i.dropIntoEditor={enabled:!i.readOnly},i.extraEditorClassName="original-in-monaco-diff-editor",i}_adjustOptionsForRightHandSide(e,t){const i=this._adjustOptionsForSubEditor(t);return t.modifiedAriaLabel&&(i.ariaLabel=t.modifiedAriaLabel),i.ariaLabel=this._updateAriaLabel(i.ariaLabel),i.wordWrapOverride1=this._options.diffWordWrap.get(),i.revealHorizontalRightPadding=Xh.revealHorizontalRightPadding.defaultValue+N_.ENTIRE_DIFF_OVERVIEW_WIDTH,i.scrollbar.verticalHasArrows=!1,i.extraEditorClassName="modified-in-monaco-diff-editor",i}_adjustOptionsForSubEditor(e){const t={...e,dimension:{height:0,width:0}};return t.inDiffEditor=!0,t.automaticLayout=!1,t.scrollbar={...t.scrollbar||{}},t.folding=!1,t.codeLens=this._options.diffCodeLens.get(),t.fixedOverflowWidgets=!0,t.minimap={...t.minimap||{}},t.minimap.enabled=!1,this._options.hideUnchangedRegions.get()?t.stickyScroll={enabled:!1}:t.stickyScroll=this._options.editorOptions.get().stickyScroll,t}_updateAriaLabel(e){e||(e="");const t=m("diff-aria-navigation-tip"," use {0} to open the accessibility help.",this._keybindingService.lookupKeybinding("editor.action.accessibilityHelp")?.getAriaLabel());return this._options.accessibilityVerbose.get()?e+t:e?e.replaceAll(t,""):""}};tE=Ore([w4(5,ke),w4(6,vt)],tE);const d0=class d0 extends z{constructor(){super(...arguments),this._id=++d0.idCounter,this._onDidDispose=this._register(new A),this.onDidDispose=this._onDidDispose.event}getId(){return this.getEditorType()+":v2:"+this._id}getVisibleColumnFromPosition(e){return this._targetEditor.getVisibleColumnFromPosition(e)}getPosition(){return this._targetEditor.getPosition()}setPosition(e,t="api"){this._targetEditor.setPosition(e,t)}revealLine(e,t=0){this._targetEditor.revealLine(e,t)}revealLineInCenter(e,t=0){this._targetEditor.revealLineInCenter(e,t)}revealLineInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealLineInCenterIfOutsideViewport(e,t)}revealLineNearTop(e,t=0){this._targetEditor.revealLineNearTop(e,t)}revealPosition(e,t=0){this._targetEditor.revealPosition(e,t)}revealPositionInCenter(e,t=0){this._targetEditor.revealPositionInCenter(e,t)}revealPositionInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealPositionInCenterIfOutsideViewport(e,t)}revealPositionNearTop(e,t=0){this._targetEditor.revealPositionNearTop(e,t)}getSelection(){return this._targetEditor.getSelection()}getSelections(){return this._targetEditor.getSelections()}setSelection(e,t="api"){this._targetEditor.setSelection(e,t)}setSelections(e,t="api"){this._targetEditor.setSelections(e,t)}revealLines(e,t,i=0){this._targetEditor.revealLines(e,t,i)}revealLinesInCenter(e,t,i=0){this._targetEditor.revealLinesInCenter(e,t,i)}revealLinesInCenterIfOutsideViewport(e,t,i=0){this._targetEditor.revealLinesInCenterIfOutsideViewport(e,t,i)}revealLinesNearTop(e,t,i=0){this._targetEditor.revealLinesNearTop(e,t,i)}revealRange(e,t=0,i=!1,n=!0){this._targetEditor.revealRange(e,t,i,n)}revealRangeInCenter(e,t=0){this._targetEditor.revealRangeInCenter(e,t)}revealRangeInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealRangeInCenterIfOutsideViewport(e,t)}revealRangeNearTop(e,t=0){this._targetEditor.revealRangeNearTop(e,t)}revealRangeNearTopIfOutsideViewport(e,t=0){this._targetEditor.revealRangeNearTopIfOutsideViewport(e,t)}revealRangeAtTop(e,t=0){this._targetEditor.revealRangeAtTop(e,t)}getSupportedActions(){return this._targetEditor.getSupportedActions()}focus(){this._targetEditor.focus()}trigger(e,t,i){this._targetEditor.trigger(e,t,i)}createDecorationsCollection(e){return this._targetEditor.createDecorationsCollection(e)}changeDecorations(e){return this._targetEditor.changeDecorations(e)}};d0.idCounter=0;let iE=d0;var Fre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Bre=function(o,e){return function(t,i){e(t,i,o)}};let nE=class{get editorOptions(){return this._options}constructor(e,t){this._accessibilityService=t,this._diffEditorWidth=Ge(this,0),this._screenReaderMode=gt(this,this._accessibilityService.onDidChangeScreenReaderOptimized,()=>this._accessibilityService.isScreenReaderOptimized()),this.couldShowInlineViewBecauseOfSize=Ce(this,n=>this._options.read(n).renderSideBySide&&this._diffEditorWidth.read(n)<=this._options.read(n).renderSideBySideInlineBreakpoint),this.renderOverviewRuler=Ce(this,n=>this._options.read(n).renderOverviewRuler),this.renderSideBySide=Ce(this,n=>this.compactMode.read(n)&&this.shouldRenderInlineViewInSmartMode.read(n)?!1:this._options.read(n).renderSideBySide&&!(this._options.read(n).useInlineViewWhenSpaceIsLimited&&this.couldShowInlineViewBecauseOfSize.read(n)&&!this._screenReaderMode.read(n))),this.readOnly=Ce(this,n=>this._options.read(n).readOnly),this.shouldRenderOldRevertArrows=Ce(this,n=>!(!this._options.read(n).renderMarginRevertIcon||!this.renderSideBySide.read(n)||this.readOnly.read(n)||this.shouldRenderGutterMenu.read(n))),this.shouldRenderGutterMenu=Ce(this,n=>this._options.read(n).renderGutterMenu),this.renderIndicators=Ce(this,n=>this._options.read(n).renderIndicators),this.enableSplitViewResizing=Ce(this,n=>this._options.read(n).enableSplitViewResizing),this.splitViewDefaultRatio=Ce(this,n=>this._options.read(n).splitViewDefaultRatio),this.ignoreTrimWhitespace=Ce(this,n=>this._options.read(n).ignoreTrimWhitespace),this.maxComputationTimeMs=Ce(this,n=>this._options.read(n).maxComputationTime),this.showMoves=Ce(this,n=>this._options.read(n).experimental.showMoves&&this.renderSideBySide.read(n)),this.isInEmbeddedEditor=Ce(this,n=>this._options.read(n).isInEmbeddedEditor),this.diffWordWrap=Ce(this,n=>this._options.read(n).diffWordWrap),this.originalEditable=Ce(this,n=>this._options.read(n).originalEditable),this.diffCodeLens=Ce(this,n=>this._options.read(n).diffCodeLens),this.accessibilityVerbose=Ce(this,n=>this._options.read(n).accessibilityVerbose),this.diffAlgorithm=Ce(this,n=>this._options.read(n).diffAlgorithm),this.showEmptyDecorations=Ce(this,n=>this._options.read(n).experimental.showEmptyDecorations),this.onlyShowAccessibleDiffViewer=Ce(this,n=>this._options.read(n).onlyShowAccessibleDiffViewer),this.compactMode=Ce(this,n=>this._options.read(n).compactMode),this.trueInlineDiffRenderingEnabled=Ce(this,n=>this._options.read(n).experimental.useTrueInlineView),this.useTrueInlineDiffRendering=Ce(this,n=>!this.renderSideBySide.read(n)&&this.trueInlineDiffRenderingEnabled.read(n)),this.hideUnchangedRegions=Ce(this,n=>this._options.read(n).hideUnchangedRegions.enabled),this.hideUnchangedRegionsRevealLineCount=Ce(this,n=>this._options.read(n).hideUnchangedRegions.revealLineCount),this.hideUnchangedRegionsContextLineCount=Ce(this,n=>this._options.read(n).hideUnchangedRegions.contextLineCount),this.hideUnchangedRegionsMinimumLineCount=Ce(this,n=>this._options.read(n).hideUnchangedRegions.minimumLineCount),this._model=Ge(this,void 0),this.shouldRenderInlineViewInSmartMode=this._model.map(this,n=>qZ(this,s=>{const r=n?.diff.read(s);return r?Wre(r,this.trueInlineDiffRenderingEnabled.read(s)):void 0})).flatten().map(this,n=>!!n),this.inlineViewHideOriginalLineNumbers=this.compactMode;const i={...e,...y4(e,Vi)};this._options=Ge(this,i)}updateOptions(e){const t=y4(e,this._options.get()),i={...this._options.get(),...e,...t};this._options.set(i,void 0,{changedOptions:e})}setWidth(e){this._diffEditorWidth.set(e,void 0)}setModel(e){this._model.set(e,void 0)}};nE=Fre([Bre(1,ms)],nE);function Wre(o,e){return o.mappings.every(t=>Hre(t.lineRangeMapping)||Vre(t.lineRangeMapping)||e&&oM(t.lineRangeMapping))}function Hre(o){return o.original.length===0}function Vre(o){return o.modified.length===0}function y4(o,e){return{enableSplitViewResizing:he(o.enableSplitViewResizing,e.enableSplitViewResizing),splitViewDefaultRatio:k6(o.splitViewDefaultRatio,.5,.1,.9),renderSideBySide:he(o.renderSideBySide,e.renderSideBySide),renderMarginRevertIcon:he(o.renderMarginRevertIcon,e.renderMarginRevertIcon),maxComputationTime:dd(o.maxComputationTime,e.maxComputationTime,0,1073741824),maxFileSize:dd(o.maxFileSize,e.maxFileSize,0,1073741824),ignoreTrimWhitespace:he(o.ignoreTrimWhitespace,e.ignoreTrimWhitespace),renderIndicators:he(o.renderIndicators,e.renderIndicators),originalEditable:he(o.originalEditable,e.originalEditable),diffCodeLens:he(o.diffCodeLens,e.diffCodeLens),renderOverviewRuler:he(o.renderOverviewRuler,e.renderOverviewRuler),diffWordWrap:Ht(o.diffWordWrap,e.diffWordWrap,["off","on","inherit"]),diffAlgorithm:Ht(o.diffAlgorithm,e.diffAlgorithm,["legacy","advanced"],{smart:"legacy",experimental:"advanced"}),accessibilityVerbose:he(o.accessibilityVerbose,e.accessibilityVerbose),experimental:{showMoves:he(o.experimental?.showMoves,e.experimental.showMoves),showEmptyDecorations:he(o.experimental?.showEmptyDecorations,e.experimental.showEmptyDecorations),useTrueInlineView:he(o.experimental?.useTrueInlineView,e.experimental.useTrueInlineView)},hideUnchangedRegions:{enabled:he(o.hideUnchangedRegions?.enabled??o.experimental?.collapseUnchangedRegions,e.hideUnchangedRegions.enabled),contextLineCount:dd(o.hideUnchangedRegions?.contextLineCount,e.hideUnchangedRegions.contextLineCount,0,1073741824),minimumLineCount:dd(o.hideUnchangedRegions?.minimumLineCount,e.hideUnchangedRegions.minimumLineCount,0,1073741824),revealLineCount:dd(o.hideUnchangedRegions?.revealLineCount,e.hideUnchangedRegions.revealLineCount,0,1073741824)},isInEmbeddedEditor:he(o.isInEmbeddedEditor,e.isInEmbeddedEditor),onlyShowAccessibleDiffViewer:he(o.onlyShowAccessibleDiffViewer,e.onlyShowAccessibleDiffViewer),renderSideBySideInlineBreakpoint:dd(o.renderSideBySideInlineBreakpoint,e.renderSideBySideInlineBreakpoint,0,1073741824),useInlineViewWhenSpaceIsLimited:he(o.useInlineViewWhenSpaceIsLimited,e.useInlineViewWhenSpaceIsLimited),renderGutterMenu:he(o.renderGutterMenu,e.renderGutterMenu),compactMode:he(o.compactMode,e.compactMode)}}var zre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Lm=function(o,e){return function(t,i){e(t,i,o)}};let qv=class extends iE{get onDidContentSizeChange(){return this._editors.onDidContentSizeChange}constructor(e,t,i,n,s,r,a,l){super(),this._domElement=e,this._parentContextKeyService=n,this._parentInstantiationService=s,this._accessibilitySignalService=a,this._editorProgressService=l,this.elements=tt("div.monaco-diff-editor.side-by-side",{style:{position:"relative",height:"100%"}},[tt("div.editor.original@original",{style:{position:"absolute",height:"100%"}}),tt("div.editor.modified@modified",{style:{position:"absolute",height:"100%"}}),tt("div.accessibleDiffViewer@accessibleDiffViewer",{style:{position:"absolute",height:"100%"}})]),this._diffModelSrc=this._register(KC(this,void 0)),this._diffModel=Ce(this,v=>this._diffModelSrc.read(v)?.object),this.onDidChangeModel=J.fromObservableLight(this._diffModel),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._domElement)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new jg([De,this._contextKeyService]))),this._boundarySashes=Ge(this,void 0),this._accessibleDiffViewerShouldBeVisible=Ge(this,!1),this._accessibleDiffViewerVisible=Ce(this,v=>this._options.onlyShowAccessibleDiffViewer.read(v)?!0:this._accessibleDiffViewerShouldBeVisible.read(v)),this._movedBlocksLinesPart=Ge(this,void 0),this._layoutInfo=Ce(this,v=>{const y=this._rootSizeObserver.width.read(v),x=this._rootSizeObserver.height.read(v);this._rootSizeObserver.automaticLayout?this.elements.root.style.height="100%":this.elements.root.style.height=x+"px";const L=this._sash.read(v),E=this._gutter.read(v),N=E?.width.read(v)??0,H=this._overviewRulerPart.read(v)?.width??0;let F,W,j,B,G;if(!!L){const ae=L.sashLeft.read(v),de=this._movedBlocksLinesPart.read(v)?.width.read(v)??0;F=0,W=ae-N-de,G=ae-N,j=ae,B=y-j-H}else{G=0;const ae=this._options.inlineViewHideOriginalLineNumbers.read(v);F=N,ae?W=0:W=Math.max(5,this._editors.originalObs.layoutInfoDecorationsLeft.read(v)),j=N+W,B=y-j-H}return this.elements.original.style.left=F+"px",this.elements.original.style.width=W+"px",this._editors.original.layout({width:W,height:x},!0),E?.layout(G),this.elements.modified.style.left=j+"px",this.elements.modified.style.width=B+"px",this._editors.modified.layout({width:B,height:x},!0),{modifiedEditor:this._editors.modified.getLayoutInfo(),originalEditor:this._editors.original.getLayoutInfo()}}),this._diffValue=this._diffModel.map((v,y)=>v?.diff.read(y)),this.onDidUpdateDiff=J.fromObservableLight(this._diffValue),r.willCreateDiffEditor(),this._contextKeyService.createKey("isInDiffEditor",!0),this._domElement.appendChild(this.elements.root),this._register(_e(()=>this.elements.root.remove())),this._rootSizeObserver=this._register(new A8(this.elements.root,t.dimension)),this._rootSizeObserver.setAutomaticLayout(t.automaticLayout??!1),this._options=this._instantiationService.createInstance(nE,t),this._register(We(v=>{this._options.setWidth(this._rootSizeObserver.width.read(v))})),this._contextKeyService.createKey(K.isEmbeddedDiffEditor.key,!1),this._register(Pa(K.isEmbeddedDiffEditor,this._contextKeyService,v=>this._options.isInEmbeddedEditor.read(v))),this._register(Pa(K.comparingMovedCode,this._contextKeyService,v=>!!this._diffModel.read(v)?.movedTextToCompare.read(v))),this._register(Pa(K.diffEditorRenderSideBySideInlineBreakpointReached,this._contextKeyService,v=>this._options.couldShowInlineViewBecauseOfSize.read(v))),this._register(Pa(K.diffEditorInlineMode,this._contextKeyService,v=>!this._options.renderSideBySide.read(v))),this._register(Pa(K.hasChanges,this._contextKeyService,v=>(this._diffModel.read(v)?.diff.read(v)?.mappings.length??0)>0)),this._editors=this._register(this._instantiationService.createInstance(tE,this.elements.original,this.elements.modified,this._options,i,(v,y,x,L)=>this._createInnerEditor(v,y,x,L))),this._register(Pa(K.diffEditorOriginalWritable,this._contextKeyService,v=>this._options.originalEditable.read(v))),this._register(Pa(K.diffEditorModifiedWritable,this._contextKeyService,v=>!this._options.readOnly.read(v))),this._register(Pa(K.diffEditorOriginalUri,this._contextKeyService,v=>this._diffModel.read(v)?.model.original.uri.toString()??"")),this._register(Pa(K.diffEditorModifiedUri,this._contextKeyService,v=>this._diffModel.read(v)?.model.modified.uri.toString()??"")),this._overviewRulerPart=tr(this,v=>this._options.renderOverviewRuler.read(v)?this._instantiationService.createInstance(Lo(N_,v),this._editors,this.elements.root,this._diffModel,this._rootSizeObserver.width,this._rootSizeObserver.height,this._layoutInfo.map(y=>y.modifiedEditor)):void 0).recomputeInitiallyAndOnChange(this._store);const c={height:this._rootSizeObserver.height,width:this._rootSizeObserver.width.map((v,y)=>v-(this._overviewRulerPart.read(y)?.width??0))};this._sashLayout=new kre(this._options,c),this._sash=tr(this,v=>{const y=this._options.renderSideBySide.read(v);return this.elements.root.classList.toggle("side-by-side",y),y?new H8(this.elements.root,c,this._options.enableSplitViewResizing,this._boundarySashes,this._sashLayout.sashLeft,()=>this._sashLayout.resetSash()):void 0}).recomputeInitiallyAndOnChange(this._store);const d=tr(this,v=>this._instantiationService.createInstance(Lo(eE,v),this._editors,this._diffModel,this._options)).recomputeInitiallyAndOnChange(this._store);tr(this,v=>this._instantiationService.createInstance(Lo(xre,v),this._editors,this._diffModel,this._options,this)).recomputeInitiallyAndOnChange(this._store);const h=new Set,u=new Set;let f=!1;const g=tr(this,v=>this._instantiationService.createInstance(Lo(ZI,v),fe(this._domElement),this._editors,this._diffModel,this._options,this,()=>f||d.get().isUpdatingHiddenAreas,h,u)).recomputeInitiallyAndOnChange(this._store),p=Ce(this,v=>{const y=g.read(v).viewZones.read(v).orig,x=d.read(v).viewZones.read(v).origViewZones;return y.concat(x)}),_=Ce(this,v=>{const y=g.read(v).viewZones.read(v).mod,x=d.read(v).viewZones.read(v).modViewZones;return y.concat(x)});this._register(zv(this._editors.original,p,v=>{f=v},h));let b;this._register(zv(this._editors.modified,_,v=>{f=v,f?b=qh.capture(this._editors.modified):(b?.restore(this._editors.modified),b=void 0)},u)),this._accessibleDiffViewer=tr(this,v=>this._instantiationService.createInstance(Lo(qd,v),this.elements.accessibleDiffViewer,this._accessibleDiffViewerVisible,(y,x)=>this._accessibleDiffViewerShouldBeVisible.set(y,x),this._options.onlyShowAccessibleDiffViewer.map(y=>!y),this._rootSizeObserver.width,this._rootSizeObserver.height,this._diffModel.map((y,x)=>y?.diff.read(x)?.mappings.map(L=>L.lineRangeMapping)),new cre(this._editors))).recomputeInitiallyAndOnChange(this._store);const C=this._accessibleDiffViewerVisible.map(v=>v?"hidden":"visible");this._register(Vc(this.elements.modified,{visibility:C})),this._register(Vc(this.elements.original,{visibility:C})),this._createDiffEditorContributions(),r.addDiffEditor(this),this._gutter=tr(this,v=>this._options.shouldRenderGutterMenu.read(v)?this._instantiationService.createInstance(Lo(YI,v),this.elements.root,this._diffModel,this._editors,this._options,this._sashLayout,this._boundarySashes):void 0),this._register(X_(this._layoutInfo)),tr(this,v=>new(Lo(Qf,v))(this.elements.root,this._diffModel,this._layoutInfo.map(y=>y.originalEditor),this._layoutInfo.map(y=>y.modifiedEditor),this._editors)).recomputeInitiallyAndOnChange(this._store,v=>{this._movedBlocksLinesPart.set(v,void 0)}),this._register(J.runAndSubscribe(this._editors.modified.onDidChangeCursorPosition,v=>this._handleCursorPositionChange(v,!0))),this._register(J.runAndSubscribe(this._editors.original.onDidChangeCursorPosition,v=>this._handleCursorPositionChange(v,!1)));const w=this._diffModel.map(this,(v,y)=>{if(v)return v.diff.read(y)===void 0&&!v.isDiffUpToDate.read(y)});this._register(To((v,y)=>{if(w.read(v)===!0){const x=this._editorProgressService.show(!0,1e3);y.add(_e(()=>x.done()))}})),this._register(To((v,y)=>{y.add(new(Lo(Pre,v))(this._editors,this._diffModel,this._options,this))})),this._register(To((v,y)=>{const x=this._diffModel.read(v);if(x)for(const L of[x.model.original,x.model.modified])y.add(L.onWillDispose(E=>{Ze(new nt("TextModel got disposed before DiffEditorWidget model got reset")),this.setModel(null)}))})),this._register(We(v=>{this._options.setModel(this._diffModel.read(v))}))}_createInnerEditor(e,t,i,n){return e.createInstance(I_,t,i,n)}_createDiffEditorContributions(){const e=Af.getDiffEditorContributions();for(const t of e)try{this._register(this._instantiationService.createInstance(t.ctor,this))}catch(i){Ze(i)}}get _targetEditor(){return this._editors.modified}getEditorType(){return yy.IDiffEditor}layout(e){this._rootSizeObserver.observe(e)}hasTextFocus(){return this._editors.original.hasTextFocus()||this._editors.modified.hasTextFocus()}saveViewState(){const e=this._editors.original.saveViewState(),t=this._editors.modified.saveViewState();return{original:e,modified:t,modelState:this._diffModel.get()?.serializeState()}}restoreViewState(e){if(e&&e.original&&e.modified){const t=e;this._editors.original.restoreViewState(t.original),this._editors.modified.restoreViewState(t.modified),t.modelState&&this._diffModel.get()?.restoreSerializedState(t.modelState)}}handleInitialized(){this._editors.original.handleInitialized(),this._editors.modified.handleInitialized()}createViewModel(e){return this._instantiationService.createInstance(GI,e,this._options)}getModel(){return this._diffModel.get()?.model??null}setModel(e){const t=e?"model"in e?Uv.create(e).createNewRef(this):Uv.create(this.createViewModel(e),this):null;this.setDiffModel(t)}setDiffModel(e,t){const i=this._diffModel.get();!e&&i&&this._accessibleDiffViewer.get().close(),this._diffModel.get()!==e?.object&&c_(t,n=>{const s=e?.object;gt.batchEventsGlobally(n,()=>{this._editors.original.setModel(s?s.model.original:null),this._editors.modified.setModel(s?s.model.modified:null)});const r=this._diffModelSrc.get()?.createNewRef(this);this._diffModelSrc.set(e?.createNewRef(this),n),setTimeout(()=>{r?.dispose()},0)})}updateOptions(e){this._options.updateOptions(e)}getContainerDomNode(){return this._domElement}getOriginalEditor(){return this._editors.original}getModifiedEditor(){return this._editors.modified}getLineChanges(){const e=this._diffModel.get()?.diff.get();return e?Ure(e):null}revert(e){const t=this._diffModel.get();!t||!t.isDiffUpToDate.get()||this._editors.modified.executeEdits("diffEditor",[{range:e.modified.toExclusiveRange(),text:t.model.original.getValueInRange(e.original.toExclusiveRange())}])}revertRangeMappings(e){const t=this._diffModel.get();if(!t||!t.isDiffUpToDate.get())return;const i=e.map(n=>({range:n.modifiedRange,text:t.model.original.getValueInRange(n.originalRange)}));this._editors.modified.executeEdits("diffEditor",i)}_goTo(e){this._editors.modified.setPosition(new P(e.lineRangeMapping.modified.startLineNumber,1)),this._editors.modified.revealRangeInCenter(e.lineRangeMapping.modified.toExclusiveRange())}goToDiff(e){const t=this._diffModel.get()?.diff.get()?.mappings;if(!t||t.length===0)return;const i=this._editors.modified.getPosition().lineNumber;let n;e==="next"?n=t.find(s=>s.lineRangeMapping.modified.startLineNumber>i)??t[0]:n=xC(t,s=>s.lineRangeMapping.modified.startLineNumber{const t=e.diff.get()?.mappings;!t||t.length===0||this._goTo(t[0])})}accessibleDiffViewerNext(){this._accessibleDiffViewer.get().next()}accessibleDiffViewerPrev(){this._accessibleDiffViewer.get().prev()}async waitForDiff(){const e=this._diffModel.get();e&&await e.waitForDiff()}mapToOtherSide(){const e=this._editors.modified.hasWidgetFocus(),t=e?this._editors.modified:this._editors.original,i=e?this._editors.original:this._editors.modified;let n;const s=t.getSelection();if(s){const r=this._diffModel.get()?.diff.get()?.mappings.map(a=>e?a.lineRangeMapping.flip():a.lineRangeMapping);if(r){const a=n4(s.getStartPosition(),r),l=n4(s.getEndPosition(),r);n=I.plusRange(a,l)}}return{destination:i,destinationSelection:n}}switchSide(){const{destination:e,destinationSelection:t}=this.mapToOtherSide();e.focus(),t&&e.setSelection(t)}exitCompareMove(){const e=this._diffModel.get();e&&e.movedTextToCompare.set(void 0,void 0)}collapseAllUnchangedRegions(){const e=this._diffModel.get()?.unchangedRegions.get();e&&Xt(t=>{for(const i of e)i.collapseAll(t)})}showAllUnchangedRegions(){const e=this._diffModel.get()?.unchangedRegions.get();e&&Xt(t=>{for(const i of e)i.showAll(t)})}_handleCursorPositionChange(e,t){if(e?.reason===3){const i=this._diffModel.get()?.diff.get()?.mappings.find(n=>t?n.lineRangeMapping.modified.contains(e.position.lineNumber):n.lineRangeMapping.original.contains(e.position.lineNumber));i?.lineRangeMapping.modified.isEmpty?this._accessibilitySignalService.playSignal(rr.diffLineDeleted,{source:"diffEditor.cursorPositionChanged"}):i?.lineRangeMapping.original.isEmpty?this._accessibilitySignalService.playSignal(rr.diffLineInserted,{source:"diffEditor.cursorPositionChanged"}):i&&this._accessibilitySignalService.playSignal(rr.diffLineModified,{source:"diffEditor.cursorPositionChanged"})}}};qv=zre([Lm(3,De),Lm(4,ke),Lm(5,Pt),Lm(6,rb),Lm(7,G_)],qv);function Ure(o){return o.mappings.map(e=>{const t=e.lineRangeMapping;let i,n,s,r,a=t.innerChanges;return t.original.isEmpty?(i=t.original.startLineNumber-1,n=0,a=void 0):(i=t.original.startLineNumber,n=t.original.endLineNumberExclusive-1),t.modified.isEmpty?(s=t.modified.startLineNumber-1,r=0,a=void 0):(s=t.modified.startLineNumber,r=t.modified.endLineNumberExclusive-1),{originalStartLineNumber:i,originalEndLineNumber:n,modifiedStartLineNumber:s,modifiedEndLineNumber:r,charChanges:a?.map(l=>({originalStartLineNumber:l.originalRange.startLineNumber,originalStartColumn:l.originalRange.startColumn,originalEndLineNumber:l.originalRange.endLineNumber,originalEndColumn:l.originalRange.endColumn,modifiedStartLineNumber:l.modifiedRange.startLineNumber,modifiedStartColumn:l.modifiedRange.startColumn,modifiedEndLineNumber:l.modifiedRange.endLineNumber,modifiedEndColumn:l.modifiedRange.endColumn}))}})}var aM=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},wt=function(o,e){return function(t,i){e(t,i,o)}};let $re=0,S4=!1;function Kre(o){if(!o){if(S4)return;S4=!0}AG(o||_t.document.body)}let Gv=class extends I_{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f){const g={...t};g.ariaLabel=g.ariaLabel||Zk.editorViewAccessibleLabel,super(e,g,{},i,n,s,r,c,d,h,u,f),l instanceof xg?this._standaloneKeybindingService=l:this._standaloneKeybindingService=null,Kre(g.ariaContainerElement),XZ((p,_)=>i.createInstance(gg,p,_,{})),JZ(a)}addCommand(e,t,i){if(!this._standaloneKeybindingService)return console.warn("Cannot add command because the editor is configured with an unrecognized KeybindingService"),null;const n="DYNAMIC_"+ ++$re,s=re.deserialize(i);return this._standaloneKeybindingService.addDynamicKeybinding(n,e,t,s),n}createContextKey(e,t){return this._contextKeyService.createKey(e,t)}addAction(e){if(typeof e.id!="string"||typeof e.label!="string"||typeof e.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");if(!this._standaloneKeybindingService)return console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),z.None;const t=e.id,i=e.label,n=re.and(re.equals("editorId",this.getId()),re.deserialize(e.precondition)),s=e.keybindings,r=re.and(n,re.deserialize(e.keybindingContext)),a=e.contextMenuGroupId||null,l=e.contextMenuOrder||0,c=(f,...g)=>Promise.resolve(e.run(this,...g)),d=new X,h=this.getId()+":"+t;if(d.add(bt.registerCommand(h,c)),a){const f={command:{id:h,title:i},when:n,group:a,order:l};d.add(Eo.appendMenuItem($e.EditorContext,f))}if(Array.isArray(s))for(const f of s)d.add(this._standaloneKeybindingService.addDynamicKeybinding(h,f,c,r));const u=new N8(h,i,i,void 0,n,(...f)=>Promise.resolve(e.run(this,...f)),this._contextKeyService);return this._actions.set(t,u),d.add(_e(()=>{this._actions.delete(t)})),d}_triggerCommand(e,t){if(this._codeEditorService instanceof NC)try{this._codeEditorService.setActiveCodeEditor(this),super._triggerCommand(e,t)}finally{this._codeEditorService.setActiveCodeEditor(null)}else super._triggerCommand(e,t)}};Gv=aM([wt(2,ke),wt(3,Pt),wt(4,hi),wt(5,De),wt(6,au),wt(7,vt),wt(8,en),wt(9,mn),wt(10,ms),wt(11,Gn),wt(12,Se)],Gv);let sE=class extends Gv{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_){const b={...t};wv(h,b,!1);const C=c.registerEditorContainer(e);typeof b.theme=="string"&&c.setTheme(b.theme),typeof b.autoDetectHighContrast<"u"&&c.setAutoDetectHighContrast(!!b.autoDetectHighContrast);const w=b.model;delete b.model,super(e,b,i,n,s,r,a,l,c,d,u,p,_),this._configurationService=h,this._standaloneThemeService=c,this._register(C);let v;if(typeof w>"u"){const y=g.getLanguageIdByMimeType(b.language)||b.language||Bs;v=$8(f,g,b.value||"",y,void 0),this._ownsModel=!0}else v=w,this._ownsModel=!1;if(this._attachModel(v),v){const y={oldModelUrl:null,newModelUrl:v.uri};this._onDidChangeModel.fire(y)}}dispose(){super.dispose()}updateOptions(e){wv(this._configurationService,e,!1),typeof e.theme=="string"&&this._standaloneThemeService.setTheme(e.theme),typeof e.autoDetectHighContrast<"u"&&this._standaloneThemeService.setAutoDetectHighContrast(!!e.autoDetectHighContrast),super.updateOptions(e)}_postDetachModelCleanup(e){super._postDetachModelCleanup(e),e&&this._ownsModel&&(e.dispose(),this._ownsModel=!1)}};sE=aM([wt(2,ke),wt(3,Pt),wt(4,hi),wt(5,De),wt(6,au),wt(7,vt),wt(8,zo),wt(9,mn),wt(10,lt),wt(11,ms),wt(12,Fi),wt(13,qt),wt(14,Gn),wt(15,Se)],sE);let oE=class extends qv{constructor(e,t,i,n,s,r,a,l,c,d,h,u){const f={...t};wv(l,f,!0);const g=r.registerEditorContainer(e);typeof f.theme=="string"&&r.setTheme(f.theme),typeof f.autoDetectHighContrast<"u"&&r.setAutoDetectHighContrast(!!f.autoDetectHighContrast),super(e,f,{},n,i,s,u,d),this._configurationService=l,this._standaloneThemeService=r,this._register(g)}dispose(){super.dispose()}updateOptions(e){wv(this._configurationService,e,!0),typeof e.theme=="string"&&this._standaloneThemeService.setTheme(e.theme),typeof e.autoDetectHighContrast<"u"&&this._standaloneThemeService.setAutoDetectHighContrast(!!e.autoDetectHighContrast),super.updateOptions(e)}_createInnerEditor(e,t,i){return e.createInstance(Gv,t,i)}getOriginalEditor(){return super.getOriginalEditor()}getModifiedEditor(){return super.getModifiedEditor()}addCommand(e,t,i){return this.getModifiedEditor().addCommand(e,t,i)}createContextKey(e,t){return this.getModifiedEditor().createContextKey(e,t)}addAction(e){return this.getModifiedEditor().addAction(e)}};oE=aM([wt(2,ke),wt(3,De),wt(4,Pt),wt(5,zo),wt(6,mn),wt(7,lt),wt(8,Lr),wt(9,G_),wt(10,wy),wt(11,rb)],oE);function $8(o,e,t,i,n){if(t=t||"",!i){const s=t.indexOf(` -`);let r=t;return s!==-1&&(r=t.substring(0,s)),L4(o,t,e.createByFilepathOrFirstLine(n||null,r),n)}return L4(o,t,e.createById(i),n)}function L4(o,e,t,i){return o.createModel(e,t,i)}var jre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},x4=function(o,e){return function(t,i){e(t,i,o)}};class qre{constructor(e,t){this.viewModel=e,this.deltaScrollVertical=t}getId(){return this.viewModel}}let Zv=class extends z{constructor(e,t,i,n,s){super(),this._container=e,this._overflowWidgetsDomNode=t,this._workbenchUIElementFactory=i,this._instantiationService=n,this._viewModel=Ge(this,void 0),this._collapsed=Ce(this,l=>this._viewModel.read(l)?.collapsed.read(l)),this._editorContentHeight=Ge(this,500),this.contentHeight=Ce(this,l=>(this._collapsed.read(l)?0:this._editorContentHeight.read(l))+this._outerEditorHeight),this._modifiedContentWidth=Ge(this,0),this._modifiedWidth=Ge(this,0),this._originalContentWidth=Ge(this,0),this._originalWidth=Ge(this,0),this.maxScroll=Ce(this,l=>{const c=this._modifiedContentWidth.read(l)-this._modifiedWidth.read(l),d=this._originalContentWidth.read(l)-this._originalWidth.read(l);return c>d?{maxScroll:c,width:this._modifiedWidth.read(l)}:{maxScroll:d,width:this._originalWidth.read(l)}}),this._elements=tt("div.multiDiffEntry",[tt("div.header@header",[tt("div.header-content",[tt("div.collapse-button@collapseButton"),tt("div.file-path",[tt("div.title.modified.show-file-icons@primaryPath",[]),tt("div.status.deleted@status",["R"]),tt("div.title.original.show-file-icons@secondaryPath",[])]),tt("div.actions@actions")])]),tt("div.editorParent",[tt("div.editorContainer@editor")])]),this.editor=this._register(this._instantiationService.createInstance(qv,this._elements.editor,{overflowWidgetsDomNode:this._overflowWidgetsDomNode},{})),this.isModifedFocused=Dg(this.editor.getModifiedEditor()).isFocused,this.isOriginalFocused=Dg(this.editor.getOriginalEditor()).isFocused,this.isFocused=Ce(this,l=>this.isModifedFocused.read(l)||this.isOriginalFocused.read(l)),this._resourceLabel=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.primaryPath)):void 0,this._resourceLabel2=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.secondaryPath)):void 0,this._dataStore=this._register(new X),this._headerHeight=40,this._lastScrollTop=-1,this._isSettingScrollTop=!1;const r=new AD(this._elements.collapseButton,{});this._register(We(l=>{r.element.className="",r.icon=this._collapsed.read(l)?ie.chevronRight:ie.chevronDown})),this._register(r.onDidClick(()=>{this._viewModel.get()?.collapsed.set(!this._collapsed.get(),void 0)})),this._register(We(l=>{this._elements.editor.style.display=this._collapsed.read(l)?"none":"block"})),this._register(this.editor.getModifiedEditor().onDidLayoutChange(l=>{const c=this.editor.getModifiedEditor().getLayoutInfo().contentWidth;this._modifiedWidth.set(c,void 0)})),this._register(this.editor.getOriginalEditor().onDidLayoutChange(l=>{const c=this.editor.getOriginalEditor().getLayoutInfo().contentWidth;this._originalWidth.set(c,void 0)})),this._register(this.editor.onDidContentSizeChange(l=>{Mm(c=>{this._editorContentHeight.set(l.contentHeight,c),this._modifiedContentWidth.set(this.editor.getModifiedEditor().getContentWidth(),c),this._originalContentWidth.set(this.editor.getOriginalEditor().getContentWidth(),c)})})),this._register(this.editor.getOriginalEditor().onDidScrollChange(l=>{if(this._isSettingScrollTop||!l.scrollTopChanged||!this._data)return;const c=l.scrollTop-this._lastScrollTop;this._data.deltaScrollVertical(c)})),this._register(We(l=>{const c=this._viewModel.read(l)?.isActive.read(l);this._elements.root.classList.toggle("active",c)})),this._container.appendChild(this._elements.root),this._outerEditorHeight=this._headerHeight,this._contextKeyService=this._register(s.createScoped(this._elements.actions));const a=this._register(this._instantiationService.createChild(new jg([De,this._contextKeyService])));this._register(a.createInstance(Kv,this._elements.actions,$e.MultiDiffEditorFileToolbar,{actionRunner:this._register(new V8(()=>this._viewModel.get()?.modifiedUri)),menuOptions:{shouldForwardArgs:!0},toolbarOptions:{primaryGroup:l=>l.startsWith("navigation")},actionViewItemProvider:(l,c)=>H7(a,l,c)}))}setScrollLeft(e){this._modifiedContentWidth.get()-this._modifiedWidth.get()>this._originalContentWidth.get()-this._originalWidth.get()?this.editor.getModifiedEditor().setScrollLeft(e):this.editor.getOriginalEditor().setScrollLeft(e)}setData(e){this._data=e;function t(n){return{...n,scrollBeyondLastLine:!1,hideUnchangedRegions:{enabled:!0},scrollbar:{vertical:"hidden",horizontal:"hidden",handleMouseWheel:!1,useShadows:!1},renderOverviewRuler:!1,fixedOverflowWidgets:!0,overviewRulerBorder:!1}}if(!e){Mm(n=>{this._viewModel.set(void 0,n),this.editor.setDiffModel(null,n),this._dataStore.clear()});return}const i=e.viewModel.documentDiffItem;if(Mm(n=>{this._resourceLabel?.setUri(e.viewModel.modifiedUri??e.viewModel.originalUri,{strikethrough:e.viewModel.modifiedUri===void 0});let s=!1,r=!1,a=!1,l="";e.viewModel.modifiedUri&&e.viewModel.originalUri&&e.viewModel.modifiedUri.path!==e.viewModel.originalUri.path?(l="R",s=!0):e.viewModel.modifiedUri?e.viewModel.originalUri||(l="A",a=!0):(l="D",r=!0),this._elements.status.classList.toggle("renamed",s),this._elements.status.classList.toggle("deleted",r),this._elements.status.classList.toggle("added",a),this._elements.status.innerText=l,this._resourceLabel2?.setUri(s?e.viewModel.originalUri:void 0,{strikethrough:!0}),this._dataStore.clear(),this._viewModel.set(e.viewModel,n),this.editor.setDiffModel(e.viewModel.diffEditorViewModelRef,n),this.editor.updateOptions(t(i.options??{}))}),i.onOptionsDidChange&&this._dataStore.add(i.onOptionsDidChange(()=>{this.editor.updateOptions(t(i.options??{}))})),e.viewModel.isAlive.recomputeInitiallyAndOnChange(this._dataStore,n=>{n||this.setData(void 0)}),e.viewModel.documentDiffItem.contextKeys)for(const[n,s]of Object.entries(e.viewModel.documentDiffItem.contextKeys))this._contextKeyService.createKey(n,s)}render(e,t,i,n){this._elements.root.style.visibility="visible",this._elements.root.style.top=`${e.start}px`,this._elements.root.style.height=`${e.length}px`,this._elements.root.style.width=`${t}px`,this._elements.root.style.position="absolute";const s=e.length-this._headerHeight,r=Math.max(0,Math.min(n.start-e.start,s));this._elements.header.style.transform=`translateY(${r}px)`,Mm(a=>{this.editor.layout({width:t-16-2,height:e.length-this._outerEditorHeight})});try{this._isSettingScrollTop=!0,this._lastScrollTop=i,this.editor.getOriginalEditor().setScrollTop(i)}finally{this._isSettingScrollTop=!1}this._elements.header.classList.toggle("shadow",r>0||i>0),this._elements.header.classList.toggle("collapsed",r===s)}hide(){this._elements.root.style.top="-100000px",this._elements.root.style.visibility="hidden"}};Zv=jre([x4(3,ke),x4(4,De)],Zv);class Gre{constructor(e){this._create=e,this._unused=new Set,this._used=new Set,this._itemData=new Map}getUnusedObj(e){let t;if(this._unused.size===0)t=this._create(e),this._itemData.set(t,e);else{const i=[...this._unused.values()];t=i.find(n=>this._itemData.get(n).getId()===e.getId())??i[0],this._unused.delete(t),this._itemData.set(t,e),t.setData(e)}return this._used.add(t),{object:t,dispose:()=>{this._used.delete(t),this._unused.size>5?t.dispose():this._unused.add(t)}}}dispose(){for(const e of this._used)e.dispose();for(const e of this._unused)e.dispose();this._used.clear(),this._unused.clear()}}var Zre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},k4=function(o,e){return function(t,i){e(t,i,o)}};let rE=class extends z{constructor(e,t,i,n,s,r){super(),this._element=e,this._dimension=t,this._viewModel=i,this._workbenchUIElementFactory=n,this._parentContextKeyService=s,this._parentInstantiationService=r,this._scrollableElements=tt("div.scrollContent",[tt("div@content",{style:{overflow:"hidden"}}),tt("div.monaco-editor@overflowWidgetsDomNode",{})]),this._scrollable=this._register(new Vg({forceIntegerValues:!1,scheduleAtNextAnimationFrame:l=>fs(fe(this._element),l),smoothScrollDuration:100})),this._scrollableElement=this._register(new X0(this._scrollableElements.root,{vertical:1,horizontal:1,useShadows:!1},this._scrollable)),this._elements=tt("div.monaco-component.multiDiffEditor",{},[tt("div",{},[this._scrollableElement.getDomNode()]),tt("div.placeholder@placeholder",{},[tt("div",[m("noChangedFiles","No Changed Files")])])]),this._sizeObserver=this._register(new A8(this._element,void 0)),this._objectPool=this._register(new Gre(l=>{const c=this._instantiationService.createInstance(Zv,this._scrollableElements.content,this._scrollableElements.overflowWidgetsDomNode,this._workbenchUIElementFactory);return c.setData(l),c})),this.scrollTop=gt(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollTop),this.scrollLeft=gt(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollLeft),this._viewItemsInfo=cu(this,(l,c)=>{const d=this._viewModel.read(l);if(!d)return{items:[],getItem:g=>{throw new nt}};const h=d.items.read(l),u=new Map;return{items:h.map(g=>{const p=c.add(new Yre(g,this._objectPool,this.scrollLeft,b=>{this._scrollableElement.setScrollPosition({scrollTop:this._scrollableElement.getScrollPosition().scrollTop+b})})),_=this._lastDocStates?.[p.getKey()];return _&&Xt(b=>{p.setViewState(_,b)}),u.set(g,p),p}),getItem:g=>u.get(g)}}),this._viewItems=this._viewItemsInfo.map(this,l=>l.items),this._spaceBetweenPx=0,this._totalHeight=this._viewItems.map(this,(l,c)=>l.reduce((d,h)=>d+h.contentHeight.read(c)+this._spaceBetweenPx,0)),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._element)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new jg([De,this._contextKeyService]))),this._lastDocStates={},this._contextKeyService.createKey(K.inMultiDiffEditor.key,!0),this._register(To((l,c)=>{const d=this._viewModel.read(l);if(d&&d.contextKeys)for(const[h,u]of Object.entries(d.contextKeys)){const f=this._contextKeyService.createKey(h,void 0);f.set(u),c.add(_e(()=>f.reset()))}}));const a=this._parentContextKeyService.createKey(K.multiDiffEditorAllCollapsed.key,!1);this._register(We(l=>{const c=this._viewModel.read(l);if(c){const d=c.items.read(l).every(h=>h.collapsed.read(l));a.set(d)}})),this._register(We(l=>{const c=this._dimension.read(l);this._sizeObserver.observe(c)})),this._register(We(l=>{const c=this._viewItems.read(l);this._elements.placeholder.classList.toggle("visible",c.length===0)})),this._scrollableElements.content.style.position="relative",this._register(We(l=>{const c=this._sizeObserver.height.read(l);this._scrollableElements.root.style.height=`${c}px`;const d=this._totalHeight.read(l);this._scrollableElements.content.style.height=`${d}px`;const h=this._sizeObserver.width.read(l);let u=h;const f=this._viewItems.read(l),g=fT(f,rs(p=>p.maxScroll.read(l).maxScroll,ia));if(g){const p=g.maxScroll.read(l);u=h+p.maxScroll}this._scrollableElement.setScrollDimensions({width:h,height:c,scrollHeight:d,scrollWidth:u})})),e.replaceChildren(this._elements.root),this._register(_e(()=>{e.replaceChildren()})),this._register(this._register(We(l=>{Mm(c=>{this.render(l)})})))}render(e){const t=this.scrollTop.read(e);let i=0,n=0,s=0;const r=this._sizeObserver.height.read(e),a=Re.ofStartAndLength(t,r),l=this._sizeObserver.width.read(e);for(const c of this._viewItems.read(e)){const d=c.contentHeight.read(e),h=Math.min(d,r),u=Re.ofStartAndLength(n,h),f=Re.ofStartAndLength(s,d);if(f.isBefore(a))i-=d-h,c.hide();else if(f.isAfter(a))c.hide();else{const g=Math.max(0,Math.min(a.start-f.start,d-h));i-=g;const p=Re.ofStartAndLength(t+i,r);c.render(u,g,l,p)}n+=h+this._spaceBetweenPx,s+=d+this._spaceBetweenPx}this._scrollableElements.content.style.transform=`translateY(${-(t+i)}px)`}};rE=Zre([k4(4,De),k4(5,ke)],rE);class Yre extends z{constructor(e,t,i,n){super(),this.viewModel=e,this._objectPool=t,this._scrollLeft=i,this._deltaScrollVertical=n,this._templateRef=this._register(KC(this,void 0)),this.contentHeight=Ce(this,s=>this._templateRef.read(s)?.object.contentHeight?.read(s)??this.viewModel.lastTemplateData.read(s).contentHeight),this.maxScroll=Ce(this,s=>this._templateRef.read(s)?.object.maxScroll.read(s)??{maxScroll:0,scrollWidth:0}),this.template=Ce(this,s=>this._templateRef.read(s)?.object),this._isHidden=Ge(this,!1),this._isFocused=Ce(this,s=>this.template.read(s)?.isFocused.read(s)??!1),this.viewModel.setIsFocused(this._isFocused,void 0),this._register(We(s=>{const r=this._scrollLeft.read(s);this._templateRef.read(s)?.object.setScrollLeft(r)})),this._register(We(s=>{const r=this._templateRef.read(s);!r||!this._isHidden.read(s)||r.object.isFocused.read(s)||this._clear()}))}dispose(){this._clear(),super.dispose()}toString(){return`VirtualViewItem(${this.viewModel.documentDiffItem.modified?.uri.toString()})`}getKey(){return this.viewModel.getKey()}setViewState(e,t){this.viewModel.collapsed.set(e.collapsed,t),this._updateTemplateData(t);const i=this.viewModel.lastTemplateData.get(),n=e.selections?.map(Fe.liftSelection);this.viewModel.lastTemplateData.set({...i,selections:n},t);const s=this._templateRef.get();s&&n&&s.object.editor.setSelections(n)}_updateTemplateData(e){const t=this._templateRef.get();t&&this.viewModel.lastTemplateData.set({contentHeight:t.object.contentHeight.get(),selections:t.object.editor.getSelections()??void 0},e)}_clear(){const e=this._templateRef.get();e&&Xt(t=>{this._updateTemplateData(t),e.object.hide(),this._templateRef.set(void 0,t)})}hide(){this._isHidden.set(!0,void 0)}render(e,t,i,n){this._isHidden.set(!1,void 0);let s=this._templateRef.get();if(!s){s=this._objectPool.getUnusedObj(new qre(this.viewModel,this._deltaScrollVertical)),this._templateRef.set(s,void 0);const r=this.viewModel.lastTemplateData.get().selections;r&&s.object.editor.setSelections(r)}s.object.render(e,i,t,n)}}D("multiDiffEditor.headerBackground",{dark:"#262626",light:"tab.inactiveBackground",hcDark:"tab.inactiveBackground",hcLight:"tab.inactiveBackground"},m("multiDiffEditor.headerBackground","The background color of the diff editor's header"));D("multiDiffEditor.background",Oo,m("multiDiffEditor.background","The background color of the multi file diff editor"));D("multiDiffEditor.border",{dark:"sideBarSectionHeader.border",light:"#cccccc",hcDark:"sideBarSectionHeader.border",hcLight:"#cccccc"},m("multiDiffEditor.border","The border color of the multi file diff editor"));var Qre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Xre=function(o,e){return function(t,i){e(t,i,o)}};let aE=class extends z{constructor(e,t,i){super(),this._element=e,this._workbenchUIElementFactory=t,this._instantiationService=i,this._dimension=Ge(this,void 0),this._viewModel=Ge(this,void 0),this._widgetImpl=cu(this,(n,s)=>(Lo(Zv,n),s.add(this._instantiationService.createInstance(Lo(rE,n),this._element,this._dimension,this._viewModel,this._workbenchUIElementFactory)))),this._register(X_(this._widgetImpl))}};aE=Qre([Xre(2,ke)],aE);function Jre(o,e,t){return pe.initialize(t||{}).createInstance(sE,o,e)}function eae(o){return pe.get(Pt).onCodeEditorAdd(t=>{o(t)})}function tae(o){return pe.get(Pt).onDiffEditorAdd(t=>{o(t)})}function iae(){return pe.get(Pt).listCodeEditors()}function nae(){return pe.get(Pt).listDiffEditors()}function sae(o,e,t){return pe.initialize(t||{}).createInstance(oE,o,e)}function oae(o,e){const t=pe.initialize(e||{});return new aE(o,{},t)}function rae(o){if(typeof o.id!="string"||typeof o.run!="function")throw new Error("Invalid command descriptor, `id` and `run` are required properties!");return bt.registerCommand(o.id,o.run)}function aae(o){if(typeof o.id!="string"||typeof o.label!="string"||typeof o.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");const e=re.deserialize(o.precondition),t=(n,...s)=>co.runEditorCommand(n,s,e,(r,a,l)=>Promise.resolve(o.run(a,...l))),i=new X;if(i.add(bt.registerCommand(o.id,t)),o.contextMenuGroupId){const n={command:{id:o.id,title:o.label},when:e,group:o.contextMenuGroupId,order:o.contextMenuOrder||0};i.add(Eo.appendMenuItem($e.EditorContext,n))}if(Array.isArray(o.keybindings)){const n=pe.get(vt);if(!(n instanceof xg))console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService");else{const s=re.and(e,re.deserialize(o.keybindingContext));i.add(n.addDynamicKeybindings(o.keybindings.map(r=>({keybinding:r,command:o.id,when:s}))))}}return i}function lae(o){return K8([o])}function K8(o){const e=pe.get(vt);return e instanceof xg?e.addDynamicKeybindings(o.map(t=>({keybinding:t.keybinding,command:t.command,commandArgs:t.commandArgs,when:re.deserialize(t.when)}))):(console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),z.None)}function cae(o,e,t){const i=pe.get(qt),n=i.getLanguageIdByMimeType(e)||e;return $8(pe.get(Fi),i,o,n,t)}function dae(o,e){const t=pe.get(qt),i=t.getLanguageIdByMimeType(e)||e||Bs;o.setLanguage(t.createById(i))}function hae(o,e,t){o&&pe.get(xa).changeOne(e,o.uri,t)}function uae(o){pe.get(xa).changeAll(o,[])}function fae(o){return pe.get(xa).read(o)}function gae(o){return pe.get(xa).onMarkerChanged(o)}function mae(o){return pe.get(Fi).getModel(o)}function pae(){return pe.get(Fi).getModels()}function _ae(o){return pe.get(Fi).onModelAdded(o)}function bae(o){return pe.get(Fi).onModelRemoved(o)}function Cae(o){return pe.get(Fi).onModelLanguageChanged(t=>{o({model:t.model,oldLanguage:t.oldLanguageId})})}function vae(o){return Yte(pe.get(Fi),o)}function wae(o,e){const t=pe.get(qt),i=pe.get(zo);return O2.colorizeElement(i,t,o,e).then(()=>{i.registerEditorContainer(o)})}function yae(o,e,t){const i=pe.get(qt);return pe.get(zo).registerEditorContainer(_t.document.body),O2.colorize(i,o,e,t)}function Sae(o,e,t=4){return pe.get(zo).registerEditorContainer(_t.document.body),O2.colorizeModelLine(o,e,t)}function Lae(o){const e=si.get(o);return e||{getInitialState:()=>a_,tokenize:(t,i,n)=>_7(o,n)}}function xae(o,e){si.getOrCreate(e);const t=Lae(e),i=va(o),n=[];let s=t.getInitialState();for(let r=0,a=i.length;r{if(!i)return null;const s=t.options?.selection;let r;return s&&typeof s.endLineNumber=="number"&&typeof s.endColumn=="number"?r=s:s&&(r={lineNumber:s.startLineNumber,column:s.startColumn}),await o.openCodeEditor(i,t.resource,r)?i:null})}function Mae(){return{create:Jre,getEditors:iae,getDiffEditors:nae,onDidCreateEditor:eae,onDidCreateDiffEditor:tae,createDiffEditor:sae,addCommand:rae,addEditorAction:aae,addKeybindingRule:lae,addKeybindingRules:K8,createModel:cae,setModelLanguage:dae,setModelMarkers:hae,getModelMarkers:fae,removeAllMarkers:uae,onDidChangeMarkers:gae,getModels:pae,getModel:mae,onDidCreateModel:_ae,onWillDisposeModel:bae,onDidChangeModelLanguage:Cae,createWebWorker:vae,colorizeElement:wae,colorize:yae,colorizeModelLine:Sae,tokenize:xae,defineTheme:kae,setTheme:Dae,remeasureFonts:Iae,registerCommand:Eae,registerLinkOpener:Nae,registerEditorOpener:Tae,AccessibilitySupport:VL,ContentWidgetPositionPreference:qL,CursorChangeReason:GL,DefaultEndOfLine:ZL,EditorAutoIndentStrategy:QL,EditorOption:XL,EndOfLinePreference:JL,EndOfLineSequence:ex,MinimapPosition:hx,MinimapSectionHeaderStyle:ux,MouseTargetType:fx,OverlayWidgetPositionPreference:px,OverviewRulerLane:_x,GlyphMarginLane:tx,RenderLineNumbersType:vx,RenderMinimap:wx,ScrollbarVisibility:Sx,ScrollType:yx,TextEditorCursorBlinkingStyle:Ex,TextEditorCursorStyle:Nx,TrackedRangeStickiness:Tx,WrappingIndent:Mx,InjectedTextCursorStops:sx,PositionAffinity:Cx,ShowLightbulbIconMode:xx,ConfigurationChangedEvent:j5,BareFontInfo:Yd,FontInfo:qx,TextModelResolvedOptions:k1,FindMatch:Qp,ApplyUpdateResult:$m,EditorZoom:Xl,createMultiFileDiffEditor:oae,EditorType:yy,EditorOptions:Xh}}function Rae(o,e){if(!e||!Array.isArray(e))return!1;for(const t of e)if(!o(t))return!1;return!0}function l1(o,e){return typeof o=="boolean"?o:e}function D4(o,e){return typeof o=="string"?o:e}function Aae(o){const e={};for(const t of o)e[t]=!0;return e}function I4(o,e=!1){e&&(o=o.map(function(i){return i.toLowerCase()}));const t=Aae(o);return e?function(i){return t[i.toLowerCase()]!==void 0&&t.hasOwnProperty(i.toLowerCase())}:function(i){return t[i]!==void 0&&t.hasOwnProperty(i)}}function lE(o,e,t){e=e.replace(/@@/g,"");let i=0,n;do n=!1,e=e.replace(/@(\w+)/g,function(r,a){n=!0;let l="";if(typeof o[a]=="string")l=o[a];else if(o[a]&&o[a]instanceof RegExp)l=o[a].source;else throw o[a]===void 0?Et(o,"language definition does not contain attribute '"+a+"', used at: "+e):Et(o,"attribute reference '"+a+"' must be a string, used at: "+e);return kd(l)?"":"(?:"+l+")"}),i++;while(n&&i<5);e=e.replace(/\x01/g,"@");const s=(o.ignoreCase?"i":"")+(o.unicode?"u":"");if(t&&e.match(/\$[sS](\d\d?)/g)){let a=null,l=null;return c=>(l&&a===c||(a=c,l=new RegExp(mie(o,e,c),s)),l)}return new RegExp(e,s)}function Pae(o,e,t,i){if(i<0)return o;if(i=100){i=i-100;const n=t.split(".");if(n.unshift(t),i=0&&(i.tokenSubst=!0),typeof t.bracket=="string")if(t.bracket==="@open")i.bracket=1;else if(t.bracket==="@close")i.bracket=-1;else throw Et(o,"a 'bracket' attribute must be either '@open' or '@close', in rule: "+e);if(t.next){if(typeof t.next!="string")throw Et(o,"the next state must be a string value in rule: "+e);{let n=t.next;if(!/^(@pop|@push|@popall)$/.test(n)&&(n[0]==="@"&&(n=n.substr(1)),n.indexOf("$")<0&&!pie(o,tc(o,n,"",[],""))))throw Et(o,"the next state '"+t.next+"' is not defined in rule: "+e);i.next=n}}return typeof t.goBack=="number"&&(i.goBack=t.goBack),typeof t.switchTo=="string"&&(i.switchTo=t.switchTo),typeof t.log=="string"&&(i.log=t.log),typeof t.nextEmbedded=="string"&&(i.nextEmbedded=t.nextEmbedded,o.usesEmbedded=!0),i}}else if(Array.isArray(t)){const i=[];for(let n=0,s=t.length;n0&&i[0]==="^",this.name=this.name+": "+i,this.regex=lE(e,"^(?:"+(this.matchOnlyAtLineStart?i.substr(1):i)+")",!0)}setAction(e,t){this.action=cE(e,this.name,t)}resolveRegex(e){return this.regex instanceof RegExp?this.regex:this.regex(e)}}function j8(o,e){if(!e||typeof e!="object")throw new Error("Monarch: expecting a language definition object");const t={languageId:o,includeLF:l1(e.includeLF,!1),noThrow:!1,maxStack:100,start:typeof e.start=="string"?e.start:null,ignoreCase:l1(e.ignoreCase,!1),unicode:l1(e.unicode,!1),tokenPostfix:D4(e.tokenPostfix,"."+o),defaultToken:D4(e.defaultToken,"source"),usesEmbedded:!1,stateNames:{},tokenizer:{},brackets:[]},i=e;i.languageId=o,i.includeLF=t.includeLF,i.ignoreCase=t.ignoreCase,i.unicode=t.unicode,i.noThrow=t.noThrow,i.usesEmbedded=t.usesEmbedded,i.stateNames=e.tokenizer,i.defaultToken=t.defaultToken;function n(r,a,l){for(const c of l){let d=c.include;if(d){if(typeof d!="string")throw Et(t,"an 'include' attribute must be a string at: "+r);if(d[0]==="@"&&(d=d.substr(1)),!e.tokenizer[d])throw Et(t,"include target '"+d+"' is not defined at: "+r);n(r+"."+d,a,e.tokenizer[d])}else{const h=new Fae(r);if(Array.isArray(c)&&c.length>=1&&c.length<=3)if(h.setRegex(i,c[0]),c.length>=3)if(typeof c[1]=="string")h.setAction(i,{token:c[1],next:c[2]});else if(typeof c[1]=="object"){const u=c[1];u.next=c[2],h.setAction(i,u)}else throw Et(t,"a next state as the last element of a rule can only be given if the action is either an object or a string, at: "+r);else h.setAction(i,c[1]);else{if(!c.regex)throw Et(t,"a rule must either be an array, or an object with a 'regex' or 'include' field at: "+r);c.name&&typeof c.name=="string"&&(h.name=c.name),c.matchOnlyAtStart&&(h.matchOnlyAtLineStart=l1(c.matchOnlyAtLineStart,!1)),h.setRegex(i,c.regex),h.setAction(i,c.action)}a.push(h)}}}if(!e.tokenizer||typeof e.tokenizer!="object")throw Et(t,"a language definition must define the 'tokenizer' attribute as an object");t.tokenizer=[];for(const r in e.tokenizer)if(e.tokenizer.hasOwnProperty(r)){t.start||(t.start=r);const a=e.tokenizer[r];t.tokenizer[r]=new Array,n("tokenizer."+r,t.tokenizer[r],a)}if(t.usesEmbedded=i.usesEmbedded,e.brackets){if(!Array.isArray(e.brackets))throw Et(t,"the 'brackets' attribute must be defined as an array")}else e.brackets=[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}];const s=[];for(const r of e.brackets){let a=r;if(a&&Array.isArray(a)&&a.length===3&&(a={token:a[2],open:a[0],close:a[1]}),a.open===a.close)throw Et(t,"open and close brackets in a 'brackets' attribute must be different: "+a.open+` - hint: use the 'bracket' attribute if matching on equal brackets is required.`);if(typeof a.open=="string"&&typeof a.token=="string"&&typeof a.close=="string")s.push({token:a.token+t.tokenPostfix,open:yl(t,a.open),close:yl(t,a.close)});else throw Et(t,"every element in the 'brackets' array must be a '{open,close,token}' object or array")}return t.brackets=s,t.noThrow=!0,t}function Bae(o){lg.registerLanguage(o)}function Wae(){let o=[];return o=o.concat(lg.getLanguages()),o}function Hae(o){return pe.get(qt).languageIdCodec.encodeLanguageId(o)}function Vae(o,e){return pe.withServices(()=>{const i=pe.get(qt).onDidRequestRichLanguageFeatures(n=>{n===o&&(i.dispose(),e())});return i})}function zae(o,e){return pe.withServices(()=>{const i=pe.get(qt).onDidRequestBasicLanguageFeatures(n=>{n===o&&(i.dispose(),e())});return i})}function Uae(o,e){if(!pe.get(qt).isRegisteredLanguageId(o))throw new Error(`Cannot set configuration for unknown language ${o}`);return pe.get(Gn).register(o,e,100)}class $ae{constructor(e,t){this._languageId=e,this._actual=t}dispose(){}getInitialState(){return this._actual.getInitialState()}tokenize(e,t,i){if(typeof this._actual.tokenize=="function")return T_.adaptTokenize(this._languageId,this._actual,e,i);throw new Error("Not supported!")}tokenizeEncoded(e,t,i){const n=this._actual.tokenizeEncoded(e,i);return new x0(n.tokens,n.endState)}}class T_{constructor(e,t,i,n){this._languageId=e,this._actual=t,this._languageService=i,this._standaloneThemeService=n}dispose(){}getInitialState(){return this._actual.getInitialState()}static _toClassicTokens(e,t){const i=[];let n=0;for(let s=0,r=e.length;s0&&s[r-1]===u)continue;let f=h.startIndex;c===0?f=0:f{const i=await Promise.resolve(e.create());return i?Kae(i)?G8(o,i):new S_(pe.get(qt),pe.get(zo),o,j8(o,i),pe.get(lt)):null});return si.registerFactory(o,t)}function Gae(o,e){if(!pe.get(qt).isRegisteredLanguageId(o))throw new Error(`Cannot set tokens provider for unknown language ${o}`);return q8(e)?lM(o,{create:()=>e}):si.register(o,G8(o,e))}function Zae(o,e){const t=i=>new S_(pe.get(qt),pe.get(zo),o,j8(o,i),pe.get(lt));return q8(e)?lM(o,{create:()=>e}):si.register(o,t(e))}function Yae(o,e){return pe.get(Se).referenceProvider.register(o,e)}function Qae(o,e){return pe.get(Se).renameProvider.register(o,e)}function Xae(o,e){return pe.get(Se).newSymbolNamesProvider.register(o,e)}function Jae(o,e){return pe.get(Se).signatureHelpProvider.register(o,e)}function ele(o,e){return pe.get(Se).hoverProvider.register(o,{provideHover:async(i,n,s,r)=>{const a=i.getWordAtPosition(n);return Promise.resolve(e.provideHover(i,n,s,r)).then(l=>{if(l)return!l.range&&a&&(l.range=new I(n.lineNumber,a.startColumn,n.lineNumber,a.endColumn)),l.range||(l.range=new I(n.lineNumber,n.column,n.lineNumber,n.column)),l})}})}function tle(o,e){return pe.get(Se).documentSymbolProvider.register(o,e)}function ile(o,e){return pe.get(Se).documentHighlightProvider.register(o,e)}function nle(o,e){return pe.get(Se).linkedEditingRangeProvider.register(o,e)}function sle(o,e){return pe.get(Se).definitionProvider.register(o,e)}function ole(o,e){return pe.get(Se).implementationProvider.register(o,e)}function rle(o,e){return pe.get(Se).typeDefinitionProvider.register(o,e)}function ale(o,e){return pe.get(Se).codeLensProvider.register(o,e)}function lle(o,e,t){return pe.get(Se).codeActionProvider.register(o,{providedCodeActionKinds:t?.providedCodeActionKinds,documentation:t?.documentation,provideCodeActions:(n,s,r,a)=>{const c=pe.get(xa).read({resource:n.uri}).filter(d=>I.areIntersectingOrTouching(d,s));return e.provideCodeActions(n,s,{markers:c,only:r.only,trigger:r.trigger},a)},resolveCodeAction:e.resolveCodeAction})}function cle(o,e){return pe.get(Se).documentFormattingEditProvider.register(o,e)}function dle(o,e){return pe.get(Se).documentRangeFormattingEditProvider.register(o,e)}function hle(o,e){return pe.get(Se).onTypeFormattingEditProvider.register(o,e)}function ule(o,e){return pe.get(Se).linkProvider.register(o,e)}function fle(o,e){return pe.get(Se).completionProvider.register(o,e)}function gle(o,e){return pe.get(Se).colorProvider.register(o,e)}function mle(o,e){return pe.get(Se).foldingRangeProvider.register(o,e)}function ple(o,e){return pe.get(Se).declarationProvider.register(o,e)}function _le(o,e){return pe.get(Se).selectionRangeProvider.register(o,e)}function ble(o,e){return pe.get(Se).documentSemanticTokensProvider.register(o,e)}function Cle(o,e){return pe.get(Se).documentRangeSemanticTokensProvider.register(o,e)}function vle(o,e){return pe.get(Se).inlineCompletionsProvider.register(o,e)}function wle(o,e){return pe.get(Se).inlineEditProvider.register(o,e)}function yle(o,e){return pe.get(Se).inlayHintsProvider.register(o,e)}function Sle(){return{register:Bae,getLanguages:Wae,onLanguage:Vae,onLanguageEncountered:zae,getEncodedLanguageId:Hae,setLanguageConfiguration:Uae,setColorMap:qae,registerTokensProviderFactory:lM,setTokensProvider:Gae,setMonarchTokensProvider:Zae,registerReferenceProvider:Yae,registerRenameProvider:Qae,registerNewSymbolNameProvider:Xae,registerCompletionItemProvider:fle,registerSignatureHelpProvider:Jae,registerHoverProvider:ele,registerDocumentSymbolProvider:tle,registerDocumentHighlightProvider:ile,registerLinkedEditingRangeProvider:nle,registerDefinitionProvider:sle,registerImplementationProvider:ole,registerTypeDefinitionProvider:rle,registerCodeLensProvider:ale,registerCodeActionProvider:lle,registerDocumentFormattingEditProvider:cle,registerDocumentRangeFormattingEditProvider:dle,registerOnTypeFormattingEditProvider:hle,registerLinkProvider:ule,registerColorProvider:gle,registerFoldingRangeProvider:mle,registerDeclarationProvider:ple,registerSelectionRangeProvider:_le,registerDocumentSemanticTokensProvider:ble,registerDocumentRangeSemanticTokensProvider:Cle,registerInlineCompletionsProvider:vle,registerInlineEditProvider:wle,registerInlayHintsProvider:yle,DocumentHighlightKind:YL,CompletionItemKind:$L,CompletionItemTag:KL,CompletionItemInsertTextRule:UL,SymbolKind:Dx,SymbolTag:Ix,IndentAction:nx,CompletionTriggerKind:jL,SignatureHelpTriggerKind:kx,InlayHintKind:ox,InlineCompletionTriggerKind:rx,InlineEditTriggerKind:ax,CodeActionTriggerType:zL,NewSymbolNameTag:gx,NewSymbolNameTriggerKind:mx,PartialAcceptTriggerKind:bx,HoverVerbosityAction:ix,FoldingRangeKind:BL,SelectedSuggestionInfo:lF}}const cM=He("IEditorCancelService"),Z8=new le("cancellableOperation",!1,m("cancellableOperation","Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));Qe(cM,class{constructor(){this._tokens=new WeakMap}add(o,e){let t=this._tokens.get(o);t||(t=o.invokeWithinContext(n=>{const s=Z8.bindTo(n.get(De)),r=new yn;return{key:s,tokens:r}}),this._tokens.set(o,t));let i;return t.key.set(!0),i=t.tokens.push(e),()=>{i&&(i(),t.key.set(!t.tokens.isEmpty()),i=void 0)}}cancel(o){const e=this._tokens.get(o);if(!e)return;const t=e.tokens.pop();t&&(t.cancel(),e.key.set(!e.tokens.isEmpty()))}},1);class Lle extends In{constructor(e,t){super(t),this.editor=e,this._unregister=e.invokeWithinContext(i=>i.get(cM).add(e,this))}dispose(){this._unregister(),super.dispose()}}ge(new class extends co{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:Z8})}runEditorCommand(o,e){o.get(cM).cancel(e)}});let xle=class dE{constructor(e,t){if(this.flags=t,(this.flags&1)!==0){const i=e.getModel();this.modelVersionId=i?$p("{0}#{1}",i.uri.toString(),i.getVersionId()):null}else this.modelVersionId=null;(this.flags&4)!==0?this.position=e.getPosition():this.position=null,(this.flags&2)!==0?this.selection=e.getSelection():this.selection=null,(this.flags&8)!==0?(this.scrollLeft=e.getScrollLeft(),this.scrollTop=e.getScrollTop()):(this.scrollLeft=-1,this.scrollTop=-1)}_equals(e){if(!(e instanceof dE))return!1;const t=e;return!(this.modelVersionId!==t.modelVersionId||this.scrollLeft!==t.scrollLeft||this.scrollTop!==t.scrollTop||!this.position&&t.position||this.position&&!t.position||this.position&&t.position&&!this.position.equals(t.position)||!this.selection&&t.selection||this.selection&&!t.selection||this.selection&&t.selection&&!this.selection.equalsRange(t.selection))}validate(e){return this._equals(new dE(e,this.flags))}};class kle extends Lle{constructor(e,t,i,n){super(e,n),this._listener=new X,t&4&&this._listener.add(e.onDidChangeCursorPosition(s=>{(!i||!I.containsPosition(i,s.position))&&this.cancel()})),t&2&&this._listener.add(e.onDidChangeCursorSelection(s=>{(!i||!I.containsRange(i,s.selection))&&this.cancel()})),t&8&&this._listener.add(e.onDidScrollChange(s=>this.cancel())),t&1&&(this._listener.add(e.onDidChangeModel(s=>this.cancel())),this._listener.add(e.onDidChangeModelContent(s=>this.cancel())))}dispose(){this._listener.dispose(),super.dispose()}}class Dle extends In{constructor(e,t){super(t),this._listener=e.onDidChangeContent(()=>this.cancel())}dispose(){this._listener.dispose(),super.dispose()}}function Y8(o){return o&&typeof o.getEditorType=="function"?o.getEditorType()===yy.ICodeEditor:!1}class E4{constructor(e){this.value=e,this._lower=e.toLowerCase()}static toKey(e){return typeof e=="string"?e.toLowerCase():e._lower}}class Ile{constructor(e){if(this._set=new Set,e)for(const t of e)this.add(t)}add(e){this._set.add(E4.toKey(e))}has(e){return this._set.has(E4.toKey(e))}}function Ele(o,e,t){const i=[],n=new Ile,s=o.ordered(t);for(const a of s)i.push(a),a.extensionId&&n.add(a.extensionId);const r=e.ordered(t);for(const a of r){if(a.extensionId){if(n.has(a.extensionId))continue;n.add(a.extensionId)}i.push({displayName:a.displayName,extensionId:a.extensionId,provideDocumentFormattingEdits(l,c,d){return a.provideDocumentRangeFormattingEdits(l,l.getFullModelRange(),c,d)}})}return i}const Fp=class Fp{static setFormatterSelector(e){return{dispose:Fp._selectors.unshift(e)}}static async select(e,t,i,n){if(e.length===0)return;const s=st.first(Fp._selectors);if(s)return await s(e,t,i,n)}};Fp._selectors=new yn;let hE=Fp;async function Nle(o,e,t,i,n,s){const r=e.documentRangeFormattingEditProvider.ordered(t);for(const a of r){const l=await Promise.resolve(a.provideDocumentRangeFormattingEdits(t,i,n,s)).catch($n);if(Ps(l))return await o.computeMoreMinimalEdits(t.uri,l)}}async function Tle(o,e,t,i,n){const s=Ele(e.documentFormattingEditProvider,e.documentRangeFormattingEditProvider,t);for(const r of s){const a=await Promise.resolve(r.provideDocumentFormattingEdits(t,i,n)).catch($n);if(Ps(a))return await o.computeMoreMinimalEdits(t.uri,a)}}function Mle(o,e,t,i,n,s,r){const a=e.onTypeFormattingEditProvider.ordered(t);return a.length===0||a[0].autoFormatTriggerCharacters.indexOf(n)<0?Promise.resolve(void 0):Promise.resolve(a[0].provideOnTypeFormattingEdits(t,i,n,s,r)).catch($n).then(l=>o.computeMoreMinimalEdits(t.uri,l))}bt.registerCommand("_executeFormatRangeProvider",async function(o,...e){const[t,i,n]=e;ai(ve.isUri(t)),ai(I.isIRange(i));const s=o.get(fo),r=o.get(Zc),a=o.get(Se),l=await s.createModelReference(t);try{return Nle(r,a,l.object.textEditorModel,I.lift(i),n,ut.None)}finally{l.dispose()}});bt.registerCommand("_executeFormatDocumentProvider",async function(o,...e){const[t,i]=e;ai(ve.isUri(t));const n=o.get(fo),s=o.get(Zc),r=o.get(Se),a=await n.createModelReference(t);try{return Tle(s,r,a.object.textEditorModel,i,ut.None)}finally{a.dispose()}});bt.registerCommand("_executeFormatOnTypeProvider",async function(o,...e){const[t,i,n,s]=e;ai(ve.isUri(t)),ai(P.isIPosition(i)),ai(typeof n=="string");const r=o.get(fo),a=o.get(Zc),l=o.get(Se),c=await r.createModelReference(t);try{return Mle(a,l,c.object.textEditorModel,P.lift(i),n,s,ut.None)}finally{c.dispose()}});Xh.wrappingIndent.defaultValue=0;Xh.glyphMargin.defaultValue=!1;Xh.autoIndent.defaultValue=3;Xh.overviewRulerLanes.defaultValue=2;hE.setFormatterSelector((o,e,t)=>Promise.resolve(o[0]));const An=cF();An.editor=Mae();An.languages=Sle();An.CancellationTokenSource;An.Emitter;An.KeyCode;An.KeyMod;An.Position;const kge=An.Range;An.Selection;An.SelectionDirection;const Dge=An.MarkerSeverity;An.MarkerTag;An.Uri;An.Token;const Ige=An.editor,Ege=An.languages,Rle=globalThis.MonacoEnvironment;(Rle?.globalAPI||typeof define=="function"&&define.amd)&&(globalThis.monaco=An);typeof globalThis.require<"u"&&typeof globalThis.require.config=="function"&&globalThis.require.config({ignoreDuplicateModules:["vscode-languageserver-types","vscode-languageserver-types/main","vscode-languageserver-textdocument","vscode-languageserver-textdocument/main","vscode-nls","vscode-nls/vscode-nls","jsonc-parser","jsonc-parser/main","vscode-uri","vscode-uri/index","vs/basic-languages/typescript/typescript"]});const Q8="editor.action.showHover",Ale="editor.action.showDefinitionPreviewHover",Ple="editor.action.scrollUpHover",Ole="editor.action.scrollDownHover",Fle="editor.action.scrollLeftHover",Ble="editor.action.scrollRightHover",Wle="editor.action.pageUpHover",Hle="editor.action.pageDownHover",Vle="editor.action.goToTopHover",zle="editor.action.goToBottomHover",Ey="editor.action.increaseHoverVerbosityLevel",Ule=m({key:"increaseHoverVerbosityLevel",comment:["Label for action that will increase the hover verbosity level."]},"Increase Hover Verbosity Level"),Ny="editor.action.decreaseHoverVerbosityLevel",$le=m({key:"decreaseHoverVerbosityLevel",comment:["Label for action that will decrease the hover verbosity level."]},"Decrease Hover Verbosity Level");function uE(o,e){return!!o[e]}class uL{constructor(e,t){this.target=e.target,this.isLeftClick=e.event.leftButton,this.isMiddleClick=e.event.middleButton,this.isRightClick=e.event.rightButton,this.hasTriggerModifier=uE(e.event,t.triggerModifier),this.hasSideBySideModifier=uE(e.event,t.triggerSideBySideModifier),this.isNoneOrSingleMouseDown=e.event.detail<=1}}class N4{constructor(e,t){this.keyCodeIsTriggerKey=e.keyCode===t.triggerKey,this.keyCodeIsSideBySideKey=e.keyCode===t.triggerSideBySideKey,this.hasTriggerModifier=uE(e,t.triggerModifier)}}class c1{constructor(e,t,i,n){this.triggerKey=e,this.triggerModifier=t,this.triggerSideBySideKey=i,this.triggerSideBySideModifier=n}equals(e){return this.triggerKey===e.triggerKey&&this.triggerModifier===e.triggerModifier&&this.triggerSideBySideKey===e.triggerSideBySideKey&&this.triggerSideBySideModifier===e.triggerSideBySideModifier}}function T4(o){return o==="altKey"?Ue?new c1(57,"metaKey",6,"altKey"):new c1(5,"ctrlKey",6,"altKey"):Ue?new c1(6,"altKey",57,"metaKey"):new c1(6,"altKey",5,"ctrlKey")}class X8 extends z{constructor(e,t){super(),this._onMouseMoveOrRelevantKeyDown=this._register(new A),this.onMouseMoveOrRelevantKeyDown=this._onMouseMoveOrRelevantKeyDown.event,this._onExecute=this._register(new A),this.onExecute=this._onExecute.event,this._onCancel=this._register(new A),this.onCancel=this._onCancel.event,this._editor=e,this._extractLineNumberFromMouseEvent=t?.extractLineNumberFromMouseEvent??(i=>i.target.position?i.target.position.lineNumber:0),this._opts=T4(this._editor.getOption(78)),this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._register(this._editor.onDidChangeConfiguration(i=>{if(i.hasChanged(78)){const n=T4(this._editor.getOption(78));if(this._opts.equals(n))return;this._opts=n,this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._onCancel.fire()}})),this._register(this._editor.onMouseMove(i=>this._onEditorMouseMove(new uL(i,this._opts)))),this._register(this._editor.onMouseDown(i=>this._onEditorMouseDown(new uL(i,this._opts)))),this._register(this._editor.onMouseUp(i=>this._onEditorMouseUp(new uL(i,this._opts)))),this._register(this._editor.onKeyDown(i=>this._onEditorKeyDown(new N4(i,this._opts)))),this._register(this._editor.onKeyUp(i=>this._onEditorKeyUp(new N4(i,this._opts)))),this._register(this._editor.onMouseDrag(()=>this._resetHandler())),this._register(this._editor.onDidChangeCursorSelection(i=>this._onDidChangeCursorSelection(i))),this._register(this._editor.onDidChangeModel(i=>this._resetHandler())),this._register(this._editor.onDidChangeModelContent(()=>this._resetHandler())),this._register(this._editor.onDidScrollChange(i=>{(i.scrollTopChanged||i.scrollLeftChanged)&&this._resetHandler()}))}_onDidChangeCursorSelection(e){e.selection&&e.selection.startColumn!==e.selection.endColumn&&this._resetHandler()}_onEditorMouseMove(e){this._lastMouseMoveEvent=e,this._onMouseMoveOrRelevantKeyDown.fire([e,null])}_onEditorMouseDown(e){this._hasTriggerKeyOnMouseDown=e.hasTriggerModifier,this._lineNumberOnMouseDown=this._extractLineNumberFromMouseEvent(e)}_onEditorMouseUp(e){const t=this._extractLineNumberFromMouseEvent(e);this._hasTriggerKeyOnMouseDown&&this._lineNumberOnMouseDown&&this._lineNumberOnMouseDown===t&&this._onExecute.fire(e)}_onEditorKeyDown(e){this._lastMouseMoveEvent&&(e.keyCodeIsTriggerKey||e.keyCodeIsSideBySideKey&&e.hasTriggerModifier)?this._onMouseMoveOrRelevantKeyDown.fire([this._lastMouseMoveEvent,e]):e.hasTriggerModifier&&this._onCancel.fire()}_onEditorKeyUp(e){e.keyCodeIsTriggerKey&&this._onCancel.fire()}_resetHandler(){this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._onCancel.fire()}}var Kle=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Oa=function(o,e){return function(t,i){e(t,i,o)}};let Gh=class extends I_{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f){super(e,{...n.getRawOptions(),overflowWidgetsDomNode:n.getOverflowWidgetsDomNode()},i,s,r,a,l,c,d,h,u,f),this._parentEditor=n,this._overwriteOptions=t,super.updateOptions(this._overwriteOptions),this._register(n.onDidChangeConfiguration(g=>this._onParentConfigurationChanged(g)))}getParentEditor(){return this._parentEditor}_onParentConfigurationChanged(e){super.updateOptions(this._parentEditor.getRawOptions()),super.updateOptions(this._overwriteOptions)}updateOptions(e){S0(this._overwriteOptions,e,!0),super.updateOptions(this._overwriteOptions)}};Gh=Kle([Oa(4,ke),Oa(5,Pt),Oa(6,hi),Oa(7,De),Oa(8,en),Oa(9,mn),Oa(10,ms),Oa(11,Gn),Oa(12,Se)],Gh);const M4=new q(new qe(0,122,204)),jle={showArrow:!0,showFrame:!0,className:"",frameColor:M4,arrowColor:M4,keepEditorSelection:!1},qle="vs.editor.contrib.zoneWidget";class Gle{constructor(e,t,i,n,s,r,a,l){this.id="",this.domNode=e,this.afterLineNumber=t,this.afterColumn=i,this.heightInLines=n,this.showInHiddenAreas=a,this.ordinal=l,this._onDomNodeTop=s,this._onComputedHeight=r}onDomNodeTop(e){this._onDomNodeTop(e)}onComputedHeight(e){this._onComputedHeight(e)}}class Zle{constructor(e,t){this._id=e,this._domNode=t}getId(){return this._id}getDomNode(){return this._domNode}getPosition(){return null}}const h0=class h0{constructor(e){this._editor=e,this._ruleName=h0._IdGenerator.nextId(),this._decorations=this._editor.createDecorationsCollection(),this._color=null,this._height=-1}dispose(){this.hide(),jx(this._ruleName)}set color(e){this._color!==e&&(this._color=e,this._updateStyle())}set height(e){this._height!==e&&(this._height=e,this._updateStyle())}_updateStyle(){jx(this._ruleName),bC(`.monaco-editor ${this._ruleName}`,`border-style: solid; border-color: transparent; border-bottom-color: ${this._color}; border-width: ${this._height}px; bottom: -${this._height}px !important; margin-left: -${this._height}px; `)}show(e){e.column===1&&(e={lineNumber:e.lineNumber,column:2}),this._decorations.set([{range:I.fromPositions(e),options:{description:"zone-widget-arrow",className:this._ruleName,stickiness:1}}])}hide(){this._decorations.clear()}};h0._IdGenerator=new HT(".arrow-decoration-");let fE=h0;class Yle{constructor(e,t={}){this._arrow=null,this._overlayWidget=null,this._resizeSash=null,this._viewZone=null,this._disposables=new X,this.container=null,this._isShowing=!1,this.editor=e,this._positionMarkerId=this.editor.createDecorationsCollection(),this.options=Ya(t),S0(this.options,jle,!1),this.domNode=document.createElement("div"),this.options.isAccessible||(this.domNode.setAttribute("aria-hidden","true"),this.domNode.setAttribute("role","presentation")),this._disposables.add(this.editor.onDidLayoutChange(i=>{const n=this._getWidth(i);this.domNode.style.width=n+"px",this.domNode.style.left=this._getLeft(i)+"px",this._onWidth(n)}))}dispose(){this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._viewZone&&this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id),this._viewZone=null}),this._positionMarkerId.clear(),this._disposables.dispose()}create(){this.domNode.classList.add("zone-widget"),this.options.className&&this.domNode.classList.add(this.options.className),this.container=document.createElement("div"),this.container.classList.add("zone-widget-container"),this.domNode.appendChild(this.container),this.options.showArrow&&(this._arrow=new fE(this.editor),this._disposables.add(this._arrow)),this._fillContainer(this.container),this._initSash(),this._applyStyles()}style(e){e.frameColor&&(this.options.frameColor=e.frameColor),e.arrowColor&&(this.options.arrowColor=e.arrowColor),this._applyStyles()}_applyStyles(){if(this.container&&this.options.frameColor){const e=this.options.frameColor.toString();this.container.style.borderTopColor=e,this.container.style.borderBottomColor=e}if(this._arrow&&this.options.arrowColor){const e=this.options.arrowColor.toString();this._arrow.color=e}}_getWidth(e){return e.width-e.minimap.minimapWidth-e.verticalScrollbarWidth}_getLeft(e){return e.minimap.minimapWidth>0&&e.minimap.minimapLeft===0?e.minimap.minimapWidth:0}_onViewZoneTop(e){this.domNode.style.top=e+"px"}_onViewZoneHeight(e){if(this.domNode.style.height=`${e}px`,this.container){const t=e-this._decoratingElementsHeight();this.container.style.height=`${t}px`;const i=this.editor.getLayoutInfo();this._doLayout(t,this._getWidth(i))}this._resizeSash?.layout()}get position(){const e=this._positionMarkerId.getRange(0);if(e)return e.getStartPosition()}show(e,t){const i=I.isIRange(e)?I.lift(e):I.fromPositions(e);this._isShowing=!0,this._showImpl(i,t),this._isShowing=!1,this._positionMarkerId.set([{range:i,options:kt.EMPTY}])}hide(){this._viewZone&&(this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id)}),this._viewZone=null),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._arrow?.hide(),this._positionMarkerId.clear()}_decoratingElementsHeight(){const e=this.editor.getOption(67);let t=0;if(this.options.showArrow){const i=Math.round(e/3);t+=2*i}if(this.options.showFrame){const i=Math.round(e/9);t+=2*i}return t}_showImpl(e,t){const i=e.getStartPosition(),n=this.editor.getLayoutInfo(),s=this._getWidth(n);this.domNode.style.width=`${s}px`,this.domNode.style.left=this._getLeft(n)+"px";const r=document.createElement("div");r.style.overflow="hidden";const a=this.editor.getOption(67);if(!this.options.allowUnlimitedHeight){const u=Math.max(12,this.editor.getLayoutInfo().height/a*.8);t=Math.min(t,u)}let l=0,c=0;if(this._arrow&&this.options.showArrow&&(l=Math.round(a/3),this._arrow.height=l,this._arrow.show(i)),this.options.showFrame&&(c=Math.round(a/9)),this.editor.changeViewZones(u=>{this._viewZone&&u.removeZone(this._viewZone.id),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this.domNode.style.top="-1000px",this._viewZone=new Gle(r,i.lineNumber,i.column,t,f=>this._onViewZoneTop(f),f=>this._onViewZoneHeight(f),this.options.showInHiddenAreas,this.options.ordinal),this._viewZone.id=u.addZone(this._viewZone),this._overlayWidget=new Zle(qle+this._viewZone.id,this.domNode),this.editor.addOverlayWidget(this._overlayWidget)}),this.container&&this.options.showFrame){const u=this.options.frameWidth?this.options.frameWidth:c;this.container.style.borderTopWidth=u+"px",this.container.style.borderBottomWidth=u+"px"}const d=t*a-this._decoratingElementsHeight();this.container&&(this.container.style.top=l+"px",this.container.style.height=d+"px",this.container.style.overflow="hidden"),this._doLayout(d,s),this.options.keepEditorSelection||this.editor.setSelection(e);const h=this.editor.getModel();if(h){const u=h.validateRange(new I(e.startLineNumber,1,e.endLineNumber+1,1));this.revealRange(u,u.startLineNumber===h.getLineCount())}}revealRange(e,t){t?this.editor.revealLineNearTop(e.endLineNumber,0):this.editor.revealRange(e,0)}setCssClass(e,t){this.container&&(t&&this.container.classList.remove(t),this.container.classList.add(e))}_onWidth(e){}_doLayout(e,t){}_relayout(e){this._viewZone&&this._viewZone.heightInLines!==e&&this.editor.changeViewZones(t=>{this._viewZone&&(this._viewZone.heightInLines=e,t.layoutZone(this._viewZone.id))})}_initSash(){if(this._resizeSash)return;this._resizeSash=this._disposables.add(new an(this.domNode,this,{orientation:1})),this.options.isResizeable||(this._resizeSash.state=0);let e;this._disposables.add(this._resizeSash.onDidStart(t=>{this._viewZone&&(e={startY:t.startY,heightInLines:this._viewZone.heightInLines})})),this._disposables.add(this._resizeSash.onDidEnd(()=>{e=void 0})),this._disposables.add(this._resizeSash.onDidChange(t=>{if(e){const i=(t.currentY-e.startY)/this.editor.getOption(67),n=i<0?Math.ceil(i):Math.floor(i),s=e.heightInLines+n;s>5&&s<35&&this._relayout(s)}}))}getHorizontalSashLeft(){return 0}getHorizontalSashTop(){return(this.domNode.style.height===null?0:parseInt(this.domNode.style.height))-this._decoratingElementsHeight()/2}getHorizontalSashWidth(){const e=this.editor.getLayoutInfo();return e.width-e.minimap.minimapWidth}}var J8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},eB=function(o,e){return function(t,i){e(t,i,o)}};const tB=He("IPeekViewService");Qe(tB,class{constructor(){this._widgets=new Map}addExclusiveWidget(o,e){const t=this._widgets.get(o);t&&(t.listener.dispose(),t.widget.dispose());const i=()=>{const n=this._widgets.get(o);n&&n.widget===e&&(n.listener.dispose(),this._widgets.delete(o))};this._widgets.set(o,{widget:e,listener:e.onDidClose(i)})}},1);var qn;(function(o){o.inPeekEditor=new le("inReferenceSearchEditor",!0,m("inReferenceSearchEditor","Whether the current code editor is embedded inside peek")),o.notInPeekEditor=o.inPeekEditor.toNegated()})(qn||(qn={}));var eg;let Yv=(eg=class{constructor(e,t){e instanceof Gh&&qn.inPeekEditor.bindTo(t)}dispose(){}},eg.ID="editor.contrib.referenceController",eg);Yv=J8([eB(1,De)],Yv);Ho(Yv.ID,Yv,0);function Qle(o){const e=o.get(Pt).getFocusedCodeEditor();return e instanceof Gh?e.getParentEditor():e}const Xle={headerBackgroundColor:q.white,primaryHeadingColor:q.fromHex("#333333"),secondaryHeadingColor:q.fromHex("#6c6c6cb3")};let Qv=class extends Yle{constructor(e,t,i){super(e,t),this.instantiationService=i,this._onDidClose=new A,this.onDidClose=this._onDidClose.event,S0(this.options,Xle,!1)}dispose(){this.disposed||(this.disposed=!0,super.dispose(),this._onDidClose.fire(this))}style(e){const t=this.options;e.headerBackgroundColor&&(t.headerBackgroundColor=e.headerBackgroundColor),e.primaryHeadingColor&&(t.primaryHeadingColor=e.primaryHeadingColor),e.secondaryHeadingColor&&(t.secondaryHeadingColor=e.secondaryHeadingColor),super.style(e)}_applyStyles(){super._applyStyles();const e=this.options;this._headElement&&e.headerBackgroundColor&&(this._headElement.style.backgroundColor=e.headerBackgroundColor.toString()),this._primaryHeading&&e.primaryHeadingColor&&(this._primaryHeading.style.color=e.primaryHeadingColor.toString()),this._secondaryHeading&&e.secondaryHeadingColor&&(this._secondaryHeading.style.color=e.secondaryHeadingColor.toString()),this._bodyElement&&e.frameColor&&(this._bodyElement.style.borderColor=e.frameColor.toString())}_fillContainer(e){this.setCssClass("peekview-widget"),this._headElement=ce(".head"),this._bodyElement=ce(".body"),this._fillHead(this._headElement),this._fillBody(this._bodyElement),e.appendChild(this._headElement),e.appendChild(this._bodyElement)}_fillHead(e,t){this._titleElement=ce(".peekview-title"),this.options.supportOnTitleClick&&(this._titleElement.classList.add("clickable"),jt(this._titleElement,"click",s=>this._onTitleClick(s))),Z(this._headElement,this._titleElement),this._fillTitleIcon(this._titleElement),this._primaryHeading=ce("span.filename"),this._secondaryHeading=ce("span.dirname"),this._metaHeading=ce("span.meta"),Z(this._titleElement,this._primaryHeading,this._secondaryHeading,this._metaHeading);const i=ce(".peekview-actions");Z(this._headElement,i);const n=this._getActionBarOptions();this._actionbarWidget=new oo(i,n),this._disposables.add(this._actionbarWidget),t||this._actionbarWidget.push(new Fs("peekview.close",m("label.close","Close"),Ee.asClassName(ie.close),!0,()=>(this.dispose(),Promise.resolve())),{label:!1,icon:!0})}_fillTitleIcon(e){}_getActionBarOptions(){return{actionViewItemProvider:H7.bind(void 0,this.instantiationService),orientation:0}}_onTitleClick(e){}setTitle(e,t){this._primaryHeading&&this._secondaryHeading&&(this._primaryHeading.innerText=e,this._primaryHeading.setAttribute("title",e),t?this._secondaryHeading.innerText=t:xn(this._secondaryHeading))}setMetaTitle(e){this._metaHeading&&(e?(this._metaHeading.innerText=e,ns(this._metaHeading)):Cn(this._metaHeading))}_doLayout(e,t){if(!this._isShowing&&e<0){this.dispose();return}const i=Math.ceil(this.editor.getOption(67)*1.2),n=Math.round(e-(i+2));this._doLayoutHead(i,t),this._doLayoutBody(n,t)}_doLayoutHead(e,t){this._headElement&&(this._headElement.style.height=`${e}px`,this._headElement.style.lineHeight=this._headElement.style.height)}_doLayoutBody(e,t){this._bodyElement&&(this._bodyElement.style.height=`${e}px`)}};Qv=J8([eB(2,ke)],Qv);const Jle=D("peekViewTitle.background",{dark:"#252526",light:"#F3F3F3",hcDark:q.black,hcLight:q.white},m("peekViewTitleBackground","Background color of the peek view title area.")),iB=D("peekViewTitleLabel.foreground",{dark:q.white,light:q.black,hcDark:q.white,hcLight:Sa},m("peekViewTitleForeground","Color of the peek view title.")),nB=D("peekViewTitleDescription.foreground",{dark:"#ccccccb3",light:"#616161",hcDark:"#FFFFFF99",hcLight:"#292929"},m("peekViewTitleInfoForeground","Color of the peek view title info.")),ece=D("peekView.border",{dark:ma,light:ma,hcDark:Ye,hcLight:Ye},m("peekViewBorder","Color of the peek view borders and arrow.")),tce=D("peekViewResult.background",{dark:"#252526",light:"#F3F3F3",hcDark:q.black,hcLight:q.white},m("peekViewResultsBackground","Background color of the peek view result list."));D("peekViewResult.lineForeground",{dark:"#bbbbbb",light:"#646465",hcDark:q.white,hcLight:Sa},m("peekViewResultsMatchForeground","Foreground color for line nodes in the peek view result list."));D("peekViewResult.fileForeground",{dark:q.white,light:"#1E1E1E",hcDark:q.white,hcLight:Sa},m("peekViewResultsFileForeground","Foreground color for file nodes in the peek view result list."));D("peekViewResult.selectionBackground",{dark:"#3399ff33",light:"#3399ff33",hcDark:null,hcLight:null},m("peekViewResultsSelectionBackground","Background color of the selected entry in the peek view result list."));D("peekViewResult.selectionForeground",{dark:q.white,light:"#6C6C6C",hcDark:q.white,hcLight:Sa},m("peekViewResultsSelectionForeground","Foreground color of the selected entry in the peek view result list."));const sB=D("peekViewEditor.background",{dark:"#001F33",light:"#F2F8FC",hcDark:q.black,hcLight:q.white},m("peekViewEditorBackground","Background color of the peek view editor."));D("peekViewEditorGutter.background",sB,m("peekViewEditorGutterBackground","Background color of the gutter in the peek view editor."));D("peekViewEditorStickyScroll.background",sB,m("peekViewEditorStickScrollBackground","Background color of sticky scroll in the peek view editor."));D("peekViewResult.matchHighlightBackground",{dark:"#ea5c004d",light:"#ea5c004d",hcDark:null,hcLight:null},m("peekViewResultsMatchHighlight","Match highlight color in the peek view result list."));D("peekViewEditor.matchHighlightBackground",{dark:"#ff8f0099",light:"#f5d802de",hcDark:null,hcLight:null},m("peekViewEditorMatchHighlight","Match highlight color in the peek view editor."));D("peekViewEditor.matchHighlightBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("peekViewEditorMatchHighlightBorder","Match highlight border in the peek view editor."));class zc{constructor(e,t,i,n){this.isProviderFirst=e,this.parent=t,this.link=i,this._rangeCallback=n,this.id=Pk.nextId()}get uri(){return this.link.uri}get range(){return this._range??this.link.targetSelectionRange??this.link.range}set range(e){this._range=e,this._rangeCallback(this)}get ariaMessage(){const e=this.parent.getPreview(this)?.preview(this.range);return e?m({key:"aria.oneReference.preview",comment:["Placeholders are: 0: filename, 1:line number, 2: column number, 3: preview snippet of source code"]},"{0} in {1} on line {2} at column {3}",e.value,Fo(this.uri),this.range.startLineNumber,this.range.startColumn):m("aria.oneReference","in {0} on line {1} at column {2}",Fo(this.uri),this.range.startLineNumber,this.range.startColumn)}}class ice{constructor(e){this._modelReference=e}dispose(){this._modelReference.dispose()}preview(e,t=8){const i=this._modelReference.object.textEditorModel;if(!i)return;const{startLineNumber:n,startColumn:s,endLineNumber:r,endColumn:a}=e,l=i.getWordUntilPosition({lineNumber:n,column:s-t}),c=new I(n,l.startColumn,n,s),d=new I(r,a,r,1073741824),h=i.getValueInRange(c).replace(/^\s+/,""),u=i.getValueInRange(e),f=i.getValueInRange(d).replace(/\s+$/,"");return{value:h+u+f,highlight:{start:h.length,end:h.length+u.length}}}}class M_{constructor(e,t){this.parent=e,this.uri=t,this.children=[],this._previews=new cs}dispose(){xt(this._previews.values()),this._previews.clear()}getPreview(e){return this._previews.get(e.uri)}get ariaMessage(){const e=this.children.length;return e===1?m("aria.fileReferences.1","1 symbol in {0}, full path {1}",Fo(this.uri),this.uri.fsPath):m("aria.fileReferences.N","{0} symbols in {1}, full path {2}",e,Fo(this.uri),this.uri.fsPath)}async resolve(e){if(this._previews.size!==0)return this;for(const t of this.children)if(!this._previews.has(t.uri))try{const i=await e.createModelReference(t.uri);this._previews.set(t.uri,new ice(i))}catch(i){Ze(i)}return this}}class ds{constructor(e,t){this.groups=[],this.references=[],this._onDidChangeReferenceRange=new A,this.onDidChangeReferenceRange=this._onDidChangeReferenceRange.event,this._links=e,this._title=t;const[i]=e;e.sort(ds._compareReferences);let n;for(const s of e)if((!n||!Tt.isEqual(n.uri,s.uri,!0))&&(n=new M_(this,s.uri),this.groups.push(n)),n.children.length===0||ds._compareReferences(s,n.children[n.children.length-1])!==0){const r=new zc(i===s,n,s,a=>this._onDidChangeReferenceRange.fire(a));this.references.push(r),n.children.push(r)}}dispose(){xt(this.groups),this._onDidChangeReferenceRange.dispose(),this.groups.length=0}clone(){return new ds(this._links,this._title)}get title(){return this._title}get isEmpty(){return this.groups.length===0}get ariaMessage(){return this.isEmpty?m("aria.result.0","No results found"):this.references.length===1?m("aria.result.1","Found 1 symbol in {0}",this.references[0].uri.fsPath):this.groups.length===1?m("aria.result.n1","Found {0} symbols in {1}",this.references.length,this.groups[0].uri.fsPath):m("aria.result.nm","Found {0} symbols in {1} files",this.references.length,this.groups.length)}nextOrPreviousReference(e,t){const{parent:i}=e;let n=i.children.indexOf(e);const s=i.children.length,r=i.parent.groups.length;return r===1||t&&n+10?(t?n=(n+1)%s:n=(n+s-1)%s,i.children[n]):(n=i.parent.groups.indexOf(i),t?(n=(n+1)%r,i.parent.groups[n].children[0]):(n=(n+r-1)%r,i.parent.groups[n].children[i.parent.groups[n].children.length-1]))}nearestReference(e,t){const i=this.references.map((n,s)=>({idx:s,prefixLen:Th(n.uri.toString(),e.toString()),offsetDist:Math.abs(n.range.startLineNumber-t.lineNumber)*100+Math.abs(n.range.startColumn-t.column)})).sort((n,s)=>n.prefixLen>s.prefixLen?-1:n.prefixLens.offsetDist?1:0)[0];if(i)return this.references[i.idx]}referenceAt(e,t){for(const i of this.references)if(i.uri.toString()===e.toString()&&I.containsPosition(i.range,t))return i}firstReference(){for(const e of this.references)if(e.isProviderFirst)return e;return this.references[0]}static _compareReferences(e,t){return Tt.compare(e.uri,t.uri)||I.compareRangesUsingStarts(e.range,t.range)}}var Ty=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},My=function(o,e){return function(t,i){e(t,i,o)}},gE;let mE=class{constructor(e){this._resolverService=e}hasChildren(e){return e instanceof ds||e instanceof M_}getChildren(e){if(e instanceof ds)return e.groups;if(e instanceof M_)return e.resolve(this._resolverService).then(t=>t.children);throw new Error("bad tree")}};mE=Ty([My(0,fo)],mE);class nce{getHeight(){return 23}getTemplateId(e){return e instanceof M_?Xv.id:Jv.id}}let pE=class{constructor(e){this._keybindingService=e}getKeyboardNavigationLabel(e){if(e instanceof zc){const t=e.parent.getPreview(e)?.preview(e.range);if(t)return t.value}return Fo(e.uri)}};pE=Ty([My(0,vt)],pE);class sce{getId(e){return e instanceof zc?e.id:e.uri}}let _E=class extends z{constructor(e,t){super(),this._labelService=t;const i=document.createElement("div");i.classList.add("reference-file"),this.file=this._register(new gv(i,{supportHighlights:!0})),this.badge=new PD(Z(i,ce(".count")),{},B7),e.appendChild(i)}set(e,t){const i=ny(e.uri);this.file.setLabel(this._labelService.getUriBasenameLabel(e.uri),this._labelService.getUriLabel(i,{relative:!0}),{title:this._labelService.getUriLabel(e.uri),matches:t});const n=e.children.length;this.badge.setCount(n),n>1?this.badge.setTitleFormat(m("referencesCount","{0} references",n)):this.badge.setTitleFormat(m("referenceCount","{0} reference",n))}};_E=Ty([My(1,Cg)],_E);var fh;let Xv=(fh=class{constructor(e){this._instantiationService=e,this.templateId=gE.id}renderTemplate(e){return this._instantiationService.createInstance(_E,e)}renderElement(e,t,i){i.set(e.element,iy(e.filterData))}disposeTemplate(e){e.dispose()}},gE=fh,fh.id="FileReferencesRenderer",fh);Xv=gE=Ty([My(0,ke)],Xv);class oce extends z{constructor(e){super(),this.label=this._register(new _c(e))}set(e,t){const i=e.parent.getPreview(e)?.preview(e.range);if(!i||!i.value)this.label.set(`${Fo(e.uri)}:${e.range.startLineNumber+1}:${e.range.startColumn+1}`);else{const{value:n,highlight:s}=i;t&&!oa.isDefault(t)?(this.label.element.classList.toggle("referenceMatch",!1),this.label.set(n,iy(t))):(this.label.element.classList.toggle("referenceMatch",!0),this.label.set(n,[s]))}}}const u0=class u0{constructor(){this.templateId=u0.id}renderTemplate(e){return new oce(e)}renderElement(e,t,i){i.set(e.element,e.filterData)}disposeTemplate(e){e.dispose()}};u0.id="OneReferenceRenderer";let Jv=u0;class rce{getWidgetAriaLabel(){return m("treeAriaLabel","References")}getAriaLabel(e){return e.ariaMessage}}var ace=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ou=function(o,e){return function(t,i){e(t,i,o)}};const f0=class f0{constructor(e,t){this._editor=e,this._model=t,this._decorations=new Map,this._decorationIgnoreSet=new Set,this._callOnDispose=new X,this._callOnModelChange=new X,this._callOnDispose.add(this._editor.onDidChangeModel(()=>this._onModelChanged())),this._onModelChanged()}dispose(){this._callOnModelChange.dispose(),this._callOnDispose.dispose(),this.removeDecorations()}_onModelChanged(){this._callOnModelChange.clear();const e=this._editor.getModel();if(e){for(const t of this._model.references)if(t.uri.toString()===e.uri.toString()){this._addDecorations(t.parent);return}}}_addDecorations(e){if(!this._editor.hasModel())return;this._callOnModelChange.add(this._editor.getModel().onDidChangeDecorations(()=>this._onDecorationChanged()));const t=[],i=[];for(let n=0,s=e.children.length;n{const s=n.deltaDecorations([],t);for(let r=0;r{s.equals(9)&&(this._keybindingService.dispatchEvent(s,s.target),s.stopPropagation())},!0)),this._tree=this._instantiationService.createInstance(cce,"ReferencesWidget",this._treeContainer,new nce,[this._instantiationService.createInstance(Xv),this._instantiationService.createInstance(Jv)],this._instantiationService.createInstance(mE),i),this._splitView.addView({onDidChange:J.None,element:this._previewContainer,minimumSize:200,maximumSize:Number.MAX_VALUE,layout:s=>{this._preview.layout({height:this._dim.height,width:s})}},av.Distribute),this._splitView.addView({onDidChange:J.None,element:this._treeContainer,minimumSize:100,maximumSize:Number.MAX_VALUE,layout:s=>{this._treeContainer.style.height=`${this._dim.height}px`,this._treeContainer.style.width=`${s}px`,this._tree.layout(this._dim.height,s)}},av.Distribute),this._disposables.add(this._splitView.onDidSashChange(()=>{this._dim.width&&(this.layoutData.ratio=this._splitView.getViewSize(0)/this._dim.width)},void 0));const n=(s,r)=>{s instanceof zc&&(r==="show"&&this._revealReference(s,!1),this._onDidSelectReference.fire({element:s,kind:r,source:"tree"}))};this._disposables.add(this._tree.onDidOpen(s=>{s.sideBySide?n(s.element,"side"):s.editorOptions.pinned?n(s.element,"goto"):n(s.element,"show")})),Cn(this._treeContainer)}_onWidth(e){this._dim&&this._doLayoutBody(this._dim.height,e)}_doLayoutBody(e,t){super._doLayoutBody(e,t),this._dim=new rt(t,e),this.layoutData.heightInLines=this._viewZone?this._viewZone.heightInLines:this.layoutData.heightInLines,this._splitView.layout(t),this._splitView.resizeView(0,t*this.layoutData.ratio)}setSelection(e){return this._revealReference(e,!0).then(()=>{this._model&&(this._tree.setSelection([e]),this._tree.setFocus([e]))})}setModel(e){return this._disposeOnNewModel.clear(),this._model=e,this._model?this._onNewModel():Promise.resolve()}_onNewModel(){return this._model?this._model.isEmpty?(this.setTitle(""),this._messageContainer.innerText=m("noResults","No results"),ns(this._messageContainer),Promise.resolve(void 0)):(Cn(this._messageContainer),this._decorationsManager=new bE(this._preview,this._model),this._disposeOnNewModel.add(this._decorationsManager),this._disposeOnNewModel.add(this._model.onDidChangeReferenceRange(e=>this._tree.rerender(e))),this._disposeOnNewModel.add(this._preview.onMouseDown(e=>{const{event:t,target:i}=e;if(t.detail!==2)return;const n=this._getFocusedReference();n&&this._onDidSelectReference.fire({element:{uri:n.uri,range:i.range},kind:t.ctrlKey||t.metaKey||t.altKey?"side":"open",source:"editor"})})),this.container.classList.add("results-loaded"),ns(this._treeContainer),ns(this._previewContainer),this._splitView.layout(this._dim.width),this.focusOnReferenceTree(),this._tree.setInput(this._model.groups.length===1?this._model.groups[0]:this._model)):Promise.resolve(void 0)}_getFocusedReference(){const[e]=this._tree.getFocus();if(e instanceof zc)return e;if(e instanceof M_&&e.children.length>0)return e.children[0]}async revealReference(e){await this._revealReference(e,!1),this._onDidSelectReference.fire({element:e,kind:"goto",source:"tree"})}async _revealReference(e,t){if(this._revealedReference===e)return;this._revealedReference=e,e.uri.scheme!==Te.inMemory?this.setTitle(Zq(e.uri),this._uriLabel.getUriLabel(ny(e.uri))):this.setTitle(m("peekView.alternateTitle","References"));const i=this._textModelResolverService.createModelReference(e.uri);this._tree.getInput()===e.parent?this._tree.reveal(e):(t&&this._tree.reveal(e.parent),await this._tree.expand(e.parent),this._tree.reveal(e));const n=await i;if(!this._model){n.dispose();return}xt(this._previewModelReference);const s=n.object;if(s){const r=this._preview.getModel()===s.textEditorModel?0:1,a=I.lift(e.range).collapseToStart();this._previewModelReference=n,this._preview.setModel(s.textEditorModel),this._preview.setSelection(a),this._preview.revealRangeInCenter(a,r)}else this._preview.setModel(this._previewNotAvailableMessage),n.dispose()}};CE=ace([Ou(3,en),Ou(4,fo),Ou(5,ke),Ou(6,tB),Ou(7,Cg),Ou(8,vt)],CE);var dce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Fu=function(o,e){return function(t,i){e(t,i,o)}},G1;const _u=new le("referenceSearchVisible",!1,m("referenceSearchVisible","Whether reference peek is visible, like 'Peek References' or 'Peek Definition'"));var gh;let R_=(gh=class{static get(e){return e.getContribution(G1.ID)}constructor(e,t,i,n,s,r,a,l){this._defaultTreeKeyboardSupport=e,this._editor=t,this._editorService=n,this._notificationService=s,this._instantiationService=r,this._storageService=a,this._configurationService=l,this._disposables=new X,this._requestIdPool=0,this._ignoreModelChangeEvent=!1,this._referenceSearchVisible=_u.bindTo(i)}dispose(){this._referenceSearchVisible.reset(),this._disposables.dispose(),this._widget?.dispose(),this._model?.dispose(),this._widget=void 0,this._model=void 0}toggleWidget(e,t,i){let n;if(this._widget&&(n=this._widget.position),this.closeWidget(),n&&e.containsPosition(n))return;this._peekMode=i,this._referenceSearchVisible.set(!0),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>{this.closeWidget()})),this._disposables.add(this._editor.onDidChangeModel(()=>{this._ignoreModelChangeEvent||this.closeWidget()}));const s="peekViewLayout",r=lce.fromJSON(this._storageService.get(s,0,"{}"));this._widget=this._instantiationService.createInstance(CE,this._editor,this._defaultTreeKeyboardSupport,r),this._widget.setTitle(m("labelLoading","Loading...")),this._widget.show(e),this._disposables.add(this._widget.onDidClose(()=>{t.cancel(),this._widget?(this._storageService.store(s,JSON.stringify(this._widget.layoutData),0,1),this._widget.isClosing||this.closeWidget(),this._widget=void 0):this.closeWidget()})),this._disposables.add(this._widget.onDidSelectReference(l=>{const{element:c,kind:d}=l;if(c)switch(d){case"open":(l.source!=="editor"||!this._configurationService.getValue("editor.stablePeek"))&&this.openReference(c,!1,!1);break;case"side":this.openReference(c,!0,!1);break;case"goto":i?this._gotoReference(c,!0):this.openReference(c,!1,!0);break}}));const a=++this._requestIdPool;t.then(l=>{if(a!==this._requestIdPool||!this._widget){l.dispose();return}return this._model?.dispose(),this._model=l,this._widget.setModel(this._model).then(()=>{if(this._widget&&this._model&&this._editor.hasModel()){this._model.isEmpty?this._widget.setMetaTitle(""):this._widget.setMetaTitle(m("metaTitle.N","{0} ({1})",this._model.title,this._model.references.length));const c=this._editor.getModel().uri,d=new P(e.startLineNumber,e.startColumn),h=this._model.nearestReference(c,d);if(h)return this._widget.setSelection(h).then(()=>{this._widget&&this._editor.getOption(87)==="editor"&&this._widget.focusOnPreviewEditor()})}})},l=>{this._notificationService.error(l)})}changeFocusBetweenPreviewAndReferences(){this._widget&&(this._widget.isPreviewEditorFocused()?this._widget.focusOnReferenceTree():this._widget.focusOnPreviewEditor())}async goToNextOrPreviousReference(e){if(!this._editor.hasModel()||!this._model||!this._widget)return;const t=this._widget.position;if(!t)return;const i=this._model.nearestReference(this._editor.getModel().uri,t);if(!i)return;const n=this._model.nextOrPreviousReference(i,e),s=this._editor.hasTextFocus(),r=this._widget.isPreviewEditorFocused();await this._widget.setSelection(n),await this._gotoReference(n,!1),s?this._editor.focus():this._widget&&r&&this._widget.focusOnPreviewEditor()}async revealReference(e){!this._editor.hasModel()||!this._model||!this._widget||await this._widget.revealReference(e)}closeWidget(e=!0){this._widget?.dispose(),this._model?.dispose(),this._referenceSearchVisible.reset(),this._disposables.clear(),this._widget=void 0,this._model=void 0,e&&this._editor.focus(),this._requestIdPool+=1}_gotoReference(e,t){this._widget?.hide(),this._ignoreModelChangeEvent=!0;const i=I.lift(e.range).collapseToStart();return this._editorService.openCodeEditor({resource:e.uri,options:{selection:i,selectionSource:"code.jump",pinned:t}},this._editor).then(n=>{if(this._ignoreModelChangeEvent=!1,!n||!this._widget){this.closeWidget();return}if(this._editor===n)this._widget.show(i),this._widget.focusOnReferenceTree();else{const s=G1.get(n),r=this._model.clone();this.closeWidget(),n.focus(),s?.toggleWidget(i,wa(a=>Promise.resolve(r)),this._peekMode??!1)}},n=>{this._ignoreModelChangeEvent=!1,Ze(n)})}openReference(e,t,i){t||this.closeWidget();const{uri:n,range:s}=e;this._editorService.openCodeEditor({resource:n,options:{selection:s,selectionSource:"code.jump",pinned:i}},this._editor,t)}},G1=gh,gh.ID="editor.contrib.referencesController",gh);R_=G1=dce([Fu(2,De),Fu(3,Pt),Fu(4,mn),Fu(5,ke),Fu(6,du),Fu(7,lt)],R_);function bu(o,e){const t=Qle(o);if(!t)return;const i=R_.get(t);i&&e(i)}Nn.registerCommandAndKeybindingRule({id:"togglePeekWidgetFocus",weight:100,primary:Vp(2089,60),when:re.or(_u,qn.inPeekEditor),handler(o){bu(o,e=>{e.changeFocusBetweenPreviewAndReferences()})}});Nn.registerCommandAndKeybindingRule({id:"goToNextReference",weight:90,primary:62,secondary:[70],when:re.or(_u,qn.inPeekEditor),handler(o){bu(o,e=>{e.goToNextOrPreviousReference(!0)})}});Nn.registerCommandAndKeybindingRule({id:"goToPreviousReference",weight:90,primary:1086,secondary:[1094],when:re.or(_u,qn.inPeekEditor),handler(o){bu(o,e=>{e.goToNextOrPreviousReference(!1)})}});bt.registerCommandAlias("goToNextReferenceFromEmbeddedEditor","goToNextReference");bt.registerCommandAlias("goToPreviousReferenceFromEmbeddedEditor","goToPreviousReference");bt.registerCommandAlias("closeReferenceSearchEditor","closeReferenceSearch");bt.registerCommand("closeReferenceSearch",o=>bu(o,e=>e.closeWidget()));Nn.registerKeybindingRule({id:"closeReferenceSearch",weight:-1,primary:9,secondary:[1033],when:re.and(qn.inPeekEditor,re.not("config.editor.stablePeek"))});Nn.registerKeybindingRule({id:"closeReferenceSearch",weight:250,primary:9,secondary:[1033],when:re.and(_u,re.not("config.editor.stablePeek"),re.or(K.editorTextFocus,W9.negate()))});Nn.registerCommandAndKeybindingRule({id:"revealReference",weight:200,primary:3,mac:{primary:3,secondary:[2066]},when:re.and(_u,z9,k2.negate(),D2.negate()),handler(o){const t=o.get(mo).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof zc&&bu(o,i=>i.revealReference(t[0]))}});Nn.registerCommandAndKeybindingRule({id:"openReferenceToSide",weight:100,primary:2051,mac:{primary:259},when:re.and(_u,z9,k2.negate(),D2.negate()),handler(o){const t=o.get(mo).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof zc&&bu(o,i=>i.openReference(t[0],!0,!0))}});bt.registerCommand("openReference",o=>{const t=o.get(mo).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof zc&&bu(o,i=>i.openReference(t[0],!1,!0))});var oB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Wm=function(o,e){return function(t,i){e(t,i,o)}};const dM=new le("hasSymbols",!1,m("hasSymbols","Whether there are symbol locations that can be navigated via keyboard-only.")),Ry=He("ISymbolNavigationService");let vE=class{constructor(e,t,i,n){this._editorService=t,this._notificationService=i,this._keybindingService=n,this._currentModel=void 0,this._currentIdx=-1,this._ignoreEditorChange=!1,this._ctxHasSymbols=dM.bindTo(e)}reset(){this._ctxHasSymbols.reset(),this._currentState?.dispose(),this._currentMessage?.dispose(),this._currentModel=void 0,this._currentIdx=-1}put(e){const t=e.parent.parent;if(t.references.length<=1){this.reset();return}this._currentModel=t,this._currentIdx=t.references.indexOf(e),this._ctxHasSymbols.set(!0),this._showMessage();const i=new wE(this._editorService),n=i.onDidChange(s=>{if(this._ignoreEditorChange)return;const r=this._editorService.getActiveCodeEditor();if(!r)return;const a=r.getModel(),l=r.getPosition();if(!a||!l)return;let c=!1,d=!1;for(const h of t.references)if(WT(h.uri,a.uri))c=!0,d=d||I.containsPosition(h.range,l);else if(c)break;(!c||!d)&&this.reset()});this._currentState=No(i,n)}revealNext(e){if(!this._currentModel)return Promise.resolve();this._currentIdx+=1,this._currentIdx%=this._currentModel.references.length;const t=this._currentModel.references[this._currentIdx];return this._showMessage(),this._ignoreEditorChange=!0,this._editorService.openCodeEditor({resource:t.uri,options:{selection:I.collapseToStart(t.range),selectionRevealType:3}},e).finally(()=>{this._ignoreEditorChange=!1})}_showMessage(){this._currentMessage?.dispose();const e=this._keybindingService.lookupKeybinding("editor.gotoNextSymbolFromResult"),t=e?m("location.kb","Symbol {0} of {1}, {2} for next",this._currentIdx+1,this._currentModel.references.length,e.getLabel()):m("location","Symbol {0} of {1}",this._currentIdx+1,this._currentModel.references.length);this._currentMessage=this._notificationService.status(t)}};vE=oB([Wm(0,De),Wm(1,Pt),Wm(2,mn),Wm(3,vt)],vE);Qe(Ry,vE,1);ge(new class extends co{constructor(){super({id:"editor.gotoNextSymbolFromResult",precondition:dM,kbOpts:{weight:100,primary:70}})}runEditorCommand(o,e){return o.get(Ry).revealNext(e)}});Nn.registerCommandAndKeybindingRule({id:"editor.gotoNextSymbolFromResult.cancel",weight:100,when:dM,primary:9,handler(o){o.get(Ry).reset()}});let wE=class{constructor(e){this._listener=new Map,this._disposables=new X,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._disposables.add(e.onCodeEditorRemove(this._onDidRemoveEditor,this)),this._disposables.add(e.onCodeEditorAdd(this._onDidAddEditor,this)),e.listCodeEditors().forEach(this._onDidAddEditor,this)}dispose(){this._disposables.dispose(),this._onDidChange.dispose(),xt(this._listener.values())}_onDidAddEditor(e){this._listener.set(e,No(e.onDidChangeCursorPosition(t=>this._onDidChange.fire({editor:e})),e.onDidChangeModelContent(t=>this._onDidChange.fire({editor:e}))))}_onDidRemoveEditor(e){this._listener.get(e)?.dispose(),this._listener.delete(e)}};wE=oB([Wm(0,Pt)],wE);var hce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},R4=function(o,e){return function(t,i){e(t,i,o)}},Z1,vc;let ca=(vc=class{static get(e){return e.getContribution(Z1.ID)}constructor(e,t,i){this._openerService=i,this._messageWidget=new Dn,this._messageListeners=new X,this._mouseOverMessage=!1,this._editor=e,this._visible=Z1.MESSAGE_VISIBLE.bindTo(t)}dispose(){this._message?.dispose(),this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,t){El(ra(e)?e.value:e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),this._message=ra(e)?oy(e,{actionHandler:{callback:n=>{this.closeMessage(),UT(this._openerService,n,ra(e)?e.isTrusted:void 0)},disposables:this._messageListeners}}):void 0,this._messageWidget.value=new A4(this._editor,t,typeof e=="string"?e:this._message.element),this._messageListeners.add(J.debounce(this._editor.onDidBlurEditorText,(n,s)=>s,0)(()=>{this._mouseOverMessage||this._messageWidget.value&&yi(Xi(),this._messageWidget.value.getDomNode())||this.closeMessage()})),this._messageListeners.add(this._editor.onDidChangeCursorPosition(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidDispose(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidChangeModel(()=>this.closeMessage())),this._messageListeners.add(U(this._messageWidget.value.getDomNode(),ee.MOUSE_ENTER,()=>this._mouseOverMessage=!0,!0)),this._messageListeners.add(U(this._messageWidget.value.getDomNode(),ee.MOUSE_LEAVE,()=>this._mouseOverMessage=!1,!0));let i;this._messageListeners.add(this._editor.onMouseMove(n=>{n.target.position&&(i?i.containsPosition(n.target.position)||this.closeMessage():i=new I(t.lineNumber-3,1,n.target.position.lineNumber+3,1))}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(A4.fadeOut(this._messageWidget.value))}},Z1=vc,vc.ID="editor.contrib.messageController",vc.MESSAGE_VISIBLE=new le("messageVisible",!1,m("messageVisible","Whether the editor is currently showing an inline message")),vc);ca=Z1=hce([R4(1,De),R4(2,Vo)],ca);const uce=co.bindToContribution(ca.get);ge(new uce({id:"leaveEditorMessage",precondition:ca.MESSAGE_VISIBLE,handler:o=>o.closeMessage(),kbOpts:{weight:130,primary:9}}));let A4=class{static fadeOut(e){const t=()=>{e.dispose(),clearTimeout(i),e.getDomNode().removeEventListener("animationend",t)},i=setTimeout(t,110);return e.getDomNode().addEventListener("animationend",t),e.getDomNode().classList.add("fadeOut"),{dispose:t}}constructor(e,{lineNumber:t,column:i},n){this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(t,t,0),this._position={lineNumber:t,column:i},this._domNode=document.createElement("div"),this._domNode.classList.add("monaco-editor-overlaymessage"),this._domNode.style.marginLeft="-6px";const s=document.createElement("div");s.classList.add("anchor","top"),this._domNode.appendChild(s);const r=document.createElement("div");typeof n=="string"?(r.classList.add("message"),r.textContent=n):(n.classList.add("message"),r.appendChild(n)),this._domNode.appendChild(r);const a=document.createElement("div");a.classList.add("anchor","below"),this._domNode.appendChild(a),this._editor.addContentWidget(this),this._domNode.classList.add("fadeIn")}dispose(){this._editor.removeContentWidget(this)}getId(){return"messageoverlay"}getDomNode(){return this._domNode}getPosition(){return{position:this._position,preference:[1,2],positionAffinity:1}}afterRender(e){this._domNode.classList.toggle("below",e===2)}};Ho(ca.ID,ca,4);function yE(o,e){return e.uri.scheme===o.uri.scheme?!0:!zx(e.uri,Te.walkThroughSnippet,Te.vscodeChatCodeBlock,Te.vscodeChatCodeCompareBlock)}async function lb(o,e,t,i,n){const r=t.ordered(o,i).map(l=>Promise.resolve(n(l,o,e)).then(void 0,c=>{$n(c)})),a=await Promise.all(r);return Ag(a.flat()).filter(l=>yE(o,l))}function Ay(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideDefinition(r,a,n))}function hM(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideDeclaration(r,a,n))}function uM(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideImplementation(r,a,n))}function fM(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideTypeDefinition(r,a,n))}function cb(o,e,t,i,n,s){return lb(e,t,o,n,async(r,a,l)=>{const c=(await r.provideReferences(a,l,{includeDeclaration:!0},s))?.filter(h=>yE(a,h));if(!i||!c||c.length!==2)return c;const d=(await r.provideReferences(a,l,{includeDeclaration:!1},s))?.filter(h=>yE(a,h));return d&&d.length===1?d:c})}async function Da(o){const e=await o(),t=new ds(e,""),i=t.references.map(n=>n.link);return t.dispose(),i}Wo("_executeDefinitionProvider",(o,e,t)=>{const i=o.get(Se),n=Ay(i.definitionProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeDefinitionProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=Ay(i.definitionProvider,e,t,!0,ut.None);return Da(()=>n)});Wo("_executeTypeDefinitionProvider",(o,e,t)=>{const i=o.get(Se),n=fM(i.typeDefinitionProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeTypeDefinitionProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=fM(i.typeDefinitionProvider,e,t,!0,ut.None);return Da(()=>n)});Wo("_executeDeclarationProvider",(o,e,t)=>{const i=o.get(Se),n=hM(i.declarationProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeDeclarationProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=hM(i.declarationProvider,e,t,!0,ut.None);return Da(()=>n)});Wo("_executeReferenceProvider",(o,e,t)=>{const i=o.get(Se),n=cb(i.referenceProvider,e,t,!1,!1,ut.None);return Da(()=>n)});Wo("_executeReferenceProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=cb(i.referenceProvider,e,t,!1,!0,ut.None);return Da(()=>n)});Wo("_executeImplementationProvider",(o,e,t)=>{const i=o.get(Se),n=uM(i.implementationProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeImplementationProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=uM(i.implementationProvider,e,t,!0,ut.None);return Da(()=>n)});Eo.appendMenuItem($e.EditorContext,{submenu:$e.EditorContextPeek,title:m("peek.submenu","Peek"),group:"navigation",order:100});class Ig{static is(e){return!e||typeof e!="object"?!1:!!(e instanceof Ig||P.isIPosition(e.position)&&e.model)}constructor(e,t){this.model=e,this.position=t}}const wo=class wo extends mz{static all(){return wo._allSymbolNavigationCommands.values()}static _patchConfig(e){const t={...e,f1:!0};if(t.menu)for(const i of st.wrap(t.menu))(i.id===$e.EditorContext||i.id===$e.EditorContextPeek)&&(i.when=re.and(e.precondition,i.when));return t}constructor(e,t){super(wo._patchConfig(t)),this.configuration=e,wo._allSymbolNavigationCommands.set(t.id,this)}runEditorCommand(e,t,i,n){if(!t.hasModel())return Promise.resolve(void 0);const s=e.get(mn),r=e.get(Pt),a=e.get(G_),l=e.get(Ry),c=e.get(Se),d=e.get(ke),h=t.getModel(),u=t.getPosition(),f=Ig.is(i)?i:new Ig(h,u),g=new kle(t,5),p=TH(this._getLocationModel(c,f.model,f.position,g.token),g.token).then(async _=>{if(!_||g.token.isCancellationRequested)return;El(_.ariaMessage);let b;if(_.referenceAt(h.uri,u)){const w=this._getAlternativeCommand(t);!wo._activeAlternativeCommands.has(w)&&wo._allSymbolNavigationCommands.has(w)&&(b=wo._allSymbolNavigationCommands.get(w))}const C=_.references.length;if(C===0){if(!this.configuration.muteMessage){const w=h.getWordAtPosition(u);ca.get(t)?.showMessage(this._getNoResultFoundMessage(w),u)}}else if(C===1&&b)wo._activeAlternativeCommands.add(this.desc.id),d.invokeFunction(w=>b.runEditorCommand(w,t,i,n).finally(()=>{wo._activeAlternativeCommands.delete(this.desc.id)}));else return this._onResult(r,l,t,_,n)},_=>{s.error(_)}).finally(()=>{g.dispose()});return a.showWhile(p,250),p}async _onResult(e,t,i,n,s){const r=this._getGoToPreference(i);if(!(i instanceof Gh)&&(this.configuration.openInPeek||r==="peek"&&n.references.length>1))this._openInPeek(i,n,s);else{const a=n.firstReference(),l=n.references.length>1&&r==="gotoAndPeek",c=await this._openReference(i,e,a,this.configuration.openToSide,!l);l&&c?this._openInPeek(c,n,s):n.dispose(),r==="goto"&&t.put(a)}}async _openReference(e,t,i,n,s){let r;if(tH(i)&&(r=i.targetSelectionRange),r||(r=i.range),!r)return;const a=await t.openCodeEditor({resource:i.uri,options:{selection:I.collapseToStart(r),selectionRevealType:3,selectionSource:"code.jump"}},e,n);if(a){if(s){const l=a.getModel(),c=a.createDecorationsCollection([{range:r,options:{description:"symbol-navigate-action-highlight",className:"symbolHighlight"}}]);setTimeout(()=>{a.getModel()===l&&c.clear()},350)}return a}}_openInPeek(e,t,i){const n=R_.get(e);n&&e.hasModel()?n.toggleWidget(i??e.getSelection(),wa(s=>Promise.resolve(t)),this.configuration.openInPeek):t.dispose()}};wo._allSymbolNavigationCommands=new Map,wo._activeAlternativeCommands=new Set;let Nl=wo;class db extends Nl{async _getLocationModel(e,t,i,n){return new ds(await Ay(e.definitionProvider,t,i,!1,n),m("def.title","Definitions"))}_getNoResultFoundMessage(e){return e&&e.word?m("noResultWord","No definition found for '{0}'",e.word):m("generic.noResults","No definition found")}_getAlternativeCommand(e){return e.getOption(58).alternativeDefinitionCommand}_getGoToPreference(e){return e.getOption(58).multipleDefinitions}}var wc;Rn((wc=class extends db{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:wc.id,title:{...di("actions.goToDecl.label","Go to Definition"),mnemonicTitle:m({key:"miGotoDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Definition")},precondition:K.hasDefinitionProvider,keybinding:[{when:K.editorTextFocus,primary:70,weight:100},{when:re.and(K.editorTextFocus,F9),primary:2118,weight:100}],menu:[{id:$e.EditorContext,group:"navigation",order:1.1},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:2}]}),bt.registerCommandAlias("editor.action.goToDeclaration",wc.id)}},wc.id="editor.action.revealDefinition",wc));var yc;Rn((yc=class extends db{constructor(){super({openToSide:!0,openInPeek:!1,muteMessage:!1},{id:yc.id,title:di("actions.goToDeclToSide.label","Open Definition to the Side"),precondition:re.and(K.hasDefinitionProvider,K.isInEmbeddedEditor.toNegated()),keybinding:[{when:K.editorTextFocus,primary:Vp(2089,70),weight:100},{when:re.and(K.editorTextFocus,F9),primary:Vp(2089,2118),weight:100}]}),bt.registerCommandAlias("editor.action.openDeclarationToTheSide",yc.id)}},yc.id="editor.action.revealDefinitionAside",yc));var Sc;Rn((Sc=class extends db{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:Sc.id,title:di("actions.previewDecl.label","Peek Definition"),precondition:re.and(K.hasDefinitionProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),keybinding:{when:K.editorTextFocus,primary:582,linux:{primary:3140},weight:100},menu:{id:$e.EditorContextPeek,group:"peek",order:2}}),bt.registerCommandAlias("editor.action.previewDeclaration",Sc.id)}},Sc.id="editor.action.peekDefinition",Sc));class rB extends Nl{async _getLocationModel(e,t,i,n){return new ds(await hM(e.declarationProvider,t,i,!1,n),m("decl.title","Declarations"))}_getNoResultFoundMessage(e){return e&&e.word?m("decl.noResultWord","No declaration found for '{0}'",e.word):m("decl.generic.noResults","No declaration found")}_getAlternativeCommand(e){return e.getOption(58).alternativeDeclarationCommand}_getGoToPreference(e){return e.getOption(58).multipleDeclarations}}var mh;Rn((mh=class extends rB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:mh.id,title:{...di("actions.goToDeclaration.label","Go to Declaration"),mnemonicTitle:m({key:"miGotoDeclaration",comment:["&& denotes a mnemonic"]},"Go to &&Declaration")},precondition:re.and(K.hasDeclarationProvider,K.isInEmbeddedEditor.toNegated()),menu:[{id:$e.EditorContext,group:"navigation",order:1.3},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:3}]})}_getNoResultFoundMessage(e){return e&&e.word?m("decl.noResultWord","No declaration found for '{0}'",e.word):m("decl.generic.noResults","No declaration found")}},mh.id="editor.action.revealDeclaration",mh));Rn(class extends rB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.peekDeclaration",title:di("actions.peekDecl.label","Peek Declaration"),precondition:re.and(K.hasDeclarationProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),menu:{id:$e.EditorContextPeek,group:"peek",order:3}})}});class aB extends Nl{async _getLocationModel(e,t,i,n){return new ds(await fM(e.typeDefinitionProvider,t,i,!1,n),m("typedef.title","Type Definitions"))}_getNoResultFoundMessage(e){return e&&e.word?m("goToTypeDefinition.noResultWord","No type definition found for '{0}'",e.word):m("goToTypeDefinition.generic.noResults","No type definition found")}_getAlternativeCommand(e){return e.getOption(58).alternativeTypeDefinitionCommand}_getGoToPreference(e){return e.getOption(58).multipleTypeDefinitions}}var ph;Rn((ph=class extends aB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:ph.ID,title:{...di("actions.goToTypeDefinition.label","Go to Type Definition"),mnemonicTitle:m({key:"miGotoTypeDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Type Definition")},precondition:K.hasTypeDefinitionProvider,keybinding:{when:K.editorTextFocus,primary:0,weight:100},menu:[{id:$e.EditorContext,group:"navigation",order:1.4},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:3}]})}},ph.ID="editor.action.goToTypeDefinition",ph));var _h;Rn((_h=class extends aB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:_h.ID,title:di("actions.peekTypeDefinition.label","Peek Type Definition"),precondition:re.and(K.hasTypeDefinitionProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),menu:{id:$e.EditorContextPeek,group:"peek",order:4}})}},_h.ID="editor.action.peekTypeDefinition",_h));class lB extends Nl{async _getLocationModel(e,t,i,n){return new ds(await uM(e.implementationProvider,t,i,!1,n),m("impl.title","Implementations"))}_getNoResultFoundMessage(e){return e&&e.word?m("goToImplementation.noResultWord","No implementation found for '{0}'",e.word):m("goToImplementation.generic.noResults","No implementation found")}_getAlternativeCommand(e){return e.getOption(58).alternativeImplementationCommand}_getGoToPreference(e){return e.getOption(58).multipleImplementations}}var bh;Rn((bh=class extends lB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:bh.ID,title:{...di("actions.goToImplementation.label","Go to Implementations"),mnemonicTitle:m({key:"miGotoImplementation",comment:["&& denotes a mnemonic"]},"Go to &&Implementations")},precondition:K.hasImplementationProvider,keybinding:{when:K.editorTextFocus,primary:2118,weight:100},menu:[{id:$e.EditorContext,group:"navigation",order:1.45},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:4}]})}},bh.ID="editor.action.goToImplementation",bh));var Ch;Rn((Ch=class extends lB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:Ch.ID,title:di("actions.peekImplementation.label","Peek Implementations"),precondition:re.and(K.hasImplementationProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),keybinding:{when:K.editorTextFocus,primary:3142,weight:100},menu:{id:$e.EditorContextPeek,group:"peek",order:5}})}},Ch.ID="editor.action.peekImplementation",Ch));class cB extends Nl{_getNoResultFoundMessage(e){return e?m("references.no","No references found for '{0}'",e.word):m("references.noGeneric","No references found")}_getAlternativeCommand(e){return e.getOption(58).alternativeReferenceCommand}_getGoToPreference(e){return e.getOption(58).multipleReferences}}Rn(class extends cB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:"editor.action.goToReferences",title:{...di("goToReferences.label","Go to References"),mnemonicTitle:m({key:"miGotoReference",comment:["&& denotes a mnemonic"]},"Go to &&References")},precondition:re.and(K.hasReferenceProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),keybinding:{when:K.editorTextFocus,primary:1094,weight:100},menu:[{id:$e.EditorContext,group:"navigation",order:1.45},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:5}]})}async _getLocationModel(e,t,i,n){return new ds(await cb(e.referenceProvider,t,i,!0,!1,n),m("ref.title","References"))}});Rn(class extends cB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.referenceSearch.trigger",title:di("references.action.label","Peek References"),precondition:re.and(K.hasReferenceProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),menu:{id:$e.EditorContextPeek,group:"peek",order:6}})}async _getLocationModel(e,t,i,n){return new ds(await cb(e.referenceProvider,t,i,!1,!1,n),m("ref.title","References"))}});class fce extends Nl{constructor(e,t,i){super(e,{id:"editor.action.goToLocation",title:di("label.generic","Go to Any Symbol"),precondition:re.and(qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated())}),this._references=t,this._gotoMultipleBehaviour=i}async _getLocationModel(e,t,i,n){return new ds(this._references,m("generic.title","Locations"))}_getNoResultFoundMessage(e){return e&&m("generic.noResult","No results for '{0}'",e.word)||""}_getGoToPreference(e){return this._gotoMultipleBehaviour??e.getOption(58).multipleReferences}_getAlternativeCommand(){return""}}bt.registerCommand({id:"editor.action.goToLocations",metadata:{description:"Go to locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:ve},{name:"position",description:"The position at which to start",constraint:P.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto`"},{name:"noResultsMessage",description:"Human readable message that shows when locations is empty."}]},handler:async(o,e,t,i,n,s,r)=>{ai(ve.isUri(e)),ai(P.isIPosition(t)),ai(Array.isArray(i)),ai(typeof n>"u"||typeof n=="string"),ai(typeof r>"u"||typeof r=="boolean");const a=o.get(Pt),l=await a.openCodeEditor({resource:e},a.getFocusedCodeEditor());if(Y8(l))return l.setPosition(t),l.revealPositionInCenterIfOutsideViewport(t,0),l.invokeWithinContext(c=>{const d=new class extends fce{_getNoResultFoundMessage(h){return s||super._getNoResultFoundMessage(h)}}({muteMessage:!s,openInPeek:!!r,openToSide:!1},i,n);c.get(ke).invokeFunction(d.run.bind(d),l)})}});bt.registerCommand({id:"editor.action.peekLocations",metadata:{description:"Peek locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:ve},{name:"position",description:"The position at which to start",constraint:P.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto`"}]},handler:async(o,e,t,i,n)=>{o.get(hi).executeCommand("editor.action.goToLocations",e,t,i,n,void 0,!0)}});bt.registerCommand({id:"editor.action.findReferences",handler:(o,e,t)=>{ai(ve.isUri(e)),ai(P.isIPosition(t));const i=o.get(Se),n=o.get(Pt);return n.openCodeEditor({resource:e},n.getFocusedCodeEditor()).then(s=>{if(!Y8(s)||!s.hasModel())return;const r=R_.get(s);if(!r)return;const a=wa(c=>cb(i.referenceProvider,s.getModel(),P.lift(t),!1,!1,c).then(d=>new ds(d,m("ref.title","References")))),l=new I(t.lineNumber,t.column,t.lineNumber,t.column);return Promise.resolve(r.toggleWidget(l,a,!1))})}});bt.registerCommandAlias("editor.action.showReferences","editor.action.peekLocations");var gce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fL=function(o,e){return function(t,i){e(t,i,o)}},Hm,Lc;let A_=(Lc=class{constructor(e,t,i,n){this.textModelResolverService=t,this.languageService=i,this.languageFeaturesService=n,this.toUnhook=new X,this.toUnhookForKeyboard=new X,this.currentWordAtPosition=null,this.previousPromise=null,this.editor=e,this.linkDecorations=this.editor.createDecorationsCollection();const s=new X8(e);this.toUnhook.add(s),this.toUnhook.add(s.onMouseMoveOrRelevantKeyDown(([r,a])=>{this.startFindDefinitionFromMouse(r,a??void 0)})),this.toUnhook.add(s.onExecute(r=>{this.isEnabled(r)&&this.gotoDefinition(r.target.position,r.hasSideBySideModifier).catch(a=>{Ze(a)}).finally(()=>{this.removeLinkDecorations()})})),this.toUnhook.add(s.onCancel(()=>{this.removeLinkDecorations(),this.currentWordAtPosition=null}))}static get(e){return e.getContribution(Hm.ID)}async startFindDefinitionFromCursor(e){await this.startFindDefinition(e),this.toUnhookForKeyboard.add(this.editor.onDidChangeCursorPosition(()=>{this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear()})),this.toUnhookForKeyboard.add(this.editor.onKeyDown(t=>{t&&(this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear())}))}startFindDefinitionFromMouse(e,t){if(e.target.type===9&&this.linkDecorations.length>0)return;if(!this.editor.hasModel()||!this.isEnabled(e,t)){this.currentWordAtPosition=null,this.removeLinkDecorations();return}const i=e.target.position;this.startFindDefinition(i)}async startFindDefinition(e){this.toUnhookForKeyboard.clear();const t=e?this.editor.getModel()?.getWordAtPosition(e):null;if(!t){this.currentWordAtPosition=null,this.removeLinkDecorations();return}if(this.currentWordAtPosition&&this.currentWordAtPosition.startColumn===t.startColumn&&this.currentWordAtPosition.endColumn===t.endColumn&&this.currentWordAtPosition.word===t.word)return;this.currentWordAtPosition=t;const i=new xle(this.editor,15);this.previousPromise&&(this.previousPromise.cancel(),this.previousPromise=null),this.previousPromise=wa(r=>this.findDefinition(e,r));let n;try{n=await this.previousPromise}catch(r){Ze(r);return}if(!n||!n.length||!i.validate(this.editor)){this.removeLinkDecorations();return}const s=n[0].originSelectionRange?I.lift(n[0].originSelectionRange):new I(e.lineNumber,t.startColumn,e.lineNumber,t.endColumn);if(n.length>1){let r=s;for(const{originSelectionRange:a}of n)a&&(r=I.plusRange(r,a));this.addDecoration(r,new Js().appendText(m("multipleResults","Click to show {0} definitions.",n.length)))}else{const r=n[0];if(!r.uri)return;this.textModelResolverService.createModelReference(r.uri).then(a=>{if(!a.object||!a.object.textEditorModel){a.dispose();return}const{object:{textEditorModel:l}}=a,{startLineNumber:c}=r.range;if(c<1||c>l.getLineCount()){a.dispose();return}const d=this.getPreviewValue(l,c,r),h=this.languageService.guessLanguageIdByFilepathOrFirstLine(l.uri);this.addDecoration(s,d?new Js().appendCodeblock(h||"",d):void 0),a.dispose()})}}getPreviewValue(e,t,i){let n=i.range;return n.endLineNumber-n.startLineNumber>=Hm.MAX_SOURCE_PREVIEW_LINES&&(n=this.getPreviewRangeBasedOnIndentation(e,t)),this.stripIndentationFromPreviewRange(e,t,n)}stripIndentationFromPreviewRange(e,t,i){let s=e.getLineFirstNonWhitespaceColumn(t);for(let a=t+1;a{const n=!t&&this.editor.getOption(89)&&!this.isInPeekEditor(i);return new db({openToSide:t,openInPeek:n,muteMessage:!0},{title:{value:"",original:""},id:"",precondition:void 0}).run(i)})}isInPeekEditor(e){const t=e.get(De);return qn.inPeekEditor.getValue(t)}dispose(){this.toUnhook.dispose(),this.toUnhookForKeyboard.dispose()}},Hm=Lc,Lc.ID="editor.contrib.gotodefinitionatposition",Lc.MAX_SOURCE_PREVIEW_LINES=8,Lc);A_=Hm=gce([fL(1,fo),fL(2,qt),fL(3,Se)],A_);Ho(A_.ID,A_,2);const dB="editor.action.inlineSuggest.commit",hB="editor.action.inlineSuggest.showPrevious",uB="editor.action.inlineSuggest.showNext";var gM=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Io=function(o,e){return function(t,i){e(t,i,o)}},Y1;let SE=class extends z{constructor(e,t,i){super(),this.editor=e,this.model=t,this.instantiationService=i,this.alwaysShowToolbar=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).showToolbar==="always"),this.sessionPosition=void 0,this.position=Ce(this,n=>{const s=this.model.read(n)?.primaryGhostText.read(n);if(!this.alwaysShowToolbar.read(n)||!s||s.parts.length===0)return this.sessionPosition=void 0,null;const r=s.parts[0].column;this.sessionPosition&&this.sessionPosition.lineNumber!==s.lineNumber&&(this.sessionPosition=void 0);const a=new P(s.lineNumber,Math.min(r,this.sessionPosition?.column??Number.MAX_SAFE_INTEGER));return this.sessionPosition=a,a}),this._register(To((n,s)=>{const r=this.model.read(n);if(!r||!this.alwaysShowToolbar.read(n))return;const a=cu((c,d)=>{const h=d.add(this.instantiationService.createInstance(Eg,this.editor,!0,this.position,r.selectedInlineCompletionIndex,r.inlineCompletionsCount,r.activeCommands));return e.addContentWidget(h),d.add(_e(()=>e.removeContentWidget(h))),d.add(We(u=>{this.position.read(u)&&r.lastTriggerKind.read(u)!==Cl.Explicit&&r.triggerExplicitly()})),h}),l=YT(this,(c,d)=>!!this.position.read(c)||!!d);s.add(We(c=>{l.read(c)&&a.read(c)}))}))}};SE=gM([Io(2,ke)],SE);const mce=Wi("inline-suggestion-hints-next",ie.chevronRight,m("parameterHintsNextIcon","Icon for show next parameter hint.")),pce=Wi("inline-suggestion-hints-previous",ie.chevronLeft,m("parameterHintsPreviousIcon","Icon for show previous parameter hint."));var xc;let Eg=(xc=class extends z{static get dropDownVisible(){return this._dropDownVisible}createCommandAction(e,t,i){const n=new Fs(e,t,i,!0,()=>this._commandService.executeCommand(e)),s=this.keybindingService.lookupKeybinding(e,this._contextKeyService);let r=t;return s&&(r=m({key:"content",comment:["A label","A keybinding"]},"{0} ({1})",t,s.getLabel())),n.tooltip=r,n}constructor(e,t,i,n,s,r,a,l,c,d,h){super(),this.editor=e,this.withBorder=t,this._position=i,this._currentSuggestionIdx=n,this._suggestionCount=s,this._extraCommands=r,this._commandService=a,this.keybindingService=c,this._contextKeyService=d,this._menuService=h,this.id=`InlineSuggestionHintsContentWidget${Y1.id++}`,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this.nodes=tt("div.inlineSuggestionsHints",{className:this.withBorder?".withBorder":""},[tt("div@toolBar")]),this.previousAction=this.createCommandAction(hB,m("previous","Previous"),Ee.asClassName(pce)),this.availableSuggestionCountAction=new Fs("inlineSuggestionHints.availableSuggestionCount","",void 0,!1),this.nextAction=this.createCommandAction(uB,m("next","Next"),Ee.asClassName(mce)),this.inlineCompletionsActionsMenus=this._register(this._menuService.createMenu($e.InlineCompletionsActions,this._contextKeyService)),this.clearAvailableSuggestionCountLabelDebounced=this._register(new ci(()=>{this.availableSuggestionCountAction.label=""},100)),this.disableButtonsDebounced=this._register(new ci(()=>{this.previousAction.enabled=this.nextAction.enabled=!1},100)),this.toolBar=this._register(l.createInstance(LE,this.nodes.toolBar,$e.InlineSuggestionToolbar,{menuOptions:{renderShortTitle:!0},toolbarOptions:{primaryGroup:u=>u.startsWith("primary")},actionViewItemProvider:(u,f)=>{if(u instanceof so)return l.createInstance(bce,u,void 0);if(u===this.availableSuggestionCountAction){const g=new _ce(void 0,u,{label:!0,icon:!1});return g.setClass("availableSuggestionCount"),g}},telemetrySource:"InlineSuggestionToolbar"})),this.toolBar.setPrependedPrimaryActions([this.previousAction,this.availableSuggestionCountAction,this.nextAction]),this._register(this.toolBar.onDidChangeDropdownVisibility(u=>{Y1._dropDownVisible=u})),this._register(We(u=>{this._position.read(u),this.editor.layoutContentWidget(this)})),this._register(We(u=>{const f=this._suggestionCount.read(u),g=this._currentSuggestionIdx.read(u);f!==void 0?(this.clearAvailableSuggestionCountLabelDebounced.cancel(),this.availableSuggestionCountAction.label=`${g+1}/${f}`):this.clearAvailableSuggestionCountLabelDebounced.schedule(),f!==void 0&&f>1?(this.disableButtonsDebounced.cancel(),this.previousAction.enabled=this.nextAction.enabled=!0):this.disableButtonsDebounced.schedule()})),this._register(We(u=>{const g=this._extraCommands.read(u).map(p=>({class:void 0,id:p.id,enabled:!0,tooltip:p.tooltip||"",label:p.title,run:_=>this._commandService.executeCommand(p.id)}));for(const[p,_]of this.inlineCompletionsActionsMenus.getActions())for(const b of _)b instanceof so&&g.push(b);g.length>0&&g.unshift(new Gi),this.toolBar.setAdditionalSecondaryActions(g)}))}getId(){return this.id}getDomNode(){return this.nodes.root}getPosition(){return{position:this._position.get(),preference:[1,2],positionAffinity:3}}},Y1=xc,xc._dropDownVisible=!1,xc.id=0,xc);Eg=Y1=gM([Io(6,hi),Io(7,ke),Io(8,vt),Io(9,De),Io(10,yr)],Eg);class _ce extends dy{constructor(){super(...arguments),this._className=void 0}setClass(e){this._className=e}render(e){super.render(e),this._className&&e.classList.add(this._className)}updateTooltip(){}}class bce extends zh{updateLabel(){const e=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!e)return super.updateLabel();if(this.label){const t=tt("div.keybinding").root;this._register(new ob(t,Ns,{disableTitle:!0,...Hee})).set(e),this.label.textContent=this._action.label,this.label.appendChild(t),this.label.classList.add("inlineSuggestionStatusBarItemLabel")}}updateTooltip(){}}let LE=class extends $v{constructor(e,t,i,n,s,r,a,l,c){super(e,{resetMenu:t,...i},n,s,r,a,l,c),this.menuId=t,this.options2=i,this.menuService=n,this.contextKeyService=s,this.menu=this._store.add(this.menuService.createMenu(this.menuId,this.contextKeyService,{emitEventsForSubmenuChanges:!0})),this.additionalActions=[],this.prependedPrimaryActions=[],this._store.add(this.menu.onDidChange(()=>this.updateToolbar())),this.updateToolbar()}updateToolbar(){const e=[],t=[];XT(this.menu,this.options2?.menuOptions,{primary:e,secondary:t},this.options2?.toolbarOptions?.primaryGroup,this.options2?.toolbarOptions?.shouldInlineSubmenu,this.options2?.toolbarOptions?.useSeparatorsInPrimaryActions),t.push(...this.additionalActions),e.unshift(...this.prependedPrimaryActions),this.setActions(e,t)}setPrependedPrimaryActions(e){li(this.prependedPrimaryActions,e,(t,i)=>t===i)||(this.prependedPrimaryActions=e,this.updateToolbar())}setAdditionalSecondaryActions(e){li(this.additionalActions,e,(t,i)=>t===i)||(this.additionalActions=e,this.updateToolbar())}};LE=gM([Io(3,yr),Io(4,De),Io(5,Lr),Io(6,vt),Io(7,hi),Io(8,$s)],LE);function Py(o,e,t){const i=gi(o);return!(ei.left+i.width||ti.top+i.height)}let Cce=class{constructor(e,t,i){this.value=e,this.isComplete=t,this.hasLoadingMessage=i}};class fB extends z{constructor(e,t){super(),this._editor=e,this._computer=t,this._onResult=this._register(new A),this.onResult=this._onResult.event,this._firstWaitScheduler=this._register(new ci(()=>this._triggerAsyncComputation(),0)),this._secondWaitScheduler=this._register(new ci(()=>this._triggerSyncComputation(),0)),this._loadingMessageScheduler=this._register(new ci(()=>this._triggerLoadingMessage(),0)),this._state=0,this._asyncIterable=null,this._asyncIterableDone=!1,this._result=[]}dispose(){this._asyncIterable&&(this._asyncIterable.cancel(),this._asyncIterable=null),super.dispose()}get _hoverTime(){return this._editor.getOption(60).delay}get _firstWaitTime(){return this._hoverTime/2}get _secondWaitTime(){return this._hoverTime-this._firstWaitTime}get _loadingMessageTime(){return 3*this._hoverTime}_setState(e,t=!0){this._state=e,t&&this._fireResult()}_triggerAsyncComputation(){this._setState(2),this._secondWaitScheduler.schedule(this._secondWaitTime),this._computer.computeAsync?(this._asyncIterableDone=!1,this._asyncIterable=FH(e=>this._computer.computeAsync(e)),(async()=>{try{for await(const e of this._asyncIterable)e&&(this._result.push(e),this._fireResult());this._asyncIterableDone=!0,(this._state===3||this._state===4)&&this._setState(0)}catch(e){Ze(e)}})()):this._asyncIterableDone=!0}_triggerSyncComputation(){this._computer.computeSync&&(this._result=this._result.concat(this._computer.computeSync())),this._setState(this._asyncIterableDone?0:3)}_triggerLoadingMessage(){this._state===3&&this._setState(4)}_fireResult(){if(this._state===1||this._state===2)return;const e=this._state===0,t=this._state===4;this._onResult.fire(new Cce(this._result.slice(0),e,t))}start(e){if(e===0)this._state===0&&(this._setState(1),this._firstWaitScheduler.schedule(this._firstWaitTime),this._loadingMessageScheduler.schedule(this._loadingMessageTime));else switch(this._state){case 0:this._triggerAsyncComputation(),this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break;case 2:this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break}}cancel(){this._firstWaitScheduler.cancel(),this._secondWaitScheduler.cancel(),this._loadingMessageScheduler.cancel(),this._asyncIterable&&(this._asyncIterable.cancel(),this._asyncIterable=null),this._result=[],this._setState(0,!1)}}class gL{constructor(e,t,i,n){this.priority=e,this.range=t,this.initialMousePosX=i,this.initialMousePosY=n,this.type=1}equals(e){return e.type===1&&this.range.equalsRange(e.range)}canAdoptVisibleHover(e,t){return e.type===1&&t.lineNumber===this.range.startLineNumber}}class Q1{constructor(e,t,i,n,s,r){this.priority=e,this.owner=t,this.range=i,this.initialMousePosX=n,this.initialMousePosY=s,this.supportsMarkerHover=r,this.type=2}equals(e){return e.type===2&&this.owner===e.owner}canAdoptVisibleHover(e,t){return e.type===2&&this.owner===e.owner}}class Ng{constructor(e){this.renderedHoverParts=e}dispose(){for(const e of this.renderedHoverParts)e.dispose()}}const Oy=new class{constructor(){this._participants=[]}register(e){this._participants.push(e)}getAll(){return this._participants}};class mM{constructor(){this._onDidWillResize=new A,this.onDidWillResize=this._onDidWillResize.event,this._onDidResize=new A,this.onDidResize=this._onDidResize.event,this._sashListener=new X,this._size=new rt(0,0),this._minSize=new rt(0,0),this._maxSize=new rt(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),this.domNode=document.createElement("div"),this._eastSash=new an(this.domNode,{getVerticalSashLeft:()=>this._size.width},{orientation:0}),this._westSash=new an(this.domNode,{getVerticalSashLeft:()=>0},{orientation:0}),this._northSash=new an(this.domNode,{getHorizontalSashTop:()=>0},{orientation:1,orthogonalEdge:ov.North}),this._southSash=new an(this.domNode,{getHorizontalSashTop:()=>this._size.height},{orientation:1,orthogonalEdge:ov.South}),this._northSash.orthogonalStartSash=this._westSash,this._northSash.orthogonalEndSash=this._eastSash,this._southSash.orthogonalStartSash=this._westSash,this._southSash.orthogonalEndSash=this._eastSash;let e,t=0,i=0;this._sashListener.add(J.any(this._northSash.onDidStart,this._eastSash.onDidStart,this._southSash.onDidStart,this._westSash.onDidStart)(()=>{e===void 0&&(this._onDidWillResize.fire(),e=this._size,t=0,i=0)})),this._sashListener.add(J.any(this._northSash.onDidEnd,this._eastSash.onDidEnd,this._southSash.onDidEnd,this._westSash.onDidEnd)(()=>{e!==void 0&&(e=void 0,t=0,i=0,this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(this._eastSash.onDidChange(n=>{e&&(i=n.currentX-n.startX,this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,east:!0}))})),this._sashListener.add(this._westSash.onDidChange(n=>{e&&(i=-(n.currentX-n.startX),this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,west:!0}))})),this._sashListener.add(this._northSash.onDidChange(n=>{e&&(t=-(n.currentY-n.startY),this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,north:!0}))})),this._sashListener.add(this._southSash.onDidChange(n=>{e&&(t=n.currentY-n.startY,this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,south:!0}))})),this._sashListener.add(J.any(this._eastSash.onDidReset,this._westSash.onDidReset)(n=>{this._preferredSize&&(this.layout(this._size.height,this._preferredSize.width),this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(J.any(this._northSash.onDidReset,this._southSash.onDidReset)(n=>{this._preferredSize&&(this.layout(this._preferredSize.height,this._size.width),this._onDidResize.fire({dimension:this._size,done:!0}))}))}dispose(){this._northSash.dispose(),this._southSash.dispose(),this._eastSash.dispose(),this._westSash.dispose(),this._sashListener.dispose(),this._onDidResize.dispose(),this._onDidWillResize.dispose(),this.domNode.remove()}enableSashes(e,t,i,n){this._northSash.state=e?3:0,this._eastSash.state=t?3:0,this._southSash.state=i?3:0,this._westSash.state=n?3:0}layout(e=this.size.height,t=this.size.width){const{height:i,width:n}=this._minSize,{height:s,width:r}=this._maxSize;e=Math.max(i,Math.min(s,e)),t=Math.max(n,Math.min(r,t));const a=new rt(t,e);rt.equals(a,this._size)||(this.domNode.style.height=e+"px",this.domNode.style.width=t+"px",this._size=a,this._northSash.layout(),this._eastSash.layout(),this._southSash.layout(),this._westSash.layout())}clearSashHoverState(){this._eastSash.clearSashHoverState(),this._westSash.clearSashHoverState(),this._northSash.clearSashHoverState(),this._southSash.clearSashHoverState()}get size(){return this._size}set maxSize(e){this._maxSize=e}get maxSize(){return this._maxSize}set minSize(e){this._minSize=e}get minSize(){return this._minSize}set preferredSize(e){this._preferredSize=e}get preferredSize(){return this._preferredSize}}const vce=30,wce=24;class yce extends z{constructor(e,t=new rt(10,10)){super(),this._editor=e,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._resizableNode=this._register(new mM),this._contentPosition=null,this._isResizing=!1,this._resizableNode.domNode.style.position="absolute",this._resizableNode.minSize=rt.lift(t),this._resizableNode.layout(t.height,t.width),this._resizableNode.enableSashes(!0,!0,!0,!0),this._register(this._resizableNode.onDidResize(i=>{this._resize(new rt(i.dimension.width,i.dimension.height)),i.done&&(this._isResizing=!1)})),this._register(this._resizableNode.onDidWillResize(()=>{this._isResizing=!0}))}get isResizing(){return this._isResizing}getDomNode(){return this._resizableNode.domNode}getPosition(){return this._contentPosition}get position(){return this._contentPosition?.position?P.lift(this._contentPosition.position):void 0}_availableVerticalSpaceAbove(e){const t=this._editor.getDomNode(),i=this._editor.getScrolledVisiblePosition(e);return!t||!i?void 0:gi(t).top+i.top-vce}_availableVerticalSpaceBelow(e){const t=this._editor.getDomNode(),i=this._editor.getScrolledVisiblePosition(e);if(!t||!i)return;const n=gi(t),s=Ah(t.ownerDocument.body),r=n.top+i.top+i.height;return s.height-r-wce}_findPositionPreference(e,t){const i=Math.min(this._availableVerticalSpaceBelow(t)??1/0,e),n=Math.min(this._availableVerticalSpaceAbove(t)??1/0,e),s=Math.min(Math.max(n,i),e),r=Math.min(e,s);let a;return this._editor.getOption(60).above?a=r<=n?1:2:a=r<=i?2:1,a===1?this._resizableNode.enableSashes(!0,!0,!1,!1):this._resizableNode.enableSashes(!1,!0,!0,!1),a}_resize(e){this._resizableNode.layout(e.height,e.width)}}var Sce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},d1=function(o,e){return function(t,i){e(t,i,o)}},Or;const P4=30,Lce=6;var kc;let xE=(kc=class extends yce{get isVisibleFromKeyboard(){return this._renderedHover?.source===1}get isVisible(){return this._hoverVisibleKey.get()??!1}get isFocused(){return this._hoverFocusedKey.get()??!1}constructor(e,t,i,n,s){const r=e.getOption(67)+8,a=150,l=new rt(a,r);super(e,l),this._configurationService=i,this._accessibilityService=n,this._keybindingService=s,this._hover=this._register(new RT),this._onDidResize=this._register(new A),this.onDidResize=this._onDidResize.event,this._minimumSize=l,this._hoverVisibleKey=K.hoverVisible.bindTo(t),this._hoverFocusedKey=K.hoverFocused.bindTo(t),Z(this._resizableNode.domNode,this._hover.containerDomNode),this._resizableNode.domNode.style.zIndex="50",this._register(this._editor.onDidLayoutChange(()=>{this.isVisible&&this._updateMaxDimensions()})),this._register(this._editor.onDidChangeConfiguration(d=>{d.hasChanged(50)&&this._updateFont()}));const c=this._register(Ph(this._resizableNode.domNode));this._register(c.onDidFocus(()=>{this._hoverFocusedKey.set(!0)})),this._register(c.onDidBlur(()=>{this._hoverFocusedKey.set(!1)})),this._setRenderedHover(void 0),this._editor.addContentWidget(this)}dispose(){super.dispose(),this._renderedHover?.dispose(),this._editor.removeContentWidget(this)}getId(){return Or.ID}static _applyDimensions(e,t,i){const n=typeof t=="number"?`${t}px`:t,s=typeof i=="number"?`${i}px`:i;e.style.width=n,e.style.height=s}_setContentsDomNodeDimensions(e,t){const i=this._hover.contentsDomNode;return Or._applyDimensions(i,e,t)}_setContainerDomNodeDimensions(e,t){const i=this._hover.containerDomNode;return Or._applyDimensions(i,e,t)}_setHoverWidgetDimensions(e,t){this._setContentsDomNodeDimensions(e,t),this._setContainerDomNodeDimensions(e,t),this._layoutContentWidget()}static _applyMaxDimensions(e,t,i){const n=typeof t=="number"?`${t}px`:t,s=typeof i=="number"?`${i}px`:i;e.style.maxWidth=n,e.style.maxHeight=s}_setHoverWidgetMaxDimensions(e,t){Or._applyMaxDimensions(this._hover.contentsDomNode,e,t),Or._applyMaxDimensions(this._hover.containerDomNode,e,t),this._hover.containerDomNode.style.setProperty("--vscode-hover-maxWidth",typeof e=="number"?`${e}px`:e),this._layoutContentWidget()}_setAdjustedHoverWidgetDimensions(e){this._setHoverWidgetMaxDimensions("none","none");const t=e.width,i=e.height;this._setHoverWidgetDimensions(t,i)}_updateResizableNodeMaxDimensions(){const e=this._findMaximumRenderingWidth()??1/0,t=this._findMaximumRenderingHeight()??1/0;this._resizableNode.maxSize=new rt(e,t),this._setHoverWidgetMaxDimensions(e,t)}_resize(e){Or._lastDimensions=new rt(e.width,e.height),this._setAdjustedHoverWidgetDimensions(e),this._resizableNode.layout(e.height,e.width),this._updateResizableNodeMaxDimensions(),this._hover.scrollbar.scanDomNode(),this._editor.layoutContentWidget(this),this._onDidResize.fire()}_findAvailableSpaceVertically(){const e=this._renderedHover?.showAtPosition;if(e)return this._positionPreference===1?this._availableVerticalSpaceAbove(e):this._availableVerticalSpaceBelow(e)}_findMaximumRenderingHeight(){const e=this._findAvailableSpaceVertically();if(!e)return;let t=Lce;return Array.from(this._hover.contentsDomNode.children).forEach(i=>{t+=i.clientHeight}),Math.min(e,t)}_isHoverTextOverflowing(){this._hover.containerDomNode.style.setProperty("--vscode-hover-whiteSpace","nowrap"),this._hover.containerDomNode.style.setProperty("--vscode-hover-sourceWhiteSpace","nowrap");const e=Array.from(this._hover.contentsDomNode.children).some(t=>t.scrollWidth>t.clientWidth);return this._hover.containerDomNode.style.removeProperty("--vscode-hover-whiteSpace"),this._hover.containerDomNode.style.removeProperty("--vscode-hover-sourceWhiteSpace"),e}_findMaximumRenderingWidth(){if(!this._editor||!this._editor.hasModel())return;const e=this._isHoverTextOverflowing(),t=typeof this._contentWidth>"u"?0:this._contentWidth-2;return e||this._hover.containerDomNode.clientWidththis._renderedHover.closestMouseDistance+4?!1:(this._renderedHover.closestMouseDistance=Math.min(this._renderedHover.closestMouseDistance,n),!0)}_setRenderedHover(e){this._renderedHover?.dispose(),this._renderedHover=e,this._hoverVisibleKey.set(!!e),this._hover.containerDomNode.classList.toggle("hidden",!e)}_updateFont(){const{fontSize:e,lineHeight:t}=this._editor.getOption(50),i=this._hover.contentsDomNode;i.style.fontSize=`${e}px`,i.style.lineHeight=`${t/e}`,Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName("code")).forEach(s=>this._editor.applyFontInfo(s))}_updateContent(e){const t=this._hover.contentsDomNode;t.style.paddingBottom="",t.textContent="",t.appendChild(e)}_layoutContentWidget(){this._editor.layoutContentWidget(this),this._hover.onContentsChanged()}_updateMaxDimensions(){const e=Math.max(this._editor.getLayoutInfo().height/4,250,Or._lastDimensions.height),t=Math.max(this._editor.getLayoutInfo().width*.66,500,Or._lastDimensions.width);this._setHoverWidgetMaxDimensions(t,e)}_render(e){this._setRenderedHover(e),this._updateFont(),this._updateContent(e.domNode),this._updateMaxDimensions(),this.onContentsChanged(),this._editor.render()}getPosition(){return this._renderedHover?{position:this._renderedHover.showAtPosition,secondaryPosition:this._renderedHover.showAtSecondaryPosition,positionAffinity:this._renderedHover.shouldAppearBeforeContent?3:void 0,preference:[this._positionPreference??1]}:null}show(e){if(!this._editor||!this._editor.hasModel())return;this._render(e);const t=Hd(this._hover.containerDomNode),i=e.showAtPosition;this._positionPreference=this._findPositionPreference(t,i)??1,this.onContentsChanged(),e.shouldFocus&&this._hover.containerDomNode.focus(),this._onDidResize.fire();const s=this._hover.containerDomNode.ownerDocument.activeElement===this._hover.containerDomNode&&e7(this._configurationService.getValue("accessibility.verbosity.hover")===!0&&this._accessibilityService.isScreenReaderOptimized(),this._keybindingService.lookupKeybinding("editor.action.accessibleView")?.getAriaLabel()??"");s&&(this._hover.contentsDomNode.ariaLabel=this._hover.contentsDomNode.textContent+", "+s)}hide(){if(!this._renderedHover)return;const e=this._renderedHover.shouldFocus||this._hoverFocusedKey.get();this._setRenderedHover(void 0),this._resizableNode.maxSize=new rt(1/0,1/0),this._resizableNode.clearSashHoverState(),this._hoverFocusedKey.set(!1),this._editor.layoutContentWidget(this),e&&this._editor.focus()}_removeConstraintsRenderNormally(){const e=this._editor.getLayoutInfo();this._resizableNode.layout(e.height,e.width),this._setHoverWidgetDimensions("auto","auto")}setMinimumDimensions(e){this._minimumSize=new rt(Math.max(this._minimumSize.width,e.width),Math.max(this._minimumSize.height,e.height)),this._updateMinimumWidth()}_updateMinimumWidth(){const e=typeof this._contentWidth>"u"?this._minimumSize.width:Math.min(this._contentWidth,this._minimumSize.width);this._resizableNode.minSize=new rt(e,this._minimumSize.height)}onContentsChanged(){this._removeConstraintsRenderNormally();const e=this._hover.containerDomNode;let t=Hd(e),i=qp(e);if(this._resizableNode.layout(t,i),this._setHoverWidgetDimensions(i,t),t=Hd(e),i=qp(e),this._contentWidth=i,this._updateMinimumWidth(),this._resizableNode.layout(t,i),this._renderedHover?.showAtPosition){const n=Hd(this._hover.containerDomNode);this._positionPreference=this._findPositionPreference(n,this._renderedHover.showAtPosition)}this._layoutContentWidget()}focus(){this._hover.containerDomNode.focus()}scrollUp(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._editor.getOption(50);this._hover.scrollbar.setScrollPosition({scrollTop:e-t.lineHeight})}scrollDown(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._editor.getOption(50);this._hover.scrollbar.setScrollPosition({scrollTop:e+t.lineHeight})}scrollLeft(){const e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e-P4})}scrollRight(){const e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e+P4})}pageUp(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e-t})}pageDown(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e+t})}goToTop(){this._hover.scrollbar.setScrollPosition({scrollTop:0})}goToBottom(){this._hover.scrollbar.setScrollPosition({scrollTop:this._hover.scrollbar.getScrollDimensions().scrollHeight})}},Or=kc,kc.ID="editor.contrib.resizableContentHoverWidget",kc._lastDimensions=new rt(0,0),kc);xE=Or=Sce([d1(1,De),d1(2,lt),d1(3,ms),d1(4,vt)],xE);function O4(o,e,t,i,n,s){const r=t+n/2,a=i+s/2,l=Math.max(Math.abs(o-r)-n/2,0),c=Math.max(Math.abs(e-a)-s/2,0);return Math.sqrt(l*l+c*c)}class ew{get anchor(){return this._anchor}set anchor(e){this._anchor=e}get shouldFocus(){return this._shouldFocus}set shouldFocus(e){this._shouldFocus=e}get source(){return this._source}set source(e){this._source=e}get insistOnKeepingHoverVisible(){return this._insistOnKeepingHoverVisible}set insistOnKeepingHoverVisible(e){this._insistOnKeepingHoverVisible=e}constructor(e,t){this._editor=e,this._participants=t,this._anchor=null,this._shouldFocus=!1,this._source=0,this._insistOnKeepingHoverVisible=!1}static _getLineDecorations(e,t){if(t.type!==1&&!t.supportsMarkerHover)return[];const i=e.getModel(),n=t.range.startLineNumber;if(n>i.getLineCount())return[];const s=i.getLineMaxColumn(n);return e.getLineDecorations(n).filter(r=>{if(r.options.isWholeLine)return!0;const a=r.range.startLineNumber===n?r.range.startColumn:1,l=r.range.endLineNumber===n?r.range.endColumn:s;if(r.options.showIfCollapsed){if(a>t.range.startColumn+1||t.range.endColumn-1>l)return!1}else if(a>t.range.startColumn||t.range.endColumn>l)return!1;return!0})}computeAsync(e){const t=this._anchor;if(!this._editor.hasModel()||!t)return Ms.EMPTY;const i=ew._getLineDecorations(this._editor,t);return Ms.merge(this._participants.map(n=>n.computeAsync?n.computeAsync(t,i,e):Ms.EMPTY))}computeSync(){if(!this._editor.hasModel()||!this._anchor)return[];const e=ew._getLineDecorations(this._editor,this._anchor);let t=[];for(const i of this._participants)t=t.concat(i.computeSync(this._anchor,e));return Ag(t)}}class gB{constructor(e,t,i){this.anchor=e,this.hoverParts=t,this.isComplete=i}filter(e){const t=this.hoverParts.filter(i=>i.isValidForHoverAnchor(e));return t.length===this.hoverParts.length?this:new xce(this,this.anchor,t,this.isComplete)}}class xce extends gB{constructor(e,t,i,n){super(t,i,n),this.original=e}filter(e){return this.original.filter(e)}}var kce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Dce=function(o,e){return function(t,i){e(t,i,o)}};const F4=ce;let kE=class extends z{get hasContent(){return this._hasContent}constructor(e){super(),this._keybindingService=e,this.actions=[],this._hasContent=!1,this.hoverElement=F4("div.hover-row.status-bar"),this.hoverElement.tabIndex=0,this.actionsElement=Z(this.hoverElement,F4("div.actions"))}addAction(e){const t=this._keybindingService.lookupKeybinding(e.commandId),i=t?t.getLabel():null;this._hasContent=!0;const n=this._register(ey.render(this.actionsElement,e,i));return this.actions.push(n),n}append(e){const t=Z(this.actionsElement,e);return this._hasContent=!0,t}};kE=kce([Dce(0,vt)],kE);class Ice{constructor(e,t,i){this.provider=e,this.hover=t,this.ordinal=i}}async function Ece(o,e,t,i,n){const s=await Promise.resolve(o.provideHover(t,i,n)).catch($n);if(!(!s||!Nce(s)))return new Ice(o,s,e)}function pM(o,e,t,i,n=!1){const r=o.ordered(e,n).map((a,l)=>Ece(a,l,e,t,i));return Ms.fromPromises(r).coalesce()}function mB(o,e,t,i,n=!1){return pM(o,e,t,i,n).map(s=>s.hover).toPromise()}Wo("_executeHoverProvider",(o,e,t)=>{const i=o.get(Se);return mB(i.hoverProvider,e,t,ut.None)});Wo("_executeHoverProvider_recursive",(o,e,t)=>{const i=o.get(Se);return mB(i.hoverProvider,e,t,ut.None,!0)});function Nce(o){const e=typeof o.range<"u",t=typeof o.contents<"u"&&o.contents&&o.contents.length>0;return e&&t}var Tce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},ld=function(o,e){return function(t,i){e(t,i,o)}};const gf=ce,Mce=Wi("hover-increase-verbosity",ie.add,m("increaseHoverVerbosity","Icon for increaseing hover verbosity.")),Rce=Wi("hover-decrease-verbosity",ie.remove,m("decreaseHoverVerbosity","Icon for decreasing hover verbosity."));class hr{constructor(e,t,i,n,s,r=void 0){this.owner=e,this.range=t,this.contents=i,this.isBeforeContent=n,this.ordinal=s,this.source=r}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}class pB{constructor(e,t,i){this.hover=e,this.hoverProvider=t,this.hoverPosition=i}supportsVerbosityAction(e){switch(e){case is.Increase:return this.hover.canIncreaseVerbosity??!1;case is.Decrease:return this.hover.canDecreaseVerbosity??!1}}}let P_=class{constructor(e,t,i,n,s,r,a,l){this._editor=e,this._languageService=t,this._openerService=i,this._configurationService=n,this._languageFeaturesService=s,this._keybindingService=r,this._hoverService=a,this._commandService=l,this.hoverOrdinal=3}createLoadingMessage(e){return new hr(this,e.range,[new Js().appendText(m("modesContentHover.loading","Loading..."))],!1,2e3)}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];const i=this._editor.getModel(),n=e.range.startLineNumber,s=i.getLineMaxColumn(n),r=[];let a=1e3;const l=i.getLineLength(n),c=i.getLanguageIdAtPosition(e.range.startLineNumber,e.range.startColumn),d=this._editor.getOption(118),h=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:c});let u=!1;d>=0&&l>d&&e.range.startColumn>=d&&(u=!0,r.push(new hr(this,e.range,[{value:m("stopped rendering","Rendering paused for long line for performance reasons. This can be configured via `editor.stopRenderingLineAfter`.")}],!1,a++))),!u&&typeof h=="number"&&l>=h&&r.push(new hr(this,e.range,[{value:m("too many characters","Tokenization is skipped for long lines for performance reasons. This can be configured via `editor.maxTokenizationLineLength`.")}],!1,a++));let f=!1;for(const g of t){const p=g.range.startLineNumber===n?g.range.startColumn:1,_=g.range.endLineNumber===n?g.range.endColumn:s,b=g.options.hoverMessage;if(!b||bg(b))continue;g.options.beforeContentClassName&&(f=!0);const C=new I(e.range.startLineNumber,p,e.range.startLineNumber,_);r.push(new hr(this,C,T5(b),f,a++))}return r}computeAsync(e,t,i){if(!this._editor.hasModel()||e.type!==1)return Ms.EMPTY;const n=this._editor.getModel(),s=this._languageFeaturesService.hoverProvider;return s.has(n)?this._getMarkdownHovers(s,n,e,i):Ms.EMPTY}_getMarkdownHovers(e,t,i,n){const s=i.range.getStartPosition();return pM(e,t,s,n).filter(l=>!bg(l.hover.contents)).map(l=>{const c=l.hover.range?I.lift(l.hover.range):i.range,d=new pB(l.hover,l.provider,s);return new hr(this,c,l.hover.contents,!1,l.ordinal,d)})}renderHoverParts(e,t){return this._renderedHoverParts=new Ace(t,e.fragment,this,this._editor,this._languageService,this._openerService,this._commandService,this._keybindingService,this._hoverService,this._configurationService,e.onContentsChanged),this._renderedHoverParts}updateMarkdownHoverVerbosityLevel(e,t,i){return Promise.resolve(this._renderedHoverParts?.updateMarkdownHoverPartVerbosityLevel(e,t,i))}};P_=Tce([ld(1,qt),ld(2,Vo),ld(3,lt),ld(4,Se),ld(5,vt),ld(6,au),ld(7,hi)],P_);class h1{constructor(e,t,i){this.hoverPart=e,this.hoverElement=t,this.disposables=i}dispose(){this.disposables.dispose()}}class Ace{constructor(e,t,i,n,s,r,a,l,c,d,h){this._hoverParticipant=i,this._editor=n,this._languageService=s,this._openerService=r,this._commandService=a,this._keybindingService=l,this._hoverService=c,this._configurationService=d,this._onFinishedRendering=h,this._ongoingHoverOperations=new Map,this._disposables=new X,this.renderedHoverParts=this._renderHoverParts(e,t,this._onFinishedRendering),this._disposables.add(_e(()=>{this.renderedHoverParts.forEach(u=>{u.dispose()}),this._ongoingHoverOperations.forEach(u=>{u.tokenSource.dispose(!0)})}))}_renderHoverParts(e,t,i){return e.sort(rs(n=>n.ordinal,ia)),e.map(n=>{const s=this._renderHoverPart(n,i);return t.appendChild(s.hoverElement),s})}_renderHoverPart(e,t){const i=this._renderMarkdownHover(e,t),n=i.hoverElement,s=e.source,r=new X;if(r.add(i),!s)return new h1(e,n,r);const a=s.supportsVerbosityAction(is.Increase),l=s.supportsVerbosityAction(is.Decrease);if(!a&&!l)return new h1(e,n,r);const c=gf("div.verbosity-actions");return n.prepend(c),r.add(this._renderHoverExpansionAction(c,is.Increase,a)),r.add(this._renderHoverExpansionAction(c,is.Decrease,l)),new h1(e,n,r)}_renderMarkdownHover(e,t){return Pce(this._editor,e,this._languageService,this._openerService,t)}_renderHoverExpansionAction(e,t,i){const n=new X,s=t===is.Increase,r=Z(e,gf(Ee.asCSSSelector(s?Mce:Rce)));r.tabIndex=0;const a=new gg("mouse",!1,{target:e,position:{hoverPosition:0}},this._configurationService,this._hoverService);if(n.add(this._hoverService.setupManagedHover(a,r,Oce(this._keybindingService,t))),!i)return r.classList.add("disabled"),n;r.classList.add("enabled");const l=()=>this._commandService.executeCommand(t===is.Increase?Ey:Ny);return n.add(new t7(r,l)),n.add(new i7(r,l,[3,10])),n}async updateMarkdownHoverPartVerbosityLevel(e,t,i=!0){const n=this._editor.getModel();if(!n)return;const s=this._getRenderedHoverPartAtIndex(t),r=s?.hoverPart.source;if(!s||!r?.supportsVerbosityAction(e))return;const a=await this._fetchHover(r,n,e);if(!a)return;const l=new pB(a,r.hoverProvider,r.hoverPosition),c=s.hoverPart,d=new hr(this._hoverParticipant,c.range,a.contents,c.isBeforeContent,c.ordinal,l),h=this._renderHoverPart(d,this._onFinishedRendering);return this._replaceRenderedHoverPartAtIndex(t,h,d),i&&this._focusOnHoverPartWithIndex(t),{hoverPart:d,hoverElement:h.hoverElement}}async _fetchHover(e,t,i){let n=i===is.Increase?1:-1;const s=e.hoverProvider,r=this._ongoingHoverOperations.get(s);r&&(r.tokenSource.cancel(),n+=r.verbosityDelta);const a=new In;this._ongoingHoverOperations.set(s,{verbosityDelta:n,tokenSource:a});const l={verbosityRequest:{verbosityDelta:n,previousHover:e.hover}};let c;try{c=await Promise.resolve(s.provideHover(t,e.hoverPosition,a.token,l))}catch(d){$n(d)}return a.dispose(),this._ongoingHoverOperations.delete(s),c}_replaceRenderedHoverPartAtIndex(e,t,i){if(e>=this.renderedHoverParts.length||e<0)return;const n=this.renderedHoverParts[e],s=n.hoverElement,r=t.hoverElement,a=Array.from(r.children);s.replaceChildren(...a);const l=new h1(i,s,t.disposables);s.focus(),n.dispose(),this.renderedHoverParts[e]=l}_focusOnHoverPartWithIndex(e){this.renderedHoverParts[e].hoverElement.focus()}_getRenderedHoverPartAtIndex(e){return this.renderedHoverParts[e]}dispose(){this._disposables.dispose()}}function Pce(o,e,t,i,n){const s=new X,r=gf("div.hover-row"),a=gf("div.hover-row-contents");r.appendChild(a);const l=e.contents;for(const d of l){if(bg(d))continue;const h=gf("div.markdown-hover"),u=Z(h,gf("div.hover-contents")),f=s.add(new Wh({editor:o},t,i));s.add(f.onDidRenderAsync(()=>{u.className="hover-contents code-hover-contents",n()}));const g=s.add(f.render(d));u.appendChild(g.element),a.appendChild(h)}return{hoverPart:e,hoverElement:r,dispose(){s.dispose()}}}function Oce(o,e){switch(e){case is.Increase:{const t=o.lookupKeybinding(Ey);return t?m("increaseVerbosityWithKb","Increase Hover Verbosity ({0})",t.getLabel()):m("increaseVerbosity","Increase Hover Verbosity")}case is.Decrease:{const t=o.lookupKeybinding(Ny);return t?m("decreaseVerbosityWithKb","Decrease Hover Verbosity ({0})",t.getLabel()):m("decreaseVerbosity","Decrease Hover Verbosity")}}}var _B=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},DE=function(o,e){return function(t,i){e(t,i,o)}};let tw=class{constructor(e){this._editorWorkerService=e}async provideDocumentColors(e,t){return this._editorWorkerService.computeDefaultDocumentColors(e.uri)}provideColorPresentations(e,t,i){const n=t.range,s=t.color,r=s.alpha,a=new q(new qe(Math.round(255*s.red),Math.round(255*s.green),Math.round(255*s.blue),r)),l=r?q.Format.CSS.formatRGB(a):q.Format.CSS.formatRGBA(a),c=r?q.Format.CSS.formatHSL(a):q.Format.CSS.formatHSLA(a),d=r?q.Format.CSS.formatHex(a):q.Format.CSS.formatHexA(a),h=[];return h.push({label:l,textEdit:{range:n,text:l}}),h.push({label:c,textEdit:{range:n,text:c}}),h.push({label:d,textEdit:{range:n,text:d}}),h}};tw=_B([DE(0,Zc)],tw);let IE=class extends z{constructor(e,t){super(),this._register(e.colorProvider.register("*",new tw(t)))}};IE=_B([DE(0,Se),DE(1,Zc)],IE);Ote(IE);async function bB(o,e,t,i=!0){return _M(new Fce,o,e,t,i)}function CB(o,e,t,i){return Promise.resolve(t.provideColorPresentations(o,e,i))}class Fce{constructor(){}async compute(e,t,i,n){const s=await e.provideDocumentColors(t,i);if(Array.isArray(s))for(const r of s)n.push({colorInfo:r,provider:e});return Array.isArray(s)}}class Bce{constructor(){}async compute(e,t,i,n){const s=await e.provideDocumentColors(t,i);if(Array.isArray(s))for(const r of s)n.push({range:r.range,color:[r.color.red,r.color.green,r.color.blue,r.color.alpha]});return Array.isArray(s)}}class Wce{constructor(e){this.colorInfo=e}async compute(e,t,i,n){const s=await e.provideColorPresentations(t,this.colorInfo,ut.None);return Array.isArray(s)&&n.push(...s),Array.isArray(s)}}async function _M(o,e,t,i,n){let s=!1,r;const a=[],l=e.ordered(t);for(let c=l.length-1;c>=0;c--){const d=l[c];if(d instanceof tw)r=d;else try{await o.compute(d,t,i,a)&&(s=!0)}catch(h){$n(h)}}return s?a:r&&n?(await o.compute(r,t,i,a),a):[]}function vB(o,e){const{colorProvider:t}=o.get(Se),i=o.get(Fi).getModel(e);if(!i)throw na();const n=o.get(lt).getValue("editor.defaultColorDecorators",{resource:e});return{model:i,colorProviderRegistry:t,isDefaultColorDecoratorsEnabled:n}}bt.registerCommand("_executeDocumentColorProvider",function(o,...e){const[t]=e;if(!(t instanceof ve))throw na();const{model:i,colorProviderRegistry:n,isDefaultColorDecoratorsEnabled:s}=vB(o,t);return _M(new Bce,n,i,ut.None,s)});bt.registerCommand("_executeColorPresentationProvider",function(o,...e){const[t,i]=e,{uri:n,range:s}=i;if(!(n instanceof ve)||!Array.isArray(t)||t.length!==4||!I.isIRange(s))throw na();const{model:r,colorProviderRegistry:a,isDefaultColorDecoratorsEnabled:l}=vB(o,n),[c,d,h,u]=t;return _M(new Wce({range:s,color:{red:c,green:d,blue:h,alpha:u}}),a,r,ut.None,l)});var Hce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},mL=function(o,e){return function(t,i){e(t,i,o)}},EE;const Vce=Object.create({});var Dc;let Tg=(Dc=class extends z{constructor(e,t,i,n){super(),this._editor=e,this._configurationService=t,this._languageFeaturesService=i,this._localToDispose=this._register(new X),this._decorationsIds=[],this._colorDatas=new Map,this._colorDecoratorIds=this._editor.createDecorationsCollection(),this._ruleFactory=new kv(this._editor),this._decoratorLimitReporter=new zce,this._colorDecorationClassRefs=this._register(new X),this._debounceInformation=n.for(i.colorProvider,"Document Colors",{min:EE.RECOMPUTE_TIME}),this._register(e.onDidChangeModel(()=>{this._isColorDecoratorsEnabled=this.isEnabled(),this.updateColors()})),this._register(e.onDidChangeModelLanguage(()=>this.updateColors())),this._register(i.colorProvider.onDidChange(()=>this.updateColors())),this._register(e.onDidChangeConfiguration(s=>{const r=this._isColorDecoratorsEnabled;this._isColorDecoratorsEnabled=this.isEnabled(),this._isDefaultColorDecoratorsEnabled=this._editor.getOption(148);const a=r!==this._isColorDecoratorsEnabled||s.hasChanged(21),l=s.hasChanged(148);(a||l)&&(this._isColorDecoratorsEnabled?this.updateColors():this.removeAllDecorations())})),this._timeoutTimer=null,this._computePromise=null,this._isColorDecoratorsEnabled=this.isEnabled(),this._isDefaultColorDecoratorsEnabled=this._editor.getOption(148),this.updateColors()}isEnabled(){const e=this._editor.getModel();if(!e)return!1;const t=e.getLanguageId(),i=this._configurationService.getValue(t);if(i&&typeof i=="object"){const n=i.colorDecorators;if(n&&n.enable!==void 0&&!n.enable)return n.enable}return this._editor.getOption(20)}static get(e){return e.getContribution(this.ID)}dispose(){this.stop(),this.removeAllDecorations(),super.dispose()}updateColors(){if(this.stop(),!this._isColorDecoratorsEnabled)return;const e=this._editor.getModel();!e||!this._languageFeaturesService.colorProvider.has(e)||(this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._timeoutTimer||(this._timeoutTimer=new wr,this._timeoutTimer.cancelAndSet(()=>{this._timeoutTimer=null,this.beginCompute()},this._debounceInformation.get(e)))})),this.beginCompute())}async beginCompute(){this._computePromise=wa(async e=>{const t=this._editor.getModel();if(!t)return[];const i=new Hs(!1),n=await bB(this._languageFeaturesService.colorProvider,t,e,this._isDefaultColorDecoratorsEnabled);return this._debounceInformation.update(t,i.elapsed()),n});try{const e=await this._computePromise;this.updateDecorations(e),this.updateColorDecorators(e),this._computePromise=null}catch(e){Ze(e)}}stop(){this._timeoutTimer&&(this._timeoutTimer.cancel(),this._timeoutTimer=null),this._computePromise&&(this._computePromise.cancel(),this._computePromise=null),this._localToDispose.clear()}updateDecorations(e){const t=e.map(i=>({range:{startLineNumber:i.colorInfo.range.startLineNumber,startColumn:i.colorInfo.range.startColumn,endLineNumber:i.colorInfo.range.endLineNumber,endColumn:i.colorInfo.range.endColumn},options:kt.EMPTY}));this._editor.changeDecorations(i=>{this._decorationsIds=i.deltaDecorations(this._decorationsIds,t),this._colorDatas=new Map,this._decorationsIds.forEach((n,s)=>this._colorDatas.set(n,e[s]))})}updateColorDecorators(e){this._colorDecorationClassRefs.clear();const t=[],i=this._editor.getOption(21);for(let s=0;sthis._colorDatas.has(n.id));return i.length===0?null:this._colorDatas.get(i[0].id)}isColorDecoration(e){return this._colorDecoratorIds.has(e)}},EE=Dc,Dc.ID="editor.contrib.colorDetector",Dc.RECOMPUTE_TIME=1e3,Dc);Tg=EE=Hce([mL(1,lt),mL(2,Se),mL(3,q0)],Tg);class zce{constructor(){this._onDidChange=new A,this._computed=0,this._limited=!1}update(e,t){(e!==this._computed||t!==this._limited)&&(this._computed=e,this._limited=t,this._onDidChange.fire())}}Ho(Tg.ID,Tg,1);class Uce{get color(){return this._color}set color(e){this._color.equals(e)||(this._color=e,this._onDidChangeColor.fire(e))}get presentation(){return this.colorPresentations[this.presentationIndex]}get colorPresentations(){return this._colorPresentations}set colorPresentations(e){this._colorPresentations=e,this.presentationIndex>e.length-1&&(this.presentationIndex=0),this._onDidChangePresentation.fire(this.presentation)}constructor(e,t,i){this.presentationIndex=i,this._onColorFlushed=new A,this.onColorFlushed=this._onColorFlushed.event,this._onDidChangeColor=new A,this.onDidChangeColor=this._onDidChangeColor.event,this._onDidChangePresentation=new A,this.onDidChangePresentation=this._onDidChangePresentation.event,this.originalColor=e,this._color=e,this._colorPresentations=t}selectNextColorPresentation(){this.presentationIndex=(this.presentationIndex+1)%this.colorPresentations.length,this.flushColor(),this._onDidChangePresentation.fire(this.presentation)}guessColorPresentation(e,t){let i=-1;for(let n=0;n{this.backgroundColor=r.getColor(RC)||q.white})),this._register(U(this._pickedColorNode,ee.CLICK,()=>this.model.selectNextColorPresentation())),this._register(U(this._originalColorNode,ee.CLICK,()=>{this.model.color=this.model.originalColor,this.model.flushColor()})),this._register(t.onDidChangeColor(this.onDidChangeColor,this)),this._register(t.onDidChangePresentation(this.onDidChangePresentation,this)),this._pickedColorNode.style.backgroundColor=q.Format.CSS.format(t.color)||"",this._pickedColorNode.classList.toggle("light",t.color.rgba.a<.5?this.backgroundColor.isLighter():t.color.isLighter()),this.onDidChangeColor(this.model.color),this.showingStandaloneColorPicker&&(this._domNode.classList.add("standalone-colorpicker"),this._closeButton=this._register(new Kce(this._domNode)))}get closeButton(){return this._closeButton}get pickedColorNode(){return this._pickedColorNode}get originalColorNode(){return this._originalColorNode}onDidChangeColor(e){this._pickedColorNode.style.backgroundColor=q.Format.CSS.format(e)||"",this._pickedColorNode.classList.toggle("light",e.rgba.a<.5?this.backgroundColor.isLighter():e.isLighter()),this.onDidChangePresentation()}onDidChangePresentation(){this._pickedColorPresentation.textContent=this.model.presentation?this.model.presentation.label:""}}class Kce extends z{constructor(e){super(),this._onClicked=this._register(new A),this.onClicked=this._onClicked.event,this._button=document.createElement("div"),this._button.classList.add("close-button"),Z(e,this._button);const t=document.createElement("div");t.classList.add("close-button-inner-div"),Z(this._button,t),Z(t,Is(".button"+Ee.asCSSSelector(Wi("color-picker-close",ie.close,m("closeIcon","Icon to close the color picker"))))).classList.add("close-icon"),this._register(U(this._button,ee.CLICK,()=>{this._onClicked.fire()}))}}class jce extends z{constructor(e,t,i,n=!1){super(),this.model=t,this.pixelRatio=i,this._insertButton=null,this._domNode=Is(".colorpicker-body"),Z(e,this._domNode),this._saturationBox=new qce(this._domNode,this.model,this.pixelRatio),this._register(this._saturationBox),this._register(this._saturationBox.onDidChange(this.onDidSaturationValueChange,this)),this._register(this._saturationBox.onColorFlushed(this.flushColor,this)),this._opacityStrip=new Gce(this._domNode,this.model,n),this._register(this._opacityStrip),this._register(this._opacityStrip.onDidChange(this.onDidOpacityChange,this)),this._register(this._opacityStrip.onColorFlushed(this.flushColor,this)),this._hueStrip=new Zce(this._domNode,this.model,n),this._register(this._hueStrip),this._register(this._hueStrip.onDidChange(this.onDidHueChange,this)),this._register(this._hueStrip.onColorFlushed(this.flushColor,this)),n&&(this._insertButton=this._register(new Yce(this._domNode)),this._domNode.classList.add("standalone-colorpicker"))}flushColor(){this.model.flushColor()}onDidSaturationValueChange({s:e,v:t}){const i=this.model.color.hsva;this.model.color=new q(new ea(i.h,e,t,i.a))}onDidOpacityChange(e){const t=this.model.color.hsva;this.model.color=new q(new ea(t.h,t.s,t.v,e))}onDidHueChange(e){const t=this.model.color.hsva,i=(1-e)*360;this.model.color=new q(new ea(i===360?0:i,t.s,t.v,t.a))}get domNode(){return this._domNode}get saturationBox(){return this._saturationBox}get enterButton(){return this._insertButton}layout(){this._saturationBox.layout(),this._opacityStrip.layout(),this._hueStrip.layout()}}class qce extends z{constructor(e,t,i){super(),this.model=t,this.pixelRatio=i,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new A,this.onColorFlushed=this._onColorFlushed.event,this._domNode=Is(".saturation-wrap"),Z(e,this._domNode),this._canvas=document.createElement("canvas"),this._canvas.className="saturation-box",Z(this._domNode,this._canvas),this.selection=Is(".saturation-selection"),Z(this._domNode,this.selection),this.layout(),this._register(U(this._domNode,ee.POINTER_DOWN,n=>this.onPointerDown(n))),this._register(this.model.onDidChangeColor(this.onDidChangeColor,this)),this.monitor=null}get domNode(){return this._domNode}onPointerDown(e){if(!e.target||!(e.target instanceof Element))return;this.monitor=this._register(new Hg);const t=gi(this._domNode);e.target!==this.selection&&this.onDidChangePosition(e.offsetX,e.offsetY),this.monitor.startMonitoring(e.target,e.pointerId,e.buttons,n=>this.onDidChangePosition(n.pageX-t.left,n.pageY-t.top),()=>null);const i=U(e.target.ownerDocument,ee.POINTER_UP,()=>{this._onColorFlushed.fire(),i.dispose(),this.monitor&&(this.monitor.stopMonitoring(!0),this.monitor=null)},!0)}onDidChangePosition(e,t){const i=Math.max(0,Math.min(1,e/this.width)),n=Math.max(0,Math.min(1,1-t/this.height));this.paintSelection(i,n),this._onDidChange.fire({s:i,v:n})}layout(){this.width=this._domNode.offsetWidth,this.height=this._domNode.offsetHeight,this._canvas.width=this.width*this.pixelRatio,this._canvas.height=this.height*this.pixelRatio,this.paint();const e=this.model.color.hsva;this.paintSelection(e.s,e.v)}paint(){const e=this.model.color.hsva,t=new q(new ea(e.h,1,1,1)),i=this._canvas.getContext("2d"),n=i.createLinearGradient(0,0,this._canvas.width,0);n.addColorStop(0,"rgba(255, 255, 255, 1)"),n.addColorStop(.5,"rgba(255, 255, 255, 0.5)"),n.addColorStop(1,"rgba(255, 255, 255, 0)");const s=i.createLinearGradient(0,0,0,this._canvas.height);s.addColorStop(0,"rgba(0, 0, 0, 0)"),s.addColorStop(1,"rgba(0, 0, 0, 1)"),i.rect(0,0,this._canvas.width,this._canvas.height),i.fillStyle=q.Format.CSS.format(t),i.fill(),i.fillStyle=n,i.fill(),i.fillStyle=s,i.fill()}paintSelection(e,t){this.selection.style.left=`${e*this.width}px`,this.selection.style.top=`${this.height-t*this.height}px`}onDidChangeColor(e){if(this.monitor&&this.monitor.isMonitoring())return;this.paint();const t=e.hsva;this.paintSelection(t.s,t.v)}}class wB extends z{constructor(e,t,i=!1){super(),this.model=t,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new A,this.onColorFlushed=this._onColorFlushed.event,i?(this.domNode=Z(e,Is(".standalone-strip")),this.overlay=Z(this.domNode,Is(".standalone-overlay"))):(this.domNode=Z(e,Is(".strip")),this.overlay=Z(this.domNode,Is(".overlay"))),this.slider=Z(this.domNode,Is(".slider")),this.slider.style.top="0px",this._register(U(this.domNode,ee.POINTER_DOWN,n=>this.onPointerDown(n))),this._register(t.onDidChangeColor(this.onDidChangeColor,this)),this.layout()}layout(){this.height=this.domNode.offsetHeight-this.slider.offsetHeight;const e=this.getValue(this.model.color);this.updateSliderPosition(e)}onDidChangeColor(e){const t=this.getValue(e);this.updateSliderPosition(t)}onPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const t=this._register(new Hg),i=gi(this.domNode);this.domNode.classList.add("grabbing"),e.target!==this.slider&&this.onDidChangeTop(e.offsetY),t.startMonitoring(e.target,e.pointerId,e.buttons,s=>this.onDidChangeTop(s.pageY-i.top),()=>null);const n=U(e.target.ownerDocument,ee.POINTER_UP,()=>{this._onColorFlushed.fire(),n.dispose(),t.stopMonitoring(!0),this.domNode.classList.remove("grabbing")},!0)}onDidChangeTop(e){const t=Math.max(0,Math.min(1,1-e/this.height));this.updateSliderPosition(t),this._onDidChange.fire(t)}updateSliderPosition(e){this.slider.style.top=`${(1-e)*this.height}px`}}class Gce extends wB{constructor(e,t,i=!1){super(e,t,i),this.domNode.classList.add("opacity-strip"),this.onDidChangeColor(this.model.color)}onDidChangeColor(e){super.onDidChangeColor(e);const{r:t,g:i,b:n}=e.rgba,s=new q(new qe(t,i,n,1)),r=new q(new qe(t,i,n,0));this.overlay.style.background=`linear-gradient(to bottom, ${s} 0%, ${r} 100%)`}getValue(e){return e.hsva.a}}class Zce extends wB{constructor(e,t,i=!1){super(e,t,i),this.domNode.classList.add("hue-strip")}getValue(e){return 1-e.hsva.h/360}}class Yce extends z{constructor(e){super(),this._onClicked=this._register(new A),this.onClicked=this._onClicked.event,this._button=Z(e,document.createElement("button")),this._button.classList.add("insert-button"),this._button.textContent="Insert",this._register(U(this._button,ee.CLICK,()=>{this._onClicked.fire()}))}get button(){return this._button}}class Qce extends xr{constructor(e,t,i,n,s=!1){super(),this.model=t,this.pixelRatio=i,this._register(Zp.getInstance(fe(e)).onDidChange(()=>this.layout())),this._domNode=Is(".colorpicker-widget"),e.appendChild(this._domNode),this.header=this._register(new $ce(this._domNode,this.model,n,s)),this.body=this._register(new jce(this._domNode,this.model,this.pixelRatio,s))}layout(){this.body.layout()}get domNode(){return this._domNode}}var yB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},SB=function(o,e){return function(t,i){e(t,i,o)}};class Xce{constructor(e,t,i,n){this.owner=e,this.range=t,this.model=i,this.provider=n,this.forceShowAtRange=!0}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}let iw=class{constructor(e,t){this._editor=e,this._themeService=t,this.hoverOrdinal=2}computeSync(e,t){return[]}computeAsync(e,t,i){return Ms.fromPromise(this._computeAsync(e,t,i))}async _computeAsync(e,t,i){if(!this._editor.hasModel())return[];const n=Tg.get(this._editor);if(!n)return[];for(const s of t){if(!n.isColorDecoration(s))continue;const r=n.getColorData(s.range.getStartPosition());if(r)return[await LB(this,this._editor.getModel(),r.colorInfo,r.provider)]}return[]}renderHoverParts(e,t){const i=xB(this,this._editor,this._themeService,t,e);if(!i)return new Ng([]);this._colorPicker=i.colorPicker;const n={hoverPart:i.hoverPart,hoverElement:this._colorPicker.domNode,dispose(){i.disposables.dispose()}};return new Ng([n])}handleResize(){this._colorPicker?.layout()}isColorPickerVisible(){return!!this._colorPicker}};iw=yB([SB(1,en)],iw);class Jce{constructor(e,t,i,n){this.owner=e,this.range=t,this.model=i,this.provider=n}}let nw=class{constructor(e,t){this._editor=e,this._themeService=t,this._color=null}async createColorHover(e,t,i){if(!this._editor.hasModel()||!Tg.get(this._editor))return null;const s=await bB(i,this._editor.getModel(),ut.None);let r=null,a=null;for(const h of s){const u=h.colorInfo;I.containsRange(u.range,e.range)&&(r=u,a=h.provider)}const l=r??e,c=a??t,d=!!r;return{colorHover:await LB(this,this._editor.getModel(),l,c),foundInEditor:d}}async updateEditorModel(e){if(!this._editor.hasModel())return;const t=e.model;let i=new I(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn);this._color&&(await X1(this._editor.getModel(),t,this._color,i,e),i=kB(this._editor,i,t))}renderHoverParts(e,t){return xB(this,this._editor,this._themeService,t,e)}set color(e){this._color=e}get color(){return this._color}};nw=yB([SB(1,en)],nw);async function LB(o,e,t,i){const n=e.getValueInRange(t.range),{red:s,green:r,blue:a,alpha:l}=t.color,c=new qe(Math.round(s*255),Math.round(r*255),Math.round(a*255),l),d=new q(c),h=await CB(e,t,i,ut.None),u=new Uce(d,[],0);return u.colorPresentations=h||[],u.guessColorPresentation(d,n),o instanceof iw?new Xce(o,I.lift(t.range),u,i):new Jce(o,I.lift(t.range),u,i)}function xB(o,e,t,i,n){if(i.length===0||!e.hasModel())return;if(n.setMinimumDimensions){const u=e.getOption(67)+8;n.setMinimumDimensions(new rt(302,u))}const s=new X,r=i[0],a=e.getModel(),l=r.model,c=s.add(new Qce(n.fragment,l,e.getOption(144),t,o instanceof nw));let d=!1,h=new I(r.range.startLineNumber,r.range.startColumn,r.range.endLineNumber,r.range.endColumn);if(o instanceof nw){const u=r.model.color;o.color=u,X1(a,l,u,h,r),s.add(l.onColorFlushed(f=>{o.color=f}))}else s.add(l.onColorFlushed(async u=>{await X1(a,l,u,h,r),d=!0,h=kB(e,h,l)}));return s.add(l.onDidChangeColor(u=>{X1(a,l,u,h,r)})),s.add(e.onDidChangeModelContent(u=>{d?d=!1:(n.hide(),e.focus())})),{hoverPart:r,colorPicker:c,disposables:s}}function kB(o,e,t){const i=[],n=t.presentation.textEdit??{range:e,text:t.presentation.label,forceMoveMarkers:!1};i.push(n),t.presentation.additionalTextEdits&&i.push(...t.presentation.additionalTextEdits);const s=I.lift(n.range),r=o.getModel()._setTrackedRange(null,s,3);return o.executeEdits("colorpicker",i),o.pushUndoStop(),o.getModel()._getTrackedRange(r)??s}async function X1(o,e,t,i,n){const s=await CB(o,{range:i,color:{red:t.rgba.r/255,green:t.rgba.g/255,blue:t.rgba.b/255,alpha:t.rgba.a}},n.provider,ut.None);e.colorPresentations=s||[]}class DB{constructor(e,t){this.range=e,this.direction=t}}class bM{constructor(e,t,i){this.hint=e,this.anchor=t,this.provider=i,this._isResolved=!1}with(e){const t=new bM(this.hint,e.anchor,this.provider);return t._isResolved=this._isResolved,t._currentResolve=this._currentResolve,t}async resolve(e){if(typeof this.provider.resolveInlayHint=="function"){if(this._currentResolve)return await this._currentResolve,e.isCancellationRequested?void 0:this.resolve(e);this._isResolved||(this._currentResolve=this._doResolve(e).finally(()=>this._currentResolve=void 0)),await this._currentResolve}}async _doResolve(e){try{const t=await Promise.resolve(this.provider.resolveInlayHint(this.hint,e));this.hint.tooltip=t?.tooltip??this.hint.tooltip,this.hint.label=t?.label??this.hint.label,this.hint.textEdits=t?.textEdits??this.hint.textEdits,this._isResolved=!0}catch(t){$n(t),this._isResolved=!1}}}const If=class If{static async create(e,t,i,n){const s=[],r=e.ordered(t).reverse().map(a=>i.map(async l=>{try{const c=await a.provideInlayHints(t,l,n);(c?.hints.length||a.onDidChangeInlayHints)&&s.push([c??If._emptyInlayHintList,a])}catch(c){$n(c)}}));if(await Promise.all(r.flat()),n.isCancellationRequested||t.isDisposed())throw new ha;return new If(i,s,t)}constructor(e,t,i){this._disposables=new X,this.ranges=e,this.provider=new Set;const n=[];for(const[s,r]of t){this._disposables.add(s),this.provider.add(r);for(const a of s.hints){const l=i.validatePosition(a.position);let c="before";const d=If._getRangeAtPosition(i,l);let h;d.getStartPosition().isBefore(l)?(h=I.fromPositions(d.getStartPosition(),l),c="after"):(h=I.fromPositions(l,d.getEndPosition()),c="before"),n.push(new bM(a,new DB(h,c),r))}}this.items=n.sort((s,r)=>P.compare(s.hint.position,r.hint.position))}dispose(){this._disposables.dispose()}static _getRangeAtPosition(e,t){const i=t.lineNumber,n=e.getWordAtPosition(t);if(n)return new I(i,n.startColumn,i,n.endColumn);e.tokenization.tokenizeIfCheap(i);const s=e.tokenization.getLineTokens(i),r=t.column-1,a=s.findTokenIndexAtOffset(r);let l=s.getStartOffset(a),c=s.getEndOffset(a);return c-l===1&&(l===r&&a>1?(l=s.getStartOffset(a-1),c=s.getEndOffset(a-1)):c===r&&aRf(f)?f.command.id:IB()));for(const f of Nl.all())h.has(f.desc.id)&&d.push(new Fs(f.desc.id,so.label(f.desc,{renderShortTitle:!0}),void 0,!0,async()=>{const g=await n.createModelReference(c.uri);try{const p=new Ig(g.object.textEditorModel,I.getStartPosition(c.range)),_=i.item.anchor.range;await a.invokeFunction(f.runEditorCommand.bind(f),e,p,_)}finally{g.dispose()}}));if(i.part.command){const{command:f}=i.part;d.push(new Gi),d.push(new Fs(f.id,f.title,void 0,!0,async()=>{try{await r.executeCommand(f.id,...f.arguments??[])}catch(g){l.notify({severity:bT.Error,source:i.item.provider.displayName,message:g})}}))}const u=e.getOption(128);s.showContextMenu({domForShadowRoot:u?e.getDomNode()??void 0:void 0,getAnchor:()=>{const f=gi(t);return{x:f.left,y:f.top+f.height+8}},getActions:()=>d,onHide:()=>{e.focus()},autoSelectFirstItem:!0})}async function ide(o,e,t,i){const s=await o.get(fo).createModelReference(i.uri);await t.invokeWithinContext(async r=>{const a=e.hasSideBySideModifier,l=r.get(De),c=qn.inPeekEditor.getValue(l),d=!a&&t.getOption(89)&&!c;return new db({openToSide:a,openInPeek:d,muteMessage:!0},{title:{value:"",original:""},id:"",precondition:void 0}).run(r,new Ig(s.object.textEditorModel,I.getStartPosition(i.range)),I.lift(i.range))}),s.dispose()}var nde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Bu=function(o,e){return function(t,i){e(t,i,o)}},Uu;class ow{constructor(){this._entries=new ou(50)}get(e){const t=ow._key(e);return this._entries.get(t)}set(e,t){const i=ow._key(e);this._entries.set(i,t)}static _key(e){return`${e.uri.toString()}/${e.getVersionId()}`}}const EB=He("IInlayHintsCache");Qe(EB,ow,1);class NE{constructor(e,t){this.item=e,this.index=t}get part(){const e=this.item.hint.label;return typeof e=="string"?{label:e}:e[this.index]}}class sde{constructor(e,t){this.part=e,this.hasTriggerModifier=t}}var ml;let TE=(ml=class{static get(e){return e.getContribution(Uu.ID)??void 0}constructor(e,t,i,n,s,r,a){this._editor=e,this._languageFeaturesService=t,this._inlayHintsCache=n,this._commandService=s,this._notificationService=r,this._instaService=a,this._disposables=new X,this._sessionDisposables=new X,this._decorationsMetadata=new Map,this._ruleFactory=new kv(this._editor),this._activeRenderMode=0,this._debounceInfo=i.for(t.inlayHintsProvider,"InlayHint",{min:25}),this._disposables.add(t.inlayHintsProvider.onDidChange(()=>this._update())),this._disposables.add(e.onDidChangeModel(()=>this._update())),this._disposables.add(e.onDidChangeModelLanguage(()=>this._update())),this._disposables.add(e.onDidChangeConfiguration(l=>{l.hasChanged(142)&&this._update()})),this._update()}dispose(){this._sessionDisposables.dispose(),this._removeAllDecorations(),this._disposables.dispose()}_update(){this._sessionDisposables.clear(),this._removeAllDecorations();const e=this._editor.getOption(142);if(e.enabled==="off")return;const t=this._editor.getModel();if(!t||!this._languageFeaturesService.inlayHintsProvider.has(t))return;if(e.enabled==="on")this._activeRenderMode=0;else{let a,l;e.enabled==="onUnlessPressed"?(a=0,l=1):(a=1,l=0),this._activeRenderMode=a,this._sessionDisposables.add(rl.getInstance().event(c=>{if(!this._editor.hasModel())return;const d=c.altKey&&c.ctrlKey&&!(c.shiftKey||c.metaKey)?l:a;if(d!==this._activeRenderMode){this._activeRenderMode=d;const h=this._editor.getModel(),u=this._copyInlayHintsWithCurrentAnchor(h);this._updateHintsDecorators([h.getFullModelRange()],u),r.schedule(0)}}))}const i=this._inlayHintsCache.get(t);i&&this._updateHintsDecorators([t.getFullModelRange()],i),this._sessionDisposables.add(_e(()=>{t.isDisposed()||this._cacheHintsForFastRestore(t)}));let n;const s=new Set,r=new ci(async()=>{const a=Date.now();n?.dispose(!0),n=new In;const l=t.onWillDispose(()=>n?.cancel());try{const c=n.token,d=await sw.create(this._languageFeaturesService.inlayHintsProvider,t,this._getHintsRanges(),c);if(r.delay=this._debounceInfo.update(t,Date.now()-a),c.isCancellationRequested){d.dispose();return}for(const h of d.provider)typeof h.onDidChangeInlayHints=="function"&&!s.has(h)&&(s.add(h),this._sessionDisposables.add(h.onDidChangeInlayHints(()=>{r.isScheduled()||r.schedule()})));this._sessionDisposables.add(d),this._updateHintsDecorators(d.ranges,d.items),this._cacheHintsForFastRestore(t)}catch(c){Ze(c)}finally{n.dispose(),l.dispose()}},this._debounceInfo.get(t));this._sessionDisposables.add(r),this._sessionDisposables.add(_e(()=>n?.dispose(!0))),r.schedule(0),this._sessionDisposables.add(this._editor.onDidScrollChange(a=>{(a.scrollTopChanged||!r.isScheduled())&&r.schedule()})),this._sessionDisposables.add(this._editor.onDidChangeModelContent(a=>{n?.cancel();const l=Math.max(r.delay,1250);r.schedule(l)})),this._sessionDisposables.add(this._installDblClickGesture(()=>r.schedule(0))),this._sessionDisposables.add(this._installLinkGesture()),this._sessionDisposables.add(this._installContextMenu())}_installLinkGesture(){const e=new X,t=e.add(new X8(this._editor)),i=new X;return e.add(i),e.add(t.onMouseMoveOrRelevantKeyDown(n=>{const[s]=n,r=this._getInlayHintLabelPart(s),a=this._editor.getModel();if(!r||!a){i.clear();return}const l=new In;i.add(_e(()=>l.dispose(!0))),r.item.resolve(l.token),this._activeInlayHintPart=r.part.command||r.part.location?new sde(r,s.hasTriggerModifier):void 0;const c=a.validatePosition(r.item.hint.position).lineNumber,d=new I(c,1,c,a.getLineMaxColumn(c)),h=this._getInlineHintsForRange(d);this._updateHintsDecorators([d],h),i.add(_e(()=>{this._activeInlayHintPart=void 0,this._updateHintsDecorators([d],h)}))})),e.add(t.onCancel(()=>i.clear())),e.add(t.onExecute(async n=>{const s=this._getInlayHintLabelPart(n);if(s){const r=s.part;r.location?this._instaService.invokeFunction(ide,n,this._editor,r.location):WL.is(r.command)&&await this._invokeCommand(r.command,s.item)}})),e}_getInlineHintsForRange(e){const t=new Set;for(const i of this._decorationsMetadata.values())e.containsRange(i.item.anchor.range)&&t.add(i.item);return Array.from(t)}_installDblClickGesture(e){return this._editor.onMouseUp(async t=>{if(t.event.detail!==2)return;const i=this._getInlayHintLabelPart(t);if(i&&(t.event.preventDefault(),await i.item.resolve(ut.None),Ps(i.item.hint.textEdits))){const n=i.item.hint.textEdits.map(s=>aa.replace(I.lift(s.range),s.text));this._editor.executeEdits("inlayHint.default",n),e()}})}_installContextMenu(){return this._editor.onContextMenu(async e=>{if(!Ei(e.event.target))return;const t=this._getInlayHintLabelPart(e);t&&await this._instaService.invokeFunction(tde,this._editor,e.event.target,t)})}_getInlayHintLabelPart(e){if(e.target.type!==6)return;const t=e.target.detail.injectedText?.options;if(t instanceof Bc&&t?.attachedData instanceof NE)return t.attachedData}async _invokeCommand(e,t){try{await this._commandService.executeCommand(e.id,...e.arguments??[])}catch(i){this._notificationService.notify({severity:bT.Error,source:t.provider.displayName,message:i})}}_cacheHintsForFastRestore(e){const t=this._copyInlayHintsWithCurrentAnchor(e);this._inlayHintsCache.set(e,t)}_copyInlayHintsWithCurrentAnchor(e){const t=new Map;for(const[i,n]of this._decorationsMetadata){if(t.has(n.item))continue;const s=e.getDecorationRange(i);if(s){const r=new DB(s,n.item.anchor.direction),a=n.item.with({anchor:r});t.set(n.item,a)}}return Array.from(t.values())}_getHintsRanges(){const t=this._editor.getModel(),i=this._editor.getVisibleRangesPlusViewportAboveBelow(),n=[];for(const s of i.sort(I.compareRangesUsingStarts)){const r=t.validateRange(new I(s.startLineNumber-30,s.startColumn,s.endLineNumber+30,s.endColumn));n.length===0||!I.areIntersectingOrTouching(n[n.length-1],r)?n.push(r):n[n.length-1]=I.plusRange(n[n.length-1],r)}return n}_updateHintsDecorators(e,t){const i=[],n=(g,p,_,b,C)=>{const w={content:_,inlineClassNameAffectsLetterSpacing:!0,inlineClassName:p.className,cursorStops:b,attachedData:C};i.push({item:g,classNameRef:p,decoration:{range:g.anchor.range,options:{description:"InlayHint",showIfCollapsed:g.anchor.range.isEmpty(),collapseOnReplaceEdit:!g.anchor.range.isEmpty(),stickiness:0,[g.anchor.direction]:this._activeRenderMode===0?w:void 0}}})},s=(g,p)=>{const _=this._ruleFactory.createClassNameRef({width:`${r/3|0}px`,display:"inline-block"});n(g,_," ",p?gr.Right:gr.None)},{fontSize:r,fontFamily:a,padding:l,isUniform:c}=this._getLayoutInfo(),d="--code-editorInlayHintsFontFamily";this._editor.getContainerDomNode().style.setProperty(d,a);let h={line:0,totalLen:0};for(const g of t){if(h.line!==g.anchor.range.startLineNumber&&(h={line:g.anchor.range.startLineNumber,totalLen:0}),h.totalLen>Uu._MAX_LABEL_LEN)continue;g.hint.paddingLeft&&s(g,!1);const p=typeof g.hint.label=="string"?[{label:g.hint.label}]:g.hint.label;for(let _=0;_0&&(y=y.slice(0,-L)+"…",x=!0),n(g,this._ruleFactory.createClassNameRef(v),ode(y),w&&!g.hint.paddingRight?gr.Right:gr.None,new NE(g,_)),x)break}if(g.hint.paddingRight&&s(g,!0),i.length>Uu._MAX_DECORATORS)break}const u=[];for(const[g,p]of this._decorationsMetadata){const _=this._editor.getModel()?.getDecorationRange(g);_&&e.some(b=>b.containsRange(_))&&(u.push(g),p.classNameRef.dispose(),this._decorationsMetadata.delete(g))}const f=qh.capture(this._editor);this._editor.changeDecorations(g=>{const p=g.deltaDecorations(u,i.map(_=>_.decoration));for(let _=0;_i)&&(s=i);const r=e.fontFamily||n;return{fontSize:s,fontFamily:r,padding:t,isUniform:!t&&r===n&&s===i}}_removeAllDecorations(){this._editor.removeDecorations(Array.from(this._decorationsMetadata.keys()));for(const e of this._decorationsMetadata.values())e.classNameRef.dispose();this._decorationsMetadata.clear()}},Uu=ml,ml.ID="editor.contrib.InlayHints",ml._MAX_DECORATORS=1500,ml._MAX_LABEL_LEN=43,ml);TE=Uu=nde([Bu(1,Se),Bu(2,q0),Bu(3,EB),Bu(4,hi),Bu(5,mn),Bu(6,ke)],TE);function ode(o){return o.replace(/[ \t]/g," ")}bt.registerCommand("_executeInlayHintProvider",async(o,...e)=>{const[t,i]=e;ai(ve.isUri(t)),ai(I.isIRange(i));const{inlayHintsProvider:n}=o.get(Se),s=await o.get(fo).createModelReference(t);try{const r=await sw.create(n,s.object.textEditorModel,[I.lift(i)],ut.None),a=r.items.map(l=>l.hint);return setTimeout(()=>r.dispose(),0),a}finally{s.dispose()}});var rde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},zl=function(o,e){return function(t,i){e(t,i,o)}};class B4 extends Q1{constructor(e,t,i,n){super(10,t,e.item.anchor.range,i,n,!0),this.part=e}}let ME=class extends P_{constructor(e,t,i,n,s,r,a,l,c){super(e,t,i,r,l,n,s,c),this._resolverService=a,this.hoverOrdinal=6}suggestHoverAnchor(e){if(!TE.get(this._editor)||e.target.type!==6)return null;const i=e.target.detail.injectedText?.options;return i instanceof Bc&&i.attachedData instanceof NE?new B4(i.attachedData,this,e.event.posx,e.event.posy):null}computeSync(){return[]}computeAsync(e,t,i){return e instanceof B4?new Ms(async n=>{const{part:s}=e;if(await s.item.resolve(i),i.isCancellationRequested)return;let r;typeof s.item.hint.tooltip=="string"?r=new Js().appendText(s.item.hint.tooltip):s.item.hint.tooltip&&(r=s.item.hint.tooltip),r&&n.emitOne(new hr(this,e.range,[r],!1,0)),Ps(s.item.hint.textEdits)&&n.emitOne(new hr(this,e.range,[new Js().appendText(m("hint.dbl","Double-click to insert"))],!1,10001));let a;if(typeof s.part.tooltip=="string"?a=new Js().appendText(s.part.tooltip):s.part.tooltip&&(a=s.part.tooltip),a&&n.emitOne(new hr(this,e.range,[a],!1,1)),s.part.location||s.part.command){let c;const h=this._editor.getOption(78)==="altKey"?Ue?m("links.navigate.kb.meta.mac","cmd + click"):m("links.navigate.kb.meta","ctrl + click"):Ue?m("links.navigate.kb.alt.mac","option + click"):m("links.navigate.kb.alt","alt + click");s.part.location&&s.part.command?c=new Js().appendText(m("hint.defAndCommand","Go to Definition ({0}), right click for more",h)):s.part.location?c=new Js().appendText(m("hint.def","Go to Definition ({0})",h)):s.part.command&&(c=new Js(`[${m("hint.cmd","Execute Command")}](${ede(s.part.command)} "${s.part.command.title}") (${h})`,{isTrusted:!0})),c&&n.emitOne(new hr(this,e.range,[c],!1,1e4))}const l=await this._resolveInlayHintLabelPartHover(s,i);for await(const c of l)n.emitOne(c)}):Ms.EMPTY}async _resolveInlayHintLabelPartHover(e,t){if(!e.part.location)return Ms.EMPTY;const{uri:i,range:n}=e.part.location,s=await this._resolverService.createModelReference(i);try{const r=s.object.textEditorModel;return this._languageFeaturesService.hoverProvider.has(r)?pM(this._languageFeaturesService.hoverProvider,r,new P(n.startLineNumber,n.startColumn),t).filter(a=>!bg(a.hover.contents)).map(a=>new hr(this,e.item.anchor.range,a.hover.contents,!1,2+a.ordinal)):Ms.EMPTY}finally{s.dispose()}}};ME=rde([zl(1,qt),zl(2,Vo),zl(3,vt),zl(4,au),zl(5,lt),zl(6,fo),zl(7,Se),zl(8,hi)],ME);class CM extends z{constructor(e,t,i,n,s,r){super();const a=t.anchor,l=t.hoverParts;this._renderedHoverParts=this._register(new RE(e,i,l,r,s));const{showAtPosition:c,showAtSecondaryPosition:d}=CM.computeHoverPositions(e,a.range,l);this.shouldAppearBeforeContent=l.some(h=>h.isBeforeContent),this.showAtPosition=c,this.showAtSecondaryPosition=d,this.initialMousePosX=a.initialMousePosX,this.initialMousePosY=a.initialMousePosY,this.shouldFocus=n.shouldFocus,this.source=n.source}get domNode(){return this._renderedHoverParts.domNode}get domNodeHasChildren(){return this._renderedHoverParts.domNodeHasChildren}get focusedHoverPartIndex(){return this._renderedHoverParts.focusedHoverPartIndex}async updateHoverVerbosityLevel(e,t,i){this._renderedHoverParts.updateHoverVerbosityLevel(e,t,i)}isColorPickerVisible(){return this._renderedHoverParts.isColorPickerVisible()}static computeHoverPositions(e,t,i){let n=1;if(e.hasModel()){const d=e._getViewModel(),h=d.coordinatesConverter,u=h.convertModelRangeToViewRange(t),f=d.getLineMinColumn(u.startLineNumber),g=new P(u.startLineNumber,f);n=h.convertViewPositionToModelPosition(g).column}const s=t.startLineNumber;let r=t.startColumn,a;for(const d of i){const h=d.range,u=h.startLineNumber===s,f=h.endLineNumber===s;if(u&&f){const p=h.startColumn,_=Math.min(r,p);r=Math.max(_,n)}d.forceShowAtRange&&(a=h)}let l,c;if(a){const d=a.getStartPosition();l=d,c=d}else l=t.getStartPosition(),c=new P(s,r);return{showAtPosition:l,showAtSecondaryPosition:c}}}class ade{constructor(e,t){this._statusBar=t,e.appendChild(this._statusBar.hoverElement)}get hoverElement(){return this._statusBar.hoverElement}get actions(){return this._statusBar.actions}dispose(){this._statusBar.dispose()}}const g0=class g0 extends z{constructor(e,t,i,n,s){super(),this._renderedParts=[],this._focusedHoverPartIndex=-1,this._context=s,this._fragment=document.createDocumentFragment(),this._register(this._renderParts(t,i,s,n)),this._register(this._registerListenersOnRenderedParts()),this._register(this._createEditorDecorations(e,i)),this._updateMarkdownAndColorParticipantInfo(t)}_createEditorDecorations(e,t){if(t.length===0)return z.None;let i=t[0].range;for(const s of t){const r=s.range;i=I.plusRange(i,r)}const n=e.createDecorationsCollection();return n.set([{range:i,options:g0._DECORATION_OPTIONS}]),_e(()=>{n.clear()})}_renderParts(e,t,i,n){const s=new kE(n),r={fragment:this._fragment,statusBar:s,...i},a=new X;for(const c of e){const d=this._renderHoverPartsForParticipant(t,c,r);a.add(d);for(const h of d.renderedHoverParts)this._renderedParts.push({type:"hoverPart",participant:c,hoverPart:h.hoverPart,hoverElement:h.hoverElement})}const l=this._renderStatusBar(this._fragment,s);return l&&(a.add(l),this._renderedParts.push({type:"statusBar",hoverElement:l.hoverElement,actions:l.actions})),_e(()=>{a.dispose()})}_renderHoverPartsForParticipant(e,t,i){const n=e.filter(r=>r.owner===t);return n.length>0?t.renderHoverParts(i,n):new Ng([])}_renderStatusBar(e,t){if(t.hasContent)return new ade(e,t)}_registerListenersOnRenderedParts(){const e=new X;return this._renderedParts.forEach((t,i)=>{const n=t.hoverElement;n.tabIndex=0,e.add(U(n,ee.FOCUS_IN,s=>{s.stopPropagation(),this._focusedHoverPartIndex=i})),e.add(U(n,ee.FOCUS_OUT,s=>{s.stopPropagation(),this._focusedHoverPartIndex=-1}))}),e}_updateMarkdownAndColorParticipantInfo(e){const t=e.find(i=>i instanceof P_&&!(i instanceof ME));t&&(this._markdownHoverParticipant=t),this._colorHoverParticipant=e.find(i=>i instanceof iw)}async updateHoverVerbosityLevel(e,t,i){if(!this._markdownHoverParticipant)return;const n=this._normalizedIndexToMarkdownHoverIndexRange(this._markdownHoverParticipant,t);if(n===void 0)return;const s=await this._markdownHoverParticipant.updateMarkdownHoverVerbosityLevel(e,n,i);s&&(this._renderedParts[t]={type:"hoverPart",participant:this._markdownHoverParticipant,hoverPart:s.hoverPart,hoverElement:s.hoverElement},this._context.onContentsChanged())}isColorPickerVisible(){return this._colorHoverParticipant?.isColorPickerVisible()??!1}_normalizedIndexToMarkdownHoverIndexRange(e,t){const i=this._renderedParts[t];if(!i||i.type!=="hoverPart"||!(i.participant===e))return;const s=this._renderedParts.findIndex(r=>r.type==="hoverPart"&&r.participant===e);if(s===-1)throw new nt;return t-s}get domNode(){return this._fragment}get domNodeHasChildren(){return this._fragment.hasChildNodes()}get focusedHoverPartIndex(){return this._focusedHoverPartIndex}};g0._DECORATION_OPTIONS=kt.register({description:"content-hover-highlight",className:"hoverHighlight"});let RE=g0;var lde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},W4=function(o,e){return function(t,i){e(t,i,o)}};let AE=class extends z{constructor(e,t,i){super(),this._editor=e,this._instantiationService=t,this._keybindingService=i,this._currentResult=null,this._onContentsChanged=this._register(new A),this.onContentsChanged=this._onContentsChanged.event,this._contentHoverWidget=this._register(this._instantiationService.createInstance(xE,this._editor)),this._participants=this._initializeHoverParticipants(),this._computer=new ew(this._editor,this._participants),this._hoverOperation=this._register(new fB(this._editor,this._computer)),this._registerListeners()}_initializeHoverParticipants(){const e=[];for(const t of Oy.getAll()){const i=this._instantiationService.createInstance(t,this._editor);e.push(i)}return e.sort((t,i)=>t.hoverOrdinal-i.hoverOrdinal),this._register(this._contentHoverWidget.onDidResize(()=>{this._participants.forEach(t=>t.handleResize?.())})),e}_registerListeners(){this._register(this._hoverOperation.onResult(t=>{if(!this._computer.anchor)return;const i=t.hasLoadingMessage?this._addLoadingMessage(t.value):t.value;this._withResult(new gB(this._computer.anchor,i,t.isComplete))}));const e=this._contentHoverWidget.getDomNode();this._register(jt(e,"keydown",t=>{t.equals(9)&&this.hide()})),this._register(jt(e,"mouseleave",t=>{this._onMouseLeave(t)})),this._register(si.onDidChange(()=>{this._contentHoverWidget.position&&this._currentResult&&this._setCurrentResult(this._currentResult)}))}_startShowingOrUpdateHover(e,t,i,n,s){if(!(this._contentHoverWidget.position&&this._currentResult))return e?(this._startHoverOperationIfNecessary(e,t,i,n,!1),!0):!1;const a=this._editor.getOption(60).sticky,l=s&&this._contentHoverWidget.isMouseGettingCloser(s.event.posx,s.event.posy);return a&&l?(e&&this._startHoverOperationIfNecessary(e,t,i,n,!0),!0):e?this._currentResult.anchor.equals(e)?!0:e.canAdoptVisibleHover(this._currentResult.anchor,this._contentHoverWidget.position)?(this._setCurrentResult(this._currentResult.filter(e)),this._startHoverOperationIfNecessary(e,t,i,n,!1),!0):(this._setCurrentResult(null),this._startHoverOperationIfNecessary(e,t,i,n,!1),!0):(this._setCurrentResult(null),!1)}_startHoverOperationIfNecessary(e,t,i,n,s){this._computer.anchor&&this._computer.anchor.equals(e)||(this._hoverOperation.cancel(),this._computer.anchor=e,this._computer.shouldFocus=n,this._computer.source=i,this._computer.insistOnKeepingHoverVisible=s,this._hoverOperation.start(t))}_setCurrentResult(e){let t=e;if(this._currentResult===t)return;t&&t.hoverParts.length===0&&(t=null),this._currentResult=t,this._currentResult?this._showHover(this._currentResult):this._hideHover()}_addLoadingMessage(e){if(!this._computer.anchor)return e;for(const t of this._participants){if(!t.createLoadingMessage)continue;const i=t.createLoadingMessage(this._computer.anchor);if(i)return e.slice(0).concat([i])}return e}_withResult(e){if(this._contentHoverWidget.position&&this._currentResult&&this._currentResult.isComplete||this._setCurrentResult(e),!e.isComplete)return;const n=e.hoverParts.length===0,s=this._computer.insistOnKeepingHoverVisible;n&&s||this._setCurrentResult(e)}_showHover(e){const t=this._getHoverContext();this._renderedContentHover=new CM(this._editor,e,this._participants,this._computer,t,this._keybindingService),this._renderedContentHover.domNodeHasChildren?this._contentHoverWidget.show(this._renderedContentHover):this._renderedContentHover.dispose()}_hideHover(){this._contentHoverWidget.hide()}_getHoverContext(){return{hide:()=>{this.hide()},onContentsChanged:()=>{this._onContentsChanged.fire(),this._contentHoverWidget.onContentsChanged()},setMinimumDimensions:n=>{this._contentHoverWidget.setMinimumDimensions(n)}}}showsOrWillShow(e){if(this._contentHoverWidget.isResizing)return!0;const i=this._findHoverAnchorCandidates(e);if(!(i.length>0))return this._startShowingOrUpdateHover(null,0,0,!1,e);const s=i[0];return this._startShowingOrUpdateHover(s,0,0,!1,e)}_findHoverAnchorCandidates(e){const t=[];for(const n of this._participants){if(!n.suggestHoverAnchor)continue;const s=n.suggestHoverAnchor(e);s&&t.push(s)}const i=e.target;switch(i.type){case 6:{t.push(new gL(0,i.range,e.event.posx,e.event.posy));break}case 7:{const n=this._editor.getOption(50).typicalHalfwidthCharacterWidth/2;if(!(!i.detail.isAfterLines&&typeof i.detail.horizontalDistanceToText=="number"&&i.detail.horizontalDistanceToTexts.priority-n.priority),t}_onMouseLeave(e){const t=this._editor.getDomNode();(!t||!Py(t,e.x,e.y))&&this.hide()}startShowingAtRange(e,t,i,n){this._startShowingOrUpdateHover(new gL(0,e,void 0,void 0),t,i,n,null)}async updateHoverVerbosityLevel(e,t,i){this._renderedContentHover?.updateHoverVerbosityLevel(e,t,i)}focusedHoverPartIndex(){return this._renderedContentHover?.focusedHoverPartIndex??-1}containsNode(e){return e?this._contentHoverWidget.getDomNode().contains(e):!1}focus(){this._contentHoverWidget.focus()}scrollUp(){this._contentHoverWidget.scrollUp()}scrollDown(){this._contentHoverWidget.scrollDown()}scrollLeft(){this._contentHoverWidget.scrollLeft()}scrollRight(){this._contentHoverWidget.scrollRight()}pageUp(){this._contentHoverWidget.pageUp()}pageDown(){this._contentHoverWidget.pageDown()}goToTop(){this._contentHoverWidget.goToTop()}goToBottom(){this._contentHoverWidget.goToBottom()}hide(){this._computer.anchor=null,this._hoverOperation.cancel(),this._setCurrentResult(null)}getDomNode(){return this._contentHoverWidget.getDomNode()}get isColorPickerVisible(){return this._renderedContentHover?.isColorPickerVisible()??!1}get isVisibleFromKeyboard(){return this._contentHoverWidget.isVisibleFromKeyboard}get isVisible(){return this._contentHoverWidget.isVisible}get isFocused(){return this._contentHoverWidget.isFocused}get isResizing(){return this._contentHoverWidget.isResizing}get widget(){return this._contentHoverWidget}};AE=lde([W4(1,ke),W4(2,vt)],AE);var cde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},H4=function(o,e){return function(t,i){e(t,i,o)}},PE,vh;let Tn=(vh=class extends z{constructor(e,t,i){super(),this._editor=e,this._instantiationService=t,this._keybindingService=i,this._onHoverContentsChanged=this._register(new A),this.shouldKeepOpenOnEditorMouseMoveOrLeave=!1,this._listenersStore=new X,this._hoverState={mouseDown:!1,activatedByDecoratorClick:!1},this._reactToEditorMouseMoveRunner=this._register(new ci(()=>this._reactToEditorMouseMove(this._mouseMoveEvent),0)),this._hookListeners(),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(60)&&(this._unhookListeners(),this._hookListeners())}))}static get(e){return e.getContribution(PE.ID)}_hookListeners(){const e=this._editor.getOption(60);this._hoverSettings={enabled:e.enabled,sticky:e.sticky,hidingDelay:e.hidingDelay},e.enabled?(this._listenersStore.add(this._editor.onMouseDown(t=>this._onEditorMouseDown(t))),this._listenersStore.add(this._editor.onMouseUp(()=>this._onEditorMouseUp())),this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))):(this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))),this._listenersStore.add(this._editor.onMouseLeave(t=>this._onEditorMouseLeave(t))),this._listenersStore.add(this._editor.onDidChangeModel(()=>{this._cancelScheduler(),this._hideWidgets()})),this._listenersStore.add(this._editor.onDidChangeModelContent(()=>this._cancelScheduler())),this._listenersStore.add(this._editor.onDidScrollChange(t=>this._onEditorScrollChanged(t)))}_unhookListeners(){this._listenersStore.clear()}_cancelScheduler(){this._mouseMoveEvent=void 0,this._reactToEditorMouseMoveRunner.cancel()}_onEditorScrollChanged(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()}_onEditorMouseDown(e){this._hoverState.mouseDown=!0,!this._shouldNotHideCurrentHoverWidget(e)&&this._hideWidgets()}_shouldNotHideCurrentHoverWidget(e){return this._isMouseOnContentHoverWidget(e)||this._isContentWidgetResizing()}_isMouseOnContentHoverWidget(e){const t=this._contentWidget?.getDomNode();return t?Py(t,e.event.posx,e.event.posy):!1}_onEditorMouseUp(){this._hoverState.mouseDown=!1}_onEditorMouseLeave(e){this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._cancelScheduler(),this._shouldNotHideCurrentHoverWidget(e))||this._hideWidgets()}_shouldNotRecomputeCurrentHoverWidget(e){const t=this._hoverSettings.sticky,i=(r,a)=>{const l=this._isMouseOnContentHoverWidget(r);return a&&l},n=r=>{const a=this._isMouseOnContentHoverWidget(r),l=this._contentWidget?.isColorPickerVisible??!1;return a&&l},s=(r,a)=>(a&&this._contentWidget?.containsNode(r.event.browserEvent.view?.document.activeElement)&&!r.event.browserEvent.view?.getSelection()?.isCollapsed)??!1;return i(e,t)||n(e)||s(e,t)}_onEditorMouseMove(e){if(this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._mouseMoveEvent=e,this._contentWidget?.isFocused||this._contentWidget?.isResizing))return;const t=this._hoverSettings.sticky;if(t&&this._contentWidget?.isVisibleFromKeyboard)return;if(this._shouldNotRecomputeCurrentHoverWidget(e)){this._reactToEditorMouseMoveRunner.cancel();return}const n=this._hoverSettings.hidingDelay;if(this._contentWidget?.isVisible&&t&&n>0){this._reactToEditorMouseMoveRunner.isScheduled()||this._reactToEditorMouseMoveRunner.schedule(n);return}this._reactToEditorMouseMove(e)}_reactToEditorMouseMove(e){if(!e)return;const i=e.target.element?.classList.contains("colorpicker-color-decoration"),n=this._editor.getOption(149),s=this._hoverSettings.enabled,r=this._hoverState.activatedByDecoratorClick;if(i&&(n==="click"&&!r||n==="hover"&&!s||n==="clickAndHover"&&!s&&!r)||!i&&!s&&!r){this._hideWidgets();return}this._tryShowHoverWidget(e)||this._hideWidgets()}_tryShowHoverWidget(e){return this._getOrCreateContentWidget().showsOrWillShow(e)}_onKeyDown(e){if(!this._editor.hasModel())return;const t=this._keybindingService.softDispatch(e,this._editor.getDomNode()),i=t.kind===1||t.kind===2&&(t.commandId===Q8||t.commandId===Ey||t.commandId===Ny)&&this._contentWidget?.isVisible;e.keyCode===5||e.keyCode===6||e.keyCode===57||e.keyCode===4||i||this._hideWidgets()}_hideWidgets(){this._hoverState.mouseDown&&this._contentWidget?.isColorPickerVisible||Eg.dropDownVisible||(this._hoverState.activatedByDecoratorClick=!1,this._contentWidget?.hide())}_getOrCreateContentWidget(){return this._contentWidget||(this._contentWidget=this._instantiationService.createInstance(AE,this._editor),this._listenersStore.add(this._contentWidget.onContentsChanged(()=>this._onHoverContentsChanged.fire()))),this._contentWidget}showContentHover(e,t,i,n,s=!1){this._hoverState.activatedByDecoratorClick=s,this._getOrCreateContentWidget().startShowingAtRange(e,t,i,n)}_isContentWidgetResizing(){return this._contentWidget?.widget.isResizing||!1}focusedHoverPartIndex(){return this._getOrCreateContentWidget().focusedHoverPartIndex()}updateHoverVerbosityLevel(e,t,i){this._getOrCreateContentWidget().updateHoverVerbosityLevel(e,t,i)}focus(){this._contentWidget?.focus()}scrollUp(){this._contentWidget?.scrollUp()}scrollDown(){this._contentWidget?.scrollDown()}scrollLeft(){this._contentWidget?.scrollLeft()}scrollRight(){this._contentWidget?.scrollRight()}pageUp(){this._contentWidget?.pageUp()}pageDown(){this._contentWidget?.pageDown()}goToTop(){this._contentWidget?.goToTop()}goToBottom(){this._contentWidget?.goToBottom()}get isColorPickerVisible(){return this._contentWidget?.isColorPickerVisible}get isHoverVisible(){return this._contentWidget?.isVisible}dispose(){super.dispose(),this._unhookListeners(),this._listenersStore.dispose(),this._contentWidget?.dispose()}},PE=vh,vh.ID="editor.contrib.contentHover",vh);Tn=PE=cde([H4(1,ke),H4(2,vt)],Tn);var Qo;(function(o){o.NoAutoFocus="noAutoFocus",o.FocusIfVisible="focusIfVisible",o.AutoFocusImmediately="autoFocusImmediately"})(Qo||(Qo={}));class dde extends bi{constructor(){super({id:Q8,label:m({key:"showOrFocusHover",comment:["Label for action that will trigger the showing/focusing of a hover in the editor.","If the hover is not visible, it will show the hover.","This allows for users to show the hover without using the mouse."]},"Show or Focus Hover"),metadata:{description:di("showOrFocusHoverDescription","Show or focus the editor hover which shows documentation, references, and other content for a symbol at the current cursor position."),args:[{name:"args",schema:{type:"object",properties:{focus:{description:"Controls if and when the hover should take focus upon being triggered by this action.",enum:[Qo.NoAutoFocus,Qo.FocusIfVisible,Qo.AutoFocusImmediately],enumDescriptions:[m("showOrFocusHover.focus.noAutoFocus","The hover will not automatically take focus."),m("showOrFocusHover.focus.focusIfVisible","The hover will take focus only if it is already visible."),m("showOrFocusHover.focus.autoFocusImmediately","The hover will automatically take focus when it appears.")],default:Qo.FocusIfVisible}}}}]},alias:"Show or Focus Hover",precondition:void 0,kbOpts:{kbExpr:K.editorTextFocus,primary:Vp(2089,2087),weight:100}})}run(e,t,i){if(!t.hasModel())return;const n=Tn.get(t);if(!n)return;const s=i?.focus;let r=Qo.FocusIfVisible;Object.values(Qo).includes(s)?r=s:typeof s=="boolean"&&s&&(r=Qo.AutoFocusImmediately);const a=c=>{const d=t.getPosition(),h=new I(d.lineNumber,d.column,d.lineNumber,d.column);n.showContentHover(h,1,1,c)},l=t.getOption(2)===2;n.isHoverVisible?r!==Qo.NoAutoFocus?n.focus():a(l):a(l||r===Qo.AutoFocusImmediately)}}class hde extends bi{constructor(){super({id:Ale,label:m({key:"showDefinitionPreviewHover",comment:["Label for action that will trigger the showing of definition preview hover in the editor.","This allows for users to show the definition preview hover without using the mouse."]},"Show Definition Preview Hover"),alias:"Show Definition Preview Hover",precondition:void 0,metadata:{description:di("showDefinitionPreviewHoverDescription","Show the definition preview hover in the editor.")}})}run(e,t){const i=Tn.get(t);if(!i)return;const n=t.getPosition();if(!n)return;const s=new I(n.lineNumber,n.column,n.lineNumber,n.column),r=A_.get(t);if(!r)return;r.startFindDefinitionFromCursor(n).then(()=>{i.showContentHover(s,1,1,!0)})}}class ude extends bi{constructor(){super({id:Ple,label:m({key:"scrollUpHover",comment:["Action that allows to scroll up in the hover widget with the up arrow when the hover widget is focused."]},"Scroll Up Hover"),alias:"Scroll Up Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:16,weight:100},metadata:{description:di("scrollUpHoverDescription","Scroll up the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollUp()}}class fde extends bi{constructor(){super({id:Ole,label:m({key:"scrollDownHover",comment:["Action that allows to scroll down in the hover widget with the up arrow when the hover widget is focused."]},"Scroll Down Hover"),alias:"Scroll Down Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:18,weight:100},metadata:{description:di("scrollDownHoverDescription","Scroll down the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollDown()}}class gde extends bi{constructor(){super({id:Fle,label:m({key:"scrollLeftHover",comment:["Action that allows to scroll left in the hover widget with the left arrow when the hover widget is focused."]},"Scroll Left Hover"),alias:"Scroll Left Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:15,weight:100},metadata:{description:di("scrollLeftHoverDescription","Scroll left the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollLeft()}}class mde extends bi{constructor(){super({id:Ble,label:m({key:"scrollRightHover",comment:["Action that allows to scroll right in the hover widget with the right arrow when the hover widget is focused."]},"Scroll Right Hover"),alias:"Scroll Right Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:17,weight:100},metadata:{description:di("scrollRightHoverDescription","Scroll right the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollRight()}}class pde extends bi{constructor(){super({id:Wle,label:m({key:"pageUpHover",comment:["Action that allows to page up in the hover widget with the page up command when the hover widget is focused."]},"Page Up Hover"),alias:"Page Up Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:11,secondary:[528],weight:100},metadata:{description:di("pageUpHoverDescription","Page up the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.pageUp()}}class _de extends bi{constructor(){super({id:Hle,label:m({key:"pageDownHover",comment:["Action that allows to page down in the hover widget with the page down command when the hover widget is focused."]},"Page Down Hover"),alias:"Page Down Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:12,secondary:[530],weight:100},metadata:{description:di("pageDownHoverDescription","Page down the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.pageDown()}}class bde extends bi{constructor(){super({id:Vle,label:m({key:"goToTopHover",comment:["Action that allows to go to the top of the hover widget with the home command when the hover widget is focused."]},"Go To Top Hover"),alias:"Go To Bottom Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:14,secondary:[2064],weight:100},metadata:{description:di("goToTopHoverDescription","Go to the top of the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.goToTop()}}class Cde extends bi{constructor(){super({id:zle,label:m({key:"goToBottomHover",comment:["Action that allows to go to the bottom in the hover widget with the end command when the hover widget is focused."]},"Go To Bottom Hover"),alias:"Go To Bottom Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:13,secondary:[2066],weight:100},metadata:{description:di("goToBottomHoverDescription","Go to the bottom of the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.goToBottom()}}class vde extends bi{constructor(){super({id:Ey,label:Ule,alias:"Increase Hover Verbosity Level",precondition:K.hoverVisible})}run(e,t,i){const n=Tn.get(t);if(!n)return;const s=i?.index!==void 0?i.index:n.focusedHoverPartIndex();n.updateHoverVerbosityLevel(is.Increase,s,i?.focus)}}class wde extends bi{constructor(){super({id:Ny,label:$le,alias:"Decrease Hover Verbosity Level",precondition:K.hoverVisible})}run(e,t,i){const n=Tn.get(t);if(!n)return;const s=i?.index!==void 0?i.index:n.focusedHoverPartIndex();Tn.get(t)?.updateHoverVerbosityLevel(is.Decrease,s,i?.focus)}}const Vr=class Vr{constructor(e){this.value=e}equals(e){return this.value===e.value}contains(e){return this.equals(e)||this.value===""||e.value.startsWith(this.value+Vr.sep)}intersects(e){return this.contains(e)||e.contains(this)}append(...e){return new Vr((this.value?[this.value,...e]:e).join(Vr.sep))}};Vr.sep=".",Vr.None=new Vr("@@none@@"),Vr.Empty=new Vr("");let ji=Vr;const Di=new class{constructor(){this.QuickFix=new ji("quickfix"),this.Refactor=new ji("refactor"),this.RefactorExtract=this.Refactor.append("extract"),this.RefactorInline=this.Refactor.append("inline"),this.RefactorMove=this.Refactor.append("move"),this.RefactorRewrite=this.Refactor.append("rewrite"),this.Notebook=new ji("notebook"),this.Source=new ji("source"),this.SourceOrganizeImports=this.Source.append("organizeImports"),this.SourceFixAll=this.Source.append("fixAll"),this.SurroundWith=this.Refactor.append("surround")}};var Uc;(function(o){o.Refactor="refactor",o.RefactorPreview="refactor preview",o.Lightbulb="lightbulb",o.Default="other (default)",o.SourceAction="source action",o.QuickFix="quick fix action",o.FixAll="fix all",o.OrganizeImports="organize imports",o.AutoFix="auto fix",o.QuickFixHover="quick fix hover window",o.OnSave="save participants",o.ProblemsView="problems view"})(Uc||(Uc={}));function yde(o,e){return!(o.include&&!o.include.intersects(e)||o.excludes&&o.excludes.some(t=>NB(e,t,o.include))||!o.includeSourceActions&&Di.Source.contains(e))}function Sde(o,e){const t=e.kind?new ji(e.kind):void 0;return!(o.include&&(!t||!o.include.contains(t))||o.excludes&&t&&o.excludes.some(i=>NB(t,i,o.include))||!o.includeSourceActions&&t&&Di.Source.contains(t)||o.onlyIncludePreferredActions&&!e.isPreferred)}function NB(o,e,t){return!(!e.contains(o)||t&&e.contains(t))}class Nd{static fromUser(e,t){return!e||typeof e!="object"?new Nd(t.kind,t.apply,!1):new Nd(Nd.getKindFromUser(e,t.kind),Nd.getApplyFromUser(e,t.apply),Nd.getPreferredUser(e))}static getApplyFromUser(e,t){switch(typeof e.apply=="string"?e.apply.toLowerCase():""){case"first":return"first";case"never":return"never";case"ifsingle":return"ifSingle";default:return t}}static getKindFromUser(e,t){return typeof e.kind=="string"?new ji(e.kind):t}static getPreferredUser(e){return typeof e.preferred=="boolean"?e.preferred:!1}constructor(e,t,i){this.kind=e,this.apply=t,this.preferred=i}}class Lde{constructor(e,t,i){this.action=e,this.provider=t,this.highlightRange=i}async resolve(e){if(this.provider?.resolveCodeAction&&!this.action.edit){let t;try{t=await this.provider.resolveCodeAction(this.action,e)}catch(i){$n(i)}t&&(this.action.edit=t.edit)}return this}}const xde="editor.action.codeAction",TB="editor.action.quickFix",kde="editor.action.autoFix",Dde="editor.action.refactor",Ide="editor.action.sourceAction",V4="editor.action.organizeImports",z4="editor.action.fixAll";class wp extends z{static codeActionsPreferredComparator(e,t){return e.isPreferred&&!t.isPreferred?-1:!e.isPreferred&&t.isPreferred?1:0}static codeActionsComparator({action:e},{action:t}){return e.isAI&&!t.isAI?1:!e.isAI&&t.isAI?-1:Ps(e.diagnostics)?Ps(t.diagnostics)?wp.codeActionsPreferredComparator(e,t):-1:Ps(t.diagnostics)?1:wp.codeActionsPreferredComparator(e,t)}constructor(e,t,i){super(),this.documentation=t,this._register(i),this.allActions=[...e].sort(wp.codeActionsComparator),this.validActions=this.allActions.filter(({action:n})=>!n.disabled)}get hasAutoFix(){return this.validActions.some(({action:e})=>!!e.kind&&Di.QuickFix.contains(new ji(e.kind))&&!!e.isPreferred)}get hasAIFix(){return this.validActions.some(({action:e})=>!!e.isAI)}get allAIFixes(){return this.validActions.every(({action:e})=>!!e.isAI)}}const U4={actions:[],documentation:void 0};async function mf(o,e,t,i,n,s){const r=i.filter||{},a={...r,excludes:[...r.excludes||[],Di.Notebook]},l={only:r.include?.value,trigger:i.type},c=new Dle(e,s),d=i.type===2,h=Ede(o,e,d?a:r),u=new X,f=h.map(async p=>{try{n.report(p);const _=await p.provideCodeActions(e,t,l,c.token);if(_&&u.add(_),c.token.isCancellationRequested)return U4;const b=(_?.actions||[]).filter(w=>w&&Sde(r,w)),C=Tde(p,b,r.include);return{actions:b.map(w=>new Lde(w,p)),documentation:C}}catch(_){if($c(_))throw _;return $n(_),U4}}),g=o.onDidChange(()=>{const p=o.all(e);li(p,h)||c.cancel()});try{const p=await Promise.all(f),_=p.map(C=>C.actions).flat(),b=[...Ag(p.map(C=>C.documentation)),...Nde(o,e,i,_)];return new wp(_,b,u)}finally{g.dispose(),c.dispose()}}function Ede(o,e,t){return o.all(e).filter(i=>i.providedCodeActionKinds?i.providedCodeActionKinds.some(n=>yde(t,new ji(n))):!0)}function*Nde(o,e,t,i){if(e&&i.length)for(const n of o.all(e))n._getAdditionalMenuItems&&(yield*n._getAdditionalMenuItems?.({trigger:t.type,only:t.filter?.include?.value},i.map(s=>s.action)))}function Tde(o,e,t){if(!o.documentation)return;const i=o.documentation.map(n=>({kind:new ji(n.kind),command:n.command}));if(t){let n;for(const s of i)s.kind.contains(t)&&(n?n.kind.contains(s.kind)&&(n=s):n=s);if(n)return n?.command}for(const n of e)if(n.kind){for(const s of i)if(s.kind.contains(new ji(n.kind)))return s.command}}var Gd;(function(o){o.OnSave="onSave",o.FromProblemsView="fromProblemsView",o.FromCodeActions="fromCodeActions",o.FromAILightbulb="fromAILightbulb"})(Gd||(Gd={}));async function Mde(o,e,t,i,n=ut.None){const s=o.get(b7),r=o.get(hi),a=o.get($s),l=o.get(mn);if(a.publicLog2("codeAction.applyCodeAction",{codeActionTitle:e.action.title,codeActionKind:e.action.kind,codeActionIsPreferred:!!e.action.isPreferred,reason:t}),await e.resolve(n),!n.isCancellationRequested&&!(e.action.edit?.edits.length&&!(await s.apply(e.action.edit,{editor:i?.editor,label:e.action.title,quotableLabel:e.action.title,code:"undoredo.codeAction",respectAutoSaveConfig:t!==Gd.OnSave,showPreview:i?.preview})).isApplied)&&e.action.command)try{await r.executeCommand(e.action.command.id,...e.action.command.arguments||[])}catch(c){const d=Rde(c);l.error(typeof d=="string"?d:m("applyCodeActionFailed","An unknown error occurred while applying the code action"))}}function Rde(o){return typeof o=="string"?o:o instanceof Error&&typeof o.message=="string"?o.message:void 0}bt.registerCommand("_executeCodeActionProvider",async function(o,e,t,i,n){if(!(e instanceof ve))throw na();const{codeActionProvider:s}=o.get(Se),r=o.get(Fi).getModel(e);if(!r)throw na();const a=Fe.isISelection(t)?Fe.liftSelection(t):I.isIRange(t)?r.validateRange(t):void 0;if(!a)throw na();const l=typeof i=="string"?new ji(i):void 0,c=await mf(s,r,a,{type:1,triggerAction:Uc.Default,filter:{includeSourceActions:!0,include:l}},rc.None,ut.None),d=[],h=Math.min(c.validActions.length,typeof n=="number"?n:0);for(let u=0;uu.action)}finally{setTimeout(()=>c.dispose(),100)}});var Ade=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Pde=function(o,e){return function(t,i){e(t,i,o)}},OE,wh;let FE=(wh=class{constructor(e){this.keybindingService=e}getResolver(){const e=new ua(()=>this.keybindingService.getKeybindings().filter(t=>OE.codeActionCommands.indexOf(t.command)>=0).filter(t=>t.resolvedKeybinding).map(t=>{let i=t.commandArgs;return t.command===V4?i={kind:Di.SourceOrganizeImports.value}:t.command===z4&&(i={kind:Di.SourceFixAll.value}),{resolvedKeybinding:t.resolvedKeybinding,...Nd.fromUser(i,{kind:ji.None,apply:"never"})}}));return t=>{if(t.kind)return this.bestKeybindingForCodeAction(t,e.value)?.resolvedKeybinding}}bestKeybindingForCodeAction(e,t){if(!e.kind)return;const i=new ji(e.kind);return t.filter(n=>n.kind.contains(i)).filter(n=>n.preferred?e.isPreferred:!0).reduceRight((n,s)=>n?n.kind.contains(s.kind)?s:n:s,void 0)}},OE=wh,wh.codeActionCommands=[Dde,xde,Ide,V4,z4],wh);FE=OE=Ade([Pde(0,vt)],FE);D("symbolIcon.arrayForeground",Pe,m("symbolIcon.arrayForeground","The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.booleanForeground",Pe,m("symbolIcon.booleanForeground","The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.classForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},m("symbolIcon.classForeground","The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.colorForeground",Pe,m("symbolIcon.colorForeground","The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.constantForeground",Pe,m("symbolIcon.constantForeground","The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.constructorForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("symbolIcon.constructorForeground","The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.enumeratorForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},m("symbolIcon.enumeratorForeground","The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.enumeratorMemberForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.enumeratorMemberForeground","The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.eventForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},m("symbolIcon.eventForeground","The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.fieldForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.fieldForeground","The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.fileForeground",Pe,m("symbolIcon.fileForeground","The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.folderForeground",Pe,m("symbolIcon.folderForeground","The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.functionForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("symbolIcon.functionForeground","The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.interfaceForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.interfaceForeground","The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.keyForeground",Pe,m("symbolIcon.keyForeground","The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.keywordForeground",Pe,m("symbolIcon.keywordForeground","The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.methodForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("symbolIcon.methodForeground","The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.moduleForeground",Pe,m("symbolIcon.moduleForeground","The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.namespaceForeground",Pe,m("symbolIcon.namespaceForeground","The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.nullForeground",Pe,m("symbolIcon.nullForeground","The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.numberForeground",Pe,m("symbolIcon.numberForeground","The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.objectForeground",Pe,m("symbolIcon.objectForeground","The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.operatorForeground",Pe,m("symbolIcon.operatorForeground","The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.packageForeground",Pe,m("symbolIcon.packageForeground","The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.propertyForeground",Pe,m("symbolIcon.propertyForeground","The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.referenceForeground",Pe,m("symbolIcon.referenceForeground","The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.snippetForeground",Pe,m("symbolIcon.snippetForeground","The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.stringForeground",Pe,m("symbolIcon.stringForeground","The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.structForeground",Pe,m("symbolIcon.structForeground","The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.textForeground",Pe,m("symbolIcon.textForeground","The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.typeParameterForeground",Pe,m("symbolIcon.typeParameterForeground","The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.unitForeground",Pe,m("symbolIcon.unitForeground","The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.variableForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.variableForeground","The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));const MB=Object.freeze({kind:ji.Empty,title:m("codeAction.widget.id.more","More Actions...")}),Ode=Object.freeze([{kind:Di.QuickFix,title:m("codeAction.widget.id.quickfix","Quick Fix")},{kind:Di.RefactorExtract,title:m("codeAction.widget.id.extract","Extract"),icon:ie.wrench},{kind:Di.RefactorInline,title:m("codeAction.widget.id.inline","Inline"),icon:ie.wrench},{kind:Di.RefactorRewrite,title:m("codeAction.widget.id.convert","Rewrite"),icon:ie.wrench},{kind:Di.RefactorMove,title:m("codeAction.widget.id.move","Move"),icon:ie.wrench},{kind:Di.SurroundWith,title:m("codeAction.widget.id.surround","Surround With"),icon:ie.surroundWith},{kind:Di.Source,title:m("codeAction.widget.id.source","Source Action"),icon:ie.symbolFile},MB]);function Fde(o,e,t){if(!e)return o.map(s=>({kind:"action",item:s,group:MB,disabled:!!s.action.disabled,label:s.action.disabled||s.action.title,canPreview:!!s.action.edit?.edits.length}));const i=Ode.map(s=>({group:s,actions:[]}));for(const s of o){const r=s.action.kind?new ji(s.action.kind):ji.None;for(const a of i)if(a.group.kind.contains(r)){a.actions.push(s);break}}const n=[];for(const s of i)if(s.actions.length){n.push({kind:"header",group:s.group});for(const r of s.actions){const a=s.group;n.push({kind:"action",item:r,group:r.action.isAI?{title:a.title,kind:a.kind,icon:ie.sparkle}:a,label:r.action.title,disabled:!!r.action.disabled,keybinding:t(r.action)})}}return n}var Bde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Wde=function(o,e){return function(t,i){e(t,i,o)}},$u;const $4=Wi("gutter-lightbulb",ie.lightBulb,m("gutterLightbulbWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor.")),K4=Wi("gutter-lightbulb-auto-fix",ie.lightbulbAutofix,m("gutterLightbulbAutoFixWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and a quick fix is available.")),j4=Wi("gutter-lightbulb-sparkle",ie.lightbulbSparkle,m("gutterLightbulbAIFixWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix is available.")),q4=Wi("gutter-lightbulb-aifix-auto-fix",ie.lightbulbSparkleAutofix,m("gutterLightbulbAIFixAutoFixWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix and a quick fix is available.")),G4=Wi("gutter-lightbulb-sparkle-filled",ie.sparkleFilled,m("gutterLightbulbSparkleFilledWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix and a quick fix is available."));var Xo;(function(o){o.Hidden={type:0};class e{constructor(i,n,s,r){this.actions=i,this.trigger=n,this.editorPosition=s,this.widgetPosition=r,this.type=1}}o.Showing=e})(Xo||(Xo={}));var pl;let BE=(pl=class extends z{constructor(e,t){super(),this._editor=e,this._keybindingService=t,this._onClick=this._register(new A),this.onClick=this._onClick.event,this._state=Xo.Hidden,this._gutterState=Xo.Hidden,this._iconClasses=[],this.lightbulbClasses=["codicon-"+$4.id,"codicon-"+q4.id,"codicon-"+K4.id,"codicon-"+j4.id,"codicon-"+G4.id],this.gutterDecoration=$u.GUTTER_DECORATION,this._domNode=ce("div.lightBulbWidget"),this._domNode.role="listbox",this._register(fn.ignoreTarget(this._domNode)),this._editor.addContentWidget(this),this._register(this._editor.onDidChangeModelContent(i=>{const n=this._editor.getModel();(this.state.type!==1||!n||this.state.editorPosition.lineNumber>=n.getLineCount())&&this.hide(),(this.gutterState.type!==1||!n||this.gutterState.editorPosition.lineNumber>=n.getLineCount())&&this.gutterHide()})),this._register(mV(this._domNode,i=>{if(this.state.type!==1)return;this._editor.focus(),i.preventDefault();const{top:n,height:s}=gi(this._domNode),r=this._editor.getOption(67);let a=Math.floor(r/3);this.state.widgetPosition.position!==null&&this.state.widgetPosition.position.lineNumber{(i.buttons&1)===1&&this.hide()})),this._register(J.runAndSubscribe(this._keybindingService.onDidUpdateKeybindings,()=>{this._preferredKbLabel=this._keybindingService.lookupKeybinding(kde)?.getLabel()??void 0,this._quickFixKbLabel=this._keybindingService.lookupKeybinding(TB)?.getLabel()??void 0,this._updateLightBulbTitleAndIcon()})),this._register(this._editor.onMouseDown(async i=>{if(!i.target.element||!this.lightbulbClasses.some(l=>i.target.element&&i.target.element.classList.contains(l))||this.gutterState.type!==1)return;this._editor.focus();const{top:n,height:s}=gi(i.target.element),r=this._editor.getOption(67);let a=Math.floor(r/3);this.gutterState.widgetPosition.position!==null&&this.gutterState.widgetPosition.position.lineNumber22,g=y=>y>2&&this._editor.getTopForLineNumber(y)===this._editor.getTopForLineNumber(y-1),p=this._editor.getLineDecorations(a);let _=!1;if(p)for(const y of p){const x=y.options.glyphMarginClassName;if(x&&!this.lightbulbClasses.some(L=>x.includes(L))){_=!0;break}}let b=a,C=1;if(!f){const y=x=>{const L=r.getLineContent(x);return/^\s*$|^\s+/.test(L)||L.length<=C};if(a>1&&!g(a-1)){const x=r.getLineCount(),L=a===x,E=a>1&&y(a-1),N=!L&&y(a+1),H=y(a),F=!N&&!E;if(!N&&!E&&!_)return this.gutterState=new Xo.Showing(e,t,i,{position:{lineNumber:b,column:C},preference:$u._posPref}),this.renderGutterLightbub(),this.hide();E||L||E&&!H?b-=1:(N||F&&H)&&(b+=1)}else if(a===1&&(a===r.getLineCount()||!y(a+1)&&!y(a)))if(this.gutterState=new Xo.Showing(e,t,i,{position:{lineNumber:b,column:C},preference:$u._posPref}),_)this.gutterHide();else return this.renderGutterLightbub(),this.hide();else if(a{this._gutterDecorationID=t.addDecoration(new I(e,0,e,0),this.gutterDecoration)})}_removeGutterDecoration(e){this._editor.changeDecorations(t=>{t.removeDecoration(e),this._gutterDecorationID=void 0})}_updateGutterDecoration(e,t){this._editor.changeDecorations(i=>{i.changeDecoration(e,new I(t,0,t,0)),i.changeDecorationOptions(e,this.gutterDecoration)})}_updateLightbulbTitle(e,t){this.state.type===1&&(t?this.title=m("codeActionAutoRun","Run: {0}",this.state.actions.validActions[0].action.title):e&&this._preferredKbLabel?this.title=m("preferredcodeActionWithKb","Show Code Actions. Preferred Quick Fix Available ({0})",this._preferredKbLabel):!e&&this._quickFixKbLabel?this.title=m("codeActionWithKb","Show Code Actions ({0})",this._quickFixKbLabel):e||(this.title=m("codeAction","Show Code Actions")))}set title(e){this._domNode.title=e}},$u=pl,pl.GUTTER_DECORATION=kt.register({description:"codicon-gutter-lightbulb-decoration",glyphMarginClassName:Ee.asClassName(ie.lightBulb),glyphMargin:{position:Ao.Left},stickiness:1}),pl.ID="editor.contrib.lightbulbWidget",pl._posPref=[0],pl);BE=$u=Bde([Wde(1,vt)],BE);var RB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},WE=function(o,e){return function(t,i){e(t,i,o)}};const AB="acceptSelectedCodeAction",PB="previewSelectedCodeAction";class Hde{get templateId(){return"header"}renderTemplate(e){e.classList.add("group-header");const t=document.createElement("span");return e.append(t),{container:e,text:t}}renderElement(e,t,i){i.text.textContent=e.group?.title??""}disposeTemplate(e){}}let HE=class{get templateId(){return"action"}constructor(e,t){this._supportsPreview=e,this._keybindingService=t}renderTemplate(e){e.classList.add(this.templateId);const t=document.createElement("div");t.className="icon",e.append(t);const i=document.createElement("span");i.className="title",e.append(i);const n=new ob(e,Ns);return{container:e,icon:t,text:i,keybinding:n}}renderElement(e,t,i){if(e.group?.icon?(i.icon.className=Ee.asClassName(e.group.icon),e.group.icon.color&&(i.icon.style.color=oe(e.group.icon.color.id))):(i.icon.className=Ee.asClassName(ie.lightBulb),i.icon.style.color="var(--vscode-editorLightBulb-foreground)"),!e.item||!e.label)return;i.text.textContent=OB(e.label),i.keybinding.set(e.keybinding),MV(!!e.keybinding,i.keybinding.element);const n=this._keybindingService.lookupKeybinding(AB)?.getLabel(),s=this._keybindingService.lookupKeybinding(PB)?.getLabel();i.container.classList.toggle("option-disabled",e.disabled),e.disabled?i.container.title=e.label:n&&s?this._supportsPreview&&e.canPreview?i.container.title=m({key:"label-preview",comment:['placeholders are keybindings, e.g "F2 to Apply, Shift+F2 to Preview"']},"{0} to Apply, {1} to Preview",n,s):i.container.title=m({key:"label",comment:['placeholder is a keybinding, e.g "F2 to Apply"']},"{0} to Apply",n):i.container.title=""}disposeTemplate(e){e.keybinding.dispose()}};HE=RB([WE(1,vt)],HE);class Vde extends UIEvent{constructor(){super("acceptSelectedAction")}}class Z4 extends UIEvent{constructor(){super("previewSelectedAction")}}function zde(o){if(o.kind==="action")return o.label}let VE=class extends z{constructor(e,t,i,n,s,r){super(),this._delegate=n,this._contextViewService=s,this._keybindingService=r,this._actionLineHeight=24,this._headerLineHeight=26,this.cts=this._register(new In),this.domNode=document.createElement("div"),this.domNode.classList.add("actionList");const a={getHeight:l=>l.kind==="header"?this._headerLineHeight:this._actionLineHeight,getTemplateId:l=>l.kind};this._list=this._register(new go(e,this.domNode,a,[new HE(t,this._keybindingService),new Hde],{keyboardSupport:!1,typeNavigationEnabled:!0,keyboardNavigationLabelProvider:{getKeyboardNavigationLabel:zde},accessibilityProvider:{getAriaLabel:l=>{if(l.kind==="action"){let c=l.label?OB(l?.label):"";return l.disabled&&(c=m({key:"customQuickFixWidget.labels",comment:["Action widget labels for accessibility."]},"{0}, Disabled Reason: {1}",c,l.disabled)),c}return null},getWidgetAriaLabel:()=>m({key:"customQuickFixWidget",comment:["An action widget option"]},"Action Widget"),getRole:l=>l.kind==="action"?"option":"separator",getWidgetRole:()=>"listbox"}})),this._list.style(hu),this._register(this._list.onMouseClick(l=>this.onListClick(l))),this._register(this._list.onMouseOver(l=>this.onListHover(l))),this._register(this._list.onDidChangeFocus(()=>this.onFocus())),this._register(this._list.onDidChangeSelection(l=>this.onListSelection(l))),this._allMenuItems=i,this._list.splice(0,this._list.length,this._allMenuItems),this._list.length&&this.focusNext()}focusCondition(e){return!e.disabled&&e.kind==="action"}hide(e){this._delegate.onHide(e),this.cts.cancel(),this._contextViewService.hideContextView()}layout(e){const t=this._allMenuItems.filter(l=>l.kind==="header").length,n=this._allMenuItems.length*this._actionLineHeight+t*this._headerLineHeight-t*this._actionLineHeight;this._list.layout(n);let s=e;if(this._allMenuItems.length>=50)s=380;else{const l=this._allMenuItems.map((c,d)=>{const h=this.domNode.ownerDocument.getElementById(this._list.getElementID(d));if(h){h.style.width="auto";const u=h.getBoundingClientRect().width;return h.style.width="",u}return 0});s=Math.max(...l,e)}const a=Math.min(n,this.domNode.ownerDocument.body.clientHeight*.7);return this._list.layout(a,s),this.domNode.style.height=`${a}px`,this._list.domFocus(),s}focusPrevious(){this._list.focusPrevious(1,!0,void 0,this.focusCondition)}focusNext(){this._list.focusNext(1,!0,void 0,this.focusCondition)}acceptSelected(e){const t=this._list.getFocus();if(t.length===0)return;const i=t[0],n=this._list.element(i);if(!this.focusCondition(n))return;const s=e?new Z4:new Vde;this._list.setSelection([i],s)}onListSelection(e){if(!e.elements.length)return;const t=e.elements[0];t.item&&this.focusCondition(t)?this._delegate.onSelect(t.item,e.browserEvent instanceof Z4):this._list.setSelection([])}onFocus(){const e=this._list.getFocus();if(e.length===0)return;const t=e[0],i=this._list.element(t);this._delegate.onFocus?.(i.item)}async onListHover(e){const t=e.element;if(t&&t.item&&this.focusCondition(t)){if(this._delegate.onHover&&!t.disabled&&t.kind==="action"){const i=await this._delegate.onHover(t.item,this.cts.token);t.canPreview=i?i.canPreview:void 0}e.index&&this._list.splice(e.index,1,[t])}this._list.setFocus(typeof e.index=="number"?[e.index]:[])}onListClick(e){e.element&&this.focusCondition(e.element)&&this._list.setFocus([])}};VE=RB([WE(4,lu),WE(5,vt)],VE);function OB(o){return o.replace(/\r\n|\r|\n/g," ")}var Ude=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},pL=function(o,e){return function(t,i){e(t,i,o)}};D("actionBar.toggledBackground",IT,m("actionBar.toggledBackground","Background color for toggled action items in action bar."));const Zh={Visible:new le("codeActionMenuVisible",!1,m("codeActionMenuVisible","Whether the action widget list is visible"))},Cu=He("actionWidgetService");let Yh=class extends z{get isVisible(){return Zh.Visible.getValue(this._contextKeyService)||!1}constructor(e,t,i){super(),this._contextViewService=e,this._contextKeyService=t,this._instantiationService=i,this._list=this._register(new Dn)}show(e,t,i,n,s,r,a){const l=Zh.Visible.bindTo(this._contextKeyService),c=this._instantiationService.createInstance(VE,e,t,i,n);this._contextViewService.showContextView({getAnchor:()=>s,render:d=>(l.set(!0),this._renderWidget(d,c,a??[])),onHide:d=>{l.reset(),this._onWidgetClosed(d)}},r,!1)}acceptSelected(e){this._list.value?.acceptSelected(e)}focusPrevious(){this._list?.value?.focusPrevious()}focusNext(){this._list?.value?.focusNext()}hide(e){this._list.value?.hide(e),this._list.clear()}_renderWidget(e,t,i){const n=document.createElement("div");if(n.classList.add("action-widget"),e.appendChild(n),this._list.value=t,this._list.value)n.appendChild(this._list.value.domNode);else throw new Error("List has no value");const s=new X,r=document.createElement("div"),a=e.appendChild(r);a.classList.add("context-view-block"),s.add(U(a,ee.MOUSE_DOWN,f=>f.stopPropagation()));const l=document.createElement("div"),c=e.appendChild(l);c.classList.add("context-view-pointerBlock"),s.add(U(c,ee.POINTER_MOVE,()=>c.remove())),s.add(U(c,ee.MOUSE_DOWN,()=>c.remove()));let d=0;if(i.length){const f=this._createActionBar(".action-widget-action-bar",i);f&&(n.appendChild(f.getContainer().parentElement),s.add(f),d=f.getContainer().offsetWidth)}const h=this._list.value?.layout(d);n.style.width=`${h}px`;const u=s.add(Ph(e));return s.add(u.onDidBlur(()=>this.hide(!0))),s}_createActionBar(e,t){if(!t.length)return;const i=ce(e),n=new oo(i);return n.push(t,{icon:!1,label:!0}),n}_onWidgetClosed(e){this._list.value?.hide(e)}};Yh=Ude([pL(0,lu),pL(1,De),pL(2,ke)],Yh);Qe(Cu,Yh,1);const hb=1100;Rn(class extends nu{constructor(){super({id:"hideCodeActionWidget",title:di("hideCodeActionWidget.title","Hide action widget"),precondition:Zh.Visible,keybinding:{weight:hb,primary:9,secondary:[1033]}})}run(o){o.get(Cu).hide(!0)}});Rn(class extends nu{constructor(){super({id:"selectPrevCodeAction",title:di("selectPrevCodeAction.title","Select previous action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.focusPrevious()}});Rn(class extends nu{constructor(){super({id:"selectNextCodeAction",title:di("selectNextCodeAction.title","Select next action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.focusNext()}});Rn(class extends nu{constructor(){super({id:AB,title:di("acceptSelected.title","Accept selected action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:3,secondary:[2137]}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.acceptSelected()}});Rn(class extends nu{constructor(){super({id:PB,title:di("previewSelected.title","Preview selected action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:2051}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.acceptSelected(!0)}});const $de=new le("supportedCodeAction",""),Y4="_typescript.applyFixAllCodeAction";class Kde extends z{constructor(e,t,i,n=250){super(),this._editor=e,this._markerService=t,this._signalChange=i,this._delay=n,this._autoTriggerTimer=this._register(new wr),this._register(this._markerService.onMarkerChanged(s=>this._onMarkerChanges(s))),this._register(this._editor.onDidChangeCursorPosition(()=>this._tryAutoTrigger()))}trigger(e){const t=this._getRangeOfSelectionUnlessWhitespaceEnclosed(e);this._signalChange(t?{trigger:e,selection:t}:void 0)}_onMarkerChanges(e){const t=this._editor.getModel();t&&e.some(i=>WT(i,t.uri))&&this._tryAutoTrigger()}_tryAutoTrigger(){this._autoTriggerTimer.cancelAndSet(()=>{this.trigger({type:2,triggerAction:Uc.Default})},this._delay)}_getRangeOfSelectionUnlessWhitespaceEnclosed(e){if(!this._editor.hasModel())return;const t=this._editor.getSelection();if(e.type===1)return t;const i=this._editor.getOption(65).enabled;if(i!==xo.Off){{if(i===xo.On)return t;if(i===xo.OnCode){if(!t.isEmpty())return t;const s=this._editor.getModel(),{lineNumber:r,column:a}=t.getPosition(),l=s.getLineContent(r);if(l.length===0)return;if(a===1){if(/\s/.test(l[0]))return}else if(a===s.getLineMaxColumn(r)){if(/\s/.test(l[l.length-1]))return}else if(/\s/.test(l[a-2])&&/\s/.test(l[a-1]))return}}return t}}}var Td;(function(o){o.Empty={type:0};class e{constructor(i,n,s){this.trigger=i,this.position=n,this._cancellablePromise=s,this.type=1,this.actions=s.catch(r=>{if($c(r))return FB;throw r})}cancel(){this._cancellablePromise.cancel()}}o.Triggered=e})(Td||(Td={}));const FB=Object.freeze({allActions:[],validActions:[],dispose:()=>{},documentation:[],hasAutoFix:!1,hasAIFix:!1,allAIFixes:!1});class jde extends z{constructor(e,t,i,n,s,r,a){super(),this._editor=e,this._registry=t,this._markerService=i,this._progressService=s,this._configurationService=r,this._telemetryService=a,this._codeActionOracle=this._register(new Dn),this._state=Td.Empty,this._onDidChangeState=this._register(new A),this.onDidChangeState=this._onDidChangeState.event,this._disposed=!1,this._supportedCodeActions=$de.bindTo(n),this._register(this._editor.onDidChangeModel(()=>this._update())),this._register(this._editor.onDidChangeModelLanguage(()=>this._update())),this._register(this._registry.onDidChange(()=>this._update())),this._register(this._editor.onDidChangeConfiguration(l=>{l.hasChanged(65)&&this._update()})),this._update()}dispose(){this._disposed||(this._disposed=!0,super.dispose(),this.setState(Td.Empty,!0))}_settingEnabledNearbyQuickfixes(){const e=this._editor?.getModel();return this._configurationService?this._configurationService.getValue("editor.codeActionWidget.includeNearbyQuickFixes",{resource:e?.uri}):!1}_update(){if(this._disposed)return;this._codeActionOracle.value=void 0,this.setState(Td.Empty);const e=this._editor.getModel();if(e&&this._registry.has(e)&&!this._editor.getOption(92)){const t=this._registry.all(e).flatMap(i=>i.providedCodeActionKinds??[]);this._supportedCodeActions.set(t.join(" ")),this._codeActionOracle.value=new Kde(this._editor,this._markerService,i=>{if(!i){this.setState(Td.Empty);return}const n=i.selection.getStartPosition(),s=wa(async l=>{if(this._settingEnabledNearbyQuickfixes()&&i.trigger.type===1&&(i.trigger.triggerAction===Uc.QuickFix||i.trigger.filter?.include?.contains(Di.QuickFix))){const c=await mf(this._registry,e,i.selection,i.trigger,rc.None,l),d=[...c.allActions];if(l.isCancellationRequested)return FB;const h=c.validActions?.some(f=>f.action.kind?Di.QuickFix.contains(new ji(f.action.kind)):!1),u=this._markerService.read({resource:e.uri});if(h){for(const f of c.validActions)f.action.command?.arguments?.some(g=>typeof g=="string"&&g.includes(Y4))&&(f.action.diagnostics=[...u.filter(g=>g.relatedInformation)]);return{validActions:c.validActions,allActions:d,documentation:c.documentation,hasAutoFix:c.hasAutoFix,hasAIFix:c.hasAIFix,allAIFixes:c.allAIFixes,dispose:()=>{c.dispose()}}}else if(!h&&u.length>0){const f=i.selection.getPosition();let g=f,p=Number.MAX_VALUE;const _=[...c.validActions];for(const C of u){const w=C.endColumn,v=C.endLineNumber,y=C.startLineNumber;if(v===f.lineNumber||y===f.lineNumber){g=new P(v,w);const x={type:i.trigger.type,triggerAction:i.trigger.triggerAction,filter:{include:i.trigger.filter?.include?i.trigger.filter?.include:Di.QuickFix},autoApply:i.trigger.autoApply,context:{notAvailableMessage:i.trigger.context?.notAvailableMessage||"",position:g}},L=new Fe(g.lineNumber,g.column,g.lineNumber,g.column),E=await mf(this._registry,e,L,x,rc.None,l);if(E.validActions.length!==0){for(const N of E.validActions)N.action.command?.arguments?.some(H=>typeof H=="string"&&H.includes(Y4))&&(N.action.diagnostics=[...u.filter(H=>H.relatedInformation)]);c.allActions.length===0&&d.push(...E.allActions),Math.abs(f.column-w)v.findIndex(y=>y.action.title===C.action.title)===w);return b.sort((C,w)=>C.action.isPreferred&&!w.action.isPreferred?-1:!C.action.isPreferred&&w.action.isPreferred||C.action.isAI&&!w.action.isAI?1:!C.action.isAI&&w.action.isAI?-1:0),{validActions:b,allActions:d,documentation:c.documentation,hasAutoFix:c.hasAutoFix,hasAIFix:c.hasAIFix,allAIFixes:c.allAIFixes,dispose:()=>{c.dispose()}}}}if(i.trigger.type===1){const c=new Hs,d=await mf(this._registry,e,i.selection,i.trigger,rc.None,l);return this._telemetryService&&this._telemetryService.publicLog2("codeAction.invokedDurations",{codeActions:d.validActions.length,duration:c.elapsed()}),d}return mf(this._registry,e,i.selection,i.trigger,rc.None,l)});i.trigger.type===1&&this._progressService?.showWhile(s,250);const r=new Td.Triggered(i.trigger,n,s);let a=!1;this._state.type===1&&(a=this._state.trigger.type===1&&r.type===1&&r.trigger.type===2&&this._state.position!==r.position),a?setTimeout(()=>{this.setState(r)},500):this.setState(r)},void 0),this._codeActionOracle.value.trigger({type:2,triggerAction:Uc.Default})}else this._supportedCodeActions.reset()}trigger(e){this._codeActionOracle.value?.trigger(e)}setState(e,t){e!==this._state&&(this._state.type===1&&this._state.cancel(),this._state=e,!t&&!this._disposed&&this._onDidChangeState.fire(e))}}var qde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Rr=function(o,e){return function(t,i){e(t,i,o)}},Ku;const Gde="quickfix-edit-highlight";var Ic;let zE=(Ic=class extends z{static get(e){return e.getContribution(Ku.ID)}constructor(e,t,i,n,s,r,a,l,c,d,h){super(),this._commandService=a,this._configurationService=l,this._actionWidgetService=c,this._instantiationService=d,this._telemetryService=h,this._activeCodeActions=this._register(new Dn),this._showDisabled=!1,this._disposed=!1,this._editor=e,this._model=this._register(new jde(this._editor,s.codeActionProvider,t,i,r,l,this._telemetryService)),this._register(this._model.onDidChangeState(u=>this.update(u))),this._lightBulbWidget=new ua(()=>{const u=this._editor.getContribution(BE.ID);return u&&this._register(u.onClick(f=>this.showCodeActionsFromLightbulb(f.actions,f))),u}),this._resolver=n.createInstance(FE),this._register(this._editor.onDidLayoutChange(()=>this._actionWidgetService.hide()))}dispose(){this._disposed=!0,super.dispose()}async showCodeActionsFromLightbulb(e,t){if(e.allAIFixes&&e.validActions.length===1){const i=e.validActions[0],n=i.action.command;n&&n.id==="inlineChat.start"&&n.arguments&&n.arguments.length>=1&&(n.arguments[0]={...n.arguments[0],autoSend:!1}),await this._applyCodeAction(i,!1,!1,Gd.FromAILightbulb);return}await this.showCodeActionList(e,t,{includeDisabledActions:!1,fromLightbulb:!0})}showCodeActions(e,t,i){return this.showCodeActionList(t,i,{includeDisabledActions:!1,fromLightbulb:!1})}manualTriggerAtCurrentPosition(e,t,i,n){if(!this._editor.hasModel())return;ca.get(this._editor)?.closeMessage();const s=this._editor.getPosition();this._trigger({type:1,triggerAction:t,filter:i,autoApply:n,context:{notAvailableMessage:e,position:s}})}_trigger(e){return this._model.trigger(e)}async _applyCodeAction(e,t,i,n){try{await this._instantiationService.invokeFunction(Mde,e,n,{preview:i,editor:this._editor})}finally{t&&this._trigger({type:2,triggerAction:Uc.QuickFix,filter:{}})}}hideLightBulbWidget(){this._lightBulbWidget.rawValue?.hide(),this._lightBulbWidget.rawValue?.gutterHide()}async update(e){if(e.type!==1){this.hideLightBulbWidget();return}let t;try{t=await e.actions}catch(n){Ze(n);return}if(!(this._disposed||this._editor.getSelection()?.startLineNumber!==e.position.lineNumber))if(this._lightBulbWidget.value?.update(t,e.trigger,e.position),e.trigger.type===1){if(e.trigger.filter?.include){const s=this.tryGetValidActionToApply(e.trigger,t);if(s){try{this.hideLightBulbWidget(),await this._applyCodeAction(s,!1,!1,Gd.FromCodeActions)}finally{t.dispose()}return}if(e.trigger.context){const r=this.getInvalidActionThatWouldHaveBeenApplied(e.trigger,t);if(r&&r.action.disabled){ca.get(this._editor)?.showMessage(r.action.disabled,e.trigger.context.position),t.dispose();return}}}const n=!!e.trigger.filter?.include;if(e.trigger.context&&(!t.allActions.length||!n&&!t.validActions.length)){ca.get(this._editor)?.showMessage(e.trigger.context.notAvailableMessage,e.trigger.context.position),this._activeCodeActions.value=t,t.dispose();return}this._activeCodeActions.value=t,this.showCodeActionList(t,this.toCoords(e.position),{includeDisabledActions:n,fromLightbulb:!1})}else this._actionWidgetService.isVisible?t.dispose():this._activeCodeActions.value=t}getInvalidActionThatWouldHaveBeenApplied(e,t){if(t.allActions.length&&(e.autoApply==="first"&&t.validActions.length===0||e.autoApply==="ifSingle"&&t.allActions.length===1))return t.allActions.find(({action:i})=>i.disabled)}tryGetValidActionToApply(e,t){if(t.validActions.length&&(e.autoApply==="first"&&t.validActions.length>0||e.autoApply==="ifSingle"&&t.validActions.length===1))return t.validActions[0]}async showCodeActionList(e,t,i){const n=this._editor.createDecorationsCollection(),s=this._editor.getDomNode();if(!s)return;const r=i.includeDisabledActions&&(this._showDisabled||e.validActions.length===0)?e.allActions:e.validActions;if(!r.length)return;const a=P.isIPosition(t)?this.toCoords(t):t,l={onSelect:async(c,d)=>{this._applyCodeAction(c,!0,!!d,i.fromLightbulb?Gd.FromAILightbulb:Gd.FromCodeActions),this._actionWidgetService.hide(!1),n.clear()},onHide:c=>{this._editor?.focus(),n.clear()},onHover:async(c,d)=>{if(d.isCancellationRequested)return;let h=!1;const u=c.action.kind;if(u){const f=new ji(u);h=[Di.RefactorExtract,Di.RefactorInline,Di.RefactorRewrite,Di.RefactorMove,Di.Source].some(p=>p.contains(f))}return{canPreview:h||!!c.action.edit?.edits.length}},onFocus:c=>{if(c&&c.action){const d=c.action.ranges,h=c.action.diagnostics;if(n.clear(),d&&d.length>0){const u=h&&h?.length>1?h.map(f=>({range:f,options:Ku.DECORATION})):d.map(f=>({range:f,options:Ku.DECORATION}));n.set(u)}else if(h&&h.length>0){const u=h.map(g=>({range:g,options:Ku.DECORATION}));n.set(u);const f=h[0];if(f.startLineNumber&&f.startColumn){const g=this._editor.getModel()?.getWordAtPosition({lineNumber:f.startLineNumber,column:f.startColumn})?.word;Hh(m("editingNewSelection","Context: {0} at line {1} and column {2}.",g,f.startLineNumber,f.startColumn))}}}else n.clear()}};this._actionWidgetService.show("codeActionWidget",!0,Fde(r,this._shouldShowHeaders(),this._resolver.getResolver()),l,a,s,this._getActionBarActions(e,t,i))}toCoords(e){if(!this._editor.hasModel())return{x:0,y:0};this._editor.revealPosition(e,1),this._editor.render();const t=this._editor.getScrolledVisiblePosition(e),i=gi(this._editor.getDomNode()),n=i.left+t.left,s=i.top+t.top+t.height;return{x:n,y:s}}_shouldShowHeaders(){const e=this._editor?.getModel();return this._configurationService.getValue("editor.codeActionWidget.showHeaders",{resource:e?.uri})}_getActionBarActions(e,t,i){if(i.fromLightbulb)return[];const n=e.documentation.map(s=>({id:s.id,label:s.title,tooltip:s.tooltip??"",class:void 0,enabled:!0,run:()=>this._commandService.executeCommand(s.id,...s.arguments??[])}));return i.includeDisabledActions&&e.validActions.length>0&&e.allActions.length!==e.validActions.length&&n.push(this._showDisabled?{id:"hideMoreActions",label:m("hideMoreActions","Hide Disabled"),enabled:!0,tooltip:"",class:void 0,run:()=>(this._showDisabled=!1,this.showCodeActionList(e,t,i))}:{id:"showMoreActions",label:m("showMoreActions","Show Disabled"),enabled:!0,tooltip:"",class:void 0,run:()=>(this._showDisabled=!0,this.showCodeActionList(e,t,i))}),n}},Ku=Ic,Ic.ID="editor.contrib.codeActionController",Ic.DECORATION=kt.register({description:"quickfix-highlight",className:Gde}),Ic);zE=Ku=qde([Rr(1,xa),Rr(2,De),Rr(3,ke),Rr(4,Se),Rr(5,G_),Rr(6,hi),Rr(7,lt),Rr(8,Cu),Rr(9,ke),Rr(10,$s)],zE);Sr((o,e)=>{((n,s)=>{s&&e.addRule(`.monaco-editor ${n} { background-color: ${s}; }`)})(".quickfix-edit-highlight",o.getColor(ll));const i=o.getColor(Ud);i&&e.addRule(`.monaco-editor .quickfix-edit-highlight { border: 1px ${mc(o.type)?"dotted":"solid"} ${i}; box-sizing: border-box; }`)});var BB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},rw=function(o,e){return function(t,i){e(t,i,o)}};class Q4{constructor(e,t,i){this.marker=e,this.index=t,this.total=i}}let UE=class{constructor(e,t,i){this._markerService=t,this._configService=i,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._dispoables=new X,this._markers=[],this._nextIdx=-1,ve.isUri(e)?this._resourceFilter=a=>a.toString()===e.toString():e&&(this._resourceFilter=e);const n=this._configService.getValue("problems.sortOrder"),s=(a,l)=>{let c=Kp(a.resource.toString(),l.resource.toString());return c===0&&(n==="position"?c=I.compareRangesUsingStarts(a,l)||Vt.compare(a.severity,l.severity):c=Vt.compare(a.severity,l.severity)||I.compareRangesUsingStarts(a,l)),c},r=()=>{this._markers=this._markerService.read({resource:ve.isUri(e)?e:void 0,severities:Vt.Error|Vt.Warning|Vt.Info}),typeof e=="function"&&(this._markers=this._markers.filter(a=>this._resourceFilter(a.resource))),this._markers.sort(s)};r(),this._dispoables.add(t.onMarkerChanged(a=>{(!this._resourceFilter||a.some(l=>this._resourceFilter(l)))&&(r(),this._nextIdx=-1,this._onDidChange.fire())}))}dispose(){this._dispoables.dispose(),this._onDidChange.dispose()}matches(e){return!this._resourceFilter&&!e?!0:!this._resourceFilter||!e?!1:this._resourceFilter(e)}get selected(){const e=this._markers[this._nextIdx];return e&&new Q4(e,this._nextIdx+1,this._markers.length)}_initIdx(e,t,i){let n=!1,s=this._markers.findIndex(r=>r.resource.toString()===e.uri.toString());s<0&&(s=SN(this._markers,{resource:e.uri},(r,a)=>Kp(r.resource.toString(),a.resource.toString())),s<0&&(s=~s));for(let r=s;rn.resource.toString()===e.toString());if(!(i<0)){for(;i=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Wu=function(o,e){return function(t,i){e(t,i,o)}},jE;class Yde{constructor(e,t,i,n,s){this._openerService=n,this._labelService=s,this._lines=0,this._longestLineLength=0,this._relatedDiagnostics=new WeakMap,this._disposables=new X,this._editor=t;const r=document.createElement("div");r.className="descriptioncontainer",this._messageBlock=document.createElement("div"),this._messageBlock.classList.add("message"),this._messageBlock.setAttribute("aria-live","assertive"),this._messageBlock.setAttribute("role","alert"),r.appendChild(this._messageBlock),this._relatedBlock=document.createElement("div"),r.appendChild(this._relatedBlock),this._disposables.add(jt(this._relatedBlock,"click",a=>{a.preventDefault();const l=this._relatedDiagnostics.get(a.target);l&&i(l)})),this._scrollable=new J3(r,{horizontal:1,vertical:1,useShadows:!1,horizontalScrollbarSize:6,verticalScrollbarSize:6}),e.appendChild(this._scrollable.getDomNode()),this._disposables.add(this._scrollable.onScroll(a=>{r.style.left=`-${a.scrollLeft}px`,r.style.top=`-${a.scrollTop}px`})),this._disposables.add(this._scrollable)}dispose(){xt(this._disposables)}update(e){const{source:t,message:i,relatedInformation:n,code:s}=e;let r=(t?.length||0)+2;s&&(typeof s=="string"?r+=s.length:r+=s.value.length);const a=va(i);this._lines=a.length,this._longestLineLength=0;for(const u of a)this._longestLineLength=Math.max(u.length+r,this._longestLineLength);xn(this._messageBlock),this._messageBlock.setAttribute("aria-label",this.getAriaLabel(e)),this._editor.applyFontInfo(this._messageBlock);let l=this._messageBlock;for(const u of a)l=document.createElement("div"),l.innerText=u,u===""&&(l.style.height=this._messageBlock.style.lineHeight),this._messageBlock.appendChild(l);if(t||s){const u=document.createElement("span");if(u.classList.add("details"),l.appendChild(u),t){const f=document.createElement("span");f.innerText=t,f.classList.add("source"),u.appendChild(f)}if(s)if(typeof s=="string"){const f=document.createElement("span");f.innerText=`(${s})`,f.classList.add("code"),u.appendChild(f)}else{this._codeLink=ce("a.code-link"),this._codeLink.setAttribute("href",`${s.target.toString()}`),this._codeLink.onclick=g=>{this._openerService.open(s.target,{allowCommands:!0}),g.preventDefault(),g.stopPropagation()};const f=Z(this._codeLink,ce("span"));f.innerText=s.value,u.appendChild(this._codeLink)}}if(xn(this._relatedBlock),this._editor.applyFontInfo(this._relatedBlock),Ps(n)){const u=this._relatedBlock.appendChild(document.createElement("div"));u.style.paddingTop=`${Math.floor(this._editor.getOption(67)*.66)}px`,this._lines+=1;for(const f of n){const g=document.createElement("div"),p=document.createElement("a");p.classList.add("filename"),p.innerText=`${this._labelService.getUriBasenameLabel(f.resource)}(${f.startLineNumber}, ${f.startColumn}): `,p.title=this._labelService.getUriLabel(f.resource),this._relatedDiagnostics.set(p,f);const _=document.createElement("span");_.innerText=f.message,g.appendChild(p),g.appendChild(_),this._lines+=1,u.appendChild(g)}}const c=this._editor.getOption(50),d=Math.ceil(c.typicalFullwidthCharacterWidth*this._longestLineLength*.75),h=c.lineHeight*this._lines;this._scrollable.setScrollDimensions({scrollWidth:d,scrollHeight:h})}layout(e,t){this._scrollable.getDomNode().style.height=`${e}px`,this._scrollable.getDomNode().style.width=`${t}px`,this._scrollable.setScrollDimensions({width:t,height:e})}getHeightInLines(){return Math.min(17,this._lines)}getAriaLabel(e){let t="";switch(e.severity){case Vt.Error:t=m("Error","Error");break;case Vt.Warning:t=m("Warning","Warning");break;case Vt.Info:t=m("Info","Info");break;case Vt.Hint:t=m("Hint","Hint");break}let i=m("marker aria","{0} at {1}. ",t,e.startLineNumber+":"+e.startColumn);const n=this._editor.getModel();return n&&e.startLineNumber<=n.getLineCount()&&e.startLineNumber>=1&&(i=`${n.getLineContent(e.startLineNumber)}, ${i}`),i}}var yh;let O_=(yh=class extends Qv{constructor(e,t,i,n,s,r,a){super(e,{showArrow:!0,showFrame:!0,isAccessible:!0,frameWidth:1},s),this._themeService=t,this._openerService=i,this._menuService=n,this._contextKeyService=r,this._labelService=a,this._callOnDispose=new X,this._onDidSelectRelatedInformation=new A,this.onDidSelectRelatedInformation=this._onDidSelectRelatedInformation.event,this._severity=Vt.Warning,this._backgroundColor=q.white,this._applyTheme(t.getColorTheme()),this._callOnDispose.add(t.onDidColorThemeChange(this._applyTheme.bind(this))),this.create()}_applyTheme(e){this._backgroundColor=e.getColor(ehe);let t=qE,i=Qde;this._severity===Vt.Warning?(t=J1,i=Xde):this._severity===Vt.Info&&(t=GE,i=Jde);const n=e.getColor(t),s=e.getColor(i);this.style({arrowColor:n,frameColor:n,headerBackgroundColor:s,primaryHeadingColor:e.getColor(iB),secondaryHeadingColor:e.getColor(nB)})}_applyStyles(){this._parentContainer&&(this._parentContainer.style.backgroundColor=this._backgroundColor?this._backgroundColor.toString():""),super._applyStyles()}dispose(){this._callOnDispose.dispose(),super.dispose()}_fillHead(e){super._fillHead(e),this._disposables.add(this._actionbarWidget.actionRunner.onWillRun(n=>this.editor.focus()));const t=[],i=this._menuService.getMenuActions(jE.TitleMenu,this._contextKeyService);XT(i,t),this._actionbarWidget.push(t,{label:!1,icon:!0,index:0})}_fillTitleIcon(e){this._icon=Z(e,ce(""))}_fillBody(e){this._parentContainer=e,e.classList.add("marker-widget"),this._parentContainer.tabIndex=0,this._parentContainer.setAttribute("role","tooltip"),this._container=document.createElement("div"),e.appendChild(this._container),this._message=new Yde(this._container,this.editor,t=>this._onDidSelectRelatedInformation.fire(t),this._openerService,this._labelService),this._disposables.add(this._message)}show(){throw new Error("call showAtMarker")}showAtMarker(e,t,i){this._container.classList.remove("stale"),this._message.update(e),this._severity=e.severity,this._applyTheme(this._themeService.getColorTheme());const n=I.lift(e),s=this.editor.getPosition(),r=s&&n.containsPosition(s)?s:n.getStartPosition();super.show(r,this.computeRequiredHeight());const a=this.editor.getModel();if(a){const l=i>1?m("problems","{0} of {1} problems",t,i):m("change","{0} of {1} problem",t,i);this.setTitle(Fo(a.uri),l)}this._icon.className=`codicon ${KE.className(Vt.toSeverity(this._severity))}`,this.editor.revealPositionNearTop(r,0),this.editor.focus()}updateMarker(e){this._container.classList.remove("stale"),this._message.update(e)}showStale(){this._container.classList.add("stale"),this._relayout()}_doLayoutBody(e,t){super._doLayoutBody(e,t),this._heightInPixel=e,this._message.layout(e,t),this._container.style.height=`${e}px`}_onWidth(e){this._message.layout(this._heightInPixel,e)}_relayout(){super._relayout(this.computeRequiredHeight())}computeRequiredHeight(){return 3+this._message.getHeightInLines()}},jE=yh,yh.TitleMenu=new $e("gotoErrorTitleMenu"),yh);O_=jE=Zde([Wu(1,en),Wu(2,Vo),Wu(3,yr),Wu(4,ke),Wu(5,De),Wu(6,Cg)],O_);const X4=t_(Y0,SK),J4=t_(Il,i_),e5=t_(ma,n_),qE=D("editorMarkerNavigationError.background",{dark:X4,light:X4,hcDark:Ye,hcLight:Ye},m("editorMarkerNavigationError","Editor marker navigation widget error color.")),Qde=D("editorMarkerNavigationError.headerBackground",{dark:Ae(qE,.1),light:Ae(qE,.1),hcDark:null,hcLight:null},m("editorMarkerNavigationErrorHeaderBackground","Editor marker navigation widget error heading background.")),J1=D("editorMarkerNavigationWarning.background",{dark:J4,light:J4,hcDark:Ye,hcLight:Ye},m("editorMarkerNavigationWarning","Editor marker navigation widget warning color.")),Xde=D("editorMarkerNavigationWarning.headerBackground",{dark:Ae(J1,.1),light:Ae(J1,.1),hcDark:"#0C141F",hcLight:Ae(J1,.2)},m("editorMarkerNavigationWarningBackground","Editor marker navigation widget warning heading background.")),GE=D("editorMarkerNavigationInfo.background",{dark:e5,light:e5,hcDark:Ye,hcLight:Ye},m("editorMarkerNavigationInfo","Editor marker navigation widget info color.")),Jde=D("editorMarkerNavigationInfo.headerBackground",{dark:Ae(GE,.1),light:Ae(GE,.1),hcDark:null,hcLight:null},m("editorMarkerNavigationInfoHeaderBackground","Editor marker navigation widget info heading background.")),ehe=D("editorMarkerNavigation.background",Oo,m("editorMarkerNavigationBackground","Editor marker navigation widget background."));var the=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},u1=function(o,e){return function(t,i){e(t,i,o)}},Vm,Sh;let Qh=(Sh=class{static get(e){return e.getContribution(Vm.ID)}constructor(e,t,i,n,s){this._markerNavigationService=t,this._contextKeyService=i,this._editorService=n,this._instantiationService=s,this._sessionDispoables=new X,this._editor=e,this._widgetVisible=HB.bindTo(this._contextKeyService)}dispose(){this._cleanUp(),this._sessionDispoables.dispose()}_cleanUp(){this._widgetVisible.reset(),this._sessionDispoables.clear(),this._widget=void 0,this._model=void 0}_getOrCreateModel(e){if(this._model&&this._model.matches(e))return this._model;let t=!1;return this._model&&(t=!0,this._cleanUp()),this._model=this._markerNavigationService.getMarkerList(e),t&&this._model.move(!0,this._editor.getModel(),this._editor.getPosition()),this._widget=this._instantiationService.createInstance(O_,this._editor),this._widget.onDidClose(()=>this.close(),this,this._sessionDispoables),this._widgetVisible.set(!0),this._sessionDispoables.add(this._model),this._sessionDispoables.add(this._widget),this._sessionDispoables.add(this._editor.onDidChangeCursorPosition(i=>{(!this._model?.selected||!I.containsPosition(this._model?.selected.marker,i.position))&&this._model?.resetIndex()})),this._sessionDispoables.add(this._model.onDidChange(()=>{if(!this._widget||!this._widget.position||!this._model)return;const i=this._model.find(this._editor.getModel().uri,this._widget.position);i?this._widget.updateMarker(i.marker):this._widget.showStale()})),this._sessionDispoables.add(this._widget.onDidSelectRelatedInformation(i=>{this._editorService.openCodeEditor({resource:i.resource,options:{pinned:!0,revealIfOpened:!0,selection:I.lift(i).collapseToStart()}},this._editor),this.close(!1)})),this._sessionDispoables.add(this._editor.onDidChangeModel(()=>this._cleanUp())),this._model}close(e=!0){this._cleanUp(),e&&this._editor.focus()}showAtMarker(e){if(this._editor.hasModel()){const t=this._getOrCreateModel(this._editor.getModel().uri);t.resetIndex(),t.move(!0,this._editor.getModel(),new P(e.startLineNumber,e.startColumn)),t.selected&&this._widget.showAtMarker(t.selected.marker,t.selected.index,t.selected.total)}}async nagivate(e,t){if(this._editor.hasModel()){const i=this._getOrCreateModel(t?void 0:this._editor.getModel().uri);if(i.move(e,this._editor.getModel(),this._editor.getPosition()),!i.selected)return;if(i.selected.marker.resource.toString()!==this._editor.getModel().uri.toString()){this._cleanUp();const n=await this._editorService.openCodeEditor({resource:i.selected.marker.resource,options:{pinned:!1,revealIfOpened:!0,selectionRevealType:2,selection:i.selected.marker}},this._editor);n&&(Vm.get(n)?.close(),Vm.get(n)?.nagivate(e,t))}else this._widget.showAtMarker(i.selected.marker,i.selected.index,i.selected.total)}}},Vm=Sh,Sh.ID="editor.contrib.markerController",Sh);Qh=Vm=the([u1(1,WB),u1(2,De),u1(3,Pt),u1(4,ke)],Qh);class Fy extends bi{constructor(e,t,i){super(i),this._next=e,this._multiFile=t}async run(e,t){t.hasModel()&&Qh.get(t)?.nagivate(this._next,this._multiFile)}}const Bd=class Bd extends Fy{constructor(){super(!0,!1,{id:Bd.ID,label:Bd.LABEL,alias:"Go to Next Problem (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:578,weight:100},menuOpts:{menuId:O_.TitleMenu,title:Bd.LABEL,icon:Wi("marker-navigation-next",ie.arrowDown,m("nextMarkerIcon","Icon for goto next marker.")),group:"navigation",order:1}})}};Bd.ID="editor.action.marker.next",Bd.LABEL=m("markerAction.next.label","Go to Next Problem (Error, Warning, Info)");let aw=Bd;const Wd=class Wd extends Fy{constructor(){super(!1,!1,{id:Wd.ID,label:Wd.LABEL,alias:"Go to Previous Problem (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:1602,weight:100},menuOpts:{menuId:O_.TitleMenu,title:Wd.LABEL,icon:Wi("marker-navigation-previous",ie.arrowUp,m("previousMarkerIcon","Icon for goto previous marker.")),group:"navigation",order:2}})}};Wd.ID="editor.action.marker.prev",Wd.LABEL=m("markerAction.previous.label","Go to Previous Problem (Error, Warning, Info)");let ZE=Wd;class ihe extends Fy{constructor(){super(!0,!0,{id:"editor.action.marker.nextInFiles",label:m("markerAction.nextInFiles.label","Go to Next Problem in Files (Error, Warning, Info)"),alias:"Go to Next Problem in Files (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:66,weight:100},menuOpts:{menuId:$e.MenubarGoMenu,title:m({key:"miGotoNextProblem",comment:["&& denotes a mnemonic"]},"Next &&Problem"),group:"6_problem_nav",order:1}})}}class nhe extends Fy{constructor(){super(!1,!0,{id:"editor.action.marker.prevInFiles",label:m("markerAction.previousInFiles.label","Go to Previous Problem in Files (Error, Warning, Info)"),alias:"Go to Previous Problem in Files (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:1090,weight:100},menuOpts:{menuId:$e.MenubarGoMenu,title:m({key:"miGotoPreviousProblem",comment:["&& denotes a mnemonic"]},"Previous &&Problem"),group:"6_problem_nav",order:2}})}}Ho(Qh.ID,Qh,4);mi(aw);mi(ZE);mi(ihe);mi(nhe);const HB=new le("markersNavigationVisible",!1),she=co.bindToContribution(Qh.get);ge(new she({id:"closeMarkersNavigation",precondition:HB,handler:o=>o.close(),kbOpts:{weight:150,kbExpr:K.focus,primary:9,secondary:[1033]}}));var ohe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},_L=function(o,e){return function(t,i){e(t,i,o)}};const bo=ce;class rhe{constructor(e,t,i){this.owner=e,this.range=t,this.marker=i}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}const t5={type:1,filter:{include:Di.QuickFix},triggerAction:Uc.QuickFixHover};let YE=class{constructor(e,t,i,n){this._editor=e,this._markerDecorationsService=t,this._openerService=i,this._languageFeaturesService=n,this.hoverOrdinal=1,this.recentMarkerCodeActionsInfo=void 0}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1&&!e.supportsMarkerHover)return[];const i=this._editor.getModel(),n=e.range.startLineNumber,s=i.getLineMaxColumn(n),r=[];for(const a of t){const l=a.range.startLineNumber===n?a.range.startColumn:1,c=a.range.endLineNumber===n?a.range.endColumn:s,d=this._markerDecorationsService.getMarker(i.uri,a);if(!d)continue;const h=new I(e.range.startLineNumber,l,e.range.startLineNumber,c);r.push(new rhe(this,h,d))}return r}renderHoverParts(e,t){if(!t.length)return new Ng([]);const i=new X,n=[];t.forEach(r=>{const a=this._renderMarkerHover(r);e.fragment.appendChild(a.hoverElement),n.push(a)});const s=t.length===1?t[0]:t.sort((r,a)=>Vt.compare(r.marker.severity,a.marker.severity))[0];return this.renderMarkerStatusbar(e,s,i),new Ng(n)}_renderMarkerHover(e){const t=new X,i=bo("div.hover-row"),n=Z(i,bo("div.marker.hover-contents")),{source:s,message:r,code:a,relatedInformation:l}=e.marker;this._editor.applyFontInfo(n);const c=Z(n,bo("span"));if(c.style.whiteSpace="pre-wrap",c.innerText=r,s||a)if(a&&typeof a!="string"){const h=bo("span");if(s){const p=Z(h,bo("span"));p.innerText=s}const u=Z(h,bo("a.code-link"));u.setAttribute("href",a.target.toString()),t.add(U(u,"click",p=>{this._openerService.open(a.target,{allowCommands:!0}),p.preventDefault(),p.stopPropagation()}));const f=Z(u,bo("span"));f.innerText=a.value;const g=Z(n,h);g.style.opacity="0.6",g.style.paddingLeft="6px"}else{const h=Z(n,bo("span"));h.style.opacity="0.6",h.style.paddingLeft="6px",h.innerText=s&&a?`${s}(${a})`:s||`(${a})`}if(Ps(l))for(const{message:h,resource:u,startLineNumber:f,startColumn:g}of l){const p=Z(n,bo("div"));p.style.marginTop="8px";const _=Z(p,bo("a"));_.innerText=`${Fo(u)}(${f}, ${g}): `,_.style.cursor="pointer",t.add(U(_,"click",C=>{if(C.stopPropagation(),C.preventDefault(),this._openerService){const w={selection:{startLineNumber:f,startColumn:g}};this._openerService.open(u,{fromUserGesture:!0,editorOptions:w}).catch(Ze)}}));const b=Z(p,bo("span"));b.innerText=h,this._editor.applyFontInfo(b)}return{hoverPart:e,hoverElement:i,dispose:()=>t.dispose()}}renderMarkerStatusbar(e,t,i){if(t.marker.severity===Vt.Error||t.marker.severity===Vt.Warning||t.marker.severity===Vt.Info){const n=Qh.get(this._editor);n&&e.statusBar.addAction({label:m("view problem","View Problem"),commandId:aw.ID,run:()=>{e.hide(),n.showAtMarker(t.marker),this._editor.focus()}})}if(!this._editor.getOption(92)){const n=e.statusBar.append(bo("div"));this.recentMarkerCodeActionsInfo&&(QC.makeKey(this.recentMarkerCodeActionsInfo.marker)===QC.makeKey(t.marker)?this.recentMarkerCodeActionsInfo.hasCodeActions||(n.textContent=m("noQuickFixes","No quick fixes available")):this.recentMarkerCodeActionsInfo=void 0);const s=this.recentMarkerCodeActionsInfo&&!this.recentMarkerCodeActionsInfo.hasCodeActions?z.None:rg(()=>n.textContent=m("checkingForQuickFixes","Checking for quick fixes..."),200,i);n.textContent||(n.textContent=" ");const r=this.getCodeActions(t.marker);i.add(_e(()=>r.cancel())),r.then(a=>{if(s.dispose(),this.recentMarkerCodeActionsInfo={marker:t.marker,hasCodeActions:a.validActions.length>0},!this.recentMarkerCodeActionsInfo.hasCodeActions){a.dispose(),n.textContent=m("noQuickFixes","No quick fixes available");return}n.style.display="none";let l=!1;i.add(_e(()=>{l||a.dispose()})),e.statusBar.addAction({label:m("quick fixes","Quick Fix..."),commandId:TB,run:c=>{l=!0;const d=zE.get(this._editor),h=gi(c);e.hide(),d?.showCodeActions(t5,a,{x:h.left,y:h.top,width:h.width,height:h.height})}})},Ze)}}getCodeActions(e){return wa(t=>mf(this._languageFeaturesService.codeActionProvider,this._editor.getModel(),new I(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),t5,rc.None,t))}};YE=ohe([_L(1,n2),_L(2,Vo),_L(3,Se)],YE);class ahe{get lineNumber(){return this._lineNumber}set lineNumber(e){this._lineNumber=e}get lane(){return this._laneOrLine}set lane(e){this._laneOrLine=e}constructor(e){this._editor=e,this._lineNumber=-1,this._laneOrLine=Ao.Center}computeSync(){const e=s=>({value:s}),t=this._editor.getLineDecorations(this._lineNumber),i=[],n=this._laneOrLine==="lineNo";if(!t)return i;for(const s of t){const r=s.options.glyphMargin?.position??Ao.Center;if(!n&&r!==this._laneOrLine)continue;const a=n?s.options.lineNumberHoverMessage:s.options.glyphMarginHoverMessage;!a||bg(a)||i.push(...T5(a).map(e))}return i}}var lhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},i5=function(o,e){return function(t,i){e(t,i,o)}},QE;const n5=ce;var Lh;let XE=(Lh=class extends z{constructor(e,t,i){super(),this._renderDisposeables=this._register(new X),this._editor=e,this._isVisible=!1,this._messages=[],this._hover=this._register(new RT),this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible),this._markdownRenderer=this._register(new Wh({editor:this._editor},t,i)),this._computer=new ahe(this._editor),this._hoverOperation=this._register(new fB(this._editor,this._computer)),this._register(this._hoverOperation.onResult(n=>{this._withResult(n.value)})),this._register(this._editor.onDidChangeModelDecorations(()=>this._onModelDecorationsChanged())),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(50)&&this._updateFont()})),this._register(jt(this._hover.containerDomNode,"mouseleave",n=>{this._onMouseLeave(n)})),this._editor.addOverlayWidget(this)}dispose(){this._editor.removeOverlayWidget(this),super.dispose()}getId(){return QE.ID}getDomNode(){return this._hover.containerDomNode}getPosition(){return null}_updateFont(){Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName("code")).forEach(t=>this._editor.applyFontInfo(t))}_onModelDecorationsChanged(){this._isVisible&&(this._hoverOperation.cancel(),this._hoverOperation.start(0))}showsOrWillShow(e){const t=e.target;return t.type===2&&t.detail.glyphMarginLane?(this._startShowingAt(t.position.lineNumber,t.detail.glyphMarginLane),!0):t.type===3?(this._startShowingAt(t.position.lineNumber,"lineNo"),!0):!1}_startShowingAt(e,t){this._computer.lineNumber===e&&this._computer.lane===t||(this._hoverOperation.cancel(),this.hide(),this._computer.lineNumber=e,this._computer.lane=t,this._hoverOperation.start(0))}hide(){this._computer.lineNumber=-1,this._hoverOperation.cancel(),this._isVisible&&(this._isVisible=!1,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible))}_withResult(e){this._messages=e,this._messages.length>0?this._renderMessages(this._computer.lineNumber,this._messages):this.hide()}_renderMessages(e,t){this._renderDisposeables.clear();const i=document.createDocumentFragment();for(const n of t){const s=n5("div.hover-row.markdown-hover"),r=Z(s,n5("div.hover-contents")),a=this._renderDisposeables.add(this._markdownRenderer.render(n.value));r.appendChild(a.element),i.appendChild(s)}this._updateContents(i),this._showAt(e)}_updateContents(e){this._hover.contentsDomNode.textContent="",this._hover.contentsDomNode.appendChild(e),this._updateFont()}_showAt(e){this._isVisible||(this._isVisible=!0,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible));const t=this._editor.getLayoutInfo(),i=this._editor.getTopForLineNumber(e),n=this._editor.getScrollTop(),s=this._editor.getOption(67),r=this._hover.containerDomNode.clientHeight,a=i-n-(r-s)/2,l=t.glyphMarginLeft+t.glyphMarginWidth+(this._computer.lane==="lineNo"?t.lineNumbersWidth:0);this._hover.containerDomNode.style.left=`${l}px`,this._hover.containerDomNode.style.top=`${Math.max(Math.round(a),0)}px`}_onMouseLeave(e){const t=this._editor.getDomNode();(!t||!Py(t,e.x,e.y))&&this.hide()}},QE=Lh,Lh.ID="editor.contrib.modesGlyphHoverWidget",Lh);XE=QE=lhe([i5(1,qt),i5(2,Vo)],XE);var che=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},dhe=function(o,e){return function(t,i){e(t,i,o)}},tg;let lw=(tg=class extends z{constructor(e,t){super(),this._editor=e,this._instantiationService=t,this.shouldKeepOpenOnEditorMouseMoveOrLeave=!1,this._listenersStore=new X,this._hoverState={mouseDown:!1},this._reactToEditorMouseMoveRunner=this._register(new ci(()=>this._reactToEditorMouseMove(this._mouseMoveEvent),0)),this._hookListeners(),this._register(this._editor.onDidChangeConfiguration(i=>{i.hasChanged(60)&&(this._unhookListeners(),this._hookListeners())}))}_hookListeners(){const e=this._editor.getOption(60);this._hoverSettings={enabled:e.enabled,sticky:e.sticky,hidingDelay:e.hidingDelay},e.enabled?(this._listenersStore.add(this._editor.onMouseDown(t=>this._onEditorMouseDown(t))),this._listenersStore.add(this._editor.onMouseUp(()=>this._onEditorMouseUp())),this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))):(this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))),this._listenersStore.add(this._editor.onMouseLeave(t=>this._onEditorMouseLeave(t))),this._listenersStore.add(this._editor.onDidChangeModel(()=>{this._cancelScheduler(),this._hideWidgets()})),this._listenersStore.add(this._editor.onDidChangeModelContent(()=>this._cancelScheduler())),this._listenersStore.add(this._editor.onDidScrollChange(t=>this._onEditorScrollChanged(t)))}_unhookListeners(){this._listenersStore.clear()}_cancelScheduler(){this._mouseMoveEvent=void 0,this._reactToEditorMouseMoveRunner.cancel()}_onEditorScrollChanged(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()}_onEditorMouseDown(e){this._hoverState.mouseDown=!0,!this._isMouseOnMarginHoverWidget(e)&&this._hideWidgets()}_isMouseOnMarginHoverWidget(e){const t=this._glyphWidget?.getDomNode();return t?Py(t,e.event.posx,e.event.posy):!1}_onEditorMouseUp(){this._hoverState.mouseDown=!1}_onEditorMouseLeave(e){this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._cancelScheduler(),this._isMouseOnMarginHoverWidget(e))||this._hideWidgets()}_shouldNotRecomputeCurrentHoverWidget(e){const t=this._hoverSettings.sticky,i=this._isMouseOnMarginHoverWidget(e);return t&&i}_onEditorMouseMove(e){if(this.shouldKeepOpenOnEditorMouseMoveOrLeave)return;if(this._mouseMoveEvent=e,this._shouldNotRecomputeCurrentHoverWidget(e)){this._reactToEditorMouseMoveRunner.cancel();return}this._reactToEditorMouseMove(e)}_reactToEditorMouseMove(e){!e||this._tryShowHoverWidget(e)||this._hideWidgets()}_tryShowHoverWidget(e){return this._getOrCreateGlyphWidget().showsOrWillShow(e)}_onKeyDown(e){this._editor.hasModel()&&(e.keyCode===5||e.keyCode===6||e.keyCode===57||e.keyCode===4||this._hideWidgets())}_hideWidgets(){this._glyphWidget?.hide()}_getOrCreateGlyphWidget(){return this._glyphWidget||(this._glyphWidget=this._instantiationService.createInstance(XE,this._editor)),this._glyphWidget}dispose(){super.dispose(),this._unhookListeners(),this._listenersStore.dispose(),this._glyphWidget?.dispose()}},tg.ID="editor.contrib.marginHover",tg);lw=che([dhe(1,ke)],lw);const By=new class{constructor(){this._implementations=[]}register(e){return this._implementations.push(e),{dispose:()=>{const t=this._implementations.indexOf(e);t!==-1&&this._implementations.splice(t,1)}}}getImplementations(){return this._implementations}};class hhe{}class uhe{}class fhe{}Ho(Tn.ID,Tn,2);Ho(lw.ID,lw,2);mi(dde);mi(hde);mi(ude);mi(fde);mi(gde);mi(mde);mi(pde);mi(_de);mi(bde);mi(Cde);mi(vde);mi(wde);Oy.register(P_);Oy.register(YE);Sr((o,e)=>{const t=o.getColor(z3);t&&(e.addRule(`.monaco-editor .monaco-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${t.transparent(.5)}; }`),e.addRule(`.monaco-editor .monaco-hover hr { border-top: 1px solid ${t.transparent(.5)}; }`),e.addRule(`.monaco-editor .monaco-hover hr { border-bottom: 0px solid ${t.transparent(.5)}; }`))});By.register(new hhe);By.register(new uhe);By.register(new fhe);const zr=class zr extends z{constructor(e,t){super(),this.contextKeyService=e,this.model=t,this.inlineCompletionVisible=zr.inlineSuggestionVisible.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentation=zr.inlineSuggestionHasIndentation.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentationLessThanTabSize=zr.inlineSuggestionHasIndentationLessThanTabSize.bindTo(this.contextKeyService),this.suppressSuggestions=zr.suppressSuggestions.bindTo(this.contextKeyService),this._register(We(i=>{const s=this.model.read(i)?.state.read(i),r=!!s?.inlineCompletion&&s?.primaryGhostText!==void 0&&!s?.primaryGhostText.isEmpty();this.inlineCompletionVisible.set(r),s?.primaryGhostText&&s?.inlineCompletion&&this.suppressSuggestions.set(s.inlineCompletion.inlineCompletion.source.inlineCompletions.suppressSuggestions)})),this._register(We(i=>{const n=this.model.read(i);let s=!1,r=!0;const a=n?.primaryGhostText.read(i);if(n?.selectedSuggestItem&&a&&a.parts.length>0){const{column:l,lines:c}=a.parts[0],d=c[0],h=n.textModel.getLineIndentColumn(a.lineNumber);if(l<=h){let f=zn(d);f===-1&&(f=d.length-1),s=f>0;const g=n.textModel.getOptions().tabSize;r=_i.visibleColumnFromColumn(d,f+1,g){t.setStyle(o.read(i))})),e}class cw{constructor(e,t){this.lineNumber=e,this.parts=t}equals(e){return this.lineNumber===e.lineNumber&&this.parts.length===e.parts.length&&this.parts.every((t,i)=>t.equals(e.parts[i]))}renderForScreenReader(e){if(this.parts.length===0)return"";const t=this.parts[this.parts.length-1],i=e.substr(0,t.column-1);return new gT([...this.parts.map(s=>new fa(I.fromPositions(new P(1,s.column)),s.lines.join(` -`)))]).applyToString(i).substring(this.parts[0].column-1)}isEmpty(){return this.parts.every(e=>e.lines.length===0)}get lineCount(){return 1+this.parts.reduce((e,t)=>e+t.lines.length-1,0)}}class JE{constructor(e,t,i){this.column=e,this.text=t,this.preview=i,this.lines=va(this.text)}equals(e){return this.column===e.column&&this.lines.length===e.lines.length&&this.lines.every((t,i)=>t===e.lines[i])}}class eN{constructor(e,t,i,n=0){this.lineNumber=e,this.columnRange=t,this.text=i,this.additionalReservedLineCount=n,this.parts=[new JE(this.columnRange.endColumnExclusive,this.text,!1)],this.newLines=va(this.text)}renderForScreenReader(e){return this.newLines.join(` -`)}get lineCount(){return this.newLines.length}isEmpty(){return this.parts.every(e=>e.lines.length===0)}equals(e){return this.lineNumber===e.lineNumber&&this.columnRange.equals(e.columnRange)&&this.newLines.length===e.newLines.length&&this.newLines.every((t,i)=>t===e.newLines[i])&&this.additionalReservedLineCount===e.additionalReservedLineCount}}function s5(o,e){return li(o,e,VB)}function VB(o,e){return o===e?!0:!o||!e?!1:o instanceof cw&&e instanceof cw||o instanceof eN&&e instanceof eN?o.equals(e):!1}const mhe=[];function phe(){return mhe}class _he{constructor(e,t){if(this.startColumn=e,this.endColumnExclusive=t,e>t)throw new nt(`startColumn ${e} cannot be after endColumnExclusive ${t}`)}toRange(e){return new I(e,this.startColumn,e,this.endColumnExclusive)}equals(e){return this.startColumn===e.startColumn&&this.endColumnExclusive===e.endColumnExclusive}}function bhe(o,e){const t=new X,i=o.createDecorationsCollection();return t.add(Z_({debugName:()=>`Apply decorations from ${e.debugName}`},n=>{const s=e.read(n);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}function Che(o,e){return new P(o.lineNumber+e.lineNumber-1,e.lineNumber===1?o.column+e.column-1:e.column)}function o5(o,e){return new P(o.lineNumber-e.lineNumber+1,o.lineNumber-e.lineNumber===0?o.column-e.column+1:o.column)}var vhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},whe=function(o,e){return function(t,i){e(t,i,o)}};const r5="ghost-text";let tN=class extends z{constructor(e,t,i){super(),this.editor=e,this.model=t,this.languageService=i,this.isDisposed=Ge(this,!1),this.currentTextModel=gt(this,this.editor.onDidChangeModel,()=>this.editor.getModel()),this.uiState=Ce(this,n=>{if(this.isDisposed.read(n))return;const s=this.currentTextModel.read(n);if(s!==this.model.targetTextModel.read(n))return;const r=this.model.ghostText.read(n);if(!r)return;const a=r instanceof eN?r.columnRange:void 0,l=[],c=[];function d(p,_){if(c.length>0){const b=c[c.length-1];_&&b.decorations.push(new As(b.content.length+1,b.content.length+1+p[0].length,_,0)),b.content+=p[0],p=p.slice(1)}for(const b of p)c.push({content:b,decorations:_?[new As(1,b.length+1,_,0)]:[]})}const h=s.getLineContent(r.lineNumber);let u,f=0;for(const p of r.parts){let _=p.lines;u===void 0?(l.push({column:p.column,text:_[0],preview:p.preview}),_=_.slice(1)):d([h.substring(f,p.column-1)],void 0),_.length>0&&(d(_,r5),u===void 0&&p.column<=h.length&&(u=p.column)),f=p.column-1}u!==void 0&&d([h.substring(f)],void 0);const g=u!==void 0?new _he(u,h.length+1):void 0;return{replacedRange:a,inlineTexts:l,additionalLines:c,hiddenRange:g,lineNumber:r.lineNumber,additionalReservedLineCount:this.model.minReservedLineCount.read(n),targetTextModel:s}}),this.decorations=Ce(this,n=>{const s=this.uiState.read(n);if(!s)return[];const r=[];s.replacedRange&&r.push({range:s.replacedRange.toRange(s.lineNumber),options:{inlineClassName:"inline-completion-text-to-replace",description:"GhostTextReplacement"}}),s.hiddenRange&&r.push({range:s.hiddenRange.toRange(s.lineNumber),options:{inlineClassName:"ghost-text-hidden",description:"ghost-text-hidden"}});for(const a of s.inlineTexts)r.push({range:I.fromPositions(new P(s.lineNumber,a.column)),options:{description:r5,after:{content:a.text,inlineClassName:a.preview?"ghost-text-decoration-preview":"ghost-text-decoration",cursorStops:gr.Left},showIfCollapsed:!0}});return r}),this.additionalLinesWidget=this._register(new yhe(this.editor,this.languageService.languageIdCodec,Ce(n=>{const s=this.uiState.read(n);return s?{lineNumber:s.lineNumber,additionalLines:s.additionalLines,minReservedLineCount:s.additionalReservedLineCount,targetTextModel:s.targetTextModel}:void 0}))),this._register(_e(()=>{this.isDisposed.set(!0,void 0)})),this._register(bhe(this.editor,this.decorations))}ownsViewZone(e){return this.additionalLinesWidget.viewZoneId===e}};tN=vhe([whe(2,qt)],tN);class yhe extends z{get viewZoneId(){return this._viewZoneId}constructor(e,t,i){super(),this.editor=e,this.languageIdCodec=t,this.lines=i,this._viewZoneId=void 0,this.editorOptionsChanged=ks("editorOptionChanged",J.filter(this.editor.onDidChangeConfiguration,n=>n.hasChanged(33)||n.hasChanged(118)||n.hasChanged(100)||n.hasChanged(95)||n.hasChanged(51)||n.hasChanged(50)||n.hasChanged(67))),this._register(We(n=>{const s=this.lines.read(n);this.editorOptionsChanged.read(n),s?this.updateLines(s.lineNumber,s.additionalLines,s.minReservedLineCount):this.clear()}))}dispose(){super.dispose(),this.clear()}clear(){this.editor.changeViewZones(e=>{this._viewZoneId&&(e.removeZone(this._viewZoneId),this._viewZoneId=void 0)})}updateLines(e,t,i){const n=this.editor.getModel();if(!n)return;const{tabSize:s}=n.getOptions();this.editor.changeViewZones(r=>{this._viewZoneId&&(r.removeZone(this._viewZoneId),this._viewZoneId=void 0);const a=Math.max(t.length,i);if(a>0){const l=document.createElement("div");She(l,s,t,this.editor.getOptions(),this.languageIdCodec),this._viewZoneId=r.addZone({afterLineNumber:e,heightInLines:a,domNode:l,afterColumnAffinity:1})}})}}function She(o,e,t,i,n){const s=i.get(33),r=i.get(118),a="none",l=i.get(95),c=i.get(51),d=i.get(50),h=i.get(67),u=new K_(1e4);u.appendString('
    ');for(let p=0,_=t.length;p<_;p++){const b=t[p],C=b.content;u.appendString('
    ');const w=D0(C),v=sg(C),y=Ni.createEmpty(C,n);Sy(new gu(d.isMonospace&&!s,d.canUseHalfwidthRightwardsArrow,C,!1,w,v,0,y,b.decorations,e,0,d.spaceWidth,d.middotWidth,d.wsmiddotWidth,r,a,l,c!==Mc.OFF,null),u),u.appendString("
    ")}u.appendString("
    "),qi(o,d);const f=u.build(),g=a5?a5.createHTML(f):f;o.innerHTML=g}const a5=Kc("editorGhostText",{createHTML:o=>o});function Lhe(o,e){const t=new J7,i=new t9(t,c=>e.getLanguageConfiguration(c)),n=new e9(new xhe([o]),i),s=vD(n,[],void 0,!0);let r="";const a=o.getLineContent();function l(c,d){if(c.kind===2)if(l(c.openingBracket,d),d=zt(d,c.openingBracket.length),c.child&&(l(c.child,d),d=zt(d,c.child.length)),c.closingBracket)l(c.closingBracket,d),d=zt(d,c.closingBracket.length);else{const u=i.getSingleLanguageBracketTokens(c.openingBracket.languageId).findClosingTokenText(c.openingBracket.bracketIds);r+=u}else if(c.kind!==3){if(c.kind===0||c.kind===1)r+=a.substring(d,zt(d,c.length));else if(c.kind===4)for(const h of c.children)l(h,d),d=zt(d,h.length)}}return l(s,Ln),r}class xhe{constructor(e){this.lines=e,this.tokenization={getLineTokens:t=>this.lines[t-1]}}getLineCount(){return this.lines.length}getLineLength(e){return this.lines[e-1].getLineContent().length}}const yo=class yo{constructor(){this.value="",this.pos=0}static isDigitCharacter(e){return e>=48&&e<=57}static isVariableCharacter(e){return e===95||e>=97&&e<=122||e>=65&&e<=90}text(e){this.value=e,this.pos=0}tokenText(e){return this.value.substr(e.pos,e.len)}next(){if(this.pos>=this.value.length)return{type:14,pos:this.pos,len:0};const e=this.pos;let t=0,i=this.value.charCodeAt(e),n;if(n=yo._table[i],typeof n=="number")return this.pos+=1,{type:n,pos:e,len:1};if(yo.isDigitCharacter(i)){n=8;do t+=1,i=this.value.charCodeAt(e+t);while(yo.isDigitCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}if(yo.isVariableCharacter(i)){n=9;do i=this.value.charCodeAt(e+ ++t);while(yo.isVariableCharacter(i)||yo.isDigitCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}n=10;do t+=1,i=this.value.charCodeAt(e+t);while(!isNaN(i)&&typeof yo._table[i]>"u"&&!yo.isDigitCharacter(i)&&!yo.isVariableCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}};yo._table={36:0,58:1,44:2,123:3,125:4,92:5,47:6,124:7,43:11,45:12,63:13};let iN=yo;class Gg{constructor(){this._children=[]}appendChild(e){return e instanceof wn&&this._children[this._children.length-1]instanceof wn?this._children[this._children.length-1].value+=e.value:(e.parent=this,this._children.push(e)),this}replace(e,t){const{parent:i}=e,n=i.children.indexOf(e),s=i.children.slice(0);s.splice(n,1,...t),i._children=s,(function r(a,l){for(const c of a)c.parent=l,r(c.children,c)})(t,i)}get children(){return this._children}get rightMostDescendant(){return this._children.length>0?this._children[this._children.length-1].rightMostDescendant:this}get snippet(){let e=this;for(;;){if(!e)return;if(e instanceof ub)return e;e=e.parent}}toString(){return this.children.reduce((e,t)=>e+t.toString(),"")}len(){return 0}}class wn extends Gg{constructor(e){super(),this.value=e}toString(){return this.value}len(){return this.value.length}clone(){return new wn(this.value)}}class zB extends Gg{}class eo extends zB{static compareByIndex(e,t){return e.index===t.index?0:e.isFinalTabstop?1:t.isFinalTabstop||e.indext.index?1:0}constructor(e){super(),this.index=e}get isFinalTabstop(){return this.index===0}get choice(){return this._children.length===1&&this._children[0]instanceof Zg?this._children[0]:void 0}clone(){const e=new eo(this.index);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map(t=>t.clone()),e}}class Zg extends Gg{constructor(){super(...arguments),this.options=[]}appendChild(e){return e instanceof wn&&(e.parent=this,this.options.push(e)),this}toString(){return this.options[0].value}len(){return this.options[0].len()}clone(){const e=new Zg;return this.options.forEach(e.appendChild,e),e}}class vM extends Gg{constructor(){super(...arguments),this.regexp=new RegExp("")}resolve(e){const t=this;let i=!1,n=e.replace(this.regexp,function(){return i=!0,t._replace(Array.prototype.slice.call(arguments,0,-2))});return!i&&this._children.some(s=>s instanceof ir&&!!s.elseValue)&&(n=this._replace([])),n}_replace(e){let t="";for(const i of this._children)if(i instanceof ir){let n=e[i.index]||"";n=i.resolve(n),t+=n}else t+=i.toString();return t}toString(){return""}clone(){const e=new vM;return e.regexp=new RegExp(this.regexp.source,(this.regexp.ignoreCase?"i":"")+(this.regexp.global?"g":"")),e._children=this.children.map(t=>t.clone()),e}}class ir extends Gg{constructor(e,t,i,n){super(),this.index=e,this.shorthandName=t,this.ifValue=i,this.elseValue=n}resolve(e){return this.shorthandName==="upcase"?e?e.toLocaleUpperCase():"":this.shorthandName==="downcase"?e?e.toLocaleLowerCase():"":this.shorthandName==="capitalize"?e?e[0].toLocaleUpperCase()+e.substr(1):"":this.shorthandName==="pascalcase"?e?this._toPascalCase(e):"":this.shorthandName==="camelcase"?e?this._toCamelCase(e):"":e&&typeof this.ifValue=="string"?this.ifValue:!e&&typeof this.elseValue=="string"?this.elseValue:e||""}_toPascalCase(e){const t=e.match(/[a-z0-9]+/gi);return t?t.map(i=>i.charAt(0).toUpperCase()+i.substr(1)).join(""):e}_toCamelCase(e){const t=e.match(/[a-z0-9]+/gi);return t?t.map((i,n)=>n===0?i.charAt(0).toLowerCase()+i.substr(1):i.charAt(0).toUpperCase()+i.substr(1)).join(""):e}clone(){return new ir(this.index,this.shorthandName,this.ifValue,this.elseValue)}}class F_ extends zB{constructor(e){super(),this.name=e}resolve(e){let t=e.resolve(this);return this.transform&&(t=this.transform.resolve(t||"")),t!==void 0?(this._children=[new wn(t)],!0):!1}clone(){const e=new F_(this.name);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map(t=>t.clone()),e}}function l5(o,e){const t=[...o];for(;t.length>0;){const i=t.shift();if(!e(i))break;t.unshift(...i.children)}}class ub extends Gg{get placeholderInfo(){if(!this._placeholders){const e=[];let t;this.walk(function(i){return i instanceof eo&&(e.push(i),t=!t||t.indexn===e?(i=!0,!1):(t+=n.len(),!0)),i?t:-1}fullLen(e){let t=0;return l5([e],i=>(t+=i.len(),!0)),t}enclosingPlaceholders(e){const t=[];let{parent:i}=e;for(;i;)i instanceof eo&&t.push(i),i=i.parent;return t}resolveVariables(e){return this.walk(t=>(t instanceof F_&&t.resolve(e)&&(this._placeholders=void 0),!0)),this}appendChild(e){return this._placeholders=void 0,super.appendChild(e)}replace(e,t){return this._placeholders=void 0,super.replace(e,t)}clone(){const e=new ub;return this._children=this.children.map(t=>t.clone()),e}walk(e){l5(this.children,e)}}class Mg{constructor(){this._scanner=new iN,this._token={type:14,pos:0,len:0}}static escape(e){return e.replace(/\$|}|\\/g,"\\$&")}static guessNeedsClipboard(e){return/\${?CLIPBOARD/.test(e)}parse(e,t,i){const n=new ub;return this.parseFragment(e,n),this.ensureFinalTabstop(n,i??!1,t??!1),n}parseFragment(e,t){const i=t.children.length;for(this._scanner.text(e),this._token=this._scanner.next();this._parse(t););const n=new Map,s=[];t.walk(l=>(l instanceof eo&&(l.isFinalTabstop?n.set(0,void 0):!n.has(l.index)&&l.children.length>0?n.set(l.index,l.children):s.push(l)),!0));const r=(l,c)=>{const d=n.get(l.index);if(!d)return;const h=new eo(l.index);h.transform=l.transform;for(const u of d){const f=u.clone();h.appendChild(f),f instanceof eo&&n.has(f.index)&&!c.has(f.index)&&(c.add(f.index),r(f,c),c.delete(f.index))}t.replace(l,[h])},a=new Set;for(const l of s)r(l,a);return t.children.slice(i)}ensureFinalTabstop(e,t,i){(t||i&&e.placeholders.length>0)&&(e.placeholders.find(s=>s.index===0)||e.appendChild(new eo(0)))}_accept(e,t){if(e===void 0||this._token.type===e){const i=t?this._scanner.tokenText(this._token):!0;return this._token=this._scanner.next(),i}return!1}_backTo(e){return this._scanner.pos=e.pos+e.len,this._token=e,!1}_until(e){const t=this._token;for(;this._token.type!==e;){if(this._token.type===14)return!1;if(this._token.type===5){const n=this._scanner.next();if(n.type!==0&&n.type!==4&&n.type!==5)return!1}this._token=this._scanner.next()}const i=this._scanner.value.substring(t.pos,this._token.pos).replace(/\\(\$|}|\\)/g,"$1");return this._token=this._scanner.next(),i}_parse(e){return this._parseEscaped(e)||this._parseTabstopOrVariableName(e)||this._parseComplexPlaceholder(e)||this._parseComplexVariable(e)||this._parseAnything(e)}_parseEscaped(e){let t;return(t=this._accept(5,!0))?(t=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||t,e.appendChild(new wn(t)),!0):!1}_parseTabstopOrVariableName(e){let t;const i=this._token;return this._accept(0)&&(t=this._accept(9,!0)||this._accept(8,!0))?(e.appendChild(/^\d+$/.test(t)?new eo(Number(t)):new F_(t)),!0):this._backTo(i)}_parseComplexPlaceholder(e){let t;const i=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(8,!0))))return this._backTo(i);const s=new eo(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(s),!0;if(!this._parse(s))return e.appendChild(new wn("${"+t+":")),s.children.forEach(e.appendChild,e),!0}else if(s.index>0&&this._accept(7)){const r=new Zg;for(;;){if(this._parseChoiceElement(r)){if(this._accept(2))continue;if(this._accept(7)&&(s.appendChild(r),this._accept(4)))return e.appendChild(s),!0}return this._backTo(i),!1}}else return this._accept(6)?this._parseTransform(s)?(e.appendChild(s),!0):(this._backTo(i),!1):this._accept(4)?(e.appendChild(s),!0):this._backTo(i)}_parseChoiceElement(e){const t=this._token,i=[];for(;!(this._token.type===2||this._token.type===7);){let n;if((n=this._accept(5,!0))?n=this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||n:n=this._accept(void 0,!0),!n)return this._backTo(t),!1;i.push(n)}return i.length===0?(this._backTo(t),!1):(e.appendChild(new wn(i.join(""))),!0)}_parseComplexVariable(e){let t;const i=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(9,!0))))return this._backTo(i);const s=new F_(t);if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(s),!0;if(!this._parse(s))return e.appendChild(new wn("${"+t+":")),s.children.forEach(e.appendChild,e),!0}else return this._accept(6)?this._parseTransform(s)?(e.appendChild(s),!0):(this._backTo(i),!1):this._accept(4)?(e.appendChild(s),!0):this._backTo(i)}_parseTransform(e){const t=new vM;let i="",n="";for(;!this._accept(6);){let s;if(s=this._accept(5,!0)){s=this._accept(6,!0)||s,i+=s;continue}if(this._token.type!==14){i+=this._accept(void 0,!0);continue}return!1}for(;!this._accept(6);){let s;if(s=this._accept(5,!0)){s=this._accept(5,!0)||this._accept(6,!0)||s,t.appendChild(new wn(s));continue}if(!(this._parseFormatString(t)||this._parseAnything(t)))return!1}for(;!this._accept(4);){if(this._token.type!==14){n+=this._accept(void 0,!0);continue}return!1}try{t.regexp=new RegExp(i,n)}catch{return!1}return e.transform=t,!0}_parseFormatString(e){const t=this._token;if(!this._accept(0))return!1;let i=!1;this._accept(3)&&(i=!0);const n=this._accept(8,!0);if(n)if(i){if(this._accept(4))return e.appendChild(new ir(Number(n))),!0;if(!this._accept(1))return this._backTo(t),!1}else return e.appendChild(new ir(Number(n))),!0;else return this._backTo(t),!1;if(this._accept(6)){const s=this._accept(9,!0);return!s||!this._accept(4)?(this._backTo(t),!1):(e.appendChild(new ir(Number(n),s)),!0)}else if(this._accept(11)){const s=this._until(4);if(s)return e.appendChild(new ir(Number(n),void 0,s,void 0)),!0}else if(this._accept(12)){const s=this._until(4);if(s)return e.appendChild(new ir(Number(n),void 0,void 0,s)),!0}else if(this._accept(13)){const s=this._until(1);if(s){const r=this._until(4);if(r)return e.appendChild(new ir(Number(n),void 0,s,r)),!0}}else{const s=this._until(4);if(s)return e.appendChild(new ir(Number(n),void 0,void 0,s)),!0}return this._backTo(t),!1}_parseAnything(e){return this._token.type!==14?(e.appendChild(new wn(this._scanner.tokenText(this._token))),this._accept(void 0),!0):!1}}async function khe(o,e,t,i,n=ut.None,s){const r=e instanceof P?Ehe(e,t):e,a=o.all(t),l=new dT;for(const b of a)b.groupId&&l.add(b.groupId,b);function c(b){if(!b.yieldsToGroupIds)return[];const C=[];for(const w of b.yieldsToGroupIds||[]){const v=l.get(w);for(const y of v)C.push(y)}return C}const d=new Map,h=new Set;function u(b,C){if(C=[...C,b],h.has(b))return C;h.add(b);try{const w=c(b);for(const v of w){const y=u(v,C);if(y)return y}}finally{h.delete(b)}}function f(b){const C=d.get(b);if(C)return C;const w=u(b,[]);w&&$n(new Error(`Inline completions: cyclic yield-to dependency detected. Path: ${w.map(y=>y.toString?y.toString():""+y).join(" -> ")}`));const v=new qN;return d.set(b,v.p),(async()=>{if(!w){const y=c(b);for(const x of y){const L=await f(x);if(L&&L.items.length>0)return}}try{return e instanceof P?await b.provideInlineCompletions(t,e,i,n):await b.provideInlineEdits?.(t,e,i,n)}catch(y){$n(y);return}})().then(y=>v.complete(y),y=>v.error(y)),v.p}const g=await Promise.all(a.map(async b=>({provider:b,completions:await f(b)}))),p=new Map,_=[];for(const b of g){const C=b.completions;if(!C)continue;const w=new Ihe(C,b.provider);_.push(w);for(const v of C.items){const y=dw.from(v,w,r,t,s);p.set(y.hash(),y)}}return new Dhe(Array.from(p.values()),new Set(p.keys()),_)}class Dhe{constructor(e,t,i){this.completions=e,this.hashs=t,this.providerResults=i}has(e){return this.hashs.has(e.hash())}dispose(){for(const e of this.providerResults)e.removeRef()}}class Ihe{constructor(e,t){this.inlineCompletions=e,this.provider=t,this.refCount=1}addRef(){this.refCount++}removeRef(){this.refCount--,this.refCount===0&&this.provider.freeInlineCompletions(this.inlineCompletions)}}class dw{static from(e,t,i,n,s){let r,a,l=e.range?I.lift(e.range):i;if(typeof e.insertText=="string"){if(r=e.insertText,s&&e.completeBracketPairs){r=c5(r,l.getStartPosition(),n,s);const c=r.length-e.insertText.length;c!==0&&(l=new I(l.startLineNumber,l.startColumn,l.endLineNumber,l.endColumn+c))}a=void 0}else if("snippet"in e.insertText){const c=e.insertText.snippet.length;if(s&&e.completeBracketPairs){e.insertText.snippet=c5(e.insertText.snippet,l.getStartPosition(),n,s);const h=e.insertText.snippet.length-c;h!==0&&(l=new I(l.startLineNumber,l.startColumn,l.endLineNumber,l.endColumn+h))}const d=new Mg().parse(e.insertText.snippet);d.children.length===1&&d.children[0]instanceof wn?(r=d.children[0].value,a=void 0):(r=d.toString(),a={snippet:e.insertText.snippet,range:l})}else z0(e.insertText);return new dw(r,e.command,l,r,a,e.additionalTextEdits||phe(),e,t)}constructor(e,t,i,n,s,r,a,l){this.filterText=e,this.command=t,this.range=i,this.insertText=n,this.snippetInfo=s,this.additionalTextEdits=r,this.sourceInlineCompletion=a,this.source=l,e=e.replace(/\r\n|\r/g,` -`),n=e.replace(/\r\n|\r/g,` -`)}withRange(e){return new dw(this.filterText,this.command,e,this.insertText,this.snippetInfo,this.additionalTextEdits,this.sourceInlineCompletion,this.source)}hash(){return JSON.stringify({insertText:this.insertText,range:this.range.toString()})}toSingleTextEdit(){return new fa(this.range,this.insertText)}}function Ehe(o,e){const t=e.getWordAtPosition(o),i=e.getLineMaxColumn(o.lineNumber);return t?new I(o.lineNumber,t.startColumn,o.lineNumber,i):I.fromPositions(o,o.with(void 0,i))}function c5(o,e,t,i){const s=t.getLineContent(e.lineNumber).substring(0,e.column-1)+o,a=t.tokenization.tokenizeLineWithEdit(e,s.length-(e.column-1),o)?.sliceAndInflate(e.column-1,s.length,0);return a?Lhe(a,i):o}function nh(o,e,t){const i=t?o.range.intersectRanges(t):o.range;if(!i)return o;const n=e.getValueInRange(i,1),s=Th(n,o.text),r=Po.ofText(n.substring(0,s)).addToPosition(o.range.getStartPosition()),a=o.text.substring(s),l=I.fromPositions(r,o.range.getEndPosition());return new fa(l,a)}function UB(o,e){return o.text.startsWith(e.text)&&Nhe(o.range,e.range)}function d5(o,e,t,i,n=0){let s=nh(o,e);if(s.range.endLineNumber!==s.range.startLineNumber)return;const r=e.getLineContent(s.range.startLineNumber),a=pi(r).length;if(s.range.startColumn-1<=a){const g=pi(s.text).length,p=r.substring(s.range.startColumn-1,a),[_,b]=[s.range.getStartPosition(),s.range.getEndPosition()],C=_.column+p.length<=b.column?_.delta(0,p.length):b,w=I.fromPositions(C,b),v=s.text.startsWith(p)?s.text.substring(p.length):s.text.substring(g);s=new fa(w,v)}const c=e.getValueInRange(s.range),d=The(c,s.text);if(!d)return;const h=s.range.startLineNumber,u=new Array;if(t==="prefix"){const g=d.filter(p=>p.originalLength===0);if(g.length>1||g.length===1&&g[0].originalStart!==c.length)return}const f=s.text.length-n;for(const g of d){const p=s.range.startColumn+g.originalStart+g.originalLength;if(t==="subwordSmart"&&i&&i.lineNumber===s.range.startLineNumber&&p0)return;if(g.modifiedLength===0)continue;const _=g.modifiedStart+g.modifiedLength,b=Math.max(g.modifiedStart,Math.min(_,f)),C=s.text.substring(g.modifiedStart,b),w=s.text.substring(b,Math.max(g.modifiedStart,_));C.length>0&&u.push(new JE(p,C,!1)),w.length>0&&u.push(new JE(p,w,!0))}return new cw(h,u)}function Nhe(o,e){return e.getStartPosition().equals(o.getStartPosition())&&e.getEndPosition().isBeforeOrEqual(o.getEndPosition())}let f1;function The(o,e){if(f1?.originalValue===o&&f1?.newValue===e)return f1?.changes;{let t=u5(o,e,!0);if(t){const i=h5(t);if(i>0){const n=u5(o,e,!1);n&&h5(n)5e3||e.length>5e3)return;function i(c){let d=0;for(let h=0,u=c.length;hd&&(d=f)}return d}const n=Math.max(i(o),i(e));function s(c){if(c<0)throw new Error("unexpected");return n+c+1}function r(c){let d=0,h=0;const u=new Int32Array(c.length);for(let f=0,g=c.length;fa},{getElements:()=>l}).ComputeDiff(!1).changes}var Mhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},f5=function(o,e){return function(t,i){e(t,i,o)}};let nN=class extends z{constructor(e,t,i,n,s){super(),this.textModel=e,this.versionId=t,this._debounceValue=i,this.languageFeaturesService=n,this.languageConfigurationService=s,this._updateOperation=this._register(new Dn),this.inlineCompletions=KC("inlineCompletions",void 0),this.suggestWidgetInlineCompletions=KC("suggestWidgetInlineCompletions",void 0),this._register(this.textModel.onDidChangeContent(()=>{this._updateOperation.clear()}))}fetch(e,t,i){const n=new Ahe(e,t,this.textModel.getVersionId()),s=t.selectedSuggestionInfo?this.suggestWidgetInlineCompletions:this.inlineCompletions;if(this._updateOperation.value?.request.satisfies(n))return this._updateOperation.value.promise;if(s.get()?.request.satisfies(n))return Promise.resolve(!0);const r=!!this._updateOperation.value;this._updateOperation.clear();const a=new In,l=(async()=>{if((r||t.triggerKind===Cl.Automatic)&&await Rhe(this._debounceValue.get(this.textModel),a.token),a.token.isCancellationRequested||this._store.isDisposed||this.textModel.getVersionId()!==n.versionId)return!1;const h=new Date,u=await khe(this.languageFeaturesService.inlineCompletionsProvider,e,this.textModel,t,a.token,this.languageConfigurationService);if(a.token.isCancellationRequested||this._store.isDisposed||this.textModel.getVersionId()!==n.versionId)return!1;const f=new Date;this._debounceValue.update(this.textModel,f.getTime()-h.getTime());const g=new Ohe(u,n,this.textModel,this.versionId);if(i){const p=i.toInlineCompletion(void 0);i.canBeReused(this.textModel,e)&&!u.has(p)&&g.prepend(i.inlineCompletion,p.range,!0)}return this._updateOperation.clear(),Xt(p=>{s.set(g,p)}),!0})(),c=new Phe(n,a,l);return this._updateOperation.value=c,l}clear(e){this._updateOperation.clear(),this.inlineCompletions.set(void 0,e),this.suggestWidgetInlineCompletions.set(void 0,e)}clearSuggestWidgetInlineCompletions(e){this._updateOperation.value?.request.context.selectedSuggestionInfo&&this._updateOperation.clear(),this.suggestWidgetInlineCompletions.set(void 0,e)}cancelUpdate(){this._updateOperation.clear()}};nN=Mhe([f5(3,Se),f5(4,Gn)],nN);function Rhe(o,e){return new Promise(t=>{let i;const n=setTimeout(()=>{i&&i.dispose(),t()},o);e&&(i=e.onCancellationRequested(()=>{clearTimeout(n),i&&i.dispose(),t()}))})}class Ahe{constructor(e,t,i){this.position=e,this.context=t,this.versionId=i}satisfies(e){return this.position.equals(e.position)&&Jk(this.context.selectedSuggestionInfo,e.context.selectedSuggestionInfo,IZ())&&(e.context.triggerKind===Cl.Automatic||this.context.triggerKind===Cl.Explicit)&&this.versionId===e.versionId}}class Phe{constructor(e,t,i){this.request=e,this.cancellationTokenSource=t,this.promise=i}dispose(){this.cancellationTokenSource.cancel()}}class Ohe{get inlineCompletions(){return this._inlineCompletions}constructor(e,t,i,n){this.inlineCompletionProviderResult=e,this.request=t,this._textModel=i,this._versionId=n,this._refCount=1,this._prependedInlineCompletionItems=[];const s=i.deltaDecorations([],e.completions.map(r=>({range:r.range,options:{description:"inline-completion-tracking-range"}})));this._inlineCompletions=e.completions.map((r,a)=>new g5(r,s[a],this._textModel,this._versionId))}clone(){return this._refCount++,this}dispose(){if(this._refCount--,this._refCount===0){setTimeout(()=>{this._textModel.isDisposed()||this._textModel.deltaDecorations(this._inlineCompletions.map(e=>e.decorationId),[])},0),this.inlineCompletionProviderResult.dispose();for(const e of this._prependedInlineCompletionItems)e.source.removeRef()}}prepend(e,t,i){i&&e.source.addRef();const n=this._textModel.deltaDecorations([],[{range:t,options:{description:"inline-completion-tracking-range"}}])[0];this._inlineCompletions.unshift(new g5(e,n,this._textModel,this._versionId)),this._prependedInlineCompletionItems.push(e)}}class g5{get forwardStable(){return this.inlineCompletion.source.inlineCompletions.enableForwardStability??!1}constructor(e,t,i,n){this.inlineCompletion=e,this.decorationId=t,this._textModel=i,this._modelVersion=n,this.semanticId=JSON.stringify([this.inlineCompletion.filterText,this.inlineCompletion.insertText,this.inlineCompletion.range.getStartPosition().toString()]),this._updatedRange=dr({owner:this,equalsFn:I.equalsRange},s=>(this._modelVersion.read(s),this._textModel.getDecorationRange(this.decorationId)))}toInlineCompletion(e){return this.inlineCompletion.withRange(this._updatedRange.read(e)??bL)}toSingleTextEdit(e){return new fa(this._updatedRange.read(e)??bL,this.inlineCompletion.insertText)}isVisible(e,t,i){const n=nh(this._toFilterTextReplacement(i),e),s=this._updatedRange.read(i);if(!s||!this.inlineCompletion.range.getStartPosition().equals(s.getStartPosition())||t.lineNumber!==n.range.startLineNumber)return!1;const r=e.getValueInRange(n.range,1),a=n.text,l=Math.max(0,t.column-n.range.startColumn);let c=a.substring(0,l),d=a.substring(l),h=r.substring(0,l),u=r.substring(l);const f=e.getLineIndentColumn(n.range.startLineNumber);return n.range.startColumn<=f&&(h=h.trimStart(),h.length===0&&(u=u.trimStart()),c=c.trimStart(),c.length===0&&(d=d.trimStart())),c.startsWith(h)&&!!r7(u,d)}canBeReused(e,t){const i=this._updatedRange.read(void 0);return!!i&&i.containsPosition(t)&&this.isVisible(e,t,void 0)&&Po.ofRange(i).isGreaterThanOrEqualTo(Po.ofRange(this.inlineCompletion.range))}_toFilterTextReplacement(e){return new fa(this._updatedRange.read(e)??bL,this.inlineCompletion.filterText)}}const bL=new I(1,1,1,1),Fhe=m("defaultLabel","input"),Bhe=m("label.preserveCaseToggle","Preserve Case");class Whe extends nb{constructor(e){super({icon:ie.preserveCase,title:Bhe+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class Hhe extends xr{constructor(e,t,i,n){super(),this._showOptionButtons=i,this.fixFocusOnOptionClickEnabled=!0,this.cachedOptionsWidth=0,this._onDidOptionChange=this._register(new A),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new A),this._onInput=this._register(new A),this._onKeyUp=this._register(new A),this._onPreserveCaseKeyDown=this._register(new A),this.onPreserveCaseKeyDown=this._onPreserveCaseKeyDown.event,this.contextViewProvider=t,this.placeholder=n.placeholder||"",this.validation=n.validation,this.label=n.label||Fhe;const s=n.appendPreserveCaseLabel||"",r=n.history||[],a=!!n.flexibleHeight,l=!!n.flexibleWidth,c=n.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new k9(this.domNode,this.contextViewProvider,{ariaLabel:this.label||"",placeholder:this.placeholder||"",validationOptions:{validation:this.validation},history:r,showHistoryHint:n.showHistoryHint,flexibleHeight:a,flexibleWidth:l,flexibleMaxHeight:c,inputBoxStyles:n.inputBoxStyles})),this.preserveCase=this._register(new Whe({appendTitle:s,isChecked:!1,...n.toggleStyles})),this._register(this.preserveCase.onChange(u=>{this._onDidOptionChange.fire(u),!u&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.preserveCase.onKeyDown(u=>{this._onPreserveCaseKeyDown.fire(u)})),this._showOptionButtons?this.cachedOptionsWidth=this.preserveCase.width():this.cachedOptionsWidth=0;const d=[this.preserveCase.domNode];this.onkeydown(this.domNode,u=>{if(u.equals(15)||u.equals(17)||u.equals(9)){const f=d.indexOf(this.domNode.ownerDocument.activeElement);if(f>=0){let g=-1;u.equals(17)?g=(f+1)%d.length:u.equals(15)&&(f===0?g=d.length-1:g=f-1),u.equals(9)?(d[f].blur(),this.inputBox.focus()):g>=0&&d[g].focus(),je.stop(u,!0)}}});const h=document.createElement("div");h.className="controls",h.style.display=this._showOptionButtons?"block":"none",h.appendChild(this.preserveCase.domNode),this.domNode.appendChild(h),e?.appendChild(this.domNode),this.onkeydown(this.inputBox.inputElement,u=>this._onKeyDown.fire(u)),this.onkeyup(this.inputBox.inputElement,u=>this._onKeyUp.fire(u)),this.oninput(this.inputBox.inputElement,u=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,u=>this._onMouseDown.fire(u))}enable(){this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.preserveCase.enable()}disable(){this.domNode.classList.add("disabled"),this.inputBox.disable(),this.preserveCase.disable()}setEnabled(e){e?this.enable():this.disable()}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getPreserveCase(){return this.preserveCase.checked}setPreserveCase(e){this.preserveCase.checked=e}focusOnPreserve(){this.preserveCase.focus()}validate(){this.inputBox?.validate()}set width(e){this.inputBox.paddingRight=this.cachedOptionsWidth,this.domNode.style.width=e+"px"}dispose(){super.dispose()}}var $B=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},KB=function(o,e){return function(t,i){e(t,i,o)}};const wM=new le("suggestWidgetVisible",!1,m("suggestWidgetVisible","Whether suggestion are visible")),yM="historyNavigationWidgetFocus",jB="historyNavigationForwardsEnabled",qB="historyNavigationBackwardsEnabled";let yp;const g1=[];function GB(o,e){if(g1.includes(e))throw new Error("Cannot register the same widget multiple times");g1.push(e);const t=new X,i=new le(yM,!1).bindTo(o),n=new le(jB,!0).bindTo(o),s=new le(qB,!0).bindTo(o),r=()=>{i.set(!0),yp=e},a=()=>{i.set(!1),yp===e&&(yp=void 0)};return M0(e.element)&&r(),t.add(e.onDidFocus(()=>r())),t.add(e.onDidBlur(()=>a())),t.add(_e(()=>{g1.splice(g1.indexOf(e),1),a()})),{historyNavigationForwardsEnablement:n,historyNavigationBackwardsEnablement:s,dispose(){t.dispose()}}}let m5=class extends D9{constructor(e,t,i,n){super(e,t,i);const s=this._register(n.createScoped(this.inputBox.element));this._register(GB(s,this.inputBox))}};m5=$B([KB(3,De)],m5);let p5=class extends Hhe{constructor(e,t,i,n,s=!1){super(e,t,s,i);const r=this._register(n.createScoped(this.inputBox.element));this._register(GB(r,this.inputBox))}};p5=$B([KB(3,De)],p5);Nn.registerCommandAndKeybindingRule({id:"history.showPrevious",weight:200,when:re.and(re.has(yM),re.equals(qB,!0),re.not("isComposing"),wM.isEqualTo(!1)),primary:16,secondary:[528],handler:o=>{yp?.showPreviousValue()}});Nn.registerCommandAndKeybindingRule({id:"history.showNext",weight:200,when:re.and(re.has(yM),re.equals(jB,!0),re.not("isComposing"),wM.isEqualTo(!1)),primary:18,secondary:[530],handler:o=>{yp?.showNextValue()}});const Ne={Visible:wM,HasFocusedSuggestion:new le("suggestWidgetHasFocusedSuggestion",!1,m("suggestWidgetHasSelection","Whether any suggestion is focused")),DetailsVisible:new le("suggestWidgetDetailsVisible",!1,m("suggestWidgetDetailsVisible","Whether suggestion details are visible")),MultipleSuggestions:new le("suggestWidgetMultipleSuggestions",!1,m("suggestWidgetMultipleSuggestions","Whether there are multiple suggestions to pick from")),MakesTextEdit:new le("suggestionMakesTextEdit",!0,m("suggestionMakesTextEdit","Whether inserting the current suggestion yields in a change or has everything already been typed")),AcceptSuggestionsOnEnter:new le("acceptSuggestionOnEnter",!0,m("acceptSuggestionOnEnter","Whether suggestions are inserted when pressing Enter")),HasInsertAndReplaceRange:new le("suggestionHasInsertAndReplaceRange",!1,m("suggestionHasInsertAndReplaceRange","Whether the current suggestion has insert and replace behaviour")),InsertMode:new le("suggestionInsertMode",void 0,{type:"string",description:m("suggestionInsertMode","Whether the default behaviour is to insert or replace")}),CanResolve:new le("suggestionCanResolve",!1,m("suggestionCanResolve","Whether the current suggestion supports to resolve further details"))},bc=new $e("suggestWidgetStatusBar");class Vhe{constructor(e,t,i,n){this.position=e,this.completion=t,this.container=i,this.provider=n,this.isInvalid=!1,this.score=oa.Default,this.distance=0,this.textLabel=typeof t.label=="string"?t.label:t.label?.label,this.labelLow=this.textLabel.toLowerCase(),this.isInvalid=!this.textLabel,this.sortTextLow=t.sortText&&t.sortText.toLowerCase(),this.filterTextLow=t.filterText&&t.filterText.toLowerCase(),this.extensionId=t.extensionId,I.isIRange(t.range)?(this.editStart=new P(t.range.startLineNumber,t.range.startColumn),this.editInsertEnd=new P(t.range.endLineNumber,t.range.endColumn),this.editReplaceEnd=new P(t.range.endLineNumber,t.range.endColumn),this.isInvalid=this.isInvalid||I.spansMultipleLines(t.range)||t.range.startLineNumber!==e.lineNumber):(this.editStart=new P(t.range.insert.startLineNumber,t.range.insert.startColumn),this.editInsertEnd=new P(t.range.insert.endLineNumber,t.range.insert.endColumn),this.editReplaceEnd=new P(t.range.replace.endLineNumber,t.range.replace.endColumn),this.isInvalid=this.isInvalid||I.spansMultipleLines(t.range.insert)||I.spansMultipleLines(t.range.replace)||t.range.insert.startLineNumber!==e.lineNumber||t.range.replace.startLineNumber!==e.lineNumber||t.range.insert.startColumn!==t.range.replace.startColumn),typeof n.resolveCompletionItem!="function"&&(this._resolveCache=Promise.resolve(),this._resolveDuration=0)}get isResolved(){return this._resolveDuration!==void 0}get resolveDuration(){return this._resolveDuration!==void 0?this._resolveDuration:-1}async resolve(e){if(!this._resolveCache){const t=e.onCancellationRequested(()=>{this._resolveCache=void 0,this._resolveDuration=void 0}),i=new Hs(!0);this._resolveCache=Promise.resolve(this.provider.resolveCompletionItem(this.completion,e)).then(n=>{Object.assign(this.completion,n),this._resolveDuration=i.elapsed()},n=>{$c(n)&&(this._resolveCache=void 0,this._resolveDuration=void 0)}).finally(()=>{t.dispose()})}return this._resolveCache}}const m0=class m0{constructor(e=2,t=new Set,i=new Set,n=new Map,s=!0){this.snippetSortOrder=e,this.kindFilter=t,this.providerFilter=i,this.providerItemsToReuse=n,this.showDeprecated=s}};m0.default=new m0;let hw=m0;class zhe{constructor(e,t,i,n){this.items=e,this.needsClipboard=t,this.durations=i,this.disposable=n}}async function ZB(o,e,t,i=hw.default,n={triggerKind:0},s=ut.None){const r=new Hs;t=t.clone();const a=e.getWordAtPosition(t),l=a?new I(t.lineNumber,a.startColumn,t.lineNumber,a.endColumn):I.fromPositions(t),c={replace:l,insert:l.setEndPosition(t.lineNumber,t.column)},d=[],h=new X,u=[];let f=!1;const g=(_,b,C)=>{let w=!1;if(!b)return w;for(const v of b.suggestions)if(!i.kindFilter.has(v.kind)){if(!i.showDeprecated&&v?.tags?.includes(1))continue;v.range||(v.range=c),v.sortText||(v.sortText=typeof v.label=="string"?v.label:v.label.label),!f&&v.insertTextRules&&v.insertTextRules&4&&(f=Mg.guessNeedsClipboard(v.insertText)),d.push(new Vhe(t,v,b,_)),w=!0}return MN(b)&&h.add(b),u.push({providerName:_._debugDisplayName??"unknown_provider",elapsedProvider:b.duration??-1,elapsedOverall:C.elapsed()}),w},p=(async()=>{})();for(const _ of o.orderedGroups(e)){let b=!1;if(await Promise.all(_.map(async C=>{if(i.providerItemsToReuse.has(C)){const w=i.providerItemsToReuse.get(C);w.forEach(v=>d.push(v)),b=b||w.length>0;return}if(!(i.providerFilter.size>0&&!i.providerFilter.has(C)))try{const w=new Hs,v=await C.provideCompletionItems(e,t,n,s);b=g(C,v,w)||b}catch(w){$n(w)}})),b||s.isCancellationRequested)break}return await p,s.isCancellationRequested?(h.dispose(),Promise.reject(new ha)):new zhe(d.sort(Khe(i.snippetSortOrder)),f,{entries:u,elapsed:r.elapsed()},h)}function SM(o,e){if(o.sortTextLow&&e.sortTextLow){if(o.sortTextLowe.sortTextLow)return 1}return o.textLabele.textLabel?1:o.completion.kind-e.completion.kind}function Uhe(o,e){if(o.completion.kind!==e.completion.kind){if(o.completion.kind===27)return-1;if(e.completion.kind===27)return 1}return SM(o,e)}function $he(o,e){if(o.completion.kind!==e.completion.kind){if(o.completion.kind===27)return 1;if(e.completion.kind===27)return-1}return SM(o,e)}const Wy=new Map;Wy.set(0,Uhe);Wy.set(2,$he);Wy.set(1,SM);function Khe(o){return Wy.get(o)}bt.registerCommand("_executeCompletionItemProvider",async(o,...e)=>{const[t,i,n,s]=e;ai(ve.isUri(t)),ai(P.isIPosition(i)),ai(typeof n=="string"||!n),ai(typeof s=="number"||!s);const{completionProvider:r}=o.get(Se),a=await o.get(fo).createModelReference(t);try{const l={incomplete:!1,suggestions:[]},c=[],d=a.object.textEditorModel.validatePosition(i),h=await ZB(r,a.object.textEditorModel,d,void 0,{triggerCharacter:n??void 0,triggerKind:n?1:0});for(const u of h.items)c.length<(s??0)&&c.push(u.resolve(ut.None)),l.incomplete=l.incomplete||u.container.incomplete,l.suggestions.push(u.completion);try{return await Promise.all(c),l}finally{setTimeout(()=>h.disposable.dispose(),100)}}finally{a.dispose()}});function jhe(o,e){o.getContribution("editor.contrib.suggestController")?.triggerSuggest(new Set().add(e),void 0,!0)}class m1{static isAllOff(e){return e.other==="off"&&e.comments==="off"&&e.strings==="off"}static isAllOn(e){return e.other==="on"&&e.comments==="on"&&e.strings==="on"}static valueFor(e,t){switch(t){case 1:return e.comments;case 2:return e.strings;default:return e.other}}}function _5(o,e=kn){return Q$(o,e)?o.charAt(0).toUpperCase()+o.slice(1):o}var qhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ghe=function(o,e){return function(t,i){e(t,i,o)}};class b5{constructor(e){this._delegates=e}resolve(e){for(const t of this._delegates){const i=t.resolve(e);if(i!==void 0)return i}}}class C5{constructor(e,t,i,n){this._model=e,this._selection=t,this._selectionIdx=i,this._overtypingCapturer=n}resolve(e){const{name:t}=e;if(t==="SELECTION"||t==="TM_SELECTED_TEXT"){let i=this._model.getValueInRange(this._selection)||void 0,n=this._selection.startLineNumber!==this._selection.endLineNumber;if(!i&&this._overtypingCapturer){const s=this._overtypingCapturer.getLastOvertypedInfo(this._selectionIdx);s&&(i=s.value,n=s.multiline)}if(i&&n&&e.snippet){const s=this._model.getLineContent(this._selection.startLineNumber),r=pi(s,0,this._selection.startColumn-1);let a=r;e.snippet.walk(c=>c===e?!1:(c instanceof wn&&(a=pi(va(c.value).pop())),!0));const l=Th(a,r);i=i.replace(/(\r\n|\r|\n)(.*)/g,(c,d,h)=>`${d}${a.substr(l)}${h}`)}return i}else{if(t==="TM_CURRENT_LINE")return this._model.getLineContent(this._selection.positionLineNumber);if(t==="TM_CURRENT_WORD"){const i=this._model.getWordAtPosition({lineNumber:this._selection.positionLineNumber,column:this._selection.positionColumn});return i&&i.word||void 0}else{if(t==="TM_LINE_INDEX")return String(this._selection.positionLineNumber-1);if(t==="TM_LINE_NUMBER")return String(this._selection.positionLineNumber);if(t==="CURSOR_INDEX")return String(this._selectionIdx);if(t==="CURSOR_NUMBER")return String(this._selectionIdx+1)}}}}class v5{constructor(e,t){this._labelService=e,this._model=t}resolve(e){const{name:t}=e;if(t==="TM_FILENAME")return uc(this._model.uri.fsPath);if(t==="TM_FILENAME_BASE"){const i=uc(this._model.uri.fsPath),n=i.lastIndexOf(".");return n<=0?i:i.slice(0,n)}else{if(t==="TM_DIRECTORY")return iF(this._model.uri.fsPath)==="."?"":this._labelService.getUriLabel(ny(this._model.uri));if(t==="TM_FILEPATH")return this._labelService.getUriLabel(this._model.uri);if(t==="RELATIVE_FILEPATH")return this._labelService.getUriLabel(this._model.uri,{relative:!0,noPrefix:!0})}}}class w5{constructor(e,t,i,n){this._readClipboardText=e,this._selectionIdx=t,this._selectionCount=i,this._spread=n}resolve(e){if(e.name!=="CLIPBOARD")return;const t=this._readClipboardText();if(t){if(this._spread){const i=t.split(/\r\n|\n|\r/).filter(n=>!hF(n));if(i.length===this._selectionCount)return i[this._selectionIdx]}return t}}}let uw=class{constructor(e,t,i){this._model=e,this._selection=t,this._languageConfigurationService=i}resolve(e){const{name:t}=e,i=this._model.getLanguageIdAtPosition(this._selection.selectionStartLineNumber,this._selection.selectionStartColumn),n=this._languageConfigurationService.getLanguageConfiguration(i).comments;if(n){if(t==="LINE_COMMENT")return n.lineCommentToken||void 0;if(t==="BLOCK_COMMENT_START")return n.blockCommentStartToken||void 0;if(t==="BLOCK_COMMENT_END")return n.blockCommentEndToken||void 0}}};uw=qhe([Ghe(2,Gn)],uw);const Ur=class Ur{constructor(){this._date=new Date}resolve(e){const{name:t}=e;if(t==="CURRENT_YEAR")return String(this._date.getFullYear());if(t==="CURRENT_YEAR_SHORT")return String(this._date.getFullYear()).slice(-2);if(t==="CURRENT_MONTH")return String(this._date.getMonth().valueOf()+1).padStart(2,"0");if(t==="CURRENT_DATE")return String(this._date.getDate().valueOf()).padStart(2,"0");if(t==="CURRENT_HOUR")return String(this._date.getHours().valueOf()).padStart(2,"0");if(t==="CURRENT_MINUTE")return String(this._date.getMinutes().valueOf()).padStart(2,"0");if(t==="CURRENT_SECOND")return String(this._date.getSeconds().valueOf()).padStart(2,"0");if(t==="CURRENT_DAY_NAME")return Ur.dayNames[this._date.getDay()];if(t==="CURRENT_DAY_NAME_SHORT")return Ur.dayNamesShort[this._date.getDay()];if(t==="CURRENT_MONTH_NAME")return Ur.monthNames[this._date.getMonth()];if(t==="CURRENT_MONTH_NAME_SHORT")return Ur.monthNamesShort[this._date.getMonth()];if(t==="CURRENT_SECONDS_UNIX")return String(Math.floor(this._date.getTime()/1e3));if(t==="CURRENT_TIMEZONE_OFFSET"){const i=this._date.getTimezoneOffset(),n=i>0?"-":"+",s=Math.trunc(Math.abs(i/60)),r=s<10?"0"+s:s,a=Math.abs(i)-s*60,l=a<10?"0"+a:a;return n+r+":"+l}}};Ur.dayNames=[m("Sunday","Sunday"),m("Monday","Monday"),m("Tuesday","Tuesday"),m("Wednesday","Wednesday"),m("Thursday","Thursday"),m("Friday","Friday"),m("Saturday","Saturday")],Ur.dayNamesShort=[m("SundayShort","Sun"),m("MondayShort","Mon"),m("TuesdayShort","Tue"),m("WednesdayShort","Wed"),m("ThursdayShort","Thu"),m("FridayShort","Fri"),m("SaturdayShort","Sat")],Ur.monthNames=[m("January","January"),m("February","February"),m("March","March"),m("April","April"),m("May","May"),m("June","June"),m("July","July"),m("August","August"),m("September","September"),m("October","October"),m("November","November"),m("December","December")],Ur.monthNamesShort=[m("JanuaryShort","Jan"),m("FebruaryShort","Feb"),m("MarchShort","Mar"),m("AprilShort","Apr"),m("MayShort","May"),m("JuneShort","Jun"),m("JulyShort","Jul"),m("AugustShort","Aug"),m("SeptemberShort","Sep"),m("OctoberShort","Oct"),m("NovemberShort","Nov"),m("DecemberShort","Dec")];let fw=Ur;class y5{constructor(e){this._workspaceService=e}resolve(e){if(!this._workspaceService)return;const t=pZ(this._workspaceService.getWorkspace());if(!gZ(t)){if(e.name==="WORKSPACE_NAME")return this._resolveWorkspaceName(t);if(e.name==="WORKSPACE_FOLDER")return this._resoveWorkspacePath(t)}}_resolveWorkspaceName(e){if(qk(e))return uc(e.uri.path);let t=uc(e.configPath.path);return t.endsWith(Gk)&&(t=t.substr(0,t.length-Gk.length-1)),t}_resoveWorkspacePath(e){if(qk(e))return _5(e.uri.fsPath);const t=uc(e.configPath.path);let i=e.configPath.fsPath;return i.endsWith(t)&&(i=i.substr(0,i.length-t.length-1)),i?_5(i):"/"}}class S5{resolve(e){const{name:t}=e;if(t==="RANDOM")return Math.random().toString().slice(-6);if(t==="RANDOM_HEX")return Math.random().toString(16).slice(-6);if(t==="UUID")return IB()}}var Zhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Yhe=function(o,e){return function(t,i){e(t,i,o)}},Zo;const So=class So{constructor(e,t,i){this._editor=e,this._snippet=t,this._snippetLineLeadingWhitespace=i,this._offset=-1,this._nestingLevel=1,this._placeholderGroups=MM(t.placeholders,eo.compareByIndex),this._placeholderGroupsIdx=-1}initialize(e){this._offset=e.newPosition}dispose(){this._placeholderDecorations&&this._editor.removeDecorations([...this._placeholderDecorations.values()]),this._placeholderGroups.length=0}_initDecorations(){if(this._offset===-1)throw new Error("Snippet not initialized!");if(this._placeholderDecorations)return;this._placeholderDecorations=new Map;const e=this._editor.getModel();this._editor.changeDecorations(t=>{for(const i of this._snippet.placeholders){const n=this._snippet.offset(i),s=this._snippet.fullLen(i),r=I.fromPositions(e.getPositionAt(this._offset+n),e.getPositionAt(this._offset+n+s)),a=i.isFinalTabstop?So._decor.inactiveFinal:So._decor.inactive,l=t.addDecoration(r,a);this._placeholderDecorations.set(i,l)}})}move(e){if(!this._editor.hasModel())return[];if(this._initDecorations(),this._placeholderGroupsIdx>=0){const n=[];for(const s of this._placeholderGroups[this._placeholderGroupsIdx])if(s.transform){const r=this._placeholderDecorations.get(s),a=this._editor.getModel().getDecorationRange(r),l=this._editor.getModel().getValueInRange(a),c=s.transform.resolve(l).split(/\r\n|\r|\n/);for(let d=1;d0&&this._editor.executeEdits("snippet.placeholderTransform",n)}let t=!1;e===!0&&this._placeholderGroupsIdx0&&(this._placeholderGroupsIdx-=1,t=!0);const i=this._editor.getModel().changeDecorations(n=>{const s=new Set,r=[];for(const a of this._placeholderGroups[this._placeholderGroupsIdx]){const l=this._placeholderDecorations.get(a),c=this._editor.getModel().getDecorationRange(l);r.push(new Fe(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn)),t=t&&this._hasPlaceholderBeenCollapsed(a),n.changeDecorationOptions(l,a.isFinalTabstop?So._decor.activeFinal:So._decor.active),s.add(a);for(const d of this._snippet.enclosingPlaceholders(a)){const h=this._placeholderDecorations.get(d);n.changeDecorationOptions(h,d.isFinalTabstop?So._decor.activeFinal:So._decor.active),s.add(d)}}for(const[a,l]of this._placeholderDecorations)s.has(a)||n.changeDecorationOptions(l,a.isFinalTabstop?So._decor.inactiveFinal:So._decor.inactive);return r});return t?this.move(e):i??[]}_hasPlaceholderBeenCollapsed(e){let t=e;for(;t;){if(t instanceof eo){const i=this._placeholderDecorations.get(t);if(this._editor.getModel().getDecorationRange(i).isEmpty()&&t.toString().length>0)return!0}t=t.parent}return!1}get isAtFirstPlaceholder(){return this._placeholderGroupsIdx<=0||this._placeholderGroups.length===0}get isAtLastPlaceholder(){return this._placeholderGroupsIdx===this._placeholderGroups.length-1}get hasPlaceholder(){return this._snippet.placeholders.length>0}get isTrivialSnippet(){if(this._snippet.placeholders.length===0)return!0;if(this._snippet.placeholders.length===1){const[e]=this._snippet.placeholders;if(e.isFinalTabstop&&this._snippet.rightMostDescendant===e)return!0}return!1}computePossibleSelections(){const e=new Map;for(const t of this._placeholderGroups){let i;for(const n of t){if(n.isFinalTabstop)break;i||(i=[],e.set(n.index,i));const s=this._placeholderDecorations.get(n),r=this._editor.getModel().getDecorationRange(s);if(!r){e.delete(n.index);break}i.push(r)}}return e}get activeChoice(){if(!this._placeholderDecorations)return;const e=this._placeholderGroups[this._placeholderGroupsIdx][0];if(!e?.choice)return;const t=this._placeholderDecorations.get(e);if(!t)return;const i=this._editor.getModel().getDecorationRange(t);if(i)return{range:i,choice:e.choice}}get hasChoice(){let e=!1;return this._snippet.walk(t=>(e=t instanceof Zg,!e)),e}merge(e){const t=this._editor.getModel();this._nestingLevel*=10,this._editor.changeDecorations(i=>{for(const n of this._placeholderGroups[this._placeholderGroupsIdx]){const s=e.shift();console.assert(s._offset!==-1),console.assert(!s._placeholderDecorations);const r=s._snippet.placeholderInfo.last.index;for(const l of s._snippet.placeholderInfo.all)l.isFinalTabstop?l.index=n.index+(r+1)/this._nestingLevel:l.index=n.index+l.index/this._nestingLevel;this._snippet.replace(n,s._snippet.children);const a=this._placeholderDecorations.get(n);i.removeDecoration(a),this._placeholderDecorations.delete(n);for(const l of s._snippet.placeholders){const c=s._snippet.offset(l),d=s._snippet.fullLen(l),h=I.fromPositions(t.getPositionAt(s._offset+c),t.getPositionAt(s._offset+c+d)),u=i.addDecoration(h,So._decor.inactive);this._placeholderDecorations.set(l,u)}}this._placeholderGroups=MM(this._snippet.placeholders,eo.compareByIndex)})}};So._decor={active:kt.register({description:"snippet-placeholder-1",stickiness:0,className:"snippet-placeholder"}),inactive:kt.register({description:"snippet-placeholder-2",stickiness:1,className:"snippet-placeholder"}),activeFinal:kt.register({description:"snippet-placeholder-3",stickiness:1,className:"finish-snippet-placeholder"}),inactiveFinal:kt.register({description:"snippet-placeholder-4",stickiness:1,className:"finish-snippet-placeholder"})};let gw=So;const L5={overwriteBefore:0,overwriteAfter:0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0};let mw=Zo=class{static adjustWhitespace(e,t,i,n,s){const r=e.getLineContent(t.lineNumber),a=pi(r,0,t.column-1);let l;return n.walk(c=>{if(!(c instanceof wn)||c.parent instanceof Zg||s&&!s.has(c))return!0;const d=c.value.split(/\r\n|\r|\n/);if(i){const u=n.offset(c);if(u===0)d[0]=e.normalizeIndentation(d[0]);else{l=l??n.toString();const f=l.charCodeAt(u-1);(f===10||f===13)&&(d[0]=e.normalizeIndentation(a+d[0]))}for(let f=1;fv.get(jk)),g=e.invokeWithinContext(v=>new v5(v.get(Cg),u)),p=()=>a,_=u.getValueInRange(Zo.adjustSelection(u,e.getSelection(),i,0)),b=u.getValueInRange(Zo.adjustSelection(u,e.getSelection(),0,n)),C=u.getLineFirstNonWhitespaceColumn(e.getSelection().positionLineNumber),w=e.getSelections().map((v,y)=>({selection:v,idx:y})).sort((v,y)=>I.compareRangesUsingStarts(v.selection,y.selection));for(const{selection:v,idx:y}of w){let x=Zo.adjustSelection(u,v,i,0),L=Zo.adjustSelection(u,v,0,n);_!==u.getValueInRange(x)&&(x=v),b!==u.getValueInRange(L)&&(L=v);const E=v.setStartPosition(x.startLineNumber,x.startColumn).setEndPosition(L.endLineNumber,L.endColumn),N=new Mg().parse(t,!0,s),H=E.getStartPosition(),F=Zo.adjustWhitespace(u,H,r||y>0&&C!==u.getLineFirstNonWhitespaceColumn(v.positionLineNumber),N);N.resolveVariables(new b5([g,new w5(p,y,w.length,e.getOption(79)==="spread"),new C5(u,v,y,l),new uw(u,v,c),new fw,new y5(f),new S5])),d[y]=aa.replace(E,N.toString()),d[y].identifier={major:y,minor:0},d[y]._isTracked=!0,h[y]=new gw(e,N,F)}return{edits:d,snippets:h}}static createEditsAndSnippetsFromEdits(e,t,i,n,s,r,a){if(!e.hasModel()||t.length===0)return{edits:[],snippets:[]};const l=[],c=e.getModel(),d=new Mg,h=new ub,u=new b5([e.invokeWithinContext(g=>new v5(g.get(Cg),c)),new w5(()=>s,0,e.getSelections().length,e.getOption(79)==="spread"),new C5(c,e.getSelection(),0,r),new uw(c,e.getSelection(),a),new fw,new y5(e.invokeWithinContext(g=>g.get(jk))),new S5]);t=t.sort((g,p)=>I.compareRangesUsingStarts(g.range,p.range));let f=0;for(let g=0;g0){const y=t[g-1].range,x=I.fromPositions(y.getEndPosition(),p.getStartPosition()),L=new wn(c.getValueInRange(x));h.appendChild(L),f+=L.value.length}const b=d.parseFragment(_,h);Zo.adjustWhitespace(c,p.getStartPosition(),!0,h,new Set(b)),h.resolveVariables(u);const C=h.toString(),w=C.slice(f);f=C.length;const v=aa.replace(p,w);v.identifier={major:g,minor:0},v._isTracked=!0,l.push(v)}return d.ensureFinalTabstop(h,i,!0),{edits:l,snippets:[new gw(e,h,"")]}}constructor(e,t,i=L5,n){this._editor=e,this._template=t,this._options=i,this._languageConfigurationService=n,this._templateMerges=[],this._snippets=[]}dispose(){xt(this._snippets)}_logInfo(){return`template="${this._template}", merged_templates="${this._templateMerges.join(" -> ")}"`}insert(){if(!this._editor.hasModel())return;const{edits:e,snippets:t}=typeof this._template=="string"?Zo.createEditsAndSnippetsFromSelections(this._editor,this._template,this._options.overwriteBefore,this._options.overwriteAfter,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer,this._languageConfigurationService):Zo.createEditsAndSnippetsFromEdits(this._editor,this._template,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer,this._languageConfigurationService);this._snippets=t,this._editor.executeEdits("snippet",e,i=>{const n=i.filter(s=>!!s.identifier);for(let s=0;sFe.fromPositions(s.range.getEndPosition()))}),this._editor.revealRange(this._editor.getSelections()[0])}merge(e,t=L5){if(!this._editor.hasModel())return;this._templateMerges.push([this._snippets[0]._nestingLevel,this._snippets[0]._placeholderGroupsIdx,e]);const{edits:i,snippets:n}=Zo.createEditsAndSnippetsFromSelections(this._editor,e,t.overwriteBefore,t.overwriteAfter,!0,t.adjustWhitespace,t.clipboardText,t.overtypingCapturer,this._languageConfigurationService);this._editor.executeEdits("snippet",i,s=>{const r=s.filter(l=>!!l.identifier);for(let l=0;lFe.fromPositions(l.range.getEndPosition()))})}next(){const e=this._move(!0);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())}prev(){const e=this._move(!1);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())}_move(e){const t=[];for(const i of this._snippets){const n=i.move(e);t.push(...n)}return t}get isAtFirstPlaceholder(){return this._snippets[0].isAtFirstPlaceholder}get isAtLastPlaceholder(){return this._snippets[0].isAtLastPlaceholder}get hasPlaceholder(){return this._snippets[0].hasPlaceholder}get hasChoice(){return this._snippets[0].hasChoice}get activeChoice(){return this._snippets[0].activeChoice}isSelectionWithinPlaceholders(){if(!this.hasPlaceholder)return!1;const e=this._editor.getSelections();if(e.length{s.push(...n.get(r))})}e.sort(I.compareRangesUsingStarts);for(const[i,n]of t){if(n.length!==e.length){t.delete(i);continue}n.sort(I.compareRangesUsingStarts);for(let s=0;s0}};mw=Zo=Zhe([Yhe(3,Gn)],mw);var Qhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},p1=function(o,e){return function(t,i){e(t,i,o)}},ju;const x5={overwriteBefore:0,overwriteAfter:0,undoStopBefore:!0,undoStopAfter:!0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0};var Jr;let Mn=(Jr=class{static get(e){return e.getContribution(ju.ID)}constructor(e,t,i,n,s){this._editor=e,this._logService=t,this._languageFeaturesService=i,this._languageConfigurationService=s,this._snippetListener=new X,this._modelVersionId=-1,this._inSnippet=ju.InSnippetMode.bindTo(n),this._hasNextTabstop=ju.HasNextTabstop.bindTo(n),this._hasPrevTabstop=ju.HasPrevTabstop.bindTo(n)}dispose(){this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._session?.dispose(),this._snippetListener.dispose()}insert(e,t){try{this._doInsert(e,typeof t>"u"?x5:{...x5,...t})}catch(i){this.cancel(),this._logService.error(i),this._logService.error("snippet_error"),this._logService.error("insert_template=",e),this._logService.error("existing_template=",this._session?this._session._logInfo():"")}}_doInsert(e,t){if(this._editor.hasModel()){if(this._snippetListener.clear(),t.undoStopBefore&&this._editor.getModel().pushStackElement(),this._session&&typeof e!="string"&&this.cancel(),this._session?(ai(typeof e=="string"),this._session.merge(e,t)):(this._modelVersionId=this._editor.getModel().getAlternativeVersionId(),this._session=new mw(this._editor,e,t,this._languageConfigurationService),this._session.insert()),t.undoStopAfter&&this._editor.getModel().pushStackElement(),this._session?.hasChoice){const i={_debugDisplayName:"snippetChoiceCompletions",provideCompletionItems:(c,d)=>{if(!this._session||c!==this._editor.getModel()||!P.equals(this._editor.getPosition(),d))return;const{activeChoice:h}=this._session;if(!h||h.choice.options.length===0)return;const u=c.getValueInRange(h.range),f=!!h.choice.options.find(p=>p.value===u),g=[];for(let p=0;p{s?.dispose(),r=!1},l=()=>{r||(s=this._languageFeaturesService.completionProvider.register({language:n.getLanguageId(),pattern:n.uri.fsPath,scheme:n.uri.scheme,exclusive:!0},i),this._snippetListener.add(s),r=!0)};this._choiceCompletions={provider:i,enable:l,disable:a}}this._updateState(),this._snippetListener.add(this._editor.onDidChangeModelContent(i=>i.isFlush&&this.cancel())),this._snippetListener.add(this._editor.onDidChangeModel(()=>this.cancel())),this._snippetListener.add(this._editor.onDidChangeCursorSelection(()=>this._updateState()))}}_updateState(){if(!(!this._session||!this._editor.hasModel())){if(this._modelVersionId===this._editor.getModel().getAlternativeVersionId())return this.cancel();if(!this._session.hasPlaceholder)return this.cancel();if(this._session.isAtLastPlaceholder||!this._session.isSelectionWithinPlaceholders())return this._editor.getModel().pushStackElement(),this.cancel();this._inSnippet.set(!0),this._hasPrevTabstop.set(!this._session.isAtFirstPlaceholder),this._hasNextTabstop.set(!this._session.isAtLastPlaceholder),this._handleChoice()}}_handleChoice(){if(!this._session||!this._editor.hasModel()){this._currentChoice=void 0;return}const{activeChoice:e}=this._session;if(!e||!this._choiceCompletions){this._choiceCompletions?.disable(),this._currentChoice=void 0;return}this._currentChoice!==e.choice&&(this._currentChoice=e.choice,this._choiceCompletions.enable(),queueMicrotask(()=>{jhe(this._editor,this._choiceCompletions.provider)}))}finish(){for(;this._inSnippet.get();)this.next()}cancel(e=!1){this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._snippetListener.clear(),this._currentChoice=void 0,this._session?.dispose(),this._session=void 0,this._modelVersionId=-1,e&&this._editor.setSelections([this._editor.getSelection()])}prev(){this._session?.prev(),this._updateState()}next(){this._session?.next(),this._updateState()}isInSnippet(){return!!this._inSnippet.get()}},ju=Jr,Jr.ID="snippetController2",Jr.InSnippetMode=new le("inSnippetMode",!1,m("inSnippetMode","Whether the editor in current in snippet mode")),Jr.HasNextTabstop=new le("hasNextTabstop",!1,m("hasNextTabstop","Whether there is a next tab stop when in snippet mode")),Jr.HasPrevTabstop=new le("hasPrevTabstop",!1,m("hasPrevTabstop","Whether there is a previous tab stop when in snippet mode")),Jr);Mn=ju=Qhe([p1(1,gs),p1(2,Se),p1(3,De),p1(4,Gn)],Mn);Ho(Mn.ID,Mn,4);const Hy=co.bindToContribution(Mn.get);ge(new Hy({id:"jumpToNextSnippetPlaceholder",precondition:re.and(Mn.InSnippetMode,Mn.HasNextTabstop),handler:o=>o.next(),kbOpts:{weight:130,kbExpr:K.textInputFocus,primary:2}}));ge(new Hy({id:"jumpToPrevSnippetPlaceholder",precondition:re.and(Mn.InSnippetMode,Mn.HasPrevTabstop),handler:o=>o.prev(),kbOpts:{weight:130,kbExpr:K.textInputFocus,primary:1026}}));ge(new Hy({id:"leaveSnippet",precondition:Mn.InSnippetMode,handler:o=>o.cancel(!0),kbOpts:{weight:130,kbExpr:K.textInputFocus,primary:9,secondary:[1033]}}));ge(new Hy({id:"acceptSnippet",precondition:Mn.InSnippetMode,handler:o=>o.finish()}));var Xhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},CL=function(o,e){return function(t,i){e(t,i,o)}};let sN=class extends z{get isAcceptingPartially(){return this._isAcceptingPartially}constructor(e,t,i,n,s,r,a,l,c,d,h,u){super(),this.textModel=e,this.selectedSuggestItem=t,this._textModelVersionId=i,this._positions=n,this._debounceValue=s,this._suggestPreviewEnabled=r,this._suggestPreviewMode=a,this._inlineSuggestMode=l,this._enabled=c,this._instantiationService=d,this._commandService=h,this._languageConfigurationService=u,this._source=this._register(this._instantiationService.createInstance(nN,this.textModel,this._textModelVersionId,this._debounceValue)),this._isActive=Ge(this,!1),this._forceUpdateExplicitlySignal=Q_(this),this._selectedInlineCompletionId=Ge(this,void 0),this._primaryPosition=Ce(this,g=>this._positions.read(g)[0]??new P(1,1)),this._isAcceptingPartially=!1,this._preserveCurrentCompletionReasons=new Set([$a.Redo,$a.Undo,$a.AcceptWord]),this._fetchInlineCompletionsPromise=HZ({owner:this,createEmptyChangeSummary:()=>({preserveCurrentCompletion:!1,inlineCompletionTriggerKind:Cl.Automatic}),handleChange:(g,p)=>(g.didChange(this._textModelVersionId)&&this._preserveCurrentCompletionReasons.has(this._getReason(g.change))?p.preserveCurrentCompletion=!0:g.didChange(this._forceUpdateExplicitlySignal)&&(p.inlineCompletionTriggerKind=Cl.Explicit),!0)},(g,p)=>{if(this._forceUpdateExplicitlySignal.read(g),!(this._enabled.read(g)&&this.selectedSuggestItem.read(g)||this._isActive.read(g))){this._source.cancelUpdate();return}this._textModelVersionId.read(g);const b=this._source.suggestWidgetInlineCompletions.get(),C=this.selectedSuggestItem.read(g);if(b&&!C){const L=this._source.inlineCompletions.get();Xt(E=>{(!L||b.request.versionId>L.request.versionId)&&this._source.inlineCompletions.set(b.clone(),E),this._source.clearSuggestWidgetInlineCompletions(E)})}const w=this._primaryPosition.read(g),v={triggerKind:p.inlineCompletionTriggerKind,selectedSuggestionInfo:C?.toSelectedSuggestionInfo()},y=this.selectedInlineCompletion.get(),x=p.preserveCurrentCompletion||y?.forwardStable?y:void 0;return this._source.fetch(w,v,x)}),this._filteredInlineCompletionItems=dr({owner:this,equalsFn:Xk()},g=>{const p=this._source.inlineCompletions.read(g);if(!p)return[];const _=this._primaryPosition.read(g);return p.inlineCompletions.filter(C=>C.isVisible(this.textModel,_,g))}),this.selectedInlineCompletionIndex=Ce(this,g=>{const p=this._selectedInlineCompletionId.read(g),_=this._filteredInlineCompletionItems.read(g),b=this._selectedInlineCompletionId===void 0?-1:_.findIndex(C=>C.semanticId===p);return b===-1?(this._selectedInlineCompletionId.set(void 0,void 0),0):b}),this.selectedInlineCompletion=Ce(this,g=>{const p=this._filteredInlineCompletionItems.read(g),_=this.selectedInlineCompletionIndex.read(g);return p[_]}),this.activeCommands=dr({owner:this,equalsFn:Xk()},g=>this.selectedInlineCompletion.read(g)?.inlineCompletion.source.inlineCompletions.commands??[]),this.lastTriggerKind=this._source.inlineCompletions.map(this,g=>g?.request.context.triggerKind),this.inlineCompletionsCount=Ce(this,g=>{if(this.lastTriggerKind.read(g)===Cl.Explicit)return this._filteredInlineCompletionItems.read(g).length}),this.state=dr({owner:this,equalsFn:(g,p)=>!g||!p?g===p:s5(g.ghostTexts,p.ghostTexts)&&g.inlineCompletion===p.inlineCompletion&&g.suggestItem===p.suggestItem},g=>{const p=this.textModel,_=this.selectedSuggestItem.read(g);if(_){const b=nh(_.toSingleTextEdit(),p),C=this._computeAugmentation(b,g);if(!this._suggestPreviewEnabled.read(g)&&!C)return;const v=C?.edit??b,y=C?C.edit.text.length-b.text.length:0,x=this._suggestPreviewMode.read(g),L=this._positions.read(g),E=[v,...vL(this.textModel,L,v)],N=E.map((F,W)=>d5(F,p,x,L[W],y)).filter(_l),H=N[0]??new cw(v.range.endLineNumber,[]);return{edits:E,primaryGhostText:H,ghostTexts:N,inlineCompletion:C?.completion,suggestItem:_}}else{if(!this._isActive.read(g))return;const b=this.selectedInlineCompletion.read(g);if(!b)return;const C=b.toSingleTextEdit(g),w=this._inlineSuggestMode.read(g),v=this._positions.read(g),y=[C,...vL(this.textModel,v,C)],x=y.map((L,E)=>d5(L,p,w,v[E],0)).filter(_l);return x[0]?{edits:y,primaryGhostText:x[0],ghostTexts:x,inlineCompletion:b,suggestItem:void 0}:void 0}}),this.ghostTexts=dr({owner:this,equalsFn:s5},g=>{const p=this.state.read(g);if(p)return p.ghostTexts}),this.primaryGhostText=dr({owner:this,equalsFn:VB},g=>{const p=this.state.read(g);if(p)return p?.primaryGhostText}),this._register(X_(this._fetchInlineCompletionsPromise));let f;this._register(We(g=>{const _=this.state.read(g)?.inlineCompletion;if(_?.semanticId!==f?.semanticId&&(f=_,_)){const b=_.inlineCompletion,C=b.source;C.provider.handleItemDidShow?.(C.inlineCompletions,b.sourceInlineCompletion,b.insertText)}}))}_getReason(e){return e?.isUndoing?$a.Undo:e?.isRedoing?$a.Redo:this.isAcceptingPartially?$a.AcceptWord:$a.Other}async trigger(e){this._isActive.set(!0,e),await this._fetchInlineCompletionsPromise.get()}async triggerExplicitly(e){c_(e,t=>{this._isActive.set(!0,t),this._forceUpdateExplicitlySignal.trigger(t)}),await this._fetchInlineCompletionsPromise.get()}stop(e){c_(e,t=>{this._isActive.set(!1,t),this._source.clear(t)})}_computeAugmentation(e,t){const i=this.textModel,n=this._source.suggestWidgetInlineCompletions.read(t),s=n?n.inlineCompletions:[this.selectedInlineCompletion.read(t)].filter(_l);return KU(s,a=>{let l=a.toSingleTextEdit(t);return l=nh(l,i,I.fromPositions(l.range.getStartPosition(),e.range.getEndPosition())),UB(l,e)?{completion:a,edit:l}:void 0})}async _deltaSelectedInlineCompletionIndex(e){await this.triggerExplicitly();const t=this._filteredInlineCompletionItems.get()||[];if(t.length>0){const i=(this.selectedInlineCompletionIndex.get()+e+t.length)%t.length;this._selectedInlineCompletionId.set(t[i].semanticId,void 0)}else this._selectedInlineCompletionId.set(void 0,void 0)}async next(){await this._deltaSelectedInlineCompletionIndex(1)}async previous(){await this._deltaSelectedInlineCompletionIndex(-1)}async accept(e){if(e.getModel()!==this.textModel)throw new nt;const t=this.state.get();if(!t||t.primaryGhostText.isEmpty()||!t.inlineCompletion)return;const i=t.inlineCompletion.toInlineCompletion(void 0);if(i.command&&i.source.addRef(),e.pushUndoStop(),i.snippetInfo)e.executeEdits("inlineSuggestion.accept",[aa.replace(i.range,""),...i.additionalTextEdits]),e.setPosition(i.snippetInfo.range.getStartPosition(),"inlineCompletionAccept"),Mn.get(e)?.insert(i.snippetInfo.snippet,{undoStopBefore:!1});else{const n=t.edits,s=k5(n).map(r=>Fe.fromPositions(r));e.executeEdits("inlineSuggestion.accept",[...n.map(r=>aa.replace(r.range,r.text)),...i.additionalTextEdits]),e.setSelections(s,"inlineCompletionAccept")}this.stop(),i.command&&(await this._commandService.executeCommand(i.command.id,...i.command.arguments||[]).then(void 0,$n),i.source.removeRef())}async acceptNextWord(e){await this._acceptNext(e,(t,i)=>{const n=this.textModel.getLanguageIdAtPosition(t.lineNumber,t.column),s=this._languageConfigurationService.getLanguageConfiguration(n),r=new RegExp(s.wordDefinition.source,s.wordDefinition.flags.replace("g","")),a=i.match(r);let l=0;a&&a.index!==void 0?a.index===0?l=a[0].length:l=a.index:l=i.length;const d=/\s+/g.exec(i);return d&&d.index!==void 0&&d.index+d[0].length{const n=i.match(/\n/);return n&&n.index!==void 0?n.index+1:i.length},1)}async _acceptNext(e,t,i){if(e.getModel()!==this.textModel)throw new nt;const n=this.state.get();if(!n||n.primaryGhostText.isEmpty()||!n.inlineCompletion)return;const s=n.primaryGhostText,r=n.inlineCompletion.toInlineCompletion(void 0);if(r.snippetInfo||r.filterText!==r.insertText){await this.accept(e);return}const a=s.parts[0],l=new P(s.lineNumber,a.column),c=a.text,d=t(l,c);if(d===c.length&&s.parts.length===1){this.accept(e);return}const h=c.substring(0,d),u=this._positions.get(),f=u[0];r.source.addRef();try{this._isAcceptingPartially=!0;try{e.pushUndoStop();const g=I.fromPositions(f,l),p=e.getModel().getValueInRange(g)+h,_=new fa(g,p),b=[_,...vL(this.textModel,u,_)],C=k5(b).map(w=>Fe.fromPositions(w));e.executeEdits("inlineSuggestion.accept",b.map(w=>aa.replace(w.range,w.text))),e.setSelections(C,"inlineCompletionPartialAccept"),e.revealPositionInCenterIfOutsideViewport(e.getPosition(),1)}finally{this._isAcceptingPartially=!1}if(r.source.provider.handlePartialAccept){const g=I.fromPositions(r.range.getStartPosition(),Po.ofText(h).addToPosition(l)),p=e.getModel().getValueInRange(g,1);r.source.provider.handlePartialAccept(r.source.inlineCompletions,r.sourceInlineCompletion,p.length,{kind:i})}}finally{r.source.removeRef()}}handleSuggestAccepted(e){const t=nh(e.toSingleTextEdit(),this.textModel),i=this._computeAugmentation(t,void 0);if(!i)return;const n=i.completion.inlineCompletion;n.source.provider.handlePartialAccept?.(n.source.inlineCompletions,n.sourceInlineCompletion,t.text.length,{kind:2})}};sN=Xhe([CL(9,ke),CL(10,hi),CL(11,Gn)],sN);var $a;(function(o){o[o.Undo=0]="Undo",o[o.Redo=1]="Redo",o[o.AcceptWord=2]="AcceptWord",o[o.Other=3]="Other"})($a||($a={}));function vL(o,e,t){if(e.length===1)return[];const i=e[0],n=e.slice(1),s=t.range.getStartPosition(),r=t.range.getEndPosition(),a=o.getValueInRange(I.fromPositions(i,r)),l=o5(i,s);if(l.lineNumber<1)return Ze(new nt(`positionWithinTextEdit line number should be bigger than 0. - Invalid subtraction between ${i.toString()} and ${s.toString()}`)),[];const c=Jhe(t.text,l);return n.map(d=>{const h=Che(o5(d,s),r),u=o.getValueInRange(I.fromPositions(d,h)),f=Th(a,u),g=I.fromPositions(d,d.delta(0,f));return new fa(g,c)})}function Jhe(o,e){let t="";const i=dH(o);for(let n=e.lineNumber-1;ns.range,I.compareRangesUsingStarts)),i=new gT(e.apply(o)).getNewRanges();return e.inverse().apply(i).map(s=>s.getEndPosition())}var eue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},D5=function(o,e){return function(t,i){e(t,i,o)}},zm;class LM{constructor(e){this.name=e}select(e,t,i){if(i.length===0)return 0;const n=i[0].score[0];for(let s=0;sl&&h.type===i[c].completion.kind&&h.insertText===i[c].completion.insertText&&(l=h.touch,a=c),i[c].completion.preselect&&r===-1)return r=c}return a!==-1?a:r!==-1?r:0}toJSON(){return this._cache.toJSON()}fromJSON(e){this._cache.clear();const t=0;for(const[i,n]of e)n.touch=t,n.type=typeof n.type=="number"?n.type:Up.fromString(n.type),this._cache.set(i,n);this._seq=this._cache.size}}class iue extends LM{constructor(){super("recentlyUsedByPrefix"),this._trie=Bf.forStrings(),this._seq=0}memorize(e,t,i){const{word:n}=e.getWordUntilPosition(t),s=`${e.getLanguageId()}/${n}`;this._trie.set(s,{type:i.completion.kind,insertText:i.completion.insertText,touch:this._seq++})}select(e,t,i){const{word:n}=e.getWordUntilPosition(t);if(!n)return super.select(e,t,i);const s=`${e.getLanguageId()}/${n}`;let r=this._trie.get(s);if(r||(r=this._trie.findSubstr(s)),r)for(let a=0;ae.push([i,t])),e.sort((t,i)=>-(t[1].touch-i[1].touch)).forEach((t,i)=>t[1].touch=i),e.slice(0,200)}fromJSON(e){if(this._trie.clear(),e.length>0){this._seq=e[0][1].touch+1;for(const[t,i]of e)i.type=typeof i.type=="number"?i.type:Up.fromString(i.type),this._trie.set(t,i)}}}var Ec;let oN=(Ec=class{constructor(e,t){this._storageService=e,this._configService=t,this._disposables=new X,this._persistSoon=new ci(()=>this._saveState(),500),this._disposables.add(e.onWillSaveState(i=>{i.reason===aD.SHUTDOWN&&this._saveState()}))}dispose(){this._disposables.dispose(),this._persistSoon.dispose()}memorize(e,t,i){this._withStrategy(e,t).memorize(e,t,i),this._persistSoon.schedule()}select(e,t,i){return this._withStrategy(e,t).select(e,t,i)}_withStrategy(e,t){const i=this._configService.getValue("editor.suggestSelection",{overrideIdentifier:e.getLanguageIdAtPosition(t.lineNumber,t.column),resource:e.uri});if(this._strategy?.name!==i){this._saveState();const n=zm._strategyCtors.get(i)||I5;this._strategy=new n;try{const r=this._configService.getValue("editor.suggest.shareSuggestSelections")?0:1,a=this._storageService.get(`${zm._storagePrefix}/${i}`,r);a&&this._strategy.fromJSON(JSON.parse(a))}catch{}}return this._strategy}_saveState(){if(this._strategy){const t=this._configService.getValue("editor.suggest.shareSuggestSelections")?0:1,i=JSON.stringify(this._strategy);this._storageService.store(`${zm._storagePrefix}/${this._strategy.name}`,i,t,1)}}},zm=Ec,Ec._strategyCtors=new Map([["recentlyUsedByPrefix",iue],["recentlyUsed",tue],["first",I5]]),Ec._storagePrefix="suggest/memories",Ec);oN=zm=eue([D5(0,du),D5(1,lt)],oN);const YB=He("ISuggestMemories");Qe(YB,oN,1);var nue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},sue=function(o,e){return function(t,i){e(t,i,o)}},rN,xh;let pw=(xh=class{constructor(e,t){this._editor=e,this._enabled=!1,this._ckAtEnd=rN.AtEnd.bindTo(t),this._configListener=this._editor.onDidChangeConfiguration(i=>i.hasChanged(124)&&this._update()),this._update()}dispose(){this._configListener.dispose(),this._selectionListener?.dispose(),this._ckAtEnd.reset()}_update(){const e=this._editor.getOption(124)==="on";if(this._enabled!==e)if(this._enabled=e,this._enabled){const t=()=>{if(!this._editor.hasModel()){this._ckAtEnd.set(!1);return}const i=this._editor.getModel(),n=this._editor.getSelection(),s=i.getWordAtPosition(n.getStartPosition());if(!s){this._ckAtEnd.set(!1);return}this._ckAtEnd.set(s.endColumn===n.getStartPosition().column)};this._selectionListener=this._editor.onDidChangeCursorSelection(t),t()}else this._selectionListener&&(this._ckAtEnd.reset(),this._selectionListener.dispose(),this._selectionListener=void 0)}},rN=xh,xh.AtEnd=new le("atEndOfWord",!1),xh);pw=rN=nue([sue(1,De)],pw);var oue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},rue=function(o,e){return function(t,i){e(t,i,o)}},Um,kh;let Rg=(kh=class{constructor(e,t){this._editor=e,this._index=0,this._ckOtherSuggestions=Um.OtherSuggestions.bindTo(t)}dispose(){this.reset()}reset(){this._ckOtherSuggestions.reset(),this._listener?.dispose(),this._model=void 0,this._acceptNext=void 0,this._ignore=!1}set({model:e,index:t},i){if(e.items.length===0){this.reset();return}if(Um._moveIndex(!0,e,t)===t){this.reset();return}this._acceptNext=i,this._model=e,this._index=t,this._listener=this._editor.onDidChangeCursorPosition(()=>{this._ignore||this.reset()}),this._ckOtherSuggestions.set(!0)}static _moveIndex(e,t,i){let n=i;for(let s=t.items.length;s>0&&(n=(n+t.items.length+(e?1:-1))%t.items.length,!(n===i||!t.items[n].completion.additionalTextEdits));s--);return n}next(){this._move(!0)}prev(){this._move(!1)}_move(e){if(this._model)try{this._ignore=!0,this._index=Um._moveIndex(e,this._model,this._index),this._acceptNext({index:this._index,item:this._model.items[this._index],model:this._model})}finally{this._ignore=!1}}},Um=kh,kh.OtherSuggestions=new le("hasOtherSuggestions",!1),kh);Rg=Um=oue([rue(1,De)],Rg);class aue{constructor(e,t,i,n){this._disposables=new X,this._disposables.add(i.onDidSuggest(s=>{s.completionModel.items.length===0&&this.reset()})),this._disposables.add(i.onDidCancel(s=>{this.reset()})),this._disposables.add(t.onDidShow(()=>this._onItem(t.getFocusedItem()))),this._disposables.add(t.onDidFocus(this._onItem,this)),this._disposables.add(t.onDidHide(this.reset,this)),this._disposables.add(e.onWillType(s=>{if(this._active&&!t.isFrozen()&&i.state!==0){const r=s.charCodeAt(s.length-1);this._active.acceptCharacters.has(r)&&e.getOption(0)&&n(this._active.item)}}))}_onItem(e){if(!e||!Ps(e.item.completion.commitCharacters)){this.reset();return}if(this._active&&this._active.item.item===e.item)return;const t=new bU;for(const i of e.item.completion.commitCharacters)i.length>0&&t.add(i.charCodeAt(0));this._active={acceptCharacters:t,item:e}}reset(){this._active=void 0}dispose(){this._disposables.dispose()}}const Ys=class Ys{async provideSelectionRanges(e,t){const i=[];for(const n of t){const s=[];i.push(s);const r=new Map;await new Promise(a=>Ys._bracketsRightYield(a,0,e,n,r)),await new Promise(a=>Ys._bracketsLeftYield(a,0,e,n,r,s))}return i}static _bracketsRightYield(e,t,i,n,s){const r=new Map,a=Date.now();for(;;){if(t>=Ys._maxRounds){e();break}if(!n){e();break}const l=i.bracketPairs.findNextBracket(n);if(!l){e();break}if(Date.now()-a>Ys._maxDuration){setTimeout(()=>Ys._bracketsRightYield(e,t+1,i,n,s));break}if(l.bracketInfo.isOpeningBracket){const d=l.bracketInfo.bracketText,h=r.has(d)?r.get(d):0;r.set(d,h+1)}else{const d=l.bracketInfo.getOpeningBrackets()[0].bracketText;let h=r.has(d)?r.get(d):0;if(h-=1,r.set(d,Math.max(0,h)),h<0){let u=s.get(d);u||(u=new yn,s.set(d,u)),u.push(l.range)}}n=l.range.getEndPosition()}}static _bracketsLeftYield(e,t,i,n,s,r){const a=new Map,l=Date.now();for(;;){if(t>=Ys._maxRounds&&s.size===0){e();break}if(!n){e();break}const c=i.bracketPairs.findPrevBracket(n);if(!c){e();break}if(Date.now()-l>Ys._maxDuration){setTimeout(()=>Ys._bracketsLeftYield(e,t+1,i,n,s,r));break}if(c.bracketInfo.isOpeningBracket){const h=c.bracketInfo.bracketText;let u=a.has(h)?a.get(h):0;if(u-=1,a.set(h,Math.max(0,u)),u<0){const f=s.get(h);if(f){const g=f.shift();f.size===0&&s.delete(h);const p=I.fromPositions(c.range.getEndPosition(),g.getStartPosition()),_=I.fromPositions(c.range.getStartPosition(),g.getEndPosition());r.push({range:p}),r.push({range:_}),Ys._addBracketLeading(i,_,r)}}}else{const h=c.bracketInfo.getOpeningBrackets()[0].bracketText,u=a.has(h)?a.get(h):0;a.set(h,u+1)}n=c.range.getStartPosition()}}static _addBracketLeading(e,t,i){if(t.startLineNumber===t.endLineNumber)return;const n=t.startLineNumber,s=e.getLineFirstNonWhitespaceColumn(n);s!==0&&s!==t.startColumn&&(i.push({range:I.fromPositions(new P(n,s),t.getEndPosition())}),i.push({range:I.fromPositions(new P(n,1),t.getEndPosition())}));const r=n-1;if(r>0){const a=e.getLineFirstNonWhitespaceColumn(r);a===t.startColumn&&a!==e.getLineLastNonWhitespaceColumn(r)&&(i.push({range:I.fromPositions(new P(r,a),t.getEndPosition())}),i.push({range:I.fromPositions(new P(r,1),t.getEndPosition())}))}}};Ys._maxDuration=30,Ys._maxRounds=2;let aN=Ys;const $r=class $r{static async create(e,t){if(!t.getOption(119).localityBonus||!t.hasModel())return $r.None;const i=t.getModel(),n=t.getPosition();if(!e.canComputeWordRanges(i.uri))return $r.None;const[s]=await new aN().provideSelectionRanges(i,[n]);if(s.length===0)return $r.None;const r=await e.computeWordRanges(i.uri,s[0].range);if(!r)return $r.None;const a=i.getWordUntilPosition(n);return delete r[a.word],new class extends $r{distance(l,c){if(!n.equals(t.getPosition()))return 0;if(c.kind===17)return 2<<20;const d=typeof c.label=="string"?c.label:c.label.label,h=r[d];if(N5(h))return 2<<20;const u=SN(h,I.fromPositions(l),I.compareRangesUsingStarts),f=u>=0?h[u]:h[Math.max(0,~u-1)];let g=s.length;for(const p of s){if(!I.containsRange(p.range,f))break;g-=1}return g}}}};$r.None=new class extends $r{distance(){return 0}};let lN=$r;class Md{constructor(e,t,i,n,s,r,a=r_.default,l=void 0){this.clipboardText=l,this._snippetCompareFn=Md._compareCompletionItems,this._items=e,this._column=t,this._wordDistance=n,this._options=s,this._refilterKind=1,this._lineContext=i,this._fuzzyScoreOptions=a,r==="top"?this._snippetCompareFn=Md._compareCompletionItemsSnippetsUp:r==="bottom"&&(this._snippetCompareFn=Md._compareCompletionItemsSnippetsDown)}get lineContext(){return this._lineContext}set lineContext(e){(this._lineContext.leadingLineContent!==e.leadingLineContent||this._lineContext.characterCountDelta!==e.characterCountDelta)&&(this._refilterKind=this._lineContext.characterCountDelta0&&i[0].container.incomplete&&e.add(t);return e}get stats(){return this._ensureCachedState(),this._stats}_ensureCachedState(){this._refilterKind!==0&&this._createCachedState()}_createCachedState(){this._itemsByProvider=new Map;const e=[],{leadingLineContent:t,characterCountDelta:i}=this._lineContext;let n="",s="";const r=this._refilterKind===1?this._items:this._filteredItems,a=[],l=!this._options.filterGraceful||r.length>2e3?_g:Bq;for(let c=0;c=f)d.score=oa.Default;else if(typeof d.completion.filterText=="string"){const p=l(n,s,g,d.completion.filterText,d.filterTextLow,0,this._fuzzyScoreOptions);if(!p)continue;Ax(d.completion.filterText,d.textLabel)===0?d.score=p:(d.score=Aq(n,s,g,d.textLabel,d.labelLow,0),d.score[0]=p[0])}else{const p=l(n,s,g,d.textLabel,d.labelLow,0,this._fuzzyScoreOptions);if(!p)continue;d.score=p}}d.idx=c,d.distance=this._wordDistance.distance(d.position,d.completion),a.push(d),e.push(d.textLabel.length)}this._filteredItems=a.sort(this._snippetCompareFn),this._refilterKind=0,this._stats={pLabelLen:e.length?LL(e.length-.85,e,(c,d)=>c-d):0}}static _compareCompletionItems(e,t){return e.score[0]>t.score[0]?-1:e.score[0]t.distance?1:e.idxt.idx?1:0}static _compareCompletionItemsSnippetsDown(e,t){if(e.completion.kind!==t.completion.kind){if(e.completion.kind===27)return 1;if(t.completion.kind===27)return-1}return Md._compareCompletionItems(e,t)}static _compareCompletionItemsSnippetsUp(e,t){if(e.completion.kind!==t.completion.kind){if(e.completion.kind===27)return-1;if(t.completion.kind===27)return 1}return Md._compareCompletionItems(e,t)}}var lue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ul=function(o,e){return function(t,i){e(t,i,o)}},cN;class cd{static shouldAutoTrigger(e){if(!e.hasModel())return!1;const t=e.getModel(),i=e.getPosition();t.tokenization.tokenizeIfCheap(i.lineNumber);const n=t.getWordAtPosition(i);return!(!n||n.endColumn!==i.column&&n.startColumn+1!==i.column||!isNaN(Number(n.word)))}constructor(e,t,i){this.leadingLineContent=e.getLineContent(t.lineNumber).substr(0,t.column-1),this.leadingWord=e.getWordUntilPosition(t),this.lineNumber=t.lineNumber,this.column=t.column,this.triggerOptions=i}}function cue(o,e,t){if(!e.getContextKeyValue(hs.inlineSuggestionVisible.key))return!0;const i=e.getContextKeyValue(hs.suppressSuggestions.key);return i!==void 0?!i:!o.getOption(62).suppressSuggestions}function due(o,e,t){if(!e.getContextKeyValue("inlineSuggestionVisible"))return!0;const i=e.getContextKeyValue(hs.suppressSuggestions.key);return i!==void 0?!i:!o.getOption(62).suppressSuggestions}let dN=cN=class{constructor(e,t,i,n,s,r,a,l,c){this._editor=e,this._editorWorkerService=t,this._clipboardService=i,this._telemetryService=n,this._logService=s,this._contextKeyService=r,this._configurationService=a,this._languageFeaturesService=l,this._envService=c,this._toDispose=new X,this._triggerCharacterListener=new X,this._triggerQuickSuggest=new wr,this._triggerState=void 0,this._completionDisposables=new X,this._onDidCancel=new A,this._onDidTrigger=new A,this._onDidSuggest=new A,this.onDidCancel=this._onDidCancel.event,this.onDidTrigger=this._onDidTrigger.event,this.onDidSuggest=this._onDidSuggest.event,this._telemetryGate=0,this._currentSelection=this._editor.getSelection()||new Fe(1,1,1,1),this._toDispose.add(this._editor.onDidChangeModel(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeModelLanguage(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeConfiguration(()=>{this._updateTriggerCharacters()})),this._toDispose.add(this._languageFeaturesService.completionProvider.onDidChange(()=>{this._updateTriggerCharacters(),this._updateActiveSuggestSession()}));let d=!1;this._toDispose.add(this._editor.onDidCompositionStart(()=>{d=!0})),this._toDispose.add(this._editor.onDidCompositionEnd(()=>{d=!1,this._onCompositionEnd()})),this._toDispose.add(this._editor.onDidChangeCursorSelection(h=>{d||this._onCursorChange(h)})),this._toDispose.add(this._editor.onDidChangeModelContent(()=>{!d&&this._triggerState!==void 0&&this._refilterCompletionItems()})),this._updateTriggerCharacters()}dispose(){xt(this._triggerCharacterListener),xt([this._onDidCancel,this._onDidSuggest,this._onDidTrigger,this._triggerQuickSuggest]),this._toDispose.dispose(),this._completionDisposables.dispose(),this.cancel()}_updateTriggerCharacters(){if(this._triggerCharacterListener.clear(),this._editor.getOption(92)||!this._editor.hasModel()||!this._editor.getOption(122))return;const e=new Map;for(const i of this._languageFeaturesService.completionProvider.all(this._editor.getModel()))for(const n of i.triggerCharacters||[]){let s=e.get(n);s||(s=new Set,e.set(n,s)),s.add(i)}const t=i=>{if(!due(this._editor,this._contextKeyService,this._configurationService)||cd.shouldAutoTrigger(this._editor))return;if(!i){const r=this._editor.getPosition();i=this._editor.getModel().getLineContent(r.lineNumber).substr(0,r.column-1)}let n="";Mh(i.charCodeAt(i.length-1))?wi(i.charCodeAt(i.length-2))&&(n=i.substr(i.length-2)):n=i.charAt(i.length-1);const s=e.get(n);if(s){const r=new Map;if(this._completionModel)for(const[a,l]of this._completionModel.getItemsByProvider())s.has(a)||r.set(a,l);this.trigger({auto:!0,triggerKind:1,triggerCharacter:n,retrigger:!!this._completionModel,clipboardText:this._completionModel?.clipboardText,completionOptions:{providerFilter:s,providerItemsToReuse:r}})}};this._triggerCharacterListener.add(this._editor.onDidType(t)),this._triggerCharacterListener.add(this._editor.onDidCompositionEnd(()=>t()))}get state(){return this._triggerState?this._triggerState.auto?2:1:0}cancel(e=!1){this._triggerState!==void 0&&(this._triggerQuickSuggest.cancel(),this._requestToken?.cancel(),this._requestToken=void 0,this._triggerState=void 0,this._completionModel=void 0,this._context=void 0,this._onDidCancel.fire({retrigger:e}))}clear(){this._completionDisposables.clear()}_updateActiveSuggestSession(){this._triggerState!==void 0&&(!this._editor.hasModel()||!this._languageFeaturesService.completionProvider.has(this._editor.getModel())?this.cancel():this.trigger({auto:this._triggerState.auto,retrigger:!0}))}_onCursorChange(e){if(!this._editor.hasModel())return;const t=this._currentSelection;if(this._currentSelection=this._editor.getSelection(),!e.selection.isEmpty()||e.reason!==0&&e.reason!==3||e.source!=="keyboard"&&e.source!=="deleteLeft"){this.cancel();return}this._triggerState===void 0&&e.reason===0?(t.containsRange(this._currentSelection)||t.getEndPosition().isBeforeOrEqual(this._currentSelection.getPosition()))&&this._doTriggerQuickSuggest():this._triggerState!==void 0&&e.reason===3&&this._refilterCompletionItems()}_onCompositionEnd(){this._triggerState===void 0?this._doTriggerQuickSuggest():this._refilterCompletionItems()}_doTriggerQuickSuggest(){m1.isAllOff(this._editor.getOption(90))||this._editor.getOption(119).snippetsPreventQuickSuggestions&&Mn.get(this._editor)?.isInSnippet()||(this.cancel(),this._triggerQuickSuggest.cancelAndSet(()=>{if(this._triggerState!==void 0||!cd.shouldAutoTrigger(this._editor)||!this._editor.hasModel()||!this._editor.hasWidgetFocus())return;const e=this._editor.getModel(),t=this._editor.getPosition(),i=this._editor.getOption(90);if(!m1.isAllOff(i)){if(!m1.isAllOn(i)){e.tokenization.tokenizeIfCheap(t.lineNumber);const n=e.tokenization.getLineTokens(t.lineNumber),s=n.getStandardTokenType(n.findTokenIndexAtOffset(Math.max(t.column-1-1,0)));if(m1.valueFor(i,s)!=="on")return}cue(this._editor,this._contextKeyService,this._configurationService)&&this._languageFeaturesService.completionProvider.has(e)&&this.trigger({auto:!0})}},this._editor.getOption(91)))}_refilterCompletionItems(){ai(this._editor.hasModel()),ai(this._triggerState!==void 0);const e=this._editor.getModel(),t=this._editor.getPosition(),i=new cd(e,t,{...this._triggerState,refilter:!0});this._onNewContext(i)}trigger(e){if(!this._editor.hasModel())return;const t=this._editor.getModel(),i=new cd(t,this._editor.getPosition(),e);this.cancel(e.retrigger),this._triggerState=e,this._onDidTrigger.fire({auto:e.auto,shy:e.shy??!1,position:this._editor.getPosition()}),this._context=i;let n={triggerKind:e.triggerKind??0};e.triggerCharacter&&(n={triggerKind:1,triggerCharacter:e.triggerCharacter}),this._requestToken=new In;const s=this._editor.getOption(113);let r=1;switch(s){case"top":r=0;break;case"bottom":r=2;break}const{itemKind:a,showDeprecated:l}=cN.createSuggestFilter(this._editor),c=new hw(r,e.completionOptions?.kindFilter??a,e.completionOptions?.providerFilter,e.completionOptions?.providerItemsToReuse,l),d=lN.create(this._editorWorkerService,this._editor),h=ZB(this._languageFeaturesService.completionProvider,t,this._editor.getPosition(),c,n,this._requestToken.token);Promise.all([h,d]).then(async([u,f])=>{if(this._requestToken?.dispose(),!this._editor.hasModel())return;let g=e?.clipboardText;if(!g&&u.needsClipboard&&(g=await this._clipboardService.readText()),this._triggerState===void 0)return;const p=this._editor.getModel(),_=new cd(p,this._editor.getPosition(),e),b={...r_.default,firstMatchCanBeWeak:!this._editor.getOption(119).matchOnWordStartOnly};if(this._completionModel=new Md(u.items,this._context.column,{leadingLineContent:_.leadingLineContent,characterCountDelta:_.column-this._context.column},f,this._editor.getOption(119),this._editor.getOption(113),b,g),this._completionDisposables.add(u.disposable),this._onNewContext(_),this._reportDurationsTelemetry(u.durations),!this._envService.isBuilt||this._envService.isExtensionDevelopment)for(const C of u.items)C.isInvalid&&this._logService.warn(`[suggest] did IGNORE invalid completion item from ${C.provider._debugDisplayName}`,C.completion)}).catch(Ze)}_reportDurationsTelemetry(e){this._telemetryGate++%230===0&&setTimeout(()=>{this._telemetryService.publicLog2("suggest.durations.json",{data:JSON.stringify(e)}),this._logService.debug("suggest.durations.json",e)})}static createSuggestFilter(e){const t=new Set;e.getOption(113)==="none"&&t.add(27);const n=e.getOption(119);return n.showMethods||t.add(0),n.showFunctions||t.add(1),n.showConstructors||t.add(2),n.showFields||t.add(3),n.showVariables||t.add(4),n.showClasses||t.add(5),n.showStructs||t.add(6),n.showInterfaces||t.add(7),n.showModules||t.add(8),n.showProperties||t.add(9),n.showEvents||t.add(10),n.showOperators||t.add(11),n.showUnits||t.add(12),n.showValues||t.add(13),n.showConstants||t.add(14),n.showEnums||t.add(15),n.showEnumMembers||t.add(16),n.showKeywords||t.add(17),n.showWords||t.add(18),n.showColors||t.add(19),n.showFiles||t.add(20),n.showReferences||t.add(21),n.showColors||t.add(22),n.showFolders||t.add(23),n.showTypeParameters||t.add(24),n.showSnippets||t.add(27),n.showUsers||t.add(25),n.showIssues||t.add(26),{itemKind:t,showDeprecated:n.showDeprecated}}_onNewContext(e){if(this._context){if(e.lineNumber!==this._context.lineNumber){this.cancel();return}if(pi(e.leadingLineContent)!==pi(this._context.leadingLineContent)){this.cancel();return}if(e.columnthis._context.leadingWord.startColumn){if(cd.shouldAutoTrigger(this._editor)&&this._context){const i=this._completionModel.getItemsByProvider();this.trigger({auto:this._context.triggerOptions.auto,retrigger:!0,clipboardText:this._completionModel.clipboardText,completionOptions:{providerItemsToReuse:i}})}return}if(e.column>this._context.column&&this._completionModel.getIncompleteProvider().size>0&&e.leadingWord.word.length!==0){const t=new Map,i=new Set;for(const[n,s]of this._completionModel.getItemsByProvider())s.length>0&&s[0].container.incomplete?i.add(n):t.set(n,s);this.trigger({auto:this._context.triggerOptions.auto,triggerKind:2,retrigger:!0,clipboardText:this._completionModel.clipboardText,completionOptions:{providerFilter:i,providerItemsToReuse:t}})}else{const t=this._completionModel.lineContext;let i=!1;if(this._completionModel.lineContext={leadingLineContent:e.leadingLineContent,characterCountDelta:e.column-this._context.column},this._completionModel.items.length===0){const n=cd.shouldAutoTrigger(this._editor);if(!this._context){this.cancel();return}if(n&&this._context.leadingWord.endColumn0,i&&e.leadingWord.word.length===0){this.cancel();return}}this._onDidSuggest.fire({completionModel:this._completionModel,triggerOptions:e.triggerOptions,isFrozen:i})}}}}};dN=cN=lue([Ul(1,Zc),Ul(2,wy),Ul(3,$s),Ul(4,gs),Ul(5,De),Ul(6,lt),Ul(7,Se),Ul(8,vT)],dN);const p0=class p0{constructor(e,t){this._disposables=new X,this._lastOvertyped=[],this._locked=!1,this._disposables.add(e.onWillType(()=>{if(this._locked||!e.hasModel())return;const i=e.getSelections(),n=i.length;let s=!1;for(let a=0;ap0._maxSelectionLength)return;this._lastOvertyped[a]={value:r.getValueInRange(l),multiline:l.startLineNumber!==l.endLineNumber}}})),this._disposables.add(t.onDidTrigger(i=>{this._locked=!0})),this._disposables.add(t.onDidCancel(i=>{this._locked=!1}))}getLastOvertypedInfo(e){if(e>=0&&e=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},wL=function(o,e){return function(t,i){e(t,i,o)}};let uN=class{constructor(e,t,i,n,s){this._menuId=t,this._menuService=n,this._contextKeyService=s,this._menuDisposables=new X,this.element=Z(e,ce(".suggest-status-bar"));const r=(a=>a instanceof so?i.createInstance(JT,a,{useComma:!0}):void 0);this._leftActions=new oo(this.element,{actionViewItemProvider:r}),this._rightActions=new oo(this.element,{actionViewItemProvider:r}),this._leftActions.domNode.classList.add("left"),this._rightActions.domNode.classList.add("right")}dispose(){this._menuDisposables.dispose(),this._leftActions.dispose(),this._rightActions.dispose(),this.element.remove()}show(){const e=this._menuService.createMenu(this._menuId,this._contextKeyService),t=()=>{const i=[],n=[];for(const[s,r]of e.getActions())s==="left"?i.push(...r):n.push(...r);this._leftActions.clear(),this._leftActions.push(i),this._rightActions.clear(),this._rightActions.push(n)};this._menuDisposables.add(e.onDidChange(()=>t())),this._menuDisposables.add(e)}hide(){this._menuDisposables.clear()}};uN=hue([wL(2,ke),wL(3,yr),wL(4,De)],uN);var uue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fue=function(o,e){return function(t,i){e(t,i,o)}};function xM(o){return!!o&&!!(o.completion.documentation||o.completion.detail&&o.completion.detail!==o.completion.label)}let fN=class{constructor(e,t){this._editor=e,this._onDidClose=new A,this.onDidClose=this._onDidClose.event,this._onDidChangeContents=new A,this.onDidChangeContents=this._onDidChangeContents.event,this._disposables=new X,this._renderDisposeable=new X,this._borderWidth=1,this._size=new rt(330,0),this.domNode=ce(".suggest-details"),this.domNode.classList.add("no-docs"),this._markdownRenderer=t.createInstance(Wh,{editor:e}),this._body=ce(".body"),this._scrollbar=new J0(this._body,{alwaysConsumeMouseWheel:!0}),Z(this.domNode,this._scrollbar.getDomNode()),this._disposables.add(this._scrollbar),this._header=Z(this._body,ce(".header")),this._close=Z(this._header,ce("span"+Ee.asCSSSelector(ie.close))),this._close.title=m("details.close","Close"),this._type=Z(this._header,ce("p.type")),this._docs=Z(this._body,ce("p.docs")),this._configureFont(),this._disposables.add(this._editor.onDidChangeConfiguration(i=>{i.hasChanged(50)&&this._configureFont()}))}dispose(){this._disposables.dispose(),this._renderDisposeable.dispose()}_configureFont(){const e=this._editor.getOptions(),t=e.get(50),i=t.getMassagedFontFamily(),n=e.get(120)||t.fontSize,s=e.get(121)||t.lineHeight,r=t.fontWeight,a=`${n}px`,l=`${s}px`;this.domNode.style.fontSize=a,this.domNode.style.lineHeight=`${s/n}`,this.domNode.style.fontWeight=r,this.domNode.style.fontFeatureSettings=t.fontFeatureSettings,this._type.style.fontFamily=i,this._close.style.height=l,this._close.style.width=l}getLayoutInfo(){const e=this._editor.getOption(121)||this._editor.getOption(50).lineHeight,t=this._borderWidth,i=t*2;return{lineHeight:e,borderWidth:t,borderHeight:i,verticalPadding:22,horizontalPadding:14}}renderLoading(){this._type.textContent=m("loading","Loading..."),this._docs.textContent="",this.domNode.classList.remove("no-docs","no-type"),this.layout(this.size.width,this.getLayoutInfo().lineHeight*2),this._onDidChangeContents.fire(this)}renderItem(e,t){this._renderDisposeable.clear();let{detail:i,documentation:n}=e.completion;if(t){let s="";s+=`score: ${e.score[0]} -`,s+=`prefix: ${e.word??"(no prefix)"} -`,s+=`word: ${e.completion.filterText?e.completion.filterText+" (filterText)":e.textLabel} -`,s+=`distance: ${e.distance} (localityBonus-setting) -`,s+=`index: ${e.idx}, based on ${e.completion.sortText&&`sortText: "${e.completion.sortText}"`||"label"} -`,s+=`commit_chars: ${e.completion.commitCharacters?.join("")} -`,n=new Js().appendCodeblock("empty",s),i=`Provider: ${e.provider._debugDisplayName}`}if(!t&&!xM(e)){this.clearContents();return}if(this.domNode.classList.remove("no-docs","no-type"),i){const s=i.length>1e5?`${i.substr(0,1e5)}…`:i;this._type.textContent=s,this._type.title=s,ns(this._type),this._type.classList.toggle("auto-wrap",!/\r?\n^\s+/gmi.test(s))}else xn(this._type),this._type.title="",Cn(this._type),this.domNode.classList.add("no-type");if(xn(this._docs),typeof n=="string")this._docs.classList.remove("markdown-docs"),this._docs.textContent=n;else if(n){this._docs.classList.add("markdown-docs"),xn(this._docs);const s=this._markdownRenderer.render(n);this._docs.appendChild(s.element),this._renderDisposeable.add(s),this._renderDisposeable.add(this._markdownRenderer.onDidRenderAsync(()=>{this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}))}this.domNode.style.userSelect="text",this.domNode.tabIndex=-1,this._close.onmousedown=s=>{s.preventDefault(),s.stopPropagation()},this._close.onclick=s=>{s.preventDefault(),s.stopPropagation(),this._onDidClose.fire()},this._body.scrollTop=0,this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}clearContents(){this.domNode.classList.add("no-docs"),this._type.textContent="",this._docs.textContent=""}get isEmpty(){return this.domNode.classList.contains("no-docs")}get size(){return this._size}layout(e,t){const i=new rt(e,t);rt.equals(i,this._size)||(this._size=i,bV(this.domNode,e,t)),this._scrollbar.scanDomNode()}scrollDown(e=8){this._body.scrollTop+=e}scrollUp(e=8){this._body.scrollTop-=e}scrollTop(){this._body.scrollTop=0}scrollBottom(){this._body.scrollTop=this._body.scrollHeight}pageDown(){this.scrollDown(80)}pageUp(){this.scrollUp(80)}set borderWidth(e){this._borderWidth=e}get borderWidth(){return this._borderWidth}};fN=uue([fue(1,ke)],fN);class gue{constructor(e,t){this.widget=e,this._editor=t,this.allowEditorOverflow=!0,this._disposables=new X,this._added=!1,this._preferAlignAtTop=!0,this._resizable=new mM,this._resizable.domNode.classList.add("suggest-details-container"),this._resizable.domNode.appendChild(e.domNode),this._resizable.enableSashes(!1,!0,!0,!1);let i,n,s=0,r=0;this._disposables.add(this._resizable.onDidWillResize(()=>{i=this._topLeft,n=this._resizable.size})),this._disposables.add(this._resizable.onDidResize(a=>{if(i&&n){this.widget.layout(a.dimension.width,a.dimension.height);let l=!1;a.west&&(r=n.width-a.dimension.width,l=!0),a.north&&(s=n.height-a.dimension.height,l=!0),l&&this._applyTopLeft({top:i.top+s,left:i.left+r})}a.done&&(i=void 0,n=void 0,s=0,r=0,this._userSize=a.dimension)})),this._disposables.add(this.widget.onDidChangeContents(()=>{this._anchorBox&&this._placeAtAnchor(this._anchorBox,this._userSize??this.widget.size,this._preferAlignAtTop)}))}dispose(){this._resizable.dispose(),this._disposables.dispose(),this.hide()}getId(){return"suggest.details"}getDomNode(){return this._resizable.domNode}getPosition(){return this._topLeft?{preference:this._topLeft}:null}show(){this._added||(this._editor.addOverlayWidget(this),this._added=!0)}hide(e=!1){this._resizable.clearSashHoverState(),this._added&&(this._editor.removeOverlayWidget(this),this._added=!1,this._anchorBox=void 0,this._topLeft=void 0),e&&(this._userSize=void 0,this.widget.clearContents())}placeAtAnchor(e,t){const i=e.getBoundingClientRect();this._anchorBox=i,this._preferAlignAtTop=t,this._placeAtAnchor(this._anchorBox,this._userSize??this.widget.size,t)}_placeAtAnchor(e,t,i){const n=Ah(this.getDomNode().ownerDocument.body),s=this.widget.getLayoutInfo(),r=new rt(220,2*s.lineHeight),a=e.top,l=(function(){const y=n.width-(e.left+e.width+s.borderWidth+s.horizontalPadding),x=-s.borderWidth+e.left+e.width,L=new rt(y,n.height-e.top-s.borderHeight-s.verticalPadding),E=L.with(void 0,e.top+e.height-s.borderHeight-s.verticalPadding);return{top:a,left:x,fit:y-t.width,maxSizeTop:L,maxSizeBottom:E,minSize:r.with(Math.min(y,r.width))}})(),c=(function(){const y=e.left-s.borderWidth-s.horizontalPadding,x=Math.max(s.horizontalPadding,e.left-t.width-s.borderWidth),L=new rt(y,n.height-e.top-s.borderHeight-s.verticalPadding),E=L.with(void 0,e.top+e.height-s.borderHeight-s.verticalPadding);return{top:a,left:x,fit:y-t.width,maxSizeTop:L,maxSizeBottom:E,minSize:r.with(Math.min(y,r.width))}})(),d=(function(){const y=e.left,x=-s.borderWidth+e.top+e.height,L=new rt(e.width-s.borderHeight,n.height-e.top-e.height-s.verticalPadding);return{top:x,left:y,fit:L.height-t.height,maxSizeBottom:L,maxSizeTop:L,minSize:r.with(L.width)}})(),h=[l,c,d],u=h.find(y=>y.fit>=0)??h.sort((y,x)=>x.fit-y.fit)[0],f=e.top+e.height-s.borderHeight;let g,p=t.height;const _=Math.max(u.maxSizeTop.height,u.maxSizeBottom.height);p>_&&(p=_);let b;i?p<=u.maxSizeTop.height?(g=!0,b=u.maxSizeTop):(g=!1,b=u.maxSizeBottom):p<=u.maxSizeBottom.height?(g=!1,b=u.maxSizeBottom):(g=!0,b=u.maxSizeTop);let{top:C,left:w}=u;!g&&p>e.height&&(C=f-p);const v=this._editor.getDomNode();if(v){const y=v.getBoundingClientRect();C-=y.top,w-=y.left}this._applyTopLeft({left:w,top:C}),this._resizable.enableSashes(!g,u===l,g,u!==l),this._resizable.minSize=u.minSize,this._resizable.maxSize=b,this._resizable.layout(p,Math.min(b.width,t.width)),this.widget.layout(this._resizable.size.width,this._resizable.size.height)}_applyTopLeft(e){this._topLeft=e,this._editor.layoutOverlayWidget(this)}}var ta;(function(o){o[o.FILE=0]="FILE",o[o.FOLDER=1]="FOLDER",o[o.ROOT_FOLDER=2]="ROOT_FOLDER"})(ta||(ta={}));const mue=/(?:\/|^)(?:([^\/]+)\/)?([^\/]+)$/;function _1(o,e,t,i,n){if(Ee.isThemeIcon(n))return[`codicon-${n.id}`,"predefined-file-icon"];if(ve.isUri(n))return[];const s=i===ta.ROOT_FOLDER?["rootfolder-icon"]:i===ta.FOLDER?["folder-icon"]:["file-icon"];if(t){let r;if(t.scheme===Te.data)r=Oc.parseMetaData(t).get(Oc.META_DATA_LABEL);else{const a=t.path.match(mue);a?(r=b1(a[2].toLowerCase()),a[1]&&s.push(`${b1(a[1].toLowerCase())}-name-dir-icon`)):r=b1(t.authority.toLowerCase())}if(i===ta.ROOT_FOLDER)s.push(`${r}-root-name-folder-icon`);else if(i===ta.FOLDER)s.push(`${r}-name-folder-icon`);else{if(r){if(s.push(`${r}-name-file-icon`),s.push("name-file-icon"),r.length<=255){const l=r.split(".");for(let c=1;c=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},yL=function(o,e){return function(t,i){e(t,i,o)}};function QB(o){return`suggest-aria-id:${o}`}const bue=Wi("suggest-more-info",ie.chevronRight,m("suggestMoreInfoIcon","Icon for more information in the suggest widget."));var lr;const Cue=new(lr=class{extract(e,t){if(e.textLabel.match(lr._regexStrict))return t[0]=e.textLabel,!0;if(e.completion.detail&&e.completion.detail.match(lr._regexStrict))return t[0]=e.completion.detail,!0;if(e.completion.documentation){const i=typeof e.completion.documentation=="string"?e.completion.documentation:e.completion.documentation.value,n=lr._regexRelaxed.exec(i);if(n&&(n.index===0||n.index+n[0].length===i.length))return t[0]=n[0],!0}return!1}},lr._regexRelaxed=/(#([\da-fA-F]{3}){1,2}|(rgb|hsl)a\(\s*(\d{1,3}%?\s*,\s*){3}(1|0?\.\d+)\)|(rgb|hsl)\(\s*\d{1,3}%?(\s*,\s*\d{1,3}%?){2}\s*\))/,lr._regexStrict=new RegExp(`^${lr._regexRelaxed.source}$`,"i"),lr);let gN=class{constructor(e,t,i,n){this._editor=e,this._modelService=t,this._languageService=i,this._themeService=n,this._onDidToggleDetails=new A,this.onDidToggleDetails=this._onDidToggleDetails.event,this.templateId="suggestion"}dispose(){this._onDidToggleDetails.dispose()}renderTemplate(e){const t=new X,i=e;i.classList.add("show-file-icons");const n=Z(e,ce(".icon")),s=Z(n,ce("span.colorspan")),r=Z(e,ce(".contents")),a=Z(r,ce(".main")),l=Z(a,ce(".icon-label.codicon")),c=Z(a,ce("span.left")),d=Z(a,ce("span.right")),h=new gv(c,{supportHighlights:!0,supportIcons:!0});t.add(h);const u=Z(c,ce("span.signature-label")),f=Z(c,ce("span.qualifier-label")),g=Z(d,ce("span.details-label")),p=Z(d,ce("span.readMore"+Ee.asCSSSelector(bue)));return p.title=m("readMore","Read More"),{root:i,left:c,right:d,icon:n,colorspan:s,iconLabel:h,iconContainer:l,parametersLabel:u,qualifierLabel:f,detailsLabel:g,readMore:p,disposables:t,configureFont:()=>{const b=this._editor.getOptions(),C=b.get(50),w=C.getMassagedFontFamily(),v=C.fontFeatureSettings,y=b.get(120)||C.fontSize,x=b.get(121)||C.lineHeight,L=C.fontWeight,E=C.letterSpacing,N=`${y}px`,H=`${x}px`,F=`${E}px`;i.style.fontSize=N,i.style.fontWeight=L,i.style.letterSpacing=F,a.style.fontFamily=w,a.style.fontFeatureSettings=v,a.style.lineHeight=H,n.style.height=H,n.style.width=H,p.style.height=H,p.style.width=H}}}renderElement(e,t,i){i.configureFont();const{completion:n}=e;i.root.id=QB(t),i.colorspan.style.backgroundColor="";const s={labelEscapeNewLines:!0,matches:iy(e.score)},r=[];if(n.kind===19&&Cue.extract(e,r))i.icon.className="icon customcolor",i.iconContainer.className="icon hide",i.colorspan.style.backgroundColor=r[0];else if(n.kind===20&&this._themeService.getFileIconTheme().hasFileIcons){i.icon.className="icon hide",i.iconContainer.className="icon hide";const a=_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:e.textLabel}),ta.FILE),l=_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:n.detail}),ta.FILE);s.extraClasses=a.length>l.length?a:l}else n.kind===23&&this._themeService.getFileIconTheme().hasFolderIcons?(i.icon.className="icon hide",i.iconContainer.className="icon hide",s.extraClasses=[_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:e.textLabel}),ta.FOLDER),_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:n.detail}),ta.FOLDER)].flat()):(i.icon.className="icon hide",i.iconContainer.className="",i.iconContainer.classList.add("suggest-icon",...Ee.asClassNameArray(Up.toIcon(n.kind))));n.tags&&n.tags.indexOf(1)>=0&&(s.extraClasses=(s.extraClasses||[]).concat(["deprecated"]),s.matches=[]),i.iconLabel.setLabel(e.textLabel,void 0,s),typeof n.label=="string"?(i.parametersLabel.textContent="",i.detailsLabel.textContent=SL(n.detail||""),i.root.classList.add("string-label")):(i.parametersLabel.textContent=SL(n.label.detail||""),i.detailsLabel.textContent=SL(n.label.description||""),i.root.classList.remove("string-label")),this._editor.getOption(119).showInlineDetails?ns(i.detailsLabel):Cn(i.detailsLabel),xM(e)?(i.right.classList.add("can-expand-details"),ns(i.readMore),i.readMore.onmousedown=a=>{a.stopPropagation(),a.preventDefault()},i.readMore.onclick=a=>{a.stopPropagation(),a.preventDefault(),this._onDidToggleDetails.fire()}):(i.right.classList.remove("can-expand-details"),Cn(i.readMore),i.readMore.onmousedown=null,i.readMore.onclick=null)}disposeTemplate(e){e.disposables.dispose()}};gN=_ue([yL(1,Fi),yL(2,qt),yL(3,en)],gN);function SL(o){return o.replace(/\r\n|\r|\n/g,"")}var vue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},C1=function(o,e){return function(t,i){e(t,i,o)}},qu;D("editorSuggestWidget.background",no,m("editorSuggestWidgetBackground","Background color of the suggest widget."));D("editorSuggestWidget.border",LT,m("editorSuggestWidgetBorder","Border color of the suggest widget."));const wue=D("editorSuggestWidget.foreground",Sa,m("editorSuggestWidgetForeground","Foreground color of the suggest widget."));D("editorSuggestWidget.selectedForeground",AC,m("editorSuggestWidgetSelectedForeground","Foreground color of the selected entry in the suggest widget."));D("editorSuggestWidget.selectedIconForeground",TT,m("editorSuggestWidgetSelectedIconForeground","Icon foreground color of the selected entry in the suggest widget."));const yue=D("editorSuggestWidget.selectedBackground",PC,m("editorSuggestWidgetSelectedBackground","Background color of the selected entry in the suggest widget."));D("editorSuggestWidget.highlightForeground",Nm,m("editorSuggestWidgetHighlightForeground","Color of the match highlights in the suggest widget."));D("editorSuggestWidget.focusHighlightForeground",Wj,m("editorSuggestWidgetFocusHighlightForeground","Color of the match highlights in the suggest widget when an item is focused."));D("editorSuggestWidgetStatus.foreground",Ae(wue,.5),m("editorSuggestWidgetStatusForeground","Foreground color of the suggest widget status."));class Sue{constructor(e,t){this._service=e,this._key=`suggestWidget.size/${t.getEditorType()}/${t instanceof Gh}`}restore(){const e=this._service.get(this._key,0)??"";try{const t=JSON.parse(e);if(rt.is(t))return rt.lift(t)}catch{}}store(e){this._service.store(this._key,JSON.stringify(e),0,1)}reset(){this._service.remove(this._key,0)}}var Nc;let mN=(Nc=class{constructor(e,t,i,n,s){this.editor=e,this._storageService=t,this._state=0,this._isAuto=!1,this._pendingLayout=new Dn,this._pendingShowDetails=new Dn,this._ignoreFocusEvents=!1,this._forceRenderingAbove=!1,this._explainMode=!1,this._showTimeout=new wr,this._disposables=new X,this._onDidSelect=new Nh,this._onDidFocus=new Nh,this._onDidHide=new A,this._onDidShow=new A,this.onDidSelect=this._onDidSelect.event,this.onDidFocus=this._onDidFocus.event,this.onDidHide=this._onDidHide.event,this.onDidShow=this._onDidShow.event,this._onDetailsKeydown=new A,this.onDetailsKeyDown=this._onDetailsKeydown.event,this.element=new mM,this.element.domNode.classList.add("editor-widget","suggest-widget"),this._contentWidget=new Lue(this,e),this._persistedSize=new Sue(t,e);class r{constructor(f,g,p=!1,_=!1){this.persistedSize=f,this.currentSize=g,this.persistHeight=p,this.persistWidth=_}}let a;this._disposables.add(this.element.onDidWillResize(()=>{this._contentWidget.lockPreference(),a=new r(this._persistedSize.restore(),this.element.size)})),this._disposables.add(this.element.onDidResize(u=>{if(this._resize(u.dimension.width,u.dimension.height),a&&(a.persistHeight=a.persistHeight||!!u.north||!!u.south,a.persistWidth=a.persistWidth||!!u.east||!!u.west),!!u.done){if(a){const{itemHeight:f,defaultSize:g}=this.getLayoutInfo(),p=Math.round(f/2);let{width:_,height:b}=this.element.size;(!a.persistHeight||Math.abs(a.currentSize.height-b)<=p)&&(b=a.persistedSize?.height??g.height),(!a.persistWidth||Math.abs(a.currentSize.width-_)<=p)&&(_=a.persistedSize?.width??g.width),this._persistedSize.store(new rt(_,b))}this._contentWidget.unlockPreference(),a=void 0}})),this._messageElement=Z(this.element.domNode,ce(".message")),this._listElement=Z(this.element.domNode,ce(".tree"));const l=this._disposables.add(s.createInstance(fN,this.editor));l.onDidClose(this.toggleDetails,this,this._disposables),this._details=new gue(l,this.editor);const c=()=>this.element.domNode.classList.toggle("no-icons",!this.editor.getOption(119).showIcons);c();const d=s.createInstance(gN,this.editor);this._disposables.add(d),this._disposables.add(d.onDidToggleDetails(()=>this.toggleDetails())),this._list=new go("SuggestWidget",this._listElement,{getHeight:u=>this.getLayoutInfo().itemHeight,getTemplateId:u=>"suggestion"},[d],{alwaysConsumeMouseWheel:!0,useShadows:!1,mouseSupport:!1,multipleSelectionSupport:!1,accessibilityProvider:{getRole:()=>"option",getWidgetAriaLabel:()=>m("suggest","Suggest"),getWidgetRole:()=>"listbox",getAriaLabel:u=>{let f=u.textLabel;if(typeof u.completion.label!="string"){const{detail:b,description:C}=u.completion.label;b&&C?f=m("label.full","{0} {1}, {2}",f,b,C):b?f=m("label.detail","{0} {1}",f,b):C&&(f=m("label.desc","{0}, {1}",f,C))}if(!u.isResolved||!this._isDetailsVisible())return f;const{documentation:g,detail:p}=u.completion,_=$p("{0}{1}",p||"",g?typeof g=="string"?g:g.value:"");return m("ariaCurrenttSuggestionReadDetails","{0}, docs: {1}",f,_)}}}),this._list.style($g({listInactiveFocusBackground:yue,listInactiveFocusOutline:Ut})),this._status=s.createInstance(uN,this.element.domNode,bc);const h=()=>this.element.domNode.classList.toggle("with-status-bar",this.editor.getOption(119).showStatusBar);h(),this._disposables.add(n.onDidColorThemeChange(u=>this._onThemeChange(u))),this._onThemeChange(n.getColorTheme()),this._disposables.add(this._list.onMouseDown(u=>this._onListMouseDownOrTap(u))),this._disposables.add(this._list.onTap(u=>this._onListMouseDownOrTap(u))),this._disposables.add(this._list.onDidChangeSelection(u=>this._onListSelection(u))),this._disposables.add(this._list.onDidChangeFocus(u=>this._onListFocus(u))),this._disposables.add(this.editor.onDidChangeCursorSelection(()=>this._onCursorSelectionChanged())),this._disposables.add(this.editor.onDidChangeConfiguration(u=>{u.hasChanged(119)&&(h(),c()),this._completionModel&&(u.hasChanged(50)||u.hasChanged(120)||u.hasChanged(121))&&this._list.splice(0,this._list.length,this._completionModel.items)})),this._ctxSuggestWidgetVisible=Ne.Visible.bindTo(i),this._ctxSuggestWidgetDetailsVisible=Ne.DetailsVisible.bindTo(i),this._ctxSuggestWidgetMultipleSuggestions=Ne.MultipleSuggestions.bindTo(i),this._ctxSuggestWidgetHasFocusedSuggestion=Ne.HasFocusedSuggestion.bindTo(i),this._disposables.add(jt(this._details.widget.domNode,"keydown",u=>{this._onDetailsKeydown.fire(u)})),this._disposables.add(this.editor.onMouseDown(u=>this._onEditorMouseDown(u)))}dispose(){this._details.widget.dispose(),this._details.dispose(),this._list.dispose(),this._status.dispose(),this._disposables.dispose(),this._loadingTimeout?.dispose(),this._pendingLayout.dispose(),this._pendingShowDetails.dispose(),this._showTimeout.dispose(),this._contentWidget.dispose(),this.element.dispose()}_onEditorMouseDown(e){this._details.widget.domNode.contains(e.target.element)?this._details.widget.domNode.focus():this.element.domNode.contains(e.target.element)&&this.editor.focus()}_onCursorSelectionChanged(){this._state!==0&&this._contentWidget.layout()}_onListMouseDownOrTap(e){typeof e.element>"u"||typeof e.index>"u"||(e.browserEvent.preventDefault(),e.browserEvent.stopPropagation(),this._select(e.element,e.index))}_onListSelection(e){e.elements.length&&this._select(e.elements[0],e.indexes[0])}_select(e,t){const i=this._completionModel;i&&(this._onDidSelect.fire({item:e,index:t,model:i}),this.editor.focus())}_onThemeChange(e){this._details.widget.borderWidth=mc(e.type)?2:1}_onListFocus(e){if(this._ignoreFocusEvents)return;if(!e.elements.length){this._currentSuggestionDetails&&(this._currentSuggestionDetails.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=void 0),this.editor.setAriaOptions({activeDescendant:void 0}),this._ctxSuggestWidgetHasFocusedSuggestion.set(!1);return}if(!this._completionModel)return;this._ctxSuggestWidgetHasFocusedSuggestion.set(!0);const t=e.elements[0],i=e.indexes[0];t!==this._focusedItem&&(this._currentSuggestionDetails?.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=t,this._list.reveal(i),this._currentSuggestionDetails=wa(async n=>{const s=rg(()=>{this._isDetailsVisible()&&this.showDetails(!0)},250),r=n.onCancellationRequested(()=>s.dispose());try{return await t.resolve(n)}finally{s.dispose(),r.dispose()}}),this._currentSuggestionDetails.then(()=>{i>=this._list.length||t!==this._list.element(i)||(this._ignoreFocusEvents=!0,this._list.splice(i,1,[t]),this._list.setFocus([i]),this._ignoreFocusEvents=!1,this._isDetailsVisible()?this.showDetails(!1):this.element.domNode.classList.remove("docs-side"),this.editor.setAriaOptions({activeDescendant:QB(i)}))}).catch(Ze)),this._onDidFocus.fire({item:t,index:i,model:this._completionModel})}_setState(e){if(this._state!==e)switch(this._state=e,this.element.domNode.classList.toggle("frozen",e===4),this.element.domNode.classList.remove("message"),e){case 0:Cn(this._messageElement,this._listElement,this._status.element),this._details.hide(!0),this._status.hide(),this._contentWidget.hide(),this._ctxSuggestWidgetVisible.reset(),this._ctxSuggestWidgetMultipleSuggestions.reset(),this._ctxSuggestWidgetHasFocusedSuggestion.reset(),this._showTimeout.cancel(),this.element.domNode.classList.remove("visible"),this._list.splice(0,this._list.length),this._focusedItem=void 0,this._cappedHeight=void 0,this._explainMode=!1;break;case 1:this.element.domNode.classList.add("message"),this._messageElement.textContent=qu.LOADING_MESSAGE,Cn(this._listElement,this._status.element),ns(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0,Hh(qu.LOADING_MESSAGE);break;case 2:this.element.domNode.classList.add("message"),this._messageElement.textContent=qu.NO_SUGGESTIONS_MESSAGE,Cn(this._listElement,this._status.element),ns(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0,Hh(qu.NO_SUGGESTIONS_MESSAGE);break;case 3:Cn(this._messageElement),ns(this._listElement,this._status.element),this._show();break;case 4:Cn(this._messageElement),ns(this._listElement,this._status.element),this._show();break;case 5:Cn(this._messageElement),ns(this._listElement,this._status.element),this._details.show(),this._show();break}}_show(){this._status.show(),this._contentWidget.show(),this._layout(this._persistedSize.restore()),this._ctxSuggestWidgetVisible.set(!0),this._showTimeout.cancelAndSet(()=>{this.element.domNode.classList.add("visible"),this._onDidShow.fire(this)},100)}showTriggered(e,t){this._state===0&&(this._contentWidget.setPosition(this.editor.getPosition()),this._isAuto=!!e,this._isAuto||(this._loadingTimeout=rg(()=>this._setState(1),t)))}showSuggestions(e,t,i,n,s){if(this._contentWidget.setPosition(this.editor.getPosition()),this._loadingTimeout?.dispose(),this._currentSuggestionDetails?.cancel(),this._currentSuggestionDetails=void 0,this._completionModel!==e&&(this._completionModel=e),i&&this._state!==2&&this._state!==0){this._setState(4);return}const r=this._completionModel.items.length,a=r===0;if(this._ctxSuggestWidgetMultipleSuggestions.set(r>1),a){this._setState(n?0:2),this._completionModel=void 0;return}this._focusedItem=void 0,this._onDidFocus.pause(),this._onDidSelect.pause();try{this._list.splice(0,this._list.length,this._completionModel.items),this._setState(i?4:3),this._list.reveal(t,0),this._list.setFocus(s?[]:[t])}finally{this._onDidFocus.resume(),this._onDidSelect.resume()}this._pendingLayout.value=pC(fe(this.element.domNode),()=>{this._pendingLayout.clear(),this._layout(this.element.size),this._details.widget.domNode.classList.remove("focused")})}focusSelected(){this._list.length>0&&this._list.setFocus([0])}selectNextPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageDown(),!0;case 1:return!this._isAuto;default:return this._list.focusNextPage(),!0}}selectNext(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusNext(1,!0),!0}}selectLast(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollBottom(),!0;case 1:return!this._isAuto;default:return this._list.focusLast(),!0}}selectPreviousPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageUp(),!0;case 1:return!this._isAuto;default:return this._list.focusPreviousPage(),!0}}selectPrevious(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusPrevious(1,!0),!1}}selectFirst(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollTop(),!0;case 1:return!this._isAuto;default:return this._list.focusFirst(),!0}}getFocusedItem(){if(this._state!==0&&this._state!==2&&this._state!==1&&this._completionModel&&this._list.getFocus().length>0)return{item:this._list.getFocusedElements()[0],index:this._list.getFocus()[0],model:this._completionModel}}toggleDetailsFocus(){this._state===5?(this._setState(3),this._details.widget.domNode.classList.remove("focused")):this._state===3&&this._isDetailsVisible()&&(this._setState(5),this._details.widget.domNode.classList.add("focused"))}toggleDetails(){this._isDetailsVisible()?(this._pendingShowDetails.clear(),this._ctxSuggestWidgetDetailsVisible.set(!1),this._setDetailsVisible(!1),this._details.hide(),this.element.domNode.classList.remove("shows-details")):(xM(this._list.getFocusedElements()[0])||this._explainMode)&&(this._state===3||this._state===5||this._state===4)&&(this._ctxSuggestWidgetDetailsVisible.set(!0),this._setDetailsVisible(!0),this.showDetails(!1))}showDetails(e){this._pendingShowDetails.value=pC(fe(this.element.domNode),()=>{this._pendingShowDetails.clear(),this._details.show(),e?this._details.widget.renderLoading():this._details.widget.renderItem(this._list.getFocusedElements()[0],this._explainMode),this._details.widget.isEmpty?this._details.hide():(this._positionDetails(),this.element.domNode.classList.add("shows-details")),this.editor.focus()})}toggleExplainMode(){this._list.getFocusedElements()[0]&&(this._explainMode=!this._explainMode,this._isDetailsVisible()?this.showDetails(!1):this.toggleDetails())}resetPersistedSize(){this._persistedSize.reset()}hideWidget(){this._pendingLayout.clear(),this._pendingShowDetails.clear(),this._loadingTimeout?.dispose(),this._setState(0),this._onDidHide.fire(this),this.element.clearSashHoverState();const e=this._persistedSize.restore(),t=Math.ceil(this.getLayoutInfo().itemHeight*4.3);e&&e.heightr&&(s=r);const a=this._completionModel?this._completionModel.stats.pLabelLen*i.typicalHalfwidthCharacterWidth:s,l=i.statusBarHeight+this._list.contentHeight+i.borderHeight,c=i.itemHeight+i.statusBarHeight,d=gi(this.editor.getDomNode()),h=this.editor.getScrolledVisiblePosition(this.editor.getPosition()),u=d.top+h.top+h.height,f=Math.min(t.height-u-i.verticalPadding,l),g=d.top+h.top-i.verticalPadding,p=Math.min(g,l);let _=Math.min(Math.max(p,f)+i.borderHeight,l);n===this._cappedHeight?.capped&&(n=this._cappedHeight.wanted),n_&&(n=_),n>f||this._forceRenderingAbove&&g>150?(this._contentWidget.setPreference(1),this.element.enableSashes(!0,!0,!1,!1),_=p):(this._contentWidget.setPreference(2),this.element.enableSashes(!1,!0,!0,!1),_=f),this.element.preferredSize=new rt(a,i.defaultSize.height),this.element.maxSize=new rt(r,_),this.element.minSize=new rt(220,c),this._cappedHeight=n===l?{wanted:this._cappedHeight?.wanted??e.height,capped:n}:void 0}this._resize(s,n)}_resize(e,t){const{width:i,height:n}=this.element.maxSize;e=Math.min(i,e),t=Math.min(n,t);const{statusBarHeight:s}=this.getLayoutInfo();this._list.layout(t-s,e),this._listElement.style.height=`${t-s}px`,this.element.layout(t,e),this._contentWidget.layout(),this._positionDetails()}_positionDetails(){this._isDetailsVisible()&&this._details.placeAtAnchor(this.element.domNode,this._contentWidget.getPosition()?.preference[0]===2)}getLayoutInfo(){const e=this.editor.getOption(50),t=bn(this.editor.getOption(121)||e.lineHeight,8,1e3),i=!this.editor.getOption(119).showStatusBar||this._state===2||this._state===1?0:t,n=this._details.widget.borderWidth,s=2*n;return{itemHeight:t,statusBarHeight:i,borderWidth:n,borderHeight:s,typicalHalfwidthCharacterWidth:e.typicalHalfwidthCharacterWidth,verticalPadding:22,horizontalPadding:14,defaultSize:new rt(430,i+12*t+s)}}_isDetailsVisible(){return this._storageService.getBoolean("expandSuggestionDocs",0,!1)}_setDetailsVisible(e){this._storageService.store("expandSuggestionDocs",e,0,0)}forceRenderingAbove(){this._forceRenderingAbove||(this._forceRenderingAbove=!0,this._layout(this._persistedSize.restore()))}stopForceRenderingAbove(){this._forceRenderingAbove=!1}},qu=Nc,Nc.LOADING_MESSAGE=m("suggestWidget.loading","Loading..."),Nc.NO_SUGGESTIONS_MESSAGE=m("suggestWidget.noSuggestions","No suggestions."),Nc);mN=qu=vue([C1(1,du),C1(2,De),C1(3,en),C1(4,ke)],mN);class Lue{constructor(e,t){this._widget=e,this._editor=t,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._preferenceLocked=!1,this._added=!1,this._hidden=!1}dispose(){this._added&&(this._added=!1,this._editor.removeContentWidget(this))}getId(){return"editor.widget.suggestWidget"}getDomNode(){return this._widget.element.domNode}show(){this._hidden=!1,this._added||(this._added=!0,this._editor.addContentWidget(this))}hide(){this._hidden||(this._hidden=!0,this.layout())}layout(){this._editor.layoutContentWidget(this)}getPosition(){return this._hidden||!this._position||!this._preference?null:{position:this._position,preference:[this._preference]}}beforeRender(){const{height:e,width:t}=this._widget.element.size,{borderWidth:i,horizontalPadding:n}=this._widget.getLayoutInfo();return new rt(t+2*i+n,e+2*i)}afterRender(e){this._widget._afterRender(e)}setPreference(e){this._preferenceLocked||(this._preference=e)}lockPreference(){this._preferenceLocked=!0}unlockPreference(){this._preferenceLocked=!1}setPosition(e){this._position=e}}var xue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Hu=function(o,e){return function(t,i){e(t,i,o)}},pN;class kue{constructor(e,t){if(this._model=e,this._position=t,this._decorationOptions=kt.register({description:"suggest-line-suffix",stickiness:1}),e.getLineMaxColumn(t.lineNumber)!==t.column){const n=e.getOffsetAt(t),s=e.getPositionAt(n+1);e.changeDecorations(r=>{this._marker&&r.removeDecoration(this._marker),this._marker=r.addDecoration(I.fromPositions(t,s),this._decorationOptions)})}}dispose(){this._marker&&!this._model.isDisposed()&&this._model.changeDecorations(e=>{e.removeDecoration(this._marker),this._marker=void 0})}delta(e){if(this._model.isDisposed()||this._position.lineNumber!==e.lineNumber)return 0;if(this._marker){const t=this._model.getDecorationRange(this._marker);return this._model.getOffsetAt(t.getStartPosition())-this._model.getOffsetAt(e)}else return this._model.getLineMaxColumn(e.lineNumber)-e.column}}var Dh;let mr=(Dh=class{static get(e){return e.getContribution(pN.ID)}constructor(e,t,i,n,s,r,a){this._memoryService=t,this._commandService=i,this._contextKeyService=n,this._instantiationService=s,this._logService=r,this._telemetryService=a,this._lineSuffix=new Dn,this._toDispose=new X,this._selectors=new Due(h=>h.priority),this._onWillInsertSuggestItem=new A,this.onWillInsertSuggestItem=this._onWillInsertSuggestItem.event,this.editor=e,this.model=s.createInstance(dN,this.editor),this._selectors.register({priority:0,select:(h,u,f)=>this._memoryService.select(h,u,f)});const l=Ne.InsertMode.bindTo(n);l.set(e.getOption(119).insertMode),this._toDispose.add(this.model.onDidTrigger(()=>l.set(e.getOption(119).insertMode))),this.widget=this._toDispose.add(new nS(fe(e.getDomNode()),()=>{const h=this._instantiationService.createInstance(mN,this.editor);this._toDispose.add(h),this._toDispose.add(h.onDidSelect(_=>this._insertSuggestion(_,0),this));const u=new aue(this.editor,h,this.model,_=>this._insertSuggestion(_,2));this._toDispose.add(u);const f=Ne.MakesTextEdit.bindTo(this._contextKeyService),g=Ne.HasInsertAndReplaceRange.bindTo(this._contextKeyService),p=Ne.CanResolve.bindTo(this._contextKeyService);return this._toDispose.add(_e(()=>{f.reset(),g.reset(),p.reset()})),this._toDispose.add(h.onDidFocus(({item:_})=>{const b=this.editor.getPosition(),C=_.editStart.column,w=b.column;let v=!0;this.editor.getOption(1)==="smart"&&this.model.state===2&&!_.completion.additionalTextEdits&&!(_.completion.insertTextRules&4)&&w-C===_.completion.insertText.length&&(v=this.editor.getModel().getValueInRange({startLineNumber:b.lineNumber,startColumn:C,endLineNumber:b.lineNumber,endColumn:w})!==_.completion.insertText),f.set(v),g.set(!P.equals(_.editInsertEnd,_.editReplaceEnd)),p.set(!!_.provider.resolveCompletionItem||!!_.completion.documentation||_.completion.detail!==_.completion.label)})),this._toDispose.add(h.onDetailsKeyDown(_=>{if(_.toKeyCodeChord().equals(new kl(!0,!1,!1,!1,33))||Ue&&_.toKeyCodeChord().equals(new kl(!1,!1,!1,!0,33))){_.stopPropagation();return}_.toKeyCodeChord().isModifierKey()||this.editor.focus()})),h})),this._overtypingCapturer=this._toDispose.add(new nS(fe(e.getDomNode()),()=>this._toDispose.add(new hN(this.editor,this.model)))),this._alternatives=this._toDispose.add(new nS(fe(e.getDomNode()),()=>this._toDispose.add(new Rg(this.editor,this._contextKeyService)))),this._toDispose.add(s.createInstance(pw,e)),this._toDispose.add(this.model.onDidTrigger(h=>{this.widget.value.showTriggered(h.auto,h.shy?250:50),this._lineSuffix.value=new kue(this.editor.getModel(),h.position)})),this._toDispose.add(this.model.onDidSuggest(h=>{if(h.triggerOptions.shy)return;let u=-1;for(const g of this._selectors.itemsOrderedByPriorityDesc)if(u=g.select(this.editor.getModel(),this.editor.getPosition(),h.completionModel.items),u!==-1)break;if(u===-1&&(u=0),this.model.state===0)return;let f=!1;if(h.triggerOptions.auto){const g=this.editor.getOption(119);g.selectionMode==="never"||g.selectionMode==="always"?f=g.selectionMode==="never":g.selectionMode==="whenTriggerCharacter"?f=h.triggerOptions.triggerKind!==1:g.selectionMode==="whenQuickSuggestion"&&(f=h.triggerOptions.triggerKind===1&&!h.triggerOptions.refilter)}this.widget.value.showSuggestions(h.completionModel,u,h.isFrozen,h.triggerOptions.auto,f)})),this._toDispose.add(this.model.onDidCancel(h=>{h.retrigger||this.widget.value.hideWidget()})),this._toDispose.add(this.editor.onDidBlurEditorWidget(()=>{this.model.cancel(),this.model.clear()}));const c=Ne.AcceptSuggestionsOnEnter.bindTo(n),d=()=>{const h=this.editor.getOption(1);c.set(h==="on"||h==="smart")};this._toDispose.add(this.editor.onDidChangeConfiguration(()=>d())),d()}dispose(){this._alternatives.dispose(),this._toDispose.dispose(),this.widget.dispose(),this.model.dispose(),this._lineSuffix.dispose(),this._onWillInsertSuggestItem.dispose()}_insertSuggestion(e,t){if(!e||!e.item){this._alternatives.value.reset(),this.model.cancel(),this.model.clear();return}if(!this.editor.hasModel())return;const i=Mn.get(this.editor);if(!i)return;this._onWillInsertSuggestItem.fire({item:e.item});const n=this.editor.getModel(),s=n.getAlternativeVersionId(),{item:r}=e,a=[],l=new In;t&1||this.editor.pushUndoStop();const c=this.getOverwriteInfo(r,!!(t&8));this._memoryService.memorize(n,this.editor.getPosition(),r);const d=r.isResolved;let h=-1,u=-1;if(Array.isArray(r.completion.additionalTextEdits)){this.model.cancel();const g=qh.capture(this.editor);this.editor.executeEdits("suggestController.additionalTextEdits.sync",r.completion.additionalTextEdits.map(p=>{let _=I.lift(p.range);if(_.startLineNumber===r.position.lineNumber&&_.startColumn>r.position.column){const b=this.editor.getPosition().column-r.position.column,C=b,w=I.spansMultipleLines(_)?0:b;_=new I(_.startLineNumber,_.startColumn+C,_.endLineNumber,_.endColumn+w)}return aa.replaceMove(_,p.text)})),g.restoreRelativeVerticalPositionOfCursor(this.editor)}else if(!d){const g=new Hs;let p;const _=n.onDidChangeContent(v=>{if(v.isFlush){l.cancel(),_.dispose();return}for(const y of v.changes){const x=I.getEndPosition(y.range);(!p||P.isBefore(x,p))&&(p=x)}}),b=t;t|=2;let C=!1;const w=this.editor.onWillType(()=>{w.dispose(),C=!0,b&2||this.editor.pushUndoStop()});a.push(r.resolve(l.token).then(()=>{if(!r.completion.additionalTextEdits||l.token.isCancellationRequested)return;if(p&&r.completion.additionalTextEdits.some(y=>P.isBefore(p,I.getStartPosition(y.range))))return!1;C&&this.editor.pushUndoStop();const v=qh.capture(this.editor);return this.editor.executeEdits("suggestController.additionalTextEdits.async",r.completion.additionalTextEdits.map(y=>aa.replaceMove(I.lift(y.range),y.text))),v.restoreRelativeVerticalPositionOfCursor(this.editor),(C||!(b&2))&&this.editor.pushUndoStop(),!0}).then(v=>{this._logService.trace("[suggest] async resolving of edits DONE (ms, applied?)",g.elapsed(),v),u=v===!0?1:v===!1?0:-2}).finally(()=>{_.dispose(),w.dispose()}))}let{insertText:f}=r.completion;if(r.completion.insertTextRules&4||(f=Mg.escape(f)),this.model.cancel(),i.insert(f,{overwriteBefore:c.overwriteBefore,overwriteAfter:c.overwriteAfter,undoStopBefore:!1,undoStopAfter:!1,adjustWhitespace:!(r.completion.insertTextRules&1),clipboardText:e.model.clipboardText,overtypingCapturer:this._overtypingCapturer.value}),t&2||this.editor.pushUndoStop(),r.completion.command)if(r.completion.command.id===_w.id)this.model.trigger({auto:!0,retrigger:!0});else{const g=new Hs;a.push(this._commandService.executeCommand(r.completion.command.id,...r.completion.command.arguments?[...r.completion.command.arguments]:[]).catch(p=>{r.completion.extensionId?$n(p):Ze(p)}).finally(()=>{h=g.elapsed()}))}t&4&&this._alternatives.value.set(e,g=>{for(l.cancel();n.canUndo();){s!==n.getAlternativeVersionId()&&n.undo(),this._insertSuggestion(g,3|(t&8?8:0));break}}),this._alertCompletionItem(r),Promise.all(a).finally(()=>{this._reportSuggestionAcceptedTelemetry(r,n,d,h,u,e.index,e.model.items),this.model.clear(),l.dispose()})}_reportSuggestionAcceptedTelemetry(e,t,i,n,s,r,a){if(Math.floor(Math.random()*100)===0)return;const l=new Map;for(let u=0;u1?c[0]:-1;this._telemetryService.publicLog2("suggest.acceptedSuggestion",{extensionId:e.extensionId?.value??"unknown",providerId:e.provider._debugDisplayName??"unknown",kind:e.completion.kind,basenameHash:ZN(Fo(t.uri)).toString(16),languageId:t.getLanguageId(),fileExtension:Yq(t.uri),resolveInfo:e.provider.resolveCompletionItem?i?1:0:-1,resolveDuration:e.resolveDuration,commandDuration:n,additionalEditsAsync:s,index:r,firstIndex:h})}getOverwriteInfo(e,t){ai(this.editor.hasModel());let i=this.editor.getOption(119).insertMode==="replace";t&&(i=!i);const n=e.position.column-e.editStart.column,s=(i?e.editReplaceEnd.column:e.editInsertEnd.column)-e.position.column,r=this.editor.getPosition().column-e.position.column,a=this._lineSuffix.value?this._lineSuffix.value.delta(this.editor.getPosition()):0;return{overwriteBefore:n+r,overwriteAfter:s+a}}_alertCompletionItem(e){if(Ps(e.completion.additionalTextEdits)){const t=m("aria.alert.snippet","Accepting '{0}' made {1} additional edits",e.textLabel,e.completion.additionalTextEdits.length);El(t)}}triggerSuggest(e,t,i){this.editor.hasModel()&&(this.model.trigger({auto:t??!1,completionOptions:{providerFilter:e,kindFilter:i?new Set:void 0}}),this.editor.revealPosition(this.editor.getPosition(),0),this.editor.focus())}triggerSuggestAndAcceptBest(e){if(!this.editor.hasModel())return;const t=this.editor.getPosition(),i=()=>{t.equals(this.editor.getPosition())&&this._commandService.executeCommand(e.fallback)},n=s=>{if(s.completion.insertTextRules&4||s.completion.additionalTextEdits)return!0;const r=this.editor.getPosition(),a=s.editStart.column,l=r.column;return l-a!==s.completion.insertText.length?!0:this.editor.getModel().getValueInRange({startLineNumber:r.lineNumber,startColumn:a,endLineNumber:r.lineNumber,endColumn:l})!==s.completion.insertText};J.once(this.model.onDidTrigger)(s=>{const r=[];J.any(this.model.onDidTrigger,this.model.onDidCancel)(()=>{xt(r),i()},void 0,r),this.model.onDidSuggest(({completionModel:a})=>{if(xt(r),a.items.length===0){i();return}const l=this._memoryService.select(this.editor.getModel(),this.editor.getPosition(),a.items),c=a.items[l];if(!n(c)){i();return}this.editor.pushUndoStop(),this._insertSuggestion({index:l,item:c,model:a},7)},void 0,r)}),this.model.trigger({auto:!1,shy:!0}),this.editor.revealPosition(t,0),this.editor.focus()}acceptSelectedSuggestion(e,t){const i=this.widget.value.getFocusedItem();let n=0;e&&(n|=4),t&&(n|=8),this._insertSuggestion(i,n)}acceptNextSuggestion(){this._alternatives.value.next()}acceptPrevSuggestion(){this._alternatives.value.prev()}cancelSuggestWidget(){this.model.cancel(),this.model.clear(),this.widget.value.hideWidget()}focusSuggestion(){this.widget.value.focusSelected()}selectNextSuggestion(){this.widget.value.selectNext()}selectNextPageSuggestion(){this.widget.value.selectNextPage()}selectLastSuggestion(){this.widget.value.selectLast()}selectPrevSuggestion(){this.widget.value.selectPrevious()}selectPrevPageSuggestion(){this.widget.value.selectPreviousPage()}selectFirstSuggestion(){this.widget.value.selectFirst()}toggleSuggestionDetails(){this.widget.value.toggleDetails()}toggleExplainMode(){this.widget.value.toggleExplainMode()}toggleSuggestionFocus(){this.widget.value.toggleDetailsFocus()}resetWidgetSize(){this.widget.value.resetPersistedSize()}forceRenderingAbove(){this.widget.value.forceRenderingAbove()}stopForceRenderingAbove(){this.widget.isInitialized&&this.widget.value.stopForceRenderingAbove()}registerSelector(e){return this._selectors.register(e)}},pN=Dh,Dh.ID="editor.contrib.suggestController",Dh);mr=pN=xue([Hu(1,YB),Hu(2,hi),Hu(3,De),Hu(4,ke),Hu(5,gs),Hu(6,$s)],mr);class Due{constructor(e){this.prioritySelector=e,this._items=new Array}register(e){if(this._items.indexOf(e)!==-1)throw new Error("Value is already registered");return this._items.push(e),this._items.sort((t,i)=>this.prioritySelector(i)-this.prioritySelector(t)),{dispose:()=>{const t=this._items.indexOf(e);t>=0&&this._items.splice(t,1)}}}get itemsOrderedByPriorityDesc(){return this._items}}const _0=class _0 extends bi{constructor(){super({id:_0.id,label:m("suggest.trigger.label","Trigger Suggest"),alias:"Trigger Suggest",precondition:re.and(K.writable,K.hasCompletionItemProvider,Ne.Visible.toNegated()),kbOpts:{kbExpr:K.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[521,2087]},weight:100}})}run(e,t,i){const n=mr.get(t);if(!n)return;let s;i&&typeof i=="object"&&i.auto===!0&&(s=!0),n.triggerSuggest(void 0,s,void 0)}};_0.id="editor.action.triggerSuggest";let _w=_0;Ho(mr.ID,mr,2);mi(_w);const Us=190,Pn=co.bindToContribution(mr.get);ge(new Pn({id:"acceptSelectedSuggestion",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion),handler(o){o.acceptSelectedSuggestion(!0,!1)},kbOpts:[{primary:2,kbExpr:re.and(Ne.Visible,K.textInputFocus),weight:Us},{primary:3,kbExpr:re.and(Ne.Visible,K.textInputFocus,Ne.AcceptSuggestionsOnEnter,Ne.MakesTextEdit),weight:Us}],menuOpts:[{menuId:bc,title:m("accept.insert","Insert"),group:"left",order:1,when:Ne.HasInsertAndReplaceRange.toNegated()},{menuId:bc,title:m("accept.insert","Insert"),group:"left",order:1,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("insert"))},{menuId:bc,title:m("accept.replace","Replace"),group:"left",order:1,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("replace"))}]}));ge(new Pn({id:"acceptAlternativeSelectedSuggestion",precondition:re.and(Ne.Visible,K.textInputFocus,Ne.HasFocusedSuggestion),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:1027,secondary:[1026]},handler(o){o.acceptSelectedSuggestion(!1,!0)},menuOpts:[{menuId:bc,group:"left",order:2,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("insert")),title:m("accept.replace","Replace")},{menuId:bc,group:"left",order:2,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("replace")),title:m("accept.insert","Insert")}]}));bt.registerCommandAlias("acceptSelectedSuggestionOnEnter","acceptSelectedSuggestion");ge(new Pn({id:"hideSuggestWidget",precondition:Ne.Visible,handler:o=>o.cancelSuggestWidget(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:9,secondary:[1033]}}));ge(new Pn({id:"selectNextSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectNextSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}}));ge(new Pn({id:"selectNextPageSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectNextPageSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:12,secondary:[2060]}}));ge(new Pn({id:"selectLastSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectLastSuggestion()}));ge(new Pn({id:"selectPrevSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectPrevSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}}));ge(new Pn({id:"selectPrevPageSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectPrevPageSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:11,secondary:[2059]}}));ge(new Pn({id:"selectFirstSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectFirstSuggestion()}));ge(new Pn({id:"focusSuggestion",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion.negate()),handler:o=>o.focusSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[2087]}}}));ge(new Pn({id:"focusAndAcceptSuggestion",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion.negate()),handler:o=>{o.focusSuggestion(),o.acceptSelectedSuggestion(!0,!1)}}));ge(new Pn({id:"toggleSuggestionDetails",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion),handler:o=>o.toggleSuggestionDetails(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[2087]}},menuOpts:[{menuId:bc,group:"right",order:1,when:re.and(Ne.DetailsVisible,Ne.CanResolve),title:m("detail.more","Show Less")},{menuId:bc,group:"right",order:1,when:re.and(Ne.DetailsVisible.toNegated(),Ne.CanResolve),title:m("detail.less","Show More")}]}));ge(new Pn({id:"toggleExplainMode",precondition:Ne.Visible,handler:o=>o.toggleExplainMode(),kbOpts:{weight:100,primary:2138}}));ge(new Pn({id:"toggleSuggestionFocus",precondition:Ne.Visible,handler:o=>o.toggleSuggestionFocus(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2570,mac:{primary:778}}}));ge(new Pn({id:"insertBestCompletion",precondition:re.and(K.textInputFocus,re.equals("config.editor.tabCompletion","on"),pw.AtEnd,Ne.Visible.toNegated(),Rg.OtherSuggestions.toNegated(),Mn.InSnippetMode.toNegated()),handler:(o,e)=>{o.triggerSuggestAndAcceptBest(Oi(e)?{fallback:"tab",...e}:{fallback:"tab"})},kbOpts:{weight:Us,primary:2}}));ge(new Pn({id:"insertNextSuggestion",precondition:re.and(K.textInputFocus,re.equals("config.editor.tabCompletion","on"),Rg.OtherSuggestions,Ne.Visible.toNegated(),Mn.InSnippetMode.toNegated()),handler:o=>o.acceptNextSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2}}));ge(new Pn({id:"insertPrevSuggestion",precondition:re.and(K.textInputFocus,re.equals("config.editor.tabCompletion","on"),Rg.OtherSuggestions,Ne.Visible.toNegated(),Mn.InSnippetMode.toNegated()),handler:o=>o.acceptPrevSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:1026}}));mi(class extends bi{constructor(){super({id:"editor.action.resetSuggestSize",label:m("suggest.reset.label","Reset Suggest Widget Size"),alias:"Reset Suggest Widget Size",precondition:void 0})}run(o,e){mr.get(e)?.resetWidgetSize()}});class Iue extends z{get selectedItem(){return this._currentSuggestItemInfo}constructor(e,t,i){super(),this.editor=e,this.suggestControllerPreselector=t,this.onWillAccept=i,this.isSuggestWidgetVisible=!1,this.isShiftKeyPressed=!1,this._isActive=!1,this._currentSuggestItemInfo=void 0,this._onDidSelectedItemChange=this._register(new A),this.onDidSelectedItemChange=this._onDidSelectedItemChange.event,this._register(e.onKeyDown(s=>{s.shiftKey&&!this.isShiftKeyPressed&&(this.isShiftKeyPressed=!0,this.update(this._isActive))})),this._register(e.onKeyUp(s=>{s.shiftKey&&this.isShiftKeyPressed&&(this.isShiftKeyPressed=!1,this.update(this._isActive))}));const n=mr.get(this.editor);if(n){this._register(n.registerSelector({priority:100,select:(a,l,c)=>{const d=this.editor.getModel();if(!d)return-1;const h=this.suggestControllerPreselector(),u=h?nh(h,d):void 0;if(!u)return-1;const f=P.lift(l),g=c.map((_,b)=>{const C=Sp.fromSuggestion(n,d,f,_,this.isShiftKeyPressed),w=nh(C.toSingleTextEdit(),d),v=UB(u,w);return{index:b,valid:v,prefixLength:w.text.length,suggestItem:_}}).filter(_=>_&&_.valid&&_.prefixLength>0),p=fT(g,rs(_=>_.prefixLength,ia));return p?p.index:-1}}));let s=!1;const r=()=>{s||(s=!0,this._register(n.widget.value.onDidShow(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})),this._register(n.widget.value.onDidHide(()=>{this.isSuggestWidgetVisible=!1,this.update(!1)})),this._register(n.widget.value.onDidFocus(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})))};this._register(J.once(n.model.onDidTrigger)(a=>{r()})),this._register(n.onWillInsertSuggestItem(a=>{const l=this.editor.getPosition(),c=this.editor.getModel();if(!l||!c)return;const d=Sp.fromSuggestion(n,c,l,a.item,this.isShiftKeyPressed);this.onWillAccept(d)}))}this.update(this._isActive)}update(e){const t=this.getSuggestItemInfo();(this._isActive!==e||!Eue(this._currentSuggestItemInfo,t))&&(this._isActive=e,this._currentSuggestItemInfo=t,this._onDidSelectedItemChange.fire())}getSuggestItemInfo(){const e=mr.get(this.editor);if(!e||!this.isSuggestWidgetVisible)return;const t=e.widget.value.getFocusedItem(),i=this.editor.getPosition(),n=this.editor.getModel();if(!(!t||!i||!n))return Sp.fromSuggestion(e,n,i,t.item,this.isShiftKeyPressed)}stopForceRenderingAbove(){mr.get(this.editor)?.stopForceRenderingAbove()}forceRenderingAbove(){mr.get(this.editor)?.forceRenderingAbove()}}class Sp{static fromSuggestion(e,t,i,n,s){let{insertText:r}=n.completion,a=!1;if(n.completion.insertTextRules&4){const c=new Mg().parse(r);c.children.length<100&&mw.adjustWhitespace(t,i,!0,c),r=c.toString(),a=!0}const l=e.getOverwriteInfo(n,s);return new Sp(I.fromPositions(i.delta(0,-l.overwriteBefore),i.delta(0,Math.max(l.overwriteAfter,0))),r,n.completion.kind,a)}constructor(e,t,i,n){this.range=e,this.insertText=t,this.completionItemKind=i,this.isSnippetText=n}equals(e){return this.range.equalsRange(e.range)&&this.insertText===e.insertText&&this.completionItemKind===e.completionItemKind&&this.isSnippetText===e.isSnippetText}toSelectedSuggestionInfo(){return new lF(this.range,this.insertText,this.completionItemKind,this.isSnippetText)}toSingleTextEdit(){return new fa(this.range,this.insertText)}}function Eue(o,e){return o===e?!0:!o||!e?!1:o.equals(e)}var Nue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Fa=function(o,e){return function(t,i){e(t,i,o)}},_N,Ih;let uo=(Ih=class extends z{static get(e){return e.getContribution(_N.ID)}constructor(e,t,i,n,s,r,a,l,c,d){super(),this.editor=e,this._instantiationService=t,this._contextKeyService=i,this._configurationService=n,this._commandService=s,this._debounceService=r,this._languageFeaturesService=a,this._accessibilitySignalService=l,this._keybindingService=c,this._accessibilityService=d,this._editorObs=Dg(this.editor),this._positions=Ce(this,u=>this._editorObs.selections.read(u)?.map(f=>f.getEndPosition())??[new P(1,1)]),this._suggestWidgetAdaptor=this._register(new Iue(this.editor,()=>(this._editorObs.forceUpdate(),this.model.get()?.selectedInlineCompletion.get()?.toSingleTextEdit(void 0)),u=>this._editorObs.forceUpdate(f=>{this.model.get()?.handleSuggestAccepted(u)}))),this._suggestWidgetSelectedItem=gt(this,u=>this._suggestWidgetAdaptor.onDidSelectedItemChange(()=>{this._editorObs.forceUpdate(f=>u(void 0))}),()=>this._suggestWidgetAdaptor.selectedItem),this._enabledInConfig=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).enabled),this._isScreenReaderEnabled=gt(this,this._accessibilityService.onDidChangeScreenReaderOptimized,()=>this._accessibilityService.isScreenReaderOptimized()),this._editorDictationInProgress=gt(this,this._contextKeyService.onDidChangeContext,()=>this._contextKeyService.getContext(this.editor.getDomNode()).getValue("editorDictation.inProgress")===!0),this._enabled=Ce(this,u=>this._enabledInConfig.read(u)&&(!this._isScreenReaderEnabled.read(u)||!this._editorDictationInProgress.read(u))),this._debounceValue=this._debounceService.for(this._languageFeaturesService.inlineCompletionsProvider,"InlineCompletionsDebounce",{min:50,max:50}),this.model=tr(this,u=>{if(this._editorObs.isReadonly.read(u))return;const f=this._editorObs.model.read(u);return f?this._instantiationService.createInstance(sN,f,this._suggestWidgetSelectedItem,this._editorObs.versionId,this._positions,this._debounceValue,gt(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(119).preview),gt(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(119).previewMode),gt(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).mode),this._enabled):void 0}).recomputeInitiallyAndOnChange(this._store),this._ghostTexts=Ce(this,u=>this.model.read(u)?.ghostTexts.read(u)??[]),this._stablizedGhostTexts=Tue(this._ghostTexts,this._store),this._ghostTextWidgets=jZ(this,this._stablizedGhostTexts,(u,f)=>f.add(this._instantiationService.createInstance(tN,this.editor,{ghostText:u,minReservedLineCount:wg(0),targetTextModel:this.model.map(g=>g?.textModel)}))).recomputeInitiallyAndOnChange(this._store),this._playAccessibilitySignal=Q_(this),this._fontFamily=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).fontFamily),this._register(new hs(this._contextKeyService,this.model)),this._register(JI(this._editorObs.onDidType,(u,f)=>{this._enabled.get()&&this.model.get()?.trigger()})),this._register(this._commandService.onDidExecuteCommand(u=>{new Set([fp.Tab.id,fp.DeleteLeft.id,fp.DeleteRight.id,dB,"acceptSelectedSuggestion"]).has(u.commandId)&&e.hasTextFocus()&&this._enabled.get()&&this._editorObs.forceUpdate(g=>{this.model.get()?.trigger(g)})})),this._register(JI(this._editorObs.selections,(u,f)=>{f.some(g=>g.reason===3||g.source==="api")&&this.model.get()?.stop()})),this._register(this.editor.onDidBlurEditorWidget(()=>{this._contextKeyService.getContextKeyValue("accessibleViewIsShown")||this._configurationService.getValue("editor.inlineSuggest.keepOnBlur")||e.getOption(62).keepOnBlur||Eg.dropDownVisible||Xt(u=>{this.model.get()?.stop(u)})})),this._register(We(u=>{const f=this.model.read(u)?.state.read(u);f?.suggestItem?f.primaryGhostText.lineCount>=2&&this._suggestWidgetAdaptor.forceRenderingAbove():this._suggestWidgetAdaptor.stopForceRenderingAbove()})),this._register(_e(()=>{this._suggestWidgetAdaptor.stopForceRenderingAbove()}));const h=YT(this,(u,f)=>{const p=this.model.read(u)?.state.read(u);return this._suggestWidgetSelectedItem.get()?f:p?.inlineCompletion?.semanticId});this._register(Nre(Ce(u=>(this._playAccessibilitySignal.read(u),h.read(u),{})),async(u,f,g)=>{const p=this.model.get(),_=p?.state.get();if(!_||!p)return;const b=p.textModel.getLineContent(_.primaryGhostText.lineNumber);await og(50,zM(g)),await k7(this._suggestWidgetSelectedItem,Es,()=>!1,zM(g)),await this._accessibilitySignalService.playSignal(rr.inlineSuggestion),this.editor.getOption(8)&&this._provideScreenReaderUpdate(_.primaryGhostText.renderForScreenReader(b))})),this._register(new SE(this.editor,this.model,this._instantiationService)),this._register(ghe(Ce(u=>{const f=this._fontFamily.read(u);return f===""||f==="default"?"":` -.monaco-editor .ghost-text-decoration, -.monaco-editor .ghost-text-decoration-preview, -.monaco-editor .ghost-text { - font-family: ${f}; -}`}))),this._register(this._configurationService.onDidChangeConfiguration(u=>{u.affectsConfiguration("accessibility.verbosity.inlineCompletions")&&this.editor.updateOptions({inlineCompletionsAccessibilityVerbose:this._configurationService.getValue("accessibility.verbosity.inlineCompletions")})})),this.editor.updateOptions({inlineCompletionsAccessibilityVerbose:this._configurationService.getValue("accessibility.verbosity.inlineCompletions")})}playAccessibilitySignal(e){this._playAccessibilitySignal.trigger(e)}_provideScreenReaderUpdate(e){const t=this._contextKeyService.getContextKeyValue("accessibleViewIsShown"),i=this._keybindingService.lookupKeybinding("editor.action.accessibleView");let n;!t&&i&&this.editor.getOption(150)&&(n=m("showAccessibleViewHint","Inspect this in the accessible view ({0})",i.getAriaLabel())),El(n?e+", "+n:e)}shouldShowHoverAt(e){const t=this.model.get()?.primaryGhostText.get();return t?t.parts.some(i=>e.containsPosition(new P(t.lineNumber,i.column))):!1}shouldShowHoverAtViewZone(e){return this._ghostTextWidgets.get()[0]?.ownsViewZone(e)??!1}},_N=Ih,Ih.ID="editor.contrib.inlineCompletionsController",Ih);uo=_N=Nue([Fa(1,ke),Fa(2,De),Fa(3,lt),Fa(4,hi),Fa(5,q0),Fa(6,Se),Fa(7,rb),Fa(8,vt),Fa(9,ms)],uo);function Tue(o,e){const t=Ge("result",[]),i=[];return e.add(We(n=>{const s=o.read(n);Xt(r=>{if(s.length!==i.length){i.length=s.length;for(let a=0;aa.set(s[l],r))})})),t}const b0=class b0 extends bi{constructor(){super({id:b0.ID,label:m("action.inlineSuggest.showNext","Show Next Inline Suggestion"),alias:"Show Next Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:100,primary:606}})}async run(e,t){uo.get(t)?.model.get()?.next()}};b0.ID=uB;let bN=b0;const C0=class C0 extends bi{constructor(){super({id:C0.ID,label:m("action.inlineSuggest.showPrevious","Show Previous Inline Suggestion"),alias:"Show Previous Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:100,primary:604}})}async run(e,t){uo.get(t)?.model.get()?.previous()}};C0.ID=hB;let CN=C0;class Mue extends bi{constructor(){super({id:"editor.action.inlineSuggest.trigger",label:m("action.inlineSuggest.trigger","Trigger Inline Suggestion"),alias:"Trigger Inline Suggestion",precondition:K.writable})}async run(e,t){const i=uo.get(t);await BZ(async n=>{await i?.model.get()?.triggerExplicitly(n),i?.playAccessibilitySignal(n)})}}class Rue extends bi{constructor(){super({id:"editor.action.inlineSuggest.acceptNextWord",label:m("action.inlineSuggest.acceptNextWord","Accept Next Word Of Inline Suggestion"),alias:"Accept Next Word Of Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:101,primary:2065,kbExpr:re.and(K.writable,hs.inlineSuggestionVisible)},menuOpts:[{menuId:$e.InlineSuggestionToolbar,title:m("acceptWord","Accept Word"),group:"primary",order:2}]})}async run(e,t){const i=uo.get(t);await i?.model.get()?.acceptNextWord(i.editor)}}class Aue extends bi{constructor(){super({id:"editor.action.inlineSuggest.acceptNextLine",label:m("action.inlineSuggest.acceptNextLine","Accept Next Line Of Inline Suggestion"),alias:"Accept Next Line Of Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:101},menuOpts:[{menuId:$e.InlineSuggestionToolbar,title:m("acceptLine","Accept Line"),group:"secondary",order:2}]})}async run(e,t){const i=uo.get(t);await i?.model.get()?.acceptNextLine(i.editor)}}class Pue extends bi{constructor(){super({id:dB,label:m("action.inlineSuggest.accept","Accept Inline Suggestion"),alias:"Accept Inline Suggestion",precondition:hs.inlineSuggestionVisible,menuOpts:[{menuId:$e.InlineSuggestionToolbar,title:m("accept","Accept"),group:"primary",order:1}],kbOpts:{primary:2,weight:200,kbExpr:re.and(hs.inlineSuggestionVisible,K.tabMovesFocus.toNegated(),hs.inlineSuggestionHasIndentationLessThanTabSize,Ne.Visible.toNegated(),K.hoverFocused.toNegated())}})}async run(e,t){const i=uo.get(t);i&&(i.model.get()?.accept(i.editor),i.editor.focus())}}const v0=class v0 extends bi{constructor(){super({id:v0.ID,label:m("action.inlineSuggest.hide","Hide Inline Suggestion"),alias:"Hide Inline Suggestion",precondition:hs.inlineSuggestionVisible,kbOpts:{weight:100,primary:9}})}async run(e,t){const i=uo.get(t);Xt(n=>{i?.model.get()?.stop(n)})}};v0.ID="editor.action.inlineSuggest.hide";let vN=v0;const w0=class w0 extends nu{constructor(){super({id:w0.ID,title:m("action.inlineSuggest.alwaysShowToolbar","Always Show Toolbar"),f1:!1,precondition:void 0,menu:[{id:$e.InlineSuggestionToolbar,group:"secondary",order:10}],toggled:re.equals("config.editor.inlineSuggest.showToolbar","always")})}async run(e,t){const i=e.get(lt),s=i.getValue("editor.inlineSuggest.showToolbar")==="always"?"onHover":"always";i.updateValue("editor.inlineSuggest.showToolbar",s)}};w0.ID="editor.action.inlineSuggest.toggleAlwaysShowToolbar";let wN=w0;var Oue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},xm=function(o,e){return function(t,i){e(t,i,o)}};class Fue{constructor(e,t,i){this.owner=e,this.range=t,this.controller=i}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}let yN=class{constructor(e,t,i,n,s,r){this._editor=e,this._languageService=t,this._openerService=i,this.accessibilityService=n,this._instantiationService=s,this._telemetryService=r,this.hoverOrdinal=4}suggestHoverAnchor(e){const t=uo.get(this._editor);if(!t)return null;const i=e.target;if(i.type===8){const n=i.detail;if(t.shouldShowHoverAtViewZone(n.viewZoneId))return new Q1(1e3,this,I.fromPositions(this._editor.getModel().validatePosition(n.positionBefore||n.position)),e.event.posx,e.event.posy,!1)}return i.type===7&&t.shouldShowHoverAt(i.range)?new Q1(1e3,this,i.range,e.event.posx,e.event.posy,!1):i.type===6&&i.detail.mightBeForeignElement&&t.shouldShowHoverAt(i.range)?new Q1(1e3,this,i.range,e.event.posx,e.event.posy,!1):null}computeSync(e,t){if(this._editor.getOption(62).showToolbar!=="onHover")return[];const i=uo.get(this._editor);return i&&i.shouldShowHoverAt(e.range)?[new Fue(this,e.range,i)]:[]}renderHoverParts(e,t){const i=new X,n=t[0];this._telemetryService.publicLog2("inlineCompletionHover.shown"),this.accessibilityService.isScreenReaderOptimized()&&!this._editor.getOption(8)&&i.add(this.renderScreenReaderText(e,n));const s=n.controller.model.get(),r=this._instantiationService.createInstance(Eg,this._editor,!1,wg(null),s.selectedInlineCompletionIndex,s.inlineCompletionsCount,s.activeCommands),a=r.getDomNode();e.fragment.appendChild(a),s.triggerExplicitly(),i.add(r);const l={hoverPart:n,hoverElement:a,dispose(){i.dispose()}};return new Ng([l])}renderScreenReaderText(e,t){const i=new X,n=ce,s=n("div.hover-row.markdown-hover"),r=Z(s,n("div.hover-contents",{"aria-live":"assertive"})),a=i.add(new Wh({editor:this._editor},this._languageService,this._openerService)),l=c=>{i.add(a.onDidRenderAsync(()=>{r.className="hover-contents code-hover-contents",e.onContentsChanged()}));const d=m("inlineSuggestionFollows","Suggestion:"),h=i.add(a.render(new Js().appendText(d).appendCodeblock("text",c)));r.replaceChildren(h.element)};return i.add(We(c=>{const d=t.controller.model.read(c)?.primaryGhostText.read(c);if(d){const h=this._editor.getModel().getLineContent(d.lineNumber);l(d.renderForScreenReader(h))}else un(r)})),e.fragment.appendChild(s),i}};yN=Oue([xm(1,qt),xm(2,Vo),xm(3,ms),xm(4,ke),xm(5,$s)],yN);class Bue{}Ho(uo.ID,uo,3);mi(Mue);mi(bN);mi(CN);mi(Rue);mi(Aue);mi(Pue);mi(vN);Rn(wN);Oy.register(yN);By.register(new Bue);export{Dge as M,kge as R,Ige as e,Ege as l}; diff --git a/deploy/dac/index.html b/deploy/dac/index.html deleted file mode 100644 index eb737d0d..00000000 --- a/deploy/dac/index.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - DFD WebEditor - - - - - - - - -
    - - diff --git a/deploy/online-shop/assets/codicon-BYm2YbZ6.ttf b/deploy/online-shop/assets/codicon-BYm2YbZ6.ttf deleted file mode 100644 index 6fdfc3fa0b4e45dd90a3022f55e7137b88e47efa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123192 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 diff --git a/deploy/online-shop/assets/codicon-DCmgc-ay.ttf b/deploy/online-shop/assets/codicon-DCmgc-ay.ttf deleted file mode 100644 index 27ee4c68caef1cd22342f481420d6dbda1648012..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 80340 zcmeFa37lJ3c{hB{)zw{fudeQubR~_JnbAm^@oe^N(s&ui6FZB?ah$|)oW&E{S?mNS znSrcMfDjuRk`Tf+gg^-d8f=yVfu zfU*5JAYCl|3ZLhJuKm|se{*)j^UvXa#~D*=2d=wpPx$Vy?7&YlW1)9nv*+d+>0kM4 z@Ouj9w_m&Gnk(M&i%(54o_`F-emQg9E3UsRb=v0{Z~qu$=`M!4^FEx3_vfE~{&#$U zjx2xiW5E#|-Tv!e&0ZQ^`)|w?SKL%Q6ft30_o_<)8V1tM=`|{l%3WztOK8M>tcO zM`hm2?_*(n`*ZeJcwf;h?_)MQi=k@a5RSgYYulBZE@z*u@BRr7TGz%;M}LYZEu9^- zjDG(g{GZa``RD(8)A0Z6_W!=;|GwY{+0UI8hT^v@sXeK=b=5+ zch~Q#zp?(c`cn(=47vVEUgdA&C4Mcp z`Solo{{r95ujW^=H?c9klD&>S&3?x=@VBsAn9o1M-pTIdr}7++^8`P_zQ!JA^ZY&h zc6K*^6TgMu$zR70^4IhG_}%<4`wV|Ie*=^Z8Lc&-6GoT?y(5a2xU7xkSe_NwC2SX) zW|yLNm$6P(WL>Pp%B+X=f&%?)fDJ+;8e+q2gpIPbY@DrwezcyQ!Y0|N>@;=;JCjYZ z^Vtq|0o%#;v8&k2*tP8C?0R+syOG_*Ze|DBt?V}TO7<%DYW5m-2RqDO%l?49p54RV z$nIlrVQ*z`V{`27?0)tR_5gbqdpCQKy@$P*J;dI}{)io6N7)B)&WG5C*&nmV*r(X1 z*=N}o*_YT?*^|(vo??H&{+fM*{S7Glx9nT&@7TB5zp|gQpRu2_U$N)dui0-nAL7G&gpcwuzJ{;m>-Yp;&rjhS_$1%R zPvd9sGx-$X!ng9X(TnHsbNPk*B7QNygzw^)^2_-Z{7Sx`zl>kQXZg$dEBFokMt&>5 zjlYt=iob^6!4L7*@;~5r@q75a{O$aH{$BnNe?Nbie}Et5ALJk6ALbw7ALpOopX7hS zALF0mkMnu{Y5qn2CH`gp75-KJ6#ol$g8du&1^Xr2&GxVvwwled%lRAGb?g=F8g?|XXc_B_w< z)ocat;T^2XYHTxqD}R)KjQ=tJDEk;ckMH1Vc7T74|2cn>KfvF~-^KrszneeE-@#(+ zJl@6rkbjY`{d^~TKSqC&eV%=RS6DmiV83N? z{--?2{ulc$`$zVD_6++c_5=1W>_@D@j12v0Gy50FBf2+M0te(ucEwCfWHmpJ^@}rxnF=^i}ES~Zlkj6&JT_*sJ%IY%$;H|7aE5OE3zFYwOmepS&0M5(m z^gIAOnAL9(05@j!8wJ<~ls5^0L$mtL0^rrG-UQj3by(m8@NZU!wM_sgXZ70z*qta} zDZo!f`6>aPL-}d}9!Gh*08gNNjR2$otKT62dBEz21Rxn${jdO8>-E(z;GG1t9BK{apf(daVA3 z0+4^K{%!$CLRNoJ05Xx)i7o)7Bdfnx0CJMm9}Hqa0Hi#t|A_$PJ*z(|0Ljnle<}bS zfYreV2+#&t{Zj(a3t0Ve0cZ%U{)7N@1y-jq2S96J^-l{xe_(a$ZvdJEtN)n*bP87g ztN^qNR{xv;I|b$E1)y=T`WFPCd$9T!1)znn`j-TtkFffe1)!O*`d0*?qp~I0cbj`{#OFfd073g1)%+~`Zoli z2eJC!2tXrZ^=}G5H)8d_6@Zq+>faK8zQpQ(CjiZf)xRwO9g5ZeUI5w@tA9rTdKIhx zg8(!vR{yR5bS+l@M*(PEto}U#=wGb9AOKB_)t?c7PR8p0BmnJ<)xR$QJ&o1>SpXUv ztN%a%x*MziivYAZR{x;@^f^}lkpQ$dR<8>{$7A(|0JJ?;KP~{hkJbN|05m{W|FHmc zL011)0ceG+{;UA>LstKZ05nBb|EU0UMppls0DBM069Uj9S^eJxpi#2=&jp}cvidIs zpk=c9F9o1)vih$Cpn0*Ot0CZp0Pz9g`vxX)BeV8?L0cggo zVG2M;W{rpdv}M+?1fVywhAjXMnl+*V(4|?!5r9_B8ZiOr*R0_RK+|RoPXIbMYs3Yh zeX~YF0D3rUBn6<6vxYAK-JCU20?^V~BP{@Zoi#E74D@ZZ34mm*krm)XznlPRX^p%9 zCwdeFIMJhBfKyvL1UR*?Q-D+ZiUOS4*CoKIO(g+N^(_mK2fI-b;8d?}0Z#Sm5#aRv z6#|@|-z&iB+&%%avm5;a~5I#4-hw-@yK7!9p@KJnj zf{)>I6MPLmR|WW5lr;gq4&}H2pFp`-QE|kf0sd)}M0bFH5hc+b;9o*XbO-pCQNCJ$e+A|30{p8esXqYz6iVt30QNg; zP=5fhC5fGVLWy0Dlx~ z&@%vdrdZ=C0Y-KH3juhmSmT%gqkBFr01p;xd|d#(EY|o-0eH1o_E_V%0DOF`LEiy*`&i@0 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 UoXQ~{PVi#Rf4#j20|Nj60P(lx`2YX_ diff --git a/deploy/online-shop/assets/fa-regular-400-BVHPE7da.woff2 b/deploy/online-shop/assets/fa-regular-400-BVHPE7da.woff2 deleted file mode 100644 index 2eca12b0e7b540394a3349830e5d722ed53d2992..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18988 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

    ;chMGNtQX7BwzxTo9ZPoT_>&Uj+b8J` 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

    {})IQs7PWypp>^u_v9 z*x}57xJw65ZWm)lz~m(Wa8}6jzw$uwC1dT2lz*N^M(+CitiupOx3Dz~&Dr@usd;A% zlWLAUrvt34q_L;uWf{HdJ6)w`UZEu7g@a8cJ(XwJ%gR| zyORyy%qdfP|>!T^^mP4WZ{3E*CG zedKw*Z&}8%T+^E7SvZ$z4L+2c&&7HI4&@m-{8Mc1lNld7jtUuimKRZy9+r{Lrx^}!WzwQX{>g_fOkS@BofB1eT*FmTLME23@ zq@x(52d5%-;@+>Gdq$@ibhvSt5}pyOiMq}sbp?N`9}J4}94(4h`ej0Rkf3(YRmtA^ z)%?s);w%qGZ3HN}GyGw0bv$26&QYV#3_5HR z;q-~6cfgSbIJd&<45?E%HAbflP^I8X59c{La+tzl*+mt$sd$5zE8WE`x;PS8E{`vW zRpmyPTwcSfBY1rl%u|T*Xlx9HkH}l<;v3fUWT;usNjY|W$BPQdPLHUQPeC|NKd_Tp zCVItc0yp<)J!2F7QvO;_>Jn>lM}gHVBLLOw>P+9I}z6D;zoOPx9hOZq+&NEVYD^Wzw>IQKEq%= zue2gL8UjA4Z*a9PgHs1uTd?P{E4~4y%vE~=P%`^4D1I0}O?TqZ!f!7AKox~AT?suo zaZUZQ@`W#e5C~s>q!0hW#Wce=Zg$H9<64^e8#>cq8Fh}>nu8Ryc5)a}+aL(!y8U_r zauC-jIEFp%E+MWXf5KcQSzCaaqDdlNyZ(~L#aE-gJfA$!ddipC~SPS;HQjX_=wzgF05U>tg9aZ>8Guyz^z)$whlIjHnA}qN~MKJ4h-Dg7Ny8R118vmy%Pv%Mq(+D z8^%BC*?qHH9`G&c9}VrwnRn9*)(II4D13%>`$sOx>cX3m5`6iUK~UmxFzpJrUyZ>tZ3jHY zOy${Y-ei#+Yc1^Im-dd3&e-~#3%-<*L7%2T{!m({C0Sc5vAkyILh+A&!)oW&;LRV{ z_~eN$stVqE0AA~;i{pGl745n97RLppDUwvF zH0i!nZ*S4Bt-fJj&yZ$?gSrgz?BT;a4oaX+%?c3x)kLRK9saXviFjvRVZncYaQ zdGaLzNWZ!(y<4xe?(%5Yx%py~v0WtJ$|9pXY~6%H2_@=ns1ftG(xwiQ@8HX1@n0Mf zo+dIu7DpGDbUGCk-O-_Qk}O=GVrKmH+Jy=EdAz#U=XZVWsT9kjM0W}c8Qlq)KxO6p z!a#333vO0;diRwBUgu8>)|5DjL|6;h`;ScOD4>2&L8!P+9y(D#Gg%0DJ!II7O(Spz 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 diff --git a/deploy/online-shop/assets/index-BshKduTm.js b/deploy/online-shop/assets/index-BshKduTm.js deleted file mode 100644 index f37abcd2..00000000 --- a/deploy/online-shop/assets/index-BshKduTm.js +++ /dev/null @@ -1,120 +0,0 @@ -import{l as wh,R as Kzt,e as RX,M as z0t}from"./monaco-editor-BSmz0_Ko.js";(function(){const h=document.createElement("link").relList;if(h&&h.supports&&h.supports("modulepreload"))return;for(const m of document.querySelectorAll('link[rel="modulepreload"]'))w(m);new MutationObserver(m=>{for(const P of m)if(P.type==="childList")for(const g of P.addedNodes)g.tagName==="LINK"&&g.rel==="modulepreload"&&w(g)}).observe(document,{childList:!0,subtree:!0});function b(m){const P={};return m.integrity&&(P.integrity=m.integrity),m.referrerPolicy&&(P.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?P.credentials="include":m.crossOrigin==="anonymous"?P.credentials="omit":P.credentials="same-origin",P}function w(m){if(m.ep)return;m.ep=!0;const P=b(m);fetch(m.href,P)}})();var fS=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function qzt(f){return f&&f.__esModule&&Object.prototype.hasOwnProperty.call(f,"default")?f.default:f}function V0t(f){if(Object.prototype.hasOwnProperty.call(f,"__esModule"))return f;var h=f.default;if(typeof h=="function"){var b=function w(){var m=!1;try{m=this instanceof w}catch{}return m?Reflect.construct(h,arguments,this.constructor):h.apply(this,arguments)};b.prototype=h.prototype}else b={};return Object.defineProperty(b,"__esModule",{value:!0}),Object.keys(f).forEach(function(w){var m=Object.getOwnPropertyDescriptor(f,w);Object.defineProperty(b,w,m.get?m:{enumerable:!0,get:function(){return f[w]}})}),b}var _ht={};var Eht;function vye(){if(Eht)return _ht;Eht=1;var f;return(function(h){(function(b){var w=typeof globalThis=="object"?globalThis:typeof fS=="object"?fS:typeof self=="object"?self:typeof this=="object"?this:C(),m=P(h);typeof w.Reflect<"u"&&(m=P(w.Reflect,m)),b(m,w),typeof w.Reflect>"u"&&(w.Reflect=h);function P(T,M){return function(_,I){Object.defineProperty(T,_,{configurable:!0,writable:!0,value:I}),M&&M(_,I)}}function g(){try{return Function("return this;")()}catch{}}function E(){try{return(0,eval)("(function() { return this; })()")}catch{}}function C(){return g()||E()}})(function(b,w){var m=Object.prototype.hasOwnProperty,P=typeof Symbol=="function",g=P&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",E=P&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",C=typeof Object.create=="function",T={__proto__:[]}instanceof Array,M=!C&&!T,_={create:C?function(){return FM(Object.create(null))}:T?function(){return FM({__proto__:null})}:function(){return FM({})},has:M?function(ft,It){return m.call(ft,It)}:function(ft,It){return It in ft},get:M?function(ft,It){return m.call(ft,It)?ft[It]:void 0}:function(ft,It){return ft[It]}},I=Object.getPrototypeOf(Function),O=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:lN(),j=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:MJ(),k=typeof WeakMap=="function"?WeakMap:NM(),x=P?Symbol.for("@reflect-metadata:registry"):void 0,R=IA(),H=vh(R);function F(ft,It,zt,zn){if(Gn(zt)){if(!Ml(ft))throw new TypeError;if(!Si(It))throw new TypeError;return me(ft,It)}else{if(!Ml(ft))throw new TypeError;if(!Lr(It))throw new TypeError;if(!Lr(zn)&&!Gn(zn)&&!pc(zn))throw new TypeError;return pc(zn)&&(zn=void 0),zt=Er(zt),ke(ft,It,zt,zn)}}b("decorate",F);function $(ft,It){function zt(zn,or){if(!Lr(zn))throw new TypeError;if(!Gn(or)&&!_o(or))throw new TypeError;Nt(ft,It,zn,or)}return zt}b("metadata",$);function W(ft,It,zt,zn){if(!Lr(zt))throw new TypeError;return Gn(zn)||(zn=Er(zn)),Nt(ft,It,zt,zn)}b("defineMetadata",W);function re(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),tt(ft,It,zt)}b("hasMetadata",re);function ae(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),De(ft,It,zt)}b("hasOwnMetadata",ae);function ce(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),ct(ft,It,zt)}b("getMetadata",ce);function J(ft,It,zt){if(!Lr(It))throw new TypeError;return Gn(zt)||(zt=Er(zt)),Z(ft,It,zt)}b("getOwnMetadata",J);function te(ft,It){if(!Lr(ft))throw new TypeError;return Gn(It)||(It=Er(It)),ii(ft,It)}b("getMetadataKeys",te);function fe(ft,It){if(!Lr(ft))throw new TypeError;return Gn(It)||(It=Er(It)),kr(ft,It)}b("getOwnMetadataKeys",fe);function ve(ft,It,zt){if(!Lr(It))throw new TypeError;if(Gn(zt)||(zt=Er(zt)),!Lr(It))throw new TypeError;Gn(zt)||(zt=Er(zt));var zn=ed(It,zt,!1);return Gn(zn)?!1:zn.OrdinaryDeleteMetadata(ft,It,zt)}b("deleteMetadata",ve);function me(ft,It){for(var zt=ft.length-1;zt>=0;--zt){var zn=ft[zt],or=zn(It);if(!Gn(or)&&!pc(or)){if(!Si(or))throw new TypeError;It=or}}return It}function ke(ft,It,zt,zn){for(var or=ft.length-1;or>=0;--or){var uu=ft[or],Qu=uu(It,zt,zn);if(!Gn(Qu)&&!pc(Qu)){if(!Lr(Qu))throw new TypeError;zn=Qu}}return zn}function tt(ft,It,zt){var zn=De(ft,It,zt);if(zn)return!0;var or=Ia(It);return pc(or)?!1:tt(ft,or,zt)}function De(ft,It,zt){var zn=ed(It,zt,!1);return Gn(zn)?!1:jn(zn.OrdinaryHasOwnMetadata(ft,It,zt))}function ct(ft,It,zt){var zn=De(ft,It,zt);if(zn)return Z(ft,It,zt);var or=Ia(It);if(!pc(or))return ct(ft,or,zt)}function Z(ft,It,zt){var zn=ed(It,zt,!1);if(!Gn(zn))return zn.OrdinaryGetOwnMetadata(ft,It,zt)}function Nt(ft,It,zt,zn){var or=ed(zt,zn,!0);or.OrdinaryDefineOwnMetadata(ft,It,zt,zn)}function ii(ft,It){var zt=kr(ft,It),zn=Ia(ft);if(zn===null)return zt;var or=ii(zn,It);if(or.length<=0)return zt;if(zt.length<=0)return or;for(var uu=new j,Qu=[],fo=0,ni=zt;fo=0&&ni=this._keys.length?(this._index=-1,this._keys=It,this._values=It):this._index++,{value:li,done:!1}}return{value:void 0,done:!0}},fo.prototype.throw=function(ni){throw this._index>=0&&(this._index=-1,this._keys=It,this._values=It),ni},fo.prototype.return=function(ni){return this._index>=0&&(this._index=-1,this._keys=It,this._values=It),{value:ni,done:!0}},fo})(),zn=(function(){function fo(){this._keys=[],this._values=[],this._cacheKey=ft,this._cacheIndex=-2}return Object.defineProperty(fo.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),fo.prototype.has=function(ni){return this._find(ni,!1)>=0},fo.prototype.get=function(ni){var li=this._find(ni,!1);return li>=0?this._values[li]:void 0},fo.prototype.set=function(ni,li){var bi=this._find(ni,!0);return this._values[bi]=li,this},fo.prototype.delete=function(ni){var li=this._find(ni,!1);if(li>=0){for(var bi=this._keys.length,Pi=li+1;Pi0)throw new kM(F3.missingInjectionDecorator,`Found unexpected missing metadata on type "${f.name}" at constructor indexes "${b.join('", "')}". - -Are you using @inject, @multiInject or @unmanaged decorators at those indexes? - -If you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}function X0t(f){return{kind:wg.singleInjection,name:void 0,optional:!1,tags:new Map,targetName:void 0,value:f}}function oJ(f){const h=f.find((g=>g.key===Sye)),b=f.find((g=>g.key===Pye));if(f.find((g=>g.key===_ye))!==void 0)return(function(g,E){if(E!==void 0||g!==void 0)throw new kM(F3.missingInjectionDecorator,"Expected a single @inject, @multiInject or @unmanaged metadata");return{kind:wg.unmanaged}})(h,b);if(b===void 0&&h===void 0)throw new kM(F3.missingInjectionDecorator,"Expected @inject, @multiInject or @unmanaged metadata");const w=f.find((g=>g.key===rJ)),m=f.find((g=>g.key===Eye)),P=f.find((g=>g.key===yye));return{kind:h===void 0?wg.multipleInjection:wg.singleInjection,name:w?.value,optional:m!==void 0,tags:new Map(f.filter((g=>zzt.every((E=>g.key!==E)))).map((g=>[g.key,g.value]))),targetName:P?.value,value:h===void 0?b?.value:h.value}}function J0t(f,h,b){try{return oJ(b)}catch(w){throw kM.isErrorOfKind(w,F3.missingInjectionDecorator)?new kM(F3.missingInjectionDecorator,`Expected a single @inject, @multiInject or @unmanaged decorator at type "${f.name}" at constructor arguments at index "${h.toString()}"`,{cause:w}):w}}function Vzt(f){const h=N3(f,"design:paramtypes"),b=N3(f,"inversify:tagged"),w=[];if(b!==void 0)for(const[m,P]of Object.entries(b)){const g=parseInt(m);w[g]=J0t(f,g,P)}if(h!==void 0){for(let m=0;mNumber.MIN_SAFE_INTEGER)):Sht(Object,Kme,m,(P=>P+1)),m})(),this.#i=h,this.#t=void 0,this.#e=b,this.#r=new Jzt(typeof h=="string"?h:h.toString().slice(7,-1)),this.#o=w}get id(){return this.#n}get identifier(){return this.#i}get metadata(){return this.#t===void 0&&(this.#t=Yzt(this.#e)),this.#t}get name(){return this.#r}get type(){return this.#o}get serviceIdentifier(){return Hzt.is(this.#e.value)?this.#e.value.unwrap():this.#e.value}getCustomTags(){return[...this.#e.tags.entries()].map((([h,b])=>({key:h,value:b})))}getNamedTag(){return this.#e.name===void 0?null:{key:rJ,value:this.#e.name}}hasTag(h){return this.metadata.some((b=>b.key===h))}isArray(){return this.#e.kind===wg.multipleInjection}isNamed(){return this.#e.name!==void 0}isOptional(){return this.#e.optional}isTagged(){return this.#e.tags.size>0}matchesArray(h){return this.isArray()&&this.#e.value===h}matchesNamedTag(h){return this.#e.name===h}matchesTag(h){return b=>this.metadata.some((w=>w.key===h&&w.value===b))}};const tpt=f=>(function(h,b){return function(w){const m=h(w);let P=Pht(w);for(;P!==void 0&&P!==Object;){const E=b(P);for(const[C,T]of E)m.properties.has(C)||m.properties.set(C,T);P=Pht(P)}const g=[];for(const E of m.constructorArguments)if(E.kind!==wg.unmanaged){const C=E.targetName??"";g.push(new xX(C,E,"ConstructorArgument"))}for(const[E,C]of m.properties)if(C.kind!==wg.unmanaged){const T=C.targetName??E;g.push(new xX(T,C,"ClassProperty"))}return g}})(f===void 0?Gzt:h=>Wzt(h,f),f===void 0?Z0t:h=>ept(h,f)),wm="named",Qzt="unmanaged",npt="optional",ipt="inject",rpt="multi_inject",opt="inversify:tagged",cpt="inversify:tagged_props",Mht="inversify:paramtypes",spt="design:paramtypes",Cht="post_construct",jve="pre_destroy",nl={Request:"Request",Singleton:"Singleton",Transient:"Transient"},Ys={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"},upt={ConstructorArgument:"ConstructorArgument",Variable:"Variable"};let Zzt=0;function XL(){return Zzt++}class Mye{id;moduleId;activated;serviceIdentifier;implementationType;cache;dynamicValue;scope;type;factory;provider;constraint;onActivation;onDeactivation;constructor(h,b){this.id=XL(),this.activated=!1,this.serviceIdentifier=h,this.scope=b,this.type=Ys.Invalid,this.constraint=w=>!0,this.implementationType=null,this.cache=null,this.factory=null,this.provider=null,this.onActivation=null,this.onDeactivation=null,this.dynamicValue=null}clone(){const h=new Mye(this.serviceIdentifier,this.scope);return h.activated=h.scope===nl.Singleton&&this.activated,h.implementationType=this.implementationType,h.dynamicValue=this.dynamicValue,h.scope=this.scope,h.type=this.type,h.factory=this.factory,h.provider=this.provider,h.constraint=this.constraint,h.onActivation=this.onActivation,h.onDeactivation=this.onDeactivation,h.cache=this.cache,h}}const apt="Metadata key was used more than once in a parameter:",Iht="NULL argument",Tht="Key Not Found",eVt="Ambiguous match found for serviceIdentifier:",tVt="No matching bindings found for serviceIdentifier:",lpt="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.",Ave=(f,h)=>`onDeactivation() error in class ${f}: ${h}`;class nVt{getConstructorMetadata(h){return{compilerGeneratedMetadata:Reflect.getMetadata(spt,h)??[],userGeneratedMetadata:Reflect.getMetadata(opt,h)??{}}}getPropertiesMetadata(h){return Reflect.getMetadata(cpt,h)??{}}}var aA;function fpt(f){return f instanceof RangeError||f.message==="Maximum call stack size exceeded"}(function(f){f[f.MultipleBindingsAvailable=2]="MultipleBindingsAvailable",f[f.NoBindingsAvailable=0]="NoBindingsAvailable",f[f.OnlyOneBindingAvailable=1]="OnlyOneBindingAvailable"})(aA||(aA={}));function bS(f){return typeof f=="function"?f.name:typeof f=="symbol"?f.toString():f}function jht(f,h,b){let w="";const m=b(f,h);return m.length!==0&&(w=` -Registered bindings:`,m.forEach((P=>{let g="Object";P.implementationType!==null&&(g=gpt(P.implementationType)),w=`${w} - ${g}`,P.constraint.metaData&&(w=`${w} - ${P.constraint.metaData}`)}))),w}function hpt(f,h){return f.parentRequest!==null&&(f.parentRequest.serviceIdentifier===h||hpt(f.parentRequest,h))}function dpt(f){f.childRequests.forEach((h=>{if(hpt(f,h.serviceIdentifier)){const b=(function(w){return(function P(g,E=[]){const C=bS(g.serviceIdentifier);return E.push(C),g.parentRequest!==null?P(g.parentRequest,E):E})(w).reverse().join(" --> ")})(h);throw new Error(`Circular dependency found: ${b}`)}dpt(h)}))}function gpt(f){if(f.name!=null&&f.name!=="")return f.name;{const h=f.toString(),b=h.match(/^function\s*([^\s(]+)/);return b===null?`Anonymous function: ${h}`:b[1]}}function Aht(f){return`{"key":"${f.key.toString()}","value":"${f.value.toString()}"}`}class bpt{id;container;plan;currentRequest;constructor(h){this.id=XL(),this.container=h}addPlan(h){this.plan=h}setCurrentRequest(h){this.currentRequest=h}}class lA{key;value;constructor(h,b){this.key=h,this.value=b}toString(){return this.key===wm?`named: ${String(this.value).toString()} `:`tagged: { key:${this.key.toString()}, value: ${String(this.value)} }`}}class iVt{parentContext;rootRequest;constructor(h,b){this.parentContext=h,this.rootRequest=b}}function ppt(f,h){const b=(function(E){return Object.getPrototypeOf(E.prototype)?.constructor})(h);if(b===void 0||b===Object)return 0;const w=tpt(f)(b),m=w.map((E=>E.metadata.filter((C=>C.key===Qzt)))),P=[].concat.apply([],m).length,g=w.length-P;return g>0?g:ppt(f,b)}class JL{id;serviceIdentifier;parentContext;parentRequest;bindings;childRequests;target;requestScope;constructor(h,b,w,m,P){this.id=XL(),this.serviceIdentifier=h,this.parentContext=b,this.parentRequest=w,this.target=P,this.childRequests=[],this.bindings=Array.isArray(m)?m:[m],this.requestScope=w===null?new Map:null}addChildRequest(h,b,w){const m=new JL(h,this.parentContext,this,b,w);return this.childRequests.push(m),m}}function LX(f){return f._bindingDictionary}function Oht(f,h,b,w,m){let P=jL(b.container,m.serviceIdentifier),g=[];return P.length===aA.NoBindingsAvailable&&b.container.options.autoBindInjectable===!0&&typeof m.serviceIdentifier=="function"&&f.getConstructorMetadata(m.serviceIdentifier).compilerGeneratedMetadata&&(b.container.bind(m.serviceIdentifier).toSelf(),P=jL(b.container,m.serviceIdentifier)),g=h?P:P.filter((E=>{const C=new JL(E.serviceIdentifier,b,w,E,m);return E.constraint(C)})),(function(E,C,T,M,_){switch(C.length){case aA.NoBindingsAvailable:if(M.isOptional())return C;{const I=bS(E);let O=tVt;throw O+=(function(j,k){if(k.isTagged()||k.isNamed()){let x="";const R=k.getNamedTag(),H=k.getCustomTags();return R!==null&&(x+=Aht(R)+` -`),H!==null&&H.forEach((F=>{x+=Aht(F)+` -`})),` ${j} - ${j} - ${x}`}return` ${j}`})(I,M),O+=jht(_,I,jL),T!==null&&(O+=` -Trying to resolve bindings for "${bS(T.serviceIdentifier)}"`),new Error(O)}case aA.OnlyOneBindingAvailable:return C;case aA.MultipleBindingsAvailable:default:if(M.isArray())return C;{const I=bS(E);let O=`${eVt} ${I}`;throw O+=jht(_,I,jL),new Error(O)}}})(m.serviceIdentifier,g,w,m,b.container),g}function wpt(f,h){const b=h.isMultiInject?rpt:ipt,w=[new lA(b,f)];return h.customTag!==void 0&&w.push(new lA(h.customTag.key,h.customTag.value)),h.isOptional===!0&&w.push(new lA(npt,!0)),w}function mpt(f,h,b,w,m,P){let g,E;if(m===null){g=Oht(f,h,w,null,P),E=new JL(b,w,null,g,P);const C=new iVt(w,E);w.addPlan(C)}else g=Oht(f,h,w,m,P),E=m.addChildRequest(P.serviceIdentifier,g,P);g.forEach((C=>{let T=null;if(P.isArray())T=E.addChildRequest(C.serviceIdentifier,C,P);else{if(C.cache!==null)return;T=E}if(C.type===Ys.Instance&&C.implementationType!==null){const M=(function(_,I){return tpt(_)(I)})(f,C.implementationType);if(w.container.options.skipBaseClassChecks!==!0){const _=ppt(f,C.implementationType);if(M.length<_){const I=`The number of constructor arguments in the derived class ${gpt(C.implementationType)} must be >= than the number of constructor arguments of its base class.`;throw new Error(I)}}M.forEach((_=>{mpt(f,!1,_.serviceIdentifier,w,T,_)}))}}))}function jL(f,h){let b=[];const w=LX(f);return w.hasKey(h)?b=w.get(h):f.parent!==null&&(b=jL(f.parent,h)),b}function rVt(f,h,b,w,m,P=!1){const g=new bpt(h),E=(function(C,T,M){const _=wpt(T,M),I=oJ(_);if(I.kind===wg.unmanaged)throw new Error("Unexpected metadata when creating target");return new xX("",I,C)})(b,w,m);try{return mpt(f,P,w,g,null,E),g}catch(C){throw fpt(C)&&dpt(g.plan.rootRequest),C}}function bg(f){return(typeof f=="object"&&f!==null||typeof f=="function")&&typeof f.then=="function"}function vpt(f){return!!bg(f)||Array.isArray(f)&&f.some(bg)}const oVt=(f,h,b)=>{f.has(h.id)||f.set(h.id,b)},cVt=(f,h)=>{f.cache=h,f.activated=!0,bg(h)&&sVt(f,h)},sVt=async(f,h)=>{try{const b=await h;f.cache=b}catch(b){throw f.cache=null,f.activated=!1,b}};var kL;(function(f){f.DynamicValue="toDynamicValue",f.Factory="toFactory",f.Provider="toProvider"})(kL||(kL={}));function uVt(f,h,b){let w;if(h.length>0){const m=(function(g,E){return g.reduce(((C,T)=>{const M=E(T);return T.target.type===upt.ConstructorArgument?C.constructorInjections.push(M):(C.propertyRequests.push(T),C.propertyInjections.push(M)),C.isAsync||(C.isAsync=vpt(M)),C}),{constructorInjections:[],isAsync:!1,propertyInjections:[],propertyRequests:[]})})(h,b),P={...m,constr:f};w=m.isAsync?(async function(g){const E=await kht(g.constructorInjections),C=await kht(g.propertyInjections);return Dht({...g,constructorInjections:E,propertyInjections:C})})(P):Dht(P)}else w=new f;return w}function Dht(f){const h=new f.constr(...f.constructorInjections);return f.propertyRequests.forEach(((b,w)=>{const m=b.target.identifier,P=f.propertyInjections[w];b.target.isOptional()&&P===void 0||(h[m]=P)})),h}async function kht(f){const h=[];for(const b of f)Array.isArray(b)?h.push(Promise.all(b)):h.push(b);return Promise.all(h)}function Rht(f,h){const b=(function(w,m){if(Reflect.hasMetadata(Cht,w)){const E=Reflect.getMetadata(Cht,w);try{return m[E.value]?.()}catch(C){if(C instanceof Error)throw new Error((P=w.name,g=C.message,`@postConstruct error in class ${P}: ${g}`))}}var P,g})(f,h);return bg(b)?b.then((()=>h)):h}function aVt(f,h){f.scope!==nl.Singleton&&(function(b,w){const m=`Class cannot be instantiated in ${b.scope===nl.Request?"request":"transient"} scope.`;if(typeof b.onDeactivation=="function")throw new Error(Ave(w.name,m));if(Reflect.hasMetadata(jve,w))throw new Error(`@preDestroy error in class ${w.name}: ${m}`)})(f,h)}const Cye=f=>h=>{h.parentContext.setCurrentRequest(h);const b=h.bindings,w=h.childRequests,m=h.target&&h.target.isArray(),P=!(h.parentRequest&&h.parentRequest.target&&h.target&&h.parentRequest.target.matchesArray(h.target.serviceIdentifier));if(m&&P)return w.map((g=>Cye(f)(g)));{if(h.target.isOptional()&&b.length===0)return;const g=b[0];return dVt(f,h,g)}},lVt=(f,h)=>{const b=(w=>{switch(w.type){case Ys.Factory:return{factory:w.factory,factoryType:kL.Factory};case Ys.Provider:return{factory:w.provider,factoryType:kL.Provider};case Ys.DynamicValue:return{factory:w.dynamicValue,factoryType:kL.DynamicValue};default:throw new Error(`Unexpected factory type ${w.type}`)}})(f);return((w,m)=>{try{return w()}catch(P){throw fpt(P)?m():P}})((()=>b.factory.bind(f)(h)),(()=>{return new Error((w=b.factoryType,m=h.currentRequest.serviceIdentifier.toString(),`It looks like there is a circular dependency in one of the '${w}' bindings. Please investigate bindings with service identifier '${m}'.`));var w,m}))},fVt=(f,h,b)=>{let w;const m=h.childRequests;switch((P=>{let g=null;switch(P.type){case Ys.ConstantValue:case Ys.Function:g=P.cache;break;case Ys.Constructor:case Ys.Instance:g=P.implementationType;break;case Ys.DynamicValue:g=P.dynamicValue;break;case Ys.Provider:g=P.provider;break;case Ys.Factory:g=P.factory}if(g===null){const E=bS(P.serviceIdentifier);throw new Error(`Invalid binding type: ${E}`)}})(b),b.type){case Ys.ConstantValue:case Ys.Function:w=b.cache;break;case Ys.Constructor:w=b.implementationType;break;case Ys.Instance:w=(function(P,g,E,C){aVt(P,g);const T=uVt(g,E,C);return bg(T)?T.then((M=>Rht(g,M))):Rht(g,T)})(b,b.implementationType,m,Cye(f));break;default:w=lVt(b,h.parentContext)}return w},hVt=(f,h,b)=>{let w=((m,P)=>P.scope===nl.Singleton&&P.activated?P.cache:P.scope===nl.Request&&m.has(P.id)?m.get(P.id):null)(f,h);return w!==null||(w=b(),((m,P,g)=>{P.scope===nl.Singleton&&cVt(P,g),P.scope===nl.Request&&oVt(m,P,g)})(f,h,w)),w},dVt=(f,h,b)=>hVt(f,b,(()=>{let w=fVt(f,h,b);return w=bg(w)?w.then((m=>xht(h,b,m))):xht(h,b,w),w}));function xht(f,h,b){let w=gVt(f.parentContext,h,b);const m=wVt(f.parentContext.container);let P,g=m.next();do{P=g.value;const E=f.parentContext,C=f.serviceIdentifier,T=pVt(P,C);w=bg(w)?ypt(T,E,w):bVt(T,E,w),g=m.next()}while(g.done!==!0&&!LX(P).hasKey(f.serviceIdentifier));return w}const gVt=(f,h,b)=>{let w;return w=typeof h.onActivation=="function"?h.onActivation(f,b):b,w},bVt=(f,h,b)=>{let w=f.next();for(;w.done!==!0;){if(bg(b=w.value(h,b)))return ypt(f,h,b);w=f.next()}return b},ypt=async(f,h,b)=>{let w=await b,m=f.next();for(;m.done!==!0;)w=await m.value(h,w),m=f.next();return w},pVt=(f,h)=>{const b=f._activations;return b.hasKey(h)?b.get(h).values():[].values()},wVt=f=>{const h=[f];let b=f.parent;for(;b!==null;)h.push(b),b=b.parent;return{next:()=>{const w=h.pop();return w!==void 0?{done:!1,value:w}:{done:!0,value:void 0}}}},I3=(f,h)=>{const b=f.parentRequest;return b!==null&&(!!h(b)||I3(b,h))},AL=f=>h=>{const b=w=>w!==null&&w.target!==null&&w.target.matchesTag(f)(h);return b.metaData=new lA(f,h),b},IY=AL(wm),qme=f=>h=>{let b=null;if(h!==null){if(b=h.bindings[0],typeof f=="string")return b.serviceIdentifier===f;{const w=h.bindings[0].implementationType;return f===w}}return!1};class NX{_binding;constructor(h){this._binding=h}when(h){return this._binding.constraint=h,new ph(this._binding)}whenTargetNamed(h){return this._binding.constraint=IY(h),new ph(this._binding)}whenTargetIsDefault(){return this._binding.constraint=h=>h===null?!1:h.target!==null&&!h.target.isNamed()&&!h.target.isTagged(),new ph(this._binding)}whenTargetTagged(h,b){return this._binding.constraint=AL(h)(b),new ph(this._binding)}whenInjectedInto(h){return this._binding.constraint=b=>b!==null&&qme(h)(b.parentRequest),new ph(this._binding)}whenParentNamed(h){return this._binding.constraint=b=>b!==null&&IY(h)(b.parentRequest),new ph(this._binding)}whenParentTagged(h,b){return this._binding.constraint=w=>w!==null&&AL(h)(b)(w.parentRequest),new ph(this._binding)}whenAnyAncestorIs(h){return this._binding.constraint=b=>b!==null&&I3(b,qme(h)),new ph(this._binding)}whenNoAncestorIs(h){return this._binding.constraint=b=>b!==null&&!I3(b,qme(h)),new ph(this._binding)}whenAnyAncestorNamed(h){return this._binding.constraint=b=>b!==null&&I3(b,IY(h)),new ph(this._binding)}whenNoAncestorNamed(h){return this._binding.constraint=b=>b!==null&&!I3(b,IY(h)),new ph(this._binding)}whenAnyAncestorTagged(h,b){return this._binding.constraint=w=>w!==null&&I3(w,AL(h)(b)),new ph(this._binding)}whenNoAncestorTagged(h,b){return this._binding.constraint=w=>w!==null&&!I3(w,AL(h)(b)),new ph(this._binding)}whenAnyAncestorMatches(h){return this._binding.constraint=b=>b!==null&&I3(b,h),new ph(this._binding)}whenNoAncestorMatches(h){return this._binding.constraint=b=>b!==null&&!I3(b,h),new ph(this._binding)}}class ph{_binding;constructor(h){this._binding=h}onActivation(h){return this._binding.onActivation=h,new NX(this._binding)}onDeactivation(h){return this._binding.onDeactivation=h,new NX(this._binding)}}class T3{_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(h){this._binding=h,this._bindingWhenSyntax=new NX(this._binding),this._bindingOnSyntax=new ph(this._binding)}when(h){return this._bindingWhenSyntax.when(h)}whenTargetNamed(h){return this._bindingWhenSyntax.whenTargetNamed(h)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(h,b){return this._bindingWhenSyntax.whenTargetTagged(h,b)}whenInjectedInto(h){return this._bindingWhenSyntax.whenInjectedInto(h)}whenParentNamed(h){return this._bindingWhenSyntax.whenParentNamed(h)}whenParentTagged(h,b){return this._bindingWhenSyntax.whenParentTagged(h,b)}whenAnyAncestorIs(h){return this._bindingWhenSyntax.whenAnyAncestorIs(h)}whenNoAncestorIs(h){return this._bindingWhenSyntax.whenNoAncestorIs(h)}whenAnyAncestorNamed(h){return this._bindingWhenSyntax.whenAnyAncestorNamed(h)}whenAnyAncestorTagged(h,b){return this._bindingWhenSyntax.whenAnyAncestorTagged(h,b)}whenNoAncestorNamed(h){return this._bindingWhenSyntax.whenNoAncestorNamed(h)}whenNoAncestorTagged(h,b){return this._bindingWhenSyntax.whenNoAncestorTagged(h,b)}whenAnyAncestorMatches(h){return this._bindingWhenSyntax.whenAnyAncestorMatches(h)}whenNoAncestorMatches(h){return this._bindingWhenSyntax.whenNoAncestorMatches(h)}onActivation(h){return this._bindingOnSyntax.onActivation(h)}onDeactivation(h){return this._bindingOnSyntax.onDeactivation(h)}}class mVt{_binding;constructor(h){this._binding=h}inRequestScope(){return this._binding.scope=nl.Request,new T3(this._binding)}inSingletonScope(){return this._binding.scope=nl.Singleton,new T3(this._binding)}inTransientScope(){return this._binding.scope=nl.Transient,new T3(this._binding)}}class Lht{_bindingInSyntax;_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(h){this._binding=h,this._bindingWhenSyntax=new NX(this._binding),this._bindingOnSyntax=new ph(this._binding),this._bindingInSyntax=new mVt(h)}inRequestScope(){return this._bindingInSyntax.inRequestScope()}inSingletonScope(){return this._bindingInSyntax.inSingletonScope()}inTransientScope(){return this._bindingInSyntax.inTransientScope()}when(h){return this._bindingWhenSyntax.when(h)}whenTargetNamed(h){return this._bindingWhenSyntax.whenTargetNamed(h)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(h,b){return this._bindingWhenSyntax.whenTargetTagged(h,b)}whenInjectedInto(h){return this._bindingWhenSyntax.whenInjectedInto(h)}whenParentNamed(h){return this._bindingWhenSyntax.whenParentNamed(h)}whenParentTagged(h,b){return this._bindingWhenSyntax.whenParentTagged(h,b)}whenAnyAncestorIs(h){return this._bindingWhenSyntax.whenAnyAncestorIs(h)}whenNoAncestorIs(h){return this._bindingWhenSyntax.whenNoAncestorIs(h)}whenAnyAncestorNamed(h){return this._bindingWhenSyntax.whenAnyAncestorNamed(h)}whenAnyAncestorTagged(h,b){return this._bindingWhenSyntax.whenAnyAncestorTagged(h,b)}whenNoAncestorNamed(h){return this._bindingWhenSyntax.whenNoAncestorNamed(h)}whenNoAncestorTagged(h,b){return this._bindingWhenSyntax.whenNoAncestorTagged(h,b)}whenAnyAncestorMatches(h){return this._bindingWhenSyntax.whenAnyAncestorMatches(h)}whenNoAncestorMatches(h){return this._bindingWhenSyntax.whenNoAncestorMatches(h)}onActivation(h){return this._bindingOnSyntax.onActivation(h)}onDeactivation(h){return this._bindingOnSyntax.onDeactivation(h)}}class vVt{_binding;constructor(h){this._binding=h}to(h){return this._binding.type=Ys.Instance,this._binding.implementationType=h,new Lht(this._binding)}toSelf(){if(typeof this._binding.serviceIdentifier!="function")throw new Error("The toSelf function can only be applied when a constructor is used as service identifier");const h=this._binding.serviceIdentifier;return this.to(h)}toConstantValue(h){return this._binding.type=Ys.ConstantValue,this._binding.cache=h,this._binding.dynamicValue=null,this._binding.implementationType=null,this._binding.scope=nl.Singleton,new T3(this._binding)}toDynamicValue(h){return this._binding.type=Ys.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=h,this._binding.implementationType=null,new Lht(this._binding)}toConstructor(h){return this._binding.type=Ys.Constructor,this._binding.implementationType=h,this._binding.scope=nl.Singleton,new T3(this._binding)}toFactory(h){return this._binding.type=Ys.Factory,this._binding.factory=h,this._binding.scope=nl.Singleton,new T3(this._binding)}toFunction(h){if(typeof h!="function")throw new Error("Value provided to function binding must be a function!");const b=this.toConstantValue(h);return this._binding.type=Ys.Function,this._binding.scope=nl.Singleton,b}toAutoFactory(h){return this._binding.type=Ys.Factory,this._binding.factory=b=>()=>b.container.get(h),this._binding.scope=nl.Singleton,new T3(this._binding)}toAutoNamedFactory(h){return this._binding.type=Ys.Factory,this._binding.factory=b=>w=>b.container.getNamed(h,w),new T3(this._binding)}toProvider(h){return this._binding.type=Ys.Provider,this._binding.provider=h,this._binding.scope=nl.Singleton,new T3(this._binding)}toService(h){this._binding.type=Ys.DynamicValue,Object.defineProperty(this._binding,"cache",{configurable:!0,enumerable:!0,get:()=>null,set(b){}}),this._binding.dynamicValue=b=>{try{return b.container.get(h)}catch{return b.container.getAsync(h)}},this._binding.implementationType=null}}class Iye{bindings;activations;deactivations;middleware;moduleActivationStore;static of(h,b,w,m,P){const g=new Iye;return g.bindings=h,g.middleware=b,g.deactivations=m,g.activations=w,g.moduleActivationStore=P,g}}class j3{_map;constructor(){this._map=new Map}getMap(){return this._map}add(h,b){if(this._checkNonNulish(h),b==null)throw new Error(Iht);const w=this._map.get(h);w!==void 0?w.push(b):this._map.set(h,[b])}get(h){this._checkNonNulish(h);const b=this._map.get(h);if(b!==void 0)return b;throw new Error(Tht)}remove(h){if(this._checkNonNulish(h),!this._map.delete(h))throw new Error(Tht)}removeIntersection(h){this.traverse(((b,w)=>{const m=h.hasKey(b)?h.get(b):void 0;if(m!==void 0){const P=w.filter((g=>!m.some((E=>g===E))));this._setValue(b,P)}}))}removeByCondition(h){const b=[];return this._map.forEach(((w,m)=>{const P=[];for(const g of w)h(g)?b.push(g):P.push(g);this._setValue(m,P)})),b}hasKey(h){return this._checkNonNulish(h),this._map.has(h)}clone(){const h=new j3;return this._map.forEach(((b,w)=>{b.forEach((m=>{var P;h.add(w,typeof(P=m)=="object"&&P!==null&&"clone"in P&&typeof P.clone=="function"?m.clone():m)}))})),h}traverse(h){this._map.forEach(((b,w)=>{h(w,b)}))}_checkNonNulish(h){if(h==null)throw new Error(Iht)}_setValue(h,b){b.length>0?this._map.set(h,b):this._map.delete(h)}}class Tye{_map=new Map;remove(h){const b=this._map.get(h);return b===void 0?this._getEmptyHandlersStore():(this._map.delete(h),b)}addDeactivation(h,b,w){this._getModuleActivationHandlers(h).onDeactivations.add(b,w)}addActivation(h,b,w){this._getModuleActivationHandlers(h).onActivations.add(b,w)}clone(){const h=new Tye;return this._map.forEach(((b,w)=>{h._map.set(w,{onActivations:b.onActivations.clone(),onDeactivations:b.onDeactivations.clone()})})),h}_getModuleActivationHandlers(h){let b=this._map.get(h);return b===void 0&&(b=this._getEmptyHandlersStore(),this._map.set(h,b)),b}_getEmptyHandlersStore(){return{onActivations:new j3,onDeactivations:new j3}}}class FX{id;parent;options;_middleware;_bindingDictionary;_activations;_deactivations;_snapshots;_metadataReader;_moduleActivationStore;constructor(h){const b=h||{};if(typeof b!="object")throw new Error("Invalid Container constructor argument. Container options must be an object.");if(b.defaultScope===void 0)b.defaultScope=nl.Transient;else if(b.defaultScope!==nl.Singleton&&b.defaultScope!==nl.Transient&&b.defaultScope!==nl.Request)throw new Error('Invalid Container option. Default scope must be a string ("singleton" or "transient").');if(b.autoBindInjectable===void 0)b.autoBindInjectable=!1;else if(typeof b.autoBindInjectable!="boolean")throw new Error("Invalid Container option. Auto bind injectable must be a boolean");if(b.skipBaseClassChecks===void 0)b.skipBaseClassChecks=!1;else if(typeof b.skipBaseClassChecks!="boolean")throw new Error("Invalid Container option. Skip base check must be a boolean");this.options={autoBindInjectable:b.autoBindInjectable,defaultScope:b.defaultScope,skipBaseClassChecks:b.skipBaseClassChecks},this.id=XL(),this._bindingDictionary=new j3,this._snapshots=[],this._middleware=null,this._activations=new j3,this._deactivations=new j3,this.parent=null,this._metadataReader=new nVt,this._moduleActivationStore=new Tye}static merge(h,b,...w){const m=new FX,P=[h,b,...w].map((E=>LX(E))),g=LX(m);return P.forEach((E=>{var C;C=g,E.traverse(((T,M)=>{M.forEach((_=>{C.add(_.serviceIdentifier,_.clone())}))}))})),m}load(...h){const b=this._getContainerModuleHelpersFactory();for(const w of h){const m=b(w.id);w.registry(m.bindFunction,m.unbindFunction,m.isboundFunction,m.rebindFunction,m.unbindAsyncFunction,m.onActivationFunction,m.onDeactivationFunction)}}async loadAsync(...h){const b=this._getContainerModuleHelpersFactory();for(const w of h){const m=b(w.id);await w.registry(m.bindFunction,m.unbindFunction,m.isboundFunction,m.rebindFunction,m.unbindAsyncFunction,m.onActivationFunction,m.onDeactivationFunction)}}unload(...h){h.forEach((b=>{const w=this._removeModuleBindings(b.id);this._deactivateSingletons(w),this._removeModuleHandlers(b.id)}))}async unloadAsync(...h){for(const b of h){const w=this._removeModuleBindings(b.id);await this._deactivateSingletonsAsync(w),this._removeModuleHandlers(b.id)}}bind(h){return this._bind(this._buildBinding(h))}rebind(h){return this.unbind(h),this.bind(h)}async rebindAsync(h){return await this.unbindAsync(h),this.bind(h)}unbind(h){if(this._bindingDictionary.hasKey(h)){const b=this._bindingDictionary.get(h);this._deactivateSingletons(b)}this._removeServiceFromDictionary(h)}async unbindAsync(h){if(this._bindingDictionary.hasKey(h)){const b=this._bindingDictionary.get(h);await this._deactivateSingletonsAsync(b)}this._removeServiceFromDictionary(h)}unbindAll(){this._bindingDictionary.traverse(((h,b)=>{this._deactivateSingletons(b)})),this._bindingDictionary=new j3}async unbindAllAsync(){const h=[];this._bindingDictionary.traverse(((b,w)=>{h.push(this._deactivateSingletonsAsync(w))})),await Promise.all(h),this._bindingDictionary=new j3}onActivation(h,b){this._activations.add(h,b)}onDeactivation(h,b){this._deactivations.add(h,b)}isBound(h){let b=this._bindingDictionary.hasKey(h);return!b&&this.parent&&(b=this.parent.isBound(h)),b}isCurrentBound(h){return this._bindingDictionary.hasKey(h)}isBoundNamed(h,b){return this.isBoundTagged(h,wm,b)}isBoundTagged(h,b,w){let m=!1;if(this._bindingDictionary.hasKey(h)){const P=this._bindingDictionary.get(h),g=(function(E,C,T){const M=wpt(C,T),_=oJ(M);if(_.kind===wg.unmanaged)throw new Error("Unexpected metadata when creating target");const I=new xX("",_,"Variable"),O=new bpt(E);return new JL(C,O,null,[],I)})(this,h,{customTag:{key:b,value:w},isMultiInject:!1});m=P.some((E=>E.constraint(g)))}return!m&&this.parent&&(m=this.parent.isBoundTagged(h,b,w)),m}snapshot(){this._snapshots.push(Iye.of(this._bindingDictionary.clone(),this._middleware,this._activations.clone(),this._deactivations.clone(),this._moduleActivationStore.clone()))}restore(){const h=this._snapshots.pop();if(h===void 0)throw new Error("No snapshot available to restore.");this._bindingDictionary=h.bindings,this._activations=h.activations,this._deactivations=h.deactivations,this._middleware=h.middleware,this._moduleActivationStore=h.moduleActivationStore}createChild(h){const b=new FX(h||this.options);return b.parent=this,b}applyMiddleware(...h){const b=this._middleware?this._middleware:this._planAndResolve();this._middleware=h.reduce(((w,m)=>m(w)),b)}applyCustomMetadataReader(h){this._metadataReader=h}get(h){const b=this._getNotAllArgs(h,!1,!1);return this._getButThrowIfAsync(b)}async getAsync(h){const b=this._getNotAllArgs(h,!1,!1);return this._get(b)}getTagged(h,b,w){const m=this._getNotAllArgs(h,!1,!1,b,w);return this._getButThrowIfAsync(m)}async getTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!1,!1,b,w);return this._get(m)}getNamed(h,b){return this.getTagged(h,wm,b)}async getNamedAsync(h,b){return this.getTaggedAsync(h,wm,b)}getAll(h,b){const w=this._getAllArgs(h,b,!1);return this._getButThrowIfAsync(w)}async getAllAsync(h,b){const w=this._getAllArgs(h,b,!1);return this._getAll(w)}getAllTagged(h,b,w){const m=this._getNotAllArgs(h,!0,!1,b,w);return this._getButThrowIfAsync(m)}async getAllTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!0,!1,b,w);return this._getAll(m)}getAllNamed(h,b){return this.getAllTagged(h,wm,b)}async getAllNamedAsync(h,b){return this.getAllTaggedAsync(h,wm,b)}resolve(h){const b=this.isBound(h);b||this.bind(h).toSelf();const w=this.get(h);return b||this.unbind(h),w}tryGet(h){const b=this._getNotAllArgs(h,!1,!0);return this._getButThrowIfAsync(b)}async tryGetAsync(h){const b=this._getNotAllArgs(h,!1,!0);return this._get(b)}tryGetTagged(h,b,w){const m=this._getNotAllArgs(h,!1,!0,b,w);return this._getButThrowIfAsync(m)}async tryGetTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!1,!0,b,w);return this._get(m)}tryGetNamed(h,b){return this.tryGetTagged(h,wm,b)}async tryGetNamedAsync(h,b){return this.tryGetTaggedAsync(h,wm,b)}tryGetAll(h,b){const w=this._getAllArgs(h,b,!0);return this._getButThrowIfAsync(w)}async tryGetAllAsync(h,b){const w=this._getAllArgs(h,b,!0);return this._getAll(w)}tryGetAllTagged(h,b,w){const m=this._getNotAllArgs(h,!0,!0,b,w);return this._getButThrowIfAsync(m)}async tryGetAllTaggedAsync(h,b,w){const m=this._getNotAllArgs(h,!0,!0,b,w);return this._getAll(m)}tryGetAllNamed(h,b){return this.tryGetAllTagged(h,wm,b)}async tryGetAllNamedAsync(h,b){return this.tryGetAllTaggedAsync(h,wm,b)}_preDestroy(h,b){if(h!==void 0&&Reflect.hasMetadata(jve,h)){const w=Reflect.getMetadata(jve,h);return b[w.value]?.()}}_removeModuleHandlers(h){const b=this._moduleActivationStore.remove(h);this._activations.removeIntersection(b.onActivations),this._deactivations.removeIntersection(b.onDeactivations)}_removeModuleBindings(h){return this._bindingDictionary.removeByCondition((b=>b.moduleId===h))}_deactivate(h,b){const w=b==null?void 0:Object.getPrototypeOf(b).constructor;try{if(this._deactivations.hasKey(h.serviceIdentifier)){const P=this._deactivateContainer(b,this._deactivations.get(h.serviceIdentifier).values());if(bg(P))return this._handleDeactivationError(P.then((async()=>this._propagateContainerDeactivationThenBindingAndPreDestroyAsync(h,b,w))),h.serviceIdentifier)}const m=this._propagateContainerDeactivationThenBindingAndPreDestroy(h,b,w);if(bg(m))return this._handleDeactivationError(m,h.serviceIdentifier)}catch(m){if(m instanceof Error)throw new Error(Ave(bS(h.serviceIdentifier),m.message))}}async _handleDeactivationError(h,b){try{await h}catch(w){if(w instanceof Error)throw new Error(Ave(bS(b),w.message))}}_deactivateContainer(h,b){let w=b.next();for(;typeof w.value=="function";){const m=w.value(h);if(bg(m))return m.then((async()=>this._deactivateContainerAsync(h,b)));w=b.next()}}async _deactivateContainerAsync(h,b){let w=b.next();for(;typeof w.value=="function";)await w.value(h),w=b.next()}_getContainerModuleHelpersFactory(){const h=C=>T=>{const M=this._buildBinding(T);return M.moduleId=C,this._bind(M)},b=()=>C=>{this.unbind(C)},w=()=>async C=>this.unbindAsync(C),m=()=>C=>this.isBound(C),P=C=>{const T=h(C);return M=>(this.unbind(M),T(M))},g=C=>(T,M)=>{this._moduleActivationStore.addActivation(C,T,M),this.onActivation(T,M)},E=C=>(T,M)=>{this._moduleActivationStore.addDeactivation(C,T,M),this.onDeactivation(T,M)};return C=>({bindFunction:h(C),isboundFunction:m(),onActivationFunction:g(C),onDeactivationFunction:E(C),rebindFunction:P(C),unbindAsyncFunction:w(),unbindFunction:b()})}_bind(h){return this._bindingDictionary.add(h.serviceIdentifier,h),new vVt(h)}_buildBinding(h){const b=this.options.defaultScope||nl.Transient;return new Mye(h,b)}async _getAll(h){return Promise.all(this._get(h))}_get(h){const b={...h,contextInterceptor:w=>w,targetType:upt.Variable};if(this._middleware){const w=this._middleware(b);if(w==null)throw new Error("Invalid return type in middleware. Middleware must return!");return w}return this._planAndResolve()(b)}_getButThrowIfAsync(h){const b=this._get(h);if(vpt(b))throw new Error(`You are attempting to construct ${(function(w){return typeof w=="function"?`[function/class ${w.name||""}]`:typeof w=="symbol"?w.toString():`'${w}'`})(h.serviceIdentifier)} in a synchronous way but it has asynchronous dependencies.`);return b}_getAllArgs(h,b,w){return{avoidConstraints:!b?.enforceBindingConstraints,isMultiInject:!0,isOptional:w,serviceIdentifier:h}}_getNotAllArgs(h,b,w,m,P){return{avoidConstraints:!1,isMultiInject:b,isOptional:w,key:m,serviceIdentifier:h,value:P}}_getPlanMetadataFromNextArgs(h){const b={isMultiInject:h.isMultiInject};return h.key!==void 0&&(b.customTag={key:h.key,value:h.value}),h.isOptional===!0&&(b.isOptional=!0),b}_planAndResolve(){return h=>{let b=rVt(this._metadataReader,this,h.targetType,h.serviceIdentifier,this._getPlanMetadataFromNextArgs(h),h.avoidConstraints);return b=h.contextInterceptor(b),(function(m){return Cye(m.plan.rootRequest.requestScope)(m.plan.rootRequest)})(b)}}_deactivateIfSingleton(h){if(h.activated)return bg(h.cache)?h.cache.then((b=>this._deactivate(h,b))):this._deactivate(h,h.cache)}_deactivateSingletons(h){for(const b of h)if(bg(this._deactivateIfSingleton(b)))throw new Error("Attempting to unbind dependency with asynchronous destruction (@preDestroy or onDeactivation)")}async _deactivateSingletonsAsync(h){await Promise.all(h.map((async b=>this._deactivateIfSingleton(b))))}_propagateContainerDeactivationThenBindingAndPreDestroy(h,b,w){return this.parent?this._deactivate.bind(this.parent)(h,b):this._bindingDeactivationAndPreDestroy(h,b,w)}async _propagateContainerDeactivationThenBindingAndPreDestroyAsync(h,b,w){this.parent?await this._deactivate.bind(this.parent)(h,b):await this._bindingDeactivationAndPreDestroyAsync(h,b,w)}_removeServiceFromDictionary(h){try{this._bindingDictionary.remove(h)}catch{throw new Error(`Could not unbind serviceIdentifier: ${bS(h)}`)}}_bindingDeactivationAndPreDestroy(h,b,w){if(typeof h.onDeactivation=="function"){const m=h.onDeactivation(b);if(bg(m))return m.then((()=>this._preDestroy(w,b)))}return this._preDestroy(w,b)}async _bindingDeactivationAndPreDestroyAsync(h,b,w){typeof h.onDeactivation=="function"&&await h.onDeactivation(b),await this._preDestroy(w,b)}}class xf{id;registry;constructor(h){this.id=XL(),this.registry=h}}function yVt(f,h,b,w){(function(m){if(m!==void 0)throw new Error(lpt)})(h),_pt(opt,f,b.toString(),w)}function _Vt(f){let h=[];if(Array.isArray(f)){h=f;const b=(function(w){const m=new Set;for(const P of w){if(m.has(P))return P;m.add(P)}})(h.map((w=>w.key)));if(b!==void 0)throw new Error(`${apt} ${b.toString()}`)}else h=[f];return h}function _pt(f,h,b,w){const m=_Vt(w);let P={};Reflect.hasOwnMetadata(f,h)&&(P=Reflect.getMetadata(f,h));let g=P[b];if(g===void 0)g=[];else for(const E of g)if(m.some((C=>C.key===E.key)))throw new Error(`${apt} ${E.key.toString()}`);g.push(...m),P[b]=g,Reflect.defineMetadata(f,P,h)}function Ept(f){return(h,b,w)=>{typeof w=="number"?yVt(h,b,w,f):(function(m,P,g){if(m.prototype!==void 0)throw new Error(lpt);_pt(cpt,m.constructor,P,g)})(h,b,f)}}function vr(){return function(f){if(Reflect.hasOwnMetadata(Mht,f))throw new Error("Cannot apply @injectable decorator multiple times.");const h=Reflect.getMetadata(spt,f)||[];return Reflect.defineMetadata(Mht,h,f),f}}function Spt(f){return h=>(b,w,m)=>{if(h===void 0){const P=typeof b=="function"?b.name:b.constructor.name;throw new Error(`@inject called with undefined this could mean that the class ${P} has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation.`)}Ept(new lA(f,h))(b,w,m)}}const Et=Spt(ipt);function EVt(){return Ept(new lA(npt,!0))}const cJ=Spt(rpt);var d3={},vM={},Nht;function jye(){if(Nht)return vM;Nht=1,Object.defineProperty(vM,"__esModule",{value:!0}),vM.isLabeledAction=vM.LabeledAction=void 0;class f{constructor(w,m,P){this.label=w,this.actions=m,this.icon=P}}vM.LabeledAction=f;function h(b){return b!==void 0&&b.label!==void 0&&b.actions!==void 0}return vM.isLabeledAction=h,vM}var Qv={},g3={},Hme={},TY={},Fht;function SVt(){if(Fht)return TY;Fht=1,Object.defineProperty(TY,"__esModule",{value:!0}),TY.stringifyServiceIdentifier=f;function f(h){switch(typeof h){case"string":case"symbol":return h.toString();case"function":return h.name;default:throw new Error(`Unexpected ${typeof h} service id type`)}}return TY}var zme={},Bht;function PVt(){return Bht||(Bht=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.LazyServiceIdentifier=f.islazyServiceIdentifierSymbol=void 0,f.islazyServiceIdentifierSymbol=Symbol.for("@inversifyjs/common/islazyServiceIdentifier");class h{[f.islazyServiceIdentifierSymbol];#e;constructor(w){this.#e=w,this[f.islazyServiceIdentifierSymbol]=!0}static is(w){return typeof w=="object"&&w!==null&&w[f.islazyServiceIdentifierSymbol]===!0}unwrap(){return this.#e()}}f.LazyServiceIdentifier=h})(zme)),zme}var $ht;function Ove(){return $ht||($ht=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.stringifyServiceIdentifier=f.LazyServiceIdentifier=void 0;const h=SVt();Object.defineProperty(f,"stringifyServiceIdentifier",{enumerable:!0,get:function(){return h.stringifyServiceIdentifier}});const b=PVt();Object.defineProperty(f,"LazyServiceIdentifier",{enumerable:!0,get:function(){return b.LazyServiceIdentifier}})})(Hme)),Hme}var Vme={},Kht;function Lf(){return Kht||(Kht=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.NON_CUSTOM_TAG_KEYS=f.PRE_DESTROY=f.POST_CONSTRUCT=f.DESIGN_PARAM_TYPES=f.PARAM_TYPES=f.TAGGED_PROP=f.TAGGED=f.MULTI_INJECT_TAG=f.INJECT_TAG=f.OPTIONAL_TAG=f.UNMANAGED_TAG=f.NAME_TAG=f.NAMED_TAG=void 0,f.NAMED_TAG="named",f.NAME_TAG="name",f.UNMANAGED_TAG="unmanaged",f.OPTIONAL_TAG="optional",f.INJECT_TAG="inject",f.MULTI_INJECT_TAG="multi_inject",f.TAGGED="inversify:tagged",f.TAGGED_PROP="inversify:tagged_props",f.PARAM_TYPES="inversify:paramtypes",f.DESIGN_PARAM_TYPES="design:paramtypes",f.POST_CONSTRUCT="post_construct",f.PRE_DESTROY="pre_destroy";function h(){return[f.INJECT_TAG,f.MULTI_INJECT_TAG,f.NAME_TAG,f.UNMANAGED_TAG,f.NAMED_TAG,f.OPTIONAL_TAG]}f.NON_CUSTOM_TAG_KEYS=h()})(Vme)),Vme}var rm={},Wx={},b3={},qht;function Py(){if(qht)return b3;qht=1,Object.defineProperty(b3,"__esModule",{value:!0}),b3.TargetTypeEnum=b3.BindingTypeEnum=b3.BindingScopeEnum=void 0;const f={Request:"Request",Singleton:"Singleton",Transient:"Transient"};b3.BindingScopeEnum=f;const h={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"};b3.BindingTypeEnum=h;const b={ClassProperty:"ClassProperty",ConstructorArgument:"ConstructorArgument",Variable:"Variable"};return b3.TargetTypeEnum=b,b3}var jY={},Hht;function vA(){if(Hht)return jY;Hht=1,Object.defineProperty(jY,"__esModule",{value:!0}),jY.id=h;let f=0;function h(){return f++}return jY}var zht;function MVt(){if(zht)return Wx;zht=1,Object.defineProperty(Wx,"__esModule",{value:!0}),Wx.Binding=void 0;const f=Py(),h=vA();class b{id;moduleId;activated;serviceIdentifier;implementationType;cache;dynamicValue;scope;type;factory;provider;constraint;onActivation;onDeactivation;constructor(m,P){this.id=(0,h.id)(),this.activated=!1,this.serviceIdentifier=m,this.scope=P,this.type=f.BindingTypeEnum.Invalid,this.constraint=g=>!0,this.implementationType=null,this.cache=null,this.factory=null,this.provider=null,this.onActivation=null,this.onDeactivation=null,this.dynamicValue=null}clone(){const m=new b(this.serviceIdentifier,this.scope);return m.activated=m.scope===f.BindingScopeEnum.Singleton?this.activated:!1,m.implementationType=this.implementationType,m.dynamicValue=this.dynamicValue,m.scope=this.scope,m.type=this.type,m.factory=this.factory,m.provider=this.provider,m.constraint=this.constraint,m.onActivation=this.onActivation,m.onDeactivation=this.onDeactivation,m.cache=this.cache,m}}return Wx.Binding=b,Wx}var Oi={},Vht;function vg(){if(Vht)return Oi;Vht=1,Object.defineProperty(Oi,"__esModule",{value:!0}),Oi.STACK_OVERFLOW=Oi.CIRCULAR_DEPENDENCY_IN_FACTORY=Oi.ON_DEACTIVATION_ERROR=Oi.PRE_DESTROY_ERROR=Oi.POST_CONSTRUCT_ERROR=Oi.ASYNC_UNBIND_REQUIRED=Oi.MULTIPLE_POST_CONSTRUCT_METHODS=Oi.MULTIPLE_PRE_DESTROY_METHODS=Oi.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK=Oi.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE=Oi.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE=Oi.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT=Oi.ARGUMENTS_LENGTH_MISMATCH=Oi.INVALID_DECORATOR_OPERATION=Oi.INVALID_TO_SELF_VALUE=Oi.LAZY_IN_SYNC=Oi.INVALID_FUNCTION_BINDING=Oi.INVALID_MIDDLEWARE_RETURN=Oi.NO_MORE_SNAPSHOTS_AVAILABLE=Oi.INVALID_BINDING_TYPE=Oi.CIRCULAR_DEPENDENCY=Oi.UNDEFINED_INJECT_ANNOTATION=Oi.TRYING_TO_RESOLVE_BINDINGS=Oi.NOT_REGISTERED=Oi.CANNOT_UNBIND=Oi.AMBIGUOUS_MATCH=Oi.KEY_NOT_FOUND=Oi.NULL_ARGUMENT=Oi.DUPLICATED_METADATA=Oi.DUPLICATED_INJECTABLE_DECORATOR=void 0,Oi.DUPLICATED_INJECTABLE_DECORATOR="Cannot apply @injectable decorator multiple times.",Oi.DUPLICATED_METADATA="Metadata key was used more than once in a parameter:",Oi.NULL_ARGUMENT="NULL argument",Oi.KEY_NOT_FOUND="Key Not Found",Oi.AMBIGUOUS_MATCH="Ambiguous match found for serviceIdentifier:",Oi.CANNOT_UNBIND="Could not unbind serviceIdentifier:",Oi.NOT_REGISTERED="No matching bindings found for serviceIdentifier:";const f=T=>`Trying to resolve bindings for "${T}"`;Oi.TRYING_TO_RESOLVE_BINDINGS=f;const h=T=>`@inject called with undefined this could mean that the class ${T} has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation.`;Oi.UNDEFINED_INJECT_ANNOTATION=h,Oi.CIRCULAR_DEPENDENCY="Circular dependency found:",Oi.INVALID_BINDING_TYPE="Invalid binding type:",Oi.NO_MORE_SNAPSHOTS_AVAILABLE="No snapshot available to restore.",Oi.INVALID_MIDDLEWARE_RETURN="Invalid return type in middleware. Middleware must return!",Oi.INVALID_FUNCTION_BINDING="Value provided to function binding must be a function!";const b=T=>`You are attempting to construct ${C(T)} in a synchronous way but it has asynchronous dependencies.`;Oi.LAZY_IN_SYNC=b,Oi.INVALID_TO_SELF_VALUE="The toSelf function can only be applied when a constructor is used as service identifier",Oi.INVALID_DECORATOR_OPERATION="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.";const w=T=>`The number of constructor arguments in the derived class ${T} must be >= than the number of constructor arguments of its base class.`;Oi.ARGUMENTS_LENGTH_MISMATCH=w,Oi.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT="Invalid Container constructor argument. Container options must be an object.",Oi.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE='Invalid Container option. Default scope must be a string ("singleton" or "transient").',Oi.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE="Invalid Container option. Auto bind injectable must be a boolean",Oi.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK="Invalid Container option. Skip base check must be a boolean",Oi.MULTIPLE_PRE_DESTROY_METHODS="Cannot apply @preDestroy decorator multiple times in the same class",Oi.MULTIPLE_POST_CONSTRUCT_METHODS="Cannot apply @postConstruct decorator multiple times in the same class",Oi.ASYNC_UNBIND_REQUIRED="Attempting to unbind dependency with asynchronous destruction (@preDestroy or onDeactivation)";const m=(T,M)=>`@postConstruct error in class ${T}: ${M}`;Oi.POST_CONSTRUCT_ERROR=m;const P=(T,M)=>`@preDestroy error in class ${T}: ${M}`;Oi.PRE_DESTROY_ERROR=P;const g=(T,M)=>`onDeactivation() error in class ${T}: ${M}`;Oi.ON_DEACTIVATION_ERROR=g;const E=(T,M)=>`It looks like there is a circular dependency in one of the '${T}' bindings. Please investigate bindings with service identifier '${M}'.`;Oi.CIRCULAR_DEPENDENCY_IN_FACTORY=E,Oi.STACK_OVERFLOW="Maximum call stack size exceeded";function C(T){return typeof T=="function"?`[function/class ${T.name||""}]`:typeof T=="symbol"?T.toString():`'${T}'`}return Oi}var om={},Ght;function Ppt(){if(Ght)return om;Ght=1;var f=om&&om.__createBinding||(Object.create?(function(P,g,E,C){C===void 0&&(C=E);var T=Object.getOwnPropertyDescriptor(g,E);(!T||("get"in T?!g.__esModule:T.writable||T.configurable))&&(T={enumerable:!0,get:function(){return g[E]}}),Object.defineProperty(P,C,T)}):(function(P,g,E,C){C===void 0&&(C=E),P[C]=g[E]})),h=om&&om.__setModuleDefault||(Object.create?(function(P,g){Object.defineProperty(P,"default",{enumerable:!0,value:g})}):function(P,g){P.default=g}),b=om&&om.__importStar||(function(){var P=function(g){return P=Object.getOwnPropertyNames||function(E){var C=[];for(var T in E)Object.prototype.hasOwnProperty.call(E,T)&&(C[C.length]=T);return C},P(g)};return function(g){if(g&&g.__esModule)return g;var E={};if(g!=null)for(var C=P(g),T=0;T0)throw new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,`Found unexpected missing metadata on type "${w.name}" at constructor indexes "${P.join('", "')}". - -Are you using @inject, @multiInject or @unmanaged decorators at those indexes? - -If you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}return RY}var xY={},Jx={},edt;function yA(){if(edt)return Jx;edt=1,Object.defineProperty(Jx,"__esModule",{value:!0}),Jx.ClassElementMetadataKind=void 0;var f;return(function(h){h[h.multipleInjection=0]="multipleInjection",h[h.singleInjection=1]="singleInjection",h[h.unmanaged=2]="unmanaged"})(f||(Jx.ClassElementMetadataKind=f={})),Jx}var tdt;function Ipt(){if(tdt)return xY;tdt=1,Object.defineProperty(xY,"__esModule",{value:!0}),xY.getClassElementMetadataFromNewable=h;const f=yA();function h(b){return{kind:f.ClassElementMetadataKind.singleInjection,name:void 0,optional:!1,tags:new Map,targetName:void 0,value:b}}return xY}var LY={},NY={},ndt;function Aye(){if(ndt)return NY;ndt=1,Object.defineProperty(NY,"__esModule",{value:!0}),NY.getClassElementMetadataFromLegacyMetadata=m;const f=sJ(),h=uJ(),b=xM(),w=yA();function m(g){const E=g.find(j=>j.key===b.INJECT_TAG),C=g.find(j=>j.key===b.MULTI_INJECT_TAG);if(g.find(j=>j.key===b.UNMANAGED_TAG)!==void 0)return P(E,C);if(C===void 0&&E===void 0)throw new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,"Expected @inject, @multiInject or @unmanaged metadata");const M=g.find(j=>j.key===b.NAMED_TAG),_=g.find(j=>j.key===b.OPTIONAL_TAG),I=g.find(j=>j.key===b.NAME_TAG);return{kind:E===void 0?w.ClassElementMetadataKind.multipleInjection:w.ClassElementMetadataKind.singleInjection,name:M?.value,optional:_!==void 0,tags:new Map(g.filter(j=>b.NON_CUSTOM_TAG_KEYS.every(k=>j.key!==k)).map(j=>[j.key,j.value])),targetName:I?.value,value:E===void 0?C?.value:E.value}}function P(g,E){if(E!==void 0||g!==void 0)throw new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,"Expected a single @inject, @multiInject or @unmanaged metadata");return{kind:w.ClassElementMetadataKind.unmanaged}}return NY}var idt;function Tpt(){if(idt)return LY;idt=1,Object.defineProperty(LY,"__esModule",{value:!0}),LY.getConstructorArgumentMetadataFromLegacyMetadata=w;const f=sJ(),h=uJ(),b=Aye();function w(m,P,g){try{return(0,b.getClassElementMetadataFromLegacyMetadata)(g)}catch(E){throw f.InversifyCoreError.isErrorOfKind(E,h.InversifyCoreErrorKind.missingInjectionDecorator)?new f.InversifyCoreError(h.InversifyCoreErrorKind.missingInjectionDecorator,`Expected a single @inject, @multiInject or @unmanaged decorator at type "${m.name}" at constructor arguments at index "${P.toString()}"`,{cause:E}):E}}return LY}var rdt;function IVt(){if(rdt)return kY;rdt=1,Object.defineProperty(kY,"__esModule",{value:!0}),kY.getClassMetadataConstructorArguments=P;const f=QL(),h=xM(),b=Cpt(),w=Ipt(),m=Tpt();function P(g){const E=(0,f.getReflectMetadata)(g,h.DESIGN_PARAM_TYPES),C=(0,f.getReflectMetadata)(g,h.TAGGED),T=[];if(C!==void 0)for(const[M,_]of Object.entries(C)){const I=parseInt(M);T[I]=(0,m.getConstructorArgumentMetadataFromLegacyMetadata)(g,I,_)}if(E!==void 0){for(let M=0;MNumber.MIN_SAFE_INTEGER):(0,f.updateReflectMetadata)(Object,h,w,m=>m+1),w}return UY}var pdt;function Rpt(){if(pdt)return Qx;pdt=1,Object.defineProperty(Qx,"__esModule",{value:!0}),Qx.LegacyTargetImpl=void 0;const f=Ove(),h=AVt(),b=yA(),w=xM(),m=OVt(),P=DVt(),g=kVt();let E=class{#e;#n;#i;#t;#r;#o;constructor(T,M,_){this.#n=(0,g.getTargetId)(),this.#i=T,this.#t=void 0,this.#e=M,this.#r=new m.LegacyQueryableStringImpl(typeof T=="string"?T:(0,P.getDescription)(T)),this.#o=_}get id(){return this.#n}get identifier(){return this.#i}get metadata(){return this.#t===void 0&&(this.#t=(0,h.getLegacyMetadata)(this.#e)),this.#t}get name(){return this.#r}get type(){return this.#o}get serviceIdentifier(){return f.LazyServiceIdentifier.is(this.#e.value)?this.#e.value.unwrap():this.#e.value}getCustomTags(){return[...this.#e.tags.entries()].map(([T,M])=>({key:T,value:M}))}getNamedTag(){return this.#e.name===void 0?null:{key:w.NAMED_TAG,value:this.#e.name}}hasTag(T){return this.metadata.some(M=>M.key===T)}isArray(){return this.#e.kind===b.ClassElementMetadataKind.multipleInjection}isNamed(){return this.#e.name!==void 0}isOptional(){return this.#e.optional}isTagged(){return this.#e.tags.size>0}matchesArray(T){return this.isArray()&&this.#e.value===T}matchesNamedTag(T){return this.#e.name===T}matchesTag(T){return M=>this.metadata.some(_=>_.key===T&&_.value===M)}};return Qx.LegacyTargetImpl=E,Qx}var wdt;function RVt(){if(wdt)return HY;wdt=1,Object.defineProperty(HY,"__esModule",{value:!0}),HY.getTargetsFromMetadataProviders=w;const f=yA(),h=jVt(),b=Rpt();function w(m,P){return function(E){const C=m(E);let T=(0,h.getBaseType)(E);for(;T!==void 0&&T!==Object;){const _=P(T);for(const[I,O]of _)C.properties.has(I)||C.properties.set(I,O);T=(0,h.getBaseType)(T)}const M=[];for(const _ of C.constructorArguments)if(_.kind!==f.ClassElementMetadataKind.unmanaged){const I=_.targetName??"";M.push(new b.LegacyTargetImpl(I,_,"ConstructorArgument"))}for(const[_,I]of C.properties)if(I.kind!==f.ClassElementMetadataKind.unmanaged){const O=I.targetName??_;M.push(new b.LegacyTargetImpl(O,I,"ClassProperty"))}return M}}return HY}var mdt;function xVt(){if(mdt)return Yx;mdt=1,Object.defineProperty(Yx,"__esModule",{value:!0}),Yx.getTargets=void 0;const f=Opt(),h=kpt(),b=Apt(),w=Dpt(),m=RVt(),P=g=>{const E=g===void 0?f.getClassMetadata:T=>(0,h.getClassMetadataFromMetadataReader)(T,g),C=g===void 0?b.getClassMetadataProperties:T=>(0,w.getClassMetadataPropertiesFromMetadataReader)(T,g);return(0,m.getTargetsFromMetadataProviders)(E,C)};return Yx.getTargets=P,Yx}var vdt;function xpt(){return vdt||(vdt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.LegacyTargetImpl=f.getTargets=f.getClassMetadataFromMetadataReader=f.getClassMetadata=f.getClassElementMetadataFromLegacyMetadata=f.ClassElementMetadataKind=void 0;const h=xVt();Object.defineProperty(f,"getTargets",{enumerable:!0,get:function(){return h.getTargets}});const b=Rpt();Object.defineProperty(f,"LegacyTargetImpl",{enumerable:!0,get:function(){return b.LegacyTargetImpl}});const w=Aye();Object.defineProperty(f,"getClassElementMetadataFromLegacyMetadata",{enumerable:!0,get:function(){return w.getClassElementMetadataFromLegacyMetadata}});const m=Opt();Object.defineProperty(f,"getClassMetadata",{enumerable:!0,get:function(){return m.getClassMetadata}});const P=kpt();Object.defineProperty(f,"getClassMetadataFromMetadataReader",{enumerable:!0,get:function(){return P.getClassMetadataFromMetadataReader}});const g=yA();Object.defineProperty(f,"ClassElementMetadataKind",{enumerable:!0,get:function(){return g.ClassElementMetadataKind}})})(Gme)),Gme}var eL={},ydt;function LVt(){if(ydt)return eL;ydt=1,Object.defineProperty(eL,"__esModule",{value:!0}),eL.BindingCount=void 0;var f;return(function(h){h[h.MultipleBindingsAvailable=2]="MultipleBindingsAvailable",h[h.NoBindingsAvailable=0]="NoBindingsAvailable",h[h.OnlyOneBindingAvailable=1]="OnlyOneBindingAvailable"})(f||(eL.BindingCount=f={})),eL}var dp={},_dt;function Lpt(){if(_dt)return dp;_dt=1;var f=dp&&dp.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=dp&&dp.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=dp&&dp.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M{try{return g()}catch(C){throw m(C)?E():C}};return dp.tryAndThrowErrorIfStackOverflow=P,dp}var $d={},Edt;function ZL(){if(Edt)return $d;Edt=1;var f=$d&&$d.__createBinding||(Object.create?(function(O,j,k,x){x===void 0&&(x=k);var R=Object.getOwnPropertyDescriptor(j,k);(!R||("get"in R?!j.__esModule:R.writable||R.configurable))&&(R={enumerable:!0,get:function(){return j[k]}}),Object.defineProperty(O,x,R)}):(function(O,j,k,x){x===void 0&&(x=k),O[x]=j[k]})),h=$d&&$d.__setModuleDefault||(Object.create?(function(O,j){Object.defineProperty(O,"default",{enumerable:!0,value:j})}):function(O,j){O.default=j}),b=$d&&$d.__importStar||(function(){var O=function(j){return O=Object.getOwnPropertyNames||function(k){var x=[];for(var R in k)Object.prototype.hasOwnProperty.call(k,R)&&(x[x.length]=R);return x},O(j)};return function(j){if(j&&j.__esModule)return j;var k={};if(j!=null)for(var x=O(j),R=0;R{let F="Object";H.implementationType!==null&&(F=M(H.implementationType)),x=`${x} - ${F}`,H.constraint.metaData&&(x=`${x} - ${H.constraint.metaData}`)})),x}function g(O,j){return O.parentRequest===null?!1:O.parentRequest.serviceIdentifier===j?!0:g(O.parentRequest,j)}function E(O){function j(x,R=[]){const H=m(x.serviceIdentifier);return R.push(H),x.parentRequest!==null?j(x.parentRequest,R):R}return j(O).reverse().join(" --> ")}function C(O){O.childRequests.forEach(j=>{if(g(O,j.serviceIdentifier)){const k=E(j);throw new Error(`${w.CIRCULAR_DEPENDENCY} ${k}`)}else C(j)})}function T(O,j){if(j.isTagged()||j.isNamed()){let k="";const x=j.getNamedTag(),R=j.getCustomTags();return x!==null&&(k+=I(x)+` -`),R!==null&&R.forEach(H=>{k+=I(H)+` -`}),` ${O} - ${O} - ${k}`}else return` ${O}`}function M(O){if(O.name!=null&&O.name!=="")return O.name;{const j=O.toString(),k=j.match(/^function\s*([^\s(]+)/);return k===null?`Anonymous function: ${j}`:k[1]}}function _(O){return O.toString().slice(7,-1)}function I(O){return`{"key":"${O.key.toString()}","value":"${O.value.toString()}"}`}return $d}var tL={},Sdt;function NVt(){if(Sdt)return tL;Sdt=1,Object.defineProperty(tL,"__esModule",{value:!0}),tL.Context=void 0;const f=vA();class h{id;container;plan;currentRequest;constructor(w){this.id=(0,f.id)(),this.container=w}addPlan(w){this.plan=w}setCurrentRequest(w){this.currentRequest=w}}return tL.Context=h,tL}var cm={},Pdt;function K3(){if(Pdt)return cm;Pdt=1;var f=cm&&cm.__createBinding||(Object.create?(function(P,g,E,C){C===void 0&&(C=E);var T=Object.getOwnPropertyDescriptor(g,E);(!T||("get"in T?!g.__esModule:T.writable||T.configurable))&&(T={enumerable:!0,get:function(){return g[E]}}),Object.defineProperty(P,C,T)}):(function(P,g,E,C){C===void 0&&(C=E),P[C]=g[E]})),h=cm&&cm.__setModuleDefault||(Object.create?(function(P,g){Object.defineProperty(P,"default",{enumerable:!0,value:g})}):function(P,g){P.default=g}),b=cm&&cm.__importStar||(function(){var P=function(g){return P=Object.getOwnPropertyNames||function(E){var C=[];for(var T in E)Object.prototype.hasOwnProperty.call(E,T)&&(C[C.length]=T);return C},P(g)};return function(g){if(g&&g.__esModule)return g;var E={};if(g!=null)for(var C=P(g),T=0;TR.metadata.filter(H=>H.key===P.UNMANAGED_TAG)),k=[].concat.apply([],j).length,x=O.length-k;return x>0?x:T(M,I)}})(p3)),p3}var iL={},Tdt;function KVt(){if(Tdt)return iL;Tdt=1,Object.defineProperty(iL,"__esModule",{value:!0}),iL.Request=void 0;const f=vA();class h{id;serviceIdentifier;parentContext;parentRequest;bindings;childRequests;target;requestScope;constructor(w,m,P,g,E){this.id=(0,f.id)(),this.serviceIdentifier=w,this.parentContext=m,this.parentRequest=P,this.target=E,this.childRequests=[],this.bindings=Array.isArray(g)?g:[g],this.requestScope=P===null?new Map:null}addChildRequest(w,m,P){const g=new h(w,this.parentContext,this,m,P);return this.childRequests.push(g),g}}return iL.Request=h,iL}var jdt;function Npt(){if(jdt)return hp;jdt=1;var f=hp&&hp.__createBinding||(Object.create?(function(ce,J,te,fe){fe===void 0&&(fe=te);var ve=Object.getOwnPropertyDescriptor(J,te);(!ve||("get"in ve?!J.__esModule:ve.writable||ve.configurable))&&(ve={enumerable:!0,get:function(){return J[te]}}),Object.defineProperty(ce,fe,ve)}):(function(ce,J,te,fe){fe===void 0&&(fe=te),ce[fe]=J[te]})),h=hp&&hp.__setModuleDefault||(Object.create?(function(ce,J){Object.defineProperty(ce,"default",{enumerable:!0,value:J})}):function(ce,J){ce.default=J}),b=hp&&hp.__importStar||(function(){var ce=function(J){return ce=Object.getOwnPropertyNames||function(te){var fe=[];for(var ve in te)Object.prototype.hasOwnProperty.call(te,ve)&&(fe[fe.length]=ve);return fe},ce(J)};return function(J){if(J&&J.__esModule)return J;var te={};if(J!=null)for(var fe=ce(J),ve=0;ve{const De=new j.Request(tt.serviceIdentifier,te,fe,tt,ve);return tt.constraint(De)}),F(ve.serviceIdentifier,ke,fe,ve,te.container),ke}function H(ce,J){const te=J.isMultiInject?E.MULTI_INJECT_TAG:E.INJECT_TAG,fe=[new _.Metadata(te,ce)];return J.customTag!==void 0&&fe.push(new _.Metadata(J.customTag.key,J.customTag.value)),J.isOptional===!0&&fe.push(new _.Metadata(E.OPTIONAL_TAG,!0)),fe}function F(ce,J,te,fe,ve){switch(J.length){case m.BindingCount.NoBindingsAvailable:if(fe.isOptional())return J;{const me=(0,T.getServiceIdentifierAsString)(ce);let ke=P.NOT_REGISTERED;throw ke+=(0,T.listMetadataForTarget)(me,fe),ke+=(0,T.listRegisteredBindingsForServiceIdentifier)(ve,me,W),te!==null&&(ke+=` -${P.TRYING_TO_RESOLVE_BINDINGS((0,T.getServiceIdentifierAsString)(te.serviceIdentifier))}`),new Error(ke)}case m.BindingCount.OnlyOneBindingAvailable:return J;case m.BindingCount.MultipleBindingsAvailable:default:if(fe.isArray())return J;{const me=(0,T.getServiceIdentifierAsString)(ce);let ke=`${P.AMBIGUOUS_MATCH} ${me}`;throw ke+=(0,T.listRegisteredBindingsForServiceIdentifier)(ve,me,W),new Error(ke)}}}function $(ce,J,te,fe,ve,me){let ke,tt;if(ve===null){ke=R(ce,J,fe,null,me),tt=new j.Request(te,fe,null,ke,me);const De=new I.Plan(fe,tt);fe.addPlan(De)}else ke=R(ce,J,fe,ve,me),tt=ve.addChildRequest(me.serviceIdentifier,ke,me);ke.forEach(De=>{let ct=null;if(me.isArray())ct=tt.addChildRequest(De.serviceIdentifier,De,me);else{if(De.cache!==null)return;ct=tt}if(De.type===g.BindingTypeEnum.Instance&&De.implementationType!==null){const Z=(0,O.getDependencies)(ce,De.implementationType);if(fe.container.options.skipBaseClassChecks!==!0){const Nt=(0,O.getBaseClassDependencyCount)(ce,De.implementationType);if(Z.length{$(ce,!1,Nt.serviceIdentifier,fe,ct,Nt)})}})}function W(ce,J){let te=[];const fe=k(ce);return fe.hasKey(J)?te=fe.get(J):ce.parent!==null&&(te=W(ce.parent,J)),te}function re(ce,J,te,fe,ve,me=!1){const ke=new M.Context(J),tt=x(te,fe,ve);try{return $(ce,me,fe,ke,null,tt),ke}catch(De){throw(0,C.isStackOverflowException)(De)&&(0,T.circularDependencyToException)(ke.plan.rootRequest),De}}function ae(ce,J,te){const fe=H(J,te),ve=(0,w.getClassElementMetadataFromLegacyMetadata)(fe);if(ve.kind===w.ClassElementMetadataKind.unmanaged)throw new Error("Unexpected metadata when creating target");const me=new w.LegacyTargetImpl("",ve,"Variable"),ke=new M.Context(ce);return new j.Request(J,ke,null,[],me)}return hp}var Zv={},yM={},rL={},Adt;function aJ(){if(Adt)return rL;Adt=1,Object.defineProperty(rL,"__esModule",{value:!0}),rL.isPromise=f,rL.isPromiseOrContainsPromise=h;function f(b){return(typeof b=="object"&&b!==null||typeof b=="function")&&typeof b.then=="function"}function h(b){return f(b)?!0:Array.isArray(b)&&b.some(f)}return rL}var Odt;function qVt(){if(Odt)return yM;Odt=1,Object.defineProperty(yM,"__esModule",{value:!0}),yM.saveToScope=yM.tryGetFromScope=void 0;const f=Py(),h=aJ(),b=(E,C)=>C.scope===f.BindingScopeEnum.Singleton&&C.activated?C.cache:C.scope===f.BindingScopeEnum.Request&&E.has(C.id)?E.get(C.id):null;yM.tryGetFromScope=b;const w=(E,C,T)=>{C.scope===f.BindingScopeEnum.Singleton&&P(C,T),C.scope===f.BindingScopeEnum.Request&&m(E,C,T)};yM.saveToScope=w;const m=(E,C,T)=>{E.has(C.id)||E.set(C.id,T)},P=(E,C)=>{E.cache=C,E.activated=!0,(0,h.isPromise)(C)&&g(E,C)},g=async(E,C)=>{try{const T=await C;E.cache=T}catch(T){throw E.cache=null,E.activated=!1,T}};return yM}var Kd={},oL={},Ddt;function HVt(){if(Ddt)return oL;Ddt=1,Object.defineProperty(oL,"__esModule",{value:!0}),oL.FactoryType=void 0;var f;return(function(h){h.DynamicValue="toDynamicValue",h.Factory="toFactory",h.Provider="toProvider"})(f||(oL.FactoryType=f={})),oL}var kdt;function Fpt(){if(kdt)return Kd;kdt=1;var f=Kd&&Kd.__createBinding||(Object.create?(function(M,_,I,O){O===void 0&&(O=I);var j=Object.getOwnPropertyDescriptor(_,I);(!j||("get"in j?!_.__esModule:j.writable||j.configurable))&&(j={enumerable:!0,get:function(){return _[I]}}),Object.defineProperty(M,O,j)}):(function(M,_,I,O){O===void 0&&(O=I),M[O]=_[I]})),h=Kd&&Kd.__setModuleDefault||(Object.create?(function(M,_){Object.defineProperty(M,"default",{enumerable:!0,value:_})}):function(M,_){M.default=_}),b=Kd&&Kd.__importStar||(function(){var M=function(_){return M=Object.getOwnPropertyNames||function(I){var O=[];for(var j in I)Object.prototype.hasOwnProperty.call(I,j)&&(O[O.length]=j);return O},M(_)};return function(_){if(_&&_.__esModule)return _;var I={};if(_!=null)for(var O=M(_),j=0;j_=>(...I)=>{I.forEach(O=>{M.bind(O).toService(_)})};Kd.multiBindToService=E;const C=M=>{let _=null;switch(M.type){case m.BindingTypeEnum.ConstantValue:case m.BindingTypeEnum.Function:_=M.cache;break;case m.BindingTypeEnum.Constructor:case m.BindingTypeEnum.Instance:_=M.implementationType;break;case m.BindingTypeEnum.DynamicValue:_=M.dynamicValue;break;case m.BindingTypeEnum.Provider:_=M.provider;break;case m.BindingTypeEnum.Factory:_=M.factory;break}if(_===null){const I=(0,P.getServiceIdentifierAsString)(M.serviceIdentifier);throw new Error(`${w.INVALID_BINDING_TYPE} ${I}`)}};Kd.ensureFullyBound=C;const T=M=>{switch(M.type){case m.BindingTypeEnum.Factory:return{factory:M.factory,factoryType:g.FactoryType.Factory};case m.BindingTypeEnum.Provider:return{factory:M.provider,factoryType:g.FactoryType.Provider};case m.BindingTypeEnum.DynamicValue:return{factory:M.dynamicValue,factoryType:g.FactoryType.DynamicValue};default:throw new Error(`Unexpected factory type ${M.type}`)}};return Kd.getFactoryDetails=T,Kd}var ey={},Rdt;function zVt(){if(Rdt)return ey;Rdt=1;var f=ey&&ey.__createBinding||(Object.create?(function(R,H,F,$){$===void 0&&($=F);var W=Object.getOwnPropertyDescriptor(H,F);(!W||("get"in W?!H.__esModule:W.writable||W.configurable))&&(W={enumerable:!0,get:function(){return H[F]}}),Object.defineProperty(R,$,W)}):(function(R,H,F,$){$===void 0&&($=F),R[$]=H[F]})),h=ey&&ey.__setModuleDefault||(Object.create?(function(R,H){Object.defineProperty(R,"default",{enumerable:!0,value:H})}):function(R,H){R.default=H}),b=ey&&ey.__importStar||(function(){var R=function(H){return R=Object.getOwnPropertyNames||function(F){var $=[];for(var W in F)Object.prototype.hasOwnProperty.call(F,W)&&($[$.length]=W);return $},R(H)};return function(H){if(H&&H.__esModule)return H;var F={};if(H!=null)for(var $=R(H),W=0;W<$.length;W++)$[W]!=="default"&&f(F,H,$[W]);return h(F,H),F}})();Object.defineProperty(ey,"__esModule",{value:!0}),ey.resolveInstance=x;const w=vg(),m=Py(),P=b(Lf()),g=aJ();function E(R,H){return R.reduce((F,$)=>{const W=H($);return $.target.type===m.TargetTypeEnum.ConstructorArgument?F.constructorInjections.push(W):(F.propertyRequests.push($),F.propertyInjections.push(W)),F.isAsync||(F.isAsync=(0,g.isPromiseOrContainsPromise)(W)),F},{constructorInjections:[],isAsync:!1,propertyInjections:[],propertyRequests:[]})}function C(R,H,F){let $;if(H.length>0){const W=E(H,F),re={...W,constr:R};W.isAsync?$=M(re):$=T(re)}else $=new R;return $}function T(R){const H=new R.constr(...R.constructorInjections);return R.propertyRequests.forEach((F,$)=>{const W=F.target.identifier,re=R.propertyInjections[$];(!F.target.isOptional()||re!==void 0)&&(H[W]=re)}),H}async function M(R){const H=await _(R.constructorInjections),F=await _(R.propertyInjections);return T({...R,constructorInjections:H,propertyInjections:F})}async function _(R){const H=[];for(const F of R)Array.isArray(F)?H.push(Promise.all(F)):H.push(F);return Promise.all(H)}function I(R,H){const F=O(R,H);return(0,g.isPromise)(F)?F.then(()=>H):H}function O(R,H){if(Reflect.hasMetadata(P.POST_CONSTRUCT,R)){const F=Reflect.getMetadata(P.POST_CONSTRUCT,R);try{return H[F.value]?.()}catch($){if($ instanceof Error)throw new Error((0,w.POST_CONSTRUCT_ERROR)(R.name,$.message))}}}function j(R,H){R.scope!==m.BindingScopeEnum.Singleton&&k(R,H)}function k(R,H){const F=`Class cannot be instantiated in ${R.scope===m.BindingScopeEnum.Request?"request":"transient"} scope.`;if(typeof R.onDeactivation=="function")throw new Error((0,w.ON_DEACTIVATION_ERROR)(H.name,F));if(Reflect.hasMetadata(P.PRE_DESTROY,H))throw new Error((0,w.PRE_DESTROY_ERROR)(H.name,F))}function x(R,H,F,$){j(R,H);const W=C(H,F,$);return(0,g.isPromise)(W)?W.then(re=>I(H,re)):I(H,W)}return ey}var xdt;function VVt(){if(xdt)return Zv;xdt=1;var f=Zv&&Zv.__createBinding||(Object.create?(function(ae,ce,J,te){te===void 0&&(te=J);var fe=Object.getOwnPropertyDescriptor(ce,J);(!fe||("get"in fe?!ce.__esModule:fe.writable||fe.configurable))&&(fe={enumerable:!0,get:function(){return ce[J]}}),Object.defineProperty(ae,te,fe)}):(function(ae,ce,J,te){te===void 0&&(te=J),ae[te]=ce[J]})),h=Zv&&Zv.__setModuleDefault||(Object.create?(function(ae,ce){Object.defineProperty(ae,"default",{enumerable:!0,value:ce})}):function(ae,ce){ae.default=ce}),b=Zv&&Zv.__importStar||(function(){var ae=function(ce){return ae=Object.getOwnPropertyNames||function(J){var te=[];for(var fe in J)Object.prototype.hasOwnProperty.call(J,fe)&&(te[te.length]=fe);return te},ae(ce)};return function(ce){if(ce&&ce.__esModule)return ce;var J={};if(ce!=null)for(var te=ae(ce),fe=0;fece=>{ce.parentContext.setCurrentRequest(ce);const J=ce.bindings,te=ce.childRequests,fe=ce.target&&ce.target.isArray(),ve=!ce.parentRequest||!ce.parentRequest.target||!ce.target||!ce.parentRequest.target.matchesArray(ce.target.serviceIdentifier);if(fe&&ve)return te.map(me=>_(ae)(me));{if(ce.target.isOptional()&&J.length===0)return;const me=J[0];return k(ae,ce,me)}},I=(ae,ce)=>{const J=(0,C.getFactoryDetails)(ae);return(0,T.tryAndThrowErrorIfStackOverflow)(()=>J.factory.bind(ae)(ce),()=>new Error(w.CIRCULAR_DEPENDENCY_IN_FACTORY(J.factoryType,ce.currentRequest.serviceIdentifier.toString())))},O=(ae,ce,J)=>{let te;const fe=ce.childRequests;switch((0,C.ensureFullyBound)(J),J.type){case m.BindingTypeEnum.ConstantValue:case m.BindingTypeEnum.Function:te=J.cache;break;case m.BindingTypeEnum.Constructor:te=J.implementationType;break;case m.BindingTypeEnum.Instance:te=(0,M.resolveInstance)(J,J.implementationType,fe,_(ae));break;default:te=I(J,ce.parentContext)}return te},j=(ae,ce,J)=>{let te=(0,g.tryGetFromScope)(ae,ce);return te!==null||(te=J(),(0,g.saveToScope)(ae,ce,te)),te},k=(ae,ce,J)=>j(ae,J,()=>{let te=O(ae,ce,J);return(0,E.isPromise)(te)?te=te.then(fe=>x(ce,J,fe)):te=x(ce,J,te),te});function x(ae,ce,J){let te=R(ae.parentContext,ce,J);const fe=W(ae.parentContext.container);let ve,me=fe.next();do{ve=me.value;const ke=ae.parentContext,tt=ae.serviceIdentifier,De=$(ve,tt);(0,E.isPromise)(te)?te=F(De,ke,te):te=H(De,ke,te),me=fe.next()}while(me.done!==!0&&!(0,P.getBindingDictionary)(ve).hasKey(ae.serviceIdentifier));return te}const R=(ae,ce,J)=>{let te;return typeof ce.onActivation=="function"?te=ce.onActivation(ae,J):te=J,te},H=(ae,ce,J)=>{let te=ae.next();for(;te.done!==!0;){if(J=te.value(ce,J),(0,E.isPromise)(J))return F(ae,ce,J);te=ae.next()}return J},F=async(ae,ce,J)=>{let te=await J,fe=ae.next();for(;fe.done!==!0;)te=await fe.value(ce,te),fe=ae.next();return te},$=(ae,ce)=>{const J=ae._activations;return J.hasKey(ce)?J.get(ce).values():[].values()},W=ae=>{const ce=[ae];let J=ae.parent;for(;J!==null;)ce.push(J),J=J.parent;return{next:()=>{const ve=ce.pop();return ve!==void 0?{done:!1,value:ve}:{done:!0,value:void 0}}}};function re(ae){return _(ae.plan.rootRequest.requestScope)(ae.plan.rootRequest)}return Zv}var sm={},cL={},sL={},uL={},aL={},lL={},uh={},Ldt;function Bpt(){if(Ldt)return uh;Ldt=1;var f=uh&&uh.__createBinding||(Object.create?(function(T,M,_,I){I===void 0&&(I=_);var O=Object.getOwnPropertyDescriptor(M,_);(!O||("get"in O?!M.__esModule:O.writable||O.configurable))&&(O={enumerable:!0,get:function(){return M[_]}}),Object.defineProperty(T,I,O)}):(function(T,M,_,I){I===void 0&&(I=_),T[I]=M[_]})),h=uh&&uh.__setModuleDefault||(Object.create?(function(T,M){Object.defineProperty(T,"default",{enumerable:!0,value:M})}):function(T,M){T.default=M}),b=uh&&uh.__importStar||(function(){var T=function(M){return T=Object.getOwnPropertyNames||function(_){var I=[];for(var O in _)Object.prototype.hasOwnProperty.call(_,O)&&(I[I.length]=O);return I},T(M)};return function(M){if(M&&M.__esModule)return M;var _={};if(M!=null)for(var I=T(M),O=0;O{const _=T.parentRequest;return _!==null?M(_)?!0:P(_,M):!1};uh.traverseAncerstors=P;const g=T=>M=>{const _=I=>I!==null&&I.target!==null&&I.target.matchesTag(T)(M);return _.metaData=new m.Metadata(T,M),_};uh.taggedConstraint=g;const E=g(w.NAMED_TAG);uh.namedConstraint=E;const C=T=>M=>{let _=null;if(M!==null){if(_=M.bindings[0],typeof T=="string")return _.serviceIdentifier===T;{const I=M.bindings[0].implementationType;return T===I}}return!1};return uh.typeConstraint=C,uh}var Ndt;function Oye(){if(Ndt)return lL;Ndt=1,Object.defineProperty(lL,"__esModule",{value:!0}),lL.BindingWhenSyntax=void 0;const f=Dye(),h=Bpt();class b{_binding;constructor(m){this._binding=m}when(m){return this._binding.constraint=m,new f.BindingOnSyntax(this._binding)}whenTargetNamed(m){return this._binding.constraint=(0,h.namedConstraint)(m),new f.BindingOnSyntax(this._binding)}whenTargetIsDefault(){return this._binding.constraint=m=>m===null?!1:m.target!==null&&!m.target.isNamed()&&!m.target.isTagged(),new f.BindingOnSyntax(this._binding)}whenTargetTagged(m,P){return this._binding.constraint=(0,h.taggedConstraint)(m)(P),new f.BindingOnSyntax(this._binding)}whenInjectedInto(m){return this._binding.constraint=P=>P!==null&&(0,h.typeConstraint)(m)(P.parentRequest),new f.BindingOnSyntax(this._binding)}whenParentNamed(m){return this._binding.constraint=P=>P!==null&&(0,h.namedConstraint)(m)(P.parentRequest),new f.BindingOnSyntax(this._binding)}whenParentTagged(m,P){return this._binding.constraint=g=>g!==null&&(0,h.taggedConstraint)(m)(P)(g.parentRequest),new f.BindingOnSyntax(this._binding)}whenAnyAncestorIs(m){return this._binding.constraint=P=>P!==null&&(0,h.traverseAncerstors)(P,(0,h.typeConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenNoAncestorIs(m){return this._binding.constraint=P=>P!==null&&!(0,h.traverseAncerstors)(P,(0,h.typeConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenAnyAncestorNamed(m){return this._binding.constraint=P=>P!==null&&(0,h.traverseAncerstors)(P,(0,h.namedConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenNoAncestorNamed(m){return this._binding.constraint=P=>P!==null&&!(0,h.traverseAncerstors)(P,(0,h.namedConstraint)(m)),new f.BindingOnSyntax(this._binding)}whenAnyAncestorTagged(m,P){return this._binding.constraint=g=>g!==null&&(0,h.traverseAncerstors)(g,(0,h.taggedConstraint)(m)(P)),new f.BindingOnSyntax(this._binding)}whenNoAncestorTagged(m,P){return this._binding.constraint=g=>g!==null&&!(0,h.traverseAncerstors)(g,(0,h.taggedConstraint)(m)(P)),new f.BindingOnSyntax(this._binding)}whenAnyAncestorMatches(m){return this._binding.constraint=P=>P!==null&&(0,h.traverseAncerstors)(P,m),new f.BindingOnSyntax(this._binding)}whenNoAncestorMatches(m){return this._binding.constraint=P=>P!==null&&!(0,h.traverseAncerstors)(P,m),new f.BindingOnSyntax(this._binding)}}return lL.BindingWhenSyntax=b,lL}var Fdt;function Dye(){if(Fdt)return aL;Fdt=1,Object.defineProperty(aL,"__esModule",{value:!0}),aL.BindingOnSyntax=void 0;const f=Oye();class h{_binding;constructor(w){this._binding=w}onActivation(w){return this._binding.onActivation=w,new f.BindingWhenSyntax(this._binding)}onDeactivation(w){return this._binding.onDeactivation=w,new f.BindingWhenSyntax(this._binding)}}return aL.BindingOnSyntax=h,aL}var Bdt;function $pt(){if(Bdt)return uL;Bdt=1,Object.defineProperty(uL,"__esModule",{value:!0}),uL.BindingWhenOnSyntax=void 0;const f=Dye(),h=Oye();class b{_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(m){this._binding=m,this._bindingWhenSyntax=new h.BindingWhenSyntax(this._binding),this._bindingOnSyntax=new f.BindingOnSyntax(this._binding)}when(m){return this._bindingWhenSyntax.when(m)}whenTargetNamed(m){return this._bindingWhenSyntax.whenTargetNamed(m)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(m,P){return this._bindingWhenSyntax.whenTargetTagged(m,P)}whenInjectedInto(m){return this._bindingWhenSyntax.whenInjectedInto(m)}whenParentNamed(m){return this._bindingWhenSyntax.whenParentNamed(m)}whenParentTagged(m,P){return this._bindingWhenSyntax.whenParentTagged(m,P)}whenAnyAncestorIs(m){return this._bindingWhenSyntax.whenAnyAncestorIs(m)}whenNoAncestorIs(m){return this._bindingWhenSyntax.whenNoAncestorIs(m)}whenAnyAncestorNamed(m){return this._bindingWhenSyntax.whenAnyAncestorNamed(m)}whenAnyAncestorTagged(m,P){return this._bindingWhenSyntax.whenAnyAncestorTagged(m,P)}whenNoAncestorNamed(m){return this._bindingWhenSyntax.whenNoAncestorNamed(m)}whenNoAncestorTagged(m,P){return this._bindingWhenSyntax.whenNoAncestorTagged(m,P)}whenAnyAncestorMatches(m){return this._bindingWhenSyntax.whenAnyAncestorMatches(m)}whenNoAncestorMatches(m){return this._bindingWhenSyntax.whenNoAncestorMatches(m)}onActivation(m){return this._bindingOnSyntax.onActivation(m)}onDeactivation(m){return this._bindingOnSyntax.onDeactivation(m)}}return uL.BindingWhenOnSyntax=b,uL}var $dt;function GVt(){if($dt)return sL;$dt=1,Object.defineProperty(sL,"__esModule",{value:!0}),sL.BindingInSyntax=void 0;const f=Py(),h=$pt();class b{_binding;constructor(m){this._binding=m}inRequestScope(){return this._binding.scope=f.BindingScopeEnum.Request,new h.BindingWhenOnSyntax(this._binding)}inSingletonScope(){return this._binding.scope=f.BindingScopeEnum.Singleton,new h.BindingWhenOnSyntax(this._binding)}inTransientScope(){return this._binding.scope=f.BindingScopeEnum.Transient,new h.BindingWhenOnSyntax(this._binding)}}return sL.BindingInSyntax=b,sL}var Kdt;function UVt(){if(Kdt)return cL;Kdt=1,Object.defineProperty(cL,"__esModule",{value:!0}),cL.BindingInWhenOnSyntax=void 0;const f=GVt(),h=Dye(),b=Oye();class w{_bindingInSyntax;_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(P){this._binding=P,this._bindingWhenSyntax=new b.BindingWhenSyntax(this._binding),this._bindingOnSyntax=new h.BindingOnSyntax(this._binding),this._bindingInSyntax=new f.BindingInSyntax(P)}inRequestScope(){return this._bindingInSyntax.inRequestScope()}inSingletonScope(){return this._bindingInSyntax.inSingletonScope()}inTransientScope(){return this._bindingInSyntax.inTransientScope()}when(P){return this._bindingWhenSyntax.when(P)}whenTargetNamed(P){return this._bindingWhenSyntax.whenTargetNamed(P)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(P,g){return this._bindingWhenSyntax.whenTargetTagged(P,g)}whenInjectedInto(P){return this._bindingWhenSyntax.whenInjectedInto(P)}whenParentNamed(P){return this._bindingWhenSyntax.whenParentNamed(P)}whenParentTagged(P,g){return this._bindingWhenSyntax.whenParentTagged(P,g)}whenAnyAncestorIs(P){return this._bindingWhenSyntax.whenAnyAncestorIs(P)}whenNoAncestorIs(P){return this._bindingWhenSyntax.whenNoAncestorIs(P)}whenAnyAncestorNamed(P){return this._bindingWhenSyntax.whenAnyAncestorNamed(P)}whenAnyAncestorTagged(P,g){return this._bindingWhenSyntax.whenAnyAncestorTagged(P,g)}whenNoAncestorNamed(P){return this._bindingWhenSyntax.whenNoAncestorNamed(P)}whenNoAncestorTagged(P,g){return this._bindingWhenSyntax.whenNoAncestorTagged(P,g)}whenAnyAncestorMatches(P){return this._bindingWhenSyntax.whenAnyAncestorMatches(P)}whenNoAncestorMatches(P){return this._bindingWhenSyntax.whenNoAncestorMatches(P)}onActivation(P){return this._bindingOnSyntax.onActivation(P)}onDeactivation(P){return this._bindingOnSyntax.onDeactivation(P)}}return cL.BindingInWhenOnSyntax=w,cL}var qdt;function WVt(){if(qdt)return sm;qdt=1;var f=sm&&sm.__createBinding||(Object.create?(function(C,T,M,_){_===void 0&&(_=M);var I=Object.getOwnPropertyDescriptor(T,M);(!I||("get"in I?!T.__esModule:I.writable||I.configurable))&&(I={enumerable:!0,get:function(){return T[M]}}),Object.defineProperty(C,_,I)}):(function(C,T,M,_){_===void 0&&(_=M),C[_]=T[M]})),h=sm&&sm.__setModuleDefault||(Object.create?(function(C,T){Object.defineProperty(C,"default",{enumerable:!0,value:T})}):function(C,T){C.default=T}),b=sm&&sm.__importStar||(function(){var C=function(T){return C=Object.getOwnPropertyNames||function(M){var _=[];for(var I in M)Object.prototype.hasOwnProperty.call(M,I)&&(_[_.length]=I);return _},C(T)};return function(T){if(T&&T.__esModule)return T;var M={};if(T!=null)for(var _=C(T),I=0;I<_.length;I++)_[I]!=="default"&&f(M,T,_[I]);return h(M,T),M}})();Object.defineProperty(sm,"__esModule",{value:!0}),sm.BindingToSyntax=void 0;const w=b(vg()),m=Py(),P=UVt(),g=$pt();class E{_binding;constructor(T){this._binding=T}to(T){return this._binding.type=m.BindingTypeEnum.Instance,this._binding.implementationType=T,new P.BindingInWhenOnSyntax(this._binding)}toSelf(){if(typeof this._binding.serviceIdentifier!="function")throw new Error(w.INVALID_TO_SELF_VALUE);const T=this._binding.serviceIdentifier;return this.to(T)}toConstantValue(T){return this._binding.type=m.BindingTypeEnum.ConstantValue,this._binding.cache=T,this._binding.dynamicValue=null,this._binding.implementationType=null,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toDynamicValue(T){return this._binding.type=m.BindingTypeEnum.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=T,this._binding.implementationType=null,new P.BindingInWhenOnSyntax(this._binding)}toConstructor(T){return this._binding.type=m.BindingTypeEnum.Constructor,this._binding.implementationType=T,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toFactory(T){return this._binding.type=m.BindingTypeEnum.Factory,this._binding.factory=T,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toFunction(T){if(typeof T!="function")throw new Error(w.INVALID_FUNCTION_BINDING);const M=this.toConstantValue(T);return this._binding.type=m.BindingTypeEnum.Function,this._binding.scope=m.BindingScopeEnum.Singleton,M}toAutoFactory(T){return this._binding.type=m.BindingTypeEnum.Factory,this._binding.factory=M=>()=>M.container.get(T),this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toAutoNamedFactory(T){return this._binding.type=m.BindingTypeEnum.Factory,this._binding.factory=M=>_=>M.container.getNamed(T,_),new g.BindingWhenOnSyntax(this._binding)}toProvider(T){return this._binding.type=m.BindingTypeEnum.Provider,this._binding.provider=T,this._binding.scope=m.BindingScopeEnum.Singleton,new g.BindingWhenOnSyntax(this._binding)}toService(T){this._binding.type=m.BindingTypeEnum.DynamicValue,Object.defineProperty(this._binding,"cache",{configurable:!0,enumerable:!0,get(){return null},set(M){}}),this._binding.dynamicValue=M=>{try{return M.container.get(T)}catch{return M.container.getAsync(T)}},this._binding.implementationType=null}}return sm.BindingToSyntax=E,sm}var fL={},Hdt;function YVt(){if(Hdt)return fL;Hdt=1,Object.defineProperty(fL,"__esModule",{value:!0}),fL.ContainerSnapshot=void 0;class f{bindings;activations;deactivations;middleware;moduleActivationStore;static of(b,w,m,P,g){const E=new f;return E.bindings=b,E.middleware=w,E.deactivations=P,E.activations=m,E.moduleActivationStore=g,E}}return fL.ContainerSnapshot=f,fL}var um={},YY={},zdt;function XVt(){if(zdt)return YY;zdt=1,Object.defineProperty(YY,"__esModule",{value:!0}),YY.isClonable=f;function f(h){return typeof h=="object"&&h!==null&&"clone"in h&&typeof h.clone=="function"}return YY}var Vdt;function Kpt(){if(Vdt)return um;Vdt=1;var f=um&&um.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=um&&um.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=um&&um.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M{const M=E.hasKey(C)?E.get(C):void 0;if(M!==void 0){const _=T.filter(I=>!M.some(O=>I===O));this._setValue(C,_)}})}removeByCondition(E){const C=[];return this._map.forEach((T,M)=>{const _=[];for(const I of T)E(I)?C.push(I):_.push(I);this._setValue(M,_)}),C}hasKey(E){return this._checkNonNulish(E),this._map.has(E)}clone(){const E=new P;return this._map.forEach((C,T)=>{C.forEach(M=>{E.add(T,(0,m.isClonable)(M)?M.clone():M)})}),E}traverse(E){this._map.forEach((C,T)=>{E(T,C)})}_checkNonNulish(E){if(E==null)throw new Error(w.NULL_ARGUMENT)}_setValue(E,C){C.length>0?this._map.set(E,C):this._map.delete(E)}}return um.Lookup=P,um}var hL={},Gdt;function JVt(){if(Gdt)return hL;Gdt=1,Object.defineProperty(hL,"__esModule",{value:!0}),hL.ModuleActivationStore=void 0;const f=Kpt();class h{_map=new Map;remove(w){const m=this._map.get(w);return m===void 0?this._getEmptyHandlersStore():(this._map.delete(w),m)}addDeactivation(w,m,P){this._getModuleActivationHandlers(w).onDeactivations.add(m,P)}addActivation(w,m,P){this._getModuleActivationHandlers(w).onActivations.add(m,P)}clone(){const w=new h;return this._map.forEach((m,P)=>{w._map.set(P,{onActivations:m.onActivations.clone(),onDeactivations:m.onDeactivations.clone()})}),w}_getModuleActivationHandlers(w){let m=this._map.get(w);return m===void 0&&(m=this._getEmptyHandlersStore(),this._map.set(w,m)),m}_getEmptyHandlersStore(){return{onActivations:new f.Lookup,onDeactivations:new f.Lookup}}}return hL.ModuleActivationStore=h,hL}var Udt;function QVt(){if(Udt)return rm;Udt=1;var f=rm&&rm.__createBinding||(Object.create?(function(H,F,$,W){W===void 0&&(W=$);var re=Object.getOwnPropertyDescriptor(F,$);(!re||("get"in re?!F.__esModule:re.writable||re.configurable))&&(re={enumerable:!0,get:function(){return F[$]}}),Object.defineProperty(H,W,re)}):(function(H,F,$,W){W===void 0&&(W=$),H[W]=F[$]})),h=rm&&rm.__setModuleDefault||(Object.create?(function(H,F){Object.defineProperty(H,"default",{enumerable:!0,value:F})}):function(H,F){H.default=F}),b=rm&&rm.__importStar||(function(){var H=function(F){return H=Object.getOwnPropertyNames||function($){var W=[];for(var re in $)Object.prototype.hasOwnProperty.call($,re)&&(W[W.length]=re);return W},H(F)};return function(F){if(F&&F.__esModule)return F;var $={};if(F!=null)for(var W=H(F),re=0;re(0,C.getBindingDictionary)(te)),ce=(0,C.getBindingDictionary)(re);function J(te,fe){te.traverse((ve,me)=>{me.forEach(ke=>{fe.add(ke.serviceIdentifier,ke.clone())})})}return ae.forEach(te=>{J(te,ce)}),re}load(...F){const $=this._getContainerModuleHelpersFactory();for(const W of F){const re=$(W.id);W.registry(re.bindFunction,re.unbindFunction,re.isboundFunction,re.rebindFunction,re.unbindAsyncFunction,re.onActivationFunction,re.onDeactivationFunction)}}async loadAsync(...F){const $=this._getContainerModuleHelpersFactory();for(const W of F){const re=$(W.id);await W.registry(re.bindFunction,re.unbindFunction,re.isboundFunction,re.rebindFunction,re.unbindAsyncFunction,re.onActivationFunction,re.onDeactivationFunction)}}unload(...F){F.forEach($=>{const W=this._removeModuleBindings($.id);this._deactivateSingletons(W),this._removeModuleHandlers($.id)})}async unloadAsync(...F){for(const $ of F){const W=this._removeModuleBindings($.id);await this._deactivateSingletonsAsync(W),this._removeModuleHandlers($.id)}}bind(F){return this._bind(this._buildBinding(F))}rebind(F){return this.unbind(F),this.bind(F)}async rebindAsync(F){return await this.unbindAsync(F),this.bind(F)}unbind(F){if(this._bindingDictionary.hasKey(F)){const $=this._bindingDictionary.get(F);this._deactivateSingletons($)}this._removeServiceFromDictionary(F)}async unbindAsync(F){if(this._bindingDictionary.hasKey(F)){const $=this._bindingDictionary.get(F);await this._deactivateSingletonsAsync($)}this._removeServiceFromDictionary(F)}unbindAll(){this._bindingDictionary.traverse((F,$)=>{this._deactivateSingletons($)}),this._bindingDictionary=new k.Lookup}async unbindAllAsync(){const F=[];this._bindingDictionary.traverse(($,W)=>{F.push(this._deactivateSingletonsAsync(W))}),await Promise.all(F),this._bindingDictionary=new k.Lookup}onActivation(F,$){this._activations.add(F,$)}onDeactivation(F,$){this._deactivations.add(F,$)}isBound(F){let $=this._bindingDictionary.hasKey(F);return!$&&this.parent&&($=this.parent.isBound(F)),$}isCurrentBound(F){return this._bindingDictionary.hasKey(F)}isBoundNamed(F,$){return this.isBoundTagged(F,g.NAMED_TAG,$)}isBoundTagged(F,$,W){let re=!1;if(this._bindingDictionary.hasKey(F)){const ae=this._bindingDictionary.get(F),ce=(0,C.createMockRequest)(this,F,{customTag:{key:$,value:W},isMultiInject:!1});re=ae.some(J=>J.constraint(ce))}return!re&&this.parent&&(re=this.parent.isBoundTagged(F,$,W)),re}snapshot(){this._snapshots.push(j.ContainerSnapshot.of(this._bindingDictionary.clone(),this._middleware,this._activations.clone(),this._deactivations.clone(),this._moduleActivationStore.clone()))}restore(){const F=this._snapshots.pop();if(F===void 0)throw new Error(m.NO_MORE_SNAPSHOTS_AVAILABLE);this._bindingDictionary=F.bindings,this._activations=F.activations,this._deactivations=F.deactivations,this._middleware=F.middleware,this._moduleActivationStore=F.moduleActivationStore}createChild(F){const $=new R(F||this.options);return $.parent=this,$}applyMiddleware(...F){const $=this._middleware?this._middleware:this._planAndResolve();this._middleware=F.reduce((W,re)=>re(W),$)}applyCustomMetadataReader(F){this._metadataReader=F}get(F){const $=this._getNotAllArgs(F,!1,!1);return this._getButThrowIfAsync($)}async getAsync(F){const $=this._getNotAllArgs(F,!1,!1);return this._get($)}getTagged(F,$,W){const re=this._getNotAllArgs(F,!1,!1,$,W);return this._getButThrowIfAsync(re)}async getTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!1,!1,$,W);return this._get(re)}getNamed(F,$){return this.getTagged(F,g.NAMED_TAG,$)}async getNamedAsync(F,$){return this.getTaggedAsync(F,g.NAMED_TAG,$)}getAll(F,$){const W=this._getAllArgs(F,$,!1);return this._getButThrowIfAsync(W)}async getAllAsync(F,$){const W=this._getAllArgs(F,$,!1);return this._getAll(W)}getAllTagged(F,$,W){const re=this._getNotAllArgs(F,!0,!1,$,W);return this._getButThrowIfAsync(re)}async getAllTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!0,!1,$,W);return this._getAll(re)}getAllNamed(F,$){return this.getAllTagged(F,g.NAMED_TAG,$)}async getAllNamedAsync(F,$){return this.getAllTaggedAsync(F,g.NAMED_TAG,$)}resolve(F){const $=this.isBound(F);$||this.bind(F).toSelf();const W=this.get(F);return $||this.unbind(F),W}tryGet(F){const $=this._getNotAllArgs(F,!1,!0);return this._getButThrowIfAsync($)}async tryGetAsync(F){const $=this._getNotAllArgs(F,!1,!0);return this._get($)}tryGetTagged(F,$,W){const re=this._getNotAllArgs(F,!1,!0,$,W);return this._getButThrowIfAsync(re)}async tryGetTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!1,!0,$,W);return this._get(re)}tryGetNamed(F,$){return this.tryGetTagged(F,g.NAMED_TAG,$)}async tryGetNamedAsync(F,$){return this.tryGetTaggedAsync(F,g.NAMED_TAG,$)}tryGetAll(F,$){const W=this._getAllArgs(F,$,!0);return this._getButThrowIfAsync(W)}async tryGetAllAsync(F,$){const W=this._getAllArgs(F,$,!0);return this._getAll(W)}tryGetAllTagged(F,$,W){const re=this._getNotAllArgs(F,!0,!0,$,W);return this._getButThrowIfAsync(re)}async tryGetAllTaggedAsync(F,$,W){const re=this._getNotAllArgs(F,!0,!0,$,W);return this._getAll(re)}tryGetAllNamed(F,$){return this.tryGetAllTagged(F,g.NAMED_TAG,$)}async tryGetAllNamedAsync(F,$){return this.tryGetAllTaggedAsync(F,g.NAMED_TAG,$)}_preDestroy(F,$){if(F!==void 0&&Reflect.hasMetadata(g.PRE_DESTROY,F)){const W=Reflect.getMetadata(g.PRE_DESTROY,F);return $[W.value]?.()}}_removeModuleHandlers(F){const $=this._moduleActivationStore.remove(F);this._activations.removeIntersection($.onActivations),this._deactivations.removeIntersection($.onDeactivations)}_removeModuleBindings(F){return this._bindingDictionary.removeByCondition($=>$.moduleId===F)}_deactivate(F,$){const W=$==null?void 0:Object.getPrototypeOf($).constructor;try{if(this._deactivations.hasKey(F.serviceIdentifier)){const ae=this._deactivateContainer($,this._deactivations.get(F.serviceIdentifier).values());if((0,_.isPromise)(ae))return this._handleDeactivationError(ae.then(async()=>this._propagateContainerDeactivationThenBindingAndPreDestroyAsync(F,$,W)),F.serviceIdentifier)}const re=this._propagateContainerDeactivationThenBindingAndPreDestroy(F,$,W);if((0,_.isPromise)(re))return this._handleDeactivationError(re,F.serviceIdentifier)}catch(re){if(re instanceof Error)throw new Error(m.ON_DEACTIVATION_ERROR((0,O.getServiceIdentifierAsString)(F.serviceIdentifier),re.message))}}async _handleDeactivationError(F,$){try{await F}catch(W){if(W instanceof Error)throw new Error(m.ON_DEACTIVATION_ERROR((0,O.getServiceIdentifierAsString)($),W.message))}}_deactivateContainer(F,$){let W=$.next();for(;typeof W.value=="function";){const re=W.value(F);if((0,_.isPromise)(re))return re.then(async()=>this._deactivateContainerAsync(F,$));W=$.next()}}async _deactivateContainerAsync(F,$){let W=$.next();for(;typeof W.value=="function";)await W.value(F),W=$.next()}_getContainerModuleHelpersFactory(){const F=te=>fe=>{const ve=this._buildBinding(fe);return ve.moduleId=te,this._bind(ve)},$=()=>te=>{this.unbind(te)},W=()=>async te=>this.unbindAsync(te),re=()=>te=>this.isBound(te),ae=te=>{const fe=F(te);return ve=>(this.unbind(ve),fe(ve))},ce=te=>(fe,ve)=>{this._moduleActivationStore.addActivation(te,fe,ve),this.onActivation(fe,ve)},J=te=>(fe,ve)=>{this._moduleActivationStore.addDeactivation(te,fe,ve),this.onDeactivation(fe,ve)};return te=>({bindFunction:F(te),isboundFunction:re(),onActivationFunction:ce(te),onDeactivationFunction:J(te),rebindFunction:ae(te),unbindAsyncFunction:W(),unbindFunction:$()})}_bind(F){return this._bindingDictionary.add(F.serviceIdentifier,F),new M.BindingToSyntax(F)}_buildBinding(F){const $=this.options.defaultScope||P.BindingScopeEnum.Transient;return new w.Binding(F,$)}async _getAll(F){return Promise.all(this._get(F))}_get(F){const $={...F,contextInterceptor:W=>W,targetType:P.TargetTypeEnum.Variable};if(this._middleware){const W=this._middleware($);if(W==null)throw new Error(m.INVALID_MIDDLEWARE_RETURN);return W}return this._planAndResolve()($)}_getButThrowIfAsync(F){const $=this._get(F);if((0,_.isPromiseOrContainsPromise)($))throw new Error(m.LAZY_IN_SYNC(F.serviceIdentifier));return $}_getAllArgs(F,$,W){return{avoidConstraints:!($?.enforceBindingConstraints??!1),isMultiInject:!0,isOptional:W,serviceIdentifier:F}}_getNotAllArgs(F,$,W,re,ae){return{avoidConstraints:!1,isMultiInject:$,isOptional:W,key:re,serviceIdentifier:F,value:ae}}_getPlanMetadataFromNextArgs(F){const $={isMultiInject:F.isMultiInject};return F.key!==void 0&&($.customTag={key:F.key,value:F.value}),F.isOptional===!0&&($.isOptional=!0),$}_planAndResolve(){return F=>{let $=(0,C.plan)(this._metadataReader,this,F.targetType,F.serviceIdentifier,this._getPlanMetadataFromNextArgs(F),F.avoidConstraints);return $=F.contextInterceptor($),(0,T.resolve)($)}}_deactivateIfSingleton(F){if(F.activated)return(0,_.isPromise)(F.cache)?F.cache.then($=>this._deactivate(F,$)):this._deactivate(F,F.cache)}_deactivateSingletons(F){for(const $ of F){const W=this._deactivateIfSingleton($);if((0,_.isPromise)(W))throw new Error(m.ASYNC_UNBIND_REQUIRED)}}async _deactivateSingletonsAsync(F){await Promise.all(F.map(async $=>this._deactivateIfSingleton($)))}_propagateContainerDeactivationThenBindingAndPreDestroy(F,$,W){return this.parent?this._deactivate.bind(this.parent)(F,$):this._bindingDeactivationAndPreDestroy(F,$,W)}async _propagateContainerDeactivationThenBindingAndPreDestroyAsync(F,$,W){this.parent?await this._deactivate.bind(this.parent)(F,$):await this._bindingDeactivationAndPreDestroyAsync(F,$,W)}_removeServiceFromDictionary(F){try{this._bindingDictionary.remove(F)}catch{throw new Error(`${m.CANNOT_UNBIND} ${(0,O.getServiceIdentifierAsString)(F)}`)}}_bindingDeactivationAndPreDestroy(F,$,W){if(typeof F.onDeactivation=="function"){const re=F.onDeactivation($);if((0,_.isPromise)(re))return re.then(()=>this._preDestroy(W,$))}return this._preDestroy(W,$)}async _bindingDeactivationAndPreDestroyAsync(F,$,W){typeof F.onDeactivation=="function"&&await F.onDeactivation($),await this._preDestroy(W,$)}}return rm.Container=R,rm}var _M={},Wdt;function ZVt(){if(Wdt)return _M;Wdt=1,Object.defineProperty(_M,"__esModule",{value:!0}),_M.AsyncContainerModule=_M.ContainerModule=void 0;const f=vA();class h{id;registry;constructor(m){this.id=(0,f.id)(),this.registry=m}}_M.ContainerModule=h;class b{id;registry;constructor(m){this.id=(0,f.id)(),this.registry=m}}return _M.AsyncContainerModule=b,_M}var Tb={},XY={},Ydt;function eGt(){if(Ydt)return XY;Ydt=1,Object.defineProperty(XY,"__esModule",{value:!0}),XY.getFirstArrayDuplicate=f;function f(h){const b=new Set;for(const w of h){if(b.has(w))return w;b.add(w)}}return XY}var Xdt;function vS(){if(Xdt)return Tb;Xdt=1;var f=Tb&&Tb.__createBinding||(Object.create?(function(x,R,H,F){F===void 0&&(F=H);var $=Object.getOwnPropertyDescriptor(R,H);(!$||("get"in $?!R.__esModule:$.writable||$.configurable))&&($={enumerable:!0,get:function(){return R[H]}}),Object.defineProperty(x,F,$)}):(function(x,R,H,F){F===void 0&&(F=H),x[F]=R[H]})),h=Tb&&Tb.__setModuleDefault||(Object.create?(function(x,R){Object.defineProperty(x,"default",{enumerable:!0,value:R})}):function(x,R){x.default=R}),b=Tb&&Tb.__importStar||(function(){var x=function(R){return x=Object.getOwnPropertyNames||function(H){var F=[];for(var $ in H)Object.prototype.hasOwnProperty.call(H,$)&&(F[F.length]=$);return F},x(R)};return function(R){if(R&&R.__esModule)return R;var H={};if(R!=null)for(var F=x(R),$=0;$F.key));if(H!==void 0)throw new Error(`${w.DUPLICATED_METADATA} ${H.toString()}`)}else R=[x];return R}function _(x,R,H,F){const $=M(F);let W={};Reflect.hasOwnMetadata(x,R)&&(W=Reflect.getMetadata(x,R));let re=W[H];if(re===void 0)re=[];else for(const ae of re)if($.some(ce=>ce.key===ae.key))throw new Error(`${w.DUPLICATED_METADATA} ${ae.key.toString()}`);re.push(...$),W[H]=re,Reflect.defineMetadata(x,W,R)}function I(x){return(R,H,F)=>{typeof F=="number"?C(R,H,F,x):T(R,H,x)}}function O(x,R){Reflect.decorate(x,R)}function j(x,R){return function(H,F){R(H,F,x)}}function k(x,R,H){typeof H=="number"?O([j(H,x)],R):typeof H=="string"?Reflect.decorate([x],R,H):O([x],R)}return Tb}var ty={},Jdt;function tGt(){if(Jdt)return ty;Jdt=1;var f=ty&&ty.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=ty&&ty.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=ty&&ty.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M(g,E,C)=>{if(P===void 0){const T=typeof g=="function"?g.name:g.constructor.name;throw new Error((0,f.UNDEFINED_INJECT_ANNOTATION)(T))}(0,b.createTaggedDecorator)(new h.Metadata(m,P))(g,E,C)}}return QY}var t1t;function rGt(){if(t1t)return am;t1t=1;var f=am&&am.__createBinding||(Object.create?(function(g,E,C,T){T===void 0&&(T=C);var M=Object.getOwnPropertyDescriptor(E,C);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[C]}}),Object.defineProperty(g,T,M)}):(function(g,E,C,T){T===void 0&&(T=C),g[T]=E[C]})),h=am&&am.__setModuleDefault||(Object.create?(function(g,E){Object.defineProperty(g,"default",{enumerable:!0,value:E})}):function(g,E){g.default=E}),b=am&&am.__importStar||(function(){var g=function(E){return g=Object.getOwnPropertyNames||function(C){var T=[];for(var M in C)Object.prototype.hasOwnProperty.call(C,M)&&(T[T.length]=M);return T},g(E)};return function(E){if(E&&E.__esModule)return E;var C={};if(E!=null)for(var T=g(E),M=0;M(m,P)=>{const g=new f.Metadata(b,P);if(Reflect.hasOwnMetadata(b,m.constructor))throw new Error(w);Reflect.defineMetadata(b,g,m.constructor)}}return ZY}var s1t;function aGt(){if(s1t)return fm;s1t=1;var f=fm&&fm.__createBinding||(Object.create?(function(E,C,T,M){M===void 0&&(M=T);var _=Object.getOwnPropertyDescriptor(C,T);(!_||("get"in _?!C.__esModule:_.writable||_.configurable))&&(_={enumerable:!0,get:function(){return C[T]}}),Object.defineProperty(E,M,_)}):(function(E,C,T,M){M===void 0&&(M=T),E[M]=C[T]})),h=fm&&fm.__setModuleDefault||(Object.create?(function(E,C){Object.defineProperty(E,"default",{enumerable:!0,value:C})}):function(E,C){E.default=C}),b=fm&&fm.__importStar||(function(){var E=function(C){return E=Object.getOwnPropertyNames||function(T){var M=[];for(var _ in T)Object.prototype.hasOwnProperty.call(T,_)&&(M[M.length]=_);return M},E(C)};return function(C){if(C&&C.__esModule)return C;var T={};if(C!=null)for(var M=E(C),_=0;_{this.resolve=b,this.reject=w}),this.promise.then(b=>this._state="resolved",b=>this._state="rejected")}set state(b){this._state==="unresolved"&&(this._state=b)}get state(){return this._state}}return dL.Deferred=f,dL}var gL={},d1t;function Qn(){return d1t||(d1t=1,Object.defineProperty(gL,"__esModule",{value:!0}),gL.TYPES=void 0,gL.TYPES={Action:Symbol("Action"),IActionDispatcher:Symbol("IActionDispatcher"),IActionDispatcherProvider:Symbol("IActionDispatcherProvider"),IActionHandlerInitializer:Symbol("IActionHandlerInitializer"),ActionHandlerRegistration:Symbol("ActionHandlerRegistration"),ActionHandlerRegistryProvider:Symbol("ActionHandlerRegistryProvider"),IAnchorComputer:Symbol("IAnchor"),AnimationFrameSyncer:Symbol("AnimationFrameSyncer"),IButtonHandlerRegistration:Symbol("IButtonHandlerRegistration"),ICommandPaletteActionProvider:Symbol("ICommandPaletteActionProvider"),ICommandPaletteActionProviderRegistry:Symbol("ICommandPaletteActionProviderRegistry"),CommandRegistration:Symbol("CommandRegistration"),ICommandStack:Symbol("ICommandStack"),CommandStackOptions:Symbol("CommandStackOptions"),ICommandStackProvider:Symbol("ICommandStackProvider"),IContextMenuItemProvider:Symbol.for("IContextMenuProvider"),IContextMenuProviderRegistry:Symbol.for("IContextMenuProviderRegistry"),IContextMenuService:Symbol.for("IContextMenuService"),IContextMenuServiceProvider:Symbol.for("IContextMenuServiceProvider"),DOMHelper:Symbol("DOMHelper"),IDiagramLocker:Symbol("IDiagramLocker"),IEdgeRouter:Symbol("IEdgeRouter"),IEdgeRoutePostprocessor:Symbol("IEdgeRoutePostprocessor"),IEditLabelValidationDecorator:Symbol("IEditLabelValidationDecorator"),IEditLabelValidator:Symbol("IEditLabelValidator"),HiddenModelViewer:Symbol("HiddenModelViewer"),HiddenVNodePostprocessor:Symbol("HiddenVNodeDecorator"),HoverState:Symbol("HoverState"),KeyListener:Symbol("KeyListener"),LayoutRegistration:Symbol("LayoutRegistration"),LayoutRegistry:Symbol("LayoutRegistry"),Layouter:Symbol("Layouter"),LogLevel:Symbol("LogLevel"),ILogger:Symbol("ILogger"),IModelFactory:Symbol("IModelFactory"),IModelLayoutEngine:Symbol("IModelLayoutEngine"),ModelRendererFactory:Symbol("ModelRendererFactory"),ModelSource:Symbol("ModelSource"),ModelSourceProvider:Symbol("ModelSourceProvider"),ModelViewer:Symbol("ModelViewer"),MouseListener:Symbol("MouseListener"),PatcherProvider:Symbol("PatcherProvider"),IPopupModelProvider:Symbol("IPopupModelProvider"),PopupModelViewer:Symbol("PopupModelViewer"),PopupMouseListener:Symbol("PopupMouseListener"),PopupVNodePostprocessor:Symbol("PopupVNodeDecorator"),SModelElementRegistration:Symbol("SModelElementRegistration"),SModelRegistry:Symbol("SModelRegistry"),ISnapper:Symbol("ISnapper"),SvgExporter:Symbol("SvgExporter"),ISvgExportPostprocessor:Symbol("ISvgExportPostprocessor"),IUIExtension:Symbol("IUIExtension"),UIExtensionRegistry:Symbol("UIExtensionRegistry"),IVNodePostprocessor:Symbol("IVNodePostprocessor"),ViewRegistration:Symbol("ViewRegistration"),ViewRegistry:Symbol("ViewRegistry"),IViewer:Symbol("IViewer"),ViewerOptions:Symbol("ViewerOptions"),IViewerProvider:Symbol("IViewerProvider")}),gL}var tf={},ah={},g1t;function q3(){if(g1t)return ah;g1t=1;var f=ah&&ah.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(ah,"__esModule",{value:!0}),ah.MultiInstanceRegistry=ah.InstanceRegistry=ah.FactoryRegistry=ah.ProviderRegistry=void 0;const h=Zt();let b=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");if(this.hasKey(E))throw new Error("Key is already registered: "+E);this.elements.set(E,C)}deregister(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}hasKey(E){return this.elements.has(E)}get(E,C){const T=this.elements.get(E);return T?new T(C):this.missing(E,C)}missing(E,C){throw new Error("Unknown registry key: "+E)}};ah.ProviderRegistry=b,ah.ProviderRegistry=b=f([(0,h.injectable)()],b);let w=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");if(this.hasKey(E))throw new Error(`Key is already registered: ${E}. Use \`overrideModelElement\` instead.`);this.elements.set(E,C)}override(E,C){if(E===void 0)throw new Error("Key is undefined");if(!this.hasKey(E))throw new Error(`Key is not registered: ${E}. Use \`configureModelElement\` instead.`);this.elements.set(E,C)}deregister(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}hasKey(E){return this.elements.has(E)}get(E,C){const T=this.elements.get(E);return T?T(C):this.missing(E,C)}missing(E,C){throw new Error("Unknown registry key: "+E)}};ah.FactoryRegistry=w,ah.FactoryRegistry=w=f([(0,h.injectable)()],w);let m=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");if(this.hasKey(E))throw new Error(`Key is already registered: ${E}. Use \`overrideModelElement\` instead.`);this.elements.set(E,C)}override(E,C){if(E===void 0)throw new Error("Key is undefined");if(!this.hasKey(E))throw new Error(`Key is not registered: ${E}. Use \`configureModelElement\` instead.`);this.elements.set(E,C)}deregister(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}hasKey(E){return this.elements.has(E)}get(E){const C=this.elements.get(E);return C||this.missing(E)}missing(E){throw new Error("Unknown registry key: "+E)}};ah.InstanceRegistry=m,ah.InstanceRegistry=m=f([(0,h.injectable)()],m);let P=class{constructor(){this.elements=new Map}register(E,C){if(E===void 0)throw new Error("Key is undefined");const T=this.elements.get(E);T!==void 0?T.push(C):this.elements.set(E,[C])}deregisterAll(E){if(E===void 0)throw new Error("Key is undefined");this.elements.delete(E)}get(E){const C=this.elements.get(E);return C!==void 0?C:[]}};return ah.MultiInstanceRegistry=P,ah.MultiInstanceRegistry=P=f([(0,h.injectable)()],P),ah}var lh={},Xu={},b1t;function Ac(){if(b1t)return Xu;b1t=1,Object.defineProperty(Xu,"__esModule",{value:!0}),Xu.almostEquals=Xu.toRadians=Xu.toDegrees=Xu.Bounds=Xu.isBounds=Xu.Dimension=Xu.centerOfLine=Xu.angleBetweenPoints=Xu.angleOfPoint=Xu.Point=void 0;const f=_S();var h;(function(_){_.ORIGIN=Object.freeze({x:0,y:0});function I(ae,ce){return{x:ae.x+ce.x,y:ae.y+ce.y}}_.add=I;function O(ae,ce){return{x:ae.x-ce.x,y:ae.y-ce.y}}_.subtract=O;function j(ae,ce){return ae.x===ce.x&&ae.y===ce.y}_.equals=j;function k(ae,ce,J){const te=O(ce,ae),fe=x(te),ve={x:fe.x*J,y:fe.y*J};return I(ae,ve)}_.shiftTowards=k;function x(ae){const ce=R(ae);return ce===0||ce===1?_.ORIGIN:{x:ae.x/ce,y:ae.y/ce}}_.normalize=x;function R(ae){return Math.sqrt(Math.pow(ae.x,2)+Math.pow(ae.y,2))}_.magnitude=R;function H(ae,ce,J){return{x:(1-J)*ae.x+J*ce.x,y:(1-J)*ae.y+J*ce.y}}_.linear=H;function F(ae,ce){const J=ce.x-ae.x,te=ce.y-ae.y;return Math.sqrt(J*J+te*te)}_.euclideanDistance=F;function $(ae,ce){return Math.abs(ce.x-ae.x)+Math.abs(ce.y-ae.y)}_.manhattanDistance=$;function W(ae,ce){return Math.max(Math.abs(ce.x-ae.x),Math.abs(ce.y-ae.y))}_.maxDistance=W;function re(ae,ce){return ae.x*ce.x+ae.y*ce.y}_.dotProduct=re})(h||(Xu.Point=h={}));function b(_){return Math.atan2(_.y,_.x)}Xu.angleOfPoint=b;function w(_,I){const O=Math.sqrt((_.x*_.x+_.y*_.y)*(I.x*I.x+I.y*I.y));if(isNaN(O)||O===0)return NaN;const j=_.x*I.x+_.y*I.y;return Math.acos(j/O)}Xu.angleBetweenPoints=w;function m(_,I){const O={x:_.x>I.x?I.x:_.x,y:_.y>I.y?I.y:_.y,width:Math.abs(I.x-_.x),height:Math.abs(I.y-_.y)};return E.center(O)}Xu.centerOfLine=m;var P;(function(_){_.EMPTY=Object.freeze({width:-1,height:-1});function I(O){return O.width>=0&&O.height>=0}_.isValid=I})(P||(Xu.Dimension=P={}));function g(_){return(0,f.hasOwnProperty)(_,["x","y","width","height"])}Xu.isBounds=g;var E;(function(_){_.EMPTY=Object.freeze({x:0,y:0,width:-1,height:-1});function I(x,R){if(!P.isValid(x))return P.isValid(R)?R:_.EMPTY;if(!P.isValid(R))return x;const H=Math.min(x.x,R.x),F=Math.min(x.y,R.y),$=Math.max(x.x+(x.width>=0?x.width:0),R.x+(R.width>=0?R.width:0)),W=Math.max(x.y+(x.height>=0?x.height:0),R.y+(R.height>=0?R.height:0));return{x:H,y:F,width:$-H,height:W-F}}_.combine=I;function O(x,R){return{x:x.x+R.x,y:x.y+R.y,width:x.width,height:x.height}}_.translate=O;function j(x){return{x:x.x+(x.width>=0?.5*x.width:0),y:x.y+(x.height>=0?.5*x.height:0)}}_.center=j;function k(x,R){return R.x>=x.x&&R.x<=x.x+x.width&&R.y>=x.y&&R.y<=x.y+x.height}_.includes=k})(E||(Xu.Bounds=E={}));function C(_){return _*180/Math.PI}Xu.toDegrees=C;function T(_){return _*Math.PI/180}Xu.toRadians=T;function M(_,I){return Math.abs(_-I)<.001}return Xu.almostEquals=M,Xu}var Xme={},p1t;function _A(){return p1t||(p1t=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.mapIterable=f.filterIterable=f.DONE_RESULT=f.toArray=f.FluentIterableImpl=void 0;class h{constructor(C,T){this.startFn=C,this.nextFn=T}[Symbol.iterator](){const C={state:this.startFn(),next:()=>this.nextFn(C.state),[Symbol.iterator]:()=>C};return C}filter(C){return w(this,C)}map(C){return m(this,C)}forEach(C){const T=this[Symbol.iterator]();let M=0,_;do _=T.next(),_.value!==void 0&&C(_.value,M),M++;while(!_.done)}indexOf(C){const T=this[Symbol.iterator]();let M=0,_;do{if(_=T.next(),_.value===C)return M;M++}while(!_.done);return-1}}f.FluentIterableImpl=h;function b(E){if(E.constructor===Array)return E;const C=[];return E.forEach(T=>C.push(T)),C}f.toArray=b,f.DONE_RESULT=Object.freeze({done:!0,value:void 0});function w(E,C){return new h(()=>P(E),T=>{let M;do M=T.next();while(!M.done&&!C(M.value));return M})}f.filterIterable=w;function m(E,C){return new h(()=>P(E),T=>{const{done:M,value:_}=T.next();return M?f.DONE_RESULT:{done:!1,value:C(_)}})}f.mapIterable=m;function P(E){const C=E[Symbol.iterator];if(typeof C=="function")return C.call(E);const T=E.length;return typeof T=="number"&&T>=0?new g(E):{next:()=>f.DONE_RESULT}}class g{constructor(C){this.array=C,this.index=0}next(){return this.indexthis.children.length)throw new Error(`Child index ${I} out of bounds (0..${O.length})`);O.splice(I,0,_)}_.parent=this,this.index.add(_)}remove(_){const I=this.children,O=I.indexOf(_);if(O<0)throw new Error(`No such child ${_.id}`);I.splice(O,1),this.index.remove(_)}removeAll(_){const I=this.children;if(_!==void 0){for(let O=I.length-1;O>=0;O--)if(_(I[O])){const j=I.splice(O,1)[0];this.index.remove(j)}}else I.forEach(O=>{this.index.remove(O)}),I.splice(0,I.length)}move(_,I){const O=this.children,j=O.indexOf(_);if(j===-1)throw new Error(`No such child ${_.id}`);if(I<0||I>O.length-1)throw new Error(`Child index ${I} out of bounds (0..${O.length})`);O.splice(j,1),O.splice(I,0,_)}localToParent(_){return(0,f.isBounds)(_)?_:{x:_.x,y:_.y,width:-1,height:-1}}parentToLocal(_){return(0,f.isBounds)(_)?_:{x:_.x,y:_.y,width:-1,height:-1}}}lh.SParentElementImpl=m;class P extends m{}lh.SChildElementImpl=P;class g extends m{constructor(_=new T){super(),this.canvasBounds=f.Bounds.EMPTY,Object.defineProperty(this,"index",{value:_,writable:!1})}}lh.SModelRootImpl=g;const E="0123456789abcdefghijklmnopqrstuvwxyz";function C(M=8){let _="";for(let I=0;II)}}return lh.ModelIndexImpl=T,lh}var m1t;function ES(){if(m1t)return tf;m1t=1;var f=tf&&tf.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=tf&&tf.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=tf&&tf.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(tf,"__esModule",{value:!0}),tf.createFeatureSet=tf.EMPTY_ROOT=tf.SModelFactory=tf.SModelRegistry=void 0;const w=Zt(),m=Qn(),P=q3(),g=Oc();let E=class extends P.FactoryRegistry{constructor(_){super(),_.forEach(I=>{let O=this.getDefaultFeatures(I.constr);if(!O&&I.features&&I.features.enable&&(O=[]),O){const j=T(O,I.features);I.isOverride?this.override(I.type,()=>{const k=new I.constr;return k.features=j,k}):this.register(I.type,()=>{const k=new I.constr;return k.features=j,k})}else I.isOverride?this.override(I.type,()=>new I.constr):this.register(I.type,()=>new I.constr)})}getDefaultFeatures(_){let I=_;do{const O=I.DEFAULT_FEATURES;if(O)return O;I=Object.getPrototypeOf(I)}while(I)}};tf.SModelRegistry=E,tf.SModelRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.SModelElementRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);let C=class{createElement(_,I){let O;if(this.registry.hasKey(_.type)){const j=this.registry.get(_.type,void 0);if(!(j instanceof g.SChildElementImpl))throw new Error(`Element with type ${_.type} was expected to be an SChildElement.`);O=j}else O=new g.SChildElementImpl;return this.initializeChild(O,_,I)}createRoot(_){let I;if(this.registry.hasKey(_.type)){const O=this.registry.get(_.type,void 0);if(!(O instanceof g.SModelRootImpl))throw new Error(`Element with type ${_.type} was expected to be an SModelRoot.`);I=O}else I=new g.SModelRootImpl;return this.initializeRoot(I,_)}createSchema(_){const I={};for(const O in _)if(!this.isReserved(_,O)){const j=_[O];typeof j!="function"&&(I[O]=j)}return _ instanceof g.SParentElementImpl&&(I.children=_.children.map(O=>this.createSchema(O))),I}initializeElement(_,I){for(const O in I)if(!this.isReserved(_,O)){const j=I[O];typeof j!="function"&&(_[O]=j)}return _}isReserved(_,I){if(["children","parent","index"].indexOf(I)>=0)return!0;let O=_;do{const j=Object.getOwnPropertyDescriptor(O,I);if(j!==void 0)return j.get!==void 0;O=Object.getPrototypeOf(O)}while(O);return!1}initializeParent(_,I){return this.initializeElement(_,I),(0,g.isParent)(I)&&(_.children=I.children.map(O=>this.createElement(O,_))),_}initializeChild(_,I,O){return this.initializeParent(_,I),O!==void 0&&(_.parent=O),_}initializeRoot(_,I){return this.initializeParent(_,I),_.index.add(_),_}};tf.SModelFactory=C,f([(0,w.inject)(m.TYPES.SModelRegistry),h("design:type",E)],C.prototype,"registry",void 0),tf.SModelFactory=C=f([(0,w.injectable)()],C),tf.EMPTY_ROOT=Object.freeze({type:"NONE",id:"EMPTY"});function T(M,_){const I=new Set(M);if(_&&_.enable)for(const O of _.enable)I.add(O);if(_&&_.disable)for(const O of _.disable)I.delete(O);return I}return tf.createFeatureSet=T,tf}var K4={},v1t;function eN(){if(v1t)return K4;v1t=1;var f=K4&&K4.__decorate||function(w,m,P,g){var E=arguments.length,C=E<3?m:g===null?g=Object.getOwnPropertyDescriptor(m,P):g,T;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(w,m,P,g);else for(var M=w.length-1;M>=0;M--)(T=w[M])&&(C=(E<3?T(C):E>3?T(m,P,C):T(m,P))||C);return E>3&&C&&Object.defineProperty(m,P,C),C};Object.defineProperty(K4,"__esModule",{value:!0}),K4.AnimationFrameSyncer=void 0;const h=Zt();let b=class{constructor(){this.tasks=[],this.endTasks=[],this.triggered=!1}isAvailable(){return typeof requestAnimationFrame=="function"}onNextFrame(m){this.tasks.push(m),this.trigger()}onEndOfNextFrame(m){this.endTasks.push(m),this.trigger()}trigger(){this.triggered||(this.triggered=!0,this.isAvailable()?requestAnimationFrame(m=>this.run(m)):setTimeout(m=>this.run(m)))}run(m){const P=this.tasks,g=this.endTasks;this.triggered=!1,this.tasks=[],this.endTasks=[],P.forEach(E=>E.call(void 0,m)),g.forEach(E=>E.call(void 0,m))}};return K4.AnimationFrameSyncer=b,K4.AnimationFrameSyncer=b=f([(0,h.injectable)()],b),K4}var y1t;function Rye(){if(y1t)return Qv;y1t=1;var f=Qv&&Qv.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=Qv&&Qv.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)};Object.defineProperty(Qv,"__esModule",{value:!0}),Qv.ActionDispatcher=void 0;const b=Zt(),w=jc(),m=kye(),P=Qn(),g=ES(),E=eN();(0,w.setRequestContext)("client");let C=class{constructor(){this.postponedActions=[],this.requests=new Map}initialize(){return this.initialized||(this.initialized=this.actionHandlerRegistryProvider().then(M=>{this.actionHandlerRegistry=M,this.handleAction(w.SetModelAction.create(g.EMPTY_ROOT)).catch(()=>{})})),this.initialized}dispatch(M){return this.initialize().then(()=>{if(this.blockUntil!==void 0)return this.handleBlocked(M,this.blockUntil);if(this.diagramLocker.isAllowed(M))return this.handleAction(M)})}dispatchAll(M){return Promise.all(M.map(_=>this.dispatch(_)))}request(M){if(!M.requestId)return Promise.reject(new Error("Request without requestId"));const _=new m.Deferred;return this.requests.set(M.requestId,_),this.dispatch(M).catch(()=>{}),_.promise}handleAction(M){if(M.kind===w.UndoAction.KIND)return this.commandStack.undo().then(()=>{});if(M.kind===w.RedoAction.KIND)return this.commandStack.redo().then(()=>{});if((0,w.isResponseAction)(M)){const O=this.requests.get(M.responseId);if(O!==void 0){if(this.requests.delete(M.responseId),M.kind===w.RejectAction.KIND){const j=M;O.reject(new Error(j.message)),this.logger.warn(this,`Request with id ${M.responseId} failed.`,j.message,j.detail)}else O.resolve(M);return Promise.resolve()}this.logger.log(this,"No matching request for response",M)}const _=this.actionHandlerRegistry.get(M.kind);if(_.length===0){this.logger.warn(this,"Missing handler for action",M);const O=new Error(`Missing handler for action '${M.kind}'`);if((0,w.isRequestAction)(M)){const j=this.requests.get(M.requestId);j!==void 0&&(this.requests.delete(M.requestId),j.reject(O))}return Promise.reject(O)}this.logger.log(this,"Handle",M);const I=[];for(const O of _){const j=O.handle(M);(0,w.isAction)(j)?I.push(this.dispatch(j)):j!==void 0&&(I.push(this.commandStack.execute(j)),this.blockUntil=j.blockUntil)}return Promise.all(I)}handleBlocked(M,_){if(_(M)){this.blockUntil=void 0;const I=this.handleAction(M),O=this.postponedActions;this.postponedActions=[];for(const j of O)this.dispatch(j.action).then(j.resolve,j.reject);return I}else return this.logger.log(this,"Action is postponed due to block condition",M),new Promise((I,O)=>{this.postponedActions.push({action:M,resolve:I,reject:O})})}};return Qv.ActionDispatcher=C,f([(0,b.inject)(P.TYPES.ActionHandlerRegistryProvider),h("design:type",Function)],C.prototype,"actionHandlerRegistryProvider",void 0),f([(0,b.inject)(P.TYPES.ICommandStack),h("design:type",Object)],C.prototype,"commandStack",void 0),f([(0,b.inject)(P.TYPES.ILogger),h("design:type",Object)],C.prototype,"logger",void 0),f([(0,b.inject)(P.TYPES.AnimationFrameSyncer),h("design:type",E.AnimationFrameSyncer)],C.prototype,"syncer",void 0),f([(0,b.inject)(P.TYPES.IDiagramLocker),h("design:type",Object)],C.prototype,"diagramLocker",void 0),Qv.ActionDispatcher=C=f([(0,b.injectable)()],C),Qv}var Xh={},bL={},_1t;function EA(){if(_1t)return bL;_1t=1,Object.defineProperty(bL,"__esModule",{value:!0}),bL.isInjectable=void 0;function f(h){return Reflect.getMetadata("inversify:paramtypes",h)!==void 0}return bL.isInjectable=f,bL}var E1t;function lJ(){if(E1t)return Xh;E1t=1;var f=Xh&&Xh.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Xh&&Xh.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=Xh&&Xh.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(Xh,"__esModule",{value:!0}),Xh.onAction=Xh.configureActionHandler=Xh.ActionHandlerRegistry=void 0;const w=Zt(),m=Qn(),P=q3(),g=EA();let E=class extends P.MultiInstanceRegistry{constructor(_,I){super(),_.forEach(O=>this.register(O.actionKind,O.factory())),I.forEach(O=>this.initializeActionHandler(O))}initializeActionHandler(_){_.initialize(this)}};Xh.ActionHandlerRegistry=E,Xh.ActionHandlerRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.ActionHandlerRegistration)),b(0,(0,w.optional)()),b(1,(0,w.multiInject)(m.TYPES.IActionHandlerInitializer)),b(1,(0,w.optional)()),h("design:paramtypes",[Array,Array])],E);function C(M,_,I){if(typeof I=="function"){if(!(0,g.isInjectable)(I))throw new Error(`Action handlers should be @injectable: ${I.name}`);M.isBound(I)||M.bind(I).toSelf()}M.bind(m.TYPES.ActionHandlerRegistration).toDynamicValue(O=>({actionKind:_,factory:()=>O.container.get(I)}))}Xh.configureActionHandler=C;function T(M,_,I){M.bind(m.TYPES.ActionHandlerRegistration).toConstantValue({actionKind:_,factory:()=>({handle:I})})}return Xh.onAction=T,Xh}var q4={},S1t;function zpt(){if(S1t)return q4;S1t=1;var f=q4&&q4.__decorate||function(w,m,P,g){var E=arguments.length,C=E<3?m:g===null?g=Object.getOwnPropertyDescriptor(m,P):g,T;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(w,m,P,g);else for(var M=w.length-1;M>=0;M--)(T=w[M])&&(C=(E<3?T(C):E>3?T(m,P,C):T(m,P))||C);return E>3&&C&&Object.defineProperty(m,P,C),C};Object.defineProperty(q4,"__esModule",{value:!0}),q4.DefaultDiagramLocker=void 0;const h=Zt();let b=class{isAllowed(m){return!0}};return q4.DefaultDiagramLocker=b,q4.DefaultDiagramLocker=b=f([(0,h.injectable)()],b),q4}var EM={},pL={},P1t;function Vpt(){if(P1t)return pL;P1t=1,Object.defineProperty(pL,"__esModule",{value:!0}),pL.easeInOut=void 0;function f(h){return h<.5?h*h*2:1-(1-h)*(1-h)*2}return pL.easeInOut=f,pL}var M1t;function SA(){if(M1t)return EM;M1t=1,Object.defineProperty(EM,"__esModule",{value:!0}),EM.CompoundAnimation=EM.Animation=void 0;const f=Vpt();class h{constructor(m,P=f.easeInOut){this.context=m,this.ease=P,this.stopped=!1}start(){return this.stopped=!1,new Promise((m,P)=>{let g,E=0;const C=T=>{E++;let M;g===void 0?(g=T,M=0):M=T-g;const _=Math.min(1,M/this.context.duration),I=this.tween(this.ease(_),this.context);this.context.modelChanged.update(I),_===1?(this.context.logger.log(this,E*1e3/this.context.duration+" fps"),m(I)):this.stopped?(this.context.logger.log(this,"Animation stopped at "+_*100+"%"),m(I)):this.context.syncer.onNextFrame(C)};if(this.context.syncer.isAvailable())this.context.syncer.onNextFrame(C);else{const T=this.tween(1,this.context);m(T)}})}stop(){this.stopped=!0}}EM.Animation=h;class b extends h{constructor(m,P,g=[],E=f.easeInOut){super(P,E),this.model=m,this.context=P,this.components=g,this.ease=E}include(m){return this.components.push(m),this}tween(m,P){for(const g of this.components)g.tween(m,P);return this.model}}return EM.CompoundAnimation=b,EM}var su={},SM={},wL={},C1t;function fGt(){if(C1t)return wL;C1t=1,Object.defineProperty(wL,"__esModule",{value:!0}),wL.ServerActionHandlerRegistry=void 0;class f{constructor(){this.handlers=new Map}getHandler(b){return this.handlers.get(b)}onAction(b,w){this.handlers.has(b)?this.handlers.get(b).push(w):this.handlers.set(b,[w])}removeActionHandler(b,w){const m=this.handlers.get(b);if(m){const P=m.indexOf(w);P>=0&&m.splice(P,1)}}}return wL.ServerActionHandlerRegistry=f,wL}var mL={},qd={},I1t;function LM(){if(I1t)return qd;I1t=1,Object.defineProperty(qd,"__esModule",{value:!0}),qd.SModelIndex=qd.findElement=qd.getSubType=qd.getBasicType=qd.applyBounds=qd.cloneModel=void 0;function f(g){return JSON.parse(JSON.stringify(g))}qd.cloneModel=f;function h(g,E){const C=new P;C.add(g);for(const T of E.bounds){const M=C.getById(T.elementId);if(M){const _=M;T.newPosition&&(_.position={x:T.newPosition.x,y:T.newPosition.y}),T.newSize&&(_.size={width:T.newSize.width,height:T.newSize.height})}}if(E.alignments)for(const T of E.alignments){const M=C.getById(T.elementId);if(M){const _=M;_.alignment={x:T.newAlignment.x,y:T.newAlignment.y}}}}qd.applyBounds=h;function b(g){if(!g.type)return"";const E=g.type.indexOf(":");return E>=0?g.type.substring(0,E):g.type}qd.getBasicType=b;function w(g){if(!g.type)return"";const E=g.type.indexOf(":");return E>=0?g.type.substring(E+1):g.type}qd.getSubType=w;function m(g,E){if(g.id===E)return g;if(g.children)for(const C of g.children){const T=m(C,E);if(T!==void 0)return T}}qd.findElement=m;class P{constructor(){this.id2element=new Map,this.id2parent=new Map}add(E){if(E.id){if(this.contains(E))throw new Error("Duplicate ID in model: "+E.id)}else throw new Error("Model element has no ID.");if(this.id2element.set(E.id,E),Array.isArray(E.children))for(const C of E.children)this.add(C),this.id2parent.set(C.id,E);return this}remove(E){if(this.id2element.delete(E.id),Array.isArray(E.children))for(const C of E.children)this.id2parent.delete(C.id),this.remove(C);return this}contains(E){return this.id2element.has(E.id)}getById(E){return this.id2element.get(E)}getParent(E){return this.id2parent.get(E)}getRoot(E){let C=E;for(;C;){const T=this.id2parent.get(C.id);if(T===void 0)return C;C=T}throw new Error("Element has no root")}}return qd.SModelIndex=P,qd}var T1t;function hGt(){if(T1t)return mL;T1t=1,Object.defineProperty(mL,"__esModule",{value:!0}),mL.DiagramServer=void 0;const f=jc(),h=kye(),b=LM();class w{constructor(P,g){this.state={currentRoot:{type:"NONE",id:"ROOT"},revision:0},this.requests=new Map,this.dispatch=P,this.diagramGenerator=g.DiagramGenerator,this.layoutEngine=g.ModelLayoutEngine,this.actionHandlerRegistry=g.ServerActionHandlerRegistry}setModel(P){return P.revision=++this.state.revision,this.state.currentRoot=P,this.submitModel(P,!1)}updateModel(P){return P.revision=++this.state.revision,this.state.currentRoot=P,this.submitModel(P,!0)}get needsClientLayout(){return this.state.options&&this.state.options.needsClientLayout!==void 0?!!this.state.options.needsClientLayout:!0}get needsServerLayout(){return this.state.options&&this.state.options.needsServerLayout!==void 0?!!this.state.options.needsServerLayout:!1}accept(P){if((0,f.isResponseAction)(P)){const g=P.responseId,E=this.requests.get(g);if(E){if(this.requests.delete(g),P.kind===f.RejectAction.KIND){const C=P;E.reject(new Error(C.message)),console.warn(`Request with id ${P.responseId} failed: ${C.message}`,C.detail)}else E.resolve(P);return Promise.resolve()}console.info("No matching request for response:",P)}return this.handleAction(P)}request(P){P.requestId||(P.requestId="server_"+(0,f.generateRequestId)());const g=new h.Deferred;return this.requests.set(P.requestId,g),this.dispatch(P).catch(E=>{this.requests.delete(P.requestId),g.reject(E)}),g.promise}rejectRemoteRequest(P,g){P&&(0,f.isRequestAction)(P)&&this.dispatch({kind:f.RejectAction.KIND,responseId:P.requestId,message:g.message,detail:g.stack})}handleAction(P){var g,E;const C=(g=this.actionHandlerRegistry)===null||g===void 0?void 0:g.getHandler(P.kind);if(C&&C.length===1)return(E=C[0](P,this.state,this))!==null&&E!==void 0?E:Promise.resolve();if(C&&C.length>1)return Promise.all(C.map(T=>{var M;return(M=T(P,this.state,this))!==null&&M!==void 0?M:Promise.resolve()}));switch(P.kind){case f.RequestModelAction.KIND:return this.handleRequestModel(P);case f.ComputedBoundsAction.KIND:return this.handleComputedBounds(P);case f.LayoutAction.KIND:return this.handleLayout(P)}return console.warn(`Unhandled action from client: ${P.kind}`),Promise.resolve()}async handleRequestModel(P){var g;this.state.options=P.options;try{const E=await this.diagramGenerator.generate({options:(g=this.state.options)!==null&&g!==void 0?g:{},state:this.state});E.revision=++this.state.revision,this.state.currentRoot=E,await this.submitModel(this.state.currentRoot,!1,P)}catch(E){this.rejectRemoteRequest(P,E),console.error("Failed to generate diagram:",E)}}async submitModel(P,g,E){if(this.needsClientLayout)if(!this.needsServerLayout)this.dispatch({kind:f.RequestBoundsAction.KIND,newRoot:P});else{const C=f.RequestBoundsAction.create(P),T=await this.request(C),M=this.state.currentRoot;T.revision===M.revision?((0,b.applyBounds)(M,T),await this.doSubmitModel(M,g,E)):this.rejectRemoteRequest(E,new Error(`Model revision does not match: ${T.revision}`))}else await this.doSubmitModel(P,g,E)}async doSubmitModel(P,g,E){if(P.revision!==this.state.revision)return;this.needsServerLayout&&this.layoutEngine&&(P=await this.layoutEngine.layout(P));const C=P.type;if(E&&E.kind===f.RequestModelAction.KIND){const T=E.requestId,M=f.SetModelAction.create(P,T);await this.dispatch(M)}else g&&C===this.state.lastSubmittedModelType?await this.dispatch({kind:f.UpdateModelAction.KIND,newRoot:P,cause:E}):await this.dispatch({kind:f.SetModelAction.KIND,newRoot:P});this.state.lastSubmittedModelType=C}handleComputedBounds(P){return P.revision!==this.state.currentRoot.revision?Promise.reject():((0,b.applyBounds)(this.state.currentRoot,P),Promise.resolve())}async handleLayout(P){if(this.layoutEngine){if(!this.needsServerLayout){let g=(0,b.cloneModel)(this.state.currentRoot);g=await this.layoutEngine.layout(g),g.revision=++this.state.revision,this.state.currentRoot=g}await this.doSubmitModel(this.state.currentRoot,!0,P)}}}return mL.DiagramServer=w,mL}var Jme={},j1t;function dGt(){return j1t||(j1t=1,Object.defineProperty(Jme,"__esModule",{value:!0})),Jme}var PM={},A1t;function gGt(){if(A1t)return PM;A1t=1,Object.defineProperty(PM,"__esModule",{value:!0}),PM.isZoomable=PM.isScrollable=void 0;const f=_S();function h(w){return(0,f.hasOwnProperty)(w,"scroll")}PM.isScrollable=h;function b(w){return(0,f.hasOwnProperty)(w,"zoom")}return PM.isZoomable=b,PM}var Qme={},O1t;function bGt(){return O1t||(O1t=1,Object.defineProperty(Qme,"__esModule",{value:!0})),Qme}var D1t;function Sp(){return D1t||(D1t=1,(function(f){var h=SM&&SM.__createBinding||(Object.create?(function(w,m,P,g){g===void 0&&(g=P);var E=Object.getOwnPropertyDescriptor(m,P);(!E||("get"in E?!m.__esModule:E.writable||E.configurable))&&(E={enumerable:!0,get:function(){return m[P]}}),Object.defineProperty(w,g,E)}):(function(w,m,P,g){g===void 0&&(g=P),w[g]=m[P]})),b=SM&&SM.__exportStar||function(w,m){for(var P in w)P!=="default"&&!Object.prototype.hasOwnProperty.call(m,P)&&h(m,w,P)};Object.defineProperty(f,"__esModule",{value:!0}),b(fGt(),f),b(jc(),f),b(hGt(),f),b(dGt(),f),b(gGt(),f),b(kye(),f),b(Ac(),f),b(bGt(),f),b(LM(),f),b(_S(),f)})(SM)),SM}var k1t;function Ca(){if(k1t)return su;k1t=1;var f=su&&su.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k};Object.defineProperty(su,"__esModule",{value:!0}),su.ResetCommand=su.SystemCommand=su.PopupCommand=su.HiddenCommand=su.MergeableCommand=su.Command=su.isStoppableCommand=void 0,vye();const h=Zt(),b=Sp();function w(M){return M&&(0,b.hasOwnProperty)(M,"stoppableCommandKey")&&"stopExecution"in M&&typeof M.stopExecution=="function"}su.isStoppableCommand=w;let m=class{};su.Command=m,su.Command=m=f([(0,h.injectable)()],m);let P=class extends m{merge(_,I){return!1}};su.MergeableCommand=P,su.MergeableCommand=P=f([(0,h.injectable)()],P);let g=class extends m{undo(_){return _.logger.error(this,"Cannot undo a hidden command"),_.root}redo(_){return _.logger.error(this,"Cannot redo a hidden command"),_.root}};su.HiddenCommand=g,su.HiddenCommand=g=f([(0,h.injectable)()],g);let E=class extends m{};su.PopupCommand=E,su.PopupCommand=E=f([(0,h.injectable)()],E);let C=class extends m{};su.SystemCommand=C,su.SystemCommand=C=f([(0,h.injectable)()],C);let T=class extends m{};return su.ResetCommand=T,su.ResetCommand=T=f([(0,h.injectable)()],T),su}var Jh={},R1t;function kb(){if(R1t)return Jh;R1t=1;var f=Jh&&Jh.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=Jh&&Jh.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=Jh&&Jh.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(Jh,"__esModule",{value:!0}),Jh.configureCommand=Jh.CommandActionHandlerInitializer=Jh.CommandActionHandler=void 0;const w=Zt(),m=EA(),P=Qn();class g{constructor(M){this.commandRegistration=M}handle(M){return this.commandRegistration.factory(M)}}Jh.CommandActionHandler=g;let E=class{constructor(M){this.registrations=M}initialize(M){this.registrations.forEach(_=>M.register(_.kind,new g(_)))}};Jh.CommandActionHandlerInitializer=E,Jh.CommandActionHandlerInitializer=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.CommandRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);function C(T,M){if(!(0,m.isInjectable)(M))throw new Error(`Commands should be @injectable: ${M.name}`);T.isBound(M)||T.bind(M).toSelf(),T.bind(P.TYPES.CommandRegistration).toDynamicValue(_=>({kind:M.KIND,factory:I=>{const O=new w.Container;return O.parent=_.container,O.bind(P.TYPES.Action).toConstantValue(I),O.get(M)}}))}return Jh.configureCommand=C,Jh}var Zme={},x1t;function Gpt(){return x1t||(x1t=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.overrideCommandStackOptions=f.configureCommandStackOptions=f.defaultCommandStackOptions=void 0;const h=_S(),b=Qn(),w=()=>({defaultDuration:250,undoHistoryLimit:50});f.defaultCommandStackOptions=w;function m(g,E){const C=Object.assign(Object.assign({},(0,f.defaultCommandStackOptions)()),E);g.isBound(b.TYPES.CommandStackOptions)?g.rebind(b.TYPES.CommandStackOptions).toConstantValue(C):g.bind(b.TYPES.CommandStackOptions).toConstantValue(C)}f.configureCommandStackOptions=m;function P(g,E){const C=g.get(b.TYPES.CommandStackOptions);return(0,h.safeAssign)(C,E),C}f.overrideCommandStackOptions=P})(Zme)),Zme}var cy={},L1t;function Upt(){if(L1t)return cy;L1t=1;var f=cy&&cy.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=cy&&cy.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)};Object.defineProperty(cy,"__esModule",{value:!0}),cy.CommandStack=void 0;const b=Zt(),w=Qn(),m=ES(),P=Oc(),g=eN(),E=Ca();let C=class{constructor(){this.undoStack=[],this.redoStack=[],this.stoppableCommands=new Map,this.offStack=[]}initialize(){this.currentPromise=Promise.resolve({main:{model:this.modelFactory.createRoot(m.EMPTY_ROOT),modelChanged:!1},hidden:{model:this.modelFactory.createRoot(m.EMPTY_ROOT),modelChanged:!1},popup:{model:this.modelFactory.createRoot(m.EMPTY_ROOT),modelChanged:!1}})}get currentModel(){return this.currentPromise.then(_=>_.main.model)}executeAll(_){return _.forEach(I=>{this.logger.log(this,"Executing",I),this.handleCommand(I,I.execute,this.mergeOrPush)}),this.thenUpdate()}execute(_){return this.logger.log(this,"Executing",_),this.handleCommand(_,_.execute,this.mergeOrPush),this.thenUpdate()}undo(){this.undoOffStackSystemCommands(),this.undoPreceedingSystemCommands();const _=this.undoStack[this.undoStack.length-1];return _!==void 0&&!this.isBlockUndo(_)&&(this.undoStack.pop(),this.logger.log(this,"Undoing",_),this.handleCommand(_,_.undo,(I,O)=>{this.redoStack.push(I)})),this.thenUpdate()}redo(){this.undoOffStackSystemCommands();const _=this.redoStack.pop();return _!==void 0&&(this.logger.log(this,"Redoing",_),this.handleCommand(_,_.redo,(I,O)=>{this.pushToUndoStack(I)})),this.redoFollowingSystemCommands(),this.thenUpdate()}handleCommand(_,I,O){if((0,E.isStoppableCommand)(_)){const j=this.stoppableCommands.get(_.stoppableCommandKey);j&&j.stopExecution(),this.stoppableCommands.set(_.stoppableCommandKey,_)}this.currentPromise=this.currentPromise.then(j=>new Promise(k=>{let x;_ instanceof E.HiddenCommand?x="hidden":_ instanceof E.PopupCommand?x="popup":x="main";const R=this.createContext(j.main.model);let H;try{H=I.call(_,R)}catch($){this.logger.error(this,"Failed to execute command:",$),H=j[x].model}const F=T(j);H instanceof Promise?H.then($=>{x==="main"&&O.call(this,_,R),F[x]={model:$,modelChanged:!0},k(F)}):H instanceof P.SModelRootImpl?(x==="main"&&O.call(this,_,R),F[x]={model:H,modelChanged:!0},k(F)):(x==="main"&&O.call(this,_,R),F[x]={model:H.model,modelChanged:j[x].modelChanged||H.modelChanged,cause:H.cause},k(F))}))}pushToUndoStack(_){this.undoStack.push(_),this.options.undoHistoryLimit>=0&&this.undoStack.length>this.options.undoHistoryLimit&&this.undoStack.splice(0,this.undoStack.length-this.options.undoHistoryLimit)}thenUpdate(){return this.currentPromise=this.currentPromise.then(_=>{const I=T(_);return _.hidden.modelChanged&&(this.updateHidden(_.hidden.model,_.hidden.cause),I.hidden.modelChanged=!1,I.hidden.cause=void 0),_.main.modelChanged&&(this.update(_.main.model,_.main.cause),I.main.modelChanged=!1,I.main.cause=void 0),_.popup.modelChanged&&(this.updatePopup(_.popup.model,_.popup.cause),I.popup.modelChanged=!1,I.popup.cause=void 0),I}),this.currentModel}update(_,I){this.modelViewer===void 0&&(this.modelViewer=this.viewerProvider.modelViewer),this.modelViewer.update(_,I)}updateHidden(_,I){this.hiddenModelViewer===void 0&&(this.hiddenModelViewer=this.viewerProvider.hiddenModelViewer),this.hiddenModelViewer.update(_,I)}updatePopup(_,I){this.popupModelViewer===void 0&&(this.popupModelViewer=this.viewerProvider.popupModelViewer),this.popupModelViewer.update(_,I)}mergeOrPush(_,I){if(this.isBlockUndo(_)){this.undoStack=[],this.redoStack=[],this.offStack=[],this.pushToUndoStack(_);return}if(this.isPushToOffStack(_)&&this.redoStack.length>0){if(this.offStack.length>0){const O=this.offStack[this.offStack.length-1];if(O instanceof E.MergeableCommand&&O.merge(_,I))return}this.offStack.push(_);return}if(this.isPushToUndoStack(_)){if(this.offStack.forEach(O=>this.undoStack.push(O)),this.offStack=[],this.redoStack=[],this.undoStack.length>0){const O=this.undoStack[this.undoStack.length-1];if(O instanceof E.MergeableCommand&&O.merge(_,I))return}this.pushToUndoStack(_)}}undoOffStackSystemCommands(){let _=this.offStack.pop();for(;_!==void 0;)this.logger.log(this,"Undoing off-stack",_),this.handleCommand(_,_.undo,()=>{}),_=this.offStack.pop()}undoPreceedingSystemCommands(){let _=this.undoStack[this.undoStack.length-1];for(;_!==void 0&&this.isPushToOffStack(_);)this.undoStack.pop(),this.logger.log(this,"Undoing",_),this.handleCommand(_,_.undo,(I,O)=>{this.redoStack.push(I)}),_=this.undoStack[this.undoStack.length-1]}redoFollowingSystemCommands(){let _=this.redoStack[this.redoStack.length-1];for(;_!==void 0&&this.isPushToOffStack(_);)this.redoStack.pop(),this.logger.log(this,"Redoing ",_),this.handleCommand(_,_.redo,(I,O)=>{this.pushToUndoStack(I)}),_=this.redoStack[this.redoStack.length-1]}createContext(_){return{root:_,modelChanged:this,modelFactory:this.modelFactory,duration:this.options.defaultDuration,logger:this.logger,syncer:this.syncer}}isPushToOffStack(_){return _ instanceof E.SystemCommand}isPushToUndoStack(_){return!(_ instanceof E.HiddenCommand)}isBlockUndo(_){return _ instanceof E.ResetCommand}};cy.CommandStack=C,f([(0,b.inject)(w.TYPES.IModelFactory),h("design:type",Object)],C.prototype,"modelFactory",void 0),f([(0,b.inject)(w.TYPES.IViewerProvider),h("design:type",Object)],C.prototype,"viewerProvider",void 0),f([(0,b.inject)(w.TYPES.ILogger),h("design:type",Object)],C.prototype,"logger",void 0),f([(0,b.inject)(w.TYPES.AnimationFrameSyncer),h("design:type",g.AnimationFrameSyncer)],C.prototype,"syncer",void 0),f([(0,b.inject)(w.TYPES.CommandStackOptions),h("design:type",Object)],C.prototype,"options",void 0),f([(0,b.postConstruct)(),h("design:type",Function),h("design:paramtypes",[]),h("design:returntype",void 0)],C.prototype,"initialize",null),cy.CommandStack=C=f([(0,b.injectable)()],C);function T(M){return{main:Object.assign({},M.main),hidden:Object.assign({},M.hidden),popup:Object.assign({},M.popup)}}return cy}var fh={},Hd={},N1t;function My(){if(N1t)return Hd;N1t=1,Object.defineProperty(Hd,"__esModule",{value:!0}),Hd.isSVGGraphicsElement=Hd.hitsMouseEvent=Hd.getWindowScroll=Hd.isCrossSite=Hd.isMac=Hd.isCtrlOrCmd=void 0;const f=Sp();function h(E){return b()?E.metaKey:E.ctrlKey}Hd.isCtrlOrCmd=h;function b(){return window.navigator.userAgent.indexOf("Mac")!==-1}Hd.isMac=b;function w(E){if(E&&typeof window<"u"&&window.location){let C="";return window.location.protocol&&(C+=window.location.protocol+"//"),window.location.host&&(C+=window.location.host),C.length>0&&!E.startsWith(C)}return!1}Hd.isCrossSite=w;function m(){return typeof window>"u"?f.Point.ORIGIN:{x:window.pageXOffset,y:window.pageYOffset}}Hd.getWindowScroll=m;function P(E,C){const T=E.getBoundingClientRect();return C.clientX>=T.left&&C.clientX<=T.right&&C.clientY>=T.top&&C.clientY<=T.bottom}Hd.hitsMouseEvent=P;function g(E){return typeof E.getBBox=="function"}return Hd.isSVGGraphicsElement=g,Hd}var F1t;function fJ(){if(F1t)return fh;F1t=1;var f=fh&&fh.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h=fh&&fh.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)},b=fh&&fh.__param||function(I,O){return function(j,k){O(j,k,I)}};Object.defineProperty(fh,"__esModule",{value:!0}),fh.InitializeCanvasBoundsCommand=fh.InitializeCanvasBoundsAction=fh.CanvasBoundsInitializer=void 0;const w=Zt(),m=Ac(),P=Qn(),g=Oc(),E=Ca(),C=My();let T=class{decorate(O,j){return j instanceof g.SModelRootImpl&&!m.Dimension.isValid(j.canvasBounds)&&(this.rootAndVnode=[j,O]),O}postUpdate(){if(this.rootAndVnode!==void 0){const O=this.rootAndVnode[1].elm,j=this.rootAndVnode[0].canvasBounds;if(O!==void 0){const k=this.getBoundsInPage(O);(0,m.almostEquals)(k.x,j.x)&&(0,m.almostEquals)(k.y,j.y)&&(0,m.almostEquals)(k.width,j.width)&&(0,m.almostEquals)(k.height,j.width)||this.actionDispatcher.dispatch(M.create(k))}this.rootAndVnode=void 0}}getBoundsInPage(O){const j=O.getBoundingClientRect(),k=(0,C.getWindowScroll)();return{x:j.left+k.x,y:j.top+k.y,width:j.width,height:j.height}}};fh.CanvasBoundsInitializer=T,f([(0,w.inject)(P.TYPES.IActionDispatcher),h("design:type",Object)],T.prototype,"actionDispatcher",void 0),fh.CanvasBoundsInitializer=T=f([(0,w.injectable)()],T);var M;(function(I){I.KIND="initializeCanvasBounds";function O(j){return{kind:I.KIND,newCanvasBounds:j}}I.create=O})(M||(fh.InitializeCanvasBoundsAction=M={}));let _=class extends E.SystemCommand{constructor(O){super(),this.action=O}execute(O){return this.newCanvasBounds=this.action.newCanvasBounds,O.root.canvasBounds=this.newCanvasBounds,O.root}undo(O){return O.root}redo(O){return O.root}};return fh.InitializeCanvasBoundsCommand=_,_.KIND=M.KIND,fh.InitializeCanvasBoundsCommand=_=f([(0,w.injectable)(),b(0,(0,w.inject)(P.TYPES.Action)),h("design:paramtypes",[Object])],_),fh}var gp={},B1t;function xye(){if(B1t)return gp;B1t=1;var f=gp&&gp.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=gp&&gp.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=gp&&gp.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(gp,"__esModule",{value:!0}),gp.SetModelCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=fJ();let C=class extends P.ResetCommand{constructor(M){super(),this.action=M}execute(M){return this.oldRoot=M.modelFactory.createRoot(M.root),this.newRoot=M.modelFactory.createRoot(this.action.newRoot),this.newRoot}undo(M){return this.oldRoot}redo(M){return this.newRoot}get blockUntil(){return M=>M.kind===E.InitializeCanvasBoundsCommand.KIND}};return gp.SetModelCommand=C,C.KIND=m.SetModelAction.KIND,gp.SetModelCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],C),gp}var hh={},$1t;function Qh(){if($1t)return hh;$1t=1,Object.defineProperty(hh,"__esModule",{value:!0}),hh.transformToRootBounds=hh.containsSome=hh.translateBounds=hh.translatePoint=hh.findParentByFeature=hh.findParent=hh.registerModelElement=void 0;const f=Qn(),h=Oc();function b(T,M,_,I,O){T.bind(f.TYPES.SModelElementRegistration).toConstantValue({type:M,constr:_,features:I,isOverride:O})}hh.registerModelElement=b;function w(T,M){let _=T;for(;_!==void 0;){if(M(_))return _;_ instanceof h.SChildElementImpl?_=_.parent:_=void 0}return _}hh.findParent=w;function m(T,M){let _=T;for(;_!==void 0;){if(M(_))return _;_ instanceof h.SChildElementImpl?_=_.parent:_=void 0}return _}hh.findParentByFeature=m;function P(T,M,_){if(M!==_){for(;M instanceof h.SChildElementImpl;)if(T=M.localToParent(T),M=M.parent,M===_)return T;const I=[];for(;_ instanceof h.SChildElementImpl;)I.push(_),_=_.parent;if(M!==_)throw new Error("Incompatible source and target: "+M.id+", "+_.id);for(let O=I.length-1;O>=0;O--)T=I[O].parentToLocal(T)}return T}hh.translatePoint=P;function g(T,M,_){const I=P(T,M,_),O=P({x:T.x+T.width,y:T.y+T.height},M,_);return{x:I.x,y:I.y,width:O.x-I.x,height:O.y-I.y}}hh.translateBounds=g;function E(T,M){const _=O=>T.index.getById(O.id)!==void 0,I=O=>O.some(j=>_(j)||I(j.children));return I([M])}hh.containsSome=E;function C(T,M){for(;T instanceof h.SChildElementImpl;)M=T.localToParent(M),T=T.parent;return M}return hh.transformToRootBounds=C,hh}var dh={},K1t;function hJ(){if(K1t)return dh;K1t=1;var f=dh&&dh.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=dh&&dh.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=dh&&dh.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(dh,"__esModule",{value:!0}),dh.SetUIExtensionVisibilityCommand=dh.SetUIExtensionVisibilityAction=dh.UIExtensionRegistry=void 0;const w=Zt(),m=q3(),P=Ca(),g=Qn();let E=class extends m.InstanceRegistry{constructor(_=[]){super(),_.forEach(I=>this.register(I.id(),I))}};dh.UIExtensionRegistry=E,dh.UIExtensionRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.IUIExtension)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);var C;(function(M){M.KIND="setUIExtensionVisibility";function _(I){var O;return{kind:M.KIND,extensionId:I.extensionId,visible:I.visible,contextElementsId:(O=I.contextElementsId)!==null&&O!==void 0?O:[]}}M.create=_})(C||(dh.SetUIExtensionVisibilityAction=C={}));let T=class extends P.SystemCommand{constructor(_){super(),this.action=_}execute(_){const I=this.registry.get(this.action.extensionId);return I&&(this.action.visible?I.show(_.root,...this.action.contextElementsId):I.hide()),{model:_.root,modelChanged:!1}}undo(_){return{model:_.root,modelChanged:!1}}redo(_){return{model:_.root,modelChanged:!1}}};return dh.SetUIExtensionVisibilityCommand=T,T.KIND=C.KIND,f([(0,w.inject)(g.TYPES.UIExtensionRegistry),h("design:type",E)],T.prototype,"registry",void 0),dh.SetUIExtensionVisibilityCommand=T=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],T),dh}var bp={},q1t;function Lye(){if(q1t)return bp;q1t=1;var f=bp&&bp.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=bp&&bp.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(bp,"__esModule",{value:!0}),bp.AbstractUIExtension=bp.isUIExtension=void 0;const b=Zt(),w=Sp(),m=Qn();function P(E){return(0,w.hasOwnProperty)(E,"id","function")&&(0,w.hasOwnProperty)(E,"show","function")&&(0,w.hasOwnProperty)(E,"hide","function")}bp.isUIExtension=P;let g=class{show(C,...T){this.activeElement=document.activeElement,!(!this.containerElement&&!this.initialize())&&(this.onBeforeShow(this.containerElement,C,...T),this.setContainerVisible(!0))}hide(){this.setContainerVisible(!1),this.restoreFocus(),this.activeElement=null}restoreFocus(){const C=this.activeElement;C&&C.focus()}initialize(){const C=document.getElementById(this.options.baseDiv);return C?(this.containerElement=this.getOrCreateContainer(C.id),this.initializeContents(this.containerElement),C&&C.insertBefore(this.containerElement,C.firstChild),!0):(this.logger.warn(this,`Could not obtain sprotty base container for initializing UI extension ${this.id}`,this),!1)}getOrCreateContainer(C){let T=document.getElementById(this.id());return T===null&&(T=document.createElement("div"),T.id=C+"_"+this.id(),T.classList.add(this.containerClass())),T}setContainerVisible(C){this.containerElement&&(C?(this.containerElement.style.visibility="visible",this.containerElement.style.opacity="1"):(this.containerElement.style.visibility="hidden",this.containerElement.style.opacity="0"))}onBeforeShow(C,T,...M){}};return bp.AbstractUIExtension=g,f([(0,b.inject)(m.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"options",void 0),f([(0,b.inject)(m.TYPES.ILogger),h("design:type",Object)],g.prototype,"logger",void 0),bp.AbstractUIExtension=g=f([(0,b.injectable)()],g),bp}var zd={},nf={},H1t;function mh(){if(H1t)return nf;H1t=1,Object.defineProperty(nf,"__esModule",{value:!0}),nf.getAttrs=nf.on=nf.mergeStyle=nf.copyClassesFromElement=nf.copyClassesFromVNode=nf.setNamespace=nf.setClass=nf.setAttr=void 0;function f(_,I,O){E(_)[I]=O}nf.setAttr=f;function h(_,I,O){T(_)[I]=O}nf.setClass=h;function b(_,I){_.data===void 0&&(_.data={}),_.data.ns=I;const O=_.children;if(O!==void 0)for(let j=0;jh(I,j,!0))}nf.copyClassesFromVNode=w;function m(_,I){const O=_.classList;for(let j=0;j=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=zd&&zd.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=zd&&zd.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(zd,"__esModule",{value:!0}),zd.KeyListener=zd.KeyTool=void 0;const w=Zt(),m=Qn(),P=Oc(),g=mh();let E=class{constructor(M=[]){this.keyListeners=M}register(M){this.keyListeners.push(M)}deregister(M){const _=this.keyListeners.indexOf(M);_>=0&&this.keyListeners.splice(_,1)}handleEvent(M,_,I){const O=this.keyListeners.map(j=>j[M].apply(j,[_,I])).reduce((j,k)=>j.concat(k));O.length>0&&(I.preventDefault(),this.actionDispatcher.dispatchAll(O))}keyDown(M,_){this.handleEvent("keyDown",M,_)}keyUp(M,_){this.handleEvent("keyUp",M,_)}focus(){}decorate(M,_){return _ instanceof P.SModelRootImpl&&((0,g.on)(M,"focus",this.focus.bind(this,_)),(0,g.on)(M,"keydown",this.keyDown.bind(this,_)),(0,g.on)(M,"keyup",this.keyUp.bind(this,_))),M}postUpdate(){}};zd.KeyTool=E,f([(0,w.inject)(m.TYPES.IActionDispatcher),h("design:type",Object)],E.prototype,"actionDispatcher",void 0),zd.KeyTool=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.KeyListener)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);let C=class{keyDown(M,_){return[]}keyUp(M,_){return[]}};return zd.KeyListener=C,zd.KeyListener=C=f([(0,w.injectable)()],C),zd}var Qa={},sy={},V1t;function tN(){if(V1t)return sy;V1t=1;var f=sy&&sy.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M},h=sy&&sy.__metadata||function(P,g){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(P,g)};Object.defineProperty(sy,"__esModule",{value:!0}),sy.DOMHelper=void 0;const b=Zt(),w=Qn();let m=class{getPrefix(){return this.viewerOptions!==void 0&&this.viewerOptions.baseDiv!==void 0?this.viewerOptions.baseDiv+"_":""}createUniqueDOMElementId(g){return this.getPrefix()+g.id}findSModelIdByDOMElement(g){return g.id.replace(this.getPrefix(),"")}};return sy.DOMHelper=m,f([(0,b.inject)(w.TYPES.ViewerOptions),h("design:type",Object)],m.prototype,"viewerOptions",void 0),sy.DOMHelper=m=f([(0,b.injectable)()],m),sy}var G1t;function Pp(){if(G1t)return Qa;G1t=1;var f=Qa&&Qa.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=Qa&&Qa.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)},b=Qa&&Qa.__param||function(O,j){return function(k,x){j(k,x,O)}};Object.defineProperty(Qa,"__esModule",{value:!0}),Qa.MousePositionTracker=Qa.MouseListener=Qa.PopupMouseTool=Qa.MouseTool=void 0;const w=Zt(),m=jc(),P=Oc(),g=Qn(),E=tN(),C=mh();let T=class{constructor(j=[]){this.mouseListeners=j}register(j){this.mouseListeners.push(j)}deregister(j){const k=this.mouseListeners.indexOf(j);k>=0&&this.mouseListeners.splice(k,1)}getTargetElement(j,k){let x=k.target;const R=j.index;for(;x;){if(x.id){const H=R.getById(this.domHelper.findSModelIdByDOMElement(x));if(H!==void 0)return H}x=x.parentNode}}handleEvent(j,k,x){this.focusOnMouseEvent(j,k);const R=this.getTargetElement(k,x);if(!R)return;const H=this.mouseListeners.map(F=>F[j](R,x)).reduce((F,$)=>F.concat($));if(H.length>0){x.preventDefault();for(const F of H)(0,m.isAction)(F)?this.actionDispatcher.dispatch(F):F.then($=>{this.actionDispatcher.dispatch($)})}}focusOnMouseEvent(j,k){if(document&&j==="mouseDown"){const x=document.getElementById(this.domHelper.createUniqueDOMElementId(k));x!==null&&typeof x.focus=="function"&&x.focus()}}mouseOver(j,k){this.handleEvent("mouseOver",j,k)}mouseOut(j,k){this.handleEvent("mouseOut",j,k)}mouseEnter(j,k){this.handleEvent("mouseEnter",j,k)}mouseLeave(j,k){this.handleEvent("mouseLeave",j,k)}mouseDown(j,k){this.handleEvent("mouseDown",j,k)}mouseMove(j,k){this.handleEvent("mouseMove",j,k)}mouseUp(j,k){this.handleEvent("mouseUp",j,k)}wheel(j,k){this.handleEvent("wheel",j,k)}contextMenu(j,k){k.preventDefault(),this.handleEvent("contextMenu",j,k)}doubleClick(j,k){this.handleEvent("doubleClick",j,k)}decorate(j,k){return k instanceof P.SModelRootImpl&&((0,C.on)(j,"mouseover",this.mouseOver.bind(this,k)),(0,C.on)(j,"mouseout",this.mouseOut.bind(this,k)),(0,C.on)(j,"mouseenter",this.mouseEnter.bind(this,k)),(0,C.on)(j,"mouseleave",this.mouseLeave.bind(this,k)),(0,C.on)(j,"mousedown",this.mouseDown.bind(this,k)),(0,C.on)(j,"mouseup",this.mouseUp.bind(this,k)),(0,C.on)(j,"mousemove",this.mouseMove.bind(this,k)),(0,C.on)(j,"wheel",this.wheel.bind(this,k)),(0,C.on)(j,"contextmenu",this.contextMenu.bind(this,k)),(0,C.on)(j,"dblclick",this.doubleClick.bind(this,k)),(0,C.on)(j,"dragover",x=>this.handleEvent("dragOver",k,x)),(0,C.on)(j,"drop",x=>this.handleEvent("drop",k,x))),j=this.mouseListeners.reduce((x,R)=>R.decorate(x,k),j),j}postUpdate(){}};Qa.MouseTool=T,f([(0,w.inject)(g.TYPES.IActionDispatcher),h("design:type",Object)],T.prototype,"actionDispatcher",void 0),f([(0,w.inject)(g.TYPES.DOMHelper),h("design:type",E.DOMHelper)],T.prototype,"domHelper",void 0),Qa.MouseTool=T=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.MouseListener)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],T);let M=class extends T{constructor(j=[]){super(j),this.mouseListeners=j}};Qa.PopupMouseTool=M,Qa.PopupMouseTool=M=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.PopupMouseListener)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],M);let _=class{mouseOver(j,k){return[]}mouseOut(j,k){return[]}mouseEnter(j,k){return[]}mouseLeave(j,k){return[]}mouseDown(j,k){return[]}mouseMove(j,k){return[]}mouseUp(j,k){return[]}wheel(j,k){return[]}doubleClick(j,k){return[]}contextMenu(j,k){return[]}dragOver(j,k){return[]}drop(j,k){return[]}decorate(j,k){return j}};Qa.MouseListener=_,Qa.MouseListener=_=f([(0,w.injectable)()],_);let I=class extends _{mouseMove(j,k){return this.lastPosition=j.root.parentToLocal({x:k.offsetX,y:k.offsetY}),[]}get lastPositionOnDiagram(){return this.lastPosition}};return Qa.MousePositionTracker=I,Qa.MousePositionTracker=I=f([(0,w.injectable)()],I),Qa}var uy={};function pGt(f,h){return document.createElement(f,h)}function wGt(f,h,b){return document.createElementNS(f,h,b)}function mGt(){return AM(document.createDocumentFragment())}function vGt(f){return document.createTextNode(f)}function yGt(f){return document.createComment(f)}function _Gt(f,h,b){if(O3(f)){let w=f;for(;w&&O3(w);)w=AM(w).parent;f=w??f}O3(h)&&(h=AM(h,f)),b&&O3(b)&&(b=AM(b).firstChildNode),f.insertBefore(h,b)}function EGt(f,h){f.removeChild(h)}function SGt(f,h){O3(h)&&(h=AM(h,f)),f.appendChild(h)}function Wpt(f){if(O3(f)){for(;f&&O3(f);)f=AM(f).parent;return f??null}return f.parentNode}function PGt(f){var h;if(O3(f)){const b=AM(f),w=Wpt(b);if(w&&b.lastChildNode){const m=Array.from(w.childNodes),P=m.indexOf(b.lastChildNode);return(h=m[P+1])!==null&&h!==void 0?h:null}return null}return f.nextSibling}function MGt(f){return f.tagName}function CGt(f,h){f.textContent=h}function IGt(f){return f.textContent}function TGt(f){return f.nodeType===1}function jGt(f){return f.nodeType===3}function AGt(f){return f.nodeType===8}function O3(f){return f.nodeType===11}function AM(f,h){var b,w,m;const P=f;return(b=P.parent)!==null&&b!==void 0||(P.parent=h??null),(w=P.firstChildNode)!==null&&w!==void 0||(P.firstChildNode=f.firstChild),(m=P.lastChildNode)!==null&&m!==void 0||(P.lastChildNode=f.lastChild),P}const Nye={createElement:pGt,createElementNS:wGt,createTextNode:vGt,createDocumentFragment:mGt,createComment:yGt,insertBefore:_Gt,removeChild:EGt,appendChild:SGt,parentNode:Wpt,nextSibling:PGt,tagName:MGt,setTextContent:CGt,getTextContent:IGt,isElement:TGt,isText:jGt,isComment:AGt,isDocumentFragment:O3};function Yd(f,h,b,w,m){const P=h===void 0?void 0:h.key;return{sel:f,data:h,children:b,text:w,elm:m,key:P}}const RL=Array.isArray;function OM(f){return typeof f=="string"||typeof f=="number"||f instanceof String||f instanceof Number}function eve(f){return f===void 0}function og(f){return f!==void 0}const tve=Yd("",{},[],void 0,void 0);function vL(f,h){var b,w;const m=f.key===h.key,P=((b=f.data)===null||b===void 0?void 0:b.is)===((w=h.data)===null||w===void 0?void 0:w.is),g=f.sel===h.sel,E=!f.sel&&f.sel===h.sel?typeof f.text==typeof h.text:!0;return g&&m&&P&&E}function OGt(){throw new Error("The document fragment is not supported on this platform.")}function DGt(f,h){return f.isElement(h)}function kGt(f,h){return f.isDocumentFragment(h)}function RGt(f,h,b){var w;const m={};for(let P=h;P<=b;++P){const g=(w=f[P])===null||w===void 0?void 0:w.key;g!==void 0&&(m[g]=P)}return m}const xGt=["create","update","remove","destroy","pre","post"];function LGt(f,h,b){const w={create:[],update:[],remove:[],destroy:[],pre:[],post:[]},m=h!==void 0?h:Nye;for(const j of xGt)for(const k of f){const x=k[j];x!==void 0&&w[j].push(x)}function P(j){const k=j.id?"#"+j.id:"",x=j.getAttribute("class"),R=x?"."+x.split(" ").join("."):"";return Yd(m.tagName(j).toLowerCase()+k+R,{},[],void 0,j)}function g(j){return Yd(void 0,{},[],void 0,j)}function E(j,k){return function(){if(--k===0){const R=m.parentNode(j);m.removeChild(R,j)}}}function C(j,k){var x,R,H,F;let $,W=j.data;if(W!==void 0){const ce=(x=W.hook)===null||x===void 0?void 0:x.init;og(ce)&&(ce(j),W=j.data)}const re=j.children,ae=j.sel;if(ae==="!")eve(j.text)&&(j.text=""),j.elm=m.createComment(j.text);else if(ae!==void 0){const ce=ae.indexOf("#"),J=ae.indexOf(".",ce),te=ce>0?ce:ae.length,fe=J>0?J:ae.length,ve=ce!==-1||J!==-1?ae.slice(0,Math.min(te,fe)):ae,me=j.elm=og(W)&&og($=W.ns)?m.createElementNS($,ve,W):m.createElement(ve,W);for(te0&&me.setAttribute("class",ae.slice(fe+1).replace(/\./g," ")),$=0;$0&&(M.attrs=C),Object.keys(T).length>0&&(M.dataset=T),E[0]==="s"&&E[1]==="v"&&E[2]==="g"&&(E.length===3||E[3]==="."||E[3]==="#")&&dJ(M,_,E),Yd(E,M,_,void 0,f)}else return b.isText(f)?(w=b.getTextContent(f),Yd(void 0,void 0,void 0,w,f)):b.isComment(f)?(w=b.getTextContent(f),Yd("!",{},[],w,f)):Yd("",{},[],void 0,f)}const GGt="http://www.w3.org/1999/xlink",UGt="http://www.w3.org/XML/1998/namespace",U1t=58,WGt=120;function W1t(f,h){let b;const w=h.elm;let m=f.data.attrs,P=h.data.attrs;if(!(!m&&!P)&&m!==P){m=m||{},P=P||{};for(b in P){const g=P[b];m[b]!==g&&(g===!0?w.setAttribute(b,""):g===!1?w.removeAttribute(b):b.charCodeAt(0)!==WGt?w.setAttribute(b,g):b.charCodeAt(3)===U1t?w.setAttributeNS(UGt,b,g):b.charCodeAt(5)===U1t?w.setAttributeNS(GGt,b,g):w.setAttribute(b,g))}for(b in m)b in P||w.removeAttribute(b)}}const YGt={create:W1t,update:W1t};function Y1t(f,h){let b,w;const m=h.elm;let P=f.data.class,g=h.data.class;if(!(!P&&!g)&&P!==g){P=P||{},g=g||{};for(w in P)P[w]&&!Object.prototype.hasOwnProperty.call(g,w)&&m.classList.remove(w);for(w in g)b=g[w],b!==P[w]&&m.classList[b?"add":"remove"](w)}}const XGt={create:Y1t,update:Y1t},X1t=/[A-Z]/g;function J1t(f,h){const b=h.elm;let w=f.data.dataset,m=h.data.dataset,P;if(!w&&!m||w===m)return;w=w||{},m=m||{};const g=b.dataset;for(P in w)m[P]||(g?P in g&&delete g[P]:b.removeAttribute("data-"+P.replace(X1t,"-$&").toLowerCase()));for(P in m)w[P]!==m[P]&&(g?g[P]=m[P]:b.setAttribute("data-"+P.replace(X1t,"-$&").toLowerCase(),m[P]))}const JGt={create:J1t,update:J1t};function Xpt(f,h,b){if(typeof f=="function")f.call(h,b,h);else if(typeof f=="object")for(let w=0;w=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(uy,"__esModule",{value:!0}),uy.isThunk=uy.ThunkView=void 0;const h=nN,b=Zt();let w=class{render(g,E){return(0,h.h)(this.selector(g),{key:g.id,hook:{init:this.init.bind(this),prepatch:this.prepatch.bind(this)},fn:()=>this.renderAndDecorate(g,E),args:this.watchedArgs(g),thunk:!0})}renderAndDecorate(g,E){const C=this.doRender(g,E);return E.decorate(C,g),C}copyToThunk(g,E){E.elm=g.elm,g.data.fn=E.data.fn,g.data.args=E.data.args,E.data=g.data,E.children=g.children,E.text=g.text,E.elm=g.elm}init(g){const E=g.data,C=E.fn.apply(void 0,E.args);this.copyToThunk(C,g)}prepatch(g,E){const C=g.data,T=E.data;this.equals(C.args,T.args)?this.copyToThunk(g,E):this.copyToThunk(T.fn.apply(void 0,T.args),E)}equals(g,E){if(Array.isArray(g)&&Array.isArray(E)){if(g.length!==E.length)return!1;for(let C=0;C{E[I]&&(M[I]=E[I])}),Object.keys(E).forEach(I=>{if(I==="key"||I==="classNames"||I==="selector")return;const O=I.indexOf("-");if(O>0){const j=I.slice(0,O);h.includes(j)?_(j,I.slice(O+1),E[I]):_(C,I,E[I])}else M[I]||_(C,I,E[I])}),M;function _(I,O,j){const k=M[I]||(M[I]={});k[O]=j}}function m(E,C="props"){return(T,M,..._)=>{const I=typeof T=="function";return(0,f.jsx)(T,I?M:w(M,C,E),_)}}m3.JSX=m;const P=m();m3.html=P;const g=m(b,"attrs");return m3.svg=g,m3}var igt;function iN(){if(igt)return Us;igt=1;var f=Us&&Us.__decorate||function(F,$,W,re){var ae=arguments.length,ce=ae<3?$:re===null?re=Object.getOwnPropertyDescriptor($,W):re,J;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(F,$,W,re);else for(var te=F.length-1;te>=0;te--)(J=F[te])&&(ce=(ae<3?J(ce):ae>3?J($,W,ce):J($,W))||ce);return ae>3&&ce&&Object.defineProperty($,W,ce),ce},h=Us&&Us.__metadata||function(F,$){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(F,$)},b=Us&&Us.__param||function(F,$){return function(W,re){$(W,re,F)}},w;Object.defineProperty(Us,"__esModule",{value:!0}),Us.MissingView=Us.EmptyView=Us.configureView=Us.overrideModelElement=Us.configureModelElement=Us.ViewRegistry=Us.findArgValue=void 0;const m=Cy(),P=Zt(),g=Qn(),E=q3(),C=EA(),T=ES(),M=Qh(),_=Sp();function I(F,$){for(;F!==void 0&&!($ in F)&&F.parentArgs;)F=F.parentArgs;return F?F[$]:void 0}Us.findArgValue=I;let O=class extends E.InstanceRegistry{constructor($){super(),this.registerDefaults(),$.forEach(W=>{W.isOverride?this.override(W.type,W.factory()):this.register(W.type,W.factory())})}registerDefaults(){this.register(T.EMPTY_ROOT.type,new R)}missing($){return this.logger.warn(this,`no registered view for type '${$}', please configure a view in the ContainerModule`),new H}};Us.ViewRegistry=O,f([(0,P.inject)(g.TYPES.ILogger),h("design:type",Object)],O.prototype,"logger",void 0),Us.ViewRegistry=O=f([(0,P.injectable)(),b(0,(0,P.multiInject)(g.TYPES.ViewRegistration)),b(0,(0,P.optional)()),h("design:paramtypes",[Array])],O);function j(F,$,W,re,ae){(0,M.registerModelElement)(F,$,W,ae),x(F,$,re)}Us.configureModelElement=j;function k(F,$,W,re,ae){(0,M.registerModelElement)(F,$,W,ae,!0),x(F,$,re,!0)}Us.overrideModelElement=k;function x(F,$,W,re){if(typeof W=="function"){if(!(0,C.isInjectable)(W))throw new Error(`Views should be @injectable: ${W.name}`);F.isBound(W)||F.bind(W).toSelf()}F.bind(g.TYPES.ViewRegistration).toDynamicValue(ae=>({type:$,factory:()=>ae.container.get(W),isOverride:re}))}Us.configureView=x;let R=class{render($,W){return(0,m.svg)("svg",{"class-sprotty-empty":!0})}};Us.EmptyView=R,Us.EmptyView=R=f([(0,P.injectable)()],R);let H=w=class{render($,W){const re=$.position||this.getPostion($.type);return(0,m.svg)("text",{"class-sprotty-missing":!0,x:re.x,y:re.y},'missing "',$.type,'" view')}getPostion($){let W=w.positionMap.get($);return W||(W=_.Point.ORIGIN,w.positionMap.forEach(re=>W=re.y>=W.y?{x:0,y:re.y+20}:W),w.positionMap.set($,W)),W}};return Us.MissingView=H,H.positionMap=new Map,Us.MissingView=H=w=f([(0,P.injectable)()],H),Us}var ay={},rgt;function Qpt(){if(rgt)return ay;rgt=1;var f=ay&&ay.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_},h=ay&&ay.__metadata||function(g,E){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(g,E)};Object.defineProperty(ay,"__esModule",{value:!0}),ay.ViewerCache=void 0;const b=Zt(),w=Qn(),m=eN();let P=class{update(E,C){if(C!==void 0)this.delegate.update(E,C),this.cachedModel=void 0;else{const T=this.cachedModel===void 0;this.cachedModel=E,T&&this.scheduleUpdate()}}scheduleUpdate(){this.syncer.onEndOfNextFrame(()=>{this.cachedModel&&(this.delegate.update(this.cachedModel),this.cachedModel=void 0)})}};return ay.ViewerCache=P,f([(0,b.inject)(w.TYPES.IViewer),h("design:type",Object)],P.prototype,"delegate",void 0),f([(0,b.inject)(w.TYPES.AnimationFrameSyncer),h("design:type",m.AnimationFrameSyncer)],P.prototype,"syncer",void 0),ay.ViewerCache=P=f([(0,b.injectable)()],P),ay}var ive={},ogt;function Zpt(){return ogt||(ogt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.overrideViewerOptions=f.configureViewerOptions=f.defaultViewerOptions=void 0;const h=_S(),b=Qn(),w=()=>({baseDiv:"sprotty",baseClass:"sprotty",hiddenDiv:"sprotty-hidden",hiddenClass:"sprotty-hidden",popupDiv:"sprotty-popup",popupClass:"sprotty-popup",popupClosedClass:"sprotty-popup-closed",needsClientLayout:!0,needsServerLayout:!1,popupOpenDelay:1e3,popupCloseDelay:300,zoomLimits:{min:.01,max:10},horizontalScrollLimits:{min:-1e5,max:1e5},verticalScrollLimits:{min:-1e5,max:1e5}});f.defaultViewerOptions=w;function m(g,E){const C=Object.assign(Object.assign({},(0,f.defaultViewerOptions)()),E);g.isBound(b.TYPES.ViewerOptions)?g.rebind(b.TYPES.ViewerOptions).toConstantValue(C):g.bind(b.TYPES.ViewerOptions).toConstantValue(C)}f.configureViewerOptions=m;function P(g,E){const C=g.get(b.TYPES.ViewerOptions);return(0,h.safeAssign)(C,E),C}f.overrideViewerOptions=P})(ive)),ive}var Ju={},cgt;function ewt(){if(cgt)return Ju;cgt=1;var f=Ju&&Ju.__decorate||function(R,H,F,$){var W=arguments.length,re=W<3?H:$===null?$=Object.getOwnPropertyDescriptor(H,F):$,ae;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")re=Reflect.decorate(R,H,F,$);else for(var ce=R.length-1;ce>=0;ce--)(ae=R[ce])&&(re=(W<3?ae(re):W>3?ae(H,F,re):ae(H,F))||re);return W>3&&re&&Object.defineProperty(H,F,re),re},h=Ju&&Ju.__metadata||function(R,H){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(R,H)},b=Ju&&Ju.__param||function(R,H){return function(F,$){H(F,$,R)}};Object.defineProperty(Ju,"__esModule",{value:!0}),Ju.PopupModelViewer=Ju.HiddenModelViewer=Ju.ModelViewer=Ju.PatcherProvider=Ju.ModelRenderer=void 0;const w=Zt(),m=nN,P=Cy(),g=My(),E=fJ(),C=ES(),T=Qn(),M=Jpt(),_=mh();class I{constructor(H,F,$,W={}){this.viewRegistry=H,this.targetKind=F,this.postprocessors=$,this.args=W}decorate(H,F){return(0,M.isThunk)(H)?H:this.postprocessors.reduce(($,W)=>W.decorate($,F),H)}renderElement(H){const $=this.viewRegistry.get(H.type).render(H,this,this.args);if($)return this.decorate($,H)}renderChildren(H,F){const $=F?new I(this.viewRegistry,this.targetKind,this.postprocessors,Object.assign(Object.assign({},F),{parentArgs:this.args})):this;return H.children.map(W=>$.renderElement(W)).filter(W=>W!==void 0)}postUpdate(H){this.postprocessors.forEach(F=>F.postUpdate(H))}}Ju.ModelRenderer=I;let O=class{constructor(){this.patcher=(0,m.init)(this.createModules())}createModules(){return[m.propsModule,m.attributesModule,m.classModule,m.styleModule,m.eventListenersModule]}};Ju.PatcherProvider=O,Ju.PatcherProvider=O=f([(0,w.injectable)(),h("design:paramtypes",[])],O);let j=class{constructor(H,F,$){this.renderer=H("main",$),this.patcher=F.patcher}update(H,F){var $;this.logger.log(this,"rendering",H);const W=(0,P.html)("div",{id:this.options.baseDiv},this.renderer.renderElement(H));if(this.lastVDOM!==void 0){const re=this.hasFocus();(0,_.copyClassesFromVNode)(this.lastVDOM,W),this.lastVDOM=this.patcher.call(this,this.lastVDOM,W),this.restoreFocus(re)}else if(typeof document<"u"){let re=null;if(this.options.shadowRoot){const ae=($=document.getElementById(this.options.shadowRoot))===null||$===void 0?void 0:$.shadowRoot;ae&&(re=ae.getElementById(this.options.baseDiv))}else re=document.getElementById(this.options.baseDiv);re!==null?(typeof window<"u"&&window.addEventListener("resize",()=>{this.onWindowResize(W)}),(0,_.copyClassesFromElement)(re,W),(0,_.setClass)(W,this.options.baseClass,!0),this.lastVDOM=this.patcher.call(this,re,W)):this.logger.error(this,"element not in DOM:",this.options.baseDiv)}this.renderer.postUpdate(F)}hasFocus(){if(typeof document<"u"&&document.activeElement&&this.lastVDOM.children&&this.lastVDOM.children.length>0){const H=this.lastVDOM.children[0];if(typeof H=="object"){const F=H.elm;return document.activeElement===F}}return!1}restoreFocus(H){if(H&&this.lastVDOM.children&&this.lastVDOM.children.length>0){const F=this.lastVDOM.children[0];if(typeof F=="object"){const $=F.elm;$&&typeof $.focus=="function"&&$.focus()}}}onWindowResize(H){const F=document.getElementById(this.options.baseDiv);if(F!==null){const $=this.getBoundsInPage(F);this.actiondispatcher.dispatch(E.InitializeCanvasBoundsAction.create($))}}getBoundsInPage(H){const F=H.getBoundingClientRect(),$=(0,g.getWindowScroll)();return{x:F.left+$.x,y:F.top+$.y,width:F.width,height:F.height}}};Ju.ModelViewer=j,f([(0,w.inject)(T.TYPES.ViewerOptions),h("design:type",Object)],j.prototype,"options",void 0),f([(0,w.inject)(T.TYPES.ILogger),h("design:type",Object)],j.prototype,"logger",void 0),f([(0,w.inject)(T.TYPES.IActionDispatcher),h("design:type",Object)],j.prototype,"actiondispatcher",void 0),Ju.ModelViewer=j=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.ModelRendererFactory)),b(1,(0,w.inject)(T.TYPES.PatcherProvider)),b(2,(0,w.multiInject)(T.TYPES.IVNodePostprocessor)),b(2,(0,w.optional)()),h("design:paramtypes",[Function,O,Array])],j);let k=class{constructor(H,F,$){this.hiddenRenderer=H("hidden",$),this.patcher=F.patcher}update(H,F){this.logger.log(this,"rendering hidden");let $;if(H.type===C.EMPTY_ROOT.type)$=(0,P.html)("div",{id:this.options.hiddenDiv});else{const W=this.hiddenRenderer.renderElement(H);W&&(0,_.setAttr)(W,"opacity",0),$=(0,P.html)("div",{id:this.options.hiddenDiv},W)}if(this.lastHiddenVDOM!==void 0)(0,_.copyClassesFromVNode)(this.lastHiddenVDOM,$),this.lastHiddenVDOM=this.patcher.call(this,this.lastHiddenVDOM,$);else{let W=document.getElementById(this.options.hiddenDiv);W===null?(W=document.createElement("div"),document.body.appendChild(W)):(0,_.copyClassesFromElement)(W,$),(0,_.setClass)($,this.options.baseClass,!0),(0,_.setClass)($,this.options.hiddenClass,!0),this.lastHiddenVDOM=this.patcher.call(this,W,$)}this.hiddenRenderer.postUpdate(F)}};Ju.HiddenModelViewer=k,f([(0,w.inject)(T.TYPES.ViewerOptions),h("design:type",Object)],k.prototype,"options",void 0),f([(0,w.inject)(T.TYPES.ILogger),h("design:type",Object)],k.prototype,"logger",void 0),Ju.HiddenModelViewer=k=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.ModelRendererFactory)),b(1,(0,w.inject)(T.TYPES.PatcherProvider)),b(2,(0,w.multiInject)(T.TYPES.HiddenVNodePostprocessor)),b(2,(0,w.optional)()),h("design:paramtypes",[Function,O,Array])],k);let x=class{constructor(H,F,$){this.modelRendererFactory=H,this.popupRenderer=this.modelRendererFactory("popup",$),this.patcher=F.patcher}update(H,F){this.logger.log(this,"rendering popup",H);const $=H.type===C.EMPTY_ROOT.type;let W;if($)W=(0,P.html)("div",{id:this.options.popupDiv});else{const re=H.canvasBounds,ae={top:re.y+"px",left:re.x+"px"};W=(0,P.html)("div",{id:this.options.popupDiv,style:ae},this.popupRenderer.renderElement(H))}if(this.lastPopupVDOM!==void 0)(0,_.copyClassesFromVNode)(this.lastPopupVDOM,W),(0,_.setClass)(W,this.options.popupClosedClass,$),this.lastPopupVDOM=this.patcher.call(this,this.lastPopupVDOM,W);else if(typeof document<"u"){let re=document.getElementById(this.options.popupDiv);re===null?(re=document.createElement("div"),document.body.appendChild(re)):(0,_.copyClassesFromElement)(re,W),(0,_.setClass)(W,this.options.popupClass,!0),(0,_.setClass)(W,this.options.popupClosedClass,$),this.lastPopupVDOM=this.patcher.call(this,re,W)}this.popupRenderer.postUpdate(F)}};return Ju.PopupModelViewer=x,f([(0,w.inject)(T.TYPES.ViewerOptions),h("design:type",Object)],x.prototype,"options",void 0),f([(0,w.inject)(T.TYPES.ILogger),h("design:type",Object)],x.prototype,"logger",void 0),Ju.PopupModelViewer=x=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.ModelRendererFactory)),b(1,(0,w.inject)(T.TYPES.PatcherProvider)),b(2,(0,w.multiInject)(T.TYPES.PopupVNodePostprocessor)),b(2,(0,w.optional)()),h("design:paramtypes",[Function,O,Array])],x),Ju}var H4={},sgt;function twt(){if(sgt)return H4;sgt=1;var f=H4&&H4.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(H4,"__esModule",{value:!0}),H4.FocusFixPostprocessor=void 0;const h=Zt(),b=mh();let w=class{decorate(P,g){return P.sel&&P.sel.startsWith("svg")&&(0,b.setAttr)(P,"tabindex",0),P}postUpdate(){}};return H4.FocusFixPostprocessor=w,H4.FocusFixPostprocessor=w=f([(0,h.injectable)()],w),H4}var eX={},Vd={},ugt;function Bye(){if(ugt)return Vd;ugt=1;var f=Vd&&Vd.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=Vd&&Vd.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(Vd,"__esModule",{value:!0}),Vd.ConsoleLogger=Vd.NullLogger=Vd.LogLevel=void 0;const b=Zt(),w=Qn();var m;(function(E){E[E.none=0]="none",E[E.error=1]="error",E[E.warn=2]="warn",E[E.info=3]="info",E[E.log=4]="log"})(m||(Vd.LogLevel=m={}));let P=class{constructor(){this.logLevel=m.none}error(C,T,...M){}warn(C,T,...M){}info(C,T,...M){}log(C,T,...M){}};Vd.NullLogger=P,Vd.NullLogger=P=f([(0,b.injectable)()],P);let g=class{constructor(){this.logLevel=m.log,this.viewOptions={baseDiv:""}}error(C,T,...M){if(this.logLevel>=m.error)try{console.error.apply(C,this.consoleArguments(C,T,M))}catch{}}warn(C,T,...M){if(this.logLevel>=m.warn)try{console.warn.apply(C,this.consoleArguments(C,T,M))}catch{}}info(C,T,...M){if(this.logLevel>=m.info)try{console.info.apply(C,this.consoleArguments(C,T,M))}catch{}}log(C,T,...M){if(this.logLevel>=m.log)try{console.log.apply(C,this.consoleArguments(C,T,M))}catch{}}consoleArguments(C,T,M){let _;return typeof C=="object"?_=C.constructor.name:_=C,[new Date().toLocaleTimeString()+" "+this.viewOptions.baseDiv+" "+_+": "+T,...M]}};return Vd.ConsoleLogger=g,f([(0,b.inject)(w.TYPES.LogLevel),h("design:type",Number)],g.prototype,"logLevel",void 0),f([(0,b.inject)(w.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"viewOptions",void 0),Vd.ConsoleLogger=g=f([(0,b.injectable)()],g),Vd}var ly={},agt;function lUt(){if(agt)return ly;agt=1;var f=ly&&ly.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=ly&&ly.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(ly,"__esModule",{value:!0}),ly.IdPostprocessor=void 0;const b=Zt(),w=Qn(),m=tN(),P=mh();let g=class{decorate(C,T){const M=(0,P.getAttrs)(C);return M.id!==void 0&&this.logger.warn(C,"Overriding id of vnode ("+M.id+"). Make sure not to set it manually in view."),M.id=this.domHelper.createUniqueDOMElementId(T),C.key||(C.key=T.id),C}postUpdate(){}};return ly.IdPostprocessor=g,f([(0,b.inject)(w.TYPES.ILogger),h("design:type",Object)],g.prototype,"logger",void 0),f([(0,b.inject)(w.TYPES.DOMHelper),h("design:type",m.DOMHelper)],g.prototype,"domHelper",void 0),ly.IdPostprocessor=g=f([(0,b.injectable)()],g),ly}var z4={},lgt;function fUt(){if(lgt)return z4;lgt=1;var f=z4&&z4.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(z4,"__esModule",{value:!0}),z4.CssClassPostprocessor=void 0;const h=LM(),b=mh(),w=Zt();let m=class{decorate(g,E){if(E.cssClasses)for(const T of E.cssClasses)(0,b.setClass)(g,T,!0);const C=(0,h.getSubType)(E);return C&&C!==E.type&&(0,b.setClass)(g,C,!0),g}postUpdate(){}};return z4.CssClassPostprocessor=m,z4.CssClassPostprocessor=m=f([(0,w.injectable)()],m),z4}var fgt;function nwt(){if(fgt)return eX;fgt=1,Object.defineProperty(eX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=fJ(),w=Bye(),m=Rye(),P=lJ(),g=Upt(),E=Gpt(),C=ES(),T=eN(),M=ewt(),_=Zpt(),I=Pp(),O=H3(),j=twt(),k=iN(),x=Qpt(),R=tN(),H=lUt(),F=kb(),$=fUt(),W=xye(),re=hJ(),ae=zpt(),ce=new f.ContainerModule((J,te,fe)=>{J(h.TYPES.ILogger).to(w.NullLogger).inSingletonScope(),J(h.TYPES.LogLevel).toConstantValue(w.LogLevel.warn),J(h.TYPES.SModelRegistry).to(C.SModelRegistry).inSingletonScope(),J(P.ActionHandlerRegistry).toSelf().inSingletonScope(),J(h.TYPES.ActionHandlerRegistryProvider).toProvider(me=>()=>new Promise(ke=>{ke(me.container.get(P.ActionHandlerRegistry))})),J(h.TYPES.ViewRegistry).to(k.ViewRegistry).inSingletonScope(),J(h.TYPES.IModelFactory).to(C.SModelFactory).inSingletonScope(),J(h.TYPES.IActionDispatcher).to(m.ActionDispatcher).inSingletonScope(),J(h.TYPES.IActionDispatcherProvider).toProvider(me=>()=>new Promise(ke=>{ke(me.container.get(h.TYPES.IActionDispatcher))})),J(h.TYPES.IDiagramLocker).to(ae.DefaultDiagramLocker).inSingletonScope(),J(F.CommandActionHandlerInitializer).toSelf().inSingletonScope(),J(h.TYPES.IActionHandlerInitializer).toService(F.CommandActionHandlerInitializer),J(h.TYPES.ICommandStack).to(g.CommandStack).inSingletonScope(),J(h.TYPES.ICommandStackProvider).toProvider(me=>()=>new Promise(ke=>{ke(me.container.get(h.TYPES.ICommandStack))})),J(h.TYPES.CommandStackOptions).toConstantValue((0,E.defaultCommandStackOptions)()),J(M.ModelViewer).toSelf().inSingletonScope(),J(M.HiddenModelViewer).toSelf().inSingletonScope(),J(M.PopupModelViewer).toSelf().inSingletonScope(),J(h.TYPES.ModelViewer).toDynamicValue(me=>{const ke=me.container.createChild();return ke.bind(h.TYPES.IViewer).toService(M.ModelViewer),ke.bind(x.ViewerCache).toSelf(),ke.get(x.ViewerCache)}).inSingletonScope(),J(h.TYPES.PopupModelViewer).toDynamicValue(me=>{const ke=me.container.createChild();return ke.bind(h.TYPES.IViewer).toService(M.PopupModelViewer),ke.bind(x.ViewerCache).toSelf(),ke.get(x.ViewerCache)}).inSingletonScope(),J(h.TYPES.HiddenModelViewer).toService(M.HiddenModelViewer),J(h.TYPES.IViewerProvider).toDynamicValue(me=>({get modelViewer(){return me.container.get(h.TYPES.ModelViewer)},get hiddenModelViewer(){return me.container.get(h.TYPES.HiddenModelViewer)},get popupModelViewer(){return me.container.get(h.TYPES.PopupModelViewer)}})),J(h.TYPES.ViewerOptions).toConstantValue((0,_.defaultViewerOptions)()),J(h.TYPES.PatcherProvider).to(M.PatcherProvider).inSingletonScope(),J(h.TYPES.DOMHelper).to(R.DOMHelper).inSingletonScope(),J(h.TYPES.ModelRendererFactory).toFactory(me=>(ke,tt,De={})=>{const ct=me.container.get(h.TYPES.ViewRegistry);return new M.ModelRenderer(ct,ke,tt,De)}),J(H.IdPostprocessor).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(H.IdPostprocessor),J(h.TYPES.HiddenVNodePostprocessor).toService(H.IdPostprocessor),J($.CssClassPostprocessor).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService($.CssClassPostprocessor),J(h.TYPES.HiddenVNodePostprocessor).toService($.CssClassPostprocessor),J(I.MouseTool).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(I.MouseTool),J(O.KeyTool).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(O.KeyTool),J(j.FocusFixPostprocessor).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(j.FocusFixPostprocessor),J(h.TYPES.PopupVNodePostprocessor).toService(H.IdPostprocessor),J(I.PopupMouseTool).toSelf().inSingletonScope(),J(h.TYPES.PopupVNodePostprocessor).toService(I.PopupMouseTool),J(h.TYPES.AnimationFrameSyncer).to(T.AnimationFrameSyncer).inSingletonScope();const ve={bind:J,isBound:fe};(0,F.configureCommand)(ve,b.InitializeCanvasBoundsCommand),J(b.CanvasBoundsInitializer).toSelf().inSingletonScope(),J(h.TYPES.IVNodePostprocessor).toService(b.CanvasBoundsInitializer),(0,F.configureCommand)(ve,W.SetModelCommand),J(h.TYPES.UIExtensionRegistry).to(re.UIExtensionRegistry).inSingletonScope(),(0,F.configureCommand)(ve,re.SetUIExtensionVisibilityCommand),J(I.MousePositionTracker).toSelf().inSingletonScope(),J(h.TYPES.MouseListener).toService(I.MousePositionTracker)});return eX.default=ce,eX}var Gd={},rve={},hgt;function Xs(){return hgt||(hgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.SShapeElementImpl=f.findChildrenAtPosition=f.getAbsoluteClientBounds=f.getAbsoluteBounds=f.isAlignable=f.isSizeable=f.isLayoutableChild=f.isLayoutContainer=f.isBoundsAware=f.alignFeature=f.layoutableChildFeature=f.layoutContainerFeature=f.boundsFeature=void 0;const h=Ac(),b=Oc(),w=Qh(),m=My();f.boundsFeature=Symbol("boundsFeature"),f.layoutContainerFeature=Symbol("layoutContainerFeature"),f.layoutableChildFeature=Symbol("layoutableChildFeature"),f.alignFeature=Symbol("alignFeature");function P(k){return"bounds"in k}f.isBoundsAware=P;function g(k){return P(k)&&k.hasFeature(f.layoutContainerFeature)&&"layout"in k}f.isLayoutContainer=g;function E(k){return P(k)&&k.hasFeature(f.layoutableChildFeature)}f.isLayoutableChild=E;function C(k){return k.hasFeature(f.boundsFeature)&&P(k)}f.isSizeable=C;function T(k){return k.hasFeature(f.alignFeature)&&"alignment"in k}f.isAlignable=T;function M(k){const x=(0,w.findParentByFeature)(k,P);if(x!==void 0){let R=x.bounds,H=x;for(;H instanceof b.SChildElementImpl;){const F=H.parent;R=F.localToParent(R),H=F}return R}else if(k instanceof b.SModelRootImpl){const R=k.canvasBounds;return{x:0,y:0,width:R.width,height:R.height}}else return h.Bounds.EMPTY}f.getAbsoluteBounds=M;function _(k,x,R){let H=0,F=0,$=0,W=0;const re=x.createUniqueDOMElementId(k),ae=document.getElementById(re);if(ae){const J=ae.getBoundingClientRect(),te=(0,m.getWindowScroll)();H=J.left+te.x,F=J.top+te.y,$=J.width,W=J.height}let ce=document.getElementById(R.baseDiv);if(ce)for(;ce.offsetParent instanceof HTMLElement&&(ce=ce.offsetParent);)H-=ce.offsetLeft,F-=ce.offsetTop;return{x:H,y:F,width:$,height:W}}f.getAbsoluteClientBounds=_;function I(k,x){const R=[];return O(k,x,R),R}f.findChildrenAtPosition=I;function O(k,x,R){k.children.forEach(H=>{if(P(H)&&h.Bounds.includes(H.bounds,x)&&R.push(H),H instanceof b.SParentElementImpl){const F=H.parentToLocal(x);O(H,F,R)}})}class j extends b.SChildElementImpl{constructor(){super(...arguments),this.position=h.Point.ORIGIN,this.size=h.Dimension.EMPTY}get bounds(){return{x:this.position.x,y:this.position.y,width:this.size.width,height:this.size.height}}set bounds(x){this.position={x:x.x,y:x.y},this.size={width:x.width,height:x.height}}localToParent(x){const R={x:x.x+this.position.x,y:x.y+this.position.y,width:-1,height:-1};return(0,h.isBounds)(x)&&(R.width=x.width,R.height=x.height),R}parentToLocal(x){const R={x:x.x-this.position.x,y:x.y-this.position.y,width:-1,height:-1};return(0,h.isBounds)(x)&&(R.width=x.width,R.height=x.height),R}}f.SShapeElementImpl=j})(rve)),rve}var dgt;function $ye(){if(dgt)return Gd;dgt=1;var f=Gd&&Gd.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Gd&&Gd.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=Gd&&Gd.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(Gd,"__esModule",{value:!0}),Gd.RequestBoundsCommand=Gd.SetBoundsCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=Xs();let C=class extends P.SystemCommand{constructor(_){super(),this.action=_,this.bounds=[]}execute(_){return this.action.bounds.forEach(I=>{const O=_.root.index.getById(I.elementId);O&&(0,E.isBoundsAware)(O)&&this.bounds.push({element:O,oldBounds:O.bounds,newPosition:I.newPosition,newSize:I.newSize})}),this.redo(_)}undo(_){return this.bounds.forEach(I=>I.element.bounds=I.oldBounds),_.root}redo(_){return this.bounds.forEach(I=>{I.newPosition?I.element.bounds=Object.assign(Object.assign({},I.newPosition),I.newSize):I.element.bounds=Object.assign({x:I.element.bounds.x,y:I.element.bounds.y},I.newSize)}),_.root}};Gd.SetBoundsCommand=C,C.KIND=m.SetBoundsAction.KIND,Gd.SetBoundsCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],C);let T=class extends P.HiddenCommand{constructor(_){super(),this.action=_}execute(_){return{model:_.modelFactory.createRoot(this.action.newRoot),modelChanged:!0,cause:this.action}}get blockUntil(){return _=>_.kind===m.ComputedBoundsAction.KIND}};return Gd.RequestBoundsCommand=T,T.KIND=m.RequestBoundsAction.KIND,Gd.RequestBoundsCommand=T=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],T),Gd}var MM={},rf={},ggt;function Kye(){if(ggt)return rf;ggt=1;var f=rf&&rf.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=rf&&rf.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)},b=rf&&rf.__param||function(O,j){return function(k,x){j(k,x,O)}};Object.defineProperty(rf,"__esModule",{value:!0}),rf.configureLayout=rf.StatefulLayouter=rf.Layouter=rf.LayoutRegistry=void 0;const w=Zt(),m=Ac(),P=Qn(),g=q3(),E=Xs(),C=EA();let T=class extends g.InstanceRegistry{constructor(j=[]){super(),j.forEach(k=>{this.hasKey(k.layoutKind)?this.logger.warn("Layout kind is already defined: ",k.layoutKind):this.register(k.layoutKind,k.factory())})}};rf.LayoutRegistry=T,f([(0,w.inject)(P.TYPES.ILogger),h("design:type",Object)],T.prototype,"logger",void 0),rf.LayoutRegistry=T=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.LayoutRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],T);let M=class{layout(j){new _(j,this.layoutRegistry,this.logger).layout()}};rf.Layouter=M,f([(0,w.inject)(P.TYPES.LayoutRegistry),h("design:type",T)],M.prototype,"layoutRegistry",void 0),f([(0,w.inject)(P.TYPES.ILogger),h("design:type",Object)],M.prototype,"logger",void 0),rf.Layouter=M=f([(0,w.injectable)()],M);class _{constructor(j,k,x){this.element2boundsData=j,this.layoutRegistry=k,this.log=x,this.toBeLayouted=[],j.forEach((R,H)=>{(0,E.isLayoutContainer)(H)&&this.toBeLayouted.push(H)})}getBoundsData(j){let k=this.element2boundsData.get(j),x=j.bounds;return(0,E.isLayoutContainer)(j)&&this.toBeLayouted.indexOf(j)>=0&&(x=this.doLayout(j)),k||(k={bounds:x,boundsChanged:!1,alignmentChanged:!1},this.element2boundsData.set(j,k)),k}layout(){for(;this.toBeLayouted.length>0;){const j=this.toBeLayouted[0];this.doLayout(j)}}doLayout(j){const k=this.toBeLayouted.indexOf(j);k>=0&&this.toBeLayouted.splice(k,1);const x=this.layoutRegistry.get(j.layout);x&&x.layout(j,this);const R=this.element2boundsData.get(j);return R!==void 0&&R.bounds!==void 0?R.bounds:(this.log.error(j,"Layout failed"),m.Bounds.EMPTY)}}rf.StatefulLayouter=_;function I(O,j,k){if(typeof k=="function"){if(!(0,C.isInjectable)(k))throw new Error(`Layouts be @injectable: ${k.name}`);O.isBound(k)||O.bind(k).toSelf()}O.bind(P.TYPES.LayoutRegistration).toDynamicValue(x=>({layoutKind:j,factory:()=>x.container.get(k)}))}return rf.configureLayout=I,rf}var bgt;function iwt(){return bgt||(bgt=1,(function(f){var h=MM&&MM.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},b=MM&&MM.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(f,"__esModule",{value:!0}),f.ATTR_BBOX_ELEMENT=f.HiddenBoundsUpdater=f.BoundsData=void 0;const w=Zt(),m=jc(),P=Ac(),g=My(),E=Oc(),C=Qn(),T=Kye(),M=Xs();class _{}f.BoundsData=_;let I=class{constructor(){this.element2boundsData=new Map}decorate(j,k){return((0,M.isSizeable)(k)||(0,M.isLayoutContainer)(k))&&this.element2boundsData.set(k,{vnode:j,bounds:k.bounds,boundsChanged:!1,alignmentChanged:!1}),k instanceof E.SModelRootImpl&&(this.root=k),j}postUpdate(j){if(j===void 0||j.kind!==m.RequestBoundsAction.KIND)return;const k=j;this.getBoundsFromDOM(),this.layouter.layout(this.element2boundsData);const x=[],R=[];this.element2boundsData.forEach((F,$)=>{if(F.boundsChanged&&F.bounds!==void 0){const W={elementId:$.id,newSize:{width:F.bounds.width,height:F.bounds.height}};$ instanceof E.SChildElementImpl&&(0,M.isLayoutContainer)($.parent)&&(W.newPosition={x:F.bounds.x,y:F.bounds.y}),x.push(W)}F.alignmentChanged&&F.alignment!==void 0&&R.push({elementId:$.id,newAlignment:F.alignment})});const H=this.root!==void 0?this.root.revision:void 0;this.actionDispatcher.dispatch(m.ComputedBoundsAction.create(x,{revision:H,alignments:R,requestId:k.requestId})),this.element2boundsData.clear()}getBoundsFromDOM(){this.element2boundsData.forEach((j,k)=>{if(j.bounds&&(0,M.isSizeable)(k)){const x=j.vnode;if(x&&x.elm){const R=this.getBounds(x.elm,k);(0,M.isAlignable)(k)&&!((0,P.almostEquals)(R.x,0)&&(0,P.almostEquals)(R.y,0))&&(j.alignment={x:-R.x,y:-R.y},j.alignmentChanged=!0);const H={x:k.bounds.x,y:k.bounds.y,width:R.width,height:R.height};(0,P.almostEquals)(H.x,k.bounds.x)&&(0,P.almostEquals)(H.y,k.bounds.y)&&(0,P.almostEquals)(H.width,k.bounds.width)&&(0,P.almostEquals)(H.height,k.bounds.height)||(j.bounds=H,j.boundsChanged=!0)}}})}getBounds(j,k){if(!(0,g.isSVGGraphicsElement)(j))return this.logger.error(this,"Not an SVG element:",j),P.Bounds.EMPTY;if(j.tagName==="g"){for(const R of Array.from(j.children))if(R.getAttribute(f.ATTR_BBOX_ELEMENT)!==null)return this.getBounds(R,k)}const x=j.getBBox();return{x:x.x,y:x.y,width:x.width,height:x.height}}};f.HiddenBoundsUpdater=I,h([(0,w.inject)(C.TYPES.ILogger),b("design:type",Object)],I.prototype,"logger",void 0),h([(0,w.inject)(C.TYPES.IActionDispatcher),b("design:type",Object)],I.prototype,"actionDispatcher",void 0),h([(0,w.inject)(C.TYPES.Layouter),b("design:type",T.Layouter)],I.prototype,"layouter",void 0),f.HiddenBoundsUpdater=I=h([(0,w.injectable)()],I),f.ATTR_BBOX_ELEMENT="bboxElement"})(MM)),MM}var V4={},G4={},pgt;function qye(){if(pgt)return G4;pgt=1;var f=G4&&G4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(G4,"__esModule",{value:!0}),G4.AbstractLayout=void 0;const h=Ac(),b=Oc(),w=Xs(),m=Zt();let P=class{layout(E,C){const T=C.getBoundsData(E),M=this.getLayoutOptions(E),_=this.getChildrenSize(E,M,C),I=M.paddingFactor*(M.resizeContainer?Math.max(_.width,M.minWidth):Math.max(0,this.getFixedContainerBounds(E,M,C).width)-M.paddingLeft-M.paddingRight),O=M.paddingFactor*(M.resizeContainer?Math.max(_.height,M.minHeight):Math.max(0,this.getFixedContainerBounds(E,M,C).height)-M.paddingTop-M.paddingBottom);if(I>0&&O>0){const j=this.layoutChildren(E,C,M,I,O);T.bounds=this.getFinalContainerBounds(E,j,M,I,O),T.boundsChanged=!0}}getFinalContainerBounds(E,C,T,M,_){return{x:E.bounds.x,y:E.bounds.y,width:Math.max(T.minWidth,M+T.paddingLeft+T.paddingRight),height:Math.max(T.minHeight,_+T.paddingTop+T.paddingBottom)}}getFixedContainerBounds(E,C,T){let M=E;for(;;){if((0,w.isBoundsAware)(M)){const _=M.bounds;if((0,w.isLayoutContainer)(M)&&C.resizeContainer&&T.log.error(M,"Resizable container found while detecting fixed bounds"),h.Dimension.isValid(_))return _}if(M instanceof b.SChildElementImpl)M=M.parent;else return T.log.error(M,"Cannot detect fixed bounds"),h.Bounds.EMPTY}}layoutChildren(E,C,T,M,_){let I={x:T.paddingLeft+.5*(M-M/T.paddingFactor),y:T.paddingTop+.5*(_-_/T.paddingFactor)};return E.children.forEach(O=>{if((0,w.isLayoutableChild)(O)){const j=C.getBoundsData(O),k=j.bounds,x=this.getChildLayoutOptions(O,T);k!==void 0&&h.Dimension.isValid(k)&&(I=this.layoutChild(O,j,k,x,T,I,M,_))}}),I}getDx(E,C,T){switch(E){case"left":return 0;case"center":return .5*(T-C.width);case"right":return T-C.width}}getDy(E,C,T){switch(E){case"top":return 0;case"center":return .5*(T-C.height);case"bottom":return T-C.height}}getChildLayoutOptions(E,C){const T=E.layoutOptions;return T===void 0?C:this.spread(C,T)}getLayoutOptions(E){let C=E;const T=[];for(;C!==void 0;){const M=C.layoutOptions;if(M!==void 0&&T.push(M),C instanceof b.SChildElementImpl)C=C.parent;else break}return T.reverse().reduce((M,_)=>this.spread(M,_),this.getDefaultLayoutOptions())}};return G4.AbstractLayout=P,G4.AbstractLayout=P=f([(0,m.injectable)()],P),G4}var wgt;function rwt(){if(wgt)return V4;wgt=1;var f=V4&&V4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(V4,"__esModule",{value:!0}),V4.VBoxLayouter=void 0;const h=Zt(),b=Ac(),w=qye(),m=Xs();let P=class extends w.AbstractLayout{getChildrenSize(E,C,T){let M=-1,_=0,I=!0;return E.children.forEach(O=>{if((0,m.isLayoutableChild)(O)){const j=T.getBoundsData(O).bounds;j!==void 0&&b.Dimension.isValid(j)&&(_+=j.height,I?I=!1:_+=C.vGap,M=Math.max(M,j.width))}}),{width:M,height:_}}layoutChild(E,C,T,M,_,I,O,j){const k=this.getDx(M.hAlign,T,O);return C.bounds={x:_.paddingLeft+E.bounds.x-T.x+k,y:I.y+E.bounds.y-T.y,width:T.width,height:T.height},C.boundsChanged=!0,{x:I.x,y:I.y+T.height+_.vGap}}getDefaultLayoutOptions(){return{resizeContainer:!0,paddingTop:5,paddingBottom:5,paddingLeft:5,paddingRight:5,paddingFactor:1,vGap:1,hAlign:"center",minWidth:0,minHeight:0}}spread(E,C){return Object.assign(Object.assign({},E),C)}};return V4.VBoxLayouter=P,P.KIND="vbox",V4.VBoxLayouter=P=f([(0,h.injectable)()],P),V4}var U4={},mgt;function owt(){if(mgt)return U4;mgt=1;var f=U4&&U4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(U4,"__esModule",{value:!0}),U4.HBoxLayouter=void 0;const h=Zt(),b=Ac(),w=qye(),m=Xs();let P=class extends w.AbstractLayout{getChildrenSize(E,C,T){let M=0,_=-1,I=!0;return E.children.forEach(O=>{if((0,m.isLayoutableChild)(O)){const j=T.getBoundsData(O).bounds;j!==void 0&&b.Dimension.isValid(j)&&(I?I=!1:M+=C.hGap,M+=j.width,_=Math.max(_,j.height))}}),{width:M,height:_}}layoutChild(E,C,T,M,_,I,O,j){const k=this.getDy(M.vAlign,T,j);return C.bounds={x:I.x+E.bounds.x-T.x,y:_.paddingTop+E.bounds.y-T.y+k,width:T.width,height:T.height},C.boundsChanged=!0,{x:I.x+T.width+_.hGap,y:I.y}}getDefaultLayoutOptions(){return{resizeContainer:!0,paddingTop:5,paddingBottom:5,paddingLeft:5,paddingRight:5,paddingFactor:1,hGap:1,vAlign:"center",minWidth:0,minHeight:0}}spread(E,C){return Object.assign(Object.assign({},E),C)}};return U4.HBoxLayouter=P,P.KIND="hbox",U4.HBoxLayouter=P=f([(0,h.injectable)()],P),U4}var W4={},vgt;function cwt(){if(vgt)return W4;vgt=1;var f=W4&&W4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(W4,"__esModule",{value:!0}),W4.StackLayouter=void 0;const h=Zt(),b=Ac(),w=qye(),m=Xs();let P=class extends w.AbstractLayout{getChildrenSize(E,C,T){let M=-1,_=-1;return E.children.forEach(I=>{if((0,m.isLayoutableChild)(I)){const O=T.getBoundsData(I).bounds;O!==void 0&&b.Dimension.isValid(O)&&(M=Math.max(M,O.width),_=Math.max(_,O.height))}}),{width:M,height:_}}layoutChild(E,C,T,M,_,I,O,j){const k=this.getDx(M.hAlign,T,O),x=this.getDy(M.vAlign,T,j);return C.bounds={x:_.paddingLeft+E.bounds.x-T.x+k,y:_.paddingTop+E.bounds.y-T.y+x,width:T.width,height:T.height},C.boundsChanged=!0,I}getDefaultLayoutOptions(){return{resizeContainer:!0,paddingTop:5,paddingBottom:5,paddingLeft:5,paddingRight:5,paddingFactor:1,hAlign:"center",vAlign:"center",minWidth:0,minHeight:0}}spread(E,C){return Object.assign(Object.assign({},E),C)}};return W4.StackLayouter=P,P.KIND="stack",W4.StackLayouter=P=f([(0,h.injectable)()],P),W4}var Y4={},ygt;function gJ(){if(ygt)return Y4;ygt=1;var f=Y4&&Y4.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(Y4,"__esModule",{value:!0}),Y4.ShapeView=void 0;const h=Zt(),b=Ac(),w=Xs();let m=class{isVisible(g,E){if(E.targetKind==="hidden"||!b.Dimension.isValid(g.bounds))return!0;const C=(0,w.getAbsoluteBounds)(g),T=g.root.canvasBounds;return C.x<=T.width&&C.x+C.width>=0&&C.y<=T.height&&C.y+C.height>=0}};return Y4.ShapeView=m,Y4.ShapeView=m=f([(0,h.injectable)()],m),Y4}var cg={},_gt;function bJ(){if(_gt)return cg;_gt=1;var f=cg&&cg.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=cg&&cg.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=cg&&cg.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(cg,"__esModule",{value:!0}),cg.configureButtonHandler=cg.ButtonHandlerRegistry=void 0;const w=Zt(),m=q3(),P=Qn(),g=EA();let E=class extends m.InstanceRegistry{constructor(M){super(),M.forEach(_=>this.register(_.TYPE,_.factory()))}};cg.ButtonHandlerRegistry=E,cg.ButtonHandlerRegistry=E=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.IButtonHandlerRegistration)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],E);function C(T,M,_){if(typeof _=="function"){if(!(0,g.isInjectable)(_))throw new Error(`Button handlers should be @injectable: ${_.name}`);T.isBound(_)||T.bind(_).toSelf()}T.bind(P.TYPES.IButtonHandlerRegistration).toDynamicValue(I=>({TYPE:M,factory:()=>I.container.get(_)}))}return cg.configureButtonHandler=C,cg}var yL={},ove={},Egt;function rN(){return Egt||(Egt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isFadeable=f.fadeFeature=void 0,f.fadeFeature=Symbol("fadeFeature");function h(b){return b.hasFeature(f.fadeFeature)&&b.opacity!==void 0}f.isFadeable=h})(ove)),ove}var Sgt;function swt(){if(Sgt)return yL;Sgt=1,Object.defineProperty(yL,"__esModule",{value:!0}),yL.SButtonImpl=void 0;const f=Xs(),h=rN();class b extends f.SShapeElementImpl{constructor(){super(...arguments),this.enabled=!0}}return yL.SButtonImpl=b,b.DEFAULT_FEATURES=[f.boundsFeature,f.layoutableChildFeature,h.fadeFeature],yL}var Ud={},cve={},Pgt;function uwt(){return Pgt||(Pgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.name=f.isNameable=f.nameFeature=void 0,f.nameFeature=Symbol("nameableFeature");function h(w){return w.hasFeature(f.nameFeature)}f.isNameable=h;function b(w){if(h(w))return w.name}f.name=b})(cve)),cve}var Mgt;function Hye(){if(Mgt)return Ud;Mgt=1;var f=Ud&&Ud.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=Ud&&Ud.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)},b=Ud&&Ud.__param||function(_,I){return function(O,j){I(O,j,_)}};Object.defineProperty(Ud,"__esModule",{value:!0}),Ud.RevealNamedElementActionProvider=Ud.CommandPaletteActionProviderRegistry=void 0;const w=Zt(),m=jc(),P=jye(),g=Qn(),E=_A(),C=uwt();let T=class{constructor(I=[]){this.actionProviders=I}getActions(I,O,j,k){const x=this.actionProviders.map(R=>R.getActions(I,O,j,k));return Promise.all(x).then(R=>R.reduce((H,F)=>F!==void 0?H.concat(F):H))}};Ud.CommandPaletteActionProviderRegistry=T,Ud.CommandPaletteActionProviderRegistry=T=f([(0,w.injectable)(),b(0,(0,w.multiInject)(g.TYPES.ICommandPaletteActionProvider)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],T);let M=class{constructor(I){this.logger=I}getActions(I,O,j,k){return k!==void 0&&k%2===0?Promise.resolve(this.createSelectActions(I)):Promise.resolve([new P.LabeledAction("Select all",[m.SelectAllAction.create()])])}createSelectActions(I){return(0,E.toArray)(I.index.all().filter(j=>(0,C.isNameable)(j))).map(j=>new P.LabeledAction(`Reveal ${(0,C.name)(j)}`,[m.SelectAction.create({selectedElementsIDs:[j.id]}),m.CenterAction.create([j.id])],"eye"))}};return Ud.RevealNamedElementActionProvider=M,Ud.RevealNamedElementActionProvider=M=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.ILogger)),h("design:paramtypes",[Object])],M),Ud}var sg={},sve={},Cgt;function awt(){return Cgt||(Cgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.codiconCSSClasses=f.codiconCSSString=f.ANIMATION_SPIN=f.ACTION_ITEM=void 0,f.ACTION_ITEM="action-item",f.ANIMATION_SPIN="animation-spin";function h(w,m=!1,P=!1,g=[]){return b(w,m,P,g).join(" ")}f.codiconCSSString=h;function b(w,m=!1,P=!1,g=[]){const E=["codicon",`codicon-${w}`];return m&&E.push(f.ACTION_ITEM),P&&E.push(f.ANIMATION_SPIN),g.length>0&&E.push(...g),E}f.codiconCSSClasses=b})(sve)),sve}var CM={},Igt;function z3(){if(Igt)return CM;Igt=1,Object.defineProperty(CM,"__esModule",{value:!0}),CM.getActualCode=CM.matchesKeystroke=void 0;const f=My();function h(m,P,...g){if(b(m)!==P)return!1;if((0,f.isMac)()){if(m.ctrlKey!==g.findIndex(E=>E==="ctrl")>=0||m.metaKey!==g.findIndex(E=>E==="meta"||E==="ctrlCmd")>=0)return!1}else if(m.ctrlKey!==g.findIndex(E=>E==="ctrl"||E==="ctrlCmd")>=0||m.metaKey!==g.findIndex(E=>E==="meta")>=0)return!1;return!(m.altKey!==g.findIndex(E=>E==="alt")>=0||m.shiftKey!==g.findIndex(E=>E==="shift")>=0)}CM.matchesKeystroke=h;function b(m){if(m.keyCode){const P=w[m.keyCode];if(P!==void 0)return P}return m.code}CM.getActualCode=b;const w=new Array(256);return(()=>{function m(P,g){w[g]===void 0&&(w[g]=P)}m("Pause",3),m("Backspace",8),m("Tab",9),m("Enter",13),m("ShiftLeft",16),m("ShiftRight",16),m("ControlLeft",17),m("ControlRight",17),m("AltLeft",18),m("AltRight",18),m("CapsLock",20),m("Escape",27),m("Space",32),m("PageUp",33),m("PageDown",34),m("End",35),m("Home",36),m("ArrowLeft",37),m("ArrowUp",38),m("ArrowRight",39),m("ArrowDown",40),m("Insert",45),m("Delete",46),m("Digit1",49),m("Digit2",50),m("Digit3",51),m("Digit4",52),m("Digit5",53),m("Digit6",54),m("Digit7",55),m("Digit8",56),m("Digit9",57),m("Digit0",48),m("KeyA",65),m("KeyB",66),m("KeyC",67),m("KeyD",68),m("KeyE",69),m("KeyF",70),m("KeyG",71),m("KeyH",72),m("KeyI",73),m("KeyJ",74),m("KeyK",75),m("KeyL",76),m("KeyM",77),m("KeyN",78),m("KeyO",79),m("KeyP",80),m("KeyQ",81),m("KeyR",82),m("KeyS",83),m("KeyT",84),m("KeyU",85),m("KeyV",86),m("KeyW",87),m("KeyX",88),m("KeyY",89),m("KeyZ",90),m("OSLeft",91),m("MetaLeft",91),m("OSRight",92),m("MetaRight",92),m("ContextMenu",93),m("Numpad0",96),m("Numpad1",97),m("Numpad2",98),m("Numpad3",99),m("Numpad4",100),m("Numpad5",101),m("Numpad6",102),m("Numpad7",103),m("Numpad8",104),m("Numpad9",105),m("NumpadMultiply",106),m("NumpadAdd",107),m("NumpadSeparator",108),m("NumpadSubtract",109),m("NumpadDecimal",110),m("NumpadDivide",111),m("F1",112),m("F2",113),m("F3",114),m("F4",115),m("F5",116),m("F6",117),m("F7",118),m("F8",119),m("F9",120),m("F10",121),m("F11",122),m("F12",123),m("F13",124),m("F14",125),m("F15",126),m("F16",127),m("F17",128),m("F18",129),m("F19",130),m("F20",131),m("F21",132),m("F22",133),m("F23",134),m("F24",135),m("NumLock",144),m("ScrollLock",145),m("Semicolon",186),m("Equal",187),m("Comma",188),m("Minus",189),m("Period",190),m("Slash",191),m("Backquote",192),m("IntlRo",193),m("BracketLeft",219),m("Backslash",220),m("BracketRight",221),m("Quote",222),m("IntlYen",255)})(),CM}var uve={},Tgt;function Rb(){return Tgt||(Tgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isSelected=f.isSelectable=f.selectFeature=void 0,f.selectFeature=Symbol("selectFeature");function h(w){return w.hasFeature(f.selectFeature)}f.isSelectable=h;function b(w){return w!==void 0&&h(w)&&w.selected}f.isSelected=b})(uve)),uve}var OX={exports:{}},hUt=OX.exports,jgt;function dUt(){return jgt||(jgt=1,(function(f,h){(function(b,w){f.exports=w()})(hUt,(function(){function b(w){var m=document,P=w.container||m.createElement("div"),g=w.preventSubmit||0;P.id=P.id||"autocomplete-"+W();var E=P.style,C=w.debounceWaitMs||0,T=w.disableAutoSelect||!1,M=P.parentElement,_=[],I="",O=2,j=w.showOnFocus,k,x=0,R,H=!1,F=!1;if(w.minLength!==void 0&&(O=w.minLength),!w.input)throw new Error("input undefined");var $=w.input;P.className=[P.className,"autocomplete",w.className||""].join(" ").trim(),P.setAttribute("role","listbox"),$.setAttribute("role","combobox"),$.setAttribute("aria-expanded","false"),$.setAttribute("aria-autocomplete","list"),$.setAttribute("aria-controls",P.id),$.setAttribute("aria-owns",P.id),$.setAttribute("aria-activedescendant",""),$.setAttribute("aria-haspopup","listbox"),E.position="absolute";function W(){return Date.now().toString(36)+Math.random().toString(36).substring(2)}function re(){var Si=P.parentNode;Si&&Si.removeChild(P)}function ae(){R&&window.clearTimeout(R)}function ce(){P.parentNode||(M||m.body).appendChild(P)}function J(){return!!P.parentNode}function te(){x++,_=[],I="",k=void 0,$.setAttribute("aria-activedescendant",""),$.setAttribute("aria-expanded","false"),re()}function fe(){if(!J())return;$.setAttribute("aria-expanded","true"),E.height="auto",E.width=$.offsetWidth+"px";var Si=0,_o;function Au(){var cf=m.documentElement,Rs=cf.clientTop||m.body.clientTop||0,xs=cf.clientLeft||m.body.clientLeft||0,xb=window.pageYOffset||cf.scrollTop,Zh=window.pageXOffset||cf.scrollLeft;_o=$.getBoundingClientRect();var Ia=_o.top+$.offsetHeight+xb-Rs,mm=_o.left+Zh-xs;E.top=Ia+"px",E.left=mm+"px",Si=window.innerHeight-(_o.top+$.offsetHeight),Si<0&&(Si=0),E.top=Ia+"px",E.bottom="",E.left=mm+"px",E.maxHeight=Si+"px"}Au(),Au(),w.customize&&_o&&w.customize($,_o,P,Si)}function ve(){P.textContent="",$.setAttribute("aria-activedescendant","");var Si=function(xs,xb,Zh){var Ia=m.createElement("div");return Ia.textContent=xs.label||"",Ia};w.render&&(Si=w.render);var _o=function(xs,xb){var Zh=m.createElement("div");return Zh.textContent=xs,Zh};w.renderGroup&&(_o=w.renderGroup);var Au=m.createDocumentFragment(),cf=W();if(_.forEach(function(xs,xb){if(xs.group&&xs.group!==cf){cf=xs.group;var Zh=_o(xs.group,I);Zh&&(Zh.className+=" group",Au.appendChild(Zh))}var Ia=Si(xs,I,xb);Ia&&(Ia.id=P.id+"_"+xb,Ia.setAttribute("role","option"),Ia.addEventListener("click",function(mm){F=!0;try{w.onSelect(xs,$)}finally{F=!1}te(),mm.preventDefault(),mm.stopPropagation()}),xs===k&&(Ia.className+=" selected",Ia.setAttribute("aria-selected","true"),$.setAttribute("aria-activedescendant",Ia.id)),Au.appendChild(Ia))}),P.appendChild(Au),_.length<1)if(w.emptyMsg){var Rs=m.createElement("div");Rs.id=P.id+"_"+W(),Rs.className="empty",Rs.textContent=w.emptyMsg,P.appendChild(Rs),$.setAttribute("aria-activedescendant",Rs.id)}else{te();return}ce(),fe(),ct()}function me(){J()&&ve()}function ke(){me()}function tt(Si){Si.target!==P?me():Si.preventDefault()}function De(){F||gt(0)}function ct(){var Si=P.getElementsByClassName("selected");if(Si.length>0){var _o=Si[0],Au=_o.previousElementSibling;if(Au&&Au.className.indexOf("group")!==-1&&!Au.previousElementSibling&&(_o=Au),_o.offsetTopRs&&(P.scrollTop+=cf-Rs)}}}function Z(){var Si=_.indexOf(k);k=Si===-1?void 0:_[(Si+_.length-1)%_.length],ii(Si)}function Nt(){var Si=_.indexOf(k);k=_.length<1?void 0:Si===-1?_[0]:_[(Si+1)%_.length],ii(Si)}function ii(Si){_.length>0&&(jo(Si),kr(_.indexOf(k)),ct())}function kr(Si){var _o=m.getElementById(P.id+"_"+Si);_o&&(_o.classList.add("selected"),_o.setAttribute("aria-selected","true"),$.setAttribute("aria-activedescendant",_o.id))}function jo(Si){var _o=m.getElementById(P.id+"_"+Si);_o&&(_o.classList.remove("selected"),_o.removeAttribute("aria-selected"),$.removeAttribute("aria-activedescendant"))}function Gn(Si,_o){var Au=J();if(_o==="Escape")te();else{if(!Au||_.length<1)return;_o==="ArrowUp"?Z():Nt()}Si.preventDefault(),Au&&Si.stopPropagation()}function pc(Si){if(k){g===2&&Si.preventDefault(),F=!0;try{w.onSelect(k,$)}finally{F=!1}te()}g===1&&Si.preventDefault()}function ls(Si){var _o=Si.key;switch(_o){case"ArrowUp":case"ArrowDown":case"Escape":Gn(Si,_o);break;case"Enter":pc(Si);break}}function Lr(){j&>(1)}function gt(Si){$.value.length>=O||Si===1?(ae(),R=window.setTimeout(function(){return Xn($.value,Si,$.selectionStart||0)},Si===0||Si===2?C:0)):te()}function Xn(Si,_o,Au){if(!H){var cf=++x;w.fetch(Si,function(Rs){x===cf&&Rs&&(_=Rs,I=Si,k=_.length<1||T?void 0:_[0],ve())},_o,Au)}}function jn(Si){if(w.keyup){w.keyup({event:Si,fetch:function(){return gt(0)}});return}!J()&&Si.key==="ArrowDown"&>(0)}function ri(Si){w.click&&w.click({event:Si,fetch:function(){return gt(2)}})}function Er(){setTimeout(function(){m.activeElement!==$&&te()},200)}function Ml(){Xn($.value,3,$.selectionStart||0)}P.addEventListener("mousedown",function(Si){Si.stopPropagation(),Si.preventDefault()}),P.addEventListener("focus",function(){return $.focus()}),re();function yg(){$.removeEventListener("focus",Lr),$.removeEventListener("keyup",jn),$.removeEventListener("click",ri),$.removeEventListener("keydown",ls),$.removeEventListener("input",De),$.removeEventListener("blur",Er),window.removeEventListener("resize",ke),m.removeEventListener("scroll",tt,!0),$.removeAttribute("role"),$.removeAttribute("aria-expanded"),$.removeAttribute("aria-autocomplete"),$.removeAttribute("aria-controls"),$.removeAttribute("aria-activedescendant"),$.removeAttribute("aria-owns"),$.removeAttribute("aria-haspopup"),ae(),te(),H=!0}return $.addEventListener("keyup",jn),$.addEventListener("click",ri),$.addEventListener("keydown",ls),$.addEventListener("input",De),$.addEventListener("blur",Er),$.addEventListener("focus",Lr),window.addEventListener("resize",ke),m.addEventListener("scroll",tt,!0),{destroy:yg,fetch:Ml}}return b}))})(OX)),OX.exports}var Agt;function lwt(){if(Agt)return sg;Agt=1;var f=sg&&sg.__decorate||function(ce,J,te,fe){var ve=arguments.length,me=ve<3?J:fe===null?fe=Object.getOwnPropertyDescriptor(J,te):fe,ke;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")me=Reflect.decorate(ce,J,te,fe);else for(var tt=ce.length-1;tt>=0;tt--)(ke=ce[tt])&&(me=(ve<3?ke(me):ve>3?ke(J,te,me):ke(J,te))||me);return ve>3&&me&&Object.defineProperty(J,te,me),me},h=sg&&sg.__metadata||function(ce,J){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ce,J)},b=sg&&sg.__importDefault||function(ce){return ce&&ce.__esModule?ce:{default:ce}},w;Object.defineProperty(sg,"__esModule",{value:!0}),sg.CommandPaletteKeyListener=sg.CommandPalette=void 0;const m=Zt(),P=jc(),g=jye(),E=Qn(),C=Lye(),T=hJ(),M=tN(),_=H3(),I=awt(),O=_A(),j=z3(),k=Xs(),x=Rb(),R=Hye(),H=Pp(),F=b(dUt());let $=w=class extends C.AbstractUIExtension{constructor(){super(...arguments),this.loadingIndicatorClasses=(0,I.codiconCSSClasses)("loading",!1,!0,["loading"]),this.xOffset=20,this.yOffset=20,this.defaultWidth=400,this.debounceWaitMs=100,this.noCommandsMsg="No commands available",this.paletteIndex=0}id(){return w.ID}containerClass(){return"command-palette"}show(J,...te){super.show(J,...te),this.paletteIndex=0,this.contextActions=void 0,this.inputElement.value="",this.autoCompleteResult=(0,F.default)(this.autocompleteSettings(J)),this.inputElement.focus()}initializeContents(J){J.style.position="absolute",this.inputElement=document.createElement("input"),this.inputElement.style.width="100%",this.inputElement.addEventListener("keydown",te=>this.hideIfEscapeEvent(te)),this.inputElement.addEventListener("keydown",te=>this.cylceIfInvokePaletteKey(te)),this.inputElement.onblur=()=>window.setTimeout(()=>this.hide(),200),J.appendChild(this.inputElement)}hideIfEscapeEvent(J){(0,j.matchesKeystroke)(J,"Escape")&&this.hide()}cylceIfInvokePaletteKey(J){w.isInvokePaletteKey(J)&&this.cycle()}cycle(){this.contextActions=void 0,this.paletteIndex++}onBeforeShow(J,te,...fe){let ve=this.xOffset,me=this.yOffset;const ke=(0,O.toArray)(te.index.all().filter(tt=>(0,x.isSelectable)(tt)&&tt.selected));if(ke.length===1){const tt=(0,k.getAbsoluteClientBounds)(ke[0],this.domHelper,this.viewerOptions);ve+=tt.x+tt.width,me+=tt.y}else{const tt=(0,k.getAbsoluteClientBounds)(te,this.domHelper,this.viewerOptions);ve+=tt.x,me+=tt.y}J.style.left=`${ve}px`,J.style.top=`${me}px`,J.style.width=`${this.defaultWidth}px`}autocompleteSettings(J){return{input:this.inputElement,emptyMsg:this.noCommandsMsg,className:"command-palette-suggestions",debounceWaitMs:this.debounceWaitMs,showOnFocus:!0,minLength:-1,fetch:(te,fe)=>this.updateAutoCompleteActions(fe,te,J),onSelect:te=>this.onSelect(te),render:(te,fe)=>this.renderLabeledActionSuggestion(te,fe),customize:(te,fe,ve,me)=>{this.customizeSuggestionContainer(ve,fe,me)}}}onSelect(J){this.executeAction(J),this.hide()}updateAutoCompleteActions(J,te,fe){this.onLoading(),this.contextActions?(J(this.filterActions(te,this.contextActions)),this.onLoaded("success")):this.actionProviderRegistry.getActions(fe,te,this.mousePositionTracker.lastPositionOnDiagram,this.paletteIndex).then(ve=>{this.contextActions=ve,J(this.filterActions(te,ve)),this.onLoaded("success")}).catch(ve=>{this.logger.error(this,"Failed to obtain actions from command palette action providers",ve),this.onLoaded("error")})}onLoading(){this.loadingIndicator&&this.containerElement.contains(this.loadingIndicator)||(this.loadingIndicator=document.createElement("span"),this.loadingIndicator.classList.add(...this.loadingIndicatorClasses),this.containerElement.appendChild(this.loadingIndicator))}onLoaded(J){this.containerElement.contains(this.loadingIndicator)&&this.containerElement.removeChild(this.loadingIndicator)}renderLabeledActionSuggestion(J,te){const fe=document.createElement("div"),ve=re(te).split(" ").join("|"),me=new RegExp(ve,"gi");return J.icon&&this.renderIcon(fe,J.icon),te.length>0?fe.innerHTML+=J.label.replace(me,ke=>""+ke+"").replace(/ /g," "):fe.innerHTML+=J.label.replace(/ /g," "),fe}renderIcon(J,te){J.innerHTML+=``}getFontAwesomeIcon(J){return`fa fa-${J}`}getCodicon(J){return(0,I.codiconCSSString)(J)}filterActions(J,te){return(0,O.toArray)(te.filter(fe=>{const ve=fe.label.toLowerCase();return J.split(" ").every(ke=>ve.indexOf(ke.toLowerCase())!==-1)}))}customizeSuggestionContainer(J,te,fe){J.style.position="fixed",this.containerElement&&this.containerElement.appendChild(J)}hide(){super.hide(),this.autoCompleteResult&&this.autoCompleteResult.destroy()}executeAction(J){this.actionDispatcherProvider().then(te=>te.dispatchAll(W(J))).catch(te=>this.logger.error(this,"No action dispatcher available to execute command palette action",te))}};sg.CommandPalette=$,$.ID="command-palette",$.isInvokePaletteKey=ce=>(0,j.matchesKeystroke)(ce,"Space","ctrl"),f([(0,m.inject)(E.TYPES.IActionDispatcherProvider),h("design:type",Function)],$.prototype,"actionDispatcherProvider",void 0),f([(0,m.inject)(E.TYPES.ICommandPaletteActionProviderRegistry),h("design:type",R.CommandPaletteActionProviderRegistry)],$.prototype,"actionProviderRegistry",void 0),f([(0,m.inject)(E.TYPES.ViewerOptions),h("design:type",Object)],$.prototype,"viewerOptions",void 0),f([(0,m.inject)(E.TYPES.DOMHelper),h("design:type",M.DOMHelper)],$.prototype,"domHelper",void 0),f([(0,m.inject)(H.MousePositionTracker),h("design:type",H.MousePositionTracker)],$.prototype,"mousePositionTracker",void 0),sg.CommandPalette=$=w=f([(0,m.injectable)()],$);function W(ce){return(0,g.isLabeledAction)(ce)?ce.actions:(0,P.isAction)(ce)?[ce]:[]}function re(ce){return ce.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}class ae extends _.KeyListener{keyDown(J,te){if((0,j.matchesKeystroke)(te,"Escape"))return[T.SetUIExtensionVisibilityAction.create({extensionId:$.ID,visible:!1,contextElementsId:[]})];if($.isInvokePaletteKey(te)){const fe=(0,O.toArray)(J.index.all().filter(ve=>(0,x.isSelectable)(ve)&&ve.selected).map(ve=>ve.id));return[T.SetUIExtensionVisibilityAction.create({extensionId:$.ID,visible:!0,contextElementsId:fe})]}return[]}}return sg.CommandPaletteKeyListener=ae,sg}var _L={},Ogt;function gUt(){if(Ogt)return _L;Ogt=1,Object.defineProperty(_L,"__esModule",{value:!0}),_L.toAnchor=void 0;function f(h){return h instanceof HTMLElement?{x:h.offsetLeft,y:h.offsetTop}:h}return _L.toAnchor=f,_L}var Wd={},v3={},Dgt;function oN(){return Dgt||(Dgt=1,(function(f){var h=v3&&v3.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},b=v3&&v3.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)},w=v3&&v3.__param||function(I,O){return function(j,k){O(j,k,I)}};Object.defineProperty(f,"__esModule",{value:!0}),f.DeleteElementCommand=f.ResolvedDelete=f.isDeletable=f.deletableFeature=void 0;const m=Zt(),P=jc(),g=Ca(),E=Oc(),C=Qn();f.deletableFeature=Symbol("deletableFeature");function T(I){return I instanceof E.SChildElementImpl&&I.hasFeature(f.deletableFeature)}f.isDeletable=T;class M{}f.ResolvedDelete=M;let _=class extends g.Command{constructor(O){super(),this.action=O,this.resolvedDeletes=[]}execute(O){const j=O.root.index;for(const k of this.action.elementIds){const x=j.getById(k);x&&T(x)&&(this.resolvedDeletes.push({child:x,parent:x.parent}),x.parent.remove(x))}return O.root}undo(O){for(const j of this.resolvedDeletes)j.parent.add(j.child);return O.root}redo(O){for(const j of this.resolvedDeletes)j.parent.remove(j.child);return O.root}};f.DeleteElementCommand=_,_.KIND=P.DeleteElementAction.KIND,f.DeleteElementCommand=_=h([(0,m.injectable)(),w(0,(0,m.inject)(C.TYPES.Action)),b("design:paramtypes",[Object])],_)})(v3)),v3}var kgt;function zye(){if(kgt)return Wd;kgt=1;var f=Wd&&Wd.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Wd&&Wd.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=Wd&&Wd.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(Wd,"__esModule",{value:!0}),Wd.DeleteContextMenuItemProvider=Wd.ContextMenuProviderRegistry=void 0;const w=Zt(),m=Qn(),P=oN(),g=Rb(),E=Sp();let C=class{constructor(_=[]){this.menuProviders=_}getItems(_,I){const O=this.menuProviders.map(j=>j.getItems(_,I));return Promise.all(O).then(this.flattenAndRestructure)}flattenAndRestructure(_){let I=_.reduce((j,k)=>k!==void 0?j.concat(k):j,[]);const O=I.filter(j=>j.parentId);for(const j of O)if(j.parentId){const k=j.parentId.split(".");let x,R=I;for(const H of k)x=R.find(F=>H===F.id),x&&x.children&&(R=x.children);x&&(x.children?x.children.push(j):x.children=[j],I=I.filter(H=>H!==j))}return I}};Wd.ContextMenuProviderRegistry=C,Wd.ContextMenuProviderRegistry=C=f([(0,w.injectable)(),b(0,(0,w.multiInject)(m.TYPES.IContextMenuItemProvider)),b(0,(0,w.optional)()),h("design:paramtypes",[Array])],C);let T=class{getItems(_,I){const O=Array.from(_.index.all().filter(g.isSelected).filter(P.isDeletable));return Promise.resolve([{id:"delete",label:"Delete",sortString:"d",group:"edit",actions:[E.DeleteElementAction.create(O.map(j=>j.id))],isEnabled:()=>O.length>0}])}};return Wd.DeleteContextMenuItemProvider=T,Wd.DeleteContextMenuItemProvider=T=f([(0,w.injectable)()],T),Wd}var pp={},Rgt;function fwt(){if(Rgt)return pp;Rgt=1;var f=pp&&pp.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=pp&&pp.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)},b=pp&&pp.__param||function(_,I){return function(O,j){I(O,j,_)}};Object.defineProperty(pp,"__esModule",{value:!0}),pp.ContextMenuMouseListener=void 0;const w=Zt(),m=jc(),P=Qh(),g=Qn(),E=Pp(),C=Rb(),T=zye();let M=class extends E.MouseListener{constructor(I,O){super(),this.contextMenuService=I,this.menuProvider=O}contextMenu(I,O){return this.showContextMenu(I,O),[]}async showContextMenu(I,O){let j;try{j=await this.contextMenuService()}catch{return}let k=!1;const x=(0,P.findParentByFeature)(I,C.isSelectable);x&&(k=x.selected,x.selected=!0);const R=I.root,H={x:O.x,y:O.y};if(I.id===R.id||(0,C.isSelected)(x)){const F=await this.menuProvider.getItems(R,H),$=()=>{x&&(x.selected=k)};j.show(F,H,$)}else{if((0,C.isSelectable)(I)){const $={selectedElementsIDs:[I.id],deselectedElementsIDs:Array.from(R.index.all().filter(C.isSelected),W=>W.id)};await this.actionDispatcher.dispatch(m.SelectAction.create($))}const F=await this.menuProvider.getItems(R,H);j.show(F,H)}}};return pp.ContextMenuMouseListener=M,f([(0,w.inject)(g.TYPES.IActionDispatcher),h("design:type",Object)],M.prototype,"actionDispatcher",void 0),pp.ContextMenuMouseListener=M=f([b(0,(0,w.inject)(g.TYPES.IContextMenuServiceProvider)),b(1,(0,w.inject)(g.TYPES.IContextMenuProviderRegistry)),h("design:paramtypes",[Function,T.ContextMenuProviderRegistry])],M),pp}var tX={},fy={},gh={},ave={},lve={},fve={},xgt;function PA(){return xgt||(xgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.hasPopupFeature=f.popupFeature=f.isHoverable=f.hoverFeedbackFeature=void 0,f.hoverFeedbackFeature=Symbol("hoverFeedbackFeature");function h(w){return w.hasFeature(f.hoverFeedbackFeature)}f.isHoverable=h,f.popupFeature=Symbol("popupFeature");function b(w){return w.hasFeature(f.popupFeature)}f.hasPopupFeature=b})(fve)),fve}var hve={},Lgt;function SS(){return Lgt||(Lgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isMoveable=f.isLocateable=f.moveFeature=void 0;const h=_S();f.moveFeature=Symbol("moveFeature");function b(m){return(0,h.hasOwnProperty)(m,"position")}f.isLocateable=b;function w(m){return m.hasFeature(f.moveFeature)&&b(m)}f.isMoveable=w})(hve)),hve}var Ngt;function Ma(){return Ngt||(Ngt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.edgeInProgressTargetHandleID=f.edgeInProgressID=f.SDanglingAnchorImpl=f.SRoutingHandleImpl=f.SConnectableElementImpl=f.getRouteBounds=f.getAbsoluteRouteBounds=f.isConnectable=f.connectableFeature=f.SRoutableElementImpl=void 0;const h=Ac(),b=Oc(),w=Xs(),m=oN(),P=Rb(),g=PA(),E=SS();class C extends b.SChildElementImpl{constructor(){super(...arguments),this.routingPoints=[]}get source(){return this.index.getById(this.sourceId)}get target(){return this.index.getById(this.targetId)}get bounds(){return this.routingPoints.reduce((x,R)=>h.Bounds.combine(x,{x:R.x,y:R.y,width:0,height:0}),h.Bounds.EMPTY)}}f.SRoutableElementImpl=C,f.connectableFeature=Symbol("connectableFeature");function T(k){return k.hasFeature(f.connectableFeature)&&k.canConnect}f.isConnectable=T;function M(k,x=k.routingPoints){let R=_(x),H=k;for(;H instanceof b.SChildElementImpl;){const F=H.parent;R=F.localToParent(R),H=F}return R}f.getAbsoluteRouteBounds=M;function _(k){const x={x:NaN,y:NaN,width:0,height:0};for(const R of k)isNaN(x.x)?(x.x=R.x,x.y=R.y):(R.xx.x+x.width&&(x.width=R.x-x.x),R.yx.y+x.height&&(x.height=R.y-x.y));return x}f.getRouteBounds=_;class I extends w.SShapeElementImpl{constructor(){super(...arguments),this.strokeWidth=0}get anchorKind(){}get incomingEdges(){return this.index.all().filter(R=>R instanceof C).filter(R=>R.targetId===this.id)}get outgoingEdges(){return this.index.all().filter(R=>R instanceof C).filter(R=>R.sourceId===this.id)}canConnect(x,R){return!0}}f.SConnectableElementImpl=I;class O extends b.SChildElementImpl{constructor(){super(...arguments),this.editMode=!1,this.hoverFeedback=!1,this.selected=!1}hasFeature(x){return O.DEFAULT_FEATURES.indexOf(x)!==-1}}f.SRoutingHandleImpl=O,O.DEFAULT_FEATURES=[P.selectFeature,E.moveFeature,g.hoverFeedbackFeature];class j extends I{constructor(){super(),this.type="dangling-anchor",this.size={width:0,height:0}}}f.SDanglingAnchorImpl=j,j.DEFAULT_FEATURES=[m.deletableFeature],f.edgeInProgressID="edge-in-progress",f.edgeInProgressTargetHandleID=f.edgeInProgressID+"-target-anchor"})(lve)),lve}var Fgt;function cN(){return Fgt||(Fgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.DEFAULT_EDGE_PLACEMENT=f.EdgePlacement=f.checkEdgePlacement=f.isEdgeLayoutable=f.edgeLayoutFeature=void 0;const h=Oc(),b=Xs(),w=Ma();f.edgeLayoutFeature=Symbol("edgeLayout");function m(E){return E instanceof h.SChildElementImpl&&E.parent instanceof w.SRoutableElementImpl&&(0,b.isBoundsAware)(E)&&E.hasFeature(f.edgeLayoutFeature)}f.isEdgeLayoutable=m;function P(E){return"edgePlacement"in E}f.checkEdgePlacement=P;class g extends Object{}f.EdgePlacement=g,f.DEFAULT_EDGE_PLACEMENT={rotate:!0,side:"top",position:.5,offset:7}})(ave)),ave}var dve={},Bgt;function sN(){return Bgt||(Bgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isWithEditableLabel=f.withEditLabelFeature=f.isEditableLabel=f.editLabelFeature=f.canEditRouting=f.editFeature=void 0;const h=Ma();f.editFeature=Symbol("editFeature");function b(P){return P instanceof h.SRoutableElementImpl&&P.hasFeature(f.editFeature)}f.canEditRouting=b,f.editLabelFeature=Symbol("editLabelFeature");function w(P){return"text"in P&&P.hasFeature(f.editLabelFeature)}f.isEditableLabel=w,f.withEditLabelFeature=Symbol("withEditLabelFeature");function m(P){return"editableLabel"in P&&P.hasFeature(f.withEditLabelFeature)}f.isWithEditableLabel=m})(dve)),dve}var EL={},gve={},dm={},$gt;function PS(){if($gt)return dm;$gt=1,Object.defineProperty(dm,"__esModule",{value:!0}),dm.limit=dm.intersection=dm.PointToPointLine=dm.Diamond=void 0;const f=Sp();class h{constructor(g){this.bounds=g}get topPoint(){return{x:this.bounds.x+this.bounds.width/2,y:this.bounds.y}}get rightPoint(){return{x:this.bounds.x+this.bounds.width,y:this.bounds.y+this.bounds.height/2}}get bottomPoint(){return{x:this.bounds.x+this.bounds.width/2,y:this.bounds.y+this.bounds.height}}get leftPoint(){return{x:this.bounds.x,y:this.bounds.y+this.bounds.height/2}}get topRightSideLine(){return new b(this.topPoint,this.rightPoint)}get topLeftSideLine(){return new b(this.topPoint,this.leftPoint)}get bottomRightSideLine(){return new b(this.bottomPoint,this.rightPoint)}get bottomLeftSideLine(){return new b(this.bottomPoint,this.leftPoint)}closestSideLine(g){const E=f.Bounds.center(this.bounds);return g.x>E.x?g.y>E.y?this.bottomRightSideLine:this.topRightSideLine:g.y>E.y?this.bottomLeftSideLine:this.topLeftSideLine}}dm.Diamond=h;class b{constructor(g,E){this.p1=g,this.p2=E}get a(){return this.p1.y-this.p2.y}get b(){return this.p2.x-this.p1.x}get c(){return this.p2.x*this.p1.y-this.p1.x*this.p2.y}get angle(){return Math.atan2(-this.a,this.b)}get slope(){if(this.b!==0)return this.a/this.b}get slopeOrMax(){return this.slope===void 0?Number.MAX_SAFE_INTEGER:this.slope}get direction(){const g=(0,f.toDegrees)(this.angle),E=g<0?360+g:g;if(E===90)return"south";if(E===0||E===360)return"east";if(E===270)return"north";if(E===180)return"west";if(E>0&&E<90)return"south-east";if(E>90&&E<180)return"south-west";if(E>180&&E<270)return"north-west";if(E>270&&E<360)return"north-east";throw new Error(`Cannot determine direction of line (${this.p1.x},${this.p1.y}) to (${this.p2.x},${this.p2.y})`)}intersection(g){if(this.hasIndistinctPoints(g))return;const E=this.p1.x,C=this.p1.y,T=this.p2.x,M=this.p2.y,_=g.p1.x,I=g.p1.y,O=g.p2.x,j=g.p2.y,k=(j-I)*(T-E)-(O-_)*(M-C);if(k===0)return;const x=(O-_)*(C-I)-(j-I)*(E-_),R=(T-E)*(C-I)-(M-C)*(E-_);if(x===0&&R===0)return;const H=x/k,F=R/k;if(H<0||H>1||F<0||F>1)return;const $=E+H*(T-E),W=C+H*(M-C);return{x:$,y:W}}hasIndistinctPoints(g){return f.Point.equals(this.p1,g.p1)||f.Point.equals(this.p1,g.p2)||f.Point.equals(this.p2,g.p1)||f.Point.equals(this.p2,g.p2)}}dm.PointToPointLine=b;function w(P,g){return{x:(P.c*g.b-g.c*P.b)/(P.a*g.b-g.a*P.b),y:(P.a*g.c-g.a*P.c)/(P.a*g.b-g.a*P.b)}}dm.intersection=w;function m(P,g){return Pg.max?g.max:P}return dm.limit=m,dm}var Kgt;function V3(){return Kgt||(Kgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.limitViewport=f.isViewport=f.viewportFeature=void 0;const h=Sp(),b=Oc(),w=PS();f.viewportFeature=Symbol("viewportFeature");function m(g){return g instanceof b.SModelRootImpl&&g.hasFeature(f.viewportFeature)&&"zoom"in g&&"scroll"in g}f.isViewport=m;function P(g,E,C,T,M){E&&!h.Dimension.isValid(E)&&(E=void 0);let _=M?(0,w.limit)(g.zoom,M):g.zoom;if(E&&C){const j=E.width/(C.max-C.min);_ae instanceof k)===void 0}get incomingEdges(){const W=this.index;return W instanceof F?W.getIncomingEdges(this):this.index.all().filter(ae=>ae instanceof x).filter(ae=>ae.targetId===this.id)}get outgoingEdges(){const W=this.index;return W instanceof F?W.getOutgoingEdges(this):this.index.all().filter(ae=>ae instanceof x).filter(ae=>ae.sourceId===this.id)}}gh.SNodeImpl=j,j.DEFAULT_FEATURES=[T.connectableFeature,m.deletableFeature,M.selectFeature,b.boundsFeature,C.moveFeature,b.layoutContainerFeature,g.fadeFeature,E.hoverFeedbackFeature,E.popupFeature];class k extends T.SConnectableElementImpl{constructor(){super(...arguments),this.selected=!1,this.hoverFeedback=!1,this.opacity=1}get incomingEdges(){const W=this.index;return W instanceof F?W.getIncomingEdges(this):super.incomingEdges.filter(re=>re instanceof x)}get outgoingEdges(){const W=this.index;return W instanceof F?W.getOutgoingEdges(this):super.outgoingEdges.filter(re=>re instanceof x)}}gh.SPortImpl=k,k.DEFAULT_FEATURES=[T.connectableFeature,M.selectFeature,b.boundsFeature,g.fadeFeature,E.hoverFeedbackFeature];class x extends T.SRoutableElementImpl{constructor(){super(...arguments),this.selected=!1,this.hoverFeedback=!1,this.opacity=1}}gh.SEdgeImpl=x,x.DEFAULT_FEATURES=[P.editFeature,m.deletableFeature,M.selectFeature,g.fadeFeature,E.hoverFeedbackFeature];class R extends b.SShapeElementImpl{constructor(){super(...arguments),this.selected=!1,this.alignment=f.Point.ORIGIN,this.opacity=1}}gh.SLabelImpl=R,R.DEFAULT_FEATURES=[b.boundsFeature,b.alignFeature,b.layoutableChildFeature,w.edgeLayoutFeature,g.fadeFeature];class H extends b.SShapeElementImpl{constructor(){super(...arguments),this.opacity=1}}gh.SCompartmentImpl=H,H.DEFAULT_FEATURES=[b.boundsFeature,b.layoutContainerFeature,b.layoutableChildFeature,g.fadeFeature];class F extends h.ModelIndexImpl{constructor(){super(...arguments),this.outgoing=new Map,this.incoming=new Map}add(W){if(super.add(W),W instanceof x){if(W.sourceId){const re=this.outgoing.get(W.sourceId);re===void 0?this.outgoing.set(W.sourceId,[W]):re.push(W)}if(W.targetId){const re=this.incoming.get(W.targetId);re===void 0?this.incoming.set(W.targetId,[W]):re.push(W)}}}remove(W){if(super.remove(W),W instanceof x){const re=this.outgoing.get(W.sourceId);if(re!==void 0){const ce=re.indexOf(W);ce>=0&&(re.length===1?this.outgoing.delete(W.sourceId):re.splice(ce,1))}const ae=this.incoming.get(W.targetId);if(ae!==void 0){const ce=ae.indexOf(W);ce>=0&&(ae.length===1?this.incoming.delete(W.targetId):ae.splice(ce,1))}}}getAttachedElements(W){return new I.FluentIterableImpl(()=>({outgoing:this.outgoing.get(W.id),incoming:this.incoming.get(W.id),nextOutgoingIndex:0,nextIncomingIndex:0}),re=>{let ae=re.nextOutgoingIndex;if(re.outgoing!==void 0&&ae=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O},b=y3&&y3.__metadata||function(C,T){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(C,T)},w=y3&&y3.__param||function(C,T){return function(M,_){T(M,_,C)}};Object.defineProperty(f,"__esModule",{value:!0}),f.AnchorComputerRegistry=f.RECTANGULAR_ANCHOR_KIND=f.ELLIPTIC_ANCHOR_KIND=f.DIAMOND_ANCHOR_KIND=void 0;const m=Zt(),P=Qn(),g=q3();f.DIAMOND_ANCHOR_KIND="diamond",f.ELLIPTIC_ANCHOR_KIND="elliptic",f.RECTANGULAR_ANCHOR_KIND="rectangular";let E=class extends g.InstanceRegistry{constructor(T){super(),T.forEach(M=>this.register(M.kind,M))}get defaultAnchorKind(){return f.RECTANGULAR_ANCHOR_KIND}get(T,M){return super.get(`${T}:${M||this.defaultAnchorKind}`)}};f.AnchorComputerRegistry=E,f.AnchorComputerRegistry=E=h([(0,m.injectable)(),w(0,(0,m.multiInject)(P.TYPES.IAnchorComputer)),b("design:paramtypes",[Array])],E)})(y3)),y3}var ag={},Ggt;function pJ(){if(Ggt)return ag;Ggt=1;var f=ag&&ag.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=ag&&ag.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)};Object.defineProperty(ag,"__esModule",{value:!0}),ag.AbstractEdgeRouter=ag.DefaultAnchors=ag.Side=void 0;const b=Zt(),w=Ac(),m=Qh(),P=Ma(),g=MS(),E=Ma();var C;(function(_){_[_.RIGHT=0]="RIGHT",_[_.LEFT=1]="LEFT",_[_.TOP=2]="TOP",_[_.BOTTOM=3]="BOTTOM"})(C||(ag.Side=C={}));class T{constructor(I,O,j){this.element=I,this.kind=j;const k=I.bounds;this.bounds=(0,m.translateBounds)(k,I.parent,O),this.left={x:this.bounds.x,y:this.bounds.y+.5*this.bounds.height,kind:j},this.right={x:this.bounds.x+this.bounds.width,y:this.bounds.y+.5*this.bounds.height,kind:j},this.top={x:this.bounds.x+.5*this.bounds.width,y:this.bounds.y,kind:j},this.bottom={x:this.bounds.x+.5*this.bounds.width,y:this.bounds.y+this.bounds.height,kind:j}}get(I){return this[C[I].toLowerCase()]}getNearestSide(I){const O=w.Point.euclideanDistance(I,this.left),j=w.Point.euclideanDistance(I,this.right),k=w.Point.euclideanDistance(I,this.top),x=w.Point.euclideanDistance(I,this.bottom);let R=C.LEFT,H=O;return j{const W=w.Point.subtract($,F),re=w.Point.subtract(O,F),ae=w.Point.dotProduct(re,W)/w.Point.dotProduct(W,W);return ae>=0&&ae<=1?w.Point.linear(F,$,ae):ae<0?F:$},k=this.route(I);let x=k[0],R=0;for(let F=0;F1)return;const j=this.route(I);if(j.length<2)return;const k=[];let x=0;for(let F=0;F1e-8&&$>=H){const W=Math.max(0,H-R)/k[F];return{segmentStart:j[F],segmentEnd:j[F+1],lambda:W}}R=$}return{segmentEnd:j.pop(),segmentStart:j.pop(),lambda:1}}addHandle(I,O,j,k){const x=new P.SRoutingHandleImpl;return x.kind=O,x.pointIndex=k,x.type=j,O==="target"&&I.id===P.edgeInProgressID&&(x.id=P.edgeInProgressTargetHandleID),I.add(x),x}getHandlePosition(I,O,j){switch(j.kind){case"source":return I.source instanceof P.SDanglingAnchorImpl?I.source.position:O[0];case"target":return I.target instanceof P.SDanglingAnchorImpl?I.target.position:O[O.length-1];default:const k=this.getInnerHandlePosition(I,O,j);if(k!==void 0)return k;if(j.pointIndex>=0&&j.pointIndexH.pointIndex!==void 0?H.pointIndex:H.kind==="target"?I.routingPoints.length:-2;let x,R;for(const H of O){const F=k(H);F<=j&&(x===void 0||F>k(x))&&(x=H),F>j&&(R===void 0||F{const x=k.handle;if(x.kind==="source"&&!(I.source instanceof P.SDanglingAnchorImpl)){const R=new P.SDanglingAnchorImpl;R.id=I.id+"_dangling-source",R.original=I.source,R.position=k.toPosition,x.root.add(R),x.danglingAnchor=R,I.sourceId=R.id}else if(x.kind==="target"&&!(I.target instanceof P.SDanglingAnchorImpl)){const R=new P.SDanglingAnchorImpl;R.id=I.id+"_dangling-target",R.original=I.target,R.position=k.toPosition,x.root.add(R),x.danglingAnchor=R,I.targetId=R.id}x.danglingAnchor&&(x.danglingAnchor.position=k.toPosition,j.splice(j.indexOf(k),1))}),j.length>0&&this.applyInnerHandleMoves(I,j),this.cleanupRoutingPoints(I,I.routingPoints,!0,!0)}cleanupRoutingPoints(I,O,j,k){const x=new T(I.source,I.parent,"source"),R=new T(I.target,I.parent,"target");this.resetRoutingPointsOnReconnect(I,O,j,x,R)}resetRoutingPointsOnReconnect(I,O,j,k,x){if(O.length===0||I.source instanceof P.SDanglingAnchorImpl||I.target instanceof P.SDanglingAnchorImpl){const R=this.getOptions(I),H=this.calculateDefaultCorners(I,k,x,R);if(O.splice(0,O.length,...H),j){let F=-2;I.children.forEach($=>{$ instanceof P.SRoutingHandleImpl&&($.kind==="target"?$.pointIndex=O.length:$.kind==="line"&&$.pointIndex>=O.length?I.remove($):F=Math.max($.pointIndex,F))});for(let $=F;$`${I.sourceId}_to_${I.targetId}_${$}`;let R=0,H=x(R);for(;I.index.getById(H)!==void 0;)H=x(++R);I.id=H;const F=I.children.find($=>$.id===P.edgeInProgressTargetHandleID);F instanceof P.SRoutingHandleImpl&&(I.remove(F),F.danglingAnchor&&F.danglingAnchor.parent.remove(F.danglingAnchor))}I.index.add(I),this.getSelfEdgeIndex(I)>-1&&(I.routingPoints=[],this.cleanupRoutingPoints(I,I.routingPoints,!0,!0))}}takeSnapshot(I){return{routingPoints:I.routingPoints.slice(),routingHandles:I.children.filter(O=>O instanceof P.SRoutingHandleImpl).map(O=>O),routedPoints:this.route(I),router:this,source:I.source,target:I.target}}applySnapshot(I,O){I.routingPoints=O.routingPoints,I.removeAll(j=>j instanceof P.SRoutingHandleImpl),I.routerKind=O.router.kind,O.routingHandles.forEach(j=>I.add(j)),O.source&&(I.sourceId=O.source.id),O.target&&(I.targetId=O.target.id),I.root.index.remove(I),I.root.index.add(I)}calculateDefaultCorners(I,O,j,k){const x=this.getSelfEdgeIndex(I);if(x>=0){const R=k.standardDistance,H=k.selfEdgeOffset*Math.min(O.bounds.width,O.bounds.height);switch(x%4){case 0:return[{x:O.get(C.RIGHT).x+R,y:O.get(C.RIGHT).y+H},{x:O.get(C.RIGHT).x+R,y:O.get(C.BOTTOM).y+R},{x:O.get(C.BOTTOM).x+H,y:O.get(C.BOTTOM).y+R}];case 1:return[{x:O.get(C.BOTTOM).x-H,y:O.get(C.BOTTOM).y+R},{x:O.get(C.LEFT).x-R,y:O.get(C.BOTTOM).y+R},{x:O.get(C.LEFT).x-R,y:O.get(C.LEFT).y+H}];case 2:return[{x:O.get(C.LEFT).x-R,y:O.get(C.LEFT).y-H},{x:O.get(C.LEFT).x-R,y:O.get(C.TOP).y-R},{x:O.get(C.TOP).x-H,y:O.get(C.TOP).y-R}];case 3:return[{x:O.get(C.TOP).x+H,y:O.get(C.TOP).y-R},{x:O.get(C.RIGHT).x+R,y:O.get(C.TOP).y-R},{x:O.get(C.RIGHT).x+R,y:O.get(C.RIGHT).y-H}]}}return[]}getSelfEdgeIndex(I){return!I.source||I.source!==I.target?-1:I.source.outgoingEdges.filter(O=>O.target===I.source).indexOf(I)}commitRoute(I,O){const j=[];for(let k=1;k=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=hy&&hy.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b;Object.defineProperty(hy,"__esModule",{value:!0}),hy.PolylineEdgeRouter=void 0;const w=Zt(),m=Ac(),P=Ma(),g=MS(),E=pJ();let C=b=class extends E.AbstractEdgeRouter{get kind(){return b.KIND}getOptions(M){return{minimalPointDistance:2,removeAngleThreshold:.1,standardDistance:20,selfEdgeOffset:.25}}route(M){const _=M.source,I=M.target;if(_===void 0||I===void 0)return[];let O,j;const k=this.getOptions(M),x=M.routingPoints.length>0?M.routingPoints:[];this.cleanupRoutingPoints(M,x,!1,!1);const R=x!==void 0?x.length:0;if(R===0){const F=m.Bounds.center(I.bounds);O=this.getTranslatedAnchor(_,F,I.parent,M,M.sourceAnchorCorrection);const $=m.Bounds.center(_.bounds);j=this.getTranslatedAnchor(I,$,_.parent,M,M.targetAnchorCorrection)}else{const F=x[0];O=this.getTranslatedAnchor(_,F,M.parent,M,M.sourceAnchorCorrection);const $=x[R-1];j=this.getTranslatedAnchor(I,$,M.parent,M,M.targetAnchorCorrection)}const H=[];H.push({kind:"source",x:O.x,y:O.y});for(let F=0;F0&&F=k.minimalPointDistance+(M.sourceAnchorCorrection||0)||F===R-1&&m.Point.maxDistance($,j)>=k.minimalPointDistance+(M.targetAnchorCorrection||0))&&H.push({kind:"linear",x:$.x,y:$.y,pointIndex:F})}return H.push({kind:"target",x:j.x,y:j.y}),this.filterEditModeHandles(H,M,k)}filterEditModeHandles(M,_,I){if(_.children.length===0)return M;let O=0;for(;Ox instanceof P.SRoutingHandleImpl&&x.kind==="junction"&&x.pointIndex===j.pointIndex);if(k!==void 0&&k.editMode&&O>0&&O{const O=I.handle,j=M.routingPoints;let k=O.pointIndex;O.kind==="line"&&(O.kind="junction",O.type="routing-point",j.splice(k+1,0,I.fromPosition||j[Math.max(k,0)]),M.children.forEach(x=>{x instanceof P.SRoutingHandleImpl&&(x===O||x.pointIndex>k)&&x.pointIndex++}),this.addHandle(M,"line","volatile-routing-point",k),k++,this.addHandle(M,"line","volatile-routing-point",k)),k>=0&&k=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=ug&&ug.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)},b=ug&&ug.__param||function(O,j){return function(k,x){j(k,x,O)}};Object.defineProperty(ug,"__esModule",{value:!0}),ug.EdgeRouting=ug.EdgeRouterRegistry=void 0;const w=Zt(),m=Oc(),P=Qn(),g=iN(),E=q3(),C=Ma(),T=wJ();function M(O){return O.routeAll!==void 0}let _=class extends E.InstanceRegistry{constructor(j){super(),j.forEach(k=>this.register(k.kind,k))}get defaultKind(){return T.PolylineEdgeRouter.KIND}get(j){return super.get(j||this.defaultKind)}routeAllChildren(j){const k=this.doRouteAllChildren(j);for(const x of this.postProcessors)x.apply(k,j);return k}doRouteAllChildren(j){const k=new I,x=new Map,R=[j];for(;R.length>0;){const H=R.shift();for(const F of H.children){if(F instanceof C.SRoutableElementImpl){const $=F.routerKind||this.defaultKind;x.has($)?x.get($).push(F):x.set($,[F])}F instanceof m.SParentElementImpl&&R.push(F)}}return x.forEach((H,F)=>{const $=this.get(F);if(M($))k.setAll($.routeAll(H,j));else for(const W of H)k.set(W.id,this.route(W))}),k}route(j,k){const x=(0,g.findArgValue)(k,"edgeRouting");if(x){const H=x.get(j.id);if(H)return H}return this.get(j.routerKind).route(j)}};ug.EdgeRouterRegistry=_,f([(0,w.multiInject)(P.TYPES.IEdgeRoutePostprocessor),(0,w.optional)(),h("design:type",Array)],_.prototype,"postProcessors",void 0),ug.EdgeRouterRegistry=_=f([(0,w.injectable)(),b(0,(0,w.multiInject)(P.TYPES.IEdgeRouter)),h("design:paramtypes",[Array])],_);class I{constructor(){this.routesMap=new Map}set(j,k){this.routesMap.set(j,k)}setAll(j){j.routes.forEach((k,x)=>this.set(x,k))}get(j){return this.routesMap.get(j)}get routes(){return this.routesMap}}return ug.EdgeRouting=I,ug}var Ygt;function hwt(){if(Ygt)return fy;Ygt=1;var f=fy&&fy.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=fy&&fy.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(fy,"__esModule",{value:!0}),fy.EdgeLayoutPostprocessor=void 0;const b=Zt(),w=Ac(),m=Oc(),P=mh(),g=MA(),E=Xs(),C=cN(),T=Iy(),M=Qn(),_=SS();let I=class{decorate(j,k){var x,R,H,F;if((0,C.isEdgeLayoutable)(k)&&k.parent instanceof g.SEdgeImpl&&k.bounds!==w.Bounds.EMPTY){const $=k.bounds,W=(0,C.checkEdgePlacement)(k),re=this.getEdgePlacement(k),ae=k.parent,ce=Math.min(1,Math.max(0,re.position)),J=this.edgeRouterRegistry.get(ae.routerKind),te=J.pointAt(ae,ce);let fe="",ve=J.derivativeAt(ae,ce);if(te)if(W){switch(re.moveMode){case"edge":const me=J.findOrthogonalIntersection(ae,w.Point.add(te,$));me&&(ve=me.derivative,fe+=`translate(${me.point.x}, ${me.point.y})`);break;case"free":fe+=`translate(${((x=te?.x)!==null&&x!==void 0?x:0)+$.x}, ${((R=te?.y)!==null&&R!==void 0?R:0)+$.y})`;break;case"none":fe+=`translate(${te.x}, ${te.y})`;break;default:this.logger.error({},"No moveMode set for edge label. Skipping edge placement.");break}if(ve){const me=(0,w.toDegrees)(Math.atan2(ve.y,ve.x));if(re.rotate){let ke=me;Math.abs(me)>90&&(me<0?ke+=180:me>0&&(ke-=180)),fe+=` rotate(${ke})`;const tt=this.getRotatedAlignment(k,re,ke!==me);fe+=` translate(${tt.x}, ${tt.y})`}else{const ke=this.getAlignment(k,re,me);fe+=` translate(${ke.x}, ${ke.y})`}}}else(0,_.isMoveable)(k)?fe+=`translate(${((H=te?.x)!==null&&H!==void 0?H:0)+$.x}, ${((F=te?.y)!==null&&F!==void 0?F:0)+$.y})`:fe+=`translate(${te.x}, ${te.y})`;(0,P.setAttr)(j,"transform",fe)}return j}getRotatedAlignment(j,k,x){let R=(0,E.isAlignable)(j)?j.alignment.x:0,H=(0,E.isAlignable)(j)?j.alignment.y:0;const F=j.bounds;if(k.side==="on")return{x:R-.5*F.height,y:H-.5*F.height};if(x)switch(k.position<.3333333?R-=F.width+k.offset:k.position<.6666666?R-=.5*F.width:R+=k.offset,k.side){case"left":case"bottom":H-=k.offset+F.height;break;case"right":case"top":H+=k.offset}else switch(k.position<.3333333?R+=k.offset:k.position<.6666666?R-=.5*F.width:R-=F.width+k.offset,k.side){case"right":case"bottom":H+=-k.offset-F.height;break;case"left":case"top":H+=k.offset}return{x:R,y:H}}getEdgePlacement(j){let k=j;const x=[];for(;k!==void 0;){const H=k.edgePlacement;if(H!==void 0&&x.push(H),k instanceof m.SChildElementImpl)k=k.parent;else break}const R=x.reverse().reduce((H,F)=>Object.assign(Object.assign({},H),F),C.DEFAULT_EDGE_PLACEMENT);return R.moveMode||(R.moveMode=(0,_.isMoveable)(j)?"edge":"none"),R}getAlignment(j,k,x){const R=j.bounds,H=(0,E.isAlignable)(j)?j.alignment.x-R.width:0,F=(0,E.isAlignable)(j)?j.alignment.y-R.height:0;if(k.side==="on")return{x:H+.5*R.width,y:F+.5*R.height};const $=this.getQuadrant(x),W={x:k.offset,y:F+.5*R.height},re={x:k.offset,y:F+R.height+k.offset},ae={x:-R.width-k.offset,y:F+R.height+k.offset},ce={x:-R.width-k.offset,y:F+.5*R.height},J={x:-R.width-k.offset,y:F-k.offset},te={x:k.offset,y:F-k.offset};switch(k.side){case"left":switch($.orientation){case"west":return w.Point.linear(re,ae,$.position);case"north":return w.Point.linear(ae,J,$.position);case"east":return w.Point.linear(J,te,$.position);case"south":return w.Point.linear(te,re,$.position)}break;case"right":switch($.orientation){case"west":return w.Point.linear(J,te,$.position);case"north":return w.Point.linear(te,re,$.position);case"east":return w.Point.linear(re,ae,$.position);case"south":return w.Point.linear(ae,J,$.position)}break;case"top":switch($.orientation){case"west":return w.Point.linear(J,te,$.position);case"north":return this.linearFlip(te,W,ce,J,$.position);case"east":return w.Point.linear(J,te,$.position);case"south":return this.linearFlip(te,W,ce,J,$.position)}break;case"bottom":switch($.orientation){case"west":return w.Point.linear(re,ae,$.position);case"north":return this.linearFlip(ae,ce,W,re,$.position);case"east":return w.Point.linear(re,ae,$.position);case"south":return this.linearFlip(ae,ce,W,re,$.position)}break}return{x:0,y:0}}getQuadrant(j){return Math.abs(j)>135?{orientation:"west",position:(j>0?j-135:j+225)/90}:j<-45?{orientation:"north",position:(j+135)/90}:j<45?{orientation:"east",position:(j+45)/90}:{orientation:"south",position:(j-45)/90}}linearFlip(j,k,x,R,H){return H<.5?w.Point.linear(j,k,2*H):w.Point.linear(x,R,2*H-1)}postUpdate(){}};return fy.EdgeLayoutPostprocessor=I,f([(0,b.inject)(T.EdgeRouterRegistry),h("design:type",T.EdgeRouterRegistry)],I.prototype,"edgeRouterRegistry",void 0),f([(0,b.inject)(M.TYPES.ILogger),h("design:type",Object)],I.prototype,"logger",void 0),fy.EdgeLayoutPostprocessor=I=f([(0,b.injectable)()],I),fy}var Xgt;function Rve(){if(Xgt)return tX;Xgt=1,Object.defineProperty(tX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=hwt(),w=new f.ContainerModule(m=>{m(b.EdgeLayoutPostprocessor).toSelf().inSingletonScope(),m(h.TYPES.IVNodePostprocessor).toService(b.EdgeLayoutPostprocessor),m(h.TYPES.HiddenVNodePostprocessor).toService(b.EdgeLayoutPostprocessor)});return tX.default=w,tX}var wp={},Jgt;function bUt(){if(Jgt)return wp;Jgt=1;var f=wp&&wp.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=wp&&wp.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=wp&&wp.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(wp,"__esModule",{value:!0}),wp.CreateElementCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Oc(),E=Qn();let C=class extends P.Command{constructor(M){super(),this.action=M}execute(M){const _=M.root.index.getById(this.action.containerId);return _ instanceof g.SParentElementImpl&&(this.container=_,this.newElement=M.modelFactory.createElement(this.action.elementSchema),this.container.add(this.newElement)),M.root}undo(M){return this.container.remove(this.newElement),M.root}redo(M){return this.container.add(this.newElement),M.root}};return wp.CreateElementCommand=C,C.KIND=m.CreateElementAction.KIND,wp.CreateElementCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(E.TYPES.Action)),h("design:paramtypes",[Object])],C),wp}var pve={},Qgt;function dwt(){return Qgt||(Qgt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isCreatingOnDrag=f.creatingOnDragFeature=void 0,f.creatingOnDragFeature=Symbol("creatingOnDragFeature");function h(b){return b.hasFeature(f.creatingOnDragFeature)&&b.createAction!==void 0}f.isCreatingOnDrag=h})(pve)),pve}var _3={},yl={},Zgt;function gwt(){if(Zgt)return yl;Zgt=1;var f=yl&&yl.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R};Object.defineProperty(yl,"__esModule",{value:!0}),yl.EmptyGroupView=yl.DiamondNodeView=yl.RectangularNodeView=yl.CircularNodeView=yl.SvgViewportView=void 0;const h=Cy(),b=MA(),w=gJ(),m=PS(),P=Zt();let g=class{render(O,j,k){const x=`scale(${O.zoom}) translate(${-O.scroll.x},${-O.scroll.y})`;return(0,h.svg)("svg",null,(0,h.svg)("g",{transform:x},j.renderChildren(O)))}};yl.SvgViewportView=g,yl.SvgViewportView=g=f([(0,P.injectable)()],g);let E=class extends w.ShapeView{render(O,j,k){if(!this.isVisible(O,j))return;const x=this.getRadius(O);return(0,h.svg)("g",null,(0,h.svg)("circle",{"class-sprotty-node":O instanceof b.SNodeImpl,"class-sprotty-port":O instanceof b.SPortImpl,"class-mouseover":O.hoverFeedback,"class-selected":O.selected,r:x,cx:x,cy:x}),j.renderChildren(O))}getRadius(O){const j=Math.min(O.size.width,O.size.height);return j>0?j/2:0}};yl.CircularNodeView=E,yl.CircularNodeView=E=f([(0,P.injectable)()],E);let C=class extends w.ShapeView{render(O,j,k){if(this.isVisible(O,j))return(0,h.svg)("g",null,(0,h.svg)("rect",{"class-sprotty-node":O instanceof b.SNodeImpl,"class-sprotty-port":O instanceof b.SPortImpl,"class-mouseover":O.hoverFeedback,"class-selected":O.selected,x:"0",y:"0",width:Math.max(O.size.width,0),height:Math.max(O.size.height,0)}),j.renderChildren(O))}};yl.RectangularNodeView=C,yl.RectangularNodeView=C=f([(0,P.injectable)()],C);let T=class extends w.ShapeView{render(O,j,k){if(!this.isVisible(O,j))return;const x=new m.Diamond({height:Math.max(O.size.height,0),width:Math.max(O.size.width,0),x:0,y:0}),R=`${M(x.topPoint)} ${M(x.rightPoint)} ${M(x.bottomPoint)} ${M(x.leftPoint)}`;return(0,h.svg)("g",null,(0,h.svg)("polygon",{"class-sprotty-node":O instanceof b.SNodeImpl,"class-sprotty-port":O instanceof b.SPortImpl,"class-mouseover":O.hoverFeedback,"class-selected":O.selected,points:R}),j.renderChildren(O))}};yl.DiamondNodeView=T,yl.DiamondNodeView=T=f([(0,P.injectable)()],T);function M(I){return`${I.x},${I.y}`}let _=class{render(O,j){return(0,h.svg)("g",null)}};return yl.EmptyGroupView=_,yl.EmptyGroupView=_=f([(0,P.injectable)()],_),yl}var Ws={},ebt;function Uye(){if(ebt)return Ws;ebt=1;var f=Ws&&Ws.__decorate||function(W,re,ae,ce){var J=arguments.length,te=J<3?re:ce===null?ce=Object.getOwnPropertyDescriptor(re,ae):ce,fe;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")te=Reflect.decorate(W,re,ae,ce);else for(var ve=W.length-1;ve>=0;ve--)(fe=W[ve])&&(te=(J<3?fe(te):J>3?fe(re,ae,te):fe(re,ae))||te);return J>3&&te&&Object.defineProperty(re,ae,te),te},h=Ws&&Ws.__metadata||function(W,re){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(W,re)},b=Ws&&Ws.__param||function(W,re){return function(ae,ce){re(ae,ce,W)}};Object.defineProperty(Ws,"__esModule",{value:!0}),Ws.getEditableLabel=Ws.EditLabelKeyListener=Ws.EditLabelMouseListener=Ws.ApplyLabelEditCommand=Ws.ResolvedLabelEdit=Ws.isApplyLabelEditAction=Ws.isEditLabelAction=Ws.EditLabelAction=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=Pp(),C=H3(),T=z3(),M=Rb(),_=_A(),I=sN();var O;(function(W){W.KIND="EditLabel";function re(ae){return{kind:W.KIND,labelId:ae}}W.create=re})(O||(Ws.EditLabelAction=O={}));function j(W){return(0,m.isAction)(W)&&W.kind===O.KIND&&"labelId"in W}Ws.isEditLabelAction=j;function k(W){return(0,m.isAction)(W)&&W.kind===m.ApplyLabelEditAction.KIND&&"labelId"in W&&"text"in W}Ws.isApplyLabelEditAction=k;class x{}Ws.ResolvedLabelEdit=x;let R=class extends P.Command{constructor(re){super(),this.action=re}execute(re){const ce=re.root.index.getById(this.action.labelId);return ce&&(0,I.isEditableLabel)(ce)&&(this.resolvedLabelEdit={label:ce,oldLabel:ce.text,newLabel:this.action.text},ce.text=this.action.text),re.root}undo(re){return this.resolvedLabelEdit&&(this.resolvedLabelEdit.label.text=this.resolvedLabelEdit.oldLabel),re.root}redo(re){return this.resolvedLabelEdit&&(this.resolvedLabelEdit.label.text=this.resolvedLabelEdit.newLabel),re.root}};Ws.ApplyLabelEditCommand=R,R.KIND=m.ApplyLabelEditAction.KIND,Ws.ApplyLabelEditCommand=R=f([b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],R);class H extends E.MouseListener{doubleClick(re,ae){const ce=$(re);return ce?[O.create(ce.id)]:[]}}Ws.EditLabelMouseListener=H;class F extends C.KeyListener{keyDown(re,ae){if((0,T.matchesKeystroke)(ae,"F2")){const ce=(0,_.toArray)(re.index.all().filter(J=>(0,M.isSelectable)(J)&&J.selected)).map($).filter(J=>J!==void 0);if(ce.length===1)return[O.create(ce[0].id)]}return[]}}Ws.EditLabelKeyListener=F;function $(W){if((0,I.isEditableLabel)(W))return W;if((0,I.isWithEditableLabel)(W)&&W.editableLabel)return W.editableLabel}return Ws.getEditableLabel=$,Ws}var jb={},lg={},Ab={},tbt;function CA(){if(tbt)return Ab;tbt=1;var f=Ab&&Ab.__decorate||function(C,T,M,_){var I=arguments.length,O=I<3?T:_===null?_=Object.getOwnPropertyDescriptor(T,M):_,j;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")O=Reflect.decorate(C,T,M,_);else for(var k=C.length-1;k>=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O},h=Ab&&Ab.__metadata||function(C,T){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(C,T)};Object.defineProperty(Ab,"__esModule",{value:!0}),Ab.ComputedBoundsApplicator=Ab.ModelSource=void 0;const b=Zt(),w=jc(),m=LM(),P=Qn();let g=class{initialize(T){T.register(w.RequestModelAction.KIND,this),T.register(w.ExportSvgAction.KIND,this)}};Ab.ModelSource=g,f([(0,b.inject)(P.TYPES.IActionDispatcher),h("design:type",Object)],g.prototype,"actionDispatcher",void 0),f([(0,b.inject)(P.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"viewerOptions",void 0),Ab.ModelSource=g=f([(0,b.injectable)()],g);let E=class{apply(T,M){const _=new m.SModelIndex;_.add(T);for(const I of M.bounds){const O=_.getById(I.elementId);O!==void 0&&this.applyBounds(O,I.newPosition,I.newSize)}if(M.alignments!==void 0)for(const I of M.alignments){const O=_.getById(I.elementId);O!==void 0&&this.applyAlignment(O,I.newAlignment)}return _}applyAlignment(T,M){const _=T;_.alignment={x:M.x,y:M.y}}applyBounds(T,M,_){const I=T;M&&(I.position=Object.assign({},M)),I.size=Object.assign({},_)}};return Ab.ComputedBoundsApplicator=E,Ab.ComputedBoundsApplicator=E=f([(0,b.injectable)()],E),Ab}var nbt;function mJ(){if(nbt)return lg;nbt=1;var f=lg&&lg.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=lg&&lg.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)},b=lg&&lg.__param||function(T,M){return function(_,I){M(_,I,T)}};Object.defineProperty(lg,"__esModule",{value:!0}),lg.CommitModelCommand=lg.CommitModelAction=void 0;const w=Zt(),m=Ca(),P=Qn(),g=CA();var E;(function(T){T.KIND="commitModel";function M(){return{kind:T.KIND}}T.create=M})(E||(lg.CommitModelAction=E={}));let C=class extends m.SystemCommand{constructor(M){super(),this.action=M}execute(M){return this.newModel=M.modelFactory.createSchema(M.root),this.doCommit(this.newModel,M.root,!0)}doCommit(M,_,I){const O=this.modelSource.commitModel(M);return O instanceof Promise?O.then(j=>(I&&(this.originalModel=j),_)):(I&&(this.originalModel=O),_)}undo(M){return this.doCommit(this.originalModel,M.root,!1)}redo(M){return this.doCommit(this.newModel,M.root,!1)}};return lg.CommitModelCommand=C,C.KIND=E.KIND,f([(0,w.inject)(P.TYPES.ModelSource),h("design:type",g.ModelSource)],C.prototype,"modelSource",void 0),lg.CommitModelCommand=C=f([(0,w.injectable)(),b(0,(0,w.inject)(P.TYPES.Action)),h("design:paramtypes",[Object])],C),lg}var gm={},ibt;function Wye(){if(ibt)return gm;ibt=1;var f=gm&&gm.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=gm&&gm.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(gm,"__esModule",{value:!0}),gm.ZoomMouseListener=gm.getZoom=void 0;const b=Zt(),w=jc(),m=Ac(),P=Qh(),g=Qn(),E=Pp(),C=My(),T=V3(),M=PS();function _(O){let j=1;const k=(0,P.findParentByFeature)(O,T.isViewport);return k&&(j=k.zoom),j}gm.getZoom=_;class I extends E.MouseListener{wheel(j,k){const x=(0,P.findParentByFeature)(j,T.isViewport);if(!x)return[];const R=this.isScrollMode(k)?this.processScroll(x,k):this.processZoom(x,j,k);return R?[w.SetViewportAction.create(x.id,R,{animate:!1})]:[]}isScrollMode(j){return j.altKey}processScroll(j,k){return{scroll:{x:j.scroll.x+k.deltaX,y:j.scroll.y+k.deltaY},zoom:j.zoom}}processZoom(j,k,x){const R=this.getZoomFactor(x);if(R>1&&(0,m.almostEquals)(j.zoom,this.viewerOptions.zoomLimits.max)||R<1&&(0,m.almostEquals)(j.zoom,this.viewerOptions.zoomLimits.min))return;const H=(0,M.limit)(j.zoom*R,this.viewerOptions.zoomLimits),F=this.getViewportOffset(k.root,x),$=1/H-1/j.zoom;return{scroll:{x:j.scroll.x-$*F.x,y:j.scroll.y-$*F.y},zoom:H}}getViewportOffset(j,k){const x=j.canvasBounds,R=(0,C.getWindowScroll)();return{x:k.clientX+R.x-x.x,y:k.clientY+R.y-x.y}}getZoomFactor(j){return j.deltaMode===j.DOM_DELTA_PAGE?Math.exp(-j.deltaY*.5):j.deltaMode===j.DOM_DELTA_LINE?Math.exp(-j.deltaY*.05):Math.exp(-j.deltaY*.005)}}return gm.ZoomMouseListener=I,f([(0,b.inject)(g.TYPES.ViewerOptions),h("design:type",Object)],I.prototype,"viewerOptions",void 0),gm}var rbt;function bwt(){if(rbt)return jb;rbt=1;var f=jb&&jb.__decorate||function($,W,re,ae){var ce=arguments.length,J=ce<3?W:ae===null?ae=Object.getOwnPropertyDescriptor(W,re):ae,te;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")J=Reflect.decorate($,W,re,ae);else for(var fe=$.length-1;fe>=0;fe--)(te=$[fe])&&(J=(ce<3?te(J):ce>3?te(W,re,J):te(W,re))||J);return ce>3&&J&&Object.defineProperty(W,re,J),J},h=jb&&jb.__metadata||function($,W){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata($,W)},b;Object.defineProperty(jb,"__esModule",{value:!0}),jb.EditLabelUI=jb.EditLabelActionHandler=void 0;const w=Zt(),m=jc(),P=Qn(),g=Lye(),E=hJ(),C=tN(),T=mJ(),M=z3(),_=Xs(),I=Wye(),O=Uye(),j=sN();let k=class{handle(W){if((0,O.isEditLabelAction)(W))return E.SetUIExtensionVisibilityAction.create({extensionId:x.ID,visible:!0,contextElementsId:[W.labelId]})}};jb.EditLabelActionHandler=k,jb.EditLabelActionHandler=k=f([(0,w.injectable)()],k);let x=b=class extends g.AbstractUIExtension{constructor(){super(...arguments),this.validationTimeout=void 0,this.isActive=!1,this.blockApplyEditOnInvalidInput=!0,this.isCurrentLabelValid=!0}id(){return b.ID}containerClass(){return"label-edit"}get labelId(){return this.label?this.label.id:"unknown"}initializeContents(W){W.style.position="absolute",this.inputElement=document.createElement("input"),this.textAreaElement=document.createElement("textarea"),[this.inputElement,this.textAreaElement].forEach(re=>{re.onkeydown=ae=>this.applyLabelEditOnEvent(ae,"Enter"),this.configureAndAdd(re,W)})}configureAndAdd(W,re){W.style.visibility="hidden",W.style.position="absolute",W.style.top="0px",W.style.left="0px",W.addEventListener("keydown",ae=>this.hideIfEscapeEvent(ae)),W.addEventListener("keyup",ae=>this.validateLabelIfContentChange(ae,W.value)),W.addEventListener("blur",()=>window.setTimeout(()=>this.applyLabelEdit(),200)),re.appendChild(W)}get editControl(){return this.label&&this.label.isMultiLine?this.textAreaElement:this.inputElement}hideIfEscapeEvent(W){(0,M.matchesKeystroke)(W,"Escape")&&this.hide()}applyLabelEditOnEvent(W,re,...ae){(0,M.matchesKeystroke)(W,re||"Enter",...ae)&&(W.preventDefault(),this.applyLabelEdit())}validateLabelIfContentChange(W,re){(this.previousLabelContent===void 0||this.previousLabelContent!==re)&&(this.previousLabelContent=re,this.performLabelValidation(W,this.editControl.value))}async applyLabelEdit(){var W;if(this.isActive){if(((W=this.label)===null||W===void 0?void 0:W.text)===this.editControl.value){this.hide();return}if(this.blockApplyEditOnInvalidInput&&(await this.validateLabel(this.editControl.value)).severity==="error"){this.editControl.focus();return}this.actionDispatcherProvider().then(re=>re.dispatchAll([m.ApplyLabelEditAction.create(this.labelId,this.editControl.value),T.CommitModelAction.create()])).catch(re=>this.logger.error(this,"No action dispatcher available to execute apply label edit action",re)),this.hide()}}performLabelValidation(W,re){this.validationTimeout&&window.clearTimeout(this.validationTimeout),this.validationTimeout=window.setTimeout(()=>this.validateLabel(re),200)}async validateLabel(W){if(this.labelValidator&&this.label)try{const re=await this.labelValidator.validate(W,this.label);return this.isCurrentLabelValid=re.severity!=="error",this.showValidationResult(re),re}catch(re){this.logger.error(this,"Error validating edited label",re)}return this.isCurrentLabelValid=!0,{severity:"ok",message:void 0}}showValidationResult(W){this.clearValidationResult(),this.validationDecorator&&this.validationDecorator.decorate(this.editControl,W)}clearValidationResult(){this.validationDecorator&&this.validationDecorator.dispose(this.editControl)}show(W,...re){!R(re,W)||this.isActive||(super.show(W,...re),this.isActive=!0)}hide(){this.editControl.style.visibility="hidden",super.hide(),this.clearValidationResult(),this.isActive=!1,this.isCurrentLabelValid=!0,this.previousLabelContent=void 0,this.labelElement&&(this.labelElement.style.visibility="visible")}onBeforeShow(W,re,...ae){this.label=H(ae,re)[0],this.previousLabelContent=this.label.text,this.setPosition(W),this.applyTextContents(),this.applyFontStyling(),this.editControl.style.visibility="visible",this.editControl.focus()}setPosition(W){let re=0,ae=0,ce=100,J=20;if(this.label){const te=(0,I.getZoom)(this.label),fe=(0,_.getAbsoluteClientBounds)(this.label,this.domHelper,this.viewerOptions);re=fe.x+(this.label.editControlPositionCorrection?this.label.editControlPositionCorrection.x:0)*te,ae=fe.y+(this.label.editControlPositionCorrection?this.label.editControlPositionCorrection.y:0)*te,J=(this.label.editControlDimension?this.label.editControlDimension.height:J)*te,ce=(this.label.editControlDimension?this.label.editControlDimension.width:ce)*te}W.style.left=`${re}px`,W.style.top=`${ae}px`,W.style.width=`${ce}px`,this.editControl.style.width=`${ce}px`,W.style.height=`${J}px`,this.editControl.style.height=`${J}px`}applyTextContents(){this.label&&(this.editControl.value=this.label.text,this.editControl instanceof HTMLTextAreaElement?(this.editControl.selectionStart=0,this.editControl.selectionEnd=0,this.editControl.scrollTop=0,this.editControl.scrollLeft=0):this.editControl.setSelectionRange(0,this.editControl.value.length))}applyFontStyling(){if(this.label&&(this.labelElement=document.getElementById(this.domHelper.createUniqueDOMElementId(this.label)),this.labelElement)){this.labelElement.style.visibility="hidden";const W=window.getComputedStyle(this.labelElement);this.editControl.style.font=W.font,this.editControl.style.fontStyle=W.fontStyle,this.editControl.style.fontFamily=W.fontFamily,this.editControl.style.fontSize=F(W.fontSize,(0,I.getZoom)(this.label)),this.editControl.style.fontWeight=W.fontWeight,this.editControl.style.lineHeight=W.lineHeight}}};jb.EditLabelUI=x,x.ID="editLabelUi",f([(0,w.inject)(P.TYPES.IActionDispatcherProvider),h("design:type",Function)],x.prototype,"actionDispatcherProvider",void 0),f([(0,w.inject)(P.TYPES.ViewerOptions),h("design:type",Object)],x.prototype,"viewerOptions",void 0),f([(0,w.inject)(P.TYPES.DOMHelper),h("design:type",C.DOMHelper)],x.prototype,"domHelper",void 0),f([(0,w.inject)(P.TYPES.IEditLabelValidator),(0,w.optional)(),h("design:type",Object)],x.prototype,"labelValidator",void 0),f([(0,w.inject)(P.TYPES.IEditLabelValidationDecorator),(0,w.optional)(),h("design:type",Object)],x.prototype,"validationDecorator",void 0),jb.EditLabelUI=x=b=f([(0,w.injectable)()],x);function R($,W){return H($,W).length===1}function H($,W){return $.map(re=>W.index.getById(re)).filter(j.isEditableLabel)}function F($,W){return $.replace(/\d+(\.\d+)?/,re=>String(Number.parseInt(re,10)*W))}return jb}var fg={},obt;function vJ(){if(obt)return fg;obt=1;var f=fg&&fg.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h=fg&&fg.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)},b=fg&&fg.__param||function(I,O){return function(j,k){O(j,k,I)}};Object.defineProperty(fg,"__esModule",{value:!0}),fg.SwitchEditModeCommand=fg.SwitchEditModeAction=void 0;const w=Zt(),m=Ca(),P=Oc(),g=Qn(),E=Ma(),C=Iy(),T=sN();var M;(function(I){I.KIND="switchEditMode";function O(j){var k,x;return{kind:I.KIND,elementsToActivate:(k=j.elementsToActivate)!==null&&k!==void 0?k:[],elementsToDeactivate:(x=j.elementsToDeactivate)!==null&&x!==void 0?x:[]}}I.create=O})(M||(fg.SwitchEditModeAction=M={}));let _=class extends m.Command{constructor(O){super(),this.action=O,this.elementsToActivate=[],this.elementsToDeactivate=[],this.handlesToRemove=[]}execute(O){const j=O.root.index;return this.action.elementsToActivate.forEach(k=>{const x=j.getById(k);x!==void 0&&this.elementsToActivate.push(x)}),this.action.elementsToDeactivate.forEach(k=>{const x=j.getById(k);if(x!==void 0&&this.elementsToDeactivate.push(x),x instanceof E.SRoutingHandleImpl&&x.parent instanceof E.SRoutableElementImpl){const R=x.parent;this.shouldRemoveHandle(x,R)&&(this.handlesToRemove.push({handle:x,parent:R}),this.elementsToDeactivate.push(R),this.elementsToActivate.push(R))}}),this.doExecute(O)}doExecute(O){return this.handlesToRemove.forEach(j=>{j.point=j.parent.routingPoints.splice(j.handle.pointIndex,1)[0]}),this.elementsToDeactivate.forEach(j=>{j instanceof E.SRoutableElementImpl?j.removeAll(k=>k instanceof E.SRoutingHandleImpl):j instanceof E.SRoutingHandleImpl&&(j.editMode=!1,j.danglingAnchor&&j.parent instanceof E.SRoutableElementImpl&&j.danglingAnchor.original&&(j.parent.source===j.danglingAnchor?j.parent.sourceId=j.danglingAnchor.original.id:j.parent.target===j.danglingAnchor&&(j.parent.targetId=j.danglingAnchor.original.id),j.danglingAnchor.parent.remove(j.danglingAnchor),j.danglingAnchor=void 0))}),this.elementsToActivate.forEach(j=>{(0,T.canEditRouting)(j)&&j instanceof P.SParentElementImpl?this.edgeRouterRegistry.get(j.routerKind).createRoutingHandles(j):j instanceof E.SRoutingHandleImpl&&(j.editMode=!0)}),O.root}shouldRemoveHandle(O,j){return O.kind==="junction"?this.edgeRouterRegistry.route(j).find(x=>x.pointIndex===O.pointIndex)===void 0:!1}undo(O){return this.handlesToRemove.forEach(j=>{j.point!==void 0&&j.parent.routingPoints.splice(j.handle.pointIndex,0,j.point)}),this.elementsToActivate.forEach(j=>{j instanceof E.SRoutableElementImpl?j.removeAll(k=>k instanceof E.SRoutingHandleImpl):j instanceof E.SRoutingHandleImpl&&(j.editMode=!1)}),this.elementsToDeactivate.forEach(j=>{(0,T.canEditRouting)(j)?this.edgeRouterRegistry.get(j.routerKind).createRoutingHandles(j):j instanceof E.SRoutingHandleImpl&&(j.editMode=!0)}),O.root}redo(O){return this.doExecute(O)}};return fg.SwitchEditModeCommand=_,_.KIND=M.KIND,f([(0,w.inject)(C.EdgeRouterRegistry),h("design:type",C.EdgeRouterRegistry)],_.prototype,"edgeRouterRegistry",void 0),fg.SwitchEditModeCommand=_=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],_),fg}var mp={},cbt;function Yye(){if(cbt)return mp;cbt=1;var f=mp&&mp.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=mp&&mp.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=mp&&mp.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(mp,"__esModule",{value:!0}),mp.ReconnectCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Qn(),E=Ma(),C=Iy();let T=class extends P.Command{constructor(_){super(),this.action=_}execute(_){return this.doExecute(_),_.root}doExecute(_){const O=_.root.index.getById(this.action.routableId);if(O instanceof E.SRoutableElementImpl){const j=this.edgeRouterRegistry.get(O.routerKind),k=j.takeSnapshot(O);j.applyReconnect(O,this.action.newSourceId,this.action.newTargetId);const x=j.takeSnapshot(O);this.memento={edge:O,before:k,after:x}}}undo(_){return this.memento&&this.edgeRouterRegistry.get(this.memento.edge.routerKind).applySnapshot(this.memento.edge,this.memento.before),_.root}redo(_){return this.memento&&this.edgeRouterRegistry.get(this.memento.edge.routerKind).applySnapshot(this.memento.edge,this.memento.after),_.root}};return mp.ReconnectCommand=T,T.KIND=m.ReconnectAction.KIND,f([(0,w.inject)(C.EdgeRouterRegistry),h("design:type",C.EdgeRouterRegistry)],T.prototype,"edgeRouterRegistry",void 0),mp.ReconnectCommand=T=f([(0,w.injectable)(),b(0,(0,w.inject)(g.TYPES.Action)),h("design:paramtypes",[Object])],T),mp}var sbt;function pwt(){if(sbt)return _3;sbt=1,Object.defineProperty(_3,"__esModule",{value:!0}),_3.labelEditUiModule=_3.labelEditModule=_3.edgeEditModule=void 0;const f=Zt(),h=Qn(),b=kb(),w=lJ(),m=iN(),P=Ma(),g=gwt(),E=oN(),C=Uye(),T=bwt(),M=vJ(),_=Yye();return _3.edgeEditModule=new f.ContainerModule((I,O,j)=>{const k={bind:I,isBound:j};(0,b.configureCommand)(k,M.SwitchEditModeCommand),(0,b.configureCommand)(k,_.ReconnectCommand),(0,b.configureCommand)(k,E.DeleteElementCommand),(0,m.configureModelElement)(k,"dangling-anchor",P.SDanglingAnchorImpl,g.EmptyGroupView)}),_3.labelEditModule=new f.ContainerModule((I,O,j)=>{I(C.EditLabelMouseListener).toSelf().inSingletonScope(),I(h.TYPES.MouseListener).toService(C.EditLabelMouseListener),I(C.EditLabelKeyListener).toSelf().inSingletonScope(),I(h.TYPES.KeyListener).toService(C.EditLabelKeyListener),(0,b.configureCommand)({bind:I,isBound:j},C.ApplyLabelEditCommand)}),_3.labelEditUiModule=new f.ContainerModule((I,O,j)=>{const k={bind:I,isBound:j};(0,w.configureActionHandler)(k,C.EditLabelAction.KIND,T.EditLabelActionHandler),I(T.EditLabelUI).toSelf().inSingletonScope(),I(h.TYPES.IUIExtension).toService(T.EditLabelUI)}),_3}var X4={},wve={},ubt;function Xye(){return ubt||(ubt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isExpandable=f.expandFeature=void 0,f.expandFeature=Symbol("expandFeature");function h(b){return b.hasFeature(f.expandFeature)&&"expanded"in b}f.isExpandable=h})(wve)),wve}var abt;function wwt(){if(abt)return X4;abt=1;var f=X4&&X4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(X4,"__esModule",{value:!0}),X4.ExpandButtonHandler=void 0;const h=Zt(),b=jc(),w=Qh(),m=Xye();let P=class{buttonPressed(E){const C=(0,w.findParentByFeature)(E,m.isExpandable);return C!==void 0?[b.CollapseExpandAction.create({expandIds:C.expanded?[]:[C.id],collapseIds:C.expanded?[C.id]:[]})]:[]}};return X4.ExpandButtonHandler=P,P.TYPE="button:expand",X4.ExpandButtonHandler=P=f([(0,h.injectable)()],P),X4}var J4={},lbt;function pUt(){if(lbt)return J4;lbt=1;var f=J4&&J4.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_};Object.defineProperty(J4,"__esModule",{value:!0}),J4.ExpandButtonView=void 0;const h=Cy(),b=Xye(),w=Qh(),m=Zt();let P=class{render(E,C){const T=(0,w.findParentByFeature)(E,b.isExpandable),M=T!==void 0&&T.expanded?"M 1,5 L 8,12 L 15,5 Z":"M 1,8 L 8,15 L 8,1 Z";return(0,h.svg)("g",{"class-sprotty-button":"{true}","class-enabled":"{button.enabled}"},(0,h.svg)("rect",{x:0,y:0,width:16,height:16,opacity:0}),(0,h.svg)("path",{d:M}))}};return J4.ExpandButtonView=P,J4.ExpandButtonView=P=f([(0,m.injectable)()],P),J4}var _l={},vp={},fbt;function Jye(){if(fbt)return vp;fbt=1;var f=vp&&vp.__decorate||function(T,M,_,I){var O=arguments.length,j=O<3?M:I===null?I=Object.getOwnPropertyDescriptor(M,_):I,k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(T,M,_,I);else for(var x=T.length-1;x>=0;x--)(k=T[x])&&(j=(O<3?k(j):O>3?k(M,_,j):k(M,_))||j);return O>3&&j&&Object.defineProperty(M,_,j),j},h=vp&&vp.__metadata||function(T,M){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(T,M)};Object.defineProperty(vp,"__esModule",{value:!0}),vp.SvgExporter=vp.ExportSvgAction=void 0;const b=Zt(),w=Ac(),m=Rye(),P=Qn(),g=Xs();var E;(function(T){T.KIND="exportSvg";function M(_,I,O){return{kind:T.KIND,svg:_,responseId:I,options:O}}T.create=M})(E||(vp.ExportSvgAction=E={}));let C=class{constructor(){this.postprocessors=[]}export(M,_){var I;if(typeof document<"u"){const O=document.getElementById(this.options.hiddenDiv);if(O===null){this.log.warn(this,`Element with id ${this.options.hiddenDiv} not found. Nothing to export.`);return}const j=O.querySelector("svg");if(j===null){this.log.warn(this,`No svg element found in ${this.options.hiddenDiv} div. Nothing to export.`);return}const k=this.createSvg(j,M,(I=_?.options)!==null&&I!==void 0?I:{},_);this.actionDispatcher.dispatch(E.create(k,_?_.requestId:"",_?.options))}}createSvg(M,_,I,O){const j=new XMLSerializer,k=j.serializeToString(M),x=document.createElement("iframe");if(document.body.appendChild(x),!x.contentWindow)throw new Error("IFrame has no contentWindow");const R=x.contentWindow.document;R.open(),R.write(k),R.close();const H=R.querySelector("svg");H.removeAttribute("opacity"),I?.skipCopyStyles||this.copyStyles(M,H,["width","height","opacity","inline-size"]),H.setAttribute("version","1.1");const F=this.getBounds(_,R);H.setAttribute("viewBox",`${F.x} ${F.y} ${F.width} ${F.height}`),H.setAttribute("width",`${F.width}`),H.setAttribute("height",`${F.height}`),this.postprocessors.forEach(W=>{W.postUpdate(H,O)});const $=j.serializeToString(H);return document.body.removeChild(x),$}copyStyles(M,_,I){const O=getComputedStyle(M),j=getComputedStyle(_);let k="";for(let x=0;x{(0,g.isBoundsAware)(j)&&O.push(j.bounds)}),O.reduce((j,k)=>w.Bounds.combine(j,k))}};return vp.SvgExporter=C,f([(0,b.inject)(P.TYPES.ViewerOptions),h("design:type",Object)],C.prototype,"options",void 0),f([(0,b.inject)(P.TYPES.IActionDispatcher),h("design:type",m.ActionDispatcher)],C.prototype,"actionDispatcher",void 0),f([(0,b.inject)(P.TYPES.ILogger),h("design:type",Object)],C.prototype,"log",void 0),f([(0,b.multiInject)(P.TYPES.ISvgExportPostprocessor),(0,b.optional)(),h("design:type",Array)],C.prototype,"postprocessors",void 0),vp.SvgExporter=C=f([(0,b.injectable)()],C),vp}var hbt;function mwt(){if(hbt)return _l;hbt=1;var f=_l&&_l.__decorate||function(F,$,W,re){var ae=arguments.length,ce=ae<3?$:re===null?re=Object.getOwnPropertyDescriptor($,W):re,J;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(F,$,W,re);else for(var te=F.length-1;te>=0;te--)(J=F[te])&&(ce=(ae<3?J(ce):ae>3?J($,W,ce):J($,W))||ce);return ae>3&&ce&&Object.defineProperty($,W,ce),ce},h=_l&&_l.__metadata||function(F,$){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(F,$)},b=_l&&_l.__param||function(F,$){return function(W,re){$(W,re,F)}};Object.defineProperty(_l,"__esModule",{value:!0}),_l.ExportSvgPostprocessor=_l.ExportSvgCommand=_l.RequestExportSvgAction=_l.ExportSvgKeyListener=void 0;const w=Zt(),m=jc(),P=Ca(),g=Rb(),E=Oc(),C=H3(),T=z3(),M=Vye(),_=Jye(),I=V3(),O=PA(),j=Qn();let k=class extends C.KeyListener{keyDown($,W){return(0,T.matchesKeystroke)(W,"KeyE","ctrlCmd","shift")?[x.create()]:[]}};_l.ExportSvgKeyListener=k,_l.ExportSvgKeyListener=k=f([(0,w.injectable)()],k);var x;(function(F){F.KIND="requestExportSvg";function $(W={}){return{kind:F.KIND,requestId:(0,m.generateRequestId)(),options:W}}F.create=$})(x||(_l.RequestExportSvgAction=x={}));let R=class extends P.HiddenCommand{constructor($){super(),this.action=$}execute($){if((0,M.isExportable)($.root)){const W=$.modelFactory.createRoot($.root);if((0,M.isExportable)(W))return(0,I.isViewport)(W)&&(W.zoom=1,W.scroll={x:0,y:0}),W.index.all().forEach(re=>{(0,g.isSelectable)(re)&&re.selected&&(re.selected=!1),(0,O.isHoverable)(re)&&re.hoverFeedback&&(re.hoverFeedback=!1)}),{model:W,modelChanged:!0,cause:this.action}}return{model:$.root,modelChanged:!1}}};_l.ExportSvgCommand=R,R.KIND=x.KIND,_l.ExportSvgCommand=R=f([b(0,(0,w.inject)(j.TYPES.Action)),h("design:paramtypes",[Object])],R);let H=class{decorate($,W){return W instanceof E.SModelRootImpl&&(this.root=W),$}postUpdate($){this.root&&$!==void 0&&$.kind===x.KIND&&this.svgExporter.export(this.root,$)}};return _l.ExportSvgPostprocessor=H,f([(0,w.inject)(j.TYPES.SvgExporter),h("design:type",_.SvgExporter)],H.prototype,"svgExporter",void 0),_l.ExportSvgPostprocessor=H=f([(0,w.injectable)()],H),_l}var mve={},dbt;function wUt(){return dbt||(dbt=1,Object.defineProperty(mve,"__esModule",{value:!0})),mve}var dy={},gbt;function Qye(){if(gbt)return dy;gbt=1;var f=dy&&dy.__decorate||function(C,T,M,_){var I=arguments.length,O=I<3?T:_===null?_=Object.getOwnPropertyDescriptor(T,M):_,j;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")O=Reflect.decorate(C,T,M,_);else for(var k=C.length-1;k>=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O};Object.defineProperty(dy,"__esModule",{value:!0}),dy.ElementFader=dy.FadeAnimation=void 0;const h=Zt(),b=SA(),w=Oc(),m=mh(),P=rN();class g extends b.Animation{constructor(T,M,_,I=!1){super(_),this.model=T,this.elementFades=M,this.removeAfterFadeOut=I}tween(T,M){for(const _ of this.elementFades){const I=_.element;_.type==="in"?I.opacity=T:_.type==="out"&&(I.opacity=1-T,T===1&&this.removeAfterFadeOut&&I instanceof w.SChildElementImpl&&I.parent.remove(I))}return this.model}}dy.FadeAnimation=g;let E=class{decorate(T,M){return(0,P.isFadeable)(M)&&M.opacity!==1&&(0,m.setAttr)(T,"opacity",M.opacity),T}postUpdate(){}};return dy.ElementFader=E,dy.ElementFader=E=f([(0,h.injectable)()],E),dy}var Ms={},bbt;function vwt(){if(bbt)return Ms;bbt=1;var f=Ms&&Ms.__decorate||function(ae,ce,J,te){var fe=arguments.length,ve=fe<3?ce:te===null?te=Object.getOwnPropertyDescriptor(ce,J):te,me;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ve=Reflect.decorate(ae,ce,J,te);else for(var ke=ae.length-1;ke>=0;ke--)(me=ae[ke])&&(ve=(fe<3?me(ve):fe>3?me(ce,J,ve):me(ce,J))||ve);return fe>3&&ve&&Object.defineProperty(ce,J,ve),ve},h=Ms&&Ms.__metadata||function(ae,ce){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ae,ce)},b=Ms&&Ms.__param||function(ae,ce){return function(J,te){ce(J,te,ae)}};Object.defineProperty(Ms,"__esModule",{value:!0}),Ms.ClosePopupActionHandler=Ms.HoverKeyListener=Ms.PopupHoverMouseListener=Ms.HoverMouseListener=Ms.AbstractHoverMouseListener=Ms.SetPopupModelCommand=Ms.HoverFeedbackCommand=void 0;const w=Zt(),m=jc(),P=Ac(),g=z3(),E=Qn(),C=Oc(),T=Pp(),M=Ca(),_=ES(),I=H3(),O=Qh(),j=Xs(),k=PA();let x=class extends M.SystemCommand{constructor(ce){super(),this.action=ce}execute(ce){const te=ce.root.index.getById(this.action.mouseoverElement);return te&&(0,k.isHoverable)(te)&&(te.hoverFeedback=this.action.mouseIsOver),this.redo(ce)}undo(ce){return ce.root}redo(ce){return ce.root}};Ms.HoverFeedbackCommand=x,x.KIND=m.HoverFeedbackAction.KIND,Ms.HoverFeedbackCommand=x=f([(0,w.injectable)(),b(0,(0,w.inject)(E.TYPES.Action)),h("design:paramtypes",[Object])],x);let R=class extends M.PopupCommand{constructor(ce){super(),this.action=ce}execute(ce){return this.oldRoot=ce.root,this.newRoot=ce.modelFactory.createRoot(this.action.newRoot),this.newRoot}undo(ce){return this.oldRoot}redo(ce){return this.newRoot}};Ms.SetPopupModelCommand=R,R.KIND=m.SetPopupModelAction.KIND,Ms.SetPopupModelCommand=R=f([(0,w.injectable)(),b(0,(0,w.inject)(E.TYPES.Action)),h("design:paramtypes",[Object])],R);class H extends T.MouseListener{mouseDown(ce,J){return this.mouseIsDown=!0,[]}mouseUp(ce,J){return this.mouseIsDown=!1,[]}stopMouseOutTimer(){this.state.mouseOutTimer!==void 0&&(window.clearTimeout(this.state.mouseOutTimer),this.state.mouseOutTimer=void 0)}startMouseOutTimer(){return this.stopMouseOutTimer(),new Promise(ce=>{this.state.mouseOutTimer=window.setTimeout(()=>{this.state.popupOpen=!1,this.state.previousPopupElement=void 0,ce(m.SetPopupModelAction.create({type:_.EMPTY_ROOT.type,id:_.EMPTY_ROOT.id}))},this.options.popupCloseDelay)})}stopMouseOverTimer(){this.state.mouseOverTimer!==void 0&&(window.clearTimeout(this.state.mouseOverTimer),this.state.mouseOverTimer=void 0)}}Ms.AbstractHoverMouseListener=H,f([(0,w.inject)(E.TYPES.ViewerOptions),h("design:type",Object)],H.prototype,"options",void 0),f([(0,w.inject)(E.TYPES.HoverState),h("design:type",Object)],H.prototype,"state",void 0);let F=class extends H{computePopupBounds(ce,J){let te={x:-5,y:20};const fe=(0,j.getAbsoluteBounds)(ce),ve=ce.root.canvasBounds,me=P.Bounds.translate(fe,ve),ke=me.x+me.width-J.x,tt=me.y+me.height-J.y;tt<=ke&&this.allowSidePosition(ce,"below",tt)?te={x:-5,y:Math.round(tt+5)}:ke<=tt&&this.allowSidePosition(ce,"right",ke)&&(te={x:Math.round(ke+5),y:-5});let De=J.x+te.x;const ct=ve.x+ve.width;De>ct&&(De=ct);let Z=J.y+te.y;const Nt=ve.y+ve.height;return Z>Nt&&(Z=Nt),{x:De,y:Z,width:-1,height:-1}}allowSidePosition(ce,J,te){return!(ce instanceof C.SModelRootImpl)&&te<=150}startMouseOverTimer(ce,J){return this.stopMouseOverTimer(),new Promise(te=>{this.state.mouseOverTimer=window.setTimeout(()=>{const fe=this.computePopupBounds(ce,{x:J.pageX,y:J.pageY});te(m.RequestPopupModelAction.create({elementId:ce.id,bounds:fe})),this.state.popupOpen=!0,this.state.previousPopupElement=ce},this.options.popupOpenDelay)})}mouseOver(ce,J){const te=[];if(!this.mouseIsDown){const fe=(0,O.findParent)(ce,k.hasPopupFeature);this.state.popupOpen&&(fe===void 0||this.state.previousPopupElement!==void 0&&this.state.previousPopupElement.id!==fe.id)?te.push(this.startMouseOutTimer()):(this.stopMouseOverTimer(),this.stopMouseOutTimer()),fe!==void 0&&(this.state.previousPopupElement===void 0||this.state.previousPopupElement.id!==fe.id)&&te.push(this.startMouseOverTimer(fe,J)),this.lastHoverFeedbackElementId&&(te.push(m.HoverFeedbackAction.create({mouseoverElement:this.lastHoverFeedbackElementId,mouseIsOver:!1})),this.lastHoverFeedbackElementId=void 0);const ve=(0,O.findParentByFeature)(ce,k.isHoverable);ve!==void 0&&(te.push(m.HoverFeedbackAction.create({mouseoverElement:ve.id,mouseIsOver:!0})),this.lastHoverFeedbackElementId=ve.id)}return te}mouseOut(ce,J){const te=[];if(!this.mouseIsDown){const fe=this.getElementFromEventPosition(J);if(!this.isSprottyPopup(fe)){if(this.state.popupOpen){const me=(0,O.findParent)(ce,k.hasPopupFeature);this.state.previousPopupElement!==void 0&&me!==void 0&&this.state.previousPopupElement.id===me.id&&te.push(this.startMouseOutTimer())}this.stopMouseOverTimer();const ve=(0,O.findParentByFeature)(ce,k.isHoverable);ve!==void 0&&(te.push(m.HoverFeedbackAction.create({mouseoverElement:ve.id,mouseIsOver:!1})),this.lastHoverFeedbackElementId&&this.lastHoverFeedbackElementId!==ve.id&&te.push(m.HoverFeedbackAction.create({mouseoverElement:this.lastHoverFeedbackElementId,mouseIsOver:!1})),this.lastHoverFeedbackElementId=void 0)}}return te}getElementFromEventPosition(ce){return document.elementFromPoint(ce.x,ce.y)}isSprottyPopup(ce){return ce?ce.id===this.options.popupDiv||!!ce.parentElement&&this.isSprottyPopup(ce.parentElement):!1}mouseMove(ce,J){const te=[];if(!this.mouseIsDown){this.state.previousPopupElement!==void 0&&this.closeOnMouseMove(this.state.previousPopupElement,J)&&te.push(this.startMouseOutTimer());const fe=(0,O.findParent)(ce,k.hasPopupFeature);fe!==void 0&&(this.state.previousPopupElement===void 0||this.state.previousPopupElement.id!==fe.id)&&te.push(this.startMouseOverTimer(fe,J))}return te}closeOnMouseMove(ce,J){return ce instanceof C.SModelRootImpl}};Ms.HoverMouseListener=F,f([(0,w.inject)(E.TYPES.ViewerOptions),h("design:type",Object)],F.prototype,"options",void 0),Ms.HoverMouseListener=F=f([(0,w.injectable)()],F);let $=class extends H{mouseOut(ce,J){return[this.startMouseOutTimer()]}mouseOver(ce,J){return this.stopMouseOutTimer(),this.stopMouseOverTimer(),[]}};Ms.PopupHoverMouseListener=$,Ms.PopupHoverMouseListener=$=f([(0,w.injectable)()],$);class W extends I.KeyListener{keyDown(ce,J){return(0,g.matchesKeystroke)(J,"Escape")?[m.SetPopupModelAction.create({type:_.EMPTY_ROOT.type,id:_.EMPTY_ROOT.id})]:[]}}Ms.HoverKeyListener=W;let re=class{constructor(){this.popupOpen=!1}handle(ce){if(ce.kind===R.KIND)this.popupOpen=ce.newRoot.type!==_.EMPTY_ROOT.type;else if(this.popupOpen)return m.SetPopupModelAction.create({id:_.EMPTY_ROOT.id,type:_.EMPTY_ROOT.type})}};return Ms.ClosePopupActionHandler=re,Ms.ClosePopupActionHandler=re=f([(0,w.injectable)()],re),Ms}var vve={},pbt;function Zye(){return pbt||(pbt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.SIssue=f.SIssueMarker=f.SIssueMarkerImpl=f.SDecoration=f.isDecoration=f.decorationFeature=void 0;const h=Xs(),b=PA();f.decorationFeature=Symbol("decorationFeature");function w(E){return E.hasFeature(f.decorationFeature)}f.isDecoration=w;class m extends h.SShapeElementImpl{}f.SDecoration=m,m.DEFAULT_FEATURES=[f.decorationFeature,h.boundsFeature,b.hoverFeedbackFeature,b.popupFeature];class P extends m{}f.SIssueMarkerImpl=P,f.SIssueMarker=P;class g{}f.SIssue=g})(vve)),vve}var Q4={},wbt;function ywt(){if(wbt)return Q4;wbt=1;var f=Q4&&Q4.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(Q4,"__esModule",{value:!0}),Q4.IssueMarkerView=void 0;const h=Cy(),b=mh(),w=Zt();let m=class{render(g,E){const C=.008928571428571428,T=`scale(${C}, ${C})`,M=this.getMaxSeverity(g),_=(0,h.svg)("g",{"class-sprotty-issue":!0},(0,h.svg)("g",{transform:T},(0,h.svg)("path",{d:this.getPath(M)})));return(0,b.setClass)(_,"sprotty-"+M,!0),_}getMaxSeverity(g){let E="info";for(const C of g.issues.map(T=>T.severity))(C==="error"||C==="warning"&&E==="info")&&(E=C);return E}getPath(g){switch(g){case"error":case"warning":return"M768 128q209 0 385.5 103t279.5 279.5 103 385.5-103 385.5-279.5 279.5-385.5 103-385.5-103-279.5-279.5-103-385.5 103-385.5 279.5-279.5 385.5-103zm128 1247v-190q0-14-9-23.5t-22-9.5h-192q-13 0-23 10t-10 23v190q0 13 10 23t23 10h192q13 0 22-9.5t9-23.5zm-2-344l18-621q0-12-10-18-10-8-24-8h-220q-14 0-24 8-10 6-10 18l17 621q0 10 10 17.5t24 7.5h185q14 0 23.5-7.5t10.5-17.5z";case"info":return"M1024 1376v-160q0-14-9-23t-23-9h-96v-512q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v160q0 14 9 23t23 9h96v320h-96q-14 0-23 9t-9 23v160q0 14 9 23t23 9h448q14 0 23-9t9-23zm-128-896v-160q0-14-9-23t-23-9h-192q-14 0-23 9t-9 23v160q0 14 9 23t23 9h192q14 0 23-9t9-23zm640 416q0 209-103 385.5t-279.5 279.5-385.5 103-385.5-103-279.5-279.5-103-385.5 103-385.5 279.5-279.5 385.5-103 385.5 103 279.5 279.5 103 385.5z"}}};return Q4.IssueMarkerView=m,Q4.IssueMarkerView=m=f([(0,w.injectable)()],m),Q4}var gy={},mbt;function _wt(){if(mbt)return gy;mbt=1;var f=gy&&gy.__decorate||function(_,I,O,j){var k=arguments.length,x=k<3?I:j===null?j=Object.getOwnPropertyDescriptor(I,O):j,R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(_,I,O,j);else for(var H=_.length-1;H>=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=gy&&gy.__metadata||function(_,I){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(_,I)};Object.defineProperty(gy,"__esModule",{value:!0}),gy.DecorationPlacer=void 0;const b=Zt(),w=Oc(),m=Zye(),P=mh(),g=Xs(),E=Ma(),C=Iy(),T=Sp();let M=class{decorate(I,O){if((0,m.isDecoration)(O)){const j=this.getPosition(O),k="translate("+j.x+", "+j.y+")";(0,P.setAttr)(I,"transform",k)}return I}getPosition(I){if(I instanceof w.SChildElementImpl&&I.parent instanceof E.SRoutableElementImpl){const O=this.edgeRouterRegistry.route(I.parent);if(O.length>1){const j=Math.floor(.5*(O.length-1)),k=(0,g.isSizeable)(I)?{x:-.5*I.bounds.width,y:-.5*I.bounds.width}:T.Point.ORIGIN;return{x:.5*(O[j].x+O[j+1].x)+k.x,y:.5*(O[j].y+O[j+1].y)+k.y}}}return(0,g.isSizeable)(I)?{x:-.666*I.bounds.width,y:-.666*I.bounds.height}:T.Point.ORIGIN}postUpdate(){}};return gy.DecorationPlacer=M,f([(0,b.inject)(C.EdgeRouterRegistry),h("design:type",C.EdgeRouterRegistry)],M.prototype,"edgeRouterRegistry",void 0),gy.DecorationPlacer=M=f([(0,b.injectable)()],M),gy}var El={};class mUt{constructor(h=[],b=vUt){if(this.data=h,this.length=this.data.length,this.compare=b,this.length>0)for(let w=(this.length>>1)-1;w>=0;w--)this._down(w)}push(h){this.data.push(h),this.length++,this._up(this.length-1)}pop(){if(this.length===0)return;const h=this.data[0],b=this.data.pop();return this.length--,this.length>0&&(this.data[0]=b,this._down(0)),h}peek(){return this.data[0]}_up(h){const{data:b,compare:w}=this,m=b[h];for(;h>0;){const P=h-1>>1,g=b[P];if(w(m,g)>=0)break;b[h]=g,h=P}b[h]=m}_down(h){const{data:b,compare:w}=this,m=this.length>>1,P=b[h];for(;h=0)break;b[h]=E,h=g}b[h]=P}}function vUt(f,h){return fh?1:0}const yUt=Object.freeze(Object.defineProperty({__proto__:null,default:mUt},Symbol.toStringTag,{value:"Module"})),Ewt=V0t(yUt);var Za={},vbt;function Swt(){if(vbt)return Za;vbt=1;var f=Za&&Za.__importDefault||function(_){return _&&_.__esModule?_:{default:_}};Object.defineProperty(Za,"__esModule",{value:!0}),Za.intersectionOfSegments=Za.getSegmentIndex=Za.checkWhichSegmentHasRightEndpointFirst=Za.runSweep=Za.Segment=Za.SweepEvent=Za.checkWhichEventIsLeft=Za.addRoute=void 0;const h=f(Ewt),b=PS();function w(_,I,O){if(I.length<1)return;let j=I[0],k;for(let x=0;x0?(H.isLeftEndpoint=!0,R.isLeftEndpoint=!1):(R.isLeftEndpoint=!0,H.isLeftEndpoint=!1),O.push(R),O.push(H),j=k}}Za.addRoute=w;function m(_,I){return _.point.x>I.point.x?1:_.point.xI.point.y?1:-1:1}Za.checkWhichEventIsLeft=m;class P{constructor(I,O,j){this.edgeId=I,this.point=O,this.segmentIndex=j}}Za.SweepEvent=P;class g{constructor(I){this.leftSweepEvent=I,this.rightSweepEvent=I.otherEvent}}Za.Segment=g;function E(_){const I=[],O=new h.default([],C);for(;_.length;){const j=_.pop();if(j?.isLeftEndpoint){const k=new g(j);for(let x=0;xI.rightSweepEvent.point.x?1:_.rightSweepEvent.point.x=0;H--)(R=_[H])&&(x=(k<3?R(x):k>3?R(I,O,x):R(I,O))||x);return k>3&&x&&Object.defineProperty(I,O,x),x},h=El&&El.__importDefault||function(_){return _&&_.__esModule?_:{default:_}};Object.defineProperty(El,"__esModule",{value:!0}),El.IntersectionFinder=El.BY_DESCENDING_X_THEN_DESCENDING_Y=El.BY_X_THEN_DESCENDING_Y=El.BY_DESCENDING_X_THEN_Y=El.BY_X_THEN_Y=El.isIntersectingRoutedPoint=void 0;const b=Zt(),w=h(Ewt),m=Swt();function P(_){return _!==void 0&&"intersections"in _&&"kind"in _}El.isIntersectingRoutedPoint=P;const g=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?_.intersectionPoint.y-I.intersectionPoint.y:_.intersectionPoint.x-I.intersectionPoint.x;El.BY_X_THEN_Y=g;const E=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?_.intersectionPoint.y-I.intersectionPoint.y:I.intersectionPoint.x-_.intersectionPoint.x;El.BY_DESCENDING_X_THEN_Y=E;const C=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?I.intersectionPoint.y-_.intersectionPoint.y:_.intersectionPoint.x-I.intersectionPoint.x;El.BY_X_THEN_DESCENDING_Y=C;const T=(_,I)=>_.intersectionPoint.x===I.intersectionPoint.x?I.intersectionPoint.y-_.intersectionPoint.y:I.intersectionPoint.x-_.intersectionPoint.x;El.BY_DESCENDING_X_THEN_DESCENDING_Y=T;let M=class{apply(I){const O=this.find(I);this.addToRouting(O,I)}find(I){const O=new w.default(void 0,m.checkWhichEventIsLeft);return I.routes.forEach((j,k)=>{this.isSupportedRoute(j)&&(0,m.addRoute)(k,j,O)}),(0,m.runSweep)(O)}isSupportedRoute(I){return I.find(O=>O.kind!=="source"&&O.kind!=="target"&&O.kind!=="linear")===void 0}addToRouting(I,O){for(const j of I){const k=O.get(j.routable1),x=O.get(j.routable2);this.addIntersectionToRoutedPoint(j,k,j.segmentIndex1),this.addIntersectionToRoutedPoint(j,x,j.segmentIndex2)}}addIntersectionToRoutedPoint(I,O,j){if(O&&O.length>j){const k=O[j+1];if(P(k))k.intersections.push(I);else{const x=Object.assign(Object.assign({},k),{intersections:[I]});O[j+1]=x}}}};return El.IntersectionFinder=M,El.IntersectionFinder=M=f([(0,b.injectable)()],M),El}var Z4={},_bt;function Pwt(){if(_bt)return Z4;_bt=1;var f=Z4&&Z4.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(Z4,"__esModule",{value:!0}),Z4.JunctionFinder=void 0;const h=Zt(),b=MA();let w=class{constructor(){this.edgesMap=new Map,this.sourcesMap=new Map,this.targetsMap=new Map}apply(P,g){this.findJunctions(P,g)}findJunctions(P,g){Array.from(g.index.all().filter(C=>C instanceof b.SEdgeImpl)).forEach(C=>{this.edgesMap.set(C.id,C);const T=this.sourcesMap.get(C.sourceId);T?T.add(C.id):this.sourcesMap.set(C.sourceId,new Set([C.id]));const M=this.targetsMap.get(C.targetId);M?M.add(C.id):this.targetsMap.set(C.targetId,new Set([C.id]))}),P.routes.forEach((C,T)=>{const M=this.edgesMap.get(T);M&&(this.findJunctionPointsWithSameSource(M,C,P),this.findJunctionPointsWithSameTarget(M,C,P))})}findJunctionPointsWithSameSource(P,g,E){const C=this.sourcesMap.get(P.sourceId);if(!C)return;const M=Array.from(C).filter(_=>_!==P.id).map(_=>E.get(_)).filter(_=>_!==void 0);for(const _ of M){const I=this.getJunctionIndex(g,_);I===-1||I===0||this.setJunctionPoints(g,_,I)}}findJunctionPointsWithSameTarget(P,g,E){const C=this.targetsMap.get(P.targetId);if(!C)return;const M=Array.from(C).filter(_=>_!==P.id).map(_=>E.get(_)).filter(_=>_!==void 0);g.reverse();for(const _ of M){_.reverse();const I=this.getJunctionIndex(g,_);I===-1||I===0||(this.setJunctionPoints(g,_,I),_.reverse())}g.reverse()}setJunctionPoints(P,g,E){const C=this.getSegmentDirection(P[E-1],P[E]),T=this.getSegmentDirection(g[E-1],g[E]);if(C!==T)this.setPreviousPointAsJunction(P,g,E);else if(C==="left"||C==="right"){if(P[E].y!==g[E].y){this.setPreviousPointAsJunction(P,g,E);return}P[E].isJunction=C==="left"?P[E].x>g[E].x:P[E].xP[E].x:g[E].xg[E].y:P[E].yP[E].y:g[E].y0?"right":"left":C>0?"down":"up"}getJunctionIndex(P,g){let E=0;for(;E=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=by&&by.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(by,"__esModule",{value:!0}),by.JunctionPostProcessor=void 0;const b=Zt(),w=Sp(),m=Qn(),P=CA();let g=class{constructor(){this.isFirstRender=!0}decorate(C,T){return C}postUpdate(C){this.currentModel!==this.modelSource.model&&(this.isFirstRender=!0),C?.kind===w.RequestBoundsAction.KIND&&this.isFirstRender&&(document.querySelectorAll(`#${this.viewerOptions.hiddenDiv} > svg > g > g.sprotty-junction`).forEach(O=>O.remove()),document.querySelectorAll(`#${this.viewerOptions.baseDiv} > svg > g > g.sprotty-junction`).forEach(O=>O.remove()));const T=document.querySelector(`#${this.viewerOptions.hiddenDiv} > svg > g`),M=document.querySelector(`#${this.viewerOptions.baseDiv} > svg > g`);if(T){const _=Array.from(document.querySelectorAll(`#${this.viewerOptions.hiddenDiv} > svg > g > g > g.sprotty-junction`));_.forEach(I=>{I.remove()}),T.append(..._)}if(M){const _=Array.from(document.querySelectorAll(`#${this.viewerOptions.baseDiv} > svg > g > g > g.sprotty-junction`));_.forEach(I=>{I.remove()}),M.append(..._)}this.currentModel=this.modelSource.model,this.isFirstRender=!1}};return by.JunctionPostProcessor=g,f([(0,b.inject)(m.TYPES.ViewerOptions),h("design:type",Object)],g.prototype,"viewerOptions",void 0),f([(0,b.inject)(m.TYPES.ModelSource),h("design:type",P.ModelSource)],g.prototype,"modelSource",void 0),by.JunctionPostProcessor=g=f([(0,b.injectable)()],g),by}var el={},Sbt;function yJ(){if(Sbt)return el;Sbt=1;var f=el&&el.__decorate||function(tt,De,ct,Z){var Nt=arguments.length,ii=Nt<3?De:Z===null?Z=Object.getOwnPropertyDescriptor(De,ct):Z,kr;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ii=Reflect.decorate(tt,De,ct,Z);else for(var jo=tt.length-1;jo>=0;jo--)(kr=tt[jo])&&(ii=(Nt<3?kr(ii):Nt>3?kr(De,ct,ii):kr(De,ct))||ii);return Nt>3&&ii&&Object.defineProperty(De,ct,ii),ii},h=el&&el.__metadata||function(tt,De){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(tt,De)},b=el&&el.__param||function(tt,De){return function(ct,Z){De(ct,Z,tt)}},w;Object.defineProperty(el,"__esModule",{value:!0}),el.LocationPostprocessor=el.MoveMouseListener=el.MorphEdgesAnimation=el.MoveAnimation=el.MoveCommand=void 0;const m=Zt(),P=Ac(),g=jc(),E=SA(),C=Ca(),T=Oc(),M=Qh(),_=Qn(),I=Pp(),O=mh(),j=MA(),k=mJ(),x=Xs(),R=dwt(),H=vJ(),F=Yye(),$=Ma(),W=Iy(),re=cN(),ae=Rb(),ce=V3(),J=SS();let te=w=class extends C.MergeableCommand{constructor(De){super(),this.action=De,this.resolvedMoves=new Map,this.edgeMementi=[],this.stoppableCommandKey=w.KIND}stopExecution(){this.animation&&(this.animation.stop(),this.animation=void 0)}execute(De){const ct=De.root.index,Z=new Map,Nt=new Map;return this.action.moves.forEach(ii=>{const kr=ct.getById(ii.elementId);if(kr instanceof $.SRoutingHandleImpl&&this.edgeRouterRegistry){const jo=kr.parent;if(jo instanceof $.SRoutableElementImpl){const Gn=this.resolveHandleMove(kr,jo,ii);if(Gn){let pc=Z.get(jo);pc||(pc=[],Z.set(jo,pc)),pc.push(Gn)}}}else if(kr&&(0,J.isLocateable)(kr)){const jo=this.resolveElementMove(kr,ii);if(jo&&(this.resolvedMoves.set(jo.element.id,jo),this.edgeRouterRegistry)){const Gn=ls=>{ct.getAttachedElements(ls).forEach(Lr=>{if(Lr instanceof $.SRoutableElementImpl&&!this.isChildOfMovedElements(Lr)){const gt=Nt.get(Lr),Xn=P.Point.subtract(jo.toPosition,jo.fromPosition),jn=gt?P.Point.linear(gt,Xn,.5):Xn;Nt.set(Lr,jn)}})},pc=ls=>{(0,T.isParent)(ls)&&ls.children.forEach(Lr=>{Lr instanceof T.SModelElementImpl&&(Lr instanceof $.SConnectableElementImpl&&Gn(Lr),pc(Lr))})};pc(kr),Gn(kr)}}}),this.doMove(Z,Nt),this.action.animate?(this.undoMove(),(this.animation=new E.CompoundAnimation(De.root,De,[new fe(De.root,this.resolvedMoves,De,!1),new ve(De.root,this.edgeMementi,De,!1)])).start()):De.root}resolveHandleMove(De,ct,Z){let Nt=Z.fromPosition;if(!Nt){const ii=this.edgeRouterRegistry.get(ct.routerKind);Nt=ii.getHandlePosition(ct,ii.route(ct),De)}if(Nt)return{handle:De,fromPosition:Nt,toPosition:Z.toPosition}}resolveElementMove(De,ct){const Z=ct.fromPosition||{x:De.position.x,y:De.position.y};return{element:De,fromPosition:Z,toPosition:ct.toPosition}}doMove(De,ct){this.resolvedMoves.forEach(Z=>{Z.element.position=Z.toPosition}),De.forEach((Z,Nt)=>{const ii=this.edgeRouterRegistry.get(Nt.routerKind),kr=ii.takeSnapshot(Nt);ii.applyHandleMoves(Nt,Z);const jo=ii.takeSnapshot(Nt);this.edgeMementi.push({edge:Nt,before:kr,after:jo})}),ct.forEach((Z,Nt)=>{if(!De.get(Nt)){const ii=this.edgeRouterRegistry.get(Nt.routerKind),kr=ii.takeSnapshot(Nt);if(this.isAttachedEdge(Nt))Nt.routingPoints=Nt.routingPoints.map(Gn=>P.Point.add(Gn,Z));else{const Gn=(0,ae.isSelectable)(Nt)&&Nt.selected;ii.cleanupRoutingPoints(Nt,Nt.routingPoints,Gn,this.action.finished)}const jo=ii.takeSnapshot(Nt);this.edgeMementi.push({edge:Nt,before:kr,after:jo})}})}isChildOfMovedElements(De){const ct=De.parent;return Array.from(this.resolvedMoves.values()).map(Z=>Z.element.id).includes(ct.id)?!0:ct instanceof T.SChildElementImpl?this.isChildOfMovedElements(ct):!1}isAttachedEdge(De){const ct=De.source,Z=De.target,Nt=ii=>!!this.resolvedMoves.get(ii.id)||this.isChildOfMovedElements(ii);return!!(ct&&Z&&Nt(ct)&&Nt(Z))}undoMove(){this.resolvedMoves.forEach(De=>{De.element.position=De.fromPosition}),this.edgeMementi.forEach(De=>{this.edgeRouterRegistry.get(De.edge.routerKind).applySnapshot(De.edge,De.before)})}undo(De){return new E.CompoundAnimation(De.root,De,[new fe(De.root,this.resolvedMoves,De,!0),new ve(De.root,this.edgeMementi,De,!0)]).start()}redo(De){return new E.CompoundAnimation(De.root,De,[new fe(De.root,this.resolvedMoves,De,!1),new ve(De.root,this.edgeMementi,De,!1)]).start()}merge(De,ct){if(!this.action.animate&&De instanceof w)return De.resolvedMoves.forEach((Z,Nt)=>{const ii=this.resolvedMoves.get(Nt);ii?ii.toPosition=Z.toPosition:this.resolvedMoves.set(Nt,Z)}),De.edgeMementi.forEach(Z=>{const Nt=this.edgeMementi.find(ii=>ii.edge.id===Z.edge.id);Nt?Nt.after=Z.after:this.edgeMementi.push(Z)}),!0;if(De instanceof F.ReconnectCommand){const Z=De.memento;if(Z){const Nt=this.edgeMementi.find(ii=>ii.edge.id===Z.edge.id);Nt?Nt.after=Z.after:this.edgeMementi.push(Z)}return!0}return!1}};el.MoveCommand=te,te.KIND=g.MoveAction.KIND,f([(0,m.inject)(W.EdgeRouterRegistry),(0,m.optional)(),h("design:type",W.EdgeRouterRegistry)],te.prototype,"edgeRouterRegistry",void 0),el.MoveCommand=te=w=f([(0,m.injectable)(),b(0,(0,m.inject)(_.TYPES.Action)),h("design:paramtypes",[Object])],te);class fe extends E.Animation{constructor(De,ct,Z,Nt=!1){super(Z),this.model=De,this.elementMoves=ct,this.reverse=Nt}tween(De){return this.elementMoves.forEach(ct=>{this.reverse?ct.element.position={x:(1-De)*ct.toPosition.x+De*ct.fromPosition.x,y:(1-De)*ct.toPosition.y+De*ct.fromPosition.y}:ct.element.position={x:(1-De)*ct.fromPosition.x+De*ct.toPosition.x,y:(1-De)*ct.fromPosition.y+De*ct.toPosition.y}}),this.model}}el.MoveAnimation=fe;class ve extends E.Animation{constructor(De,ct,Z,Nt=!1){super(Z),this.model=De,this.reverse=Nt,this.expanded=[],ct.forEach(ii=>{const kr=this.reverse?ii.after:ii.before,jo=this.reverse?ii.before:ii.after,Gn=kr.routedPoints,pc=jo.routedPoints,ls=Math.max(Gn.length,pc.length);this.expanded.push({startExpandedRoute:this.growToSize(Gn,ls),endExpandedRoute:this.growToSize(pc,ls),memento:ii})})}midPoint(De){const ct=De.edge,Z=De.edge.source,Nt=De.edge.target;return P.Point.linear((0,M.translatePoint)(P.Bounds.center(Z.bounds),Z.parent,ct.parent),(0,M.translatePoint)(P.Bounds.center(Nt.bounds),Nt.parent,ct.parent),.5)}start(){return this.expanded.forEach(De=>{De.memento.edge.removeAll(ct=>ct instanceof $.SRoutingHandleImpl)}),super.start()}tween(De){return De===1?this.expanded.forEach(ct=>{const Z=ct.memento;this.reverse?Z.before.router.applySnapshot(Z.edge,Z.before):Z.after.router.applySnapshot(Z.edge,Z.after)}):this.expanded.forEach(ct=>{const Z=[];for(let kr=1;kr(jo+ls)*ii;)++ls;jo+=ls;for(let Lr=0;Lr(0,ae.isSelectable)(Z)&&Z.selected));ct.forEach(Z=>{if(!this.isChildOfSelected(ct,Z)){if((0,J.isMoveable)(Z))this.elementId2startPos.set(Z.id,Z.position);else if(Z instanceof $.SRoutingHandleImpl){const Nt=this.getHandlePosition(Z);Nt&&this.elementId2startPos.set(Z.id,Nt)}}})}isChildOfSelected(De,ct){for(;ct instanceof T.SChildElementImpl;)if(ct=ct.parent,(0,J.isMoveable)(ct)&&De.has(ct))return!0;return!1}getElementMoves(De,ct,Z){if(!this.startDragPosition)return;const Nt=[],ii=(0,M.findParentByFeature)(De,ce.isViewport),kr=ii?ii.zoom:1,jo={x:(ct.pageX-this.startDragPosition.x)/kr,y:(ct.pageY-this.startDragPosition.y)/kr};if(this.elementId2startPos.forEach((Gn,pc)=>{const ls=De.root.index.getById(pc);if(ls){const Lr=this.createElementMove(ls,Gn,jo,ct);Lr&&Nt.push(Lr)}}),Nt.length>0)return g.MoveAction.create(Nt,{animate:!1,finished:Z})}createElementMove(De,ct,Z,Nt){const ii=this.snap({x:ct.x+Z.x,y:ct.y+Z.y},De,!Nt.shiftKey);if((0,J.isMoveable)(De))return{elementId:De.id,elementType:De.type,fromPosition:{x:De.position.x,y:De.position.y},toPosition:ii};if(De instanceof $.SRoutingHandleImpl){const kr=this.getHandlePosition(De);if(kr!==void 0)return{elementId:De.id,elementType:De.type,fromPosition:kr,toPosition:ii}}}snap(De,ct,Z){return Z&&this.snapper?this.snapper.snap(De,ct):De}getHandlePosition(De){if(this.edgeRouterRegistry){const ct=De.parent;if(!(ct instanceof $.SRoutableElementImpl))return;const Z=this.edgeRouterRegistry.get(ct.routerKind),Nt=Z.route(ct);return Z.getHandlePosition(ct,Nt,De)}}mouseEnter(De,ct){return De instanceof T.SModelRootImpl&&ct.buttons===0&&!this.startDragPosition&&this.mouseUp(De,ct),[]}mouseUp(De,ct){const Z=[];if(this.startDragPosition){const Nt=this.getElementMoves(De,ct,!0);Nt&&Z.push(Nt),De.root.index.all().forEach(ii=>{ii instanceof $.SRoutingHandleImpl&&Z.push(...this.deactivateRoutingHandle(ii,De,ct))})}if(!Z.some(Nt=>Nt.kind===g.ReconnectAction.KIND)){const Nt=De.root.index.getById($.edgeInProgressID);Nt instanceof T.SChildElementImpl&&Z.push(this.deleteEdgeInProgress(Nt))}return this.hasDragged&&Z.push(k.CommitModelAction.create()),this.hasDragged=!1,this.startDragPosition=void 0,this.elementId2startPos.clear(),Z}deactivateRoutingHandle(De,ct,Z){const Nt=[],ii=De.parent;if(ii instanceof $.SRoutableElementImpl&&De.danglingAnchor){const kr=this.getHandlePosition(De);if(kr){const jo=(0,M.translatePoint)(kr,De.parent,De.root),Gn=(0,x.findChildrenAtPosition)(ct.root,jo).find(pc=>(0,$.isConnectable)(pc)&&pc.canConnect(ii,De.kind));Gn&&this.hasDragged&&Nt.push(g.ReconnectAction.create({routableId:De.parent.id,newSourceId:De.kind==="source"?Gn.id:ii.sourceId,newTargetId:De.kind==="target"?Gn.id:ii.targetId}))}}return De.editMode&&Nt.push(H.SwitchEditModeAction.create({elementsToDeactivate:[De.id]})),Nt}deleteEdgeInProgress(De){const ct=[];return ct.push($.edgeInProgressID),De.children.forEach(Z=>{Z instanceof $.SRoutingHandleImpl&&Z.danglingAnchor&&ct.push(Z.danglingAnchor.id)}),g.DeleteElementAction.create(ct)}decorate(De,ct){return De}}el.MoveMouseListener=me,f([(0,m.inject)(W.EdgeRouterRegistry),(0,m.optional)(),h("design:type",W.EdgeRouterRegistry)],me.prototype,"edgeRouterRegistry",void 0),f([(0,m.inject)(_.TYPES.ISnapper),(0,m.optional)(),h("design:type",Object)],me.prototype,"snapper",void 0);let ke=class{decorate(De,ct){if((0,re.isEdgeLayoutable)(ct)&&ct.parent instanceof j.SEdgeImpl)return De;let Z="";if((0,J.isLocateable)(ct)&&ct instanceof T.SChildElementImpl&&ct.parent!==void 0){const Nt=ct.position;(Nt.x!==0||Nt.y!==0)&&(Z="translate("+Nt.x+", "+Nt.y+")")}if((0,x.isAlignable)(ct)){const Nt=ct.alignment;(Nt.x!==0||Nt.y!==0)&&(Z.length>0&&(Z+=" "),Z+="translate("+Nt.x+", "+Nt.y+")")}return Z.length>0&&(0,O.setAttr)(De,"transform",Z),De}postUpdate(){}};return el.LocationPostprocessor=ke,el.LocationPostprocessor=ke=f([(0,m.injectable)()],ke),el}var eS={},Pbt;function _Ut(){if(Pbt)return eS;Pbt=1;var f=eS&&eS.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(eS,"__esModule",{value:!0}),eS.CenterGridSnapper=void 0;const h=Zt(),b=Xs();let w=class{get gridX(){return 10}get gridY(){return 10}snap(P,g){return g&&(0,b.isBoundsAware)(g)?{x:Math.round((P.x+.5*g.bounds.width)/this.gridX)*this.gridX-.5*g.bounds.width,y:Math.round((P.y+.5*g.bounds.height)/this.gridY)*this.gridY-.5*g.bounds.height}:{x:Math.round(P.x/this.gridX)*this.gridX,y:Math.round(P.y/this.gridY)*this.gridY}}};return eS.CenterGridSnapper=w,eS.CenterGridSnapper=w=f([(0,h.injectable)()],w),eS}var SL={},yve={},Mbt;function Cwt(){return Mbt||(Mbt=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.isOpenable=f.openFeature=void 0,f.openFeature=Symbol("openFeature");function h(b){return b.hasFeature(f.openFeature)}f.isOpenable=h})(yve)),yve}var Cbt;function Iwt(){if(Cbt)return SL;Cbt=1,Object.defineProperty(SL,"__esModule",{value:!0}),SL.OpenMouseListener=void 0;const f=jc(),h=Pp(),b=Qh(),w=Cwt();class m extends h.MouseListener{doubleClick(g,E){const C=(0,b.findParentByFeature)(g,w.isOpenable);return C!==void 0?[f.OpenAction.create(C.id)]:[]}}return SL.OpenMouseListener=m,SL}var bm={},Ibt;function t2e(){if(Ibt)return bm;Ibt=1,Object.defineProperty(bm,"__esModule",{value:!0}),bm.getModelBounds=bm.getProjectedBounds=bm.getProjections=bm.isProjectable=void 0;const f=Ac(),h=_S(),b=Qh(),w=Xs();function m(T){return(0,h.hasOwnProperty)(T,"projectionCssClasses")}bm.isProjectable=m;function P(T){let M;for(const _ of T.children){if(m(_)&&_.projectionCssClasses.length>0){const I=g(_);if(I){const O={elementId:_.id,projectedBounds:I,cssClasses:_.projectionCssClasses};M?M.push(O):M=[O]}}if(_.children.length>0){const I=P(_);I&&(M?M.push(...I):M=I)}}return M}bm.getProjections=P;function g(T){const M=T.parent;if(T.projectedBounds){let _=T.projectedBounds;return(0,w.isBoundsAware)(M)&&(_=(0,b.transformToRootBounds)(M,_)),_}else if((0,w.isBoundsAware)(T)){let _=T.bounds;return _=(0,b.transformToRootBounds)(M,_),_}}bm.getProjectedBounds=g;const E=1e9;function C(T){let M=E,_=E,I=-E,O=-E;const j=(0,w.isBoundsAware)(T)?T.bounds:void 0;if(j&&f.Dimension.isValid(j))M=j.x,_=j.y,I=M+j.width,O=_+j.height;else for(const k of T.children)if((0,w.isBoundsAware)(k)){const x=k.bounds;M=Math.min(M,x.x),_=Math.min(_,x.y),I=Math.max(I,x.x+x.width),O=Math.max(O,x.y+x.height)}if(M=Math.min(M,T.scroll.x),_=Math.min(_,T.scroll.y),I=Math.max(I,T.scroll.x+T.canvasBounds.width/T.zoom),O=Math.max(O,T.scroll.y+T.canvasBounds.height/T.zoom),M=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I};Object.defineProperty(tS,"__esModule",{value:!0}),tS.ProjectedViewportView=void 0;const h=Cy(),b=Zt(),w=nN,m=mh(),P=t2e();let g=class{render(C,T,M){const _=(0,h.html)("div",{"class-sprotty-root":!0},this.renderSvg(C,T,M),this.renderProjections(C,T,M));return(0,m.setAttr)(_,"tabindex",0),_}renderSvg(C,T,M){const _=`scale(${C.zoom}) translate(${-C.scroll.x},${-C.scroll.y})`,I="http://www.w3.org/2000/svg";return(0,w.h)("svg",{ns:I},(0,w.h)("g",{ns:I,attrs:{transform:_}},T.renderChildren(C)))}renderProjections(C,T,M){var _;if(C.zoom<=0)return[];const I=(0,P.getModelBounds)(C);if(!I)return[];const O=(_=(0,P.getProjections)(C))!==null&&_!==void 0?_:[];return[this.renderProjectionBar(O,C,I,"vertical"),this.renderProjectionBar(O,C,I,"horizontal")]}renderProjectionBar(C,T,M,_){const I={modelBounds:M,orientation:_};return I.factor=_==="horizontal"?T.canvasBounds.width/M.width:T.canvasBounds.height/M.height,I.zoomedFactor=I.factor/T.zoom,(0,h.html)("div",{"class-sprotty-projection-bar":!0,"class-horizontal":_==="horizontal","class-vertical":_==="vertical"},this.renderViewport(T,I),C.map(O=>this.renderProjection(O,T,I)))}renderViewport(C,T){let M,_;T.orientation==="horizontal"?(M=C.canvasBounds.width,_=(C.scroll.x-T.modelBounds.x)*T.factor):(M=C.canvasBounds.height,_=(C.scroll.y-T.modelBounds.y)*T.factor);let I=M*T.zoomedFactor;_<0?(I+=_,_=0):_>M&&(_=M),I<0?I=0:_+I>M&&(I=M-_);const O=T.orientation==="horizontal"?{left:`${_}px`,width:`${I}px`}:{top:`${_}px`,height:`${I}px`};return(0,h.html)("div",{"class-sprotty-viewport":!0,style:O})}renderProjection(C,T,M){let _,I,O;M.orientation==="horizontal"?(_=T.canvasBounds.width,I=(C.projectedBounds.x-M.modelBounds.x)*M.factor,O=C.projectedBounds.width*M.factor):(_=T.canvasBounds.height,I=(C.projectedBounds.y-M.modelBounds.y)*M.factor,O=C.projectedBounds.height*M.factor),I<0?(O+=I,I=0):I>_&&(I=_),O<0?O=0:I+O>_&&(O=_-I);const j=M.orientation==="horizontal"?{left:`${I}px`,width:`${O}px`}:{top:`${I}px`,height:`${O}px`},k=(0,h.html)("div",{id:`${M.orientation}-projection:${C.elementId}`,"class-sprotty-projection":!0,style:j});return C.cssClasses.forEach(x=>(0,m.setClass)(k,x,!0)),k}};return tS.ProjectedViewportView=g,tS.ProjectedViewportView=g=f([(0,b.injectable)()],g),tS}var hg={},dg={},jbt;function n2e(){if(jbt)return dg;jbt=1;var f=dg&&dg.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k};Object.defineProperty(dg,"__esModule",{value:!0}),dg.DiamondAnchor=dg.RectangleAnchor=dg.EllipseAnchor=void 0;const h=MS(),b=PS(),w=Zt(),m=wJ(),P=Ac();let g=class{get kind(){return m.PolylineEdgeRouter.KIND+":"+h.ELLIPTIC_ANCHOR_KIND}getAnchor(_,I,O=0){const j=_.bounds,k=P.Bounds.center(j),x=k.x-I.x,R=k.y-I.y,H=Math.sqrt(x*x+R*R),F=x/H||0,$=R/H||0;return{x:k.x-F*(.5*j.width+O),y:k.y-$*(.5*j.height+O)}}};dg.EllipseAnchor=g,dg.EllipseAnchor=g=f([(0,w.injectable)()],g);let E=class{get kind(){return m.PolylineEdgeRouter.KIND+":"+h.RECTANGULAR_ANCHOR_KIND}getAnchor(_,I,O=0){const j=_.bounds,k=P.Bounds.center(j),x=new C(k,I);if(!(0,P.almostEquals)(k.y,I.y)){const R=this.getXIntersection(j.y,k,I);R>=j.x&&R<=j.x+j.width&&x.addCandidate(R,j.y-O);const H=this.getXIntersection(j.y+j.height,k,I);H>=j.x&&H<=j.x+j.width&&x.addCandidate(H,j.y+j.height+O)}if(!(0,P.almostEquals)(k.x,I.x)){const R=this.getYIntersection(j.x,k,I);R>=j.y&&R<=j.y+j.height&&x.addCandidate(j.x-O,R);const H=this.getYIntersection(j.x+j.width,k,I);H>=j.y&&H<=j.y+j.height&&x.addCandidate(j.x+j.width+O,H)}return x.best}getXIntersection(_,I,O){const j=(_-I.y)/(O.y-I.y);return(O.x-I.x)*j+I.x}getYIntersection(_,I,O){const j=(_-I.x)/(O.x-I.x);return(O.y-I.y)*j+I.y}};dg.RectangleAnchor=E,dg.RectangleAnchor=E=f([(0,w.injectable)()],E);class C{constructor(_,I){this.centerPoint=_,this.refPoint=I,this.currentDist=-1}addCandidate(_,I){const O=this.refPoint.x-_,j=this.refPoint.y-I,k=O*O+j*j;(this.currentDist<0||k=0;ae--)(re=x[ae])&&(W=($<3?re(W):$>3?re(R,H,W):re(R,H))||W);return $>3&&W&&Object.defineProperty(R,H,W),W},h=of&&of.__metadata||function(x,R){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(x,R)},b=of&&of.__param||function(x,R){return function(H,F){R(H,F,x)}},w;Object.defineProperty(of,"__esModule",{value:!0}),of.AddRemoveBezierSegmentCommand=of.AddRemoveBezierSegmentAction=of.BezierMouseListener=of.BezierEdgeRouter=void 0;const m=Zt(),P=Ac(),g=Ma(),E=Iy(),C=pJ(),T=Pp(),M=Ca(),_=Qn();let I=w=class extends C.AbstractEdgeRouter{get kind(){return w.KIND}route(R){if(!R.source||!R.target)return[];const H=R.routingPoints.length,F=R.source,$=R.target,W=[];if(W.push({kind:"source",x:0,y:0}),H===0){const[te,fe]=this.createDefaultBezierHandles(F.position,$.position);W.push({kind:"bezier-control-after",x:te.x,y:te.y,pointIndex:0}),W.push({kind:"bezier-control-before",x:fe.x,y:fe.y,pointIndex:1}),R.routingPoints.push(te),R.routingPoints.push(fe)}else if(H>=2)for(let te=0;te2?R.routingPoints[2]:$.position,ae=H>2?R.routingPoints[R.routingPoints.length-3]:F.position,ce=this.getTranslatedAnchor(F,re,$.parent,R,R.sourceAnchorCorrection),J=this.getTranslatedAnchor($,ae,F.parent,R,R.targetAnchorCorrection);return W[0]={kind:"source",x:ce.x,y:ce.y},W[W.length-1]={kind:"target",x:J.x,y:J.y},W}createDefaultBezierHandles(R,H){const F={x:R.x-w.DEFAULT_BEZIER_HANDLE_OFFSET,y:R.y},$={x:H.x+w.DEFAULT_BEZIER_HANDLE_OFFSET,y:H.y};return[F,$]}createRoutingHandles(R){this.route(R),this.rebuildHandles(R)}rebuildHandles(R){this.addHandle(R,"source","routing-point",-2),this.addHandle(R,"bezier-control-after","bezier-routing-point",0),this.addHandle(R,"bezier-add","bezier-create-routing-point",0);const H=R.routingPoints.length;if(H>2)for(let F=1;F0){for(const W of H)if(W.pointIndex!==void 0&&W.pointIndex===F&&W.kind==="bezier-junction"){$={x:W.x,y:W.y};break}}return $}applyHandleMoves(R,H){H.forEach(F=>{const $=F.handle;let W={x:0,y:0},re,ae,ce;const J=F.toPosition;switch($.kind){case"bezier-control-before":case"bezier-control-after":this.moveBezierControlPair(J,F.handle.pointIndex,R);break;case"bezier-junction":const te=$.pointIndex;te>=0&&teJ instanceof g.SRoutingHandleImpl),this.rebuildHandles(H)}removeBezierSegment(R,H){H.routingPoints.splice(R-1,3),H.removeAll($=>$ instanceof g.SRoutingHandleImpl),this.rebuildHandles(H)}moveBezierControlPair(R,H,F){if(H>=0&&H=0;k--)(j=C[k])&&(O=(I<3?j(O):I>3?j(T,M,O):j(T,M))||O);return I>3&&O&&Object.defineProperty(T,M,O),O};Object.defineProperty(hg,"__esModule",{value:!0}),hg.BezierDiamondAnchor=hg.BezierRectangleAnchor=hg.BezierEllipseAnchor=void 0;const h=MS(),b=Zt(),w=n2e(),m=i2e();let P=class extends w.EllipseAnchor{get kind(){return m.BezierEdgeRouter.KIND+":"+h.ELLIPTIC_ANCHOR_KIND}};hg.BezierEllipseAnchor=P,hg.BezierEllipseAnchor=P=f([(0,b.injectable)()],P);let g=class extends w.RectangleAnchor{get kind(){return m.BezierEdgeRouter.KIND+":"+h.RECTANGULAR_ANCHOR_KIND}};hg.BezierRectangleAnchor=g,hg.BezierRectangleAnchor=g=f([(0,b.injectable)()],g);let E=class extends w.DiamondAnchor{get kind(){return m.BezierEdgeRouter.KIND+":"+h.DIAMOND_ANCHOR_KIND}};return hg.BezierDiamondAnchor=E,hg.BezierDiamondAnchor=E=f([(0,b.injectable)()],E),hg}var gg={},PL={},Dbt;function r2e(){if(Dbt)return PL;Dbt=1,Object.defineProperty(PL,"__esModule",{value:!0}),PL.ManhattanEdgeRouter=void 0;const f=Ac(),h=Qh(),b=pJ(),w=Ma();class m extends b.AbstractEdgeRouter{get kind(){return m.KIND}getOptions(g){return{standardDistance:20,minimalPointDistance:3,selfEdgeOffset:.25}}route(g){if(!g.source||!g.target)return[];const E=this.createRoutedCorners(g),C=E[0]||(0,h.translatePoint)(f.Bounds.center(g.target.bounds),g.target.parent,g.parent),T=this.getTranslatedAnchor(g.source,C,g.parent,g,g.sourceAnchorCorrection),M=E[E.length-1]||(0,h.translatePoint)(f.Bounds.center(g.source.bounds),g.source.parent,g.parent),_=this.getTranslatedAnchor(g.target,M,g.parent,g,g.targetAnchorCorrection);if(!T||!_)return[];const I=[];return I.push(Object.assign({kind:"source"},T)),E.forEach(O=>I.push(O)),I.push(Object.assign({kind:"target"},_)),I}createRoutedCorners(g){const E=new b.DefaultAnchors(g.source,g.parent,"source"),C=new b.DefaultAnchors(g.target,g.parent,"target");if(g.routingPoints.length>0){const _=g.routingPoints.slice();if(this.cleanupRoutingPoints(g,_,!1,!0),_.length>0)return _.map((I,O)=>Object.assign({kind:"linear",pointIndex:O},I))}const T=this.getOptions(g);return this.calculateDefaultCorners(g,E,C,T).map(_=>Object.assign({kind:"linear"},_))}createRoutingHandles(g){const E=this.route(g);if(this.commitRoute(g,E),E.length>0){this.addHandle(g,"source","routing-point",-2);for(let C=0;C{const I=_.handle,O=I.pointIndex,j=this.correctX(T,O,_.toPosition.x,M),k=this.correctY(T,O,_.toPosition.y,M);I.kind==="manhattan-50%"&&(O<0?T.length===0?(T.push({x:j,y:k}),I.pointIndex=0):(0,f.almostEquals)(C[0].x,C[1].x)?this.alignX(T,0,j):this.alignY(T,0,k):O0&&Math.abs(C-g[E-1].x)=0&&E0&&Math.abs(C-g[E-1].y)=0&&E=0&&f.Bounds.includes(_.bounds,E[I]);--I)E.splice(I,1),C&&this.removeHandle(g,I);if(E.length>=2){const I=this.getOptions(g);for(let O=E.length-2;O>=0;--O)f.Point.manhattanDistance(E[O],E[O+1]){T instanceof w.SRoutingHandleImpl&&(T.pointIndex>E?--T.pointIndex:T.pointIndex===E&&C.push(T))}),C.forEach(T=>g.remove(T))}addAdditionalCorner(g,E,C,T,M){if(E.length===0)return;const _=C.kind==="source"?E[0]:E[E.length-1],I=C.kind==="source"?0:E.length,O=I-(C.kind==="source"?1:0);let j;if(E.length>1)j=I===0?(0,f.almostEquals)(E[0].x,E[1].x):(0,f.almostEquals)(E[E.length-1].x,E[E.length-2].x);else{const k=T.getNearestSide(_);j=k===b.Side.TOP||k===b.Side.BOTTOM}if(j){if(_.yC.get(b.Side.BOTTOM).y){const k={x:C.get(b.Side.TOP).x,y:_.y};E.splice(I,0,k),M&&(g.children.forEach(x=>{x instanceof w.SRoutingHandleImpl&&x.pointIndex>=O&&++x.pointIndex}),this.addHandle(g,"manhattan-50%","volatile-routing-point",O))}}else if(_.xC.get(b.Side.RIGHT).x){const k={x:_.x,y:C.get(b.Side.LEFT).y};E.splice(I,0,k),M&&(g.children.forEach(x=>{x instanceof w.SRoutingHandleImpl&&x.pointIndex>=O&&++x.pointIndex}),this.addHandle(g,"manhattan-50%","volatile-routing-point",O))}}manhattanify(g,E){for(let C=1;C0)return M;const _=this.getBestConnectionAnchors(g,E,C,T),I=_.source,O=_.target,j=[],k=E.get(I);let x=C.get(O);switch(I){case b.Side.RIGHT:switch(O){case b.Side.BOTTOM:j.push({x:x.x,y:k.y});break;case b.Side.TOP:j.push({x:x.x,y:k.y});break;case b.Side.RIGHT:j.push({x:Math.max(k.x,x.x)+1.5*T.standardDistance,y:k.y}),j.push({x:Math.max(k.x,x.x)+1.5*T.standardDistance,y:x.y});break;case b.Side.LEFT:x.y!==k.y&&(j.push({x:(k.x+x.x)/2,y:k.y}),j.push({x:(k.x+x.x)/2,y:x.y}));break}break;case b.Side.LEFT:switch(O){case b.Side.BOTTOM:j.push({x:x.x,y:k.y});break;case b.Side.TOP:j.push({x:x.x,y:k.y});break;default:x=C.get(b.Side.RIGHT),x.y!==k.y&&(j.push({x:(k.x+x.x)/2,y:k.y}),j.push({x:(k.x+x.x)/2,y:x.y}));break}break;case b.Side.TOP:switch(O){case b.Side.RIGHT:x.x-k.x>0?(j.push({x:k.x,y:k.y-T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:k.y-T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;case b.Side.LEFT:x.x-k.x<0?(j.push({x:k.x,y:k.y-T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:k.y-T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;case b.Side.TOP:j.push({x:k.x,y:Math.min(k.y,x.y)-1.5*T.standardDistance}),j.push({x:x.x,y:Math.min(k.y,x.y)-1.5*T.standardDistance});break;case b.Side.BOTTOM:x.x!==k.x&&(j.push({x:k.x,y:(k.y+x.y)/2}),j.push({x:x.x,y:(k.y+x.y)/2}));break}break;case b.Side.BOTTOM:switch(O){case b.Side.RIGHT:x.x-k.x>0?(j.push({x:k.x,y:k.y+T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:k.y+T.standardDistance}),j.push({x:x.x+1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;case b.Side.LEFT:x.x-k.x<0?(j.push({x:k.x,y:k.y+T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:k.y+T.standardDistance}),j.push({x:x.x-1.5*T.standardDistance,y:x.y})):j.push({x:k.x,y:x.y});break;default:x=C.get(b.Side.TOP),x.x!==k.x&&(j.push({x:k.x,y:(k.y+x.y)/2}),j.push({x:x.x,y:(k.y+x.y)/2}));break}break}return j}getBestConnectionAnchors(g,E,C,T){let M=E.get(b.Side.RIGHT),_=C.get(b.Side.LEFT);if(_.x-M.x>T.standardDistance)return{source:b.Side.RIGHT,target:b.Side.LEFT};if(M=E.get(b.Side.LEFT),_=C.get(b.Side.RIGHT),M.x-_.x>T.standardDistance)return{source:b.Side.LEFT,target:b.Side.RIGHT};if(M=E.get(b.Side.TOP),_=C.get(b.Side.BOTTOM),M.y-_.y>T.standardDistance)return{source:b.Side.TOP,target:b.Side.BOTTOM};if(M=E.get(b.Side.BOTTOM),_=C.get(b.Side.TOP),_.y-M.y>T.standardDistance)return{source:b.Side.BOTTOM,target:b.Side.TOP};if(M=E.get(b.Side.RIGHT),_=C.get(b.Side.TOP),_.x-M.x>.5*T.standardDistance&&_.y-M.y>T.standardDistance)return{source:b.Side.RIGHT,target:b.Side.TOP};if(_=C.get(b.Side.BOTTOM),_.x-M.x>.5*T.standardDistance&&M.y-_.y>T.standardDistance)return{source:b.Side.RIGHT,target:b.Side.BOTTOM};if(M=E.get(b.Side.LEFT),_=C.get(b.Side.BOTTOM),M.x-_.x>.5*T.standardDistance&&M.y-_.y>T.standardDistance)return{source:b.Side.LEFT,target:b.Side.BOTTOM};if(_=C.get(b.Side.TOP),M.x-_.x>.5*T.standardDistance&&_.y-M.y>T.standardDistance)return{source:b.Side.LEFT,target:b.Side.TOP};if(M=E.get(b.Side.TOP),_=C.get(b.Side.RIGHT),M.y-_.y>.5*T.standardDistance&&M.x-_.x>T.standardDistance)return{source:b.Side.TOP,target:b.Side.RIGHT};if(_=C.get(b.Side.LEFT),M.y-_.y>.5*T.standardDistance&&_.x-M.x>T.standardDistance)return{source:b.Side.TOP,target:b.Side.LEFT};if(M=E.get(b.Side.BOTTOM),_=C.get(b.Side.RIGHT),_.y-M.y>.5*T.standardDistance&&M.x-_.x>T.standardDistance)return{source:b.Side.BOTTOM,target:b.Side.RIGHT};if(_=C.get(b.Side.LEFT),_.y-M.y>.5*T.standardDistance&&_.x-M.x>T.standardDistance)return{source:b.Side.BOTTOM,target:b.Side.LEFT};if(M=E.get(b.Side.TOP),_=C.get(b.Side.TOP),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)){if(M.y-_.y<0){if(Math.abs(M.x-_.x)>(E.bounds.width+T.standardDistance)/2)return{source:b.Side.TOP,target:b.Side.TOP}}else if(Math.abs(M.x-_.x)>C.bounds.width/2)return{source:b.Side.TOP,target:b.Side.TOP}}if(M=E.get(b.Side.RIGHT),_=C.get(b.Side.RIGHT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)){if(M.x-_.x>0){if(Math.abs(M.y-_.y)>(E.bounds.height+T.standardDistance)/2)return{source:b.Side.RIGHT,target:b.Side.RIGHT}}else if(Math.abs(M.y-_.y)>C.bounds.height/2)return{source:b.Side.RIGHT,target:b.Side.RIGHT}}return M=E.get(b.Side.TOP),_=C.get(b.Side.RIGHT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.TOP,target:b.Side.RIGHT}:(_=C.get(b.Side.LEFT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.TOP,target:b.Side.LEFT}:(M=E.get(b.Side.BOTTOM),_=C.get(b.Side.RIGHT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.BOTTOM,target:b.Side.RIGHT}:(_=C.get(b.Side.LEFT),!f.Bounds.includes(C.bounds,M)&&!f.Bounds.includes(E.bounds,_)?{source:b.Side.BOTTOM,target:b.Side.LEFT}:{source:b.Side.RIGHT,target:b.Side.BOTTOM})))}}return PL.ManhattanEdgeRouter=m,m.KIND="manhattan",PL}var kbt;function jwt(){if(kbt)return gg;kbt=1;var f=gg&&gg.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h,b,w;Object.defineProperty(gg,"__esModule",{value:!0}),gg.ManhattanEllipticAnchor=gg.ManhattanDiamondAnchor=gg.ManhattanRectangularAnchor=void 0;const m=Ac(),P=PS(),g=MS(),E=r2e(),C=Zt();let T=h=class{get kind(){return h.KIND}getAnchor(O,j,k){const x=O.bounds;if(x.width<=0||x.height<=0)return x;const R={x:x.x-k,y:x.y-k,width:x.width+2*k,height:x.height+2*k};return j.x>=R.x&&R.x+R.width>=j.x?j.y=R.y&&R.y+R.height>=j.y?j.x=R.x&&j.x<=R.x+R.width?R.x+.5*R.width>=j.x?($=new P.PointToPointLine(j,{x:j.x,y:H.y}),j.y=R.y&&j.y<=R.y+R.height&&(R.y+.5*R.height>=j.y?($=new P.PointToPointLine(j,{x:H.x,y:j.y}),j.x=R.x&&R.x+R.width>=j.x){$+=F.x;const re=.5*R.height*Math.sqrt(1-F.x*F.x/(.25*R.width*R.width));F.y<0?W-=re:W+=re}else if(j.y>=R.y&&R.y+R.height>=j.y){W+=F.y;const re=.5*R.width*Math.sqrt(1-F.y*F.y/(.25*R.height*R.height));F.x<0?$-=re:$+=re}return{x:$,y:W}}};return gg.ManhattanEllipticAnchor=_,_.KIND=E.ManhattanEdgeRouter.KIND+":"+g.ELLIPTIC_ANCHOR_KIND,gg.ManhattanEllipticAnchor=_=w=f([(0,C.injectable)()],_),gg}var nS={},Rbt;function Awt(){if(Rbt)return nS;Rbt=1;var f=nS&&nS.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(nS,"__esModule",{value:!0}),nS.RoutableView=void 0;const h=Zt(),b=Ma();let w=class{isVisible(P,g,E){if(E.targetKind==="hidden"||g.length===0)return!0;const C=(0,b.getAbsoluteRouteBounds)(P,g),T=P.root.canvasBounds;return C.x<=T.width&&C.x+C.width>=0&&C.y<=T.height&&C.y+C.height>=0}};return nS.RoutableView=w,nS.RoutableView=w=f([(0,h.injectable)()],w),nS}var Pa={},py={},xbt;function Owt(){if(xbt)return py;xbt=1;var f=py&&py.__decorate||function(g,E,C,T){var M=arguments.length,_=M<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,C):T,I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")_=Reflect.decorate(g,E,C,T);else for(var O=g.length-1;O>=0;O--)(I=g[O])&&(_=(M<3?I(_):M>3?I(E,C,_):I(E,C))||_);return M>3&&_&&Object.defineProperty(E,C,_),_},h=py&&py.__metadata||function(g,E){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(g,E)};Object.defineProperty(py,"__esModule",{value:!0}),py.ModelRequestCommand=void 0;const b=Zt(),w=Qn(),m=Ca();let P=class extends m.SystemCommand{execute(E){const C=this.retrieveResult(E);return this.actionDispatcher.dispatch(C),{model:E.root,modelChanged:!1}}undo(E){return{model:E.root,modelChanged:!1}}redo(E){return{model:E.root,modelChanged:!1}}};return py.ModelRequestCommand=P,f([(0,b.inject)(w.TYPES.IActionDispatcher),h("design:type",Object)],P.prototype,"actionDispatcher",void 0),py.ModelRequestCommand=P=f([(0,b.injectable)()],P),py}var pm={},Lbt;function o2e(){if(Lbt)return pm;Lbt=1;var f=pm&&pm.__decorate||function(x,R,H,F){var $=arguments.length,W=$<3?R:F===null?F=Object.getOwnPropertyDescriptor(R,H):F,re;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")W=Reflect.decorate(x,R,H,F);else for(var ae=x.length-1;ae>=0;ae--)(re=x[ae])&&(W=($<3?re(W):$>3?re(R,H,W):re(R,H))||W);return $>3&&W&&Object.defineProperty(R,H,W),W},h=pm&&pm.__metadata||function(x,R){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(x,R)};Object.defineProperty(pm,"__esModule",{value:!0}),pm.findViewportScrollbar=pm.ScrollMouseListener=void 0;const b=Zt(),w=jc(),m=Ac(),P=Oc(),g=Pp(),E=Qh(),C=V3(),T=SS(),M=Ma(),_=t2e(),I=My(),O=Qn();class j extends g.MouseListener{constructor(){super(...arguments),this.scrollbarMouseDownDelay=200}mouseDown(R,H){if((0,E.findParentByFeature)(R,T.isMoveable)===void 0&&!(R instanceof M.SRoutingHandleImpl)){const $=(0,E.findParentByFeature)(R,C.isViewport);if($){if(this.lastScrollPosition={x:H.pageX,y:H.pageY},this.scrollbar=this.getScrollbar(H),this.scrollbar)return window.clearTimeout(this.scrollbarMouseDownTimeout),this.moveScrollBar($,H,this.scrollbar,!0).map(W=>new Promise(re=>{this.scrollbarMouseDownTimeout=window.setTimeout(()=>re(W),this.scrollbarMouseDownDelay)}))}else this.lastScrollPosition=void 0,this.scrollbar=void 0}return[]}mouseMove(R,H){if(H.buttons===0)return this.mouseUp(R,H);if(this.scrollbar){window.clearTimeout(this.scrollbarMouseDownTimeout);const F=(0,E.findParentByFeature)(R,C.isViewport);if(F)return this.moveScrollBar(F,H,this.scrollbar)}if(this.lastScrollPosition){const F=(0,E.findParentByFeature)(R,C.isViewport);if(F)return this.dragCanvas(F,H,this.lastScrollPosition)}return[]}mouseEnter(R,H){return R instanceof P.SModelRootImpl&&H.buttons===0&&this.mouseUp(R,H),[]}mouseUp(R,H){return this.lastScrollPosition=void 0,this.scrollbar=void 0,[]}doubleClick(R,H){if((0,E.findParentByFeature)(R,C.isViewport)){const $=this.getScrollbar(H);if($){window.clearTimeout(this.scrollbarMouseDownTimeout);const W=this.findClickTarget($,H);let re;if(W&&W.id.startsWith("horizontal-projection:")?re=W.id.substring(22):W&&W.id.startsWith("vertical-projection:")&&(re=W.id.substring(20)),re)return[w.CenterAction.create([re],{animate:!0,retainZoom:!0})]}}return[]}dragCanvas(R,H,F){let $=(H.pageX-F.x)/R.zoom;($>0&&(0,m.almostEquals)(R.scroll.x,this.viewerOptions.horizontalScrollLimits.min)||$<0&&(0,m.almostEquals)(R.scroll.x,this.viewerOptions.horizontalScrollLimits.max-R.canvasBounds.width/R.zoom))&&($=0);let W=(H.pageY-F.y)/R.zoom;if((W>0&&(0,m.almostEquals)(R.scroll.y,this.viewerOptions.verticalScrollLimits.min)||W<0&&(0,m.almostEquals)(R.scroll.y,this.viewerOptions.verticalScrollLimits.max-R.canvasBounds.height/R.zoom))&&(W=0),$===0&&W===0)return[];const re={scroll:{x:R.scroll.x-$,y:R.scroll.y-W},zoom:R.zoom};return this.lastScrollPosition={x:H.pageX,y:H.pageY},[w.SetViewportAction.create(R.id,re,{animate:!1})]}moveScrollBar(R,H,F,$=!1){const W=(0,_.getModelBounds)(R);if(!W||R.zoom<=0)return[];const re=F.getBoundingClientRect();let ae;if(this.getScrollbarOrientation(F)==="horizontal"){if(re.width<=0)return[];const ce=R.canvasBounds.width/(R.zoom*W.width)*re.width;let J=H.clientX-re.x-ce/2;if(J<0?J=0:J>re.width-ce&&(J=re.width-ce),ae={x:W.x+J/re.width*W.width,y:R.scroll.y},ae.xthis.viewerOptions.horizontalScrollLimits.max-R.canvasBounds.width/R.zoom&&(ae.x=this.viewerOptions.horizontalScrollLimits.max-R.canvasBounds.width/R.zoom),(0,m.almostEquals)(ae.x,R.scroll.x))return[]}else{if(re.height<=0)return[];const ce=R.canvasBounds.height/(R.zoom*W.height)*re.height;let J=H.clientY-re.y-ce/2;if(J<0?J=0:J>re.height-ce&&(J=re.height-ce),ae={x:R.scroll.x,y:W.y+J/re.height*W.height},ae.ythis.viewerOptions.verticalScrollLimits.max-R.canvasBounds.height/R.zoom&&(ae.y=this.viewerOptions.verticalScrollLimits.max-R.canvasBounds.height/R.zoom),(0,m.almostEquals)(ae.y,R.scroll.y))return[]}return[w.SetViewportAction.create(R.id,{scroll:ae,zoom:R.zoom},{animate:$})]}getScrollbar(R){return k(R)}getScrollbarOrientation(R){return R.classList.contains("horizontal")?"horizontal":"vertical"}findClickTarget(R,H){const F=Array.from(R.children).filter($=>$.id&&$.classList.contains("sprotty-projection")&&(0,I.hitsMouseEvent)($,H));if(F.length>0)return F[F.length-1]}}pm.ScrollMouseListener=j,f([(0,b.inject)(O.TYPES.ViewerOptions),h("design:type",Object)],j.prototype,"viewerOptions",void 0);function k(x){let R=x.target;for(;R;){if(R.classList&&R.classList.contains("sprotty-projection-bar"))return R;R=R.parentElement}}return pm.findViewportScrollbar=k,pm}var Nbt;function Dwt(){if(Nbt)return Pa;Nbt=1;var f=Pa&&Pa.__decorate||function(ve,me,ke,tt){var De=arguments.length,ct=De<3?me:tt===null?tt=Object.getOwnPropertyDescriptor(me,ke):tt,Z;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ct=Reflect.decorate(ve,me,ke,tt);else for(var Nt=ve.length-1;Nt>=0;Nt--)(Z=ve[Nt])&&(ct=(De<3?Z(ct):De>3?Z(me,ke,ct):Z(me,ke))||ct);return De>3&&ct&&Object.defineProperty(me,ke,ct),ct},h=Pa&&Pa.__metadata||function(ve,me){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ve,me)},b=Pa&&Pa.__param||function(ve,me){return function(ke,tt){me(ke,tt,ve)}};Object.defineProperty(Pa,"__esModule",{value:!0}),Pa.SelectKeyboardListener=Pa.GetSelectionCommand=Pa.SelectMouseListener=Pa.SelectAllCommand=Pa.SelectCommand=void 0;const w=Zt(),m=jc(),P=Ca(),g=Owt(),E=Oc(),C=Qh(),T=Qn(),M=H3(),_=Pp(),I=mh(),O=My(),j=_A(),k=z3(),x=bJ(),R=swt(),H=vJ(),F=Ma(),$=Ma(),W=o2e(),re=Rb();let ae=class extends P.Command{constructor(me){super(),this.action=me,this.selected=[],this.deselected=[]}execute(me){const ke=me.root;return this.action.selectedElementsIDs.forEach(tt=>{const De=ke.index.getById(tt);De instanceof E.SChildElementImpl&&(0,re.isSelectable)(De)&&this.selected.push(De)}),this.action.deselectedElementsIDs.forEach(tt=>{const De=ke.index.getById(tt);De instanceof E.SChildElementImpl&&(0,re.isSelectable)(De)&&this.deselected.push(De)}),this.redo(me)}undo(me){for(const ke of this.selected)ke.selected=!1;for(const ke of this.deselected)ke.selected=!0;return me.root}redo(me){for(const ke of this.deselected)ke.selected=!1;for(const ke of this.selected)ke.selected=!0;return me.root}};Pa.SelectCommand=ae,ae.KIND=m.SelectAction.KIND,Pa.SelectCommand=ae=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.Action)),h("design:paramtypes",[Object])],ae);let ce=class extends P.Command{constructor(me){super(),this.action=me,this.previousSelection={}}execute(me){return this.selectAll(me.root,this.action.select),me.root}selectAll(me,ke){(0,re.isSelectable)(me)&&(this.previousSelection[me.id]=me.selected,me.selected=ke);for(const tt of me.children)this.selectAll(tt,ke)}undo(me){const ke=me.root.index;return Object.keys(this.previousSelection).forEach(tt=>{const De=ke.getById(tt);De!==void 0&&(0,re.isSelectable)(De)&&(De.selected=this.previousSelection[tt])}),me.root}redo(me){return this.selectAll(me.root,this.action.select),me.root}};Pa.SelectAllCommand=ce,ce.KIND=m.SelectAllAction.KIND,Pa.SelectAllCommand=ce=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.Action)),h("design:paramtypes",[Object])],ce);class J extends _.MouseListener{constructor(){super(...arguments),this.wasSelected=!1,this.hasDragged=!1,this.isMouseDown=!1}mouseDown(me,ke){if(ke.button!==0)return[];this.isMouseDown=!0;const tt=this.handleButton(me,ke);if(tt)return tt;const De=(0,C.findParentByFeature)(me,re.isSelectable);if((De!==void 0||me instanceof E.SModelRootImpl)&&(this.hasDragged=!1),De!==void 0){let ct=[];if((0,O.isCtrlOrCmd)(ke)||(ct=this.collectElementsToDeselect(me,De)),De.selected){if((0,O.isCtrlOrCmd)(ke))return this.wasSelected=!1,this.handleDeselectTarget(De,ke);this.wasSelected=!0}else return this.wasSelected=!1,this.handleSelectTarget(De,ct,ke)}return[]}collectElementsToDeselect(me,ke){return(0,j.toArray)(me.root.index.all().filter(tt=>(0,re.isSelectable)(tt)&&tt.selected&&!(ke instanceof F.SRoutingHandleImpl&&tt===ke.parent)))}handleButton(me,ke){if(this.buttonHandlerRegistry!==void 0&&me instanceof R.SButtonImpl&&me.enabled){const tt=this.buttonHandlerRegistry.get(me.type);if(tt!==void 0)return tt.buttonPressed(me)}}handleSelectTarget(me,ke,tt){const De=[];De.push(m.SelectAction.create({selectedElementsIDs:[me.id],deselectedElementsIDs:ke.map(Z=>Z.id)})),De.push(m.BringToFrontAction.create([me.id]));const ct=ke.filter(Z=>Z instanceof $.SRoutableElementImpl).map(Z=>Z.id);return me instanceof $.SRoutableElementImpl?De.push(H.SwitchEditModeAction.create({elementsToActivate:[me.id],elementsToDeactivate:ct})):ct.length>0&&De.push(H.SwitchEditModeAction.create({elementsToDeactivate:ct})),De}handleDeselectTarget(me,ke){const tt=[];return tt.push(m.SelectAction.create({selectedElementsIDs:[],deselectedElementsIDs:[me.id]})),me instanceof $.SRoutableElementImpl&&tt.push(H.SwitchEditModeAction.create({elementsToDeactivate:[me.id]})),tt}handleDeselectAll(me,ke){const tt=[];tt.push(m.SelectAction.create({selectedElementsIDs:[],deselectedElementsIDs:me.map(ct=>ct.id)}));const De=me.filter(ct=>ct instanceof $.SRoutableElementImpl).map(ct=>ct.id);return De.length>0&&tt.push(H.SwitchEditModeAction.create({elementsToDeactivate:De})),tt}mouseMove(me,ke){return this.hasDragged=this.isMouseDown,[]}mouseUp(me,ke){if(ke.button===0&&!this.hasDragged){const tt=(0,C.findParentByFeature)(me,re.isSelectable);if(tt!==void 0){if(this.wasSelected)return[m.SelectAction.create({selectedElementsIDs:[tt.id],deselectedElementsIDs:[]})]}else if(me instanceof E.SModelRootImpl&&!(0,W.findViewportScrollbar)(ke)||!(me instanceof E.SModelRootImpl))return this.handleDeselectAll(this.collectElementsToDeselect(me,void 0),ke)}return this.isMouseDown=!1,this.hasDragged=!1,[]}decorate(me,ke){const tt=(0,C.findParentByFeature)(ke,re.isSelectable);return tt!==void 0&&(0,I.setClass)(me,"selected",tt.selected),me}}Pa.SelectMouseListener=J,f([(0,w.inject)(x.ButtonHandlerRegistry),(0,w.optional)(),h("design:type",x.ButtonHandlerRegistry)],J.prototype,"buttonHandlerRegistry",void 0);let te=class extends g.ModelRequestCommand{constructor(me){super(),this.action=me,this.previousSelection={}}retrieveResult(me){const ke=me.root.index.all().filter(tt=>(0,re.isSelectable)(tt)&&tt.selected).map(tt=>tt.id);return m.SelectionResult.create((0,j.toArray)(ke),this.action.requestId)}};Pa.GetSelectionCommand=te,te.KIND=m.GetSelectionAction.KIND,Pa.GetSelectionCommand=te=f([(0,w.injectable)(),b(0,(0,w.inject)(T.TYPES.Action)),h("design:paramtypes",[Object])],te);class fe extends M.KeyListener{keyDown(me,ke){return(0,k.matchesKeystroke)(ke,"KeyA","ctrlCmd")?[m.SelectAllAction.create()]:[]}}return Pa.SelectKeyboardListener=fe,Pa}var ML={},Fbt;function kwt(){if(Fbt)return ML;Fbt=1,Object.defineProperty(ML,"__esModule",{value:!0}),ML.UndoRedoKeyListener=void 0;const f=jc(),h=z3(),b=H3(),w=My();class m extends b.KeyListener{keyDown(g,E){return(0,h.matchesKeystroke)(E,"KeyZ","ctrlCmd")?[f.UndoAction.create()]:(0,h.matchesKeystroke)(E,"KeyZ","ctrlCmd","shift")||!(0,w.isMac)()&&(0,h.matchesKeystroke)(E,"KeyY","ctrlCmd")?[f.RedoAction.create()]:[]}}return ML.UndoRedoKeyListener=m,ML}var E3={},Bbt;function c2e(){if(Bbt)return E3;Bbt=1,Object.defineProperty(E3,"__esModule",{value:!0}),E3.applyMatches=E3.ModelMatcher=E3.forEachMatch=void 0;const f=Oc(),h=Sp();function b(P,g){Object.keys(P).forEach(E=>g(E,P[E]))}E3.forEachMatch=b;class w{match(g,E){const C={};return this.matchLeft(g,C),this.matchRight(E,C),C}matchLeft(g,E,C){let T=E[g.id];if(T!==void 0?(T.left=g,T.leftParentId=C):(T={left:g,leftParentId:C},E[g.id]=T),(0,f.isParent)(g))for(const M of g.children)this.matchLeft(M,E,g.id)}matchRight(g,E,C){let T=E[g.id];if(T!==void 0?(T.right=g,T.rightParentId=C):(T={right:g,rightParentId:C},E[g.id]=T),(0,f.isParent)(g))for(const M of g.children)this.matchRight(M,E,g.id)}}E3.ModelMatcher=w;function m(P,g,E){P instanceof f.SModelRootImpl?E=P.index:E===void 0&&(E=new h.SModelIndex,E.add(P));for(const C of g){let T=!1;if(C.left!==void 0&&C.leftParentId!==void 0){const M=E.getById(C.leftParentId);if(M!==void 0&&M.children!==void 0){const _=M.children.indexOf(C.left);_>=0&&(C.right!==void 0&&C.leftParentId===C.rightParentId?(M.children.splice(_,1,C.right),T=!0):M.children.splice(_,1)),E.remove(C.left)}}if(!T&&C.right!==void 0&&C.rightParentId!==void 0){const M=E.getById(C.rightParentId);M!==void 0&&(M.children===void 0&&(M.children=[]),M.children.push(C.right))}}}return E3.applyMatches=m,E3}var yp={},CL={},$bt;function SUt(){if($bt)return CL;$bt=1,Object.defineProperty(CL,"__esModule",{value:!0}),CL.ResizeAnimation=void 0;const f=SA();class h extends f.Animation{constructor(w,m,P,g=!1){super(P),this.model=w,this.elementResizes=m,this.reverse=g}tween(w){return this.elementResizes.forEach(m=>{const P=m.element,g=this.reverse?{width:(1-w)*m.toDimension.width+w*m.fromDimension.width,height:(1-w)*m.toDimension.height+w*m.fromDimension.height}:{width:(1-w)*m.fromDimension.width+w*m.toDimension.width,height:(1-w)*m.fromDimension.height+w*m.toDimension.height};P.bounds={x:P.bounds.x,y:P.bounds.y,width:g.width,height:g.height}}),this.model}}return CL.ResizeAnimation=h,CL}var Kbt;function s2e(){if(Kbt)return yp;Kbt=1;var f=yp&&yp.__decorate||function(ce,J,te,fe){var ve=arguments.length,me=ve<3?J:fe===null?fe=Object.getOwnPropertyDescriptor(J,te):fe,ke;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")me=Reflect.decorate(ce,J,te,fe);else for(var tt=ce.length-1;tt>=0;tt--)(ke=ce[tt])&&(me=(ve<3?ke(me):ve>3?ke(J,te,me):ke(J,te))||me);return ve>3&&me&&Object.defineProperty(J,te,me),me},h=yp&&yp.__metadata||function(ce,J){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ce,J)},b=yp&&yp.__param||function(ce,J){return function(te,fe){J(te,fe,ce)}};Object.defineProperty(yp,"__esModule",{value:!0}),yp.UpdateModelCommand=void 0;const w=Zt(),m=jc(),P=Ac(),g=SA(),E=Ca(),C=Qye(),T=Oc(),M=yJ(),_=rN(),I=SS(),O=Xs(),j=Gye(),k=Rb(),x=c2e(),R=SUt(),H=Qn(),F=V3(),$=Iy(),W=Ma(),re=Qh();let ae=class extends E.Command{constructor(J){super(),this.action=J}execute(J){let te;return this.action.newRoot!==void 0?te=J.modelFactory.createRoot(this.action.newRoot):(te=J.modelFactory.createRoot(J.root),this.action.matches!==void 0&&this.applyMatches(te,this.action.matches,J)),this.oldRoot=J.root,this.newRoot=te,this.performUpdate(this.oldRoot,this.newRoot,J)}performUpdate(J,te,fe){if((this.action.animate===void 0||this.action.animate)&&J.id===te.id){let ve;this.action.matches===void 0?ve=new x.ModelMatcher().match(J,te):ve=this.convertToMatchResult(this.action.matches,J,te);const me=this.computeAnimation(te,ve,fe);return me instanceof g.Animation?me.start():me}else return J.type===te.type&&P.Dimension.isValid(J.canvasBounds)&&(te.canvasBounds=J.canvasBounds),(0,F.isViewport)(J)&&(0,F.isViewport)(te)&&(te.zoom=J.zoom,te.scroll=J.scroll),te}applyMatches(J,te,fe){const ve=J.index;for(const me of te)if(me.left!==void 0){const ke=ve.getById(me.left.id);ke instanceof T.SChildElementImpl&&ke.parent.remove(ke)}for(const me of te)if(me.right!==void 0){const ke=fe.modelFactory.createElement(me.right);let tt;me.rightParentId!==void 0&&(tt=ve.getById(me.rightParentId)),tt instanceof T.SParentElementImpl?tt.add(ke):J.add(ke)}}convertToMatchResult(J,te,fe){const ve={};for(const me of J){const ke={};let tt;me.left!==void 0&&(tt=me.left.id,ke.left=te.index.getById(tt),ke.leftParentId=me.leftParentId),me.right!==void 0&&(tt=me.right.id,ke.right=fe.index.getById(tt),ke.rightParentId=me.rightParentId),tt!==void 0&&(ve[tt]=ke)}return ve}computeAnimation(J,te,fe){const ve={fades:[]};(0,x.forEachMatch)(te,(ke,tt)=>{if(tt.left!==void 0&&tt.right!==void 0)this.updateElement(tt.left,tt.right,ve);else if(tt.right!==void 0){const De=tt.right;(0,_.isFadeable)(De)&&(De.opacity=0,ve.fades.push({element:De,type:"in"}))}else if(tt.left instanceof T.SChildElementImpl){const De=tt.left;if((0,_.isFadeable)(De)&&tt.leftParentId!==void 0&&!(0,re.containsSome)(J,De)){const ct=J.index.getById(tt.leftParentId);if(ct instanceof T.SParentElementImpl){const Z=fe.modelFactory.createElement(De);ct.add(Z),ve.fades.push({element:Z,type:"out"})}}}});const me=this.createAnimations(ve,J,fe);return me.length>=2?new g.CompoundAnimation(J,fe,me):me.length===1?me[0]:J}updateElement(J,te,fe){if((0,I.isLocateable)(J)&&(0,I.isLocateable)(te)){const ve=J.position,me=te.position;(!(0,P.almostEquals)(ve.x,me.x)||!(0,P.almostEquals)(ve.y,me.y))&&(fe.moves===void 0&&(fe.moves=[]),fe.moves.push({element:te,fromPosition:ve,toPosition:me}),te.position=ve)}(0,O.isSizeable)(J)&&(0,O.isSizeable)(te)&&(P.Dimension.isValid(te.bounds)?(!(0,P.almostEquals)(J.bounds.width,te.bounds.width)||!(0,P.almostEquals)(J.bounds.height,te.bounds.height))&&(fe.resizes===void 0&&(fe.resizes=[]),fe.resizes.push({element:te,fromDimension:{width:J.bounds.width,height:J.bounds.height},toDimension:{width:te.bounds.width,height:te.bounds.height}})):te.bounds={x:te.bounds.x,y:te.bounds.y,width:J.bounds.width,height:J.bounds.height}),J instanceof W.SRoutableElementImpl&&te instanceof W.SRoutableElementImpl&&this.edgeRouterRegistry&&(fe.edgeMementi===void 0&&(fe.edgeMementi=[]),fe.edgeMementi.push({edge:te,before:this.takeSnapshot(J),after:this.takeSnapshot(te)})),(0,k.isSelectable)(J)&&(0,k.isSelectable)(te)&&(te.selected=J.selected),J instanceof T.SModelRootImpl&&te instanceof T.SModelRootImpl&&(te.canvasBounds=J.canvasBounds),J instanceof j.ViewportRootElementImpl&&te instanceof j.ViewportRootElementImpl&&(te.scroll=J.scroll,te.zoom=J.zoom)}takeSnapshot(J){return this.edgeRouterRegistry.get(J.routerKind).takeSnapshot(J)}createAnimations(J,te,fe){const ve=[];if(J.fades.length>0&&ve.push(new C.FadeAnimation(te,J.fades,fe,!0)),J.moves!==void 0&&J.moves.length>0){const me=new Map;for(const ke of J.moves)me.set(ke.element.id,ke);ve.push(new M.MoveAnimation(te,me,fe,!1))}if(J.resizes!==void 0&&J.resizes.length>0){const me=new Map;for(const ke of J.resizes)me.set(ke.element.id,ke);ve.push(new R.ResizeAnimation(te,me,fe,!1))}return J.edgeMementi!==void 0&&J.edgeMementi.length>0&&ve.push(new M.MorphEdgesAnimation(te,J.edgeMementi,fe,!1)),ve}undo(J){return this.performUpdate(this.newRoot,this.oldRoot,J)}redo(J){return this.performUpdate(this.oldRoot,this.newRoot,J)}};return yp.UpdateModelCommand=ae,ae.KIND=m.UpdateModelAction.KIND,f([(0,w.inject)($.EdgeRouterRegistry),(0,w.optional)(),h("design:type",$.EdgeRouterRegistry)],ae.prototype,"edgeRouterRegistry",void 0),yp.UpdateModelCommand=ae=f([(0,w.injectable)(),b(0,(0,w.inject)(H.TYPES.Action)),h("design:paramtypes",[Object])],ae),yp}var Sl={},bh={},qbt;function _J(){if(qbt)return bh;qbt=1;var f=bh&&bh.__decorate||function(k,x,R,H){var F=arguments.length,$=F<3?x:H===null?H=Object.getOwnPropertyDescriptor(x,R):H,W;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")$=Reflect.decorate(k,x,R,H);else for(var re=k.length-1;re>=0;re--)(W=k[re])&&($=(F<3?W($):F>3?W(x,R,$):W(x,R))||$);return F>3&&$&&Object.defineProperty(x,R,$),$},h=bh&&bh.__metadata||function(k,x){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(k,x)},b=bh&&bh.__param||function(k,x){return function(R,H){x(R,H,k)}},w;Object.defineProperty(bh,"__esModule",{value:!0}),bh.ViewportAnimation=bh.GetViewportCommand=bh.SetViewportCommand=void 0;const m=Zt(),P=jc(),g=Ac(),E=Ca(),C=SA(),T=V3(),M=Qn(),_=Owt();let I=w=class extends E.MergeableCommand{constructor(x){super(),this.action=x,this.newViewport=x.newViewport}execute(x){const R=x.root,H=R.index.getById(this.action.elementId);if(H&&(0,T.isViewport)(H)){this.element=H,this.oldViewport={scroll:this.element.scroll,zoom:this.element.zoom};const{zoomLimits:F,horizontalScrollLimits:$,verticalScrollLimits:W}=this.viewerOptions;return this.newViewport=(0,T.limitViewport)(this.newViewport,R.canvasBounds,$,W,F),this.setViewport(H,this.oldViewport,this.newViewport,x)}return x.root}setViewport(x,R,H,F){if(x&&(0,T.isViewport)(x)){if(this.action.animate)return new j(x,R,H,F).start();x.scroll=H.scroll,x.zoom=H.zoom}return F.root}undo(x){return this.setViewport(this.element,this.newViewport,this.oldViewport,x)}redo(x){return this.setViewport(this.element,this.oldViewport,this.newViewport,x)}merge(x,R){return!this.action.animate&&x instanceof w&&this.element===x.element?(this.newViewport=x.newViewport,!0):!1}};bh.SetViewportCommand=I,I.KIND=P.SetViewportAction.KIND,f([(0,m.inject)(M.TYPES.ViewerOptions),h("design:type",Object)],I.prototype,"viewerOptions",void 0),bh.SetViewportCommand=I=w=f([(0,m.injectable)(),b(0,(0,m.inject)(M.TYPES.Action)),h("design:paramtypes",[Object])],I);let O=class extends _.ModelRequestCommand{constructor(x){super(),this.action=x}retrieveResult(x){const R=x.root;let H;return(0,T.isViewport)(R)?H={scroll:R.scroll,zoom:R.zoom}:H={scroll:g.Point.ORIGIN,zoom:1},P.ViewportResult.create(H,R.canvasBounds,this.action.requestId)}};bh.GetViewportCommand=O,O.KIND=P.GetViewportAction.KIND,bh.GetViewportCommand=O=f([b(0,(0,m.inject)(M.TYPES.Action)),h("design:paramtypes",[Object])],O);class j extends C.Animation{constructor(x,R,H,F){super(F),this.element=x,this.oldViewport=R,this.newViewport=H,this.context=F,this.zoomFactor=Math.log(H.zoom/R.zoom)}tween(x,R){return this.element.scroll={x:(1-x)*this.oldViewport.scroll.x+x*this.newViewport.scroll.x,y:(1-x)*this.oldViewport.scroll.y+x*this.newViewport.scroll.y},this.element.zoom=this.oldViewport.zoom*Math.exp(x*this.zoomFactor),R.root}}return bh.ViewportAnimation=j,bh}var Hbt;function u2e(){if(Hbt)return Sl;Hbt=1;var f=Sl&&Sl.__decorate||function(F,$,W,re){var ae=arguments.length,ce=ae<3?$:re===null?re=Object.getOwnPropertyDescriptor($,W):re,J;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(F,$,W,re);else for(var te=F.length-1;te>=0;te--)(J=F[te])&&(ce=(ae<3?J(ce):ae>3?J($,W,ce):J($,W))||ce);return ae>3&&ce&&Object.defineProperty($,W,ce),ce},h=Sl&&Sl.__metadata||function(F,$){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(F,$)},b=Sl&&Sl.__param||function(F,$){return function(W,re){$(W,re,F)}};Object.defineProperty(Sl,"__esModule",{value:!0}),Sl.CenterKeyboardListener=Sl.FitToScreenCommand=Sl.CenterCommand=Sl.BoundsAwareViewportCommand=void 0;const w=jc(),m=Ac(),P=z3(),g=Oc(),E=Ca(),C=H3(),T=Xs(),M=Rb(),_=_J(),I=V3(),O=Zt(),j=Qn();let k=class extends E.Command{constructor($){super(),this.animate=$}initialize($){if(!(0,I.isViewport)($))return;this.oldViewport={scroll:$.scroll,zoom:$.zoom};const W=[];if(this.getElementIds().forEach(re=>{const ae=$.index.getById(re);ae&&(0,T.isBoundsAware)(ae)&&W.push(this.boundsInViewport(ae,ae.bounds,$))}),W.length===0&&$.index.all().forEach(re=>{(0,M.isSelectable)(re)&&re.selected&&(0,T.isBoundsAware)(re)&&W.push(this.boundsInViewport(re,re.bounds,$))}),W.length===0&&$.index.all().forEach(re=>{(0,T.isBoundsAware)(re)&&W.push(this.boundsInViewport(re,re.bounds,$))}),W.length!==0){const re=W.reduce((ae,ce)=>m.Bounds.combine(ae,ce));if(m.Dimension.isValid(re)){const ae=this.getNewViewport(re,$);if(ae){const{zoomLimits:ce,horizontalScrollLimits:J,verticalScrollLimits:te}=this.viewerOptions;this.newViewport=(0,I.limitViewport)(ae,$.canvasBounds,J,te,ce)}}}}boundsInViewport($,W,re){return $ instanceof g.SChildElementImpl&&$.parent!==re?this.boundsInViewport($.parent,$.parent.localToParent(W),re):W}execute($){return this.initialize($.root),this.redo($)}undo($){const W=$.root;if((0,I.isViewport)(W)&&this.newViewport!==void 0&&!this.equal(this.newViewport,this.oldViewport)){if(this.animate)return new _.ViewportAnimation(W,this.newViewport,this.oldViewport,$).start();W.scroll=this.oldViewport.scroll,W.zoom=this.oldViewport.zoom}return W}redo($){const W=$.root;if((0,I.isViewport)(W)&&this.newViewport!==void 0&&!this.equal(this.newViewport,this.oldViewport)){if(this.animate)return new _.ViewportAnimation(W,this.oldViewport,this.newViewport,$).start();W.scroll=this.newViewport.scroll,W.zoom=this.newViewport.zoom}return W}equal($,W){return(0,m.almostEquals)($.zoom,W.zoom)&&(0,m.almostEquals)($.scroll.x,W.scroll.x)&&(0,m.almostEquals)($.scroll.y,W.scroll.y)}};Sl.BoundsAwareViewportCommand=k,f([(0,O.inject)(j.TYPES.ViewerOptions),h("design:type",Object)],k.prototype,"viewerOptions",void 0),Sl.BoundsAwareViewportCommand=k=f([(0,O.injectable)(),h("design:paramtypes",[Boolean])],k);let x=class extends k{constructor($){super($.animate),this.action=$}getElementIds(){return this.action.elementIds}getNewViewport($,W){if(!m.Dimension.isValid(W.canvasBounds))return;let re=1;this.action.retainZoom&&(0,I.isViewport)(W)?re=W.zoom:this.action.zoomScale&&(re=this.action.zoomScale);const ae=m.Bounds.center($);return{scroll:{x:ae.x-.5*W.canvasBounds.width/re,y:ae.y-.5*W.canvasBounds.height/re},zoom:re}}};Sl.CenterCommand=x,x.KIND=w.CenterAction.KIND,Sl.CenterCommand=x=f([b(0,(0,O.inject)(j.TYPES.Action)),h("design:paramtypes",[Object])],x);let R=class extends k{constructor($){super($.animate),this.action=$}getElementIds(){return this.action.elementIds}getNewViewport($,W){if(!m.Dimension.isValid(W.canvasBounds))return;const re=m.Bounds.center($),ae=this.action.padding===void 0?0:2*this.action.padding;let ce=Math.min(W.canvasBounds.width/($.width+ae),W.canvasBounds.height/($.height+ae));return this.action.maxZoom!==void 0&&(ce=Math.min(ce,this.action.maxZoom)),ce===1/0&&(ce=1),{scroll:{x:re.x-.5*W.canvasBounds.width/ce,y:re.y-.5*W.canvasBounds.height/ce},zoom:ce}}};Sl.FitToScreenCommand=R,R.KIND=w.FitToScreenAction.KIND,Sl.FitToScreenCommand=R=f([b(0,(0,O.inject)(j.TYPES.Action)),h("design:paramtypes",[Object])],R);class H extends C.KeyListener{keyDown($,W){return(0,P.matchesKeystroke)(W,"KeyC","ctrlCmd","shift")?[w.CenterAction.create([])]:(0,P.matchesKeystroke)(W,"KeyF","ctrlCmd","shift")?[w.FitToScreenAction.create([])]:[]}}return Sl.CenterKeyboardListener=H,Sl}var _p={},zbt;function Rwt(){if(zbt)return _p;zbt=1;var f=_p&&_p.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=_p&&_p.__metadata||function(M,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(M,_)},b=_p&&_p.__param||function(M,_){return function(I,O){_(I,O,M)}};Object.defineProperty(_p,"__esModule",{value:!0}),_p.BringToFrontCommand=void 0;const w=Zt(),m=jc(),P=Qn(),g=Oc(),E=Ca(),C=Ma();let T=class extends E.Command{constructor(_){super(),this.action=_,this.selected=[]}execute(_){const I=_.root;return this.action.elementIDs.forEach(O=>{const j=I.index.getById(O);j instanceof C.SRoutableElementImpl&&(j.source&&this.addToSelection(j.source),j.target&&this.addToSelection(j.target)),j instanceof g.SChildElementImpl&&this.addToSelection(j),this.includeConnectedEdges(j)}),this.redo(_)}includeConnectedEdges(_){if(_ instanceof C.SConnectableElementImpl&&(_.incomingEdges.forEach(I=>this.addToSelection(I)),_.outgoingEdges.forEach(I=>this.addToSelection(I))),_ instanceof g.SParentElementImpl)for(const I of _.children)this.includeConnectedEdges(I)}addToSelection(_){this.selected.push({element:_,index:_.parent.children.indexOf(_)})}undo(_){for(let I=this.selected.length-1;I>=0;I--){const O=this.selected[I],j=O.element;j.parent.move(j,O.index)}return _.root}redo(_){for(let I=0;I{(0,P.configureCommand)({bind:M,isBound:I},b.SetBoundsCommand),(0,P.configureCommand)({bind:M,isBound:I},b.RequestBoundsCommand),M(w.HiddenBoundsUpdater).toSelf().inSingletonScope(),M(h.TYPES.HiddenVNodePostprocessor).toService(w.HiddenBoundsUpdater),M(h.TYPES.Layouter).to(m.Layouter).inSingletonScope(),M(h.TYPES.LayoutRegistry).to(m.LayoutRegistry).inSingletonScope(),(0,m.configureLayout)({bind:M,isBound:I},E.VBoxLayouter.KIND,E.VBoxLayouter),(0,m.configureLayout)({bind:M,isBound:I},g.HBoxLayouter.KIND,g.HBoxLayouter),(0,m.configureLayout)({bind:M,isBound:I},C.StackLayouter.KIND,C.StackLayouter)});return nX.default=T,nX}var iX={},Gbt;function Lwt(){if(Gbt)return iX;Gbt=1,Object.defineProperty(iX,"__esModule",{value:!0});const f=Zt(),h=bJ(),b=new f.ContainerModule(w=>{w(h.ButtonHandlerRegistry).toSelf().inSingletonScope()});return iX.default=b,iX}var rX={},Ubt;function Nwt(){if(Ubt)return rX;Ubt=1,Object.defineProperty(rX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Hye(),w=lwt(),m=new f.ContainerModule(P=>{P(w.CommandPalette).toSelf().inSingletonScope(),P(h.TYPES.IUIExtension).toService(w.CommandPalette),P(w.CommandPaletteKeyListener).toSelf().inSingletonScope(),P(h.TYPES.KeyListener).toService(w.CommandPaletteKeyListener),P(b.CommandPaletteActionProviderRegistry).toSelf().inSingletonScope(),P(h.TYPES.ICommandPaletteActionProviderRegistry).toService(b.CommandPaletteActionProviderRegistry)});return rX.default=m,rX}var oX={},Wbt;function Fwt(){if(Wbt)return oX;Wbt=1,Object.defineProperty(oX,"__esModule",{value:!0});const f=Zt(),h=zye(),b=fwt(),w=Qn(),m=new f.ContainerModule(P=>{P(w.TYPES.IContextMenuServiceProvider).toProvider(g=>()=>new Promise((E,C)=>{g.container.isBound(w.TYPES.IContextMenuService)?E(g.container.get(w.TYPES.IContextMenuService)):C()})),P(b.ContextMenuMouseListener).toSelf().inSingletonScope(),P(w.TYPES.MouseListener).toService(b.ContextMenuMouseListener),P(w.TYPES.IContextMenuProviderRegistry).to(h.ContextMenuProviderRegistry)});return oX.default=m,oX}var cX={},Ybt;function Bwt(){if(Ybt)return cX;Ybt=1,Object.defineProperty(cX,"__esModule",{value:!0});const f=iN(),h=Zt(),b=Zye(),w=ywt(),m=Qn(),P=_wt(),g=new h.ContainerModule((E,C,T)=>{(0,f.configureModelElement)({bind:E,isBound:T},"marker",b.SIssueMarkerImpl,w.IssueMarkerView),E(P.DecorationPlacer).toSelf().inSingletonScope(),E(m.TYPES.IVNodePostprocessor).toService(P.DecorationPlacer)});return cX.default=g,cX}var sX={},Xbt;function PUt(){if(Xbt)return sX;Xbt=1,Object.defineProperty(sX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=e2e(),w=new f.ContainerModule(m=>{m(b.IntersectionFinder).toSelf().inSingletonScope(),m(h.TYPES.IEdgeRoutePostprocessor).toService(b.IntersectionFinder)});return sX.default=w,sX}var uX={},Jbt;function MUt(){if(Jbt)return uX;Jbt=1,Object.defineProperty(uX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Pwt(),w=Mwt(),m=new f.ContainerModule(P=>{P(b.JunctionFinder).toSelf().inSingletonScope(),P(h.TYPES.IEdgeRoutePostprocessor).toService(b.JunctionFinder),P(w.JunctionPostProcessor).toSelf().inSingletonScope(),P(h.TYPES.IVNodePostprocessor).toService(w.JunctionPostProcessor),P(h.TYPES.HiddenVNodePostprocessor).toService(w.JunctionPostProcessor)});return uX.default=m,uX}var aX={},Qbt;function $wt(){if(Qbt)return aX;Qbt=1,Object.defineProperty(aX,"__esModule",{value:!0});const f=Zt(),h=bJ(),b=wwt(),w=new f.ContainerModule((m,P,g)=>{(0,h.configureButtonHandler)({bind:m,isBound:g},b.ExpandButtonHandler.TYPE,b.ExpandButtonHandler)});return aX.default=w,aX}var lX={},Zbt;function Kwt(){if(Zbt)return lX;Zbt=1,Object.defineProperty(lX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=mwt(),w=Jye(),m=kb(),P=new f.ContainerModule((g,E,C)=>{g(b.ExportSvgKeyListener).toSelf().inSingletonScope(),g(h.TYPES.KeyListener).toService(b.ExportSvgKeyListener),g(b.ExportSvgPostprocessor).toSelf().inSingletonScope(),g(h.TYPES.HiddenVNodePostprocessor).toService(b.ExportSvgPostprocessor),(0,m.configureCommand)({bind:g,isBound:C},b.ExportSvgCommand),g(h.TYPES.SvgExporter).to(w.SvgExporter).inSingletonScope()});return lX.default=P,lX}var fX={},e0t;function qwt(){if(e0t)return fX;e0t=1,Object.defineProperty(fX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Qye(),w=new f.ContainerModule(m=>{m(b.ElementFader).toSelf().inSingletonScope(),m(h.TYPES.IVNodePostprocessor).toService(b.ElementFader)});return fX.default=w,fX}var hX={},wy={},t0t;function CUt(){if(t0t)return wy;t0t=1;var f=wy&&wy.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M},h=wy&&wy.__metadata||function(P,g){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(P,g)};Object.defineProperty(wy,"__esModule",{value:!0}),wy.PopupPositionUpdater=void 0;const b=Zt(),w=Qn();let m=class{decorate(g,E){return g}postUpdate(){const g=document.getElementById(this.options.popupDiv);if(g!==null&&typeof window<"u"){const E=g.getBoundingClientRect();window.innerHeight{M(w.PopupPositionUpdater).toSelf().inSingletonScope(),M(h.TYPES.PopupVNodePostprocessor).toService(w.PopupPositionUpdater),M(b.HoverMouseListener).toSelf().inSingletonScope(),M(h.TYPES.MouseListener).toService(b.HoverMouseListener),M(b.PopupHoverMouseListener).toSelf().inSingletonScope(),M(h.TYPES.PopupMouseListener).toService(b.PopupHoverMouseListener),M(b.HoverKeyListener).toSelf().inSingletonScope(),M(h.TYPES.KeyListener).toService(b.HoverKeyListener),M(h.TYPES.HoverState).toConstantValue({mouseOverTimer:void 0,mouseOutTimer:void 0,popupOpen:!1,previousPopupElement:void 0}),M(b.ClosePopupActionHandler).toSelf().inSingletonScope();const O={bind:M,isBound:I};(0,m.configureCommand)(O,b.HoverFeedbackCommand),(0,m.configureCommand)(O,b.SetPopupModelCommand),(0,P.configureActionHandler)(O,b.SetPopupModelCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,g.FitToScreenCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,g.CenterCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,E.SetViewportCommand.KIND,b.ClosePopupActionHandler),(0,P.configureActionHandler)(O,C.MoveCommand.KIND,b.ClosePopupActionHandler)});return hX.default=T,hX}var dX={},i0t;function zwt(){if(i0t)return dX;i0t=1,Object.defineProperty(dX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=yJ(),w=kb(),m=new f.ContainerModule((P,g,E)=>{P(b.MoveMouseListener).toSelf().inSingletonScope(),P(h.TYPES.MouseListener).toService(b.MoveMouseListener),(0,w.configureCommand)({bind:P,isBound:E},b.MoveCommand),P(b.LocationPostprocessor).toSelf().inSingletonScope(),P(h.TYPES.IVNodePostprocessor).toService(b.LocationPostprocessor),P(h.TYPES.HiddenVNodePostprocessor).toService(b.LocationPostprocessor)});return dX.default=m,dX}var gX={},r0t;function Vwt(){if(r0t)return gX;r0t=1,Object.defineProperty(gX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Iwt(),w=new f.ContainerModule(m=>{m(b.OpenMouseListener).toSelf().inSingletonScope(),m(h.TYPES.MouseListener).toService(b.OpenMouseListener)});return gX.default=w,gX}var bX={},o0t;function Gwt(){if(o0t)return bX;o0t=1,Object.defineProperty(bX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=r2e(),w=wJ(),m=jwt(),P=n2e(),g=MS(),E=Iy(),C=i2e(),T=Twt(),M=kb(),_=new f.ContainerModule((I,O,j)=>{I(E.EdgeRouterRegistry).toSelf().inSingletonScope(),I(g.AnchorComputerRegistry).toSelf().inSingletonScope(),I(b.ManhattanEdgeRouter).toSelf().inSingletonScope(),I(h.TYPES.IEdgeRouter).toService(b.ManhattanEdgeRouter),I(m.ManhattanEllipticAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(m.ManhattanEllipticAnchor),I(m.ManhattanRectangularAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(m.ManhattanRectangularAnchor),I(m.ManhattanDiamondAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(m.ManhattanDiamondAnchor),I(w.PolylineEdgeRouter).toSelf().inSingletonScope(),I(h.TYPES.IEdgeRouter).toService(w.PolylineEdgeRouter),I(P.EllipseAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(P.EllipseAnchor),I(P.RectangleAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(P.RectangleAnchor),I(P.DiamondAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(P.DiamondAnchor),I(C.BezierEdgeRouter).toSelf().inSingletonScope(),I(h.TYPES.IEdgeRouter).toService(C.BezierEdgeRouter),I(T.BezierEllipseAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(T.BezierEllipseAnchor),I(T.BezierRectangleAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(T.BezierRectangleAnchor),I(T.BezierDiamondAnchor).toSelf().inSingletonScope(),I(h.TYPES.IAnchorComputer).toService(T.BezierDiamondAnchor),(0,M.configureCommand)({bind:I,isBound:j},C.AddRemoveBezierSegmentCommand)});return bX.default=_,bX}var pX={},c0t;function Uwt(){if(c0t)return pX;c0t=1,Object.defineProperty(pX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=Dwt(),w=kb(),m=new f.ContainerModule((P,g,E)=>{(0,w.configureCommand)({bind:P,isBound:E},b.SelectCommand),(0,w.configureCommand)({bind:P,isBound:E},b.SelectAllCommand),(0,w.configureCommand)({bind:P,isBound:E},b.GetSelectionCommand),P(b.SelectKeyboardListener).toSelf().inSingletonScope(),P(h.TYPES.KeyListener).toService(b.SelectKeyboardListener),P(b.SelectMouseListener).toSelf().inSingletonScope(),P(h.TYPES.MouseListener).toService(b.SelectMouseListener)});return pX.default=m,pX}var wX={},s0t;function Wwt(){if(s0t)return wX;s0t=1,Object.defineProperty(wX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=kwt(),w=new f.ContainerModule(m=>{m(b.UndoRedoKeyListener).toSelf().inSingletonScope(),m(h.TYPES.KeyListener).toService(b.UndoRedoKeyListener)});return wX.default=w,wX}var mX={},u0t;function Ywt(){if(u0t)return mX;u0t=1,Object.defineProperty(mX,"__esModule",{value:!0});const f=Zt(),h=kb(),b=s2e(),w=new f.ContainerModule((m,P,g)=>{(0,h.configureCommand)({bind:m,isBound:g},b.UpdateModelCommand)});return mX.default=w,mX}var vX={},a0t;function Xwt(){if(a0t)return vX;a0t=1,Object.defineProperty(vX,"__esModule",{value:!0});const f=Zt(),h=Qn(),b=u2e(),w=_J(),m=o2e(),P=Wye(),g=kb(),E=new f.ContainerModule((C,T,M)=>{(0,g.configureCommand)({bind:C,isBound:M},b.CenterCommand),(0,g.configureCommand)({bind:C,isBound:M},b.FitToScreenCommand),(0,g.configureCommand)({bind:C,isBound:M},w.SetViewportCommand),(0,g.configureCommand)({bind:C,isBound:M},w.GetViewportCommand),C(b.CenterKeyboardListener).toSelf().inSingletonScope(),C(h.TYPES.KeyListener).toService(b.CenterKeyboardListener),C(m.ScrollMouseListener).toSelf().inSingletonScope(),C(P.ZoomMouseListener).toSelf().inSingletonScope(),C(h.TYPES.MouseListener).toService(m.ScrollMouseListener),C(h.TYPES.MouseListener).toService(P.ZoomMouseListener)});return vX.default=E,vX}var yX={},l0t;function Jwt(){if(l0t)return yX;l0t=1,Object.defineProperty(yX,"__esModule",{value:!0});const f=Zt(),h=kb(),b=Rwt(),w=new f.ContainerModule((m,P,g)=>{(0,h.configureCommand)({bind:m,isBound:g},b.BringToFrontCommand)});return yX.default=w,yX}var Go={},f0t;function IUt(){if(f0t)return Go;f0t=1;var f=Go&&Go.__decorate||function(ce,J,te,fe){var ve=arguments.length,me=ve<3?J:fe===null?fe=Object.getOwnPropertyDescriptor(J,te):fe,ke;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")me=Reflect.decorate(ce,J,te,fe);else for(var tt=ce.length-1;tt>=0;tt--)(ke=ce[tt])&&(me=(ve<3?ke(me):ve>3?ke(J,te,me):ke(J,te))||me);return ve>3&&me&&Object.defineProperty(J,te,me),me},h=Go&&Go.__metadata||function(ce,J){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(ce,J)};Object.defineProperty(Go,"__esModule",{value:!0}),Go.SBezierControlHandleView=Go.SBezierCreateHandleView=Go.SCompartmentView=Go.SLabelView=Go.SRoutingHandleView=Go.BezierCurveEdgeView=Go.PolylineEdgeViewWithGapsOnIntersections=Go.JumpingPolylineEdgeView=Go.PolylineEdgeView=Go.SGraphView=void 0;const b=Zt(),w=Ac(),m=LM(),P=mh(),g=gJ(),E=e2e(),C=cN(),T=Ma(),M=Iy(),_=Awt(),I=Cy(),O=PS();let j=class{render(J,te){const fe=this.edgeRouterRegistry.routeAllChildren(J),ve=`scale(${J.zoom}) translate(${-J.scroll.x},${-J.scroll.y})`;return(0,I.svg)("svg",{"class-sprotty-graph":!0},(0,I.svg)("g",{transform:ve},te.renderChildren(J,{edgeRouting:fe})))}};Go.SGraphView=j,f([(0,b.inject)(M.EdgeRouterRegistry),h("design:type",M.EdgeRouterRegistry)],j.prototype,"edgeRouterRegistry",void 0),Go.SGraphView=j=f([(0,b.injectable)()],j);let k=class extends _.RoutableView{render(J,te,fe){const ve=this.edgeRouterRegistry.route(J,fe);return ve.length===0?this.renderDanglingEdge("Cannot compute route",J,te):this.isVisible(J,ve,te)?(0,I.svg)("g",{"class-sprotty-edge":!0,"class-mouseover":J.hoverFeedback},this.renderLine(J,ve,te,fe),this.renderAdditionals(J,ve,te),this.renderJunctionPoints(J,ve,te,fe),te.renderChildren(J,{route:ve})):J.children.length===0?void 0:(0,I.svg)("g",null,te.renderChildren(J,{route:ve}))}renderJunctionPoints(J,te,fe,ve){const ke=[];for(let tt=1;tt0)return(0,I.svg)("g",{"class-sprotty-junction":!0},ke)}renderLine(J,te,fe,ve){const me=te[0];let ke=`M ${me.x},${me.y}`;for(let tt=1;tt=Math.abs(te.slopeOrMax)}createGapPath(J,te){const fe=w.Point.shiftTowards(J,te.p1,this.skipOffsetBefore),ve=w.Point.shiftTowards(J,te.p2,this.skipOffsetAfter);return` L ${fe.x},${fe.y} M ${ve.x},${ve.y}`}};Go.PolylineEdgeViewWithGapsOnIntersections=R,Go.PolylineEdgeViewWithGapsOnIntersections=R=f([(0,b.injectable)()],R);let H=class extends _.RoutableView{render(J,te,fe){const ve=this.edgeRouterRegistry.route(J,fe);return ve.length===0?this.renderDanglingEdge("Cannot compute route",J,te):this.isVisible(J,ve,te)?(0,I.svg)("g",{"class-sprotty-edge":!0,"class-mouseover":J.hoverFeedback},this.renderLine(J,ve,te,fe),this.renderAdditionals(J,ve,te),te.renderChildren(J,{route:ve})):J.children.length===0?void 0:(0,I.svg)("g",null,te.renderChildren(J,{route:ve}))}renderLine(J,te,fe,ve){let me="";if(te.length>=4){me+=this.buildMainSegment(te);const ke=te.length-4;if(ke>0&&ke%3===0)for(let tt=4;tt{g(b.TYPES.ModelSourceProvider).toProvider(T=>()=>new Promise(M=>{M(T.container.get(b.TYPES.ModelSource))})),(0,h.configureCommand)({bind:g,isBound:C},w.CommitModelCommand),g(b.TYPES.IActionHandlerInitializer).toService(b.TYPES.ModelSource),g(m.ComputedBoundsApplicator).toSelf().inSingletonScope()});return _X.default=P,_X}var d0t;function TUt(){if(d0t)return IM;d0t=1;var f=IM&&IM.__importDefault||function(ae){return ae&&ae.__esModule?ae:{default:ae}};Object.defineProperty(IM,"__esModule",{value:!0}),IM.loadDefaultModules=void 0;const h=f(nwt()),b=f(Qwt()),w=f(xwt()),m=f(Lwt()),P=f(Nwt()),g=f(Fwt()),E=f(Bwt()),C=f(Rve()),T=pwt(),M=f($wt()),_=f(Kwt()),I=f(qwt()),O=f(Hwt()),j=f(zwt()),k=f(Vwt()),x=f(Gwt()),R=f(Uwt()),H=f(Wwt()),F=f(Ywt()),$=f(Xwt()),W=f(Jwt());function re(ae,ce){const J=[h.default,b.default,w.default,m.default,P.default,g.default,E.default,T.edgeEditModule,C.default,M.default,_.default,I.default,O.default,T.labelEditModule,T.labelEditUiModule,j.default,k.default,x.default,R.default,H.default,F.default,$.default,W.default];if(ce&&ce.exclude)for(const te of ce.exclude){const fe=J.indexOf(te);fe>=0&&J.splice(fe,1)}ae.load(...J)}return IM.loadDefaultModules=re,IM}var Ob={},EX={},g0t;function jUt(){if(g0t)return EX;g0t=1,Object.defineProperty(EX,"__esModule",{value:!0});const f=nN;function h(k){const x={},R=(W,re)=>{if(re!=="style"&&re!=="class"){const ae=E(k[re]);W?W[re]=ae:W={[re]:ae}}return W},H=Object.keys(k).reduce(R,null);H&&(x.attrs=H);const F=b(k);F&&(x.style=F);const $=w(k);return $&&(x.class=$),x}function b(k){const x=(R,H)=>{const F=H.split(":"),$=m(F[0].trim());if($){const W=F[1].replace("!important","").trim();R?R[$]=W:R={[$]:W}}return R};try{return k.style.split(";").reduce(x,null)}catch{return null}}function w(k){const x=(R,H)=>(H=H.trim(),H&&(R?R[H]=!0:R={[H]:!0}),R);try{return k.class.split(" ").reduce(x,null)}catch{return null}}function m(k){return k=k.replace(/-(\w)/g,function(H,F){return F.toUpperCase()}),`${k.charAt(0).toLowerCase()}${k.substring(1)}`}const P=new RegExp("&[a-z0-9#]+;","gi");let g=null;function E(k){return g||(g=document.createElement("div")),k.replace(P,x=>g===null?"":(g.innerHTML=x,g.textContent===null?"":g.textContent))}function C(k,x){let R=k,H=null;const F=[],$=W=>{const re=W.firstChild;re!==null&&(H=W),R=re};for(x(R,H),$(R);;){for(;R;)F.push(R),x(R,H),$(R);const W=F.pop();if(R=W||null,!F.length)break;if(H=F[F.length-1],R){const re=R.nextSibling;re==null&&(H=F[F.length-1]),R=re}}}let T=null;const M=new Map;let _=!1;function I(k,x){let R;switch(x!==null&&(R=M.get(x)),k?.nodeType){case 1:{if(R===void 0)return;R.children=R.children?R.children:[];const H=R.children,F=k.attributes,$={};for(let re=0;re0?F[F.length-1]:null;!_&&typeof $!="string"&&$!==null&&$.sel===void 0?$.text=$.text+H:F.push((0,f.vnode)(void 0,void 0,void 0,H,void 0)),_=!1}break}case 8:{_=!0;break}case 9:{T=(0,f.vnode)(void 0,void 0,[],void 0,void 0),M.set(k,T);break}}}function O(k){const x=k?.children;return typeof x>"u"?null:x.length===1&&typeof x[0]!="string"?x[0]:null}function j(k){var x,R;const H=new window.DOMParser;if(H===void 0||k===void 0||k==="")return null;const F=H.parseFromString(k,"application/xml");if(((x=F?.firstChild)===null||x===void 0?void 0:x.nodeName)==="parsererror"){const $=`${(R=F?.firstChild)===null||R===void 0?void 0:R.textContent}`;return(0,f.h)("parsererror",[$])}return _=!1,T=null,C(F,I),T===null?null:O(T)}return EX.default=j,EX}var as={},b0t;function Zwt(){if(b0t)return as;b0t=1,Object.defineProperty(as,"__esModule",{value:!0}),as.ForeignObjectElement=as.ForeignObjectElementImpl=as.ShapedPreRenderedElement=as.ShapedPreRenderedElementImpl=as.PreRenderedElement=as.PreRenderedElementImpl=as.HtmlRoot=as.HtmlRootImpl=as.RectangularPort=as.CircularPort=as.DiamondNode=as.RectangularNode=as.CircularNode=void 0;const f=Ac(),h=Oc(),b=Xs(),w=SS(),m=Rb(),P=MA(),g=MS();class E extends P.SNodeImpl{get anchorKind(){return g.ELLIPTIC_ANCHOR_KIND}}as.CircularNode=E;class C extends P.SNodeImpl{get anchorKind(){return g.RECTANGULAR_ANCHOR_KIND}}as.RectangularNode=C;class T extends P.SNodeImpl{get anchorKind(){return g.DIAMOND_ANCHOR_KIND}}as.DiamondNode=T;class M extends P.SPortImpl{get anchorKind(){return g.ELLIPTIC_ANCHOR_KIND}}as.CircularPort=M;class _ extends P.SPortImpl{get anchorKind(){return g.RECTANGULAR_ANCHOR_KIND}}as.RectangularPort=_;class I extends h.SModelRootImpl{constructor(){super(...arguments),this.classes=[]}}as.HtmlRootImpl=I,as.HtmlRoot=I;class O extends h.SChildElementImpl{}as.PreRenderedElementImpl=O,as.PreRenderedElement=O;class j extends O{constructor(){super(...arguments),this.position=f.Point.ORIGIN,this.size=f.Dimension.EMPTY,this.selected=!1,this.alignment=f.Point.ORIGIN}get bounds(){return{x:this.position.x,y:this.position.y,width:this.size.width,height:this.size.height}}set bounds(R){this.position={x:R.x,y:R.y},this.size={width:R.width,height:R.height}}}as.ShapedPreRenderedElementImpl=j,j.DEFAULT_FEATURES=[w.moveFeature,b.boundsFeature,m.selectFeature,b.alignFeature],as.ShapedPreRenderedElement=j;class k extends j{get bounds(){return f.Dimension.isValid(this.size)?{x:this.position.x,y:this.position.y,width:this.size.width,height:this.size.height}:(0,b.isBoundsAware)(this.parent)?{x:this.position.x,y:this.position.y,width:this.parent.bounds.width,height:this.parent.bounds.height}:f.Bounds.EMPTY}}return as.ForeignObjectElementImpl=k,as.ForeignObjectElement=k,as}var p0t;function AUt(){if(p0t)return Ob;p0t=1;var f=Ob&&Ob.__decorate||function(M,_,I,O){var j=arguments.length,k=j<3?_:O===null?O=Object.getOwnPropertyDescriptor(_,I):O,x;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(M,_,I,O);else for(var R=M.length-1;R>=0;R--)(x=M[R])&&(k=(j<3?x(k):j>3?x(_,I,k):x(_,I))||k);return j>3&&k&&Object.defineProperty(_,I,k),k},h=Ob&&Ob.__importDefault||function(M){return M&&M.__esModule?M:{default:M}};Object.defineProperty(Ob,"__esModule",{value:!0}),Ob.ForeignObjectView=Ob.PreRenderedView=void 0;const b=Cy(),w=Zt(),m=h(jUt()),P=mh(),g=gJ(),E=Zwt();let C=class extends g.ShapeView{render(_,I){if(_ instanceof E.ShapedPreRenderedElementImpl&&!this.isVisible(_,I))return;const O=(0,m.default)(_.code);if(O!==null)return this.correctNamespace(O),O}correctNamespace(_){(_.sel==="svg"||_.sel==="g")&&(0,P.setNamespace)(_,"http://www.w3.org/2000/svg")}};Ob.PreRenderedView=C,Ob.PreRenderedView=C=f([(0,w.injectable)()],C);let T=class{render(_,I){const O=(0,m.default)(_.code);if(O===null)return;const j=(0,b.svg)("g",null,(0,b.svg)("foreignObject",{requiredFeatures:"http://www.w3.org/TR/SVG11/feature#Extensibility",height:_.bounds.height,width:_.bounds.width,x:0,y:0},O),I.renderChildren(_));return(0,P.setAttr)(j,"class",_.type),(0,P.setNamespace)(O,_.namespace),j}};return Ob.ForeignObjectView=T,Ob.ForeignObjectView=T=f([(0,w.injectable)()],T),Ob}var iS={},w0t;function OUt(){if(w0t)return iS;w0t=1;var f=iS&&iS.__decorate||function(P,g,E,C){var T=arguments.length,M=T<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,E):C,_;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")M=Reflect.decorate(P,g,E,C);else for(var I=P.length-1;I>=0;I--)(_=P[I])&&(M=(T<3?_(M):T>3?_(g,E,M):_(g,E))||M);return T>3&&M&&Object.defineProperty(g,E,M),M};Object.defineProperty(iS,"__esModule",{value:!0}),iS.HtmlRootView=void 0;const h=Cy(),b=Zt(),w=mh();let m=class{render(g,E){const C=(0,h.html)("div",null,E.renderChildren(g));for(const T of g.classes)(0,w.setClass)(C,T,!0);return C}};return iS.HtmlRootView=m,iS.HtmlRootView=m=f([(0,b.injectable)()],m),iS}var Ep={},DX={exports:{}},DUt=DX.exports,m0t;function emt(){return m0t||(m0t=1,(function(f,h){(function(b,w){w()})(DUt,function(){function b(T,M){return typeof M>"u"?M={autoBom:!1}:typeof M!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),M={autoBom:!M}),M.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(T.type)?new Blob(["\uFEFF",T],{type:T.type}):T}function w(T,M,_){var I=new XMLHttpRequest;I.open("GET",T),I.responseType="blob",I.onload=function(){C(I.response,M,_)},I.onerror=function(){console.error("could not download file")},I.send()}function m(T){var M=new XMLHttpRequest;M.open("HEAD",T,!1);try{M.send()}catch{}return 200<=M.status&&299>=M.status}function P(T){try{T.dispatchEvent(new MouseEvent("click"))}catch{var M=document.createEvent("MouseEvents");M.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),T.dispatchEvent(M)}}var g=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof fS=="object"&&fS.global===fS?fS:void 0,E=g.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),C=g.saveAs||(typeof window!="object"||window!==g?function(){}:"download"in HTMLAnchorElement.prototype&&!E?function(T,M,_){var I=g.URL||g.webkitURL,O=document.createElement("a");M=M||T.name||"download",O.download=M,O.rel="noopener",typeof T=="string"?(O.href=T,O.origin===location.origin?P(O):m(O.href)?w(T,M,_):P(O,O.target="_blank")):(O.href=I.createObjectURL(T),setTimeout(function(){I.revokeObjectURL(O.href)},4e4),setTimeout(function(){P(O)},0))}:"msSaveOrOpenBlob"in navigator?function(T,M,_){if(M=M||T.name||"download",typeof T!="string")navigator.msSaveOrOpenBlob(b(T,_),M);else if(m(T))w(T,M,_);else{var I=document.createElement("a");I.href=T,I.target="_blank",setTimeout(function(){P(I)})}}:function(T,M,_,I){if(I=I||open("","_blank"),I&&(I.document.title=I.document.body.innerText="downloading..."),typeof T=="string")return w(T,M,_);var O=T.type==="application/octet-stream",j=/constructor/i.test(g.HTMLElement)||g.safari,k=/CriOS\/[\d]+/.test(navigator.userAgent);if((k||O&&j||E)&&typeof FileReader<"u"){var x=new FileReader;x.onloadend=function(){var F=x.result;F=k?F:F.replace(/^data:[^;]*;/,"data:attachment/file;"),I?I.location.href=F:location=F,I=null},x.readAsDataURL(T)}else{var R=g.URL||g.webkitURL,H=R.createObjectURL(T);I?I.location=H:location.href=H,I=null,setTimeout(function(){R.revokeObjectURL(H)},4e4)}});g.saveAs=C.saveAs=C,f.exports=C})})(DX)),DX.exports}var v0t;function tmt(){if(v0t)return Ep;v0t=1;var f=Ep&&Ep.__decorate||function(O,j,k,x){var R=arguments.length,H=R<3?j:x===null?x=Object.getOwnPropertyDescriptor(j,k):x,F;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,j,k,x);else for(var $=O.length-1;$>=0;$--)(F=O[$])&&(H=(R<3?F(H):R>3?F(j,k,H):F(j,k))||H);return R>3&&H&&Object.defineProperty(j,k,H),H},h=Ep&&Ep.__metadata||function(O,j){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(O,j)};Object.defineProperty(Ep,"__esModule",{value:!0}),Ep.DiagramServerProxy=Ep.ServerStatusAction=void 0;const b=emt(),w=Zt(),m=jc(),P=xye(),g=Qn(),E=$ye(),C=s2e(),T=CA();class M{constructor(){this.kind=M.KIND}}Ep.ServerStatusAction=M,M.KIND="serverStatus";const _="__receivedFromServer";let I=class extends T.ModelSource{constructor(){super(...arguments),this.currentRoot={type:"NONE",id:"ROOT"}}get model(){return this.currentRoot}initialize(j){super.initialize(j),j.register(m.ComputedBoundsAction.KIND,this),j.register(E.RequestBoundsCommand.KIND,this),j.register(m.RequestPopupModelAction.KIND,this),j.register(m.CollapseExpandAction.KIND,this),j.register(m.CollapseExpandAllAction.KIND,this),j.register(m.OpenAction.KIND,this),j.register(M.KIND,this),this.clientId||(this.clientId=this.viewerOptions.baseDiv)}handle(j){this.handleLocally(j)&&this.forwardToServer(j)}forwardToServer(j){const k={clientId:this.clientId,action:j};this.logger.log(this,"sending",k),this.sendMessage(k)}messageReceived(j){const k=typeof j=="string"?JSON.parse(j):j;(0,m.isActionMessage)(k)&&k.action?(!k.clientId||k.clientId===this.clientId)&&(k.action[_]=!0,this.logger.log(this,"receiving",k),this.actionDispatcher.dispatch(k.action).then(()=>{this.storeNewModel(k.action)})):this.logger.error(this,"received data is not an action message",k)}handleLocally(j){switch(this.storeNewModel(j),j.kind){case m.ComputedBoundsAction.KIND:return this.handleComputedBounds(j);case m.RequestModelAction.KIND:return this.handleRequestModel(j);case E.RequestBoundsCommand.KIND:return!1;case m.ExportSvgAction.KIND:return this.handleExportSvgAction(j);case M.KIND:return this.handleServerStateAction(j)}return!j[_]}storeNewModel(j){if(j.kind===P.SetModelCommand.KIND||j.kind===C.UpdateModelCommand.KIND||j.kind===E.RequestBoundsCommand.KIND){const k=j.newRoot;k&&(this.currentRoot=k,(j.kind===P.SetModelCommand.KIND||j.kind===C.UpdateModelCommand.KIND)&&(this.lastSubmittedModelType=k.type))}}handleRequestModel(j){const k=Object.assign({needsClientLayout:this.viewerOptions.needsClientLayout,needsServerLayout:this.viewerOptions.needsServerLayout},j.options),x=Object.assign(Object.assign({},j),{options:k});return this.forwardToServer(x),!1}handleComputedBounds(j){if(this.viewerOptions.needsServerLayout)return!0;{const k=this.currentRoot;return this.computedBoundsApplicator.apply(k,j),k.type===this.lastSubmittedModelType?this.actionDispatcher.dispatch(m.UpdateModelAction.create(k)):this.actionDispatcher.dispatch(m.SetModelAction.create(k)),this.lastSubmittedModelType=k.type,!1}}handleExportSvgAction(j){const k=new Blob([j.svg],{type:"text/plain;charset=utf-8"});return(0,b.saveAs)(k,"diagram.svg"),!1}handleServerStateAction(j){return!1}commitModel(j){const k=this.currentRoot;return this.currentRoot=j,k}};return Ep.DiagramServerProxy=I,f([(0,w.inject)(g.TYPES.ILogger),h("design:type",Object)],I.prototype,"logger",void 0),f([(0,w.inject)(T.ComputedBoundsApplicator),h("design:type",T.ComputedBoundsApplicator)],I.prototype,"computedBoundsApplicator",void 0),Ep.DiagramServerProxy=I=f([(0,w.injectable)()],I),Ep}var my={},y0t;function kUt(){if(y0t)return my;y0t=1;var f=my&&my.__decorate||function(I,O,j,k){var x=arguments.length,R=x<3?O:k===null?k=Object.getOwnPropertyDescriptor(O,j):k,H;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(I,O,j,k);else for(var F=I.length-1;F>=0;F--)(H=I[F])&&(R=(x<3?H(R):x>3?H(O,j,R):H(O,j))||R);return x>3&&R&&Object.defineProperty(O,j,R),R},h=my&&my.__metadata||function(I,O){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(I,O)};Object.defineProperty(my,"__esModule",{value:!0}),my.LocalModelSource=void 0;const b=emt(),w=Zt(),m=jc(),P=Sp(),g=LM(),E=Qn(),C=ES(),T=c2e(),M=CA();let _=class extends M.ModelSource{constructor(){super(...arguments),this.currentRoot=C.EMPTY_ROOT}get model(){return this.currentRoot}set model(O){this.setModel(O)}initialize(O){super.initialize(O),O.register(m.ComputedBoundsAction.KIND,this),O.register(m.RequestPopupModelAction.KIND,this)}setModel(O){return this.currentRoot=O,this.submitModel(O,!1)}commitModel(O){const j=this.currentRoot;return this.currentRoot=O,j}updateModel(O){return O===void 0?this.submitModel(this.currentRoot,!0):(this.currentRoot=O,this.submitModel(O,!0))}async getSelection(){const O=await this.actionDispatcher.request(P.GetSelectionAction.create()),j=[];return this.gatherSelectedElements(this.currentRoot,new Set(O.selectedElementsIDs),j),j}gatherSelectedElements(O,j,k){if(j.has(O.id)&&k.push(O),O.children)for(const x of O.children)this.gatherSelectedElements(x,j,k)}async getViewport(){const O=await this.actionDispatcher.request(P.GetViewportAction.create());return{scroll:O.viewport.scroll,zoom:O.viewport.zoom,canvasBounds:O.canvasBounds}}async submitModel(O,j,k){if(this.viewerOptions.needsClientLayout){const x=await this.actionDispatcher.request(m.RequestBoundsAction.create(O)),R=this.computedBoundsApplicator.apply(this.currentRoot,x);await this.doSubmitModel(O,j,k,R)}else await this.doSubmitModel(O,j,k)}async doSubmitModel(O,j,k,x){if(this.layoutEngine!==void 0)try{const H=this.layoutEngine.layout(O,x);H instanceof Promise?O=await H:H!==void 0&&(O=H)}catch(H){this.logger.error(this,H.toString(),H.stack)}const R=this.lastSubmittedModelType;if(this.lastSubmittedModelType=O.type,k&&k.kind===m.RequestModelAction.KIND&&k.requestId){const H=k;await this.actionDispatcher.dispatch(m.SetModelAction.create(O,H.requestId))}else if(j&&O.type===R){const H=Array.isArray(j)?j:O;await this.actionDispatcher.dispatch(m.UpdateModelAction.create(H,{animate:!0,cause:k}))}else await this.actionDispatcher.dispatch(m.SetModelAction.create(O))}applyMatches(O){const j=this.currentRoot;return(0,T.applyMatches)(j,O),this.submitModel(j,O)}addElements(O){const j=[];for(const k of O){const x=k;typeof x.element=="object"&&typeof x.parentId=="string"?j.push({right:x.element,rightParentId:x.parentId}):typeof x.id=="string"&&j.push({right:x,rightParentId:this.currentRoot.id})}return this.applyMatches(j)}removeElements(O){const j=[],k=new g.SModelIndex;k.add(this.currentRoot);for(const x of O){const R=x;if(R.elementId!==void 0&&R.parentId!==void 0){const H=k.getById(R.elementId);H!==void 0&&j.push({left:H,leftParentId:R.parentId})}else{const H=k.getById(R);H!==void 0&&j.push({left:H,leftParentId:this.currentRoot.id})}}return this.applyMatches(j)}handle(O){switch(O.kind){case m.RequestModelAction.KIND:this.handleRequestModel(O);break;case m.ComputedBoundsAction.KIND:this.computedBoundsApplicator.apply(this.currentRoot,O);break;case m.RequestPopupModelAction.KIND:this.handleRequestPopupModel(O);break;case m.ExportSvgAction.KIND:this.handleExportSvgAction(O);break}}handleRequestModel(O){this.submitModel(this.currentRoot,!1,O)}handleRequestPopupModel(O){if(this.popupModelProvider!==void 0){const j=(0,g.findElement)(this.currentRoot,O.elementId),k=this.popupModelProvider.getPopupModel(O,j);k!==void 0&&(k.canvasBounds=O.bounds,this.actionDispatcher.dispatch(m.SetPopupModelAction.create(k,O.requestId)))}}handleExportSvgAction(O){const j=new Blob([O.svg],{type:"text/plain;charset=utf-8"});(0,b.saveAs)(j,"diagram.svg")}};return my.LocalModelSource=_,f([(0,w.inject)(E.TYPES.ILogger),h("design:type",Object)],_.prototype,"logger",void 0),f([(0,w.inject)(M.ComputedBoundsApplicator),h("design:type",M.ComputedBoundsApplicator)],_.prototype,"computedBoundsApplicator",void 0),f([(0,w.inject)(E.TYPES.IPopupModelProvider),(0,w.optional)(),h("design:type",Object)],_.prototype,"popupModelProvider",void 0),f([(0,w.inject)(E.TYPES.IModelLayoutEngine),(0,w.optional)(),h("design:type",Object)],_.prototype,"layoutEngine",void 0),my.LocalModelSource=_=f([(0,w.injectable)()],_),my}var vy={},_0t;function RUt(){if(_0t)return vy;_0t=1;var f=vy&&vy.__decorate||function(E,C,T,M){var _=arguments.length,I=_<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,T):M,O;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")I=Reflect.decorate(E,C,T,M);else for(var j=E.length-1;j>=0;j--)(O=E[j])&&(I=(_<3?O(I):_>3?O(C,T,I):O(C,T))||I);return _>3&&I&&Object.defineProperty(C,T,I),I},h=vy&&vy.__metadata||function(E,C){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(E,C)};Object.defineProperty(vy,"__esModule",{value:!0}),vy.ForwardingLogger=void 0;const b=Zt(),w=jc(),m=Bye(),P=Qn();let g=class{error(C,T,...M){this.logLevel>=m.LogLevel.error&&this.forward(C,T,m.LogLevel.error,M)}warn(C,T,...M){this.logLevel>=m.LogLevel.warn&&this.forward(C,T,m.LogLevel.warn,M)}info(C,T,...M){this.logLevel>=m.LogLevel.info&&this.forward(C,T,m.LogLevel.info,M)}log(C,T,...M){if(this.logLevel>=m.LogLevel.log)try{const _=typeof C=="object"?C.constructor.name:String(C);console.log.apply(C,[_+": "+T,...M])}catch{}}forward(C,T,M,_){const I=new Date,O=w.LoggingAction.create({message:T,severity:m.LogLevel[M],time:I.toLocaleTimeString(),caller:typeof C=="object"?C.constructor.name:String(C),params:_.map(j=>JSON.stringify(j))});this.modelSourceProvider().then(j=>{try{j.handle(O)}catch(k){try{console.log.apply(C,[T,O,k])}catch{}}})}};return vy.ForwardingLogger=g,f([(0,b.inject)(P.TYPES.ModelSourceProvider),h("design:type",Function)],g.prototype,"modelSourceProvider",void 0),f([(0,b.inject)(P.TYPES.LogLevel),h("design:type",Number)],g.prototype,"logLevel",void 0),vy.ForwardingLogger=g=f([(0,b.injectable)()],g),vy}var rS={},E0t;function xUt(){if(E0t)return rS;E0t=1;var f=rS&&rS.__decorate||function(m,P,g,E){var C=arguments.length,T=C<3?P:E===null?E=Object.getOwnPropertyDescriptor(P,g):E,M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(m,P,g,E);else for(var _=m.length-1;_>=0;_--)(M=m[_])&&(T=(C<3?M(T):C>3?M(P,g,T):M(P,g))||T);return C>3&&T&&Object.defineProperty(P,g,T),T};Object.defineProperty(rS,"__esModule",{value:!0}),rS.WebSocketDiagramServerProxy=void 0;const h=Zt(),b=tmt();let w=class extends b.DiagramServerProxy{listen(P){P.addEventListener("message",g=>{this.messageReceived(g.data)}),P.addEventListener("error",g=>{this.logger.error(this,"error event received",g)}),this.webSocket=P}disconnect(){this.webSocket&&(this.webSocket.close(),this.webSocket=void 0)}sendMessage(P){if(this.webSocket)this.webSocket.send(JSON.stringify(P));else throw new Error("WebSocket is not connected")}};return rS.WebSocketDiagramServerProxy=w,rS.WebSocketDiagramServerProxy=w=f([(0,h.injectable)()],w),rS}var S3={},S0t;function LUt(){if(S0t)return S3;S0t=1,Object.defineProperty(S3,"__esModule",{value:!0}),S3.ColorMap=S3.toSVG=S3.rgb=void 0;function f(w,m,P){return{red:w,green:m,blue:P}}S3.rgb=f;function h(w){return"rgb("+w.red+","+w.green+","+w.blue+")"}S3.toSVG=h;class b{constructor(m){this.stops=m}getColor(m){m=Math.max(0,Math.min(.99999999,m));const P=Math.floor(m*this.stops.length);return this.stops[P]}}return S3.ColorMap=b,S3}var P0t;function NUt(){return P0t||(P0t=1,(function(f){var h=d3&&d3.__createBinding||(Object.create?(function(te,fe,ve,me){me===void 0&&(me=ve);var ke=Object.getOwnPropertyDescriptor(fe,ve);(!ke||("get"in ke?!fe.__esModule:ke.writable||ke.configurable))&&(ke={enumerable:!0,get:function(){return fe[ve]}}),Object.defineProperty(te,me,ke)}):(function(te,fe,ve,me){me===void 0&&(me=ve),te[me]=fe[ve]})),b=d3&&d3.__exportStar||function(te,fe){for(var ve in te)ve!=="default"&&!Object.prototype.hasOwnProperty.call(fe,ve)&&h(fe,te,ve)},w=d3&&d3.__importDefault||function(te){return te&&te.__esModule?te:{default:te}};Object.defineProperty(f,"__esModule",{value:!0}),f.modelSourceModule=f.zorderModule=f.viewportModule=f.updateModule=f.undoRedoModule=f.selectModule=f.routingModule=f.openModule=f.moveModule=f.hoverModule=f.fadeModule=f.exportModule=f.expandModule=f.edgeLayoutModule=f.edgeJunctionModule=f.edgeIntersectionModule=f.decorationModule=f.contextMenuModule=f.commandPaletteModule=f.buttonModule=f.boundsModule=f.defaultModule=void 0,b(jye(),f),b(Rye(),f),b(lJ(),f),b(zpt(),f),b(eN(),f),b(SA(),f),b(Vpt(),f),b(Ca(),f),b(kb(),f),b(Gpt(),f),b(Upt(),f),b(fJ(),f),b(xye(),f),b(ES(),f),b(Qh(),f),b(Oc(),f),b(hJ(),f),b(Lye(),f),b(H3(),f),b(Pp(),f),b(Jpt(),f),b(iN(),f),b(Qpt(),f),b(Zpt(),f),b(ewt(),f),b(twt(),f),b(mh(),f),b(Qn(),f);const m=w(nwt());f.defaultModule=m.default,b($ye(),f),b(iwt(),f),b(Kye(),f),b(Xs(),f),b(rwt(),f),b(owt(),f),b(cwt(),f),b(gJ(),f),b(bJ(),f),b(swt(),f),b(Hye(),f),b(lwt(),f),b(gUt(),f),b(zye(),f),b(fwt(),f),b(Rve(),f),b(hwt(),f),b(cN(),f),b(bUt(),f),b(dwt(),f),b(pwt(),f),b(oN(),f),b(Uye(),f),b(bwt(),f),b(vJ(),f),b(sN(),f),b(Yye(),f),b(wwt(),f),b(Xye(),f),b(pUt(),f),b(mwt(),f),b(Vye(),f),b(Jye(),f),b(wUt(),f),b(Qye(),f),b(rN(),f),b(vwt(),f),b(PA(),f),b(Zye(),f),b(ywt(),f),b(_wt(),f),b(e2e(),f),b(Swt(),f),b(Pwt(),f),b(Mwt(),f),b(SS(),f),b(yJ(),f),b(_Ut(),f),b(uwt(),f),b(Iwt(),f),b(Cwt(),f),b(t2e(),f),b(EUt(),f),b(MS(),f),b(pJ(),f),b(Twt(),f),b(i2e(),f),b(jwt(),f),b(r2e(),f),b(Ma(),f),b(n2e(),f),b(wJ(),f),b(Iy(),f),b(Awt(),f),b(Rb(),f),b(Dwt(),f),b(kwt(),f),b(c2e(),f),b(s2e(),f),b(u2e(),f),b(V3(),f),b(o2e(),f),b(Gye(),f),b(_J(),f),b(Wye(),f),b(Rwt(),f);const P=w(xwt());f.boundsModule=P.default;const g=w(Lwt());f.buttonModule=g.default;const E=w(Nwt());f.commandPaletteModule=E.default;const C=w(Fwt());f.contextMenuModule=C.default;const T=w(Bwt());f.decorationModule=T.default;const M=w(PUt());f.edgeIntersectionModule=M.default;const _=w(MUt());f.edgeJunctionModule=_.default;const I=w(Rve());f.edgeLayoutModule=I.default;const O=w($wt());f.expandModule=O.default;const j=w(Kwt());f.exportModule=j.default;const k=w(qwt());f.fadeModule=k.default;const x=w(Hwt());f.hoverModule=x.default;const R=w(zwt());f.moveModule=R.default;const H=w(Vwt());f.openModule=H.default;const F=w(Gwt());f.routingModule=F.default;const $=w(Uwt());f.selectModule=$.default;const W=w(Wwt());f.undoRedoModule=W.default;const re=w(Ywt());f.updateModule=re.default;const ae=w(Xwt());f.viewportModule=ae.default;const ce=w(Jwt());f.zorderModule=ce.default,b(MA(),f),b(IUt(),f),b(TUt(),f),b(AUt(),f),b(OUt(),f),b(Cy(),f),b(Zwt(),f),b(gwt(),f),b(mJ(),f),b(tmt(),f),b(kUt(),f),b(RUt(),f),b(CA(),f),b(xUt(),f);const J=w(Qwt());f.modelSourceModule=J.default,b(My(),f),b(awt(),f),b(LUt(),f),b(PS(),f),b(EA(),f),b(Bye(),f),b(q3(),f)})(d3)),d3}var de=NUt(),FUt=Object.getOwnPropertyDescriptor,BUt=(f,h,b,w)=>{for(var m=w>1?void 0:w?FUt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let RM=class extends de.AbstractUIExtension{constructor(f,h){super(),this.chevronPosition=f,this.chevronOrientation=h,this.mainCheckbox=document.createElement("input")}mainCheckbox;initializeContents(f){f.classList.add("ui-float"),this.mainCheckbox.type="checkbox";const h=this.id()+"-checkbox";this.mainCheckbox.id=h,this.mainCheckbox.classList.add("accordion-state"),this.mainCheckbox.hidden=!0;const b=document.createElement("label");b.htmlFor=h;const w=document.createElement("div");w.classList.add(`chevron-${this.chevronPosition}`,"accordion-button"),this.chevronOrientation==="up"&&w.classList.add("flip-chevron"),this.initializeHeaderContent(w),b.appendChild(w);const m=document.createElement("div");m.classList.add("accordion-content");const P=document.createElement("div");this.initializeHidableContent(P),m.appendChild(P),f.appendChild(this.mainCheckbox),f.appendChild(b),f.appendChild(m)}toggleStatus(){this.mainCheckbox.checked=!this.mainCheckbox.checked}};RM=BUt([vr()],RM);const $Ut="0c4087a2ade4b238222af521037e3d6e69d79513",M0t={hash:$Ut};var KUt=Object.defineProperty,qUt=Object.getOwnPropertyDescriptor,HUt=(f,h,b)=>h in f?KUt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,zUt=(f,h,b,w)=>{for(var m=w>1?void 0:w?qUt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},VUt=(f,h,b)=>HUt(f,h+"",b);let pS=class extends RM{constructor(){super("right","up")}id(){return pS.ID}containerClass(){return pS.ID}initializeHidableContent(f){f.innerHTML=` -

    CTRL+Space: Command Palette

    -

    CTRL+Z: Undo

    -

    CTRL+Shift+Z: Redo

    -

    Del: Delete selected elements

    -

    T: Toggle Label Type Edit UI

    -

    CTRL+O: Load diagram from json

    -

    CTRL+Shift+O: Open default diagram

    -

    CTRL+S: Save diagram to json

    -

    CTRL+L: Automatically layout diagram

    -

    CTRL+Shift+F: Fit diagram to screen

    -

    CTRL+C: Copy selected elements

    -

    CTRL+V: Paste previously copied elements

    -

    Esc: Disable current creation tool

    -

    Toggle Creation Tool: Refer to key in the tool palette

    - `,f.appendChild(this.buildCommitHash())}initializeHeaderContent(f){f.classList.add("help-accordion-icon"),f.innerText="Keyboard Shortcuts | Help"}buildCommitHash(){const f=document.createElement("div");f.id="hashHolder",f.innerHTML="Commit:";const h=document.createElement("a");return h.innerHTML=M0t.hash.substring(0,6),h.href=`https://github.com/DataFlowAnalysis/OnlineEditor/tree/${M0t.hash}`,h.id="hash",h.target="_blank",f.appendChild(h),f}};VUt(pS,"ID","help-ui");pS=zUt([vr()],pS);const Db={CreationTool:Symbol("CreationTool"),DefaultUIElement:Symbol("DefaultUIElement")},GUt=new xf(f=>{f(pS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(pS),f(Db.DefaultUIElement).toService(pS)}),OL=Symbol("StartUpAgent");var UUt=Object.getOwnPropertyDescriptor,WUt=(f,h,b,w)=>{for(var m=w>1?void 0:w?UUt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},C0t=(f,h)=>(b,w)=>h(b,w,f);let xve=class{constructor(f,h){this.actionDispatcher=f,this.defaultUiElements=h}run(){const f=this.defaultUiElements.map(h=>de.SetUIExtensionVisibilityAction.create({extensionId:h.id(),visible:!0}));this.actionDispatcher.dispatchAll(f)}};xve=WUt([vr(),C0t(0,Et(de.TYPES.IActionDispatcher)),C0t(1,cJ(Db.DefaultUIElement))],xve);var mg=Sp();const YUt=75;var xL;(f=>{function h(b,w=!0){const m=b.children?.filter(P=>mg.getBasicType(P)==="node").map(P=>P.id)??[];return mg.FitToScreenAction.create(m,{padding:YUt,animate:w})}f.create=h})(xL||(xL={}));function SX(f){throw new Error('Could not dynamically require "'+f+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var _ve={exports:{}},I0t;function XUt(){return I0t||(I0t=1,(function(f,h){(function(b){f.exports=b()})(function(){return(function(){function b(w,m,P){function g(T,M){if(!m[T]){if(!w[T]){var _=typeof SX=="function"&&SX;if(!M&&_)return _(T,!0);if(E)return E(T,!0);var I=new Error("Cannot find module '"+T+"'");throw I.code="MODULE_NOT_FOUND",I}var O=m[T]={exports:{}};w[T][0].call(O.exports,function(j){var k=w[T][1][j];return g(k||j)},O,O.exports,b,w,m,P)}return m[T].exports}for(var E=typeof SX=="function"&&SX,C=0;C0&&arguments[0]!==void 0?arguments[0]:{},I=_.defaultLayoutOptions,O=I===void 0?{}:I,j=_.algorithms,k=j===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:j,x=_.workerFactory,R=_.workerUrl;if(g(this,T),this.defaultLayoutOptions=O,this.initialized=!1,typeof R>"u"&&typeof x>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var H=x;typeof R<"u"&&typeof x>"u"&&(H=function(W){return new Worker(W)});var F=H(R);if(typeof F.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new C(F),this.worker.postMessage({cmd:"register",algorithms:k}).then(function($){return M.initialized=!0}).catch(console.err)}return P(T,[{key:"layout",value:function(_){var I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},O=I.layoutOptions,j=O===void 0?this.defaultLayoutOptions:O,k=I.logging,x=k===void 0?!1:k,R=I.measureExecutionTime,H=R===void 0?!1:R;return _?this.worker.postMessage({cmd:"layout",graph:_,layoutOptions:j,options:{logging:x,measureExecutionTime:H}}):Promise.reject(new Error("Missing mandatory parameter 'graph'."))}},{key:"knownLayoutAlgorithms",value:function(){return this.worker.postMessage({cmd:"algorithms"})}},{key:"knownLayoutOptions",value:function(){return this.worker.postMessage({cmd:"options"})}},{key:"knownLayoutCategories",value:function(){return this.worker.postMessage({cmd:"categories"})}},{key:"terminateWorker",value:function(){this.worker.terminate()}}]),T})();m.default=E;var C=(function(){function T(M){var _=this;if(g(this,T),M===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=M,this.worker.onmessage=function(I){setTimeout(function(){_.receive(_,I)},0)}}return P(T,[{key:"postMessage",value:function(_){var I=this.id||0;this.id=I+1,_.id=I;var O=this;return new Promise(function(j,k){O.resolvers[I]=function(x,R){x?(O.convertGwtStyleError(x),k(x)):j(R)},O.worker.postMessage(_)})}},{key:"receive",value:function(_,I){var O=I.data,j=_.resolvers[O.id];j&&(delete _.resolvers[O.id],O.error?j(O.error):j(null,O.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(_){if(_){var I=_.__java$exception;I&&(I.cause&&I.cause.backingJsObject&&(_.cause=I.cause.backingJsObject,this.convertGwtStyleError(_.cause)),delete _.__java$exception)}}}]),T})()},{}],2:[function(b,w,m){(function(P){(function(){var g;typeof window<"u"?g=window:typeof P<"u"?g=P:typeof self<"u"&&(g=self);var E;function C(){}function T(){}function M(){}function _(){}function I(){}function O(){}function j(){}function k(){}function x(){}function R(){}function H(){}function F(){}function $(){}function W(){}function re(){}function ae(){}function ce(){}function J(){}function te(){}function fe(){}function ve(){}function me(){}function ke(){}function tt(){}function De(){}function ct(){}function Z(){}function Nt(){}function ii(){}function kr(){}function jo(){}function Gn(){}function pc(){}function ls(){}function Lr(){}function gt(){}function Xn(){}function jn(){}function ri(){}function Er(){}function Ml(){}function yg(){}function Si(){}function _o(){}function Au(){}function cf(){}function Rs(){}function xs(){}function xb(){}function Zh(){}function Ia(){}function mm(){}function IA(){}function vh(){}function Mp(){}function ed(){}function lN(){}function MJ(){}function NM(){}function FM(){}function ft(){}function It(){}function zt(){}function zn(){}function or(){}function uu(){}function Qu(){}function fo(){}function ni(){}function li(){}function bi(){}function Pi(){}function Eo(){}function fs(){}function au(){}function e1(){}function TA(){}function fN(){}function hN(){}function w2e(){}function m2e(){}function v2e(){}function y2e(){}function _2e(){}function E2e(){}function S2e(){}function P2e(){}function M2e(){}function C2e(){}function I2e(){}function T2e(){}function j2e(){}function CJ(){}function A2e(){}function O2e(){}function D2e(){}function k2e(){}function dN(){}function gN(){}function jA(){}function R2e(){}function x2e(){}function bN(){}function L2e(){}function N2e(){}function F2e(){}function AA(){}function B2e(){}function $2e(){}function K2e(){}function q2e(){}function H2e(){}function z2e(){}function V2e(){}function G2e(){}function U2e(){}function IJ(){}function W2e(){}function Y2e(){}function X2e(){}function J2e(){}function Q2e(){}function TJ(){}function Z2e(){}function e3e(){}function t3e(){}function n3e(){}function i3e(){}function r3e(){}function o3e(){}function c3e(){}function s3e(){}function u3e(){}function a3e(){}function l3e(){}function f3e(){}function h3e(){}function pN(){}function d3e(){}function g3e(){}function b3e(){}function p3e(){}function w3e(){}function jJ(){}function m3e(){}function v3e(){}function y3e(){}function _3e(){}function E3e(){}function S3e(){}function P3e(){}function M3e(){}function C3e(){}function I3e(){}function T3e(){}function j3e(){}function A3e(){}function O3e(){}function D3e(){}function k3e(){}function R3e(){}function x3e(){}function L3e(){}function N3e(){}function F3e(){}function B3e(){}function $3e(){}function K3e(){}function q3e(){}function H3e(){}function z3e(){}function V3e(){}function G3e(){}function U3e(){}function W3e(){}function Y3e(){}function X3e(){}function J3e(){}function Q3e(){}function Z3e(){}function e_e(){}function t_e(){}function n_e(){}function i_e(){}function r_e(){}function o_e(){}function c_e(){}function s_e(){}function u_e(){}function a_e(){}function l_e(){}function f_e(){}function h_e(){}function d_e(){}function g_e(){}function b_e(){}function p_e(){}function w_e(){}function m_e(){}function v_e(){}function y_e(){}function __e(){}function E_e(){}function S_e(){}function P_e(){}function M_e(){}function C_e(){}function I_e(){}function T_e(){}function j_e(){}function A_e(){}function O_e(){}function D_e(){}function k_e(){}function R_e(){}function x_e(){}function L_e(){}function N_e(){}function F_e(){}function B_e(){}function $_e(){}function K_e(){}function q_e(){}function H_e(){}function z_e(){}function V_e(){}function G_e(){}function U_e(){}function W_e(){}function Y_e(){}function X_e(){}function J_e(){}function Q_e(){}function Z_e(){}function eEe(){}function tEe(){}function nEe(){}function iEe(){}function rEe(){}function oEe(){}function cEe(){}function sEe(){}function uEe(){}function aEe(){}function AJ(){}function lEe(){}function fEe(){}function hEe(){}function dEe(){}function gEe(){}function bEe(){}function pEe(){}function wEe(){}function mEe(){}function vEe(){}function yEe(){}function _Ee(){}function EEe(){}function SEe(){}function PEe(){}function MEe(){}function CEe(){}function IEe(){}function TEe(){}function jEe(){}function AEe(){}function OEe(){}function DEe(){}function kEe(){}function REe(){}function xEe(){}function LEe(){}function NEe(){}function FEe(){}function BEe(){}function $Ee(){}function KEe(){}function qEe(){}function HEe(){}function zEe(){}function VEe(){}function GEe(){}function UEe(){}function WEe(){}function YEe(){}function XEe(){}function JEe(){}function QEe(){}function ZEe(){}function e4e(){}function t4e(){}function n4e(){}function i4e(){}function r4e(){}function o4e(){}function c4e(){}function s4e(){}function u4e(){}function a4e(){}function l4e(){}function f4e(){}function h4e(){}function d4e(){}function g4e(){}function b4e(){}function p4e(){}function w4e(){}function m4e(){}function v4e(){}function y4e(){}function _4e(){}function E4e(){}function OJ(){}function S4e(){}function P4e(){}function M4e(){}function C4e(){}function I4e(){}function T4e(){}function j4e(){}function A4e(){}function O4e(){}function D4e(){}function k4e(){}function R4e(){}function x4e(){}function L4e(){}function N4e(){}function F4e(){}function B4e(){}function $4e(){}function K4e(){}function q4e(){}function DJ(){}function H4e(){}function z4e(){}function V4e(){}function G4e(){}function U4e(){}function W4e(){}function kJ(){}function RJ(){}function Y4e(){}function xJ(){}function LJ(){}function X4e(){}function J4e(){}function Q4e(){}function Z4e(){}function eSe(){}function tSe(){}function nSe(){}function iSe(){}function rSe(){}function NJ(){}function oSe(){}function cSe(){}function sSe(){}function uSe(){}function aSe(){}function lSe(){}function fSe(){}function hSe(){}function dSe(){}function gSe(){}function bSe(){}function pSe(){}function wSe(){}function mSe(){}function vSe(){}function ySe(){}function _Se(){}function ESe(){}function SSe(){}function PSe(){}function MSe(){}function CSe(){}function ISe(){}function TSe(){}function jSe(){}function ASe(){}function OSe(){}function DSe(){}function kSe(){}function RSe(){}function xSe(){}function LSe(){}function NSe(){}function FSe(){}function BSe(){}function $Se(){}function KSe(){}function qSe(){}function HSe(){}function zSe(){}function VSe(){}function GSe(){}function USe(){}function WSe(){}function YSe(){}function XSe(){}function JSe(){}function QSe(){}function ZSe(){}function e5e(){}function t5e(){}function n5e(){}function i5e(){}function r5e(){}function o5e(){}function c5e(){}function s5e(){}function u5e(){}function a5e(){}function l5e(){}function f5e(){}function h5e(){}function d5e(){}function g5e(){}function b5e(){}function p5e(){}function w5e(){}function m5e(){}function wN(){}function mN(){}function vN(){}function v5e(){}function y5e(){}function _5e(){}function E5e(){}function S5e(){}function FJ(){}function P5e(){}function M5e(){}function Smt(){}function C5e(){}function I5e(){}function T5e(){}function j5e(){}function A5e(){}function O5e(){}function D5e(){}function _g(){}function k5e(){}function Ay(){}function BJ(){}function R5e(){}function x5e(){}function L5e(){}function N5e(){}function F5e(){}function B5e(){}function $5e(){}function K5e(){}function q5e(){}function H5e(){}function z5e(){}function V5e(){}function G5e(){}function U5e(){}function W5e(){}function Y5e(){}function X5e(){}function J5e(){}function Q5e(){}function Z5e(){}function e6e(){}function He(){}function t6e(){}function n6e(){}function i6e(){}function r6e(){}function o6e(){}function c6e(){}function s6e(){}function u6e(){}function a6e(){}function l6e(){}function yN(){}function f6e(){}function h6e(){}function d6e(){}function g6e(){}function b6e(){}function $J(){}function OA(){}function DA(){}function p6e(){}function KJ(){}function kA(){}function w6e(){}function m6e(){}function v6e(){}function y6e(){}function _6e(){}function E6e(){}function RA(){}function S6e(){}function P6e(){}function M6e(){}function xA(){}function C6e(){}function qJ(){}function I6e(){}function _N(){}function HJ(){}function T6e(){}function j6e(){}function A6e(){}function O6e(){}function Pmt(){}function D6e(){}function k6e(){}function R6e(){}function x6e(){}function L6e(){}function N6e(){}function F6e(){}function B6e(){}function $6e(){}function K6e(){}function G3(){}function EN(){}function q6e(){}function H6e(){}function z6e(){}function V6e(){}function G6e(){}function U6e(){}function W6e(){}function Y6e(){}function X6e(){}function J6e(){}function Q6e(){}function Z6e(){}function ePe(){}function tPe(){}function nPe(){}function iPe(){}function rPe(){}function oPe(){}function cPe(){}function sPe(){}function uPe(){}function aPe(){}function lPe(){}function fPe(){}function hPe(){}function dPe(){}function gPe(){}function bPe(){}function pPe(){}function wPe(){}function mPe(){}function vPe(){}function yPe(){}function _Pe(){}function EPe(){}function SPe(){}function PPe(){}function MPe(){}function CPe(){}function IPe(){}function TPe(){}function jPe(){}function APe(){}function OPe(){}function DPe(){}function kPe(){}function RPe(){}function xPe(){}function LPe(){}function NPe(){}function FPe(){}function BPe(){}function $Pe(){}function KPe(){}function qPe(){}function HPe(){}function zPe(){}function VPe(){}function GPe(){}function UPe(){}function WPe(){}function YPe(){}function XPe(){}function JPe(){}function QPe(){}function ZPe(){}function eMe(){}function tMe(){}function nMe(){}function iMe(){}function rMe(){}function oMe(){}function cMe(){}function sMe(){}function uMe(){}function aMe(){}function lMe(){}function fMe(){}function hMe(){}function dMe(){}function gMe(){}function bMe(){}function pMe(){}function wMe(){}function mMe(){}function vMe(){}function yMe(){}function _Me(){}function EMe(){}function SMe(){}function PMe(){}function MMe(){}function CMe(){}function IMe(){}function TMe(){}function jMe(){}function AMe(){}function OMe(){}function DMe(){}function kMe(){}function RMe(){}function zJ(){}function xMe(){}function LMe(){}function SN(){DS()}function NMe(){bK()}function FMe(){o6()}function BMe(){A7()}function $Me(){Hce()}function KMe(){dl()}function qMe(){ece()}function HMe(){NI()}function zMe(){nC()}function VMe(){tC()}function GMe(){TC()}function UMe(){Y8e()}function WMe(){h2()}function YMe(){f9()}function XMe(){cBe()}function JMe(){vKe()}function QMe(){FBe()}function ZMe(){tNe()}function eCe(){iE()}function tCe(){I1()}function nCe(){yKe()}function iCe(){WNe()}function rCe(){Lue()}function oCe(){sVe()}function cCe(){nNe()}function sCe(){Oe()}function uCe(){eNe()}function aCe(){_Ke()}function lCe(){Pqe()}function fCe(){rNe()}function hCe(){HBe()}function dCe(){X8e()}function gCe(){Pse()}function bCe(){ow()}function pCe(){WKe()}function wCe(){KI()}function mCe(){zq()}function vCe(){JK()}function yCe(){A0()}function _Ce(){yre()}function ECe(){iNe()}function SCe(){bYe()}function PCe(){_se()}function MCe(){Lq()}function CCe(){bO()}function ICe(){N7()}function VJ(){kn()}function TCe(){QO()}function jCe(){Toe()}function GJ(){nD()}function il(){zke()}function UJ(){Z$()}function ACe(){uue()}function WJ(e){yt(e)}function OCe(e){this.a=e}function LA(e){this.a=e}function DCe(e){this.a=e}function kCe(e){this.a=e}function RCe(e){this.a=e}function xCe(e){this.a=e}function LCe(e){this.a=e}function NCe(e){this.a=e}function YJ(e){this.a=e}function XJ(e){this.a=e}function FCe(e){this.a=e}function PN(e){this.a=e}function BCe(e){this.a=e}function MN(e){this.a=e}function $Ce(e){this.a=e}function CN(e){this.a=e}function KCe(e){this.a=e}function IN(e){this.a=e}function qCe(e){this.a=e}function HCe(e){this.a=e}function zCe(e){this.a=e}function JJ(e){this.b=e}function VCe(e){this.c=e}function GCe(e){this.a=e}function UCe(e){this.a=e}function WCe(e){this.a=e}function YCe(e){this.a=e}function XCe(e){this.a=e}function JCe(e){this.a=e}function QCe(e){this.a=e}function ZCe(e){this.a=e}function eIe(e){this.a=e}function tIe(e){this.a=e}function nIe(e){this.a=e}function iIe(e){this.a=e}function rIe(e){this.a=e}function QJ(e){this.a=e}function ZJ(e){this.a=e}function NA(e){this.a=e}function BM(e){this.a=e}function Eg(){this.a=[]}function oIe(e,t){e.a=t}function Mmt(e,t){e.a=t}function Cmt(e,t){e.b=t}function Imt(e,t){e.b=t}function Tmt(e,t){e.b=t}function eQ(e,t){e.j=t}function jmt(e,t){e.g=t}function Amt(e,t){e.i=t}function Omt(e,t){e.c=t}function Dmt(e,t){e.d=t}function kmt(e,t){e.d=t}function Rmt(e,t){e.c=t}function Sg(e,t){e.k=t}function xmt(e,t){e.c=t}function tQ(e,t){e.c=t}function nQ(e,t){e.a=t}function Lmt(e,t){e.a=t}function Nmt(e,t){e.f=t}function Fmt(e,t){e.a=t}function Bmt(e,t){e.b=t}function TN(e,t){e.d=t}function FA(e,t){e.i=t}function iQ(e,t){e.o=t}function $mt(e,t){e.r=t}function Kmt(e,t){e.a=t}function qmt(e,t){e.b=t}function cIe(e,t){e.e=t}function Hmt(e,t){e.f=t}function rQ(e,t){e.g=t}function zmt(e,t){e.e=t}function Vmt(e,t){e.f=t}function Gmt(e,t){e.f=t}function Umt(e,t){e.n=t}function Wmt(e,t){e.a=t}function Ymt(e,t){e.a=t}function Xmt(e,t){e.c=t}function Jmt(e,t){e.c=t}function Qmt(e,t){e.d=t}function Zmt(e,t){e.e=t}function evt(e,t){e.g=t}function tvt(e,t){e.a=t}function nvt(e,t){e.c=t}function ivt(e,t){e.d=t}function rvt(e,t){e.e=t}function ovt(e,t){e.f=t}function cvt(e,t){e.j=t}function svt(e,t){e.a=t}function uvt(e,t){e.b=t}function avt(e,t){e.a=t}function sIe(e){e.b=e.a}function uIe(e){e.c=e.d.d}function CS(e){this.d=e}function Pg(e){this.a=e}function U3(e){this.a=e}function oQ(e){this.a=e}function yh(e){this.a=e}function $M(e){this.a=e}function aIe(e){this.a=e}function cQ(e){this.a=e}function KM(e){this.a=e}function sQ(e){this.a=e}function uQ(e){this.a=e}function aQ(e){this.a=e}function Cp(e){this.a=e}function qM(e){this.a=e}function HM(e){this.a=e}function lQ(e){this.b=e}function W3(e){this.b=e}function Y3(e){this.b=e}function jN(e){this.a=e}function lIe(e){this.a=e}function fQ(e){this.a=e}function AN(e){this.c=e}function q(e){this.c=e}function fIe(e){this.c=e}function hQ(e){this.a=e}function dQ(e){this.a=e}function gQ(e){this.a=e}function bQ(e){this.a=e}function Un(e){this.a=e}function hIe(e){this.a=e}function pQ(e){this.a=e}function wQ(e){this.a=e}function dIe(e){this.a=e}function gIe(e){this.a=e}function IS(e){this.a=e}function bIe(e){this.a=e}function pIe(e){this.a=e}function wIe(e){this.a=e}function mIe(e){this.a=e}function vIe(e){this.a=e}function yIe(e){this.a=e}function _Ie(e){this.a=e}function EIe(e){this.a=e}function SIe(e){this.a=e}function PIe(e){this.a=e}function MIe(e){this.a=e}function CIe(e){this.a=e}function IIe(e){this.a=e}function TIe(e){this.a=e}function jIe(e){this.a=e}function AIe(e){this.a=e}function OIe(e){this.a=e}function zM(e){this.a=e}function DIe(e){this.a=e}function kIe(e){this.a=e}function BA(e){this.a=e}function RIe(e){this.a=e}function xIe(e){this.a=e}function X3(e){this.a=e}function mQ(e){this.a=e}function LIe(e){this.a=e}function NIe(e){this.a=e}function FIe(e){this.a=e}function BIe(e){this.a=e}function $Ie(e){this.a=e}function vQ(e){this.a=e}function yQ(e){this.a=e}function _Q(e){this.a=e}function $A(e){this.a=e}function KA(e){this.e=e}function J3(e){this.a=e}function KIe(e){this.a=e}function Oy(e){this.a=e}function EQ(e){this.a=e}function qIe(e){this.a=e}function HIe(e){this.a=e}function zIe(e){this.a=e}function VIe(e){this.a=e}function GIe(e){this.a=e}function UIe(e){this.a=e}function WIe(e){this.a=e}function YIe(e){this.a=e}function XIe(e){this.a=e}function JIe(e){this.a=e}function QIe(e){this.a=e}function SQ(e){this.a=e}function ZIe(e){this.a=e}function eTe(e){this.a=e}function tTe(e){this.a=e}function nTe(e){this.a=e}function iTe(e){this.a=e}function rTe(e){this.a=e}function oTe(e){this.a=e}function cTe(e){this.a=e}function sTe(e){this.a=e}function uTe(e){this.a=e}function aTe(e){this.a=e}function lTe(e){this.a=e}function fTe(e){this.a=e}function hTe(e){this.a=e}function dTe(e){this.a=e}function gTe(e){this.a=e}function bTe(e){this.a=e}function pTe(e){this.a=e}function wTe(e){this.a=e}function mTe(e){this.a=e}function vTe(e){this.a=e}function yTe(e){this.a=e}function _Te(e){this.a=e}function ETe(e){this.a=e}function STe(e){this.a=e}function PTe(e){this.a=e}function MTe(e){this.a=e}function CTe(e){this.a=e}function ITe(e){this.a=e}function TTe(e){this.a=e}function jTe(e){this.a=e}function ATe(e){this.a=e}function OTe(e){this.a=e}function DTe(e){this.a=e}function kTe(e){this.a=e}function RTe(e){this.a=e}function xTe(e){this.a=e}function LTe(e){this.c=e}function NTe(e){this.b=e}function FTe(e){this.a=e}function BTe(e){this.a=e}function $Te(e){this.a=e}function KTe(e){this.a=e}function qTe(e){this.a=e}function HTe(e){this.a=e}function zTe(e){this.a=e}function VTe(e){this.a=e}function GTe(e){this.a=e}function UTe(e){this.a=e}function WTe(e){this.a=e}function YTe(e){this.a=e}function XTe(e){this.a=e}function JTe(e){this.a=e}function QTe(e){this.a=e}function ZTe(e){this.a=e}function eje(e){this.a=e}function tje(e){this.a=e}function nje(e){this.a=e}function ije(e){this.a=e}function rje(e){this.a=e}function oje(e){this.a=e}function cje(e){this.a=e}function sje(e){this.a=e}function t1(e){this.a=e}function Dy(e){this.a=e}function uje(e){this.a=e}function aje(e){this.a=e}function lje(e){this.a=e}function fje(e){this.a=e}function hje(e){this.a=e}function dje(e){this.a=e}function gje(e){this.a=e}function bje(e){this.a=e}function pje(e){this.a=e}function wje(e){this.a=e}function mje(e){this.a=e}function vje(e){this.a=e}function yje(e){this.a=e}function _je(e){this.a=e}function Eje(e){this.a=e}function Sje(e){this.a=e}function qA(e){this.a=e}function Pje(e){this.a=e}function Mje(e){this.a=e}function Cje(e){this.a=e}function Ije(e){this.a=e}function Tje(e){this.a=e}function jje(e){this.a=e}function Aje(e){this.a=e}function Oje(e){this.a=e}function Dje(e){this.a=e}function kje(e){this.a=e}function Rje(e){this.a=e}function xje(e){this.a=e}function Lje(e){this.a=e}function Nje(e){this.a=e}function Fje(e){this.a=e}function Bje(e){this.a=e}function $je(e){this.a=e}function Kje(e){this.a=e}function qje(e){this.a=e}function Hje(e){this.a=e}function zje(e){this.a=e}function Vje(e){this.a=e}function Gje(e){this.a=e}function Uje(e){this.a=e}function Wje(e){this.a=e}function Yje(e){this.a=e}function Xje(e){this.a=e}function Jje(e){this.a=e}function PQ(e){this.a=e}function hi(e){this.b=e}function Qje(e){this.f=e}function MQ(e){this.a=e}function Zje(e){this.a=e}function eAe(e){this.a=e}function tAe(e){this.a=e}function nAe(e){this.a=e}function iAe(e){this.a=e}function rAe(e){this.a=e}function oAe(e){this.a=e}function cAe(e){this.a=e}function VM(e){this.a=e}function sAe(e){this.a=e}function uAe(e){this.b=e}function CQ(e){this.c=e}function HA(e){this.e=e}function aAe(e){this.a=e}function zA(e){this.a=e}function VA(e){this.a=e}function ON(e){this.a=e}function lAe(e){this.a=e}function fAe(e){this.d=e}function IQ(e){this.a=e}function TQ(e){this.a=e}function Lb(e){this.e=e}function lvt(){this.a=0}function vm(){z7e(this)}function Se(){NF(this)}function en(){Is(this)}function DN(){Wxe(this)}function hAe(){}function Nb(){this.c=ume}function fvt(e,t){t.Wb(e)}function dAe(e,t){e.b+=t}function gAe(e){e.b=new YN}function V(e){return e.e}function hvt(e){return e.a}function dvt(e){return e.a}function gvt(e){return e.a}function bvt(e){return e.a}function pvt(e){return e.a}function wvt(){return null}function mvt(){return null}function vvt(){gZ(),AHt()}function yvt(e){e.b.tf(e.e)}function TS(e,t){e.b=t-e.b}function jS(e,t){e.a=t-e.a}function bAe(e,t){t.ad(e.a)}function _vt(e,t){Ji(t,e)}function Evt(e,t,n){e.Od(n,t)}function GM(e,t){e.e=t,t.b=e}function jQ(e){hf(),this.a=e}function pAe(e){hf(),this.a=e}function wAe(e){hf(),this.a=e}function AQ(e){Hp(),this.a=e}function mAe(e){T_(),lG.be(e)}function Mg(){IDe.call(this)}function OQ(){IDe.call(this)}function DQ(){Mg.call(this)}function kN(){Mg.call(this)}function vAe(){Mg.call(this)}function UM(){Mg.call(this)}function hs(){Mg.call(this)}function AS(){Mg.call(this)}function sn(){Mg.call(this)}function Ou(){Mg.call(this)}function yAe(){Mg.call(this)}function tc(){Mg.call(this)}function _Ae(){Mg.call(this)}function EAe(){this.a=this}function GA(){this.Bb|=256}function SAe(){this.b=new M7e}function kQ(){kQ=Z,new en}function RQ(){DQ.call(this)}function PAe(e,t){e.length=t}function UA(e,t){Ee(e.a,t)}function Svt(e,t){Vce(e.c,t)}function Pvt(e,t){Yi(e.b,t)}function Mvt(e,t){P7(e.a,t)}function Cvt(e,t){PK(e.a,t)}function Q3(e,t){Bn(e.e,t)}function ky(e){$7(e.c,e.b)}function Ivt(e,t){e.kc().Nb(t)}function xQ(e){this.a=MAt(e)}function er(){this.a=new en}function MAe(){this.a=new en}function WA(){this.a=new Se}function RN(){this.a=new Se}function LQ(){this.a=new Se}function Zu(){this.a=new bi}function Cg(){this.a=new nBe}function NQ(){this.a=new IJ}function FQ(){this.a=new K8e}function CAe(){this.a=new jNe}function BQ(){this.a=new VLe}function $Q(){this.a=new bke}function IAe(){this.a=new Se}function KQ(){this.a=new Se}function TAe(){this.a=new Se}function jAe(){this.a=new Se}function AAe(){this.d=new Se}function OAe(){this.a=new er}function DAe(){this.a=new en}function kAe(){this.b=new en}function RAe(){this.b=new Se}function qQ(){this.e=new Se}function xAe(){this.d=new Se}function LAe(){this.a=new tCe}function NAe(){Se.call(this)}function HQ(){WA.call(this)}function FAe(){i8.call(this)}function BAe(){KQ.call(this)}function xN(){OS.call(this)}function OS(){hAe.call(this)}function Ry(){hAe.call(this)}function zQ(){Ry.call(this)}function $Ae(){ELe.call(this)}function KAe(){ELe.call(this)}function qAe(){JQ.call(this)}function HAe(){JQ.call(this)}function zAe(){JQ.call(this)}function VAe(){QQ.call(this)}function ds(){wi.call(this)}function VQ(){b6e.call(this)}function GQ(){b6e.call(this)}function GAe(){u9e.call(this)}function UAe(){u9e.call(this)}function WAe(){en.call(this)}function YAe(){en.call(this)}function XAe(){en.call(this)}function JAe(){er.call(this)}function LN(){pKe.call(this)}function QAe(){GA.call(this)}function NN(){Eee.call(this)}function FN(){Eee.call(this)}function UQ(){en.call(this)}function BN(){en.call(this)}function ZAe(){en.call(this)}function WQ(){xA.call(this)}function e9e(){xA.call(this)}function t9e(){WQ.call(this)}function n9e(){zJ.call(this)}function i9e(e){K$e.call(this,e)}function r9e(e){K$e.call(this,e)}function YQ(e){YJ.call(this,e)}function XQ(e){O8e.call(this,e)}function Tvt(e){XQ.call(this,e)}function jvt(e){O8e.call(this,e)}function Z3(){this.a=new wi}function JQ(){this.a=new er}function QQ(){this.a=new en}function o9e(){this.a=new Se}function c9e(){this.j=new Se}function ZQ(){this.a=new p5e}function s9e(){this.a=new n8e}function u9e(){this.a=new M6e}function $N(){$N=Z,rG=new C9e}function KN(){KN=Z,iG=new M9e}function DS(){DS=Z,nG=new T}function YA(){YA=Z,sG=new MDe}function Avt(e){XQ.call(this,e)}function Ovt(e){XQ.call(this,e)}function a9e(e){w$.call(this,e)}function l9e(e){w$.call(this,e)}function f9e(e){Nke.call(this,e)}function qN(e){JDt.call(this,e)}function Fb(e){jp.call(this,e)}function kS(e){s9.call(this,e)}function eZ(e){s9.call(this,e)}function h9e(e){s9.call(this,e)}function No(e){JRe.call(this,e)}function d9e(e){No.call(this,e)}function xy(){BM.call(this,{})}function XA(e){d_(),this.a=e}function RS(e){e.b=null,e.c=0}function Dvt(e,t){e.e=t,gWe(e,t)}function kvt(e,t){e.a=t,Nkt(e)}function HN(e,t,n){e.a[t.g]=n}function Rvt(e,t,n){ZOt(n,e,t)}function xvt(e,t){c_t(t.i,e.n)}function g9e(e,t){sjt(e).td(t)}function Lvt(e,t){return e*e/t}function b9e(e,t){return e.g-t.g}function Nvt(e){return new NA(e)}function Fvt(e){return new qp(e)}function JA(e){No.call(this,e)}function ho(e){No.call(this,e)}function p9e(e){No.call(this,e)}function zN(e){JRe.call(this,e)}function VN(e){mre(),this.a=e}function w9e(e){Hke(),this.a=e}function Ip(e){_B(),this.f=e}function GN(e){_B(),this.f=e}function e_(e){No.call(this,e)}function St(e){No.call(this,e)}function Ao(e){No.call(this,e)}function m9e(e){No.call(this,e)}function Ly(e){No.call(this,e)}function Be(e){return yt(e),e}function ge(e){return yt(e),e}function WM(e){return yt(e),e}function tZ(e){return yt(e),e}function Bvt(e){return yt(e),e}function xS(e){return e.b==e.c}function Tp(e){return!!e&&e.b}function $vt(e){return!!e&&e.k}function Kvt(e){return!!e&&e.j}function Js(e){yt(e),this.a=e}function nZ(e){return Vg(e),e}function LS(e){gne(e,e.length)}function td(e){No.call(this,e)}function sf(e){No.call(this,e)}function UN(e){No.call(this,e)}function ym(e){No.call(this,e)}function NS(e){No.call(this,e)}function an(e){No.call(this,e)}function WN(e){$ee.call(this,e,0)}function YN(){Wne.call(this,12,3)}function iZ(){iZ=Z,rhe=new te}function v9e(){v9e=Z,ihe=new C}function QA(){QA=Z,cP=new $}function y9e(){y9e=Z,Jtt=new re}function _9e(){throw V(new sn)}function rZ(){throw V(new sn)}function E9e(){throw V(new sn)}function qvt(){throw V(new sn)}function Hvt(){throw V(new sn)}function zvt(){throw V(new sn)}function XN(){this.a=ln(nn(zr))}function Ny(e){hf(),this.a=nn(e)}function S9e(e,t){e.Td(t),t.Sd(e)}function Vvt(e,t){e.a.ec().Mc(t)}function Gvt(e,t,n){e.c.lf(t,n)}function oZ(e){ho.call(this,e)}function uf(e){St.call(this,e)}function nd(){$M.call(this,"")}function FS(){$M.call(this,"")}function n1(){$M.call(this,"")}function _m(){$M.call(this,"")}function cZ(e){ho.call(this,e)}function t_(e){W3.call(this,e)}function JN(e){W9.call(this,e)}function P9e(e){t_.call(this,e)}function M9e(){MN.call(this,null)}function C9e(){MN.call(this,null)}function ZA(){ZA=Z,T_()}function I9e(){I9e=Z,snt=C7t()}function T9e(e){return e.a?e.b:0}function Uvt(e){return e.a?e.b:0}function Wvt(e,t){return e.a-t.a}function Yvt(e,t){return e.a-t.a}function Xvt(e,t){return e.a-t.a}function e9(e,t){return Fie(e,t)}function G(e,t){return WLe(e,t)}function Jvt(e,t){return t in e.a}function j9e(e,t){return e.f=t,e}function Qvt(e,t){return e.b=t,e}function A9e(e,t){return e.c=t,e}function Zvt(e,t){return e.g=t,e}function sZ(e,t){return e.a=t,e}function uZ(e,t){return e.f=t,e}function eyt(e,t){return e.k=t,e}function aZ(e,t){return e.a=t,e}function tyt(e,t){return e.e=t,e}function lZ(e,t){return e.e=t,e}function nyt(e,t){return e.f=t,e}function iyt(e,t){e.b=!0,e.d=t}function ryt(e,t){e.b=new go(t)}function oyt(e,t,n){t.td(e.a[n])}function cyt(e,t,n){t.we(e.a[n])}function syt(e,t){return e.b-t.b}function uyt(e,t){return e.g-t.g}function ayt(e,t){return e.s-t.s}function lyt(e,t){return e?0:t-1}function O9e(e,t){return e?0:t-1}function fyt(e,t){return e?t-1:0}function hyt(e,t){return t.Yf(e)}function Bb(e,t){return e.b=t,e}function t9(e,t){return e.a=t,e}function $b(e,t){return e.c=t,e}function Kb(e,t){return e.d=t,e}function qb(e,t){return e.e=t,e}function fZ(e,t){return e.f=t,e}function BS(e,t){return e.a=t,e}function n_(e,t){return e.b=t,e}function i_(e,t){return e.c=t,e}function Ge(e,t){return e.c=t,e}function lt(e,t){return e.b=t,e}function Ue(e,t){return e.d=t,e}function We(e,t){return e.e=t,e}function dyt(e,t){return e.f=t,e}function Ye(e,t){return e.g=t,e}function Xe(e,t){return e.a=t,e}function Je(e,t){return e.i=t,e}function Qe(e,t){return e.j=t,e}function D9e(e,t){return e.k=t,e}function gyt(e,t){return e.j=t,e}function byt(e,t){I1(),Bo(t,e)}function pyt(e,t,n){lSt(e.a,t,n)}function k9e(e){Xxe.call(this,e)}function hZ(e){Xxe.call(this,e)}function n9(e){rB.call(this,e)}function R9e(e){kAt.call(this,e)}function i1(e){d0.call(this,e)}function x9e(e){GB.call(this,e)}function L9e(e){GB.call(this,e)}function N9e(){wee.call(this,"")}function Tr(){this.a=0,this.b=0}function F9e(){this.b=0,this.a=0}function B9e(e,t){e.b=0,Zp(e,t)}function wyt(e,t){e.c=t,e.b=!0}function $9e(e,t){return e.c._b(t)}function rl(e){return e.e&&e.e()}function QN(e){return e?e.d:null}function K9e(e,t){return dHe(e.b,t)}function myt(e){return e?e.g:null}function vyt(e){return e?e.i:null}function r1(e){return Sh(e),e.o}function Hb(){Hb=Z,oft=NOt()}function q9e(){q9e=Z,lr=Y7t()}function r_(){r_=Z,sme=BOt()}function H9e(){H9e=Z,Hft=FOt()}function dZ(){dZ=Z,cc=Rkt()}function gZ(){gZ=Z,Z1=V_()}function z9e(){throw V(new sn)}function V9e(){throw V(new sn)}function G9e(){throw V(new sn)}function U9e(){throw V(new sn)}function W9e(){throw V(new sn)}function Y9e(){throw V(new sn)}function i9(e){this.a=new Fy(e)}function bZ(e){zXe(),HHt(this,e)}function o1(e){this.a=new MB(e)}function Em(e,t){for(;e.ye(t););}function pZ(e,t){for(;e.sd(t););}function Sm(e,t){return e.a+=t,e}function ZN(e,t){return e.a+=t,e}function id(e,t){return e.a+=t,e}function zb(e,t){return e.a+=t,e}function $S(e){return b1(e),e.a}function r9(e){return e.b!=e.d.c}function X9e(e){return e.l|e.m<<22}function wZ(e,t){return e.d[t.p]}function J9e(e,t){return SNt(e,t)}function mZ(e,t,n){e.splice(t,n)}function Q9e(e){e.c?xWe(e):LWe(e)}function o9(e){this.a=0,this.b=e}function Z9e(){this.a=new JI(y0e)}function e8e(){this.b=new JI(c0e)}function t8e(){this.b=new JI(jW)}function n8e(){this.b=new JI(jW)}function i8e(){throw V(new sn)}function r8e(){throw V(new sn)}function o8e(){throw V(new sn)}function c8e(){throw V(new sn)}function s8e(){throw V(new sn)}function u8e(){throw V(new sn)}function a8e(){throw V(new sn)}function l8e(){throw V(new sn)}function f8e(){throw V(new sn)}function h8e(){throw V(new sn)}function yyt(){throw V(new tc)}function _yt(){throw V(new tc)}function YM(e){this.a=new d8e(e)}function d8e(e){DIt(this,e,D7t())}function XM(e){return!e||Rxe(e)}function JM(e){return Zl[e]!=-1}function Eyt(){Sk!=0&&(Sk=0),Pk=-1}function g8e(){tG==null&&(tG=[])}function Syt(e,t){Oq(he(e.a),t)}function Pyt(e,t){Oq(he(e.a),t)}function QM(e,t){Dm.call(this,e,t)}function o_(e,t){QM.call(this,e,t)}function vZ(e,t){this.b=e,this.c=t}function b8e(e,t){this.b=e,this.a=t}function p8e(e,t){this.a=e,this.b=t}function w8e(e,t){this.a=e,this.b=t}function m8e(e,t){this.a=e,this.b=t}function v8e(e,t){this.a=e,this.b=t}function y8e(e,t){this.a=e,this.b=t}function _8e(e,t){this.a=e,this.b=t}function E8e(e,t){this.a=e,this.b=t}function S8e(e,t){this.a=e,this.b=t}function P8e(e,t){this.b=e,this.a=t}function M8e(e,t){this.b=e,this.a=t}function C8e(e,t){this.b=e,this.a=t}function I8e(e,t){this.b=e,this.a=t}function pn(e,t){this.f=e,this.g=t}function c_(e,t){this.e=e,this.d=t}function Vb(e,t){this.g=e,this.i=t}function eF(e,t){this.a=e,this.b=t}function T8e(e,t){this.a=e,this.f=t}function j8e(e,t){this.b=e,this.c=t}function Myt(e,t){this.a=e,this.b=t}function A8e(e,t){this.a=e,this.b=t}function tF(e,t){this.a=e,this.b=t}function O8e(e){jee(e.dc()),this.c=e}function c9(e){this.b=c(nn(e),83)}function D8e(e){this.a=c(nn(e),83)}function jp(e){this.a=c(nn(e),15)}function k8e(e){this.a=c(nn(e),15)}function s9(e){this.b=c(nn(e),47)}function u9(){this.q=new g.Date}function Nf(){Nf=Z,vhe=new Nt}function s_(){s_=Z,n4=new tt}function KS(e){return e.f.c+e.g.c}function ZM(e,t){return e.b.Hc(t)}function R8e(e,t){return e.b.Ic(t)}function x8e(e,t){return e.b.Qc(t)}function L8e(e,t){return e.b.Hc(t)}function N8e(e,t){return e.c.uc(t)}function _h(e,t){return e.a._b(t)}function F8e(e,t){return $n(e.c,t)}function B8e(e,t){return tu(e.b,t)}function $8e(e,t){return e>t&&t0}function iF(e,t){return uc(e,t)<0}function US(e,t){return e.a.get(t)}function Fyt(e,t){return t.split(e)}function oOe(e,t){return tu(e.e,t)}function IZ(e){return yt(e),!1}function m9(e){bt.call(this,e,21)}function Byt(e,t){LLe.call(this,e,t)}function v9(e,t){pn.call(this,e,t)}function rF(e,t){pn.call(this,e,t)}function TZ(e){FB(),Nke.call(this,e)}function jZ(e,t){$Re(e,e.length,t)}function rC(e,t){bxe(e,e.length,t)}function $yt(e,t,n){t.ud(e.a.Ge(n))}function Kyt(e,t,n){t.we(e.a.Fe(n))}function qyt(e,t,n){t.td(e.a.Kb(n))}function Hyt(e,t,n){e.Mb(n)&&t.td(n)}function WS(e,t,n){e.splice(t,0,n)}function zyt(e,t){return bs(e.e,t)}function y9(e,t){this.d=e,this.e=t}function cOe(e,t){this.b=e,this.a=t}function sOe(e,t){this.b=e,this.a=t}function AZ(e,t){this.b=e,this.a=t}function uOe(e,t){this.a=e,this.b=t}function aOe(e,t){this.a=e,this.b=t}function lOe(e,t){this.a=e,this.b=t}function fOe(e,t){this.a=e,this.b=t}function $y(e,t){this.a=e,this.b=t}function OZ(e,t){this.b=e,this.a=t}function DZ(e,t){this.b=e,this.a=t}function _9(e,t){pn.call(this,e,t)}function E9(e,t){pn.call(this,e,t)}function kZ(e,t){pn.call(this,e,t)}function RZ(e,t){pn.call(this,e,t)}function Pm(e,t){pn.call(this,e,t)}function oF(e,t){pn.call(this,e,t)}function cF(e,t){pn.call(this,e,t)}function sF(e,t){pn.call(this,e,t)}function S9(e,t){pn.call(this,e,t)}function xZ(e,t){pn.call(this,e,t)}function uF(e,t){pn.call(this,e,t)}function oC(e,t){pn.call(this,e,t)}function P9(e,t){pn.call(this,e,t)}function aF(e,t){pn.call(this,e,t)}function YS(e,t){pn.call(this,e,t)}function LZ(e,t){pn.call(this,e,t)}function Li(e,t){pn.call(this,e,t)}function M9(e,t){pn.call(this,e,t)}function hOe(e,t){this.a=e,this.b=t}function dOe(e,t){this.a=e,this.b=t}function gOe(e,t){this.a=e,this.b=t}function bOe(e,t){this.a=e,this.b=t}function pOe(e,t){this.a=e,this.b=t}function wOe(e,t){this.a=e,this.b=t}function mOe(e,t){this.a=e,this.b=t}function vOe(e,t){this.a=e,this.b=t}function yOe(e,t){this.a=e,this.b=t}function NZ(e,t){this.b=e,this.a=t}function _Oe(e,t){this.b=e,this.a=t}function EOe(e,t){this.b=e,this.a=t}function SOe(e,t){this.b=e,this.a=t}function l_(e,t){this.c=e,this.d=t}function POe(e,t){this.e=e,this.d=t}function MOe(e,t){this.a=e,this.b=t}function COe(e,t){this.b=t,this.c=e}function C9(e,t){pn.call(this,e,t)}function cC(e,t){pn.call(this,e,t)}function lF(e,t){pn.call(this,e,t)}function XS(e,t){pn.call(this,e,t)}function FZ(e,t){pn.call(this,e,t)}function fF(e,t){pn.call(this,e,t)}function hF(e,t){pn.call(this,e,t)}function sC(e,t){pn.call(this,e,t)}function BZ(e,t){pn.call(this,e,t)}function dF(e,t){pn.call(this,e,t)}function JS(e,t){pn.call(this,e,t)}function $Z(e,t){pn.call(this,e,t)}function QS(e,t){pn.call(this,e,t)}function ZS(e,t){pn.call(this,e,t)}function Op(e,t){pn.call(this,e,t)}function gF(e,t){pn.call(this,e,t)}function bF(e,t){pn.call(this,e,t)}function KZ(e,t){pn.call(this,e,t)}function e5(e,t){pn.call(this,e,t)}function pF(e,t){pn.call(this,e,t)}function I9(e,t){pn.call(this,e,t)}function uC(e,t){pn.call(this,e,t)}function aC(e,t){pn.call(this,e,t)}function Ky(e,t){pn.call(this,e,t)}function wF(e,t){pn.call(this,e,t)}function qZ(e,t){pn.call(this,e,t)}function mF(e,t){pn.call(this,e,t)}function vF(e,t){pn.call(this,e,t)}function HZ(e,t){pn.call(this,e,t)}function yF(e,t){pn.call(this,e,t)}function _F(e,t){pn.call(this,e,t)}function EF(e,t){pn.call(this,e,t)}function SF(e,t){pn.call(this,e,t)}function zZ(e,t){pn.call(this,e,t)}function IOe(e,t){this.b=e,this.a=t}function TOe(e,t){this.a=e,this.b=t}function jOe(e,t){this.a=e,this.b=t}function AOe(e,t){this.a=e,this.b=t}function OOe(e,t){this.a=e,this.b=t}function VZ(e,t){pn.call(this,e,t)}function GZ(e,t){pn.call(this,e,t)}function DOe(e,t){this.b=e,this.d=t}function UZ(e,t){pn.call(this,e,t)}function WZ(e,t){pn.call(this,e,t)}function kOe(e,t){this.a=e,this.b=t}function ROe(e,t){this.a=e,this.b=t}function T9(e,t){pn.call(this,e,t)}function t5(e,t){pn.call(this,e,t)}function YZ(e,t){pn.call(this,e,t)}function XZ(e,t){pn.call(this,e,t)}function JZ(e,t){pn.call(this,e,t)}function PF(e,t){pn.call(this,e,t)}function QZ(e,t){pn.call(this,e,t)}function MF(e,t){pn.call(this,e,t)}function j9(e,t){pn.call(this,e,t)}function CF(e,t){pn.call(this,e,t)}function IF(e,t){pn.call(this,e,t)}function lC(e,t){pn.call(this,e,t)}function TF(e,t){pn.call(this,e,t)}function ZZ(e,t){pn.call(this,e,t)}function fC(e,t){pn.call(this,e,t)}function eee(e,t){pn.call(this,e,t)}function Vyt(e,t){return bs(e.c,t)}function Gyt(e,t){return bs(t.b,e)}function Uyt(e,t){return-e.b.Je(t)}function tee(e,t){return bs(e.g,t)}function hC(e,t){pn.call(this,e,t)}function qy(e,t){pn.call(this,e,t)}function xOe(e,t){this.a=e,this.b=t}function LOe(e,t){this.a=e,this.b=t}function $e(e,t){this.a=e,this.b=t}function n5(e,t){pn.call(this,e,t)}function i5(e,t){pn.call(this,e,t)}function dC(e,t){pn.call(this,e,t)}function jF(e,t){pn.call(this,e,t)}function A9(e,t){pn.call(this,e,t)}function r5(e,t){pn.call(this,e,t)}function AF(e,t){pn.call(this,e,t)}function O9(e,t){pn.call(this,e,t)}function Mm(e,t){pn.call(this,e,t)}function gC(e,t){pn.call(this,e,t)}function o5(e,t){pn.call(this,e,t)}function c5(e,t){pn.call(this,e,t)}function bC(e,t){pn.call(this,e,t)}function D9(e,t){pn.call(this,e,t)}function Cm(e,t){pn.call(this,e,t)}function k9(e,t){pn.call(this,e,t)}function NOe(e,t){this.a=e,this.b=t}function FOe(e,t){this.a=e,this.b=t}function BOe(e,t){this.a=e,this.b=t}function $Oe(e,t){this.a=e,this.b=t}function KOe(e,t){this.a=e,this.b=t}function qOe(e,t){this.a=e,this.b=t}function yr(e,t){this.a=e,this.b=t}function R9(e,t){pn.call(this,e,t)}function HOe(e,t){this.a=e,this.b=t}function zOe(e,t){this.a=e,this.b=t}function VOe(e,t){this.a=e,this.b=t}function GOe(e,t){this.a=e,this.b=t}function UOe(e,t){this.a=e,this.b=t}function WOe(e,t){this.a=e,this.b=t}function YOe(e,t){this.b=e,this.a=t}function XOe(e,t){this.b=e,this.a=t}function JOe(e,t){this.b=e,this.a=t}function QOe(e,t){this.b=e,this.a=t}function ZOe(e,t){this.a=e,this.b=t}function e7e(e,t){this.a=e,this.b=t}function Wyt(e,t){PLt(e.a,c(t,56))}function t7e(e,t){LCt(e.a,c(t,11))}function Yyt(e,t){return m_(),t!=e}function n7e(){return I9e(),new snt}function i7e(){i$(),this.b=new er}function r7e(){U7(),this.a=new er}function o7e(){Une(),nne.call(this)}function Hy(e,t){pn.call(this,e,t)}function c7e(e,t){this.a=e,this.b=t}function s7e(e,t){this.a=e,this.b=t}function x9(e,t){this.a=e,this.b=t}function u7e(e,t){this.a=e,this.b=t}function a7e(e,t){this.a=e,this.b=t}function l7e(e,t){this.a=e,this.b=t}function f7e(e,t){this.d=e,this.b=t}function nee(e,t){this.d=e,this.e=t}function h7e(e,t){this.f=e,this.c=t}function pC(e,t){this.b=e,this.c=t}function iee(e,t){this.i=e,this.g=t}function d7e(e,t){this.e=e,this.a=t}function g7e(e,t){this.a=e,this.b=t}function ree(e,t){e.i=null,NO(e,t)}function Xyt(e,t){e&&Kn(Gj,e,t)}function b7e(e,t){return xK(e.a,t)}function L9(e){return jI(e.c,e.b)}function Uo(e){return e?e.dd():null}function le(e){return e??null}function Dp(e){return typeof e===M2}function kp(e){return typeof e===Nue}function fr(e){return typeof e===_H}function u1(e,t){return e.Hd().Xb(t)}function N9(e,t){return hTt(e.Kc(),t)}function Ub(e,t){return uc(e,t)==0}function Jyt(e,t){return uc(e,t)>=0}function s5(e,t){return uc(e,t)!=0}function Qyt(e){return""+(yt(e),e)}function wC(e,t){return e.substr(t)}function p7e(e){return Bs(e),e.d.gc()}function OF(e){return WRt(e,e.c),e}function F9(e){return y5(e==null),e}function u5(e,t){return e.a+=""+t,e}function co(e,t){return e.a+=""+t,e}function a5(e,t){return e.a+=""+t,e}function nc(e,t){return e.a+=""+t,e}function wn(e,t){return e.a+=""+t,e}function oee(e,t){return e.a+=""+t,e}function w7e(e,t){Ri(e,t,e.a,e.a.a)}function Tg(e,t){Ri(e,t,e.c.b,e.c)}function Zyt(e,t,n){CVe(t,Pq(e,n))}function e2t(e,t,n){CVe(t,Pq(e,n))}function t2t(e,t){UCt(new $t(e),t)}function m7e(e,t){e.q.setTime(l0(t))}function v7e(e,t){fne.call(this,e,t)}function y7e(e,t){fne.call(this,e,t)}function DF(e,t){fne.call(this,e,t)}function _7e(e){Is(this),G5(this,e)}function cee(e){return pt(e,0),null}function ol(e){return e.a=0,e.b=0,e}function E7e(e,t){return e.a=t.g+1,e}function n2t(e,t){return e.j[t.p]==2}function see(e){return FSt(c(e,79))}function S7e(){S7e=Z,tit=vn(KK())}function P7e(){P7e=Z,mrt=vn(cWe())}function M7e(){this.b=new Fy(Xp(12))}function C7e(){this.b=0,this.a=!1}function I7e(){this.b=0,this.a=!1}function l5(e){this.a=e,SN.call(this)}function T7e(e){this.a=e,SN.call(this)}function ut(e,t){Wi.call(this,e,t)}function kF(e,t){Fp.call(this,e,t)}function Im(e,t){iee.call(this,e,t)}function RF(e,t){X_.call(this,e,t)}function j7e(e,t){mC.call(this,e,t)}function In(e,t){p9(),Kn(Fx,e,t)}function xF(e,t){return fu(e.a,0,t)}function A7e(e,t){return e.a.a.a.cc(t)}function O7e(e,t){return le(e)===le(t)}function i2t(e,t){return zi(e.a,t.a)}function r2t(e,t){return Uc(e.a,t.a)}function o2t(e,t){return hxe(e.a,t.a)}function af(e,t){return e.indexOf(t)}function Wb(e,t){return e==t?0:e?1:-1}function B9(e){return e<10?"0"+e:""+e}function c2t(e){return nn(e),new l5(e)}function D7e(e){return Bc(e.l,e.m,e.h)}function f_(e){return xi((yt(e),e))}function s2t(e){return xi((yt(e),e))}function k7e(e,t){return Uc(e.g,t.g)}function Oo(e){return typeof e===Nue}function u2t(e){return e==V0||e==Ow}function a2t(e){return e==V0||e==Aw}function uee(e){return Do(e.b.b,e,0)}function R7e(e){this.a=n7e(),this.b=e}function x7e(e){this.a=n7e(),this.b=e}function l2t(e,t){return Ee(e.a,t),t}function f2t(e,t){return Ee(e.c,t),e}function L7e(e,t){return wu(e.a,t),e}function h2t(e,t){return ka(),t.a+=e}function d2t(e,t){return ka(),t.a+=e}function g2t(e,t){return ka(),t.c+=e}function aee(e,t){L_(e,0,e.length,t)}function Eh(){pQ.call(this,new Ng)}function N7e(){m8.call(this,0,0,0,0)}function zy(){Ru.call(this,0,0,0,0)}function go(e){this.a=e.a,this.b=e.b}function a1(e){return e==ga||e==Va}function h_(e){return e==Gh||e==Vh}function F7e(e){return e==Bv||e==Fv}function Tm(e){return e!=Xl&&e!=Y1}function Qs(e){return e.Lg()&&e.Mg()}function B7e(e){return R8(c(e,118))}function $9(e){return wu(new tr,e)}function $7e(e,t){return new X_(t,e)}function b2t(e,t){return new X_(t,e)}function lee(e,t,n){jO(e,t),AO(e,n)}function K9(e,t,n){p0(e,t),b0(e,n)}function Cl(e,t,n){es(e,t),ts(e,n)}function q9(e,t,n){$_(e,t),q_(e,n)}function H9(e,t,n){K_(e,t),H_(e,n)}function LF(e,t){nE(e,t),z_(e,e.D)}function fee(e){h7e.call(this,e,!0)}function K7e(e,t,n){ete.call(this,e,t,n)}function l1(e){T1(),pTt.call(this,e)}function q7e(){v9.call(this,"Head",1)}function H7e(){v9.call(this,"Tail",3)}function NF(e){e.c=oe(xt,xe,1,0,5,1)}function z7e(e){e.a=oe(xt,xe,1,8,5,1)}function V7e(e){Zc(e.xf(),new kIe(e))}function jm(e){return e!=null?fi(e):0}function p2t(e,t){return Jp(t,jl(e))}function w2t(e,t){return Jp(t,jl(e))}function m2t(e,t){return e[e.length]=t}function v2t(e,t){return e[e.length]=t}function hee(e){return m4t(e.b.Kc(),e.a)}function y2t(e,t){return LO(LB(e.d),t)}function _2t(e,t){return LO(LB(e.g),t)}function E2t(e,t){return LO(LB(e.j),t)}function Yr(e,t){Wi.call(this,e.b,t)}function Yb(e){m8.call(this,e,e,e,e)}function dee(e){return e.b&&rH(e),e.a}function gee(e){return e.b&&rH(e),e.c}function S2t(e,t){Vl||(e.b=t)}function FF(e,t,n){return vi(e,t,n),n}function G7e(e,t,n){vi(e.c[t.g],t.g,n)}function P2t(e,t,n){c(e.c,69).Xh(t,n)}function M2t(e,t,n){Cl(n,n.i+e,n.j+t)}function C2t(e,t){on(dc(e.a),cNe(t))}function I2t(e,t){on(Ns(e.a),sNe(t))}function f5(e){Ln(),Lb.call(this,e)}function T2t(e){return e==null?0:fi(e)}function U7e(){U7e=Z,uW=new n6(iY)}function un(){un=Z,new W7e,new Se}function W7e(){new en,new en,new en}function bee(){bee=Z,kQ(),ohe=new en}function Il(){Il=Z,g.Math.log(2)}function Du(){Du=Z,sh=(eOe(),fft)}function j2t(){throw V(new td(Ltt))}function A2t(){throw V(new td(Ltt))}function O2t(){throw V(new td(Ntt))}function D2t(){throw V(new td(Ntt))}function Y7e(e){this.a=e,kte.call(this,e)}function BF(e){this.a=e,c9.call(this,e)}function $F(e){this.a=e,c9.call(this,e)}function cr(e,t){wB(e.c,e.c.length,t)}function Fo(e){return e.at?1:0}function J7e(e,t){return uc(e,t)>0?e:t}function Bc(e,t,n){return{l:e,m:t,h:n}}function k2t(e,t){e.a!=null&&t7e(t,e.a)}function Q7e(e){e.a=new ii,e.c=new ii}function z9(e){this.b=e,this.a=new Se}function Z7e(e){this.b=new F2e,this.a=e}function wee(e){ate.call(this),this.a=e}function eDe(){v9.call(this,"Range",2)}function tDe(){fce(),this.a=new JI(kde)}function R2t(e,t){nn(t),Rm(e).Jc(new R)}function x2t(e,t){return hu(),t.n.b+=e}function L2t(e,t,n){return Kn(e.g,n,t)}function N2t(e,t,n){return Kn(e.k,n,t)}function F2t(e,t){return Kn(e.a,t.a,t)}function Am(e,t,n){return Ooe(t,n,e.c)}function mee(e){return new $e(e.c,e.d)}function B2t(e){return new $e(e.c,e.d)}function Wo(e){return new $e(e.a,e.b)}function nDe(e,t){return uqt(e.a,t,null)}function $2t(e){Rr(e,null),br(e,null)}function iDe(e){o$(e,null),c$(e,null)}function rDe(){mC.call(this,null,null)}function oDe(){Q9.call(this,null,null)}function vee(e){this.a=e,en.call(this)}function K2t(e){this.b=(st(),new AN(e))}function V9(e){e.j=oe(mhe,we,310,0,0,1)}function q2t(e,t,n){e.c.Vc(t,c(n,133))}function H2t(e,t,n){e.c.ji(t,c(n,133))}function cDe(e,t){Xt(e),e.Gc(c(t,15))}function h5(e,t){return PKt(e.c,e.b,t)}function z2t(e,t){return new TDe(e.Kc(),t)}function KF(e,t){return HTt(e.Kc(),t)!=-1}function yee(e,t){return e.a.Bc(t)!=null}function G9(e){return e.Ob()?e.Pb():null}function sDe(e){return pf(e,0,e.length)}function Q(e,t){return e!=null&&VK(e,t)}function V2t(e,t){e.q.setHours(t),_6(e,t)}function uDe(e,t){e.c&&(zte(t),RLe(t))}function G2t(e,t,n){c(e.Kb(n),164).Nb(t)}function U2t(e,t,n){return tqt(e,t,n),n}function aDe(e,t,n){e.a=t^1502,e.b=n^ez}function qF(e,t,n){return e.a[t.g][n.g]}function Tl(e,t){return e.a[t.c.p][t.p]}function W2t(e,t){return e.e[t.c.p][t.p]}function Y2t(e,t){return e.c[t.c.p][t.p]}function X2t(e,t){return e.j[t.p]=oLt(t)}function J2t(e,t){return Sie(e.f,t.tg())}function Q2t(e,t){return Sie(e.b,t.tg())}function Z2t(e,t){return e.a0?t*t/e:t*t*100}function P3t(e,t){return e>0?t/(e*e):t*100}function M3t(e,t,n){return Ee(t,DHe(e,n))}function C3t(e,t,n){bO(),e.Xe(t)&&n.td(e)}function b_(e,t,n){var i;i=e.Zc(t),i.Rb(n)}function xp(e,t,n){return e.a+=t,e.b+=n,e}function I3t(e,t,n){return e.a*=t,e.b*=n,e}function _C(e,t,n){return e.a-=t,e.b-=n,e}function zee(e,t){return e.a=t.a,e.b=t.b,e}function t8(e){return e.a=-e.a,e.b=-e.b,e}function $De(e){this.c=e,this.a=1,this.b=1}function KDe(e){this.c=e,es(e,0),ts(e,0)}function qDe(e){wi.call(this),q5(this,e)}function HDe(e){vH(),gAe(this),this.mf(e)}function zDe(e,t){GS(),mC.call(this,e,t)}function Vee(e,t){rd(),Q9.call(this,e,t)}function VDe(e,t){rd(),Q9.call(this,e,t)}function GDe(e,t){rd(),Vee.call(this,e,t)}function Zs(e,t,n){iu.call(this,e,t,n,2)}function YF(e,t){Du(),w8.call(this,e,t)}function UDe(e,t){Du(),YF.call(this,e,t)}function Gee(e,t){Du(),YF.call(this,e,t)}function WDe(e,t){Du(),Gee.call(this,e,t)}function Uee(e,t){Du(),w8.call(this,e,t)}function YDe(e,t){Du(),Uee.call(this,e,t)}function XDe(e,t){Du(),w8.call(this,e,t)}function T3t(e,t){return e.c.Fc(c(t,133))}function Wee(e,t,n){return oD(iI(e,t),n)}function j3t(e,t,n){return t.Qk(e.e,e.c,n)}function A3t(e,t,n){return t.Rk(e.e,e.c,n)}function XF(e,t){return S1(e.e,c(t,49))}function O3t(e,t,n){e6(Ns(e.a),t,sNe(n))}function D3t(e,t,n){e6(dc(e.a),t,cNe(n))}function Yee(e,t){t.$modCount=e.$modCount}function w5(){w5=Z,KP=new hi("root")}function p_(){p_=Z,Wj=new GAe,new UAe}function JDe(){this.a=new u0,this.b=new u0}function Xee(){pKe.call(this),this.Bb|=Vr}function QDe(){pn.call(this,"GROW_TREE",0)}function k3t(e){return e==null?null:Jqt(e)}function R3t(e){return e==null?null:okt(e)}function x3t(e){return e==null?null:Ro(e)}function L3t(e){return e==null?null:Ro(e)}function Sh(e){e.o==null&&kxt(e)}function Fe(e){return y5(e==null||Dp(e)),e}function Te(e){return y5(e==null||kp(e)),e}function ln(e){return y5(e==null||fr(e)),e}function Jee(e){this.q=new g.Date(l0(e))}function EC(e,t){this.c=e,c_.call(this,e,t)}function n8(e,t){this.a=e,EC.call(this,e,t)}function N3t(e,t){this.d=e,uIe(this),this.b=t}function Qee(e,t){I$.call(this,e),this.a=t}function Zee(e,t){I$.call(this,e),this.a=t}function F3t(e){Coe.call(this,0,0),this.f=e}function ete(e,t,n){dO.call(this,e,t,n,null)}function ZDe(e,t,n){dO.call(this,e,t,n,null)}function B3t(e,t,n){return e.ue(t,n)<=0?n:t}function $3t(e,t,n){return e.ue(t,n)<=0?t:n}function K3t(e,t){return c(h0(e.b,t),149)}function q3t(e,t){return c(h0(e.c,t),229)}function JF(e){return c(Ne(e.a,e.b),287)}function eke(e){return new $e(e.c,e.d+e.a)}function tke(e){return hu(),F7e(c(e,197))}function Lp(){Lp=Z,ude=nt((ou(),Cb))}function H3t(e,t){t.a?TNt(e,t):HF(e.a,t.b)}function nke(e,t){Vl||Ee(e.a,t)}function z3t(e,t){return tC(),Y_(t.d.i,e)}function V3t(e,t){return h2(),new rYe(t,e)}function ff(e,t){return FC(t,iae),e.f=t,e}function tte(e,t,n){return n=yu(e,t,3,n),n}function nte(e,t,n){return n=yu(e,t,6,n),n}function ite(e,t,n){return n=yu(e,t,9,n),n}function SC(e,t,n){++e.j,e.Ki(),M$(e,t,n)}function ike(e,t,n){++e.j,e.Hi(t,e.oi(t,n))}function rke(e,t,n){var i;i=e.Zc(t),i.Rb(n)}function oke(e,t,n){return wue(e.c,e.b,t,n)}function rte(e,t){return(t&Fn)%e.d.length}function Wi(e,t){hi.call(this,e),this.a=t}function ote(e,t){CQ.call(this,e),this.a=t}function QF(e,t){CQ.call(this,e),this.a=t}function cke(e,t){this.c=e,d0.call(this,t)}function ske(e,t){this.a=e,uAe.call(this,t)}function PC(e,t){this.a=e,uAe.call(this,t)}function uke(e){this.a=(pu(e,mw),new Dc(e))}function ake(e){this.a=(pu(e,mw),new Dc(e))}function MC(e){return!e.a&&(e.a=new H),e.a}function lke(e){return e>8?0:e+1}function G3t(e,t){return Pt(),e==t?0:e?1:-1}function cte(e,t,n){return Xy(e,c(t,22),n)}function U3t(e,t,n){return e.apply(t,n)}function fke(e,t,n){return e.a+=pf(t,0,n),e}function ste(e,t){var n;return n=e.e,e.e=t,n}function W3t(e,t){var n;n=e[ZH],n.call(e,t)}function Y3t(e,t){var n;n=e[ZH],n.call(e,t)}function Np(e,t){e.a.Vc(e.b,t),++e.b,e.c=-1}function hke(e){Is(e.e),e.d.b=e.d,e.d.a=e.d}function CC(e){e.b?CC(e.b):e.f.c.zc(e.e,e.d)}function X3t(e,t,n){Ig(),oIe(e,t.Ce(e.a,n))}function J3t(e,t){return QN(WHe(e.a,t,!0))}function Q3t(e,t){return QN(YHe(e.a,t,!0))}function Da(e,t){return e9(new Array(t),e)}function ZF(e){return String.fromCharCode(e)}function Z3t(e){return e==null?null:e.message}function dke(){this.a=new Se,this.b=new Se}function gke(){this.a=new IJ,this.b=new SAe}function bke(){this.b=new Tr,this.c=new Se}function ute(){this.d=new Tr,this.e=new Tr}function ate(){this.n=new Tr,this.o=new Tr}function i8(){this.n=new Ry,this.i=new zy}function pke(){this.a=new YMe,this.b=new L4e}function wke(){this.a=new Se,this.d=new Se}function mke(){this.b=new er,this.a=new er}function vke(){this.b=new en,this.a=new en}function yke(){this.b=new e8e,this.a=new FSe}function _ke(){i8.call(this),this.a=new Tr}function m5(e){PTt.call(this,e,(wO(),pG))}function lte(e,t,n,i){m8.call(this,e,t,n,i)}function e_t(e,t,n){n!=null&&RO(t,nq(e,n))}function t_t(e,t,n){n!=null&&xO(t,nq(e,n))}function fte(e,t,n){return n=yu(e,t,11,n),n}function Wn(e,t){return e.a+=t.a,e.b+=t.b,e}function hr(e,t){return e.a-=t.a,e.b-=t.b,e}function n_t(e,t){return e.n.a=(yt(t),t+10)}function i_t(e,t){return e.n.a=(yt(t),t+10)}function r_t(e,t){return t==e||pE(z7(t),e)}function Eke(e,t){return Kn(e.a,t,"")==null}function o_t(e,t){return tC(),!Y_(t.d.i,e)}function c_t(e,t){a1(e.f)?Sxt(e,t):sDt(e,t)}function s_t(e,t){var n;return n=t.Hh(e.a),n}function Fp(e,t){ho.call(this,J6+e+ub+t)}function Uy(e,t,n,i){Me.call(this,e,t,n,i)}function hte(e,t,n,i){Me.call(this,e,t,n,i)}function Ske(e,t,n,i){hte.call(this,e,t,n,i)}function Pke(e,t,n,i){T8.call(this,e,t,n,i)}function eB(e,t,n,i){T8.call(this,e,t,n,i)}function dte(e,t,n,i){T8.call(this,e,t,n,i)}function Mke(e,t,n,i){eB.call(this,e,t,n,i)}function gte(e,t,n,i){eB.call(this,e,t,n,i)}function dt(e,t,n,i){dte.call(this,e,t,n,i)}function Cke(e,t,n,i){gte.call(this,e,t,n,i)}function Ike(e,t,n,i){hne.call(this,e,t,n,i)}function Tke(e,t,n){this.a=e,$ee.call(this,t,n)}function jke(e,t,n){this.c=t,this.b=n,this.a=e}function u_t(e,t,n){return e.d=c(t.Kb(n),164)}function bte(e,t){return e.Aj().Nh().Kh(e,t)}function pte(e,t){return e.Aj().Nh().Ih(e,t)}function Ake(e,t){return yt(e),le(e)===le(t)}function rt(e,t){return yt(e),le(e)===le(t)}function tB(e,t){return QN(WHe(e.a,t,!1))}function nB(e,t){return QN(YHe(e.a,t,!1))}function a_t(e,t){return e.b.sd(new aOe(e,t))}function l_t(e,t){return e.b.sd(new lOe(e,t))}function Oke(e,t){return e.b.sd(new fOe(e,t))}function wte(e,t,n){return e.lastIndexOf(t,n)}function f_t(e,t,n){return zi(e[t.b],e[n.b])}function h_t(e,t){return pe(t,(Oe(),lj),e)}function d_t(e,t){return Uc(t.a.d.p,e.a.d.p)}function g_t(e,t){return Uc(e.a.d.p,t.a.d.p)}function b_t(e,t){return zi(e.c-e.s,t.c-t.s)}function Dke(e){return e.c?Do(e.c.a,e,0):-1}function p_t(e){return e<100?null:new i1(e)}function Wy(e){return e==Mb||e==ch||e==Ic}function kke(e,t){return Q(t,15)&&BWe(e.c,t)}function w_t(e,t){Vl||t&&(e.d=t)}function iB(e,t){var n;return n=t,!!$re(e,n)}function mte(e,t){this.c=e,AB.call(this,e,t)}function Rke(e){this.c=e,DF.call(this,dD,0)}function xke(e,t){E4t.call(this,e,e.length,t)}function m_t(e,t,n){return c(e.c,69).lk(t,n)}function r8(e,t,n){return c(e.c,69).mk(t,n)}function v_t(e,t,n){return j3t(e,c(t,332),n)}function vte(e,t,n){return A3t(e,c(t,332),n)}function y_t(e,t,n){return kVe(e,c(t,332),n)}function Lke(e,t,n){return mDt(e,c(t,332),n)}function v5(e,t){return t==null?null:tw(e.b,t)}function yte(e){return kp(e)?(yt(e),e):e.ke()}function o8(e){return!isNaN(e)&&!isFinite(e)}function Nke(e){hf(),this.a=(st(),new t_(e))}function IC(e){m_(),this.d=e,this.a=new vm}function ku(e,t,n){this.a=e,this.b=t,this.c=n}function Fke(e,t,n){this.a=e,this.b=t,this.c=n}function Bke(e,t,n){this.d=e,this.b=n,this.a=t}function rB(e){Q7e(this),na(this),qr(this,e)}function ps(e){NF(this),xte(this.c,0,e.Pc())}function $ke(e){nu(e.a),NBe(e.c,e.b),e.b=null}function Kke(e){this.a=e,Nf(),ns(Date.now())}function qke(){qke=Z,Bhe=new C,Ok=new C}function oB(){oB=Z,Ahe=new kr,unt=new jo}function Hke(){Hke=Z,pft=oe(xt,xe,1,0,5,1)}function zke(){zke=Z,Rft=oe(xt,xe,1,0,5,1)}function _te(){_te=Z,xft=oe(xt,xe,1,0,5,1)}function hf(){hf=Z,new jQ((st(),st(),Qr))}function __t(e){return wO(),mn((WBe(),fnt),e)}function E_t(e){return Fl(),mn((dBe(),wnt),e)}function S_t(e){return p7(),mn((yFe(),Snt),e)}function P_t(e){return EO(),mn((_Fe(),Pnt),e)}function M_t(e){return X7(),mn((sqe(),Mnt),e)}function C_t(e){return al(),mn((lBe(),Tnt),e)}function I_t(e){return Ts(),mn((fBe(),Ant),e)}function T_t(e){return Qc(),mn((hBe(),Dnt),e)}function j_t(e){return fD(),mn((S7e(),tit),e)}function A_t(e){return v0(),mn((XBe(),iit),e)}function O_t(e){return m2(),mn((JBe(),oit),e)}function D_t(e){return c6(),mn((QBe(),uit),e)}function k_t(e){return l9(),mn((QNe(),ait),e)}function R_t(e){return SO(),mn((EFe(),Cit),e)}function x_t(e){return $5(),mn((gBe(),Uit),e)}function L_t(e){return Hr(),mn((T$e(),Jit),e)}function N_t(e){return Q_(),mn((YBe(),nrt),e)}function F_t(e){return y0(),mn((bBe(),urt),e)}function Ete(e,t){if(!e)throw V(new St(t))}function B_t(e){return Dt(),mn((Y$e(),hrt),e)}function Ste(e){m8.call(this,e.d,e.c,e.a,e.b)}function cB(e){m8.call(this,e.d,e.c,e.a,e.b)}function Pte(e,t,n){this.b=e,this.c=t,this.a=n}function c8(e,t,n){this.b=e,this.a=t,this.c=n}function Vke(e,t,n){this.a=e,this.b=t,this.c=n}function Mte(e,t,n){this.a=e,this.b=t,this.c=n}function Gke(e,t,n){this.a=e,this.b=t,this.c=n}function Cte(e,t,n){this.a=e,this.b=t,this.c=n}function Uke(e,t,n){this.b=e,this.a=t,this.c=n}function s8(e,t,n){this.e=t,this.b=e,this.d=n}function $_t(e,t,n){return Ig(),e.a.Od(t,n),t}function sB(e){var t;return t=new Pi,t.e=e,t}function Ite(e){var t;return t=new AAe,t.b=e,t}function TC(){TC=Z,zk=new f_e,Vk=new h_e}function ka(){ka=Z,Crt=new WEe,Irt=new YEe}function K_t(e){return YO(),mn((e$e(),_rt),e)}function q_t(e){return Nl(),mn((n$e(),Art),e)}function H_t(e){return W7(),mn((XKe(),Frt),e)}function z_t(e){return y2(),mn((Q$e(),Brt),e)}function V_t(e){return gO(),mn((TFe(),$rt),e)}function G_t(e){return f2(),mn((pBe(),Krt),e)}function U_t(e){return Zm(),mn((S$e(),Drt),e)}function W_t(e){return m0(),mn((vBe(),Nrt),e)}function Y_t(e){return DO(),mn((wBe(),qrt),e)}function X_t(e){return Qg(),mn((_$e(),Hrt),e)}function J_t(e){return uI(),mn((PFe(),zrt),e)}function Q_t(e){return zg(),mn((mBe(),Grt),e)}function Z_t(e){return F7(),mn((nKe(),Urt),e)}function eEt(e){return eI(),mn((MFe(),Wrt),e)}function tEt(e){return $I(),mn((eKe(),Yrt),e)}function nEt(e){return mE(),mn((Z$e(),Xrt),e)}function iEt(e){return to(),mn((Eqe(),Jrt),e)}function rEt(e){return J_(),mn((_Be(),Qrt),e)}function oEt(e){return Oh(),mn((yBe(),eot),e)}function cEt(e){return iO(),mn((jFe(),tot),e)}function sEt(e){return Ku(),mn((P$e(),not),e)}function uEt(e){return R7(),mn((tKe(),wst),e)}function aEt(e){return X5(),mn((EBe(),mst),e)}function lEt(e){return rw(),mn((i$e(),vst),e)}function fEt(e){return Zr(),mn((MBe(),Mst),e)}function hEt(e){return iv(),mn((YKe(),_st),e)}function dEt(e){return kh(),mn((PBe(),Est),e)}function gEt(e){return rI(),mn((IFe(),Sst),e)}function bEt(e){return VO(),mn((SBe(),Cst),e)}function pEt(e){return s6(),mn((E$e(),yst),e)}function wEt(e){return WC(),mn((CFe(),Ist),e)}function mEt(e){return rE(),mn((IBe(),Tst),e)}function vEt(e){return HO(),mn((TBe(),jst),e)}function yEt(e){return XO(),mn((CBe(),Ast),e)}function _Et(e){return w0(),mn((jBe(),Hst),e)}function EEt(e){return F5(),mn((OFe(),Wst),e)}function SEt(e){return gf(),mn((DFe(),tut),e)}function PEt(e){return Al(),mn((kFe(),iut),e)}function MEt(e){return cl(),mn((AFe(),mut),e)}function CEt(e){return s0(),mn((RFe(),Mut),e)}function IEt(e){return dE(),mn((ZBe(),Cut),e)}function TEt(e){return d6(),mn((iKe(),Tut),e)}function jEt(e){return Y8(),mn((NFe(),qut),e)}function AEt(e){return $O(),mn((LFe(),Wut),e)}function OEt(e){return Z8(),mn((xFe(),Hut),e)}function DEt(e){return s7(),mn((ABe(),Xut),e)}function kEt(e){return pO(),mn((FFe(),Jut),e)}function REt(e){return EI(),mn((OBe(),Qut),e)}function xEt(e){return C7(),mn((t$e(),dat),e)}function LEt(e){return zO(),mn((kBe(),gat),e)}function NEt(e){return c7(),mn((DBe(),bat),e)}function FEt(e){return PE(),mn((I$e(),xat),e)}function BEt(e){return TI(),mn((RBe(),Lat),e)}function $Et(e){return h9(),mn((XNe(),Nat),e)}function KEt(e){return d9(),mn((YNe(),Bat),e)}function qEt(e){return YC(),mn(($Fe(),$at),e)}function HEt(e){return qI(),mn((M$e(),Kat),e)}function zEt(e){return zS(),mn((JNe(),ilt),e)}function VEt(e){return mI(),mn((BFe(),rlt),e)}function GEt(e){return fl(),mn((C$e(),llt),e)}function UEt(e){return yd(),mn((JKe(),hlt),e)}function WEt(e){return Gf(),mn((J$e(),dlt),e)}function YEt(e){return sw(),mn((X$e(),vlt),e)}function XEt(e){return Jr(),mn((P7e(),mrt),e)}function JEt(e){return G_(),mn((SFe(),wrt),e)}function QEt(e){return eo(),mn((j$e(),Rlt),e)}function ZEt(e){return xl(),mn((LBe(),xlt),e)}function e4t(e){return Lh(),mn((c$e(),Llt),e)}function t4t(e){return L7(),mn((oKe(),Nlt),e)}function n4t(e){return Rh(),mn((xBe(),Blt),e)}function i4t(e){return mu(),mn((o$e(),Klt),e)}function r4t(e){return fw(),mn((cqe(),qlt),e)}function o4t(e){return Um(),mn((A$e(),Hlt),e)}function c4t(e){return wr(),mn((V$e(),zlt),e)}function s4t(e){return js(),mn((rKe(),Vlt),e)}function u4t(e){return ou(),mn((u$e(),Jlt),e)}function a4t(e){return Ks(),mn((Sqe(),Qlt),e)}function l4t(e){return Ie(),mn((O$e(),Glt),e)}function f4t(e){return l7(),mn((s$e(),Zlt),e)}function h4t(e){return ru(),mn((r$e(),nft),e)}function d4t(e){return _E(),mn((QKe(),bft),e)}function g4t(e,t){return yt(e),e+(yt(t),t)}function b4t(e,t){return Nf(),on(he(e.a),t)}function p4t(e,t){return Nf(),on(he(e.a),t)}function uB(e,t){this.c=e,this.a=t,this.b=t-e}function Wke(e,t,n){this.a=e,this.b=t,this.c=n}function Tte(e,t,n){this.a=e,this.b=t,this.c=n}function jte(e,t,n){this.a=e,this.b=t,this.c=n}function Yke(e,t,n){this.a=e,this.b=t,this.c=n}function Xke(e,t,n){this.a=e,this.b=t,this.c=n}function cd(e,t,n){this.e=e,this.a=t,this.c=n}function Jke(e,t,n){Du(),Kne.call(this,e,t,n)}function aB(e,t,n){Du(),Mne.call(this,e,t,n)}function Ate(e,t,n){Du(),Mne.call(this,e,t,n)}function Ote(e,t,n){Du(),Mne.call(this,e,t,n)}function Qke(e,t,n){Du(),aB.call(this,e,t,n)}function Dte(e,t,n){Du(),aB.call(this,e,t,n)}function Zke(e,t,n){Du(),Dte.call(this,e,t,n)}function eRe(e,t,n){Du(),Ate.call(this,e,t,n)}function tRe(e,t,n){Du(),Ote.call(this,e,t,n)}function jC(e,t){return nn(e),nn(t),new E8e(e,t)}function Yy(e,t){return nn(e),nn(t),new gRe(e,t)}function w4t(e,t){return nn(e),nn(t),new bRe(e,t)}function m4t(e,t){return nn(e),nn(t),new P8e(e,t)}function c(e,t){return y5(e==null||VK(e,t)),e}function w_(e){var t;return t=new Se,F$(t,e),t}function v4t(e){var t;return t=new er,F$(t,e),t}function nRe(e){var t;return t=new FQ,Q$(t,e),t}function AC(e){var t;return t=new wi,Q$(t,e),t}function y4t(e){return!e.e&&(e.e=new Se),e.e}function _4t(e){return!e.c&&(e.c=new G3),e.c}function Ee(e,t){return e.c[e.c.length]=t,!0}function iRe(e,t){this.c=e,this.b=t,this.a=!1}function kte(e){this.d=e,uIe(this),this.b=dSt(e.d)}function rRe(){this.a=";,;",this.b="",this.c=""}function E4t(e,t,n){oxe.call(this,t,n),this.a=e}function oRe(e,t,n){this.b=e,v7e.call(this,t,n)}function Rte(e,t,n){this.c=e,y9.call(this,t,n)}function xte(e,t,n){ise(n,0,e,t,n.length,!1)}function Bf(e,t,n,i,r){e.b=t,e.c=n,e.d=i,e.a=r}function S4t(e,t){t&&(e.b=t,e.a=(b1(t),t.a))}function Lte(e,t,n,i,r){e.d=t,e.c=n,e.a=i,e.b=r}function Nte(e){var t,n;t=e.b,n=e.c,e.b=n,e.c=t}function Fte(e){var t,n;n=e.d,t=e.a,e.d=t,e.a=n}function Bte(e){return y1(jSt(Oo(e)?ia(e):e))}function P4t(e,t){return Uc(_Re(e.d),_Re(t.d))}function M4t(e,t){return t==(Ie(),Mt)?e.c:e.d}function m_(){m_=Z,r0e=(Ie(),Mt),XR=jt}function cRe(){this.b=ge(Te(Le((dl(),kG))))}function sRe(e){return Ig(),oe(xt,xe,1,e,5,1)}function C4t(e){return new $e(e.c+e.b,e.d+e.a)}function I4t(e,t){return f9(),Uc(e.d.p,t.d.p)}function lB(e){return Lt(e.b!=0),Fu(e,e.a.a)}function T4t(e){return Lt(e.b!=0),Fu(e,e.c.b)}function $te(e,t){if(!e)throw V(new p9e(t))}function u8(e,t){if(!e)throw V(new St(t))}function Kte(e,t,n){l_.call(this,e,t),this.b=n}function OC(e,t,n){nee.call(this,e,t),this.c=n}function uRe(e,t,n){B$e.call(this,t,n),this.d=e}function qte(e){_te(),xA.call(this),this.th(e)}function aRe(e,t,n){this.a=e,Im.call(this,t,n)}function lRe(e,t,n){this.a=e,Im.call(this,t,n)}function a8(e,t,n){nee.call(this,e,t),this.c=n}function fRe(){k_(),USt.call(this,(c1(),_a))}function hRe(e){return e!=null&&!OK(e,oM,cM)}function j4t(e,t){return(_He(e)<<4|_He(t))&Ni}function A4t(e,t){return k8(),ZK(e,t),new Bxe(e,t)}function jg(e,t){var n;e.n&&(n=t,Ee(e.f,n))}function v_(e,t,n){var i;i=new qp(n),ul(e,t,i)}function O4t(e,t){var n;return n=e.c,cre(e,t),n}function Hte(e,t){return t<0?e.g=-1:e.g=t,e}function l8(e,t){return bIt(e),e.a*=t,e.b*=t,e}function dRe(e,t,n,i,r){e.c=t,e.d=n,e.b=i,e.a=r}function Cn(e,t){return Ri(e,t,e.c.b,e.c),!0}function zte(e){e.a.b=e.b,e.b.a=e.a,e.a=e.b=null}function fB(e){this.b=e,this.a=e0(this.b.a).Ed()}function gRe(e,t){this.b=e,this.a=t,SN.call(this)}function bRe(e,t){this.a=e,this.b=t,SN.call(this)}function pRe(e,t){oxe.call(this,t,1040),this.a=e}function DC(e){return e==0||isNaN(e)?e:e<0?-1:1}function D4t(e){return t2(),Uf(e)==yi(M1(e))}function k4t(e){return t2(),M1(e)==yi(Uf(e))}function Zb(e,t){return f6(e,new l_(t.a,t.b))}function R4t(e){return!Kr(e)&&e.c.i.c==e.d.i.c}function f8(e){var t;return t=e.n,e.a.b+t.d+t.a}function wRe(e){var t;return t=e.n,e.e.b+t.d+t.a}function Vte(e){var t;return t=e.n,e.e.a+t.b+t.c}function mRe(e){return Ln(),new $f(0,e)}function x4t(e){return e.a?e.a:VB(e)}function y5(e){if(!e)throw V(new e_(null))}function vRe(){vRe=Z,wY=(st(),new jN(GV))}function h8(){h8=Z,new qoe(($N(),rG),(KN(),iG))}function yRe(){yRe=Z,dhe=oe($r,we,19,256,0,1)}function hB(e,t,n,i){woe.call(this,e,t,n,i,0,0)}function L4t(e,t,n){return Kn(e.b,c(n.b,17),t)}function N4t(e,t,n){return Kn(e.b,c(n.b,17),t)}function F4t(e,t){return Ee(e,new $e(t.a,t.b))}function B4t(e,t){return e.c=t)throw V(new RQ)}function _St(e,t,n){return vi(t,0,Yte(t[0],n[0])),t}function ESt(e,t,n){t.Ye(n,ge(Te(Bt(e.b,n)))*e.a)}function rxe(e,t,n){return ov(),U_(e,t)&&U_(e,n)}function M5(e){return js(),!e.Hc(Wh)&&!e.Hc(X1)}function C8(e){return new $e(e.c+e.b/2,e.d+e.a/2)}function PB(e,t){return t.kh()?S1(e.b,c(t,49)):t}function fne(e,t){this.e=e,this.d=(t&64)!=0?t|mf:t}function oxe(e,t){this.c=0,this.d=e,this.b=t|64|mf}function I8(e){this.b=new Dc(11),this.a=(xm(),e)}function MB(e){this.b=null,this.a=(xm(),e||Ihe)}function cxe(e){this.a=jze(e.a),this.b=new ps(e.b)}function sxe(e){this.b=e,Vy.call(this,e),lDe(this)}function uxe(e){this.b=e,vC.call(this,e),fDe(this)}function Kp(e,t,n){this.a=e,Uy.call(this,t,n,5,6)}function hne(e,t,n,i){this.b=e,qi.call(this,t,n,i)}function sr(e,t,n,i,r){A$.call(this,e,t,n,i,r,-1)}function C5(e,t,n,i,r){QC.call(this,e,t,n,i,r,-1)}function Me(e,t,n,i){qi.call(this,e,t,n),this.b=i}function T8(e,t,n,i){OC.call(this,e,t,n),this.b=i}function axe(e){h7e.call(this,e,!1),this.a=!1}function lxe(e,t){this.b=e,VCe.call(this,e.b),this.a=t}function fxe(e,t){Hp(),Myt.call(this,e,n7(new Js(t)))}function j8(e,t){return Ln(),new Cne(e,t,0)}function CB(e,t){return Ln(),new Cne(6,e,t)}function SSt(e,t){return rt(e.substr(0,t.length),t)}function tu(e,t){return fr(t)?WB(e,t):!!Po(e.f,t)}function Sr(e,t){for(yt(t);e.Ob();)t.td(e.Pb())}function km(e,t,n){T1(),this.e=e,this.d=t,this.a=n}function sd(e,t,n,i){var r;r=e.i,r.i=t,r.a=n,r.b=i}function dne(e){var t;for(t=e;t.f;)t=t.f;return t}function Qy(e){var t;return t=Y5(e),Lt(t!=null),t}function PSt(e){var t;return t=aAt(e),Lt(t!=null),t}function __(e,t){var n;return n=e.a.gc(),Pie(t,n),n-t}function gne(e,t){var n;for(n=0;n0?g.Math.log(e/t):-100}function hxe(e,t){return uc(e,t)<0?-1:uc(e,t)>0?1:0}function vne(e,t,n){return iXe(e,c(t,46),c(n,167))}function dxe(e,t){return c(ane(e0(e.a)).Xb(t),42).cd()}function kSt(e,t){return nIt(t,e.length),new pRe(e,t)}function AB(e,t){this.d=e,$t.call(this,e),this.e=t}function t0(e){this.d=(yt(e),e),this.a=0,this.c=dD}function yne(e,t){Lb.call(this,1),this.a=e,this.b=t}function gxe(e,t){return e.c?gxe(e.c,t):Ee(e.b,t),e}function RSt(e,t,n){var i;return i=Yp(e,t),g$(e,t,n),i}function _ne(e,t){var n;return n=e.slice(0,t),Fie(n,e)}function bxe(e,t,n){var i;for(i=0;i=e.g}function BB(e,t,n){var i;return i=X$(e,t,n),Yse(e,i)}function Zy(e,t){var n;n=e.a.length,Yp(e,n),g$(e,n,t)}function Axe(e,t){var n;n=console[e],n.call(console,t)}function Oxe(e,t){var n;++e.j,n=e.Vi(),e.Ii(e.oi(n,t))}function GSt(e,t,n){c(t.b,65),Zc(t.a,new Tte(e,n,t))}function Mne(e,t,n){HA.call(this,t),this.a=e,this.b=n}function Cne(e,t,n){Lb.call(this,e),this.a=t,this.b=n}function Ine(e,t,n){this.a=e,CQ.call(this,t),this.b=n}function Dxe(e,t,n){this.a=e,iie.call(this,8,t,null,n)}function USt(e){this.a=(yt(yn),yn),this.b=e,new UQ}function kxe(e){this.c=e,this.b=this.c.a,this.a=this.c.e}function Tne(e){this.c=e,this.b=e.a.d.a,Yee(e.a.e,this)}function nu(e){Rp(e.c!=-1),e.d.$c(e.c),e.b=e.c,e.c=-1}function j5(e){return g.Math.sqrt(e.a*e.a+e.b*e.b)}function i0(e,t){return y_(t,e.a.c.length),Ne(e.a,t)}function df(e,t){return le(e)===le(t)||e!=null&&$n(e,t)}function WSt(e){return 0>=e?new yZ:RIt(e-1)}function YSt(e){return tm?WB(tm,e):!1}function Rxe(e){return e?e.dc():!e.Kc().Ob()}function Nr(e){return!e.a&&e.c?e.c.b:e.a}function XSt(e){return!e.a&&(e.a=new qi(J1,e,4)),e.a}function r0(e){return!e.d&&(e.d=new qi(oo,e,1)),e.d}function yt(e){if(e==null)throw V(new AS);return e}function A5(e){e.c?e.c.He():(e.d=!0,tNt(e))}function b1(e){e.c?b1(e.c):(Wg(e),e.d=!0)}function xxe(e){Dne(e.a),e.b=oe(xt,xe,1,e.b.length,5,1)}function JSt(e,t){return Uc(t.j.c.length,e.j.c.length)}function QSt(e,t){e.c<0||e.b.b=0?e.Bh(n):ose(e,t)}function Lxe(e){var t,n;return t=e.c.i.c,n=e.d.i.c,t==n}function e5t(e){if(e.p!=4)throw V(new hs);return e.e}function t5t(e){if(e.p!=3)throw V(new hs);return e.e}function n5t(e){if(e.p!=6)throw V(new hs);return e.f}function i5t(e){if(e.p!=6)throw V(new hs);return e.k}function r5t(e){if(e.p!=3)throw V(new hs);return e.j}function o5t(e){if(e.p!=4)throw V(new hs);return e.j}function jne(e){return!e.b&&(e.b=new zA(new BN)),e.b}function o0(e){return e.c==-2&&nvt(e,SDt(e.g,e.b)),e.c}function P_(e,t){var n;return n=RB("",e),n.n=t,n.i=1,n}function c5t(e,t){vB(c(t.b,65),e),Zc(t.a,new mQ(e))}function s5t(e,t){on((!e.a&&(e.a=new PC(e,e)),e.a),t)}function Nxe(e,t){this.b=e,AB.call(this,e,t),lDe(this)}function Fxe(e,t){this.b=e,mte.call(this,e,t),fDe(this)}function Ane(e,t,n,i){Vb.call(this,e,t),this.d=n,this.a=i}function D8(e,t,n,i){Vb.call(this,e,n),this.a=t,this.f=i}function Bxe(e,t){K2t.call(this,xIt(nn(e),nn(t))),this.a=t}function $xe(){Nce.call(this,lb,(H9e(),Hft)),jKt(this)}function Kxe(){Nce.call(this,la,(r_(),sme)),F$t(this)}function qxe(){pn.call(this,"DELAUNAY_TRIANGULATION",0)}function u5t(e){return String.fromCharCode.apply(null,e)}function Kn(e,t,n){return fr(t)?bo(e,t,n):Kc(e.f,t,n)}function One(e){return st(),e?e.ve():(xm(),xm(),jhe)}function a5t(e,t,n){return d2(),n.pg(e,c(t.cd(),146))}function Hxe(e,t){return h8(),new qoe(new PDe(e),new SDe(t))}function l5t(e){return pu(e,MH),PO(xr(xr(5,e),e/10|0))}function k8(){k8=Z,qtt=new qN(U(G(fb,1),gD,42,0,[]))}function zxe(e){return!e.d&&(e.d=new W3(e.c.Cc())),e.d}function M_(e){return!e.a&&(e.a=new P9e(e.c.vc())),e.a}function Vxe(e){return!e.b&&(e.b=new t_(e.c.ec())),e.b}function qf(e,t){for(;t-- >0;)e=e<<1|(e<0?1:0);return e}function wc(e,t){return le(e)===le(t)||e!=null&&$n(e,t)}function f5t(e,t){return Pt(),c(t.b,19).ai&&++i,i}function Mh(e){var t,n;return n=(t=new Nb,t),B_(n,e),n}function zB(e){var t,n;return n=(t=new Nb,t),$ce(n,e),n}function C5t(e,t){var n;return n=Bt(e.f,t),wre(t,n),null}function VB(e){var t;return t=NIt(e),t||null}function tLe(e){return!e.b&&(e.b=new Me(rr,e,12,3)),e.b}function I5t(e){return e!=null&&ZM(Bx,e.toLowerCase())}function T5t(e,t){return zi(ws(e)*eu(e),ws(t)*eu(t))}function j5t(e,t){return zi(ws(e)*eu(e),ws(t)*eu(t))}function A5t(e,t){return zi(e.d.c+e.d.b/2,t.d.c+t.d.b/2)}function O5t(e,t){return zi(e.g.c+e.g.b/2,t.g.c+t.g.b/2)}function nLe(e,t,n){n.a?ts(e,t.b-e.f/2):es(e,t.a-e.g/2)}function iLe(e,t,n,i){this.a=e,this.b=t,this.c=n,this.d=i}function rLe(e,t,n,i){this.a=e,this.b=t,this.c=n,this.d=i}function kg(e,t,n,i){this.e=e,this.a=t,this.c=n,this.d=i}function oLe(e,t,n,i){this.a=e,this.c=t,this.d=n,this.b=i}function cLe(e,t,n,i){Du(),QFe.call(this,t,n,i),this.a=e}function sLe(e,t,n,i){Du(),QFe.call(this,t,n,i),this.a=e}function uLe(e,t){this.a=e,N3t.call(this,e,c(e.d,15).Zc(t))}function GB(e){this.f=e,this.c=this.f.e,e.f>0&&yVe(this)}function aLe(e,t,n,i){this.b=e,this.c=i,DF.call(this,t,n)}function lLe(e){return Lt(e.b=0&&rt(e.substr(n,t.length),t)}function p1(e,t,n,i,r,o,u){return new p$(e.e,t,n,i,r,o,u)}function ILe(e,t,n,i,r,o){this.a=e,H$.call(this,t,n,i,r,o)}function TLe(e,t,n,i,r,o){this.a=e,H$.call(this,t,n,i,r,o)}function jLe(e,t){this.g=e,this.d=U(G(nh,1),Ed,10,0,[t])}function ud(e,t){this.e=e,this.a=xt,this.b=QWe(t),this.c=t}function ALe(e,t){i8.call(this),Gie(this),this.a=e,this.c=t}function BC(e,t,n,i){vi(e.c[t.g],n.g,i),vi(e.c[n.g],t.g,i)}function JB(e,t,n,i){vi(e.c[t.g],t.g,n),vi(e.b[t.g],t.g,i)}function Z5t(){return WC(),U(G(Ybe,1),_e,376,0,[rW,pj])}function e6t(){return eI(),U(G(K1e,1),_e,479,0,[$1e,mR])}function t6t(){return uI(),U(G(F1e,1),_e,419,0,[pR,N1e])}function n6t(){return gO(),U(G(A1e,1),_e,422,0,[j1e,oU])}function i6t(){return iO(),U(G(ege,1),_e,420,0,[yU,Z1e])}function r6t(){return rI(),U(G(Vbe,1),_e,421,0,[tW,nW])}function o6t(){return F5(),U(G(Ust,1),_e,523,0,[xP,RP])}function c6t(){return cl(),U(G(wut,1),_e,520,0,[Vw,z1])}function s6t(){return gf(),U(G(eut,1),_e,516,0,[ip,jd])}function u6t(){return Al(),U(G(nut,1),_e,515,0,[yb,Wl])}function a6t(){return s0(),U(G(Put,1),_e,455,0,[V1,$v])}function l6t(){return Z8(),U(G(v0e,1),_e,425,0,[vW,m0e])}function f6t(){return Y8(),U(G(w0e,1),_e,480,0,[mW,p0e])}function h6t(){return $O(),U(G(y0e,1),_e,495,0,[cx,I4])}function d6t(){return pO(),U(G(E0e,1),_e,426,0,[_0e,SW])}function g6t(){return mI(),U(G(Mpe,1),_e,429,0,[bx,Ppe])}function b6t(){return YC(),U(G(ipe,1),_e,430,0,[DW,dx])}function p6t(){return p7(),U(G(qhe,1),_e,428,0,[vG,Khe])}function w6t(){return EO(),U(G(zhe,1),_e,427,0,[Hhe,yG])}function m6t(){return SO(),U(G(mde,1),_e,424,0,[OG,Bk])}function v6t(){return G_(),U(G(prt,1),_e,511,0,[ZT,zG])}function z8(e,t,n,i){return n>=0?e.jh(t,n,i):e.Sg(null,n,i)}function QB(e){return e.b.b==0?e.a.$e():lB(e.b)}function y6t(e){if(e.p!=5)throw V(new hs);return tn(e.f)}function _6t(e){if(e.p!=5)throw V(new hs);return tn(e.k)}function $ne(e){return le(e.a)===le((Z$(),gY))&&EKt(e),e.a}function OLe(e){this.a=c(nn(e),271),this.b=(st(),new kee(e))}function DLe(e,t){Kmt(this,new $e(e.a,e.b)),qmt(this,AC(t))}function s0(){s0=Z,V1=new WZ(j2,0),$v=new WZ(A2,1)}function gf(){gf=Z,ip=new GZ(A2,0),jd=new GZ(j2,1)}function u0(){Ovt.call(this,new Fy(Xp(12))),jee(!0),this.a=2}function ZB(e,t,n){Ln(),Lb.call(this,e),this.b=t,this.a=n}function Kne(e,t,n){Du(),HA.call(this,t),this.a=e,this.b=n}function kLe(e){i8.call(this),Gie(this),this.a=e,this.c=!0}function RLe(e){var t;t=e.c.d.b,e.b=t,e.a=e.c.d,t.a=e.c.d.b=e}function V8(e){var t;TIt(e.a),V7e(e.a),t=new BA(e.a),poe(t)}function E6t(e,t){HWe(e,!0),Zc(e.e.wf(),new Pte(e,!0,t))}function G8(e,t){return dFe(t),MIt(e,oe(Qt,_n,25,t,15,1),t)}function S6t(e,t){return t2(),e==yi(Uf(t))||e==yi(M1(t))}function mc(e,t){return t==null?Uo(Po(e.f,null)):US(e.g,t)}function P6t(e){return e.b==0?null:(Lt(e.b!=0),Fu(e,e.a.a))}function xi(e){return Math.max(Math.min(e,Fn),-2147483648)|0}function M6t(e,t){var n=aG[e.charCodeAt(0)];return n??e}function U8(e,t){return B8(e,"set1"),B8(t,"set2"),new A8e(e,t)}function C6t(e,t){var n;return n=yIt(e.f,t),Wn(t8(n),e.f.d)}function D5(e,t){var n,i;return n=t,i=new Er,OXe(e,n,i),i.d}function e$(e,t,n,i){var r;r=new _ke,t.a[n.g]=r,Xy(e.b,i,r)}function qne(e,t,n){var i;i=e.Yg(t),i>=0?e.sh(i,n):Ose(e,t,n)}function Lm(e,t,n){X8(),e&&Kn(fY,e,t),e&&Kn(Gj,e,n)}function xLe(e,t,n){this.i=new Se,this.b=e,this.g=t,this.a=n}function W8(e,t,n){this.c=new Se,this.e=e,this.f=t,this.b=n}function Hne(e,t,n){this.a=new Se,this.e=e,this.f=t,this.c=n}function LLe(e,t){V9(this),this.f=t,this.g=e,F8(this),this._d()}function $C(e,t){var n;n=e.q.getHours(),e.q.setDate(t),_6(e,n)}function NLe(e,t){var n;for(nn(t),n=e.a;n;n=n.c)t.Od(n.g,n.i)}function FLe(e){var t;return t=new i9(Xp(e.length)),Rre(t,e),t}function I6t(e){function t(){}return t.prototype=e||{},new t}function T6t(e,t){return dqe(e,t)?(fKe(e),!0):!1}function Ch(e,t){if(t==null)throw V(new AS);return M9t(e,t)}function j6t(e){if(e.qe())return null;var t=e.n;return Ek[t]}function KC(e){return e.Db>>16!=3?null:c(e.Cb,33)}function jl(e){return e.Db>>16!=9?null:c(e.Cb,33)}function BLe(e){return e.Db>>16!=6?null:c(e.Cb,79)}function $Le(e){return e.Db>>16!=7?null:c(e.Cb,235)}function KLe(e){return e.Db>>16!=7?null:c(e.Cb,160)}function yi(e){return e.Db>>16!=11?null:c(e.Cb,33)}function qLe(e,t){var n;return n=e.Yg(t),n>=0?e.lh(n):jq(e,t)}function HLe(e,t){var n;return n=new Wte(t),zVe(n,e),new ps(n)}function zne(e){var t;return t=e.d,t=e.si(e.f),on(e,t),t.Ob()}function zLe(e,t){return e.b+=t.b,e.c+=t.c,e.d+=t.d,e.a+=t.a,e}function t$(e,t){return g.Math.abs(e)0}function VLe(){this.a=new Eh,this.e=new er,this.g=0,this.i=0}function GLe(e){this.a=e,this.b=oe(zst,we,1944,e.e.length,0,2)}function n$(e,t,n){var i;i=kqe(e,t,n),e.b=new BO(i.c.length)}function Al(){Al=Z,yb=new VZ(uz,0),Wl=new VZ("UP",1)}function Y8(){Y8=Z,mW=new YZ(cZe,0),p0e=new YZ("FAN",1)}function X8(){X8=Z,fY=new en,Gj=new en,Xyt(cnt,new E6e)}function O6t(e){if(e.p!=0)throw V(new hs);return s5(e.f,0)}function D6t(e){if(e.p!=0)throw V(new hs);return s5(e.k,0)}function ULe(e){return e.Db>>16!=3?null:c(e.Cb,147)}function j_(e){return e.Db>>16!=6?null:c(e.Cb,235)}function zp(e){return e.Db>>16!=17?null:c(e.Cb,26)}function WLe(e,t){var n=e.a=e.a||[];return n[t]||(n[t]=e.le(t))}function k6t(e,t){var n;return n=e.a.get(t),n??new Array}function R6t(e,t){var n;n=e.q.getHours(),e.q.setMonth(t),_6(e,n)}function bo(e,t,n){return t==null?Kc(e.f,null,n):_0(e.g,t,n)}function k5(e,t,n,i,r,o){return new Ah(e.e,t,e.aj(),n,i,r,o)}function qC(e,t,n){return e.a=fu(e.a,0,t)+(""+n)+wC(e.a,t),e}function x6t(e,t,n){return Ee(e.a,(k8(),ZK(t,n),new Vb(t,n))),e}function Vne(e){return Oee(e.c),e.e=e.a=e.c,e.c=e.c.c,++e.d,e.a.f}function YLe(e){return Oee(e.e),e.c=e.a=e.e,e.e=e.e.e,--e.d,e.a.f}function br(e,t){e.d&&Jc(e.d.e,e),e.d=t,e.d&&Ee(e.d.e,e)}function Rr(e,t){e.c&&Jc(e.c.g,e),e.c=t,e.c&&Ee(e.c.g,e)}function po(e,t){e.c&&Jc(e.c.a,e),e.c=t,e.c&&Ee(e.c.a,e)}function Bo(e,t){e.i&&Jc(e.i.j,e),e.i=t,e.i&&Ee(e.i.j,e)}function XLe(e,t,n){this.a=t,this.c=e,this.b=(nn(n),new ps(n))}function JLe(e,t,n){this.a=t,this.c=e,this.b=(nn(n),new ps(n))}function QLe(e,t){this.a=e,this.c=Wo(this.a),this.b=new H8(t)}function L6t(e){var t;return Wg(e),t=new er,si(e,new CIe(t))}function Vp(e,t){if(e<0||e>t)throw V(new ho(Xue+e+Jue+t))}function Gne(e,t){return qRe(e.a,t)?pne(e,c(t,22).g,null):null}function N6t(e){return vK(),Pt(),c(e.a,81).d.e!=0}function ZLe(){ZLe=Z,Vtt=vn((YA(),U(G(ztt,1),_e,538,0,[sG])))}function eNe(){eNe=Z,Ost=Cs(new tr,(Hr(),Io),(Jr(),ej))}function Une(){Une=Z,Dst=Cs(new tr,(Hr(),Io),(Jr(),ej))}function tNe(){tNe=Z,Rst=Cs(new tr,(Hr(),Io),(Jr(),ej))}function nNe(){nNe=Z,Yst=Nn(new tr,(Hr(),Io),(Jr(),dP))}function hu(){hu=Z,Qst=Nn(new tr,(Hr(),Io),(Jr(),dP))}function iNe(){iNe=Z,Zst=Nn(new tr,(Hr(),Io),(Jr(),dP))}function i$(){i$=Z,rut=Nn(new tr,(Hr(),Io),(Jr(),dP))}function rNe(){rNe=Z,zut=Cs(new tr,(dE(),NP),(d6(),aW))}function xg(e,t,n,i){this.c=e,this.d=i,o$(this,t),c$(this,n)}function i2(e){this.c=new wi,this.b=e.b,this.d=e.c,this.a=e.a}function r$(e){this.a=g.Math.cos(e),this.b=g.Math.sin(e)}function o$(e,t){e.a&&Jc(e.a.k,e),e.a=t,e.a&&Ee(e.a.k,e)}function c$(e,t){e.b&&Jc(e.b.f,e),e.b=t,e.b&&Ee(e.b.f,e)}function oNe(e,t){GSt(e,e.b,e.c),c(e.b.b,65),t&&c(t.b,65).b}function F6t(e,t){aoe(e,t),Q(e.Cb,88)&&lw(Ls(c(e.Cb,88)),2)}function s$(e,t){Q(e.Cb,88)&&lw(Ls(c(e.Cb,88)),4),kc(e,t)}function J8(e,t){Q(e.Cb,179)&&(c(e.Cb,179).tb=null),kc(e,t)}function vc(e,t){return Wr(),N$(t)?new d8(t,e):new pC(t,e)}function B6t(e,t){var n,i;n=t.c,i=n!=null,i&&Zy(e,new qp(t.c))}function cNe(e){var t,n;return n=(r_(),t=new Nb,t),B_(n,e),n}function sNe(e){var t,n;return n=(r_(),t=new Nb,t),B_(n,e),n}function uNe(e,t){var n;return n=new ta(e),t.c[t.c.length]=n,n}function aNe(e,t){var n;return n=c(tw(n2(e.a),t),14),n?n.gc():0}function lNe(e){var t;return Wg(e),t=(xm(),xm(),The),CO(e,t)}function fNe(e){for(var t;;)if(t=e.Pb(),!e.Ob())return t}function Wne(e,t){jvt.call(this,new Fy(Xp(e))),pu(t,PJe),this.a=t}function Hf(e,t,n){mHe(t,n,e.gc()),this.c=e,this.a=t,this.b=n-t}function hNe(e,t,n){var i;mHe(t,n,e.c.length),i=n-t,mZ(e.c,t,i)}function $6t(e,t){aDe(e,tn(Xi(h1(t,24),wD)),tn(Xi(t,wD)))}function pt(e,t){if(e<0||e>=t)throw V(new ho(Xue+e+Jue+t))}function fn(e,t){if(e<0||e>=t)throw V(new cZ(Xue+e+Jue+t))}function bt(e,t){this.b=(yt(e),e),this.a=(t&vw)==0?t|64|mf:t}function dNe(e){z7e(this),PAe(this.a,Dre(g.Math.max(8,e))<<1)}function Ol(e){return Ko(U(G(ir,1),we,8,0,[e.i.n,e.n,e.a]))}function K6t(){return Fl(),U(G(Hs,1),_e,132,0,[Fhe,Su,Tw])}function q6t(){return al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])}function H6t(){return Ts(),U(G(jnt,1),_e,461,0,[jf,N1,qa])}function z6t(){return Qc(),U(G(Ont,1),_e,462,0,[pl,F1,Ha])}function V6t(){return y0(),U(G(Lde,1),_e,423,0,[Mv,xde,KG])}function G6t(){return $5(),U(G(Dde,1),_e,379,0,[xG,RG,LG])}function U6t(){return X5(),U(G(xbe,1),_e,378,0,[YU,Rbe,VR])}function W6t(){return f2(),U(G(D1e,1),_e,314,0,[H2,nj,O1e])}function Y6t(){return DO(),U(G(R1e,1),_e,337,0,[k1e,bR,cU])}function X6t(){return zg(),U(G(Vrt,1),_e,450,0,[aU,d4,jv])}function J6t(){return m0(),U(G(XG,1),_e,361,0,[U0,$1,G0])}function Q6t(){return Oh(),U(G(Zrt,1),_e,303,0,[rj,Ov,z2])}function Z6t(){return J_(),U(G(vU,1),_e,292,0,[wU,mU,ij])}function ePt(){return Zr(),U(G(Pst,1),_e,452,0,[OP,Os,Fc])}function tPt(){return kh(),U(G(zbe,1),_e,339,0,[H1,Hbe,eW])}function nPt(){return VO(),U(G(Wbe,1),_e,375,0,[Gbe,iW,Ube])}function iPt(){return XO(),U(G(t0e,1),_e,377,0,[sW,M4,zw])}function rPt(){return rE(),U(G(Jbe,1),_e,336,0,[oW,Xbe,DP])}function oPt(){return HO(),U(G(e0e,1),_e,338,0,[Zbe,cW,Qbe])}function cPt(){return w0(),U(G(qst,1),_e,454,0,[wj,kP,YR])}function sPt(){return s7(),U(G(Yut,1),_e,442,0,[EW,yW,_W])}function uPt(){return EI(),U(G(M0e,1),_e,380,0,[sx,S0e,P0e])}function aPt(){return c7(),U(G(H0e,1),_e,381,0,[q0e,TW,K0e])}function lPt(){return zO(),U(G(B0e,1),_e,293,0,[IW,F0e,N0e])}function fPt(){return TI(),U(G(jW,1),_e,437,0,[lx,fx,hx])}function hPt(){return Rh(),U(G(Dwe,1),_e,334,0,[Mx,kd,XP])}function dPt(){return xl(),U(G(ywe,1),_e,272,0,[A4,Ww,O4])}function gPt(e,t){return xxt(e,t,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function bPt(e,t,n){var i;return i=P6(e,t,!1),i.b<=t&&i.a<=n}function gNe(e,t,n){var i;i=new TSe,i.b=t,i.a=n,++t.b,Ee(e.d,i)}function pPt(e,t){var n;return n=(yt(e),e).g,Hee(!!n),yt(t),n(t)}function Yne(e,t){var n,i;return i=__(e,t),n=e.a.Zc(i),new j8e(e,n)}function wPt(e){return e.Db>>16!=6?null:c(Dq(e),235)}function mPt(e){if(e.p!=2)throw V(new hs);return tn(e.f)&Ni}function vPt(e){if(e.p!=2)throw V(new hs);return tn(e.k)&Ni}function yPt(e){return e.a==(k_(),Hx)&&tvt(e,Jxt(e.g,e.b)),e.a}function r2(e){return e.d==(k_(),Hx)&&ivt(e,zFt(e.g,e.b)),e.d}function K(e){return Lt(e.ai?1:0}function bNe(e,t){var n,i;return n=D$(t),i=n,c(Bt(e.c,i),19).a}function pNe(e,t){var n;for(n=e+"";n.length0&&e.a[--e.d]==0;);e.a[e.d++]==0&&(e.e=0)}function xNe(e){return e.a?e.e.length==0?e.a.a:e.a.a+(""+e.e):e.c}function OPt(e){return!!e.a&&Ns(e.a.a).i!=0&&!(e.b&&XK(e.b))}function DPt(e){return!!e.u&&dc(e.u.a).i!=0&&!(e.n&&YK(e.n))}function LNe(e){return gB(e.e.Hd().gc()*e.c.Hd().gc(),16,new kCe(e))}function kPt(e,t){return hxe(ns(e.q.getTime()),ns(t.q.getTime()))}function bf(e){return c(Bl(e,oe(qG,Pz,17,e.c.length,0,1)),474)}function HC(e){return c(Bl(e,oe(nh,Ed,10,e.c.length,0,1)),193)}function RPt(e){return hu(),!Kr(e)&&!(!Kr(e)&&e.c.i.c==e.d.i.c)}function NNe(e,t,n){var i;i=(nn(e),new ps(e)),lOt(new XLe(i,t,n))}function zC(e,t,n){var i;i=(nn(e),new ps(e)),fOt(new JLe(i,t,n))}function FNe(e,t){var n;return n=1-t,e.a[n]=FO(e.a[n],n),FO(e,t)}function BNe(e,t){var n;e.e=new ZQ,n=dw(t),cr(n,e.c),DWe(e,n,0)}function pr(e,t,n,i){var r;r=new BJ,r.a=t,r.b=n,r.c=i,Cn(e.a,r)}function je(e,t,n,i){var r;r=new BJ,r.a=t,r.b=n,r.c=i,Cn(e.b,r)}function xa(e){var t,n,i;return t=new vxe,n=Jq(t,e),vqt(t),i=n,i}function tie(){var e,t,n;return t=(n=(e=new Nb,e),n),Ee(wme,t),t}function eO(e){return e.j.c=oe(xt,xe,1,0,5,1),Dne(e.c),g5t(e.a),e}function Nm(e){return HS(),Q(e.g,10)?c(e.g,10):null}function xPt(e){return Rm(e).dc()?!1:(R2t(e,new ae),!0)}function LPt(e){if(!("stack"in e))try{throw e}catch{}return e}function VC(e,t){if(e<0||e>=t)throw V(new ho(Ykt(e,t)));return e}function $Ne(e,t,n){if(e<0||tn)throw V(new ho(ykt(e,t,n)))}function f$(e,t){if(Yi(e.a,t),t.d)throw V(new No(GJe));t.d=e}function h$(e,t){if(t.$modCount!=e.$modCount)throw V(new Ou)}function KNe(e,t){return Q(t,42)?tq(e.a,c(t,42)):!1}function qNe(e,t){return Q(t,42)?tq(e.a,c(t,42)):!1}function HNe(e,t){return Q(t,42)?tq(e.a,c(t,42)):!1}function NPt(e,t){return e.a<=e.b?(t.ud(e.a++),!0):!1}function l0(e){var t;return Oo(e)?(t=e,t==-0?0:t):GCt(e)}function tO(e){var t;return b1(e),t=new Xn,Em(e.a,new PIe(t)),t}function zNe(e){var t;return b1(e),t=new gt,Em(e.a,new SIe(t)),t}function _r(e,t){this.a=e,CS.call(this,e),Vp(t,e.gc()),this.b=t}function nie(e){this.e=e,this.b=this.e.a.entries(),this.a=new Array}function FPt(e){return gB(e.e.Hd().gc()*e.c.Hd().gc(),273,new DCe(e))}function nO(e){return new Dc((pu(e,MH),PO(xr(xr(5,e),e/10|0))))}function VNe(e){return c(Bl(e,oe(drt,SQe,11,e.c.length,0,1)),1943)}function BPt(e,t,n){return n.f.c.length>0?vne(e.a,t,n):vne(e.b,t,n)}function $Pt(e,t,n){e.d&&Jc(e.d.e,e),e.d=t,e.d&&Bp(e.d.e,n,e)}function d$(e,t){kHt(t,e),Fte(e.d),Fte(c(B(e,(Oe(),FR)),207))}function x5(e,t){DHt(t,e),Nte(e.d),Nte(c(B(e,(Oe(),FR)),207))}function f0(e,t){var n,i;return n=Ch(e,t),i=null,n&&(i=n.fe()),i}function A_(e,t){var n,i;return n=Yp(e,t),i=null,n&&(i=n.ie()),i}function L5(e,t){var n,i;return n=Ch(e,t),i=null,n&&(i=n.ie()),i}function Ih(e,t){var n,i;return n=Ch(e,t),i=null,n&&(i=Uce(n)),i}function KPt(e,t,n){var i;return i=fE(n),Z7(e.g,i,t),Z7(e.i,t,n),t}function qPt(e,t,n){var i;i=p9t();try{return U3t(e,t,n)}finally{ZPt(i)}}function GNe(e){var t;t=e.Wg(),this.a=Q(t,69)?c(t,69).Zh():t.Kc()}function tr(){c9e.call(this),this.j.c=oe(xt,xe,1,0,5,1),this.a=-1}function iie(e,t,n,i){this.d=e,this.n=t,this.g=n,this.o=i,this.p=-1}function UNe(e,t,n,i){this.e=i,this.d=null,this.c=e,this.a=t,this.b=n}function rie(e,t,n){this.d=new xTe(this),this.e=e,this.i=t,this.f=n}function iO(){iO=Z,yU=new KZ(FE,0),Z1e=new KZ("TOP_LEFT",1)}function WNe(){WNe=Z,i0e=Hxe(Ce(1),Ce(4)),n0e=Hxe(Ce(1),Ce(2))}function YNe(){YNe=Z,Bat=vn((d9(),U(G(Fat,1),_e,551,0,[OW])))}function XNe(){XNe=Z,Nat=vn((h9(),U(G(npe,1),_e,482,0,[AW])))}function JNe(){JNe=Z,ilt=vn((zS(),U(G(Spe,1),_e,530,0,[Sj])))}function QNe(){QNe=Z,ait=vn((l9(),U(G(fde,1),_e,481,0,[CG])))}function HPt(){return v0(),U(G(nit,1),_e,406,0,[zT,HT,PG,MG])}function zPt(){return wO(),U(G(Ak,1),_e,297,0,[pG,Rhe,xhe,Lhe])}function VPt(){return c6(),U(G(sit,1),_e,394,0,[YT,xk,Lk,XT])}function GPt(){return m2(),U(G(rit,1),_e,323,0,[GT,VT,UT,WT])}function UPt(){return Q_(),U(G(trt,1),_e,405,0,[V0,Ow,Aw,Pv])}function WPt(){return YO(),U(G(yrt,1),_e,360,0,[WG,uR,aR,tj])}function ZNe(e,t,n,i){return Q(n,54)?new BDe(e,t,n,i):new une(e,t,n,i)}function YPt(){return Nl(),U(G(jrt,1),_e,411,0,[q2,u4,a4,YG])}function XPt(e){var t;return e.j==(Ie(),Yt)&&(t=_Ue(e),bs(t,jt))}function JPt(e,t){var n;n=t.a,Rr(n,t.c.d),br(n,t.d.d),Qp(n.a,e.n)}function eFe(e,t){return c(Qb(P8(c(Vn(e.k,t),15).Oc(),Cv)),113)}function tFe(e,t){return c(Qb(M8(c(Vn(e.k,t),15).Oc(),Cv)),113)}function QPt(e){return new bt(YIt(c(e.a.dd(),14).gc(),e.a.cd()),16)}function O_(e){return Q(e,14)?c(e,14).dc():!e.Kc().Ob()}function o2(e){return HS(),Q(e.g,145)?c(e.g,145):null}function nFe(e){if(e.e.g!=e.b)throw V(new Ou);return!!e.c&&e.d>0}function Pn(e){return Lt(e.b!=e.d.c),e.c=e.b,e.b=e.b.a,++e.a,e.c.c}function oie(e,t){yt(t),vi(e.a,e.c,t),e.c=e.c+1&e.a.length-1,iVe(e)}function w1(e,t){yt(t),e.b=e.b-1&e.a.length-1,vi(e.a,e.b,t),iVe(e)}function iFe(e,t){var n;for(n=e.j.c.length;n0&&bc(e.g,0,t,0,e.i),t}function sFe(e,t){p9();var n;return n=c(Bt(Fx,e),55),!n||n.wj(t)}function fMt(e){if(e.p!=1)throw V(new hs);return tn(e.f)<<24>>24}function hMt(e){if(e.p!=1)throw V(new hs);return tn(e.k)<<24>>24}function dMt(e){if(e.p!=7)throw V(new hs);return tn(e.k)<<16>>16}function gMt(e){if(e.p!=7)throw V(new hs);return tn(e.f)<<16>>16}function Th(e){var t;for(t=0;e.Ob();)e.Pb(),t=xr(t,1);return PO(t)}function uFe(e,t){var n;return n=new _m,e.xd(n),n.a+="..",t.yd(n),n.a}function bMt(e,t,n){var i;i=c(Bt(e.g,n),57),Ee(e.a.c,new yr(t,i))}function pMt(e,t,n){return SB(Te(Uo(Po(e.f,t))),Te(Uo(Po(e.f,n))))}function rO(e,t,n){return tD(e,t,n,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function wMt(e,t,n){return IE(e,t,n,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function mMt(e,t,n){return Kxt(e,t,n,Q(t,99)&&(c(t,18).Bb&Vr)!=0)}function uie(e,t){return e==(Dt(),Ui)&&t==Ui?4:e==Ui||t==Ui?8:32}function aFe(e,t){return le(t)===le(e)?"(this Map)":t==null?rs:Ro(t)}function vMt(e,t){return c(t==null?Uo(Po(e.f,null)):US(e.g,t),281)}function lFe(e,t,n){var i;return i=fE(n),Kn(e.b,i,t),Kn(e.c,t,n),t}function fFe(e,t){var n;for(n=t;n;)xp(e,n.i,n.j),n=yi(n);return e}function aie(e,t){var n;return n=NC(w_(new k$(e,t))),b8(new k$(e,t)),n}function zf(e,t){Wr();var n;return n=c(e,66).Mj(),ZDt(n,t),n.Ok(t)}function yMt(e,t,n,i,r){var o;o=Gxt(r,n,i),Ee(t,zkt(r,o)),xDt(e,r,t)}function hFe(e,t,n){e.i=0,e.e=0,t!=n&&(Nqe(e,t,n),Lqe(e,t,n))}function lie(e,t){var n;n=e.q.getHours(),e.q.setFullYear(t+O1),_6(e,n)}function _Mt(e,t,n){if(n){var i=n.ee();e.a[t]=i(n)}else delete e.a[t]}function g$(e,t,n){if(n){var i=n.ee();n=i(n)}else n=void 0;e.a[t]=n}function dFe(e){if(e<0)throw V(new m9e("Negative array size: "+e))}function dc(e){return e.n||(Ls(e),e.n=new GRe(e,oo,e),So(e)),e.n}function N5(e){return Lt(e.a=0&&e.a[n]===t[n];n--);return n<0}function mFe(e,t){iE();var n;return n=e.j.g-t.j.g,n!=0?n:0}function vFe(e,t){return yt(t),e.a!=null?cSt(t.Kb(e.a)):jk}function oO(e){var t;return e?new Wte(e):(t=new Eh,Q$(t,e),t)}function gu(e,t){var n;return t.b.Kb(f$e(e,t.c.Ee(),(n=new TIe(t),n)))}function cO(e){Oce(),aDe(this,tn(Xi(h1(e,24),wD)),tn(Xi(e,wD)))}function yFe(){yFe=Z,Snt=vn((p7(),U(G(qhe,1),_e,428,0,[vG,Khe])))}function _Fe(){_Fe=Z,Pnt=vn((EO(),U(G(zhe,1),_e,427,0,[Hhe,yG])))}function EFe(){EFe=Z,Cit=vn((SO(),U(G(mde,1),_e,424,0,[OG,Bk])))}function SFe(){SFe=Z,wrt=vn((G_(),U(G(prt,1),_e,511,0,[ZT,zG])))}function PFe(){PFe=Z,zrt=vn((uI(),U(G(F1e,1),_e,419,0,[pR,N1e])))}function MFe(){MFe=Z,Wrt=vn((eI(),U(G(K1e,1),_e,479,0,[$1e,mR])))}function CFe(){CFe=Z,Ist=vn((WC(),U(G(Ybe,1),_e,376,0,[rW,pj])))}function IFe(){IFe=Z,Sst=vn((rI(),U(G(Vbe,1),_e,421,0,[tW,nW])))}function TFe(){TFe=Z,$rt=vn((gO(),U(G(A1e,1),_e,422,0,[j1e,oU])))}function jFe(){jFe=Z,tot=vn((iO(),U(G(ege,1),_e,420,0,[yU,Z1e])))}function AFe(){AFe=Z,mut=vn((cl(),U(G(wut,1),_e,520,0,[Vw,z1])))}function OFe(){OFe=Z,Wst=vn((F5(),U(G(Ust,1),_e,523,0,[xP,RP])))}function DFe(){DFe=Z,tut=vn((gf(),U(G(eut,1),_e,516,0,[ip,jd])))}function kFe(){kFe=Z,iut=vn((Al(),U(G(nut,1),_e,515,0,[yb,Wl])))}function RFe(){RFe=Z,Mut=vn((s0(),U(G(Put,1),_e,455,0,[V1,$v])))}function xFe(){xFe=Z,Hut=vn((Z8(),U(G(v0e,1),_e,425,0,[vW,m0e])))}function LFe(){LFe=Z,Wut=vn(($O(),U(G(y0e,1),_e,495,0,[cx,I4])))}function NFe(){NFe=Z,qut=vn((Y8(),U(G(w0e,1),_e,480,0,[mW,p0e])))}function FFe(){FFe=Z,Jut=vn((pO(),U(G(E0e,1),_e,426,0,[_0e,SW])))}function BFe(){BFe=Z,rlt=vn((mI(),U(G(Mpe,1),_e,429,0,[bx,Ppe])))}function $Fe(){$Fe=Z,$at=vn((YC(),U(G(ipe,1),_e,430,0,[DW,dx])))}function F5(){F5=Z,xP=new zZ("UPPER",0),RP=new zZ("LOWER",1)}function MMt(e,t){var n;n=new xy,Rg(n,"x",t.a),Rg(n,"y",t.b),Zy(e,n)}function CMt(e,t){var n;n=new xy,Rg(n,"x",t.a),Rg(n,"y",t.b),Zy(e,n)}function IMt(e,t){var n,i;i=!1;do n=Tqe(e,t),i=i|n;while(n);return i}function die(e,t){var n,i;for(n=t,i=0;n>0;)i+=e.a[n],n-=n&-n;return i}function KFe(e,t){var n;for(n=t;n;)xp(e,-n.i,-n.j),n=yi(n);return e}function Mr(e,t){var n,i;for(yt(t),i=e.Kc();i.Ob();)n=i.Pb(),t.td(n)}function qFe(e,t){var n;return n=t.cd(),new Vb(n,e.e.pc(n,c(t.dd(),14)))}function Ri(e,t,n,i){var r;r=new ii,r.c=t,r.b=n,r.a=i,i.b=n.a=r,++e.b}function Lu(e,t,n){var i;return i=(pt(t,e.c.length),e.c[t]),e.c[t]=n,i}function TMt(e,t,n){return c(t==null?Kc(e.f,null,n):_0(e.g,t,n),281)}function m$(e){return e.c&&e.d?Xne(e.c)+"->"+Xne(e.d):"e_"+Xb(e)}function D_(e,t){return(Wg(e),$S(new ht(e,new Nie(t,e.a)))).sd(i4)}function jMt(){return Hr(),U(G(kde,1),_e,356,0,[Af,B1,Hc,Pc,Io])}function AMt(){return Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])}function OMt(e){return ZA(),function(){return qPt(e,this,arguments)}}function DMt(){return Date.now?Date.now():new Date().getTime()}function Kr(e){return!e.c||!e.d?!1:!!e.c.i&&e.c.i==e.d.i}function HFe(e){if(!e.c.Sb())throw V(new tc);return e.a=!0,e.c.Ub()}function GC(e){e.i=0,rC(e.b,null),rC(e.c,null),e.a=null,e.e=null,++e.g}function gie(e){Byt.call(this,e==null?rs:Ro(e),Q(e,78)?c(e,78):null)}function zFe(e){bJe(),gAe(this),this.a=new wi,Kre(this,e),Cn(this.a,e)}function VFe(){NF(this),this.b=new $e(Ii,Ii),this.a=new $e($i,$i)}function GFe(e,t){this.c=0,this.b=t,y7e.call(this,e,17493),this.a=this.c}function v$(e){sO(),!Vl&&(this.c=e,this.e=!0,this.a=new Se)}function sO(){sO=Z,Vl=!0,dnt=!1,gnt=!1,pnt=!1,bnt=!1}function bie(e,t){return Q(t,149)?rt(e.c,c(t,149).c):!1}function pie(e,t){var n;return n=0,e&&(n+=e.f.a/2),t&&(n+=t.f.a/2),n}function y$(e,t){var n;return n=c(h0(e.d,t),23),n||c(h0(e.e,t),23)}function UFe(e){this.b=e,$t.call(this,e),this.a=c(vt(this.b.a,4),126)}function WFe(e){this.b=e,Gy.call(this,e),this.a=c(vt(this.b.a,4),126)}function Ls(e){return e.t||(e.t=new rAe(e),e6(new w9e(e),0,e.t)),e.t}function kMt(){return eo(),U(G(WP,1),_e,103,0,[ih,Va,ga,Vh,Gh])}function RMt(){return Um(),U(G(QP,1),_e,249,0,[W1,Nj,kwe,JP,Rwe])}function xMt(){return fl(),U(G(Dd,1),_e,175,0,[Tt,ar,kf,_b,Od])}function LMt(){return qI(),U(G(spe,1),_e,316,0,[rpe,kW,cpe,RW,ope])}function NMt(){return s6(),U(G(Nbe,1),_e,315,0,[Lbe,QU,ZU,jP,AP])}function FMt(){return Qg(),U(G(L1e,1),_e,335,0,[sU,x1e,uU,pP,bP])}function BMt(){return PE(),U(G(Rat,1),_e,355,0,[Kv,e3,HP,qP,zP])}function $Mt(){return Zm(),U(G(Ort,1),_e,363,0,[fR,dR,gR,hR,lR])}function KMt(){return Ku(),U(G(dge,1),_e,163,0,[aj,_P,K1,EP,xw])}function k_(){k_=Z;var e,t;qx=(r_(),t=new GA,t),Hx=(e=new LN,e)}function YFe(e){var t;return e.c||(t=e.r,Q(t,88)&&(e.c=c(t,26))),e.c}function qMt(e){return e.e=3,e.d=e.Yb(),e.e!=2?(e.e=0,!0):!1}function _$(e){var t,n,i;return t=e&qs,n=e>>22&qs,i=e<0?Kh:0,Bc(t,n,i)}function HMt(e){var t,n,i,r;for(n=e,i=0,r=n.length;i0?UHe(e,t):bWe(e,-t)}function wie(e,t){return t==0||e.e==0?e:t>0?bWe(e,t):UHe(e,-t)}function rn(e){if(dn(e))return e.c=e.a,e.a.Pb();throw V(new tc)}function JFe(e){var t,n;return t=e.c.i,n=e.d.i,t.k==(Dt(),Bi)&&n.k==Bi}function E$(e){var t;return t=new c0,Mo(t,e),pe(t,(Oe(),yo),null),t}function S$(e,t,n){var i;return i=e.Yg(t),i>=0?e._g(i,n,!0):j0(e,t,n)}function mie(e,t,n,i){var r;for(r=0;rt)throw V(new ho(ese(e,t,"index")));return e}function P$(e,t,n,i){var r;return r=oe(Qt,_n,25,t,15,1),nDt(r,e,t,n,i),r}function VMt(e,t){var n;n=e.q.getHours()+(t/60|0),e.q.setMinutes(t),_6(e,n)}function GMt(e,t){return g.Math.min(m1(t.a,e.d.d.c),m1(t.b,e.d.d.c))}function u2(e,t){return fr(t)?t==null?wse(e.f,null):lqe(e.g,t):wse(e.f,t)}function Rl(e){this.c=e,this.a=new q(this.c.a),this.b=new q(this.c.b)}function uO(){this.e=new Se,this.c=new Se,this.d=new Se,this.b=new Se}function nBe(){this.g=new LQ,this.b=new LQ,this.a=new Se,this.k=new Se}function iBe(e,t,n){this.a=e,this.c=t,this.d=n,Ee(t.e,this),Ee(n.b,this)}function rBe(e,t){v7e.call(this,t.rd(),t.qd()&-6),yt(e),this.a=e,this.b=t}function oBe(e,t){y7e.call(this,t.rd(),t.qd()&-6),yt(e),this.a=e,this.b=t}function Mie(e,t){DF.call(this,t.rd(),t.qd()&-6),yt(e),this.a=e,this.b=t}function aO(e,t,n){this.a=e,this.b=t,this.c=n,Ee(e.t,this),Ee(t.i,this)}function lO(){this.b=new wi,this.a=new wi,this.b=new wi,this.a=new wi}function fO(){fO=Z,VP=new hi("org.eclipse.elk.labels.labelManager")}function cBe(){cBe=Z,P1e=new Wi("separateLayerConnections",(YO(),WG))}function cl(){cl=Z,Vw=new UZ("REGULAR",0),z1=new UZ("CRITICAL",1)}function WC(){WC=Z,rW=new HZ("STACKED",0),pj=new HZ("SEQUENCED",1)}function YC(){YC=Z,DW=new ZZ("FIXED",0),dx=new ZZ("CENTER_NODE",1)}function UMt(e,t){var n;return n=JKt(e,t),e.b=new BO(n.c.length),aKt(e,n)}function WMt(e,t,n){var i;return++e.e,--e.f,i=c(e.d[t].$c(n),133),i.dd()}function sBe(e){var t;return e.a||(t=e.r,Q(t,148)&&(e.a=c(t,148))),e.a}function Cie(e){if(e.a){if(e.e)return Cie(e.e)}else return e;return null}function YMt(e,t){return e.pt.p?-1:0}function hO(e,t){return yt(t),e.c=0,"Initial capacity must not be negative")}function lBe(){lBe=Z,Tnt=vn((al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])))}function fBe(){fBe=Z,Ant=vn((Ts(),U(G(jnt,1),_e,461,0,[jf,N1,qa])))}function hBe(){hBe=Z,Dnt=vn((Qc(),U(G(Ont,1),_e,462,0,[pl,F1,Ha])))}function dBe(){dBe=Z,wnt=vn((Fl(),U(G(Hs,1),_e,132,0,[Fhe,Su,Tw])))}function gBe(){gBe=Z,Uit=vn(($5(),U(G(Dde,1),_e,379,0,[xG,RG,LG])))}function bBe(){bBe=Z,urt=vn((y0(),U(G(Lde,1),_e,423,0,[Mv,xde,KG])))}function pBe(){pBe=Z,Krt=vn((f2(),U(G(D1e,1),_e,314,0,[H2,nj,O1e])))}function wBe(){wBe=Z,qrt=vn((DO(),U(G(R1e,1),_e,337,0,[k1e,bR,cU])))}function mBe(){mBe=Z,Grt=vn((zg(),U(G(Vrt,1),_e,450,0,[aU,d4,jv])))}function vBe(){vBe=Z,Nrt=vn((m0(),U(G(XG,1),_e,361,0,[U0,$1,G0])))}function yBe(){yBe=Z,eot=vn((Oh(),U(G(Zrt,1),_e,303,0,[rj,Ov,z2])))}function _Be(){_Be=Z,Qrt=vn((J_(),U(G(vU,1),_e,292,0,[wU,mU,ij])))}function EBe(){EBe=Z,mst=vn((X5(),U(G(xbe,1),_e,378,0,[YU,Rbe,VR])))}function SBe(){SBe=Z,Cst=vn((VO(),U(G(Wbe,1),_e,375,0,[Gbe,iW,Ube])))}function PBe(){PBe=Z,Est=vn((kh(),U(G(zbe,1),_e,339,0,[H1,Hbe,eW])))}function MBe(){MBe=Z,Mst=vn((Zr(),U(G(Pst,1),_e,452,0,[OP,Os,Fc])))}function CBe(){CBe=Z,Ast=vn((XO(),U(G(t0e,1),_e,377,0,[sW,M4,zw])))}function IBe(){IBe=Z,Tst=vn((rE(),U(G(Jbe,1),_e,336,0,[oW,Xbe,DP])))}function TBe(){TBe=Z,jst=vn((HO(),U(G(e0e,1),_e,338,0,[Zbe,cW,Qbe])))}function jBe(){jBe=Z,Hst=vn((w0(),U(G(qst,1),_e,454,0,[wj,kP,YR])))}function ABe(){ABe=Z,Xut=vn((s7(),U(G(Yut,1),_e,442,0,[EW,yW,_W])))}function OBe(){OBe=Z,Qut=vn((EI(),U(G(M0e,1),_e,380,0,[sx,S0e,P0e])))}function DBe(){DBe=Z,bat=vn((c7(),U(G(H0e,1),_e,381,0,[q0e,TW,K0e])))}function kBe(){kBe=Z,gat=vn((zO(),U(G(B0e,1),_e,293,0,[IW,F0e,N0e])))}function RBe(){RBe=Z,Lat=vn((TI(),U(G(jW,1),_e,437,0,[lx,fx,hx])))}function xBe(){xBe=Z,Blt=vn((Rh(),U(G(Dwe,1),_e,334,0,[Mx,kd,XP])))}function LBe(){LBe=Z,xlt=vn((xl(),U(G(ywe,1),_e,272,0,[A4,Ww,O4])))}function nCt(){return wr(),U(G(xwe,1),_e,98,0,[Y1,Xl,k4,Mb,ch,Ic])}function Fg(e,t){return!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),xK(e.o,t)}function iCt(e){return!e.g&&(e.g=new kA),!e.g.d&&(e.g.d=new tAe(e)),e.g.d}function rCt(e){return!e.g&&(e.g=new kA),!e.g.a&&(e.g.a=new nAe(e)),e.g.a}function oCt(e){return!e.g&&(e.g=new kA),!e.g.b&&(e.g.b=new eAe(e)),e.g.b}function XC(e){return!e.g&&(e.g=new kA),!e.g.c&&(e.g.c=new iAe(e)),e.g.c}function cCt(e,t,n){var i,r;for(r=new X_(t,e),i=0;in||t=0?e._g(n,!0,!0):j0(e,t,!0)}function SCt(e,t){return zi(ge(Te(B(e,(ye(),J0)))),ge(Te(B(t,J0))))}function HBe(){HBe=Z,Vut=M0(M0(b9(new tr,(dE(),LP)),(d6(),ex)),lW)}function PCt(e,t,n){var i;return i=kqe(e,t,n),e.b=new BO(i.c.length),qse(e,i)}function MCt(e){if(e.b<=0)throw V(new tc);return--e.b,e.a-=e.c.c,Ce(e.a)}function CCt(e){var t;if(!e.a)throw V(new Uxe);return t=e.a,e.a=yi(e.a),t}function ICt(e){for(;!e.a;)if(!Oke(e.c,new MIe(e)))return!1;return!0}function l2(e){var t;return nn(e),Q(e,198)?(t=c(e,198),t):new zCe(e)}function TCt(e){bO(),c(e.We((kn(),Uw)),174).Fc((js(),Fj)),e.Ye(ZW,null)}function bO(){bO=Z,slt=new O5e,alt=new D5e,ult=hjt((kn(),ZW),slt,G1,alt)}function pO(){pO=Z,_0e=new QZ("LEAF_NUMBER",0),SW=new QZ("NODE_SIZE",1)}function jCt(e,t,n){e.a=t,e.c=n,e.b.a.$b(),na(e.d),e.e.a.c=oe(xt,xe,1,0,5,1)}function O$(e){e.a=oe(Qt,_n,25,e.b+1,15,1),e.c=oe(Qt,_n,25,e.b,15,1),e.d=0}function ACt(e,t){e.a.ue(t.d,e.b)>0&&(Ee(e.c,new Kte(t.c,t.d,e.d)),e.b=t.d)}function Lie(e,t){if(e.g==null||t>=e.i)throw V(new kF(t,e.i));return e.g[t]}function zBe(e,t,n){if(tE(e,n),n!=null&&!e.wj(n))throw V(new kN);return n}function VBe(e){var t;if(e.Ek())for(t=e.i-1;t>=0;--t)ee(e,t);return sie(e)}function OCt(e){var t,n;if(!e.b)return null;for(n=e.b;t=n.a[0];)n=t;return n}function DCt(e,t){var n,i;return dFe(t),n=(i=e.slice(0,t),Fie(i,e)),n.length=t,n}function L_(e,t,n,i){var r;i=(xm(),i||Ihe),r=e.slice(t,n),tse(r,e,t,n,-t,i)}function Nu(e,t,n,i,r){return t<0?j0(e,n,i):c(n,66).Nj().Pj(e,e.yh(),t,i,r)}function kCt(e){return Q(e,172)?""+c(e,172).a:e==null?null:Ro(e)}function RCt(e){return Q(e,172)?""+c(e,172).a:e==null?null:Ro(e)}function GBe(e,t){if(t.a)throw V(new No(GJe));Yi(e.a,t),t.a=e,!e.j&&(e.j=t)}function Nie(e,t){DF.call(this,t.rd(),t.qd()&-16449),yt(e),this.a=e,this.c=t}function UBe(e,t){var n,i;return i=t/e.c.Hd().gc()|0,n=t%e.c.Hd().gc(),a2(e,i,n)}function Ts(){Ts=Z,jf=new cF(j2,0),N1=new cF(FE,1),qa=new cF(A2,2)}function wO(){wO=Z,pG=new v9("All",0),Rhe=new q7e,xhe=new eDe,Lhe=new H7e}function WBe(){WBe=Z,fnt=vn((wO(),U(G(Ak,1),_e,297,0,[pG,Rhe,xhe,Lhe])))}function YBe(){YBe=Z,nrt=vn((Q_(),U(G(trt,1),_e,405,0,[V0,Ow,Aw,Pv])))}function XBe(){XBe=Z,iit=vn((v0(),U(G(nit,1),_e,406,0,[zT,HT,PG,MG])))}function JBe(){JBe=Z,oit=vn((m2(),U(G(rit,1),_e,323,0,[GT,VT,UT,WT])))}function QBe(){QBe=Z,uit=vn((c6(),U(G(sit,1),_e,394,0,[YT,xk,Lk,XT])))}function ZBe(){ZBe=Z,Cut=vn((dE(),U(G(c0e,1),_e,393,0,[ZR,LP,vj,NP])))}function e$e(){e$e=Z,_rt=vn((YO(),U(G(yrt,1),_e,360,0,[WG,uR,aR,tj])))}function t$e(){t$e=Z,dat=vn((C7(),U(G(L0e,1),_e,340,0,[CW,R0e,x0e,k0e])))}function n$e(){n$e=Z,Art=vn((Nl(),U(G(jrt,1),_e,411,0,[q2,u4,a4,YG])))}function i$e(){i$e=Z,vst=vn((rw(),U(G(JU,1),_e,197,0,[GR,XU,Bv,Fv])))}function r$e(){r$e=Z,nft=vn((ru(),U(G(tft,1),_e,396,0,[Tu,Hwe,qwe,zwe])))}function o$e(){o$e=Z,Klt=vn((mu(),U(G($lt,1),_e,285,0,[Lj,rh,U1,xj])))}function c$e(){c$e=Z,Llt=vn((Lh(),U(G(iY,1),_e,218,0,[nY,Rj,D4,o3])))}function s$e(){s$e=Z,Zlt=vn((l7(),U(G(Kwe,1),_e,311,0,[cY,Fwe,$we,Bwe])))}function u$e(){u$e=Z,Jlt=vn((ou(),U(G(tM,1),_e,374,0,[$j,Cb,Bj,Yw])))}function a$e(){a$e=Z,nD(),Mme=Ii,rht=$i,Cme=new KM(Ii),oht=new KM($i)}function eI(){eI=Z,$1e=new $Z(qh,0),mR=new $Z("IMPROVE_STRAIGHTNESS",1)}function xCt(e,t){return m_(),Ee(e,new yr(t,Ce(t.e.c.length+t.g.c.length)))}function LCt(e,t){return m_(),Ee(e,new yr(t,Ce(t.e.c.length+t.g.c.length)))}function Fie(e,t){return oI(t)!=10&&U(Fs(t),t.hm,t.__elementTypeId$,oI(t),e),e}function Jc(e,t){var n;return n=Do(e,t,0),n==-1?!1:(ad(e,n),!0)}function l$e(e,t){var n;return n=c(u2(e.e,t),387),n?(zte(n),n.e):null}function N_(e){var t;return Oo(e)&&(t=0-e,!isNaN(t))?t:y1(Z_(e))}function Do(e,t,n){for(;n=0?_7(e,n,!0,!0):j0(e,t,!0)}function Hie(e,t){HS();var n,i;return n=o2(e),i=o2(t),!!n&&!!i&&!Cze(n.k,i.k)}function BCt(e,t){es(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function $Ct(e,t){ts(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function KCt(e,t){p0(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function qCt(e,t){b0(e,t==null||o8((yt(t),t))||isNaN((yt(t),t))?0:(yt(t),t))}function b$e(e){(this.q?this.q:(st(),st(),th)).Ac(e.q?e.q:(st(),st(),th))}function HCt(e,t){return Q(t,99)&&(c(t,18).Bb&Vr)!=0?new RF(t,e):new X_(t,e)}function zCt(e,t){return Q(t,99)&&(c(t,18).Bb&Vr)!=0?new RF(t,e):new X_(t,e)}function p$e(e,t){ade=new AA,cit=t,aP=e,c(aP.b,65),jie(aP,ade,null),aXe(aP)}function L$(e,t,n){var i;return i=e.g[t],d5(e,t,e.oi(t,n)),e.gi(t,n,i),e.ci(),i}function _O(e,t){var n;return n=e.Xc(t),n>=0?(e.$c(n),!0):!1}function N$(e){var t;return e.d!=e.r&&(t=ra(e),e.e=!!t&&t.Cj()==Zet,e.d=t),e.e}function F$(e,t){var n;for(nn(e),nn(t),n=!1;t.Ob();)n=n|e.Fc(t.Pb());return n}function h0(e,t){var n;return n=c(Bt(e.e,t),387),n?(uDe(e,n),n.e):null}function w$e(e){var t,n;return t=e/60|0,n=e%60,n==0?""+t:""+t+":"+(""+n)}function $o(e,t){var n,i;return Wg(e),i=new Mie(t,e.a),n=new Rke(i),new ht(e,n)}function Yp(e,t){var n=e.a[t],i=(iK(),fG)[typeof n];return i?i(n):Ure(typeof n)}function VCt(e){switch(e.g){case 0:return Fn;case 1:return-1;default:return 0}}function GCt(e){return lce(e,(F_(),uhe))<0?-u3t(Z_(e)):e.l+e.m*T2+e.h*nb}function oI(e){return e.__elementTypeCategory$==null?10:e.__elementTypeCategory$}function B$(e){var t;return t=e.b.c.length==0?null:Ne(e.b,0),t!=null&&Y$(e,0),t}function m$e(e,t){for(;t[0]=0;)++t[0]}function cI(e,t){this.e=t,this.a=fqe(e),this.a<54?this.f=l0(e):this.c=DI(e)}function v$e(e,t,n,i){Ln(),Lb.call(this,26),this.c=e,this.a=t,this.d=n,this.b=i}function Vf(e,t,n){var i,r;for(i=10,r=0;re.a[i]&&(i=n);return i}function QCt(e,t){var n;return n=E0(e.e.c,t.e.c),n==0?zi(e.e.d,t.e.d):n}function Fm(e,t){return t.e==0||e.e==0?t4:(yE(),$q(e,t))}function ZCt(e,t){if(!e)throw V(new St(nNt("Enum constant undefined: %s",t)))}function K5(){K5=Z,ort=new o3e,crt=new i3e,irt=new l3e,rrt=new f3e,srt=new h3e}function EO(){EO=Z,Hhe=new RZ("BY_SIZE",0),yG=new RZ("BY_SIZE_AND_SHAPE",1)}function SO(){SO=Z,OG=new xZ("EADES",0),Bk=new xZ("FRUCHTERMAN_REINGOLD",1)}function uI(){uI=Z,pR=new BZ("READING_DIRECTION",0),N1e=new BZ("ROTATION",1)}function _$e(){_$e=Z,Hrt=vn((Qg(),U(G(L1e,1),_e,335,0,[sU,x1e,uU,pP,bP])))}function E$e(){E$e=Z,yst=vn((s6(),U(G(Nbe,1),_e,315,0,[Lbe,QU,ZU,jP,AP])))}function S$e(){S$e=Z,Drt=vn((Zm(),U(G(Ort,1),_e,363,0,[fR,dR,gR,hR,lR])))}function P$e(){P$e=Z,not=vn((Ku(),U(G(dge,1),_e,163,0,[aj,_P,K1,EP,xw])))}function M$e(){M$e=Z,Kat=vn((qI(),U(G(spe,1),_e,316,0,[rpe,kW,cpe,RW,ope])))}function C$e(){C$e=Z,llt=vn((fl(),U(G(Dd,1),_e,175,0,[Tt,ar,kf,_b,Od])))}function I$e(){I$e=Z,xat=vn((PE(),U(G(Rat,1),_e,355,0,[Kv,e3,HP,qP,zP])))}function T$e(){T$e=Z,Jit=vn((Hr(),U(G(kde,1),_e,356,0,[Af,B1,Hc,Pc,Io])))}function j$e(){j$e=Z,Rlt=vn((eo(),U(G(WP,1),_e,103,0,[ih,Va,ga,Vh,Gh])))}function A$e(){A$e=Z,Hlt=vn((Um(),U(G(QP,1),_e,249,0,[W1,Nj,kwe,JP,Rwe])))}function O$e(){O$e=Z,Glt=vn((Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])))}function $$(e,t){var n;return n=c(Bt(e.a,t),134),n||(n=new bN,Kn(e.a,t,n)),n}function D$e(e){var t;return t=c(B(e,(ye(),W0)),305),t?t.a==e:!1}function k$e(e){var t;return t=c(B(e,(ye(),W0)),305),t?t.i==e:!1}function R$e(e,t){return yt(t),lne(e),e.d.Ob()?(t.td(e.d.Pb()),!0):!1}function PO(e){return uc(e,Fn)>0?Fn:uc(e,Ar)<0?Ar:tn(e)}function Xp(e){return e<3?(pu(e,TJe),e+1):e=0&&t=-.01&&e.a<=ql&&(e.a=0),e.b>=-.01&&e.b<=ql&&(e.b=0),e}function L$e(e,t){return t==(oB(),oB(),unt)?e.toLocaleLowerCase():e.toLowerCase()}function Vie(e){return((e.i&2)!=0?"interface ":(e.i&1)!=0?"":"class ")+(Sh(e),e.o)}function mo(e){var t,n;n=(t=new NN,t),on((!e.q&&(e.q=new Me(ya,e,11,10)),e.q),n)}function eIt(e,t){var n;return n=t>0?t-1:t,D9e(gyt(sKe(Hte(new Z3,n),e.n),e.j),e.k)}function tIt(e,t,n,i){var r;e.j=-1,gse(e,Wce(e,t,n),(Wr(),r=c(t,66).Mj(),r.Ok(i)))}function N$e(e){this.g=e,this.f=new Se,this.a=g.Math.min(this.g.c.c,this.g.d.c)}function F$e(e){this.b=new Se,this.a=new Se,this.c=new Se,this.d=new Se,this.e=e}function B$e(e,t){this.a=new en,this.e=new en,this.b=(X5(),VR),this.c=e,this.b=t}function $$e(e,t,n){i8.call(this),Gie(this),this.a=e,this.c=n,this.b=t.d,this.f=t.e}function K$e(e){this.d=e,this.c=e.c.vc().Kc(),this.b=null,this.a=null,this.e=(YA(),sG)}function d0(e){if(e<0)throw V(new St("Illegal Capacity: "+e));this.g=this.ri(e)}function nIt(e,t){if(0>e||e>t)throw V(new oZ("fromIndex: 0, toIndex: "+e+Uue+t))}function iIt(e){var t;if(e.a==e.b.a)throw V(new tc);return t=e.a,e.c=t,e.a=e.a.e,t}function MO(e){var t;Rp(!!e.c),t=e.c.a,Fu(e.d,e.c),e.b==e.c?e.b=t:--e.a,e.c=null}function CO(e,t){var n;return Wg(e),n=new aLe(e,e.a.rd(),e.a.qd()|4,t),new ht(e,n)}function rIt(e,t){var n,i;return n=c(tw(e.d,t),14),n?(i=t,e.e.pc(i,n)):null}function IO(e,t){var n,i;for(i=e.Kc();i.Ob();)n=c(i.Pb(),70),pe(n,(ye(),W2),t)}function oIt(e){var t;return t=ge(Te(B(e,(Oe(),Id)))),t<0&&(t=0,pe(e,Id,t)),t}function cIt(e,t,n){var i;i=g.Math.max(0,e.b/2-.5),a6(n,i,1),Ee(t,new dOe(n,i))}function sIt(e,t,n){var i;return i=e.a.e[c(t.a,10).p]-e.a.e[c(n.a,10).p],xi(DC(i))}function q$e(e,t,n,i,r,o){var u;u=E$(i),Rr(u,r),br(u,o),it(e.a,i,new c8(u,t,n.f))}function H$e(e,t){var n;if(n=QI(e.Tg(),t),!n)throw V(new St(x1+t+PV));return n}function Jp(e,t){var n;for(n=e;yi(n);)if(n=yi(n),n==t)return!0;return!1}function uIt(e,t){var n,i,r;for(i=t.a.cd(),n=c(t.a.dd(),14).gc(),r=0;r0&&(e.a/=t,e.b/=t),e}function bu(e){var t;return e.w?e.w:(t=wPt(e),t&&!t.kh()&&(e.w=t),t)}function pIt(e){var t;return e==null?null:(t=c(e,190),wDt(t,t.length))}function ee(e,t){if(e.g==null||t>=e.i)throw V(new kF(t,e.i));return e.li(t,e.g[t])}function wIt(e){var t,n;for(t=e.a.d.j,n=e.c.d.j;t!=n;)Fa(e.b,t),t=r7(t);Fa(e.b,t)}function mIt(e){var t;for(t=0;t=14&&t<=16))),e}function U$e(e,t,n){var i=function(){return e.apply(i,arguments)};return t.apply(i,n),i}function W$e(e,t,n){var i,r;i=t;do r=ge(e.p[i.p])+n,e.p[i.p]=r,i=e.a[i.p];while(i!=t)}function B_(e,t){var n,i;i=e.a,n=Qjt(e,t,null),i!=t&&!e.e&&(n=AE(e,t,n)),n&&n.Fi()}function Uie(e,t){return Il(),Na(A1),g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)}function Wie(e,t){return Il(),Na(A1),g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)}function _It(e,t){return I1(),Uc(e.b.c.length-e.e.c.length,t.b.c.length-t.e.c.length)}function Bm(e,t){return vyt(z5(e,t,tn(jr(Xf,qf(tn(jr(t==null?0:fi(t),Jf)),15)))))}function Y$e(){Y$e=Z,hrt=vn((Dt(),U(G(HG,1),_e,267,0,[Ui,ur,Bi,Mc,cu,Gl])))}function X$e(){X$e=Z,vlt=vn((sw(),U(G(zW,1),_e,291,0,[HW,jj,Tj,qW,Cj,Ij])))}function J$e(){J$e=Z,dlt=vn((Gf(),U(G(Ape,1),_e,248,0,[$W,Pj,Mj,mx,px,wx])))}function Q$e(){Q$e=Z,Brt=vn((y2(),U(G(h4,1),_e,227,0,[f4,gP,l4,Dw,Tv,Iv])))}function Z$e(){Z$e=Z,Xrt=vn((mE(),U(G(Q1e,1),_e,275,0,[wP,W1e,J1e,X1e,Y1e,U1e])))}function eKe(){eKe=Z,Yrt=vn(($I(),U(G(G1e,1),_e,274,0,[vR,H1e,V1e,q1e,z1e,bU])))}function tKe(){tKe=Z,wst=vn((R7(),U(G(kbe,1),_e,313,0,[WU,Obe,UU,Abe,Dbe,zR])))}function nKe(){nKe=Z,Urt=vn((F7(),U(G(B1e,1),_e,276,0,[fU,lU,dU,hU,gU,wR])))}function iKe(){iKe=Z,Tut=vn((d6(),U(G(Iut,1),_e,327,0,[ex,lW,hW,fW,dW,aW])))}function rKe(){rKe=Z,Vlt=vn((js(),U(G(Cx,1),_e,273,0,[X1,Wh,Fj,eM,ZP,c3])))}function oKe(){oKe=Z,Nlt=vn((L7(),U(G(Cwe,1),_e,312,0,[rY,Swe,Mwe,_we,Pwe,Ewe])))}function EIt(){return fw(),U(G(ro,1),_e,93,0,[Ga,Uh,Ua,Ya,oh,pa,Mu,Wa,ba])}function jO(e,t){var n;n=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,0,n,e.a))}function AO(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,1,n,e.b))}function $_(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,3,n,e.b))}function b0(e,t){var n;n=e.f,e.f=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,3,n,e.f))}function p0(e,t){var n;n=e.g,e.g=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,4,n,e.g))}function es(e,t){var n;n=e.i,e.i=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,5,n,e.i))}function ts(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,6,n,e.j))}function K_(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,1,n,e.j))}function q_(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,4,n,e.c))}function H_(e,t){var n;n=e.k,e.k=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new Up(e,2,n,e.k))}function q$(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new b$(e,2,n,e.d))}function hd(e,t){var n;n=e.s,e.s=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new b$(e,4,n,e.s))}function Zp(e,t){var n;n=e.t,e.t=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new b$(e,5,n,e.t))}function z_(e,t){var n;n=e.F,e.F=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,5,n,t))}function aI(e,t){var n;return n=c(Bt((p9(),Fx),e),55),n?n.xj(t):oe(xt,xe,1,t,5,1)}function Dh(e,t){var n,i;return n=t in e.a,n&&(i=Ch(e,t).he(),i)?i.a:null}function SIt(e,t){var n,i,r;return n=(i=(Hb(),r=new KJ,r),t&&Lse(i,t),i),ire(n,e),n}function cKe(e,t,n){if(tE(e,n),!e.Bk()&&n!=null&&!e.wj(n))throw V(new kN);return n}function sKe(e,t){return e.n=t,e.n?(e.f=new Se,e.e=new Se):(e.f=null,e.e=null),e}function hn(e,t,n,i,r,o){var u;return u=RB(e,t),aKe(n,u),u.i=r?8:0,u.f=i,u.e=r,u.g=o,u}function Yie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=1,this.c=e,this.a=n}function Xie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=2,this.c=e,this.a=n}function Jie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=6,this.c=e,this.a=n}function Qie(e,t,n,i,r){this.d=t,this.k=i,this.f=r,this.o=-1,this.p=7,this.c=e,this.a=n}function Zie(e,t,n,i,r){this.d=t,this.j=i,this.e=r,this.o=-1,this.p=4,this.c=e,this.a=n}function uKe(e,t){var n,i,r,o;for(i=t,r=0,o=i.length;r=0),S9t(e.d,e.c)<0&&(e.a=e.a-1&e.d.a.length-1,e.b=e.d.c),e.c=-1}function ere(e){return e.a<54?e.f<0?-1:e.f>0?1:0:(!e.c&&(e.c=SI(e.f)),e.c).e}function Na(e){if(!(e>=0))throw V(new St("tolerance ("+e+") must be >= 0"));return e}function V_(){return FW||(FW=new JWe,zm(FW,U(G(Sv,1),xe,130,0,[new VJ]))),FW}function Zr(){Zr=Z,OP=new mF(R6,0),Os=new mF("INPUT",1),Fc=new mF("OUTPUT",2)}function DO(){DO=Z,k1e=new hF("ARD",0),bR=new hF("MSD",1),cU=new hF("MANUAL",2)}function w0(){w0=Z,wj=new SF("BARYCENTER",0),kP=new SF(xQe,1),YR=new SF(LQe,2)}function lI(e,t){var n;if(n=e.gc(),t<0||t>n)throw V(new Fp(t,n));return new mte(e,t)}function hKe(e,t){var n;return Q(t,42)?e.c.Mc(t):(n=xK(e,t),d7(e,t),n)}function uo(e,t,n){return Ug(e,t),kc(e,n),hd(e,0),Zp(e,1),pd(e,!0),bd(e,!0),e}function pu(e,t){if(e<0)throw V(new St(t+" cannot be negative but was: "+e));return e}function dKe(e,t){var n,i;for(n=0,i=e.gc();n0?c(Ne(n.a,i-1),10):null}function H5(e,t){var n;n=e.k,e.k=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,2,n,e.k))}function RO(e,t){var n;n=e.f,e.f=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,8,n,e.f))}function xO(e,t){var n;n=e.i,e.i=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,7,n,e.i))}function ire(e,t){var n;n=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,8,n,e.a))}function rre(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,0,n,e.b))}function ore(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,0,n,e.b))}function cre(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,1,n,e.c))}function sre(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,1,n,e.c))}function z$(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,4,n,e.c))}function ure(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,1,n,e.d))}function V$(e,t){var n;n=e.D,e.D=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,2,n,e.D))}function G$(e,t){e.r>0&&e.c0&&e.g!=0&&G$(e.i,t/e.r*e.i.d))}function DIt(e,t,n){var i;e.b=t,e.a=n,i=(e.a&512)==512?new n9e:new zJ,e.c=WNt(i,e.b,e.a)}function EKe(e,t){return Bh(e.e,t)?(Wr(),N$(t)?new d8(t,e):new pC(t,e)):new g7e(t,e)}function LO(e,t){return myt(V5(e.a,t,tn(jr(Xf,qf(tn(jr(t==null?0:fi(t),Jf)),15)))))}function kIt(e,t,n){return Wp(e,new vIe(t),new lN,new yIe(n),U(G(Hs,1),_e,132,0,[]))}function RIt(e){var t,n;return 0>e?new yZ:(t=e+1,n=new GFe(t,e),new Zee(null,n))}function xIt(e,t){st();var n;return n=new Fy(1),fr(e)?bo(n,e,t):Kc(n.f,e,t),new AN(n)}function LIt(e,t){var n,i;return n=e.o+e.p,i=t.o+t.p,nt?(t<<=1,t>0?t:j6):t}function U$(e){switch(Aee(e.e!=3),e.e){case 2:return!1;case 0:return!0}return qMt(e)}function PKe(e,t){var n;return Q(t,8)?(n=c(t,8),e.a==n.a&&e.b==n.b):!1}function W$(e,t,n){var i,r,o;return o=t>>5,r=t&31,i=Xi($p(e.n[n][o],tn(Ph(r,1))),3),i}function FIt(e,t){var n,i;for(i=t.vc().Kc();i.Ob();)n=c(i.Pb(),42),O7(e,n.cd(),n.dd())}function BIt(e,t){var n;n=new AA,c(t.b,65),c(t.b,65),c(t.b,65),Zc(t.a,new jte(e,n,t))}function are(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,21,n,e.b))}function lre(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,11,n,e.d))}function NO(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,13,n,e.j))}function MKe(e,t,n){var i,r,o;for(o=e.a.length-1,r=e.b,i=0;i>>31;i!=0&&(e[n]=i)}function YIt(e,t){st();var n,i;for(i=new Se,n=0;n0&&(this.g=this.ri(this.i+(this.i/8|0)+1),e.Qc(this.g))}function Ci(e,t){a8.call(this,Nft,e,t),this.b=this,this.a=qc(e.Tg(),at(this.e.Tg(),this.c))}function G5(e,t){var n,i;for(yt(t),i=t.vc().Kc();i.Ob();)n=c(i.Pb(),42),e.zc(n.cd(),n.dd())}function oTt(e,t,n){var i;for(i=n.Kc();i.Ob();)if(!rO(e,t,i.Pb()))return!1;return!0}function cTt(e,t,n,i,r){var o;return n&&(o=di(t.Tg(),e.c),r=n.gh(t,-1-(o==-1?i:o),null,r)),r}function sTt(e,t,n,i,r){var o;return n&&(o=di(t.Tg(),e.c),r=n.ih(t,-1-(o==-1?i:o),null,r)),r}function zKe(e){var t;if(e.b==-2){if(e.e==0)t=-1;else for(t=0;e.a[t]==0;t++);e.b=t}return e.b}function VKe(e){switch(e.g){case 2:return Ie(),Mt;case 4:return Ie(),jt;default:return e}}function GKe(e){switch(e.g){case 1:return Ie(),Yt;case 3:return Ie(),_t;default:return e}}function uTt(e){var t,n,i;return e.j==(Ie(),_t)&&(t=_Ue(e),n=bs(t,jt),i=bs(t,Mt),i||i&&n)}function aTt(e){var t,n;return t=c(e.e&&e.e(),9),n=c(_ne(t,t.length),9),new ku(t,n,t.length)}function lTt(e,t){Wt(t,RQe,1),poe(Ayt(new BA((qS(),new qB(e,!1,!1,new jJ))))),qt(t)}function fI(e,t){return Pt(),fr(e)?Sie(e,ln(t)):kp(e)?SB(e,Te(t)):Dp(e)?gSt(e,Fe(t)):e.wd(t)}function pre(e,t){t.q=e,e.d=g.Math.max(e.d,t.r),e.b+=t.d+(e.a.c.length==0?0:e.c),Ee(e.a,t)}function U_(e,t){var n,i,r,o;return r=e.c,n=e.c+e.b,o=e.d,i=e.d+e.a,t.a>r&&t.ao&&t.b1||e.Ob())return++e.a,e.g=0,t=e.i,e.Ob(),t;throw V(new tc)}function ETt(e){U7e();var t;return iOe(uW,e)||(t=new ASe,t.a=e,cte(uW,e,t)),c(so(uW,e),635)}function ia(e){var t,n,i,r;return r=e,i=0,r<0&&(r+=nb,i=Kh),n=xi(r/T2),t=xi(r-n*T2),Bc(t,n,i)}function hI(e){var t,n,i;for(i=0,n=new By(e.a);n.a>22),r=e.h+t.h+(i>>22),Bc(n&qs,i&qs,r&Kh)}function hqe(e,t){var n,i,r;return n=e.l-t.l,i=e.m-t.m+(n>>22),r=e.h-t.h+(i>>22),Bc(n&qs,i&qs,r&Kh)}function pI(e){var t;return e<128?(t=(IRe(),hhe)[e],!t&&(t=hhe[e]=new cQ(e)),t):new cQ(e)}function gi(e){var t;return Q(e,78)?e:(t=e&&e.__java$exception,t||(t=new tHe(e),mAe(t)),t)}function wI(e){if(Q(e,186))return c(e,118);if(e)return null;throw V(new Ly(set))}function dqe(e,t){if(t==null)return!1;for(;e.a!=e.b;)if($n(t,t7(e)))return!0;return!1}function Ere(e){return e.a.Ob()?!0:e.a!=e.d?!1:(e.a=new nie(e.e.f),e.a.Ob())}function Hi(e,t){var n,i;return n=t.Pc(),i=n.length,i==0?!1:(xte(e.c,e.c.length,n),!0)}function NTt(e,t,n){var i,r;for(r=t.vc().Kc();r.Ob();)i=c(r.Pb(),42),e.yc(i.cd(),i.dd(),n);return e}function gqe(e,t){var n,i;for(i=new q(e.b);i.a=0,"Negative initial capacity"),u8(t>=0,"Non-positive load factor"),Is(this)}function rK(e,t,n){return e>=128?!1:e<64?s5(Xi(Ph(1,e),n),0):s5(Xi(Ph(1,e-64),t),0)}function GTt(e,t){return!e||!t||e==t?!1:E0(e.b.c,t.b.c+t.b.b)<0&&E0(t.b.c,e.b.c+e.b.b)<0}function Cqe(e){var t,n,i;return n=e.n,i=e.o,t=e.d,new Ru(n.a-t.b,n.b-t.d,i.a+(t.b+t.c),i.b+(t.d+t.a))}function UTt(e){var t,n,i,r;for(n=e.a,i=0,r=n.length;ii)throw V(new Fp(t,i));return e.hi()&&(n=HLe(e,n)),e.Vh(t,n)}function yI(e,t,n){return n==null?(!e.q&&(e.q=new en),u2(e.q,t)):(!e.q&&(e.q=new en),Kn(e.q,t,n)),e}function pe(e,t,n){return n==null?(!e.q&&(e.q=new en),u2(e.q,t)):(!e.q&&(e.q=new en),Kn(e.q,t,n)),e}function Iqe(e){var t,n;return n=new uO,Mo(n,e),pe(n,(v1(),K2),e),t=new en,JBt(e,n,t),Sqt(e,n,t),n}function XTt(e){ov();var t,n,i;for(n=oe(ir,we,8,2,0,1),i=0,t=0;t<2;t++)i+=.5,n[t]=O8t(i,e);return n}function Tqe(e,t){var n,i,r,o;for(n=!1,i=e.a[t].length,o=0;o>=1);return t}function Aqe(e){var t,n;return n=WI(e.h),n==32?(t=WI(e.m),t==32?WI(e.l)+32:t+20-10):n-12}function Y5(e){var t;return t=e.a[e.b],t==null?null:(vi(e.a,e.b,null),e.b=e.b+1&e.a.length-1,t)}function Oqe(e){var t,n;return t=e.t-e.k[e.o.p]*e.d+e.j[e.o.p]>e.f,n=e.u+e.e[e.o.p]*e.d>e.f*e.s*e.d,t||n}function JO(e,t,n){var i,r;return i=new T$(t,n),r=new Er,e.b=EWe(e,e.b,i,r),r.b||++e.c,e.b.b=!1,r.d}function Dqe(e,t,n){var i,r,o,u;for(u=Q5(t,n),o=0,r=u.Kc();r.Ob();)i=c(r.Pb(),11),Kn(e.c,i,Ce(o++))}function _1(e){var t,n;for(n=new q(e.a.b);n.an&&(n=e[t]);return n}function kqe(e,t,n){var i;return i=new Se,Bse(e,t,i,(Ie(),jt),!0,!1),Bse(e,n,i,Mt,!1,!1),i}function cK(e,t,n){var i,r,o,u;return o=null,u=t,r=f0(u,"labels"),i=new ZOe(e,n),o=(bxt(i.a,i.b,r),r),o}function QTt(e,t,n,i){var r;return r=Cse(e,t,n,i),!r&&(r=Zjt(e,n,i),r&&!uv(e,t,r))?null:r}function ZTt(e,t,n,i){var r;return r=Ise(e,t,n,i),!r&&(r=SK(e,n,i),r&&!uv(e,t,r))?null:r}function Rqe(e,t){var n;for(n=0;n1||t>=0&&e.b<3)}function _I(e){var t,n,i;for(t=new ds,i=Mn(e,0);i.b!=i.d.c;)n=c(Pn(i),8),b_(t,0,new go(n));return t}function Vg(e){var t,n;for(n=new q(e.a.b);n.ai?1:0}function Kre(e,t){return rWe(e,t)?(it(e.b,c(B(t,(ye(),kw)),21),t),Cn(e.a,t),!0):!1}function fjt(e){var t,n;t=c(B(e,(ye(),As)),10),t&&(n=t.c,Jc(n.a,t),n.a.c.length==0&&Jc(Nr(t).b,n))}function $qe(e){return Vl?oe(hnt,qJe,572,0,0,1):c(Bl(e.a,oe(hnt,qJe,572,e.a.c.length,0,1)),842)}function hjt(e,t,n,i){return k8(),new qN(U(G(fb,1),gD,42,0,[(ZK(e,t),new Vb(e,t)),(ZK(n,i),new Vb(n,i))]))}function Hm(e,t,n){var i,r;return r=(i=new NN,i),uo(r,t,n),on((!e.q&&(e.q=new Me(ya,e,11,10)),e.q),r),r}function lK(e){var t,n,i,r;for(r=Fyt(hft,e),n=r.length,i=oe(Re,we,2,n,6,1),t=0;t=e.b.c.length||(qre(e,2*t+1),n=2*t+2,n=0&&e[i]===t[i];i--);return i<0?0:iF(Xi(e[i],no),Xi(t[i],no))?-1:1}function djt(e,t){var n,i;for(i=Mn(e,0);i.b!=i.d.c;)n=c(Pn(i),214),n.e.length>0&&(t.td(n),n.i&&sAt(n))}function hK(e,t){var n,i;return i=c(vt(e.a,4),126),n=oe(hY,KV,415,t,0,1),i!=null&&bc(i,0,n,0,i.length),n}function qqe(e,t){var n;return n=new Hq((e.f&256)!=0,e.i,e.a,e.d,(e.f&16)!=0,e.j,e.g,t),e.e!=null||(n.c=e),n}function gjt(e,t){var n,i;for(i=e.Zb().Cc().Kc();i.Ob();)if(n=c(i.Pb(),14),n.Hc(t))return!0;return!1}function dK(e,t,n,i,r){var o,u;for(u=n;u<=r;u++)for(o=t;o<=i;o++)if(Ym(e,o,u))return!0;return!1}function Hqe(e,t,n){var i,r,o,u;for(yt(n),u=!1,o=e.Zc(t),r=n.Kc();r.Ob();)i=r.Pb(),o.Rb(i),u=!0;return u}function bjt(e,t){var n;return e===t?!0:Q(t,83)?(n=c(t,83),zce(e0(e),n.vc())):!1}function zqe(e,t,n){var i,r;for(r=n.Kc();r.Ob();)if(i=c(r.Pb(),42),e.re(t,i.dd()))return!0;return!1}function Vqe(e,t,n){return e.d[t.p][n.p]||(f8t(e,t,n),e.d[t.p][n.p]=!0,e.d[n.p][t.p]=!0),e.a[t.p][n.p]}function tE(e,t){if(!e.ai()&&t==null)throw V(new St("The 'no null' constraint is violated"));return t}function nE(e,t){e.D==null&&e.B!=null&&(e.D=e.B,e.B=null),V$(e,t==null?null:(yt(t),t)),e.C&&e.yk(null)}function pjt(e,t){var n;return!e||e==t||!nr(t,(ye(),X0))?!1:(n=c(B(t,(ye(),X0)),10),n!=e)}function gK(e){switch(e.i){case 2:return!0;case 1:return!1;case-1:++e.c;default:return e.pl()}}function Gqe(e){switch(e.i){case-2:return!0;case-1:return!1;case 1:--e.c;default:return e.ql()}}function Uqe(e){LLe.call(this,"The given string does not match the expected format for individual spacings.",e)}function ru(){ru=Z,Tu=new R9("ELK",0),Hwe=new R9("JSON",1),qwe=new R9("DOT",2),zwe=new R9("SVG",3)}function EI(){EI=Z,sx=new MF(qh,0),S0e=new MF("RADIAL_COMPACTION",1),P0e=new MF("WEDGE_COMPACTION",2)}function Fl(){Fl=Z,Fhe=new rF("CONCURRENT",0),Su=new rF("IDENTITY_FINISH",1),Tw=new rF("UNORDERED",2)}function bK(){bK=Z,dde=(l9(),CG),hde=new ut(uae,dde),lit=new hi(aae),fit=new hi(lae),hit=new hi(fae)}function iE(){iE=Z,C1e=new Z_e,I1e=new eEe,Prt=new tEe,Srt=new nEe,Ert=new iEe,M1e=(yt(Ert),new pc)}function rE(){rE=Z,oW=new yF("CONSERVATIVE",0),Xbe=new yF("CONSERVATIVE_SOFT",1),DP=new yF("SLOPPY",2)}function QO(){QO=Z,Owe=new Yb(15),Flt=new Yr((kn(),Sb),Owe),YP=i3,Iwe=_lt,Twe=Eb,Awe=Vv,jwe=_x}function pK(e,t,n){var i,r,o;for(i=new wi,o=Mn(n,0);o.b!=o.d.c;)r=c(Pn(o),8),Cn(i,new go(r));Hqe(e,t,i)}function wjt(e){var t,n,i;for(t=0,i=oe(ir,we,8,e.b,0,1),n=Mn(e,0);n.b!=n.d.c;)i[t++]=c(Pn(n),8);return i}function zre(e){var t;return t=(!e.a&&(e.a=new Me(Yh,e,9,5)),e.a),t.i!=0?xyt(c(ee(t,0),678)):null}function mjt(e,t){var n;return n=xr(e,t),iF(u$(e,t),0)|Jyt(u$(e,n),0)?n:xr(dD,u$($p(n,63),1))}function vjt(e,t){var n;n=Le((kK(),HR))!=null&&t.wg()!=null?ge(Te(t.wg()))/ge(Te(Le(HR))):1,Kn(e.b,t,n)}function yjt(e,t){var n,i;return n=c(e.d.Bc(t),14),n?(i=e.e.hc(),i.Gc(n),e.e.d-=n.gc(),n.$b(),i):null}function Vre(e,t){var n,i;if(i=e.c[t],i!=0)for(e.c[t]=0,e.d-=i,n=t+1;n0)return y_(t-1,e.a.c.length),ad(e.a,t-1);throw V(new yAe)}function _jt(e,t,n){if(t<0)throw V(new ho(wZe+t));tt)throw V(new St(mD+e+HJe+t));if(e<0||t>n)throw V(new oZ(mD+e+Yue+t+Uue+n))}function Xqe(e){if(!e.a||(e.a.i&8)==0)throw V(new Ao("Enumeration class expected for layout option "+e.f))}function ew(e){var t;++e.j,e.i==0?e.g=null:e.iUD?e-n>UD:n-e>UD}function mK(e,t){return!e||t&&!e.j||Q(e,124)&&c(e,124).a.b==0?0:e.Re()}function e7(e,t){return!e||t&&!e.k||Q(e,124)&&c(e,124).a.a==0?0:e.Se()}function SI(e){return T1(),e<0?e!=-1?new $oe(-1,-e):gG:e<=10?Che[xi(e)]:new $oe(1,e)}function Ure(e){throw iK(),V(new d9e("Unexpected typeof result '"+e+"'; please report this bug to the GWT team"))}function tHe(e){v9e(),V9(this),F8(this),this.e=e,gWe(this,e),this.g=e==null?rs:Ro(e),this.a="",this.b=e,this.a=""}function Wre(){this.a=new y5e,this.f=new uje(this),this.b=new aje(this),this.i=new lje(this),this.e=new fje(this)}function nHe(){Avt.call(this,new Oie(Xp(16))),pu(2,PJe),this.b=2,this.a=new Ane(null,null,0,null),GM(this.a,this.a)}function X5(){X5=Z,YU=new pF("DUMMY_NODE_OVER",0),Rbe=new pF("DUMMY_NODE_UNDER",1),VR=new pF("EQUAL",2)}function vK(){vK=Z,FG=FLe(U(G(WP,1),_e,103,0,[(eo(),ga),Va])),BG=FLe(U(G(WP,1),_e,103,0,[Gh,Vh]))}function yK(e){return(Ie(),cs).Hc(e.j)?ge(Te(B(e,(ye(),m4)))):Ko(U(G(ir,1),we,8,0,[e.i.n,e.n,e.a])).b}function Cjt(e){var t,n,i,r;for(i=e.b.a,n=i.a.ec().Kc();n.Ob();)t=c(n.Pb(),561),r=new WUe(t,e.e,e.f),Ee(e.g,r)}function Ug(e,t){var n,i,r;i=e.nk(t,null),r=null,t&&(r=(r_(),n=new Nb,n),B_(r,e.r)),i=$l(e,r,i),i&&i.Fi()}function Ijt(e,t){var n,i;for(i=$s(e.d,1)!=0,n=!0;n;)n=!1,n=t.c.Tf(t.e,i),n=n|ZI(e,t,i,!1),i=!i;hre(e)}function Yre(e,t){var n,i,r;return i=!1,n=t.q.d,t.dr&&(TVe(t.q,r),i=n!=t.q.d)),i}function iHe(e,t){var n,i,r,o,u,a,l,d;return l=t.i,d=t.j,i=e.f,r=i.i,o=i.j,u=l-r,a=d-o,n=g.Math.sqrt(u*u+a*a),n}function Xre(e,t){var n,i;return i=g7(e),i||(n=(hH(),jGe(t)),i=new fAe(n),on(i.Vk(),e)),i}function PI(e,t){var n,i;return n=c(e.c.Bc(t),14),n?(i=e.hc(),i.Gc(n),e.d-=n.gc(),n.$b(),e.mc(i)):e.jc()}function rHe(e,t){var n;for(n=0;n=e.c.b:e.a<=e.c.b))throw V(new tc);return t=e.a,e.a+=e.c.c,++e.b,Ce(t)}function Ajt(e){var t;return t=new N$e(e),zC(e.a,srt,new Js(U(G(QT,1),xe,369,0,[t]))),t.d&&Ee(t.f,t.d),t.f}function _K(e){var t;return t=new wee(e.a),Mo(t,e),pe(t,(ye(),Hn),e),t.o.a=e.g,t.o.b=e.f,t.n.a=e.i,t.n.b=e.j,t}function Ojt(e,t,n,i){var r,o;for(o=e.Kc();o.Ob();)r=c(o.Pb(),70),r.n.a=t.a+(i.a-r.o.a)/2,r.n.b=t.b,t.b+=r.o.b+n}function Djt(e,t,n){var i,r;for(r=t.a.a.ec().Kc();r.Ob();)if(i=c(r.Pb(),57),wLe(e,i,n))return!0;return!1}function kjt(e){var t,n;for(n=new q(e.r);n.a=0?t:-t;i>0;)i%2==0?(n*=n,i=i/2|0):(r*=n,i-=1);return t<0?1/r:r}function Njt(e,t){var n,i,r;for(r=1,n=e,i=t>=0?t:-t;i>0;)i%2==0?(n*=n,i=i/2|0):(r*=n,i-=1);return t<0?1/r:r}function fHe(e){var t,n;if(e!=null)for(n=0;n0&&(n=c(Ne(e.a,e.a.c.length-1),570),Kre(n,t))||Ee(e.a,new zFe(t))}function qjt(e){ka();var t,n;t=e.d.c-e.e.c,n=c(e.g,145),Zc(n.b,new wTe(t)),Zc(n.c,new mTe(t)),Mr(n.i,new vTe(t))}function bHe(e){var t;return t=new n1,t.a+="VerticalSegment ",nc(t,e.e),t.a+=" ",wn(t,Iee(new XN,new q(e.k))),t.a}function Hjt(e){var t;return t=c(h0(e.c.c,""),229),t||(t=new i2(i_(n_(new Ay,""),"Other")),Xg(e.c.c,"",t)),t}function J5(e){var t;return(e.Db&64)!=0?Ba(e):(t=new ea(Ba(e)),t.a+=" (name: ",co(t,e.zb),t.a+=")",t.a)}function toe(e,t,n){var i,r;return r=e.sb,e.sb=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,4,r,t),n?n.Ei(i):n=i),n}function EK(e,t){var n,i,r;for(n=0,r=qo(e,t).Kc();r.Ob();)i=c(r.Pb(),11),n+=B(i,(ye(),As))!=null?1:0;return n}function Vm(e,t,n){var i,r,o;for(i=0,o=Mn(e,0);o.b!=o.d.c&&(r=ge(Te(Pn(o))),!(r>n));)r>=t&&++i;return i}function zjt(e,t,n){var i,r;return i=new Ah(e.e,3,13,null,(r=t.c,r||(ot(),Ql)),wd(e,t),!1),n?n.Ei(i):n=i,n}function Vjt(e,t,n){var i,r;return i=new Ah(e.e,4,13,(r=t.c,r||(ot(),Ql)),null,wd(e,t),!1),n?n.Ei(i):n=i,n}function noe(e,t,n){var i,r;return r=e.r,e.r=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,8,r,e.r),n?n.Ei(i):n=i),n}function gd(e,t){var n,i;return n=c(t,676),i=n.vk(),!i&&n.wk(i=Q(t,88)?new f7e(e,c(t,26)):new DNe(e,c(t,148))),i}function MI(e,t,n){var i;e.qi(e.i+1),i=e.oi(t,n),t!=e.i&&bc(e.g,t,e.g,t+1,e.i-t),vi(e.g,t,i),++e.i,e.bi(t,n),e.ci()}function Gjt(e,t){var n;return t.a&&(n=t.a.a.length,e.a?wn(e.a,e.b):e.a=new lu(e.d),RNe(e.a,t.a,t.d.length,n)),e}function Ujt(e,t){var n,i,r,o;if(t.vi(e.a),o=c(vt(e.a,8),1936),o!=null)for(n=o,i=0,r=n.length;in)throw V(new ho(mD+e+Yue+t+", size: "+n));if(e>t)throw V(new St(mD+e+HJe+t))}function $u(e,t,n){if(t<0)ose(e,n);else{if(!n.Ij())throw V(new St(x1+n.ne()+W6));c(n,66).Nj().Vj(e,e.yh(),t)}}function Xjt(e,t,n,i,r,o,u,a){var l;for(l=n;o=i||t=65&&e<=70?e-65+10:e>=97&&e<=102?e-97+10:e>=48&&e<=57?e-48:0}function EHe(e){var t;return(e.Db&64)!=0?Ba(e):(t=new ea(Ba(e)),t.a+=" (source: ",co(t,e.d),t.a+=")",t.a)}function Qjt(e,t,n){var i,r;return r=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,5,r,e.a),n?Mce(n,i):n=i),n}function bd(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,2,n,t))}function roe(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,8,n,t))}function i7(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,8,n,t))}function pd(e,t){var n;n=(e.Bb&512)!=0,t?e.Bb|=512:e.Bb&=-513,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,3,n,t))}function ooe(e,t){var n;n=(e.Bb&512)!=0,t?e.Bb|=512:e.Bb&=-513,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,9,n,t))}function Z5(e,t){var n;return e.b==-1&&e.a&&(n=e.a.Gj(),e.b=n?e.c.Xg(e.a.aj(),n):di(e.c.Tg(),e.a)),e.c.Og(e.b,t)}function Ce(e){var t,n;return e>-129&&e<128?(t=e+128,n=(yRe(),dhe)[t],!n&&(n=dhe[t]=new sQ(e)),n):new sQ(e)}function oE(e){var t,n;return e>-129&&e<128?(t=e+128,n=(CRe(),whe)[t],!n&&(n=whe[t]=new aQ(e)),n):new aQ(e)}function coe(e){var t,n;return t=e.k,t==(Dt(),Bi)?(n=c(B(e,(ye(),Zo)),61),n==(Ie(),_t)||n==Yt):!1}function Zjt(e,t,n){var i,r,o;return o=(r=EE(e.b,t),r),o&&(i=c(oD(iI(e,o),""),26),i)?Cse(e,i,t,n):null}function SK(e,t,n){var i,r,o;return o=(r=EE(e.b,t),r),o&&(i=c(oD(iI(e,o),""),26),i)?Ise(e,i,t,n):null}function SHe(e,t){var n,i;for(i=new $t(e);i.e!=i.i.gc();)if(n=c(Vt(i),138),le(t)===le(n))return!0;return!1}function e6(e,t,n){var i;if(i=e.gc(),t>i)throw V(new Fp(t,i));if(e.hi()&&e.Hc(n))throw V(new St(RT));e.Xh(t,n)}function eAt(e,t){var n;if(n=Bm(e.i,t),n==null)throw V(new sf("Node did not exist in input."));return wre(t,n),null}function tAt(e,t){var n;if(n=QI(e,t),Q(n,322))return c(n,34);throw V(new St(x1+t+"' is not a valid attribute"))}function nAt(e,t,n){var i,r;for(r=Q(t,99)&&(c(t,18).Bb&Vr)!=0?new RF(t,e):new X_(t,e),i=0;it?1:e==t?e==0?zi(1/e,1/t):0:isNaN(e)?isNaN(t)?0:1:-1}function fAt(e,t){Wt(t,"Sort end labels",1),Di(si($o(new ht(null,new bt(e.b,16)),new V3e),new G3e),new U3e),qt(t)}function t6(e,t,n){var i,r;return e.ej()?(r=e.fj(),i=Aq(e,t,n),e.$i(e.Zi(7,Ce(n),i,t,r)),i):Aq(e,t,n)}function PK(e,t){var n,i,r;e.d==null?(++e.e,--e.f):(r=t.cd(),n=t.Sh(),i=(n&Fn)%e.d.length,WMt(e,i,KUe(e,i,n,r)))}function cE(e,t){var n;n=(e.Bb&Ka)!=0,t?e.Bb|=Ka:e.Bb&=-1025,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,10,n,t))}function sE(e,t){var n;n=(e.Bb&vw)!=0,t?e.Bb|=vw:e.Bb&=-4097,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,12,n,t))}function uE(e,t){var n;n=(e.Bb&Es)!=0,t?e.Bb|=Es:e.Bb&=-8193,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,15,n,t))}function aE(e,t){var n;n=(e.Bb&Iw)!=0,t?e.Bb|=Iw:e.Bb&=-2049,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new La(e,1,11,n,t))}function hAt(e,t){var n;return n=zi(e.b.c,t.b.c),n!=0||(n=zi(e.a.a,t.a.a),n!=0)?n:zi(e.a.b,t.a.b)}function dAt(e,t){var n;if(n=Bt(e.k,t),n==null)throw V(new sf("Port did not exist in input."));return wre(t,n),null}function gAt(e){var t,n;for(n=GUe(bu(e)).Kc();n.Ob();)if(t=ln(n.Pb()),y6(e,t))return EMt((tOe(),Pft),t);return null}function bAt(e,t){var n,i,r,o,u;for(u=qc(e.e.Tg(),t),o=0,n=c(e.g,119),r=0;r>10)+wT&Ni,t[1]=(e&1023)+56320&Ni,pf(t,0,t.length)}function o7(e){var t,n;return n=c(B(e,(Oe(),Pu)),103),n==(eo(),ih)?(t=ge(Te(B(e,TR))),t>=1?Va:Vh):n}function mAt(e){switch(c(B(e,(Oe(),zh)),218).g){case 1:return new D4e;case 3:return new N4e;default:return new O4e}}function Wg(e){if(e.c)Wg(e.c);else if(e.d)throw V(new Ao("Stream already terminated, can't be modified or used"))}function IK(e){var t;return(e.Db&64)!=0?Ba(e):(t=new ea(Ba(e)),t.a+=" (identifier: ",co(t,e.k),t.a+=")",t.a)}function IHe(e,t,n){var i,r;return i=(Hb(),r=new OA,r),jO(i,t),AO(i,n),e&&on((!e.a&&(e.a=new qi(ma,e,5)),e.a),i),i}function TK(e,t,n,i){var r,o;return yt(i),yt(n),r=e.xc(t),o=r==null?n:q8e(c(r,15),c(n,14)),o==null?e.Bc(t):e.zc(t,o),o}function nt(e){var t,n,i,r;return n=(t=c(rl((i=e.gm,r=i.f,r==bn?i:r)),9),new ku(t,c(Da(t,t.length),9),0)),Fa(n,e),n}function vAt(e,t,n){var i,r;for(r=e.a.ec().Kc();r.Ob();)if(i=c(r.Pb(),10),bI(n,c(Ne(t,i.p),14)))return i;return null}function yAt(e,t,n){var i;try{ejt(e,t,n)}catch(r){throw r=gi(r),Q(r,597)?(i=r,V(new gie(i))):V(r)}return t}function P1(e,t){var n;return Oo(e)&&Oo(t)&&(n=e-t,pT>1,e.k=n-1>>1}function jK(){Oce();var e,t,n;n=pzt+++Date.now(),e=xi(g.Math.floor(n*vT))&wD,t=xi(n-e*Gue),this.a=e^1502,this.b=t^ez}function xh(e){var t,n,i;for(t=new Se,i=new q(e.j);i.a34028234663852886e22?Ii:t<-34028234663852886e22?$i:t}function THe(e){return e-=e>>1&1431655765,e=(e>>2&858993459)+(e&858993459),e=(e>>4)+e&252645135,e+=e>>8,e+=e>>16,e&63}function jHe(e){var t,n,i,r;for(t=new ake(e.Hd().gc()),r=0,i=l2(e.Hd().Kc());i.Ob();)n=i.Pb(),x6t(t,n,Ce(r++));return ckt(t.a)}function CAt(e,t){var n,i,r;for(r=new en,i=t.vc().Kc();i.Ob();)n=c(i.Pb(),42),Kn(r,n.cd(),wTt(e,c(n.dd(),15)));return r}function hoe(e,t){e.n.c.length==0&&Ee(e.n,new W8(e.s,e.t,e.i)),Ee(e.b,t),Woe(c(Ne(e.n,e.n.c.length-1),211),t),BYe(e,t)}function Gm(e){return(e.c!=e.b.b||e.i!=e.g.b)&&(e.a.c=oe(xt,xe,1,0,5,1),Hi(e.a,e.b),Hi(e.a,e.g),e.c=e.b.b,e.i=e.g.b),e.a}function AK(e,t){var n,i,r;for(r=0,i=c(t.Kb(e),20).Kc();i.Ob();)n=c(i.Pb(),17),Be(Fe(B(n,(ye(),Ul))))||++r;return r}function IAt(e,t){var n,i,r;i=Nm(t),r=ge(Te(iw(i,(Oe(),za)))),n=g.Math.max(0,r/2-.5),a6(t,n,1),Ee(e,new _Oe(t,n))}function Ku(){Ku=Z,aj=new aC(qh,0),_P=new aC("FIRST",1),K1=new aC(NQe,2),EP=new aC("LAST",3),xw=new aC(FQe,4)}function Lh(){Lh=Z,nY=new A9(R6,0),Rj=new A9("POLYLINE",1),D4=new A9("ORTHOGONAL",2),o3=new A9("SPLINES",3)}function c7(){c7=Z,q0e=new IF("ASPECT_RATIO_DRIVEN",0),TW=new IF("MAX_SCALE_DRIVEN",1),K0e=new IF("AREA_DRIVEN",2)}function TI(){TI=Z,lx=new TF("P1_STRUCTURE",0),fx=new TF("P2_PROCESSING_ORDER",1),hx=new TF("P3_EXECUTION",2)}function s7(){s7=Z,EW=new PF("OVERLAP_REMOVAL",0),yW=new PF("COMPACTION",1),_W=new PF("GRAPH_SIZE_CALCULATION",2)}function E0(e,t){return Il(),Na(A1),g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t))}function AHe(e,t){var n,i;for(n=Mn(e,0);n.b!=n.d.c;){if(i=WM(Te(Pn(n))),i==t)return;if(i>t){l$(n);break}}RC(n,t)}function Ze(e,t){var n,i,r,o,u;if(n=t.f,Xg(e.c.d,n,t),t.g!=null)for(r=t.g,o=0,u=r.length;ot&&i.ue(e[o-1],e[o])>0;--o)u=e[o],vi(e,o,e[o-1]),vi(e,o-1,u)}function qu(e,t,n,i){if(t<0)Ose(e,n,i);else{if(!n.Ij())throw V(new St(x1+n.ne()+W6));c(n,66).Nj().Tj(e,e.yh(),t,i)}}function u7(e,t){if(t==e.d)return e.e;if(t==e.e)return e.d;throw V(new St("Node "+t+" not part of edge "+e))}function jAt(e,t){switch(t.g){case 2:return e.b;case 1:return e.c;case 4:return e.d;case 3:return e.a;default:return!1}}function OHe(e,t){switch(t.g){case 2:return e.b;case 1:return e.c;case 4:return e.d;case 3:return e.a;default:return!1}}function doe(e,t,n,i){switch(t){case 3:return e.f;case 4:return e.g;case 5:return e.i;case 6:return e.j}return ioe(e,t,n,i)}function AAt(e){return e.k!=(Dt(),Ui)?!1:D_(new ht(null,new t0(new Kt(Ht(Vi(e).a.Kc(),new j)))),new v4e)}function OAt(e){return e.e==null?e:(!e.c&&(e.c=new Hq((e.f&256)!=0,e.i,e.a,e.d,(e.f&16)!=0,e.j,e.g,null)),e.c)}function DAt(e,t){return e.h==bT&&e.m==0&&e.l==0?(t&&(L1=Bc(0,0,0)),D7e((F_(),she))):(t&&(L1=Bc(e.l,e.m,e.h)),Bc(0,0,0))}function Ro(e){var t;return Array.isArray(e)&&e.im===ct?r1(Fs(e))+"@"+(t=fi(e)>>>0,t.toString(16)):e.toString()}function n6(e){var t;this.a=(t=c(e.e&&e.e(),9),new ku(t,c(Da(t,t.length),9),0)),this.b=oe(xt,xe,1,this.a.a.length,5,1)}function kAt(e){var t,n,i;for(this.a=new Eh,i=new q(e);i.a0&&(fn(t-1,e.length),e.charCodeAt(t-1)==58)&&!OK(e,oM,cM))}function OK(e,t,n){var i,r;for(i=0,r=e.length;i=r)return t.c+n;return t.c+t.b.gc()}function FAt(e,t){p_();var n,i,r,o;for(i=VBe(e),r=t,L_(i,0,i.length,r),n=0;n0&&(i+=r,++n);return n>1&&(i+=e.d*(n-1)),i}function boe(e){var t,n,i;for(i=new nd,i.a+="[",t=0,n=e.gc();t0&&this.b>0&&Xte(this.c,this.b,this.a)}function moe(e){kK(),this.c=kl(U(G(Rzt,1),xe,831,0,[bst])),this.b=new en,this.a=e,Kn(this.b,HR,1),Zc(pst,new yje(this))}function DHe(e,t){var n;return e.d?tu(e.b,t)?c(Bt(e.b,t),51):(n=t.Kf(),Kn(e.b,t,n),n):t.Kf()}function voe(e,t){var n;return le(e)===le(t)?!0:Q(t,91)?(n=c(t,91),e.e==n.e&&e.d==n.d&&PMt(e,n.a)):!1}function b2(e){switch(Ie(),e.g){case 4:return _t;case 1:return jt;case 3:return Yt;case 2:return Mt;default:return Vo}}function yoe(e,t){switch(t){case 3:return e.f!=0;case 4:return e.g!=0;case 5:return e.i!=0;case 6:return e.j!=0}return vre(e,t)}function zAt(e){switch(e.g){case 0:return new d5e;case 1:return new g5e;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function kHe(e){switch(e.g){case 0:return new h5e;case 1:return new b5e;default:throw V(new St(Mz+(e.f!=null?e.f:""+e.g)))}}function RHe(e){switch(e.g){case 0:return new QQ;case 1:return new VAe;default:throw V(new St(JD+(e.f!=null?e.f:""+e.g)))}}function VAt(e){switch(e.g){case 1:return new c5e;case 2:return new JDe;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function GAt(e){var t,n;if(e.b)return e.b;for(n=Vl?null:e.d;n;){if(t=Vl?null:n.b,t)return t;n=Vl?null:n.d}return a_(),Nhe}function UAt(e){var t,n,i;return e.e==0?0:(t=e.d<<5,n=e.a[e.d-1],e.e<0&&(i=zKe(e),i==e.d-1&&(--n,n=n|0)),t-=WI(n),t)}function WAt(e){var t,n,i;return e>5,t=e&31,i=oe(Qt,_n,25,n+1,15,1),i[n]=1<3;)r*=10,--o;e=(e+(r>>1))/r|0}return i.i=e,!0}function XAt(e){return vK(),Pt(),!!(OHe(c(e.a,81).j,c(e.b,103))||c(e.a,81).d.e!=0&&OHe(c(e.a,81).j,c(e.b,103)))}function JAt(e){bO(),c(e.We((kn(),G1)),174).Hc((Ks(),jx))&&(c(e.We(Uw),174).Fc((js(),c3)),c(e.We(G1),174).Mc(jx))}function LHe(e,t){var n,i;if(t){for(n=0;n=0;--i)for(t=n[i],r=0;r>1,this.k=t-1>>1}function i9t(e,t){Wt(t,"End label post-processing",1),Di(si($o(new ht(null,new bt(e.b,16)),new N3e),new F3e),new B3e),qt(t)}function r9t(e,t,n){var i,r;return i=ge(e.p[t.i.p])+ge(e.d[t.i.p])+t.n.b+t.a.b,r=ge(e.p[n.i.p])+ge(e.d[n.i.p])+n.n.b+n.a.b,r-i}function o9t(e,t,n){var i,r;for(i=Xi(n,no),r=0;uc(i,0)!=0&&r0&&(fn(0,t.length),t.charCodeAt(0)==43)?t.substr(1):t))}function s9t(e){var t;return e==null?null:new l1((t=Ec(e,!0),t.length>0&&(fn(0,t.length),t.charCodeAt(0)==43)?t.substr(1):t))}function Ioe(e,t){var n;return e.i>0&&(t.lengthe.i&&vi(t,e.i,null),t}function Rc(e,t,n){var i,r,o;return e.ej()?(i=e.i,o=e.fj(),MI(e,i,t),r=e.Zi(3,null,t,i,o),n?n.Ei(r):n=r):MI(e,e.i,t),n}function u9t(e,t,n){var i,r;return i=new Ah(e.e,4,10,(r=t.c,Q(r,88)?c(r,26):(ot(),Ea)),null,wd(e,t),!1),n?n.Ei(i):n=i,n}function a9t(e,t,n){var i,r;return i=new Ah(e.e,3,10,null,(r=t.c,Q(r,88)?c(r,26):(ot(),Ea)),wd(e,t),!1),n?n.Ei(i):n=i,n}function BHe(e){Lp();var t;return t=new go(c(e.e.We((kn(),Vv)),8)),e.B.Hc((Ks(),R4))&&(t.a<=0&&(t.a=20),t.b<=0&&(t.b=20)),t}function $He(e){rw();var t;return(e.q?e.q:(st(),st(),th))._b((Oe(),Z0))?t=c(B(e,Z0),197):t=c(B(Nr(e),CP),197),t}function iw(e,t){var n,i;return i=null,nr(e,(Oe(),KR))&&(n=c(B(e,KR),94),n.Xe(t)&&(i=n.We(t))),i==null&&(i=B(Nr(e),t)),i}function KHe(e,t){var n,i,r;return Q(t,42)?(n=c(t,42),i=n.cd(),r=tw(e.Rc(),i),df(r,n.dd())&&(r!=null||e.Rc()._b(i))):!1}function xK(e,t){var n,i,r;return e.f>0?(e.qj(),i=t==null?0:fi(t),r=(i&Fn)%e.d.length,n=KUe(e,r,i,t),n!=-1):!1}function ll(e,t){var n,i,r;return e.f>0&&(e.qj(),i=t==null?0:fi(t),r=(i&Fn)%e.d.length,n=fse(e,r,i,t),n)?n.dd():null}function jI(e,t){var n,i,r,o;for(o=qc(e.e.Tg(),t),n=c(e.g,119),r=0;r1?Dl(Ph(t.a[1],32),Xi(t.a[0],no)):Xi(t.a[0],no),l0(jr(t.e,n))))}function AI(e,t){var n;return Oo(e)&&Oo(t)&&(n=e%t,pT>5,t&=31,r=e.d+n+(t==0?0:1),i=oe(Qt,_n,25,r,15,1),lDt(i,e.a,n,t),o=new km(e.e,r,i),R5(o),o}function joe(e,t,n){var i,r;i=c(mc(N4,t),117),r=c(mc(hM,t),117),n?(bo(N4,e,i),bo(hM,e,r)):(bo(hM,e,i),bo(N4,e,r))}function WHe(e,t,n){var i,r,o;for(r=null,o=e.b;o;){if(i=e.a.ue(t,o.d),n&&i==0)return o;i>=0?o=o.a[1]:(r=o,o=o.a[0])}return r}function YHe(e,t,n){var i,r,o;for(r=null,o=e.b;o;){if(i=e.a.ue(t,o.d),n&&i==0)return o;i<=0?o=o.a[0]:(r=o,o=o.a[1])}return r}function g9t(e,t,n,i){var r,o,u;return r=!1,YKt(e.f,n,i)&&(B9t(e.f,e.a[t][n],e.a[t][i]),o=e.a[t],u=o[i],o[i]=o[n],o[n]=u,r=!0),r}function Aoe(e,t,n,i,r){var o,u,a;for(u=r;t.b!=t.c;)o=c(Qy(t),10),a=c(qo(o,i).Xb(0),11),e.d[a.p]=u++,n.c[n.c.length]=a;return u}function Ooe(e,t,n){var i,r,o,u,a;return u=e.k,a=t.k,i=n[u.g][a.g],r=Te(iw(e,i)),o=Te(iw(t,i)),g.Math.max((yt(r),r),(yt(o),o))}function b9t(e,t,n){var i,r,o,u;for(i=n/e.c.length,r=0,u=new q(e);u.a2e3&&(Wtt=e,Pk=g.setTimeout(Eyt,10))),Sk++==0?(XCt((iZ(),rhe)),!0):!1}function w9t(e,t){var n,i,r;for(i=new Kt(Ht(Vi(e).a.Kc(),new j));dn(i);)if(n=c(rn(i),17),r=n.d.i,r.c==t)return!1;return!0}function Doe(e,t){var n,i;if(Q(t,245)){i=c(t,245);try{return n=e.vd(i),n==0}catch(r){if(r=gi(r),!Q(r,205))throw V(r)}}return!1}function m9t(){return Error.stackTraceLimit>0?(g.Error.stackTraceLimit=Error.stackTraceLimit=64,!0):"stack"in new Error}function v9t(e,t){return Il(),Il(),Na(A1),(g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t)))>0}function koe(e,t){return Il(),Il(),Na(A1),(g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t)))<0}function QHe(e,t){return Il(),Il(),Na(A1),(g.Math.abs(e-t)<=A1||e==t||isNaN(e)&&isNaN(t)?0:et?1:Wb(isNaN(e),isNaN(t)))<=0}function NK(e,t){for(var n=0;!t[n]||t[n]=="";)n++;for(var i=t[n++];nYH)return n.fh();if(i=n.Zg(),i||n==e)break}return i}function Roe(e){return X8(),Q(e,156)?c(Bt(Gj,cnt),288).vg(e):tu(Gj,Fs(e))?c(Bt(Gj,Fs(e)),288).vg(e):null}function _9t(e){if(b7(GE,e))return Pt(),ZE;if(b7(_V,e))return Pt(),hb;throw V(new St("Expecting true or false"))}function E9t(e,t){if(t.c==e)return t.d;if(t.d==e)return t.c;throw V(new St("Input edge is not connected to the input port."))}function rze(e,t){return e.e>t.e?1:e.et.d?e.e:e.d=48&&e<48+g.Math.min(10,10)?e-48:e>=97&&e<97?e-97+10:e>=65&&e<65?e-65+10:-1}function cze(e,t){var n;return le(t)===le(e)?!0:!Q(t,21)||(n=c(t,21),n.gc()!=e.gc())?!1:e.Ic(n)}function S9t(e,t){var n,i,r,o;return i=e.a.length-1,n=t-e.b&i,o=e.c-t&i,r=e.c-e.b&i,LDe(n=o?(Ejt(e,t),-1):(Sjt(e,t),1)}function P9t(e,t){var n,i;for(n=(fn(t,e.length),e.charCodeAt(t)),i=t+1;it.e?1:e.ft.f?1:fi(e)-fi(t)}function b7(e,t){return yt(e),t==null?!1:rt(e,t)?!0:e.length==t.length&&rt(e.toLowerCase(),t.toLowerCase())}function k9t(e,t){var n,i,r,o;for(i=0,r=t.gc();i0&&uc(e,128)<0?(t=tn(e)+128,n=(MRe(),ghe)[t],!n&&(n=ghe[t]=new uQ(e)),n):new uQ(e)}function uze(e,t){var n,i;return n=t.Hh(e.a),n&&(i=ln(ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),Dn)),i!=null)?i:t.ne()}function R9t(e,t){var n,i;return n=t.Hh(e.a),n&&(i=ln(ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),Dn)),i!=null)?i:t.ne()}function x9t(e,t){i$();var n,i;for(i=new Kt(Ht(xh(e).a.Kc(),new j));dn(i);)if(n=c(rn(i),17),n.d.i==t||n.c.i==t)return n;return null}function Noe(e,t,n){this.c=e,this.f=new Se,this.e=new Tr,this.j=new Gte,this.n=new Gte,this.b=t,this.g=new Ru(t.c,t.d,t.b,t.a),this.a=n}function FK(e){var t,n,i,r;for(this.a=new Eh,this.d=new er,this.e=0,n=e,i=0,r=n.length;i0):!1}function fze(e){var t;le(Ke(e,(kn(),qv)))===le((Rh(),Mx))&&(yi(e)?(t=c(Ke(yi(e),qv),334),ao(e,qv,t)):ao(e,qv,XP))}function B9t(e,t,n){var i,r;vq(e.e,t,n,(Ie(),Mt)),vq(e.i,t,n,jt),e.a&&(r=c(B(t,(ye(),Hn)),11),i=c(B(n,Hn),11),a$(e.g,r,i))}function hze(e,t,n){var i,r,o;i=t.c.p,o=t.p,e.b[i][o]=new jLe(e,t),n&&(e.a[i][o]=new LTe(t),r=c(B(t,(ye(),X0)),10),r&&it(e.d,r,t))}function dze(e,t){var n,i,r;if(Ee(Fk,e),t.Fc(e),n=c(Bt(AG,e),21),n)for(r=n.Kc();r.Ob();)i=c(r.Pb(),33),Do(Fk,i,0)!=-1||dze(i,t)}function $9t(e,t,n){var i;(dnt?(GAt(e),!0):gnt||pnt?(a_(),!0):bnt&&(a_(),!1))&&(i=new Kke(t),i.b=n,HDt(e,i))}function BK(e,t){var n;n=!e.A.Hc((ou(),Cb))||e.q==(wr(),Ic),e.u.Hc((js(),Wh))?n?uHt(e,t):HXe(e,t):e.u.Hc(X1)&&(n?Iqt(e,t):iJe(e,t))}function hE(e,t){var n,i;if(++e.j,t!=null&&(n=(i=e.a.Cb,Q(i,97)?c(i,97).Jg():null),xRt(t,n))){p2(e.a,4,n);return}p2(e.a,4,c(t,126))}function gze(e,t,n){return new Ru(g.Math.min(e.a,t.a)-n/2,g.Math.min(e.b,t.b)-n/2,g.Math.abs(e.a-t.a)+n,g.Math.abs(e.b-t.b)+n)}function K9t(e,t){var n,i;return n=Uc(e.a.c.p,t.a.c.p),n!=0?n:(i=Uc(e.a.d.i.p,t.a.d.i.p),i!=0?i:Uc(t.a.d.p,e.a.d.p))}function q9t(e,t,n){var i,r,o,u;return o=t.j,u=n.j,o!=u?o.g-u.g:(i=e.f[t.p],r=e.f[n.p],i==0&&r==0?0:i==0?-1:r==0?1:zi(i,r))}function bze(e,t,n){var i,r,o;if(!n[t.d])for(n[t.d]=!0,r=new q(Gm(t));r.a=r)return r;for(t=t>0?t:0;ti&&vi(t,i,null),t}function wze(e,t){var n,i;for(i=e.a.length,t.lengthi&&vi(t,i,null),t}function Xg(e,t,n){var i,r,o;return r=c(Bt(e.e,t),387),r?(o=ste(r,n),uDe(e,r),o):(i=new Rte(e,t,n),Kn(e.e,t,i),RLe(i),null)}function V9t(e){var t;if(e==null)return null;if(t=Bxt(Ec(e,!0)),t==null)throw V(new UN("Invalid hexBinary value: '"+e+"'"));return t}function DI(e){return T1(),uc(e,0)<0?uc(e,-1)!=0?new Ece(-1,N_(e)):gG:uc(e,10)<=0?Che[tn(e)]:new Ece(1,e)}function KK(){return fD(),U(G(eit,1),_e,159,0,[Qnt,Jnt,Znt,Hnt,qnt,znt,Unt,Gnt,Vnt,Xnt,Ynt,Wnt,$nt,Bnt,Knt,Nnt,Lnt,Fnt,Rnt,knt,xnt,SG])}function mze(e){var t;this.d=new Se,this.j=new Tr,this.g=new Tr,t=e.g.b,this.f=c(B(Nr(t),(Oe(),Pu)),103),this.e=ge(Te(m7(t,Hw)))}function vze(e){this.b=new Se,this.e=new Se,this.d=e,this.a=!$S(si(new ht(null,new t0(new Rl(e.b))),new IS(new y4e))).sd((Ig(),i4))}function fl(){fl=Z,Tt=new hC("PARENTS",0),ar=new hC("NODES",1),kf=new hC("EDGES",2),_b=new hC("PORTS",3),Od=new hC("LABELS",4)}function Um(){Um=Z,W1=new gC("DISTRIBUTED",0),Nj=new gC("JUSTIFIED",1),kwe=new gC("BEGIN",2),JP=new gC(FE,3),Rwe=new gC("END",4)}function G9t(e){var t;switch(t=e.yi(null),t){case 10:return 0;case 15:return 1;case 14:return 2;case 11:return 3;case 21:return 4}return-1}function qK(e){switch(e.g){case 1:return eo(),Gh;case 4:return eo(),ga;case 2:return eo(),Va;case 3:return eo(),Vh}return eo(),ih}function U9t(e,t,n){var i;switch(i=n.q.getFullYear()-O1+O1,i<0&&(i=-i),t){case 1:e.a+=i;break;case 2:Vf(e,i%100,2);break;default:Vf(e,i,t)}}function Mn(e,t){var n,i;if(Vp(t,e.b),t>=e.b>>1)for(i=e.c,n=e.b;n>t;--n)i=i.b;else for(i=e.a.a,n=0;n=64&&t<128&&(r=Dl(r,Ph(1,t-64)));return r}function m7(e,t){var n,i;return i=null,nr(e,(kn(),r3))&&(n=c(B(e,r3),94),n.Xe(t)&&(i=n.We(t))),i==null&&Nr(e)&&(i=B(Nr(e),t)),i}function Eze(e,t){var n,i,r;r=t.d.i,i=r.k,!(i==(Dt(),Ui)||i==Gl)&&(n=new Kt(Ht(Vi(r).a.Kc(),new j)),dn(n)&&Kn(e.k,t,c(rn(n),17)))}function HK(e,t){var n,i,r;return i=at(e.Tg(),t),n=t-e.Ah(),n<0?(r=e.Yg(i),r>=0?e.lh(r):jq(e,i)):n<0?jq(e,i):c(i,66).Nj().Sj(e,e.yh(),n)}function Le(e){var t;if(Q(e.a,4)){if(t=Roe(e.a),t==null)throw V(new Ao(vZe+e.b+"'. "+mZe+(Sh(Uj),Uj.k)+gfe));return t}else return e.a}function X9t(e){var t;if(e==null)return null;if(t=pHt(Ec(e,!0)),t==null)throw V(new UN("Invalid base64Binary value: '"+e+"'"));return t}function Vt(e){var t;try{return t=e.i.Xb(e.e),e.mj(),e.g=e.e++,t}catch(n){throw n=gi(n),Q(n,73)?(e.mj(),V(new tc)):V(n)}}function zK(e){var t;try{return t=e.c.ki(e.e),e.mj(),e.g=e.e++,t}catch(n){throw n=gi(n),Q(n,73)?(e.mj(),V(new tc)):V(n)}}function o6(){o6=Z,pde=(kn(),hwe),TG=zpe,dit=n3,bde=Sb,wit=(A7(),Whe),pit=Ghe,mit=Xhe,bit=Vhe,git=(bK(),hde),IG=lit,gde=fit,Nk=hit}function v7(e){switch(SZ(),this.c=new Se,this.d=e,e.g){case 0:case 2:this.a=One(Rde),this.b=Ii;break;case 3:case 1:this.a=Rde,this.b=$i}}function Sze(e,t,n){var i,r;if(e.c)es(e.c,e.c.i+t),ts(e.c,e.c.j+n);else for(r=new q(e.b);r.a0&&(Ee(e.b,new iRe(t.a,n)),i=t.a.length,0i&&(t.a+=sDe(oe(Yu,vf,25,-i,15,1))))}function Pze(e,t){var n,i,r;for(n=e.o,r=c(c(Vn(e.r,t),21),84).Kc();r.Ob();)i=c(r.Pb(),111),i.e.a=Z8t(i,n.a),i.e.b=n.b*ge(Te(i.b.We(Rk)))}function Q9t(e,t){var n,i,r,o;return r=e.k,n=ge(Te(B(e,(ye(),J0)))),o=t.k,i=ge(Te(B(t,J0))),o!=(Dt(),Bi)?-1:r!=Bi?1:n==i?0:n=0?e.hh(t,n,i):(e.eh()&&(i=(r=e.Vg(),r>=0?e.Qg(i):e.eh().ih(e,-1-r,null,i))),e.Sg(t,n,i))}function Boe(e,t){switch(t){case 7:!e.e&&(e.e=new dt(rr,e,7,4)),Xt(e.e);return;case 8:!e.d&&(e.d=new dt(rr,e,8,5)),Xt(e.d);return}Moe(e,t)}function hl(e,t){var n;n=e.Zc(t);try{return n.Pb()}catch(i){throw i=gi(i),Q(i,109)?V(new ho("Can't get element "+t)):V(i)}}function $oe(e,t){this.e=e,t=0&&(n.d=e.t);break;case 3:e.t>=0&&(n.a=e.t)}e.C&&(n.b=e.C.b,n.c=e.C.c)}function m2(){m2=Z,GT=new E9(yD,0),VT=new E9(az,1),UT=new E9(lz,2),WT=new E9(fz,3),GT.a=!1,VT.a=!0,UT.a=!1,WT.a=!0}function c6(){c6=Z,YT=new _9(yD,0),xk=new _9(az,1),Lk=new _9(lz,2),XT=new _9(fz,3),YT.a=!1,xk.a=!0,Lk.a=!1,XT.a=!0}function i8t(e){var t;t=e.a;do t=c(rn(new Kt(Ht(ko(t).a.Kc(),new j))),17).c.i,t.k==(Dt(),ur)&&e.b.Fc(t);while(t.k==(Dt(),ur));e.b=Kg(e.b)}function r8t(e){var t,n,i;for(i=e.c.a,e.p=(nn(i),new ps(i)),n=new q(i);n.an.b)return!0}return!1}function VK(e,t){return fr(e)?!!Ktt[t]:e.hm?!!e.hm[t]:kp(e)?!!$tt[t]:Dp(e)?!!Btt[t]:!1}function ao(e,t,n){return n==null?(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),d7(e.o,t)):(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),O7(e.o,t,n)),e}function u8t(e,t,n,i){var r,o;o=t.Xe((kn(),zv))?c(t.We(zv),21):e.j,r=Jjt(o),r!=(fD(),SG)&&(n&&!xoe(r)||Vce($xt(e,r,i),t))}function _7(e,t,n,i){var r,o,u;return o=at(e.Tg(),t),r=t-e.Ah(),r<0?(u=e.Yg(o),u>=0?e._g(u,n,!0):j0(e,o,n)):c(o,66).Nj().Pj(e,e.yh(),r,n,i)}function a8t(e,t,n,i){var r,o,u;n.mh(t)&&(Wr(),N$(t)?(r=c(n.ah(t),153),k9t(e,r)):(o=(u=t,u?c(i,49).xh(u):null),o&&fvt(n.ah(t),o)))}function l8t(e){switch(e.g){case 1:return v0(),zT;case 3:return v0(),HT;case 2:return v0(),MG;case 4:return v0(),PG;default:return null}}function Koe(e){switch(typeof e){case _H:return md(e);case Nue:return xi(e);case M2:return Pt(),e?1231:1237;default:return e==null?0:Xb(e)}}function f8t(e,t,n){if(e.e)switch(e.b){case 1:$5t(e.c,t,n);break;case 0:K5t(e.c,t,n)}else hFe(e.c,t,n);e.a[t.p][n.p]=e.c.i,e.a[n.p][t.p]=e.c.e}function jze(e){var t,n;if(e==null)return null;for(n=oe(nh,we,193,e.length,0,2),t=0;t=0)return r;if(e.Fk()){for(i=0;i=r)throw V(new Fp(t,r));if(e.hi()&&(i=e.Xc(n),i>=0&&i!=t))throw V(new St(RT));return e.mi(t,n)}function qoe(e,t){if(this.a=c(nn(e),245),this.b=c(nn(t),245),e.vd(t)>0||e==(KN(),iG)||t==($N(),rG))throw V(new St("Invalid range: "+uFe(e,t)))}function Aze(e){var t,n;for(this.b=new Se,this.c=e,this.a=!1,n=new q(e.a);n.a0),(t&-t)==t)return xi(t*$s(e,31)*4656612873077393e-25);do n=$s(e,31),i=n%t;while(n-i+(t-1)<0);return xi(i)}function md(e){qke();var t,n,i;return n=":"+e,i=Ok[n],i!=null?xi((yt(i),i)):(i=Bhe[n],t=i==null?iNt(e):xi((yt(i),i)),D5t(),Ok[n]=t,t)}function Dze(e,t,n){Wt(n,"Compound graph preprocessor",1),e.a=new u0,FXe(e,t,null),z$t(e,t),CLt(e),pe(t,(ye(),rge),e.a),e.a=null,Is(e.b),qt(n)}function g8t(e,t,n){switch(n.g){case 1:e.a=t.a/2,e.b=0;break;case 2:e.a=t.a,e.b=t.b/2;break;case 3:e.a=t.a/2,e.b=t.b;break;case 4:e.a=0,e.b=t.b/2}}function b8t(e){var t,n,i;for(i=c(Vn(e.a,(Zm(),dR)),15).Kc();i.Ob();)n=c(i.Pb(),101),t=tce(n),E_(e,n,t[0],(m0(),G0),0),E_(e,n,t[1],U0,1)}function p8t(e){var t,n,i;for(i=c(Vn(e.a,(Zm(),gR)),15).Kc();i.Ob();)n=c(i.Pb(),101),t=tce(n),E_(e,n,t[0],(m0(),G0),0),E_(e,n,t[1],U0,1)}function GK(e){switch(e.g){case 0:return null;case 1:return new DKe;case 2:return new ZQ;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function kI(e,t,n){var i,r;for(FTt(e,t-e.s,n-e.t),r=new q(e.n);r.a1&&(o=d8t(e,t)),o}function UK(e){var t;return e.f&&e.f.kh()&&(t=c(e.f,49),e.f=c(S1(e,t),82),e.f!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,8,t,e.f))),e.f}function WK(e){var t;return e.i&&e.i.kh()&&(t=c(e.i,49),e.i=c(S1(e,t),82),e.i!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,7,t,e.i))),e.i}function Xr(e){var t;return e.b&&(e.b.Db&64)!=0&&(t=e.b,e.b=c(S1(e,t),18),e.b!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,21,t,e.b))),e.b}function P7(e,t){var n,i,r;e.d==null?(++e.e,++e.f):(i=t.Sh(),kLt(e,e.f+1),r=(i&Fn)%e.d.length,n=e.d[r],!n&&(n=e.d[r]=e.uj()),n.Fc(t),++e.f)}function Voe(e,t,n){var i;return t.Kj()?!1:t.Zj()!=-2?(i=t.zj(),i==null?n==null:$n(i,n)):t.Hj()==e.e.Tg()&&n==null}function M7(){var e;pu(16,TJe),e=SKe(16),this.b=oe(cG,dT,317,e,0,1),this.c=oe(cG,dT,317,e,0,1),this.a=null,this.e=null,this.i=0,this.f=e-1,this.g=0}function Nh(e){ate.call(this),this.k=(Dt(),Ui),this.j=(pu(6,mw),new Dc(6)),this.b=(pu(2,mw),new Dc(2)),this.d=new xN,this.f=new zQ,this.a=e}function m8t(e){var t,n;e.c.length<=1||(t=AWe(e,(Ie(),Yt)),mGe(e,c(t.a,19).a,c(t.b,19).a),n=AWe(e,Mt),mGe(e,c(n.a,19).a,c(n.b,19).a))}function s6(){s6=Z,Lbe=new uC("SIMPLE",0),QU=new uC(Iz,1),ZU=new uC("LINEAR_SEGMENTS",2),jP=new uC("BRANDES_KOEPF",3),AP=new uC(eZe,4)}function Goe(e,t,n){Wy(c(B(t,(Oe(),ji)),98))||($ie(e,t,vd(t,n)),$ie(e,t,vd(t,(Ie(),Yt))),$ie(e,t,vd(t,_t)),st(),cr(t.j,new RTe(e)))}function kze(e,t,n,i){var r,o,u;for(r=c(Vn(i?e.a:e.b,t),21),u=r.Kc();u.Ob();)if(o=c(u.Pb(),33),Y7(e,n,o))return!0;return!1}function YK(e){var t,n;for(n=new $t(e);n.e!=n.i.gc();)if(t=c(Vt(n),87),t.e||(!t.d&&(t.d=new qi(oo,t,1)),t.d).i!=0)return!0;return!1}function XK(e){var t,n;for(n=new $t(e);n.e!=n.i.gc();)if(t=c(Vt(n),87),t.e||(!t.d&&(t.d=new qi(oo,t,1)),t.d).i!=0)return!0;return!1}function v8t(e){var t,n,i;for(t=0,i=new q(e.c.a);i.a102?-1:e<=57?e-48:e<65?-1:e<=70?e-65+10:e<97?-1:e-97+10}function ZK(e,t){if(e==null)throw V(new Ly("null key in entry: null="+t));if(t==null)throw V(new Ly("null value in entry: "+e+"=null"))}function y8t(e,t){for(var n,i;e.Ob();)if(!t.Ob()||(n=e.Pb(),i=t.Pb(),!(le(n)===le(i)||n!=null&&$n(n,i))))return!1;return!t.Ob()}function xze(e,t){var n;return n=U(G(gr,1),lo,25,15,[mK(e.a[0],t),mK(e.a[1],t),mK(e.a[2],t)]),e.d&&(n[0]=g.Math.max(n[0],n[2]),n[2]=n[0]),n}function Lze(e,t){var n;return n=U(G(gr,1),lo,25,15,[e7(e.a[0],t),e7(e.a[1],t),e7(e.a[2],t)]),e.d&&(n[0]=g.Math.max(n[0],n[2]),n[2]=n[0]),n}function Qg(){Qg=Z,sU=new sC("GREEDY",0),x1e=new sC($Qe,1),uU=new sC(Iz,2),pP=new sC("MODEL_ORDER",3),bP=new sC("GREEDY_MODEL_ORDER",4)}function Nze(e,t){var n,i,r;for(e.b[t.g]=1,i=Mn(t.d,0);i.b!=i.d.c;)n=c(Pn(i),188),r=n.c,e.b[r.g]==1?Cn(e.a,n):e.b[r.g]==2?e.b[r.g]=1:Nze(e,r)}function _8t(e,t){var n,i,r;for(r=new Dc(t.gc()),i=t.Kc();i.Ob();)n=c(i.Pb(),286),n.c==n.f?vE(e,n,n.c):vkt(e,n)||(r.c[r.c.length]=n);return r}function E8t(e,t,n){var i,r,o,u,a;for(a=e.r+t,e.r+=t,e.d+=n,i=n/e.n.c.length,r=0,u=new q(e.n);u.ao&&vi(t,o,null),t}function L8t(e,t){var n,i;if(i=e.gc(),t==null){for(n=0;n0&&(l+=r),d[p]=u,u+=a*(l+i)}function Vze(e){var t,n,i;for(i=e.f,e.n=oe(gr,lo,25,i,15,1),e.d=oe(gr,lo,25,i,15,1),t=0;t0?e.c:0),++r;e.b=i,e.d=o}function H8t(e,t){var n,i,r,o,u;for(i=0,r=0,n=0,u=new q(t);u.a0?e.g:0),++n;e.c=r,e.d=i}function Xze(e,t){var n;return n=U(G(gr,1),lo,25,15,[zoe(e,(al(),Jo),t),zoe(e,Nc,t),zoe(e,Qo,t)]),e.f&&(n[0]=g.Math.max(n[0],n[2]),n[2]=n[0]),n}function z8t(e,t,n){var i;try{Q7(e,t+e.j,n+e.k,!1,!0)}catch(r){throw r=gi(r),Q(r,73)?(i=r,V(new ho(i.g+ED+t+zr+n+")."))):V(r)}}function V8t(e,t,n){var i;try{Q7(e,t+e.j,n+e.k,!0,!1)}catch(r){throw r=gi(r),Q(r,73)?(i=r,V(new ho(i.g+ED+t+zr+n+")."))):V(r)}}function Jze(e){var t;nr(e,(Oe(),Q0))&&(t=c(B(e,Q0),21),t.Hc((fw(),Ga))?(t.Mc(Ga),t.Fc(Ua)):t.Hc(Ua)&&(t.Mc(Ua),t.Fc(Ga)))}function Qze(e){var t;nr(e,(Oe(),Q0))&&(t=c(B(e,Q0),21),t.Hc((fw(),Ya))?(t.Mc(Ya),t.Fc(pa)):t.Hc(pa)&&(t.Mc(pa),t.Fc(Ya)))}function G8t(e,t,n){Wt(n,"Self-Loop ordering",1),Di(Yc(si(si($o(new ht(null,new bt(t.b,16)),new cEe),new sEe),new uEe),new aEe),new uTe(e)),qt(n)}function xI(e,t,n,i){var r,o;for(r=t;r0&&(r.b+=t),r}function T7(e,t){var n,i,r;for(r=new Tr,i=e.Kc();i.Ob();)n=c(i.Pb(),37),v6(n,0,r.b),r.b+=n.f.b+t,r.a=g.Math.max(r.a,n.f.a);return r.a>0&&(r.a+=t),r}function eVe(e){var t,n,i;for(i=Fn,n=new q(e.a);n.a>16==6?e.Cb.ih(e,5,ml,t):(i=Xr(c(at((n=c(vt(e,16),26),n||e.zh()),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function J8t(e){T_();var t=e.e;if(t&&t.stack){var n=t.stack,i=t+` -`;return n.substring(0,i.length)==i&&(n=n.substring(i.length)),n.split(` -`)}return[]}function Q8t(e){var t;return t=(wKe(),Ztt),t[e>>>28]|t[e>>24&15]<<4|t[e>>20&15]<<8|t[e>>16&15]<<12|t[e>>12&15]<<16|t[e>>8&15]<<20|t[e>>4&15]<<24|t[e&15]<<28}function iVe(e){var t,n,i;e.b==e.c&&(i=e.a.length,n=Dre(g.Math.max(8,i))<<1,e.b!=0?(t=Da(e.a,n),MKe(e,t,i),e.a=t,e.b=0):PAe(e.a,n),e.c=i)}function Z8t(e,t){var n;return n=e.b,n.Xe((kn(),zs))?n.Hf()==(Ie(),Mt)?-n.rf().a-ge(Te(n.We(zs))):t+ge(Te(n.We(zs))):n.Hf()==(Ie(),Mt)?-n.rf().a:t}function LI(e){var t;return e.b.c.length!=0&&c(Ne(e.b,0),70).a?c(Ne(e.b,0),70).a:(t=VB(e),t??""+(e.c?Do(e.c.a,e,0):-1))}function j7(e){var t;return e.f.c.length!=0&&c(Ne(e.f,0),70).a?c(Ne(e.f,0),70).a:(t=VB(e),t??""+(e.i?Do(e.i.j,e,0):-1))}function eOt(e,t){var n,i;if(t<0||t>=e.gc())return null;for(n=t;n0?e.c:0),r=g.Math.max(r,t.d),++i;e.e=o,e.b=r}function nOt(e){var t,n;if(!e.b)for(e.b=nO(c(e.f,118).Ag().i),n=new $t(c(e.f,118).Ag());n.e!=n.i.gc();)t=c(Vt(n),137),Ee(e.b,new GN(t));return e.b}function iOt(e,t){var n,i,r;if(t.dc())return p_(),p_(),Wj;for(n=new cke(e,t.gc()),r=new $t(e);r.e!=r.i.gc();)i=Vt(r),t.Hc(i)&&on(n,i);return n}function Zoe(e,t,n,i){return t==0?i?(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),e.o):(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),XC(e.o)):_7(e,t,n,i)}function sq(e){var t,n;if(e.rb)for(t=0,n=e.rb.i;t>22),r+=i>>22,r<0)?!1:(e.l=n&qs,e.m=i&qs,e.h=r&Kh,!0)}function sOt(e,t,n,i,r,o,u){var a,l;return!(t.Ae()&&(l=e.a.ue(n,i),l<0||l==0)||t.Be()&&(a=e.a.ue(n,o),a>0||a==0))}function uOt(e,t){iE();var n;if(n=e.j.g-t.j.g,n!=0)return 0;switch(e.j.g){case 2:return AK(t,I1e)-AK(e,I1e);case 4:return AK(e,C1e)-AK(t,C1e)}return 0}function aOt(e){switch(e.g){case 0:return lU;case 1:return fU;case 2:return hU;case 3:return dU;case 4:return wR;case 5:return gU;default:return null}}function vo(e,t,n){var i,r;return i=(r=new FN,Ug(r,t),kc(r,n),on((!e.c&&(e.c=new Me(cp,e,12,10)),e.c),r),r),hd(i,0),Zp(i,1),pd(i,!0),bd(i,!0),i}function v2(e,t){var n,i;if(t>=e.i)throw V(new kF(t,e.i));return++e.j,n=e.g[t],i=e.i-t-1,i>0&&bc(e.g,t+1,e.g,t,i),vi(e.g,--e.i,null),e.fi(t,n),e.ci(),n}function rVe(e,t){var n,i;return e.Db>>16==17?e.Cb.ih(e,21,va,t):(i=Xr(c(at((n=c(vt(e,16),26),n||e.zh()),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function lOt(e){var t,n,i,r;for(st(),cr(e.c,e.a),r=new q(e.c);r.an.a.c.length))throw V(new St("index must be >= 0 and <= layer node count"));e.c&&Jc(e.c.a,e),e.c=n,n&&Bp(n.a,t,e)}function aVe(e,t){var n,i,r;for(i=new Kt(Ht(xh(e).a.Kc(),new j));dn(i);)return n=c(rn(i),17),r=c(t.Kb(n),10),new LA(nn(r.n.b+r.o.b/2));return DS(),DS(),nG}function lVe(e,t){this.c=new en,this.a=e,this.b=t,this.d=c(B(e,(ye(),Rv)),304),le(B(e,(Oe(),hbe)))===le((eI(),mR))?this.e=new KAe:this.e=new $Ae}function pOt(e,t){var n,i,r,o;for(o=0,i=new q(e);i.a>16==6?e.Cb.ih(e,6,rr,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Ox)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function oce(e,t){var n,i;return e.Db>>16==7?e.Cb.ih(e,1,Hj,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Gwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function cce(e,t){var n,i;return e.Db>>16==9?e.Cb.ih(e,9,Ei,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Wwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function hVe(e,t){var n,i;return e.Db>>16==5?e.Cb.ih(e,9,$x,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),xd)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function sce(e,t){var n,i;return e.Db>>16==3?e.Cb.ih(e,0,Vj,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),Rd)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function dVe(e,t){var n,i;return e.Db>>16==7?e.Cb.ih(e,6,ml,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),Nd)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function gVe(){this.a=new y6e,this.g=new M7,this.j=new M7,this.b=new en,this.d=new M7,this.i=new M7,this.k=new en,this.c=new en,this.e=new en,this.f=new en}function yOt(e,t,n){var i,r,o;for(n<0&&(n=0),o=e.i,r=n;rYH)return gE(e,i);if(i==e)return!0}}return!1}function EOt(e){switch(X9(),e.q.g){case 5:QGe(e,(Ie(),_t)),QGe(e,Yt);break;case 4:UUe(e,(Ie(),_t)),UUe(e,Yt);break;default:UXe(e,(Ie(),_t)),UXe(e,Yt)}}function SOt(e){switch(X9(),e.q.g){case 5:dUe(e,(Ie(),jt)),dUe(e,Mt);break;case 4:Pze(e,(Ie(),jt)),Pze(e,Mt);break;default:WXe(e,(Ie(),jt)),WXe(e,Mt)}}function POt(e){var t,n;t=c(B(e,(dl(),Rit)),19),t?(n=t.a,n==0?pe(e,(v1(),qk),new jK):pe(e,(v1(),qk),new cO(n))):pe(e,(v1(),qk),new cO(1))}function MOt(e,t){var n;switch(n=e.i,t.g){case 1:return-(e.n.b+e.o.b);case 2:return e.n.a-n.o.a;case 3:return e.n.b-n.o.b;case 4:return-(e.n.a+e.o.a)}return 0}function COt(e,t){switch(e.g){case 0:return t==(Ku(),K1)?uR:aR;case 1:return t==(Ku(),K1)?uR:tj;case 2:return t==(Ku(),K1)?tj:aR;default:return tj}}function FI(e,t){var n,i,r;for(Jc(e.a,t),e.e-=t.r+(e.a.c.length==0?0:e.c),r=Ule,i=new q(e.a);i.a>16==3?e.Cb.ih(e,12,Ei,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Vwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function ace(e,t){var n,i;return e.Db>>16==11?e.Cb.ih(e,10,Ei,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(xc(),Uwe)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function bVe(e,t){var n,i;return e.Db>>16==10?e.Cb.ih(e,11,va,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),Ld)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function pVe(e,t){var n,i;return e.Db>>16==10?e.Cb.ih(e,12,ya,t):(i=Xr(c(at((n=c(vt(e,16),26),n||(ot(),em)),e.Db>>16),18)),e.Cb.ih(e,i.n,i.f,t))}function ra(e){var t;return(e.Bb&1)==0&&e.r&&e.r.kh()&&(t=c(e.r,49),e.r=c(S1(e,t),138),e.r!=t&&(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,9,8,t,e.r))),e.r}function aq(e,t,n){var i;return i=U(G(gr,1),lo,25,15,[Rce(e,(al(),Jo),t,n),Rce(e,Nc,t,n),Rce(e,Qo,t,n)]),e.f&&(i[0]=g.Math.max(i[0],i[2]),i[2]=i[0]),i}function IOt(e,t){var n,i,r;if(r=_8t(e,t),r.c.length!=0)for(cr(r,new D_e),n=r.c.length,i=0;i>19,d=t.h>>19,l!=d?d-l:(r=e.h,a=t.h,r!=a?r-a:(i=e.m,u=t.m,i!=u?i-u:(n=e.l,o=t.l,n-o)))}function A7(){A7=Z,Jhe=(X7(),_G),Xhe=new ut(Que,Jhe),Yhe=(EO(),yG),Whe=new ut(Zue,Yhe),Uhe=(p7(),vG),Ghe=new ut(eae,Uhe),Vhe=new ut(tae,(Pt(),!0))}function a6(e,t,n){var i,r;i=t*n,Q(e.g,145)?(r=o2(e),r.f.d?r.f.a||(e.d.a+=i+ql):(e.d.d-=i+ql,e.d.a+=i+ql)):Q(e.g,10)&&(e.d.d-=i,e.d.a+=2*i)}function wVe(e,t,n){var i,r,o,u,a;for(r=e[n.g],a=new q(t.d);a.a0?e.g:0),++n;t.b=i,t.e=r}function mVe(e){var t,n,i;if(i=e.b,$8e(e.i,i.length)){for(n=i.length*2,e.b=oe(cG,dT,317,n,0,1),e.c=oe(cG,dT,317,n,0,1),e.f=n-1,e.i=0,t=e.a;t;t=t.c)VI(e,t,t);++e.g}}function xOt(e,t,n,i){var r,o,u,a;for(r=0;ru&&(a=u/i),r>o&&(l=o/r),lf(e,g.Math.min(a,l)),e}function NOt(){nD();var e,t;try{if(t=c(yce((c1(),_a),WE),2014),t)return t}catch(n){if(n=gi(n),Q(n,102))e=n,sne((un(),e));else throw V(n)}return new p6e}function FOt(){a$e();var e,t;try{if(t=c(yce((c1(),_a),lb),2024),t)return t}catch(n){if(n=gi(n),Q(n,102))e=n,sne((un(),e));else throw V(n)}return new xPe}function BOt(){nD();var e,t;try{if(t=c(yce((c1(),_a),la),1941),t)return t}catch(n){if(n=gi(n),Q(n,102))e=n,sne((un(),e));else throw V(n)}return new q6e}function $Ot(e,t,n){var i,r;return r=e.e,e.e=t,(e.Db&4)!=0&&(e.Db&1)==0&&(i=new sr(e,1,4,r,t),n?n.Ei(i):n=i),r!=t&&(t?n=AE(e,H7(e,t),n):n=AE(e,e.a,n)),n}function vVe(){u9.call(this),this.e=-1,this.a=!1,this.p=Ar,this.k=-1,this.c=-1,this.b=-1,this.g=!1,this.f=-1,this.j=-1,this.n=-1,this.i=-1,this.d=-1,this.o=Ar}function KOt(e,t){var n,i,r;if(i=e.b.d.d,e.a||(i+=e.b.d.a),r=t.b.d.d,t.a||(r+=t.b.d.a),n=zi(i,r),n==0){if(!e.a&&t.a)return-1;if(!t.a&&e.a)return 1}return n}function qOt(e,t){var n,i,r;if(i=e.b.b.d,e.a||(i+=e.b.b.a),r=t.b.b.d,t.a||(r+=t.b.b.a),n=zi(i,r),n==0){if(!e.a&&t.a)return-1;if(!t.a&&e.a)return 1}return n}function HOt(e,t){var n,i,r;if(i=e.b.g.d,e.a||(i+=e.b.g.a),r=t.b.g.d,t.a||(r+=t.b.g.a),n=zi(i,r),n==0){if(!e.a&&t.a)return-1;if(!t.a&&e.a)return 1}return n}function fce(){fce=Z,Wit=Cs(Nn(Nn(Nn(new tr,(Hr(),Pc),(Jr(),h1e)),Pc,d1e),Io,g1e),Io,t1e),Xit=Nn(Nn(new tr,Pc,Wde),Pc,n1e),Yit=Cs(new tr,Io,r1e)}function zOt(e){var t,n,i,r,o;for(t=c(B(e,(ye(),yP)),83),o=e.n,i=t.Cc().Kc();i.Ob();)n=c(i.Pb(),306),r=n.i,r.c+=o.a,r.d+=o.b,n.c?xWe(n):LWe(n);pe(e,yP,null)}function VOt(e,t,n){var i,r;switch(r=e.b,i=r.d,t.g){case 1:return-i.d-n;case 2:return r.o.a+i.c+n;case 3:return r.o.b+i.a+n;case 4:return-i.b-n;default:return-1}}function GOt(e){var t,n,i,r,o;if(i=0,r=$E,e.b)for(t=0;t<360;t++)n=t*.017453292519943295,tue(e,e.d,0,0,pv,n),o=e.b.ig(e.d),o0&&(u=(o&Fn)%e.d.length,r=fse(e,u,o,t),r)?(a=r.ed(n),a):(i=e.tj(o,t,n),e.c.Fc(i),null)}function gce(e,t){var n,i,r,o;switch(gd(e,t)._k()){case 3:case 2:{for(n=sv(t),r=0,o=n.i;r=0;i--)if(rt(e[i].d,t)||rt(e[i].d,n)){e.length>=i+1&&e.splice(0,i+1);break}return e}function BI(e,t){var n;return Oo(e)&&Oo(t)&&(n=e/t,pT0&&(e.b+=2,e.a+=i):(e.b+=1,e.a+=g.Math.min(i,r))}function CVe(e,t){var n,i;if(i=!1,fr(t)&&(i=!0,Zy(e,new qp(ln(t)))),i||Q(t,236)&&(i=!0,Zy(e,(n=yte(c(t,236)),new NA(n)))),!i)throw V(new zN(jfe))}function l7t(e,t,n,i){var r,o,u;return r=new Ah(e.e,1,10,(u=t.c,Q(u,88)?c(u,26):(ot(),Ea)),(o=n.c,Q(o,88)?c(o,26):(ot(),Ea)),wd(e,t),!1),i?i.Ei(r):i=r,i}function wce(e){var t,n;switch(c(B(Nr(e),(Oe(),rbe)),420).g){case 0:return t=e.n,n=e.o,new $e(t.a+n.a/2,t.b+n.b/2);case 1:return new go(e.n);default:return null}}function $I(){$I=Z,vR=new QS(qh,0),H1e=new QS("LEFTUP",1),V1e=new QS("RIGHTUP",2),q1e=new QS("LEFTDOWN",3),z1e=new QS("RIGHTDOWN",4),bU=new QS("BALANCED",5)}function f7t(e,t,n){var i,r,o;if(i=zi(e.a[t.p],e.a[n.p]),i==0){if(r=c(B(t,(ye(),U2)),15),o=c(B(n,U2),15),r.Hc(n))return-1;if(o.Hc(t))return 1}return i}function h7t(e){switch(e.g){case 1:return new u5e;case 2:return new a5e;case 3:return new s5e;case 0:return null;default:throw V(new St(aV+(e.f!=null?e.f:""+e.g)))}}function mce(e,t,n){switch(t){case 1:!e.n&&(e.n=new Me(Lo,e,1,7)),Xt(e.n),!e.n&&(e.n=new Me(Lo,e,1,7)),Mi(e.n,c(n,14));return;case 2:H5(e,ln(n));return}Fre(e,t,n)}function vce(e,t,n){switch(t){case 3:b0(e,ge(Te(n)));return;case 4:p0(e,ge(Te(n)));return;case 5:es(e,ge(Te(n)));return;case 6:ts(e,ge(Te(n)));return}mce(e,t,n)}function D7(e,t,n){var i,r,o;o=(i=new FN,i),r=$l(o,t,null),r&&r.Fi(),kc(o,n),on((!e.c&&(e.c=new Me(cp,e,12,10)),e.c),o),hd(o,0),Zp(o,1),pd(o,!0),bd(o,!0)}function yce(e,t){var n,i,r;return n=US(e.g,t),Q(n,235)?(r=c(n,235),r.Qh()==null,r.Nh()):Q(n,498)?(i=c(n,1938),r=i.b,r):null}function d7t(e,t,n,i){var r,o;return nn(t),nn(n),o=c(v5(e.d,t),19),g$e(!!o,"Row %s not in %s",t,e.e),r=c(v5(e.b,n),19),g$e(!!r,"Column %s not in %s",n,e.c),vqe(e,o.a,r.a,i)}function IVe(e,t,n,i,r,o,u){var a,l,d,p,v;if(p=r[o],d=o==u-1,a=d?i:0,v=Wze(a,p),i!=10&&U(G(e,u-o),t[o],n[o],a,v),!d)for(++o,l=0;l1||a==-1?(o=c(l,15),r.Wb(y9t(e,o))):r.Wb(Jq(e,c(l,56)))))}function y7t(e,t,n,i){g8e();var r=tG;function o(){for(var u=0;ucV)return n;r>-1e-6&&++n}return n}function Sce(e,t){var n;t!=e.b?(n=null,e.b&&(n=z8(e.b,e,-4,n)),t&&(n=w2(t,e,-4,n)),n=aHe(e,t,n),n&&n.Fi()):(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,t,t))}function AVe(e,t){var n;t!=e.f?(n=null,e.f&&(n=z8(e.f,e,-1,n)),t&&(n=w2(t,e,-1,n)),n=lHe(e,t,n),n&&n.Fi()):(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,0,t,t))}function OVe(e){var t,n,i;if(e==null)return null;if(n=c(e,15),n.dc())return"";for(i=new nd,t=n.Kc();t.Ob();)co(i,(Jn(),ln(t.Pb()))),i.a+=" ";return xF(i,i.a.length-1)}function DVe(e){var t,n,i;if(e==null)return null;if(n=c(e,15),n.dc())return"";for(i=new nd,t=n.Kc();t.Ob();)co(i,(Jn(),ln(t.Pb()))),i.a+=" ";return xF(i,i.a.length-1)}function T7t(e,t,n){var i,r;return i=e.c[t.c.p][t.p],r=e.c[n.c.p][n.p],i.a!=null&&r.a!=null?SB(i.a,r.a):i.a!=null?-1:r.a!=null?1:0}function j7t(e,t){var n,i,r,o,u,a;if(t)for(o=t.a.length,n=new Og(o),a=(n.b-n.a)*n.c<0?(s1(),ig):new f1(n);a.Ob();)u=c(a.Pb(),19),r=A_(t,u.a),i=new kje(e),m5t(i.a,r)}function A7t(e,t){var n,i,r,o,u,a;if(t)for(o=t.a.length,n=new Og(o),a=(n.b-n.a)*n.c<0?(s1(),ig):new f1(n);a.Ob();)u=c(a.Pb(),19),r=A_(t,u.a),i=new Pje(e),w5t(i.a,r)}function O7t(e){var t;if(e!=null&&e.length>0&&Pr(e,e.length-1)==33)try{return t=jGe(fu(e,0,e.length-1)),t.e==null}catch(n){if(n=gi(n),!Q(n,32))throw V(n)}return!1}function kVe(e,t,n){var i,r,o;return i=t.ak(),o=t.dd(),r=i.$j()?p1(e,3,i,null,o,IE(e,i,o,Q(i,99)&&(c(i,18).Bb&Vr)!=0),!0):p1(e,1,i,i.zj(),o,-1,!0),n?n.Ei(r):n=r,n}function D7t(){var e,t,n;for(t=0,e=0;e<1;e++){if(n=bse((fn(e,1),"X".charCodeAt(e))),n==0)throw V(new an("Unknown Option: "+"X".substr(e)));t|=n}return t}function k7t(e,t,n){var i,r,o;switch(i=Nr(t),r=o7(i),o=new gc,Bo(o,t),n.g){case 1:Ji(o,II(b2(r)));break;case 2:Ji(o,b2(r))}return pe(o,(Oe(),$w),Te(B(e,$w))),o}function Pce(e){var t,n;return t=c(rn(new Kt(Ht(ko(e.a).a.Kc(),new j))),17),n=c(rn(new Kt(Ht(Vi(e.a).a.Kc(),new j))),17),Be(Fe(B(t,(ye(),Ul))))||Be(Fe(B(n,Ul)))}function Zm(){Zm=Z,fR=new cC("ONE_SIDE",0),dR=new cC("TWO_SIDES_CORNER",1),gR=new cC("TWO_SIDES_OPPOSING",2),hR=new cC("THREE_SIDES",3),lR=new cC("FOUR_SIDES",4)}function dq(e,t,n,i,r){var o,u;o=c(gu(si(t.Oc(),new T4e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),u=c(qg(e.b,n,i),15),r==0?u.Wc(0,o):u.Gc(o)}function R7t(e,t){var n,i,r,o,u;for(o=new q(t.a);o.a0&&oVe(this,this.c-1,(Ie(),jt)),this.c0&&e[0].length>0&&(this.c=Be(Fe(B(Nr(e[0][0]),(ye(),cge))))),this.a=oe(Fst,we,2018,e.length,0,2),this.b=oe(Bst,we,2019,e.length,0,2),this.d=new nHe}function B7t(e){return e.c.length==0?!1:(pt(0,e.c.length),c(e.c[0],17)).c.i.k==(Dt(),ur)?!0:D_(Yc(new ht(null,new bt(e,16)),new sSe),new uSe)}function $7t(e,t,n){return Wt(n,"Tree layout",1),eO(e.b),Kf(e.b,(dE(),ZR),ZR),Kf(e.b,LP,LP),Kf(e.b,vj,vj),Kf(e.b,NP,NP),e.a=cD(e.b,t),bNt(e,t,yc(n,1)),qt(n),t}function xVe(e,t){var n,i,r,o,u,a,l;for(a=dw(t),o=t.f,l=t.g,u=g.Math.sqrt(o*o+l*l),r=0,i=new q(a);i.a=0?(n=BI(e,pD),i=AI(e,pD)):(t=$p(e,1),n=BI(t,5e8),i=AI(t,5e8),i=xr(Ph(i,1),Xi(e,1))),Dl(Ph(i,32),Xi(n,no))}function FVe(e,t,n){var i,r;switch(i=(Lt(t.b!=0),c(Fu(t,t.a.a),8)),n.g){case 0:i.b=0;break;case 2:i.b=e.f;break;case 3:i.a=0;break;default:i.a=e.g}return r=Mn(t,0),RC(r,i),t}function BVe(e,t,n,i){var r,o,u,a,l;switch(l=e.b,o=t.d,u=o.j,a=Foe(u,l.d[u.g],n),r=Wn(Wo(o.n),o.a),o.j.g){case 1:case 3:a.a+=r.a;break;case 2:case 4:a.b+=r.b}Ri(i,a,i.c.b,i.c)}function Q7t(e,t,n){var i,r,o,u;for(u=Do(e.e,t,0),o=new qQ,o.b=n,i=new _r(e.e,u);i.b1;t>>=1)(t&1)!=0&&(i=Fm(i,n)),n.d==1?n=Fm(n,n):n=new aze(mYe(n.a,n.d,oe(Qt,_n,25,n.d<<1,15,1)));return i=Fm(i,n),i}function Oce(){Oce=Z;var e,t,n,i;for(Dhe=oe(gr,lo,25,25,15,1),khe=oe(gr,lo,25,33,15,1),i=152587890625e-16,t=32;t>=0;t--)khe[t]=i,i*=.5;for(n=1,e=24;e>=0;e--)Dhe[e]=n,n*=.5}function rDt(e){var t,n;if(Be(Fe(Ke(e,(Oe(),Bw))))){for(n=new Kt(Ht(Fh(e).a.Kc(),new j));dn(n);)if(t=c(rn(n),79),T0(t)&&Be(Fe(Ke(t,pb))))return!0}return!1}function $Ve(e,t){var n,i,r;Yi(e.f,t)&&(t.b=e,i=t.c,Do(e.j,i,0)!=-1||Ee(e.j,i),r=t.d,Do(e.j,r,0)!=-1||Ee(e.j,r),n=t.a.b,n.c.length!=0&&(!e.i&&(e.i=new mze(e)),yTt(e.i,n)))}function oDt(e){var t,n,i,r,o;return n=e.c.d,i=n.j,r=e.d.d,o=r.j,i==o?n.p=0&&rt(e.substr(t,3),"GMT")||t>=0&&rt(e.substr(t,3),"UTC"))&&(n[0]=t+3),rue(e,n,i)}function sDt(e,t){var n,i,r,o,u;for(o=e.g.a,u=e.g.b,i=new q(e.d);i.an;o--)e[o]|=t[o-n-1]>>>u,e[o-1]=t[o-n-1]<=e.f)break;o.c[o.c.length]=n}return o}function kce(e){var t,n,i,r;for(t=null,r=new q(e.wf());r.a0&&bc(e.g,t,e.g,t+i,a),u=n.Kc(),e.i+=i,r=0;ro&&SSt(d,L$e(n[a],Ahe))&&(r=a,o=l);return r>=0&&(i[0]=t+o),r}function gDt(e,t){var n;if(n=k7e(e.b.Hf(),t.b.Hf()),n!=0)return n;switch(e.b.Hf().g){case 1:case 2:return Uc(e.b.sf(),t.b.sf());case 3:case 4:return Uc(t.b.sf(),e.b.sf())}return 0}function bDt(e){var t,n,i;for(i=e.e.c.length,e.a=Ag(Qt,[we,_n],[48,25],15,[i,i],2),n=new q(e.c);n.a>4&15,o=e[i]&15,u[r++]=Ywe[n],u[r++]=Ywe[o];return pf(u,0,u.length)}function mDt(e,t,n){var i,r,o;return i=t.ak(),o=t.dd(),r=i.$j()?p1(e,4,i,o,null,IE(e,i,o,Q(i,99)&&(c(i,18).Bb&Vr)!=0),!0):p1(e,i.Kj()?2:1,i,o,i.zj(),-1,!0),n?n.Ei(r):n=r,n}function is(e){var t,n;return e>=Vr?(t=wT+(e-Vr>>10&1023)&Ni,n=56320+(e-Vr&1023)&Ni,String.fromCharCode(t)+(""+String.fromCharCode(n))):String.fromCharCode(e&Ni)}function vDt(e,t){Lp();var n,i,r,o;return r=c(c(Vn(e.r,t),21),84),r.gc()>=2?(i=c(r.Kc().Pb(),111),n=e.u.Hc((js(),eM)),o=e.u.Hc(c3),!i.a&&!n&&(r.gc()==2||o)):!1}function HVe(e,t,n,i,r){var o,u,a;for(o=CWe(e,t,n,i,r),a=!1;!o;)K7(e,r,!0),a=!0,o=CWe(e,t,n,i,r);a&&K7(e,r,!1),u=nK(r),u.c.length!=0&&(e.d&&e.d.lg(u),HVe(e,r,n,i,u))}function L7(){L7=Z,rY=new r5(qh,0),Swe=new r5("DIRECTED",1),Mwe=new r5("UNDIRECTED",2),_we=new r5("ASSOCIATION",3),Pwe=new r5("GENERALIZATION",4),Ewe=new r5("DEPENDENCY",5)}function yDt(e,t){var n;if(!jl(e))throw V(new Ao(FZe));switch(n=jl(e),t.g){case 1:return-(e.j+e.f);case 2:return e.i-n.g;case 3:return e.j-n.f;case 4:return-(e.i+e.g)}return 0}function wE(e,t){var n,i;for(yt(t),i=e.b.c.length,Ee(e.b,t);i>0;){if(n=i,i=(i-1)/2|0,e.a.ue(Ne(e.b,i),t)<=0)return Lu(e.b,n,t),!0;Lu(e.b,n,Ne(e.b,i))}return Lu(e.b,i,t),!0}function Rce(e,t,n,i){var r,o;if(r=0,n)r=e7(e.a[n.g][t.g],i);else for(o=0;o=a)}function xce(e,t,n,i){var r;if(r=!1,fr(i)&&(r=!0,v_(t,n,ln(i))),r||Dp(i)&&(r=!0,xce(e,t,n,i)),r||Q(i,236)&&(r=!0,Rg(t,n,c(i,236))),!r)throw V(new zN(jfe))}function EDt(e,t){var n,i,r;if(n=t.Hh(e.a),n&&(r=ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),aa),r!=null)){for(i=1;i<(vs(),vme).length;++i)if(rt(vme[i],r))return i}return 0}function SDt(e,t){var n,i,r;if(n=t.Hh(e.a),n&&(r=ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),aa),r!=null)){for(i=1;i<(vs(),yme).length;++i)if(rt(yme[i],r))return i}return 0}function zVe(e,t){var n,i,r,o;if(yt(t),o=e.a.gc(),o0?1:0;o.a[r]!=n;)o=o.a[r],r=e.a.ue(n.d,o.d)>0?1:0;o.a[r]=i,i.b=n.b,i.a[0]=n.a[0],i.a[1]=n.a[1],n.a[0]=null,n.a[1]=null}function CDt(e){js();var t,n;return t=ui(Wh,U(G(Cx,1),_e,273,0,[X1])),!(hI(U8(t,e))>1||(n=ui(eM,U(G(Cx,1),_e,273,0,[ZP,c3])),hI(U8(n,e))>1))}function Nce(e,t){var n;n=mc((c1(),_a),e),Q(n,498)?bo(_a,e,new a7e(this,t)):bo(_a,e,this),yq(this,t),t==(r_(),sme)?(this.wb=c(this,1939),c(t,1941)):this.wb=(g1(),wt)}function IDt(e){var t,n,i;if(e==null)return null;for(t=null,n=0;n=_d?"error":i>=900?"warn":i>=800?"info":"log"),Axe(n,e.a),e.b&&Nse(t,n,e.b,"Exception: ",!0))}function B(e,t){var n,i;return i=(!e.q&&(e.q=new en),Bt(e.q,t)),i??(n=t.wg(),Q(n,4)&&(n==null?(!e.q&&(e.q=new en),u2(e.q,t)):(!e.q&&(e.q=new en),Kn(e.q,t,n))),n)}function Hr(){Hr=Z,Af=new oC("P1_CYCLE_BREAKING",0),B1=new oC("P2_LAYERING",1),Hc=new oC("P3_NODE_ORDERING",2),Pc=new oC("P4_NODE_PLACEMENT",3),Io=new oC("P5_EDGE_ROUTING",4)}function WVe(e,t){var n,i,r,o,u;for(r=t==1?BG:FG,i=r.a.ec().Kc();i.Ob();)for(n=c(i.Pb(),103),u=c(Vn(e.f.c,n),21).Kc();u.Ob();)o=c(u.Pb(),46),Jc(e.b.b,o.b),Jc(e.b.a,c(o.b,81).d)}function TDt(e,t){K5();var n;if(e.c==t.c){if(e.b==t.b||ZIt(e.b,t.b)){if(n=u2t(e.b)?1:-1,e.a&&!t.a)return n;if(!e.a&&t.a)return-n}return Uc(e.b.g,t.b.g)}else return zi(e.c,t.c)}function jDt(e,t){var n;Wt(t,"Hierarchical port position processing",1),n=e.b,n.c.length>0&&dYe((pt(0,n.c.length),c(n.c[0],29)),e),n.c.length>1&&dYe(c(Ne(n,n.c.length-1),29),e),qt(t)}function YVe(e,t){var n,i,r;if(Bce(e,t))return!0;for(i=new q(t);i.a=r||t<0)throw V(new ho(xV+t+ub+r));if(n>=r||n<0)throw V(new ho(LV+n+ub+r));return t!=n?i=(o=e.Ti(n),e.Hi(t,o),o):i=e.Oi(n),i}function QVe(e){var t,n,i;if(i=e,e)for(t=0,n=e.Ug();n;n=n.Ug()){if(++t>YH)return QVe(n);if(i=n,n==e)throw V(new Ao("There is a cycle in the containment hierarchy of "+e))}return i}function C1(e){var t,n,i;for(i=new Hg(zr,"[","]"),n=e.Kc();n.Ob();)t=n.Pb(),jh(i,le(t)===le(e)?"(this Collection)":t==null?rs:Ro(t));return i.a?i.e.length==0?i.a.a:i.a.a+(""+i.e):i.c}function Bce(e,t){var n,i;if(i=!1,t.gc()<2)return!1;for(n=0;ni&&(fn(t-1,e.length),e.charCodeAt(t-1)<=32);)--t;return i>0||t1&&(e.j.b+=e.e)):(e.j.a+=n.a,e.j.b=g.Math.max(e.j.b,n.b),e.d.c.length>1&&(e.j.a+=e.e))}function I1(){I1=Z,Rrt=U(G(Gr,1),ac,61,0,[(Ie(),_t),jt,Yt]),krt=U(G(Gr,1),ac,61,0,[jt,Yt,Mt]),xrt=U(G(Gr,1),ac,61,0,[Yt,Mt,_t]),Lrt=U(G(Gr,1),ac,61,0,[Mt,_t,jt])}function ODt(e,t,n,i){var r,o,u,a,l,d,p;if(u=e.c.d,a=e.d.d,u.j!=a.j)for(p=e.b,r=u.j,l=null;r!=a.j;)l=t==0?r7(r):uoe(r),o=Foe(r,p.d[r.g],n),d=Foe(l,p.d[l.g],n),Cn(i,Wn(o,d)),r=l}function DDt(e,t,n,i){var r,o,u,a,l;return u=cVe(e.a,t,n),a=c(u.a,19).a,o=c(u.b,19).a,i&&(l=c(B(t,(ye(),As)),10),r=c(B(n,As),10),l&&r&&(hFe(e.b,l,r),a+=e.b.i,o+=e.b.e)),a>o}function eGe(e){var t,n,i,r,o,u,a,l,d;for(this.a=jze(e),this.b=new Se,n=e,i=0,r=n.length;iJF(e.d).c?(e.i+=e.g.c,LK(e.d)):JF(e.d).c>JF(e.g).c?(e.e+=e.d.c,LK(e.g)):(e.i+=ORe(e.g),e.e+=ORe(e.d),LK(e.g),LK(e.d))}function xDt(e,t,n){var i,r,o,u;for(o=t.q,u=t.r,new xg((cl(),z1),t,o,1),new xg(z1,o,u,1),r=new q(n);r.aa&&(l=a/i),r>o&&(d=o/r),u=g.Math.min(l,d),e.a+=u*(t.a-e.a),e.b+=u*(t.b-e.b)}function BDt(e,t,n,i,r){var o,u;for(u=!1,o=c(Ne(n.b,0),33);e$t(e,t,o,i,r)&&(u=!0,m7t(n,o),n.b.c.length!=0);)o=c(Ne(n.b,0),33);return n.b.c.length==0&&FI(n.j,n),u&&I7(t.q),u}function $Dt(e,t){ov();var n,i,r,o;if(t.b<2)return!1;for(o=Mn(t,0),n=c(Pn(o),8),i=n;o.b!=o.d.c;){if(r=c(Pn(o),8),Bq(e,i,r))return!0;i=r}return!!Bq(e,i,n)}function Kce(e,t,n,i){var r,o;return n==0?(!e.o&&(e.o=new iu((xc(),Q1),op,e,0)),r8(e.o,t,i)):(o=c(at((r=c(vt(e,16),26),r||e.zh()),n),66),o.Nj().Rj(e,$c(e),n-Ft(e.zh()),t,i))}function yq(e,t){var n;t!=e.sb?(n=null,e.sb&&(n=c(e.sb,49).ih(e,1,iM,n)),t&&(n=c(t,49).gh(e,1,iM,n)),n=toe(e,t,n),n&&n.Fi()):(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,4,t,t))}function KDt(e,t){var n,i,r,o;if(t)r=Dh(t,"x"),n=new Aje(e),$_(n.a,(yt(r),r)),o=Dh(t,"y"),i=new Oje(e),q_(i.a,(yt(o),o));else throw V(new sf("All edge sections need an end point."))}function qDt(e,t){var n,i,r,o;if(t)r=Dh(t,"x"),n=new Ije(e),K_(n.a,(yt(r),r)),o=Dh(t,"y"),i=new Tje(e),H_(i.a,(yt(o),o));else throw V(new sf("All edge sections need a start point."))}function HDt(e,t){var n,i,r,o,u,a,l;for(i=$qe(e),o=0,a=i.length;o>22-t,r=e.h<>22-t):t<44?(n=0,i=e.l<>44-t):(n=0,i=0,r=e.l<e)throw V(new St("k must be smaller than n"));return t==0||t==e?1:e==0?0:bce(e)/(bce(t)*bce(e-t))}function qce(e,t){var n,i,r,o;for(n=new fee(e);n.g==null&&!n.c?zne(n):n.g==null||n.i!=0&&c(n.g[n.i-1],47).Ob();)if(o=c(q7(n),56),Q(o,160))for(i=c(o,160),r=0;r>4],t[n*2+1]=Vx[o&15];return pf(t,0,t.length)}function ckt(e){k8();var t,n,i;switch(i=e.c.length,i){case 0:return qtt;case 1:return t=c(zGe(new q(e)),42),A4t(t.cd(),t.dd());default:return n=c(Bl(e,oe(fb,gD,42,e.c.length,0,1)),165),new qN(n)}}function skt(e){var t,n,i,r,o,u;for(t=new vm,n=new vm,w1(t,e),w1(n,e);n.b!=n.c;)for(r=c(Qy(n),37),u=new q(r.a);u.a0&&tT(e,n,t),r):HRt(e,t,n)}function uGe(e,t,n){var i,r,o,u;if(t.b!=0){for(i=new wi,u=Mn(t,0);u.b!=u.d.c;)o=c(Pn(u),86),qr(i,Pre(o)),r=o.e,r.a=c(B(o,(ic(),wW)),19).a,r.b=c(B(o,u0e),19).a;uGe(e,i,yc(n,i.b/e.a|0))}}function aGe(e,t){var n,i,r,o,u;if(e.e<=t||bPt(e,e.g,t))return e.g;for(o=e.r,i=e.g,u=e.r,r=(o-i)/2+i;i+11&&(e.e.b+=e.a)):(e.e.a+=n.a,e.e.b=g.Math.max(e.e.b,n.b),e.d.c.length>1&&(e.e.a+=e.a))}function hkt(e){var t,n,i,r;switch(r=e.i,t=r.b,i=r.j,n=r.g,r.a.g){case 0:n.a=(e.g.b.o.a-i.a)/2;break;case 1:n.a=t.d.n.a+t.d.a.a;break;case 2:n.a=t.d.n.a+t.d.a.a-i.a;break;case 3:n.b=t.d.n.b+t.d.a.b}}function lGe(e,t,n,i,r){if(ii&&(e.a=i),e.br&&(e.b=r),e}function dkt(e){if(Q(e,149))return qLt(c(e,149));if(Q(e,229))return BAt(c(e,229));if(Q(e,23))return GDt(c(e,23));throw V(new St(Afe+C1(new Js(U(G(xt,1),xe,1,5,[e])))))}function gkt(e,t,n,i,r){var o,u,a;for(o=!0,u=0;u>>r|n[u+i+1]<>>r,++u}return o}function Gce(e,t,n,i){var r,o,u;if(t.k==(Dt(),ur)){for(o=new Kt(Ht(ko(t).a.Kc(),new j));dn(o);)if(r=c(rn(o),17),u=r.c.i.k,u==ur&&e.c.a[r.c.i.c.p]==i&&e.c.a[t.c.p]==n)return!0}return!1}function bkt(e,t){var n,i,r,o;return t&=63,n=e.h&Kh,t<22?(o=n>>>t,r=e.m>>t|n<<22-t,i=e.l>>t|e.m<<22-t):t<44?(o=0,r=n>>>t-22,i=e.m>>t-22|e.h<<44-t):(o=0,r=0,i=n>>>t-44),Bc(i&qs,r&qs,o&Kh)}function fGe(e,t,n,i){var r;this.b=i,this.e=e==(w0(),kP),r=t[n],this.d=Ag(Gs,[we,Zf],[177,25],16,[r.length,r.length],2),this.a=Ag(Qt,[we,_n],[48,25],15,[r.length,r.length],2),this.c=new Tce(t,n)}function pkt(e){var t,n,i;for(e.k=new Wne((Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])).length,e.j.c.length),i=new q(e.j);i.a=n)return vE(e,t,i.p),!0;return!1}function dGe(e){var t;return(e.Db&64)!=0?_q(e):(t=new lu(vfe),!e.a||wn(wn((t.a+=' "',t),e.a),'"'),wn(zb(wn(zb(wn(zb(wn(zb((t.a+=" (",t),e.i),","),e.j)," | "),e.g),","),e.f),")"),t.a)}function gGe(e,t,n){var i,r,o,u,a;for(a=qc(e.e.Tg(),t),r=c(e.g,119),i=0,u=0;un?ese(e,n,"start index"):t<0||t>n?ese(t,n,"end index"):m6("end index (%s) must not be less than start index (%s)",U(G(xt,1),xe,1,5,[Ce(t),Ce(e)]))}function pGe(e,t){var n,i,r,o;for(i=0,r=e.length;i0&&wGe(e,o,n));t.p=0}function ze(e){var t;this.c=new wi,this.f=e.e,this.e=e.d,this.i=e.g,this.d=e.c,this.b=e.b,this.k=e.j,this.a=e.a,e.i?this.j=e.i:this.j=(t=c(rl(Dd),9),new ku(t,c(Da(t,t.length),9),0)),this.g=e.f}function Ekt(e){var t,n,i,r;for(t=Dg(wn(new lu("Predicates."),"and"),40),n=!0,r=new CS(e);r.b0?a[u-1]:oe(nh,Ed,10,0,0,1),r=a[u],d=u=0?e.Bh(r):ose(e,i);else throw V(new St(x1+i.ne()+W6));else throw V(new St(YZe+t+XZe));else $u(e,n,i)}function Uce(e){var t,n;if(n=null,t=!1,Q(e,204)&&(t=!0,n=c(e,204).a),t||Q(e,258)&&(t=!0,n=""+c(e,258).a),t||Q(e,483)&&(t=!0,n=""+c(e,483).a),!t)throw V(new zN(jfe));return n}function _Ge(e,t){var n,i;if(e.f){for(;t.Ob();)if(n=c(t.Pb(),72),i=n.ak(),Q(i,99)&&(c(i,18).Bb&rc)!=0&&(!e.e||i.Gj()!=x4||i.aj()!=0)&&n.dd()!=null)return t.Ub(),!0;return!1}else return t.Ob()}function EGe(e,t){var n,i;if(e.f){for(;t.Sb();)if(n=c(t.Ub(),72),i=n.ak(),Q(i,99)&&(c(i,18).Bb&rc)!=0&&(!e.e||i.Gj()!=x4||i.aj()!=0)&&n.dd()!=null)return t.Pb(),!0;return!1}else return t.Sb()}function Wce(e,t,n){var i,r,o,u,a,l;for(l=qc(e.e.Tg(),t),i=0,a=e.i,r=c(e.g,119),u=0;u1&&(t.c[t.c.length]=o))}function Ckt(e){var t,n,i,r;for(n=new wi,qr(n,e.o),i=new HQ;n.b!=0;)t=c(n.b==0?null:(Lt(n.b!=0),Fu(n,n.a.a)),508),r=tJe(e,t,!0),r&&Ee(i.a,t);for(;i.a.c.length!=0;)t=c(Wqe(i),508),tJe(e,t,!1)}function yd(){yd=Z,Ipe=new qy(R6,0),Dr=new qy("BOOLEAN",1),oc=new qy("INT",2),T4=new qy("STRING",3),To=new qy("DOUBLE",4),Ai=new qy("ENUM",5),t3=new qy("ENUMSET",6),Yl=new qy("OBJECT",7)}function h6(e,t){var n,i,r,o,u;i=g.Math.min(e.c,t.c),o=g.Math.min(e.d,t.d),r=g.Math.max(e.c+e.b,t.c+t.b),u=g.Math.max(e.d+e.a,t.d+t.a),r=(r/2|0))for(this.e=i?i.c:null,this.d=r;n++0;)Vne(this);this.b=t,this.a=null}function jkt(e,t){var n,i;t.a?QLt(e,t):(n=c(nB(e.b,t.b),57),n&&n==e.a[t.b.f]&&n.a&&n.a!=t.b.a&&n.c.Fc(t.b),i=c(tB(e.b,t.b),57),i&&e.a[i.f]==t.b&&i.a&&i.a!=t.b.a&&t.b.c.Fc(i),HF(e.b,t.b))}function PGe(e,t){var n,i;if(n=c(so(e.b,t),124),c(c(Vn(e.r,t),21),84).dc()){n.n.b=0,n.n.c=0;return}n.n.b=e.C.b,n.n.c=e.C.c,e.A.Hc((ou(),Cb))&&WWe(e,t),i=o8t(e,t),Kq(e,t)==(Um(),W1)&&(i+=2*e.w),n.a.a=i}function MGe(e,t){var n,i;if(n=c(so(e.b,t),124),c(c(Vn(e.r,t),21),84).dc()){n.n.d=0,n.n.a=0;return}n.n.d=e.C.d,n.n.a=e.C.a,e.A.Hc((ou(),Cb))&&YWe(e,t),i=c8t(e,t),Kq(e,t)==(Um(),W1)&&(i+=2*e.w),n.a.b=i}function Akt(e,t){var n,i,r,o;for(o=new Se,i=new q(t);i.an.a&&(i.Hc((sw(),Cj))?r=(t.a-n.a)/2:i.Hc(Ij)&&(r=t.a-n.a)),t.b>n.b&&(i.Hc((sw(),jj))?o=(t.b-n.b)/2:i.Hc(Tj)&&(o=t.b-n.b)),Lce(e,r,o)}function kGe(e,t,n,i,r,o,u,a,l,d,p,v,A){Q(e.Cb,88)&&lw(Ls(c(e.Cb,88)),4),kc(e,n),e.f=u,sE(e,a),aE(e,l),cE(e,d),uE(e,p),pd(e,v),lE(e,A),bd(e,!0),hd(e,r),e.ok(o),Ug(e,t),i!=null&&(e.i=null,NO(e,i))}function RGe(e){var t,n;if(e.f){for(;e.n>0;){if(t=c(e.k.Xb(e.n-1),72),n=t.ak(),Q(n,99)&&(c(n,18).Bb&rc)!=0&&(!e.e||n.Gj()!=x4||n.aj()!=0)&&t.dd()!=null)return!0;--e.n}return!1}else return e.n>0}function ese(e,t,n){if(e<0)return m6(mJe,U(G(xt,1),xe,1,5,[n,Ce(e)]));if(t<0)throw V(new St(vJe+t));return m6("%s (%s) must not be greater than size (%s)",U(G(xt,1),xe,1,5,[n,Ce(e),Ce(t)]))}function tse(e,t,n,i,r,o){var u,a,l,d;if(u=i-n,u<7){TAt(t,n,i,o);return}if(l=n+r,a=i+r,d=l+(a-l>>1),tse(t,e,l,d,-r,o),tse(t,e,d,a,-r,o),o.ue(e[d-1],e[d])<=0){for(;n=0?e.sh(o,n):Ose(e,r,n);else throw V(new St(x1+r.ne()+W6));else throw V(new St(YZe+t+XZe));else qu(e,i,r,n)}function xGe(e){var t,n,i,r;if(n=c(e,49).qh(),n)try{if(i=null,t=EE((c1(),_a),wYe(OAt(n))),t&&(r=t.rh(),r&&(i=r.Wk(Bvt(n.e)))),i&&i!=e)return xGe(i)}catch(o){if(o=gi(o),!Q(o,60))throw V(o)}return e}function Kc(e,t,n){var i,r,o,u;if(u=t==null?0:e.b.se(t),r=(i=e.a.get(u),i??new Array),r.length==0)e.a.set(u,r);else if(o=Jqe(e,t,r),o)return o.ed(n);return vi(r,r.length,new y9(t,n)),++e.c,q8(e.b),null}function LGe(e,t){var n,i;return eO(e.a),Kf(e.a,($O(),cx),cx),Kf(e.a,I4,I4),i=new tr,Nn(i,I4,(s7(),EW)),le(Ke(t,(ow(),MW)))!==le((EI(),sx))&&Nn(i,I4,yW),Nn(i,I4,_W),L7e(e.a,i),n=cD(e.a,t),n}function NGe(e){if(!e)return y9e(),Jtt;var t=e.valueOf?e.valueOf():e;if(t!==e){var n=fG[typeof t];return n?n(t):Ure(typeof t)}else return e instanceof Array||e instanceof g.Array?new QJ(e):new BM(e)}function FGe(e,t,n){var i,r,o;switch(o=e.o,i=c(so(e.p,n),244),r=i.i,r.b=UI(i),r.a=GI(i),r.b=g.Math.max(r.b,o.a),r.b>o.a&&!t&&(r.b=o.a),r.c=-(r.b-o.a)/2,n.g){case 1:r.d=-r.a;break;case 3:r.d=o.b}eH(i),tH(i)}function BGe(e,t,n){var i,r,o;switch(o=e.o,i=c(so(e.p,n),244),r=i.i,r.b=UI(i),r.a=GI(i),r.a=g.Math.max(r.a,o.b),r.a>o.b&&!t&&(r.a=o.b),r.d=-(r.a-o.b)/2,n.g){case 4:r.c=-r.b;break;case 2:r.c=o.a}eH(i),tH(i)}function Vkt(e,t){var n,i,r,o,u;if(!t.dc()){if(r=c(t.Xb(0),128),t.gc()==1){hWe(e,r,r,1,0,t);return}for(n=1;n0)try{r=vu(t,Ar,Fn)}catch(o){throw o=gi(o),Q(o,127)?(i=o,V(new mO(i))):V(o)}return n=(!e.a&&(e.a=new ON(e)),e.a),r=0?c(ee(n,r),56):null}function Ykt(e,t){if(e<0)return m6(mJe,U(G(xt,1),xe,1,5,["index",Ce(e)]));if(t<0)throw V(new St(vJe+t));return m6("%s (%s) must be less than size (%s)",U(G(xt,1),xe,1,5,["index",Ce(e),Ce(t)]))}function Xkt(e){var t,n,i,r,o;if(e==null)return rs;for(o=new Hg(zr,"[","]"),n=e,i=0,r=n.length;i0)for(u=e.c.d,a=e.d.d,r=lf(hr(new $e(a.a,a.b),u),1/(i+1)),o=new $e(u.a,u.b),n=new q(e.a);n.a=0?e._g(n,!0,!0):j0(e,r,!0),153)),c(i,215).ol(t);else throw V(new St(x1+t.ne()+W6))}function cse(e){var t,n;return e>-0x800000000000&&e<0x800000000000?e==0?0:(t=e<0,t&&(e=-e),n=xi(g.Math.floor(g.Math.log(e)/.6931471805599453)),(!t||e!=g.Math.pow(2,n))&&++n,n):fqe(ns(e))}function aRt(e){var t,n,i,r,o,u,a;for(o=new Eh,n=new q(e);n.a2&&a.e.b+a.j.b<=2&&(r=a,i=u),o.a.zc(r,o),r.q=i);return o}function UGe(e,t){var n,i,r;return i=new Nh(e),Mo(i,t),pe(i,(ye(),CR),t),pe(i,(Oe(),ji),(wr(),Ic)),pe(i,Of,(Gf(),wx)),Sg(i,(Dt(),Bi)),n=new gc,Bo(n,i),Ji(n,(Ie(),Mt)),r=new gc,Bo(r,i),Ji(r,jt),i}function WGe(e){switch(e.g){case 0:return new VN((w0(),wj));case 1:return new aCe;case 2:return new pCe;default:throw V(new St("No implementation is available for the crossing minimizer "+(e.f!=null?e.f:""+e.g)))}}function YGe(e,t){var n,i,r,o,u;for(e.c[t.p]=!0,Ee(e.a,t),u=new q(t.j);u.a=o)u.$b();else for(r=u.Kc(),i=0;i0?rZ():u<0&&ZGe(e,t,-u),!0):!1}function GI(e){var t,n,i,r,o,u,a;if(a=0,e.b==0){for(u=xze(e,!0),t=0,i=u,r=0,o=i.length;r0&&(a+=n,++t);t>1&&(a+=e.c*(t-1))}else a=T9e(BKe(x8(si(TB(e.a),new au),new e1)));return a>0?a+e.n.d+e.n.a:0}function UI(e){var t,n,i,r,o,u,a;if(a=0,e.b==0)a=T9e(BKe(x8(si(TB(e.a),new Eo),new fs)));else{for(u=Lze(e,!0),t=0,i=u,r=0,o=i.length;r0&&(a+=n,++t);t>1&&(a+=e.c*(t-1))}return a>0?a+e.n.b+e.n.c:0}function wRt(e,t){var n,i,r,o;for(o=c(so(e.b,t),124),n=o.a,r=c(c(Vn(e.r,t),21),84).Kc();r.Ob();)i=c(r.Pb(),111),i.c&&(n.a=g.Math.max(n.a,Vte(i.c)));if(n.a>0)switch(t.g){case 2:o.n.c=e.s;break;case 4:o.n.b=e.s}}function mRt(e,t){var n,i,r;return n=c(B(t,(dl(),r4)),19).a-c(B(e,r4),19).a,n==0?(i=hr(Wo(c(B(e,(v1(),JT)),8)),c(B(e,fP),8)),r=hr(Wo(c(B(t,JT),8)),c(B(t,fP),8)),zi(i.a*i.b,r.a*r.b)):n}function vRt(e,t){var n,i,r;return n=c(B(t,(A0(),ox)),19).a-c(B(e,ox),19).a,n==0?(i=hr(Wo(c(B(e,(ic(),yj)),8)),c(B(e,FP),8)),r=hr(Wo(c(B(t,yj),8)),c(B(t,FP),8)),zi(i.a*i.b,r.a*r.b)):n}function eUe(e){var t,n;return n=new n1,n.a+="e_",t=TTt(e),t!=null&&(n.a+=""+t),e.c&&e.d&&(wn((n.a+=" ",n),j7(e.c)),wn(nc((n.a+="[",n),e.c.i),"]"),wn((n.a+=Sz,n),j7(e.d)),wn(nc((n.a+="[",n),e.d.i),"]")),n.a}function tUe(e){switch(e.g){case 0:return new fCe;case 1:return new hCe;case 2:return new lCe;case 3:return new dCe;default:throw V(new St("No implementation is available for the layout phase "+(e.f!=null?e.f:""+e.g)))}}function use(e,t,n,i,r){var o;switch(o=0,r.g){case 1:o=g.Math.max(0,t.b+e.b-(n.b+i));break;case 3:o=g.Math.max(0,-e.b-i);break;case 2:o=g.Math.max(0,-e.a-i);break;case 4:o=g.Math.max(0,t.a+e.a-(n.a+i))}return o}function yRt(e,t,n){var i,r,o,u,a;if(n)for(r=n.a.length,i=new Og(r),a=(i.b-i.a)*i.c<0?(s1(),ig):new f1(i);a.Ob();)u=c(a.Pb(),19),o=A_(n,u.a),Sfe in o.a||kV in o.a?OFt(e,o,t):NHt(e,o,t),r3t(c(Bt(e.b,fE(o)),79))}function ase(e){var t,n;switch(e.b){case-1:return!0;case 0:return n=e.t,n>1||n==-1?(e.b=-1,!0):(t=ra(e),t&&(Wr(),t.Cj()==Zet)?(e.b=-1,!0):(e.b=1,!1));default:case 1:return!1}}function _Rt(e,t){var n,i,r,o,u;for(i=(!t.s&&(t.s=new Me(us,t,21,17)),t.s),o=null,r=0,u=i.i;r=0&&i=0?e._g(n,!0,!0):j0(e,r,!0),153)),c(i,215).ll(t);throw V(new St(x1+t.ne()+PV))}function CRt(){MZ();var e;return Fft?c(EE((c1(),_a),la),1939):(In(fb,new IPe),sqt(),e=c(Q(mc((c1(),_a),la),547)?mc(_a,la):new Kxe,547),Fft=!0,izt(e),uzt(e),Kn((PZ(),cme),e,new H6e),bo(_a,la,e),e)}function IRt(e,t){var n,i,r,o;e.j=-1,Qs(e.e)?(n=e.i,o=e.i!=0,UC(e,t),i=new Ah(e.e,3,e.c,null,t,n,o),r=t.Qk(e.e,e.c,null),r=kVe(e,t,r),r?(r.Ei(i),r.Fi()):Bn(e.e,i)):(UC(e,t),r=t.Qk(e.e,e.c,null),r&&r.Fi())}function B7(e,t){var n,i,r;if(r=0,i=t[0],i>=e.length)return-1;for(n=(fn(i,e.length),e.charCodeAt(i));n>=48&&n<=57&&(r=r*10+(n-48),++i,!(i>=e.length));)n=(fn(i,e.length),e.charCodeAt(i));return i>t[0]?t[0]=i:r=-1,r}function TRt(e){var t,n,i,r,o;return r=c(e.a,19).a,o=c(e.b,19).a,n=r,i=o,t=g.Math.max(g.Math.abs(r),g.Math.abs(o)),r<=0&&r==o?(n=0,i=o-1):r==-t&&o!=t?(n=o,i=r,o>=0&&++n):(n=-o,i=r),new yr(Ce(n),Ce(i))}function jRt(e,t,n,i){var r,o,u,a,l,d;for(r=0;r=0&&d>=0&&l=e.i)throw V(new ho(xV+t+ub+e.i));if(n>=e.i)throw V(new ho(LV+n+ub+e.i));return i=e.g[n],t!=n&&(t>16),t=i>>16&16,n=16-t,e=e>>t,i=e-256,t=i>>16&8,n+=t,e<<=t,i=e-vw,t=i>>16&4,n+=t,e<<=t,i=e-mf,t=i>>16&2,n+=t,e<<=t,i=e>>14,t=i&~(i>>1),n+2-t)}function ORt(e){t2();var t,n,i,r;for(Fk=new Se,AG=new en,jG=new Se,t=(!e.a&&(e.a=new Me(Ei,e,10,11)),e.a),aHt(t),r=new $t(t);r.e!=r.i.gc();)i=c(Vt(r),33),Do(Fk,i,0)==-1&&(n=new Se,Ee(jG,n),dze(i,n));return jG}function DRt(e,t,n){var i,r,o,u;e.a=n.b.d,Q(t,352)?(r=rv(c(t,79),!1,!1),o=HI(r),i=new FIe(e),Mr(o,i),rT(o,r),t.We((kn(),Hv))!=null&&Mr(c(t.We(Hv),74),i)):(u=c(t,470),u.Hg(u.Dg()+e.a.a),u.Ig(u.Eg()+e.a.b))}function iUe(e,t){var n,i,r,o,u,a,l,d;for(d=ge(Te(B(t,(Oe(),IP)))),l=e[0].n.a+e[0].o.a+e[0].d.c+d,a=1;a=0?n:(a=j5(hr(new $e(u.c+u.b/2,u.d+u.a/2),new $e(o.c+o.b/2,o.d+o.a/2))),-(MYe(o,u)-1)*a)}function RRt(e,t,n){var i;Di(new ht(null,(!n.a&&(n.a=new Me(mi,n,6,6)),new bt(n.a,16))),new KOe(e,t)),Di(new ht(null,(!n.n&&(n.n=new Me(Lo,n,1,7)),new bt(n.n,16))),new qOe(e,t)),i=c(Ke(n,(kn(),Hv)),74),i&&gre(i,e,t)}function j0(e,t,n){var i,r,o;if(o=uv((vs(),Ir),e.Tg(),t),o)return Wr(),c(o,66).Oj()||(o=r2(wo(Ir,o))),r=(i=e.Yg(o),c(i>=0?e._g(i,!0,!0):j0(e,o,!0),153)),c(r,215).hl(t,n);throw V(new St(x1+t.ne()+PV))}function fse(e,t,n,i){var r,o,u,a,l;if(r=e.d[t],r){if(o=r.g,l=r.i,i!=null){for(a=0;a=n&&(i=t,d=(l.c+l.a)/2,u=d-n,l.c<=d-n&&(r=new uB(l.c,u),Bp(e,i++,r)),a=d+n,a<=l.a&&(o=new uB(a,l.a),Vp(i,e.c.length),WS(e.c,i,o)))}function hse(e){var t;if(!e.c&&e.g==null)e.d=e.si(e.f),on(e,e.d),t=e.d;else{if(e.g==null)return!0;if(e.i==0)return!1;t=c(e.g[e.i-1],47)}return t==e.b&&null.km>=null.jm()?(q7(e),hse(e)):t.Ob()}function FRt(e,t,n){var i,r,o,u,a;if(a=n,!a&&(a=Hte(new Z3,0)),Wt(a,yQe,1),MXe(e.c,t),u=QKt(e.a,t),u.gc()==1)sXe(c(u.Xb(0),37),a);else for(o=1/u.gc(),r=u.Kc();r.Ob();)i=c(r.Pb(),37),sXe(i,yc(a,o));Gvt(e.a,u,t),QNt(t),qt(a)}function cUe(e){if(this.a=e,e.c.i.k==(Dt(),Bi))this.c=e.c,this.d=c(B(e.c.i,(ye(),Zo)),61);else if(e.d.i.k==Bi)this.c=e.d,this.d=c(B(e.d.i,(ye(),Zo)),61);else throw V(new St("Edge "+e+" is not an external edge."))}function sUe(e,t){var n,i,r;r=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,r,e.b)),t?t!=e&&(kc(e,t.zb),q$(e,t.d),n=(i=t.c,i??t.zb),z$(e,n==null||rt(n,t.zb)?null:n)):(kc(e,null),q$(e,0),z$(e,null))}function uUe(e){var t,n;if(e.f){for(;e.n=u)throw V(new Fp(t,u));return r=n[t],u==1?i=null:(i=oe(hY,KV,415,u-1,0,1),bc(n,0,i,0,t),o=u-t-1,o>0&&bc(n,t+1,i,t,o)),hE(e,i),OGe(e,t,r),r}function E2(){E2=Z,a3=c(ee(he((dZ(),cc).qb),6),34),u3=c(ee(he(cc.qb),3),34),mY=c(ee(he(cc.qb),4),34),vY=c(ee(he(cc.qb),5),18),k7(a3),k7(u3),k7(mY),k7(vY),qft=new Js(U(G(us,1),yv,170,0,[a3,u3]))}function hUe(e,t){var n;this.d=new OS,this.b=t,this.e=new go(t.qf()),n=e.u.Hc((js(),Fj)),e.u.Hc(Wh)?e.D?this.a=n&&!t.If():this.a=!0:e.u.Hc(X1)?n?this.a=!(t.zf().Kc().Ob()||t.Bf().Kc().Ob()):this.a=!1:this.a=!1}function dUe(e,t){var n,i,r,o;for(n=e.o.a,o=c(c(Vn(e.r,t),21),84).Kc();o.Ob();)r=c(o.Pb(),111),r.e.a=(i=r.b,i.Xe((kn(),zs))?i.Hf()==(Ie(),Mt)?-i.rf().a-ge(Te(i.We(zs))):n+ge(Te(i.We(zs))):i.Hf()==(Ie(),Mt)?-i.rf().a:n)}function gUe(e,t){var n,i,r,o;n=c(B(e,(Oe(),Pu)),103),o=c(Ke(t,_4),61),r=c(B(e,ji),98),r!=(wr(),Xl)&&r!=Y1?o==(Ie(),Vo)&&(o=lue(t,n),o==Vo&&(o=b2(n))):(i=cXe(t),i>0?o=b2(n):o=II(b2(n))),ao(t,_4,o)}function qRt(e,t){var n,i,r,o,u;for(u=e.j,t.a!=t.b&&cr(u,new E4e),r=u.c.length/2|0,i=0;i0&&tT(e,n,t),o):i.a!=null?(tT(e,t,n),-1):r.a!=null?(tT(e,n,t),1):0}function bUe(e,t){var n,i,r,o;e.ej()?(n=e.Vi(),o=e.fj(),++e.j,e.Hi(n,e.oi(n,t)),i=e.Zi(3,null,t,n,o),e.bj()?(r=e.cj(t,null),r?(r.Ei(i),r.Fi()):e.$i(i)):e.$i(i)):(Oxe(e,t),e.bj()&&(r=e.cj(t,null),r&&r.Fi()))}function $7(e,t){var n,i,r,o,u;for(u=qc(e.e.Tg(),t),r=new RA,n=c(e.g,119),o=e.i;--o>=0;)i=n[o],u.rl(i.ak())&&on(r,i);!rJe(e,r)&&Qs(e.e)&&Q3(e,t.$j()?p1(e,6,t,(st(),Qr),null,-1,!1):p1(e,t.Kj()?2:1,t,null,null,-1,!1))}function yE(){yE=Z;var e,t;for($2=oe(Ev,we,91,32,0,1),uP=oe(Ev,we,91,32,0,1),e=1,t=0;t<=18;t++)$2[t]=DI(e),uP[t]=DI(Ph(e,t)),e=jr(e,5);for(;tu)||t.q&&(i=t.C,u=i.c.c.a-i.o.a/2,r=i.n.a-n,r>u)))}function VRt(e,t){var n;Wt(t,"Partition preprocessing",1),n=c(gu(si($o(si(new ht(null,new bt(e.a,16)),new Y_e),new X_e),new J_e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),Di(n.Oc(),new Q_e),qt(t)}function pUe(e){i$();var t,n,i,r,o,u,a;for(n=new Ng,r=new q(e.e.b);r.a1?e.e*=ge(e.a):e.f/=ge(e.a),Cjt(e),O9t(e),dFt(e),pe(e.b,(o6(),Nk),e.g)}function yUe(e,t,n){var i,r,o,u,a,l;for(i=0,l=n,t||(i=n*(e.c.length-1),l*=-1),o=new q(e);o.a=0?(t||(t=new FS,i>0&&co(t,e.substr(0,i))),t.a+="\\",S_(t,n&Ni)):t&&S_(t,n&Ni);return t?t.a:e}function ext(e){var t;if(!e.a)throw V(new Ao("IDataType class expected for layout option "+e.f));if(t=uMt(e.a),t==null)throw V(new Ao("Couldn't create new instance of property '"+e.f+"'. "+mZe+(Sh(Uj),Uj.k)+gfe));return c(t,414)}function Dq(e){var t,n,i,r,o;return o=e.eh(),o&&o.kh()&&(r=S1(e,o),r!=o)?(n=e.Vg(),i=(t=e.Vg(),t>=0?e.Qg(null):e.eh().ih(e,-1-t,null,null)),e.Rg(c(r,49),n),i&&i.Fi(),e.Lg()&&e.Mg()&&n>-1&&Bn(e,new sr(e,9,n,o,r)),r):o}function MUe(e){var t,n,i,r,o,u,a,l;for(u=0,o=e.f.e,i=0;i>5,r>=e.d)return e.e<0;if(n=e.a[r],t=1<<(t&31),e.e<0){if(i=zKe(e),r>16)),15).Xc(o),a0&&(!(a1(e.a.c)&&t.n.d)&&!(h_(e.a.c)&&t.n.b)&&(t.g.d+=g.Math.max(0,i/2-.5)),!(a1(e.a.c)&&t.n.a)&&!(h_(e.a.c)&&t.n.c)&&(t.g.a-=i-1))}function TUe(e){var t,n,i,r,o;if(r=new Se,o=_Ye(e,r),t=c(B(e,(ye(),As)),10),t)for(i=new q(t.j);i.a>t,o=e.m>>t|n<<22-t,r=e.l>>t|e.m<<22-t):t<44?(u=i?Kh:0,o=n>>t-22,r=e.m>>t-22|n<<44-t):(u=i?Kh:0,o=i?qs:0,r=n>>t-44),Bc(r&qs,o&qs,u&Kh)}function kq(e){var t,n,i,r,o,u;for(this.c=new Se,this.d=e,i=Ii,r=Ii,t=$i,n=$i,u=Mn(e,0);u.b!=u.d.c;)o=c(Pn(u),8),i=g.Math.min(i,o.a),r=g.Math.min(r,o.b),t=g.Math.max(t,o.a),n=g.Math.max(n,o.b);this.a=new Ru(i,r,t-i,n-r)}function OUe(e,t){var n,i,r,o,u,a;for(o=new q(e.b);o.a0&&Q(t,42)&&(e.a.qj(),d=c(t,42),l=d.cd(),o=l==null?0:fi(l),u=rte(e.a,o),n=e.a.d[u],n)){for(i=c(n.g,367),p=n.i,a=0;a=2)for(n=r.Kc(),t=Te(n.Pb());n.Ob();)o=t,t=Te(n.Pb()),i=g.Math.min(i,(yt(t),t-(yt(o),o)));return i}function fxt(e,t){var n,i,r,o,u;i=new wi,Ri(i,t,i.c.b,i.c);do for(n=(Lt(i.b!=0),c(Fu(i,i.a.a),86)),e.b[n.g]=1,o=Mn(n.d,0);o.b!=o.d.c;)r=c(Pn(o),188),u=r.c,e.b[u.g]==1?Cn(e.a,r):e.b[u.g]==2?e.b[u.g]=1:Ri(i,u,i.c.b,i.c);while(i.b!=0)}function hxt(e,t){var n,i,r;if(le(t)===le(nn(e)))return!0;if(!Q(t,15)||(i=c(t,15),r=e.gc(),r!=i.gc()))return!1;if(Q(i,54)){for(n=0;n0&&(r=n),u=new q(e.f.e);u.a0?(t-=1,n-=1):i>=0&&r<0?(t+=1,n+=1):i>0&&r>=0?(t-=1,n+=1):(t+=1,n-=1),new yr(Ce(t),Ce(n))}function Axt(e,t){return e.ct.c?1:e.bt.b?1:e.a!=t.a?fi(e.a)-fi(t.a):e.d==(F5(),xP)&&t.d==RP?-1:e.d==RP&&t.d==xP?1:0}function FUe(e,t){var n,i,r,o,u;return o=t.a,o.c.i==t.b?u=o.d:u=o.c,o.c.i==t.b?i=o.c:i=o.d,r=r9t(e.a,u,i),r>0&&r<$E?(n=wxt(e.a,i.i,r,e.c),W$e(e.a,i.i,-n),n>0):r<0&&-r<$E?(n=mxt(e.a,i.i,-r,e.c),W$e(e.a,i.i,n),n>0):!1}function Oxt(e,t,n,i){var r,o,u,a,l,d,p,v;for(r=(t-e.d)/e.c.c.length,o=0,e.a+=n,e.d=t,v=new q(e.c);v.a>24;return u}function kxt(e){if(e.pe()){var t=e.c;t.qe()?e.o="["+t.n:t.pe()?e.o="["+t.ne():e.o="[L"+t.ne()+";",e.b=t.me()+"[]",e.k=t.oe()+"[]";return}var n=e.j,i=e.d;i=i.split("/"),e.o=NK(".",[n,NK("$",i)]),e.b=NK(".",[n,NK(".",i)]),e.k=i[i.length-1]}function Rxt(e,t){var n,i,r,o,u;for(u=null,o=new q(e.e.a);o.a=0;t-=2)for(n=0;n<=t;n+=2)(e.b[n]>e.b[n+2]||e.b[n]===e.b[n+2]&&e.b[n+1]>e.b[n+3])&&(i=e.b[n+2],e.b[n+2]=e.b[n],e.b[n]=i,i=e.b[n+3],e.b[n+3]=e.b[n+1],e.b[n+1]=i);e.c=!0}}function BUe(e,t){var n,i,r,o,u,a,l,d;for(u=t==1?BG:FG,o=u.a.ec().Kc();o.Ob();)for(r=c(o.Pb(),103),l=c(Vn(e.f.c,r),21).Kc();l.Ob();)switch(a=c(l.Pb(),46),i=c(a.b,81),d=c(a.a,189),n=d.c,r.g){case 2:case 1:i.g.d+=n;break;case 4:case 3:i.g.c+=n}}function Nxt(e,t){var n,i,r,o,u,a,l,d,p;for(d=-1,p=0,u=e,a=0,l=u.length;a0&&++p;++d}return p}function Ba(e){var t,n;return n=new lu(r1(e.gm)),n.a+="@",wn(n,(t=fi(e)>>>0,t.toString(16))),e.kh()?(n.a+=" (eProxyURI: ",nc(n,e.qh()),e.$g()&&(n.a+=" eClass: ",nc(n,e.$g())),n.a+=")"):e.$g()&&(n.a+=" (eClass: ",nc(n,e.$g()),n.a+=")"),n.a}function p6(e){var t,n,i,r;if(e.e)throw V(new Ao((Sh(mG),rz+mG.k+oz)));for(e.d==(eo(),ih)&&uD(e,ga),n=new q(e.a.a);n.a>24}return n}function $xt(e,t,n){var i,r,o;if(r=c(so(e.i,t),306),!r)if(r=new $$e(e.d,t,n),Xy(e.i,t,r),xoe(t))n3t(e.a,t.c,t.b,r);else switch(o=Ikt(t),i=c(so(e.p,o),244),o.g){case 1:case 3:r.j=!0,HN(i,t.b,r);break;case 4:case 2:r.k=!0,HN(i,t.c,r)}return r}function Kxt(e,t,n,i){var r,o,u,a,l,d;if(a=new RA,l=qc(e.e.Tg(),t),r=c(e.g,119),Wr(),c(t,66).Oj())for(u=0;u=0)return r;for(o=1,a=new q(t.j);a.a0&&t.ue((pt(r-1,e.c.length),c(e.c[r-1],10)),o)>0;)Lu(e,r,(pt(r-1,e.c.length),c(e.c[r-1],10))),--r;pt(r,e.c.length),e.c[r]=o}n.a=new en,n.b=new en}function qxt(e,t,n){var i,r,o,u,a,l,d,p;for(p=(i=c(t.e&&t.e(),9),new ku(i,c(Da(i,i.length),9),0)),l=gw(n,"[\\[\\]\\s,]+"),o=l,u=0,a=o.length;u0&&(!(a1(e.a.c)&&t.n.d)&&!(h_(e.a.c)&&t.n.b)&&(t.g.d-=g.Math.max(0,i/2-.5)),!(a1(e.a.c)&&t.n.a)&&!(h_(e.a.c)&&t.n.c)&&(t.g.a+=g.Math.max(0,i-1)))}function zUe(e,t,n){var i,r;if((e.c-e.b&e.a.length-1)==2)t==(Ie(),_t)||t==jt?(IO(c(Y5(e),15),(mu(),rh)),IO(c(Y5(e),15),U1)):(IO(c(Y5(e),15),(mu(),U1)),IO(c(Y5(e),15),rh));else for(r=new O5(e);r.a!=r.b;)i=c(t7(r),15),IO(i,n)}function zxt(e,t){var n,i,r,o,u,a,l;for(r=w_(new MQ(e)),a=new _r(r,r.c.length),o=w_(new MQ(t)),l=new _r(o,o.c.length),u=null;a.b>0&&l.b>0&&(n=(Lt(a.b>0),c(a.a.Xb(a.c=--a.b),33)),i=(Lt(l.b>0),c(l.a.Xb(l.c=--l.b),33)),n==i);)u=n;return u}function $s(e,t){var n,i,r,o,u,a;return o=e.a*ez+e.b*1502,a=e.b*ez+11,n=g.Math.floor(a*vT),o+=n,a-=n*Gue,o%=Gue,e.a=o,e.b=a,t<=24?g.Math.floor(e.a*Dhe[t]):(r=e.a*(1<=2147483648&&(i-=XH),i)}function VUe(e,t,n){var i,r,o,u;bNe(e,t)>bNe(e,n)?(i=qo(n,(Ie(),jt)),e.d=i.dc()?0:dB(c(i.Xb(0),11)),u=qo(t,Mt),e.b=u.dc()?0:dB(c(u.Xb(0),11))):(r=qo(n,(Ie(),Mt)),e.d=r.dc()?0:dB(c(r.Xb(0),11)),o=qo(t,jt),e.b=o.dc()?0:dB(c(o.Xb(0),11)))}function GUe(e){var t,n,i,r,o,u,a;if(e&&(t=e.Hh(la),t&&(u=ln(ll((!t.b&&(t.b=new Zs((ot(),Ur),ec,t)),t.b),"conversionDelegates")),u!=null))){for(a=new Se,i=gw(u,"\\w+"),r=0,o=i.length;re.c));u++)r.a>=e.s&&(o<0&&(o=u),a=u);return l=(e.s+e.c)/2,o>=0&&(i=IFt(e,t,o,a),l=Lyt((pt(i,t.c.length),c(t.c[i],329))),NRt(t,i,n)),l}function Lq(){Lq=Z,Pat=new Yr((kn(),n3),1.3),G0e=Gpe,Z0e=new Yb(15),Oat=new Yr(Sb,Z0e),kat=new Yr(Pb,15),Mat=vx,Tat=Eb,jat=Vv,Aat=G1,Iat=zv,X0e=kj,Dat=Uw,Q0e=(_se(),_at),Y0e=vat,J0e=yat,epe=Eat,U0e=mat,W0e=yx,Cat=Wpe,Ej=wat,V0e=pat,tpe=Sat}function cn(e,t,n){var i,r,o,u,a,l,d;for(u=(o=new qJ,o),ure(u,(yt(t),t)),d=(!u.b&&(u.b=new Zs((ot(),Ur),ec,u)),u.b),l=1;l0&&yKt(this,r)}function Tse(e,t,n,i,r,o){var u,a,l;if(!r[t.b]){for(r[t.b]=!0,u=i,!u&&(u=new uO),Ee(u.e,t),l=o[t.b].Kc();l.Ob();)a=c(l.Pb(),282),!(a.d==n||a.c==n)&&(a.c!=t&&Tse(e,a.c,t,u,r,o),a.d!=t&&Tse(e,a.d,t,u,r,o),Ee(u.c,a),Hi(u.d,a.b));return u}return null}function Uxt(e){var t,n,i,r,o,u,a;for(t=0,r=new q(e.e);r.a=2}function Wxt(e,t){var n,i,r,o;for(Wt(t,"Self-Loop pre-processing",1),i=new q(e.a);i.a1||(t=ui(Ga,U(G(ro,1),_e,93,0,[Uh,Ua])),hI(U8(t,e))>1)||(i=ui(Ya,U(G(ro,1),_e,93,0,[oh,pa])),hI(U8(i,e))>1))}function Jxt(e,t){var n,i,r;return n=t.Hh(e.a),n&&(r=ln(ll((!n.b&&(n.b=new Zs((ot(),Ur),ec,n)),n.b),"affiliation")),r!=null)?(i=Y9(r,is(35)),i==-1?SK(e,S5(e,bu(t.Hj())),r):i==0?SK(e,null,r.substr(1)):SK(e,r.substr(0,i),r.substr(i+1))):null}function Qxt(e){var t,n,i;try{return e==null?rs:Ro(e)}catch(r){if(r=gi(r),Q(r,102))return t=r,i=r1(Fs(e))+"@"+(n=(Nf(),Koe(e)>>>0),n.toString(16)),$9t(BTt(),(a_(),"Exception during lenientFormat for "+i),t),"<"+i+" threw "+r1(t.gm)+">";throw V(r)}}function YUe(e){switch(e.g){case 0:return new nCe;case 1:return new JMe;case 2:return new J8e;case 3:return new Z4e;case 4:return new mke;case 5:return new iCe;default:throw V(new St("No implementation is available for the layerer "+(e.f!=null?e.f:""+e.g)))}}function jse(e,t,n){var i,r,o;for(o=new q(e.t);o.a0&&(i.b.n-=i.c,i.b.n<=0&&i.b.u>0&&Cn(t,i.b));for(r=new q(e.i);r.a0&&(i.a.u-=i.c,i.a.u<=0&&i.a.n>0&&Cn(n,i.a))}function q7(e){var t,n,i,r,o;if(e.g==null&&(e.d=e.si(e.f),on(e,e.d),e.c))return o=e.f,o;if(t=c(e.g[e.i-1],47),r=t.Pb(),e.e=t,n=e.si(r),n.Ob())e.d=n,on(e,n);else for(e.d=null;!t.Ob()&&(vi(e.g,--e.i,null),e.i!=0);)i=c(e.g[e.i-1],47),t=i;return r}function Zxt(e,t){var n,i,r,o,u,a;if(i=t,r=i.ak(),Bh(e.e,r)){if(r.hi()&&rO(e,r,i.dd()))return!1}else for(a=qc(e.e.Tg(),r),n=c(e.g,119),o=0;o1||n>1)return 2;return t+n==1?2:0}function JUe(e,t,n){var i,r,o,u,a;for(Wt(n,"ELK Force",1),Be(Fe(Ke(t,(dl(),_de))))||V8((i=new zM((Ap(),new Ip(t))),i)),a=Iqe(t),POt(a),ijt(e,c(B(a,yde),424)),u=$Ye(e.a,a),o=u.Kc();o.Ob();)r=c(o.Pb(),231),BFt(e.b,r,yc(n,1/u.gc()));a=ZXe(u),XXe(a),qt(n)}function cLt(e,t){var n,i,r,o,u;if(Wt(t,"Breaking Point Processor",1),Cqt(e),Be(Fe(B(e,(Oe(),Tbe))))){for(r=new q(e.b);r.a=0?e._g(i,!0,!0):j0(e,o,!0),153)),c(r,215).ml(t,n)}else throw V(new St(x1+t.ne()+W6))}function lLt(e,t){var n,i,r,o,u;for(n=new Se,r=$o(new ht(null,new bt(e,16)),new GSe),o=$o(new ht(null,new bt(e,16)),new USe),u=NCt(QMt(x8(HLt(U(G(vzt,1),xe,833,0,[r,o])),new WSe))),i=1;i=2*t&&Ee(n,new uB(u[i-1]+t,u[i]-t));return n}function fLt(e,t,n){Wt(n,"Eades radial",1),n.n&&t&&Ra(n,xa(t),(ru(),Tu)),e.d=c(Ke(t,(w5(),KP)),33),e.c=ge(Te(Ke(t,(ow(),ax)))),e.e=GK(c(Ke(t,_j),293)),e.a=zAt(c(Ke(t,D0e),426)),e.b=h7t(c(Ke(t,O0e),340)),GOt(e),n.n&&t&&Ra(n,xa(t),(ru(),Tu))}function hLt(e,t,n){var i,r,o,u,a,l,d,p;if(n)for(o=n.a.length,i=new Og(o),a=(i.b-i.a)*i.c<0?(s1(),ig):new f1(i);a.Ob();)u=c(a.Pb(),19),r=A_(n,u.a),r&&(l=lMt(e,(d=(Hb(),p=new GQ,p),t&&Dse(d,t),d),r),H5(l,Ih(r,If)),x7(r,l),nse(r,l),cK(e,r,l))}function z7(e){var t,n,i,r,o,u;if(!e.j){if(u=new O6e,t=sM,o=t.a.zc(e,t),o==null){for(i=new $t(So(e));i.e!=i.i.gc();)n=c(Vt(i),26),r=z7(n),Mi(u,r),on(u,n);t.a.Bc(e)!=null}ew(u),e.j=new Im((c(ee(he((g1(),wt).o),11),18),u.i),u.g),Ls(e).b&=-33}return e.j}function dLt(e){var t,n,i,r;if(e==null)return null;if(i=Ec(e,!0),r=$T.length,rt(i.substr(i.length-r,r),$T)){if(n=i.length,n==4){if(t=(fn(0,i.length),i.charCodeAt(0)),t==43)return Cme;if(t==45)return oht}else if(n==3)return Cme}return new xQ(i)}function gLt(e){var t,n,i;return n=e.l,(n&n-1)!=0||(i=e.m,(i&i-1)!=0)||(t=e.h,(t&t-1)!=0)||t==0&&i==0&&n==0?-1:t==0&&i==0&&n!=0?tre(n):t==0&&i!=0&&n==0?tre(i)+22:t!=0&&i==0&&n==0?tre(t)+44:-1}function bLt(e,t){var n,i,r,o,u;for(Wt(t,"Edge joining",1),n=Be(Fe(B(e,(Oe(),zU)))),r=new q(e.b);r.a1)for(r=new q(e.a);r.a0),o.a.Xb(o.c=--o.b),Np(o,r),Lt(o.b3&&Vf(e,0,t-3))}function vLt(e){var t,n,i,r;return le(B(e,(Oe(),Fw)))===le((Rh(),kd))?!e.e&&le(B(e,lj))!==le((J_(),ij)):(i=c(B(e,DU),292),r=Be(Fe(B(e,kU)))||le(B(e,PP))===le((f2(),nj)),t=c(B(e,Vge),19).a,n=e.a.c.length,!r&&i!=(J_(),ij)&&(t==0||t>n))}function yLt(e){var t,n;for(n=0;n0);n++);if(n>0&&n0);t++);return t>0&&n>16!=6&&t){if(gE(e,t))throw V(new St(Y6+wUe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?rce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,6,i)),i=nte(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,6,t,t))}function Dse(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=9&&t){if(gE(e,t))throw V(new St(Y6+ZWe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?cce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,9,i)),i=ite(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,9,t,t))}function Fq(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=3&&t){if(gE(e,t))throw V(new St(Y6+QYe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?uce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,12,i)),i=tte(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,t,t))}function SE(e){var t,n,i,r,o;if(i=ra(e),o=e.j,o==null&&i)return e.$j()?null:i.zj();if(Q(i,148)){if(n=i.Aj(),n&&(r=n.Nh(),r!=e.i)){if(t=c(i,148),t.Ej())try{e.g=r.Kh(t,o)}catch(u){if(u=gi(u),Q(u,78))e.g=null;else throw V(u)}e.i=r}return e.g}return null}function eWe(e){var t;return t=new Se,Ee(t,new $y(new $e(e.c,e.d),new $e(e.c+e.b,e.d))),Ee(t,new $y(new $e(e.c,e.d),new $e(e.c,e.d+e.a))),Ee(t,new $y(new $e(e.c+e.b,e.d+e.a),new $e(e.c+e.b,e.d))),Ee(t,new $y(new $e(e.c+e.b,e.d+e.a),new $e(e.c,e.d+e.a))),t}function tWe(e,t,n,i){var r,o,u;if(u=pce(t,n),i.c[i.c.length]=t,e.j[u.p]==-1||e.j[u.p]==2||e.a[t.p])return i;for(e.j[u.p]=-1,o=new Kt(Ht(xh(u).a.Kc(),new j));dn(o);)if(r=c(rn(o),17),!(!(!Kr(r)&&!(!Kr(r)&&r.c.i.c==r.d.i.c))||r==t))return tWe(e,r,u,i);return i}function _Lt(e,t,n){var i,r,o;for(o=t.a.ec().Kc();o.Ob();)r=c(o.Pb(),79),i=c(Bt(e.b,r),266),!i&&(yi(Uf(r))==yi(M1(r))?LNt(e,r,n):Uf(r)==yi(M1(r))?Bt(e.c,r)==null&&Bt(e.b,M1(r))!=null&&RXe(e,r,n,!1):Bt(e.d,r)==null&&Bt(e.b,Uf(r))!=null&&RXe(e,r,n,!0))}function ELt(e,t){var n,i,r,o,u,a,l;for(r=e.Kc();r.Ob();)for(i=c(r.Pb(),10),a=new gc,Bo(a,i),Ji(a,(Ie(),jt)),pe(a,(ye(),IR),(Pt(),!0)),u=t.Kc();u.Ob();)o=c(u.Pb(),10),l=new gc,Bo(l,o),Ji(l,Mt),pe(l,IR,!0),n=new c0,pe(n,IR,!0),Rr(n,a),br(n,l)}function SLt(e,t,n,i){var r,o,u,a;r=XHe(e,t,n),o=XHe(e,n,t),u=c(Bt(e.c,t),112),a=c(Bt(e.c,n),112),ri.b.g&&(o.c[o.c.length]=i);return o}function PE(){PE=Z,Kv=new lC("CANDIDATE_POSITION_LAST_PLACED_RIGHT",0),e3=new lC("CANDIDATE_POSITION_LAST_PLACED_BELOW",1),HP=new lC("CANDIDATE_POSITION_WHOLE_DRAWING_RIGHT",2),qP=new lC("CANDIDATE_POSITION_WHOLE_DRAWING_BELOW",3),zP=new lC("WHOLE_DRAWING",4)}function PLt(e,t){if(Q(t,239))return eAt(e,c(t,33));if(Q(t,186))return dAt(e,c(t,118));if(Q(t,354))return C5t(e,c(t,137));if(Q(t,352))return XBt(e,c(t,79));if(t)return null;throw V(new St(Afe+C1(new Js(U(G(xt,1),xe,1,5,[t])))))}function MLt(e){var t,n,i,r,o,u,a;for(o=new wi,r=new q(e.d.a);r.a1)for(t=Jb((n=new Cg,++e.b,n),e.d),a=Mn(o,0);a.b!=a.d.c;)u=c(Pn(a),121),$a(Aa(ja(Oa(Ta(new Zu,1),0),t),u))}function kse(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=11&&t){if(gE(e,t))throw V(new St(Y6+Jse(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?ace(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=w2(t,e,10,i)),i=fte(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,11,t,t))}function CLt(e){var t,n,i,r;for(i=new Gg(new Pg(e.b).a);i.b;)n=g0(i),r=c(n.cd(),11),t=c(n.dd(),10),pe(t,(ye(),Hn),r),pe(r,As,t),pe(r,cj,(Pt(),!0)),Ji(r,c(B(t,Zo),61)),B(t,Zo),pe(r.i,(Oe(),ji),(wr(),k4)),c(B(Nr(r.i),Cc),21).Fc((to(),p4))}function ILt(e,t,n){var i,r,o,u,a,l;if(o=0,u=0,e.c)for(l=new q(e.d.i.j);l.ao.a?-1:r.al){for(p=e.d,e.d=oe(Jwe,Bfe,63,2*l+4,0,1),o=0;o=9223372036854776e3?(F_(),che):(r=!1,e<0&&(r=!0,e=-e),i=0,e>=nb&&(i=xi(e/nb),e-=i*nb),n=0,e>=T2&&(n=xi(e/T2),e-=n*T2),t=xi(e),o=Bc(t,n,i),r&&oK(o),o)}function NLt(e,t){var n,i,r,o;for(n=!t||!e.u.Hc((js(),Wh)),o=0,r=new q(e.e.Cf());r.a=-t&&i==t?new yr(Ce(n-1),Ce(i)):new yr(Ce(n),Ce(i-1))}function cWe(){return Jr(),U(G(Izt,1),_e,77,0,[e1e,Jde,hP,VG,v1e,Xk,cR,s4,w1e,u1e,b1e,c4,m1e,o1e,y1e,Vde,eR,GG,Wk,iR,E1e,nR,Gde,p1e,S1e,rR,_1e,Yk,n1e,d1e,h1e,sR,Yde,Uk,Qk,Wde,o4,l1e,c1e,g1e,dP,Qde,Xde,f1e,s1e,Zk,oR,Ude,tR,a1e,Jk,i1e,t1e,ej,Gk,r1e,Zde])}function KLt(e,t,n){e.d=0,e.b=0,t.k==(Dt(),Mc)&&n.k==Mc&&c(B(t,(ye(),Hn)),10)==c(B(n,Hn),10)&&(D$(t).j==(Ie(),_t)?VUe(e,t,n):VUe(e,n,t)),t.k==Mc&&n.k==ur?D$(t).j==(Ie(),_t)?e.d=1:e.b=1:n.k==Mc&&t.k==ur&&(D$(n).j==(Ie(),_t)?e.b=1:e.d=1),T8t(e,t,n)}function qLt(e){var t,n,i,r,o,u,a,l,d,p,v;return v=Dce(e),t=e.a,l=t!=null,l&&v_(v,"category",e.a),r=XM(new U3(e.d)),u=!r,u&&(d=new Eg,ul(v,"knownOptions",d),n=new Wje(d),Mr(new U3(e.d),n)),o=XM(e.g),a=!o,a&&(p=new Eg,ul(v,"supportedFeatures",p),i=new Yje(p),Mr(e.g,i)),v}function HLt(e){var t,n,i,r,o,u,a,l,d;for(i=!1,t=336,n=0,o=new uke(e.length),a=e,l=0,d=a.length;l>16!=7&&t){if(gE(e,t))throw V(new St(Y6+dGe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?oce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=c(t,49).gh(e,1,Hj,i)),i=ine(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,7,t,t))}function sWe(e,t){var n,i;if(t!=e.Cb||e.Db>>16!=3&&t){if(gE(e,t))throw V(new St(Y6+EHe(e)));i=null,e.Cb&&(i=(n=e.Db>>16,n>=0?sce(e,i):e.Cb.ih(e,-1-n,null,i))),t&&(i=c(t,49).gh(e,0,Vj,i)),i=rne(e,t,i),i&&i.Fi()}else(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,3,t,t))}function $q(e,t){yE();var n,i,r,o,u,a,l,d,p;return t.d>e.d&&(a=e,e=t,t=a),t.d<63?kNt(e,t):(u=(e.d&-2)<<4,d=wie(e,u),p=wie(t,u),i=nH(e,c2(d,u)),r=nH(t,c2(p,u)),l=$q(d,p),n=$q(i,r),o=$q(nH(d,i),nH(r,p)),o=lH(lH(o,l),n),o=c2(o,u),l=c2(l,u<<1),lH(lH(l,o),n))}function VLt(e,t,n){var i,r,o,u,a;for(u=Q5(e,n),a=oe(nh,Ed,10,t.length,0,1),i=0,o=u.Kc();o.Ob();)r=c(o.Pb(),11),Be(Fe(B(r,(ye(),cj))))&&(a[i++]=c(B(r,As),10));if(i=0;o+=n?1:-1)u=u|t.c.Sf(l,o,n,i&&!Be(Fe(B(t.j,(ye(),Y0))))&&!Be(Fe(B(t.j,(ye(),kv))))),u=u|t.q._f(l,o,n),u=u|GWe(e,l[o],n,i);return Yi(e.c,t),u}function G7(e,t,n){var i,r,o,u,a,l,d,p,v,A;for(p=VNe(e.j),v=0,A=p.length;v1&&(e.a=!0),sSt(c(n.b,65),Wn(Wo(c(t.b,65).c),lf(hr(Wo(c(n.b,65).a),c(t.b,65).a),r))),oNe(e,t),uWe(e,n)}function aWe(e){var t,n,i,r,o,u,a;for(o=new q(e.a.a);o.a0&&o>0?u.p=t++:i>0?u.p=n++:o>0?u.p=r++:u.p=n++}st(),cr(e.j,new z_e)}function XLt(e){var t,n;n=null,t=c(Ne(e.g,0),17);do{if(n=t.d.i,nr(n,(ye(),da)))return c(B(n,da),11).i;if(n.k!=(Dt(),Ui)&&dn(new Kt(Ht(Vi(n).a.Kc(),new j))))t=c(rn(new Kt(Ht(Vi(n).a.Kc(),new j))),17);else if(n.k!=Ui)return null}while(n&&n.k!=(Dt(),Ui));return n}function JLt(e,t){var n,i,r,o,u,a,l,d,p;for(a=t.j,u=t.g,l=c(Ne(a,a.c.length-1),113),p=(pt(0,a.c.length),c(a.c[0],113)),d=oq(e,u,l,p),o=1;od&&(l=n,p=r,d=i);t.a=p,t.c=l}function QLt(e,t){var n,i;if(i=kC(e.b,t.b),!i)throw V(new Ao("Invalid hitboxes for scanline constraint calculation."));(pqe(t.b,c(Q3t(e.b,t.b),57))||pqe(t.b,c(J3t(e.b,t.b),57)))&&(Nf(),t.b+""),e.a[t.b.f]=c(nB(e.b,t.b),57),n=c(tB(e.b,t.b),57),n&&(e.a[n.f]=t.b)}function $a(e){if(!e.a.d||!e.a.e)throw V(new Ao((Sh(Cnt),Cnt.k+" must have a source and target "+(Sh(sde),sde.k)+" specified.")));if(e.a.d==e.a.e)throw V(new Ao("Network simplex does not support self-loops: "+e.a+" "+e.a.d+" "+e.a.e));return J9(e.a.d.g,e.a),J9(e.a.e.b,e.a),e.a}function ZLt(e,t,n){var i,r,o,u,a,l,d;for(d=new o1(new UTe(e)),u=U(G(drt,1),SQe,11,0,[t,n]),a=0,l=u.length;al-e.b&&al-e.a&&a0&&++D;++A}return D}function aNt(e,t){var n,i,r,o,u;for(u=c(B(t,(A0(),g0e)),425),o=Mn(t.b,0);o.b!=o.d.c;)if(r=c(Pn(o),86),e.b[r.g]==0){switch(u.g){case 0:Nze(e,r);break;case 1:fxt(e,r)}e.b[r.g]=2}for(i=Mn(e.a,0);i.b!=i.d.c;)n=c(Pn(i),188),nw(n.b.d,n,!0),nw(n.c.b,n,!0);pe(t,(ic(),s0e),e.a)}function qc(e,t){Wr();var n,i,r,o;return t?t==(Jn(),iht)||(t==Vft||t==Ib||t==zft)&&e!=Pme?new jue(e,t):(i=c(t,677),n=i.pk(),n||(C_(wo((vs(),Ir),t)),n=i.pk()),o=(!n.i&&(n.i=new en),n.i),r=c(Uo(Po(o.f,e)),1942),!r&&Kn(o,e,r=new jue(e,t)),r):Kft}function lNt(e,t){var n,i,r,o,u,a,l,d,p;for(l=c(B(e,(ye(),Hn)),11),d=Ko(U(G(ir,1),we,8,0,[l.i.n,l.n,l.a])).a,p=e.i.n.b,n=bf(e.e),r=n,o=0,u=r.length;o0?o.a?(a=o.b.rf().a,n>a&&(r=(n-a)/2,o.d.b=r,o.d.c=r)):o.d.c=e.s+n:M5(e.u)&&(i=kce(o.b),i.c<0&&(o.d.b=-i.c),i.c+i.b>o.b.rf().a&&(o.d.c=i.c+i.b-o.b.rf().a))}function gNt(e,t){var n,i,r,o;for(Wt(t,"Semi-Interactive Crossing Minimization Processor",1),n=!1,r=new q(e.b);r.a=0){if(t==n)return new yr(Ce(-t-1),Ce(-t-1));if(t==-n)return new yr(Ce(-t),Ce(n+1))}return g.Math.abs(t)>g.Math.abs(n)?t<0?new yr(Ce(-t),Ce(n)):new yr(Ce(-t),Ce(n+1)):new yr(Ce(t+1),Ce(n))}function wNt(e){var t,n;n=c(B(e,(Oe(),zc)),163),t=c(B(e,(ye(),gb)),303),n==(Ku(),K1)?(pe(e,zc,aj),pe(e,gb,(Oh(),Ov))):n==xw?(pe(e,zc,aj),pe(e,gb,(Oh(),z2))):t==(Oh(),Ov)?(pe(e,zc,K1),pe(e,gb,rj)):t==z2&&(pe(e,zc,xw),pe(e,gb,rj))}function U7(){U7=Z,mj=new OSe,hut=Nn(new tr,(Hr(),Hc),(Jr(),Wk)),but=Cs(Nn(new tr,Hc,nR),Io,tR),put=M0(M0(b9(Cs(Nn(new tr,Af,cR),Io,oR),Pc),rR),sR),dut=Cs(Nn(Nn(Nn(new tr,B1,Xk),Pc,Qk),Pc,o4),Io,Jk),gut=Cs(Nn(Nn(new tr,Pc,o4),Pc,Uk),Io,Gk)}function w6(){w6=Z,vut=Nn(Cs(new tr,(Hr(),Io),(Jr(),i1e)),Hc,Wk),Sut=M0(M0(b9(Cs(Nn(new tr,Af,cR),Io,oR),Pc),rR),sR),yut=Cs(Nn(Nn(Nn(new tr,B1,Xk),Pc,Qk),Pc,o4),Io,Jk),Eut=Nn(Nn(new tr,Hc,nR),Io,tR),_ut=Cs(Nn(Nn(new tr,Pc,o4),Pc,Uk),Io,Gk)}function mNt(e,t,n,i,r){var o,u;(!Kr(t)&&t.c.i.c==t.d.i.c||!PKe(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])),n))&&!Kr(t)&&(t.c==r?b_(t.a,0,new go(n)):Cn(t.a,new go(n)),i&&!_h(e.a,n)&&(u=c(B(t,(Oe(),yo)),74),u||(u=new ds,pe(t,yo,u)),o=new go(n),Ri(u,o,u.c.b,u.c),Yi(e.a,o)))}function vNt(e){var t,n;for(n=new Kt(Ht(ko(e).a.Kc(),new j));dn(n);)if(t=c(rn(n),17),t.c.i.k!=(Dt(),cu))throw V(new ym(Cz+LI(e)+"' has its layer constraint set to FIRST, but has at least one incoming edge that does not come from a FIRST_SEPARATE node. That must not happen."))}function yNt(e,t,n){var i,r,o,u,a,l,d;if(r=THe(e.Db&254),r==0)e.Eb=n;else{if(r==1)a=oe(xt,xe,1,2,5,1),o=rq(e,t),o==0?(a[0]=n,a[1]=e.Eb):(a[0]=e.Eb,a[1]=n);else for(a=oe(xt,xe,1,r+1,5,1),u=$g(e.Eb),i=2,l=0,d=0;i<=128;i<<=1)i==t?a[d++]=n:(e.Db&i)!=0&&(a[d++]=u[l++]);e.Eb=a}e.Db|=t}function fWe(e,t,n){var i,r,o,u;for(this.b=new Se,r=0,i=0,u=new q(e);u.a0&&(o=c(Ne(this.b,0),167),r+=o.o,i+=o.p),r*=2,i*=2,t>1?r=xi(g.Math.ceil(r*t)):i=xi(g.Math.ceil(i/t)),this.a=new Coe(r,i)}function hWe(e,t,n,i,r,o){var u,a,l,d,p,v,A,D,L,N,z,Y;for(p=i,t.j&&t.o?(D=c(Bt(e.f,t.A),57),N=D.d.c+D.d.b,--p):N=t.a.c+t.a.b,v=r,n.q&&n.o?(D=c(Bt(e.f,n.C),57),d=D.d.c,++v):d=n.a.c,z=d-N,l=g.Math.max(2,v-p),a=z/l,L=N+a,A=p;A=0;u+=r?1:-1){for(a=t[u],l=i==(Ie(),jt)?r?qo(a,i):Kg(qo(a,i)):r?Kg(qo(a,i)):qo(a,i),o&&(e.c[a.p]=l.gc()),v=l.Kc();v.Ob();)p=c(v.Pb(),11),e.d[p.p]=d++;Hi(n,l)}}function dWe(e,t,n){var i,r,o,u,a,l,d,p;for(o=ge(Te(e.b.Kc().Pb())),d=ge(Te(jTt(t.b))),i=lf(Wo(e.a),d-n),r=lf(Wo(t.a),n-o),p=Wn(i,r),lf(p,1/(d-o)),this.a=p,this.b=new Se,a=!0,u=e.b.Kc(),u.Pb();u.Ob();)l=ge(Te(u.Pb())),a&&l-n>cV&&(this.b.Fc(n),a=!1),this.b.Fc(l);a&&this.b.Fc(n)}function _Nt(e){var t,n,i,r;if(DFt(e,e.n),e.d.c.length>0){for(LS(e.c);mse(e,c(K(new q(e.e.a)),121))>5,t&=31,i>=e.d)return e.e<0?(T1(),gG):(T1(),t4);if(o=e.d-i,r=oe(Qt,_n,25,o+1,15,1),gkt(r,o,e.a,i,t),e.e<0){for(n=0;n0&&e.a[n]<<32-t!=0){for(n=0;n=0?!1:(n=uv((vs(),Ir),r,t),n?(i=n.Zj(),(i>1||i==-1)&&o0(wo(Ir,n))!=3):!0)):!1}function MNt(e,t,n,i){var r,o,u,a,l;return a=Co(c(ee((!t.b&&(t.b=new dt(Ut,t,4,7)),t.b),0),82)),l=Co(c(ee((!t.c&&(t.c=new dt(Ut,t,5,8)),t.c),0),82)),yi(a)==yi(l)||Jp(l,a)?null:(u=KC(t),u==n?i:(o=c(Bt(e.a,u),10),o&&(r=o.e,r)?r:null))}function CNt(e,t){var n;switch(n=c(B(e,(Oe(),RR)),276),Wt(t,"Label side selection ("+n+")",1),n.g){case 0:OUe(e,(mu(),rh));break;case 1:OUe(e,(mu(),U1));break;case 2:GYe(e,(mu(),rh));break;case 3:GYe(e,(mu(),U1));break;case 4:IWe(e,(mu(),rh));break;case 5:IWe(e,(mu(),U1))}qt(t)}function $se(e,t,n){var i,r,o,u,a,l;if(i=fyt(n,e.length),u=e[i],u[0].k==(Dt(),Bi))for(o=O9e(n,u.length),l=t.j,r=0;r0&&(n[0]+=e.d,u-=n[0]),n[2]>0&&(n[2]+=e.d,u-=n[2]),o=g.Math.max(0,u),n[1]=g.Math.max(n[1],u),vie(e,Nc,r.c+i.b+n[0]-(n[1]-u)/2,n),t==Nc&&(e.c.b=o,e.c.c=r.c+i.b+(o-u)/2)}function PWe(){this.c=oe(gr,lo,25,(Ie(),U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt])).length,15,1),this.b=oe(gr,lo,25,U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt]).length,15,1),this.a=oe(gr,lo,25,U(G(Gr,1),ac,61,0,[Vo,_t,jt,Yt,Mt]).length,15,1),jZ(this.c,Ii),jZ(this.b,$i),jZ(this.a,$i)}function _c(e,t,n){var i,r,o,u;if(t<=n?(r=t,o=n):(r=n,o=t),i=0,e.b==null)e.b=oe(Qt,_n,25,2,15,1),e.b[0]=r,e.b[1]=o,e.c=!0;else{if(i=e.b.length,e.b[i-1]+1==r){e.b[i-1]=o;return}u=oe(Qt,_n,25,i+2,15,1),bc(e.b,0,u,0,i),e.b=u,e.b[i-1]>=r&&(e.c=!1,e.a=!1),e.b[i++]=r,e.b[i]=o,e.c||tv(e)}}function RNt(e,t,n){var i,r,o,u,a,l,d;for(d=t.d,e.a=new Dc(d.c.length),e.c=new en,a=new q(d);a.a=0?e._g(d,!1,!0):j0(e,n,!1),58));e:for(o=v.Kc();o.Ob();){for(r=c(o.Pb(),56),p=0;p1;)hw(r,r.i-1);return i}function BNt(e,t){var n,i,r,o,u,a,l;for(Wt(t,"Comment post-processing",1),o=new q(e.b);o.ae.d[u.p]&&(n+=die(e.b,o),w1(e.a,Ce(o)));for(;!xS(e.a);)zie(e.b,c(Qy(e.a),19).a)}return n}function TWe(e,t,n){var i,r,o,u;for(o=(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i,r=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));r.e!=r.i.gc();)i=c(Vt(r),33),(!i.a&&(i.a=new Me(Ei,i,10,11)),i.a).i==0||(o+=TWe(e,i,!1));if(n)for(u=yi(t);u;)o+=(!u.a&&(u.a=new Me(Ei,u,10,11)),u.a).i,u=yi(u);return o}function hw(e,t){var n,i,r,o;return e.ej()?(i=null,r=e.fj(),e.ij()&&(i=e.kj(e.pi(t),null)),n=e.Zi(4,o=v2(e,t),null,t,r),e.bj()&&o!=null&&(i=e.dj(o,i)),i?(i.Ei(n),i.Fi()):e.$i(n),o):(o=v2(e,t),e.bj()&&o!=null&&(i=e.dj(o,null),i&&i.Fi()),o)}function KNt(e){var t,n,i,r,o,u,a,l,d,p;for(d=e.a,t=new er,l=0,i=new q(e.d);i.aa.d&&(p=a.d+a.a+d));n.c.d=p,t.a.zc(n,t),l=g.Math.max(l,n.c.d+n.c.a)}return l}function to(){to=Z,yR=new Op("COMMENTS",0),Gu=new Op("EXTERNAL_PORTS",1),mP=new Op("HYPEREDGES",2),_R=new Op("HYPERNODES",3),p4=new Op("NON_FREE_PORTS",4),Av=new Op("NORTH_SOUTH_PORTS",5),vP=new Op(qQe,6),g4=new Op("CENTER_LABELS",7),b4=new Op("END_LABELS",8),ER=new Op("PARTITIONS",9)}function dw(e){var t,n,i,r,o;for(r=new Se,t=new _5((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a)),i=new Kt(Ht(Fh(e).a.Kc(),new j));dn(i);)n=c(rn(i),79),Q(ee((!n.b&&(n.b=new dt(Ut,n,4,7)),n.b),0),186)||(o=Co(c(ee((!n.c&&(n.c=new dt(Ut,n,5,8)),n.c),0),82)),t.a._b(o)||(r.c[r.c.length]=o));return r}function qNt(e){var t,n,i,r,o,u;for(o=new er,t=new _5((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a)),r=new Kt(Ht(Fh(e).a.Kc(),new j));dn(r);)i=c(rn(r),79),Q(ee((!i.b&&(i.b=new dt(Ut,i,4,7)),i.b),0),186)||(u=Co(c(ee((!i.c&&(i.c=new dt(Ut,i,5,8)),i.c),0),82)),t.a._b(u)||(n=o.a.zc(u,o),n==null));return o}function HNt(e,t,n,i,r){return i<0?(i=ev(e,r,U(G(Re,1),we,2,6,[TH,jH,AH,OH,C2,DH,kH,RH,xH,LH,NH,FH]),t),i<0&&(i=ev(e,r,U(G(Re,1),we,2,6,["Jan","Feb","Mar","Apr",C2,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),t)),i<0?!1:(n.k=i,!0)):i>0?(n.k=i-1,!0):!1}function zNt(e,t,n,i,r){return i<0?(i=ev(e,r,U(G(Re,1),we,2,6,[TH,jH,AH,OH,C2,DH,kH,RH,xH,LH,NH,FH]),t),i<0&&(i=ev(e,r,U(G(Re,1),we,2,6,["Jan","Feb","Mar","Apr",C2,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),t)),i<0?!1:(n.k=i,!0)):i>0?(n.k=i-1,!0):!1}function VNt(e,t,n,i,r,o){var u,a,l,d;if(a=32,i<0){if(t[0]>=e.length||(a=Pr(e,t[0]),a!=43&&a!=45)||(++t[0],i=B7(e,t),i<0))return!1;a==45&&(i=-i)}return a==32&&t[0]-n==2&&r.b==2&&(l=new u9,d=l.q.getFullYear()-O1+O1-80,u=d%100,o.a=i==u,i+=(d/100|0)*100+(i=d&&(l=i);l&&(p=g.Math.max(p,l.a.o.a)),p>A&&(v=d,A=p)}return v}function WNt(e,t,n){var i,r,o;if(e.e=n,e.d=0,e.b=0,e.f=1,e.i=t,(e.e&16)==16&&(e.i=RFt(e.i)),e.j=e.i.length,xn(e),o=P0(e),e.d!=e.j)throw V(new an(gn((un(),fet))));if(e.g){for(i=0;ifZe?cr(l,e.b):i<=fZe&&i>hZe?cr(l,e.d):i<=hZe&&i>dZe?cr(l,e.c):i<=dZe&&cr(l,e.a),o=DWe(e,l,o);return r}function T1(){T1=Z;var e;for(Ck=new ld(1,1),bG=new ld(1,10),t4=new ld(0,0),gG=new ld(-1,1),Che=U(G(Ev,1),we,91,0,[t4,Ck,new ld(1,2),new ld(1,3),new ld(1,4),new ld(1,5),new ld(1,6),new ld(1,7),new ld(1,8),new ld(1,9),bG]),Ik=oe(Ev,we,91,32,0,1),e=0;e1,a&&(i=new $e(r,n.b),Cn(t.a,i)),q5(t.a,U(G(ir,1),we,8,0,[A,v]))}function NWe(e){Gb(e,new Zg(qb(Bb(Kb($b(new _g,ZD),"ELK Randomizer"),'Distributes the nodes randomly on the plane, leading to very obfuscating layouts. Can be useful to demonstrate the power of "real" layout algorithms.'),new l6e))),je(e,ZD,N0,Lwe),je(e,ZD,_w,15),je(e,ZD,MD,Ce(0)),je(e,ZD,D2,KE)}function Hse(){Hse=Z;var e,t,n,i,r,o;for(fM=oe(Ps,vv,25,255,15,1),Vx=oe(Yu,vf,25,16,15,1),t=0;t<255;t++)fM[t]=-1;for(n=57;n>=48;n--)fM[n]=n-48<<24>>24;for(i=70;i>=65;i--)fM[i]=i-65+10<<24>>24;for(r=102;r>=97;r--)fM[r]=r-97+10<<24>>24;for(o=0;o<10;o++)Vx[o]=48+o&Ni;for(e=10;e<=15;e++)Vx[e]=65+e-10&Ni}function Y7(e,t,n){var i,r,o,u,a,l,d,p;return a=t.i-e.g/2,l=n.i-e.g/2,d=t.j-e.g/2,p=n.j-e.g/2,o=t.g+e.g/2,u=n.g+e.g/2,i=t.f+e.g/2,r=n.f+e.g/2,a>19!=0)return"-"+FWe(Z_(e));for(n=e,i="";!(n.l==0&&n.m==0&&n.h==0);){if(r=_$(pD),n=_ue(n,r,!0),t=""+X9e(L1),!(n.l==0&&n.m==0&&n.h==0))for(o=9-t.length;o>0;o--)t="0"+t;i=t+i}return i}function eFt(){if(!Object.create||!Object.getOwnPropertyNames)return!1;var e="__proto__",t=Object.create(null);if(t[e]!==void 0)return!1;var n=Object.getOwnPropertyNames(t);return!(n.length!=0||(t[e]=42,t[e]!==42)||Object.getOwnPropertyNames(t).length==0)}function tFt(e){var t,n,i,r,o,u,a;for(t=!1,n=0,r=new q(e.d.b);r.a=e.a||!Ace(t,n))return-1;if(O_(c(i.Kb(t),20)))return 1;for(r=0,u=c(i.Kb(t),20).Kc();u.Ob();)if(o=c(u.Pb(),17),l=o.c.i==t?o.d.i:o.c.i,a=Vse(e,l,n,i),a==-1||(r=g.Math.max(r,a),r>e.c-1))return-1;return r+1}function BWe(e,t){var n,i,r,o,u,a;if(le(t)===le(e))return!0;if(!Q(t,15)||(i=c(t,15),a=e.gc(),i.gc()!=a))return!1;if(u=i.Kc(),e.ni()){for(n=0;n0){if(e.qj(),t!=null){for(o=0;o>24;case 97:case 98:case 99:case 100:case 101:case 102:return e-97+10<<24>>24;case 65:case 66:case 67:case 68:case 69:case 70:return e-65+10<<24>>24;default:throw V(new uf("Invalid hexadecimal"))}}function oFt(e,t,n){var i,r,o,u;for(Wt(n,"Processor order nodes",2),e.a=ge(Te(B(t,(A0(),b0e)))),r=new wi,u=Mn(t.b,0);u.b!=u.d.c;)o=c(Pn(u),86),Be(Fe(B(o,(ic(),Gw))))&&Ri(r,o,r.c.b,r.c);i=(Lt(r.b!=0),c(r.a.a.c,86)),oXe(e,i),!n.b&&G$(n,1),Xse(e,i,0-ge(Te(B(i,(ic(),ix))))/2,0),!n.b&&G$(n,1),qt(n)}function X7(){X7=Z,ode=new Pm("SPIRAL",0),tde=new Pm("LINE_BY_LINE",1),nde=new Pm("MANHATTAN",2),ede=new Pm("JITTER",3),_G=new Pm("QUADRANTS_LINE_BY_LINE",4),rde=new Pm("QUADRANTS_MANHATTAN",5),ide=new Pm("QUADRANTS_JITTER",6),Zhe=new Pm("COMBINE_LINE_BY_LINE_MANHATTAN",7),Qhe=new Pm("COMBINE_JITTER_MANHATTAN",8)}function KWe(e,t,n,i){var r,o,u,a,l,d;for(l=lq(e,n),d=lq(t,n),r=!1;l&&d&&(i||tOt(l,d,n));)u=lq(l,n),a=lq(d,n),tI(t),tI(e),o=l.c,gH(l,!1),gH(d,!1),n?(cw(t,d.p,o),t.p=d.p,cw(e,l.p+1,o),e.p=l.p):(cw(e,l.p,o),e.p=l.p,cw(t,d.p+1,o),t.p=d.p),po(l,null),po(d,null),l=u,d=a,r=!0;return r}function cFt(e,t,n,i){var r,o,u,a,l;for(r=!1,o=!1,a=new q(i.j);a.a=t.length)throw V(new ho("Greedy SwitchDecider: Free layer not in graph."));this.c=t[e],this.e=new IC(i),X$(this.e,this.c,(Ie(),Mt)),this.i=new IC(i),X$(this.i,this.c,jt),this.f=new BRe(this.c),this.a=!o&&r.i&&!r.s&&this.c[0].k==(Dt(),Bi),this.a&&Skt(this,e,t.length)}function HWe(e,t){var n,i,r,o,u,a;o=!e.B.Hc((Ks(),Kj)),u=e.B.Hc(oY),e.a=new FHe(u,o,e.c),e.n&&xne(e.a.n,e.n),HN(e.g,(al(),Nc),e.a),t||(i=new r6(1,o,e.c),i.n.a=e.k,Xy(e.p,(Ie(),_t),i),r=new r6(1,o,e.c),r.n.d=e.k,Xy(e.p,Yt,r),a=new r6(0,o,e.c),a.n.c=e.k,Xy(e.p,Mt,a),n=new r6(0,o,e.c),n.n.b=e.k,Xy(e.p,jt,n))}function uFt(e){var t,n,i;switch(t=c(B(e.d,(Oe(),zh)),218),t.g){case 2:n=FHt(e);break;case 3:n=(i=new Se,Di(si(Yc($o($o(new ht(null,new bt(e.d.b,16)),new c4e),new s4e),new u4e),new UEe),new STe(i)),i);break;default:throw V(new Ao("Compaction not supported for "+t+" edges."))}cKt(e,n),Mr(new U3(e.g),new _Te(e))}function aFt(e,t){var n;return n=new bN,t&&Mo(n,c(Bt(e.a,Hj),94)),Q(t,470)&&Mo(n,c(Bt(e.a,zj),94)),Q(t,354)?(Mo(n,c(Bt(e.a,Lo),94)),n):(Q(t,82)&&Mo(n,c(Bt(e.a,Ut),94)),Q(t,239)?(Mo(n,c(Bt(e.a,Ei),94)),n):Q(t,186)?(Mo(n,c(Bt(e.a,Vs),94)),n):(Q(t,352)&&Mo(n,c(Bt(e.a,rr),94)),n))}function dl(){dl=Z,r4=new Yr((kn(),Sx),Ce(1)),Kk=new Yr(Pb,80),Lit=new Yr(dwe,5),Iit=new Yr(n3,KE),Rit=new Yr(eY,Ce(1)),xit=new Yr(tY,(Pt(),!0)),Ede=new Yb(50),Dit=new Yr(Sb,Ede),vde=yx,Sde=UP,Tit=new Yr(VW,!1),_de=kj,Oit=G1,Ait=Eb,jit=zv,kit=Uw,yde=(Hce(),yit),kG=Pit,$k=vit,DG=_it,Pde=Sit}function lFt(e){var t,n,i,r,o,u,a,l;for(l=new VFe,a=new q(e.a);a.a0&&t=0)return!1;if(t.p=n.b,Ee(n.e,t),r==(Dt(),ur)||r==Mc){for(u=new q(t.j);u.a1||u==-1)&&(o|=16),(r.Bb&rc)!=0&&(o|=64)),(n.Bb&Vr)!=0&&(o|=Iw),o|=Ka):Q(t,457)?o|=512:(i=t.Bj(),i&&(i.i&1)!=0&&(o|=256)),(e.Bb&512)!=0&&(o|=128),o}function m6(e,t){var n,i,r,o,u;for(e=e==null?rs:(yt(e),e),r=0;re.d[a.p]&&(n+=die(e.b,o),w1(e.a,Ce(o)))):++u;for(n+=e.b.d*u;!xS(e.a);)zie(e.b,c(Qy(e.a),19).a)}return n}function vFt(e,t){var n;return e.f==wY?(n=o0(wo((vs(),Ir),t)),e.e?n==4&&t!=(E2(),a3)&&t!=(E2(),u3)&&t!=(E2(),mY)&&t!=(E2(),vY):n==2):e.d&&(e.d.Hc(t)||e.d.Hc(r2(wo((vs(),Ir),t)))||e.d.Hc(uv((vs(),Ir),e.b,t)))?!0:e.f&&Rse((vs(),e.f),LC(wo(Ir,t)))?(n=o0(wo(Ir,t)),e.e?n==4:n==2):!1}function yFt(e,t,n,i){var r,o,u,a,l,d,p,v;return u=c(Ke(n,(kn(),i3)),8),l=u.a,p=u.b+e,r=g.Math.atan2(p,l),r<0&&(r+=pv),r+=t,r>pv&&(r-=pv),a=c(Ke(i,i3),8),d=a.a,v=a.b+e,o=g.Math.atan2(v,d),o<0&&(o+=pv),o+=t,o>pv&&(o-=pv),Il(),Na(1e-10),g.Math.abs(r-o)<=1e-10||r==o||isNaN(r)&&isNaN(o)?0:ro?1:Wb(isNaN(r),isNaN(o))}function Vq(e){var t,n,i,r,o,u,a;for(a=new en,i=new q(e.a.b);i.a=e.o)throw V(new RQ);a=t>>5,u=t&31,o=Ph(1,tn(Ph(u,1))),r?e.n[n][a]=Dl(e.n[n][a],o):e.n[n][a]=Xi(e.n[n][a],Bte(o)),o=Ph(o,1),i?e.n[n][a]=Dl(e.n[n][a],o):e.n[n][a]=Xi(e.n[n][a],Bte(o))}catch(l){throw l=gi(l),Q(l,320)?V(new ho(hz+e.o+"*"+e.p+dz+t+zr+n+gz)):V(l)}}function Xse(e,t,n,i){var r,o,u;t&&(o=ge(Te(B(t,(ic(),Ad))))+i,u=n+ge(Te(B(t,ix)))/2,pe(t,wW,Ce(tn(ns(g.Math.round(o))))),pe(t,u0e,Ce(tn(ns(g.Math.round(u))))),t.d.b==0||Xse(e,c(G9((r=Mn(new t1(t).a.d,0),new Dy(r))),86),n+ge(Te(B(t,ix)))+e.a,i+ge(Te(B(t,C4)))),B(t,pW)!=null&&Xse(e,c(B(t,pW),86),n,i))}function EFt(e,t){var n,i,r,o,u,a,l,d,p,v,A;for(l=Nr(t.a),r=ge(Te(B(l,(Oe(),vb))))*2,p=ge(Te(B(l,Nv))),d=g.Math.max(r,p),o=oe(gr,lo,25,t.f-t.c+1,15,1),i=-d,n=0,a=t.b.Kc();a.Ob();)u=c(a.Pb(),10),i+=e.a[u.c.p]+d,o[n++]=i;for(i+=e.a[t.a.c.p]+d,o[n++]=i,A=new q(t.e);A.a0&&(i=(!e.n&&(e.n=new Me(Lo,e,1,7)),c(ee(e.n,0),137)).a,!i||wn(wn((t.a+=' "',t),i),'"'))),wn(zb(wn(zb(wn(zb(wn(zb((t.a+=" (",t),e.i),","),e.j)," | "),e.g),","),e.f),")"),t.a)}function ZWe(e){var t,n,i;return(e.Db&64)!=0?_q(e):(t=new lu(_fe),n=e.k,n?wn(wn((t.a+=' "',t),n),'"'):(!e.n&&(e.n=new Me(Lo,e,1,7)),e.n.i>0&&(i=(!e.n&&(e.n=new Me(Lo,e,1,7)),c(ee(e.n,0),137)).a,!i||wn(wn((t.a+=' "',t),i),'"'))),wn(zb(wn(zb(wn(zb(wn(zb((t.a+=" (",t),e.i),","),e.j)," | "),e.g),","),e.f),")"),t.a)}function Uq(e,t){var n,i,r,o,u,a,l;if(t==null||t.length==0)return null;if(r=c(mc(e.a,t),149),!r){for(i=(a=new yh(e.b).a.vc().Kc(),new Cp(a));i.a.Ob();)if(n=(o=c(i.a.Pb(),42),c(o.dd(),149)),u=n.c,l=t.length,rt(u.substr(u.length-l,l),t)&&(t.length==u.length||Pr(u,u.length-t.length-1)==46)){if(r)return null;r=n}r&&bo(e.a,t,r)}return r}function MFt(e,t){var n,i,r,o;return n=new E2e,i=c(gu(Yc(new ht(null,new bt(e.f,16)),n),Wp(new Rs,new xs,new Mp,new ed,U(G(Hs,1),_e,132,0,[(Fl(),Tw),Su]))),21),r=i.gc(),i=c(gu(Yc(new ht(null,new bt(t.f,16)),n),Wp(new Rs,new xs,new Mp,new ed,U(G(Hs,1),_e,132,0,[Tw,Su]))),21),o=i.gc(),rr.p?(Ji(o,Yt),o.d&&(a=o.o.b,t=o.a.b,o.a.b=a-t)):o.j==Yt&&r.p>e.p&&(Ji(o,_t),o.d&&(a=o.o.b,t=o.a.b,o.a.b=-(a-t)));break}return r}function IFt(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L;if(o=n,n1,a&&(i=new $e(r,n.b),Cn(t.a,i)),q5(t.a,U(G(ir,1),we,8,0,[A,v]))}function Wq(e,t,n){var i,r,o,u,a,l;if(t)if(n<=-1){if(i=at(t.Tg(),-1-n),Q(i,99))return c(i,18);for(u=c(t.ah(i),153),a=0,l=u.gc();a0){for(r=l.length;r>0&&l[r-1]=="";)--r;r=40,u&&FBt(e),q$t(e),_Nt(e),n=PHe(e),i=0;n&&i0&&Cn(e.f,o)):(e.c[u]-=d+1,e.c[u]<=0&&e.a[u]>0&&Cn(e.e,o))))}function ZFt(e){var t,n,i,r,o,u,a,l,d;for(a=new o1(c(nn(new P2e),62)),d=$i,n=new q(e.d);n.a=0&&ln?t:n;d<=v;++d)d==n?a=i++:(o=r[d],p=L.rl(o.ak()),d==t&&(l=d==v&&!p?i-1:i),p&&++i);return A=c(t6(e,t,n),72),a!=l&&Q3(e,new QC(e.e,7,u,Ce(a),D.dd(),l)),A}}else return c(Aq(e,t,n),72);return c(t6(e,t,n),72)}function iBt(e,t){var n,i,r,o,u,a,l;for(Wt(t,"Port order processing",1),l=c(B(e,(Oe(),vbe)),421),i=new q(e.b);i.a=0&&(a=cOt(e,u),!(a&&(d<22?l.l|=1<>>1,u.m=p>>>1|(v&1)<<21,u.l=A>>>1|(p&1)<<21,--d;return n&&oK(l),o&&(i?(L1=Z_(e),r&&(L1=hqe(L1,(F_(),she)))):L1=Bc(e.l,e.m,e.h)),l}function cBt(e,t){var n,i,r,o,u,a,l,d,p,v;for(d=e.e[t.c.p][t.p]+1,l=t.c.a.c.length+1,a=new q(e.a);a.a0&&(fn(0,e.length),e.charCodeAt(0)==45||(fn(0,e.length),e.charCodeAt(0)==43))?1:0,i=u;in)throw V(new uf(L0+e+'"'));return a}function sBt(e){var t,n,i,r,o,u,a;for(u=new wi,o=new q(e.a);o.a1)&&t==1&&c(e.a[e.b],10).k==(Dt(),cu)?P2(c(e.a[e.b],10),(mu(),rh)):i&&(!n||(e.c-e.b&e.a.length-1)>1)&&t==1&&c(e.a[e.c-1&e.a.length-1],10).k==(Dt(),cu)?P2(c(e.a[e.c-1&e.a.length-1],10),(mu(),U1)):(e.c-e.b&e.a.length-1)==2?(P2(c(Y5(e),10),(mu(),rh)),P2(c(Y5(e),10),U1)):tLt(e,r),fie(e)}function lBt(e,t,n){var i,r,o,u,a;for(o=0,r=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));r.e!=r.i.gc();)i=c(Vt(r),33),u="",(!i.n&&(i.n=new Me(Lo,i,1,7)),i.n).i==0||(u=c(ee((!i.n&&(i.n=new Me(Lo,i,1,7)),i.n),0),137).a),a=new uK(o++,t,u),Mo(a,i),pe(a,(ic(),$P),i),a.e.b=i.j+i.f/2,a.f.a=g.Math.max(i.g,1),a.e.a=i.i+i.g/2,a.f.b=g.Math.max(i.f,1),Cn(t.b,a),Kc(n.f,i,a)}function fBt(e){var t,n,i,r,o;i=c(B(e,(ye(),Hn)),33),o=c(Ke(i,(Oe(),wb)),174).Hc((ou(),Cb)),e.e||(r=c(B(e,Cc),21),t=new $e(e.f.a+e.d.b+e.d.c,e.f.b+e.d.d+e.d.a),r.Hc((to(),Gu))?(ao(i,ji,(wr(),Ic)),k0(i,t.a,t.b,!1,!0)):Be(Fe(Ke(i,$U)))||k0(i,t.a,t.b,!0,!0)),o?ao(i,wb,nt(Cb)):ao(i,wb,(n=c(rl(tM),9),new ku(n,c(Da(n,n.length),9),0)))}function rue(e,t,n){var i,r,o,u;if(t[0]>=e.length)return n.o=0,!0;switch(Pr(e,t[0])){case 43:r=1;break;case 45:r=-1;break;default:return n.o=0,!0}if(++t[0],o=t[0],u=B7(e,t),u==0&&t[0]==o)return!1;if(t[0]=0&&a!=n&&(o=new sr(e,1,a,u,null),i?i.Ei(o):i=o),n>=0&&(o=new sr(e,1,n,a==n?u:null,t),i?i.Ei(o):i=o)),i}function wYe(e){var t,n,i;if(e.b==null){if(i=new nd,e.i!=null&&(co(i,e.i),i.a+=":"),(e.f&256)!=0){for((e.f&256)!=0&&e.a!=null&&(I5t(e.i)||(i.a+="//"),co(i,e.a)),e.d!=null&&(i.a+="/",co(i,e.d)),(e.f&16)!=0&&(i.a+="/"),t=0,n=e.j.length;tA?!1:(v=(l=P6(i,A,!1),l.a),p+a+v<=t.b&&(JC(n,o-n.s),n.c=!0,JC(i,o-n.s),kI(i,n.s,n.t+n.d+a),i.k=!0,pre(n.q,i),D=!0,r&&(OO(t,i),i.j=t,e.c.length>u&&(FI((pt(u,e.c.length),c(e.c[u],200)),i),(pt(u,e.c.length),c(e.c[u],200)).a.c.length==0&&ad(e,u)))),D)}function vBt(e,t){var n,i,r,o,u,a;if(Wt(t,"Partition midprocessing",1),r=new u0,Di(si(new ht(null,new bt(e.a,16)),new G_e),new sTe(r)),r.d!=0){for(a=c(gu(lNe((o=r.i,new ht(null,(o||(r.i=new Dm(r,r.c))).Nc()))),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),i=a.Kc(),n=c(i.Pb(),19);i.Ob();)u=c(i.Pb(),19),ELt(c(Vn(r,n),21),c(Vn(r,u),21)),n=u;qt(t)}}function yYe(e,t,n){var i,r,o,u,a,l,d,p;if(t.p==0){for(t.p=1,u=n,u||(r=new Se,o=(i=c(rl(Gr),9),new ku(i,c(Da(i,i.length),9),0)),u=new yr(r,o)),c(u.a,15).Fc(t),t.k==(Dt(),Bi)&&c(u.b,21).Fc(c(B(t,(ye(),Zo)),61)),l=new q(t.j);l.a0){if(r=c(e.Ab.g,1934),t==null){for(o=0;o1)for(i=new q(r);i.an.s&&aa&&(a=r,p.c=oe(xt,xe,1,0,5,1)),r==a&&Ee(p,new yr(n.c.i,n)));st(),cr(p,e.c),Bp(e.b,l.p,p)}}function MBt(e,t){var n,i,r,o,u,a,l,d,p;for(u=new q(t.b);u.aa&&(a=r,p.c=oe(xt,xe,1,0,5,1)),r==a&&Ee(p,new yr(n.d.i,n)));st(),cr(p,e.c),Bp(e.f,l.p,p)}}function EYe(e){Gb(e,new Zg(qb(Bb(Kb($b(new _g,$0),"ELK Box"),"Algorithm for packing of unconnected boxes, i.e. graphs without edges."),new X5e))),je(e,$0,N0,xpe),je(e,$0,_w,15),je(e,$0,ST,Ce(0)),je(e,$0,XD,Le(Dpe)),je(e,$0,gv,Le(blt)),je(e,$0,k2,Le(plt)),je(e,$0,D2,yZe),je(e,$0,PT,Le(kpe)),je(e,$0,R2,Le(Rpe)),je(e,$0,bfe,Le(KW)),je(e,$0,zD,Le(glt))}function SYe(e,t){var n,i,r,o,u,a,l,d,p;if(r=e.i,u=r.o.a,o=r.o.b,u<=0&&o<=0)return Ie(),Vo;switch(d=e.n.a,p=e.n.b,a=e.o.a,n=e.o.b,t.g){case 2:case 1:if(d<0)return Ie(),Mt;if(d+a>u)return Ie(),jt;break;case 4:case 3:if(p<0)return Ie(),_t;if(p+n>o)return Ie(),Yt}return l=(d+a/2)/u,i=(p+n/2)/o,l+i<=1&&l-i<=0?(Ie(),Mt):l+i>=1&&l-i>=0?(Ie(),jt):i<.5?(Ie(),_t):(Ie(),Yt)}function CBt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(n=!1,p=ge(Te(B(t,(Oe(),np)))),L=A1*p,r=new q(t.b);r.al+L&&(N=v.g+A.g,A.a=(A.g*A.a+v.g*v.a)/N,A.g=N,v.f=A,n=!0)),o=a,v=A;return n}function PYe(e,t,n,i,r,o,u){var a,l,d,p,v,A;for(A=new zy,d=t.Kc();d.Ob();)for(a=c(d.Pb(),839),v=new q(a.wf());v.a0?a.a?(d=a.b.rf().b,r>d&&(e.v||a.c.d.c.length==1?(u=(r-d)/2,a.d.d=u,a.d.a=u):(n=c(Ne(a.c.d,0),181).rf().b,i=(n-d)/2,a.d.d=g.Math.max(0,i),a.d.a=r-i-d))):a.d.a=e.t+r:M5(e.u)&&(o=kce(a.b),o.d<0&&(a.d.d=-o.d),o.d+o.a>a.b.rf().b&&(a.d.a=o.d+o.a-a.b.rf().b))}function jBt(e,t){var n;switch(oI(e)){case 6:return fr(t);case 7:return kp(t);case 8:return Dp(t);case 3:return Array.isArray(t)&&(n=oI(t),!(n>=14&&n<=16));case 11:return t!=null&&typeof t===EH;case 12:return t!=null&&(typeof t===aT||typeof t==EH);case 0:return VK(t,e.__elementTypeId$);case 2:return jB(t)&&t.im!==ct;case 1:return jB(t)&&t.im!==ct||VK(t,e.__elementTypeId$);default:return!0}}function MYe(e,t){var n,i,r,o;return i=g.Math.min(g.Math.abs(e.c-(t.c+t.b)),g.Math.abs(e.c+e.b-t.c)),o=g.Math.min(g.Math.abs(e.d-(t.d+t.a)),g.Math.abs(e.d+e.a-t.d)),n=g.Math.abs(e.c+e.b/2-(t.c+t.b/2)),n>e.b/2+t.b/2||(r=g.Math.abs(e.d+e.a/2-(t.d+t.a/2)),r>e.a/2+t.a/2)?1:n==0&&r==0?0:n==0?o/r+1:r==0?i/n+1:g.Math.min(i/n,o/r)+1}function CYe(e,t){var n,i,r,o,u,a;return r=ere(e),a=ere(t),r==a?e.e==t.e&&e.a<54&&t.a<54?e.ft.f?1:0:(i=e.e-t.e,n=(e.d>0?e.d:g.Math.floor((e.a-1)*NJe)+1)-(t.d>0?t.d:g.Math.floor((t.a-1)*NJe)+1),n>i+1?r:n0&&(u=Fm(u,WYe(i))),rze(o,u))):r0&&e.d!=($5(),LG)&&(a+=u*(i.d.a+e.a[t.b][i.b]*(t.d.a-i.d.a)/n)),n>0&&e.d!=($5(),RG)&&(l+=u*(i.d.b+e.a[t.b][i.b]*(t.d.b-i.d.b)/n)));switch(e.d.g){case 1:return new $e(a/o,t.d.b);case 2:return new $e(t.d.a,l/o);default:return new $e(a/o,l/o)}}function IYe(e,t){iE();var n,i,r,o,u;if(u=c(B(e.i,(Oe(),ji)),98),o=e.j.g-t.j.g,o!=0||!(u==(wr(),Mb)||u==ch||u==Ic))return 0;if(u==(wr(),Mb)&&(n=c(B(e,Td),19),i=c(B(t,Td),19),n&&i&&(r=n.a-i.a,r!=0)))return r;switch(e.j.g){case 1:return zi(e.n.a,t.n.a);case 2:return zi(e.n.b,t.n.b);case 3:return zi(t.n.a,e.n.a);case 4:return zi(t.n.b,e.n.b);default:throw V(new Ao(Pae))}}function TYe(e){var t,n,i,r,o,u;for(n=(!e.a&&(e.a=new qi(ma,e,5)),e.a).i+2,u=new Dc(n),Ee(u,new $e(e.j,e.k)),Di(new ht(null,(!e.a&&(e.a=new qi(ma,e,5)),new bt(e.a,16))),new Eje(u)),Ee(u,new $e(e.b,e.c)),t=1;t0&&(vI(l,!1,(eo(),ga)),vI(l,!0,Va)),Zc(t.g,new vOe(e,n)),Kn(e.g,t,n)}function AYe(){AYe=Z;var e;for(bhe=U(G(Qt,1),_n,25,15,[-1,-1,30,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5]),hG=oe(Qt,_n,25,37,15,1),ent=U(G(Qt,1),_n,25,15,[-1,-1,63,40,32,28,25,23,21,20,19,19,18,18,17,17,16,16,16,15,15,15,15,14,14,14,14,14,14,13,13,13,13,13,13,13,13]),phe=oe(rg,WH,25,37,14,1),e=2;e<=36;e++)hG[e]=xi(g.Math.pow(e,bhe[e])),phe[e]=BI(dD,hG[e])}function OBt(e){var t;if((!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i!=1)throw V(new St(BZe+(!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i));return t=new ds,wI(c(ee((!e.b&&(e.b=new dt(Ut,e,4,7)),e.b),0),82))&&qr(t,hJe(e,wI(c(ee((!e.b&&(e.b=new dt(Ut,e,4,7)),e.b),0),82)),!1)),wI(c(ee((!e.c&&(e.c=new dt(Ut,e,5,8)),e.c),0),82))&&qr(t,hJe(e,wI(c(ee((!e.c&&(e.c=new dt(Ut,e,5,8)),e.c),0),82)),!0)),t}function OYe(e,t){var n,i,r,o,u;for(t.d?r=e.a.c==(gf(),ip)?ko(t.b):Vi(t.b):r=e.a.c==(gf(),jd)?ko(t.b):Vi(t.b),o=!1,i=new Kt(Ht(r.a.Kc(),new j));dn(i);)if(n=c(rn(i),17),u=Be(e.a.f[e.a.g[t.b.p].p]),!(!u&&!Kr(n)&&n.c.i.c==n.d.i.c)&&!(Be(e.a.n[e.a.g[t.b.p].p])||Be(e.a.n[e.a.g[t.b.p].p]))&&(o=!0,_h(e.b,e.a.g[K8t(n,t.b).p])))return t.c=!0,t.a=n,t;return t.c=o,t.a=null,t}function DBt(e,t,n,i,r){var o,u,a,l,d,p,v;for(st(),cr(e,new s6e),a=new _r(e,0),v=new Se,o=0;a.bo*2?(p=new TO(v),d=ws(u)/eu(u),l=mH(p,t,new Ry,n,i,r,d),Wn(ol(p.e),l),v.c=oe(xt,xe,1,0,5,1),o=0,v.c[v.c.length]=p,v.c[v.c.length]=u,o=ws(p)*eu(p)+ws(u)*eu(u)):(v.c[v.c.length]=u,o+=ws(u)*eu(u));return v}function cue(e,t,n){var i,r,o,u,a,l,d;if(i=n.gc(),i==0)return!1;if(e.ej())if(l=e.fj(),_oe(e,t,n),u=i==1?e.Zi(3,null,n.Kc().Pb(),t,l):e.Zi(5,null,n,t,l),e.bj()){for(a=i<100?null:new i1(i),o=t+i,r=t;r0){for(u=0;u>16==-15&&e.Cb.nh()&&R$(new A$(e.Cb,9,13,n,e.c,wd(Ns(c(e.Cb,59)),e))):Q(e.Cb,88)&&e.Db>>16==-23&&e.Cb.nh()&&(t=e.c,Q(t,88)||(t=(ot(),Ea)),Q(n,88)||(n=(ot(),Ea)),R$(new A$(e.Cb,9,10,n,t,wd(dc(c(e.Cb,26)),e)))))),e.c}function kBt(e,t){var n,i,r,o,u,a,l,d,p,v;for(Wt(t,"Hypernodes processing",1),r=new q(e.b);r.an);return r}function kYe(e,t){var n,i,r;i=$s(e.d,1)!=0,!Be(Fe(B(t.j,(ye(),Y0))))&&!Be(Fe(B(t.j,kv)))||le(B(t.j,(Oe(),q1)))===le((kh(),H1))?t.c.Tf(t.e,i):i=Be(Fe(B(t.j,Y0))),ZI(e,t,i,!0),Be(Fe(B(t.j,kv)))&&pe(t.j,kv,(Pt(),!1)),Be(Fe(B(t.j,Y0)))&&(pe(t.j,Y0,(Pt(),!1)),pe(t.j,kv,!0)),n=Cq(e,t);do{if(hre(e),n==0)return 0;i=!i,r=n,ZI(e,t,i,!1),n=Cq(e,t)}while(r>n);return r}function RYe(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L;if(t==n)return!0;if(t=pse(e,t),n=pse(e,n),i=QK(t),i){if(p=QK(n),p!=i)return p?(l=i.Dj(),L=p.Dj(),l==L&&l!=null):!1;if(u=(!t.d&&(t.d=new qi(oo,t,1)),t.d),o=u.i,A=(!n.d&&(n.d=new qi(oo,n,1)),n.d),o==A.i){for(d=0;d0,a=u7(t,o),Nee(n?a.b:a.g,t),Gm(a).c.length==1&&Ri(i,a,i.c.b,i.c),r=new yr(o,t),w1(e.o,r),Jc(e.e.a,o))}function FYe(e,t){var n,i,r,o,u,a,l;return i=g.Math.abs(C8(e.b).a-C8(t.b).a),a=g.Math.abs(C8(e.b).b-C8(t.b).b),r=0,l=0,n=1,u=1,i>e.b.b/2+t.b.b/2&&(r=g.Math.min(g.Math.abs(e.b.c-(t.b.c+t.b.b)),g.Math.abs(e.b.c+e.b.b-t.b.c)),n=1-r/i),a>e.b.a/2+t.b.a/2&&(l=g.Math.min(g.Math.abs(e.b.d-(t.b.d+t.b.a)),g.Math.abs(e.b.d+e.b.a-t.b.d)),u=1-l/a),o=g.Math.min(n,u),(1-o)*g.Math.sqrt(i*i+a*a)}function BBt(e){var t,n,i,r;for(wH(e,e.e,e.f,(s0(),V1),!0,e.c,e.i),wH(e,e.e,e.f,V1,!1,e.c,e.i),wH(e,e.e,e.f,$v,!0,e.c,e.i),wH(e,e.e,e.f,$v,!1,e.c,e.i),KBt(e,e.c,e.e,e.f,e.i),i=new _r(e.i,0);i.b=65;n--)Zl[n]=n-65<<24>>24;for(i=122;i>=97;i--)Zl[i]=i-97+26<<24>>24;for(r=57;r>=48;r--)Zl[r]=r-48+52<<24>>24;for(Zl[43]=62,Zl[47]=63,o=0;o<=25;o++)Fd[o]=65+o&Ni;for(u=26,l=0;u<=51;++u,l++)Fd[u]=97+l&Ni;for(e=52,a=0;e<=61;++e,a++)Fd[e]=48+a&Ni;Fd[62]=43,Fd[63]=47}function $Bt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D;if(e.dc())return new Tr;for(d=0,v=0,r=e.Kc();r.Ob();)i=c(r.Pb(),37),o=i.f,d=g.Math.max(d,o.a),v+=o.a*o.b;for(d=g.Math.max(d,g.Math.sqrt(v)*ge(Te(B(c(e.Kc().Pb(),37),(Oe(),TR))))),A=0,D=0,l=0,n=t,a=e.Kc();a.Ob();)u=c(a.Pb(),37),p=u.f,A+p.a>d&&(A=0,D+=l+t,l=0),v6(u,A,D),n=g.Math.max(n,A+p.a),l=g.Math.max(l,p.b),A+=p.a+t;return new $e(n+t,D+l+t)}function KBt(e,t,n,i,r){var o,u,a,l,d,p,v;for(u=new q(t);u.ao)return Ie(),jt;break;case 4:case 3:if(l<0)return Ie(),_t;if(l+e.f>r)return Ie(),Yt}return u=(a+e.g/2)/o,n=(l+e.f/2)/r,u+n<=1&&u-n<=0?(Ie(),Mt):u+n>=1&&u-n>=0?(Ie(),jt):n<.5?(Ie(),_t):(Ie(),Yt)}function qBt(e,t,n,i,r){var o,u;if(o=xr(Xi(t[0],no),Xi(i[0],no)),e[0]=tn(o),o=h1(o,32),n>=r){for(u=1;u0&&(r.b[u++]=0,r.b[u++]=o.b[0]-1),t=1;t0&&(TN(l,l.d-r.d),r.c==(cl(),z1)&&Fmt(l,l.a-r.d),l.d<=0&&l.i>0&&Ri(t,l,t.c.b,t.c)));for(o=new q(e.f);o.a0&&(FA(a,a.i-r.d),r.c==(cl(),z1)&&Bmt(a,a.b-r.d),a.i<=0&&a.d>0&&Ri(n,a,n.c.b,n.c)))}function HBt(e,t,n){var i,r,o,u,a,l,d,p;for(Wt(n,"Processor compute fanout",1),Is(e.b),Is(e.a),a=null,o=Mn(t.b,0);!a&&o.b!=o.d.c;)d=c(Pn(o),86),Be(Fe(B(d,(ic(),Gw))))&&(a=d);for(l=new wi,Ri(l,a,l.c.b,l.c),YXe(e,l),p=Mn(t.b,0);p.b!=p.d.c;)d=c(Pn(p),86),u=ln(B(d,(ic(),BP))),r=mc(e.b,u)!=null?c(mc(e.b,u),19).a:0,pe(d,tx,Ce(r)),i=1+(mc(e.a,u)!=null?c(mc(e.a,u),19).a:0),pe(d,jut,Ce(i));qt(n)}function zBt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L;for(A=I7t(e,n),l=0;l0),i.a.Xb(i.c=--i.b),v>A+l&&nu(i);for(u=new q(D);u.a0),i.a.Xb(i.c=--i.b)}}function VBt(){Ln();var e,t,n,i,r,o;if(_Y)return _Y;for(e=new du(4),pw(e,j1(ZV,!0)),I6(e,j1("M",!0)),I6(e,j1("C",!0)),o=new du(4),i=0;i<11;i++)_c(o,i,i);return t=new du(4),pw(t,j1("M",!0)),_c(t,4448,4607),_c(t,65438,65439),r=new f5(2),eb(r,e),eb(r,dM),n=new f5(2),n.$l(v8(o,j1("L",!0))),n.$l(t),n=new Gp(3,n),n=new yne(r,n),_Y=n,_Y}function GBt(e){var t,n;if(t=ln(Ke(e,(kn(),GP))),!eqe(t,e)&&!Fg(e,j4)&&((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a).i!=0||Be(Fe(Ke(e,Oj)))))if(t==null||uw(t).length==0){if(!eqe(kt,e))throw n=wn(wn(new lu("Unable to load default layout algorithm "),kt)," for unconfigured node "),sD(e,n),V(new ym(n.a))}else throw n=wn(wn(new lu("Layout algorithm '"),t),"' not found for "),sD(e,n),V(new ym(n.a))}function eH(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;if(n=e.i,t=e.n,e.b==0)for(D=n.c+t.b,A=n.b-t.b-t.c,u=e.a,l=0,p=u.length;l0&&(v-=i[0]+e.c,i[0]+=e.c),i[2]>0&&(v-=i[2]+e.c),i[1]=g.Math.max(i[1],v),_8(e.a[1],n.c+t.b+i[0]-(i[1]-v)/2,i[1]);for(o=e.a,a=0,d=o.length;a0?(e.n.c.length-1)*e.i:0,i=new q(e.n);i.a1)for(i=Mn(r,0);i.b!=i.d.c;)for(n=c(Pn(i),231),o=0,l=new q(n.e);l.a0&&(t[0]+=e.c,v-=t[0]),t[2]>0&&(v-=t[2]+e.c),t[1]=g.Math.max(t[1],v),E8(e.a[1],i.d+n.d+t[0]-(t[1]-v)/2,t[1]);else for(L=i.d+n.d,D=i.a-n.d-n.a,u=e.a,l=0,p=u.length;l=0&&o!=n))throw V(new St(RT));for(r=0,l=0;l0||E0(r.b.d,e.b.d+e.b.a)==0&&i.b<0||E0(r.b.d+r.b.a,e.b.d)==0&&i.b>0){a=0;break}}else a=g.Math.min(a,qGe(e,r,i));a=g.Math.min(a,qYe(e,o,a,i))}return a}function rT(e,t){var n,i,r,o,u,a,l;if(e.b<2)throw V(new St("The vector chain must contain at least a source and a target point."));for(r=(Lt(e.b!=0),c(e.a.a.c,8)),H9(t,r.a,r.b),l=new Vy((!t.a&&(t.a=new qi(ma,t,5)),t.a)),u=Mn(e,1);u.age(Tl(u.g,u.d[0]).a)?(Lt(l.b>0),l.a.Xb(l.c=--l.b),Np(l,u),r=!0):a.e&&a.e.gc()>0&&(o=(!a.e&&(a.e=new Se),a.e).Mc(t),d=(!a.e&&(a.e=new Se),a.e).Mc(n),(o||d)&&((!a.e&&(a.e=new Se),a.e).Fc(u),++u.c));r||(i.c[i.c.length]=u)}function VYe(e){var t,n,i;if(Tm(c(B(e,(Oe(),ji)),98)))for(n=new q(e.j);n.a>>0,"0"+t.toString(16)),i="\\x"+fu(n,n.length-2,n.length)):e>=Vr?(n=(t=e>>>0,"0"+t.toString(16)),i="\\v"+fu(n,n.length-6,n.length)):i=""+String.fromCharCode(e&Ni)}return i}function nH(e,t){var n,i,r,o,u,a,l,d,p,v;if(u=e.e,l=t.e,l==0)return e;if(u==0)return t.e==0?t:new km(-t.e,t.d,t.a);if(o=e.d,a=t.d,o+a==2)return n=Xi(e.a[0],no),i=Xi(t.a[0],no),u<0&&(n=N_(n)),l<0&&(i=N_(i)),DI(P1(n,i));if(r=o!=a?o>a?1:-1:Hre(e.a,t.a,o),r==-1)v=-l,p=u==l?P$(t.a,a,e.a,o):C$(t.a,a,e.a,o);else if(v=u,u==l){if(r==0)return T1(),t4;p=P$(e.a,o,t.a,a)}else p=C$(e.a,o,t.a,a);return d=new km(v,p.length,p),R5(d),d}function due(e){var t,n,i,r,o,u;for(this.e=new Se,this.a=new Se,n=e.b-1;n<3;n++)b_(e,0,c(hl(e,0),8));if(e.b<4)throw V(new St("At (least dimension + 1) control points are necessary!"));for(this.b=3,this.d=!0,this.c=!1,Fxt(this,e.b+this.b-1),u=new Se,o=new q(this.e),t=0;t=t.o&&n.f<=t.f||t.a*.5<=n.f&&t.a*1.5>=n.f){if(u=c(Ne(t.n,t.n.c.length-1),211),u.e+u.d+n.g+r<=i&&(o=c(Ne(t.n,t.n.c.length-1),211),o.f-e.f+n.f<=e.b||e.a.c.length==1))return hoe(t,n),!0;if(t.s+n.g<=i&&(t.t+t.d+n.f+r<=e.b||e.a.c.length==1))return Ee(t.b,n),a=c(Ne(t.n,t.n.c.length-1),211),Ee(t.n,new W8(t.s,a.f+a.a+t.i,t.i)),Woe(c(Ne(t.n,t.n.c.length-1),211),n),BYe(t,n),!0}return!1}function UYe(e,t,n){var i,r,o,u;return e.ej()?(r=null,o=e.fj(),i=e.Zi(1,u=L$(e,t,n),n,t,o),e.bj()&&!(e.ni()&&u!=null?$n(u,n):le(u)===le(n))?(u!=null&&(r=e.dj(u,r)),r=e.cj(n,r),e.ij()&&(r=e.lj(u,n,r)),r?(r.Ei(i),r.Fi()):e.$i(i)):(e.ij()&&(r=e.lj(u,n,r)),r?(r.Ei(i),r.Fi()):e.$i(i)),u):(u=L$(e,t,n),e.bj()&&!(e.ni()&&u!=null?$n(u,n):le(u)===le(n))&&(r=null,u!=null&&(r=e.dj(u,null)),r=e.cj(n,r),r&&r.Fi()),u)}function _6(e,t){var n,i,r,o,u,a,l,d;t%=24,e.q.getHours()!=t&&(i=new g.Date(e.q.getTime()),i.setDate(i.getDate()+1),a=e.q.getTimezoneOffset()-i.getTimezoneOffset(),a>0&&(l=a/60|0,d=a%60,r=e.q.getDate(),n=e.q.getHours(),n+l>=24&&++r,o=new g.Date(e.q.getFullYear(),e.q.getMonth(),r,t+l,e.q.getMinutes()+d,e.q.getSeconds(),e.q.getMilliseconds()),e.q.setTime(o.getTime()))),u=e.q.getTime(),e.q.setTime(u+36e5),e.q.getHours()!=t&&e.q.setTime(u)}function t$t(e,t){var n,i,r,o,u;if(Wt(t,"Path-Like Graph Wrapping",1),e.b.c.length==0){qt(t);return}if(r=new yse(e),u=(r.i==null&&(r.i=dre(r,new kJ)),ge(r.i)*r.f),n=u/(r.i==null&&(r.i=dre(r,new kJ)),ge(r.i)),r.b>n){qt(t);return}switch(c(B(e,(Oe(),VU)),337).g){case 2:o=new xJ;break;case 0:o=new DJ;break;default:o=new LJ}if(i=o.Vf(e,r),!o.Wf())switch(c(B(e,qR),338).g){case 2:i=HGe(r,i);break;case 1:i=qVe(r,i)}Q$t(e,r,i),qt(t)}function n$t(e,t){var n,i,r,o;if($6t(e.d,e.e),e.c.a.$b(),ge(Te(B(t.j,(Oe(),OR))))!=0||ge(Te(B(t.j,OR)))!=0)for(n=$E,le(B(t.j,q1))!==le((kh(),H1))&&pe(t.j,(ye(),Y0),(Pt(),!0)),o=c(B(t.j,TP),19).a,r=0;rr&&++d,Ee(u,(pt(a+d,t.c.length),c(t.c[a+d],19))),l+=(pt(a+d,t.c.length),c(t.c[a+d],19)).a-i,++n;n1&&(l>ws(a)*eu(a)/2||u.b==0)&&(v=new TO(A),p=ws(a)/eu(a),d=mH(v,t,new Ry,n,i,r,p),Wn(ol(v.e),d),a=v,D.c[D.c.length]=v,l=0,A.c=oe(xt,xe,1,0,5,1)));return Hi(D,A),D}function o$t(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N;if(n.mh(t)&&(p=(D=t,D?c(i,49).xh(D):null),p))if(N=n.bh(t,e.a),L=t.t,L>1||L==-1)if(v=c(N,69),A=c(p,69),v.dc())A.$b();else for(u=!!Xr(t),o=0,a=e.a?v.Kc():v.Zh();a.Ob();)d=c(a.Pb(),56),r=c(h0(e,d),56),r?(u?(l=A.Xc(r),l==-1?A.Xh(o,r):o!=l&&A.ji(o,r)):A.Xh(o,r),++o):e.b&&!u&&(A.Xh(o,d),++o);else N==null?p.Wb(null):(r=h0(e,N),r==null?e.b&&!Xr(t)&&p.Wb(N):p.Wb(r))}function c$t(e,t){var n,i,r,o,u,a,l,d;for(n=new l_e,r=new Kt(Ht(ko(t).a.Kc(),new j));dn(r);)if(i=c(rn(r),17),!Kr(i)&&(a=i.c.i,Ace(a,Vk))){if(d=Vse(e,a,Vk,zk),d==-1)continue;n.b=g.Math.max(n.b,d),!n.a&&(n.a=new Se),Ee(n.a,a)}for(u=new Kt(Ht(Vi(t).a.Kc(),new j));dn(u);)if(o=c(rn(u),17),!Kr(o)&&(l=o.d.i,Ace(l,zk))){if(d=Vse(e,l,zk,Vk),d==-1)continue;n.d=g.Math.max(n.d,d),!n.c&&(n.c=new Se),Ee(n.c,l)}return n}function WYe(e){yE();var t,n,i,r;if(t=xi(e),e1e6)throw V(new JA("power of ten too big"));if(e<=Fn)return c2(YI($2[1],t),t);for(i=YI($2[1],Fn),r=i,n=ns(e-Fn),t=xi(e%Fn);uc(n,Fn)>0;)r=Fm(r,i),n=P1(n,Fn);for(r=Fm(r,YI($2[1],t)),r=c2(r,Fn),n=ns(e-Fn);uc(n,Fn)>0;)r=c2(r,Fn),n=P1(n,Fn);return r=c2(r,t),r}function s$t(e,t){var n,i,r,o,u,a,l,d,p;for(Wt(t,"Hierarchical port dummy size processing",1),l=new Se,p=new Se,i=ge(Te(B(e,(Oe(),Lv)))),n=i*2,o=new q(e.b);o.ad&&i>d)p=a,d=ge(t.p[a.p])+ge(t.d[a.p])+a.o.b+a.d.a;else{r=!1,n.n&&jg(n,"bk node placement breaks on "+a+" which should have been after "+p);break}if(!r)break}return n.n&&jg(n,t+" is feasible: "+r),r}function h$t(e,t,n,i){var r,o,u,a,l,d,p;for(a=-1,p=new q(e);p.a=z&&e.e[l.p]>L*e.b||ne>=n*z)&&(A.c[A.c.length]=a,a=new Se,qr(u,o),o.a.$b(),d-=p,D=g.Math.max(D,d*e.b+N),d+=ne,ie=ne,ne=0,p=0,N=0);return new yr(D,A)}function p$t(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;for(n=(d=new yh(e.c.b).a.vc().Kc(),new Cp(d));n.a.Ob();)t=(a=c(n.a.Pb(),42),c(a.dd(),149)),r=t.a,r==null&&(r=""),i=q3t(e.c,r),!i&&r.length==0&&(i=Hjt(e)),i&&!nw(i.c,t,!1)&&Cn(i.c,t);for(u=Mn(e.a,0);u.b!=u.d.c;)o=c(Pn(u),478),p=y$(e.c,o.a),D=y$(e.c,o.b),p&&D&&Cn(p.c,new yr(D,o.c));for(na(e.a),A=Mn(e.b,0);A.b!=A.d.c;)v=c(Pn(A),478),t=K3t(e.c,v.a),l=y$(e.c,v.b),t&&l&&Oyt(t,l,v.c);na(e.b)}function w$t(e,t,n){var i,r,o,u,a,l,d,p,v,A,D;o=new BM(e),u=new gVe,r=(GC(u.g),GC(u.j),Is(u.b),GC(u.d),GC(u.i),Is(u.k),Is(u.c),Is(u.e),D=JGe(u,o,null),$Ue(u,o),D),t&&(d=new BM(t),a=I$t(d),qce(r,U(G(Cpe,1),xe,527,0,[a]))),A=!1,v=!1,n&&(d=new BM(n),ik in d.a&&(A=Ch(d,ik).ge().a),aet in d.a&&(v=Ch(d,aet).ge().a)),p=D9e(sKe(new Z3,A),v),lkt(new I5e,r,p),ik in o.a&&ul(o,ik,null),(A||v)&&(l=new xy,zYe(p,l,A,v),ul(o,ik,l)),i=new Bje(u),rjt(new fee(r),i)}function m$t(e,t,n){var i,r,o,u,a,l,d,p,v;for(u=new vVe,d=U(G(Qt,1),_n,25,15,[0]),r=-1,o=0,i=0,l=0;l0){if(r<0&&p.a&&(r=l,o=d[0],i=0),r>=0){if(a=p.b,l==r&&(a-=i++,a==0))return 0;if(!JXe(t,d,p,a,u)){l=r-1,d[0]=o;continue}}else if(r=-1,!JXe(t,d,p,0,u))return 0}else{if(r=-1,Pr(p.c,0)==32){if(v=d[0],m$e(t,d),d[0]>v)continue}else if(Q5t(t,p.c,d[0])){d[0]+=p.c.length;continue}return 0}return Qqt(u,n)?d[0]:0}function S6(e){var t,n,i,r,o,u,a,l;if(!e.f){if(l=new HJ,a=new HJ,t=sM,u=t.a.zc(e,t),u==null){for(o=new $t(So(e));o.e!=o.i.gc();)r=c(Vt(o),26),Mi(l,S6(r));t.a.Bc(e)!=null,t.a.gc()==0}for(i=(!e.s&&(e.s=new Me(us,e,21,17)),new $t(e.s));i.e!=i.i.gc();)n=c(Vt(i),170),Q(n,99)&&on(a,c(n,18));ew(a),e.r=new lRe(e,(c(ee(he((g1(),wt).o),6),18),a.i),a.g),Mi(l,e.r),ew(l),e.f=new Im((c(ee(he(wt.o),5),18),l.i),l.g),Ls(e).b&=-3}return e.f}function v$t(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L;for(u=e.o,i=oe(Qt,_n,25,u,15,1),r=oe(Qt,_n,25,u,15,1),n=e.p,t=oe(Qt,_n,25,n,15,1),o=oe(Qt,_n,25,n,15,1),d=0;d=0&&!Ym(e,p,v);)--v;r[p]=v}for(D=0;D=0&&!Ym(e,a,L);)--a;o[L]=a}for(l=0;lt[A]&&Ai[l]&&Q7(e,l,A,!1,!0)}function gue(e){var t,n,i,r,o,u,a,l;n=Be(Fe(B(e,(dl(),Tit)))),o=e.a.c.d,a=e.a.d.d,n?(u=lf(hr(new $e(a.a,a.b),o),.5),l=lf(Wo(e.e),.5),t=hr(Wn(new $e(o.a,o.b),u),l),zee(e.d,t)):(r=ge(Te(B(e.a,Lit))),i=e.d,o.a>=a.a?o.b>=a.b?(i.a=a.a+(o.a-a.a)/2+r,i.b=a.b+(o.b-a.b)/2-r-e.e.b):(i.a=a.a+(o.a-a.a)/2+r,i.b=o.b+(a.b-o.b)/2+r):o.b>=a.b?(i.a=o.a+(a.a-o.a)/2+r,i.b=a.b+(o.b-a.b)/2+r):(i.a=o.a+(a.a-o.a)/2+r,i.b=o.b+(a.b-o.b)/2-r-e.e.b))}function Ec(e,t){var n,i,r,o,u,a,l;if(e==null)return null;if(o=e.length,o==0)return"";for(l=oe(Yu,vf,25,o,15,1),Aie(0,o,e.length),Aie(0,o,l.length),pxe(e,0,o,l,0),n=null,a=t,r=0,u=0;r0?fu(n.a,0,o-1):""):e.substr(0,o-1):n?n.a:e}function JYe(e){Gb(e,new Zg(qb(Bb(Kb($b(new _g,ob),"ELK DisCo"),"Layouter for arranging unconnected subgraphs. The subgraphs themselves are, by default, not laid out."),new K2e))),je(e,ob,pz,Le(pde)),je(e,ob,wz,Le(TG)),je(e,ob,D2,Le(dit)),je(e,ob,N0,Le(bde)),je(e,ob,Zue,Le(wit)),je(e,ob,eae,Le(pit)),je(e,ob,Que,Le(mit)),je(e,ob,tae,Le(bit)),je(e,ob,uae,Le(git)),je(e,ob,aae,Le(IG)),je(e,ob,lae,Le(gde)),je(e,ob,fae,Le(Nk))}function bue(e,t,n,i){var r,o,u,a,l,d,p,v,A;if(o=new Nh(e),Sg(o,(Dt(),Mc)),pe(o,(Oe(),ji),(wr(),Ic)),r=0,t){for(u=new gc,pe(u,(ye(),Hn),t),pe(o,Hn,t.i),Ji(u,(Ie(),Mt)),Bo(u,o),A=bf(t.e),d=A,p=0,v=d.length;p0)if(n-=i.length-t,n>=0){for(r.a+="0.";n>db.length;n-=db.length)jRe(r,db);fke(r,db,xi(n)),wn(r,i.substr(t))}else n=t-n,wn(r,fu(i,t,xi(n))),r.a+=".",wn(r,wC(i,xi(n)));else{for(wn(r,i.substr(t));n<-db.length;n+=db.length)jRe(r,db);fke(r,db,xi(-n))}return r.a}function pue(e,t,n,i){var r,o,u,a,l,d,p,v,A;return l=hr(new $e(n.a,n.b),e),d=l.a*t.b-l.b*t.a,p=t.a*i.b-t.b*i.a,v=(l.a*i.b-l.b*i.a)/p,A=d/p,p==0?d==0?(r=Wn(new $e(n.a,n.b),lf(new $e(i.a,i.b),.5)),o=m1(e,r),u=m1(Wn(new $e(e.a,e.b),t),r),a=g.Math.sqrt(i.a*i.a+i.b*i.b)*.5,o=0&&v<=1&&A>=0&&A<=1?Wn(new $e(e.a,e.b),lf(new $e(t.a,t.b),v)):null}function _$t(e,t,n){var i,r,o,u,a;if(i=c(B(e,(Oe(),OU)),21),n.a>t.a&&(i.Hc((sw(),Cj))?e.c.a+=(n.a-t.a)/2:i.Hc(Ij)&&(e.c.a+=n.a-t.a)),n.b>t.b&&(i.Hc((sw(),jj))?e.c.b+=(n.b-t.b)/2:i.Hc(Tj)&&(e.c.b+=n.b-t.b)),c(B(e,(ye(),Cc)),21).Hc((to(),Gu))&&(n.a>t.a||n.b>t.b))for(a=new q(e.a);a.at.a&&(i.Hc((sw(),Cj))?e.c.a+=(n.a-t.a)/2:i.Hc(Ij)&&(e.c.a+=n.a-t.a)),n.b>t.b&&(i.Hc((sw(),jj))?e.c.b+=(n.b-t.b)/2:i.Hc(Tj)&&(e.c.b+=n.b-t.b)),c(B(e,(ye(),Cc)),21).Hc((to(),Gu))&&(n.a>t.a||n.b>t.b))for(u=new q(e.a);u.at&&(r=0,o+=p.b+n,v.c[v.c.length]=p,p=new Zne(o,n),i=new aK(0,p.f,p,n),OO(p,i),r=0),i.b.c.length==0||l.f>=i.o&&l.f<=i.f||i.a*.5<=l.f&&i.a*1.5>=l.f?hoe(i,l):(u=new aK(i.s+i.r+n,p.f,p,n),OO(p,u),hoe(u,l)),r=l.i+l.g;return v.c[v.c.length]=p,v}function sv(e){var t,n,i,r,o,u,a,l;if(!e.a){if(e.o=null,l=new oAe(e),t=new T6e,n=sM,a=n.a.zc(e,n),a==null){for(u=new $t(So(e));u.e!=u.i.gc();)o=c(Vt(u),26),Mi(l,sv(o));n.a.Bc(e)!=null,n.a.gc()==0}for(r=(!e.s&&(e.s=new Me(us,e,21,17)),new $t(e.s));r.e!=r.i.gc();)i=c(Vt(r),170),Q(i,322)&&on(t,c(i,34));ew(t),e.k=new aRe(e,(c(ee(he((g1(),wt).o),7),18),t.i),t.g),Mi(l,e.k),ew(l),e.a=new Im((c(ee(he(wt.o),4),18),l.i),l.g),Ls(e).b&=-2}return e.a}function M$t(e,t,n,i,r,o,u){var a,l,d,p,v,A;return v=!1,l=oWe(n.q,t.f+t.b-n.q.f),A=r-(n.q.e+l-u),A=(pt(o,e.c.length),c(e.c[o],200)).e,p=(a=P6(i,A,!1),a.a),p>t.b&&!d)?!1:((d||p<=t.b)&&(d&&p>t.b?(n.d=p,JC(n,aGe(n,p))):(TVe(n.q,l),n.c=!0),JC(i,r-(n.s+n.r)),kI(i,n.q.e+n.q.d,t.f),OO(t,i),e.c.length>o&&(FI((pt(o,e.c.length),c(e.c[o],200)),i),(pt(o,e.c.length),c(e.c[o],200)).a.c.length==0&&ad(e,o)),v=!0),v)}function wue(e,t,n,i){var r,o,u,a,l,d,p;if(p=qc(e.e.Tg(),t),r=0,o=c(e.g,119),l=null,Wr(),c(t,66).Oj()){for(a=0;ae.o.a&&(p=(l-e.o.a)/2,a.b=g.Math.max(a.b,p),a.c=g.Math.max(a.c,p))}}function I$t(e){var t,n,i,r,o,u,a,l;for(o=new ANe,f2t(o,(d2(),olt)),i=(r=J$(e,oe(Re,we,2,0,6,1)),new CS(new Js(new tF(e,r).b)));i.b0?e.i:0)>t&&l>0&&(o=0,u+=l+e.i,r=g.Math.max(r,A),i+=l+e.i,l=0,A=0,n&&(++v,Ee(e.n,new W8(e.s,u,e.i))),a=0),A+=d.g+(a>0?e.i:0),l=g.Math.max(l,d.f),n&&Woe(c(Ne(e.n,v),211),d),o+=d.g+(a>0?e.i:0),++a;return r=g.Math.max(r,A),i+=l,n&&(e.r=r,e.d=i,Qoe(e.j)),new Ru(e.s,e.t,r,i)}function bc(e,t,n,i,r){Nf();var o,u,a,l,d,p,v,A,D;if(wne(e,"src"),wne(n,"dest"),A=Fs(e),l=Fs(n),$te((A.i&4)!=0,"srcType is not an array"),$te((l.i&4)!=0,"destType is not an array"),v=A.c,u=l.c,$te((v.i&1)!=0?v==u:(u.i&1)==0,"Array types don't match"),D=e.length,d=n.length,t<0||i<0||r<0||t+r>D||i+r>d)throw V(new DQ);if((v.i&1)==0&&A!=l)if(p=$g(e),o=$g(n),le(e)===le(n)&&ti;)vi(o,a,p[--t]);else for(a=i+r;i0&&ise(e,t,n,i,r,!0)}function cH(){cH=Z,nnt=U(G(Qt,1),_n,25,15,[Ar,1162261467,j6,1220703125,362797056,1977326743,j6,387420489,pD,214358881,429981696,815730721,1475789056,170859375,268435456,410338673,612220032,893871739,128e7,1801088541,113379904,148035889,191102976,244140625,308915776,387420489,481890304,594823321,729e6,887503681,j6,1291467969,1544804416,1838265625,60466176]),int=U(G(Qt,1),_n,25,15,[-1,-1,31,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5])}function T$t(e){var t,n,i,r,o,u,a,l;for(r=new q(e.b);r.a=e.b.length?(o[r++]=u.b[i++],o[r++]=u.b[i++]):i>=u.b.length?(o[r++]=e.b[n++],o[r++]=e.b[n++]):u.b[i]0?e.i:0)),++t;for($At(e.n,l),e.d=n,e.r=i,e.g=0,e.f=0,e.e=0,e.o=Ii,e.p=Ii,o=new q(e.b);o.a0&&(r=(!e.n&&(e.n=new Me(Lo,e,1,7)),c(ee(e.n,0),137)).a,!r||wn(wn((t.a+=' "',t),r),'"'))),n=(!e.b&&(e.b=new dt(Ut,e,4,7)),!(e.b.i<=1&&(!e.c&&(e.c=new dt(Ut,e,5,8)),e.c.i<=1))),n?t.a+=" [":t.a+=" ",wn(t,Iee(new XN,new $t(e.b))),n&&(t.a+="]"),t.a+=Sz,n&&(t.a+="["),wn(t,Iee(new XN,new $t(e.c))),n&&(t.a+="]"),t.a)}function sH(e,t){var n,i,r,o,u,a,l;if(e.a){if(a=e.a.ne(),l=null,a!=null?t.a+=""+a:(u=e.a.Dj(),u!=null&&(o=af(u,is(91)),o!=-1?(l=u.substr(o),t.a+=""+fu(u==null?rs:(yt(u),u),0,o)):t.a+=""+u)),e.d&&e.d.i!=0){for(r=!0,t.a+="<",i=new $t(e.d);i.e!=i.i.gc();)n=c(Vt(i),87),r?r=!1:t.a+=zr,sH(n,t);t.a+=">"}l!=null&&(t.a+=""+l)}else e.e?(a=e.e.zb,a!=null&&(t.a+=""+a)):(t.a+="?",e.b?(t.a+=" super ",sH(e.b,t)):e.f&&(t.a+=" extends ",sH(e.f,t)))}function O$t(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At;for(be=e.c,Pe=t.c,n=Do(be.a,e,0),i=Do(Pe.a,t,0),ne=c(S0(e,(Zr(),Os)).Kc().Pb(),11),et=c(S0(e,Fc).Kc().Pb(),11),ue=c(S0(t,Os).Kc().Pb(),11),At=c(S0(t,Fc).Kc().Pb(),11),Y=bf(ne.e),Ae=bf(et.g),ie=bf(ue.e),Ve=bf(At.g),cw(e,i,Pe),u=ie,p=0,L=u.length;pp?new xg((cl(),Vw),n,t,d-p):d>0&&p>0&&(new xg((cl(),Vw),t,n,0),new xg(Vw,n,t,0))),u)}function eXe(e,t){var n,i,r,o,u,a;for(u=new Gg(new Pg(e.f.b).a);u.b;){if(o=g0(u),r=c(o.cd(),594),t==1){if(r.gf()!=(eo(),Gh)&&r.gf()!=Vh)continue}else if(r.gf()!=(eo(),ga)&&r.gf()!=Va)continue;switch(i=c(c(o.dd(),46).b,81),a=c(c(o.dd(),46).a,189),n=a.c,r.gf().g){case 2:i.g.c=e.e.a,i.g.b=g.Math.max(1,i.g.b+n);break;case 1:i.g.c=i.g.c+n,i.g.b=g.Math.max(1,i.g.b-n);break;case 4:i.g.d=e.e.b,i.g.a=g.Math.max(1,i.g.a+n);break;case 3:i.g.d=i.g.d+n,i.g.a=g.Math.max(1,i.g.a-n)}}}function D$t(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(a=oe(Qt,_n,25,t.b.c.length,15,1),d=oe(HG,_e,267,t.b.c.length,0,1),l=oe(nh,Ed,10,t.b.c.length,0,1),v=e.a,A=0,D=v.length;A0&&l[i]&&(L=Am(e.b,l[i],r)),N=g.Math.max(N,r.c.c.b+L);for(o=new q(p.e);o.a1)throw V(new St(BT));l||(o=zf(t,i.Kc().Pb()),u.Fc(o))}return Tre(e,Wce(e,t,n),u)}function x$t(e,t){var n,i,r,o;for(mIt(t.b.j),Di(Yc(new ht(null,new bt(t.d,16)),new R4e),new x4e),o=new q(t.d);o.ae.o.b||(n=qo(e,jt),a=t.d+t.a+(n.gc()-1)*u,a>e.o.b)))}function lH(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;if(u=e.e,l=t.e,u==0)return t;if(l==0)return e;if(o=e.d,a=t.d,o+a==2)return n=Xi(e.a[0],no),i=Xi(t.a[0],no),u==l?(p=xr(n,i),L=tn(p),D=tn($p(p,32)),D==0?new ld(u,L):new km(u,2,U(G(Qt,1),_n,25,15,[L,D]))):DI(u<0?P1(i,n):P1(n,i));if(u==l)A=u,v=o>=a?C$(e.a,o,t.a,a):C$(t.a,a,e.a,o);else{if(r=o!=a?o>a?1:-1:Hre(e.a,t.a,o),r==0)return T1(),t4;r==1?(A=u,v=P$(e.a,o,t.a,a)):(A=l,v=P$(t.a,a,e.a,o))}return d=new km(A,v.length,v),R5(d),d}function fH(e,t,n,i,r,o,u){var a,l,d,p,v,A,D;return v=Be(Fe(B(t,(Oe(),fbe)))),A=null,o==(Zr(),Os)&&i.c.i==n?A=i.c:o==Fc&&i.d.i==n&&(A=i.d),d=u,!d||!v||A?(p=(Ie(),Vo),A?p=A.j:Tm(c(B(n,ji),98))&&(p=o==Os?Mt:jt),l=B$t(e,t,n,o,p,i),a=E$((Nr(n),i)),o==Os?(Rr(a,c(Ne(l.j,0),11)),br(a,r)):(Rr(a,r),br(a,c(Ne(l.j,0),11))),d=new vHe(i,a,l,c(B(l,(ye(),Hn)),11),o,!A)):(Ee(d.e,i),D=g.Math.max(ge(Te(B(d.d,Id))),ge(Te(B(i,Id)))),pe(d.d,Id,D)),it(e.a,i,new c8(d.d,t,o)),d}function oD(e,t){var n,i,r,o,u,a,l,d,p,v;if(p=null,e.d&&(p=c(mc(e.d,t),138)),!p){if(o=e.a.Mh(),v=o.i,!e.d||KS(e.d)!=v){for(l=new en,e.d&&G5(l,e.d),d=l.f.c+l.g.c,a=d;a0?(D=(L-1)*n,a&&(D+=i),p&&(D+=i),D=e.b[r+1])r+=2;else if(n0)for(i=new ps(c(Vn(e.a,o),21)),st(),cr(i,new _Q(t)),r=new _r(o.b,0);r.bbe)?(l=2,u=Fn):l==0?(l=1,u=Ae):(l=0,u=Ae)):(D=Ae>=u||u-Ae0?1:Wb(isNaN(i),isNaN(0)))>=0^(Na(Mf),(g.Math.abs(a)<=Mf||a==0||isNaN(a)&&isNaN(0)?0:a<0?-1:a>0?1:Wb(isNaN(a),isNaN(0)))>=0)?g.Math.max(a,i):(Na(Mf),(g.Math.abs(i)<=Mf||i==0||isNaN(i)&&isNaN(0)?0:i<0?-1:i>0?1:Wb(isNaN(i),isNaN(0)))>0?g.Math.sqrt(a*a+i*i):-g.Math.sqrt(a*a+i*i))}function eb(e,t){var n,i,r,o,u,a;if(t){if(!e.a&&(e.a=new WA),e.e==2){UA(e.a,t);return}if(t.e==1){for(r=0;r=Vr?co(n,foe(i)):S_(n,i&Ni),u=new ZB(10,null,0),CSt(e.a,u,a-1)):(n=(u.bm().length+o,new FS),co(n,u.bm())),t.e==0?(i=t._l(),i>=Vr?co(n,foe(i)):S_(n,i&Ni)):co(n,t.bm()),c(u,521).b=n.a}}function uXe(e){var t,n,i,r,o;return e.g!=null?e.g:e.a<32?(e.g=lHt(ns(e.f),xi(e.e)),e.g):(r=yH((!e.c&&(e.c=SI(e.f)),e.c),0),e.e==0?r:(t=(!e.c&&(e.c=SI(e.f)),e.c).e<0?2:1,n=r.length,i=-e.e+n-t,o=new n1,o.a+=""+r,e.e>0&&i>=-6?i>=0?qC(o,n-xi(e.e),"."):(o.a=fu(o.a,0,t-1)+"0."+wC(o.a,t-1),qC(o,t+1,pf(db,0,-xi(i)-1))):(n-t>=1&&(qC(o,t,"."),++n),qC(o,n,"E"),i>0&&qC(o,++n,"+"),qC(o,++n,""+P5(ns(i)))),e.g=o.a,e.g))}function Q$t(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(!n.dc()){for(a=0,A=0,i=n.Kc(),L=c(i.Pb(),19).a;a1&&(l=d.mg(l,e.a,a));return l.c.length==1?c(Ne(l,l.c.length-1),220):l.c.length==2?K$t((pt(0,l.c.length),c(l.c[0],220)),(pt(1,l.c.length),c(l.c[1],220)),u,o):null}function aXe(e){var t,n,i,r,o,u;for(Zc(e.a,new L2e),n=new q(e.a);n.a=g.Math.abs(i.b)?(i.b=0,o.d+o.a>u.d&&o.du.c&&o.c0){if(t=new iee(e.i,e.g),n=e.i,o=n<100?null:new i1(n),e.ij())for(i=0;i0){for(a=e.g,d=e.i,B5(e),o=d<100?null:new i1(d),i=0;i>13|(e.m&15)<<9,r=e.m>>4&8191,o=e.m>>17|(e.h&255)<<5,u=(e.h&1048320)>>8,a=t.l&8191,l=t.l>>13|(t.m&15)<<9,d=t.m>>4&8191,p=t.m>>17|(t.h&255)<<5,v=(t.h&1048320)>>8,Ve=n*a,et=i*a,At=r*a,Ot=o*a,Jt=u*a,l!=0&&(et+=n*l,At+=i*l,Ot+=r*l,Jt+=o*l),d!=0&&(At+=n*d,Ot+=i*d,Jt+=r*d),p!=0&&(Ot+=n*p,Jt+=i*p),v!=0&&(Jt+=n*v),D=Ve&qs,L=(et&511)<<13,A=D+L,z=Ve>>22,Y=et>>9,ie=(At&262143)<<4,ne=(Ot&31)<<17,N=z+Y+ie+ne,be=At>>18,Pe=Ot>>5,Ae=(Jt&4095)<<8,ue=be+Pe+Ae,N+=A>>22,A&=qs,ue+=N>>22,N&=qs,ue&=Kh,Bc(A,N,ue)}function lXe(e){var t,n,i,r,o,u,a;if(a=c(Ne(e.j,0),11),a.g.c.length!=0&&a.e.c.length!=0)throw V(new Ao("Interactive layout does not support NORTH/SOUTH ports with incoming _and_ outgoing edges."));if(a.g.c.length!=0){for(o=Ii,n=new q(a.g);n.a4)if(e.wj(t)){if(e.rk()){if(r=c(t,49),i=r.Ug(),l=i==e.e&&(e.Dk()?r.Og(r.Vg(),e.zk())==e.Ak():-1-r.Vg()==e.aj()),e.Ek()&&!l&&!i&&r.Zg()){for(o=0;o0&&(d=e.n.a/o);break;case 2:case 4:r=e.i.o.b,r>0&&(d=e.n.b/r)}pe(e,(ye(),J0),d)}if(l=e.o,u=e.a,i)u.a=i.a,u.b=i.b,e.d=!0;else if(t!=Xl&&t!=Y1&&a!=Vo)switch(a.g){case 1:u.a=l.a/2;break;case 2:u.a=l.a,u.b=l.b/2;break;case 3:u.a=l.a/2,u.b=l.b;break;case 4:u.b=l.b/2}else u.a=l.a/2,u.b=l.b/2}function C6(e){var t,n,i,r,o,u,a,l,d,p;if(e.ej())if(p=e.Vi(),l=e.fj(),p>0)if(t=new bre(e.Gi()),n=p,o=n<100?null:new i1(n),SC(e,n,t.g),r=n==1?e.Zi(4,ee(t,0),null,0,l):e.Zi(6,t,null,-1,l),e.bj()){for(i=new $t(t);i.e!=i.i.gc();)o=e.dj(Vt(i),o);o?(o.Ei(r),o.Fi()):e.$i(r)}else o?(o.Ei(r),o.Fi()):e.$i(r);else SC(e,e.Vi(),e.Wi()),e.$i(e.Zi(6,(st(),Qr),null,-1,l));else if(e.bj())if(p=e.Vi(),p>0){for(a=e.Wi(),d=p,SC(e,p,a),o=d<100?null:new i1(d),i=0;ie.d[u.p]&&(n+=die(e.b,o)*c(l.b,19).a,w1(e.a,Ce(o)));for(;!xS(e.a);)zie(e.b,c(Qy(e.a),19).a)}return n}function lKt(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;for(v=new go(c(Ke(e,(N7(),Rpe)),8)),v.a=g.Math.max(v.a-n.b-n.c,0),v.b=g.Math.max(v.b-n.d-n.a,0),r=Te(Ke(e,Ope)),(r==null||(yt(r),r<=0))&&(r=1.3),a=new Se,L=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));L.e!=L.i.gc();)D=c(Vt(L),33),u=new KDe(D),a.c[a.c.length]=u;switch(A=c(Ke(e,KW),311),A.g){case 3:z=DBt(a,t,v.a,v.b,(d=i,yt(r),d));break;case 1:z=r$t(a,t,v.a,v.b,(p=i,yt(r),p));break;default:z=dKt(a,t,v.a,v.b,(l=i,yt(r),l))}o=new TO(z),N=mH(o,t,n,v.a,v.b,i,(yt(r),r)),k0(e,N.a,N.b,!1,!0)}function fKt(e,t){var n,i,r,o;n=t.b,o=new ps(n.j),r=0,i=n.j,i.c=oe(xt,xe,1,0,5,1),n0(c(qg(e.b,(Ie(),_t),(m0(),U0)),15),n),r=xI(o,r,new f4e,i),n0(c(qg(e.b,_t,$1),15),n),r=xI(o,r,new l4e,i),n0(c(qg(e.b,_t,G0),15),n),n0(c(qg(e.b,jt,U0),15),n),n0(c(qg(e.b,jt,$1),15),n),r=xI(o,r,new h4e,i),n0(c(qg(e.b,jt,G0),15),n),n0(c(qg(e.b,Yt,U0),15),n),r=xI(o,r,new d4e,i),n0(c(qg(e.b,Yt,$1),15),n),r=xI(o,r,new g4e,i),n0(c(qg(e.b,Yt,G0),15),n),n0(c(qg(e.b,Mt,U0),15),n),r=xI(o,r,new M4e,i),n0(c(qg(e.b,Mt,$1),15),n),n0(c(qg(e.b,Mt,G0),15),n)}function hKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(Wt(t,"Layer size calculation",1),p=Ii,d=$i,r=!1,a=new q(e.b);a.a.5?Y-=u*2*(L-.5):L<.5&&(Y+=o*2*(.5-L)),r=a.d.b,Yz.a-N-p&&(Y=z.a-N-p),a.n.a=t+Y}}function dKt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z;for(a=oe(gr,lo,25,e.c.length,15,1),A=new I8(new c6e),nce(A,e),d=0,N=new Se;A.b.c.length!=0;)if(u=c(A.b.c.length==0?null:Ne(A.b,0),157),d>1&&ws(u)*eu(u)/2>a[0]){for(o=0;oa[o];)++o;L=new Hf(N,0,o+1),v=new TO(L),p=ws(u)/eu(u),l=mH(v,t,new Ry,n,i,r,p),Wn(ol(v.e),l),R_(wE(A,v)),D=new Hf(N,o+1,N.c.length),nce(A,D),N.c=oe(xt,xe,1,0,5,1),d=0,$Re(a,a.length,0)}else z=A.b.c.length==0?null:Ne(A.b,0),z!=null&&Y$(A,0),d>0&&(a[d]=a[d-1]),a[d]+=ws(u)*eu(u),++d,N.c[N.c.length]=u;return N}function gKt(e){var t,n,i,r,o;if(i=c(B(e,(Oe(),zc)),163),i==(Ku(),K1)){for(n=new Kt(Ht(ko(e).a.Kc(),new j));dn(n);)if(t=c(rn(n),17),!JFe(t))throw V(new ym(Cz+LI(e)+"' has its layer constraint set to FIRST_SEPARATE, but has at least one incoming edge. FIRST_SEPARATE nodes must not have incoming edges."))}else if(i==xw){for(o=new Kt(Ht(Vi(e).a.Kc(),new j));dn(o);)if(r=c(rn(o),17),!JFe(r))throw V(new ym(Cz+LI(e)+"' has its layer constraint set to LAST_SEPARATE, but has at least one outgoing edge. LAST_SEPARATE nodes must not have outgoing edges."))}}function bKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;for(Wt(t,"Label dummy removal",1),i=ge(Te(B(e,(Oe(),Z2)))),r=ge(Te(B(e,Hw))),d=c(B(e,Pu),103),l=new q(e.b);l.a0&&wGe(e,a,v);for(r=new q(v);r.a>19!=0&&(t=Z_(t),l=!l),u=gLt(t),o=!1,r=!1,i=!1,e.h==bT&&e.m==0&&e.l==0)if(r=!0,o=!0,u==-1)e=D7e((F_(),che)),i=!0,l=!l;else return a=vse(e,u),l&&oK(a),n&&(L1=Bc(0,0,0)),a;else e.h>>19!=0&&(o=!0,e=Z_(e),i=!0,l=!l);return u!=-1?tjt(e,u,l,o,n):lce(e,t)<0?(n&&(o?L1=Z_(e):L1=Bc(e.l,e.m,e.h)),Bc(0,0,0)):oBt(i?e:Bc(e.l,e.m,e.h),t,l,o,r,n)}function cD(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;if(e.e&&e.c.ct.f||t.g>e.f)){for(n=0,i=0,u=e.w.a.ec().Kc();u.Ob();)r=c(u.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,t.g,t.f)&&++n;for(a=e.r.a.ec().Kc();a.Ob();)r=c(a.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,t.g,t.f)&&--n;for(l=t.w.a.ec().Kc();l.Ob();)r=c(l.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,e.g,e.f)&&++i;for(o=t.r.a.ec().Kc();o.Ob();)r=c(o.Pb(),11),wK(Ko(U(G(ir,1),we,8,0,[r.i.n,r.n,r.a])).b,e.g,e.f)&&--i;n=0)return r=PAt(e,t.substr(1,u-1)),p=t.substr(u+1,l-(u+1)),vHt(e,p,r)}else{if(n=-1,fhe==null&&(fhe=new RegExp("\\d")),fhe.test(String.fromCharCode(a))&&(n=wte(t,is(46),l-1),n>=0)){i=c(S$(e,H$e(e,t.substr(1,n-1)),!1),58),d=0;try{d=vu(t.substr(n+1),Ar,Fn)}catch(A){throw A=gi(A),Q(A,127)?(o=A,V(new mO(o))):V(A)}if(d=0)return n;switch(o0(wo(e,n))){case 2:{if(rt("",gd(e,n.Hj()).ne())){if(l=LC(wo(e,n)),a=C_(wo(e,n)),p=Cse(e,t,l,a),p)return p;for(r=Zse(e,t),u=0,v=r.gc();u1)throw V(new St(BT));for(p=qc(e.e.Tg(),t),i=c(e.g,119),u=0;u1,d=new Rl(A.b);Fo(d.a)||Fo(d.b);)l=c(Fo(d.a)?K(d.a):K(d.b),17),v=l.c==A?l.d:l.c,g.Math.abs(Ko(U(G(ir,1),we,8,0,[v.i.n,v.n,v.a])).b-u.b)>1&&mNt(e,l,u,o,A)}}function IKt(e){var t,n,i,r,o,u;if(r=new _r(e.e,0),i=new _r(e.a,0),e.d)for(n=0;ncV;){for(o=t,u=0;g.Math.abs(t-o)0),r.a.Xb(r.c=--r.b),zBt(e,e.b-u,o,i,r),Lt(r.b0),i.a.Xb(i.c=--i.b)}if(!e.d)for(n=0;n0?(e.f[p.p]=D/(p.e.c.length+p.g.c.length),e.c=g.Math.min(e.c,e.f[p.p]),e.b=g.Math.max(e.b,e.f[p.p])):a&&(e.f[p.p]=D)}}function jKt(e){e.b=null,e.bb=null,e.fb=null,e.qb=null,e.a=null,e.c=null,e.d=null,e.e=null,e.f=null,e.n=null,e.M=null,e.L=null,e.Q=null,e.R=null,e.K=null,e.db=null,e.eb=null,e.g=null,e.i=null,e.j=null,e.k=null,e.gb=null,e.o=null,e.p=null,e.q=null,e.r=null,e.$=null,e.ib=null,e.S=null,e.T=null,e.t=null,e.s=null,e.u=null,e.v=null,e.w=null,e.B=null,e.A=null,e.C=null,e.D=null,e.F=null,e.G=null,e.H=null,e.I=null,e.J=null,e.P=null,e.Z=null,e.U=null,e.V=null,e.W=null,e.X=null,e.Y=null,e._=null,e.ab=null,e.cb=null,e.hb=null,e.nb=null,e.lb=null,e.mb=null,e.ob=null,e.pb=null,e.jb=null,e.kb=null,e.N=!1,e.O=!1}function AKt(e,t,n){var i,r,o,u;for(Wt(n,"Graph transformation ("+e.a+")",1),u=a0(t.a),o=new q(t.b);o.a0&&(e.a=l+(D-1)*o,t.c.b+=e.a,t.f.b+=e.a)),L.a.gc()!=0&&(A=new DB(1,o),D=Mue(A,t,L,N,t.f.b+l-t.c.b),D>0&&(t.f.b+=l+(D-1)*o))}function jE(e,t){var n,i,r,o;o=e.F,t==null?(e.F=null,nE(e,null)):(e.F=(yt(t),t),i=af(t,is(60)),i!=-1?(r=t.substr(0,i),af(t,is(46))==-1&&!rt(r,M2)&&!rt(r,Q6)&&!rt(r,ck)&&!rt(r,Z6)&&!rt(r,eP)&&!rt(r,tP)&&!rt(r,nP)&&!rt(r,iP)&&(r=ett),n=Y9(t,is(62)),n!=-1&&(r+=""+t.substr(n+1)),nE(e,r)):(r=t,af(t,is(46))==-1&&(i=af(t,is(91)),i!=-1&&(r=t.substr(0,i)),!rt(r,M2)&&!rt(r,Q6)&&!rt(r,ck)&&!rt(r,Z6)&&!rt(r,eP)&&!rt(r,tP)&&!rt(r,nP)&&!rt(r,iP)?(r=ett,i!=-1&&(r+=""+t.substr(i))):r=t),nE(e,r),r==t&&(e.F=e.D))),(e.Db&4)!=0&&(e.Db&1)==0&&Bn(e,new sr(e,1,5,o,t))}function DKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;if(N=t.b.c.length,!(N<3)){for(D=oe(Qt,_n,25,N,15,1),v=0,p=new q(t.b);p.au)&&Yi(e.b,c(z.b,17));++a}o=u}}}function Eue(e,t){var n;if(t==null||rt(t,rs)||t.length==0&&e.k!=(yd(),t3))return null;switch(e.k.g){case 1:return b7(t,GE)?(Pt(),ZE):b7(t,_V)?(Pt(),hb):null;case 2:try{return Ce(vu(t,Ar,Fn))}catch(i){if(i=gi(i),Q(i,127))return null;throw V(i)}case 4:try{return aw(t)}catch(i){if(i=gi(i),Q(i,127))return null;throw V(i)}case 3:return t;case 5:return Xqe(e),nUe(e,t);case 6:return Xqe(e),qxt(e,e.a,t);case 7:try{return n=ext(e),n.Jf(t),n}catch(i){if(i=gi(i),Q(i,32))return null;throw V(i)}default:throw V(new Ao("Invalid type set for this layout option."))}}function kKt(e){K5();var t,n,i,r,o,u,a;for(a=new IAe,n=new q(e);n.a=a.b.c)&&(a.b=t),(!a.c||t.c<=a.c.c)&&(a.d=a.c,a.c=t),(!a.e||t.d>=a.e.d)&&(a.e=t),(!a.f||t.d<=a.f.d)&&(a.f=t);return i=new v7((Q_(),V0)),zC(e,crt,new Js(U(G(QT,1),xe,369,0,[i]))),u=new v7(Ow),zC(e,ort,new Js(U(G(QT,1),xe,369,0,[u]))),r=new v7(Aw),zC(e,rrt,new Js(U(G(QT,1),xe,369,0,[r]))),o=new v7(Pv),zC(e,irt,new Js(U(G(QT,1),xe,369,0,[o]))),Nq(i.c,V0),Nq(r.c,Aw),Nq(o.c,Pv),Nq(u.c,Ow),a.a.c=oe(xt,xe,1,0,5,1),Hi(a.a,i.c),Hi(a.a,Kg(r.c)),Hi(a.a,o.c),Hi(a.a,Kg(u.c)),a}function Sue(e){var t;switch(e.d){case 1:{if(e.hj())return e.o!=-2;break}case 2:{if(e.hj())return e.o==-2;break}case 3:case 5:case 4:case 6:case 7:return e.o>-2;default:return!1}switch(t=e.gj(),e.p){case 0:return t!=null&&Be(Fe(t))!=s5(e.k,0);case 1:return t!=null&&c(t,217).a!=tn(e.k)<<24>>24;case 2:return t!=null&&c(t,172).a!=(tn(e.k)&Ni);case 6:return t!=null&&s5(c(t,162).a,e.k);case 5:return t!=null&&c(t,19).a!=tn(e.k);case 7:return t!=null&&c(t,184).a!=tn(e.k)<<16>>16;case 3:return t!=null&&ge(Te(t))!=e.j;case 4:return t!=null&&c(t,155).a!=e.j;default:return t==null?e.n!=null:!$n(t,e.n)}}function sT(e,t,n){var i,r,o,u;return e.Fk()&&e.Ek()&&(u=PB(e,c(n,56)),le(u)!==le(n))?(e.Oi(t),e.Ui(t,zBe(e,t,u)),e.rk()&&(o=(r=c(n,49),e.Dk()?e.Bk()?r.ih(e.b,Xr(c(at(Xc(e.b),e.aj()),18)).n,c(at(Xc(e.b),e.aj()).Yj(),26).Bj(),null):r.ih(e.b,di(r.Tg(),Xr(c(at(Xc(e.b),e.aj()),18))),null,null):r.ih(e.b,-1-e.aj(),null,null)),!c(u,49).eh()&&(o=(i=c(u,49),e.Dk()?e.Bk()?i.gh(e.b,Xr(c(at(Xc(e.b),e.aj()),18)).n,c(at(Xc(e.b),e.aj()).Yj(),26).Bj(),o):i.gh(e.b,di(i.Tg(),Xr(c(at(Xc(e.b),e.aj()),18))),null,o):i.gh(e.b,-1-e.aj(),null,o))),o&&o.Fi()),Qs(e.b)&&e.$i(e.Zi(9,n,u,t,!1)),u):n}function gXe(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;for(p=ge(Te(B(e,(Oe(),tp)))),i=ge(Te(B(e,Ebe))),A=new yN,pe(A,tp,p+i),d=t,Y=d.d,N=d.c.i,ie=d.d.i,z=uee(N.c),ne=uee(ie.c),r=new Se,v=z;v<=ne;v++)a=new Nh(e),Sg(a,(Dt(),ur)),pe(a,(ye(),Hn),d),pe(a,ji,(wr(),Ic)),pe(a,KR,A),D=c(Ne(e.b,v),29),v==z?cw(a,D.a.c.length-n,D):po(a,D),ue=ge(Te(B(d,Id))),ue<0&&(ue=0,pe(d,Id,ue)),a.o.b=ue,L=g.Math.floor(ue/2),u=new gc,Ji(u,(Ie(),Mt)),Bo(u,a),u.n.b=L,l=new gc,Ji(l,jt),Bo(l,a),l.n.b=L,br(d,u),o=new c0,Mo(o,d),pe(o,yo,null),Rr(o,l),br(o,Y),LOt(a,d,o),r.c[r.c.length]=o,d=o;return r}function gH(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;for(l=c(vd(e,(Ie(),Mt)).Kc().Pb(),11).e,D=c(vd(e,jt).Kc().Pb(),11).g,a=l.c.length,ne=Ol(c(Ne(e.j,0),11));a-- >0;){for(N=(pt(0,l.c.length),c(l.c[0],17)),r=(pt(0,D.c.length),c(D.c[0],17)),ie=r.d.e,o=Do(ie,r,0),$Pt(N,r.d,o),Rr(r,null),br(r,null),L=N.a,t&&Cn(L,new go(ne)),i=Mn(r.a,0);i.b!=i.d.c;)n=c(Pn(i),8),Cn(L,new go(n));for(Y=N.b,A=new q(r.b);A.a0&&(u=g.Math.max(u,qKe(e.C.b+i.d.b,r))),p=i,v=r,A=o;e.C&&e.C.c>0&&(D=A+e.C.c,d&&(D+=p.d.c),u=g.Math.max(u,(Il(),Na(ql),g.Math.abs(v-1)<=ql||v==1||isNaN(v)&&isNaN(1)?0:D/(1-v)))),n.n.b=0,n.a.a=u}function pXe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D;if(n=c(so(e.b,t),124),l=c(c(Vn(e.r,t),21),84),l.dc()){n.n.d=0,n.n.a=0;return}for(d=e.u.Hc((js(),Wh)),u=0,e.A.Hc((ou(),Cb))&&YWe(e,t),a=l.Kc(),p=null,A=0,v=0;a.Ob();)i=c(a.Pb(),111),o=ge(Te(i.b.We((X9(),Rk)))),r=i.b.rf().b,p?(D=v+p.d.a+e.w+i.d.d,u=g.Math.max(u,(Il(),Na(ql),g.Math.abs(A-o)<=ql||A==o||isNaN(A)&&isNaN(o)?0:D/(o-A)))):e.C&&e.C.d>0&&(u=g.Math.max(u,qKe(e.C.d+i.d.d,o))),p=i,A=o,v=r;e.C&&e.C.a>0&&(D=v+e.C.a,d&&(D+=p.d.a),u=g.Math.max(u,(Il(),Na(ql),g.Math.abs(A-1)<=ql||A==1||isNaN(A)&&isNaN(1)?0:D/(1-A)))),n.n.d=0,n.a.b=u}function wXe(e,t,n){var i,r,o,u,a,l;for(this.g=e,a=t.d.length,l=n.d.length,this.d=oe(nh,Ed,10,a+l,0,1),u=0;u0?K$(this,this.f/this.a):Tl(t.g,t.d[0]).a!=null&&Tl(n.g,n.d[0]).a!=null?K$(this,(ge(Tl(t.g,t.d[0]).a)+ge(Tl(n.g,n.d[0]).a))/2):Tl(t.g,t.d[0]).a!=null?K$(this,Tl(t.g,t.d[0]).a):Tl(n.g,n.d[0]).a!=null&&K$(this,Tl(n.g,n.d[0]).a)}function RKt(e,t){var n,i,r,o,u,a,l,d,p,v;for(e.a=new Mxe(aTt(WP)),i=new q(t.a);i.a=1&&(z-u>0&&v>=0?(l.n.a+=N,l.n.b+=o*u):z-u<0&&p>=0&&(l.n.a+=N*z,l.n.b+=o));e.o.a=t.a,e.o.b=t.b,pe(e,(Oe(),wb),(ou(),i=c(rl(tM),9),new ku(i,c(Da(i,i.length),9),0)))}function FKt(e,t,n,i,r,o){var u;if(!(t==null||!OK(t,ime,rme)))throw V(new St("invalid scheme: "+t));if(!e&&!(n!=null&&af(n,is(35))==-1&&n.length>0&&(fn(0,n.length),n.charCodeAt(0)!=47)))throw V(new St("invalid opaquePart: "+n));if(e&&!(t!=null&&ZM(Bx,t.toLowerCase()))&&!(n==null||!OK(n,oM,cM)))throw V(new St(Ket+n));if(e&&t!=null&&ZM(Bx,t.toLowerCase())&&!O7t(n))throw V(new St(Ket+n));if(!xAt(i))throw V(new St("invalid device: "+i));if(!Tjt(r))throw u=r==null?"invalid segments: null":"invalid segment: "+Pjt(r),V(new St(u));if(!(o==null||af(o,is(35))==-1))throw V(new St("invalid query: "+o))}function BKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;for(Wt(t,"Calculate Graph Size",1),t.n&&e&&Ra(t,xa(e),(ru(),Tu)),a=$E,l=$E,o=Ule,u=Ule,v=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));v.e!=v.i.gc();)d=c(Vt(v),33),L=d.i,N=d.j,Y=d.g,i=d.f,r=c(Ke(d,(kn(),Dj)),142),a=g.Math.min(a,L-r.b),l=g.Math.min(l,N-r.d),o=g.Math.max(o,L+Y+r.c),u=g.Math.max(u,N+i+r.a);for(D=c(Ke(e,(kn(),Sb)),116),A=new $e(a-D.b,l-D.d),p=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));p.e!=p.i.gc();)d=c(Vt(p),33),es(d,d.i-A.a),ts(d,d.j-A.b);z=o-a+(D.b+D.c),n=u-l+(D.d+D.a),p0(e,z),b0(e,n),t.n&&e&&Ra(t,xa(e),(ru(),Tu))}function yXe(e){var t,n,i,r,o,u,a,l,d,p;for(i=new Se,u=new q(e.e.a);u.a0){y7(e,n,0),n.a+=String.fromCharCode(i),r=P9t(t,o),y7(e,n,r),o+=r-1;continue}i==39?o+11)for(N=oe(Qt,_n,25,e.b.b.c.length,15,1),v=0,d=new q(e.b.b);d.a=a&&r<=l)a<=r&&o<=l?(n[p++]=r,n[p++]=o,i+=2):a<=r?(n[p++]=r,n[p++]=l,e.b[i]=l+1,u+=2):o<=l?(n[p++]=a,n[p++]=o,i+=2):(n[p++]=a,n[p++]=l,e.b[i]=l+1);else if(lA1)&&a<10);lZ(e.c,new n3e),_Xe(e),TSt(e.c),LKt(e.f)}function HKt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(Be(Fe(B(n,(Oe(),Bw)))))for(a=new q(n.j);a.a=2){for(l=Mn(n,0),u=c(Pn(l),8),a=c(Pn(l),8);a.a0&&vI(d,!0,(eo(),Va)),a.k==(Dt(),Bi)&&Wxe(d),Kn(e.f,a,t)}}function UKt(e,t,n){var i,r,o,u,a,l,d,p,v,A;switch(Wt(n,"Node promotion heuristic",1),e.g=t,Zqt(e),e.q=c(B(t,(Oe(),FU)),260),p=c(B(e.g,ube),19).a,o=new K_e,e.q.g){case 2:case 1:TE(e,o);break;case 3:for(e.q=(iv(),WR),TE(e,o),l=0,a=new q(e.a);a.ae.j&&(e.q=gj,TE(e,o));break;case 4:for(e.q=(iv(),WR),TE(e,o),d=0,r=new q(e.b);r.ae.k&&(e.q=bj,TE(e,o));break;case 6:A=xi(g.Math.ceil(e.f.length*p/100)),TE(e,new iTe(A));break;case 5:v=xi(g.Math.ceil(e.d*p/100)),TE(e,new rTe(v));break;default:TE(e,o)}$Nt(e,t),qt(n)}function SXe(e,t,n){var i,r,o,u;this.j=e,this.e=Ice(e),this.o=this.j.e,this.i=!!this.o,this.p=this.i?c(Ne(n,Nr(this.o).p),214):null,r=c(B(e,(ye(),Cc)),21),this.g=r.Hc((to(),Gu)),this.b=new Se,this.d=new VHe(this.e),u=c(B(this.j,Y2),230),this.q=MTt(t,u,this.e),this.k=new GLe(this),o=kl(U(G(Trt,1),xe,225,0,[this,this.d,this.k,this.q])),t==(w0(),wj)&&!Be(Fe(B(e,(Oe(),Lw))))?(i=new jce(this.e),o.c[o.c.length]=i,this.c=new rie(i,u,c(this.q,402))):t==wj&&Be(Fe(B(e,(Oe(),Lw))))?(i=new jce(this.e),o.c[o.c.length]=i,this.c=new TKe(i,u,c(this.q,402))):this.c=new COe(t,this),Ee(o,this.c),rXe(o,this.e),this.s=jHt(this.k)}function WKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;for(v=c(G9((u=Mn(new t1(t).a.d,0),new Dy(u))),86),L=v?c(B(v,(ic(),bW)),86):null,r=1;v&&L;){for(l=0,ue=0,n=v,i=L,a=0;a=e.i?(++e.i,Ee(e.a,Ce(1)),Ee(e.b,p)):(i=e.c[t.p][1],Lu(e.a,d,Ce(c(Ne(e.a,d),19).a+1-i)),Lu(e.b,d,ge(Te(Ne(e.b,d)))+p-i*e.e)),(e.q==(iv(),gj)&&(c(Ne(e.a,d),19).a>e.j||c(Ne(e.a,d-1),19).a>e.j)||e.q==bj&&(ge(Te(Ne(e.b,d)))>e.k||ge(Te(Ne(e.b,d-1)))>e.k))&&(l=!1),u=new Kt(Ht(ko(t).a.Kc(),new j));dn(u);)o=c(rn(u),17),a=o.c.i,e.f[a.p]==d&&(v=PXe(e,a),r=r+c(v.a,19).a,l=l&&Be(Fe(v.b)));return e.f[t.p]=d,r=r+e.c[t.p][0],new yr(Ce(r),(Pt(),!!l))}function Mue(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y;for(v=new en,u=new Se,GGe(e,n,e.d.fg(),u,v),GGe(e,i,e.d.gg(),u,v),e.b=.2*(N=xUe($o(new ht(null,new bt(u,16)),new YSe)),z=xUe($o(new ht(null,new bt(u,16)),new XSe)),g.Math.min(N,z)),o=0,a=0;a=2&&(Y=iWe(u,!0,A),!e.e&&(e.e=new sje(e)),C9t(e.e,Y,u,e.b)),NVe(u,A),lqt(u),D=-1,p=new q(u);p.aa)}function XKt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N;for(n=c(B(e,(Oe(),ji)),98),u=e.f,o=e.d,a=u.a+o.b+o.c,l=0-o.d-e.c.b,p=u.b+o.d+o.a-e.c.b,d=new Se,v=new Se,r=new q(t);r.a0),c(p.a.Xb(p.c=--p.b),17));o!=i&&p.b>0;)e.a[o.p]=!0,e.a[i.p]=!0,o=(Lt(p.b>0),c(p.a.Xb(p.c=--p.b),17));p.b>0&&nu(p)}}function TXe(e,t,n){var i,r,o,u,a,l,d,p,v;if(e.a!=t.Aj())throw V(new St(UE+t.ne()+K0));if(i=gd((vs(),Ir),t).$k(),i)return i.Aj().Nh().Ih(i,n);if(u=gd(Ir,t).al(),u){if(n==null)return null;if(a=c(n,15),a.dc())return"";for(v=new nd,o=a.Kc();o.Ob();)r=o.Pb(),co(v,u.Aj().Nh().Ih(u,r)),v.a+=" ";return xF(v,v.a.length-1)}if(p=gd(Ir,t).bl(),!p.dc()){for(d=p.Kc();d.Ob();)if(l=c(d.Pb(),148),l.wj(n))try{if(v=l.Aj().Nh().Ih(l,n),v!=null)return v}catch(A){if(A=gi(A),!Q(A,102))throw V(A)}throw V(new St("Invalid value: '"+n+"' for datatype :"+t.ne()))}return c(t,834).Fj(),n==null?null:Q(n,172)?""+c(n,172).a:Fs(n)==Mk?nDe(rM[0],c(n,199)):Ro(n)}function nqt(e){var t,n,i,r,o,u,a,l,d,p;for(d=new wi,a=new wi,o=new q(e);o.a-1){for(r=Mn(a,0);r.b!=r.d.c;)i=c(Pn(r),128),i.v=u;for(;a.b!=0;)for(i=c(uq(a,0),128),n=new q(i.i);n.a0&&(n+=l.n.a+l.o.a/2,++v),L=new q(l.j);L.a0&&(n/=v),Y=oe(gr,lo,25,i.a.c.length,15,1),a=0,d=new q(i.a);d.a=a&&r<=l)a<=r&&o<=l?i+=2:a<=r?(e.b[i]=l+1,u+=2):o<=l?(n[p++]=r,n[p++]=a-1,i+=2):(n[p++]=r,n[p++]=a-1,e.b[i]=l+1,u+=2);else if(l0?r-=864e5:r+=864e5,l=new Jee(xr(ns(t.q.getTime()),r))),p=new _m,d=e.a.length,o=0;o=97&&i<=122||i>=65&&i<=90){for(u=o+1;u=d)throw V(new St("Missing trailing '"));u+10&&n.c==0&&(!t&&(t=new Se),t.c[t.c.length]=n);if(t)for(;t.c.length!=0;){if(n=c(ad(t,0),233),n.b&&n.b.c.length>0){for(o=(!n.b&&(n.b=new Se),new q(n.b));o.aDo(e,n,0))return new yr(r,n)}else if(ge(Tl(r.g,r.d[0]).a)>ge(Tl(n.g,n.d[0]).a))return new yr(r,n)}for(a=(!n.e&&(n.e=new Se),n.e).Kc();a.Ob();)u=c(a.Pb(),233),l=(!u.b&&(u.b=new Se),u.b),Vp(0,l.c.length),WS(l.c,0,n),u.c==l.c.length&&(t.c[t.c.length]=u)}return null}function kXe(e,t){var n,i,r,o,u,a,l,d,p;if(e==null)return rs;if(l=t.a.zc(e,t),l!=null)return"[...]";for(n=new Hg(zr,"[","]"),r=e,o=0,u=r.length;o=14&&p<=16))?t.a._b(i)?(n.a?wn(n.a,n.b):n.a=new lu(n.d),a5(n.a,"[...]")):(a=$g(i),d=new _5(t),jh(n,kXe(a,d))):Q(i,177)?jh(n,Zkt(c(i,177))):Q(i,190)?jh(n,q7t(c(i,190))):Q(i,195)?jh(n,QDt(c(i,195))):Q(i,2012)?jh(n,H7t(c(i,2012))):Q(i,48)?jh(n,Qkt(c(i,48))):Q(i,364)?jh(n,hRt(c(i,364))):Q(i,832)?jh(n,Jkt(c(i,832))):Q(i,104)&&jh(n,Xkt(c(i,104))):jh(n,i==null?rs:Ro(i));return n.a?n.e.length==0?n.a.a:n.a.a+(""+n.e):n.c}function RXe(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;for(a=rv(t,!1,!1),Y=HI(a),i&&(Y=_I(Y)),ne=ge(Te(Ke(t,(o6(),TG)))),z=(Lt(Y.b!=0),c(Y.a.a.c,8)),v=c(hl(Y,1),8),Y.b>2?(p=new Se,Hi(p,new Hf(Y,1,Y.b)),o=dJe(p,ne+e.a),ie=new kq(o),Mo(ie,t),n.c[n.c.length]=ie):i?ie=c(Bt(e.b,Uf(t)),266):ie=c(Bt(e.b,M1(t)),266),l=Uf(t),i&&(l=M1(t)),u=mkt(z,l),d=ne+e.a,u.a?(d+=g.Math.abs(z.b-v.b),N=new $e(v.a,(v.b+z.b)/2)):(d+=g.Math.abs(z.a-v.a),N=new $e((v.a+z.a)/2,v.b)),i?Kn(e.d,t,new Xoe(ie,u,N,d)):Kn(e.c,t,new Xoe(ie,u,N,d)),Kn(e.b,t,ie),L=(!t.n&&(t.n=new Me(Lo,t,1,7)),t.n),D=new $t(L);D.e!=D.i.gc();)A=c(Vt(D),137),r=eT(e,A,!0,0,0),n.c[n.c.length]=r}function lqt(e){var t,n,i,r,o,u,a,l,d,p;for(d=new Se,a=new Se,u=new q(e);u.a-1){for(o=new q(a);o.a0)&&(iQ(l,g.Math.min(l.o,r.o-1)),FA(l,l.i-1),l.i==0&&(a.c[a.c.length]=l))}}function AE(e,t,n){var i,r,o,u,a,l,d;if(d=e.c,!t&&(t=ume),e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&(l=new sr(e,1,2,d,e.c),n?n.Ei(l):n=l),d!=t){if(Q(e.Cb,284))e.Db>>16==-10?n=c(e.Cb,284).nk(t,n):e.Db>>16==-15&&(!t&&(t=(ot(),Ql)),!d&&(d=(ot(),Ql)),e.Cb.nh()&&(l=new Ah(e.Cb,1,13,d,t,wd(Ns(c(e.Cb,59)),e),!1),n?n.Ei(l):n=l));else if(Q(e.Cb,88))e.Db>>16==-23&&(Q(t,88)||(t=(ot(),Ea)),Q(d,88)||(d=(ot(),Ea)),e.Cb.nh()&&(l=new Ah(e.Cb,1,10,d,t,wd(dc(c(e.Cb,26)),e),!1),n?n.Ei(l):n=l));else if(Q(e.Cb,444))for(a=c(e.Cb,836),u=(!a.b&&(a.b=new zA(new BN)),a.b),o=(i=new Gg(new Pg(u.a).a),new VA(i));o.a.b;)r=c(g0(o.a).cd(),87),n=AE(r,H7(r,a),n)}return n}function fqt(e,t){var n,i,r,o,u,a,l,d,p,v,A;for(u=Be(Fe(Ke(e,(Oe(),Bw)))),A=c(Ke(e,Kw),21),l=!1,d=!1,v=new $t((!e.c&&(e.c=new Me(Vs,e,9,9)),e.c));v.e!=v.i.gc()&&(!l||!d);){for(o=c(Vt(v),118),a=0,r=d1(Ll(U(G(zl,1),xe,20,0,[(!o.d&&(o.d=new dt(rr,o,8,5)),o.d),(!o.e&&(o.e=new dt(rr,o,7,4)),o.e)])));dn(r)&&(i=c(rn(r),79),p=u&&T0(i)&&Be(Fe(Ke(i,pb))),n=fXe((!i.b&&(i.b=new dt(Ut,i,4,7)),i.b),o)?e==yi(Co(c(ee((!i.c&&(i.c=new dt(Ut,i,5,8)),i.c),0),82))):e==yi(Co(c(ee((!i.b&&(i.b=new dt(Ut,i,4,7)),i.b),0),82))),!((p||n)&&(++a,a>1))););(a>0||A.Hc((js(),Wh))&&(!o.n&&(o.n=new Me(Lo,o,1,7)),o.n).i>0)&&(l=!0),a>1&&(d=!0)}l&&t.Fc((to(),Gu)),d&&t.Fc((to(),mP))}function xXe(e){var t,n,i,r,o,u,a,l,d,p,v,A;if(A=c(Ke(e,(kn(),Eb)),21),A.dc())return null;if(a=0,u=0,A.Hc((ou(),$j))){for(p=c(Ke(e,UP),98),i=2,n=2,r=2,o=2,t=yi(e)?c(Ke(yi(e),rp),103):c(Ke(e,rp),103),d=new $t((!e.c&&(e.c=new Me(Vs,e,9,9)),e.c));d.e!=d.i.gc();)if(l=c(Vt(d),118),v=c(Ke(l,Gv),61),v==(Ie(),Vo)&&(v=lue(l,t),ao(l,Gv,v)),p==(wr(),Ic))switch(v.g){case 1:i=g.Math.max(i,l.i+l.g);break;case 2:n=g.Math.max(n,l.j+l.f);break;case 3:r=g.Math.max(r,l.i+l.g);break;case 4:o=g.Math.max(o,l.j+l.f)}else switch(v.g){case 1:i+=l.g+2;break;case 2:n+=l.f+2;break;case 3:r+=l.g+2;break;case 4:o+=l.f+2}a=g.Math.max(i,r),u=g.Math.max(n,o)}return k0(e,a,u,!0,!0)}function bH(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;for(ie=c(gu(CO(si(new ht(null,new bt(t.d,16)),new ITe(n)),new TTe(n)),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)]))),15),v=Fn,p=Ar,l=new q(t.b.j);l.a0,d?d&&(A=Y.p,u?++A:--A,v=c(Ne(Y.c.a,A),10),i=Cqe(v),D=!(Bq(i,Pe,n[0])||rxe(i,Pe,n[0]))):D=!0),L=!1,be=t.D.i,be&&be.c&&a.e&&(p=u&&be.p>0||!u&&be.p0&&(t.a+=zr),sD(c(Vt(a),160),t);for(t.a+=Sz,l=new Vy((!i.c&&(i.c=new dt(Ut,i,5,8)),i.c));l.e!=l.i.gc();)l.e>0&&(t.a+=zr),sD(c(Vt(l),160),t);t.a+=")"}}function wqt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D;if(o=c(B(e,(ye(),Hn)),79),!!o){for(i=e.a,r=new go(n),Wn(r,s7t(e)),Y_(e.d.i,e.c.i)?(A=e.c,v=Ko(U(G(ir,1),we,8,0,[A.n,A.a])),hr(v,n)):v=Ol(e.c),Ri(i,v,i.a,i.a.a),D=Ol(e.d),B(e,TU)!=null&&Wn(D,c(B(e,TU),8)),Ri(i,D,i.c.b,i.c),Qp(i,r),u=rv(o,!0,!0),RO(u,c(ee((!o.b&&(o.b=new dt(Ut,o,4,7)),o.b),0),82)),xO(u,c(ee((!o.c&&(o.c=new dt(Ut,o,5,8)),o.c),0),82)),rT(i,u),p=new q(e.b);p.a=0){for(l=null,a=new _r(p.a,d+1);a.bu?1:Wb(isNaN(0),isNaN(u)))<0&&(Na(Mf),(g.Math.abs(u-1)<=Mf||u==1||isNaN(u)&&isNaN(1)?0:u<1?-1:u>1?1:Wb(isNaN(u),isNaN(1)))<0)&&(Na(Mf),(g.Math.abs(0-a)<=Mf||a==0||isNaN(0)&&isNaN(a)?0:0a?1:Wb(isNaN(0),isNaN(a)))<0)&&(Na(Mf),(g.Math.abs(a-1)<=Mf||a==1||isNaN(a)&&isNaN(1)?0:a<1?-1:a>1?1:Wb(isNaN(a),isNaN(1)))<0)),o)}function vqt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe;for(v=new Tne(new wQ(e));v.b!=v.c.a.d;)for(p=$Be(v),a=c(p.d,56),t=c(p.e,56),u=a.Tg(),N=0,ue=(u.i==null&&wf(u),u.i).length;N=0&&N=d.c.c.length?p=uie((Dt(),Ui),ur):p=uie((Dt(),ur),ur),p*=2,o=n.a.g,n.a.g=g.Math.max(o,o+(p-o)),u=n.b.g,n.b.g=g.Math.max(u,u+(p-u)),r=t}}function Eqt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be;for(be=nRe(e),p=new Se,a=e.c.length,v=a-1,A=a+1;be.a.c!=0;){for(;n.b!=0;)ne=(Lt(n.b!=0),c(Fu(n,n.a.a),112)),D5(be.a,ne)!=null,ne.g=v--,fue(ne,t,n,i);for(;t.b!=0;)ue=(Lt(t.b!=0),c(Fu(t,t.a.a),112)),D5(be.a,ue)!=null,ue.g=A++,fue(ue,t,n,i);for(d=Ar,Y=(u=new m5(new b5(new qM(be.a).a).b),new HM(u));iC(Y.a.a);){if(z=(o=e8(Y.a),c(o.cd(),112)),!i&&z.b>0&&z.a<=0){p.c=oe(xt,xe,1,0,5,1),p.c[p.c.length]=z;break}N=z.i-z.d,N>=d&&(N>d&&(p.c=oe(xt,xe,1,0,5,1),d=N),p.c[p.c.length]=z)}p.c.length!=0&&(l=c(Ne(p,S7(r,p.c.length)),112),D5(be.a,l)!=null,l.g=A++,fue(l,t,n,i),p.c=oe(xt,xe,1,0,5,1))}for(ie=e.c.length+1,L=new q(e);L.a0&&(A.d+=p.n.d,A.d+=p.d),A.a>0&&(A.a+=p.n.a,A.a+=p.d),A.b>0&&(A.b+=p.n.b,A.b+=p.d),A.c>0&&(A.c+=p.n.c,A.c+=p.d),A}function NXe(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L;for(A=n.d,v=n.c,o=new $e(n.f.a+n.d.b+n.d.c,n.f.b+n.d.d+n.d.a),u=o.b,d=new q(e.a);d.a0&&(e.c[t.c.p][t.p].d+=$s(e.i,24)*vT*.07000000029802322-.03500000014901161,e.c[t.c.p][t.p].a=e.c[t.c.p][t.p].d/e.c[t.c.p][t.p].b)}}function Aqt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;for(L=new q(e);L.ai.d,i.d=g.Math.max(i.d,t),a&&n&&(i.d=g.Math.max(i.d,i.a),i.a=i.d+r);break;case 3:n=t>i.a,i.a=g.Math.max(i.a,t),a&&n&&(i.a=g.Math.max(i.a,i.d),i.d=i.a+r);break;case 2:n=t>i.c,i.c=g.Math.max(i.c,t),a&&n&&(i.c=g.Math.max(i.b,i.c),i.b=i.c+r);break;case 4:n=t>i.b,i.b=g.Math.max(i.b,t),a&&n&&(i.b=g.Math.max(i.b,i.c),i.c=i.b+r)}}}function Rqt(e){var t,n,i,r,o,u,a,l,d,p,v;for(d=new q(e);d.a0||p.j==Mt&&p.e.c.length-p.g.c.length<0)){t=!1;break}for(r=new q(p.g);r.a=d&&be>=z&&(A+=L.n.b+N.n.b+N.a.b-ue,++a));if(n)for(u=new q(ie.e);u.a=d&&be>=z&&(A+=L.n.b+N.n.b+N.a.b-ue,++a))}a>0&&(Pe+=A/a,++D)}D>0?(t.a=r*Pe/D,t.g=D):(t.a=0,t.g=0)}function Lqt(e,t){var n,i,r,o,u,a,l,d,p,v,A;for(r=new q(e.a.b);r.a$i||t.o==yb&&p0&&es(Y,ue*Pe),be>0&&ts(Y,be*Ae);for(U5(e.b,new U2e),t=new Se,a=new Gg(new Pg(e.c).a);a.b;)u=g0(a),i=c(u.cd(),79),n=c(u.dd(),395).a,r=rv(i,!1,!1),v=FVe(Uf(i),HI(r),n),rT(v,r),ne=XVe(i),ne&&Do(t,ne,0)==-1&&(t.c[t.c.length]=ne,nLe(ne,(Lt(v.b!=0),c(v.a.a.c,8)),n));for(z=new Gg(new Pg(e.d).a);z.b;)N=g0(z),i=c(N.cd(),79),n=c(N.dd(),395).a,r=rv(i,!1,!1),v=FVe(M1(i),_I(HI(r)),n),v=_I(v),rT(v,r),ne=JVe(i),ne&&Do(t,ne,0)==-1&&(t.c[t.c.length]=ne,nLe(ne,(Lt(v.b!=0),c(v.c.b.c,8)),n))}function $Xe(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae;if(n.c.length!=0){for(D=new Se,A=new q(n);A.a1)for(D=new vue(L,ne,i),Mr(ne,new kOe(e,D)),u.c[u.c.length]=D,v=ne.a.ec().Kc();v.Ob();)p=c(v.Pb(),46),Jc(o,p.b);if(a.a.gc()>1)for(D=new vue(L,a,i),Mr(a,new ROe(e,D)),u.c[u.c.length]=D,v=a.a.ec().Kc();v.Ob();)p=c(v.Pb(),46),Jc(o,p.b)}}function qXe(e){Gb(e,new Zg(t9(qb(Bb(Kb($b(new _g,Cf),"ELK Radial"),'A radial layout provider which is based on the algorithm of Peter Eades published in "Drawing free trees.", published by International Institute for Advanced Study of Social Information Science, Fujitsu Limited in 1991. The radial layouter takes a tree and places the nodes in radial order around the root. The nodes of the same tree level are placed on the same radius.'),new f5e),Cf))),je(e,Cf,VD,Le(fat)),je(e,Cf,_w,Le(hat)),je(e,Cf,gv,Le(sat)),je(e,Cf,R2,Le(uat)),je(e,Cf,k2,Le(aat)),je(e,Cf,qE,Le(cat)),je(e,Cf,N6,Le(A0e)),je(e,Cf,HE,Le(lat)),je(e,Cf,fV,Le(PW)),je(e,Cf,lV,Le(MW)),je(e,Cf,Zle,Le(O0e)),je(e,Cf,Yle,Le(ux)),je(e,Cf,Xle,Le(ax)),je(e,Cf,Jle,Le(_j)),je(e,Cf,Qle,Le(D0e))}function Tue(e){var t;if(this.r=v5t(new TA,new fN),this.b=new n6(c(nn(Gr),290)),this.p=new n6(c(nn(Gr),290)),this.i=new n6(c(nn(eit),290)),this.e=e,this.o=new go(e.rf()),this.D=e.Df()||Be(Fe(e.We((kn(),Oj)))),this.A=c(e.We((kn(),Eb)),21),this.B=c(e.We(G1),21),this.q=c(e.We(UP),98),this.u=c(e.We(Uw),21),!CDt(this.u))throw V(new ym("Invalid port label placement: "+this.u));if(this.v=Be(Fe(e.We(lwe))),this.j=c(e.We(zv),21),!Xxt(this.j))throw V(new ym("Invalid node label placement: "+this.j));this.n=c(u6(e,Jpe),116),this.k=ge(Te(u6(e,Px))),this.d=ge(Te(u6(e,gwe))),this.w=ge(Te(u6(e,vwe))),this.s=ge(Te(u6(e,bwe))),this.t=ge(Te(u6(e,pwe))),this.C=c(u6(e,wwe),142),this.c=2*this.d,t=!this.B.Hc((Ks(),Kj)),this.f=new r6(0,t,0),this.g=new r6(1,t,0),HN(this.f,(al(),Nc),this.g)}function Vqt(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At;for(ne=0,L=0,D=0,A=1,ie=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));ie.e!=ie.i.gc();)z=c(Vt(ie),33),A+=Th(new Kt(Ht(Fh(z).a.Kc(),new j))),Ve=z.g,L=g.Math.max(L,Ve),v=z.f,D=g.Math.max(D,v),ne+=Ve*v;for(N=(!e.a&&(e.a=new Me(Ei,e,10,11)),e.a).i,u=ne+2*i*i*A*N,o=g.Math.sqrt(u),l=g.Math.max(o*n,L),a=g.Math.max(o/n,D),Y=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));Y.e!=Y.i.gc();)z=c(Vt(Y),33),et=r.b+($s(t,26)*A6+$s(t,27)*O6)*(l-z.g),At=r.b+($s(t,26)*A6+$s(t,27)*O6)*(a-z.f),es(z,et),ts(z,At);for(Ae=l+(r.b+r.c),Pe=a+(r.d+r.a),be=new $t((!e.a&&(e.a=new Me(Ei,e,10,11)),e.a));be.e!=be.i.gc();)for(ue=c(Vt(be),33),p=new Kt(Ht(Fh(ue).a.Kc(),new j));dn(p);)d=c(rn(p),79),b6(d)||GHt(d,t,Ae,Pe);Ae+=r.b+r.c,Pe+=r.d+r.a,k0(e,Ae,Pe,!1,!0)}function aD(e){var t,n,i,r,o,u,a,l,d,p,v;if(e==null)throw V(new uf(rs));if(d=e,o=e.length,l=!1,o>0&&(t=(fn(0,e.length),e.charCodeAt(0)),(t==45||t==43)&&(e=e.substr(1),--o,l=t==45)),o==0)throw V(new uf(L0+d+'"'));for(;e.length>0&&(fn(0,e.length),e.charCodeAt(0)==48);)e=e.substr(1),--o;if(o>(AYe(),ent)[10])throw V(new uf(L0+d+'"'));for(r=0;r0&&(v=-parseInt(e.substr(0,i),10),e=e.substr(i),o-=i,n=!1);o>=u;){if(i=parseInt(e.substr(0,u),10),e=e.substr(u),o-=u,n)n=!1;else{if(uc(v,a)<0)throw V(new uf(L0+d+'"'));v=jr(v,p)}v=P1(v,i)}if(uc(v,0)>0)throw V(new uf(L0+d+'"'));if(!l&&(v=N_(v),uc(v,0)<0))throw V(new uf(L0+d+'"'));return v}function jue(e,t){vRe();var n,i,r,o,u,a,l;if(this.a=new vee(this),this.b=e,this.c=t,this.f=IB(wo((vs(),Ir),t)),this.f.dc())if((a=gce(Ir,e))==t)for(this.e=!0,this.d=new Se,this.f=new v6e,this.f.Fc(lb),c(oD(iI(Ir,bu(e)),""),26)==e&&this.f.Fc(S5(Ir,bu(e))),r=Yq(Ir,e).Kc();r.Ob();)switch(i=c(r.Pb(),170),o0(wo(Ir,i))){case 4:{this.d.Fc(i);break}case 5:{this.f.Gc(IB(wo(Ir,i)));break}}else if(Wr(),c(t,66).Oj())for(this.e=!0,this.f=null,this.d=new Se,u=0,l=(e.i==null&&wf(e),e.i).length;u=0&&u0&&(c(so(e.b,t),124).a.b=n)}function Gqt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;for(Wt(t,"Comment pre-processing",1),n=0,l=new q(e.a);l.a0&&(l=(fn(0,t.length),t.charCodeAt(0)),l!=64)){if(l==37&&(v=t.lastIndexOf("%"),d=!1,v!=0&&(v==A-1||(d=(fn(v+1,t.length),t.charCodeAt(v+1)==46))))){if(u=t.substr(1,v-1),ne=rt("%",u)?null:Oue(u),i=0,d)try{i=vu(t.substr(v+2),Ar,Fn)}catch(ue){throw ue=gi(ue),Q(ue,127)?(a=ue,V(new mO(a))):V(ue)}for(z=fre(e.Wg());z.Ob();)if(L=UO(z),Q(L,510)&&(r=c(L,590),ie=r.d,(ne==null?ie==null:rt(ne,ie))&&i--==0))return r;return null}if(p=t.lastIndexOf("."),D=p==-1?t:t.substr(0,p),n=0,p!=-1)try{n=vu(t.substr(p+1),Ar,Fn)}catch(ue){if(ue=gi(ue),Q(ue,127))D=t;else throw V(ue)}for(D=rt("%",D)?null:Oue(D),N=fre(e.Wg());N.Ob();)if(L=UO(N),Q(L,191)&&(o=c(L,191),Y=o.ne(),(D==null?Y==null:rt(D,Y))&&n--==0))return o;return null}return dXe(e,t)}function Yqt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot;for(Pe=new Se,L=new q(e.b);L.a=t.length)return{done:!0};var r=t[i++];return{value:[r,n.get(r)],done:!1}}}},eFt()||(e.prototype.createObject=function(){return{}},e.prototype.get=function(t){return this.obj[":"+t]},e.prototype.set=function(t,n){this.obj[":"+t]=n},e.prototype[ZH]=function(t){delete this.obj[":"+t]},e.prototype.keys=function(){var t=[];for(var n in this.obj)n.charCodeAt(0)==58&&t.push(n.substring(1));return t}),e}function Jqt(e){aue();var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(e==null)return null;if(v=e.length*8,v==0)return"";for(a=v%24,D=v/24|0,A=a!=0?D+1:D,o=null,o=oe(Yu,vf,25,A*4,15,1),d=0,p=0,t=0,n=0,i=0,u=0,r=0,l=0;l>24,d=(t&3)<<24>>24,L=(t&-128)==0?t>>2<<24>>24:(t>>2^192)<<24>>24,N=(n&-128)==0?n>>4<<24>>24:(n>>4^240)<<24>>24,z=(i&-128)==0?i>>6<<24>>24:(i>>6^252)<<24>>24,o[u++]=Fd[L],o[u++]=Fd[N|d<<4],o[u++]=Fd[p<<2|z],o[u++]=Fd[i&63];return a==8?(t=e[r],d=(t&3)<<24>>24,L=(t&-128)==0?t>>2<<24>>24:(t>>2^192)<<24>>24,o[u++]=Fd[L],o[u++]=Fd[d<<4],o[u++]=61,o[u++]=61):a==16&&(t=e[r],n=e[r+1],p=(n&15)<<24>>24,d=(t&3)<<24>>24,L=(t&-128)==0?t>>2<<24>>24:(t>>2^192)<<24>>24,N=(n&-128)==0?n>>4<<24>>24:(n>>4^240)<<24>>24,o[u++]=Fd[L],o[u++]=Fd[N|d<<4],o[u++]=Fd[p<<2],o[u++]=61),pf(o,0,o.length)}function Qqt(e,t){var n,i,r,o,u,a,l;if(e.e==0&&e.p>0&&(e.p=-(e.p-1)),e.p>Ar&&lie(t,e.p-O1),u=t.q.getDate(),$C(t,1),e.k>=0&&R6t(t,e.k),e.c>=0?$C(t,e.c):e.k>=0?(l=new Ore(t.q.getFullYear()-O1,t.q.getMonth(),35),i=35-l.q.getDate(),$C(t,g.Math.min(i,u))):$C(t,u),e.f<0&&(e.f=t.q.getHours()),e.b>0&&e.f<12&&(e.f+=12),V2t(t,e.f==24&&e.g?0:e.f),e.j>=0&&VMt(t,e.j),e.n>=0&&aCt(t,e.n),e.i>=0&&m7e(t,xr(jr(BI(ns(t.q.getTime()),_d),_d),e.i)),e.a&&(r=new u9,lie(r,r.q.getFullYear()-O1-80),iF(ns(t.q.getTime()),ns(r.q.getTime()))&&lie(t,r.q.getFullYear()-O1+100)),e.d>=0){if(e.c==-1)n=(7+e.d-t.q.getDay())%7,n>3&&(n-=7),a=t.q.getMonth(),$C(t,t.q.getDate()+n),t.q.getMonth()!=a&&$C(t,t.q.getDate()+(n>0?-7:7));else if(t.q.getDay()!=e.d)return!1}return e.o>Ar&&(o=t.q.getTimezoneOffset(),m7e(t,xr(ns(t.q.getTime()),(e.o-o)*60*_d))),!0}function VXe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;if(r=B(t,(ye(),Hn)),!!Q(r,239)){for(L=c(r,33),N=t.e,A=new go(t.c),o=t.d,A.a+=o.b,A.b+=o.d,ue=c(Ke(L,(Oe(),$R)),174),bs(ue,(Ks(),Ix))&&(D=c(Ke(L,gbe),116),Mmt(D,o.a),kmt(D,o.d),Cmt(D,o.b),Rmt(D,o.c)),n=new Se,p=new q(t.a);p.a0&&Ee(e.p,p),Ee(e.o,p);t-=i,D=l+t,d+=t*e.e,Lu(e.a,a,Ce(D)),Lu(e.b,a,d),e.j=g.Math.max(e.j,D),e.k=g.Math.max(e.k,d),e.d+=t,t+=N}}function Ie(){Ie=Z;var e;Vo=new bC(R6,0),_t=new bC(yD,1),jt=new bC(az,2),Yt=new bC(lz,3),Mt=new bC(fz,4),Jl=(st(),new t_((e=c(rl(Gr),9),new ku(e,c(Da(e,e.length),9),0)))),Xa=dd(ui(_t,U(G(Gr,1),ac,61,0,[]))),Uu=dd(ui(jt,U(G(Gr,1),ac,61,0,[]))),Cu=dd(ui(Yt,U(G(Gr,1),ac,61,0,[]))),wa=dd(ui(Mt,U(G(Gr,1),ac,61,0,[]))),cs=dd(ui(_t,U(G(Gr,1),ac,61,0,[Yt]))),Vc=dd(ui(jt,U(G(Gr,1),ac,61,0,[Mt]))),Ja=dd(ui(_t,U(G(Gr,1),ac,61,0,[Mt]))),Ds=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt]))),Iu=dd(ui(Yt,U(G(Gr,1),ac,61,0,[Mt]))),Wu=dd(ui(jt,U(G(Gr,1),ac,61,0,[Yt]))),ks=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt,Mt]))),os=dd(ui(jt,U(G(Gr,1),ac,61,0,[Yt,Mt]))),ss=dd(ui(_t,U(G(Gr,1),ac,61,0,[Yt,Mt]))),Ss=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt,Yt]))),Tc=dd(ui(_t,U(G(Gr,1),ac,61,0,[jt,Yt,Mt])))}function YXe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;if(t.b!=0){for(D=new wi,a=null,L=null,i=xi(g.Math.floor(g.Math.log(t.b)*g.Math.LOG10E)+1),l=0,ne=Mn(t,0);ne.b!=ne.d.c;)for(Y=c(Pn(ne),86),le(L)!==le(B(Y,(ic(),BP)))&&(L=ln(B(Y,BP)),l=0),L!=null?a=L+pNe(l++,i):a=pNe(l++,i),pe(Y,BP,a),z=(r=Mn(new t1(Y).a.d,0),new Dy(r));r9(z.a);)N=c(Pn(z.a),188).c,Ri(D,N,D.c.b,D.c),pe(N,BP,a);for(A=new en,u=0;u=l){Lt(Y.b>0),Y.a.Xb(Y.c=--Y.b);break}else N.a>d&&(r?(Hi(r.b,N.b),r.a=g.Math.max(r.a,N.a),nu(Y)):(Ee(N.b,v),N.c=g.Math.min(N.c,d),N.a=g.Math.max(N.a,l),r=N));r||(r=new RAe,r.c=d,r.a=l,Np(Y,r),Ee(r.b,v))}for(a=t.b,p=0,z=new q(i);z.aa?1:0:(e.b&&(e.b._b(o)&&(r=c(e.b.xc(o),19).a),e.b._b(l)&&(a=c(e.b.xc(l),19).a)),ra?1:0)):t.e.c.length!=0&&n.g.c.length!=0?1:-1}function nHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae;for(Wt(t,BQe,1),N=new Se,Pe=new Se,d=new q(e.b);d.a0&&(ne-=D),yue(u,ne),p=0,A=new q(u.a);A.a0),a.a.Xb(a.c=--a.b)),l=.4*i*p,!o&&a.bt.d.c){if(D=e.c[t.a.d],z=e.c[v.a.d],D==z)continue;$a(Aa(ja(Oa(Ta(new Zu,1),100),D),z))}}}}}function Oue(e){hH();var t,n,i,r,o,u,a,l;if(e==null)return null;if(r=af(e,is(37)),r<0)return e;for(l=new lu(e.substr(0,r)),t=oe(Ps,vv,25,4,15,1),a=0,i=0,u=e.length;rr+2&&rK((fn(r+1,e.length),e.charCodeAt(r+1)),tme,nme)&&rK((fn(r+2,e.length),e.charCodeAt(r+2)),tme,nme))if(n=j4t((fn(r+1,e.length),e.charCodeAt(r+1)),(fn(r+2,e.length),e.charCodeAt(r+2))),r+=2,i>0?(n&192)==128?t[a++]=n<<24>>24:i=0:n>=128&&((n&224)==192?(t[a++]=n<<24>>24,i=2):(n&240)==224?(t[a++]=n<<24>>24,i=3):(n&248)==240&&(t[a++]=n<<24>>24,i=4)),i>0){if(a==i){switch(a){case 2:{Dg(l,((t[0]&31)<<6|t[1]&63)&Ni);break}case 3:{Dg(l,((t[0]&15)<<12|(t[1]&63)<<6|t[2]&63)&Ni);break}}a=0,i=0}}else{for(o=0;o0){if(u+i>e.length)return!1;a=B7(e.substr(0,u+i),t)}else a=B7(e,t);switch(o){case 71:return a=ev(e,u,U(G(Re,1),we,2,6,[OJe,DJe]),t),r.e=a,!0;case 77:return HNt(e,t,r,a,u);case 76:return zNt(e,t,r,a,u);case 69:return xkt(e,t,u,r);case 99:return Lkt(e,t,u,r);case 97:return a=ev(e,u,U(G(Re,1),we,2,6,["AM","PM"]),t),r.b=a,!0;case 121:return VNt(e,t,u,a,n,r);case 100:return a<=0?!1:(r.c=a,!0);case 83:return a<0?!1:YAt(a,u,t[0],r);case 104:a==12&&(a=0);case 75:case 72:return a<0?!1:(r.f=a,r.g=!1,!0);case 107:return a<0?!1:(r.f=a,r.g=!0,!0);case 109:return a<0?!1:(r.j=a,!0);case 115:return a<0?!1:(r.n=a,!0);case 90:if(uPe&&(L.c=Pe-L.b),Ee(u.d,new yB(L,soe(u,L))),ie=t==_t?g.Math.max(ie,N.b+d.b.rf().b):g.Math.min(ie,N.b));for(ie+=t==_t?e.t:-e.t,ne=Soe((u.e=ie,u)),ne>0&&(c(so(e.b,t),124).a.b=ne),p=A.Kc();p.Ob();)d=c(p.Pb(),111),!(!d.c||d.c.d.c.length<=0)&&(L=d.c.i,L.c-=d.e.a,L.d-=d.e.b)}function aHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;for(t=new en,l=new $t(e);l.e!=l.i.gc();){for(a=c(Vt(l),33),n=new er,Kn(AG,a,n),D=new q2e,r=c(gu(new ht(null,new t0(new Kt(Ht(XI(a).a.Kc(),new j)))),KRe(D,Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[(Fl(),Su)])))),83),lKe(n,c(r.xc((Pt(),!0)),14),new H2e),i=c(gu(si(c(r.xc(!1),15).Lc(),new z2e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[Su]))),15),u=i.Kc();u.Ob();)o=c(u.Pb(),79),A=XVe(o),A&&(d=c(Uo(Po(t.f,A)),21),d||(d=pWe(A),Kc(t.f,A,d)),qr(n,d));for(r=c(gu(new ht(null,new t0(new Kt(Ht(Fh(a).a.Kc(),new j)))),KRe(D,Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[Su])))),83),lKe(n,c(r.xc(!0),14),new V2e),i=c(gu(si(c(r.xc(!1),15).Lc(),new G2e),Bg(new ri,new jn,new vh,U(G(Hs,1),_e,132,0,[Su]))),15),v=i.Kc();v.Ob();)p=c(v.Pb(),79),A=JVe(p),A&&(d=c(Uo(Po(t.f,A)),21),d||(d=pWe(A),Kc(t.f,A,d)),qr(n,d))}}function lHt(e,t){cH();var n,i,r,o,u,a,l,d,p,v,A,D,L,N;if(l=uc(e,0)<0,l&&(e=N_(e)),uc(e,0)==0)switch(t){case 0:return"0";case 1:return LE;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return D=new n1,t<0?D.a+="0E+":D.a+="0E",D.a+=t==Ar?"2147483648":""+-t,D.a}p=18,v=oe(Yu,vf,25,p+1,15,1),n=p,N=e;do d=N,N=BI(N,10),v[--n]=tn(xr(48,P1(d,jr(N,10))))&Ni;while(uc(N,0)!=0);if(r=P1(P1(P1(p,n),t),1),t==0)return l&&(v[--n]=45),pf(v,n,p-n);if(t>0&&uc(r,-6)>=0){if(uc(r,0)>=0){for(o=n+tn(r),a=p-1;a>=o;a--)v[a+1]=v[a];return v[++o]=46,l&&(v[--n]=45),pf(v,n,p-n+1)}for(u=2;iF(u,xr(N_(r),1));u++)v[--n]=48;return v[--n]=46,v[--n]=48,l&&(v[--n]=45),pf(v,n,p-n)}return L=n+1,i=p,A=new _m,l&&(A.a+="-"),i-L>=1?(Dg(A,v[n]),A.a+=".",A.a+=pf(v,n+1,p-n-1)):A.a+=pf(v,n,p-n),A.a+="E",uc(r,0)>0&&(A.a+="+"),A.a+=""+P5(r),A.a}function fHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D;if(e.e.a.$b(),e.f.a.$b(),e.c.c=oe(xt,xe,1,0,5,1),e.i.c=oe(xt,xe,1,0,5,1),e.g.a.$b(),t)for(u=new q(t.a);u.a=1&&(be-d>0&&L>=0?(es(v,v.i+ue),ts(v,v.j+l*d)):be-d<0&&D>=0&&(es(v,v.i+ue*be),ts(v,v.j+l)));return ao(e,(kn(),Eb),(ou(),o=c(rl(tM),9),new ku(o,c(Da(o,o.length),9),0))),new $e(Pe,p)}function QXe(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L;if(D=yi(Co(c(ee((!e.b&&(e.b=new dt(Ut,e,4,7)),e.b),0),82))),L=yi(Co(c(ee((!e.c&&(e.c=new dt(Ut,e,5,8)),e.c),0),82))),v=D==L,a=new Tr,t=c(Ke(e,(QO(),Iwe)),74),t&&t.b>=2){if((!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i==0)n=(Hb(),r=new DA,r),on((!e.a&&(e.a=new Me(mi,e,6,6)),e.a),n);else if((!e.a&&(e.a=new Me(mi,e,6,6)),e.a).i>1)for(A=new Vy((!e.a&&(e.a=new Me(mi,e,6,6)),e.a));A.e!=A.i.gc();)l6(A);rT(t,c(ee((!e.a&&(e.a=new Me(mi,e,6,6)),e.a),0),202))}if(v)for(i=new $t((!e.a&&(e.a=new Me(mi,e,6,6)),e.a));i.e!=i.i.gc();)for(n=c(Vt(i),202),d=new $t((!n.a&&(n.a=new qi(ma,n,5)),n.a));d.e!=d.i.gc();)l=c(Vt(d),469),a.a=g.Math.max(a.a,l.a),a.b=g.Math.max(a.b,l.b);for(u=new $t((!e.n&&(e.n=new Me(Lo,e,1,7)),e.n));u.e!=u.i.gc();)o=c(Vt(u),137),p=c(Ke(o,YP),8),p&&Cl(o,p.a,p.b),v&&(a.a=g.Math.max(a.a,o.i+o.g),a.b=g.Math.max(a.b,o.j+o.f));return a}function hHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve;for(ne=t.c.length,r=new cv(e.a,n,null,null),Ve=oe(gr,lo,25,ne,15,1),N=oe(gr,lo,25,ne,15,1),L=oe(gr,lo,25,ne,15,1),z=0,a=0;aVe[l]&&(z=l),v=new q(e.a.b);v.aD&&(o&&(Tg(Pe,A),Tg(Ve,Ce(d.b-1))),ti=n.b,Zi+=A+t,A=0,p=g.Math.max(p,n.b+n.c+Jt)),es(a,ti),ts(a,Zi),p=g.Math.max(p,ti+Jt+n.c),A=g.Math.max(A,v),ti+=Jt+t;if(p=g.Math.max(p,i),Ot=Zi+A+n.a,OtEf,et=g.Math.abs(A.b-L.b)>Ef,(!n&&Ve&&et||n&&(Ve||et))&&Cn(z.a,ue)),qr(z.a,i),i.b==0?A=ue:A=(Lt(i.b!=0),c(i.c.b.c,8)),ATt(D,v,N),KKe(r)==Ae&&(Nr(Ae.i)!=r.a&&(N=new Tr,Yce(N,Nr(Ae.i),ie)),pe(z,TU,N)),ekt(D,z,ie),p.a.zc(D,p);Rr(z,be),br(z,Ae)}for(d=p.a.ec().Kc();d.Ob();)l=c(d.Pb(),17),Rr(l,null),br(l,null);qt(t)}function ZXe(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;if(e.gc()==1)return c(e.Xb(0),231);if(e.gc()<=0)return new uO;for(r=e.Kc();r.Ob();){for(n=c(r.Pb(),231),L=0,p=Fn,v=Fn,l=Ar,d=Ar,D=new q(n.e);D.aa&&(ne=0,ue+=u+Y,u=0),QFt(N,n,ne,ue),t=g.Math.max(t,ne+z.a),u=g.Math.max(u,z.b),ne+=z.a+Y;return N}function eJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L;switch(p=new ds,e.a.g){case 3:A=c(B(t.e,(ye(),bb)),15),D=c(B(t.j,bb),15),L=c(B(t.f,bb),15),n=c(B(t.e,xv),15),i=c(B(t.j,xv),15),r=c(B(t.f,xv),15),u=new Se,Hi(u,A),D.Jc(new W4e),Hi(u,Q(D,152)?s2(c(D,152)):Q(D,131)?c(D,131).a:Q(D,54)?new Fb(D):new jp(D)),Hi(u,L),o=new Se,Hi(o,n),Hi(o,Q(i,152)?s2(c(i,152)):Q(i,131)?c(i,131).a:Q(i,54)?new Fb(i):new jp(i)),Hi(o,r),pe(t.f,bb,u),pe(t.f,xv,o),pe(t.f,hge,t.f),pe(t.e,bb,null),pe(t.e,xv,null),pe(t.j,bb,null),pe(t.j,xv,null);break;case 1:qr(p,t.e.a),Cn(p,t.i.n),qr(p,Kg(t.j.a)),Cn(p,t.a.n),qr(p,t.f.a);break;default:qr(p,t.e.a),qr(p,Kg(t.j.a)),qr(p,t.f.a)}na(t.f.a),qr(t.f.a,p),Rr(t.f,t.e.c),a=c(B(t.e,(Oe(),yo)),74),d=c(B(t.j,yo),74),l=c(B(t.f,yo),74),(a||d||l)&&(v=new ds,mne(v,l),mne(v,d),mne(v,a),pe(t.f,yo,v)),Rr(t.j,null),br(t.j,null),Rr(t.e,null),br(t.e,null),po(t.a,null),po(t.i,null),t.g&&eJe(e,t.g)}function pHt(e){aue();var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;if(e==null||(o=yO(e),L=iAt(o),L%4!=0))return null;if(N=L/4|0,N==0)return oe(Ps,vv,25,0,15,1);for(v=null,t=0,n=0,i=0,r=0,u=0,a=0,l=0,d=0,D=0,A=0,p=0,v=oe(Ps,vv,25,N*3,15,1);D>4)<<24>>24,v[A++]=((n&15)<<4|i>>2&15)<<24>>24,v[A++]=(i<<6|r)<<24>>24}return!JM(u=o[p++])||!JM(a=o[p++])?null:(t=Zl[u],n=Zl[a],l=o[p++],d=o[p++],Zl[l]==-1||Zl[d]==-1?l==61&&d==61?(n&15)!=0?null:(z=oe(Ps,vv,25,D*3+1,15,1),bc(v,0,z,0,D*3),z[A]=(t<<2|n>>4)<<24>>24,z):l!=61&&d==61?(i=Zl[l],(i&3)!=0?null:(z=oe(Ps,vv,25,D*3+2,15,1),bc(v,0,z,0,D*3),z[A++]=(t<<2|n>>4)<<24>>24,z[A]=((n&15)<<4|i>>2&15)<<24>>24,z)):null:(i=Zl[l],r=Zl[d],v[A++]=(t<<2|n>>4)<<24>>24,v[A++]=((n&15)<<4|i>>2&15)<<24>>24,v[A++]=(i<<6|r)<<24>>24,v))}function wHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be;for(Wt(t,BQe,1),L=c(B(e,(Oe(),zh)),218),r=new q(e.b);r.a=2){for(N=!0,A=new q(o.j),n=c(K(A),11),D=null;A.a0&&(r=c(Ne(z.c.a,Pe-1),10),u=e.i[r.p],Ve=g.Math.ceil(Am(e.n,r,z)),o=be.a.e-z.d.d-(u.a.e+r.o.b+r.d.a)-Ve),d=Ii,Pe0&&Ae.a.e.e-Ae.a.a-(Ae.b.e.e-Ae.b.a)<0,L=ne.a.e.e-ne.a.a-(ne.b.e.e-ne.b.a)<0&&Ae.a.e.e-Ae.a.a-(Ae.b.e.e-Ae.b.a)>0,D=ne.a.e.e+ne.b.aAe.b.e.e+Ae.a.a,ue=0,!N&&!L&&(A?o+v>0?ue=v:d-i>0&&(ue=i):D&&(o+a>0?ue=a:d-ie>0&&(ue=ie))),be.a.e+=ue,be.b&&(be.d.e+=ue),!1))}function nJe(e,t,n){var i,r,o,u,a,l,d,p,v,A;if(i=new Ru(t.qf().a,t.qf().b,t.rf().a,t.rf().b),r=new zy,e.c)for(u=new q(t.wf());u.ad&&(i.a+=sDe(oe(Yu,vf,25,-d,15,1))),i.a+="Is",af(l,is(32))>=0)for(r=0;r=i.o.b/2}else ie=!v;ie?(Y=c(B(i,(ye(),X2)),15),Y?A?o=Y:(r=c(B(i,V2),15),r?Y.gc()<=r.gc()?o=Y:o=r:(o=new Se,pe(i,V2,o))):(o=new Se,pe(i,X2,o))):(r=c(B(i,(ye(),V2)),15),r?v?o=r:(Y=c(B(i,X2),15),Y?r.gc()<=Y.gc()?o=r:o=Y:(o=new Se,pe(i,X2,o))):(o=new Se,pe(i,V2,o))),o.Fc(e),pe(e,(ye(),SR),n),t.d==n?(br(t,null),n.e.c.length+n.g.c.length==0&&Bo(n,null),fjt(n)):(Rr(t,null),n.e.c.length+n.g.c.length==0&&Bo(n,null)),na(t.a)}function _Ht(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti;for(ie=new _r(e.b,0),p=t.Kc(),L=0,d=c(p.Pb(),19).a,be=0,n=new er,Ae=new Eh;ie.b=e.a&&(i=c$t(e,ie),p=g.Math.max(p,i.b),ue=g.Math.max(ue,i.d),Ee(a,new yr(ie,i)));for(Ve=new Se,d=0;d0),z.a.Xb(z.c=--z.b),et=new ta(e.b),Np(z,et),Lt(z.b0?(d=0,z&&(d+=a),d+=(et-1)*u,ne&&(d+=a),Ve&&ne&&(d=g.Math.max(d,oNt(ne,u,ie,Ae))),d0){for(A=p<100?null:new i1(p),d=new bre(t),L=d.g,Y=oe(Qt,_n,25,p,15,1),i=0,ue=new d0(p),r=0;r=0;)if(D!=null?$n(D,L[l]):le(D)===le(L[l])){Y.length<=i&&(z=Y,Y=oe(Qt,_n,25,2*Y.length,15,1),bc(z,0,Y,0,i)),Y[i++]=r,on(ue,L[l]);break e}if(D=D,le(D)===le(a))break}}if(d=ue,L=ue.g,p=i,i>Y.length&&(z=Y,Y=oe(Qt,_n,25,i,15,1),bc(z,0,Y,0,i)),i>0){for(ne=!0,o=0;o=0;)v2(e,Y[u]);if(i!=p){for(r=p;--r>=i;)v2(d,r);z=Y,Y=oe(Qt,_n,25,i,15,1),bc(z,0,Y,0,i)}t=d}}}else for(t=iOt(e,t),r=e.i;--r>=0;)t.Hc(e.g[r])&&(v2(e,r),ne=!0);if(ne){if(Y!=null){for(n=t.gc(),v=n==1?k5(e,4,t.Kc().Pb(),null,Y[0],N):k5(e,6,t,Y,Y[0],N),A=n<100?null:new i1(n),r=t.Kc();r.Ob();)D=r.Pb(),A=vte(e,c(D,72),A);A?(A.Ei(v),A.Fi()):Bn(e.e,v)}else{for(A=p_t(t.gc()),r=t.Kc();r.Ob();)D=r.Pb(),A=vte(e,c(D,72),A);A&&A.Fi()}return!0}else return!1}function CHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne;for(n=new Aze(t),n.a||aBt(t),d=lFt(t),l=new u0,z=new PWe,N=new q(t.a);N.a0||n.o==Wl&&r0?(v=c(Ne(A.c.a,u-1),10),Ve=Am(e.b,A,v),z=A.n.b-A.d.d-(v.n.b+v.o.b+v.d.a+Ve)):z=A.n.b-A.d.d,d=g.Math.min(z,d),uu?ME(e,t,n):ME(e,n,t),ru?1:0}return i=c(B(t,(ye(),hc)),19).a,o=c(B(n,hc),19).a,i>o?ME(e,t,n):ME(e,n,t),io?1:0}function Due(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie;if(Be(Fe(Ke(t,(kn(),Ex)))))return st(),st(),Qr;if(d=(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i!=0,v=gRt(t),p=!v.dc(),d||p){if(r=c(Ke(t,j4),149),!r)throw V(new ym("Resolved algorithm is not set; apply a LayoutAlgorithmResolver before computing layout."));if(ie=tee(r,(_E(),xx)),fze(t),!d&&p&&!ie)return st(),st(),Qr;if(l=new Se,le(Ke(t,qv))===le((Rh(),kd))&&(tee(r,kx)||tee(r,Dx)))for(D=UWe(e,t),L=new wi,qr(L,(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));L.b!=0;)A=c(L.b==0?null:(Lt(L.b!=0),Fu(L,L.a.a)),33),fze(A),Y=le(Ke(A,qv))===le(XP),Y||Fg(A,GP)&&!bie(r,Ke(A,j4))?(a=Due(e,A,n,i),Hi(l,a),ao(A,qv,XP),lYe(A)):qr(L,(!A.a&&(A.a=new Me(Ei,A,10,11)),A.a));else for(D=(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i,u=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));u.e!=u.i.gc();)o=c(Vt(u),33),a=Due(e,o,n,i),Hi(l,a),lYe(o);for(z=new q(l);z.a=0?D=b2(a):D=II(b2(a)),e.Ye(_4,D)),d=new Tr,A=!1,e.Xe(ep)?(zee(d,c(e.We(ep),8)),A=!0):t3t(d,u.a/2,u.b/2),D.g){case 4:pe(p,zc,(Ku(),K1)),pe(p,MR,(zg(),jv)),p.o.b=u.b,N<0&&(p.o.a=-N),Ji(v,(Ie(),jt)),A||(d.a=u.a),d.a-=u.a;break;case 2:pe(p,zc,(Ku(),xw)),pe(p,MR,(zg(),d4)),p.o.b=u.b,N<0&&(p.o.a=-N),Ji(v,(Ie(),Mt)),A||(d.a=0);break;case 1:pe(p,gb,(Oh(),Ov)),p.o.a=u.a,N<0&&(p.o.b=-N),Ji(v,(Ie(),Yt)),A||(d.b=u.b),d.b-=u.b;break;case 3:pe(p,gb,(Oh(),z2)),p.o.a=u.a,N<0&&(p.o.b=-N),Ji(v,(Ie(),_t)),A||(d.b=0)}if(zee(v.n,d),pe(p,ep,d),t==Mb||t==ch||t==Ic){if(L=0,t==Mb&&e.Xe(Td))switch(D.g){case 1:case 2:L=c(e.We(Td),19).a;break;case 3:case 4:L=-c(e.We(Td),19).a}else switch(D.g){case 4:case 2:L=o.b,t==ch&&(L/=r.b);break;case 1:case 3:L=o.a,t==ch&&(L/=r.a)}pe(p,J0,L)}return pe(p,Zo,D),p}function jHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et;if(n=ge(Te(B(e.a.j,(Oe(),Gge)))),n<-1||!e.a.i||Wy(c(B(e.a.o,ji),98))||qo(e.a.o,(Ie(),jt)).gc()<2&&qo(e.a.o,Mt).gc()<2)return!0;if(e.a.c.Rf())return!1;for(be=0,ue=0,ne=new Se,l=e.a.e,d=0,p=l.length;d=n}function AHt(){gZ();function e(i){var r=this;this.dispatch=function(o){var u=o.data;switch(u.cmd){case"algorithms":var a=Eoe((st(),new W3(new yh(Z1.b))));i.postMessage({id:u.id,data:a});break;case"categories":var l=Eoe((st(),new W3(new yh(Z1.c))));i.postMessage({id:u.id,data:l});break;case"options":var d=Eoe((st(),new W3(new yh(Z1.d))));i.postMessage({id:u.id,data:d});break;case"register":NKt(u.algorithms),i.postMessage({id:u.id});break;case"layout":w$t(u.graph,u.layoutOptions||{},u.options||{}),i.postMessage({id:u.id,data:u.graph});break}},this.saveDispatch=function(o){try{r.dispatch(o)}catch(u){i.postMessage({id:o.data.id,error:u})}}}function t(i){var r=this;this.dispatcher=new e({postMessage:function(o){r.onmessage({data:o})}}),this.postMessage=function(o){setTimeout(function(){r.dispatcher.saveDispatch({data:o})},0)}}if(typeof document===iz&&typeof self!==iz){var n=new e(self);self.onmessage=n.saveDispatch}else typeof w!==iz&&w.exports&&(Object.defineProperty(m,"__esModule",{value:!0}),w.exports={default:t,Worker:t})}function OHt(e){e.N||(e.N=!0,e.b=Xo(e,0),_i(e.b,0),_i(e.b,1),_i(e.b,2),e.bb=Xo(e,1),_i(e.bb,0),_i(e.bb,1),e.fb=Xo(e,2),_i(e.fb,3),_i(e.fb,4),oi(e.fb,5),e.qb=Xo(e,3),_i(e.qb,0),oi(e.qb,1),oi(e.qb,2),_i(e.qb,3),_i(e.qb,4),oi(e.qb,5),_i(e.qb,6),e.a=On(e,4),e.c=On(e,5),e.d=On(e,6),e.e=On(e,7),e.f=On(e,8),e.g=On(e,9),e.i=On(e,10),e.j=On(e,11),e.k=On(e,12),e.n=On(e,13),e.o=On(e,14),e.p=On(e,15),e.q=On(e,16),e.s=On(e,17),e.r=On(e,18),e.t=On(e,19),e.u=On(e,20),e.v=On(e,21),e.w=On(e,22),e.B=On(e,23),e.A=On(e,24),e.C=On(e,25),e.D=On(e,26),e.F=On(e,27),e.G=On(e,28),e.H=On(e,29),e.J=On(e,30),e.I=On(e,31),e.K=On(e,32),e.M=On(e,33),e.L=On(e,34),e.P=On(e,35),e.Q=On(e,36),e.R=On(e,37),e.S=On(e,38),e.T=On(e,39),e.U=On(e,40),e.V=On(e,41),e.X=On(e,42),e.W=On(e,43),e.Y=On(e,44),e.Z=On(e,45),e.$=On(e,46),e._=On(e,47),e.ab=On(e,48),e.cb=On(e,49),e.db=On(e,50),e.eb=On(e,51),e.gb=On(e,52),e.hb=On(e,53),e.ib=On(e,54),e.jb=On(e,55),e.kb=On(e,56),e.lb=On(e,57),e.mb=On(e,58),e.nb=On(e,59),e.ob=On(e,60),e.pb=On(e,61))}function DHt(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue;if(ie=0,t.f.a==0)for(z=new q(e);z.ad&&(pt(d,t.c.length),c(t.c[d],200)).a.c.length==0;)Jc(t,(pt(d,t.c.length),t.c[d]));if(!l){--o;continue}if(mBt(t,p,r,l,A,n,d,i)){v=!0;continue}if(A){if(M$t(t,p,r,l,n,d,i)){v=!0;continue}else if(Yre(p,r)){r.c=!0,v=!0;continue}}else if(Yre(p,r)){r.c=!0,v=!0;continue}if(v)continue}if(Yre(p,r)){r.c=!0,v=!0,l&&(l.k=!1);continue}else I7(r.q)}return v}function mH(e,t,n,i,r,o,u){var a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi;for(N=0,At=0,d=new q(e.b);d.aN&&(o&&(Tg(Pe,D),Tg(Ve,Ce(p.b-1)),Ee(e.d,L),a.c=oe(xt,xe,1,0,5,1)),ti=n.b,Zi+=D+t,D=0,v=g.Math.max(v,n.b+n.c+Jt)),a.c[a.c.length]=l,Sze(l,ti,Zi),v=g.Math.max(v,ti+Jt+n.c),D=g.Math.max(D,A),ti+=Jt+t,L=l;if(Hi(e.a,a),Ee(e.d,c(Ne(a,a.c.length-1),157)),v=g.Math.max(v,i),Ot=Zi+D+n.a,Ot1&&(u=g.Math.min(u,g.Math.abs(c(hl(a.a,1),8).b-p.b)))));else for(N=new q(t.j);N.ar&&(o=A.a-r,u=Fn,i.c=oe(xt,xe,1,0,5,1),r=A.a),A.a>=r&&(i.c[i.c.length]=a,a.a.b>1&&(u=g.Math.min(u,g.Math.abs(c(hl(a.a,a.a.b-2),8).b-A.b)))));if(i.c.length!=0&&o>t.o.a/2&&u>t.o.b/2){for(D=new gc,Bo(D,t),Ji(D,(Ie(),_t)),D.n.a=t.o.a/2,Y=new gc,Bo(Y,t),Ji(Y,Yt),Y.n.a=t.o.a/2,Y.n.b=t.o.b,l=new q(i);l.a=d.b?Rr(a,Y):Rr(a,D)):(d=c(T4t(a.a),8),z=a.a.b==0?Ol(a.c):c(Z9(a.a),8),z.b>=d.b?br(a,Y):br(a,D)),v=c(B(a,(Oe(),yo)),74),v&&nw(v,d,!0);t.n.a=r-t.o.a/2}}function NHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi,ju,Sa;if(At=null,Jt=t,Ot=lFe(e,cFe(n),Jt),H5(Ot,Ih(Jt,If)),ti=c(Bm(e.g,_2(Ch(Jt,IV))),33),A=Ch(Jt,"sourcePort"),i=null,A&&(i=_2(A)),Zi=c(Bm(e.j,i),118),!ti)throw a=fE(Jt),L="An edge must have a source node (edge id: '"+a,N=L+YE,V(new sf(N));if(Zi&&!df(jl(Zi),ti))throw l=Ih(Jt,If),z="The source port of an edge must be a port of the edge's source node (edge id: '"+l,Y=z+YE,V(new sf(Y));if(Ve=(!Ot.b&&(Ot.b=new dt(Ut,Ot,4,7)),Ot.b),o=null,Zi?o=Zi:o=ti,on(Ve,o),ju=c(Bm(e.g,_2(Ch(Jt,Ofe))),33),D=Ch(Jt,"targetPort"),r=null,D&&(r=_2(D)),Sa=c(Bm(e.j,r),118),!ju)throw v=fE(Jt),ie="An edge must have a target node (edge id: '"+v,ne=ie+YE,V(new sf(ne));if(Sa&&!df(jl(Sa),ju))throw d=Ih(Jt,If),ue="The target port of an edge must be a port of the edge's target node (edge id: '"+d,be=ue+YE,V(new sf(be));if(et=(!Ot.c&&(Ot.c=new dt(Ut,Ot,5,8)),Ot.c),u=null,Sa?u=Sa:u=ju,on(et,u),(!Ot.b&&(Ot.b=new dt(Ut,Ot,4,7)),Ot.b).i==0||(!Ot.c&&(Ot.c=new dt(Ut,Ot,5,8)),Ot.c).i==0)throw p=Ih(Jt,If),Pe=net+p,Ae=Pe+YE,V(new sf(Ae));return x7(Jt,Ot),Ixt(Jt,Ot),At=cK(e,Jt,Ot),At}function sJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At;return v=$Bt(Wc(e,(Ie(),Jl)),t),L=Xm(Wc(e,Xa),t),ue=Xm(Wc(e,Cu),t),Ve=T7(Wc(e,wa),t),A=T7(Wc(e,Uu),t),ie=Xm(Wc(e,Ja),t),N=Xm(Wc(e,Ds),t),Pe=Xm(Wc(e,Iu),t),be=Xm(Wc(e,Wu),t),et=T7(Wc(e,Vc),t),Y=Xm(Wc(e,cs),t),ne=Xm(Wc(e,ks),t),Ae=Xm(Wc(e,os),t),At=T7(Wc(e,ss),t),D=T7(Wc(e,Ss),t),z=Xm(Wc(e,Tc),t),n=qm(U(G(gr,1),lo,25,15,[ie.a,Ve.a,Pe.a,At.a])),i=qm(U(G(gr,1),lo,25,15,[L.a,v.a,ue.a,z.a])),r=Y.a,o=qm(U(G(gr,1),lo,25,15,[N.a,A.a,be.a,D.a])),d=qm(U(G(gr,1),lo,25,15,[ie.b,L.b,N.b,ne.b])),l=qm(U(G(gr,1),lo,25,15,[Ve.b,v.b,A.b,z.b])),p=et.b,a=qm(U(G(gr,1),lo,25,15,[Pe.b,ue.b,be.b,Ae.b])),fd(Wc(e,Jl),n+r,d+p),fd(Wc(e,Tc),n+r,d+p),fd(Wc(e,Xa),n+r,0),fd(Wc(e,Cu),n+r,d+p+l),fd(Wc(e,wa),0,d+p),fd(Wc(e,Uu),n+r+i,d+p),fd(Wc(e,Ds),n+r+i,0),fd(Wc(e,Iu),0,d+p+l),fd(Wc(e,Wu),n+r+i,d+p+l),fd(Wc(e,Vc),0,d),fd(Wc(e,cs),n,0),fd(Wc(e,os),0,d+p+l),fd(Wc(e,Ss),n+r+i,0),u=new Tr,u.a=qm(U(G(gr,1),lo,25,15,[n+i+r+o,et.a,ne.a,Ae.a])),u.b=qm(U(G(gr,1),lo,25,15,[d+l+p+a,Y.b,At.b,D.b])),u}function FHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;for(N=new Se,A=new q(e.d.b);A.ar.d.d+r.d.a?p.f.d=!0:(p.f.d=!0,p.f.a=!0))),i.b!=i.d.c&&(t=n);p&&(o=c(Bt(e.f,u.d.i),57),t.bo.d.d+o.d.a?p.f.d=!0:(p.f.d=!0,p.f.a=!0))}for(a=new Kt(Ht(ko(D).a.Kc(),new j));dn(a);)u=c(rn(a),17),u.a.b!=0&&(t=c(Z9(u.a),8),u.d.j==(Ie(),_t)&&(z=new E6(t,new $e(t.a,r.d.d),r,u),z.f.a=!0,z.a=u.d,N.c[N.c.length]=z),u.d.j==Yt&&(z=new E6(t,new $e(t.a,r.d.d+r.d.a),r,u),z.f.d=!0,z.a=u.d,N.c[N.c.length]=z))}return N}function BHt(e,t,n){var i,r,o,u,a,l,d,p,v;if(Wt(n,"Network simplex node placement",1),e.e=t,e.n=c(B(t,(ye(),Rv)),304),nKt(e),L7t(e),Di($o(new ht(null,new bt(e.e.b,16)),new fSe),new eje(e)),Di(si($o(si($o(new ht(null,new bt(e.e.b,16)),new PSe),new MSe),new CSe),new ISe),new ZTe(e)),Be(Fe(B(e.e,(Oe(),MP))))&&(u=yc(n,1),Wt(u,"Straight Edges Pre-Processing",1),_qt(e),qt(u)),w8t(e.f),o=c(B(t,TP),19).a*e.f.a.c.length,Xq(sZ(uZ(sB(e.f),o),!1),yc(n,1)),e.d.a.gc()!=0){for(u=yc(n,1),Wt(u,"Flexible Where Space Processing",1),a=c(Qb(M8(Yc(new ht(null,new bt(e.f.a,16)),new hSe),new oSe)),19).a,l=c(Qb(P8(Yc(new ht(null,new bt(e.f.a,16)),new dSe),new cSe)),19).a,d=l-a,p=Jb(new Cg,e.f),v=Jb(new Cg,e.f),$a(Aa(ja(Ta(Oa(new Zu,2e4),d),p),v)),Di(si(si(TB(e.i),new gSe),new bSe),new Jxe(a,p,d,v)),r=e.d.a.ec().Kc();r.Ob();)i=c(r.Pb(),213),i.g=1;Xq(sZ(uZ(sB(e.f),o),!1),yc(u,1)),qt(u)}Be(Fe(B(t,MP)))&&(u=yc(n,1),Wt(u,"Straight Edges Post-Processing",1),Ckt(e),qt(u)),oqt(e),e.e=null,e.f=null,e.i=null,e.c=null,Is(e.k),e.j=null,e.a=null,e.o=null,e.d.a.$b(),qt(n)}function $Ht(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be;for(a=new q(e.a.b);a.a0)if(i=v.gc(),d=xi(g.Math.floor((i+1)/2))-1,r=xi(g.Math.ceil((i+1)/2))-1,t.o==Wl)for(p=r;p>=d;p--)t.a[ue.p]==ue&&(N=c(v.Xb(p),46),L=c(N.a,10),!_h(n,N.b)&&D>e.b.e[L.p]&&(t.a[L.p]=ue,t.g[ue.p]=t.g[L.p],t.a[ue.p]=t.g[ue.p],t.f[t.g[ue.p].p]=(Pt(),!!(Be(t.f[t.g[ue.p].p])&ue.k==(Dt(),ur))),D=e.b.e[L.p]));else for(p=d;p<=r;p++)t.a[ue.p]==ue&&(Y=c(v.Xb(p),46),z=c(Y.a,10),!_h(n,Y.b)&&D=L&&(ie>L&&(D.c=oe(xt,xe,1,0,5,1),L=ie),D.c[D.c.length]=u);D.c.length!=0&&(A=c(Ne(D,S7(t,D.c.length)),128),Ot.a.Bc(A)!=null,A.s=N++,jse(A,et,Pe),D.c=oe(xt,xe,1,0,5,1))}for(ue=e.c.length+1,a=new q(e);a.aAt.s&&(nu(n),Jc(At.i,i),i.c>0&&(i.a=At,Ee(At.t,i),i.b=Ae,Ee(Ae.i,i)))}function kue(e){var t,n,i,r,o;switch(t=e.c,t){case 11:return e.Ml();case 12:return e.Ol();case 14:return e.Ql();case 15:return e.Tl();case 16:return e.Rl();case 17:return e.Ul();case 21:return xn(e),Ln(),Ln(),dM;case 10:switch(e.a){case 65:return e.yl();case 90:return e.Dl();case 122:return e.Kl();case 98:return e.El();case 66:return e.zl();case 60:return e.Jl();case 62:return e.Hl()}}switch(o=xHt(e),t=e.c,t){case 3:return e.Zl(o);case 4:return e.Xl(o);case 5:return e.Yl(o);case 0:if(e.a==123&&e.d=48&&t<=57){for(i=t-48;r=48&&t<=57;)if(i=i*10+t-48,i<0)throw V(new an(gn((un(),Nfe))))}else throw V(new an(gn((un(),Det))));if(n=i,t==44){if(r>=e.j)throw V(new an(gn((un(),Ret))));if((t=Pr(e.i,r++))>=48&&t<=57){for(n=t-48;r=48&&t<=57;)if(n=n*10+t-48,n<0)throw V(new an(gn((un(),Nfe))));if(i>n)throw V(new an(gn((un(),xet))))}else n=-1}if(t!=125)throw V(new an(gn((un(),ket))));e.sl(r)?(o=(Ln(),Ln(),new Gp(9,o)),e.d=r+1):(o=(Ln(),Ln(),new Gp(3,o)),e.d=r),o.dm(i),o.cm(n),xn(e)}}return o}function uJe(e,t,n,i,r){var o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot;for(N=new Dc(t.b),ue=new Dc(t.b),A=new Dc(t.b),Ve=new Dc(t.b),z=new Dc(t.b),Ae=Mn(t,0);Ae.b!=Ae.d.c;)for(be=c(Pn(Ae),11),a=new q(be.g);a.a0,Y=be.g.c.length>0,d&&Y?A.c[A.c.length]=be:d?N.c[N.c.length]=be:Y&&(ue.c[ue.c.length]=be);for(L=new q(N);L.a1)for(L=new Vy((!e.a&&(e.a=new Me(mi,e,6,6)),e.a));L.e!=L.i.gc();)l6(L);for(u=c(ee((!e.a&&(e.a=new Me(mi,e,6,6)),e.a),0),202),z=ti,ti>be+ue?z=be+ue:tiPe+N?Y=Pe+N:Zibe-ue&&zPe-N&&Yti+Jt?Ve=ti+Jt:beZi+Ae?et=Zi+Ae:Peti-Jt&&VeZi-Ae&&etn&&(A=n-1),D=eA+$s(t,24)*vT*v-v/2,D<0?D=1:D>i&&(D=i-1),r=(Hb(),l=new OA,l),jO(r,A),AO(r,D),on((!u.a&&(u.a=new qi(ma,u,5)),u.a),r)}function Oe(){Oe=Z,KU=(kn(),jlt),_be=Alt,hj=hwe,za=Olt,Z2=dwe,tp=Dlt,Hw=gwe,S4=bwe,P4=pwe,qU=Px,np=Pb,HU=klt,IP=vwe,KR=r3,fj=(Lue(),Cct),Lv=Ict,vb=Tct,Nv=jct,hst=new Yr(Sx,Ce(0)),E4=Sct,ybe=Pct,Q2=Mct,jbe=Jct,Ebe=Dct,Sbe=xct,VU=qct,Pbe=Fct,Mbe=$ct,qR=tst,GU=Qct,Ibe=Uct,Cbe=Vct,Tbe=Yct,Z0=wct,CP=mct,LU=xot,Qge=Not,bbe=new Yb(12),gbe=new Yr(Sb,bbe),Yge=(Lh(),D4),zh=new Yr(qpe,Yge),$w=new Yr(zs,0),dst=new Yr(eY,Ce(1)),TR=new Yr(n3,KE),mb=Ex,ji=UP,_4=Gv,ost=Aj,Of=ylt,Fw=qv,gst=new Yr(tY,(Pt(),!0)),Bw=Oj,pb=UW,wb=Eb,$R=G1,$U=_x,Wge=(eo(),ih),Pu=new Yr(rp,Wge),Q0=zv,FR=Jpe,Kw=Uw,fst=ZW,mbe=lwe,wbe=(Um(),Nj),new Yr(owe,wbe),ust=YW,ast=XW,lst=JW,sst=WW,zU=Oct,abe=oct,FU=rct,TP=Act,zc=Jot,Nw=Iot,PP=Cot,Lw=dot,Vge=got,DU=mot,lj=bot,kU=Pot,lbe=cct,fbe=sct,rbe=Vot,BR=_ct,BU=lct,NU=$ot,dbe=bct,Jge=kot,xU=Rot,OU=vx,hbe=uct,AR=cot,qge=oot,jR=rot,tbe=Hot,ebe=qot,nbe=zot,v4=Vv,yo=Hv,Id=zpe,Df=GW,RU=VW,Gge=yot,Td=QW,SP=Slt,xR=Plt,ep=swe,pbe=Mlt,y4=Clt,cbe=Zot,sbe=tct,qw=i3,jU=iot,ube=ict,RR=Aot,kR=jot,NR=Dj,obe=Wot,MP=hct,dj=wwe,Uge=Tot,vbe=Ect,Xge=Oot,cst=Xot,rst=Eot,ibe=Wpe,LR=Qot,DR=Sot,q1=hot,zge=lot,OR=uot,Hge=aot,AU=fot,J2=sot,Zge=Kot}function yH(e,t){cH();var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae;if(ne=e.e,p=e.d,r=e.a,ne==0)switch(t){case 0:return"0";case 1:return LE;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return Y=new n1,Y.a+="0E",Y.a+=-t,Y.a}if(N=p*10+1+7,z=oe(Yu,vf,25,N+1,15,1),n=N,p==1)if(o=r[0],o<0){Ae=Xi(o,no);do v=Ae,Ae=BI(Ae,10),z[--n]=48+tn(P1(v,jr(Ae,10)))&Ni;while(uc(Ae,0)!=0)}else{Ae=o;do v=Ae,Ae=Ae/10|0,z[--n]=48+(v-Ae*10)&Ni;while(Ae!=0)}else{ue=oe(Qt,_n,25,p,15,1),Pe=p,bc(r,0,ue,0,Pe);e:for(;;){for(ie=0,a=Pe-1;a>=0;a--)be=xr(Ph(ie,32),Xi(ue[a],no)),D=J7t(be),ue[a]=tn(D),ie=tn(h1(D,32));L=tn(ie),A=n;do z[--n]=48+L%10&Ni;while((L=L/10|0)!=0&&n!=0);for(i=9-A+n,u=0;u0;u++)z[--n]=48;for(l=Pe-1;ue[l]==0;l--)if(l==0)break e;Pe=l+1}for(;z[n]==48;)++n}return d=ne<0,d&&(z[--n]=45),pf(z,n,N-n)}function fJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe;switch(e.c=t,e.g=new en,n=(Ap(),new Ip(e.c)),i=new BA(n),poe(i),ne=ln(Ke(e.c,(KI(),fpe))),l=c(Ke(e.c,LW),316),be=c(Ke(e.c,NW),429),u=c(Ke(e.c,upe),482),ue=c(Ke(e.c,xW),430),e.j=ge(Te(Ke(e.c,zat))),a=e.a,l.g){case 0:a=e.a;break;case 1:a=e.b;break;case 2:a=e.i;break;case 3:a=e.e;break;case 4:a=e.f;break;default:throw V(new St(JD+(l.f!=null?l.f:""+l.g)))}if(e.d=new xLe(a,be,u),pe(e.d,(W_(),lP),Fe(Ke(e.c,qat))),e.d.c=Be(Fe(Ke(e.c,ape))),$8(e.c).i==0)return e.d;for(v=new $t($8(e.c));v.e!=v.i.gc();){for(p=c(Vt(v),33),D=p.g/2,A=p.f/2,Pe=new $e(p.i+D,p.j+A);tu(e.g,Pe);)xp(Pe,(g.Math.random()-.5)*Ef,(g.Math.random()-.5)*Ef);N=c(Ke(p,(kn(),Dj)),142),z=new QLe(Pe,new Ru(Pe.a-D-e.j/2-N.b,Pe.b-A-e.j/2-N.d,p.g+e.j+(N.b+N.c),p.f+e.j+(N.d+N.a))),Ee(e.d.i,z),Kn(e.g,Pe,new yr(z,p))}switch(ue.g){case 0:if(ne==null)e.d.d=c(Ne(e.d.i,0),65);else for(ie=new q(e.d.i);ie.a1&&Ri(p,Y,p.c.b,p.c),MO(r)));Y=ie}return p}function UHt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi,ju,Sa,ef;for(Wt(n,"Greedy cycle removal",1),ne=t.a,ef=ne.c.length,e.a=oe(Qt,_n,25,ef,15,1),e.c=oe(Qt,_n,25,ef,15,1),e.b=oe(Qt,_n,25,ef,15,1),d=0,Y=new q(ne);Y.a0?Jt+1:1);for(u=new q(Pe.g);u.a0?Jt+1:1)}e.c[d]==0?Cn(e.e,N):e.a[d]==0&&Cn(e.f,N),++d}for(L=-1,D=1,v=new Se,e.d=c(B(t,(ye(),Y2)),230);ef>0;){for(;e.e.b!=0;)Zi=c(lB(e.e),10),e.b[Zi.p]=L--,nue(e,Zi),--ef;for(;e.f.b!=0;)ju=c(lB(e.f),10),e.b[ju.p]=D++,nue(e,ju),--ef;if(ef>0){for(A=Ar,ie=new q(ne);ie.a=A&&(ue>A&&(v.c=oe(xt,xe,1,0,5,1),A=ue),v.c[v.c.length]=N));p=e.Zf(v),e.b[p.p]=D++,nue(e,p),--ef}}for(ti=ne.c.length+1,d=0;de.b[Sa]&&(D0(i,!0),pe(t,oj,(Pt(),!0)));e.a=null,e.c=null,e.b=null,na(e.f),na(e.e),qt(n)}function dJe(e,t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;for(i=new Se,a=new Se,z=t/2,D=e.gc(),r=c(e.Xb(0),8),Y=c(e.Xb(1),8),L=Rq(r.a,r.b,Y.a,Y.b,z),Ee(i,(pt(0,L.c.length),c(L.c[0],8))),Ee(a,(pt(1,L.c.length),c(L.c[1],8))),d=2;d=0;l--)Cn(n,(pt(l,u.c.length),c(u.c[l],8)));return n}function WHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D;if(u=!0,v=null,i=null,r=null,t=!1,D=_ft,d=null,o=null,a=0,l=$K(e,a,ime,rme),l=0&&rt(e.substr(a,2),"//")?(a+=2,l=$K(e,a,oM,cM),i=e.substr(a,l-a),a=l):v!=null&&(a==e.length||(fn(a,e.length),e.charCodeAt(a)!=47))&&(u=!1,l=Ree(e,is(35),a),l==-1&&(l=e.length),i=e.substr(a,l-a),a=l);if(!n&&a0&&Pr(p,p.length-1)==58&&(r=p,a=l)),a=e.j){e.a=-1,e.c=1;return}if(t=Pr(e.i,e.d++),e.a=t,e.b==1){switch(t){case 92:if(i=10,e.d>=e.j)throw V(new an(gn((un(),rk))));e.a=Pr(e.i,e.d++);break;case 45:(e.e&512)==512&&e.d=e.j||Pr(e.i,e.d)!=63)break;if(++e.d>=e.j)throw V(new an(gn((un(),FV))));switch(t=Pr(e.i,e.d++),t){case 58:i=13;break;case 61:i=14;break;case 33:i=15;break;case 91:i=19;break;case 62:i=18;break;case 60:if(e.d>=e.j)throw V(new an(gn((un(),FV))));if(t=Pr(e.i,e.d++),t==61)i=16;else if(t==33)i=17;else throw V(new an(gn((un(),det))));break;case 35:for(;e.d=e.j)throw V(new an(gn((un(),rk))));e.a=Pr(e.i,e.d++);break;default:i=0}e.c=i}function XHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt;if(Ae=c(B(e,(Oe(),ji)),98),Ae!=(wr(),Xl)&&Ae!=Y1){for(L=e.b,D=L.c.length,p=new Dc((pu(D+2,MH),PO(xr(xr(5,D+2),(D+2)/10|0)))),N=new Dc((pu(D+2,MH),PO(xr(xr(5,D+2),(D+2)/10|0)))),Ee(p,new en),Ee(p,new en),Ee(N,new Se),Ee(N,new Se),Pe=new Se,t=0;t=be||!w9t(Y,i))&&(i=uNe(t,p)),po(Y,i),o=new Kt(Ht(ko(Y).a.Kc(),new j));dn(o);)r=c(rn(o),17),!e.a[r.p]&&(N=r.c.i,--e.e[N.p],e.e[N.p]==0&&R_(wE(D,N)));for(d=p.c.length-1;d>=0;--d)Ee(t.b,(pt(d,p.c.length),c(p.c[d],29)));t.a.c=oe(xt,xe,1,0,5,1),qt(n)}function gJe(e){var t,n,i,r,o,u,a,l,d;for(e.b=1,xn(e),t=null,e.c==0&&e.a==94?(xn(e),t=(Ln(),Ln(),new du(4)),_c(t,0,JE),a=new du(4)):a=(Ln(),Ln(),new du(4)),r=!0;(d=e.c)!=1;){if(d==0&&e.a==93&&!r){t&&(I6(t,a),a=t);break}if(n=e.a,i=!1,d==10)switch(n){case 100:case 68:case 119:case 87:case 115:case 83:pw(a,CE(n)),i=!0;break;case 105:case 73:case 99:case 67:n=(pw(a,CE(n)),-1),n<0&&(i=!0);break;case 112:case 80:if(l=lse(e,n),!l)throw V(new an(gn((un(),BV))));pw(a,l),i=!0;break;default:n=zse(e)}else if(d==24&&!r){if(t&&(I6(t,a),a=t),o=gJe(e),I6(a,o),e.c!=0||e.a!=93)throw V(new an(gn((un(),Pet))));break}if(xn(e),!i){if(d==0){if(n==91)throw V(new an(gn((un(),xfe))));if(n==93)throw V(new an(gn((un(),Lfe))));if(n==45&&!r&&e.a!=93)throw V(new an(gn((un(),$V))))}if(e.c!=0||e.a!=45||n==45&&r)_c(a,n,n);else{if(xn(e),(d=e.c)==1)throw V(new an(gn((un(),ok))));if(d==0&&e.a==93)_c(a,n,n),_c(a,45,45);else{if(d==0&&e.a==93||d==24)throw V(new an(gn((un(),$V))));if(u=e.a,d==0){if(u==91)throw V(new an(gn((un(),xfe))));if(u==93)throw V(new an(gn((un(),Lfe))));if(u==45)throw V(new an(gn((un(),$V))))}else d==10&&(u=zse(e));if(xn(e),n>u)throw V(new an(gn((un(),Iet))));_c(a,n,u)}}}r=!1}if(e.c==1)throw V(new an(gn((un(),ok))));return tv(a),M6(a),e.b=0,xn(e),a}function QHt(e){cn(e.c,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#decimal"])),cn(e.d,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#integer"])),cn(e.e,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#boolean"])),cn(e.f,yn,U(G(Re,1),we,2,6,[Or,"EBoolean",Dn,"EBoolean:Object"])),cn(e.i,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#byte"])),cn(e.g,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#hexBinary"])),cn(e.j,yn,U(G(Re,1),we,2,6,[Or,"EByte",Dn,"EByte:Object"])),cn(e.n,yn,U(G(Re,1),we,2,6,[Or,"EChar",Dn,"EChar:Object"])),cn(e.t,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#double"])),cn(e.u,yn,U(G(Re,1),we,2,6,[Or,"EDouble",Dn,"EDouble:Object"])),cn(e.F,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#float"])),cn(e.G,yn,U(G(Re,1),we,2,6,[Or,"EFloat",Dn,"EFloat:Object"])),cn(e.I,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#int"])),cn(e.J,yn,U(G(Re,1),we,2,6,[Or,"EInt",Dn,"EInt:Object"])),cn(e.N,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#long"])),cn(e.O,yn,U(G(Re,1),we,2,6,[Or,"ELong",Dn,"ELong:Object"])),cn(e.Z,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#short"])),cn(e.$,yn,U(G(Re,1),we,2,6,[Or,"EShort",Dn,"EShort:Object"])),cn(e._,yn,U(G(Re,1),we,2,6,[Or,"http://www.w3.org/2001/XMLSchema#string"]))}function ZHt(e){var t,n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt;if(e.c.length==1)return pt(0,e.c.length),c(e.c[0],135);if(e.c.length<=0)return new lO;for(l=new q(e);l.av&&(Ot=0,Jt+=p+Ae,p=0),aLt(be,u,Ot,Jt),t=g.Math.max(t,Ot+Pe.a),p=g.Math.max(p,Pe.b),Ot+=Pe.a+Ae;for(ue=new en,n=new en,et=new q(e);et.axq(o))&&(v=o);for(!v&&(v=(pt(0,z.c.length),c(z.c[0],180))),N=new q(t.b);N.a=-1900?1:0,n>=4?wn(e,U(G(Re,1),we,2,6,[OJe,DJe])[a]):wn(e,U(G(Re,1),we,2,6,["BC","AD"])[a]);break;case 121:U9t(e,n,i);break;case 77:JFt(e,n,i);break;case 107:l=r.q.getHours(),l==0?Vf(e,24,n):Vf(e,l,n);break;case 83:mLt(e,n,r);break;case 69:p=i.q.getDay(),n==5?wn(e,U(G(Re,1),we,2,6,["S","M","T","W","T","F","S"])[p]):n==4?wn(e,U(G(Re,1),we,2,6,[BH,$H,KH,qH,HH,zH,VH])[p]):wn(e,U(G(Re,1),we,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[p]);break;case 97:r.q.getHours()>=12&&r.q.getHours()<24?wn(e,U(G(Re,1),we,2,6,["AM","PM"])[1]):wn(e,U(G(Re,1),we,2,6,["AM","PM"])[0]);break;case 104:v=r.q.getHours()%12,v==0?Vf(e,12,n):Vf(e,v,n);break;case 75:A=r.q.getHours()%12,Vf(e,A,n);break;case 72:D=r.q.getHours(),Vf(e,D,n);break;case 99:L=i.q.getDay(),n==5?wn(e,U(G(Re,1),we,2,6,["S","M","T","W","T","F","S"])[L]):n==4?wn(e,U(G(Re,1),we,2,6,[BH,$H,KH,qH,HH,zH,VH])[L]):n==3?wn(e,U(G(Re,1),we,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[L]):Vf(e,L,1);break;case 76:N=i.q.getMonth(),n==5?wn(e,U(G(Re,1),we,2,6,["J","F","M","A","M","J","J","A","S","O","N","D"])[N]):n==4?wn(e,U(G(Re,1),we,2,6,[TH,jH,AH,OH,C2,DH,kH,RH,xH,LH,NH,FH])[N]):n==3?wn(e,U(G(Re,1),we,2,6,["Jan","Feb","Mar","Apr",C2,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"])[N]):Vf(e,N+1,n);break;case 81:z=i.q.getMonth()/3|0,n<4?wn(e,U(G(Re,1),we,2,6,["Q1","Q2","Q3","Q4"])[z]):wn(e,U(G(Re,1),we,2,6,["1st quarter","2nd quarter","3rd quarter","4th quarter"])[z]);break;case 100:Y=i.q.getDate(),Vf(e,Y,n);break;case 109:d=r.q.getMinutes(),Vf(e,d,n);break;case 115:u=r.q.getSeconds(),Vf(e,u,n);break;case 122:n<4?wn(e,o.c[0]):wn(e,o.c[1]);break;case 118:wn(e,o.b);break;case 90:n<3?wn(e,sRt(o)):n==3?wn(e,lRt(o)):wn(e,fRt(o.a));break;default:return!1}return!0}function xue(e,t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti;if(tYe(t),l=c(ee((!t.b&&(t.b=new dt(Ut,t,4,7)),t.b),0),82),p=c(ee((!t.c&&(t.c=new dt(Ut,t,5,8)),t.c),0),82),a=Co(l),d=Co(p),u=(!t.a&&(t.a=new Me(mi,t,6,6)),t.a).i==0?null:c(ee((!t.a&&(t.a=new Me(mi,t,6,6)),t.a),0),202),Ae=c(Bt(e.a,a),10),Ot=c(Bt(e.a,d),10),Ve=null,Jt=null,Q(l,186)&&(Pe=c(Bt(e.a,l),299),Q(Pe,11)?Ve=c(Pe,11):Q(Pe,10)&&(Ae=c(Pe,10),Ve=c(Ne(Ae.j,0),11))),Q(p,186)&&(At=c(Bt(e.a,p),299),Q(At,11)?Jt=c(At,11):Q(At,10)&&(Ot=c(At,10),Jt=c(Ne(Ot.j,0),11))),!Ae||!Ot)throw V(new NS("The source or the target of edge "+t+" could not be found. This usually happens when an edge connects a node laid out by ELK Layered to a node in another level of hierarchy laid out by either another instance of ELK Layered or another layout algorithm alltogether. The former can be solved by setting the hierarchyHandling option to INCLUDE_CHILDREN."));for(N=new c0,Mo(N,t),pe(N,(ye(),Hn),t),pe(N,(Oe(),yo),null),D=c(B(i,Cc),21),Ae==Ot&&D.Fc((to(),vP)),Ve||(be=(Zr(),Fc),et=null,u&&Tm(c(B(Ae,ji),98))&&(et=new $e(u.j,u.k),fFe(et,KC(t)),KFe(et,n),Jp(d,a)&&(be=Os,Wn(et,Ae.n))),Ve=ZYe(Ae,et,be,i)),Jt||(be=(Zr(),Os),ti=null,u&&Tm(c(B(Ot,ji),98))&&(ti=new $e(u.b,u.c),fFe(ti,KC(t)),KFe(ti,n)),Jt=ZYe(Ot,ti,be,Nr(Ot))),Rr(N,Ve),br(N,Jt),(Ve.e.c.length>1||Ve.g.c.length>1||Jt.e.c.length>1||Jt.g.c.length>1)&&D.Fc((to(),mP)),A=new $t((!t.n&&(t.n=new Me(Lo,t,1,7)),t.n));A.e!=A.i.gc();)if(v=c(Vt(A),137),!Be(Fe(Ke(v,mb)))&&v.a)switch(z=_K(v),Ee(N.b,z),c(B(z,Df),272).g){case 1:case 2:D.Fc((to(),b4));break;case 0:D.Fc((to(),g4)),pe(z,Df,(xl(),A4))}if(o=c(B(i,PP),314),Y=c(B(i,BR),315),r=o==(f2(),nj)||Y==(s6(),QU),u&&(!u.a&&(u.a=new qi(ma,u,5)),u.a).i!=0&&r){for(ie=HI(u),L=new ds,ue=Mn(ie,0);ue.b!=ue.d.c;)ne=c(Pn(ue),8),Cn(L,new go(ne));pe(N,sge,L)}return N}function izt(e){e.gb||(e.gb=!0,e.b=Xo(e,0),_i(e.b,18),oi(e.b,19),e.a=Xo(e,1),_i(e.a,1),oi(e.a,2),oi(e.a,3),oi(e.a,4),oi(e.a,5),e.o=Xo(e,2),_i(e.o,8),_i(e.o,9),oi(e.o,10),oi(e.o,11),oi(e.o,12),oi(e.o,13),oi(e.o,14),oi(e.o,15),oi(e.o,16),oi(e.o,17),oi(e.o,18),oi(e.o,19),oi(e.o,20),oi(e.o,21),oi(e.o,22),oi(e.o,23),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),mo(e.o),e.p=Xo(e,3),_i(e.p,2),_i(e.p,3),_i(e.p,4),_i(e.p,5),oi(e.p,6),oi(e.p,7),mo(e.p),mo(e.p),e.q=Xo(e,4),_i(e.q,8),e.v=Xo(e,5),oi(e.v,9),mo(e.v),mo(e.v),mo(e.v),e.w=Xo(e,6),_i(e.w,2),_i(e.w,3),_i(e.w,4),oi(e.w,5),e.B=Xo(e,7),oi(e.B,1),mo(e.B),mo(e.B),mo(e.B),e.Q=Xo(e,8),oi(e.Q,0),mo(e.Q),e.R=Xo(e,9),_i(e.R,1),e.S=Xo(e,10),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),mo(e.S),e.T=Xo(e,11),oi(e.T,10),oi(e.T,11),oi(e.T,12),oi(e.T,13),oi(e.T,14),mo(e.T),mo(e.T),e.U=Xo(e,12),_i(e.U,2),_i(e.U,3),oi(e.U,4),oi(e.U,5),oi(e.U,6),oi(e.U,7),mo(e.U),e.V=Xo(e,13),oi(e.V,10),e.W=Xo(e,14),_i(e.W,18),_i(e.W,19),_i(e.W,20),oi(e.W,21),oi(e.W,22),oi(e.W,23),e.bb=Xo(e,15),_i(e.bb,10),_i(e.bb,11),_i(e.bb,12),_i(e.bb,13),_i(e.bb,14),_i(e.bb,15),_i(e.bb,16),oi(e.bb,17),mo(e.bb),mo(e.bb),e.eb=Xo(e,16),_i(e.eb,2),_i(e.eb,3),_i(e.eb,4),_i(e.eb,5),_i(e.eb,6),_i(e.eb,7),oi(e.eb,8),oi(e.eb,9),e.ab=Xo(e,17),_i(e.ab,0),_i(e.ab,1),e.H=Xo(e,18),oi(e.H,0),oi(e.H,1),oi(e.H,2),oi(e.H,3),oi(e.H,4),oi(e.H,5),mo(e.H),e.db=Xo(e,19),oi(e.db,2),e.c=On(e,20),e.d=On(e,21),e.e=On(e,22),e.f=On(e,23),e.i=On(e,24),e.g=On(e,25),e.j=On(e,26),e.k=On(e,27),e.n=On(e,28),e.r=On(e,29),e.s=On(e,30),e.t=On(e,31),e.u=On(e,32),e.fb=On(e,33),e.A=On(e,34),e.C=On(e,35),e.D=On(e,36),e.F=On(e,37),e.G=On(e,38),e.I=On(e,39),e.J=On(e,40),e.L=On(e,41),e.M=On(e,42),e.N=On(e,43),e.O=On(e,44),e.P=On(e,45),e.X=On(e,46),e.Y=On(e,47),e.Z=On(e,48),e.$=On(e,49),e._=On(e,50),e.cb=On(e,51),e.K=On(e,52))}function kn(){kn=Z;var e,t;GP=new hi(_Ze),j4=new hi(EZe),Npe=(Gf(),$W),ylt=new ut(Ele,Npe),n3=new ut(D2,null),_lt=new hi(pfe),Bpe=(sw(),ui(HW,U(G(zW,1),_e,291,0,[qW]))),vx=new ut(zD,Bpe),Aj=new ut(DT,(Pt(),!1)),$pe=(eo(),ih),rp=new ut(Mle,$pe),Hpe=(Lh(),nY),qpe=new ut(AT,Hpe),Gpe=new ut(XD,!1),Upe=(Rh(),Mx),qv=new ut(HD,Upe),iwe=new Yb(12),Sb=new ut(N0,iwe),yx=new ut(PT,!1),Wpe=new ut(iV,!1),kj=new ut(N6,!1),uwe=(wr(),Y1),UP=new ut(Ez,uwe),i3=new hi(VD),Sx=new hi(ST),eY=new hi(MD),tY=new hi(L6),Ype=new ds,Hv=new ut(Rle,Ype),Slt=new ut(Nle,!1),Plt=new ut(Fle,!1),Xpe=new OS,Dj=new ut($le,Xpe),Ex=new ut(yle,!1),Tlt=new ut(SZe,1),new ut(PZe,!0),Ce(0),new ut(MZe,Ce(100)),new ut(CZe,!1),Ce(0),new ut(IZe,Ce(4e3)),Ce(0),new ut(TZe,Ce(400)),new ut(jZe,!1),new ut(AZe,!1),new ut(OZe,!0),new ut(DZe,!1),Fpe=(l7(),cY),Elt=new ut(bfe,Fpe),jlt=new ut(ule,10),Alt=new ut(ale,10),hwe=new ut(pz,20),Olt=new ut(lle,10),dwe=new ut(_z,2),Dlt=new ut(fle,10),gwe=new ut(hle,0),Px=new ut(ble,5),bwe=new ut(dle,1),pwe=new ut(gle,1),Pb=new ut(_w,20),klt=new ut(ple,10),vwe=new ut(wle,10),r3=new hi(mle),mwe=new N7e,wwe=new ut(Kle,mwe),Clt=new hi(nV),rwe=!1,Mlt=new ut(tV,rwe),Qpe=new Yb(5),Jpe=new ut(Cle,Qpe),Zpe=(fw(),t=c(rl(ro),9),new ku(t,c(Da(t,t.length),9),0)),zv=new ut(qE,Zpe),cwe=(Um(),W1),owe=new ut(jle,cwe),YW=new hi(Ale),XW=new hi(Ole),JW=new hi(Dle),WW=new hi(kle),ewe=(e=c(rl(tM),9),new ku(e,c(Da(e,e.length),9),0)),Eb=new ut(gv,ewe),nwe=nt((Ks(),R4)),G1=new ut(k2,nwe),twe=new $e(0,0),Vv=new ut(R2,twe),_x=new ut(eV,!1),Kpe=(xl(),A4),GW=new ut(xle,Kpe),VW=new ut(CD,!1),Ce(1),new ut(kZe,null),swe=new hi(Ble),QW=new hi(Lle),fwe=(Ie(),Vo),Gv=new ut(_le,fwe),zs=new hi(vle),awe=(js(),nt(X1)),Uw=new ut(HE,awe),ZW=new ut(Ile,!1),lwe=new ut(Tle,!0),Oj=new ut(Sle,!1),UW=new ut(Ple,!1),zpe=new ut(wz,1),Vpe=(L7(),rY),new ut(RZe,Vpe),Ilt=!0}function ye(){ye=Z;var e,t;Hn=new hi(mae),ige=new hi("coordinateOrigin"),CU=new hi("processors"),nge=new Wi("compoundNode",(Pt(),!1)),cj=new Wi("insideConnections",!1),sge=new hi("originalBendpoints"),uge=new hi("originalDummyNodePosition"),age=new hi("originalLabelEdge"),uj=new hi("representedLabels"),yP=new hi("endLabels"),G2=new hi("endLabel.origin"),W2=new Wi("labelSide",(mu(),Lj)),Dv=new Wi("maxEdgeThickness",0),Ul=new Wi("reversed",!1),Y2=new hi(pQe),wl=new Wi("longEdgeSource",null),da=new Wi("longEdgeTarget",null),Rw=new Wi("longEdgeHasLabelDummies",!1),sj=new Wi("longEdgeBeforeLabelDummy",!1),MR=new Wi("edgeConstraint",(zg(),aU)),X0=new hi("inLayerLayoutUnit"),gb=new Wi("inLayerConstraint",(Oh(),rj)),U2=new Wi("inLayerSuccessorConstraint",new Se),cge=new Wi("inLayerSuccessorConstraintBetweenNonDummies",!1),As=new hi("portDummy"),PR=new Wi("crossingHint",Ce(0)),Cc=new Wi("graphProperties",(t=c(rl(pU),9),new ku(t,c(Da(t,t.length),9),0))),Zo=new Wi("externalPortSide",(Ie(),Vo)),oge=new Wi("externalPortSize",new Tr),_U=new hi("externalPortReplacedDummies"),CR=new hi("externalPortReplacedDummy"),kw=new Wi("externalPortConnections",(e=c(rl(Gr),9),new ku(e,c(Da(e,e.length),9),0))),J0=new Wi(uQe,0),tge=new hi("barycenterAssociates"),X2=new hi("TopSideComments"),V2=new hi("BottomSideComments"),SR=new hi("CommentConnectionPort"),SU=new Wi("inputCollect",!1),MU=new Wi("outputCollect",!1),oj=new Wi("cyclic",!1),rge=new hi("crossHierarchyMap"),TU=new hi("targetOffset"),new Wi("splineLabelSize",new Tr),Rv=new hi("spacings"),IR=new Wi("partitionConstraint",!1),W0=new hi("breakingPoint.info"),hge=new hi("splines.survivingEdge"),bb=new hi("splines.route.start"),xv=new hi("splines.edgeChain"),fge=new hi("originalPortConstraints"),w4=new hi("selfLoopHolder"),m4=new hi("splines.nsPortY"),hc=new hi("modelOrder"),PU=new hi("longEdgeTargetNode"),Y0=new Wi(HQe,!1),kv=new Wi(HQe,!1),EU=new hi("layerConstraints.hiddenNodes"),lge=new hi("layerConstraints.opposidePort"),IU=new hi("targetNode.modelOrder")}function Lue(){Lue=Z,Sge=(uI(),pR),Tot=new ut(Cae,Sge),$ot=new ut(Iae,(Pt(),!1)),jge=(iO(),yU),Vot=new ut(AD,jge),cct=new ut(Tae,!1),sct=new ut(jae,!0),iot=new ut(Aae,!1),Nge=(rI(),tW),Ect=new ut(Oae,Nge),Ce(1),Act=new ut(Dae,Ce(7)),Oct=new ut(kae,!1),Kot=new ut(Rae,!1),Ege=(Qg(),sU),Iot=new ut(Tz,Ege),Dge=(R7(),WU),oct=new ut(TT,Dge),Age=(Ku(),aj),Jot=new ut(xae,Age),Ce(-1),Xot=new ut(Lae,Ce(-1)),Ce(-1),Qot=new ut(Nae,Ce(-1)),Ce(-1),Zot=new ut(jz,Ce(4)),Ce(-1),tct=new ut(Az,Ce(2)),Oge=(iv(),UR),rct=new ut(Oz,Oge),Ce(0),ict=new ut(Dz,Ce(0)),Wot=new ut(kz,Ce(Fn)),_ge=(f2(),H2),Cot=new ut(K6,_ge),dot=new ut(Fae,!1),yot=new ut(Rz,.1),Pot=new ut(xz,!1),Ce(-1),Eot=new ut(Bae,Ce(-1)),Ce(-1),Sot=new ut($ae,Ce(-1)),Ce(0),got=new ut(Kae,Ce(40)),yge=(J_(),mU),mot=new ut(Lz,yge),vge=ij,bot=new ut(OD,vge),Lge=(s6(),jP),_ct=new ut(bv,Lge),hct=new hi(DD),kge=(eI(),mR),uct=new ut(Nz,kge),Rge=($I(),vR),lct=new ut(Fz,Rge),bct=new ut(Bz,.3),wct=new hi($z),xge=(rw(),GR),mct=new ut(Kz,xge),Cge=(VO(),iW),kot=new ut(qae,Cge),Ige=(WC(),rW),Rot=new ut(Hae,Ige),Tge=(rE(),DP),xot=new ut(kD,Tge),Not=new ut(RD,.2),Oot=new ut(qz,2),Cct=new ut(zae,null),Tct=new ut(Vae,10),Ict=new ut(Gae,10),jct=new ut(Uae,20),Ce(0),Sct=new ut(Wae,Ce(0)),Ce(0),Pct=new ut(Yae,Ce(0)),Ce(0),Mct=new ut(Xae,Ce(0)),rot=new ut(Hz,!1),bge=(mE(),wP),cot=new ut(Jae,bge),gge=(gO(),oU),oot=new ut(Qae,gge),Hot=new ut(xD,!1),Ce(0),qot=new ut(zz,Ce(16)),Ce(0),zot=new ut(Vz,Ce(5)),$ge=(XO(),sW),Jct=new ut(Hh,$ge),Dct=new ut(LD,10),xct=new ut(ND,1),Bge=(DO(),bR),qct=new ut(q6,Bge),Fct=new hi(Gz),Fge=Ce(1),Ce(0),$ct=new ut(Uz,Fge),Kge=(HO(),cW),tst=new ut(FD,Kge),Qct=new hi(BD),Uct=new ut($D,!0),Vct=new ut(KD,2),Yct=new ut(Wz,!0),Mge=(F7(),wR),Aot=new ut(Zae,Mge),Pge=(y2(),f4),jot=new ut(ele,Pge),mge=(kh(),H1),hot=new ut(qD,mge),fot=new ut(tle,!1),pge=(y0(),Mv),sot=new ut(Yz,pge),wge=(X5(),YU),lot=new ut(nle,wge),uot=new ut(Xz,0),aot=new ut(Jz,0),Uot=uU,Got=nj,ect=zR,nct=zR,Yot=UU,_ot=(Rh(),kd),Mot=H2,vot=H2,pot=H2,wot=kd,dct=AP,gct=jP,act=jP,fct=jP,pct=ZU,yct=AP,vct=AP,Lot=(Lh(),o3),Fot=o3,Bot=DP,Dot=Rj,kct=M4,Rct=zw,Lct=M4,Nct=zw,Hct=M4,zct=zw,Bct=cU,Kct=bR,nst=M4,ist=zw,Zct=M4,est=zw,Wct=zw,Gct=zw,Xct=zw}function Jr(){Jr=Z,e1e=new Li("DIRECTION_PREPROCESSOR",0),Jde=new Li("COMMENT_PREPROCESSOR",1),hP=new Li("EDGE_AND_LAYER_CONSTRAINT_EDGE_REVERSER",2),VG=new Li("INTERACTIVE_EXTERNAL_PORT_POSITIONER",3),v1e=new Li("PARTITION_PREPROCESSOR",4),Xk=new Li("LABEL_DUMMY_INSERTER",5),cR=new Li("SELF_LOOP_PREPROCESSOR",6),s4=new Li("LAYER_CONSTRAINT_PREPROCESSOR",7),w1e=new Li("PARTITION_MIDPROCESSOR",8),u1e=new Li("HIGH_DEGREE_NODE_LAYER_PROCESSOR",9),b1e=new Li("NODE_PROMOTION",10),c4=new Li("LAYER_CONSTRAINT_POSTPROCESSOR",11),m1e=new Li("PARTITION_POSTPROCESSOR",12),o1e=new Li("HIERARCHICAL_PORT_CONSTRAINT_PROCESSOR",13),y1e=new Li("SEMI_INTERACTIVE_CROSSMIN_PROCESSOR",14),Vde=new Li("BREAKING_POINT_INSERTER",15),eR=new Li("LONG_EDGE_SPLITTER",16),GG=new Li("PORT_SIDE_PROCESSOR",17),Wk=new Li("INVERTED_PORT_PROCESSOR",18),iR=new Li("PORT_LIST_SORTER",19),E1e=new Li("SORT_BY_INPUT_ORDER_OF_MODEL",20),nR=new Li("NORTH_SOUTH_PORT_PREPROCESSOR",21),Gde=new Li("BREAKING_POINT_PROCESSOR",22),p1e=new Li(xQe,23),S1e=new Li(LQe,24),rR=new Li("SELF_LOOP_PORT_RESTORER",25),_1e=new Li("SINGLE_EDGE_GRAPH_WRAPPER",26),Yk=new Li("IN_LAYER_CONSTRAINT_PROCESSOR",27),n1e=new Li("END_NODE_PORT_LABEL_MANAGEMENT_PROCESSOR",28),d1e=new Li("LABEL_AND_NODE_SIZE_PROCESSOR",29),h1e=new Li("INNERMOST_NODE_MARGIN_CALCULATOR",30),sR=new Li("SELF_LOOP_ROUTER",31),Yde=new Li("COMMENT_NODE_MARGIN_CALCULATOR",32),Uk=new Li("END_LABEL_PREPROCESSOR",33),Qk=new Li("LABEL_DUMMY_SWITCHER",34),Wde=new Li("CENTER_LABEL_MANAGEMENT_PROCESSOR",35),o4=new Li("LABEL_SIDE_SELECTOR",36),l1e=new Li("HYPEREDGE_DUMMY_MERGER",37),c1e=new Li("HIERARCHICAL_PORT_DUMMY_SIZE_PROCESSOR",38),g1e=new Li("LAYER_SIZE_AND_GRAPH_HEIGHT_CALCULATOR",39),dP=new Li("HIERARCHICAL_PORT_POSITION_PROCESSOR",40),Qde=new Li("CONSTRAINTS_POSTPROCESSOR",41),Xde=new Li("COMMENT_POSTPROCESSOR",42),f1e=new Li("HYPERNODE_PROCESSOR",43),s1e=new Li("HIERARCHICAL_PORT_ORTHOGONAL_EDGE_ROUTER",44),Zk=new Li("LONG_EDGE_JOINER",45),oR=new Li("SELF_LOOP_POSTPROCESSOR",46),Ude=new Li("BREAKING_POINT_REMOVER",47),tR=new Li("NORTH_SOUTH_PORT_POSTPROCESSOR",48),a1e=new Li("HORIZONTAL_COMPACTOR",49),Jk=new Li("LABEL_DUMMY_REMOVER",50),i1e=new Li("FINAL_SPLINE_BENDPOINTS_CALCULATOR",51),t1e=new Li("END_LABEL_SORTER",52),ej=new Li("REVERSED_EDGE_RESTORER",53),Gk=new Li("END_LABEL_POSTPROCESSOR",54),r1e=new Li("HIERARCHICAL_NODE_RESIZER",55),Zde=new Li("DIRECTION_POSTPROCESSOR",56)}function rzt(e,t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et,At,Ot,Jt,ti,Zi,ju,Sa,ef,Ux,eA,gM,tA,B4,EY,mht,SY,Bd,lp,$4,nA,iA,f3,PY,bM,vht,Fme,fp,pM,MY,h3,wM,im,mM,CY,yht;for(Fme=0,ti=t,Sa=0,eA=ti.length;Sa0&&(e.a[Bd.p]=Fme++)}for(wM=0,Zi=n,ef=0,gM=Zi.length;ef0;){for(Bd=(Lt(iA.b>0),c(iA.a.Xb(iA.c=--iA.b),11)),nA=0,a=new q(Bd.e);a.a0&&(Bd.j==(Ie(),_t)?(e.a[Bd.p]=wM,++wM):(e.a[Bd.p]=wM+tA+EY,++EY))}wM+=EY}for($4=new en,L=new Eh,Jt=t,ju=0,Ux=Jt.length;jud.b&&(d.b=f3)):Bd.i.c==vht&&(f3d.c&&(d.c=f3));for(L_(N,0,N.length,null),h3=oe(Qt,_n,25,N.length,15,1),i=oe(Qt,_n,25,wM+1,15,1),Y=0;Y0;)Ae%2>0&&(r+=CY[Ae+1]),Ae=(Ae-1)/2|0,++CY[Ae];for(et=oe(Gst,xe,362,N.length*2,0,1),ue=0;ue'?":rt(det,e)?"'(?<' or '(? toIndex: ",Yue=", toIndex: ",Xue="Index: ",Jue=", Size: ",NE="org.eclipse.elk.alg.common",Zn={62:1},zJe="org.eclipse.elk.alg.common.compaction",VJe="Scanline/EventHandler",Qf="org.eclipse.elk.alg.common.compaction.oned",GJe="CNode belongs to another CGroup.",UJe="ISpacingsHandler/1",rz="The ",oz=" instance has been finished already.",WJe="The direction ",YJe=" is not supported by the CGraph instance.",XJe="OneDimensionalCompactor",JJe="OneDimensionalCompactor/lambda$0$Type",QJe="Quadruplet",ZJe="ScanlineConstraintCalculator",eQe="ScanlineConstraintCalculator/ConstraintsScanlineHandler",tQe="ScanlineConstraintCalculator/ConstraintsScanlineHandler/lambda$0$Type",nQe="ScanlineConstraintCalculator/Timestamp",iQe="ScanlineConstraintCalculator/lambda$0$Type",yf={169:1,45:1},cz="org.eclipse.elk.alg.common.compaction.options",zo="org.eclipse.elk.core.data",Que="org.eclipse.elk.polyomino.traversalStrategy",Zue="org.eclipse.elk.polyomino.lowLevelSort",eae="org.eclipse.elk.polyomino.highLevelSort",tae="org.eclipse.elk.polyomino.fill",ca={130:1},sz="polyomino",k6="org.eclipse.elk.alg.common.networksimplex",Zf={177:1,3:1,4:1},rQe="org.eclipse.elk.alg.common.nodespacing",ib="org.eclipse.elk.alg.common.nodespacing.cellsystem",FE="CENTER",oQe={212:1,326:1},nae={3:1,4:1,5:1,595:1},j2="LEFT",A2="RIGHT",iae="Vertical alignment cannot be null",rae="BOTTOM",vD="org.eclipse.elk.alg.common.nodespacing.internal",R6="UNDEFINED",ql=.01,yT="org.eclipse.elk.alg.common.nodespacing.internal.algorithm",cQe="LabelPlacer/lambda$0$Type",sQe="LabelPlacer/lambda$1$Type",uQe="portRatioOrPosition",BE="org.eclipse.elk.alg.common.overlaps",uz="DOWN",_f="org.eclipse.elk.alg.common.polyomino",yD="NORTH",az="EAST",lz="SOUTH",fz="WEST",_D="org.eclipse.elk.alg.common.polyomino.structures",oae="Direction",hz="Grid is only of size ",dz=". Requested point (",gz=") is out of bounds.",ED=" Given center based coordinates were (",_T="org.eclipse.elk.graph.properties",aQe="IPropertyHolder",cae={3:1,94:1,134:1},O2="org.eclipse.elk.alg.common.spore",lQe="org.eclipse.elk.alg.common.utils",rb={209:1},hv="org.eclipse.elk.core",fQe="Connected Components Compaction",hQe="org.eclipse.elk.alg.disco",SD="org.eclipse.elk.alg.disco.graph",bz="org.eclipse.elk.alg.disco.options",sae="CompactionStrategy",uae="org.eclipse.elk.disco.componentCompaction.strategy",aae="org.eclipse.elk.disco.componentCompaction.componentLayoutAlgorithm",lae="org.eclipse.elk.disco.debug.discoGraph",fae="org.eclipse.elk.disco.debug.discoPolys",dQe="componentCompaction",ob="org.eclipse.elk.disco",pz="org.eclipse.elk.spacing.componentComponent",wz="org.eclipse.elk.edge.thickness",D2="org.eclipse.elk.aspectRatio",N0="org.eclipse.elk.padding",dv="org.eclipse.elk.alg.disco.transform",mz=1.5707963267948966,$E=17976931348623157e292,yw={3:1,4:1,5:1,192:1},hae={3:1,6:1,4:1,5:1,106:1,120:1},dae="org.eclipse.elk.alg.force",gae="ComponentsProcessor",gQe="ComponentsProcessor/1",ET="org.eclipse.elk.alg.force.graph",bQe="Component Layout",bae="org.eclipse.elk.alg.force.model",PD="org.eclipse.elk.force.model",pae="org.eclipse.elk.force.iterations",wae="org.eclipse.elk.force.repulsivePower",vz="org.eclipse.elk.force.temperature",Ef=.001,yz="org.eclipse.elk.force.repulsion",x6="org.eclipse.elk.alg.force.options",KE=1.600000023841858,_u="org.eclipse.elk.force",ST="org.eclipse.elk.priority",_w="org.eclipse.elk.spacing.nodeNode",_z="org.eclipse.elk.spacing.edgeLabel",MD="org.eclipse.elk.randomSeed",L6="org.eclipse.elk.separateConnectedComponents",PT="org.eclipse.elk.interactive",Ez="org.eclipse.elk.portConstraints",CD="org.eclipse.elk.edgeLabels.inline",N6="org.eclipse.elk.omitNodeMicroLayout",k2="org.eclipse.elk.nodeSize.options",gv="org.eclipse.elk.nodeSize.constraints",qE="org.eclipse.elk.nodeLabels.placement",HE="org.eclipse.elk.portLabels.placement",mae="origin",pQe="random",wQe="boundingBox.upLeft",mQe="boundingBox.lowRight",vae="org.eclipse.elk.stress.fixed",yae="org.eclipse.elk.stress.desiredEdgeLength",_ae="org.eclipse.elk.stress.dimension",Eae="org.eclipse.elk.stress.epsilon",Sae="org.eclipse.elk.stress.iterationLimit",D1="org.eclipse.elk.stress",vQe="ELK Stress",R2="org.eclipse.elk.nodeSize.minimum",ID="org.eclipse.elk.alg.force.stress",yQe="Layered layout",x2="org.eclipse.elk.alg.layered",MT="org.eclipse.elk.alg.layered.compaction.components",F6="org.eclipse.elk.alg.layered.compaction.oned",TD="org.eclipse.elk.alg.layered.compaction.oned.algs",cb="org.eclipse.elk.alg.layered.compaction.recthull",Sf="org.eclipse.elk.alg.layered.components",qh="NONE",ac={3:1,6:1,4:1,9:1,5:1,122:1},_Qe={3:1,6:1,4:1,5:1,141:1,106:1,120:1},jD="org.eclipse.elk.alg.layered.compound",Ti={51:1},Lc="org.eclipse.elk.alg.layered.graph",Sz=" -> ",EQe="Not supported by LGraph",Pae="Port side is undefined",Pz={3:1,6:1,4:1,5:1,474:1,141:1,106:1,120:1},Ed={3:1,6:1,4:1,5:1,141:1,193:1,203:1,106:1,120:1},SQe={3:1,6:1,4:1,5:1,141:1,1943:1,203:1,106:1,120:1},PQe=`([{"' \r -`,MQe=`)]}"' \r -`,CQe="The given string contains parts that cannot be parsed as numbers.",CT="org.eclipse.elk.core.math",IQe={3:1,4:1,142:1,207:1,414:1},TQe={3:1,4:1,116:1,207:1,414:1},kt="org.eclipse.elk.layered",Sd="org.eclipse.elk.alg.layered.graph.transform",jQe="ElkGraphImporter",AQe="ElkGraphImporter/lambda$0$Type",OQe="ElkGraphImporter/lambda$1$Type",DQe="ElkGraphImporter/lambda$2$Type",kQe="ElkGraphImporter/lambda$4$Type",RQe="Node margin calculation",Ct="org.eclipse.elk.alg.layered.intermediate",xQe="ONE_SIDED_GREEDY_SWITCH",LQe="TWO_SIDED_GREEDY_SWITCH",Mz="No implementation is available for the layout processor ",Mae="IntermediateProcessorStrategy",Cz="Node '",NQe="FIRST_SEPARATE",FQe="LAST_SEPARATE",BQe="Odd port side processing",Ki="org.eclipse.elk.alg.layered.intermediate.compaction",B6="org.eclipse.elk.alg.layered.intermediate.greedyswitch",eh="org.eclipse.elk.alg.layered.p3order.counting",IT={225:1},L2="org.eclipse.elk.alg.layered.intermediate.loops",Eu="org.eclipse.elk.alg.layered.intermediate.loops.ordering",k1="org.eclipse.elk.alg.layered.intermediate.loops.routing",$6="org.eclipse.elk.alg.layered.intermediate.preserveorder",Pf="org.eclipse.elk.alg.layered.intermediate.wrapping",lc="org.eclipse.elk.alg.layered.options",Iz="INTERACTIVE",$Qe="DEPTH_FIRST",KQe="EDGE_LENGTH",qQe="SELF_LOOPS",HQe="firstTryWithInitialOrder",Cae="org.eclipse.elk.layered.directionCongruency",Iae="org.eclipse.elk.layered.feedbackEdges",AD="org.eclipse.elk.layered.interactiveReferencePoint",Tae="org.eclipse.elk.layered.mergeEdges",jae="org.eclipse.elk.layered.mergeHierarchyEdges",Aae="org.eclipse.elk.layered.allowNonFlowPortsToSwitchSides",Oae="org.eclipse.elk.layered.portSortingStrategy",Dae="org.eclipse.elk.layered.thoroughness",kae="org.eclipse.elk.layered.unnecessaryBendpoints",Rae="org.eclipse.elk.layered.generatePositionAndLayerIds",Tz="org.eclipse.elk.layered.cycleBreaking.strategy",TT="org.eclipse.elk.layered.layering.strategy",xae="org.eclipse.elk.layered.layering.layerConstraint",Lae="org.eclipse.elk.layered.layering.layerChoiceConstraint",Nae="org.eclipse.elk.layered.layering.layerId",jz="org.eclipse.elk.layered.layering.minWidth.upperBoundOnWidth",Az="org.eclipse.elk.layered.layering.minWidth.upperLayerEstimationScalingFactor",Oz="org.eclipse.elk.layered.layering.nodePromotion.strategy",Dz="org.eclipse.elk.layered.layering.nodePromotion.maxIterations",kz="org.eclipse.elk.layered.layering.coffmanGraham.layerBound",K6="org.eclipse.elk.layered.crossingMinimization.strategy",Fae="org.eclipse.elk.layered.crossingMinimization.forceNodeModelOrder",Rz="org.eclipse.elk.layered.crossingMinimization.hierarchicalSweepiness",xz="org.eclipse.elk.layered.crossingMinimization.semiInteractive",Bae="org.eclipse.elk.layered.crossingMinimization.positionChoiceConstraint",$ae="org.eclipse.elk.layered.crossingMinimization.positionId",Kae="org.eclipse.elk.layered.crossingMinimization.greedySwitch.activationThreshold",Lz="org.eclipse.elk.layered.crossingMinimization.greedySwitch.type",OD="org.eclipse.elk.layered.crossingMinimization.greedySwitchHierarchical.type",bv="org.eclipse.elk.layered.nodePlacement.strategy",DD="org.eclipse.elk.layered.nodePlacement.favorStraightEdges",Nz="org.eclipse.elk.layered.nodePlacement.bk.edgeStraightening",Fz="org.eclipse.elk.layered.nodePlacement.bk.fixedAlignment",Bz="org.eclipse.elk.layered.nodePlacement.linearSegments.deflectionDampening",$z="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility",Kz="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility.default",qae="org.eclipse.elk.layered.edgeRouting.selfLoopDistribution",Hae="org.eclipse.elk.layered.edgeRouting.selfLoopOrdering",kD="org.eclipse.elk.layered.edgeRouting.splines.mode",RD="org.eclipse.elk.layered.edgeRouting.splines.sloppy.layerSpacingFactor",qz="org.eclipse.elk.layered.edgeRouting.polyline.slopedEdgeZoneWidth",zae="org.eclipse.elk.layered.spacing.baseValue",Vae="org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers",Gae="org.eclipse.elk.layered.spacing.edgeEdgeBetweenLayers",Uae="org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers",Wae="org.eclipse.elk.layered.priority.direction",Yae="org.eclipse.elk.layered.priority.shortness",Xae="org.eclipse.elk.layered.priority.straightness",Hz="org.eclipse.elk.layered.compaction.connectedComponents",Jae="org.eclipse.elk.layered.compaction.postCompaction.strategy",Qae="org.eclipse.elk.layered.compaction.postCompaction.constraints",xD="org.eclipse.elk.layered.highDegreeNodes.treatment",zz="org.eclipse.elk.layered.highDegreeNodes.threshold",Vz="org.eclipse.elk.layered.highDegreeNodes.treeHeight",Hh="org.eclipse.elk.layered.wrapping.strategy",LD="org.eclipse.elk.layered.wrapping.additionalEdgeSpacing",ND="org.eclipse.elk.layered.wrapping.correctionFactor",q6="org.eclipse.elk.layered.wrapping.cutting.strategy",Gz="org.eclipse.elk.layered.wrapping.cutting.cuts",Uz="org.eclipse.elk.layered.wrapping.cutting.msd.freedom",FD="org.eclipse.elk.layered.wrapping.validify.strategy",BD="org.eclipse.elk.layered.wrapping.validify.forbiddenIndices",$D="org.eclipse.elk.layered.wrapping.multiEdge.improveCuts",KD="org.eclipse.elk.layered.wrapping.multiEdge.distancePenalty",Wz="org.eclipse.elk.layered.wrapping.multiEdge.improveWrappedEdges",Zae="org.eclipse.elk.layered.edgeLabels.sideSelection",ele="org.eclipse.elk.layered.edgeLabels.centerLabelPlacementStrategy",qD="org.eclipse.elk.layered.considerModelOrder.strategy",tle="org.eclipse.elk.layered.considerModelOrder.noModelOrder",Yz="org.eclipse.elk.layered.considerModelOrder.components",nle="org.eclipse.elk.layered.considerModelOrder.longEdgeStrategy",Xz="org.eclipse.elk.layered.considerModelOrder.crossingCounterNodeInfluence",Jz="org.eclipse.elk.layered.considerModelOrder.crossingCounterPortInfluence",Qz="layering",zQe="layering.minWidth",VQe="layering.nodePromotion",jT="crossingMinimization",HD="org.eclipse.elk.hierarchyHandling",GQe="crossingMinimization.greedySwitch",UQe="nodePlacement",WQe="nodePlacement.bk",YQe="edgeRouting",AT="org.eclipse.elk.edgeRouting",Hl="spacing",ile="priority",rle="compaction",XQe="compaction.postCompaction",JQe="Specifies whether and how post-process compaction is applied.",ole="highDegreeNodes",cle="wrapping",QQe="wrapping.cutting",ZQe="wrapping.validify",sle="wrapping.multiEdge",Zz="edgeLabels",OT="considerModelOrder",ule="org.eclipse.elk.spacing.commentComment",ale="org.eclipse.elk.spacing.commentNode",lle="org.eclipse.elk.spacing.edgeEdge",fle="org.eclipse.elk.spacing.edgeNode",hle="org.eclipse.elk.spacing.labelLabel",dle="org.eclipse.elk.spacing.labelPortHorizontal",gle="org.eclipse.elk.spacing.labelPortVertical",ble="org.eclipse.elk.spacing.labelNode",ple="org.eclipse.elk.spacing.nodeSelfLoop",wle="org.eclipse.elk.spacing.portPort",mle="org.eclipse.elk.spacing.individual",vle="org.eclipse.elk.port.borderOffset",yle="org.eclipse.elk.noLayout",_le="org.eclipse.elk.port.side",DT="org.eclipse.elk.debugMode",Ele="org.eclipse.elk.alignment",Sle="org.eclipse.elk.insideSelfLoops.activate",Ple="org.eclipse.elk.insideSelfLoops.yo",eV="org.eclipse.elk.nodeSize.fixedGraphSize",Mle="org.eclipse.elk.direction",Cle="org.eclipse.elk.nodeLabels.padding",Ile="org.eclipse.elk.portLabels.nextToPortIfPossible",Tle="org.eclipse.elk.portLabels.treatAsGroup",jle="org.eclipse.elk.portAlignment.default",Ale="org.eclipse.elk.portAlignment.north",Ole="org.eclipse.elk.portAlignment.south",Dle="org.eclipse.elk.portAlignment.west",kle="org.eclipse.elk.portAlignment.east",zD="org.eclipse.elk.contentAlignment",Rle="org.eclipse.elk.junctionPoints",xle="org.eclipse.elk.edgeLabels.placement",Lle="org.eclipse.elk.port.index",Nle="org.eclipse.elk.commentBox",Fle="org.eclipse.elk.hypernode",Ble="org.eclipse.elk.port.anchor",tV="org.eclipse.elk.partitioning.activate",nV="org.eclipse.elk.partitioning.partition",VD="org.eclipse.elk.position",$le="org.eclipse.elk.margins",Kle="org.eclipse.elk.spacing.portsSurrounding",iV="org.eclipse.elk.interactiveLayout",fc="org.eclipse.elk.core.util",qle={3:1,4:1,5:1,593:1},eZe="NETWORK_SIMPLEX",Sc={123:1,51:1},GD="org.eclipse.elk.alg.layered.p1cycles",Ew="org.eclipse.elk.alg.layered.p2layers",Hle={402:1,225:1},tZe={832:1,3:1,4:1},_s="org.eclipse.elk.alg.layered.p3order",io="org.eclipse.elk.alg.layered.p4nodes",nZe={3:1,4:1,5:1,840:1},Mf=1e-5,R1="org.eclipse.elk.alg.layered.p4nodes.bk",rV="org.eclipse.elk.alg.layered.p5edges",gl="org.eclipse.elk.alg.layered.p5edges.orthogonal",oV="org.eclipse.elk.alg.layered.p5edges.orthogonal.direction",cV=1e-6,Sw="org.eclipse.elk.alg.layered.p5edges.splines",sV=.09999999999999998,UD=1e-8,iZe=4.71238898038469,rZe=3.141592653589793,H6="org.eclipse.elk.alg.mrtree",z6="org.eclipse.elk.alg.mrtree.graph",N2="org.eclipse.elk.alg.mrtree.intermediate",oZe="Set neighbors in level",cZe="DESCENDANTS",zle="org.eclipse.elk.mrtree.weighting",Vle="org.eclipse.elk.mrtree.searchOrder",WD="org.eclipse.elk.alg.mrtree.options",Pd="org.eclipse.elk.mrtree",sZe="org.eclipse.elk.tree",Gle="org.eclipse.elk.alg.radial",pv=6.283185307179586,Ule=5e-324,uZe="org.eclipse.elk.alg.radial.intermediate",uV="org.eclipse.elk.alg.radial.intermediate.compaction",aZe={3:1,4:1,5:1,106:1},Wle="org.eclipse.elk.alg.radial.intermediate.optimization",aV="No implementation is available for the layout option ",V6="org.eclipse.elk.alg.radial.options",Yle="org.eclipse.elk.radial.orderId",Xle="org.eclipse.elk.radial.radius",lV="org.eclipse.elk.radial.compactor",fV="org.eclipse.elk.radial.compactionStepSize",Jle="org.eclipse.elk.radial.sorter",Qle="org.eclipse.elk.radial.wedgeCriteria",Zle="org.eclipse.elk.radial.optimizationCriteria",Cf="org.eclipse.elk.radial",lZe="org.eclipse.elk.alg.radial.p1position.wedge",efe="org.eclipse.elk.alg.radial.sorting",fZe=5.497787143782138,hZe=3.9269908169872414,dZe=2.356194490192345,gZe="org.eclipse.elk.alg.rectpacking",YD="org.eclipse.elk.alg.rectpacking.firstiteration",hV="org.eclipse.elk.alg.rectpacking.options",tfe="org.eclipse.elk.rectpacking.optimizationGoal",nfe="org.eclipse.elk.rectpacking.lastPlaceShift",ife="org.eclipse.elk.rectpacking.currentPosition",rfe="org.eclipse.elk.rectpacking.desiredPosition",ofe="org.eclipse.elk.rectpacking.onlyFirstIteration",cfe="org.eclipse.elk.rectpacking.rowCompaction",dV="org.eclipse.elk.rectpacking.expandToAspectRatio",sfe="org.eclipse.elk.rectpacking.targetWidth",XD="org.eclipse.elk.expandNodes",sa="org.eclipse.elk.rectpacking",kT="org.eclipse.elk.alg.rectpacking.util",JD="No implementation available for ",Pw="org.eclipse.elk.alg.spore",Mw="org.eclipse.elk.alg.spore.options",F0="org.eclipse.elk.sporeCompaction",gV="org.eclipse.elk.underlyingLayoutAlgorithm",ufe="org.eclipse.elk.processingOrder.treeConstruction",afe="org.eclipse.elk.processingOrder.spanningTreeCostFunction",bV="org.eclipse.elk.processingOrder.preferredRoot",pV="org.eclipse.elk.processingOrder.rootSelection",wV="org.eclipse.elk.structure.structureExtractionStrategy",lfe="org.eclipse.elk.compaction.compactionStrategy",ffe="org.eclipse.elk.compaction.orthogonal",hfe="org.eclipse.elk.overlapRemoval.maxIterations",dfe="org.eclipse.elk.overlapRemoval.runScanline",mV="processingOrder",bZe="overlapRemoval",zE="org.eclipse.elk.sporeOverlap",pZe="org.eclipse.elk.alg.spore.p1structure",vV="org.eclipse.elk.alg.spore.p2processingorder",yV="org.eclipse.elk.alg.spore.p3execution",wZe="Invalid index: ",VE="org.eclipse.elk.core.alg",wv={331:1},Cw={288:1},mZe="Make sure its type is registered with the ",gfe=" utility class.",GE="true",_V="false",vZe="Couldn't clone property '",B0=.05,ua="org.eclipse.elk.core.options",yZe=1.2999999523162842,$0="org.eclipse.elk.box",bfe="org.eclipse.elk.box.packingMode",_Ze="org.eclipse.elk.algorithm",EZe="org.eclipse.elk.resolvedAlgorithm",pfe="org.eclipse.elk.bendPoints",azt="org.eclipse.elk.labelManager",SZe="org.eclipse.elk.scaleFactor",PZe="org.eclipse.elk.animate",MZe="org.eclipse.elk.animTimeFactor",CZe="org.eclipse.elk.layoutAncestors",IZe="org.eclipse.elk.maxAnimTime",TZe="org.eclipse.elk.minAnimTime",jZe="org.eclipse.elk.progressBar",AZe="org.eclipse.elk.validateGraph",OZe="org.eclipse.elk.validateOptions",DZe="org.eclipse.elk.zoomToFit",lzt="org.eclipse.elk.font.name",kZe="org.eclipse.elk.font.size",RZe="org.eclipse.elk.edge.type",xZe="partitioning",LZe="nodeLabels",QD="portAlignment",EV="nodeSize",SV="port",wfe="portLabels",NZe="insideSelfLoops",G6="org.eclipse.elk.fixed",ZD="org.eclipse.elk.random",FZe="port must have a parent node to calculate the port side",BZe="The edge needs to have exactly one edge section. Found: ",U6="org.eclipse.elk.core.util.adapters",Hu="org.eclipse.emf.ecore",mv="org.eclipse.elk.graph",$Ze="EMapPropertyHolder",KZe="ElkBendPoint",qZe="ElkGraphElement",HZe="ElkConnectableShape",mfe="ElkEdge",zZe="ElkEdgeSection",VZe="EModelElement",GZe="ENamedElement",vfe="ElkLabel",yfe="ElkNode",_fe="ElkPort",UZe={92:1,90:1},F2="org.eclipse.emf.common.notify.impl",x1="The feature '",W6="' is not a valid changeable feature",WZe="Expecting null",PV="' is not a valid feature",YZe="The feature ID",XZe=" is not a valid feature ID",rc=32768,JZe={105:1,92:1,90:1,56:1,49:1,97:1},mt="org.eclipse.emf.ecore.impl",sb="org.eclipse.elk.graph.impl",Y6="Recursive containment not allowed for ",UE="The datatype '",K0="' is not a valid classifier",MV="The value '",vv={190:1,3:1,4:1},CV="The class '",WE="http://www.eclipse.org/elk/ElkGraph",Ka=1024,Efe="property",X6="value",IV="source",QZe="properties",ZZe="identifier",TV="height",jV="width",AV="parent",OV="text",DV="children",eet="hierarchical",Sfe="sources",kV="targets",Pfe="sections",ek="bendPoints",Mfe="outgoingShape",Cfe="incomingShape",Ife="outgoingSections",Tfe="incomingSections",Br="org.eclipse.emf.common.util",jfe="Severe implementation error in the Json to ElkGraph importer.",If="id",Cr="org.eclipse.elk.graph.json",Afe="Unhandled parameter types: ",tet="startPoint",net="An edge must have at least one source and one target (edge id: '",YE="').",iet="Referenced edge section does not exist: ",ret=" (edge id: '",Ofe="target",oet="sourcePoint",cet="targetPoint",tk="group",Dn="name",set="connectableShape cannot be null",uet="edge cannot be null",RV="Passed edge is not 'simple'.",nk="org.eclipse.elk.graph.util",RT="The 'no duplicates' constraint is violated",xV="targetIndex=",ub=", size=",LV="sourceIndex=",Tf={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1},NV={3:1,4:1,20:1,28:1,52:1,14:1,47:1,15:1,54:1,67:1,63:1,58:1,588:1},ik="logging",aet="measureExecutionTime",fet="parser.parse.1",het="parser.parse.2",rk="parser.next.1",FV="parser.next.2",det="parser.next.3",get="parser.next.4",ab="parser.factor.1",Dfe="parser.factor.2",bet="parser.factor.3",pet="parser.factor.4",wet="parser.factor.5",met="parser.factor.6",vet="parser.atom.1",yet="parser.atom.2",_et="parser.atom.3",kfe="parser.atom.4",BV="parser.atom.5",Rfe="parser.cc.1",ok="parser.cc.2",Eet="parser.cc.3",Pet="parser.cc.5",xfe="parser.cc.6",Lfe="parser.cc.7",$V="parser.cc.8",Met="parser.ope.1",Cet="parser.ope.2",Iet="parser.ope.3",Md="parser.descape.1",Tet="parser.descape.2",jet="parser.descape.3",Aet="parser.descape.4",Oet="parser.descape.5",zu="parser.process.1",Det="parser.quantifier.1",ket="parser.quantifier.2",Ret="parser.quantifier.3",xet="parser.quantifier.4",Nfe="parser.quantifier.5",Let="org.eclipse.emf.common.notify",Ffe={415:1,672:1},Net={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1},xT={366:1,143:1},J6="index=",KV={3:1,4:1,5:1,126:1},Fet={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,58:1},Bfe={3:1,6:1,4:1,5:1,192:1},Bet={3:1,4:1,5:1,165:1,367:1},$et=";/?:@&=+$,",Ket="invalid authority: ",qet="EAnnotation",Het="ETypedElement",zet="EStructuralFeature",Vet="EAttribute",Get="EClassifier",Uet="EEnumLiteral",Wet="EGenericType",Yet="EOperation",Xet="EParameter",Jet="EReference",Qet="ETypeParameter",ai="org.eclipse.emf.ecore.util",qV={76:1},$fe={3:1,20:1,14:1,15:1,58:1,589:1,76:1,69:1,95:1},Zet="org.eclipse.emf.ecore.util.FeatureMap$Entry",Es=8192,Iw=2048,Q6="byte",ck="char",Z6="double",eP="float",tP="int",nP="long",iP="short",ett="java.lang.Object",yv={3:1,4:1,5:1,247:1},Kfe={3:1,4:1,5:1,673:1},ttt={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,69:1},xo={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,69:1,95:1},LT="mixed",yn="http:///org/eclipse/emf/ecore/util/ExtendedMetaData",aa="kind",ntt={3:1,4:1,5:1,674:1},qfe={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1,76:1,69:1,95:1},sk={20:1,28:1,52:1,14:1,15:1,58:1,69:1},uk={47:1,125:1,279:1},ak={72:1,332:1},lk="The value of type '",fk="' must be of type '",_v=1316,la="http://www.eclipse.org/emf/2002/Ecore",hk=-32768,q0="constraints",Or="baseType",itt="getEStructuralFeature",rtt="getFeatureID",rP="feature",ott="getOperationID",Hfe="operation",ctt="defaultValue",stt="eTypeParameters",utt="isInstance",att="getEEnumLiteral",ltt="eContainingClass",Tn={55:1},ftt={3:1,4:1,5:1,119:1},htt="org.eclipse.emf.ecore.resource",dtt={92:1,90:1,591:1,1935:1},HV="org.eclipse.emf.ecore.resource.impl",zfe="unspecified",NT="simple",dk="attribute",gtt="attributeWildcard",gk="element",zV="elementWildcard",bl="collapse",VV="itemType",bk="namespace",FT="##targetNamespace",fa="whiteSpace",Vfe="wildcards",lb="http://www.eclipse.org/emf/2003/XMLType",GV="##any",XE="uninitialized",BT="The multiplicity constraint is violated",pk="org.eclipse.emf.ecore.xml.type",btt="ProcessingInstruction",ptt="SimpleAnyType",wtt="XMLTypeDocumentRoot",Fi="org.eclipse.emf.ecore.xml.type.impl",$T="INF",mtt="processing",vtt="ENTITIES_._base",Gfe="minLength",Ufe="ENTITY",wk="NCName",ytt="IDREFS_._base",Wfe="integer",UV="token",WV="pattern",_tt="[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",Yfe="\\i\\c*",Ett="[\\i-[:]][\\c-[:]]*",Stt="nonPositiveInteger",KT="maxInclusive",Xfe="NMTOKEN",Ptt="NMTOKENS_._base",Jfe="nonNegativeInteger",qT="minInclusive",Mtt="normalizedString",Ctt="unsignedByte",Itt="unsignedInt",Ttt="18446744073709551615",jtt="unsignedShort",Att="processingInstruction",Cd="org.eclipse.emf.ecore.xml.type.internal",JE=1114111,Ott="Internal Error: shorthands: \\u",oP="xml:isDigit",YV="xml:isWord",XV="xml:isSpace",JV="xml:isNameChar",QV="xml:isInitialNameChar",Dtt="09٠٩۰۹०९০৯੦੯૦૯୦୯௧௯౦౯೦೯൦൯๐๙໐໙༠༩",ktt="AZazÀÖØöøıĴľŁňŊžƀǃǍǰǴǵǺȗɐʨʻˁΆΆΈΊΌΌΎΡΣώϐϖϚϚϜϜϞϞϠϠϢϳЁЌЎяёќўҁҐӄӇӈӋӌӐӫӮӵӸӹԱՖՙՙաֆאתװײءغفيٱڷںھۀێېۓەەۥۦअहऽऽक़ॡঅঌএঐওনপরললশহড়ঢ়য়ৡৰৱਅਊਏਐਓਨਪਰਲਲ਼ਵਸ਼ਸਹਖ਼ੜਫ਼ਫ਼ੲੴઅઋઍઍએઑઓનપરલળવહઽઽૠૠଅଌଏଐଓନପରଲଳଶହଽଽଡ଼ଢ଼ୟୡஅஊஎஐஒகஙசஜஜஞடணதநபமவஷஹఅఌఎఐఒనపళవహౠౡಅಌಎಐಒನಪಳವಹೞೞೠೡഅഌഎഐഒനപഹൠൡกฮะะาำเๅກຂຄຄງຈຊຊຍຍດທນຟມຣລລວວສຫອຮະະາຳຽຽເໄཀཇཉཀྵႠჅაჶᄀᄀᄂᄃᄅᄇᄉᄉᄋᄌᄎᄒᄼᄼᄾᄾᅀᅀᅌᅌᅎᅎᅐᅐᅔᅕᅙᅙᅟᅡᅣᅣᅥᅥᅧᅧᅩᅩᅭᅮᅲᅳᅵᅵᆞᆞᆨᆨᆫᆫᆮᆯᆷᆸᆺᆺᆼᇂᇫᇫᇰᇰᇹᇹḀẛẠỹἀἕἘἝἠὅὈὍὐὗὙὙὛὛὝὝὟώᾀᾴᾶᾼιιῂῄῆῌῐΐῖΊῠῬῲῴῶῼΩΩKÅ℮℮ↀↂ〇〇〡〩ぁゔァヺㄅㄬ一龥가힣",Rtt="Private Use",ZV="ASSIGNED",eG="\0€ÿĀſƀɏɐʯʰ˿̀ͯͰϿЀӿ԰֏֐׿؀ۿ܀ݏހ޿ऀॿঀ৿਀੿઀૿଀୿஀௿ఀ౿ಀ೿ഀൿ඀෿฀๿຀໿ༀ࿿က႟Ⴀჿᄀᇿሀ፿Ꭰ᏿᐀ᙿ ᚟ᚠ᛿ក៿᠀᢯Ḁỿἀ῿ ⁰₟₠⃏⃐⃿℀⅏⅐↏←⇿∀⋿⌀⏿␀␿⑀⑟①⓿─╿▀▟■◿☀⛿✀➿⠀⣿⺀⻿⼀⿟⿰⿿ 〿぀ゟ゠ヿ㄀ㄯ㄰㆏㆐㆟ㆠㆿ㈀㋿㌀㏿㐀䶵一鿿ꀀ꒏꒐꓏가힣豈﫿ffﭏﭐ﷿︠︯︰﹏﹐﹯ﹰ﻾\uFEFF\uFEFF＀￯",Qfe="UNASSIGNED",QE={3:1,117:1},xtt="org.eclipse.emf.ecore.xml.type.util",mk={3:1,4:1,5:1,368:1},Zfe="org.eclipse.xtext.xbase.lib",Ltt="Cannot add elements to a Range",Ntt="Cannot set elements in a Range",Ftt="Cannot remove elements from a Range",vk="locale",yk="default",_k="user.agent",s,Ek,tG;g.goog=g.goog||{},g.goog.global=g.goog.global||g,LDt(),y(1,null,{},C),s.Fb=function(t){return O7e(this,t)},s.Gb=function(){return this.gm},s.Hb=function(){return Xb(this)},s.Ib=function(){var t;return r1(Fs(this))+"@"+(t=fi(this)>>>0,t.toString(16))},s.equals=function(e){return this.Fb(e)},s.hashCode=function(){return this.Hb()},s.toString=function(){return this.Ib()};var Btt,$tt,Ktt;y(290,1,{290:1,2026:1},Are),s.le=function(t){var n;return n=new Are,n.i=4,t>1?n.c=WLe(this,t-1):n.c=this,n},s.me=function(){return Sh(this),this.b},s.ne=function(){return r1(this)},s.oe=function(){return Sh(this),this.k},s.pe=function(){return(this.i&4)!=0},s.qe=function(){return(this.i&1)!=0},s.Ib=function(){return Vie(this)},s.i=0;var xt=S(Ho,"Object",1),ehe=S(Ho,"Class",290);y(1998,1,lT),S(fT,"Optional",1998),y(1170,1998,lT,T),s.Fb=function(t){return t===this},s.Hb=function(){return 2040732332},s.Ib=function(){return"Optional.absent()"},s.Jb=function(t){return nn(t),DS(),nG};var nG;S(fT,"Absent",1170),y(628,1,{},XN),S(fT,"Joiner",628);var fzt=pi(fT,"Predicate");y(582,1,{169:1,582:1,3:1,45:1},OCe),s.Mb=function(t){return Rqe(this,t)},s.Lb=function(t){return Rqe(this,t)},s.Fb=function(t){var n;return Q(t,582)?(n=c(t,582),Sse(this.a,n.a)):!1},s.Hb=function(){return xre(this.a)+306654252},s.Ib=function(){return Ekt(this.a)},S(fT,"Predicates/AndPredicate",582),y(408,1998,{408:1,3:1},LA),s.Fb=function(t){var n;return Q(t,408)?(n=c(t,408),$n(this.a,n.a)):!1},s.Hb=function(){return 1502476572+fi(this.a)},s.Ib=function(){return yJe+this.a+")"},s.Jb=function(t){return new LA(B8(t.Kb(this.a),"the Function passed to Optional.transform() must not return null."))},S(fT,"Present",408),y(198,1,OE),s.Nb=function(t){Sr(this,t)},s.Qb=function(){_9e()},S(qe,"UnmodifiableIterator",198),y(1978,198,DE),s.Qb=function(){_9e()},s.Rb=function(t){throw V(new sn)},s.Wb=function(t){throw V(new sn)},S(qe,"UnmodifiableListIterator",1978),y(386,1978,DE),s.Ob=function(){return this.c0},s.Pb=function(){if(this.c>=this.d)throw V(new tc);return this.Xb(this.c++)},s.Tb=function(){return this.c},s.Ub=function(){if(this.c<=0)throw V(new tc);return this.Xb(--this.c)},s.Vb=function(){return this.c-1},s.c=0,s.d=0,S(qe,"AbstractIndexedListIterator",386),y(699,198,OE),s.Ob=function(){return U$(this)},s.Pb=function(){return Bie(this)},s.e=1,S(qe,"AbstractIterator",699),y(1986,1,{224:1}),s.Zb=function(){var t;return t=this.f,t||(this.f=this.ac())},s.Fb=function(t){return fK(this,t)},s.Hb=function(){return fi(this.Zb())},s.dc=function(){return this.gc()==0},s.ec=function(){return Jy(this)},s.Ib=function(){return Ro(this.Zb())},S(qe,"AbstractMultimap",1986),y(726,1986,tb),s.$b=function(){kO(this)},s._b=function(t){return $9e(this,t)},s.ac=function(){return new c_(this,this.c)},s.ic=function(t){return this.hc()},s.bc=function(){return new Dm(this,this.c)},s.jc=function(){return this.mc(this.hc())},s.kc=function(){return new r9e(this)},s.lc=function(){return mq(this.c.vc().Nc(),new _,64,this.d)},s.cc=function(t){return Vn(this,t)},s.fc=function(t){return PI(this,t)},s.gc=function(){return this.d},s.mc=function(t){return st(),new W3(t)},s.nc=function(){return new i9e(this)},s.oc=function(){return mq(this.c.Cc().Nc(),new M,64,this.d)},s.pc=function(t,n){return new dO(this,t,n,null)},s.d=0,S(qe,"AbstractMapBasedMultimap",726),y(1631,726,tb),s.hc=function(){return new Dc(this.a)},s.jc=function(){return st(),st(),Qr},s.cc=function(t){return c(Vn(this,t),15)},s.fc=function(t){return c(PI(this,t),15)},s.Zb=function(){return n2(this)},s.Fb=function(t){return fK(this,t)},s.qc=function(t){return c(Vn(this,t),15)},s.rc=function(t){return c(PI(this,t),15)},s.mc=function(t){return NC(c(t,15))},s.pc=function(t,n){return ZNe(this,t,c(n,15),null)},S(qe,"AbstractListMultimap",1631),y(732,1,dr),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.c.Ob()||this.e.Ob()},s.Pb=function(){var t;return this.e.Ob()||(t=c(this.c.Pb(),42),this.b=t.cd(),this.a=c(t.dd(),14),this.e=this.a.Kc()),this.sc(this.b,this.e.Pb())},s.Qb=function(){this.e.Qb(),this.a.dc()&&this.c.Qb(),--this.d.d},S(qe,"AbstractMapBasedMultimap/Itr",732),y(1099,732,dr,i9e),s.sc=function(t,n){return n},S(qe,"AbstractMapBasedMultimap/1",1099),y(1100,1,{},M),s.Kb=function(t){return c(t,14).Nc()},S(qe,"AbstractMapBasedMultimap/1methodref$spliterator$Type",1100),y(1101,732,dr,r9e),s.sc=function(t,n){return new Vb(t,n)},S(qe,"AbstractMapBasedMultimap/2",1101);var the=pi(Gt,"Map");y(1967,1,x0),s.wc=function(t){U5(this,t)},s.yc=function(t,n,i){return TK(this,t,n,i)},s.$b=function(){this.vc().$b()},s.tc=function(t){return tq(this,t)},s._b=function(t){return!!Cce(this,t,!1)},s.uc=function(t){var n,i,r;for(i=this.vc().Kc();i.Ob();)if(n=c(i.Pb(),42),r=n.dd(),le(t)===le(r)||t!=null&&$n(t,r))return!0;return!1},s.Fb=function(t){var n,i,r;if(t===this)return!0;if(!Q(t,83)||(r=c(t,83),this.gc()!=r.gc()))return!1;for(i=r.vc().Kc();i.Ob();)if(n=c(i.Pb(),42),!this.tc(n))return!1;return!0},s.xc=function(t){return Uo(Cce(this,t,!1))},s.Hb=function(){return Mre(this.vc())},s.dc=function(){return this.gc()==0},s.ec=function(){return new U3(this)},s.zc=function(t,n){throw V(new td("Put not supported on this map"))},s.Ac=function(t){G5(this,t)},s.Bc=function(t){return Uo(Cce(this,t,!0))},s.gc=function(){return this.vc().gc()},s.Ib=function(){return LVe(this)},s.Cc=function(){return new yh(this)},S(Gt,"AbstractMap",1967),y(1987,1967,x0),s.bc=function(){return new c9(this)},s.vc=function(){return QRe(this)},s.ec=function(){var t;return t=this.g,t||(this.g=this.bc())},s.Cc=function(){var t;return t=this.i,t||(this.i=new D8e(this))},S(qe,"Maps/ViewCachingAbstractMap",1987),y(389,1987,x0,c_),s.xc=function(t){return rIt(this,t)},s.Bc=function(t){return yjt(this,t)},s.$b=function(){this.d==this.e.c?this.e.$b():b8(new Ute(this))},s._b=function(t){return dHe(this.d,t)},s.Ec=function(){return new xCe(this)},s.Dc=function(){return this.Ec()},s.Fb=function(t){return this===t||$n(this.d,t)},s.Hb=function(){return fi(this.d)},s.ec=function(){return this.e.ec()},s.gc=function(){return this.d.gc()},s.Ib=function(){return Ro(this.d)},S(qe,"AbstractMapBasedMultimap/AsMap",389);var zl=pi(Ho,"Iterable");y(28,1,ww),s.Jc=function(t){Mr(this,t)},s.Lc=function(){return this.Oc()},s.Nc=function(){return new bt(this,0)},s.Oc=function(){return new ht(null,this.Nc())},s.Fc=function(t){throw V(new td("Add not supported on this collection"))},s.Gc=function(t){return qr(this,t)},s.$b=function(){Dne(this)},s.Hc=function(t){return nw(this,t,!1)},s.Ic=function(t){return bI(this,t)},s.dc=function(){return this.gc()==0},s.Mc=function(t){return nw(this,t,!0)},s.Pc=function(){return cne(this)},s.Qc=function(t){return RI(this,t)},s.Ib=function(){return C1(this)},S(Gt,"AbstractCollection",28);var ha=pi(Gt,"Set");y(Kl,28,ys),s.Nc=function(){return new bt(this,1)},s.Fb=function(t){return cze(this,t)},s.Hb=function(){return Mre(this)},S(Gt,"AbstractSet",Kl),y(1970,Kl,ys),S(qe,"Sets/ImprovedAbstractSet",1970),y(1971,1970,ys),s.$b=function(){this.Rc().$b()},s.Hc=function(t){return KHe(this,t)},s.dc=function(){return this.Rc().dc()},s.Mc=function(t){var n;return this.Hc(t)?(n=c(t,42),this.Rc().ec().Mc(n.cd())):!1},s.gc=function(){return this.Rc().gc()},S(qe,"Maps/EntrySet",1971),y(1097,1971,ys,xCe),s.Hc=function(t){return eoe(this.a.d.vc(),t)},s.Kc=function(){return new Ute(this.a)},s.Rc=function(){return this.a},s.Mc=function(t){var n;return eoe(this.a.d.vc(),t)?(n=c(t,42),zMt(this.a.e,n.cd()),!0):!1},s.Nc=function(){return jC(this.a.d.vc().Nc(),new LCe(this.a))},S(qe,"AbstractMapBasedMultimap/AsMap/AsMapEntries",1097),y(1098,1,{},LCe),s.Kb=function(t){return qFe(this.a,c(t,42))},S(qe,"AbstractMapBasedMultimap/AsMap/AsMapEntries/0methodref$wrapEntry$Type",1098),y(730,1,dr,Ute),s.Nb=function(t){Sr(this,t)},s.Pb=function(){var t;return t=c(this.b.Pb(),42),this.a=c(t.dd(),14),qFe(this.c,t)},s.Ob=function(){return this.b.Ob()},s.Qb=function(){Km(!!this.a),this.b.Qb(),this.c.e.d-=this.a.gc(),this.a.$b(),this.a=null},S(qe,"AbstractMapBasedMultimap/AsMap/AsMapIterator",730),y(532,1970,ys,c9),s.$b=function(){this.b.$b()},s.Hc=function(t){return this.b._b(t)},s.Jc=function(t){nn(t),this.b.wc(new ZCe(t))},s.dc=function(){return this.b.dc()},s.Kc=function(){return new kS(this.b.vc().Kc())},s.Mc=function(t){return this.b._b(t)?(this.b.Bc(t),!0):!1},s.gc=function(){return this.b.gc()},S(qe,"Maps/KeySet",532),y(318,532,ys,Dm),s.$b=function(){var t;b8((t=this.b.vc().Kc(),new vZ(this,t)))},s.Ic=function(t){return this.b.ec().Ic(t)},s.Fb=function(t){return this===t||$n(this.b.ec(),t)},s.Hb=function(){return fi(this.b.ec())},s.Kc=function(){var t;return t=this.b.vc().Kc(),new vZ(this,t)},s.Mc=function(t){var n,i;return i=0,n=c(this.b.Bc(t),14),n&&(i=n.gc(),n.$b(),this.a.d-=i),i>0},s.Nc=function(){return this.b.ec().Nc()},S(qe,"AbstractMapBasedMultimap/KeySet",318),y(731,1,dr,vZ),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.c.Ob()},s.Pb=function(){return this.a=c(this.c.Pb(),42),this.a.cd()},s.Qb=function(){var t;Km(!!this.a),t=c(this.a.dd(),14),this.c.Qb(),this.b.a.d-=t.gc(),t.$b(),this.a=null},S(qe,"AbstractMapBasedMultimap/KeySet/1",731),y(491,389,{83:1,161:1},EC),s.bc=function(){return this.Sc()},s.ec=function(){return this.Tc()},s.Sc=function(){return new QM(this.c,this.Uc())},s.Tc=function(){var t;return t=this.b,t||(this.b=this.Sc())},s.Uc=function(){return c(this.d,161)},S(qe,"AbstractMapBasedMultimap/SortedAsMap",491),y(542,491,_Je,n8),s.bc=function(){return new o_(this.a,c(c(this.d,161),171))},s.Sc=function(){return new o_(this.a,c(c(this.d,161),171))},s.ec=function(){var t;return t=this.b,c(t||(this.b=new o_(this.a,c(c(this.d,161),171))),271)},s.Tc=function(){var t;return t=this.b,c(t||(this.b=new o_(this.a,c(c(this.d,161),171))),271)},s.Uc=function(){return c(c(this.d,161),171)},S(qe,"AbstractMapBasedMultimap/NavigableAsMap",542),y(490,318,EJe,QM),s.Nc=function(){return this.b.ec().Nc()},S(qe,"AbstractMapBasedMultimap/SortedKeySet",490),y(388,490,Fue,o_),S(qe,"AbstractMapBasedMultimap/NavigableKeySet",388),y(541,28,ww,dO),s.Fc=function(t){var n,i;return Bs(this),i=this.d.dc(),n=this.d.Fc(t),n&&(++this.f.d,i&&CC(this)),n},s.Gc=function(t){var n,i,r;return t.dc()?!1:(r=(Bs(this),this.d.gc()),n=this.d.Gc(t),n&&(i=this.d.gc(),this.f.d+=i-r,r==0&&CC(this)),n)},s.$b=function(){var t;t=(Bs(this),this.d.gc()),t!=0&&(this.d.$b(),this.f.d-=t,y8(this))},s.Hc=function(t){return Bs(this),this.d.Hc(t)},s.Ic=function(t){return Bs(this),this.d.Ic(t)},s.Fb=function(t){return t===this?!0:(Bs(this),$n(this.d,t))},s.Hb=function(){return Bs(this),fi(this.d)},s.Kc=function(){return Bs(this),new kte(this)},s.Mc=function(t){var n;return Bs(this),n=this.d.Mc(t),n&&(--this.f.d,y8(this)),n},s.gc=function(){return p7e(this)},s.Nc=function(){return Bs(this),this.d.Nc()},s.Ib=function(){return Bs(this),Ro(this.d)},S(qe,"AbstractMapBasedMultimap/WrappedCollection",541);var Vu=pi(Gt,"List");y(728,541,{20:1,28:1,14:1,15:1},une),s.ad=function(t){$m(this,t)},s.Nc=function(){return Bs(this),this.d.Nc()},s.Vc=function(t,n){var i;Bs(this),i=this.d.dc(),c(this.d,15).Vc(t,n),++this.a.d,i&&CC(this)},s.Wc=function(t,n){var i,r,o;return n.dc()?!1:(o=(Bs(this),this.d.gc()),i=c(this.d,15).Wc(t,n),i&&(r=this.d.gc(),this.a.d+=r-o,o==0&&CC(this)),i)},s.Xb=function(t){return Bs(this),c(this.d,15).Xb(t)},s.Xc=function(t){return Bs(this),c(this.d,15).Xc(t)},s.Yc=function(){return Bs(this),new Y7e(this)},s.Zc=function(t){return Bs(this),new uLe(this,t)},s.$c=function(t){var n;return Bs(this),n=c(this.d,15).$c(t),--this.a.d,y8(this),n},s._c=function(t,n){return Bs(this),c(this.d,15)._c(t,n)},s.bd=function(t,n){return Bs(this),ZNe(this.a,this.e,c(this.d,15).bd(t,n),this.b?this.b:this)},S(qe,"AbstractMapBasedMultimap/WrappedList",728),y(1096,728,{20:1,28:1,14:1,15:1,54:1},BDe),S(qe,"AbstractMapBasedMultimap/RandomAccessWrappedList",1096),y(620,1,dr,kte),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return I_(this),this.b.Ob()},s.Pb=function(){return I_(this),this.b.Pb()},s.Qb=function(){EDe(this)},S(qe,"AbstractMapBasedMultimap/WrappedCollection/WrappedIterator",620),y(729,620,Wf,Y7e,uLe),s.Qb=function(){EDe(this)},s.Rb=function(t){var n;n=p7e(this.a)==0,(I_(this),c(this.b,125)).Rb(t),++this.a.a.d,n&&CC(this.a)},s.Sb=function(){return(I_(this),c(this.b,125)).Sb()},s.Tb=function(){return(I_(this),c(this.b,125)).Tb()},s.Ub=function(){return(I_(this),c(this.b,125)).Ub()},s.Vb=function(){return(I_(this),c(this.b,125)).Vb()},s.Wb=function(t){(I_(this),c(this.b,125)).Wb(t)},S(qe,"AbstractMapBasedMultimap/WrappedList/WrappedListIterator",729),y(727,541,EJe,ete),s.Nc=function(){return Bs(this),this.d.Nc()},S(qe,"AbstractMapBasedMultimap/WrappedSortedSet",727),y(1095,727,Fue,K7e),S(qe,"AbstractMapBasedMultimap/WrappedNavigableSet",1095),y(1094,541,ys,ZDe),s.Nc=function(){return Bs(this),this.d.Nc()},S(qe,"AbstractMapBasedMultimap/WrappedSet",1094),y(1103,1,{},_),s.Kb=function(t){return XMt(c(t,42))},S(qe,"AbstractMapBasedMultimap/lambda$1$Type",1103),y(1102,1,{},NCe),s.Kb=function(t){return new Vb(this.a,t)},S(qe,"AbstractMapBasedMultimap/lambda$2$Type",1102);var fb=pi(Gt,"Map/Entry");y(345,1,hD),s.Fb=function(t){var n;return Q(t,42)?(n=c(t,42),df(this.cd(),n.cd())&&df(this.dd(),n.dd())):!1},s.Hb=function(){var t,n;return t=this.cd(),n=this.dd(),(t==null?0:fi(t))^(n==null?0:fi(n))},s.ed=function(t){throw V(new sn)},s.Ib=function(){return this.cd()+"="+this.dd()},S(qe,SJe,345),y(1988,28,ww),s.$b=function(){this.fd().$b()},s.Hc=function(t){var n;return Q(t,42)?(n=c(t,42),APt(this.fd(),n.cd(),n.dd())):!1},s.Mc=function(t){var n;return Q(t,42)?(n=c(t,42),kNe(this.fd(),n.cd(),n.dd())):!1},s.gc=function(){return this.fd().d},S(qe,"Multimaps/Entries",1988),y(733,1988,ww,YJ),s.Kc=function(){return this.a.kc()},s.fd=function(){return this.a},s.Nc=function(){return this.a.lc()},S(qe,"AbstractMultimap/Entries",733),y(734,733,ys,YQ),s.Nc=function(){return this.a.lc()},s.Fb=function(t){return zce(this,t)},s.Hb=function(){return RKe(this)},S(qe,"AbstractMultimap/EntrySet",734),y(735,28,ww,XJ),s.$b=function(){this.a.$b()},s.Hc=function(t){return gjt(this.a,t)},s.Kc=function(){return this.a.nc()},s.gc=function(){return this.a.d},s.Nc=function(){return this.a.oc()},S(qe,"AbstractMultimap/Values",735),y(1989,28,{835:1,20:1,28:1,14:1}),s.Jc=function(t){nn(t),Rm(this).Jc(new QCe(t))},s.Nc=function(){var t;return t=Rm(this).Nc(),mq(t,new ce,64|t.qd()&1296,this.a.d)},s.Fc=function(t){return rZ(),!0},s.Gc=function(t){return nn(this),nn(t),Q(t,543)?xPt(c(t,835)):!t.dc()&&F$(this,t.Kc())},s.Hc=function(t){var n;return n=c(tw(n2(this.a),t),14),(n?n.gc():0)>0},s.Fb=function(t){return Txt(this,t)},s.Hb=function(){return fi(Rm(this))},s.dc=function(){return Rm(this).dc()},s.Mc=function(t){return ZGe(this,t,1)>0},s.Ib=function(){return Ro(Rm(this))},S(qe,"AbstractMultiset",1989),y(1991,1970,ys),s.$b=function(){kO(this.a.a)},s.Hc=function(t){var n,i;return Q(t,492)?(i=c(t,416),c(i.a.dd(),14).gc()<=0?!1:(n=aNe(this.a,i.a.cd()),n==c(i.a.dd(),14).gc())):!1},s.Mc=function(t){var n,i,r,o;return Q(t,492)&&(i=c(t,416),n=i.a.cd(),r=c(i.a.dd(),14).gc(),r!=0)?(o=this.a,pRt(o,n,r)):!1},S(qe,"Multisets/EntrySet",1991),y(1109,1991,ys,FCe),s.Kc=function(){return new h9e(QRe(n2(this.a.a)).Kc())},s.gc=function(){return n2(this.a.a).gc()},S(qe,"AbstractMultiset/EntrySet",1109),y(619,726,tb),s.hc=function(){return this.gd()},s.jc=function(){return this.hd()},s.cc=function(t){return this.jd(t)},s.fc=function(t){return this.kd(t)},s.Zb=function(){var t;return t=this.f,t||(this.f=this.ac())},s.hd=function(){return st(),st(),Tk},s.Fb=function(t){return fK(this,t)},s.jd=function(t){return c(Vn(this,t),21)},s.kd=function(t){return c(PI(this,t),21)},s.mc=function(t){return st(),new t_(c(t,21))},s.pc=function(t,n){return new ZDe(this,t,c(n,21))},S(qe,"AbstractSetMultimap",619),y(1657,619,tb),s.hc=function(){return new o1(this.b)},s.gd=function(){return new o1(this.b)},s.jc=function(){return Sne(new o1(this.b))},s.hd=function(){return Sne(new o1(this.b))},s.cc=function(t){return c(c(Vn(this,t),21),84)},s.jd=function(t){return c(c(Vn(this,t),21),84)},s.fc=function(t){return c(c(PI(this,t),21),84)},s.kd=function(t){return c(c(PI(this,t),21),84)},s.mc=function(t){return Q(t,271)?Sne(c(t,271)):(st(),new kee(c(t,84)))},s.Zb=function(){var t;return t=this.f,t||(this.f=Q(this.c,171)?new n8(this,c(this.c,171)):Q(this.c,161)?new EC(this,c(this.c,161)):new c_(this,this.c))},s.pc=function(t,n){return Q(n,271)?new K7e(this,t,c(n,271)):new ete(this,t,c(n,84))},S(qe,"AbstractSortedSetMultimap",1657),y(1658,1657,tb),s.Zb=function(){var t;return t=this.f,c(c(t||(this.f=Q(this.c,171)?new n8(this,c(this.c,171)):Q(this.c,161)?new EC(this,c(this.c,161)):new c_(this,this.c)),161),171)},s.ec=function(){var t;return t=this.i,c(c(t||(this.i=Q(this.c,171)?new o_(this,c(this.c,171)):Q(this.c,161)?new QM(this,c(this.c,161)):new Dm(this,this.c)),84),271)},s.bc=function(){return Q(this.c,171)?new o_(this,c(this.c,171)):Q(this.c,161)?new QM(this,c(this.c,161)):new Dm(this,this.c)},S(qe,"AbstractSortedKeySortedSetMultimap",1658),y(2010,1,{1947:1}),s.Fb=function(t){return o7t(this,t)},s.Hb=function(){var t;return Mre((t=this.g,t||(this.g=new PN(this))))},s.Ib=function(){var t;return LVe((t=this.f,t||(this.f=new Mee(this))))},S(qe,"AbstractTable",2010),y(665,Kl,ys,PN),s.$b=function(){E9e()},s.Hc=function(t){var n,i;return Q(t,468)?(n=c(t,682),i=c(tw(_xe(this.a),u1(n.c.e,n.b)),83),!!i&&eoe(i.vc(),new Vb(u1(n.c.c,n.a),a2(n.c,n.b,n.a)))):!1},s.Kc=function(){return H5t(this.a)},s.Mc=function(t){var n,i;return Q(t,468)?(n=c(t,682),i=c(tw(_xe(this.a),u1(n.c.e,n.b)),83),!!i&&Kjt(i.vc(),new Vb(u1(n.c.c,n.a),a2(n.c,n.b,n.a)))):!1},s.gc=function(){return kRe(this.a)},s.Nc=function(){return FPt(this.a)},S(qe,"AbstractTable/CellSet",665),y(1928,28,ww,BCe),s.$b=function(){E9e()},s.Hc=function(t){return X7t(this.a,t)},s.Kc=function(){return z5t(this.a)},s.gc=function(){return kRe(this.a)},s.Nc=function(){return LNe(this.a)},S(qe,"AbstractTable/Values",1928),y(1632,1631,tb),S(qe,"ArrayListMultimapGwtSerializationDependencies",1632),y(513,1632,tb,YN,Wne),s.hc=function(){return new Dc(this.a)},s.a=0,S(qe,"ArrayListMultimap",513),y(664,2010,{664:1,1947:1,3:1},aUe),S(qe,"ArrayTable",664),y(1924,386,DE,pDe),s.Xb=function(t){return new jre(this.a,t)},S(qe,"ArrayTable/1",1924),y(1925,1,{},DCe),s.ld=function(t){return new jre(this.a,t)},S(qe,"ArrayTable/1methodref$getCell$Type",1925),y(2011,1,{682:1}),s.Fb=function(t){var n;return t===this?!0:Q(t,468)?(n=c(t,682),df(u1(this.c.e,this.b),u1(n.c.e,n.b))&&df(u1(this.c.c,this.a),u1(n.c.c,n.a))&&df(a2(this.c,this.b,this.a),a2(n.c,n.b,n.a))):!1},s.Hb=function(){return ZO(U(G(xt,1),xe,1,5,[u1(this.c.e,this.b),u1(this.c.c,this.a),a2(this.c,this.b,this.a)]))},s.Ib=function(){return"("+u1(this.c.e,this.b)+","+u1(this.c.c,this.a)+")="+a2(this.c,this.b,this.a)},S(qe,"Tables/AbstractCell",2011),y(468,2011,{468:1,682:1},jre),s.a=0,s.b=0,s.d=0,S(qe,"ArrayTable/2",468),y(1927,1,{},kCe),s.ld=function(t){return UBe(this.a,t)},S(qe,"ArrayTable/2methodref$getValue$Type",1927),y(1926,386,DE,wDe),s.Xb=function(t){return UBe(this.a,t)},S(qe,"ArrayTable/3",1926),y(1979,1967,x0),s.$b=function(){b8(this.kc())},s.vc=function(){return new eIe(this)},s.lc=function(){return new Yxe(this.kc(),this.gc())},S(qe,"Maps/IteratorBasedAbstractMap",1979),y(828,1979,x0),s.$b=function(){throw V(new sn)},s._b=function(t){return K9e(this.c,t)},s.kc=function(){return new mDe(this,this.c.b.c.gc())},s.lc=function(){return gB(this.c.b.c.gc(),16,new RCe(this))},s.xc=function(t){var n;return n=c(v5(this.c,t),19),n?this.nd(n.a):null},s.dc=function(){return this.c.b.c.dc()},s.ec=function(){return EB(this.c)},s.zc=function(t,n){var i;if(i=c(v5(this.c,t),19),!i)throw V(new St(this.md()+" "+t+" not in "+EB(this.c)));return this.od(i.a,n)},s.Bc=function(t){throw V(new sn)},s.gc=function(){return this.c.b.c.gc()},S(qe,"ArrayTable/ArrayMap",828),y(1923,1,{},RCe),s.ld=function(t){return Sxe(this.a,t)},S(qe,"ArrayTable/ArrayMap/0methodref$getEntry$Type",1923),y(1921,345,hD,_8e),s.cd=function(){return o3t(this.a,this.b)},s.dd=function(){return this.a.nd(this.b)},s.ed=function(t){return this.a.od(this.b,t)},s.b=0,S(qe,"ArrayTable/ArrayMap/1",1921),y(1922,386,DE,mDe),s.Xb=function(t){return Sxe(this.a,t)},S(qe,"ArrayTable/ArrayMap/2",1922),y(1920,828,x0,lxe),s.md=function(){return"Column"},s.nd=function(t){return a2(this.b,this.a,t)},s.od=function(t,n){return vqe(this.b,this.a,t,n)},s.a=0,S(qe,"ArrayTable/Row",1920),y(829,828,x0,Mee),s.nd=function(t){return new lxe(this.a,t)},s.zc=function(t,n){return c(n,83),qvt()},s.od=function(t,n){return c(n,83),Hvt()},s.md=function(){return"Row"},S(qe,"ArrayTable/RowMap",829),y(1120,1,oa,E8e),s.qd=function(){return this.a.qd()&-262},s.rd=function(){return this.a.rd()},s.Nb=function(t){this.a.Nb(new w8e(t,this.b))},s.sd=function(t){return this.a.sd(new p8e(t,this.b))},S(qe,"CollectSpliterators/1",1120),y(1121,1,Rt,p8e),s.td=function(t){this.a.td(this.b.Kb(t))},S(qe,"CollectSpliterators/1/lambda$0$Type",1121),y(1122,1,Rt,w8e),s.td=function(t){this.a.td(this.b.Kb(t))},S(qe,"CollectSpliterators/1/lambda$1$Type",1122),y(1123,1,oa,UNe),s.qd=function(){return this.a},s.rd=function(){return this.d&&(this.b=J7e(this.b,this.d.rd())),J7e(this.b,0)},s.Nb=function(t){this.d&&(this.d.Nb(t),this.d=null),this.c.Nb(new b8e(this.e,t)),this.b=0},s.sd=function(t){for(;;){if(this.d&&this.d.sd(t))return s5(this.b,dD)&&(this.b=P1(this.b,1)),!0;if(this.d=null,!this.c.sd(new m8e(this,this.e)))return!1}},s.a=0,s.b=0,S(qe,"CollectSpliterators/1FlatMapSpliterator",1123),y(1124,1,Rt,m8e),s.td=function(t){u_t(this.a,this.b,t)},S(qe,"CollectSpliterators/1FlatMapSpliterator/lambda$0$Type",1124),y(1125,1,Rt,b8e),s.td=function(t){G2t(this.b,this.a,t)},S(qe,"CollectSpliterators/1FlatMapSpliterator/lambda$1$Type",1125),y(1117,1,oa,jke),s.qd=function(){return 16464|this.b},s.rd=function(){return this.a.rd()},s.Nb=function(t){this.a.xe(new y8e(t,this.c))},s.sd=function(t){return this.a.ye(new v8e(t,this.c))},s.b=0,S(qe,"CollectSpliterators/1WithCharacteristics",1117),y(1118,1,hT,v8e),s.ud=function(t){this.a.td(this.b.ld(t))},S(qe,"CollectSpliterators/1WithCharacteristics/lambda$0$Type",1118),y(1119,1,hT,y8e),s.ud=function(t){this.a.td(this.b.ld(t))},S(qe,"CollectSpliterators/1WithCharacteristics/lambda$1$Type",1119),y(245,1,SH),s.wd=function(t){return this.vd(c(t,245))},s.vd=function(t){var n;return t==($N(),rG)?1:t==(KN(),iG)?-1:(n=(h8(),fI(this.a,t.a)),n!=0?n:Q(this,519)==Q(t,519)?0:Q(this,519)?1:-1)},s.zd=function(){return this.a},s.Fb=function(t){return Doe(this,t)},S(qe,"Cut",245),y(1761,245,SH,M9e),s.vd=function(t){return t==this?0:1},s.xd=function(t){throw V(new OQ)},s.yd=function(t){t.a+="+∞)"},s.zd=function(){throw V(new Ao(MJe))},s.Hb=function(){return Nf(),Koe(this)},s.Ad=function(t){return!1},s.Ib=function(){return"+∞"};var iG;S(qe,"Cut/AboveAll",1761),y(519,245,{245:1,519:1,3:1,35:1},SDe),s.xd=function(t){nc((t.a+="(",t),this.a)},s.yd=function(t){Dg(nc(t,this.a),93)},s.Hb=function(){return~fi(this.a)},s.Ad=function(t){return h8(),fI(this.a,t)<0},s.Ib=function(){return"/"+this.a+"\\"},S(qe,"Cut/AboveValue",519),y(1760,245,SH,C9e),s.vd=function(t){return t==this?0:-1},s.xd=function(t){t.a+="(-∞"},s.yd=function(t){throw V(new OQ)},s.zd=function(){throw V(new Ao(MJe))},s.Hb=function(){return Nf(),Koe(this)},s.Ad=function(t){return!0},s.Ib=function(){return"-∞"};var rG;S(qe,"Cut/BelowAll",1760),y(1762,245,SH,PDe),s.xd=function(t){nc((t.a+="[",t),this.a)},s.yd=function(t){Dg(nc(t,this.a),41)},s.Hb=function(){return fi(this.a)},s.Ad=function(t){return h8(),fI(this.a,t)<=0},s.Ib=function(){return"\\"+this.a+"/"},S(qe,"Cut/BelowValue",1762),y(537,1,Yf),s.Jc=function(t){Mr(this,t)},s.Ib=function(){return wAt(c(B8(this,"use Optional.orNull() instead of Optional.or(null)"),20).Kc())},S(qe,"FluentIterable",537),y(433,537,Yf,l5),s.Kc=function(){return new Kt(Ht(this.a.Kc(),new j))},S(qe,"FluentIterable/2",433),y(1046,537,Yf,T7e),s.Kc=function(){return d1(this)},S(qe,"FluentIterable/3",1046),y(708,386,DE,Cee),s.Xb=function(t){return this.a[t].Kc()},S(qe,"FluentIterable/3/1",708),y(1972,1,{}),s.Ib=function(){return Ro(this.Bd().b)},S(qe,"ForwardingObject",1972),y(1973,1972,CJe),s.Bd=function(){return this.Cd()},s.Jc=function(t){Mr(this,t)},s.Lc=function(){return this.Oc()},s.Nc=function(){return new bt(this,0)},s.Oc=function(){return new ht(null,this.Nc())},s.Fc=function(t){return this.Cd(),V9e()},s.Gc=function(t){return this.Cd(),G9e()},s.$b=function(){this.Cd(),U9e()},s.Hc=function(t){return this.Cd().Hc(t)},s.Ic=function(t){return this.Cd().Ic(t)},s.dc=function(){return this.Cd().b.dc()},s.Kc=function(){return this.Cd().Kc()},s.Mc=function(t){return this.Cd(),W9e()},s.gc=function(){return this.Cd().b.gc()},s.Pc=function(){return this.Cd().Pc()},s.Qc=function(t){return this.Cd().Qc(t)},S(qe,"ForwardingCollection",1973),y(1980,28,Bue),s.Kc=function(){return this.Ed()},s.Fc=function(t){throw V(new sn)},s.Gc=function(t){throw V(new sn)},s.$b=function(){throw V(new sn)},s.Hc=function(t){return t!=null&&nw(this,t,!1)},s.Dd=function(){switch(this.gc()){case 0:return Hp(),Hp(),oG;case 1:return Hp(),new bB(nn(this.Ed().Pb()));default:return new fxe(this,this.Pc())}},s.Mc=function(t){throw V(new sn)},S(qe,"ImmutableCollection",1980),y(712,1980,Bue,jQ),s.Kc=function(){return l2(this.a.Kc())},s.Hc=function(t){return t!=null&&this.a.Hc(t)},s.Ic=function(t){return this.a.Ic(t)},s.dc=function(){return this.a.dc()},s.Ed=function(){return l2(this.a.Kc())},s.gc=function(){return this.a.gc()},s.Pc=function(){return this.a.Pc()},s.Qc=function(t){return this.a.Qc(t)},s.Ib=function(){return Ro(this.a)},S(qe,"ForwardingImmutableCollection",712),y(152,1980,T6),s.Kc=function(){return this.Ed()},s.Yc=function(){return this.Fd(0)},s.Zc=function(t){return this.Fd(t)},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.bd=function(t,n){return this.Gd(t,n)},s.Vc=function(t,n){throw V(new sn)},s.Wc=function(t,n){throw V(new sn)},s.Fb=function(t){return hxt(this,t)},s.Hb=function(){return STt(this)},s.Xc=function(t){return t==null?-1:L8t(this,t)},s.Ed=function(){return this.Fd(0)},s.Fd=function(t){return Kee(this,t)},s.$c=function(t){throw V(new sn)},s._c=function(t,n){throw V(new sn)},s.Gd=function(t,n){var i;return n7((i=new k8e(this),new Hf(i,t,n)))};var oG;S(qe,"ImmutableList",152),y(2006,152,T6),s.Kc=function(){return l2(this.Hd().Kc())},s.bd=function(t,n){return n7(this.Hd().bd(t,n))},s.Hc=function(t){return t!=null&&this.Hd().Hc(t)},s.Ic=function(t){return this.Hd().Ic(t)},s.Fb=function(t){return $n(this.Hd(),t)},s.Xb=function(t){return u1(this,t)},s.Hb=function(){return fi(this.Hd())},s.Xc=function(t){return this.Hd().Xc(t)},s.dc=function(){return this.Hd().dc()},s.Ed=function(){return l2(this.Hd().Kc())},s.gc=function(){return this.Hd().gc()},s.Gd=function(t,n){return n7(this.Hd().bd(t,n))},s.Pc=function(){return this.Hd().Qc(oe(xt,xe,1,this.Hd().gc(),5,1))},s.Qc=function(t){return this.Hd().Qc(t)},s.Ib=function(){return Ro(this.Hd())},S(qe,"ForwardingImmutableList",2006),y(714,1,kE),s.vc=function(){return e0(this)},s.wc=function(t){U5(this,t)},s.ec=function(){return EB(this)},s.yc=function(t,n,i){return TK(this,t,n,i)},s.Cc=function(){return this.Ld()},s.$b=function(){throw V(new sn)},s._b=function(t){return this.xc(t)!=null},s.uc=function(t){return this.Ld().Hc(t)},s.Jd=function(){return new pAe(this)},s.Kd=function(){return new wAe(this)},s.Fb=function(t){return bjt(this,t)},s.Hb=function(){return e0(this).Hb()},s.dc=function(){return this.gc()==0},s.zc=function(t,n){return zvt()},s.Bc=function(t){throw V(new sn)},s.Ib=function(){return UDt(this)},s.Ld=function(){return this.e?this.e:this.e=this.Kd()},s.c=null,s.d=null,s.e=null;var qtt;S(qe,"ImmutableMap",714),y(715,714,kE),s._b=function(t){return K9e(this,t)},s.uc=function(t){return N8e(this.b,t)},s.Id=function(){return hHe(new $Ce(this))},s.Jd=function(){return hHe(Vxe(this.b))},s.Kd=function(){return hf(),new jQ(zxe(this.b))},s.Fb=function(t){return F8e(this.b,t)},s.xc=function(t){return v5(this,t)},s.Hb=function(){return fi(this.b.c)},s.dc=function(){return this.b.c.dc()},s.gc=function(){return this.b.c.gc()},s.Ib=function(){return Ro(this.b.c)},S(qe,"ForwardingImmutableMap",715),y(1974,1973,PH),s.Bd=function(){return this.Md()},s.Cd=function(){return this.Md()},s.Nc=function(){return new bt(this,1)},s.Fb=function(t){return t===this||this.Md().Fb(t)},s.Hb=function(){return this.Md().Hb()},S(qe,"ForwardingSet",1974),y(1069,1974,PH,$Ce),s.Bd=function(){return M_(this.a.b)},s.Cd=function(){return M_(this.a.b)},s.Hc=function(t){if(Q(t,42)&&c(t,42).cd()==null)return!1;try{return L8e(M_(this.a.b),t)}catch(n){if(n=gi(n),Q(n,205))return!1;throw V(n)}},s.Md=function(){return M_(this.a.b)},s.Qc=function(t){var n;return n=CLe(M_(this.a.b),t),M_(this.a.b).b.gc()=0?"+":"")+(i/60|0),n=B9(g.Math.abs(i)%60),(GVe(),rnt)[this.q.getDay()]+" "+ont[this.q.getMonth()]+" "+B9(this.q.getDate())+" "+B9(this.q.getHours())+":"+B9(this.q.getMinutes())+":"+B9(this.q.getSeconds())+" GMT"+t+n+" "+this.q.getFullYear()};var Mk=S(Gt,"Date",199);y(1915,199,xJe,vVe),s.a=!1,s.b=0,s.c=0,s.d=0,s.e=0,s.f=0,s.g=!1,s.i=0,s.j=0,s.k=0,s.n=0,s.o=0,s.p=0,S("com.google.gwt.i18n.shared.impl","DateRecord",1915),y(1966,1,{}),s.fe=function(){return null},s.ge=function(){return null},s.he=function(){return null},s.ie=function(){return null},s.je=function(){return null},S(I2,"JSONValue",1966),y(216,1966,{216:1},Eg,QJ),s.Fb=function(t){return Q(t,216)?Jne(this.a,c(t,216).a):!1},s.ee=function(){return hvt},s.Hb=function(){return Fne(this.a)},s.fe=function(){return this},s.Ib=function(){var t,n,i;for(i=new lu("["),n=0,t=this.a.length;n0&&(i.a+=","),nc(i,Yp(this,n));return i.a+="]",i.a},S(I2,"JSONArray",216),y(483,1966,{483:1},ZJ),s.ee=function(){return dvt},s.ge=function(){return this},s.Ib=function(){return Pt(),""+this.a},s.a=!1;var Ytt,Xtt;S(I2,"JSONBoolean",483),y(985,60,$h,d9e),S(I2,"JSONException",985),y(1023,1966,{},re),s.ee=function(){return mvt},s.Ib=function(){return rs};var Jtt;S(I2,"JSONNull",1023),y(258,1966,{258:1},NA),s.Fb=function(t){return Q(t,258)?this.a==c(t,258).a:!1},s.ee=function(){return gvt},s.Hb=function(){return f_(this.a)},s.he=function(){return this},s.Ib=function(){return this.a+""},s.a=0,S(I2,"JSONNumber",258),y(183,1966,{183:1},xy,BM),s.Fb=function(t){return Q(t,183)?Jne(this.a,c(t,183).a):!1},s.ee=function(){return bvt},s.Hb=function(){return Fne(this.a)},s.ie=function(){return this},s.Ib=function(){var t,n,i,r,o,u,a;for(a=new lu("{"),t=!0,u=J$(this,oe(Re,we,2,0,6,1)),i=u,r=0,o=i.length;r=0?":"+this.c:"")+")"},s.c=0;var mhe=S(Ho,"StackTraceElement",310);Ktt={3:1,475:1,35:1,2:1};var Re=S(Ho,$ue,2);y(107,418,{475:1},nd,FS,ea),S(Ho,"StringBuffer",107),y(100,418,{475:1},n1,_m,lu),S(Ho,"StringBuilder",100),y(687,73,UH,cZ),S(Ho,"StringIndexOutOfBoundsException",687),y(2043,1,{});var vhe;y(844,1,{},Gn),s.Kb=function(t){return c(t,78).e},S(Ho,"Throwable/lambda$0$Type",844),y(41,60,{3:1,102:1,60:1,78:1,41:1},sn,td),S(Ho,"UnsupportedOperationException",41),y(240,236,{3:1,35:1,236:1,240:1},cI,bZ),s.wd=function(t){return CYe(this,c(t,240))},s.ke=function(){return aw(uXe(this))},s.Fb=function(t){var n;return this===t?!0:Q(t,240)?(n=c(t,240),this.e==n.e&&CYe(this,n)==0):!1},s.Hb=function(){var t;return this.b!=0?this.b:this.a<54?(t=ns(this.f),this.b=tn(Xi(t,-1)),this.b=33*this.b+tn(Xi(h1(t,32),-1)),this.b=17*this.b+xi(this.e),this.b):(this.b=17*cHe(this.c)+xi(this.e),this.b)},s.Ib=function(){return uXe(this)},s.a=0,s.b=0,s.d=0,s.e=0,s.f=0;var tnt,db,yhe,_he,Ehe,She,Phe,Mhe,dG=S("java.math","BigDecimal",240);y(91,236,{3:1,35:1,236:1,91:1},$oe,ld,km,Ece,aze,l1),s.wd=function(t){return rze(this,c(t,91))},s.ke=function(){return aw(yH(this,0))},s.Fb=function(t){return voe(this,t)},s.Hb=function(){return cHe(this)},s.Ib=function(){return yH(this,0)},s.b=-2,s.c=0,s.d=0,s.e=0;var gG,Ck,Che,bG,Ik,t4,Ev=S("java.math","BigInteger",91),nnt,int,$2,uP;y(488,1967,x0),s.$b=function(){Is(this)},s._b=function(t){return tu(this,t)},s.uc=function(t){return zqe(this,t,this.g)||zqe(this,t,this.f)},s.vc=function(){return new Pg(this)},s.xc=function(t){return Bt(this,t)},s.zc=function(t,n){return Kn(this,t,n)},s.Bc=function(t){return u2(this,t)},s.gc=function(){return KS(this)},S(Gt,"AbstractHashMap",488),y(261,Kl,ys,Pg),s.$b=function(){this.a.$b()},s.Hc=function(t){return qNe(this,t)},s.Kc=function(){return new Gg(this.a)},s.Mc=function(t){var n;return qNe(this,t)?(n=c(t,42).cd(),this.a.Bc(n),!0):!1},s.gc=function(){return this.a.gc()},S(Gt,"AbstractHashMap/EntrySet",261),y(262,1,dr,Gg),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return g0(this)},s.Ob=function(){return this.b},s.Qb=function(){BBe(this)},s.b=!1,S(Gt,"AbstractHashMap/EntrySetIterator",262),y(417,1,dr,CS),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return iC(this)},s.Pb=function(){return lLe(this)},s.Qb=function(){nu(this)},s.b=0,s.c=-1,S(Gt,"AbstractList/IteratorImpl",417),y(96,417,Wf,_r),s.Qb=function(){nu(this)},s.Rb=function(t){Np(this,t)},s.Sb=function(){return this.b>0},s.Tb=function(){return this.b},s.Ub=function(){return Lt(this.b>0),this.a.Xb(this.c=--this.b)},s.Vb=function(){return this.b-1},s.Wb=function(t){Rp(this.c!=-1),this.a._c(this.c,t)},S(Gt,"AbstractList/ListIteratorImpl",96),y(219,52,xE,Hf),s.Vc=function(t,n){Vp(t,this.b),this.c.Vc(this.a+t,n),++this.b},s.Xb=function(t){return pt(t,this.b),this.c.Xb(this.a+t)},s.$c=function(t){var n;return pt(t,this.b),n=this.c.$c(this.a+t),--this.b,n},s._c=function(t,n){return pt(t,this.b),this.c._c(this.a+t,n)},s.gc=function(){return this.b},s.a=0,s.b=0,S(Gt,"AbstractList/SubList",219),y(384,Kl,ys,U3),s.$b=function(){this.a.$b()},s.Hc=function(t){return this.a._b(t)},s.Kc=function(){var t;return t=this.a.vc().Kc(),new oQ(t)},s.Mc=function(t){return this.a._b(t)?(this.a.Bc(t),!0):!1},s.gc=function(){return this.a.gc()},S(Gt,"AbstractMap/1",384),y(691,1,dr,oQ),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.a.Ob()},s.Pb=function(){var t;return t=c(this.a.Pb(),42),t.cd()},s.Qb=function(){this.a.Qb()},S(Gt,"AbstractMap/1/1",691),y(226,28,ww,yh),s.$b=function(){this.a.$b()},s.Hc=function(t){return this.a.uc(t)},s.Kc=function(){var t;return t=this.a.vc().Kc(),new Cp(t)},s.gc=function(){return this.a.gc()},S(Gt,"AbstractMap/2",226),y(294,1,dr,Cp),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.a.Ob()},s.Pb=function(){var t;return t=c(this.a.Pb(),42),t.dd()},s.Qb=function(){this.a.Qb()},S(Gt,"AbstractMap/2/1",294),y(484,1,{484:1,42:1}),s.Fb=function(t){var n;return Q(t,42)?(n=c(t,42),wc(this.d,n.cd())&&wc(this.e,n.dd())):!1},s.cd=function(){return this.d},s.dd=function(){return this.e},s.Hb=function(){return jm(this.d)^jm(this.e)},s.ed=function(t){return ste(this,t)},s.Ib=function(){return this.d+"="+this.e},S(Gt,"AbstractMap/AbstractEntry",484),y(383,484,{484:1,383:1,42:1},y9),S(Gt,"AbstractMap/SimpleEntry",383),y(1984,1,JH),s.Fb=function(t){var n;return Q(t,42)?(n=c(t,42),wc(this.cd(),n.cd())&&wc(this.dd(),n.dd())):!1},s.Hb=function(){return jm(this.cd())^jm(this.dd())},s.Ib=function(){return this.cd()+"="+this.dd()},S(Gt,SJe,1984),y(1992,1967,_Je),s.tc=function(t){return XFe(this,t)},s._b=function(t){return iB(this,t)},s.vc=function(){return new lQ(this)},s.xc=function(t){var n;return n=t,Uo($re(this,n))},s.ec=function(){return new qM(this)},S(Gt,"AbstractNavigableMap",1992),y(739,Kl,ys,lQ),s.Hc=function(t){return Q(t,42)&&XFe(this.b,c(t,42))},s.Kc=function(){return new m5(this.b)},s.Mc=function(t){var n;return Q(t,42)?(n=c(t,42),NBe(this.b,n)):!1},s.gc=function(){return this.b.c},S(Gt,"AbstractNavigableMap/EntrySet",739),y(493,Kl,Fue,qM),s.Nc=function(){return new m9(this)},s.$b=function(){RS(this.a)},s.Hc=function(t){return iB(this.a,t)},s.Kc=function(){var t;return t=new m5(new b5(this.a).b),new HM(t)},s.Mc=function(t){return iB(this.a,t)?(D5(this.a,t),!0):!1},s.gc=function(){return this.a.c},S(Gt,"AbstractNavigableMap/NavigableKeySet",493),y(494,1,dr,HM),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return iC(this.a.a)},s.Pb=function(){var t;return t=e8(this.a),t.cd()},s.Qb=function(){$ke(this.a)},S(Gt,"AbstractNavigableMap/NavigableKeySet/1",494),y(2004,28,ww),s.Fc=function(t){return R_(wE(this,t)),!0},s.Gc=function(t){return yt(t),u8(t!=this,"Can't add a queue to itself"),qr(this,t)},s.$b=function(){for(;B$(this)!=null;);},S(Gt,"AbstractQueue",2004),y(302,28,{4:1,20:1,28:1,14:1},vm,dNe),s.Fc=function(t){return oie(this,t),!0},s.$b=function(){fie(this)},s.Hc=function(t){return dqe(new O5(this),t)},s.dc=function(){return xS(this)},s.Kc=function(){return new O5(this)},s.Mc=function(t){return T6t(new O5(this),t)},s.gc=function(){return this.c-this.b&this.a.length-1},s.Nc=function(){return new bt(this,272)},s.Qc=function(t){var n;return n=this.c-this.b&this.a.length-1,t.lengthn&&vi(t,n,null),t},s.b=0,s.c=0,S(Gt,"ArrayDeque",302),y(446,1,dr,O5),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return this.a!=this.b},s.Pb=function(){return t7(this)},s.Qb=function(){fKe(this)},s.a=0,s.b=0,s.c=-1,S(Gt,"ArrayDeque/IteratorImpl",446),y(12,52,FJe,Se,Dc,ps),s.Vc=function(t,n){Bp(this,t,n)},s.Fc=function(t){return Ee(this,t)},s.Wc=function(t,n){return Gre(this,t,n)},s.Gc=function(t){return Hi(this,t)},s.$b=function(){this.c=oe(xt,xe,1,0,5,1)},s.Hc=function(t){return Do(this,t,0)!=-1},s.Jc=function(t){Zc(this,t)},s.Xb=function(t){return Ne(this,t)},s.Xc=function(t){return Do(this,t,0)},s.dc=function(){return this.c.length==0},s.Kc=function(){return new q(this)},s.$c=function(t){return ad(this,t)},s.Mc=function(t){return Jc(this,t)},s.Ud=function(t,n){hNe(this,t,n)},s._c=function(t,n){return Lu(this,t,n)},s.gc=function(){return this.c.length},s.ad=function(t){cr(this,t)},s.Pc=function(){return GF(this)},s.Qc=function(t){return Bl(this,t)};var hzt=S(Gt,"ArrayList",12);y(7,1,dr,q),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return Fo(this)},s.Pb=function(){return K(this)},s.Qb=function(){I5(this)},s.a=0,s.b=-1,S(Gt,"ArrayList/1",7),y(2013,g.Function,{},ve),s.te=function(t,n){return zi(t,n)},y(154,52,BJe,Js),s.Hc=function(t){return dKe(this,t)!=-1},s.Jc=function(t){var n,i,r,o;for(yt(t),i=this.a,r=0,o=i.length;r>>0,t.toString(16)))},s.f=0,s.i=$i;var Dk=S(Qf,"CNode",57);y(814,1,{},$Q),S(Qf,"CNode/CNodeBuilder",814);var vnt;y(1525,1,{},or),s.Oe=function(t,n){return 0},s.Pe=function(t,n){return 0},S(Qf,UJe,1525),y(1790,1,{},uu),s.Le=function(t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z;for(p=Ii,r=new q(t.a.b);r.ar.d.c||r.d.c==u.d.c&&r.d.b0?t+this.n.d+this.n.a:0},s.Se=function(){var t,n,i,r,o;if(o=0,this.e)this.b?o=this.b.a:this.a[1][1]&&(o=this.a[1][1].Se());else if(this.g)o=goe(this,aq(this,null,!0));else for(n=(al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])),i=0,r=n.length;i0?o+this.n.b+this.n.c:0},s.Te=function(){var t,n,i,r,o;if(this.g)for(t=aq(this,null,!1),i=(al(),U(G(jw,1),_e,232,0,[Jo,Nc,Qo])),r=0,o=i.length;r0&&(r[0]+=this.d,i-=r[0]),r[2]>0&&(r[2]+=this.d,i-=r[2]),this.c.a=g.Math.max(0,i),this.c.d=n.d+t.d+(this.c.a-i)/2,r[1]=g.Math.max(r[1],i),mie(this,Nc,n.d+t.d+r[0]-(r[1]-i)/2,r)},s.b=null,s.d=0,s.e=!1,s.f=!1,s.g=!1;var EG=0,kk=0;S(ib,"GridContainerCell",1473),y(461,22,{3:1,35:1,22:1,461:1},cF);var N1,jf,qa,jnt=hn(ib,"HorizontalLabelAlignment",461,bn,H6t,I_t),Ant;y(306,212,{212:1,306:1},kLe,$$e,ALe),s.Re=function(){return wRe(this)},s.Se=function(){return Vte(this)},s.a=0,s.c=!1;var Ezt=S(ib,"LabelCell",306);y(244,326,{212:1,326:1,244:1},r6),s.Re=function(){return GI(this)},s.Se=function(){return UI(this)},s.Te=function(){eH(this)},s.Ue=function(){tH(this)},s.b=0,s.c=0,s.d=!1,S(ib,"StripContainerCell",244),y(1626,1,Rn,Eo),s.Mb=function(t){return $vt(c(t,212))},S(ib,"StripContainerCell/lambda$0$Type",1626),y(1627,1,{},fs),s.Fe=function(t){return c(t,212).Se()},S(ib,"StripContainerCell/lambda$1$Type",1627),y(1628,1,Rn,au),s.Mb=function(t){return Kvt(c(t,212))},S(ib,"StripContainerCell/lambda$2$Type",1628),y(1629,1,{},e1),s.Fe=function(t){return c(t,212).Re()},S(ib,"StripContainerCell/lambda$3$Type",1629),y(462,22,{3:1,35:1,22:1,462:1},sF);var Ha,F1,pl,Ont=hn(ib,"VerticalLabelAlignment",462,bn,z6t,T_t),Dnt;y(789,1,{},Tue),s.c=0,s.d=0,s.k=0,s.s=0,s.t=0,s.v=!1,s.w=0,s.D=!1,S(vD,"NodeContext",789),y(1471,1,Zn,TA),s.ue=function(t,n){return k7e(c(t,61),c(n,61))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(vD,"NodeContext/0methodref$comparePortSides$Type",1471),y(1472,1,Zn,fN),s.ue=function(t,n){return gDt(c(t,111),c(n,111))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(vD,"NodeContext/1methodref$comparePortContexts$Type",1472),y(159,22,{3:1,35:1,22:1,159:1},Bu);var knt,Rnt,xnt,Lnt,Nnt,Fnt,Bnt,$nt,Knt,qnt,Hnt,znt,Vnt,Gnt,Unt,Wnt,Ynt,Xnt,Jnt,Qnt,Znt,SG,eit=hn(vD,"NodeLabelLocation",159,bn,KK,j_t),tit;y(111,1,{111:1},hUe),s.a=!1,S(vD,"PortContext",111),y(1476,1,Rt,hN),s.td=function(t){Q9e(c(t,306))},S(yT,cQe,1476),y(1477,1,Rn,w2e),s.Mb=function(t){return!!c(t,111).c},S(yT,sQe,1477),y(1478,1,Rt,m2e),s.td=function(t){Q9e(c(t,111).c)},S(yT,"LabelPlacer/lambda$2$Type",1478);var ude;y(1475,1,Rt,y2e),s.td=function(t){Lp(),yvt(c(t,111))},S(yT,"NodeLabelAndSizeUtilities/lambda$0$Type",1475),y(790,1,Rt,Pte),s.td=function(t){Dyt(this.b,this.c,this.a,c(t,181))},s.a=!1,s.c=!1,S(yT,"NodeLabelCellCreator/lambda$0$Type",790),y(1474,1,Rt,RIe),s.td=function(t){Svt(this.a,c(t,181))},S(yT,"PortContextCreator/lambda$0$Type",1474);var Rk;y(1829,1,{},_2e),S(BE,"GreedyRectangleStripOverlapRemover",1829),y(1830,1,Zn,v2e),s.ue=function(t,n){return l3t(c(t,222),c(n,222))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(BE,"GreedyRectangleStripOverlapRemover/0methodref$compareByYCoordinate$Type",1830),y(1786,1,{},AAe),s.a=5,s.e=0,S(BE,"RectangleStripOverlapRemover",1786),y(1787,1,Zn,S2e),s.ue=function(t,n){return f3t(c(t,222),c(n,222))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(BE,"RectangleStripOverlapRemover/0methodref$compareLeftRectangleBorders$Type",1787),y(1789,1,Zn,P2e),s.ue=function(t,n){return xSt(c(t,222),c(n,222))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(BE,"RectangleStripOverlapRemover/1methodref$compareRightRectangleBorders$Type",1789),y(406,22,{3:1,35:1,22:1,406:1},S9);var HT,PG,MG,zT,nit=hn(BE,"RectangleStripOverlapRemover/OverlapRemovalDirection",406,bn,HPt,A_t),iit;y(222,1,{222:1},yB),S(BE,"RectangleStripOverlapRemover/RectangleNode",222),y(1788,1,Rt,xIe),s.td=function(t){B8t(this.a,c(t,222))},S(BE,"RectangleStripOverlapRemover/lambda$1$Type",1788),y(1304,1,Zn,M2e),s.ue=function(t,n){return V$t(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator",1304),y(1307,1,{},C2e),s.Kb=function(t){return c(t,324).a},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$0$Type",1307),y(1308,1,Rn,I2e),s.Mb=function(t){return c(t,323).a},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$1$Type",1308),y(1309,1,Rn,T2e),s.Mb=function(t){return c(t,323).a},S(_f,"PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$2$Type",1309),y(1302,1,Zn,j2e),s.ue=function(t,n){return MFt(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator",1302),y(1305,1,{},E2e),s.Kb=function(t){return c(t,324).a},S(_f,"PolyominoCompactor/MinNumOfExtensionDirectionsComparator/lambda$0$Type",1305),y(767,1,Zn,CJ),s.ue=function(t,n){return ITt(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinNumOfExtensionsComparator",767),y(1300,1,Zn,A2e),s.ue=function(t,n){return LIt(c(t,321),c(n,321))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinPerimeterComparator",1300),y(1301,1,Zn,O2e),s.ue=function(t,n){return h8t(c(t,321),c(n,321))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/MinPerimeterComparatorWithShape",1301),y(1303,1,Zn,D2e),s.ue=function(t,n){return WFt(c(t,167),c(n,167))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_f,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator",1303),y(1306,1,{},k2e),s.Kb=function(t){return c(t,324).a},S(_f,"PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator/lambda$0$Type",1306),y(777,1,{},OZ),s.Ce=function(t,n){return BPt(this,c(t,46),c(n,167))},S(_f,"SuccessorCombination",777),y(644,1,{},dN),s.Ce=function(t,n){var i;return TRt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorJitter",644),y(643,1,{},gN),s.Ce=function(t,n){var i;return pNt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorLineByLine",643),y(568,1,{},jA),s.Ce=function(t,n){var i;return jxt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorManhattan",568),y(1356,1,{},R2e),s.Ce=function(t,n){var i;return $Lt((i=c(t,46),c(n,167),i))},S(_f,"SuccessorMaxNormWindingInMathPosSense",1356),y(400,1,{},X3),s.Ce=function(t,n){return vne(this,t,n)},s.c=!1,s.d=!1,s.e=!1,s.f=!1,S(_f,"SuccessorQuadrantsGeneric",400),y(1357,1,{},x2e),s.Kb=function(t){return c(t,324).a},S(_f,"SuccessorQuadrantsGeneric/lambda$0$Type",1357),y(323,22,{3:1,35:1,22:1,323:1},E9),s.a=!1;var VT,GT,UT,WT,rit=hn(_D,oae,323,bn,GPt,O_t),oit;y(1298,1,{}),s.Ib=function(){var t,n,i,r,o,u;for(i=" ",t=Ce(0),o=0;o=0?"b"+t+"["+m$(this.a)+"]":"b["+m$(this.a)+"]"):"b_"+Xb(this)},S(ET,"FBendpoint",559),y(282,134,{3:1,282:1,94:1,134:1},dke),s.Ib=function(){return m$(this)},S(ET,"FEdge",282),y(231,134,{3:1,231:1,94:1,134:1},uO);var Pzt=S(ET,"FGraph",231);y(447,357,{3:1,447:1,357:1,94:1,134:1},pFe),s.Ib=function(){return this.b==null||this.b.length==0?"l["+m$(this.a)+"]":"l_"+this.b},S(ET,"FLabel",447),y(144,357,{3:1,144:1,357:1,94:1,134:1},Cxe),s.Ib=function(){return Xne(this)},s.b=0,S(ET,"FNode",144),y(2003,1,{}),s.bf=function(t){sue(this,t)},s.cf=function(){Yze(this)},s.d=0,S(bae,"AbstractForceModel",2003),y(631,2003,{631:1},oqe),s.af=function(t,n){var i,r,o,u,a;return VGe(this.f,t,n),o=hr(Wo(n.d),t.d),a=g.Math.sqrt(o.a*o.a+o.b*o.b),r=g.Math.max(0,a-j5(t.e)/2-j5(n.e)/2),i=xqe(this.e,t,n),i>0?u=-DSt(r,this.c)*i:u=P3t(r,this.b)*c(B(t,(dl(),r4)),19).a,lf(o,u/a),o},s.bf=function(t){sue(this,t),this.a=c(B(t,(dl(),$k)),19).a,this.c=ge(Te(B(t,Kk))),this.b=ge(Te(B(t,DG)))},s.df=function(t){return t0&&(u-=Lvt(r,this.a)*i),lf(o,u*this.b/a),o},s.bf=function(t){var n,i,r,o,u,a,l;for(sue(this,t),this.b=ge(Te(B(t,(dl(),kG)))),this.c=this.b/c(B(t,$k),19).a,r=t.e.c.length,u=0,o=0,l=new q(t.e);l.a0},s.a=0,s.b=0,s.c=0,S(bae,"FruchtermanReingoldModel",632),y(849,1,ca,$Me),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,PD),""),"Force Model"),"Determines the model for force calculation."),wde),(yd(),Ai)),mde),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,pae),""),"Iterations"),"The number of iterations on the force model."),Ce(300)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,wae),""),"Repulsive Power"),"Determines how many bend points are added to the edge; such bend points are regarded as repelling particles in the force model"),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,vz),""),"FR Temperature"),"The temperature is used as a scaling factor for particle displacements."),Ef),To),mr),nt(Tt)))),pr(t,vz,PD,Mit),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,yz),""),"Eades Repulsion"),"Factor for repulsive forces in Eades' model."),5),To),mr),nt(Tt)))),pr(t,yz,PD,Eit),GXe((new KMe,t))};var vit,yit,wde,_it,Eit,Sit,Pit,Mit;S(x6,"ForceMetaDataProvider",849),y(424,22,{3:1,35:1,22:1,424:1},xZ);var OG,Bk,mde=hn(x6,"ForceModelStrategy",424,bn,m6t,R_t),Cit;y(988,1,ca,KMe),s.Qe=function(t){GXe(t)};var Iit,Tit,vde,$k,yde,jit,Ait,Oit,_de,Dit,Ede,Sde,kit,r4,Rit,DG,Pde,xit,Lit,Kk,kG;S(x6,"ForceOptions",988),y(989,1,{},Y2e),s.$e=function(){var t;return t=new NQ,t},s._e=function(t){},S(x6,"ForceOptions/ForceFactory",989);var JT,fP,K2,qk;y(850,1,ca,qMe),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,vae),""),"Fixed Position"),"Prevent that the node is moved by the layout algorithm."),(Pt(),!1)),(yd(),Dr)),Qi),nt((fl(),ar))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,yae),""),"Desired Edge Length"),"Either specified for parent nodes or for individual edges, where the latter takes higher precedence."),100),To),mr),ui(Tt,U(G(Dd,1),_e,175,0,[kf]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_ae),""),"Layout Dimension"),"Dimensions that are permitted to be altered during layout."),Mde),Ai),Dde),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Eae),""),"Stress Epsilon"),"Termination criterion for the iterative process."),Ef),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Sae),""),"Iteration Limit"),"Maximum number of performed iterations. Takes higher precedence than 'epsilon'."),Ce(Fn)),oc),$r),nt(Tt)))),AXe((new HMe,t))};var Nit,Fit,Mde,Bit,$it,Kit;S(x6,"StressMetaDataProvider",850),y(992,1,ca,HMe),s.Qe=function(t){AXe(t)};var Hk,Cde,Ide,Tde,jde,Ade,qit,Hit,zit,Vit,Ode,Git;S(x6,"StressOptions",992),y(993,1,{},X2e),s.$e=function(){var t;return t=new gke,t},s._e=function(t){},S(x6,"StressOptions/StressFactory",993),y(1128,209,rb,gke),s.Ze=function(t,n){var i,r,o,u,a;for(Wt(n,vQe,1),Be(Fe(Ke(t,(NI(),jde))))?Be(Fe(Ke(t,Ode)))||V8((i=new zM((Ap(),new Ip(t))),i)):JUe(new NQ,t,yc(n,1)),o=Iqe(t),r=$Ye(this.a,o),a=r.Kc();a.Ob();)u=c(a.Pb(),231),!(u.e.c.length<=1)&&(H$t(this.b,u),_xt(this.b),Zc(u.d,new J2e));o=ZXe(r),XXe(o),qt(n)},S(ID,"StressLayoutProvider",1128),y(1129,1,Rt,J2e),s.td=function(t){gue(c(t,447))},S(ID,"StressLayoutProvider/lambda$0$Type",1129),y(990,1,{},SAe),s.c=0,s.e=0,s.g=0,S(ID,"StressMajorization",990),y(379,22,{3:1,35:1,22:1,379:1},uF);var RG,xG,LG,Dde=hn(ID,"StressMajorization/Dimension",379,bn,G6t,x_t),Uit;y(991,1,Zn,BIe),s.ue=function(t,n){return f_t(this.a,c(t,144),c(n,144))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(ID,"StressMajorization/lambda$0$Type",991),y(1229,1,{},jNe),S(x2,"ElkLayered",1229),y(1230,1,Rt,Q2e),s.td=function(t){ERt(c(t,37))},S(x2,"ElkLayered/lambda$0$Type",1230),y(1231,1,Rt,$Ie),s.td=function(t){h_t(this.a,c(t,37))},S(x2,"ElkLayered/lambda$1$Type",1231),y(1263,1,{},tDe);var Wit,Yit,Xit;S(x2,"GraphConfigurator",1263),y(759,1,Rt,vQ),s.td=function(t){iGe(this.a,c(t,10))},S(x2,"GraphConfigurator/lambda$0$Type",759),y(760,1,{},TJ),s.Kb=function(t){return fce(),new ht(null,new bt(c(t,29).a,16))},S(x2,"GraphConfigurator/lambda$1$Type",760),y(761,1,Rt,yQ),s.td=function(t){iGe(this.a,c(t,10))},S(x2,"GraphConfigurator/lambda$2$Type",761),y(1127,209,rb,CAe),s.Ze=function(t,n){var i;i=l$t(new DAe,t),le(Ke(t,(Oe(),Fw)))===le((Rh(),kd))?qAt(this.a,i,n):FRt(this.a,i,n),VXe(new VMe,i)},S(x2,"LayeredLayoutProvider",1127),y(356,22,{3:1,35:1,22:1,356:1},oC);var Af,B1,Hc,Pc,Io,kde=hn(x2,"LayeredPhases",356,bn,jMt,L_t),Jit;y(1651,1,{},gKe),s.i=0;var Qit;S(MT,"ComponentsToCGraphTransformer",1651);var Zit;y(1652,1,{},Z2e),s.ef=function(t,n){return g.Math.min(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},s.ff=function(t,n){return g.Math.min(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},S(MT,"ComponentsToCGraphTransformer/1",1652),y(81,1,{81:1}),s.i=0,s.k=!0,s.o=$i;var NG=S(F6,"CNode",81);y(460,81,{460:1,81:1},Lee,Noe),s.Ib=function(){return""},S(MT,"ComponentsToCGraphTransformer/CRectNode",460),y(1623,1,{},e3e);var FG,BG;S(MT,"OneDimensionalComponentsCompaction",1623),y(1624,1,{},t3e),s.Kb=function(t){return N6t(c(t,46))},s.Fb=function(t){return this===t},S(MT,"OneDimensionalComponentsCompaction/lambda$0$Type",1624),y(1625,1,{},n3e),s.Kb=function(t){return XAt(c(t,46))},s.Fb=function(t){return this===t},S(MT,"OneDimensionalComponentsCompaction/lambda$1$Type",1625),y(1654,1,{},Mxe),S(F6,"CGraph",1654),y(189,1,{189:1},FK),s.b=0,s.c=0,s.e=0,s.g=!0,s.i=$i,S(F6,"CGroup",189),y(1653,1,{},c3e),s.ef=function(t,n){return g.Math.max(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},s.ff=function(t,n){return g.Math.max(t.a!=null?ge(t.a):t.c.i,n.a!=null?ge(n.a):n.c.i)},S(F6,UJe,1653),y(1655,1,{},rUe),s.d=!1;var ert,$G=S(F6,XJe,1655);y(1656,1,{},s3e),s.Kb=function(t){return EZ(),Pt(),c(c(t,46).a,81).d.e!=0},s.Fb=function(t){return this===t},S(F6,JJe,1656),y(823,1,{},Gte),s.a=!1,s.b=!1,s.c=!1,s.d=!1,S(F6,QJe,823),y(1825,1,{},HRe),S(TD,ZJe,1825);var QT=pi(cb,VJe);y(1826,1,{369:1},yLe),s.Ke=function(t){ONt(this,c(t,466))},S(TD,eQe,1826),y(1827,1,Zn,u3e),s.ue=function(t,n){return O5t(c(t,81),c(n,81))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(TD,tQe,1827),y(466,1,{466:1},NZ),s.a=!1,S(TD,nQe,466),y(1828,1,Zn,a3e),s.ue=function(t,n){return HOt(c(t,466),c(n,466))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(TD,iQe,1828),y(140,1,{140:1},l_,Kte),s.Fb=function(t){var n;return t==null||Mzt!=Fs(t)?!1:(n=c(t,140),wc(this.c,n.c)&&wc(this.d,n.d))},s.Hb=function(){return ZO(U(G(xt,1),xe,1,5,[this.c,this.d]))},s.Ib=function(){return"("+this.c+zr+this.d+(this.a?"cx":"")+this.b+")"},s.a=!0,s.c=0,s.d=0;var Mzt=S(cb,"Point",140);y(405,22,{3:1,35:1,22:1,405:1},P9);var V0,Aw,Pv,Ow,trt=hn(cb,"Point/Quadrant",405,bn,UPt,N_t),nrt;y(1642,1,{},IAe),s.b=null,s.c=null,s.d=null,s.e=null,s.f=null;var irt,rrt,ort,crt,srt;S(cb,"RectilinearConvexHull",1642),y(574,1,{369:1},v7),s.Ke=function(t){ACt(this,c(t,140))},s.b=0;var Rde;S(cb,"RectilinearConvexHull/MaximalElementsEventHandler",574),y(1644,1,Zn,r3e),s.ue=function(t,n){return y5t(Te(t),Te(n))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/MaximalElementsEventHandler/lambda$0$Type",1644),y(1643,1,{369:1},N$e),s.Ke=function(t){zLt(this,c(t,140))},s.a=0,s.b=null,s.c=null,s.d=null,s.e=null,S(cb,"RectilinearConvexHull/RectangleEventHandler",1643),y(1645,1,Zn,o3e),s.ue=function(t,n){return SPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$0$Type",1645),y(1646,1,Zn,i3e),s.ue=function(t,n){return PPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$1$Type",1646),y(1647,1,Zn,l3e),s.ue=function(t,n){return CPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$2$Type",1647),y(1648,1,Zn,f3e),s.ue=function(t,n){return MPt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$3$Type",1648),y(1649,1,Zn,h3e),s.ue=function(t,n){return TDt(c(t,140),c(n,140))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(cb,"RectilinearConvexHull/lambda$4$Type",1649),y(1650,1,{},JLe),S(cb,"Scanline",1650),y(2005,1,{}),S(Sf,"AbstractGraphPlacer",2005),y(325,1,{325:1},HDe),s.mf=function(t){return this.nf(t)?(it(this.b,c(B(t,(ye(),kw)),21),t),!0):!1},s.nf=function(t){var n,i,r,o;for(n=c(B(t,(ye(),kw)),21),o=c(Vn(ei,n),21),r=o.Kc();r.Ob();)if(i=c(r.Pb(),21),!c(Vn(this.b,i),15).dc())return!1;return!0};var ei;S(Sf,"ComponentGroup",325),y(765,2005,{},KQ),s.of=function(t){var n,i;for(i=new q(this.a);i.aL&&(Pe=0,Ae+=D+o,D=0),Y=a.c,v6(a,Pe+Y.a,Ae+Y.b),ol(Y),i=g.Math.max(i,Pe+ne.a),D=g.Math.max(D,ne.b),Pe+=ne.a+o;if(n.f.a=i,n.f.b=Ae+D,Be(Fe(B(u,jR)))){for(r=new pN,Rue(r,t,o),A=t.Kc();A.Ob();)v=c(A.Pb(),37),Wn(ol(v.c),r.e);Wn(ol(n.f),r.a)}Rie(n,t)},S(Sf,"SimpleRowGraphPlacer",1291),y(1292,1,Zn,b3e),s.ue=function(t,n){return CTt(c(t,37),c(n,37))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Sf,"SimpleRowGraphPlacer/1",1292);var art;y(1262,1,yf,p3e),s.Lb=function(t){var n;return n=c(B(c(t,243).b,(Oe(),yo)),74),!!n&&n.b!=0},s.Fb=function(t){return this===t},s.Mb=function(t){var n;return n=c(B(c(t,243).b,(Oe(),yo)),74),!!n&&n.b!=0},S(jD,"CompoundGraphPostprocessor/1",1262),y(1261,1,Ti,kAe),s.pf=function(t,n){Dze(this,c(t,37),n)},S(jD,"CompoundGraphPreprocessor",1261),y(441,1,{441:1},vHe),s.c=!1,S(jD,"CompoundGraphPreprocessor/ExternalPort",441),y(243,1,{243:1},c8),s.Ib=function(){return UF(this.c)+":"+eUe(this.b)},S(jD,"CrossHierarchyEdge",243),y(763,1,Zn,_Q),s.ue=function(t,n){return bOt(this,c(t,243),c(n,243))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(jD,"CrossHierarchyEdgeComparator",763),y(299,134,{3:1,299:1,94:1,134:1}),s.p=0,S(Lc,"LGraphElement",299),y(17,299,{3:1,17:1,299:1,94:1,134:1},c0),s.Ib=function(){return eUe(this)};var qG=S(Lc,"LEdge",17);y(37,299,{3:1,20:1,37:1,299:1,94:1,134:1},nre),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return new q(this.b)},s.Ib=function(){return this.b.c.length==0?"G-unlayered"+C1(this.a):this.a.c.length==0?"G-layered"+C1(this.b):"G[layerless"+C1(this.a)+", layers"+C1(this.b)+"]"};var lrt=S(Lc,"LGraph",37),frt;y(657,1,{}),s.qf=function(){return this.e.n},s.We=function(t){return B(this.e,t)},s.rf=function(){return this.e.o},s.sf=function(){return this.e.p},s.Xe=function(t){return nr(this.e,t)},s.tf=function(t){this.e.n.a=t.a,this.e.n.b=t.b},s.uf=function(t){this.e.o.a=t.a,this.e.o.b=t.b},s.vf=function(t){this.e.p=t},S(Lc,"LGraphAdapters/AbstractLShapeAdapter",657),y(577,1,{839:1},$A),s.wf=function(){var t,n;if(!this.b)for(this.b=Ff(this.a.b.c.length),n=new q(this.a.b);n.a0&&oHe((fn(n-1,t.length),t.charCodeAt(n-1)),MQe);)--n;if(u> ",t),j7(i)),wn(nc((t.a+="[",t),i.i),"]")),t.a},s.c=!0,s.d=!1;var Bde,$de,Kde,qde,Hde,zde,drt=S(Lc,"LPort",11);y(397,1,Yf,J3),s.Jc=function(t){Mr(this,t)},s.Kc=function(){var t;return t=new q(this.a.e),new KIe(t)},S(Lc,"LPort/1",397),y(1290,1,dr,KIe),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(K(this.a),17).c},s.Ob=function(){return Fo(this.a)},s.Qb=function(){I5(this.a)},S(Lc,"LPort/1/1",1290),y(359,1,Yf,Oy),s.Jc=function(t){Mr(this,t)},s.Kc=function(){var t;return t=new q(this.a.g),new EQ(t)},S(Lc,"LPort/2",359),y(762,1,dr,EQ),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(K(this.a),17).d},s.Ob=function(){return Fo(this.a)},s.Qb=function(){I5(this.a)},S(Lc,"LPort/2/1",762),y(1283,1,Yf,yOe),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return new Rl(this)},S(Lc,"LPort/CombineIter",1283),y(201,1,dr,Rl),s.Nb=function(t){Sr(this,t)},s.Qb=function(){z9e()},s.Ob=function(){return p5(this)},s.Pb=function(){return Fo(this.a)?K(this.a):K(this.b)},S(Lc,"LPort/CombineIter/1",201),y(1285,1,yf,m3e),s.Lb=function(t){return txe(t)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).e.c.length!=0},S(Lc,"LPort/lambda$0$Type",1285),y(1284,1,yf,v3e),s.Lb=function(t){return nxe(t)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).g.c.length!=0},S(Lc,"LPort/lambda$1$Type",1284),y(1286,1,yf,y3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),_t)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),_t)},S(Lc,"LPort/lambda$2$Type",1286),y(1287,1,yf,_3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),jt)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),jt)},S(Lc,"LPort/lambda$3$Type",1287),y(1288,1,yf,E3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),Yt)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),Yt)},S(Lc,"LPort/lambda$4$Type",1288),y(1289,1,yf,S3e),s.Lb=function(t){return ms(),c(t,11).j==(Ie(),Mt)},s.Fb=function(t){return this===t},s.Mb=function(t){return ms(),c(t,11).j==(Ie(),Mt)},S(Lc,"LPort/lambda$5$Type",1289),y(29,299,{3:1,20:1,299:1,29:1,94:1,134:1},ta),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return new q(this.a)},s.Ib=function(){return"L_"+Do(this.b.b,this,0)+C1(this.a)},S(Lc,"Layer",29),y(1342,1,{},DAe),S(Sd,jQe,1342),y(1346,1,{},P3e),s.Kb=function(t){return Co(c(t,82))},S(Sd,"ElkGraphImporter/0methodref$connectableShapeToNode$Type",1346),y(1349,1,{},M3e),s.Kb=function(t){return Co(c(t,82))},S(Sd,"ElkGraphImporter/1methodref$connectableShapeToNode$Type",1349),y(1343,1,Rt,qIe),s.td=function(t){gUe(this.a,c(t,118))},S(Sd,AQe,1343),y(1344,1,Rt,HIe),s.td=function(t){gUe(this.a,c(t,118))},S(Sd,OQe,1344),y(1345,1,{},C3e),s.Kb=function(t){return new ht(null,new bt(b5t(c(t,79)),16))},S(Sd,DQe,1345),y(1347,1,Rn,zIe),s.Mb=function(t){return p2t(this.a,c(t,33))},S(Sd,kQe,1347),y(1348,1,{},I3e),s.Kb=function(t){return new ht(null,new bt(p5t(c(t,79)),16))},S(Sd,"ElkGraphImporter/lambda$5$Type",1348),y(1350,1,Rn,VIe),s.Mb=function(t){return w2t(this.a,c(t,33))},S(Sd,"ElkGraphImporter/lambda$7$Type",1350),y(1351,1,Rn,T3e),s.Mb=function(t){return k5t(c(t,79))},S(Sd,"ElkGraphImporter/lambda$8$Type",1351),y(1278,1,{},VMe);var grt;S(Sd,"ElkGraphLayoutTransferrer",1278),y(1279,1,Rn,GIe),s.Mb=function(t){return o_t(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$0$Type",1279),y(1280,1,Rt,UIe),s.td=function(t){tC(),Ee(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$1$Type",1280),y(1281,1,Rn,WIe),s.Mb=function(t){return z3t(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$2$Type",1281),y(1282,1,Rt,YIe),s.td=function(t){tC(),Ee(this.a,c(t,17))},S(Sd,"ElkGraphLayoutTransferrer/lambda$3$Type",1282),y(1485,1,Ti,j3e),s.pf=function(t,n){GIt(c(t,37),n)},S(Ct,"CommentNodeMarginCalculator",1485),y(1486,1,{},A3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"CommentNodeMarginCalculator/lambda$0$Type",1486),y(1487,1,Rt,O3e),s.td=function(t){C$t(c(t,10))},S(Ct,"CommentNodeMarginCalculator/lambda$1$Type",1487),y(1488,1,Ti,D3e),s.pf=function(t,n){BNt(c(t,37),n)},S(Ct,"CommentPostprocessor",1488),y(1489,1,Ti,k3e),s.pf=function(t,n){Gqt(c(t,37),n)},S(Ct,"CommentPreprocessor",1489),y(1490,1,Ti,R3e),s.pf=function(t,n){uLt(c(t,37),n)},S(Ct,"ConstraintsPostprocessor",1490),y(1491,1,Ti,x3e),s.pf=function(t,n){bTt(c(t,37),n)},S(Ct,"EdgeAndLayerConstraintEdgeReverser",1491),y(1492,1,Ti,L3e),s.pf=function(t,n){i9t(c(t,37),n)},S(Ct,"EndLabelPostprocessor",1492),y(1493,1,{},N3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"EndLabelPostprocessor/lambda$0$Type",1493),y(1494,1,Rn,F3e),s.Mb=function(t){return J5t(c(t,10))},S(Ct,"EndLabelPostprocessor/lambda$1$Type",1494),y(1495,1,Rt,B3e),s.td=function(t){zOt(c(t,10))},S(Ct,"EndLabelPostprocessor/lambda$2$Type",1495),y(1496,1,Ti,$3e),s.pf=function(t,n){kkt(c(t,37),n)},S(Ct,"EndLabelPreprocessor",1496),y(1497,1,{},K3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"EndLabelPreprocessor/lambda$0$Type",1497),y(1498,1,Rt,Gke),s.td=function(t){kyt(this.a,this.b,this.c,c(t,10))},s.a=0,s.b=0,s.c=!1,S(Ct,"EndLabelPreprocessor/lambda$1$Type",1498),y(1499,1,Rn,q3e),s.Mb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),O4))},S(Ct,"EndLabelPreprocessor/lambda$2$Type",1499),y(1500,1,Rt,XIe),s.td=function(t){Cn(this.a,c(t,70))},S(Ct,"EndLabelPreprocessor/lambda$3$Type",1500),y(1501,1,Rn,H3e),s.Mb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),Ww))},S(Ct,"EndLabelPreprocessor/lambda$4$Type",1501),y(1502,1,Rt,JIe),s.td=function(t){Cn(this.a,c(t,70))},S(Ct,"EndLabelPreprocessor/lambda$5$Type",1502),y(1551,1,Ti,zMe),s.pf=function(t,n){fAt(c(t,37),n)};var brt;S(Ct,"EndLabelSorter",1551),y(1552,1,Zn,z3e),s.ue=function(t,n){return K9t(c(t,456),c(n,456))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"EndLabelSorter/1",1552),y(456,1,{456:1},hLe),S(Ct,"EndLabelSorter/LabelGroup",456),y(1553,1,{},V3e),s.Kb=function(t){return nC(),new ht(null,new bt(c(t,29).a,16))},S(Ct,"EndLabelSorter/lambda$0$Type",1553),y(1554,1,Rn,G3e),s.Mb=function(t){return nC(),c(t,10).k==(Dt(),Ui)},S(Ct,"EndLabelSorter/lambda$1$Type",1554),y(1555,1,Rt,U3e),s.td=function(t){zDt(c(t,10))},S(Ct,"EndLabelSorter/lambda$2$Type",1555),y(1556,1,Rn,W3e),s.Mb=function(t){return nC(),le(B(c(t,70),(Oe(),Df)))===le((xl(),Ww))},S(Ct,"EndLabelSorter/lambda$3$Type",1556),y(1557,1,Rn,Y3e),s.Mb=function(t){return nC(),le(B(c(t,70),(Oe(),Df)))===le((xl(),O4))},S(Ct,"EndLabelSorter/lambda$4$Type",1557),y(1503,1,Ti,X3e),s.pf=function(t,n){N$t(this,c(t,37))},s.b=0,s.c=0,S(Ct,"FinalSplineBendpointsCalculator",1503),y(1504,1,{},J3e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"FinalSplineBendpointsCalculator/lambda$0$Type",1504),y(1505,1,{},Q3e),s.Kb=function(t){return new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ct,"FinalSplineBendpointsCalculator/lambda$1$Type",1505),y(1506,1,Rn,Z3e),s.Mb=function(t){return!Kr(c(t,17))},S(Ct,"FinalSplineBendpointsCalculator/lambda$2$Type",1506),y(1507,1,Rn,e_e),s.Mb=function(t){return nr(c(t,17),(ye(),bb))},S(Ct,"FinalSplineBendpointsCalculator/lambda$3$Type",1507),y(1508,1,Rt,QIe),s.td=function(t){XFt(this.a,c(t,128))},S(Ct,"FinalSplineBendpointsCalculator/lambda$4$Type",1508),y(1509,1,Rt,t_e),s.td=function(t){Mq(c(t,17).a)},S(Ct,"FinalSplineBendpointsCalculator/lambda$5$Type",1509),y(792,1,Ti,SQ),s.pf=function(t,n){AKt(this,c(t,37),n)},S(Ct,"GraphTransformer",792),y(511,22,{3:1,35:1,22:1,511:1},LZ);var zG,ZT,prt=hn(Ct,"GraphTransformer/Mode",511,bn,v6t,JEt),wrt;y(1510,1,Ti,n_e),s.pf=function(t,n){cNt(c(t,37),n)},S(Ct,"HierarchicalNodeResizingProcessor",1510),y(1511,1,Ti,i_e),s.pf=function(t,n){KIt(c(t,37),n)},S(Ct,"HierarchicalPortConstraintProcessor",1511),y(1512,1,Zn,r_e),s.ue=function(t,n){return Q9t(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"HierarchicalPortConstraintProcessor/NodeComparator",1512),y(1513,1,Ti,o_e),s.pf=function(t,n){s$t(c(t,37),n)},S(Ct,"HierarchicalPortDummySizeProcessor",1513),y(1514,1,Ti,c_e),s.pf=function(t,n){rFt(this,c(t,37),n)},s.a=0,S(Ct,"HierarchicalPortOrthogonalEdgeRouter",1514),y(1515,1,Zn,s_e),s.ue=function(t,n){return a3t(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"HierarchicalPortOrthogonalEdgeRouter/1",1515),y(1516,1,Zn,u_e),s.ue=function(t,n){return SCt(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"HierarchicalPortOrthogonalEdgeRouter/2",1516),y(1517,1,Ti,a_e),s.pf=function(t,n){jDt(c(t,37),n)},S(Ct,"HierarchicalPortPositionProcessor",1517),y(1518,1,Ti,GMe),s.pf=function(t,n){PHt(this,c(t,37))},s.a=0,s.c=0;var zk,Vk;S(Ct,"HighDegreeNodeLayeringProcessor",1518),y(571,1,{571:1},l_e),s.b=-1,s.d=-1,S(Ct,"HighDegreeNodeLayeringProcessor/HighDegreeNodeInformation",571),y(1519,1,{},f_e),s.Kb=function(t){return TC(),ko(c(t,10))},s.Fb=function(t){return this===t},S(Ct,"HighDegreeNodeLayeringProcessor/lambda$0$Type",1519),y(1520,1,{},h_e),s.Kb=function(t){return TC(),Vi(c(t,10))},s.Fb=function(t){return this===t},S(Ct,"HighDegreeNodeLayeringProcessor/lambda$1$Type",1520),y(1526,1,Ti,d_e),s.pf=function(t,n){xBt(this,c(t,37),n)},S(Ct,"HyperedgeDummyMerger",1526),y(793,1,{},Cte),s.a=!1,s.b=!1,s.c=!1,S(Ct,"HyperedgeDummyMerger/MergeState",793),y(1527,1,{},g_e),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"HyperedgeDummyMerger/lambda$0$Type",1527),y(1528,1,{},b_e),s.Kb=function(t){return new ht(null,new bt(c(t,10).j,16))},S(Ct,"HyperedgeDummyMerger/lambda$1$Type",1528),y(1529,1,Rt,p_e),s.td=function(t){c(t,11).p=-1},S(Ct,"HyperedgeDummyMerger/lambda$2$Type",1529),y(1530,1,Ti,w_e),s.pf=function(t,n){kBt(c(t,37),n)},S(Ct,"HypernodesProcessor",1530),y(1531,1,Ti,m_e),s.pf=function(t,n){RBt(c(t,37),n)},S(Ct,"InLayerConstraintProcessor",1531),y(1532,1,Ti,v_e),s.pf=function(t,n){lTt(c(t,37),n)},S(Ct,"InnermostNodeMarginCalculator",1532),y(1533,1,Ti,y_e),s.pf=function(t,n){Kqt(this,c(t,37))},s.a=$i,s.b=$i,s.c=Ii,s.d=Ii;var Czt=S(Ct,"InteractiveExternalPortPositioner",1533);y(1534,1,{},__e),s.Kb=function(t){return c(t,17).d.i},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$0$Type",1534),y(1535,1,{},ZIe),s.Kb=function(t){return h3t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$1$Type",1535),y(1536,1,{},E_e),s.Kb=function(t){return c(t,17).c.i},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$2$Type",1536),y(1537,1,{},eTe),s.Kb=function(t){return d3t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$3$Type",1537),y(1538,1,{},tTe),s.Kb=function(t){return n_t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$4$Type",1538),y(1539,1,{},nTe),s.Kb=function(t){return i_t(this.a,Te(t))},s.Fb=function(t){return this===t},S(Ct,"InteractiveExternalPortPositioner/lambda$5$Type",1539),y(77,22,{3:1,35:1,22:1,77:1,234:1},Li),s.Kf=function(){switch(this.g){case 15:return new H4e;case 22:return new z4e;case 47:return new U4e;case 28:case 35:return new k_e;case 32:return new j3e;case 42:return new D3e;case 1:return new k3e;case 41:return new R3e;case 56:return new SQ((G_(),ZT));case 0:return new SQ((G_(),zG));case 2:return new x3e;case 54:return new L3e;case 33:return new $3e;case 51:return new X3e;case 55:return new n_e;case 13:return new i_e;case 38:return new o_e;case 44:return new c_e;case 40:return new a_e;case 9:return new GMe;case 49:return new DDe;case 37:return new d_e;case 43:return new w_e;case 27:return new m_e;case 30:return new v_e;case 3:return new y_e;case 18:return new P_e;case 29:return new M_e;case 5:return new UMe;case 50:return new S_e;case 34:return new WMe;case 36:return new R_e;case 52:return new zMe;case 11:return new L_e;case 7:return new XMe;case 39:return new N_e;case 45:return new F_e;case 16:return new B_e;case 10:return new $_e;case 48:return new q_e;case 21:return new H_e;case 23:return new VN((w0(),kP));case 8:return new V_e;case 12:return new U_e;case 4:return new W_e;case 19:return new eCe;case 17:return new rEe;case 53:return new oEe;case 6:return new wEe;case 25:return new LAe;case 46:return new lEe;case 31:return new pke;case 14:return new MEe;case 26:return new X4e;case 20:return new AEe;case 24:return new VN((w0(),YR));default:throw V(new St(Mz+(this.f!=null?this.f:""+this.g)))}};var Vde,Gde,Ude,Wde,Yde,Xde,Jde,Qde,Zde,e1e,hP,Gk,Uk,t1e,n1e,i1e,r1e,o1e,c1e,s1e,dP,u1e,a1e,l1e,f1e,h1e,VG,Wk,Yk,d1e,Xk,Jk,Qk,o4,c4,s4,g1e,Zk,eR,b1e,tR,nR,p1e,w1e,m1e,v1e,iR,GG,ej,rR,oR,cR,sR,y1e,_1e,E1e,S1e,Izt=hn(Ct,Mae,77,bn,cWe,XEt),mrt;y(1540,1,Ti,P_e),s.pf=function(t,n){Hqt(c(t,37),n)},S(Ct,"InvertedPortProcessor",1540),y(1541,1,Ti,M_e),s.pf=function(t,n){HFt(c(t,37),n)},S(Ct,"LabelAndNodeSizeProcessor",1541),y(1542,1,Rn,C_e),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"LabelAndNodeSizeProcessor/lambda$0$Type",1542),y(1543,1,Rn,I_e),s.Mb=function(t){return c(t,10).k==(Dt(),Bi)},S(Ct,"LabelAndNodeSizeProcessor/lambda$1$Type",1543),y(1544,1,Rt,Uke),s.td=function(t){Ryt(this.b,this.a,this.c,c(t,10))},s.a=!1,s.c=!1,S(Ct,"LabelAndNodeSizeProcessor/lambda$2$Type",1544),y(1545,1,Ti,UMe),s.pf=function(t,n){dqt(c(t,37),n)};var vrt;S(Ct,"LabelDummyInserter",1545),y(1546,1,yf,T_e),s.Lb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),A4))},s.Fb=function(t){return this===t},s.Mb=function(t){return le(B(c(t,70),(Oe(),Df)))===le((xl(),A4))},S(Ct,"LabelDummyInserter/1",1546),y(1547,1,Ti,S_e),s.pf=function(t,n){bKt(c(t,37),n)},S(Ct,"LabelDummyRemover",1547),y(1548,1,Rn,j_e),s.Mb=function(t){return Be(Fe(B(c(t,70),(Oe(),RU))))},S(Ct,"LabelDummyRemover/lambda$0$Type",1548),y(1359,1,Ti,WMe),s.pf=function(t,n){zKt(this,c(t,37),n)},s.a=null;var UG;S(Ct,"LabelDummySwitcher",1359),y(286,1,{286:1},rYe),s.c=0,s.d=null,s.f=0,S(Ct,"LabelDummySwitcher/LabelDummyInfo",286),y(1360,1,{},A_e),s.Kb=function(t){return h2(),new ht(null,new bt(c(t,29).a,16))},S(Ct,"LabelDummySwitcher/lambda$0$Type",1360),y(1361,1,Rn,O_e),s.Mb=function(t){return h2(),c(t,10).k==(Dt(),cu)},S(Ct,"LabelDummySwitcher/lambda$1$Type",1361),y(1362,1,{},oTe),s.Kb=function(t){return V3t(this.a,c(t,10))},S(Ct,"LabelDummySwitcher/lambda$2$Type",1362),y(1363,1,Rt,cTe),s.td=function(t){zSt(this.a,c(t,286))},S(Ct,"LabelDummySwitcher/lambda$3$Type",1363),y(1364,1,Zn,D_e),s.ue=function(t,n){return mSt(c(t,286),c(n,286))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"LabelDummySwitcher/lambda$4$Type",1364),y(791,1,Ti,k_e),s.pf=function(t,n){tCt(c(t,37),n)},S(Ct,"LabelManagementProcessor",791),y(1549,1,Ti,R_e),s.pf=function(t,n){CNt(c(t,37),n)},S(Ct,"LabelSideSelector",1549),y(1550,1,Rn,x_e),s.Mb=function(t){return Be(Fe(B(c(t,70),(Oe(),RU))))},S(Ct,"LabelSideSelector/lambda$0$Type",1550),y(1558,1,Ti,L_e),s.pf=function(t,n){u$t(c(t,37),n)},S(Ct,"LayerConstraintPostprocessor",1558),y(1559,1,Ti,XMe),s.pf=function(t,n){Ext(c(t,37),n)};var P1e;S(Ct,"LayerConstraintPreprocessor",1559),y(360,22,{3:1,35:1,22:1,360:1},M9);var tj,uR,aR,WG,yrt=hn(Ct,"LayerConstraintPreprocessor/HiddenNodeConnections",360,bn,WPt,K_t),_rt;y(1560,1,Ti,N_e),s.pf=function(t,n){hKt(c(t,37),n)},S(Ct,"LayerSizeAndGraphHeightCalculator",1560),y(1561,1,Ti,F_e),s.pf=function(t,n){bLt(c(t,37),n)},S(Ct,"LongEdgeJoiner",1561),y(1562,1,Ti,B_e),s.pf=function(t,n){U$t(c(t,37),n)},S(Ct,"LongEdgeSplitter",1562),y(1563,1,Ti,$_e),s.pf=function(t,n){UKt(this,c(t,37),n)},s.d=0,s.e=0,s.i=0,s.j=0,s.k=0,s.n=0,S(Ct,"NodePromotion",1563),y(1564,1,{},K_e),s.Kb=function(t){return c(t,46),Pt(),!0},s.Fb=function(t){return this===t},S(Ct,"NodePromotion/lambda$0$Type",1564),y(1565,1,{},iTe),s.Kb=function(t){return f5t(this.a,c(t,46))},s.Fb=function(t){return this===t},s.a=0,S(Ct,"NodePromotion/lambda$1$Type",1565),y(1566,1,{},rTe),s.Kb=function(t){return h5t(this.a,c(t,46))},s.Fb=function(t){return this===t},s.a=0,S(Ct,"NodePromotion/lambda$2$Type",1566),y(1567,1,Ti,q_e),s.pf=function(t,n){wHt(c(t,37),n)},S(Ct,"NorthSouthPortPostprocessor",1567),y(1568,1,Ti,H_e),s.pf=function(t,n){nHt(c(t,37),n)},S(Ct,"NorthSouthPortPreprocessor",1568),y(1569,1,Zn,z_e),s.ue=function(t,n){return OTt(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"NorthSouthPortPreprocessor/lambda$0$Type",1569),y(1570,1,Ti,V_e),s.pf=function(t,n){vBt(c(t,37),n)},S(Ct,"PartitionMidprocessor",1570),y(1571,1,Rn,G_e),s.Mb=function(t){return nr(c(t,10),(Oe(),y4))},S(Ct,"PartitionMidprocessor/lambda$0$Type",1571),y(1572,1,Rt,sTe),s.td=function(t){R5t(this.a,c(t,10))},S(Ct,"PartitionMidprocessor/lambda$1$Type",1572),y(1573,1,Ti,U_e),s.pf=function(t,n){xLt(c(t,37),n)},S(Ct,"PartitionPostprocessor",1573),y(1574,1,Ti,W_e),s.pf=function(t,n){VRt(c(t,37),n)},S(Ct,"PartitionPreprocessor",1574),y(1575,1,Rn,Y_e),s.Mb=function(t){return nr(c(t,10),(Oe(),y4))},S(Ct,"PartitionPreprocessor/lambda$0$Type",1575),y(1576,1,{},X_e),s.Kb=function(t){return new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ct,"PartitionPreprocessor/lambda$1$Type",1576),y(1577,1,Rn,J_e),s.Mb=function(t){return F9t(c(t,17))},S(Ct,"PartitionPreprocessor/lambda$2$Type",1577),y(1578,1,Rt,Q_e),s.td=function(t){KTt(c(t,17))},S(Ct,"PartitionPreprocessor/lambda$3$Type",1578),y(1579,1,Ti,eCe),s.pf=function(t,n){iBt(c(t,37),n)};var M1e,Ert,Srt,Prt,C1e,I1e;S(Ct,"PortListSorter",1579),y(1580,1,{},Z_e),s.Kb=function(t){return iE(),c(t,11).e},S(Ct,"PortListSorter/lambda$0$Type",1580),y(1581,1,{},eEe),s.Kb=function(t){return iE(),c(t,11).g},S(Ct,"PortListSorter/lambda$1$Type",1581),y(1582,1,Zn,tEe),s.ue=function(t,n){return mFe(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"PortListSorter/lambda$2$Type",1582),y(1583,1,Zn,nEe),s.ue=function(t,n){return uOt(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"PortListSorter/lambda$3$Type",1583),y(1584,1,Zn,iEe),s.ue=function(t,n){return IYe(c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"PortListSorter/lambda$4$Type",1584),y(1585,1,Ti,rEe),s.pf=function(t,n){pxt(c(t,37),n)},S(Ct,"PortSideProcessor",1585),y(1586,1,Ti,oEe),s.pf=function(t,n){wFt(c(t,37),n)},S(Ct,"ReversedEdgeRestorer",1586),y(1591,1,Ti,LAe),s.pf=function(t,n){G8t(this,c(t,37),n)},S(Ct,"SelfLoopPortRestorer",1591),y(1592,1,{},cEe),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"SelfLoopPortRestorer/lambda$0$Type",1592),y(1593,1,Rn,sEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SelfLoopPortRestorer/lambda$1$Type",1593),y(1594,1,Rn,uEe),s.Mb=function(t){return nr(c(t,10),(ye(),w4))},S(Ct,"SelfLoopPortRestorer/lambda$2$Type",1594),y(1595,1,{},aEe),s.Kb=function(t){return c(B(c(t,10),(ye(),w4)),403)},S(Ct,"SelfLoopPortRestorer/lambda$3$Type",1595),y(1596,1,Rt,uTe),s.td=function(t){tkt(this.a,c(t,403))},S(Ct,"SelfLoopPortRestorer/lambda$4$Type",1596),y(794,1,Rt,AJ),s.td=function(t){pkt(c(t,101))},S(Ct,"SelfLoopPortRestorer/lambda$5$Type",794),y(1597,1,Ti,lEe),s.pf=function(t,n){t8t(c(t,37),n)},S(Ct,"SelfLoopPostProcessor",1597),y(1598,1,{},fEe),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"SelfLoopPostProcessor/lambda$0$Type",1598),y(1599,1,Rn,hEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SelfLoopPostProcessor/lambda$1$Type",1599),y(1600,1,Rn,dEe),s.Mb=function(t){return nr(c(t,10),(ye(),w4))},S(Ct,"SelfLoopPostProcessor/lambda$2$Type",1600),y(1601,1,Rt,gEe),s.td=function(t){u7t(c(t,10))},S(Ct,"SelfLoopPostProcessor/lambda$3$Type",1601),y(1602,1,{},bEe),s.Kb=function(t){return new ht(null,new bt(c(t,101).f,1))},S(Ct,"SelfLoopPostProcessor/lambda$4$Type",1602),y(1603,1,Rt,aTe),s.td=function(t){JPt(this.a,c(t,409))},S(Ct,"SelfLoopPostProcessor/lambda$5$Type",1603),y(1604,1,Rn,pEe),s.Mb=function(t){return!!c(t,101).i},S(Ct,"SelfLoopPostProcessor/lambda$6$Type",1604),y(1605,1,Rt,lTe),s.td=function(t){xvt(this.a,c(t,101))},S(Ct,"SelfLoopPostProcessor/lambda$7$Type",1605),y(1587,1,Ti,wEe),s.pf=function(t,n){Wxt(c(t,37),n)},S(Ct,"SelfLoopPreProcessor",1587),y(1588,1,{},mEe),s.Kb=function(t){return new ht(null,new bt(c(t,101).f,1))},S(Ct,"SelfLoopPreProcessor/lambda$0$Type",1588),y(1589,1,{},vEe),s.Kb=function(t){return c(t,409).a},S(Ct,"SelfLoopPreProcessor/lambda$1$Type",1589),y(1590,1,Rt,yEe),s.td=function(t){$2t(c(t,17))},S(Ct,"SelfLoopPreProcessor/lambda$2$Type",1590),y(1606,1,Ti,pke),s.pf=function(t,n){VDt(this,c(t,37),n)},S(Ct,"SelfLoopRouter",1606),y(1607,1,{},_Ee),s.Kb=function(t){return new ht(null,new bt(c(t,29).a,16))},S(Ct,"SelfLoopRouter/lambda$0$Type",1607),y(1608,1,Rn,EEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SelfLoopRouter/lambda$1$Type",1608),y(1609,1,Rn,SEe),s.Mb=function(t){return nr(c(t,10),(ye(),w4))},S(Ct,"SelfLoopRouter/lambda$2$Type",1609),y(1610,1,{},PEe),s.Kb=function(t){return c(B(c(t,10),(ye(),w4)),403)},S(Ct,"SelfLoopRouter/lambda$3$Type",1610),y(1611,1,Rt,hOe),s.td=function(t){M5t(this.a,this.b,c(t,403))},S(Ct,"SelfLoopRouter/lambda$4$Type",1611),y(1612,1,Ti,MEe),s.pf=function(t,n){gNt(c(t,37),n)},S(Ct,"SemiInteractiveCrossMinProcessor",1612),y(1613,1,Rn,CEe),s.Mb=function(t){return c(t,10).k==(Dt(),Ui)},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$0$Type",1613),y(1614,1,Rn,IEe),s.Mb=function(t){return DRe(c(t,10))._b((Oe(),qw))},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$1$Type",1614),y(1615,1,Zn,TEe),s.ue=function(t,n){return HIt(c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$2$Type",1615),y(1616,1,{},jEe),s.Ce=function(t,n){return q5t(c(t,10),c(n,10))},S(Ct,"SemiInteractiveCrossMinProcessor/lambda$3$Type",1616),y(1618,1,Ti,AEe),s.pf=function(t,n){a$t(c(t,37),n)},S(Ct,"SortByInputModelProcessor",1618),y(1619,1,Rn,OEe),s.Mb=function(t){return c(t,11).g.c.length!=0},S(Ct,"SortByInputModelProcessor/lambda$0$Type",1619),y(1620,1,Rt,fTe),s.td=function(t){_kt(this.a,c(t,11))},S(Ct,"SortByInputModelProcessor/lambda$1$Type",1620),y(1693,803,{},IKe),s.Me=function(t){var n,i,r,o;switch(this.c=t,this.a.g){case 2:n=new Se,Di(si(new ht(null,new bt(this.c.a.b,16)),new VEe),new wOe(this,n)),zI(this,new REe),Zc(n,new xEe),n.c=oe(xt,xe,1,0,5,1),Di(si(new ht(null,new bt(this.c.a.b,16)),new LEe),new dTe(n)),zI(this,new NEe),Zc(n,new FEe),n.c=oe(xt,xe,1,0,5,1),i=X7e($Ke(x8(new ht(null,new bt(this.c.a.b,16)),new gTe(this))),new BEe),Di(new ht(null,new bt(this.c.a.a,16)),new gOe(i,n)),zI(this,new KEe),Zc(n,new DEe),n.c=oe(xt,xe,1,0,5,1);break;case 3:r=new Se,zI(this,new kEe),o=X7e($Ke(x8(new ht(null,new bt(this.c.a.b,16)),new hTe(this))),new $Ee),Di(si(new ht(null,new bt(this.c.a.b,16)),new qEe),new pOe(o,r)),zI(this,new HEe),Zc(r,new zEe),r.c=oe(xt,xe,1,0,5,1);break;default:throw V(new _Ae)}},s.b=0,S(Ki,"EdgeAwareScanlineConstraintCalculation",1693),y(1694,1,yf,kEe),s.Lb=function(t){return Q(c(t,57).g,145)},s.Fb=function(t){return this===t},s.Mb=function(t){return Q(c(t,57).g,145)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$0$Type",1694),y(1695,1,{},hTe),s.Fe=function(t){return eRt(this.a,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$1$Type",1695),y(1703,1,bD,dOe),s.Vd=function(){a6(this.a,this.b,-1)},s.b=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$10$Type",1703),y(1705,1,yf,REe),s.Lb=function(t){return Q(c(t,57).g,145)},s.Fb=function(t){return this===t},s.Mb=function(t){return Q(c(t,57).g,145)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$11$Type",1705),y(1706,1,Rt,xEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$12$Type",1706),y(1707,1,Rn,LEe),s.Mb=function(t){return Q(c(t,57).g,10)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$13$Type",1707),y(1709,1,Rt,dTe),s.td=function(t){IAt(this.a,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$14$Type",1709),y(1708,1,bD,_Oe),s.Vd=function(){a6(this.b,this.a,-1)},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$15$Type",1708),y(1710,1,yf,NEe),s.Lb=function(t){return Q(c(t,57).g,10)},s.Fb=function(t){return this===t},s.Mb=function(t){return Q(c(t,57).g,10)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$16$Type",1710),y(1711,1,Rt,FEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$17$Type",1711),y(1712,1,{},gTe),s.Fe=function(t){return tRt(this.a,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$18$Type",1712),y(1713,1,{},BEe),s.De=function(){return 0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$19$Type",1713),y(1696,1,{},$Ee),s.De=function(){return 0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$2$Type",1696),y(1715,1,Rt,gOe),s.td=function(t){uSt(this.a,this.b,c(t,307))},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$20$Type",1715),y(1714,1,bD,bOe),s.Vd=function(){NUe(this.a,this.b,-1)},s.b=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$21$Type",1714),y(1716,1,yf,KEe),s.Lb=function(t){return c(t,57),!0},s.Fb=function(t){return this===t},s.Mb=function(t){return c(t,57),!0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$22$Type",1716),y(1717,1,Rt,DEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$23$Type",1717),y(1697,1,Rn,qEe),s.Mb=function(t){return Q(c(t,57).g,10)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$3$Type",1697),y(1699,1,Rt,pOe),s.td=function(t){aSt(this.a,this.b,c(t,57))},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$4$Type",1699),y(1698,1,bD,EOe),s.Vd=function(){a6(this.b,this.a,-1)},s.a=0,S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$5$Type",1698),y(1700,1,yf,HEe),s.Lb=function(t){return c(t,57),!0},s.Fb=function(t){return this===t},s.Mb=function(t){return c(t,57),!0},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$6$Type",1700),y(1701,1,Rt,zEe),s.td=function(t){c(t,365).Vd()},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$7$Type",1701),y(1702,1,Rn,VEe),s.Mb=function(t){return Q(c(t,57).g,145)},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$8$Type",1702),y(1704,1,Rt,wOe),s.td=function(t){cIt(this.a,this.b,c(t,57))},S(Ki,"EdgeAwareScanlineConstraintCalculation/lambda$9$Type",1704),y(1521,1,Ti,DDe),s.pf=function(t,n){eKt(this,c(t,37),n)};var Mrt;S(Ki,"HorizontalGraphCompactor",1521),y(1522,1,{},bTe),s.Oe=function(t,n){var i,r,o;return Hie(t,n)||(i=Nm(t),r=Nm(n),i&&i.k==(Dt(),Bi)||r&&r.k==(Dt(),Bi))?0:(o=c(B(this.a.a,(ye(),Rv)),304),g3t(o,i?i.k:(Dt(),ur),r?r.k:(Dt(),ur)))},s.Pe=function(t,n){var i,r,o;return Hie(t,n)?1:(i=Nm(t),r=Nm(n),o=c(B(this.a.a,(ye(),Rv)),304),Fee(o,i?i.k:(Dt(),ur),r?r.k:(Dt(),ur)))},S(Ki,"HorizontalGraphCompactor/1",1522),y(1523,1,{},GEe),s.Ne=function(t,n){return HS(),t.a.i==0},S(Ki,"HorizontalGraphCompactor/lambda$0$Type",1523),y(1524,1,{},pTe),s.Ne=function(t,n){return F5t(this.a,t,n)},S(Ki,"HorizontalGraphCompactor/lambda$1$Type",1524),y(1664,1,{},h$e);var Crt,Irt;S(Ki,"LGraphToCGraphTransformer",1664),y(1672,1,Rn,UEe),s.Mb=function(t){return t!=null},S(Ki,"LGraphToCGraphTransformer/0methodref$nonNull$Type",1672),y(1665,1,{},WEe),s.Kb=function(t){return ka(),Ro(B(c(c(t,57).g,10),(ye(),Hn)))},S(Ki,"LGraphToCGraphTransformer/lambda$0$Type",1665),y(1666,1,{},YEe),s.Kb=function(t){return ka(),bHe(c(c(t,57).g,145))},S(Ki,"LGraphToCGraphTransformer/lambda$1$Type",1666),y(1675,1,Rn,XEe),s.Mb=function(t){return ka(),Q(c(t,57).g,10)},S(Ki,"LGraphToCGraphTransformer/lambda$10$Type",1675),y(1676,1,Rt,JEe),s.td=function(t){N5t(c(t,57))},S(Ki,"LGraphToCGraphTransformer/lambda$11$Type",1676),y(1677,1,Rn,QEe),s.Mb=function(t){return ka(),Q(c(t,57).g,145)},S(Ki,"LGraphToCGraphTransformer/lambda$12$Type",1677),y(1681,1,Rt,ZEe),s.td=function(t){qjt(c(t,57))},S(Ki,"LGraphToCGraphTransformer/lambda$13$Type",1681),y(1678,1,Rt,wTe),s.td=function(t){h2t(this.a,c(t,8))},s.a=0,S(Ki,"LGraphToCGraphTransformer/lambda$14$Type",1678),y(1679,1,Rt,mTe),s.td=function(t){g2t(this.a,c(t,110))},s.a=0,S(Ki,"LGraphToCGraphTransformer/lambda$15$Type",1679),y(1680,1,Rt,vTe),s.td=function(t){d2t(this.a,c(t,8))},s.a=0,S(Ki,"LGraphToCGraphTransformer/lambda$16$Type",1680),y(1682,1,{},e4e),s.Kb=function(t){return ka(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ki,"LGraphToCGraphTransformer/lambda$17$Type",1682),y(1683,1,Rn,t4e),s.Mb=function(t){return ka(),Kr(c(t,17))},S(Ki,"LGraphToCGraphTransformer/lambda$18$Type",1683),y(1684,1,Rt,yTe),s.td=function(t){WCt(this.a,c(t,17))},S(Ki,"LGraphToCGraphTransformer/lambda$19$Type",1684),y(1668,1,Rt,_Te),s.td=function(t){TPt(this.a,c(t,145))},S(Ki,"LGraphToCGraphTransformer/lambda$2$Type",1668),y(1685,1,{},n4e),s.Kb=function(t){return ka(),new ht(null,new bt(c(t,29).a,16))},S(Ki,"LGraphToCGraphTransformer/lambda$20$Type",1685),y(1686,1,{},i4e),s.Kb=function(t){return ka(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ki,"LGraphToCGraphTransformer/lambda$21$Type",1686),y(1687,1,{},r4e),s.Kb=function(t){return ka(),c(B(c(t,17),(ye(),bb)),15)},S(Ki,"LGraphToCGraphTransformer/lambda$22$Type",1687),y(1688,1,Rn,o4e),s.Mb=function(t){return p3t(c(t,15))},S(Ki,"LGraphToCGraphTransformer/lambda$23$Type",1688),y(1689,1,Rt,ETe),s.td=function(t){Vkt(this.a,c(t,15))},S(Ki,"LGraphToCGraphTransformer/lambda$24$Type",1689),y(1667,1,Rt,mOe),s.td=function(t){bMt(this.a,this.b,c(t,145))},S(Ki,"LGraphToCGraphTransformer/lambda$3$Type",1667),y(1669,1,{},c4e),s.Kb=function(t){return ka(),new ht(null,new bt(c(t,29).a,16))},S(Ki,"LGraphToCGraphTransformer/lambda$4$Type",1669),y(1670,1,{},s4e),s.Kb=function(t){return ka(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(Ki,"LGraphToCGraphTransformer/lambda$5$Type",1670),y(1671,1,{},u4e),s.Kb=function(t){return ka(),c(B(c(t,17),(ye(),bb)),15)},S(Ki,"LGraphToCGraphTransformer/lambda$6$Type",1671),y(1673,1,Rt,STe),s.td=function(t){SRt(this.a,c(t,15))},S(Ki,"LGraphToCGraphTransformer/lambda$8$Type",1673),y(1674,1,Rt,vOe),s.td=function(t){L2t(this.a,this.b,c(t,145))},S(Ki,"LGraphToCGraphTransformer/lambda$9$Type",1674),y(1663,1,{},a4e),s.Le=function(t){var n,i,r,o,u;for(this.a=t,this.d=new RN,this.c=oe(sde,xe,121,this.a.a.a.c.length,0,1),this.b=0,i=new q(this.a.a.a);i.a=z&&(Ee(u,Ce(v)),ne=g.Math.max(ne,ue[v-1]-A),l+=N,Y+=ue[v-1]-Y,A=ue[v-1],N=d[v]),N=g.Math.max(N,d[v]),++v;l+=N}L=g.Math.min(1/ne,1/n.b/l),L>r&&(r=L,i=u)}return i},s.Wf=function(){return!1},S(Pf,"MSDCutIndexHeuristic",802),y(1617,1,Ti,X4e),s.pf=function(t,n){t$t(c(t,37),n)},S(Pf,"SingleEdgeGraphWrapper",1617),y(227,22,{3:1,35:1,22:1,227:1},XS);var Iv,l4,f4,Dw,gP,Tv,h4=hn(lc,"CenterEdgeLabelPlacementStrategy",227,bn,hCt,z_t),Brt;y(422,22,{3:1,35:1,22:1,422:1},FZ);var j1e,oU,A1e=hn(lc,"ConstraintCalculationStrategy",422,bn,n6t,V_t),$rt;y(314,22,{3:1,35:1,22:1,314:1,246:1,234:1},fF),s.Kf=function(){return WGe(this)},s.Xf=function(){return WGe(this)};var nj,H2,O1e,D1e=hn(lc,"CrossingMinimizationStrategy",314,bn,W6t,G_t),Krt;y(337,22,{3:1,35:1,22:1,337:1},hF);var k1e,cU,bR,R1e=hn(lc,"CuttingStrategy",337,bn,Y6t,Y_t),qrt;y(335,22,{3:1,35:1,22:1,335:1,246:1,234:1},sC),s.Kf=function(){return RUe(this)},s.Xf=function(){return RUe(this)};var x1e,sU,bP,uU,pP,L1e=hn(lc,"CycleBreakingStrategy",335,bn,FMt,X_t),Hrt;y(419,22,{3:1,35:1,22:1,419:1},BZ);var pR,N1e,F1e=hn(lc,"DirectionCongruency",419,bn,t6t,J_t),zrt;y(450,22,{3:1,35:1,22:1,450:1},dF);var d4,aU,jv,Vrt=hn(lc,"EdgeConstraint",450,bn,X6t,Q_t),Grt;y(276,22,{3:1,35:1,22:1,276:1},JS);var lU,fU,hU,dU,wR,gU,B1e=hn(lc,"EdgeLabelSideSelection",276,bn,pCt,Z_t),Urt;y(479,22,{3:1,35:1,22:1,479:1},$Z);var mR,$1e,K1e=hn(lc,"EdgeStraighteningStrategy",479,bn,e6t,eEt),Wrt;y(274,22,{3:1,35:1,22:1,274:1},QS);var bU,q1e,H1e,vR,z1e,V1e,G1e=hn(lc,"FixedAlignment",274,bn,gCt,tEt),Yrt;y(275,22,{3:1,35:1,22:1,275:1},ZS);var U1e,W1e,Y1e,X1e,wP,J1e,Q1e=hn(lc,"GraphCompactionStrategy",275,bn,dCt,nEt),Xrt;y(256,22,{3:1,35:1,22:1,256:1},Op);var g4,yR,b4,Gu,mP,_R,p4,Av,ER,vP,pU=hn(lc,"GraphProperties",256,bn,tTt,iEt),Jrt;y(292,22,{3:1,35:1,22:1,292:1},gF);var ij,wU,mU,vU=hn(lc,"GreedySwitchType",292,bn,Z6t,rEt),Qrt;y(303,22,{3:1,35:1,22:1,303:1},bF);var z2,rj,Ov,Zrt=hn(lc,"InLayerConstraint",303,bn,Q6t,oEt),eot;y(420,22,{3:1,35:1,22:1,420:1},KZ);var yU,Z1e,ege=hn(lc,"InteractiveReferencePoint",420,bn,i6t,cEt),tot,tge,V2,W0,SR,nge,ige,PR,rge,oj,MR,yP,G2,kw,_U,CR,Zo,oge,Y0,Cc,EU,SU,cj,gb,X0,U2,cge,W2,sj,Rw,wl,da,PU,Dv,hc,Hn,sge,uge,age,lge,fge,MU,IR,As,J0,CU,Y2,uj,Ul,kv,w4,Rv,xv,m4,bb,hge,IU,TU,X2;y(163,22,{3:1,35:1,22:1,163:1},aC);var _P,K1,EP,xw,aj,dge=hn(lc,"LayerConstraint",163,bn,KMt,sEt),not;y(848,1,ca,rCe),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Cae),""),"Direction Congruency"),"Specifies how drawings of the same graph with different layout directions compare to each other: either a natural reading direction is preserved or the drawings are rotated versions of each other."),Sge),(yd(),Ai)),F1e),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Iae),""),"Feedback Edges"),"Whether feedback edges should be highlighted by routing around the nodes."),(Pt(),!1)),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,AD),""),"Interactive Reference Point"),"Determines which point of a node is considered by interactive layout phases."),jge),Ai),ege),nt(Tt)))),pr(t,AD,Tz,Uot),pr(t,AD,K6,Got),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Tae),""),"Merge Edges"),"Edges that have no ports are merged so they touch the connected nodes at the same points. When this option is disabled, one port is created for each edge directly connected to a node. When it is enabled, all such incoming edges share an input port, and all outgoing edges share an output port."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jae),""),"Merge Hierarchy-Crossing Edges"),"If hierarchical layout is active, hierarchy-crossing edges use as few hierarchical ports as possible. They are broken by the algorithm, with hierarchical ports inserted as required. Usually, one such port is created for each edge at each hierarchy crossing point. With this option set to true, we try to create as few hierarchical ports as possible in the process. In particular, all edges that form a hyperedge can share a port."),!0),Dr),Qi),nt(Tt)))),Ze(t,new ze(dyt(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Aae),""),"Allow Non-Flow Ports To Switch Sides"),"Specifies whether non-flow ports may switch sides if their node's port constraints are either FIXED_SIDE or FIXED_ORDER. A non-flow port is a port on a side that is not part of the currently configured layout flow. For instance, given a left-to-right layout direction, north and south ports would be considered non-flow ports. Further note that the underlying criterium whether to switch sides or not solely relies on the minimization of edge crossings. Hence, edge length and other aesthetics criteria are not addressed."),!1),Dr),Qi),nt(_b)),U(G(Re,1),we,2,6,["org.eclipse.elk.layered.northOrSouthPort"])))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Oae),""),"Port Sorting Strategy"),"Only relevant for nodes with FIXED_SIDE port constraints. Determines the way a node's ports are distributed on the sides of a node if their order is not prescribed. The option is set on parent nodes."),Nge),Ai),Vbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Dae),""),"Thoroughness"),"How much effort should be spent to produce a nice layout."),Ce(7)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,kae),""),"Add Unnecessary Bendpoints"),"Adds bend points even if an edge does not change direction. If true, each long edge dummy will contribute a bend point to its edges and hierarchy-crossing edges will always get a bend point where they cross hierarchy boundaries. By default, bend points are only added where an edge changes direction."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Rae),""),"Generate Position and Layer IDs"),"If enabled position id and layer id are generated, which are usually only used internally when setting the interactiveLayout option. This option should be specified on the root node."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Tz),"cycleBreaking"),"Cycle Breaking Strategy"),"Strategy for cycle breaking. Cycle breaking looks for cycles in the graph and determines which edges to reverse to break the cycles. Reversed edges will end up pointing to the opposite direction of regular edges (that is, reversed edges will point left if edges usually point right)."),Ege),Ai),L1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,TT),Qz),"Node Layering Strategy"),"Strategy for node layering."),Dge),Ai),kbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xae),Qz),"Layer Constraint"),"Determines a constraint on the placement of the node regarding the layering."),Age),Ai),dge),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Lae),Qz),"Layer Choice Constraint"),"Allows to set a constraint regarding the layer placement of a node. Let i be the value of teh constraint. Assumed the drawing has n layers and i < n. If set to i, it expresses that the node should be placed in i-th layer. Should i>=n be true then the node is placed in the last layer of the drawing. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Nae),Qz),"Layer ID"),"Layer identifier that was calculated by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jz),zQe),"Upper Bound On Width [MinWidth Layerer]"),"Defines a loose upper bound on the width of the MinWidth layerer. If set to '-1' multiple values are tested and the best result is selected."),Ce(4)),oc),$r),nt(Tt)))),pr(t,jz,TT,ect),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Az),zQe),"Upper Layer Estimation Scaling Factor [MinWidth Layerer]"),"Multiplied with Upper Bound On Width for defining an upper bound on the width of layers which haven't been determined yet, but whose maximum width had been (roughly) estimated by the MinWidth algorithm. Compensates for too high estimations. If set to '-1' multiple values are tested and the best result is selected."),Ce(2)),oc),$r),nt(Tt)))),pr(t,Az,TT,nct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Oz),VQe),"Node Promotion Strategy"),"Reduces number of dummy nodes after layering phase (if possible)."),Oge),Ai),qbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Dz),VQe),"Max Node Promotion Iterations"),"Limits the number of iterations for node promotion."),Ce(0)),oc),$r),nt(Tt)))),pr(t,Dz,Oz,null),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,kz),"layering.coffmanGraham"),"Layer Bound"),"The maximum number of nodes allowed per layer."),Ce(Fn)),oc),$r),nt(Tt)))),pr(t,kz,TT,Yot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,K6),jT),"Crossing Minimization Strategy"),"Strategy for crossing minimization."),_ge),Ai),D1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Fae),jT),"Force Node Model Order"),"The node order given by the model does not change to produce a better layout. E.g. if node A is before node B in the model this is not changed during crossing minimization. This assumes that the node model order is already respected before crossing minimization. This can be achieved by setting considerModelOrder.strategy to NODES_AND_EDGES."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Rz),jT),"Hierarchical Sweepiness"),"How likely it is to use cross-hierarchy (1) vs bottom-up (-1)."),.1),To),mr),nt(Tt)))),pr(t,Rz,HD,_ot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xz),jT),"Semi-Interactive Crossing Minimization"),"Preserves the order of nodes within a layer but still minimizes crossings between edges connecting long edge dummies. Derives the desired order from positions specified by the 'org.eclipse.elk.position' layout option. Requires a crossing minimization strategy that is able to process 'in-layer' constraints."),!1),Dr),Qi),nt(Tt)))),pr(t,xz,K6,Mot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Bae),jT),"Position Choice Constraint"),"Allows to set a constraint regarding the position placement of a node in a layer. Assumed the layer in which the node placed includes n other nodes and i < n. If set to i, it expresses that the node should be placed at the i-th position. Should i>=n be true then the node is placed at the last position in the layer. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,$ae),jT),"Position ID"),"Position within a layer that was determined by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),Ce(-1)),oc),$r),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Kae),GQe),"Greedy Switch Activation Threshold"),"By default it is decided automatically if the greedy switch is activated or not. The decision is based on whether the size of the input graph (without dummy nodes) is smaller than the value of this option. A '0' enforces the activation."),Ce(40)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Lz),GQe),"Greedy Switch Crossing Minimization"),"Greedy Switch strategy for crossing minimization. The greedy switch heuristic is executed after the regular crossing minimization as a post-processor. Note that if 'hierarchyHandling' is set to 'INCLUDE_CHILDREN', the 'greedySwitchHierarchical.type' option must be used."),yge),Ai),vU),nt(Tt)))),pr(t,Lz,K6,vot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,OD),"crossingMinimization.greedySwitchHierarchical"),"Greedy Switch Crossing Minimization (hierarchical)"),"Activates the greedy switch heuristic in case hierarchical layout is used. The differences to the non-hierarchical case (see 'greedySwitch.type') are: 1) greedy switch is inactive by default, 3) only the option value set on the node at which hierarchical layout starts is relevant, and 2) if it's activated by the user, it properly addresses hierarchy-crossing edges."),vge),Ai),vU),nt(Tt)))),pr(t,OD,K6,pot),pr(t,OD,HD,wot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,bv),UQe),"Node Placement Strategy"),"Strategy for node placement."),Lge),Ai),Nbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,DD),UQe),"Favor Straight Edges Over Balancing"),"Favor straight edges over a balanced node placement. The default behavior is determined automatically based on the used 'edgeRouting'. For an orthogonal style it is set to true, for all other styles to false."),Dr),Qi),nt(Tt)))),pr(t,DD,bv,dct),pr(t,DD,bv,gct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Nz),WQe),"BK Edge Straightening"),"Specifies whether the Brandes Koepf node placer tries to increase the number of straight edges at the expense of diagram size. There is a subtle difference to the 'favorStraightEdges' option, which decides whether a balanced placement of the nodes is desired, or not. In bk terms this means combining the four alignments into a single balanced one, or not. This option on the other hand tries to straighten additional edges during the creation of each of the four alignments."),kge),Ai),K1e),nt(Tt)))),pr(t,Nz,bv,act),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Fz),WQe),"BK Fixed Alignment"),"Tells the BK node placer to use a certain alignment (out of its four) instead of the one producing the smallest height, or the combination of all four."),Rge),Ai),G1e),nt(Tt)))),pr(t,Fz,bv,fct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Bz),"nodePlacement.linearSegments"),"Linear Segments Deflection Dampening"),"Dampens the movement of nodes to keep the diagram from getting too large."),.3),To),mr),nt(Tt)))),pr(t,Bz,bv,pct),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,$z),"nodePlacement.networkSimplex"),"Node Flexibility"),"Aims at shorter and straighter edges. Two configurations are possible: (a) allow ports to move freely on the side they are assigned to (the order is always defined beforehand), (b) additionally allow to enlarge a node wherever it helps. If this option is not configured for a node, the 'nodeFlexibility.default' value is used, which is specified for the node's parent."),Ai),JU),nt(ar)))),pr(t,$z,bv,yct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Kz),"nodePlacement.networkSimplex.nodeFlexibility"),"Node Flexibility Default"),"Default value of the 'nodeFlexibility' option for the children of a hierarchical node."),xge),Ai),JU),nt(Tt)))),pr(t,Kz,bv,vct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qae),YQe),"Self-Loop Distribution"),"Alter the distribution of the loops around the node. It only takes effect for PortConstraints.FREE."),Cge),Ai),Wbe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Hae),YQe),"Self-Loop Ordering"),"Alter the ordering of the loops they can either be stacked or sequenced. It only takes effect for PortConstraints.FREE."),Ige),Ai),Ybe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,kD),"edgeRouting.splines"),"Spline Routing Mode"),"Specifies the way control points are assembled for each individual edge. CONSERVATIVE ensures that edges are properly routed around the nodes but feels rather orthogonal at times. SLOPPY uses fewer control points to obtain curvier edge routes but may result in edges overlapping nodes."),Tge),Ai),Jbe),nt(Tt)))),pr(t,kD,AT,Lot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,RD),"edgeRouting.splines.sloppy"),"Sloppy Spline Layer Spacing Factor"),"Spacing factor for routing area between layers when using sloppy spline routing."),.2),To),mr),nt(Tt)))),pr(t,RD,AT,Fot),pr(t,RD,kD,Bot),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qz),"edgeRouting.polyline"),"Sloped Edge Zone Width"),"Width of the strip to the left and to the right of each layer where the polyline edge router is allowed to refrain from ensuring that edges are routed horizontally. This prevents awkward bend points for nodes that extent almost to the edge of their layer."),2),To),mr),nt(Tt)))),pr(t,qz,AT,Dot),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,zae),Hl),"Spacing Base Value"),"An optional base value for all other layout options of the 'spacing' group. It can be used to conveniently alter the overall 'spaciousness' of the drawing. Whenever an explicit value is set for the other layout options, this base value will have no effect. The base value is not inherited, i.e. it must be set for each hierarchical node."),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Vae),Hl),"Edge Node Between Layers Spacing"),"The spacing to be preserved between nodes and edges that are routed next to the node's layer. For the spacing between nodes and edges that cross the node's layer 'spacing.edgeNode' is used."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Gae),Hl),"Edge Edge Between Layer Spacing"),"Spacing to be preserved between pairs of edges that are routed between the same pair of layers. Note that 'spacing.edgeEdge' is used for the spacing between pairs of edges crossing the same layer."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Uae),Hl),"Node Node Between Layers Spacing"),"The spacing to be preserved between any pair of nodes of two adjacent layers. Note that 'spacing.nodeNode' is used for the spacing between nodes within the layer itself."),20),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Wae),ile),"Direction Priority"),"Defines how important it is to have a certain edge point into the direction of the overall layout. This option is evaluated during the cycle breaking phase."),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Yae),ile),"Shortness Priority"),"Defines how important it is to keep an edge as short as possible. This option is evaluated during the layering phase."),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Xae),ile),"Straightness Priority"),"Defines how important it is to keep an edge straight, i.e. aligned with one of the two axes. This option is evaluated during node placement."),Ce(0)),oc),$r),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Hz),rle),fQe),"Tries to further compact components (disconnected sub-graphs)."),!1),Dr),Qi),nt(Tt)))),pr(t,Hz,L6,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Jae),XQe),"Post Compaction Strategy"),JQe),bge),Ai),Q1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Qae),XQe),"Post Compaction Constraint Calculation"),JQe),gge),Ai),A1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xD),ole),"High Degree Node Treatment"),"Makes room around high degree nodes to place leafs and trees."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,zz),ole),"High Degree Node Threshold"),"Whether a node is considered to have a high degree."),Ce(16)),oc),$r),nt(Tt)))),pr(t,zz,xD,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Vz),ole),"High Degree Node Maximum Tree Height"),"Maximum height of a subtree connected to a high degree node to be moved to separate layers."),Ce(5)),oc),$r),nt(Tt)))),pr(t,Vz,xD,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Hh),cle),"Graph Wrapping Strategy"),"For certain graphs and certain prescribed drawing areas it may be desirable to split the laid out graph into chunks that are placed side by side. The edges that connect different chunks are 'wrapped' around from the end of one chunk to the start of the other chunk. The points between the chunks are referred to as 'cuts'."),$ge),Ai),t0e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,LD),cle),"Additional Wrapped Edges Spacing"),"To visually separate edges that are wrapped from regularly routed edges an additional spacing value can be specified in form of this layout option. The spacing is added to the regular edgeNode spacing."),10),To),mr),nt(Tt)))),pr(t,LD,Hh,kct),pr(t,LD,Hh,Rct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ND),cle),"Correction Factor for Wrapping"),"At times and for certain types of graphs the executed wrapping may produce results that are consistently biased in the same fashion: either wrapping to often or to rarely. This factor can be used to correct the bias. Internally, it is simply multiplied with the 'aspect ratio' layout option."),1),To),mr),nt(Tt)))),pr(t,ND,Hh,Lct),pr(t,ND,Hh,Nct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,q6),QQe),"Cutting Strategy"),"The strategy by which the layer indexes are determined at which the layering crumbles into chunks."),Bge),Ai),R1e),nt(Tt)))),pr(t,q6,Hh,Hct),pr(t,q6,Hh,zct),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Gz),QQe),"Manually Specified Cuts"),"Allows the user to specify her own cuts for a certain graph."),Yl),Vu),nt(Tt)))),pr(t,Gz,q6,Bct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Uz),"wrapping.cutting.msd"),"MSD Freedom"),"The MSD cutting strategy starts with an initial guess on the number of chunks the graph should be split into. The freedom specifies how much the strategy may deviate from this guess. E.g. if an initial number of 3 is computed, a freedom of 1 allows 2, 3, and 4 cuts."),Fge),oc),$r),nt(Tt)))),pr(t,Uz,q6,Kct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,FD),ZQe),"Validification Strategy"),"When wrapping graphs, one can specify indices that are not allowed as split points. The validification strategy makes sure every computed split point is allowed."),Kge),Ai),e0e),nt(Tt)))),pr(t,FD,Hh,nst),pr(t,FD,Hh,ist),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,BD),ZQe),"Valid Indices for Wrapping"),null),Yl),Vu),nt(Tt)))),pr(t,BD,Hh,Zct),pr(t,BD,Hh,est),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,$D),sle),"Improve Cuts"),"For general graphs it is important that not too many edges wrap backwards. Thus a compromise between evenly-distributed cuts and the total number of cut edges is sought."),!0),Dr),Qi),nt(Tt)))),pr(t,$D,Hh,Wct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,KD),sle),"Distance Penalty When Improving Cuts"),null),2),To),mr),nt(Tt)))),pr(t,KD,Hh,Gct),pr(t,KD,$D,!0),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Wz),sle),"Improve Wrapped Edges"),"The initial wrapping is performed in a very simple way. As a consequence, edges that wrap from one chunk to another may be unnecessarily long. Activating this option tries to shorten such edges."),!0),Dr),Qi),nt(Tt)))),pr(t,Wz,Hh,Xct),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Zae),Zz),"Edge Label Side Selection"),"Method to decide on edge label sides."),Mge),Ai),B1e),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ele),Zz),"Edge Center Label Placement Strategy"),"Determines in which layer center labels of long edges should be placed."),Pge),Ai),h4),ui(Tt,U(G(Dd,1),_e,175,0,[Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qD),OT),"Consider Model Order"),"Preserves the order of nodes and edges in the model file if this does not lead to additional edge crossings. Depending on the strategy this is not always possible since the node and edge order might be conflicting."),mge),Ai),zbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,tle),OT),"No Model Order"),"Set on a node to not set a model order for this node even though it is a real node."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Yz),OT),"Consider Model Order for Components"),"If set to NONE the usual ordering strategy (by cumulative node priority and size of nodes) is used. INSIDE_PORT_SIDES orders the components with external ports only inside the groups with the same port side. FORCE_MODEL_ORDER enforces the mode order on components. This option might produce bad alignments and sub optimal drawings in terms of used area since the ordering should be respected."),pge),Ai),Lde),nt(Tt)))),pr(t,Yz,L6,null),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,nle),OT),"Long Edge Ordering Strategy"),"Indicates whether long edges are sorted under, over, or equal to nodes that have no connection to a previous layer in a left-to-right or right-to-left layout. Under and over changes to right and left in a vertical layout."),wge),Ai),xbe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Xz),OT),"Crossing Counter Node Order Influence"),"Indicates with what percentage (1 for 100%) violations of the node model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal node order. Defaults to no influence (0)."),0),To),mr),nt(Tt)))),pr(t,Xz,qD,null),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Jz),OT),"Crossing Counter Port Order Influence"),"Indicates with what percentage (1 for 100%) violations of the port model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal port order. Defaults to no influence (0)."),0),To),mr),nt(Tt)))),pr(t,Jz,qD,null),pJe((new sCe,t))};var iot,rot,oot,gge,cot,bge,sot,pge,uot,aot,lot,wge,fot,hot,mge,dot,got,bot,vge,pot,wot,mot,yge,vot,yot,_ot,Eot,Sot,Pot,Mot,Cot,_ge,Iot,Ege,Tot,Sge,jot,Pge,Aot,Mge,Oot,Dot,kot,Cge,Rot,Ige,xot,Tge,Lot,Not,Fot,Bot,$ot,Kot,qot,Hot,zot,Vot,jge,Got,Uot,Wot,Yot,Xot,Jot,Age,Qot,Zot,ect,tct,nct,ict,rct,Oge,oct,Dge,cct,sct,uct,kge,act,lct,Rge,fct,hct,dct,gct,bct,pct,wct,mct,xge,vct,yct,_ct,Lge,Ect,Nge,Sct,Pct,Mct,Cct,Ict,Tct,jct,Act,Oct,Dct,kct,Rct,xct,Lct,Nct,Fct,Bct,$ct,Fge,Kct,qct,Bge,Hct,zct,Vct,Gct,Uct,Wct,Yct,Xct,Jct,$ge,Qct,Zct,est,tst,Kge,nst,ist;S(lc,"LayeredMetaDataProvider",848),y(986,1,ca,sCe),s.Qe=function(t){pJe(t)};var Of,jU,TR,SP,jR,qge,AR,J2,OR,Hge,zge,AU,q1,OU,Lw,Vge,lj,DU,Gge,rst,DR,kU,PP,Nw,ost,Pu,Uge,Wge,kR,RU,Df,RR,zh,Yge,Xge,Jge,xU,LU,Qge,Id,NU,Zge,Fw,ebe,tbe,nbe,xR,Bw,pb,ibe,rbe,yo,obe,cst,zc,LR,cbe,sbe,ube,FU,abe,NR,lbe,fbe,FR,Q0,hbe,BU,MP,dbe,Z0,CP,BR,wb,$U,v4,$R,mb,gbe,bbe,pbe,y4,wbe,sst,ust,ast,lst,ep,$w,ji,Td,fst,Kw,mbe,_4,vbe,qw,hst,E4,ybe,Q2,dst,gst,fj,KU,_be,hj,za,Lv,Z2,tp,vb,KR,Hw,qU,S4,P4,np,Nv,HU,dj,IP,TP,zU,Ebe,Sbe,Pbe,Mbe,VU,Cbe,Ibe,Tbe,jbe,GU,qR;S(lc,"LayeredOptions",986),y(987,1,{},Q4e),s.$e=function(){var t;return t=new CAe,t},s._e=function(t){},S(lc,"LayeredOptions/LayeredFactory",987),y(1372,1,{}),s.a=0;var bst;S(fc,"ElkSpacings/AbstractSpacingsBuilder",1372),y(779,1372,{},moe);var HR,pst;S(lc,"LayeredSpacings/LayeredSpacingsBuilder",779),y(313,22,{3:1,35:1,22:1,313:1,246:1,234:1},e5),s.Kf=function(){return YUe(this)},s.Xf=function(){return YUe(this)};var UU,Abe,Obe,zR,WU,Dbe,kbe=hn(lc,"LayeringStrategy",313,bn,bCt,uEt),wst;y(378,22,{3:1,35:1,22:1,378:1},pF);var YU,Rbe,VR,xbe=hn(lc,"LongEdgeOrderingStrategy",378,bn,U6t,aEt),mst;y(197,22,{3:1,35:1,22:1,197:1},I9);var Fv,Bv,GR,XU,JU=hn(lc,"NodeFlexibility",197,bn,eMt,lEt),vst;y(315,22,{3:1,35:1,22:1,315:1,246:1,234:1},uC),s.Kf=function(){return kUe(this)},s.Xf=function(){return kUe(this)};var jP,QU,ZU,AP,Lbe,Nbe=hn(lc,"NodePlacementStrategy",315,bn,NMt,pEt),yst;y(260,22,{3:1,35:1,22:1,260:1},Ky);var Fbe,gj,Bbe,$be,bj,Kbe,UR,WR,qbe=hn(lc,"NodePromotionStrategy",260,bn,gIt,hEt),_st;y(339,22,{3:1,35:1,22:1,339:1},wF);var Hbe,H1,eW,zbe=hn(lc,"OrderingStrategy",339,bn,tPt,dEt),Est;y(421,22,{3:1,35:1,22:1,421:1},qZ);var tW,nW,Vbe=hn(lc,"PortSortingStrategy",421,bn,r6t,gEt),Sst;y(452,22,{3:1,35:1,22:1,452:1},mF);var Os,Fc,OP,Pst=hn(lc,"PortType",452,bn,ePt,fEt),Mst;y(375,22,{3:1,35:1,22:1,375:1},vF);var Gbe,iW,Ube,Wbe=hn(lc,"SelfLoopDistributionStrategy",375,bn,nPt,bEt),Cst;y(376,22,{3:1,35:1,22:1,376:1},HZ);var pj,rW,Ybe=hn(lc,"SelfLoopOrderingStrategy",376,bn,Z5t,wEt),Ist;y(304,1,{304:1},mXe),S(lc,"Spacings",304),y(336,22,{3:1,35:1,22:1,336:1},yF);var oW,Xbe,DP,Jbe=hn(lc,"SplineRoutingMode",336,bn,rPt,mEt),Tst;y(338,22,{3:1,35:1,22:1,338:1},_F);var cW,Qbe,Zbe,e0e=hn(lc,"ValidifyStrategy",338,bn,oPt,vEt),jst;y(377,22,{3:1,35:1,22:1,377:1},EF);var zw,sW,M4,t0e=hn(lc,"WrappingStrategy",377,bn,iPt,yEt),Ast;y(1383,1,Sc,uCe),s.Yf=function(t){return c(t,37),Ost},s.pf=function(t,n){Y$t(this,c(t,37),n)};var Ost;S(GD,"DepthFirstCycleBreaker",1383),y(782,1,Sc,nne),s.Yf=function(t){return c(t,37),Dst},s.pf=function(t,n){UHt(this,c(t,37),n)},s.Zf=function(t){return c(Ne(t,S7(this.d,t.c.length)),10)};var Dst;S(GD,"GreedyCycleBreaker",782),y(1386,782,Sc,o7e),s.Zf=function(t){var n,i,r,o;for(o=null,n=Fn,r=new q(t);r.a1&&(Be(Fe(B(Nr((pt(0,t.c.length),c(t.c[0],10))),(Oe(),Lw))))?HUe(t,this.d,c(this,660)):(st(),cr(t,this.d)),aqe(this.e,t))},s.Sf=function(t,n,i,r){var o,u,a,l,d,p,v;for(n!=RRe(i,t.length)&&(u=t[n-(i?1:-1)],Iie(this.f,u,i?(Zr(),Fc):(Zr(),Os))),o=t[n][0],v=!r||o.k==(Dt(),Bi),p=kl(t[n]),this.ag(p,v,!1,i),a=0,d=new q(p);d.a"),t0?n$(this.a,t[n-1],t[n]):!i&&n1&&(Be(Fe(B(Nr((pt(0,t.c.length),c(t.c[0],10))),(Oe(),Lw))))?HUe(t,this.d,this):(st(),cr(t,this.d)),Be(Fe(B(Nr((pt(0,t.c.length),c(t.c[0],10))),Lw)))||aqe(this.e,t))},S(_s,"ModelOrderBarycenterHeuristic",660),y(1803,1,Zn,HTe),s.ue=function(t,n){return akt(this.a,c(t,10),c(n,10))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_s,"ModelOrderBarycenterHeuristic/lambda$0$Type",1803),y(1403,1,Sc,pCe),s.Yf=function(t){var n;return c(t,37),n=$9(Vst),Nn(n,(Hr(),Hc),(Jr(),iR)),n},s.pf=function(t,n){W5t((c(t,37),n))};var Vst;S(_s,"NoCrossingMinimizer",1403),y(796,402,Hle,hZ),s.$f=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L;switch(A=this.g,i.g){case 1:{for(o=0,u=0,v=new q(t.j);v.a1&&(o.j==(Ie(),jt)?this.b[t]=!0:o.j==Mt&&t>0&&(this.b[t-1]=!0))},s.f=0,S(eh,"AllCrossingsCounter",1798),y(587,1,{},BO),s.b=0,s.d=0,S(eh,"BinaryIndexedTree",587),y(524,1,{},IC);var r0e,XR;S(eh,"CrossingsCounter",524),y(1906,1,Zn,zTe),s.ue=function(t,n){return J4t(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$0$Type",1906),y(1907,1,Zn,VTe),s.ue=function(t,n){return Q4t(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$1$Type",1907),y(1908,1,Zn,GTe),s.ue=function(t,n){return Z4t(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$2$Type",1908),y(1909,1,Zn,UTe),s.ue=function(t,n){return eSt(this.a,c(t,11),c(n,11))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(eh,"CrossingsCounter/lambda$3$Type",1909),y(1910,1,Rt,WTe),s.td=function(t){xCt(this.a,c(t,11))},S(eh,"CrossingsCounter/lambda$4$Type",1910),y(1911,1,Rn,YTe),s.Mb=function(t){return Yyt(this.a,c(t,11))},S(eh,"CrossingsCounter/lambda$5$Type",1911),y(1912,1,Rt,XTe),s.td=function(t){t7e(this,t)},S(eh,"CrossingsCounter/lambda$6$Type",1912),y(1913,1,Rt,IOe),s.td=function(t){var n;m_(),w1(this.b,(n=this.a,c(t,11),n))},S(eh,"CrossingsCounter/lambda$7$Type",1913),y(826,1,yf,NJ),s.Lb=function(t){return m_(),nr(c(t,11),(ye(),As))},s.Fb=function(t){return this===t},s.Mb=function(t){return m_(),nr(c(t,11),(ye(),As))},S(eh,"CrossingsCounter/lambda$8$Type",826),y(1905,1,{},JTe),S(eh,"HyperedgeCrossingsCounter",1905),y(467,1,{35:1,467:1},wke),s.wd=function(t){return D9t(this,c(t,467))},s.b=0,s.c=0,s.e=0,s.f=0;var Tzt=S(eh,"HyperedgeCrossingsCounter/Hyperedge",467);y(362,1,{35:1,362:1},N8),s.wd=function(t){return Axt(this,c(t,362))},s.b=0,s.c=0;var Gst=S(eh,"HyperedgeCrossingsCounter/HyperedgeCorner",362);y(523,22,{3:1,35:1,22:1,523:1},zZ);var RP,xP,Ust=hn(eh,"HyperedgeCrossingsCounter/HyperedgeCorner/Type",523,bn,o6t,EEt),Wst;y(1405,1,Sc,cCe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Yst:null},s.pf=function(t,n){JOt(this,c(t,37),n)};var Yst;S(io,"InteractiveNodePlacer",1405),y(1406,1,Sc,oCe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Xst:null},s.pf=function(t,n){x8t(this,c(t,37),n)};var Xst,JR,QR;S(io,"LinearSegmentsNodePlacer",1406),y(257,1,{35:1,257:1},qQ),s.wd=function(t){return syt(this,c(t,257))},s.Fb=function(t){var n;return Q(t,257)?(n=c(t,257),this.b==n.b):!1},s.Hb=function(){return this.b},s.Ib=function(){return"ls"+C1(this.e)},s.a=0,s.b=0,s.c=-1,s.d=-1,s.g=0;var Jst=S(io,"LinearSegmentsNodePlacer/LinearSegment",257);y(1408,1,Sc,zRe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Qst:null},s.pf=function(t,n){BHt(this,c(t,37),n)},s.b=0,s.g=0;var Qst;S(io,"NetworkSimplexPlacer",1408),y(1427,1,Zn,oSe),s.ue=function(t,n){return Uc(c(t,19).a,c(n,19).a)},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(io,"NetworkSimplexPlacer/0methodref$compare$Type",1427),y(1429,1,Zn,cSe),s.ue=function(t,n){return Uc(c(t,19).a,c(n,19).a)},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(io,"NetworkSimplexPlacer/1methodref$compare$Type",1429),y(649,1,{649:1},TOe);var jzt=S(io,"NetworkSimplexPlacer/EdgeRep",649);y(401,1,{401:1},Rne),s.b=!1;var Azt=S(io,"NetworkSimplexPlacer/NodeRep",401);y(508,12,{3:1,4:1,20:1,28:1,52:1,12:1,14:1,15:1,54:1,508:1},NAe),S(io,"NetworkSimplexPlacer/Path",508),y(1409,1,{},sSe),s.Kb=function(t){return c(t,17).d.i.k},S(io,"NetworkSimplexPlacer/Path/lambda$0$Type",1409),y(1410,1,Rn,uSe),s.Mb=function(t){return c(t,267)==(Dt(),ur)},S(io,"NetworkSimplexPlacer/Path/lambda$1$Type",1410),y(1411,1,{},aSe),s.Kb=function(t){return c(t,17).d.i},S(io,"NetworkSimplexPlacer/Path/lambda$2$Type",1411),y(1412,1,Rn,QTe),s.Mb=function(t){return tke($He(c(t,10)))},S(io,"NetworkSimplexPlacer/Path/lambda$3$Type",1412),y(1413,1,Rn,lSe),s.Mb=function(t){return $4t(c(t,11))},S(io,"NetworkSimplexPlacer/lambda$0$Type",1413),y(1414,1,Rt,jOe),s.td=function(t){N2t(this.a,this.b,c(t,11))},S(io,"NetworkSimplexPlacer/lambda$1$Type",1414),y(1423,1,Rt,ZTe),s.td=function(t){iRt(this.a,c(t,17))},S(io,"NetworkSimplexPlacer/lambda$10$Type",1423),y(1424,1,{},fSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$11$Type",1424),y(1425,1,Rt,eje),s.td=function(t){ZNt(this.a,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$12$Type",1425),y(1426,1,{},hSe),s.Kb=function(t){return hu(),Ce(c(t,121).e)},S(io,"NetworkSimplexPlacer/lambda$13$Type",1426),y(1428,1,{},dSe),s.Kb=function(t){return hu(),Ce(c(t,121).e)},S(io,"NetworkSimplexPlacer/lambda$15$Type",1428),y(1430,1,Rn,gSe),s.Mb=function(t){return hu(),c(t,401).c.k==(Dt(),Ui)},S(io,"NetworkSimplexPlacer/lambda$17$Type",1430),y(1431,1,Rn,bSe),s.Mb=function(t){return hu(),c(t,401).c.j.c.length>1},S(io,"NetworkSimplexPlacer/lambda$18$Type",1431),y(1432,1,Rt,Jxe),s.td=function(t){HAt(this.c,this.b,this.d,this.a,c(t,401))},s.c=0,s.d=0,S(io,"NetworkSimplexPlacer/lambda$19$Type",1432),y(1415,1,{},pSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$2$Type",1415),y(1433,1,Rt,tje),s.td=function(t){x2t(this.a,c(t,11))},s.a=0,S(io,"NetworkSimplexPlacer/lambda$20$Type",1433),y(1434,1,{},wSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$21$Type",1434),y(1435,1,Rt,nje),s.td=function(t){X2t(this.a,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$22$Type",1435),y(1436,1,Rn,mSe),s.Mb=function(t){return tke(t)},S(io,"NetworkSimplexPlacer/lambda$23$Type",1436),y(1437,1,{},vSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$24$Type",1437),y(1438,1,Rn,ije),s.Mb=function(t){return n2t(this.a,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$25$Type",1438),y(1439,1,Rt,AOe),s.td=function(t){Mkt(this.a,this.b,c(t,10))},S(io,"NetworkSimplexPlacer/lambda$26$Type",1439),y(1440,1,Rn,ySe),s.Mb=function(t){return hu(),!Kr(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$27$Type",1440),y(1441,1,Rn,_Se),s.Mb=function(t){return hu(),!Kr(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$28$Type",1441),y(1442,1,{},rje),s.Ce=function(t,n){return U2t(this.a,c(t,29),c(n,29))},S(io,"NetworkSimplexPlacer/lambda$29$Type",1442),y(1416,1,{},ESe),s.Kb=function(t){return hu(),new ht(null,new t0(new Kt(Ht(Vi(c(t,10)).a.Kc(),new j))))},S(io,"NetworkSimplexPlacer/lambda$3$Type",1416),y(1417,1,Rn,SSe),s.Mb=function(t){return hu(),RPt(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$4$Type",1417),y(1418,1,Rt,oje),s.td=function(t){QBt(this.a,c(t,17))},S(io,"NetworkSimplexPlacer/lambda$5$Type",1418),y(1419,1,{},PSe),s.Kb=function(t){return hu(),new ht(null,new bt(c(t,29).a,16))},S(io,"NetworkSimplexPlacer/lambda$6$Type",1419),y(1420,1,Rn,MSe),s.Mb=function(t){return hu(),c(t,10).k==(Dt(),Ui)},S(io,"NetworkSimplexPlacer/lambda$7$Type",1420),y(1421,1,{},CSe),s.Kb=function(t){return hu(),new ht(null,new t0(new Kt(Ht(xh(c(t,10)).a.Kc(),new j))))},S(io,"NetworkSimplexPlacer/lambda$8$Type",1421),y(1422,1,Rn,ISe),s.Mb=function(t){return hu(),R4t(c(t,17))},S(io,"NetworkSimplexPlacer/lambda$9$Type",1422),y(1404,1,Sc,ECe),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?Zst:null},s.pf=function(t,n){k$t(c(t,37),n)};var Zst;S(io,"SimpleNodePlacer",1404),y(180,1,{180:1},cv),s.Ib=function(){var t;return t="",this.c==(gf(),ip)?t+=A2:this.c==jd&&(t+=j2),this.o==(Al(),yb)?t+=uz:this.o==Wl?t+="UP":t+="BALANCED",t},S(R1,"BKAlignedLayout",180),y(516,22,{3:1,35:1,22:1,516:1},GZ);var jd,ip,eut=hn(R1,"BKAlignedLayout/HDirection",516,bn,s6t,SEt),tut;y(515,22,{3:1,35:1,22:1,515:1},VZ);var yb,Wl,nut=hn(R1,"BKAlignedLayout/VDirection",515,bn,u6t,PEt),iut;y(1634,1,{},OOe),S(R1,"BKAligner",1634),y(1637,1,{},lVe),S(R1,"BKCompactor",1637),y(654,1,{654:1},TSe),s.a=0,S(R1,"BKCompactor/ClassEdge",654),y(458,1,{458:1},xAe),s.a=null,s.b=0,S(R1,"BKCompactor/ClassNode",458),y(1407,1,Sc,i7e),s.Yf=function(t){return c(B(c(t,37),(ye(),Cc)),21).Hc((to(),Gu))?rut:null},s.pf=function(t,n){ezt(this,c(t,37),n)},s.d=!1;var rut;S(R1,"BKNodePlacer",1407),y(1635,1,{},jSe),s.d=0,S(R1,"NeighborhoodInformation",1635),y(1636,1,Zn,cje),s.ue=function(t,n){return sIt(this,c(t,46),c(n,46))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(R1,"NeighborhoodInformation/NeighborComparator",1636),y(808,1,{}),S(R1,"ThresholdStrategy",808),y(1763,808,{},$Ae),s.bg=function(t,n,i){return this.a.o==(Al(),Wl)?Ii:$i},s.cg=function(){},S(R1,"ThresholdStrategy/NullThresholdStrategy",1763),y(579,1,{579:1},DOe),s.c=!1,s.d=!1,S(R1,"ThresholdStrategy/Postprocessable",579),y(1764,808,{},KAe),s.bg=function(t,n,i){var r,o,u;return o=n==i,r=this.a.a[i.p]==n,o||r?(u=t,this.a.c==(gf(),ip)?(o&&(u=uH(this,n,!0)),!isNaN(u)&&!isFinite(u)&&r&&(u=uH(this,i,!1))):(o&&(u=uH(this,n,!0)),!isNaN(u)&&!isFinite(u)&&r&&(u=uH(this,i,!1))),u):t},s.cg=function(){for(var t,n,i,r,o;this.d.b!=0;)o=c(P6t(this.d),579),r=OYe(this,o),r.a&&(t=r.a,i=Be(this.a.f[this.a.g[o.b.p].p]),!(!i&&!Kr(t)&&t.c.i.c==t.d.i.c)&&(n=FUe(this,o),n||l2t(this.e,o)));for(;this.e.a.c.length!=0;)FUe(this,c(Wqe(this.e),579))},S(R1,"ThresholdStrategy/SimpleThresholdStrategy",1764),y(635,1,{635:1,246:1,234:1},ASe),s.Kf=function(){return rqe(this)},s.Xf=function(){return rqe(this)};var uW;S(rV,"EdgeRouterFactory",635),y(1458,1,Sc,SCe),s.Yf=function(t){return DNt(c(t,37))},s.pf=function(t,n){$$t(c(t,37),n)};var out,cut,sut,uut,aut,o0e,lut,fut;S(rV,"OrthogonalEdgeRouter",1458),y(1451,1,Sc,r7e),s.Yf=function(t){return n7t(c(t,37))},s.pf=function(t,n){cHt(this,c(t,37),n)};var hut,dut,gut,but,mj,put;S(rV,"PolylineEdgeRouter",1451),y(1452,1,yf,OSe),s.Lb=function(t){return _re(c(t,10))},s.Fb=function(t){return this===t},s.Mb=function(t){return _re(c(t,10))},S(rV,"PolylineEdgeRouter/1",1452),y(1809,1,Rn,DSe),s.Mb=function(t){return c(t,129).c==(cl(),z1)},S(gl,"HyperEdgeCycleDetector/lambda$0$Type",1809),y(1810,1,{},kSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$1$Type",1810),y(1811,1,Rn,RSe),s.Mb=function(t){return c(t,129).c==(cl(),z1)},S(gl,"HyperEdgeCycleDetector/lambda$2$Type",1811),y(1812,1,{},xSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$3$Type",1812),y(1813,1,{},LSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$4$Type",1813),y(1814,1,{},NSe),s.Ge=function(t){return c(t,129).d},S(gl,"HyperEdgeCycleDetector/lambda$5$Type",1814),y(112,1,{35:1,112:1},dI),s.wd=function(t){return uyt(this,c(t,112))},s.Fb=function(t){var n;return Q(t,112)?(n=c(t,112),this.g==n.g):!1},s.Hb=function(){return this.g},s.Ib=function(){var t,n,i,r;for(t=new lu("{"),r=new q(this.n);r.a"+this.b+" ("+v3t(this.c)+")"},s.d=0,S(gl,"HyperEdgeSegmentDependency",129),y(520,22,{3:1,35:1,22:1,520:1},UZ);var z1,Vw,wut=hn(gl,"HyperEdgeSegmentDependency/DependencyType",520,bn,c6t,MEt),mut;y(1815,1,{},sje),S(gl,"HyperEdgeSegmentSplitter",1815),y(1816,1,{},F9e),s.a=0,s.b=0,S(gl,"HyperEdgeSegmentSplitter/AreaRating",1816),y(329,1,{329:1},uB),s.a=0,s.b=0,s.c=0,S(gl,"HyperEdgeSegmentSplitter/FreeArea",329),y(1817,1,Zn,VSe),s.ue=function(t,n){return b_t(c(t,112),c(n,112))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(gl,"HyperEdgeSegmentSplitter/lambda$0$Type",1817),y(1818,1,Rt,Qxe),s.td=function(t){yMt(this.a,this.d,this.c,this.b,c(t,112))},s.b=0,S(gl,"HyperEdgeSegmentSplitter/lambda$1$Type",1818),y(1819,1,{},GSe),s.Kb=function(t){return new ht(null,new bt(c(t,112).e,16))},S(gl,"HyperEdgeSegmentSplitter/lambda$2$Type",1819),y(1820,1,{},USe),s.Kb=function(t){return new ht(null,new bt(c(t,112).j,16))},S(gl,"HyperEdgeSegmentSplitter/lambda$3$Type",1820),y(1821,1,{},WSe),s.Fe=function(t){return ge(Te(t))},S(gl,"HyperEdgeSegmentSplitter/lambda$4$Type",1821),y(655,1,{},DB),s.a=0,s.b=0,s.c=0,S(gl,"OrthogonalRoutingGenerator",655),y(1638,1,{},YSe),s.Kb=function(t){return new ht(null,new bt(c(t,112).e,16))},S(gl,"OrthogonalRoutingGenerator/lambda$0$Type",1638),y(1639,1,{},XSe),s.Kb=function(t){return new ht(null,new bt(c(t,112).j,16))},S(gl,"OrthogonalRoutingGenerator/lambda$1$Type",1639),y(661,1,{}),S(oV,"BaseRoutingDirectionStrategy",661),y(1807,661,{},qAe),s.dg=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;if(!(t.r&&!t.q))for(v=n+t.o*i,p=new q(t.n);p.aEf&&(u=v,o=t,r=new $e(A,u),Cn(a.a,r),O0(this,a,o,r,!1),D=t.r,D&&(L=ge(Te(hl(D.e,0))),r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1),u=n+D.o*i,o=D,r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1)),r=new $e(z,u),Cn(a.a,r),O0(this,a,o,r,!1)))},s.eg=function(t){return t.i.n.a+t.n.a+t.a.a},s.fg=function(){return Ie(),Yt},s.gg=function(){return Ie(),_t},S(oV,"NorthToSouthRoutingStrategy",1807),y(1808,661,{},HAe),s.dg=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;if(!(t.r&&!t.q))for(v=n-t.o*i,p=new q(t.n);p.aEf&&(u=v,o=t,r=new $e(A,u),Cn(a.a,r),O0(this,a,o,r,!1),D=t.r,D&&(L=ge(Te(hl(D.e,0))),r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1),u=n-D.o*i,o=D,r=new $e(L,u),Cn(a.a,r),O0(this,a,o,r,!1)),r=new $e(z,u),Cn(a.a,r),O0(this,a,o,r,!1)))},s.eg=function(t){return t.i.n.a+t.n.a+t.a.a},s.fg=function(){return Ie(),_t},s.gg=function(){return Ie(),Yt},S(oV,"SouthToNorthRoutingStrategy",1808),y(1806,661,{},zAe),s.dg=function(t,n,i){var r,o,u,a,l,d,p,v,A,D,L,N,z;if(!(t.r&&!t.q))for(v=n+t.o*i,p=new q(t.n);p.aEf&&(u=v,o=t,r=new $e(u,A),Cn(a.a,r),O0(this,a,o,r,!0),D=t.r,D&&(L=ge(Te(hl(D.e,0))),r=new $e(u,L),Cn(a.a,r),O0(this,a,o,r,!0),u=n+D.o*i,o=D,r=new $e(u,L),Cn(a.a,r),O0(this,a,o,r,!0)),r=new $e(u,z),Cn(a.a,r),O0(this,a,o,r,!0)))},s.eg=function(t){return t.i.n.b+t.n.b+t.a.b},s.fg=function(){return Ie(),jt},s.gg=function(){return Ie(),Mt},S(oV,"WestToEastRoutingStrategy",1806),y(813,1,{},due),s.Ib=function(){return C1(this.a)},s.b=0,s.c=!1,s.d=!1,s.f=0,S(Sw,"NubSpline",813),y(407,1,{407:1},dWe,DLe),S(Sw,"NubSpline/PolarCP",407),y(1453,1,Sc,nVe),s.Yf=function(t){return V7t(c(t,37))},s.pf=function(t,n){MHt(this,c(t,37),n)};var vut,yut,_ut,Eut,Sut;S(Sw,"SplineEdgeRouter",1453),y(268,1,{268:1},aO),s.Ib=function(){return this.a+" ->("+this.c+") "+this.b},s.c=0,S(Sw,"SplineEdgeRouter/Dependency",268),y(455,22,{3:1,35:1,22:1,455:1},WZ);var V1,$v,Put=hn(Sw,"SplineEdgeRouter/SideToProcess",455,bn,a6t,CEt),Mut;y(1454,1,Rn,HSe),s.Mb=function(t){return w6(),!c(t,128).o},S(Sw,"SplineEdgeRouter/lambda$0$Type",1454),y(1455,1,{},qSe),s.Ge=function(t){return w6(),c(t,128).v+1},S(Sw,"SplineEdgeRouter/lambda$1$Type",1455),y(1456,1,Rt,kOe),s.td=function(t){L4t(this.a,this.b,c(t,46))},S(Sw,"SplineEdgeRouter/lambda$2$Type",1456),y(1457,1,Rt,ROe),s.td=function(t){N4t(this.a,this.b,c(t,46))},S(Sw,"SplineEdgeRouter/lambda$3$Type",1457),y(128,1,{35:1,128:1},AGe,vue),s.wd=function(t){return ayt(this,c(t,128))},s.b=0,s.e=!1,s.f=0,s.g=0,s.j=!1,s.k=!1,s.n=0,s.o=!1,s.p=!1,s.q=!1,s.s=0,s.u=0,s.v=0,s.F=0,S(Sw,"SplineSegment",128),y(459,1,{459:1},zSe),s.a=0,s.b=!1,s.c=!1,s.d=!1,s.e=!1,s.f=0,S(Sw,"SplineSegment/EdgeInformation",459),y(1234,1,{},FSe),S(H6,gae,1234),y(1235,1,Zn,BSe),s.ue=function(t,n){return vRt(c(t,135),c(n,135))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(H6,gQe,1235),y(1233,1,{},e8e),S(H6,"MrTree",1233),y(393,22,{3:1,35:1,22:1,393:1,246:1,234:1},T9),s.Kf=function(){return tUe(this)},s.Xf=function(){return tUe(this)};var ZR,LP,vj,NP,c0e=hn(H6,"TreeLayoutPhases",393,bn,tMt,IEt),Cut;y(1130,209,rb,yke),s.Ze=function(t,n){var i,r,o,u,a,l,d;for(Be(Fe(Ke(t,(A0(),h0e))))||V8((i=new zM((Ap(),new Ip(t))),i)),a=(l=new lO,Mo(l,t),pe(l,(ic(),$P),t),d=new en,lBt(t,l,d),IBt(t,l,d),l),u=yBt(this.a,a),o=new q(u);o.a"+Q8(this.c):"e_"+fi(this)},S(z6,"TEdge",188),y(135,134,{3:1,135:1,94:1,134:1},lO),s.Ib=function(){var t,n,i,r,o;for(o=null,r=Mn(this.b,0);r.b!=r.d.c;)i=c(Pn(r),86),o+=(i.c==null||i.c.length==0?"n_"+i.g:"n_"+i.c)+` -`;for(n=Mn(this.a,0);n.b!=n.d.c;)t=c(Pn(n),188),o+=(t.b&&t.c?Q8(t.b)+"->"+Q8(t.c):"e_"+fi(t))+` -`;return o};var Ozt=S(z6,"TGraph",135);y(633,502,{3:1,502:1,633:1,94:1,134:1}),S(z6,"TShape",633),y(86,633,{3:1,502:1,86:1,633:1,94:1,134:1},uK),s.Ib=function(){return Q8(this)};var Dzt=S(z6,"TNode",86);y(255,1,Yf,t1),s.Jc=function(t){Mr(this,t)},s.Kc=function(){var t;return t=Mn(this.a.d,0),new Dy(t)},S(z6,"TNode/2",255),y(358,1,dr,Dy),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(Pn(this.a),188).c},s.Ob=function(){return r9(this.a)},s.Qb=function(){MO(this.a)},S(z6,"TNode/2/1",358),y(1840,1,Ti,vke),s.pf=function(t,n){HBt(this,c(t,135),n)},S(N2,"FanProcessor",1840),y(327,22,{3:1,35:1,22:1,327:1,234:1},t5),s.Kf=function(){switch(this.g){case 0:return new o9e;case 1:return new vke;case 2:return new ZSe;case 3:return new JSe;case 4:return new t5e;case 5:return new n5e;default:throw V(new St(Mz+(this.f!=null?this.f:""+this.g)))}};var aW,lW,fW,hW,dW,ex,Iut=hn(N2,Mae,327,bn,wCt,TEt),Tut;y(1843,1,Ti,JSe),s.pf=function(t,n){Mxt(this,c(t,135),n)},s.a=0,S(N2,"LevelHeightProcessor",1843),y(1844,1,Yf,QSe),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return st(),s_(),n4},S(N2,"LevelHeightProcessor/1",1844),y(1841,1,Ti,ZSe),s.pf=function(t,n){Dkt(this,c(t,135),n)},s.a=0,S(N2,"NeighborsProcessor",1841),y(1842,1,Yf,e5e),s.Jc=function(t){Mr(this,t)},s.Kc=function(){return st(),s_(),n4},S(N2,"NeighborsProcessor/1",1842),y(1845,1,Ti,t5e),s.pf=function(t,n){Pxt(this,c(t,135),n)},s.a=0,S(N2,"NodePositionProcessor",1845),y(1839,1,Ti,o9e),s.pf=function(t,n){X$t(this,c(t,135))},S(N2,"RootProcessor",1839),y(1846,1,Ti,n5e),s.pf=function(t,n){oAt(c(t,135))},S(N2,"Untreeifyer",1846);var yj,FP,jut,gW,tx,BP,bW,nx,ix,C4,$P,rx,Ad,s0e,Aut,pW,Gw,wW,u0e;y(851,1,ca,_Ce),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,zle),""),"Weighting of Nodes"),"Which weighting to use when computing a node order."),l0e),(yd(),Ai)),w0e),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Vle),""),"Search Order"),"Which search order to use when computing a spanning tree."),a0e),Ai),v0e),nt(Tt)))),IXe((new yCe,t))};var Out,a0e,Dut,l0e;S(WD,"MrTreeMetaDataProvider",851),y(994,1,ca,yCe),s.Qe=function(t){IXe(t)};var kut,f0e,Rut,xut,Lut,Nut,h0e,Fut,d0e,But,ox,g0e,$ut,b0e,Kut;S(WD,"MrTreeOptions",994),y(995,1,{},i5e),s.$e=function(){var t;return t=new yke,t},s._e=function(t){},S(WD,"MrTreeOptions/MrtreeFactory",995),y(480,22,{3:1,35:1,22:1,480:1},YZ);var mW,p0e,w0e=hn(WD,"OrderWeighting",480,bn,f6t,jEt),qut;y(425,22,{3:1,35:1,22:1,425:1},XZ);var m0e,vW,v0e=hn(WD,"TreeifyingOrder",425,bn,l6t,OEt),Hut;y(1459,1,Sc,fCe),s.Yf=function(t){return c(t,135),zut},s.pf=function(t,n){rTt(this,c(t,135),n)};var zut;S("org.eclipse.elk.alg.mrtree.p1treeify","DFSTreeifyer",1459),y(1460,1,Sc,hCe),s.Yf=function(t){return c(t,135),Vut},s.pf=function(t,n){qkt(this,c(t,135),n)};var Vut;S("org.eclipse.elk.alg.mrtree.p2order","NodeOrderer",1460),y(1461,1,Sc,lCe),s.Yf=function(t){return c(t,135),Gut},s.pf=function(t,n){oFt(this,c(t,135),n)},s.a=0;var Gut;S("org.eclipse.elk.alg.mrtree.p3place","NodePlacer",1461),y(1462,1,Sc,dCe),s.Yf=function(t){return c(t,135),Uut},s.pf=function(t,n){OOt(c(t,135),n)};var Uut;S("org.eclipse.elk.alg.mrtree.p4route","EdgeRouter",1462);var KP;y(495,22,{3:1,35:1,22:1,495:1,246:1,234:1},JZ),s.Kf=function(){return kHe(this)},s.Xf=function(){return kHe(this)};var cx,I4,y0e=hn(Gle,"RadialLayoutPhases",495,bn,h6t,AEt),Wut;y(1131,209,rb,Z9e),s.Ze=function(t,n){var i,r,o,u,a,l;if(i=LGe(this,t),Wt(n,"Radial layout",i.c.length),Be(Fe(Ke(t,(ow(),A0e))))||V8((r=new zM((Ap(),new Ip(t))),r)),l=W7t(t),ao(t,(w5(),KP),l),!l)throw V(new St("The given graph is not a tree!"));for(o=ge(Te(Ke(t,ax))),o==0&&(o=XGe(t)),ao(t,ax,o),a=new q(LGe(this,t));a.a0&&rHe((fn(n-1,t.length),t.charCodeAt(n-1)),MQe);)--n;if(r>=n)throw V(new St("The given string does not contain any numbers."));if(o=gw(t.substr(r,n-r),`,|;|\r| -`),o.length!=2)throw V(new St("Exactly two numbers are expected, "+o.length+" were found."));try{this.a=aw(uw(o[0])),this.b=aw(uw(o[1]))}catch(u){throw u=gi(u),Q(u,127)?(i=u,V(new St(CQe+i))):V(u)}},s.Ib=function(){return"("+this.a+","+this.b+")"},s.a=0,s.b=0;var ir=S(CT,"KVector",8);y(74,68,{3:1,4:1,20:1,28:1,52:1,14:1,68:1,15:1,74:1,414:1},ds,n9,qDe),s.Pc=function(){return wjt(this)},s.Jf=function(t){var n,i,r,o,u,a;r=gw(t,`,|;|\\(|\\)|\\[|\\]|\\{|\\}| | | -`),na(this);try{for(i=0,u=0,o=0,a=0;i0&&(u%2==0?o=aw(r[i]):a=aw(r[i]),u>0&&u%2!=0&&Cn(this,new $e(o,a)),++u),++i}catch(l){throw l=gi(l),Q(l,127)?(n=l,V(new St("The given string does not match the expected format for vectors."+n))):V(l)}},s.Ib=function(){var t,n,i;for(t=new lu("("),n=Mn(this,0);n.b!=n.d.c;)i=c(Pn(n),8),wn(t,i.a+","+i.b),n.b!=n.d.c&&(t.a+="; ");return(t.a+=")",t).a};var jpe=S(CT,"KVectorChain",74);y(248,22,{3:1,35:1,22:1,248:1},n5);var $W,px,wx,Pj,Mj,mx,Ape=hn(ua,"Alignment",248,bn,fCt,WEt),dlt;y(979,1,ca,ICe),s.Qe=function(t){EYe(t)};var Ope,KW,glt,Dpe,kpe,blt,Rpe,plt,wlt,xpe,Lpe,mlt;S(ua,"BoxLayouterOptions",979),y(980,1,{},X5e),s.$e=function(){var t;return t=new r6e,t},s._e=function(t){},S(ua,"BoxLayouterOptions/BoxFactory",980),y(291,22,{3:1,35:1,22:1,291:1},i5);var Cj,qW,Ij,Tj,jj,HW,zW=hn(ua,"ContentAlignment",291,bn,lCt,YEt),vlt;y(684,1,ca,VJ),s.Qe=function(t){Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,_Ze),""),"Layout Algorithm"),"Select a specific layout algorithm."),(yd(),T4)),Re),nt((fl(),Tt))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,EZe),""),"Resolved Layout Algorithm"),"Meta data associated with the selected algorithm."),Yl),xzt),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ele),""),"Alignment"),"Alignment of the selected node relative to other nodes; the exact meaning depends on the used algorithm."),Npe),Ai),Ape),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,D2),""),"Aspect Ratio"),"The desired aspect ratio of the drawing, that is the quotient of width by height."),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,pfe),""),"Bend Points"),"A fixed list of bend points for the edge. This is used by the 'Fixed Layout' algorithm to specify a pre-defined routing for an edge. The vector chain must include the source point, any bend points, and the target point, so it must have at least two points."),Yl),jpe),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,zD),""),"Content Alignment"),"Specifies how the content of a node are aligned. Each node can individually control the alignment of its contents. I.e. if a node should be aligned top left in its parent node, the parent node should specify that option."),Bpe),t3),zW),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,DT),""),"Debug Mode"),"Whether additional debug information shall be generated."),(Pt(),!1)),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Mle),""),oae),"Overall direction of edges: horizontal (right / left) or vertical (down / up)."),$pe),Ai),WP),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,AT),""),"Edge Routing"),"What kind of edge routing style should be applied for the content of a parent node. Algorithms may also set this option to single edges in order to mark them as splines. The bend point list of edges with this option set to SPLINES must be interpreted as control points for a piecewise cubic spline."),Hpe),Ai),iY),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,XD),""),"Expand Nodes"),"If active, nodes are expanded to fill the area of their parent."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,HD),""),"Hierarchy Handling"),"Determines whether separate layout runs are triggered for different compound nodes in a hierarchical graph. Setting a node's hierarchy handling to `INCLUDE_CHILDREN` will lay out that node and all of its descendants in a single layout run, until a descendant is encountered which has its hierarchy handling set to `SEPARATE_CHILDREN`. In general, `SEPARATE_CHILDREN` will ensure that a new layout run is triggered for a node with that setting. Including multiple levels of hierarchy in a single layout run may allow cross-hierarchical edges to be laid out properly. If the root node is set to `INHERIT` (or not set at all), the default behavior is `SEPARATE_CHILDREN`."),Upe),Ai),Dwe),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,N0),""),"Padding"),"The padding to be left to a parent element's border when placing child elements. This can also serve as an output option of a layout algorithm if node size calculation is setup appropriately."),iwe),Yl),Fde),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,PT),""),"Interactive"),"Whether the algorithm should be run in interactive mode for the content of a parent node. What this means exactly depends on how the specific algorithm interprets this option. Usually in the interactive mode algorithms try to modify the current layout as little as possible."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,iV),""),"interactive Layout"),"Whether the graph should be changeable interactively and by setting constraints"),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,N6),""),"Omit Node Micro Layout"),"Node micro layout comprises the computation of node dimensions (if requested), the placement of ports and their labels, and the placement of node labels. The functionality is implemented independent of any specific layout algorithm and shouldn't have any negative impact on the layout algorithm's performance itself. Yet, if any unforeseen behavior occurs, this option allows to deactivate the micro layout."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ez),""),"Port Constraints"),"Defines constraints of the position of the ports of a node."),uwe),Ai),xwe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,VD),""),"Position"),"The position of a node, port, or label. This is used by the 'Fixed Layout' algorithm to specify a pre-defined position."),Yl),ir),ui(ar,U(G(Dd,1),_e,175,0,[_b,Od]))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,ST),""),"Priority"),"Defines the priority of an object; its meaning depends on the specific layout algorithm and the context where it is used."),oc),$r),ui(ar,U(G(Dd,1),_e,175,0,[kf]))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,MD),""),"Randomization Seed"),"Seed used for pseudo-random number generators to control the layout algorithm. If the value is 0, the seed shall be determined pseudo-randomly (e.g. from the system time)."),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,L6),""),"Separate Connected Components"),"Whether each connected component should be processed separately."),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Rle),""),"Junction Points"),"This option is not used as option, but as output of the layout algorithms. It is attached to edges and determines the points where junction symbols should be drawn in order to represent hyperedges with orthogonal routing. Whether such points are computed depends on the chosen layout algorithm and edge routing style. The points are put into the vector chain with no specific order."),Ype),Yl),jpe),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Nle),""),"Comment Box"),"Whether the node should be regarded as a comment box instead of a regular node. In that case its placement should be similar to how labels are handled. Any edges incident to a comment box specify to which graph elements the comment is related."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Fle),""),"Hypernode"),"Whether the node should be handled as a hypernode."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,azt),""),"Label Manager"),"Label managers can shorten labels upon a layout algorithm's request."),Yl),$zt),ui(Tt,U(G(Dd,1),_e,175,0,[Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,$le),""),"Margins"),"Margins define additional space around the actual bounds of a graph element. For instance, ports or labels being placed on the outside of a node's border might introduce such a margin. The margin is used to guarantee non-overlap of other graph elements with those ports or labels."),Xpe),Yl),Nde),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,yle),""),"No Layout"),"No layout is done for the associated element. This is used to mark parts of a diagram to avoid their inclusion in the layout graph, or to mark parts of the layout graph to prevent layout engines from processing them. If you wish to exclude the contents of a compound node from automatic layout, while the node itself is still considered on its own layer, use the 'Fixed Layout' algorithm for that node."),!1),Dr),Qi),ui(ar,U(G(Dd,1),_e,175,0,[kf,_b,Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,SZe),""),"Scale Factor"),"The scaling factor to be applied to the corresponding node in recursive layout. It causes the corresponding node's size to be adjusted, and its ports and labels to be sized and placed accordingly after the layout of that node has been determined (and before the node itself and its siblings are arranged). The scaling is not reverted afterwards, so the resulting layout graph contains the adjusted size and position data. This option is currently not supported if 'Layout Hierarchy' is set."),1),To),mr),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,PZe),""),"Animate"),"Whether the shift from the old layout to the new computed layout shall be animated."),!0),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,MZe),""),"Animation Time Factor"),"Factor for computation of animation time. The higher the value, the longer the animation time. If the value is 0, the resulting time is always equal to the minimum defined by 'Minimal Animation Time'."),Ce(100)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,CZe),""),"Layout Ancestors"),"Whether the hierarchy levels on the path from the selected element to the root of the diagram shall be included in the layout process."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,IZe),""),"Maximal Animation Time"),"The maximal time for animations, in milliseconds."),Ce(4e3)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,TZe),""),"Minimal Animation Time"),"The minimal time for animations, in milliseconds."),Ce(400)),oc),$r),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jZe),""),"Progress Bar"),"Whether a progress bar shall be displayed during layout computations."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,AZe),""),"Validate Graph"),"Whether the graph shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,OZe),""),"Validate Options"),"Whether layout options shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!0),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,DZe),""),"Zoom to Fit"),"Whether the zoom level shall be set to view the whole diagram after layout."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,bfe),"box"),"Box Layout Mode"),"Configures the packing mode used by the {@link BoxLayoutProvider}. If SIMPLE is not required (neither priorities are used nor the interactive mode), GROUP_DEC can improve the packing and decrease the area. GROUP_MIXED and GROUP_INC may, in very specific scenarios, work better."),Fpe),Ai),Kwe),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ule),Hl),"Comment Comment Spacing"),"Spacing to be preserved between a comment box and other comment boxes connected to the same node. The space left between comment boxes of different nodes is controlled by the node-node spacing."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ale),Hl),"Comment Node Spacing"),"Spacing to be preserved between a node and its connected comment boxes. The space left between a node and the comments of another node is controlled by the node-node spacing."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,pz),Hl),"Components Spacing"),"Spacing to be preserved between pairs of connected components. This option is only relevant if 'separateConnectedComponents' is activated."),20),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,lle),Hl),"Edge Spacing"),"Spacing to be preserved between any two edges. Note that while this can somewhat easily be satisfied for the segments of orthogonally drawn edges, it is harder for general polylines or splines."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_z),Hl),"Edge Label Spacing"),"The minimal distance to be preserved between a label and the edge it is associated with. Note that the placement of a label is influenced by the 'edgelabels.placement' option."),2),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,fle),Hl),"Edge Node Spacing"),"Spacing to be preserved between nodes and edges."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,hle),Hl),"Label Spacing"),"Determines the amount of space to be left between two labels of the same graph element."),0),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ble),Hl),"Label Node Spacing"),"Spacing to be preserved between labels and the border of node they are associated with. Note that the placement of a label is influenced by the 'nodelabels.placement' option."),5),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,dle),Hl),"Horizontal spacing between Label and Port"),"Horizontal spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,gle),Hl),"Vertical spacing between Label and Port"),"Vertical spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_w),Hl),"Node Spacing"),"The minimal distance to be preserved between each two nodes."),20),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,ple),Hl),"Node Self Loop Spacing"),"Spacing to be preserved between a node and its self loops."),10),To),mr),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,wle),Hl),"Port Spacing"),"Spacing between pairs of ports of the same node."),10),To),mr),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,mle),Hl),"Individual Spacing"),"Allows to specify individual spacing values for graph elements that shall be different from the value specified for the element's parent."),Yl),eft),ui(ar,U(G(Dd,1),_e,175,0,[kf,_b,Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Kle),Hl),"Additional Port Space"),"Additional space around the sets of ports on each node side. For each side of a node, this option can reserve additional space before and after the ports on each side. For example, a top spacing of 20 makes sure that the first port on the western and eastern side is 20 units away from the northern border."),mwe),Yl),Nde),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,nV),xZe),"Layout Partition"),"Partition to which the node belongs. This requires Layout Partitioning to be active. Nodes with lower partition IDs will appear to the left of nodes with higher partition IDs (assuming a left-to-right layout direction)."),oc),$r),ui(Tt,U(G(Dd,1),_e,175,0,[ar]))))),pr(t,nV,tV,Ilt),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,tV),xZe),"Layout Partitioning"),"Whether to activate partitioned layout. This will allow to group nodes through the Layout Partition option. a pair of nodes with different partition indices is then placed such that the node with lower index is placed to the left of the other node (with left-to-right layout direction). Depending on the layout algorithm, this may only be guaranteed to work if all nodes have a layout partition configured, or at least if edges that cross partitions are not part of a partition-crossing cycle."),rwe),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Cle),LZe),"Node Label Padding"),"Define padding for node labels that are placed inside of a node."),Qpe),Yl),Fde),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,qE),LZe),"Node Label Placement"),"Hints for where node labels are to be placed; if empty, the node label's position is not modified."),Zpe),t3),ro),ui(ar,U(G(Dd,1),_e,175,0,[Od]))))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,jle),QD),"Port Alignment"),"Defines the default port distribution for a node. May be overridden for each side individually."),cwe),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Ale),QD),"Port Alignment (North)"),"Defines how ports on the northern side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Ole),QD),"Port Alignment (South)"),"Defines how ports on the southern side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Dle),QD),"Port Alignment (West)"),"Defines how ports on the western side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,kle),QD),"Port Alignment (East)"),"Defines how ports on the eastern side are placed, overriding the node's general port alignment."),Ai),QP),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,gv),EV),"Node Size Constraints"),"What should be taken into account when calculating a node's size. Empty size constraints specify that a node's size is already fixed and should not be changed."),ewe),t3),tM),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,k2),EV),"Node Size Options"),"Options modifying the behavior of the size constraints set on a node. Each member of the set specifies something that should be taken into account when calculating node sizes. The empty set corresponds to no further modifications."),nwe),t3),Nwe),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,R2),EV),"Node Size Minimum"),"The minimal size to which a node can be reduced."),twe),Yl),ir),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,eV),EV),"Fixed Graph Size"),"By default, the fixed layout provider will enlarge a graph until it is large enough to contain its children. If this option is set, it won't do so."),!1),Dr),Qi),nt(Tt)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,xle),Zz),"Edge Label Placement"),"Gives a hint on where to put edge labels."),Kpe),Ai),ywe),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,CD),Zz),"Inline Edge Labels"),"If true, an edge label is placed directly on its edge. May only apply to center edge labels. This kind of label placement is only advisable if the label's rendering is such that it is not crossed by its edge and thus stays legible."),!1),Dr),Qi),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,lzt),"font"),"Font Name"),"Font name used for a label."),T4),Re),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,kZe),"font"),"Font Size"),"Font size used for a label."),oc),$r),nt(Od)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Ble),SV),"Port Anchor Offset"),"The offset to the port position where connections shall be attached."),Yl),ir),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,Lle),SV),"Port Index"),"The index of a port in the fixed order around a node. The order is assumed as clockwise, starting with the leftmost port on the top side. This option must be set if 'Port Constraints' is set to FIXED_ORDER and no specific positions are given for the ports. Additionally, the option 'Port Side' must be defined in this case."),oc),$r),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,_le),SV),"Port Side"),"The side of a node on which a port is situated. This option must be set if 'Port Constraints' is set to FIXED_SIDE or FIXED_ORDER and no specific positions are given for the ports."),fwe),Ai),Gr),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(Ge(Ye(Ue(We(new He,vle),SV),"Port Border Offset"),"The offset of ports on the node border. With a positive offset the port is moved outside of the node, while with a negative offset the port is moved towards the inside. An offset of 0 means that the port is placed directly on the node border, i.e. if the port side is north, the port's south border touches the nodes's north border; if the port side is east, the port's west border touches the nodes's east border; if the port side is south, the port's north border touches the node's south border; if the port side is west, the port's east border touches the node's west border."),To),mr),nt(_b)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,HE),wfe),"Port Label Placement"),"Decides on a placement method for port labels; if empty, the node label's position is not modified."),awe),t3),Cx),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ile),wfe),"Port Labels Next to Port"),"Use 'portLabels.placement': NEXT_TO_PORT_OF_POSSIBLE."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Tle),wfe),"Treat Port Labels as Group"),"If this option is true (default), the labels of a port will be treated as a group when it comes to centering them next to their port. If this option is false, only the first label will be centered next to the port, with the others being placed below. This only applies to labels of eastern and western ports and will have no effect if labels are not placed next to their port."),!0),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Sle),NZe),"Activate Inside Self Loops"),"Whether this node allows to route self loops inside of it instead of around it. If set to true, this will make the node a compound node if it isn't already, and will require the layout algorithm to support compound nodes with hierarchical ports."),!1),Dr),Qi),nt(ar)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,Ple),NZe),"Inside Self Loop"),"Whether a self loop should be routed inside a node instead of around that node."),!1),Dr),Qi),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,wz),"edge"),"Edge Thickness"),"The thickness of an edge. This is a hint on the line width used to draw an edge, possibly requiring more space to be reserved for it."),1),To),mr),nt(kf)))),Ze(t,new ze(Je(Xe(Qe(lt(Ge(Ye(Ue(We(new He,RZe),"edge"),"Edge Type"),"The type of an edge. This is usually used for UML class diagrams, where associations must be handled differently from generalizations."),Vpe),Ai),Cwe),nt(kf)))),VS(t,new i2(BS(i_(n_(new Ay,kt),"Layered"),'The layer-based method was introduced by Sugiyama, Tagawa and Toda in 1981. It emphasizes the direction of edges by pointing as many edges as possible into the same direction. The nodes are arranged in layers, which are sometimes called "hierarchies", and then reordered such that the number of edge crossings is minimized. Afterwards, concrete coordinates are computed for the nodes and edge bend points.'))),VS(t,new i2(BS(i_(n_(new Ay,"org.eclipse.elk.orthogonal"),"Orthogonal"),`Orthogonal methods that follow the "topology-shape-metrics" approach by Batini, Nardelli and Tamassia '86. The first phase determines the topology of the drawing by applying a planarization technique, which results in a planar representation of the graph. The orthogonal shape is computed in the second phase, which aims at minimizing the number of edge bends, and is called orthogonalization. The third phase leads to concrete coordinates for nodes and edge bend points by applying a compaction method, thus defining the metrics.`))),VS(t,new i2(BS(i_(n_(new Ay,_u),"Force"),"Layout algorithms that follow physical analogies by simulating a system of attractive and repulsive forces. The first successful method of this kind was proposed by Eades in 1984."))),VS(t,new i2(BS(i_(n_(new Ay,"org.eclipse.elk.circle"),"Circle"),"Circular layout algorithms emphasize cycles or biconnected components of a graph by arranging them in circles. This is useful if a drawing is desired where such components are clearly grouped, or where cycles are shown as prominent OPTIONS of the graph."))),VS(t,new i2(BS(i_(n_(new Ay,sZe),"Tree"),"Specialized layout methods for trees, i.e. acyclic graphs. The regular structure of graphs that have no undirected cycles can be emphasized using an algorithm of this type."))),VS(t,new i2(BS(i_(n_(new Ay,"org.eclipse.elk.planar"),"Planar"),"Algorithms that require a planar or upward planar graph. Most of these algorithms are theoretically interesting, but not practically usable."))),VS(t,new i2(BS(i_(n_(new Ay,Cf),"Radial"),"Radial layout algorithms usually position the nodes of the graph on concentric circles."))),sYe((new TCe,t)),EYe((new ICe,t)),NWe((new jCe,t))};var GP,ylt,Npe,n3,_lt,Elt,Fpe,Slt,vx,Bpe,Aj,rp,$pe,VW,GW,Kpe,qpe,Hpe,zpe,Vpe,Gpe,qv,Upe,Plt,Oj,UW,yx,Wpe,Hv,Ype,Dj,Xpe,Jpe,Qpe,zv,Zpe,Eb,ewe,_x,Vv,twe,G1,nwe,Ex,kj,Sb,iwe,Mlt,rwe,Clt,Ilt,owe,cwe,WW,YW,XW,JW,swe,zs,UP,uwe,QW,ZW,Uw,awe,lwe,Gv,fwe,i3,Sx,eY,j4,Tlt,tY,jlt,Alt,hwe,Olt,dwe,Dlt,r3,gwe,Px,bwe,pwe,Pb,klt,wwe,mwe,vwe;S(ua,"CoreOptions",684),y(103,22,{3:1,35:1,22:1,103:1},dC);var Vh,ga,Va,ih,Gh,WP=hn(ua,oae,103,bn,kMt,QEt),Rlt;y(272,22,{3:1,35:1,22:1,272:1},jF);var A4,Ww,O4,ywe=hn(ua,"EdgeLabelPlacement",272,bn,dPt,ZEt),xlt;y(218,22,{3:1,35:1,22:1,218:1},A9);var D4,Rj,o3,nY,iY=hn(ua,"EdgeRouting",218,bn,oMt,e4t),Llt;y(312,22,{3:1,35:1,22:1,312:1},r5);var _we,Ewe,Swe,Pwe,rY,Mwe,Cwe=hn(ua,"EdgeType",312,bn,vCt,t4t),Nlt;y(977,1,ca,TCe),s.Qe=function(t){sYe(t)};var Iwe,Twe,jwe,Awe,Flt,Owe,YP;S(ua,"FixedLayouterOptions",977),y(978,1,{},a6e),s.$e=function(){var t;return t=new n6e,t},s._e=function(t){},S(ua,"FixedLayouterOptions/FixedFactory",978),y(334,22,{3:1,35:1,22:1,334:1},AF);var kd,Mx,XP,Dwe=hn(ua,"HierarchyHandling",334,bn,hPt,n4t),Blt;y(285,22,{3:1,35:1,22:1,285:1},O9);var rh,U1,xj,Lj,$lt=hn(ua,"LabelSide",285,bn,rMt,i4t),Klt;y(93,22,{3:1,35:1,22:1,93:1},Mm);var Uh,Ga,ba,Ua,Mu,Wa,pa,oh,Ya,ro=hn(ua,"NodeLabelPlacement",93,bn,EIt,r4t),qlt;y(249,22,{3:1,35:1,22:1,249:1},gC);var kwe,JP,W1,Rwe,Nj,QP=hn(ua,"PortAlignment",249,bn,RMt,o4t),Hlt;y(98,22,{3:1,35:1,22:1,98:1},o5);var Mb,Ic,ch,k4,Xl,Y1,xwe=hn(ua,"PortConstraints",98,bn,nCt,c4t),zlt;y(273,22,{3:1,35:1,22:1,273:1},c5);var ZP,eM,Wh,Fj,X1,c3,Cx=hn(ua,"PortLabelPlacement",273,bn,mCt,s4t),Vlt;y(61,22,{3:1,35:1,22:1,61:1},bC);var jt,_t,Uu,Wu,os,Vc,Jl,Xa,Ds,Ss,Tc,ks,cs,ss,Ja,Cu,Iu,wa,Yt,Vo,Mt,Gr=hn(ua,"PortSide",61,bn,AMt,l4t),Glt;y(981,1,ca,jCe),s.Qe=function(t){NWe(t)};var Ult,Wlt,Lwe,Ylt,Xlt;S(ua,"RandomLayouterOptions",981),y(982,1,{},l6e),s.$e=function(){var t;return t=new d6e,t},s._e=function(t){},S(ua,"RandomLayouterOptions/RandomFactory",982),y(374,22,{3:1,35:1,22:1,374:1},D9);var Yw,Bj,$j,Cb,tM=hn(ua,"SizeConstraint",374,bn,iMt,u4t),Jlt;y(259,22,{3:1,35:1,22:1,259:1},Cm);var Kj,Ix,R4,oY,qj,nM,Tx,jx,Ax,Nwe=hn(ua,"SizeOptions",259,bn,jIt,a4t),Qlt;y(370,1,{1949:1},Z3),s.b=!1,s.c=0,s.d=-1,s.e=null,s.f=null,s.g=-1,s.j=!1,s.k=!1,s.n=!1,s.o=0,s.q=0,s.r=0,S(fc,"BasicProgressMonitor",370),y(972,209,rb,r6e),s.Ze=function(t,n){var i,r,o,u,a,l,d,p,v;Wt(n,"Box layout",2),o=WM(Te(Ke(t,(N7(),mlt)))),u=c(Ke(t,wlt),116),i=Be(Fe(Ke(t,Dpe))),r=Be(Fe(Ke(t,kpe))),c(Ke(t,KW),311).g===0?(a=(l=new ps((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a)),st(),cr(l,new vje(r)),l),d=Qce(t),p=Te(Ke(t,Ope)),(p==null||(yt(p),p<=0))&&(p=1.3),v=gHt(a,o,u,d.a,d.b,i,(yt(p),p)),k0(t,v.a,v.b,!1,!0)):lKt(t,o,u,i),qt(n)},S(fc,"BoxLayoutProvider",972),y(973,1,Zn,vje),s.ue=function(t,n){return DLt(this,c(t,33),c(n,33))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},s.a=!1,S(fc,"BoxLayoutProvider/1",973),y(157,1,{157:1},TO,KDe),s.Ib=function(){return this.c?Jse(this.c):C1(this.b)},S(fc,"BoxLayoutProvider/Group",157),y(311,22,{3:1,35:1,22:1,311:1},k9);var Fwe,Bwe,$we,cY,Kwe=hn(fc,"BoxLayoutProvider/PackingMode",311,bn,cMt,f4t),Zlt;y(974,1,Zn,o6e),s.ue=function(t,n){return x5t(c(t,157),c(n,157))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(fc,"BoxLayoutProvider/lambda$0$Type",974),y(975,1,Zn,c6e),s.ue=function(t,n){return T5t(c(t,157),c(n,157))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(fc,"BoxLayoutProvider/lambda$1$Type",975),y(976,1,Zn,s6e),s.ue=function(t,n){return j5t(c(t,157),c(n,157))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(fc,"BoxLayoutProvider/lambda$2$Type",976),y(1365,1,{831:1},u6e),s.qg=function(t,n){return g9(),!Q(n,160)||J9e((d2(),c(t,160)),n)},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$0$Type",1365),y(1366,1,Rt,yje),s.td=function(t){vjt(this.a,c(t,146))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$1$Type",1366),y(1367,1,Rt,i6e),s.td=function(t){c(t,94),g9()},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$2$Type",1367),y(1371,1,Rt,_je),s.td=function(t){zIt(this.a,c(t,94))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$3$Type",1371),y(1369,1,Rn,NOe),s.Mb=function(t){return ojt(this.a,this.b,c(t,146))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$4$Type",1369),y(1368,1,Rn,FOe),s.Mb=function(t){return E3t(this.a,this.b,c(t,831))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$5$Type",1368),y(1370,1,Rt,BOe),s.td=function(t){ESt(this.a,this.b,c(t,146))},S(fc,"ElkSpacings/AbstractSpacingsBuilder/lambda$6$Type",1370),y(935,1,{},t6e),s.Kb=function(t){return B7e(t)},s.Fb=function(t){return this===t},S(fc,"ElkUtil/lambda$0$Type",935),y(936,1,Rt,$Oe),s.td=function(t){RRt(this.a,this.b,c(t,79))},s.a=0,s.b=0,S(fc,"ElkUtil/lambda$1$Type",936),y(937,1,Rt,KOe),s.td=function(t){Rvt(this.a,this.b,c(t,202))},s.a=0,s.b=0,S(fc,"ElkUtil/lambda$2$Type",937),y(938,1,Rt,qOe),s.td=function(t){M2t(this.a,this.b,c(t,137))},s.a=0,s.b=0,S(fc,"ElkUtil/lambda$3$Type",938),y(939,1,Rt,Eje),s.td=function(t){F4t(this.a,c(t,469))},S(fc,"ElkUtil/lambda$4$Type",939),y(342,1,{35:1,342:1},lvt),s.wd=function(t){return Z2t(this,c(t,236))},s.Fb=function(t){var n;return Q(t,342)?(n=c(t,342),this.a==n.a):!1},s.Hb=function(){return xi(this.a)},s.Ib=function(){return this.a+" (exclusive)"},s.a=0,S(fc,"ExclusiveBounds/ExclusiveLowerBound",342),y(1138,209,rb,n6e),s.Ze=function(t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie,ne,ue,be,Pe,Ae,Ve,et;for(Wt(n,"Fixed Layout",1),u=c(Ke(t,(kn(),qpe)),218),A=0,D=0,ne=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));ne.e!=ne.i.gc();){for(Y=c(Vt(ne),33),et=c(Ke(Y,(QO(),YP)),8),et&&(Cl(Y,et.a,et.b),c(Ke(Y,Twe),174).Hc((ou(),Yw))&&(L=c(Ke(Y,Awe),8),L.a>0&&L.b>0&&k0(Y,L.a,L.b,!0,!0))),A=g.Math.max(A,Y.i+Y.g),D=g.Math.max(D,Y.j+Y.f),p=new $t((!Y.n&&(Y.n=new Me(Lo,Y,1,7)),Y.n));p.e!=p.i.gc();)l=c(Vt(p),137),et=c(Ke(l,YP),8),et&&Cl(l,et.a,et.b),A=g.Math.max(A,Y.i+l.i+l.g),D=g.Math.max(D,Y.j+l.j+l.f);for(Pe=new $t((!Y.c&&(Y.c=new Me(Vs,Y,9,9)),Y.c));Pe.e!=Pe.i.gc();)for(be=c(Vt(Pe),118),et=c(Ke(be,YP),8),et&&Cl(be,et.a,et.b),Ae=Y.i+be.i,Ve=Y.j+be.j,A=g.Math.max(A,Ae+be.g),D=g.Math.max(D,Ve+be.f),d=new $t((!be.n&&(be.n=new Me(Lo,be,1,7)),be.n));d.e!=d.i.gc();)l=c(Vt(d),137),et=c(Ke(l,YP),8),et&&Cl(l,et.a,et.b),A=g.Math.max(A,Ae+l.i+l.g),D=g.Math.max(D,Ve+l.j+l.f);for(o=new Kt(Ht(Fh(Y).a.Kc(),new j));dn(o);)i=c(rn(o),79),v=QXe(i),A=g.Math.max(A,v.a),D=g.Math.max(D,v.b);for(r=new Kt(Ht(XI(Y).a.Kc(),new j));dn(r);)i=c(rn(r),79),yi(Uf(i))!=t&&(v=QXe(i),A=g.Math.max(A,v.a),D=g.Math.max(D,v.b))}if(u==(Lh(),D4))for(ie=new $t((!t.a&&(t.a=new Me(Ei,t,10,11)),t.a));ie.e!=ie.i.gc();)for(Y=c(Vt(ie),33),r=new Kt(Ht(Fh(Y).a.Kc(),new j));dn(r);)i=c(rn(r),79),a=OBt(i),a.b==0?ao(i,Hv,null):ao(i,Hv,a);Be(Fe(Ke(t,(QO(),jwe))))||(ue=c(Ke(t,Flt),116),z=A+ue.b+ue.c,N=D+ue.d+ue.a,k0(t,z,N,!0,!0)),qt(n)},S(fc,"FixedLayoutProvider",1138),y(373,134,{3:1,414:1,373:1,94:1,134:1},yN,b$e),s.Jf=function(t){var n,i,r,o,u,a,l,d,p;if(t)try{for(d=gw(t,";,;"),u=d,a=0,l=u.length;a>16&Ni|n^r<<16},s.Kc=function(){return new Sje(this)},s.Ib=function(){return this.a==null&&this.b==null?"pair(null,null)":this.a==null?"pair(null,"+Ro(this.b)+")":this.b==null?"pair("+Ro(this.a)+",null)":"pair("+Ro(this.a)+","+Ro(this.b)+")"},S(fc,"Pair",46),y(983,1,dr,Sje),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return!this.c&&(!this.b&&this.a.a!=null||this.a.b!=null)},s.Pb=function(){if(!this.c&&!this.b&&this.a.a!=null)return this.b=!0,this.a.a;if(!this.c&&this.a.b!=null)return this.c=!0,this.a.b;throw V(new tc)},s.Qb=function(){throw this.c&&this.a.b!=null?this.a.b=null:this.b&&this.a.a!=null&&(this.a.a=null),V(new hs)},s.b=!1,s.c=!1,S(fc,"Pair/1",983),y(448,1,{448:1},Zxe),s.Fb=function(t){return wc(this.a,c(t,448).a)&&wc(this.c,c(t,448).c)&&wc(this.d,c(t,448).d)&&wc(this.b,c(t,448).b)},s.Hb=function(){return ZO(U(G(xt,1),xe,1,5,[this.a,this.c,this.d,this.b]))},s.Ib=function(){return"("+this.a+zr+this.c+zr+this.d+zr+this.b+")"},S(fc,"Quadruple",448),y(1126,209,rb,d6e),s.Ze=function(t,n){var i,r,o,u,a;if(Wt(n,"Random Layout",1),(!t.a&&(t.a=new Me(Ei,t,10,11)),t.a).i==0){qt(n);return}u=c(Ke(t,(Toe(),Ylt)),19),u&&u.a!=0?o=new cO(u.a):o=new jK,i=WM(Te(Ke(t,Ult))),a=WM(Te(Ke(t,Xlt))),r=c(Ke(t,Wlt),116),Vqt(t,o,i,a,r),qt(n)},S(fc,"RandomLayoutProvider",1126);var ift;y(553,1,{}),s.qf=function(){return new $e(this.f.i,this.f.j)},s.We=function(t){return MLe(t,(kn(),zs))?Ke(this.f,rft):Ke(this.f,t)},s.rf=function(){return new $e(this.f.g,this.f.f)},s.sf=function(){return this.g},s.Xe=function(t){return Fg(this.f,t)},s.tf=function(t){es(this.f,t.a),ts(this.f,t.b)},s.uf=function(t){p0(this.f,t.a),b0(this.f,t.b)},s.vf=function(t){this.g=t},s.g=0;var rft;S(U6,"ElkGraphAdapters/AbstractElkGraphElementAdapter",553),y(554,1,{839:1},qA),s.wf=function(){var t,n;if(!this.b)for(this.b=nO(R8(this.a).i),n=new $t(R8(this.a));n.e!=n.i.gc();)t=c(Vt(n),137),Ee(this.b,new GN(t));return this.b},s.b=null,S(U6,"ElkGraphAdapters/ElkEdgeAdapter",554),y(301,553,{},Ip),s.xf=function(){return Zze(this)},s.a=null,S(U6,"ElkGraphAdapters/ElkGraphAdapter",301),y(630,553,{181:1},GN),S(U6,"ElkGraphAdapters/ElkLabelAdapter",630),y(629,553,{680:1},VF),s.wf=function(){return U8t(this)},s.Af=function(){var t;return t=c(Ke(this.f,(kn(),Dj)),142),!t&&(t=new OS),t},s.Cf=function(){return W8t(this)},s.Ef=function(t){var n;n=new cB(t),ao(this.f,(kn(),Dj),n)},s.Ff=function(t){ao(this.f,(kn(),Sb),new Ste(t))},s.yf=function(){return this.d},s.zf=function(){var t,n;if(!this.a)for(this.a=new Se,n=new Kt(Ht(XI(c(this.f,33)).a.Kc(),new j));dn(n);)t=c(rn(n),79),Ee(this.a,new qA(t));return this.a},s.Bf=function(){var t,n;if(!this.c)for(this.c=new Se,n=new Kt(Ht(Fh(c(this.f,33)).a.Kc(),new j));dn(n);)t=c(rn(n),79),Ee(this.c,new qA(t));return this.c},s.Df=function(){return $8(c(this.f,33)).i!=0||Be(Fe(c(this.f,33).We((kn(),Oj))))},s.Gf=function(){FCt(this,(Ap(),ift))},s.a=null,s.b=null,s.c=null,s.d=null,s.e=null,S(U6,"ElkGraphAdapters/ElkNodeAdapter",629),y(1266,553,{838:1},Qje),s.wf=function(){return nOt(this)},s.zf=function(){var t,n;if(!this.a)for(this.a=Ff(c(this.f,118).xg().i),n=new $t(c(this.f,118).xg());n.e!=n.i.gc();)t=c(Vt(n),79),Ee(this.a,new qA(t));return this.a},s.Bf=function(){var t,n;if(!this.c)for(this.c=Ff(c(this.f,118).yg().i),n=new $t(c(this.f,118).yg());n.e!=n.i.gc();)t=c(Vt(n),79),Ee(this.c,new qA(t));return this.c},s.Hf=function(){return c(c(this.f,118).We((kn(),Gv)),61)},s.If=function(){var t,n,i,r,o,u,a,l;for(r=jl(c(this.f,118)),i=new $t(c(this.f,118).yg());i.e!=i.i.gc();)for(t=c(Vt(i),79),l=new $t((!t.c&&(t.c=new dt(Ut,t,5,8)),t.c));l.e!=l.i.gc();){if(a=c(Vt(l),82),Jp(Co(a),r))return!0;if(Co(a)==r&&Be(Fe(Ke(t,(kn(),UW)))))return!0}for(n=new $t(c(this.f,118).xg());n.e!=n.i.gc();)for(t=c(Vt(n),79),u=new $t((!t.b&&(t.b=new dt(Ut,t,4,7)),t.b));u.e!=u.i.gc();)if(o=c(Vt(u),82),Jp(Co(o),r))return!0;return!1},s.a=null,s.b=null,s.c=null,S(U6,"ElkGraphAdapters/ElkPortAdapter",1266),y(1267,1,Zn,g6e),s.ue=function(t,n){return PFt(c(t,118),c(n,118))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(U6,"ElkGraphAdapters/PortComparator",1267);var J1=pi(Hu,"EObject"),x4=pi(mv,$Ze),ma=pi(mv,KZe),Hj=pi(mv,qZe),zj=pi(mv,"ElkShape"),Ut=pi(mv,HZe),rr=pi(mv,mfe),mi=pi(mv,zZe),Vj=pi(Hu,VZe),iM=pi(Hu,"EFactory"),oft,sY=pi(Hu,GZe),ml=pi(Hu,"EPackage"),lr,cft,sft,Vwe,Ox,uft,Gwe,Uwe,Wwe,Q1,aft,lft,Lo=pi(mv,vfe),Ei=pi(mv,yfe),Vs=pi(mv,_fe);y(90,1,UZe),s.Jg=function(){return this.Kg(),null},s.Kg=function(){return null},s.Lg=function(){return this.Kg(),!1},s.Mg=function(){return!1},s.Ng=function(t){Bn(this,t)},S(F2,"BasicNotifierImpl",90),y(97,90,JZe),s.nh=function(){return Qs(this)},s.Og=function(t,n){return t},s.Pg=function(){throw V(new sn)},s.Qg=function(t){var n;return n=Xr(c(at(this.Tg(),this.Vg()),18)),this.eh().ih(this,n.n,n.f,t)},s.Rg=function(t,n){throw V(new sn)},s.Sg=function(t,n,i){return yu(this,t,n,i)},s.Tg=function(){var t;return this.Pg()&&(t=this.Pg().ck(),t)?t:this.zh()},s.Ug=function(){return Dq(this)},s.Vg=function(){throw V(new sn)},s.Wg=function(){var t,n;return n=this.ph().dk(),!n&&this.Pg().ik(n=(GS(),t=$ne(wf(this.Tg())),t==null?bY:new mC(this,t))),n},s.Xg=function(t,n){return t},s.Yg=function(t){var n;return n=t.Gj(),n?t.aj():di(this.Tg(),t)},s.Zg=function(){var t;return t=this.Pg(),t?t.fk():null},s.$g=function(){return this.Pg()?this.Pg().ck():null},s._g=function(t,n,i){return _7(this,t,n,i)},s.ah=function(t){return x_(this,t)},s.bh=function(t,n){return S$(this,t,n)},s.dh=function(){var t;return t=this.Pg(),!!t&&t.gk()},s.eh=function(){throw V(new sn)},s.fh=function(){return g7(this)},s.gh=function(t,n,i,r){return w2(this,t,n,r)},s.hh=function(t,n,i){var r;return r=c(at(this.Tg(),n),66),r.Nj().Qj(this,this.yh(),n-this.Ah(),t,i)},s.ih=function(t,n,i,r){return z8(this,t,n,r)},s.jh=function(t,n,i){var r;return r=c(at(this.Tg(),n),66),r.Nj().Rj(this,this.yh(),n-this.Ah(),t,i)},s.kh=function(){return!!this.Pg()&&!!this.Pg().ek()},s.lh=function(t){return HK(this,t)},s.mh=function(t){return qLe(this,t)},s.oh=function(t){return dXe(this,t)},s.ph=function(){throw V(new sn)},s.qh=function(){return this.Pg()?this.Pg().ek():null},s.rh=function(){return g7(this)},s.sh=function(t,n){Iq(this,t,n)},s.th=function(t){this.ph().hk(t)},s.uh=function(t){this.ph().kk(t)},s.vh=function(t){this.ph().jk(t)},s.wh=function(t,n){var i,r,o,u;return u=this.Zg(),u&&t&&(n=Fr(u.Vk(),this,n),u.Zk(this)),r=this.eh(),r&&((Wq(this,this.eh(),this.Vg()).Bb&Vr)!=0?(o=r.fh(),o&&(t?!u&&o.Zk(this):o.Yk(this))):(n=(i=this.Vg(),i>=0?this.Qg(n):this.eh().ih(this,-1-i,null,n)),n=this.Sg(null,-1,n))),this.uh(t),n},s.xh=function(t){var n,i,r,o,u,a,l,d;if(i=this.Tg(),u=di(i,t),n=this.Ah(),u>=n)return c(t,66).Nj().Uj(this,this.yh(),u-n);if(u<=-1)if(a=uv((vs(),Ir),i,t),a){if(Wr(),c(a,66).Oj()||(a=r2(wo(Ir,a))),o=(r=this.Yg(a),c(r>=0?this._g(r,!0,!0):j0(this,a,!0),153)),d=a.Zj(),d>1||d==-1)return c(c(o,215).hl(t,!1),76)}else throw V(new St(x1+t.ne()+PV));else if(t.$j())return r=this.Yg(t),c(r>=0?this._g(r,!1,!0):j0(this,t,!1),76);return l=new u7e(this,t),l},s.yh=function(){return Kie(this)},s.zh=function(){return(g1(),wt).S},s.Ah=function(){return Ft(this.zh())},s.Bh=function(t){Eq(this,t)},s.Ib=function(){return Ba(this)},S(mt,"BasicEObjectImpl",97);var fft;y(114,97,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1}),s.Ch=function(t){var n;return n=qie(this),n[t]},s.Dh=function(t,n){var i;i=qie(this),vi(i,t,n)},s.Eh=function(t){var n;n=qie(this),vi(n,t,null)},s.Jg=function(){return c(vt(this,4),126)},s.Kg=function(){throw V(new sn)},s.Lg=function(){return(this.Db&4)!=0},s.Pg=function(){throw V(new sn)},s.Fh=function(t){p2(this,2,t)},s.Rg=function(t,n){this.Db=n<<16|this.Db&255,this.Fh(t)},s.Tg=function(){return Xc(this)},s.Vg=function(){return this.Db>>16},s.Wg=function(){var t,n;return GS(),n=$ne(wf((t=c(vt(this,16),26),t||this.zh()))),n==null?bY:new mC(this,n)},s.Mg=function(){return(this.Db&1)==0},s.Zg=function(){return c(vt(this,128),1935)},s.$g=function(){return c(vt(this,16),26)},s.dh=function(){return(this.Db&32)!=0},s.eh=function(){return c(vt(this,2),49)},s.kh=function(){return(this.Db&64)!=0},s.ph=function(){throw V(new sn)},s.qh=function(){return c(vt(this,64),281)},s.th=function(t){p2(this,16,t)},s.uh=function(t){p2(this,128,t)},s.vh=function(t){p2(this,64,t)},s.yh=function(){return $c(this)},s.Db=0,S(mt,"MinimalEObjectImpl",114),y(115,114,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s.Fh=function(t){this.Cb=t},s.eh=function(){return this.Cb},S(mt,"MinimalEObjectImpl/Container",115),y(1985,115,{105:1,413:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return Zoe(this,t,n,i)},s.jh=function(t,n,i){return Kce(this,t,n,i)},s.lh=function(t){return Qne(this,t)},s.sh=function(t,n){Fre(this,t,n)},s.zh=function(){return xc(),lft},s.Bh=function(t){Ire(this,t)},s.Ve=function(){return yze(this)},s.We=function(t){return Ke(this,t)},s.Xe=function(t){return Fg(this,t)},s.Ye=function(t,n){return ao(this,t,n)},S(sb,"EMapPropertyHolderImpl",1985),y(567,115,{105:1,469:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},OA),s._g=function(t,n,i){switch(t){case 0:return this.a;case 1:return this.b}return _7(this,t,n,i)},s.lh=function(t){switch(t){case 0:return this.a!=0;case 1:return this.b!=0}return HK(this,t)},s.sh=function(t,n){switch(t){case 0:jO(this,ge(Te(n)));return;case 1:AO(this,ge(Te(n)));return}Iq(this,t,n)},s.zh=function(){return xc(),cft},s.Bh=function(t){switch(t){case 0:jO(this,0);return;case 1:AO(this,0);return}Eq(this,t)},s.Ib=function(){var t;return(this.Db&64)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (x: ",Sm(t,this.a),t.a+=", y: ",Sm(t,this.b),t.a+=")",t.a)},s.a=0,s.b=0,S(sb,"ElkBendPointImpl",567),y(723,1985,{105:1,413:1,160:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return ioe(this,t,n,i)},s.hh=function(t,n,i){return pq(this,t,n,i)},s.jh=function(t,n,i){return eK(this,t,n,i)},s.lh=function(t){return vre(this,t)},s.sh=function(t,n){mce(this,t,n)},s.zh=function(){return xc(),uft},s.Bh=function(t){Zre(this,t)},s.zg=function(){return this.k},s.Ag=function(){return R8(this)},s.Ib=function(){return IK(this)},s.k=null,S(sb,"ElkGraphElementImpl",723),y(724,723,{105:1,413:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return doe(this,t,n,i)},s.lh=function(t){return yoe(this,t)},s.sh=function(t,n){vce(this,t,n)},s.zh=function(){return xc(),aft},s.Bh=function(t){Moe(this,t)},s.Bg=function(){return this.f},s.Cg=function(){return this.g},s.Dg=function(){return this.i},s.Eg=function(){return this.j},s.Fg=function(t,n){K9(this,t,n)},s.Gg=function(t,n){Cl(this,t,n)},s.Hg=function(t){es(this,t)},s.Ig=function(t){ts(this,t)},s.Ib=function(){return _q(this)},s.f=0,s.g=0,s.i=0,s.j=0,S(sb,"ElkShapeImpl",724),y(725,724,{105:1,413:1,82:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),s._g=function(t,n,i){return Uoe(this,t,n,i)},s.hh=function(t,n,i){return hce(this,t,n,i)},s.jh=function(t,n,i){return dce(this,t,n,i)},s.lh=function(t){return Lre(this,t)},s.sh=function(t,n){Ese(this,t,n)},s.zh=function(){return xc(),sft},s.Bh=function(t){Boe(this,t)},s.xg=function(){return!this.d&&(this.d=new dt(rr,this,8,5)),this.d},s.yg=function(){return!this.e&&(this.e=new dt(rr,this,7,4)),this.e},S(sb,"ElkConnectableShapeImpl",725),y(352,723,{105:1,413:1,79:1,160:1,352:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},$J),s.Qg=function(t){return uce(this,t)},s._g=function(t,n,i){switch(t){case 3:return KC(this);case 4:return!this.b&&(this.b=new dt(Ut,this,4,7)),this.b;case 5:return!this.c&&(this.c=new dt(Ut,this,5,8)),this.c;case 6:return!this.a&&(this.a=new Me(mi,this,6,6)),this.a;case 7:return Pt(),!this.b&&(this.b=new dt(Ut,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i<=1));case 8:return Pt(),!!b6(this);case 9:return Pt(),!!T0(this);case 10:return Pt(),!this.b&&(this.b=new dt(Ut,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i!=0)}return ioe(this,t,n,i)},s.hh=function(t,n,i){var r;switch(n){case 3:return this.Cb&&(i=(r=this.Db>>16,r>=0?uce(this,i):this.Cb.ih(this,-1-r,null,i))),tte(this,c(t,33),i);case 4:return!this.b&&(this.b=new dt(Ut,this,4,7)),Rc(this.b,t,i);case 5:return!this.c&&(this.c=new dt(Ut,this,5,8)),Rc(this.c,t,i);case 6:return!this.a&&(this.a=new Me(mi,this,6,6)),Rc(this.a,t,i)}return pq(this,t,n,i)},s.jh=function(t,n,i){switch(n){case 3:return tte(this,null,i);case 4:return!this.b&&(this.b=new dt(Ut,this,4,7)),Fr(this.b,t,i);case 5:return!this.c&&(this.c=new dt(Ut,this,5,8)),Fr(this.c,t,i);case 6:return!this.a&&(this.a=new Me(mi,this,6,6)),Fr(this.a,t,i)}return eK(this,t,n,i)},s.lh=function(t){switch(t){case 3:return!!KC(this);case 4:return!!this.b&&this.b.i!=0;case 5:return!!this.c&&this.c.i!=0;case 6:return!!this.a&&this.a.i!=0;case 7:return!this.b&&(this.b=new dt(Ut,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i<=1));case 8:return b6(this);case 9:return T0(this);case 10:return!this.b&&(this.b=new dt(Ut,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new dt(Ut,this,5,8)),this.c.i!=0)}return vre(this,t)},s.sh=function(t,n){switch(t){case 3:Fq(this,c(n,33));return;case 4:!this.b&&(this.b=new dt(Ut,this,4,7)),Xt(this.b),!this.b&&(this.b=new dt(Ut,this,4,7)),Mi(this.b,c(n,14));return;case 5:!this.c&&(this.c=new dt(Ut,this,5,8)),Xt(this.c),!this.c&&(this.c=new dt(Ut,this,5,8)),Mi(this.c,c(n,14));return;case 6:!this.a&&(this.a=new Me(mi,this,6,6)),Xt(this.a),!this.a&&(this.a=new Me(mi,this,6,6)),Mi(this.a,c(n,14));return}mce(this,t,n)},s.zh=function(){return xc(),Vwe},s.Bh=function(t){switch(t){case 3:Fq(this,null);return;case 4:!this.b&&(this.b=new dt(Ut,this,4,7)),Xt(this.b);return;case 5:!this.c&&(this.c=new dt(Ut,this,5,8)),Xt(this.c);return;case 6:!this.a&&(this.a=new Me(mi,this,6,6)),Xt(this.a);return}Zre(this,t)},s.Ib=function(){return QYe(this)},S(sb,"ElkEdgeImpl",352),y(439,1985,{105:1,413:1,202:1,439:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},DA),s.Qg=function(t){return rce(this,t)},s._g=function(t,n,i){switch(t){case 1:return this.j;case 2:return this.k;case 3:return this.b;case 4:return this.c;case 5:return!this.a&&(this.a=new qi(ma,this,5)),this.a;case 6:return BLe(this);case 7:return n?WK(this):this.i;case 8:return n?UK(this):this.f;case 9:return!this.g&&(this.g=new dt(mi,this,9,10)),this.g;case 10:return!this.e&&(this.e=new dt(mi,this,10,9)),this.e;case 11:return this.d}return Zoe(this,t,n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 6:return this.Cb&&(i=(o=this.Db>>16,o>=0?rce(this,i):this.Cb.ih(this,-1-o,null,i))),nte(this,c(t,79),i);case 9:return!this.g&&(this.g=new dt(mi,this,9,10)),Rc(this.g,t,i);case 10:return!this.e&&(this.e=new dt(mi,this,10,9)),Rc(this.e,t,i)}return u=c(at((r=c(vt(this,16),26),r||(xc(),Ox)),n),66),u.Nj().Qj(this,$c(this),n-Ft((xc(),Ox)),t,i)},s.jh=function(t,n,i){switch(n){case 5:return!this.a&&(this.a=new qi(ma,this,5)),Fr(this.a,t,i);case 6:return nte(this,null,i);case 9:return!this.g&&(this.g=new dt(mi,this,9,10)),Fr(this.g,t,i);case 10:return!this.e&&(this.e=new dt(mi,this,10,9)),Fr(this.e,t,i)}return Kce(this,t,n,i)},s.lh=function(t){switch(t){case 1:return this.j!=0;case 2:return this.k!=0;case 3:return this.b!=0;case 4:return this.c!=0;case 5:return!!this.a&&this.a.i!=0;case 6:return!!BLe(this);case 7:return!!this.i;case 8:return!!this.f;case 9:return!!this.g&&this.g.i!=0;case 10:return!!this.e&&this.e.i!=0;case 11:return this.d!=null}return Qne(this,t)},s.sh=function(t,n){switch(t){case 1:K_(this,ge(Te(n)));return;case 2:H_(this,ge(Te(n)));return;case 3:$_(this,ge(Te(n)));return;case 4:q_(this,ge(Te(n)));return;case 5:!this.a&&(this.a=new qi(ma,this,5)),Xt(this.a),!this.a&&(this.a=new qi(ma,this,5)),Mi(this.a,c(n,14));return;case 6:ZUe(this,c(n,79));return;case 7:xO(this,c(n,82));return;case 8:RO(this,c(n,82));return;case 9:!this.g&&(this.g=new dt(mi,this,9,10)),Xt(this.g),!this.g&&(this.g=new dt(mi,this,9,10)),Mi(this.g,c(n,14));return;case 10:!this.e&&(this.e=new dt(mi,this,10,9)),Xt(this.e),!this.e&&(this.e=new dt(mi,this,10,9)),Mi(this.e,c(n,14));return;case 11:lre(this,ln(n));return}Fre(this,t,n)},s.zh=function(){return xc(),Ox},s.Bh=function(t){switch(t){case 1:K_(this,0);return;case 2:H_(this,0);return;case 3:$_(this,0);return;case 4:q_(this,0);return;case 5:!this.a&&(this.a=new qi(ma,this,5)),Xt(this.a);return;case 6:ZUe(this,null);return;case 7:xO(this,null);return;case 8:RO(this,null);return;case 9:!this.g&&(this.g=new dt(mi,this,9,10)),Xt(this.g);return;case 10:!this.e&&(this.e=new dt(mi,this,10,9)),Xt(this.e);return;case 11:lre(this,null);return}Ire(this,t)},s.Ib=function(){return wUe(this)},s.b=0,s.c=0,s.d=null,s.j=0,s.k=0,S(sb,"ElkEdgeSectionImpl",439),y(150,115,{105:1,92:1,90:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),s._g=function(t,n,i){var r;return t==0?(!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab):Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.hh=function(t,n,i){var r,o;return n==0?(!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i)):(o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Qj(this,$c(this),n-Ft(this.zh()),t,i))},s.jh=function(t,n,i){var r,o;return n==0?(!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i)):(o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i))},s.lh=function(t){var n;return t==0?!!this.Ab&&this.Ab.i!=0:xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.oh=function(t){return Aue(this,t)},s.sh=function(t,n){var i;if(t===0){!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.uh=function(t){p2(this,128,t)},s.zh=function(){return ot(),jft},s.Bh=function(t){var n;if(t===0){!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.Gh=function(){this.Bb|=1},s.Hh=function(t){return y6(this,t)},s.Bb=0,S(mt,"EModelElementImpl",150),y(704,150,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},GJ),s.Ih=function(t,n){return TXe(this,t,n)},s.Jh=function(t){var n,i,r,o,u;if(this.a!=bu(t)||(t.Bb&256)!=0)throw V(new St(CV+t.zb+K0));for(r=So(t);dc(r.a).i!=0;){if(i=c(sT(r,0,(n=c(ee(dc(r.a),0),87),u=n.c,Q(u,88)?c(u,26):(ot(),Ea))),26),I0(i))return o=bu(i).Nh().Jh(i),c(o,49).th(t),o;r=So(i)}return(t.D!=null?t.D:t.B)=="java.util.Map$Entry"?new SRe(t):new qte(t)},s.Kh=function(t,n){return R0(this,t,n)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.a}return Nu(this,t-Ft((ot(),ng)),at((r=c(vt(this,16),26),r||ng),t),n,i)},s.hh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 1:return this.a&&(i=c(this.a,49).ih(this,4,ml,i)),Jre(this,c(t,235),i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),ng)),n),66),o.Nj().Qj(this,$c(this),n-Ft((ot(),ng)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 1:return Jre(this,null,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),ng)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),ng)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return!!this.a}return xu(this,t-Ft((ot(),ng)),at((n=c(vt(this,16),26),n||ng),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:ZVe(this,c(n,235));return}qu(this,t-Ft((ot(),ng)),at((i=c(vt(this,16),26),i||ng),t),n)},s.zh=function(){return ot(),ng},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:ZVe(this,null);return}$u(this,t-Ft((ot(),ng)),at((n=c(vt(this,16),26),n||ng),t))};var rM,Ywe,hft;S(mt,"EFactoryImpl",704),y(Ka,704,{105:1,2014:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},p6e),s.Ih=function(t,n){switch(t.yj()){case 12:return c(n,146).tg();case 13:return Ro(n);default:throw V(new St(UE+t.ne()+K0))}},s.Jh=function(t){var n,i,r,o,u,a,l,d;switch(t.G==-1&&(t.G=(n=bu(t),n?wd(n.Mh(),t):-1)),t.G){case 4:return u=new KJ,u;case 6:return a=new VQ,a;case 7:return l=new GQ,l;case 8:return r=new $J,r;case 9:return i=new OA,i;case 10:return o=new DA,o;case 11:return d=new w6e,d;default:throw V(new St(CV+t.zb+K0))}},s.Kh=function(t,n){switch(t.yj()){case 13:case 12:return null;default:throw V(new St(UE+t.ne()+K0))}},S(sb,"ElkGraphFactoryImpl",Ka),y(438,150,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),s.Wg=function(){var t,n;return n=(t=c(vt(this,16),26),$ne(wf(t||this.zh()))),n==null?(GS(),GS(),bY):new zDe(this,n)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.ne()}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:this.Lh(ln(n));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),Aft},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:this.Lh(null);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.ne=function(){return this.zb},s.Lh=function(t){kc(this,t)},s.Ib=function(){return J5(this)},s.zb=null,S(mt,"ENamedElementImpl",438),y(179,438,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},PLe),s.Qg=function(t){return dVe(this,t)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.yb;case 3:return this.xb;case 4:return this.sb;case 5:return!this.rb&&(this.rb=new Kp(this,vl,this)),this.rb;case 6:return!this.vb&&(this.vb=new Uy(ml,this,6,7)),this.vb;case 7:return n?this.Db>>16==7?c(this.Cb,235):null:$Le(this)}return Nu(this,t-Ft((ot(),Nd)),at((r=c(vt(this,16),26),r||Nd),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 4:return this.sb&&(i=c(this.sb,49).ih(this,1,iM,i)),toe(this,c(t,471),i);case 5:return!this.rb&&(this.rb=new Kp(this,vl,this)),Rc(this.rb,t,i);case 6:return!this.vb&&(this.vb=new Uy(ml,this,6,7)),Rc(this.vb,t,i);case 7:return this.Cb&&(i=(o=this.Db>>16,o>=0?dVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,7,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),Nd)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),Nd)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 4:return toe(this,null,i);case 5:return!this.rb&&(this.rb=new Kp(this,vl,this)),Fr(this.rb,t,i);case 6:return!this.vb&&(this.vb=new Uy(ml,this,6,7)),Fr(this.vb,t,i);case 7:return yu(this,null,7,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),Nd)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),Nd)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.yb!=null;case 3:return this.xb!=null;case 4:return!!this.sb;case 5:return!!this.rb&&this.rb.i!=0;case 6:return!!this.vb&&this.vb.i!=0;case 7:return!!$Le(this)}return xu(this,t-Ft((ot(),Nd)),at((n=c(vt(this,16),26),n||Nd),t))},s.oh=function(t){var n;return n=GLt(this,t),n||Aue(this,t)},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:qO(this,ln(n));return;case 3:KO(this,ln(n));return;case 4:yq(this,c(n,471));return;case 5:!this.rb&&(this.rb=new Kp(this,vl,this)),Xt(this.rb),!this.rb&&(this.rb=new Kp(this,vl,this)),Mi(this.rb,c(n,14));return;case 6:!this.vb&&(this.vb=new Uy(ml,this,6,7)),Xt(this.vb),!this.vb&&(this.vb=new Uy(ml,this,6,7)),Mi(this.vb,c(n,14));return}qu(this,t-Ft((ot(),Nd)),at((i=c(vt(this,16),26),i||Nd),t),n)},s.vh=function(t){var n,i;if(t&&this.rb)for(i=new $t(this.rb);i.e!=i.i.gc();)n=Vt(i),Q(n,351)&&(c(n,351).w=null);p2(this,64,t)},s.zh=function(){return ot(),Nd},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:qO(this,null);return;case 3:KO(this,null);return;case 4:yq(this,null);return;case 5:!this.rb&&(this.rb=new Kp(this,vl,this)),Xt(this.rb);return;case 6:!this.vb&&(this.vb=new Uy(ml,this,6,7)),Xt(this.vb);return}$u(this,t-Ft((ot(),Nd)),at((n=c(vt(this,16),26),n||Nd),t))},s.Gh=function(){sq(this)},s.Mh=function(){return!this.rb&&(this.rb=new Kp(this,vl,this)),this.rb},s.Nh=function(){return this.sb},s.Oh=function(){return this.ub},s.Ph=function(){return this.xb},s.Qh=function(){return this.yb},s.Rh=function(t){this.ub=t},s.Ib=function(){var t;return(this.Db&64)!=0?J5(this):(t=new ea(J5(this)),t.a+=" (nsURI: ",co(t,this.yb),t.a+=", nsPrefix: ",co(t,this.xb),t.a+=")",t.a)},s.xb=null,s.yb=null,S(mt,"EPackageImpl",179),y(555,179,{105:1,2016:1,555:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},CUe),s.q=!1,s.r=!1;var dft=!1;S(sb,"ElkGraphPackageImpl",555),y(354,724,{105:1,413:1,160:1,137:1,470:1,354:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},KJ),s.Qg=function(t){return oce(this,t)},s._g=function(t,n,i){switch(t){case 7:return KLe(this);case 8:return this.a}return doe(this,t,n,i)},s.hh=function(t,n,i){var r;return n===7?(this.Cb&&(i=(r=this.Db>>16,r>=0?oce(this,i):this.Cb.ih(this,-1-r,null,i))),ine(this,c(t,160),i)):pq(this,t,n,i)},s.jh=function(t,n,i){return n==7?ine(this,null,i):eK(this,t,n,i)},s.lh=function(t){switch(t){case 7:return!!KLe(this);case 8:return!rt("",this.a)}return yoe(this,t)},s.sh=function(t,n){switch(t){case 7:Lse(this,c(n,160));return;case 8:ire(this,ln(n));return}vce(this,t,n)},s.zh=function(){return xc(),Gwe},s.Bh=function(t){switch(t){case 7:Lse(this,null);return;case 8:ire(this,"");return}Moe(this,t)},s.Ib=function(){return dGe(this)},s.a="",S(sb,"ElkLabelImpl",354),y(239,725,{105:1,413:1,82:1,160:1,33:1,470:1,239:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},VQ),s.Qg=function(t){return ace(this,t)},s._g=function(t,n,i){switch(t){case 9:return!this.c&&(this.c=new Me(Vs,this,9,9)),this.c;case 10:return!this.a&&(this.a=new Me(Ei,this,10,11)),this.a;case 11:return yi(this);case 12:return!this.b&&(this.b=new Me(rr,this,12,3)),this.b;case 13:return Pt(),!this.a&&(this.a=new Me(Ei,this,10,11)),this.a.i>0}return Uoe(this,t,n,i)},s.hh=function(t,n,i){var r;switch(n){case 9:return!this.c&&(this.c=new Me(Vs,this,9,9)),Rc(this.c,t,i);case 10:return!this.a&&(this.a=new Me(Ei,this,10,11)),Rc(this.a,t,i);case 11:return this.Cb&&(i=(r=this.Db>>16,r>=0?ace(this,i):this.Cb.ih(this,-1-r,null,i))),fte(this,c(t,33),i);case 12:return!this.b&&(this.b=new Me(rr,this,12,3)),Rc(this.b,t,i)}return hce(this,t,n,i)},s.jh=function(t,n,i){switch(n){case 9:return!this.c&&(this.c=new Me(Vs,this,9,9)),Fr(this.c,t,i);case 10:return!this.a&&(this.a=new Me(Ei,this,10,11)),Fr(this.a,t,i);case 11:return fte(this,null,i);case 12:return!this.b&&(this.b=new Me(rr,this,12,3)),Fr(this.b,t,i)}return dce(this,t,n,i)},s.lh=function(t){switch(t){case 9:return!!this.c&&this.c.i!=0;case 10:return!!this.a&&this.a.i!=0;case 11:return!!yi(this);case 12:return!!this.b&&this.b.i!=0;case 13:return!this.a&&(this.a=new Me(Ei,this,10,11)),this.a.i>0}return Lre(this,t)},s.sh=function(t,n){switch(t){case 9:!this.c&&(this.c=new Me(Vs,this,9,9)),Xt(this.c),!this.c&&(this.c=new Me(Vs,this,9,9)),Mi(this.c,c(n,14));return;case 10:!this.a&&(this.a=new Me(Ei,this,10,11)),Xt(this.a),!this.a&&(this.a=new Me(Ei,this,10,11)),Mi(this.a,c(n,14));return;case 11:kse(this,c(n,33));return;case 12:!this.b&&(this.b=new Me(rr,this,12,3)),Xt(this.b),!this.b&&(this.b=new Me(rr,this,12,3)),Mi(this.b,c(n,14));return}Ese(this,t,n)},s.zh=function(){return xc(),Uwe},s.Bh=function(t){switch(t){case 9:!this.c&&(this.c=new Me(Vs,this,9,9)),Xt(this.c);return;case 10:!this.a&&(this.a=new Me(Ei,this,10,11)),Xt(this.a);return;case 11:kse(this,null);return;case 12:!this.b&&(this.b=new Me(rr,this,12,3)),Xt(this.b);return}Boe(this,t)},s.Ib=function(){return Jse(this)},S(sb,"ElkNodeImpl",239),y(186,725,{105:1,413:1,82:1,160:1,118:1,470:1,186:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},GQ),s.Qg=function(t){return cce(this,t)},s._g=function(t,n,i){return t==9?jl(this):Uoe(this,t,n,i)},s.hh=function(t,n,i){var r;return n===9?(this.Cb&&(i=(r=this.Db>>16,r>=0?cce(this,i):this.Cb.ih(this,-1-r,null,i))),ite(this,c(t,33),i)):hce(this,t,n,i)},s.jh=function(t,n,i){return n==9?ite(this,null,i):dce(this,t,n,i)},s.lh=function(t){return t==9?!!jl(this):Lre(this,t)},s.sh=function(t,n){if(t===9){Dse(this,c(n,33));return}Ese(this,t,n)},s.zh=function(){return xc(),Wwe},s.Bh=function(t){if(t===9){Dse(this,null);return}Boe(this,t)},s.Ib=function(){return ZWe(this)},S(sb,"ElkPortImpl",186);var gft=pi(Br,"BasicEMap/Entry");y(1092,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,114:1,115:1},w6e),s.Fb=function(t){return this===t},s.cd=function(){return this.b},s.Hb=function(){return Xb(this)},s.Uh=function(t){rre(this,c(t,146))},s._g=function(t,n,i){switch(t){case 0:return this.b;case 1:return this.c}return _7(this,t,n,i)},s.lh=function(t){switch(t){case 0:return!!this.b;case 1:return this.c!=null}return HK(this,t)},s.sh=function(t,n){switch(t){case 0:rre(this,c(n,146));return;case 1:sre(this,n);return}Iq(this,t,n)},s.zh=function(){return xc(),Q1},s.Bh=function(t){switch(t){case 0:rre(this,null);return;case 1:sre(this,null);return}Eq(this,t)},s.Sh=function(){var t;return this.a==-1&&(t=this.b,this.a=t?fi(t):0),this.a},s.dd=function(){return this.c},s.Th=function(t){this.a=t},s.ed=function(t){var n;return n=this.c,sre(this,t),n},s.Ib=function(){var t;return(this.Db&64)!=0?Ba(this):(t=new n1,wn(wn(wn(t,this.b?this.b.tg():rs),Sz),g5(this.c)),t.a)},s.a=-1,s.c=null;var op=S(sb,"ElkPropertyToValueMapEntryImpl",1092);y(984,1,{},y6e),S(Cr,"JsonAdapter",984),y(210,60,$h,sf),S(Cr,"JsonImportException",210),y(857,1,{},gVe),S(Cr,"JsonImporter",857),y(891,1,{},HOe),S(Cr,"JsonImporter/lambda$0$Type",891),y(892,1,{},zOe),S(Cr,"JsonImporter/lambda$1$Type",892),y(900,1,{},Pje),S(Cr,"JsonImporter/lambda$10$Type",900),y(902,1,{},VOe),S(Cr,"JsonImporter/lambda$11$Type",902),y(903,1,{},GOe),S(Cr,"JsonImporter/lambda$12$Type",903),y(909,1,{},rLe),S(Cr,"JsonImporter/lambda$13$Type",909),y(908,1,{},iLe),S(Cr,"JsonImporter/lambda$14$Type",908),y(904,1,{},UOe),S(Cr,"JsonImporter/lambda$15$Type",904),y(905,1,{},WOe),S(Cr,"JsonImporter/lambda$16$Type",905),y(906,1,{},YOe),S(Cr,"JsonImporter/lambda$17$Type",906),y(907,1,{},XOe),S(Cr,"JsonImporter/lambda$18$Type",907),y(912,1,{},Mje),S(Cr,"JsonImporter/lambda$19$Type",912),y(893,1,{},Cje),S(Cr,"JsonImporter/lambda$2$Type",893),y(910,1,{},Ije),S(Cr,"JsonImporter/lambda$20$Type",910),y(911,1,{},Tje),S(Cr,"JsonImporter/lambda$21$Type",911),y(915,1,{},jje),S(Cr,"JsonImporter/lambda$22$Type",915),y(913,1,{},Aje),S(Cr,"JsonImporter/lambda$23$Type",913),y(914,1,{},Oje),S(Cr,"JsonImporter/lambda$24$Type",914),y(917,1,{},Dje),S(Cr,"JsonImporter/lambda$25$Type",917),y(916,1,{},kje),S(Cr,"JsonImporter/lambda$26$Type",916),y(918,1,Rt,JOe),s.td=function(t){_Ct(this.b,this.a,ln(t))},S(Cr,"JsonImporter/lambda$27$Type",918),y(919,1,Rt,QOe),s.td=function(t){ECt(this.b,this.a,ln(t))},S(Cr,"JsonImporter/lambda$28$Type",919),y(920,1,{},ZOe),S(Cr,"JsonImporter/lambda$29$Type",920),y(896,1,{},Rje),S(Cr,"JsonImporter/lambda$3$Type",896),y(921,1,{},e7e),S(Cr,"JsonImporter/lambda$30$Type",921),y(922,1,{},xje),S(Cr,"JsonImporter/lambda$31$Type",922),y(923,1,{},Lje),S(Cr,"JsonImporter/lambda$32$Type",923),y(924,1,{},Nje),S(Cr,"JsonImporter/lambda$33$Type",924),y(925,1,{},Fje),S(Cr,"JsonImporter/lambda$34$Type",925),y(859,1,{},Bje),S(Cr,"JsonImporter/lambda$35$Type",859),y(929,1,{},Yke),S(Cr,"JsonImporter/lambda$36$Type",929),y(926,1,Rt,$je),s.td=function(t){MMt(this.a,c(t,469))},S(Cr,"JsonImporter/lambda$37$Type",926),y(927,1,Rt,c7e),s.td=function(t){Zyt(this.a,this.b,c(t,202))},S(Cr,"JsonImporter/lambda$38$Type",927),y(928,1,Rt,s7e),s.td=function(t){e2t(this.a,this.b,c(t,202))},S(Cr,"JsonImporter/lambda$39$Type",928),y(894,1,{},Kje),S(Cr,"JsonImporter/lambda$4$Type",894),y(930,1,Rt,qje),s.td=function(t){CMt(this.a,c(t,8))},S(Cr,"JsonImporter/lambda$40$Type",930),y(895,1,{},Hje),S(Cr,"JsonImporter/lambda$5$Type",895),y(899,1,{},zje),S(Cr,"JsonImporter/lambda$6$Type",899),y(897,1,{},Vje),S(Cr,"JsonImporter/lambda$7$Type",897),y(898,1,{},Gje),S(Cr,"JsonImporter/lambda$8$Type",898),y(901,1,{},Uje),S(Cr,"JsonImporter/lambda$9$Type",901),y(948,1,Rt,Wje),s.td=function(t){Zy(this.a,new qp(ln(t)))},S(Cr,"JsonMetaDataConverter/lambda$0$Type",948),y(949,1,Rt,Yje),s.td=function(t){qSt(this.a,c(t,237))},S(Cr,"JsonMetaDataConverter/lambda$1$Type",949),y(950,1,Rt,Xje),s.td=function(t){B6t(this.a,c(t,149))},S(Cr,"JsonMetaDataConverter/lambda$2$Type",950),y(951,1,Rt,Jje),s.td=function(t){HSt(this.a,c(t,175))},S(Cr,"JsonMetaDataConverter/lambda$3$Type",951),y(237,22,{3:1,35:1,22:1,237:1},Hy);var Dx,kx,uY,Rx,xx,Lx,aY,lY,Nx=hn(_T,"GraphFeature",237,bn,fIt,d4t),bft;y(13,1,{35:1,146:1},hi,Wi,ut,Yr),s.wd=function(t){return Q2t(this,c(t,146))},s.Fb=function(t){return MLe(this,t)},s.wg=function(){return Le(this)},s.tg=function(){return this.b},s.Hb=function(){return md(this.b)},s.Ib=function(){return this.b},S(_T,"Property",13),y(818,1,Zn,PQ),s.ue=function(t,n){return pAt(this,c(t,94),c(n,94))},s.Fb=function(t){return this===t},s.ve=function(){return new Un(this)},S(_T,"PropertyHolderComparator",818),y(695,1,dr,MQ),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return CCt(this)},s.Qb=function(){z9e()},s.Ob=function(){return!!this.a},S(nk,"ElkGraphUtil/AncestorIterator",695);var Xwe=pi(Br,"EList");y(67,52,{20:1,28:1,52:1,14:1,15:1,67:1,58:1}),s.Vc=function(t,n){e6(this,t,n)},s.Fc=function(t){return on(this,t)},s.Wc=function(t,n){return Tre(this,t,n)},s.Gc=function(t){return Mi(this,t)},s.Zh=function(){return new Gy(this)},s.$h=function(){return new vC(this)},s._h=function(t){return lI(this,t)},s.ai=function(){return!0},s.bi=function(t,n){},s.ci=function(){},s.di=function(t,n){M$(this,t,n)},s.ei=function(t,n,i){},s.fi=function(t,n){},s.gi=function(t,n,i){},s.Fb=function(t){return BWe(this,t)},s.Hb=function(){return Sre(this)},s.hi=function(){return!1},s.Kc=function(){return new $t(this)},s.Yc=function(){return new Vy(this)},s.Zc=function(t){var n;if(n=this.gc(),t<0||t>n)throw V(new Fp(t,n));return new AB(this,t)},s.ji=function(t,n){this.ii(t,this.Xc(n))},s.Mc=function(t){return _O(this,t)},s.li=function(t,n){return n},s._c=function(t,n){return Wm(this,t,n)},s.Ib=function(){return boe(this)},s.ni=function(){return!0},s.oi=function(t,n){return tE(this,n)},S(Br,"AbstractEList",67),y(63,67,Tf,RA,d0,bre),s.Vh=function(t,n){return wq(this,t,n)},s.Wh=function(t){return Kze(this,t)},s.Xh=function(t,n){MI(this,t,n)},s.Yh=function(t){UC(this,t)},s.pi=function(t){return Lie(this,t)},s.$b=function(){B5(this)},s.Hc=function(t){return pE(this,t)},s.Xb=function(t){return ee(this,t)},s.qi=function(t){var n,i,r;++this.j,i=this.g==null?0:this.g.length,t>i&&(r=this.g,n=i+(i/2|0)+4,n=0?(this.$c(n),!0):!1},s.mi=function(t,n){return this.Ui(t,this.oi(t,n))},s.gc=function(){return this.Vi()},s.Pc=function(){return this.Wi()},s.Qc=function(t){return this.Xi(t)},s.Ib=function(){return this.Yi()},S(Br,"DelegatingEList",1995),y(1996,1995,Net),s.Vh=function(t,n){return cue(this,t,n)},s.Wh=function(t){return this.Vh(this.Vi(),t)},s.Xh=function(t,n){PUe(this,t,n)},s.Yh=function(t){bUe(this,t)},s.ai=function(){return!this.bj()},s.$b=function(){C6(this)},s.Zi=function(t,n,i,r,o){return new ILe(this,t,n,i,r,o)},s.$i=function(t){Bn(this.Ai(),t)},s._i=function(){return null},s.aj=function(){return-1},s.Ai=function(){return null},s.bj=function(){return!1},s.cj=function(t,n){return n},s.dj=function(t,n){return n},s.ej=function(){return!1},s.fj=function(){return!this.Ri()},s.ii=function(t,n){var i,r;return this.ej()?(r=this.fj(),i=Fce(this,t,n),this.$i(this.Zi(7,Ce(n),i,t,r)),i):Fce(this,t,n)},s.$c=function(t){var n,i,r,o;return this.ej()?(i=null,r=this.fj(),n=this.Zi(4,o=g8(this,t),null,t,r),this.bj()&&o?(i=this.dj(o,i),i?(i.Ei(n),i.Fi()):this.$i(n)):i?(i.Ei(n),i.Fi()):this.$i(n),o):(o=g8(this,t),this.bj()&&o&&(i=this.dj(o,null),i&&i.Fi()),o)},s.mi=function(t,n){return DYe(this,t,n)},S(F2,"DelegatingNotifyingListImpl",1996),y(143,1,xT),s.Ei=function(t){return Mce(this,t)},s.Fi=function(){R$(this)},s.xi=function(){return this.d},s._i=function(){return null},s.gj=function(){return null},s.yi=function(t){return-1},s.zi=function(){return mWe(this)},s.Ai=function(){return null},s.Bi=function(){return Kse(this)},s.Ci=function(){return this.o<0?this.o<-2?-2-this.o-1:-1:this.o},s.hj=function(){return!1},s.Di=function(t){var n,i,r,o,u,a,l,d,p,v,A;switch(this.d){case 1:case 2:switch(o=t.xi(),o){case 1:case 2:if(u=t.Ai(),le(u)===le(this.Ai())&&this.yi(null)==t.yi(null))return this.g=t.zi(),t.xi()==1&&(this.d=1),!0}case 4:{switch(o=t.xi(),o){case 4:{if(u=t.Ai(),le(u)===le(this.Ai())&&this.yi(null)==t.yi(null))return p=Sue(this),d=this.o<0?this.o<-2?-2-this.o-1:-1:this.o,a=t.Ci(),this.d=6,A=new d0(2),d<=a?(on(A,this.n),on(A,t.Bi()),this.g=U(G(Qt,1),_n,25,15,[this.o=d,a+1])):(on(A,t.Bi()),on(A,this.n),this.g=U(G(Qt,1),_n,25,15,[this.o=a,d])),this.n=A,p||(this.o=-2-this.o-1),!0;break}}break}case 6:{switch(o=t.xi(),o){case 4:{if(u=t.Ai(),le(u)===le(this.Ai())&&this.yi(null)==t.yi(null)){for(p=Sue(this),a=t.Ci(),v=c(this.g,48),r=oe(Qt,_n,25,v.length+1,15,1),n=0;n>>0,n.toString(16))),r.a+=" (eventType: ",this.d){case 1:{r.a+="SET";break}case 2:{r.a+="UNSET";break}case 3:{r.a+="ADD";break}case 5:{r.a+="ADD_MANY";break}case 4:{r.a+="REMOVE";break}case 6:{r.a+="REMOVE_MANY";break}case 7:{r.a+="MOVE";break}case 8:{r.a+="REMOVING_ADAPTER";break}case 9:{r.a+="RESOLVE";break}default:{ZN(r,this.d);break}}if(cYe(this)&&(r.a+=", touch: true"),r.a+=", position: ",ZN(r,this.o<0?this.o<-2?-2-this.o-1:-1:this.o),r.a+=", notifier: ",u5(r,this.Ai()),r.a+=", feature: ",u5(r,this._i()),r.a+=", oldValue: ",u5(r,Kse(this)),r.a+=", newValue: ",this.d==6&&Q(this.g,48)){for(i=c(this.g,48),r.a+="[",t=0;t10?((!this.b||this.c.j!=this.a)&&(this.b=new _5(this),this.a=this.j),_h(this.b,t)):pE(this,t)},s.ni=function(){return!0},s.a=0,S(Br,"AbstractEList/1",953),y(295,73,UH,Fp),S(Br,"AbstractEList/BasicIndexOutOfBoundsException",295),y(40,1,dr,$t),s.Nb=function(t){Sr(this,t)},s.mj=function(){if(this.i.j!=this.f)throw V(new Ou)},s.nj=function(){return Vt(this)},s.Ob=function(){return this.e!=this.i.gc()},s.Pb=function(){return this.nj()},s.Qb=function(){l6(this)},s.e=0,s.f=0,s.g=-1,S(Br,"AbstractEList/EIterator",40),y(278,40,Wf,Vy,AB),s.Qb=function(){l6(this)},s.Rb=function(t){HHe(this,t)},s.oj=function(){var t;try{return t=this.d.Xb(--this.e),this.mj(),this.g=this.e,t}catch(n){throw n=gi(n),Q(n,73)?(this.mj(),V(new tc)):V(n)}},s.pj=function(t){zze(this,t)},s.Sb=function(){return this.e!=0},s.Tb=function(){return this.e},s.Ub=function(){return this.oj()},s.Vb=function(){return this.e-1},s.Wb=function(t){this.pj(t)},S(Br,"AbstractEList/EListIterator",278),y(341,40,dr,Gy),s.nj=function(){return zK(this)},s.Qb=function(){throw V(new sn)},S(Br,"AbstractEList/NonResolvingEIterator",341),y(385,278,Wf,vC,mte),s.Rb=function(t){throw V(new sn)},s.nj=function(){var t;try{return t=this.c.ki(this.e),this.mj(),this.g=this.e++,t}catch(n){throw n=gi(n),Q(n,73)?(this.mj(),V(new tc)):V(n)}},s.oj=function(){var t;try{return t=this.c.ki(--this.e),this.mj(),this.g=this.e,t}catch(n){throw n=gi(n),Q(n,73)?(this.mj(),V(new tc)):V(n)}},s.Qb=function(){throw V(new sn)},s.Wb=function(t){throw V(new sn)},S(Br,"AbstractEList/NonResolvingEListIterator",385),y(1982,67,Fet),s.Vh=function(t,n){var i,r,o,u,a,l,d,p,v,A,D;if(o=n.gc(),o!=0){for(p=c(vt(this.a,4),126),v=p==null?0:p.length,D=v+o,r=hK(this,D),A=v-t,A>0&&bc(p,t,r,t+o,A),d=n.Kc(),a=0;ai)throw V(new Fp(t,i));return new Fxe(this,t)},s.$b=function(){var t,n;++this.j,t=c(vt(this.a,4),126),n=t==null?0:t.length,hE(this,null),M$(this,n,t)},s.Hc=function(t){var n,i,r,o,u;if(n=c(vt(this.a,4),126),n!=null){if(t!=null){for(r=n,o=0,u=r.length;o=i)throw V(new Fp(t,i));return n[t]},s.Xc=function(t){var n,i,r;if(n=c(vt(this.a,4),126),n!=null){if(t!=null){for(i=0,r=n.length;ii)throw V(new Fp(t,i));return new Nxe(this,t)},s.ii=function(t,n){var i,r,o;if(i=JHe(this),o=i==null?0:i.length,t>=o)throw V(new ho(xV+t+ub+o));if(n>=o)throw V(new ho(LV+n+ub+o));return r=i[n],t!=n&&(t0&&bc(t,0,n,0,i),n},s.Qc=function(t){var n,i,r;return n=c(vt(this.a,4),126),r=n==null?0:n.length,r>0&&(t.lengthr&&vi(t,r,null),t};var pft;S(Br,"ArrayDelegatingEList",1982),y(1038,40,dr,UFe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},s.Qb=function(){l6(this),this.a=c(vt(this.b.a,4),126)},S(Br,"ArrayDelegatingEList/EIterator",1038),y(706,278,Wf,sxe,Nxe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},s.pj=function(t){zze(this,t),this.a=c(vt(this.b.a,4),126)},s.Qb=function(){l6(this),this.a=c(vt(this.b.a,4),126)},S(Br,"ArrayDelegatingEList/EListIterator",706),y(1039,341,dr,WFe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},S(Br,"ArrayDelegatingEList/NonResolvingEIterator",1039),y(707,385,Wf,uxe,Fxe),s.mj=function(){if(this.b.j!=this.f||le(c(vt(this.b.a,4),126))!==le(this.a))throw V(new Ou)},S(Br,"ArrayDelegatingEList/NonResolvingEListIterator",707),y(606,295,UH,kF),S(Br,"BasicEList/BasicIndexOutOfBoundsException",606),y(696,63,Tf,iee),s.Vc=function(t,n){throw V(new sn)},s.Fc=function(t){throw V(new sn)},s.Wc=function(t,n){throw V(new sn)},s.Gc=function(t){throw V(new sn)},s.$b=function(){throw V(new sn)},s.qi=function(t){throw V(new sn)},s.Kc=function(){return this.Zh()},s.Yc=function(){return this.$h()},s.Zc=function(t){return this._h(t)},s.ii=function(t,n){throw V(new sn)},s.ji=function(t,n){throw V(new sn)},s.$c=function(t){throw V(new sn)},s.Mc=function(t){throw V(new sn)},s._c=function(t,n){throw V(new sn)},S(Br,"BasicEList/UnmodifiableEList",696),y(705,1,{3:1,20:1,14:1,15:1,58:1,589:1}),s.Vc=function(t,n){q2t(this,t,c(n,42))},s.Fc=function(t){return T3t(this,c(t,42))},s.Jc=function(t){Mr(this,t)},s.Xb=function(t){return c(ee(this.c,t),133)},s.ii=function(t,n){return c(this.c.ii(t,n),42)},s.ji=function(t,n){H2t(this,t,c(n,42))},s.Lc=function(){return new ht(null,new bt(this,16))},s.$c=function(t){return c(this.c.$c(t),42)},s._c=function(t,n){return LSt(this,t,c(n,42))},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.Oc=function(){return new ht(null,new bt(this,16))},s.Wc=function(t,n){return this.c.Wc(t,n)},s.Gc=function(t){return this.c.Gc(t)},s.$b=function(){this.c.$b()},s.Hc=function(t){return this.c.Hc(t)},s.Ic=function(t){return bI(this.c,t)},s.qj=function(){var t,n,i;if(this.d==null){for(this.d=oe(Jwe,Bfe,63,2*this.f+1,0,1),i=this.e,this.f=0,n=this.c.Kc();n.e!=n.i.gc();)t=c(n.nj(),133),P7(this,t);this.e=i}},s.Fb=function(t){return kke(this,t)},s.Hb=function(){return Sre(this.c)},s.Xc=function(t){return this.c.Xc(t)},s.rj=function(){this.c=new Zje(this)},s.dc=function(){return this.f==0},s.Kc=function(){return this.c.Kc()},s.Yc=function(){return this.c.Yc()},s.Zc=function(t){return this.c.Zc(t)},s.sj=function(){return XC(this)},s.tj=function(t,n,i){return new Xke(t,n,i)},s.uj=function(){return new P6e},s.Mc=function(t){return hKe(this,t)},s.gc=function(){return this.f},s.bd=function(t,n){return new Hf(this.c,t,n)},s.Pc=function(){return this.c.Pc()},s.Qc=function(t){return this.c.Qc(t)},s.Ib=function(){return boe(this.c)},s.e=0,s.f=0,S(Br,"BasicEMap",705),y(1033,63,Tf,Zje),s.bi=function(t,n){Mvt(this,c(n,133))},s.ei=function(t,n,i){var r;++(r=this,c(n,133),r).a.e},s.fi=function(t,n){Cvt(this,c(n,133))},s.gi=function(t,n,i){b3t(this,c(n,133),c(i,133))},s.di=function(t,n){nqe(this.a)},S(Br,"BasicEMap/1",1033),y(1034,63,Tf,P6e),s.ri=function(t){return oe(Nzt,Bet,612,t,0,1)},S(Br,"BasicEMap/2",1034),y(1035,Kl,ys,eAe),s.$b=function(){this.a.c.$b()},s.Hc=function(t){return xK(this.a,t)},s.Kc=function(){return this.a.f==0?(p_(),Wj.a):new x9e(this.a)},s.Mc=function(t){var n;return n=this.a.f,d7(this.a,t),this.a.f!=n},s.gc=function(){return this.a.f},S(Br,"BasicEMap/3",1035),y(1036,28,ww,tAe),s.$b=function(){this.a.c.$b()},s.Hc=function(t){return $We(this.a,t)},s.Kc=function(){return this.a.f==0?(p_(),Wj.a):new L9e(this.a)},s.gc=function(){return this.a.f},S(Br,"BasicEMap/4",1036),y(1037,Kl,ys,nAe),s.$b=function(){this.a.c.$b()},s.Hc=function(t){var n,i,r,o,u,a,l,d,p;if(this.a.f>0&&Q(t,42)&&(this.a.qj(),d=c(t,42),l=d.cd(),o=l==null?0:fi(l),u=rte(this.a,o),n=this.a.d[u],n)){for(i=c(n.g,367),p=n.i,a=0;a"+this.c},s.a=0;var Nzt=S(Br,"BasicEMap/EntryImpl",612);y(536,1,{},kA),S(Br,"BasicEMap/View",536);var Wj;y(768,1,{}),s.Fb=function(t){return Sse((st(),Qr),t)},s.Hb=function(){return xre((st(),Qr))},s.Ib=function(){return C1((st(),Qr))},S(Br,"ECollections/BasicEmptyUnmodifiableEList",768),y(1312,1,Wf,M6e),s.Nb=function(t){Sr(this,t)},s.Rb=function(t){throw V(new sn)},s.Ob=function(){return!1},s.Sb=function(){return!1},s.Pb=function(){throw V(new tc)},s.Tb=function(){return 0},s.Ub=function(){throw V(new tc)},s.Vb=function(){return-1},s.Qb=function(){throw V(new sn)},s.Wb=function(t){throw V(new sn)},S(Br,"ECollections/BasicEmptyUnmodifiableEList/1",1312),y(1310,768,{20:1,14:1,15:1,58:1},GAe),s.Vc=function(t,n){i8e()},s.Fc=function(t){return r8e()},s.Wc=function(t,n){return o8e()},s.Gc=function(t){return c8e()},s.$b=function(){s8e()},s.Hc=function(t){return!1},s.Ic=function(t){return!1},s.Jc=function(t){Mr(this,t)},s.Xb=function(t){return cee((st(),t)),null},s.Xc=function(t){return-1},s.dc=function(){return!0},s.Kc=function(){return this.a},s.Yc=function(){return this.a},s.Zc=function(t){return this.a},s.ii=function(t,n){return u8e()},s.ji=function(t,n){a8e()},s.Lc=function(){return new ht(null,new bt(this,16))},s.$c=function(t){return l8e()},s.Mc=function(t){return f8e()},s._c=function(t,n){return h8e()},s.gc=function(){return 0},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.Oc=function(){return new ht(null,new bt(this,16))},s.bd=function(t,n){return st(),new Hf(Qr,t,n)},s.Pc=function(){return cne((st(),Qr))},s.Qc=function(t){return st(),RI(Qr,t)},S(Br,"ECollections/EmptyUnmodifiableEList",1310),y(1311,768,{20:1,14:1,15:1,58:1,589:1},UAe),s.Vc=function(t,n){i8e()},s.Fc=function(t){return r8e()},s.Wc=function(t,n){return o8e()},s.Gc=function(t){return c8e()},s.$b=function(){s8e()},s.Hc=function(t){return!1},s.Ic=function(t){return!1},s.Jc=function(t){Mr(this,t)},s.Xb=function(t){return cee((st(),t)),null},s.Xc=function(t){return-1},s.dc=function(){return!0},s.Kc=function(){return this.a},s.Yc=function(){return this.a},s.Zc=function(t){return this.a},s.ii=function(t,n){return u8e()},s.ji=function(t,n){a8e()},s.Lc=function(){return new ht(null,new bt(this,16))},s.$c=function(t){return l8e()},s.Mc=function(t){return f8e()},s._c=function(t,n){return h8e()},s.gc=function(){return 0},s.ad=function(t){$m(this,t)},s.Nc=function(){return new bt(this,16)},s.Oc=function(){return new ht(null,new bt(this,16))},s.bd=function(t,n){return st(),new Hf(Qr,t,n)},s.Pc=function(){return cne((st(),Qr))},s.Qc=function(t){return st(),RI(Qr,t)},s.sj=function(){return st(),st(),th},S(Br,"ECollections/EmptyUnmodifiableEMap",1311);var Zwe=pi(Br,"Enumerator"),Fx;y(281,1,{281:1},Hq),s.Fb=function(t){var n;return this===t?!0:Q(t,281)?(n=c(t,281),this.f==n.f&&iSt(this.i,n.i)&&pB(this.a,(this.f&256)!=0?(n.f&256)!=0?n.a:null:(n.f&256)!=0?null:n.a)&&pB(this.d,n.d)&&pB(this.g,n.g)&&pB(this.e,n.e)&&J9t(this,n)):!1},s.Hb=function(){return this.f},s.Ib=function(){return wYe(this)},s.f=0;var wft=0,mft=0,vft=0,yft=0,eme=0,tme=0,nme=0,ime=0,rme=0,_ft,oM=0,cM=0,Eft=0,Sft=0,Bx,ome;S(Br,"URI",281),y(1091,43,fv,WAe),s.zc=function(t,n){return c(bo(this,ln(t),c(n,281)),281)},S(Br,"URI/URICache",1091),y(497,63,Tf,v6e,p8),s.hi=function(){return!0},S(Br,"UniqueEList",497),y(581,60,$h,mO),S(Br,"WrappedException",581);var Sn=pi(Hu,qet),Xw=pi(Hu,Het),us=pi(Hu,zet),Jw=pi(Hu,Vet),vl=pi(Hu,Get),va=pi(Hu,"EClass"),dY=pi(Hu,"EDataType"),Pft;y(1183,43,fv,YAe),s.xc=function(t){return fr(t)?mc(this,t):Uo(Po(this.f,t))},S(Hu,"EDataType/Internal/ConversionDelegate/Factory/Registry/Impl",1183);var $x=pi(Hu,"EEnum"),Yh=pi(Hu,Uet),oo=pi(Hu,Wet),ya=pi(Hu,Yet),_a,cp=pi(Hu,Xet),Qw=pi(Hu,Jet);y(1029,1,{},m6e),s.Ib=function(){return"NIL"},S(Hu,"EStructuralFeature/Internal/DynamicValueHolder/1",1029);var Mft;y(1028,43,fv,XAe),s.xc=function(t){return fr(t)?mc(this,t):Uo(Po(this.f,t))},S(Hu,"EStructuralFeature/Internal/SettingDelegate/Factory/Registry/Impl",1028);var Gc=pi(Hu,Qet),s3=pi(Hu,"EValidator/PatternMatcher"),cme,sme,wt,Rd,Zw,eg,Cft,Ift,Tft,tg,xd,ng,sp,Ql,jft,Aft,Ea,Ld,Oft,Nd,em,Uv,Ur,Dft,kft,up,Kx=pi(ai,"FeatureMap/Entry");y(535,1,{72:1},x9),s.ak=function(){return this.a},s.dd=function(){return this.b},S(mt,"BasicEObjectImpl/1",535),y(1027,1,qV,u7e),s.Wj=function(t){return S$(this.a,this.b,t)},s.fj=function(){return qLe(this.a,this.b)},s.Wb=function(t){qne(this.a,this.b,t)},s.Xj=function(){ZSt(this.a,this.b)},S(mt,"BasicEObjectImpl/4",1027),y(1983,1,{108:1}),s.bk=function(t){this.e=t==0?Rft:oe(xt,xe,1,t,5,1)},s.Ch=function(t){return this.e[t]},s.Dh=function(t,n){this.e[t]=n},s.Eh=function(t){this.e[t]=null},s.ck=function(){return this.c},s.dk=function(){throw V(new sn)},s.ek=function(){throw V(new sn)},s.fk=function(){return this.d},s.gk=function(){return this.e!=null},s.hk=function(t){this.c=t},s.ik=function(t){throw V(new sn)},s.jk=function(t){throw V(new sn)},s.kk=function(t){this.d=t};var Rft;S(mt,"BasicEObjectImpl/EPropertiesHolderBaseImpl",1983),y(185,1983,{108:1},il),s.dk=function(){return this.a},s.ek=function(){return this.b},s.ik=function(t){this.a=t},s.jk=function(t){this.b=t},S(mt,"BasicEObjectImpl/EPropertiesHolderImpl",185),y(506,97,JZe,xA),s.Kg=function(){return this.f},s.Pg=function(){return this.k},s.Rg=function(t,n){this.g=t,this.i=n},s.Tg=function(){return(this.j&2)==0?this.zh():this.ph().ck()},s.Vg=function(){return this.i},s.Mg=function(){return(this.j&1)!=0},s.eh=function(){return this.g},s.kh=function(){return(this.j&4)!=0},s.ph=function(){return!this.k&&(this.k=new il),this.k},s.th=function(t){this.ph().hk(t),t?this.j|=2:this.j&=-3},s.vh=function(t){this.ph().jk(t),t?this.j|=4:this.j&=-5},s.zh=function(){return(g1(),wt).S},s.i=0,s.j=1,S(mt,"EObjectImpl",506),y(780,506,{105:1,92:1,90:1,56:1,108:1,49:1,97:1},qte),s.Ch=function(t){return this.e[t]},s.Dh=function(t,n){this.e[t]=n},s.Eh=function(t){this.e[t]=null},s.Tg=function(){return this.d},s.Yg=function(t){return di(this.d,t)},s.$g=function(){return this.d},s.dh=function(){return this.e!=null},s.ph=function(){return!this.k&&(this.k=new C6e),this.k},s.th=function(t){this.d=t},s.yh=function(){var t;return this.e==null&&(t=Ft(this.d),this.e=t==0?xft:oe(xt,xe,1,t,5,1)),this},s.Ah=function(){return 0};var xft;S(mt,"DynamicEObjectImpl",780),y(1376,780,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1},SRe),s.Fb=function(t){return this===t},s.Hb=function(){return Xb(this)},s.th=function(t){this.d=t,this.b=QI(t,"key"),this.c=QI(t,X6)},s.Sh=function(){var t;return this.a==-1&&(t=x$(this,this.b),this.a=t==null?0:fi(t)),this.a},s.cd=function(){return x$(this,this.b)},s.dd=function(){return x$(this,this.c)},s.Th=function(t){this.a=t},s.Uh=function(t){qne(this,this.b,t)},s.ed=function(t){var n;return n=x$(this,this.c),qne(this,this.c,t),n},s.a=0,S(mt,"DynamicEObjectImpl/BasicEMapEntry",1376),y(1377,1,{108:1},C6e),s.bk=function(t){throw V(new sn)},s.Ch=function(t){throw V(new sn)},s.Dh=function(t,n){throw V(new sn)},s.Eh=function(t){throw V(new sn)},s.ck=function(){throw V(new sn)},s.dk=function(){return this.a},s.ek=function(){return this.b},s.fk=function(){return this.c},s.gk=function(){throw V(new sn)},s.hk=function(t){throw V(new sn)},s.ik=function(t){this.a=t},s.jk=function(t){this.b=t},s.kk=function(t){this.c=t},S(mt,"DynamicEObjectImpl/DynamicEPropertiesHolderImpl",1377),y(510,150,{105:1,92:1,90:1,590:1,147:1,56:1,108:1,49:1,97:1,510:1,150:1,114:1,115:1},qJ),s.Qg=function(t){return sce(this,t)},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.d;case 2:return i?(!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),this.b):(!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),XC(this.b));case 3:return ULe(this);case 4:return!this.a&&(this.a=new qi(J1,this,4)),this.a;case 5:return!this.c&&(this.c=new Om(J1,this,5)),this.c}return Nu(this,t-Ft((ot(),Rd)),at((r=c(vt(this,16),26),r||Rd),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 3:return this.Cb&&(i=(o=this.Db>>16,o>=0?sce(this,i):this.Cb.ih(this,-1-o,null,i))),rne(this,c(t,147),i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),Rd)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),Rd)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 2:return!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),r8(this.b,t,i);case 3:return rne(this,null,i);case 4:return!this.a&&(this.a=new qi(J1,this,4)),Fr(this.a,t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),Rd)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),Rd)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.d!=null;case 2:return!!this.b&&this.b.f!=0;case 3:return!!ULe(this);case 4:return!!this.a&&this.a.i!=0;case 5:return!!this.c&&this.c.i!=0}return xu(this,t-Ft((ot(),Rd)),at((n=c(vt(this,16),26),n||Rd),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:q4t(this,ln(n));return;case 2:!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),GO(this.b,n);return;case 3:sWe(this,c(n,147));return;case 4:!this.a&&(this.a=new qi(J1,this,4)),Xt(this.a),!this.a&&(this.a=new qi(J1,this,4)),Mi(this.a,c(n,14));return;case 5:!this.c&&(this.c=new Om(J1,this,5)),Xt(this.c),!this.c&&(this.c=new Om(J1,this,5)),Mi(this.c,c(n,14));return}qu(this,t-Ft((ot(),Rd)),at((i=c(vt(this,16),26),i||Rd),t),n)},s.zh=function(){return ot(),Rd},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:ure(this,null);return;case 2:!this.b&&(this.b=new Zs((ot(),Ur),ec,this)),this.b.c.$b();return;case 3:sWe(this,null);return;case 4:!this.a&&(this.a=new qi(J1,this,4)),Xt(this.a);return;case 5:!this.c&&(this.c=new Om(J1,this,5)),Xt(this.c);return}$u(this,t-Ft((ot(),Rd)),at((n=c(vt(this,16),26),n||Rd),t))},s.Ib=function(){return EHe(this)},s.d=null,S(mt,"EAnnotationImpl",510),y(151,705,$fe,iu),s.Xh=function(t,n){P2t(this,t,c(n,42))},s.lk=function(t,n){return m_t(this,c(t,42),n)},s.pi=function(t){return c(c(this.c,69).pi(t),133)},s.Zh=function(){return c(this.c,69).Zh()},s.$h=function(){return c(this.c,69).$h()},s._h=function(t){return c(this.c,69)._h(t)},s.mk=function(t,n){return r8(this,t,n)},s.Wj=function(t){return c(this.c,76).Wj(t)},s.rj=function(){},s.fj=function(){return c(this.c,76).fj()},s.tj=function(t,n,i){var r;return r=c(bu(this.b).Nh().Jh(this.b),133),r.Th(t),r.Uh(n),r.ed(i),r},s.uj=function(){return new IQ(this)},s.Wb=function(t){GO(this,t)},s.Xj=function(){c(this.c,76).Xj()},S(ai,"EcoreEMap",151),y(158,151,$fe,Zs),s.qj=function(){var t,n,i,r,o,u;if(this.d==null){for(u=oe(Jwe,Bfe,63,2*this.f+1,0,1),i=this.c.Kc();i.e!=i.i.gc();)n=c(i.nj(),133),r=n.Sh(),o=(r&Fn)%u.length,t=u[o],!t&&(t=u[o]=new IQ(this)),t.Fc(n);this.d=u}},S(mt,"EAnnotationImpl/1",158),y(284,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,472:1,49:1,97:1,150:1,284:1,114:1,115:1}),s._g=function(t,n,i){var r,o;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),!!this.$j();case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i)}return o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i)},s.lh=function(t){var n,i;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0)}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:this.Lh(ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:this.ok(c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),kft},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:this.Lh(null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:this.ok(1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.Gh=function(){ra(this),this.Bb|=1},s.Yj=function(){return ra(this)},s.Zj=function(){return this.t},s.$j=function(){var t;return t=this.t,t>1||t==-1},s.hi=function(){return(this.Bb&512)!=0},s.nk=function(t,n){return noe(this,t,n)},s.ok=function(t){Zp(this,t)},s.Ib=function(){return dse(this)},s.s=0,s.t=1,S(mt,"ETypedElementImpl",284),y(449,284,{105:1,92:1,90:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,449:1,284:1,114:1,115:1,677:1}),s.Qg=function(t){return rVe(this,t)},s._g=function(t,n,i){var r,o;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),!!this.$j();case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return Pt(),(this.Bb&Ka)!=0;case 11:return Pt(),(this.Bb&Iw)!=0;case 12:return Pt(),(this.Bb&vw)!=0;case 13:return this.j;case 14:return SE(this);case 15:return Pt(),(this.Bb&Es)!=0;case 16:return Pt(),(this.Bb&mf)!=0;case 17:return zp(this)}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 17:return this.Cb&&(i=(o=this.Db>>16,o>=0?rVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,17,i)}return u=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),u.Nj().Qj(this,$c(this),n-Ft(this.zh()),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i);case 17:return yu(this,null,17,i)}return o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i)},s.lh=function(t){var n,i;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return(this.Bb&Ka)==0;case 11:return(this.Bb&Iw)!=0;case 12:return(this.Bb&vw)!=0;case 13:return this.j!=null;case 14:return SE(this)!=null;case 15:return(this.Bb&Es)!=0;case 16:return(this.Bb&mf)!=0;case 17:return!!zp(this)}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:s$(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:this.ok(c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 10:cE(this,Be(Fe(n)));return;case 11:aE(this,Be(Fe(n)));return;case 12:sE(this,Be(Fe(n)));return;case 13:ree(this,ln(n));return;case 15:uE(this,Be(Fe(n)));return;case 16:lE(this,Be(Fe(n)));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),Dft},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),4),kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:this.ok(1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 10:cE(this,!0);return;case 11:aE(this,!1);return;case 12:sE(this,!1);return;case 13:this.i=null,NO(this,null);return;case 15:uE(this,!1);return;case 16:lE(this,!1);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.Gh=function(){C_(wo((vs(),Ir),this)),ra(this),this.Bb|=1},s.Gj=function(){return this.f},s.zj=function(){return SE(this)},s.Hj=function(){return zp(this)},s.Lj=function(){return null},s.pk=function(){return this.k},s.aj=function(){return this.n},s.Mj=function(){return k7(this)},s.Nj=function(){var t,n,i,r,o,u,a,l,d;return this.p||(i=zp(this),(i.i==null&&wf(i),i.i).length,r=this.Lj(),r&&Ft(zp(r)),o=ra(this),a=o.Bj(),t=a?(a.i&1)!=0?a==Gs?Qi:a==Qt?$r:a==nm?e4:a==gr?mr:a==rg?H0:a==Jv?z0:a==Ps?B2:sP:a:null,n=SE(this),l=o.zj(),EAt(this),(this.Bb&mf)!=0&&((u=gce((vs(),Ir),i))&&u!=this||(u=r2(wo(Ir,this))))?this.p=new l7e(this,u):this.$j()?this.rk()?r?(this.Bb&Es)!=0?t?this.sk()?this.p=new kg(47,t,this,r):this.p=new kg(5,t,this,r):this.sk()?this.p=new Lg(46,this,r):this.p=new Lg(4,this,r):t?this.sk()?this.p=new kg(49,t,this,r):this.p=new kg(7,t,this,r):this.sk()?this.p=new Lg(48,this,r):this.p=new Lg(6,this,r):(this.Bb&Es)!=0?t?t==fb?this.p=new cd(50,gft,this):this.sk()?this.p=new cd(43,t,this):this.p=new cd(1,t,this):this.sk()?this.p=new ud(42,this):this.p=new ud(0,this):t?t==fb?this.p=new cd(41,gft,this):this.sk()?this.p=new cd(45,t,this):this.p=new cd(3,t,this):this.sk()?this.p=new ud(44,this):this.p=new ud(2,this):Q(o,148)?t==Kx?this.p=new ud(40,this):(this.Bb&512)!=0?(this.Bb&Es)!=0?t?this.p=new cd(9,t,this):this.p=new ud(8,this):t?this.p=new cd(11,t,this):this.p=new ud(10,this):(this.Bb&Es)!=0?t?this.p=new cd(13,t,this):this.p=new ud(12,this):t?this.p=new cd(15,t,this):this.p=new ud(14,this):r?(d=r.t,d>1||d==-1?this.sk()?(this.Bb&Es)!=0?t?this.p=new kg(25,t,this,r):this.p=new Lg(24,this,r):t?this.p=new kg(27,t,this,r):this.p=new Lg(26,this,r):(this.Bb&Es)!=0?t?this.p=new kg(29,t,this,r):this.p=new Lg(28,this,r):t?this.p=new kg(31,t,this,r):this.p=new Lg(30,this,r):this.sk()?(this.Bb&Es)!=0?t?this.p=new kg(33,t,this,r):this.p=new Lg(32,this,r):t?this.p=new kg(35,t,this,r):this.p=new Lg(34,this,r):(this.Bb&Es)!=0?t?this.p=new kg(37,t,this,r):this.p=new Lg(36,this,r):t?this.p=new kg(39,t,this,r):this.p=new Lg(38,this,r)):this.sk()?(this.Bb&Es)!=0?t?this.p=new cd(17,t,this):this.p=new ud(16,this):t?this.p=new cd(19,t,this):this.p=new ud(18,this):(this.Bb&Es)!=0?t?this.p=new cd(21,t,this):this.p=new ud(20,this):t?this.p=new cd(23,t,this):this.p=new ud(22,this):this.qk()?this.sk()?this.p=new Jke(c(o,26),this,r):this.p=new Kne(c(o,26),this,r):Q(o,148)?t==Kx?this.p=new ud(40,this):(this.Bb&Es)!=0?t?this.p=new YRe(n,l,this,(RK(),a==Qt?gme:a==Gs?ame:a==rg?bme:a==nm?dme:a==gr?hme:a==Jv?pme:a==Ps?lme:a==Yu?fme:pY)):this.p=new sLe(c(o,148),n,l,this):t?this.p=new WRe(n,l,this,(RK(),a==Qt?gme:a==Gs?ame:a==rg?bme:a==nm?dme:a==gr?hme:a==Jv?pme:a==Ps?lme:a==Yu?fme:pY)):this.p=new cLe(c(o,148),n,l,this):this.rk()?r?(this.Bb&Es)!=0?this.sk()?this.p=new Zke(c(o,26),this,r):this.p=new Dte(c(o,26),this,r):this.sk()?this.p=new Qke(c(o,26),this,r):this.p=new aB(c(o,26),this,r):(this.Bb&Es)!=0?this.sk()?this.p=new WDe(c(o,26),this):this.p=new Gee(c(o,26),this):this.sk()?this.p=new UDe(c(o,26),this):this.p=new YF(c(o,26),this):this.sk()?r?(this.Bb&Es)!=0?this.p=new eRe(c(o,26),this,r):this.p=new Ate(c(o,26),this,r):(this.Bb&Es)!=0?this.p=new YDe(c(o,26),this):this.p=new Uee(c(o,26),this):r?(this.Bb&Es)!=0?this.p=new tRe(c(o,26),this,r):this.p=new Ote(c(o,26),this,r):(this.Bb&Es)!=0?this.p=new XDe(c(o,26),this):this.p=new w8(c(o,26),this)),this.p},s.Ij=function(){return(this.Bb&Ka)!=0},s.qk=function(){return!1},s.rk=function(){return!1},s.Jj=function(){return(this.Bb&mf)!=0},s.Oj=function(){return N$(this)},s.sk=function(){return!1},s.Kj=function(){return(this.Bb&Es)!=0},s.tk=function(t){this.k=t},s.Lh=function(t){s$(this,t)},s.Ib=function(){return J7(this)},s.e=!1,s.n=0,S(mt,"EStructuralFeatureImpl",449),y(322,449,{105:1,92:1,90:1,34:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,322:1,150:1,449:1,284:1,114:1,115:1,677:1},LN),s._g=function(t,n,i){var r,o;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),!!ase(this);case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return Pt(),(this.Bb&Ka)!=0;case 11:return Pt(),(this.Bb&Iw)!=0;case 12:return Pt(),(this.Bb&vw)!=0;case 13:return this.j;case 14:return SE(this);case 15:return Pt(),(this.Bb&Es)!=0;case 16:return Pt(),(this.Bb&mf)!=0;case 17:return zp(this);case 18:return Pt(),(this.Bb&rc)!=0;case 19:return n?tK(this):sBe(this)}return Nu(this,t-Ft((ot(),Zw)),at((r=c(vt(this,16),26),r||Zw),t),n,i)},s.lh=function(t){var n,i;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return ase(this);case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return(this.Bb&Ka)==0;case 11:return(this.Bb&Iw)!=0;case 12:return(this.Bb&vw)!=0;case 13:return this.j!=null;case 14:return SE(this)!=null;case 15:return(this.Bb&Es)!=0;case 16:return(this.Bb&mf)!=0;case 17:return!!zp(this);case 18:return(this.Bb&rc)!=0;case 19:return!!sBe(this)}return xu(this,t-Ft((ot(),Zw)),at((n=c(vt(this,16),26),n||Zw),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:s$(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:B9e(this,c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 10:cE(this,Be(Fe(n)));return;case 11:aE(this,Be(Fe(n)));return;case 12:sE(this,Be(Fe(n)));return;case 13:ree(this,ln(n));return;case 15:uE(this,Be(Fe(n)));return;case 16:lE(this,Be(Fe(n)));return;case 18:CK(this,Be(Fe(n)));return}qu(this,t-Ft((ot(),Zw)),at((i=c(vt(this,16),26),i||Zw),t),n)},s.zh=function(){return ot(),Zw},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),4),kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:this.b=0,Zp(this,1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 10:cE(this,!0);return;case 11:aE(this,!1);return;case 12:sE(this,!1);return;case 13:this.i=null,NO(this,null);return;case 15:uE(this,!1);return;case 16:lE(this,!1);return;case 18:CK(this,!1);return}$u(this,t-Ft((ot(),Zw)),at((n=c(vt(this,16),26),n||Zw),t))},s.Gh=function(){tK(this),C_(wo((vs(),Ir),this)),ra(this),this.Bb|=1},s.$j=function(){return ase(this)},s.nk=function(t,n){return this.b=0,this.a=null,noe(this,t,n)},s.ok=function(t){B9e(this,t)},s.Ib=function(){var t;return(this.Db&64)!=0?J7(this):(t=new ea(J7(this)),t.a+=" (iD: ",id(t,(this.Bb&rc)!=0),t.a+=")",t.a)},s.b=0,S(mt,"EAttributeImpl",322),y(351,438,{105:1,92:1,90:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,351:1,150:1,114:1,115:1,676:1}),s.uk=function(t){return t.Tg()==this},s.Qg=function(t){return cq(this,t)},s.Rg=function(t,n){this.w=null,this.Db=n<<16|this.Db&255,this.Cb=t},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return I0(this);case 4:return this.zj();case 5:return this.F;case 6:return n?bu(this):j_(this);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),this.A}return Nu(this,t-Ft(this.zh()),at((r=c(vt(this,16),26),r||this.zh()),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 6:return this.Cb&&(i=(o=this.Db>>16,o>=0?cq(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,6,i)}return u=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),u.Nj().Qj(this,$c(this),n-Ft(this.zh()),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 6:return yu(this,null,6,i);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),Fr(this.A,t,i)}return o=c(at((r=c(vt(this,16),26),r||this.zh()),n),66),o.Nj().Rj(this,$c(this),n-Ft(this.zh()),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!I0(this);case 4:return this.zj()!=null;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!j_(this);case 7:return!!this.A&&this.A.i!=0}return xu(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:J8(this,ln(n));return;case 2:LF(this,ln(n));return;case 5:jE(this,ln(n));return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A),!this.A&&(this.A=new gs(Gc,this,7)),Mi(this.A,c(n,14));return}qu(this,t-Ft(this.zh()),at((i=c(vt(this,16),26),i||this.zh()),t),n)},s.zh=function(){return ot(),Cft},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,179)&&(c(this.Cb,179).tb=null),kc(this,null);return;case 2:nE(this,null),z_(this,this.D);return;case 5:jE(this,null);return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A);return}$u(this,t-Ft(this.zh()),at((n=c(vt(this,16),26),n||this.zh()),t))},s.yj=function(){var t;return this.G==-1&&(this.G=(t=bu(this),t?wd(t.Mh(),this):-1)),this.G},s.zj=function(){return null},s.Aj=function(){return bu(this)},s.vk=function(){return this.v},s.Bj=function(){return I0(this)},s.Cj=function(){return this.D!=null?this.D:this.B},s.Dj=function(){return this.F},s.wj=function(t){return Qq(this,t)},s.wk=function(t){this.v=t},s.xk=function(t){NKe(this,t)},s.yk=function(t){this.C=t},s.Lh=function(t){J8(this,t)},s.Ib=function(){return a7(this)},s.C=null,s.D=null,s.G=-1,S(mt,"EClassifierImpl",351),y(88,351,{105:1,92:1,90:1,26:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,88:1,351:1,150:1,473:1,114:1,115:1,676:1},UJ),s.uk=function(t){return r_t(this,t.Tg())},s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return I0(this);case 4:return null;case 5:return this.F;case 6:return n?bu(this):j_(this);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),this.A;case 8:return Pt(),(this.Bb&256)!=0;case 9:return Pt(),(this.Bb&512)!=0;case 10:return So(this);case 11:return!this.q&&(this.q=new Me(ya,this,11,10)),this.q;case 12:return sv(this);case 13:return S6(this);case 14:return S6(this),this.r;case 15:return sv(this),this.k;case 16:return Zce(this);case 17:return iH(this);case 18:return wf(this);case 19:return z7(this);case 20:return sv(this),this.o;case 21:return!this.s&&(this.s=new Me(us,this,21,17)),this.s;case 22:return dc(this);case 23:return qq(this)}return Nu(this,t-Ft((ot(),eg)),at((r=c(vt(this,16),26),r||eg),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 6:return this.Cb&&(i=(o=this.Db>>16,o>=0?cq(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,6,i);case 11:return!this.q&&(this.q=new Me(ya,this,11,10)),Rc(this.q,t,i);case 21:return!this.s&&(this.s=new Me(us,this,21,17)),Rc(this.s,t,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),eg)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),eg)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 6:return yu(this,null,6,i);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),Fr(this.A,t,i);case 11:return!this.q&&(this.q=new Me(ya,this,11,10)),Fr(this.q,t,i);case 21:return!this.s&&(this.s=new Me(us,this,21,17)),Fr(this.s,t,i);case 22:return Fr(dc(this),t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),eg)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),eg)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!I0(this);case 4:return!1;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!j_(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)!=0;case 9:return(this.Bb&512)!=0;case 10:return!!this.u&&dc(this.u.a).i!=0&&!(this.n&&YK(this.n));case 11:return!!this.q&&this.q.i!=0;case 12:return sv(this).i!=0;case 13:return S6(this).i!=0;case 14:return S6(this),this.r.i!=0;case 15:return sv(this),this.k.i!=0;case 16:return Zce(this).i!=0;case 17:return iH(this).i!=0;case 18:return wf(this).i!=0;case 19:return z7(this).i!=0;case 20:return sv(this),!!this.o;case 21:return!!this.s&&this.s.i!=0;case 22:return!!this.n&&YK(this.n);case 23:return qq(this).i!=0}return xu(this,t-Ft((ot(),eg)),at((n=c(vt(this,16),26),n||eg),t))},s.oh=function(t){var n;return n=this.i==null||this.q&&this.q.i!=0?null:QI(this,t),n||Aue(this,t)},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:J8(this,ln(n));return;case 2:LF(this,ln(n));return;case 5:jE(this,ln(n));return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A),!this.A&&(this.A=new gs(Gc,this,7)),Mi(this.A,c(n,14));return;case 8:roe(this,Be(Fe(n)));return;case 9:ooe(this,Be(Fe(n)));return;case 10:C6(So(this)),Mi(So(this),c(n,14));return;case 11:!this.q&&(this.q=new Me(ya,this,11,10)),Xt(this.q),!this.q&&(this.q=new Me(ya,this,11,10)),Mi(this.q,c(n,14));return;case 21:!this.s&&(this.s=new Me(us,this,21,17)),Xt(this.s),!this.s&&(this.s=new Me(us,this,21,17)),Mi(this.s,c(n,14));return;case 22:Xt(dc(this)),Mi(dc(this),c(n,14));return}qu(this,t-Ft((ot(),eg)),at((i=c(vt(this,16),26),i||eg),t),n)},s.zh=function(){return ot(),eg},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,179)&&(c(this.Cb,179).tb=null),kc(this,null);return;case 2:nE(this,null),z_(this,this.D);return;case 5:jE(this,null);return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A);return;case 8:roe(this,!1);return;case 9:ooe(this,!1);return;case 10:this.u&&C6(this.u);return;case 11:!this.q&&(this.q=new Me(ya,this,11,10)),Xt(this.q);return;case 21:!this.s&&(this.s=new Me(us,this,21,17)),Xt(this.s);return;case 22:this.n&&Xt(this.n);return}$u(this,t-Ft((ot(),eg)),at((n=c(vt(this,16),26),n||eg),t))},s.Gh=function(){var t,n;if(sv(this),S6(this),Zce(this),iH(this),wf(this),z7(this),qq(this),B5(_4t(Ls(this))),this.s)for(t=0,n=this.s.i;t=0;--n)ee(this,n);return Ioe(this,t)},s.Xj=function(){Xt(this)},s.oi=function(t,n){return cKe(this,t,n)},S(ai,"EcoreEList",622),y(496,622,xo,OC),s.ai=function(){return!1},s.aj=function(){return this.c},s.bj=function(){return!1},s.Fk=function(){return!0},s.hi=function(){return!0},s.li=function(t,n){return n},s.ni=function(){return!1},s.c=0,S(ai,"EObjectEList",496),y(85,496,xo,qi),s.bj=function(){return!0},s.Dk=function(){return!1},s.rk=function(){return!0},S(ai,"EObjectContainmentEList",85),y(545,85,xo,U9),s.ci=function(){this.b=!0},s.fj=function(){return this.b},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.b,this.b=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.b=!1},s.b=!1,S(ai,"EObjectContainmentEList/Unsettable",545),y(1140,545,xo,GRe),s.ii=function(t,n){var i,r;return i=c(t6(this,t,n),87),Qs(this.e)&&Q3(this,new QC(this.a,7,(ot(),Ift),Ce(n),(r=i.c,Q(r,88)?c(r,26):Ea),t)),i},s.jj=function(t,n){return a9t(this,c(t,87),n)},s.kj=function(t,n){return u9t(this,c(t,87),n)},s.lj=function(t,n,i){return l7t(this,c(t,87),c(n,87),i)},s.Zi=function(t,n,i,r,o){switch(t){case 3:return k5(this,t,n,i,r,this.i>1);case 5:return k5(this,t,n,i,r,this.i-c(i,15).gc()>0);default:return new Ah(this.e,t,this.c,n,i,r,!0)}},s.ij=function(){return!0},s.fj=function(){return YK(this)},s.Xj=function(){Xt(this)},S(mt,"EClassImpl/1",1140),y(1154,1153,Ffe),s.ui=function(t){var n,i,r,o,u,a,l;if(i=t.xi(),i!=8){if(r=G9t(t),r==0)switch(i){case 1:case 9:{l=t.Bi(),l!=null&&(n=Ls(c(l,473)),!n.c&&(n.c=new G3),_O(n.c,t.Ai())),a=t.zi(),a!=null&&(o=c(a,473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),on(n.c,c(t.Ai(),26))));break}case 3:{a=t.zi(),a!=null&&(o=c(a,473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),on(n.c,c(t.Ai(),26))));break}case 5:{if(a=t.zi(),a!=null)for(u=c(a,14).Kc();u.Ob();)o=c(u.Pb(),473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),on(n.c,c(t.Ai(),26)));break}case 4:{l=t.Bi(),l!=null&&(o=c(l,473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),_O(n.c,t.Ai())));break}case 6:{if(l=t.Bi(),l!=null)for(u=c(l,14).Kc();u.Ob();)o=c(u.Pb(),473),(o.Bb&1)==0&&(n=Ls(o),!n.c&&(n.c=new G3),_O(n.c,t.Ai()));break}}this.Hk(r)}},s.Hk=function(t){VWe(this,t)},s.b=63,S(mt,"ESuperAdapter",1154),y(1155,1154,Ffe,rAe),s.Hk=function(t){lw(this,t)},S(mt,"EClassImpl/10",1155),y(1144,696,xo),s.Vh=function(t,n){return wq(this,t,n)},s.Wh=function(t){return Kze(this,t)},s.Xh=function(t,n){MI(this,t,n)},s.Yh=function(t){UC(this,t)},s.pi=function(t){return Lie(this,t)},s.mi=function(t,n){return L$(this,t,n)},s.lk=function(t,n){throw V(new sn)},s.Zh=function(){return new Gy(this)},s.$h=function(){return new vC(this)},s._h=function(t){return lI(this,t)},s.mk=function(t,n){throw V(new sn)},s.Wj=function(t){return this},s.fj=function(){return this.i!=0},s.Wb=function(t){throw V(new sn)},s.Xj=function(){throw V(new sn)},S(ai,"EcoreEList/UnmodifiableEList",1144),y(319,1144,xo,Im),s.ni=function(){return!1},S(ai,"EcoreEList/UnmodifiableEList/FastCompare",319),y(1147,319,xo,jqe),s.Xc=function(t){var n,i,r;if(Q(t,170)&&(n=c(t,170),i=n.aj(),i!=-1)){for(r=this.i;i4)if(this.wj(t)){if(this.rk()){if(r=c(t,49),i=r.Ug(),l=i==this.b&&(this.Dk()?r.Og(r.Vg(),c(at(Xc(this.b),this.aj()).Yj(),26).Bj())==Xr(c(at(Xc(this.b),this.aj()),18)).n:-1-r.Vg()==this.aj()),this.Ek()&&!l&&!i&&r.Zg()){for(o=0;o1||r==-1)):!1},s.Dk=function(){var t,n,i;return n=at(Xc(this.b),this.aj()),Q(n,99)?(t=c(n,18),i=Xr(t),!!i):!1},s.Ek=function(){var t,n;return n=at(Xc(this.b),this.aj()),Q(n,99)?(t=c(n,18),(t.Bb&Vr)!=0):!1},s.Xc=function(t){var n,i,r,o;if(r=this.Qi(t),r>=0)return r;if(this.Fk()){for(i=0,o=this.Vi();i=0;--t)sT(this,t,this.Oi(t));return this.Wi()},s.Qc=function(t){var n;if(this.Ek())for(n=this.Vi()-1;n>=0;--n)sT(this,n,this.Oi(n));return this.Xi(t)},s.Xj=function(){C6(this)},s.oi=function(t,n){return zBe(this,t,n)},S(ai,"DelegatingEcoreEList",742),y(1150,742,qfe,ske),s.Hi=function(t,n){D3t(this,t,c(n,26))},s.Ii=function(t){C2t(this,c(t,26))},s.Oi=function(t){var n,i;return n=c(ee(dc(this.a),t),87),i=n.c,Q(i,88)?c(i,26):(ot(),Ea)},s.Ti=function(t){var n,i;return n=c(hw(dc(this.a),t),87),i=n.c,Q(i,88)?c(i,26):(ot(),Ea)},s.Ui=function(t,n){return k8t(this,t,c(n,26))},s.ai=function(){return!1},s.Zi=function(t,n,i,r,o){return null},s.Ji=function(){return new cAe(this)},s.Ki=function(){Xt(dc(this.a))},s.Li=function(t){return yHe(this,t)},s.Mi=function(t){var n,i;for(i=t.Kc();i.Ob();)if(n=i.Pb(),!yHe(this,n))return!1;return!0},s.Ni=function(t){var n,i,r;if(Q(t,15)&&(r=c(t,15),r.gc()==dc(this.a).i)){for(n=r.Kc(),i=new $t(this);n.Ob();)if(le(n.Pb())!==le(Vt(i)))return!1;return!0}return!1},s.Pi=function(){var t,n,i,r,o;for(i=1,n=new $t(dc(this.a));n.e!=n.i.gc();)t=c(Vt(n),87),r=(o=t.c,Q(o,88)?c(o,26):(ot(),Ea)),i=31*i+(r?Xb(r):0);return i},s.Qi=function(t){var n,i,r,o;for(r=0,i=new $t(dc(this.a));i.e!=i.i.gc();){if(n=c(Vt(i),87),le(t)===le((o=n.c,Q(o,88)?c(o,26):(ot(),Ea))))return r;++r}return-1},s.Ri=function(){return dc(this.a).i==0},s.Si=function(){return null},s.Vi=function(){return dc(this.a).i},s.Wi=function(){var t,n,i,r,o,u;for(u=dc(this.a).i,o=oe(xt,xe,1,u,5,1),i=0,n=new $t(dc(this.a));n.e!=n.i.gc();)t=c(Vt(n),87),o[i++]=(r=t.c,Q(r,88)?c(r,26):(ot(),Ea));return o},s.Xi=function(t){var n,i,r,o,u,a,l;for(l=dc(this.a).i,t.lengthl&&vi(t,l,null),r=0,i=new $t(dc(this.a));i.e!=i.i.gc();)n=c(Vt(i),87),u=(a=n.c,Q(a,88)?c(a,26):(ot(),Ea)),vi(t,r++,u);return t},s.Yi=function(){var t,n,i,r,o;for(o=new nd,o.a+="[",t=dc(this.a),n=0,r=dc(this.a).i;n>16,o>=0?cq(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,6,i);case 9:return!this.a&&(this.a=new Me(Yh,this,9,5)),Rc(this.a,t,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),tg)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),tg)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 6:return yu(this,null,6,i);case 7:return!this.A&&(this.A=new gs(Gc,this,7)),Fr(this.A,t,i);case 9:return!this.a&&(this.a=new Me(Yh,this,9,5)),Fr(this.a,t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),tg)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),tg)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return!!I0(this);case 4:return!!zre(this);case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return!!j_(this);case 7:return!!this.A&&this.A.i!=0;case 8:return(this.Bb&256)==0;case 9:return!!this.a&&this.a.i!=0}return xu(this,t-Ft((ot(),tg)),at((n=c(vt(this,16),26),n||tg),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:J8(this,ln(n));return;case 2:LF(this,ln(n));return;case 5:jE(this,ln(n));return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A),!this.A&&(this.A=new gs(Gc,this,7)),Mi(this.A,c(n,14));return;case 8:i7(this,Be(Fe(n)));return;case 9:!this.a&&(this.a=new Me(Yh,this,9,5)),Xt(this.a),!this.a&&(this.a=new Me(Yh,this,9,5)),Mi(this.a,c(n,14));return}qu(this,t-Ft((ot(),tg)),at((i=c(vt(this,16),26),i||tg),t),n)},s.zh=function(){return ot(),tg},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,179)&&(c(this.Cb,179).tb=null),kc(this,null);return;case 2:nE(this,null),z_(this,this.D);return;case 5:jE(this,null);return;case 7:!this.A&&(this.A=new gs(Gc,this,7)),Xt(this.A);return;case 8:i7(this,!0);return;case 9:!this.a&&(this.a=new Me(Yh,this,9,5)),Xt(this.a);return}$u(this,t-Ft((ot(),tg)),at((n=c(vt(this,16),26),n||tg),t))},s.Gh=function(){var t,n;if(this.a)for(t=0,n=this.a.i;t>16==5?c(this.Cb,671):null}return Nu(this,t-Ft((ot(),xd)),at((r=c(vt(this,16),26),r||xd),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 5:return this.Cb&&(i=(o=this.Db>>16,o>=0?hVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,5,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),xd)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),xd)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 5:return yu(this,null,5,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),xd)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),xd)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.d!=0;case 3:return!!this.b;case 4:return this.c!=null;case 5:return!!(this.Db>>16==5&&c(this.Cb,671))}return xu(this,t-Ft((ot(),xd)),at((n=c(vt(this,16),26),n||xd),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:q$(this,c(n,19).a);return;case 3:sUe(this,c(n,1940));return;case 4:z$(this,ln(n));return}qu(this,t-Ft((ot(),xd)),at((i=c(vt(this,16),26),i||xd),t),n)},s.zh=function(){return ot(),xd},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:q$(this,0);return;case 3:sUe(this,null);return;case 4:z$(this,null);return}$u(this,t-Ft((ot(),xd)),at((n=c(vt(this,16),26),n||xd),t))},s.Ib=function(){var t;return t=this.c,t??this.zb},s.b=null,s.c=null,s.d=0,S(mt,"EEnumLiteralImpl",573);var Fzt=pi(mt,"EFactoryImpl/InternalEDateTimeFormat");y(489,1,{2015:1},VM),S(mt,"EFactoryImpl/1ClientInternalEDateTimeFormat",489),y(241,115,{105:1,92:1,90:1,87:1,56:1,108:1,49:1,97:1,241:1,114:1,115:1},Nb),s.Sg=function(t,n,i){var r;return i=yu(this,t,n,i),this.e&&Q(t,170)&&(r=H7(this,this.e),r!=this.c&&(i=AE(this,r,i))),i},s._g=function(t,n,i){var r;switch(t){case 0:return this.f;case 1:return!this.d&&(this.d=new qi(oo,this,1)),this.d;case 2:return n?eD(this):this.c;case 3:return this.b;case 4:return this.e;case 5:return n?QK(this):this.a}return Nu(this,t-Ft((ot(),sp)),at((r=c(vt(this,16),26),r||sp),t),n,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return lHe(this,null,i);case 1:return!this.d&&(this.d=new qi(oo,this,1)),Fr(this.d,t,i);case 3:return aHe(this,null,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),sp)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),sp)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.f;case 1:return!!this.d&&this.d.i!=0;case 2:return!!this.c;case 3:return!!this.b;case 4:return!!this.e;case 5:return!!this.a}return xu(this,t-Ft((ot(),sp)),at((n=c(vt(this,16),26),n||sp),t))},s.sh=function(t,n){var i;switch(t){case 0:AVe(this,c(n,87));return;case 1:!this.d&&(this.d=new qi(oo,this,1)),Xt(this.d),!this.d&&(this.d=new qi(oo,this,1)),Mi(this.d,c(n,14));return;case 3:Sce(this,c(n,87));return;case 4:$ce(this,c(n,836));return;case 5:B_(this,c(n,138));return}qu(this,t-Ft((ot(),sp)),at((i=c(vt(this,16),26),i||sp),t),n)},s.zh=function(){return ot(),sp},s.Bh=function(t){var n;switch(t){case 0:AVe(this,null);return;case 1:!this.d&&(this.d=new qi(oo,this,1)),Xt(this.d);return;case 3:Sce(this,null);return;case 4:$ce(this,null);return;case 5:B_(this,null);return}$u(this,t-Ft((ot(),sp)),at((n=c(vt(this,16),26),n||sp),t))},s.Ib=function(){var t;return t=new lu(Ba(this)),t.a+=" (expression: ",sH(this,t),t.a+=")",t.a};var ume;S(mt,"EGenericTypeImpl",241),y(1969,1964,sk),s.Xh=function(t,n){rke(this,t,n)},s.lk=function(t,n){return rke(this,this.gc(),t),n},s.pi=function(t){return hl(this.Gi(),t)},s.Zh=function(){return this.$h()},s.Gi=function(){return new lAe(this)},s.$h=function(){return this._h(0)},s._h=function(t){return this.Gi().Zc(t)},s.mk=function(t,n){return nw(this,t,!0),n},s.ii=function(t,n){var i,r;return r=uq(this,n),i=this.Zc(t),i.Rb(r),r},s.ji=function(t,n){var i;nw(this,n,!0),i=this.Zc(t),i.Rb(n)},S(ai,"AbstractSequentialInternalEList",1969),y(486,1969,sk,mC),s.pi=function(t){return hl(this.Gi(),t)},s.Zh=function(){return this.b==null?(rd(),rd(),Yj):this.Jk()},s.Gi=function(){return new j7e(this.a,this.b)},s.$h=function(){return this.b==null?(rd(),rd(),Yj):this.Jk()},s._h=function(t){var n,i;if(this.b==null){if(t<0||t>1)throw V(new ho(J6+t+", size=0"));return rd(),rd(),Yj}for(i=this.Jk(),n=0;n0;)if(n=this.c[--this.d],(!this.e||n.Gj()!=x4||n.aj()!=0)&&(!this.Mk()||this.b.mh(n))){if(u=this.b.bh(n,this.Lk()),this.f=(Wr(),c(n,66).Oj()),this.f||n.$j()){if(this.Lk()?(r=c(u,15),this.k=r):(r=c(u,69),this.k=this.j=r),Q(this.k,54)?(this.o=this.k.gc(),this.n=this.o):this.p=this.j?this.j._h(this.k.gc()):this.k.Zc(this.k.gc()),this.p?EGe(this,this.p):RGe(this))return o=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?(t=c(o,72),t.ak(),i=t.dd(),this.i=i):(i=o,this.i=i),this.g=-3,!0}else if(u!=null)return this.k=null,this.p=null,i=u,this.i=i,this.g=-2,!0}return this.k=null,this.p=null,this.g=-1,!1}else return o=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?(t=c(o,72),t.ak(),i=t.dd(),this.i=i):(i=o,this.i=i),this.g=-3,!0}},s.Pb=function(){return UO(this)},s.Tb=function(){return this.a},s.Ub=function(){var t;if(this.g<-1||this.Sb())return--this.a,this.g=0,t=this.i,this.Sb(),t;throw V(new tc)},s.Vb=function(){return this.a-1},s.Qb=function(){throw V(new sn)},s.Lk=function(){return!1},s.Wb=function(t){throw V(new sn)},s.Mk=function(){return!0},s.a=0,s.d=0,s.f=!1,s.g=0,s.n=0,s.o=0;var Yj;S(ai,"EContentsEList/FeatureIteratorImpl",279),y(697,279,uk,Vee),s.Lk=function(){return!0},S(ai,"EContentsEList/ResolvingFeatureIteratorImpl",697),y(1157,697,uk,GDe),s.Mk=function(){return!1},S(mt,"ENamedElementImpl/1/1",1157),y(1158,279,uk,VDe),s.Mk=function(){return!1},S(mt,"ENamedElementImpl/1/2",1158),y(36,143,xT,Up,b$,sr,A$,Ah,La,Yie,yNe,Xie,_Ne,yie,ENe,Zie,SNe,_ie,PNe,Jie,MNe,C5,QC,UB,Qie,CNe,Eie,INe),s._i=function(){return kie(this)},s.gj=function(){var t;return t=kie(this),t?t.zj():null},s.yi=function(t){return this.b==-1&&this.a&&(this.b=this.c.Xg(this.a.aj(),this.a.Gj())),this.c.Og(this.b,t)},s.Ai=function(){return this.c},s.hj=function(){var t;return t=kie(this),t?t.Kj():!1},s.b=-1,S(mt,"ENotificationImpl",36),y(399,284,{105:1,92:1,90:1,147:1,191:1,56:1,59:1,108:1,472:1,49:1,97:1,150:1,399:1,284:1,114:1,115:1},NN),s.Qg=function(t){return bVe(this,t)},s._g=function(t,n,i){var r,o,u;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),u=this.t,u>1||u==-1;case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?c(this.Cb,26):null;case 11:return!this.d&&(this.d=new gs(Gc,this,11)),this.d;case 12:return!this.c&&(this.c=new Me(cp,this,12,10)),this.c;case 13:return!this.a&&(this.a=new PC(this,this)),this.a;case 14:return Ns(this)}return Nu(this,t-Ft((ot(),Ld)),at((r=c(vt(this,16),26),r||Ld),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 10:return this.Cb&&(i=(o=this.Db>>16,o>=0?bVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,10,i);case 12:return!this.c&&(this.c=new Me(cp,this,12,10)),Rc(this.c,t,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),Ld)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),Ld)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i);case 10:return yu(this,null,10,i);case 11:return!this.d&&(this.d=new gs(Gc,this,11)),Fr(this.d,t,i);case 12:return!this.c&&(this.c=new Me(cp,this,12,10)),Fr(this.c,t,i);case 14:return Fr(Ns(this),t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),Ld)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),Ld)),t,i)},s.lh=function(t){var n,i,r;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return r=this.t,r>1||r==-1;case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return!!(this.Db>>16==10&&c(this.Cb,26));case 11:return!!this.d&&this.d.i!=0;case 12:return!!this.c&&this.c.i!=0;case 13:return!!this.a&&Ns(this.a.a).i!=0&&!(this.b&&XK(this.b));case 14:return!!this.b&&XK(this.b)}return xu(this,t-Ft((ot(),Ld)),at((n=c(vt(this,16),26),n||Ld),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:Zp(this,c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 11:!this.d&&(this.d=new gs(Gc,this,11)),Xt(this.d),!this.d&&(this.d=new gs(Gc,this,11)),Mi(this.d,c(n,14));return;case 12:!this.c&&(this.c=new Me(cp,this,12,10)),Xt(this.c),!this.c&&(this.c=new Me(cp,this,12,10)),Mi(this.c,c(n,14));return;case 13:!this.a&&(this.a=new PC(this,this)),C6(this.a),!this.a&&(this.a=new PC(this,this)),Mi(this.a,c(n,14));return;case 14:Xt(Ns(this)),Mi(Ns(this),c(n,14));return}qu(this,t-Ft((ot(),Ld)),at((i=c(vt(this,16),26),i||Ld),t),n)},s.zh=function(){return ot(),Ld},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:Zp(this,1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 11:!this.d&&(this.d=new gs(Gc,this,11)),Xt(this.d);return;case 12:!this.c&&(this.c=new Me(cp,this,12,10)),Xt(this.c);return;case 13:this.a&&C6(this.a);return;case 14:this.b&&Xt(this.b);return}$u(this,t-Ft((ot(),Ld)),at((n=c(vt(this,16),26),n||Ld),t))},s.Gh=function(){var t,n;if(this.c)for(t=0,n=this.c.i;tl&&vi(t,l,null),r=0,i=new $t(Ns(this.a));i.e!=i.i.gc();)n=c(Vt(i),87),u=(a=n.c,a||(ot(),Ql)),vi(t,r++,u);return t},s.Yi=function(){var t,n,i,r,o;for(o=new nd,o.a+="[",t=Ns(this.a),n=0,r=Ns(this.a).i;n1);case 5:return k5(this,t,n,i,r,this.i-c(i,15).gc()>0);default:return new Ah(this.e,t,this.c,n,i,r,!0)}},s.ij=function(){return!0},s.fj=function(){return XK(this)},s.Xj=function(){Xt(this)},S(mt,"EOperationImpl/2",1341),y(498,1,{1938:1,498:1},a7e),S(mt,"EPackageImpl/1",498),y(16,85,xo,Me),s.zk=function(){return this.d},s.Ak=function(){return this.b},s.Dk=function(){return!0},s.b=0,S(ai,"EObjectContainmentWithInverseEList",16),y(353,16,xo,Uy),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentWithInverseEList/Resolving",353),y(298,353,xo,Kp),s.ci=function(){this.a.tb=null},S(mt,"EPackageImpl/2",298),y(1228,1,{},Pmt),S(mt,"EPackageImpl/3",1228),y(718,43,fv,UQ),s._b=function(t){return fr(t)?WB(this,t):!!Po(this.f,t)},S(mt,"EPackageRegistryImpl",718),y(509,284,{105:1,92:1,90:1,147:1,191:1,56:1,2017:1,108:1,472:1,49:1,97:1,150:1,509:1,284:1,114:1,115:1},FN),s.Qg=function(t){return pVe(this,t)},s._g=function(t,n,i){var r,o,u;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),u=this.t,u>1||u==-1;case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?c(this.Cb,59):null}return Nu(this,t-Ft((ot(),em)),at((r=c(vt(this,16),26),r||em),t),n,i)},s.hh=function(t,n,i){var r,o,u;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Rc(this.Ab,t,i);case 10:return this.Cb&&(i=(o=this.Db>>16,o>=0?pVe(this,i):this.Cb.ih(this,-1-o,null,i))),yu(this,t,10,i)}return u=c(at((r=c(vt(this,16),26),r||(ot(),em)),n),66),u.Nj().Qj(this,$c(this),n-Ft((ot(),em)),t,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 9:return kB(this,i);case 10:return yu(this,null,10,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),em)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),em)),t,i)},s.lh=function(t){var n,i,r;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return r=this.t,r>1||r==-1;case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return!!(this.Db>>16==10&&c(this.Cb,59))}return xu(this,t-Ft((ot(),em)),at((n=c(vt(this,16),26),n||em),t))},s.zh=function(){return ot(),em},S(mt,"EParameterImpl",509),y(99,449,{105:1,92:1,90:1,147:1,191:1,56:1,18:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,99:1,449:1,284:1,114:1,115:1,677:1},Xee),s._g=function(t,n,i){var r,o,u,a;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Pt(),(this.Bb&256)!=0;case 3:return Pt(),(this.Bb&512)!=0;case 4:return Ce(this.s);case 5:return Ce(this.t);case 6:return Pt(),a=this.t,a>1||a==-1;case 7:return Pt(),o=this.s,o>=1;case 8:return n?ra(this):this.r;case 9:return this.q;case 10:return Pt(),(this.Bb&Ka)!=0;case 11:return Pt(),(this.Bb&Iw)!=0;case 12:return Pt(),(this.Bb&vw)!=0;case 13:return this.j;case 14:return SE(this);case 15:return Pt(),(this.Bb&Es)!=0;case 16:return Pt(),(this.Bb&mf)!=0;case 17:return zp(this);case 18:return Pt(),(this.Bb&rc)!=0;case 19:return Pt(),u=Xr(this),!!(u&&(u.Bb&rc)!=0);case 20:return Pt(),(this.Bb&Vr)!=0;case 21:return n?Xr(this):this.b;case 22:return n?kre(this):YFe(this);case 23:return!this.a&&(this.a=new Om(Jw,this,23)),this.a}return Nu(this,t-Ft((ot(),Uv)),at((r=c(vt(this,16),26),r||Uv),t),n,i)},s.lh=function(t){var n,i,r,o;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return(this.Bb&256)==0;case 3:return(this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return o=this.t,o>1||o==-1;case 7:return i=this.s,i>=1;case 8:return!!this.r&&!this.q.e&&r0(this.q).i==0;case 9:return!!this.q&&!(this.r&&!this.q.e&&r0(this.q).i==0);case 10:return(this.Bb&Ka)==0;case 11:return(this.Bb&Iw)!=0;case 12:return(this.Bb&vw)!=0;case 13:return this.j!=null;case 14:return SE(this)!=null;case 15:return(this.Bb&Es)!=0;case 16:return(this.Bb&mf)!=0;case 17:return!!zp(this);case 18:return(this.Bb&rc)!=0;case 19:return r=Xr(this),!!r&&(r.Bb&rc)!=0;case 20:return(this.Bb&Vr)==0;case 21:return!!this.b;case 22:return!!YFe(this);case 23:return!!this.a&&this.a.i!=0}return xu(this,t-Ft((ot(),Uv)),at((n=c(vt(this,16),26),n||Uv),t))},s.sh=function(t,n){var i,r;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:s$(this,ln(n));return;case 2:bd(this,Be(Fe(n)));return;case 3:pd(this,Be(Fe(n)));return;case 4:hd(this,c(n,19).a);return;case 5:Zp(this,c(n,19).a);return;case 8:Ug(this,c(n,138));return;case 9:r=$l(this,c(n,87),null),r&&r.Fi();return;case 10:cE(this,Be(Fe(n)));return;case 11:aE(this,Be(Fe(n)));return;case 12:sE(this,Be(Fe(n)));return;case 13:ree(this,ln(n));return;case 15:uE(this,Be(Fe(n)));return;case 16:lE(this,Be(Fe(n)));return;case 18:F6t(this,Be(Fe(n)));return;case 20:loe(this,Be(Fe(n)));return;case 21:are(this,c(n,18));return;case 23:!this.a&&(this.a=new Om(Jw,this,23)),Xt(this.a),!this.a&&(this.a=new Om(Jw,this,23)),Mi(this.a,c(n,14));return}qu(this,t-Ft((ot(),Uv)),at((i=c(vt(this,16),26),i||Uv),t),n)},s.zh=function(){return ot(),Uv},s.Bh=function(t){var n,i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),4),kc(this,null);return;case 2:bd(this,!0);return;case 3:pd(this,!0);return;case 4:hd(this,0);return;case 5:Zp(this,1);return;case 8:Ug(this,null);return;case 9:i=$l(this,null,null),i&&i.Fi();return;case 10:cE(this,!0);return;case 11:aE(this,!1);return;case 12:sE(this,!1);return;case 13:this.i=null,NO(this,null);return;case 15:uE(this,!1);return;case 16:lE(this,!1);return;case 18:aoe(this,!1),Q(this.Cb,88)&&lw(Ls(c(this.Cb,88)),2);return;case 20:loe(this,!0);return;case 21:are(this,null);return;case 23:!this.a&&(this.a=new Om(Jw,this,23)),Xt(this.a);return}$u(this,t-Ft((ot(),Uv)),at((n=c(vt(this,16),26),n||Uv),t))},s.Gh=function(){kre(this),C_(wo((vs(),Ir),this)),ra(this),this.Bb|=1},s.Lj=function(){return Xr(this)},s.qk=function(){var t;return t=Xr(this),!!t&&(t.Bb&rc)!=0},s.rk=function(){return(this.Bb&rc)!=0},s.sk=function(){return(this.Bb&Vr)!=0},s.nk=function(t,n){return this.c=null,noe(this,t,n)},s.Ib=function(){var t;return(this.Db&64)!=0?J7(this):(t=new ea(J7(this)),t.a+=" (containment: ",id(t,(this.Bb&rc)!=0),t.a+=", resolveProxies: ",id(t,(this.Bb&Vr)!=0),t.a+=")",t.a)},S(mt,"EReferenceImpl",99),y(548,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,548:1,114:1,115:1},D6e),s.Fb=function(t){return this===t},s.cd=function(){return this.b},s.dd=function(){return this.c},s.Hb=function(){return Xb(this)},s.Uh=function(t){H4t(this,ln(t))},s.ed=function(t){return O4t(this,ln(t))},s._g=function(t,n,i){var r;switch(t){case 0:return this.b;case 1:return this.c}return Nu(this,t-Ft((ot(),Ur)),at((r=c(vt(this,16),26),r||Ur),t),n,i)},s.lh=function(t){var n;switch(t){case 0:return this.b!=null;case 1:return this.c!=null}return xu(this,t-Ft((ot(),Ur)),at((n=c(vt(this,16),26),n||Ur),t))},s.sh=function(t,n){var i;switch(t){case 0:z4t(this,ln(n));return;case 1:cre(this,ln(n));return}qu(this,t-Ft((ot(),Ur)),at((i=c(vt(this,16),26),i||Ur),t),n)},s.zh=function(){return ot(),Ur},s.Bh=function(t){var n;switch(t){case 0:ore(this,null);return;case 1:cre(this,null);return}$u(this,t-Ft((ot(),Ur)),at((n=c(vt(this,16),26),n||Ur),t))},s.Sh=function(){var t;return this.a==-1&&(t=this.b,this.a=t==null?0:md(t)),this.a},s.Th=function(t){this.a=t},s.Ib=function(){var t;return(this.Db&64)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (key: ",co(t,this.b),t.a+=", value: ",co(t,this.c),t.a+=")",t.a)},s.a=-1,s.b=null,s.c=null;var ec=S(mt,"EStringToStringMapEntryImpl",548),Nft=pi(ai,"FeatureMap/Entry/Internal");y(565,1,ak),s.Ok=function(t){return this.Pk(c(t,49))},s.Pk=function(t){return this.Ok(t)},s.Fb=function(t){var n,i;return this===t?!0:Q(t,72)?(n=c(t,72),n.ak()==this.c?(i=this.dd(),i==null?n.dd()==null:$n(i,n.dd())):!1):!1},s.ak=function(){return this.c},s.Hb=function(){var t;return t=this.dd(),fi(this.c)^(t==null?0:fi(t))},s.Ib=function(){var t,n;return t=this.c,n=bu(t.Hj()).Ph(),t.ne(),(n!=null&&n.length!=0?n+":"+t.ne():t.ne())+"="+this.dd()},S(mt,"EStructuralFeatureImpl/BasicFeatureMapEntry",565),y(776,565,ak,ote),s.Pk=function(t){return new ote(this.c,t)},s.dd=function(){return this.a},s.Qk=function(t,n,i){return cTt(this,t,this.a,n,i)},s.Rk=function(t,n,i){return sTt(this,t,this.a,n,i)},S(mt,"EStructuralFeatureImpl/ContainmentUpdatingFeatureMapEntry",776),y(1314,1,{},l7e),s.Pj=function(t,n,i,r,o){var u;return u=c(x_(t,this.b),215),u.nl(this.a).Wj(r)},s.Qj=function(t,n,i,r,o){var u;return u=c(x_(t,this.b),215),u.el(this.a,r,o)},s.Rj=function(t,n,i,r,o){var u;return u=c(x_(t,this.b),215),u.fl(this.a,r,o)},s.Sj=function(t,n,i){var r;return r=c(x_(t,this.b),215),r.nl(this.a).fj()},s.Tj=function(t,n,i,r){var o;o=c(x_(t,this.b),215),o.nl(this.a).Wb(r)},s.Uj=function(t,n,i){return c(x_(t,this.b),215).nl(this.a)},s.Vj=function(t,n,i){var r;r=c(x_(t,this.b),215),r.nl(this.a).Xj()},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateFeatureMapDelegator",1314),y(89,1,{},cd,kg,ud,Lg),s.Pj=function(t,n,i,r,o){var u;if(u=n.Ch(i),u==null&&n.Dh(i,u=lD(this,t)),!o)switch(this.e){case 50:case 41:return c(u,589).sj();case 40:return c(u,215).kl()}return u},s.Qj=function(t,n,i,r,o){var u,a;return a=n.Ch(i),a==null&&n.Dh(i,a=lD(this,t)),u=c(a,69).lk(r,o),u},s.Rj=function(t,n,i,r,o){var u;return u=n.Ch(i),u!=null&&(o=c(u,69).mk(r,o)),o},s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null&&c(r,76).fj()},s.Tj=function(t,n,i,r){var o;o=c(n.Ch(i),76),!o&&n.Dh(i,o=lD(this,t)),o.Wb(r)},s.Uj=function(t,n,i){var r,o;return o=n.Ch(i),o==null&&n.Dh(i,o=lD(this,t)),Q(o,76)?c(o,76):(r=c(n.Ch(i),15),new aAe(r))},s.Vj=function(t,n,i){var r;r=c(n.Ch(i),76),!r&&n.Dh(i,r=lD(this,t)),r.Xj()},s.b=0,s.e=0,S(mt,"EStructuralFeatureImpl/InternalSettingDelegateMany",89),y(504,1,{}),s.Qj=function(t,n,i,r,o){throw V(new sn)},s.Rj=function(t,n,i,r,o){throw V(new sn)},s.Uj=function(t,n,i){return new oLe(this,t,n,i)};var sh;S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingle",504),y(1331,1,qV,oLe),s.Wj=function(t){return this.a.Pj(this.c,this.d,this.b,t,!0)},s.fj=function(){return this.a.Sj(this.c,this.d,this.b)},s.Wb=function(t){this.a.Tj(this.c,this.d,this.b,t)},s.Xj=function(){this.a.Vj(this.c,this.d,this.b)},s.b=0,S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingle/1",1331),y(769,504,{},Kne),s.Pj=function(t,n,i,r,o){return Wq(t,t.eh(),t.Vg())==this.b?this.sk()&&r?Dq(t):t.eh():null},s.Qj=function(t,n,i,r,o){var u,a;return t.eh()&&(o=(u=t.Vg(),u>=0?t.Qg(o):t.eh().ih(t,-1-u,null,o))),a=di(t.Tg(),this.e),t.Sg(r,a,o)},s.Rj=function(t,n,i,r,o){var u;return u=di(t.Tg(),this.e),t.Sg(null,u,o)},s.Sj=function(t,n,i){var r;return r=di(t.Tg(),this.e),!!t.eh()&&t.Vg()==r},s.Tj=function(t,n,i,r){var o,u,a,l,d;if(r!=null&&!Qq(this.a,r))throw V(new e_(lk+(Q(r,56)?_ce(c(r,56).Tg()):Vie(Fs(r)))+fk+this.a+"'"));if(o=t.eh(),a=di(t.Tg(),this.e),le(r)!==le(o)||t.Vg()!=a&&r!=null){if(gE(t,c(r,56)))throw V(new St(Y6+t.Ib()));d=null,o&&(d=(u=t.Vg(),u>=0?t.Qg(d):t.eh().ih(t,-1-u,null,d))),l=c(r,49),l&&(d=l.gh(t,di(l.Tg(),this.b),null,d)),d=t.Sg(l,a,d),d&&d.Fi()}else t.Lg()&&t.Mg()&&Bn(t,new sr(t,1,a,r,r))},s.Vj=function(t,n,i){var r,o,u,a;r=t.eh(),r?(a=(o=t.Vg(),o>=0?t.Qg(null):t.eh().ih(t,-1-o,null,null)),u=di(t.Tg(),this.e),a=t.Sg(null,u,a),a&&a.Fi()):t.Lg()&&t.Mg()&&Bn(t,new C5(t,1,this.e,null,null))},s.sk=function(){return!1},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainer",769),y(1315,769,{},Jke),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainerResolving",1315),y(563,504,{}),s.Pj=function(t,n,i,r,o){var u;return u=n.Ch(i),u==null?this.b:le(u)===le(sh)?null:u},s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null&&(le(r)===le(sh)||!$n(r,this.b))},s.Tj=function(t,n,i,r){var o,u;t.Lg()&&t.Mg()?(o=(u=n.Ch(i),u==null?this.b:le(u)===le(sh)?null:u),r==null?this.c!=null?(n.Dh(i,null),r=this.b):this.b!=null?n.Dh(i,sh):n.Dh(i,null):(this.Sk(r),n.Dh(i,r)),Bn(t,this.d.Tk(t,1,this.e,o,r))):r==null?this.c!=null?n.Dh(i,null):this.b!=null?n.Dh(i,sh):n.Dh(i,null):(this.Sk(r),n.Dh(i,r))},s.Vj=function(t,n,i){var r,o;t.Lg()&&t.Mg()?(r=(o=n.Ch(i),o==null?this.b:le(o)===le(sh)?null:o),n.Eh(i),Bn(t,this.d.Tk(t,1,this.e,r,this.b))):n.Eh(i)},s.Sk=function(t){throw V(new vAe)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData",563),y(_v,1,{},k6e),s.Tk=function(t,n,i,r,o){return new C5(t,n,i,r,o)},s.Uk=function(t,n,i,r,o,u){return new UB(t,n,i,r,o,u)};var ame,lme,fme,hme,dme,gme,bme,pY,pme;S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator",_v),y(1332,_v,{},R6e),s.Tk=function(t,n,i,r,o){return new Eie(t,n,i,Be(Fe(r)),Be(Fe(o)))},s.Uk=function(t,n,i,r,o,u){return new INe(t,n,i,Be(Fe(r)),Be(Fe(o)),u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/1",1332),y(1333,_v,{},x6e),s.Tk=function(t,n,i,r,o){return new Yie(t,n,i,c(r,217).a,c(o,217).a)},s.Uk=function(t,n,i,r,o,u){return new yNe(t,n,i,c(r,217).a,c(o,217).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/2",1333),y(1334,_v,{},L6e),s.Tk=function(t,n,i,r,o){return new Xie(t,n,i,c(r,172).a,c(o,172).a)},s.Uk=function(t,n,i,r,o,u){return new _Ne(t,n,i,c(r,172).a,c(o,172).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/3",1334),y(1335,_v,{},N6e),s.Tk=function(t,n,i,r,o){return new yie(t,n,i,ge(Te(r)),ge(Te(o)))},s.Uk=function(t,n,i,r,o,u){return new ENe(t,n,i,ge(Te(r)),ge(Te(o)),u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/4",1335),y(1336,_v,{},F6e),s.Tk=function(t,n,i,r,o){return new Zie(t,n,i,c(r,155).a,c(o,155).a)},s.Uk=function(t,n,i,r,o,u){return new SNe(t,n,i,c(r,155).a,c(o,155).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/5",1336),y(1337,_v,{},B6e),s.Tk=function(t,n,i,r,o){return new _ie(t,n,i,c(r,19).a,c(o,19).a)},s.Uk=function(t,n,i,r,o,u){return new PNe(t,n,i,c(r,19).a,c(o,19).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/6",1337),y(1338,_v,{},$6e),s.Tk=function(t,n,i,r,o){return new Jie(t,n,i,c(r,162).a,c(o,162).a)},s.Uk=function(t,n,i,r,o,u){return new MNe(t,n,i,c(r,162).a,c(o,162).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/7",1338),y(1339,_v,{},K6e),s.Tk=function(t,n,i,r,o){return new Qie(t,n,i,c(r,184).a,c(o,184).a)},s.Uk=function(t,n,i,r,o,u){return new CNe(t,n,i,c(r,184).a,c(o,184).a,u)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/8",1339),y(1317,563,{},cLe),s.Sk=function(t){if(!this.a.wj(t))throw V(new e_(lk+Fs(t)+fk+this.a+"'"))},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataDynamic",1317),y(1318,563,{},WRe),s.Sk=function(t){},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataStatic",1318),y(770,563,{}),s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null},s.Tj=function(t,n,i,r){var o,u;t.Lg()&&t.Mg()?(o=!0,u=n.Ch(i),u==null?(o=!1,u=this.b):le(u)===le(sh)&&(u=null),r==null?this.c!=null?(n.Dh(i,null),r=this.b):n.Dh(i,sh):(this.Sk(r),n.Dh(i,r)),Bn(t,this.d.Uk(t,1,this.e,u,r,!o))):r==null?this.c!=null?n.Dh(i,null):n.Dh(i,sh):(this.Sk(r),n.Dh(i,r))},s.Vj=function(t,n,i){var r,o;t.Lg()&&t.Mg()?(r=!0,o=n.Ch(i),o==null?(r=!1,o=this.b):le(o)===le(sh)&&(o=null),n.Eh(i),Bn(t,this.d.Uk(t,2,this.e,o,this.b,r))):n.Eh(i)},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettable",770),y(1319,770,{},sLe),s.Sk=function(t){if(!this.a.wj(t))throw V(new e_(lk+Fs(t)+fk+this.a+"'"))},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableDynamic",1319),y(1320,770,{},YRe),s.Sk=function(t){},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableStatic",1320),y(398,504,{},w8),s.Pj=function(t,n,i,r,o){var u,a,l,d,p;if(p=n.Ch(i),this.Kj()&&le(p)===le(sh))return null;if(this.sk()&&r&&p!=null){if(l=c(p,49),l.kh()&&(d=S1(t,l),l!=d)){if(!Qq(this.a,d))throw V(new e_(lk+Fs(d)+fk+this.a+"'"));n.Dh(i,p=d),this.rk()&&(u=c(d,49),a=l.ih(t,this.b?di(l.Tg(),this.b):-1-di(t.Tg(),this.e),null,null),!u.eh()&&(a=u.gh(t,this.b?di(u.Tg(),this.b):-1-di(t.Tg(),this.e),null,a)),a&&a.Fi()),t.Lg()&&t.Mg()&&Bn(t,new C5(t,9,this.e,l,d))}return p}else return p},s.Qj=function(t,n,i,r,o){var u,a;return a=n.Ch(i),le(a)===le(sh)&&(a=null),n.Dh(i,r),this.bj()?le(a)!==le(r)&&a!=null&&(u=c(a,49),o=u.ih(t,di(u.Tg(),this.b),null,o)):this.rk()&&a!=null&&(o=c(a,49).ih(t,-1-di(t.Tg(),this.e),null,o)),t.Lg()&&t.Mg()&&(!o&&(o=new i1(4)),o.Ei(new C5(t,1,this.e,a,r))),o},s.Rj=function(t,n,i,r,o){var u;return u=n.Ch(i),le(u)===le(sh)&&(u=null),n.Eh(i),t.Lg()&&t.Mg()&&(!o&&(o=new i1(4)),this.Kj()?o.Ei(new C5(t,2,this.e,u,null)):o.Ei(new C5(t,1,this.e,u,null))),o},s.Sj=function(t,n,i){var r;return r=n.Ch(i),r!=null},s.Tj=function(t,n,i,r){var o,u,a,l,d;if(r!=null&&!Qq(this.a,r))throw V(new e_(lk+(Q(r,56)?_ce(c(r,56).Tg()):Vie(Fs(r)))+fk+this.a+"'"));d=n.Ch(i),l=d!=null,this.Kj()&&le(d)===le(sh)&&(d=null),a=null,this.bj()?le(d)!==le(r)&&(d!=null&&(o=c(d,49),a=o.ih(t,di(o.Tg(),this.b),null,a)),r!=null&&(o=c(r,49),a=o.gh(t,di(o.Tg(),this.b),null,a))):this.rk()&&le(d)!==le(r)&&(d!=null&&(a=c(d,49).ih(t,-1-di(t.Tg(),this.e),null,a)),r!=null&&(a=c(r,49).gh(t,-1-di(t.Tg(),this.e),null,a))),r==null&&this.Kj()?n.Dh(i,sh):n.Dh(i,r),t.Lg()&&t.Mg()?(u=new UB(t,1,this.e,d,r,this.Kj()&&!l),a?(a.Ei(u),a.Fi()):Bn(t,u)):a&&a.Fi()},s.Vj=function(t,n,i){var r,o,u,a,l;l=n.Ch(i),a=l!=null,this.Kj()&&le(l)===le(sh)&&(l=null),u=null,l!=null&&(this.bj()?(r=c(l,49),u=r.ih(t,di(r.Tg(),this.b),null,u)):this.rk()&&(u=c(l,49).ih(t,-1-di(t.Tg(),this.e),null,u))),n.Eh(i),t.Lg()&&t.Mg()?(o=new UB(t,this.Kj()?2:1,this.e,l,null,a),u?(u.Ei(o),u.Fi()):Bn(t,o)):u&&u.Fi()},s.bj=function(){return!1},s.rk=function(){return!1},s.sk=function(){return!1},s.Kj=function(){return!1},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObject",398),y(564,398,{},YF),s.rk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainment",564),y(1323,564,{},UDe),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentResolving",1323),y(772,564,{},Gee),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettable",772),y(1325,772,{},WDe),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettableResolving",1325),y(640,564,{},aB),s.bj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverse",640),y(1324,640,{},Qke),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseResolving",1324),y(773,640,{},Dte),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettable",773),y(1326,773,{},Zke),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettableResolving",1326),y(641,398,{},Uee),s.sk=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolving",641),y(1327,641,{},YDe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingUnsettable",1327),y(774,641,{},Ate),s.bj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverse",774),y(1328,774,{},eRe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverseUnsettable",1328),y(1321,398,{},XDe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectUnsettable",1321),y(771,398,{},Ote),s.bj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverse",771),y(1322,771,{},tRe),s.Kj=function(){return!0},S(mt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverseUnsettable",1322),y(775,565,ak,Ine),s.Pk=function(t){return new Ine(this.a,this.c,t)},s.dd=function(){return this.b},s.Qk=function(t,n,i){return sCt(this,t,this.b,i)},s.Rk=function(t,n,i){return uCt(this,t,this.b,i)},S(mt,"EStructuralFeatureImpl/InverseUpdatingFeatureMapEntry",775),y(1329,1,qV,aAe),s.Wj=function(t){return this.a},s.fj=function(){return Q(this.a,95)?c(this.a,95).fj():!this.a.dc()},s.Wb=function(t){this.a.$b(),this.a.Gc(c(t,15))},s.Xj=function(){Q(this.a,95)?c(this.a,95).Xj():this.a.$b()},S(mt,"EStructuralFeatureImpl/SettingMany",1329),y(1330,565,ak,bFe),s.Ok=function(t){return new QF((Jn(),lM),this.b.Ih(this.a,t))},s.dd=function(){return null},s.Qk=function(t,n,i){return i},s.Rk=function(t,n,i){return i},S(mt,"EStructuralFeatureImpl/SimpleContentFeatureMapEntry",1330),y(642,565,ak,QF),s.Ok=function(t){return new QF(this.c,t)},s.dd=function(){return this.a},s.Qk=function(t,n,i){return i},s.Rk=function(t,n,i){return i},S(mt,"EStructuralFeatureImpl/SimpleFeatureMapEntry",642),y(391,497,Tf,G3),s.ri=function(t){return oe(va,xe,26,t,0,1)},s.ni=function(){return!1},S(mt,"ESuperAdapter/1",391),y(444,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,836:1,49:1,97:1,150:1,444:1,114:1,115:1},EN),s._g=function(t,n,i){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),this.Ab;case 1:return this.zb;case 2:return!this.a&&(this.a=new E5(this,oo,this)),this.a}return Nu(this,t-Ft((ot(),up)),at((r=c(vt(this,16),26),r||up),t),n,i)},s.jh=function(t,n,i){var r,o;switch(n){case 0:return!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Fr(this.Ab,t,i);case 2:return!this.a&&(this.a=new E5(this,oo,this)),Fr(this.a,t,i)}return o=c(at((r=c(vt(this,16),26),r||(ot(),up)),n),66),o.Nj().Rj(this,$c(this),n-Ft((ot(),up)),t,i)},s.lh=function(t){var n;switch(t){case 0:return!!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return!!this.a&&this.a.i!=0}return xu(this,t-Ft((ot(),up)),at((n=c(vt(this,16),26),n||up),t))},s.sh=function(t,n){var i;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab),!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Mi(this.Ab,c(n,14));return;case 1:kc(this,ln(n));return;case 2:!this.a&&(this.a=new E5(this,oo,this)),Xt(this.a),!this.a&&(this.a=new E5(this,oo,this)),Mi(this.a,c(n,14));return}qu(this,t-Ft((ot(),up)),at((i=c(vt(this,16),26),i||up),t),n)},s.zh=function(){return ot(),up},s.Bh=function(t){var n;switch(t){case 0:!this.Ab&&(this.Ab=new Me(Sn,this,0,3)),Xt(this.Ab);return;case 1:kc(this,null);return;case 2:!this.a&&(this.a=new E5(this,oo,this)),Xt(this.a);return}$u(this,t-Ft((ot(),up)),at((n=c(vt(this,16),26),n||up),t))},S(mt,"ETypeParameterImpl",444),y(445,85,xo,E5),s.cj=function(t,n){return uDt(this,c(t,87),n)},s.dj=function(t,n){return aDt(this,c(t,87),n)},S(mt,"ETypeParameterImpl/1",445),y(634,43,fv,BN),s.ec=function(){return new zA(this)},S(mt,"ETypeParameterImpl/2",634),y(556,Kl,ys,zA),s.Fc=function(t){return Eke(this,c(t,87))},s.Gc=function(t){var n,i,r;for(r=!1,i=t.Kc();i.Ob();)n=c(i.Pb(),87),Kn(this.a,n,"")==null&&(r=!0);return r},s.$b=function(){Is(this.a)},s.Hc=function(t){return tu(this.a,t)},s.Kc=function(){var t;return t=new Gg(new Pg(this.a).a),new VA(t)},s.Mc=function(t){return uBe(this,t)},s.gc=function(){return KS(this.a)},S(mt,"ETypeParameterImpl/2/1",556),y(557,1,dr,VA),s.Nb=function(t){Sr(this,t)},s.Pb=function(){return c(g0(this.a).cd(),87)},s.Ob=function(){return this.a.b},s.Qb=function(){BBe(this.a)},S(mt,"ETypeParameterImpl/2/1/1",557),y(1276,43,fv,ZAe),s._b=function(t){return fr(t)?WB(this,t):!!Po(this.f,t)},s.xc=function(t){var n,i;return n=fr(t)?mc(this,t):Uo(Po(this.f,t)),Q(n,837)?(i=c(n,837),n=i._j(),Kn(this,c(t,235),n),n):n??(t==null?(nF(),Bft):null)},S(mt,"EValidatorRegistryImpl",1276),y(1313,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,1941:1,49:1,97:1,150:1,114:1,115:1},q6e),s.Ih=function(t,n){switch(t.yj()){case 21:case 22:case 23:case 24:case 26:case 31:case 32:case 37:case 38:case 39:case 40:case 43:case 44:case 48:case 49:case 20:return n==null?null:Ro(n);case 25:return pIt(n);case 27:return kCt(n);case 28:return RCt(n);case 29:return n==null?null:nDe(rM[0],c(n,199));case 41:return n==null?"":r1(c(n,290));case 42:return Ro(n);case 50:return ln(n);default:throw V(new St(UE+t.ne()+K0))}},s.Jh=function(t){var n,i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y;switch(t.G==-1&&(t.G=(D=bu(t),D?wd(D.Mh(),t):-1)),t.G){case 0:return i=new LN,i;case 1:return n=new qJ,n;case 2:return r=new UJ,r;case 4:return o=new GA,o;case 5:return u=new QAe,u;case 6:return a=new EAe,a;case 7:return l=new GJ,l;case 10:return p=new xA,p;case 11:return v=new NN,v;case 12:return A=new PLe,A;case 13:return L=new FN,L;case 14:return N=new Xee,N;case 17:return z=new D6e,z;case 18:return d=new Nb,d;case 19:return Y=new EN,Y;default:throw V(new St(CV+t.zb+K0))}},s.Kh=function(t,n){switch(t.yj()){case 20:return n==null?null:new bZ(n);case 21:return n==null?null:new l1(n);case 23:case 22:return n==null?null:_9t(n);case 26:case 24:return n==null?null:sI(vu(n,-128,127)<<24>>24);case 25:return Dxt(n);case 27:return rOt(n);case 28:return oOt(n);case 29:return IDt(n);case 32:case 31:return n==null?null:aw(n);case 38:case 37:return n==null?null:new xQ(n);case 40:case 39:return n==null?null:Ce(vu(n,Ar,Fn));case 41:return null;case 42:return n==null,null;case 44:case 43:return n==null?null:Yg(aD(n));case 49:case 48:return n==null?null:oE(vu(n,hk,32767)<<16>>16);case 50:return n;default:throw V(new St(UE+t.ne()+K0))}},S(mt,"EcoreFactoryImpl",1313),y(547,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,1939:1,49:1,97:1,150:1,179:1,547:1,114:1,115:1,675:1},Kxe),s.gb=!1,s.hb=!1;var wme,Fft=!1;S(mt,"EcorePackageImpl",547),y(1184,1,{837:1},H6e),s._j=function(){return CDe(),$ft},S(mt,"EcorePackageImpl/1",1184),y(1193,1,Tn,z6e),s.wj=function(t){return Q(t,147)},s.xj=function(t){return oe(Vj,xe,147,t,0,1)},S(mt,"EcorePackageImpl/10",1193),y(1194,1,Tn,V6e),s.wj=function(t){return Q(t,191)},s.xj=function(t){return oe(sY,xe,191,t,0,1)},S(mt,"EcorePackageImpl/11",1194),y(1195,1,Tn,G6e),s.wj=function(t){return Q(t,56)},s.xj=function(t){return oe(J1,xe,56,t,0,1)},S(mt,"EcorePackageImpl/12",1195),y(1196,1,Tn,U6e),s.wj=function(t){return Q(t,399)},s.xj=function(t){return oe(ya,Kfe,59,t,0,1)},S(mt,"EcorePackageImpl/13",1196),y(1197,1,Tn,W6e),s.wj=function(t){return Q(t,235)},s.xj=function(t){return oe(ml,xe,235,t,0,1)},S(mt,"EcorePackageImpl/14",1197),y(1198,1,Tn,Y6e),s.wj=function(t){return Q(t,509)},s.xj=function(t){return oe(cp,xe,2017,t,0,1)},S(mt,"EcorePackageImpl/15",1198),y(1199,1,Tn,X6e),s.wj=function(t){return Q(t,99)},s.xj=function(t){return oe(Qw,yv,18,t,0,1)},S(mt,"EcorePackageImpl/16",1199),y(1200,1,Tn,J6e),s.wj=function(t){return Q(t,170)},s.xj=function(t){return oe(us,yv,170,t,0,1)},S(mt,"EcorePackageImpl/17",1200),y(1201,1,Tn,Q6e),s.wj=function(t){return Q(t,472)},s.xj=function(t){return oe(Xw,xe,472,t,0,1)},S(mt,"EcorePackageImpl/18",1201),y(1202,1,Tn,Z6e),s.wj=function(t){return Q(t,548)},s.xj=function(t){return oe(ec,Bet,548,t,0,1)},S(mt,"EcorePackageImpl/19",1202),y(1185,1,Tn,ePe),s.wj=function(t){return Q(t,322)},s.xj=function(t){return oe(Jw,yv,34,t,0,1)},S(mt,"EcorePackageImpl/2",1185),y(1203,1,Tn,tPe),s.wj=function(t){return Q(t,241)},s.xj=function(t){return oe(oo,ntt,87,t,0,1)},S(mt,"EcorePackageImpl/20",1203),y(1204,1,Tn,nPe),s.wj=function(t){return Q(t,444)},s.xj=function(t){return oe(Gc,xe,836,t,0,1)},S(mt,"EcorePackageImpl/21",1204),y(1205,1,Tn,iPe),s.wj=function(t){return Dp(t)},s.xj=function(t){return oe(Qi,we,476,t,8,1)},S(mt,"EcorePackageImpl/22",1205),y(1206,1,Tn,rPe),s.wj=function(t){return Q(t,190)},s.xj=function(t){return oe(Ps,we,190,t,0,2)},S(mt,"EcorePackageImpl/23",1206),y(1207,1,Tn,oPe),s.wj=function(t){return Q(t,217)},s.xj=function(t){return oe(B2,we,217,t,0,1)},S(mt,"EcorePackageImpl/24",1207),y(1208,1,Tn,cPe),s.wj=function(t){return Q(t,172)},s.xj=function(t){return oe(sP,we,172,t,0,1)},S(mt,"EcorePackageImpl/25",1208),y(1209,1,Tn,sPe),s.wj=function(t){return Q(t,199)},s.xj=function(t){return oe(Mk,we,199,t,0,1)},S(mt,"EcorePackageImpl/26",1209),y(1210,1,Tn,uPe),s.wj=function(t){return!1},s.xj=function(t){return oe(xme,xe,2110,t,0,1)},S(mt,"EcorePackageImpl/27",1210),y(1211,1,Tn,aPe),s.wj=function(t){return kp(t)},s.xj=function(t){return oe(mr,we,333,t,7,1)},S(mt,"EcorePackageImpl/28",1211),y(1212,1,Tn,lPe),s.wj=function(t){return Q(t,58)},s.xj=function(t){return oe(Xwe,yw,58,t,0,1)},S(mt,"EcorePackageImpl/29",1212),y(1186,1,Tn,fPe),s.wj=function(t){return Q(t,510)},s.xj=function(t){return oe(Sn,{3:1,4:1,5:1,1934:1},590,t,0,1)},S(mt,"EcorePackageImpl/3",1186),y(1213,1,Tn,hPe),s.wj=function(t){return Q(t,573)},s.xj=function(t){return oe(Zwe,xe,1940,t,0,1)},S(mt,"EcorePackageImpl/30",1213),y(1214,1,Tn,dPe),s.wj=function(t){return Q(t,153)},s.xj=function(t){return oe(Eme,yw,153,t,0,1)},S(mt,"EcorePackageImpl/31",1214),y(1215,1,Tn,gPe),s.wj=function(t){return Q(t,72)},s.xj=function(t){return oe(Kx,ftt,72,t,0,1)},S(mt,"EcorePackageImpl/32",1215),y(1216,1,Tn,bPe),s.wj=function(t){return Q(t,155)},s.xj=function(t){return oe(e4,we,155,t,0,1)},S(mt,"EcorePackageImpl/33",1216),y(1217,1,Tn,pPe),s.wj=function(t){return Q(t,19)},s.xj=function(t){return oe($r,we,19,t,0,1)},S(mt,"EcorePackageImpl/34",1217),y(1218,1,Tn,wPe),s.wj=function(t){return Q(t,290)},s.xj=function(t){return oe(ehe,xe,290,t,0,1)},S(mt,"EcorePackageImpl/35",1218),y(1219,1,Tn,mPe),s.wj=function(t){return Q(t,162)},s.xj=function(t){return oe(H0,we,162,t,0,1)},S(mt,"EcorePackageImpl/36",1219),y(1220,1,Tn,vPe),s.wj=function(t){return Q(t,83)},s.xj=function(t){return oe(the,xe,83,t,0,1)},S(mt,"EcorePackageImpl/37",1220),y(1221,1,Tn,yPe),s.wj=function(t){return Q(t,591)},s.xj=function(t){return oe(mme,xe,591,t,0,1)},S(mt,"EcorePackageImpl/38",1221),y(1222,1,Tn,_Pe),s.wj=function(t){return!1},s.xj=function(t){return oe(Lme,xe,2111,t,0,1)},S(mt,"EcorePackageImpl/39",1222),y(1187,1,Tn,EPe),s.wj=function(t){return Q(t,88)},s.xj=function(t){return oe(va,xe,26,t,0,1)},S(mt,"EcorePackageImpl/4",1187),y(1223,1,Tn,SPe),s.wj=function(t){return Q(t,184)},s.xj=function(t){return oe(z0,we,184,t,0,1)},S(mt,"EcorePackageImpl/40",1223),y(1224,1,Tn,PPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(mt,"EcorePackageImpl/41",1224),y(1225,1,Tn,MPe),s.wj=function(t){return Q(t,588)},s.xj=function(t){return oe(Qwe,xe,588,t,0,1)},S(mt,"EcorePackageImpl/42",1225),y(1226,1,Tn,CPe),s.wj=function(t){return!1},s.xj=function(t){return oe(Nme,we,2112,t,0,1)},S(mt,"EcorePackageImpl/43",1226),y(1227,1,Tn,IPe),s.wj=function(t){return Q(t,42)},s.xj=function(t){return oe(fb,gD,42,t,0,1)},S(mt,"EcorePackageImpl/44",1227),y(1188,1,Tn,TPe),s.wj=function(t){return Q(t,138)},s.xj=function(t){return oe(vl,xe,138,t,0,1)},S(mt,"EcorePackageImpl/5",1188),y(1189,1,Tn,jPe),s.wj=function(t){return Q(t,148)},s.xj=function(t){return oe(dY,xe,148,t,0,1)},S(mt,"EcorePackageImpl/6",1189),y(1190,1,Tn,APe),s.wj=function(t){return Q(t,457)},s.xj=function(t){return oe($x,xe,671,t,0,1)},S(mt,"EcorePackageImpl/7",1190),y(1191,1,Tn,OPe),s.wj=function(t){return Q(t,573)},s.xj=function(t){return oe(Yh,xe,678,t,0,1)},S(mt,"EcorePackageImpl/8",1191),y(1192,1,Tn,DPe),s.wj=function(t){return Q(t,471)},s.xj=function(t){return oe(iM,xe,471,t,0,1)},S(mt,"EcorePackageImpl/9",1192),y(1025,1982,Fet,w9e),s.bi=function(t,n){Ujt(this,c(n,415))},s.fi=function(t,n){OGe(this,t,c(n,415))},S(mt,"MinimalEObjectImpl/1ArrayDelegatingAdapterList",1025),y(1026,143,xT,Dxe),s.Ai=function(){return this.a.a},S(mt,"MinimalEObjectImpl/1ArrayDelegatingAdapterList/1",1026),y(1053,1052,{},W7e),S("org.eclipse.emf.ecore.plugin","EcorePlugin",1053);var mme=pi(htt,"Resource");y(781,1378,dtt),s.Yk=function(t){},s.Zk=function(t){},s.Vk=function(){return!this.a&&(this.a=new ON(this)),this.a},s.Wk=function(t){var n,i,r,o,u;if(r=t.length,r>0)if(fn(0,t.length),t.charCodeAt(0)==47){for(u=new Dc(4),o=1,n=1;n0&&(t=t.substr(0,i)));return bRt(this,t)},s.Xk=function(){return this.c},s.Ib=function(){var t;return r1(this.gm)+"@"+(t=fi(this)>>>0,t.toString(16))+" uri='"+this.d+"'"},s.b=!1,S(HV,"ResourceImpl",781),y(1379,781,dtt,fAe),S(HV,"BinaryResourceImpl",1379),y(1169,694,NV),s.si=function(t){return Q(t,56)?X5t(this,c(t,56)):Q(t,591)?new $t(c(t,591).Vk()):le(t)===le(this.f)?c(t,14).Kc():(p_(),Wj.a)},s.Ob=function(){return hse(this)},s.a=!1,S(ai,"EcoreUtil/ContentTreeIterator",1169),y(1380,1169,NV,axe),s.si=function(t){return le(t)===le(this.f)?c(t,15).Kc():new GNe(c(t,56))},S(HV,"ResourceImpl/5",1380),y(648,1994,ttt,ON),s.Hc=function(t){return this.i<=4?pE(this,t):Q(t,49)&&c(t,49).Zg()==this.a},s.bi=function(t,n){t==this.i-1&&(this.a.b||(this.a.b=!0))},s.di=function(t,n){t==0?this.a.b||(this.a.b=!0):M$(this,t,n)},s.fi=function(t,n){},s.gi=function(t,n,i){},s.aj=function(){return 2},s.Ai=function(){return this.a},s.bj=function(){return!0},s.cj=function(t,n){var i;return i=c(t,49),n=i.wh(this.a,n),n},s.dj=function(t,n){var i;return i=c(t,49),i.wh(null,n)},s.ej=function(){return!1},s.hi=function(){return!0},s.ri=function(t){return oe(J1,xe,56,t,0,1)},s.ni=function(){return!1},S(HV,"ResourceImpl/ContentsEList",648),y(957,1964,xE,lAe),s.Zc=function(t){return this.a._h(t)},s.gc=function(){return this.a.gc()},S(ai,"AbstractSequentialInternalEList/1",957);var vme,yme,Ir,_me;y(624,1,{},fRe);var qx,Hx;S(ai,"BasicExtendedMetaData",624),y(1160,1,{},f7e),s.$k=function(){return null},s._k=function(){return this.a==-2&&Wmt(this,EDt(this.d,this.b)),this.a},s.al=function(){return null},s.bl=function(){return st(),st(),Qr},s.ne=function(){return this.c==XE&&Xmt(this,uze(this.d,this.b)),this.c},s.cl=function(){return 0},s.a=-2,s.c=XE,S(ai,"BasicExtendedMetaData/EClassExtendedMetaDataImpl",1160),y(1161,1,{},DNe),s.$k=function(){return this.a==(k_(),qx)&&Ymt(this,FLt(this.f,this.b)),this.a},s._k=function(){return 0},s.al=function(){return this.c==(k_(),qx)&&Jmt(this,BLt(this.f,this.b)),this.c},s.bl=function(){return!this.d&&Qmt(this,FFt(this.f,this.b)),this.d},s.ne=function(){return this.e==XE&&Zmt(this,uze(this.f,this.b)),this.e},s.cl=function(){return this.g==-2&&evt(this,K7t(this.f,this.b)),this.g},s.e=XE,s.g=-2,S(ai,"BasicExtendedMetaData/EDataTypeExtendedMetaDataImpl",1161),y(1159,1,{},d7e),s.b=!1,s.c=!1,S(ai,"BasicExtendedMetaData/EPackageExtendedMetaDataImpl",1159),y(1162,1,{},ONe),s.c=-2,s.e=XE,s.f=XE,S(ai,"BasicExtendedMetaData/EStructuralFeatureExtendedMetaDataImpl",1162),y(585,622,xo,a8),s.aj=function(){return this.c},s.Fk=function(){return!1},s.li=function(t,n){return n},s.c=0,S(ai,"EDataTypeEList",585);var Eme=pi(ai,"FeatureMap");y(75,585,{3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},Ci),s.Vc=function(t,n){RLt(this,t,c(n,72))},s.Fc=function(t){return Zxt(this,c(t,72))},s.Yh=function(t){BSt(this,c(t,72))},s.cj=function(t,n){return v_t(this,c(t,72),n)},s.dj=function(t,n){return vte(this,c(t,72),n)},s.ii=function(t,n){return nBt(this,t,n)},s.li=function(t,n){return xKt(this,t,c(n,72))},s._c=function(t,n){return PNt(this,t,c(n,72))},s.jj=function(t,n){return y_t(this,c(t,72),n)},s.kj=function(t,n){return Lke(this,c(t,72),n)},s.lj=function(t,n,i){return P7t(this,c(t,72),c(n,72),i)},s.oi=function(t,n){return bq(this,t,c(n,72))},s.dl=function(t,n){return eue(this,t,n)},s.Wc=function(t,n){var i,r,o,u,a,l,d,p,v;for(p=new d0(n.gc()),o=n.Kc();o.Ob();)if(r=c(o.Pb(),72),u=r.ak(),Bh(this.e,u))(!u.hi()||!rO(this,u,r.dd())&&!pE(p,r))&&on(p,r);else{for(v=qc(this.e.Tg(),u),i=c(this.g,119),a=!0,l=0;l=0;)if(n=t[this.c],this.k.rl(n.ak()))return this.j=this.f?n:n.dd(),this.i=-2,!0;return this.i=-1,this.g=-1,!1},S(ai,"BasicFeatureMap/FeatureEIterator",410),y(662,410,Wf,RF),s.Lk=function(){return!0},S(ai,"BasicFeatureMap/ResolvingFeatureEIterator",662),y(955,486,sk,rDe),s.Gi=function(){return this},S(ai,"EContentsEList/1",955),y(956,486,sk,j7e),s.Lk=function(){return!1},S(ai,"EContentsEList/2",956),y(954,279,uk,oDe),s.Nk=function(t){},s.Ob=function(){return!1},s.Sb=function(){return!1},S(ai,"EContentsEList/FeatureIteratorImpl/1",954),y(825,585,xo,Pee),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EDataTypeEList/Unsettable",825),y(1849,585,xo,dDe),s.hi=function(){return!0},S(ai,"EDataTypeUniqueEList",1849),y(1850,825,xo,gDe),s.hi=function(){return!0},S(ai,"EDataTypeUniqueEList/Unsettable",1850),y(139,85,xo,gs),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentEList/Resolving",139),y(1163,545,xo,hDe),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentEList/Unsettable/Resolving",1163),y(748,16,xo,hte),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EObjectContainmentWithInverseEList/Unsettable",748),y(1173,748,xo,Ske),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectContainmentWithInverseEList/Unsettable/Resolving",1173),y(743,496,xo,See),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EObjectEList/Unsettable",743),y(328,496,xo,Om),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectResolvingEList",328),y(1641,743,xo,bDe),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectResolvingEList/Unsettable",1641),y(1381,1,{},kPe);var Bft;S(ai,"EObjectValidator",1381),y(546,496,xo,T8),s.zk=function(){return this.d},s.Ak=function(){return this.b},s.bj=function(){return!0},s.Dk=function(){return!0},s.b=0,S(ai,"EObjectWithInverseEList",546),y(1176,546,xo,Pke),s.Ck=function(){return!0},S(ai,"EObjectWithInverseEList/ManyInverse",1176),y(625,546,xo,eB),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EObjectWithInverseEList/Unsettable",625),y(1175,625,xo,Mke),s.Ck=function(){return!0},S(ai,"EObjectWithInverseEList/Unsettable/ManyInverse",1175),y(749,546,xo,dte),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectWithInverseResolvingEList",749),y(31,749,xo,dt),s.Ck=function(){return!0},S(ai,"EObjectWithInverseResolvingEList/ManyInverse",31),y(750,625,xo,gte),s.Ek=function(){return!0},s.li=function(t,n){return S2(this,t,c(n,56))},S(ai,"EObjectWithInverseResolvingEList/Unsettable",750),y(1174,750,xo,Cke),s.Ck=function(){return!0},S(ai,"EObjectWithInverseResolvingEList/Unsettable/ManyInverse",1174),y(1164,622,xo),s.ai=function(){return(this.b&1792)==0},s.ci=function(){this.b|=1},s.Bk=function(){return(this.b&4)!=0},s.bj=function(){return(this.b&40)!=0},s.Ck=function(){return(this.b&16)!=0},s.Dk=function(){return(this.b&8)!=0},s.Ek=function(){return(this.b&Iw)!=0},s.rk=function(){return(this.b&32)!=0},s.Fk=function(){return(this.b&Ka)!=0},s.wj=function(t){return this.d?sFe(this.d,t):this.ak().Yj().wj(t)},s.fj=function(){return(this.b&2)!=0?(this.b&1)!=0:this.i!=0},s.hi=function(){return(this.b&128)!=0},s.Xj=function(){var t;Xt(this),(this.b&2)!=0&&(Qs(this.e)?(t=(this.b&1)!=0,this.b&=-2,Q3(this,new La(this.e,2,di(this.e.Tg(),this.ak()),t,!1))):this.b&=-2)},s.ni=function(){return(this.b&1536)==0},s.b=0,S(ai,"EcoreEList/Generic",1164),y(1165,1164,xo,pLe),s.ak=function(){return this.a},S(ai,"EcoreEList/Dynamic",1165),y(747,63,Tf,IQ),s.ri=function(t){return aI(this.a.a,t)},S(ai,"EcoreEMap/1",747),y(746,85,xo,hne),s.bi=function(t,n){P7(this.b,c(n,133))},s.di=function(t,n){nqe(this.b)},s.ei=function(t,n,i){var r;++(r=this.b,c(n,133),r).e},s.fi=function(t,n){PK(this.b,c(n,133))},s.gi=function(t,n,i){PK(this.b,c(i,133)),le(i)===le(n)&&c(i,133).Th(T2t(c(n,133).cd())),P7(this.b,c(n,133))},S(ai,"EcoreEMap/DelegateEObjectContainmentEList",746),y(1171,151,$fe,bKe),S(ai,"EcoreEMap/Unsettable",1171),y(1172,746,xo,Ike),s.ci=function(){this.a=!0},s.fj=function(){return this.a},s.Xj=function(){var t;Xt(this),Qs(this.e)?(t=this.a,this.a=!1,Bn(this.e,new La(this.e,2,this.c,t,!1))):this.a=!1},s.a=!1,S(ai,"EcoreEMap/Unsettable/UnsettableDelegateEObjectContainmentEList",1172),y(1168,228,fv,vxe),s.a=!1,s.b=!1,S(ai,"EcoreUtil/Copier",1168),y(745,1,dr,GNe),s.Nb=function(t){Sr(this,t)},s.Ob=function(){return qHe(this)},s.Pb=function(){var t;return qHe(this),t=this.b,this.b=null,t},s.Qb=function(){this.a.Qb()},S(ai,"EcoreUtil/ProperContentIterator",745),y(1382,1381,{},ACe);var $ft;S(ai,"EcoreValidator",1382);var Kft;pi(ai,"FeatureMapUtil/Validator"),y(1260,1,{1942:1},RPe),s.rl=function(t){return!0},S(ai,"FeatureMapUtil/1",1260),y(757,1,{1942:1},jue),s.rl=function(t){var n;return this.c==t?!0:(n=Fe(Bt(this.a,t)),n==null?vFt(this,t)?(eBe(this.a,t,(Pt(),ZE)),!0):(eBe(this.a,t,(Pt(),hb)),!1):n==(Pt(),ZE))},s.e=!1;var wY;S(ai,"FeatureMapUtil/BasicValidator",757),y(758,43,fv,vee),S(ai,"FeatureMapUtil/BasicValidator/Cache",758),y(501,52,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,69:1,95:1},pC),s.Vc=function(t,n){wWe(this.c,this.b,t,n)},s.Fc=function(t){return eue(this.c,this.b,t)},s.Wc=function(t,n){return R$t(this.c,this.b,t,n)},s.Gc=function(t){return h5(this,t)},s.Xh=function(t,n){tIt(this.c,this.b,t,n)},s.lk=function(t,n){return Wse(this.c,this.b,t,n)},s.pi=function(t){return iD(this.c,this.b,t,!1)},s.Zh=function(){return $7e(this.c,this.b)},s.$h=function(){return b2t(this.c,this.b)},s._h=function(t){return cCt(this.c,this.b,t)},s.mk=function(t,n){return oke(this,t,n)},s.$b=function(){ky(this)},s.Hc=function(t){return rO(this.c,this.b,t)},s.Ic=function(t){return oTt(this.c,this.b,t)},s.Xb=function(t){return iD(this.c,this.b,t,!0)},s.Wj=function(t){return this},s.Xc=function(t){return wMt(this.c,this.b,t)},s.dc=function(){return L9(this)},s.fj=function(){return!jI(this.c,this.b)},s.Kc=function(){return HCt(this.c,this.b)},s.Yc=function(){return zCt(this.c,this.b)},s.Zc=function(t){return nAt(this.c,this.b,t)},s.ii=function(t,n){return xYe(this.c,this.b,t,n)},s.ji=function(t,n){eCt(this.c,this.b,t,n)},s.$c=function(t){return gGe(this.c,this.b,t)},s.Mc=function(t){return $Ft(this.c,this.b,t)},s._c=function(t,n){return KYe(this.c,this.b,t,n)},s.Wb=function(t){$7(this.c,this.b),h5(this,c(t,15))},s.gc=function(){return bAt(this.c,this.b)},s.Pc=function(){return gPt(this.c,this.b)},s.Qc=function(t){return mMt(this.c,this.b,t)},s.Ib=function(){var t,n;for(n=new nd,n.a+="[",t=$7e(this.c,this.b);gK(t);)co(n,g5(E7(t))),gK(t)&&(n.a+=zr);return n.a+="]",n.a},s.Xj=function(){$7(this.c,this.b)},S(ai,"FeatureMapUtil/FeatureEList",501),y(627,36,xT,p$),s.yi=function(t){return Z5(this,t)},s.Di=function(t){var n,i,r,o,u,a,l;switch(this.d){case 1:case 2:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.g=t.zi(),t.xi()==1&&(this.d=1),!0;break}case 3:{switch(o=t.xi(),o){case 3:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.d=5,n=new d0(2),on(n,this.g),on(n,t.zi()),this.g=n,!0;break}}break}case 5:{switch(o=t.xi(),o){case 3:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return i=c(this.g,14),i.Fc(t.zi()),!0;break}}break}case 4:{switch(o=t.xi(),o){case 3:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.d=1,this.g=t.zi(),!0;break}case 4:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return this.d=6,l=new d0(2),on(l,this.n),on(l,t.Bi()),this.n=l,a=U(G(Qt,1),_n,25,15,[this.o,t.Ci()]),this.g=a,!0;break}}break}case 6:{switch(o=t.xi(),o){case 4:{if(u=t.Ai(),le(u)===le(this.c)&&Z5(this,null)==t.yi(null))return i=c(this.n,14),i.Fc(t.Bi()),a=c(this.g,48),r=oe(Qt,_n,25,a.length+1,15,1),bc(a,0,r,0,a.length),r[a.length]=t.Ci(),this.g=r,!0;break}}break}}return!1},S(ai,"FeatureMapUtil/FeatureENotificationImpl",627),y(552,501,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},d8),s.dl=function(t,n){return eue(this.c,t,n)},s.el=function(t,n,i){return Wse(this.c,t,n,i)},s.fl=function(t,n,i){return wue(this.c,t,n,i)},s.gl=function(){return this},s.hl=function(t,n){return cT(this.c,t,n)},s.il=function(t){return c(iD(this.c,this.b,t,!1),72).ak()},s.jl=function(t){return c(iD(this.c,this.b,t,!1),72).dd()},s.kl=function(){return this.a},s.ll=function(t){return!jI(this.c,t)},s.ml=function(t,n){rD(this.c,t,n)},s.nl=function(t){return EKe(this.c,t)},s.ol=function(t){Gze(this.c,t)},S(ai,"FeatureMapUtil/FeatureFeatureMap",552),y(1259,1,qV,g7e),s.Wj=function(t){return iD(this.b,this.a,-1,t)},s.fj=function(){return!jI(this.b,this.a)},s.Wb=function(t){rD(this.b,this.a,t)},s.Xj=function(){$7(this.b,this.a)},S(ai,"FeatureMapUtil/FeatureValue",1259);var u3,mY,vY,a3,qft,Xj=pi(pk,"AnyType");y(666,60,$h,UN),S(pk,"InvalidDatatypeValueException",666);var zx=pi(pk,btt),Jj=pi(pk,ptt),Sme=pi(pk,wtt),Hft,cc,Pme,Ib,zft,Vft,Gft,Uft,Wft,Yft,Xft,Jft,Qft,Zft,eht,Wv,tht,Yv,uM,nht,ap,Qj,Zj,iht,aM,lM;y(830,506,{105:1,92:1,90:1,56:1,49:1,97:1,843:1},WQ),s._g=function(t,n,i){switch(t){case 0:return i?(!this.c&&(this.c=new Ci(this,0)),this.c):(!this.c&&(this.c=new Ci(this,0)),this.c.b);case 1:return i?(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)):(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).kl();case 2:return i?(!this.b&&(this.b=new Ci(this,2)),this.b):(!this.b&&(this.b=new Ci(this,2)),this.b.b)}return Nu(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.jh=function(t,n,i){var r;switch(n){case 0:return!this.c&&(this.c=new Ci(this,0)),nT(this.c,t,i);case 1:return(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),69)).mk(t,i);case 2:return!this.b&&(this.b=new Ci(this,2)),nT(this.b,t,i)}return r=c(at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),n),66),r.Nj().Rj(this,Kie(this),n-Ft(this.zh()),t,i)},s.lh=function(t){switch(t){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).dc();case 2:return!!this.b&&this.b.i!=0}return xu(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),xC(this.c,n);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).Wb(n);return;case 2:!this.b&&(this.b=new Ci(this,2)),xC(this.b,n);return}qu(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),Pme},s.Bh=function(t){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),Xt(this.c);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).$b();return;case 2:!this.b&&(this.b=new Ci(this,2)),Xt(this.b);return}$u(this,t-Ft(this.zh()),at((this.j&2)==0?this.zh():(!this.k&&(this.k=new il),this.k).ck(),t))},s.Ib=function(){var t;return(this.j&4)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (mixed: ",u5(t,this.c),t.a+=", anyAttribute: ",u5(t,this.b),t.a+=")",t.a)},S(Fi,"AnyTypeImpl",830),y(667,506,{105:1,92:1,90:1,56:1,49:1,97:1,2021:1,667:1},LPe),s._g=function(t,n,i){switch(t){case 0:return this.a;case 1:return this.b}return Nu(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.lh=function(t){switch(t){case 0:return this.a!=null;case 1:return this.b!=null}return xu(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:svt(this,ln(n));return;case 1:uvt(this,ln(n));return}qu(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),Wv},s.Bh=function(t){switch(t){case 0:this.a=null;return;case 1:this.b=null;return}$u(this,t-Ft((Jn(),Wv)),at((this.j&2)==0?Wv:(!this.k&&(this.k=new il),this.k).ck(),t))},s.Ib=function(){var t;return(this.j&4)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (data: ",co(t,this.a),t.a+=", target: ",co(t,this.b),t.a+=")",t.a)},s.a=null,s.b=null,S(Fi,"ProcessingInstructionImpl",667),y(668,830,{105:1,92:1,90:1,56:1,49:1,97:1,843:1,2022:1,668:1},t9e),s._g=function(t,n,i){switch(t){case 0:return i?(!this.c&&(this.c=new Ci(this,0)),this.c):(!this.c&&(this.c=new Ci(this,0)),this.c.b);case 1:return i?(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)):(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).kl();case 2:return i?(!this.b&&(this.b=new Ci(this,2)),this.b):(!this.b&&(this.b=new Ci(this,2)),this.b.b);case 3:return!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0));case 4:return bte(this.a,(!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0))));case 5:return this.a}return Nu(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.lh=function(t){switch(t){case 0:return!!this.c&&this.c.i!=0;case 1:return!(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).dc();case 2:return!!this.b&&this.b.i!=0;case 3:return!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0))!=null;case 4:return bte(this.a,(!this.c&&(this.c=new Ci(this,0)),ln(cT(this.c,(Jn(),uM),!0))))!=null;case 5:return!!this.a}return xu(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),xC(this.c,n);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(c(vc(this.c,(Jn(),Ib)),153),215)).Wb(n);return;case 2:!this.b&&(this.b=new Ci(this,2)),xC(this.b,n);return;case 3:eie(this,ln(n));return;case 4:eie(this,pte(this.a,n));return;case 5:avt(this,c(n,148));return}qu(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),Yv},s.Bh=function(t){switch(t){case 0:!this.c&&(this.c=new Ci(this,0)),Xt(this.c);return;case 1:(!this.c&&(this.c=new Ci(this,0)),c(vc(this.c,(Jn(),Ib)),153)).$b();return;case 2:!this.b&&(this.b=new Ci(this,2)),Xt(this.b);return;case 3:!this.c&&(this.c=new Ci(this,0)),rD(this.c,(Jn(),uM),null);return;case 4:eie(this,pte(this.a,null));return;case 5:this.a=null;return}$u(this,t-Ft((Jn(),Yv)),at((this.j&2)==0?Yv:(!this.k&&(this.k=new il),this.k).ck(),t))},S(Fi,"SimpleAnyTypeImpl",668),y(669,506,{105:1,92:1,90:1,56:1,49:1,97:1,2023:1,669:1},e9e),s._g=function(t,n,i){switch(t){case 0:return i?(!this.a&&(this.a=new Ci(this,0)),this.a):(!this.a&&(this.a=new Ci(this,0)),this.a.b);case 1:return i?(!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),this.b):(!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),XC(this.b));case 2:return i?(!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),this.c):(!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),XC(this.c));case 3:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),Qj));case 4:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),Zj));case 5:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),aM));case 6:return!this.a&&(this.a=new Ci(this,0)),vc(this.a,(Jn(),lM))}return Nu(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t),n,i)},s.jh=function(t,n,i){var r;switch(n){case 0:return!this.a&&(this.a=new Ci(this,0)),nT(this.a,t,i);case 1:return!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),r8(this.b,t,i);case 2:return!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),r8(this.c,t,i);case 5:return!this.a&&(this.a=new Ci(this,0)),oke(vc(this.a,(Jn(),aM)),t,i)}return r=c(at((this.j&2)==0?(Jn(),ap):(!this.k&&(this.k=new il),this.k).ck(),n),66),r.Nj().Rj(this,Kie(this),n-Ft((Jn(),ap)),t,i)},s.lh=function(t){switch(t){case 0:return!!this.a&&this.a.i!=0;case 1:return!!this.b&&this.b.f!=0;case 2:return!!this.c&&this.c.f!=0;case 3:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),Qj)));case 4:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),Zj)));case 5:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),aM)));case 6:return!this.a&&(this.a=new Ci(this,0)),!L9(vc(this.a,(Jn(),lM)))}return xu(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t))},s.sh=function(t,n){switch(t){case 0:!this.a&&(this.a=new Ci(this,0)),xC(this.a,n);return;case 1:!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),GO(this.b,n);return;case 2:!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),GO(this.c,n);return;case 3:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Qj))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,Qj),c(n,14));return;case 4:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Zj))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,Zj),c(n,14));return;case 5:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),aM))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,aM),c(n,14));return;case 6:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),lM))),!this.a&&(this.a=new Ci(this,0)),h5(vc(this.a,lM),c(n,14));return}qu(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t),n)},s.zh=function(){return Jn(),ap},s.Bh=function(t){switch(t){case 0:!this.a&&(this.a=new Ci(this,0)),Xt(this.a);return;case 1:!this.b&&(this.b=new iu((ot(),Ur),ec,this,1)),this.b.c.$b();return;case 2:!this.c&&(this.c=new iu((ot(),Ur),ec,this,2)),this.c.c.$b();return;case 3:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Qj)));return;case 4:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),Zj)));return;case 5:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),aM)));return;case 6:!this.a&&(this.a=new Ci(this,0)),ky(vc(this.a,(Jn(),lM)));return}$u(this,t-Ft((Jn(),ap)),at((this.j&2)==0?ap:(!this.k&&(this.k=new il),this.k).ck(),t))},s.Ib=function(){var t;return(this.j&4)!=0?Ba(this):(t=new ea(Ba(this)),t.a+=" (mixed: ",u5(t,this.a),t.a+=")",t.a)},S(Fi,"XMLTypeDocumentRootImpl",669),y(1919,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1,2024:1},xPe),s.Ih=function(t,n){switch(t.yj()){case 7:case 8:case 9:case 10:case 16:case 22:case 23:case 24:case 25:case 26:case 32:case 33:case 34:case 36:case 37:case 44:case 45:case 50:case 51:case 53:case 55:case 56:case 57:case 58:case 60:case 61:case 4:return n==null?null:Ro(n);case 19:case 28:case 29:case 35:case 38:case 39:case 41:case 46:case 52:case 54:case 5:return ln(n);case 6:return k3t(c(n,190));case 12:case 47:case 49:case 11:return TXe(this,t,n);case 13:return n==null?null:y$t(c(n,240));case 15:case 14:return n==null?null:ASt(ge(Te(n)));case 17:return OVe((Jn(),n));case 18:return OVe(n);case 21:case 20:return n==null?null:OSt(c(n,155).a);case 27:return R3t(c(n,190));case 30:return Uze((Jn(),c(n,15)));case 31:return Uze(c(n,15));case 40:return L3t((Jn(),n));case 42:return DVe((Jn(),n));case 43:return DVe(n);case 59:case 48:return x3t((Jn(),n));default:throw V(new St(UE+t.ne()+K0))}},s.Jh=function(t){var n,i,r,o,u;switch(t.G==-1&&(t.G=(i=bu(t),i?wd(i.Mh(),t):-1)),t.G){case 0:return n=new WQ,n;case 1:return r=new LPe,r;case 2:return o=new t9e,o;case 3:return u=new e9e,u;default:throw V(new St(CV+t.zb+K0))}},s.Kh=function(t,n){var i,r,o,u,a,l,d,p,v,A,D,L,N,z,Y,ie;switch(t.yj()){case 5:case 52:case 4:return n;case 6:return X9t(n);case 8:case 7:return n==null?null:N7t(n);case 9:return n==null?null:sI(vu((r=Ec(n,!0),r.length>0&&(fn(0,r.length),r.charCodeAt(0)==43)?r.substr(1):r),-128,127)<<24>>24);case 10:return n==null?null:sI(vu((o=Ec(n,!0),o.length>0&&(fn(0,o.length),o.charCodeAt(0)==43)?o.substr(1):o),-128,127)<<24>>24);case 11:return ln(R0(this,(Jn(),Gft),n));case 12:return ln(R0(this,(Jn(),Uft),n));case 13:return n==null?null:new bZ(Ec(n,!0));case 15:case 14:return rLt(n);case 16:return ln(R0(this,(Jn(),Wft),n));case 17:return ZHe((Jn(),n));case 18:return ZHe(n);case 28:case 29:case 35:case 38:case 39:case 41:case 54:case 19:return Ec(n,!0);case 21:case 20:return dLt(n);case 22:return ln(R0(this,(Jn(),Yft),n));case 23:return ln(R0(this,(Jn(),Xft),n));case 24:return ln(R0(this,(Jn(),Jft),n));case 25:return ln(R0(this,(Jn(),Qft),n));case 26:return ln(R0(this,(Jn(),Zft),n));case 27:return V9t(n);case 30:return eze((Jn(),n));case 31:return eze(n);case 32:return n==null?null:Ce(vu((v=Ec(n,!0),v.length>0&&(fn(0,v.length),v.charCodeAt(0)==43)?v.substr(1):v),Ar,Fn));case 33:return n==null?null:new l1((A=Ec(n,!0),A.length>0&&(fn(0,A.length),A.charCodeAt(0)==43)?A.substr(1):A));case 34:return n==null?null:Ce(vu((D=Ec(n,!0),D.length>0&&(fn(0,D.length),D.charCodeAt(0)==43)?D.substr(1):D),Ar,Fn));case 36:return n==null?null:Yg(aD((L=Ec(n,!0),L.length>0&&(fn(0,L.length),L.charCodeAt(0)==43)?L.substr(1):L)));case 37:return n==null?null:Yg(aD((N=Ec(n,!0),N.length>0&&(fn(0,N.length),N.charCodeAt(0)==43)?N.substr(1):N)));case 40:return s9t((Jn(),n));case 42:return tze((Jn(),n));case 43:return tze(n);case 44:return n==null?null:new l1((z=Ec(n,!0),z.length>0&&(fn(0,z.length),z.charCodeAt(0)==43)?z.substr(1):z));case 45:return n==null?null:new l1((Y=Ec(n,!0),Y.length>0&&(fn(0,Y.length),Y.charCodeAt(0)==43)?Y.substr(1):Y));case 46:return Ec(n,!1);case 47:return ln(R0(this,(Jn(),eht),n));case 59:case 48:return c9t((Jn(),n));case 49:return ln(R0(this,(Jn(),tht),n));case 50:return n==null?null:oE(vu((ie=Ec(n,!0),ie.length>0&&(fn(0,ie.length),ie.charCodeAt(0)==43)?ie.substr(1):ie),hk,32767)<<16>>16);case 51:return n==null?null:oE(vu((u=Ec(n,!0),u.length>0&&(fn(0,u.length),u.charCodeAt(0)==43)?u.substr(1):u),hk,32767)<<16>>16);case 53:return ln(R0(this,(Jn(),nht),n));case 55:return n==null?null:oE(vu((a=Ec(n,!0),a.length>0&&(fn(0,a.length),a.charCodeAt(0)==43)?a.substr(1):a),hk,32767)<<16>>16);case 56:return n==null?null:oE(vu((l=Ec(n,!0),l.length>0&&(fn(0,l.length),l.charCodeAt(0)==43)?l.substr(1):l),hk,32767)<<16>>16);case 57:return n==null?null:Yg(aD((d=Ec(n,!0),d.length>0&&(fn(0,d.length),d.charCodeAt(0)==43)?d.substr(1):d)));case 58:return n==null?null:Yg(aD((p=Ec(n,!0),p.length>0&&(fn(0,p.length),p.charCodeAt(0)==43)?p.substr(1):p)));case 60:return n==null?null:Ce(vu((i=Ec(n,!0),i.length>0&&(fn(0,i.length),i.charCodeAt(0)==43)?i.substr(1):i),Ar,Fn));case 61:return n==null?null:Ce(vu(Ec(n,!0),Ar,Fn));default:throw V(new St(UE+t.ne()+K0))}};var rht,Mme,oht,Cme;S(Fi,"XMLTypeFactoryImpl",1919),y(586,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1,1945:1,586:1},$xe),s.N=!1,s.O=!1;var cht=!1;S(Fi,"XMLTypePackageImpl",586),y(1852,1,{837:1},NPe),s._j=function(){return uue(),bht},S(Fi,"XMLTypePackageImpl/1",1852),y(1861,1,Tn,FPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/10",1861),y(1862,1,Tn,BPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/11",1862),y(1863,1,Tn,$Pe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/12",1863),y(1864,1,Tn,KPe),s.wj=function(t){return kp(t)},s.xj=function(t){return oe(mr,we,333,t,7,1)},S(Fi,"XMLTypePackageImpl/13",1864),y(1865,1,Tn,qPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/14",1865),y(1866,1,Tn,HPe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/15",1866),y(1867,1,Tn,zPe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/16",1867),y(1868,1,Tn,VPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/17",1868),y(1869,1,Tn,GPe),s.wj=function(t){return Q(t,155)},s.xj=function(t){return oe(e4,we,155,t,0,1)},S(Fi,"XMLTypePackageImpl/18",1869),y(1870,1,Tn,UPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/19",1870),y(1853,1,Tn,WPe),s.wj=function(t){return Q(t,843)},s.xj=function(t){return oe(Xj,xe,843,t,0,1)},S(Fi,"XMLTypePackageImpl/2",1853),y(1871,1,Tn,YPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/20",1871),y(1872,1,Tn,XPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/21",1872),y(1873,1,Tn,JPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/22",1873),y(1874,1,Tn,QPe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/23",1874),y(1875,1,Tn,ZPe),s.wj=function(t){return Q(t,190)},s.xj=function(t){return oe(Ps,we,190,t,0,2)},S(Fi,"XMLTypePackageImpl/24",1875),y(1876,1,Tn,eMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/25",1876),y(1877,1,Tn,tMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/26",1877),y(1878,1,Tn,nMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/27",1878),y(1879,1,Tn,iMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/28",1879),y(1880,1,Tn,rMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/29",1880),y(1854,1,Tn,oMe),s.wj=function(t){return Q(t,667)},s.xj=function(t){return oe(zx,xe,2021,t,0,1)},S(Fi,"XMLTypePackageImpl/3",1854),y(1881,1,Tn,cMe),s.wj=function(t){return Q(t,19)},s.xj=function(t){return oe($r,we,19,t,0,1)},S(Fi,"XMLTypePackageImpl/30",1881),y(1882,1,Tn,sMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/31",1882),y(1883,1,Tn,uMe),s.wj=function(t){return Q(t,162)},s.xj=function(t){return oe(H0,we,162,t,0,1)},S(Fi,"XMLTypePackageImpl/32",1883),y(1884,1,Tn,aMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/33",1884),y(1885,1,Tn,lMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/34",1885),y(1886,1,Tn,fMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/35",1886),y(1887,1,Tn,hMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/36",1887),y(1888,1,Tn,dMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/37",1888),y(1889,1,Tn,gMe),s.wj=function(t){return Q(t,15)},s.xj=function(t){return oe(Vu,yw,15,t,0,1)},S(Fi,"XMLTypePackageImpl/38",1889),y(1890,1,Tn,bMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/39",1890),y(1855,1,Tn,pMe),s.wj=function(t){return Q(t,668)},s.xj=function(t){return oe(Jj,xe,2022,t,0,1)},S(Fi,"XMLTypePackageImpl/4",1855),y(1891,1,Tn,wMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/40",1891),y(1892,1,Tn,mMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/41",1892),y(1893,1,Tn,vMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/42",1893),y(1894,1,Tn,yMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/43",1894),y(1895,1,Tn,_Me),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/44",1895),y(1896,1,Tn,EMe),s.wj=function(t){return Q(t,184)},s.xj=function(t){return oe(z0,we,184,t,0,1)},S(Fi,"XMLTypePackageImpl/45",1896),y(1897,1,Tn,SMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/46",1897),y(1898,1,Tn,PMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/47",1898),y(1899,1,Tn,MMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/48",1899),y(O1,1,Tn,CMe),s.wj=function(t){return Q(t,184)},s.xj=function(t){return oe(z0,we,184,t,0,1)},S(Fi,"XMLTypePackageImpl/49",O1),y(1856,1,Tn,IMe),s.wj=function(t){return Q(t,669)},s.xj=function(t){return oe(Sme,xe,2023,t,0,1)},S(Fi,"XMLTypePackageImpl/5",1856),y(1901,1,Tn,TMe),s.wj=function(t){return Q(t,162)},s.xj=function(t){return oe(H0,we,162,t,0,1)},S(Fi,"XMLTypePackageImpl/50",1901),y(1902,1,Tn,jMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/51",1902),y(1903,1,Tn,AMe),s.wj=function(t){return Q(t,19)},s.xj=function(t){return oe($r,we,19,t,0,1)},S(Fi,"XMLTypePackageImpl/52",1903),y(1857,1,Tn,OMe),s.wj=function(t){return fr(t)},s.xj=function(t){return oe(Re,we,2,t,6,1)},S(Fi,"XMLTypePackageImpl/6",1857),y(1858,1,Tn,DMe),s.wj=function(t){return Q(t,190)},s.xj=function(t){return oe(Ps,we,190,t,0,2)},S(Fi,"XMLTypePackageImpl/7",1858),y(1859,1,Tn,kMe),s.wj=function(t){return Dp(t)},s.xj=function(t){return oe(Qi,we,476,t,8,1)},S(Fi,"XMLTypePackageImpl/8",1859),y(1860,1,Tn,RMe),s.wj=function(t){return Q(t,217)},s.xj=function(t){return oe(B2,we,217,t,0,1)},S(Fi,"XMLTypePackageImpl/9",1860);var Zl,Fd,fM,Vx,X;y(50,60,$h,an),S(Cd,"RegEx/ParseException",50),y(820,1,{},zJ),s.sl=function(t){return ti*16)throw V(new an(gn((un(),Tet))));i=i*16+o}while(!0);if(this.a!=125)throw V(new an(gn((un(),jet))));if(i>JE)throw V(new an(gn((un(),Aet))));t=i}else{if(o=0,this.c!=0||(o=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(i=o,xn(this),this.c!=0||(o=Jg(this.a))<0)throw V(new an(gn((un(),Md))));i=i*16+o,t=i}break;case 117:if(r=0,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));n=n*16+r,t=n;break;case 118:if(xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,xn(this),this.c!=0||(r=Jg(this.a))<0)throw V(new an(gn((un(),Md))));if(n=n*16+r,n>JE)throw V(new an(gn((un(),"parser.descappe.4"))));t=n;break;case 65:case 90:case 122:throw V(new an(gn((un(),Oet))))}return t},s.ul=function(t){var n,i;switch(t){case 100:i=(this.e&32)==32?j1("Nd",!0):(Ln(),Gx);break;case 68:i=(this.e&32)==32?j1("Nd",!1):(Ln(),Dme);break;case 119:i=(this.e&32)==32?j1("IsWord",!0):(Ln(),F4);break;case 87:i=(this.e&32)==32?j1("IsWord",!1):(Ln(),Rme);break;case 115:i=(this.e&32)==32?j1("IsSpace",!0):(Ln(),l3);break;case 83:i=(this.e&32)==32?j1("IsSpace",!1):(Ln(),kme);break;default:throw V(new No((n=t,Ott+n.toString(16))))}return i},s.vl=function(t){var n,i,r,o,u,a,l,d,p,v,A,D;for(this.b=1,xn(this),n=null,this.c==0&&this.a==94?(xn(this),t?v=(Ln(),Ln(),new du(5)):(n=(Ln(),Ln(),new du(4)),_c(n,0,JE),v=new du(4))):v=(Ln(),Ln(),new du(4)),o=!0;(D=this.c)!=1&&!(D==0&&this.a==93&&!o);){if(o=!1,i=this.a,r=!1,D==10)switch(i){case 100:case 68:case 119:case 87:case 115:case 83:pw(v,this.ul(i)),r=!0;break;case 105:case 73:case 99:case 67:i=this.Ll(v,i),i<0&&(r=!0);break;case 112:case 80:if(A=lse(this,i),!A)throw V(new an(gn((un(),BV))));pw(v,A),r=!0;break;default:i=this.tl()}else if(D==20){if(a=g_(this.i,58,this.d),a<0)throw V(new an(gn((un(),Rfe))));if(l=!0,Pr(this.i,this.d)==94&&(++this.d,l=!1),u=fu(this.i,this.d,a),d=KBe(u,l,(this.e&512)==512),!d)throw V(new an(gn((un(),Eet))));if(pw(v,d),r=!0,a+1>=this.j||Pr(this.i,a+1)!=93)throw V(new an(gn((un(),Rfe))));this.d=a+2}if(xn(this),!r)if(this.c!=0||this.a!=45)_c(v,i,i);else{if(xn(this),(D=this.c)==1)throw V(new an(gn((un(),ok))));D==0&&this.a==93?(_c(v,i,i),_c(v,45,45)):(p=this.a,D==10&&(p=this.tl()),xn(this),_c(v,i,p))}(this.e&Ka)==Ka&&this.c==0&&this.a==44&&xn(this)}if(this.c==1)throw V(new an(gn((un(),ok))));return n&&(I6(n,v),v=n),tv(v),M6(v),this.b=0,xn(this),v},s.wl=function(){var t,n,i,r;for(i=this.vl(!1);(r=this.c)!=7;)if(t=this.a,r==0&&(t==45||t==38)||r==4){if(xn(this),this.c!=9)throw V(new an(gn((un(),Met))));if(n=this.vl(!1),r==4)pw(i,n);else if(t==45)I6(i,n);else if(t==38)EXe(i,n);else throw V(new No("ASSERT"))}else throw V(new an(gn((un(),Cet))));return xn(this),i},s.xl=function(){var t,n;return t=this.a-48,n=(Ln(),Ln(),new ZB(12,null,t)),!this.g&&(this.g=new WA),UA(this.g,new TQ(t)),xn(this),n},s.yl=function(){return xn(this),Ln(),aht},s.zl=function(){return xn(this),Ln(),uht},s.Al=function(){throw V(new an(gn((un(),zu))))},s.Bl=function(){throw V(new an(gn((un(),zu))))},s.Cl=function(){return xn(this),ujt()},s.Dl=function(){return xn(this),Ln(),fht},s.El=function(){return xn(this),Ln(),dht},s.Fl=function(){var t;if(this.d>=this.j||((t=Pr(this.i,this.d++))&65504)!=64)throw V(new an(gn((un(),vet))));return xn(this),Ln(),Ln(),new $f(0,t-64)},s.Gl=function(){return xn(this),VBt()},s.Hl=function(){return xn(this),Ln(),ght},s.Il=function(){var t;return t=(Ln(),Ln(),new $f(0,105)),xn(this),t},s.Jl=function(){return xn(this),Ln(),hht},s.Kl=function(){return xn(this),Ln(),lht},s.Ll=function(t,n){return this.tl()},s.Ml=function(){return xn(this),Ln(),Ame},s.Nl=function(){var t,n,i,r,o;if(this.d+1>=this.j)throw V(new an(gn((un(),pet))));if(r=-1,n=null,t=Pr(this.i,this.d),49<=t&&t<=57){if(r=t-48,!this.g&&(this.g=new WA),UA(this.g,new TQ(r)),++this.d,Pr(this.i,this.d)!=41)throw V(new an(gn((un(),ab))));++this.d}else switch(t==63&&--this.d,xn(this),n=kue(this),n.e){case 20:case 21:case 22:case 23:break;case 8:if(this.c!=7)throw V(new an(gn((un(),ab))));break;default:throw V(new an(gn((un(),wet))))}if(xn(this),o=P0(this),i=null,o.e==2){if(o.em()!=2)throw V(new an(gn((un(),met))));i=o.am(1),o=o.am(0)}if(this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),Ln(),Ln(),new v$e(r,n,o,i)},s.Ol=function(){return xn(this),Ln(),Ome},s.Pl=function(){var t;if(xn(this),t=j8(24,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Ql=function(){var t;if(xn(this),t=j8(20,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Rl=function(){var t;if(xn(this),t=j8(22,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Sl=function(){var t,n,i,r,o;for(t=0,i=0,n=-1;this.d=this.j)throw V(new an(gn((un(),Dfe))));if(n==45){for(++this.d;this.d=this.j)throw V(new an(gn((un(),Dfe))))}if(n==58){if(++this.d,xn(this),r=Pxe(P0(this),t,i),this.c!=7)throw V(new an(gn((un(),ab))));xn(this)}else if(n==41)++this.d,xn(this),r=Pxe(P0(this),t,i);else throw V(new an(gn((un(),bet))));return r},s.Tl=function(){var t;if(xn(this),t=j8(21,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Ul=function(){var t;if(xn(this),t=j8(23,P0(this)),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Vl=function(){var t,n;if(xn(this),t=this.f++,n=CB(P0(this),t),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),n},s.Wl=function(){var t;if(xn(this),t=CB(P0(this),0),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Xl=function(t){return xn(this),this.c==5?(xn(this),v8(t,(Ln(),Ln(),new Gp(9,t)))):v8(t,(Ln(),Ln(),new Gp(3,t)))},s.Yl=function(t){var n;return xn(this),n=(Ln(),Ln(),new f5(2)),this.c==5?(xn(this),eb(n,dM),eb(n,t)):(eb(n,t),eb(n,dM)),n},s.Zl=function(t){return xn(this),this.c==5?(xn(this),Ln(),Ln(),new Gp(9,t)):(Ln(),Ln(),new Gp(3,t))},s.a=0,s.b=0,s.c=0,s.d=0,s.e=0,s.f=1,s.g=null,s.j=0,S(Cd,"RegEx/RegexParser",820),y(1824,820,{},n9e),s.sl=function(t){return!1},s.tl=function(){return zse(this)},s.ul=function(t){return CE(t)},s.vl=function(t){return gJe(this)},s.wl=function(){throw V(new an(gn((un(),zu))))},s.xl=function(){throw V(new an(gn((un(),zu))))},s.yl=function(){throw V(new an(gn((un(),zu))))},s.zl=function(){throw V(new an(gn((un(),zu))))},s.Al=function(){return xn(this),CE(67)},s.Bl=function(){return xn(this),CE(73)},s.Cl=function(){throw V(new an(gn((un(),zu))))},s.Dl=function(){throw V(new an(gn((un(),zu))))},s.El=function(){throw V(new an(gn((un(),zu))))},s.Fl=function(){return xn(this),CE(99)},s.Gl=function(){throw V(new an(gn((un(),zu))))},s.Hl=function(){throw V(new an(gn((un(),zu))))},s.Il=function(){return xn(this),CE(105)},s.Jl=function(){throw V(new an(gn((un(),zu))))},s.Kl=function(){throw V(new an(gn((un(),zu))))},s.Ll=function(t,n){return pw(t,CE(n)),-1},s.Ml=function(){return xn(this),Ln(),Ln(),new $f(0,94)},s.Nl=function(){throw V(new an(gn((un(),zu))))},s.Ol=function(){return xn(this),Ln(),Ln(),new $f(0,36)},s.Pl=function(){throw V(new an(gn((un(),zu))))},s.Ql=function(){throw V(new an(gn((un(),zu))))},s.Rl=function(){throw V(new an(gn((un(),zu))))},s.Sl=function(){throw V(new an(gn((un(),zu))))},s.Tl=function(){throw V(new an(gn((un(),zu))))},s.Ul=function(){throw V(new an(gn((un(),zu))))},s.Vl=function(){var t;if(xn(this),t=CB(P0(this),0),this.c!=7)throw V(new an(gn((un(),ab))));return xn(this),t},s.Wl=function(){throw V(new an(gn((un(),zu))))},s.Xl=function(t){return xn(this),v8(t,(Ln(),Ln(),new Gp(3,t)))},s.Yl=function(t){var n;return xn(this),n=(Ln(),Ln(),new f5(2)),eb(n,t),eb(n,dM),n},s.Zl=function(t){return xn(this),Ln(),Ln(),new Gp(3,t)};var Xv=null,L4=null;S(Cd,"RegEx/ParserForXMLSchema",1824),y(117,1,QE,Lb),s.$l=function(t){throw V(new No("Not supported."))},s._l=function(){return-1},s.am=function(t){return null},s.bm=function(){return null},s.cm=function(t){},s.dm=function(t){},s.em=function(){return 0},s.Ib=function(){return this.fm(0)},s.fm=function(t){return this.e==11?".":""},s.e=0;var Ime,N4,hM,sht,Tme,tm=null,Gx,yY=null,jme,dM,_Y=null,Ame,Ome,Dme,kme,Rme,uht,l3,aht,lht,fht,hht,F4,dht,ght,Bzt=S(Cd,"RegEx/Token",117);y(136,117,{3:1,136:1,117:1},du),s.fm=function(t){var n,i,r;if(this.e==4)if(this==jme)i=".";else if(this==Gx)i="\\d";else if(this==F4)i="\\w";else if(this==l3)i="\\s";else{for(r=new nd,r.a+="[",n=0;n0&&(r.a+=","),this.b[n]===this.b[n+1]?co(r,oT(this.b[n])):(co(r,oT(this.b[n])),r.a+="-",co(r,oT(this.b[n+1])));r.a+="]",i=r.a}else if(this==Dme)i="\\D";else if(this==Rme)i="\\W";else if(this==kme)i="\\S";else{for(r=new nd,r.a+="[^",n=0;n0&&(r.a+=","),this.b[n]===this.b[n+1]?co(r,oT(this.b[n])):(co(r,oT(this.b[n])),r.a+="-",co(r,oT(this.b[n+1])));r.a+="]",i=r.a}return i},s.a=!1,s.c=!1,S(Cd,"RegEx/RangeToken",136),y(584,1,{584:1},TQ),s.a=0,S(Cd,"RegEx/RegexParser/ReferencePosition",584),y(583,1,{3:1,583:1},d8e),s.Fb=function(t){var n;return t==null||!Q(t,583)?!1:(n=c(t,583),rt(this.b,n.b)&&this.a==n.a)},s.Hb=function(){return md(this.b+"/"+Fse(this.a))},s.Ib=function(){return this.c.fm(this.a)},s.a=0,S(Cd,"RegEx/RegularExpression",583),y(223,117,QE,$f),s._l=function(){return this.a},s.fm=function(t){var n,i,r;switch(this.e){case 0:switch(this.a){case 124:case 42:case 43:case 63:case 40:case 41:case 46:case 91:case 123:case 92:r="\\"+ZF(this.a&Ni);break;case 12:r="\\f";break;case 10:r="\\n";break;case 13:r="\\r";break;case 9:r="\\t";break;case 27:r="\\e";break;default:this.a>=Vr?(i=(n=this.a>>>0,"0"+n.toString(16)),r="\\v"+fu(i,i.length-6,i.length)):r=""+ZF(this.a&Ni)}break;case 8:this==Ame||this==Ome?r=""+ZF(this.a&Ni):r="\\"+ZF(this.a&Ni);break;default:r=null}return r},s.a=0,S(Cd,"RegEx/Token/CharToken",223),y(309,117,QE,Gp),s.am=function(t){return this.a},s.cm=function(t){this.b=t},s.dm=function(t){this.c=t},s.em=function(){return 1},s.fm=function(t){var n;if(this.e==3)if(this.c<0&&this.b<0)n=this.a.fm(t)+"*";else if(this.c==this.b)n=this.a.fm(t)+"{"+this.c+"}";else if(this.c>=0&&this.b>=0)n=this.a.fm(t)+"{"+this.c+","+this.b+"}";else if(this.c>=0&&this.b<0)n=this.a.fm(t)+"{"+this.c+",}";else throw V(new No("Token#toString(): CLOSURE "+this.c+zr+this.b));else if(this.c<0&&this.b<0)n=this.a.fm(t)+"*?";else if(this.c==this.b)n=this.a.fm(t)+"{"+this.c+"}?";else if(this.c>=0&&this.b>=0)n=this.a.fm(t)+"{"+this.c+","+this.b+"}?";else if(this.c>=0&&this.b<0)n=this.a.fm(t)+"{"+this.c+",}?";else throw V(new No("Token#toString(): NONGREEDYCLOSURE "+this.c+zr+this.b));return n},s.b=0,s.c=0,S(Cd,"RegEx/Token/ClosureToken",309),y(821,117,QE,yne),s.am=function(t){return t==0?this.a:this.b},s.em=function(){return 2},s.fm=function(t){var n;return this.b.e==3&&this.b.am(0)==this.a?n=this.a.fm(t)+"+":this.b.e==9&&this.b.am(0)==this.a?n=this.a.fm(t)+"+?":n=this.a.fm(t)+(""+this.b.fm(t)),n},S(Cd,"RegEx/Token/ConcatToken",821),y(1822,117,QE,v$e),s.am=function(t){if(t==0)return this.d;if(t==1)return this.b;throw V(new No("Internal Error: "+t))},s.em=function(){return this.b?2:1},s.fm=function(t){var n;return this.c>0?n="(?("+this.c+")":this.a.e==8?n="(?("+this.a+")":n="(?"+this.a,this.b?n+=this.d+"|"+this.b+")":n+=this.d+")",n},s.c=0,S(Cd,"RegEx/Token/ConditionToken",1822),y(1823,117,QE,vNe),s.am=function(t){return this.b},s.em=function(){return 1},s.fm=function(t){return"(?"+(this.a==0?"":Fse(this.a))+(this.c==0?"":Fse(this.c))+":"+this.b.fm(t)+")"},s.a=0,s.c=0,S(Cd,"RegEx/Token/ModifierToken",1823),y(822,117,QE,Cne),s.am=function(t){return this.a},s.em=function(){return 1},s.fm=function(t){var n;switch(n=null,this.e){case 6:this.b==0?n="(?:"+this.a.fm(t)+")":n="("+this.a.fm(t)+")";break;case 20:n="(?="+this.a.fm(t)+")";break;case 21:n="(?!"+this.a.fm(t)+")";break;case 22:n="(?<="+this.a.fm(t)+")";break;case 23:n="(?"+this.a.fm(t)+")"}return n},s.b=0,S(Cd,"RegEx/Token/ParenToken",822),y(521,117,{3:1,117:1,521:1},ZB),s.bm=function(){return this.b},s.fm=function(t){return this.e==12?"\\"+this.a:ZRt(this.b)},s.a=0,S(Cd,"RegEx/Token/StringToken",521),y(465,117,QE,f5),s.$l=function(t){eb(this,t)},s.am=function(t){return c(i0(this.a,t),117)},s.em=function(){return this.a?this.a.a.c.length:0},s.fm=function(t){var n,i,r,o,u;if(this.e==1){if(this.a.a.c.length==2)n=c(i0(this.a,0),117),i=c(i0(this.a,1),117),i.e==3&&i.am(0)==n?o=n.fm(t)+"+":i.e==9&&i.am(0)==n?o=n.fm(t)+"+?":o=n.fm(t)+(""+i.fm(t));else{for(u=new nd,r=0;r=this.c.b:this.a<=this.c.b},s.Sb=function(){return this.b>0},s.Tb=function(){return this.b},s.Vb=function(){return this.b-1},s.Qb=function(){throw V(new td(Ftt))},s.a=0,s.b=0,S(Zfe,"ExclusiveRange/RangeIterator",254);var Yu=P_(ck,"C"),Qt=P_(tP,"I"),Gs=P_(M2,"Z"),rg=P_(nP,"J"),Ps=P_(Q6,"B"),gr=P_(Z6,"D"),nm=P_(eP,"F"),Jv=P_(iP,"S"),$zt=pi("org.eclipse.elk.core.labels","ILabelManager"),xme=pi(Br,"DiagnosticChain"),Lme=pi(htt,"ResourceSet"),Nme=S(Br,"InvocationTargetException",null),pht=(ZA(),OMt),wht=wht=y7t;CIt(vvt),QIt("permProps",[[[vk,yk],[_k,"gecko1_8"]],[[vk,yk],[_k,"ie10"]],[[vk,yk],[_k,"ie8"]],[[vk,yk],[_k,"ie9"]],[[vk,yk],[_k,"safari"]]]),wht(null,"elk",null)}).call(this)}).call(this,typeof fS<"u"?fS:typeof self<"u"?self:typeof window<"u"?window:{})},{}],3:[function(b,w,m){function P(M,_){if(!(M instanceof _))throw new TypeError("Cannot call a class as a function")}function g(M,_){if(!M)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return _&&(typeof _=="object"||typeof _=="function")?_:M}function E(M,_){if(typeof _!="function"&&_!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof _);M.prototype=Object.create(_&&_.prototype,{constructor:{value:M,enumerable:!1,writable:!0,configurable:!0}}),_&&(Object.setPrototypeOf?Object.setPrototypeOf(M,_):M.__proto__=_)}var C=b("./elk-api.js").default,T=(function(M){E(_,M);function _(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};P(this,_);var O=Object.assign({},I),j=!1;try{b.resolve("web-worker"),j=!0}catch{}if(I.workerUrl)if(j){var k=b("web-worker");O.workerFactory=function(H){return new k(H)}}else console.warn(`Web worker requested but 'web-worker' package not installed. -Consider installing the package or pass your own 'workerFactory' to ELK's constructor. -... Falling back to non-web worker version.`);if(!O.workerFactory){var x=b("./elk-worker.min.js"),R=x.Worker;O.workerFactory=function(H){return new R(H)}}return g(this,(_.__proto__||Object.getPrototypeOf(_)).call(this,O))}return _})(C);Object.defineProperty(w.exports,"__esModule",{value:!0}),w.exports=T,T.default=T},{"./elk-api.js":1,"./elk-worker.min.js":2,"web-worker":4}],4:[function(b,w,m){w.exports=Worker},{}]},{},[3])(3)})})(_ve)),_ve.exports}var JUt=XUt();const QUt=qzt(JUt);var TM={},Eve={},P3={},T0t;function ZUt(){if(T0t)return P3;T0t=1,Object.defineProperty(P3,"__esModule",{value:!0}),P3.DefaultLayoutConfigurator=P3.DefaultElementFilter=P3.ElkLayoutEngine=void 0;const f=LM();class h{constructor(g,E=new w,C=new m,T,M){this.filter=E,this.configurator=C,this.preprocessor=T,this.postprocessor=M,this.elk=g()}layout(g,E){if(this.getBasicType(g)!=="graph")return g;E||(E=new f.SModelIndex,E.add(g));const C=this.transformGraph(g,E);return this.preprocessor&&this.preprocessor.preprocess(C,g,E),this.elk.layout(C).then(T=>(this.postprocessor&&this.postprocessor.postprocess(T,g,E),this.applyLayout(T,E),g))}getBasicType(g){return(0,f.getBasicType)(g)}transformGraph(g,E){const C={id:g.id,layoutOptions:this.configurator.apply(g,E)};return g.children&&(C.children=g.children.filter(T=>this.getBasicType(T)==="node"&&this.filter.apply(T,E)).map(T=>this.transformNode(T,E)),C.edges=g.children.filter(T=>this.getBasicType(T)==="edge"&&this.filter.apply(T,E)).map(T=>this.transformEdge(T,E))),C}transformNode(g,E){var C,T,M;const _={id:g.id,layoutOptions:this.configurator.apply(g,E)};if(g.children){const I={top:0,right:0,bottom:0,left:0};_.children=this.transformCompartment(g,E,I),(I.top!==0||I.right!==0||I.bottom!==0||I.left!==0)&&((C=_.layoutOptions)!==null&&C!==void 0||(_.layoutOptions={}),(T=(M=_.layoutOptions)["org.eclipse.elk.padding"])!==null&&T!==void 0||(M["org.eclipse.elk.padding"]=`[top=${I.top},left=${I.left},bottom=${I.bottom},right=${I.right}]`)),_.edges=g.children.filter(O=>this.getBasicType(O)==="edge"&&this.filter.apply(O,E)).map(O=>this.transformEdge(O,E)),_.labels=g.children.filter(O=>this.getBasicType(O)==="label"&&this.filter.apply(O,E)).map(O=>this.transformLabel(O,E)),_.ports=g.children.filter(O=>this.getBasicType(O)==="port"&&this.filter.apply(O,E)).map(O=>this.transformPort(O,E))}return this.transformShape(_,g),_}transformCompartment(g,E,C){if(!g.children)return;const T=g.children.filter(M=>this.getBasicType(M)==="node"&&this.filter.apply(M,E));if(T.length>0)return T.map(M=>this.transformNode(M,E));for(const M of g.children)if(this.getBasicType(M)==="compartment"&&this.filter.apply(M,E)){const _=M;g.layout&&(_.position&&(C.left+=_.position.x,C.top+=_.position.y),_.size&&g.size&&(C.right+=g.size.width-_.size.width-(_.position?_.position.x:0),C.bottom+=g.size.height-_.size.height-(_.position?_.position.y:0)));const I=this.transformCompartment(_,E,C);if(I)return I}}transformEdge(g,E){const C={id:g.id,sources:[g.sourceId],targets:[g.targetId],layoutOptions:this.configurator.apply(g,E)};g.children&&(C.labels=g.children.filter(M=>this.getBasicType(M)==="label"&&this.filter.apply(M,E)).map(M=>this.transformLabel(M,E)));const T=g.routingPoints;return T&&T.length>=2&&(C.sections=[{id:g.id+":section",startPoint:T[0],bendPoints:T.slice(1,T.length-1),endPoint:T[T.length-1]}]),C}transformLabel(g,E){const C={id:g.id,text:g.text,layoutOptions:this.configurator.apply(g,E)};return this.transformShape(C,g),C}transformPort(g,E){const C={id:g.id,layoutOptions:this.configurator.apply(g,E)};return g.children&&(C.labels=g.children.filter(T=>this.getBasicType(T)==="label"&&this.filter.apply(T,E)).map(T=>this.transformLabel(T,E))),this.transformShape(C,g),C}transformShape(g,E){E.position&&(g.x=E.position.x,g.y=E.position.y),E.size&&(g.width=E.size.width,g.height=E.size.height)}applyLayout(g,E){const C=E.getById(g.id);if(C&&this.getBasicType(C)==="node"&&this.applyShape(C,g,E),g.children)for(const T of g.children)this.applyLayout(T,E);if(g.edges)for(const T of g.edges){const M=E.getById(T.id);M&&this.getBasicType(M)==="edge"&&this.applyEdge(M,T,E)}if(g.ports)for(const T of g.ports){const M=E.getById(T.id);M&&this.getBasicType(M)==="port"&&this.applyShape(M,T,E)}}applyShape(g,E,C){if(E.x!==void 0&&E.y!==void 0&&(g.position={x:E.x,y:E.y}),E.width!==void 0&&E.height!==void 0&&(g.size={width:E.width,height:E.height}),E.labels)for(const T of E.labels){const M=T.id&&C.getById(T.id);M&&this.applyShape(M,T,C)}}applyEdge(g,E,C){const T=[];if(E.sections&&E.sections.length>0){const M=E.sections[0];M.startPoint&&T.push(M.startPoint),M.bendPoints&&T.push(...M.bendPoints),M.endPoint&&T.push(M.endPoint)}else b(E)&&(E.sourcePoint&&T.push(E.sourcePoint),E.bendPoints&&T.push(...E.bendPoints),E.targetPoint&&T.push(E.targetPoint));g.routingPoints=T,E.labels&&E.labels.forEach(M=>{const _=M.id&&C.getById(M.id);_&&this.applyShape(_,M,C)})}}P3.ElkLayoutEngine=h;function b(P){return typeof P.source=="string"&&typeof P.target=="string"}class w{apply(g,E){switch(this.getBasicType(g)){case"node":return this.filterNode(g,E);case"edge":return this.filterEdge(g,E);case"label":return this.filterLabel(g,E);case"port":return this.filterPort(g,E);case"compartment":return this.filterCompartment(g,E);default:return!0}}getBasicType(g){return(0,f.getBasicType)(g)}filterNode(g,E){return!0}filterEdge(g,E){const C=E.getById(g.sourceId);if(!C)return!1;const T=this.getBasicType(C);if(T==="node"&&!this.filterNode(C,E)||T==="port"&&!this.filterPort(C,E))return!1;const M=E.getById(g.targetId);if(!M)return!1;const _=this.getBasicType(M);return!(_==="node"&&!this.filterNode(M,E)||_==="port"&&!this.filterPort(M,E))}filterLabel(g,E){return!0}filterPort(g,E){return!0}filterCompartment(g,E){return!0}}P3.DefaultElementFilter=w;class m{apply(g,E){switch(this.getBasicType(g)){case"graph":return this.graphOptions(g,E);case"node":return this.nodeOptions(g,E);case"edge":return this.edgeOptions(g,E);case"label":return this.labelOptions(g,E);case"port":return this.portOptions(g,E);default:return}}getBasicType(g){return(0,f.getBasicType)(g)}graphOptions(g,E){}nodeOptions(g,E){}edgeOptions(g,E){}labelOptions(g,E){}portOptions(g,E){}}return P3.DefaultLayoutConfigurator=m,P3}var j0t;function eWt(){return j0t||(j0t=1,(function(f){Object.defineProperty(f,"__esModule",{value:!0}),f.elkLayoutModule=f.ILayoutPostprocessor=f.ILayoutPreprocessor=f.DefaultLayoutConfigurator=f.ILayoutConfigurator=f.DefaultElementFilter=f.IElementFilter=f.ElkFactory=f.ElkLayoutEngine=void 0;const h=Zt(),b=ZUt();f.ElkLayoutEngine=(0,h.injectable)()(b.ElkLayoutEngine),f.ElkFactory=Symbol("ElkFactory"),f.IElementFilter=Symbol("IElementFilter"),f.DefaultElementFilter=(0,h.injectable)()(b.DefaultElementFilter),f.ILayoutConfigurator=Symbol("ILayoutConfigurator"),f.DefaultLayoutConfigurator=(0,h.injectable)()(b.DefaultLayoutConfigurator),f.ILayoutPreprocessor=Symbol("ILayoutPreprocessor"),f.ILayoutPostprocessor=Symbol("ILayoutPostprocessor"),f.elkLayoutModule=new h.ContainerModule(w=>{w(f.ElkLayoutEngine).toDynamicValue(m=>{const P=m.container.get(f.ElkFactory),g=m.container.get(f.IElementFilter),E=m.container.get(f.ILayoutConfigurator),C=m.container.isBound(f.ILayoutPreprocessor)?m.container.get(f.ILayoutPreprocessor):void 0,T=m.container.isBound(f.ILayoutPostprocessor)?m.container.get(f.ILayoutPostprocessor):void 0;return new f.ElkLayoutEngine(P,g,E,C,T)}).inSingletonScope(),w(f.IElementFilter).to(f.DefaultElementFilter),w(f.ILayoutConfigurator).to(f.DefaultLayoutConfigurator)})})(Eve)),Eve}var A0t;function tWt(){return A0t||(A0t=1,(function(f){var h=TM&&TM.__createBinding||(Object.create?(function(w,m,P,g){g===void 0&&(g=P);var E=Object.getOwnPropertyDescriptor(m,P);(!E||("get"in E?!m.__esModule:E.writable||E.configurable))&&(E={enumerable:!0,get:function(){return m[P]}}),Object.defineProperty(w,g,E)}):(function(w,m,P,g){g===void 0&&(g=P),w[g]=m[P]})),b=TM&&TM.__exportStar||function(w,m){for(var P in w)P!=="default"&&!Object.prototype.hasOwnProperty.call(m,P)&&h(m,w,P)};Object.defineProperty(f,"__esModule",{value:!0}),b(eWt(),f)})(TM)),TM}var R3=tWt(),Xd=(f=>(f.LINES="Lines",f.WRAPPING="Wrapping Lines",f.CIRCLES="Circles",f))(Xd||{});function PX(f){const h=f.value||f.placeholder,{width:b}=uN(h,window.getComputedStyle(f).font),w=f.classList.contains("label-type-name")?2:8,m=b+w;f.style.width=m+"px"}const O0t=new Map;function uN(f,h="11pt sans-serif"){if(!f||f.length===0)return{width:20,height:20};h==""&&(h="11pt sans-serif");let b=O0t.get(h);if(!b){const E=document.createElement("canvas").getContext("2d");if(!E)throw new Error("Could not create canvas context used to measure text width");E.font=h,b={context:E,cache:new Map},O0t.set(h,b)}const{context:w,cache:m}=b,P=m.get(f);if(P)return P;{const g=w.measureText(f),E={width:Math.ceil(g.width),height:Math.ceil(g.actualBoundingBoxAscent+g.actualBoundingBoxDescent)};return m.set(f,E),E}}var nWt=Object.getOwnPropertyDescriptor,nmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?nWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},DL=(f,h)=>(b,w)=>h(b,w,f);class x3 extends R3.DefaultLayoutConfigurator{static _method=Xd.LINES;set method(h){x3._method=h}get method(){return x3._method}graphOptions(){return{[Xd.LINES]:{"org.eclipse.elk.algorithm":"org.eclipse.elk.layered","org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers":"30.0","org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers":"20.0","org.eclipse.elk.port.borderOffset":"14.0","org.eclipse.elk.omitNodeMicroLayout":"true","org.eclipse.elk.layered.nodePlacement.favorStraightEdges":"false"},[Xd.WRAPPING]:{"org.eclipse.elk.algorithm":"org.eclipse.elk.layered","org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers":"10.0","org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers":"5.0","org.eclipse.elk.edgeRouting":"ORTHOGONAL","org.eclipse.elk.layered.layering.strategy":"COFFMAN_GRAHAM","org.eclipse.elk.layered.compaction.postCompaction.strategy":"LEFT_RIGHT_CONSTRAINT_LOCKING","org.eclipse.elk.layered.wrapping.strategy":"MULTI_EDGE","org.eclipse.elk.layered.wrapping.correctionFactor":"2.0","org.eclipse.elk.omitNodeMicroLayout":"true","org.eclipse.elk.port.borderOffset":"14.0"},[Xd.CIRCLES]:{"org.eclipse.elk.algorithm":"org.eclipse.elk.stress","org.eclipse.elk.force.repulsion":"5.0","org.eclipse.elk.force.iterations":"100","org.eclipse.elk.force.repulsivePower":"1","org.eclipse.elk.omitNodeMicroLayout":"true"}}[this.method]}}const iWt=()=>new QUt({algorithms:["layered","stress"]});let $X=class extends R3.ElkLayoutEngine{constructor(f,h,b,w){super(f,h,b,void 0,w),this.configurator=b,this.postprocessor=w}transformShape(f,h){h.position&&(f.x=h.position.x,f.y=h.position.y),"bounds"in h&&(f.width=h.bounds.width??h.size.width,f.height=h.bounds.height??h.size.height)}transformEdge(f,h){const b=super.transformEdge(f,h);return b.sections=[],b}transformLabel(f,h){const b=super.transformLabel(f,h);if(this.configurator.method===Xd.WRAPPING)return b;const w=uN(f.text??"");return b.height=w.height,b.width=w.width,b}applyShape(f,h,b){if(this.getBasicType(f)==="port"&&f instanceof de.SChildElementImpl&&de.isBoundsAware(f.parent)){const P=f.parent;h.x!==void 0&&h.width!==void 0&&h.y!==void 0&&h.height!==void 0&&(this.configurator.method===Xd.CIRCLES?(h.x<=0&&(h.x-=h.width/2),h.y<=0&&(h.y-=h.height/2),h.x>=P.bounds.width&&(h.x-=h.width/2),h.y>=P.bounds.height&&(h.y-=h.height/2)):(h.x<=0&&(h.x+=h.width/2),h.y<=0&&(h.y+=h.height/2),h.x>=P.bounds.width&&(h.x-=h.width/2),h.y>=P.bounds.height&&(h.y-=h.height/2)))}super.applyShape(f,h,b);const w=b.getParent(f.id),m=w?this.getBasicType(w):"unknown";this.getBasicType(f)==="label"&&m=="edge"&&(f.size={width:-1,height:-1})}applyEdge(f,h,b){this.configurator.method===Xd.CIRCLES&&(h.sections=[]),super.applyEdge(f,h,b)}};$X=nmt([vr(),DL(0,Et(R3.ElkFactory)),DL(1,Et(R3.IElementFilter)),DL(2,Et(x3)),DL(3,Et(R3.ILayoutPostprocessor))],$X);let Lve=class{constructor(f){this.configurator=f}portToNodes=new Map;connectedPorts=new Map;nodeSquares=new Map;postprocess(f){if(this.configurator.method===Xd.CIRCLES&&(this.connectedPorts=new Map,!(!f.edges||!f.children))){for(const h of f.edges)for(const b of h.sources){this.connectedPorts.has(b)||this.connectedPorts.set(b,[]);for(const w of h.targets)this.connectedPorts.has(w)||this.connectedPorts.set(w,[]),this.connectedPorts.get(b)?.push(w),this.connectedPorts.get(w)?.push(b)}this.portToNodes=new Map,this.nodeSquares=new Map;for(const h of f.children)if(h.ports){for(const b of h.ports)this.portToNodes.set(b.id,h.id);this.nodeSquares.set(h.id,this.getNodeSquare(h))}for(const[h,b]of this.connectedPorts){if(b.length===0)continue;const w=b.map(x=>{const R=this.getLine(h,x),H=this.portToNodes.get(h);if(!H)return{x:0,y:0};const F=this.nodeSquares.get(H);return F?this.getIntersection(F,R):{x:0,y:0}}),m={x:w.reduce((x,R)=>x+R.x,0)/w.length,y:w.reduce((x,R)=>x+R.y,0)/w.length},P=this.portToNodes.get(h);if(!P)continue;const g=this.nodeSquares.get(P);if(!g)continue;const E={x:m.x,y:m.y},C={x1:g.x,y1:g.y,x2:g.x+g.width,y2:g.y},T={x1:g.x,y1:g.y+g.height,x2:g.x+g.width,y2:g.y+g.height},M={x1:g.x,y1:g.y,x2:g.x,y2:g.y+g.height},_={x1:g.x+g.width,y1:g.y,x2:g.x+g.width,y2:g.y+g.height},I=[{distance:Math.abs(m.y-g.y),dimension:"y",edge:C},{distance:Math.abs(m.y-(g.y+g.height)),dimension:"y",edge:T},{distance:Math.abs(m.x-g.x),dimension:"x",edge:M},{distance:Math.abs(m.x-(g.x+g.width)),dimension:"x",edge:_}];I.sort((x,R)=>x.distance-R.distance);const O=I[0].edge;I[0].dimension==="y"?(E.x=D0t(m.x,O.x1,O.x2),E.y=O.y1):(E.x=O.x1,E.y=D0t(m.y,O.y1,O.y2));const j=f.children.find(x=>x.id===P);if(!j)continue;const k=j.ports?.find(x=>x.id===h);k&&(k.x=E.x-(j.x??0),k.y=E.y-(j.y??0))}}}getNodeSquare(f){return{x:f.x??0,y:f.y??0,width:f.width??0,height:f.height??0}}getCenter(f){return{x:f.x+f.width/2,y:f.y+f.height/2}}getLine(f,h){const b=this.portToNodes.get(f),w=this.portToNodes.get(h);if(!b||!w)return{x1:0,y1:0,x2:0,y2:0};const m=this.nodeSquares.get(b),P=this.nodeSquares.get(w),g=this.getCenter(m),E=this.getCenter(P);return{x1:g.x,y1:g.y,x2:E.x,y2:E.y}}getIntersection(f,h){const b={x:f.x,y:f.y},w={x:f.x+f.width,y:f.y},m={x:f.x,y:f.y+f.height},P={x:f.x+f.width,y:f.y+f.height};return[this.getLineIntersection(h,{x1:b.x,y1:b.y,x2:w.x,y2:w.y}),this.getLineIntersection(h,{x1:w.x,y1:w.y,x2:P.x,y2:P.y}),this.getLineIntersection(h,{x1:P.x,y1:P.y,x2:m.x,y2:m.y}),this.getLineIntersection(h,{x1:m.x,y1:m.y,x2:b.x,y2:b.y})].filter(C=>C.x>=Math.min(h.x1,h.x2)&&C.x<=Math.max(h.x1,h.x2)&&C.y>=Math.min(h.y1,h.y2)&&C.y<=Math.max(h.y1,h.y2))[0]??{x:0,y:0}}getLineIntersection(f,h){const b=f.x1,w=f.y1,m=f.x2,P=f.y2,g=h.x1,E=h.y1,C=h.x2,T=h.y2,M=(b-m)*(E-T)-(w-P)*(g-C);if(M===0)return{x:0,y:0};const _=((b*P-w*m)*(g-C)-(b-m)*(g*T-E*C))/M,I=((b*P-w*m)*(E-T)-(w-P)*(g*T-E*C))/M;return{x:_,y:I}}};Lve=nmt([vr(),DL(0,Et(x3))],Lve);function D0t(f,h,b){const w=Math.min(h,b),m=Math.max(h,b);return Math.max(w,Math.min(m,f))}class Jd extends de.AbstractUIExtension{static ID="loading-indicator";loadingIndicatorWrapper;loadingIndicatorText;waitTimeout;id(){return Jd.ID}containerClass(){return Jd.ID}initializeContents(h){this.loadingIndicatorWrapper=document.createElement("div"),this.loadingIndicatorWrapper.id="loading-indicator-wrapper",this.loadingIndicatorWrapper.style.display="none";const b=document.createElement("div");b.id="turning-circle",this.loadingIndicatorWrapper.appendChild(b),this.loadingIndicatorText=document.createElement("div"),this.loadingIndicatorText.id="loading-indicator-text",this.loadingIndicatorWrapper.appendChild(this.loadingIndicatorText),h.appendChild(this.loadingIndicatorWrapper)}showIndicator(h){this.waitTimeout=setTimeout(()=>{this.waitTimeout&&this.loadingIndicatorWrapper&&(this.loadingIndicatorWrapper.style.display="flex",this.loadingIndicatorText&&(this.loadingIndicatorText.innerText=h||"Loading..."),this.loadingIndicatorWrapper.focus(),this.waitTimeout=void 0)},200)}hideIndicator(){this.waitTimeout&&(clearTimeout(this.waitTimeout),this.waitTimeout=void 0),this.loadingIndicatorWrapper&&(this.loadingIndicatorWrapper.style.display="none")}}var rWt=Object.getOwnPropertyDescriptor,oWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?rWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},MX=(f,h)=>(b,w)=>h(b,w,f),D3;(f=>{f.KIND="layoutModel";function h(b){return{kind:f.KIND,layoutMethod:b}}f.create=h})(D3||(D3={}));let Nve=class extends de.Command{constructor(f,h,b,w){super(),this.action=f,this.layoutEngine=h,this.configurator=b,this.loadingIndicator=w}static KIND=D3.KIND;oldRoot;newModel;async execute(f){this.loadingIndicator.showIndicator("Layouting..."),this.oldRoot=f.root,this.configurator.method=this.action.layoutMethod;const h=await this.layoutEngine.layout(f.root);return this.newModel=h,this.loadingIndicator.hideIndicator(),this.newModel}undo(f){return this.oldRoot??f.root}redo(f){return this.newModel??f.root}};Nve=oWt([MX(0,Et(de.TYPES.Action)),MX(1,Et(de.TYPES.IModelLayoutEngine)),MX(2,Et(x3)),MX(3,Et(Jd))],Nve);class Ey extends de.Command{constructor(h,b,w,m,P,g,E){super(),this.logger=h,this.labelTypeRegistry=b,this.constraintRegistry=w,this.editorModeController=m,this.actionDispatcher=P,this.fileName=g,this.loadingIndicator=E}blockUntil=Ey.loadBlockUntilFn;static loadBlockUntilFn=h=>h.kind==="initializeCanvasBounds";oldRoot;newRoot;oldLabelTypes;oldEditorMode;oldFileName;oldConstrains;file;async execute(h){if(this.loadingIndicator.showIndicator("Loading model..."),this.oldRoot=h.root,this.file=await this.getFile(h).catch(()=>{}),!this.file)return this.loadingIndicator.hide(),this.actionDispatcher.dispatch(de.InitializeCanvasBoundsAction.create(this.oldRoot.canvasBounds)),this.oldRoot;try{const b=Ey.preprocessModelSchema(this.file.content.model);this.newRoot=h.modelFactory.createRoot(b),this.logger.info(this,"Model loaded successfully"),this.oldLabelTypes=this.labelTypeRegistry.getLabelTypes();const w=this.file.content.labelTypes;this.labelTypeRegistry.clearLabelTypes(),w?(this.labelTypeRegistry.setLabelTypes(w),this.logger.info(this,"Label types loaded successfully")):this.labelTypeRegistry.clearLabelTypes(),this.oldEditorMode=this.editorModeController.get();const m=this.file.content.mode;m?this.editorModeController.set(m):this.editorModeController.setDefault(),this.logger.info(this,"Editor mode loaded successfully"),this.oldConstrains=this.constraintRegistry.getConstraintList();const P=this.file.content.constraints;return P?this.constraintRegistry.setConstraintsFromArray(P):this.constraintRegistry.clearConstraints(),this.postLoadActions(),this.oldFileName=this.fileName.getName(),this.fileName.setName(this.file.fileName),this.loadingIndicator.hide(),this.newRoot}catch(b){return this.logger.error(this,"Error loading model",b),this.newRoot=this.oldRoot,this.actionDispatcher.dispatch(de.InitializeCanvasBoundsAction.create(this.oldRoot.canvasBounds)),this.loadingIndicator.hide(),this.oldRoot}}undo(h){return this.loadingIndicator.showIndicator("Reverting model load..."),this.oldLabelTypes?this.labelTypeRegistry.setLabelTypes(this.oldLabelTypes):this.labelTypeRegistry.clearLabelTypes(),this.oldEditorMode?this.editorModeController.set(this.oldEditorMode):this.editorModeController.setDefault(),this.oldEditorMode&&this.editorModeController.set(this.oldEditorMode),this.oldConstrains&&this.constraintRegistry.setConstraintsFromArray(this.oldConstrains),this.fileName.setName(this.oldFileName??"diagram"),this.loadingIndicator.hide(),this.oldRoot??h.modelFactory.createRoot(de.EMPTY_ROOT)}redo(h){this.loadingIndicator.showIndicator("Re-applying model load...");const b=this.file?.content.labelTypes;this.labelTypeRegistry.clearLabelTypes(),b?(this.labelTypeRegistry.setLabelTypes(b),this.logger.info(this,"Label types loaded successfully")):this.labelTypeRegistry.clearLabelTypes();const w=this.file?.content.mode;w?this.editorModeController.set(w):this.editorModeController.setDefault(),this.logger.info(this,"Editor mode loaded successfully");const m=this.file?.content.constraints;return m?this.constraintRegistry.setConstraintsFromArray(m):this.constraintRegistry.clearConstraints(),this.fileName.setName(this.file?.fileName??"diagram"),this.loadingIndicator.hide(),this.newRoot??this.oldRoot??h.modelFactory.createRoot(de.EMPTY_ROOT)}static preprocessModelSchema(h){return"features"in h&&delete h.features,"canvasBounds"in h&&delete h.canvasBounds,h.children&&h.children.forEach(b=>this.preprocessModelSchema(b)),h}async postLoadActions(){return this.newRoot?(this.newRoot.children.filter(b=>b instanceof de.SNodeImpl).some(b=>de.isLocateable(b)&&b.position.x===0&&b.position.y===0)&&await this.actionDispatcher.dispatch(D3.create(Xd.LINES)),this.actionDispatcher.dispatch(xL.create(this.newRoot,!1))):void 0}}const cWt={canvasBounds:{x:0,y:0,width:1278,height:1324},scroll:{x:181.68489464915504,y:-12.838536201820945},zoom:6.057478948161569,position:{x:0,y:0},size:{width:-1,height:-1},features:{},type:"graph",id:"root",children:[{position:{x:84,y:54},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"User",labels:[{labelTypeId:"gvia09",labelTypeValueId:"g10hr"}],ports:[{position:{x:58.5,y:7},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"nhcrad",type:"port:dfd-input",children:[]},{position:{x:31,y:38.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set Sensitivity.Personal",features:{},id:"4wbyft",type:"port:dfd-output",children:[]},{position:{x:58.5,y:25.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set Sensitivity.Public",features:{},id:"wksxi8",type:"port:dfd-output",children:[]}],features:{},id:"7oii5l",type:"node:input-output",children:[]},{position:{x:249,y:67},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"view",labels:[],ports:[{position:{x:-3.5,y:13},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"ti4ri7",type:"port:dfd-input",children:[]},{position:{x:58.5,y:13},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward request",features:{},id:"bsqjm",type:"port:dfd-output",children:[]}],features:{},id:"0bh7yh",type:"node:function",children:[]},{position:{x:249,y:22},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"display",labels:[],ports:[{position:{x:58.5,y:15},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"0hfzu",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:9},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward items",features:{},id:"y1p7qq",type:"port:dfd-output",children:[]}],features:{},id:"4myuyr",type:"node:function",children:[]},{position:{x:364,y:152},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"encrypt",labels:[],ports:[{position:{x:-3.5,y:15.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"kqjy4g",type:"port:dfd-input",children:[]},{position:{x:29,y:-3.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward data -set Encryption.Encrypted`,features:{},id:"3wntc",type:"port:dfd-output",children:[]}],features:{},id:"3n988k",type:"node:function",children:[]},{position:{x:104,y:157},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"buy",labels:[],ports:[{position:{x:19,y:-3.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"2331e8",type:"port:dfd-input",children:[]},{position:{x:58.5,y:10.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward data",features:{},id:"vnkg73",type:"port:dfd-output",children:[]}],features:{},id:"z9v1jp",type:"node:function",children:[]},{position:{x:233.5,y:157},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"process",labels:[],ports:[{position:{x:-3.5,y:10.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"xyepdb",type:"port:dfd-input",children:[]},{position:{x:59.5,y:10.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"forward data",features:{},id:"eedb56",type:"port:dfd-output",children:[]}],features:{},id:"js61f",type:"node:function",children:[]},{position:{x:422.5,y:59},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Database",labels:[{labelTypeId:"gvia09",labelTypeValueId:"5hnugm"}],ports:[{position:{x:-3.5,y:23},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"scljwi",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:.5},size:{width:-1,height:-1},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set Sensitivity.Public",features:{},id:"1j7bn5",type:"port:dfd-output",children:[]}],features:{},id:"8j2r1g",type:"node:storage",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"vq8g3l",type:"edge:arrow",sourceId:"4wbyft",targetId:"2331e8",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"xrzc19",type:"edge:arrow",sourceId:"vnkg73",targetId:"xyepdb",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"ufflto",type:"edge:arrow",sourceId:"eedb56",targetId:"kqjy4g",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"ojjvtp",type:"edge:arrow",sourceId:"3wntc",targetId:"scljwi",text:"data",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"c9n88l",type:"edge:arrow",sourceId:"bsqjm",targetId:"scljwi",text:"request",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"uflsc",type:"edge:arrow",sourceId:"wksxi8",targetId:"ti4ri7",text:"request",routerKind:"polyline",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"n81f3b",type:"edge:arrow",sourceId:"1j7bn5",targetId:"0hfzu",text:"items",children:[]},{routingPoints:[],selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"hi397b",type:"edge:arrow",sourceId:"y1p7qq",targetId:"nhcrad",text:"items",children:[]}]},sWt=[{id:"4h3wzk",name:"Sensitivity",values:[{id:"zzvphn",text:"Personal"},{id:"veaan9",text:"Public"}]},{id:"gvia09",name:"Location",values:[{id:"g10hr",text:"EU"},{id:"5hnugm",text:"nonEU"}]},{id:"84rllz",name:"Encryption",values:[{id:"2r6xe6",text:"Encrypted"}]}],uWt=[{name:"Test",constraint:"data Sensitivity.Personal neverFlows vertex Location.nonEU"}],aWt="edit",lWt=1,fWt={model:cWt,labelTypes:sWt,constraints:uWt,mode:aWt,version:lWt},hWt={canvasBounds:{x:0,y:0,width:2333.75,height:1168.75},scroll:{x:-105.89197860962565,y:-63},zoom:3.0837730870712403,position:{x:0,y:0},size:{width:-1,height:-1},features:{},type:"graph",id:"root",children:[{position:{x:222,y:75},size:{width:71,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Mother",labels:[{labelTypeId:"vljvh",labelTypeValueId:"z2vuaa"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"6bvsh7",type:"port:dfd-input",children:[]},{position:{x:67.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:"set TraversedNodes.mother",features:{},id:"pzv6hg",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"3lqxlo",type:"node:input-output",children:[]},{position:{x:226.5,y:199},size:{width:62,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Dad",labels:[{labelTypeId:"vljvh",labelTypeValueId:"oqq2r"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"rva68j",type:"port:dfd-input",children:[]},{position:{x:58.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture -set TraversedNodes.dad`,features:{},id:"f6wz2q",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"wocqg",type:"node:input-output",children:[]},{position:{x:211,y:137},size:{width:63,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Aunt",labels:[{labelTypeId:"vljvh",labelTypeValueId:"vb0xw"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"j6a32",type:"port:dfd-input",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"mhu9ma",type:"node:input-output",children:[]},{position:{x:570,y:99.41666666666666},size:{width:125,height:78},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Family Pictures",labels:[{labelTypeId:"9jr84l",labelTypeValueId:"01mazd"},{labelTypeId:"6drw8l",labelTypeValueId:"dhfohg"},{labelTypeId:"6drw8l",labelTypeValueId:"qsj85"},{labelTypeId:"6drw8l",labelTypeValueId:"7p1lcu"}],ports:[{position:{x:-3.5,y:49.66666666666667},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"efr68k",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:21.333333333333336},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture -set TraversedNodes.pictureStorage -set Read.Aunt`,features:{},id:"l7yqhg",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"050esr",type:"node:storage",children:[]},{position:{x:211,y:12},size:{width:100,height:42},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Indexing Bot",labels:[{labelTypeId:"vljvh",labelTypeValueId:"1cnzie"}],ports:[{position:{x:-3.5,y:17.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"h5c7l",type:"port:dfd-input",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"fagty",type:"node:input-output",children:[]},{position:{x:12,y:78},size:{width:105,height:36},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Read Pictures",labels:[],ports:[{position:{x:101.5,y:7.333333333333332},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"hmhlg5",type:"port:dfd-input",children:[]},{position:{x:101.5,y:14.499999999999998},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture -set TraversedNodes.readPicture`,features:{},id:"9fv3si",type:"port:dfd-output",children:[]},{position:{x:101.5,y:21.666666666666664},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture -set TraversedNodes.readPicture`,features:{},id:"b4g3ml",type:"port:dfd-output",children:[]},{position:{x:101.5,y:28.83333333333333},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture -set TraversedNodes.readPicture`,features:{},id:"tj9ox",type:"port:dfd-output",children:[]},{position:{x:101.5,y:.16666666666666607},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward picture -set TraversedNodes.readPicture`,features:{},id:"j4hq8ov",type:"port:dfd-output",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"2ksl0i",type:"node:function",children:[]},{routingPoints:[{x:563,y:124.25},{x:543,y:124.25},{x:543,y:64},{x:154,y:64},{x:154,y:88.83333333333333},{x:124,y:88.83333333333333}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"xw3tf",type:"edge:arrow",sourceId:"l7yqhg",targetId:"hmhlg5",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:96},{x:215,y:96}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"wr13pw",type:"edge:arrow",sourceId:"9fv3si",targetId:"6bvsh7",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:103.16666666666666},{x:154,y:103.16666666666666},{x:154,y:158},{x:204,y:158}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"osynnp",type:"edge:arrow",sourceId:"b4g3ml",targetId:"j6a32",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:110.33333333333333},{x:144,y:110.33333333333333},{x:144,y:220},{x:219.5,y:220}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"ymvkcs",type:"edge:arrow",sourceId:"tj9ox",targetId:"rva68j",labels:null,ports:null,children:[]},{routingPoints:[{x:124,y:81.66666666666667},{x:144,y:81.66666666666667},{x:144,y:33},{x:204,y:33}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"ryd2n",type:"edge:arrow",sourceId:"j4hq8ov",targetId:"h5c7l",labels:null,ports:null,children:[]},{position:{x:388,y:140},size:{width:98,height:36},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,text:"Add Pictures",labels:[],ports:[{position:{x:94.5,y:14.5},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,behavior:`forward mother_picture -set TraversedNodes.addPicture`,features:{},id:"i75rub",type:"port:dfd-output",children:[]},{position:{x:-3.5,y:21.666666666666668},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"q9uoh2",type:"port:dfd-input",children:[]},{position:{x:-3.5,y:7.333333333333334},size:{width:7,height:7},strokeWidth:0,selected:!1,hoverFeedback:!1,opacity:1,features:{},id:"y7wy2c",type:"port:dfd-input",children:[]}],hideLabels:!1,minimumWidth:50,features:{},id:"d2erj",type:"node:function",children:[]},{routingPoints:[{x:493,y:158},{x:543,y:158},{x:543,y:152.58333333333331},{x:563,y:152.58333333333331}],selected:!1,hoverFeedback:!1,opacity:1,text:"picture",features:{},id:"c9na5t",type:"edge:arrow",sourceId:"i75rub",targetId:"efr68k",labels:null,ports:null,children:[]},{routingPoints:[{x:295.5,y:220},{x:361,y:220},{x:361,y:165.16666666666666},{x:381,y:165.16666666666666}],selected:!1,hoverFeedback:!1,opacity:1,text:"dad_picture",features:{},id:"pd8t5y",type:"edge:arrow",sourceId:"f6wz2q",targetId:"q9uoh2",labels:null,ports:null,children:[]},{routingPoints:[{x:300,y:96},{x:361,y:96},{x:361,y:150.83333333333334},{x:381,y:150.83333333333334}],selected:!1,hoverFeedback:!1,opacity:1,text:"mother_picture",features:{},id:"ekx5wq",type:"edge:arrow",sourceId:"pzv6hg",targetId:"y7wy2c",labels:null,ports:null,children:[]}]},dWt=[{id:"vljvh",name:"Identity",values:[{id:"z2vuaa",text:"Mother"},{id:"oqq2r",text:"Dad"},{id:"vb0xw",text:"Aunt"},{id:"1cnzie",text:"IndexingBot"}]},{id:"6drw8l",name:"Read",values:[{id:"7p1lcu",text:"Mother"},{id:"qsj85",text:"Dad"},{id:"dhfohg",text:"Aunt"},{id:"e8kf57",text:"IndexingBot"}]},{id:"9jr84l",name:"Owner",values:[{id:"01mazd",text:"Mother"}]},{id:"4qmig",name:"TraversedNodes",values:[{id:"6p4cbg",text:"addPicture"},{id:"igu1hs",text:"pictureStorage"},{id:"yqu7nt",text:"readPicture"},{id:"huqgc6",text:"mother"},{id:"as8h9i",text:"dad"},{id:"0noedq",text:"aunt"},{id:"33ryia",text:"indexingBot"}]}],gWt=[{name:"Isolation",constraint:"data !Read.IndexingBot neverFlows vertex Identity.IndexingBot"}],bWt="edit",pWt=1,wWt={model:hWt,labelTypes:dWt,constraints:gWt,mode:bWt,version:pWt};function L3(){return Math.random().toString(36).substring(7)}class Zd{labelTypes=[];updateCallbacks=[];registerLabelType(h){const b={id:L3(),name:h,values:[]};return this.labelTypes.push(b),this._registerLabelTypeValue(b.id,"Value",!0),this.labelTypeChanged(),b}unregisterLabelType(h){this.labelTypes=this.labelTypes.filter(b=>b.id!==h),this.labelTypeChanged()}updateLabelTypeName(h,b){const w=this.labelTypes.find(m=>m.id===h);if(!w)throw`No Label Type with id ${h} found`;w.name=b,this.labelTypeChanged()}setLabelTypes(h){this.labelTypes=h,this.labelTypeChanged()}registerLabelTypeValue(h,b){return this._registerLabelTypeValue(h,b)}_registerLabelTypeValue(h,b,w=!1){const m={id:L3(),text:b},P=this.labelTypes.find(g=>g.id===h);if(!P)throw`No Label Type with id ${h} found`;return P.values.push(m),w||this.labelTypeChanged(),m}unregisterLabelTypeValue(h,b){const w=this.labelTypes.find(m=>m.id===h);if(!w)throw`No Label Type with id ${h} found`;w.values=w.values.filter(m=>m.id!==b),this.labelTypeChanged()}updateLabelTypeValueText(h,b,w){const m=this.labelTypes.find(g=>g.id===h);if(!m)throw`No Label Type with id ${h} found`;const P=m.values.find(g=>g.id===b);if(!P)throw`Label Type ${m.name} has no value with id ${b}`;P.text=w,this.labelTypeChanged()}clearLabelTypes(){this.labelTypes=[],this.updateCallbacks.forEach(h=>h())}labelTypeChanged(){this.updateCallbacks.forEach(h=>h())}onUpdate(h){this.updateCallbacks.push(h)}getLabelTypes(){return this.labelTypes}getLabelType(h){return this.labelTypes.find(b=>b.id===h)}}class Ty{name="diagram";getName(){return this.name}setName(h){const b=h.lastIndexOf(".");this.name=b===-1?h:h.substring(0,b),document.title=this.name+".json - DFD WebEditor"}}const sc={Theme:Symbol("Theme"),Mode:Symbol("EditorMode"),HideEdgeNames:Symbol("HideEdgeNames"),SimplifyNodeNames:Symbol("SimplifyNodeNames"),ShownLabels:Symbol("ShownLabels")};var mWt=Object.getOwnPropertyDescriptor,vWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?mWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let Qd=class{constraints=[];updateCallbacks=[];selectedConstraints=this.constraints.map(f=>f.name);setConstraints(f){this.constraints=this.splitIntoConstraintTexts(f).map(h=>this.mapToConstraint(h)),this.constraintListChanged()}setConstraintsFromArray(f){this.constraints=f.map(h=>({name:h.name,constraint:h.constraint})),this.constraintListChanged()}setSelectedConstraints(f){this.selectedConstraints=f}getSelectedConstraints(){return this.selectedConstraints}clearConstraints(){this.constraints=[],this.constraintListChanged()}constraintListChanged(){this.updateCallbacks.forEach(f=>f())}onUpdate(f){this.updateCallbacks.push(f)}getConstraintsAsText(){return this.constraints.map(f=>`- ${f.name}: ${f.constraint}`).join(` -`)}getConstraintList(){return this.constraints}selectedContainsAllConstraints(){return this.getConstraintList().map(f=>f.name).every(f=>this.getSelectedConstraints().includes(f))}setAllConstraintsAsSelected(){this.selectedConstraints=this.constraints.map(f=>f.name)}splitIntoConstraintTexts(f){const h=[];let b="";for(const w of f)w.startsWith("- ")?(b!==""&&h.push(b),b=w):b+=` -${w}`;return b!==""&&h.push(b),h}mapToConstraint(f){const h=f.split(/(\s+)/);if(h.length<3)return{name:"",constraint:""};let b=h[2];b.endsWith(":")&&(b=b.slice(0,-1));let w="";for(let m=4;m{for(var m=w>1?void 0:w?yWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},oS=(f,h)=>(b,w)=>h(b,w,f),dA;(f=>{f.KIND="loadDefaultDiagram";function h(){return{kind:f.KIND}}f.create=h})(dA||(dA={}));let Fve=class extends Ey{static KIND=dA.KIND;constructor(f,h,b,w,m,P,g,E){super(h,b,w,m,P,g,E)}async getFile(){return this.loadOnlineShop()}async loadOnlineShop(){return{fileName:"online-shop",content:fWt}}async loadDAC(){return{fileName:"dac",content:wWt}}};Fve=_Wt([oS(0,Et(de.TYPES.Action)),oS(1,Et(de.TYPES.ILogger)),oS(2,Et(Zd)),oS(3,Et(Qd)),oS(4,Et(sc.Mode)),oS(5,Et(de.TYPES.IActionDispatcher)),oS(6,Et(Ty)),oS(7,Et(Jd))],Fve);var EWt=Object.getOwnPropertyDescriptor,SWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?EWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},cS=(f,h)=>(b,w)=>h(b,w,f),KX;(f=>{f.KIND="loadUrl";function h(b){return{kind:f.KIND,url:b}}f.create=h})(KX||(KX={}));let Bve=class extends Ey{constructor(f,h,b,w,m,P,g,E){super(h,b,w,m,P,g,E),this.action=f}static KIND=KX.KIND;async getFile(){const f=await fetch(this.action.url).then(w=>w.json()),h=this.action.url.split("/"),b=h[h.length-1];return{content:f,fileName:b}}};Bve=SWt([cS(0,Et(de.TYPES.Action)),cS(1,Et(de.TYPES.ILogger)),cS(2,Et(Zd)),cS(3,Et(Qd)),cS(4,Et(sc.Mode)),cS(5,Et(de.TYPES.IActionDispatcher)),cS(6,Et(Ty)),cS(7,Et(Jd))],Bve);var PWt=Object.getOwnPropertyDescriptor,MWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?PWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},CWt=(f,h)=>(b,w)=>h(b,w,f);let $ve=class{constructor(f){this.actionDispatcher=f}run(){const h=new URLSearchParams(window.location.search).get("file");this.actionDispatcher.dispatch(h!=null?KX.create(h):dA.create())}};$ve=MWt([CWt(0,Et(de.TYPES.IActionDispatcher))],$ve);var IWt=Object.defineProperty,TWt=Object.getOwnPropertyDescriptor,jWt=(f,h,b)=>h in f?IWt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,AWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?TWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},k0t=(f,h)=>(b,w)=>h(b,w,f),OWt=(f,h,b)=>jWt(f,h+"",b);let Sy=class{constructor(f,h){this.logger=f,this.fileName=h,this.init()}webSocket;webSocketId=-1;lastRequest={};init(){this.webSocket=new WebSocket(Sy.WS_URL),this.webSocket.onopen=()=>{this.logger.log(this,"WebSocket connection established.")},this.webSocket.onclose=()=>{this.logger.log(this,"WebSocket connection closed. Reconnecting..."),this.reject(new Error("WebSocket connection closed")),this.init()},this.webSocket.onerror=()=>{this.logger.log(this,"WebSocket error occurred."),this.reject(new Error("WebSocket error occurred")),this.init()},this.webSocket.onmessage=f=>{const h=f.data;if(this.logger.log(this,"WebSocket message received: "+h),h.startsWith("Error:")&&this.reject(new Error(h)),h.startsWith("ID assigned:")){const b=h.split(":");this.webSocketId=parseInt(b[1].trim()),this.logger.log(this,"WebSocket ID assigned: "+this.webSocketId);return}this.lastRequest.resolve?(this.lastRequest.resolve(h),this.lastRequest.resolve=void 0,this.lastRequest.reject=void 0):this.logger.log(this,"No pending request to resolve.")}}reject(f){this.lastRequest.reject&&(this.lastRequest.reject(f),this.lastRequest.resolve=void 0,this.lastRequest.reject=void 0)}async requestDiagram(f){const h=await this.sendMessage(f),b=h.split(":")[0],w=h.replace(b+":","");return{fileName:b,content:JSON.parse(w)}}sendMessage(f){const h=new Promise((b,w)=>{this.lastRequest.resolve=b,this.lastRequest.reject=w});return!this.webSocket||this.webSocket.readyState!==WebSocket.OPEN?(this.reject(new Error("WebSocket is not connected")),h):(this.webSocket.send(this.webSocketId+":"+this.fileName.getName()+":"+f),h)}};OWt(Sy,"WS_URL","ws://localhost:3000/events/");Sy=AWt([vr(),k0t(0,Et(de.TYPES.ILogger)),k0t(1,Et(Ty))],Sy);var DWt=Object.getOwnPropertyDescriptor,kWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?DWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},RWt=(f,h)=>(b,w)=>h(b,w,f);let Kve=class{constructor(f){}run(){}};Kve=kWt([RWt(0,Et(Sy))],Kve);var qX;(f=>{f.KIND="hide-edge-names";function h(){return{kind:f.KIND}}f.create=h})(qX||(qX={}));class xWt extends de.Command{static KIND=qX.KIND;execute(h){return h.root}undo(h){return h.root}redo(h){return h.root}}var LWt=Object.getOwnPropertyDescriptor,imt=(f,h,b,w)=>{for(var m=w>1?void 0:w?LWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},NWt=(f,h)=>(b,w)=>h(b,w,f);class a2e extends de.SEdgeImpl{text;get editableLabel(){const h=this.children.find(b=>b.type.startsWith("label"));if(h&&de.isEditableLabel(h))return h}}let qve=class extends de.PolylineEdgeViewWithGapsOnIntersections{constructor(f){super(),this.hideEdgeNames=f}renderAdditionals(f,h,b){const w=super.renderAdditionals(f,h,b),m=h[h.length-2],P=h[h.length-1],g=de.svg("path",{"class-arrow":!0,d:"M 0.5,0 L 10,-4 L 10,4 Z",transform:`rotate(${mg.toDegrees(mg.angleOfPoint({x:m.x-P.x,y:m.y-P.y}))} ${P.x} ${P.y}) translate(${P.x} ${P.y})`,style:{opacity:f.opacity.toString()}});return w.push(g),w}renderLine(f,h){const b=h[0];let w=`M ${b.x},${b.y}`;for(let m=1;m{for(var m=w>1?void 0:w?BWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let gA=class extends rmt{getName(){const f=[];if(this.incomingEdges.forEach(h=>{if(h instanceof a2e){const b=h.editableLabel?.text;b&&f.push(b)}else return}),f.length!==0)return f.sort().join("|")}canConnect(f,h){return h==="target"}};gA=$Wt([vr()],gA);class KWt extends de.ShapeView{render(h,b){if(!this.isVisible(h,b))return;const{width:w,height:m}=h.bounds;return de.svg("g",{"class-sprotty-port":!0,"class-selected":h.selected,style:{opacity:h.opacity.toString()}},de.svg("rect",{x:"0",y:"0",width:w,height:m}),de.svg("text",{x:w/2,y:m/2,"class-port-text":!0},"I"),b.renderChildren(h))}}var omt=Object.defineProperty,qWt=Object.getOwnPropertyDescriptor,HWt=(f,h,b)=>h in f?omt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,l2e=(f,h,b,w)=>{for(var m=w>1?void 0:w?qWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&omt(h,b,m),m},zWt=(f,h)=>(b,w)=>h(b,w,f),VWt=(f,h,b)=>HWt(f,h+"",b);class x0t extends de.CenterGridSnapper{constructor(h){super(),this.gridSize=h}get gridX(){return this.gridSize}get gridY(){return this.gridSize}}let Hve=class{nodeSnapper=new x0t(5);portSnapper=new x0t(2.5);snapPort(f,h){const b=h.parent;if(b instanceof de.SPortImpl||!de.isBoundsAware(b))return f;const w=b.bounds,m=(_,I,O)=>Math.min(Math.max(_,I),O);f=this.portSnapper.snap(f,h);const P=m(f.x,0,w.width),g=m(f.y,0,w.height),C=[{x:P,y:0},{x:0,y:g},{x:w.width,y:g},{x:P,y:w.height}].reduce((_,I)=>Math.hypot(I.x-f.x,I.y-f.y){if(b instanceof de.SPortImpl){const w={...b.position},{width:m,height:P}=b.bounds;w.x+=m/2,w.y+=P/2,b.position=h.snap(w,b)}})}const cmt=Symbol("dfd-label-feature");function smt(f){return f.features?.has(cmt)??!1}var UWt=Object.defineProperty,WWt=Object.getOwnPropertyDescriptor,YWt=(f,h,b)=>h in f?UWt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,XWt=(f,h,b,w)=>{for(var m=w>1?void 0:w?WWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Sve=(f,h)=>(b,w)=>h(b,w,f),JWt=(f,h,b)=>YWt(f,h+"",b),zX;(f=>{function h(b,w){return{kind:bA.KIND,action:"add",labelAssignment:b,element:w}}f.create=h})(zX||(zX={}));var Vve;(f=>{function h(b,w){return{kind:bA.KIND,action:"remove",labelAssignment:b,element:w}}f.create=h})(Vve||(Vve={}));let bA=class{constructor(f,h,b){this.action=f,this.editorModeController=h,this.snapper=b}elements;execute(f){if(this.editorModeController.isReadOnly())return f.root;if(this.action.element)this.elements=[this.action.element];else{const h=umt(f.root.children);this.elements=h.filter(b=>de.isSelected(b)&&smt(b))}return this.action.action=="add"?this.addLabel():this.removeLabel(),f.root}undo(f){return this.editorModeController.isReadOnly()||(this.action.action=="add"?this.removeLabel():this.addLabel()),f.root}redo(f){return this.editorModeController.isReadOnly()||(this.action.action=="add"?this.addLabel():this.removeLabel()),f.root}addLabel(){this.elements?.forEach(f=>{f.labels.find(b=>b.labelTypeId===this.action.labelAssignment.labelTypeId&&b.labelTypeValueId===this.action.labelAssignment.labelTypeValueId)!==void 0||(f.labels.push(this.action.labelAssignment),f instanceof de.SNodeImpl&&zve(f,this.snapper))})}removeLabel(){this.elements?.forEach(f=>{const h=f.labels,b=h.findIndex(w=>w.labelTypeId==this.action.labelAssignment.labelTypeId&&w.labelTypeValueId==this.action.labelAssignment.labelTypeValueId);b>=0&&(h.splice(b,1),f instanceof de.SNodeImpl&&zve(f,this.snapper))})}};JWt(bA,"KIND","labelAction");bA=XWt([vr(),Sve(0,Et(de.TYPES.Action)),Sve(1,Et(sc.Mode)),Sve(2,Et(de.TYPES.ISnapper))],bA);function umt(f){const h=[];for(const b of f)h.push(b),"children"in b&&h.push(...umt(b.children));return h}var QWt=Object.defineProperty,ZWt=Object.getOwnPropertyDescriptor,eYt=(f,h,b)=>h in f?QWt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,tYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?ZWt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},L0t=(f,h)=>(b,w)=>h(b,w,f),EJ=(f,h,b)=>eYt(f,typeof h!="symbol"?h+"":h,b);let Rf=class{constructor(f,h){this.actionDispatcher=f,this.labelTypeRegistry=h}getLabel(f){const h=this.labelTypeRegistry.getLabelType(f.labelTypeId),b=h?.values.find(w=>w.id===f.labelTypeValueId);if(!(!h||!b))return{type:h,value:b}}computeLabelContent(f){const h=this.getLabel(f);if(!h)return["",0];const b=`${h.type.name}: ${h.value.text}`,w=uN(b,"5pt sans-serif").width+Rf.LABEL_TEXT_PADDING;return[b,w]}renderSingleNodeLabel(f,h,b,w){const[m,P]=this.computeLabelContent(h),g=b-P/2,E=b+P/2,C=Rf.LABEL_HEIGHT,T=C/2,M=()=>{this.actionDispatcher.dispatch(Vve.create(h,f))};return de.svg("g",{"class-node-label":!0},de.svg("rect",{x:g,y:w,width:P,height:C,rx:T,ry:T}),de.svg("text",{x:b,y:w+C/2},m),f.hoverFeedback?de.svg("g",{"class-label-delete":!0,on:{click:M}},de.svg("circle",{cx:E,cy:w,r:T*.8}),de.svg("text",{x:E,y:w},"X")):void 0)}sortLabels(f){f.sort((h,b)=>{const w=this.getLabel(h),m=this.getLabel(b);return!w||!m?0:w.type.namem.type.name?1:w.value.text.localeCompare(m.value.text)})}renderNodeLabels(f,h,b=0,w=Rf.LABEL_SPACING_HEIGHT){return this.sortLabels(f.labels),de.svg("g",null,f.labels.map((m,P)=>{const g=f.bounds.width/2,E=h+P*w;return this.renderSingleNodeLabel(f,m,g+b,E)}))}};EJ(Rf,"LABEL_HEIGHT",10);EJ(Rf,"LABEL_SPACE_BETWEEN",2);EJ(Rf,"LABEL_SPACING_HEIGHT",Rf.LABEL_HEIGHT+Rf.LABEL_SPACE_BETWEEN);EJ(Rf,"LABEL_TEXT_PADDING",8);Rf=tYt([vr(),L0t(0,Et(de.TYPES.IActionDispatcher)),L0t(1,Et(Zd))],Rf);var nYt=Object.defineProperty,iYt=(f,h,b,w)=>{for(var m=void 0,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(h,b,m)||m);return m&&nYt(h,b,m),m};const amt=class uA extends de.SNodeImpl{static DEFAULT_FEATURES=[...de.SNodeImpl.DEFAULT_FEATURES,de.withEditLabelFeature,cmt];static DEFAULT_WIDTH=50;static WIDTH_PADDING=12;static NODE_COLOR="var(--color-primary)";static HIGHLIGHTED_COLOR="var(--color-highlighted)";dfdNodeLabelRenderer;text="";color;labels=[];ports=[];hideLabels=!1;minimumWidth=uA.DEFAULT_WIDTH;annotations=[];constructor(){super()}get editableLabel(){const h=this.children.find(b=>b.type==="label:positional");if(h&&de.isEditableLabel(h))return h}calculateWidth(){if(this.hideLabels)return this.minimumWidth+uA.WIDTH_PADDING;const h=uN(this.text).width,b=this.labels.map(m=>this.dfdNodeLabelRenderer?.computeLabelContent(m)[1]??0);return Math.max(...b,h,uA.DEFAULT_WIDTH)+uA.WIDTH_PADDING}calculateHeight(){return this.labels.length>0&&!this.hideLabels?this.labelStartHeight()+this.labels.length*Rf.LABEL_SPACING_HEIGHT+Rf.LABEL_SPACE_BETWEEN:this.noLabelHeight()}get bounds(){return{x:this.position.x,y:this.position.y,width:this.calculateWidth(),height:this.calculateHeight()}}getAvailableInputs(){return this.children.filter(h=>h instanceof gA).map(h=>h).map(h=>h.getName())}getEdgeTexts(h){return this.children.filter(w=>w instanceof gA).map(w=>w).flatMap(w=>w.incomingEdges).filter(w=>w instanceof a2e).map(w=>w).filter(h).map(w=>w.editableLabel?.text??"")}geViewStyleObject(){const h={opacity:this.opacity.toString()};return h["--border"]="#FFFFFF",this.color&&(h["--color"]=this.color),h}setColor(h,b=!0){(b||this.color===uA.NODE_COLOR)&&(this.color=h)}};iYt([Et(Rf)],amt.prototype,"dfdNodeLabelRenderer");let jy=amt;var rYt=Object.getOwnPropertyDescriptor,lmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?rYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Pve=(f,h)=>(b,w)=>h(b,w,f);let VX=class{plainNames;anonymousNames;nextNummber=1;constructor(){this.plainNames=new Map,this.anonymousNames=new Map}setPlainName(f){f.editableLabel&&this.plainNames.has(f.id)&&(f.editableLabel.text=this.plainNames.get(f.id))}setAnonymousName(f){f instanceof jy&&f.editableLabel&&this.plainNames.set(f.id,f.editableLabel.text),this.anonymousNames.has(f.id)||(this.anonymousNames.set(f.id,this.nextNummber),this.nextNummber++),f.editableLabel&&(f.editableLabel.text=this.anonymousNames.get(f.id).toString())}};VX=lmt([vr()],VX);var GX;(f=>{f.KIND="simplify-node-names";function h(){return{kind:f.KIND}}f.create=h})(GX||(GX={}));let Gve=class extends de.Command{constructor(f,h,b){super(),this.nodeNameRegistry=h,this.simplifyNodeNames=b}static KIND=GX.KIND;execute(f){return this.iterate(f.root,h=>this.simplifyNodeNames.get()?this.nodeNameRegistry.setAnonymousName(h):this.nodeNameRegistry.setPlainName(h)),f.root}undo(f){return f.root}redo(f){return f.root}iterate(f,h){f instanceof jy&&h(f);for(const b of f.children)this.iterate(b,h)}};Gve=lmt([Pve(0,Et(de.TYPES.Action)),Pve(1,Et(VX)),Pve(2,Et(sc.SimplifyNodeNames))],Gve);function oYt(f,h,b){f.registerListener(()=>{f.isReadOnly()||(h.set(!1),b.set(!1))}),h.registerListener(w=>{w&&f.set("view")}),b.registerListener(w=>{w&&f.set("view")})}function cYt(f,h,b){b.registerListener(()=>f.dispatch(qX.create())),h.registerListener(()=>f.dispatch(GX.create()))}class SJ{value;listeners=[];constructor(h){this.value=h}get(){return this.value}set(h){const b=this.value;this.value=h,b!==h&&this.listeners.forEach(w=>w(h))}registerListener(h){this.listeners.push(h)}}class N0t extends SJ{constructor(h=!1){super(h)}}var DM=(f=>(f.LIGHT="Light",f.DARK="Dark",f.SYSTEM_DEFAULT="System Default",f))(DM||{});class fA extends SJ{static SYSTEM_DEFAULT=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"Dark":"Light";static LOCAL_STORAGE_KEY="dfdwebeditor:theme";constructor(){super(localStorage.getItem(fA.LOCAL_STORAGE_KEY)??fA.SYSTEM_DEFAULT)}getTheme(){const h=this.get();return h==="System Default"?fA.SYSTEM_DEFAULT:h}}const fmt=Symbol("ThemeSwitchable");function sYt(f,h){f.registerListener(()=>{F0t(f,h)}),F0t(f,h)}function F0t(f,h){const b=document.querySelector(":root"),w=document.querySelector("#sprotty"),m=f.getTheme()==="Dark"?"dark":"light";b.setAttribute("data-theme",m),w.setAttribute("data-theme",m),localStorage.setItem(fA.LOCAL_STORAGE_KEY,f.get()),h.forEach(P=>P.switchTheme(f.getTheme()))}var uYt=Object.getOwnPropertyDescriptor,aYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?uYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},rA=(f,h)=>(b,w)=>h(b,w,f);let Uve=class{constructor(f,h,b,w,m,P){this.themeManager=f,this.hideEdgeNames=h,this.simplifyNodeNames=b,this.editorModeController=w,this.switchables=m,this.actionDispatcher=P}run(){oYt(this.editorModeController,this.simplifyNodeNames,this.hideEdgeNames),sYt(this.themeManager,this.switchables),cYt(this.actionDispatcher,this.simplifyNodeNames,this.hideEdgeNames)}};Uve=aYt([rA(0,Et(sc.Theme)),rA(1,Et(sc.HideEdgeNames)),rA(2,Et(sc.SimplifyNodeNames)),rA(3,Et(sc.Mode)),rA(4,cJ(fmt)),rA(5,Et(de.TYPES.IActionDispatcher))],Uve);const lYt=new xf(f=>{f(OL).to(xve),f(OL).to($ve),f(OL).to(Kve),f(OL).to(Uve)}),fYt=new xf((f,h,b,w)=>{f(de.TYPES.ModelSource).to(de.LocalModelSource).inSingletonScope(),w(de.TYPES.ILogger).to(de.ConsoleLogger).inSingletonScope(),w(de.TYPES.LogLevel).toConstantValue(de.LogLevel.log);const m={bind:f,unbind:h,isBound:b,rebind:w};de.configureViewerOptions(m,{zoomLimits:{min:.05,max:20}})});class CX{constructor(){}static buildDeleteButton(){const h=document.createElement("button");h.classList.add("delete-button");const b=document.createElement("span");return b.classList.add("codicon","codicon-trash"),h.appendChild(b),h}static buildAddButton(h){const b=document.createElement("button");b.classList.add("add-button");const w=document.createElement("span");w.classList.add("codicon","codicon-add"),b.appendChild(w);const m=document.createElement("span");return m.innerText=h,b.appendChild(m),b}}var hYt=Object.getOwnPropertyDescriptor,dYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?hYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},gYt=(f,h)=>(b,w)=>h(b,w,f);const hmt="application/x-label-assignment";let Wve=class extends de.MouseListener{constructor(f){super(),this.logger=f}dragOver(f,h){return h.preventDefault(),[]}drop(f,h){const b=h.dataTransfer?.getData(hmt);if(!b)return[];const w=dmt(f);if(!w)return this.logger.info(this,"Aborted drop of label assignment because the target element nor the parent elements have the dfd label feature"),[];if(!(w instanceof de.SNodeImpl))return this.logger.info(this,"Aborted drop of label assignment because the target element is not a node"),[];const m=JSON.parse(b);return this.logger.info(this,"Adding label assignment to element",w,m),[zX.create(m,w),de.CommitModelAction.create()]}};Wve=dYt([vr(),gYt(0,Et(de.TYPES.ILogger))],Wve);function dmt(f){if(smt(f))return f;if("parent"in f)return dmt(f.parent)}function aN(f){if(!f||f.length==0)return[];const h=[];for(const[b,w]of f.entries()){const m=w.split(/(\s+)/);let P=0;for(let g=0;g0&&h.push({text:E,line:b+1,column:P+1}),P+=E.length}(w.match(/\s$/)||w.length==0)&&h.push({text:"",line:b+1,column:P+1})}return h}function B0t(f,h,b){const w=aN(f),m=Yve(w,h,h,0,b);for(let g=0;g=f.length)return[];if(!P&&f[w].column==1&&b.some(C=>C.word.verify(f[w].text).length===0))return Yve(f,b,b,w,m,!0);let g=f[w].text;for(const E of h)E.word.replace&&(g=E.word.replace(g,m));return[{...f[w],newText:g},...Yve(f,h.flatMap(E=>E.children),b,w+1,m)]}function f2e(f,h){return Xve(f,h,0,!1,h,!0)}function Xve(f,h,b,w,m,P=!1){if(b>=f.length)return h.length==0||w?[]:[{message:"Unexpected end of line",line:f[b-1].line,startColumn:f[b-1].column+f[b-1].text.length-1,endColumn:f[b-1].column+f[b-1].text.length}];if(!P&&f[b].column==1&&m.some(T=>T.word.verify(f[b].text).length===0))return Xve(f,m,b,!1,m,!0);const g=[];let E=[];for(const C of h){const T=C.word.verify(f[b].text);if(T.length>0){g.push({message:T[0],startColumn:f[b].column,endColumn:f[b].column+f[b].text.length,line:f[b].line});continue}const M=Xve(f,C.children,b+1,C.canBeFinal||!1,m);if(M.length==0)return[];E=E.concat(M)}return E.length>0?$0t(E):$0t(g)}function $0t(f){const h=new Set;return f.filter(b=>{const w=`${b.line}-${b.startColumn}-${b.endColumn}-${b.message}`;return h.has(w)?!1:(h.add(w),!0)})}class tl{constructor(h){this.word=h}verify(h){return h===this.word?[]:[`Expected keyword "${this.word}"`]}completionOptions(){return[{insertText:this.word,kind:wh.CompletionItemKind.Keyword}]}}class bYt{verify(h){return h.length>0?[]:["Expected a symbol"]}completionOptions(){return[]}}class oA{constructor(h){this.word=h}verify(h){return h.startsWith("!")?this.word.verify(h.substring(1)):this.word.verify(h)}completionOptions(h){return h.startsWith("!")?this.word.completionOptions(h.substring(1)).map(w=>({...w,startOffset:(w.startOffset??0)+1})):this.word.completionOptions(h)}replace(h,b){return this.word.replace?h.startsWith("!")?this.replace(h.substring(1),b):this.word.replace(h,b):h}}class Mve{constructor(h){this.word=h}verify(h){const b=h.split(",");for(const w of b){const m=this.word.verify(w);if(m.length>0)return m}return[]}completionOptions(h){const b=h.split(","),w=b[b.length-1];return this.word.completionOptions(w)}replace(h,b){return this.word.replace?h.split(",").map(m=>this.word.replace(m,b)).join(","):h}}const IX="dfd-assignment-language",pYt=["forward","assign","set","unset"],wYt=[...pYt,"if","from"],mYt=["TRUE","FALSE"],vYt={keywords:[...wYt,...mYt],operators:["=","||","&&","!"],symbols:/[=>{function h(g,E){return[b(E,"set"),b(E,"unset"),w(g),m(E,g)]}f.buildTree=h;function b(g,E){const C={word:new Mve(new Jve(g)),children:[]};return{word:new tl(E),children:[C]}}function w(g){const E={word:new Mve(new Qve(g)),children:[]};return{word:new tl("forward"),children:[E]}}function m(g,E){const C={word:new tl("from"),children:[{word:new Mve(new Qve(E)),children:[]}]},T={word:new tl("if"),children:P(g,C,E)};return{word:new tl("assign"),children:[{word:new Jve(g),children:[T]}]}}function P(g,E,C){const T=["&&","||"].map(_=>({word:new tl(_),children:[]})),M=[new tl("TRUE"),new tl("FALSE"),new _Yt(g,C)].map(_=>({word:_,children:[...T,E],canBeFinal:!0}));return T.forEach(_=>{_.children=M}),M}})(NL||(NL={}));class yYt{constructor(h){this.port=h}getAvailableInputs(){const h=this.port.parent;return h instanceof jy?h.getAvailableInputs().filter(b=>b!==void 0):[]}}class Jve{constructor(h){this.labelTypeRegistry=h}completionOptions(h){const b=h.split(".");if(b.length==1)return this.labelTypeRegistry.getLabelTypes().map(w=>({insertText:w.name,kind:wh.CompletionItemKind.Class}));if(b.length==2){const w=this.labelTypeRegistry.getLabelTypes().find(m=>m.name===b[0]);return w?w.values.map(m=>({insertText:m.text,kind:wh.CompletionItemKind.Enum,startOffset:b[0].length+1})):[]}return[]}verify(h){const b=h.split(".");if(b.length>2)return["Expected at most 2 parts in characteristic selector"];const w=this.labelTypeRegistry.getLabelTypes().find(P=>P.name===b[0]);return w?b.length<2?["Expected characteristic to have value"]:b[1].startsWith("$")&&b[1].length>=2?[]:w.values.find(P=>P.text===b[1])?[]:['Unknown label value "'+b[1]+'" for type "'+b[0]+'"']:['Unknown label type "'+b[0]+'"']}replace(h,b){return b.type=="label"&&h==b.old?b.replacement:h}}class Qve extends yYt{completionOptions(){return this.getAvailableInputs().map(b=>({insertText:b,kind:wh.CompletionItemKind.Variable}))}verify(h){return this.getAvailableInputs().includes(h)?[]:[`Unknown input "${h}"`]}}class _Yt{inputWord;labelWord;constructor(h,b){this.inputWord=new Qve(b),this.labelWord=new Jve(h)}completionOptions(h){const b=this.getParts(h);return b[1]===void 0?this.inputWord.completionOptions().map(w=>({...w,insertText:w.insertText})):b.length>=2?this.labelWord.completionOptions(b[1]).map(w=>({...w,insertText:w.insertText,startOffset:(w.startOffset??0)+b[0].length+1})):[]}verify(h){const b=this.getParts(h),w=this.inputWord.verify(b[0]);if(w.length>0)return w;if(b[1]===void 0)return["Expected input and label separated by a dot"];const m=this.labelWord.verify(b[1]);return[...w,...m]}replaceWord(h,b){const[w,m]=this.getParts(h);return b.type=="label"&&m===b.old?w+"."+b.replacement:h}getParts(h){if(h.includes(".")){const b=h.indexOf("."),w=h.substring(0,b),m=h.substring(b+1);return[w,m]}return[h,void 0]}}var EYt=Object.defineProperty,SYt=Object.getOwnPropertyDescriptor,h2e=(f,h,b,w)=>{for(var m=w>1?void 0:w?SYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&EYt(h,b,m),m};let pA=class extends rmt{behavior="";validBehavior=!0;tree;labelTypeRegistry;constructor(){super()}get editableLabel(){const f=this.children.find(h=>h.type==="label:invisible");if(f&&de.isEditableLabel(f))return f}canConnect(f,h){return h==="source"}geViewStyleObject(){const f={opacity:this.opacity.toString()};return this.validBehavior||(f["--port-border"]="#ff0000",f["--port-color"]="#ff6961"),f}setBehavior(f){if(this.behavior=f,f===""){this.validBehavior=!0;return}if(!this.tree){if(!this.labelTypeRegistry)return;this.tree=NL.buildTree(this,this.labelTypeRegistry)}const h=f2e(aN(this.behavior.split(` -`)),this.tree);this.validBehavior=h.length===0}getBehavior(){return this.behavior}};h2e([Et(Zd)],pA.prototype,"labelTypeRegistry",2);pA=h2e([vr()],pA);let Zve=class extends de.ShapeView{render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds;return de.svg("g",{"class-sprotty-port":!0,"class-selected":f.selected,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w}),de.svg("text",{x:b/2,y:w/2,"class-port-text":!0},"O"),h.renderChildren(f))}};Zve=h2e([vr()],Zve);const TX="dfd-constraint",PYt={keywords:["data","vertex","neverFlows","to","where","named","present","empty","type"],symbols:/[=>{function h(_,I){const O=m(),j={word:new tl("where"),children:O},k=w(_,I);k.forEach(ce=>{b(ce).forEach(J=>{J.canBeFinal=!0,J.children.push(j)})});const x={word:new tl("vertex"),children:k},R={word:new tl("neverFlows"),children:[x,j],canBeFinal:!0},H={word:new tl("data"),children:[]},F=w(_,I);F.forEach(ce=>{b(ce).forEach(J=>{J.children.push(H),J.children.push(R)})});const $={word:new tl("vertex"),children:F},W=w(_,I);W.forEach(ce=>{b(ce).forEach(J=>{J.children.push($),J.children.push(R)})}),H.children=W;const re={word:new C,children:[$,H]};return[{word:new tl("-"),children:[re]}]}f.buildTree=h;function b(_){if(_.children.length==0)return[_];let I=[];for(const O of _.children)I=I.concat(b(O));return I}function w(_,I){const O={word:new tl("type"),children:[new oA(new tl("EXTERNAL")),new oA(new tl("PROCESS")),new oA(new tl("STORE"))].map(R=>({word:R,children:[]}))},j={word:new oA(new E(I)),children:[]},k={word:new oA(new M(I)),children:[]},x={word:new tl("named"),children:[{word:new T(_),children:[]}]};return[O,j,k,x]}function m(){const _={word:new tl("present"),children:[{word:new oA(new g),children:[]}]},I={word:new tl("empty"),children:[{word:new P,children:[]}]};return[_,I]}class P{constraintVariableReference;constructor(){this.constraintVariableReference=new g}completionOptions(I){return I.startsWith("intersection(")?I.substring(13,I.length-1).split(",").length>2?[]:this.constraintVariableReference.completionOptions():"intersection(".includes(I)?[{label:"intersection()",insertText:"intersection($0)",insertTextRules:wh.CompletionItemInsertTextRule.InsertAsSnippet,kind:wh.CompletionItemKind.Function}]:[]}verify(I){if(!I.startsWith("intersection("))return['Expected keyword "intersection"'];const O=I.substring(13,I.length-1).split(",");return O.length>2?['Expected at most 2 attributes in "intersection"']:O.flatMap(j=>this.constraintVariableReference.verify(j))}}class g extends bYt{}class E{constructor(I){this.labelTypeRegistry=I}completionOptions(I){const O=I.split(".");if(O.length==1)return this.labelTypeRegistry.getLabelTypes().map(j=>({insertText:j.name,kind:wh.CompletionItemKind.Class}));if(O.length==2){const j=this.labelTypeRegistry.getLabelTypes().find(x=>x.name===O[0]);if(!j)return[];const k=j.values.map(x=>({insertText:x.text,kind:wh.CompletionItemKind.Enum,startOffset:O[0].length+1}));return k.push({insertText:"$"+j.name,kind:wh.CompletionItemKind.Variable,startOffset:O[0].length+1}),k}return[]}verify(I){const O=I.split(".");if(O.length>2)return["Expected at most 2 parts in characteristic selector"];const j=this.labelTypeRegistry.getLabelTypes().find(x=>x.name===O[0]);return j?O.length<2?["Expected characteristic to have value"]:O[1].startsWith("$")&&O[1].length>=2?[]:j.values.find(x=>x.text===O[1])?[]:['Unknown label value "'+O[1]+'" for type "'+O[0]+'"']:['Unknown label type "'+O[0]+'"']}replace(I,O){return O.type=="label"&&I==O.old?O.replacement:I}}class C{completionOptions(I){return I.length===0?[]:[{insertText:":",kind:wh.CompletionItemKind.Keyword}]}verify(I){return I.split(":")[0].length===0?["Expected a name"]:I.endsWith(":")?[]:['Expected ":" at the end of name']}}class T{constructor(I){this.modelSource=I}completionOptions(){return this.getAllPortNames().map(I=>({insertText:I,kind:wh.CompletionItemKind.Variable}))}verify(I){return this.getAllPortNames().includes(I)?[]:['Unknown variable name "'+I+'"']}getAllPortNames(){const I=new Map,O=this.modelSource.model;if(O.children===void 0)return[];for(const j of O.children){const k=j;if(k.text!==void 0&&k.targetId!==void 0){const x=k.text,R=k.targetId;I.has(R)?I.get(R)?.push(x):I.set(R,[x])}}return Array.from(I.keys()).map(j=>I.get(j).sort().join("|"))}}class M{characteristicSelectorData;constructor(I){this.characteristicSelectorData=new E(I)}completionOptions(I){const O=I.split(","),j=O[O.length-1];return this.characteristicSelectorData.completionOptions(j)}verify(I){const O=I.split(",");for(let j=0;j0)return k}return[]}replace(I,O){return this.characteristicSelectorData.replace?I.split(",").map(k=>this.characteristicSelectorData.replace(k,O)).join(","):I}}})(UX||(UX={}));var MYt=Object.getOwnPropertyDescriptor,CYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?MYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},jX=(f,h)=>(b,w)=>h(b,w,f),FL;(f=>{f.KIND="replace-action";function h(b){return{kind:f.KIND,replacements:b}}f.create=h})(FL||(FL={}));let eye=class extends de.Command{constructor(f,h,b,w){super(),this.action=f,this.constraintRegistry=h,this.labelTypeRegistry=b,this.localModelSource=w}static KIND=FL.KIND;execute(f){this.iterateForPorts(f.root);for(const h of this.action.replacements)this.constraintRegistry.setConstraints(B0t(this.constraintRegistry.getConstraintsAsText().split(` -`),UX.buildTree(this.localModelSource,this.labelTypeRegistry),h));return f.root}undo(f){return f.root}redo(f){return f.root}iterateForPorts(f){if(f instanceof pA)for(const h of this.action.replacements)f.setBehavior(B0t(f.getBehavior().split(` -`),NL.buildTree(f,this.labelTypeRegistry),h).join(` -`));for(const h of f.children)this.iterateForPorts(h)}};eye=CYt([jX(0,Et(de.TYPES.Action)),jX(1,Et(Qd)),jX(2,Et(Zd)),jX(3,Et(de.TYPES.ModelSource))],eye);var Pl=z3(),IYt=Object.getOwnPropertyDescriptor,TYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?IYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Cve=(f,h)=>(b,w)=>h(b,w,f);let hS=class extends RM{constructor(f,h,b){super("left","down"),this.labelTypeRegistry=f,this.actionDispatcher=h,this.editorModeController=b,f.onUpdate(()=>this.renderLabelTypes())}static ID="label-type-editor-ui";labelSectionContainer;id(){return hS.ID}containerClass(){return hS.ID}initializeHidableContent(f){const h=CX.buildAddButton("Label Type");h.onclick=()=>{this.editorModeController.isReadOnly()||this.labelTypeRegistry.registerLabelType("")},this.labelSectionContainer=document.createElement("div"),this.renderLabelTypes(),f.appendChild(this.labelSectionContainer),f.appendChild(h)}initializeHeaderContent(f){f.innerText="Label Types"}renderLabelTypes(){if(!this.labelSectionContainer)return;const f=this.labelSectionContainer.scrollWidth,h=this.labelSectionContainer.scrollHeight;this.labelSectionContainer.style.width=`${f}px`,this.labelSectionContainer.style.height=`${h}px`;const b=document.createDocumentFragment(),w=this.labelTypeRegistry.getLabelTypes();for(let m=0;mthis.onInputHandler(g,b),PX(b),setTimeout(()=>PX(b),0),b.onchange=()=>{if(this.editorModeController.isReadOnly())return;const g=f.values.map(E=>({old:`${f.name}.${E}`,replacement:`${b.value}.${E}`,type:"label"}));this.labelTypeRegistry.updateLabelTypeName(f.id,b.value),this.actionDispatcher.dispatch(FL.create(g))},b.onfocus=()=>{this.editorModeController.isReadOnly()&&b.blur()};for(let g=0;g{this.editorModeController.isReadOnly()||this.labelTypeRegistry.registerLabelTypeValue(f.id,"")},w.onclick=()=>{this.editorModeController.isReadOnly()||this.labelTypeRegistry.unregisterLabelType(f.id)},h.appendChild(b),h.appendChild(w),h.appendChild(m),h.appendChild(P),h}buildLabelTypeValue(f,h){const b=document.createElement("div");b.classList.add("label-type-value");const w=document.createElement("input");w.classList.add("label-type-value-name");const m=CX.buildDeleteButton(),P=f.values[h];return w.value=P.text,w.placeholder="Value",w.oninput=g=>this.onInputHandler(g,w),w.style.width="0px",setTimeout(()=>PX(w),0),w.onchange=()=>{if(this.editorModeController.isReadOnly())return;const g=[{old:`${f.name}.${P.text}`,replacement:`${f.name}.${w.value}`,type:"label"}];this.labelTypeRegistry.updateLabelTypeValueText(f.id,P.id,w.value),this.actionDispatcher.dispatch(FL.create(g))},m.onclick=()=>{this.editorModeController.isReadOnly()||this.labelTypeRegistry.unregisterLabelTypeValue(f.id,P.id)},w.draggable=!0,w.ondragstart=g=>{if(this.editorModeController.isReadOnly())return;const E={labelTypeId:f.id,labelTypeValueId:P.id},C=JSON.stringify(E);g.dataTransfer?.setData(hmt,C)},w.onclick=()=>{this.editorModeController.isReadOnly()||w.getAttribute("clicked")!=="true"&&(w.setAttribute("clicked","true"),setTimeout(()=>{w.getAttribute("clicked")==="true"&&(this.actionDispatcher.dispatch(zX.create({labelTypeId:f.id,labelTypeValueId:P.id})),w.removeAttribute("clicked"))},500))},w.ondblclick=()=>{this.editorModeController.isReadOnly()||(w.removeAttribute("clicked"),w.focus())},w.onfocus=g=>{if(this.editorModeController.isReadOnly()){w.blur();return}w.getAttribute("clicked")!=="true"&&(g.preventDefault(),setTimeout(()=>{w.blur()},0))},b.appendChild(w),b.appendChild(m),b}onInputHandler(f,h){f.data?.match(/^[a-zA-Z0-9]*$/)||f.preventDefault(),PX(h)}keyDown(f,h){return Pl.matchesKeystroke(h,"KeyT")&&this.toggleStatus(),[]}keyUp(){return[]}};hS=TYt([Cve(0,Et(Zd)),Cve(1,Et(de.TYPES.IActionDispatcher)),Cve(2,Et(sc.Mode))],hS);const jYt=new xf((f,h,b)=>{f(Zd).toSelf().inSingletonScope(),f(hS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(hS),f(Db.DefaultUIElement).to(hS),f(de.TYPES.KeyListener).toService(hS),de.configureCommand({bind:f,isBound:b},bA),de.configureCommand({bind:f,isBound:b},eye),f(de.TYPES.MouseListener).to(Wve)});function AYt(f,h){const b=document.createElement("input");b.type="file",b.accept=f.join(","),b.multiple=h>1;const w=new Promise((m,P)=>{b.onchange=()=>{if(!b.files||b.files.length!==h){P("No file selected");return}m(Array.from(b.files))},b.oncancel=()=>{P("Canceled file selection")}});return b.click(),w}function OYt(f){return new Promise((h,b)=>{const w=new FileReader;w.onload=()=>h({fileName:f.name,content:w.result}),w.onerror=()=>b(w.error),w.readAsText(f)})}async function d2e(f,h){const b=await AYt(f,h).catch(()=>[]);return Promise.all(b.map(OYt))}function DYt(f){return d2e(f,1).then(h=>h?h[0]:void 0)}var kYt=Object.getOwnPropertyDescriptor,RYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?kYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},M3=(f,h)=>(b,w)=>h(b,w,f),WX;(f=>{f.KIND="loadDfdAndDdFile";function h(){return{kind:f.KIND}}f.create=h})(WX||(WX={}));let tye=class extends Ey{constructor(f,h,b,w,m,P,g,E,C){super(h,b,w,m,E,P,C),this.dfdWebSocket=g}static KIND=WX.KIND;async getFile(){const f=await d2e([".dataflowdiagram",".datadictionary"],2),h=f.find(m=>m.fileName.endsWith(".dataflowdiagram"))?.content,b=f.find(m=>m.fileName.endsWith(".datadictionary"))?.content;if(!h||!b)return;const w=this.fileName.getName();return this.fileName.setName(f[0].fileName),this.dfdWebSocket.requestDiagram("DFD:"+h+` -:DD: -`+b).catch(m=>{throw this.fileName.setName(w),m})}};tye=RYt([M3(0,Et(de.TYPES.Action)),M3(1,Et(de.TYPES.ILogger)),M3(2,Et(Zd)),M3(3,Et(Qd)),M3(4,Et(sc.Mode)),M3(5,Et(Ty)),M3(6,Et(Sy)),M3(7,Et(de.TYPES.IActionDispatcher)),M3(8,Et(Jd))],tye);var xYt=Object.getOwnPropertyDescriptor,LYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?xYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},sS=(f,h)=>(b,w)=>h(b,w,f),BL;(f=>{f.KIND="loadJsonFile";function h(){return{kind:f.KIND}}f.create=h})(BL||(BL={}));let nye=class extends Ey{static KIND=BL.KIND;constructor(f,h,b,w,m,P,g,E){super(h,b,w,m,P,g,E)}async getFile(){const f=await DYt(["application/json"]);if(f)return this.fileName.setName(f.fileName),{fileName:f.fileName,content:JSON.parse(f.content)}}};nye=LYt([sS(0,Et(de.TYPES.Action)),sS(1,Et(de.TYPES.ILogger)),sS(2,Et(Zd)),sS(3,Et(Qd)),sS(4,Et(sc.Mode)),sS(5,Et(de.TYPES.IActionDispatcher)),sS(6,Et(Ty)),sS(7,Et(Jd))],nye);var NYt=Object.getOwnPropertyDescriptor,FYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?NYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},C3=(f,h)=>(b,w)=>h(b,w,f),YX;(f=>{f.KIND="loadPcmFile";function h(){return{kind:f.KIND}}f.create=h})(YX||(YX={}));let hA=class extends Ey{constructor(f,h,b,w,m,P,g,E,C){super(h,b,w,m,P,g,C),this.dfdWebSocket=E}static KIND=YX.KIND;static FILE_ENDINGS=[".pddc",".allocation",".nodecharacteristics",".repository",".resourceenvironment",".system",".usagemodel"];async getFile(){const f=await d2e(hA.FILE_ENDINGS,hA.FILE_ENDINGS.length);if(hA.FILE_ENDINGS.some(b=>!f.find(w=>w.fileName.endsWith(b))))throw new Error("Please select one file of each required type: .pddc, .allocation, .nodecharacteristics, .repository, .resourceenvironment, .system, .usagemodel");const h=this.fileName.getName();return this.fileName.setName(f[0].fileName),this.dfdWebSocket.requestDiagram(f.map(b=>`${b.fileName}:${b.content}`).join("---FILE---")).catch(b=>{throw this.fileName.setName(h),b})}};hA=FYt([C3(0,Et(de.TYPES.Action)),C3(1,Et(de.TYPES.ILogger)),C3(2,Et(Zd)),C3(3,Et(Qd)),C3(4,Et(sc.Mode)),C3(5,Et(de.TYPES.IActionDispatcher)),C3(6,Et(Ty)),C3(7,Et(Sy)),C3(8,Et(Jd))],hA);var BYt=Object.getOwnPropertyDescriptor,$Yt=(f,h,b,w)=>{for(var m=w>1?void 0:w?BYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let iye=class extends de.SModelFactory{createElement(f,h){if(f instanceof de.SModelElementImpl)return super.createElement(f,h);if(f.type==="node:storage"||f.type==="node:function"||f.type==="node:input-output"){const w=f;f.children=f.children??[];for(const m of w.ports)"features"in m&&delete m.features;f.children.push(...w.ports,{type:"label:positional",text:w.text??"",id:f.id+"-label"})}if(f.type==="edge:arrow"){const w=f;f.children=f.children??[],f.children.push({type:"label:filled-background",text:w.text??"",id:f.id+"-label",edgePlacement:{position:.5,side:"on",rotate:!1}})}"features"in f&&delete f.features;const b=super.createElement(f,h);return b.features===void 0&&(b.features=new Set),b}createSchema(f){const h=super.createSchema(f);if(h.type==="node:storage"||h.type==="node:function"||h.type==="node:input-output"){const b=h,w=b.children?.filter(P=>mg.getBasicType(P)==="port")??[];b.ports=w;const m=h.children?.find(P=>P.type==="label:positional");return m&&(b.text=m.text),b.children=[],b}if(h.type==="edge:arrow"){const b=h,w=h.children?.find(m=>m.type==="label:filled-background");return w&&(b.text=w.text),b.children=[],b}return h}};iye=$Yt([vr()],iye);const gmt=1;class KYt extends de.Command{constructor(h,b,w){super(),this.labelTypeRegistry=h,this.constraintRegistry=b,this.editorModeController=w}createSavedDiagram(h){return{model:h.modelFactory.createSchema(h.root),labelTypes:this.labelTypeRegistry.getLabelTypes(),constraints:this.constraintRegistry.getConstraintList(),mode:this.editorModeController.get(),version:gmt}}}class bmt extends KYt{constructor(h,b,w,m){super(h,b,w),this.loadingIndicator=m}async execute(h){this.loadingIndicator.showIndicator("Saving diagram...");const b=await this.getFiles(h);for(const w of b)this.downloadFile(w);return this.loadingIndicator.hide(),h.root}undo(h){return h.root}redo(h){return h.root}downloadFile(h){const b=document.createElement("a"),w=new Blob([h.content],{type:"application/json"});b.href=URL.createObjectURL(w),b.download=h.fileName,b.click(),URL.revokeObjectURL(b.href),b.remove()}}var qYt=Object.getOwnPropertyDescriptor,HYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?qYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},cA=(f,h)=>(b,w)=>h(b,w,f),$L;(f=>{f.KIND="saveJsonFile";function h(){return{kind:f.KIND}}f.create=h})($L||($L={}));let rye=class extends bmt{constructor(f,h,b,w,m,P){super(h,b,w,P),this.fileName=m}static KIND=$L.KIND;getFiles(f){const h={fileName:this.fileName.getName()+".json",content:JSON.stringify(this.createSavedDiagram(f))};return Promise.resolve([h])}};rye=HYt([cA(0,Et(de.TYPES.Action)),cA(1,Et(Zd)),cA(2,Et(Qd)),cA(3,Et(sc.Mode)),cA(4,Et(Ty)),cA(5,Et(Jd))],rye);var zYt=Object.getOwnPropertyDescriptor,VYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?zYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},jM=(f,h)=>(b,w)=>h(b,w,f),XX;(f=>{f.KIND="saveDfdAndDdFile";function h(){return{kind:f.KIND}}f.create=h})(XX||(XX={}));let KL=class extends bmt{constructor(f,h,b,w,m,P,g){super(h,b,w,g),this.dfdWebSocket=m,this.fileName=P}static KIND=XX.KIND;static CLOSING_TAG="";async getFiles(f){const h=this.createSavedDiagram(f),b=await this.dfdWebSocket.sendMessage("Json2DFD:"+JSON.stringify(h)),w=b.indexOf(KL.CLOSING_TAG)+KL.CLOSING_TAG.length,m=b.substring(0,w).trim(),P=b.substring(w).trim(),g=this.fileName.getName();return Promise.resolve([{fileName:g+".dataflowdiagram",content:m},{fileName:g+".datadictionary",content:P}])}};KL=VYt([jM(0,Et(de.TYPES.Action)),jM(1,Et(Zd)),jM(2,Et(Qd)),jM(3,Et(sc.Mode)),jM(4,Et(Sy)),jM(5,Et(Ty)),jM(6,Et(Jd))],KL);var GYt=Object.getOwnPropertyDescriptor,UYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?GYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let qL=class{violations=[];listeners=[];updateViolations(f){this.violations=f,this.listeners.forEach(h=>h(this.violations))}onViolationsChanged(f){this.listeners.push(f)}getViolations(){return this.violations}};qL=UYt([vr()],qL);var WYt=Object.getOwnPropertyDescriptor,YYt=(f,h,b,w)=>{for(var m=w>1?void 0:w?WYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},yy=(f,h)=>(b,w)=>h(b,w,f),HL;(f=>{f.KIND="analyze";function h(){return{kind:f.KIND}}f.create=h})(HL||(HL={}));let oye=class extends Ey{constructor(f,h,b,w,m,P,g,E,C,T){super(h,b,w,m,E,P,C),this.dfdWebSocket=g,this.violationService=T}static KIND=HL.KIND;async getFile(f){const h={model:f.modelFactory.createSchema(f.root),labelTypes:this.labelTypeRegistry.getLabelTypes(),constraints:this.constraintRegistry.getConstraintList(),mode:this.editorModeController.get(),version:gmt},b=await this.dfdWebSocket.requestDiagram("Json:"+JSON.stringify(h));if(b&&b.content){const w=b.content.violations||[];this.violationService.updateViolations(w),b.content.violations=w}return b}};oye=YYt([yy(0,Et(de.TYPES.Action)),yy(1,Et(de.TYPES.ILogger)),yy(2,Et(Zd)),yy(3,Et(Qd)),yy(4,Et(sc.Mode)),yy(5,Et(Ty)),yy(6,Et(Sy)),yy(7,Et(de.TYPES.IActionDispatcher)),yy(8,Et(Jd)),yy(9,Et(qL))],oye);const XYt=new xf((f,h,b,w)=>{const m={bind:f,unbind:h,isBound:b,rebind:w};de.configureCommand(m,Fve),de.configureCommand(m,nye),de.configureCommand(m,tye),de.configureCommand(m,hA),de.configureCommand(m,Bve),de.configureCommand(m,rye),de.configureCommand(m,KL),de.configureCommand(m,oye),w(de.TYPES.IModelFactory).to(iye)});var JYt=Object.defineProperty,QYt=Object.getOwnPropertyDescriptor,ZYt=(f,h,b)=>h in f?JYt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,pmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?QYt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},eXt=(f,h)=>(b,w)=>h(b,w,f),g2e=(f,h,b)=>ZYt(f,typeof h!="symbol"?h+"":h,b);let pg=class extends jy{noLabelHeight(){return pg.TEXT_HEIGHT}labelStartHeight(){return pg.LABEL_START_HEIGHT}calculateWidth(){return super.calculateWidth()+pg.LEFT_PADDING}};g2e(pg,"TEXT_HEIGHT",32);g2e(pg,"LABEL_START_HEIGHT",28);g2e(pg,"LEFT_PADDING",10);pg=pmt([vr()],pg);let cye=class extends de.ShapeView{constructor(f){super(),this.labelRenderer=f}render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds,m=pg.LEFT_PADDING/2;return de.svg("g",{"class-sprotty-node":!0,"class-storage":!0,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w,stroke:"red"}),de.svg("line",{x1:pg.LEFT_PADDING,y1:"0",x2:pg.LEFT_PADDING,y2:w}),h.renderChildren(f,{xPosition:b/2+m,yPosition:pg.TEXT_HEIGHT/2}),this.labelRenderer.renderNodeLabels(f,pg.LABEL_START_HEIGHT,m))}};cye=pmt([vr(),eXt(0,Et(Rf))],cye);var tXt=Object.getOwnPropertyDescriptor,nXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?tXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},iXt=(f,h)=>(b,w)=>h(b,w,f);class _y extends jy{static TEXT_HEIGHT=28;static SEPARATOR_NO_LABEL_PADDING=4;static SEPARATOR_LABEL_PADDING=4;static LABEL_START_HEIGHT=this.TEXT_HEIGHT+this.SEPARATOR_LABEL_PADDING;static BORDER_RADIUS=5;noLabelHeight(){return _y.LABEL_START_HEIGHT+_y.SEPARATOR_NO_LABEL_PADDING}labelStartHeight(){return _y.LABEL_START_HEIGHT}}let sye=class extends de.ShapeView{constructor(f){super(),this.labelRenderer=f}render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds,m=_y.BORDER_RADIUS;return de.svg("g",{"class-sprotty-node":!0,"class-function":!0,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w,rx:m,ry:m}),de.svg("line",{x1:"0",y1:_y.TEXT_HEIGHT,x2:b,y2:_y.TEXT_HEIGHT}),h.renderChildren(f,{xPosition:b/2,yPosition:_y.TEXT_HEIGHT/2}),this.labelRenderer.renderNodeLabels(f,_y.LABEL_START_HEIGHT))}};sye=nXt([vr(),iXt(0,Et(Rf))],sye);var rXt=Object.defineProperty,oXt=Object.getOwnPropertyDescriptor,cXt=(f,h,b)=>h in f?rXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,wmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?oXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},sXt=(f,h)=>(b,w)=>h(b,w,f),mmt=(f,h,b)=>cXt(f,typeof h!="symbol"?h+"":h,b);let B3=class extends jy{noLabelHeight(){return B3.TEXT_HEIGHT}labelStartHeight(){return B3.LABEL_START_HEIGHT}};mmt(B3,"TEXT_HEIGHT",32);mmt(B3,"LABEL_START_HEIGHT",28);B3=wmt([vr()],B3);let uye=class extends de.ShapeView{constructor(f){super(),this.labelRenderer=f}render(f,h){if(!this.isVisible(f,h))return;const{width:b,height:w}=f.bounds;return de.svg("g",{"class-sprotty-node":!0,"class-io":!0,style:f.geViewStyleObject()},de.svg("rect",{x:"0",y:"0",width:b,height:w}),h.renderChildren(f,{xPosition:b/2,yPosition:B3.TEXT_HEIGHT/2}),this.labelRenderer.renderNodeLabels(f,B3.LABEL_START_HEIGHT))}};uye=wmt([vr(),sXt(0,Et(Rf))],uye);var uXt=Object.getOwnPropertyDescriptor,aXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?uXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let aye=class extends de.ShapeView{getPosition(f,h){if(h&&"xPosition"in h&&"yPosition"in h)return{x:h.xPosition,y:h.yPosition};{const b=f.parent?.bounds,w=b?.width??0,m=b?.height??0;return{x:w/2,y:m/2}}}render(f,h,b){const w=this.getPosition(f,b);return de.svg("text",{"class-sprotty-label":!0,x:w.x,y:w.y},f.text)}};aye=aXt([vr()],aye);var lXt=Object.defineProperty,fXt=Object.getOwnPropertyDescriptor,hXt=(f,h,b)=>h in f?lXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,dXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?fXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},gXt=(f,h,b)=>hXt(f,h+"",b);let wA=class extends de.ShapeView{render(f,h){if(!this.isVisible(f,h))return;const b=uN(f.text),w=b.width+wA.PADDING,m=b.height+wA.PADDING;return de.svg("g",{"class-label-background":!0},f.text?de.svg("rect",{x:-w/2,y:-m/2,width:w,height:m}):void 0,de.svg("text",{"class-sprotty-label":!0},f.text))}};gXt(wA,"PADDING",5);wA=dXt([vr()],wA);var bXt=Object.getOwnPropertyDescriptor,pXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?bXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let lye=class{cssClass="label-validation-results";decorate(f,h){const b=f.parentElement;if(b&&h.severity!=="ok"){const w=document.createElement("span");w.innerText=h.message??h.severity,w.classList.add(this.cssClass),w.style.top=`${f.clientHeight}px`,b.appendChild(w)}}dispose(f){const h=f.parentElement;h&&h.querySelector(`span.${this.cssClass}`)?.remove()}};lye=pXt([vr()],lye);var wXt=Object.getOwnPropertyDescriptor,mXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?wXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let fye=class{async validate(f,h){if(!(h instanceof de.SChildElementImpl))return{severity:"ok"};const b=h.parent;if(!(b instanceof de.SEdgeImpl))return{severity:"ok"};if(f.includes(" "))return{severity:"error",message:"Input name cannot contain spaces"};if(f.includes(","))return{severity:"error",message:"Input name cannot contain commas"};if(f.length==0)return{severity:"error",message:"Input name cannot be empty"};const w=b,m=w.target;return m instanceof gA?m.parent.getEdgeTexts(C=>C.id!==w.id).find(C=>C.toLowerCase()===f.toLowerCase())?{severity:"error",message:"Input name already used"}:{severity:"ok"}:{severity:"ok"}}};fye=mXt([vr()],fye);class K0t extends de.EditLabelUI{onBeforeShow(h,b,...w){super.onBeforeShow(h,b,...w),(window.scrollX!==0||window.scrollY!==0)&&window.scrollTo(0,0)}}var dS=(f=>(f.INCOMING="Incoming",f.OUTGOING="Outgoing",f.ALL="All",f))(dS||{});class vXt extends SJ{constructor(){super("All")}}var yXt=Object.defineProperty,_Xt=Object.getOwnPropertyDescriptor,EXt=(f,h,b)=>h in f?yXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,vmt=(f,h,b,w)=>{for(var m=w>1?void 0:w?_Xt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},hye=(f,h)=>(b,w)=>h(b,w,f),SXt=(f,h,b)=>EXt(f,h+"",b);let zL=class extends de.MouseListener{constructor(f){super(),this.actionDispatcher=f}stillTimeout;lastTarget;lastPosition={x:0,y:0};mouseMove(f,h){const b=this.findDfdNode(f);return b?(this.lastPosition={x:h.clientX,y:h.clientY},b===this.lastTarget?[]:(this.stillTimeout=setTimeout(()=>{this.stillTimeout=void 0,b.opacity===1&&this.showPopup(b)},500),this.lastTarget!==b?(this.lastTarget=b,this.hidePopup()):[])):(this.stillTimeout&&(clearTimeout(this.stillTimeout),this.stillTimeout=void 0),this.hidePopup())}findDfdNode(f){return f instanceof jy?f:f instanceof de.SChildElementImpl&&f.parent?this.findDfdNode(f.parent):void 0}showPopup(f){f.annotations&&this.actionDispatcher.dispatch(de.SetUIExtensionVisibilityAction.create({extensionId:yS.ID,visible:!0,contextElementsId:[f.id]}))}hidePopup(){return[de.SetUIExtensionVisibilityAction.create({extensionId:yS.ID,visible:!1})]}getMousePosition(){return this.lastPosition}};zL=vmt([hye(0,Et(de.TYPES.IActionDispatcher))],zL);let yS=class extends de.AbstractUIExtension{constructor(f,h){super(),this.mouseListener=f,this.shownLabels=h}annotationParagraph=document.createElement("p");id(){return yS.ID}containerClass(){return this.id()}initializeContents(f){f.classList.add("ui-float"),f.appendChild(this.annotationParagraph)}onBeforeShow(f,h,...b){if(b.length!==1){this.annotationParagraph.innerText="UI Error: Expected exactly one context element id, but got "+b.length;return}const w=h.index.getById(b[0]);if(!(w instanceof jy)){this.annotationParagraph.innerText="UI Error: Expected context element to be a DfdNodeImpl, but got "+w;return}this.annotationParagraph.innerText="";const m=this.mouseListener.getMousePosition(),P={x:m.x-2,y:m.y-2};f.style.left=`${P.x}px`,f.style.top=`${P.y}px`,f.style.overflowY="auto",this.annotationParagraph.style.whiteSpace="normal",this.annotationParagraph.style.wordBreak="break-word";const g=window.innerWidth,E=window.innerHeight;if(f.style.maxWidth=`${Math.max(g-P.x-50,100)}px`,f.style.maxHeight=`${Math.max(E-P.y-50,50)}px`,!w.annotations||w.annotations.length==0){this.annotationParagraph.innerText="No errors";return}this.annotationParagraph.innerHTML="";const C=this.shownLabels.get();w.annotations.forEach(T=>{if((C===dS.INCOMING||C===dS.ALL)&&T.message.trim().startsWith("Incoming")||(C===dS.OUTGOING||C===dS.ALL)&&T.message.trim().startsWith("Propagated")||T.message.startsWith("Constraint")){const M=document.createElement("div");if(M.style.display="flex",M.style.alignItems="center",M.style.gap="6px",T.icon){const I=document.createElement("i");I.classList.add("fa",`fa-${T.icon}`),M.appendChild(I)}const _=document.createElement("span");_.innerText=T.message,M.appendChild(_),this.annotationParagraph.appendChild(M)}})}};SXt(yS,"ID","dfd-node-annotation-ui");yS=vmt([vr(),hye(0,Et(zL)),hye(1,Et(sc.ShownLabels))],yS);const PXt=new xf((f,h,b,w)=>{const m={bind:f,unbind:h,isBound:b,rebind:w};f(de.TYPES.IEditLabelValidator).to(fye).inSingletonScope(),f(de.TYPES.IEditLabelValidationDecorator).to(lye).inSingletonScope(),de.configureActionHandler(m,de.EditLabelAction.KIND,de.EditLabelActionHandler),f(K0t).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(K0t),f(de.TYPES.ISnapper).to(Hve).inSingletonScope(),f(de.TYPES.MouseListener).to(GWt).inSingletonScope(),de.configureCommand(m,LL),f(yS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(yS),f(zL).toSelf().inSingletonScope(),f(de.TYPES.MouseListener).toService(zL),de.configureModelElement(m,"graph",de.SGraphImpl,de.SGraphView),de.configureModelElement(m,"node:storage",pg,cye),de.configureModelElement(m,"node:function",_y,sye),de.configureModelElement(m,"node:input-output",B3,uye),de.configureModelElement(m,"edge:arrow",a2e,qve,{enable:[de.withEditLabelFeature]}),de.configureModelElement(m,"routing-point",de.SRoutingHandleImpl,HX),de.configureModelElement(m,"volatile-routing-point",de.SRoutingHandleImpl,HX),de.configureModelElement(m,"port:dfd-input",gA,KWt),de.configureModelElement(m,"port:dfd-output",pA,Zve),de.configureModelElement(m,"label",de.SLabelImpl,de.SLabelView,{enable:[de.editLabelFeature]}),de.configureModelElement(m,"label:positional",de.SLabelImpl,aye,{enable:[de.editLabelFeature]}),de.configureModelElement(m,"label:filled-background",de.SLabelImpl,wA,{enable:[de.editLabelFeature]}),f(Rf).toSelf().inSingletonScope()}),MXt=new xf(f=>{f(Sy).toSelf().inSingletonScope()});var CXt=Object.getOwnPropertyDescriptor,IXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?CXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let JX=class{async getActions(f){const h=xL.create(f),b=de.CommitModelAction.create();return[new lS("Load",[new de.LabeledAction("Load diagram from JSON",[BL.create(),b],"json"),new de.LabeledAction("Load DFD and DD",[WX.create(),b],"coffee"),new de.LabeledAction("Load Palladio",[YX.create(),b],"fa-puzzle-piece")],"go-to-file"),new lS("Save",[new de.LabeledAction("Save diagram as JSON",[$L.create()],"json"),new de.LabeledAction("Save diagram as DFD and DD",[XX.create()],"coffee")],"save"),new de.LabeledAction("Load default diagram",[dA.create(),b],"clear-all"),new de.LabeledAction("Fit to Screen",[h],"screen-normal"),new lS("Layout diagram (Method: Lines)",[new de.LabeledAction("Layout: Lines",[D3.create(Xd.LINES),b,h],"grabber"),new de.LabeledAction("Layout: Wrapping Lines",[D3.create(Xd.WRAPPING),b,h],"word-wrap"),new de.LabeledAction("Layout: Circles",[D3.create(Xd.CIRCLES),b,h],"circle-large")],"layout",[D3.create(Xd.LINES),b,h])]}};JX=IXt([vr()],JX);class lS extends de.LabeledAction{constructor(h,b,w,m=[]){super(h,m,w),this.children=b}}var TXt=Object.defineProperty,jXt=Object.getOwnPropertyDescriptor,AXt=(f,h,b)=>h in f?TXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,OXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?jXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},DXt=(f,h,b)=>AXt(f,h+"",b);let mA=class extends de.CommandPalette{suggestionElement;index=-1;childIndex=-1;insideChild=!1;actions=[];filteredActions=[];initializeContents(f){f.style.position="absolute",f.style.top="100px",f.style.left="100px",this.inputElement=document.createElement("input"),this.inputElement.style.width="100%",this.inputElement.addEventListener("keydown",h=>this.processKeyStrokeInInput(h)),this.inputElement.addEventListener("input",()=>this.updateSuggestions()),this.inputElement.onblur=()=>window.setTimeout(()=>this.hide(),200),this.suggestionElement=document.createElement("div"),this.suggestionElement.className="command-palette-suggestions-holder",f.appendChild(this.inputElement),f.appendChild(this.suggestionElement)}show(f,...h){super.show(f,...h),this.autoCompleteResult.destroy(),this.index=-1,this.childIndex=-1,this.insideChild=!1,this.filteredActions=[],this.actions=[],this.suggestionElement.innerHTML="",this.inputElement.value="",this.inputElement.focus(),this.actionProviderRegistry.getActions(f,"",this.mousePositionTracker.lastPositionOnDiagram).then(b=>this.actions=b).then(()=>this.updateSuggestions())}updateSuggestions(){if(!this.suggestionElement)return;this.suggestionElement.innerHTML="";const f=this.inputElement.value.toLowerCase();this.filteredActions=[];for(const h of this.actions){if(this.matchFilter(h,f)){this.filteredActions.push(h);continue}if(h instanceof lS){const b=h.children.filter(w=>this.matchFilter(w,f));if(b.length>0){this.filteredActions.push(new lS(h.label,b,h.icon));continue}}}this.index>=this.filteredActions.length&&(this.index=-1);for(const[h,b]of this.filteredActions.entries()){const w=this.renderSuggestion(b);h===this.index&&(w.classList.add("expanded"),this.insideChild||w.classList.add("selected")),this.suggestionElement.appendChild(w)}}renderSuggestion(f){const h=document.createElement("div");h.className="command-palette-suggestion";const b=document.createElement("span");b.className=this.getIconClasses(f.icon),h.appendChild(b);const w=document.createElement("span");w.className="command-palette-suggestion-label",w.innerText=f.label,h.appendChild(w);const m=document.createElement("span");if(h.appendChild(m),f instanceof lS){m.className="codicon codicon-chevron-right",h.appendChild(m);const P=document.createElement("div");P.className="command-palette-suggestion-children";for(const[g,E]of f.children.entries()){const C=this.renderSuggestion(E);this.insideChild&&this.childIndex===g&&C.classList.add("selected"),P.appendChild(C)}h.appendChild(P)}return h.addEventListener("click",()=>{f instanceof lS||this.executeAction(f)}),h}getIconClasses(f){return f?f.startsWith("fa-")?"fa-solid "+f:f.startsWith("codicon-")?"codicon "+f:"codicon codicon-"+f:"codicon codicon-gear"}matchFilter(f,h){return f.label.toLowerCase().includes(h)}id(){return mA.ID}containerClass(){return mA.ID}processKeyStrokeInInput(f){Pl.matchesKeystroke(f,"Escape")&&this.hide(),Pl.matchesKeystroke(f,"ArrowDown")&&(this.insideChild?this.childIndex=(this.childIndex+1)%this.filteredActions[this.index].children.length:this.index===-1?this.index=0:this.index=(this.index+1)%this.suggestionElement.children.length),Pl.matchesKeystroke(f,"ArrowUp")&&(this.insideChild?this.childIndex=(this.childIndex-1+this.filteredActions[this.index].children.length)%this.filteredActions[this.index].children.length:this.index===-1?this.index=this.suggestionElement.children.length-1:this.index=(this.index-1+this.suggestionElement.children.length)%this.suggestionElement.children.length),Pl.matchesKeystroke(f,"ArrowRight")&&!this.insideChild&&this.filteredActions[this.index]instanceof lS&&(f.preventDefault(),this.insideChild=!0,this.childIndex=0),Pl.matchesKeystroke(f,"ArrowLeft")&&this.insideChild&&(f.preventDefault(),this.insideChild=!1,this.childIndex=-1),Pl.matchesKeystroke(f,"Enter")&&(this.insideChild?this.executeAction(this.filteredActions[this.index].children[this.childIndex]):this.index!==-1&&this.executeAction(this.filteredActions[this.index]),this.hide()),this.updateSuggestions()}executeAction(f){this.actionDispatcherProvider().then(h=>h.dispatchAll(f.actions)).catch(h=>this.logger.error(this,"No action dispatcher available to execute command palette action",h))}};DXt(mA,"ID","command-palette");mA=OXt([vr()],mA);class kXt extends de.CommandStack{isPushToUndoStack(h){return!(h instanceof de.HiddenCommand||h instanceof de.SelectCommand||h instanceof de.SetViewportCommand||h instanceof de.BringToFrontCommand||h instanceof de.FitToScreenCommand||h instanceof de.CenterCommand)}}const RXt=new xf((f,h,b,w)=>{w(de.CommandPalette).to(mA).inSingletonScope(),f(JX).toSelf().inSingletonScope(),f(de.TYPES.ICommandPaletteActionProvider).toService(JX),w(de.TYPES.ICommandStack).to(kXt).inSingletonScope()});class xXt extends de.KeyListener{keyDown(h,b){return Pl.matchesKeystroke(b,"KeyL","ctrlCmd")?(b.preventDefault(),[D3.create(Xd.LINES),de.CommitModelAction.create(),xL.create(h.root)]):[]}}const LXt=new xf((f,h,b,w)=>{f($X).toSelf().inSingletonScope(),f(de.TYPES.IModelLayoutEngine).toService($X),f(x3).to(x3),w(R3.ILayoutConfigurator).to(x3),f(R3.ILayoutPostprocessor).to(Lve).inSingletonScope(),f(R3.ElkFactory).toConstantValue(iWt),f(de.TYPES.KeyListener).to(xXt).inSingletonScope();const m={bind:f,unbind:h,isBound:b,rebind:w};de.configureCommand(m,Nve)}),NXt=new xf(f=>{f(Ty).toSelf().inSingletonScope()});var FXt=Object.defineProperty,BXt=Object.getOwnPropertyDescriptor,$Xt=(f,h,b)=>h in f?FXt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,KXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?BXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},IL=(f,h)=>(b,w)=>h(b,w,f),qXt=(f,h,b)=>$Xt(f,h+"",b);let wS=class extends RM{constructor(f,h,b,w,m){super("right","up"),this.themeManager=f,this.shownLabels=h,this.hideEdgeNames=b,this.simplifyNodeNames=w,this.editorModeController=m}id(){return wS.ID}containerClass(){return wS.ID}initializeHidableContent(f){const h=document.createElement("div");h.id="settings-content",f.appendChild(h),this.addDropDown(h,"Theme",this.themeManager,[DM.SYSTEM_DEFAULT,DM.LIGHT,DM.DARK]),this.addDropDown(h,"Shown Labels",this.shownLabels,[dS.INCOMING,dS.OUTGOING,dS.ALL]),this.addBooleanSwitch(h,"Hide Edge Names",this.hideEdgeNames),this.addBooleanSwitch(h,"Simplify Node Names",this.simplifyNodeNames),this.addSwitch(h,"Read Only",this.editorModeController,{true:"view",false:"edit"})}initializeHeaderContent(f){f.classList.add("settings-accordion-icon"),f.innerText="Settings"}addBooleanSwitch(f,h,b){this.addSwitch(f,h,b,{true:!0,false:!1})}addSwitch(f,h,b,w){const m={[w.true.toString()]:!0,[w.false.toString()]:!1},P=document.createElement("label");P.textContent=h,P.htmlFor=`setting-${h.toLowerCase().replace(/\s+/g,"-")}`;const g=document.createElement("label");g.classList.add("switch");const E=document.createElement("input");E.type="checkbox",E.id=`setting-${h.toLowerCase().replace(/\s+/g,"-")}`,E.checked=m[b.get().toString()],g.appendChild(E);const C=document.createElement("span");C.classList.add("slider","round"),g.appendChild(C),f.appendChild(P),f.appendChild(g),g.addEventListener("change",()=>{b.set(w[E.checked?"true":"false"])}),b.registerListener(T=>{E.checked=m[T.toString()]})}addDropDown(f,h,b,w){const m=document.createElement("label");m.textContent=h,m.htmlFor=`setting-${h.toLowerCase().replace(/\s+/g,"-")}`;const P=document.createElement("select");for(const g of w){const E=document.createElement("option");E.value=g.toString(),E.innerText=g.toString(),P.appendChild(E)}P.value=b.get().toString(),P.onchange=()=>{const g=w.find(E=>E.toString()===P.value);g&&b.set(g)},f.appendChild(m),f.appendChild(P)}};qXt(wS,"ID","settings-ui");wS=KXt([vr(),IL(0,Et(sc.Theme)),IL(1,Et(sc.ShownLabels)),IL(2,Et(sc.HideEdgeNames)),IL(3,Et(sc.SimplifyNodeNames)),IL(4,Et(sc.Mode))],wS);class HXt extends SJ{constructor(){super("edit")}setDefault(){this.set("edit")}isReadOnly(){return this.get()!=="edit"}}const zXt=new xf((f,h,b)=>{f(wS).toSelf().inSingletonScope(),f(Db.DefaultUIElement).toService(wS),f(de.TYPES.IUIExtension).toService(wS),f(sc.Theme).to(fA).inSingletonScope(),f(sc.HideEdgeNames).to(N0t).inSingletonScope(),f(sc.SimplifyNodeNames).to(N0t).inSingletonScope(),f(sc.Mode).to(HXt).inSingletonScope(),f(sc.ShownLabels).to(vXt).inSingletonScope();const w={bind:f,isBound:b};de.configureCommand(w,xWt),de.configureCommand(w,Gve),f(VX).toSelf().inSingletonScope()});var ymt=Object.defineProperty,VXt=Object.getOwnPropertyDescriptor,GXt=(f,h,b)=>h in f?ymt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,PJ=(f,h,b,w)=>{for(var m=w>1?void 0:w?VXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&ymt(h,b,m),m},aS=(f,h)=>(b,w)=>h(b,w,f),UXt=(f,h,b)=>GXt(f,h+"",b);let VL=class extends de.MouseListener{constructor(f,h,b,w,m,P,g){super(),this.mouseTool=f,this.mousePositionTracker=h,this.modelFactory=b,this.actionDispatcher=w,this.commandStack=m,this.snapper=P,this.logger=g}element;previewOpacity=.5;insertIntoGraphRootAfterCreation=!0;elementType="";async createElement(){const f=this.createElementSchema();f.opacity??=this.previewOpacity;const h=this.modelFactory.createElement(f);return this.insertIntoGraphRootAfterCreation&&(await this.commandStack.executeAll([])).add(h),h}enable(f){this.elementType=f,this.mouseTool.register(this),this.createElement().then(h=>{this.element=h,this.logger.log(this,"Created element",h),this.mousePositionTracker.lastPositionOnDiagram&&this.updateElementPosition(this.mousePositionTracker.lastPositionOnDiagram)}).catch(h=>{this.logger.error(this,"Failed to create element",h)})}disable(){if(this.mouseTool.deregister(this),this.element){let f;try{f=this.element.root}catch{}this.element.parent?.remove(this.element),this.element=void 0,f&&this.commandStack.update(f),this.logger.info(this,"Cancelled element creation")}}finishPlacingElement(){if(this.element){const f=this.element.parent;f.remove(this.element),this.element.opacity=1,this.actionDispatcher.dispatch(QX.create(this.element,f)),this.logger.log(this,"Finalized element creation of element",this.element),this.element=void 0}this.disable()}updateElementPosition(f){if(!this.element)return;const h={...f};if(this.element instanceof de.SEdgeImpl)this.element.targetId&&this.element.target&&(mg.Point.equals(this.element.target.position,h)||(this.element.target.position=h,this.commandStack.update(this.element.root)));else{const b=this.element.position;if(this.element instanceof de.SNodeImpl){const{width:m,height:P}=this.element.bounds;h.x-=m/2,h.y-=P/2}else if(this.element instanceof de.SPortImpl){const m=this.element.parent;m instanceof de.SNodeImpl&&(h.x-=m.position.x,h.y-=m.position.y)}const w=this.snapper.snap(h,this.element);mg.Point.equals(b,w)||(this.element.position=w,this.commandStack.update(this.element.root))}}mouseMove(f,h){const b=this.calculateMousePosition(f,h);return this.updateElementPosition(b),[]}mouseDown(f,h){return h.preventDefault(),this.finishPlacingElement(),[de.CommitModelAction.create()]}calculateMousePosition(f,h){const b=f.root,w=m=>{const P=b.scroll[m],E=(m==="x"?h.offsetX:h.offsetY)/b.zoom;return P+E};return{x:w("x"),y:w("y")}}};VL=PJ([vr(),aS(0,Et(de.MouseTool)),aS(1,Et(de.MousePositionTracker)),aS(2,Et(de.TYPES.IModelFactory)),aS(3,Et(de.TYPES.IActionDispatcher)),aS(4,Et(de.TYPES.ICommandStack)),aS(5,Et(de.TYPES.ISnapper)),aS(6,Et(de.TYPES.ILogger))],VL);var QX;(f=>{f.TYPE="addElementToGraph";function h(b,w){return{kind:f.TYPE,element:b,parent:w}}f.create=h})(QX||(QX={}));let ZX=class{constructor(f){this.action=f}execute(f){return this.action.parent.add(this.action.element),f.root}undo(f){return this.action.element.parent.remove(this.action.element),f.root}redo(f){return this.execute(f)}};UXt(ZX,"KIND",QX.TYPE);ZX=PJ([vr(),aS(0,Et(de.TYPES.Action))],ZX);let GL=class extends de.KeyListener{tools=[];keyDown(f,h){return h.key==="Escape"&&this.disableAllTools(),[]}disableAllTools(){this.tools.forEach(f=>f.disable())}};PJ([cJ(Db.CreationTool)],GL.prototype,"tools",2);GL=PJ([vr()],GL);var WXt=Object.getOwnPropertyDescriptor,YXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?WXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let UL=class extends VL{edgeTargetElement;insertIntoGraphRootAfterCreation=!1;createElementSchema(){return{id:L3(),type:this.elementType,sourceId:"",targetId:""}}disable(){this.edgeTargetElement&&(this.edgeTargetElement.parent?.remove(this.edgeTargetElement),this.edgeTargetElement=void 0),super.disable()}mouseDown(f,h){if(!this.element)return[];const b=this.findConnectable(f);if(!b)return[];if(this.element.sourceId){if(b.canConnect(this.element,"target")){this.element.targetId=b.id;const w=super.mouseDown(b,h);return this.disable(),w}}else if(b.canConnect(this.element,"source")){this.element.sourceId=b.id;const w=f.root;w.add(this.element),this.edgeTargetElement=this.modelFactory.createElement({id:L3(),type:"empty-node",position:this.calculateMousePosition(f,h)}),w.add(this.edgeTargetElement),this.element.targetId=this.edgeTargetElement.id}return[]}findConnectable(f){if(de.isConnectable(f))return f;if("parent"in f&&f.parent)return this.findConnectable(f.parent)}};UL=YXt([vr()],UL);var XXt=Object.getOwnPropertyDescriptor,JXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?XXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let WL=class extends VL{createElementSchema(){const f=this.elementType.replace("node:",""),h=f.charAt(0).toUpperCase()+f.slice(1);return{id:L3(),type:this.elementType,text:h,ports:[],labels:[]}}};WL=JXt([vr()],WL);var QXt=Object.getOwnPropertyDescriptor,ZXt=(f,h,b,w)=>{for(var m=w>1?void 0:w?QXt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let YL=class extends VL{createElementSchema(){return{id:L3(),type:this.elementType,opacity:0}}mouseMove(f,h){if(!this.element)return[];const b=this.element.parent,w=this.findNodeElement(f);return w?b!==w&&f instanceof de.SChildElementImpl&&(this.element.opacity=this.previewOpacity,b.remove(this.element),f.add(this.element),this.commandStack.update(this.element.root)):b!==f.root&&(this.element.opacity=0,b.remove(this.element),f.root.add(this.element),this.commandStack.update(this.element.root)),super.mouseMove(f,h)}mouseDown(f,h){return this.element?.parent===f.root?(this.disable(),[de.CommitModelAction.create()]):super.mouseDown(f,h)}findNodeElement(f){if(f.type.startsWith("node"))return f;if(f instanceof de.SChildElementImpl&&f.parent instanceof de.SShapeElementImpl)return this.findNodeElement(f.parent)}};YL=ZXt([vr()],YL);var eJt=Object.defineProperty,tJt=Object.getOwnPropertyDescriptor,nJt=(f,h,b)=>h in f?eJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,iJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?tJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},uS=(f,h)=>(b,w)=>h(b,w,f),rJt=(f,h,b)=>nJt(f,h+"",b);let A3=class extends de.AbstractUIExtension{constructor(f,h,b,w,m,P,g){super(),this.actionDispatcher=f,this.patcherProvider=h,this.nodeCreationTool=b,this.edgeCreationTool=w,this.portCreationTool=m,this.allTools=P,this.editorModeController=g}keyboardShortcuts=new Map;id(){return A3.ID}containerClass(){return"tool-palette"}initializeContents(f){f.classList.add("ui-float"),document.addEventListener("keydown",h=>{Pl.matchesKeystroke(h,"Escape")&&this.disableTools()}),this.addTool(f,this.nodeCreationTool,"Storage node",h=>h.enable("node:storage"),de.svg("g",null,de.svg("rect",{x:"10%",y:"20%",width:"80%",height:"60%","stroke-width":"1"}),de.svg("line",{x1:"25%",y1:"20%",x2:"25%",y2:"80%","stroke-width":"1"}),de.svg("text",{x:"55%",y:"50%"},"Sto")),"Digit1"),this.addTool(f,this.nodeCreationTool,"Input/Output node",h=>h.enable("node:input-output"),de.svg("g",null,de.svg("rect",{x:"10%",y:"20%",width:"80%",height:"60%","stroke-width":"1"}),de.svg("text",{x:"50%",y:"50%"},"IO")),"Digit2"),this.addTool(f,this.nodeCreationTool,"Function node",h=>h.enable("node:function"),de.svg("g",null,de.svg("rect",{x:"10%",y:"20%",width:"80%",height:"60%",rx:"20%",ry:"20%"}),de.svg("line",{x1:"10%",y1:"65%",x2:"90%",y2:"65%"}),de.svg("text",{x:"50%",y:"44%"},"Fun")),"Digit3"),this.addTool(f,this.edgeCreationTool,"Edge",h=>h.enable("edge:arrow"),de.svg("g",null,de.svg("path",{d:"M 4,4 L 22,22","attrs-stroke-width":"2"}),de.svg("path",{d:"M 0,0 L -3,3 L 6,6 L 3,-3 Z",transform:"translate(22,22)","attrs-stroke-width":"2","class-fill":!0})),"Digit4"),this.addTool(f,this.portCreationTool,"Input port",h=>h.enable("port:dfd-input"),de.svg("g",null,de.svg("rect",{x:"25%",y:"25%",width:"50%",height:"50%"}),de.svg("text",{x:"50%",y:"50%"},"I")),"Digit5"),this.addTool(f,this.portCreationTool,"Output port",h=>h.enable("port:dfd-output"),de.svg("g",null,de.svg("rect",{x:"25%",y:"25%",width:"50%",height:"50%"}),de.svg("text",{x:"50%",y:"50%"},"O")),"Digit6"),f.classList.add("tool-palette")}addTool(f,h,b,w,m,P){const g=document.createElement("div");g.classList.add("tool"),g.addEventListener("click",()=>{g.classList.contains("active")||this.editorModeController?.isReadOnly()?(h.disable(),g.classList.remove("active")):(this.disableTools(),w(h),g.classList.add("active"))}),f.appendChild(g);const E=document.createElement("div");g.appendChild(E);const C=de.svg("svg",{width:"32",height:"32"},de.svg("title",null,b),m);this.patcherProvider.patcher(E,C);const T=document.createElement("kbd");T.classList.add("shortcut"),T.textContent=P?.replace("Key","").replace("Digit","")??"",g.appendChild(T),P&&(this.keyboardShortcuts.set(P,()=>{g.click()}),P.startsWith("Digit")&&this.keyboardShortcuts.set(P.replace("Digit","Numpad"),()=>{g.click()}))}disableTools(){this.allTools.forEach(f=>f.disable()),this.markAllToolsInactive()}markAllToolsInactive(){this.containerElement&&this.containerElement.childNodes.forEach(f=>{f instanceof HTMLElement&&f.classList.remove("active")})}handle(f){f.kind===de.CommitModelAction.KIND&&this.markAllToolsInactive()}keyDown(f,h){return this.keyboardShortcuts.forEach((b,w)=>{Pl.matchesKeystroke(h,w)&&b()}),[]}keyUp(){return[]}};rJt(A3,"ID","tool-palette");A3=iJt([vr(),uS(0,Et(de.TYPES.IActionDispatcher)),uS(1,Et(de.TYPES.PatcherProvider)),uS(2,Et(WL)),uS(3,Et(UL)),uS(4,Et(YL)),uS(5,cJ(Db.CreationTool)),uS(6,Et(sc.Mode)),uS(6,EVt())],A3);const oJt=new xf((f,h,b,w)=>{const m={bind:f,unbind:h,isBound:b,rebind:w};f(GL).toSelf().inSingletonScope(),f(de.TYPES.KeyListener).toService(GL),de.configureModelElement(m,"empty-node",de.SNodeImpl,de.EmptyView),de.configureCommand(m,ZX),f(WL).toSelf().inSingletonScope(),f(Db.CreationTool).toService(WL),f(UL).toSelf().inSingletonScope(),f(Db.CreationTool).toService(UL),f(YL).toSelf().inSingletonScope(),f(Db.CreationTool).toService(YL),f(A3).toSelf().inSingletonScope(),de.configureActionHandler(m,de.CommitModelAction.KIND,A3),f(de.TYPES.IUIExtension).toService(A3),f(de.TYPES.KeyListener).toService(A3),f(Db.DefaultUIElement).toService(A3)});function cJt(f,h){return sJt(kX(f,h,0,h),f)}function kX(f,h,b,w,m=!1,P=!1){if(!P&&f[b].column==1){if(w.some(C=>C.word.verify(f[b].text).length===0))return kX(f,w,b,w,m,!0);if(m||h.length==0)return kX(f,[...w,...h],b,w,m,!0)}let g=[];if(b==f.length-1){for(const E of h)g=g.concat(E.word.completionOptions(f[b].text));return g}for(const E of h)E.word.verify(f[b].text).length>0||(g=g.concat(kX(f,E.children,b+1,w,E.canBeFinal||!1)));return g}function sJt(f,h){const b=[],w=f.filter((m,P)=>f.findIndex(g=>g.insertText===m.insertText&&g.kind===m.kind)===P);for(const m of w){const P=uJt(m,h);b.push(P)}return b}function uJt(f,h){const b=h.length==0?1:h[h.length-1].column,w=h.length==0?1:h[h.length-1].line;return{insertText:f.insertText,kind:f.kind,label:f.label??f.insertText,insertTextRules:f.insertTextRules,range:new Kzt(w,b+(f.startOffset??0),w,b+(f.startOffset??0))}}class _mt{constructor(h){this.tree=h}triggerCharacters=[".","("," ",","];provideCompletionItems(h,b){const w=h.getLinesContent(),m=[];for(let C=0;C{for(var m=w>1?void 0:w?aJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let eJ=class{selectedTfgs=new Set;getSelectedTfgs(){return this.selectedTfgs}clearTfgs(){this.selectedTfgs=new Set}addTfg(f){this.selectedTfgs.add(f)}constructor(){}};eJ=lJt([vr()],eJ);var fJt=Object.getOwnPropertyDescriptor,hJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?fJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},Ive=(f,h)=>(b,w)=>h(b,w,f);function Tve(f,h,b,w){w.clearTfgs(),b.setSelectedConstraints(f);const m=h.children.filter(P=>mg.getBasicType(P)==="node");return f.length===0?(m.forEach(P=>{P.setColor("var(--color-primary)")}),h):(m.forEach(P=>{const g=P.annotations;let E=!1;b.selectedContainsAllConstraints()&&g.forEach(C=>{C.message.startsWith("Constraint")&&(E=!0,P.setColor(C.color))}),f.forEach(C=>{g.forEach(T=>{T.message.startsWith("Constraint ")&&T.message.split(" ")[1]===C&&(P.setColor(T.color),E=!0,w.addTfg(T.tfg))})}),E||P.setColor("var(--color-primary)")}),m.forEach(P=>{P.annotations.filter(E=>w.getSelectedTfgs().has(E.tfg)).length>0&&P.setColor("var(--color-highlighted)",!1)}),h)}var gS;(f=>{f.KIND="select-constraints";function h(b){return{kind:f.KIND,selectedConstraintNames:b}}f.create=h})(gS||(gS={}));let dye=class extends de.Command{constructor(f,h,b){super(),this.action=f,this.constraintRegistry=h,this.tfgManager=b}static KIND=gS.KIND;oldConstraintSelection;execute(f){return this.oldConstraintSelection=this.constraintRegistry.getSelectedConstraints(),Tve(this.action.selectedConstraintNames,f.root,this.constraintRegistry,this.tfgManager)}undo(f){return Tve(this.oldConstraintSelection??[],f.root,this.constraintRegistry,this.tfgManager)}redo(f){return Tve(this.action.selectedConstraintNames,f.root,this.constraintRegistry,this.tfgManager)}};dye=hJt([Ive(0,Et(de.TYPES.Action)),Ive(1,Et(Qd)),Ive(2,Et(eJ))],dye);var dJt=Object.defineProperty,gJt=Object.getOwnPropertyDescriptor,bJt=(f,h,b)=>h in f?dJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,pJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?gJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},sA=(f,h)=>(b,w)=>h(b,w,f),wJt=(f,h,b)=>bJt(f,h+"",b);let k3=class extends RM{constructor(f,h,b,w,m,P){super("left","up"),this.constraintRegistry=f,this.dispatcher=w,this.editorModeController=m,this.themeManager=P,this.constraintRegistry=f,m.registerListener(()=>{this.editor?.updateOptions({readOnly:m.isReadOnly()})}),f.onUpdate(()=>{this.editor&&this.editor.getValue()!==this.constraintRegistry.getConstraintsAsText()&&this.editor.setValue(this.constraintRegistry.getConstraintsAsText()||"")}),this.tree=UX.buildTree(b,h)}editorContainer=document.createElement("div");validationLabel=document.createElement("div");editor;optionsMenu;ignoreCheckboxChange=!1;tree;id(){return k3.ID}containerClass(){return k3.ID}initializeHeaderContent(f){f.id="constraint-menu-expand-title",f.innerText="Constraints",f.appendChild(this.buildOptionsButton())}initializeHidableContent(f){const h=document.createElement("div");h.id="constraint-menu-content",h.appendChild(this.buildConstraintInputWrapper()),f.appendChild(h)}initializeContents(f){super.initializeContents(f),f.appendChild(this.buildRunButton())}buildConstraintInputWrapper(){const f=document.createElement("div");f.id="constraint-menu-input",f.appendChild(this.editorContainer),this.validationLabel.id="validation-label",this.validationLabel.classList.add("valid"),this.validationLabel.innerText="Valid constraints",f.appendChild(this.validationLabel);const h=document.createElement("div");h.innerHTML="Press CTRL+Space for autocompletion",f.appendChild(h),wh.register({id:TX}),wh.setMonarchTokensProvider(TX,PYt),wh.registerCompletionItemProvider(TX,new _mt(this.tree));const b=this.themeManager.getTheme()===DM.DARK?"vs-dark":"vs";return this.editor=RX.create(this.editorContainer,{minimap:{enabled:!1},folding:!1,wordBasedSuggestions:"off",scrollBeyondLastLine:!1,theme:b,wordWrap:"on",language:TX,scrollBeyondLastColumn:0,scrollbar:{horizontal:"hidden",vertical:"auto",alwaysConsumeMouseWheel:!1},lineNumbers:"on",readOnly:this.editorModeController.isReadOnly()}),this.editor.setValue(this.constraintRegistry.getConstraintsAsText()||""),this.editor.onDidChangeModelContent(()=>{if(!this.editor)return;const w=this.editor?.getModel();if(!w)return;this.constraintRegistry.setConstraints(w.getLinesContent());const m=w.getLinesContent(),P=[];if(!(m.length==0||m.length==1&&m[0]==="")){const E=f2e(aN(m),this.tree);P.push(...E.map(C=>({severity:z0t.Error,startLineNumber:C.line,startColumn:C.startColumn,endLineNumber:C.line,endColumn:C.endColumn,message:C.message})))}this.validationLabel.innerText=P.length==0?"Valid constraints":`Invalid constraints: ${P.length} errors`,this.validationLabel.classList.toggle("valid",P.length==0),RX.setModelMarkers(w,"constraint",P)}),f}buildRunButton(){const f=document.createElement("div");f.id="run-button-container";const h=document.createElement("button");return h.id="run-button",h.innerHTML="Run",h.onclick=()=>{this.dispatcher.dispatchAll([HL.create(),gS.create(this.constraintRegistry.getConstraintList().map(b=>b.name))])},f.appendChild(h),f}onBeforeShow(){this.resizeEditor()}resizeEditor(){const f=this.editor;if(!f)return;const h=f.getContentHeight(),w=100+f.getValue().split(` -`).reduce((T,M)=>Math.max(T,M.length),0)*8,m=(T,M)=>Math.min(M[1],Math.max(M[0],T)),P=[200,200],g=[500,750],E=m(h,P),C=m(w,g);f.layout({height:E,width:C})}switchTheme(f){this.editor?.updateOptions({theme:f==DM.DARK?"vs-dark":"vs"})}buildOptionsButton(){const f=document.createElement("button");return f.id="constraint-options-button",f.title="Filter…",f.innerHTML='',f.onclick=()=>this.toggleOptionsMenu(),f}toggleOptionsMenu(){if(this.optionsMenu!==void 0){this.optionsMenu.remove(),this.optionsMenu=void 0;return}this.optionsMenu=document.createElement("div"),this.optionsMenu.id="constraint-options-menu";const f=document.createElement("label");f.classList.add("options-item");const h=document.createElement("input");h.type="checkbox",h.value="ALL",h.checked=this.constraintRegistry.getConstraintList().map(m=>m.name).every(m=>this.constraintRegistry.getSelectedConstraints().includes(m)),h.onchange=()=>{if(this.optionsMenu){this.ignoreCheckboxChange=!0;try{h.checked?(this.optionsMenu.querySelectorAll("input[type=checkbox]").forEach(m=>{m!==h&&(m.checked=!0)}),this.dispatcher.dispatch(gS.create(this.constraintRegistry.getConstraintList().map(m=>m.name)))):(this.optionsMenu.querySelectorAll("input[type=checkbox]").forEach(m=>{m!==h&&(m.checked=!1)}),this.dispatcher.dispatch(gS.create([])))}finally{this.ignoreCheckboxChange=!1}}},f.appendChild(h),f.appendChild(document.createTextNode("All constraints")),this.optionsMenu.appendChild(f),this.constraintRegistry.getConstraintList().forEach(m=>{const P=document.createElement("label");P.classList.add("options-item");const g=document.createElement("input");g.type="checkbox",g.value=m.name,g.checked=this.constraintRegistry.getSelectedConstraints().includes(g.value),g.onchange=()=>{if(this.ignoreCheckboxChange)return;const E=this.optionsMenu.querySelectorAll("input[type=checkbox]"),C=Array.from(E).filter(M=>M!==h),T=C.filter(M=>M.checked).map(M=>M.value);h.checked=C.every(M=>M.checked),this.dispatcher.dispatch(gS.create(T))},P.appendChild(g),P.appendChild(document.createTextNode(m.name)),this.optionsMenu.appendChild(P)}),this.editorContainer.appendChild(this.optionsMenu);const w=m=>{const P=m.target;if(!this.optionsMenu||this.optionsMenu.contains(P))return;const g=document.getElementById("constraint-options-button");g&&g.contains(P)||(this.optionsMenu.remove(),this.optionsMenu=void 0,document.removeEventListener("click",w))};document.addEventListener("click",w)}};wJt(k3,"ID","constraint-menu");k3=pJt([vr(),sA(0,Et(Qd)),sA(1,Et(Zd)),sA(2,Et(de.TYPES.ModelSource)),sA(3,Et(de.TYPES.IActionDispatcher)),sA(4,Et(sc.Mode)),sA(5,Et(sc.Theme))],k3);const mJt=new xf((f,h,b)=>{f(Qd).toSelf().inSingletonScope(),f(k3).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(k3),f(Db.DefaultUIElement).toService(k3),f(fmt).toService(k3),f(eJ).toSelf().inSingletonScope(),de.configureCommand({bind:f,isBound:b},dye)});var vJt=Object.defineProperty,yJt=Object.getOwnPropertyDescriptor,_Jt=(f,h,b)=>h in f?vJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,EJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?yJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},TL=(f,h)=>(b,w)=>h(b,w,f),SJt=(f,h,b)=>_Jt(f,h+"",b);let $3=class extends de.AbstractUIExtension{constructor(f,h,b,w,m){super(),this.labelTypeRegistry=f,this.editorModeController=h,this.themeManager=b,this.viewerOptions=w,this.domHelper=m,h.registerListener(()=>{this.editor?.updateOptions({readOnly:this.editorModeController.isReadOnly()})})}port;tree;editorContainer=document.createElement("div");validationLabel=document.createElement("div");unavailableInputsLabel=document.createElement("div");editor;id(){return $3.ID}containerClass(){return $3.ID}initializeContents(f){f.classList.add("ui-float"),f.appendChild(this.unavailableInputsLabel),this.unavailableInputsLabel.classList.add("unavailable-inputs"),f.appendChild(this.editorContainer),this.editorContainer.classList.add("monaco-container"),f.appendChild(this.validationLabel),this.validationLabel.classList.add("validation-label");const h=document.createElement("div");h.innerHTML="Press CTRL+Space for autocompletion",f.appendChild(h),wh.register({id:IX}),wh.setMonarchTokensProvider(IX,vYt);const b=this.themeManager.getTheme()===DM.DARK?"vs-dark":"vs";this.editor=RX.create(this.editorContainer,{minimap:{enabled:!1},lineNumbersMinChars:3,folding:!1,wordBasedSuggestions:"off",scrollBeyondLastLine:!1,theme:b,language:IX,readOnly:this.editorModeController.isReadOnly()}),this.editor.onDidChangeModelContent(()=>{this.validate()}),this.editor.onDidContentSizeChange(()=>{this.resizeEditor()}),this.labelTypeRegistry?.onUpdate(()=>{setTimeout(()=>{this.editor&&this.port&&this.editor?.setValue(this.port?.getBehavior())},0)}),f.addEventListener("keydown",w=>{Pl.matchesKeystroke(w,"Escape")&&this.hide()})}onBeforeShow(f,h,...b){if(b.length!==1)throw new Error("Expected exactly one context element id which should be the port that shall be shown in the UI.");this.setPort(h.index.getById(b[0]),f),this.checkForUnavailableInputs(),this.resizeEditor(),this.editor?.focus()}setPort(f,h){this.port=f;const b=de.getAbsoluteClientBounds(this.port,this.domHelper,this.viewerOptions);if(h.style.left=`${b.x}px`,h.style.top=`${b.y}px`,this.tree=NL.buildTree(f,this.labelTypeRegistry),wh.registerCompletionItemProvider(IX,new _mt(this.tree)),!this.editor)throw new Error("Expected editor to be initialized");this.editor.setValue(f.getBehavior())}checkForUnavailableInputs(){if(!this.port)throw new Error("Expected Assignment Edit Ui to be assigned to a port");const f=this.port.parent;if(!(f instanceof jy))throw new Error("Expected parent to be a DfdNodeImpl.");const b=f.getAvailableInputs().filter(w=>w===void 0).length;if(b>0){const w=b>1?`There are ${b} inputs that don't have a named edge and cannot be used`:`There is ${b} input that doesn't have a named edge and cannot be used`;this.unavailableInputsLabel.innerText=w,this.unavailableInputsLabel.style.display="block"}else this.unavailableInputsLabel.innerText="",this.unavailableInputsLabel.style.display="none"}resizeEditor(){if(!this.editor)return;const f=this.editor.getContentHeight(),b=100+this.editor.getValue().split(` -`).reduce((C,T)=>Math.max(C,T.length),0)*8,w=(C,T)=>Math.min(T[1],Math.max(T[0],C)),m=[100,350],P=[275,650],g=w(f,m),E=w(b,P);this.editor.layout({height:g,width:E})}validate(){if(!this.editor||!this.tree)return;const f=this.editor?.getModel();if(!f)return;const h=f.getLinesContent();this.port?.setBehavior(h.join(` -`));const b=[];if(!(h.length==0||h.length==1&&h[0]==="")){const m=f2e(aN(h),this.tree);b.push(...m.map(P=>({severity:z0t.Error,startLineNumber:P.line,startColumn:P.startColumn,endLineNumber:P.line,endColumn:P.endColumn,message:P.message})))}b.length==0?(this.validationLabel.innerText="Assignments are valid",this.validationLabel.classList.remove("validation-error"),this.validationLabel.classList.add("validation-success")):(this.validationLabel.innerText=`Assignments are invalid: ${b.length} error${b.length===1?"":"s"}.`,this.validationLabel.classList.remove("validation-success"),this.validationLabel.classList.add("validation-error")),RX.setModelMarkers(f,"constraint",b)}};SJt($3,"ID","assignment-edit-ui");$3=EJt([vr(),TL(0,Et(Zd)),TL(1,Et(sc.Mode)),TL(2,Et(sc.Theme)),TL(3,Et(de.TYPES.ViewerOptions)),TL(4,Et(de.TYPES.DOMHelper))],$3);var PJt=Object.getOwnPropertyDescriptor,MJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?PJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m};let gye=class extends de.MouseListener{editUIVisible=!1;mouseDown(f){return this.editUIVisible?(this.editUIVisible=!1,[de.SetUIExtensionVisibilityAction.create({extensionId:$3.ID,visible:!1,contextElementsId:[f.id]})]):[]}doubleClick(f){return f instanceof pA?(this.editUIVisible=!0,[de.SetUIExtensionVisibilityAction.create({extensionId:$3.ID,visible:!0,contextElementsId:[f.id]})]):[]}};gye=MJt([vr()],gye);const CJt=new xf(f=>{f($3).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService($3),f(de.TYPES.MouseListener).to(gye).inSingletonScope()});var IJt=Object.defineProperty,TJt=Object.getOwnPropertyDescriptor,b2e=(f,h,b,w)=>{for(var m=w>1?void 0:w?TJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=(w?g(h,b,m):g(m))||m);return w&&m&&IJt(h,b,m),m},jJt=(f,h)=>(b,w)=>h(b,w,f);let bye=class extends de.EditLabelMouseListener{constructor(f){super(),this.editorModeController=f}doubleClick(f,h){return this.editorModeController.isReadOnly()?[]:super.doubleClick(f,h)}};bye=b2e([vr(),jJt(0,Et(sc.Mode))],bye);let tJ=class extends de.DeleteElementCommand{editorModeController;execute(f){return this.editorModeController?.isReadOnly()?f.root:super.execute(f)}undo(f){return this.editorModeController?.isReadOnly()?f.root:super.undo(f)}redo(f){return this.editorModeController?.isReadOnly()?f.root:super.redo(f)}};b2e([Et(sc.Mode)],tJ.prototype,"editorModeController",2);tJ=b2e([vr()],tJ);const AJt=new xf((f,h,b,w)=>{w(de.EditLabelMouseListener).to(bye),w(de.DeleteElementCommand).to(tJ)}),OJt=new xf(f=>{f(Jd).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(Jd),f(Db.DefaultUIElement).toService(Jd)});class q0t extends de.KeyListener{keyDown(h,b){return Pl.matchesKeystroke(b,"Delete")?this.deleteSelectedElements(h):[]}deleteSelectedElements(h){const b=h.root.index,m=Array.from(b.all().filter(P=>de.isDeletable(P)&&de.isSelectable(P)&&P.selected).filter(P=>P.id!==P.root.id)).flatMap(P=>{const g=[P.id];return P instanceof de.SConnectableElementImpl&&g.push(...this.getEdgeIdsOfElement(P)),P instanceof de.SChildElementImpl&&P.children.forEach(E=>{g.push(E.id),E instanceof de.SConnectableElementImpl&&g.push(...this.getEdgeIdsOfElement(E))}),g});if(m.length>0){const P=[...new Set(m)];return[mg.DeleteElementAction.create(P),de.CommitModelAction.create()]}else return[]}getEdgeIdsOfElement(h){return[...h.incomingEdges.map(b=>b.id),...h.outgoingEdges.map(b=>b.id)]}}var DJt=Object.defineProperty,kJt=Object.getOwnPropertyDescriptor,RJt=(f,h,b)=>h in f?DJt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,Emt=(f,h,b,w)=>{for(var m=w>1?void 0:w?kJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},pye=(f,h)=>(b,w)=>h(b,w,f),xJt=(f,h,b)=>RJt(f,h+"",b);let wye=class{constructor(f){this.mousePositionTracker=f}copyElements=[];keyUp(){return[]}keyDown(f,h){return Pl.matchesKeystroke(h,"KeyC","ctrl")?this.copy(f.root):Pl.matchesKeystroke(h,"KeyV","ctrl")?this.paste():[]}copy(f){return this.copyElements=[],f.index.all().filter(h=>de.isSelected(h)).forEach(h=>this.copyElements.push(h)),[]}paste(){const f=this.mousePositionTracker.lastPositionOnDiagram??{x:0,y:0};return[nJ.create(this.copyElements,f),de.CommitModelAction.create()]}};wye=Emt([vr(),pye(0,Et(de.MousePositionTracker))],wye);var nJ;(f=>{f.KIND="paste-clipboard-elements";function h(b,w){return{kind:f.KIND,copyElements:b,targetPosition:w}}f.create=h})(nJ||(nJ={}));let iJ=class extends de.Command{constructor(f,h){super(),this.action=f,this.editorModeController=h}newElements=[];copyElementIdMapping={};computeElementOffset(){const f={x:1/0,y:1/0};return this.action.copyElements.forEach(h=>{h instanceof de.SNodeImpl&&(h.position.x{if(!(b instanceof de.SNodeImpl))return;const w=JSON.parse(JSON.stringify(f.modelFactory.createSchema(b)));"features"in w&&(w.features=void 0),w.id=L3(),this.copyElementIdMapping[b.id]=w.id,"position"in w&&(w.position=mg.Point.add(b.position,h)),b instanceof jy&&w.ports.forEach(P=>{const g=P.id;P.id=L3(),this.copyElementIdMapping[g]=P.id});const m=f.modelFactory.createElement(w,f.root);this.newElements.push(m)}),this.action.copyElements.forEach(b=>{if(!(b instanceof de.SEdgeImpl))return;const w=this.copyElementIdMapping[b.sourceId],m=this.copyElementIdMapping[b.targetId];if(!w||!m)return;const P=JSON.parse(JSON.stringify(f.modelFactory.createSchema(b)));Ey.preprocessModelSchema(P),P.id=L3(),this.copyElementIdMapping[b.id]=P.id,P.sourceId=w,P.targetId=m;const g=f.modelFactory.createElement(P);this.newElements.push(g)}),this.newElements.forEach(b=>{f.root.add(b)}),f.root}undo(f){return this.editorModeController?.isReadOnly()||this.newElements.forEach(h=>{f.root.remove(h)}),f.root}redo(f){return this.editorModeController?.isReadOnly()||this.newElements.forEach(h=>{f.root.add(h)}),f.root}};xJt(iJ,"KIND",nJ.KIND);iJ=Emt([vr(),pye(0,Et(de.TYPES.Action)),pye(1,Et(sc.Mode))],iJ);var LJt=Object.getOwnPropertyDescriptor,NJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?LJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},FJt=(f,h)=>(b,w)=>h(b,w,f);let mye=class extends de.KeyListener{constructor(f){super(),this.constraintRegistry=f}keyDown(f,h){return Pl.matchesKeystroke(h,"KeyO","ctrlCmd")?(h.preventDefault(),[BL.create(),de.CommitModelAction.create()]):Pl.matchesKeystroke(h,"KeyO","ctrlCmd","shift")?(h.preventDefault(),[dA.create(),de.CommitModelAction.create()]):Pl.matchesKeystroke(h,"KeyS","ctrlCmd")?(h.preventDefault(),[$L.create()]):Pl.matchesKeystroke(h,"KeyA","ctrlCmd","shift")?(h.preventDefault(),[HL.create(),gS.create(this.constraintRegistry.getConstraintList().map(b=>b.name)),de.CommitModelAction.create()]):[]}};mye=NJt([vr(),FJt(0,Et(Qd))],mye);class H0t extends de.KeyListener{keyDown(h,b){return Pl.matchesKeystroke(b,"KeyC","ctrlCmd","shift")?[mg.CenterAction.create([])]:Pl.matchesKeystroke(b,"KeyF","ctrlCmd","shift")?[mg.FitToScreenAction.create([h.root.id])]:[]}}const BJt=new xf((f,h,b,w)=>{f(q0t).toSelf().inSingletonScope(),f(de.TYPES.KeyListener).toService(q0t);const m={bind:f,unbind:h,isBound:b,rebind:w};f(de.TYPES.KeyListener).to(wye).inSingletonScope(),de.configureCommand(m,iJ),f(de.TYPES.KeyListener).to(mye).inSingletonScope(),f(H0t).toSelf().inSingletonScope(),w(de.CenterKeyboardListener).toService(H0t)});var $Jt=Object.defineProperty,KJt=Object.getOwnPropertyDescriptor,qJt=(f,h,b)=>h in f?$Jt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:b}):f[h]=b,HJt=(f,h,b,w)=>{for(var m=w>1?void 0:w?KJt(h,b):h,P=f.length-1,g;P>=0;P--)(g=f[P])&&(m=g(m)||m);return m},zJt=(f,h)=>(b,w)=>h(b,w,f),VJt=(f,h,b)=>qJt(f,h+"",b);let mS=class extends RM{constructor(f){super("left","up"),this.violationService=f}id(){return mS.ID}containerClass(){return mS.ID}initializeHeaderContent(f){f.innerText="Violation Summary"}initializeHidableContent(f){f.innerHTML=` -
    - - -
    -
    -
    -
    -

    - No violation data found. Run a Analysis first. -

    -
    -
    - -
    -
    -

    - No violation data found. Run a Analysis first, then enter your API key to generate an AI summary. -

    -
    -
    - - -
    -
    - -
    -
    -
    - `,this.violationService.onViolationsChanged(h=>{this.updateSimpleTab(f,h)}),this.setupTabLogic(f),this.setupGenerateLogic(f)}setupGenerateLogic(f){f.querySelector("#generate-btn").addEventListener("click",()=>{})}setupTabLogic(f){const h=f.querySelectorAll(".tab-btn"),b=f.querySelectorAll(".tab-pane");h.forEach(w=>{w.addEventListener("click",()=>{const m=w.getAttribute("data-tab");h.forEach(P=>P.classList.remove("active")),b.forEach(P=>P.classList.remove("active")),w.classList.add("active"),f.querySelector(`#${m}-summary`)?.classList.add("active")})})}updateSimpleTab(f,h){const b=f.querySelector("#simple-summary .summary-text");if(!b)return;if(h.length===0){b.innerHTML='

    No violations found. Everything looks good!

    ';return}const w=h.map(m=>` -
    - Violated constraint: ${m.constraint}
    - Flow of violation cause : ${m.violationCauseGraph.join(", ")} -
    - `).join("");b.innerHTML=` -
    Found ${h.length} issues:
    -
    ${w}
    - `}};VJt(mS,"ID","violation-ui");mS=HJt([vr(),zJt(0,Et(qL))],mS);const GJt=new xf(f=>{f(mS).toSelf().inSingletonScope(),f(de.TYPES.IUIExtension).toService(mS),f(Db.DefaultUIElement).toService(mS),f(qL).toSelf().inSingletonScope()}),p2e=new FX;de.loadDefaultModules(p2e,{exclude:[de.labelEditUiModule]});p2e.load(GUt,fYt,lYt,jYt,PXt,XYt,MXt,RXt,R3.elkLayoutModule,LXt,NXt,zXt,oJt,mJt,CJt,AJt,OJt,BJt,GJt);const UJt=p2e.getAll(OL);for(const f of UJt)f.run(); diff --git a/deploy/online-shop/assets/index-CX3bR72r.css b/deploy/online-shop/assets/index-CX3bR72r.css deleted file mode 100644 index 1817db48..00000000 --- a/deploy/online-shop/assets/index-CX3bR72r.css +++ /dev/null @@ -1 +0,0 @@ -.sprotty{padding:0;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.sprotty-root{position:relative}.sprotty-hidden{display:block;position:absolute;width:0px;height:0px}.sprotty-popup{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;position:absolute;background:#fff;border-radius:5px;border:1px solid;max-width:400px;min-width:100px}.sprotty-popup>div{margin:10px}.sprotty-popup-closed{display:none}.sprotty-projection-bar.horizontal{position:absolute;width:100%;height:20px;left:0;bottom:0}.sprotty-projection-bar.vertical{position:absolute;width:20px;height:100%;right:0;top:0}.sprotty-viewport{z-index:1;border-style:solid;border-width:2px}.sprotty-projection-bar.horizontal .sprotty-projection,.sprotty-projection-bar.horizontal .sprotty-viewport{position:absolute;height:100%;top:0}.sprotty-projection-bar.vertical .sprotty-projection,.sprotty-projection-bar.vertical .sprotty-viewport{position:absolute;width:100%;left:0}@keyframes spin{to{transform:rotate(360deg)}}.animation-spin{animation:spin 1.5s linear infinite}.sprotty-missing{stroke-width:1;stroke:red;fill:red;font-size:14pt;text-anchor:start}.sprotty-junction{stroke:#000;stroke-width:1;fill:#fff}.ui-float{position:absolute;border-radius:10px;background-color:var(--color-primary)}kbd{background-color:var(--color-primary);color:var(--color-foreground);border-radius:3px;border:1px solid var(--color-foreground);box-shadow:0 1px 1px var(--color-foreground),0 2px 0 0 var(--color-background) inset;display:inline-block;font-size:.85em;font-weight:700;line-height:1;padding:2px 4px;white-space:nowrap}body{background-color:var(--color-background);color:var(--color-foreground);padding:0;margin:0;overflow:hidden}#sprotty{position:relative;height:100vh;width:100vw;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:0}svg.sprotty-graph{width:100%;height:100%;outline:none}.sprotty-hidden{display:none}:root{--color-foreground: #000;--color-background: #fff;--color-primary: #dfdfdf;--color-spacer: #e5e5e5;--color-error: #f00;--color-valid: #00b600;--color-highlighted: #77777a;--color-tool-palette-hover: #ccc;--color-tool-palette-selected: #bbb;--dark-mode: 0}:root[data-theme=dark]{--color-foreground: #fff;--color-background: #1d1c22;--color-spacer: var(--color-background);--color-primary: #302e38;--color-valid: #0f0;--color-tool-palette-hover: #f00;--color-tool-palette-selected: #f00;--dark-mode: 1}#sprotty[data-theme=dark] div{color-scheme:dark}@font-face{font-family:codicon;font-display:block;src:url(./codicon-BYm2YbZ6.ttf?c7330ef9199d97dc5b8aae3449a5dc27) format("truetype")}.codicon[class*=codicon-]{font: 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none;-ms-user-select:none}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:.5}.codicon-modifier-hidden{opacity:0}.codicon-loading{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.codicon-add:before{content:""}.codicon-plus:before{content:""}.codicon-gist-new:before{content:""}.codicon-repo-create:before{content:""}.codicon-lightbulb:before{content:""}.codicon-light-bulb:before{content:""}.codicon-repo:before{content:""}.codicon-repo-delete:before{content:""}.codicon-gist-fork:before{content:""}.codicon-repo-forked:before{content:""}.codicon-git-pull-request:before{content:""}.codicon-git-pull-request-abandoned:before{content:""}.codicon-record-keys:before{content:""}.codicon-keyboard:before{content:""}.codicon-tag:before{content:""}.codicon-git-pull-request-label:before{content:""}.codicon-tag-add:before{content:""}.codicon-tag-remove:before{content:""}.codicon-person:before{content:""}.codicon-person-follow:before{content:""}.codicon-person-outline:before{content:""}.codicon-person-filled:before{content:""}.codicon-source-control:before{content:""}.codicon-mirror:before{content:""}.codicon-mirror-public:before{content:""}.codicon-star:before{content:""}.codicon-star-add:before{content:""}.codicon-star-delete:before{content:""}.codicon-star-empty:before{content:""}.codicon-comment:before{content:""}.codicon-comment-add:before{content:""}.codicon-alert:before{content:""}.codicon-warning:before{content:""}.codicon-search:before{content:""}.codicon-search-save:before{content:""}.codicon-log-out:before{content:""}.codicon-sign-out:before{content:""}.codicon-log-in:before{content:""}.codicon-sign-in:before{content:""}.codicon-eye:before{content:""}.codicon-eye-unwatch:before{content:""}.codicon-eye-watch:before{content:""}.codicon-circle-filled:before{content:""}.codicon-primitive-dot:before{content:""}.codicon-close-dirty:before{content:""}.codicon-debug-breakpoint:before{content:""}.codicon-debug-breakpoint-disabled:before{content:""}.codicon-debug-hint:before{content:""}.codicon-terminal-decoration-success:before{content:""}.codicon-primitive-square:before{content:""}.codicon-edit:before{content:""}.codicon-pencil:before{content:""}.codicon-info:before{content:""}.codicon-issue-opened:before{content:""}.codicon-gist-private:before{content:""}.codicon-git-fork-private:before{content:""}.codicon-lock:before{content:""}.codicon-mirror-private:before{content:""}.codicon-close:before{content:""}.codicon-remove-close:before{content:""}.codicon-x:before{content:""}.codicon-repo-sync:before{content:""}.codicon-sync:before{content:""}.codicon-clone:before{content:""}.codicon-desktop-download:before{content:""}.codicon-beaker:before{content:""}.codicon-microscope:before{content:""}.codicon-vm:before{content:""}.codicon-device-desktop:before{content:""}.codicon-file:before{content:""}.codicon-more:before{content:""}.codicon-ellipsis:before{content:""}.codicon-kebab-horizontal:before{content:""}.codicon-mail-reply:before{content:""}.codicon-reply:before{content:""}.codicon-organization:before{content:""}.codicon-organization-filled:before{content:""}.codicon-organization-outline:before{content:""}.codicon-new-file:before{content:""}.codicon-file-add:before{content:""}.codicon-new-folder:before{content:""}.codicon-file-directory-create:before{content:""}.codicon-trash:before{content:""}.codicon-trashcan:before{content:""}.codicon-history:before{content:""}.codicon-clock:before{content:""}.codicon-folder:before{content:""}.codicon-file-directory:before{content:""}.codicon-symbol-folder:before{content:""}.codicon-logo-github:before{content:""}.codicon-mark-github:before{content:""}.codicon-github:before{content:""}.codicon-terminal:before{content:""}.codicon-console:before{content:""}.codicon-repl:before{content:""}.codicon-zap:before{content:""}.codicon-symbol-event:before{content:""}.codicon-error:before{content:""}.codicon-stop:before{content:""}.codicon-variable:before{content:""}.codicon-symbol-variable:before{content:""}.codicon-array:before{content:""}.codicon-symbol-array:before{content:""}.codicon-symbol-module:before{content:""}.codicon-symbol-package:before{content:""}.codicon-symbol-namespace:before{content:""}.codicon-symbol-object:before{content:""}.codicon-symbol-method:before{content:""}.codicon-symbol-function:before{content:""}.codicon-symbol-constructor:before{content:""}.codicon-symbol-boolean:before{content:""}.codicon-symbol-null:before{content:""}.codicon-symbol-numeric:before{content:""}.codicon-symbol-number:before{content:""}.codicon-symbol-structure:before{content:""}.codicon-symbol-struct:before{content:""}.codicon-symbol-parameter:before{content:""}.codicon-symbol-type-parameter:before{content:""}.codicon-symbol-key:before{content:""}.codicon-symbol-text:before{content:""}.codicon-symbol-reference:before{content:""}.codicon-go-to-file:before{content:""}.codicon-symbol-enum:before{content:""}.codicon-symbol-value:before{content:""}.codicon-symbol-ruler:before{content:""}.codicon-symbol-unit:before{content:""}.codicon-activate-breakpoints:before{content:""}.codicon-archive:before{content:""}.codicon-arrow-both:before{content:""}.codicon-arrow-down:before{content:""}.codicon-arrow-left:before{content:""}.codicon-arrow-right:before{content:""}.codicon-arrow-small-down:before{content:""}.codicon-arrow-small-left:before{content:""}.codicon-arrow-small-right:before{content:""}.codicon-arrow-small-up:before{content:""}.codicon-arrow-up:before{content:""}.codicon-bell:before{content:""}.codicon-bold:before{content:""}.codicon-book:before{content:""}.codicon-bookmark:before{content:""}.codicon-debug-breakpoint-conditional-unverified:before{content:""}.codicon-debug-breakpoint-conditional:before{content:""}.codicon-debug-breakpoint-conditional-disabled:before{content:""}.codicon-debug-breakpoint-data-unverified:before{content:""}.codicon-debug-breakpoint-data:before{content:""}.codicon-debug-breakpoint-data-disabled:before{content:""}.codicon-debug-breakpoint-log-unverified:before{content:""}.codicon-debug-breakpoint-log:before{content:""}.codicon-debug-breakpoint-log-disabled:before{content:""}.codicon-briefcase:before{content:""}.codicon-broadcast:before{content:""}.codicon-browser:before{content:""}.codicon-bug:before{content:""}.codicon-calendar:before{content:""}.codicon-case-sensitive:before{content:""}.codicon-check:before{content:""}.codicon-checklist:before{content:""}.codicon-chevron-down:before{content:""}.codicon-chevron-left:before{content:""}.codicon-chevron-right:before{content:""}.codicon-chevron-up:before{content:""}.codicon-chrome-close:before{content:""}.codicon-chrome-maximize:before{content:""}.codicon-chrome-minimize:before{content:""}.codicon-chrome-restore:before{content:""}.codicon-circle-outline:before{content:""}.codicon-circle:before{content:""}.codicon-debug-breakpoint-unverified:before{content:""}.codicon-terminal-decoration-incomplete:before{content:""}.codicon-circle-slash:before{content:""}.codicon-circuit-board:before{content:""}.codicon-clear-all:before{content:""}.codicon-clippy:before{content:""}.codicon-close-all:before{content:""}.codicon-cloud-download:before{content:""}.codicon-cloud-upload:before{content:""}.codicon-code:before{content:""}.codicon-collapse-all:before{content:""}.codicon-color-mode:before{content:""}.codicon-comment-discussion:before{content:""}.codicon-credit-card:before{content:""}.codicon-dash:before{content:""}.codicon-dashboard:before{content:""}.codicon-database:before{content:""}.codicon-debug-continue:before{content:""}.codicon-debug-disconnect:before{content:""}.codicon-debug-pause:before{content:""}.codicon-debug-restart:before{content:""}.codicon-debug-start:before{content:""}.codicon-debug-step-into:before{content:""}.codicon-debug-step-out:before{content:""}.codicon-debug-step-over:before{content:""}.codicon-debug-stop:before{content:""}.codicon-debug:before{content:""}.codicon-device-camera-video:before{content:""}.codicon-device-camera:before{content:""}.codicon-device-mobile:before{content:""}.codicon-diff-added:before{content:""}.codicon-diff-ignored:before{content:""}.codicon-diff-modified:before{content:""}.codicon-diff-removed:before{content:""}.codicon-diff-renamed:before{content:""}.codicon-diff:before{content:""}.codicon-diff-sidebyside:before{content:""}.codicon-discard:before{content:""}.codicon-editor-layout:before{content:""}.codicon-empty-window:before{content:""}.codicon-exclude:before{content:""}.codicon-extensions:before{content:""}.codicon-eye-closed:before{content:""}.codicon-file-binary:before{content:""}.codicon-file-code:before{content:""}.codicon-file-media:before{content:""}.codicon-file-pdf:before{content:""}.codicon-file-submodule:before{content:""}.codicon-file-symlink-directory:before{content:""}.codicon-file-symlink-file:before{content:""}.codicon-file-zip:before{content:""}.codicon-files:before{content:""}.codicon-filter:before{content:""}.codicon-flame:before{content:""}.codicon-fold-down:before{content:""}.codicon-fold-up:before{content:""}.codicon-fold:before{content:""}.codicon-folder-active:before{content:""}.codicon-folder-opened:before{content:""}.codicon-gear:before{content:""}.codicon-gift:before{content:""}.codicon-gist-secret:before{content:""}.codicon-gist:before{content:""}.codicon-git-commit:before{content:""}.codicon-git-compare:before{content:""}.codicon-compare-changes:before{content:""}.codicon-git-merge:before{content:""}.codicon-github-action:before{content:""}.codicon-github-alt:before{content:""}.codicon-globe:before{content:""}.codicon-grabber:before{content:""}.codicon-graph:before{content:""}.codicon-gripper:before{content:""}.codicon-heart:before{content:""}.codicon-home:before{content:""}.codicon-horizontal-rule:before{content:""}.codicon-hubot:before{content:""}.codicon-inbox:before{content:""}.codicon-issue-reopened:before{content:""}.codicon-issues:before{content:""}.codicon-italic:before{content:""}.codicon-jersey:before{content:""}.codicon-json:before{content:""}.codicon-bracket:before{content:""}.codicon-kebab-vertical:before{content:""}.codicon-key:before{content:""}.codicon-law:before{content:""}.codicon-lightbulb-autofix:before{content:""}.codicon-link-external:before{content:""}.codicon-link:before{content:""}.codicon-list-ordered:before{content:""}.codicon-list-unordered:before{content:""}.codicon-live-share:before{content:""}.codicon-loading:before{content:""}.codicon-location:before{content:""}.codicon-mail-read:before{content:""}.codicon-mail:before{content:""}.codicon-markdown:before{content:""}.codicon-megaphone:before{content:""}.codicon-mention:before{content:""}.codicon-milestone:before{content:""}.codicon-git-pull-request-milestone:before{content:""}.codicon-mortar-board:before{content:""}.codicon-move:before{content:""}.codicon-multiple-windows:before{content:""}.codicon-mute:before{content:""}.codicon-no-newline:before{content:""}.codicon-note:before{content:""}.codicon-octoface:before{content:""}.codicon-open-preview:before{content:""}.codicon-package:before{content:""}.codicon-paintcan:before{content:""}.codicon-pin:before{content:""}.codicon-play:before{content:""}.codicon-run:before{content:""}.codicon-plug:before{content:""}.codicon-preserve-case:before{content:""}.codicon-preview:before{content:""}.codicon-project:before{content:""}.codicon-pulse:before{content:""}.codicon-question:before{content:""}.codicon-quote:before{content:""}.codicon-radio-tower:before{content:""}.codicon-reactions:before{content:""}.codicon-references:before{content:""}.codicon-refresh:before{content:""}.codicon-regex:before{content:""}.codicon-remote-explorer:before{content:""}.codicon-remote:before{content:""}.codicon-remove:before{content:""}.codicon-replace-all:before{content:""}.codicon-replace:before{content:""}.codicon-repo-clone:before{content:""}.codicon-repo-force-push:before{content:""}.codicon-repo-pull:before{content:""}.codicon-repo-push:before{content:""}.codicon-report:before{content:""}.codicon-request-changes:before{content:""}.codicon-rocket:before{content:""}.codicon-root-folder-opened:before{content:""}.codicon-root-folder:before{content:""}.codicon-rss:before{content:""}.codicon-ruby:before{content:""}.codicon-save-all:before{content:""}.codicon-save-as:before{content:""}.codicon-save:before{content:""}.codicon-screen-full:before{content:""}.codicon-screen-normal:before{content:""}.codicon-search-stop:before{content:""}.codicon-server:before{content:""}.codicon-settings-gear:before{content:""}.codicon-settings:before{content:""}.codicon-shield:before{content:""}.codicon-smiley:before{content:""}.codicon-sort-precedence:before{content:""}.codicon-split-horizontal:before{content:""}.codicon-split-vertical:before{content:""}.codicon-squirrel:before{content:""}.codicon-star-full:before{content:""}.codicon-star-half:before{content:""}.codicon-symbol-class:before{content:""}.codicon-symbol-color:before{content:""}.codicon-symbol-constant:before{content:""}.codicon-symbol-enum-member:before{content:""}.codicon-symbol-field:before{content:""}.codicon-symbol-file:before{content:""}.codicon-symbol-interface:before{content:""}.codicon-symbol-keyword:before{content:""}.codicon-symbol-misc:before{content:""}.codicon-symbol-operator:before{content:""}.codicon-symbol-property:before{content:""}.codicon-wrench:before{content:""}.codicon-wrench-subaction:before{content:""}.codicon-symbol-snippet:before{content:""}.codicon-tasklist:before{content:""}.codicon-telescope:before{content:""}.codicon-text-size:before{content:""}.codicon-three-bars:before{content:""}.codicon-thumbsdown:before{content:""}.codicon-thumbsup:before{content:""}.codicon-tools:before{content:""}.codicon-triangle-down:before{content:""}.codicon-triangle-left:before{content:""}.codicon-triangle-right:before{content:""}.codicon-triangle-up:before{content:""}.codicon-twitter:before{content:""}.codicon-unfold:before{content:""}.codicon-unlock:before{content:""}.codicon-unmute:before{content:""}.codicon-unverified:before{content:""}.codicon-verified:before{content:""}.codicon-versions:before{content:""}.codicon-vm-active:before{content:""}.codicon-vm-outline:before{content:""}.codicon-vm-running:before{content:""}.codicon-watch:before{content:""}.codicon-whitespace:before{content:""}.codicon-whole-word:before{content:""}.codicon-window:before{content:""}.codicon-word-wrap:before{content:""}.codicon-zoom-in:before{content:""}.codicon-zoom-out:before{content:""}.codicon-list-filter:before{content:""}.codicon-list-flat:before{content:""}.codicon-list-selection:before{content:""}.codicon-selection:before{content:""}.codicon-list-tree:before{content:""}.codicon-debug-breakpoint-function-unverified:before{content:""}.codicon-debug-breakpoint-function:before{content:""}.codicon-debug-breakpoint-function-disabled:before{content:""}.codicon-debug-stackframe-active:before{content:""}.codicon-circle-small-filled:before{content:""}.codicon-debug-stackframe-dot:before{content:""}.codicon-terminal-decoration-mark:before{content:""}.codicon-debug-stackframe:before{content:""}.codicon-debug-stackframe-focused:before{content:""}.codicon-debug-breakpoint-unsupported:before{content:""}.codicon-symbol-string:before{content:""}.codicon-debug-reverse-continue:before{content:""}.codicon-debug-step-back:before{content:""}.codicon-debug-restart-frame:before{content:""}.codicon-debug-alt:before{content:""}.codicon-call-incoming:before{content:""}.codicon-call-outgoing:before{content:""}.codicon-menu:before{content:""}.codicon-expand-all:before{content:""}.codicon-feedback:before{content:""}.codicon-git-pull-request-reviewer:before{content:""}.codicon-group-by-ref-type:before{content:""}.codicon-ungroup-by-ref-type:before{content:""}.codicon-account:before{content:""}.codicon-git-pull-request-assignee:before{content:""}.codicon-bell-dot:before{content:""}.codicon-debug-console:before{content:""}.codicon-library:before{content:""}.codicon-output:before{content:""}.codicon-run-all:before{content:""}.codicon-sync-ignored:before{content:""}.codicon-pinned:before{content:""}.codicon-github-inverted:before{content:""}.codicon-server-process:before{content:""}.codicon-server-environment:before{content:""}.codicon-pass:before{content:""}.codicon-issue-closed:before{content:""}.codicon-stop-circle:before{content:""}.codicon-play-circle:before{content:""}.codicon-record:before{content:""}.codicon-debug-alt-small:before{content:""}.codicon-vm-connect:before{content:""}.codicon-cloud:before{content:""}.codicon-merge:before{content:""}.codicon-export:before{content:""}.codicon-graph-left:before{content:""}.codicon-magnet:before{content:""}.codicon-notebook:before{content:""}.codicon-redo:before{content:""}.codicon-check-all:before{content:""}.codicon-pinned-dirty:before{content:""}.codicon-pass-filled:before{content:""}.codicon-circle-large-filled:before{content:""}.codicon-circle-large:before{content:""}.codicon-circle-large-outline:before{content:""}.codicon-combine:before{content:""}.codicon-gather:before{content:""}.codicon-table:before{content:""}.codicon-variable-group:before{content:""}.codicon-type-hierarchy:before{content:""}.codicon-type-hierarchy-sub:before{content:""}.codicon-type-hierarchy-super:before{content:""}.codicon-git-pull-request-create:before{content:""}.codicon-run-above:before{content:""}.codicon-run-below:before{content:""}.codicon-notebook-template:before{content:""}.codicon-debug-rerun:before{content:""}.codicon-workspace-trusted:before{content:""}.codicon-workspace-untrusted:before{content:""}.codicon-workspace-unknown:before{content:""}.codicon-terminal-cmd:before{content:""}.codicon-terminal-debian:before{content:""}.codicon-terminal-linux:before{content:""}.codicon-terminal-powershell:before{content:""}.codicon-terminal-tmux:before{content:""}.codicon-terminal-ubuntu:before{content:""}.codicon-terminal-bash:before{content:""}.codicon-arrow-swap:before{content:""}.codicon-copy:before{content:""}.codicon-person-add:before{content:""}.codicon-filter-filled:before{content:""}.codicon-wand:before{content:""}.codicon-debug-line-by-line:before{content:""}.codicon-inspect:before{content:""}.codicon-layers:before{content:""}.codicon-layers-dot:before{content:""}.codicon-layers-active:before{content:""}.codicon-compass:before{content:""}.codicon-compass-dot:before{content:""}.codicon-compass-active:before{content:""}.codicon-azure:before{content:""}.codicon-issue-draft:before{content:""}.codicon-git-pull-request-closed:before{content:""}.codicon-git-pull-request-draft:before{content:""}.codicon-debug-all:before{content:""}.codicon-debug-coverage:before{content:""}.codicon-run-errors:before{content:""}.codicon-folder-library:before{content:""}.codicon-debug-continue-small:before{content:""}.codicon-beaker-stop:before{content:""}.codicon-graph-line:before{content:""}.codicon-graph-scatter:before{content:""}.codicon-pie-chart:before{content:""}.codicon-bracket-dot:before{content:""}.codicon-bracket-error:before{content:""}.codicon-lock-small:before{content:""}.codicon-azure-devops:before{content:""}.codicon-verified-filled:before{content:""}.codicon-newline:before{content:""}.codicon-layout:before{content:""}.codicon-layout-activitybar-left:before{content:""}.codicon-layout-activitybar-right:before{content:""}.codicon-layout-panel-left:before{content:""}.codicon-layout-panel-center:before{content:""}.codicon-layout-panel-justify:before{content:""}.codicon-layout-panel-right:before{content:""}.codicon-layout-panel:before{content:""}.codicon-layout-sidebar-left:before{content:""}.codicon-layout-sidebar-right:before{content:""}.codicon-layout-statusbar:before{content:""}.codicon-layout-menubar:before{content:""}.codicon-layout-centered:before{content:""}.codicon-target:before{content:""}.codicon-indent:before{content:""}.codicon-record-small:before{content:""}.codicon-error-small:before{content:""}.codicon-terminal-decoration-error:before{content:""}.codicon-arrow-circle-down:before{content:""}.codicon-arrow-circle-left:before{content:""}.codicon-arrow-circle-right:before{content:""}.codicon-arrow-circle-up:before{content:""}.codicon-layout-sidebar-right-off:before{content:""}.codicon-layout-panel-off:before{content:""}.codicon-layout-sidebar-left-off:before{content:""}.codicon-blank:before{content:""}.codicon-heart-filled:before{content:""}.codicon-map:before{content:""}.codicon-map-horizontal:before{content:""}.codicon-fold-horizontal:before{content:""}.codicon-map-filled:before{content:""}.codicon-map-horizontal-filled:before{content:""}.codicon-fold-horizontal-filled:before{content:""}.codicon-circle-small:before{content:""}.codicon-bell-slash:before{content:""}.codicon-bell-slash-dot:before{content:""}.codicon-comment-unresolved:before{content:""}.codicon-git-pull-request-go-to-changes:before{content:""}.codicon-git-pull-request-new-changes:before{content:""}.codicon-search-fuzzy:before{content:""}.codicon-comment-draft:before{content:""}.codicon-send:before{content:""}.codicon-sparkle:before{content:""}.codicon-insert:before{content:""}.codicon-mic:before{content:""}.codicon-thumbsdown-filled:before{content:""}.codicon-thumbsup-filled:before{content:""}.codicon-coffee:before{content:""}.codicon-snake:before{content:""}.codicon-game:before{content:""}.codicon-vr:before{content:""}.codicon-chip:before{content:""}.codicon-piano:before{content:""}.codicon-music:before{content:""}.codicon-mic-filled:before{content:""}.codicon-repo-fetch:before{content:""}.codicon-copilot:before{content:""}.codicon-lightbulb-sparkle:before{content:""}.codicon-robot:before{content:""}.codicon-sparkle-filled:before{content:""}.codicon-diff-single:before{content:""}.codicon-diff-multiple:before{content:""}.codicon-surround-with:before{content:""}.codicon-share:before{content:""}.codicon-git-stash:before{content:""}.codicon-git-stash-apply:before{content:""}.codicon-git-stash-pop:before{content:""}.codicon-vscode:before{content:""}.codicon-vscode-insiders:before{content:""}.codicon-code-oss:before{content:""}.codicon-run-coverage:before{content:""}.codicon-run-all-coverage:before{content:""}.codicon-coverage:before{content:""}.codicon-github-project:before{content:""}.codicon-map-vertical:before{content:""}.codicon-fold-vertical:before{content:""}.codicon-map-vertical-filled:before{content:""}.codicon-fold-vertical-filled:before{content:""}.codicon-go-to-search:before{content:""}.codicon-percentage:before{content:""}.codicon-sort-percentage:before{content:""}.codicon-attach:before{content:""}.codicon-go-to-editing-session:before{content:""}.codicon-edit-session:before{content:""}.codicon-code-review:before{content:""}.codicon-copilot-warning:before{content:""}.codicon-python:before{content:""}.codicon-copilot-large:before{content:""}.codicon-copilot-warning-large:before{content:""}.codicon-keyboard-tab:before{content:""}.codicon-copilot-blocked:before{content:""}.codicon-copilot-not-connected:before{content:""}.codicon-flag:before{content:""}.codicon-lightbulb-empty:before{content:""}.codicon-symbol-method-arrow:before{content:""}.codicon-copilot-unavailable:before{content:""}.codicon-repo-pinned:before{content:""}.codicon-keyboard-tab-above:before{content:""}.codicon-keyboard-tab-below:before{content:""}.codicon-git-pull-request-done:before{content:""}.codicon-mcp:before{content:""}.codicon-extensions-large:before{content:""}.codicon-layout-panel-dock:before{content:""}.codicon-layout-sidebar-left-dock:before{content:""}.codicon-layout-sidebar-right-dock:before{content:""}.codicon-copilot-in-progress:before{content:""}.codicon-copilot-error:before{content:""}.codicon-copilot-success:before{content:""}.codicon-chat-sparkle:before{content:""}.codicon-search-sparkle:before{content:""}.codicon-edit-sparkle:before{content:""}.codicon-copilot-snooze:before{content:""}.codicon-send-to-remote-agent:before{content:""}.codicon-comment-discussion-sparkle:before{content:""}.codicon-chat-sparkle-warning:before{content:""}.codicon-chat-sparkle-error:before{content:""}.codicon-collection:before{content:""}.codicon-new-collection:before{content:""}.codicon-thinking:before{content:""}.codicon-build:before{content:""}.codicon-comment-discussion-quote:before{content:""}.codicon-cursor:before{content:""}.codicon-eraser:before{content:""}.codicon-file-text:before{content:""}.codicon-quotes:before{content:""}.codicon-rename:before{content:""}.codicon-run-with-deps:before{content:""}.codicon-debug-connected:before{content:""}.codicon-strikethrough:before{content:""}.codicon-open-in-product:before{content:""}.codicon-index-zero:before{content:""}.codicon-agent:before{content:""}.codicon-edit-code:before{content:""}.codicon-repo-selected:before{content:""}.codicon-skip:before{content:""}.codicon-merge-into:before{content:""}.codicon-git-branch-changes:before{content:""}.codicon-git-branch-staged-changes:before{content:""}.codicon-git-branch-conflicts:before{content:""}.codicon-git-branch:before{content:""}.codicon-git-branch-create:before{content:""}.codicon-git-branch-delete:before{content:""}.codicon-search-large:before{content:""}.codicon-terminal-git-bash:before{content:""}.codicon-window-active:before{content:""}.codicon-forward:before{content:""}.codicon-download:before{content:""}.codicon-clockface:before{content:""}.codicon-unarchive:before{content:""}.codicon-session-in-progress:before{content:""}.codicon-collection-small:before{content:""}.codicon-vm-small:before{content:""}.codicon-cloud-small:before{content:""}.codicon-git-fetch:before{content:""}.codicon-vm-pending:before{content:""}.fa,.fa-brands,.fa-classic,.fa-regular,.fa-solid,.fab,.far,.fas{--_fa-family:var(--fa-family,var(--fa-style-family,"Font Awesome 7 Free"));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:var(--fa-display,inline-block);font-family:var(--_fa-family);font-feature-settings:normal;font-style:normal;font-synthesis:none;font-variant:normal;font-weight:var(--fa-style,900);line-height:1;text-align:center;text-rendering:auto;width:var(--fa-width,1.25em)}:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before{content:var(--fa)/""}@supports not (content:""/""){:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before{content:var(--fa)}}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-ul{list-style-type:none;margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0}.fa-ul>li{position:relative}.fa-li{inset-inline-start:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.0625em) var(--fa-border-style,solid) var(--fa-border-color,#eee);box-sizing:var(--fa-border-box-sizing,content-box);padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.fa-pull-end,.fa-pull-right{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media(prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation:none!important;transition:none!important}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{--fa-width:100%;inset:0;position:absolute;text-align:center;width:var(--fa-width);z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-0{--fa:"0"}.fa-1{--fa:"1"}.fa-2{--fa:"2"}.fa-3{--fa:"3"}.fa-4{--fa:"4"}.fa-5{--fa:"5"}.fa-6{--fa:"6"}.fa-7{--fa:"7"}.fa-8{--fa:"8"}.fa-9{--fa:"9"}.fa-exclamation{--fa:"!"}.fa-hashtag{--fa:"#"}.fa-dollar,.fa-dollar-sign,.fa-usd{--fa:"$"}.fa-percent,.fa-percentage{--fa:"%"}.fa-asterisk{--fa:"*"}.fa-add,.fa-plus{--fa:"+"}.fa-less-than{--fa:"<"}.fa-equals{--fa:"="}.fa-greater-than{--fa:">"}.fa-question{--fa:"?"}.fa-at{--fa:"@"}.fa-a{--fa:"A"}.fa-b{--fa:"B"}.fa-c{--fa:"C"}.fa-d{--fa:"D"}.fa-e{--fa:"E"}.fa-f{--fa:"F"}.fa-g{--fa:"G"}.fa-h{--fa:"H"}.fa-i{--fa:"I"}.fa-j{--fa:"J"}.fa-k{--fa:"K"}.fa-l{--fa:"L"}.fa-m{--fa:"M"}.fa-n{--fa:"N"}.fa-o{--fa:"O"}.fa-p{--fa:"P"}.fa-q{--fa:"Q"}.fa-r{--fa:"R"}.fa-s{--fa:"S"}.fa-t{--fa:"T"}.fa-u{--fa:"U"}.fa-v{--fa:"V"}.fa-w{--fa:"W"}.fa-x{--fa:"X"}.fa-y{--fa:"Y"}.fa-z{--fa:"Z"}.fa-faucet{--fa:""}.fa-faucet-drip{--fa:""}.fa-house-chimney-window{--fa:""}.fa-house-signal{--fa:""}.fa-temperature-arrow-down,.fa-temperature-down{--fa:""}.fa-temperature-arrow-up,.fa-temperature-up{--fa:""}.fa-trailer{--fa:""}.fa-bacteria{--fa:""}.fa-bacterium{--fa:""}.fa-box-tissue{--fa:""}.fa-hand-holding-medical{--fa:""}.fa-hand-sparkles{--fa:""}.fa-hands-bubbles,.fa-hands-wash{--fa:""}.fa-handshake-alt-slash,.fa-handshake-simple-slash,.fa-handshake-slash{--fa:""}.fa-head-side-cough{--fa:""}.fa-head-side-cough-slash{--fa:""}.fa-head-side-mask{--fa:""}.fa-head-side-virus{--fa:""}.fa-house-chimney-user{--fa:""}.fa-house-laptop,.fa-laptop-house{--fa:""}.fa-lungs-virus{--fa:""}.fa-people-arrows,.fa-people-arrows-left-right{--fa:""}.fa-plane-slash{--fa:""}.fa-pump-medical{--fa:""}.fa-pump-soap{--fa:""}.fa-shield-virus{--fa:""}.fa-sink{--fa:""}.fa-soap{--fa:""}.fa-stopwatch-20{--fa:""}.fa-shop-slash,.fa-store-alt-slash{--fa:""}.fa-store-slash{--fa:""}.fa-toilet-paper-slash{--fa:""}.fa-users-slash{--fa:""}.fa-virus{--fa:""}.fa-virus-slash{--fa:""}.fa-viruses{--fa:""}.fa-vest{--fa:""}.fa-vest-patches{--fa:""}.fa-arrow-trend-down{--fa:""}.fa-arrow-trend-up{--fa:""}.fa-arrow-up-from-bracket{--fa:""}.fa-austral-sign{--fa:""}.fa-baht-sign{--fa:""}.fa-bitcoin-sign{--fa:""}.fa-bolt-lightning{--fa:""}.fa-book-bookmark{--fa:""}.fa-camera-rotate{--fa:""}.fa-cedi-sign{--fa:""}.fa-chart-column{--fa:""}.fa-chart-gantt{--fa:""}.fa-clapperboard{--fa:""}.fa-clover{--fa:""}.fa-code-compare{--fa:""}.fa-code-fork{--fa:""}.fa-code-pull-request{--fa:""}.fa-colon-sign{--fa:""}.fa-cruzeiro-sign{--fa:""}.fa-display{--fa:""}.fa-dong-sign{--fa:""}.fa-elevator{--fa:""}.fa-filter-circle-xmark{--fa:""}.fa-florin-sign{--fa:""}.fa-folder-closed{--fa:""}.fa-franc-sign{--fa:""}.fa-guarani-sign{--fa:""}.fa-gun{--fa:""}.fa-hands-clapping{--fa:""}.fa-home-user,.fa-house-user{--fa:""}.fa-indian-rupee,.fa-indian-rupee-sign,.fa-inr{--fa:""}.fa-kip-sign{--fa:""}.fa-lari-sign{--fa:""}.fa-litecoin-sign{--fa:""}.fa-manat-sign{--fa:""}.fa-mask-face{--fa:""}.fa-mill-sign{--fa:""}.fa-money-bills{--fa:""}.fa-naira-sign{--fa:""}.fa-notdef{--fa:""}.fa-panorama{--fa:""}.fa-peseta-sign{--fa:""}.fa-peso-sign{--fa:""}.fa-plane-up{--fa:""}.fa-rupiah-sign{--fa:""}.fa-stairs{--fa:""}.fa-timeline{--fa:""}.fa-truck-front{--fa:""}.fa-try,.fa-turkish-lira,.fa-turkish-lira-sign{--fa:""}.fa-vault{--fa:""}.fa-magic-wand-sparkles,.fa-wand-magic-sparkles{--fa:""}.fa-wheat-alt,.fa-wheat-awn{--fa:""}.fa-wheelchair-alt,.fa-wheelchair-move{--fa:""}.fa-bangladeshi-taka-sign{--fa:""}.fa-bowl-rice{--fa:""}.fa-person-pregnant{--fa:""}.fa-home-lg,.fa-house-chimney{--fa:""}.fa-house-crack{--fa:""}.fa-house-medical{--fa:""}.fa-cent-sign{--fa:""}.fa-plus-minus{--fa:""}.fa-sailboat{--fa:""}.fa-section{--fa:""}.fa-shrimp{--fa:""}.fa-brazilian-real-sign{--fa:""}.fa-chart-simple{--fa:""}.fa-diagram-next{--fa:""}.fa-diagram-predecessor{--fa:""}.fa-diagram-successor{--fa:""}.fa-earth-oceania,.fa-globe-oceania{--fa:""}.fa-bug-slash{--fa:""}.fa-file-circle-plus{--fa:""}.fa-shop-lock{--fa:""}.fa-virus-covid{--fa:""}.fa-virus-covid-slash{--fa:""}.fa-anchor-circle-check{--fa:""}.fa-anchor-circle-exclamation{--fa:""}.fa-anchor-circle-xmark{--fa:""}.fa-anchor-lock{--fa:""}.fa-arrow-down-up-across-line{--fa:""}.fa-arrow-down-up-lock{--fa:""}.fa-arrow-right-to-city{--fa:""}.fa-arrow-up-from-ground-water{--fa:""}.fa-arrow-up-from-water-pump{--fa:""}.fa-arrow-up-right-dots{--fa:""}.fa-arrows-down-to-line{--fa:""}.fa-arrows-down-to-people{--fa:""}.fa-arrows-left-right-to-line{--fa:""}.fa-arrows-spin{--fa:""}.fa-arrows-split-up-and-left{--fa:""}.fa-arrows-to-circle{--fa:""}.fa-arrows-to-dot{--fa:""}.fa-arrows-to-eye{--fa:""}.fa-arrows-turn-right{--fa:""}.fa-arrows-turn-to-dots{--fa:""}.fa-arrows-up-to-line{--fa:""}.fa-bore-hole{--fa:""}.fa-bottle-droplet{--fa:""}.fa-bottle-water{--fa:""}.fa-bowl-food{--fa:""}.fa-boxes-packing{--fa:""}.fa-bridge{--fa:""}.fa-bridge-circle-check{--fa:""}.fa-bridge-circle-exclamation{--fa:""}.fa-bridge-circle-xmark{--fa:""}.fa-bridge-lock{--fa:""}.fa-bridge-water{--fa:""}.fa-bucket{--fa:""}.fa-bugs{--fa:""}.fa-building-circle-arrow-right{--fa:""}.fa-building-circle-check{--fa:""}.fa-building-circle-exclamation{--fa:""}.fa-building-circle-xmark{--fa:""}.fa-building-flag{--fa:""}.fa-building-lock{--fa:""}.fa-building-ngo{--fa:""}.fa-building-shield{--fa:""}.fa-building-un{--fa:""}.fa-building-user{--fa:""}.fa-building-wheat{--fa:""}.fa-burst{--fa:""}.fa-car-on{--fa:""}.fa-car-tunnel{--fa:""}.fa-child-combatant,.fa-child-rifle{--fa:""}.fa-children{--fa:""}.fa-circle-nodes{--fa:""}.fa-clipboard-question{--fa:""}.fa-cloud-showers-water{--fa:""}.fa-computer{--fa:""}.fa-cubes-stacked{--fa:""}.fa-envelope-circle-check{--fa:""}.fa-explosion{--fa:""}.fa-ferry{--fa:""}.fa-file-circle-exclamation{--fa:""}.fa-file-circle-minus{--fa:""}.fa-file-circle-question{--fa:""}.fa-file-shield{--fa:""}.fa-fire-burner{--fa:""}.fa-fish-fins{--fa:""}.fa-flask-vial{--fa:""}.fa-glass-water{--fa:""}.fa-glass-water-droplet{--fa:""}.fa-group-arrows-rotate{--fa:""}.fa-hand-holding-hand{--fa:""}.fa-handcuffs{--fa:""}.fa-hands-bound{--fa:""}.fa-hands-holding-child{--fa:""}.fa-hands-holding-circle{--fa:""}.fa-heart-circle-bolt{--fa:""}.fa-heart-circle-check{--fa:""}.fa-heart-circle-exclamation{--fa:""}.fa-heart-circle-minus{--fa:""}.fa-heart-circle-plus{--fa:""}.fa-heart-circle-xmark{--fa:""}.fa-helicopter-symbol{--fa:""}.fa-helmet-un{--fa:""}.fa-hill-avalanche{--fa:""}.fa-hill-rockslide{--fa:""}.fa-house-circle-check{--fa:""}.fa-house-circle-exclamation{--fa:""}.fa-house-circle-xmark{--fa:""}.fa-house-fire{--fa:""}.fa-house-flag{--fa:""}.fa-house-flood-water{--fa:""}.fa-house-flood-water-circle-arrow-right{--fa:""}.fa-house-lock{--fa:""}.fa-house-medical-circle-check{--fa:""}.fa-house-medical-circle-exclamation{--fa:""}.fa-house-medical-circle-xmark{--fa:""}.fa-house-medical-flag{--fa:""}.fa-house-tsunami{--fa:""}.fa-jar{--fa:""}.fa-jar-wheat{--fa:""}.fa-jet-fighter-up{--fa:""}.fa-jug-detergent{--fa:""}.fa-kitchen-set{--fa:""}.fa-land-mine-on{--fa:""}.fa-landmark-flag{--fa:""}.fa-laptop-file{--fa:""}.fa-lines-leaning{--fa:""}.fa-location-pin-lock{--fa:""}.fa-locust{--fa:""}.fa-magnifying-glass-arrow-right{--fa:""}.fa-magnifying-glass-chart{--fa:""}.fa-mars-and-venus-burst{--fa:""}.fa-mask-ventilator{--fa:""}.fa-mattress-pillow{--fa:""}.fa-mobile-retro{--fa:""}.fa-money-bill-transfer{--fa:""}.fa-money-bill-trend-up{--fa:""}.fa-money-bill-wheat{--fa:""}.fa-mosquito{--fa:""}.fa-mosquito-net{--fa:""}.fa-mound{--fa:""}.fa-mountain-city{--fa:""}.fa-mountain-sun{--fa:""}.fa-oil-well{--fa:""}.fa-people-group{--fa:""}.fa-people-line{--fa:""}.fa-people-pulling{--fa:""}.fa-people-robbery{--fa:""}.fa-people-roof{--fa:""}.fa-person-arrow-down-to-line{--fa:""}.fa-person-arrow-up-from-line{--fa:""}.fa-person-breastfeeding{--fa:""}.fa-person-burst{--fa:""}.fa-person-cane{--fa:""}.fa-person-chalkboard{--fa:""}.fa-person-circle-check{--fa:""}.fa-person-circle-exclamation{--fa:""}.fa-person-circle-minus{--fa:""}.fa-person-circle-plus{--fa:""}.fa-person-circle-question{--fa:""}.fa-person-circle-xmark{--fa:""}.fa-person-dress-burst{--fa:""}.fa-person-drowning{--fa:""}.fa-person-falling{--fa:""}.fa-person-falling-burst{--fa:""}.fa-person-half-dress{--fa:""}.fa-person-harassing{--fa:""}.fa-person-military-pointing{--fa:""}.fa-person-military-rifle{--fa:""}.fa-person-military-to-person{--fa:""}.fa-person-rays{--fa:""}.fa-person-rifle{--fa:""}.fa-person-shelter{--fa:""}.fa-person-walking-arrow-loop-left{--fa:""}.fa-person-walking-arrow-right{--fa:""}.fa-person-walking-dashed-line-arrow-right{--fa:""}.fa-person-walking-luggage{--fa:""}.fa-plane-circle-check{--fa:""}.fa-plane-circle-exclamation{--fa:""}.fa-plane-circle-xmark{--fa:""}.fa-plane-lock{--fa:""}.fa-plate-wheat{--fa:""}.fa-plug-circle-bolt{--fa:""}.fa-plug-circle-check{--fa:""}.fa-plug-circle-exclamation{--fa:""}.fa-plug-circle-minus{--fa:""}.fa-plug-circle-plus{--fa:""}.fa-plug-circle-xmark{--fa:""}.fa-ranking-star{--fa:""}.fa-road-barrier{--fa:""}.fa-road-bridge{--fa:""}.fa-road-circle-check{--fa:""}.fa-road-circle-exclamation{--fa:""}.fa-road-circle-xmark{--fa:""}.fa-road-lock{--fa:""}.fa-road-spikes{--fa:""}.fa-rug{--fa:""}.fa-sack-xmark{--fa:""}.fa-school-circle-check{--fa:""}.fa-school-circle-exclamation{--fa:""}.fa-school-circle-xmark{--fa:""}.fa-school-flag{--fa:""}.fa-school-lock{--fa:""}.fa-sheet-plastic{--fa:""}.fa-shield-cat{--fa:""}.fa-shield-dog{--fa:""}.fa-shield-heart{--fa:""}.fa-square-nfi{--fa:""}.fa-square-person-confined{--fa:""}.fa-square-virus{--fa:""}.fa-rod-asclepius,.fa-rod-snake,.fa-staff-aesculapius,.fa-staff-snake{--fa:""}.fa-sun-plant-wilt{--fa:""}.fa-tarp{--fa:""}.fa-tarp-droplet{--fa:""}.fa-tent{--fa:""}.fa-tent-arrow-down-to-line{--fa:""}.fa-tent-arrow-left-right{--fa:""}.fa-tent-arrow-turn-left{--fa:""}.fa-tent-arrows-down{--fa:""}.fa-tents{--fa:""}.fa-toilet-portable{--fa:""}.fa-toilets-portable{--fa:""}.fa-tower-cell{--fa:""}.fa-tower-observation{--fa:""}.fa-tree-city{--fa:""}.fa-trowel{--fa:""}.fa-trowel-bricks{--fa:""}.fa-truck-arrow-right{--fa:""}.fa-truck-droplet{--fa:""}.fa-truck-field{--fa:""}.fa-truck-field-un{--fa:""}.fa-truck-plane{--fa:""}.fa-users-between-lines{--fa:""}.fa-users-line{--fa:""}.fa-users-rays{--fa:""}.fa-users-rectangle{--fa:""}.fa-users-viewfinder{--fa:""}.fa-vial-circle-check{--fa:""}.fa-vial-virus{--fa:""}.fa-wheat-awn-circle-exclamation{--fa:""}.fa-worm{--fa:""}.fa-xmarks-lines{--fa:""}.fa-child-dress{--fa:""}.fa-child-reaching{--fa:""}.fa-file-circle-check{--fa:""}.fa-file-circle-xmark{--fa:""}.fa-person-through-window{--fa:""}.fa-plant-wilt{--fa:""}.fa-stapler{--fa:""}.fa-train-tram{--fa:""}.fa-table-cells-column-lock{--fa:""}.fa-table-cells-row-lock{--fa:""}.fa-thumb-tack-slash,.fa-thumbtack-slash{--fa:""}.fa-table-cells-row-unlock{--fa:""}.fa-chart-diagram{--fa:""}.fa-comment-nodes{--fa:""}.fa-file-fragment{--fa:""}.fa-file-half-dashed{--fa:""}.fa-hexagon-nodes{--fa:""}.fa-hexagon-nodes-bolt{--fa:""}.fa-square-binary{--fa:""}.fa-pentagon{--fa:""}.fa-non-binary{--fa:""}.fa-spiral{--fa:""}.fa-mobile-vibrate{--fa:""}.fa-single-quote-left{--fa:""}.fa-single-quote-right{--fa:""}.fa-bus-side{--fa:""}.fa-heptagon,.fa-septagon{--fa:""}.fa-glass-martini,.fa-martini-glass-empty{--fa:""}.fa-music{--fa:""}.fa-magnifying-glass,.fa-search{--fa:""}.fa-heart{--fa:""}.fa-star{--fa:""}.fa-user,.fa-user-alt,.fa-user-large{--fa:""}.fa-film,.fa-film-alt,.fa-film-simple{--fa:""}.fa-table-cells-large,.fa-th-large{--fa:""}.fa-table-cells,.fa-th{--fa:""}.fa-table-list,.fa-th-list{--fa:""}.fa-check{--fa:""}.fa-close,.fa-multiply,.fa-remove,.fa-times,.fa-xmark{--fa:""}.fa-magnifying-glass-plus,.fa-search-plus{--fa:""}.fa-magnifying-glass-minus,.fa-search-minus{--fa:""}.fa-power-off{--fa:""}.fa-signal,.fa-signal-5,.fa-signal-perfect{--fa:""}.fa-cog,.fa-gear{--fa:""}.fa-home,.fa-home-alt,.fa-home-lg-alt,.fa-house{--fa:""}.fa-clock,.fa-clock-four{--fa:""}.fa-road{--fa:""}.fa-download{--fa:""}.fa-inbox{--fa:""}.fa-arrow-right-rotate,.fa-arrow-rotate-forward,.fa-arrow-rotate-right,.fa-redo{--fa:""}.fa-arrows-rotate,.fa-refresh,.fa-sync{--fa:""}.fa-list-alt,.fa-rectangle-list{--fa:""}.fa-lock{--fa:""}.fa-flag{--fa:""}.fa-headphones,.fa-headphones-alt,.fa-headphones-simple{--fa:""}.fa-volume-off{--fa:""}.fa-volume-down,.fa-volume-low{--fa:""}.fa-volume-high,.fa-volume-up{--fa:""}.fa-qrcode{--fa:""}.fa-barcode{--fa:""}.fa-tag{--fa:""}.fa-tags{--fa:""}.fa-book{--fa:""}.fa-bookmark{--fa:""}.fa-print{--fa:""}.fa-camera,.fa-camera-alt{--fa:""}.fa-font{--fa:""}.fa-bold{--fa:""}.fa-italic{--fa:""}.fa-text-height{--fa:""}.fa-text-width{--fa:""}.fa-align-left{--fa:""}.fa-align-center{--fa:""}.fa-align-right{--fa:""}.fa-align-justify{--fa:""}.fa-list,.fa-list-squares{--fa:""}.fa-dedent,.fa-outdent{--fa:""}.fa-indent{--fa:""}.fa-video,.fa-video-camera{--fa:""}.fa-image{--fa:""}.fa-location-pin,.fa-map-marker{--fa:""}.fa-adjust,.fa-circle-half-stroke{--fa:""}.fa-droplet,.fa-tint{--fa:""}.fa-edit,.fa-pen-to-square{--fa:""}.fa-arrows,.fa-arrows-up-down-left-right{--fa:""}.fa-backward-step,.fa-step-backward{--fa:""}.fa-backward-fast,.fa-fast-backward{--fa:""}.fa-backward{--fa:""}.fa-play{--fa:""}.fa-pause{--fa:""}.fa-stop{--fa:""}.fa-forward{--fa:""}.fa-fast-forward,.fa-forward-fast{--fa:""}.fa-forward-step,.fa-step-forward{--fa:""}.fa-eject{--fa:""}.fa-chevron-left{--fa:""}.fa-chevron-right{--fa:""}.fa-circle-plus,.fa-plus-circle{--fa:""}.fa-circle-minus,.fa-minus-circle{--fa:""}.fa-circle-xmark,.fa-times-circle,.fa-xmark-circle{--fa:""}.fa-check-circle,.fa-circle-check{--fa:""}.fa-circle-question,.fa-question-circle{--fa:""}.fa-circle-info,.fa-info-circle{--fa:""}.fa-crosshairs{--fa:""}.fa-ban,.fa-cancel{--fa:""}.fa-arrow-left{--fa:""}.fa-arrow-right{--fa:""}.fa-arrow-up{--fa:""}.fa-arrow-down{--fa:""}.fa-mail-forward,.fa-share{--fa:""}.fa-expand{--fa:""}.fa-compress{--fa:""}.fa-minus,.fa-subtract{--fa:""}.fa-circle-exclamation,.fa-exclamation-circle{--fa:""}.fa-gift{--fa:""}.fa-leaf{--fa:""}.fa-fire{--fa:""}.fa-eye{--fa:""}.fa-eye-slash{--fa:""}.fa-exclamation-triangle,.fa-triangle-exclamation,.fa-warning{--fa:""}.fa-plane{--fa:""}.fa-calendar-alt,.fa-calendar-days{--fa:""}.fa-random,.fa-shuffle{--fa:""}.fa-comment{--fa:""}.fa-magnet{--fa:""}.fa-chevron-up{--fa:""}.fa-chevron-down{--fa:""}.fa-retweet{--fa:""}.fa-cart-shopping,.fa-shopping-cart{--fa:""}.fa-folder,.fa-folder-blank{--fa:""}.fa-folder-open{--fa:""}.fa-arrows-up-down,.fa-arrows-v{--fa:""}.fa-arrows-h,.fa-arrows-left-right{--fa:""}.fa-bar-chart,.fa-chart-bar{--fa:""}.fa-camera-retro{--fa:""}.fa-key{--fa:""}.fa-cogs,.fa-gears{--fa:""}.fa-comments{--fa:""}.fa-star-half{--fa:""}.fa-arrow-right-from-bracket,.fa-sign-out{--fa:""}.fa-thumb-tack,.fa-thumbtack{--fa:""}.fa-arrow-up-right-from-square,.fa-external-link{--fa:""}.fa-arrow-right-to-bracket,.fa-sign-in{--fa:""}.fa-trophy{--fa:""}.fa-upload{--fa:""}.fa-lemon{--fa:""}.fa-phone{--fa:""}.fa-phone-square,.fa-square-phone{--fa:""}.fa-unlock{--fa:""}.fa-credit-card,.fa-credit-card-alt{--fa:""}.fa-feed,.fa-rss{--fa:""}.fa-hard-drive,.fa-hdd{--fa:""}.fa-bullhorn{--fa:""}.fa-certificate{--fa:""}.fa-hand-point-right{--fa:""}.fa-hand-point-left{--fa:""}.fa-hand-point-up{--fa:""}.fa-hand-point-down{--fa:""}.fa-arrow-circle-left,.fa-circle-arrow-left{--fa:""}.fa-arrow-circle-right,.fa-circle-arrow-right{--fa:""}.fa-arrow-circle-up,.fa-circle-arrow-up{--fa:""}.fa-arrow-circle-down,.fa-circle-arrow-down{--fa:""}.fa-globe{--fa:""}.fa-wrench{--fa:""}.fa-list-check,.fa-tasks{--fa:""}.fa-filter{--fa:""}.fa-briefcase{--fa:""}.fa-arrows-alt,.fa-up-down-left-right{--fa:""}.fa-users{--fa:""}.fa-chain,.fa-link{--fa:""}.fa-cloud{--fa:""}.fa-flask{--fa:""}.fa-cut,.fa-scissors{--fa:""}.fa-copy{--fa:""}.fa-paperclip{--fa:""}.fa-floppy-disk,.fa-save{--fa:""}.fa-square{--fa:""}.fa-bars,.fa-navicon{--fa:""}.fa-list-dots,.fa-list-ul{--fa:""}.fa-list-1-2,.fa-list-numeric,.fa-list-ol{--fa:""}.fa-strikethrough{--fa:""}.fa-underline{--fa:""}.fa-table{--fa:""}.fa-magic,.fa-wand-magic{--fa:""}.fa-truck{--fa:""}.fa-money-bill{--fa:""}.fa-caret-down{--fa:""}.fa-caret-up{--fa:""}.fa-caret-left{--fa:""}.fa-caret-right{--fa:""}.fa-columns,.fa-table-columns{--fa:""}.fa-sort,.fa-unsorted{--fa:""}.fa-sort-desc,.fa-sort-down{--fa:""}.fa-sort-asc,.fa-sort-up{--fa:""}.fa-envelope{--fa:""}.fa-arrow-left-rotate,.fa-arrow-rotate-back,.fa-arrow-rotate-backward,.fa-arrow-rotate-left,.fa-undo{--fa:""}.fa-gavel,.fa-legal{--fa:""}.fa-bolt,.fa-zap{--fa:""}.fa-sitemap{--fa:""}.fa-umbrella{--fa:""}.fa-file-clipboard,.fa-paste{--fa:""}.fa-lightbulb{--fa:""}.fa-arrow-right-arrow-left,.fa-exchange{--fa:""}.fa-cloud-arrow-down,.fa-cloud-download,.fa-cloud-download-alt{--fa:""}.fa-cloud-arrow-up,.fa-cloud-upload,.fa-cloud-upload-alt{--fa:""}.fa-user-doctor,.fa-user-md{--fa:""}.fa-stethoscope{--fa:""}.fa-suitcase{--fa:""}.fa-bell{--fa:""}.fa-coffee,.fa-mug-saucer{--fa:""}.fa-hospital,.fa-hospital-alt,.fa-hospital-wide{--fa:""}.fa-ambulance,.fa-truck-medical{--fa:""}.fa-medkit,.fa-suitcase-medical{--fa:""}.fa-fighter-jet,.fa-jet-fighter{--fa:""}.fa-beer,.fa-beer-mug-empty{--fa:""}.fa-h-square,.fa-square-h{--fa:""}.fa-plus-square,.fa-square-plus{--fa:""}.fa-angle-double-left,.fa-angles-left{--fa:""}.fa-angle-double-right,.fa-angles-right{--fa:""}.fa-angle-double-up,.fa-angles-up{--fa:""}.fa-angle-double-down,.fa-angles-down{--fa:""}.fa-angle-left{--fa:""}.fa-angle-right{--fa:""}.fa-angle-up{--fa:""}.fa-angle-down{--fa:""}.fa-laptop{--fa:""}.fa-tablet-button{--fa:""}.fa-mobile-button{--fa:""}.fa-quote-left,.fa-quote-left-alt{--fa:""}.fa-quote-right,.fa-quote-right-alt{--fa:""}.fa-spinner{--fa:""}.fa-circle{--fa:""}.fa-face-smile,.fa-smile{--fa:""}.fa-face-frown,.fa-frown{--fa:""}.fa-face-meh,.fa-meh{--fa:""}.fa-gamepad{--fa:""}.fa-keyboard{--fa:""}.fa-flag-checkered{--fa:""}.fa-terminal{--fa:""}.fa-code{--fa:""}.fa-mail-reply-all,.fa-reply-all{--fa:""}.fa-location-arrow{--fa:""}.fa-crop{--fa:""}.fa-code-branch{--fa:""}.fa-chain-broken,.fa-chain-slash,.fa-link-slash,.fa-unlink{--fa:""}.fa-info{--fa:""}.fa-superscript{--fa:""}.fa-subscript{--fa:""}.fa-eraser{--fa:""}.fa-puzzle-piece{--fa:""}.fa-microphone{--fa:""}.fa-microphone-slash{--fa:""}.fa-shield,.fa-shield-blank{--fa:""}.fa-calendar{--fa:""}.fa-fire-extinguisher{--fa:""}.fa-rocket{--fa:""}.fa-chevron-circle-left,.fa-circle-chevron-left{--fa:""}.fa-chevron-circle-right,.fa-circle-chevron-right{--fa:""}.fa-chevron-circle-up,.fa-circle-chevron-up{--fa:""}.fa-chevron-circle-down,.fa-circle-chevron-down{--fa:""}.fa-anchor{--fa:""}.fa-unlock-alt,.fa-unlock-keyhole{--fa:""}.fa-bullseye{--fa:""}.fa-ellipsis,.fa-ellipsis-h{--fa:""}.fa-ellipsis-v,.fa-ellipsis-vertical{--fa:""}.fa-rss-square,.fa-square-rss{--fa:""}.fa-circle-play,.fa-play-circle{--fa:""}.fa-ticket{--fa:""}.fa-minus-square,.fa-square-minus{--fa:""}.fa-arrow-turn-up,.fa-level-up{--fa:""}.fa-arrow-turn-down,.fa-level-down{--fa:""}.fa-check-square,.fa-square-check{--fa:""}.fa-pen-square,.fa-pencil-square,.fa-square-pen{--fa:""}.fa-external-link-square,.fa-square-arrow-up-right{--fa:""}.fa-share-from-square,.fa-share-square{--fa:""}.fa-compass{--fa:""}.fa-caret-square-down,.fa-square-caret-down{--fa:""}.fa-caret-square-up,.fa-square-caret-up{--fa:""}.fa-caret-square-right,.fa-square-caret-right{--fa:""}.fa-eur,.fa-euro,.fa-euro-sign{--fa:""}.fa-gbp,.fa-pound-sign,.fa-sterling-sign{--fa:""}.fa-rupee,.fa-rupee-sign{--fa:""}.fa-cny,.fa-jpy,.fa-rmb,.fa-yen,.fa-yen-sign{--fa:""}.fa-rouble,.fa-rub,.fa-ruble,.fa-ruble-sign{--fa:""}.fa-krw,.fa-won,.fa-won-sign{--fa:""}.fa-file{--fa:""}.fa-file-alt,.fa-file-lines,.fa-file-text{--fa:""}.fa-arrow-down-a-z,.fa-sort-alpha-asc,.fa-sort-alpha-down{--fa:""}.fa-arrow-up-a-z,.fa-sort-alpha-up{--fa:""}.fa-arrow-down-wide-short,.fa-sort-amount-asc,.fa-sort-amount-down{--fa:""}.fa-arrow-up-wide-short,.fa-sort-amount-up{--fa:""}.fa-arrow-down-1-9,.fa-sort-numeric-asc,.fa-sort-numeric-down{--fa:""}.fa-arrow-up-1-9,.fa-sort-numeric-up{--fa:""}.fa-thumbs-up{--fa:""}.fa-thumbs-down{--fa:""}.fa-arrow-down-long,.fa-long-arrow-down{--fa:""}.fa-arrow-up-long,.fa-long-arrow-up{--fa:""}.fa-arrow-left-long,.fa-long-arrow-left{--fa:""}.fa-arrow-right-long,.fa-long-arrow-right{--fa:""}.fa-female,.fa-person-dress{--fa:""}.fa-male,.fa-person{--fa:""}.fa-sun{--fa:""}.fa-moon{--fa:""}.fa-archive,.fa-box-archive{--fa:""}.fa-bug{--fa:""}.fa-caret-square-left,.fa-square-caret-left{--fa:""}.fa-circle-dot,.fa-dot-circle{--fa:""}.fa-wheelchair{--fa:""}.fa-lira-sign{--fa:""}.fa-shuttle-space,.fa-space-shuttle{--fa:""}.fa-envelope-square,.fa-square-envelope{--fa:""}.fa-bank,.fa-building-columns,.fa-institution,.fa-museum,.fa-university{--fa:""}.fa-graduation-cap,.fa-mortar-board{--fa:""}.fa-language{--fa:""}.fa-fax{--fa:""}.fa-building{--fa:""}.fa-child{--fa:""}.fa-paw{--fa:""}.fa-cube{--fa:""}.fa-cubes{--fa:""}.fa-recycle{--fa:""}.fa-automobile,.fa-car{--fa:""}.fa-cab,.fa-taxi{--fa:""}.fa-tree{--fa:""}.fa-database{--fa:""}.fa-file-pdf{--fa:""}.fa-file-word{--fa:""}.fa-file-excel{--fa:""}.fa-file-powerpoint{--fa:""}.fa-file-image{--fa:""}.fa-file-archive,.fa-file-zipper{--fa:""}.fa-file-audio{--fa:""}.fa-file-video{--fa:""}.fa-file-code{--fa:""}.fa-life-ring{--fa:""}.fa-circle-notch{--fa:""}.fa-paper-plane{--fa:""}.fa-clock-rotate-left,.fa-history{--fa:""}.fa-header,.fa-heading{--fa:""}.fa-paragraph{--fa:""}.fa-sliders,.fa-sliders-h{--fa:""}.fa-share-alt,.fa-share-nodes{--fa:""}.fa-share-alt-square,.fa-square-share-nodes{--fa:""}.fa-bomb{--fa:""}.fa-futbol,.fa-futbol-ball,.fa-soccer-ball{--fa:""}.fa-teletype,.fa-tty{--fa:""}.fa-binoculars{--fa:""}.fa-plug{--fa:""}.fa-newspaper{--fa:""}.fa-wifi,.fa-wifi-3,.fa-wifi-strong{--fa:""}.fa-calculator{--fa:""}.fa-bell-slash{--fa:""}.fa-trash{--fa:""}.fa-copyright{--fa:""}.fa-eye-dropper,.fa-eye-dropper-empty,.fa-eyedropper{--fa:""}.fa-paint-brush,.fa-paintbrush{--fa:""}.fa-birthday-cake,.fa-cake,.fa-cake-candles{--fa:""}.fa-area-chart,.fa-chart-area{--fa:""}.fa-chart-pie,.fa-pie-chart{--fa:""}.fa-chart-line,.fa-line-chart{--fa:""}.fa-toggle-off{--fa:""}.fa-toggle-on{--fa:""}.fa-bicycle{--fa:""}.fa-bus{--fa:""}.fa-closed-captioning{--fa:""}.fa-ils,.fa-shekel,.fa-shekel-sign,.fa-sheqel,.fa-sheqel-sign{--fa:""}.fa-cart-plus{--fa:""}.fa-cart-arrow-down{--fa:""}.fa-diamond{--fa:""}.fa-ship{--fa:""}.fa-user-secret{--fa:""}.fa-motorcycle{--fa:""}.fa-street-view{--fa:""}.fa-heart-pulse,.fa-heartbeat{--fa:""}.fa-venus{--fa:""}.fa-mars{--fa:""}.fa-mercury{--fa:""}.fa-mars-and-venus{--fa:""}.fa-transgender,.fa-transgender-alt{--fa:""}.fa-venus-double{--fa:""}.fa-mars-double{--fa:""}.fa-venus-mars{--fa:""}.fa-mars-stroke{--fa:""}.fa-mars-stroke-up,.fa-mars-stroke-v{--fa:""}.fa-mars-stroke-h,.fa-mars-stroke-right{--fa:""}.fa-neuter{--fa:""}.fa-genderless{--fa:""}.fa-server{--fa:""}.fa-user-plus{--fa:""}.fa-user-times,.fa-user-xmark{--fa:""}.fa-bed{--fa:""}.fa-train{--fa:""}.fa-subway,.fa-train-subway{--fa:""}.fa-battery,.fa-battery-5,.fa-battery-full{--fa:""}.fa-battery-4,.fa-battery-three-quarters{--fa:""}.fa-battery-3,.fa-battery-half{--fa:""}.fa-battery-2,.fa-battery-quarter{--fa:""}.fa-battery-0,.fa-battery-empty{--fa:""}.fa-arrow-pointer,.fa-mouse-pointer{--fa:""}.fa-i-cursor{--fa:""}.fa-object-group{--fa:""}.fa-object-ungroup{--fa:""}.fa-note-sticky,.fa-sticky-note{--fa:""}.fa-clone{--fa:""}.fa-balance-scale,.fa-scale-balanced{--fa:""}.fa-hourglass-1,.fa-hourglass-start{--fa:""}.fa-hourglass-2,.fa-hourglass-half{--fa:""}.fa-hourglass-3,.fa-hourglass-end{--fa:""}.fa-hourglass,.fa-hourglass-empty{--fa:""}.fa-hand-back-fist,.fa-hand-rock{--fa:""}.fa-hand,.fa-hand-paper{--fa:""}.fa-hand-scissors{--fa:""}.fa-hand-lizard{--fa:""}.fa-hand-spock{--fa:""}.fa-hand-pointer{--fa:""}.fa-hand-peace{--fa:""}.fa-trademark{--fa:""}.fa-registered{--fa:""}.fa-television,.fa-tv,.fa-tv-alt{--fa:""}.fa-calendar-plus{--fa:""}.fa-calendar-minus{--fa:""}.fa-calendar-times,.fa-calendar-xmark{--fa:""}.fa-calendar-check{--fa:""}.fa-industry{--fa:""}.fa-map-pin{--fa:""}.fa-map-signs,.fa-signs-post{--fa:""}.fa-map{--fa:""}.fa-comment-alt,.fa-message{--fa:""}.fa-circle-pause,.fa-pause-circle{--fa:""}.fa-circle-stop,.fa-stop-circle{--fa:""}.fa-bag-shopping,.fa-shopping-bag{--fa:""}.fa-basket-shopping,.fa-shopping-basket{--fa:""}.fa-universal-access{--fa:""}.fa-blind,.fa-person-walking-with-cane{--fa:""}.fa-audio-description{--fa:""}.fa-phone-volume,.fa-volume-control-phone{--fa:""}.fa-braille{--fa:""}.fa-assistive-listening-systems,.fa-ear-listen{--fa:""}.fa-american-sign-language-interpreting,.fa-asl-interpreting,.fa-hands-american-sign-language-interpreting,.fa-hands-asl-interpreting{--fa:""}.fa-deaf,.fa-deafness,.fa-ear-deaf,.fa-hard-of-hearing{--fa:""}.fa-hands,.fa-sign-language,.fa-signing{--fa:""}.fa-eye-low-vision,.fa-low-vision{--fa:""}.fa-handshake,.fa-handshake-alt,.fa-handshake-simple{--fa:""}.fa-envelope-open{--fa:""}.fa-address-book,.fa-contact-book{--fa:""}.fa-address-card,.fa-contact-card,.fa-vcard{--fa:""}.fa-circle-user,.fa-user-circle{--fa:""}.fa-id-badge{--fa:""}.fa-drivers-license,.fa-id-card{--fa:""}.fa-temperature-4,.fa-temperature-full,.fa-thermometer-4,.fa-thermometer-full{--fa:""}.fa-temperature-3,.fa-temperature-three-quarters,.fa-thermometer-3,.fa-thermometer-three-quarters{--fa:""}.fa-temperature-2,.fa-temperature-half,.fa-thermometer-2,.fa-thermometer-half{--fa:""}.fa-temperature-1,.fa-temperature-quarter,.fa-thermometer-1,.fa-thermometer-quarter{--fa:""}.fa-temperature-0,.fa-temperature-empty,.fa-thermometer-0,.fa-thermometer-empty{--fa:""}.fa-shower{--fa:""}.fa-bath,.fa-bathtub{--fa:""}.fa-podcast{--fa:""}.fa-window-maximize{--fa:""}.fa-window-minimize{--fa:""}.fa-window-restore{--fa:""}.fa-square-xmark,.fa-times-square,.fa-xmark-square{--fa:""}.fa-microchip{--fa:""}.fa-snowflake{--fa:""}.fa-spoon,.fa-utensil-spoon{--fa:""}.fa-cutlery,.fa-utensils{--fa:""}.fa-rotate-back,.fa-rotate-backward,.fa-rotate-left,.fa-undo-alt{--fa:""}.fa-trash-alt,.fa-trash-can{--fa:""}.fa-rotate,.fa-sync-alt{--fa:""}.fa-stopwatch{--fa:""}.fa-right-from-bracket,.fa-sign-out-alt{--fa:""}.fa-right-to-bracket,.fa-sign-in-alt{--fa:""}.fa-redo-alt,.fa-rotate-forward,.fa-rotate-right{--fa:""}.fa-poo{--fa:""}.fa-images{--fa:""}.fa-pencil,.fa-pencil-alt{--fa:""}.fa-pen{--fa:""}.fa-pen-alt,.fa-pen-clip{--fa:""}.fa-octagon{--fa:""}.fa-down-long,.fa-long-arrow-alt-down{--fa:""}.fa-left-long,.fa-long-arrow-alt-left{--fa:""}.fa-long-arrow-alt-right,.fa-right-long{--fa:""}.fa-long-arrow-alt-up,.fa-up-long{--fa:""}.fa-hexagon{--fa:""}.fa-file-edit,.fa-file-pen{--fa:""}.fa-expand-arrows-alt,.fa-maximize{--fa:""}.fa-clipboard{--fa:""}.fa-arrows-alt-h,.fa-left-right{--fa:""}.fa-arrows-alt-v,.fa-up-down{--fa:""}.fa-alarm-clock{--fa:""}.fa-arrow-alt-circle-down,.fa-circle-down{--fa:""}.fa-arrow-alt-circle-left,.fa-circle-left{--fa:""}.fa-arrow-alt-circle-right,.fa-circle-right{--fa:""}.fa-arrow-alt-circle-up,.fa-circle-up{--fa:""}.fa-external-link-alt,.fa-up-right-from-square{--fa:""}.fa-external-link-square-alt,.fa-square-up-right{--fa:""}.fa-exchange-alt,.fa-right-left{--fa:""}.fa-repeat{--fa:""}.fa-code-commit{--fa:""}.fa-code-merge{--fa:""}.fa-desktop,.fa-desktop-alt{--fa:""}.fa-gem{--fa:""}.fa-level-down-alt,.fa-turn-down{--fa:""}.fa-level-up-alt,.fa-turn-up{--fa:""}.fa-lock-open{--fa:""}.fa-location-dot,.fa-map-marker-alt{--fa:""}.fa-microphone-alt,.fa-microphone-lines{--fa:""}.fa-mobile-alt,.fa-mobile-screen-button{--fa:""}.fa-mobile,.fa-mobile-android,.fa-mobile-phone{--fa:""}.fa-mobile-android-alt,.fa-mobile-screen{--fa:""}.fa-money-bill-1,.fa-money-bill-alt{--fa:""}.fa-phone-slash{--fa:""}.fa-image-portrait,.fa-portrait{--fa:""}.fa-mail-reply,.fa-reply{--fa:""}.fa-shield-alt,.fa-shield-halved{--fa:""}.fa-tablet-alt,.fa-tablet-screen-button{--fa:""}.fa-tablet,.fa-tablet-android{--fa:""}.fa-ticket-alt,.fa-ticket-simple{--fa:""}.fa-rectangle-times,.fa-rectangle-xmark,.fa-times-rectangle,.fa-window-close{--fa:""}.fa-compress-alt,.fa-down-left-and-up-right-to-center{--fa:""}.fa-expand-alt,.fa-up-right-and-down-left-from-center{--fa:""}.fa-baseball-bat-ball{--fa:""}.fa-baseball,.fa-baseball-ball{--fa:""}.fa-basketball,.fa-basketball-ball{--fa:""}.fa-bowling-ball{--fa:""}.fa-chess{--fa:""}.fa-chess-bishop{--fa:""}.fa-chess-board{--fa:""}.fa-chess-king{--fa:""}.fa-chess-knight{--fa:""}.fa-chess-pawn{--fa:""}.fa-chess-queen{--fa:""}.fa-chess-rook{--fa:""}.fa-dumbbell{--fa:""}.fa-football,.fa-football-ball{--fa:""}.fa-golf-ball,.fa-golf-ball-tee{--fa:""}.fa-hockey-puck{--fa:""}.fa-broom-ball,.fa-quidditch,.fa-quidditch-broom-ball{--fa:""}.fa-square-full{--fa:""}.fa-ping-pong-paddle-ball,.fa-table-tennis,.fa-table-tennis-paddle-ball{--fa:""}.fa-volleyball,.fa-volleyball-ball{--fa:""}.fa-allergies,.fa-hand-dots{--fa:""}.fa-band-aid,.fa-bandage{--fa:""}.fa-box{--fa:""}.fa-boxes,.fa-boxes-alt,.fa-boxes-stacked{--fa:""}.fa-briefcase-medical{--fa:""}.fa-burn,.fa-fire-flame-simple{--fa:""}.fa-capsules{--fa:""}.fa-clipboard-check{--fa:""}.fa-clipboard-list{--fa:""}.fa-diagnoses,.fa-person-dots-from-line{--fa:""}.fa-dna{--fa:""}.fa-dolly,.fa-dolly-box{--fa:""}.fa-cart-flatbed,.fa-dolly-flatbed{--fa:""}.fa-file-medical{--fa:""}.fa-file-medical-alt,.fa-file-waveform{--fa:""}.fa-first-aid,.fa-kit-medical{--fa:""}.fa-circle-h,.fa-hospital-symbol{--fa:""}.fa-id-card-alt,.fa-id-card-clip{--fa:""}.fa-notes-medical{--fa:""}.fa-pallet{--fa:""}.fa-pills{--fa:""}.fa-prescription-bottle{--fa:""}.fa-prescription-bottle-alt,.fa-prescription-bottle-medical{--fa:""}.fa-bed-pulse,.fa-procedures{--fa:""}.fa-shipping-fast,.fa-truck-fast{--fa:""}.fa-smoking{--fa:""}.fa-syringe{--fa:""}.fa-tablets{--fa:""}.fa-thermometer{--fa:""}.fa-vial{--fa:""}.fa-vials{--fa:""}.fa-warehouse{--fa:""}.fa-weight,.fa-weight-scale{--fa:""}.fa-x-ray{--fa:""}.fa-box-open{--fa:""}.fa-comment-dots,.fa-commenting{--fa:""}.fa-comment-slash{--fa:""}.fa-couch{--fa:""}.fa-circle-dollar-to-slot,.fa-donate{--fa:""}.fa-dove{--fa:""}.fa-hand-holding{--fa:""}.fa-hand-holding-heart{--fa:""}.fa-hand-holding-dollar,.fa-hand-holding-usd{--fa:""}.fa-hand-holding-droplet,.fa-hand-holding-water{--fa:""}.fa-hands-holding{--fa:""}.fa-hands-helping,.fa-handshake-angle{--fa:""}.fa-parachute-box{--fa:""}.fa-people-carry,.fa-people-carry-box{--fa:""}.fa-piggy-bank{--fa:""}.fa-ribbon{--fa:""}.fa-route{--fa:""}.fa-seedling,.fa-sprout{--fa:""}.fa-sign,.fa-sign-hanging{--fa:""}.fa-face-smile-wink,.fa-smile-wink{--fa:""}.fa-tape{--fa:""}.fa-truck-loading,.fa-truck-ramp-box{--fa:""}.fa-truck-moving{--fa:""}.fa-video-slash{--fa:""}.fa-wine-glass{--fa:""}.fa-user-astronaut{--fa:""}.fa-user-check{--fa:""}.fa-user-clock{--fa:""}.fa-user-cog,.fa-user-gear{--fa:""}.fa-user-edit,.fa-user-pen{--fa:""}.fa-user-friends,.fa-user-group{--fa:""}.fa-user-graduate{--fa:""}.fa-user-lock{--fa:""}.fa-user-minus{--fa:""}.fa-user-ninja{--fa:""}.fa-user-shield{--fa:""}.fa-user-alt-slash,.fa-user-large-slash,.fa-user-slash{--fa:""}.fa-user-tag{--fa:""}.fa-user-tie{--fa:""}.fa-users-cog,.fa-users-gear{--fa:""}.fa-balance-scale-left,.fa-scale-unbalanced{--fa:""}.fa-balance-scale-right,.fa-scale-unbalanced-flip{--fa:""}.fa-blender{--fa:""}.fa-book-open{--fa:""}.fa-broadcast-tower,.fa-tower-broadcast{--fa:""}.fa-broom{--fa:""}.fa-blackboard,.fa-chalkboard{--fa:""}.fa-chalkboard-teacher,.fa-chalkboard-user{--fa:""}.fa-church{--fa:""}.fa-coins{--fa:""}.fa-compact-disc{--fa:""}.fa-crow{--fa:""}.fa-crown{--fa:""}.fa-dice{--fa:""}.fa-dice-five{--fa:""}.fa-dice-four{--fa:""}.fa-dice-one{--fa:""}.fa-dice-six{--fa:""}.fa-dice-three{--fa:""}.fa-dice-two{--fa:""}.fa-divide{--fa:""}.fa-door-closed{--fa:""}.fa-door-open{--fa:""}.fa-feather{--fa:""}.fa-frog{--fa:""}.fa-gas-pump{--fa:""}.fa-glasses{--fa:""}.fa-greater-than-equal{--fa:""}.fa-helicopter{--fa:""}.fa-infinity{--fa:""}.fa-kiwi-bird{--fa:""}.fa-less-than-equal{--fa:""}.fa-memory{--fa:""}.fa-microphone-alt-slash,.fa-microphone-lines-slash{--fa:""}.fa-money-bill-wave{--fa:""}.fa-money-bill-1-wave,.fa-money-bill-wave-alt{--fa:""}.fa-money-check{--fa:""}.fa-money-check-alt,.fa-money-check-dollar{--fa:""}.fa-not-equal{--fa:""}.fa-palette{--fa:""}.fa-parking,.fa-square-parking{--fa:""}.fa-diagram-project,.fa-project-diagram{--fa:""}.fa-receipt{--fa:""}.fa-robot{--fa:""}.fa-ruler{--fa:""}.fa-ruler-combined{--fa:""}.fa-ruler-horizontal{--fa:""}.fa-ruler-vertical{--fa:""}.fa-school{--fa:""}.fa-screwdriver{--fa:""}.fa-shoe-prints{--fa:""}.fa-skull{--fa:""}.fa-ban-smoking,.fa-smoking-ban{--fa:""}.fa-store{--fa:""}.fa-shop,.fa-store-alt{--fa:""}.fa-bars-staggered,.fa-reorder,.fa-stream{--fa:""}.fa-stroopwafel{--fa:""}.fa-toolbox{--fa:""}.fa-shirt,.fa-t-shirt,.fa-tshirt{--fa:""}.fa-person-walking,.fa-walking{--fa:""}.fa-wallet{--fa:""}.fa-angry,.fa-face-angry{--fa:""}.fa-archway{--fa:""}.fa-atlas,.fa-book-atlas{--fa:""}.fa-award{--fa:""}.fa-backspace,.fa-delete-left{--fa:""}.fa-bezier-curve{--fa:""}.fa-bong{--fa:""}.fa-brush{--fa:""}.fa-bus-alt,.fa-bus-simple{--fa:""}.fa-cannabis{--fa:""}.fa-check-double{--fa:""}.fa-cocktail,.fa-martini-glass-citrus{--fa:""}.fa-bell-concierge,.fa-concierge-bell{--fa:""}.fa-cookie{--fa:""}.fa-cookie-bite{--fa:""}.fa-crop-alt,.fa-crop-simple{--fa:""}.fa-digital-tachograph,.fa-tachograph-digital{--fa:""}.fa-dizzy,.fa-face-dizzy{--fa:""}.fa-compass-drafting,.fa-drafting-compass{--fa:""}.fa-drum{--fa:""}.fa-drum-steelpan{--fa:""}.fa-feather-alt,.fa-feather-pointed{--fa:""}.fa-file-contract{--fa:""}.fa-file-arrow-down,.fa-file-download{--fa:""}.fa-arrow-right-from-file,.fa-file-export{--fa:""}.fa-arrow-right-to-file,.fa-file-import{--fa:""}.fa-file-invoice{--fa:""}.fa-file-invoice-dollar{--fa:""}.fa-file-prescription{--fa:""}.fa-file-signature{--fa:""}.fa-file-arrow-up,.fa-file-upload{--fa:""}.fa-fill{--fa:""}.fa-fill-drip{--fa:""}.fa-fingerprint{--fa:""}.fa-fish{--fa:""}.fa-face-flushed,.fa-flushed{--fa:""}.fa-face-frown-open,.fa-frown-open{--fa:""}.fa-glass-martini-alt,.fa-martini-glass{--fa:""}.fa-earth-africa,.fa-globe-africa{--fa:""}.fa-earth,.fa-earth-america,.fa-earth-americas,.fa-globe-americas{--fa:""}.fa-earth-asia,.fa-globe-asia{--fa:""}.fa-face-grimace,.fa-grimace{--fa:""}.fa-face-grin,.fa-grin{--fa:""}.fa-face-grin-wide,.fa-grin-alt{--fa:""}.fa-face-grin-beam,.fa-grin-beam{--fa:""}.fa-face-grin-beam-sweat,.fa-grin-beam-sweat{--fa:""}.fa-face-grin-hearts,.fa-grin-hearts{--fa:""}.fa-face-grin-squint,.fa-grin-squint{--fa:""}.fa-face-grin-squint-tears,.fa-grin-squint-tears{--fa:""}.fa-face-grin-stars,.fa-grin-stars{--fa:""}.fa-face-grin-tears,.fa-grin-tears{--fa:""}.fa-face-grin-tongue,.fa-grin-tongue{--fa:""}.fa-face-grin-tongue-squint,.fa-grin-tongue-squint{--fa:""}.fa-face-grin-tongue-wink,.fa-grin-tongue-wink{--fa:""}.fa-face-grin-wink,.fa-grin-wink{--fa:""}.fa-grid-horizontal,.fa-grip,.fa-grip-horizontal{--fa:""}.fa-grid-vertical,.fa-grip-vertical{--fa:""}.fa-headset{--fa:""}.fa-highlighter{--fa:""}.fa-hot-tub,.fa-hot-tub-person{--fa:""}.fa-hotel{--fa:""}.fa-joint{--fa:""}.fa-face-kiss,.fa-kiss{--fa:""}.fa-face-kiss-beam,.fa-kiss-beam{--fa:""}.fa-face-kiss-wink-heart,.fa-kiss-wink-heart{--fa:""}.fa-face-laugh,.fa-laugh{--fa:""}.fa-face-laugh-beam,.fa-laugh-beam{--fa:""}.fa-face-laugh-squint,.fa-laugh-squint{--fa:""}.fa-face-laugh-wink,.fa-laugh-wink{--fa:""}.fa-cart-flatbed-suitcase,.fa-luggage-cart{--fa:""}.fa-map-location,.fa-map-marked{--fa:""}.fa-map-location-dot,.fa-map-marked-alt{--fa:""}.fa-marker{--fa:""}.fa-medal{--fa:""}.fa-face-meh-blank,.fa-meh-blank{--fa:""}.fa-face-rolling-eyes,.fa-meh-rolling-eyes{--fa:""}.fa-monument{--fa:""}.fa-mortar-pestle{--fa:""}.fa-paint-roller{--fa:""}.fa-passport{--fa:""}.fa-pen-fancy{--fa:""}.fa-pen-nib{--fa:""}.fa-pen-ruler,.fa-pencil-ruler{--fa:""}.fa-plane-arrival{--fa:""}.fa-plane-departure{--fa:""}.fa-prescription{--fa:""}.fa-face-sad-cry,.fa-sad-cry{--fa:""}.fa-face-sad-tear,.fa-sad-tear{--fa:""}.fa-shuttle-van,.fa-van-shuttle{--fa:""}.fa-signature{--fa:""}.fa-face-smile-beam,.fa-smile-beam{--fa:""}.fa-solar-panel{--fa:""}.fa-spa{--fa:""}.fa-splotch{--fa:""}.fa-spray-can{--fa:""}.fa-stamp{--fa:""}.fa-star-half-alt,.fa-star-half-stroke{--fa:""}.fa-suitcase-rolling{--fa:""}.fa-face-surprise,.fa-surprise{--fa:""}.fa-swatchbook{--fa:""}.fa-person-swimming,.fa-swimmer{--fa:""}.fa-ladder-water,.fa-swimming-pool,.fa-water-ladder{--fa:""}.fa-droplet-slash,.fa-tint-slash{--fa:""}.fa-face-tired,.fa-tired{--fa:""}.fa-tooth{--fa:""}.fa-umbrella-beach{--fa:""}.fa-weight-hanging{--fa:""}.fa-wine-glass-alt,.fa-wine-glass-empty{--fa:""}.fa-air-freshener,.fa-spray-can-sparkles{--fa:""}.fa-apple-alt,.fa-apple-whole{--fa:""}.fa-atom{--fa:""}.fa-bone{--fa:""}.fa-book-open-reader,.fa-book-reader{--fa:""}.fa-brain{--fa:""}.fa-car-alt,.fa-car-rear{--fa:""}.fa-battery-car,.fa-car-battery{--fa:""}.fa-car-burst,.fa-car-crash{--fa:""}.fa-car-side{--fa:""}.fa-charging-station{--fa:""}.fa-diamond-turn-right,.fa-directions{--fa:""}.fa-draw-polygon,.fa-vector-polygon{--fa:""}.fa-laptop-code{--fa:""}.fa-layer-group{--fa:""}.fa-location,.fa-location-crosshairs{--fa:""}.fa-lungs{--fa:""}.fa-microscope{--fa:""}.fa-oil-can{--fa:""}.fa-poop{--fa:""}.fa-shapes,.fa-triangle-circle-square{--fa:""}.fa-star-of-life{--fa:""}.fa-dashboard,.fa-gauge,.fa-gauge-med,.fa-tachometer-alt-average{--fa:""}.fa-gauge-high,.fa-tachometer-alt,.fa-tachometer-alt-fast{--fa:""}.fa-gauge-simple,.fa-gauge-simple-med,.fa-tachometer-average{--fa:""}.fa-gauge-simple-high,.fa-tachometer,.fa-tachometer-fast{--fa:""}.fa-teeth{--fa:""}.fa-teeth-open{--fa:""}.fa-masks-theater,.fa-theater-masks{--fa:""}.fa-traffic-light{--fa:""}.fa-truck-monster{--fa:""}.fa-truck-pickup{--fa:""}.fa-ad,.fa-rectangle-ad{--fa:""}.fa-ankh{--fa:""}.fa-bible,.fa-book-bible{--fa:""}.fa-briefcase-clock,.fa-business-time{--fa:""}.fa-city{--fa:""}.fa-comment-dollar{--fa:""}.fa-comments-dollar{--fa:""}.fa-cross{--fa:""}.fa-dharmachakra{--fa:""}.fa-envelope-open-text{--fa:""}.fa-folder-minus{--fa:""}.fa-folder-plus{--fa:""}.fa-filter-circle-dollar,.fa-funnel-dollar{--fa:""}.fa-gopuram{--fa:""}.fa-hamsa{--fa:""}.fa-bahai,.fa-haykal{--fa:""}.fa-jedi{--fa:""}.fa-book-journal-whills,.fa-journal-whills{--fa:""}.fa-kaaba{--fa:""}.fa-khanda{--fa:""}.fa-landmark{--fa:""}.fa-envelopes-bulk,.fa-mail-bulk{--fa:""}.fa-menorah{--fa:""}.fa-mosque{--fa:""}.fa-om{--fa:""}.fa-pastafarianism,.fa-spaghetti-monster-flying{--fa:""}.fa-peace{--fa:""}.fa-place-of-worship{--fa:""}.fa-poll,.fa-square-poll-vertical{--fa:""}.fa-poll-h,.fa-square-poll-horizontal{--fa:""}.fa-person-praying,.fa-pray{--fa:""}.fa-hands-praying,.fa-praying-hands{--fa:""}.fa-book-quran,.fa-quran{--fa:""}.fa-magnifying-glass-dollar,.fa-search-dollar{--fa:""}.fa-magnifying-glass-location,.fa-search-location{--fa:""}.fa-socks{--fa:""}.fa-square-root-alt,.fa-square-root-variable{--fa:""}.fa-star-and-crescent{--fa:""}.fa-star-of-david{--fa:""}.fa-synagogue{--fa:""}.fa-scroll-torah,.fa-torah{--fa:""}.fa-torii-gate{--fa:""}.fa-vihara{--fa:""}.fa-volume-mute,.fa-volume-times,.fa-volume-xmark{--fa:""}.fa-yin-yang{--fa:""}.fa-blender-phone{--fa:""}.fa-book-dead,.fa-book-skull{--fa:""}.fa-campground{--fa:""}.fa-cat{--fa:""}.fa-chair{--fa:""}.fa-cloud-moon{--fa:""}.fa-cloud-sun{--fa:""}.fa-cow{--fa:""}.fa-dice-d20{--fa:""}.fa-dice-d6{--fa:""}.fa-dog{--fa:""}.fa-dragon{--fa:""}.fa-drumstick-bite{--fa:""}.fa-dungeon{--fa:""}.fa-file-csv{--fa:""}.fa-fist-raised,.fa-hand-fist{--fa:""}.fa-ghost{--fa:""}.fa-hammer{--fa:""}.fa-hanukiah{--fa:""}.fa-hat-wizard{--fa:""}.fa-hiking,.fa-person-hiking{--fa:""}.fa-hippo{--fa:""}.fa-horse{--fa:""}.fa-house-chimney-crack,.fa-house-damage{--fa:""}.fa-hryvnia,.fa-hryvnia-sign{--fa:""}.fa-mask{--fa:""}.fa-mountain{--fa:""}.fa-network-wired{--fa:""}.fa-otter{--fa:""}.fa-ring{--fa:""}.fa-person-running,.fa-running{--fa:""}.fa-scroll{--fa:""}.fa-skull-crossbones{--fa:""}.fa-slash{--fa:""}.fa-spider{--fa:""}.fa-toilet-paper,.fa-toilet-paper-alt,.fa-toilet-paper-blank{--fa:""}.fa-tractor{--fa:""}.fa-user-injured{--fa:""}.fa-vr-cardboard{--fa:""}.fa-wand-sparkles{--fa:""}.fa-wind{--fa:""}.fa-wine-bottle{--fa:""}.fa-cloud-meatball{--fa:""}.fa-cloud-moon-rain{--fa:""}.fa-cloud-rain{--fa:""}.fa-cloud-showers-heavy{--fa:""}.fa-cloud-sun-rain{--fa:""}.fa-democrat{--fa:""}.fa-flag-usa{--fa:""}.fa-hurricane{--fa:""}.fa-landmark-alt,.fa-landmark-dome{--fa:""}.fa-meteor{--fa:""}.fa-person-booth{--fa:""}.fa-poo-bolt,.fa-poo-storm{--fa:""}.fa-rainbow{--fa:""}.fa-republican{--fa:""}.fa-smog{--fa:""}.fa-temperature-high{--fa:""}.fa-temperature-low{--fa:""}.fa-cloud-bolt,.fa-thunderstorm{--fa:""}.fa-tornado{--fa:""}.fa-volcano{--fa:""}.fa-check-to-slot,.fa-vote-yea{--fa:""}.fa-water{--fa:""}.fa-baby{--fa:""}.fa-baby-carriage,.fa-carriage-baby{--fa:""}.fa-biohazard{--fa:""}.fa-blog{--fa:""}.fa-calendar-day{--fa:""}.fa-calendar-week{--fa:""}.fa-candy-cane{--fa:""}.fa-carrot{--fa:""}.fa-cash-register{--fa:""}.fa-compress-arrows-alt,.fa-minimize{--fa:""}.fa-dumpster{--fa:""}.fa-dumpster-fire{--fa:""}.fa-ethernet{--fa:""}.fa-gifts{--fa:""}.fa-champagne-glasses,.fa-glass-cheers{--fa:""}.fa-glass-whiskey,.fa-whiskey-glass{--fa:""}.fa-earth-europe,.fa-globe-europe{--fa:""}.fa-grip-lines{--fa:""}.fa-grip-lines-vertical{--fa:""}.fa-guitar{--fa:""}.fa-heart-broken,.fa-heart-crack{--fa:""}.fa-holly-berry{--fa:""}.fa-horse-head{--fa:""}.fa-icicles{--fa:""}.fa-igloo{--fa:""}.fa-mitten{--fa:""}.fa-mug-hot{--fa:""}.fa-radiation{--fa:""}.fa-circle-radiation,.fa-radiation-alt{--fa:""}.fa-restroom{--fa:""}.fa-satellite{--fa:""}.fa-satellite-dish{--fa:""}.fa-sd-card{--fa:""}.fa-sim-card{--fa:""}.fa-person-skating,.fa-skating{--fa:""}.fa-person-skiing,.fa-skiing{--fa:""}.fa-person-skiing-nordic,.fa-skiing-nordic{--fa:""}.fa-sleigh{--fa:""}.fa-comment-sms,.fa-sms{--fa:""}.fa-person-snowboarding,.fa-snowboarding{--fa:""}.fa-snowman{--fa:""}.fa-snowplow{--fa:""}.fa-tenge,.fa-tenge-sign{--fa:""}.fa-toilet{--fa:""}.fa-screwdriver-wrench,.fa-tools{--fa:""}.fa-cable-car,.fa-tram{--fa:""}.fa-fire-alt,.fa-fire-flame-curved{--fa:""}.fa-bacon{--fa:""}.fa-book-medical{--fa:""}.fa-bread-slice{--fa:""}.fa-cheese{--fa:""}.fa-clinic-medical,.fa-house-chimney-medical{--fa:""}.fa-clipboard-user{--fa:""}.fa-comment-medical{--fa:""}.fa-crutch{--fa:""}.fa-disease{--fa:""}.fa-egg{--fa:""}.fa-folder-tree{--fa:""}.fa-burger,.fa-hamburger{--fa:""}.fa-hand-middle-finger{--fa:""}.fa-hard-hat,.fa-hat-hard,.fa-helmet-safety{--fa:""}.fa-hospital-user{--fa:""}.fa-hotdog{--fa:""}.fa-ice-cream{--fa:""}.fa-laptop-medical{--fa:""}.fa-pager{--fa:""}.fa-pepper-hot{--fa:""}.fa-pizza-slice{--fa:""}.fa-sack-dollar{--fa:""}.fa-book-tanakh,.fa-tanakh{--fa:""}.fa-bars-progress,.fa-tasks-alt{--fa:""}.fa-trash-arrow-up,.fa-trash-restore{--fa:""}.fa-trash-can-arrow-up,.fa-trash-restore-alt{--fa:""}.fa-user-nurse{--fa:""}.fa-wave-square{--fa:""}.fa-biking,.fa-person-biking{--fa:""}.fa-border-all{--fa:""}.fa-border-none{--fa:""}.fa-border-style,.fa-border-top-left{--fa:""}.fa-digging,.fa-person-digging{--fa:""}.fa-fan{--fa:""}.fa-heart-music-camera-bolt,.fa-icons{--fa:""}.fa-phone-alt,.fa-phone-flip{--fa:""}.fa-phone-square-alt,.fa-square-phone-flip{--fa:""}.fa-photo-film,.fa-photo-video{--fa:""}.fa-remove-format,.fa-text-slash{--fa:""}.fa-arrow-down-z-a,.fa-sort-alpha-desc,.fa-sort-alpha-down-alt{--fa:""}.fa-arrow-up-z-a,.fa-sort-alpha-up-alt{--fa:""}.fa-arrow-down-short-wide,.fa-sort-amount-desc,.fa-sort-amount-down-alt{--fa:""}.fa-arrow-up-short-wide,.fa-sort-amount-up-alt{--fa:""}.fa-arrow-down-9-1,.fa-sort-numeric-desc,.fa-sort-numeric-down-alt{--fa:""}.fa-arrow-up-9-1,.fa-sort-numeric-up-alt{--fa:""}.fa-spell-check{--fa:""}.fa-voicemail{--fa:""}.fa-hat-cowboy{--fa:""}.fa-hat-cowboy-side{--fa:""}.fa-computer-mouse,.fa-mouse{--fa:""}.fa-radio{--fa:""}.fa-record-vinyl{--fa:""}.fa-walkie-talkie{--fa:""}.fa-caravan{--fa:""}:host,:root{--fa-family-brands:"Font Awesome 7 Brands";--fa-font-brands:normal 400 1em/1 var(--fa-family-brands)}@font-face{font-family:"Font Awesome 7 Brands";font-style:normal;font-weight:400;font-display:block;src:url(./fa-brands-400-BfBXV7Mm.woff2)}.fa-brands,.fa-classic.fa-brands,.fab{--fa-family:var(--fa-family-brands);--fa-style:400}.fa-firefox-browser{--fa:""}.fa-ideal{--fa:""}.fa-microblog{--fa:""}.fa-pied-piper-square,.fa-square-pied-piper{--fa:""}.fa-unity{--fa:""}.fa-dailymotion{--fa:""}.fa-instagram-square,.fa-square-instagram{--fa:""}.fa-mixer{--fa:""}.fa-shopify{--fa:""}.fa-deezer{--fa:""}.fa-edge-legacy{--fa:""}.fa-google-pay{--fa:""}.fa-rust{--fa:""}.fa-tiktok{--fa:""}.fa-unsplash{--fa:""}.fa-cloudflare{--fa:""}.fa-guilded{--fa:""}.fa-hive{--fa:""}.fa-42-group,.fa-innosoft{--fa:""}.fa-instalod{--fa:""}.fa-octopus-deploy{--fa:""}.fa-perbyte{--fa:""}.fa-uncharted{--fa:""}.fa-watchman-monitoring{--fa:""}.fa-wodu{--fa:""}.fa-wirsindhandwerk,.fa-wsh{--fa:""}.fa-bots{--fa:""}.fa-cmplid{--fa:""}.fa-bilibili{--fa:""}.fa-golang{--fa:""}.fa-pix{--fa:""}.fa-sitrox{--fa:""}.fa-hashnode{--fa:""}.fa-meta{--fa:""}.fa-padlet{--fa:""}.fa-nfc-directional{--fa:""}.fa-nfc-symbol{--fa:""}.fa-screenpal{--fa:""}.fa-space-awesome{--fa:""}.fa-square-font-awesome{--fa:""}.fa-gitlab-square,.fa-square-gitlab{--fa:""}.fa-odysee{--fa:""}.fa-stubber{--fa:""}.fa-debian{--fa:""}.fa-shoelace{--fa:""}.fa-threads{--fa:""}.fa-square-threads{--fa:""}.fa-square-x-twitter{--fa:""}.fa-x-twitter{--fa:""}.fa-opensuse{--fa:""}.fa-letterboxd{--fa:""}.fa-square-letterboxd{--fa:""}.fa-mintbit{--fa:""}.fa-google-scholar{--fa:""}.fa-brave{--fa:""}.fa-brave-reverse{--fa:""}.fa-pixiv{--fa:""}.fa-upwork{--fa:""}.fa-webflow{--fa:""}.fa-signal-messenger{--fa:""}.fa-bluesky{--fa:""}.fa-jxl{--fa:""}.fa-square-upwork{--fa:""}.fa-web-awesome{--fa:""}.fa-square-web-awesome{--fa:""}.fa-square-web-awesome-stroke{--fa:""}.fa-dart-lang{--fa:""}.fa-flutter{--fa:""}.fa-files-pinwheel{--fa:""}.fa-css{--fa:""}.fa-square-bluesky{--fa:""}.fa-openai{--fa:""}.fa-square-linkedin{--fa:""}.fa-cash-app{--fa:""}.fa-disqus{--fa:""}.fa-11ty,.fa-eleventy{--fa:""}.fa-kakao-talk{--fa:""}.fa-linktree{--fa:""}.fa-notion{--fa:""}.fa-pandora{--fa:""}.fa-pixelfed{--fa:""}.fa-tidal{--fa:""}.fa-vsco{--fa:""}.fa-w3c{--fa:""}.fa-lumon{--fa:""}.fa-lumon-drop{--fa:""}.fa-square-figma{--fa:""}.fa-tex{--fa:""}.fa-duolingo{--fa:""}.fa-square-twitter,.fa-twitter-square{--fa:""}.fa-facebook-square,.fa-square-facebook{--fa:""}.fa-linkedin{--fa:""}.fa-github-square,.fa-square-github{--fa:""}.fa-twitter{--fa:""}.fa-facebook{--fa:""}.fa-github{--fa:""}.fa-pinterest{--fa:""}.fa-pinterest-square,.fa-square-pinterest{--fa:""}.fa-google-plus-square,.fa-square-google-plus{--fa:""}.fa-google-plus-g{--fa:""}.fa-linkedin-in{--fa:""}.fa-github-alt{--fa:""}.fa-maxcdn{--fa:""}.fa-html5{--fa:""}.fa-css3{--fa:""}.fa-btc{--fa:""}.fa-youtube{--fa:""}.fa-xing{--fa:""}.fa-square-xing,.fa-xing-square{--fa:""}.fa-dropbox{--fa:""}.fa-stack-overflow{--fa:""}.fa-instagram{--fa:""}.fa-flickr{--fa:""}.fa-adn{--fa:""}.fa-bitbucket{--fa:""}.fa-tumblr{--fa:""}.fa-square-tumblr,.fa-tumblr-square{--fa:""}.fa-apple{--fa:""}.fa-windows{--fa:""}.fa-android{--fa:""}.fa-linux{--fa:""}.fa-dribbble{--fa:""}.fa-skype{--fa:""}.fa-foursquare{--fa:""}.fa-trello{--fa:""}.fa-gratipay{--fa:""}.fa-vk{--fa:""}.fa-weibo{--fa:""}.fa-renren{--fa:""}.fa-pagelines{--fa:""}.fa-stack-exchange{--fa:""}.fa-square-vimeo,.fa-vimeo-square{--fa:""}.fa-slack,.fa-slack-hash{--fa:""}.fa-wordpress{--fa:""}.fa-openid{--fa:""}.fa-yahoo{--fa:""}.fa-google{--fa:""}.fa-reddit{--fa:""}.fa-reddit-square,.fa-square-reddit{--fa:""}.fa-stumbleupon-circle{--fa:""}.fa-stumbleupon{--fa:""}.fa-delicious{--fa:""}.fa-digg{--fa:""}.fa-pied-piper-pp{--fa:""}.fa-pied-piper-alt{--fa:""}.fa-drupal{--fa:""}.fa-joomla{--fa:""}.fa-behance{--fa:""}.fa-behance-square,.fa-square-behance{--fa:""}.fa-steam{--fa:""}.fa-square-steam,.fa-steam-square{--fa:""}.fa-spotify{--fa:""}.fa-deviantart{--fa:""}.fa-soundcloud{--fa:""}.fa-vine{--fa:""}.fa-codepen{--fa:""}.fa-jsfiddle{--fa:""}.fa-rebel{--fa:""}.fa-empire{--fa:""}.fa-git-square,.fa-square-git{--fa:""}.fa-git{--fa:""}.fa-hacker-news{--fa:""}.fa-tencent-weibo{--fa:""}.fa-qq{--fa:""}.fa-weixin{--fa:""}.fa-slideshare{--fa:""}.fa-twitch{--fa:""}.fa-yelp{--fa:""}.fa-paypal{--fa:""}.fa-google-wallet{--fa:""}.fa-cc-visa{--fa:""}.fa-cc-mastercard{--fa:""}.fa-cc-discover{--fa:""}.fa-cc-amex{--fa:""}.fa-cc-paypal{--fa:""}.fa-cc-stripe{--fa:""}.fa-lastfm{--fa:""}.fa-lastfm-square,.fa-square-lastfm{--fa:""}.fa-ioxhost{--fa:""}.fa-angellist{--fa:""}.fa-buysellads{--fa:""}.fa-connectdevelop{--fa:""}.fa-dashcube{--fa:""}.fa-forumbee{--fa:""}.fa-leanpub{--fa:""}.fa-sellsy{--fa:""}.fa-shirtsinbulk{--fa:""}.fa-simplybuilt{--fa:""}.fa-skyatlas{--fa:""}.fa-pinterest-p{--fa:""}.fa-whatsapp{--fa:""}.fa-viacoin{--fa:""}.fa-medium,.fa-medium-m{--fa:""}.fa-y-combinator{--fa:""}.fa-optin-monster{--fa:""}.fa-opencart{--fa:""}.fa-expeditedssl{--fa:""}.fa-cc-jcb{--fa:""}.fa-cc-diners-club{--fa:""}.fa-creative-commons{--fa:""}.fa-gg{--fa:""}.fa-gg-circle{--fa:""}.fa-odnoklassniki{--fa:""}.fa-odnoklassniki-square,.fa-square-odnoklassniki{--fa:""}.fa-get-pocket{--fa:""}.fa-wikipedia-w{--fa:""}.fa-safari{--fa:""}.fa-chrome{--fa:""}.fa-firefox{--fa:""}.fa-opera{--fa:""}.fa-internet-explorer{--fa:""}.fa-contao{--fa:""}.fa-500px{--fa:""}.fa-amazon{--fa:""}.fa-houzz{--fa:""}.fa-vimeo-v{--fa:""}.fa-black-tie{--fa:""}.fa-fonticons{--fa:""}.fa-reddit-alien{--fa:""}.fa-edge{--fa:""}.fa-codiepie{--fa:""}.fa-modx{--fa:""}.fa-fort-awesome{--fa:""}.fa-usb{--fa:""}.fa-product-hunt{--fa:""}.fa-mixcloud{--fa:""}.fa-scribd{--fa:""}.fa-bluetooth{--fa:""}.fa-bluetooth-b{--fa:""}.fa-gitlab{--fa:""}.fa-wpbeginner{--fa:""}.fa-wpforms{--fa:""}.fa-envira{--fa:""}.fa-glide{--fa:""}.fa-glide-g{--fa:""}.fa-viadeo{--fa:""}.fa-square-viadeo,.fa-viadeo-square{--fa:""}.fa-snapchat,.fa-snapchat-ghost{--fa:""}.fa-snapchat-square,.fa-square-snapchat{--fa:""}.fa-pied-piper{--fa:""}.fa-first-order{--fa:""}.fa-yoast{--fa:""}.fa-themeisle{--fa:""}.fa-google-plus{--fa:""}.fa-font-awesome,.fa-font-awesome-flag,.fa-font-awesome-logo-full{--fa:""}.fa-linode{--fa:""}.fa-quora{--fa:""}.fa-free-code-camp{--fa:""}.fa-telegram,.fa-telegram-plane{--fa:""}.fa-bandcamp{--fa:""}.fa-grav{--fa:""}.fa-etsy{--fa:""}.fa-imdb{--fa:""}.fa-ravelry{--fa:""}.fa-sellcast{--fa:""}.fa-superpowers{--fa:""}.fa-wpexplorer{--fa:""}.fa-meetup{--fa:""}.fa-font-awesome-alt,.fa-square-font-awesome-stroke{--fa:""}.fa-accessible-icon{--fa:""}.fa-accusoft{--fa:""}.fa-adversal{--fa:""}.fa-affiliatetheme{--fa:""}.fa-algolia{--fa:""}.fa-amilia{--fa:""}.fa-angrycreative{--fa:""}.fa-app-store{--fa:""}.fa-app-store-ios{--fa:""}.fa-apper{--fa:""}.fa-asymmetrik{--fa:""}.fa-audible{--fa:""}.fa-avianex{--fa:""}.fa-aws{--fa:""}.fa-bimobject{--fa:""}.fa-bitcoin{--fa:""}.fa-bity{--fa:""}.fa-blackberry{--fa:""}.fa-blogger{--fa:""}.fa-blogger-b{--fa:""}.fa-buromobelexperte{--fa:""}.fa-centercode{--fa:""}.fa-cloudscale{--fa:""}.fa-cloudsmith{--fa:""}.fa-cloudversify{--fa:""}.fa-cpanel{--fa:""}.fa-css3-alt{--fa:""}.fa-cuttlefish{--fa:""}.fa-d-and-d{--fa:""}.fa-deploydog{--fa:""}.fa-deskpro{--fa:""}.fa-digital-ocean{--fa:""}.fa-discord{--fa:""}.fa-discourse{--fa:""}.fa-dochub{--fa:""}.fa-docker{--fa:""}.fa-draft2digital{--fa:""}.fa-dribbble-square,.fa-square-dribbble{--fa:""}.fa-dyalog{--fa:""}.fa-earlybirds{--fa:""}.fa-erlang{--fa:""}.fa-facebook-f{--fa:""}.fa-facebook-messenger{--fa:""}.fa-firstdraft{--fa:""}.fa-fonticons-fi{--fa:""}.fa-fort-awesome-alt{--fa:""}.fa-freebsd{--fa:""}.fa-gitkraken{--fa:""}.fa-gofore{--fa:""}.fa-goodreads{--fa:""}.fa-goodreads-g{--fa:""}.fa-google-drive{--fa:""}.fa-google-play{--fa:""}.fa-gripfire{--fa:""}.fa-grunt{--fa:""}.fa-gulp{--fa:""}.fa-hacker-news-square,.fa-square-hacker-news{--fa:""}.fa-hire-a-helper{--fa:""}.fa-hotjar{--fa:""}.fa-hubspot{--fa:""}.fa-itunes{--fa:""}.fa-itunes-note{--fa:""}.fa-jenkins{--fa:""}.fa-joget{--fa:""}.fa-js{--fa:""}.fa-js-square,.fa-square-js{--fa:""}.fa-keycdn{--fa:""}.fa-kickstarter,.fa-square-kickstarter{--fa:""}.fa-kickstarter-k{--fa:""}.fa-laravel{--fa:""}.fa-line{--fa:""}.fa-lyft{--fa:""}.fa-magento{--fa:""}.fa-medapps{--fa:""}.fa-medrt{--fa:""}.fa-microsoft{--fa:""}.fa-mix{--fa:""}.fa-mizuni{--fa:""}.fa-monero{--fa:""}.fa-napster{--fa:""}.fa-node-js{--fa:""}.fa-npm{--fa:""}.fa-ns8{--fa:""}.fa-nutritionix{--fa:""}.fa-page4{--fa:""}.fa-palfed{--fa:""}.fa-patreon{--fa:""}.fa-periscope{--fa:""}.fa-phabricator{--fa:""}.fa-phoenix-framework{--fa:""}.fa-playstation{--fa:""}.fa-pushed{--fa:""}.fa-python{--fa:""}.fa-red-river{--fa:""}.fa-rendact,.fa-wpressr{--fa:""}.fa-replyd{--fa:""}.fa-resolving{--fa:""}.fa-rocketchat{--fa:""}.fa-rockrms{--fa:""}.fa-schlix{--fa:""}.fa-searchengin{--fa:""}.fa-servicestack{--fa:""}.fa-sistrix{--fa:""}.fa-speakap{--fa:""}.fa-staylinked{--fa:""}.fa-steam-symbol{--fa:""}.fa-sticker-mule{--fa:""}.fa-studiovinari{--fa:""}.fa-supple{--fa:""}.fa-uber{--fa:""}.fa-uikit{--fa:""}.fa-uniregistry{--fa:""}.fa-untappd{--fa:""}.fa-ussunnah{--fa:""}.fa-vaadin{--fa:""}.fa-viber{--fa:""}.fa-vimeo{--fa:""}.fa-vnv{--fa:""}.fa-square-whatsapp,.fa-whatsapp-square{--fa:""}.fa-whmcs{--fa:""}.fa-wordpress-simple{--fa:""}.fa-xbox{--fa:""}.fa-yandex{--fa:""}.fa-yandex-international{--fa:""}.fa-apple-pay{--fa:""}.fa-cc-apple-pay{--fa:""}.fa-fly{--fa:""}.fa-node{--fa:""}.fa-osi{--fa:""}.fa-react{--fa:""}.fa-autoprefixer{--fa:""}.fa-less{--fa:""}.fa-sass{--fa:""}.fa-vuejs{--fa:""}.fa-angular{--fa:""}.fa-aviato{--fa:""}.fa-ember{--fa:""}.fa-gitter{--fa:""}.fa-hooli{--fa:""}.fa-strava{--fa:""}.fa-stripe{--fa:""}.fa-stripe-s{--fa:""}.fa-typo3{--fa:""}.fa-amazon-pay{--fa:""}.fa-cc-amazon-pay{--fa:""}.fa-ethereum{--fa:""}.fa-korvue{--fa:""}.fa-elementor{--fa:""}.fa-square-youtube,.fa-youtube-square{--fa:""}.fa-flipboard{--fa:""}.fa-hips{--fa:""}.fa-php{--fa:""}.fa-quinscape{--fa:""}.fa-readme{--fa:""}.fa-java{--fa:""}.fa-pied-piper-hat{--fa:""}.fa-creative-commons-by{--fa:""}.fa-creative-commons-nc{--fa:""}.fa-creative-commons-nc-eu{--fa:""}.fa-creative-commons-nc-jp{--fa:""}.fa-creative-commons-nd{--fa:""}.fa-creative-commons-pd{--fa:""}.fa-creative-commons-pd-alt{--fa:""}.fa-creative-commons-remix{--fa:""}.fa-creative-commons-sa{--fa:""}.fa-creative-commons-sampling{--fa:""}.fa-creative-commons-sampling-plus{--fa:""}.fa-creative-commons-share{--fa:""}.fa-creative-commons-zero{--fa:""}.fa-ebay{--fa:""}.fa-keybase{--fa:""}.fa-mastodon{--fa:""}.fa-r-project{--fa:""}.fa-researchgate{--fa:""}.fa-teamspeak{--fa:""}.fa-first-order-alt{--fa:""}.fa-fulcrum{--fa:""}.fa-galactic-republic{--fa:""}.fa-galactic-senate{--fa:""}.fa-jedi-order{--fa:""}.fa-mandalorian{--fa:""}.fa-old-republic{--fa:""}.fa-phoenix-squadron{--fa:""}.fa-sith{--fa:""}.fa-trade-federation{--fa:""}.fa-wolf-pack-battalion{--fa:""}.fa-hornbill{--fa:""}.fa-mailchimp{--fa:""}.fa-megaport{--fa:""}.fa-nimblr{--fa:""}.fa-rev{--fa:""}.fa-shopware{--fa:""}.fa-squarespace{--fa:""}.fa-themeco{--fa:""}.fa-weebly{--fa:""}.fa-wix{--fa:""}.fa-ello{--fa:""}.fa-hackerrank{--fa:""}.fa-kaggle{--fa:""}.fa-markdown{--fa:""}.fa-neos{--fa:""}.fa-zhihu{--fa:""}.fa-alipay{--fa:""}.fa-the-red-yeti{--fa:""}.fa-critical-role{--fa:""}.fa-d-and-d-beyond{--fa:""}.fa-dev{--fa:""}.fa-fantasy-flight-games{--fa:""}.fa-wizards-of-the-coast{--fa:""}.fa-think-peaks{--fa:""}.fa-reacteurope{--fa:""}.fa-artstation{--fa:""}.fa-atlassian{--fa:""}.fa-canadian-maple-leaf{--fa:""}.fa-centos{--fa:""}.fa-confluence{--fa:""}.fa-dhl{--fa:""}.fa-diaspora{--fa:""}.fa-fedex{--fa:""}.fa-fedora{--fa:""}.fa-figma{--fa:""}.fa-intercom{--fa:""}.fa-invision{--fa:""}.fa-jira{--fa:""}.fa-mendeley{--fa:""}.fa-raspberry-pi{--fa:""}.fa-redhat{--fa:""}.fa-sketch{--fa:""}.fa-sourcetree{--fa:""}.fa-suse{--fa:""}.fa-ubuntu{--fa:""}.fa-ups{--fa:""}.fa-usps{--fa:""}.fa-yarn{--fa:""}.fa-airbnb{--fa:""}.fa-battle-net{--fa:""}.fa-bootstrap{--fa:""}.fa-buffer{--fa:""}.fa-chromecast{--fa:""}.fa-evernote{--fa:""}.fa-itch-io{--fa:""}.fa-salesforce{--fa:""}.fa-speaker-deck{--fa:""}.fa-symfony{--fa:""}.fa-waze{--fa:""}.fa-yammer{--fa:""}.fa-git-alt{--fa:""}.fa-stackpath{--fa:""}.fa-cotton-bureau{--fa:""}.fa-buy-n-large{--fa:""}.fa-mdb{--fa:""}.fa-orcid{--fa:""}.fa-swift{--fa:""}.fa-umbraco{--fa:""}:host,:root{--fa-font-regular:normal 400 1em/1 var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:400;font-display:block;src:url(./fa-regular-400-BVHPE7da.woff2)}.far{--fa-family:var(--fa-family-classic)}.fa-regular,.far{--fa-style:400}:host,:root{--fa-family-classic:"Font Awesome 7 Free";--fa-font-solid:normal 900 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:900;font-display:block;src:url(./fa-solid-900-8GirhLYJ.woff2)}.fas{--fa-style:900}.fa-classic,.fas{--fa-family:var(--fa-family-classic)}.fa-solid{--fa-style:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(./fa-brands-400-BfBXV7Mm.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(./fa-solid-900-8GirhLYJ.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(./fa-regular-400-BVHPE7da.woff2) format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(./fa-solid-900-8GirhLYJ.woff2) format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(./fa-brands-400-BfBXV7Mm.woff2) format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(./fa-regular-400-BVHPE7da.woff2) format("woff2");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:FontAwesome;font-display:block;src:url(data:font/woff2;base64,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) format("woff2");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a}.help-ui{left:20px;bottom:20px;padding:10px}.help-ui .help-accordion-icon:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M464%20256a208%20208%200%201%200%20-416%200%20208%20208%200%201%200%20416%200zM0%20256a256%20256%200%201%201%20512%200%20256%20256%200%201%201%20-512%200zm256-80c-17.7%200-32%2014.3-32%2032%200%2013.3-10.7%2024-24%2024s-24-10.7-24-24c0-44.2%2035.8-80%2080-80s80%2035.8%2080%2080c0%2047.2-36%2067.2-56%2074.5l0%203.8c0%2013.3-10.7%2024-24%2024s-24-10.7-24-24l0-8.1c0-20.5%2014.8-35.2%2030.1-40.2%206.4-2.1%2013.2-5.5%2018.2-10.3%204.3-4.2%207.7-10%207.7-19.6%200-17.7-14.3-32-32-32zM224%20368a32%2032%200%201%201%2064%200%2032%2032%200%201%201%20-64%200z'/%3e%3c/svg%3e");display:inline-block;filter:invert(var(--dark-mode));height:16px;width:16px;background-size:16px 16px;vertical-align:text-top;margin-right:4px}.help-ui #hashHolder{font-size:small;margin-top:4px;display:flex;gap:2px}.accordion-content{display:grid;transition:grid-template-rows .3s ease,grid-template-columns .3s cubic-bezier(.7,0,1,.6),padding-top .3s ease;grid-template-rows:0fr;grid-template-columns:0fr;padding-top:0}.accordion-state:checked~.accordion-content{grid-template-rows:1fr;grid-template-columns:1fr;transition:grid-template-rows .3s ease,grid-template-columns .3s cubic-bezier(0,.7,.4,1),padding-top .3s ease;padding-top:8px}.accordion-content *{overflow:hidden;white-space:nowrap;text-overflow:clip}.accordion-button{-webkit-user-select:none;user-select:none;--chevron-scale: 1}.accordion-button.flip-chevron{--chevron-scale: -1}.accordion-button.chevron-right{padding-right:2em}.accordion-button.chevron-left{padding-left:2em}.accordion-button.chevron-right:after{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20448%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M201.4%20406.6c12.5%2012.5%2032.8%2012.5%2045.3%200l192-192c12.5-12.5%2012.5-32.8%200-45.3s-32.8-12.5-45.3%200L224%20338.7%2054.6%20169.4c-12.5-12.5-32.8-12.5-45.3%200s-12.5%2032.8%200%2045.3l192%20192z'/%3e%3c/svg%3e");right:1em;position:absolute;display:inline-block;filter:invert(var(--dark-mode));width:16px;height:16px;background-size:16px 16px;vertical-align:text-top;transition:transform .5s ease;transform:scaleY(var(--chevron-scale))}.accordion-button.chevron-left:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20448%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M201.4%20406.6c12.5%2012.5%2032.8%2012.5%2045.3%200l192-192c12.5-12.5%2012.5-32.8%200-45.3s-32.8-12.5-45.3%200L224%20338.7%2054.6%20169.4c-12.5-12.5-32.8-12.5-45.3%200s-12.5%2032.8%200%2045.3l192%20192z'/%3e%3c/svg%3e");left:1em;position:absolute;display:inline-block;filter:invert(var(--dark-mode));width:16px;height:16px;background-size:16px 16px;vertical-align:text-top;transition:transform .5s ease;transform:scaleY(var(--chevron-scale))}.accordion-state:checked~label .accordion-button:after{transform:scaleY(calc(var(--chevron-scale) * -1))}.accordion-state:checked~label .accordion-button:before{transform:scaleY(calc(var(--chevron-scale) * -1))}#loading-indicator-wrapper{position:fixed;inset:0;z-index:9999;width:100vw;height:100vh;flex-direction:column;justify-content:center;align-items:center;gap:20px;font-size:xx-large;font-weight:700;color:#fff;background-color:#000c}#turning-circle{border:20px solid white;border-top:20px solid #3498db;border-radius:9999px;width:100px;height:100px;animation:spin 2s linear infinite}button.delete-button,button.add-button{background-color:transparent;border:none;cursor:pointer;padding:0}.label-type-editor-ui{padding:10px;top:150px;right:40px;max-height:calc(100vh - 210px);overflow:auto}.label-type-editor-ui *{color:var(--color-foreground)}.label-type-editor-ui .codicon{vertical-align:middle}.label-type-editor-ui hr{height:1px;border:0;background-color:var(--color-foreground)}.label-type-editor-ui input{background-color:transparent;outline:none;border:none}.label-type-editor-ui .label-type-name{font-size:12pt}.label-type-editor-ui .label-type-values,.label-type-editor-ui .label-type-value-add{margin-left:10px}.label-type-value input{background-color:var(--color-background);text-align:center;border:1px solid var(--color-foreground);border-radius:15px;padding:3px;margin:4px}.sprotty-node rect,.sprotty-node line,.sprotty-node circle{stroke:var(--color-foreground);stroke-width:1;fill:color-mix(in srgb,var(--color-primary),var(--color, transparent) 40%)}.sprotty-node .node-label text{font-size:5pt}.sprotty-node .node-label rect,.sprotty-node .node-label .label-delete circle{fill:var(--color-primary);stroke:var(--color-foreground);stroke-width:.5}.sprotty-node .node-label .label-delete text{fill:var(--color-foreground);font-size:5px}.sprotty-edge{stroke:var(--color-foreground);fill:none;stroke-width:1}.sprotty-edge .sprotty-edge path.select-path{stroke:transparent;stroke-width:8}.sprotty-edge .arrow{fill:var(--color-foreground);stroke:none}.sprotty-edge .label-background rect{fill:var(--color-background);stroke-width:0}.sprotty-edge>.sprotty-routing-handle{fill:var(--color-foreground);stroke:none}.sprotty-port rect{stroke:var(--port-border, var(--color-foreground));fill:color-mix(in srgb,var(--port-color, var(--color-primary)),var(--color-background) 25%);stroke-width:.5}.sprotty-port .port-text{font-size:4pt}.sprotty-node.selected circle,.sprotty-node.selected rect,.sprotty-node.selected line,.sprotty-edge.selected{stroke-width:2}.sprotty-port.selected rect{stroke-width:1}text{stroke-width:0;fill:var(--color-foreground);font-family:Arial,sans-serif;font-size:11pt;text-anchor:middle;dominant-baseline:central;-webkit-user-select:none;user-select:none}.sprotty-missing{stroke-width:1;stroke:var(--color-error);fill:var(--color-error)}.label-edit .label-validation-results{position:absolute;background-color:var(--color-primary);padding:8px;border-radius:5px}.label-edit .label-validation-results:before{width:16px;height:16px;background-size:16px 16px;margin-right:4px;content:"";display:inline-block;vertical-align:middle;background-color:var(--color-error);-webkit-mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M256%20512a256%20256%200%201%201%200-512%20256%20256%200%201%201%200%20512zm0-192a32%2032%200%201%200%200%2064%2032%2032%200%201%200%200-64zm0-192c-18.2%200-32.7%2015.5-31.4%2033.7l7.4%20104c.9%2012.6%2011.4%2022.3%2023.9%2022.3%2012.6%200%2023-9.7%2023.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z'/%3e%3c/svg%3e");mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M256%20512a256%20256%200%201%201%200-512%20256%20256%200%201%201%200%20512zm0-192a32%2032%200%201%200%200%2064%2032%2032%200%201%200%200-64zm0-192c-18.2%200-32.7%2015.5-31.4%2033.7l7.4%20104c.9%2012.6%2011.4%2022.3%2023.9%2022.3%2012.6%200%2023-9.7%2023.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z'/%3e%3c/svg%3e")}.dfd-node-annotation-ui{white-space:nowrap}.dfd-node-annotation-ui p{margin:12px}.dfd-node-annotation-ui i.fa{margin-right:5px}.command-palette{transition:opacity .2s ease-in-out;display:flex;flex-direction:column;row-gap:4px;width:350px}.command-palette input{color:var(--color-foreground);background:var(--color-primary)}.command-palette-suggestions-holder{width:100%}.command-palette-suggestion{display:grid;grid-template-columns:24px 1fr 24px 0px;background:var(--color-primary);overflow:visible;height:20px;min-width:100%;white-space:nowrap;width:100%;cursor:pointer}.command-palette-suggestion:hover,.command-palette-suggestion.selected{background:var(--color-background)}.command-palette-suggestion-children{position:relative;top:0;right:0;display:none;background:var(--color-primary);width:fit-content;height:fit-content;border-left:4px solid var(--color-spacer);box-shadow:0 4px 8px #0003,0 6px 20px #00000030}.command-palette-suggestion:hover>.command-palette-suggestion-children,.command-palette-suggestion.expanded>.command-palette-suggestion-children{display:block}.command-palette .fa-solid{text-align:center}.command-palette{transition:opacity .3s linear;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;display:flex;align-items:center}.command-palette input{width:100%;display:flex}.command-palette span.loading{position:absolute;right:5px}.command-palette-suggestions{background:#fff;z-index:1000;overflow:auto;box-sizing:border-box;border:1px solid rgba(60,60,60,.6);box-shadow:0 4px 8px #0003,0 6px 20px #00000030}.command-palette-suggestions .icon{padding-right:.3em;display:flex;align-self:center}.command-palette-suggestions em{font-weight:700;font-style:normal}.command-palette-suggestions>div{padding:0 4px;display:flex}.command-palette-suggestions .group{background:#eee}.command-palette-suggestions>div:hover:not(.group),.command-palette-suggestions>div.selected{cursor:pointer}.command-palette-suggestions>div:hover:not(.group){background:#e0e0e0}.command-palette-suggestions>div.selected{background:#bbdefb}div.settings-ui{left:20px;bottom:70px;padding:10px}.settings-accordion-icon:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M195.1%209.5C198.1-5.3%20211.2-16%20226.4-16l59.8%200c15.2%200%2028.3%2010.7%2031.3%2025.5L332%2079.5c14.1%206%2027.3%2013.7%2039.3%2022.8l67.8-22.5c14.4-4.8%2030.2%201.2%2037.8%2014.4l29.9%2051.8c7.6%2013.2%204.9%2029.8-6.5%2039.9L447%20233.3c.9%207.4%201.3%2015%201.3%2022.7s-.5%2015.3-1.3%2022.7l53.4%2047.5c11.4%2010.1%2014%2026.8%206.5%2039.9l-29.9%2051.8c-7.6%2013.1-23.4%2019.2-37.8%2014.4l-67.8-22.5c-12.1%209.1-25.3%2016.7-39.3%2022.8l-14.4%2069.9c-3.1%2014.9-16.2%2025.5-31.3%2025.5l-59.8%200c-15.2%200-28.3-10.7-31.3-25.5l-14.4-69.9c-14.1-6-27.2-13.7-39.3-22.8L73.5%20432.3c-14.4%204.8-30.2-1.2-37.8-14.4L5.8%20366.1c-7.6-13.2-4.9-29.8%206.5-39.9l53.4-47.5c-.9-7.4-1.3-15-1.3-22.7s.5-15.3%201.3-22.7L12.3%20185.8c-11.4-10.1-14-26.8-6.5-39.9L35.7%2094.1c7.6-13.2%2023.4-19.2%2037.8-14.4l67.8%2022.5c12.1-9.1%2025.3-16.7%2039.3-22.8L195.1%209.5zM256.3%20336a80%2080%200%201%200%20-.6-160%2080%2080%200%201%200%20.6%20160z'/%3e%3c/svg%3e");display:inline-block;filter:invert(var(--dark-mode));height:16px;width:16px;background-size:16px 16px;vertical-align:text-top;margin-right:4px}#settings-content{display:grid;gap:8px 6px;align-items:center}#settings-content>label{grid-column-start:1}#settings-content>input,#settings-content>select,#settings-content>label.switch{grid-column-start:2}#settings-content select{background-color:var(--color-background);color:var(--color-foreground);border:1px solid var(--color-foreground);border-radius:6px}.switch input:disabled+.slider{background-color:color-mix(in srgb,var(--color-primary) 50%,#555 50%)}.switch input:disabled+.slider:before{background-color:color-mix(in srgb,var(--color-background) 50%,#555 50%)}.switch{position:relative;display:inline-block;width:30px;height:17px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-background);-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:"";height:13px;width:13px;left:2px;bottom:2px;background-color:var(--color-primary);-webkit-transition:.3s;transition:.3s}input:checked+.slider{background-color:var(--color-background)}input:checked+.slider:before{-webkit-transform:translateX(13px);-ms-transform:translateX(13px);transform:translate(13px);background-color:var(--color-foreground)}.slider.round{border-radius:17px}.slider.round:before{border-radius:50%}.tool-palette{top:40px;padding:3px;right:40px;-webkit-user-select:none;user-select:none;display:grid;grid-template-columns:1fr 1fr 1fr}.tool-palette .tool{width:32px;height:32px;border-radius:5px;padding:2px;margin:2px}.tool-palette .tool svg line,.tool-palette .tool svg path,.tool-palette .tool svg rect,.tool-palette .tool svg circle{stroke:var(--color-foreground);fill:transparent}.tool-palette .tool svg .fill{fill:var(--color-foreground)}.tool-palette .tool svg text{fill:var(--color-foreground);font-size:10px;font-family:sans-serif;text-anchor:middle;dominant-baseline:central}.tool-palette .tool:hover{cursor:pointer;background-color:var(--color-tool-palette-hover)}.tool-palette .tool.active{background-color:var(--color-tool-palette-selected)}.tool-palette .tool .shortcut{position:relative;bottom:16px;left:-4px;font-size:.75em;transition:opacity .3s ease-in-out;opacity:0}body.help-enabled .tool-palette .tool .shortcut{opacity:1}div.constraint-menu{right:20px;bottom:20px;padding:10px}.accordion-content:has(.monaco-editor.focused) *{overflow:visible}#constraint-menu-expand-title{padding-right:85px}#run-button-container{position:absolute;right:6px;bottom:6px;width:80px;z-index:50}#run-button{background-color:green;color:#fff;border:none;border-radius:8px;padding:5px 10px;text-align:center;text-decoration:none;display:inline-block;width:100%;cursor:pointer}#run-button:before{content:"";background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20448%20512'%3e%3c!--!%20Font%20Awesome%20Free%207.1.0%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20(Icons:%20CC%20BY%204.0,%20Fonts:%20SIL%20OFL%201.1,%20Code:%20MIT%20License)%20Copyright%202025%20Fonticons,%20Inc.%20--%3e%3cpath%20fill='currentColor'%20d='M91.2%2036.9c-12.4-6.8-27.4-6.5-39.6%20.7S32%2057.9%2032%2072l0%20368c0%2014.1%207.5%2027.2%2019.6%2034.4s27.2%207.5%2039.6%20.7l336-184c12.8-7%2020.8-20.5%2020.8-35.1s-8-28.1-20.8-35.1l-336-184z'/%3e%3c/svg%3e");display:inline-block;filter:invert(1);height:16px;width:16px;background-size:16px 16px;vertical-align:text-top}#constraint-menu-input{min-width:300px}#constraint-menu-input *{overflow:visible}#constraint-menu-input .overflow-guard{overflow:hidden}#validation-label{height:1rem;color:var(--color-error)}#validation-label.valid{color:var(--color-valid)}#constraint-menu-list{grid-row-start:1;grid-row-end:2;grid-column-start:2;overflow:scroll;max-height:210px}#constraint-menu-list *{color:var(--color-foreground)}.constrain-label input{background-color:var(--color-background);text-align:center;border:1px solid var(--color-foreground);border-radius:15px;padding:3px;margin:4px}.constrain-label.selected input{border:2px solid var(--color-foreground)}.constrain-label button{background-color:transparent;border:none;cursor:pointer;padding:0}.constraint-add{padding:0;border:none;background-color:transparent;cursor:pointer;display:flex;align-items:center;gap:5px}#constraint-options-button{position:absolute;top:6px;right:6px;background:transparent;border:none;font-size:1.2em;cursor:pointer;color:var(--color-foreground);padding:2px}#constraint-options-menu{position:absolute;top:30px;right:6px;background:var(--color-background);border:1px solid var(--color-foreground);border-radius:4px;padding:8px;z-index:100;box-shadow:0 2px 6px #0003}#constraint-options-menu .options-item{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:.9em;color:var(--color-foreground)}#constraint-options-menu .options-item:last-child{margin-bottom:0}.assignment-edit-ui{position:absolute;padding:10px;-webkit-user-select:none;user-select:none;background:var(--color-primary)}.assignment-edit-ui div.unavailable-inputs{padding-bottom:5px}.assignment-edit-ui div.validation-label.validation-error{color:var(--color-error)}.assignment-edit-ui div.validation-label.validation-success{color:var(--color-valid)}.violation-ui{right:20px;bottom:70px;padding:10px;max-width:30vw}.violation-ui .tab-pane{display:none;font-size:13px;max-width:100%}.violation-ui .tab-pane.active{display:block}.violation-ui .violation-tabs{display:flex;margin-bottom:10px}.violation-ui .tab-btn{flex:1;padding:5px;cursor:pointer;border:none;background:none;font-size:12px;color:var(--sprotty-label-color)}.violation-ui .tab-btn.active{border-bottom:2px solid #007acc;font-weight:700}.violation-ui #ai-api-key{background-color:var(--color-background);color:var(--color-foreground);border:1px solid var(--color-foreground);border-radius:6px}.violation-ui .api-key-container{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;margin-bottom:15px;padding:5px}.violation-ui .api-key-container label{font-size:11px;font-weight:700;white-space:nowrap}.violation-ui .api-key-container input{width:100%;padding:4px 8px;font-size:12px;border:1px solid var(--color-foreground);border-radius:3px;background:var(--sprotty-input-background, var(--color-background));color:var(--sprotty-label-color);box-sizing:border-box}.violation-ui .button-container{display:flex;justify-content:flex-end;margin-bottom:20px}.violation-ui .generate-btn{background-color:var(--sprotty-button-background, #007acc);color:var(--sprotty-button-foreground, #ffffff);border:none;padding:6px 12px;font-size:12px;border-radius:4px;cursor:pointer}.violation-ui .summary-text{width:100%;display:block;white-space:normal;word-wrap:break-word;overflow-wrap:anywhere;max-height:250px;overflow-y:auto}.violation-ui .summary-text p{margin:0;display:block;width:100%;white-space:normal}.violation-ui .status-info{display:block;width:100%;color:#636e72;font-style:italic;font-size:.9em;line-height:1.4;text-align:center;padding:20px 10px;box-sizing:border-box;margin:0 auto}.violation-ui .violation-item{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1);text-align:left} diff --git a/deploy/online-shop/assets/monaco-editor-B8Nwu8CH.css b/deploy/online-shop/assets/monaco-editor-B8Nwu8CH.css deleted file mode 100644 index fa4c03b9..00000000 --- a/deploy/online-shop/assets/monaco-editor-B8Nwu8CH.css +++ /dev/null @@ -1 +0,0 @@ -.monaco-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,system-ui,Ubuntu,Droid Sans,sans-serif;--monaco-monospace-font: "SF Mono", Monaco, Menlo, Consolas, "Ubuntu Mono", "Liberation Mono", "DejaVu Sans Mono", "Courier New", monospace}.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-hover p{margin:0}.monaco-aria-container{position:absolute!important;top:0;height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%)}.monaco-editor,.monaco-diff-editor .synthetic-focus,.monaco-diff-editor [tabindex="0"]:focus,.monaco-diff-editor [tabindex="-1"]:focus,.monaco-diff-editor button:focus,.monaco-diff-editor input[type=button]:focus,.monaco-diff-editor input[type=checkbox]:focus,.monaco-diff-editor input[type=search]:focus,.monaco-diff-editor input[type=text]:focus,.monaco-diff-editor select:focus,.monaco-diff-editor textarea:focus{outline-width:1px;outline-style:solid;outline-offset:-1px;outline-color:var(--vscode-focusBorder);opacity:1}.monaco-workbench .workbench-hover{position:relative;font-size:13px;line-height:19px;z-index:40;overflow:hidden;max-width:700px;background:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px;color:var(--vscode-editorHoverWidget-foreground);box-shadow:0 2px 8px var(--vscode-widget-shadow)}.monaco-workbench .workbench-hover hr{border-bottom:none}.monaco-workbench .workbench-hover:not(.skip-fade-in){animation:fadein .1s linear}.monaco-workbench .workbench-hover.compact{font-size:12px}.monaco-workbench .workbench-hover.compact .hover-contents{padding:2px 8px}.monaco-workbench .workbench-hover-container.locked .workbench-hover{outline:1px solid var(--vscode-editorHoverWidget-border)}.monaco-workbench .workbench-hover-container.locked .workbench-hover:focus,.monaco-workbench .workbench-hover-lock:focus{outline:1px solid var(--vscode-focusBorder)}.monaco-workbench .workbench-hover-container.locked .workbench-hover-lock:hover{background:var(--vscode-toolbar-hoverBackground)}.monaco-workbench .workbench-hover-pointer{position:absolute;z-index:41;pointer-events:none}.monaco-workbench .workbench-hover-pointer:after{content:"";position:absolute;width:5px;height:5px;background-color:var(--vscode-editorHoverWidget-background);border-right:1px solid var(--vscode-editorHoverWidget-border);border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-workbench .locked .workbench-hover-pointer:after{width:4px;height:4px;border-right-width:2px;border-bottom-width:2px}.monaco-workbench .workbench-hover-pointer.left{left:-3px}.monaco-workbench .workbench-hover-pointer.right{right:3px}.monaco-workbench .workbench-hover-pointer.top{top:-3px}.monaco-workbench .workbench-hover-pointer.bottom{bottom:3px}.monaco-workbench .workbench-hover-pointer.left:after{transform:rotate(135deg)}.monaco-workbench .workbench-hover-pointer.right:after{transform:rotate(315deg)}.monaco-workbench .workbench-hover-pointer.top:after{transform:rotate(225deg)}.monaco-workbench .workbench-hover-pointer.bottom:after{transform:rotate(45deg)}.monaco-workbench .workbench-hover a{color:var(--vscode-textLink-foreground)}.monaco-workbench .workbench-hover a:focus{outline:1px solid;outline-offset:-1px;text-decoration:underline;outline-color:var(--vscode-focusBorder)}.monaco-workbench .workbench-hover a:hover,.monaco-workbench .workbench-hover a:active{color:var(--vscode-textLink-activeForeground)}.monaco-workbench .workbench-hover code{background:var(--vscode-textCodeBlock-background)}.monaco-workbench .workbench-hover .hover-row .actions{background:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-workbench .workbench-hover.right-aligned{left:1px}.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions{flex-direction:row-reverse}.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions .action-container{margin-right:0;margin-left:16px}.monaco-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.monaco-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity .8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.scrollbar>.slider{background:var(--vscode-scrollbarSlider-background)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-scrollable-element>.scrollbar>.slider.active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-hover{cursor:default;position:absolute;overflow:hidden;user-select:text;-webkit-user-select:text;box-sizing:border-box;animation:fadein .1s linear;line-height:1.5em;white-space:var(--vscode-hover-whiteSpace, normal)}.monaco-hover.hidden{display:none}.monaco-hover a:hover:not(.disabled){cursor:pointer}.monaco-hover .hover-contents:not(.html-hover-contents){padding:4px 8px}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:var(--vscode-hover-maxWidth, 500px);word-wrap:break-word}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100%}.monaco-hover p,.monaco-hover .code,.monaco-hover ul,.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{margin:8px 0}.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{line-height:1.1}.monaco-hover code{font-family:var(--monaco-monospace-font)}.monaco-hover hr{box-sizing:border-box;border-left:0px;border-right:0px;margin:4px -8px -4px;height:1px}.monaco-hover p:first-child,.monaco-hover .code:first-child,.monaco-hover ul:first-child{margin-top:0}.monaco-hover p:last-child,.monaco-hover .code:last-child,.monaco-hover ul:last-child{margin-bottom:0}.monaco-hover ul,.monaco-hover ol{padding-left:20px}.monaco-hover li>p{margin-bottom:0}.monaco-hover li>ul{margin-top:0}.monaco-hover code{border-radius:3px;padding:0 .4em}.monaco-hover .monaco-tokenized-source{white-space:var(--vscode-hover-sourceWhiteSpace, pre-wrap)}.monaco-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-hover .hover-row.status-bar .info{font-style:italic;padding:0 8px}.monaco-hover .hover-row.status-bar .actions{display:flex;padding:0 8px;width:100%}.monaco-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-hover .hover-row.status-bar .actions .action-container a{color:var(--vscode-textLink-foreground);text-decoration:var(--text-link-decoration)}.monaco-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-hover .hover-contents a.code-link:hover,.monaco-hover .hover-contents a.code-link{color:inherit}.monaco-hover .hover-contents a.code-link:before{content:"("}.monaco-hover .hover-contents a.code-link:after{content:")"}.monaco-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground)}.monaco-hover .hover-contents a.code-link>span:hover{color:var(--vscode-textLink-activeForeground)}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span{margin-bottom:4px;display:inline-block}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span.codicon{margin-bottom:2px}.monaco-hover-content .action-container a{-webkit-user-select:none;user-select:none}.monaco-hover-content .action-container.disabled{pointer-events:none;opacity:.4;cursor:default}.monaco-editor .rendered-markdown kbd{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow);vertical-align:middle;padding:1px 3px}.rendered-markdown li:has(input[type=checkbox]){list-style-type:none}.monaco-aria-container{position:absolute;left:-999em}.context-view{position:absolute}.context-view.fixed{all:initial;font-family:inherit;font-size:13px;position:fixed;color:inherit}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{user-select:none;-webkit-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list .monaco-scrollable-element>.scrollbar.vertical,.monaco-pane-view>.monaco-split-view2.vertical>.monaco-scrollable-element>.scrollbar.vertical{z-index:14}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-single,.monaco-list.selection-multiple{outline:0!important}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute;z-index:1000}.monaco-list-type-filter-message{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-select-box-dropdown-padding{--dropdown-padding-top: 1px;--dropdown-padding-bottom: 1px}.hc-black .monaco-select-box-dropdown-padding,.hc-light .monaco-select-box-dropdown-padding{--dropdown-padding-top: 3px;--dropdown-padding-bottom: 4px}.monaco-select-box-dropdown-container{display:none;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown *{margin:0}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown a:focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown code{line-height:15px;font-family:var(--monaco-monospace-font)}.monaco-select-box-dropdown-container.visible{display:flex;flex-direction:column;text-align:left;width:1px;overflow:hidden;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container{flex:0 0 auto;align-self:flex-start;padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom);padding-left:1px;padding-right:1px;width:100%;overflow:hidden;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane{padding:5px}.hc-black .monaco-select-box-dropdown-container>.select-box-dropdown-list-container{padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom)}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row{cursor:pointer}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-text{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-detail{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left;opacity:.7}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-decorator-right{text-overflow:ellipsis;overflow:hidden;padding-right:10px;white-space:nowrap;float:right}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.visually-hidden{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control{flex:1 1 auto;align-self:flex-start;opacity:0}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div{overflow:hidden;max-height:0px}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div>.option-text-width-control{padding-left:4px;padding-right:8px;white-space:nowrap}.monaco-select-box{width:100%;cursor:pointer;border-radius:2px}.monaco-select-box-dropdown-container{font-size:13px;font-weight:400;text-transform:none}.monaco-action-bar .action-item.select-container{cursor:default}.monaco-action-bar .action-item .monaco-select-box{cursor:pointer;min-width:100px;min-height:18px;padding:2px 23px 2px 8px}.mac .monaco-action-bar .action-item .monaco-select-box{font-size:11px;border-radius:5px}.monaco-action-bar{white-space:nowrap;height:100%}.monaco-action-bar .actions-container{display:flex;margin:0 auto;padding:0;height:100%;width:100%;align-items:center}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar .action-item{display:block;align-items:center;justify-content:center;cursor:pointer;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar .action-item .icon,.monaco-action-bar .action-item .codicon{display:block}.monaco-action-bar .action-item .codicon{display:flex;align-items:center;width:16px;height:16px}.monaco-action-bar .action-label{display:flex;font-size:11px;padding:3px;border-radius:5px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:before,.monaco-action-bar .action-item.disabled .action-label:hover{color:var(--vscode-disabledForeground)}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:.8em;margin-right:.8em}.monaco-action-bar .action-item .action-label.separator{width:1px;height:16px;margin:5px 4px!important;cursor:default;min-width:1px;padding:0;background-color:#bbb}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;flex:1;max-width:170px;min-width:60px;display:flex;align-items:center;justify-content:center;margin-right:10px}.monaco-action-bar .action-item.action-dropdown-item{display:flex}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator{display:flex;align-items:center;cursor:default}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator>div{width:1px}.monaco-dropdown{height:100%;padding:0}.monaco-dropdown>.dropdown-label{cursor:pointer;height:100%;display:flex;align-items:center;justify-content:center}.monaco-dropdown>.dropdown-label>.action-label.disabled{cursor:default}.monaco-dropdown-with-primary{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-primary>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.monaco-action-bar .action-item.menu-entry .action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-action-bar .action-item.menu-entry.text-only .action-label{color:var(--vscode-descriptionForeground);overflow:hidden;border-radius:2px}.monaco-action-bar .action-item.menu-entry.text-only.use-comma:not(:last-of-type) .action-label:after{content:", "}.monaco-action-bar .action-item.menu-entry.text-only+.action-item:not(.text-only)>.monaco-dropdown .action-label{color:var(--vscode-descriptionForeground)}.monaco-dropdown-with-default{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-default>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-default>.action-container.menu-entry>.action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.quick-input-widget{font-size:13px}.quick-input-widget .monaco-highlighted-label .highlight{color:#0066bf}.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight{color:#9dddff}.vs-dark .quick-input-widget .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .quick-input-widget .monaco-highlighted-label .highlight{color:#f38518}.hc-light .quick-input-widget .monaco-highlighted-label .highlight{color:#0f4a85}.monaco-keybinding>.monaco-keybinding-key{background-color:#ddd6;border:solid 1px rgba(204,204,204,.4);border-bottom-color:#bbb6;box-shadow:inset 0 -1px #bbb6;color:#555}.hc-black .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px rgb(111,195,223);box-shadow:none;color:#fff}.hc-light .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px #0F4A85;box-shadow:none;color:#292929}.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:#8080802b;border:solid 1px rgba(51,51,51,.6);border-bottom-color:#4449;box-shadow:inset 0 -1px #4449;color:#ccc}.monaco-custom-toggle{margin-left:2px;float:left;cursor:pointer;overflow:hidden;width:20px;height:20px;border-radius:3px;border:1px solid transparent;padding:1px;box-sizing:border-box;user-select:none;-webkit-user-select:none}.monaco-custom-toggle:hover{background-color:var(--vscode-inputOption-hoverBackground)}.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{border:1px dashed var(--vscode-focusBorder)}.hc-black .monaco-custom-toggle,.hc-light .monaco-custom-toggle,.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{background:none}.monaco-custom-toggle.monaco-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px!important}.monaco-action-bar .checkbox-action-item{display:flex;align-items:center;border-radius:2px;padding-right:2px}.monaco-action-bar .checkbox-action-item:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-action-bar .checkbox-action-item>.monaco-custom-toggle.monaco-checkbox{margin-right:4px}.monaco-action-bar .checkbox-action-item>.checkbox-label{font-size:12px}.monaco-custom-toggle.monaco-checkbox:not(.checked):before{visibility:hidden}.quick-input-widget{position:absolute;width:600px;z-index:2550;left:50%;margin-left:-300px;-webkit-app-region:no-drag;border-radius:6px}.quick-input-titlebar{display:flex;align-items:center;border-top-right-radius:5px;border-top-left-radius:5px}.quick-input-left-action-bar{display:flex;margin-left:4px;flex:1}.quick-input-inline-action-bar{margin:2px 0 0 5px}.quick-input-title{padding:3px 0;text-align:center;text-overflow:ellipsis;overflow:hidden}.quick-input-right-action-bar{display:flex;margin-right:4px;flex:1}.quick-input-right-action-bar>.actions-container{justify-content:flex-end}.quick-input-titlebar .monaco-action-bar .action-label.codicon{background-position:center;background-repeat:no-repeat;padding:2px}.quick-input-description{margin:6px 6px 6px 11px}.quick-input-header .quick-input-description{margin:4px 2px;flex:1}.quick-input-header{display:flex;padding:8px 6px 2px}.quick-input-widget.hidden-input .quick-input-header{padding:0;margin-bottom:0}.quick-input-and-message{display:flex;flex-direction:column;flex-grow:1;min-width:0;position:relative}.quick-input-check-all{align-self:center;margin:0}.quick-input-filter{flex-grow:1;display:flex;position:relative}.quick-input-box{flex-grow:1}.quick-input-widget.show-checkboxes .quick-input-box,.quick-input-widget.show-checkboxes .quick-input-message{margin-left:5px}.quick-input-visible-count{position:absolute;left:-10000px}.quick-input-count{align-self:center;position:absolute;right:4px;display:flex;align-items:center}.quick-input-count .monaco-count-badge{vertical-align:middle;padding:2px 4px;border-radius:2px;min-height:auto;line-height:normal}.quick-input-action{margin-left:6px}.quick-input-action .monaco-text-button{font-size:11px;padding:0 6px;display:flex;height:25px;align-items:center}.quick-input-message{margin-top:-1px;padding:5px;overflow-wrap:break-word}.quick-input-message>.codicon{margin:0 .2em;vertical-align:text-bottom}.quick-input-message a{color:inherit}.quick-input-progress.monaco-progress-container{position:relative}.quick-input-list{line-height:22px}.quick-input-widget.hidden-input .quick-input-list{margin-top:4px;padding-bottom:4px}.quick-input-list .monaco-list{overflow:hidden;max-height:440px;padding-bottom:5px}.quick-input-list .monaco-scrollable-element{padding:0 5px}.quick-input-list .quick-input-list-entry{box-sizing:border-box;overflow:hidden;display:flex;padding:0 6px}.quick-input-list .quick-input-list-entry.quick-input-list-separator-border{border-top-width:1px;border-top-style:solid}.quick-input-list .monaco-list-row{border-radius:3px}.quick-input-list .monaco-list-row[data-index="0"] .quick-input-list-entry.quick-input-list-separator-border{border-top-style:none}.quick-input-list .quick-input-list-label{overflow:hidden;display:flex;height:100%;flex:1}.quick-input-list .quick-input-list-checkbox{align-self:center;margin:0}.quick-input-list .quick-input-list-icon{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;display:flex;align-items:center;justify-content:center}.quick-input-list .quick-input-list-rows{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%;flex:1;margin-left:5px}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-rows{margin-left:10px}.quick-input-widget .quick-input-list .quick-input-list-checkbox{display:none}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-checkbox{display:inline}.quick-input-list .quick-input-list-rows>.quick-input-list-row{display:flex;align-items:center}.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label,.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.quick-input-list .quick-input-list-rows>.quick-input-list-row .codicon[class*=codicon-]{vertical-align:text-bottom}.quick-input-list .quick-input-list-rows .monaco-highlighted-label>span{opacity:1}.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding{margin-right:8px}.quick-input-list .quick-input-list-label-meta{opacity:.7;line-height:normal;text-overflow:ellipsis;overflow:hidden}.quick-input-list .monaco-list .monaco-list-row .monaco-highlighted-label .highlight{font-weight:700;background-color:unset;color:var(--vscode-list-highlightForeground)!important}.quick-input-list .monaco-list .monaco-list-row.focused .monaco-highlighted-label .highlight{color:var(--vscode-list-focusHighlightForeground)!important}.quick-input-list .quick-input-list-entry .quick-input-list-separator{margin-right:4px}.quick-input-list .quick-input-list-entry-action-bar{display:flex;flex:0;overflow:visible}.quick-input-list .quick-input-list-entry-action-bar .action-label{display:none}.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon{margin-right:4px;padding:2px}.quick-input-list .quick-input-list-entry-action-bar{margin-top:1px}.quick-input-list .quick-input-list-entry-action-bar{margin-right:4px}.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label,.quick-input-list .quick-input-list-entry.focus-inside .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.passive-focused .quick-input-list-entry-action-bar .action-label{display:flex}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator{color:inherit}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key{background:none}.quick-input-list .quick-input-list-separator-as-item{padding:4px 6px;font-size:12px}.quick-input-list .quick-input-list-separator-as-item .label-name{font-weight:600}.quick-input-list .quick-input-list-separator-as-item .label-description{opacity:1!important}.quick-input-list .monaco-tree-sticky-row .quick-input-list-entry.quick-input-list-separator-as-item.quick-input-list-separator-border{border-top-style:none}.quick-input-list .monaco-tree-sticky-row{padding:0 5px}.quick-input-list .monaco-tl-twistie{display:none!important}.monaco-text-button{box-sizing:border-box;display:flex;width:100%;padding:4px;border-radius:2px;text-align:center;cursor:pointer;justify-content:center;align-items:center;border:1px solid var(--vscode-button-border, transparent);line-height:18px}.monaco-text-button:focus{outline-offset:2px!important}.monaco-text-button:hover{text-decoration:none!important}.monaco-button.disabled:focus,.monaco-button.disabled{opacity:.4!important;cursor:default}.monaco-text-button .codicon{margin:0 .2em;color:inherit!important}.monaco-text-button.monaco-text-button-with-short-label{flex-direction:row;flex-wrap:wrap;padding:0 4px;overflow:hidden;height:28px}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label{flex-basis:100%}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{flex-grow:1;width:0;overflow:hidden}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label,.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{display:flex;justify-content:center;align-items:center;font-weight:400;font-style:inherit;padding:4px 0}.monaco-button-dropdown{display:flex;cursor:pointer}.monaco-button-dropdown.disabled{cursor:default}.monaco-button-dropdown>.monaco-button:focus{outline-offset:-1px!important}.monaco-button-dropdown.disabled>.monaco-button.disabled,.monaco-button-dropdown.disabled>.monaco-button.disabled:focus,.monaco-button-dropdown.disabled>.monaco-button-dropdown-separator{opacity:.4!important}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-right-width:0!important}.monaco-button-dropdown .monaco-button-dropdown-separator{padding:4px 0;cursor:default}.monaco-button-dropdown .monaco-button-dropdown-separator>div{height:100%;width:1px}.monaco-button-dropdown>.monaco-button.monaco-dropdown-button{border:1px solid var(--vscode-button-border, transparent);border-left-width:0!important;border-radius:0 2px 2px 0;display:flex;align-items:center}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-radius:2px 0 0 2px}.monaco-description-button{display:flex;flex-direction:column;align-items:center;margin:4px 5px}.monaco-description-button .monaco-button-description{font-style:italic;font-size:11px;padding:4px 20px}.monaco-description-button .monaco-button-label,.monaco-description-button .monaco-button-description{display:flex;justify-content:center;align-items:center}.monaco-description-button .monaco-button-label>.codicon,.monaco-description-button .monaco-button-description>.codicon{margin:0 .2em;color:inherit!important}.monaco-button.default-colors,.monaco-button-dropdown.default-colors>.monaco-button{color:var(--vscode-button-foreground);background-color:var(--vscode-button-background)}.monaco-button.default-colors:hover,.monaco-button-dropdown.default-colors>.monaco-button:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-button.default-colors.secondary,.monaco-button-dropdown.default-colors>.monaco-button.secondary{color:var(--vscode-button-secondaryForeground);background-color:var(--vscode-button-secondaryBackground)}.monaco-button.default-colors.secondary:hover,.monaco-button-dropdown.default-colors>.monaco-button.secondary:hover{background-color:var(--vscode-button-secondaryHoverBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator{background-color:var(--vscode-button-background);border-top:1px solid var(--vscode-button-border);border-bottom:1px solid var(--vscode-button-border)}.monaco-button-dropdown.default-colors .monaco-button.secondary+.monaco-button-dropdown-separator{background-color:var(--vscode-button-secondaryBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator>div{background-color:var(--vscode-button-separator)}.monaco-count-badge{padding:3px 6px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;box-sizing:border-box}.monaco-count-badge.long{padding:2px 3px;border-radius:2px;min-height:auto;line-height:normal}.monaco-progress-container{width:100%;height:2px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:2px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;transition:width .1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{animation-name:progress;animation-duration:4s;animation-iteration-count:infinite;transform:translateZ(0);animation-timing-function:linear}.monaco-progress-container.infinite.infinite-long-running .progress-bit{animation-timing-function:steps(100)}@keyframes progress{0%{transform:translate(0) scaleX(1)}50%{transform:translate(2500%) scaleX(3)}to{transform:translate(4900%) scaleX(1)}}.monaco-inputbox{position:relative;display:block;padding:0;box-sizing:border-box;border-radius:2px;font-size:inherit}.monaco-inputbox>.ibwrapper>.input,.monaco-inputbox>.ibwrapper>.mirror{padding:4px 6px}.monaco-inputbox>.ibwrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.ibwrapper>.input{display:inline-block;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.ibwrapper>input{text-overflow:ellipsis}.monaco-inputbox>.ibwrapper>textarea.input{display:block;scrollbar-width:none;outline:none}.monaco-inputbox>.ibwrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.ibwrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.ibwrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;box-sizing:border-box;padding:.4em;font-size:12px;line-height:17px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.monaco-findInput.highlight-0 .controls,.hc-light .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-0 .1s linear 0s}.monaco-findInput.highlight-1 .controls,.hc-light .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-1 .1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-dark-0 .1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-dark-1 .1s linear 0s}@keyframes monaco-findInput-highlight-0{0%{background:#fdff00cc}to{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:#fdff00cc}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:#ffffff70}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:#ffffff70}99%{background:transparent}}:root{--vscode-sash-size: 4px;--vscode-sash-hover-size: 4px}.monaco-sash{position:absolute;z-index:35;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.vertical{cursor:ew-resize;top:0;width:var(--vscode-sash-size);height:100%}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:var(--vscode-sash-size)}.monaco-sash:not(.disabled)>.orthogonal-drag-handle{content:" ";height:calc(var(--vscode-sash-size) * 2);width:calc(var(--vscode-sash-size) * 2);z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.start,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.end{cursor:nwse-resize}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.end,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.start{cursor:nesw-resize}.monaco-sash.vertical>.orthogonal-drag-handle.start{left:calc(var(--vscode-sash-size) * -.5);top:calc(var(--vscode-sash-size) * -1)}.monaco-sash.vertical>.orthogonal-drag-handle.end{left:calc(var(--vscode-sash-size) * -.5);bottom:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.start{top:calc(var(--vscode-sash-size) * -.5);left:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.end{top:calc(var(--vscode-sash-size) * -.5);right:calc(var(--vscode-sash-size) * -1)}.monaco-sash:before{content:"";pointer-events:none;position:absolute;width:100%;height:100%;background:transparent}.monaco-workbench:not(.reduce-motion) .monaco-sash:before{transition:background-color .1s ease-out}.monaco-sash.hover:before,.monaco-sash.active:before{background:var(--vscode-sash-hoverBorder)}.monaco-sash.vertical:before{width:var(--vscode-sash-hover-size);left:calc(50% - (var(--vscode-sash-hover-size) / 2))}.monaco-sash.horizontal:before{height:var(--vscode-sash-hover-size);top:calc(50% - (var(--vscode-sash-hover-size) / 2))}.pointer-events-disabled{pointer-events:none!important}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:#0ff3}.monaco-sash.debug:not(.disabled)>.orthogonal-drag-handle{background:red}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:initial}.monaco-split-view2>.monaco-scrollable-element{width:100%;height:100%}.monaco-split-view2>.monaco-scrollable-element>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view{white-space:initial;position:absolute}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{content:" ";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-table{display:flex;flex-direction:column;position:relative;height:100%;width:100%;white-space:nowrap;overflow:hidden}.monaco-table>.monaco-split-view2{border-bottom:1px solid transparent}.monaco-table>.monaco-list{flex:1}.monaco-table-tr{display:flex;height:100%}.monaco-table-th{width:100%;height:100%;font-weight:700;overflow:hidden;text-overflow:ellipsis}.monaco-table-th,.monaco-table-td{box-sizing:border-box;flex-shrink:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{content:"";position:absolute;left:calc(var(--vscode-sash-size) / 2);width:0;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2,.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{transition:border-color .2s ease-out}.monaco-tl-row{display:flex;height:100%;align-items:center;position:relative}.monaco-tl-row.disabled{cursor:default}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;box-sizing:border-box;height:100%;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-tl-indent>.indent-guide{transition:border-color .1s linear}.monaco-tl-twistie,.monaco-tl-contents{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;flex-shrink:0;width:16px;display:flex!important;align-items:center;justify-content:center;transform:translate(3px)}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie:before{border-radius:20px}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-tree-item-loading:before{animation:codicon-spin 1.25s steps(30) infinite}.monaco-tree-type-filter{position:absolute;top:0;display:flex;padding:3px;max-width:200px;z-index:100;margin:0 6px;border:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-workbench:not(.reduce-motion) .monaco-tree-type-filter{transition:top .3s}.monaco-tree-type-filter.disabled{top:-40px!important}.monaco-tree-type-filter-grab{display:flex!important;align-items:center;justify-content:center;cursor:grab;margin-right:2px}.monaco-tree-type-filter-grab.grabbing{cursor:grabbing}.monaco-tree-type-filter-input{flex:1}.monaco-tree-type-filter-input .monaco-inputbox{height:23px}.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.input,.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.mirror{padding:2px 4px}.monaco-tree-type-filter-input .monaco-findInput>.controls{top:2px}.monaco-tree-type-filter-actionbar{margin-left:4px}.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label{padding:2px}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container{position:absolute;top:0;left:0;width:100%;height:0;z-index:13;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row.monaco-list-row{position:absolute;width:100%;opacity:1!important;overflow:hidden;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row:hover{background-color:var(--vscode-list-hoverBackground)!important;cursor:pointer}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty,.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty .monaco-tree-sticky-container-shadow{display:none}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow{position:absolute;bottom:-3px;left:0;height:0px;width:100%}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container[tabindex="0"]:focus{outline:none}.monaco-icon-label{display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit!important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;flex-shrink:0}.monaco-icon-label-iconpath{width:16px;height:16px;padding-left:2px;margin-top:2px;display:flex}.monaco-icon-label-container.disabled{color:var(--vscode-disabledForeground)}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-suffix-container>.label-suffix{opacity:.7;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;margin-left:.5em;font-size:.9em;white-space:pre}.monaco-icon-label.nowrap>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{white-space:nowrap}.vs .monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.95}.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{font-style:italic}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:.66}.monaco-icon-label.italic:after{font-style:italic}.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{text-decoration:line-through}.monaco-icon-label:after{opacity:.75;font-size:90%;font-weight:600;margin:auto 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description{opacity:.8}.monaco-keybinding{display:flex;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border-style:solid;border-width:1px;border-radius:3px;vertical-align:middle;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%;color:var(--vscode-editor-foreground);background-color:var(--vscode-editor-background);overflow-wrap:initial}.monaco-editor-background{background-color:var(--vscode-editor-background)}.monaco-editor .rangeHighlight{background-color:var(--vscode-editor-rangeHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-rangeHighlightBorder)}.monaco-editor.hc-black .rangeHighlight,.monaco-editor.hc-light .rangeHighlight{border-style:dotted}.monaco-editor .symbolHighlight{background-color:var(--vscode-editor-symbolHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-symbolHighlightBorder)}.monaco-editor.hc-black .symbolHighlight,.monaco-editor.hc-light .symbolHighlight{border-style:dotted}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .view-overlays>div,.monaco-editor .margin-view-overlays>div{position:absolute;width:100%}.monaco-editor .squiggly-error{border-bottom:4px double var(--vscode-editorError-border)}.monaco-editor .squiggly-error:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorError-background)}.monaco-editor .squiggly-warning{border-bottom:4px double var(--vscode-editorWarning-border)}.monaco-editor .squiggly-warning:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorWarning-background)}.monaco-editor .squiggly-info{border-bottom:4px double var(--vscode-editorInfo-border)}.monaco-editor .squiggly-info:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorInfo-background)}.monaco-editor .squiggly-hint{border-bottom:2px dotted var(--vscode-editorHint-border)}.monaco-editor.showUnused .squiggly-unnecessary{border-bottom:2px dashed var(--vscode-editorUnnecessaryCode-border)}.monaco-editor.showDeprecated .squiggly-inline-deprecated{text-decoration:line-through;text-decoration-color:var(--vscode-editor-foreground, inherit)}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent;z-index:-10}.monaco-editor .inputarea.ime-input{z-index:10;caret-color:var(--vscode-editorCursor-foreground);color:var(--vscode-editor-foreground)}.monaco-editor .margin-view-overlays .line-numbers{bottom:0;font-variant-numeric:tabular-nums;position:absolute;text-align:right;display:inline-block;vertical-align:middle;box-sizing:border-box;cursor:default}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .line-numbers{color:var(--vscode-editorLineNumber-foreground)}.monaco-editor .line-numbers.active-line-number{color:var(--vscode-editorLineNumber-activeForeground)}.monaco-editor .margin{background-color:var(--vscode-editorGutter-background)}.monaco-mouse-cursor-text{cursor:text}.monaco-editor .blockDecorations-container{position:absolute;top:0;pointer-events:none}.monaco-editor .blockDecorations-block{position:absolute;box-sizing:border-box}.monaco-editor .view-overlays .current-line,.monaco-editor .margin-view-overlays .current-line{display:block;position:absolute;left:0;top:0;box-sizing:border-box;height:100%}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute;height:100%}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .glyph-margin-widgets .cgmr{position:absolute;display:flex;align-items:center;justify-content:center}.monaco-editor .glyph-margin-widgets .cgmr.codicon-modifier-spin:before{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.monaco-editor .lines-content .core-guide{position:absolute;box-sizing:border-box;height:100%}.mtkcontrol{color:#fff!important;background:#960000!important}.mtkoverflow{background-color:var(--vscode-button-background, var(--vscode-editor-background));color:var(--vscode-button-foreground, var(--vscode-editor-foreground));border-width:1px;border-style:solid;border-color:var(--vscode-contrastBorder);border-radius:2px;padding:4px;cursor:pointer}.mtkoverflow:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{user-select:none;-webkit-user-select:none}.monaco-editor.mac .lines-content:hover,.monaco-editor.mac .view-line:hover,.monaco-editor.mac .view-lines:hover{user-select:text;-webkit-user-select:text;-ms-user-select:text}.monaco-editor.enable-user-select{user-select:initial;-webkit-user-select:initial}.monaco-editor .view-lines{white-space:nowrap}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .lines-content>.view-lines>.view-line>span{top:0;bottom:0;position:absolute}.monaco-editor .mtkw{color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .mtkz{display:inline-block;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover:hover .minimap-slider,.monaco-editor .minimap.slider-mouseover .minimap-slider.active{opacity:1}.monaco-editor .minimap-slider .minimap-slider-horizontal{background:var(--vscode-minimapSlider-background)}.monaco-editor .minimap-slider:hover .minimap-slider-horizontal{background:var(--vscode-minimapSlider-hoverBackground)}.monaco-editor .minimap-slider.active .minimap-slider-horizontal{background:var(--vscode-minimapSlider-activeBackground)}.monaco-editor .minimap-shadow-visible{box-shadow:var(--vscode-scrollbar-shadow) -6px 0 6px -6px inset}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor.no-minimap-shadow .minimap-shadow-visible{position:absolute;left:-1px;width:1px}.minimap.autohide{opacity:0;transition:opacity .5s}.minimap.autohide:hover{opacity:1}.monaco-editor .minimap{z-index:5}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0;box-shadow:1px 0 0 0 var(--vscode-editorRuler-foreground) inset}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .focused .selected-text{background-color:var(--vscode-editor-selectionBackground)}.monaco-editor .selected-text{background-color:var(--vscode-editor-inactiveSelectionBackground)}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor.hc-light .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-light .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-light .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-light .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;overflow:hidden;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{background:transparent!important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent!important}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent!important}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate}.cursor-phase{animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate}.monaco-editor .mwh{position:absolute;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .diff-hidden-lines-widget{width:100%}.monaco-editor .diff-hidden-lines{height:0px;transform:translateY(-10px);font-size:13px;line-height:14px}.monaco-editor .diff-hidden-lines:not(.dragging) .top:hover,.monaco-editor .diff-hidden-lines:not(.dragging) .bottom:hover,.monaco-editor .diff-hidden-lines .top.dragging,.monaco-editor .diff-hidden-lines .bottom.dragging{background-color:var(--vscode-focusBorder)}.monaco-editor .diff-hidden-lines .top,.monaco-editor .diff-hidden-lines .bottom{transition:background-color .1s ease-out;height:4px;background-color:transparent;background-clip:padding-box;border-bottom:2px solid transparent;border-top:4px solid transparent}.monaco-editor.draggingUnchangedRegion.canMoveTop:not(.canMoveBottom) *,.monaco-editor .diff-hidden-lines .top.canMoveTop:not(.canMoveBottom),.monaco-editor .diff-hidden-lines .bottom.canMoveTop:not(.canMoveBottom){cursor:n-resize!important}.monaco-editor.draggingUnchangedRegion:not(.canMoveTop).canMoveBottom *,.monaco-editor .diff-hidden-lines .top:not(.canMoveTop).canMoveBottom,.monaco-editor .diff-hidden-lines .bottom:not(.canMoveTop).canMoveBottom{cursor:s-resize!important}.monaco-editor.draggingUnchangedRegion.canMoveTop.canMoveBottom *,.monaco-editor .diff-hidden-lines .top.canMoveTop.canMoveBottom,.monaco-editor .diff-hidden-lines .bottom.canMoveTop.canMoveBottom{cursor:ns-resize!important}.monaco-editor .diff-hidden-lines .top{transform:translateY(4px)}.monaco-editor .diff-hidden-lines .bottom{transform:translateY(-6px)}.monaco-editor .diff-unchanged-lines{background:var(--vscode-diffEditor-unchangedCodeBackground)}.monaco-editor .noModificationsOverlay{z-index:1;background:var(--vscode-editor-background);display:flex;justify-content:center;align-items:center}.monaco-editor .diff-hidden-lines .center{background:var(--vscode-diffEditor-unchangedRegionBackground);color:var(--vscode-diffEditor-unchangedRegionForeground);overflow:hidden;display:block;text-overflow:ellipsis;white-space:nowrap;height:24px;box-shadow:inset 0 -5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow),inset 0 5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow)}.monaco-editor .diff-hidden-lines .center span.codicon{vertical-align:middle}.monaco-editor .diff-hidden-lines .center a:hover .codicon{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .diff-hidden-lines div.breadcrumb-item{cursor:pointer}.monaco-editor .diff-hidden-lines div.breadcrumb-item:hover{color:var(--vscode-editorLink-activeForeground)}.monaco-editor .movedOriginal,.monaco-editor .movedModified{border:2px solid var(--vscode-diffEditor-move-border)}.monaco-editor .movedOriginal.currentMove,.monaco-editor .movedModified.currentMove{border:2px solid var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path.currentMove{stroke:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path{pointer-events:visiblestroke}.monaco-diff-editor .moved-blocks-lines .arrow{fill:var(--vscode-diffEditor-move-border)}.monaco-diff-editor .moved-blocks-lines .arrow.currentMove{fill:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines .arrow-rectangle{fill:var(--vscode-editor-background)}.monaco-diff-editor .moved-blocks-lines{position:absolute;pointer-events:none}.monaco-diff-editor .moved-blocks-lines path{fill:none;stroke:var(--vscode-diffEditor-move-border);stroke-width:2}.monaco-editor .char-delete.diff-range-empty{margin-left:-1px;border-left:solid var(--vscode-diffEditor-removedTextBackground) 3px}.monaco-editor .char-insert.diff-range-empty{border-left:solid var(--vscode-diffEditor-insertedTextBackground) 3px}.monaco-editor .fold-unchanged{cursor:pointer}.monaco-diff-editor .diff-moved-code-block{display:flex;justify-content:flex-end;margin-top:-4px}.monaco-diff-editor .diff-moved-code-block .action-bar .action-label.codicon{width:12px;height:12px;font-size:12px}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor .diffOverview .diffViewport{z-index:10}.monaco-diff-editor.vs .diffOverview{background:#00000008}.monaco-diff-editor.vs-dark .diffOverview{background:#ffffff03}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar{background:#0000}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:#ababab66}.modified-in-monaco-diff-editor.hc-black .slider.active,.modified-in-monaco-diff-editor.hc-light .slider.active{background:none}.monaco-editor .insert-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-diff-editor .delete-sign{font-size:11px!important;opacity:.7!important;display:flex!important;align-items:center}.monaco-editor.hc-black .insert-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .delete-sign,.monaco-editor.hc-light .insert-sign,.monaco-diff-editor.hc-light .insert-sign,.monaco-editor.hc-light .delete-sign,.monaco-diff-editor.hc-light .delete-sign{opacity:1}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .inline-added-margin-view-zone{text-align:right}.monaco-editor .arrow-revert-change{z-index:10;position:absolute}.monaco-editor .arrow-revert-change:hover{cursor:pointer}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-editor .char-insert,.monaco-diff-editor .char-insert{background-color:var(--vscode-diffEditor-insertedTextBackground)}.monaco-editor .line-insert,.monaco-diff-editor .line-insert{background-color:var(--vscode-diffEditor-insertedLineBackground, var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .line-insert,.monaco-editor .char-insert{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-insertedTextBorder)}.monaco-editor.hc-black .line-insert,.monaco-editor.hc-light .line-insert,.monaco-editor.hc-black .char-insert,.monaco-editor.hc-light .char-insert{border-style:dashed}.monaco-editor .line-delete,.monaco-editor .char-delete{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-removedTextBorder)}.monaco-editor.hc-black .line-delete,.monaco-editor.hc-light .line-delete,.monaco-editor.hc-black .char-delete,.monaco-editor.hc-light .char-delete{border-style:dashed}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .gutter-insert,.monaco-diff-editor .gutter-insert{background-color:var(--vscode-diffEditorGutter-insertedLineBackground, var(--vscode-diffEditor-insertedLineBackground), var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .char-delete,.monaco-diff-editor .char-delete,.monaco-editor .inline-deleted-text{background-color:var(--vscode-diffEditor-removedTextBackground)}.monaco-editor .inline-deleted-text{text-decoration:line-through}.monaco-editor .line-delete,.monaco-diff-editor .line-delete{background-color:var(--vscode-diffEditor-removedLineBackground, var(--vscode-diffEditor-removedTextBackground))}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .gutter-delete,.monaco-diff-editor .gutter-delete{background-color:var(--vscode-diffEditorGutter-removedLineBackground, var(--vscode-diffEditor-removedLineBackground), var(--vscode-diffEditor-removedTextBackground))}.monaco-diff-editor.side-by-side .editor.modified{box-shadow:-6px 0 5px -5px var(--vscode-scrollbar-shadow);border-left:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor.side-by-side .editor.original{box-shadow:6px 0 5px -5px var(--vscode-scrollbar-shadow);border-right:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor .diffViewport{background:var(--vscode-scrollbarSlider-background)}.monaco-diff-editor .diffViewport:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-diff-editor .diffViewport:active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .diagonal-fill{background-image:linear-gradient(-45deg,var(--vscode-diffEditor-diagonalFill) 12.5%,#0000 12.5%,#0000 50%,var(--vscode-diffEditor-diagonalFill) 50%,var(--vscode-diffEditor-diagonalFill) 62.5%,#0000 62.5%,#0000 100%);background-size:8px 8px}.monaco-diff-editor .gutter{position:relative;overflow:hidden;flex-shrink:0;flex-grow:0}.monaco-diff-editor .gutter>div{position:absolute}.monaco-diff-editor .gutter .gutterItem{opacity:0;transition:opacity .7s}.monaco-diff-editor .gutter .gutterItem.showAlways{opacity:1;transition:none}.monaco-diff-editor .gutter .gutterItem.noTransition{transition:none}.monaco-diff-editor .gutter:hover .gutterItem{opacity:1;transition:opacity .1s ease-in-out}.monaco-diff-editor .gutter .gutterItem .background{position:absolute;height:100%;left:50%;width:1px;border-left:2px var(--vscode-menu-border) solid}.monaco-diff-editor .gutter .gutterItem .buttons{position:absolute;width:100%;display:flex;justify-content:center;align-items:center}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar{height:fit-content}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar{line-height:1}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container{width:fit-content;border-radius:4px;background:var(--vscode-editorGutter-commentRangeForeground)}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container .action-item:hover{background:var(--vscode-toolbar-hoverBackground)}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container .action-item .action-label{padding:1px 2px}.monaco-diff-editor .diff-hidden-lines-compact{display:flex;height:11px}.monaco-diff-editor .diff-hidden-lines-compact .line-left,.monaco-diff-editor .diff-hidden-lines-compact .line-right{height:1px;border-top:1px solid;border-color:var(--vscode-editorCodeLens-foreground);opacity:.5;margin:auto;width:100%}.monaco-diff-editor .diff-hidden-lines-compact .line-left{width:20px}.monaco-diff-editor .diff-hidden-lines-compact .text{color:var(--vscode-editorCodeLens-foreground);text-wrap:nowrap;font-size:11px;line-height:11px;margin:0 4px}.monaco-component.diff-review{user-select:none;-webkit-user-select:none;z-index:99}.monaco-diff-editor .diff-review{position:absolute}.monaco-component.diff-review .diff-review-line-number{text-align:right;display:inline-block;color:var(--vscode-editorLineNumber-foreground)}.monaco-component.diff-review .diff-review-summary{padding-left:10px}.monaco-component.diff-review .diff-review-shadow{position:absolute;box-shadow:var(--vscode-scrollbar-shadow) 0 -6px 6px -6px inset}.monaco-component.diff-review .diff-review-row{white-space:pre}.monaco-component.diff-review .diff-review-table{display:table;min-width:100%}.monaco-component.diff-review .diff-review-row{display:table-row;width:100%}.monaco-component.diff-review .diff-review-spacer{display:inline-block;width:10px;vertical-align:middle}.monaco-component.diff-review .diff-review-spacer>.codicon{font-size:9px!important}.monaco-component.diff-review .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px;z-index:100}.monaco-component.diff-review .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-component.diff-review .revertButton{cursor:pointer}.monaco-toolbar{height:100%}.monaco-toolbar .toolbar-toggle-more{display:inline-block;padding:0}.monaco-component.multiDiffEditor{background:var(--vscode-multiDiffEditor-background);position:relative;height:100%;width:100%;overflow-y:hidden}.monaco-component.multiDiffEditor>div{position:absolute;top:0;left:0;height:100%;width:100%}.monaco-component.multiDiffEditor>div.placeholder{visibility:hidden;display:grid;place-items:center;place-content:center}.monaco-component.multiDiffEditor>div.placeholder.visible{visibility:visible}.monaco-component.multiDiffEditor .active{--vscode-multiDiffEditor-border: var(--vscode-focusBorder)}.monaco-component.multiDiffEditor .multiDiffEntry{display:flex;flex-direction:column;flex:1;overflow:hidden}.monaco-component.multiDiffEditor .multiDiffEntry .collapse-button{margin:0 5px;cursor:pointer}.monaco-component.multiDiffEditor .multiDiffEntry .collapse-button a{display:block}.monaco-component.multiDiffEditor .multiDiffEntry .header{z-index:1000;background:var(--vscode-editor-background)}.monaco-component.multiDiffEditor .multiDiffEntry .header:not(.collapsed) .header-content{border-bottom:1px solid var(--vscode-sideBarSectionHeader-border)}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content{margin:8px 0 0;padding:4px 5px;border-top:1px solid var(--vscode-multiDiffEditor-border);display:flex;align-items:center;color:var(--vscode-foreground);background:var(--vscode-multiDiffEditor-headerBackground)}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content.shadow{box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path{display:flex;flex:1;min-width:0}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .title{font-size:14px;line-height:22px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .title.original{flex:1;min-width:0;text-overflow:ellipsis}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .status{font-weight:600;opacity:.75;margin:0 10px;line-height:22px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .actions{padding:0 8px}.monaco-component.multiDiffEditor .multiDiffEntry .editorParent{flex:1;display:flex;flex-direction:column;border-bottom:1px solid var(--vscode-multiDiffEditor-border);overflow:hidden}.monaco-component.multiDiffEditor .multiDiffEntry .editorContainer{flex:1}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .peekview-widget .head{box-sizing:border-box;display:flex;justify-content:space-between;flex-wrap:nowrap}.monaco-editor .peekview-widget .head .peekview-title{display:flex;align-items:baseline;font-size:13px;margin-left:20px;min-width:0;text-overflow:ellipsis;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title.clickable{cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:.9em;margin-left:.5em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monaco-editor .peekview-widget .head .peekview-title .dirname,.monaco-editor .peekview-widget .head .peekview-title .filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px;align-self:center}.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon{color:inherit!important}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px;background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-lineForeground)}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:inline-flex;width:100%;height:100%;color:var(--vscode-peekViewResult-fileForeground)}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground)!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight{background-color:var(--vscode-peekViewResult-matchHighlightBackground)}.monaco-editor .reference-zone-widget .preview .reference-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .reference-zone-widget .preview .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight{border:1px dotted var(--vscode-contrastActiveBorder, transparent);box-sizing:border-box}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px;z-index:10000}.monaco-editor .monaco-editor-overlaymessage.below{padding-bottom:0;padding-top:8px;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{animation:fadeIn .15s ease-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{animation:fadeOut .1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:2px 4px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-inputValidation-infoBorder);border-radius:3px}.monaco-editor .monaco-editor-overlaymessage .message p{margin-block:0px}.monaco-editor .monaco-editor-overlaymessage .message a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-editor-overlaymessage .message a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor.hc-black .monaco-editor-overlaymessage .message,.monaco-editor.hc-light .monaco-editor-overlaymessage .message{border-width:2px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0!important;height:0!important;border-color:transparent;border-style:solid;z-index:1000;border-width:8px;position:absolute;left:2px}.monaco-editor .monaco-editor-overlaymessage .anchor.top{border-bottom-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage .anchor.below{border-top-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top,.monaco-editor .monaco-editor-overlaymessage.below .anchor.below{display:none}.monaco-editor .monaco-editor-overlaymessage.below .anchor.top{display:inherit;top:-8px}.monaco-editor .inlineSuggestionsHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineSuggestionsHints a,.monaco-editor .inlineSuggestionsHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineSuggestionsHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a{display:flex;min-width:19px;justify-content:center}.monaco-editor .inlineSuggestionStatusBarItemLabel{margin-right:2px}.colorpicker-widget{height:190px;user-select:none;-webkit-user-select:none}.colorpicker-color-decoration,.hc-light .colorpicker-color-decoration{border:solid .1em #000;box-sizing:border-box;margin:.1em .2em 0;width:.8em;height:.8em;line-height:.8em;display:inline-block;cursor:pointer}.hc-black .colorpicker-color-decoration,.vs-dark .colorpicker-color-decoration{border:solid .1em #eee}.colorpicker-header{display:flex;height:24px;position:relative;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-header .picked-color{width:240px;display:flex;align-items:center;justify-content:center;line-height:24px;cursor:pointer;color:#fff;flex:1;white-space:nowrap;overflow:hidden}.colorpicker-header .picked-color .picked-color-presentation{white-space:nowrap;margin-left:5px;margin-right:5px}.colorpicker-header .picked-color .codicon{color:inherit;font-size:14px}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.standalone-colorpicker{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header.standalone-colorpicker{border-bottom:none}.colorpicker-header .close-button{cursor:pointer;background-color:var(--vscode-editorHoverWidget-background);border-left:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header .close-button-inner-div{width:100%;height:100%;text-align:center}.colorpicker-header .close-button-inner-div:hover{background-color:var(--vscode-toolbar-hoverBackground)}.colorpicker-header .close-icon{padding:3px}.colorpicker-body{display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid rgb(255,255,255);border-radius:100%;box-shadow:0 0 2px #000c;position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .standalone-strip{width:25px;height:122px}.colorpicker-body .hue-strip{position:relative;margin-left:8px;cursor:grab;background:linear-gradient(to bottom,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:grab;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;box-sizing:border-box;border:1px solid rgba(255,255,255,.71);box-shadow:0 0 1px #000000d9}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.colorpicker-body .standalone-strip .standalone-overlay{height:122px;pointer-events:none}.standalone-colorpicker-body{display:block;border:1px solid transparent;border-bottom:1px solid var(--vscode-editorHoverWidget-border);overflow:hidden}.colorpicker-body .insert-button{position:absolute;height:20px;width:58px;padding:0;right:8px;bottom:8px;background:var(--vscode-button-background);color:var(--vscode-button-foreground);border-radius:2px;border:none;cursor:pointer}.colorpicker-body .insert-button:hover{background:var(--vscode-button-hoverBackground)}.monaco-editor .hoverHighlight{background-color:var(--vscode-editor-hoverHighlightBackground)}.monaco-editor .monaco-hover-content{padding-right:2px;padding-bottom:2px;box-sizing:border-box}.monaco-editor .monaco-hover{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px}.monaco-editor .monaco-hover a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .monaco-hover .hover-row{display:flex}.monaco-editor .monaco-hover .hover-row .hover-row-contents{min-width:0;display:flex;flex-direction:column}.monaco-editor .monaco-hover .hover-row .verbosity-actions{display:flex;flex-direction:column;padding-left:5px;padding-right:5px;justify-content:end;border-right:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon{cursor:pointer;font-size:11px}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon.enabled{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon.disabled{opacity:.6}.monaco-editor .monaco-hover .hover-row .actions{background-color:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-editor .monaco-hover code{background-color:var(--vscode-textCodeBlock-background)}@font-face{font-family:codicon;font-display:block;src:url(./codicon-DCmgc-ay.ttf) format("truetype")}.codicon[class*=codicon-]{font: 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none}.codicon-wrench-subaction{opacity:.5}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin,.codicon-notebook-state-executing.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:.4}.codicon-loading,.codicon-tree-item-loading:before{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.monaco-editor .codicon.codicon-symbol-array,.monaco-workbench .codicon.codicon-symbol-array{color:var(--vscode-symbolIcon-arrayForeground)}.monaco-editor .codicon.codicon-symbol-boolean,.monaco-workbench .codicon.codicon-symbol-boolean{color:var(--vscode-symbolIcon-booleanForeground)}.monaco-editor .codicon.codicon-symbol-class,.monaco-workbench .codicon.codicon-symbol-class{color:var(--vscode-symbolIcon-classForeground)}.monaco-editor .codicon.codicon-symbol-method,.monaco-workbench .codicon.codicon-symbol-method{color:var(--vscode-symbolIcon-methodForeground)}.monaco-editor .codicon.codicon-symbol-color,.monaco-workbench .codicon.codicon-symbol-color{color:var(--vscode-symbolIcon-colorForeground)}.monaco-editor .codicon.codicon-symbol-constant,.monaco-workbench .codicon.codicon-symbol-constant{color:var(--vscode-symbolIcon-constantForeground)}.monaco-editor .codicon.codicon-symbol-constructor,.monaco-workbench .codicon.codicon-symbol-constructor{color:var(--vscode-symbolIcon-constructorForeground)}.monaco-editor .codicon.codicon-symbol-value,.monaco-workbench .codicon.codicon-symbol-value,.monaco-editor .codicon.codicon-symbol-enum,.monaco-workbench .codicon.codicon-symbol-enum{color:var(--vscode-symbolIcon-enumeratorForeground)}.monaco-editor .codicon.codicon-symbol-enum-member,.monaco-workbench .codicon.codicon-symbol-enum-member{color:var(--vscode-symbolIcon-enumeratorMemberForeground)}.monaco-editor .codicon.codicon-symbol-event,.monaco-workbench .codicon.codicon-symbol-event{color:var(--vscode-symbolIcon-eventForeground)}.monaco-editor .codicon.codicon-symbol-field,.monaco-workbench .codicon.codicon-symbol-field{color:var(--vscode-symbolIcon-fieldForeground)}.monaco-editor .codicon.codicon-symbol-file,.monaco-workbench .codicon.codicon-symbol-file{color:var(--vscode-symbolIcon-fileForeground)}.monaco-editor .codicon.codicon-symbol-folder,.monaco-workbench .codicon.codicon-symbol-folder{color:var(--vscode-symbolIcon-folderForeground)}.monaco-editor .codicon.codicon-symbol-function,.monaco-workbench .codicon.codicon-symbol-function{color:var(--vscode-symbolIcon-functionForeground)}.monaco-editor .codicon.codicon-symbol-interface,.monaco-workbench .codicon.codicon-symbol-interface{color:var(--vscode-symbolIcon-interfaceForeground)}.monaco-editor .codicon.codicon-symbol-key,.monaco-workbench .codicon.codicon-symbol-key{color:var(--vscode-symbolIcon-keyForeground)}.monaco-editor .codicon.codicon-symbol-keyword,.monaco-workbench .codicon.codicon-symbol-keyword{color:var(--vscode-symbolIcon-keywordForeground)}.monaco-editor .codicon.codicon-symbol-module,.monaco-workbench .codicon.codicon-symbol-module{color:var(--vscode-symbolIcon-moduleForeground)}.monaco-editor .codicon.codicon-symbol-namespace,.monaco-workbench .codicon.codicon-symbol-namespace{color:var(--vscode-symbolIcon-namespaceForeground)}.monaco-editor .codicon.codicon-symbol-null,.monaco-workbench .codicon.codicon-symbol-null{color:var(--vscode-symbolIcon-nullForeground)}.monaco-editor .codicon.codicon-symbol-number,.monaco-workbench .codicon.codicon-symbol-number{color:var(--vscode-symbolIcon-numberForeground)}.monaco-editor .codicon.codicon-symbol-object,.monaco-workbench .codicon.codicon-symbol-object{color:var(--vscode-symbolIcon-objectForeground)}.monaco-editor .codicon.codicon-symbol-operator,.monaco-workbench .codicon.codicon-symbol-operator{color:var(--vscode-symbolIcon-operatorForeground)}.monaco-editor .codicon.codicon-symbol-package,.monaco-workbench .codicon.codicon-symbol-package{color:var(--vscode-symbolIcon-packageForeground)}.monaco-editor .codicon.codicon-symbol-property,.monaco-workbench .codicon.codicon-symbol-property{color:var(--vscode-symbolIcon-propertyForeground)}.monaco-editor .codicon.codicon-symbol-reference,.monaco-workbench .codicon.codicon-symbol-reference{color:var(--vscode-symbolIcon-referenceForeground)}.monaco-editor .codicon.codicon-symbol-snippet,.monaco-workbench .codicon.codicon-symbol-snippet{color:var(--vscode-symbolIcon-snippetForeground)}.monaco-editor .codicon.codicon-symbol-string,.monaco-workbench .codicon.codicon-symbol-string{color:var(--vscode-symbolIcon-stringForeground)}.monaco-editor .codicon.codicon-symbol-struct,.monaco-workbench .codicon.codicon-symbol-struct{color:var(--vscode-symbolIcon-structForeground)}.monaco-editor .codicon.codicon-symbol-text,.monaco-workbench .codicon.codicon-symbol-text{color:var(--vscode-symbolIcon-textForeground)}.monaco-editor .codicon.codicon-symbol-type-parameter,.monaco-workbench .codicon.codicon-symbol-type-parameter{color:var(--vscode-symbolIcon-typeParameterForeground)}.monaco-editor .codicon.codicon-symbol-unit,.monaco-workbench .codicon.codicon-symbol-unit{color:var(--vscode-symbolIcon-unitForeground)}.monaco-editor .codicon.codicon-symbol-variable,.monaco-workbench .codicon.codicon-symbol-variable{color:var(--vscode-symbolIcon-variableForeground)}.monaco-editor .lightBulbWidget{display:flex;align-items:center;justify-content:center}.monaco-editor .lightBulbWidget:hover{cursor:pointer}.monaco-editor .lightBulbWidget.codicon-light-bulb,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle-autofix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .lightBulbWidget.codicon-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.monaco-editor .lightBulbWidget:before{position:relative;z-index:2}.monaco-editor .lightBulbWidget:after{position:absolute;top:0;left:0;content:"";display:block;width:100%;height:100%;opacity:.3;z-index:1}.monaco-editor .glyph-margin-widgets .cgmr[class*=codicon-gutter-lightbulb]{display:block;cursor:pointer}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb,.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-auto-fix,.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-aifix-auto-fix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.action-widget{font-size:13px;min-width:160px;max-width:80vw;z-index:40;display:block;width:100%;border:1px solid var(--vscode-editorWidget-border)!important;border-radius:5px;background-color:var(--vscode-editorActionList-background);color:var(--vscode-editorActionList-foreground);padding:4px;box-shadow:0 2px 8px var(--vscode-widget-shadow)}.context-view-block{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:-1}.context-view-pointerBlock{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:2}.action-widget .monaco-list{user-select:none;-webkit-user-select:none;border:none!important;border-width:0!important}.action-widget .monaco-list:focus:before{outline:0!important}.action-widget .monaco-list .monaco-scrollable-element{overflow:visible}.action-widget .monaco-list .monaco-list-row{padding:0 10px;white-space:nowrap;cursor:pointer;touch-action:none;width:100%;border-radius:4px}.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled){background-color:var(--vscode-editorActionList-focusBackground)!important;color:var(--vscode-editorActionList-focusForeground);outline:1px solid var(--vscode-menu-selectionBorder, transparent);outline-offset:-1px}.action-widget .monaco-list-row.group-header{color:var(--vscode-descriptionForeground)!important;font-weight:600;font-size:12px}.action-widget .monaco-list-row.group-header:not(:first-of-type){margin-top:2px}.action-widget .monaco-list .group-header,.action-widget .monaco-list .option-disabled,.action-widget .monaco-list .option-disabled:before,.action-widget .monaco-list .option-disabled .focused,.action-widget .monaco-list .option-disabled .focused:before{cursor:default!important;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background-color:transparent!important;outline:0 solid!important}.action-widget .monaco-list-row.action{display:flex;gap:8px;align-items:center}.action-widget .monaco-list-row.action.option-disabled,.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,.action-widget .monaco-list-row.action.option-disabled .codicon,.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled{color:var(--vscode-disabledForeground)}.action-widget .monaco-list-row.action:not(.option-disabled) .codicon{color:inherit}.action-widget .monaco-list-row.action .title{flex:1;overflow:hidden;text-overflow:ellipsis}.action-widget .monaco-list-row.action .monaco-keybinding>.monaco-keybinding-key{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow)}.action-widget .action-widget-action-bar{background-color:var(--vscode-editorActionList-background);border-top:1px solid var(--vscode-editorHoverWidget-border);margin-top:2px}.action-widget .action-widget-action-bar:before{display:block;content:"";width:100%}.action-widget .action-widget-action-bar .actions-container{padding:3px 8px 0}.action-widget-action-bar .action-label{color:var(--vscode-textLink-activeForeground);font-size:12px;line-height:22px;padding:0;pointer-events:all}.action-widget-action-bar .action-item{margin-right:16px;pointer-events:none}.action-widget-action-bar .action-label:hover{background-color:transparent!important}.monaco-action-bar .actions-container.highlight-toggled .action-label.checked{background:var(--vscode-actionBar-toggledBackground)!important}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;user-select:text;-webkit-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:flex;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-activeForeground)}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer;color:var(--vscode-textLink-activeForeground)}.monaco-editor .zone-widget .codicon.codicon-error,.markers-panel .marker-icon.error,.markers-panel .marker-icon .codicon.codicon-error,.text-search-provider-messages .providerMessage .codicon.codicon-error,.extensions-viewlet>.extensions .codicon.codicon-error,.extension-editor .codicon.codicon-error,.preferences-editor .codicon.codicon-error{color:var(--vscode-problemsErrorIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-warning,.markers-panel .marker-icon.warning,.markers-panel .marker-icon .codicon.codicon-warning,.text-search-provider-messages .providerMessage .codicon.codicon-warning,.extensions-viewlet>.extensions .codicon.codicon-warning,.extension-editor .codicon.codicon-warning,.preferences-editor .codicon.codicon-warning{color:var(--vscode-problemsWarningIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-info,.markers-panel .marker-icon.info,.markers-panel .marker-icon .codicon.codicon-info,.text-search-provider-messages .providerMessage .codicon.codicon-info,.extensions-viewlet>.extensions .codicon.codicon-info,.extension-editor .codicon.codicon-info,.preferences-editor .codicon.codicon-info{color:var(--vscode-problemsInfoIcon-foreground)}.monaco-editor .suggest-preview-additional-widget{white-space:nowrap}.monaco-editor .suggest-preview-additional-widget .content-spacer{color:transparent;white-space:pre}.monaco-editor .suggest-preview-additional-widget .button{display:inline-block;cursor:pointer;text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-hidden{opacity:0;font-size:0}.monaco-editor .ghost-text-decoration,.monaco-editor .suggest-preview-text .ghost-text{font-style:italic}.monaco-editor .ghost-text-decoration,.monaco-editor .ghost-text-decoration-preview,.monaco-editor .suggest-preview-text .ghost-text{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.monaco-editor .snippet-placeholder{min-width:2px;outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetTabstopHighlightBorder, transparent)}.monaco-editor .finish-snippet-placeholder{outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetFinalTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetFinalTabstopHighlightBorder, transparent)}.monaco-editor .suggest-widget{width:430px;z-index:40;display:flex;flex-direction:column;border-radius:3px}.monaco-editor .suggest-widget.message{flex-direction:row;align-items:center}.monaco-editor .suggest-widget,.monaco-editor .suggest-details{flex:0 1 auto;width:100%;border-style:solid;border-width:1px;border-color:var(--vscode-editorSuggestWidget-border);background-color:var(--vscode-editorSuggestWidget-background)}.monaco-editor.hc-black .suggest-widget,.monaco-editor.hc-black .suggest-details,.monaco-editor.hc-light .suggest-widget,.monaco-editor.hc-light .suggest-details{border-width:2px}.monaco-editor .suggest-widget .suggest-status-bar{box-sizing:border-box;display:none;flex-flow:row nowrap;justify-content:space-between;width:100%;font-size:80%;padding:0 4px;border-top:1px solid var(--vscode-editorSuggestWidget-border);overflow:hidden}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{display:flex}.monaco-editor .suggest-widget .suggest-status-bar .left{padding-right:8px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label{color:var(--vscode-editorSuggestWidgetStatus-foreground)}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label{margin-right:0}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label:after{content:", ";margin-right:.3em}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%;width:100%}.monaco-editor .suggest-widget .monaco-list{user-select:none;-webkit-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:flex;-mox-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused{color:var(--vscode-editorSuggestWidget-selectedForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon{color:var(--vscode-editorSuggestWidget-selectedIconForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused)>.contents>.main .monaco-icon-label{color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-highlightForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-focusHighlightForeground)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:6px;right:2px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label{overflow:hidden;text-overflow:ellipsis;opacity:.6}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:12px;opacity:.4;font-size:85%;line-height:initial;text-overflow:ellipsis;overflow:hidden;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{font-size:85%;margin-left:1.1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label)>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-shrink:1;flex-grow:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:0}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.left>.monaco-icon-label{max-width:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;flex-shrink:4;max-width:70%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:inline-block}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:flex;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 .3em;border:.1em solid #000;width:.7em;height:.7em;display:inline-block}.monaco-editor .suggest-details-container{z-index:41}.monaco-editor .suggest-details{display:flex;flex-direction:column;cursor:default;color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-details.focused{border-color:var(--vscode-focusBorder)}.monaco-editor .suggest-details a{color:var(--vscode-textLink-foreground)}.monaco-editor .suggest-details a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .suggest-details code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .suggest-details.no-docs{display:none}.monaco-editor .suggest-details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-details>.monaco-scrollable-element>.body{box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type{flex:2;overflow:hidden;text-overflow:ellipsis;opacity:.7;white-space:pre;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type.auto-wrap{white-space:normal;word-break:break-all}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-details.no-type>.monaco-scrollable-element>.body>.docs{margin-right:24px;overflow:hidden}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:initial;min-height:calc(1rem + 8px)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .monaco-tokenized-source{white-space:pre}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .codicon{vertical-align:sub}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-details ul,.monaco-editor .suggest-details ol{padding-left:20px}.monaco-editor .suggest-details p code{font-family:var(--monaco-monospace-font)}.monaco-link{color:var(--vscode-textLink-foreground)}.monaco-link:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .sticky-widget{overflow:hidden}.monaco-editor .sticky-widget-line-numbers{float:left;background-color:inherit}.monaco-editor .sticky-widget-lines-scrollable{display:inline-block;position:absolute;overflow:hidden;width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit}.monaco-editor .sticky-widget-lines{position:absolute;background-color:inherit}.monaco-editor .sticky-line-number,.monaco-editor .sticky-line-content{color:var(--vscode-editorLineNumber-foreground);white-space:nowrap;display:inline-block;position:absolute;background-color:inherit}.monaco-editor .sticky-line-number .codicon-folding-expanded,.monaco-editor .sticky-line-number .codicon-folding-collapsed{float:right;transition:var(--vscode-editorStickyScroll-foldingOpacityTransition)}.monaco-editor .sticky-line-content{width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit;white-space:nowrap}.monaco-editor .sticky-line-number-inner{display:inline-block;text-align:right}.monaco-editor .sticky-widget{border-bottom:1px solid var(--vscode-editorStickyScroll-border)}.monaco-editor .sticky-line-content:hover{background-color:var(--vscode-editorStickyScrollHover-background);cursor:pointer}.monaco-editor .sticky-widget{width:100%;box-shadow:var(--vscode-editorStickyScroll-shadow) 0 4px 2px -2px;z-index:4;background-color:var(--vscode-editorStickyScroll-background);right:initial!important}.monaco-editor .sticky-widget.peek{background-color:var(--vscode-peekViewEditorStickyScroll-background)}.monaco-editor div.inline-edits-widget{--widget-color: var(--vscode-notifications-background)}.monaco-editor div.inline-edits-widget .promptEditor .monaco-editor{--vscode-editor-placeholder-foreground: var(--vscode-editorGhostText-foreground)}.monaco-editor div.inline-edits-widget .toolbar,.monaco-editor div.inline-edits-widget .promptEditor{opacity:0;transition:opacity .2s ease-in-out}:is(.monaco-editor div.inline-edits-widget:hover,.monaco-editor div.inline-edits-widget.focused) .toolbar,:is(.monaco-editor div.inline-edits-widget:hover,.monaco-editor div.inline-edits-widget.focused) .promptEditor{opacity:1}.monaco-editor div.inline-edits-widget .preview .monaco-editor{--vscode-editor-background: var(--widget-color)}.monaco-editor div.inline-edits-widget .preview .monaco-editor .mtk1{color:var(--vscode-editorGhostText-foreground)}.monaco-editor div.inline-edits-widget .preview .monaco-editor .view-overlays .current-line-exact,.monaco-editor div.inline-edits-widget .preview .monaco-editor .current-line-margin{border:none}.monaco-editor div.inline-edits-widget svg .gradient-start{stop-color:var(--vscode-editor-background)}.monaco-editor div.inline-edits-widget svg .gradient-stop{stop-color:var(--widget-color)}.monaco-editor .inlineEditSideBySide{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);white-space:pre}.monaco-editor .inlineEditHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineEditHints a,.monaco-editor .inlineEditHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineEditHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineEditHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineEditStatusBarItemLabel{margin-right:2px}.monaco-editor .inline-edit-remove{background-color:var(--vscode-editorGhostText-background);font-style:italic}.monaco-editor .inline-edit-hidden{opacity:0;font-size:0}.monaco-editor .inline-edit-decoration,.monaco-editor .suggest-preview-text .inline-edit{font-style:italic}.monaco-editor .inline-completion-text-to-replace{text-decoration:underline;text-underline-position:under}.monaco-editor .inline-edit-decoration,.monaco-editor .inline-edit-decoration-preview,.monaco-editor .suggest-preview-text .inline-edit{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.post-edit-widget{box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:1px solid var(--vscode-widget-border, transparent);border-radius:4px;background-color:var(--vscode-editorWidget-background);overflow:hidden}.post-edit-widget .monaco-button{padding:2px;border:none;border-radius:0}.post-edit-widget .monaco-button:hover{background-color:var(--vscode-button-secondaryHoverBackground)!important}.post-edit-widget .monaco-button .codicon{margin:0}.editor-banner{box-sizing:border-box;cursor:default;width:100%;font-size:12px;display:flex;overflow:visible;height:26px;background:var(--vscode-banner-background)}.editor-banner .icon-container{display:flex;flex-shrink:0;align-items:center;padding:0 6px 0 10px}.editor-banner .icon-container.custom-icon{background-repeat:no-repeat;background-position:center center;background-size:16px;width:16px;padding:0;margin:0 6px 0 10px}.editor-banner .message-container{display:flex;align-items:center;line-height:26px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-banner .message-container p{margin-block-start:0;margin-block-end:0}.editor-banner .message-actions-container{flex-grow:1;flex-shrink:0;line-height:26px;margin:0 4px}.editor-banner .message-actions-container a.monaco-button{width:inherit;margin:2px 8px;padding:0 12px}.editor-banner .message-actions-container a{padding:3px;margin-left:12px;text-decoration:underline}.editor-banner .action-container{padding:0 10px 0 6px}.editor-banner{background-color:var(--vscode-banner-background)}.editor-banner,.editor-banner .action-container .codicon,.editor-banner .message-actions-container .monaco-link{color:var(--vscode-banner-foreground)}.editor-banner .icon-container .codicon{color:var(--vscode-banner-iconForeground)}.monaco-editor .rename-box{z-index:100;color:inherit;border-radius:4px}.monaco-editor .rename-box.preview{padding:4px 4px 0}.monaco-editor .rename-box .rename-input-with-button{padding:3px;border-radius:2px;width:calc(100% - 8px)}.monaco-editor .rename-box .rename-input{width:calc(100% - 8px);padding:0}.monaco-editor .rename-box .rename-input:focus{outline:none}.monaco-editor .rename-box .rename-suggestions-button{display:flex;align-items:center;padding:3px;background-color:transparent;border:none;border-radius:5px;cursor:pointer}.monaco-editor .rename-box .rename-suggestions-button:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-editor .rename-box .rename-candidate-list-container .monaco-list-row{border-radius:2px}.monaco-editor .rename-box .rename-label{display:none;opacity:.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .parameter-hints-widget{z-index:39;display:flex;flex-direction:column;line-height:1.5em;cursor:default;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.hc-black .monaco-editor .parameter-hints-widget,.hc-light .monaco-editor .parameter-hints-widget{border-width:2px}.monaco-editor .parameter-hints-widget>.phwrapper{max-width:440px;display:flex;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.multiple .body:before{content:"";display:block;height:100%;position:absolute;opacity:.5;border-left:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .monaco-scrollable-element,.monaco-editor .parameter-hints-widget .body{display:flex;flex:1;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px;position:relative}.monaco-editor .parameter-hints-widget .signature.has-docs:after{content:"";display:block;position:absolute;left:0;width:100%;padding-top:4px;opacity:.5;border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget .code{font-family:var(--vscode-parameterHintsWidget-editorFontFamily),var(--vscode-parameterHintsWidget-editorFontFamilyDefault)}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs a{color:var(--vscode-textLink-foreground)}.monaco-editor .parameter-hints-widget .docs a:hover{color:var(--vscode-textLink-activeForeground);cursor:pointer}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:initial}.monaco-editor .parameter-hints-widget .docs code{font-family:var(--monaco-monospace-font);border-radius:3px;padding:0 .4em;background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source,.monaco-editor .parameter-hints-widget .docs .code{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .controls{display:none;flex-direction:column;align-items:center;min-width:22px;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{color:var(--vscode-editorHoverWidget-highlightForeground);font-weight:700}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:.5em}.monaco-editor .focused .selectionHighlight{background-color:var(--vscode-editor-selectionHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-selectionHighlightBorder)}.monaco-editor.hc-black .focused .selectionHighlight,.monaco-editor.hc-light .focused .selectionHighlight{border-style:dotted}.monaco-editor .wordHighlight{background-color:var(--vscode-editor-wordHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightBorder)}.monaco-editor.hc-black .wordHighlight,.monaco-editor.hc-light .wordHighlight{border-style:dotted}.monaco-editor .wordHighlightStrong{background-color:var(--vscode-editor-wordHighlightStrongBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightStrongBorder)}.monaco-editor.hc-black .wordHighlightStrong,.monaco-editor.hc-light .wordHighlightStrong{border-style:dotted}.monaco-editor .wordHighlightText{background-color:var(--vscode-editor-wordHighlightTextBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightTextBorder)}.monaco-editor.hc-black .wordHighlightText,.monaco-editor.hc-light .wordHighlightText{border-style:dotted}.monaco-editor .find-widget{position:absolute;z-index:35;height:33px;overflow:hidden;line-height:19px;transition:transform .2s linear;padding:0 4px;box-sizing:border-box;transform:translateY(calc(-100% - 10px));box-shadow:0 0 8px 2px var(--vscode-widget-shadow);color:var(--vscode-editorWidget-foreground);border-left:1px solid var(--vscode-widget-border);border-right:1px solid var(--vscode-widget-border);border-bottom:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px;background-color:var(--vscode-editorWidget-background)}.monaco-workbench.reduce-motion .monaco-editor .find-widget{transition:transform 0ms linear}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px;outline-color:var(--vscode-focusBorder)}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:3px 25px 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:flex;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{display:flex;flex:initial;margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button{width:16px;height:16px;padding:3px;border-radius:5px;flex:initial;margin-left:3px;background-position:center center;background-repeat:no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}.monaco-editor .find-widget .codicon-find-selection{width:22px;height:22px;padding:3px;border-radius:5px}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;border-radius:0;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{color:var(--vscode-disabledForeground);cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:flex;vertical-align:middle;flex:auto;flex-grow:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .find-widget.no-results .matchesCount{color:var(--vscode-errorForeground)}.monaco-editor .findMatch{animation-duration:0;animation-name:inherit!important;background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor .currentFindMatch{background-color:var(--vscode-editor-findMatchBackground);border:2px solid var(--vscode-editor-findMatchBorder);padding:1px;box-sizing:border-box}.monaco-editor .findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor .find-widget .monaco-sash{left:0!important;background-color:var(--vscode-editorWidget-resizeBorder, var(--vscode-editorWidget-border))}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-editor .find-widget .button:not(.disabled):hover,.monaco-editor .find-widget .codicon-find-selection:hover{background-color:var(--vscode-toolbar-hoverBackground)!important}.monaco-editor.findMatch{background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor.currentFindMatch{background-color:var(--vscode-editor-findMatchBackground)}.monaco-editor.findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor.findMatch{background-color:var(--vscode-editorWidget-background)}.monaco-editor .find-widget>.button.codicon-widget-close{position:absolute;top:5px;right:4px}.monaco-editor .findOptionsWidget{background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground);box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:2px solid var(--vscode-contrastBorder)}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis;white-space:nowrap;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize);padding-right:calc(var(--vscode-editorCodeLens-fontSize)*.5);font-feature-settings:var(--vscode-editorCodeLens-fontFeatureSettings);font-family:var(--vscode-editorCodeLens-fontFamily),var(--vscode-editorCodeLens-fontFamilyDefault)}.monaco-editor .codelens-decoration>span,.monaco-editor .codelens-decoration>a{user-select:none;-webkit-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration>a:hover .codicon{color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor!important;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize)}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{animation:fadein .1s linear}.monaco-editor .unicode-highlight{border:1px solid var(--vscode-editorUnicodeHighlight-border);background-color:var(--vscode-editorUnicodeHighlight-background);box-sizing:border-box}.monaco-editor{--vscode-editor-placeholder-foreground: var(--vscode-editorGhostText-foreground)}.monaco-editor .editorPlaceholder{top:0;position:absolute;overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap;pointer-events:none;color:var(--vscode-editor-placeholder-foreground)}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .linked-editing-decoration{background-color:var(--vscode-editor-linkedEditingBackground);min-width:1px}.monaco-editor.vs .valueSetReplacement{outline:solid 2px var(--vscode-editorBracketMatch-border)}.inline-editor-progress-decoration{display:inline-block;width:1em;height:1em}.inline-progress-widget{display:flex!important;justify-content:center;align-items:center}.inline-progress-widget .icon{font-size:80%!important}.inline-progress-widget:hover .icon{font-size:90%!important;animation:none}.inline-progress-widget:hover .icon:before{content:var(--vscode-icon-x-content);font-family:var(--vscode-icon-x-font-family)}.monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-editor .margin-view-overlays .codicon-folding-collapsed{cursor:pointer;opacity:0;transition:opacity .5s;display:flex;align-items:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-collapsed{transition:initial}.monaco-editor .margin-view-overlays:hover .codicon,.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon.codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons{opacity:1}.monaco-editor .inline-folded:after{color:var(--vscode-editor-foldPlaceholderForeground);margin:.1em .2em 0;content:"⋯";display:inline;line-height:1em;cursor:pointer}.monaco-editor .folded-background{background-color:var(--vscode-editor-foldBackground)}.monaco-editor .cldr.codicon.codicon-folding-expanded,.monaco-editor .cldr.codicon.codicon-folding-collapsed,.monaco-editor .cldr.codicon.codicon-folding-manual-expanded,.monaco-editor .cldr.codicon.codicon-folding-manual-collapsed{color:var(--vscode-editorGutter-foldingControlForeground)!important}.monaco-editor.vs .dnd-target,.monaco-editor.hc-light .dnd-target{border-right:2px dotted black;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #AEAFAD;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines,.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.hc-light.mac.mouse-default .view-lines{cursor:default}.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines,.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.hc-light.mac.mouse-copy .view-lines{cursor:copy}.monaco-editor .bracket-match{box-sizing:border-box;background-color:var(--vscode-editorBracketMatch-background);border:1px solid var(--vscode-editorBracketMatch-border)}.monaco-editor .selection-anchor{background-color:#007acc;width:2px!important}.monaco-editor .tokens-inspect-widget{z-index:50;user-select:text;-webkit-user-select:text;padding:10px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor.hc-black .tokens-inspect-widget,.monaco-editor.hc-light .tokens-inspect-widget{border-width:2px}.monaco-editor .tokens-inspect-widget .tokens-inspect-separator{height:1px;border:0;background-color:var(--vscode-editorHoverWidget-border)}.monaco-editor .tokens-inspect-widget .tm-token{font-family:var(--monaco-monospace-font)}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:var(--monaco-monospace-font);text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:var(--monaco-monospace-font)}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjNDI0MjQyIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #F6F6F6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjQzVDNUM1Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #252526} diff --git a/deploy/online-shop/assets/monaco-editor-BSmz0_Ko.js b/deploy/online-shop/assets/monaco-editor-BSmz0_Ko.js deleted file mode 100644 index 6833df7d..00000000 --- a/deploy/online-shop/assets/monaco-editor-BSmz0_Ko.js +++ /dev/null @@ -1,676 +0,0 @@ -function Gs(o,e=0){return o[o.length-(1+e)]}function XB(o){if(o.length===0)throw new Error("Invalid tail call");return[o.slice(0,o.length-1),o[o.length-1]]}function li(o,e,t=(i,n)=>i===n){if(o===e)return!0;if(!o||!e||o.length!==e.length)return!1;for(let i=0,n=o.length;it(o[i],e))}function e6(o,e){let t=0,i=o-1;for(;t<=i;){const n=(t+i)/2|0,s=e(n);if(s<0)t=n+1;else if(s>0)i=n-1;else return n}return-(t+1)}function LL(o,e,t){if(o=o|0,o>=e.length)throw new TypeError("invalid index");const i=e[Math.floor(e.length*Math.random())],n=[],s=[],r=[];for(const a of e){const l=t(a,i);l<0?n.push(a):l>0?s.push(a):r.push(a)}return o!!e)}function RM(o){let e=0;for(let t=0;t0}function Eh(o,e=t=>t){const t=new Set;return o.filter(i=>{const n=e(i);return t.has(n)?!1:(t.add(n),!0)})}function xN(o,e){return o.length>0?o[0]:e}function Bn(o,e){let t=typeof e=="number"?o:0;typeof e=="number"?t=o:(t=0,e=o);const i=[];if(t<=e)for(let n=t;ne;n--)i.push(n);return i}function y0(o,e,t){const i=o.slice(0,e),n=o.slice(e);return i.concat(t,n)}function $y(o,e){const t=o.indexOf(e);t>-1&&(o.splice(t,1),o.unshift(e))}function bb(o,e){const t=o.indexOf(e);t>-1&&(o.splice(t,1),o.push(e))}function xL(o,e){for(const t of e)o.push(t)}function T5(o){return Array.isArray(o)?o:[o]}function i6(o,e,t){const i=M5(o,e),n=o.length,s=t.length;o.length=n+s;for(let r=n-1;r>=i;r--)o[r+s]=o[r];for(let r=0;r0}o.isGreaterThan=i;function n(s){return s===0}o.isNeitherLessOrGreaterThan=n,o.greaterThan=1,o.lessThan=-1,o.neitherLessOrGreaterThan=0})(Bp||(Bp={}));function rs(o,e){return(t,i)=>e(o(t),o(i))}function n6(...o){return(e,t)=>{for(const i of o){const n=i(e,t);if(!Bp.isNeitherLessOrGreaterThan(n))return n}return Bp.neitherLessOrGreaterThan}}const ia=(o,e)=>o-e,s6=(o,e)=>ia(o?1:0,e?1:0);function o6(o){return(e,t)=>-o(e,t)}class Ll{constructor(e){this.items=e,this.firstIdx=0,this.lastIdx=this.items.length-1}get length(){return this.lastIdx-this.firstIdx+1}takeWhile(e){let t=this.firstIdx;for(;t=0&&e(this.items[t]);)t--;const i=t===this.lastIdx?null:this.items.slice(t+1,this.lastIdx+1);return this.lastIdx=t,i}peek(){if(this.length!==0)return this.items[this.firstIdx]}dequeue(){const e=this.items[this.firstIdx];return this.firstIdx++,e}takeCount(e){const t=this.items.slice(this.firstIdx,this.firstIdx+e);return this.firstIdx+=e,t}}const pf=class pf{constructor(e){this.iterate=e}toArray(){const e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(e){return new pf(t=>this.iterate(i=>e(i)?t(i):!0))}map(e){return new pf(t=>this.iterate(i=>t(e(i))))}findLast(e){let t;return this.iterate(i=>(e(i)&&(t=i),!0)),t}findLastMaxBy(e){let t,i=!0;return this.iterate(n=>((i||Bp.isGreaterThan(e(n,t)))&&(i=!1,t=n),!0)),t}};pf.empty=new pf(e=>{});let Zd=pf;class eC{constructor(e){this._indexMap=e}static createSortPermutation(e,t){const i=Array.from(e.keys()).sort((n,s)=>t(e[n],e[s]));return new eC(i)}apply(e){return e.map((t,i)=>e[this._indexMap[i]])}inverse(){const e=this._indexMap.slice();for(let t=0;t"u"}function _l(o){return!xs(o)}function xs(o){return Es(o)||o===null}function ai(o,e){if(!o)throw new Error("Unexpected type")}function A5(o){if(xs(o))throw new Error("Assertion Failed: argument is undefined or null");return o}function tC(o){return typeof o=="function"}function a6(o,e){const t=Math.min(o.length,e.length);for(let i=0;i{e[t]=i&&typeof i=="object"?Ya(i):i}),e}function c6(o){if(!o||typeof o!="object")return o;const e=[o];for(;e.length>0;){const t=e.shift();Object.freeze(t);for(const i in t)if(P5.call(t,i)){const n=t[i];typeof n=="object"&&!Object.isFrozen(n)&&!r6(n)&&e.push(n)}}return o}const P5=Object.prototype.hasOwnProperty;function O5(o,e){return kL(o,e,new Set)}function kL(o,e,t){if(xs(o))return o;const i=e(o);if(typeof i<"u")return i;if(Array.isArray(o)){const n=[];for(const s of o)n.push(kL(s,e,t));return n}if(Oi(o)){if(t.has(o))throw new Error("Cannot clone recursive data-structure");t.add(o);const n={};for(const s in o)P5.call(o,s)&&(n[s]=kL(o[s],e,t));return t.delete(o),n}return o}function S0(o,e,t=!0){return Oi(o)?(Oi(e)&&Object.keys(e).forEach(i=>{i in o?t&&(Oi(o[i])&&Oi(e[i])?S0(o[i],e[i],t):o[i]=e[i]):o[i]=e[i]}),o):e}function as(o,e){if(o===e)return!0;if(o==null||e===null||e===void 0||typeof o!=typeof e||typeof o!="object"||Array.isArray(o)!==Array.isArray(e))return!1;let t,i;if(Array.isArray(o)){if(o.length!==e.length)return!1;for(t=0;tfunction(){const s=Array.prototype.slice.call(arguments,0);return e(n,s)},i={};for(const n of o)i[n]=t(n);return i}function F5(){return globalThis._VSCODE_NLS_MESSAGES}function kN(){return globalThis._VSCODE_NLS_LANGUAGE}const u6=kN()==="pseudo"||typeof document<"u"&&document.location&&document.location.hash.indexOf("pseudo=true")>=0;function iC(o,e){let t;return e.length===0?t=o:t=o.replace(/\{(\d+)\}/g,(i,n)=>{const s=n[0],r=e[s];let a=i;return typeof r=="string"?a=r:(typeof r=="number"||typeof r=="boolean"||r===void 0||r===null)&&(a=String(r)),a}),u6&&(t="["+t.replace(/[aouei]/g,"$&$&")+"]"),t}function m(o,e,...t){return iC(typeof o=="number"?B5(o,e):e,t)}function B5(o,e){const t=F5()?.[o];if(typeof t!="string"){if(typeof e=="string")return e;throw new Error(`!!! NLS MISSING: ${o} !!!`)}return t}function di(o,e,...t){let i;typeof o=="number"?i=B5(o,e):i=e;const n=iC(i,t);return{value:n,original:e===i?n:iC(e,t)}}const Gu="en";let nC=!1,sC=!1,v1=!1,W5=!1,DN=!1,IN=!1,H5=!1,Cb,Ky=Gu,OM=Gu,f6,Ba;const bl=globalThis;let Qs;typeof bl.vscode<"u"&&typeof bl.vscode.process<"u"?Qs=bl.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(Qs=process);const g6=typeof Qs?.versions?.electron=="string",m6=g6&&Qs?.type==="renderer";if(typeof Qs=="object"){nC=Qs.platform==="win32",sC=Qs.platform==="darwin",v1=Qs.platform==="linux",v1&&Qs.env.SNAP&&Qs.env.SNAP_REVISION,Qs.env.CI||Qs.env.BUILD_ARTIFACTSTAGINGDIRECTORY,Cb=Gu,Ky=Gu;const o=Qs.env.VSCODE_NLS_CONFIG;if(o)try{const e=JSON.parse(o);Cb=e.userLocale,OM=e.osLocale,Ky=e.resolvedLanguage||Gu,f6=e.languagePack?.translationsConfigFile}catch{}W5=!0}else typeof navigator=="object"&&!m6?(Ba=navigator.userAgent,nC=Ba.indexOf("Windows")>=0,sC=Ba.indexOf("Macintosh")>=0,IN=(Ba.indexOf("Macintosh")>=0||Ba.indexOf("iPad")>=0||Ba.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,v1=Ba.indexOf("Linux")>=0,H5=Ba?.indexOf("Mobi")>=0,DN=!0,Ky=kN()||Gu,Cb=navigator.language.toLowerCase(),OM=Cb):console.error("Unable to resolve platform.");const kn=nC,Ue=sC,Un=v1,oC=W5,Og=DN,p6=DN&&typeof bl.importScripts=="function",_6=p6?bl.origin:void 0,Tc=IN,V5=H5,da=Ba,b6=typeof bl.postMessage=="function"&&!bl.importScripts,z5=(()=>{if(b6){const o=[];bl.addEventListener("message",t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let i=0,n=o.length;i{const i=++e;o.push({id:i,callback:t}),bl.postMessage({vscodeScheduleAsyncWork:i},"*")}}return o=>setTimeout(o)})(),Ns=sC||IN?2:nC?1:3;let FM=!0,BM=!1;function C6(){if(!BM){BM=!0;const o=new Uint8Array(2);o[0]=1,o[1]=2,FM=new Uint16Array(o.buffer)[0]===513}return FM}const U5=!!(da&&da.indexOf("Chrome")>=0),v6=!!(da&&da.indexOf("Firefox")>=0),w6=!!(!U5&&da&&da.indexOf("Safari")>=0),y6=!!(da&&da.indexOf("Edg/")>=0),S6=!!(da&&da.indexOf("Android")>=0),Qi={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0,bracketPairColorizationOptions:{enabled:!0,independentColorPoolPerBracketType:!1}};var st;(function(o){function e(v){return v&&typeof v=="object"&&typeof v[Symbol.iterator]=="function"}o.is=e;const t=Object.freeze([]);function i(){return t}o.empty=i;function*n(v){yield v}o.single=n;function s(v){return e(v)?v:n(v)}o.wrap=s;function r(v){return v||t}o.from=r;function*a(v){for(let y=v.length-1;y>=0;y--)yield v[y]}o.reverse=a;function l(v){return!v||v[Symbol.iterator]().next().done===!0}o.isEmpty=l;function c(v){return v[Symbol.iterator]().next().value}o.first=c;function d(v,y){let x=0;for(const L of v)if(y(L,x++))return!0;return!1}o.some=d;function h(v,y){for(const x of v)if(y(x))return x}o.find=h;function*u(v,y){for(const x of v)y(x)&&(yield x)}o.filter=u;function*f(v,y){let x=0;for(const L of v)yield y(L,x++)}o.map=f;function*g(v,y){let x=0;for(const L of v)yield*y(L,x++)}o.flatMap=g;function*p(...v){for(const y of v)yield*y}o.concat=p;function _(v,y,x){let L=x;for(const E of v)L=y(L,E);return L}o.reduce=_;function*b(v,y,x=v.length){for(y<0&&(y+=v.length),x<0?x+=v.length:x>v.length&&(x=v.length);y{n||(n=!0,this._remove(i))}}shift(){if(this._first!==Ci.Undefined){const e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==Ci.Undefined){const e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==Ci.Undefined&&e.next!==Ci.Undefined){const t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===Ci.Undefined&&e.next===Ci.Undefined?(this._first=Ci.Undefined,this._last=Ci.Undefined):e.next===Ci.Undefined?(this._last=this._last.prev,this._last.next=Ci.Undefined):e.prev===Ci.Undefined&&(this._first=this._first.next,this._first.prev=Ci.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==Ci.Undefined;)yield e.element,e=e.next}}const $5="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";function L6(o=""){let e="(-?\\d*\\.\\d\\w*)|([^";for(const t of $5)o.indexOf(t)>=0||(e+="\\"+t);return e+="\\s]+)",new RegExp(e,"g")}const EN=L6();function NN(o){let e=EN;if(o&&o instanceof RegExp)if(o.global)e=o;else{let t="g";o.ignoreCase&&(t+="i"),o.multiline&&(t+="m"),o.unicode&&(t+="u"),e=new RegExp(o.source,t)}return e.lastIndex=0,e}const K5=new yn;K5.unshift({maxLen:1e3,windowSize:15,timeBudget:150});function Wp(o,e,t,i,n){if(e=NN(e),n||(n=st.first(K5)),t.length>n.maxLen){let c=o-n.maxLen/2;return c<0?c=0:i+=c,t=t.substring(c,o+n.maxLen/2),Wp(o,e,t,i,n)}const s=Date.now(),r=o-1-i;let a=-1,l=null;for(let c=1;!(Date.now()-s>=n.timeBudget);c++){const d=r-n.windowSize*c;e.lastIndex=Math.max(0,d);const h=x6(e,t,r,a);if(!h&&l||(l=h,d<=0))break;a=d}if(l){const c={word:l[0],startColumn:i+1+l.index,endColumn:i+1+l.index+l[0].length};return e.lastIndex=0,c}return null}function x6(o,e,t,i){let n;for(;n=o.exec(e);){const s=n.index||0;if(s<=t&&o.lastIndex>=t)return n;if(i>0&&s>i)return null}return null}const Ar=8;class j5{constructor(e){this._values=e}hasChanged(e){return this._values[e]}}class q5{constructor(){this.stableMinimapLayoutInput=null,this.stableFitMaxMinimapScale=0,this.stableFitRemainingWidth=0}}class Mt{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return L0(e,t)}compute(e,t,i){return i}}class $m{constructor(e,t){this.newValue=e,this.didChange=t}}function L0(o,e){if(typeof o!="object"||typeof e!="object"||!o||!e)return new $m(e,o!==e);if(Array.isArray(o)||Array.isArray(e)){const i=Array.isArray(o)&&Array.isArray(e)&&li(o,e);return new $m(e,!i)}let t=!1;for(const i in e)if(e.hasOwnProperty(i)){const n=L0(o[i],e[i]);n.didChange&&(o[i]=n.newValue,t=!0)}return new $m(o,t)}class B_{constructor(e){this.schema=void 0,this.id=e,this.name="_never_",this.defaultValue=void 0}applyUpdate(e,t){return L0(e,t)}validate(e){return this.defaultValue}}class Fg{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return L0(e,t)}validate(e){return typeof e>"u"?this.defaultValue:e}compute(e,t,i){return i}}function he(o,e){return typeof o>"u"?e:o==="false"?!1:!!o}class Je extends Fg{constructor(e,t,i,n=void 0){typeof n<"u"&&(n.type="boolean",n.default=i),super(e,t,i,n)}validate(e){return he(e,this.defaultValue)}}function dd(o,e,t,i){if(typeof o>"u")return e;let n=parseInt(o,10);return isNaN(n)?e:(n=Math.max(t,n),n=Math.min(i,n),n|0)}class pt extends Fg{static clampedInt(e,t,i,n){return dd(e,t,i,n)}constructor(e,t,i,n,s,r=void 0){typeof r<"u"&&(r.type="integer",r.default=i,r.minimum=n,r.maximum=s),super(e,t,i,r),this.minimum=n,this.maximum=s}validate(e){return pt.clampedInt(e,this.defaultValue,this.minimum,this.maximum)}}function k6(o,e,t,i){if(typeof o>"u")return e;const n=Ts.float(o,e);return Ts.clamp(n,t,i)}class Ts extends Fg{static clamp(e,t,i){return ei?i:e}static float(e,t){if(typeof e=="number")return e;if(typeof e>"u")return t;const i=parseFloat(e);return isNaN(i)?t:i}constructor(e,t,i,n,s){typeof s<"u"&&(s.type="number",s.default=i),super(e,t,i,s),this.validationFn=n}validate(e){return this.validationFn(Ts.float(e,this.defaultValue))}}class dn extends Fg{static string(e,t){return typeof e!="string"?t:e}constructor(e,t,i,n=void 0){typeof n<"u"&&(n.type="string",n.default=i),super(e,t,i,n)}validate(e){return dn.string(e,this.defaultValue)}}function Ht(o,e,t,i){return typeof o!="string"?e:i&&o in i?i[o]:t.indexOf(o)===-1?e:o}class Wt extends Fg{constructor(e,t,i,n,s=void 0){typeof s<"u"&&(s.type="string",s.enum=n,s.default=i),super(e,t,i,s),this._allowedValues=n}validate(e){return Ht(e,this.defaultValue,this._allowedValues)}}class vb extends Mt{constructor(e,t,i,n,s,r,a=void 0){typeof a<"u"&&(a.type="string",a.enum=s,a.default=n),super(e,t,i,a),this._allowedValues=s,this._convert=r}validate(e){return typeof e!="string"?this.defaultValue:this._allowedValues.indexOf(e)===-1?this.defaultValue:this._convert(e)}}function D6(o){switch(o){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}class I6 extends Mt{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[m("accessibilitySupport.auto","Use platform APIs to detect when a Screen Reader is attached."),m("accessibilitySupport.on","Optimize for usage with a Screen Reader."),m("accessibilitySupport.off","Assume a screen reader is not attached.")],default:"auto",tags:["accessibility"],description:m("accessibilitySupport","Controls if the UI should run in a mode where it is optimized for screen readers.")})}validate(e){switch(e){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}compute(e,t,i){return i===0?e.accessibilitySupport:i}}class E6 extends Mt{constructor(){const e={insertSpace:!0,ignoreEmptyLines:!0};super(23,"comments",e,{"editor.comments.insertSpace":{type:"boolean",default:e.insertSpace,description:m("comments.insertSpace","Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:e.ignoreEmptyLines,description:m("comments.ignoreEmptyLines","Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{insertSpace:he(t.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:he(t.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}}function N6(o){switch(o){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}var Ai;(function(o){o[o.Line=1]="Line",o[o.Block=2]="Block",o[o.Underline=3]="Underline",o[o.LineThin=4]="LineThin",o[o.BlockOutline=5]="BlockOutline",o[o.UnderlineThin=6]="UnderlineThin"})(Ai||(Ai={}));function T6(o){switch(o){case"line":return Ai.Line;case"block":return Ai.Block;case"underline":return Ai.Underline;case"line-thin":return Ai.LineThin;case"block-outline":return Ai.BlockOutline;case"underline-thin":return Ai.UnderlineThin}}class M6 extends B_{constructor(){super(143)}compute(e,t,i){const n=["monaco-editor"];return t.get(39)&&n.push(t.get(39)),e.extraEditorClassName&&n.push(e.extraEditorClassName),t.get(74)==="default"?n.push("mouse-default"):t.get(74)==="copy"&&n.push("mouse-copy"),t.get(112)&&n.push("showUnused"),t.get(141)&&n.push("showDeprecated"),n.join(" ")}}class R6 extends Je{constructor(){super(37,"emptySelectionClipboard",!0,{description:m("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})}compute(e,t,i){return i&&e.emptySelectionClipboard}}class A6 extends Mt{constructor(){const e={cursorMoveOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0};super(41,"find",e,{"editor.find.cursorMoveOnType":{type:"boolean",default:e.cursorMoveOnType,description:m("find.cursorMoveOnType","Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:e.seedSearchStringFromSelection,enumDescriptions:[m("editor.find.seedSearchStringFromSelection.never","Never seed search string from the editor selection."),m("editor.find.seedSearchStringFromSelection.always","Always seed search string from the editor selection, including word at cursor position."),m("editor.find.seedSearchStringFromSelection.selection","Only seed search string from the editor selection.")],description:m("find.seedSearchStringFromSelection","Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:e.autoFindInSelection,enumDescriptions:[m("editor.find.autoFindInSelection.never","Never turn on Find in Selection automatically (default)."),m("editor.find.autoFindInSelection.always","Always turn on Find in Selection automatically."),m("editor.find.autoFindInSelection.multiline","Turn on Find in Selection automatically when multiple lines of content are selected.")],description:m("find.autoFindInSelection","Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:e.globalFindClipboard,description:m("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:Ue},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:e.addExtraSpaceOnTop,description:m("find.addExtraSpaceOnTop","Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")},"editor.find.loop":{type:"boolean",default:e.loop,description:m("find.loop","Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{cursorMoveOnType:he(t.cursorMoveOnType,this.defaultValue.cursorMoveOnType),seedSearchStringFromSelection:typeof e.seedSearchStringFromSelection=="boolean"?e.seedSearchStringFromSelection?"always":"never":Ht(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:typeof e.autoFindInSelection=="boolean"?e.autoFindInSelection?"always":"never":Ht(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:he(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:he(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:he(t.loop,this.defaultValue.loop)}}}const Ka=class Ka extends Mt{constructor(){super(51,"fontLigatures",Ka.OFF,{anyOf:[{type:"boolean",description:m("fontLigatures","Enables/Disables font ligatures ('calt' and 'liga' font features). Change this to a string for fine-grained control of the 'font-feature-settings' CSS property.")},{type:"string",description:m("fontFeatureSettings","Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:m("fontLigaturesGeneral","Configures font ligatures or font features. Can be either a boolean to enable/disable ligatures or a string for the value of the CSS 'font-feature-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"||e.length===0?Ka.OFF:e==="true"?Ka.ON:e:e?Ka.ON:Ka.OFF}};Ka.OFF='"liga" off, "calt" off',Ka.ON='"liga" on, "calt" on';let Mc=Ka;const ja=class ja extends Mt{constructor(){super(54,"fontVariations",ja.OFF,{anyOf:[{type:"boolean",description:m("fontVariations","Enables/Disables the translation from font-weight to font-variation-settings. Change this to a string for fine-grained control of the 'font-variation-settings' CSS property.")},{type:"string",description:m("fontVariationSettings","Explicit 'font-variation-settings' CSS property. A boolean can be passed instead if one only needs to translate font-weight to font-variation-settings.")}],description:m("fontVariationsGeneral","Configures font variations. Can be either a boolean to enable/disable the translation from font-weight to font-variation-settings or a string for the value of the CSS 'font-variation-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"?ja.OFF:e==="true"?ja.TRANSLATE:e:e?ja.TRANSLATE:ja.OFF}compute(e,t,i){return e.fontInfo.fontVariationSettings}};ja.OFF="normal",ja.TRANSLATE="translate";let Hp=ja;class P6 extends B_{constructor(){super(50)}compute(e,t,i){return e.fontInfo}}class O6 extends Fg{constructor(){super(52,"fontSize",ls.fontSize,{type:"number",minimum:6,maximum:100,default:ls.fontSize,description:m("fontSize","Controls the font size in pixels.")})}validate(e){const t=Ts.float(e,this.defaultValue);return t===0?ls.fontSize:Ts.clamp(t,6,100)}compute(e,t,i){return e.fontInfo.fontSize}}const Br=class Br extends Mt{constructor(){super(53,"fontWeight",ls.fontWeight,{anyOf:[{type:"number",minimum:Br.MINIMUM_VALUE,maximum:Br.MAXIMUM_VALUE,errorMessage:m("fontWeightErrorMessage",'Only "normal" and "bold" keywords or numbers between 1 and 1000 are allowed.')},{type:"string",pattern:"^(normal|bold|1000|[1-9][0-9]{0,2})$"},{enum:Br.SUGGESTION_VALUES}],default:ls.fontWeight,description:m("fontWeight",'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(e){return e==="normal"||e==="bold"?e:String(pt.clampedInt(e,ls.fontWeight,Br.MINIMUM_VALUE,Br.MAXIMUM_VALUE))}};Br.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"],Br.MINIMUM_VALUE=1,Br.MAXIMUM_VALUE=1e3;let IL=Br;class F6 extends Mt{constructor(){const e={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",multipleTests:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:"",alternativeTestsCommand:""},t={type:"string",enum:["peek","gotoAndPeek","goto"],default:e.multiple,enumDescriptions:[m("editor.gotoLocation.multiple.peek","Show Peek view of the results (default)"),m("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a Peek view"),m("editor.gotoLocation.multiple.goto","Go to the primary result and enable Peek-less navigation to others")]},i=["","editor.action.referenceSearch.trigger","editor.action.goToReferences","editor.action.peekImplementation","editor.action.goToImplementation","editor.action.peekTypeDefinition","editor.action.goToTypeDefinition","editor.action.peekDeclaration","editor.action.revealDeclaration","editor.action.peekDefinition","editor.action.revealDefinitionAside","editor.action.revealDefinition"];super(58,"gotoLocation",e,{"editor.gotoLocation.multiple":{deprecationMessage:m("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":{description:m("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleTypeDefinitions":{description:m("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleDeclarations":{description:m("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleImplementations":{description:m("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleReferences":{description:m("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist."),...t},"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:e.alternativeDefinitionCommand,enum:i,description:m("alternativeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:e.alternativeTypeDefinitionCommand,enum:i,description:m("alternativeTypeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:e.alternativeDeclarationCommand,enum:i,description:m("alternativeDeclarationCommand","Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:e.alternativeImplementationCommand,enum:i,description:m("alternativeImplementationCommand","Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:e.alternativeReferenceCommand,enum:i,description:m("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{multiple:Ht(t.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:t.multipleDefinitions??Ht(t.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:t.multipleTypeDefinitions??Ht(t.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:t.multipleDeclarations??Ht(t.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:t.multipleImplementations??Ht(t.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:t.multipleReferences??Ht(t.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),multipleTests:t.multipleTests??Ht(t.multipleTests,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:dn.string(t.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:dn.string(t.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:dn.string(t.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:dn.string(t.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:dn.string(t.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand),alternativeTestsCommand:dn.string(t.alternativeTestsCommand,this.defaultValue.alternativeTestsCommand)}}}class B6 extends Mt{constructor(){const e={enabled:!0,delay:300,hidingDelay:300,sticky:!0,above:!0};super(60,"hover",e,{"editor.hover.enabled":{type:"boolean",default:e.enabled,description:m("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:e.delay,minimum:0,maximum:1e4,description:m("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:e.sticky,description:m("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.hidingDelay":{type:"integer",minimum:0,default:e.hidingDelay,description:m("hover.hidingDelay","Controls the delay in milliseconds after which the hover is hidden. Requires `editor.hover.sticky` to be enabled.")},"editor.hover.above":{type:"boolean",default:e.above,description:m("hover.above","Prefer showing hovers above the line, if there's space.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),delay:pt.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:he(t.sticky,this.defaultValue.sticky),hidingDelay:pt.clampedInt(t.hidingDelay,this.defaultValue.hidingDelay,0,6e5),above:he(t.above,this.defaultValue.above)}}}class Ef extends B_{constructor(){super(146)}compute(e,t,i){return Ef.computeLayout(t,{memory:e.memory,outerWidth:e.outerWidth,outerHeight:e.outerHeight,isDominatedByLongLines:e.isDominatedByLongLines,lineHeight:e.fontInfo.lineHeight,viewLineCount:e.viewLineCount,lineNumbersDigitCount:e.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:e.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:e.fontInfo.maxDigitWidth,pixelRatio:e.pixelRatio,glyphMarginDecorationLaneCount:e.glyphMarginDecorationLaneCount})}static computeContainedMinimapLineCount(e){const t=e.height/e.lineHeight,i=Math.floor(e.paddingTop/e.lineHeight);let n=Math.floor(e.paddingBottom/e.lineHeight);e.scrollBeyondLastLine&&(n=Math.max(n,t-1));const s=(i+e.viewLineCount+n)/(e.pixelRatio*e.height),r=Math.floor(e.viewLineCount/s);return{typicalViewportLineCount:t,extraLinesBeforeFirstLine:i,extraLinesBeyondLastLine:n,desiredRatio:s,minimapLineCount:r}}static _computeMinimapLayout(e,t){const i=e.outerWidth,n=e.outerHeight,s=e.pixelRatio;if(!e.minimap.enabled)return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(s*n),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:n};const r=t.stableMinimapLayoutInput,a=r&&e.outerHeight===r.outerHeight&&e.lineHeight===r.lineHeight&&e.typicalHalfwidthCharacterWidth===r.typicalHalfwidthCharacterWidth&&e.pixelRatio===r.pixelRatio&&e.scrollBeyondLastLine===r.scrollBeyondLastLine&&e.paddingTop===r.paddingTop&&e.paddingBottom===r.paddingBottom&&e.minimap.enabled===r.minimap.enabled&&e.minimap.side===r.minimap.side&&e.minimap.size===r.minimap.size&&e.minimap.showSlider===r.minimap.showSlider&&e.minimap.renderCharacters===r.minimap.renderCharacters&&e.minimap.maxColumn===r.minimap.maxColumn&&e.minimap.scale===r.minimap.scale&&e.verticalScrollbarWidth===r.verticalScrollbarWidth&&e.isViewportWrapping===r.isViewportWrapping,l=e.lineHeight,c=e.typicalHalfwidthCharacterWidth,d=e.scrollBeyondLastLine,h=e.minimap.renderCharacters;let u=s>=2?Math.round(e.minimap.scale*2):e.minimap.scale;const f=e.minimap.maxColumn,g=e.minimap.size,p=e.minimap.side,_=e.verticalScrollbarWidth,b=e.viewLineCount,C=e.remainingWidth,w=e.isViewportWrapping,v=h?2:3;let y=Math.floor(s*n);const x=y/s;let L=!1,E=!1,N=v*u,H=u/s,F=1;if(g==="fill"||g==="fit"){const{typicalViewportLineCount:de,extraLinesBeforeFirstLine:se,extraLinesBeyondLastLine:be,desiredRatio:we,minimapLineCount:Rt}=Ef.computeContainedMinimapLineCount({viewLineCount:b,scrollBeyondLastLine:d,paddingTop:e.paddingTop,paddingBottom:e.paddingBottom,height:n,lineHeight:l,pixelRatio:s});if(b/Rt>1)L=!0,E=!0,u=1,N=1,H=u/s;else{let Bt=!1,ht=u+1;if(g==="fit"){const ei=Math.ceil((se+b+be)*N);w&&a&&C<=t.stableFitRemainingWidth?(Bt=!0,ht=t.stableFitMaxMinimapScale):Bt=ei>y}if(g==="fill"||Bt){L=!0;const ei=u;N=Math.min(l*s,Math.max(1,Math.floor(1/we))),w&&a&&C<=t.stableFitRemainingWidth&&(ht=t.stableFitMaxMinimapScale),u=Math.min(ht,Math.max(1,Math.floor(N/v))),u>ei&&(F=Math.min(2,u/ei)),H=u/s/F,y=Math.ceil(Math.max(de,se+b+be)*N),w?(t.stableMinimapLayoutInput=e,t.stableFitRemainingWidth=C,t.stableFitMaxMinimapScale=u):(t.stableMinimapLayoutInput=null,t.stableFitRemainingWidth=0)}}}const W=Math.floor(f*H),j=Math.min(W,Math.max(0,Math.floor((C-_-2)*H/(c+H)))+Ar);let B=Math.floor(s*j);const G=B/s;B=Math.floor(B*F);const ne=h?1:2,ae=p==="left"?0:i-j-_;return{renderMinimap:ne,minimapLeft:ae,minimapWidth:j,minimapHeightIsEditorHeight:L,minimapIsSampling:E,minimapScale:u,minimapLineHeight:N,minimapCanvasInnerWidth:B,minimapCanvasInnerHeight:y,minimapCanvasOuterWidth:G,minimapCanvasOuterHeight:x}}static computeLayout(e,t){const i=t.outerWidth|0,n=t.outerHeight|0,s=t.lineHeight|0,r=t.lineNumbersDigitCount|0,a=t.typicalHalfwidthCharacterWidth,l=t.maxDigitWidth,c=t.pixelRatio,d=t.viewLineCount,h=e.get(138),u=h==="inherit"?e.get(137):h,f=u==="inherit"?e.get(133):u,g=e.get(136),p=t.isDominatedByLongLines,_=e.get(57),b=e.get(68).renderType!==0,C=e.get(69),w=e.get(106),v=e.get(84),y=e.get(73),x=e.get(104),L=x.verticalScrollbarSize,E=x.verticalHasArrows,N=x.arrowSize,H=x.horizontalScrollbarSize,F=e.get(43),W=e.get(111)!=="never";let j=e.get(66);F&&W&&(j+=16);let B=0;if(b){const fi=Math.max(r,C);B=Math.round(fi*l)}let G=0;_&&(G=s*t.glyphMarginDecorationLaneCount);let ne=0,ae=ne+G,de=ae+B,se=de+j;const be=i-G-B-j;let we=!1,Rt=!1,ct=-1;u==="inherit"&&p?(we=!0,Rt=!0):f==="on"||f==="bounded"?Rt=!0:f==="wordWrapColumn"&&(ct=g);const Bt=Ef._computeMinimapLayout({outerWidth:i,outerHeight:n,lineHeight:s,typicalHalfwidthCharacterWidth:a,pixelRatio:c,scrollBeyondLastLine:w,paddingTop:v.top,paddingBottom:v.bottom,minimap:y,verticalScrollbarWidth:L,viewLineCount:d,remainingWidth:be,isViewportWrapping:Rt},t.memory||new q5);Bt.renderMinimap!==0&&Bt.minimapLeft===0&&(ne+=Bt.minimapWidth,ae+=Bt.minimapWidth,de+=Bt.minimapWidth,se+=Bt.minimapWidth);const ht=be-Bt.minimapWidth,ei=Math.max(1,Math.floor((ht-L-2)/a)),js=E?N:0;return Rt&&(ct=Math.max(1,ei),f==="bounded"&&(ct=Math.min(ct,g))),{width:i,height:n,glyphMarginLeft:ne,glyphMarginWidth:G,glyphMarginDecorationLaneCount:t.glyphMarginDecorationLaneCount,lineNumbersLeft:ae,lineNumbersWidth:B,decorationsLeft:de,decorationsWidth:j,contentLeft:se,contentWidth:ht,minimap:Bt,viewportColumn:ei,isWordWrapMinified:we,isViewportWrapping:Rt,wrappingColumn:ct,verticalScrollbarWidth:L,horizontalScrollbarHeight:H,overviewRuler:{top:js,width:L,height:n-2*js,right:0}}}}class W6 extends Mt{constructor(){super(140,"wrappingStrategy","simple",{"editor.wrappingStrategy":{enumDescriptions:[m("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),m("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],type:"string",enum:["simple","advanced"],default:"simple",description:m("wrappingStrategy","Controls the algorithm that computes wrapping points. Note that when in accessibility mode, advanced will be used for the best experience.")}})}validate(e){return Ht(e,"simple",["simple","advanced"])}compute(e,t,i){return t.get(2)===2?"advanced":i}}var xo;(function(o){o.Off="off",o.OnCode="onCode",o.On="on"})(xo||(xo={}));class H6 extends Mt{constructor(){const e={enabled:xo.OnCode};super(65,"lightbulb",e,{"editor.lightbulb.enabled":{type:"string",tags:["experimental"],enum:[xo.Off,xo.OnCode,xo.On],default:e.enabled,enumDescriptions:[m("editor.lightbulb.enabled.off","Disable the code action menu."),m("editor.lightbulb.enabled.onCode","Show the code action menu when the cursor is on lines with code."),m("editor.lightbulb.enabled.on","Show the code action menu when the cursor is on lines with code or on empty lines.")],description:m("enabled","Enables the Code Action lightbulb in the editor.")}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{enabled:Ht(e.enabled,this.defaultValue.enabled,[xo.Off,xo.OnCode,xo.On])}}}class V6 extends Mt{constructor(){const e={enabled:!0,maxLineCount:5,defaultModel:"outlineModel",scrollWithEditor:!0};super(116,"stickyScroll",e,{"editor.stickyScroll.enabled":{type:"boolean",default:e.enabled,description:m("editor.stickyScroll.enabled","Shows the nested current scopes during the scroll at the top of the editor."),tags:["experimental"]},"editor.stickyScroll.maxLineCount":{type:"number",default:e.maxLineCount,minimum:1,maximum:20,description:m("editor.stickyScroll.maxLineCount","Defines the maximum number of sticky lines to show.")},"editor.stickyScroll.defaultModel":{type:"string",enum:["outlineModel","foldingProviderModel","indentationModel"],default:e.defaultModel,description:m("editor.stickyScroll.defaultModel","Defines the model to use for determining which lines to stick. If the outline model does not exist, it will fall back on the folding provider model which falls back on the indentation model. This order is respected in all three cases.")},"editor.stickyScroll.scrollWithEditor":{type:"boolean",default:e.scrollWithEditor,description:m("editor.stickyScroll.scrollWithEditor","Enable scrolling of Sticky Scroll with the editor's horizontal scrollbar.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),maxLineCount:pt.clampedInt(t.maxLineCount,this.defaultValue.maxLineCount,1,20),defaultModel:Ht(t.defaultModel,this.defaultValue.defaultModel,["outlineModel","foldingProviderModel","indentationModel"]),scrollWithEditor:he(t.scrollWithEditor,this.defaultValue.scrollWithEditor)}}}class z6 extends Mt{constructor(){const e={enabled:"on",fontSize:0,fontFamily:"",padding:!1};super(142,"inlayHints",e,{"editor.inlayHints.enabled":{type:"string",default:e.enabled,description:m("inlayHints.enable","Enables the inlay hints in the editor."),enum:["on","onUnlessPressed","offUnlessPressed","off"],markdownEnumDescriptions:[m("editor.inlayHints.on","Inlay hints are enabled"),m("editor.inlayHints.onUnlessPressed","Inlay hints are showing by default and hide when holding {0}",Ue?"Ctrl+Option":"Ctrl+Alt"),m("editor.inlayHints.offUnlessPressed","Inlay hints are hidden by default and show when holding {0}",Ue?"Ctrl+Option":"Ctrl+Alt"),m("editor.inlayHints.off","Inlay hints are disabled")]},"editor.inlayHints.fontSize":{type:"number",default:e.fontSize,markdownDescription:m("inlayHints.fontSize","Controls font size of inlay hints in the editor. As default the {0} is used when the configured value is less than {1} or greater than the editor font size.","`#editor.fontSize#`","`5`")},"editor.inlayHints.fontFamily":{type:"string",default:e.fontFamily,markdownDescription:m("inlayHints.fontFamily","Controls font family of inlay hints in the editor. When set to empty, the {0} is used.","`#editor.fontFamily#`")},"editor.inlayHints.padding":{type:"boolean",default:e.padding,description:m("inlayHints.padding","Enables the padding around the inlay hints in the editor.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return typeof t.enabled=="boolean"&&(t.enabled=t.enabled?"on":"off"),{enabled:Ht(t.enabled,this.defaultValue.enabled,["on","off","offUnlessPressed","onUnlessPressed"]),fontSize:pt.clampedInt(t.fontSize,this.defaultValue.fontSize,0,100),fontFamily:dn.string(t.fontFamily,this.defaultValue.fontFamily),padding:he(t.padding,this.defaultValue.padding)}}}class U6 extends Mt{constructor(){super(66,"lineDecorationsWidth",10)}validate(e){return typeof e=="string"&&/^\d+(\.\d+)?ch$/.test(e)?-parseFloat(e.substring(0,e.length-2)):pt.clampedInt(e,this.defaultValue,0,1e3)}compute(e,t,i){return i<0?pt.clampedInt(-i*e.fontInfo.typicalHalfwidthCharacterWidth,this.defaultValue,0,1e3):i}}class $6 extends Ts{constructor(){super(67,"lineHeight",ls.lineHeight,e=>Ts.clamp(e,0,150),{markdownDescription:m("lineHeight",`Controls the line height. - - Use 0 to automatically compute the line height from the font size. - - Values between 0 and 8 will be used as a multiplier with the font size. - - Values greater than or equal to 8 will be used as effective values.`)})}compute(e,t,i){return e.fontInfo.lineHeight}}class K6 extends Mt{constructor(){const e={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",autohide:!1,renderCharacters:!0,maxColumn:120,scale:1,showRegionSectionHeaders:!0,showMarkSectionHeaders:!0,sectionHeaderFontSize:9,sectionHeaderLetterSpacing:1};super(73,"minimap",e,{"editor.minimap.enabled":{type:"boolean",default:e.enabled,description:m("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.autohide":{type:"boolean",default:e.autohide,description:m("minimap.autohide","Controls whether the minimap is hidden automatically.")},"editor.minimap.size":{type:"string",enum:["proportional","fill","fit"],enumDescriptions:[m("minimap.size.proportional","The minimap has the same size as the editor contents (and might scroll)."),m("minimap.size.fill","The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling)."),m("minimap.size.fit","The minimap will shrink as necessary to never be larger than the editor (no scrolling).")],default:e.size,description:m("minimap.size","Controls the size of the minimap.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:e.side,description:m("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:e.showSlider,description:m("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:e.scale,minimum:1,maximum:3,enum:[1,2,3],description:m("minimap.scale","Scale of content drawn in the minimap: 1, 2 or 3.")},"editor.minimap.renderCharacters":{type:"boolean",default:e.renderCharacters,description:m("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:e.maxColumn,description:m("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")},"editor.minimap.showRegionSectionHeaders":{type:"boolean",default:e.showRegionSectionHeaders,description:m("minimap.showRegionSectionHeaders","Controls whether named regions are shown as section headers in the minimap.")},"editor.minimap.showMarkSectionHeaders":{type:"boolean",default:e.showMarkSectionHeaders,description:m("minimap.showMarkSectionHeaders","Controls whether MARK: comments are shown as section headers in the minimap.")},"editor.minimap.sectionHeaderFontSize":{type:"number",default:e.sectionHeaderFontSize,description:m("minimap.sectionHeaderFontSize","Controls the font size of section headers in the minimap.")},"editor.minimap.sectionHeaderLetterSpacing":{type:"number",default:e.sectionHeaderLetterSpacing,description:m("minimap.sectionHeaderLetterSpacing","Controls the amount of space (in pixels) between characters of section header. This helps the readability of the header in small font sizes.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),autohide:he(t.autohide,this.defaultValue.autohide),size:Ht(t.size,this.defaultValue.size,["proportional","fill","fit"]),side:Ht(t.side,this.defaultValue.side,["right","left"]),showSlider:Ht(t.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:he(t.renderCharacters,this.defaultValue.renderCharacters),scale:pt.clampedInt(t.scale,1,1,3),maxColumn:pt.clampedInt(t.maxColumn,this.defaultValue.maxColumn,1,1e4),showRegionSectionHeaders:he(t.showRegionSectionHeaders,this.defaultValue.showRegionSectionHeaders),showMarkSectionHeaders:he(t.showMarkSectionHeaders,this.defaultValue.showMarkSectionHeaders),sectionHeaderFontSize:Ts.clamp(t.sectionHeaderFontSize??this.defaultValue.sectionHeaderFontSize,4,32),sectionHeaderLetterSpacing:Ts.clamp(t.sectionHeaderLetterSpacing??this.defaultValue.sectionHeaderLetterSpacing,0,5)}}}function j6(o){return o==="ctrlCmd"?Ue?"metaKey":"ctrlKey":"altKey"}class q6 extends Mt{constructor(){super(84,"padding",{top:0,bottom:0},{"editor.padding.top":{type:"number",default:0,minimum:0,maximum:1e3,description:m("padding.top","Controls the amount of space between the top edge of the editor and the first line.")},"editor.padding.bottom":{type:"number",default:0,minimum:0,maximum:1e3,description:m("padding.bottom","Controls the amount of space between the bottom edge of the editor and the last line.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{top:pt.clampedInt(t.top,0,0,1e3),bottom:pt.clampedInt(t.bottom,0,0,1e3)}}}class G6 extends Mt{constructor(){const e={enabled:!0,cycle:!0};super(86,"parameterHints",e,{"editor.parameterHints.enabled":{type:"boolean",default:e.enabled,description:m("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:e.cycle,description:m("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),cycle:he(t.cycle,this.defaultValue.cycle)}}}class Z6 extends B_{constructor(){super(144)}compute(e,t,i){return e.pixelRatio}}class Y6 extends Mt{constructor(){super(88,"placeholder",void 0)}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e:this.defaultValue}}class Q6 extends Mt{constructor(){const e={other:"on",comments:"off",strings:"off"},t=[{type:"boolean"},{type:"string",enum:["on","inline","off"],enumDescriptions:[m("on","Quick suggestions show inside the suggest widget"),m("inline","Quick suggestions show as ghost text"),m("off","Quick suggestions are disabled")]}];super(90,"quickSuggestions",e,{type:"object",additionalProperties:!1,properties:{strings:{anyOf:t,default:e.strings,description:m("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{anyOf:t,default:e.comments,description:m("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{anyOf:t,default:e.other,description:m("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}},default:e,markdownDescription:m("quickSuggestions","Controls whether suggestions should automatically show up while typing. This can be controlled for typing in comments, strings, and other code. Quick suggestion can be configured to show as ghost text or with the suggest widget. Also be aware of the {0}-setting which controls if suggestions are triggered by special characters.","`#editor.suggestOnTriggerCharacters#`")}),this.defaultValue=e}validate(e){if(typeof e=="boolean"){const c=e?"on":"off";return{comments:c,strings:c,other:c}}if(!e||typeof e!="object")return this.defaultValue;const{other:t,comments:i,strings:n}=e,s=["on","inline","off"];let r,a,l;return typeof t=="boolean"?r=t?"on":"off":r=Ht(t,this.defaultValue.other,s),typeof i=="boolean"?a=i?"on":"off":a=Ht(i,this.defaultValue.comments,s),typeof n=="boolean"?l=n?"on":"off":l=Ht(n,this.defaultValue.strings,s),{other:r,comments:a,strings:l}}}class X6 extends Mt{constructor(){super(68,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[m("lineNumbers.off","Line numbers are not rendered."),m("lineNumbers.on","Line numbers are rendered as absolute number."),m("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),m("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:m("lineNumbers","Controls the display of line numbers.")})}validate(e){let t=this.defaultValue.renderType,i=this.defaultValue.renderFn;return typeof e<"u"&&(typeof e=="function"?(t=4,i=e):e==="interval"?t=3:e==="relative"?t=2:e==="on"?t=1:t=0),{renderType:t,renderFn:i}}}function rC(o){const e=o.get(99);return e==="editable"?o.get(92):e!=="on"}class J6 extends Mt{constructor(){const e=[],t={type:"number",description:m("rulers.size","Number of monospace characters at which this editor ruler will render.")};super(103,"rulers",e,{type:"array",items:{anyOf:[t,{type:["object"],properties:{column:t,color:{type:"string",description:m("rulers.color","Color of this editor ruler."),format:"color-hex"}}}]},default:e,description:m("rulers","Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.")})}validate(e){if(Array.isArray(e)){const t=[];for(const i of e)if(typeof i=="number")t.push({column:pt.clampedInt(i,0,0,1e4),color:null});else if(i&&typeof i=="object"){const n=i;t.push({column:pt.clampedInt(n.column,0,0,1e4),color:n.color})}return t.sort((i,n)=>i.column-n.column),t}return this.defaultValue}}class eW extends Mt{constructor(){super(93,"readOnlyMessage",void 0)}validate(e){return!e||typeof e!="object"?this.defaultValue:e}}function WM(o,e){if(typeof o!="string")return e;switch(o){case"hidden":return 2;case"visible":return 3;default:return 1}}let tW=class extends Mt{constructor(){const e={vertical:1,horizontal:1,arrowSize:11,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,horizontalScrollbarSize:12,horizontalSliderSize:12,verticalScrollbarSize:14,verticalSliderSize:14,handleMouseWheel:!0,alwaysConsumeMouseWheel:!0,scrollByPage:!1,ignoreHorizontalScrollbarInContentHeight:!1};super(104,"scrollbar",e,{"editor.scrollbar.vertical":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[m("scrollbar.vertical.auto","The vertical scrollbar will be visible only when necessary."),m("scrollbar.vertical.visible","The vertical scrollbar will always be visible."),m("scrollbar.vertical.fit","The vertical scrollbar will always be hidden.")],default:"auto",description:m("scrollbar.vertical","Controls the visibility of the vertical scrollbar.")},"editor.scrollbar.horizontal":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[m("scrollbar.horizontal.auto","The horizontal scrollbar will be visible only when necessary."),m("scrollbar.horizontal.visible","The horizontal scrollbar will always be visible."),m("scrollbar.horizontal.fit","The horizontal scrollbar will always be hidden.")],default:"auto",description:m("scrollbar.horizontal","Controls the visibility of the horizontal scrollbar.")},"editor.scrollbar.verticalScrollbarSize":{type:"number",default:e.verticalScrollbarSize,description:m("scrollbar.verticalScrollbarSize","The width of the vertical scrollbar.")},"editor.scrollbar.horizontalScrollbarSize":{type:"number",default:e.horizontalScrollbarSize,description:m("scrollbar.horizontalScrollbarSize","The height of the horizontal scrollbar.")},"editor.scrollbar.scrollByPage":{type:"boolean",default:e.scrollByPage,description:m("scrollbar.scrollByPage","Controls whether clicks scroll by page or jump to click position.")},"editor.scrollbar.ignoreHorizontalScrollbarInContentHeight":{type:"boolean",default:e.ignoreHorizontalScrollbarInContentHeight,description:m("scrollbar.ignoreHorizontalScrollbarInContentHeight","When set, the horizontal scrollbar will not increase the size of the editor's content.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e,i=pt.clampedInt(t.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),n=pt.clampedInt(t.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:pt.clampedInt(t.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:WM(t.vertical,this.defaultValue.vertical),horizontal:WM(t.horizontal,this.defaultValue.horizontal),useShadows:he(t.useShadows,this.defaultValue.useShadows),verticalHasArrows:he(t.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:he(t.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:he(t.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:he(t.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:i,horizontalSliderSize:pt.clampedInt(t.horizontalSliderSize,i,0,1e3),verticalScrollbarSize:n,verticalSliderSize:pt.clampedInt(t.verticalSliderSize,n,0,1e3),scrollByPage:he(t.scrollByPage,this.defaultValue.scrollByPage),ignoreHorizontalScrollbarInContentHeight:he(t.ignoreHorizontalScrollbarInContentHeight,this.defaultValue.ignoreHorizontalScrollbarInContentHeight)}}};const $o="inUntrustedWorkspace",ed={allowedCharacters:"editor.unicodeHighlight.allowedCharacters",invisibleCharacters:"editor.unicodeHighlight.invisibleCharacters",nonBasicASCII:"editor.unicodeHighlight.nonBasicASCII",ambiguousCharacters:"editor.unicodeHighlight.ambiguousCharacters",includeComments:"editor.unicodeHighlight.includeComments",includeStrings:"editor.unicodeHighlight.includeStrings",allowedLocales:"editor.unicodeHighlight.allowedLocales"};class iW extends Mt{constructor(){const e={nonBasicASCII:$o,invisibleCharacters:!0,ambiguousCharacters:!0,includeComments:$o,includeStrings:!0,allowedCharacters:{},allowedLocales:{_os:!0,_vscode:!0}};super(126,"unicodeHighlight",e,{[ed.nonBasicASCII]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,$o],default:e.nonBasicASCII,description:m("unicodeHighlight.nonBasicASCII","Controls whether all non-basic ASCII characters are highlighted. Only characters between U+0020 and U+007E, tab, line-feed and carriage-return are considered basic ASCII.")},[ed.invisibleCharacters]:{restricted:!0,type:"boolean",default:e.invisibleCharacters,description:m("unicodeHighlight.invisibleCharacters","Controls whether characters that just reserve space or have no width at all are highlighted.")},[ed.ambiguousCharacters]:{restricted:!0,type:"boolean",default:e.ambiguousCharacters,description:m("unicodeHighlight.ambiguousCharacters","Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.")},[ed.includeComments]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,$o],default:e.includeComments,description:m("unicodeHighlight.includeComments","Controls whether characters in comments should also be subject to Unicode highlighting.")},[ed.includeStrings]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,$o],default:e.includeStrings,description:m("unicodeHighlight.includeStrings","Controls whether characters in strings should also be subject to Unicode highlighting.")},[ed.allowedCharacters]:{restricted:!0,type:"object",default:e.allowedCharacters,description:m("unicodeHighlight.allowedCharacters","Defines allowed characters that are not being highlighted."),additionalProperties:{type:"boolean"}},[ed.allowedLocales]:{restricted:!0,type:"object",additionalProperties:{type:"boolean"},default:e.allowedLocales,description:m("unicodeHighlight.allowedLocales","Unicode characters that are common in allowed locales are not being highlighted.")}})}applyUpdate(e,t){let i=!1;t.allowedCharacters&&e&&(as(e.allowedCharacters,t.allowedCharacters)||(e={...e,allowedCharacters:t.allowedCharacters},i=!0)),t.allowedLocales&&e&&(as(e.allowedLocales,t.allowedLocales)||(e={...e,allowedLocales:t.allowedLocales},i=!0));const n=super.applyUpdate(e,t);return i?new $m(n.newValue,!0):n}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{nonBasicASCII:Nf(t.nonBasicASCII,$o,[!0,!1,$o]),invisibleCharacters:he(t.invisibleCharacters,this.defaultValue.invisibleCharacters),ambiguousCharacters:he(t.ambiguousCharacters,this.defaultValue.ambiguousCharacters),includeComments:Nf(t.includeComments,$o,[!0,!1,$o]),includeStrings:Nf(t.includeStrings,$o,[!0,!1,$o]),allowedCharacters:this.validateBooleanMap(e.allowedCharacters,this.defaultValue.allowedCharacters),allowedLocales:this.validateBooleanMap(e.allowedLocales,this.defaultValue.allowedLocales)}}validateBooleanMap(e,t){if(typeof e!="object"||!e)return t;const i={};for(const[n,s]of Object.entries(e))s===!0&&(i[n]=!0);return i}}class nW extends Mt{constructor(){const e={enabled:!0,mode:"subwordSmart",showToolbar:"onHover",suppressSuggestions:!1,keepOnBlur:!1,fontFamily:"default"};super(62,"inlineSuggest",e,{"editor.inlineSuggest.enabled":{type:"boolean",default:e.enabled,description:m("inlineSuggest.enabled","Controls whether to automatically show inline suggestions in the editor.")},"editor.inlineSuggest.showToolbar":{type:"string",default:e.showToolbar,enum:["always","onHover","never"],enumDescriptions:[m("inlineSuggest.showToolbar.always","Show the inline suggestion toolbar whenever an inline suggestion is shown."),m("inlineSuggest.showToolbar.onHover","Show the inline suggestion toolbar when hovering over an inline suggestion."),m("inlineSuggest.showToolbar.never","Never show the inline suggestion toolbar.")],description:m("inlineSuggest.showToolbar","Controls when to show the inline suggestion toolbar.")},"editor.inlineSuggest.suppressSuggestions":{type:"boolean",default:e.suppressSuggestions,description:m("inlineSuggest.suppressSuggestions","Controls how inline suggestions interact with the suggest widget. If enabled, the suggest widget is not shown automatically when inline suggestions are available.")},"editor.inlineSuggest.fontFamily":{type:"string",default:e.fontFamily,description:m("inlineSuggest.fontFamily","Controls the font family of the inline suggestions.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),mode:Ht(t.mode,this.defaultValue.mode,["prefix","subword","subwordSmart"]),showToolbar:Ht(t.showToolbar,this.defaultValue.showToolbar,["always","onHover","never"]),suppressSuggestions:he(t.suppressSuggestions,this.defaultValue.suppressSuggestions),keepOnBlur:he(t.keepOnBlur,this.defaultValue.keepOnBlur),fontFamily:dn.string(t.fontFamily,this.defaultValue.fontFamily)}}}class sW extends Mt{constructor(){const e={enabled:!1,showToolbar:"onHover",fontFamily:"default",keepOnBlur:!1};super(63,"experimentalInlineEdit",e,{"editor.experimentalInlineEdit.enabled":{type:"boolean",default:e.enabled,description:m("inlineEdit.enabled","Controls whether to show inline edits in the editor.")},"editor.experimentalInlineEdit.showToolbar":{type:"string",default:e.showToolbar,enum:["always","onHover","never"],enumDescriptions:[m("inlineEdit.showToolbar.always","Show the inline edit toolbar whenever an inline suggestion is shown."),m("inlineEdit.showToolbar.onHover","Show the inline edit toolbar when hovering over an inline suggestion."),m("inlineEdit.showToolbar.never","Never show the inline edit toolbar.")],description:m("inlineEdit.showToolbar","Controls when to show the inline edit toolbar.")},"editor.experimentalInlineEdit.fontFamily":{type:"string",default:e.fontFamily,description:m("inlineEdit.fontFamily","Controls the font family of the inline edit.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),showToolbar:Ht(t.showToolbar,this.defaultValue.showToolbar,["always","onHover","never"]),fontFamily:dn.string(t.fontFamily,this.defaultValue.fontFamily),keepOnBlur:he(t.keepOnBlur,this.defaultValue.keepOnBlur)}}}class oW extends Mt{constructor(){const e={enabled:Qi.bracketPairColorizationOptions.enabled,independentColorPoolPerBracketType:Qi.bracketPairColorizationOptions.independentColorPoolPerBracketType};super(15,"bracketPairColorization",e,{"editor.bracketPairColorization.enabled":{type:"boolean",default:e.enabled,markdownDescription:m("bracketPairColorization.enabled","Controls whether bracket pair colorization is enabled or not. Use {0} to override the bracket highlight colors.","`#workbench.colorCustomizations#`")},"editor.bracketPairColorization.independentColorPoolPerBracketType":{type:"boolean",default:e.independentColorPoolPerBracketType,description:m("bracketPairColorization.independentColorPoolPerBracketType","Controls whether each bracket type has its own independent color pool.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),independentColorPoolPerBracketType:he(t.independentColorPoolPerBracketType,this.defaultValue.independentColorPoolPerBracketType)}}}class rW extends Mt{constructor(){const e={bracketPairs:!1,bracketPairsHorizontal:"active",highlightActiveBracketPair:!0,indentation:!0,highlightActiveIndentation:!0};super(16,"guides",e,{"editor.guides.bracketPairs":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[m("editor.guides.bracketPairs.true","Enables bracket pair guides."),m("editor.guides.bracketPairs.active","Enables bracket pair guides only for the active bracket pair."),m("editor.guides.bracketPairs.false","Disables bracket pair guides.")],default:e.bracketPairs,description:m("editor.guides.bracketPairs","Controls whether bracket pair guides are enabled or not.")},"editor.guides.bracketPairsHorizontal":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[m("editor.guides.bracketPairsHorizontal.true","Enables horizontal guides as addition to vertical bracket pair guides."),m("editor.guides.bracketPairsHorizontal.active","Enables horizontal guides only for the active bracket pair."),m("editor.guides.bracketPairsHorizontal.false","Disables horizontal bracket pair guides.")],default:e.bracketPairsHorizontal,description:m("editor.guides.bracketPairsHorizontal","Controls whether horizontal bracket pair guides are enabled or not.")},"editor.guides.highlightActiveBracketPair":{type:"boolean",default:e.highlightActiveBracketPair,description:m("editor.guides.highlightActiveBracketPair","Controls whether the editor should highlight the active bracket pair.")},"editor.guides.indentation":{type:"boolean",default:e.indentation,description:m("editor.guides.indentation","Controls whether the editor should render indent guides.")},"editor.guides.highlightActiveIndentation":{type:["boolean","string"],enum:[!0,"always",!1],enumDescriptions:[m("editor.guides.highlightActiveIndentation.true","Highlights the active indent guide."),m("editor.guides.highlightActiveIndentation.always","Highlights the active indent guide even if bracket guides are highlighted."),m("editor.guides.highlightActiveIndentation.false","Do not highlight the active indent guide.")],default:e.highlightActiveIndentation,description:m("editor.guides.highlightActiveIndentation","Controls whether the editor should highlight the active indent guide.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{bracketPairs:Nf(t.bracketPairs,this.defaultValue.bracketPairs,[!0,!1,"active"]),bracketPairsHorizontal:Nf(t.bracketPairsHorizontal,this.defaultValue.bracketPairsHorizontal,[!0,!1,"active"]),highlightActiveBracketPair:he(t.highlightActiveBracketPair,this.defaultValue.highlightActiveBracketPair),indentation:he(t.indentation,this.defaultValue.indentation),highlightActiveIndentation:Nf(t.highlightActiveIndentation,this.defaultValue.highlightActiveIndentation,[!0,!1,"always"])}}}function Nf(o,e,t){const i=t.indexOf(o);return i===-1?e:t[i]}class aW extends Mt{constructor(){const e={insertMode:"insert",filterGraceful:!0,snippetsPreventQuickSuggestions:!1,localityBonus:!1,shareSuggestSelections:!1,selectionMode:"always",showIcons:!0,showStatusBar:!1,preview:!1,previewMode:"subwordSmart",showInlineDetails:!0,showMethods:!0,showFunctions:!0,showConstructors:!0,showDeprecated:!0,matchOnWordStartOnly:!0,showFields:!0,showVariables:!0,showClasses:!0,showStructs:!0,showInterfaces:!0,showModules:!0,showProperties:!0,showEvents:!0,showOperators:!0,showUnits:!0,showValues:!0,showConstants:!0,showEnums:!0,showEnumMembers:!0,showKeywords:!0,showWords:!0,showColors:!0,showFiles:!0,showReferences:!0,showFolders:!0,showTypeParameters:!0,showSnippets:!0,showUsers:!0,showIssues:!0};super(119,"suggest",e,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[m("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),m("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:e.insertMode,description:m("suggest.insertMode","Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.filterGraceful":{type:"boolean",default:e.filterGraceful,description:m("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:e.localityBonus,description:m("suggest.localityBonus","Controls whether sorting favors words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:e.shareSuggestSelections,markdownDescription:m("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.selectionMode":{type:"string",enum:["always","never","whenTriggerCharacter","whenQuickSuggestion"],enumDescriptions:[m("suggest.insertMode.always","Always select a suggestion when automatically triggering IntelliSense."),m("suggest.insertMode.never","Never select a suggestion when automatically triggering IntelliSense."),m("suggest.insertMode.whenTriggerCharacter","Select a suggestion only when triggering IntelliSense from a trigger character."),m("suggest.insertMode.whenQuickSuggestion","Select a suggestion only when triggering IntelliSense as you type.")],default:e.selectionMode,markdownDescription:m("suggest.selectionMode","Controls whether a suggestion is selected when the widget shows. Note that this only applies to automatically triggered suggestions ({0} and {1}) and that a suggestion is always selected when explicitly invoked, e.g via `Ctrl+Space`.","`#editor.quickSuggestions#`","`#editor.suggestOnTriggerCharacters#`")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:e.snippetsPreventQuickSuggestions,description:m("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:e.showIcons,description:m("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.showStatusBar":{type:"boolean",default:e.showStatusBar,description:m("suggest.showStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")},"editor.suggest.preview":{type:"boolean",default:e.preview,description:m("suggest.preview","Controls whether to preview the suggestion outcome in the editor.")},"editor.suggest.showInlineDetails":{type:"boolean",default:e.showInlineDetails,description:m("suggest.showInlineDetails","Controls whether suggest details show inline with the label or only in the details widget.")},"editor.suggest.maxVisibleSuggestions":{type:"number",deprecationMessage:m("suggest.maxVisibleSuggestions.dep","This setting is deprecated. The suggest widget can now be resized.")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:m("deprecated","This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.")},"editor.suggest.showMethods":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showDeprecated":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showDeprecated","When enabled IntelliSense shows `deprecated`-suggestions.")},"editor.suggest.matchOnWordStartOnly":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.matchOnWordStartOnly","When enabled IntelliSense filtering requires that the first character matches on a word start. For example, `c` on `Console` or `WebContext` but _not_ on `description`. When disabled IntelliSense will show more results but still sorts them by match quality.")},"editor.suggest.showFields":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.showUsers":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showUsers","When enabled IntelliSense shows `user`-suggestions.")},"editor.suggest.showIssues":{type:"boolean",default:!0,markdownDescription:m("editor.suggest.showIssues","When enabled IntelliSense shows `issues`-suggestions.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{insertMode:Ht(t.insertMode,this.defaultValue.insertMode,["insert","replace"]),filterGraceful:he(t.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:he(t.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:he(t.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:he(t.shareSuggestSelections,this.defaultValue.shareSuggestSelections),selectionMode:Ht(t.selectionMode,this.defaultValue.selectionMode,["always","never","whenQuickSuggestion","whenTriggerCharacter"]),showIcons:he(t.showIcons,this.defaultValue.showIcons),showStatusBar:he(t.showStatusBar,this.defaultValue.showStatusBar),preview:he(t.preview,this.defaultValue.preview),previewMode:Ht(t.previewMode,this.defaultValue.previewMode,["prefix","subword","subwordSmart"]),showInlineDetails:he(t.showInlineDetails,this.defaultValue.showInlineDetails),showMethods:he(t.showMethods,this.defaultValue.showMethods),showFunctions:he(t.showFunctions,this.defaultValue.showFunctions),showConstructors:he(t.showConstructors,this.defaultValue.showConstructors),showDeprecated:he(t.showDeprecated,this.defaultValue.showDeprecated),matchOnWordStartOnly:he(t.matchOnWordStartOnly,this.defaultValue.matchOnWordStartOnly),showFields:he(t.showFields,this.defaultValue.showFields),showVariables:he(t.showVariables,this.defaultValue.showVariables),showClasses:he(t.showClasses,this.defaultValue.showClasses),showStructs:he(t.showStructs,this.defaultValue.showStructs),showInterfaces:he(t.showInterfaces,this.defaultValue.showInterfaces),showModules:he(t.showModules,this.defaultValue.showModules),showProperties:he(t.showProperties,this.defaultValue.showProperties),showEvents:he(t.showEvents,this.defaultValue.showEvents),showOperators:he(t.showOperators,this.defaultValue.showOperators),showUnits:he(t.showUnits,this.defaultValue.showUnits),showValues:he(t.showValues,this.defaultValue.showValues),showConstants:he(t.showConstants,this.defaultValue.showConstants),showEnums:he(t.showEnums,this.defaultValue.showEnums),showEnumMembers:he(t.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:he(t.showKeywords,this.defaultValue.showKeywords),showWords:he(t.showWords,this.defaultValue.showWords),showColors:he(t.showColors,this.defaultValue.showColors),showFiles:he(t.showFiles,this.defaultValue.showFiles),showReferences:he(t.showReferences,this.defaultValue.showReferences),showFolders:he(t.showFolders,this.defaultValue.showFolders),showTypeParameters:he(t.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:he(t.showSnippets,this.defaultValue.showSnippets),showUsers:he(t.showUsers,this.defaultValue.showUsers),showIssues:he(t.showIssues,this.defaultValue.showIssues)}}}class lW extends Mt{constructor(){super(114,"smartSelect",{selectLeadingAndTrailingWhitespace:!0,selectSubwords:!0},{"editor.smartSelect.selectLeadingAndTrailingWhitespace":{description:m("selectLeadingAndTrailingWhitespace","Whether leading and trailing whitespace should always be selected."),default:!0,type:"boolean"},"editor.smartSelect.selectSubwords":{description:m("selectSubwords","Whether subwords (like 'foo' in 'fooBar' or 'foo_bar') should be selected."),default:!0,type:"boolean"}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{selectLeadingAndTrailingWhitespace:he(e.selectLeadingAndTrailingWhitespace,this.defaultValue.selectLeadingAndTrailingWhitespace),selectSubwords:he(e.selectSubwords,this.defaultValue.selectSubwords)}}}class cW extends Mt{constructor(){const e=[];super(131,"wordSegmenterLocales",e,{anyOf:[{description:m("wordSegmenterLocales","Locales to be used for word segmentation when doing word related navigations or operations. Specify the BCP 47 language tag of the word you wish to recognize (e.g., ja, zh-CN, zh-Hant-TW, etc.)."),type:"string"},{description:m("wordSegmenterLocales","Locales to be used for word segmentation when doing word related navigations or operations. Specify the BCP 47 language tag of the word you wish to recognize (e.g., ja, zh-CN, zh-Hant-TW, etc.)."),type:"array",items:{type:"string"}}]})}validate(e){if(typeof e=="string"&&(e=[e]),Array.isArray(e)){const t=[];for(const i of e)if(typeof i=="string")try{Intl.Segmenter.supportedLocalesOf(i).length>0&&t.push(i)}catch{}return t}return this.defaultValue}}class dW extends Mt{constructor(){super(139,"wrappingIndent",1,{"editor.wrappingIndent":{type:"string",enum:["none","same","indent","deepIndent"],enumDescriptions:[m("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),m("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),m("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),m("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:m("wrappingIndent","Controls the indentation of wrapped lines."),default:"same"}})}validate(e){switch(e){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}return 1}compute(e,t,i){return t.get(2)===2?0:i}}class hW extends B_{constructor(){super(147)}compute(e,t,i){const n=t.get(146);return{isDominatedByLongLines:e.isDominatedByLongLines,isWordWrapMinified:n.isWordWrapMinified,isViewportWrapping:n.isViewportWrapping,wrappingColumn:n.wrappingColumn}}}class uW extends Mt{constructor(){const e={enabled:!0,showDropSelector:"afterDrop"};super(36,"dropIntoEditor",e,{"editor.dropIntoEditor.enabled":{type:"boolean",default:e.enabled,markdownDescription:m("dropIntoEditor.enabled","Controls whether you can drag and drop a file into a text editor by holding down the `Shift` key (instead of opening the file in an editor).")},"editor.dropIntoEditor.showDropSelector":{type:"string",markdownDescription:m("dropIntoEditor.showDropSelector","Controls if a widget is shown when dropping files into the editor. This widget lets you control how the file is dropped."),enum:["afterDrop","never"],enumDescriptions:[m("dropIntoEditor.showDropSelector.afterDrop","Show the drop selector widget after a file is dropped into the editor."),m("dropIntoEditor.showDropSelector.never","Never show the drop selector widget. Instead the default drop provider is always used.")],default:"afterDrop"}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),showDropSelector:Ht(t.showDropSelector,this.defaultValue.showDropSelector,["afterDrop","never"])}}}class fW extends Mt{constructor(){const e={enabled:!0,showPasteSelector:"afterPaste"};super(85,"pasteAs",e,{"editor.pasteAs.enabled":{type:"boolean",default:e.enabled,markdownDescription:m("pasteAs.enabled","Controls whether you can paste content in different ways.")},"editor.pasteAs.showPasteSelector":{type:"string",markdownDescription:m("pasteAs.showPasteSelector","Controls if a widget is shown when pasting content in to the editor. This widget lets you control how the file is pasted."),enum:["afterPaste","never"],enumDescriptions:[m("pasteAs.showPasteSelector.afterPaste","Show the paste selector widget after content is pasted into the editor."),m("pasteAs.showPasteSelector.never","Never show the paste selector widget. Instead the default pasting behavior is always used.")],default:"afterPaste"}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:he(t.enabled,this.defaultValue.enabled),showPasteSelector:Ht(t.showPasteSelector,this.defaultValue.showPasteSelector,["afterPaste","never"])}}}const gW="Consolas, 'Courier New', monospace",mW="Menlo, Monaco, 'Courier New', monospace",pW="'Droid Sans Mono', 'monospace', monospace",ls={fontFamily:Ue?mW:Un?pW:gW,fontWeight:"normal",fontSize:Ue?12:14,lineHeight:0,letterSpacing:0},Zu=[];function Q(o){return Zu[o.id]=o,o}const Xh={acceptSuggestionOnCommitCharacter:Q(new Je(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:m("acceptSuggestionOnCommitCharacter","Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.")})),acceptSuggestionOnEnter:Q(new Wt(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",m("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:m("acceptSuggestionOnEnter","Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:Q(new I6),accessibilityPageSize:Q(new pt(3,"accessibilityPageSize",10,1,1073741824,{description:m("accessibilityPageSize","Controls the number of lines in the editor that can be read out by a screen reader at once. When we detect a screen reader we automatically set the default to be 500. Warning: this has a performance implication for numbers larger than the default."),tags:["accessibility"]})),ariaLabel:Q(new dn(4,"ariaLabel",m("editorViewAccessibleLabel","Editor content"))),ariaRequired:Q(new Je(5,"ariaRequired",!1,void 0)),screenReaderAnnounceInlineSuggestion:Q(new Je(8,"screenReaderAnnounceInlineSuggestion",!0,{description:m("screenReaderAnnounceInlineSuggestion","Control whether inline suggestions are announced by a screen reader."),tags:["accessibility"]})),autoClosingBrackets:Q(new Wt(6,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",m("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),m("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:m("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingComments:Q(new Wt(7,"autoClosingComments","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",m("editor.autoClosingComments.languageDefined","Use language configurations to determine when to autoclose comments."),m("editor.autoClosingComments.beforeWhitespace","Autoclose comments only when the cursor is to the left of whitespace."),""],description:m("autoClosingComments","Controls whether the editor should automatically close comments after the user adds an opening comment.")})),autoClosingDelete:Q(new Wt(9,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",m("editor.autoClosingDelete.auto","Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:m("autoClosingDelete","Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:Q(new Wt(10,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",m("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:m("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:Q(new Wt(11,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",m("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),m("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:m("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:Q(new vb(12,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],D6,{enumDescriptions:[m("editor.autoIndent.none","The editor will not insert indentation automatically."),m("editor.autoIndent.keep","The editor will keep the current line's indentation."),m("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),m("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),m("editor.autoIndent.full","The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.")],description:m("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:Q(new Je(13,"automaticLayout",!1)),autoSurround:Q(new Wt(14,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[m("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),m("editor.autoSurround.quotes","Surround with quotes but not brackets."),m("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:m("autoSurround","Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),bracketPairColorization:Q(new oW),bracketPairGuides:Q(new rW),stickyTabStops:Q(new Je(117,"stickyTabStops",!1,{description:m("stickyTabStops","Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:Q(new Je(17,"codeLens",!0,{description:m("codeLens","Controls whether the editor shows CodeLens.")})),codeLensFontFamily:Q(new dn(18,"codeLensFontFamily","",{description:m("codeLensFontFamily","Controls the font family for CodeLens.")})),codeLensFontSize:Q(new pt(19,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,markdownDescription:m("codeLensFontSize","Controls the font size in pixels for CodeLens. When set to 0, 90% of `#editor.fontSize#` is used.")})),colorDecorators:Q(new Je(20,"colorDecorators",!0,{description:m("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),colorDecoratorActivatedOn:Q(new Wt(149,"colorDecoratorsActivatedOn","clickAndHover",["clickAndHover","hover","click"],{enumDescriptions:[m("editor.colorDecoratorActivatedOn.clickAndHover","Make the color picker appear both on click and hover of the color decorator"),m("editor.colorDecoratorActivatedOn.hover","Make the color picker appear on hover of the color decorator"),m("editor.colorDecoratorActivatedOn.click","Make the color picker appear on click of the color decorator")],description:m("colorDecoratorActivatedOn","Controls the condition to make a color picker appear from a color decorator")})),colorDecoratorsLimit:Q(new pt(21,"colorDecoratorsLimit",500,1,1e6,{markdownDescription:m("colorDecoratorsLimit","Controls the max number of color decorators that can be rendered in an editor at once.")})),columnSelection:Q(new Je(22,"columnSelection",!1,{description:m("columnSelection","Enable that the selection with the mouse and keys is doing column selection.")})),comments:Q(new E6),contextmenu:Q(new Je(24,"contextmenu",!0)),copyWithSyntaxHighlighting:Q(new Je(25,"copyWithSyntaxHighlighting",!0,{description:m("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:Q(new vb(26,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],N6,{description:m("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:Q(new Wt(27,"cursorSmoothCaretAnimation","off",["off","explicit","on"],{enumDescriptions:[m("cursorSmoothCaretAnimation.off","Smooth caret animation is disabled."),m("cursorSmoothCaretAnimation.explicit","Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture."),m("cursorSmoothCaretAnimation.on","Smooth caret animation is always enabled.")],description:m("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:Q(new vb(28,"cursorStyle",Ai.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],T6,{description:m("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:Q(new pt(29,"cursorSurroundingLines",0,0,1073741824,{description:m("cursorSurroundingLines","Controls the minimal number of visible leading lines (minimum 0) and trailing lines (minimum 1) surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.")})),cursorSurroundingLinesStyle:Q(new Wt(30,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[m("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),m("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],markdownDescription:m("cursorSurroundingLinesStyle","Controls when `#editor.cursorSurroundingLines#` should be enforced.")})),cursorWidth:Q(new pt(31,"cursorWidth",0,0,1073741824,{markdownDescription:m("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:Q(new Je(32,"disableLayerHinting",!1)),disableMonospaceOptimizations:Q(new Je(33,"disableMonospaceOptimizations",!1)),domReadOnly:Q(new Je(34,"domReadOnly",!1)),dragAndDrop:Q(new Je(35,"dragAndDrop",!0,{description:m("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:Q(new R6),dropIntoEditor:Q(new uW),stickyScroll:Q(new V6),experimentalWhitespaceRendering:Q(new Wt(38,"experimentalWhitespaceRendering","svg",["svg","font","off"],{enumDescriptions:[m("experimentalWhitespaceRendering.svg","Use a new rendering method with svgs."),m("experimentalWhitespaceRendering.font","Use a new rendering method with font characters."),m("experimentalWhitespaceRendering.off","Use the stable rendering method.")],description:m("experimentalWhitespaceRendering","Controls whether whitespace is rendered with a new, experimental method.")})),extraEditorClassName:Q(new dn(39,"extraEditorClassName","")),fastScrollSensitivity:Q(new Ts(40,"fastScrollSensitivity",5,o=>o<=0?5:o,{markdownDescription:m("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:Q(new A6),fixedOverflowWidgets:Q(new Je(42,"fixedOverflowWidgets",!1)),folding:Q(new Je(43,"folding",!0,{description:m("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:Q(new Wt(44,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[m("foldingStrategy.auto","Use a language-specific folding strategy if available, else the indentation-based one."),m("foldingStrategy.indentation","Use the indentation-based folding strategy.")],description:m("foldingStrategy","Controls the strategy for computing folding ranges.")})),foldingHighlight:Q(new Je(45,"foldingHighlight",!0,{description:m("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),foldingImportsByDefault:Q(new Je(46,"foldingImportsByDefault",!1,{description:m("foldingImportsByDefault","Controls whether the editor automatically collapses import ranges.")})),foldingMaximumRegions:Q(new pt(47,"foldingMaximumRegions",5e3,10,65e3,{description:m("foldingMaximumRegions","The maximum number of foldable regions. Increasing this value may result in the editor becoming less responsive when the current source has a large number of foldable regions.")})),unfoldOnClickAfterEndOfLine:Q(new Je(48,"unfoldOnClickAfterEndOfLine",!1,{description:m("unfoldOnClickAfterEndOfLine","Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:Q(new dn(49,"fontFamily",ls.fontFamily,{description:m("fontFamily","Controls the font family.")})),fontInfo:Q(new P6),fontLigatures2:Q(new Mc),fontSize:Q(new O6),fontWeight:Q(new IL),fontVariations:Q(new Hp),formatOnPaste:Q(new Je(55,"formatOnPaste",!1,{description:m("formatOnPaste","Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.")})),formatOnType:Q(new Je(56,"formatOnType",!1,{description:m("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:Q(new Je(57,"glyphMargin",!0,{description:m("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:Q(new F6),hideCursorInOverviewRuler:Q(new Je(59,"hideCursorInOverviewRuler",!1,{description:m("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),hover:Q(new B6),inDiffEditor:Q(new Je(61,"inDiffEditor",!1)),letterSpacing:Q(new Ts(64,"letterSpacing",ls.letterSpacing,o=>Ts.clamp(o,-5,20),{description:m("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:Q(new H6),lineDecorationsWidth:Q(new U6),lineHeight:Q(new $6),lineNumbers:Q(new X6),lineNumbersMinChars:Q(new pt(69,"lineNumbersMinChars",5,1,300)),linkedEditing:Q(new Je(70,"linkedEditing",!1,{description:m("linkedEditing","Controls whether the editor has linked editing enabled. Depending on the language, related symbols such as HTML tags, are updated while editing.")})),links:Q(new Je(71,"links",!0,{description:m("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:Q(new Wt(72,"matchBrackets","always",["always","near","never"],{description:m("matchBrackets","Highlight matching brackets.")})),minimap:Q(new K6),mouseStyle:Q(new Wt(74,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:Q(new Ts(75,"mouseWheelScrollSensitivity",1,o=>o===0?1:o,{markdownDescription:m("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:Q(new Je(76,"mouseWheelZoom",!1,{markdownDescription:Ue?m("mouseWheelZoom.mac","Zoom the font of the editor when using mouse wheel and holding `Cmd`."):m("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:Q(new Je(77,"multiCursorMergeOverlapping",!0,{description:m("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:Q(new vb(78,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],j6,{markdownEnumDescriptions:[m("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),m("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:m({key:"multiCursorModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add multiple cursors with the mouse. The Go to Definition and Open Link mouse gestures will adapt such that they do not conflict with the [multicursor modifier](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).")})),multiCursorPaste:Q(new Wt(79,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[m("multiCursorPaste.spread","Each cursor pastes a single line of the text."),m("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:m("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),multiCursorLimit:Q(new pt(80,"multiCursorLimit",1e4,1,1e5,{markdownDescription:m("multiCursorLimit","Controls the max number of cursors that can be in an active editor at once.")})),occurrencesHighlight:Q(new Wt(81,"occurrencesHighlight","singleFile",["off","singleFile","multiFile"],{markdownEnumDescriptions:[m("occurrencesHighlight.off","Does not highlight occurrences."),m("occurrencesHighlight.singleFile","Highlights occurrences only in the current file."),m("occurrencesHighlight.multiFile","Experimental: Highlights occurrences across all valid open files.")],markdownDescription:m("occurrencesHighlight","Controls whether occurrences should be highlighted across open files.")})),overviewRulerBorder:Q(new Je(82,"overviewRulerBorder",!0,{description:m("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:Q(new pt(83,"overviewRulerLanes",3,0,3)),padding:Q(new q6),pasteAs:Q(new fW),parameterHints:Q(new G6),peekWidgetDefaultFocus:Q(new Wt(87,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[m("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),m("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:m("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),placeholder:Q(new Y6),definitionLinkOpensInPeek:Q(new Je(89,"definitionLinkOpensInPeek",!1,{description:m("definitionLinkOpensInPeek","Controls whether the Go to Definition mouse gesture always opens the peek widget.")})),quickSuggestions:Q(new Q6),quickSuggestionsDelay:Q(new pt(91,"quickSuggestionsDelay",10,0,1073741824,{description:m("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:Q(new Je(92,"readOnly",!1)),readOnlyMessage:Q(new eW),renameOnType:Q(new Je(94,"renameOnType",!1,{description:m("renameOnType","Controls whether the editor auto renames on type."),markdownDeprecationMessage:m("renameOnTypeDeprecate","Deprecated, use `editor.linkedEditing` instead.")})),renderControlCharacters:Q(new Je(95,"renderControlCharacters",!0,{description:m("renderControlCharacters","Controls whether the editor should render control characters."),restricted:!0})),renderFinalNewline:Q(new Wt(96,"renderFinalNewline",Un?"dimmed":"on",["off","on","dimmed"],{description:m("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:Q(new Wt(97,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",m("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:m("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderLineHighlightOnlyWhenFocus:Q(new Je(98,"renderLineHighlightOnlyWhenFocus",!1,{description:m("renderLineHighlightOnlyWhenFocus","Controls if the editor should render the current line highlight only when the editor is focused.")})),renderValidationDecorations:Q(new Wt(99,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:Q(new Wt(100,"renderWhitespace","selection",["none","boundary","selection","trailing","all"],{enumDescriptions:["",m("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),m("renderWhitespace.selection","Render whitespace characters only on selected text."),m("renderWhitespace.trailing","Render only trailing whitespace characters."),""],description:m("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:Q(new pt(101,"revealHorizontalRightPadding",15,0,1e3)),roundedSelection:Q(new Je(102,"roundedSelection",!0,{description:m("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:Q(new J6),scrollbar:Q(new tW),scrollBeyondLastColumn:Q(new pt(105,"scrollBeyondLastColumn",4,0,1073741824,{description:m("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:Q(new Je(106,"scrollBeyondLastLine",!0,{description:m("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),scrollPredominantAxis:Q(new Je(107,"scrollPredominantAxis",!0,{description:m("scrollPredominantAxis","Scroll only along the predominant axis when scrolling both vertically and horizontally at the same time. Prevents horizontal drift when scrolling vertically on a trackpad.")})),selectionClipboard:Q(new Je(108,"selectionClipboard",!0,{description:m("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:Un})),selectionHighlight:Q(new Je(109,"selectionHighlight",!0,{description:m("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:Q(new Je(110,"selectOnLineNumbers",!0)),showFoldingControls:Q(new Wt(111,"showFoldingControls","mouseover",["always","never","mouseover"],{enumDescriptions:[m("showFoldingControls.always","Always show the folding controls."),m("showFoldingControls.never","Never show the folding controls and reduce the gutter size."),m("showFoldingControls.mouseover","Only show the folding controls when the mouse is over the gutter.")],description:m("showFoldingControls","Controls when the folding controls on the gutter are shown.")})),showUnused:Q(new Je(112,"showUnused",!0,{description:m("showUnused","Controls fading out of unused code.")})),showDeprecated:Q(new Je(141,"showDeprecated",!0,{description:m("showDeprecated","Controls strikethrough deprecated variables.")})),inlayHints:Q(new z6),snippetSuggestions:Q(new Wt(113,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[m("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),m("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),m("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),m("snippetSuggestions.none","Do not show snippet suggestions.")],description:m("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smartSelect:Q(new lW),smoothScrolling:Q(new Je(115,"smoothScrolling",!1,{description:m("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:Q(new pt(118,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:Q(new aW),inlineSuggest:Q(new nW),inlineEdit:Q(new sW),inlineCompletionsAccessibilityVerbose:Q(new Je(150,"inlineCompletionsAccessibilityVerbose",!1,{description:m("inlineCompletionsAccessibilityVerbose","Controls whether the accessibility hint should be provided to screen reader users when an inline completion is shown.")})),suggestFontSize:Q(new pt(120,"suggestFontSize",0,0,1e3,{markdownDescription:m("suggestFontSize","Font size for the suggest widget. When set to {0}, the value of {1} is used.","`0`","`#editor.fontSize#`")})),suggestLineHeight:Q(new pt(121,"suggestLineHeight",0,0,1e3,{markdownDescription:m("suggestLineHeight","Line height for the suggest widget. When set to {0}, the value of {1} is used. The minimum value is 8.","`0`","`#editor.lineHeight#`")})),suggestOnTriggerCharacters:Q(new Je(122,"suggestOnTriggerCharacters",!0,{description:m("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:Q(new Wt(123,"suggestSelection","first",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[m("suggestSelection.first","Always select the first suggestion."),m("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),m("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:m("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:Q(new Wt(124,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[m("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),m("tabCompletion.off","Disable tab completions."),m("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:m("tabCompletion","Enables tab completions.")})),tabIndex:Q(new pt(125,"tabIndex",0,-1,1073741824)),unicodeHighlight:Q(new iW),unusualLineTerminators:Q(new Wt(127,"unusualLineTerminators","prompt",["auto","off","prompt"],{enumDescriptions:[m("unusualLineTerminators.auto","Unusual line terminators are automatically removed."),m("unusualLineTerminators.off","Unusual line terminators are ignored."),m("unusualLineTerminators.prompt","Unusual line terminators prompt to be removed.")],description:m("unusualLineTerminators","Remove unusual line terminators that might cause problems.")})),useShadowDOM:Q(new Je(128,"useShadowDOM",!0)),useTabStops:Q(new Je(129,"useTabStops",!0,{description:m("useTabStops","Spaces and tabs are inserted and deleted in alignment with tab stops.")})),wordBreak:Q(new Wt(130,"wordBreak","normal",["normal","keepAll"],{markdownEnumDescriptions:[m("wordBreak.normal","Use the default line break rule."),m("wordBreak.keepAll","Word breaks should not be used for Chinese/Japanese/Korean (CJK) text. Non-CJK text behavior is the same as for normal.")],description:m("wordBreak","Controls the word break rules used for Chinese/Japanese/Korean (CJK) text.")})),wordSegmenterLocales:Q(new cW),wordSeparators:Q(new dn(132,"wordSeparators",$5,{description:m("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:Q(new Wt(133,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[m("wordWrap.off","Lines will never wrap."),m("wordWrap.on","Lines will wrap at the viewport width."),m({key:"wordWrap.wordWrapColumn",comment:["- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at `#editor.wordWrapColumn#`."),m({key:"wordWrap.bounded",comment:["- viewport means the edge of the visible window size.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:m({key:"wordWrap",comment:["- 'off', 'on', 'wordWrapColumn' and 'bounded' refer to values the setting can take and should not be localized.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:Q(new dn(134,"wordWrapBreakAfterCharacters"," })]?|/&.,;¢°′″‰℃、。。、¢,.:;?!%・・ゝゞヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ァィゥェォャュョッー”〉》」』】〕)]}」")),wordWrapBreakBeforeCharacters:Q(new dn(135,"wordWrapBreakBeforeCharacters","([{‘“〈《「『【〔([{「£¥$£¥++")),wordWrapColumn:Q(new pt(136,"wordWrapColumn",80,1,1073741824,{markdownDescription:m({key:"wordWrapColumn",comment:["- `editor.wordWrap` refers to a different setting and should not be localized.","- 'wordWrapColumn' and 'bounded' refer to values the different setting can take and should not be localized."]},"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapOverride1:Q(new Wt(137,"wordWrapOverride1","inherit",["off","on","inherit"])),wordWrapOverride2:Q(new Wt(138,"wordWrapOverride2","inherit",["off","on","inherit"])),editorClassName:Q(new M6),defaultColorDecorators:Q(new Je(148,"defaultColorDecorators",!1,{markdownDescription:m("defaultColorDecorators","Controls whether inline color decorations should be shown using the default document color provider")})),pixelRatio:Q(new Z6),tabFocusMode:Q(new Je(145,"tabFocusMode",!1,{markdownDescription:m("tabFocusMode","Controls whether the editor receives tabs or defers them to the workbench for navigation.")})),layoutInfo:Q(new Ef),wrappingInfo:Q(new hW),wrappingIndent:Q(new dW),wrappingStrategy:Q(new W6)};class _W{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?ig.isErrorNoTelemetry(e)?new ig(e.message+` - -`+e.stack):new Error(e.message+` - -`+e.stack):e},0)}}emit(e){this.listeners.forEach(t=>{t(e)})}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}}const G5=new _W;function Ze(o){$c(o)||G5.onUnexpectedError(o)}function $n(o){$c(o)||G5.onUnexpectedExternalError(o)}function HM(o){if(o instanceof Error){const{name:e,message:t}=o,i=o.stacktrace||o.stack;return{$isError:!0,name:e,message:t,stack:i,noTelemetry:ig.isErrorNoTelemetry(o)}}return o}const aC="Canceled";function $c(o){return o instanceof ha?!0:o instanceof Error&&o.name===aC&&o.message===aC}class ha extends Error{constructor(){super(aC),this.name=this.message}}function bW(){const o=new Error(aC);return o.name=o.message,o}function na(o){return o?new Error(`Illegal argument: ${o}`):new Error("Illegal argument")}function TN(o){return o?new Error(`Illegal state: ${o}`):new Error("Illegal state")}class CW extends Error{constructor(e){super("NotSupported"),e&&(this.message=e)}}class ig extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof ig)return e;const t=new ig;return t.message=e.message,t.stack=e.stack,t}static isErrorNoTelemetry(e){return e.name==="CodeExpectedError"}}class nt extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,nt.prototype)}}function ng(o,e){const t=this;let i=!1,n;return function(){return i||(i=!0,n=o.apply(t,arguments)),n}}function MN(o){return typeof o=="object"&&o!==null&&typeof o.dispose=="function"&&o.dispose.length===0}function xt(o){if(st.is(o)){const e=[];for(const t of o)if(t)try{t.dispose()}catch(i){e.push(i)}if(e.length===1)throw e[0];if(e.length>1)throw new AggregateError(e,"Encountered errors while disposing of store");return Array.isArray(o)?[]:o}else if(o)return o.dispose(),o}function No(...o){return _e(()=>xt(o))}function _e(o){return{dispose:ng(()=>{o()})}}const bw=class bw{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{xt(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?bw.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e}deleteAndLeak(e){e&&this._toDispose.has(e)&&this._toDispose.delete(e)}};bw.DISABLE_DISPOSED_WARNING=!1;let X=bw;const kM=class kM{constructor(){this._store=new X,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}};kM.None=Object.freeze({dispose(){}});let z=kM;class Dn{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){this._isDisposed||e===this._value||(this._value?.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}}class vW{constructor(e){this.object=e}dispose(){}}class RN{constructor(){this._store=new Map,this._isDisposed=!1}dispose(){this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{xt(this._store.values())}finally{this._store.clear()}}get(e){return this._store.get(e)}set(e,t,i=!1){this._isDisposed&&console.warn(new Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),i||this._store.get(e)?.dispose(),this._store.set(e,t)}deleteAndDispose(e){this._store.get(e)?.dispose(),this._store.delete(e)}[Symbol.iterator](){return this._store[Symbol.iterator]()}}const wW=globalThis.performance&&typeof globalThis.performance.now=="function";class Hs{static create(e){return new Hs(e)}constructor(e){this._now=wW&&e===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}}var J;(function(o){o.None=()=>z.None;function e(j,B){return u(j,()=>{},0,void 0,!0,void 0,B)}o.defer=e;function t(j){return(B,G=null,ne)=>{let ae=!1,de;return de=j(se=>{if(!ae)return de?de.dispose():ae=!0,B.call(G,se)},null,ne),ae&&de.dispose(),de}}o.once=t;function i(j,B){return o.once(o.filter(j,B))}o.onceIf=i;function n(j,B,G){return d((ne,ae=null,de)=>j(se=>ne.call(ae,B(se)),null,de),G)}o.map=n;function s(j,B,G){return d((ne,ae=null,de)=>j(se=>{B(se),ne.call(ae,se)},null,de),G)}o.forEach=s;function r(j,B,G){return d((ne,ae=null,de)=>j(se=>B(se)&&ne.call(ae,se),null,de),G)}o.filter=r;function a(j){return j}o.signal=a;function l(...j){return(B,G=null,ne)=>{const ae=No(...j.map(de=>de(se=>B.call(G,se))));return h(ae,ne)}}o.any=l;function c(j,B,G,ne){let ae=G;return n(j,de=>(ae=B(ae,de),ae),ne)}o.reduce=c;function d(j,B){let G;const ne={onWillAddFirstListener(){G=j(ae.fire,ae)},onDidRemoveLastListener(){G?.dispose()}},ae=new A(ne);return B?.add(ae),ae.event}function h(j,B){return B instanceof Array?B.push(j):B&&B.add(j),j}function u(j,B,G=100,ne=!1,ae=!1,de,se){let be,we,Rt,ct=0,Bt;const ht={leakWarningThreshold:de,onWillAddFirstListener(){be=j(js=>{ct++,we=B(we,js),ne&&!Rt&&(ei.fire(we),we=void 0),Bt=()=>{const fi=we;we=void 0,Rt=void 0,(!ne||ct>1)&&ei.fire(fi),ct=0},typeof G=="number"?(clearTimeout(Rt),Rt=setTimeout(Bt,G)):Rt===void 0&&(Rt=0,queueMicrotask(Bt))})},onWillRemoveListener(){ae&&ct>0&&Bt?.()},onDidRemoveLastListener(){Bt=void 0,be.dispose()}},ei=new A(ht);return se?.add(ei),ei.event}o.debounce=u;function f(j,B=0,G){return o.debounce(j,(ne,ae)=>ne?(ne.push(ae),ne):[ae],B,void 0,!0,void 0,G)}o.accumulate=f;function g(j,B=(ne,ae)=>ne===ae,G){let ne=!0,ae;return r(j,de=>{const se=ne||!B(de,ae);return ne=!1,ae=de,se},G)}o.latch=g;function p(j,B,G){return[o.filter(j,B,G),o.filter(j,ne=>!B(ne),G)]}o.split=p;function _(j,B=!1,G=[],ne){let ae=G.slice(),de=j(we=>{ae?ae.push(we):be.fire(we)});ne&&ne.add(de);const se=()=>{ae?.forEach(we=>be.fire(we)),ae=null},be=new A({onWillAddFirstListener(){de||(de=j(we=>be.fire(we)),ne&&ne.add(de))},onDidAddFirstListener(){ae&&(B?setTimeout(se):se())},onDidRemoveLastListener(){de&&de.dispose(),de=null}});return ne&&ne.add(be),be.event}o.buffer=_;function b(j,B){return(ne,ae,de)=>{const se=B(new w);return j(function(be){const we=se.evaluate(be);we!==C&&ne.call(ae,we)},void 0,de)}}o.chain=b;const C=Symbol("HaltChainable");class w{constructor(){this.steps=[]}map(B){return this.steps.push(B),this}forEach(B){return this.steps.push(G=>(B(G),G)),this}filter(B){return this.steps.push(G=>B(G)?G:C),this}reduce(B,G){let ne=G;return this.steps.push(ae=>(ne=B(ne,ae),ne)),this}latch(B=(G,ne)=>G===ne){let G=!0,ne;return this.steps.push(ae=>{const de=G||!B(ae,ne);return G=!1,ne=ae,de?ae:C}),this}evaluate(B){for(const G of this.steps)if(B=G(B),B===C)break;return B}}function v(j,B,G=ne=>ne){const ne=(...be)=>se.fire(G(...be)),ae=()=>j.on(B,ne),de=()=>j.removeListener(B,ne),se=new A({onWillAddFirstListener:ae,onDidRemoveLastListener:de});return se.event}o.fromNodeEventEmitter=v;function y(j,B,G=ne=>ne){const ne=(...be)=>se.fire(G(...be)),ae=()=>j.addEventListener(B,ne),de=()=>j.removeEventListener(B,ne),se=new A({onWillAddFirstListener:ae,onDidRemoveLastListener:de});return se.event}o.fromDOMEventEmitter=y;function x(j){return new Promise(B=>t(j)(B))}o.toPromise=x;function L(j){const B=new A;return j.then(G=>{B.fire(G)},()=>{B.fire(void 0)}).finally(()=>{B.dispose()}),B.event}o.fromPromise=L;function E(j,B){return j(G=>B.fire(G))}o.forward=E;function N(j,B,G){return B(G),j(ne=>B(ne))}o.runAndSubscribe=N;class H{constructor(B,G){this._observable=B,this._counter=0,this._hasChanged=!1;const ne={onWillAddFirstListener:()=>{B.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{B.removeObserver(this)}};this.emitter=new A(ne),G&&G.add(this.emitter)}beginUpdate(B){this._counter++}handlePossibleChange(B){}handleChange(B,G){this._hasChanged=!0}endUpdate(B){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function F(j,B){return new H(j,B).emitter.event}o.fromObservable=F;function W(j){return(B,G,ne)=>{let ae=0,de=!1;const se={beginUpdate(){ae++},endUpdate(){ae--,ae===0&&(j.reportChanges(),de&&(de=!1,B.call(G)))},handlePossibleChange(){},handleChange(){de=!0}};j.addObserver(se),j.reportChanges();const be={dispose(){j.removeObserver(se)}};return ne instanceof X?ne.add(be):Array.isArray(ne)&&ne.push(be),be}}o.fromObservableLight=W})(J||(J={}));const _f=class _f{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${_f._idPool++}`,_f.all.add(this)}start(e){this._stopWatch=new Hs,this.listenerCount=e}stop(){if(this._stopWatch){const e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}};_f.all=new Set,_f._idPool=0;let EL=_f,yW=-1;const Cw=class Cw{constructor(e,t,i=(Cw._idPool++).toString(16).padStart(3,"0")){this._errorHandler=e,this.threshold=t,this.name=i,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(e,t){const i=this.threshold;if(i<=0||t{const s=this._stacks.get(e.value)||0;this._stacks.set(e.value,s-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,t=0;for(const[i,n]of this._stacks)(!e||t{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){const a=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(a);const l=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],c=new LW(`${a}. HINT: Stack shows most frequent listener (${l[1]}-times)`,l[0]);return(this._options?.onListenerError||Ze)(c),z.None}if(this._disposed)return z.None;t&&(e=e.bind(t));const n=new jy(e);let s;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(n.stack=AN.create(),s=this._leakageMon.check(n.stack,this._size+1)),this._listeners?this._listeners instanceof jy?(this._deliveryQueue??=new Z5,this._listeners=[this._listeners,n]):this._listeners.push(n):(this._options?.onWillAddFirstListener?.(this),this._listeners=n,this._options?.onDidAddFirstListener?.(this)),this._size++;const r=_e(()=>{s?.(),this._removeListener(n)});return i instanceof X?i.add(r):Array.isArray(i)&&i.push(r),r},this._event}_removeListener(e){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(this._size===1){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}const t=this._listeners,i=t.indexOf(e);if(i===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,t[i]=void 0;const n=this._deliveryQueue.current===this;if(this._size*xW<=t.length){let s=0;for(let r=0;r0}}const kW=()=>new Z5;class Z5{constructor(){this.i=-1,this.end=0}enqueue(e,t,i){this.i=0,this.end=i,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}}class Nh extends A{constructor(e){super(e),this._isPaused=0,this._eventQueue=new yn,this._mergeFn=e?.merge}pause(){this._isPaused++}resume(){if(this._isPaused!==0&&--this._isPaused===0)if(this._mergeFn){if(this._eventQueue.size>0){const e=Array.from(this._eventQueue);this._eventQueue.clear(),super.fire(this._mergeFn(e))}}else for(;!this._isPaused&&this._eventQueue.size!==0;)super.fire(this._eventQueue.shift())}fire(e){this._size&&(this._isPaused!==0?this._eventQueue.push(e):super.fire(e))}}class Y5 extends Nh{constructor(e){super(e),this._delay=e.delay??100}fire(e){this._handle||(this.pause(),this._handle=setTimeout(()=>{this._handle=void 0,this.resume()},this._delay)),super.fire(e)}}class DW extends A{constructor(e){super(e),this._queuedEvents=[],this._mergeFn=e?.merge}fire(e){this.hasListeners()&&(this._queuedEvents.push(e),this._queuedEvents.length===1&&queueMicrotask(()=>{this._mergeFn?super.fire(this._mergeFn(this._queuedEvents)):this._queuedEvents.forEach(t=>super.fire(t)),this._queuedEvents=[]}))}}class IW{constructor(){this.hasListeners=!1,this.events=[],this.emitter=new A({onWillAddFirstListener:()=>this.onFirstListenerAdd(),onDidRemoveLastListener:()=>this.onLastListenerRemove()})}get event(){return this.emitter.event}add(e){const t={event:e,listener:null};return this.events.push(t),this.hasListeners&&this.hook(t),_e(ng(()=>{this.hasListeners&&this.unhook(t);const n=this.events.indexOf(t);this.events.splice(n,1)}))}onFirstListenerAdd(){this.hasListeners=!0,this.events.forEach(e=>this.hook(e))}onLastListenerRemove(){this.hasListeners=!1,this.events.forEach(e=>this.unhook(e))}hook(e){e.listener=e.event(t=>this.emitter.fire(t))}unhook(e){e.listener?.dispose(),e.listener=null}dispose(){this.emitter.dispose();for(const e of this.events)e.listener?.dispose();this.events=[]}}class W_{constructor(){this.data=[]}wrapEvent(e,t,i){return(n,s,r)=>e(a=>{const l=this.data[this.data.length-1];if(!t){l?l.buffers.push(()=>n.call(s,a)):n.call(s,a);return}const c=l;if(!c){n.call(s,t(i,a));return}c.items??=[],c.items.push(a),c.buffers.length===0&&l.buffers.push(()=>{c.reducedResult??=i?c.items.reduce(t,i):c.items.reduce(t),n.call(s,c.reducedResult)})},void 0,r)}bufferEvents(e){const t={buffers:new Array};this.data.push(t);const i=e();return this.data.pop(),t.buffers.forEach(n=>n()),i}}class VM{constructor(){this.listening=!1,this.inputEvent=J.None,this.inputEventListener=z.None,this.emitter=new A({onDidAddFirstListener:()=>{this.listening=!0,this.inputEventListener=this.inputEvent(this.emitter.fire,this.emitter)},onDidRemoveLastListener:()=>{this.listening=!1,this.inputEventListener.dispose()}}),this.event=this.emitter.event}set input(e){this.inputEvent=e,this.listening&&(this.inputEventListener.dispose(),this.inputEventListener=e(this.emitter.fire,this.emitter))}dispose(){this.inputEventListener.dispose(),this.emitter.dispose()}}const Q5=Object.freeze(function(o,e){const t=setTimeout(o.bind(e),0);return{dispose(){clearTimeout(t)}}});var ut;(function(o){function e(t){return t===o.None||t===o.Cancelled||t instanceof w1?!0:!t||typeof t!="object"?!1:typeof t.isCancellationRequested=="boolean"&&typeof t.onCancellationRequested=="function"}o.isCancellationToken=e,o.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:J.None}),o.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Q5})})(ut||(ut={}));class w1{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?Q5:(this._emitter||(this._emitter=new A),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class In{constructor(e){this._token=void 0,this._parentListener=void 0,this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new w1),this._token}cancel(){this._token?this._token instanceof w1&&this._token.cancel():this._token=ut.Cancelled}dispose(e=!1){e&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof w1&&this._token.dispose():this._token=ut.None}}function zM(o){const e=new In;return o.add({dispose(){e.cancel()}}),e.token}class PN{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}}const y1=new PN,TL=new PN,ML=new PN,X5=new Array(230),EW=Object.create(null),NW=Object.create(null),ON=[];for(let o=0;o<=193;o++)ON[o]=-1;(function(){const e=[[1,0,"None",0,"unknown",0,"VK_UNKNOWN","",""],[1,1,"Hyper",0,"",0,"","",""],[1,2,"Super",0,"",0,"","",""],[1,3,"Fn",0,"",0,"","",""],[1,4,"FnLock",0,"",0,"","",""],[1,5,"Suspend",0,"",0,"","",""],[1,6,"Resume",0,"",0,"","",""],[1,7,"Turbo",0,"",0,"","",""],[1,8,"Sleep",0,"",0,"VK_SLEEP","",""],[1,9,"WakeUp",0,"",0,"","",""],[0,10,"KeyA",31,"A",65,"VK_A","",""],[0,11,"KeyB",32,"B",66,"VK_B","",""],[0,12,"KeyC",33,"C",67,"VK_C","",""],[0,13,"KeyD",34,"D",68,"VK_D","",""],[0,14,"KeyE",35,"E",69,"VK_E","",""],[0,15,"KeyF",36,"F",70,"VK_F","",""],[0,16,"KeyG",37,"G",71,"VK_G","",""],[0,17,"KeyH",38,"H",72,"VK_H","",""],[0,18,"KeyI",39,"I",73,"VK_I","",""],[0,19,"KeyJ",40,"J",74,"VK_J","",""],[0,20,"KeyK",41,"K",75,"VK_K","",""],[0,21,"KeyL",42,"L",76,"VK_L","",""],[0,22,"KeyM",43,"M",77,"VK_M","",""],[0,23,"KeyN",44,"N",78,"VK_N","",""],[0,24,"KeyO",45,"O",79,"VK_O","",""],[0,25,"KeyP",46,"P",80,"VK_P","",""],[0,26,"KeyQ",47,"Q",81,"VK_Q","",""],[0,27,"KeyR",48,"R",82,"VK_R","",""],[0,28,"KeyS",49,"S",83,"VK_S","",""],[0,29,"KeyT",50,"T",84,"VK_T","",""],[0,30,"KeyU",51,"U",85,"VK_U","",""],[0,31,"KeyV",52,"V",86,"VK_V","",""],[0,32,"KeyW",53,"W",87,"VK_W","",""],[0,33,"KeyX",54,"X",88,"VK_X","",""],[0,34,"KeyY",55,"Y",89,"VK_Y","",""],[0,35,"KeyZ",56,"Z",90,"VK_Z","",""],[0,36,"Digit1",22,"1",49,"VK_1","",""],[0,37,"Digit2",23,"2",50,"VK_2","",""],[0,38,"Digit3",24,"3",51,"VK_3","",""],[0,39,"Digit4",25,"4",52,"VK_4","",""],[0,40,"Digit5",26,"5",53,"VK_5","",""],[0,41,"Digit6",27,"6",54,"VK_6","",""],[0,42,"Digit7",28,"7",55,"VK_7","",""],[0,43,"Digit8",29,"8",56,"VK_8","",""],[0,44,"Digit9",30,"9",57,"VK_9","",""],[0,45,"Digit0",21,"0",48,"VK_0","",""],[1,46,"Enter",3,"Enter",13,"VK_RETURN","",""],[1,47,"Escape",9,"Escape",27,"VK_ESCAPE","",""],[1,48,"Backspace",1,"Backspace",8,"VK_BACK","",""],[1,49,"Tab",2,"Tab",9,"VK_TAB","",""],[1,50,"Space",10,"Space",32,"VK_SPACE","",""],[0,51,"Minus",88,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[0,52,"Equal",86,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[0,53,"BracketLeft",92,"[",219,"VK_OEM_4","[","OEM_4"],[0,54,"BracketRight",94,"]",221,"VK_OEM_6","]","OEM_6"],[0,55,"Backslash",93,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,56,"IntlHash",0,"",0,"","",""],[0,57,"Semicolon",85,";",186,"VK_OEM_1",";","OEM_1"],[0,58,"Quote",95,"'",222,"VK_OEM_7","'","OEM_7"],[0,59,"Backquote",91,"`",192,"VK_OEM_3","`","OEM_3"],[0,60,"Comma",87,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[0,61,"Period",89,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[0,62,"Slash",90,"/",191,"VK_OEM_2","/","OEM_2"],[1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL","",""],[1,64,"F1",59,"F1",112,"VK_F1","",""],[1,65,"F2",60,"F2",113,"VK_F2","",""],[1,66,"F3",61,"F3",114,"VK_F3","",""],[1,67,"F4",62,"F4",115,"VK_F4","",""],[1,68,"F5",63,"F5",116,"VK_F5","",""],[1,69,"F6",64,"F6",117,"VK_F6","",""],[1,70,"F7",65,"F7",118,"VK_F7","",""],[1,71,"F8",66,"F8",119,"VK_F8","",""],[1,72,"F9",67,"F9",120,"VK_F9","",""],[1,73,"F10",68,"F10",121,"VK_F10","",""],[1,74,"F11",69,"F11",122,"VK_F11","",""],[1,75,"F12",70,"F12",123,"VK_F12","",""],[1,76,"PrintScreen",0,"",0,"","",""],[1,77,"ScrollLock",84,"ScrollLock",145,"VK_SCROLL","",""],[1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE","",""],[1,79,"Insert",19,"Insert",45,"VK_INSERT","",""],[1,80,"Home",14,"Home",36,"VK_HOME","",""],[1,81,"PageUp",11,"PageUp",33,"VK_PRIOR","",""],[1,82,"Delete",20,"Delete",46,"VK_DELETE","",""],[1,83,"End",13,"End",35,"VK_END","",""],[1,84,"PageDown",12,"PageDown",34,"VK_NEXT","",""],[1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",""],[1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",""],[1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",""],[1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",""],[1,89,"NumLock",83,"NumLock",144,"VK_NUMLOCK","",""],[1,90,"NumpadDivide",113,"NumPad_Divide",111,"VK_DIVIDE","",""],[1,91,"NumpadMultiply",108,"NumPad_Multiply",106,"VK_MULTIPLY","",""],[1,92,"NumpadSubtract",111,"NumPad_Subtract",109,"VK_SUBTRACT","",""],[1,93,"NumpadAdd",109,"NumPad_Add",107,"VK_ADD","",""],[1,94,"NumpadEnter",3,"",0,"","",""],[1,95,"Numpad1",99,"NumPad1",97,"VK_NUMPAD1","",""],[1,96,"Numpad2",100,"NumPad2",98,"VK_NUMPAD2","",""],[1,97,"Numpad3",101,"NumPad3",99,"VK_NUMPAD3","",""],[1,98,"Numpad4",102,"NumPad4",100,"VK_NUMPAD4","",""],[1,99,"Numpad5",103,"NumPad5",101,"VK_NUMPAD5","",""],[1,100,"Numpad6",104,"NumPad6",102,"VK_NUMPAD6","",""],[1,101,"Numpad7",105,"NumPad7",103,"VK_NUMPAD7","",""],[1,102,"Numpad8",106,"NumPad8",104,"VK_NUMPAD8","",""],[1,103,"Numpad9",107,"NumPad9",105,"VK_NUMPAD9","",""],[1,104,"Numpad0",98,"NumPad0",96,"VK_NUMPAD0","",""],[1,105,"NumpadDecimal",112,"NumPad_Decimal",110,"VK_DECIMAL","",""],[0,106,"IntlBackslash",97,"OEM_102",226,"VK_OEM_102","",""],[1,107,"ContextMenu",58,"ContextMenu",93,"","",""],[1,108,"Power",0,"",0,"","",""],[1,109,"NumpadEqual",0,"",0,"","",""],[1,110,"F13",71,"F13",124,"VK_F13","",""],[1,111,"F14",72,"F14",125,"VK_F14","",""],[1,112,"F15",73,"F15",126,"VK_F15","",""],[1,113,"F16",74,"F16",127,"VK_F16","",""],[1,114,"F17",75,"F17",128,"VK_F17","",""],[1,115,"F18",76,"F18",129,"VK_F18","",""],[1,116,"F19",77,"F19",130,"VK_F19","",""],[1,117,"F20",78,"F20",131,"VK_F20","",""],[1,118,"F21",79,"F21",132,"VK_F21","",""],[1,119,"F22",80,"F22",133,"VK_F22","",""],[1,120,"F23",81,"F23",134,"VK_F23","",""],[1,121,"F24",82,"F24",135,"VK_F24","",""],[1,122,"Open",0,"",0,"","",""],[1,123,"Help",0,"",0,"","",""],[1,124,"Select",0,"",0,"","",""],[1,125,"Again",0,"",0,"","",""],[1,126,"Undo",0,"",0,"","",""],[1,127,"Cut",0,"",0,"","",""],[1,128,"Copy",0,"",0,"","",""],[1,129,"Paste",0,"",0,"","",""],[1,130,"Find",0,"",0,"","",""],[1,131,"AudioVolumeMute",117,"AudioVolumeMute",173,"VK_VOLUME_MUTE","",""],[1,132,"AudioVolumeUp",118,"AudioVolumeUp",175,"VK_VOLUME_UP","",""],[1,133,"AudioVolumeDown",119,"AudioVolumeDown",174,"VK_VOLUME_DOWN","",""],[1,134,"NumpadComma",110,"NumPad_Separator",108,"VK_SEPARATOR","",""],[0,135,"IntlRo",115,"ABNT_C1",193,"VK_ABNT_C1","",""],[1,136,"KanaMode",0,"",0,"","",""],[0,137,"IntlYen",0,"",0,"","",""],[1,138,"Convert",0,"",0,"","",""],[1,139,"NonConvert",0,"",0,"","",""],[1,140,"Lang1",0,"",0,"","",""],[1,141,"Lang2",0,"",0,"","",""],[1,142,"Lang3",0,"",0,"","",""],[1,143,"Lang4",0,"",0,"","",""],[1,144,"Lang5",0,"",0,"","",""],[1,145,"Abort",0,"",0,"","",""],[1,146,"Props",0,"",0,"","",""],[1,147,"NumpadParenLeft",0,"",0,"","",""],[1,148,"NumpadParenRight",0,"",0,"","",""],[1,149,"NumpadBackspace",0,"",0,"","",""],[1,150,"NumpadMemoryStore",0,"",0,"","",""],[1,151,"NumpadMemoryRecall",0,"",0,"","",""],[1,152,"NumpadMemoryClear",0,"",0,"","",""],[1,153,"NumpadMemoryAdd",0,"",0,"","",""],[1,154,"NumpadMemorySubtract",0,"",0,"","",""],[1,155,"NumpadClear",131,"Clear",12,"VK_CLEAR","",""],[1,156,"NumpadClearEntry",0,"",0,"","",""],[1,0,"",5,"Ctrl",17,"VK_CONTROL","",""],[1,0,"",4,"Shift",16,"VK_SHIFT","",""],[1,0,"",6,"Alt",18,"VK_MENU","",""],[1,0,"",57,"Meta",91,"VK_COMMAND","",""],[1,157,"ControlLeft",5,"",0,"VK_LCONTROL","",""],[1,158,"ShiftLeft",4,"",0,"VK_LSHIFT","",""],[1,159,"AltLeft",6,"",0,"VK_LMENU","",""],[1,160,"MetaLeft",57,"",0,"VK_LWIN","",""],[1,161,"ControlRight",5,"",0,"VK_RCONTROL","",""],[1,162,"ShiftRight",4,"",0,"VK_RSHIFT","",""],[1,163,"AltRight",6,"",0,"VK_RMENU","",""],[1,164,"MetaRight",57,"",0,"VK_RWIN","",""],[1,165,"BrightnessUp",0,"",0,"","",""],[1,166,"BrightnessDown",0,"",0,"","",""],[1,167,"MediaPlay",0,"",0,"","",""],[1,168,"MediaRecord",0,"",0,"","",""],[1,169,"MediaFastForward",0,"",0,"","",""],[1,170,"MediaRewind",0,"",0,"","",""],[1,171,"MediaTrackNext",124,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK","",""],[1,172,"MediaTrackPrevious",125,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK","",""],[1,173,"MediaStop",126,"MediaStop",178,"VK_MEDIA_STOP","",""],[1,174,"Eject",0,"",0,"","",""],[1,175,"MediaPlayPause",127,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE","",""],[1,176,"MediaSelect",128,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT","",""],[1,177,"LaunchMail",129,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL","",""],[1,178,"LaunchApp2",130,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2","",""],[1,179,"LaunchApp1",0,"",0,"VK_MEDIA_LAUNCH_APP1","",""],[1,180,"SelectTask",0,"",0,"","",""],[1,181,"LaunchScreenSaver",0,"",0,"","",""],[1,182,"BrowserSearch",120,"BrowserSearch",170,"VK_BROWSER_SEARCH","",""],[1,183,"BrowserHome",121,"BrowserHome",172,"VK_BROWSER_HOME","",""],[1,184,"BrowserBack",122,"BrowserBack",166,"VK_BROWSER_BACK","",""],[1,185,"BrowserForward",123,"BrowserForward",167,"VK_BROWSER_FORWARD","",""],[1,186,"BrowserStop",0,"",0,"VK_BROWSER_STOP","",""],[1,187,"BrowserRefresh",0,"",0,"VK_BROWSER_REFRESH","",""],[1,188,"BrowserFavorites",0,"",0,"VK_BROWSER_FAVORITES","",""],[1,189,"ZoomToggle",0,"",0,"","",""],[1,190,"MailReply",0,"",0,"","",""],[1,191,"MailForward",0,"",0,"","",""],[1,192,"MailSend",0,"",0,"","",""],[1,0,"",114,"KeyInComposition",229,"","",""],[1,0,"",116,"ABNT_C2",194,"VK_ABNT_C2","",""],[1,0,"",96,"OEM_8",223,"VK_OEM_8","",""],[1,0,"",0,"",0,"VK_KANA","",""],[1,0,"",0,"",0,"VK_HANGUL","",""],[1,0,"",0,"",0,"VK_JUNJA","",""],[1,0,"",0,"",0,"VK_FINAL","",""],[1,0,"",0,"",0,"VK_HANJA","",""],[1,0,"",0,"",0,"VK_KANJI","",""],[1,0,"",0,"",0,"VK_CONVERT","",""],[1,0,"",0,"",0,"VK_NONCONVERT","",""],[1,0,"",0,"",0,"VK_ACCEPT","",""],[1,0,"",0,"",0,"VK_MODECHANGE","",""],[1,0,"",0,"",0,"VK_SELECT","",""],[1,0,"",0,"",0,"VK_PRINT","",""],[1,0,"",0,"",0,"VK_EXECUTE","",""],[1,0,"",0,"",0,"VK_SNAPSHOT","",""],[1,0,"",0,"",0,"VK_HELP","",""],[1,0,"",0,"",0,"VK_APPS","",""],[1,0,"",0,"",0,"VK_PROCESSKEY","",""],[1,0,"",0,"",0,"VK_PACKET","",""],[1,0,"",0,"",0,"VK_DBE_SBCSCHAR","",""],[1,0,"",0,"",0,"VK_DBE_DBCSCHAR","",""],[1,0,"",0,"",0,"VK_ATTN","",""],[1,0,"",0,"",0,"VK_CRSEL","",""],[1,0,"",0,"",0,"VK_EXSEL","",""],[1,0,"",0,"",0,"VK_EREOF","",""],[1,0,"",0,"",0,"VK_PLAY","",""],[1,0,"",0,"",0,"VK_ZOOM","",""],[1,0,"",0,"",0,"VK_NONAME","",""],[1,0,"",0,"",0,"VK_PA1","",""],[1,0,"",0,"",0,"VK_OEM_CLEAR","",""]],t=[],i=[];for(const n of e){const[s,r,a,l,c,d,h,u,f]=n;if(i[r]||(i[r]=!0,EW[a]=r,NW[a.toLowerCase()]=r,s&&(ON[r]=l)),!t[l]){if(t[l]=!0,!c)throw new Error(`String representation missing for key code ${l} around scan code ${a}`);y1.define(l,c),TL.define(l,u||c),ML.define(l,f||u||c)}d&&(X5[d]=l)}})();var el;(function(o){function e(a){return y1.keyCodeToStr(a)}o.toString=e;function t(a){return y1.strToKeyCode(a)}o.fromString=t;function i(a){return TL.keyCodeToStr(a)}o.toUserSettingsUS=i;function n(a){return ML.keyCodeToStr(a)}o.toUserSettingsGeneral=n;function s(a){return TL.strToKeyCode(a)||ML.strToKeyCode(a)}o.fromUserSettings=s;function r(a){if(a>=98&&a<=113)return null;switch(a){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return y1.keyCodeToStr(a)}o.toElectronAccelerator=r})(el||(el={}));function Vp(o,e){const t=(e&65535)<<16>>>0;return(o|t)>>>0}var UM={};let Tf;const qy=globalThis.vscode;if(typeof qy<"u"&&typeof qy.process<"u"){const o=qy.process;Tf={get platform(){return o.platform},get arch(){return o.arch},get env(){return o.env},cwd(){return o.cwd()}}}else typeof process<"u"&&typeof process?.versions?.node=="string"?Tf={get platform(){return process.platform},get arch(){return process.arch},get env(){return UM},cwd(){return UM.VSCODE_CWD||process.cwd()}}:Tf={get platform(){return kn?"win32":Ue?"darwin":"linux"},get arch(){},get env(){return{}},cwd(){return"/"}};const lC=Tf.cwd,RL=Tf.env,TW=Tf.platform,MW=65,RW=97,AW=90,PW=122,hc=46,on=47,vs=92,Wl=58,OW=63;class J5 extends Error{constructor(e,t,i){let n;typeof t=="string"&&t.indexOf("not ")===0?(n="must not be",t=t.replace(/^not /,"")):n="must be";const s=e.indexOf(".")!==-1?"property":"argument";let r=`The "${e}" ${s} ${n} of type ${t}`;r+=`. Received type ${typeof i}`,super(r),this.code="ERR_INVALID_ARG_TYPE"}}function FW(o,e){if(o===null||typeof o!="object")throw new J5(e,"Object",o)}function ki(o,e){if(typeof o!="string")throw new J5(e,"string",o)}const Tl=TW==="win32";function at(o){return o===on||o===vs}function AL(o){return o===on}function Hl(o){return o>=MW&&o<=AW||o>=RW&&o<=PW}function cC(o,e,t,i){let n="",s=0,r=-1,a=0,l=0;for(let c=0;c<=o.length;++c){if(c2){const d=n.lastIndexOf(t);d===-1?(n="",s=0):(n=n.slice(0,d),s=n.length-1-n.lastIndexOf(t)),r=c,a=0;continue}else if(n.length!==0){n="",s=0,r=c,a=0;continue}}e&&(n+=n.length>0?`${t}..`:"..",s=2)}else n.length>0?n+=`${t}${o.slice(r+1,c)}`:n=o.slice(r+1,c),s=c-r-1;r=c,a=0}else l===hc&&a!==-1?++a:a=-1}return n}function BW(o){return o?`${o[0]==="."?"":"."}${o}`:""}function eF(o,e){FW(e,"pathObject");const t=e.dir||e.root,i=e.base||`${e.name||""}${BW(e.ext)}`;return t?t===e.root?`${t}${i}`:`${t}${o}${i}`:i}const Vn={resolve(...o){let e="",t="",i=!1;for(let n=o.length-1;n>=-1;n--){let s;if(n>=0){if(s=o[n],ki(s,`paths[${n}]`),s.length===0)continue}else e.length===0?s=lC():(s=RL[`=${e}`]||lC(),(s===void 0||s.slice(0,2).toLowerCase()!==e.toLowerCase()&&s.charCodeAt(2)===vs)&&(s=`${e}\\`));const r=s.length;let a=0,l="",c=!1;const d=s.charCodeAt(0);if(r===1)at(d)&&(a=1,c=!0);else if(at(d))if(c=!0,at(s.charCodeAt(1))){let h=2,u=h;for(;h2&&at(s.charCodeAt(2))&&(c=!0,a=3));if(l.length>0)if(e.length>0){if(l.toLowerCase()!==e.toLowerCase())continue}else e=l;if(i){if(e.length>0)break}else if(t=`${s.slice(a)}\\${t}`,i=c,c&&e.length>0)break}return t=cC(t,!i,"\\",at),i?`${e}\\${t}`:`${e}${t}`||"."},normalize(o){ki(o,"path");const e=o.length;if(e===0)return".";let t=0,i,n=!1;const s=o.charCodeAt(0);if(e===1)return AL(s)?"\\":o;if(at(s))if(n=!0,at(o.charCodeAt(1))){let a=2,l=a;for(;a2&&at(o.charCodeAt(2))&&(n=!0,t=3));let r=t0&&at(o.charCodeAt(e-1))&&(r+="\\"),i===void 0?n?`\\${r}`:r:n?`${i}\\${r}`:`${i}${r}`},isAbsolute(o){ki(o,"path");const e=o.length;if(e===0)return!1;const t=o.charCodeAt(0);return at(t)||e>2&&Hl(t)&&o.charCodeAt(1)===Wl&&at(o.charCodeAt(2))},join(...o){if(o.length===0)return".";let e,t;for(let s=0;s0&&(e===void 0?e=t=r:e+=`\\${r}`)}if(e===void 0)return".";let i=!0,n=0;if(typeof t=="string"&&at(t.charCodeAt(0))){++n;const s=t.length;s>1&&at(t.charCodeAt(1))&&(++n,s>2&&(at(t.charCodeAt(2))?++n:i=!1))}if(i){for(;n=2&&(e=`\\${e.slice(n)}`)}return Vn.normalize(e)},relative(o,e){if(ki(o,"from"),ki(e,"to"),o===e)return"";const t=Vn.resolve(o),i=Vn.resolve(e);if(t===i||(o=t.toLowerCase(),e=i.toLowerCase(),o===e))return"";let n=0;for(;nn&&o.charCodeAt(s-1)===vs;)s--;const r=s-n;let a=0;for(;aa&&e.charCodeAt(l-1)===vs;)l--;const c=l-a,d=rd){if(e.charCodeAt(a+u)===vs)return i.slice(a+u+1);if(u===2)return i.slice(a+u)}r>d&&(o.charCodeAt(n+u)===vs?h=u:u===2&&(h=3)),h===-1&&(h=0)}let f="";for(u=n+h+1;u<=s;++u)(u===s||o.charCodeAt(u)===vs)&&(f+=f.length===0?"..":"\\..");return a+=h,f.length>0?`${f}${i.slice(a,l)}`:(i.charCodeAt(a)===vs&&++a,i.slice(a,l))},toNamespacedPath(o){if(typeof o!="string"||o.length===0)return o;const e=Vn.resolve(o);if(e.length<=2)return o;if(e.charCodeAt(0)===vs){if(e.charCodeAt(1)===vs){const t=e.charCodeAt(2);if(t!==OW&&t!==hc)return`\\\\?\\UNC\\${e.slice(2)}`}}else if(Hl(e.charCodeAt(0))&&e.charCodeAt(1)===Wl&&e.charCodeAt(2)===vs)return`\\\\?\\${e}`;return o},dirname(o){ki(o,"path");const e=o.length;if(e===0)return".";let t=-1,i=0;const n=o.charCodeAt(0);if(e===1)return at(n)?o:".";if(at(n)){if(t=i=1,at(o.charCodeAt(1))){let a=2,l=a;for(;a2&&at(o.charCodeAt(2))?3:2,i=t);let s=-1,r=!0;for(let a=e-1;a>=i;--a)if(at(o.charCodeAt(a))){if(!r){s=a;break}}else r=!1;if(s===-1){if(t===-1)return".";s=t}return o.slice(0,s)},basename(o,e){e!==void 0&&ki(e,"suffix"),ki(o,"path");let t=0,i=-1,n=!0,s;if(o.length>=2&&Hl(o.charCodeAt(0))&&o.charCodeAt(1)===Wl&&(t=2),e!==void 0&&e.length>0&&e.length<=o.length){if(e===o)return"";let r=e.length-1,a=-1;for(s=o.length-1;s>=t;--s){const l=o.charCodeAt(s);if(at(l)){if(!n){t=s+1;break}}else a===-1&&(n=!1,a=s+1),r>=0&&(l===e.charCodeAt(r)?--r===-1&&(i=s):(r=-1,i=a))}return t===i?i=a:i===-1&&(i=o.length),o.slice(t,i)}for(s=o.length-1;s>=t;--s)if(at(o.charCodeAt(s))){if(!n){t=s+1;break}}else i===-1&&(n=!1,i=s+1);return i===-1?"":o.slice(t,i)},extname(o){ki(o,"path");let e=0,t=-1,i=0,n=-1,s=!0,r=0;o.length>=2&&o.charCodeAt(1)===Wl&&Hl(o.charCodeAt(0))&&(e=i=2);for(let a=o.length-1;a>=e;--a){const l=o.charCodeAt(a);if(at(l)){if(!s){i=a+1;break}continue}n===-1&&(s=!1,n=a+1),l===hc?t===-1?t=a:r!==1&&(r=1):t!==-1&&(r=-1)}return t===-1||n===-1||r===0||r===1&&t===n-1&&t===i+1?"":o.slice(t,n)},format:eF.bind(null,"\\"),parse(o){ki(o,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(o.length===0)return e;const t=o.length;let i=0,n=o.charCodeAt(0);if(t===1)return at(n)?(e.root=e.dir=o,e):(e.base=e.name=o,e);if(at(n)){if(i=1,at(o.charCodeAt(1))){let h=2,u=h;for(;h0&&(e.root=o.slice(0,i));let s=-1,r=i,a=-1,l=!0,c=o.length-1,d=0;for(;c>=i;--c){if(n=o.charCodeAt(c),at(n)){if(!l){r=c+1;break}continue}a===-1&&(l=!1,a=c+1),n===hc?s===-1?s=c:d!==1&&(d=1):s!==-1&&(d=-1)}return a!==-1&&(s===-1||d===0||d===1&&s===a-1&&s===r+1?e.base=e.name=o.slice(r,a):(e.name=o.slice(r,s),e.base=o.slice(r,a),e.ext=o.slice(s,a))),r>0&&r!==i?e.dir=o.slice(0,r-1):e.dir=e.root,e},sep:"\\",delimiter:";",win32:null,posix:null},WW=(()=>{if(Tl){const o=/\\/g;return()=>{const e=lC().replace(o,"/");return e.slice(e.indexOf("/"))}}return()=>lC()})(),oi={resolve(...o){let e="",t=!1;for(let i=o.length-1;i>=-1&&!t;i--){const n=i>=0?o[i]:WW();ki(n,`paths[${i}]`),n.length!==0&&(e=`${n}/${e}`,t=n.charCodeAt(0)===on)}return e=cC(e,!t,"/",AL),t?`/${e}`:e.length>0?e:"."},normalize(o){if(ki(o,"path"),o.length===0)return".";const e=o.charCodeAt(0)===on,t=o.charCodeAt(o.length-1)===on;return o=cC(o,!e,"/",AL),o.length===0?e?"/":t?"./":".":(t&&(o+="/"),e?`/${o}`:o)},isAbsolute(o){return ki(o,"path"),o.length>0&&o.charCodeAt(0)===on},join(...o){if(o.length===0)return".";let e;for(let t=0;t0&&(e===void 0?e=i:e+=`/${i}`)}return e===void 0?".":oi.normalize(e)},relative(o,e){if(ki(o,"from"),ki(e,"to"),o===e||(o=oi.resolve(o),e=oi.resolve(e),o===e))return"";const t=1,i=o.length,n=i-t,s=1,r=e.length-s,a=na){if(e.charCodeAt(s+c)===on)return e.slice(s+c+1);if(c===0)return e.slice(s+c)}else n>a&&(o.charCodeAt(t+c)===on?l=c:c===0&&(l=0));let d="";for(c=t+l+1;c<=i;++c)(c===i||o.charCodeAt(c)===on)&&(d+=d.length===0?"..":"/..");return`${d}${e.slice(s+l)}`},toNamespacedPath(o){return o},dirname(o){if(ki(o,"path"),o.length===0)return".";const e=o.charCodeAt(0)===on;let t=-1,i=!0;for(let n=o.length-1;n>=1;--n)if(o.charCodeAt(n)===on){if(!i){t=n;break}}else i=!1;return t===-1?e?"/":".":e&&t===1?"//":o.slice(0,t)},basename(o,e){e!==void 0&&ki(e,"ext"),ki(o,"path");let t=0,i=-1,n=!0,s;if(e!==void 0&&e.length>0&&e.length<=o.length){if(e===o)return"";let r=e.length-1,a=-1;for(s=o.length-1;s>=0;--s){const l=o.charCodeAt(s);if(l===on){if(!n){t=s+1;break}}else a===-1&&(n=!1,a=s+1),r>=0&&(l===e.charCodeAt(r)?--r===-1&&(i=s):(r=-1,i=a))}return t===i?i=a:i===-1&&(i=o.length),o.slice(t,i)}for(s=o.length-1;s>=0;--s)if(o.charCodeAt(s)===on){if(!n){t=s+1;break}}else i===-1&&(n=!1,i=s+1);return i===-1?"":o.slice(t,i)},extname(o){ki(o,"path");let e=-1,t=0,i=-1,n=!0,s=0;for(let r=o.length-1;r>=0;--r){const a=o.charCodeAt(r);if(a===on){if(!n){t=r+1;break}continue}i===-1&&(n=!1,i=r+1),a===hc?e===-1?e=r:s!==1&&(s=1):e!==-1&&(s=-1)}return e===-1||i===-1||s===0||s===1&&e===i-1&&e===t+1?"":o.slice(e,i)},format:eF.bind(null,"/"),parse(o){ki(o,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(o.length===0)return e;const t=o.charCodeAt(0)===on;let i;t?(e.root="/",i=1):i=0;let n=-1,s=0,r=-1,a=!0,l=o.length-1,c=0;for(;l>=i;--l){const d=o.charCodeAt(l);if(d===on){if(!a){s=l+1;break}continue}r===-1&&(a=!1,r=l+1),d===hc?n===-1?n=l:c!==1&&(c=1):n!==-1&&(c=-1)}if(r!==-1){const d=s===0&&t?1:s;n===-1||c===0||c===1&&n===r-1&&n===s+1?e.base=e.name=o.slice(d,r):(e.name=o.slice(d,n),e.base=o.slice(d,r),e.ext=o.slice(n,r))}return s>0?e.dir=o.slice(0,s-1):t&&(e.dir="/"),e},sep:"/",delimiter:":",win32:null,posix:null};oi.win32=Vn.win32=Vn;oi.posix=Vn.posix=oi;const tF=Tl?Vn.normalize:oi.normalize,HW=Tl?Vn.join:oi.join,VW=Tl?Vn.resolve:oi.resolve,zW=Tl?Vn.relative:oi.relative,iF=Tl?Vn.dirname:oi.dirname,uc=Tl?Vn.basename:oi.basename,UW=Tl?Vn.extname:oi.extname,fc=Tl?Vn.sep:oi.sep,$W=/^\w[\w\d+.-]*$/,KW=/^\//,jW=/^\/\//;function qW(o,e){if(!o.scheme&&e)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${o.authority}", path: "${o.path}", query: "${o.query}", fragment: "${o.fragment}"}`);if(o.scheme&&!$W.test(o.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(o.path){if(o.authority){if(!KW.test(o.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(jW.test(o.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}function GW(o,e){return!o&&!e?"file":o}function ZW(o,e){switch(o){case"https":case"http":case"file":e?e[0]!==nr&&(e=nr+e):e=nr;break}return e}const ti="",nr="/",YW=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class ve{static isUri(e){return e instanceof ve?!0:e?typeof e.authority=="string"&&typeof e.fragment=="string"&&typeof e.path=="string"&&typeof e.query=="string"&&typeof e.scheme=="string"&&typeof e.fsPath=="string"&&typeof e.with=="function"&&typeof e.toString=="function":!1}constructor(e,t,i,n,s,r=!1){typeof e=="object"?(this.scheme=e.scheme||ti,this.authority=e.authority||ti,this.path=e.path||ti,this.query=e.query||ti,this.fragment=e.fragment||ti):(this.scheme=GW(e,r),this.authority=t||ti,this.path=ZW(this.scheme,i||ti),this.query=n||ti,this.fragment=s||ti,qW(this,r))}get fsPath(){return dC(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:i,path:n,query:s,fragment:r}=e;return t===void 0?t=this.scheme:t===null&&(t=ti),i===void 0?i=this.authority:i===null&&(i=ti),n===void 0?n=this.path:n===null&&(n=ti),s===void 0?s=this.query:s===null&&(s=ti),r===void 0?r=this.fragment:r===null&&(r=ti),t===this.scheme&&i===this.authority&&n===this.path&&s===this.query&&r===this.fragment?this:new xu(t,i,n,s,r)}static parse(e,t=!1){const i=YW.exec(e);return i?new xu(i[2]||ti,wb(i[4]||ti),wb(i[5]||ti),wb(i[7]||ti),wb(i[9]||ti),t):new xu(ti,ti,ti,ti,ti)}static file(e){let t=ti;if(kn&&(e=e.replace(/\\/g,nr)),e[0]===nr&&e[1]===nr){const i=e.indexOf(nr,2);i===-1?(t=e.substring(2),e=nr):(t=e.substring(2,i),e=e.substring(i)||nr)}return new xu("file",t,e,ti,ti)}static from(e,t){return new xu(e.scheme,e.authority,e.path,e.query,e.fragment,t)}static joinPath(e,...t){if(!e.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let i;return kn&&e.scheme==="file"?i=ve.file(Vn.join(dC(e,!0),...t)).path:i=oi.join(e.path,...t),e.with({path:i})}toString(e=!1){return PL(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof ve)return e;{const t=new xu(e);return t._formatted=e.external??null,t._fsPath=e._sep===nF?e.fsPath??null:null,t}}else return e}}const nF=kn?1:void 0;class xu extends ve{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=dC(this,!1)),this._fsPath}toString(e=!1){return e?PL(this,!0):(this._formatted||(this._formatted=PL(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=nF),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}const sF={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function $M(o,e,t){let i,n=-1;for(let s=0;s=97&&r<=122||r>=65&&r<=90||r>=48&&r<=57||r===45||r===46||r===95||r===126||e&&r===47||t&&r===91||t&&r===93||t&&r===58)n!==-1&&(i+=encodeURIComponent(o.substring(n,s)),n=-1),i!==void 0&&(i+=o.charAt(s));else{i===void 0&&(i=o.substr(0,s));const a=sF[r];a!==void 0?(n!==-1&&(i+=encodeURIComponent(o.substring(n,s)),n=-1),i+=a):n===-1&&(n=s)}}return n!==-1&&(i+=encodeURIComponent(o.substring(n))),i!==void 0?i:o}function QW(o){let e;for(let t=0;t1&&o.scheme==="file"?t=`//${o.authority}${o.path}`:o.path.charCodeAt(0)===47&&(o.path.charCodeAt(1)>=65&&o.path.charCodeAt(1)<=90||o.path.charCodeAt(1)>=97&&o.path.charCodeAt(1)<=122)&&o.path.charCodeAt(2)===58?e?t=o.path.substr(1):t=o.path[1].toLowerCase()+o.path.substr(2):t=o.path,kn&&(t=t.replace(/\//g,"\\")),t}function PL(o,e){const t=e?QW:$M;let i="",{scheme:n,authority:s,path:r,query:a,fragment:l}=o;if(n&&(i+=n,i+=":"),(s||n==="file")&&(i+=nr,i+=nr),s){let c=s.indexOf("@");if(c!==-1){const d=s.substr(0,c);s=s.substr(c+1),c=d.lastIndexOf(":"),c===-1?i+=t(d,!1,!1):(i+=t(d.substr(0,c),!1,!1),i+=":",i+=t(d.substr(c+1),!1,!0)),i+="@"}s=s.toLowerCase(),c=s.lastIndexOf(":"),c===-1?i+=t(s,!1,!0):(i+=t(s.substr(0,c),!1,!0),i+=s.substr(c))}if(r){if(r.length>=3&&r.charCodeAt(0)===47&&r.charCodeAt(2)===58){const c=r.charCodeAt(1);c>=65&&c<=90&&(r=`/${String.fromCharCode(c+32)}:${r.substr(3)}`)}else if(r.length>=2&&r.charCodeAt(1)===58){const c=r.charCodeAt(0);c>=65&&c<=90&&(r=`${String.fromCharCode(c+32)}:${r.substr(2)}`)}i+=t(r,!0,!1)}return a&&(i+="?",i+=t(a,!1,!1)),l&&(i+="#",i+=e?l:$M(l,!1,!1)),i}function oF(o){try{return decodeURIComponent(o)}catch{return o.length>3?o.substr(0,3)+oF(o.substr(3)):o}}const KM=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function wb(o){return o.match(KM)?o.replace(KM,e=>oF(e)):o}class P{constructor(e,t){this.lineNumber=e,this.column=t}with(e=this.lineNumber,t=this.column){return e===this.lineNumber&&t===this.column?this:new P(e,t)}delta(e=0,t=0){return this.with(this.lineNumber+e,this.column+t)}equals(e){return P.equals(this,e)}static equals(e,t){return!e&&!t?!0:!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(e){return P.isBefore(this,e)}static isBefore(e,t){return e.lineNumberi||e===i&&t>n?(this.startLineNumber=i,this.startColumn=n,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=i,this.endColumn=n)}isEmpty(){return Mi.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return Mi.containsPosition(this,e)}static containsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.columne.endColumn)}static strictContainsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.column<=e.startColumn||t.lineNumber===e.endLineNumber&&t.column>=e.endColumn)}containsRange(e){return Mi.containsRange(this,e)}static containsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumne.endColumn)}strictContainsRange(e){return Mi.strictContainsRange(this,e)}static strictContainsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn||t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)}plusRange(e){return Mi.plusRange(this,e)}static plusRange(e,t){let i,n,s,r;return t.startLineNumbere.endLineNumber?(s=t.endLineNumber,r=t.endColumn):t.endLineNumber===e.endLineNumber?(s=t.endLineNumber,r=Math.max(t.endColumn,e.endColumn)):(s=e.endLineNumber,r=e.endColumn),new Mi(i,n,s,r)}intersectRanges(e){return Mi.intersectRanges(this,e)}static intersectRanges(e,t){let i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn;const a=t.startLineNumber,l=t.startColumn,c=t.endLineNumber,d=t.endColumn;return ic?(s=c,r=d):s===c&&(r=Math.min(r,d)),i>s||i===s&&n>r?null:new Mi(i,n,s,r)}equalsRange(e){return Mi.equalsRange(this,e)}static equalsRange(e,t){return!e&&!t?!0:!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn}getEndPosition(){return Mi.getEndPosition(this)}static getEndPosition(e){return new P(e.endLineNumber,e.endColumn)}getStartPosition(){return Mi.getStartPosition(this)}static getStartPosition(e){return new P(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,t){return new Mi(this.startLineNumber,this.startColumn,e,t)}setStartPosition(e,t){return new Mi(e,t,this.endLineNumber,this.endColumn)}collapseToStart(){return Mi.collapseToStart(this)}static collapseToStart(e){return new Mi(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}collapseToEnd(){return Mi.collapseToEnd(this)}static collapseToEnd(e){return new Mi(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn)}delta(e){return new Mi(this.startLineNumber+e,this.startColumn,this.endLineNumber+e,this.endColumn)}static fromPositions(e,t=e){return new Mi(e.lineNumber,e.column,t.lineNumber,t.column)}static lift(e){return e?new Mi(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):null}static isIRange(e){return e&&typeof e.startLineNumber=="number"&&typeof e.startColumn=="number"&&typeof e.endLineNumber=="number"&&typeof e.endColumn=="number"}static areIntersectingOrTouching(e,t){return!(e.endLineNumbere.startLineNumber}toJSON(){return this}};class Fe extends I{constructor(e,t,i,n){super(e,t,i,n),this.selectionStartLineNumber=e,this.selectionStartColumn=t,this.positionLineNumber=i,this.positionColumn=n}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(e){return Fe.selectionsEqual(this,e)}static selectionsEqual(e,t){return e.selectionStartLineNumber===t.selectionStartLineNumber&&e.selectionStartColumn===t.selectionStartColumn&&e.positionLineNumber===t.positionLineNumber&&e.positionColumn===t.positionColumn}getDirection(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1}setEndPosition(e,t){return this.getDirection()===0?new Fe(this.startLineNumber,this.startColumn,e,t):new Fe(e,t,this.startLineNumber,this.startColumn)}getPosition(){return new P(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new P(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(e,t){return this.getDirection()===0?new Fe(e,t,this.endLineNumber,this.endColumn):new Fe(this.endLineNumber,this.endColumn,e,t)}static fromPositions(e,t=e){return new Fe(e.lineNumber,e.column,t.lineNumber,t.column)}static fromRange(e,t){return t===0?new Fe(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new Fe(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn)}static liftSelection(e){return new Fe(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn)}static selectionsArrEqual(e,t){if(e&&!t||!e&&t)return!1;if(!e&&!t)return!0;if(e.length!==t.length)return!1;for(let i=0,n=e.length;i{this._tokenizationSupports.get(e)===t&&(this._tokenizationSupports.delete(e),this.handleChange([e]))})}get(e){return this._tokenizationSupports.get(e)||null}registerFactory(e,t){this._factories.get(e)?.dispose();const i=new eH(this,e,t);return this._factories.set(e,i),_e(()=>{const n=this._factories.get(e);!n||n!==i||(this._factories.delete(e),n.dispose())})}async getOrCreate(e){const t=this.get(e);if(t)return t;const i=this._factories.get(e);return!i||i.isResolved?null:(await i.resolve(),this.get(e))}isResolved(e){if(this.get(e))return!0;const i=this._factories.get(e);return!!(!i||i.isResolved)}setColorMap(e){this._colorMap=e,this._onDidChange.fire({changedLanguages:Array.from(this._tokenizationSupports.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}};class eH extends z{get isResolved(){return this._isResolved}constructor(e,t,i){super(),this._registry=e,this._languageId=t,this._factory=i,this._isDisposed=!1,this._resolvePromise=null,this._isResolved=!1}dispose(){this._isDisposed=!0,super.dispose()}async resolve(){return this._resolvePromise||(this._resolvePromise=this._create()),this._resolvePromise}async _create(){const e=await this._factory.tokenizationSupport;this._isResolved=!0,e&&!this._isDisposed&&this._register(this._registry.register(this._languageId,e))}}let zp=class{constructor(e,t,i){this.offset=e,this.type=t,this.language=i,this._tokenBrand=void 0}toString(){return"("+this.offset+", "+this.type+")"}};class FN{constructor(e,t){this.tokens=e,this.endState=t,this._tokenizationResultBrand=void 0}}class x0{constructor(e,t){this.tokens=e,this.endState=t,this._encodedTokenizationResultBrand=void 0}}var is;(function(o){o[o.Increase=0]="Increase",o[o.Decrease=1]="Decrease"})(is||(is={}));var Up;(function(o){const e=new Map;e.set(0,ie.symbolMethod),e.set(1,ie.symbolFunction),e.set(2,ie.symbolConstructor),e.set(3,ie.symbolField),e.set(4,ie.symbolVariable),e.set(5,ie.symbolClass),e.set(6,ie.symbolStruct),e.set(7,ie.symbolInterface),e.set(8,ie.symbolModule),e.set(9,ie.symbolProperty),e.set(10,ie.symbolEvent),e.set(11,ie.symbolOperator),e.set(12,ie.symbolUnit),e.set(13,ie.symbolValue),e.set(15,ie.symbolEnum),e.set(14,ie.symbolConstant),e.set(15,ie.symbolEnum),e.set(16,ie.symbolEnumMember),e.set(17,ie.symbolKeyword),e.set(27,ie.symbolSnippet),e.set(18,ie.symbolText),e.set(19,ie.symbolColor),e.set(20,ie.symbolFile),e.set(21,ie.symbolReference),e.set(22,ie.symbolCustomColor),e.set(23,ie.symbolFolder),e.set(24,ie.symbolTypeParameter),e.set(25,ie.account),e.set(26,ie.issues);function t(s){let r=e.get(s);return r||(console.info("No codicon found for CompletionItemKind "+s),r=ie.symbolProperty),r}o.toIcon=t;const i=new Map;i.set("method",0),i.set("function",1),i.set("constructor",2),i.set("field",3),i.set("variable",4),i.set("class",5),i.set("struct",6),i.set("interface",7),i.set("module",8),i.set("property",9),i.set("event",10),i.set("operator",11),i.set("unit",12),i.set("value",13),i.set("constant",14),i.set("enum",15),i.set("enum-member",16),i.set("enumMember",16),i.set("keyword",17),i.set("snippet",27),i.set("text",18),i.set("color",19),i.set("file",20),i.set("reference",21),i.set("customcolor",22),i.set("folder",23),i.set("type-parameter",24),i.set("typeParameter",24),i.set("account",25),i.set("issue",26);function n(s,r){let a=i.get(s);return typeof a>"u"&&!r&&(a=9),a}o.fromString=n})(Up||(Up={}));var Cl;(function(o){o[o.Automatic=0]="Automatic",o[o.Explicit=1]="Explicit"})(Cl||(Cl={}));class lF{constructor(e,t,i,n){this.range=e,this.text=t,this.completionKind=i,this.isSnippetText=n}equals(e){return I.lift(this.range).equalsRange(e.range)&&this.text===e.text&&this.completionKind===e.completionKind&&this.isSnippetText===e.isSnippetText}}var jM;(function(o){o[o.Automatic=0]="Automatic",o[o.PasteAs=1]="PasteAs"})(jM||(jM={}));var qM;(function(o){o[o.Invoke=1]="Invoke",o[o.TriggerCharacter=2]="TriggerCharacter",o[o.ContentChange=3]="ContentChange"})(qM||(qM={}));var GM;(function(o){o[o.Text=0]="Text",o[o.Read=1]="Read",o[o.Write=2]="Write"})(GM||(GM={}));function tH(o){return o&&ve.isUri(o.uri)&&I.isIRange(o.range)&&(I.isIRange(o.originSelectionRange)||I.isIRange(o.targetSelectionRange))}m("Array","array"),m("Boolean","boolean"),m("Class","class"),m("Constant","constant"),m("Constructor","constructor"),m("Enum","enumeration"),m("EnumMember","enumeration member"),m("Event","event"),m("Field","field"),m("File","file"),m("Function","function"),m("Interface","interface"),m("Key","key"),m("Method","method"),m("Module","module"),m("Namespace","namespace"),m("Null","null"),m("Number","number"),m("Object","object"),m("Operator","operator"),m("Package","package"),m("Property","property"),m("String","string"),m("Struct","struct"),m("TypeParameter","type parameter"),m("Variable","variable");var FL;(function(o){const e=new Map;e.set(0,ie.symbolFile),e.set(1,ie.symbolModule),e.set(2,ie.symbolNamespace),e.set(3,ie.symbolPackage),e.set(4,ie.symbolClass),e.set(5,ie.symbolMethod),e.set(6,ie.symbolProperty),e.set(7,ie.symbolField),e.set(8,ie.symbolConstructor),e.set(9,ie.symbolEnum),e.set(10,ie.symbolInterface),e.set(11,ie.symbolFunction),e.set(12,ie.symbolVariable),e.set(13,ie.symbolConstant),e.set(14,ie.symbolString),e.set(15,ie.symbolNumber),e.set(16,ie.symbolBoolean),e.set(17,ie.symbolArray),e.set(18,ie.symbolObject),e.set(19,ie.symbolKey),e.set(20,ie.symbolNull),e.set(21,ie.symbolEnumMember),e.set(22,ie.symbolStruct),e.set(23,ie.symbolEvent),e.set(24,ie.symbolOperator),e.set(25,ie.symbolTypeParameter);function t(i){let n=e.get(i);return n||(console.info("No codicon found for SymbolKind "+i),n=ie.symbolProperty),n}o.toIcon=t})(FL||(FL={}));const vo=class vo{static fromValue(e){switch(e){case"comment":return vo.Comment;case"imports":return vo.Imports;case"region":return vo.Region}return new vo(e)}constructor(e){this.value=e}};vo.Comment=new vo("comment"),vo.Imports=new vo("imports"),vo.Region=new vo("region");let BL=vo;var ZM;(function(o){o[o.AIGenerated=1]="AIGenerated"})(ZM||(ZM={}));var YM;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(YM||(YM={}));var WL;(function(o){function e(t){return!t||typeof t!="object"?!1:typeof t.id=="string"&&typeof t.title=="string"}o.is=e})(WL||(WL={}));var hC;(function(o){o[o.Type=1]="Type",o[o.Parameter=2]="Parameter"})(hC||(hC={}));class iH{constructor(e){this.createSupport=e,this._tokenizationSupport=null}dispose(){this._tokenizationSupport&&this._tokenizationSupport.then(e=>{e&&e.dispose()})}get tokenizationSupport(){return this._tokenizationSupport||(this._tokenizationSupport=this.createSupport()),this._tokenizationSupport}}const si=new aF,HL=new aF;var QM;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(QM||(QM={}));var VL;(function(o){o[o.Unknown=0]="Unknown",o[o.Disabled=1]="Disabled",o[o.Enabled=2]="Enabled"})(VL||(VL={}));var zL;(function(o){o[o.Invoke=1]="Invoke",o[o.Auto=2]="Auto"})(zL||(zL={}));var UL;(function(o){o[o.None=0]="None",o[o.KeepWhitespace=1]="KeepWhitespace",o[o.InsertAsSnippet=4]="InsertAsSnippet"})(UL||(UL={}));var $L;(function(o){o[o.Method=0]="Method",o[o.Function=1]="Function",o[o.Constructor=2]="Constructor",o[o.Field=3]="Field",o[o.Variable=4]="Variable",o[o.Class=5]="Class",o[o.Struct=6]="Struct",o[o.Interface=7]="Interface",o[o.Module=8]="Module",o[o.Property=9]="Property",o[o.Event=10]="Event",o[o.Operator=11]="Operator",o[o.Unit=12]="Unit",o[o.Value=13]="Value",o[o.Constant=14]="Constant",o[o.Enum=15]="Enum",o[o.EnumMember=16]="EnumMember",o[o.Keyword=17]="Keyword",o[o.Text=18]="Text",o[o.Color=19]="Color",o[o.File=20]="File",o[o.Reference=21]="Reference",o[o.Customcolor=22]="Customcolor",o[o.Folder=23]="Folder",o[o.TypeParameter=24]="TypeParameter",o[o.User=25]="User",o[o.Issue=26]="Issue",o[o.Snippet=27]="Snippet"})($L||($L={}));var KL;(function(o){o[o.Deprecated=1]="Deprecated"})(KL||(KL={}));var jL;(function(o){o[o.Invoke=0]="Invoke",o[o.TriggerCharacter=1]="TriggerCharacter",o[o.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"})(jL||(jL={}));var qL;(function(o){o[o.EXACT=0]="EXACT",o[o.ABOVE=1]="ABOVE",o[o.BELOW=2]="BELOW"})(qL||(qL={}));var GL;(function(o){o[o.NotSet=0]="NotSet",o[o.ContentFlush=1]="ContentFlush",o[o.RecoverFromMarkers=2]="RecoverFromMarkers",o[o.Explicit=3]="Explicit",o[o.Paste=4]="Paste",o[o.Undo=5]="Undo",o[o.Redo=6]="Redo"})(GL||(GL={}));var ZL;(function(o){o[o.LF=1]="LF",o[o.CRLF=2]="CRLF"})(ZL||(ZL={}));var YL;(function(o){o[o.Text=0]="Text",o[o.Read=1]="Read",o[o.Write=2]="Write"})(YL||(YL={}));var QL;(function(o){o[o.None=0]="None",o[o.Keep=1]="Keep",o[o.Brackets=2]="Brackets",o[o.Advanced=3]="Advanced",o[o.Full=4]="Full"})(QL||(QL={}));var XL;(function(o){o[o.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",o[o.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",o[o.accessibilitySupport=2]="accessibilitySupport",o[o.accessibilityPageSize=3]="accessibilityPageSize",o[o.ariaLabel=4]="ariaLabel",o[o.ariaRequired=5]="ariaRequired",o[o.autoClosingBrackets=6]="autoClosingBrackets",o[o.autoClosingComments=7]="autoClosingComments",o[o.screenReaderAnnounceInlineSuggestion=8]="screenReaderAnnounceInlineSuggestion",o[o.autoClosingDelete=9]="autoClosingDelete",o[o.autoClosingOvertype=10]="autoClosingOvertype",o[o.autoClosingQuotes=11]="autoClosingQuotes",o[o.autoIndent=12]="autoIndent",o[o.automaticLayout=13]="automaticLayout",o[o.autoSurround=14]="autoSurround",o[o.bracketPairColorization=15]="bracketPairColorization",o[o.guides=16]="guides",o[o.codeLens=17]="codeLens",o[o.codeLensFontFamily=18]="codeLensFontFamily",o[o.codeLensFontSize=19]="codeLensFontSize",o[o.colorDecorators=20]="colorDecorators",o[o.colorDecoratorsLimit=21]="colorDecoratorsLimit",o[o.columnSelection=22]="columnSelection",o[o.comments=23]="comments",o[o.contextmenu=24]="contextmenu",o[o.copyWithSyntaxHighlighting=25]="copyWithSyntaxHighlighting",o[o.cursorBlinking=26]="cursorBlinking",o[o.cursorSmoothCaretAnimation=27]="cursorSmoothCaretAnimation",o[o.cursorStyle=28]="cursorStyle",o[o.cursorSurroundingLines=29]="cursorSurroundingLines",o[o.cursorSurroundingLinesStyle=30]="cursorSurroundingLinesStyle",o[o.cursorWidth=31]="cursorWidth",o[o.disableLayerHinting=32]="disableLayerHinting",o[o.disableMonospaceOptimizations=33]="disableMonospaceOptimizations",o[o.domReadOnly=34]="domReadOnly",o[o.dragAndDrop=35]="dragAndDrop",o[o.dropIntoEditor=36]="dropIntoEditor",o[o.emptySelectionClipboard=37]="emptySelectionClipboard",o[o.experimentalWhitespaceRendering=38]="experimentalWhitespaceRendering",o[o.extraEditorClassName=39]="extraEditorClassName",o[o.fastScrollSensitivity=40]="fastScrollSensitivity",o[o.find=41]="find",o[o.fixedOverflowWidgets=42]="fixedOverflowWidgets",o[o.folding=43]="folding",o[o.foldingStrategy=44]="foldingStrategy",o[o.foldingHighlight=45]="foldingHighlight",o[o.foldingImportsByDefault=46]="foldingImportsByDefault",o[o.foldingMaximumRegions=47]="foldingMaximumRegions",o[o.unfoldOnClickAfterEndOfLine=48]="unfoldOnClickAfterEndOfLine",o[o.fontFamily=49]="fontFamily",o[o.fontInfo=50]="fontInfo",o[o.fontLigatures=51]="fontLigatures",o[o.fontSize=52]="fontSize",o[o.fontWeight=53]="fontWeight",o[o.fontVariations=54]="fontVariations",o[o.formatOnPaste=55]="formatOnPaste",o[o.formatOnType=56]="formatOnType",o[o.glyphMargin=57]="glyphMargin",o[o.gotoLocation=58]="gotoLocation",o[o.hideCursorInOverviewRuler=59]="hideCursorInOverviewRuler",o[o.hover=60]="hover",o[o.inDiffEditor=61]="inDiffEditor",o[o.inlineSuggest=62]="inlineSuggest",o[o.inlineEdit=63]="inlineEdit",o[o.letterSpacing=64]="letterSpacing",o[o.lightbulb=65]="lightbulb",o[o.lineDecorationsWidth=66]="lineDecorationsWidth",o[o.lineHeight=67]="lineHeight",o[o.lineNumbers=68]="lineNumbers",o[o.lineNumbersMinChars=69]="lineNumbersMinChars",o[o.linkedEditing=70]="linkedEditing",o[o.links=71]="links",o[o.matchBrackets=72]="matchBrackets",o[o.minimap=73]="minimap",o[o.mouseStyle=74]="mouseStyle",o[o.mouseWheelScrollSensitivity=75]="mouseWheelScrollSensitivity",o[o.mouseWheelZoom=76]="mouseWheelZoom",o[o.multiCursorMergeOverlapping=77]="multiCursorMergeOverlapping",o[o.multiCursorModifier=78]="multiCursorModifier",o[o.multiCursorPaste=79]="multiCursorPaste",o[o.multiCursorLimit=80]="multiCursorLimit",o[o.occurrencesHighlight=81]="occurrencesHighlight",o[o.overviewRulerBorder=82]="overviewRulerBorder",o[o.overviewRulerLanes=83]="overviewRulerLanes",o[o.padding=84]="padding",o[o.pasteAs=85]="pasteAs",o[o.parameterHints=86]="parameterHints",o[o.peekWidgetDefaultFocus=87]="peekWidgetDefaultFocus",o[o.placeholder=88]="placeholder",o[o.definitionLinkOpensInPeek=89]="definitionLinkOpensInPeek",o[o.quickSuggestions=90]="quickSuggestions",o[o.quickSuggestionsDelay=91]="quickSuggestionsDelay",o[o.readOnly=92]="readOnly",o[o.readOnlyMessage=93]="readOnlyMessage",o[o.renameOnType=94]="renameOnType",o[o.renderControlCharacters=95]="renderControlCharacters",o[o.renderFinalNewline=96]="renderFinalNewline",o[o.renderLineHighlight=97]="renderLineHighlight",o[o.renderLineHighlightOnlyWhenFocus=98]="renderLineHighlightOnlyWhenFocus",o[o.renderValidationDecorations=99]="renderValidationDecorations",o[o.renderWhitespace=100]="renderWhitespace",o[o.revealHorizontalRightPadding=101]="revealHorizontalRightPadding",o[o.roundedSelection=102]="roundedSelection",o[o.rulers=103]="rulers",o[o.scrollbar=104]="scrollbar",o[o.scrollBeyondLastColumn=105]="scrollBeyondLastColumn",o[o.scrollBeyondLastLine=106]="scrollBeyondLastLine",o[o.scrollPredominantAxis=107]="scrollPredominantAxis",o[o.selectionClipboard=108]="selectionClipboard",o[o.selectionHighlight=109]="selectionHighlight",o[o.selectOnLineNumbers=110]="selectOnLineNumbers",o[o.showFoldingControls=111]="showFoldingControls",o[o.showUnused=112]="showUnused",o[o.snippetSuggestions=113]="snippetSuggestions",o[o.smartSelect=114]="smartSelect",o[o.smoothScrolling=115]="smoothScrolling",o[o.stickyScroll=116]="stickyScroll",o[o.stickyTabStops=117]="stickyTabStops",o[o.stopRenderingLineAfter=118]="stopRenderingLineAfter",o[o.suggest=119]="suggest",o[o.suggestFontSize=120]="suggestFontSize",o[o.suggestLineHeight=121]="suggestLineHeight",o[o.suggestOnTriggerCharacters=122]="suggestOnTriggerCharacters",o[o.suggestSelection=123]="suggestSelection",o[o.tabCompletion=124]="tabCompletion",o[o.tabIndex=125]="tabIndex",o[o.unicodeHighlighting=126]="unicodeHighlighting",o[o.unusualLineTerminators=127]="unusualLineTerminators",o[o.useShadowDOM=128]="useShadowDOM",o[o.useTabStops=129]="useTabStops",o[o.wordBreak=130]="wordBreak",o[o.wordSegmenterLocales=131]="wordSegmenterLocales",o[o.wordSeparators=132]="wordSeparators",o[o.wordWrap=133]="wordWrap",o[o.wordWrapBreakAfterCharacters=134]="wordWrapBreakAfterCharacters",o[o.wordWrapBreakBeforeCharacters=135]="wordWrapBreakBeforeCharacters",o[o.wordWrapColumn=136]="wordWrapColumn",o[o.wordWrapOverride1=137]="wordWrapOverride1",o[o.wordWrapOverride2=138]="wordWrapOverride2",o[o.wrappingIndent=139]="wrappingIndent",o[o.wrappingStrategy=140]="wrappingStrategy",o[o.showDeprecated=141]="showDeprecated",o[o.inlayHints=142]="inlayHints",o[o.editorClassName=143]="editorClassName",o[o.pixelRatio=144]="pixelRatio",o[o.tabFocusMode=145]="tabFocusMode",o[o.layoutInfo=146]="layoutInfo",o[o.wrappingInfo=147]="wrappingInfo",o[o.defaultColorDecorators=148]="defaultColorDecorators",o[o.colorDecoratorsActivatedOn=149]="colorDecoratorsActivatedOn",o[o.inlineCompletionsAccessibilityVerbose=150]="inlineCompletionsAccessibilityVerbose"})(XL||(XL={}));var JL;(function(o){o[o.TextDefined=0]="TextDefined",o[o.LF=1]="LF",o[o.CRLF=2]="CRLF"})(JL||(JL={}));var ex;(function(o){o[o.LF=0]="LF",o[o.CRLF=1]="CRLF"})(ex||(ex={}));var tx;(function(o){o[o.Left=1]="Left",o[o.Center=2]="Center",o[o.Right=3]="Right"})(tx||(tx={}));var ix;(function(o){o[o.Increase=0]="Increase",o[o.Decrease=1]="Decrease"})(ix||(ix={}));var nx;(function(o){o[o.None=0]="None",o[o.Indent=1]="Indent",o[o.IndentOutdent=2]="IndentOutdent",o[o.Outdent=3]="Outdent"})(nx||(nx={}));var sx;(function(o){o[o.Both=0]="Both",o[o.Right=1]="Right",o[o.Left=2]="Left",o[o.None=3]="None"})(sx||(sx={}));var ox;(function(o){o[o.Type=1]="Type",o[o.Parameter=2]="Parameter"})(ox||(ox={}));var rx;(function(o){o[o.Automatic=0]="Automatic",o[o.Explicit=1]="Explicit"})(rx||(rx={}));var ax;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(ax||(ax={}));var lx;(function(o){o[o.DependsOnKbLayout=-1]="DependsOnKbLayout",o[o.Unknown=0]="Unknown",o[o.Backspace=1]="Backspace",o[o.Tab=2]="Tab",o[o.Enter=3]="Enter",o[o.Shift=4]="Shift",o[o.Ctrl=5]="Ctrl",o[o.Alt=6]="Alt",o[o.PauseBreak=7]="PauseBreak",o[o.CapsLock=8]="CapsLock",o[o.Escape=9]="Escape",o[o.Space=10]="Space",o[o.PageUp=11]="PageUp",o[o.PageDown=12]="PageDown",o[o.End=13]="End",o[o.Home=14]="Home",o[o.LeftArrow=15]="LeftArrow",o[o.UpArrow=16]="UpArrow",o[o.RightArrow=17]="RightArrow",o[o.DownArrow=18]="DownArrow",o[o.Insert=19]="Insert",o[o.Delete=20]="Delete",o[o.Digit0=21]="Digit0",o[o.Digit1=22]="Digit1",o[o.Digit2=23]="Digit2",o[o.Digit3=24]="Digit3",o[o.Digit4=25]="Digit4",o[o.Digit5=26]="Digit5",o[o.Digit6=27]="Digit6",o[o.Digit7=28]="Digit7",o[o.Digit8=29]="Digit8",o[o.Digit9=30]="Digit9",o[o.KeyA=31]="KeyA",o[o.KeyB=32]="KeyB",o[o.KeyC=33]="KeyC",o[o.KeyD=34]="KeyD",o[o.KeyE=35]="KeyE",o[o.KeyF=36]="KeyF",o[o.KeyG=37]="KeyG",o[o.KeyH=38]="KeyH",o[o.KeyI=39]="KeyI",o[o.KeyJ=40]="KeyJ",o[o.KeyK=41]="KeyK",o[o.KeyL=42]="KeyL",o[o.KeyM=43]="KeyM",o[o.KeyN=44]="KeyN",o[o.KeyO=45]="KeyO",o[o.KeyP=46]="KeyP",o[o.KeyQ=47]="KeyQ",o[o.KeyR=48]="KeyR",o[o.KeyS=49]="KeyS",o[o.KeyT=50]="KeyT",o[o.KeyU=51]="KeyU",o[o.KeyV=52]="KeyV",o[o.KeyW=53]="KeyW",o[o.KeyX=54]="KeyX",o[o.KeyY=55]="KeyY",o[o.KeyZ=56]="KeyZ",o[o.Meta=57]="Meta",o[o.ContextMenu=58]="ContextMenu",o[o.F1=59]="F1",o[o.F2=60]="F2",o[o.F3=61]="F3",o[o.F4=62]="F4",o[o.F5=63]="F5",o[o.F6=64]="F6",o[o.F7=65]="F7",o[o.F8=66]="F8",o[o.F9=67]="F9",o[o.F10=68]="F10",o[o.F11=69]="F11",o[o.F12=70]="F12",o[o.F13=71]="F13",o[o.F14=72]="F14",o[o.F15=73]="F15",o[o.F16=74]="F16",o[o.F17=75]="F17",o[o.F18=76]="F18",o[o.F19=77]="F19",o[o.F20=78]="F20",o[o.F21=79]="F21",o[o.F22=80]="F22",o[o.F23=81]="F23",o[o.F24=82]="F24",o[o.NumLock=83]="NumLock",o[o.ScrollLock=84]="ScrollLock",o[o.Semicolon=85]="Semicolon",o[o.Equal=86]="Equal",o[o.Comma=87]="Comma",o[o.Minus=88]="Minus",o[o.Period=89]="Period",o[o.Slash=90]="Slash",o[o.Backquote=91]="Backquote",o[o.BracketLeft=92]="BracketLeft",o[o.Backslash=93]="Backslash",o[o.BracketRight=94]="BracketRight",o[o.Quote=95]="Quote",o[o.OEM_8=96]="OEM_8",o[o.IntlBackslash=97]="IntlBackslash",o[o.Numpad0=98]="Numpad0",o[o.Numpad1=99]="Numpad1",o[o.Numpad2=100]="Numpad2",o[o.Numpad3=101]="Numpad3",o[o.Numpad4=102]="Numpad4",o[o.Numpad5=103]="Numpad5",o[o.Numpad6=104]="Numpad6",o[o.Numpad7=105]="Numpad7",o[o.Numpad8=106]="Numpad8",o[o.Numpad9=107]="Numpad9",o[o.NumpadMultiply=108]="NumpadMultiply",o[o.NumpadAdd=109]="NumpadAdd",o[o.NUMPAD_SEPARATOR=110]="NUMPAD_SEPARATOR",o[o.NumpadSubtract=111]="NumpadSubtract",o[o.NumpadDecimal=112]="NumpadDecimal",o[o.NumpadDivide=113]="NumpadDivide",o[o.KEY_IN_COMPOSITION=114]="KEY_IN_COMPOSITION",o[o.ABNT_C1=115]="ABNT_C1",o[o.ABNT_C2=116]="ABNT_C2",o[o.AudioVolumeMute=117]="AudioVolumeMute",o[o.AudioVolumeUp=118]="AudioVolumeUp",o[o.AudioVolumeDown=119]="AudioVolumeDown",o[o.BrowserSearch=120]="BrowserSearch",o[o.BrowserHome=121]="BrowserHome",o[o.BrowserBack=122]="BrowserBack",o[o.BrowserForward=123]="BrowserForward",o[o.MediaTrackNext=124]="MediaTrackNext",o[o.MediaTrackPrevious=125]="MediaTrackPrevious",o[o.MediaStop=126]="MediaStop",o[o.MediaPlayPause=127]="MediaPlayPause",o[o.LaunchMediaPlayer=128]="LaunchMediaPlayer",o[o.LaunchMail=129]="LaunchMail",o[o.LaunchApp2=130]="LaunchApp2",o[o.Clear=131]="Clear",o[o.MAX_VALUE=132]="MAX_VALUE"})(lx||(lx={}));var cx;(function(o){o[o.Hint=1]="Hint",o[o.Info=2]="Info",o[o.Warning=4]="Warning",o[o.Error=8]="Error"})(cx||(cx={}));var dx;(function(o){o[o.Unnecessary=1]="Unnecessary",o[o.Deprecated=2]="Deprecated"})(dx||(dx={}));var hx;(function(o){o[o.Inline=1]="Inline",o[o.Gutter=2]="Gutter"})(hx||(hx={}));var ux;(function(o){o[o.Normal=1]="Normal",o[o.Underlined=2]="Underlined"})(ux||(ux={}));var fx;(function(o){o[o.UNKNOWN=0]="UNKNOWN",o[o.TEXTAREA=1]="TEXTAREA",o[o.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",o[o.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",o[o.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",o[o.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",o[o.CONTENT_TEXT=6]="CONTENT_TEXT",o[o.CONTENT_EMPTY=7]="CONTENT_EMPTY",o[o.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",o[o.CONTENT_WIDGET=9]="CONTENT_WIDGET",o[o.OVERVIEW_RULER=10]="OVERVIEW_RULER",o[o.SCROLLBAR=11]="SCROLLBAR",o[o.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",o[o.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"})(fx||(fx={}));var gx;(function(o){o[o.AIGenerated=1]="AIGenerated"})(gx||(gx={}));var mx;(function(o){o[o.Invoke=0]="Invoke",o[o.Automatic=1]="Automatic"})(mx||(mx={}));var px;(function(o){o[o.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",o[o.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",o[o.TOP_CENTER=2]="TOP_CENTER"})(px||(px={}));var _x;(function(o){o[o.Left=1]="Left",o[o.Center=2]="Center",o[o.Right=4]="Right",o[o.Full=7]="Full"})(_x||(_x={}));var bx;(function(o){o[o.Word=0]="Word",o[o.Line=1]="Line",o[o.Suggest=2]="Suggest"})(bx||(bx={}));var Cx;(function(o){o[o.Left=0]="Left",o[o.Right=1]="Right",o[o.None=2]="None",o[o.LeftOfInjectedText=3]="LeftOfInjectedText",o[o.RightOfInjectedText=4]="RightOfInjectedText"})(Cx||(Cx={}));var vx;(function(o){o[o.Off=0]="Off",o[o.On=1]="On",o[o.Relative=2]="Relative",o[o.Interval=3]="Interval",o[o.Custom=4]="Custom"})(vx||(vx={}));var wx;(function(o){o[o.None=0]="None",o[o.Text=1]="Text",o[o.Blocks=2]="Blocks"})(wx||(wx={}));var yx;(function(o){o[o.Smooth=0]="Smooth",o[o.Immediate=1]="Immediate"})(yx||(yx={}));var Sx;(function(o){o[o.Auto=1]="Auto",o[o.Hidden=2]="Hidden",o[o.Visible=3]="Visible"})(Sx||(Sx={}));var Lx;(function(o){o[o.LTR=0]="LTR",o[o.RTL=1]="RTL"})(Lx||(Lx={}));var xx;(function(o){o.Off="off",o.OnCode="onCode",o.On="on"})(xx||(xx={}));var kx;(function(o){o[o.Invoke=1]="Invoke",o[o.TriggerCharacter=2]="TriggerCharacter",o[o.ContentChange=3]="ContentChange"})(kx||(kx={}));var Dx;(function(o){o[o.File=0]="File",o[o.Module=1]="Module",o[o.Namespace=2]="Namespace",o[o.Package=3]="Package",o[o.Class=4]="Class",o[o.Method=5]="Method",o[o.Property=6]="Property",o[o.Field=7]="Field",o[o.Constructor=8]="Constructor",o[o.Enum=9]="Enum",o[o.Interface=10]="Interface",o[o.Function=11]="Function",o[o.Variable=12]="Variable",o[o.Constant=13]="Constant",o[o.String=14]="String",o[o.Number=15]="Number",o[o.Boolean=16]="Boolean",o[o.Array=17]="Array",o[o.Object=18]="Object",o[o.Key=19]="Key",o[o.Null=20]="Null",o[o.EnumMember=21]="EnumMember",o[o.Struct=22]="Struct",o[o.Event=23]="Event",o[o.Operator=24]="Operator",o[o.TypeParameter=25]="TypeParameter"})(Dx||(Dx={}));var Ix;(function(o){o[o.Deprecated=1]="Deprecated"})(Ix||(Ix={}));var Ex;(function(o){o[o.Hidden=0]="Hidden",o[o.Blink=1]="Blink",o[o.Smooth=2]="Smooth",o[o.Phase=3]="Phase",o[o.Expand=4]="Expand",o[o.Solid=5]="Solid"})(Ex||(Ex={}));var Nx;(function(o){o[o.Line=1]="Line",o[o.Block=2]="Block",o[o.Underline=3]="Underline",o[o.LineThin=4]="LineThin",o[o.BlockOutline=5]="BlockOutline",o[o.UnderlineThin=6]="UnderlineThin"})(Nx||(Nx={}));var Tx;(function(o){o[o.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",o[o.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",o[o.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",o[o.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"})(Tx||(Tx={}));var Mx;(function(o){o[o.None=0]="None",o[o.Same=1]="Same",o[o.Indent=2]="Indent",o[o.DeepIndent=3]="DeepIndent"})(Mx||(Mx={}));const bf=class bf{static chord(e,t){return Vp(e,t)}};bf.CtrlCmd=2048,bf.Shift=1024,bf.Alt=512,bf.WinCtrl=256;let Rx=bf;function cF(){return{editor:void 0,languages:void 0,CancellationTokenSource:In,Emitter:A,KeyCode:lx,KeyMod:Rx,Position:P,Range:I,Selection:Fe,SelectionDirection:Lx,MarkerSeverity:cx,MarkerTag:dx,Uri:ve,Token:zp}}function nH(o,e){const t=o;typeof t.vscodeWindowId!="number"&&Object.defineProperty(t,"vscodeWindowId",{get:()=>e})}const _t=window;function dF(o){return o}class sH{constructor(e,t){this.lastCache=void 0,this.lastArgKey=void 0,typeof e=="function"?(this._fn=e,this._computeKey=dF):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);return this.lastArgKey!==t&&(this.lastArgKey=t,this.lastCache=this._fn(e)),this.lastCache}}class XM{get cachedValues(){return this._map}constructor(e,t){this._map=new Map,this._map2=new Map,typeof e=="function"?(this._fn=e,this._computeKey=dF):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);if(this._map2.has(t))return this._map2.get(t);const i=this._fn(e);return this._map.set(e,i),this._map2.set(t,i),i}}class ua{constructor(e){this.executor=e,this._didRun=!1}get value(){if(!this._didRun)try{this._value=this.executor()}catch(e){this._error=e}finally{this._didRun=!0}if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}function hF(o){return!o||typeof o!="string"?!0:o.trim().length===0}const oH=/{(\d+)}/g;function $p(o,...e){return e.length===0?o:o.replace(oH,function(t,i){const n=parseInt(i,10);return isNaN(n)||n<0||n>=e.length?t:e[n]})}function rH(o){return o.replace(/[<>"'&]/g,e=>{switch(e){case"<":return"<";case">":return">";case'"':return""";case"'":return"'";case"&":return"&"}return e})}function Km(o){return o.replace(/[<>&]/g,function(e){switch(e){case"<":return"<";case">":return">";case"&":return"&";default:return e}})}function xl(o){return o.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function k0(o,e){if(!o||!e)return o;const t=e.length;if(t===0||o.length===0)return o;let i=0;for(;o.indexOf(e,i)===i;)i=i+t;return o.substring(i)}function aH(o,e){if(!o||!e)return o;const t=e.length,i=o.length;if(t===0||i===0)return o;let n=i,s=-1;for(;s=o.lastIndexOf(e,n-1),!(s===-1||s+t!==n);){if(s===0)return"";n=s}return o.substring(0,n)}function lH(o){return o.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}function uF(o,e,t={}){if(!o)throw new Error("Cannot create regex from empty string");e||(o=xl(o)),t.wholeWord&&(/\B/.test(o.charAt(0))||(o="\\b"+o),/\B/.test(o.charAt(o.length-1))||(o=o+"\\b"));let i="";return t.global&&(i+="g"),t.matchCase||(i+="i"),t.multiline&&(i+="m"),t.unicode&&(i+="u"),new RegExp(o,i)}function cH(o){return o.source==="^"||o.source==="^$"||o.source==="$"||o.source==="^\\s*$"?!1:!!(o.exec("")&&o.lastIndex===0)}function va(o){return o.split(/\r\n|\r|\n/)}function dH(o){const e=[],t=o.split(/(\r\n|\r|\n)/);for(let i=0;i=0;t--){const i=o.charCodeAt(t);if(i!==32&&i!==9)return t}return-1}function Kp(o,e){return oe?1:0}function BN(o,e,t=0,i=o.length,n=0,s=e.length){for(;tc)return 1}const r=i-t,a=s-n;return ra?1:0}function Ax(o,e){return H_(o,e,0,o.length,0,e.length)}function H_(o,e,t=0,i=o.length,n=0,s=e.length){for(;t=128||c>=128)return BN(o.toLowerCase(),e.toLowerCase(),t,i,n,s);Yu(l)&&(l-=32),Yu(c)&&(c-=32);const d=l-c;if(d!==0)return d}const r=i-t,a=s-n;return ra?1:0}function yb(o){return o>=48&&o<=57}function Yu(o){return o>=97&&o<=122}function ql(o){return o>=65&&o<=90}function Qu(o,e){return o.length===e.length&&H_(o,e)===0}function WN(o,e){const t=e.length;return e.length>o.length?!1:H_(o,e,0,t)===0}function Th(o,e){const t=Math.min(o.length,e.length);let i;for(i=0;i1){const i=o.charCodeAt(e-2);if(wi(i))return HN(i,t)}return t}class VN{get offset(){return this._offset}constructor(e,t=0){this._str=e,this._len=e.length,this._offset=t}setOffset(e){this._offset=e}prevCodePoint(){const e=hH(this._str,this._offset);return this._offset-=e>=65536?2:1,e}nextCodePoint(){const e=uC(this._str,this._len,this._offset);return this._offset+=e>=65536?2:1,e}eol(){return this._offset>=this._len}}class fC{get offset(){return this._iterator.offset}constructor(e,t=0){this._iterator=new VN(e,t)}nextGraphemeLength(){const e=gC.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.nextCodePoint());for(;!t.eol();){const s=t.offset,r=e.getGraphemeBreakType(t.nextCodePoint());if(JM(n,r)){t.setOffset(s);break}n=r}return t.offset-i}prevGraphemeLength(){const e=gC.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.prevCodePoint());for(;t.offset>0;){const s=t.offset,r=e.getGraphemeBreakType(t.prevCodePoint());if(JM(r,n)){t.setOffset(s);break}n=r}return i-t.offset}eol(){return this._iterator.eol()}}function zN(o,e){return new fC(o,e).nextGraphemeLength()}function fF(o,e){return new fC(o,e).prevGraphemeLength()}function uH(o,e){e>0&&Mh(o.charCodeAt(e))&&e--;const t=e+zN(o,e);return[t-fF(o,t),t]}let Gy;function fH(){return/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDC7\uFDF0-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE35\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDD23\uDE80-\uDEA9\uDEAD-\uDF45\uDF51-\uDF81\uDF86-\uDFF6]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD4B-\uDFFF]|\uD83B[\uDC00-\uDEBB])/}function sg(o){return Gy||(Gy=fH()),Gy.test(o)}const gH=/^[\t\n\r\x20-\x7E]*$/;function D0(o){return gH.test(o)}const gF=/[\u2028\u2029]/;function mF(o){return gF.test(o)}function Rc(o){return o>=11904&&o<=55215||o>=63744&&o<=64255||o>=65281&&o<=65374}function UN(o){return o>=127462&&o<=127487||o===8986||o===8987||o===9200||o===9203||o>=9728&&o<=10175||o===11088||o===11093||o>=127744&&o<=128591||o>=128640&&o<=128764||o>=128992&&o<=129008||o>=129280&&o<=129535||o>=129648&&o<=129782}const mH="\uFEFF";function $N(o){return!!(o&&o.length>0&&o.charCodeAt(0)===65279)}function pF(o){return o=o%52,o<26?String.fromCharCode(97+o):String.fromCharCode(65+o-26)}function JM(o,e){return o===0?e!==5&&e!==7:o===2&&e===3?!1:o===4||o===2||o===3||e===4||e===2||e===3?!0:!(o===8&&(e===8||e===9||e===11||e===12)||(o===11||o===9)&&(e===9||e===10)||(o===12||o===10)&&e===10||e===5||e===13||e===7||o===1||o===13&&e===14||o===6&&e===6)}const Rd=class Rd{static getInstance(){return Rd._INSTANCE||(Rd._INSTANCE=new Rd),Rd._INSTANCE}constructor(){this._data=pH()}getGraphemeBreakType(e){if(e<32)return e===10?3:e===13?2:4;if(e<127)return 0;const t=this._data,i=t.length/3;let n=1;for(;n<=i;)if(et[3*n+1])n=2*n+1;else return t[3*n+2];return 0}};Rd._INSTANCE=null;let gC=Rd;function pH(){return JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}function _H(o,e){if(o===0)return 0;const t=bH(o,e);if(t!==void 0)return t;const i=new VN(e,o);return i.prevCodePoint(),i.offset}function bH(o,e){const t=new VN(e,o);let i=t.prevCodePoint();for(;CH(i)||i===65039||i===8419;){if(t.offset===0)return;i=t.prevCodePoint()}if(!UN(i))return;let n=t.offset;return n>0&&t.prevCodePoint()===8205&&(n=t.offset),n}function CH(o){return 127995<=o&&o<=127999}const vH=" ",Wr=class Wr{static getInstance(e){return Wr.cache.get(Array.from(e))}static getLocales(){return Wr._locales.value}constructor(e){this.confusableDictionary=e}isAmbiguous(e){return this.confusableDictionary.has(e)}getPrimaryConfusable(e){return this.confusableDictionary.get(e)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}};Wr.ambiguousCharacterData=new ua(()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,8218,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,8242,96,1370,96,1523,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71922,67,71913,67,65315,67,8557,67,8450,67,8493,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71919,87,71910,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,66293,90,71909,90,65338,90,8484,90,8488,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65297,49,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"cs":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"es":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"fr":[65374,126,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"it":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ja":[8211,45,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65292,44,65307,59],"ko":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pt-BR":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ru":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"zh-hans":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41],"zh-hant":[8211,45,65374,126,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65307,59]}')),Wr.cache=new sH({getCacheKey:JSON.stringify},e=>{function t(d){const h=new Map;for(let u=0;u!d.startsWith("_")&&d in s);r.length===0&&(r=["_default"]);let a;for(const d of r){const h=t(s[d]);a=n(a,h)}const l=t(s._common),c=i(l,a);return new Wr(c)}),Wr._locales=new ua(()=>Object.keys(Wr.ambiguousCharacterData.value).filter(e=>!e.startsWith("_")));let jp=Wr;const Cf=class Cf{static getRawData(){return JSON.parse("[9,10,11,12,13,32,127,160,173,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8203,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12288,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999]")}static getData(){return this._data||(this._data=new Set(Cf.getRawData())),this._data}static isInvisibleCharacter(e){return Cf.getData().has(e)}static get codePoints(){return Cf.getData()}};Cf._data=void 0;let jm=Cf;const vw=class vw{constructor(){this.mapWindowIdToZoomFactor=new Map}getZoomFactor(e){return this.mapWindowIdToZoomFactor.get(this.getWindowId(e))??1}getWindowId(e){return e.vscodeWindowId}};vw.INSTANCE=new vw;let Ox=vw;function _F(o,e,t){typeof e=="string"&&(e=o.matchMedia(e)),e.addEventListener("change",t)}function wH(o){return Ox.INSTANCE.getZoomFactor(o)}const Bg=navigator.userAgent,Mo=Bg.indexOf("Firefox")>=0,I0=Bg.indexOf("AppleWebKit")>=0,V_=Bg.indexOf("Chrome")>=0,Ac=!V_&&Bg.indexOf("Safari")>=0,bF=!V_&&!Ac&&I0;Bg.indexOf("Electron/")>=0;const eR=Bg.indexOf("Android")>=0;let Zy=!1;if(typeof _t.matchMedia=="function"){const o=_t.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),e=_t.matchMedia("(display-mode: fullscreen)");Zy=o.matches,_F(_t,o,({matches:t})=>{Zy&&e.matches||(Zy=t)})}const KN={clipboard:{writeText:oC||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:oC||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},pointerEvents:_t.PointerEvent&&("ontouchstart"in _t||navigator.maxTouchPoints>0)};function Fx(o,e){if(typeof o=="number"){if(o===0)return null;const t=(o&65535)>>>0,i=(o&4294901760)>>>16;return i!==0?new Yy([Sb(t,e),Sb(i,e)]):new Yy([Sb(t,e)])}else{const t=[];for(let i=0;i{const r=e.token.onCancellationRequested(()=>{r.dispose(),s(new ha)});Promise.resolve(t).then(a=>{r.dispose(),e.dispose(),n(a)},a=>{r.dispose(),e.dispose(),s(a)})});return new class{cancel(){e.cancel(),e.dispose()}then(n,s){return i.then(n,s)}catch(n){return this.then(void 0,n)}finally(n){return i.finally(n)}}}function TH(o,e,t){return new Promise((i,n)=>{const s=e.onCancellationRequested(()=>{s.dispose(),i(t)});o.then(i,n).finally(()=>s.dispose())})}class MH{constructor(){this.isDisposed=!1,this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null}queue(e){if(this.isDisposed)return Promise.reject(new Error("Throttler is disposed"));if(this.activePromise){if(this.queuedPromiseFactory=e,!this.queuedPromise){const t=()=>{if(this.queuedPromise=null,this.isDisposed)return;const i=this.queue(this.queuedPromiseFactory);return this.queuedPromiseFactory=null,i};this.queuedPromise=new Promise(i=>{this.activePromise.then(t,t).then(i)})}return new Promise((t,i)=>{this.queuedPromise.then(t,i)})}return this.activePromise=e(),new Promise((t,i)=>{this.activePromise.then(n=>{this.activePromise=null,t(n)},n=>{this.activePromise=null,i(n)})})}dispose(){this.isDisposed=!0}}const RH=(o,e)=>{let t=!0;const i=setTimeout(()=>{t=!1,e()},o);return{isTriggered:()=>t,dispose:()=>{clearTimeout(i),t=!1}}},AH=o=>{let e=!0;return queueMicrotask(()=>{e&&(e=!1,o())}),{isTriggered:()=>e,dispose:()=>{e=!1}}};class z_{constructor(e){this.defaultDelay=e,this.deferred=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}trigger(e,t=this.defaultDelay){this.task=e,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise((n,s)=>{this.doResolve=n,this.doReject=s}).then(()=>{if(this.completionPromise=null,this.doResolve=null,this.task){const n=this.task;return this.task=null,n()}}));const i=()=>{this.deferred=null,this.doResolve?.(null)};return this.deferred=t===CF?AH(i):RH(t,i),this.completionPromise}isTriggered(){return!!this.deferred?.isTriggered()}cancel(){this.cancelTimeout(),this.completionPromise&&(this.doReject?.(new ha),this.completionPromise=null)}cancelTimeout(){this.deferred?.dispose(),this.deferred=null}dispose(){this.cancel()}}class vF{constructor(e){this.delayer=new z_(e),this.throttler=new MH}trigger(e,t){return this.delayer.trigger(()=>this.throttler.queue(e),t)}cancel(){this.delayer.cancel()}dispose(){this.delayer.dispose(),this.throttler.dispose()}}function og(o,e){return e?new Promise((t,i)=>{const n=setTimeout(()=>{s.dispose(),t()},o),s=e.onCancellationRequested(()=>{clearTimeout(n),s.dispose(),i(new ha)})}):wa(t=>og(o,t))}function rg(o,e=0,t){const i=setTimeout(()=>{o(),t&&n.dispose()},e),n=_e(()=>{clearTimeout(i),t?.deleteAndLeak(n)});return t?.add(n),n}class wr{constructor(e,t){this._isDisposed=!1,this._token=-1,typeof e=="function"&&typeof t=="number"&&this.setIfNotSet(e,t)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(e,t){if(this._isDisposed)throw new nt("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,e()},t)}setIfNotSet(e,t){if(this._isDisposed)throw new nt("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,e()},t))}}class jN{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(e,t,i=globalThis){if(this.isDisposed)throw new nt("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();const n=i.setInterval(()=>{e()},t);this.disposable=_e(()=>{i.clearInterval(n),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}}class ci{constructor(e,t){this.timeoutToken=-1,this.runner=e,this.timeout=t,this.timeoutHandler=this.onTimeout.bind(this)}dispose(){this.cancel(),this.runner=null}cancel(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=-1)}schedule(e=this.timeout){this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,e)}get delay(){return this.timeout}set delay(e){this.timeout=e}isScheduled(){return this.timeoutToken!==-1}onTimeout(){this.timeoutToken=-1,this.runner&&this.doRun()}doRun(){this.runner?.()}}let wF,qm;(function(){typeof globalThis.requestIdleCallback!="function"||typeof globalThis.cancelIdleCallback!="function"?qm=(o,e)=>{z5(()=>{if(t)return;const i=Date.now()+15;e(Object.freeze({didTimeout:!0,timeRemaining(){return Math.max(0,i-Date.now())}}))});let t=!1;return{dispose(){t||(t=!0)}}}:qm=(o,e,t)=>{const i=o.requestIdleCallback(e,typeof t=="number"?{timeout:t}:void 0);let n=!1;return{dispose(){n||(n=!0,o.cancelIdleCallback(i))}}},wF=o=>qm(globalThis,o)})();class yF{constructor(e,t){this._didRun=!1,this._executor=()=>{try{this._value=t()}catch(i){this._error=i}finally{this._didRun=!0}},this._handle=qm(e,()=>this._executor())}dispose(){this._handle.dispose()}get value(){if(this._didRun||(this._handle.dispose(),this._executor()),this._error)throw this._error;return this._value}get isInitialized(){return this._didRun}}class PH extends yF{constructor(e){super(globalThis,e)}}class qN{get isRejected(){return this.outcome?.outcome===1}get isSettled(){return!!this.outcome}constructor(){this.p=new Promise((e,t)=>{this.completeCallback=e,this.errorCallback=t})}complete(e){return new Promise(t=>{this.completeCallback(e),this.outcome={outcome:0,value:e},t()})}error(e){return new Promise(t=>{this.errorCallback(e),this.outcome={outcome:1,value:e},t()})}cancel(){return this.error(new ha)}}var Wx;(function(o){async function e(i){let n;const s=await Promise.all(i.map(r=>r.then(a=>a,a=>{n||(n=a)})));if(typeof n<"u")throw n;return s}o.settled=e;function t(i){return new Promise(async(n,s)=>{try{await i(n,s)}catch(r){s(r)}})}o.withAsyncBody=t})(Wx||(Wx={}));const es=class es{static fromArray(e){return new es(t=>{t.emitMany(e)})}static fromPromise(e){return new es(async t=>{t.emitMany(await e)})}static fromPromises(e){return new es(async t=>{await Promise.all(e.map(async i=>t.emitOne(await i)))})}static merge(e){return new es(async t=>{await Promise.all(e.map(async i=>{for await(const n of i)t.emitOne(n)}))})}constructor(e,t){this._state=0,this._results=[],this._error=null,this._onReturn=t,this._onStateChanged=new A,queueMicrotask(async()=>{const i={emitOne:n=>this.emitOne(n),emitMany:n=>this.emitMany(n),reject:n=>this.reject(n)};try{await Promise.resolve(e(i)),this.resolve()}catch(n){this.reject(n)}finally{i.emitOne=void 0,i.emitMany=void 0,i.reject=void 0}})}[Symbol.asyncIterator](){let e=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(e(this._onReturn?.(),{done:!0,value:void 0})}}static map(e,t){return new es(async i=>{for await(const n of e)i.emitOne(t(n))})}map(e){return es.map(this,e)}static filter(e,t){return new es(async i=>{for await(const n of e)t(n)&&i.emitOne(n)})}filter(e){return es.filter(this,e)}static coalesce(e){return es.filter(e,t=>!!t)}coalesce(){return es.coalesce(this)}static async toPromise(e){const t=[];for await(const i of e)t.push(i);return t}toPromise(){return es.toPromise(this)}emitOne(e){this._state===0&&(this._results.push(e),this._onStateChanged.fire())}emitMany(e){this._state===0&&(this._results=this._results.concat(e),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(e){this._state===0&&(this._state=2,this._error=e,this._onStateChanged.fire())}};es.EMPTY=es.fromArray([]);let Ms=es;class OH extends Ms{constructor(e,t){super(t),this._source=e}cancel(){this._source.cancel()}}function FH(o){const e=new In,t=o(e.token);return new OH(e,async i=>{const n=e.token.onCancellationRequested(()=>{n.dispose(),e.dispose(),i.reject(new ha)});try{for await(const s of t){if(e.token.isCancellationRequested)return;i.emitOne(s)}n.dispose(),e.dispose()}catch(s){n.dispose(),e.dispose(),i.reject(s)}})}const{entries:SF,setPrototypeOf:iR,isFrozen:BH,getPrototypeOf:WH,getOwnPropertyDescriptor:HH}=Object;let{freeze:us,seal:Ro,create:LF}=Object,{apply:Hx,construct:Vx}=typeof Reflect<"u"&&Reflect;us||(us=function(e){return e});Ro||(Ro=function(e){return e});Hx||(Hx=function(e,t,i){return e.apply(t,i)});Vx||(Vx=function(e,t){return new e(...t)});const Lb=lo(Array.prototype.forEach),nR=lo(Array.prototype.pop),im=lo(Array.prototype.push),S1=lo(String.prototype.toLowerCase),Qy=lo(String.prototype.toString),sR=lo(String.prototype.match),nm=lo(String.prototype.replace),VH=lo(String.prototype.indexOf),zH=lo(String.prototype.trim),Yo=lo(Object.prototype.hasOwnProperty),Qn=lo(RegExp.prototype.test),sm=UH(TypeError);function lo(o){return function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),n=1;n2&&arguments[2]!==void 0?arguments[2]:S1;iR&&iR(o,null);let i=e.length;for(;i--;){let n=e[i];if(typeof n=="string"){const s=t(n);s!==n&&(BH(e)||(e[i]=s),n=s)}o[n]=!0}return o}function $H(o){for(let e=0;e/gm),ZH=Ro(/\${[\w\W]*}/gm),YH=Ro(/^data-[\-\w.\u00B7-\uFFFF]/),QH=Ro(/^aria-[\-\w]+$/),xF=Ro(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),XH=Ro(/^(?:\w+script|data):/i),JH=Ro(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),kF=Ro(/^html$/i),eV=Ro(/^[a-z][.\w]*(-[.\w]+)+$/i);var cR=Object.freeze({__proto__:null,MUSTACHE_EXPR:qH,ERB_EXPR:GH,TMPLIT_EXPR:ZH,DATA_ATTR:YH,ARIA_ATTR:QH,IS_ALLOWED_URI:xF,IS_SCRIPT_OR_DATA:XH,ATTR_WHITESPACE:JH,DOCTYPE_NAME:kF,CUSTOM_ELEMENT:eV});const rm={element:1,text:3,progressingInstruction:7,comment:8,document:9},tV=function(){return typeof window>"u"?null:window},iV=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let i=null;const n="data-tt-policy-suffix";t&&t.hasAttribute(n)&&(i=t.getAttribute(n));const s="dompurify"+(i?"#"+i:"");try{return e.createPolicy(s,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return console.warn("TrustedTypes policy "+s+" could not be created."),null}};function DF(){let o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:tV();const e=Oe=>DF(Oe);if(e.version="3.1.7",e.removed=[],!o||!o.document||o.document.nodeType!==rm.document)return e.isSupported=!1,e;let{document:t}=o;const i=t,n=i.currentScript,{DocumentFragment:s,HTMLTemplateElement:r,Node:a,Element:l,NodeFilter:c,NamedNodeMap:d=o.NamedNodeMap||o.MozNamedAttrMap,HTMLFormElement:h,DOMParser:u,trustedTypes:f}=o,g=l.prototype,p=om(g,"cloneNode"),_=om(g,"remove"),b=om(g,"nextSibling"),C=om(g,"childNodes"),w=om(g,"parentNode");if(typeof r=="function"){const Oe=t.createElement("template");Oe.content&&Oe.content.ownerDocument&&(t=Oe.content.ownerDocument)}let v,y="";const{implementation:x,createNodeIterator:L,createDocumentFragment:E,getElementsByTagName:N}=t,{importNode:H}=i;let F={};e.isSupported=typeof SF=="function"&&typeof w=="function"&&x&&x.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:W,ERB_EXPR:j,TMPLIT_EXPR:B,DATA_ATTR:G,ARIA_ATTR:ne,IS_SCRIPT_OR_DATA:ae,ATTR_WHITESPACE:de,CUSTOM_ELEMENT:se}=cR;let{IS_ALLOWED_URI:be}=cR,we=null;const Rt=mt({},[...oR,...Xy,...Jy,...eS,...rR]);let ct=null;const Bt=mt({},[...aR,...tS,...lR,...xb]);let ht=Object.seal(LF(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ei=null,js=null,fi=!0,po=!0,Al=!1,fb=!0,Pl=!1,Yg=!0,Ia=!1,Qg=!1,Xg=!1,Ol=!1,vu=!1,wu=!1,Yc=!0,gb=!1;const mb="user-content-";let yu=!0,Qc=!1,Dr={},Fl=null;const Su=mt({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let pb=null;const Xc=mt({},["audio","video","img","source","image","track"]);let Ea=null;const bs=mt({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ir="http://www.w3.org/1998/Math/MathML",Na="http://www.w3.org/2000/svg",Ti="http://www.w3.org/1999/xhtml";let _o=Ti,Lu=!1,Uo=null;const Ot=mt({},[Ir,Na,Ti],Qy);let Jc=null;const Vy=["application/xhtml+xml","text/html"],zy="text/html";let Hi=null,Bl=null;const Uy=t.createElement("form"),_b=function($){return $ instanceof RegExp||$ instanceof Function},Jg=function(){let $=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(Bl&&Bl===$)){if((!$||typeof $!="object")&&($={}),$=hd($),Jc=Vy.indexOf($.PARSER_MEDIA_TYPE)===-1?zy:$.PARSER_MEDIA_TYPE,Hi=Jc==="application/xhtml+xml"?Qy:S1,we=Yo($,"ALLOWED_TAGS")?mt({},$.ALLOWED_TAGS,Hi):Rt,ct=Yo($,"ALLOWED_ATTR")?mt({},$.ALLOWED_ATTR,Hi):Bt,Uo=Yo($,"ALLOWED_NAMESPACES")?mt({},$.ALLOWED_NAMESPACES,Qy):Ot,Ea=Yo($,"ADD_URI_SAFE_ATTR")?mt(hd(bs),$.ADD_URI_SAFE_ATTR,Hi):bs,pb=Yo($,"ADD_DATA_URI_TAGS")?mt(hd(Xc),$.ADD_DATA_URI_TAGS,Hi):Xc,Fl=Yo($,"FORBID_CONTENTS")?mt({},$.FORBID_CONTENTS,Hi):Su,ei=Yo($,"FORBID_TAGS")?mt({},$.FORBID_TAGS,Hi):{},js=Yo($,"FORBID_ATTR")?mt({},$.FORBID_ATTR,Hi):{},Dr=Yo($,"USE_PROFILES")?$.USE_PROFILES:!1,fi=$.ALLOW_ARIA_ATTR!==!1,po=$.ALLOW_DATA_ATTR!==!1,Al=$.ALLOW_UNKNOWN_PROTOCOLS||!1,fb=$.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Pl=$.SAFE_FOR_TEMPLATES||!1,Yg=$.SAFE_FOR_XML!==!1,Ia=$.WHOLE_DOCUMENT||!1,Ol=$.RETURN_DOM||!1,vu=$.RETURN_DOM_FRAGMENT||!1,wu=$.RETURN_TRUSTED_TYPE||!1,Xg=$.FORCE_BODY||!1,Yc=$.SANITIZE_DOM!==!1,gb=$.SANITIZE_NAMED_PROPS||!1,yu=$.KEEP_CONTENT!==!1,Qc=$.IN_PLACE||!1,be=$.ALLOWED_URI_REGEXP||xF,_o=$.NAMESPACE||Ti,ht=$.CUSTOM_ELEMENT_HANDLING||{},$.CUSTOM_ELEMENT_HANDLING&&_b($.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(ht.tagNameCheck=$.CUSTOM_ELEMENT_HANDLING.tagNameCheck),$.CUSTOM_ELEMENT_HANDLING&&_b($.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(ht.attributeNameCheck=$.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),$.CUSTOM_ELEMENT_HANDLING&&typeof $.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(ht.allowCustomizedBuiltInElements=$.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Pl&&(po=!1),vu&&(Ol=!0),Dr&&(we=mt({},rR),ct=[],Dr.html===!0&&(mt(we,oR),mt(ct,aR)),Dr.svg===!0&&(mt(we,Xy),mt(ct,tS),mt(ct,xb)),Dr.svgFilters===!0&&(mt(we,Jy),mt(ct,tS),mt(ct,xb)),Dr.mathMl===!0&&(mt(we,eS),mt(ct,lR),mt(ct,xb))),$.ADD_TAGS&&(we===Rt&&(we=hd(we)),mt(we,$.ADD_TAGS,Hi)),$.ADD_ATTR&&(ct===Bt&&(ct=hd(ct)),mt(ct,$.ADD_ATTR,Hi)),$.ADD_URI_SAFE_ATTR&&mt(Ea,$.ADD_URI_SAFE_ATTR,Hi),$.FORBID_CONTENTS&&(Fl===Su&&(Fl=hd(Fl)),mt(Fl,$.FORBID_CONTENTS,Hi)),yu&&(we["#text"]=!0),Ia&&mt(we,["html","head","body"]),we.table&&(mt(we,["tbody"]),delete ei.tbody),$.TRUSTED_TYPES_POLICY){if(typeof $.TRUSTED_TYPES_POLICY.createHTML!="function")throw sm('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof $.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw sm('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');v=$.TRUSTED_TYPES_POLICY,y=v.createHTML("")}else v===void 0&&(v=iV(f,n)),v!==null&&typeof y=="string"&&(y=v.createHTML(""));us&&us($),Bl=$}},Xe=mt({},["mi","mo","mn","ms","mtext"]),T=mt({},["annotation-xml"]),M=mt({},["title","style","font","a","script"]),R=mt({},[...Xy,...Jy,...KH]),O=mt({},[...eS,...jH]),V=function($){let ue=w($);(!ue||!ue.tagName)&&(ue={namespaceURI:_o,tagName:"template"});const Ie=S1($.tagName),ui=S1(ue.tagName);return Uo[$.namespaceURI]?$.namespaceURI===Na?ue.namespaceURI===Ti?Ie==="svg":ue.namespaceURI===Ir?Ie==="svg"&&(ui==="annotation-xml"||Xe[ui]):!!R[Ie]:$.namespaceURI===Ir?ue.namespaceURI===Ti?Ie==="math":ue.namespaceURI===Na?Ie==="math"&&T[ui]:!!O[Ie]:$.namespaceURI===Ti?ue.namespaceURI===Na&&!T[ui]||ue.namespaceURI===Ir&&!Xe[ui]?!1:!O[Ie]&&(M[Ie]||!R[Ie]):!!(Jc==="application/xhtml+xml"&&Uo[$.namespaceURI]):!1},Y=function($){im(e.removed,{element:$});try{w($).removeChild($)}catch{_($)}},te=function($,ue){try{im(e.removed,{attribute:ue.getAttributeNode($),from:ue})}catch{im(e.removed,{attribute:null,from:ue})}if(ue.removeAttribute($),$==="is"&&!ct[$])if(Ol||vu)try{Y(ue)}catch{}else try{ue.setAttribute($,"")}catch{}},me=function($){let ue=null,Ie=null;if(Xg)$=""+$;else{const pn=sR($,/^[\r\n\t ]+/);Ie=pn&&pn[0]}Jc==="application/xhtml+xml"&&_o===Ti&&($=''+$+"");const ui=v?v.createHTML($):$;if(_o===Ti)try{ue=new u().parseFromString(ui,Jc)}catch{}if(!ue||!ue.documentElement){ue=x.createDocument(_o,"template",null);try{ue.documentElement.innerHTML=Lu?y:ui}catch{}}const On=ue.body||ue.documentElement;return $&&Ie&&On.insertBefore(t.createTextNode(Ie),On.childNodes[0]||null),_o===Ti?N.call(ue,Ia?"html":"body")[0]:Ia?ue.documentElement:On},ye=function($){return L.call($.ownerDocument||$,$,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},Ve=function($){return $ instanceof h&&(typeof $.nodeName!="string"||typeof $.textContent!="string"||typeof $.removeChild!="function"||!($.attributes instanceof d)||typeof $.removeAttribute!="function"||typeof $.setAttribute!="function"||typeof $.namespaceURI!="string"||typeof $.insertBefore!="function"||typeof $.hasChildNodes!="function")},ft=function($){return typeof a=="function"&&$ instanceof a},Ct=function($,ue,Ie){F[$]&&Lb(F[$],ui=>{ui.call(e,ue,Ie,Bl)})},Si=function($){let ue=null;if(Ct("beforeSanitizeElements",$,null),Ve($))return Y($),!0;const Ie=Hi($.nodeName);if(Ct("uponSanitizeElement",$,{tagName:Ie,allowedTags:we}),$.hasChildNodes()&&!ft($.firstElementChild)&&Qn(/<[/\w]/g,$.innerHTML)&&Qn(/<[/\w]/g,$.textContent)||$.nodeType===rm.progressingInstruction||Yg&&$.nodeType===rm.comment&&Qn(/<[/\w]/g,$.data))return Y($),!0;if(!we[Ie]||ei[Ie]){if(!ei[Ie]&&Zn(Ie)&&(ht.tagNameCheck instanceof RegExp&&Qn(ht.tagNameCheck,Ie)||ht.tagNameCheck instanceof Function&&ht.tagNameCheck(Ie)))return!1;if(yu&&!Fl[Ie]){const ui=w($)||$.parentNode,On=C($)||$.childNodes;if(On&&ui){const pn=On.length;for(let Cs=pn-1;Cs>=0;--Cs){const Er=p(On[Cs],!0);Er.__removalCount=($.__removalCount||0)+1,ui.insertBefore(Er,b($))}}}return Y($),!0}return $ instanceof l&&!V($)||(Ie==="noscript"||Ie==="noembed"||Ie==="noframes")&&Qn(/<\/no(script|embed|frames)/i,$.innerHTML)?(Y($),!0):(Pl&&$.nodeType===rm.text&&(ue=$.textContent,Lb([W,j,B],ui=>{ue=nm(ue,ui," ")}),$.textContent!==ue&&(im(e.removed,{element:$.cloneNode()}),$.textContent=ue)),Ct("afterSanitizeElements",$,null),!1)},Gt=function($,ue,Ie){if(Yc&&(ue==="id"||ue==="name")&&(Ie in t||Ie in Uy))return!1;if(!(po&&!js[ue]&&Qn(G,ue))){if(!(fi&&Qn(ne,ue))){if(!ct[ue]||js[ue]){if(!(Zn($)&&(ht.tagNameCheck instanceof RegExp&&Qn(ht.tagNameCheck,$)||ht.tagNameCheck instanceof Function&&ht.tagNameCheck($))&&(ht.attributeNameCheck instanceof RegExp&&Qn(ht.attributeNameCheck,ue)||ht.attributeNameCheck instanceof Function&&ht.attributeNameCheck(ue))||ue==="is"&&ht.allowCustomizedBuiltInElements&&(ht.tagNameCheck instanceof RegExp&&Qn(ht.tagNameCheck,Ie)||ht.tagNameCheck instanceof Function&&ht.tagNameCheck(Ie))))return!1}else if(!Ea[ue]){if(!Qn(be,nm(Ie,de,""))){if(!((ue==="src"||ue==="xlink:href"||ue==="href")&&$!=="script"&&VH(Ie,"data:")===0&&pb[$])){if(!(Al&&!Qn(ae,nm(Ie,de,"")))){if(Ie)return!1}}}}}}return!0},Zn=function($){return $!=="annotation-xml"&&sR($,se)},qs=function($){Ct("beforeSanitizeAttributes",$,null);const{attributes:ue}=$;if(!ue)return;const Ie={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ct};let ui=ue.length;for(;ui--;){const On=ue[ui],{name:pn,namespaceURI:Cs,value:Er}=On,tm=Hi(pn);let Yn=pn==="value"?Er:zH(Er);if(Ie.attrName=tm,Ie.attrValue=Yn,Ie.keepAttr=!0,Ie.forceKeepAttr=void 0,Ct("uponSanitizeAttribute",$,Ie),Yn=Ie.attrValue,Ie.forceKeepAttr||(te(pn,$),!Ie.keepAttr))continue;if(!fb&&Qn(/\/>/i,Yn)){te(pn,$);continue}Pl&&Lb([W,j,B],TM=>{Yn=nm(Yn,TM," ")});const NM=Hi($.nodeName);if(Gt(NM,tm,Yn)){if(gb&&(tm==="id"||tm==="name")&&(te(pn,$),Yn=mb+Yn),Yg&&Qn(/((--!?|])>)|<\/(style|title)/i,Yn)){te(pn,$);continue}if(v&&typeof f=="object"&&typeof f.getAttributeType=="function"&&!Cs)switch(f.getAttributeType(NM,tm)){case"TrustedHTML":{Yn=v.createHTML(Yn);break}case"TrustedScriptURL":{Yn=v.createScriptURL(Yn);break}}try{Cs?$.setAttributeNS(Cs,pn,Yn):$.setAttribute(pn,Yn),Ve($)?Y($):nR(e.removed)}catch{}}}Ct("afterSanitizeAttributes",$,null)},em=function Oe($){let ue=null;const Ie=ye($);for(Ct("beforeSanitizeShadowDOM",$,null);ue=Ie.nextNode();)Ct("uponSanitizeShadowNode",ue,null),!Si(ue)&&(ue.content instanceof s&&Oe(ue.content),qs(ue));Ct("afterSanitizeShadowDOM",$,null)};return e.sanitize=function(Oe){let $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ue=null,Ie=null,ui=null,On=null;if(Lu=!Oe,Lu&&(Oe=""),typeof Oe!="string"&&!ft(Oe))if(typeof Oe.toString=="function"){if(Oe=Oe.toString(),typeof Oe!="string")throw sm("dirty is not a string, aborting")}else throw sm("toString is not a function");if(!e.isSupported)return Oe;if(Qg||Jg($),e.removed=[],typeof Oe=="string"&&(Qc=!1),Qc){if(Oe.nodeName){const Er=Hi(Oe.nodeName);if(!we[Er]||ei[Er])throw sm("root node is forbidden and cannot be sanitized in-place")}}else if(Oe instanceof a)ue=me(""),Ie=ue.ownerDocument.importNode(Oe,!0),Ie.nodeType===rm.element&&Ie.nodeName==="BODY"||Ie.nodeName==="HTML"?ue=Ie:ue.appendChild(Ie);else{if(!Ol&&!Pl&&!Ia&&Oe.indexOf("<")===-1)return v&&wu?v.createHTML(Oe):Oe;if(ue=me(Oe),!ue)return Ol?null:wu?y:""}ue&&Xg&&Y(ue.firstChild);const pn=ye(Qc?Oe:ue);for(;ui=pn.nextNode();)Si(ui)||(ui.content instanceof s&&em(ui.content),qs(ui));if(Qc)return Oe;if(Ol){if(vu)for(On=E.call(ue.ownerDocument);ue.firstChild;)On.appendChild(ue.firstChild);else On=ue;return(ct.shadowroot||ct.shadowrootmode)&&(On=H.call(i,On,!0)),On}let Cs=Ia?ue.outerHTML:ue.innerHTML;return Ia&&we["!doctype"]&&ue.ownerDocument&&ue.ownerDocument.doctype&&ue.ownerDocument.doctype.name&&Qn(kF,ue.ownerDocument.doctype.name)&&(Cs=" -`+Cs),Pl&&Lb([W,j,B],Er=>{Cs=nm(Cs,Er," ")}),v&&wu?v.createHTML(Cs):Cs},e.setConfig=function(){let Oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Jg(Oe),Qg=!0},e.clearConfig=function(){Bl=null,Qg=!1},e.isValidAttribute=function(Oe,$,ue){Bl||Jg({});const Ie=Hi(Oe),ui=Hi($);return Gt(Ie,ui,ue)},e.addHook=function(Oe,$){typeof $=="function"&&(F[Oe]=F[Oe]||[],im(F[Oe],$))},e.removeHook=function(Oe){if(F[Oe])return nR(F[Oe])},e.removeHooks=function(Oe){F[Oe]&&(F[Oe]=[])},e.removeAllHooks=function(){F={}},e}var ya=DF();ya.version;ya.isSupported;const IF=ya.sanitize;ya.setConfig;ya.clearConfig;ya.isValidAttribute;const EF=ya.addHook,NF=ya.removeHook;ya.removeHooks;ya.removeAllHooks;var Te;(function(o){o.inMemory="inmemory",o.vscode="vscode",o.internal="private",o.walkThrough="walkThrough",o.walkThroughSnippet="walkThroughSnippet",o.http="http",o.https="https",o.file="file",o.mailto="mailto",o.untitled="untitled",o.data="data",o.command="command",o.vscodeRemote="vscode-remote",o.vscodeRemoteResource="vscode-remote-resource",o.vscodeManagedRemoteResource="vscode-managed-remote-resource",o.vscodeUserData="vscode-userdata",o.vscodeCustomEditor="vscode-custom-editor",o.vscodeNotebookCell="vscode-notebook-cell",o.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",o.vscodeNotebookCellMetadataDiff="vscode-notebook-cell-metadata-diff",o.vscodeNotebookCellOutput="vscode-notebook-cell-output",o.vscodeNotebookCellOutputDiff="vscode-notebook-cell-output-diff",o.vscodeNotebookMetadata="vscode-notebook-metadata",o.vscodeInteractiveInput="vscode-interactive-input",o.vscodeSettings="vscode-settings",o.vscodeWorkspaceTrust="vscode-workspace-trust",o.vscodeTerminal="vscode-terminal",o.vscodeChatCodeBlock="vscode-chat-code-block",o.vscodeChatCodeCompareBlock="vscode-chat-code-compare-block",o.vscodeChatSesssion="vscode-chat-editor",o.webviewPanel="webview-panel",o.vscodeWebview="vscode-webview",o.extension="extension",o.vscodeFileResource="vscode-file",o.tmp="tmp",o.vsls="vsls",o.vscodeSourceControl="vscode-scm",o.commentsInput="comment",o.codeSetting="code-setting",o.outputChannel="output"})(Te||(Te={}));function GN(o,e){return ve.isUri(o)?Qu(o.scheme,e):WN(o,e+":")}function zx(o,...e){return e.some(t=>GN(o,t))}const nV="tkn";class sV{constructor(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null,this._serverRootPath="/"}setPreferredWebSchema(e){this._preferredWebSchema=e}get _remoteResourcesPath(){return oi.join(this._serverRootPath,Te.vscodeRemoteResource)}rewrite(e){if(this._delegate)try{return this._delegate(e)}catch(a){return Ze(a),e}const t=e.authority;let i=this._hosts[t];i&&i.indexOf(":")!==-1&&i.indexOf("[")===-1&&(i=`[${i}]`);const n=this._ports[t],s=this._connectionTokens[t];let r=`path=${encodeURIComponent(e.path)}`;return typeof s=="string"&&(r+=`&${nV}=${encodeURIComponent(s)}`),ve.from({scheme:Og?this._preferredWebSchema:Te.vscodeRemoteResource,authority:`${i}:${n}`,path:this._remoteResourcesPath,query:r})}}const TF=new sV,oV="vscode-app",Lp=class Lp{asBrowserUri(e){const t=this.toUri(e);return this.uriToBrowserUri(t)}uriToBrowserUri(e){return e.scheme===Te.vscodeRemote?TF.rewrite(e):e.scheme===Te.file&&(oC||_6===`${Te.vscodeFileResource}://${Lp.FALLBACK_AUTHORITY}`)?e.with({scheme:Te.vscodeFileResource,authority:e.authority||Lp.FALLBACK_AUTHORITY,query:null,fragment:null}):e}toUri(e,t){if(ve.isUri(e))return e;if(globalThis._VSCODE_FILE_ROOT){const i=globalThis._VSCODE_FILE_ROOT;if(/^\w[\w\d+.-]*:\/\//.test(i))return ve.joinPath(ve.parse(i,!0),e);const n=HW(i,e);return ve.file(n)}return ve.parse(t.toUrl(e))}};Lp.FALLBACK_AUTHORITY=oV;let Ux=Lp;const E0=new Ux;var $x;(function(o){const e=new Map([["1",{"Cross-Origin-Opener-Policy":"same-origin"}],["2",{"Cross-Origin-Embedder-Policy":"require-corp"}],["3",{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}]]);o.CoopAndCoep=Object.freeze(e.get("3"));const t="vscode-coi";function i(s){let r;typeof s=="string"?r=new URL(s).searchParams:s instanceof URL?r=s.searchParams:ve.isUri(s)&&(r=new URL(s.toString(!0)).searchParams);const a=r?.get(t);if(a)return e.get(a)}o.getHeadersFromQuery=i;function n(s,r,a){if(!globalThis.crossOriginIsolated)return;const l=r&&a?"3":a?"2":"1";s instanceof URLSearchParams?s.set(t,l):s[t]=l}o.addSearchParam=n})($x||($x={}));function ZN(o){return N0(o,0)}function N0(o,e){switch(typeof o){case"object":return o===null?ol(349,e):Array.isArray(o)?aV(o,e):lV(o,e);case"string":return YN(o,e);case"boolean":return rV(o,e);case"number":return ol(o,e);case"undefined":return ol(937,e);default:return ol(617,e)}}function ol(o,e){return(e<<5)-e+o|0}function rV(o,e){return ol(o?433:863,e)}function YN(o,e){e=ol(149417,e);for(let t=0,i=o.length;tN0(i,t),e)}function lV(o,e){return e=ol(181387,e),Object.keys(o).sort().reduce((t,i)=>(t=YN(i,t),N0(o[i],t)),e)}function iS(o,e,t=32){const i=t-e,n=~((1<>>i)>>>0}function dR(o,e=0,t=o.byteLength,i=0){for(let n=0;nt.toString(16).padStart(2,"0")).join(""):cV((o>>>0).toString(16),e/4)}const ww=class ww{constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(e){const t=e.length;if(t===0)return;const i=this._buff;let n=this._buffLen,s=this._leftoverHighSurrogate,r,a;for(s!==0?(r=s,a=-1,s=0):(r=e.charCodeAt(0),a=0);;){let l=r;if(wi(r))if(a+1>>6,e[t++]=128|(i&63)>>>0):i<65536?(e[t++]=224|(i&61440)>>>12,e[t++]=128|(i&4032)>>>6,e[t++]=128|(i&63)>>>0):(e[t++]=240|(i&1835008)>>>18,e[t++]=128|(i&258048)>>>12,e[t++]=128|(i&4032)>>>6,e[t++]=128|(i&63)>>>0),t>=64&&(this._step(),t-=64,this._totalLen+=64,e[0]=e[64],e[1]=e[65],e[2]=e[66]),t}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),am(this._h0)+am(this._h1)+am(this._h2)+am(this._h3)+am(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,dR(this._buff,this._buffLen),this._buffLen>56&&(this._step(),dR(this._buff));const e=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(e/4294967296),!1),this._buffDV.setUint32(60,e%4294967296,!1),this._step()}_step(){const e=ww._bigBlock32,t=this._buffDV;for(let h=0;h<64;h+=4)e.setUint32(h,t.getUint32(h,!1),!1);for(let h=64;h<320;h+=4)e.setUint32(h,iS(e.getUint32(h-12,!1)^e.getUint32(h-32,!1)^e.getUint32(h-56,!1)^e.getUint32(h-64,!1),1),!1);let i=this._h0,n=this._h1,s=this._h2,r=this._h3,a=this._h4,l,c,d;for(let h=0;h<80;h++)h<20?(l=n&s|~n&r,c=1518500249):h<40?(l=n^s^r,c=1859775393):h<60?(l=n&s|n&r|s&r,c=2400959708):(l=n^s^r,c=3395469782),d=iS(i,5)+l+a+c+e.getUint32(h*4,!1)&4294967295,a=r,r=s,s=iS(n,30),n=i,i=d;this._h0=this._h0+i&4294967295,this._h1=this._h1+n&4294967295,this._h2=this._h2+s&4294967295,this._h3=this._h3+r&4294967295,this._h4=this._h4+a&4294967295}};ww._bigBlock32=new DataView(new ArrayBuffer(320));let Kx=ww;const{getWindow:fe,getWindows:MF,getWindowsCount:dV,getWindowId:mC,getWindowById:hR,onDidRegisterWindow:T0,onWillUnregisterWindow:hV,onDidUnregisterWindow:uV}=(function(){const o=new Map;nH(_t,1);const e={window:_t,disposables:new X};o.set(_t.vscodeWindowId,e);const t=new A,i=new A,n=new A;function s(r,a){return(typeof r=="number"?o.get(r):void 0)??(a?e:void 0)}return{onDidRegisterWindow:t.event,onWillUnregisterWindow:n.event,onDidUnregisterWindow:i.event,registerWindow(r){if(o.has(r.vscodeWindowId))return z.None;const a=new X,l={window:r,disposables:a.add(new X)};return o.set(r.vscodeWindowId,l),a.add(_e(()=>{o.delete(r.vscodeWindowId),i.fire(r)})),a.add(U(r,ee.BEFORE_UNLOAD,()=>{n.fire(r)})),t.fire(l),a},getWindows(){return o.values()},getWindowsCount(){return o.size},getWindowId(r){return r.vscodeWindowId},hasWindow(r){return o.has(r)},getWindowById:s,getWindow(r){const a=r;if(a?.ownerDocument?.defaultView)return a.ownerDocument.defaultView.window;const l=r;return l?.view?l.view.window:_t},getDocument(r){return fe(r).document}}})();function xn(o){for(;o.firstChild;)o.firstChild.remove()}class fV{constructor(e,t,i,n){this._node=e,this._type=t,this._handler=i,this._options=n||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}}function U(o,e,t,i){return new fV(o,e,t,i)}function RF(o,e){return function(t){return e(new ur(o,t))}}function gV(o){return function(e){return o(new Nt(e))}}const jt=function(e,t,i,n){let s=i;return t==="click"||t==="mousedown"||t==="contextmenu"?s=RF(fe(e),i):(t==="keydown"||t==="keypress"||t==="keyup")&&(s=gV(i)),U(e,t,s,n)},mV=function(e,t,i){const n=RF(fe(e),t);return pV(e,n,i)};function pV(o,e,t){return U(o,Tc&&KN.pointerEvents?ee.POINTER_DOWN:ee.MOUSE_DOWN,e,t)}function kb(o,e,t){return qm(o,e,t)}class nS extends yF{constructor(e,t){super(e,t)}}let pC,fs;class QN extends jN{constructor(e){super(),this.defaultTarget=e&&fe(e)}cancelAndSet(e,t,i){return super.cancelAndSet(e,t,i??this.defaultTarget)}}class sS{constructor(e,t=0){this._runner=e,this.priority=t,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(e){Ze(e)}}static sort(e,t){return t.priority-e.priority}}(function(){const o=new Map,e=new Map,t=new Map,i=new Map,n=s=>{t.set(s,!1);const r=o.get(s)??[];for(e.set(s,r),o.set(s,[]),i.set(s,!0);r.length>0;)r.sort(sS.sort),r.shift().execute();i.set(s,!1)};fs=(s,r,a=0)=>{const l=mC(s),c=new sS(r,a);let d=o.get(l);return d||(d=[],o.set(l,d)),d.push(c),t.get(l)||(t.set(l,!0),s.requestAnimationFrame(()=>n(l))),c},pC=(s,r,a)=>{const l=mC(s);if(i.get(l)){const c=new sS(r,a);let d=e.get(l);return d||(d=[],e.set(l,d)),d.push(c),c}else return fs(s,r,a)}})();function XN(o){return fe(o).getComputedStyle(o,null)}function Ah(o,e){const t=fe(o),i=t.document;if(o!==i.body)return new rt(o.clientWidth,o.clientHeight);if(Tc&&t?.visualViewport)return new rt(t.visualViewport.width,t.visualViewport.height);if(t?.innerWidth&&t.innerHeight)return new rt(t.innerWidth,t.innerHeight);if(i.body&&i.body.clientWidth&&i.body.clientHeight)return new rt(i.body.clientWidth,i.body.clientHeight);if(i.documentElement&&i.documentElement.clientWidth&&i.documentElement.clientHeight)return new rt(i.documentElement.clientWidth,i.documentElement.clientHeight);throw new Error("Unable to figure out browser width and height")}class Yt{static convertToPixels(e,t){return parseFloat(t)||0}static getDimension(e,t,i){const n=XN(e),s=n?n.getPropertyValue(t):"0";return Yt.convertToPixels(e,s)}static getBorderLeftWidth(e){return Yt.getDimension(e,"border-left-width","borderLeftWidth")}static getBorderRightWidth(e){return Yt.getDimension(e,"border-right-width","borderRightWidth")}static getBorderTopWidth(e){return Yt.getDimension(e,"border-top-width","borderTopWidth")}static getBorderBottomWidth(e){return Yt.getDimension(e,"border-bottom-width","borderBottomWidth")}static getPaddingLeft(e){return Yt.getDimension(e,"padding-left","paddingLeft")}static getPaddingRight(e){return Yt.getDimension(e,"padding-right","paddingRight")}static getPaddingTop(e){return Yt.getDimension(e,"padding-top","paddingTop")}static getPaddingBottom(e){return Yt.getDimension(e,"padding-bottom","paddingBottom")}static getMarginLeft(e){return Yt.getDimension(e,"margin-left","marginLeft")}static getMarginTop(e){return Yt.getDimension(e,"margin-top","marginTop")}static getMarginRight(e){return Yt.getDimension(e,"margin-right","marginRight")}static getMarginBottom(e){return Yt.getDimension(e,"margin-bottom","marginBottom")}}const Ad=class Ad{constructor(e,t){this.width=e,this.height=t}with(e=this.width,t=this.height){return e!==this.width||t!==this.height?new Ad(e,t):this}static is(e){return typeof e=="object"&&typeof e.height=="number"&&typeof e.width=="number"}static lift(e){return e instanceof Ad?e:new Ad(e.width,e.height)}static equals(e,t){return e===t?!0:!e||!t?!1:e.width===t.width&&e.height===t.height}};Ad.None=new Ad(0,0);let rt=Ad;function _V(o){let e=o.offsetParent,t=o.offsetTop,i=o.offsetLeft;for(;(o=o.parentNode)!==null&&o!==o.ownerDocument.body&&o!==o.ownerDocument.documentElement;){t-=o.scrollTop;const n=PF(o)?null:XN(o);n&&(i-=n.direction!=="rtl"?o.scrollLeft:-o.scrollLeft),o===e&&(i+=Yt.getBorderLeftWidth(o),t+=Yt.getBorderTopWidth(o),t+=o.offsetTop,i+=o.offsetLeft,e=o.offsetParent)}return{left:i,top:t}}function bV(o,e,t){typeof e=="number"&&(o.style.width=`${e}px`),typeof t=="number"&&(o.style.height=`${t}px`)}function gi(o){const e=o.getBoundingClientRect(),t=fe(o);return{left:e.left+t.scrollX,top:e.top+t.scrollY,width:e.width,height:e.height}}function AF(o){let e=o,t=1;do{const i=XN(e).zoom;i!=null&&i!=="1"&&(t*=i),e=e.parentElement}while(e!==null&&e!==e.ownerDocument.documentElement);return t}function qp(o){const e=Yt.getMarginLeft(o)+Yt.getMarginRight(o);return o.offsetWidth+e}function oS(o){const e=Yt.getBorderLeftWidth(o)+Yt.getBorderRightWidth(o),t=Yt.getPaddingLeft(o)+Yt.getPaddingRight(o);return o.offsetWidth-e-t}function CV(o){const e=Yt.getBorderTopWidth(o)+Yt.getBorderBottomWidth(o),t=Yt.getPaddingTop(o)+Yt.getPaddingBottom(o);return o.offsetHeight-e-t}function Hd(o){const e=Yt.getMarginTop(o)+Yt.getMarginBottom(o);return o.offsetHeight+e}function yi(o,e){return!!e?.contains(o)}function vV(o,e,t){for(;o&&o.nodeType===o.ELEMENT_NODE;){if(o.classList.contains(e))return o;if(t){if(typeof t=="string"){if(o.classList.contains(t))return null}else if(o===t)return null}o=o.parentNode}return null}function rS(o,e,t){return!!vV(o,e,t)}function PF(o){return o&&!!o.host&&!!o.mode}function _C(o){return!!ag(o)}function ag(o){for(;o.parentNode;){if(o===o.ownerDocument?.body)return null;o=o.parentNode}return PF(o)?o:null}function Xi(){let o=JN().activeElement;for(;o?.shadowRoot;)o=o.shadowRoot.activeElement;return o}function M0(o){return Xi()===o}function OF(o){return yi(Xi(),o)}function JN(){return dV()<=1?_t.document:Array.from(MF()).map(({window:e})=>e.document).find(e=>e.hasFocus())??_t.document}function km(){return JN().defaultView?.window??_t}const eT=new Map;function wV(){return new yV}class yV{constructor(){this._currentCssStyle="",this._styleSheet=void 0}setStyle(e){e!==this._currentCssStyle&&(this._currentCssStyle=e,this._styleSheet?this._styleSheet.innerText=e:this._styleSheet=Vs(_t.document.head,t=>t.innerText=e))}dispose(){this._styleSheet&&(this._styleSheet.remove(),this._styleSheet=void 0)}}function Vs(o=_t.document.head,e,t){const i=document.createElement("style");if(i.type="text/css",i.media="screen",e?.(i),o.appendChild(i),t&&t.add(_e(()=>i.remove())),o===_t.document.head){const n=new Set;eT.set(i,n);for(const{window:s,disposables:r}of MF()){if(s===_t)continue;const a=r.add(SV(i,n,s));t?.add(a)}}return i}function SV(o,e,t){const i=new X,n=o.cloneNode(!0);t.document.head.appendChild(n),i.add(_e(()=>n.remove()));for(const s of BF(o))n.sheet?.insertRule(s.cssText,n.sheet?.cssRules.length);return i.add(LV.observe(o,i,{childList:!0})(()=>{n.textContent=o.textContent})),e.add(n),i.add(_e(()=>e.delete(n))),i}const LV=new class{constructor(){this.mutationObservers=new Map}observe(o,e,t){let i=this.mutationObservers.get(o);i||(i=new Map,this.mutationObservers.set(o,i));const n=ZN(t);let s=i.get(n);if(s)s.users+=1;else{const r=new A,a=new MutationObserver(c=>r.fire(c));a.observe(o,t);const l=s={users:1,observer:a,onDidMutate:r.event};e.add(_e(()=>{l.users-=1,l.users===0&&(r.dispose(),a.disconnect(),i?.delete(n),i?.size===0&&this.mutationObservers.delete(o))})),i.set(n,s)}return s.onDidMutate}};let aS=null;function FF(){return aS||(aS=Vs()),aS}function BF(o){return o?.sheet?.rules?o.sheet.rules:o?.sheet?.cssRules?o.sheet.cssRules:[]}function bC(o,e,t=FF()){if(!(!t||!e)){t.sheet?.insertRule(`${o} {${e}}`,0);for(const i of eT.get(t)??[])bC(o,e,i)}}function jx(o,e=FF()){if(!e)return;const t=BF(e),i=[];for(let n=0;n=0;n--)e.sheet?.deleteRule(i[n]);for(const n of eT.get(e)??[])jx(o,n)}function xV(o){return typeof o.selectorText=="string"}function Ei(o){return o instanceof HTMLElement||o instanceof fe(o).HTMLElement}function uR(o){return o instanceof HTMLAnchorElement||o instanceof fe(o).HTMLAnchorElement}function kV(o){return o instanceof SVGElement||o instanceof fe(o).SVGElement}function tT(o){return o instanceof MouseEvent||o instanceof fe(o).MouseEvent}function Qa(o){return o instanceof KeyboardEvent||o instanceof fe(o).KeyboardEvent}const ee={CLICK:"click",AUXCLICK:"auxclick",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",POINTER_LEAVE:"pointerleave",CONTEXT_MENU:"contextmenu",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",CHANGE:"change",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",DRAG_START:"dragstart",DRAG:"drag",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend"};function DV(o){const e=o;return!!(e&&typeof e.preventDefault=="function"&&typeof e.stopPropagation=="function")}const je={stop:(o,e)=>(o.preventDefault(),e&&o.stopPropagation(),o)};function IV(o){const e=[];for(let t=0;o&&o.nodeType===o.ELEMENT_NODE;t++)e[t]=o.scrollTop,o=o.parentNode;return e}function EV(o,e){for(let t=0;o&&o.nodeType===o.ELEMENT_NODE;t++)o.scrollTop!==e[t]&&(o.scrollTop=e[t]),o=o.parentNode}class CC extends z{static hasFocusWithin(e){if(Ei(e)){const t=ag(e),i=t?t.activeElement:e.ownerDocument.activeElement;return yi(i,e)}else{const t=e;return yi(t.document.activeElement,t.document)}}constructor(e){super(),this._onDidFocus=this._register(new A),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new A),this.onDidBlur=this._onDidBlur.event;let t=CC.hasFocusWithin(e),i=!1;const n=()=>{i=!1,t||(t=!0,this._onDidFocus.fire())},s=()=>{t&&(i=!0,(Ei(e)?fe(e):e).setTimeout(()=>{i&&(i=!1,t=!1,this._onDidBlur.fire())},0))};this._refreshStateHandler=()=>{CC.hasFocusWithin(e)!==t&&(t?s():n())},this._register(U(e,ee.FOCUS,n,!0)),this._register(U(e,ee.BLUR,s,!0)),Ei(e)&&(this._register(U(e,ee.FOCUS_IN,()=>this._refreshStateHandler())),this._register(U(e,ee.FOCUS_OUT,()=>this._refreshStateHandler())))}}function Ph(o){return new CC(o)}function NV(o,e){return o.after(e),e}function Z(o,...e){if(o.append(...e),e.length===1&&typeof e[0]!="string")return e[0]}function iT(o,e){return o.insertBefore(e,o.firstChild),e}function un(o,...e){o.innerText="",Z(o,...e)}const TV=/([\w\-]+)?(#([\w\-]+))?((\.([\w\-]+))*)/;var Gp;(function(o){o.HTML="http://www.w3.org/1999/xhtml",o.SVG="http://www.w3.org/2000/svg"})(Gp||(Gp={}));function WF(o,e,t,...i){const n=TV.exec(e);if(!n)throw new Error("Bad use of emmet");const s=n[1]||"div";let r;return o!==Gp.HTML?r=document.createElementNS(o,s):r=document.createElement(s),n[3]&&(r.id=n[3]),n[4]&&(r.className=n[4].replace(/\./g," ").trim()),t&&Object.entries(t).forEach(([a,l])=>{typeof l>"u"||(/^on\w+$/.test(a)?r[a]=l:a==="selected"?l&&r.setAttribute(a,"true"):r.setAttribute(a,l))}),r.append(...i),r}function ce(o,e,...t){return WF(Gp.HTML,o,e,...t)}ce.SVG=function(o,e,...t){return WF(Gp.SVG,o,e,...t)};function MV(o,...e){o?ns(...e):Cn(...e)}function ns(...o){for(const e of o)e.style.display="",e.removeAttribute("aria-hidden")}function Cn(...o){for(const e of o)e.style.display="none",e.setAttribute("aria-hidden","true")}function fR(o,e){const t=o.devicePixelRatio*e;return Math.max(1,Math.floor(t))/o.devicePixelRatio}function HF(o){_t.open(o,"_blank","noopener")}function RV(o,e){const t=()=>{e(),i=fs(o,t)};let i=fs(o,t);return _e(()=>i.dispose())}TF.setPreferredWebSchema(/^https:/.test(_t.location.href)?"https":"http");function Dl(o){return o?`url('${E0.uriToBrowserUri(o).toString(!0).replace(/'/g,"%27")}')`:"url('')"}function lS(o){return`'${o.replace(/'/g,"%27")}'`}function vl(o,e){if(o!==void 0){const t=o.match(/^\s*var\((.+)\)$/);if(t){const i=t[1].split(",",2);return i.length===2&&(e=vl(i[1].trim(),e)),`var(${i[0]}, ${e})`}return o}return e}function AV(o,e=!1){const t=document.createElement("a");return EF("afterSanitizeAttributes",i=>{for(const n of["href","src"])if(i.hasAttribute(n)){const s=i.getAttribute(n);if(n==="href"&&s.startsWith("#"))continue;if(t.href=s,!o.includes(t.protocol.replace(/:$/,""))){if(e&&n==="src"&&t.href.startsWith("data:"))continue;i.removeAttribute(n)}}}),_e(()=>{NF("afterSanitizeAttributes")})}const PV=Object.freeze(["a","abbr","b","bdo","blockquote","br","caption","cite","code","col","colgroup","dd","del","details","dfn","div","dl","dt","em","figcaption","figure","h1","h2","h3","h4","h5","h6","hr","i","img","input","ins","kbd","label","li","mark","ol","p","pre","q","rp","rt","ruby","samp","small","small","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","time","tr","tt","u","ul","var","video","wbr"]);class rl extends A{constructor(){super(),this._subscriptions=new X,this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1},this._subscriptions.add(J.runAndSubscribe(T0,({window:e,disposables:t})=>this.registerListeners(e,t),{window:_t,disposables:this._subscriptions}))}registerListeners(e,t){t.add(U(e,"keydown",i=>{if(i.defaultPrevented)return;const n=new Nt(i);if(!(n.keyCode===6&&i.repeat)){if(i.altKey&&!this._keyStatus.altKey)this._keyStatus.lastKeyPressed="alt";else if(i.ctrlKey&&!this._keyStatus.ctrlKey)this._keyStatus.lastKeyPressed="ctrl";else if(i.metaKey&&!this._keyStatus.metaKey)this._keyStatus.lastKeyPressed="meta";else if(i.shiftKey&&!this._keyStatus.shiftKey)this._keyStatus.lastKeyPressed="shift";else if(n.keyCode!==6)this._keyStatus.lastKeyPressed=void 0;else return;this._keyStatus.altKey=i.altKey,this._keyStatus.ctrlKey=i.ctrlKey,this._keyStatus.metaKey=i.metaKey,this._keyStatus.shiftKey=i.shiftKey,this._keyStatus.lastKeyPressed&&(this._keyStatus.event=i,this.fire(this._keyStatus))}},!0)),t.add(U(e,"keyup",i=>{i.defaultPrevented||(!i.altKey&&this._keyStatus.altKey?this._keyStatus.lastKeyReleased="alt":!i.ctrlKey&&this._keyStatus.ctrlKey?this._keyStatus.lastKeyReleased="ctrl":!i.metaKey&&this._keyStatus.metaKey?this._keyStatus.lastKeyReleased="meta":!i.shiftKey&&this._keyStatus.shiftKey?this._keyStatus.lastKeyReleased="shift":this._keyStatus.lastKeyReleased=void 0,this._keyStatus.lastKeyPressed!==this._keyStatus.lastKeyReleased&&(this._keyStatus.lastKeyPressed=void 0),this._keyStatus.altKey=i.altKey,this._keyStatus.ctrlKey=i.ctrlKey,this._keyStatus.metaKey=i.metaKey,this._keyStatus.shiftKey=i.shiftKey,this._keyStatus.lastKeyReleased&&(this._keyStatus.event=i,this.fire(this._keyStatus)))},!0)),t.add(U(e.document.body,"mousedown",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),t.add(U(e.document.body,"mouseup",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),t.add(U(e.document.body,"mousemove",i=>{i.buttons&&(this._keyStatus.lastKeyPressed=void 0)},!0)),t.add(U(e,"blur",()=>{this.resetKeyStatus()}))}get keyStatus(){return this._keyStatus}resetKeyStatus(){this.doResetKeyStatus(),this.fire(this._keyStatus)}doResetKeyStatus(){this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1}}static getInstance(){return rl.instance||(rl.instance=new rl),rl.instance}dispose(){super.dispose(),this._subscriptions.dispose()}}class OV extends z{constructor(e,t){super(),this.element=e,this.callbacks=t,this.counter=0,this.dragStartTime=0,this.registerListeners()}registerListeners(){this.callbacks.onDragStart&&this._register(U(this.element,ee.DRAG_START,e=>{this.callbacks.onDragStart?.(e)})),this.callbacks.onDrag&&this._register(U(this.element,ee.DRAG,e=>{this.callbacks.onDrag?.(e)})),this._register(U(this.element,ee.DRAG_ENTER,e=>{this.counter++,this.dragStartTime=e.timeStamp,this.callbacks.onDragEnter?.(e)})),this._register(U(this.element,ee.DRAG_OVER,e=>{e.preventDefault(),this.callbacks.onDragOver?.(e,e.timeStamp-this.dragStartTime)})),this._register(U(this.element,ee.DRAG_LEAVE,e=>{this.counter--,this.counter===0&&(this.dragStartTime=0,this.callbacks.onDragLeave?.(e))})),this._register(U(this.element,ee.DRAG_END,e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDragEnd?.(e)})),this._register(U(this.element,ee.DROP,e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDrop?.(e)}))}}const FV=/(?[\w\-]+)?(?:#(?[\w\-]+))?(?(?:\.(?:[\w\-]+))*)(?:@(?(?:[\w\_])+))?/;function tt(o,...e){let t,i;Array.isArray(e[0])?(t={},i=e[0]):(t=e[0]||{},i=e[1]);const n=FV.exec(o);if(!n||!n.groups)throw new Error("Bad use of h");const s=n.groups.tag||"div",r=document.createElement(s);n.groups.id&&(r.id=n.groups.id);const a=[];if(n.groups.class)for(const c of n.groups.class.split("."))c!==""&&a.push(c);if(t.className!==void 0)for(const c of t.className.split("."))c!==""&&a.push(c);a.length>0&&(r.className=a.join(" "));const l={};if(n.groups.name&&(l[n.groups.name]=r),i)for(const c of i)Ei(c)?r.appendChild(c):typeof c=="string"?r.append(c):"root"in c&&(Object.assign(l,c),r.appendChild(c.root));for(const[c,d]of Object.entries(t))if(c!=="className")if(c==="style")for(const[h,u]of Object.entries(d))r.style.setProperty(gR(h),typeof u=="number"?u+"px":""+u);else c==="tabIndex"?r.tabIndex=d:r.setAttribute(gR(c),d.toString());return l.root=r,l}function gR(o){return o.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}class BV extends z{constructor(e){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._listener=()=>this._handleChange(e,!0),this._mediaQueryList=null,this._handleChange(e,!1)}_handleChange(e,t){this._mediaQueryList?.removeEventListener("change",this._listener),this._mediaQueryList=e.matchMedia(`(resolution: ${e.devicePixelRatio}dppx)`),this._mediaQueryList.addEventListener("change",this._listener),t&&this._onDidChange.fire()}}class WV extends z{get value(){return this._value}constructor(e){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._value=this._getPixelRatio(e);const t=this._register(new BV(e));this._register(t.onDidChange(()=>{this._value=this._getPixelRatio(e),this._onDidChange.fire(this._value)}))}_getPixelRatio(e){const t=document.createElement("canvas").getContext("2d"),i=e.devicePixelRatio||1,n=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return i/n}}class HV{constructor(){this.mapWindowIdToPixelRatioMonitor=new Map}_getOrCreatePixelRatioMonitor(e){const t=mC(e);let i=this.mapWindowIdToPixelRatioMonitor.get(t);return i||(i=new WV(e),this.mapWindowIdToPixelRatioMonitor.set(t,i),J.once(uV)(({vscodeWindowId:n})=>{n===t&&(i?.dispose(),this.mapWindowIdToPixelRatioMonitor.delete(t))})),i}getInstance(e){return this._getOrCreatePixelRatioMonitor(e)}}const Zp=new HV;class VF{constructor(e){this.domNode=e,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingLeft="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(e){const t=Ko(e);this._maxWidth!==t&&(this._maxWidth=t,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){const t=Ko(e);this._width!==t&&(this._width=t,this.domNode.style.width=this._width)}setHeight(e){const t=Ko(e);this._height!==t&&(this._height=t,this.domNode.style.height=this._height)}setTop(e){const t=Ko(e);this._top!==t&&(this._top=t,this.domNode.style.top=this._top)}setLeft(e){const t=Ko(e);this._left!==t&&(this._left=t,this.domNode.style.left=this._left)}setBottom(e){const t=Ko(e);this._bottom!==t&&(this._bottom=t,this.domNode.style.bottom=this._bottom)}setRight(e){const t=Ko(e);this._right!==t&&(this._right=t,this.domNode.style.right=this._right)}setPaddingLeft(e){const t=Ko(e);this._paddingLeft!==t&&(this._paddingLeft=t,this.domNode.style.paddingLeft=this._paddingLeft)}setFontFamily(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(e){const t=Ko(e);this._fontSize!==t&&(this._fontSize=t,this.domNode.style.fontSize=this._fontSize)}setFontStyle(e){this._fontStyle!==e&&(this._fontStyle=e,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(e){this._fontVariationSettings!==e&&(this._fontVariationSettings=e,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(e){this._textDecoration!==e&&(this._textDecoration=e,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(e){const t=Ko(e);this._lineHeight!==t&&(this._lineHeight=t,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){const t=Ko(e);this._letterSpacing!==t&&(this._letterSpacing=t,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)}toggleClassName(e,t){this.domNode.classList.toggle(e,t),this._className=this.domNode.className}setDisplay(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)}setPosition(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)}setColor(e){this._color!==e&&(this._color=e,this.domNode.style.color=this._color)}setBackgroundColor(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(e){this._boxShadow!==e&&(this._boxShadow=e,this.domNode.style.boxShadow=e)}setContain(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)}setAttribute(e,t){this.domNode.setAttribute(e,t)}removeAttribute(e){this.domNode.removeAttribute(e)}appendChild(e){this.domNode.appendChild(e.domNode)}removeChild(e){this.domNode.removeChild(e.domNode)}}function Ko(o){return typeof o=="number"?`${o}px`:o}function ot(o){return new VF(o)}function qi(o,e){o instanceof VF?(o.setFontFamily(e.getMassagedFontFamily()),o.setFontWeight(e.fontWeight),o.setFontSize(e.fontSize),o.setFontFeatureSettings(e.fontFeatureSettings),o.setFontVariationSettings(e.fontVariationSettings),o.setLineHeight(e.lineHeight),o.setLetterSpacing(e.letterSpacing)):(o.style.fontFamily=e.getMassagedFontFamily(),o.style.fontWeight=e.fontWeight,o.style.fontSize=e.fontSize+"px",o.style.fontFeatureSettings=e.fontFeatureSettings,o.style.fontVariationSettings=e.fontVariationSettings,o.style.lineHeight=e.lineHeight+"px",o.style.letterSpacing=e.letterSpacing+"px")}class VV{constructor(e,t){this.chr=e,this.type=t,this.width=0}fulfill(e){this.width=e}}class nT{constructor(e,t){this._bareFontInfo=e,this._requests=t,this._container=null,this._testElements=null}read(e){this._createDomElements(),e.document.body.appendChild(this._container),this._readFromDomElements(),this._container?.remove(),this._container=null,this._testElements=null}_createDomElements(){const e=document.createElement("div");e.style.position="absolute",e.style.top="-50000px",e.style.width="50000px";const t=document.createElement("div");qi(t,this._bareFontInfo),e.appendChild(t);const i=document.createElement("div");qi(i,this._bareFontInfo),i.style.fontWeight="bold",e.appendChild(i);const n=document.createElement("div");qi(n,this._bareFontInfo),n.style.fontStyle="italic",e.appendChild(n);const s=[];for(const r of this._requests){let a;r.type===0&&(a=t),r.type===2&&(a=i),r.type===1&&(a=n),a.appendChild(document.createElement("br"));const l=document.createElement("span");nT._render(l,r),a.appendChild(l),s.push(l)}this._container=e,this._testElements=s}static _render(e,t){if(t.chr===" "){let i=" ";for(let n=0;n<8;n++)i+=i;e.innerText=i}else{let i=t.chr;for(let n=0;n<8;n++)i+=i;e.textContent=i}}_readFromDomElements(){for(let e=0,t=this._requests.length;e{this._evictUntrustedReadingsTimeout=-1,this._evictUntrustedReadings(e)},5e3))}_evictUntrustedReadings(e){const t=this._ensureCache(e),i=t.getValues();let n=!1;for(const s of i)s.isTrusted||(n=!0,t.remove(s));n&&this._onDidChange.fire()}readFontInfo(e,t){const i=this._ensureCache(e);if(!i.has(t)){let n=this._actualReadFontInfo(e,t);(n.typicalHalfwidthCharacterWidth<=2||n.typicalFullwidthCharacterWidth<=2||n.spaceWidth<=2||n.maxDigitWidth<=2)&&(n=new qx({pixelRatio:Zp.getInstance(e).value,fontFamily:n.fontFamily,fontWeight:n.fontWeight,fontSize:n.fontSize,fontFeatureSettings:n.fontFeatureSettings,fontVariationSettings:n.fontVariationSettings,lineHeight:n.lineHeight,letterSpacing:n.letterSpacing,isMonospace:n.isMonospace,typicalHalfwidthCharacterWidth:Math.max(n.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(n.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:n.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(n.spaceWidth,5),middotWidth:Math.max(n.middotWidth,5),wsmiddotWidth:Math.max(n.wsmiddotWidth,5),maxDigitWidth:Math.max(n.maxDigitWidth,5)},!1)),this._writeToCache(e,t,n)}return i.get(t)}_createRequest(e,t,i,n){const s=new VV(e,t);return i.push(s),n?.push(s),s}_actualReadFontInfo(e,t){const i=[],n=[],s=this._createRequest("n",0,i,n),r=this._createRequest("m",0,i,null),a=this._createRequest(" ",0,i,n),l=this._createRequest("0",0,i,n),c=this._createRequest("1",0,i,n),d=this._createRequest("2",0,i,n),h=this._createRequest("3",0,i,n),u=this._createRequest("4",0,i,n),f=this._createRequest("5",0,i,n),g=this._createRequest("6",0,i,n),p=this._createRequest("7",0,i,n),_=this._createRequest("8",0,i,n),b=this._createRequest("9",0,i,n),C=this._createRequest("→",0,i,n),w=this._createRequest("→",0,i,null),v=this._createRequest("·",0,i,n),y=this._createRequest("⸱",0,i,null),x="|/-_ilm%";for(let F=0,W=x.length;F.001){E=!1;break}}let H=!0;return E&&w.width!==N&&(H=!1),w.width>C.width&&(H=!1),new qx({pixelRatio:Zp.getInstance(e).value,fontFamily:t.fontFamily,fontWeight:t.fontWeight,fontSize:t.fontSize,fontFeatureSettings:t.fontFeatureSettings,fontVariationSettings:t.fontVariationSettings,lineHeight:t.lineHeight,letterSpacing:t.letterSpacing,isMonospace:E,typicalHalfwidthCharacterWidth:s.width,typicalFullwidthCharacterWidth:r.width,canUseHalfwidthRightwardsArrow:H,spaceWidth:a.width,middotWidth:v.width,wsmiddotWidth:y.width,maxDigitWidth:L},!0)}}class jV{constructor(){this._keys=Object.create(null),this._values=Object.create(null)}has(e){const t=e.getId();return!!this._values[t]}get(e){const t=e.getId();return this._values[t]}put(e,t){const i=e.getId();this._keys[i]=e,this._values[i]=t}remove(e){const t=e.getId();delete this._keys[t],delete this._values[t]}getValues(){return Object.keys(this._keys).map(e=>this._values[e])}}const Gx=new KV;var fr;(function(o){o.serviceIds=new Map,o.DI_TARGET="$di$target",o.DI_DEPENDENCIES="$di$dependencies";function e(t){return t[o.DI_DEPENDENCIES]||[]}o.getServiceDependencies=e})(fr||(fr={}));const ke=He("instantiationService");function qV(o,e,t){e[fr.DI_TARGET]===e?e[fr.DI_DEPENDENCIES].push({id:o,index:t}):(e[fr.DI_DEPENDENCIES]=[{id:o,index:t}],e[fr.DI_TARGET]=e)}function He(o){if(fr.serviceIds.has(o))return fr.serviceIds.get(o);const e=function(t,i,n){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");qV(e,t,n)};return e.toString=()=>o,fr.serviceIds.set(o,e),e}const Pt=He("codeEditorService"),Fi=He("modelService"),fo=He("textModelService");class Fs extends z{constructor(e,t="",i="",n=!0,s){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._enabled=!0,this._id=e,this._label=t,this._cssClass=i,this._enabled=n,this._actionCallback=s}get id(){return this._id}get label(){return this._label}set label(e){this._setLabel(e)}_setLabel(e){this._label!==e&&(this._label=e,this._onDidChange.fire({label:e}))}get tooltip(){return this._tooltip||""}set tooltip(e){this._setTooltip(e)}_setTooltip(e){this._tooltip!==e&&(this._tooltip=e,this._onDidChange.fire({tooltip:e}))}get class(){return this._cssClass}set class(e){this._setClass(e)}_setClass(e){this._cssClass!==e&&(this._cssClass=e,this._onDidChange.fire({class:e}))}get enabled(){return this._enabled}set enabled(e){this._setEnabled(e)}_setEnabled(e){this._enabled!==e&&(this._enabled=e,this._onDidChange.fire({enabled:e}))}get checked(){return this._checked}set checked(e){this._setChecked(e)}_setChecked(e){this._checked!==e&&(this._checked=e,this._onDidChange.fire({checked:e}))}async run(e,t){this._actionCallback&&await this._actionCallback(e)}}class Oh extends z{constructor(){super(...arguments),this._onWillRun=this._register(new A),this.onWillRun=this._onWillRun.event,this._onDidRun=this._register(new A),this.onDidRun=this._onDidRun.event}async run(e,t){if(!e.enabled)return;this._onWillRun.fire({action:e});let i;try{await this.runAction(e,t)}catch(n){i=n}this._onDidRun.fire({action:e,error:i})}async runAction(e,t){await e.run(t)}}const xp=class xp{constructor(){this.id=xp.ID,this.label="",this.tooltip="",this.class="separator",this.enabled=!1,this.checked=!1}static join(...e){let t=[];for(const i of e)i.length&&(t.length?t=[...t,new xp,...i]:t=i);return t}async run(){}};xp.ID="vs.actions.separator";let Gi=xp;class R0{get actions(){return this._actions}constructor(e,t,i,n){this.tooltip="",this.enabled=!0,this.checked=void 0,this.id=e,this.label=t,this.class=n,this._actions=i}async run(){}}const yw=class yw extends Fs{constructor(){super(yw.ID,m("submenu.empty","(empty)"),void 0,!1)}};yw.ID="vs.actions.empty";let Zx=yw;function Mf(o){return{id:o.id,label:o.label,tooltip:o.tooltip??o.label,class:o.class,enabled:o.enabled??!0,checked:o.checked,run:async(...e)=>o.run(...e)}}var Yx;(function(o){function e(t){return t&&typeof t=="object"&&typeof t.id=="string"}o.isThemeColor=e})(Yx||(Yx={}));var Ee;(function(o){o.iconNameSegment="[A-Za-z0-9]+",o.iconNameExpression="[A-Za-z0-9-]+",o.iconModifierExpression="~[A-Za-z]+",o.iconNameCharacter="[A-Za-z0-9~-]";const e=new RegExp(`^(${o.iconNameExpression})(${o.iconModifierExpression})?$`);function t(u){const f=e.exec(u.id);if(!f)return t(ie.error);const[,g,p]=f,_=["codicon","codicon-"+g];return p&&_.push("codicon-modifier-"+p.substring(1)),_}o.asClassNameArray=t;function i(u){return t(u).join(" ")}o.asClassName=i;function n(u){return"."+t(u).join(".")}o.asCSSSelector=n;function s(u){return u&&typeof u=="object"&&typeof u.id=="string"&&(typeof u.color>"u"||Yx.isThemeColor(u.color))}o.isThemeIcon=s;const r=new RegExp(`^\\$\\((${o.iconNameExpression}(?:${o.iconModifierExpression})?)\\)$`);function a(u){const f=r.exec(u);if(!f)return;const[,g]=f;return{id:g}}o.fromString=a;function l(u){return{id:u}}o.fromId=l;function c(u,f){let g=u.id;const p=g.lastIndexOf("~");return p!==-1&&(g=g.substring(0,p)),f&&(g=`${g}~${f}`),{id:g}}o.modify=c;function d(u){const f=u.id.lastIndexOf("~");if(f!==-1)return u.id.substring(f+1)}o.getModifier=d;function h(u,f){return u.id===f.id&&u.color?.id===f.color?.id}o.isEqual=h})(Ee||(Ee={}));const hi=He("commandService"),bt=new class{constructor(){this._commands=new Map,this._onDidRegisterCommand=new A,this.onDidRegisterCommand=this._onDidRegisterCommand.event}registerCommand(o,e){if(!o)throw new Error("invalid command");if(typeof o=="string"){if(!e)throw new Error("invalid command");return this.registerCommand({id:o,handler:e})}if(o.metadata&&Array.isArray(o.metadata.args)){const r=[];for(const l of o.metadata.args)r.push(l.constraint);const a=o.handler;o.handler=function(l,...c){return a6(c,r),a(l,...c)}}const{id:t}=o;let i=this._commands.get(t);i||(i=new yn,this._commands.set(t,i));const n=i.unshift(o),s=_e(()=>{n(),this._commands.get(t)?.isEmpty()&&this._commands.delete(t)});return this._onDidRegisterCommand.fire(t),s}registerCommandAlias(o,e){return bt.registerCommand(o,(t,...i)=>t.get(hi).executeCommand(e,...i))}getCommand(o){const e=this._commands.get(o);if(!(!e||e.isEmpty()))return st.first(e)}getCommands(){const o=new Map;for(const e of this._commands.keys()){const t=this.getCommand(e);t&&o.set(e,t)}return o}};bt.registerCommand("noop",()=>{});function dS(...o){switch(o.length){case 1:return m("contextkey.scanner.hint.didYouMean1","Did you mean {0}?",o[0]);case 2:return m("contextkey.scanner.hint.didYouMean2","Did you mean {0} or {1}?",o[0],o[1]);case 3:return m("contextkey.scanner.hint.didYouMean3","Did you mean {0}, {1} or {2}?",o[0],o[1],o[2]);default:return}}const GV=m("contextkey.scanner.hint.didYouForgetToOpenOrCloseQuote","Did you forget to open or close the quote?"),ZV=m("contextkey.scanner.hint.didYouForgetToEscapeSlash","Did you forget to escape the '/' (slash) character? Put two backslashes before it to escape, e.g., '\\\\/'.");var fl;let lm=(fl=class{constructor(){this._input="",this._start=0,this._current=0,this._tokens=[],this._errors=[],this.stringRe=/[a-zA-Z0-9_<>\-\./\\:\*\?\+\[\]\^,#@;"%\$\p{L}-]+/uy}static getLexeme(e){switch(e.type){case 0:return"(";case 1:return")";case 2:return"!";case 3:return e.isTripleEq?"===":"==";case 4:return e.isTripleEq?"!==":"!=";case 5:return"<";case 6:return"<=";case 7:return">=";case 8:return">=";case 9:return"=~";case 10:return e.lexeme;case 11:return"true";case 12:return"false";case 13:return"in";case 14:return"not";case 15:return"&&";case 16:return"||";case 17:return e.lexeme;case 18:return e.lexeme;case 19:return e.lexeme;case 20:return"EOF";default:throw TN(`unhandled token type: ${JSON.stringify(e)}; have you forgotten to add a case?`)}}reset(e){return this._input=e,this._start=0,this._current=0,this._tokens=[],this._errors=[],this}scan(){for(;!this._isAtEnd();)switch(this._start=this._current,this._advance()){case 40:this._addToken(0);break;case 41:this._addToken(1);break;case 33:if(this._match(61)){const t=this._match(61);this._tokens.push({type:4,offset:this._start,isTripleEq:t})}else this._addToken(2);break;case 39:this._quotedString();break;case 47:this._regex();break;case 61:if(this._match(61)){const t=this._match(61);this._tokens.push({type:3,offset:this._start,isTripleEq:t})}else this._match(126)?this._addToken(9):this._error(dS("==","=~"));break;case 60:this._addToken(this._match(61)?6:5);break;case 62:this._addToken(this._match(61)?8:7);break;case 38:this._match(38)?this._addToken(15):this._error(dS("&&"));break;case 124:this._match(124)?this._addToken(16):this._error(dS("||"));break;case 32:case 13:case 9:case 10:case 160:break;default:this._string()}return this._start=this._current,this._addToken(20),Array.from(this._tokens)}_match(e){return this._isAtEnd()||this._input.charCodeAt(this._current)!==e?!1:(this._current++,!0)}_advance(){return this._input.charCodeAt(this._current++)}_peek(){return this._isAtEnd()?0:this._input.charCodeAt(this._current)}_addToken(e){this._tokens.push({type:e,offset:this._start})}_error(e){const t=this._start,i=this._input.substring(this._start,this._current),n={type:19,offset:this._start,lexeme:i};this._errors.push({offset:t,lexeme:i,additionalInfo:e}),this._tokens.push(n)}_string(){this.stringRe.lastIndex=this._start;const e=this.stringRe.exec(this._input);if(e){this._current=this._start+e[0].length;const t=this._input.substring(this._start,this._current),i=fl._keywords.get(t);i?this._addToken(i):this._tokens.push({type:17,lexeme:t,offset:this._start})}}_quotedString(){for(;this._peek()!==39&&!this._isAtEnd();)this._advance();if(this._isAtEnd()){this._error(GV);return}this._advance(),this._tokens.push({type:18,lexeme:this._input.substring(this._start+1,this._current-1),offset:this._start+1})}_regex(){let e=this._current,t=!1,i=!1;for(;;){if(e>=this._input.length){this._current=e,this._error(ZV);return}const s=this._input.charCodeAt(e);if(t)t=!1;else if(s===47&&!i){e++;break}else s===91?i=!0:s===92?t=!0:s===93&&(i=!1);e++}for(;e=this._input.length}},fl._regexFlags=new Set(["i","g","s","m","y","u"].map(e=>e.charCodeAt(0))),fl._keywords=new Map([["not",14],["in",13],["false",12],["true",11]]),fl);const Ji=new Map;Ji.set("false",!1);Ji.set("true",!0);Ji.set("isMac",Ue);Ji.set("isLinux",Un);Ji.set("isWindows",kn);Ji.set("isWeb",Og);Ji.set("isMacNative",Ue&&!Og);Ji.set("isEdge",y6);Ji.set("isFirefox",v6);Ji.set("isChrome",U5);Ji.set("isSafari",w6);const YV=Object.prototype.hasOwnProperty,QV={regexParsingWithErrorRecovery:!0},XV=m("contextkey.parser.error.emptyString","Empty context key expression"),JV=m("contextkey.parser.error.emptyString.hint","Did you forget to write an expression? You can also put 'false' or 'true' to always evaluate to false or true, respectively."),ez=m("contextkey.parser.error.noInAfterNot","'in' after 'not'."),mR=m("contextkey.parser.error.closingParenthesis","closing parenthesis ')'"),tz=m("contextkey.parser.error.unexpectedToken","Unexpected token"),iz=m("contextkey.parser.error.unexpectedToken.hint","Did you forget to put && or || before the token?"),nz=m("contextkey.parser.error.unexpectedEOF","Unexpected end of expression"),sz=m("contextkey.parser.error.unexpectedEOF.hint","Did you forget to put a context key?");var Xr;let oz=(Xr=class{constructor(e=QV){this._config=e,this._scanner=new lm,this._tokens=[],this._current=0,this._parsingErrors=[],this._flagsGYRe=/g|y/g}parse(e){if(e===""){this._parsingErrors.push({message:XV,offset:0,lexeme:"",additionalInfo:JV});return}this._tokens=this._scanner.reset(e).scan(),this._current=0,this._parsingErrors=[];try{const t=this._expr();if(!this._isAtEnd()){const i=this._peek(),n=i.type===17?iz:void 0;throw this._parsingErrors.push({message:tz,offset:i.offset,lexeme:lm.getLexeme(i),additionalInfo:n}),Xr._parseError}return t}catch(t){if(t!==Xr._parseError)throw t;return}}_expr(){return this._or()}_or(){const e=[this._and()];for(;this._matchOne(16);){const t=this._and();e.push(t)}return e.length===1?e[0]:re.or(...e)}_and(){const e=[this._term()];for(;this._matchOne(15);){const t=this._term();e.push(t)}return e.length===1?e[0]:re.and(...e)}_term(){if(this._matchOne(2)){const e=this._peek();switch(e.type){case 11:return this._advance(),En.INSTANCE;case 12:return this._advance(),Kn.INSTANCE;case 0:{this._advance();const t=this._expr();return this._consume(1,mR),t?.negate()}case 17:return this._advance(),tu.create(e.lexeme);default:throw this._errExpectedButGot("KEY | true | false | '(' expression ')'",e)}}return this._primary()}_primary(){const e=this._peek();switch(e.type){case 11:return this._advance(),re.true();case 12:return this._advance(),re.false();case 0:{this._advance();const t=this._expr();return this._consume(1,mR),t}case 17:{const t=e.lexeme;if(this._advance(),this._matchOne(9)){const n=this._peek();if(!this._config.regexParsingWithErrorRecovery){if(this._advance(),n.type!==10)throw this._errExpectedButGot("REGEX",n);const s=n.lexeme,r=s.lastIndexOf("/"),a=r===s.length-1?void 0:this._removeFlagsGY(s.substring(r+1));let l;try{l=new RegExp(s.substring(1,r),a)}catch{throw this._errExpectedButGot("REGEX",n)}return Yp.create(t,l)}switch(n.type){case 10:case 19:{const s=[n.lexeme];this._advance();let r=this._peek(),a=0;for(let u=0;u=0){const c=s.slice(a+1,l),d=s[l+1]==="i"?"i":"";try{r=new RegExp(c,d)}catch{throw this._errExpectedButGot("REGEX",n)}}}if(r===null)throw this._errExpectedButGot("REGEX",n);return Yp.create(t,r)}default:throw this._errExpectedButGot("REGEX",this._peek())}}if(this._matchOne(14)){this._consume(13,ez);const n=this._value();return re.notIn(t,n)}switch(this._peek().type){case 3:{this._advance();const n=this._value();if(this._previous().type===18)return re.equals(t,n);switch(n){case"true":return re.has(t);case"false":return re.not(t);default:return re.equals(t,n)}}case 4:{this._advance();const n=this._value();if(this._previous().type===18)return re.notEquals(t,n);switch(n){case"true":return re.not(t);case"false":return re.has(t);default:return re.notEquals(t,n)}}case 5:return this._advance(),H0.create(t,this._value());case 6:return this._advance(),V0.create(t,this._value());case 7:return this._advance(),B0.create(t,this._value());case 8:return this._advance(),W0.create(t,this._value());case 13:return this._advance(),re.in(t,this._value());default:return re.has(t)}}case 20:throw this._parsingErrors.push({message:nz,offset:e.offset,lexeme:"",additionalInfo:sz}),Xr._parseError;default:throw this._errExpectedButGot(`true | false | KEY - | KEY '=~' REGEX - | KEY ('==' | '!=' | '<' | '<=' | '>' | '>=' | 'in' | 'not' 'in') value`,this._peek())}}_value(){const e=this._peek();switch(e.type){case 17:case 18:return this._advance(),e.lexeme;case 11:return this._advance(),"true";case 12:return this._advance(),"false";case 13:return this._advance(),"in";default:return""}}_removeFlagsGY(e){return e.replaceAll(this._flagsGYRe,"")}_previous(){return this._tokens[this._current-1]}_matchOne(e){return this._check(e)?(this._advance(),!0):!1}_advance(){return this._isAtEnd()||this._current++,this._previous()}_consume(e,t){if(this._check(e))return this._advance();throw this._errExpectedButGot(t,this._peek())}_errExpectedButGot(e,t,i){const n=m("contextkey.parser.error.expectedButGot",`Expected: {0} -Received: '{1}'.`,e,lm.getLexeme(t)),s=t.offset,r=lm.getLexeme(t);return this._parsingErrors.push({message:n,offset:s,lexeme:r,additionalInfo:i}),Xr._parseError}_check(e){return this._peek().type===e}_peek(){return this._tokens[this._current]}_isAtEnd(){return this._peek().type===20}},Xr._parseError=new Error,Xr);const DM=class DM{static false(){return En.INSTANCE}static true(){return Kn.INSTANCE}static has(e){return eu.create(e)}static equals(e,t){return U_.create(e,t)}static notEquals(e,t){return O0.create(e,t)}static regex(e,t){return Yp.create(e,t)}static in(e,t){return A0.create(e,t)}static notIn(e,t){return P0.create(e,t)}static not(e){return tu.create(e)}static and(...e){return Vd.create(e,null,!0)}static or(...e){return tl.create(e,null,!0)}static deserialize(e){return e==null?void 0:this._parser.parse(e)}};DM._parser=new oz({regexParsingWithErrorRecovery:!1});let re=DM;function rz(o,e){const t=o?o.substituteConstants():void 0,i=e?e.substituteConstants():void 0;return!t&&!i?!0:!t||!i?!1:t.equals(i)}function Gm(o,e){return o.cmp(e)}const Sw=class Sw{constructor(){this.type=0}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!1}serialize(){return"false"}keys(){return[]}negate(){return Kn.INSTANCE}};Sw.INSTANCE=new Sw;let En=Sw;const Lw=class Lw{constructor(){this.type=1}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!0}serialize(){return"true"}keys(){return[]}negate(){return En.INSTANCE}};Lw.INSTANCE=new Lw;let Kn=Lw;class eu{static create(e,t=null){const i=Ji.get(e);return typeof i=="boolean"?i?Kn.INSTANCE:En.INSTANCE:new eu(e,t)}constructor(e,t){this.key=e,this.negated=t,this.type=2}cmp(e){return e.type!==this.type?this.type-e.type:UF(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=Ji.get(this.key);return typeof e=="boolean"?e?Kn.INSTANCE:En.INSTANCE:this}evaluate(e){return!!e.getValue(this.key)}serialize(){return this.key}keys(){return[this.key]}negate(){return this.negated||(this.negated=tu.create(this.key,this)),this.negated}}class U_{static create(e,t,i=null){if(typeof t=="boolean")return t?eu.create(e,i):tu.create(e,i);const n=Ji.get(e);return typeof n=="boolean"?t===(n?"true":"false")?Kn.INSTANCE:En.INSTANCE:new U_(e,t,i)}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=4}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){const e=Ji.get(this.key);if(typeof e=="boolean"){const t=e?"true":"false";return this.value===t?Kn.INSTANCE:En.INSTANCE}return this}evaluate(e){return e.getValue(this.key)==this.value}serialize(){return`${this.key} == '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=O0.create(this.key,this.value,this)),this.negated}}class A0{static create(e,t){return new A0(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=10,this.negated=null}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.valueKey,e.key,e.valueKey)}equals(e){return e.type===this.type?this.key===e.key&&this.valueKey===e.valueKey:!1}substituteConstants(){return this}evaluate(e){const t=e.getValue(this.valueKey),i=e.getValue(this.key);return Array.isArray(t)?t.includes(i):typeof i=="string"&&typeof t=="object"&&t!==null?YV.call(t,i):!1}serialize(){return`${this.key} in '${this.valueKey}'`}keys(){return[this.key,this.valueKey]}negate(){return this.negated||(this.negated=P0.create(this.key,this.valueKey)),this.negated}}class P0{static create(e,t){return new P0(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=11,this._negated=A0.create(e,t)}cmp(e){return e.type!==this.type?this.type-e.type:this._negated.cmp(e._negated)}equals(e){return e.type===this.type?this._negated.equals(e._negated):!1}substituteConstants(){return this}evaluate(e){return!this._negated.evaluate(e)}serialize(){return`${this.key} not in '${this.valueKey}'`}keys(){return this._negated.keys()}negate(){return this._negated}}class O0{static create(e,t,i=null){if(typeof t=="boolean")return t?tu.create(e,i):eu.create(e,i);const n=Ji.get(e);return typeof n=="boolean"?t===(n?"true":"false")?En.INSTANCE:Kn.INSTANCE:new O0(e,t,i)}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=5}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){const e=Ji.get(this.key);if(typeof e=="boolean"){const t=e?"true":"false";return this.value===t?En.INSTANCE:Kn.INSTANCE}return this}evaluate(e){return e.getValue(this.key)!=this.value}serialize(){return`${this.key} != '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=U_.create(this.key,this.value,this)),this.negated}}class tu{static create(e,t=null){const i=Ji.get(e);return typeof i=="boolean"?i?En.INSTANCE:Kn.INSTANCE:new tu(e,t)}constructor(e,t){this.key=e,this.negated=t,this.type=3}cmp(e){return e.type!==this.type?this.type-e.type:UF(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=Ji.get(this.key);return typeof e=="boolean"?e?En.INSTANCE:Kn.INSTANCE:this}evaluate(e){return!e.getValue(this.key)}serialize(){return`!${this.key}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=eu.create(this.key,this)),this.negated}}function F0(o,e){if(typeof o=="string"){const t=parseFloat(o);isNaN(t)||(o=t)}return typeof o=="string"||typeof o=="number"?e(o):En.INSTANCE}class B0{static create(e,t,i=null){return F0(t,n=>new B0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=12}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))>this.value}serialize(){return`${this.key} > ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=V0.create(this.key,this.value,this)),this.negated}}class W0{static create(e,t,i=null){return F0(t,n=>new W0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=13}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))>=this.value}serialize(){return`${this.key} >= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=H0.create(this.key,this.value,this)),this.negated}}class H0{static create(e,t,i=null){return F0(t,n=>new H0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=14}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))new V0(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=15}cmp(e){return e.type!==this.type?this.type-e.type:iu(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))<=this.value}serialize(){return`${this.key} <= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=B0.create(this.key,this.value,this)),this.negated}}class Yp{static create(e,t){return new Yp(e,t)}constructor(e,t){this.key=e,this.regexp=t,this.type=7,this.negated=null}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.keye.key)return 1;const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return ti?1:0}equals(e){if(e.type===this.type){const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return this.key===e.key&&t===i}return!1}substituteConstants(){return this}evaluate(e){const t=e.getValue(this.key);return this.regexp?this.regexp.test(t):!1}serialize(){const e=this.regexp?`/${this.regexp.source}/${this.regexp.flags}`:"/invalid/";return`${this.key} =~ ${e}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=sT.create(this)),this.negated}}class sT{static create(e){return new sT(e)}constructor(e){this._actual=e,this.type=8}cmp(e){return e.type!==this.type?this.type-e.type:this._actual.cmp(e._actual)}equals(e){return e.type===this.type?this._actual.equals(e._actual):!1}substituteConstants(){return this}evaluate(e){return!this._actual.evaluate(e)}serialize(){return`!(${this._actual.serialize()})`}keys(){return this._actual.keys()}negate(){return this._actual}}function zF(o){let e=null;for(let t=0,i=o.length;te.expr.length)return 1;for(let t=0,i=this.expr.length;t1;){const r=n[n.length-1];if(r.type!==9)break;n.pop();const a=n.pop(),l=n.length===0,c=tl.create(r.expr.map(d=>Vd.create([d,a],null,i)),null,l);c&&(n.push(c),n.sort(Gm))}if(n.length===1)return n[0];if(i){for(let r=0;re.serialize()).join(" && ")}keys(){const e=[];for(const t of this.expr)e.push(...t.keys());return e}negate(){if(!this.negated){const e=[];for(const t of this.expr)e.push(t.negate());this.negated=tl.create(e,this,!0)}return this.negated}}class tl{static create(e,t,i){return tl._normalizeArr(e,t,i)}constructor(e,t){this.expr=e,this.negated=t,this.type=9}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.expr.lengthe.expr.length)return 1;for(let t=0,i=this.expr.length;te.serialize()).join(" || ")}keys(){const e=[];for(const t of this.expr)e.push(...t.keys());return e}negate(){if(!this.negated){const e=[];for(const t of this.expr)e.push(t.negate());for(;e.length>1;){const t=e.shift(),i=e.shift(),n=[];for(const s of _R(t))for(const r of _R(i))n.push(Vd.create([s,r],null,!1));e.unshift(tl.create(n,null,!1))}this.negated=tl.create(e,this,!0)}return this.negated}}const vf=class vf extends eu{static all(){return vf._info.values()}constructor(e,t,i){super(e,null),this._defaultValue=t,typeof i=="object"?vf._info.push({...i,key:e}):i!==!0&&vf._info.push({key:e,description:i,type:t!=null?typeof t:void 0})}bindTo(e){return e.createKey(this.key,this._defaultValue)}getValue(e){return e.getContextKeyValue(this.key)}toNegated(){return this.negate()}isEqualTo(e){return U_.create(this.key,e)}};vf._info=[];let le=vf;const De=He("contextKeyService");function UF(o,e){return oe?1:0}function iu(o,e,t,i){return ot?1:ei?1:0}function Qx(o,e){if(o.type===0||e.type===1)return!0;if(o.type===9)return e.type===9?pR(o.expr,e.expr):!1;if(e.type===9){for(const t of e.expr)if(Qx(o,t))return!0;return!1}if(o.type===6){if(e.type===6)return pR(e.expr,o.expr);for(const t of o.expr)if(Qx(t,e))return!0;return!1}return o.equals(e)}function pR(o,e){let t=0,i=0;for(;t{a(),this._cachedMergedKeybindings=null})}getDefaultKeybindings(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=Array.from(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(cz)),this._cachedMergedKeybindings.slice(0)}}const Nn=new rT,lz={EditorModes:"platform.keybindingsRegistry"};Bi.add(lz.EditorModes,Nn);function cz(o,e){if(o.weight1!==e.weight1)return o.weight1-e.weight1;if(o.command&&e.command){if(o.commande.command)return 1}return o.weight2-e.weight2}var dz=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},CR=function(o,e){return function(t,i){e(t,i,o)}},L1;function Rf(o){return o.command!==void 0}function hz(o){return o.submenu!==void 0}const k=class k{constructor(e){if(k._instances.has(e))throw new TypeError(`MenuId with identifier '${e}' already exists. Use MenuId.for(ident) or a unique identifier`);k._instances.set(e,this),this.id=e}};k._instances=new Map,k.CommandPalette=new k("CommandPalette"),k.DebugBreakpointsContext=new k("DebugBreakpointsContext"),k.DebugCallStackContext=new k("DebugCallStackContext"),k.DebugConsoleContext=new k("DebugConsoleContext"),k.DebugVariablesContext=new k("DebugVariablesContext"),k.NotebookVariablesContext=new k("NotebookVariablesContext"),k.DebugHoverContext=new k("DebugHoverContext"),k.DebugWatchContext=new k("DebugWatchContext"),k.DebugToolBar=new k("DebugToolBar"),k.DebugToolBarStop=new k("DebugToolBarStop"),k.DebugCallStackToolbar=new k("DebugCallStackToolbar"),k.DebugCreateConfiguration=new k("DebugCreateConfiguration"),k.EditorContext=new k("EditorContext"),k.SimpleEditorContext=new k("SimpleEditorContext"),k.EditorContent=new k("EditorContent"),k.EditorLineNumberContext=new k("EditorLineNumberContext"),k.EditorContextCopy=new k("EditorContextCopy"),k.EditorContextPeek=new k("EditorContextPeek"),k.EditorContextShare=new k("EditorContextShare"),k.EditorTitle=new k("EditorTitle"),k.EditorTitleRun=new k("EditorTitleRun"),k.EditorTitleContext=new k("EditorTitleContext"),k.EditorTitleContextShare=new k("EditorTitleContextShare"),k.EmptyEditorGroup=new k("EmptyEditorGroup"),k.EmptyEditorGroupContext=new k("EmptyEditorGroupContext"),k.EditorTabsBarContext=new k("EditorTabsBarContext"),k.EditorTabsBarShowTabsSubmenu=new k("EditorTabsBarShowTabsSubmenu"),k.EditorTabsBarShowTabsZenModeSubmenu=new k("EditorTabsBarShowTabsZenModeSubmenu"),k.EditorActionsPositionSubmenu=new k("EditorActionsPositionSubmenu"),k.ExplorerContext=new k("ExplorerContext"),k.ExplorerContextShare=new k("ExplorerContextShare"),k.ExtensionContext=new k("ExtensionContext"),k.GlobalActivity=new k("GlobalActivity"),k.CommandCenter=new k("CommandCenter"),k.CommandCenterCenter=new k("CommandCenterCenter"),k.LayoutControlMenuSubmenu=new k("LayoutControlMenuSubmenu"),k.LayoutControlMenu=new k("LayoutControlMenu"),k.MenubarMainMenu=new k("MenubarMainMenu"),k.MenubarAppearanceMenu=new k("MenubarAppearanceMenu"),k.MenubarDebugMenu=new k("MenubarDebugMenu"),k.MenubarEditMenu=new k("MenubarEditMenu"),k.MenubarCopy=new k("MenubarCopy"),k.MenubarFileMenu=new k("MenubarFileMenu"),k.MenubarGoMenu=new k("MenubarGoMenu"),k.MenubarHelpMenu=new k("MenubarHelpMenu"),k.MenubarLayoutMenu=new k("MenubarLayoutMenu"),k.MenubarNewBreakpointMenu=new k("MenubarNewBreakpointMenu"),k.PanelAlignmentMenu=new k("PanelAlignmentMenu"),k.PanelPositionMenu=new k("PanelPositionMenu"),k.ActivityBarPositionMenu=new k("ActivityBarPositionMenu"),k.MenubarPreferencesMenu=new k("MenubarPreferencesMenu"),k.MenubarRecentMenu=new k("MenubarRecentMenu"),k.MenubarSelectionMenu=new k("MenubarSelectionMenu"),k.MenubarShare=new k("MenubarShare"),k.MenubarSwitchEditorMenu=new k("MenubarSwitchEditorMenu"),k.MenubarSwitchGroupMenu=new k("MenubarSwitchGroupMenu"),k.MenubarTerminalMenu=new k("MenubarTerminalMenu"),k.MenubarViewMenu=new k("MenubarViewMenu"),k.MenubarHomeMenu=new k("MenubarHomeMenu"),k.OpenEditorsContext=new k("OpenEditorsContext"),k.OpenEditorsContextShare=new k("OpenEditorsContextShare"),k.ProblemsPanelContext=new k("ProblemsPanelContext"),k.SCMInputBox=new k("SCMInputBox"),k.SCMChangesSeparator=new k("SCMChangesSeparator"),k.SCMChangesContext=new k("SCMChangesContext"),k.SCMIncomingChanges=new k("SCMIncomingChanges"),k.SCMIncomingChangesContext=new k("SCMIncomingChangesContext"),k.SCMIncomingChangesSetting=new k("SCMIncomingChangesSetting"),k.SCMOutgoingChanges=new k("SCMOutgoingChanges"),k.SCMOutgoingChangesContext=new k("SCMOutgoingChangesContext"),k.SCMOutgoingChangesSetting=new k("SCMOutgoingChangesSetting"),k.SCMIncomingChangesAllChangesContext=new k("SCMIncomingChangesAllChangesContext"),k.SCMIncomingChangesHistoryItemContext=new k("SCMIncomingChangesHistoryItemContext"),k.SCMOutgoingChangesAllChangesContext=new k("SCMOutgoingChangesAllChangesContext"),k.SCMOutgoingChangesHistoryItemContext=new k("SCMOutgoingChangesHistoryItemContext"),k.SCMChangeContext=new k("SCMChangeContext"),k.SCMResourceContext=new k("SCMResourceContext"),k.SCMResourceContextShare=new k("SCMResourceContextShare"),k.SCMResourceFolderContext=new k("SCMResourceFolderContext"),k.SCMResourceGroupContext=new k("SCMResourceGroupContext"),k.SCMSourceControl=new k("SCMSourceControl"),k.SCMSourceControlInline=new k("SCMSourceControlInline"),k.SCMSourceControlTitle=new k("SCMSourceControlTitle"),k.SCMHistoryTitle=new k("SCMHistoryTitle"),k.SCMTitle=new k("SCMTitle"),k.SearchContext=new k("SearchContext"),k.SearchActionMenu=new k("SearchActionContext"),k.StatusBarWindowIndicatorMenu=new k("StatusBarWindowIndicatorMenu"),k.StatusBarRemoteIndicatorMenu=new k("StatusBarRemoteIndicatorMenu"),k.StickyScrollContext=new k("StickyScrollContext"),k.TestItem=new k("TestItem"),k.TestItemGutter=new k("TestItemGutter"),k.TestProfilesContext=new k("TestProfilesContext"),k.TestMessageContext=new k("TestMessageContext"),k.TestMessageContent=new k("TestMessageContent"),k.TestPeekElement=new k("TestPeekElement"),k.TestPeekTitle=new k("TestPeekTitle"),k.TestCallStack=new k("TestCallStack"),k.TouchBarContext=new k("TouchBarContext"),k.TitleBarContext=new k("TitleBarContext"),k.TitleBarTitleContext=new k("TitleBarTitleContext"),k.TunnelContext=new k("TunnelContext"),k.TunnelPrivacy=new k("TunnelPrivacy"),k.TunnelProtocol=new k("TunnelProtocol"),k.TunnelPortInline=new k("TunnelInline"),k.TunnelTitle=new k("TunnelTitle"),k.TunnelLocalAddressInline=new k("TunnelLocalAddressInline"),k.TunnelOriginInline=new k("TunnelOriginInline"),k.ViewItemContext=new k("ViewItemContext"),k.ViewContainerTitle=new k("ViewContainerTitle"),k.ViewContainerTitleContext=new k("ViewContainerTitleContext"),k.ViewTitle=new k("ViewTitle"),k.ViewTitleContext=new k("ViewTitleContext"),k.CommentEditorActions=new k("CommentEditorActions"),k.CommentThreadTitle=new k("CommentThreadTitle"),k.CommentThreadActions=new k("CommentThreadActions"),k.CommentThreadAdditionalActions=new k("CommentThreadAdditionalActions"),k.CommentThreadTitleContext=new k("CommentThreadTitleContext"),k.CommentThreadCommentContext=new k("CommentThreadCommentContext"),k.CommentTitle=new k("CommentTitle"),k.CommentActions=new k("CommentActions"),k.CommentsViewThreadActions=new k("CommentsViewThreadActions"),k.InteractiveToolbar=new k("InteractiveToolbar"),k.InteractiveCellTitle=new k("InteractiveCellTitle"),k.InteractiveCellDelete=new k("InteractiveCellDelete"),k.InteractiveCellExecute=new k("InteractiveCellExecute"),k.InteractiveInputExecute=new k("InteractiveInputExecute"),k.InteractiveInputConfig=new k("InteractiveInputConfig"),k.ReplInputExecute=new k("ReplInputExecute"),k.IssueReporter=new k("IssueReporter"),k.NotebookToolbar=new k("NotebookToolbar"),k.NotebookStickyScrollContext=new k("NotebookStickyScrollContext"),k.NotebookCellTitle=new k("NotebookCellTitle"),k.NotebookCellDelete=new k("NotebookCellDelete"),k.NotebookCellInsert=new k("NotebookCellInsert"),k.NotebookCellBetween=new k("NotebookCellBetween"),k.NotebookCellListTop=new k("NotebookCellTop"),k.NotebookCellExecute=new k("NotebookCellExecute"),k.NotebookCellExecuteGoTo=new k("NotebookCellExecuteGoTo"),k.NotebookCellExecutePrimary=new k("NotebookCellExecutePrimary"),k.NotebookDiffCellInputTitle=new k("NotebookDiffCellInputTitle"),k.NotebookDiffCellMetadataTitle=new k("NotebookDiffCellMetadataTitle"),k.NotebookDiffCellOutputsTitle=new k("NotebookDiffCellOutputsTitle"),k.NotebookOutputToolbar=new k("NotebookOutputToolbar"),k.NotebookOutlineFilter=new k("NotebookOutlineFilter"),k.NotebookOutlineActionMenu=new k("NotebookOutlineActionMenu"),k.NotebookEditorLayoutConfigure=new k("NotebookEditorLayoutConfigure"),k.NotebookKernelSource=new k("NotebookKernelSource"),k.BulkEditTitle=new k("BulkEditTitle"),k.BulkEditContext=new k("BulkEditContext"),k.TimelineItemContext=new k("TimelineItemContext"),k.TimelineTitle=new k("TimelineTitle"),k.TimelineTitleContext=new k("TimelineTitleContext"),k.TimelineFilterSubMenu=new k("TimelineFilterSubMenu"),k.AccountsContext=new k("AccountsContext"),k.SidebarTitle=new k("SidebarTitle"),k.PanelTitle=new k("PanelTitle"),k.AuxiliaryBarTitle=new k("AuxiliaryBarTitle"),k.AuxiliaryBarHeader=new k("AuxiliaryBarHeader"),k.TerminalInstanceContext=new k("TerminalInstanceContext"),k.TerminalEditorInstanceContext=new k("TerminalEditorInstanceContext"),k.TerminalNewDropdownContext=new k("TerminalNewDropdownContext"),k.TerminalTabContext=new k("TerminalTabContext"),k.TerminalTabEmptyAreaContext=new k("TerminalTabEmptyAreaContext"),k.TerminalStickyScrollContext=new k("TerminalStickyScrollContext"),k.WebviewContext=new k("WebviewContext"),k.InlineCompletionsActions=new k("InlineCompletionsActions"),k.InlineEditsActions=new k("InlineEditsActions"),k.InlineEditActions=new k("InlineEditActions"),k.NewFile=new k("NewFile"),k.MergeInput1Toolbar=new k("MergeToolbar1Toolbar"),k.MergeInput2Toolbar=new k("MergeToolbar2Toolbar"),k.MergeBaseToolbar=new k("MergeBaseToolbar"),k.MergeInputResultToolbar=new k("MergeToolbarResultToolbar"),k.InlineSuggestionToolbar=new k("InlineSuggestionToolbar"),k.InlineEditToolbar=new k("InlineEditToolbar"),k.ChatContext=new k("ChatContext"),k.ChatCodeBlock=new k("ChatCodeblock"),k.ChatCompareBlock=new k("ChatCompareBlock"),k.ChatMessageTitle=new k("ChatMessageTitle"),k.ChatExecute=new k("ChatExecute"),k.ChatExecuteSecondary=new k("ChatExecuteSecondary"),k.ChatInputSide=new k("ChatInputSide"),k.AccessibleView=new k("AccessibleView"),k.MultiDiffEditorFileToolbar=new k("MultiDiffEditorFileToolbar"),k.DiffEditorHunkToolbar=new k("DiffEditorHunkToolbar"),k.DiffEditorSelectionToolbar=new k("DiffEditorSelectionToolbar");let $e=k;const yr=He("menuService"),kp=class kp{static for(e){let t=this._all.get(e);return t||(t=new kp(e),this._all.set(e,t)),t}static merge(e){const t=new Set;for(const i of e)i instanceof kp&&t.add(i.id);return t}constructor(e){this.id=e,this.has=t=>t===e}};kp._all=new Map;let _d=kp;const Eo=new class{constructor(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new DW({merge:_d.merge}),this.onDidChangeMenu=this._onDidChangeMenu.event}addCommand(o){return this._commands.set(o.id,o),this._onDidChangeMenu.fire(_d.for($e.CommandPalette)),_e(()=>{this._commands.delete(o.id)&&this._onDidChangeMenu.fire(_d.for($e.CommandPalette))})}getCommand(o){return this._commands.get(o)}getCommands(){const o=new Map;return this._commands.forEach((e,t)=>o.set(t,e)),o}appendMenuItem(o,e){let t=this._menuItems.get(o);t||(t=new yn,this._menuItems.set(o,t));const i=t.push(e);return this._onDidChangeMenu.fire(_d.for(o)),_e(()=>{i(),this._onDidChangeMenu.fire(_d.for(o))})}appendMenuItems(o){const e=new X;for(const{id:t,item:i}of o)e.add(this.appendMenuItem(t,i));return e}getMenuItems(o){let e;return this._menuItems.has(o)?e=[...this._menuItems.get(o)]:e=[],o===$e.CommandPalette&&this._appendImplicitItems(e),e}_appendImplicitItems(o){const e=new Set;for(const t of o)Rf(t)&&(e.add(t.command.id),t.alt&&e.add(t.alt.id));this._commands.forEach((t,i)=>{e.has(i)||o.push({command:t})})}};class Zm extends R0{constructor(e,t,i){super(`submenuitem.${e.submenu.id}`,typeof e.title=="string"?e.title:e.title.value,i,"submenu"),this.item=e,this.hideActions=t}}let so=L1=class{static label(e,t){return t?.renderShortTitle&&e.shortTitle?typeof e.shortTitle=="string"?e.shortTitle:e.shortTitle.value:typeof e.title=="string"?e.title:e.title.value}constructor(e,t,i,n,s,r,a){this.hideActions=n,this.menuKeybinding=s,this._commandService=a,this.id=e.id,this.label=L1.label(e,i),this.tooltip=(typeof e.tooltip=="string"?e.tooltip:e.tooltip?.value)??"",this.enabled=!e.precondition||r.contextMatchesRules(e.precondition),this.checked=void 0;let l;if(e.toggled){const c=e.toggled.condition?e.toggled:{condition:e.toggled};this.checked=r.contextMatchesRules(c.condition),this.checked&&c.tooltip&&(this.tooltip=typeof c.tooltip=="string"?c.tooltip:c.tooltip.value),this.checked&&Ee.isThemeIcon(c.icon)&&(l=c.icon),this.checked&&c.title&&(this.label=typeof c.title=="string"?c.title:c.title.value)}l||(l=Ee.isThemeIcon(e.icon)?e.icon:void 0),this.item=e,this.alt=t?new L1(t,void 0,i,n,void 0,r,a):void 0,this._options=i,this.class=l&&Ee.asClassName(l)}run(...e){let t=[];return this._options?.arg&&(t=[...t,this._options.arg]),this._options?.shouldForwardArgs&&(t=[...t,...e]),this._commandService.executeCommand(this.id,...t)}};so=L1=dz([CR(5,De),CR(6,hi)],so);class nu{constructor(e){this.desc=e}}function Rn(o){const e=[],t=new o,{f1:i,menu:n,keybinding:s,...r}=t.desc;if(bt.getCommand(r.id))throw new Error(`Cannot register two commands with the same id: ${r.id}`);if(e.push(bt.registerCommand({id:r.id,handler:(a,...l)=>t.run(a,...l),metadata:r.metadata})),Array.isArray(n))for(const a of n)e.push(Eo.appendMenuItem(a.id,{command:{...r,precondition:a.precondition===null?void 0:r.precondition},...a}));else n&&e.push(Eo.appendMenuItem(n.id,{command:{...r,precondition:n.precondition===null?void 0:r.precondition},...n}));if(i&&(e.push(Eo.appendMenuItem($e.CommandPalette,{command:r,when:r.precondition})),e.push(Eo.addCommand(r))),Array.isArray(s))for(const a of s)e.push(Nn.registerKeybindingRule({...a,id:r.id,when:r.precondition?re.and(r.precondition,a.when):a.when}));else s&&e.push(Nn.registerKeybindingRule({...s,id:r.id,when:r.precondition?re.and(r.precondition,s.when):s.when}));return{dispose(){xt(e)}}}const $s=He("telemetryService"),gs=He("logService");var Wn;(function(o){o[o.Off=0]="Off",o[o.Trace=1]="Trace",o[o.Debug=2]="Debug",o[o.Info=3]="Info",o[o.Warning=4]="Warning",o[o.Error=5]="Error"})(Wn||(Wn={}));const $F=Wn.Info;class KF extends z{constructor(){super(...arguments),this.level=$F,this._onDidChangeLogLevel=this._register(new A),this.onDidChangeLogLevel=this._onDidChangeLogLevel.event}setLevel(e){this.level!==e&&(this.level=e,this._onDidChangeLogLevel.fire(this.level))}getLevel(){return this.level}checkLogLevel(e){return this.level!==Wn.Off&&this.level<=e}}class uz extends KF{constructor(e=$F,t=!0){super(),this.useColors=t,this.setLevel(e)}trace(e,...t){this.checkLogLevel(Wn.Trace)&&(this.useColors?console.log("%cTRACE","color: #888",e,...t):console.log(e,...t))}debug(e,...t){this.checkLogLevel(Wn.Debug)&&(this.useColors?console.log("%cDEBUG","background: #eee; color: #888",e,...t):console.log(e,...t))}info(e,...t){this.checkLogLevel(Wn.Info)&&(this.useColors?console.log("%c INFO","color: #33f",e,...t):console.log(e,...t))}warn(e,...t){this.checkLogLevel(Wn.Warning)&&(this.useColors?console.log("%c WARN","color: #993",e,...t):console.log(e,...t))}error(e,...t){this.checkLogLevel(Wn.Error)&&(this.useColors?console.log("%c ERR","color: #f33",e,...t):console.error(e,...t))}}class fz extends KF{constructor(e){super(),this.loggers=e,e.length&&this.setLevel(e[0].getLevel())}setLevel(e){for(const t of this.loggers)t.setLevel(e);super.setLevel(e)}trace(e,...t){for(const i of this.loggers)i.trace(e,...t)}debug(e,...t){for(const i of this.loggers)i.debug(e,...t)}info(e,...t){for(const i of this.loggers)i.info(e,...t)}warn(e,...t){for(const i of this.loggers)i.warn(e,...t)}error(e,...t){for(const i of this.loggers)i.error(e,...t)}dispose(){for(const e of this.loggers)e.dispose();super.dispose()}}function gz(o){switch(o){case Wn.Trace:return"trace";case Wn.Debug:return"debug";case Wn.Info:return"info";case Wn.Warning:return"warn";case Wn.Error:return"error";case Wn.Off:return"off"}}new le("logLevel",gz(Wn.Info));class U0{constructor(e){this.id=e.id,this.precondition=e.precondition,this._kbOpts=e.kbOpts,this._menuOpts=e.menuOpts,this.metadata=e.metadata}register(){if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts){const e=Array.isArray(this._kbOpts)?this._kbOpts:[this._kbOpts];for(const t of e){let i=t.kbExpr;this.precondition&&(i?i=re.and(i,this.precondition):i=this.precondition);const n={id:this.id,weight:t.weight,args:t.args,when:i,primary:t.primary,secondary:t.secondary,win:t.win,linux:t.linux,mac:t.mac};Nn.registerKeybindingRule(n)}}bt.registerCommand({id:this.id,handler:(e,t)=>this.runCommand(e,t),metadata:this.metadata})}_registerMenuItem(e){Eo.appendMenuItem(e.menuId,{group:e.group,command:{id:this.id,title:e.title,icon:e.icon,precondition:this.precondition},when:e.when,order:e.order})}}class aT extends U0{constructor(){super(...arguments),this._implementations=[]}addImplementation(e,t,i,n){return this._implementations.push({priority:e,name:t,implementation:i,when:n}),this._implementations.sort((s,r)=>r.priority-s.priority),{dispose:()=>{for(let s=0;s{if(a.get(De).contextMatchesRules(i??void 0))return n(a,r,t)})}runCommand(e,t){return co.runEditorCommand(e,t,this.precondition,(i,n,s)=>this.runEditorCommand(i,n,s))}}class bi extends co{static convertOptions(e){let t;Array.isArray(e.menuOpts)?t=e.menuOpts:e.menuOpts?t=[e.menuOpts]:t=[];function i(n){return n.menuId||(n.menuId=$e.EditorContext),n.title||(n.title=e.label),n.when=re.and(e.precondition,n.when),n}return Array.isArray(e.contextMenuOpts)?t.push(...e.contextMenuOpts.map(i)):e.contextMenuOpts&&t.push(i(e.contextMenuOpts)),e.menuOpts=t,e}constructor(e){super(bi.convertOptions(e)),this.label=e.label,this.alias=e.alias}runEditorCommand(e,t,i){return this.reportTelemetry(e,t),this.run(e,t,i||{})}reportTelemetry(e,t){e.get($s).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class mz extends nu{run(e,...t){const i=e.get(Pt),n=i.getFocusedCodeEditor()||i.getActiveCodeEditor();if(n)return n.invokeWithinContext(s=>{const r=s.get(De),a=s.get(gs);if(!r.contextMatchesRules(this.desc.precondition??void 0)){a.debug("[EditorAction2] NOT running command because its precondition is FALSE",this.desc.id,this.desc.precondition?.serialize());return}return this.runEditorCommand(s,n,...t)})}}function Wo(o,e){bt.registerCommand(o,function(t,...i){const n=t.get(ke),[s,r]=i;ai(ve.isUri(s)),ai(P.isIPosition(r));const a=t.get(Fi).getModel(s);if(a){const l=P.lift(r);return n.invokeFunction(e,a,l,...i.slice(2))}return t.get(fo).createModelReference(s).then(l=>new Promise((c,d)=>{try{const h=n.invokeFunction(e,l.object.textEditorModel,P.lift(r),i.slice(2));c(h)}catch(h){d(h)}}).finally(()=>{l.dispose()}))})}function ge(o){return cr.INSTANCE.registerEditorCommand(o),o}function mi(o){const e=new o;return cr.INSTANCE.registerEditorAction(e),e}function Ho(o,e,t){cr.INSTANCE.registerEditorContribution(o,e,t)}var Af;(function(o){function e(r){return cr.INSTANCE.getEditorCommand(r)}o.getEditorCommand=e;function t(){return cr.INSTANCE.getEditorActions()}o.getEditorActions=t;function i(){return cr.INSTANCE.getEditorContributions()}o.getEditorContributions=i;function n(r){return cr.INSTANCE.getEditorContributions().filter(a=>r.indexOf(a.id)>=0)}o.getSomeEditorContributions=n;function s(){return cr.INSTANCE.getDiffEditorContributions()}o.getDiffEditorContributions=s})(Af||(Af={}));const pz={EditorCommonContributions:"editor.contributions"},xw=class xw{constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(e,t,i){this.editorContributions.push({id:e,ctor:t,instantiation:i})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(e){e.register(),this.editorActions.push(e)}getEditorActions(){return this.editorActions}registerEditorCommand(e){e.register(),this.editorCommands[e.id]=e}getEditorCommand(e){return this.editorCommands[e]||null}};xw.INSTANCE=new xw;let cr=xw;Bi.add(pz.EditorCommonContributions,cr.INSTANCE);function $_(o){return o.register(),o}const qF=$_(new aT({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2104},menuOpts:[{menuId:$e.MenubarEditMenu,group:"1_do",title:m({key:"miUndo",comment:["&& denotes a mnemonic"]},"&&Undo"),order:1},{menuId:$e.CommandPalette,group:"",title:m("undo","Undo"),order:1}]}));$_(new jF(qF,{id:"default:undo",precondition:void 0}));const GF=$_(new aT({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:[{menuId:$e.MenubarEditMenu,group:"1_do",title:m({key:"miRedo",comment:["&& denotes a mnemonic"]},"&&Redo"),order:2},{menuId:$e.CommandPalette,group:"",title:m("redo","Redo"),order:1}]}));$_(new jF(GF,{id:"default:redo",precondition:void 0}));const _z=$_(new aT({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:[{menuId:$e.MenubarSelectionMenu,group:"1_basic",title:m({key:"miSelectAll",comment:["&& denotes a mnemonic"]},"&&Select All"),order:1},{menuId:$e.CommandPalette,group:"",title:m("selectAll","Select All"),order:1}]})),bz="modulepreload",Cz=function(o,e){return new URL(o,e).href},vR={},vz=function(e,t,i){let n=Promise.resolve();if(t&&t.length>0){let c=function(d){return Promise.all(d.map(h=>Promise.resolve(h).then(u=>({status:"fulfilled",value:u}),u=>({status:"rejected",reason:u}))))};const r=document.getElementsByTagName("link"),a=document.querySelector("meta[property=csp-nonce]"),l=a?.nonce||a?.getAttribute("nonce");n=c(t.map(d=>{if(d=Cz(d,i),d in vR)return;vR[d]=!0;const h=d.endsWith(".css"),u=h?'[rel="stylesheet"]':"";if(i)for(let g=r.length-1;g>=0;g--){const p=r[g];if(p.href===d&&(!h||p.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${d}"]${u}`))return;const f=document.createElement("link");if(f.rel=h?"stylesheet":bz,h||(f.as="script"),f.crossOrigin="",f.href=d,l&&f.setAttribute("nonce",l),document.head.appendChild(f),h)return new Promise((g,p)=>{f.addEventListener("load",g),f.addEventListener("error",()=>p(new Error(`Unable to preload CSS for ${d}`)))})}))}function s(r){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=r,window.dispatchEvent(a),!a.defaultPrevented)throw r}return n.then(r=>{for(const a of r||[])a.status==="rejected"&&s(a.reason);return e().catch(s)})},wR="default",wz="$initialize";let yR=!1;function Xx(o){Og&&(yR||(yR=!0,console.warn("Could not create web worker(s). Falling back to loading web worker code in main thread, which might cause UI freezes. Please see https://github.com/microsoft/monaco-editor#faq")),console.warn(o.message))}class yz{constructor(e,t,i,n,s){this.vsWorker=e,this.req=t,this.channel=i,this.method=n,this.args=s,this.type=0}}class SR{constructor(e,t,i,n){this.vsWorker=e,this.seq=t,this.res=i,this.err=n,this.type=1}}class Sz{constructor(e,t,i,n,s){this.vsWorker=e,this.req=t,this.channel=i,this.eventName=n,this.arg=s,this.type=2}}class Lz{constructor(e,t,i){this.vsWorker=e,this.req=t,this.event=i,this.type=3}}class xz{constructor(e,t){this.vsWorker=e,this.req=t,this.type=4}}class kz{constructor(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(e){this._workerId=e}sendMessage(e,t,i){const n=String(++this._lastSentReq);return new Promise((s,r)=>{this._pendingReplies[n]={resolve:s,reject:r},this._send(new yz(this._workerId,n,e,t,i))})}listen(e,t,i){let n=null;const s=new A({onWillAddFirstListener:()=>{n=String(++this._lastSentReq),this._pendingEmitters.set(n,s),this._send(new Sz(this._workerId,n,e,t,i))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(n),this._send(new xz(this._workerId,n)),n=null}});return s.event}handleMessage(e){!e||!e.vsWorker||this._workerId!==-1&&e.vsWorker!==this._workerId||this._handleMessage(e)}createProxyToRemoteChannel(e,t){const i={get:(n,s)=>(typeof s=="string"&&!n[s]&&(YF(s)?n[s]=r=>this.listen(e,s,r):ZF(s)?n[s]=this.listen(e,s,void 0):s.charCodeAt(0)===36&&(n[s]=async(...r)=>(await t?.(),this.sendMessage(e,s,r)))),n[s])};return new Proxy(Object.create(null),i)}_handleMessage(e){switch(e.type){case 1:return this._handleReplyMessage(e);case 0:return this._handleRequestMessage(e);case 2:return this._handleSubscribeEventMessage(e);case 3:return this._handleEventMessage(e);case 4:return this._handleUnsubscribeEventMessage(e)}}_handleReplyMessage(e){if(!this._pendingReplies[e.seq]){console.warn("Got reply to unknown seq");return}const t=this._pendingReplies[e.seq];if(delete this._pendingReplies[e.seq],e.err){let i=e.err;e.err.$isError&&(i=new Error,i.name=e.err.name,i.message=e.err.message,i.stack=e.err.stack),t.reject(i);return}t.resolve(e.res)}_handleRequestMessage(e){const t=e.req;this._handler.handleMessage(e.channel,e.method,e.args).then(n=>{this._send(new SR(this._workerId,t,n,void 0))},n=>{n.detail instanceof Error&&(n.detail=HM(n.detail)),this._send(new SR(this._workerId,t,void 0,HM(n)))})}_handleSubscribeEventMessage(e){const t=e.req,i=this._handler.handleEvent(e.channel,e.eventName,e.arg)(n=>{this._send(new Lz(this._workerId,t,n))});this._pendingEvents.set(t,i)}_handleEventMessage(e){if(!this._pendingEmitters.has(e.req)){console.warn("Got event for unknown req");return}this._pendingEmitters.get(e.req).fire(e.event)}_handleUnsubscribeEventMessage(e){if(!this._pendingEvents.has(e.req)){console.warn("Got unsubscribe for unknown req");return}this._pendingEvents.get(e.req).dispose(),this._pendingEvents.delete(e.req)}_send(e){const t=[];if(e.type===0)for(let i=0;i{this._protocol.handleMessage(s)},s=>{Ze(s)})),this._protocol=new kz({sendMessage:(s,r)=>{this._worker.postMessage(s,r)},handleMessage:(s,r,a)=>this._handleMessage(s,r,a),handleEvent:(s,r,a)=>this._handleEvent(s,r,a)}),this._protocol.setWorkerId(this._worker.getId());let i=null;const n=globalThis.require;typeof n<"u"&&typeof n.getConfig=="function"?i=n.getConfig():typeof globalThis.requirejs<"u"&&(i=globalThis.requirejs.s.contexts._.config),this._onModuleLoaded=this._protocol.sendMessage(wR,wz,[this._worker.getId(),JSON.parse(JSON.stringify(i)),t.amdModuleId]),this.proxy=this._protocol.createProxyToRemoteChannel(wR,async()=>{await this._onModuleLoaded}),this._onModuleLoaded.catch(s=>{this._onError("Worker failed to load "+t.amdModuleId,s)})}_handleMessage(e,t,i){const n=this._localChannels.get(e);if(!n)return Promise.reject(new Error(`Missing channel ${e} on main thread`));if(typeof n[t]!="function")return Promise.reject(new Error(`Missing method ${t} on main thread channel ${e}`));try{return Promise.resolve(n[t].apply(n,i))}catch(s){return Promise.reject(s)}}_handleEvent(e,t,i){const n=this._localChannels.get(e);if(!n)throw new Error(`Missing channel ${e} on main thread`);if(YF(t)){const s=n[t].call(n,i);if(typeof s!="function")throw new Error(`Missing dynamic event ${t} on main thread channel ${e}.`);return s}if(ZF(t)){const s=n[t];if(typeof s!="function")throw new Error(`Missing event ${t} on main thread channel ${e}.`);return s}throw new Error(`Malformed event name ${t}`)}setChannel(e,t){this._localChannels.set(e,t)}_onError(e,t){console.error(e),console.info(t)}}function ZF(o){return o[0]==="o"&&o[1]==="n"&&ql(o.charCodeAt(2))}function YF(o){return/^onDynamic/.test(o)&&ql(o.charCodeAt(9))}function Kc(o,e){const t=globalThis.MonacoEnvironment;if(t?.createTrustedTypesPolicy)try{return t.createTrustedTypesPolicy(o,e)}catch(i){Ze(i);return}try{return globalThis.trustedTypes?.createPolicy(o,e)}catch(i){Ze(i);return}}let Xu;typeof self=="object"&&self.constructor&&self.constructor.name==="DedicatedWorkerGlobalScope"&&globalThis.workerttPolicy!==void 0?Xu=globalThis.workerttPolicy:Xu=Kc("defaultWorkerFactory",{createScriptURL:o=>o});function Iz(o,e){const t=globalThis.MonacoEnvironment;if(t){if(typeof t.getWorker=="function")return t.getWorker("workerMain.js",e);if(typeof t.getWorkerUrl=="function"){const i=t.getWorkerUrl("workerMain.js",e);return new Worker(Xu?Xu.createScriptURL(i):i,{name:e,type:"module"})}}if(o){const i=Ez(e,o.toString(!0)),n=new Worker(Xu?Xu.createScriptURL(i):i,{name:e,type:"module"});return Nz(n)}throw new Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}function Ez(o,e,t){if(!(/^((http:)|(https:)|(file:)|(vscode-file:))/.test(e)&&e.substring(0,globalThis.origin.length)!==globalThis.origin)){const s=e.lastIndexOf("?"),r=e.lastIndexOf("#",s),a=s>0?new URLSearchParams(e.substring(s+1,~r?r:void 0)):new URLSearchParams;$x.addSearchParam(a,!0,!0),a.toString()?e=`${e}?${a.toString()}#${o}`:e=`${e}#${o}`}const n=new Blob([Ag([`/*${o}*/`,void 0,`globalThis._VSCODE_NLS_MESSAGES = ${JSON.stringify(F5())};`,`globalThis._VSCODE_NLS_LANGUAGE = ${JSON.stringify(kN())};`,`globalThis._VSCODE_FILE_ROOT = '${globalThis._VSCODE_FILE_ROOT}';`,"const ttPolicy = globalThis.trustedTypes?.createPolicy('defaultWorkerFactory', { createScriptURL: value => value });","globalThis.workerttPolicy = ttPolicy;",`await import(ttPolicy?.createScriptURL('${e}') ?? '${e}');`,"globalThis.postMessage({ type: 'vscode-worker-ready' });",`/*${o}*/`]).join("")],{type:"application/javascript"});return URL.createObjectURL(n)}function Nz(o){return new Promise((e,t)=>{o.onmessage=function(i){i.data.type==="vscode-worker-ready"&&(o.onmessage=null,e(o))},o.onerror=t})}function Tz(o){return typeof o.then=="function"}class Mz extends z{constructor(e,t,i,n,s,r){super(),this.id=i,this.label=n;const a=Iz(e,n);Tz(a)?this.worker=a:this.worker=Promise.resolve(a),this.postMessage(t,[]),this.worker.then(l=>{l.onmessage=function(c){s(c.data)},l.onmessageerror=r,typeof l.addEventListener=="function"&&l.addEventListener("error",r)}),this._register(_e(()=>{this.worker?.then(l=>{l.onmessage=null,l.onmessageerror=null,l.removeEventListener("error",r),l.terminate()}),this.worker=null}))}getId(){return this.id}postMessage(e,t){this.worker?.then(i=>{try{i.postMessage(e,t)}catch(n){Ze(n),Ze(new Error(`FAILED to post message to '${this.label}'-worker`,{cause:n}))}})}}class Rz{constructor(e,t){this.amdModuleId=e,this.label=t,this.esmModuleLocation=E0.asBrowserUri(`${e}.esm.js`)}}const kw=class kw{constructor(){this._webWorkerFailedBeforeError=!1}create(e,t,i){const n=++kw.LAST_WORKER_ID;if(this._webWorkerFailedBeforeError)throw this._webWorkerFailedBeforeError;return new Mz(e.esmModuleLocation,e.amdModuleId,n,e.label||"anonymous"+n,t,s=>{Xx(s),this._webWorkerFailedBeforeError=s,i(s)})}};kw.LAST_WORKER_ID=0;let Jx=kw;function Az(o,e){const t=typeof o=="string"?new Rz(o,e):o;return new Dz(new Jx,t)}var Sn;(function(o){o[o.None=0]="None",o[o.Indent=1]="Indent",o[o.IndentOutdent=2]="IndentOutdent",o[o.Outdent=3]="Outdent"})(Sn||(Sn={}));class uS{constructor(e){if(this._neutralCharacter=null,this._neutralCharacterSearched=!1,this.open=e.open,this.close=e.close,this._inString=!0,this._inComment=!0,this._inRegEx=!0,Array.isArray(e.notIn))for(let t=0,i=e.notIn.length;tnew uS(t)):e.brackets?this._autoClosingPairs=e.brackets.map(t=>new uS({open:t[0],close:t[1]})):this._autoClosingPairs=[],e.__electricCharacterSupport&&e.__electricCharacterSupport.docComment){const t=e.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new uS({open:t.open,close:t.close||""}))}this._autoCloseBeforeForQuotes=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES,this._autoCloseBeforeForBrackets=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS,this._surroundingPairs=e.surroundingPairs||this._autoClosingPairs}getAutoClosingPairs(){return this._autoClosingPairs}getAutoCloseBeforeSet(e){return e?this._autoCloseBeforeForQuotes:this._autoCloseBeforeForBrackets}getSurroundingPairs(){return this._surroundingPairs}};wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES=`;:.,=}])> - `,wf.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS=`'"\`;:.,=}])> - `;let ek=wf;function zd(o,e){const t=o.getCount(),i=o.findTokenIndexAtOffset(e),n=o.getLanguageId(i);let s=i;for(;s+10&&o.getLanguageId(r-1)===n;)r--;return new Oz(o,n,r,s+1,o.getStartOffset(r),o.getEndOffset(s))}class Oz{constructor(e,t,i,n,s,r){this._scopedLineTokensBrand=void 0,this._actual=e,this.languageId=t,this._firstTokenIndex=i,this._lastTokenIndex=n,this.firstCharOffset=s,this._lastCharOffset=r,this.languageIdCodec=e.languageIdCodec}getLineContent(){return this._actual.getLineContent().substring(this.firstCharOffset,this._lastCharOffset)}getLineLength(){return this._lastCharOffset-this.firstCharOffset}getActualLineContentBefore(e){return this._actual.getLineContent().substring(0,this.firstCharOffset+e)}getTokenCount(){return this._lastTokenIndex-this._firstTokenIndex}findTokenIndexAtOffset(e){return this._actual.findTokenIndexAtOffset(e+this.firstCharOffset)-this._firstTokenIndex}getStandardTokenType(e){return this._actual.getStandardTokenType(e+this._firstTokenIndex)}toIViewLineTokens(){return this._actual.sliceAndInflate(this.firstCharOffset,this._lastCharOffset,0)}}function Pr(o){return(o&3)!==0}const LR=typeof Buffer<"u";let fS;class lT{static wrap(e){return LR&&!Buffer.isBuffer(e)&&(e=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),new lT(e)}constructor(e){this.buffer=e,this.byteLength=this.buffer.byteLength}toString(){return LR?this.buffer.toString():(fS||(fS=new TextDecoder),fS.decode(this.buffer))}}function Fz(o,e){return o[e+0]<<0>>>0|o[e+1]<<8>>>0}function Bz(o,e,t){o[t+0]=e&255,e=e>>>8,o[t+1]=e&255}function Jo(o,e){return o[e]*2**24+o[e+1]*2**16+o[e+2]*2**8+o[e+3]}function er(o,e,t){o[t+3]=e,e=e>>>8,o[t+2]=e,e=e>>>8,o[t+1]=e,e=e>>>8,o[t]=e}function xR(o,e){return o[e]}function kR(o,e,t){o[t]=e}let gS;function QF(){return gS||(gS=new TextDecoder("UTF-16LE")),gS}let mS;function Wz(){return mS||(mS=new TextDecoder("UTF-16BE")),mS}let pS;function XF(){return pS||(pS=C6()?QF():Wz()),pS}function Hz(o,e,t){const i=new Uint16Array(o.buffer,e,t);return t>0&&(i[0]===65279||i[0]===65534)?Vz(o,e,t):QF().decode(i)}function Vz(o,e,t){const i=[];let n=0;for(let s=0;s=this._capacity){this._flushBuffer(),this._completedStrings[this._completedStrings.length]=e;return}for(let i=0;i[r[0].toLowerCase(),r[1].toLowerCase()]);const t=[];for(let r=0;r{const[l,c]=r,[d,h]=a;return l===d||l===h||c===d||c===h},n=(r,a)=>{const l=Math.min(r,a),c=Math.max(r,a);for(let d=0;d0&&s.push({open:a,close:l})}return s}class Uz{constructor(e,t){this._richEditBracketsBrand=void 0;const i=zz(t);this.brackets=i.map((n,s)=>new vC(e,s,n.open,n.close,$z(n.open,n.close,i,s),Kz(n.open,n.close,i,s))),this.forwardRegex=jz(this.brackets),this.reversedRegex=qz(this.brackets),this.textIsBracket={},this.textIsOpenBracket={},this.maxBracketLength=0;for(const n of this.brackets){for(const s of n.open)this.textIsBracket[s]=n,this.textIsOpenBracket[s]=!0,this.maxBracketLength=Math.max(this.maxBracketLength,s.length);for(const s of n.close)this.textIsBracket[s]=n,this.textIsOpenBracket[s]=!1,this.maxBracketLength=Math.max(this.maxBracketLength,s.length)}}}function JF(o,e,t,i){for(let n=0,s=e.length;n=0&&i.push(a);for(const a of r.close)a.indexOf(o)>=0&&i.push(a)}}function e3(o,e){return o.length-e.length}function $0(o){if(o.length<=1)return o;const e=[],t=new Set;for(const i of o)t.has(i)||(e.push(i),t.add(i));return e}function $z(o,e,t,i){let n=[];n=n.concat(o),n=n.concat(e);for(let s=0,r=n.length;s=0;r--)n[s++]=i.charCodeAt(r);return XF().decode(n)}let e=null,t=null;return function(n){return e!==n&&(e=n,t=o(e)),t}})();class Co{static _findPrevBracketInText(e,t,i,n){const s=i.match(e);if(!s)return null;const r=i.length-(s.index||0),a=s[0].length,l=n+r;return new I(t,l-a+1,t,l+1)}static findPrevBracketInRange(e,t,i,n,s){const a=cT(i).substring(i.length-s,i.length-n);return this._findPrevBracketInText(e,t,a,n)}static findNextBracketInText(e,t,i,n){const s=i.match(e);if(!s)return null;const r=s.index||0,a=s[0].length;if(a===0)return null;const l=n+r;return new I(t,l+1,t,l+1+a)}static findNextBracketInRange(e,t,i,n,s){const r=i.substring(n,s);return this.findNextBracketInText(e,t,r,n)}}class Zz{constructor(e){this._richEditBrackets=e}getElectricCharacters(){const e=[];if(this._richEditBrackets)for(const t of this._richEditBrackets.brackets)for(const i of t.close){const n=i.charAt(i.length-1);e.push(n)}return Eh(e)}onElectricCharacter(e,t,i){if(!this._richEditBrackets||this._richEditBrackets.brackets.length===0)return null;const n=t.findTokenIndexAtOffset(i-1);if(Pr(t.getStandardTokenType(n)))return null;const s=this._richEditBrackets.reversedRegex,r=t.getLineContent().substring(0,i-1)+e,a=Co.findPrevBracketInRange(s,1,r,0,r.length);if(!a)return null;const l=r.substring(a.startColumn-1,a.endColumn-1).toLowerCase();if(this._richEditBrackets.textIsOpenBracket[l])return null;const d=t.getActualLineContentBefore(a.startColumn-1);return/^\s*$/.test(d)?{matchOpenBracket:l}:null}}function Db(o){return o.global&&(o.lastIndex=0),!0}class Yz{constructor(e){this._indentationRules=e}shouldIncrease(e){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&Db(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(e))}shouldDecrease(e){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&Db(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(e))}shouldIndentNextLine(e){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&Db(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(e))}shouldIgnore(e){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&Db(this._indentationRules.unIndentedLinePattern)&&this._indentationRules.unIndentedLinePattern.test(e))}getIndentMetadata(e){let t=0;return this.shouldIncrease(e)&&(t+=1),this.shouldDecrease(e)&&(t+=2),this.shouldIndentNextLine(e)&&(t+=4),this.shouldIgnore(e)&&(t+=8),t}}class Ju{constructor(e){e=e||{},e.brackets=e.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],e.brackets.forEach(t=>{const i=Ju._createOpenBracketRegExp(t[0]),n=Ju._createCloseBracketRegExp(t[1]);i&&n&&this._brackets.push({open:t[0],openRegExp:i,close:t[1],closeRegExp:n})}),this._regExpRules=e.onEnterRules||[]}onEnter(e,t,i,n){if(e>=3)for(let s=0,r=this._regExpRules.length;sc.reg?(c.reg.lastIndex=0,c.reg.test(c.text)):!0))return a.action}if(e>=2&&i.length>0&&n.length>0)for(let s=0,r=this._brackets.length;s=2&&i.length>0){for(let s=0,r=this._brackets.length;s"u"?t:s}function Xz(o){return o.replace(/[\[\]]/g,"")}const qt=He("languageService");class Gr{constructor(e,t=[],i=!1){this.ctor=e,this.staticArguments=t,this.supportsDelayedInstantiation=i}}const n3=[];function Qe(o,e,t){e instanceof Gr||(e=new Gr(e,[],!!t)),n3.push([o,e])}function IR(){return n3}const il=Object.freeze({text:"text/plain",binary:"application/octet-stream",unknown:"application/unknown",markdown:"text/markdown",latex:"text/latex",uriList:"text/uri-list"}),K0={JSONContribution:"base.contributions.json"};function Jz(o){return o.length>0&&o.charAt(o.length-1)==="#"?o.substring(0,o.length-1):o}class eU{constructor(){this._onDidChangeSchema=new A,this.schemasById={}}registerSchema(e,t){this.schemasById[Jz(e)]=t,this._onDidChangeSchema.fire(e)}notifySchemaChanged(e){this._onDidChangeSchema.fire(e)}}const tU=new eU;Bi.add(K0.JSONContribution,tU);const su={Configuration:"base.contributions.configuration"},Ib="vscode://schemas/settings/resourceLanguage",ER=Bi.as(K0.JSONContribution);class iU{constructor(){this.registeredConfigurationDefaults=[],this.overrideIdentifiers=new Set,this._onDidSchemaChange=new A,this._onDidUpdateConfiguration=new A,this.configurationDefaultsOverrides=new Map,this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:m("defaultLanguageConfigurationOverrides.title","Default Language Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultLanguageConfigurationOverridesNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!0,allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.policyConfigurations=new Map,this.excludedConfigurationProperties={},ER.registerSchema(Ib,this.resourceLanguageSettingsSchema),this.registerOverridePropertyPatternKey()}registerConfiguration(e,t=!0){this.registerConfigurations([e],t)}registerConfigurations(e,t=!0){const i=new Set;this.doRegisterConfigurations(e,t,i),ER.registerSchema(Ib,this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:i})}registerDefaultConfigurations(e){const t=new Set;this.doRegisterDefaultConfigurations(e,t),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:t,defaultsOverrides:!0})}doRegisterDefaultConfigurations(e,t){this.registeredConfigurationDefaults.push(...e);const i=[];for(const{overrides:n,source:s}of e)for(const r in n){t.add(r);const a=this.configurationDefaultsOverrides.get(r)??this.configurationDefaultsOverrides.set(r,{configurationDefaultOverrides:[]}).get(r),l=n[r];if(a.configurationDefaultOverrides.push({value:l,source:s}),Pc.test(r)){const c=this.mergeDefaultConfigurationsForOverrideIdentifier(r,l,s,a.configurationDefaultOverrideValue);if(!c)continue;a.configurationDefaultOverrideValue=c,this.updateDefaultOverrideProperty(r,c,s),i.push(...wC(r))}else{const c=this.mergeDefaultConfigurationsForConfigurationProperty(r,l,s,a.configurationDefaultOverrideValue);if(!c)continue;a.configurationDefaultOverrideValue=c;const d=this.configurationProperties[r];d&&(this.updatePropertyDefaultValue(r,d),this.updateSchema(r,d))}}this.doRegisterOverrideIdentifiers(i)}updateDefaultOverrideProperty(e,t,i){const n={type:"object",default:t.value,description:m("defaultLanguageConfiguration.description","Configure settings to be overridden for the {0} language.",Xz(e)),$ref:Ib,defaultDefaultValue:t.value,source:i,defaultValueSource:i};this.configurationProperties[e]=n,this.defaultLanguageConfigurationOverridesNode.properties[e]=n}mergeDefaultConfigurationsForOverrideIdentifier(e,t,i,n){const s=n?.value||{},r=n?.source??new Map;if(!(r instanceof Map)){console.error("objectConfigurationSources is not a Map");return}for(const a of Object.keys(t)){const l=t[a];if(Oi(l)&&(Es(s[a])||Oi(s[a]))){if(s[a]={...s[a]??{},...l},i)for(const d in l)r.set(`${a}.${d}`,i)}else s[a]=l,i?r.set(a,i):r.delete(a)}return{value:s,source:r}}mergeDefaultConfigurationsForConfigurationProperty(e,t,i,n){const s=this.configurationProperties[e],r=n?.value??s?.defaultDefaultValue;let a=i;if(Oi(t)&&(s!==void 0&&s.type==="object"||s===void 0&&(Es(r)||Oi(r)))){if(a=n?.source??new Map,!(a instanceof Map)){console.error("defaultValueSource is not a Map");return}for(const c in t)i&&a.set(`${e}.${c}`,i);t={...Oi(r)?r:{},...t}}return{value:t,source:a}}registerOverrideIdentifiers(e){this.doRegisterOverrideIdentifiers(e),this._onDidSchemaChange.fire()}doRegisterOverrideIdentifiers(e){for(const t of e)this.overrideIdentifiers.add(t);this.updateOverridePropertyPatternKey()}doRegisterConfigurations(e,t,i){e.forEach(n=>{this.validateAndRegisterProperties(n,t,n.extensionInfo,n.restrictedProperties,void 0,i),this.configurationContributors.push(n),this.registerJSONConfiguration(n)})}validateAndRegisterProperties(e,t=!0,i,n,s=3,r){s=xs(e.scope)?s:e.scope;const a=e.properties;if(a)for(const c in a){const d=a[c];if(t&&oU(c,d)){delete a[c];continue}if(d.source=i,d.defaultDefaultValue=a[c].default,this.updatePropertyDefaultValue(c,d),Pc.test(c)?d.scope=void 0:(d.scope=xs(d.scope)?s:d.scope,d.restricted=xs(d.restricted)?!!n?.includes(c):d.restricted),a[c].hasOwnProperty("included")&&!a[c].included){this.excludedConfigurationProperties[c]=a[c],delete a[c];continue}else this.configurationProperties[c]=a[c],a[c].policy?.name&&this.policyConfigurations.set(a[c].policy.name,c);!a[c].deprecationMessage&&a[c].markdownDeprecationMessage&&(a[c].deprecationMessage=a[c].markdownDeprecationMessage),r.add(c)}const l=e.allOf;if(l)for(const c of l)this.validateAndRegisterProperties(c,t,i,n,s,r)}getConfigurationProperties(){return this.configurationProperties}getPolicyConfigurations(){return this.policyConfigurations}registerJSONConfiguration(e){const t=i=>{const n=i.properties;if(n)for(const r in n)this.updateSchema(r,n[r]);i.allOf?.forEach(t)};t(e)}updateSchema(e,t){switch(t.scope){case 1:break;case 2:break;case 6:break;case 3:break;case 4:break;case 5:this.resourceLanguageSettingsSchema.properties[e]=t;break}}updateOverridePropertyPatternKey(){for(const e of this.overrideIdentifiers.values()){const t=`[${e}]`,i={type:"object",description:m("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:m("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:Ib};this.updatePropertyDefaultValue(t,i)}}registerOverridePropertyPatternKey(){m("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),m("overrideSettings.errorMessage","This setting does not support per-language configuration."),this._onDidSchemaChange.fire()}updatePropertyDefaultValue(e,t){const i=this.configurationDefaultsOverrides.get(e)?.configurationDefaultOverrideValue;let n,s;i&&(!t.disallowConfigurationDefault||!i.source)&&(n=i.value,s=i.source),Es(n)&&(n=t.defaultDefaultValue,s=void 0),Es(n)&&(n=sU(t.type)),t.default=n,t.defaultValueSource=s}}const s3="\\[([^\\]]+)\\]",NR=new RegExp(s3,"g"),nU=`^(${s3})+$`,Pc=new RegExp(nU);function wC(o){const e=[];if(Pc.test(o)){let t=NR.exec(o);for(;t?.length;){const i=t[1].trim();i&&e.push(i),t=NR.exec(o)}}return Eh(e)}function sU(o){switch(Array.isArray(o)?o[0]:o){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}const x1=new iU;Bi.add(su.Configuration,x1);function oU(o,e){return o.trim()?Pc.test(o)?m("config.property.languageDefault","Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",o):x1.getConfigurationProperties()[o]!==void 0?m("config.property.duplicate","Cannot register '{0}'. This property is already registered.",o):e.policy?.name&&x1.getPolicyConfigurations().get(e.policy?.name)!==void 0?m("config.policy.duplicate","Cannot register '{0}'. The associated policy {1} is already registered with {2}.",o,e.policy?.name,x1.getPolicyConfigurations().get(e.policy?.name)):null:m("config.property.empty","Cannot register an empty property")}const rU={ModesRegistry:"editor.modesRegistry"};class aU{constructor(){this._onDidChangeLanguages=new A,this.onDidChangeLanguages=this._onDidChangeLanguages.event,this._languages=[]}registerLanguage(e){return this._languages.push(e),this._onDidChangeLanguages.fire(void 0),{dispose:()=>{for(let t=0,i=this._languages.length;t{const l=new Set;return{info:new dU(this,a,l),closing:l}}),s=new XM(a=>{const l=new Set,c=new Set;return{info:new hU(this,a,l,c),opening:l,openingColorized:c}});for(const[a,l]of i){const c=n.get(a),d=s.get(l);c.closing.add(d.info),d.opening.add(c.info)}const r=t.colorizedBracketPairs?TR(t.colorizedBracketPairs):i.filter(a=>!(a[0]==="<"&&a[1]===">"));for(const[a,l]of r){const c=n.get(a),d=s.get(l);c.closing.add(d.info),d.openingColorized.add(c.info),d.opening.add(c.info)}this._openingBrackets=new Map([...n.cachedValues].map(([a,l])=>[a,l.info])),this._closingBrackets=new Map([...s.cachedValues].map(([a,l])=>[a,l.info]))}get openingBrackets(){return[...this._openingBrackets.values()]}get closingBrackets(){return[...this._closingBrackets.values()]}getOpeningBracketInfo(e){return this._openingBrackets.get(e)}getClosingBracketInfo(e){return this._closingBrackets.get(e)}getBracketInfo(e){return this.getOpeningBracketInfo(e)||this.getClosingBracketInfo(e)}getBracketRegExp(e){const t=Array.from([...this._openingBrackets.keys(),...this._closingBrackets.keys()]);return j_(t,e)}}function TR(o){return o.filter(([e,t])=>e!==""&&t!=="")}class o3{constructor(e,t){this.config=e,this.bracketText=t}get languageId(){return this.config.languageId}}class dU extends o3{constructor(e,t,i){super(e,t),this.openedBrackets=i,this.isOpeningBracket=!0}}class hU extends o3{constructor(e,t,i,n){super(e,t),this.openingBrackets=i,this.openingColorizedBrackets=n,this.isOpeningBracket=!1}closes(e){return e.config!==this.config?!1:this.openingBrackets.has(e)}closesColorized(e){return e.config!==this.config?!1:this.openingColorizedBrackets.has(e)}getOpeningBrackets(){return[...this.openingBrackets]}}var uU=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},MR=function(o,e){return function(t,i){e(t,i,o)}};class _S{constructor(e){this.languageId=e}affects(e){return this.languageId?this.languageId===e:!0}}const Gn=He("languageConfigurationService");let ik=class extends z{constructor(e,t){super(),this.configurationService=e,this.languageService=t,this._registry=this._register(new pU),this.onDidChangeEmitter=this._register(new A),this.onDidChange=this.onDidChangeEmitter.event,this.configurations=new Map;const i=new Set(Object.values(nk));this._register(this.configurationService.onDidChangeConfiguration(n=>{const s=n.change.keys.some(a=>i.has(a)),r=n.change.overrides.filter(([a,l])=>l.some(c=>i.has(c))).map(([a])=>a);if(s)this.configurations.clear(),this.onDidChangeEmitter.fire(new _S(void 0));else for(const a of r)this.languageService.isRegisteredLanguageId(a)&&(this.configurations.delete(a),this.onDidChangeEmitter.fire(new _S(a)))})),this._register(this._registry.onDidChange(n=>{this.configurations.delete(n.languageId),this.onDidChangeEmitter.fire(new _S(n.languageId))}))}register(e,t,i){return this._registry.register(e,t,i)}getLanguageConfiguration(e){let t=this.configurations.get(e);return t||(t=fU(e,this._registry,this.configurationService,this.languageService),this.configurations.set(e,t)),t}};ik=uU([MR(0,lt),MR(1,qt)],ik);function fU(o,e,t,i){let n=e.getLanguageConfiguration(o);if(!n){if(!i.isRegisteredLanguageId(o))return new Pf(o,{});n=new Pf(o,{})}const s=gU(n.languageId,t),r=a3([n.underlyingConfig,s]);return new Pf(n.languageId,r)}const nk={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function gU(o,e){const t=e.getValue(nk.brackets,{overrideIdentifier:o}),i=e.getValue(nk.colorizedBracketPairs,{overrideIdentifier:o});return{brackets:RR(t),colorizedBracketPairs:RR(i)}}function RR(o){if(Array.isArray(o))return o.map(e=>{if(!(!Array.isArray(e)||e.length!==2))return[e[0],e[1]]}).filter(e=>!!e)}function r3(o,e,t){const i=o.getLineContent(e);let n=pi(i);return n.length>t-1&&(n=n.substring(0,t-1)),n}class mU{constructor(e){this.languageId=e,this._resolved=null,this._entries=[],this._order=0,this._resolved=null}register(e,t){const i=new AR(e,t,++this._order);return this._entries.push(i),this._resolved=null,_e(()=>{for(let n=0;ne.configuration)))}}function a3(o){let e={comments:void 0,brackets:void 0,wordPattern:void 0,indentationRules:void 0,onEnterRules:void 0,autoClosingPairs:void 0,surroundingPairs:void 0,autoCloseBefore:void 0,folding:void 0,colorizedBracketPairs:void 0,__electricCharacterSupport:void 0};for(const t of o)e={comments:t.comments||e.comments,brackets:t.brackets||e.brackets,wordPattern:t.wordPattern||e.wordPattern,indentationRules:t.indentationRules||e.indentationRules,onEnterRules:t.onEnterRules||e.onEnterRules,autoClosingPairs:t.autoClosingPairs||e.autoClosingPairs,surroundingPairs:t.surroundingPairs||e.surroundingPairs,autoCloseBefore:t.autoCloseBefore||e.autoCloseBefore,folding:t.folding||e.folding,colorizedBracketPairs:t.colorizedBracketPairs||e.colorizedBracketPairs,__electricCharacterSupport:t.__electricCharacterSupport||e.__electricCharacterSupport};return e}class AR{constructor(e,t,i){this.configuration=e,this.priority=t,this.order=i}static cmp(e,t){return e.priority===t.priority?e.order-t.order:e.priority-t.priority}}class PR{constructor(e){this.languageId=e}}class pU extends z{constructor(){super(),this._entries=new Map,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._register(this.register(Bs,{brackets:[["(",")"],["[","]"],["{","}"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],colorizedBracketPairs:[],folding:{offSide:!0}},0))}register(e,t,i=0){let n=this._entries.get(e);n||(n=new mU(e),this._entries.set(e,n));const s=n.register(t,i);return this._onDidChange.fire(new PR(e)),_e(()=>{s.dispose(),this._onDidChange.fire(new PR(e))})}getLanguageConfiguration(e){return this._entries.get(e)?.getResolvedConfiguration()||null}}class Pf{constructor(e,t){this.languageId=e,this.underlyingConfig=t,this._brackets=null,this._electricCharacter=null,this._onEnterSupport=this.underlyingConfig.brackets||this.underlyingConfig.indentationRules||this.underlyingConfig.onEnterRules?new Ju(this.underlyingConfig):null,this.comments=Pf._handleComments(this.underlyingConfig),this.characterPair=new ek(this.underlyingConfig),this.wordDefinition=this.underlyingConfig.wordPattern||EN,this.indentationRules=this.underlyingConfig.indentationRules,this.underlyingConfig.indentationRules?this.indentRulesSupport=new Yz(this.underlyingConfig.indentationRules):this.indentRulesSupport=null,this.foldingRules=this.underlyingConfig.folding||{},this.bracketsNew=new cU(e,this.underlyingConfig)}getWordDefinition(){return NN(this.wordDefinition)}get brackets(){return!this._brackets&&this.underlyingConfig.brackets&&(this._brackets=new Uz(this.languageId,this.underlyingConfig.brackets)),this._brackets}get electricCharacter(){return this._electricCharacter||(this._electricCharacter=new Zz(this.brackets)),this._electricCharacter}onEnter(e,t,i,n){return this._onEnterSupport?this._onEnterSupport.onEnter(e,t,i,n):null}getAutoClosingPairs(){return new Pz(this.characterPair.getAutoClosingPairs())}getAutoCloseBeforeSet(e){return this.characterPair.getAutoCloseBeforeSet(e)}getSurroundingPairs(){return this.characterPair.getSurroundingPairs()}static _handleComments(e){const t=e.comments;if(!t)return null;const i={};if(t.lineComment&&(i.lineCommentToken=t.lineComment),t.blockComment){const[n,s]=t.blockComment;i.blockCommentStartToken=n,i.blockCommentEndToken=s}return i}}Qe(Gn,ik,1);class $l{constructor(e,t,i,n){this.originalStart=e,this.originalLength=t,this.modifiedStart=i,this.modifiedLength=n}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}class OR{constructor(e){this.source=e}getElements(){const e=this.source,t=new Int32Array(e.length);for(let i=0,n=e.length;i0||this.m_modifiedCount>0)&&this.m_changes.push(new $l(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824}AddOriginalElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_originalCount++}AddModifiedElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_modifiedCount++}getChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes}getReverseChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes}}class Yr{constructor(e,t,i=null){this.ContinueProcessingPredicate=i,this._originalSequence=e,this._modifiedSequence=t;const[n,s,r]=Yr._getElements(e),[a,l,c]=Yr._getElements(t);this._hasStrings=r&&c,this._originalStringElements=n,this._originalElementsOrHash=s,this._modifiedStringElements=a,this._modifiedElementsOrHash=l,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(e){return e.length>0&&typeof e[0]=="string"}static _getElements(e){const t=e.getElements();if(Yr._isStringArray(t)){const i=new Int32Array(t.length);for(let n=0,s=t.length;n=e&&n>=i&&this.ElementsAreEqual(t,n);)t--,n--;if(e>t||i>n){let h;return i<=n?(ku.Assert(e===t+1,"originalStart should only be one more than originalEnd"),h=[new $l(e,0,i,n-i+1)]):e<=t?(ku.Assert(i===n+1,"modifiedStart should only be one more than modifiedEnd"),h=[new $l(e,t-e+1,i,0)]):(ku.Assert(e===t+1,"originalStart should only be one more than originalEnd"),ku.Assert(i===n+1,"modifiedStart should only be one more than modifiedEnd"),h=[]),h}const r=[0],a=[0],l=this.ComputeRecursionPoint(e,t,i,n,r,a,s),c=r[0],d=a[0];if(l!==null)return l;if(!s[0]){const h=this.ComputeDiffRecursive(e,c,i,d,s);let u=[];return s[0]?u=[new $l(c+1,t-(c+1)+1,d+1,n-(d+1)+1)]:u=this.ComputeDiffRecursive(c+1,t,d+1,n,s),this.ConcatenateChanges(h,u)}return[new $l(e,t-e+1,i,n-i+1)]}WALKTRACE(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_,b,C){let w=null,v=null,y=new FR,x=t,L=i,E=f[0]-_[0]-n,N=-1073741824,H=this.m_forwardHistory.length-1;do{const F=E+e;F===x||F=0&&(c=this.m_forwardHistory[H],e=c[0],x=1,L=c.length-1)}while(--H>=-1);if(w=y.getReverseChanges(),C[0]){let F=f[0]+1,W=_[0]+1;if(w!==null&&w.length>0){const j=w[w.length-1];F=Math.max(F,j.getOriginalEnd()),W=Math.max(W,j.getModifiedEnd())}v=[new $l(F,u-F+1,W,p-W+1)]}else{y=new FR,x=r,L=a,E=f[0]-_[0]-l,N=1073741824,H=b?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const F=E+s;F===x||F=d[F+1]?(h=d[F+1]-1,g=h-E-l,h>N&&y.MarkNextChange(),N=h+1,y.AddOriginalElement(h+1,g+1),E=F+1-s):(h=d[F-1],g=h-E-l,h>N&&y.MarkNextChange(),N=h,y.AddModifiedElement(h+1,g+1),E=F-1-s),H>=0&&(d=this.m_reverseHistory[H],s=d[0],x=1,L=d.length-1)}while(--H>=-1);v=y.getChanges()}return this.ConcatenateChanges(w,v)}ComputeRecursionPoint(e,t,i,n,s,r,a){let l=0,c=0,d=0,h=0,u=0,f=0;e--,i--,s[0]=0,r[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];const g=t-e+(n-i),p=g+1,_=new Int32Array(p),b=new Int32Array(p),C=n-i,w=t-e,v=e-i,y=t-n,L=(w-C)%2===0;_[C]=e,b[w]=t,a[0]=!1;for(let E=1;E<=g/2+1;E++){let N=0,H=0;d=this.ClipDiagonalBound(C-E,E,C,p),h=this.ClipDiagonalBound(C+E,E,C,p);for(let W=d;W<=h;W+=2){W===d||WN+H&&(N=l,H=c),!L&&Math.abs(W-w)<=E-1&&l>=b[W])return s[0]=l,r[0]=c,j<=b[W]&&E<=1448?this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a):null}const F=(N-e+(H-i)-E)/2;if(this.ContinueProcessingPredicate!==null&&!this.ContinueProcessingPredicate(N,F))return a[0]=!0,s[0]=N,r[0]=H,F>0&&E<=1448?this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a):(e++,i++,[new $l(e,t-e+1,i,n-i+1)]);u=this.ClipDiagonalBound(w-E,E,w,p),f=this.ClipDiagonalBound(w+E,E,w,p);for(let W=u;W<=f;W+=2){W===u||W=b[W+1]?l=b[W+1]-1:l=b[W-1],c=l-(W-w)-y;const j=l;for(;l>e&&c>i&&this.ElementsAreEqual(l,c);)l--,c--;if(b[W]=l,L&&Math.abs(W-C)<=E&&l<=_[W])return s[0]=l,r[0]=c,j>=_[W]&&E<=1448?this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a):null}if(E<=1447){let W=new Int32Array(h-d+2);W[0]=C-d+1,Du.Copy2(_,d,W,1,h-d+1),this.m_forwardHistory.push(W),W=new Int32Array(f-u+2),W[0]=w-u+1,Du.Copy2(b,u,W,1,f-u+1),this.m_reverseHistory.push(W)}}return this.WALKTRACE(C,d,h,v,w,u,f,y,_,b,l,t,s,c,n,r,L,a)}PrettifyChanges(e){for(let t=0;t0,a=i.modifiedLength>0;for(;i.originalStart+i.originalLength=0;t--){const i=e[t];let n=0,s=0;if(t>0){const h=e[t-1];n=h.originalStart+h.originalLength,s=h.modifiedStart+h.modifiedLength}const r=i.originalLength>0,a=i.modifiedLength>0;let l=0,c=this._boundaryScore(i.originalStart,i.originalLength,i.modifiedStart,i.modifiedLength);for(let h=1;;h++){const u=i.originalStart-h,f=i.modifiedStart-h;if(uc&&(c=p,l=h)}i.originalStart-=l,i.modifiedStart-=l;const d=[null];if(t>0&&this.ChangesOverlap(e[t-1],e[t],d)){e[t-1]=d[0],e.splice(t,1),t++;continue}}if(this._hasStrings)for(let t=1,i=e.length;t0&&f>l&&(l=f,c=h,d=u)}return l>0?[c,d]:null}_contiguousSequenceScore(e,t,i){let n=0;for(let s=0;s=this._originalElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._originalStringElements[e])}_OriginalRegionIsBoundary(e,t){if(this._OriginalIsBoundary(e)||this._OriginalIsBoundary(e-1))return!0;if(t>0){const i=e+t;if(this._OriginalIsBoundary(i-1)||this._OriginalIsBoundary(i))return!0}return!1}_ModifiedIsBoundary(e){return e<=0||e>=this._modifiedElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[e])}_ModifiedRegionIsBoundary(e,t){if(this._ModifiedIsBoundary(e)||this._ModifiedIsBoundary(e-1))return!0;if(t>0){const i=e+t;if(this._ModifiedIsBoundary(i-1)||this._ModifiedIsBoundary(i))return!0}return!1}_boundaryScore(e,t,i,n){const s=this._OriginalRegionIsBoundary(e,t)?1:0,r=this._ModifiedRegionIsBoundary(i,n)?1:0;return s+r}ConcatenateChanges(e,t){const i=[];if(e.length===0||t.length===0)return t.length>0?t:e;if(this.ChangesOverlap(e[e.length-1],t[0],i)){const n=new Array(e.length+t.length-1);return Du.Copy(e,0,n,0,e.length-1),n[e.length-1]=i[0],Du.Copy(t,1,n,e.length,t.length-1),n}else{const n=new Array(e.length+t.length);return Du.Copy(e,0,n,0,e.length),Du.Copy(t,0,n,e.length,t.length),n}}ChangesOverlap(e,t,i){if(ku.Assert(e.originalStart<=t.originalStart,"Left change is not less than or equal to right change"),ku.Assert(e.modifiedStart<=t.modifiedStart,"Left change is not less than or equal to right change"),e.originalStart+e.originalLength>=t.originalStart||e.modifiedStart+e.modifiedLength>=t.modifiedStart){const n=e.originalStart;let s=e.originalLength;const r=e.modifiedStart;let a=e.modifiedLength;return e.originalStart+e.originalLength>=t.originalStart&&(s=t.originalStart+t.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=t.modifiedStart&&(a=t.modifiedStart+t.modifiedLength-e.modifiedStart),i[0]=new $l(n,s,r,a),!0}else return i[0]=null,!1}ClipDiagonalBound(e,t,i,n){if(e>=0&&e255?255:o|0}function Iu(o){return o<0?0:o>4294967295?4294967295:o|0}class Wg{constructor(e){const t=yC(e);this._defaultValue=t,this._asciiMap=Wg._createAsciiMap(t),this._map=new Map}static _createAsciiMap(e){const t=new Uint8Array(256);return t.fill(e),t}set(e,t){const i=yC(t);e>=0&&e<256?this._asciiMap[e]=i:this._map.set(e,i)}get(e){return e>=0&&e<256?this._asciiMap[e]:this._map.get(e)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class bU{constructor(){this._actual=new Wg(0)}add(e){this._actual.set(e,1)}has(e){return this._actual.get(e)===1}clear(){return this._actual.clear()}}class CU{constructor(e,t,i){const n=new Uint8Array(e*t);for(let s=0,r=e*t;st&&(t=l),a>i&&(i=a),c>i&&(i=c)}t++,i++;const n=new CU(i,t,0);for(let s=0,r=e.length;s=this._maxCharCode?0:this._states.get(e,t)}}let bS=null;function wU(){return bS===null&&(bS=new vU([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),bS}let dm=null;function yU(){if(dm===null){dm=new Wg(0);const o=` <>'"、。。、,.:;‘〈「『〔([{「」}])〕』」〉’`~…`;for(let t=0;tn);if(n>0){const a=t.charCodeAt(n-1),l=t.charCodeAt(r);(a===40&&l===41||a===91&&l===93||a===123&&l===125)&&r--}return{range:{startLineNumber:i,startColumn:n+1,endLineNumber:i,endColumn:r+2},url:t.substring(n,r+1)}}static computeLinks(e,t=wU()){const i=yU(),n=[];for(let s=1,r=e.getLineCount();s<=r;s++){const a=e.getLineContent(s),l=a.length;let c=0,d=0,h=0,u=1,f=!1,g=!1,p=!1,_=!1;for(;c=0?(n+=i?1:-1,n<0?n=e.length-1:n%=e.length,e[n]):null}};Dw.INSTANCE=new Dw;let sk=Dw;const Dp=class Dp{static getChannel(e){return e.getChannel(Dp.CHANNEL_NAME)}static setChannel(e,t){e.setChannel(Dp.CHANNEL_NAME,t)}};Dp.CHANNEL_NAME="editorWorkerHost";let ok=Dp;var BR,WR;class LU{constructor(e,t){this.uri=e,this.value=t}}function xU(o){return Array.isArray(o)}const Pd=class Pd{constructor(e,t){if(this[BR]="ResourceMap",e instanceof Pd)this.map=new Map(e.map),this.toKey=t??Pd.defaultToKey;else if(xU(e)){this.map=new Map,this.toKey=t??Pd.defaultToKey;for(const[i,n]of e)this.set(i,n)}else this.map=new Map,this.toKey=e??Pd.defaultToKey}set(e,t){return this.map.set(this.toKey(e),new LU(e,t)),this}get(e){return this.map.get(this.toKey(e))?.value}has(e){return this.map.has(this.toKey(e))}get size(){return this.map.size}clear(){this.map.clear()}delete(e){return this.map.delete(this.toKey(e))}forEach(e,t){typeof t<"u"&&(e=e.bind(t));for(const[i,n]of this.map)e(n.value,n.uri,this)}*values(){for(const e of this.map.values())yield e.value}*keys(){for(const e of this.map.values())yield e.uri}*entries(){for(const e of this.map.values())yield[e.uri,e.value]}*[(BR=Symbol.toStringTag,Symbol.iterator)](){for(const[,e]of this.map)yield[e.uri,e.value]}};Pd.defaultToKey=e=>e.toString();let cs=Pd;class kU{constructor(){this[WR]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,t=0){const i=this._map.get(e);if(i)return t!==0&&this.touch(i,t),i.value}set(e,t,i=0){let n=this._map.get(e);if(n)n.value=t,i!==0&&this.touch(n,i);else{switch(n={key:e,value:t,next:void 0,previous:void 0},i){case 0:this.addItemLast(n);break;case 1:this.addItemFirst(n);break;case 2:this.addItemLast(n);break;default:this.addItemLast(n);break}this._map.set(e,n),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){const t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){const i=this._state;let n=this._head;for(;n;){if(t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),this._state!==i)throw new Error("LinkedMap got modified during iteration.");n=n.next}}keys(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:i.key,done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}values(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:i.value,done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}entries(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:[i.key,i.value],done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}[(WR=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._head,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.next,i--;this._head=t,this._size=i,t&&(t.previous=void 0),this._state++}trimNew(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._tail,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.previous,i--;this._tail=t,this._size=i,t&&(t.next=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw new Error("Invalid list");this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw new Error("Invalid list");this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{const t=e.next,i=e.previous;if(!t||!i)throw new Error("Invalid list");t.previous=i,i.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,t){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(t!==1&&t!==2)){if(t===1){if(e===this._head)return;const i=e.next,n=e.previous;e===this._tail?(n.next=void 0,this._tail=n):(i.previous=n,n.next=i),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(t===2){if(e===this._tail)return;const i=e.next,n=e.previous;e===this._head?(i.previous=void 0,this._head=i):(i.previous=n,n.next=i),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){const e=[];return this.forEach((t,i)=>{e.push([i,t])}),e}fromJSON(e){this.clear();for(const[t,i]of e)this.set(t,i)}}class DU extends kU{constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get(e,t=2){return super.get(e,t)}peek(e){return super.get(e,0)}set(e,t){return super.set(e,t,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}class ou extends DU{constructor(e,t=1){super(e,t)}trim(e){this.trimOld(e)}set(e,t){return super.set(e,t),this.checkTrim(),this}}class IU{constructor(e){if(this._m1=new Map,this._m2=new Map,e)for(const[t,i]of e)this.set(t,i)}clear(){this._m1.clear(),this._m2.clear()}set(e,t){this._m1.set(e,t),this._m2.set(t,e)}get(e){return this._m1.get(e)}getKey(e){return this._m2.get(e)}delete(e){const t=this._m1.get(e);return t===void 0?!1:(this._m1.delete(e),this._m2.delete(t),!0)}keys(){return this._m1.keys()}values(){return this._m1.values()}}class dT{constructor(){this.map=new Map}add(e,t){let i=this.map.get(e);i||(i=new Set,this.map.set(e,i)),i.add(t)}delete(e,t){const i=this.map.get(e);i&&(i.delete(t),i.size===0&&this.map.delete(e))}forEach(e,t){const i=this.map.get(e);i&&i.forEach(t)}get(e){const t=this.map.get(e);return t||new Set}}class EU extends Wg{constructor(e,t){super(0),this._segmenter=null,this._cachedLine=null,this._cachedSegments=[],this.intlSegmenterLocales=t,this.intlSegmenterLocales.length>0?this._segmenter=new Intl.Segmenter(this.intlSegmenterLocales,{granularity:"word"}):this._segmenter=null;for(let i=0,n=e.length;it)break;i=n}return i}findNextIntlWordAtOrAfterOffset(e,t){for(const i of this._getIntlSegmenterWordsOnLine(e))if(!(i.index=0;let t=null;try{t=uF(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:e,global:!0,unicode:!0})}catch{return null}if(!t)return null;let i=!this.isRegex&&!e;return i&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(i=this.matchCase),new TU(t,this.wordSeparators?cg(this.wordSeparators,[]):null,i?this.searchString:null)}}function PU(o){if(!o||o.length===0)return!1;for(let e=0,t=o.length;e=t)break;const n=o.charCodeAt(e);if(n===110||n===114||n===87)return!0}}return!1}function bd(o,e,t){if(!t)return new Qp(o,null);const i=[];for(let n=0,s=e.length;n>0);t[s]>=e?n=s-1:t[s+1]>=e?(i=s,n=s):i=s+1}return i+1}}class Eb{static findMatches(e,t,i,n,s){const r=t.parseSearchRequest();return r?r.regex.multiline?this._doFindMatchesMultiline(e,i,new ef(r.wordSeparators,r.regex),n,s):this._doFindMatchesLineByLine(e,i,r,n,s):[]}static _getMultilineMatchRange(e,t,i,n,s,r){let a,l=0;n?(l=n.findLineFeedCountBeforeOffset(s),a=t+s+l):a=t+s;let c;if(n){const f=n.findLineFeedCountBeforeOffset(s+r.length)-l;c=a+r.length+f}else c=a+r.length;const d=e.getPositionAt(a),h=e.getPositionAt(c);return new I(d.lineNumber,d.column,h.lineNumber,h.column)}static _doFindMatchesMultiline(e,t,i,n,s){const r=e.getOffsetAt(t.getStartPosition()),a=e.getValueInRange(t,1),l=e.getEOL()===`\r -`?new VR(a):null,c=[];let d=0,h;for(i.reset(0);h=i.next(a);)if(c[d++]=bd(this._getMultilineMatchRange(e,r,a,l,h.index,h[0]),h,n),d>=s)return c;return c}static _doFindMatchesLineByLine(e,t,i,n,s){const r=[];let a=0;if(t.startLineNumber===t.endLineNumber){const c=e.getLineContent(t.startLineNumber).substring(t.startColumn-1,t.endColumn-1);return a=this._findMatchesInLine(i,c,t.startLineNumber,t.startColumn-1,a,r,n,s),r}const l=e.getLineContent(t.startLineNumber).substring(t.startColumn-1);a=this._findMatchesInLine(i,l,t.startLineNumber,t.startColumn-1,a,r,n,s);for(let c=t.startLineNumber+1;c=l))return s;return s}const d=new ef(e.wordSeparators,e.regex);let h;d.reset(0);do if(h=d.next(t),h&&(r[s++]=bd(new I(i,h.index+1+n,i,h.index+1+h[0].length+n),h,a),s>=l))return s;while(h);return s}static findNextMatch(e,t,i,n){const s=t.parseSearchRequest();if(!s)return null;const r=new ef(s.wordSeparators,s.regex);return s.regex.multiline?this._doFindNextMatchMultiline(e,i,r,n):this._doFindNextMatchLineByLine(e,i,r,n)}static _doFindNextMatchMultiline(e,t,i,n){const s=new P(t.lineNumber,1),r=e.getOffsetAt(s),a=e.getLineCount(),l=e.getValueInRange(new I(s.lineNumber,s.column,a,e.getLineMaxColumn(a)),1),c=e.getEOL()===`\r -`?new VR(l):null;i.reset(t.column-1);const d=i.next(l);return d?bd(this._getMultilineMatchRange(e,r,l,c,d.index,d[0]),d,n):t.lineNumber!==1||t.column!==1?this._doFindNextMatchMultiline(e,new P(1,1),i,n):null}static _doFindNextMatchLineByLine(e,t,i,n){const s=e.getLineCount(),r=t.lineNumber,a=e.getLineContent(r),l=this._findFirstMatchInLine(i,a,r,t.column,n);if(l)return l;for(let c=1;c<=s;c++){const d=(r+c-1)%s,h=e.getLineContent(d+1),u=this._findFirstMatchInLine(i,h,d+1,1,n);if(u)return u}return null}static _findFirstMatchInLine(e,t,i,n,s){e.reset(n-1);const r=e.next(t);return r?bd(new I(i,r.index+1,i,r.index+1+r[0].length),r,s):null}static findPreviousMatch(e,t,i,n){const s=t.parseSearchRequest();if(!s)return null;const r=new ef(s.wordSeparators,s.regex);return s.regex.multiline?this._doFindPreviousMatchMultiline(e,i,r,n):this._doFindPreviousMatchLineByLine(e,i,r,n)}static _doFindPreviousMatchMultiline(e,t,i,n){const s=this._doFindMatchesMultiline(e,new I(1,1,t.lineNumber,t.column),i,n,10*AU);if(s.length>0)return s[s.length-1];const r=e.getLineCount();return t.lineNumber!==r||t.column!==e.getLineMaxColumn(r)?this._doFindPreviousMatchMultiline(e,new P(r,e.getLineMaxColumn(r)),i,n):null}static _doFindPreviousMatchLineByLine(e,t,i,n){const s=e.getLineCount(),r=t.lineNumber,a=e.getLineContent(r).substring(0,t.column-1),l=this._findLastMatchInLine(i,a,r,n);if(l)return l;for(let c=1;c<=s;c++){const d=(s+r-c-1)%s,h=e.getLineContent(d+1),u=this._findLastMatchInLine(i,h,d+1,n);if(u)return u}return null}static _findLastMatchInLine(e,t,i,n){let s=null,r;for(e.reset(0);r=e.next(t);)s=bd(new I(i,r.index+1,i,r.index+1+r[0].length),r,n);return s}}function OU(o,e,t,i,n){if(i===0)return!0;const s=e.charCodeAt(i-1);if(o.get(s)!==0||s===13||s===10)return!0;if(n>0){const r=e.charCodeAt(i);if(o.get(r)!==0)return!0}return!1}function FU(o,e,t,i,n){if(i+n===t)return!0;const s=e.charCodeAt(i+n);if(o.get(s)!==0||s===13||s===10)return!0;if(n>0){const r=e.charCodeAt(i+n-1);if(o.get(r)!==0)return!0}return!1}function hT(o,e,t,i,n){return OU(o,e,t,i,n)&&FU(o,e,t,i,n)}class ef{constructor(e,t){this._wordSeparators=e,this._searchRegex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(e){this._searchRegex.lastIndex=e,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(e){const t=e.length;let i;do{if(this._prevMatchStartIndex+this._prevMatchLength===t||(i=this._searchRegex.exec(e),!i))return null;const n=i.index,s=i[0].length;if(n===this._prevMatchStartIndex&&s===this._prevMatchLength){if(s===0){uC(e,t,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=n,this._prevMatchLength=s,!this._wordSeparators||hT(this._wordSeparators,e,t,n,s))return i}while(i);return null}}class BU{static computeUnicodeHighlights(e,t,i){const n=i?i.startLineNumber:1,s=i?i.endLineNumber:e.getLineCount(),r=new zR(t),a=r.getCandidateCodePoints();let l;a==="allNonBasicAscii"?l=new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):l=new RegExp(`${WU(Array.from(a))}`,"g");const c=new ef(null,l),d=[];let h=!1,u,f=0,g=0,p=0;e:for(let _=n,b=s;_<=b;_++){const C=e.getLineContent(_),w=C.length;c.reset(0);do if(u=c.next(C),u){let v=u.index,y=u.index+u[0].length;if(v>0){const N=C.charCodeAt(v-1);wi(N)&&v--}if(y+1=1e3){h=!0;break e}d.push(new I(_,v+1,_,y+1))}}while(u)}return{ranges:d,hasMore:h,ambiguousCharacterCount:f,invisibleCharacterCount:g,nonBasicAsciiCharacterCount:p}}static computeUnicodeHighlightReason(e,t){const i=new zR(t);switch(i.shouldHighlightNonBasicASCII(e,null)){case 0:return null;case 2:return{kind:1};case 3:{const s=e.codePointAt(0),r=i.ambiguousCharacters.getPrimaryConfusable(s),a=jp.getLocales().filter(l=>!jp.getInstance(new Set([...t.allowedLocales,l])).isAmbiguous(s));return{kind:0,confusableWith:String.fromCodePoint(r),notAmbiguousInLocales:a}}case 1:return{kind:2}}}}function WU(o,e){return`[${xl(o.map(i=>String.fromCodePoint(i)).join(""))}]`}class zR{constructor(e){this.options=e,this.allowedCodePoints=new Set(e.allowedCodePoints),this.ambiguousCharacters=jp.getInstance(new Set(e.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";const e=new Set;if(this.options.invisibleCharacters)for(const t of jm.codePoints)UR(String.fromCodePoint(t))||e.add(t);if(this.options.ambiguousCharacters)for(const t of this.ambiguousCharacters.getConfusableCodePoints())e.add(t);for(const t of this.allowedCodePoints)e.delete(t);return e}shouldHighlightNonBasicASCII(e,t){const i=e.codePointAt(0);if(this.allowedCodePoints.has(i))return 0;if(this.options.nonBasicASCII)return 1;let n=!1,s=!1;if(t)for(const r of t){const a=r.codePointAt(0),l=D0(r);n=n||l,!l&&!this.ambiguousCharacters.isAmbiguous(a)&&!jm.isInvisibleCharacter(a)&&(s=!0)}return!n&&s?0:this.options.invisibleCharacters&&!UR(e)&&jm.isInvisibleCharacter(i)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(i)?3:0}}function UR(o){return o===" "||o===` -`||o===" "}class D1{constructor(e,t,i){this.changes=e,this.moves=t,this.hitTimeout=i}}class l3{constructor(e,t){this.lineRangeMapping=e,this.changes=t}}class Re{static addRange(e,t){let i=0;for(;it))return new Re(e,t)}static ofLength(e){return new Re(0,e)}static ofStartAndLength(e,t){return new Re(e,e+t)}constructor(e,t){if(this.start=e,this.endExclusive=t,e>t)throw new nt(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(e){return new Re(this.start+e,this.endExclusive+e)}deltaStart(e){return new Re(this.start+e,this.endExclusive)}deltaEnd(e){return new Re(this.start,this.endExclusive+e)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}contains(e){return this.start<=e&&e=e.endExclusive}slice(e){return e.slice(this.start,this.endExclusive)}substring(e){return e.substring(this.start,this.endExclusive)}clip(e){if(this.isEmpty)throw new nt(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,e))}clipCyclic(e){if(this.isEmpty)throw new nt(`Invalid clipping range: ${this.toString()}`);return e=this.endExclusive?this.start+(e-this.start)%this.length:e}forEach(e){for(let t=this.start;te.toString()).join(", ")}intersectsStrict(e){let t=0;for(;te+t.length,0)}}function xC(o,e){const t=HU(o,e);if(t!==-1)return o[t]}function HU(o,e,t=o.length-1){for(let i=t;i>=0;i--){const n=o[i];if(e(n))return i}return-1}function dg(o,e){const t=Xp(o,e);return t===-1?void 0:o[t]}function Xp(o,e,t=0,i=o.length){let n=t,s=i;for(;n0&&(t=n)}return t}function zU(o,e){if(o.length===0)return;let t=o[0];for(let i=1;i=0&&(t=n)}return t}function UU(o,e){return fT(o,(t,i)=>-e(t,i))}function $U(o,e){if(o.length===0)return-1;let t=0;for(let i=1;i0&&(t=i)}return t}function KU(o,e){for(const t of o){const i=e(t);if(i!==void 0)return i}}let xe=class Wa{static fromRangeInclusive(e){return new Wa(e.startLineNumber,e.endLineNumber+1)}static joinMany(e){if(e.length===0)return[];let t=new to(e[0].slice());for(let i=1;it)throw new nt(`startLineNumber ${e} cannot be after endLineNumberExclusive ${t}`);this.startLineNumber=e,this.endLineNumberExclusive=t}contains(e){return this.startLineNumber<=e&&en.endLineNumberExclusive>=e.startLineNumber),i=Xp(this._normalizedRanges,n=>n.startLineNumber<=e.endLineNumberExclusive)+1;if(t===i)this._normalizedRanges.splice(t,0,e);else if(t===i-1){const n=this._normalizedRanges[t];this._normalizedRanges[t]=n.join(e)}else{const n=this._normalizedRanges[t].join(this._normalizedRanges[i-1]).join(e);this._normalizedRanges.splice(t,i-t,n)}}contains(e){const t=dg(this._normalizedRanges,i=>i.startLineNumber<=e);return!!t&&t.endLineNumberExclusive>e}intersects(e){const t=dg(this._normalizedRanges,i=>i.startLineNumbere.startLineNumber}getUnion(e){if(this._normalizedRanges.length===0)return e;if(e._normalizedRanges.length===0)return this;const t=[];let i=0,n=0,s=null;for(;i=r.startLineNumber?s=new xe(s.startLineNumber,Math.max(s.endLineNumberExclusive,r.endLineNumberExclusive)):(t.push(s),s=r)}return s!==null&&t.push(s),new to(t)}subtractFrom(e){const t=rk(this._normalizedRanges,r=>r.endLineNumberExclusive>=e.startLineNumber),i=Xp(this._normalizedRanges,r=>r.startLineNumber<=e.endLineNumberExclusive)+1;if(t===i)return new to([e]);const n=[];let s=e.startLineNumber;for(let r=t;rs&&n.push(new xe(s,a.startLineNumber)),s=a.endLineNumberExclusive}return se.toString()).join(", ")}getIntersection(e){const t=[];let i=0,n=0;for(;it.delta(e)))}}const Zl=class Zl{static betweenPositions(e,t){return e.lineNumber===t.lineNumber?new Zl(0,t.column-e.column):new Zl(t.lineNumber-e.lineNumber,t.column-1)}static ofRange(e){return Zl.betweenPositions(e.getStartPosition(),e.getEndPosition())}static ofText(e){let t=0,i=0;for(const n of e)n===` -`?(t++,i=0):i++;return new Zl(t,i)}constructor(e,t){this.lineCount=e,this.columnCount=t}isGreaterThanOrEqualTo(e){return this.lineCount!==e.lineCount?this.lineCount>e.lineCount:this.columnCount>=e.columnCount}createRange(e){return this.lineCount===0?new I(e.lineNumber,e.column,e.lineNumber,e.column+this.columnCount):new I(e.lineNumber,e.column,e.lineNumber+this.lineCount,this.columnCount+1)}addToPosition(e){return this.lineCount===0?new P(e.lineNumber,e.column+this.columnCount):new P(e.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}};Zl.zero=new Zl(0,0);let Po=Zl;class jU{constructor(e){this.text=e,this.lineStartOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let t=0;toT(e,(t,i)=>t.range.getEndPosition().isBeforeOrEqual(i.range.getStartPosition())))}apply(e){let t="",i=new P(1,1);for(const s of this.edits){const r=s.range,a=r.getStartPosition(),l=r.getEndPosition(),c=$R(i,a);c.isEmpty()||(t+=e.getValueOfRange(c)),t+=s.text,i=l}const n=$R(i,e.endPositionExclusive);return n.isEmpty()||(t+=e.getValueOfRange(n)),t}applyToString(e){const t=new qU(e);return this.apply(t)}getNewRanges(){const e=[];let t=0,i=0,n=0;for(const s of this.edits){const r=Po.ofText(s.text),a=P.lift({lineNumber:s.range.startLineNumber+i,column:s.range.startColumn+(s.range.startLineNumber===t?n:0)}),l=r.createRange(a);e.push(l),i=l.endLineNumber-s.range.endLineNumber,n=l.endColumn-s.range.endColumn,t=s.range.endLineNumber}return e}}class fa{constructor(e,t){this.range=e,this.text=t}toSingleEditOperation(){return{range:this.range,text:this.text}}}function $R(o,e){if(o.lineNumber===e.lineNumber&&o.column===Number.MAX_SAFE_INTEGER)return I.fromPositions(e,e);if(!o.isBeforeOrEqual(e))throw new nt("start must be before end");return new I(o.lineNumber,o.column,e.lineNumber,e.column)}class c3{get endPositionExclusive(){return this.length.addToPosition(new P(1,1))}}class qU extends c3{constructor(e){super(),this.value=e,this._t=new jU(this.value)}getValueOfRange(e){return this._t.getOffsetRange(e).substring(this.value)}get length(){return this._t.textLength}}class hn{static inverse(e,t,i){const n=[];let s=1,r=1;for(const l of e){const c=new hn(new xe(s,l.original.startLineNumber),new xe(r,l.modified.startLineNumber));c.modified.isEmpty||n.push(c),s=l.original.endLineNumberExclusive,r=l.modified.endLineNumberExclusive}const a=new hn(new xe(s,t+1),new xe(r,i+1));return a.modified.isEmpty||n.push(a),n}static clip(e,t,i){const n=[];for(const s of e){const r=s.original.intersect(t),a=s.modified.intersect(i);r&&!r.isEmpty&&a&&!a.isEmpty&&n.push(new hn(r,a))}return n}constructor(e,t){this.original=e,this.modified=t}toString(){return`{${this.original.toString()}->${this.modified.toString()}}`}flip(){return new hn(this.modified,this.original)}join(e){return new hn(this.original.join(e.original),this.modified.join(e.modified))}toRangeMapping(){const e=this.original.toInclusiveRange(),t=this.modified.toInclusiveRange();if(e&&t)return new Ls(e,t);if(this.original.startLineNumber===1||this.modified.startLineNumber===1){if(!(this.modified.startLineNumber===1&&this.original.startLineNumber===1))throw new nt("not a valid diff");return new Ls(new I(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new I(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1))}else return new Ls(new I(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),new I(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER))}toRangeMapping2(e,t){if(KR(this.original.endLineNumberExclusive,e)&&KR(this.modified.endLineNumberExclusive,t))return new Ls(new I(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new I(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1));if(!this.original.isEmpty&&!this.modified.isEmpty)return new Ls(I.fromPositions(new P(this.original.startLineNumber,1),Nu(new P(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),e)),I.fromPositions(new P(this.modified.startLineNumber,1),Nu(new P(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)));if(this.original.startLineNumber>1&&this.modified.startLineNumber>1)return new Ls(I.fromPositions(Nu(new P(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER),e),Nu(new P(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),e)),I.fromPositions(Nu(new P(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER),t),Nu(new P(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)));throw new nt}}function Nu(o,e){if(o.lineNumber<1)return new P(1,1);if(o.lineNumber>e.length)return new P(e.length,e[e.length-1].length+1);const t=e[o.lineNumber-1];return o.column>t.length+1?new P(o.lineNumber,t.length+1):o}function KR(o,e){return o>=1&&o<=e.length}class Ws extends hn{static fromRangeMappings(e){const t=xe.join(e.map(n=>xe.fromRangeInclusive(n.originalRange))),i=xe.join(e.map(n=>xe.fromRangeInclusive(n.modifiedRange)));return new Ws(t,i,e)}constructor(e,t,i){super(e,t),this.innerChanges=i}flip(){return new Ws(this.modified,this.original,this.innerChanges?.map(e=>e.flip()))}withInnerChangesFromLineRanges(){return new Ws(this.original,this.modified,[this.toRangeMapping()])}}class Ls{static assertSorted(e){for(let t=1;t${this.modifiedRange.toString()}}`}flip(){return new Ls(this.modifiedRange,this.originalRange)}toTextEdit(e){const t=e.getValueOfRange(this.modifiedRange);return new fa(this.originalRange,t)}}const GU=3;class ZU{computeDiff(e,t,i){const s=new XU(e,t,{maxComputationTime:i.maxComputationTimeMs,shouldIgnoreTrimWhitespace:i.ignoreTrimWhitespace,shouldComputeCharChanges:!0,shouldMakePrettyDiff:!0,shouldPostProcessCharChanges:!0}).computeDiff(),r=[];let a=null;for(const l of s.changes){let c;l.originalEndLineNumber===0?c=new xe(l.originalStartLineNumber+1,l.originalStartLineNumber+1):c=new xe(l.originalStartLineNumber,l.originalEndLineNumber+1);let d;l.modifiedEndLineNumber===0?d=new xe(l.modifiedStartLineNumber+1,l.modifiedStartLineNumber+1):d=new xe(l.modifiedStartLineNumber,l.modifiedEndLineNumber+1);let h=new Ws(c,d,l.charChanges?.map(u=>new Ls(new I(u.originalStartLineNumber,u.originalStartColumn,u.originalEndLineNumber,u.originalEndColumn),new I(u.modifiedStartLineNumber,u.modifiedStartColumn,u.modifiedEndLineNumber,u.modifiedEndColumn))));a&&(a.modified.endLineNumberExclusive===h.modified.startLineNumber||a.original.endLineNumberExclusive===h.original.startLineNumber)&&(h=new Ws(a.original.join(h.original),a.modified.join(h.modified),a.innerChanges&&h.innerChanges?a.innerChanges.concat(h.innerChanges):void 0),r.pop()),r.push(h),a=h}return Fh(()=>oT(r,(l,c)=>c.original.startLineNumber-l.original.endLineNumberExclusive===c.modified.startLineNumber-l.modified.endLineNumberExclusive&&l.original.endLineNumberExclusive(e===10?"\\n":String.fromCharCode(e))+`-(${this._lineNumbers[t]},${this._columns[t]})`).join(", ")+"]"}_assertIndex(e,t){if(e<0||e>=t.length)throw new Error("Illegal index")}getElements(){return this._charCodes}getStartLineNumber(e){return e>0&&e===this._lineNumbers.length?this.getEndLineNumber(e-1):(this._assertIndex(e,this._lineNumbers),this._lineNumbers[e])}getEndLineNumber(e){return e===-1?this.getStartLineNumber(e+1):(this._assertIndex(e,this._lineNumbers),this._charCodes[e]===10?this._lineNumbers[e]+1:this._lineNumbers[e])}getStartColumn(e){return e>0&&e===this._columns.length?this.getEndColumn(e-1):(this._assertIndex(e,this._columns),this._columns[e])}getEndColumn(e){return e===-1?this.getStartColumn(e+1):(this._assertIndex(e,this._columns),this._charCodes[e]===10?1:this._columns[e]+1)}}class Of{constructor(e,t,i,n,s,r,a,l){this.originalStartLineNumber=e,this.originalStartColumn=t,this.originalEndLineNumber=i,this.originalEndColumn=n,this.modifiedStartLineNumber=s,this.modifiedStartColumn=r,this.modifiedEndLineNumber=a,this.modifiedEndColumn=l}static createFromDiffChange(e,t,i){const n=t.getStartLineNumber(e.originalStart),s=t.getStartColumn(e.originalStart),r=t.getEndLineNumber(e.originalStart+e.originalLength-1),a=t.getEndColumn(e.originalStart+e.originalLength-1),l=i.getStartLineNumber(e.modifiedStart),c=i.getStartColumn(e.modifiedStart),d=i.getEndLineNumber(e.modifiedStart+e.modifiedLength-1),h=i.getEndColumn(e.modifiedStart+e.modifiedLength-1);return new Of(n,s,r,a,l,c,d,h)}}function QU(o){if(o.length<=1)return o;const e=[o[0]];let t=e[0];for(let i=1,n=o.length;i0&&t.originalLength<20&&t.modifiedLength>0&&t.modifiedLength<20&&s()){const f=i.createCharSequence(e,t.originalStart,t.originalStart+t.originalLength-1),g=n.createCharSequence(e,t.modifiedStart,t.modifiedStart+t.modifiedLength-1);if(f.getElements().length>0&&g.getElements().length>0){let p=d3(f,g,s,!0).changes;a&&(p=QU(p)),u=[];for(let _=0,b=p.length;_1&&p>1;){const _=u.charCodeAt(g-2),b=f.charCodeAt(p-2);if(_!==b)break;g--,p--}(g>1||p>1)&&this._pushTrimWhitespaceCharChange(n,s+1,1,g,r+1,1,p)}{let g=lk(u,1),p=lk(f,1);const _=u.length+1,b=f.length+1;for(;g<_&&p!0;const e=Date.now();return()=>Date.now()-e{i.push(vi.fromOffsetPairs(n?n.getEndExclusives():al.zero,s?s.getStarts():new al(t,(n?n.seq2Range.endExclusive-n.seq1Range.endExclusive:0)+t)))}),i}static fromOffsetPairs(e,t){return new vi(new Re(e.offset1,t.offset1),new Re(e.offset2,t.offset2))}static assertSorted(e){let t;for(const i of e){if(t&&!(t.seq1Range.endExclusive<=i.seq1Range.start&&t.seq2Range.endExclusive<=i.seq2Range.start))throw new nt("Sequence diffs must be sorted");t=i}}constructor(e,t){this.seq1Range=e,this.seq2Range=t}swap(){return new vi(this.seq2Range,this.seq1Range)}toString(){return`${this.seq1Range} <-> ${this.seq2Range}`}join(e){return new vi(this.seq1Range.join(e.seq1Range),this.seq2Range.join(e.seq2Range))}delta(e){return e===0?this:new vi(this.seq1Range.delta(e),this.seq2Range.delta(e))}deltaStart(e){return e===0?this:new vi(this.seq1Range.deltaStart(e),this.seq2Range.deltaStart(e))}deltaEnd(e){return e===0?this:new vi(this.seq1Range.deltaEnd(e),this.seq2Range.deltaEnd(e))}intersect(e){const t=this.seq1Range.intersect(e.seq1Range),i=this.seq2Range.intersect(e.seq2Range);if(!(!t||!i))return new vi(t,i)}getStarts(){return new al(this.seq1Range.start,this.seq2Range.start)}getEndExclusives(){return new al(this.seq1Range.endExclusive,this.seq2Range.endExclusive)}}const Od=class Od{constructor(e,t){this.offset1=e,this.offset2=t}toString(){return`${this.offset1} <-> ${this.offset2}`}delta(e){return e===0?this:new Od(this.offset1+e,this.offset2+e)}equals(e){return this.offset1===e.offset1&&this.offset2===e.offset2}};Od.zero=new Od(0,0),Od.max=new Od(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER);let al=Od;const Ew=class Ew{isValid(){return!0}};Ew.instance=new Ew;let Jp=Ew;class JU{constructor(e){if(this.timeout=e,this.startTime=Date.now(),this.valid=!0,e<=0)throw new nt("timeout must be positive")}isValid(){if(!(Date.now()-this.startTime0&&p>0&&r.get(g-1,p-1)===3&&(C+=a.get(g-1,p-1)),C+=n?n(g,p):1):C=-1;const w=Math.max(_,b,C);if(w===C){const v=g>0&&p>0?a.get(g-1,p-1):0;a.set(g,p,v+1),r.set(g,p,3)}else w===_?(a.set(g,p,0),r.set(g,p,1)):w===b&&(a.set(g,p,0),r.set(g,p,2));s.set(g,p,w)}const l=[];let c=e.length,d=t.length;function h(g,p){(g+1!==c||p+1!==d)&&l.push(new vi(new Re(g+1,c),new Re(p+1,d))),c=g,d=p}let u=e.length-1,f=t.length-1;for(;u>=0&&f>=0;)r.get(u,f)===3?(h(u,f),u--,f--):r.get(u,f)===1?u--:f--;return h(-1,-1),l.reverse(),new wl(l,!1)}}class h3{compute(e,t,i=Jp.instance){if(e.length===0||t.length===0)return wl.trivial(e,t);const n=e,s=t;function r(p,_){for(;pn.length||v>s.length)continue;const y=r(w,v);l.set(d,y);const x=w===b?c.get(d+1):c.get(d-1);if(c.set(d,y!==w?new GR(x,w,v,y-w):x),l.get(d)===n.length&&l.get(d)-d===s.length)break e}}let h=c.get(d);const u=[];let f=n.length,g=s.length;for(;;){const p=h?h.x+h.length:0,_=h?h.y+h.length:0;if((p!==f||_!==g)&&u.push(new vi(new Re(p,f),new Re(_,g))),!h)break;f=h.x,g=h.y,h=h.prev}return u.reverse(),new wl(u,!1)}}class GR{constructor(e,t,i,n){this.prev=e,this.x=t,this.y=i,this.length=n}}class t${constructor(){this.positiveArr=new Int32Array(10),this.negativeArr=new Int32Array(10)}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){if(e<0){if(e=-e-1,e>=this.negativeArr.length){const i=this.negativeArr;this.negativeArr=new Int32Array(i.length*2),this.negativeArr.set(i)}this.negativeArr[e]=t}else{if(e>=this.positiveArr.length){const i=this.positiveArr;this.positiveArr=new Int32Array(i.length*2),this.positiveArr.set(i)}this.positiveArr[e]=t}}}class i${constructor(){this.positiveArr=[],this.negativeArr=[]}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){e<0?(e=-e-1,this.negativeArr[e]=t):this.positiveArr[e]=t}}class IC{constructor(e,t,i){this.lines=e,this.range=t,this.considerWhitespaceChanges=i,this.elements=[],this.firstElementOffsetByLineIdx=[],this.lineStartOffsets=[],this.trimmedWsLengthsByLineIdx=[],this.firstElementOffsetByLineIdx.push(0);for(let n=this.range.startLineNumber;n<=this.range.endLineNumber;n++){let s=e[n-1],r=0;n===this.range.startLineNumber&&this.range.startColumn>1&&(r=this.range.startColumn-1,s=s.substring(r)),this.lineStartOffsets.push(r);let a=0;if(!i){const c=s.trimStart();a=s.length-c.length,s=c.trimEnd()}this.trimmedWsLengthsByLineIdx.push(a);const l=n===this.range.endLineNumber?Math.min(this.range.endColumn-1-r-a,s.length):s.length;for(let c=0;cString.fromCharCode(t)).join("")}getElement(e){return this.elements[e]}get length(){return this.elements.length}getBoundaryScore(e){const t=YR(e>0?this.elements[e-1]:-1),i=YR(es<=e),n=e-this.firstElementOffsetByLineIdx[i];return new P(this.range.startLineNumber+i,1+this.lineStartOffsets[i]+n+(n===0&&t==="left"?0:this.trimmedWsLengthsByLineIdx[i]))}translateRange(e){const t=this.translateOffset(e.start,"right"),i=this.translateOffset(e.endExclusive,"left");return i.isBefore(t)?I.fromPositions(i,i):I.fromPositions(t,i)}findWordContaining(e){if(e<0||e>=this.elements.length||!wS(this.elements[e]))return;let t=e;for(;t>0&&wS(this.elements[t-1]);)t--;let i=e;for(;in<=e.start)??0,i=VU(this.firstElementOffsetByLineIdx,n=>e.endExclusive<=n)??this.elements.length;return new Re(t,i)}}function wS(o){return o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57}const n$={0:0,1:0,2:0,3:10,4:2,5:30,6:3,7:10,8:10};function ZR(o){return n$[o]}function YR(o){return o===10?8:o===13?7:ck(o)?6:o>=97&&o<=122?0:o>=65&&o<=90?1:o>=48&&o<=57?2:o===-1?3:o===44||o===59?5:4}function s$(o,e,t,i,n,s){let{moves:r,excludedChanges:a}=r$(o,e,t,s);if(!s.isValid())return[];const l=o.filter(d=>!a.has(d)),c=a$(l,i,n,e,t,s);return xL(r,c),r=l$(r),r=r.filter(d=>{const h=d.original.toOffsetRange().slice(e).map(f=>f.trim());return h.join(` -`).length>=15&&o$(h,f=>f.length>=2)>=2}),r=c$(o,r),r}function o$(o,e){let t=0;for(const i of o)e(i)&&t++;return t}function r$(o,e,t,i){const n=[],s=o.filter(l=>l.modified.isEmpty&&l.original.length>=3).map(l=>new DC(l.original,e,l)),r=new Set(o.filter(l=>l.original.isEmpty&&l.modified.length>=3).map(l=>new DC(l.modified,t,l))),a=new Set;for(const l of s){let c=-1,d;for(const h of r){const u=l.computeSimilarity(h);u>c&&(c=u,d=h)}if(c>.9&&d&&(r.delete(d),n.push(new hn(l.range,d.range)),a.add(l.source),a.add(d.source)),!i.isValid())return{moves:n,excludedChanges:a}}return{moves:n,excludedChanges:a}}function a$(o,e,t,i,n,s){const r=[],a=new dT;for(const u of o)for(let f=u.original.startLineNumber;fu.modified.startLineNumber,ia));for(const u of o){let f=[];for(let g=u.modified.startLineNumber;g{for(const v of f)if(v.originalLineRange.endLineNumberExclusive+1===C.endLineNumberExclusive&&v.modifiedLineRange.endLineNumberExclusive+1===_.endLineNumberExclusive){v.originalLineRange=new xe(v.originalLineRange.startLineNumber,C.endLineNumberExclusive),v.modifiedLineRange=new xe(v.modifiedLineRange.startLineNumber,_.endLineNumberExclusive),b.push(v);return}const w={modifiedLineRange:_,originalLineRange:C};l.push(w),b.push(w)}),f=b}if(!s.isValid())return[]}l.sort(o6(rs(u=>u.modifiedLineRange.length,ia)));const c=new to,d=new to;for(const u of l){const f=u.modifiedLineRange.startLineNumber-u.originalLineRange.startLineNumber,g=c.subtractFrom(u.modifiedLineRange),p=d.subtractFrom(u.originalLineRange).getWithDelta(f),_=g.getIntersection(p);for(const b of _.ranges){if(b.length<3)continue;const C=b,w=b.delta(-f);r.push(new hn(w,C)),c.addRange(C),d.addRange(w)}}r.sort(rs(u=>u.original.startLineNumber,ia));const h=new kC(o);for(let u=0;ux.original.startLineNumber<=f.original.startLineNumber),p=dg(o,x=>x.modified.startLineNumber<=f.modified.startLineNumber),_=Math.max(f.original.startLineNumber-g.original.startLineNumber,f.modified.startLineNumber-p.modified.startLineNumber),b=h.findLastMonotonous(x=>x.original.startLineNumberx.modified.startLineNumberi.length||L>n.length||c.contains(L)||d.contains(x)||!QR(i[x-1],n[L-1],s))break}v>0&&(d.addRange(new xe(f.original.startLineNumber-v,f.original.startLineNumber)),c.addRange(new xe(f.modified.startLineNumber-v,f.modified.startLineNumber)));let y;for(y=0;yi.length||L>n.length||c.contains(L)||d.contains(x)||!QR(i[x-1],n[L-1],s))break}y>0&&(d.addRange(new xe(f.original.endLineNumberExclusive,f.original.endLineNumberExclusive+y)),c.addRange(new xe(f.modified.endLineNumberExclusive,f.modified.endLineNumberExclusive+y))),(v>0||y>0)&&(r[u]=new hn(new xe(f.original.startLineNumber-v,f.original.endLineNumberExclusive+y),new xe(f.modified.startLineNumber-v,f.modified.endLineNumberExclusive+y)))}return r}function QR(o,e,t){if(o.trim()===e.trim())return!0;if(o.length>300&&e.length>300)return!1;const n=new h3().compute(new IC([o],new I(1,1,1,o.length),!1),new IC([e],new I(1,1,1,e.length),!1),t);let s=0;const r=vi.invert(n.diffs,o.length);for(const d of r)d.seq1Range.forEach(h=>{ck(o.charCodeAt(h))||s++});function a(d){let h=0;for(let u=0;ue.length?o:e);return s/l>.6&&l>10}function l$(o){if(o.length===0)return o;o.sort(rs(t=>t.original.startLineNumber,ia));const e=[o[0]];for(let t=1;t=0&&r>=0&&s+r<=2){e[e.length-1]=i.join(n);continue}e.push(n)}return e}function c$(o,e){const t=new kC(o);return e=e.filter(i=>{const n=t.findLastMonotonous(a=>a.original.startLineNumbera.modified.startLineNumber0&&(a=a.delta(c))}n.push(a)}return i.length>0&&n.push(i[i.length-1]),n}function d$(o,e,t){if(!o.getBoundaryScore||!e.getBoundaryScore)return t;for(let i=0;i0?t[i-1]:void 0,s=t[i],r=i+1=i.start&&o.seq2Range.start-r>=n.start&&t.isStronglyEqual(o.seq2Range.start-r,o.seq2Range.endExclusive-r)&&r<100;)r++;r--;let a=0;for(;o.seq1Range.start+ac&&(c=g,l=d)}return o.delta(l)}function h$(o,e,t){const i=[];for(const n of t){const s=i[i.length-1];if(!s){i.push(n);continue}n.seq1Range.start-s.seq1Range.endExclusive<=2||n.seq2Range.start-s.seq2Range.endExclusive<=2?i[i.length-1]=new vi(s.seq1Range.join(n.seq1Range),s.seq2Range.join(n.seq2Range)):i.push(n)}return i}function u$(o,e,t){const i=vi.invert(t,o.length),n=[];let s=new al(0,0);function r(l,c){if(l.offset10;){const _=i[0];if(!(_.seq1Range.intersects(u.seq1Range)||_.seq2Range.intersects(u.seq2Range)))break;const C=o.findWordContaining(_.seq1Range.start),w=e.findWordContaining(_.seq2Range.start),v=new vi(C,w),y=v.intersect(_);if(g+=y.seq1Range.length,p+=y.seq2Range.length,u=u.join(v),u.seq1Range.endExclusive>=_.seq1Range.endExclusive)i.shift();else break}g+p<(u.seq1Range.length+u.seq2Range.length)*2/3&&n.push(u),s=u.getEndExclusives()}for(;i.length>0;){const l=i.shift();l.seq1Range.isEmpty||(r(l.getStarts(),l),r(l.getEndExclusives().delta(-1),l))}return f$(t,n)}function f$(o,e){const t=[];for(;o.length>0||e.length>0;){const i=o[0],n=e[0];let s;i&&(!n||i.seq1Range.start0&&t[t.length-1].seq1Range.endExclusive>=s.seq1Range.start?t[t.length-1]=t[t.length-1].join(s):t.push(s)}return t}function g$(o,e,t){let i=t;if(i.length===0)return i;let n=0,s;do{s=!1;const r=[i[0]];for(let a=1;a5||f.seq1Range.length+f.seq2Range.length>5)};const l=i[a],c=r[r.length-1];d(c,l)?(s=!0,r[r.length-1]=r[r.length-1].join(l)):r.push(l)}i=r}while(n++<10&&s);return i}function m$(o,e,t){let i=t;if(i.length===0)return i;let n=0,s;do{s=!1;const a=[i[0]];for(let l=1;l5||p.length>500)return!1;const b=o.getText(p).trim();if(b.length>20||b.split(/\r\n|\r|\n/).length>1)return!1;const C=o.countLinesIn(f.seq1Range),w=f.seq1Range.length,v=e.countLinesIn(f.seq2Range),y=f.seq2Range.length,x=o.countLinesIn(g.seq1Range),L=g.seq1Range.length,E=e.countLinesIn(g.seq2Range),N=g.seq2Range.length,H=130;function F(W){return Math.min(W,H)}return Math.pow(Math.pow(F(C*40+w),1.5)+Math.pow(F(v*40+y),1.5),1.5)+Math.pow(Math.pow(F(x*40+L),1.5)+Math.pow(F(E*40+N),1.5),1.5)>(H**1.5)**1.5*1.3};const c=i[l],d=a[a.length-1];h(d,c)?(s=!0,a[a.length-1]=a[a.length-1].join(c)):a.push(c)}i=a}while(n++<10&&s);const r=[];return t6(i,(a,l,c)=>{let d=l;function h(b){return b.length>0&&b.trim().length<=3&&l.seq1Range.length+l.seq2Range.length>100}const u=o.extendToFullLines(l.seq1Range),f=o.getText(new Re(u.start,l.seq1Range.start));h(f)&&(d=d.deltaStart(-f.length));const g=o.getText(new Re(l.seq1Range.endExclusive,u.endExclusive));h(g)&&(d=d.deltaEnd(g.length));const p=vi.fromOffsetPairs(a?a.getEndExclusives():al.zero,c?c.getStarts():al.max),_=d.intersect(p);r.length>0&&_.getStarts().equals(r[r.length-1].getEndExclusives())?r[r.length-1]=r[r.length-1].join(_):r.push(_)}),r}class eA{constructor(e,t){this.trimmedHash=e,this.lines=t}getElement(e){return this.trimmedHash[e]}get length(){return this.trimmedHash.length}getBoundaryScore(e){const t=e===0?0:tA(this.lines[e-1]),i=e===this.lines.length?0:tA(this.lines[e]);return 1e3-(t+i)}getText(e){return this.lines.slice(e.start,e.endExclusive).join(` -`)}isStronglyEqual(e,t){return this.lines[e]===this.lines[t]}}function tA(o){let e=0;for(;ey===x))return new D1([],[],!1);if(e.length===1&&e[0].length===0||t.length===1&&t[0].length===0)return new D1([new Ws(new xe(1,e.length+1),new xe(1,t.length+1),[new Ls(new I(1,1,e.length,e[e.length-1].length+1),new I(1,1,t.length,t[t.length-1].length+1))])],[],!1);const n=i.maxComputationTimeMs===0?Jp.instance:new JU(i.maxComputationTimeMs),s=!i.ignoreTrimWhitespace,r=new Map;function a(y){let x=r.get(y);return x===void 0&&(x=r.size,r.set(y,x)),x}const l=e.map(y=>a(y.trim())),c=t.map(y=>a(y.trim())),d=new eA(l,e),h=new eA(c,t),u=d.length+h.length<1700?this.dynamicProgrammingDiffing.compute(d,h,n,(y,x)=>e[y]===t[x]?t[x].length===0?.1:1+Math.log(1+t[x].length):.99):this.myersDiffingAlgorithm.compute(d,h,n);let f=u.diffs,g=u.hitTimeout;f=dk(d,h,f),f=g$(d,h,f);const p=[],_=y=>{if(s)for(let x=0;xy.seq1Range.start-b===y.seq2Range.start-C);const x=y.seq1Range.start-b;_(x),b=y.seq1Range.endExclusive,C=y.seq2Range.endExclusive;const L=this.refineDiff(e,t,y,n,s);L.hitTimeout&&(g=!0);for(const E of L.mappings)p.push(E)}_(e.length-b);const w=iA(p,e,t);let v=[];return i.computeMoves&&(v=this.computeMoves(w,e,t,l,c,n,s)),Fh(()=>{function y(L,E){if(L.lineNumber<1||L.lineNumber>E.length)return!1;const N=E[L.lineNumber-1];return!(L.column<1||L.column>N.length+1)}function x(L,E){return!(L.startLineNumber<1||L.startLineNumber>E.length+1||L.endLineNumberExclusive<1||L.endLineNumberExclusive>E.length+1)}for(const L of w){if(!L.innerChanges)return!1;for(const E of L.innerChanges)if(!(y(E.modifiedRange.getStartPosition(),t)&&y(E.modifiedRange.getEndPosition(),t)&&y(E.originalRange.getStartPosition(),e)&&y(E.originalRange.getEndPosition(),e)))return!1;if(!x(L.modified,t)||!x(L.original,e))return!1}return!0}),new D1(w,v,g)}computeMoves(e,t,i,n,s,r,a){return s$(e,t,i,n,s,r).map(d=>{const h=this.refineDiff(t,i,new vi(d.original.toOffsetRange(),d.modified.toOffsetRange()),r,a),u=iA(h.mappings,t,i,!0);return new l3(d,u)})}refineDiff(e,t,i,n,s){const a=_$(i).toRangeMapping2(e,t),l=new IC(e,a.originalRange,s),c=new IC(t,a.modifiedRange,s),d=l.length+c.length<500?this.dynamicProgrammingDiffing.compute(l,c,n):this.myersDiffingAlgorithm.compute(l,c,n);let h=d.diffs;return h=dk(l,c,h),h=u$(l,c,h),h=h$(l,c,h),h=m$(l,c,h),{mappings:h.map(f=>new Ls(l.translateRange(f.seq1Range),c.translateRange(f.seq2Range))),hitTimeout:d.hitTimeout}}}function iA(o,e,t,i=!1){const n=[];for(const s of LN(o.map(r=>p$(r,e,t)),(r,a)=>r.original.overlapOrTouch(a.original)||r.modified.overlapOrTouch(a.modified))){const r=s[0],a=s[s.length-1];n.push(new Ws(r.original.join(a.original),r.modified.join(a.modified),s.map(l=>l.innerChanges[0])))}return Fh(()=>!i&&n.length>0&&(n[0].modified.startLineNumber!==n[0].original.startLineNumber||t.length-n[n.length-1].modified.endLineNumberExclusive!==e.length-n[n.length-1].original.endLineNumberExclusive)?!1:oT(n,(s,r)=>r.original.startLineNumber-s.original.endLineNumberExclusive===r.modified.startLineNumber-s.modified.endLineNumberExclusive&&s.original.endLineNumberExclusive=t[o.modifiedRange.startLineNumber-1].length&&o.originalRange.startColumn-1>=e[o.originalRange.startLineNumber-1].length&&o.originalRange.startLineNumber<=o.originalRange.endLineNumber+n&&o.modifiedRange.startLineNumber<=o.modifiedRange.endLineNumber+n&&(i=1);const s=new xe(o.originalRange.startLineNumber+i,o.originalRange.endLineNumber+1+n),r=new xe(o.modifiedRange.startLineNumber+i,o.modifiedRange.endLineNumber+1+n);return new Ws(s,r,[o])}function _$(o){return new hn(new xe(o.seq1Range.start+1,o.seq1Range.endExclusive+1),new xe(o.seq2Range.start+1,o.seq2Range.endExclusive+1))}const nA={getLegacy:()=>new ZU,getDefault:()=>new u3};function gc(o,e){const t=Math.pow(10,e);return Math.round(o*t)/t}class qe{constructor(e,t,i,n=1){this._rgbaBrand=void 0,this.r=Math.min(255,Math.max(0,e))|0,this.g=Math.min(255,Math.max(0,t))|0,this.b=Math.min(255,Math.max(0,i))|0,this.a=gc(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.r===t.r&&e.g===t.g&&e.b===t.b&&e.a===t.a}}class ko{constructor(e,t,i,n){this._hslaBrand=void 0,this.h=Math.max(Math.min(360,e),0)|0,this.s=gc(Math.max(Math.min(1,t),0),3),this.l=gc(Math.max(Math.min(1,i),0),3),this.a=gc(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.l===t.l&&e.a===t.a}static fromRGBA(e){const t=e.r/255,i=e.g/255,n=e.b/255,s=e.a,r=Math.max(t,i,n),a=Math.min(t,i,n);let l=0,c=0;const d=(a+r)/2,h=r-a;if(h>0){switch(c=Math.min(d<=.5?h/(2*d):h/(2-2*d),1),r){case t:l=(i-n)/h+(i1&&(i-=1),i<1/6?e+(t-e)*6*i:i<1/2?t:i<2/3?e+(t-e)*(2/3-i)*6:e}static toRGBA(e){const t=e.h/360,{s:i,l:n,a:s}=e;let r,a,l;if(i===0)r=a=l=n;else{const c=n<.5?n*(1+i):n+i-n*i,d=2*n-c;r=ko._hue2rgb(d,c,t+1/3),a=ko._hue2rgb(d,c,t),l=ko._hue2rgb(d,c,t-1/3)}return new qe(Math.round(r*255),Math.round(a*255),Math.round(l*255),s)}}class ea{constructor(e,t,i,n){this._hsvaBrand=void 0,this.h=Math.max(Math.min(360,e),0)|0,this.s=gc(Math.max(Math.min(1,t),0),3),this.v=gc(Math.max(Math.min(1,i),0),3),this.a=gc(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.v===t.v&&e.a===t.a}static fromRGBA(e){const t=e.r/255,i=e.g/255,n=e.b/255,s=Math.max(t,i,n),r=Math.min(t,i,n),a=s-r,l=s===0?0:a/s;let c;return a===0?c=0:s===t?c=((i-n)/a%6+6)%6:s===i?c=(n-t)/a+2:c=(t-i)/a+4,new ea(Math.round(c*60),l,s,e.a)}static toRGBA(e){const{h:t,s:i,v:n,a:s}=e,r=n*i,a=r*(1-Math.abs(t/60%2-1)),l=n-r;let[c,d,h]=[0,0,0];return t<60?(c=r,d=a):t<120?(c=a,d=r):t<180?(d=r,h=a):t<240?(d=a,h=r):t<300?(c=a,h=r):t<=360&&(c=r,h=a),c=Math.round((c+l)*255),d=Math.round((d+l)*255),h=Math.round((h+l)*255),new qe(c,d,h,s)}}const Kt=class Kt{static fromHex(e){return Kt.Format.CSS.parseHex(e)||Kt.red}static equals(e,t){return!e&&!t?!0:!e||!t?!1:e.equals(t)}get hsla(){return this._hsla?this._hsla:ko.fromRGBA(this.rgba)}get hsva(){return this._hsva?this._hsva:ea.fromRGBA(this.rgba)}constructor(e){if(e)if(e instanceof qe)this.rgba=e;else if(e instanceof ko)this._hsla=e,this.rgba=ko.toRGBA(e);else if(e instanceof ea)this._hsva=e,this.rgba=ea.toRGBA(e);else throw new Error("Invalid color ctor argument");else throw new Error("Color needs a value")}equals(e){return!!e&&qe.equals(this.rgba,e.rgba)&&ko.equals(this.hsla,e.hsla)&&ea.equals(this.hsva,e.hsva)}getRelativeLuminance(){const e=Kt._relativeLuminanceForComponent(this.rgba.r),t=Kt._relativeLuminanceForComponent(this.rgba.g),i=Kt._relativeLuminanceForComponent(this.rgba.b),n=.2126*e+.7152*t+.0722*i;return gc(n,4)}static _relativeLuminanceForComponent(e){const t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)}isLighter(){return(this.rgba.r*299+this.rgba.g*587+this.rgba.b*114)/1e3>=128}isLighterThan(e){const t=this.getRelativeLuminance(),i=e.getRelativeLuminance();return t>i}isDarkerThan(e){const t=this.getRelativeLuminance(),i=e.getRelativeLuminance();return t0)for(const n of i){const s=n.filter(c=>c!==void 0),r=s[1],a=s[2];if(!a)continue;let l;if(r==="rgb"){const c=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*\)$/gm;l=sA(hm(o,n),um(a,c),!1)}else if(r==="rgba"){const c=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;l=sA(hm(o,n),um(a,c),!0)}else if(r==="hsl"){const c=/^\(\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*\)$/gm;l=oA(hm(o,n),um(a,c),!1)}else if(r==="hsla"){const c=/^\(\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;l=oA(hm(o,n),um(a,c),!0)}else r==="#"&&(l=b$(hm(o,n),r+a));l&&e.push(l)}return e}function v$(o){return!o||typeof o.getValue!="function"||typeof o.positionAt!="function"?[]:C$(o)}const rA=new RegExp("\\bMARK:\\s*(.*)$","d"),w$=/^-+|-+$/g;function y$(o,e){let t=[];if(e.findRegionSectionHeaders&&e.foldingRules?.markers){const i=S$(o,e);t=t.concat(i)}if(e.findMarkSectionHeaders){const i=L$(o);t=t.concat(i)}return t}function S$(o,e){const t=[],i=o.getLineCount();for(let n=1;n<=i;n++){const s=o.getLineContent(n),r=s.match(e.foldingRules.markers.start);if(r){const a={startLineNumber:n,startColumn:r[0].length+1,endLineNumber:n,endColumn:s.length+1};if(a.endColumn>a.startColumn){const l={range:a,...g3(s.substring(r[0].length)),shouldBeInComments:!1};(l.text||l.hasSeparatorLine)&&t.push(l)}}}return t}function L$(o){const e=[],t=o.getLineCount();for(let i=1;i<=t;i++){const n=o.getLineContent(i);x$(n,i,e)}return e}function x$(o,e,t){rA.lastIndex=0;const i=rA.exec(o);if(i){const n=i.indices[1][0]+1,s=i.indices[1][1]+1,r={startLineNumber:e,startColumn:n,endLineNumber:e,endColumn:s};if(r.endColumn>r.startColumn){const a={range:r,...g3(i[1]),shouldBeInComments:!0};(a.text||a.hasSeparatorLine)&&t.push(a)}}}function g3(o){o=o.trim();const e=o.startsWith("-");return o=o.replace(w$,""),{text:o,hasSeparatorLine:e}}class k${constructor(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(e,t){e=Iu(e);const i=this.values,n=this.prefixSum,s=t.length;return s===0?!1:(this.values=new Uint32Array(i.length+s),this.values.set(i.subarray(0,e),0),this.values.set(i.subarray(e),e+s),this.values.set(t,e),e-1=0&&this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(e,t){return e=Iu(e),t=Iu(t),this.values[e]===t?!1:(this.values[e]=t,e-1=i.length)return!1;const s=i.length-e;return t>=s&&(t=s),t===0?!1:(this.values=new Uint32Array(i.length-t),this.values.set(i.subarray(0,e),0),this.values.set(i.subarray(e+t),e),this.prefixSum=new Uint32Array(this.values.length),e-1=0&&this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return this.values.length===0?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(e){return e<0?0:(e=Iu(e),this._getPrefixSum(e))}_getPrefixSum(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];let t=this.prefixSumValidIndex[0]+1;t===0&&(this.prefixSum[0]=this.values[0],t++),e>=this.values.length&&(e=this.values.length-1);for(let i=t;i<=e;i++)this.prefixSum[i]=this.prefixSum[i-1]+this.values[i];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]}getIndexOf(e){e=Math.floor(e),this.getTotalSum();let t=0,i=this.values.length-1,n=0,s=0,r=0;for(;t<=i;)if(n=t+(i-t)/2|0,s=this.prefixSum[n],r=s-this.values[n],e=s)t=n+1;else break;return new m3(n,e-r)}}class D${constructor(e){this._values=e,this._isValid=!1,this._validEndIndex=-1,this._prefixSum=[],this._indexBySum=[]}getTotalSum(){return this._ensureValid(),this._indexBySum.length}getPrefixSum(e){return this._ensureValid(),e===0?0:this._prefixSum[e-1]}getIndexOf(e){this._ensureValid();const t=this._indexBySum[e],i=t>0?this._prefixSum[t-1]:0;return new m3(t,e-i)}removeValues(e,t){this._values.splice(e,t),this._invalidate(e)}insertValues(e,t){this._values=y0(this._values,e,t),this._invalidate(e)}_invalidate(e){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,e-1)}_ensureValid(){if(!this._isValid){for(let e=this._validEndIndex+1,t=this._values.length;e0?this._prefixSum[e-1]:0;this._prefixSum[e]=n+i;for(let s=0;sthis._checkStopModelSync(),Math.round(aA/2)),this._register(n)}}dispose(){for(const e in this._syncedModels)xt(this._syncedModels[e]);this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),super.dispose()}ensureSyncedResources(e,t=!1){for(const i of e){const n=i.toString();this._syncedModels[n]||this._beginModelSync(i,t),this._syncedModels[n]&&(this._syncedModelsLastUsedTime[n]=new Date().getTime())}}_checkStopModelSync(){const e=new Date().getTime(),t=[];for(const i in this._syncedModelsLastUsedTime)e-this._syncedModelsLastUsedTime[i]>aA&&t.push(i);for(const i of t)this._stopModelSync(i)}_beginModelSync(e,t){const i=this._modelService.getModel(e);if(!i||!t&&i.isTooLargeForSyncing())return;const n=e.toString();this._proxy.$acceptNewModel({url:i.uri.toString(),lines:i.getLinesContent(),EOL:i.getEOL(),versionId:i.getVersionId()});const s=new X;s.add(i.onDidChangeContent(r=>{this._proxy.$acceptModelChanged(n.toString(),r)})),s.add(i.onWillDispose(()=>{this._stopModelSync(n)})),s.add(_e(()=>{this._proxy.$acceptRemovedModel(n)})),this._syncedModels[n]=s}_stopModelSync(e){const t=this._syncedModels[e];delete this._syncedModels[e],delete this._syncedModelsLastUsedTime[e],xt(t)}}class N${constructor(){this._models=Object.create(null)}getModel(e){return this._models[e]}getModels(){const e=[];return Object.keys(this._models).forEach(t=>e.push(this._models[t])),e}$acceptNewModel(e){this._models[e.url]=new T$(ve.parse(e.url),e.lines,e.EOL,e.versionId)}$acceptModelChanged(e,t){if(!this._models[e])return;this._models[e].onEvents(t)}$acceptRemovedModel(e){this._models[e]&&delete this._models[e]}}class T$ extends I${get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}findMatches(e){const t=[];for(let i=0;ithis._lines.length)t=this._lines.length,i=this._lines[t-1].length+1,n=!0;else{const s=this._lines[t-1].length+1;i<1?(i=1,n=!0):i>s&&(i=s,n=!0)}return n?{lineNumber:t,column:i}:e}}const Nw=class Nw{constructor(){this._workerTextModelSyncServer=new N$}dispose(){}_getModel(e){return this._workerTextModelSyncServer.getModel(e)}_getModels(){return this._workerTextModelSyncServer.getModels()}$acceptNewModel(e){this._workerTextModelSyncServer.$acceptNewModel(e)}$acceptModelChanged(e,t){this._workerTextModelSyncServer.$acceptModelChanged(e,t)}$acceptRemovedModel(e){this._workerTextModelSyncServer.$acceptRemovedModel(e)}async $computeUnicodeHighlights(e,t,i){const n=this._getModel(e);return n?BU.computeUnicodeHighlights(n,t,i):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}}async $findSectionHeaders(e,t){const i=this._getModel(e);return i?y$(i,t):[]}async $computeDiff(e,t,i,n){const s=this._getModel(e),r=this._getModel(t);return!s||!r?null:I1.computeDiff(s,r,i,n)}static computeDiff(e,t,i,n){const s=n==="advanced"?nA.getDefault():nA.getLegacy(),r=e.getLinesContent(),a=t.getLinesContent(),l=s.computeDiff(r,a,i),c=l.changes.length>0?!1:this._modelsAreIdentical(e,t);function d(h){return h.map(u=>[u.original.startLineNumber,u.original.endLineNumberExclusive,u.modified.startLineNumber,u.modified.endLineNumberExclusive,u.innerChanges?.map(f=>[f.originalRange.startLineNumber,f.originalRange.startColumn,f.originalRange.endLineNumber,f.originalRange.endColumn,f.modifiedRange.startLineNumber,f.modifiedRange.startColumn,f.modifiedRange.endLineNumber,f.modifiedRange.endColumn])])}return{identical:c,quitEarly:l.hitTimeout,changes:d(l.changes),moves:l.moves.map(h=>[h.lineRangeMapping.original.startLineNumber,h.lineRangeMapping.original.endLineNumberExclusive,h.lineRangeMapping.modified.startLineNumber,h.lineRangeMapping.modified.endLineNumberExclusive,d(h.changes)])}}static _modelsAreIdentical(e,t){const i=e.getLineCount(),n=t.getLineCount();if(i!==n)return!1;for(let s=1;s<=i;s++){const r=e.getLineContent(s),a=t.getLineContent(s);if(r!==a)return!1}return!0}async $computeMoreMinimalEdits(e,t,i){const n=this._getModel(e);if(!n)return t;const s=[];let r;t=t.slice(0).sort((l,c)=>{if(l.range&&c.range)return I.compareRangesUsingStarts(l.range,c.range);const d=l.range?0:1,h=c.range?0:1;return d-h});let a=0;for(let l=1;lI1._diffLimit){s.push({range:l,text:c});continue}const u=_U(h,c,i),f=n.offsetAt(I.lift(l).getStartPosition());for(const g of u){const p=n.positionAt(f+g.originalStart),_=n.positionAt(f+g.originalStart+g.originalLength),b={text:c.substr(g.modifiedStart,g.modifiedLength),range:{startLineNumber:p.lineNumber,startColumn:p.column,endLineNumber:_.lineNumber,endColumn:_.column}};n.getValueInRange(b.range)!==b.text&&s.push(b)}}return typeof r=="number"&&s.push({eol:r,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),s}async $computeLinks(e){const t=this._getModel(e);return t?SU(t):null}async $computeDefaultDocumentColors(e){const t=this._getModel(e);return t?v$(t):null}async $textualSuggest(e,t,i,n){const s=new Hs,r=new RegExp(i,n),a=new Set;e:for(const l of e){const c=this._getModel(l);if(c){for(const d of c.words(r))if(!(d===t||!isNaN(Number(d)))&&(a.add(d),a.size>I1._suggestionsLimit))break e}}return{words:Array.from(a),duration:s.elapsed()}}async $computeWordRanges(e,t,i,n){const s=this._getModel(e);if(!s)return Object.create(null);const r=new RegExp(i,n),a=Object.create(null);for(let l=t.startLineNumber;lthis._host.$fhr(a,l)),getMirrorModels:()=>this._getModels()};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(r,t),Promise.resolve(DL(this._foreignModule))):new Promise((a,l)=>{const c=d=>{this._foreignModule=d.create(r,t),a(DL(this._foreignModule))};{const d=E0.asBrowserUri(`${e}.js`).toString(!0);vz(()=>import(`${d}`),[],import.meta.url).then(c).catch(l)}})}$fmr(e,t){if(!this._foreignModule||typeof this._foreignModule[e]!="function")return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(i){return Promise.reject(i)}}}typeof importScripts=="function"&&(globalThis.monaco=cF());const pT=He("textResourceConfigurationService"),p3=He("textResourcePropertiesService"),Se=He("ILanguageFeaturesService");var _T=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Cd=function(o,e){return function(t,i){e(t,i,o)}};const lA=300*1e3;function vd(o,e){const t=o.getModel(e);return!(!t||t.isTooLargeForSyncing())}let uk=class extends z{constructor(e,t,i,n,s,r){super(),this._languageConfigurationService=s,this._modelService=t,this._workerManager=this._register(new fk(e,this._modelService)),this._logService=n,this._register(r.linkProvider.register({language:"*",hasAccessToAllModels:!0},{provideLinks:async(a,l)=>{if(!vd(this._modelService,a.uri))return Promise.resolve({links:[]});const d=await(await this._workerWithResources([a.uri])).$computeLinks(a.uri.toString());return d&&{links:d}}})),this._register(r.completionProvider.register("*",new M$(this._workerManager,i,this._modelService,this._languageConfigurationService)))}dispose(){super.dispose()}canComputeUnicodeHighlights(e){return vd(this._modelService,e)}async computedUnicodeHighlights(e,t,i){return(await this._workerWithResources([e])).$computeUnicodeHighlights(e.toString(),t,i)}async computeDiff(e,t,i,n){const r=await(await this._workerWithResources([e,t],!0)).$computeDiff(e.toString(),t.toString(),i,n);if(!r)return null;return{identical:r.identical,quitEarly:r.quitEarly,changes:l(r.changes),moves:r.moves.map(c=>new l3(new hn(new xe(c[0],c[1]),new xe(c[2],c[3])),l(c[4])))};function l(c){return c.map(d=>new Ws(new xe(d[0],d[1]),new xe(d[2],d[3]),d[4]?.map(h=>new Ls(new I(h[0],h[1],h[2],h[3]),new I(h[4],h[5],h[6],h[7])))))}}async computeMoreMinimalEdits(e,t,i=!1){if(Ps(t)){if(!vd(this._modelService,e))return Promise.resolve(t);const n=Hs.create(),s=this._workerWithResources([e]).then(r=>r.$computeMoreMinimalEdits(e.toString(),t,i));return s.finally(()=>this._logService.trace("FORMAT#computeMoreMinimalEdits",e.toString(!0),n.elapsed())),Promise.race([s,og(1e3).then(()=>t)])}else return Promise.resolve(void 0)}canNavigateValueSet(e){return vd(this._modelService,e)}async navigateValueSet(e,t,i){const n=this._modelService.getModel(e);if(!n)return null;const s=this._languageConfigurationService.getLanguageConfiguration(n.getLanguageId()).getWordDefinition(),r=s.source,a=s.flags;return(await this._workerWithResources([e])).$navigateValueSet(e.toString(),t,i,r,a)}canComputeWordRanges(e){return vd(this._modelService,e)}async computeWordRanges(e,t){const i=this._modelService.getModel(e);if(!i)return Promise.resolve(null);const n=this._languageConfigurationService.getLanguageConfiguration(i.getLanguageId()).getWordDefinition(),s=n.source,r=n.flags;return(await this._workerWithResources([e])).$computeWordRanges(e.toString(),t,s,r)}async findSectionHeaders(e,t){return(await this._workerWithResources([e])).$findSectionHeaders(e.toString(),t)}async computeDefaultDocumentColors(e){return(await this._workerWithResources([e])).$computeDefaultDocumentColors(e.toString())}async _workerWithResources(e,t=!1){return await(await this._workerManager.withWorker()).workerWithSyncedResources(e,t)}};uk=_T([Cd(1,Fi),Cd(2,pT),Cd(3,gs),Cd(4,Gn),Cd(5,Se)],uk);class M${constructor(e,t,i,n){this.languageConfigurationService=n,this._debugDisplayName="wordbasedCompletions",this._workerManager=e,this._configurationService=t,this._modelService=i}async provideCompletionItems(e,t){const i=this._configurationService.getValue(e.uri,t,"editor");if(i.wordBasedSuggestions==="off")return;const n=[];if(i.wordBasedSuggestions==="currentDocument")vd(this._modelService,e.uri)&&n.push(e.uri);else for(const h of this._modelService.getModels())vd(this._modelService,h.uri)&&(h===e?n.unshift(h.uri):(i.wordBasedSuggestions==="allDocuments"||h.getLanguageId()===e.getLanguageId())&&n.push(h.uri));if(n.length===0)return;const s=this.languageConfigurationService.getLanguageConfiguration(e.getLanguageId()).getWordDefinition(),r=e.getWordAtPosition(t),a=r?new I(t.lineNumber,r.startColumn,t.lineNumber,r.endColumn):I.fromPositions(t),l=a.setEndPosition(t.lineNumber,t.column),d=await(await this._workerManager.withWorker()).textualSuggest(n,r?.word,s);if(d)return{duration:d.duration,suggestions:d.words.map(h=>({kind:18,label:h,insertText:h,range:{insert:l,replace:a}}))}}}let fk=class extends z{constructor(e,t){super(),this._workerDescriptor=e,this._modelService=t,this._editorWorkerClient=null,this._lastWorkerUsedTime=new Date().getTime(),this._register(new QN).cancelAndSet(()=>this._checkStopIdleWorker(),Math.round(lA/2),_t),this._register(this._modelService.onModelRemoved(n=>this._checkStopEmptyWorker()))}dispose(){this._editorWorkerClient&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null),super.dispose()}_checkStopEmptyWorker(){if(!this._editorWorkerClient)return;this._modelService.getModels().length===0&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}_checkStopIdleWorker(){if(!this._editorWorkerClient)return;new Date().getTime()-this._lastWorkerUsedTime>lA&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}withWorker(){return this._lastWorkerUsedTime=new Date().getTime(),this._editorWorkerClient||(this._editorWorkerClient=new EC(this._workerDescriptor,!1,this._modelService)),Promise.resolve(this._editorWorkerClient)}};fk=_T([Cd(1,Fi)],fk);class R${constructor(e){this._instance=e,this.proxy=this._instance}dispose(){this._instance.dispose()}setChannel(e,t){throw new Error("Not supported")}}let EC=class extends z{constructor(e,t,i){super(),this._workerDescriptor=e,this._disposed=!1,this._modelService=i,this._keepIdleModels=t,this._worker=null,this._modelManager=null}fhr(e,t){throw new Error("Not implemented!")}_getOrCreateWorker(){if(!this._worker)try{this._worker=this._register(Az(this._workerDescriptor)),ok.setChannel(this._worker,this._createEditorWorkerHost())}catch(e){Xx(e),this._worker=this._createFallbackLocalWorker()}return this._worker}async _getProxy(){try{const e=this._getOrCreateWorker().proxy;return await e.$ping(),e}catch(e){return Xx(e),this._worker=this._createFallbackLocalWorker(),this._worker.proxy}}_createFallbackLocalWorker(){return new R$(new I1(this._createEditorWorkerHost(),null))}_createEditorWorkerHost(){return{$fhr:(e,t)=>this.fhr(e,t)}}_getOrCreateModelManager(e){return this._modelManager||(this._modelManager=this._register(new E$(e,this._modelService,this._keepIdleModels))),this._modelManager}async workerWithSyncedResources(e,t=!1){if(this._disposed)return Promise.reject(bW());const i=await this._getProxy();return this._getOrCreateModelManager(i).ensureSyncedResources(e,t),i}async textualSuggest(e,t,i){const n=await this.workerWithSyncedResources(e),s=i.source,r=i.flags;return n.$textualSuggest(e.map(a=>a.toString()),t,s,r)}dispose(){super.dispose(),this._disposed=!0}};EC=_T([Cd(2,Fi)],EC);var io;(function(o){o.DARK="dark",o.LIGHT="light",o.HIGH_CONTRAST_DARK="hcDark",o.HIGH_CONTRAST_LIGHT="hcLight"})(io||(io={}));function mc(o){return o===io.HIGH_CONTRAST_DARK||o===io.HIGH_CONTRAST_LIGHT}function j0(o){return o===io.DARK||o===io.HIGH_CONTRAST_DARK}const en=He("themeService");function Xs(o){return{id:o}}function gk(o){switch(o){case io.DARK:return"vs-dark";case io.HIGH_CONTRAST_DARK:return"hc-black";case io.HIGH_CONTRAST_LIGHT:return"hc-light";default:return"vs"}}const _3={ThemingContribution:"base.contributions.theming"};class A${constructor(){this.themingParticipants=[],this.themingParticipants=[],this.onThemingParticipantAddedEmitter=new A}onColorThemeChange(e){return this.themingParticipants.push(e),this.onThemingParticipantAddedEmitter.fire(e),_e(()=>{const t=this.themingParticipants.indexOf(e);this.themingParticipants.splice(t,1)})}getThemingParticipants(){return this.themingParticipants}}const b3=new A$;Bi.add(_3.ThemingContribution,b3);function Sr(o){return b3.onColorThemeChange(o)}class P$ extends z{constructor(e){super(),this.themeService=e,this.theme=e.getColorTheme(),this._register(this.themeService.onDidColorThemeChange(t=>this.onThemeChange(t)))}onThemeChange(e){this.theme=e,this.updateStyles()}updateStyles(){}}var O$=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},F$=function(o,e){return function(t,i){e(t,i,o)}};let mk=class extends z{constructor(e){super(),this._themeService=e,this._onWillCreateCodeEditor=this._register(new A),this._onCodeEditorAdd=this._register(new A),this.onCodeEditorAdd=this._onCodeEditorAdd.event,this._onCodeEditorRemove=this._register(new A),this.onCodeEditorRemove=this._onCodeEditorRemove.event,this._onWillCreateDiffEditor=this._register(new A),this._onDiffEditorAdd=this._register(new A),this.onDiffEditorAdd=this._onDiffEditorAdd.event,this._onDiffEditorRemove=this._register(new A),this.onDiffEditorRemove=this._onDiffEditorRemove.event,this._decorationOptionProviders=new Map,this._codeEditorOpenHandlers=new yn,this._modelProperties=new Map,this._codeEditors=Object.create(null),this._diffEditors=Object.create(null),this._globalStyleSheet=null}willCreateCodeEditor(){this._onWillCreateCodeEditor.fire()}addCodeEditor(e){this._codeEditors[e.getId()]=e,this._onCodeEditorAdd.fire(e)}removeCodeEditor(e){delete this._codeEditors[e.getId()]&&this._onCodeEditorRemove.fire(e)}listCodeEditors(){return Object.keys(this._codeEditors).map(e=>this._codeEditors[e])}willCreateDiffEditor(){this._onWillCreateDiffEditor.fire()}addDiffEditor(e){this._diffEditors[e.getId()]=e,this._onDiffEditorAdd.fire(e)}listDiffEditors(){return Object.keys(this._diffEditors).map(e=>this._diffEditors[e])}getFocusedCodeEditor(){let e=null;const t=this.listCodeEditors();for(const i of t){if(i.hasTextFocus())return i;i.hasWidgetFocus()&&(e=i)}return e}removeDecorationType(e){const t=this._decorationOptionProviders.get(e);t&&(t.refCount--,t.refCount<=0&&(this._decorationOptionProviders.delete(e),t.dispose(),this.listCodeEditors().forEach(i=>i.removeDecorationsByType(e))))}setModelProperty(e,t,i){const n=e.toString();let s;this._modelProperties.has(n)?s=this._modelProperties.get(n):(s=new Map,this._modelProperties.set(n,s)),s.set(t,i)}getModelProperty(e,t){const i=e.toString();if(this._modelProperties.has(i))return this._modelProperties.get(i).get(t)}async openCodeEditor(e,t,i){for(const n of this._codeEditorOpenHandlers){const s=await n(e,t,i);if(s!==null)return s}return null}registerCodeEditorOpenHandler(e){const t=this._codeEditorOpenHandlers.unshift(e);return _e(t)}};mk=O$([F$(0,en)],mk);var B$=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},cA=function(o,e){return function(t,i){e(t,i,o)}};let NC=class extends mk{constructor(e,t){super(t),this._register(this.onCodeEditorAdd(()=>this._checkContextKey())),this._register(this.onCodeEditorRemove(()=>this._checkContextKey())),this._editorIsOpen=e.createKey("editorIsOpen",!1),this._activeCodeEditor=null,this._register(this.registerCodeEditorOpenHandler(async(i,n,s)=>n?this.doOpenEditor(n,i):null))}_checkContextKey(){let e=!1;for(const t of this.listCodeEditors())if(!t.isSimpleWidget){e=!0;break}this._editorIsOpen.set(e)}setActiveCodeEditor(e){this._activeCodeEditor=e}getActiveCodeEditor(){return this._activeCodeEditor}doOpenEditor(e,t){if(!this.findModel(e,t.resource)){if(t.resource){const s=t.resource.scheme;if(s===Te.http||s===Te.https)return HF(t.resource.toString()),e}return null}const n=t.options?t.options.selection:null;if(n)if(typeof n.endLineNumber=="number"&&typeof n.endColumn=="number")e.setSelection(n),e.revealRangeInCenter(n,1);else{const s={lineNumber:n.startLineNumber,column:n.startColumn};e.setPosition(s),e.revealPositionInCenter(s,1)}return e}findModel(e,t){const i=e.getModel();return i&&i.uri.toString()!==t.toString()?null:i}};NC=B$([cA(0,De),cA(1,en)],NC);Qe(Pt,NC,0);const jc=He("layoutService");var C3=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},v3=function(o,e){return function(t,i){e(t,i,o)}};let TC=class{get mainContainer(){return xN(this._codeEditorService.listCodeEditors())?.getContainerDomNode()??_t.document.body}get activeContainer(){return(this._codeEditorService.getFocusedCodeEditor()??this._codeEditorService.getActiveCodeEditor())?.getContainerDomNode()??this.mainContainer}get mainContainerDimension(){return Ah(this.mainContainer)}get activeContainerDimension(){return Ah(this.activeContainer)}get containers(){return Ag(this._codeEditorService.listCodeEditors().map(e=>e.getContainerDomNode()))}getContainer(){return this.activeContainer}whenContainerStylesLoaded(){}focus(){this._codeEditorService.getFocusedCodeEditor()?.focus()}constructor(e){this._codeEditorService=e,this.onDidLayoutMainContainer=J.None,this.onDidLayoutActiveContainer=J.None,this.onDidLayoutContainer=J.None,this.onDidChangeActiveContainer=J.None,this.onDidAddContainer=J.None,this.mainContainerOffset={top:0,quickPickTop:0},this.activeContainerOffset={top:0,quickPickTop:0}}};TC=C3([v3(0,Pt)],TC);let pk=class extends TC{get mainContainer(){return this._container}constructor(e,t){super(t),this._container=e}};pk=C3([v3(1,Pt)],pk);Qe(jc,TC,1);var e_;(function(o){o[o.Ignore=0]="Ignore",o[o.Info=1]="Info",o[o.Warning=2]="Warning",o[o.Error=3]="Error"})(e_||(e_={}));(function(o){const e="error",t="warning",i="warn",n="info",s="ignore";function r(l){return l?Qu(e,l)?o.Error:Qu(t,l)||Qu(i,l)?o.Warning:Qu(n,l)?o.Info:o.Ignore:o.Ignore}o.fromValue=r;function a(l){switch(l){case o.Error:return e;case o.Warning:return t;case o.Info:return n;default:return s}}o.toString=a})(e_||(e_={}));const Qt=e_,w3=He("dialogService");var bT=Qt;const mn=He("notificationService");class W${}const CT=He("undoRedoService");class y3{constructor(e,t){this.resource=e,this.elements=t}}const yf=class yf{constructor(){this.id=yf._ID++,this.order=1}nextOrder(){return this.id===0?0:this.order++}};yf._ID=0,yf.None=new yf;let _k=yf;const Sf=class Sf{constructor(){this.id=Sf._ID++,this.order=1}nextOrder(){return this.id===0?0:this.order++}};Sf._ID=0,Sf.None=new Sf;let wd=Sf;var H$=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},dA=function(o,e){return function(t,i){e(t,i,o)}};function Nb(o){return o.scheme===Te.file?o.fsPath:o.path}let S3=0;class Tb{constructor(e,t,i,n,s,r,a){this.id=++S3,this.type=0,this.actual=e,this.label=e.label,this.confirmBeforeUndo=e.confirmBeforeUndo||!1,this.resourceLabel=t,this.strResource=i,this.resourceLabels=[this.resourceLabel],this.strResources=[this.strResource],this.groupId=n,this.groupOrder=s,this.sourceId=r,this.sourceOrder=a,this.isValid=!0}setValid(e){this.isValid=e}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.isValid?" VALID":"INVALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class hA{constructor(e,t){this.resourceLabel=e,this.reason=t}}class uA{constructor(){this.elements=new Map}createMessage(){const e=[],t=[];for(const[,n]of this.elements)(n.reason===0?e:t).push(n.resourceLabel);const i=[];return e.length>0&&i.push(m({key:"externalRemoval",comment:["{0} is a list of filenames"]},"The following files have been closed and modified on disk: {0}.",e.join(", "))),t.length>0&&i.push(m({key:"noParallelUniverses",comment:["{0} is a list of filenames"]},"The following files have been modified in an incompatible way: {0}.",t.join(", "))),i.join(` -`)}get size(){return this.elements.size}has(e){return this.elements.has(e)}set(e,t){this.elements.set(e,t)}delete(e){return this.elements.delete(e)}}class V${constructor(e,t,i,n,s,r,a){this.id=++S3,this.type=1,this.actual=e,this.label=e.label,this.confirmBeforeUndo=e.confirmBeforeUndo||!1,this.resourceLabels=t,this.strResources=i,this.groupId=n,this.groupOrder=s,this.sourceId=r,this.sourceOrder=a,this.removedResources=null,this.invalidatedResources=null}canSplit(){return typeof this.actual.split=="function"}removeResource(e,t,i){this.removedResources||(this.removedResources=new uA),this.removedResources.has(t)||this.removedResources.set(t,new hA(e,i))}setValid(e,t,i){i?this.invalidatedResources&&(this.invalidatedResources.delete(t),this.invalidatedResources.size===0&&(this.invalidatedResources=null)):(this.invalidatedResources||(this.invalidatedResources=new uA),this.invalidatedResources.has(t)||this.invalidatedResources.set(t,new hA(e,0)))}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.invalidatedResources?"INVALID":" VALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class L3{constructor(e,t){this.resourceLabel=e,this.strResource=t,this._past=[],this._future=[],this.locked=!1,this.versionId=1}dispose(){for(const e of this._past)e.type===1&&e.removeResource(this.resourceLabel,this.strResource,0);for(const e of this._future)e.type===1&&e.removeResource(this.resourceLabel,this.strResource,0);this.versionId++}toString(){const e=[];e.push(`* ${this.strResource}:`);for(let t=0;t=0;t--)e.push(` * [REDO] ${this._future[t]}`);return e.join(` -`)}flushAllElements(){this._past=[],this._future=[],this.versionId++}_setElementValidFlag(e,t){e.type===1?e.setValid(this.resourceLabel,this.strResource,t):e.setValid(t)}setElementsValidFlag(e,t){for(const i of this._past)t(i.actual)&&this._setElementValidFlag(i,e);for(const i of this._future)t(i.actual)&&this._setElementValidFlag(i,e)}pushElement(e){for(const t of this._future)t.type===1&&t.removeResource(this.resourceLabel,this.strResource,1);this._future=[],this._past.push(e),this.versionId++}createSnapshot(e){const t=[];for(let i=0,n=this._past.length;i=0;i--)t.push(this._future[i].id);return new y3(e,t)}restoreSnapshot(e){const t=e.elements.length;let i=!0,n=0,s=-1;for(let a=0,l=this._past.length;a=t||c.id!==e.elements[n])&&(i=!1,s=0),!i&&c.type===1&&c.removeResource(this.resourceLabel,this.strResource,0)}let r=-1;for(let a=this._future.length-1;a>=0;a--,n++){const l=this._future[a];i&&(n>=t||l.id!==e.elements[n])&&(i=!1,r=a),!i&&l.type===1&&l.removeResource(this.resourceLabel,this.strResource,0)}s!==-1&&(this._past=this._past.slice(0,s)),r!==-1&&(this._future=this._future.slice(r+1)),this.versionId++}getElements(){const e=[],t=[];for(const i of this._past)e.push(i.actual);for(const i of this._future)t.push(i.actual);return{past:e,future:t}}getClosestPastElement(){return this._past.length===0?null:this._past[this._past.length-1]}getSecondClosestPastElement(){return this._past.length<2?null:this._past[this._past.length-2]}getClosestFutureElement(){return this._future.length===0?null:this._future[this._future.length-1]}hasPastElements(){return this._past.length>0}hasFutureElements(){return this._future.length>0}splitPastWorkspaceElement(e,t){for(let i=this._past.length-1;i>=0;i--)if(this._past[i]===e){t.has(this.strResource)?this._past[i]=t.get(this.strResource):this._past.splice(i,1);break}this.versionId++}splitFutureWorkspaceElement(e,t){for(let i=this._future.length-1;i>=0;i--)if(this._future[i]===e){t.has(this.strResource)?this._future[i]=t.get(this.strResource):this._future.splice(i,1);break}this.versionId++}moveBackward(e){this._past.pop(),this._future.push(e),this.versionId++}moveForward(e){this._future.pop(),this._past.push(e),this.versionId++}}class yS{constructor(e){this.editStacks=e,this._versionIds=[];for(let t=0,i=this.editStacks.length;tt.sourceOrder)&&(t=r,i=n)}return[t,i]}canUndo(e){if(e instanceof wd){const[,i]=this._findClosestUndoElementWithSource(e.id);return!!i}const t=this.getUriComparisonKey(e);return this._editStacks.has(t)?this._editStacks.get(t).hasPastElements():!1}_onError(e,t){Ze(e);for(const i of t.strResources)this.removeElements(i);this._notificationService.error(e)}_acquireLocks(e){for(const t of e.editStacks)if(t.locked)throw new Error("Cannot acquire edit stack lock");for(const t of e.editStacks)t.locked=!0;return()=>{for(const t of e.editStacks)t.locked=!1}}_safeInvokeWithLocks(e,t,i,n,s){const r=this._acquireLocks(i);let a;try{a=t()}catch(l){return r(),n.dispose(),this._onError(l,e)}return a?a.then(()=>(r(),n.dispose(),s()),l=>(r(),n.dispose(),this._onError(l,e))):(r(),n.dispose(),s())}async _invokeWorkspacePrepare(e){if(typeof e.actual.prepareUndoRedo>"u")return z.None;const t=e.actual.prepareUndoRedo();return typeof t>"u"?z.None:t}_invokeResourcePrepare(e,t){if(e.actual.type!==1||typeof e.actual.prepareUndoRedo>"u")return t(z.None);const i=e.actual.prepareUndoRedo();return i?MN(i)?t(i):i.then(n=>t(n)):t(z.None)}_getAffectedEditStacks(e){const t=[];for(const i of e.strResources)t.push(this._editStacks.get(i)||x3);return new yS(t)}_tryToSplitAndUndo(e,t,i,n){if(t.canSplit())return this._splitPastWorkspaceElement(t,i),this._notificationService.warn(n),new Mb(this._undo(e,0,!0));for(const s of t.strResources)this.removeElements(s);return this._notificationService.warn(n),new Mb}_checkWorkspaceUndo(e,t,i,n){if(t.removedResources)return this._tryToSplitAndUndo(e,t,t.removedResources,m({key:"cannotWorkspaceUndo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not undo '{0}' across all files. {1}",t.label,t.removedResources.createMessage()));if(n&&t.invalidatedResources)return this._tryToSplitAndUndo(e,t,t.invalidatedResources,m({key:"cannotWorkspaceUndo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not undo '{0}' across all files. {1}",t.label,t.invalidatedResources.createMessage()));const s=[];for(const a of i.editStacks)a.getClosestPastElement()!==t&&s.push(a.resourceLabel);if(s.length>0)return this._tryToSplitAndUndo(e,t,null,m({key:"cannotWorkspaceUndoDueToChanges",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because changes were made to {1}",t.label,s.join(", ")));const r=[];for(const a of i.editStacks)a.locked&&r.push(a.resourceLabel);return r.length>0?this._tryToSplitAndUndo(e,t,null,m({key:"cannotWorkspaceUndoDueToInProgressUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because there is already an undo or redo operation running on {1}",t.label,r.join(", "))):i.isValid()?null:this._tryToSplitAndUndo(e,t,null,m({key:"cannotWorkspaceUndoDueToInMeantimeUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because an undo or redo operation occurred in the meantime",t.label))}_workspaceUndo(e,t,i){const n=this._getAffectedEditStacks(t),s=this._checkWorkspaceUndo(e,t,n,!1);return s?s.returnValue:this._confirmAndExecuteWorkspaceUndo(e,t,n,i)}_isPartOfUndoGroup(e){if(!e.groupId)return!1;for(const[,t]of this._editStacks){const i=t.getClosestPastElement();if(i){if(i===e){const n=t.getSecondClosestPastElement();if(n&&n.groupId===e.groupId)return!0}if(i.groupId===e.groupId)return!0}}return!1}async _confirmAndExecuteWorkspaceUndo(e,t,i,n){if(t.canSplit()&&!this._isPartOfUndoGroup(t)){let a;(function(d){d[d.All=0]="All",d[d.This=1]="This",d[d.Cancel=2]="Cancel"})(a||(a={}));const{result:l}=await this._dialogService.prompt({type:Qt.Info,message:m("confirmWorkspace","Would you like to undo '{0}' across all files?",t.label),buttons:[{label:m({key:"ok",comment:["{0} denotes a number that is > 1, && denotes a mnemonic"]},"&&Undo in {0} Files",i.editStacks.length),run:()=>a.All},{label:m({key:"nok",comment:["&& denotes a mnemonic"]},"Undo this &&File"),run:()=>a.This}],cancelButton:{run:()=>a.Cancel}});if(l===a.Cancel)return;if(l===a.This)return this._splitPastWorkspaceElement(t,null),this._undo(e,0,!0);const c=this._checkWorkspaceUndo(e,t,i,!1);if(c)return c.returnValue;n=!0}let s;try{s=await this._invokeWorkspacePrepare(t)}catch(a){return this._onError(a,t)}const r=this._checkWorkspaceUndo(e,t,i,!0);if(r)return s.dispose(),r.returnValue;for(const a of i.editStacks)a.moveBackward(t);return this._safeInvokeWithLocks(t,()=>t.actual.undo(),i,s,()=>this._continueUndoInGroup(t.groupId,n))}_resourceUndo(e,t,i){if(!t.isValid){e.flushAllElements();return}if(e.locked){const n=m({key:"cannotResourceUndoDueToInProgressUndoRedo",comment:["{0} is a label for an operation."]},"Could not undo '{0}' because there is already an undo or redo operation running.",t.label);this._notificationService.warn(n);return}return this._invokeResourcePrepare(t,n=>(e.moveBackward(t),this._safeInvokeWithLocks(t,()=>t.actual.undo(),new yS([e]),n,()=>this._continueUndoInGroup(t.groupId,i))))}_findClosestUndoElementInGroup(e){if(!e)return[null,null];let t=null,i=null;for(const[n,s]of this._editStacks){const r=s.getClosestPastElement();r&&r.groupId===e&&(!t||r.groupOrder>t.groupOrder)&&(t=r,i=n)}return[t,i]}_continueUndoInGroup(e,t){if(!e)return;const[,i]=this._findClosestUndoElementInGroup(e);if(i)return this._undo(i,0,t)}undo(e){if(e instanceof wd){const[,t]=this._findClosestUndoElementWithSource(e.id);return t?this._undo(t,e.id,!1):void 0}return typeof e=="string"?this._undo(e,0,!1):this._undo(this.getUriComparisonKey(e),0,!1)}_undo(e,t=0,i){if(!this._editStacks.has(e))return;const n=this._editStacks.get(e),s=n.getClosestPastElement();if(!s)return;if(s.groupId){const[a,l]=this._findClosestUndoElementInGroup(s.groupId);if(s!==a&&l)return this._undo(l,t,i)}return(s.sourceId!==t||s.confirmBeforeUndo)&&!i?this._confirmAndContinueUndo(e,t,s):s.type===1?this._workspaceUndo(e,s,i):this._resourceUndo(n,s,i)}async _confirmAndContinueUndo(e,t,i){if((await this._dialogService.confirm({message:m("confirmDifferentSource","Would you like to undo '{0}'?",i.label),primaryButton:m({key:"confirmDifferentSource.yes",comment:["&& denotes a mnemonic"]},"&&Yes"),cancelButton:m("confirmDifferentSource.no","No")})).confirmed)return this._undo(e,t,!0)}_findClosestRedoElementWithSource(e){if(!e)return[null,null];let t=null,i=null;for(const[n,s]of this._editStacks){const r=s.getClosestFutureElement();r&&r.sourceId===e&&(!t||r.sourceOrder0)return this._tryToSplitAndRedo(e,t,null,m({key:"cannotWorkspaceRedoDueToChanges",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because changes were made to {1}",t.label,s.join(", ")));const r=[];for(const a of i.editStacks)a.locked&&r.push(a.resourceLabel);return r.length>0?this._tryToSplitAndRedo(e,t,null,m({key:"cannotWorkspaceRedoDueToInProgressUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because there is already an undo or redo operation running on {1}",t.label,r.join(", "))):i.isValid()?null:this._tryToSplitAndRedo(e,t,null,m({key:"cannotWorkspaceRedoDueToInMeantimeUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because an undo or redo operation occurred in the meantime",t.label))}_workspaceRedo(e,t){const i=this._getAffectedEditStacks(t),n=this._checkWorkspaceRedo(e,t,i,!1);return n?n.returnValue:this._executeWorkspaceRedo(e,t,i)}async _executeWorkspaceRedo(e,t,i){let n;try{n=await this._invokeWorkspacePrepare(t)}catch(r){return this._onError(r,t)}const s=this._checkWorkspaceRedo(e,t,i,!0);if(s)return n.dispose(),s.returnValue;for(const r of i.editStacks)r.moveForward(t);return this._safeInvokeWithLocks(t,()=>t.actual.redo(),i,n,()=>this._continueRedoInGroup(t.groupId))}_resourceRedo(e,t){if(!t.isValid){e.flushAllElements();return}if(e.locked){const i=m({key:"cannotResourceRedoDueToInProgressUndoRedo",comment:["{0} is a label for an operation."]},"Could not redo '{0}' because there is already an undo or redo operation running.",t.label);this._notificationService.warn(i);return}return this._invokeResourcePrepare(t,i=>(e.moveForward(t),this._safeInvokeWithLocks(t,()=>t.actual.redo(),new yS([e]),i,()=>this._continueRedoInGroup(t.groupId))))}_findClosestRedoElementInGroup(e){if(!e)return[null,null];let t=null,i=null;for(const[n,s]of this._editStacks){const r=s.getClosestFutureElement();r&&r.groupId===e&&(!t||r.groupOrder=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fA=function(o,e){return function(t,i){e(t,i,o)}};const q0=He("ILanguageFeatureDebounceService");var MC;(function(o){const e=new WeakMap;let t=0;function i(n){let s=e.get(n);return s===void 0&&(s=++t,e.set(n,s)),s}o.of=i})(MC||(MC={}));class $${constructor(e){this._default=e}get(e){return this._default}update(e,t){return this._default}default(){return this._default}}class K${constructor(e,t,i,n,s,r){this._logService=e,this._name=t,this._registry=i,this._default=n,this._min=s,this._max=r,this._cache=new ou(50,.7)}_key(e){return e.id+this._registry.all(e).reduce((t,i)=>N0(MC.of(i),t),0)}get(e){const t=this._key(e),i=this._cache.get(t);return i?bn(i.value,this._min,this._max):this.default()}update(e,t){const i=this._key(e);let n=this._cache.get(i);n||(n=new z$(6),this._cache.set(i,n));const s=bn(n.update(t),this._min,this._max);return GN(e.uri,"output")||this._logService.trace(`[DEBOUNCE: ${this._name}] for ${e.uri.toString()} is ${s}ms`),s}_overall(){const e=new k3;for(const[,t]of this._cache)e.update(t.value);return e.value}default(){const e=this._overall()|0||this._default;return bn(e,this._min,this._max)}}let Ck=class{constructor(e,t){this._logService=e,this._data=new Map,this._isDev=t.isExtensionDevelopment||!t.isBuilt}for(e,t,i){const n=i?.min??50,s=i?.max??n**2,r=i?.key??void 0,a=`${MC.of(e)},${n}${r?","+r:""}`;let l=this._data.get(a);return l||(this._isDev?(this._logService.debug(`[DEBOUNCE: ${t}] is disabled in developed mode`),l=new $$(n*1.5)):l=new K$(this._logService,t,e,this._overallAverage()|0||n*1.5,n,s),this._data.set(a,l)),l}_overallAverage(){const e=new k3;for(const t of this._data.values())e.update(t.default());return e.value}};Ck=U$([fA(0,gs),fA(1,vT)],Ck);Qe(q0,Ck,1);class sr{static getLanguageId(e){return(e&255)>>>0}static getTokenType(e){return(e&768)>>>8}static containsBalancedBrackets(e){return(e&1024)!==0}static getFontStyle(e){return(e&30720)>>>11}static getForeground(e){return(e&16744448)>>>15}static getBackground(e){return(e&4278190080)>>>24}static getClassNameFromMetadata(e){let i="mtk"+this.getForeground(e);const n=this.getFontStyle(e);return n&1&&(i+=" mtki"),n&2&&(i+=" mtkb"),n&4&&(i+=" mtku"),n&8&&(i+=" mtks"),i}static getInlineStyleFromMetadata(e,t){const i=this.getForeground(e),n=this.getFontStyle(e);let s=`color: ${t[i]};`;n&1&&(s+="font-style: italic;"),n&2&&(s+="font-weight: bold;");let r="";return n&4&&(r+=" underline"),n&8&&(r+=" line-through"),r&&(s+=`text-decoration:${r};`),s}static getPresentationFromMetadata(e){const t=this.getForeground(e),i=this.getFontStyle(e);return{foreground:t,italic:!!(i&1),bold:!!(i&2),underline:!!(i&4),strikethrough:!!(i&8)}}}function hg(o){let e=0,t=0,i=0,n=0;for(let s=0,r=o.length;s=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},SS=function(o,e){return function(t,i){e(t,i,o)}};let vk=class{constructor(e,t,i,n){this._legend=e,this._themeService=t,this._languageService=i,this._logService=n,this._hasWarnedOverlappingTokens=!1,this._hasWarnedInvalidLengthTokens=!1,this._hasWarnedInvalidEditStart=!1,this._hashTable=new wk}getMetadata(e,t,i){const n=this._languageService.languageIdCodec.encodeLanguageId(i),s=this._hashTable.get(e,t,n);let r;if(s)r=s.metadata;else{let a=this._legend.tokenTypes[e];const l=[];if(a){let c=t;for(let h=0;c>0&&h>1;const d=this._themeService.getColorTheme().getTokenStyleMetadata(a,l,i);if(typeof d>"u")r=2147483647;else{if(r=0,typeof d.italic<"u"){const h=(d.italic?1:0)<<11;r|=h|1}if(typeof d.bold<"u"){const h=(d.bold?2:0)<<11;r|=h|2}if(typeof d.underline<"u"){const h=(d.underline?4:0)<<11;r|=h|4}if(typeof d.strikethrough<"u"){const h=(d.strikethrough?8:0)<<11;r|=h|8}if(d.foreground){const h=d.foreground<<15;r|=h|16}r===0&&(r=2147483647)}}else r=2147483647,a="not-in-legend";this._hashTable.add(e,t,n,r)}return r}warnOverlappingSemanticTokens(e,t){this._hasWarnedOverlappingTokens||(this._hasWarnedOverlappingTokens=!0,this._logService.warn(`Overlapping semantic tokens detected at lineNumber ${e}, column ${t}`))}warnInvalidLengthSemanticTokens(e,t){this._hasWarnedInvalidLengthTokens||(this._hasWarnedInvalidLengthTokens=!0,this._logService.warn(`Semantic token with invalid length detected at lineNumber ${e}, column ${t}`))}warnInvalidEditStart(e,t,i,n,s){this._hasWarnedInvalidEditStart||(this._hasWarnedInvalidEditStart=!0,this._logService.warn(`Invalid semantic tokens edit detected (previousResultId: ${e}, resultId: ${t}) at edit #${i}: The provided start offset ${n} is outside the previous data (length ${s}).`))}};vk=j$([SS(1,en),SS(2,qt),SS(3,gs)],vk);class q${constructor(e,t,i,n){this.tokenTypeIndex=e,this.tokenModifierSet=t,this.languageId=i,this.metadata=n,this.next=null}}const qa=class qa{constructor(){this._elementsCount=0,this._currentLengthIndex=0,this._currentLength=qa._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1=this._growCount){const s=this._elements;this._currentLengthIndex++,this._currentLength=qa._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},LS=function(o,e){return function(t,i){e(t,i,o)}};let yk=class extends z{constructor(e,t,i){super(),this._themeService=e,this._logService=t,this._languageService=i,this._caches=new WeakMap,this._register(this._themeService.onDidColorThemeChange(()=>{this._caches=new WeakMap}))}getStyling(e){return this._caches.has(e)||this._caches.set(e,new vk(e.getLegend(),this._themeService,this._languageService,this._logService)),this._caches.get(e)}};yk=Z$([LS(0,en),LS(1,gs),LS(2,qt)],yk);Qe(G$,yk,1);function Vl(o){return o===47||o===92}function D3(o){return o.replace(/[\\/]/g,oi.sep)}function Y$(o){return o.indexOf("/")===-1&&(o=D3(o)),/^[a-zA-Z]:(\/|$)/.test(o)&&(o="/"+o),o}function gA(o,e=oi.sep){if(!o)return"";const t=o.length,i=o.charCodeAt(0);if(Vl(i)){if(Vl(o.charCodeAt(1))&&!Vl(o.charCodeAt(2))){let s=3;const r=s;for(;so.length)return!1;if(t){if(!WN(o,e))return!1;if(e.length===o.length)return!0;let s=e.length;return e.charAt(e.length-1)===i&&s--,o.charAt(s)===i}return e.charAt(e.length-1)!==i&&(e+=i),o.indexOf(e)===0}function I3(o){return o>=65&&o<=90||o>=97&&o<=122}function Q$(o,e=kn){return e?I3(o.charCodeAt(0))&&o.charCodeAt(1)===58:!1}const Rb="**",mA="/",E1="[/\\\\]",N1="[^/\\\\]",X$=/\//g;function pA(o,e){switch(o){case 0:return"";case 1:return`${N1}*?`;default:return`(?:${E1}|${N1}+${E1}${e?`|${E1}${N1}+`:""})*?`}}function _A(o,e){if(!o)return[];const t=[];let i=!1,n=!1,s="";for(const r of o){switch(r){case e:if(!i&&!n){t.push(s),s="";continue}break;case"{":i=!0;break;case"}":i=!1;break;case"[":n=!0;break;case"]":n=!1;break}s+=r}return s&&t.push(s),t}function E3(o){if(!o)return"";let e="";const t=_A(o,mA);if(t.every(i=>i===Rb))e=".*";else{let i=!1;t.forEach((n,s)=>{if(n===Rb){if(i)return;e+=pA(2,s===t.length-1)}else{let r=!1,a="",l=!1,c="";for(const d of n){if(d!=="}"&&r){a+=d;continue}if(l&&(d!=="]"||!c)){let h;d==="-"?h=d:(d==="^"||d==="!")&&!c?h="^":d===mA?h="":h=xl(d),c+=h;continue}switch(d){case"{":r=!0;continue;case"[":l=!0;continue;case"}":{const u=`(?:${_A(a,",").map(f=>E3(f)).join("|")})`;e+=u,r=!1,a="";break}case"]":{e+="["+c+"]",l=!1,c="";break}case"?":e+=N1;continue;case"*":e+=pA(1);continue;default:e+=xl(d)}}swT(a,e)).filter(a=>a!==sa),o),i=t.length;if(!i)return sa;if(i===1)return t[0];const n=function(a,l){for(let c=0,d=t.length;c!!a.allBasenames);s&&(n.allBasenames=s.allBasenames);const r=t.reduce((a,l)=>l.allPaths?a.concat(l.allPaths):a,[]);return r.length&&(n.allPaths=r),n}function wA(o,e,t){const i=fc===oi.sep,n=i?o:o.replace(X$,fc),s=fc+n,r=oi.sep+o;let a;return t?a=function(l,c){return typeof l=="string"&&(l===n||l.endsWith(s)||!i&&(l===o||l.endsWith(r)))?e:null}:a=function(l,c){return typeof l=="string"&&(l===n||!i&&l===o)?e:null},a.allPaths=[(t?"*/":"./")+o],a}function lK(o){try{const e=new RegExp(`^${E3(o)}$`);return function(t){return e.lastIndex=0,typeof t=="string"&&e.test(t)?o:null}}catch{return sa}}function cK(o,e,t){return!o||typeof e!="string"?!1:N3(o)(e,void 0,t)}function N3(o,e={}){if(!o)return CA;if(typeof o=="string"||dK(o)){const t=wT(o,e);if(t===sa)return CA;const i=function(n,s){return!!t(n,s)};return t.allBasenames&&(i.allBasenames=t.allBasenames),t.allPaths&&(i.allPaths=t.allPaths),i}return hK(o,e)}function dK(o){const e=o;return e?typeof e.base=="string"&&typeof e.pattern=="string":!1}function hK(o,e){const t=T3(Object.getOwnPropertyNames(o).map(a=>uK(a,o[a],e)).filter(a=>a!==sa)),i=t.length;if(!i)return sa;if(!t.some(a=>!!a.requiresSiblings)){if(i===1)return t[0];const a=function(d,h){let u;for(let f=0,g=t.length;f{for(const f of u){const g=await f;if(typeof g=="string")return g}return null})():null},l=t.find(d=>!!d.allBasenames);l&&(a.allBasenames=l.allBasenames);const c=t.reduce((d,h)=>h.allPaths?d.concat(h.allPaths):d,[]);return c.length&&(a.allPaths=c),a}const n=function(a,l,c){let d,h;for(let u=0,f=t.length;u{for(const u of h){const f=await u;if(typeof f=="string")return f}return null})():null},s=t.find(a=>!!a.allBasenames);s&&(n.allBasenames=s.allBasenames);const r=t.reduce((a,l)=>l.allPaths?a.concat(l.allPaths):a,[]);return r.length&&(n.allPaths=r),n}function uK(o,e,t){if(e===!1)return sa;const i=wT(o,t);if(i===sa)return sa;if(typeof e=="boolean")return i;if(e){const n=e.when;if(typeof n=="string"){const s=(r,a,l,c)=>{if(!c||!i(r,a))return null;const d=n.replace("$(basename)",()=>l),h=c(d);return Bx(h)?h.then(u=>u?o:null):h?o:null};return s.requiresSiblings=!0,s}}return i}function T3(o,e){const t=o.filter(a=>!!a.basenames);if(t.length<2)return o;const i=t.reduce((a,l)=>{const c=l.basenames;return c?a.concat(c):a},[]);let n;if(e){n=[];for(let a=0,l=i.length;a{const c=l.patterns;return c?a.concat(c):a},[]);const s=function(a,l){if(typeof a!="string")return null;if(!l){let d;for(d=a.length;d>0;d--){const h=a.charCodeAt(d-1);if(h===47||h===92)break}l=a.substr(d)}const c=i.indexOf(l);return c!==-1?n[c]:null};s.basenames=i,s.patterns=n,s.allBasenames=i;const r=o.filter(a=>!a.basenames);return r.push(s),r}function M3(o,e,t,i,n,s){if(Array.isArray(o)){let r=0;for(const a of o){const l=M3(a,e,t,i,n,s);if(l===10)return l;l>r&&(r=l)}return r}else{if(typeof o=="string")return i?o==="*"?5:o===t?10:0:0;if(o){const{language:r,pattern:a,scheme:l,hasAccessToAllModels:c,notebookType:d}=o;if(!i&&!c)return 0;d&&n&&(e=n);let h=0;if(l)if(l===e.scheme)h=10;else if(l==="*")h=5;else return 0;if(r)if(r===t)h=10;else if(r==="*")h=Math.max(h,5);else return 0;if(d)if(d===s)h=10;else if(d==="*"&&s!==void 0)h=Math.max(h,5);else return 0;if(a){let u;if(typeof a=="string"?u=a:u={...a,base:tF(a.base)},u===e.fsPath||cK(u,e.fsPath))h=10;else return 0}return h}else return 0}}function R3(o){return typeof o=="string"?!1:Array.isArray(o)?o.every(R3):!!o.exclusive}class yA{constructor(e,t,i,n,s){this.uri=e,this.languageId=t,this.notebookUri=i,this.notebookType=n,this.recursive=s}equals(e){return this.notebookType===e.notebookType&&this.languageId===e.languageId&&this.uri.toString()===e.uri.toString()&&this.notebookUri?.toString()===e.notebookUri?.toString()&&this.recursive===e.recursive}}class Ft{constructor(e){this._notebookInfoResolver=e,this._clock=0,this._entries=[],this._onDidChange=new A,this.onDidChange=this._onDidChange.event}register(e,t){let i={selector:e,provider:t,_score:-1,_time:this._clock++};return this._entries.push(i),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),_e(()=>{if(i){const n=this._entries.indexOf(i);n>=0&&(this._entries.splice(n,1),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),i=void 0)}})}has(e){return this.all(e).length>0}all(e){if(!e)return[];this._updateScores(e,!1);const t=[];for(const i of this._entries)i._score>0&&t.push(i.provider);return t}ordered(e,t=!1){const i=[];return this._orderedForEach(e,t,n=>i.push(n.provider)),i}orderedGroups(e){const t=[];let i,n;return this._orderedForEach(e,!1,s=>{i&&n===s._score?i.push(s.provider):(n=s._score,i=[s.provider],t.push(i))}),t}_orderedForEach(e,t,i){this._updateScores(e,t);for(const n of this._entries)n._score>0&&i(n)}_updateScores(e,t){const i=this._notebookInfoResolver?.(e.uri),n=i?new yA(e.uri,e.getLanguageId(),i.uri,i.type,t):new yA(e.uri,e.getLanguageId(),void 0,void 0,t);if(!this._lastCandidate?.equals(n)){this._lastCandidate=n;for(const s of this._entries)if(s._score=M3(s.selector,n.uri,n.languageId,RU(e),n.notebookUri,n.notebookType),R3(s.selector)&&s._score>0)if(t)s._score=0;else{for(const r of this._entries)r._score=0;s._score=1e3;break}this._entries.sort(Ft._compareByScoreAndTime)}}static _compareByScoreAndTime(e,t){return e._scoret._score?-1:Dm(e.selector)&&!Dm(t.selector)?1:!Dm(e.selector)&&Dm(t.selector)?-1:e._timet._time?-1:0}}function Dm(o){return typeof o=="string"?!1:Array.isArray(o)?o.some(Dm):!!o.isBuiltin}class fK{constructor(){this.referenceProvider=new Ft(this._score.bind(this)),this.renameProvider=new Ft(this._score.bind(this)),this.newSymbolNamesProvider=new Ft(this._score.bind(this)),this.codeActionProvider=new Ft(this._score.bind(this)),this.definitionProvider=new Ft(this._score.bind(this)),this.typeDefinitionProvider=new Ft(this._score.bind(this)),this.declarationProvider=new Ft(this._score.bind(this)),this.implementationProvider=new Ft(this._score.bind(this)),this.documentSymbolProvider=new Ft(this._score.bind(this)),this.inlayHintsProvider=new Ft(this._score.bind(this)),this.colorProvider=new Ft(this._score.bind(this)),this.codeLensProvider=new Ft(this._score.bind(this)),this.documentFormattingEditProvider=new Ft(this._score.bind(this)),this.documentRangeFormattingEditProvider=new Ft(this._score.bind(this)),this.onTypeFormattingEditProvider=new Ft(this._score.bind(this)),this.signatureHelpProvider=new Ft(this._score.bind(this)),this.hoverProvider=new Ft(this._score.bind(this)),this.documentHighlightProvider=new Ft(this._score.bind(this)),this.multiDocumentHighlightProvider=new Ft(this._score.bind(this)),this.selectionRangeProvider=new Ft(this._score.bind(this)),this.foldingRangeProvider=new Ft(this._score.bind(this)),this.linkProvider=new Ft(this._score.bind(this)),this.inlineCompletionsProvider=new Ft(this._score.bind(this)),this.inlineEditProvider=new Ft(this._score.bind(this)),this.completionProvider=new Ft(this._score.bind(this)),this.linkedEditingRangeProvider=new Ft(this._score.bind(this)),this.documentRangeSemanticTokensProvider=new Ft(this._score.bind(this)),this.documentSemanticTokensProvider=new Ft(this._score.bind(this)),this.documentDropEditProvider=new Ft(this._score.bind(this)),this.documentPasteEditProvider=new Ft(this._score.bind(this))}_score(e){return this._notebookTypeResolver?.(e)}}Qe(Se,fK,1);function yT(o){return`--vscode-${o.replace(/\./g,"-")}`}function oe(o){return`var(${yT(o)})`}function gK(o,e){return`var(${yT(o)}, ${e})`}function mK(o){return o!==null&&typeof o=="object"&&"light"in o&&"dark"in o}const A3={ColorContribution:"base.contributions.colors"},pK="default";class _K{constructor(){this._onDidChangeSchema=new A,this.onDidChangeSchema=this._onDidChangeSchema.event,this.colorSchema={type:"object",properties:{}},this.colorReferenceSchema={type:"string",enum:[],enumDescriptions:[]},this.colorsById={}}registerColor(e,t,i,n=!1,s){const r={id:e,description:i,defaults:t,needsTransparency:n,deprecationMessage:s};this.colorsById[e]=r;const a={type:"string",format:"color-hex",defaultSnippets:[{body:"${1:#ff0000}"}]};return s&&(a.deprecationMessage=s),n&&(a.pattern="^#(?:(?[0-9a-fA-f]{3}[0-9a-eA-E])|(?:[0-9a-fA-F]{6}(?:(?![fF]{2})(?:[0-9a-fA-F]{2}))))?$",a.patternErrorMessage=m("transparecyRequired","This color must be transparent or it will obscure content")),this.colorSchema.properties[e]={description:i,oneOf:[a,{type:"string",const:pK,description:m("useDefault","Use the default color.")}]},this.colorReferenceSchema.enum.push(e),this.colorReferenceSchema.enumDescriptions.push(i),this._onDidChangeSchema.fire(),e}getColors(){return Object.keys(this.colorsById).map(e=>this.colorsById[e])}resolveDefaultColor(e,t){const i=this.colorsById[e];if(i?.defaults){const n=mK(i.defaults)?i.defaults[t.type]:i.defaults;return jo(n,t)}}getColorSchema(){return this.colorSchema}toString(){const e=(t,i)=>{const n=t.indexOf(".")===-1?0:1,s=i.indexOf(".")===-1?0:1;return n!==s?n-s:t.localeCompare(i)};return Object.keys(this.colorsById).sort(e).map(t=>`- \`${t}\`: ${this.colorsById[t].description}`).join(` -`)}}const G0=new _K;Bi.add(A3.ColorContribution,G0);function D(o,e,t,i,n){return G0.registerColor(o,e,t,i,n)}function bK(o,e){switch(o.op){case 0:return jo(o.value,e)?.darken(o.factor);case 1:return jo(o.value,e)?.lighten(o.factor);case 2:return jo(o.value,e)?.transparent(o.factor);case 3:{const t=jo(o.background,e);return t?jo(o.value,e)?.makeOpaque(t):jo(o.value,e)}case 4:for(const t of o.values){const i=jo(t,e);if(i)return i}return;case 6:return jo(e.defines(o.if)?o.then:o.else,e);case 5:{const t=jo(o.value,e);if(!t)return;const i=jo(o.background,e);return i?t.isDarkerThan(i)?q.getLighterColor(t,i,o.factor).transparent(o.transparency):q.getDarkerColor(t,i,o.factor).transparent(o.transparency):t.transparent(o.factor*o.transparency)}default:throw z0()}}function ru(o,e){return{op:0,value:o,factor:e}}function pr(o,e){return{op:1,value:o,factor:e}}function Ae(o,e){return{op:2,value:o,factor:e}}function t_(...o){return{op:4,values:o}}function CK(o,e,t){return{op:6,if:o,then:e,else:t}}function SA(o,e,t,i){return{op:5,value:o,background:e,factor:t,transparency:i}}function jo(o,e){if(o!==null){if(typeof o=="string")return o[0]==="#"?q.fromHex(o):e.getColor(o);if(o instanceof q)return o;if(typeof o=="object")return bK(o,e)}}const P3="vscode://schemas/workbench-colors",O3=Bi.as(K0.JSONContribution);O3.registerSchema(P3,G0.getColorSchema());const LA=new ci(()=>O3.notifySchemaChanged(P3),200);G0.onDidChangeSchema(()=>{LA.isScheduled()||LA.schedule()});const Pe=D("foreground",{dark:"#CCCCCC",light:"#616161",hcDark:"#FFFFFF",hcLight:"#292929"},m("foreground","Overall foreground color. This color is only used if not overridden by a component."));D("disabledForeground",{dark:"#CCCCCC80",light:"#61616180",hcDark:"#A5A5A5",hcLight:"#7F7F7F"},m("disabledForeground","Overall foreground for disabled elements. This color is only used if not overridden by a component."));D("errorForeground",{dark:"#F48771",light:"#A1260D",hcDark:"#F48771",hcLight:"#B5200D"},m("errorForeground","Overall foreground color for error messages. This color is only used if not overridden by a component."));D("descriptionForeground",{light:"#717171",dark:Ae(Pe,.7),hcDark:Ae(Pe,.7),hcLight:Ae(Pe,.7)},m("descriptionForeground","Foreground color for description text providing additional information, for example for a label."));const Lk=D("icon.foreground",{dark:"#C5C5C5",light:"#424242",hcDark:"#FFFFFF",hcLight:"#292929"},m("iconForeground","The default color for icons in the workbench.")),ga=D("focusBorder",{dark:"#007FD4",light:"#0090F1",hcDark:"#F38518",hcLight:"#006BBD"},m("focusBorder","Overall border color for focused elements. This color is only used if not overridden by a component.")),Ye=D("contrastBorder",{light:null,dark:null,hcDark:"#6FC3DF",hcLight:"#0F4A85"},m("contrastBorder","An extra border around elements to separate them from others for greater contrast.")),Ut=D("contrastActiveBorder",{light:null,dark:null,hcDark:ga,hcLight:ga},m("activeContrastBorder","An extra border around active elements to separate them from others for greater contrast."));D("selection.background",null,m("selectionBackground","The background color of text selections in the workbench (e.g. for input fields or text areas). Note that this does not apply to selections within the editor."));const vK=D("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},m("textLinkForeground","Foreground color for links in text."));D("textLink.activeForeground",{light:"#006AB1",dark:"#3794FF",hcDark:"#21A6FF",hcLight:"#0F4A85"},m("textLinkActiveForeground","Foreground color for links in text when clicked on and on mouse hover."));D("textSeparator.foreground",{light:"#0000002e",dark:"#ffffff2e",hcDark:q.black,hcLight:"#292929"},m("textSeparatorForeground","Color for text separators."));D("textPreformat.foreground",{light:"#A31515",dark:"#D7BA7D",hcDark:"#000000",hcLight:"#FFFFFF"},m("textPreformatForeground","Foreground color for preformatted text segments."));D("textPreformat.background",{light:"#0000001A",dark:"#FFFFFF1A",hcDark:"#FFFFFF",hcLight:"#09345f"},m("textPreformatBackground","Background color for preformatted text segments."));D("textBlockQuote.background",{light:"#f2f2f2",dark:"#222222",hcDark:null,hcLight:"#F2F2F2"},m("textBlockQuoteBackground","Background color for block quotes in text."));D("textBlockQuote.border",{light:"#007acc80",dark:"#007acc80",hcDark:q.white,hcLight:"#292929"},m("textBlockQuoteBorder","Border color for block quotes in text."));D("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hcDark:q.black,hcLight:"#F2F2F2"},m("textCodeBlockBackground","Background color for code blocks in text."));D("sash.hoverBorder",ga,m("sashActiveBorder","Border color of active sashes."));const T1=D("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hcDark:q.black,hcLight:"#0F4A85"},m("badgeBackground","Badge background color. Badges are small information labels, e.g. for search results count.")),wK=D("badge.foreground",{dark:q.white,light:"#333",hcDark:q.white,hcLight:q.white},m("badgeForeground","Badge foreground color. Badges are small information labels, e.g. for search results count.")),ST=D("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hcDark:null,hcLight:null},m("scrollbarShadow","Scrollbar shadow to indicate that the view is scrolled.")),F3=D("scrollbarSlider.background",{dark:q.fromHex("#797979").transparent(.4),light:q.fromHex("#646464").transparent(.4),hcDark:Ae(Ye,.6),hcLight:Ae(Ye,.4)},m("scrollbarSliderBackground","Scrollbar slider background color.")),B3=D("scrollbarSlider.hoverBackground",{dark:q.fromHex("#646464").transparent(.7),light:q.fromHex("#646464").transparent(.7),hcDark:Ae(Ye,.8),hcLight:Ae(Ye,.8)},m("scrollbarSliderHoverBackground","Scrollbar slider background color when hovering.")),W3=D("scrollbarSlider.activeBackground",{dark:q.fromHex("#BFBFBF").transparent(.4),light:q.fromHex("#000000").transparent(.6),hcDark:Ye,hcLight:Ye},m("scrollbarSliderActiveBackground","Scrollbar slider background color when clicked on.")),yK=D("progressBar.background",{dark:q.fromHex("#0E70C0"),light:q.fromHex("#0E70C0"),hcDark:Ye,hcLight:Ye},m("progressBarBackground","Background color of the progress bar that can show for long running operations.")),Oo=D("editor.background",{light:"#ffffff",dark:"#1E1E1E",hcDark:q.black,hcLight:q.white},m("editorBackground","Editor background color.")),Sa=D("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:q.white,hcLight:Pe},m("editorForeground","Editor default foreground color."));D("editorStickyScroll.background",Oo,m("editorStickyScrollBackground","Background color of sticky scroll in the editor"));D("editorStickyScrollHover.background",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:q.fromHex("#0F4A85").transparent(.1)},m("editorStickyScrollHoverBackground","Background color of sticky scroll on hover in the editor"));D("editorStickyScroll.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("editorStickyScrollBorder","Border color of sticky scroll in the editor"));D("editorStickyScroll.shadow",ST,m("editorStickyScrollShadow"," Shadow color of sticky scroll in the editor"));const no=D("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:q.white},m("editorWidgetBackground","Background color of editor widgets, such as find/replace.")),Z0=D("editorWidget.foreground",Pe,m("editorWidgetForeground","Foreground color of editor widgets, such as find/replace.")),LT=D("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hcDark:Ye,hcLight:Ye},m("editorWidgetBorder","Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget."));D("editorWidget.resizeBorder",null,m("editorWidgetResizeBorder","Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget."));D("editorError.background",null,m("editorError.background","Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);const Y0=D("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},m("editorError.foreground","Foreground color of error squigglies in the editor.")),SK=D("editorError.border",{dark:null,light:null,hcDark:q.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},m("errorBorder","If set, color of double underlines for errors in the editor.")),LK=D("editorWarning.background",null,m("editorWarning.background","Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),Il=D("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD370",hcLight:"#895503"},m("editorWarning.foreground","Foreground color of warning squigglies in the editor.")),i_=D("editorWarning.border",{dark:null,light:null,hcDark:q.fromHex("#FFCC00").transparent(.8),hcLight:q.fromHex("#FFCC00").transparent(.8)},m("warningBorder","If set, color of double underlines for warnings in the editor."));D("editorInfo.background",null,m("editorInfo.background","Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);const ma=D("editorInfo.foreground",{dark:"#3794FF",light:"#1a85ff",hcDark:"#3794FF",hcLight:"#1a85ff"},m("editorInfo.foreground","Foreground color of info squigglies in the editor.")),n_=D("editorInfo.border",{dark:null,light:null,hcDark:q.fromHex("#3794FF").transparent(.8),hcLight:"#292929"},m("infoBorder","If set, color of double underlines for infos in the editor.")),xK=D("editorHint.foreground",{dark:q.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},m("editorHint.foreground","Foreground color of hint squigglies in the editor."));D("editorHint.border",{dark:null,light:null,hcDark:q.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},m("hintBorder","If set, color of double underlines for hints in the editor."));const kK=D("editorLink.activeForeground",{dark:"#4E94CE",light:q.blue,hcDark:q.cyan,hcLight:"#292929"},m("activeLinkForeground","Color of active links.")),tf=D("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},m("editorSelectionBackground","Color of the editor selection.")),DK=D("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:q.white},m("editorSelectionForeground","Color of the selected text for high contrast.")),H3=D("editor.inactiveSelectionBackground",{light:Ae(tf,.5),dark:Ae(tf,.5),hcDark:Ae(tf,.7),hcLight:Ae(tf,.5)},m("editorInactiveSelection","Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),V3=D("editor.selectionHighlightBackground",{light:SA(tf,Oo,.3,.6),dark:SA(tf,Oo,.3,.6),hcDark:null,hcLight:null},m("editorSelectionHighlight","Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:Ut,hcLight:Ut},m("editorSelectionHighlightBorder","Border color for regions with the same content as the selection."));D("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},m("editorFindMatch","Color of the current search match."));D("editor.findMatchForeground",null,m("editorFindMatchForeground","Text color of the current search match."));const ll=D("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},m("findMatchHighlight","Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.findMatchHighlightForeground",null,m("findMatchHighlightForeground","Foreground color of the other search matches."),!0);D("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},m("findRangeHighlight","Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.findMatchBorder",{light:null,dark:null,hcDark:Ut,hcLight:Ut},m("editorFindMatchBorder","Border color of the current search match."));const Ud=D("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:Ut,hcLight:Ut},m("findMatchHighlightBorder","Border color of the other search matches."));D("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:Ae(Ut,.4),hcLight:Ae(Ut,.4)},m("findRangeHighlightBorder","Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},m("hoverHighlight","Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0);const RC=D("editorHoverWidget.background",no,m("hoverBackground","Background color of the editor hover."));D("editorHoverWidget.foreground",Z0,m("hoverForeground","Foreground color of the editor hover."));const z3=D("editorHoverWidget.border",LT,m("hoverBorder","Border color of the editor hover."));D("editorHoverWidget.statusBarBackground",{dark:pr(RC,.2),light:ru(RC,.05),hcDark:no,hcLight:no},m("statusBarBackground","Background color of the editor hover status bar."));const xT=D("editorInlayHint.foreground",{dark:"#969696",light:"#969696",hcDark:q.white,hcLight:q.black},m("editorInlayHintForeground","Foreground color of inline hints")),kT=D("editorInlayHint.background",{dark:Ae(T1,.1),light:Ae(T1,.1),hcDark:Ae(q.white,.1),hcLight:Ae(T1,.1)},m("editorInlayHintBackground","Background color of inline hints")),IK=D("editorInlayHint.typeForeground",xT,m("editorInlayHintForegroundTypes","Foreground color of inline hints for types")),EK=D("editorInlayHint.typeBackground",kT,m("editorInlayHintBackgroundTypes","Background color of inline hints for types")),NK=D("editorInlayHint.parameterForeground",xT,m("editorInlayHintForegroundParameter","Foreground color of inline hints for parameters")),TK=D("editorInlayHint.parameterBackground",kT,m("editorInlayHintBackgroundParameter","Background color of inline hints for parameters")),MK=D("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},m("editorLightBulbForeground","The color used for the lightbulb actions icon."));D("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("editorLightBulbAutoFixForeground","The color used for the lightbulb auto fix actions icon."));D("editorLightBulbAi.foreground",MK,m("editorLightBulbAiForeground","The color used for the lightbulb AI icon."));D("editor.snippetTabstopHighlightBackground",{dark:new q(new qe(124,124,124,.3)),light:new q(new qe(10,50,100,.2)),hcDark:new q(new qe(124,124,124,.3)),hcLight:new q(new qe(10,50,100,.2))},m("snippetTabstopHighlightBackground","Highlight background color of a snippet tabstop."));D("editor.snippetTabstopHighlightBorder",null,m("snippetTabstopHighlightBorder","Highlight border color of a snippet tabstop."));D("editor.snippetFinalTabstopHighlightBackground",null,m("snippetFinalTabstopHighlightBackground","Highlight background color of the final tabstop of a snippet."));D("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new q(new qe(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},m("snippetFinalTabstopHighlightBorder","Highlight border color of the final tabstop of a snippet."));const xk=new q(new qe(155,185,85,.2)),kk=new q(new qe(255,0,0,.2)),RK=D("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c40",hcDark:null,hcLight:null},m("diffEditorInserted","Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),AK=D("diffEditor.removedTextBackground",{dark:"#ff000033",light:"#ff000033",hcDark:null,hcLight:null},m("diffEditorRemoved","Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0);D("diffEditor.insertedLineBackground",{dark:xk,light:xk,hcDark:null,hcLight:null},m("diffEditorInsertedLines","Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0);D("diffEditor.removedLineBackground",{dark:kk,light:kk,hcDark:null,hcLight:null},m("diffEditorRemovedLines","Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0);D("diffEditorGutter.insertedLineBackground",null,m("diffEditorInsertedLineGutter","Background color for the margin where lines got inserted."));D("diffEditorGutter.removedLineBackground",null,m("diffEditorRemovedLineGutter","Background color for the margin where lines got removed."));const PK=D("diffEditorOverview.insertedForeground",null,m("diffEditorOverviewInserted","Diff overview ruler foreground for inserted content.")),OK=D("diffEditorOverview.removedForeground",null,m("diffEditorOverviewRemoved","Diff overview ruler foreground for removed content."));D("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},m("diffEditorInsertedOutline","Outline color for the text that got inserted."));D("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},m("diffEditorRemovedOutline","Outline color for text that got removed."));D("diffEditor.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("diffEditorBorder","Border color between the two text editors."));D("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},m("diffDiagonalFill","Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views."));D("diffEditor.unchangedRegionBackground","sideBar.background",m("diffEditor.unchangedRegionBackground","The background color of unchanged blocks in the diff editor."));D("diffEditor.unchangedRegionForeground","foreground",m("diffEditor.unchangedRegionForeground","The foreground color of unchanged blocks in the diff editor."));D("diffEditor.unchangedCodeBackground",{dark:"#74747429",light:"#b8b8b829",hcDark:null,hcLight:null},m("diffEditor.unchangedCodeBackground","The background color of unchanged code in the diff editor."));const q_=D("widget.shadow",{dark:Ae(q.black,.36),light:Ae(q.black,.16),hcDark:null,hcLight:null},m("widgetShadow","Shadow color of widgets such as find/replace inside the editor.")),FK=D("widget.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("widgetBorder","Border color of widgets such as find/replace inside the editor.")),xA=D("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},m("toolbarHoverBackground","Toolbar background when hovering over actions using the mouse"));D("toolbar.hoverOutline",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("toolbarHoverOutline","Toolbar outline when hovering over actions using the mouse"));D("toolbar.activeBackground",{dark:pr(xA,.1),light:ru(xA,.1),hcDark:null,hcLight:null},m("toolbarActiveBackground","Toolbar background when holding the mouse over actions"));const BK=D("breadcrumb.foreground",Ae(Pe,.8),m("breadcrumbsFocusForeground","Color of focused breadcrumb items.")),WK=D("breadcrumb.background",Oo,m("breadcrumbsBackground","Background color of breadcrumb items.")),kA=D("breadcrumb.focusForeground",{light:ru(Pe,.2),dark:pr(Pe,.1),hcDark:pr(Pe,.1),hcLight:pr(Pe,.1)},m("breadcrumbsFocusForeground","Color of focused breadcrumb items.")),HK=D("breadcrumb.activeSelectionForeground",{light:ru(Pe,.2),dark:pr(Pe,.1),hcDark:pr(Pe,.1),hcLight:pr(Pe,.1)},m("breadcrumbsSelectedForeground","Color of selected breadcrumb items."));D("breadcrumbPicker.background",no,m("breadcrumbsSelectedBackground","Background color of breadcrumb item picker."));const U3=.5,DA=q.fromHex("#40C8AE").transparent(U3),IA=q.fromHex("#40A6FF").transparent(U3),EA=q.fromHex("#606060").transparent(.4),DT=.4,ug=1,Dk=D("merge.currentHeaderBackground",{dark:DA,light:DA,hcDark:null,hcLight:null},m("mergeCurrentHeaderBackground","Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);D("merge.currentContentBackground",Ae(Dk,DT),m("mergeCurrentContentBackground","Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const Ik=D("merge.incomingHeaderBackground",{dark:IA,light:IA,hcDark:null,hcLight:null},m("mergeIncomingHeaderBackground","Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);D("merge.incomingContentBackground",Ae(Ik,DT),m("mergeIncomingContentBackground","Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const Ek=D("merge.commonHeaderBackground",{dark:EA,light:EA,hcDark:null,hcLight:null},m("mergeCommonHeaderBackground","Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);D("merge.commonContentBackground",Ae(Ek,DT),m("mergeCommonContentBackground","Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const fg=D("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},m("mergeBorder","Border color on headers and the splitter in inline merge-conflicts."));D("editorOverviewRuler.currentContentForeground",{dark:Ae(Dk,ug),light:Ae(Dk,ug),hcDark:fg,hcLight:fg},m("overviewRulerCurrentContentForeground","Current overview ruler foreground for inline merge-conflicts."));D("editorOverviewRuler.incomingContentForeground",{dark:Ae(Ik,ug),light:Ae(Ik,ug),hcDark:fg,hcLight:fg},m("overviewRulerIncomingContentForeground","Incoming overview ruler foreground for inline merge-conflicts."));D("editorOverviewRuler.commonContentForeground",{dark:Ae(Ek,ug),light:Ae(Ek,ug),hcDark:fg,hcLight:fg},m("overviewRulerCommonContentForeground","Common ancestor overview ruler foreground for inline merge-conflicts."));D("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:"#AB5A00"},m("overviewRulerFindMatchForeground","Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0);D("editorOverviewRuler.selectionHighlightForeground","#A0A0A0CC",m("overviewRulerSelectionHighlightForeground","Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0);const VK=D("problemsErrorIcon.foreground",Y0,m("problemsErrorIconForeground","The color used for the problems error icon.")),zK=D("problemsWarningIcon.foreground",Il,m("problemsWarningIconForeground","The color used for the problems warning icon.")),UK=D("problemsInfoIcon.foreground",ma,m("problemsInfoIconForeground","The color used for the problems info icon.")),$K=D("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hcDark:"#AB5A00",hcLight:"#0F4A85"},m("minimapFindMatchHighlight","Minimap marker color for find matches."),!0);D("minimap.selectionOccurrenceHighlight",{light:"#c9c9c9",dark:"#676767",hcDark:"#ffffff",hcLight:"#0F4A85"},m("minimapSelectionOccurrenceHighlight","Minimap marker color for repeating editor selections."),!0);const NA=D("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hcDark:"#ffffff",hcLight:"#0F4A85"},m("minimapSelectionHighlight","Minimap marker color for the editor selection."),!0),KK=D("minimap.infoHighlight",{dark:ma,light:ma,hcDark:n_,hcLight:n_},m("minimapInfo","Minimap marker color for infos.")),jK=D("minimap.warningHighlight",{dark:Il,light:Il,hcDark:i_,hcLight:i_},m("overviewRuleWarning","Minimap marker color for warnings.")),qK=D("minimap.errorHighlight",{dark:new q(new qe(255,18,18,.7)),light:new q(new qe(255,18,18,.7)),hcDark:new q(new qe(255,50,50,1)),hcLight:"#B5200D"},m("minimapError","Minimap marker color for errors.")),GK=D("minimap.background",null,m("minimapBackground","Minimap background color.")),ZK=D("minimap.foregroundOpacity",q.fromHex("#000f"),m("minimapForegroundOpacity",'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.'));D("minimapSlider.background",Ae(F3,.5),m("minimapSliderBackground","Minimap slider background color."));D("minimapSlider.hoverBackground",Ae(B3,.5),m("minimapSliderHoverBackground","Minimap slider background color when hovering."));D("minimapSlider.activeBackground",Ae(W3,.5),m("minimapSliderActiveBackground","Minimap slider background color when clicked on."));D("charts.foreground",Pe,m("chartsForeground","The foreground color used in charts."));D("charts.lines",Ae(Pe,.5),m("chartsLines","The color used for horizontal lines in charts."));D("charts.red",Y0,m("chartsRed","The red color used in chart visualizations."));D("charts.blue",ma,m("chartsBlue","The blue color used in chart visualizations."));D("charts.yellow",Il,m("chartsYellow","The yellow color used in chart visualizations."));D("charts.orange",$K,m("chartsOrange","The orange color used in chart visualizations."));D("charts.green",{dark:"#89D185",light:"#388A34",hcDark:"#89D185",hcLight:"#374e06"},m("chartsGreen","The green color used in chart visualizations."));D("charts.purple",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("chartsPurple","The purple color used in chart visualizations."));const YK=D("input.background",{dark:"#3C3C3C",light:q.white,hcDark:q.black,hcLight:q.white},m("inputBoxBackground","Input box background.")),QK=D("input.foreground",Pe,m("inputBoxForeground","Input box foreground.")),XK=D("input.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("inputBoxBorder","Input box border.")),$3=D("inputOption.activeBorder",{dark:"#007ACC",light:"#007ACC",hcDark:Ye,hcLight:Ye},m("inputBoxActiveOptionBorder","Border color of activated options in input fields.")),JK=D("inputOption.hoverBackground",{dark:"#5a5d5e80",light:"#b8b8b850",hcDark:null,hcLight:null},m("inputOption.hoverBackground","Background color of activated options in input fields.")),IT=D("inputOption.activeBackground",{dark:Ae(ga,.4),light:Ae(ga,.2),hcDark:q.transparent,hcLight:q.transparent},m("inputOption.activeBackground","Background hover color of options in input fields.")),K3=D("inputOption.activeForeground",{dark:q.white,light:q.black,hcDark:Pe,hcLight:Pe},m("inputOption.activeForeground","Foreground color of activated options in input fields."));D("input.placeholderForeground",{light:Ae(Pe,.5),dark:Ae(Pe,.5),hcDark:Ae(Pe,.7),hcLight:Ae(Pe,.7)},m("inputPlaceholderForeground","Input box foreground color for placeholder text."));const ej=D("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hcDark:q.black,hcLight:q.white},m("inputValidationInfoBackground","Input validation background color for information severity.")),tj=D("inputValidation.infoForeground",{dark:null,light:null,hcDark:null,hcLight:Pe},m("inputValidationInfoForeground","Input validation foreground color for information severity.")),ij=D("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hcDark:Ye,hcLight:Ye},m("inputValidationInfoBorder","Input validation border color for information severity.")),nj=D("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hcDark:q.black,hcLight:q.white},m("inputValidationWarningBackground","Input validation background color for warning severity.")),sj=D("inputValidation.warningForeground",{dark:null,light:null,hcDark:null,hcLight:Pe},m("inputValidationWarningForeground","Input validation foreground color for warning severity.")),oj=D("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hcDark:Ye,hcLight:Ye},m("inputValidationWarningBorder","Input validation border color for warning severity.")),rj=D("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hcDark:q.black,hcLight:q.white},m("inputValidationErrorBackground","Input validation background color for error severity.")),aj=D("inputValidation.errorForeground",{dark:null,light:null,hcDark:null,hcLight:Pe},m("inputValidationErrorForeground","Input validation foreground color for error severity.")),lj=D("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hcDark:Ye,hcLight:Ye},m("inputValidationErrorBorder","Input validation border color for error severity.")),Q0=D("dropdown.background",{dark:"#3C3C3C",light:q.white,hcDark:q.black,hcLight:q.white},m("dropdownBackground","Dropdown background.")),cj=D("dropdown.listBackground",{dark:null,light:null,hcDark:q.black,hcLight:q.white},m("dropdownListBackground","Dropdown list background.")),ET=D("dropdown.foreground",{dark:"#F0F0F0",light:Pe,hcDark:q.white,hcLight:Pe},m("dropdownForeground","Dropdown foreground.")),NT=D("dropdown.border",{dark:Q0,light:"#CECECE",hcDark:Ye,hcLight:Ye},m("dropdownBorder","Dropdown border.")),j3=D("button.foreground",q.white,m("buttonForeground","Button foreground color.")),dj=D("button.separator",Ae(j3,.4),m("buttonSeparator","Button separator color.")),Im=D("button.background",{dark:"#0E639C",light:"#007ACC",hcDark:null,hcLight:"#0F4A85"},m("buttonBackground","Button background color.")),hj=D("button.hoverBackground",{dark:pr(Im,.2),light:ru(Im,.2),hcDark:Im,hcLight:Im},m("buttonHoverBackground","Button background color when hovering.")),uj=D("button.border",Ye,m("buttonBorder","Button border color.")),fj=D("button.secondaryForeground",{dark:q.white,light:q.white,hcDark:q.white,hcLight:Pe},m("buttonSecondaryForeground","Secondary button foreground color.")),Nk=D("button.secondaryBackground",{dark:"#3A3D41",light:"#5F6A79",hcDark:null,hcLight:q.white},m("buttonSecondaryBackground","Secondary button background color.")),gj=D("button.secondaryHoverBackground",{dark:pr(Nk,.2),light:ru(Nk,.2),hcDark:null,hcLight:null},m("buttonSecondaryHoverBackground","Secondary button background color when hovering.")),Em=D("radio.activeForeground",K3,m("radioActiveForeground","Foreground color of active radio option.")),mj=D("radio.activeBackground",IT,m("radioBackground","Background color of active radio option.")),pj=D("radio.activeBorder",$3,m("radioActiveBorder","Border color of the active radio option.")),_j=D("radio.inactiveForeground",null,m("radioInactiveForeground","Foreground color of inactive radio option.")),bj=D("radio.inactiveBackground",null,m("radioInactiveBackground","Background color of inactive radio option.")),Cj=D("radio.inactiveBorder",{light:Ae(Em,.2),dark:Ae(Em,.2),hcDark:Ae(Em,.4),hcLight:Ae(Em,.2)},m("radioInactiveBorder","Border color of the inactive radio option.")),vj=D("radio.inactiveHoverBackground",JK,m("radioHoverBackground","Background color of inactive active radio option when hovering.")),wj=D("checkbox.background",Q0,m("checkbox.background","Background color of checkbox widget."));D("checkbox.selectBackground",no,m("checkbox.select.background","Background color of checkbox widget when the element it's in is selected."));const yj=D("checkbox.foreground",ET,m("checkbox.foreground","Foreground color of checkbox widget.")),Sj=D("checkbox.border",NT,m("checkbox.border","Border color of checkbox widget."));D("checkbox.selectBorder",Lk,m("checkbox.select.border","Border color of checkbox widget when the element it's in is selected."));const Lj=D("keybindingLabel.background",{dark:new q(new qe(128,128,128,.17)),light:new q(new qe(221,221,221,.4)),hcDark:q.transparent,hcLight:q.transparent},m("keybindingLabelBackground","Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),xj=D("keybindingLabel.foreground",{dark:q.fromHex("#CCCCCC"),light:q.fromHex("#555555"),hcDark:q.white,hcLight:Pe},m("keybindingLabelForeground","Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),kj=D("keybindingLabel.border",{dark:new q(new qe(51,51,51,.6)),light:new q(new qe(204,204,204,.4)),hcDark:new q(new qe(111,195,223)),hcLight:Ye},m("keybindingLabelBorder","Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),Dj=D("keybindingLabel.bottomBorder",{dark:new q(new qe(68,68,68,.6)),light:new q(new qe(187,187,187,.4)),hcDark:new q(new qe(111,195,223)),hcLight:Pe},m("keybindingLabelBottomBorder","Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.")),Ij=D("list.focusBackground",null,m("listFocusBackground","List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Ej=D("list.focusForeground",null,m("listFocusForeground","List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Nj=D("list.focusOutline",{dark:ga,light:ga,hcDark:Ut,hcLight:Ut},m("listFocusOutline","List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Tj=D("list.focusAndSelectionOutline",null,m("listFocusAndSelectionOutline","List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not.")),Bh=D("list.activeSelectionBackground",{dark:"#04395E",light:"#0060C0",hcDark:null,hcLight:q.fromHex("#0F4A85").transparent(.1)},m("listActiveSelectionBackground","List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),s_=D("list.activeSelectionForeground",{dark:q.white,light:q.white,hcDark:null,hcLight:null},m("listActiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),q3=D("list.activeSelectionIconForeground",null,m("listActiveSelectionIconForeground","List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Mj=D("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hcDark:null,hcLight:q.fromHex("#0F4A85").transparent(.1)},m("listInactiveSelectionBackground","List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Rj=D("list.inactiveSelectionForeground",null,m("listInactiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Aj=D("list.inactiveSelectionIconForeground",null,m("listInactiveSelectionIconForeground","List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Pj=D("list.inactiveFocusBackground",null,m("listInactiveFocusBackground","List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Oj=D("list.inactiveFocusOutline",null,m("listInactiveFocusOutline","List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),G3=D("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:q.white.transparent(.1),hcLight:q.fromHex("#0F4A85").transparent(.1)},m("listHoverBackground","List/Tree background when hovering over items using the mouse.")),Z3=D("list.hoverForeground",null,m("listHoverForeground","List/Tree foreground when hovering over items using the mouse.")),Fj=D("list.dropBackground",{dark:"#062F4A",light:"#D6EBFF",hcDark:null,hcLight:null},m("listDropBackground","List/Tree drag and drop background when moving items over other items when using the mouse.")),Bj=D("list.dropBetweenBackground",{dark:Lk,light:Lk,hcDark:null,hcLight:null},m("listDropBetweenBackground","List/Tree drag and drop border color when moving items between items when using the mouse.")),Nm=D("list.highlightForeground",{dark:"#2AAAFF",light:"#0066BF",hcDark:ga,hcLight:ga},m("highlight","List/Tree foreground color of the match highlights when searching inside the list/tree.")),Wj=D("list.focusHighlightForeground",{dark:Nm,light:CK(Bh,Nm,"#BBE7FF"),hcDark:Nm,hcLight:Nm},m("listFocusHighlightForeground","List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree."));D("list.invalidItemForeground",{dark:"#B89500",light:"#B89500",hcDark:"#B89500",hcLight:"#B5200D"},m("invalidItemForeground","List/Tree foreground color for invalid items, for example an unresolved root in explorer."));D("list.errorForeground",{dark:"#F88070",light:"#B01011",hcDark:null,hcLight:null},m("listErrorForeground","Foreground color of list items containing errors."));D("list.warningForeground",{dark:"#CCA700",light:"#855F00",hcDark:null,hcLight:null},m("listWarningForeground","Foreground color of list items containing warnings."));const Hj=D("listFilterWidget.background",{light:ru(no,0),dark:pr(no,0),hcDark:no,hcLight:no},m("listFilterWidgetBackground","Background color of the type filter widget in lists and trees.")),Vj=D("listFilterWidget.outline",{dark:q.transparent,light:q.transparent,hcDark:"#f38518",hcLight:"#007ACC"},m("listFilterWidgetOutline","Outline color of the type filter widget in lists and trees.")),zj=D("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hcDark:Ye,hcLight:Ye},m("listFilterWidgetNoMatchesOutline","Outline color of the type filter widget in lists and trees, when there are no matches.")),Uj=D("listFilterWidget.shadow",q_,m("listFilterWidgetShadow","Shadow color of the type filter widget in lists and trees."));D("list.filterMatchBackground",{dark:ll,light:ll,hcDark:null,hcLight:null},m("listFilterMatchHighlight","Background color of the filtered match."));D("list.filterMatchBorder",{dark:Ud,light:Ud,hcDark:Ye,hcLight:Ut},m("listFilterMatchHighlightBorder","Border color of the filtered match."));D("list.deemphasizedForeground",{dark:"#8C8C8C",light:"#8E8E90",hcDark:"#A7A8A9",hcLight:"#666666"},m("listDeemphasizedForeground","List/Tree foreground color for items that are deemphasized."));const Y3=D("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hcDark:"#a9a9a9",hcLight:"#a5a5a5"},m("treeIndentGuidesStroke","Tree stroke color for the indentation guides.")),$j=D("tree.inactiveIndentGuidesStroke",Ae(Y3,.4),m("treeInactiveIndentGuidesStroke","Tree stroke color for the indentation guides that are not active.")),Kj=D("tree.tableColumnsBorder",{dark:"#CCCCCC20",light:"#61616120",hcDark:null,hcLight:null},m("tableColumnsBorder","Table border color between columns.")),jj=D("tree.tableOddRowsBackground",{dark:Ae(Pe,.04),light:Ae(Pe,.04),hcDark:null,hcLight:null},m("tableOddRowsBackgroundColor","Background color for odd table rows."));D("editorActionList.background",no,m("editorActionListBackground","Action List background color."));D("editorActionList.foreground",Z0,m("editorActionListForeground","Action List foreground color."));D("editorActionList.focusForeground",s_,m("editorActionListFocusForeground","Action List foreground color for the focused item."));D("editorActionList.focusBackground",Bh,m("editorActionListFocusBackground","Action List background color for the focused item."));const qj=D("menu.border",{dark:null,light:null,hcDark:Ye,hcLight:Ye},m("menuBorder","Border color of menus.")),Gj=D("menu.foreground",ET,m("menuForeground","Foreground color of menu items.")),Zj=D("menu.background",Q0,m("menuBackground","Background color of menu items.")),Yj=D("menu.selectionForeground",s_,m("menuSelectionForeground","Foreground color of the selected menu item in menus.")),Qj=D("menu.selectionBackground",Bh,m("menuSelectionBackground","Background color of the selected menu item in menus.")),Xj=D("menu.selectionBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("menuSelectionBorder","Border color of the selected menu item in menus.")),Jj=D("menu.separatorBackground",{dark:"#606060",light:"#D4D4D4",hcDark:Ye,hcLight:Ye},m("menuSeparatorBackground","Color of a separator menu item in menus.")),TA=D("quickInput.background",no,m("pickerBackground","Quick picker background color. The quick picker widget is the container for pickers like the command palette.")),eq=D("quickInput.foreground",Z0,m("pickerForeground","Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.")),tq=D("quickInputTitle.background",{dark:new q(new qe(255,255,255,.105)),light:new q(new qe(0,0,0,.06)),hcDark:"#000000",hcLight:q.white},m("pickerTitleBackground","Quick picker title background color. The quick picker widget is the container for pickers like the command palette.")),Q3=D("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hcDark:q.white,hcLight:"#0F4A85"},m("pickerGroupForeground","Quick picker color for grouping labels.")),iq=D("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hcDark:q.white,hcLight:"#0F4A85"},m("pickerGroupBorder","Quick picker color for grouping borders.")),MA=D("quickInput.list.focusBackground",null,"",void 0,m("quickInput.list.focusBackground deprecation","Please use quickInputList.focusBackground instead")),AC=D("quickInputList.focusForeground",s_,m("quickInput.listFocusForeground","Quick picker foreground color for the focused item.")),TT=D("quickInputList.focusIconForeground",q3,m("quickInput.listFocusIconForeground","Quick picker icon foreground color for the focused item.")),PC=D("quickInputList.focusBackground",{dark:t_(MA,Bh),light:t_(MA,Bh),hcDark:null,hcLight:null},m("quickInput.listFocusBackground","Quick picker background color for the focused item."));D("search.resultsInfoForeground",{light:Pe,dark:Ae(Pe,.65),hcDark:Pe,hcLight:Pe},m("search.resultsInfoForeground","Color of the text in the search viewlet's completion message."));D("searchEditor.findMatchBackground",{light:Ae(ll,.66),dark:Ae(ll,.66),hcDark:ll,hcLight:ll},m("searchEditor.queryMatch","Color of the Search Editor query matches."));D("searchEditor.findMatchBorder",{light:Ae(Ud,.66),dark:Ae(Ud,.66),hcDark:Ud,hcLight:Ud},m("searchEditor.editorFindMatchBorder","Border color of the Search Editor query matches."));var nq=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},RA=function(o,e){return function(t,i){e(t,i,o)}};const au=He("hoverService");let gg=class extends z{get delay(){return this.isInstantlyHovering()?0:this._delay}constructor(e,t,i={},n,s){super(),this.placement=e,this.instantHover=t,this.overrideOptions=i,this.configurationService=n,this.hoverService=s,this.lastHoverHideTime=0,this.timeLimit=200,this.hoverDisposables=this._register(new X),this._delay=this.configurationService.getValue("workbench.hover.delay"),this._register(this.configurationService.onDidChangeConfiguration(r=>{r.affectsConfiguration("workbench.hover.delay")&&(this._delay=this.configurationService.getValue("workbench.hover.delay"))}))}showHover(e,t){const i=typeof this.overrideOptions=="function"?this.overrideOptions(e,t):this.overrideOptions;this.hoverDisposables.clear();const n=Ei(e.target)?[e.target]:e.target.targetElements;for(const r of n)this.hoverDisposables.add(jt(r,"keydown",a=>{a.equals(9)&&this.hoverService.hideHover()}));const s=Ei(e.content)?void 0:e.content.toString();return this.hoverService.showHover({...e,...i,persistence:{hideOnKeyDown:!0,...i.persistence},id:s,appearance:{...e.appearance,compact:!0,skipFadeInAnimation:this.isInstantlyHovering(),...i.appearance}},t)}isInstantlyHovering(){return this.instantHover&&Date.now()-this.lastHoverHideTime{try{e.releasePointerCapture(t)}catch{}}))}catch{r=fe(e)}this._hooks.add(U(r,ee.POINTER_MOVE,a=>{if(a.buttons!==i){this.stopMonitoring(!0);return}a.preventDefault(),this._pointerMoveCallback(a)})),this._hooks.add(U(r,ee.POINTER_UP,a=>this.stopMonitoring(!0)))}}function Jt(o,e,t){let i=null,n=null;if(typeof t.value=="function"?(i="value",n=t.value,n.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof t.get=="function"&&(i="get",n=t.get),!n)throw new Error("not supported");const s=`$memoize$${e}`;t[i]=function(...r){return this.hasOwnProperty(s)||Object.defineProperty(this,s,{configurable:!1,enumerable:!1,writable:!1,value:n.apply(this,r)}),this[s]}}var sq=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},St;(function(o){o.Tap="-monaco-gesturetap",o.Change="-monaco-gesturechange",o.Start="-monaco-gesturestart",o.End="-monaco-gesturesend",o.Contextmenu="-monaco-gesturecontextmenu"})(St||(St={}));const $i=class $i extends z{constructor(){super(),this.dispatched=!1,this.targets=new yn,this.ignoreTargets=new yn,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(J.runAndSubscribe(T0,({window:e,disposables:t})=>{t.add(U(e.document,"touchstart",i=>this.onTouchStart(i),{passive:!1})),t.add(U(e.document,"touchend",i=>this.onTouchEnd(e,i))),t.add(U(e.document,"touchmove",i=>this.onTouchMove(i),{passive:!1}))},{window:_t,disposables:this._store}))}static addTarget(e){if(!$i.isTouchDevice())return z.None;$i.INSTANCE||($i.INSTANCE=new $i);const t=$i.INSTANCE.targets.push(e);return _e(t)}static ignoreTarget(e){if(!$i.isTouchDevice())return z.None;$i.INSTANCE||($i.INSTANCE=new $i);const t=$i.INSTANCE.ignoreTargets.push(e);return _e(t)}static isTouchDevice(){return"ontouchstart"in _t||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(e){const t=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let i=0,n=e.targetTouches.length;i=$i.HOLD_DELAY&&Math.abs(l.initialPageX-Gs(l.rollingPageX))<30&&Math.abs(l.initialPageY-Gs(l.rollingPageY))<30){const d=this.newGestureEvent(St.Contextmenu,l.initialTarget);d.pageX=Gs(l.rollingPageX),d.pageY=Gs(l.rollingPageY),this.dispatchEvent(d)}else if(n===1){const d=Gs(l.rollingPageX),h=Gs(l.rollingPageY),u=Gs(l.rollingTimestamps)-l.rollingTimestamps[0],f=d-l.rollingPageX[0],g=h-l.rollingPageY[0],p=[...this.targets].filter(_=>l.initialTarget instanceof Node&&_.contains(l.initialTarget));this.inertia(e,p,i,Math.abs(f)/u,f>0?1:-1,d,Math.abs(g)/u,g>0?1:-1,h)}this.dispatchEvent(this.newGestureEvent(St.End,l.initialTarget)),delete this.activeTouches[a.identifier]}this.dispatched&&(t.preventDefault(),t.stopPropagation(),this.dispatched=!1)}newGestureEvent(e,t){const i=document.createEvent("CustomEvent");return i.initEvent(e,!1,!0),i.initialTarget=t,i.tapCount=0,i}dispatchEvent(e){if(e.type===St.Tap){const t=new Date().getTime();let i=0;t-this._lastSetTapCountTime>$i.CLEAR_TAP_COUNT_TIME?i=1:i=2,this._lastSetTapCountTime=t,e.tapCount=i}else(e.type===St.Change||e.type===St.Contextmenu)&&(this._lastSetTapCountTime=0);if(e.initialTarget instanceof Node){for(const i of this.ignoreTargets)if(i.contains(e.initialTarget))return;const t=[];for(const i of this.targets)if(i.contains(e.initialTarget)){let n=0,s=e.initialTarget;for(;s&&s!==i;)n++,s=s.parentElement;t.push([n,i])}t.sort((i,n)=>i[0]-n[0]);for(const[i,n]of t)n.dispatchEvent(e),this.dispatched=!0}}inertia(e,t,i,n,s,r,a,l,c){this.handle=fs(e,()=>{const d=Date.now(),h=d-i;let u=0,f=0,g=!0;n+=$i.SCROLL_FRICTION*h,a+=$i.SCROLL_FRICTION*h,n>0&&(g=!1,u=s*n*h),a>0&&(g=!1,f=l*a*h);const p=this.newGestureEvent(St.Change);p.translationX=u,p.translationY=f,t.forEach(_=>_.dispatchEvent(p)),g||this.inertia(e,t,d,n,s,r+u,a,l,c+f)})}onTouchMove(e){const t=Date.now();for(let i=0,n=e.changedTouches.length;i3&&(r.rollingPageX.shift(),r.rollingPageY.shift(),r.rollingTimestamps.shift()),r.rollingPageX.push(s.pageX),r.rollingPageY.push(s.pageY),r.rollingTimestamps.push(t)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}};$i.SCROLL_FRICTION=-.005,$i.HOLD_DELAY=700,$i.CLEAR_TAP_COUNT_TIME=400;let fn=$i;sq([Jt],fn,"isTouchDevice",null);let xr=class extends z{onclick(e,t){this._register(U(e,ee.CLICK,i=>t(new ur(fe(e),i))))}onmousedown(e,t){this._register(U(e,ee.MOUSE_DOWN,i=>t(new ur(fe(e),i))))}onmouseover(e,t){this._register(U(e,ee.MOUSE_OVER,i=>t(new ur(fe(e),i))))}onmouseleave(e,t){this._register(U(e,ee.MOUSE_LEAVE,i=>t(new ur(fe(e),i))))}onkeydown(e,t){this._register(U(e,ee.KEY_DOWN,i=>t(new Nt(i))))}onkeyup(e,t){this._register(U(e,ee.KEY_UP,i=>t(new Nt(i))))}oninput(e,t){this._register(U(e,ee.INPUT,t))}onblur(e,t){this._register(U(e,ee.BLUR,t))}onfocus(e,t){this._register(U(e,ee.FOCUS,t))}ignoreGesture(e){return fn.ignoreTarget(e)}};const mg=11;class oq extends xr{constructor(e){super(),this._onActivate=e.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=e.bgWidth+"px",this.bgDomNode.style.height=e.bgHeight+"px",typeof e.top<"u"&&(this.bgDomNode.style.top="0px"),typeof e.left<"u"&&(this.bgDomNode.style.left="0px"),typeof e.bottom<"u"&&(this.bgDomNode.style.bottom="0px"),typeof e.right<"u"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=e.className,this.domNode.classList.add(...Ee.asClassNameArray(e.icon)),this.domNode.style.position="absolute",this.domNode.style.width=mg+"px",this.domNode.style.height=mg+"px",typeof e.top<"u"&&(this.domNode.style.top=e.top+"px"),typeof e.left<"u"&&(this.domNode.style.left=e.left+"px"),typeof e.bottom<"u"&&(this.domNode.style.bottom=e.bottom+"px"),typeof e.right<"u"&&(this.domNode.style.right=e.right+"px"),this._pointerMoveMonitor=this._register(new Hg),this._register(jt(this.bgDomNode,ee.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._register(jt(this.domNode,ee.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._pointerdownRepeatTimer=this._register(new QN),this._pointerdownScheduleRepeatTimer=this._register(new wr)}_arrowPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const t=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,fe(e))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(t,200),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,i=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),e.preventDefault()}}class rq extends z{constructor(e,t,i){super(),this._visibility=e,this._visibleClassName=t,this._invisibleClassName=i,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new wr)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this._updateShouldBeVisible())}setShouldBeVisible(e){this._rawShouldBeVisible=e,this._updateShouldBeVisible()}_applyVisibilitySetting(){return this._visibility===2?!1:this._visibility===3?!0:this._rawShouldBeVisible}_updateShouldBeVisible(){const e=this._applyVisibilitySetting();this._shouldBeVisible!==e&&(this._shouldBeVisible=e,this.ensureVisibility())}setIsNeeded(e){this._isNeeded!==e&&(this._isNeeded=e,this.ensureVisibility())}setDomNode(e){this._domNode=e,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded){this._hide(!1);return}this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(e){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(e?" fade":"")))}}const aq=140;class X3 extends xr{constructor(e){super(),this._lazyRender=e.lazyRender,this._host=e.host,this._scrollable=e.scrollable,this._scrollByPage=e.scrollByPage,this._scrollbarState=e.scrollbarState,this._visibilityController=this._register(new rq(e.visibility,"visible scrollbar "+e.extraScrollbarClassName,"invisible scrollbar "+e.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new Hg),this._shouldRender=!0,this.domNode=ot(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(U(this.domNode.domNode,ee.POINTER_DOWN,t=>this._domNodePointerDown(t)))}_createArrow(e){const t=this._register(new oq(e));this.domNode.domNode.appendChild(t.bgDomNode),this.domNode.domNode.appendChild(t.domNode)}_createSlider(e,t,i,n){this.slider=ot(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(e),this.slider.setLeft(t),typeof i=="number"&&this.slider.setWidth(i),typeof n=="number"&&this.slider.setHeight(n),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(U(this.slider.domNode,ee.POINTER_DOWN,s=>{s.button===0&&(s.preventDefault(),this._sliderPointerDown(s))})),this.onclick(this.slider.domNode,s=>{s.leftButton&&s.stopPropagation()})}_onElementSize(e){return this._scrollbarState.setVisibleSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(e){return this._scrollbarState.setScrollSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(e){return this._scrollbarState.setScrollPosition(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(e){e.target===this.domNode.domNode&&this._onPointerDown(e)}delegatePointerDown(e){const t=this.domNode.domNode.getClientRects()[0].top,i=t+this._scrollbarState.getSliderPosition(),n=t+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),s=this._sliderPointerPosition(e);i<=s&&s<=n?e.button===0&&(e.preventDefault(),this._sliderPointerDown(e)):this._onPointerDown(e)}_onPointerDown(e){let t,i;if(e.target===this.domNode.domNode&&typeof e.offsetX=="number"&&typeof e.offsetY=="number")t=e.offsetX,i=e.offsetY;else{const s=gi(this.domNode.domNode);t=e.pageX-s.left,i=e.pageY-s.top}const n=this._pointerDownRelativePosition(t,i);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(n):this._scrollbarState.getDesiredScrollPositionFromOffset(n)),e.button===0&&(e.preventDefault(),this._sliderPointerDown(e))}_sliderPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const t=this._sliderPointerPosition(e),i=this._sliderOrthogonalPointerPosition(e),n=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,s=>{const r=this._sliderOrthogonalPointerPosition(s),a=Math.abs(r-i);if(kn&&a>aq){this._setDesiredScrollPositionNow(n.getScrollPosition());return}const c=this._sliderPointerPosition(s)-t;this._setDesiredScrollPositionNow(n.getDesiredScrollPositionFromDelta(c))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(e){const t={};this.writeScrollPosition(t,e),this._scrollable.setScrollPositionNow(t)}updateScrollbarSize(e){this._updateScrollbarSize(e),this._scrollbarState.setScrollbarSize(e),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}}const lq=20;class pg{constructor(e,t,i,n,s,r){this._scrollbarSize=Math.round(t),this._oppositeScrollbarSize=Math.round(i),this._arrowSize=Math.round(e),this._visibleSize=n,this._scrollSize=s,this._scrollPosition=r,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new pg(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(e){const t=Math.round(e);return this._visibleSize!==t?(this._visibleSize=t,this._refreshComputedValues(),!0):!1}setScrollSize(e){const t=Math.round(e);return this._scrollSize!==t?(this._scrollSize=t,this._refreshComputedValues(),!0):!1}setScrollPosition(e){const t=Math.round(e);return this._scrollPosition!==t?(this._scrollPosition=t,this._refreshComputedValues(),!0):!1}setScrollbarSize(e){this._scrollbarSize=Math.round(e)}setOppositeScrollbarSize(e){this._oppositeScrollbarSize=Math.round(e)}static _computeValues(e,t,i,n,s){const r=Math.max(0,i-e),a=Math.max(0,r-2*t),l=n>0&&n>i;if(!l)return{computedAvailableSize:Math.round(r),computedIsNeeded:l,computedSliderSize:Math.round(a),computedSliderRatio:0,computedSliderPosition:0};const c=Math.round(Math.max(lq,Math.floor(i*a/n))),d=(a-c)/(n-i),h=s*d;return{computedAvailableSize:Math.round(r),computedIsNeeded:l,computedSliderSize:Math.round(c),computedSliderRatio:d,computedSliderPosition:Math.round(h)}}_refreshComputedValues(){const e=pg._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=e.computedAvailableSize,this._computedIsNeeded=e.computedIsNeeded,this._computedSliderSize=e.computedSliderSize,this._computedSliderRatio=e.computedSliderRatio,this._computedSliderPosition=e.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(e){if(!this._computedIsNeeded)return 0;const t=e-this._arrowSize-this._computedSliderSize/2;return Math.round(t/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(e){if(!this._computedIsNeeded)return 0;const t=e-this._arrowSize;let i=this._scrollPosition;return tthis._host.onMouseWheel(new Rh(null,1,0))}),this._createArrow({className:"scra",icon:ie.scrollbarButtonRight,top:a,left:void 0,bottom:void 0,right:r,bgWidth:t.arrowSize,bgHeight:t.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new Rh(null,-1,0))})}this._createSlider(Math.floor((t.horizontalScrollbarSize-t.horizontalSliderSize)/2),0,void 0,t.horizontalSliderSize)}_updateSlider(e,t){this.slider.setWidth(e),this.slider.setLeft(t)}_renderDomNode(e,t){this.domNode.setWidth(e),this.domNode.setHeight(t),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(e.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return e}_sliderPointerPosition(e){return e.pageX}_sliderOrthogonalPointerPosition(e){return e.pageY}_updateScrollbarSize(e){this.slider.setHeight(e)}writeScrollPosition(e,t){e.scrollLeft=t}updateOptions(e){this.updateScrollbarSize(e.horizontal===2?0:e.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._visibilityController.setVisibility(e.horizontal),this._scrollByPage=e.scrollByPage}}class dq extends X3{constructor(e,t,i){const n=e.getScrollDimensions(),s=e.getCurrentScrollPosition();if(super({lazyRender:t.lazyRender,host:i,scrollbarState:new pg(t.verticalHasArrows?t.arrowSize:0,t.vertical===2?0:t.verticalScrollbarSize,0,n.height,n.scrollHeight,s.scrollTop),visibility:t.vertical,extraScrollbarClassName:"vertical",scrollable:e,scrollByPage:t.scrollByPage}),t.verticalHasArrows){const r=(t.arrowSize-mg)/2,a=(t.verticalScrollbarSize-mg)/2;this._createArrow({className:"scra",icon:ie.scrollbarButtonUp,top:r,left:a,bottom:void 0,right:void 0,bgWidth:t.verticalScrollbarSize,bgHeight:t.arrowSize,onActivate:()=>this._host.onMouseWheel(new Rh(null,0,1))}),this._createArrow({className:"scra",icon:ie.scrollbarButtonDown,top:void 0,left:a,bottom:r,right:void 0,bgWidth:t.verticalScrollbarSize,bgHeight:t.arrowSize,onActivate:()=>this._host.onMouseWheel(new Rh(null,0,-1))})}this._createSlider(0,Math.floor((t.verticalScrollbarSize-t.verticalSliderSize)/2),t.verticalSliderSize,void 0)}_updateSlider(e,t){this.slider.setHeight(e),this.slider.setTop(t)}_renderDomNode(e,t){this.domNode.setWidth(t),this.domNode.setHeight(e),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(e.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return t}_sliderPointerPosition(e){return e.pageY}_sliderOrthogonalPointerPosition(e){return e.pageX}_updateScrollbarSize(e){this.slider.setWidth(e)}writeScrollPosition(e,t){e.scrollTop=t}updateOptions(e){this.updateScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(e.vertical),this._scrollByPage=e.scrollByPage}}class OC{constructor(e,t,i,n,s,r,a){this._forceIntegerValues=e,this._scrollStateBrand=void 0,this._forceIntegerValues&&(t=t|0,i=i|0,n=n|0,s=s|0,r=r|0,a=a|0),this.rawScrollLeft=n,this.rawScrollTop=a,t<0&&(t=0),n+t>i&&(n=i-t),n<0&&(n=0),s<0&&(s=0),a+s>r&&(a=r-s),a<0&&(a=0),this.width=t,this.scrollWidth=i,this.scrollLeft=n,this.height=s,this.scrollHeight=r,this.scrollTop=a}equals(e){return this.rawScrollLeft===e.rawScrollLeft&&this.rawScrollTop===e.rawScrollTop&&this.width===e.width&&this.scrollWidth===e.scrollWidth&&this.scrollLeft===e.scrollLeft&&this.height===e.height&&this.scrollHeight===e.scrollHeight&&this.scrollTop===e.scrollTop}withScrollDimensions(e,t){return new OC(this._forceIntegerValues,typeof e.width<"u"?e.width:this.width,typeof e.scrollWidth<"u"?e.scrollWidth:this.scrollWidth,t?this.rawScrollLeft:this.scrollLeft,typeof e.height<"u"?e.height:this.height,typeof e.scrollHeight<"u"?e.scrollHeight:this.scrollHeight,t?this.rawScrollTop:this.scrollTop)}withScrollPosition(e){return new OC(this._forceIntegerValues,this.width,this.scrollWidth,typeof e.scrollLeft<"u"?e.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof e.scrollTop<"u"?e.scrollTop:this.rawScrollTop)}createScrollEvent(e,t){const i=this.width!==e.width,n=this.scrollWidth!==e.scrollWidth,s=this.scrollLeft!==e.scrollLeft,r=this.height!==e.height,a=this.scrollHeight!==e.scrollHeight,l=this.scrollTop!==e.scrollTop;return{inSmoothScrolling:t,oldWidth:e.width,oldScrollWidth:e.scrollWidth,oldScrollLeft:e.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:e.height,oldScrollHeight:e.scrollHeight,oldScrollTop:e.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:i,scrollWidthChanged:n,scrollLeftChanged:s,heightChanged:r,scrollHeightChanged:a,scrollTopChanged:l}}}class Vg extends z{constructor(e){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new A),this.onScroll=this._onScroll.event,this._smoothScrollDuration=e.smoothScrollDuration,this._scheduleAtNextAnimationFrame=e.scheduleAtNextAnimationFrame,this._state=new OC(e.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(e){this._smoothScrollDuration=e}validateScrollPosition(e){return this._state.withScrollPosition(e)}getScrollDimensions(){return this._state}setScrollDimensions(e,t){const i=this._state.withScrollDimensions(e,t);this._setState(i,!!this._smoothScrolling),this._smoothScrolling?.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(e){const t=this._state.withScrollPosition(e);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(t,!1)}setScrollPositionSmooth(e,t){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(e);if(this._smoothScrolling){e={scrollLeft:typeof e.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:e.scrollLeft,scrollTop:typeof e.scrollTop>"u"?this._smoothScrolling.to.scrollTop:e.scrollTop};const i=this._state.withScrollPosition(e);if(this._smoothScrolling.to.scrollLeft===i.scrollLeft&&this._smoothScrolling.to.scrollTop===i.scrollTop)return;let n;t?n=new o_(this._smoothScrolling.from,i,this._smoothScrolling.startTime,this._smoothScrolling.duration):n=this._smoothScrolling.combine(this._state,i,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=n}else{const i=this._state.withScrollPosition(e);this._smoothScrolling=o_.start(this._state,i,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}hasPendingScrollAnimation(){return!!this._smoothScrolling}_performSmoothScrolling(){if(!this._smoothScrolling)return;const e=this._smoothScrolling.tick(),t=this._state.withScrollPosition(e);if(this._setState(t,!0),!!this._smoothScrolling){if(e.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(e,t){const i=this._state;i.equals(e)||(this._state=e,this._onScroll.fire(this._state.createScrollEvent(i,t)))}}class AA{constructor(e,t,i){this.scrollLeft=e,this.scrollTop=t,this.isDone=i}}function kS(o,e){const t=e-o;return function(i){return o+t*fq(i)}}function hq(o,e,t){return function(i){return i2.5*i){let s,r;return e0&&Math.abs(e.deltaY)>0)return 1;let i=.5;if((!this._isAlmostInt(e.deltaX)||!this._isAlmostInt(e.deltaY))&&(i+=.25),t){const n=Math.abs(e.deltaX),s=Math.abs(e.deltaY),r=Math.abs(t.deltaX),a=Math.abs(t.deltaY),l=Math.max(Math.min(n,r),1),c=Math.max(Math.min(s,a),1),d=Math.max(n,r),h=Math.max(s,a);d%l===0&&h%c===0&&(i-=.5)}return Math.min(Math.max(i,0),1)}_isAlmostInt(e){return Math.abs(Math.round(e)-e)<.01}};Tw.INSTANCE=new Tw;let FC=Tw;class MT extends xr{get options(){return this._options}constructor(e,t,i){super(),this._onScroll=this._register(new A),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new A),e.style.overflow="hidden",this._options=pq(t),this._scrollable=i,this._register(this._scrollable.onScroll(s=>{this._onWillScroll.fire(s),this._onDidScroll(s),this._onScroll.fire(s)}));const n={onMouseWheel:s=>this._onMouseWheel(s),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new dq(this._scrollable,this._options,n)),this._horizontalScrollbar=this._register(new cq(this._scrollable,this._options,n)),this._domNode=document.createElement("div"),this._domNode.className="monaco-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.style.overflow="hidden",this._domNode.appendChild(e),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=ot(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=ot(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=ot(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,s=>this._onMouseOver(s)),this.onmouseleave(this._listenOnDomNode,s=>this._onMouseLeave(s)),this._hideTimeout=this._register(new wr),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}dispose(){this._mouseWheelToDispose=xt(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(e){this._verticalScrollbar.delegatePointerDown(e)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(e){this._scrollable.setScrollDimensions(e,!1)}updateClassName(e){this._options.className=e,Ue&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className}updateOptions(e){typeof e.handleMouseWheel<"u"&&(this._options.handleMouseWheel=e.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof e.mouseWheelScrollSensitivity<"u"&&(this._options.mouseWheelScrollSensitivity=e.mouseWheelScrollSensitivity),typeof e.fastScrollSensitivity<"u"&&(this._options.fastScrollSensitivity=e.fastScrollSensitivity),typeof e.scrollPredominantAxis<"u"&&(this._options.scrollPredominantAxis=e.scrollPredominantAxis),typeof e.horizontal<"u"&&(this._options.horizontal=e.horizontal),typeof e.vertical<"u"&&(this._options.vertical=e.vertical),typeof e.horizontalScrollbarSize<"u"&&(this._options.horizontalScrollbarSize=e.horizontalScrollbarSize),typeof e.verticalScrollbarSize<"u"&&(this._options.verticalScrollbarSize=e.verticalScrollbarSize),typeof e.scrollByPage<"u"&&(this._options.scrollByPage=e.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}delegateScrollFromMouseWheelEvent(e){this._onMouseWheel(new Rh(e))}_setListeningToMouseWheel(e){if(this._mouseWheelToDispose.length>0!==e&&(this._mouseWheelToDispose=xt(this._mouseWheelToDispose),e)){const i=n=>{this._onMouseWheel(new Rh(n))};this._mouseWheelToDispose.push(U(this._listenOnDomNode,ee.MOUSE_WHEEL,i,{passive:!1}))}}_onMouseWheel(e){if(e.browserEvent?.defaultPrevented)return;const t=FC.INSTANCE;t.acceptStandardWheelEvent(e);let i=!1;if(e.deltaY||e.deltaX){let s=e.deltaY*this._options.mouseWheelScrollSensitivity,r=e.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&r+s===0?r=s=0:Math.abs(s)>=Math.abs(r)?r=0:s=0),this._options.flipAxes&&([s,r]=[r,s]);const a=!Ue&&e.browserEvent&&e.browserEvent.shiftKey;(this._options.scrollYToX||a)&&!r&&(r=s,s=0),e.browserEvent&&e.browserEvent.altKey&&(r=r*this._options.fastScrollSensitivity,s=s*this._options.fastScrollSensitivity);const l=this._scrollable.getFutureScrollPosition();let c={};if(s){const d=PA*s,h=l.scrollTop-(d<0?Math.floor(d):Math.ceil(d));this._verticalScrollbar.writeScrollPosition(c,h)}if(r){const d=PA*r,h=l.scrollLeft-(d<0?Math.floor(d):Math.ceil(d));this._horizontalScrollbar.writeScrollPosition(c,h)}c=this._scrollable.validateScrollPosition(c),(l.scrollLeft!==c.scrollLeft||l.scrollTop!==c.scrollTop)&&(this._options.mouseWheelSmoothScroll&&t.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(c):this._scrollable.setScrollPositionNow(c),i=!0)}let n=i;!n&&this._options.alwaysConsumeMouseWheel&&(n=!0),!n&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(n=!0),n&&(e.preventDefault(),e.stopPropagation())}_onDidScroll(e){this._shouldRender=this._horizontalScrollbar.onDidScroll(e)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(e)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){const e=this._scrollable.getCurrentScrollPosition(),t=e.scrollTop>0,i=e.scrollLeft>0,n=i?" left":"",s=t?" top":"",r=i||t?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${n}`),this._topShadowDomNode.setClassName(`shadow${s}`),this._topLeftShadowDomNode.setClassName(`shadow${r}${s}${n}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(e){this._mouseIsOver=!1,this._hide()}_onMouseOver(e){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),gq)}}class J3 extends MT{constructor(e,t){t=t||{},t.mouseWheelSmoothScroll=!1;const i=new Vg({forceIntegerValues:!0,smoothScrollDuration:0,scheduleAtNextAnimationFrame:n=>fs(fe(e),n)});super(e,t,i),this._register(i)}setScrollPosition(e){this._scrollable.setScrollPositionNow(e)}}class X0 extends MT{constructor(e,t,i){super(e,t,i)}setScrollPosition(e){e.reuseAnimation?this._scrollable.setScrollPositionSmooth(e,e.reuseAnimation):this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}}class J0 extends MT{constructor(e,t){t=t||{},t.mouseWheelSmoothScroll=!1;const i=new Vg({forceIntegerValues:!1,smoothScrollDuration:0,scheduleAtNextAnimationFrame:n=>fs(fe(e),n)});super(e,t,i),this._register(i),this._element=e,this._register(this.onScroll(n=>{n.scrollTopChanged&&(this._element.scrollTop=n.scrollTop),n.scrollLeftChanged&&(this._element.scrollLeft=n.scrollLeft)})),this.scanDomNode()}setScrollPosition(e){this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}scanDomNode(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})}}function pq(o){const e={lazyRender:typeof o.lazyRender<"u"?o.lazyRender:!1,className:typeof o.className<"u"?o.className:"",useShadows:typeof o.useShadows<"u"?o.useShadows:!0,handleMouseWheel:typeof o.handleMouseWheel<"u"?o.handleMouseWheel:!0,flipAxes:typeof o.flipAxes<"u"?o.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof o.consumeMouseWheelIfScrollbarIsNeeded<"u"?o.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof o.alwaysConsumeMouseWheel<"u"?o.alwaysConsumeMouseWheel:!1,scrollYToX:typeof o.scrollYToX<"u"?o.scrollYToX:!1,mouseWheelScrollSensitivity:typeof o.mouseWheelScrollSensitivity<"u"?o.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof o.fastScrollSensitivity<"u"?o.fastScrollSensitivity:5,scrollPredominantAxis:typeof o.scrollPredominantAxis<"u"?o.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof o.mouseWheelSmoothScroll<"u"?o.mouseWheelSmoothScroll:!0,arrowSize:typeof o.arrowSize<"u"?o.arrowSize:11,listenOnDomNode:typeof o.listenOnDomNode<"u"?o.listenOnDomNode:null,horizontal:typeof o.horizontal<"u"?o.horizontal:1,horizontalScrollbarSize:typeof o.horizontalScrollbarSize<"u"?o.horizontalScrollbarSize:10,horizontalSliderSize:typeof o.horizontalSliderSize<"u"?o.horizontalSliderSize:0,horizontalHasArrows:typeof o.horizontalHasArrows<"u"?o.horizontalHasArrows:!1,vertical:typeof o.vertical<"u"?o.vertical:1,verticalScrollbarSize:typeof o.verticalScrollbarSize<"u"?o.verticalScrollbarSize:10,verticalHasArrows:typeof o.verticalHasArrows<"u"?o.verticalHasArrows:!1,verticalSliderSize:typeof o.verticalSliderSize<"u"?o.verticalSliderSize:0,scrollByPage:typeof o.scrollByPage<"u"?o.scrollByPage:!1};return e.horizontalSliderSize=typeof o.horizontalSliderSize<"u"?o.horizontalSliderSize:e.horizontalScrollbarSize,e.verticalSliderSize=typeof o.verticalSliderSize<"u"?o.verticalSliderSize:e.verticalScrollbarSize,Ue&&(e.className+=" mac"),e}const Ab=ce;let RT=class extends z{constructor(){super(),this.containerDomNode=document.createElement("div"),this.containerDomNode.className="monaco-hover",this.containerDomNode.tabIndex=0,this.containerDomNode.setAttribute("role","tooltip"),this.contentsDomNode=document.createElement("div"),this.contentsDomNode.className="monaco-hover-content",this.scrollbar=this._register(new J0(this.contentsDomNode,{consumeMouseWheelIfScrollbarIsNeeded:!0})),this.containerDomNode.appendChild(this.scrollbar.getDomNode())}onContentsChanged(){this.scrollbar.scanDomNode()}};class ey extends z{static render(e,t,i){return new ey(e,t,i)}constructor(e,t,i){super(),this.actionLabel=t.label,this.actionKeybindingLabel=i,this.actionContainer=Z(e,Ab("div.action-container")),this.actionContainer.setAttribute("tabindex","0"),this.action=Z(this.actionContainer,Ab("a.action")),this.action.setAttribute("role","button"),t.iconClass&&Z(this.action,Ab(`span.icon.${t.iconClass}`));const n=Z(this.action,Ab("span"));n.textContent=i?`${t.label} (${i})`:t.label,this._store.add(new t7(this.actionContainer,t.run)),this._store.add(new i7(this.actionContainer,t.run,[3,10])),this.setEnabled(!0)}setEnabled(e){e?(this.actionContainer.classList.remove("disabled"),this.actionContainer.removeAttribute("aria-disabled")):(this.actionContainer.classList.add("disabled"),this.actionContainer.setAttribute("aria-disabled","true"))}}function e7(o,e){return o&&e?m("acessibleViewHint","Inspect this in the accessible view with {0}.",e):o?m("acessibleViewHintNoKbOpen","Inspect this in the accessible view via the command Open Accessible View which is currently not triggerable via keybinding."):""}class t7 extends z{constructor(e,t){super(),this._register(U(e,ee.CLICK,i=>{i.stopPropagation(),i.preventDefault(),t(e)}))}}class i7 extends z{constructor(e,t,i){super(),this._register(U(e,ee.KEY_DOWN,n=>{const s=new Nt(n);i.some(r=>s.equals(r))&&(n.stopPropagation(),n.preventDefault(),t(e))}))}}const Vo=He("openerService");function _q(o){let e;const t=/^L?(\d+)(?:,(\d+))?(-L?(\d+)(?:,(\d+))?)?/.exec(o.fragment);return t&&(e={startLineNumber:parseInt(t[1]),startColumn:t[2]?parseInt(t[2]):1,endLineNumber:t[4]?parseInt(t[4]):void 0,endColumn:t[4]?t[5]?parseInt(t[5]):1:void 0},o=o.with({fragment:""})),{selection:e,uri:o}}class ze{get event(){return this.emitter.event}constructor(e,t,i){const n=s=>this.emitter.fire(s);this.emitter=new A({onWillAddFirstListener:()=>e.addEventListener(t,n,i),onDidRemoveLastListener:()=>e.removeEventListener(t,n,i)})}dispose(){this.emitter.dispose()}}function bq(o,e={}){const t=AT(e);return t.textContent=o,t}function Cq(o,e={}){const t=AT(e);return n7(t,wq(o,!!e.renderCodeSegments),e.actionHandler,e.renderCodeSegments),t}function AT(o){const e=o.inline?"span":"div",t=document.createElement(e);return o.className&&(t.className=o.className),t}class vq{constructor(e){this.source=e,this.index=0}eos(){return this.index>=this.source.length}next(){const e=this.peek();return this.advance(),e}peek(){return this.source[this.index]}advance(){this.index++}}function n7(o,e,t,i){let n;if(e.type===2)n=document.createTextNode(e.content||"");else if(e.type===3)n=document.createElement("b");else if(e.type===4)n=document.createElement("i");else if(e.type===7&&i)n=document.createElement("code");else if(e.type===5&&t){const s=document.createElement("a");t.disposables.add(jt(s,"click",r=>{t.callback(String(e.index),r)})),n=s}else e.type===8?n=document.createElement("br"):e.type===1&&(n=o);n&&o!==n&&o.appendChild(n),n&&Array.isArray(e.children)&&e.children.forEach(s=>{n7(n,s,t,i)})}function wq(o,e){const t={type:1,children:[]};let i=0,n=t;const s=[],r=new vq(o);for(;!r.eos();){let a=r.next();const l=a==="\\"&&Tk(r.peek(),e)!==0;if(l&&(a=r.next()),!l&&yq(a,e)&&a===r.peek()){r.advance(),n.type===2&&(n=s.pop());const c=Tk(a,e);if(n.type===c||n.type===5&&c===6)n=s.pop();else{const d={type:c,children:[]};c===5&&(d.index=i,i++),n.children.push(d),s.push(n),n=d}}else if(a===` -`)n.type===2&&(n=s.pop()),n.children.push({type:8});else if(n.type!==2){const c={type:2,content:a};n.children.push(c),s.push(n),n=c}else n.content+=a}return n.type===2&&(n=s.pop()),t}function yq(o,e){return Tk(o,e)!==0}function Tk(o,e){switch(o){case"*":return 3;case"_":return 4;case"[":return 5;case"]":return 6;case"`":return e?7:0;default:return 0}}const Sq=new RegExp(`(\\\\)?\\$\\((${Ee.iconNameExpression}(?:${Ee.iconModifierExpression})?)\\)`,"g");function Qd(o){const e=new Array;let t,i=0,n=0;for(;(t=Sq.exec(o))!==null;){n=t.index||0,i0?[{start:0,end:e.length}]:[]:null}function Lq(o,e){const t=e.toLowerCase().indexOf(o.toLowerCase());return t===-1?null:[{start:t,end:t+o.length}]}function r7(o,e){return Mk(o.toLowerCase(),e.toLowerCase(),0,0)}function Mk(o,e,t,i){if(t===o.length)return[];if(i===e.length)return null;if(o[t]===e[i]){let n=null;return(n=Mk(o,e,t+1,i+1))?l7({start:i,end:i+1},n):null}return Mk(o,e,t,i+1)}function PT(o){return 97<=o&&o<=122}function ty(o){return 65<=o&&o<=90}function OT(o){return 48<=o&&o<=57}function xq(o){return o===32||o===9||o===10||o===13}const kq=new Set;"()[]{}<>`'\"-/;:,.?!".split("").forEach(o=>kq.add(o.charCodeAt(0)));function a7(o){return PT(o)||ty(o)||OT(o)}function l7(o,e){return e.length===0?e=[o]:o.end===e[0].start?e[0].start=o.start:e.unshift(o),e}function c7(o,e){for(let t=e;t0&&!a7(o.charCodeAt(t-1)))return t}return o.length}function Rk(o,e,t,i){if(t===o.length)return[];if(i===e.length)return null;if(o[t]!==e[i].toLowerCase())return null;{let n=null,s=i+1;for(n=Rk(o,e,t+1,i+1);!n&&(s=c7(e,s)).6}function Eq(o){const{upperPercent:e,lowerPercent:t,alphaPercent:i,numericPercent:n}=o;return t>.2&&e<.8&&i>.6&&n<.2}function Nq(o){let e=0,t=0,i=0,n=0;for(let s=0;s60&&(e=e.substring(0,60));const t=Dq(e);if(!Eq(t)){if(!Iq(t))return null;e=e.toLowerCase()}let i=null,n=0;for(o=o.toLowerCase();n"u")return[];const e=[],t=o[1];for(let i=o.length-1;i>1;i--){const n=o[i]+t,s=e[e.length-1];s&&s.end===n?s.end=n+1:e.push({start:n,end:n+1})}return e}const sc=128;function FT(){const o=[],e=[];for(let t=0;t<=sc;t++)e[t]=0;for(let t=0;t<=sc;t++)o.push(e.slice(0));return o}function h7(o){const e=[];for(let t=0;t<=o;t++)e[t]=0;return e}const u7=h7(2*sc),Ak=h7(2*sc),Ta=FT(),td=FT(),Pb=FT();function Ob(o,e){if(e<0||e>=o.length)return!1;const t=o.codePointAt(e);switch(t){case 95:case 45:case 46:case 32:case 47:case 92:case 39:case 34:case 58:case 36:case 60:case 62:case 40:case 41:case 91:case 93:case 123:case 125:return!0;case void 0:return!1;default:return!!UN(t)}}function BA(o,e){if(e<0||e>=o.length)return!1;switch(o.charCodeAt(e)){case 32:case 9:return!0;default:return!1}}function M1(o,e,t){return e[o]!==t[o]}function Pq(o,e,t,i,n,s,r=!1){for(;esc?sc:o.length,l=i.length>sc?sc:i.length;if(t>=a||s>=l||a-t>l-s||!Pq(e,t,a,n,s,l,!0))return;Oq(a,l,t,s,e,n);let c=1,d=1,h=t,u=s;const f=[!1];for(c=1,h=t;hC,N=E?td[c][d-1]+(Ta[c][d-1]>0?-5:0):0,H=u>C+1&&Ta[c][d-1]>0,F=H?td[c][d-2]+(Ta[c][d-2]>0?-5:0):0;if(H&&(!E||F>=N)&&(!x||F>=L))td[c][d]=F,Pb[c][d]=3,Ta[c][d]=0;else if(E&&(!x||N>=L))td[c][d]=N,Pb[c][d]=2,Ta[c][d]=0;else if(x)td[c][d]=L,Pb[c][d]=1,Ta[c][d]=Ta[c-1][d-1]+1;else throw new Error("not possible")}}if(!f[0]&&!r.firstMatchCanBeWeak)return;c--,d--;const g=[td[c][d],s];let p=0,_=0;for(;c>=1;){let C=d;do{const w=Pb[c][C];if(w===3)C=C-2;else if(w===2)C=C-1;else break}while(C>=1);p>1&&e[t+c-1]===n[s+d-1]&&!M1(C+s-1,i,n)&&p+1>Ta[c][C]&&(C=d),C===d?p++:p=1,_||(_=C),c--,d=C-1,g.push(d)}l-s===a&&r.boostFullMatch&&(g[0]+=2);const b=_-a;return g[0]-=b,g}function Oq(o,e,t,i,n,s){let r=o-1,a=e-1;for(;r>=t&&a>=i;)n[r]===s[a]&&(Ak[r]=a,r--),a--}function Fq(o,e,t,i,n,s,r,a,l,c,d){if(e[t]!==s[r])return Number.MIN_SAFE_INTEGER;let h=1,u=!1;return r===t-i?h=o[t]===n[r]?7:5:M1(r,n,s)&&(r===0||!M1(r-1,n,s))?(h=o[t]===n[r]?7:5,u=!0):Ob(s,r)&&(r===0||!Ob(s,r-1))?h=5:(Ob(s,r-1)||BA(s,r-1))&&(h=5,u=!0),h>1&&t===i&&(d[0]=!0),u||(u=M1(r,n,s)||Ob(s,r-1)||BA(s,r-1)),t===i?r>l&&(h-=u?3:5):c?h+=u?2:0:h+=u?0:1,r+1===a&&(h-=u?3:5),h}function Bq(o,e,t,i,n,s,r){return Wq(o,e,t,i,n,s,!0,r)}function Wq(o,e,t,i,n,s,r,a){let l=_g(o,e,t,i,n,s,a);if(o.length>=3){const c=Math.min(7,o.length-1);for(let d=t+1;dl[0])&&(l=u))}}}return l}function Hq(o,e){if(e+1>=o.length)return;const t=o[e],i=o[e+1];if(t!==i)return o.slice(0,e)+i+t+o.slice(e+2)}const Vq="$(",BT=new RegExp(`\\$\\(${Ee.iconNameExpression}(?:${Ee.iconModifierExpression})?\\)`,"g"),zq=new RegExp(`(\\\\)?${BT.source}`,"g");function Uq(o){return o.replace(zq,(e,t)=>t?e:`\\${e}`)}const $q=new RegExp(`\\\\${BT.source}`,"g");function Kq(o){return o.replace($q,e=>`\\${e}`)}const jq=new RegExp(`(\\s)?(\\\\)?${BT.source}(\\s)?`,"g");function f7(o){return o.indexOf(Vq)===-1?o:o.replace(jq,(e,t,i,n)=>i?e:t||n||"")}function qq(o){return o?o.replace(/\$\((.*?)\)/g,(e,t)=>` ${t} `).trim():""}const DS=new RegExp(`\\$\\(${Ee.iconNameCharacter}+\\)`,"g");function Tm(o){DS.lastIndex=0;let e="";const t=[];let i=0;for(;;){const n=DS.lastIndex,s=DS.exec(o),r=o.substring(n,s?.index);if(r.length>0){e+=r;for(let a=0;agA(i).length&&i[i.length-1]===t}else{const i=e.path;return i.length>1&&i.charCodeAt(i.length-1)===47&&!/^[a-zA-Z]:(\/$|\\$)/.test(e.fsPath)}}removeTrailingPathSeparator(e,t=fc){return VA(e,t)?e.with({path:e.path.substr(0,e.path.length-1)}):e}addTrailingPathSeparator(e,t=fc){let i=!1;if(e.scheme===Te.file){const n=Ma(e);i=n!==void 0&&n.length===gA(n).length&&n[n.length-1]===t}else{t="/";const n=e.path;i=n.length===1&&n.charCodeAt(n.length-1)===47}return!i&&!VA(e,t)?e.with({path:e.path+"/"}):e}}const Tt=new Gq(()=>!1),WT=Tt.isEqual.bind(Tt);Tt.isEqualOrParent.bind(Tt);Tt.getComparisonKey.bind(Tt);const Zq=Tt.basenameOrAuthority.bind(Tt),Fo=Tt.basename.bind(Tt),Yq=Tt.extname.bind(Tt),ny=Tt.dirname.bind(Tt);Tt.joinPath.bind(Tt);const Qq=Tt.normalizePath.bind(Tt);Tt.relativePath.bind(Tt);const WA=Tt.resolvePath.bind(Tt);Tt.isAbsolutePath.bind(Tt);const HA=Tt.isEqualAuthority.bind(Tt),VA=Tt.hasTrailingPathSeparator.bind(Tt);Tt.removeTrailingPathSeparator.bind(Tt);Tt.addTrailingPathSeparator.bind(Tt);var Oc;(function(o){o.META_DATA_LABEL="label",o.META_DATA_DESCRIPTION="description",o.META_DATA_SIZE="size",o.META_DATA_MIME="mime";function e(t){const i=new Map;t.path.substring(t.path.indexOf(";")+1,t.path.lastIndexOf(";")).split(";").forEach(r=>{const[a,l]=r.split(":");a&&l&&i.set(a,l)});const s=t.path.substring(0,t.path.indexOf(";"));return s&&i.set(o.META_DATA_MIME,s),i}o.parseMetaData=e})(Oc||(Oc={}));class Js{constructor(e="",t=!1){if(this.value=e,typeof this.value!="string")throw na("value");typeof t=="boolean"?(this.isTrusted=t,this.supportThemeIcons=!1,this.supportHtml=!1):(this.isTrusted=t.isTrusted??void 0,this.supportThemeIcons=t.supportThemeIcons??!1,this.supportHtml=t.supportHtml??!1)}appendText(e,t=0){return this.value+=Jq(this.supportThemeIcons?Uq(e):e).replace(/([ \t]+)/g,(i,n)=>" ".repeat(n.length)).replace(/\>/gm,"\\>").replace(/\n/g,t===1?`\\ -`:` - -`),this}appendMarkdown(e){return this.value+=e,this}appendCodeblock(e,t){return this.value+=` -${eG(t,e)} -`,this}appendLink(e,t,i){return this.value+="[",this.value+=this._escape(t,"]"),this.value+="](",this.value+=this._escape(String(e),")"),i&&(this.value+=` "${this._escape(this._escape(i,'"'),")")}"`),this.value+=")",this}_escape(e,t){const i=new RegExp(xl(t),"g");return e.replace(i,(n,s)=>e.charAt(s-1)!=="\\"?`\\${n}`:n)}}function bg(o){return ra(o)?!o.value:Array.isArray(o)?o.every(bg):!0}function ra(o){return o instanceof Js?!0:o&&typeof o=="object"?typeof o.value=="string"&&(typeof o.isTrusted=="boolean"||typeof o.isTrusted=="object"||o.isTrusted===void 0)&&(typeof o.supportThemeIcons=="boolean"||o.supportThemeIcons===void 0):!1}function Xq(o,e){return o===e?!0:!o||!e?!1:o.value===e.value&&o.isTrusted===e.isTrusted&&o.supportThemeIcons===e.supportThemeIcons&&o.supportHtml===e.supportHtml&&(o.baseUri===e.baseUri||!!o.baseUri&&!!e.baseUri&&WT(ve.from(o.baseUri),ve.from(e.baseUri)))}function Jq(o){return o.replace(/[\\`*_{}[\]()#+\-!~]/g,"\\$&")}function eG(o,e){const t=o.match(/^`+/gm)?.reduce((n,s)=>n.length>s.length?n:s).length??0,i=t>=3?t+1:3;return[`${"`".repeat(i)}${e}`,o,`${"`".repeat(i)}`].join(` -`)}function Fb(o){return o.replace(/"/g,""")}function ES(o){return o&&o.replace(/\\([\\`*_{}[\]()#+\-.!~])/g,"$1")}function tG(o){const e=[],t=o.split("|").map(n=>n.trim());o=t[0];const i=t[1];if(i){const n=/height=(\d+)/.exec(i),s=/width=(\d+)/.exec(i),r=n?n[1]:"",a=s?s[1]:"",l=isFinite(parseInt(a)),c=isFinite(parseInt(r));l&&e.push(`width="${a}"`),c&&e.push(`height="${r}"`)}return{href:o,dimensions:e}}class HT{constructor(e){this._prefix=e,this._lastId=0}nextId(){return this._prefix+ ++this._lastId}}const Pk=new HT("id#");let tn={};(function(){function o(e,t){t(tn)}o.amd=!0,(function(e,t){typeof o=="function"&&o.amd?o(["exports"],t):typeof exports=="object"&&typeof module<"u"?t(exports):(e=typeof globalThis<"u"?globalThis:e||self,t(e.marked={}))})(this,(function(e){function t(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}e.defaults=t();function i(Xe){e.defaults=Xe}const n=/[&<>"']/,s=new RegExp(n.source,"g"),r=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,a=new RegExp(r.source,"g"),l={"&":"&","<":"<",">":">",'"':""","'":"'"},c=Xe=>l[Xe];function d(Xe,T){if(T){if(n.test(Xe))return Xe.replace(s,c)}else if(r.test(Xe))return Xe.replace(a,c);return Xe}const h=/(^|[^\[])\^/g;function u(Xe,T){let M=typeof Xe=="string"?Xe:Xe.source;T=T||"";const R={replace:(O,V)=>{let Y=typeof V=="string"?V:V.source;return Y=Y.replace(h,"$1"),M=M.replace(O,Y),R},getRegex:()=>new RegExp(M,T)};return R}function f(Xe){try{Xe=encodeURI(Xe).replace(/%25/g,"%")}catch{return null}return Xe}const g={exec:()=>null};function p(Xe,T){const M=Xe.replace(/\|/g,(V,Y,te)=>{let me=!1,ye=Y;for(;--ye>=0&&te[ye]==="\\";)me=!me;return me?"|":" |"}),R=M.split(/ \|/);let O=0;if(R[0].trim()||R.shift(),R.length>0&&!R[R.length-1].trim()&&R.pop(),T)if(R.length>T)R.splice(T);else for(;R.length{const V=O.match(/^\s+/);if(V===null)return O;const[Y]=V;return Y.length>=R.length?O.slice(R.length):O}).join(` -`)}class v{options;rules;lexer;constructor(T){this.options=T||e.defaults}space(T){const M=this.rules.block.newline.exec(T);if(M&&M[0].length>0)return{type:"space",raw:M[0]}}code(T){const M=this.rules.block.code.exec(T);if(M){const R=M[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:M[0],codeBlockStyle:"indented",text:this.options.pedantic?R:_(R,` -`)}}}fences(T){const M=this.rules.block.fences.exec(T);if(M){const R=M[0],O=w(R,M[3]||"");return{type:"code",raw:R,lang:M[2]?M[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):M[2],text:O}}}heading(T){const M=this.rules.block.heading.exec(T);if(M){let R=M[2].trim();if(/#$/.test(R)){const O=_(R,"#");(this.options.pedantic||!O||/ $/.test(O))&&(R=O.trim())}return{type:"heading",raw:M[0],depth:M[1].length,text:R,tokens:this.lexer.inline(R)}}}hr(T){const M=this.rules.block.hr.exec(T);if(M)return{type:"hr",raw:_(M[0],` -`)}}blockquote(T){const M=this.rules.block.blockquote.exec(T);if(M){let R=_(M[0],` -`).split(` -`),O="",V="";const Y=[];for(;R.length>0;){let te=!1;const me=[];let ye;for(ye=0;ye/.test(R[ye]))me.push(R[ye]),te=!0;else if(!te)me.push(R[ye]);else break;R=R.slice(ye);const Ve=me.join(` -`),ft=Ve.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` - $1`).replace(/^ {0,3}>[ \t]?/gm,"");O=O?`${O} -${Ve}`:Ve,V=V?`${V} -${ft}`:ft;const Ct=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(ft,Y,!0),this.lexer.state.top=Ct,R.length===0)break;const Si=Y[Y.length-1];if(Si?.type==="code")break;if(Si?.type==="blockquote"){const Gt=Si,Zn=Gt.raw+` -`+R.join(` -`),qs=this.blockquote(Zn);Y[Y.length-1]=qs,O=O.substring(0,O.length-Gt.raw.length)+qs.raw,V=V.substring(0,V.length-Gt.text.length)+qs.text;break}else if(Si?.type==="list"){const Gt=Si,Zn=Gt.raw+` -`+R.join(` -`),qs=this.list(Zn);Y[Y.length-1]=qs,O=O.substring(0,O.length-Si.raw.length)+qs.raw,V=V.substring(0,V.length-Gt.raw.length)+qs.raw,R=Zn.substring(Y[Y.length-1].raw.length).split(` -`);continue}}return{type:"blockquote",raw:O,tokens:Y,text:V}}}list(T){let M=this.rules.block.list.exec(T);if(M){let R=M[1].trim();const O=R.length>1,V={type:"list",raw:"",ordered:O,start:O?+R.slice(0,-1):"",loose:!1,items:[]};R=O?`\\d{1,9}\\${R.slice(-1)}`:`\\${R}`,this.options.pedantic&&(R=O?R:"[*+-]");const Y=new RegExp(`^( {0,3}${R})((?:[ ][^\\n]*)?(?:\\n|$))`);let te=!1;for(;T;){let me=!1,ye="",Ve="";if(!(M=Y.exec(T))||this.rules.block.hr.test(T))break;ye=M[0],T=T.substring(ye.length);let ft=M[2].split(` -`,1)[0].replace(/^\t+/,em=>" ".repeat(3*em.length)),Ct=T.split(` -`,1)[0],Si=!ft.trim(),Gt=0;if(this.options.pedantic?(Gt=2,Ve=ft.trimStart()):Si?Gt=M[1].length+1:(Gt=M[2].search(/[^ ]/),Gt=Gt>4?1:Gt,Ve=ft.slice(Gt),Gt+=M[1].length),Si&&/^ *$/.test(Ct)&&(ye+=Ct+` -`,T=T.substring(Ct.length+1),me=!0),!me){const em=new RegExp(`^ {0,${Math.min(3,Gt-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),Oe=new RegExp(`^ {0,${Math.min(3,Gt-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),$=new RegExp(`^ {0,${Math.min(3,Gt-1)}}(?:\`\`\`|~~~)`),ue=new RegExp(`^ {0,${Math.min(3,Gt-1)}}#`);for(;T;){const Ie=T.split(` -`,1)[0];if(Ct=Ie,this.options.pedantic&&(Ct=Ct.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),$.test(Ct)||ue.test(Ct)||em.test(Ct)||Oe.test(T))break;if(Ct.search(/[^ ]/)>=Gt||!Ct.trim())Ve+=` -`+Ct.slice(Gt);else{if(Si||ft.search(/[^ ]/)>=4||$.test(ft)||ue.test(ft)||Oe.test(ft))break;Ve+=` -`+Ct}!Si&&!Ct.trim()&&(Si=!0),ye+=Ie+` -`,T=T.substring(Ie.length+1),ft=Ct.slice(Gt)}}V.loose||(te?V.loose=!0:/\n *\n *$/.test(ye)&&(te=!0));let Zn=null,qs;this.options.gfm&&(Zn=/^\[[ xX]\] /.exec(Ve),Zn&&(qs=Zn[0]!=="[ ] ",Ve=Ve.replace(/^\[[ xX]\] +/,""))),V.items.push({type:"list_item",raw:ye,task:!!Zn,checked:qs,loose:!1,text:Ve,tokens:[]}),V.raw+=ye}V.items[V.items.length-1].raw=V.items[V.items.length-1].raw.trimEnd(),V.items[V.items.length-1].text=V.items[V.items.length-1].text.trimEnd(),V.raw=V.raw.trimEnd();for(let me=0;meft.type==="space"),Ve=ye.length>0&&ye.some(ft=>/\n.*\n/.test(ft.raw));V.loose=Ve}if(V.loose)for(let me=0;me$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",V=M[3]?M[3].substring(1,M[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):M[3];return{type:"def",tag:R,raw:M[0],href:O,title:V}}}table(T){const M=this.rules.block.table.exec(T);if(!M||!/[:|]/.test(M[2]))return;const R=p(M[1]),O=M[2].replace(/^\||\| *$/g,"").split("|"),V=M[3]&&M[3].trim()?M[3].replace(/\n[ \t]*$/,"").split(` -`):[],Y={type:"table",raw:M[0],header:[],align:[],rows:[]};if(R.length===O.length){for(const te of O)/^ *-+: *$/.test(te)?Y.align.push("right"):/^ *:-+: *$/.test(te)?Y.align.push("center"):/^ *:-+ *$/.test(te)?Y.align.push("left"):Y.align.push(null);for(let te=0;te({text:me,tokens:this.lexer.inline(me),header:!1,align:Y.align[ye]})));return Y}}lheading(T){const M=this.rules.block.lheading.exec(T);if(M)return{type:"heading",raw:M[0],depth:M[2].charAt(0)==="="?1:2,text:M[1],tokens:this.lexer.inline(M[1])}}paragraph(T){const M=this.rules.block.paragraph.exec(T);if(M){const R=M[1].charAt(M[1].length-1)===` -`?M[1].slice(0,-1):M[1];return{type:"paragraph",raw:M[0],text:R,tokens:this.lexer.inline(R)}}}text(T){const M=this.rules.block.text.exec(T);if(M)return{type:"text",raw:M[0],text:M[0],tokens:this.lexer.inline(M[0])}}escape(T){const M=this.rules.inline.escape.exec(T);if(M)return{type:"escape",raw:M[0],text:d(M[1])}}tag(T){const M=this.rules.inline.tag.exec(T);if(M)return!this.lexer.state.inLink&&/^
    /i.test(M[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(M[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(M[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:M[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:M[0]}}link(T){const M=this.rules.inline.link.exec(T);if(M){const R=M[2].trim();if(!this.options.pedantic&&/^$/.test(R))return;const Y=_(R.slice(0,-1),"\\");if((R.length-Y.length)%2===0)return}else{const Y=b(M[2],"()");if(Y>-1){const me=(M[0].indexOf("!")===0?5:4)+M[1].length+Y;M[2]=M[2].substring(0,Y),M[0]=M[0].substring(0,me).trim(),M[3]=""}}let O=M[2],V="";if(this.options.pedantic){const Y=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(O);Y&&(O=Y[1],V=Y[3])}else V=M[3]?M[3].slice(1,-1):"";return O=O.trim(),/^$/.test(R)?O=O.slice(1):O=O.slice(1,-1)),C(M,{href:O&&O.replace(this.rules.inline.anyPunctuation,"$1"),title:V&&V.replace(this.rules.inline.anyPunctuation,"$1")},M[0],this.lexer)}}reflink(T,M){let R;if((R=this.rules.inline.reflink.exec(T))||(R=this.rules.inline.nolink.exec(T))){const O=(R[2]||R[1]).replace(/\s+/g," "),V=M[O.toLowerCase()];if(!V){const Y=R[0].charAt(0);return{type:"text",raw:Y,text:Y}}return C(R,V,R[0],this.lexer)}}emStrong(T,M,R=""){let O=this.rules.inline.emStrongLDelim.exec(T);if(!O||O[3]&&R.match(/[\p{L}\p{N}]/u))return;if(!(O[1]||O[2]||"")||!R||this.rules.inline.punctuation.exec(R)){const Y=[...O[0]].length-1;let te,me,ye=Y,Ve=0;const ft=O[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(ft.lastIndex=0,M=M.slice(-1*T.length+Y);(O=ft.exec(M))!=null;){if(te=O[1]||O[2]||O[3]||O[4]||O[5]||O[6],!te)continue;if(me=[...te].length,O[3]||O[4]){ye+=me;continue}else if((O[5]||O[6])&&Y%3&&!((Y+me)%3)){Ve+=me;continue}if(ye-=me,ye>0)continue;me=Math.min(me,me+ye+Ve);const Ct=[...O[0]][0].length,Si=T.slice(0,Y+O.index+Ct+me);if(Math.min(Y,me)%2){const Zn=Si.slice(1,-1);return{type:"em",raw:Si,text:Zn,tokens:this.lexer.inlineTokens(Zn)}}const Gt=Si.slice(2,-2);return{type:"strong",raw:Si,text:Gt,tokens:this.lexer.inlineTokens(Gt)}}}}codespan(T){const M=this.rules.inline.code.exec(T);if(M){let R=M[2].replace(/\n/g," ");const O=/[^ ]/.test(R),V=/^ /.test(R)&&/ $/.test(R);return O&&V&&(R=R.substring(1,R.length-1)),R=d(R,!0),{type:"codespan",raw:M[0],text:R}}}br(T){const M=this.rules.inline.br.exec(T);if(M)return{type:"br",raw:M[0]}}del(T){const M=this.rules.inline.del.exec(T);if(M)return{type:"del",raw:M[0],text:M[2],tokens:this.lexer.inlineTokens(M[2])}}autolink(T){const M=this.rules.inline.autolink.exec(T);if(M){let R,O;return M[2]==="@"?(R=d(M[1]),O="mailto:"+R):(R=d(M[1]),O=R),{type:"link",raw:M[0],text:R,href:O,tokens:[{type:"text",raw:R,text:R}]}}}url(T){let M;if(M=this.rules.inline.url.exec(T)){let R,O;if(M[2]==="@")R=d(M[0]),O="mailto:"+R;else{let V;do V=M[0],M[0]=this.rules.inline._backpedal.exec(M[0])?.[0]??"";while(V!==M[0]);R=d(M[0]),M[1]==="www."?O="http://"+M[0]:O=M[0]}return{type:"link",raw:M[0],text:R,href:O,tokens:[{type:"text",raw:R,text:R}]}}}inlineText(T){const M=this.rules.inline.text.exec(T);if(M){let R;return this.lexer.state.inRawBlock?R=M[0]:R=d(M[0]),{type:"text",raw:M[0],text:R}}}}const y=/^(?: *(?:\n|$))+/,x=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,L=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,E=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,N=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,H=/(?:[*+-]|\d{1,9}[.)])/,F=u(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,H).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),W=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,j=/^[^\n]+/,B=/(?!\s*\])(?:\\.|[^\[\]\\])+/,G=u(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",B).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),ne=u(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,H).getRegex(),ae="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",de=/|$))/,se=u("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",de).replace("tag",ae).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),be=u(W).replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ae).getRegex(),Rt={blockquote:u(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",be).getRegex(),code:x,def:G,fences:L,heading:N,hr:E,html:se,lheading:F,list:ne,newline:y,paragraph:be,table:g,text:j},ct=u("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ae).getRegex(),Bt={...Rt,table:ct,paragraph:u(W).replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",ct).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ae).getRegex()},ht={...Rt,html:u(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",de).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:g,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:u(W).replace("hr",E).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",F).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},ei=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,js=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,fi=/^( {2,}|\\)\n(?!\s*$)/,po=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,Yg=u(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Al).getRegex(),Ia=u("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Al).getRegex(),Qg=u("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Al).getRegex(),Xg=u(/\\([punct])/,"gu").replace(/punct/g,Al).getRegex(),Ol=u(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),vu=u(de).replace("(?:-->|$)","-->").getRegex(),wu=u("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",vu).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Yc=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,gb=u(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Yc).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),mb=u(/^!?\[(label)\]\[(ref)\]/).replace("label",Yc).replace("ref",B).getRegex(),yu=u(/^!?\[(ref)\](?:\[\])?/).replace("ref",B).getRegex(),Qc=u("reflink|nolink(?!\\()","g").replace("reflink",mb).replace("nolink",yu).getRegex(),Dr={_backpedal:g,anyPunctuation:Xg,autolink:Ol,blockSkip:Pl,br:fi,code:js,del:g,emStrongLDelim:Yg,emStrongRDelimAst:Ia,emStrongRDelimUnd:Qg,escape:ei,link:gb,nolink:yu,punctuation:fb,reflink:mb,reflinkSearch:Qc,tag:wu,text:po,url:g},Fl={...Dr,link:u(/^!?\[(label)\]\((.*?)\)/).replace("label",Yc).getRegex(),reflink:u(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Yc).getRegex()},Su={...Dr,escape:u(ei).replace("])","~|])").getRegex(),url:u(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\me+" ".repeat(ye.length));let O,V,Y;for(;T;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(te=>(O=te.call({lexer:this},T,M))?(T=T.substring(O.raw.length),M.push(O),!0):!1))){if(O=this.tokenizer.space(T)){T=T.substring(O.raw.length),O.raw.length===1&&M.length>0?M[M.length-1].raw+=` -`:M.push(O);continue}if(O=this.tokenizer.code(T)){T=T.substring(O.raw.length),V=M[M.length-1],V&&(V.type==="paragraph"||V.type==="text")?(V.raw+=` -`+O.raw,V.text+=` -`+O.text,this.inlineQueue[this.inlineQueue.length-1].src=V.text):M.push(O);continue}if(O=this.tokenizer.fences(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.heading(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.hr(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.blockquote(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.list(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.html(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.def(T)){T=T.substring(O.raw.length),V=M[M.length-1],V&&(V.type==="paragraph"||V.type==="text")?(V.raw+=` -`+O.raw,V.text+=` -`+O.raw,this.inlineQueue[this.inlineQueue.length-1].src=V.text):this.tokens.links[O.tag]||(this.tokens.links[O.tag]={href:O.href,title:O.title});continue}if(O=this.tokenizer.table(T)){T=T.substring(O.raw.length),M.push(O);continue}if(O=this.tokenizer.lheading(T)){T=T.substring(O.raw.length),M.push(O);continue}if(Y=T,this.options.extensions&&this.options.extensions.startBlock){let te=1/0;const me=T.slice(1);let ye;this.options.extensions.startBlock.forEach(Ve=>{ye=Ve.call({lexer:this},me),typeof ye=="number"&&ye>=0&&(te=Math.min(te,ye))}),te<1/0&&te>=0&&(Y=T.substring(0,te+1))}if(this.state.top&&(O=this.tokenizer.paragraph(Y))){V=M[M.length-1],R&&V?.type==="paragraph"?(V.raw+=` -`+O.raw,V.text+=` -`+O.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=V.text):M.push(O),R=Y.length!==T.length,T=T.substring(O.raw.length);continue}if(O=this.tokenizer.text(T)){T=T.substring(O.raw.length),V=M[M.length-1],V&&V.type==="text"?(V.raw+=` -`+O.raw,V.text+=` -`+O.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=V.text):M.push(O);continue}if(T){const te="Infinite loop on byte: "+T.charCodeAt(0);if(this.options.silent){console.error(te);break}else throw new Error(te)}}return this.state.top=!0,M}inline(T,M=[]){return this.inlineQueue.push({src:T,tokens:M}),M}inlineTokens(T,M=[]){let R,O,V,Y=T,te,me,ye;if(this.tokens.links){const Ve=Object.keys(this.tokens.links);if(Ve.length>0)for(;(te=this.tokenizer.rules.inline.reflinkSearch.exec(Y))!=null;)Ve.includes(te[0].slice(te[0].lastIndexOf("[")+1,-1))&&(Y=Y.slice(0,te.index)+"["+"a".repeat(te[0].length-2)+"]"+Y.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(te=this.tokenizer.rules.inline.blockSkip.exec(Y))!=null;)Y=Y.slice(0,te.index)+"["+"a".repeat(te[0].length-2)+"]"+Y.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(te=this.tokenizer.rules.inline.anyPunctuation.exec(Y))!=null;)Y=Y.slice(0,te.index)+"++"+Y.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;T;)if(me||(ye=""),me=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(Ve=>(R=Ve.call({lexer:this},T,M))?(T=T.substring(R.raw.length),M.push(R),!0):!1))){if(R=this.tokenizer.escape(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.tag(T)){T=T.substring(R.raw.length),O=M[M.length-1],O&&R.type==="text"&&O.type==="text"?(O.raw+=R.raw,O.text+=R.text):M.push(R);continue}if(R=this.tokenizer.link(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.reflink(T,this.tokens.links)){T=T.substring(R.raw.length),O=M[M.length-1],O&&R.type==="text"&&O.type==="text"?(O.raw+=R.raw,O.text+=R.text):M.push(R);continue}if(R=this.tokenizer.emStrong(T,Y,ye)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.codespan(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.br(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.del(T)){T=T.substring(R.raw.length),M.push(R);continue}if(R=this.tokenizer.autolink(T)){T=T.substring(R.raw.length),M.push(R);continue}if(!this.state.inLink&&(R=this.tokenizer.url(T))){T=T.substring(R.raw.length),M.push(R);continue}if(V=T,this.options.extensions&&this.options.extensions.startInline){let Ve=1/0;const ft=T.slice(1);let Ct;this.options.extensions.startInline.forEach(Si=>{Ct=Si.call({lexer:this},ft),typeof Ct=="number"&&Ct>=0&&(Ve=Math.min(Ve,Ct))}),Ve<1/0&&Ve>=0&&(V=T.substring(0,Ve+1))}if(R=this.tokenizer.inlineText(V)){T=T.substring(R.raw.length),R.raw.slice(-1)!=="_"&&(ye=R.raw.slice(-1)),me=!0,O=M[M.length-1],O&&O.type==="text"?(O.raw+=R.raw,O.text+=R.text):M.push(R);continue}if(T){const Ve="Infinite loop on byte: "+T.charCodeAt(0);if(this.options.silent){console.error(Ve);break}else throw new Error(Ve)}}return M}}class Ir{options;parser;constructor(T){this.options=T||e.defaults}space(T){return""}code({text:T,lang:M,escaped:R}){const O=(M||"").match(/^\S*/)?.[0],V=T.replace(/\n$/,"")+` -`;return O?'
    '+(R?V:d(V,!0))+`
    -`:"
    "+(R?V:d(V,!0))+`
    -`}blockquote({tokens:T}){return`
    -${this.parser.parse(T)}
    -`}html({text:T}){return T}heading({tokens:T,depth:M}){return`${this.parser.parseInline(T)} -`}hr(T){return`
    -`}list(T){const M=T.ordered,R=T.start;let O="";for(let te=0;te -`+O+" -`}listitem(T){let M="";if(T.task){const R=this.checkbox({checked:!!T.checked});T.loose?T.tokens.length>0&&T.tokens[0].type==="paragraph"?(T.tokens[0].text=R+" "+T.tokens[0].text,T.tokens[0].tokens&&T.tokens[0].tokens.length>0&&T.tokens[0].tokens[0].type==="text"&&(T.tokens[0].tokens[0].text=R+" "+T.tokens[0].tokens[0].text)):T.tokens.unshift({type:"text",raw:R+" ",text:R+" "}):M+=R+" "}return M+=this.parser.parse(T.tokens,!!T.loose),`
  • ${M}
  • -`}checkbox({checked:T}){return"'}paragraph({tokens:T}){return`

    ${this.parser.parseInline(T)}

    -`}table(T){let M="",R="";for(let V=0;V${O}`),` - -`+M+` -`+O+`
    -`}tablerow({text:T}){return` -${T} -`}tablecell(T){const M=this.parser.parseInline(T.tokens),R=T.header?"th":"td";return(T.align?`<${R} align="${T.align}">`:`<${R}>`)+M+` -`}strong({tokens:T}){return`${this.parser.parseInline(T)}`}em({tokens:T}){return`${this.parser.parseInline(T)}`}codespan({text:T}){return`${T}`}br(T){return"
    "}del({tokens:T}){return`${this.parser.parseInline(T)}`}link({href:T,title:M,tokens:R}){const O=this.parser.parseInline(R),V=f(T);if(V===null)return O;T=V;let Y='
    ",Y}image({href:T,title:M,text:R}){const O=f(T);if(O===null)return R;T=O;let V=`${R}{const te=V[Y].flat(1/0);R=R.concat(this.walkTokens(te,M))}):V.tokens&&(R=R.concat(this.walkTokens(V.tokens,M)))}}return R}use(...T){const M=this.defaults.extensions||{renderers:{},childTokens:{}};return T.forEach(R=>{const O={...R};if(O.async=this.defaults.async||O.async||!1,R.extensions&&(R.extensions.forEach(V=>{if(!V.name)throw new Error("extension name required");if("renderer"in V){const Y=M.renderers[V.name];Y?M.renderers[V.name]=function(...te){let me=V.renderer.apply(this,te);return me===!1&&(me=Y.apply(this,te)),me}:M.renderers[V.name]=V.renderer}if("tokenizer"in V){if(!V.level||V.level!=="block"&&V.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const Y=M[V.level];Y?Y.unshift(V.tokenizer):M[V.level]=[V.tokenizer],V.start&&(V.level==="block"?M.startBlock?M.startBlock.push(V.start):M.startBlock=[V.start]:V.level==="inline"&&(M.startInline?M.startInline.push(V.start):M.startInline=[V.start]))}"childTokens"in V&&V.childTokens&&(M.childTokens[V.name]=V.childTokens)}),O.extensions=M),R.renderer){const V=this.defaults.renderer||new Ir(this.defaults);for(const Y in R.renderer){if(!(Y in V))throw new Error(`renderer '${Y}' does not exist`);if(["options","parser"].includes(Y))continue;const te=Y,me=R.renderer[te],ye=V[te];V[te]=(...Ve)=>{let ft=me.apply(V,Ve);return ft===!1&&(ft=ye.apply(V,Ve)),ft||""}}O.renderer=V}if(R.tokenizer){const V=this.defaults.tokenizer||new v(this.defaults);for(const Y in R.tokenizer){if(!(Y in V))throw new Error(`tokenizer '${Y}' does not exist`);if(["options","rules","lexer"].includes(Y))continue;const te=Y,me=R.tokenizer[te],ye=V[te];V[te]=(...Ve)=>{let ft=me.apply(V,Ve);return ft===!1&&(ft=ye.apply(V,Ve)),ft}}O.tokenizer=V}if(R.hooks){const V=this.defaults.hooks||new _o;for(const Y in R.hooks){if(!(Y in V))throw new Error(`hook '${Y}' does not exist`);if(Y==="options")continue;const te=Y,me=R.hooks[te],ye=V[te];_o.passThroughHooks.has(Y)?V[te]=Ve=>{if(this.defaults.async)return Promise.resolve(me.call(V,Ve)).then(Ct=>ye.call(V,Ct));const ft=me.call(V,Ve);return ye.call(V,ft)}:V[te]=(...Ve)=>{let ft=me.apply(V,Ve);return ft===!1&&(ft=ye.apply(V,Ve)),ft}}O.hooks=V}if(R.walkTokens){const V=this.defaults.walkTokens,Y=R.walkTokens;O.walkTokens=function(te){let me=[];return me.push(Y.call(this,te)),V&&(me=me.concat(V.call(this,te))),me}}this.defaults={...this.defaults,...O}}),this}setOptions(T){return this.defaults={...this.defaults,...T},this}lexer(T,M){return bs.lex(T,M??this.defaults)}parser(T,M){return Ti.parse(T,M??this.defaults)}parseMarkdown(T,M){return(O,V)=>{const Y={...V},te={...this.defaults,...Y},me=this.onError(!!te.silent,!!te.async);if(this.defaults.async===!0&&Y.async===!1)return me(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof O>"u"||O===null)return me(new Error("marked(): input parameter is undefined or null"));if(typeof O!="string")return me(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(O)+", string expected"));if(te.hooks&&(te.hooks.options=te),te.async)return Promise.resolve(te.hooks?te.hooks.preprocess(O):O).then(ye=>T(ye,te)).then(ye=>te.hooks?te.hooks.processAllTokens(ye):ye).then(ye=>te.walkTokens?Promise.all(this.walkTokens(ye,te.walkTokens)).then(()=>ye):ye).then(ye=>M(ye,te)).then(ye=>te.hooks?te.hooks.postprocess(ye):ye).catch(me);try{te.hooks&&(O=te.hooks.preprocess(O));let ye=T(O,te);te.hooks&&(ye=te.hooks.processAllTokens(ye)),te.walkTokens&&this.walkTokens(ye,te.walkTokens);let Ve=M(ye,te);return te.hooks&&(Ve=te.hooks.postprocess(Ve)),Ve}catch(ye){return me(ye)}}}onError(T,M){return R=>{if(R.message+=` -Please report this to https://github.com/markedjs/marked.`,T){const O="

    An error occurred:

    "+d(R.message+"",!0)+"
    ";return M?Promise.resolve(O):O}if(M)return Promise.reject(R);throw R}}}const Uo=new Lu;function Ot(Xe,T){return Uo.parse(Xe,T)}Ot.options=Ot.setOptions=function(Xe){return Uo.setOptions(Xe),Ot.defaults=Uo.defaults,i(Ot.defaults),Ot},Ot.getDefaults=t,Ot.defaults=e.defaults,Ot.use=function(...Xe){return Uo.use(...Xe),Ot.defaults=Uo.defaults,i(Ot.defaults),Ot},Ot.walkTokens=function(Xe,T){return Uo.walkTokens(Xe,T)},Ot.parseInline=Uo.parseInline,Ot.Parser=Ti,Ot.parser=Ti.parse,Ot.Renderer=Ir,Ot.TextRenderer=Na,Ot.Lexer=bs,Ot.lexer=bs.lex,Ot.Tokenizer=v,Ot.Hooks=_o,Ot.parse=Ot;const Jc=Ot.options,Vy=Ot.setOptions,zy=Ot.use,Hi=Ot.walkTokens,Bl=Ot.parseInline,Uy=Ot,_b=Ti.parse,Jg=bs.lex;e.Hooks=_o,e.Lexer=bs,e.Marked=Lu,e.Parser=Ti,e.Renderer=Ir,e.TextRenderer=Na,e.Tokenizer=v,e.getDefaults=t,e.lexer=Jg,e.marked=Ot,e.options=Jc,e.parse=Uy,e.parseInline=Bl,e.parser=_b,e.setOptions=Vy,e.use=zy,e.walkTokens=Hi}))})();tn.Hooks||exports.Hooks;tn.Lexer||exports.Lexer;tn.Marked||exports.Marked;tn.Parser||exports.Parser;var g7=tn.Renderer||exports.Renderer;tn.TextRenderer||exports.TextRenderer;tn.Tokenizer||exports.Tokenizer;var iG=tn.defaults||exports.defaults;tn.getDefaults||exports.getDefaults;var sy=tn.lexer||exports.lexer;tn.marked||exports.marked;tn.options||exports.options;var m7=tn.parse||exports.parse;tn.parseInline||exports.parseInline;var nG=tn.parser||exports.parser;tn.setOptions||exports.setOptions;tn.use||exports.use;tn.walkTokens||exports.walkTokens;function sG(o){return JSON.stringify(o,oG)}function Ok(o){let e=JSON.parse(o);return e=Fk(e),e}function oG(o,e){return e instanceof RegExp?{$mid:2,source:e.source,flags:e.flags}:e}function Fk(o,e=0){if(!o||e>200)return o;if(typeof o=="object"){switch(o.$mid){case 1:return ve.revive(o);case 2:return new RegExp(o.source,o.flags);case 17:return new Date(o.source)}if(o instanceof lT||o instanceof Uint8Array)return o;if(Array.isArray(o))for(let t=0;t{let i=[],n=[];return o&&({href:o,dimensions:i}=tG(o),n.push(`src="${Fb(o)}"`)),t&&n.push(`alt="${Fb(t)}"`),e&&n.push(`title="${Fb(e)}"`),i.length&&(n=n.concat(i)),""},paragraph({tokens:o}){return`

    ${this.parser.parseInline(o)}

    `},link({href:o,title:e,tokens:t}){let i=this.parser.parseInline(t);return typeof o!="string"?"":(o===i&&(i=ES(i)),e=typeof e=="string"?Fb(ES(e)):"",o=ES(o),o=o.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"),`
    ${i}`)}});function oy(o,e={},t={}){const i=new X;let n=!1;const s=AT(e),r=function(p){let _;try{_=Ok(decodeURIComponent(p))}catch{}return _?(_=O5(_,b=>{if(o.uris&&o.uris[b])return ve.revive(o.uris[b])}),encodeURIComponent(JSON.stringify(_))):p},a=function(p,_){const b=o.uris&&o.uris[p];let C=ve.revive(b);return _?p.startsWith(Te.data+":")?p:(C||(C=ve.parse(p)),E0.uriToBrowserUri(C).toString(!0)):!C||ve.parse(p).toString()===C.toString()?p:(C.query&&(C=C.with({query:r(C.query)})),C.toString())},l=new g7;l.image=NS.image,l.link=NS.link,l.paragraph=NS.paragraph;const c=[],d=[];if(e.codeBlockRendererSync?l.code=({text:p,lang:_})=>{const b=Pk.nextId(),C=e.codeBlockRendererSync(zA(_),p);return d.push([b,C]),`
    ${Km(p)}
    `}:e.codeBlockRenderer&&(l.code=({text:p,lang:_})=>{const b=Pk.nextId(),C=e.codeBlockRenderer(zA(_),p);return c.push(C.then(w=>[b,w])),`
    ${Km(p)}
    `}),e.actionHandler){const p=function(C){let w=C.target;if(!(w.tagName!=="A"&&(w=w.parentElement,!w||w.tagName!=="A")))try{let v=w.dataset.href;v&&(o.baseUri&&(v=TS(ve.from(o.baseUri),v)),e.actionHandler.callback(v,C))}catch(v){Ze(v)}finally{C.preventDefault()}},_=e.actionHandler.disposables.add(new ze(s,"click")),b=e.actionHandler.disposables.add(new ze(s,"auxclick"));e.actionHandler.disposables.add(J.any(_.event,b.event)(C=>{const w=new ur(fe(s),C);!w.leftButton&&!w.middleButton||p(w)})),e.actionHandler.disposables.add(U(s,"keydown",C=>{const w=new Nt(C);!w.equals(10)&&!w.equals(3)||p(w)}))}o.supportHtml||(l.html=({text:p})=>e.sanitizerOptions?.replaceWithPlaintext?Km(p):(o.isTrusted?p.match(/^(]+>)|(<\/\s*span>)$/):void 0)?p:""),t.renderer=l;let h=o.value??"";h.length>1e5&&(h=`${h.substr(0,1e5)}…`),o.supportThemeIcons&&(h=Kq(h));let u;if(e.fillInIncompleteTokens){const p={...iG,...t},_=sy(h,p),b=bG(_);u=nG(b,p)}else u=m7(h,{...t,async:!1});o.supportThemeIcons&&(u=Qd(u).map(_=>typeof _=="string"?_:_.outerHTML).join(""));const g=new DOMParser().parseFromString(Bk({isTrusted:o.isTrusted,...e.sanitizerOptions},u),"text/html");if(g.body.querySelectorAll("img, audio, video, source").forEach(p=>{const _=p.getAttribute("src");if(_){let b=_;try{o.baseUri&&(b=TS(ve.from(o.baseUri),b))}catch{}if(p.setAttribute("src",a(b,!0)),e.remoteImageIsAllowed){const C=ve.parse(b);C.scheme!==Te.file&&C.scheme!==Te.data&&!e.remoteImageIsAllowed(C)&&p.replaceWith(ce("",void 0,p.outerHTML))}}}),g.body.querySelectorAll("a").forEach(p=>{const _=p.getAttribute("href");if(p.setAttribute("href",""),!_||/^data:|javascript:/i.test(_)||/^command:/i.test(_)&&!o.isTrusted||/^command:(\/\/\/)?_workbench\.downloadResource/i.test(_))p.replaceWith(...p.childNodes);else{let b=a(_,!1);o.baseUri&&(b=TS(ve.from(o.baseUri),_)),p.dataset.href=b}}),s.innerHTML=Bk({isTrusted:o.isTrusted,...e.sanitizerOptions},g.body.innerHTML),c.length>0)Promise.all(c).then(p=>{if(n)return;const _=new Map(p),b=s.querySelectorAll("div[data-code]");for(const C of b){const w=_.get(C.dataset.code??"");w&&un(C,w)}e.asyncRenderCallback?.()});else if(d.length>0){const p=new Map(d),_=s.querySelectorAll("div[data-code]");for(const b of _){const C=p.get(b.dataset.code??"");C&&un(b,C)}}if(e.asyncRenderCallback)for(const p of s.getElementsByTagName("img")){const _=i.add(U(p,"load",()=>{_.dispose(),e.asyncRenderCallback()}))}return{element:s,dispose:()=>{n=!0,i.dispose()}}}function zA(o){if(!o)return"";const e=o.split(/[\s+|:|,|\{|\?]/,1);return e.length?e[0]:o}function TS(o,e){return/^\w[\w\d+.-]*:/.test(e)?e:o.path.endsWith("/")?WA(o,e).toString():WA(ny(o),e).toString()}const rG=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"];function Bk(o,e){const{config:t,allowedSchemes:i}=lG(o),n=new X;n.add(UA("uponSanitizeAttribute",(s,r)=>{if(r.attrName==="style"||r.attrName==="class"){if(s.tagName==="SPAN"){if(r.attrName==="style"){r.keepAttr=/^(color\:(#[0-9a-fA-F]+|var\(--vscode(-[a-zA-Z]+)+\));)?(background-color\:(#[0-9a-fA-F]+|var\(--vscode(-[a-zA-Z]+)+\));)?(border-radius:[0-9]+px;)?$/.test(r.attrValue);return}else if(r.attrName==="class"){r.keepAttr=/^codicon codicon-[a-z\-]+( codicon-modifier-[a-z\-]+)?$/.test(r.attrValue);return}}r.keepAttr=!1;return}else if(s.tagName==="INPUT"&&s.attributes.getNamedItem("type")?.value==="checkbox"){if(r.attrName==="type"&&r.attrValue==="checkbox"||r.attrName==="disabled"||r.attrName==="checked"){r.keepAttr=!0;return}r.keepAttr=!1}})),n.add(UA("uponSanitizeElement",(s,r)=>{if(r.tagName==="input"&&(s.attributes.getNamedItem("type")?.value==="checkbox"?s.setAttribute("disabled",""):o.replaceWithPlaintext||s.remove()),o.replaceWithPlaintext&&!r.allowedTags[r.tagName]&&r.tagName!=="body"&&s.parentElement){let a,l;if(r.tagName==="#comment")a=``;else{const u=rG.includes(r.tagName),f=s.attributes.length?" "+Array.from(s.attributes).map(g=>`${g.name}="${g.value}"`).join(" "):"";a=`<${r.tagName}${f}>`,u||(l=``)}const c=document.createDocumentFragment(),d=s.parentElement.ownerDocument.createTextNode(a);c.appendChild(d);const h=l?s.parentElement.ownerDocument.createTextNode(l):void 0;for(;s.firstChild;)c.appendChild(s.firstChild);h&&c.appendChild(h),s.nodeType===Node.COMMENT_NODE?s.parentElement.insertBefore(c,s):s.parentElement.replaceChild(c,s)}})),n.add(AV(i));try{return IF(e,{...t,RETURN_TRUSTED_TYPE:!0})}finally{n.dispose()}}const aG=["align","autoplay","alt","checked","class","colspan","controls","data-code","data-href","disabled","draggable","height","href","loop","muted","playsinline","poster","rowspan","src","style","target","title","type","width","start"];function lG(o){const e=[Te.http,Te.https,Te.mailto,Te.data,Te.file,Te.vscodeFileResource,Te.vscodeRemote,Te.vscodeRemoteResource];return o.isTrusted&&e.push(Te.command),{config:{ALLOWED_TAGS:o.allowedTags??[...PV],ALLOWED_ATTR:aG,ALLOW_UNKNOWN_PROTOCOLS:!0},allowedSchemes:e}}function cG(o){return typeof o=="string"?o:dG(o)}function dG(o,e){let t=o.value??"";t.length>1e5&&(t=`${t.substr(0,1e5)}…`);const i=m7(t,{async:!1,renderer:fG.value}).replace(/&(#\d+|[a-zA-Z]+);/g,n=>hG.get(n)??n);return Bk({isTrusted:!1},i).toString()}const hG=new Map([[""",'"'],[" "," "],["&","&"],["'","'"],["<","<"],[">",">"]]);function uG(){const o=new g7;return o.code=({text:e})=>e,o.blockquote=({text:e})=>e+` -`,o.html=e=>"",o.heading=function({tokens:e}){return this.parser.parseInline(e)+` -`},o.hr=()=>"",o.list=function({items:e}){return e.map(t=>this.listitem(t)).join(` -`)+` -`},o.listitem=({text:e})=>e+` -`,o.paragraph=function({tokens:e}){return this.parser.parseInline(e)+` -`},o.table=function({header:e,rows:t}){return e.map(i=>this.tablecell(i)).join(" ")+` -`+t.map(i=>i.map(n=>this.tablecell(n)).join(" ")).join(` -`)+` -`},o.tablerow=({text:e})=>e,o.tablecell=function({tokens:e}){return this.parser.parseInline(e)},o.strong=({text:e})=>e,o.em=({text:e})=>e,o.codespan=({text:e})=>e,o.br=e=>` -`,o.del=({text:e})=>e,o.image=e=>"",o.text=({text:e})=>e,o.link=({text:e})=>e,o}const fG=new ua(o=>uG());function HC(o){let e="";return o.forEach(t=>{e+=t.raw}),e}function p7(o){if(o.tokens)for(let e=o.tokens.length-1;e>=0;e--){const t=o.tokens[e];if(t.type==="text"){const i=t.raw.split(` -`),n=i[i.length-1];if(n.includes("`"))return vG(o);if(n.includes("**"))return kG(o);if(n.match(/\*\w/))return wG(o);if(n.match(/(^|\s)__\w/))return DG(o);if(n.match(/(^|\s)_\w/))return yG(o);if(gG(n)||mG(n)&&o.tokens.slice(0,e).some(s=>s.type==="text"&&s.raw.match(/\[[^\]]*$/))){const s=o.tokens.slice(e+1);return s[0]?.type==="link"&&s[1]?.type==="text"&&s[1].raw.match(/^ *"[^"]*$/)||n.match(/^[^"]* +"[^"]*$/)?LG(o):SG(o)}else if(n.match(/(^|\s)\[\w*/))return xG(o)}}}function gG(o){return!!o.match(/(^|\s)\[.*\]\(\w*/)}function mG(o){return!!o.match(/^[^\[]*\]\([^\)]*$/)}function pG(o){const e=o.items[o.items.length-1],t=e.tokens?e.tokens[e.tokens.length-1]:void 0;let i;if(t?.type==="text"&&!("inRawBlock"in e)&&(i=p7(t)),!i||i.type!=="paragraph")return;const n=HC(o.items.slice(0,-1)),s=e.raw.match(/^(\s*(-|\d+\.|\*) +)/)?.[0];if(!s)return;const r=s+HC(e.tokens.slice(0,-1))+i.raw,a=sy(n+r)[0];if(a.type==="list")return a}const _G=3;function bG(o){for(let e=0;e<_G;e++){const t=CG(o);if(t)o=t;else break}return o}function CG(o){let e,t;for(e=0;e"u"&&r.match(/^\s*\|/)){const a=r.match(/(\|[^\|]+)(?=\||$)/g);a&&(i=a.length)}else if(typeof i=="number")if(r.match(/^\s*\|/)){if(s!==t.length-1)return;n=!0}else return}if(typeof i=="number"&&i>0){const s=n?t.slice(0,-1).join(` -`):e,r=!!s.match(/\|\s*$/),a=s+(r?"":"|")+` -|${" --- |".repeat(i)}`;return sy(a)}}function UA(o,e){return EF(o,e),_e(()=>NF(o))}const Ga=class Ga{static createEmpty(e,t){const i=Ga.defaultTokenMetadata,n=new Uint32Array(2);return n[0]=e.length,n[1]=i,new Ga(n,e,t)}static createFromTextAndMetadata(e,t){let i=0,n="";const s=new Array;for(const{text:r,metadata:a}of e)s.push(i+r.length,a),i+=r.length,n+=r;return new Ga(new Uint32Array(s),n,t)}constructor(e,t,i){this._lineTokensBrand=void 0,this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=t,this.languageIdCodec=i}equals(e){return e instanceof Ga?this.slicedEquals(e,0,this._tokensCount):!1}slicedEquals(e,t,i){if(this._text!==e._text||this._tokensCount!==e._tokensCount)return!1;const n=t<<1,s=n+(i<<1);for(let r=n;r0?this._tokens[e-1<<1]:0}getMetadata(e){return this._tokens[(e<<1)+1]}getLanguageId(e){const t=this._tokens[(e<<1)+1],i=sr.getLanguageId(t);return this.languageIdCodec.decodeLanguageId(i)}getStandardTokenType(e){const t=this._tokens[(e<<1)+1];return sr.getTokenType(t)}getForeground(e){const t=this._tokens[(e<<1)+1];return sr.getForeground(t)}getClassName(e){const t=this._tokens[(e<<1)+1];return sr.getClassNameFromMetadata(t)}getInlineStyle(e,t){const i=this._tokens[(e<<1)+1];return sr.getInlineStyleFromMetadata(i,t)}getPresentation(e){const t=this._tokens[(e<<1)+1];return sr.getPresentationFromMetadata(t)}getEndOffset(e){return this._tokens[e<<1]}findTokenIndexAtOffset(e){return Ga.findIndexInTokensArray(this._tokens,e)}inflate(){return this}sliceAndInflate(e,t,i){return new VT(this,e,t,i)}static convertToEndOffset(e,t){const n=(e.length>>>1)-1;for(let s=0;s>>1)-1;for(;it&&(n=s)}return i}withInserted(e){if(e.length===0)return this;let t=0,i=0,n="";const s=new Array;let r=0;for(;;){const a=tr){n+=this._text.substring(r,l.offset);const c=this._tokens[(t<<1)+1];s.push(n.length,c),r=l.offset}n+=l.text,s.push(n.length,l.tokenMetadata),i++}else break}return new Ga(new Uint32Array(s),n,this.languageIdCodec)}getTokenText(e){const t=this.getStartOffset(e),i=this.getEndOffset(e);return this._text.substring(t,i)}forEach(e){const t=this.getCount();for(let i=0;i>>0;let Ni=Ga;class VT{constructor(e,t,i,n){this._source=e,this._startOffset=t,this._endOffset=i,this._deltaOffset=n,this._firstTokenIndex=e.findTokenIndexAtOffset(t),this.languageIdCodec=e.languageIdCodec,this._tokensCount=0;for(let s=this._firstTokenIndex,r=e.getCount();s=i);s++)this._tokensCount++}getMetadata(e){return this._source.getMetadata(this._firstTokenIndex+e)}getLanguageId(e){return this._source.getLanguageId(this._firstTokenIndex+e)}getLineContent(){return this._source.getLineContent().substring(this._startOffset,this._endOffset)}equals(e){return e instanceof VT?this._startOffset===e._startOffset&&this._endOffset===e._endOffset&&this._deltaOffset===e._deltaOffset&&this._source.slicedEquals(e._source,this._firstTokenIndex,this._tokensCount):!1}getCount(){return this._tokensCount}getStandardTokenType(e){return this._source.getStandardTokenType(this._firstTokenIndex+e)}getForeground(e){return this._source.getForeground(this._firstTokenIndex+e)}getEndOffset(e){const t=this._source.getEndOffset(this._firstTokenIndex+e);return Math.min(this._endOffset,t)-this._startOffset+this._deltaOffset}getClassName(e){return this._source.getClassName(this._firstTokenIndex+e)}getInlineStyle(e,t){return this._source.getInlineStyle(this._firstTokenIndex+e,t)}getPresentation(e){return this._source.getPresentation(this._firstTokenIndex+e)}findTokenIndexAtOffset(e){return this._source.findTokenIndexAtOffset(e+this._startOffset-this._deltaOffset)-this._firstTokenIndex}getTokenText(e){const t=this._firstTokenIndex+e,i=this._source.getStartOffset(t),n=this._source.getEndOffset(t);let s=this._source.getTokenText(t);return ithis._endOffset&&(s=s.substring(0,s.length-(n-this._endOffset))),s}forEach(e){for(let t=0;t>>0,new x0(t,e===null?a_:e)}const $A={getInitialState:()=>a_,tokenizeEncoded:(o,e,t)=>zT(0,t)};async function EG(o,e,t){if(!t)return KA(e,o.languageIdCodec,$A);const i=await si.getOrCreate(t);return KA(e,o.languageIdCodec,i||$A)}function NG(o,e,t,i,n,s,r){let a="
    ",l=i,c=0,d=!0;for(let h=0,u=e.getCount();h0;)r&&d?(g+=" ",d=!1):(g+=" ",d=!0),_--;break}case 60:g+="<",d=!1;break;case 62:g+=">",d=!1;break;case 38:g+="&",d=!1;break;case 0:g+="�",d=!1;break;case 65279:case 8232:case 8233:case 133:g+="�",d=!1;break;case 13:g+="​",d=!1;break;case 32:r&&d?(g+=" ",d=!1):(g+=" ",d=!0);break;default:g+=String.fromCharCode(p),d=!1}}if(a+=`${g}`,f>n||l>=n)break}return a+="
    ",a}function KA(o,e,t){let i='
    ';const n=va(o);let s=t.getInitialState();for(let r=0,a=n.length;r0&&(i+="
    ");const c=t.tokenizeEncoded(l,!0,s);Ni.convertToEndOffset(c.tokens,l.length);const h=new Ni(c.tokens,l,e).inflate();let u=0;for(let f=0,g=h.getCount();f${Km(l.substring(u,_))}`,u=_}s=c.endState}return i+="
    ",i}var TG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},jA=function(o,e){return function(t,i){e(t,i,o)}},Wk,sh;let Wh=(sh=class{constructor(e,t,i){this._options=e,this._languageService=t,this._openerService=i,this._onDidRenderAsync=new A,this.onDidRenderAsync=this._onDidRenderAsync.event}dispose(){this._onDidRenderAsync.dispose()}render(e,t,i){if(!e)return{element:document.createElement("span"),dispose:()=>{}};const n=new X,s=n.add(oy(e,{...this._getRenderOptions(e,n),...t},i));return s.element.classList.add("rendered-markdown"),{element:s.element,dispose:()=>n.dispose()}}_getRenderOptions(e,t){return{codeBlockRenderer:async(i,n)=>{let s;i?s=this._languageService.getLanguageIdByLanguageName(i):this._options.editor&&(s=this._options.editor.getModel()?.getLanguageId()),s||(s=Bs);const r=await EG(this._languageService,n,s),a=document.createElement("span");if(a.innerHTML=Wk._ttpTokenizer?.createHTML(r)??r,this._options.editor){const l=this._options.editor.getOption(50);qi(a,l)}else this._options.codeBlockFontFamily&&(a.style.fontFamily=this._options.codeBlockFontFamily);return this._options.codeBlockFontSize!==void 0&&(a.style.fontSize=this._options.codeBlockFontSize),a},asyncRenderCallback:()=>this._onDidRenderAsync.fire(),actionHandler:{callback:i=>UT(this._openerService,i,e.isTrusted),disposables:t}}}},Wk=sh,sh._ttpTokenizer=Kc("tokenizeToString",{createHTML(e){return e}}),sh);Wh=Wk=TG([jA(1,qt),jA(2,Vo)],Wh);async function UT(o,e,t){try{return await o.open(e,{fromUserGesture:!0,allowContributedOpeners:!0,allowCommands:MG(t)})}catch(i){return Ze(i),!1}}function MG(o){return o===!0?!0:o&&Array.isArray(o.enabledCommands)?o.enabledCommands:!1}const ms=He("accessibilityService"),RG=new le("accessibilityModeEnabled",!1),qA=2e4;let yd,R1,Hk,A1,Vk;function AG(o){yd=document.createElement("div"),yd.className="monaco-aria-container";const e=()=>{const i=document.createElement("div");return i.className="monaco-alert",i.setAttribute("role","alert"),i.setAttribute("aria-atomic","true"),yd.appendChild(i),i};R1=e(),Hk=e();const t=()=>{const i=document.createElement("div");return i.className="monaco-status",i.setAttribute("aria-live","polite"),i.setAttribute("aria-atomic","true"),yd.appendChild(i),i};A1=t(),Vk=t(),o.appendChild(yd)}function El(o){yd&&(R1.textContent!==o?(xn(Hk),VC(R1,o)):(xn(R1),VC(Hk,o)))}function Hh(o){yd&&(A1.textContent!==o?(xn(Vk),VC(A1,o)):(xn(A1),VC(Vk,o)))}function VC(o,e){xn(o),e.length>qA&&(e=e.substr(0,qA)),o.textContent=e,o.style.visibility="hidden",o.style.visibility="visible"}var PG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fm=function(o,e){return function(t,i){e(t,i,o)}};const Nr=ce;let zk=class extends xr{get _targetWindow(){return fe(this._target.targetElements[0])}get _targetDocumentElement(){return fe(this._target.targetElements[0]).document.documentElement}get isDisposed(){return this._isDisposed}get isMouseIn(){return this._lockMouseTracker.isMouseIn}get domNode(){return this._hover.containerDomNode}get onDispose(){return this._onDispose.event}get onRequestLayout(){return this._onRequestLayout.event}get anchor(){return this._hoverPosition===2?0:1}get x(){return this._x}get y(){return this._y}get isLocked(){return this._isLocked}set isLocked(e){this._isLocked!==e&&(this._isLocked=e,this._hoverContainer.classList.toggle("locked",this._isLocked))}constructor(e,t,i,n,s,r){super(),this._keybindingService=t,this._configurationService=i,this._openerService=n,this._instantiationService=s,this._accessibilityService=r,this._messageListeners=new X,this._isDisposed=!1,this._forcePosition=!1,this._x=0,this._y=0,this._isLocked=!1,this._enableFocusTraps=!1,this._addedFocusTrap=!1,this._onDispose=this._register(new A),this._onRequestLayout=this._register(new A),this._linkHandler=e.linkHandler||(u=>UT(this._openerService,u,ra(e.content)?e.content.isTrusted:void 0)),this._target="targetElements"in e.target?e.target:new OG(e.target),this._hoverPointer=e.appearance?.showPointer?Nr("div.workbench-hover-pointer"):void 0,this._hover=this._register(new RT),this._hover.containerDomNode.classList.add("workbench-hover","fadeIn"),e.appearance?.compact&&this._hover.containerDomNode.classList.add("workbench-hover","compact"),e.appearance?.skipFadeInAnimation&&this._hover.containerDomNode.classList.add("skip-fade-in"),e.additionalClasses&&this._hover.containerDomNode.classList.add(...e.additionalClasses),e.position?.forcePosition&&(this._forcePosition=!0),e.trapFocus&&(this._enableFocusTraps=!0),this._hoverPosition=e.position?.hoverPosition??3,this.onmousedown(this._hover.containerDomNode,u=>u.stopPropagation()),this.onkeydown(this._hover.containerDomNode,u=>{u.equals(9)&&this.dispose()}),this._register(U(this._targetWindow,"blur",()=>this.dispose()));const a=Nr("div.hover-row.markdown-hover"),l=Nr("div.hover-contents");if(typeof e.content=="string")l.textContent=e.content,l.style.whiteSpace="pre-wrap";else if(Ei(e.content))l.appendChild(e.content),l.classList.add("html-hover-contents");else{const u=e.content,f=this._instantiationService.createInstance(Wh,{codeBlockFontFamily:this._configurationService.getValue("editor").fontFamily||ls.fontFamily}),{element:g}=f.render(u,{actionHandler:{callback:p=>this._linkHandler(p),disposables:this._messageListeners},asyncRenderCallback:()=>{l.classList.add("code-hover-contents"),this.layout(),this._onRequestLayout.fire()}});l.appendChild(g)}if(a.appendChild(l),this._hover.contentsDomNode.appendChild(a),e.actions&&e.actions.length>0){const u=Nr("div.hover-row.status-bar"),f=Nr("div.actions");e.actions.forEach(g=>{const p=this._keybindingService.lookupKeybinding(g.commandId),_=p?p.getLabel():null;ey.render(f,{label:g.label,commandId:g.commandId,run:b=>{g.run(b),this.dispose()},iconClass:g.iconClass},_)}),u.appendChild(f),this._hover.containerDomNode.appendChild(u)}this._hoverContainer=Nr("div.workbench-hover-container"),this._hoverPointer&&this._hoverContainer.appendChild(this._hoverPointer),this._hoverContainer.appendChild(this._hover.containerDomNode);let c;if(e.actions&&e.actions.length>0?c=!1:e.persistence?.hideOnHover===void 0?c=typeof e.content=="string"||ra(e.content)&&!e.content.value.includes("](")&&!e.content.value.includes(""):c=e.persistence.hideOnHover,e.appearance?.showHoverHint){const u=Nr("div.hover-row.status-bar"),f=Nr("div.info");f.textContent=m("hoverhint","Hold {0} key to mouse over",Ue?"Option":"Alt"),u.appendChild(f),this._hover.containerDomNode.appendChild(u)}const d=[...this._target.targetElements];c||d.push(this._hoverContainer);const h=this._register(new GA(d));if(this._register(h.onMouseOut(()=>{this._isLocked||this.dispose()})),c){const u=[...this._target.targetElements,this._hoverContainer];this._lockMouseTracker=this._register(new GA(u)),this._register(this._lockMouseTracker.onMouseOut(()=>{this._isLocked||this.dispose()}))}else this._lockMouseTracker=h}addFocusTrap(){if(!this._enableFocusTraps||this._addedFocusTrap)return;this._addedFocusTrap=!0;const e=this._hover.containerDomNode,t=this.findLastFocusableChild(this._hover.containerDomNode);if(t){const i=iT(this._hoverContainer,Nr("div")),n=Z(this._hoverContainer,Nr("div"));i.tabIndex=0,n.tabIndex=0,this._register(U(n,"focus",s=>{e.focus(),s.preventDefault()})),this._register(U(i,"focus",s=>{t.focus(),s.preventDefault()}))}}findLastFocusableChild(e){if(e.hasChildNodes())for(let t=0;t=0)return s}const n=this.findLastFocusableChild(i);if(n)return n}}render(e){e.appendChild(this._hoverContainer);const i=this._hoverContainer.contains(this._hoverContainer.ownerDocument.activeElement)&&e7(this._configurationService.getValue("accessibility.verbosity.hover")===!0&&this._accessibilityService.isScreenReaderOptimized(),this._keybindingService.lookupKeybinding("editor.action.accessibleView")?.getAriaLabel());i&&Hh(i),this.layout(),this.addFocusTrap()}layout(){this._hover.containerDomNode.classList.remove("right-aligned"),this._hover.contentsDomNode.style.maxHeight="";const e=d=>{const h=AF(d),u=d.getBoundingClientRect();return{top:u.top*h,bottom:u.bottom*h,right:u.right*h,left:u.left*h}},t=this._target.targetElements.map(d=>e(d)),{top:i,right:n,bottom:s,left:r}=t[0],a=n-r,l=s-i,c={top:i,right:n,bottom:s,left:r,width:a,height:l,center:{x:r+a/2,y:i+l/2}};if(this.adjustHorizontalHoverPosition(c),this.adjustVerticalHoverPosition(c),this.adjustHoverMaxHeight(c),this._hoverContainer.style.padding="",this._hoverContainer.style.margin="",this._hoverPointer){switch(this._hoverPosition){case 1:c.left+=3,c.right+=3,this._hoverContainer.style.paddingLeft="3px",this._hoverContainer.style.marginLeft="-3px";break;case 0:c.left-=3,c.right-=3,this._hoverContainer.style.paddingRight="3px",this._hoverContainer.style.marginRight="-3px";break;case 2:c.top+=3,c.bottom+=3,this._hoverContainer.style.paddingTop="3px",this._hoverContainer.style.marginTop="-3px";break;case 3:c.top-=3,c.bottom-=3,this._hoverContainer.style.paddingBottom="3px",this._hoverContainer.style.marginBottom="-3px";break}c.center.x=c.left+a/2,c.center.y=c.top+l/2}this.computeXCordinate(c),this.computeYCordinate(c),this._hoverPointer&&(this._hoverPointer.classList.remove("top"),this._hoverPointer.classList.remove("left"),this._hoverPointer.classList.remove("right"),this._hoverPointer.classList.remove("bottom"),this.setHoverPointerPosition(c)),this._hover.onContentsChanged()}computeXCordinate(e){const t=this._hover.containerDomNode.clientWidth+2;this._target.x!==void 0?this._x=this._target.x:this._hoverPosition===1?this._x=e.right:this._hoverPosition===0?this._x=e.left-t:(this._hoverPointer?this._x=e.center.x-this._hover.containerDomNode.clientWidth/2:this._x=e.left,this._x+t>=this._targetDocumentElement.clientWidth&&(this._hover.containerDomNode.classList.add("right-aligned"),this._x=Math.max(this._targetDocumentElement.clientWidth-t-2,this._targetDocumentElement.clientLeft))),this._xthis._targetWindow.innerHeight&&(this._y=e.bottom)}adjustHorizontalHoverPosition(e){if(this._target.x!==void 0)return;const t=this._hoverPointer?3:0;if(this._forcePosition){const i=t+2;this._hoverPosition===1?this._hover.containerDomNode.style.maxWidth=`${this._targetDocumentElement.clientWidth-e.right-i}px`:this._hoverPosition===0&&(this._hover.containerDomNode.style.maxWidth=`${e.left-i}px`);return}this._hoverPosition===1?this._targetDocumentElement.clientWidth-e.right=this._hover.containerDomNode.clientWidth+t?this._hoverPosition=0:this._hoverPosition=2):this._hoverPosition===0&&(e.left=this._hover.containerDomNode.clientWidth+t?this._hoverPosition=1:this._hoverPosition=2),e.left-this._hover.containerDomNode.clientWidth-t<=this._targetDocumentElement.clientLeft&&(this._hoverPosition=1))}adjustVerticalHoverPosition(e){if(this._target.y!==void 0||this._forcePosition)return;const t=this._hoverPointer?3:0;this._hoverPosition===3?e.top-this._hover.containerDomNode.clientHeight-t<0&&(this._hoverPosition=2):this._hoverPosition===2&&e.bottom+this._hover.containerDomNode.clientHeight+t>this._targetWindow.innerHeight&&(this._hoverPosition=3)}adjustHoverMaxHeight(e){let t=this._targetWindow.innerHeight/2;if(this._forcePosition){const i=(this._hoverPointer?3:0)+2;this._hoverPosition===3?t=Math.min(t,e.top-i):this._hoverPosition===2&&(t=Math.min(t,this._targetWindow.innerHeight-e.bottom-i))}if(this._hover.containerDomNode.style.maxHeight=`${t}px`,this._hover.contentsDomNode.clientHeighte.height?this._hoverPointer.style.top=`${e.center.y-(this._y-t)-3}px`:this._hoverPointer.style.top=`${Math.round(t/2)-3}px`;break}case 3:case 2:{this._hoverPointer.classList.add(this._hoverPosition===3?"bottom":"top");const t=this._hover.containerDomNode.clientWidth;let i=Math.round(t/2)-3;const n=this._x+i;(ne.right)&&(i=e.center.x-this._x-3),this._hoverPointer.style.left=`${i}px`;break}}}focus(){this._hover.containerDomNode.focus()}dispose(){this._isDisposed||(this._onDispose.fire(),this._hoverContainer.remove(),this._messageListeners.dispose(),this._target.dispose(),super.dispose()),this._isDisposed=!0}};zk=PG([fm(1,vt),fm(2,lt),fm(3,Vo),fm(4,ke),fm(5,ms)],zk);class GA extends xr{get onMouseOut(){return this._onMouseOut.event}get isMouseIn(){return this._isMouseIn}constructor(e){super(),this._elements=e,this._isMouseIn=!0,this._onMouseOut=this._register(new A),this._elements.forEach(t=>this.onmouseover(t,()=>this._onTargetMouseOver(t))),this._elements.forEach(t=>this.onmouseleave(t,()=>this._onTargetMouseLeave(t)))}_onTargetMouseOver(e){this._isMouseIn=!0,this._clearEvaluateMouseStateTimeout(e)}_onTargetMouseLeave(e){this._isMouseIn=!1,this._evaluateMouseState(e)}_evaluateMouseState(e){this._clearEvaluateMouseStateTimeout(e),this._mouseTimeout=fe(e).setTimeout(()=>this._fireIfMouseOutside(),0)}_clearEvaluateMouseStateTimeout(e){this._mouseTimeout&&(fe(e).clearTimeout(this._mouseTimeout),this._mouseTimeout=void 0)}_fireIfMouseOutside(){this._isMouseIn||this._onMouseOut.fire()}}class OG{constructor(e){this._element=e,this.targetElements=[this._element]}dispose(){}}var Yi;(function(o){function e(s,r){if(s.start>=r.end||r.start>=s.end)return{start:0,end:0};const a=Math.max(s.start,r.start),l=Math.min(s.end,r.end);return l-a<=0?{start:0,end:0}:{start:a,end:l}}o.intersect=e;function t(s){return s.end-s.start<=0}o.isEmpty=t;function i(s,r){return!t(e(s,r))}o.intersects=i;function n(s,r){const a=[],l={start:s.start,end:Math.min(r.start,s.end)},c={start:Math.max(r.end,s.start),end:s.end};return t(l)||a.push(l),t(c)||a.push(c),a}o.relativeComplement=n})(Yi||(Yi={}));function FG(o){const e=o;return!!e&&typeof e.x=="number"&&typeof e.y=="number"}var oc;(function(o){o[o.AVOID=0]="AVOID",o[o.ALIGN=1]="ALIGN"})(oc||(oc={}));function nf(o,e,t){const i=t.mode===oc.ALIGN?t.offset:t.offset+t.size,n=t.mode===oc.ALIGN?t.offset+t.size:t.offset;return t.position===0?e<=o-i?i:e<=n?n-e:Math.max(o-e,0):e<=n?n-e:e<=o-i?i:0}const Lf=class Lf extends z{constructor(e,t){super(),this.container=null,this.useFixedPosition=!1,this.useShadowDOM=!1,this.delegate=null,this.toDisposeOnClean=z.None,this.toDisposeOnSetContainer=z.None,this.shadowRoot=null,this.shadowRootHostElement=null,this.view=ce(".context-view"),Cn(this.view),this.setContainer(e,t),this._register(_e(()=>this.setContainer(null,1)))}setContainer(e,t){this.useFixedPosition=t!==1;const i=this.useShadowDOM;if(this.useShadowDOM=t===3,!(e===this.container&&i===this.useShadowDOM)&&(this.container&&(this.toDisposeOnSetContainer.dispose(),this.view.remove(),this.shadowRoot&&(this.shadowRoot=null,this.shadowRootHostElement?.remove(),this.shadowRootHostElement=null),this.container=null),e)){if(this.container=e,this.useShadowDOM){this.shadowRootHostElement=ce(".shadow-root-host"),this.container.appendChild(this.shadowRootHostElement),this.shadowRoot=this.shadowRootHostElement.attachShadow({mode:"open"});const s=document.createElement("style");s.textContent=BG,this.shadowRoot.appendChild(s),this.shadowRoot.appendChild(this.view),this.shadowRoot.appendChild(ce("slot"))}else this.container.appendChild(this.view);const n=new X;Lf.BUBBLE_UP_EVENTS.forEach(s=>{n.add(jt(this.container,s,r=>{this.onDOMEvent(r,!1)}))}),Lf.BUBBLE_DOWN_EVENTS.forEach(s=>{n.add(jt(this.container,s,r=>{this.onDOMEvent(r,!0)},!0))}),this.toDisposeOnSetContainer=n}}show(e){this.isVisible()&&this.hide(),xn(this.view),this.view.className="context-view monaco-component",this.view.style.top="0px",this.view.style.left="0px",this.view.style.zIndex=`${2575+(e.layer??0)}`,this.view.style.position=this.useFixedPosition?"fixed":"absolute",ns(this.view),this.toDisposeOnClean=e.render(this.view)||z.None,this.delegate=e,this.doLayout(),this.delegate.focus?.()}getViewElement(){return this.view}layout(){if(this.isVisible()){if(this.delegate.canRelayout===!1&&!(Tc&&KN.pointerEvents)){this.hide();return}this.delegate?.layout?.(),this.doLayout()}}doLayout(){if(!this.isVisible())return;const e=this.delegate.getAnchor();let t;if(Ei(e)){const u=gi(e),f=AF(e);t={top:u.top*f,left:u.left*f,width:u.width*f,height:u.height*f}}else FG(e)?t={top:e.y,left:e.x,width:e.width||1,height:e.height||2}:t={top:e.posy,left:e.posx,width:2,height:2};const i=qp(this.view),n=Hd(this.view),s=this.delegate.anchorPosition||0,r=this.delegate.anchorAlignment||0,a=this.delegate.anchorAxisAlignment||0;let l,c;const d=km();if(a===0){const u={offset:t.top-d.pageYOffset,size:t.height,position:s===0?0:1},f={offset:t.left,size:t.width,position:r===0?0:1,mode:oc.ALIGN};l=nf(d.innerHeight,n,u)+d.pageYOffset,Yi.intersects({start:l,end:l+n},{start:u.offset,end:u.offset+u.size})&&(f.mode=oc.AVOID),c=nf(d.innerWidth,i,f)}else{const u={offset:t.left,size:t.width,position:r===0?0:1},f={offset:t.top,size:t.height,position:s===0?0:1,mode:oc.ALIGN};c=nf(d.innerWidth,i,u),Yi.intersects({start:c,end:c+i},{start:u.offset,end:u.offset+u.size})&&(f.mode=oc.AVOID),l=nf(d.innerHeight,n,f)+d.pageYOffset}this.view.classList.remove("top","bottom","left","right"),this.view.classList.add(s===0?"bottom":"top"),this.view.classList.add(r===0?"left":"right"),this.view.classList.toggle("fixed",this.useFixedPosition);const h=gi(this.container);this.view.style.top=`${l-(this.useFixedPosition?gi(this.view).top:h.top)}px`,this.view.style.left=`${c-(this.useFixedPosition?gi(this.view).left:h.left)}px`,this.view.style.width="initial"}hide(e){const t=this.delegate;this.delegate=null,t?.onHide&&t.onHide(e),this.toDisposeOnClean.dispose(),Cn(this.view)}isVisible(){return!!this.delegate}onDOMEvent(e,t){this.delegate&&(this.delegate.onDOMEvent?this.delegate.onDOMEvent(e,fe(e).document.activeElement):t&&!yi(e.target,this.container)&&this.hide())}dispose(){this.hide(),super.dispose()}};Lf.BUBBLE_UP_EVENTS=["click","keydown","focus","blur"],Lf.BUBBLE_DOWN_EVENTS=["click"];let Uk=Lf;const BG=` - :host { - all: initial; /* 1st rule so subsequent properties are reset. */ - } - - .codicon[class*='codicon-'] { - font: normal normal normal 16px/1 codicon; - display: inline-block; - text-decoration: none; - text-rendering: auto; - text-align: center; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - user-select: none; - -webkit-user-select: none; - -ms-user-select: none; - } - - :host { - font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "HelveticaNeue-Light", system-ui, "Ubuntu", "Droid Sans", sans-serif; - } - - :host-context(.mac) { font-family: -apple-system, BlinkMacSystemFont, sans-serif; } - :host-context(.mac:lang(zh-Hans)) { font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", sans-serif; } - :host-context(.mac:lang(zh-Hant)) { font-family: -apple-system, BlinkMacSystemFont, "PingFang TC", sans-serif; } - :host-context(.mac:lang(ja)) { font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic Pro", sans-serif; } - :host-context(.mac:lang(ko)) { font-family: -apple-system, BlinkMacSystemFont, "Nanum Gothic", "Apple SD Gothic Neo", "AppleGothic", sans-serif; } - - :host-context(.windows) { font-family: "Segoe WPC", "Segoe UI", sans-serif; } - :host-context(.windows:lang(zh-Hans)) { font-family: "Segoe WPC", "Segoe UI", "Microsoft YaHei", sans-serif; } - :host-context(.windows:lang(zh-Hant)) { font-family: "Segoe WPC", "Segoe UI", "Microsoft Jhenghei", sans-serif; } - :host-context(.windows:lang(ja)) { font-family: "Segoe WPC", "Segoe UI", "Yu Gothic UI", "Meiryo UI", sans-serif; } - :host-context(.windows:lang(ko)) { font-family: "Segoe WPC", "Segoe UI", "Malgun Gothic", "Dotom", sans-serif; } - - :host-context(.linux) { font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif; } - :host-context(.linux:lang(zh-Hans)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans SC", "Source Han Sans CN", "Source Han Sans", sans-serif; } - :host-context(.linux:lang(zh-Hant)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans TC", "Source Han Sans TW", "Source Han Sans", sans-serif; } - :host-context(.linux:lang(ja)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans J", "Source Han Sans JP", "Source Han Sans", sans-serif; } - :host-context(.linux:lang(ko)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans K", "Source Han Sans JR", "Source Han Sans", "UnDotum", "FBaekmuk Gulim", sans-serif; } -`;var WG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},HG=function(o,e){return function(t,i){e(t,i,o)}};let zC=class extends z{constructor(e){super(),this.layoutService=e,this.contextView=this._register(new Uk(this.layoutService.mainContainer,1)),this.layout(),this._register(e.onDidLayoutContainer(()=>this.layout()))}showContextView(e,t,i){let n;t?t===this.layoutService.getContainer(fe(t))?n=1:i?n=3:n=2:n=1,this.contextView.setContainer(t??this.layoutService.activeContainer,n),this.contextView.show(e);const s={close:()=>{this.openContextView===s&&this.hideContextView()}};return this.openContextView=s,s}layout(){this.contextView.layout()}hideContextView(e){this.contextView.hide(e),this.openContextView=void 0}};zC=WG([HG(0,jc)],zC);class VG extends zC{getContextViewElement(){return this.contextView.getViewElement()}}class zG{constructor(e,t,i){this.hoverDelegate=e,this.target=t,this.fadeInAnimation=i}async update(e,t,i){if(this._cancellationTokenSource&&(this._cancellationTokenSource.dispose(!0),this._cancellationTokenSource=void 0),this.isDisposed)return;let n;if(e===void 0||Os(e)||Ei(e))n=e;else if(!tC(e.markdown))n=e.markdown??e.markdownNotSupportedFallback;else{this._hoverWidget||this.show(m("iconLabel.loading","Loading..."),t,i),this._cancellationTokenSource=new In;const s=this._cancellationTokenSource.token;if(n=await e.markdown(s),n===void 0&&(n=e.markdownNotSupportedFallback),this.isDisposed||s.isCancellationRequested)return}this.show(n,t,i)}show(e,t,i){const n=this._hoverWidget;if(this.hasContent(e)){const s={content:e,target:this.target,actions:i?.actions,linkHandler:i?.linkHandler,trapFocus:i?.trapFocus,appearance:{showPointer:this.hoverDelegate.placement==="element",skipFadeInAnimation:!this.fadeInAnimation||!!n,showHoverHint:i?.appearance?.showHoverHint},position:{hoverPosition:2}};this._hoverWidget=this.hoverDelegate.showHover(s,t)}n?.dispose()}hasContent(e){return e?ra(e)?!!e.value:!0:!1}get isDisposed(){return this._hoverWidget?.isDisposed}dispose(){this._hoverWidget?.dispose(),this._cancellationTokenSource?.dispose(!0),this._cancellationTokenSource=void 0}}var UG=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},gm=function(o,e){return function(t,i){e(t,i,o)}};let $k=class extends z{constructor(e,t,i,n,s){super(),this._instantiationService=e,this._keybindingService=i,this._layoutService=n,this._accessibilityService=s,this._managedHovers=new Map,t.onDidShowContextMenu(()=>this.hideHover()),this._contextViewHandler=this._register(new zC(this._layoutService))}showHover(e,t,i){if(ZA(this._currentHoverOptions)===ZA(e)||this._currentHover&&this._currentHoverOptions?.persistence?.sticky)return;this._currentHoverOptions=e,this._lastHoverOptions=e;const n=e.trapFocus||this._accessibilityService.isScreenReaderOptimized(),s=Xi();i||(n&&s?s.classList.contains("monaco-hover")||(this._lastFocusedElementBeforeOpen=s):this._lastFocusedElementBeforeOpen=void 0);const r=new X,a=this._instantiationService.createInstance(zk,e);if(e.persistence?.sticky&&(a.isLocked=!0),a.onDispose(()=>{this._currentHover?.domNode&&OF(this._currentHover.domNode)&&this._lastFocusedElementBeforeOpen?.focus(),this._currentHoverOptions===e&&(this._currentHoverOptions=void 0),r.dispose()},void 0,r),!e.container){const l=Ei(e.target)?e.target:e.target.targetElements[0];e.container=this._layoutService.getContainer(fe(l))}if(this._contextViewHandler.showContextView(new $G(a,t),e.container),a.onRequestLayout(()=>this._contextViewHandler.layout(),void 0,r),e.persistence?.sticky)r.add(U(fe(e.container).document,ee.MOUSE_DOWN,l=>{yi(l.target,a.domNode)||this.doHideHover()}));else{if("targetElements"in e.target)for(const c of e.target.targetElements)r.add(U(c,ee.CLICK,()=>this.hideHover()));else r.add(U(e.target,ee.CLICK,()=>this.hideHover()));const l=Xi();if(l){const c=fe(l).document;r.add(U(l,ee.KEY_DOWN,d=>this._keyDown(d,a,!!e.persistence?.hideOnKeyDown))),r.add(U(c,ee.KEY_DOWN,d=>this._keyDown(d,a,!!e.persistence?.hideOnKeyDown))),r.add(U(l,ee.KEY_UP,d=>this._keyUp(d,a))),r.add(U(c,ee.KEY_UP,d=>this._keyUp(d,a)))}}if("IntersectionObserver"in _t){const l=new IntersectionObserver(d=>this._intersectionChange(d,a),{threshold:0}),c="targetElements"in e.target?e.target.targetElements[0]:e.target;l.observe(c),r.add(_e(()=>l.disconnect()))}return this._currentHover=a,a}hideHover(){this._currentHover?.isLocked||!this._currentHoverOptions||this.doHideHover()}doHideHover(){this._currentHover=void 0,this._currentHoverOptions=void 0,this._contextViewHandler.hideContextView()}_intersectionChange(e,t){e[e.length-1].isIntersecting||t.dispose()}showAndFocusLastHover(){this._lastHoverOptions&&this.showHover(this._lastHoverOptions,!0,!0)}_keyDown(e,t,i){if(e.key==="Alt"){t.isLocked=!0;return}const n=new Nt(e);this._keybindingService.resolveKeyboardEvent(n).getSingleModifierDispatchChords().some(r=>!!r)||this._keybindingService.softDispatch(n,n.target).kind!==0||i&&(!this._currentHoverOptions?.trapFocus||e.key!=="Tab")&&(this.hideHover(),this._lastFocusedElementBeforeOpen?.focus())}_keyUp(e,t){e.key==="Alt"&&(t.isLocked=!1,t.isMouseIn||(this.hideHover(),this._lastFocusedElementBeforeOpen?.focus()))}setupManagedHover(e,t,i,n){t.setAttribute("custom-hover","true"),t.title!==""&&(console.warn("HTML element already has a title attribute, which will conflict with the custom hover. Please remove the title attribute."),console.trace("Stack trace:",t.title),t.title="");let s,r;const a=(w,v)=>{const y=r!==void 0;w&&(r?.dispose(),r=void 0),v&&(s?.dispose(),s=void 0),y&&(e.onDidHideHover?.(),r=void 0)},l=(w,v,y,x)=>new wr(async()=>{(!r||r.isDisposed)&&(r=new zG(e,y||t,w>0),await r.update(typeof i=="function"?i():i,v,{...n,trapFocus:x}))},w);let c=!1;const d=U(t,ee.MOUSE_DOWN,()=>{c=!0,a(!0,!0)},!0),h=U(t,ee.MOUSE_UP,()=>{c=!1},!0),u=U(t,ee.MOUSE_LEAVE,w=>{c=!1,a(!1,w.fromElement===t)},!0),f=w=>{if(s)return;const v=new X,y={targetElements:[t],dispose:()=>{}};if(e.placement===void 0||e.placement==="mouse"){const x=L=>{y.x=L.x+10,Ei(L.target)&&YA(L.target,t)!==t&&a(!0,!0)};v.add(U(t,ee.MOUSE_MOVE,x,!0))}s=v,!(Ei(w.target)&&YA(w.target,t)!==t)&&v.add(l(e.delay,!1,y))},g=U(t,ee.MOUSE_OVER,f,!0),p=()=>{if(c||s)return;const w={targetElements:[t],dispose:()=>{}},v=new X,y=()=>a(!0,!0);v.add(U(t,ee.BLUR,y,!0)),v.add(l(e.delay,!1,w)),s=v};let _;const b=t.tagName.toLowerCase();b!=="input"&&b!=="textarea"&&(_=U(t,ee.FOCUS,p,!0));const C={show:w=>{a(!1,!0),l(0,w,void 0,w)},hide:()=>{a(!0,!0)},update:async(w,v)=>{i=w,await r?.update(i,void 0,v)},dispose:()=>{this._managedHovers.delete(t),g.dispose(),u.dispose(),d.dispose(),h.dispose(),_?.dispose(),a(!0,!0)}};return this._managedHovers.set(t,C),C}showManagedHover(e){const t=this._managedHovers.get(e);t&&t.show(!0)}dispose(){this._managedHovers.forEach(e=>e.dispose()),super.dispose()}};$k=UG([gm(0,ke),gm(1,Lr),gm(2,vt),gm(3,jc),gm(4,ms)],$k);function ZA(o){if(o!==void 0)return o?.id??o}class $G{get anchorPosition(){return this._hover.anchor}constructor(e,t=!1){this._hover=e,this._focus=t,this.layer=1}render(e){return this._hover.render(e),this._focus&&this._hover.focus(),this._hover}getAnchor(){return{x:this._hover.x,y:this._hover.y}}layout(){this._hover.layout()}}function YA(o,e){for(e=e??fe(o).document.body;!o.hasAttribute("custom-hover")&&o!==e;)o=o.parentElement;return o}Qe(au,$k,1);Sr((o,e)=>{const t=o.getColor(z3);t&&(e.addRule(`.monaco-workbench .workbench-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${t.transparent(.5)}; }`),e.addRule(`.monaco-workbench .workbench-hover hr { border-top: 1px solid ${t.transparent(.5)}; }`))});const b7=He("IWorkspaceEditService");class $T{constructor(e){this.metadata=e}static convert(e){return e.edits.map(t=>{if(Xd.is(t))return Xd.lift(t);if(Ff.is(t))return Ff.lift(t);throw new Error("Unsupported edit")})}}class Xd extends $T{static is(e){return e instanceof Xd?!0:Oi(e)&&ve.isUri(e.resource)&&Oi(e.textEdit)}static lift(e){return e instanceof Xd?e:new Xd(e.resource,e.textEdit,e.versionId,e.metadata)}constructor(e,t,i=void 0,n){super(n),this.resource=e,this.textEdit=t,this.versionId=i}}class Ff extends $T{static is(e){return e instanceof Ff?!0:Oi(e)&&(!!e.newResource||!!e.oldResource)}static lift(e){return e instanceof Ff?e:new Ff(e.oldResource,e.newResource,e.options,e.metadata)}constructor(e,t,i={},n){super(n),this.oldResource=e,this.newResource=t,this.options=i}}const Vi={enableSplitViewResizing:!0,renderSideBySide:!0,renderMarginRevertIcon:!0,renderGutterMenu:!0,maxComputationTime:5e3,maxFileSize:50,ignoreTrimWhitespace:!0,renderIndicators:!0,originalEditable:!1,diffCodeLens:!1,renderOverviewRuler:!0,diffWordWrap:"inherit",diffAlgorithm:"advanced",accessibilityVerbose:!1,experimental:{showMoves:!1,showEmptyDecorations:!0,useTrueInlineView:!1},hideUnchangedRegions:{enabled:!1,contextLineCount:3,minimumLineCount:3,revealLineCount:20},isInEmbeddedEditor:!1,onlyShowAccessibleDiffViewer:!1,renderSideBySideInlineBreakpoint:900,useInlineViewWhenSpaceIsLimited:!0,compactMode:!1},KG=Object.freeze({id:"editor",order:5,type:"object",title:m("editorConfigurationTitle","Editor"),scope:5}),UC={...KG,properties:{"editor.tabSize":{type:"number",default:Qi.tabSize,minimum:1,markdownDescription:m("tabSize","The number of spaces a tab is equal to. This setting is overridden based on the file contents when {0} is on.","`#editor.detectIndentation#`")},"editor.indentSize":{anyOf:[{type:"string",enum:["tabSize"]},{type:"number",minimum:1}],default:"tabSize",markdownDescription:m("indentSize",'The number of spaces used for indentation or `"tabSize"` to use the value from `#editor.tabSize#`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.')},"editor.insertSpaces":{type:"boolean",default:Qi.insertSpaces,markdownDescription:m("insertSpaces","Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when {0} is on.","`#editor.detectIndentation#`")},"editor.detectIndentation":{type:"boolean",default:Qi.detectIndentation,markdownDescription:m("detectIndentation","Controls whether {0} and {1} will be automatically detected when a file is opened based on the file contents.","`#editor.tabSize#`","`#editor.insertSpaces#`")},"editor.trimAutoWhitespace":{type:"boolean",default:Qi.trimAutoWhitespace,description:m("trimAutoWhitespace","Remove trailing auto inserted whitespace.")},"editor.largeFileOptimizations":{type:"boolean",default:Qi.largeFileOptimizations,description:m("largeFileOptimizations","Special handling for large files to disable certain memory intensive features.")},"editor.wordBasedSuggestions":{enum:["off","currentDocument","matchingDocuments","allDocuments"],default:"matchingDocuments",enumDescriptions:[m("wordBasedSuggestions.off","Turn off Word Based Suggestions."),m("wordBasedSuggestions.currentDocument","Only suggest words from the active document."),m("wordBasedSuggestions.matchingDocuments","Suggest words from all open documents of the same language."),m("wordBasedSuggestions.allDocuments","Suggest words from all open documents.")],description:m("wordBasedSuggestions","Controls whether completions should be computed based on words in the document and from which documents they are computed.")},"editor.semanticHighlighting.enabled":{enum:[!0,!1,"configuredByTheme"],enumDescriptions:[m("semanticHighlighting.true","Semantic highlighting enabled for all color themes."),m("semanticHighlighting.false","Semantic highlighting disabled for all color themes."),m("semanticHighlighting.configuredByTheme","Semantic highlighting is configured by the current color theme's `semanticHighlighting` setting.")],default:"configuredByTheme",description:m("semanticHighlighting.enabled","Controls whether the semanticHighlighting is shown for the languages that support it.")},"editor.stablePeek":{type:"boolean",default:!1,markdownDescription:m("stablePeek","Keep peek editors open even when double-clicking their content or when hitting `Escape`.")},"editor.maxTokenizationLineLength":{type:"integer",default:2e4,description:m("maxTokenizationLineLength","Lines above this length will not be tokenized for performance reasons")},"editor.experimental.asyncTokenization":{type:"boolean",default:!0,description:m("editor.experimental.asyncTokenization","Controls whether the tokenization should happen asynchronously on a web worker."),tags:["experimental"]},"editor.experimental.asyncTokenizationLogging":{type:"boolean",default:!1,description:m("editor.experimental.asyncTokenizationLogging","Controls whether async tokenization should be logged. For debugging only.")},"editor.experimental.asyncTokenizationVerification":{type:"boolean",default:!1,description:m("editor.experimental.asyncTokenizationVerification","Controls whether async tokenization should be verified against legacy background tokenization. Might slow down tokenization. For debugging only."),tags:["experimental"]},"editor.experimental.treeSitterTelemetry":{type:"boolean",default:!1,markdownDescription:m("editor.experimental.treeSitterTelemetry","Controls whether tree sitter parsing should be turned on and telemetry collected. Setting `editor.experimental.preferTreeSitter` for specific languages will take precedence."),tags:["experimental"]},"editor.language.brackets":{type:["array","null"],default:null,description:m("schema.brackets","Defines the bracket symbols that increase or decrease the indentation."),items:{type:"array",items:[{type:"string",description:m("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:m("schema.closeBracket","The closing bracket character or string sequence.")}]}},"editor.language.colorizedBracketPairs":{type:["array","null"],default:null,description:m("schema.colorizedBracketPairs","Defines the bracket pairs that are colorized by their nesting level if bracket pair colorization is enabled."),items:{type:"array",items:[{type:"string",description:m("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:m("schema.closeBracket","The closing bracket character or string sequence.")}]}},"diffEditor.maxComputationTime":{type:"number",default:Vi.maxComputationTime,description:m("maxComputationTime","Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.")},"diffEditor.maxFileSize":{type:"number",default:Vi.maxFileSize,description:m("maxFileSize","Maximum file size in MB for which to compute diffs. Use 0 for no limit.")},"diffEditor.renderSideBySide":{type:"boolean",default:Vi.renderSideBySide,description:m("sideBySide","Controls whether the diff editor shows the diff side by side or inline.")},"diffEditor.renderSideBySideInlineBreakpoint":{type:"number",default:Vi.renderSideBySideInlineBreakpoint,description:m("renderSideBySideInlineBreakpoint","If the diff editor width is smaller than this value, the inline view is used.")},"diffEditor.useInlineViewWhenSpaceIsLimited":{type:"boolean",default:Vi.useInlineViewWhenSpaceIsLimited,description:m("useInlineViewWhenSpaceIsLimited","If enabled and the editor width is too small, the inline view is used.")},"diffEditor.renderMarginRevertIcon":{type:"boolean",default:Vi.renderMarginRevertIcon,description:m("renderMarginRevertIcon","When enabled, the diff editor shows arrows in its glyph margin to revert changes.")},"diffEditor.renderGutterMenu":{type:"boolean",default:Vi.renderGutterMenu,description:m("renderGutterMenu","When enabled, the diff editor shows a special gutter for revert and stage actions.")},"diffEditor.ignoreTrimWhitespace":{type:"boolean",default:Vi.ignoreTrimWhitespace,description:m("ignoreTrimWhitespace","When enabled, the diff editor ignores changes in leading or trailing whitespace.")},"diffEditor.renderIndicators":{type:"boolean",default:Vi.renderIndicators,description:m("renderIndicators","Controls whether the diff editor shows +/- indicators for added/removed changes.")},"diffEditor.codeLens":{type:"boolean",default:Vi.diffCodeLens,description:m("codeLens","Controls whether the editor shows CodeLens.")},"diffEditor.wordWrap":{type:"string",enum:["off","on","inherit"],default:Vi.diffWordWrap,markdownEnumDescriptions:[m("wordWrap.off","Lines will never wrap."),m("wordWrap.on","Lines will wrap at the viewport width."),m("wordWrap.inherit","Lines will wrap according to the {0} setting.","`#editor.wordWrap#`")]},"diffEditor.diffAlgorithm":{type:"string",enum:["legacy","advanced"],default:Vi.diffAlgorithm,markdownEnumDescriptions:[m("diffAlgorithm.legacy","Uses the legacy diffing algorithm."),m("diffAlgorithm.advanced","Uses the advanced diffing algorithm.")],tags:["experimental"]},"diffEditor.hideUnchangedRegions.enabled":{type:"boolean",default:Vi.hideUnchangedRegions.enabled,markdownDescription:m("hideUnchangedRegions.enabled","Controls whether the diff editor shows unchanged regions.")},"diffEditor.hideUnchangedRegions.revealLineCount":{type:"integer",default:Vi.hideUnchangedRegions.revealLineCount,markdownDescription:m("hideUnchangedRegions.revealLineCount","Controls how many lines are used for unchanged regions."),minimum:1},"diffEditor.hideUnchangedRegions.minimumLineCount":{type:"integer",default:Vi.hideUnchangedRegions.minimumLineCount,markdownDescription:m("hideUnchangedRegions.minimumLineCount","Controls how many lines are used as a minimum for unchanged regions."),minimum:1},"diffEditor.hideUnchangedRegions.contextLineCount":{type:"integer",default:Vi.hideUnchangedRegions.contextLineCount,markdownDescription:m("hideUnchangedRegions.contextLineCount","Controls how many lines are used as context when comparing unchanged regions."),minimum:1},"diffEditor.experimental.showMoves":{type:"boolean",default:Vi.experimental.showMoves,markdownDescription:m("showMoves","Controls whether the diff editor should show detected code moves.")},"diffEditor.experimental.showEmptyDecorations":{type:"boolean",default:Vi.experimental.showEmptyDecorations,description:m("showEmptyDecorations","Controls whether the diff editor shows empty decorations to see where characters got inserted or deleted.")},"diffEditor.experimental.useTrueInlineView":{type:"boolean",default:Vi.experimental.useTrueInlineView,description:m("useTrueInlineView","If enabled and the editor uses the inline view, word changes are rendered inline.")}}};function jG(o){return typeof o.type<"u"||typeof o.anyOf<"u"}for(const o of Zu){const e=o.schema;if(typeof e<"u")if(jG(e))UC.properties[`editor.${o.name}`]=e;else for(const t in e)Object.hasOwnProperty.call(e,t)&&(UC.properties[t]=e[t])}let Bb=null;function C7(){return Bb===null&&(Bb=Object.create(null),Object.keys(UC.properties).forEach(o=>{Bb[o]=!0})),Bb}function qG(o){return C7()[`editor.${o}`]||!1}function GG(o){return C7()[`diffEditor.${o}`]||!1}const ZG=Bi.as(su.Configuration);ZG.registerConfiguration(UC);class aa{static insert(e,t){return{range:new I(e.lineNumber,e.column,e.lineNumber,e.column),text:t,forceMoveMarkers:!0}}static delete(e){return{range:e,text:null}}static replace(e,t){return{range:e,text:t}}static replaceMove(e,t){return{range:e,text:t,forceMoveMarkers:!0}}}function Wb(o){return Object.isFrozen(o)?o:c6(o)}class Pi{static createEmptyModel(e){return new Pi({},[],[],void 0,e)}constructor(e,t,i,n,s){this._contents=e,this._keys=t,this._overrides=i,this.raw=n,this.logService=s,this.overrideConfigurations=new Map}get rawConfiguration(){if(!this._rawConfiguration)if(this.raw?.length){const e=this.raw.map(t=>{if(t instanceof Pi)return t;const i=new YG("",this.logService);return i.parseRaw(t),i.configurationModel});this._rawConfiguration=e.reduce((t,i)=>i===t?i:t.merge(i),e[0])}else this._rawConfiguration=this;return this._rawConfiguration}get contents(){return this._contents}get overrides(){return this._overrides}get keys(){return this._keys}isEmpty(){return this._keys.length===0&&Object.keys(this._contents).length===0&&this._overrides.length===0}getValue(e){return e?DR(this.contents,e):this.contents}inspect(e,t){const i=this;return{get value(){return Wb(i.rawConfiguration.getValue(e))},get override(){return t?Wb(i.rawConfiguration.getOverrideValue(e,t)):void 0},get merged(){return Wb(t?i.rawConfiguration.override(t).getValue(e):i.rawConfiguration.getValue(e))},get overrides(){const n=[];for(const{contents:s,identifiers:r,keys:a}of i.rawConfiguration.overrides){const l=new Pi(s,a,[],void 0,i.logService).getValue(e);l!==void 0&&n.push({identifiers:r,value:l})}return n.length?Wb(n):void 0}}}getOverrideValue(e,t){const i=this.getContentsForOverrideIdentifer(t);return i?e?DR(i,e):i:void 0}override(e){let t=this.overrideConfigurations.get(e);return t||(t=this.createOverrideConfigurationModel(e),this.overrideConfigurations.set(e,t)),t}merge(...e){const t=Ya(this.contents),i=Ya(this.overrides),n=[...this.keys],s=this.raw?.length?[...this.raw]:[this];for(const r of e)if(s.push(...r.raw?.length?r.raw:[r]),!r.isEmpty()){this.mergeContents(t,r.contents);for(const a of r.overrides){const[l]=i.filter(c=>li(c.identifiers,a.identifiers));l?(this.mergeContents(l.contents,a.contents),l.keys.push(...a.keys),l.keys=Eh(l.keys)):i.push(Ya(a))}for(const a of r.keys)n.indexOf(a)===-1&&n.push(a)}return new Pi(t,n,i,s.every(r=>r instanceof Pi)?void 0:s,this.logService)}createOverrideConfigurationModel(e){const t=this.getContentsForOverrideIdentifer(e);if(!t||typeof t!="object"||!Object.keys(t).length)return this;const i={};for(const n of Eh([...Object.keys(this.contents),...Object.keys(t)])){let s=this.contents[n];const r=t[n];r&&(typeof s=="object"&&typeof r=="object"?(s=Ya(s),this.mergeContents(s,r)):s=r),i[n]=s}return new Pi(i,this.keys,this.overrides,void 0,this.logService)}mergeContents(e,t){for(const i of Object.keys(t)){if(i in e&&Oi(e[i])&&Oi(t[i])){this.mergeContents(e[i],t[i]);continue}e[i]=Ya(t[i])}}getContentsForOverrideIdentifer(e){let t=null,i=null;const n=s=>{s&&(i?this.mergeContents(i,s):i=Ya(s))};for(const s of this.overrides)s.identifiers.length===1&&s.identifiers[0]===e?t=s.contents:s.identifiers.includes(e)&&n(s.contents);return n(t),i}toJSON(){return{contents:this.contents,overrides:this.overrides,keys:this.keys}}setValue(e,t){this.updateValue(e,t,!1)}removeValue(e){const t=this.keys.indexOf(e);t!==-1&&(this.keys.splice(t,1),Qz(this.contents,e),Pc.test(e)&&this.overrides.splice(this.overrides.findIndex(i=>li(i.identifiers,wC(e))),1))}updateValue(e,t,i){if(t3(this.contents,e,t,n=>this.logService.error(n)),i=i||this.keys.indexOf(e)===-1,i&&this.keys.push(e),Pc.test(e)){const n=wC(e),s={identifiers:n,keys:Object.keys(this.contents[e]),contents:tk(this.contents[e],a=>this.logService.error(a))},r=this.overrides.findIndex(a=>li(a.identifiers,n));r!==-1?this.overrides[r]=s:this.overrides.push(s)}}}class YG{constructor(e,t){this._name=e,this.logService=t,this._raw=null,this._configurationModel=null,this._restrictedConfigurations=[]}get configurationModel(){return this._configurationModel||Pi.createEmptyModel(this.logService)}parseRaw(e,t){this._raw=e;const{contents:i,keys:n,overrides:s,restricted:r,hasExcludedProperties:a}=this.doParseRaw(e,t);this._configurationModel=new Pi(i,n,s,a?[e]:void 0,this.logService),this._restrictedConfigurations=r||[]}doParseRaw(e,t){const i=Bi.as(su.Configuration).getConfigurationProperties(),n=this.filter(e,i,!0,t);e=n.raw;const s=tk(e,l=>this.logService.error(`Conflict in settings file ${this._name}: ${l}`)),r=Object.keys(e),a=this.toOverrides(e,l=>this.logService.error(`Conflict in settings file ${this._name}: ${l}`));return{contents:s,keys:r,overrides:a,restricted:n.restricted,hasExcludedProperties:n.hasExcludedProperties}}filter(e,t,i,n){let s=!1;if(!n?.scopes&&!n?.skipRestricted&&!n?.exclude?.length)return{raw:e,restricted:[],hasExcludedProperties:s};const r={},a=[];for(const l in e)if(Pc.test(l)&&i){const c=this.filter(e[l],t,!1,n);r[l]=c.raw,s=s||c.hasExcludedProperties,a.push(...c.restricted)}else{const c=t[l],d=c?typeof c.scope<"u"?c.scope:3:void 0;c?.restricted&&a.push(l),!n.exclude?.includes(l)&&(n.include?.includes(l)||(d===void 0||n.scopes===void 0||n.scopes.includes(d))&&!(n.skipRestricted&&c?.restricted))?r[l]=e[l]:s=!0}return{raw:r,restricted:a,hasExcludedProperties:s}}toOverrides(e,t){const i=[];for(const n of Object.keys(e))if(Pc.test(n)){const s={};for(const r in e[n])s[r]=e[n][r];i.push({identifiers:wC(n),keys:Object.keys(s),contents:tk(s,t)})}return i}}class QG{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f){this.key=e,this.overrides=t,this._value=i,this.overrideIdentifiers=n,this.defaultConfiguration=s,this.policyConfiguration=r,this.applicationConfiguration=a,this.userConfiguration=l,this.localUserConfiguration=c,this.remoteUserConfiguration=d,this.workspaceConfiguration=h,this.folderConfigurationModel=u,this.memoryConfigurationModel=f}toInspectValue(e){return e?.value!==void 0||e?.override!==void 0||e?.overrides!==void 0?e:void 0}get userInspectValue(){return this._userInspectValue||(this._userInspectValue=this.userConfiguration.inspect(this.key,this.overrides.overrideIdentifier)),this._userInspectValue}get user(){return this.toInspectValue(this.userInspectValue)}}class ry{constructor(e,t,i,n,s,r,a,l,c,d){this._defaultConfiguration=e,this._policyConfiguration=t,this._applicationConfiguration=i,this._localUserConfiguration=n,this._remoteUserConfiguration=s,this._workspaceConfiguration=r,this._folderConfigurations=a,this._memoryConfiguration=l,this._memoryConfigurationByResource=c,this.logService=d,this._workspaceConsolidatedConfiguration=null,this._foldersConsolidatedConfigurations=new cs,this._userConfiguration=null}getValue(e,t,i){return this.getConsolidatedConfigurationModel(e,t,i).getValue(e)}updateValue(e,t,i={}){let n;i.resource?(n=this._memoryConfigurationByResource.get(i.resource),n||(n=Pi.createEmptyModel(this.logService),this._memoryConfigurationByResource.set(i.resource,n))):n=this._memoryConfiguration,t===void 0?n.removeValue(e):n.setValue(e,t),i.resource||(this._workspaceConsolidatedConfiguration=null)}inspect(e,t,i){const n=this.getConsolidatedConfigurationModel(e,t,i),s=this.getFolderConfigurationModelForResource(t.resource,i),r=t.resource?this._memoryConfigurationByResource.get(t.resource)||this._memoryConfiguration:this._memoryConfiguration,a=new Set;for(const l of n.overrides)for(const c of l.identifiers)n.getOverrideValue(e,c)!==void 0&&a.add(c);return new QG(e,t,n.getValue(e),a.size?[...a]:void 0,this._defaultConfiguration,this._policyConfiguration.isEmpty()?void 0:this._policyConfiguration,this.applicationConfiguration.isEmpty()?void 0:this.applicationConfiguration,this.userConfiguration,this.localUserConfiguration,this.remoteUserConfiguration,i?this._workspaceConfiguration:void 0,s||void 0,r)}get applicationConfiguration(){return this._applicationConfiguration}get userConfiguration(){return this._userConfiguration||(this._userConfiguration=this._remoteUserConfiguration.isEmpty()?this._localUserConfiguration:this._localUserConfiguration.merge(this._remoteUserConfiguration)),this._userConfiguration}get localUserConfiguration(){return this._localUserConfiguration}get remoteUserConfiguration(){return this._remoteUserConfiguration}getConsolidatedConfigurationModel(e,t,i){let n=this.getConsolidatedConfigurationModelForResource(t,i);return t.overrideIdentifier&&(n=n.override(t.overrideIdentifier)),!this._policyConfiguration.isEmpty()&&this._policyConfiguration.getValue(e)!==void 0&&(n=n.merge(this._policyConfiguration)),n}getConsolidatedConfigurationModelForResource({resource:e},t){let i=this.getWorkspaceConsolidatedConfiguration();if(t&&e){const n=t.getFolder(e);n&&(i=this.getFolderConsolidatedConfiguration(n.uri)||i);const s=this._memoryConfigurationByResource.get(e);s&&(i=i.merge(s))}return i}getWorkspaceConsolidatedConfiguration(){return this._workspaceConsolidatedConfiguration||(this._workspaceConsolidatedConfiguration=this._defaultConfiguration.merge(this.applicationConfiguration,this.userConfiguration,this._workspaceConfiguration,this._memoryConfiguration)),this._workspaceConsolidatedConfiguration}getFolderConsolidatedConfiguration(e){let t=this._foldersConsolidatedConfigurations.get(e);if(!t){const i=this.getWorkspaceConsolidatedConfiguration(),n=this._folderConfigurations.get(e);n?(t=i.merge(n),this._foldersConsolidatedConfigurations.set(e,t)):t=i}return t}getFolderConfigurationModelForResource(e,t){if(t&&e){const i=t.getFolder(e);if(i)return this._folderConfigurations.get(i.uri)}}toData(){return{defaults:{contents:this._defaultConfiguration.contents,overrides:this._defaultConfiguration.overrides,keys:this._defaultConfiguration.keys},policy:{contents:this._policyConfiguration.contents,overrides:this._policyConfiguration.overrides,keys:this._policyConfiguration.keys},application:{contents:this.applicationConfiguration.contents,overrides:this.applicationConfiguration.overrides,keys:this.applicationConfiguration.keys},user:{contents:this.userConfiguration.contents,overrides:this.userConfiguration.overrides,keys:this.userConfiguration.keys},workspace:{contents:this._workspaceConfiguration.contents,overrides:this._workspaceConfiguration.overrides,keys:this._workspaceConfiguration.keys},folders:[...this._folderConfigurations.keys()].reduce((e,t)=>{const{contents:i,overrides:n,keys:s}=this._folderConfigurations.get(t);return e.push([t,{contents:i,overrides:n,keys:s}]),e},[])}}static parse(e,t){const i=this.parseConfigurationModel(e.defaults,t),n=this.parseConfigurationModel(e.policy,t),s=this.parseConfigurationModel(e.application,t),r=this.parseConfigurationModel(e.user,t),a=this.parseConfigurationModel(e.workspace,t),l=e.folders.reduce((c,d)=>(c.set(ve.revive(d[0]),this.parseConfigurationModel(d[1],t)),c),new cs);return new ry(i,n,s,r,Pi.createEmptyModel(t),a,l,Pi.createEmptyModel(t),new cs,t)}static parseConfigurationModel(e,t){return new Pi(e.contents,e.keys,e.overrides,void 0,t)}}class XG{constructor(e,t,i,n,s){this.change=e,this.previous=t,this.currentConfiguraiton=i,this.currentWorkspace=n,this.logService=s,this._marker=` -`,this._markerCode1=this._marker.charCodeAt(0),this._markerCode2=46,this.affectedKeys=new Set,this._previousConfiguration=void 0;for(const r of e.keys)this.affectedKeys.add(r);for(const[,r]of e.overrides)for(const a of r)this.affectedKeys.add(a);this._affectsConfigStr=this._marker;for(const r of this.affectedKeys)this._affectsConfigStr+=r+this._marker}get previousConfiguration(){return!this._previousConfiguration&&this.previous&&(this._previousConfiguration=ry.parse(this.previous.data,this.logService)),this._previousConfiguration}affectsConfiguration(e,t){const i=this._marker+e,n=this._affectsConfigStr.indexOf(i);if(n<0)return!1;const s=n+i.length;if(s>=this._affectsConfigStr.length)return!1;const r=this._affectsConfigStr.charCodeAt(s);if(r!==this._markerCode1&&r!==this._markerCode2)return!1;if(t){const a=this.previousConfiguration?this.previousConfiguration.getValue(e,t,this.previous?.workspace):void 0,l=this.currentConfiguraiton.getValue(e,t,this.currentWorkspace);return!as(a,l)}return!0}}class JG{constructor(){this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._enabled=!0}get enabled(){return this._enabled}enable(){this._enabled=!0,this._onDidChange.fire()}disable(){this._enabled=!1,this._onDidChange.fire()}}const Qm=new JG,$C={kind:0},eZ={kind:1};function tZ(o,e,t){return{kind:2,commandId:o,commandArgs:e,isBubble:t}}class Xm{constructor(e,t,i){this._log=i,this._defaultKeybindings=e,this._defaultBoundCommands=new Map;for(const n of e){const s=n.command;s&&s.charAt(0)!=="-"&&this._defaultBoundCommands.set(s,!0)}this._map=new Map,this._lookupMap=new Map,this._keybindings=Xm.handleRemovals([].concat(e).concat(t));for(let n=0,s=this._keybindings.length;n"u"){this._map.set(e,[t]),this._addToLookupMap(t);return}for(let n=i.length-1;n>=0;n--){const s=i[n];if(s.command===t.command)continue;let r=!0;for(let a=1;a"u"?(t=[e],this._lookupMap.set(e.command,t)):t.push(e)}_removeFromLookupMap(e){if(!e.command)return;const t=this._lookupMap.get(e.command);if(!(typeof t>"u")){for(let i=0,n=t.length;i"u"||i.length===0)return null;if(i.length===1)return i[0];for(let n=i.length-1;n>=0;n--){const s=i[n];if(t.contextMatchesRules(s.when))return s}return i[i.length-1]}resolve(e,t,i){const n=[...t,i];this._log(`| Resolving ${n}`);const s=this._map.get(n[0]);if(s===void 0)return this._log("\\ No keybinding entries."),$C;let r=null;if(n.length<2)r=s;else{r=[];for(let l=0,c=s.length;ld.chords.length)continue;let h=!0;for(let u=1;u=0;i--){const n=t[i];if(Xm._contextMatchesRules(e,n.when))return n}return null}static _contextMatchesRules(e,t){return t?t.evaluate(e):!0}}function QA(o){return o?`${o.serialize()}`:"no when condition"}function XA(o){return o.extensionId?o.isBuiltinExtension?`built-in extension ${o.extensionId}`:`user extension ${o.extensionId}`:o.isDefault?"built-in":"user"}const iZ=/^(cursor|delete|undo|redo|tab|editor\.action\.clipboard)/;class nZ extends z{get onDidUpdateKeybindings(){return this._onDidUpdateKeybindings?this._onDidUpdateKeybindings.event:J.None}get inChordMode(){return this._currentChords.length>0}constructor(e,t,i,n,s){super(),this._contextKeyService=e,this._commandService=t,this._telemetryService=i,this._notificationService=n,this._logService=s,this._onDidUpdateKeybindings=this._register(new A),this._currentChords=[],this._currentChordChecker=new jN,this._currentChordStatusMessage=null,this._ignoreSingleModifiers=sf.EMPTY,this._currentSingleModifier=null,this._currentSingleModifierClearTimeout=new wr,this._currentlyDispatchingCommandId=null,this._logging=!1}dispose(){super.dispose()}_log(e){this._logging&&this._logService.info(`[KeybindingService]: ${e}`)}getKeybindings(){return this._getResolver().getKeybindings()}lookupKeybinding(e,t){const i=this._getResolver().lookupPrimaryKeybinding(e,t||this._contextKeyService);if(i)return i.resolvedKeybinding}dispatchEvent(e,t){return this._dispatch(e,t)}softDispatch(e,t){this._log("/ Soft dispatching keyboard event");const i=this.resolveKeyboardEvent(e);if(i.hasMultipleChords())return console.warn("keyboard event should not be mapped to multiple chords"),$C;const[n]=i.getDispatchChords();if(n===null)return this._log("\\ Keyboard event cannot be dispatched"),$C;const s=this._contextKeyService.getContext(t),r=this._currentChords.map((({keypress:a})=>a));return this._getResolver().resolve(s,r,n)}_scheduleLeaveChordMode(){const e=Date.now();this._currentChordChecker.cancelAndSet(()=>{if(!this._documentHasFocus()){this._leaveChordMode();return}Date.now()-e>5e3&&this._leaveChordMode()},500)}_expectAnotherChord(e,t){switch(this._currentChords.push({keypress:e,label:t}),this._currentChords.length){case 0:throw TN("impossible");case 1:this._currentChordStatusMessage=this._notificationService.status(m("first.chord","({0}) was pressed. Waiting for second key of chord...",t));break;default:{const i=this._currentChords.map(({label:n})=>n).join(", ");this._currentChordStatusMessage=this._notificationService.status(m("next.chord","({0}) was pressed. Waiting for next key of chord...",i))}}this._scheduleLeaveChordMode(),Qm.enabled&&Qm.disable()}_leaveChordMode(){this._currentChordStatusMessage&&(this._currentChordStatusMessage.dispose(),this._currentChordStatusMessage=null),this._currentChordChecker.cancel(),this._currentChords=[],Qm.enable()}_dispatch(e,t){return this._doDispatch(this.resolveKeyboardEvent(e),t,!1)}_singleModifierDispatch(e,t){const i=this.resolveKeyboardEvent(e),[n]=i.getSingleModifierDispatchChords();if(n)return this._ignoreSingleModifiers.has(n)?(this._log(`+ Ignoring single modifier ${n} due to it being pressed together with other keys.`),this._ignoreSingleModifiers=sf.EMPTY,this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1):(this._ignoreSingleModifiers=sf.EMPTY,this._currentSingleModifier===null?(this._log(`+ Storing single modifier for possible chord ${n}.`),this._currentSingleModifier=n,this._currentSingleModifierClearTimeout.cancelAndSet(()=>{this._log("+ Clearing single modifier due to 300ms elapsed."),this._currentSingleModifier=null},300),!1):n===this._currentSingleModifier?(this._log(`/ Dispatching single modifier chord ${n} ${n}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,this._doDispatch(i,t,!0)):(this._log(`+ Clearing single modifier due to modifier mismatch: ${this._currentSingleModifier} ${n}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1));const[s]=i.getChords();return this._ignoreSingleModifiers=new sf(s),this._currentSingleModifier!==null&&this._log("+ Clearing single modifier due to other key up."),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1}_doDispatch(e,t,i=!1){let n=!1;if(e.hasMultipleChords())return console.warn("Unexpected keyboard event mapped to multiple chords"),!1;let s=null,r=null;if(i){const[d]=e.getSingleModifierDispatchChords();s=d,r=d?[d]:[]}else[s]=e.getDispatchChords(),r=this._currentChords.map(({keypress:d})=>d);if(s===null)return this._log("\\ Keyboard event cannot be dispatched in keydown phase."),n;const a=this._contextKeyService.getContext(t),l=e.getLabel(),c=this._getResolver().resolve(a,r,s);switch(c.kind){case 0:{if(this._logService.trace("KeybindingService#dispatch",l,"[ No matching keybinding ]"),this.inChordMode){const d=this._currentChords.map(({label:h})=>h).join(", ");this._log(`+ Leaving multi-chord mode: Nothing bound to "${d}, ${l}".`),this._notificationService.status(m("missing.chord","The key combination ({0}, {1}) is not a command.",d,l),{hideAfter:10*1e3}),this._leaveChordMode(),n=!0}return n}case 1:return this._logService.trace("KeybindingService#dispatch",l,"[ Several keybindings match - more chords needed ]"),n=!0,this._expectAnotherChord(s,l),this._log(this._currentChords.length===1?"+ Entering multi-chord mode...":"+ Continuing multi-chord mode..."),n;case 2:{if(this._logService.trace("KeybindingService#dispatch",l,`[ Will dispatch command ${c.commandId} ]`),c.commandId===null||c.commandId===""){if(this.inChordMode){const d=this._currentChords.map(({label:h})=>h).join(", ");this._log(`+ Leaving chord mode: Nothing bound to "${d}, ${l}".`),this._notificationService.status(m("missing.chord","The key combination ({0}, {1}) is not a command.",d,l),{hideAfter:10*1e3}),this._leaveChordMode(),n=!0}}else{this.inChordMode&&this._leaveChordMode(),c.isBubble||(n=!0),this._log(`+ Invoking command ${c.commandId}.`),this._currentlyDispatchingCommandId=c.commandId;try{typeof c.commandArgs>"u"?this._commandService.executeCommand(c.commandId).then(void 0,d=>this._notificationService.warn(d)):this._commandService.executeCommand(c.commandId,c.commandArgs).then(void 0,d=>this._notificationService.warn(d))}finally{this._currentlyDispatchingCommandId=null}iZ.test(c.commandId)||this._telemetryService.publicLog2("workbenchActionExecuted",{id:c.commandId,from:"keybinding",detail:e.getUserSettingsLabel()??void 0})}return n}}}mightProducePrintableCharacter(e){return e.ctrlKey||e.metaKey?!1:e.keyCode>=31&&e.keyCode<=56||e.keyCode>=21&&e.keyCode<=30}}const Mw=class Mw{constructor(e){this._ctrlKey=e?e.ctrlKey:!1,this._shiftKey=e?e.shiftKey:!1,this._altKey=e?e.altKey:!1,this._metaKey=e?e.metaKey:!1}has(e){switch(e){case"ctrl":return this._ctrlKey;case"shift":return this._shiftKey;case"alt":return this._altKey;case"meta":return this._metaKey}}};Mw.EMPTY=new Mw(null);let sf=Mw;class JA{constructor(e,t,i,n,s,r,a){this._resolvedKeybindingItemBrand=void 0,this.resolvedKeybinding=e,this.chords=e?Kk(e.getDispatchChords()):[],e&&this.chords.length===0&&(this.chords=Kk(e.getSingleModifierDispatchChords())),this.bubble=t?t.charCodeAt(0)===94:!1,this.command=this.bubble?t.substr(1):t,this.commandArgs=i,this.when=n,this.isDefault=s,this.extensionId=r,this.isBuiltinExtension=a}}function Kk(o){const e=[];for(let t=0,i=o.length;tthis._getLabel(e))}getAriaLabel(){return sZ.toLabel(this._os,this._chords,e=>this._getAriaLabel(e))}getElectronAccelerator(){return this._chords.length>1||this._chords[0].isDuplicateModifierCase()?null:oZ.toLabel(this._os,this._chords,e=>this._getElectronAccelerator(e))}getUserSettingsLabel(){return rZ.toLabel(this._os,this._chords,e=>this._getUserSettingsLabel(e))}hasMultipleChords(){return this._chords.length>1}getChords(){return this._chords.map(e=>this._getChord(e))}_getChord(e){return new yH(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,this._getLabel(e),this._getAriaLabel(e))}getDispatchChords(){return this._chords.map(e=>this._getChordDispatch(e))}getSingleModifierDispatchChords(){return this._chords.map(e=>this._getSingleModifierChordDispatch(e))}}class l_ extends lZ{constructor(e,t){super(t,e)}_keyCodeToUILabel(e){if(this._os===2)switch(e){case 15:return"←";case 16:return"↑";case 17:return"→";case 18:return"↓"}return el.toString(e)}_getLabel(e){return e.isDuplicateModifierCase()?"":this._keyCodeToUILabel(e.keyCode)}_getAriaLabel(e){return e.isDuplicateModifierCase()?"":el.toString(e.keyCode)}_getElectronAccelerator(e){return el.toElectronAccelerator(e.keyCode)}_getUserSettingsLabel(e){if(e.isDuplicateModifierCase())return"";const t=el.toUserSettingsUS(e.keyCode);return t&&t.toLowerCase()}_getChordDispatch(e){return l_.getDispatchStr(e)}static getDispatchStr(e){if(e.isModifierKey())return null;let t="";return e.ctrlKey&&(t+="ctrl+"),e.shiftKey&&(t+="shift+"),e.altKey&&(t+="alt+"),e.metaKey&&(t+="meta+"),t+=el.toString(e.keyCode),t}_getSingleModifierChordDispatch(e){return e.keyCode===5&&!e.shiftKey&&!e.altKey&&!e.metaKey?"ctrl":e.keyCode===4&&!e.ctrlKey&&!e.altKey&&!e.metaKey?"shift":e.keyCode===6&&!e.ctrlKey&&!e.shiftKey&&!e.metaKey?"alt":e.keyCode===57&&!e.ctrlKey&&!e.shiftKey&&!e.altKey?"meta":null}static _scanCodeToKeyCode(e){const t=ON[e];if(t!==-1)return t;switch(e){case 10:return 31;case 11:return 32;case 12:return 33;case 13:return 34;case 14:return 35;case 15:return 36;case 16:return 37;case 17:return 38;case 18:return 39;case 19:return 40;case 20:return 41;case 21:return 42;case 22:return 43;case 23:return 44;case 24:return 45;case 25:return 46;case 26:return 47;case 27:return 48;case 28:return 49;case 29:return 50;case 30:return 51;case 31:return 52;case 32:return 53;case 33:return 54;case 34:return 55;case 35:return 56;case 36:return 22;case 37:return 23;case 38:return 24;case 39:return 25;case 40:return 26;case 41:return 27;case 42:return 28;case 43:return 29;case 44:return 30;case 45:return 21;case 51:return 88;case 52:return 86;case 53:return 92;case 54:return 94;case 55:return 93;case 56:return 0;case 57:return 85;case 58:return 95;case 59:return 91;case 60:return 87;case 61:return 89;case 62:return 90;case 106:return 97}return 0}static _toKeyCodeChord(e){if(!e)return null;if(e instanceof kl)return e;const t=this._scanCodeToKeyCode(e.scanCode);return t===0?null:new kl(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,t)}static resolveKeybinding(e,t){const i=Kk(e.chords.map(n=>this._toKeyCodeChord(n)));return i.length>0?[new l_(i,t)]:[]}}const Cg=He("labelService"),cZ=He("progressService"),EM=class EM{constructor(e){this.callback=e}report(e){this._value=e,this.callback(this._value)}};EM.None=Object.freeze({report(){}});let rc=EM;const G_=He("editorProgressService");class dZ{constructor(){this._value="",this._pos=0}reset(e){return this._value=e,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos=0;t--,this._valueLen--){const i=this._value.charCodeAt(t);if(!(i===47||this._splitOnBackslash&&i===92))break}return this.next()}hasNext(){return this._to!1,t=()=>!1){return new Bf(new fZ(e,t))}static forStrings(){return new Bf(new dZ)}static forConfigKeys(){return new Bf(new hZ)}constructor(e){this._iter=e}clear(){this._root=void 0}set(e,t){const i=this._iter.reset(e);let n;this._root||(this._root=new Hb,this._root.segment=i.value());const s=[];for(n=this._root;;){const a=i.cmp(n.segment);if(a>0)n.left||(n.left=new Hb,n.left.segment=i.value()),s.push([-1,n]),n=n.left;else if(a<0)n.right||(n.right=new Hb,n.right.segment=i.value()),s.push([1,n]),n=n.right;else if(i.hasNext())i.next(),n.mid||(n.mid=new Hb,n.mid.segment=i.value()),s.push([0,n]),n=n.mid;else break}const r=n.value;n.value=t,n.key=e;for(let a=s.length-1;a>=0;a--){const l=s[a][1];l.updateHeight();const c=l.balanceFactor();if(c<-1||c>1){const d=s[a][0],h=s[a+1][0];if(d===1&&h===1)s[a][1]=l.rotateLeft();else if(d===-1&&h===-1)s[a][1]=l.rotateRight();else if(d===1&&h===-1)l.right=s[a+1][1]=s[a+1][1].rotateRight(),s[a][1]=l.rotateLeft();else if(d===-1&&h===1)l.left=s[a+1][1]=s[a+1][1].rotateLeft(),s[a][1]=l.rotateRight();else throw new Error;if(a>0)switch(s[a-1][0]){case-1:s[a-1][1].left=s[a][1];break;case 1:s[a-1][1].right=s[a][1];break;case 0:s[a-1][1].mid=s[a][1];break}else this._root=s[0][1]}}return r}get(e){return this._getNode(e)?.value}_getNode(e){const t=this._iter.reset(e);let i=this._root;for(;i;){const n=t.cmp(i.segment);if(n>0)i=i.left;else if(n<0)i=i.right;else if(t.hasNext())t.next(),i=i.mid;else break}return i}has(e){const t=this._getNode(e);return!(t?.value===void 0&&t?.mid===void 0)}delete(e){return this._delete(e,!1)}deleteSuperstr(e){return this._delete(e,!0)}_delete(e,t){const i=this._iter.reset(e),n=[];let s=this._root;for(;s;){const r=i.cmp(s.segment);if(r>0)n.push([-1,s]),s=s.left;else if(r<0)n.push([1,s]),s=s.right;else if(i.hasNext())i.next(),n.push([0,s]),s=s.mid;else break}if(s){if(t?(s.left=void 0,s.mid=void 0,s.right=void 0,s.height=1):(s.key=void 0,s.value=void 0),!s.mid&&!s.value)if(s.left&&s.right){const r=this._min(s.right);if(r.key){const{key:a,value:l,segment:c}=r;this._delete(r.key,!1),s.key=a,s.value=l,s.segment=c}}else{const r=s.left??s.right;if(n.length>0){const[a,l]=n[n.length-1];switch(a){case-1:l.left=r;break;case 0:l.mid=r;break;case 1:l.right=r;break}}else this._root=r}for(let r=n.length-1;r>=0;r--){const a=n[r][1];a.updateHeight();const l=a.balanceFactor();if(l>1?(a.right.balanceFactor()>=0||(a.right=a.right.rotateRight()),n[r][1]=a.rotateLeft()):l<-1&&(a.left.balanceFactor()<=0||(a.left=a.left.rotateLeft()),n[r][1]=a.rotateRight()),r>0)switch(n[r-1][0]){case-1:n[r-1][1].left=n[r][1];break;case 1:n[r-1][1].right=n[r][1];break;case 0:n[r-1][1].mid=n[r][1];break}else this._root=n[0][1]}}}_min(e){for(;e.left;)e=e.left;return e}findSubstr(e){const t=this._iter.reset(e);let i=this._root,n;for(;i;){const s=t.cmp(i.segment);if(s>0)i=i.left;else if(s<0)i=i.right;else if(t.hasNext())t.next(),n=i.value||n,i=i.mid;else break}return i&&i.value||n}findSuperstr(e){return this._findSuperstrOrElement(e,!1)}_findSuperstrOrElement(e,t){const i=this._iter.reset(e);let n=this._root;for(;n;){const s=i.cmp(n.segment);if(s>0)n=n.left;else if(s<0)n=n.right;else if(i.hasNext())i.next(),n=n.mid;else return n.mid?this._entries(n.mid):t?n.value:void 0}}forEach(e){for(const[t,i]of this)e(i,t)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(e){const t=[];return this._dfsEntries(e,t),t[Symbol.iterator]()}_dfsEntries(e,t){e&&(e.left&&this._dfsEntries(e.left,t),e.value&&t.push([e.key,e.value]),e.mid&&this._dfsEntries(e.mid,t),e.right&&this._dfsEntries(e.right,t))}}const jk=He("contextService");function qk(o){const e=o;return typeof e?.id=="string"&&ve.isUri(e.uri)}function gZ(o){return typeof o?.id=="string"&&!qk(o)&&!_Z(o)}const mZ={id:"empty-window"};function pZ(o,e){if(typeof o=="string"||typeof o>"u")return typeof o=="string"?{id:uc(o)}:mZ;const t=o;return t.configuration?{id:t.id,configPath:t.configuration}:t.folders.length===1?{id:t.id,uri:t.folders[0].uri}:{id:t.id}}function _Z(o){const e=o;return typeof e?.id=="string"&&ve.isUri(e.configPath)}class bZ{constructor(e,t){this.raw=t,this.uri=e.uri,this.index=e.index,this.name=e.name}toJSON(){return{uri:this.uri,name:this.name,index:this.index}}}const Gk="code-workspace";m("codeWorkspace","Code Workspace");const CZ="4064f6ec-cb38-4ad0-af64-ee6467e63c82";var eP;(function(o){o.inspectTokensAction=m("inspectTokens","Developer: Inspect Tokens")})(eP||(eP={}));var tP;(function(o){o.gotoLineActionLabel=m("gotoLineActionLabel","Go to Line/Column...")})(tP||(tP={}));var iP;(function(o){o.helpQuickAccessActionLabel=m("helpQuickAccess","Show all Quick Access Providers")})(iP||(iP={}));var nP;(function(o){o.quickCommandActionLabel=m("quickCommandActionLabel","Command Palette"),o.quickCommandHelp=m("quickCommandActionHelp","Show And Run Commands")})(nP||(nP={}));var sP;(function(o){o.quickOutlineActionLabel=m("quickOutlineActionLabel","Go to Symbol..."),o.quickOutlineByCategoryActionLabel=m("quickOutlineByCategoryActionLabel","Go to Symbol by Category...")})(sP||(sP={}));var Zk;(function(o){o.editorViewAccessibleLabel=m("editorViewAccessibleLabel","Editor content")})(Zk||(Zk={}));var oP;(function(o){o.toggleHighContrast=m("toggleHighContrast","Toggle High Contrast Theme")})(oP||(oP={}));var Yk;(function(o){o.bulkEditServiceSummary=m("bulkEditServiceSummary","Made {0} edits in {1} files")})(Yk||(Yk={}));const vZ=He("workspaceTrustManagementService");let vg=[],jT=[],v7=[];function Vb(o,e=!1){wZ(o,!1,e)}function wZ(o,e,t){const i=yZ(o,e);vg.push(i),i.userConfigured?v7.push(i):jT.push(i),t&&!i.userConfigured&&vg.forEach(n=>{n.mime===i.mime||n.userConfigured||(i.extension&&n.extension===i.extension&&console.warn(`Overwriting extension <<${i.extension}>> to now point to mime <<${i.mime}>>`),i.filename&&n.filename===i.filename&&console.warn(`Overwriting filename <<${i.filename}>> to now point to mime <<${i.mime}>>`),i.filepattern&&n.filepattern===i.filepattern&&console.warn(`Overwriting filepattern <<${i.filepattern}>> to now point to mime <<${i.mime}>>`),i.firstline&&n.firstline===i.firstline&&console.warn(`Overwriting firstline <<${i.firstline}>> to now point to mime <<${i.mime}>>`))})}function yZ(o,e){return{id:o.id,mime:o.mime,filename:o.filename,extension:o.extension,filepattern:o.filepattern,firstline:o.firstline,userConfigured:e,filenameLowercase:o.filename?o.filename.toLowerCase():void 0,extensionLowercase:o.extension?o.extension.toLowerCase():void 0,filepatternLowercase:o.filepattern?N3(o.filepattern.toLowerCase()):void 0,filepatternOnPath:o.filepattern?o.filepattern.indexOf(oi.sep)>=0:!1}}function SZ(){vg=vg.filter(o=>o.userConfigured),jT=[]}function LZ(o,e){return xZ(o,e).map(t=>t.id)}function xZ(o,e){let t;if(o)switch(o.scheme){case Te.file:t=o.fsPath;break;case Te.data:{t=Oc.parseMetaData(o).get(Oc.META_DATA_LABEL);break}case Te.vscodeNotebookCell:t=void 0;break;default:t=o.path}if(!t)return[{id:"unknown",mime:il.unknown}];t=t.toLowerCase();const i=uc(t),n=rP(t,i,v7);if(n)return[n,{id:Bs,mime:il.text}];const s=rP(t,i,jT);if(s)return[s,{id:Bs,mime:il.text}];if(e){const r=kZ(e);if(r)return[r,{id:Bs,mime:il.text}]}return[{id:"unknown",mime:il.unknown}]}function rP(o,e,t){let i,n,s;for(let r=t.length-1;r>=0;r--){const a=t[r];if(e===a.filenameLowercase){i=a;break}if(a.filepattern&&(!n||a.filepattern.length>n.filepattern.length)){const l=a.filepatternOnPath?o:e;a.filepatternLowercase?.(l)&&(n=a)}a.extension&&(!s||a.extension.length>s.extension.length)&&e.endsWith(a.extensionLowercase)&&(s=a)}if(i)return i;if(n)return n;if(s)return s}function kZ(o){if($N(o)&&(o=o.substr(1)),o.length>0)for(let e=vg.length-1;e>=0;e--){const t=vg[e];if(!t.firstline)continue;const i=o.match(t.firstline);if(i&&i.length>0)return t}}const zb=Object.prototype.hasOwnProperty,aP="vs.editor.nullLanguage";class DZ{constructor(){this._languageIdToLanguage=[],this._languageToLanguageId=new Map,this._register(aP,0),this._register(Bs,1),this._nextLanguageId=2}_register(e,t){this._languageIdToLanguage[t]=e,this._languageToLanguageId.set(e,t)}register(e){if(this._languageToLanguageId.has(e))return;const t=this._nextLanguageId++;this._register(e,t)}encodeLanguageId(e){return this._languageToLanguageId.get(e)||0}decodeLanguageId(e){return this._languageIdToLanguage[e]||aP}}const Ep=class Ep extends z{constructor(e=!0,t=!1){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,Ep.instanceCount++,this._warnOnOverwrite=t,this.languageIdCodec=new DZ,this._dynamicLanguages=[],this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},e&&(this._initializeFromRegistry(),this._register(lg.onDidChangeLanguages(i=>{this._initializeFromRegistry()})))}dispose(){Ep.instanceCount--,super.dispose()}_initializeFromRegistry(){this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},SZ();const e=[].concat(lg.getLanguages()).concat(this._dynamicLanguages);this._registerLanguages(e)}_registerLanguages(e){for(const t of e)this._registerLanguage(t);this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Object.keys(this._languages).forEach(t=>{const i=this._languages[t];i.name&&(this._nameMap[i.name]=i.identifier),i.aliases.forEach(n=>{this._lowercaseNameMap[n.toLowerCase()]=i.identifier}),i.mimetypes.forEach(n=>{this._mimeTypesMap[n]=i.identifier})}),Bi.as(su.Configuration).registerOverrideIdentifiers(this.getRegisteredLanguageIds()),this._onDidChange.fire()}_registerLanguage(e){const t=e.id;let i;zb.call(this._languages,t)?i=this._languages[t]:(this.languageIdCodec.register(t),i={identifier:t,name:null,mimetypes:[],aliases:[],extensions:[],filenames:[],configurationFiles:[],icons:[]},this._languages[t]=i),this._mergeLanguage(i,e)}_mergeLanguage(e,t){const i=t.id;let n=null;if(Array.isArray(t.mimetypes)&&t.mimetypes.length>0&&(e.mimetypes.push(...t.mimetypes),n=t.mimetypes[0]),n||(n=`text/x-${i}`,e.mimetypes.push(n)),Array.isArray(t.extensions)){t.configuration?e.extensions=t.extensions.concat(e.extensions):e.extensions=e.extensions.concat(t.extensions);for(const a of t.extensions)Vb({id:i,mime:n,extension:a},this._warnOnOverwrite)}if(Array.isArray(t.filenames))for(const a of t.filenames)Vb({id:i,mime:n,filename:a},this._warnOnOverwrite),e.filenames.push(a);if(Array.isArray(t.filenamePatterns))for(const a of t.filenamePatterns)Vb({id:i,mime:n,filepattern:a},this._warnOnOverwrite);if(typeof t.firstLine=="string"&&t.firstLine.length>0){let a=t.firstLine;a.charAt(0)!=="^"&&(a="^"+a);try{const l=new RegExp(a);cH(l)||Vb({id:i,mime:n,firstline:l},this._warnOnOverwrite)}catch(l){console.warn(`[${t.id}]: Invalid regular expression \`${a}\`: `,l)}}e.aliases.push(i);let s=null;if(typeof t.aliases<"u"&&Array.isArray(t.aliases)&&(t.aliases.length===0?s=[null]:s=t.aliases),s!==null)for(const a of s)!a||a.length===0||e.aliases.push(a);const r=s!==null&&s.length>0;if(!(r&&s[0]===null)){const a=(r?s[0]:null)||i;(r||!e.name)&&(e.name=a)}t.configuration&&e.configurationFiles.push(t.configuration),t.icon&&e.icons.push(t.icon)}isRegisteredLanguageId(e){return e?zb.call(this._languages,e):!1}getRegisteredLanguageIds(){return Object.keys(this._languages)}getLanguageIdByLanguageName(e){const t=e.toLowerCase();return zb.call(this._lowercaseNameMap,t)?this._lowercaseNameMap[t]:null}getLanguageIdByMimeType(e){return e&&zb.call(this._mimeTypesMap,e)?this._mimeTypesMap[e]:null}guessLanguageIdByFilepathOrFirstLine(e,t){return!e&&!t?[]:LZ(e,t)}};Ep.instanceCount=0;let Qk=Ep;const ho=(o,e)=>o===e;function Xk(o=ho){return(e,t)=>li(e,t,o)}function IZ(){return(o,e)=>o.equals(e)}function Jk(o,e,t){if(t!==void 0){const i=o;return i==null||e===void 0||e===null?e===i:t(i,e)}else{const i=o;return(n,s)=>n==null||s===void 0||s===null?s===n:i(n,s)}}class gn{constructor(e,t,i){this.owner=e,this.debugNameSource=t,this.referenceFn=i}getDebugName(e){return EZ(e,this)}}const lP=new Map,eD=new WeakMap;function EZ(o,e){const t=eD.get(o);if(t)return t;const i=NZ(o,e);if(i){let n=lP.get(i)??0;n++,lP.set(i,n);const s=n===1?i:`${i}#${n}`;return eD.set(o,s),s}}function NZ(o,e){const t=eD.get(o);if(t)return t;const i=e.owner?MZ(e.owner)+".":"";let n;const s=e.debugNameSource;if(s!==void 0)if(typeof s=="function"){if(n=s(),n!==void 0)return i+n}else return i+s;const r=e.referenceFn;if(r!==void 0&&(n=qT(r),n!==void 0))return i+n;if(e.owner!==void 0){const a=TZ(e.owner,o);if(a!==void 0)return i+a}}function TZ(o,e){for(const t in o)if(o[t]===e)return t}const cP=new Map,dP=new WeakMap;function MZ(o){const e=dP.get(o);if(e)return e;const t=RZ(o);let i=cP.get(t)??0;i++,cP.set(t,i);const n=i===1?t:`${t}#${i}`;return dP.set(o,n),n}function RZ(o){const e=o.constructor;return e?e.name:"Object"}function qT(o){const e=o.toString(),i=/\/\*\*\s*@description\s*([^*]*)\*\//.exec(e);return(i?i[1]:void 0)?.trim()}let AZ;function w7(){return AZ}let y7;function PZ(o){y7=o}let S7;function OZ(o){S7=o}let tD;function FZ(o){tD=o}class L7{get TChange(){return null}reportChanges(){this.get()}read(e){return e?e.readObservable(this):this.get()}map(e,t){const i=t===void 0?void 0:e,n=t===void 0?e:t;return tD({owner:i,debugName:()=>{const s=qT(n);if(s!==void 0)return s;const a=/^\s*\(?\s*([a-zA-Z_$][a-zA-Z_$0-9]*)\s*\)?\s*=>\s*\1(?:\??)\.([a-zA-Z_$][a-zA-Z_$0-9]*)\s*$/.exec(n.toString());if(a)return`${this.debugName}.${a[2]}`;if(!i)return`${this.debugName} (mapped)`},debugReferenceFn:n},s=>n(this.read(s),s))}flatten(){return tD({owner:void 0,debugName:()=>`${this.debugName} (flattened)`},e=>this.read(e).read(e))}recomputeInitiallyAndOnChange(e,t){return e.add(y7(this,t)),this}keepObserved(e){return e.add(S7(this)),this}}class zg extends L7{constructor(){super(...arguments),this.observers=new Set}addObserver(e){const t=this.observers.size;this.observers.add(e),t===0&&this.onFirstObserverAdded()}removeObserver(e){this.observers.delete(e)&&this.observers.size===0&&this.onLastObserverRemoved()}onFirstObserverAdded(){}onLastObserverRemoved(){}}function Xt(o,e){const t=new Ug(o,e);try{o(t)}finally{t.finish()}}let Ub;function Mm(o){if(Ub)o(Ub);else{const e=new Ug(o,void 0);Ub=e;try{o(e)}finally{e.finish(),Ub=void 0}}}async function BZ(o,e){const t=new Ug(o,e);try{await o(t)}finally{t.finish()}}function c_(o,e,t){o?e(o):Xt(e,t)}class Ug{constructor(e,t){this._fn=e,this._getDebugName=t,this.updatingObservers=[]}getDebugName(){return this._getDebugName?this._getDebugName():qT(this._fn)}updateObserver(e,t){this.updatingObservers.push({observer:e,observable:t}),e.beginUpdate(t)}finish(){const e=this.updatingObservers;for(let t=0;t{},()=>`Setting ${this.debugName}`));try{const s=this._value;this._setValue(e),w7()?.handleObservableChanged(this,{oldValue:s,newValue:e,change:i,didChange:!0,hadValue:!0});for(const r of this.observers)t.updateObserver(r,this),r.handleChange(this,i)}finally{n&&n.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}function KC(o,e){let t;return typeof o=="string"?t=new gn(void 0,o,void 0):t=new gn(o,void 0,void 0),new WZ(t,e,ho)}class WZ extends GT{_setValue(e){this._value!==e&&(this._value&&this._value.dispose(),this._value=e)}dispose(){this._value?.dispose()}}function Ce(o,e){return e!==void 0?new Vh(new gn(o,void 0,e),e,void 0,void 0,void 0,ho):new Vh(new gn(void 0,void 0,o),o,void 0,void 0,void 0,ho)}function ZT(o,e,t){return new VZ(new gn(o,void 0,e),e,void 0,void 0,void 0,ho,t)}function dr(o,e){return new Vh(new gn(o.owner,o.debugName,o.debugReferenceFn),e,void 0,void 0,o.onLastObserverRemoved,o.equalsFn??ho)}FZ(dr);function HZ(o,e){return new Vh(new gn(o.owner,o.debugName,void 0),e,o.createEmptyChangeSummary,o.handleChange,void 0,o.equalityComparer??ho)}function cu(o,e){let t,i;e===void 0?(t=o,i=void 0):(i=o,t=e);const n=new X;return new Vh(new gn(i,void 0,t),s=>(n.clear(),t(s,n)),void 0,void 0,()=>n.dispose(),ho)}function tr(o,e){let t,i;e===void 0?(t=o,i=void 0):(i=o,t=e);let n;return new Vh(new gn(i,void 0,t),s=>{n?n.clear():n=new X;const r=t(s);return r&&n.add(r),r},void 0,void 0,()=>{n&&(n.dispose(),n=void 0)},ho)}class Vh extends zg{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,n,s=void 0,r){super(),this._debugNameData=e,this._computeFn=t,this.createChangeSummary=i,this._handleChange=n,this._handleLastObserverRemoved=s,this._equalityComparator=r,this.state=0,this.value=void 0,this.updateCount=0,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=void 0,this.changeSummary=this.createChangeSummary?.()}onLastObserverRemoved(){this.state=0,this.value=void 0;for(const e of this.dependencies)e.removeObserver(this);this.dependencies.clear(),this._handleLastObserverRemoved?.()}get(){if(this.observers.size===0){const e=this._computeFn(this,this.createChangeSummary?.());return this.onLastObserverRemoved(),e}else{do{if(this.state===1){for(const e of this.dependencies)if(e.reportChanges(),this.state===2)break}this.state===1&&(this.state=3),this._recomputeIfNeeded()}while(this.state!==3);return this.value}}_recomputeIfNeeded(){if(this.state===3)return;const e=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=e;const t=this.state!==0,i=this.value;this.state=3;const n=this.changeSummary;this.changeSummary=this.createChangeSummary?.();try{this.value=this._computeFn(this,n)}finally{for(const r of this.dependenciesToBeRemoved)r.removeObserver(this);this.dependenciesToBeRemoved.clear()}if(t&&!this._equalityComparator(i,this.value))for(const r of this.observers)r.handleChange(this,void 0)}toString(){return`LazyDerived<${this.debugName}>`}beginUpdate(e){this.updateCount++;const t=this.updateCount===1;if(this.state===3&&(this.state=1,!t))for(const i of this.observers)i.handlePossibleChange(this);if(t)for(const i of this.observers)i.beginUpdate(this)}endUpdate(e){if(this.updateCount--,this.updateCount===0){const t=[...this.observers];for(const i of t)i.endUpdate(this)}Fh(()=>this.updateCount>=0)}handlePossibleChange(e){if(this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){this.state=1;for(const t of this.observers)t.handlePossibleChange(this)}}handleChange(e,t){if(this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){const i=this._handleChange?this._handleChange({changedObservable:e,change:t,didChange:s=>s===e},this.changeSummary):!0,n=this.state===3;if(i&&(this.state===1||n)&&(this.state=2,n))for(const s of this.observers)s.handlePossibleChange(this)}}readObservable(e){e.addObserver(this);const t=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),t}addObserver(e){const t=!this.observers.has(e)&&this.updateCount>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){const t=this.observers.has(e)&&this.updateCount>0;super.removeObserver(e),t&&e.endUpdate(this)}}class VZ extends Vh{constructor(e,t,i,n,s=void 0,r,a){super(e,t,i,n,s,r),this.set=a}}function We(o){return new ly(new gn(void 0,void 0,o),o,void 0,void 0)}function Z_(o,e){return new ly(new gn(o.owner,o.debugName,o.debugReferenceFn??e),e,void 0,void 0)}function Y_(o,e){return new ly(new gn(o.owner,o.debugName,o.debugReferenceFn??e),e,o.createEmptyChangeSummary,o.handleChange)}function zZ(o,e){const t=new X,i=Y_({owner:o.owner,debugName:o.debugName,debugReferenceFn:o.debugReferenceFn??e,createEmptyChangeSummary:o.createEmptyChangeSummary,handleChange:o.handleChange},(n,s)=>{t.clear(),e(n,s,t)});return _e(()=>{i.dispose(),t.dispose()})}function To(o){const e=new X,t=Z_({owner:void 0,debugName:void 0,debugReferenceFn:o},i=>{e.clear(),o(i,e)});return _e(()=>{t.dispose(),e.dispose()})}class ly{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,n){this._debugNameData=e,this._runFn=t,this.createChangeSummary=i,this._handleChange=n,this.state=2,this.updateCount=0,this.disposed=!1,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=this.createChangeSummary?.(),this._runIfNeeded()}dispose(){this.disposed=!0;for(const e of this.dependencies)e.removeObserver(this);this.dependencies.clear()}_runIfNeeded(){if(this.state===3)return;const e=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=e,this.state=3;const t=this.disposed;try{if(!t){w7()?.handleAutorunTriggered(this);const i=this.changeSummary;this.changeSummary=this.createChangeSummary?.(),this._runFn(this,i)}}finally{for(const i of this.dependenciesToBeRemoved)i.removeObserver(this);this.dependenciesToBeRemoved.clear()}}toString(){return`Autorun<${this.debugName}>`}beginUpdate(){this.state===3&&(this.state=1),this.updateCount++}endUpdate(){if(this.updateCount===1)do{if(this.state===1){this.state=3;for(const e of this.dependencies)if(e.reportChanges(),this.state===2)break}this._runIfNeeded()}while(this.state!==3);this.updateCount--,Fh(()=>this.updateCount>=0)}handlePossibleChange(e){this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(this.state=1)}handleChange(e,t){this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(!this._handleChange||this._handleChange({changedObservable:e,change:t,didChange:n=>n===e},this.changeSummary))&&(this.state=2)}readObservable(e){if(this.disposed)return e.get();e.addObserver(this);const t=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),t}}(function(o){o.Observer=ly})(We||(We={}));function wg(o){return new UZ(o)}class UZ extends L7{constructor(e){super(),this.value=e}get debugName(){return this.toString()}get(){return this.value}addObserver(e){}removeObserver(e){}toString(){return`Const: ${this.value}`}}function gt(...o){let e,t,i;return o.length===3?[e,t,i]=o:[t,i]=o,new of(new gn(e,void 0,i),t,i,()=>of.globalTransaction,ho)}class of extends zg{constructor(e,t,i,n,s){super(),this._debugNameData=e,this.event=t,this._getValue=i,this._getTransaction=n,this._equalityComparator=s,this.hasValue=!1,this.handleEvent=r=>{const a=this._getValue(r),l=this.value;(!this.hasValue||!this._equalityComparator(l,a))&&(this.value=a,this.hasValue&&c_(this._getTransaction(),d=>{for(const h of this.observers)d.updateObserver(h,this),h.handleChange(this,void 0)},()=>{const d=this.getDebugName();return"Event fired"+(d?`: ${d}`:"")}),this.hasValue=!0)}}getDebugName(){return this._debugNameData.getDebugName(this)}get debugName(){const e=this.getDebugName();return"From Event"+(e?`: ${e}`:"")}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0,this.hasValue=!1,this.value=void 0}get(){return this.subscription?(this.hasValue||this.handleEvent(void 0),this.value):this._getValue(void 0)}}(function(o){o.Observer=of;function e(t,i){let n=!1;of.globalTransaction===void 0&&(of.globalTransaction=t,n=!0);try{i()}finally{n&&(of.globalTransaction=void 0)}}o.batchEventsGlobally=e})(gt||(gt={}));function ks(o,e){return new $Z(o,e)}class $Z extends zg{constructor(e,t){super(),this.debugName=e,this.event=t,this.handleEvent=()=>{Xt(i=>{for(const n of this.observers)i.updateObserver(n,this),n.handleChange(this,void 0)},()=>this.debugName)}}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0}get(){}}function Q_(o){return typeof o=="string"?new hP(o):new hP(void 0,o)}class hP extends zg{get debugName(){return new gn(this._owner,this._debugName,void 0).getDebugName(this)??"Observable Signal"}toString(){return this.debugName}constructor(e,t){super(),this._debugName=e,this._owner=t}trigger(e,t){if(!e){Xt(i=>{this.trigger(i,t)},()=>`Trigger signal ${this.debugName}`);return}for(const i of this.observers)e.updateObserver(i,this),i.handleChange(this,t)}get(){}}function KZ(o){const e=new x7(!1,void 0);return o.addObserver(e),_e(()=>{o.removeObserver(e)})}OZ(KZ);function X_(o,e){const t=new x7(!0,e);return o.addObserver(t),e?e(o.get()):o.reportChanges(),_e(()=>{o.removeObserver(t)})}PZ(X_);class x7{constructor(e,t){this._forceRecompute=e,this._handleValue=t,this._counter=0}beginUpdate(e){this._counter++}endUpdate(e){this._counter--,this._counter===0&&this._forceRecompute&&(this._handleValue?this._handleValue(e.get()):e.reportChanges())}handlePossibleChange(e){}handleChange(e,t){}}function YT(o,e){let t;return dr({owner:o,debugReferenceFn:e},n=>(t=e(n,t),t))}function jZ(o,e,t,i){let n=new uP(t,i);return dr({debugReferenceFn:t,owner:o,onLastObserverRemoved:()=>{n.dispose(),n=new uP(t)}},r=>(n.setItems(e.read(r)),n.getItems()))}class uP{constructor(e,t){this._map=e,this._keySelector=t,this._cache=new Map,this._items=[]}dispose(){this._cache.forEach(e=>e.store.dispose()),this._cache.clear()}setItems(e){const t=[],i=new Set(this._cache.keys());for(const n of e){const s=this._keySelector?this._keySelector(n):n;let r=this._cache.get(s);if(r)i.delete(s);else{const a=new X;r={out:this._map(n,a),store:a},this._cache.set(s,r)}t.push(r.out)}for(const n of i)this._cache.get(n).store.dispose(),this._cache.delete(n);this._items=t}getItems(){return this._items}}function qZ(o,e){return YT(o,(t,i)=>i??e(t))}function k7(o,e,t,i){return e||(e=n=>n!=null),new Promise((n,s)=>{let r=!0,a=!1;const l=o.map(d=>({isFinished:e(d),error:t?t(d):!1,state:d})),c=We(d=>{const{isFinished:h,error:u,state:f}=l.read(d);(h||u)&&(r?a=!0:c.dispose(),u?s(u===!0?f:u):n(f))});if(i){const d=i.onCancellationRequested(()=>{c.dispose(),d.dispose(),s(new ha)});if(i.isCancellationRequested){c.dispose(),d.dispose(),s(new ha);return}}r=!1,a&&c.dispose()})}class GZ extends zg{get debugName(){return this._debugNameData.getDebugName(this)??"LazyObservableValue"}constructor(e,t,i){super(),this._debugNameData=e,this._equalityComparator=i,this._isUpToDate=!0,this._deltas=[],this._updateCounter=0,this._value=t}get(){return this._update(),this._value}_update(){if(!this._isUpToDate)if(this._isUpToDate=!0,this._deltas.length>0){for(const e of this.observers)for(const t of this._deltas)e.handleChange(this,t);this._deltas.length=0}else for(const e of this.observers)e.handleChange(this,void 0)}_beginUpdate(){if(this._updateCounter++,this._updateCounter===1)for(const e of this.observers)e.beginUpdate(this)}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){this._update();const e=[...this.observers];for(const t of e)t.endUpdate(this)}}addObserver(e){const t=!this.observers.has(e)&&this._updateCounter>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){const t=this.observers.has(e)&&this._updateCounter>0;super.removeObserver(e),t&&e.endUpdate(this)}set(e,t,i){if(i===void 0&&this._equalityComparator(this._value,e))return;let n;t||(t=n=new Ug(()=>{},()=>`Setting ${this.debugName}`));try{if(this._isUpToDate=!1,this._setValue(e),i!==void 0&&this._deltas.push(i),t.updateObserver({beginUpdate:()=>this._beginUpdate(),endUpdate:()=>this._endUpdate(),handleChange:(s,r)=>{},handlePossibleChange:s=>{}},this),this._updateCounter>1)for(const s of this.observers)s.handlePossibleChange(this)}finally{n&&n.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}function iD(o,e){return o.lazy?new GZ(new gn(o.owner,o.debugName,void 0),e,o.equalsFn??ho):new GT(new gn(o.owner,o.debugName,void 0),e,o.equalsFn??ho)}const Np=class Np extends z{constructor(e=!1){super(),this._onDidRequestBasicLanguageFeatures=this._register(new A),this.onDidRequestBasicLanguageFeatures=this._onDidRequestBasicLanguageFeatures.event,this._onDidRequestRichLanguageFeatures=this._register(new A),this.onDidRequestRichLanguageFeatures=this._onDidRequestRichLanguageFeatures.event,this._onDidChange=this._register(new A({leakWarningThreshold:200})),this.onDidChange=this._onDidChange.event,this._requestedBasicLanguages=new Set,this._requestedRichLanguages=new Set,Np.instanceCount++,this._registry=this._register(new Qk(!0,e)),this.languageIdCodec=this._registry.languageIdCodec,this._register(this._registry.onDidChange(()=>this._onDidChange.fire()))}dispose(){Np.instanceCount--,super.dispose()}isRegisteredLanguageId(e){return this._registry.isRegisteredLanguageId(e)}getLanguageIdByLanguageName(e){return this._registry.getLanguageIdByLanguageName(e)}getLanguageIdByMimeType(e){return this._registry.getLanguageIdByMimeType(e)}guessLanguageIdByFilepathOrFirstLine(e,t){const i=this._registry.guessLanguageIdByFilepathOrFirstLine(e,t);return xN(i,null)}createById(e){return new fP(this.onDidChange,()=>this._createAndGetLanguageIdentifier(e))}createByFilepathOrFirstLine(e,t){return new fP(this.onDidChange,()=>{const i=this.guessLanguageIdByFilepathOrFirstLine(e,t);return this._createAndGetLanguageIdentifier(i)})}_createAndGetLanguageIdentifier(e){return(!e||!this.isRegisteredLanguageId(e))&&(e=Bs),e}requestBasicLanguageFeatures(e){this._requestedBasicLanguages.has(e)||(this._requestedBasicLanguages.add(e),this._onDidRequestBasicLanguageFeatures.fire(e))}requestRichLanguageFeatures(e){this._requestedRichLanguages.has(e)||(this._requestedRichLanguages.add(e),this.requestBasicLanguageFeatures(e),si.getOrCreate(e),this._onDidRequestRichLanguageFeatures.fire(e))}};Np.instanceCount=0;let nD=Np;class fP{constructor(e,t){this._value=gt(this,e,()=>t()),this.onDidChange=J.fromObservable(this._value)}get languageId(){return this._value.get()}}const D7={TEXT:il.text},ZZ=()=>({get delay(){return-1},dispose:()=>{},showHover:()=>{}});let cy=ZZ;const YZ=new ua(()=>cy("mouse",!1)),QZ=new ua(()=>cy("element",!1));function XZ(o){cy=o}function Ks(o){return o==="element"?QZ.value:YZ.value}function QT(){return cy("element",!0)}let I7={showHover:()=>{},hideHover:()=>{},showAndFocusLastHover:()=>{},setupManagedHover:()=>null,showManagedHover:()=>{}};function JZ(o){I7=o}function La(){return I7}class eY{constructor(e){this.spliceables=e}splice(e,t,i){this.spliceables.forEach(n=>n.splice(e,t,i))}}class id extends Error{constructor(e,t){super(`ListError [${e}] ${t}`)}}function gP(o,e){const t=[];for(const i of e){if(o.start>=i.range.end)continue;if(o.ende.concat(t),[]))}class nY{get paddingTop(){return this._paddingTop}set paddingTop(e){this._size=this._size+e-this._paddingTop,this._paddingTop=e}constructor(e){this.groups=[],this._size=0,this._paddingTop=0,this._paddingTop=e??0,this._size=this._paddingTop}splice(e,t,i=[]){const n=i.length-t,s=gP({start:0,end:e},this.groups),r=gP({start:e+t,end:Number.POSITIVE_INFINITY},this.groups).map(l=>({range:sD(l.range,n),size:l.size})),a=i.map((l,c)=>({range:{start:e+c,end:e+c+1},size:l.size}));this.groups=iY(s,a,r),this._size=this._paddingTop+this.groups.reduce((l,c)=>l+c.size*(c.range.end-c.range.start),0)}get count(){const e=this.groups.length;return e?this.groups[e-1].range.end:0}get size(){return this._size}indexAt(e){if(e<0)return-1;if(e{for(const i of e)this.getRenderer(t).disposeTemplate(i.templateData),i.templateData=null}),this.cache.clear(),this.transactionNodesPendingRemoval.clear()}getRenderer(e){const t=this.renderers.get(e);if(!t)throw new Error(`No renderer found for ${e}`);return t}}var Ml=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};const nd={CurrentDragAndDropData:void 0},Tr={useShadows:!0,verticalScrollMode:1,setRowLineHeight:!0,setRowHeight:!0,supportDynamicHeights:!1,dnd:{getDragElements(o){return[o]},getDragURI(){return null},onDragStart(){},onDragOver(){return!1},drop(){},dispose(){}},horizontalScrolling:!1,transformOptimization:!0,alwaysConsumeMouseWheel:!0};class J_{constructor(e){this.elements=e}update(){}getData(){return this.elements}}class oY{constructor(e){this.elements=e}update(){}getData(){return this.elements}}class rY{constructor(){this.types=[],this.files=[]}update(e){if(e.types&&this.types.splice(0,this.types.length,...e.types),e.files){this.files.splice(0,this.files.length);for(let t=0;tn,e?.getPosInSet?this.getPosInSet=e.getPosInSet.bind(e):this.getPosInSet=(t,i)=>i+1,e?.getRole?this.getRole=e.getRole.bind(e):this.getRole=t=>"listitem",e?.isChecked?this.isChecked=e.isChecked.bind(e):this.isChecked=t=>{}}}const Rw=class Rw{get contentHeight(){return this.rangeMap.size}get onDidScroll(){return this.scrollableElement.onScroll}get scrollableElementDomNode(){return this.scrollableElement.getDomNode()}get horizontalScrolling(){return this._horizontalScrolling}set horizontalScrolling(e){if(e!==this._horizontalScrolling){if(e&&this.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");if(this._horizontalScrolling=e,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this._horizontalScrolling){for(const t of this.items)this.measureItemWidth(t);this.updateScrollWidth(),this.scrollableElement.setScrollDimensions({width:oS(this.domNode)}),this.rowsContainer.style.width=`${Math.max(this.scrollWidth||0,this.renderWidth)}px`}else this.scrollableElementWidthDelayer.cancel(),this.scrollableElement.setScrollDimensions({width:this.renderWidth,scrollWidth:this.renderWidth}),this.rowsContainer.style.width=""}}constructor(e,t,i,n=Tr){if(this.virtualDelegate=t,this.domId=`list_id_${++Rw.InstanceCount}`,this.renderers=new Map,this.renderWidth=0,this._scrollHeight=0,this.scrollableElementUpdateDisposable=null,this.scrollableElementWidthDelayer=new z_(50),this.splicing=!1,this.dragOverAnimationStopDisposable=z.None,this.dragOverMouseY=0,this.canDrop=!1,this.currentDragFeedbackDisposable=z.None,this.onDragLeaveTimeout=z.None,this.disposables=new X,this._onDidChangeContentHeight=new A,this._onDidChangeContentWidth=new A,this.onDidChangeContentHeight=J.latch(this._onDidChangeContentHeight.event,void 0,this.disposables),this._horizontalScrolling=!1,n.horizontalScrolling&&n.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");this.items=[],this.itemId=0,this.rangeMap=this.createRangeMap(n.paddingTop??0);for(const r of i)this.renderers.set(r.templateId,r);this.cache=this.disposables.add(new sY(this.renderers)),this.lastRenderTop=0,this.lastRenderHeight=0,this.domNode=document.createElement("div"),this.domNode.className="monaco-list",this.domNode.classList.add(this.domId),this.domNode.tabIndex=0,this.domNode.classList.toggle("mouse-support",typeof n.mouseSupport=="boolean"?n.mouseSupport:!0),this._horizontalScrolling=n.horizontalScrolling??Tr.horizontalScrolling,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this.paddingBottom=typeof n.paddingBottom>"u"?0:n.paddingBottom,this.accessibilityProvider=new lY(n.accessibilityProvider),this.rowsContainer=document.createElement("div"),this.rowsContainer.className="monaco-list-rows",(n.transformOptimization??Tr.transformOptimization)&&(this.rowsContainer.style.transform="translate3d(0px, 0px, 0px)",this.rowsContainer.style.overflow="hidden",this.rowsContainer.style.contain="strict"),this.disposables.add(fn.addTarget(this.rowsContainer)),this.scrollable=this.disposables.add(new Vg({forceIntegerValues:!0,smoothScrollDuration:n.smoothScrolling??!1?125:0,scheduleAtNextAnimationFrame:r=>fs(fe(this.domNode),r)})),this.scrollableElement=this.disposables.add(new X0(this.rowsContainer,{alwaysConsumeMouseWheel:n.alwaysConsumeMouseWheel??Tr.alwaysConsumeMouseWheel,horizontal:1,vertical:n.verticalScrollMode??Tr.verticalScrollMode,useShadows:n.useShadows??Tr.useShadows,mouseWheelScrollSensitivity:n.mouseWheelScrollSensitivity,fastScrollSensitivity:n.fastScrollSensitivity,scrollByPage:n.scrollByPage},this.scrollable)),this.domNode.appendChild(this.scrollableElement.getDomNode()),e.appendChild(this.domNode),this.scrollableElement.onScroll(this.onScroll,this,this.disposables),this.disposables.add(U(this.rowsContainer,St.Change,r=>this.onTouchChange(r))),this.disposables.add(U(this.scrollableElement.getDomNode(),"scroll",r=>r.target.scrollTop=0)),this.disposables.add(U(this.domNode,"dragover",r=>this.onDragOver(this.toDragEvent(r)))),this.disposables.add(U(this.domNode,"drop",r=>this.onDrop(this.toDragEvent(r)))),this.disposables.add(U(this.domNode,"dragleave",r=>this.onDragLeave(this.toDragEvent(r)))),this.disposables.add(U(this.domNode,"dragend",r=>this.onDragEnd(r))),this.setRowLineHeight=n.setRowLineHeight??Tr.setRowLineHeight,this.setRowHeight=n.setRowHeight??Tr.setRowHeight,this.supportDynamicHeights=n.supportDynamicHeights??Tr.supportDynamicHeights,this.dnd=n.dnd??this.disposables.add(Tr.dnd),this.layout(n.initialSize?.height,n.initialSize?.width)}updateOptions(e){e.paddingBottom!==void 0&&(this.paddingBottom=e.paddingBottom,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),e.smoothScrolling!==void 0&&this.scrollable.setSmoothScrollDuration(e.smoothScrolling?125:0),e.horizontalScrolling!==void 0&&(this.horizontalScrolling=e.horizontalScrolling);let t;if(e.scrollByPage!==void 0&&(t={...t??{},scrollByPage:e.scrollByPage}),e.mouseWheelScrollSensitivity!==void 0&&(t={...t??{},mouseWheelScrollSensitivity:e.mouseWheelScrollSensitivity}),e.fastScrollSensitivity!==void 0&&(t={...t??{},fastScrollSensitivity:e.fastScrollSensitivity}),t&&this.scrollableElement.updateOptions(t),e.paddingTop!==void 0&&e.paddingTop!==this.rangeMap.paddingTop){const i=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),n=e.paddingTop-this.rangeMap.paddingTop;this.rangeMap.paddingTop=e.paddingTop,this.render(i,Math.max(0,this.lastRenderTop+n),this.lastRenderHeight,void 0,void 0,!0),this.setScrollTop(this.lastRenderTop),this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.lastRenderTop,this.lastRenderHeight)}}createRangeMap(e){return new nY(e)}splice(e,t,i=[]){if(this.splicing)throw new Error("Can't run recursive splices.");this.splicing=!0;try{return this._splice(e,t,i)}finally{this.splicing=!1,this._onDidChangeContentHeight.fire(this.contentHeight)}}_splice(e,t,i=[]){const n=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),s={start:e,end:e+t},r=Yi.intersect(n,s),a=new Map;for(let y=r.end-1;y>=r.start;y--){const x=this.items[y];if(x.dragStartDisposable.dispose(),x.checkedDisposable.dispose(),x.row){let L=a.get(x.templateId);L||(L=[],a.set(x.templateId,L));const E=this.renderers.get(x.templateId);E&&E.disposeElement&&E.disposeElement(x.element,y,x.row.templateData,x.size),L.unshift(x.row)}x.row=null,x.stale=!0}const l={start:e+t,end:this.items.length},c=Yi.intersect(l,n),d=Yi.relativeComplement(l,n),h=i.map(y=>({id:String(this.itemId++),element:y,templateId:this.virtualDelegate.getTemplateId(y),size:this.virtualDelegate.getHeight(y),width:void 0,hasDynamicHeight:!!this.virtualDelegate.hasDynamicHeight&&this.virtualDelegate.hasDynamicHeight(y),lastDynamicHeightWidth:void 0,row:null,uri:void 0,dropTarget:!1,dragStartDisposable:z.None,checkedDisposable:z.None,stale:!1}));let u;e===0&&t>=this.items.length?(this.rangeMap=this.createRangeMap(this.rangeMap.paddingTop),this.rangeMap.splice(0,0,h),u=this.items,this.items=h):(this.rangeMap.splice(e,t,h),u=this.items.splice(e,t,...h));const f=i.length-t,g=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),p=sD(c,f),_=Yi.intersect(g,p);for(let y=_.start;y<_.end;y++)this.updateItemInDOM(this.items[y],y);const b=Yi.relativeComplement(p,g);for(const y of b)for(let x=y.start;xsD(y,f)),v=[{start:e,end:e+i.length},...C].map(y=>Yi.intersect(g,y)).reverse();for(const y of v)for(let x=y.end-1;x>=y.start;x--){const L=this.items[x],N=a.get(L.templateId)?.pop();this.insertItemInDOM(x,N)}for(const y of a.values())for(const x of y)this.cache.release(x);return this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight),u.map(y=>y.element)}eventuallyUpdateScrollDimensions(){this._scrollHeight=this.contentHeight,this.rowsContainer.style.height=`${this._scrollHeight}px`,this.scrollableElementUpdateDisposable||(this.scrollableElementUpdateDisposable=fs(fe(this.domNode),()=>{this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight}),this.updateScrollWidth(),this.scrollableElementUpdateDisposable=null}))}eventuallyUpdateScrollWidth(){if(!this.horizontalScrolling){this.scrollableElementWidthDelayer.cancel();return}this.scrollableElementWidthDelayer.trigger(()=>this.updateScrollWidth())}updateScrollWidth(){if(!this.horizontalScrolling)return;let e=0;for(const t of this.items)typeof t.width<"u"&&(e=Math.max(e,t.width));this.scrollWidth=e,this.scrollableElement.setScrollDimensions({scrollWidth:e===0?0:e+10}),this._onDidChangeContentWidth.fire(this.scrollWidth)}rerender(){if(this.supportDynamicHeights){for(const e of this.items)e.lastDynamicHeightWidth=void 0;this._rerender(this.lastRenderTop,this.lastRenderHeight)}}get length(){return this.items.length}get renderHeight(){return this.scrollableElement.getScrollDimensions().height}get firstVisibleIndex(){return this.getRenderRange(this.lastRenderTop,this.lastRenderHeight).start}element(e){return this.items[e].element}indexOf(e){return this.items.findIndex(t=>t.element===e)}domElement(e){const t=this.items[e].row;return t&&t.domNode}elementHeight(e){return this.items[e].size}elementTop(e){return this.rangeMap.positionAt(e)}indexAt(e){return this.rangeMap.indexAt(e)}indexAfter(e){return this.rangeMap.indexAfter(e)}layout(e,t){const i={height:typeof e=="number"?e:CV(this.domNode)};this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,i.scrollHeight=this.scrollHeight),this.scrollableElement.setScrollDimensions(i),typeof t<"u"&&(this.renderWidth=t,this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight)),this.horizontalScrolling&&this.scrollableElement.setScrollDimensions({width:typeof t=="number"?t:oS(this.domNode)})}render(e,t,i,n,s,r=!1){const a=this.getRenderRange(t,i),l=Yi.relativeComplement(a,e).reverse(),c=Yi.relativeComplement(e,a);if(r){const d=Yi.intersect(e,a);for(let h=d.start;h{for(const d of c)for(let h=d.start;h=d.start;h--)this.insertItemInDOM(h)}),n!==void 0&&(this.rowsContainer.style.left=`-${n}px`),this.rowsContainer.style.top=`-${t}px`,this.horizontalScrolling&&s!==void 0&&(this.rowsContainer.style.width=`${Math.max(s,this.renderWidth)}px`),this.lastRenderTop=t,this.lastRenderHeight=i}insertItemInDOM(e,t){const i=this.items[e];if(!i.row)if(t)i.row=t,i.stale=!0;else{const l=this.cache.alloc(i.templateId);i.row=l.row,i.stale||=l.isReusingConnectedDomNode}const n=this.accessibilityProvider.getRole(i.element)||"listitem";i.row.domNode.setAttribute("role",n);const s=this.accessibilityProvider.isChecked(i.element);if(typeof s=="boolean")i.row.domNode.setAttribute("aria-checked",String(!!s));else if(s){const l=c=>i.row.domNode.setAttribute("aria-checked",String(!!c));l(s.value),i.checkedDisposable=s.onDidChange(()=>l(s.value))}if(i.stale||!i.row.domNode.parentElement){const l=this.items.at(e+1)?.row?.domNode??null;(i.row.domNode.parentElement!==this.rowsContainer||i.row.domNode.nextElementSibling!==l)&&this.rowsContainer.insertBefore(i.row.domNode,l),i.stale=!1}this.updateItemInDOM(i,e);const r=this.renderers.get(i.templateId);if(!r)throw new Error(`No renderer found for template id ${i.templateId}`);r?.renderElement(i.element,e,i.row.templateData,i.size);const a=this.dnd.getDragURI(i.element);i.dragStartDisposable.dispose(),i.row.domNode.draggable=!!a,a&&(i.dragStartDisposable=U(i.row.domNode,"dragstart",l=>this.onDragStart(i.element,a,l))),this.horizontalScrolling&&(this.measureItemWidth(i),this.eventuallyUpdateScrollWidth())}measureItemWidth(e){if(!e.row||!e.row.domNode)return;e.row.domNode.style.width="fit-content",e.width=oS(e.row.domNode);const t=fe(e.row.domNode).getComputedStyle(e.row.domNode);t.paddingLeft&&(e.width+=parseFloat(t.paddingLeft)),t.paddingRight&&(e.width+=parseFloat(t.paddingRight)),e.row.domNode.style.width=""}updateItemInDOM(e,t){e.row.domNode.style.top=`${this.elementTop(t)}px`,this.setRowHeight&&(e.row.domNode.style.height=`${e.size}px`),this.setRowLineHeight&&(e.row.domNode.style.lineHeight=`${e.size}px`),e.row.domNode.setAttribute("data-index",`${t}`),e.row.domNode.setAttribute("data-last-element",t===this.length-1?"true":"false"),e.row.domNode.setAttribute("data-parity",t%2===0?"even":"odd"),e.row.domNode.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(e.element,t,this.length))),e.row.domNode.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(e.element,t))),e.row.domNode.setAttribute("id",this.getElementDomId(t)),e.row.domNode.classList.toggle("drop-target",e.dropTarget)}removeItemFromDOM(e){const t=this.items[e];if(t.dragStartDisposable.dispose(),t.checkedDisposable.dispose(),t.row){const i=this.renderers.get(t.templateId);i&&i.disposeElement&&i.disposeElement(t.element,e,t.row.templateData,t.size),this.cache.release(t.row),t.row=null}this.horizontalScrolling&&this.eventuallyUpdateScrollWidth()}getScrollTop(){return this.scrollableElement.getScrollPosition().scrollTop}setScrollTop(e,t){this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),this.scrollableElement.setScrollPosition({scrollTop:e,reuseAnimation:t})}get scrollTop(){return this.getScrollTop()}set scrollTop(e){this.setScrollTop(e)}get scrollHeight(){return this._scrollHeight+(this.horizontalScrolling?10:0)+this.paddingBottom}get onMouseClick(){return J.map(this.disposables.add(new ze(this.domNode,"click")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseDblClick(){return J.map(this.disposables.add(new ze(this.domNode,"dblclick")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseMiddleClick(){return J.filter(J.map(this.disposables.add(new ze(this.domNode,"auxclick")).event,e=>this.toMouseEvent(e),this.disposables),e=>e.browserEvent.button===1,this.disposables)}get onMouseDown(){return J.map(this.disposables.add(new ze(this.domNode,"mousedown")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseOver(){return J.map(this.disposables.add(new ze(this.domNode,"mouseover")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseOut(){return J.map(this.disposables.add(new ze(this.domNode,"mouseout")).event,e=>this.toMouseEvent(e),this.disposables)}get onContextMenu(){return J.any(J.map(this.disposables.add(new ze(this.domNode,"contextmenu")).event,e=>this.toMouseEvent(e),this.disposables),J.map(this.disposables.add(new ze(this.domNode,St.Contextmenu)).event,e=>this.toGestureEvent(e),this.disposables))}get onTouchStart(){return J.map(this.disposables.add(new ze(this.domNode,"touchstart")).event,e=>this.toTouchEvent(e),this.disposables)}get onTap(){return J.map(this.disposables.add(new ze(this.rowsContainer,St.Tap)).event,e=>this.toGestureEvent(e),this.disposables)}toMouseEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element;return{browserEvent:e,index:t,element:n}}toTouchEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element;return{browserEvent:e,index:t,element:n}}toGestureEvent(e){const t=this.getItemIndexFromEventTarget(e.initialTarget||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element;return{browserEvent:e,index:t,element:n}}toDragEvent(e){const t=this.getItemIndexFromEventTarget(e.target||null),i=typeof t>"u"?void 0:this.items[t],n=i&&i.element,s=this.getTargetSector(e,t);return{browserEvent:e,index:t,element:n,sector:s}}onScroll(e){try{const t=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight);this.render(t,e.scrollTop,e.height,e.scrollLeft,e.scrollWidth),this.supportDynamicHeights&&this._rerender(e.scrollTop,e.height,e.inSmoothScrolling)}catch(t){throw console.error("Got bad scroll event:",e),t}}onTouchChange(e){e.preventDefault(),e.stopPropagation(),this.scrollTop-=e.translationY}onDragStart(e,t,i){if(!i.dataTransfer)return;const n=this.dnd.getDragElements(e);if(i.dataTransfer.effectAllowed="copyMove",i.dataTransfer.setData(D7.TEXT,t),i.dataTransfer.setDragImage){let s;this.dnd.getDragLabel&&(s=this.dnd.getDragLabel(n,i)),typeof s>"u"&&(s=String(n.length));const r=ce(".monaco-drag-image");r.textContent=s,(c=>{for(;c&&!c.classList.contains("monaco-workbench");)c=c.parentElement;return c||this.domNode.ownerDocument})(this.domNode).appendChild(r),i.dataTransfer.setDragImage(r,-10,-10),setTimeout(()=>r.remove(),0)}this.domNode.classList.add("dragging"),this.currentDragData=new J_(n),nd.CurrentDragAndDropData=new oY(n),this.dnd.onDragStart?.(this.currentDragData,i)}onDragOver(e){if(e.browserEvent.preventDefault(),this.onDragLeaveTimeout.dispose(),nd.CurrentDragAndDropData&&nd.CurrentDragAndDropData.getData()==="vscode-ui"||(this.setupDragAndDropScrollTopAnimation(e.browserEvent),!e.browserEvent.dataTransfer))return!1;if(!this.currentDragData)if(nd.CurrentDragAndDropData)this.currentDragData=nd.CurrentDragAndDropData;else{if(!e.browserEvent.dataTransfer.types)return!1;this.currentDragData=new rY}const t=this.dnd.onDragOver(this.currentDragData,e.element,e.index,e.sector,e.browserEvent);if(this.canDrop=typeof t=="boolean"?t:t.accept,!this.canDrop)return this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),!1;e.browserEvent.dataTransfer.dropEffect=typeof t!="boolean"&&t.effect?.type===0?"copy":"move";let i;typeof t!="boolean"&&t.feedback?i=t.feedback:typeof e.index>"u"?i=[-1]:i=[e.index],i=Eh(i).filter(s=>s>=-1&&ss-r),i=i[0]===-1?[-1]:i;let n=typeof t!="boolean"&&t.effect&&t.effect.position?t.effect.position:"drop-target";if(aY(this.currentDragFeedback,i)&&this.currentDragFeedbackPosition===n)return!0;if(this.currentDragFeedback=i,this.currentDragFeedbackPosition=n,this.currentDragFeedbackDisposable.dispose(),i[0]===-1)this.domNode.classList.add(n),this.rowsContainer.classList.add(n),this.currentDragFeedbackDisposable=_e(()=>{this.domNode.classList.remove(n),this.rowsContainer.classList.remove(n)});else{if(i.length>1&&n!=="drop-target")throw new Error("Can't use multiple feedbacks with position different than 'over'");n==="drop-target-after"&&i[0]{for(const s of i){const r=this.items[s];r.dropTarget=!1,r.row?.domNode.classList.remove(n)}})}return!0}onDragLeave(e){this.onDragLeaveTimeout.dispose(),this.onDragLeaveTimeout=rg(()=>this.clearDragOverFeedback(),100,this.disposables),this.currentDragData&&this.dnd.onDragLeave?.(this.currentDragData,e.element,e.index,e.browserEvent)}onDrop(e){if(!this.canDrop)return;const t=this.currentDragData;this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,nd.CurrentDragAndDropData=void 0,!(!t||!e.browserEvent.dataTransfer)&&(e.browserEvent.preventDefault(),t.update(e.browserEvent.dataTransfer),this.dnd.drop(t,e.element,e.index,e.sector,e.browserEvent))}onDragEnd(e){this.canDrop=!1,this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,nd.CurrentDragAndDropData=void 0,this.dnd.onDragEnd?.(e)}clearDragOverFeedback(){this.currentDragFeedback=void 0,this.currentDragFeedbackPosition=void 0,this.currentDragFeedbackDisposable.dispose(),this.currentDragFeedbackDisposable=z.None}setupDragAndDropScrollTopAnimation(e){if(!this.dragOverAnimationDisposable){const t=_V(this.domNode).top;this.dragOverAnimationDisposable=RV(fe(this.domNode),this.animateDragAndDropScrollTop.bind(this,t))}this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationStopDisposable=rg(()=>{this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)},1e3,this.disposables),this.dragOverMouseY=e.pageY}animateDragAndDropScrollTop(e){if(this.dragOverMouseY===void 0)return;const t=this.dragOverMouseY-e,i=this.renderHeight-35;t<35?this.scrollTop+=Math.max(-14,Math.floor(.3*(t-35))):t>i&&(this.scrollTop+=Math.min(14,Math.floor(.3*(t-i))))}teardownDragAndDropScrollTopAnimation(){this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)}getTargetSector(e,t){if(t===void 0)return;const i=e.offsetY/this.items[t].size,n=Math.floor(i/.25);return bn(n,0,3)}getItemIndexFromEventTarget(e){const t=this.scrollableElement.getDomNode();let i=e;for(;(Ei(i)||kV(i))&&i!==this.rowsContainer&&t.contains(i);){const n=i.getAttribute("data-index");if(n){const s=Number(n);if(!isNaN(s))return s}i=i.parentElement}}getRenderRange(e,t){return{start:this.rangeMap.indexAt(e),end:this.rangeMap.indexAfter(e+t-1)}}_rerender(e,t,i){const n=this.getRenderRange(e,t);let s,r;e===this.elementTop(n.start)?(s=n.start,r=0):n.end-n.start>1&&(s=n.start+1,r=this.elementTop(s)-e);let a=0;for(;;){const l=this.getRenderRange(e,t);let c=!1;for(let d=l.start;d=u.start;f--)this.insertItemInDOM(f);for(let u=l.start;u=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};class cY{constructor(e){this.trait=e,this.renderedElements=[]}get templateId(){return`template:${this.trait.name}`}renderTemplate(e){return e}renderElement(e,t,i){const n=this.renderedElements.findIndex(s=>s.templateData===i);if(n>=0){const s=this.renderedElements[n];this.trait.unrender(i),s.index=t}else{const s={index:t,templateData:i};this.renderedElements.push(s)}this.trait.renderIndex(t,i)}splice(e,t,i){const n=[];for(const s of this.renderedElements)s.index=e+t&&n.push({index:s.index+i-t,templateData:s.templateData});this.renderedElements=n}renderIndexes(e){for(const{index:t,templateData:i}of this.renderedElements)e.indexOf(t)>-1&&this.trait.renderIndex(t,i)}disposeTemplate(e){const t=this.renderedElements.findIndex(i=>i.templateData===e);t<0||this.renderedElements.splice(t,1)}}let jC=class{get name(){return this._trait}get renderer(){return new cY(this)}constructor(e){this._trait=e,this.indexes=[],this.sortedIndexes=[],this._onChange=new A,this.onChange=this._onChange.event}splice(e,t,i){const n=i.length-t,s=e+t,r=[];let a=0;for(;a=s;)r.push(this.sortedIndexes[a++]+n);this.renderer.splice(e,t,i.length),this._set(r,r)}renderIndex(e,t){t.classList.toggle(this._trait,this.contains(e))}unrender(e){e.classList.remove(this._trait)}set(e,t){return this._set(e,[...e].sort(pP),t)}_set(e,t,i){const n=this.indexes,s=this.sortedIndexes;this.indexes=e,this.sortedIndexes=t;const r=oD(s,e);return this.renderer.renderIndexes(r),this._onChange.fire({indexes:e,browserEvent:i}),n}get(){return this.indexes}contains(e){return SN(this.sortedIndexes,e,pP)>=0}dispose(){xt(this._onChange)}};Gc([Jt],jC.prototype,"renderer",null);class dY extends jC{constructor(e){super("selected"),this.setAriaSelected=e}renderIndex(e,t){super.renderIndex(e,t),this.setAriaSelected&&(this.contains(e)?t.setAttribute("aria-selected","true"):t.setAttribute("aria-selected","false"))}}class MS{constructor(e,t,i){this.trait=e,this.view=t,this.identityProvider=i}splice(e,t,i){if(!this.identityProvider)return this.trait.splice(e,t,new Array(i.length).fill(!1));const n=this.trait.get().map(a=>this.identityProvider.getId(this.view.element(a)).toString());if(n.length===0)return this.trait.splice(e,t,new Array(i.length).fill(!1));const s=new Set(n),r=i.map(a=>s.has(this.identityProvider.getId(a).toString()));this.trait.splice(e,t,r)}}function pc(o){return o.tagName==="INPUT"||o.tagName==="TEXTAREA"}function eb(o,e){return o.classList.contains(e)?!0:o.classList.contains("monaco-list")||!o.parentElement?!1:eb(o.parentElement,e)}function Rm(o){return eb(o,"monaco-editor")}function hY(o){return eb(o,"monaco-custom-toggle")}function uY(o){return eb(o,"action-item")}function Jm(o){return eb(o,"monaco-tree-sticky-row")}function d_(o){return o.classList.contains("monaco-tree-sticky-container")}function E7(o){return o.tagName==="A"&&o.classList.contains("monaco-button")||o.tagName==="DIV"&&o.classList.contains("monaco-button-dropdown")?!0:o.classList.contains("monaco-list")||!o.parentElement?!1:E7(o.parentElement)}class N7{get onKeyDown(){return J.chain(this.disposables.add(new ze(this.view.domNode,"keydown")).event,e=>e.filter(t=>!pc(t.target)).map(t=>new Nt(t)))}constructor(e,t,i){this.list=e,this.view=t,this.disposables=new X,this.multipleSelectionDisposables=new X,this.multipleSelectionSupport=i.multipleSelectionSupport,this.disposables.add(this.onKeyDown(n=>{switch(n.keyCode){case 3:return this.onEnter(n);case 16:return this.onUpArrow(n);case 18:return this.onDownArrow(n);case 11:return this.onPageUpArrow(n);case 12:return this.onPageDownArrow(n);case 9:return this.onEscape(n);case 31:this.multipleSelectionSupport&&(Ue?n.metaKey:n.ctrlKey)&&this.onCtrlA(n)}}))}updateOptions(e){e.multipleSelectionSupport!==void 0&&(this.multipleSelectionSupport=e.multipleSelectionSupport)}onEnter(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(this.list.getFocus(),e.browserEvent)}onUpArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusPrevious(1,!1,e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onDownArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusNext(1,!1,e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onPageUpArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusPreviousPage(e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onPageDownArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusNextPage(e.browserEvent);const t=this.list.getFocus()[0];this.list.setAnchor(t),this.list.reveal(t),this.view.domNode.focus()}onCtrlA(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(Bn(this.list.length),e.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus()}onEscape(e){this.list.getSelection().length&&(e.preventDefault(),e.stopPropagation(),this.list.setSelection([],e.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus())}dispose(){this.disposables.dispose(),this.multipleSelectionDisposables.dispose()}}Gc([Jt],N7.prototype,"onKeyDown",null);var Qr;(function(o){o[o.Automatic=0]="Automatic",o[o.Trigger=1]="Trigger"})(Qr||(Qr={}));var rf;(function(o){o[o.Idle=0]="Idle",o[o.Typing=1]="Typing"})(rf||(rf={}));const fY=new class{mightProducePrintableCharacter(o){return o.ctrlKey||o.metaKey||o.altKey?!1:o.keyCode>=31&&o.keyCode<=56||o.keyCode>=21&&o.keyCode<=30||o.keyCode>=98&&o.keyCode<=107||o.keyCode>=85&&o.keyCode<=95}};class gY{constructor(e,t,i,n,s){this.list=e,this.view=t,this.keyboardNavigationLabelProvider=i,this.keyboardNavigationEventFilter=n,this.delegate=s,this.enabled=!1,this.state=rf.Idle,this.mode=Qr.Automatic,this.triggered=!1,this.previouslyFocused=-1,this.enabledDisposables=new X,this.disposables=new X,this.updateOptions(e.options)}updateOptions(e){e.typeNavigationEnabled??!0?this.enable():this.disable(),this.mode=e.typeNavigationMode??Qr.Automatic}enable(){if(this.enabled)return;let e=!1;const t=J.chain(this.enabledDisposables.add(new ze(this.view.domNode,"keydown")).event,s=>s.filter(r=>!pc(r.target)).filter(()=>this.mode===Qr.Automatic||this.triggered).map(r=>new Nt(r)).filter(r=>e||this.keyboardNavigationEventFilter(r)).filter(r=>this.delegate.mightProducePrintableCharacter(r)).forEach(r=>je.stop(r,!0)).map(r=>r.browserEvent.key)),i=J.debounce(t,()=>null,800,void 0,void 0,void 0,this.enabledDisposables);J.reduce(J.any(t,i),(s,r)=>r===null?null:(s||"")+r,void 0,this.enabledDisposables)(this.onInput,this,this.enabledDisposables),i(this.onClear,this,this.enabledDisposables),t(()=>e=!0,void 0,this.enabledDisposables),i(()=>e=!1,void 0,this.enabledDisposables),this.enabled=!0,this.triggered=!1}disable(){this.enabled&&(this.enabledDisposables.clear(),this.enabled=!1,this.triggered=!1)}onClear(){const e=this.list.getFocus();if(e.length>0&&e[0]===this.previouslyFocused){const t=this.list.options.accessibilityProvider?.getAriaLabel(this.list.element(e[0]));typeof t=="string"?El(t):t&&El(t.get())}this.previouslyFocused=-1}onInput(e){if(!e){this.state=rf.Idle,this.triggered=!1;return}const t=this.list.getFocus(),i=t.length>0?t[0]:0,n=this.state===rf.Idle?1:0;this.state=rf.Typing;for(let s=0;s1&&c.length===1){this.previouslyFocused=i,this.list.setFocus([r]),this.list.reveal(r);return}}}else if(typeof l>"u"||WC(e,l)){this.previouslyFocused=i,this.list.setFocus([r]),this.list.reveal(r);return}}}dispose(){this.disable(),this.enabledDisposables.dispose(),this.disposables.dispose()}}class mY{constructor(e,t){this.list=e,this.view=t,this.disposables=new X;const i=J.chain(this.disposables.add(new ze(t.domNode,"keydown")).event,s=>s.filter(r=>!pc(r.target)).map(r=>new Nt(r)));J.chain(i,s=>s.filter(r=>r.keyCode===2&&!r.ctrlKey&&!r.metaKey&&!r.shiftKey&&!r.altKey))(this.onTab,this,this.disposables)}onTab(e){if(e.target!==this.view.domNode)return;const t=this.list.getFocus();if(t.length===0)return;const i=this.view.domElement(t[0]);if(!i)return;const n=i.querySelector("[tabIndex]");if(!n||!Ei(n)||n.tabIndex===-1)return;const s=fe(n).getComputedStyle(n);s.visibility==="hidden"||s.display==="none"||(e.preventDefault(),e.stopPropagation(),n.focus())}dispose(){this.disposables.dispose()}}function T7(o){return Ue?o.browserEvent.metaKey:o.browserEvent.ctrlKey}function M7(o){return o.browserEvent.shiftKey}function pY(o){return tT(o)&&o.button===2}const mP={isSelectionSingleChangeEvent:T7,isSelectionRangeChangeEvent:M7};class R7{constructor(e){this.list=e,this.disposables=new X,this._onPointer=new A,this.onPointer=this._onPointer.event,e.options.multipleSelectionSupport!==!1&&(this.multipleSelectionController=this.list.options.multipleSelectionController||mP),this.mouseSupport=typeof e.options.mouseSupport>"u"||!!e.options.mouseSupport,this.mouseSupport&&(e.onMouseDown(this.onMouseDown,this,this.disposables),e.onContextMenu(this.onContextMenu,this,this.disposables),e.onMouseDblClick(this.onDoubleClick,this,this.disposables),e.onTouchStart(this.onMouseDown,this,this.disposables),this.disposables.add(fn.addTarget(e.getHTMLElement()))),J.any(e.onMouseClick,e.onMouseMiddleClick,e.onTap)(this.onViewPointer,this,this.disposables)}updateOptions(e){e.multipleSelectionSupport!==void 0&&(this.multipleSelectionController=void 0,e.multipleSelectionSupport&&(this.multipleSelectionController=this.list.options.multipleSelectionController||mP))}isSelectionSingleChangeEvent(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionSingleChangeEvent(e):!1}isSelectionRangeChangeEvent(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionRangeChangeEvent(e):!1}isSelectionChangeEvent(e){return this.isSelectionSingleChangeEvent(e)||this.isSelectionRangeChangeEvent(e)}onMouseDown(e){Rm(e.browserEvent.target)||Xi()!==e.browserEvent.target&&this.list.domFocus()}onContextMenu(e){if(pc(e.browserEvent.target)||Rm(e.browserEvent.target))return;const t=typeof e.index>"u"?[]:[e.index];this.list.setFocus(t,e.browserEvent)}onViewPointer(e){if(!this.mouseSupport||pc(e.browserEvent.target)||Rm(e.browserEvent.target)||e.browserEvent.isHandledByList)return;e.browserEvent.isHandledByList=!0;const t=e.index;if(typeof t>"u"){this.list.setFocus([],e.browserEvent),this.list.setSelection([],e.browserEvent),this.list.setAnchor(void 0);return}if(this.isSelectionChangeEvent(e))return this.changeSelection(e);this.list.setFocus([t],e.browserEvent),this.list.setAnchor(t),pY(e.browserEvent)||this.list.setSelection([t],e.browserEvent),this._onPointer.fire(e)}onDoubleClick(e){if(pc(e.browserEvent.target)||Rm(e.browserEvent.target)||this.isSelectionChangeEvent(e)||e.browserEvent.isHandledByList)return;e.browserEvent.isHandledByList=!0;const t=this.list.getFocus();this.list.setSelection(t,e.browserEvent)}changeSelection(e){const t=e.index;let i=this.list.getAnchor();if(this.isSelectionRangeChangeEvent(e)){typeof i>"u"&&(i=this.list.getFocus()[0]??t,this.list.setAnchor(i));const n=Math.min(i,t),s=Math.max(i,t),r=Bn(n,s+1),a=this.list.getSelection(),l=CY(oD(a,[i]),i);if(l.length===0)return;const c=oD(r,vY(a,l));this.list.setSelection(c,e.browserEvent),this.list.setFocus([t],e.browserEvent)}else if(this.isSelectionSingleChangeEvent(e)){const n=this.list.getSelection(),s=n.filter(r=>r!==t);this.list.setFocus([t]),this.list.setAnchor(t),n.length===s.length?this.list.setSelection([...s,t],e.browserEvent):this.list.setSelection(s,e.browserEvent)}}dispose(){this.disposables.dispose()}}class A7{constructor(e,t){this.styleElement=e,this.selectorSuffix=t}style(e){const t=this.selectorSuffix&&`.${this.selectorSuffix}`,i=[];e.listBackground&&i.push(`.monaco-list${t} .monaco-list-rows { background: ${e.listBackground}; }`),e.listFocusBackground&&(i.push(`.monaco-list${t}:focus .monaco-list-row.focused { background-color: ${e.listFocusBackground}; }`),i.push(`.monaco-list${t}:focus .monaco-list-row.focused:hover { background-color: ${e.listFocusBackground}; }`)),e.listFocusForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.focused { color: ${e.listFocusForeground}; }`),e.listActiveSelectionBackground&&(i.push(`.monaco-list${t}:focus .monaco-list-row.selected { background-color: ${e.listActiveSelectionBackground}; }`),i.push(`.monaco-list${t}:focus .monaco-list-row.selected:hover { background-color: ${e.listActiveSelectionBackground}; }`)),e.listActiveSelectionForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.selected { color: ${e.listActiveSelectionForeground}; }`),e.listActiveSelectionIconForeground&&i.push(`.monaco-list${t}:focus .monaco-list-row.selected .codicon { color: ${e.listActiveSelectionIconForeground}; }`),e.listFocusAndSelectionBackground&&i.push(` - .monaco-drag-image, - .monaco-list${t}:focus .monaco-list-row.selected.focused { background-color: ${e.listFocusAndSelectionBackground}; } - `),e.listFocusAndSelectionForeground&&i.push(` - .monaco-drag-image, - .monaco-list${t}:focus .monaco-list-row.selected.focused { color: ${e.listFocusAndSelectionForeground}; } - `),e.listInactiveFocusForeground&&(i.push(`.monaco-list${t} .monaco-list-row.focused { color: ${e.listInactiveFocusForeground}; }`),i.push(`.monaco-list${t} .monaco-list-row.focused:hover { color: ${e.listInactiveFocusForeground}; }`)),e.listInactiveSelectionIconForeground&&i.push(`.monaco-list${t} .monaco-list-row.focused .codicon { color: ${e.listInactiveSelectionIconForeground}; }`),e.listInactiveFocusBackground&&(i.push(`.monaco-list${t} .monaco-list-row.focused { background-color: ${e.listInactiveFocusBackground}; }`),i.push(`.monaco-list${t} .monaco-list-row.focused:hover { background-color: ${e.listInactiveFocusBackground}; }`)),e.listInactiveSelectionBackground&&(i.push(`.monaco-list${t} .monaco-list-row.selected { background-color: ${e.listInactiveSelectionBackground}; }`),i.push(`.monaco-list${t} .monaco-list-row.selected:hover { background-color: ${e.listInactiveSelectionBackground}; }`)),e.listInactiveSelectionForeground&&i.push(`.monaco-list${t} .monaco-list-row.selected { color: ${e.listInactiveSelectionForeground}; }`),e.listHoverBackground&&i.push(`.monaco-list${t}:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused) { background-color: ${e.listHoverBackground}; }`),e.listHoverForeground&&i.push(`.monaco-list${t}:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused) { color: ${e.listHoverForeground}; }`);const n=vl(e.listFocusAndSelectionOutline,vl(e.listSelectionOutline,e.listFocusOutline??""));n&&i.push(`.monaco-list${t}:focus .monaco-list-row.focused.selected { outline: 1px solid ${n}; outline-offset: -1px;}`),e.listFocusOutline&&i.push(` - .monaco-drag-image, - .monaco-list${t}:focus .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; } - .monaco-workbench.context-menu-visible .monaco-list${t}.last-focused .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; } - `);const s=vl(e.listSelectionOutline,e.listInactiveFocusOutline??"");s&&i.push(`.monaco-list${t} .monaco-list-row.focused.selected { outline: 1px dotted ${s}; outline-offset: -1px; }`),e.listSelectionOutline&&i.push(`.monaco-list${t} .monaco-list-row.selected { outline: 1px dotted ${e.listSelectionOutline}; outline-offset: -1px; }`),e.listInactiveFocusOutline&&i.push(`.monaco-list${t} .monaco-list-row.focused { outline: 1px dotted ${e.listInactiveFocusOutline}; outline-offset: -1px; }`),e.listHoverOutline&&i.push(`.monaco-list${t} .monaco-list-row:hover { outline: 1px dashed ${e.listHoverOutline}; outline-offset: -1px; }`),e.listDropOverBackground&&i.push(` - .monaco-list${t}.drop-target, - .monaco-list${t} .monaco-list-rows.drop-target, - .monaco-list${t} .monaco-list-row.drop-target { background-color: ${e.listDropOverBackground} !important; color: inherit !important; } - `),e.listDropBetweenBackground&&(i.push(` - .monaco-list${t} .monaco-list-rows.drop-target-before .monaco-list-row:first-child::before, - .monaco-list${t} .monaco-list-row.drop-target-before::before { - content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 1px; - background-color: ${e.listDropBetweenBackground}; - }`),i.push(` - .monaco-list${t} .monaco-list-rows.drop-target-after .monaco-list-row:last-child::after, - .monaco-list${t} .monaco-list-row.drop-target-after::after { - content: ""; position: absolute; bottom: 0px; left: 0px; width: 100%; height: 1px; - background-color: ${e.listDropBetweenBackground}; - }`)),e.tableColumnsBorder&&i.push(` - .monaco-table > .monaco-split-view2, - .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before, - .monaco-workbench:not(.reduce-motion) .monaco-table:hover > .monaco-split-view2, - .monaco-workbench:not(.reduce-motion) .monaco-table:hover > .monaco-split-view2 .monaco-sash.vertical::before { - border-color: ${e.tableColumnsBorder}; - } - - .monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2, - .monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before { - border-color: transparent; - } - `),e.tableOddRowsBackgroundColor&&i.push(` - .monaco-table .monaco-list-row[data-parity=odd]:not(.focused):not(.selected):not(:hover) .monaco-table-tr, - .monaco-table .monaco-list:not(:focus) .monaco-list-row[data-parity=odd].focused:not(.selected):not(:hover) .monaco-table-tr, - .monaco-table .monaco-list:not(.focused) .monaco-list-row[data-parity=odd].focused:not(.selected):not(:hover) .monaco-table-tr { - background-color: ${e.tableOddRowsBackgroundColor}; - } - `),this.styleElement.textContent=i.join(` -`)}}const _Y={listFocusBackground:"#7FB0D0",listActiveSelectionBackground:"#0E639C",listActiveSelectionForeground:"#FFFFFF",listActiveSelectionIconForeground:"#FFFFFF",listFocusAndSelectionOutline:"#90C2F9",listFocusAndSelectionBackground:"#094771",listFocusAndSelectionForeground:"#FFFFFF",listInactiveSelectionBackground:"#3F3F46",listInactiveSelectionIconForeground:"#FFFFFF",listHoverBackground:"#2A2D2E",listDropOverBackground:"#383B3D",listDropBetweenBackground:"#EEEEEE",treeIndentGuidesStroke:"#a9a9a9",treeInactiveIndentGuidesStroke:q.fromHex("#a9a9a9").transparent(.4).toString(),tableColumnsBorder:q.fromHex("#cccccc").transparent(.2).toString(),tableOddRowsBackgroundColor:q.fromHex("#cccccc").transparent(.04).toString(),listBackground:void 0,listFocusForeground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusForeground:void 0,listInactiveFocusBackground:void 0,listHoverForeground:void 0,listFocusOutline:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listHoverOutline:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},bY={keyboardSupport:!0,mouseSupport:!0,multipleSelectionSupport:!0,dnd:{getDragURI(){return null},onDragStart(){},onDragOver(){return!1},drop(){},dispose(){}}};function CY(o,e){const t=o.indexOf(e);if(t===-1)return[];const i=[];let n=t-1;for(;n>=0&&o[n]===e-(t-n);)i.push(o[n--]);for(i.reverse(),n=t;n=o.length)t.push(e[n++]);else if(n>=e.length)t.push(o[i++]);else if(o[i]===e[n]){t.push(o[i]),i++,n++;continue}else o[i]=o.length)t.push(e[n++]);else if(n>=e.length)t.push(o[i++]);else if(o[i]===e[n]){i++,n++;continue}else o[i]o-e;class wY{constructor(e,t){this._templateId=e,this.renderers=t}get templateId(){return this._templateId}renderTemplate(e){return this.renderers.map(t=>t.renderTemplate(e))}renderElement(e,t,i,n){let s=0;for(const r of this.renderers)r.renderElement(e,t,i[s++],n)}disposeElement(e,t,i,n){let s=0;for(const r of this.renderers)r.disposeElement?.(e,t,i[s],n),s+=1}disposeTemplate(e){let t=0;for(const i of this.renderers)i.disposeTemplate(e[t++])}}class yY{constructor(e){this.accessibilityProvider=e,this.templateId="a18n"}renderTemplate(e){return{container:e,disposables:new X}}renderElement(e,t,i){const n=this.accessibilityProvider.getAriaLabel(e),s=n&&typeof n!="string"?n:wg(n);i.disposables.add(We(a=>{this.setAriaLabel(a.readObservable(s),i.container)}));const r=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(e);typeof r=="number"?i.container.setAttribute("aria-level",`${r}`):i.container.removeAttribute("aria-level")}setAriaLabel(e,t){e?t.setAttribute("aria-label",e):t.removeAttribute("aria-label")}disposeElement(e,t,i,n){i.disposables.clear()}disposeTemplate(e){e.disposables.dispose()}}class SY{constructor(e,t){this.list=e,this.dnd=t}getDragElements(e){const t=this.list.getSelectedElements();return t.indexOf(e)>-1?t:[e]}getDragURI(e){return this.dnd.getDragURI(e)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e,t)}onDragStart(e,t){this.dnd.onDragStart?.(e,t)}onDragOver(e,t,i,n,s){return this.dnd.onDragOver(e,t,i,n,s)}onDragLeave(e,t,i,n){this.dnd.onDragLeave?.(e,t,i,n)}onDragEnd(e){this.dnd.onDragEnd?.(e)}drop(e,t,i,n,s){this.dnd.drop(e,t,i,n,s)}dispose(){this.dnd.dispose()}}class go{get onDidChangeFocus(){return J.map(this.eventBufferer.wrapEvent(this.focus.onChange),e=>this.toListEvent(e),this.disposables)}get onDidChangeSelection(){return J.map(this.eventBufferer.wrapEvent(this.selection.onChange),e=>this.toListEvent(e),this.disposables)}get domId(){return this.view.domId}get onDidScroll(){return this.view.onDidScroll}get onMouseClick(){return this.view.onMouseClick}get onMouseDblClick(){return this.view.onMouseDblClick}get onMouseMiddleClick(){return this.view.onMouseMiddleClick}get onPointer(){return this.mouseController.onPointer}get onMouseDown(){return this.view.onMouseDown}get onMouseOver(){return this.view.onMouseOver}get onMouseOut(){return this.view.onMouseOut}get onTouchStart(){return this.view.onTouchStart}get onTap(){return this.view.onTap}get onContextMenu(){let e=!1;const t=J.chain(this.disposables.add(new ze(this.view.domNode,"keydown")).event,s=>s.map(r=>new Nt(r)).filter(r=>e=r.keyCode===58||r.shiftKey&&r.keyCode===68).map(r=>je.stop(r,!0)).filter(()=>!1)),i=J.chain(this.disposables.add(new ze(this.view.domNode,"keyup")).event,s=>s.forEach(()=>e=!1).map(r=>new Nt(r)).filter(r=>r.keyCode===58||r.shiftKey&&r.keyCode===68).map(r=>je.stop(r,!0)).map(({browserEvent:r})=>{const a=this.getFocus(),l=a.length?a[0]:void 0,c=typeof l<"u"?this.view.element(l):void 0,d=typeof l<"u"?this.view.domElement(l):this.view.domNode;return{index:l,element:c,anchor:d,browserEvent:r}})),n=J.chain(this.view.onContextMenu,s=>s.filter(r=>!e).map(({element:r,index:a,browserEvent:l})=>({element:r,index:a,anchor:new ur(fe(this.view.domNode),l),browserEvent:l})));return J.any(t,i,n)}get onKeyDown(){return this.disposables.add(new ze(this.view.domNode,"keydown")).event}get onDidFocus(){return J.signal(this.disposables.add(new ze(this.view.domNode,"focus",!0)).event)}get onDidBlur(){return J.signal(this.disposables.add(new ze(this.view.domNode,"blur",!0)).event)}constructor(e,t,i,n,s=bY){this.user=e,this._options=s,this.focus=new jC("focused"),this.anchor=new jC("anchor"),this.eventBufferer=new W_,this._ariaLabel="",this.disposables=new X,this._onDidDispose=new A,this.onDidDispose=this._onDidDispose.event;const r=this._options.accessibilityProvider&&this._options.accessibilityProvider.getWidgetRole?this._options.accessibilityProvider?.getWidgetRole():"list";this.selection=new dY(r!=="listbox");const a=[this.focus.renderer,this.selection.renderer];this.accessibilityProvider=s.accessibilityProvider,this.accessibilityProvider&&(a.push(new yY(this.accessibilityProvider)),this.accessibilityProvider.onDidChangeActiveDescendant?.(this.onDidChangeActiveDescendant,this,this.disposables)),n=n.map(c=>new wY(c.templateId,[...a,c]));const l={...s,dnd:s.dnd&&new SY(this,s.dnd)};if(this.view=this.createListView(t,i,n,l),this.view.domNode.setAttribute("role",r),s.styleController)this.styleController=s.styleController(this.view.domId);else{const c=Vs(this.view.domNode);this.styleController=new A7(c,this.view.domId)}if(this.spliceable=new eY([new MS(this.focus,this.view,s.identityProvider),new MS(this.selection,this.view,s.identityProvider),new MS(this.anchor,this.view,s.identityProvider),this.view]),this.disposables.add(this.focus),this.disposables.add(this.selection),this.disposables.add(this.anchor),this.disposables.add(this.view),this.disposables.add(this._onDidDispose),this.disposables.add(new mY(this,this.view)),(typeof s.keyboardSupport!="boolean"||s.keyboardSupport)&&(this.keyboardController=new N7(this,this.view,s),this.disposables.add(this.keyboardController)),s.keyboardNavigationLabelProvider){const c=s.keyboardNavigationDelegate||fY;this.typeNavigationController=new gY(this,this.view,s.keyboardNavigationLabelProvider,s.keyboardNavigationEventFilter??(()=>!0),c),this.disposables.add(this.typeNavigationController)}this.mouseController=this.createMouseController(s),this.disposables.add(this.mouseController),this.onDidChangeFocus(this._onFocusChange,this,this.disposables),this.onDidChangeSelection(this._onSelectionChange,this,this.disposables),this.accessibilityProvider&&(this.ariaLabel=this.accessibilityProvider.getWidgetAriaLabel()),this._options.multipleSelectionSupport!==!1&&this.view.domNode.setAttribute("aria-multiselectable","true")}createListView(e,t,i,n){return new Bo(e,t,i,n)}createMouseController(e){return new R7(this)}updateOptions(e={}){this._options={...this._options,...e},this.typeNavigationController?.updateOptions(this._options),this._options.multipleSelectionController!==void 0&&(this._options.multipleSelectionSupport?this.view.domNode.setAttribute("aria-multiselectable","true"):this.view.domNode.removeAttribute("aria-multiselectable")),this.mouseController.updateOptions(e),this.keyboardController?.updateOptions(e),this.view.updateOptions(e)}get options(){return this._options}splice(e,t,i=[]){if(e<0||e>this.view.length)throw new id(this.user,`Invalid start index: ${e}`);if(t<0)throw new id(this.user,`Invalid delete count: ${t}`);t===0&&i.length===0||this.eventBufferer.bufferEvents(()=>this.spliceable.splice(e,t,i))}rerender(){this.view.rerender()}element(e){return this.view.element(e)}indexOf(e){return this.view.indexOf(e)}indexAt(e){return this.view.indexAt(e)}get length(){return this.view.length}get contentHeight(){return this.view.contentHeight}get onDidChangeContentHeight(){return this.view.onDidChangeContentHeight}get scrollTop(){return this.view.getScrollTop()}set scrollTop(e){this.view.setScrollTop(e)}get scrollHeight(){return this.view.scrollHeight}get renderHeight(){return this.view.renderHeight}get firstVisibleIndex(){return this.view.firstVisibleIndex}get ariaLabel(){return this._ariaLabel}set ariaLabel(e){this._ariaLabel=e,this.view.domNode.setAttribute("aria-label",e)}domFocus(){this.view.domNode.focus({preventScroll:!0})}layout(e,t){this.view.layout(e,t)}setSelection(e,t){for(const i of e)if(i<0||i>=this.length)throw new id(this.user,`Invalid index ${i}`);this.selection.set(e,t)}getSelection(){return this.selection.get()}getSelectedElements(){return this.getSelection().map(e=>this.view.element(e))}setAnchor(e){if(typeof e>"u"){this.anchor.set([]);return}if(e<0||e>=this.length)throw new id(this.user,`Invalid index ${e}`);this.anchor.set([e])}getAnchor(){return xN(this.anchor.get(),void 0)}getAnchorElement(){const e=this.getAnchor();return typeof e>"u"?void 0:this.element(e)}setFocus(e,t){for(const i of e)if(i<0||i>=this.length)throw new id(this.user,`Invalid index ${i}`);this.focus.set(e,t)}focusNext(e=1,t=!1,i,n){if(this.length===0)return;const s=this.focus.get(),r=this.findNextIndex(s.length>0?s[0]+e:0,t,n);r>-1&&this.setFocus([r],i)}focusPrevious(e=1,t=!1,i,n){if(this.length===0)return;const s=this.focus.get(),r=this.findPreviousIndex(s.length>0?s[0]-e:0,t,n);r>-1&&this.setFocus([r],i)}async focusNextPage(e,t){let i=this.view.indexAt(this.view.getScrollTop()+this.view.renderHeight);i=i===0?0:i-1;const n=this.getFocus()[0];if(n!==i&&(n===void 0||i>n)){const s=this.findPreviousIndex(i,!1,t);s>-1&&n!==s?this.setFocus([s],e):this.setFocus([i],e)}else{const s=this.view.getScrollTop();let r=s+this.view.renderHeight;i>n&&(r-=this.view.elementHeight(i)),this.view.setScrollTop(r),this.view.getScrollTop()!==s&&(this.setFocus([]),await og(0),await this.focusNextPage(e,t))}}async focusPreviousPage(e,t,i=()=>0){let n;const s=i(),r=this.view.getScrollTop()+s;r===0?n=this.view.indexAt(r):n=this.view.indexAfter(r-1);const a=this.getFocus()[0];if(a!==n&&(a===void 0||a>=n)){const l=this.findNextIndex(n,!1,t);l>-1&&a!==l?this.setFocus([l],e):this.setFocus([n],e)}else{const l=r;this.view.setScrollTop(r-this.view.renderHeight-s),this.view.getScrollTop()+i()!==l&&(this.setFocus([]),await og(0),await this.focusPreviousPage(e,t,i))}}focusLast(e,t){if(this.length===0)return;const i=this.findPreviousIndex(this.length-1,!1,t);i>-1&&this.setFocus([i],e)}focusFirst(e,t){this.focusNth(0,e,t)}focusNth(e,t,i){if(this.length===0)return;const n=this.findNextIndex(e,!1,i);n>-1&&this.setFocus([n],t)}findNextIndex(e,t=!1,i){for(let n=0;n=this.length&&!t)return-1;if(e=e%this.length,!i||i(this.element(e)))return e;e++}return-1}findPreviousIndex(e,t=!1,i){for(let n=0;nthis.view.element(e))}reveal(e,t,i=0){if(e<0||e>=this.length)throw new id(this.user,`Invalid index ${e}`);const n=this.view.getScrollTop(),s=this.view.elementTop(e),r=this.view.elementHeight(e);if(Pg(t)){const a=r-this.view.renderHeight+i;this.view.setScrollTop(a*bn(t,0,1)+s-i)}else{const a=s+r,l=n+this.view.renderHeight;s=l||(s=l&&r>=this.view.renderHeight?this.view.setScrollTop(s-i):a>=l&&this.view.setScrollTop(a-this.view.renderHeight))}}getRelativeTop(e,t=0){if(e<0||e>=this.length)throw new id(this.user,`Invalid index ${e}`);const i=this.view.getScrollTop(),n=this.view.elementTop(e),s=this.view.elementHeight(e);if(ni+this.view.renderHeight)return null;const r=s-this.view.renderHeight+t;return Math.abs((i+t-n)/r)}getHTMLElement(){return this.view.domNode}getScrollableElement(){return this.view.scrollableElementDomNode}getElementID(e){return this.view.getElementDomId(e)}getElementTop(e){return this.view.elementTop(e)}style(e){this.styleController.style(e)}toListEvent({indexes:e,browserEvent:t}){return{indexes:e,elements:e.map(i=>this.view.element(i)),browserEvent:t}}_onFocusChange(){const e=this.focus.get();this.view.domNode.classList.toggle("element-focused",e.length>0),this.onDidChangeActiveDescendant()}onDidChangeActiveDescendant(){const e=this.focus.get();if(e.length>0){let t;this.accessibilityProvider?.getActiveDescendantId&&(t=this.accessibilityProvider.getActiveDescendantId(this.view.element(e[0]))),this.view.domNode.setAttribute("aria-activedescendant",t||this.view.getElementDomId(e[0]))}else this.view.domNode.removeAttribute("aria-activedescendant")}_onSelectionChange(){const e=this.selection.get();this.view.domNode.classList.toggle("selection-none",e.length===0),this.view.domNode.classList.toggle("selection-single",e.length===1),this.view.domNode.classList.toggle("selection-multiple",e.length>1)}dispose(){this._onDidDispose.fire(),this.disposables.dispose(),this._onDidDispose.dispose()}}Gc([Jt],go.prototype,"onDidChangeFocus",null);Gc([Jt],go.prototype,"onDidChangeSelection",null);Gc([Jt],go.prototype,"onContextMenu",null);Gc([Jt],go.prototype,"onKeyDown",null);Gc([Jt],go.prototype,"onDidFocus",null);Gc([Jt],go.prototype,"onDidBlur",null);const $d=ce,P7="selectOption.entry.template";class LY{get templateId(){return P7}renderTemplate(e){const t=Object.create(null);return t.root=e,t.text=Z(e,$d(".option-text")),t.detail=Z(e,$d(".option-detail")),t.decoratorRight=Z(e,$d(".option-decorator-right")),t}renderElement(e,t,i){const n=i,s=e.text,r=e.detail,a=e.decoratorRight,l=e.isDisabled;n.text.textContent=s,n.detail.textContent=r||"",n.decoratorRight.innerText=a||"",l?n.root.classList.add("option-disabled"):n.root.classList.remove("option-disabled")}disposeTemplate(e){}}const Hr=class Hr extends z{constructor(e,t,i,n,s){super(),this.options=[],this._currentSelection=0,this._hasDetails=!1,this._skipLayout=!1,this._sticky=!1,this._isVisible=!1,this.styles=n,this.selectBoxOptions=s||Object.create(null),typeof this.selectBoxOptions.minBottomMargin!="number"?this.selectBoxOptions.minBottomMargin=Hr.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN:this.selectBoxOptions.minBottomMargin<0&&(this.selectBoxOptions.minBottomMargin=0),this.selectElement=document.createElement("select"),this.selectElement.className="monaco-select-box monaco-select-box-dropdown-padding",typeof this.selectBoxOptions.ariaLabel=="string"&&this.selectElement.setAttribute("aria-label",this.selectBoxOptions.ariaLabel),typeof this.selectBoxOptions.ariaDescription=="string"&&this.selectElement.setAttribute("aria-description",this.selectBoxOptions.ariaDescription),this._onDidSelect=new A,this._register(this._onDidSelect),this.registerListeners(),this.constructSelectDropDown(i),this.selected=t||0,e&&this.setOptions(e,t),this.initStyleSheet()}setTitle(e){!this._hover&&e?this._hover=this._register(La().setupManagedHover(Ks("mouse"),this.selectElement,e)):this._hover&&this._hover.update(e)}getHeight(){return 22}getTemplateId(){return P7}constructSelectDropDown(e){this.contextViewProvider=e,this.selectDropDownContainer=ce(".monaco-select-box-dropdown-container"),this.selectDropDownContainer.classList.add("monaco-select-box-dropdown-padding"),this.selectionDetailsPane=Z(this.selectDropDownContainer,$d(".select-box-details-pane"));const t=Z(this.selectDropDownContainer,$d(".select-box-dropdown-container-width-control")),i=Z(t,$d(".width-control-div"));this.widthControlElement=document.createElement("span"),this.widthControlElement.className="option-text-width-control",Z(i,this.widthControlElement),this._dropDownPosition=0,this.styleElement=Vs(this.selectDropDownContainer),this.selectDropDownContainer.setAttribute("draggable","true"),this._register(U(this.selectDropDownContainer,ee.DRAG_START,n=>{je.stop(n,!0)}))}registerListeners(){this._register(jt(this.selectElement,"change",t=>{this.selected=t.target.selectedIndex,this._onDidSelect.fire({index:t.target.selectedIndex,selected:t.target.value}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)})),this._register(U(this.selectElement,ee.CLICK,t=>{je.stop(t),this._isVisible?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(U(this.selectElement,ee.MOUSE_DOWN,t=>{je.stop(t)}));let e;this._register(U(this.selectElement,"touchstart",t=>{e=this._isVisible})),this._register(U(this.selectElement,"touchend",t=>{je.stop(t),e?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(U(this.selectElement,ee.KEY_DOWN,t=>{const i=new Nt(t);let n=!1;Ue?(i.keyCode===18||i.keyCode===16||i.keyCode===10||i.keyCode===3)&&(n=!0):(i.keyCode===18&&i.altKey||i.keyCode===16&&i.altKey||i.keyCode===10||i.keyCode===3)&&(n=!0),n&&(this.showSelectDropDown(),je.stop(t,!0))}))}get onDidSelect(){return this._onDidSelect.event}setOptions(e,t){li(this.options,e)||(this.options=e,this.selectElement.options.length=0,this._hasDetails=!1,this._cachedMaxDetailsHeight=void 0,this.options.forEach((i,n)=>{this.selectElement.add(this.createOption(i.text,n,i.isDisabled)),typeof i.description=="string"&&(this._hasDetails=!0)})),t!==void 0&&(this.select(t),this._currentSelection=this.selected)}setOptionsList(){this.selectList?.splice(0,this.selectList.length,this.options)}select(e){e>=0&&ethis.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)}focus(){this.selectElement&&(this.selectElement.tabIndex=0,this.selectElement.focus())}blur(){this.selectElement&&(this.selectElement.tabIndex=-1,this.selectElement.blur())}setFocusable(e){this.selectElement.tabIndex=e?0:-1}render(e){this.container=e,e.classList.add("select-container"),e.appendChild(this.selectElement),this.styleSelectElement()}initStyleSheet(){const e=[];this.styles.listFocusBackground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { background-color: ${this.styles.listFocusBackground} !important; }`),this.styles.listFocusForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { color: ${this.styles.listFocusForeground} !important; }`),this.styles.decoratorRightForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.focused) .option-decorator-right { color: ${this.styles.decoratorRightForeground}; }`),this.styles.selectBackground&&this.styles.selectBorder&&this.styles.selectBorder!==this.styles.selectBackground?(e.push(`.monaco-select-box-dropdown-container { border: 1px solid ${this.styles.selectBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectBorder} } `)):this.styles.selectListBorder&&(e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectListBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectListBorder} } `)),this.styles.listHoverForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { color: ${this.styles.listHoverForeground} !important; }`),this.styles.listHoverBackground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { background-color: ${this.styles.listHoverBackground} !important; }`),this.styles.listFocusOutline&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { outline: 1.6px dotted ${this.styles.listFocusOutline} !important; outline-offset: -1.6px !important; }`),this.styles.listHoverOutline&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { outline: 1.6px dashed ${this.styles.listHoverOutline} !important; outline-offset: -1.6px !important; }`),e.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled.focused { background-color: transparent !important; color: inherit !important; outline: none !important; }"),e.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled:hover { background-color: transparent !important; color: inherit !important; outline: none !important; }"),this.styleElement.textContent=e.join(` -`)}styleSelectElement(){const e=this.styles.selectBackground??"",t=this.styles.selectForeground??"",i=this.styles.selectBorder??"";this.selectElement.style.backgroundColor=e,this.selectElement.style.color=t,this.selectElement.style.borderColor=i}styleList(){const e=this.styles.selectBackground??"",t=vl(this.styles.selectListBackground,e);this.selectDropDownListContainer.style.backgroundColor=t,this.selectionDetailsPane.style.backgroundColor=t;const i=this.styles.focusBorder??"";this.selectDropDownContainer.style.outlineColor=i,this.selectDropDownContainer.style.outlineOffset="-1px",this.selectList.style(this.styles)}createOption(e,t,i){const n=document.createElement("option");return n.value=e,n.text=e,n.disabled=!!i,n}showSelectDropDown(){this.selectionDetailsPane.innerText="",!(!this.contextViewProvider||this._isVisible)&&(this.createSelectList(this.selectDropDownContainer),this.setOptionsList(),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:e=>this.renderSelectDropDown(e,!0),layout:()=>{this.layoutSelectDropDown()},onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._isVisible=!0,this.hideSelectDropDown(!1),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:e=>this.renderSelectDropDown(e),layout:()=>this.layoutSelectDropDown(),onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._currentSelection=this.selected,this._isVisible=!0,this.selectElement.setAttribute("aria-expanded","true"))}hideSelectDropDown(e){!this.contextViewProvider||!this._isVisible||(this._isVisible=!1,this.selectElement.setAttribute("aria-expanded","false"),e&&this.selectElement.focus(),this.contextViewProvider.hideContextView())}renderSelectDropDown(e,t){return e.appendChild(this.selectDropDownContainer),this.layoutSelectDropDown(t),{dispose:()=>{this.selectDropDownContainer.remove()}}}measureMaxDetailsHeight(){let e=0;return this.options.forEach((t,i)=>{this.updateDetail(i),this.selectionDetailsPane.offsetHeight>e&&(e=this.selectionDetailsPane.offsetHeight)}),e}layoutSelectDropDown(e){if(this._skipLayout)return!1;if(this.selectList){this.selectDropDownContainer.classList.add("visible");const t=fe(this.selectElement),i=gi(this.selectElement),n=fe(this.selectElement).getComputedStyle(this.selectElement),s=parseFloat(n.getPropertyValue("--dropdown-padding-top"))+parseFloat(n.getPropertyValue("--dropdown-padding-bottom")),r=t.innerHeight-i.top-i.height-(this.selectBoxOptions.minBottomMargin||0),a=i.top-Hr.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN,l=this.selectElement.offsetWidth,c=this.setWidthControlElement(this.widthControlElement),d=Math.max(c,Math.round(l)).toString()+"px";this.selectDropDownContainer.style.width=d,this.selectList.getHTMLElement().style.height="",this.selectList.layout();let h=this.selectList.contentHeight;this._hasDetails&&this._cachedMaxDetailsHeight===void 0&&(this._cachedMaxDetailsHeight=this.measureMaxDetailsHeight());const u=this._hasDetails?this._cachedMaxDetailsHeight:0,f=h+s+u,g=Math.floor((r-s-u)/this.getHeight()),p=Math.floor((a-s-u)/this.getHeight());if(e)return i.top+i.height>t.innerHeight-22||i.topg&&this.options.length>g?(this._dropDownPosition=1,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectionDetailsPane.classList.remove("border-top"),this.selectionDetailsPane.classList.add("border-bottom")):(this._dropDownPosition=0,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectionDetailsPane.classList.remove("border-bottom"),this.selectionDetailsPane.classList.add("border-top")),!0);if(i.top+i.height>t.innerHeight-22||i.topr&&(h=g*this.getHeight())}else f>a&&(h=p*this.getHeight());return this.selectList.layout(h),this.selectList.domFocus(),this.selectList.length>0&&(this.selectList.setFocus([this.selected||0]),this.selectList.reveal(this.selectList.getFocus()[0]||0)),this._hasDetails?(this.selectList.getHTMLElement().style.height=h+s+"px",this.selectDropDownContainer.style.height=""):this.selectDropDownContainer.style.height=h+s+"px",this.updateDetail(this.selected),this.selectDropDownContainer.style.width=d,this.selectDropDownListContainer.setAttribute("tabindex","0"),this.selectElement.classList.add("synthetic-focus"),this.selectDropDownContainer.classList.add("synthetic-focus"),!0}else return!1}setWidthControlElement(e){let t=0;if(e){let i=0,n=0;this.options.forEach((s,r)=>{const a=s.detail?s.detail.length:0,l=s.decoratorRight?s.decoratorRight.length:0,c=s.text.length+a+l;c>n&&(i=r,n=c)}),e.textContent=this.options[i].text+(this.options[i].decoratorRight?this.options[i].decoratorRight+" ":""),t=qp(e)}return t}createSelectList(e){if(this.selectList)return;this.selectDropDownListContainer=Z(e,$d(".select-box-dropdown-list-container")),this.listRenderer=new LY,this.selectList=this._register(new go("SelectBoxCustom",this.selectDropDownListContainer,this,[this.listRenderer],{useShadows:!1,verticalScrollMode:3,keyboardSupport:!1,mouseSupport:!1,accessibilityProvider:{getAriaLabel:n=>{let s=n.text;return n.detail&&(s+=`. ${n.detail}`),n.decoratorRight&&(s+=`. ${n.decoratorRight}`),n.description&&(s+=`. ${n.description}`),s},getWidgetAriaLabel:()=>m({key:"selectBox",comment:["Behave like native select dropdown element."]},"Select Box"),getRole:()=>Ue?"":"option",getWidgetRole:()=>"listbox"}})),this.selectBoxOptions.ariaLabel&&(this.selectList.ariaLabel=this.selectBoxOptions.ariaLabel);const t=this._register(new ze(this.selectDropDownListContainer,"keydown")),i=J.chain(t.event,n=>n.filter(()=>this.selectList.length>0).map(s=>new Nt(s)));this._register(J.chain(i,n=>n.filter(s=>s.keyCode===3))(this.onEnter,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===2))(this.onEnter,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===9))(this.onEscape,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===16))(this.onUpArrow,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===18))(this.onDownArrow,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===12))(this.onPageDown,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===11))(this.onPageUp,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===14))(this.onHome,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode===13))(this.onEnd,this)),this._register(J.chain(i,n=>n.filter(s=>s.keyCode>=21&&s.keyCode<=56||s.keyCode>=85&&s.keyCode<=113))(this.onCharacter,this)),this._register(U(this.selectList.getHTMLElement(),ee.POINTER_UP,n=>this.onPointerUp(n))),this._register(this.selectList.onMouseOver(n=>typeof n.index<"u"&&this.selectList.setFocus([n.index]))),this._register(this.selectList.onDidChangeFocus(n=>this.onListFocus(n))),this._register(U(this.selectDropDownContainer,ee.FOCUS_OUT,n=>{!this._isVisible||yi(n.relatedTarget,this.selectDropDownContainer)||this.onListBlur()})),this.selectList.getHTMLElement().setAttribute("aria-label",this.selectBoxOptions.ariaLabel||""),this.selectList.getHTMLElement().setAttribute("aria-expanded","true"),this.styleList()}onPointerUp(e){if(!this.selectList.length)return;je.stop(e);const t=e.target;if(!t||t.classList.contains("slider"))return;const i=t.closest(".monaco-list-row");if(!i)return;const n=Number(i.getAttribute("data-index")),s=i.classList.contains("option-disabled");n>=0&&n{for(let r=0;rthis.selected+2)this.selected+=2;else{if(t)return;this.selected++}this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0])}}onUpArrow(e){this.selected>0&&(je.stop(e,!0),this.options[this.selected-1].isDisabled&&this.selected>1?this.selected-=2:this.selected--,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]))}onPageUp(e){je.stop(e),this.selectList.focusPreviousPage(),setTimeout(()=>{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected>0&&(this.selected--,this.selectList.setFocus([this.selected])),this.selectList.reveal(this.selected),this.select(this.selected)},1)}onHome(e){je.stop(e),!(this.options.length<2)&&(this.selected=0,this.options[this.selected].isDisabled&&this.selected>1&&this.selected++,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onEnd(e){je.stop(e),!(this.options.length<2)&&(this.selected=this.options.length-1,this.options[this.selected].isDisabled&&this.selected>1&&this.selected--,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onCharacter(e){const t=el.toString(e.keyCode);let i=-1;for(let n=0;n{this._register(U(this.selectElement,e,t=>{this.selectElement.focus()}))}),this._register(jt(this.selectElement,"click",e=>{je.stop(e,!0)})),this._register(jt(this.selectElement,"change",e=>{this.selectElement.title=e.target.value,this._onDidSelect.fire({index:e.target.selectedIndex,selected:e.target.value})})),this._register(jt(this.selectElement,"keydown",e=>{let t=!1;Ue?(e.keyCode===18||e.keyCode===16||e.keyCode===10)&&(t=!0):(e.keyCode===18&&e.altKey||e.keyCode===10||e.keyCode===3)&&(t=!0),t&&e.stopPropagation()}))}get onDidSelect(){return this._onDidSelect.event}setOptions(e,t){(!this.options||!li(this.options,e))&&(this.options=e,this.selectElement.options.length=0,this.options.forEach((i,n)=>{this.selectElement.add(this.createOption(i.text,n,i.isDisabled))})),t!==void 0&&this.select(t)}select(e){this.options.length===0?this.selected=0:e>=0&&ethis.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.selected{this.element&&this.handleActionChangeEvent(n)}))}handleActionChangeEvent(e){e.enabled!==void 0&&this.updateEnabled(),e.checked!==void 0&&this.updateChecked(),e.class!==void 0&&this.updateClass(),e.label!==void 0&&(this.updateLabel(),this.updateTooltip()),e.tooltip!==void 0&&this.updateTooltip()}get actionRunner(){return this._actionRunner||(this._actionRunner=this._register(new Oh)),this._actionRunner}set actionRunner(e){this._actionRunner=e}isEnabled(){return this._action.enabled}setActionContext(e){this._context=e}render(e){const t=this.element=e;this._register(fn.addTarget(e));const i=this.options&&this.options.draggable;i&&(e.draggable=!0,Mo&&this._register(U(e,ee.DRAG_START,n=>n.dataTransfer?.setData(D7.TEXT,this._action.label)))),this._register(U(t,St.Tap,n=>this.onClick(n,!0))),this._register(U(t,ee.MOUSE_DOWN,n=>{i||je.stop(n,!0),this._action.enabled&&n.button===0&&t.classList.add("active")})),Ue&&this._register(U(t,ee.CONTEXT_MENU,n=>{n.button===0&&n.ctrlKey===!0&&this.onClick(n)})),this._register(U(t,ee.CLICK,n=>{je.stop(n,!0),this.options&&this.options.isMenu||this.onClick(n)})),this._register(U(t,ee.DBLCLICK,n=>{je.stop(n,!0)})),[ee.MOUSE_UP,ee.MOUSE_OUT].forEach(n=>{this._register(U(t,n,s=>{je.stop(s),t.classList.remove("active")}))})}onClick(e,t=!1){je.stop(e,!0);const i=xs(this._context)?this.options?.useEventAsContext?e:{preserveFocus:t}:this._context;this.actionRunner.run(this._action,i)}focus(){this.element&&(this.element.tabIndex=0,this.element.focus(),this.element.classList.add("focused"))}blur(){this.element&&(this.element.blur(),this.element.tabIndex=-1,this.element.classList.remove("focused"))}setFocusable(e){this.element&&(this.element.tabIndex=e?0:-1)}get trapsArrowNavigation(){return!1}updateEnabled(){}updateLabel(){}getClass(){return this.action.class}getTooltip(){return this.action.tooltip}updateTooltip(){if(!this.element)return;const e=this.getTooltip()??"";if(this.updateAriaLabel(),this.options.hoverDelegate?.showNativeHover)this.element.title=e;else if(!this.customHover&&e!==""){const t=this.options.hoverDelegate??Ks("element");this.customHover=this._store.add(La().setupManagedHover(t,this.element,e))}else this.customHover&&this.customHover.update(e)}updateAriaLabel(){if(this.element){const e=this.getTooltip()??"";this.element.setAttribute("aria-label",e)}}updateClass(){}updateChecked(){}dispose(){this.element&&(this.element.remove(),this.element=void 0),this._context=void 0,super.dispose()}}class dy extends or{constructor(e,t,i){super(e,t,i),this.options=i,this.options.icon=i.icon!==void 0?i.icon:!1,this.options.label=i.label!==void 0?i.label:!0,this.cssClass=""}render(e){super.render(e),ai(this.element);const t=document.createElement("a");if(t.classList.add("action-label"),t.setAttribute("role",this.getDefaultAriaRole()),this.label=t,this.element.appendChild(t),this.options.label&&this.options.keybinding){const i=document.createElement("span");i.classList.add("keybinding"),i.textContent=this.options.keybinding,this.element.appendChild(i)}this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()}getDefaultAriaRole(){return this._action.id===Gi.ID?"presentation":this.options.isMenu?"menuitem":this.options.isTabList?"tab":"button"}focus(){this.label&&(this.label.tabIndex=0,this.label.focus())}blur(){this.label&&(this.label.tabIndex=-1)}setFocusable(e){this.label&&(this.label.tabIndex=e?0:-1)}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this.action.label)}getTooltip(){let e=null;return this.action.tooltip?e=this.action.tooltip:!this.options.label&&this.action.label&&this.options.icon&&(e=this.action.label,this.options.keybinding&&(e=m({key:"titleLabel",comment:["action title","action keybinding"]},"{0} ({1})",e,this.options.keybinding))),e??void 0}updateClass(){this.cssClass&&this.label&&this.label.classList.remove(...this.cssClass.split(" ")),this.options.icon?(this.cssClass=this.getClass(),this.label&&(this.label.classList.add("codicon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" "))),this.updateEnabled()):this.label?.classList.remove("codicon")}updateEnabled(){this.action.enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),this.label.classList.remove("disabled")),this.element?.classList.remove("disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),this.label.classList.add("disabled")),this.element?.classList.add("disabled"))}updateAriaLabel(){if(this.label){const e=this.getTooltip()??"";this.label.setAttribute("aria-label",e)}}updateChecked(){this.label&&(this.action.checked!==void 0?(this.label.classList.toggle("checked",this.action.checked),this.options.isTabList?this.label.setAttribute("aria-selected",this.action.checked?"true":"false"):(this.label.setAttribute("aria-checked",this.action.checked?"true":"false"),this.label.setAttribute("role","checkbox"))):(this.label.classList.remove("checked"),this.label.removeAttribute(this.options.isTabList?"aria-selected":"aria-checked"),this.label.setAttribute("role",this.getDefaultAriaRole())))}}class DY extends or{constructor(e,t,i,n,s,r,a){super(e,t),this.selectBox=new kY(i,n,s,r,a),this.selectBox.setFocusable(!1),this._register(this.selectBox),this.registerListeners()}select(e){this.selectBox.select(e)}registerListeners(){this._register(this.selectBox.onDidSelect(e=>this.runAction(e.selected,e.index)))}runAction(e,t){this.actionRunner.run(this._action,this.getActionContext(e,t))}getActionContext(e,t){return e}setFocusable(e){this.selectBox.setFocusable(e)}focus(){this.selectBox?.focus()}blur(){this.selectBox?.blur()}render(e){this.selectBox.render(e)}}class IY extends Oh{constructor(e,t){super(),this._onDidChangeVisibility=this._register(new A),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this._element=Z(e,ce(".monaco-dropdown")),this._label=Z(this._element,ce(".dropdown-label"));let i=t.labelRenderer;i||(i=s=>(s.textContent=t.label||"",null));for(const s of[ee.CLICK,ee.MOUSE_DOWN,St.Tap])this._register(U(this.element,s,r=>je.stop(r,!0)));for(const s of[ee.MOUSE_DOWN,St.Tap])this._register(U(this._label,s,r=>{tT(r)&&(r.detail>1||r.button!==0)||(this.visible?this.hide():this.show())}));this._register(U(this._label,ee.KEY_UP,s=>{const r=new Nt(s);(r.equals(3)||r.equals(10))&&(je.stop(s,!0),this.visible?this.hide():this.show())}));const n=i(this._label);n&&this._register(n),this._register(fn.addTarget(this._label))}get element(){return this._element}show(){this.visible||(this.visible=!0,this._onDidChangeVisibility.fire(!0))}hide(){this.visible&&(this.visible=!1,this._onDidChangeVisibility.fire(!1))}dispose(){super.dispose(),this.hide(),this.boxContainer&&(this.boxContainer.remove(),this.boxContainer=void 0),this.contents&&(this.contents.remove(),this.contents=void 0),this._label&&(this._label.remove(),this._label=void 0)}}class EY extends IY{constructor(e,t){super(e,t),this._options=t,this._actions=[],this.actions=t.actions||[]}set menuOptions(e){this._menuOptions=e}get menuOptions(){return this._menuOptions}get actions(){return this._options.actionProvider?this._options.actionProvider.getActions():this._actions}set actions(e){this._actions=e}show(){super.show(),this.element.classList.add("active"),this._options.contextMenuProvider.showContextMenu({getAnchor:()=>this.element,getActions:()=>this.actions,getActionsContext:()=>this.menuOptions?this.menuOptions.context:null,getActionViewItem:(e,t)=>this.menuOptions&&this.menuOptions.actionViewItemProvider?this.menuOptions.actionViewItemProvider(e,t):void 0,getKeyBinding:e=>this.menuOptions&&this.menuOptions.getKeyBinding?this.menuOptions.getKeyBinding(e):void 0,getMenuClassName:()=>this._options.menuClassName||"",onHide:()=>this.onHide(),actionRunner:this.menuOptions?this.menuOptions.actionRunner:void 0,anchorAlignment:this.menuOptions?this.menuOptions.anchorAlignment:0,domForShadowRoot:this._options.menuAsChild?this.element:void 0,skipTelemetry:this._options.skipTelemetry})}hide(){super.hide()}onHide(){this.hide(),this.element.classList.remove("active")}}class qC extends or{constructor(e,t,i,n=Object.create(null)){super(null,e,n),this.actionItem=null,this._onDidChangeVisibility=this._register(new A),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this.menuActionsOrProvider=t,this.contextMenuProvider=i,this.options=n,this.options.actionRunner&&(this.actionRunner=this.options.actionRunner)}render(e){this.actionItem=e;const t=s=>{this.element=Z(s,ce("a.action-label"));let r=[];return typeof this.options.classNames=="string"?r=this.options.classNames.split(/\s+/g).filter(a=>!!a):this.options.classNames&&(r=this.options.classNames),r.find(a=>a==="icon")||r.push("codicon"),this.element.classList.add(...r),this.element.setAttribute("role","button"),this.element.setAttribute("aria-haspopup","true"),this.element.setAttribute("aria-expanded","false"),this._action.label&&this._register(La().setupManagedHover(this.options.hoverDelegate??Ks("mouse"),this.element,this._action.label)),this.element.ariaLabel=this._action.label||"",null},i=Array.isArray(this.menuActionsOrProvider),n={contextMenuProvider:this.contextMenuProvider,labelRenderer:t,menuAsChild:this.options.menuAsChild,actions:i?this.menuActionsOrProvider:void 0,actionProvider:i?void 0:this.menuActionsOrProvider,skipTelemetry:this.options.skipTelemetry};if(this.dropdownMenu=this._register(new EY(e,n)),this._register(this.dropdownMenu.onDidChangeVisibility(s=>{this.element?.setAttribute("aria-expanded",`${s}`),this._onDidChangeVisibility.fire(s)})),this.dropdownMenu.menuOptions={actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,getKeyBinding:this.options.keybindingProvider,context:this._context},this.options.anchorAlignmentProvider){const s=this;this.dropdownMenu.menuOptions={...this.dropdownMenu.menuOptions,get anchorAlignment(){return s.options.anchorAlignmentProvider()}}}this.updateTooltip(),this.updateEnabled()}getTooltip(){let e=null;return this.action.tooltip?e=this.action.tooltip:this.action.label&&(e=this.action.label),e??void 0}setActionContext(e){super.setActionContext(e),this.dropdownMenu&&(this.dropdownMenu.menuOptions?this.dropdownMenu.menuOptions.context=e:this.dropdownMenu.menuOptions={context:e})}show(){this.dropdownMenu?.show()}updateEnabled(){const e=!this.action.enabled;this.actionItem?.classList.toggle("disabled",e),this.element?.classList.toggle("disabled",e)}}function NY(o){return o?o.condition!==void 0:!1}var Wf;(function(o){o[o.STORAGE_DOES_NOT_EXIST=0]="STORAGE_DOES_NOT_EXIST",o[o.STORAGE_IN_MEMORY=1]="STORAGE_IN_MEMORY"})(Wf||(Wf={}));var af;(function(o){o[o.None=0]="None",o[o.Initialized=1]="Initialized",o[o.Closed=2]="Closed"})(af||(af={}));const Aw=class Aw extends z{constructor(e,t=Object.create(null)){super(),this.database=e,this.options=t,this._onDidChangeStorage=this._register(new Nh),this.onDidChangeStorage=this._onDidChangeStorage.event,this.state=af.None,this.cache=new Map,this.flushDelayer=this._register(new vF(Aw.DEFAULT_FLUSH_DELAY)),this.pendingDeletes=new Set,this.pendingInserts=new Map,this.whenFlushedCallbacks=[],this.registerListeners()}registerListeners(){this._register(this.database.onDidChangeItemsExternal(e=>this.onDidChangeItemsExternal(e)))}onDidChangeItemsExternal(e){this._onDidChangeStorage.pause();try{e.changed?.forEach((t,i)=>this.acceptExternal(i,t)),e.deleted?.forEach(t=>this.acceptExternal(t,void 0))}finally{this._onDidChangeStorage.resume()}}acceptExternal(e,t){if(this.state===af.Closed)return;let i=!1;xs(t)?i=this.cache.delete(e):this.cache.get(e)!==t&&(this.cache.set(e,t),i=!0),i&&this._onDidChangeStorage.fire({key:e,external:!0})}get(e,t){const i=this.cache.get(e);return xs(i)?t:i}getBoolean(e,t){const i=this.get(e);return xs(i)?t:i==="true"}getNumber(e,t){const i=this.get(e);return xs(i)?t:parseInt(i,10)}async set(e,t,i=!1){if(this.state===af.Closed)return;if(xs(t))return this.delete(e,i);const n=Oi(t)||Array.isArray(t)?sG(t):String(t);if(this.cache.get(e)!==n)return this.cache.set(e,n),this.pendingInserts.set(e,n),this.pendingDeletes.delete(e),this._onDidChangeStorage.fire({key:e,external:i}),this.doFlush()}async delete(e,t=!1){if(!(this.state===af.Closed||!this.cache.delete(e)))return this.pendingDeletes.has(e)||this.pendingDeletes.add(e),this.pendingInserts.delete(e),this._onDidChangeStorage.fire({key:e,external:t}),this.doFlush()}get hasPending(){return this.pendingInserts.size>0||this.pendingDeletes.size>0}async flushPending(){if(!this.hasPending)return;const e={insert:this.pendingInserts,delete:this.pendingDeletes};return this.pendingDeletes=new Set,this.pendingInserts=new Map,this.database.updateItems(e).finally(()=>{if(!this.hasPending)for(;this.whenFlushedCallbacks.length;)this.whenFlushedCallbacks.pop()?.()})}async doFlush(e){return this.options.hint===Wf.STORAGE_IN_MEMORY?this.flushPending():this.flushDelayer.trigger(()=>this.flushPending(),e)}};Aw.DEFAULT_FLUSH_DELAY=100;let ep=Aw;class RS{constructor(){this.onDidChangeItemsExternal=J.None,this.items=new Map}async updateItems(e){e.insert?.forEach((t,i)=>this.items.set(i,t)),e.delete?.forEach(t=>this.items.delete(t))}}const P1="__$__targetStorageMarker",du=He("storageService");var aD;(function(o){o[o.NONE=0]="NONE",o[o.SHUTDOWN=1]="SHUTDOWN"})(aD||(aD={}));function TY(o){const e=o.get(P1);if(e)try{return JSON.parse(e)}catch{}return Object.create(null)}const Pw=class Pw extends z{constructor(e={flushInterval:Pw.DEFAULT_FLUSH_INTERVAL}){super(),this.options=e,this._onDidChangeValue=this._register(new Nh),this._onDidChangeTarget=this._register(new Nh),this._onWillSaveState=this._register(new A),this.onWillSaveState=this._onWillSaveState.event,this._workspaceKeyTargets=void 0,this._profileKeyTargets=void 0,this._applicationKeyTargets=void 0}onDidChangeValue(e,t,i){return J.filter(this._onDidChangeValue.event,n=>n.scope===e&&(t===void 0||n.key===t),i)}emitDidChangeValue(e,t){const{key:i,external:n}=t;if(i===P1){switch(e){case-1:this._applicationKeyTargets=void 0;break;case 0:this._profileKeyTargets=void 0;break;case 1:this._workspaceKeyTargets=void 0;break}this._onDidChangeTarget.fire({scope:e})}else this._onDidChangeValue.fire({scope:e,key:i,target:this.getKeyTargets(e)[i],external:n})}get(e,t,i){return this.getStorage(t)?.get(e,i)}getBoolean(e,t,i){return this.getStorage(t)?.getBoolean(e,i)}getNumber(e,t,i){return this.getStorage(t)?.getNumber(e,i)}store(e,t,i,n,s=!1){if(xs(t)){this.remove(e,i,s);return}this.withPausedEmitters(()=>{this.updateKeyTarget(e,i,n),this.getStorage(i)?.set(e,t,s)})}remove(e,t,i=!1){this.withPausedEmitters(()=>{this.updateKeyTarget(e,t,void 0),this.getStorage(t)?.delete(e,i)})}withPausedEmitters(e){this._onDidChangeValue.pause(),this._onDidChangeTarget.pause();try{e()}finally{this._onDidChangeValue.resume(),this._onDidChangeTarget.resume()}}updateKeyTarget(e,t,i,n=!1){const s=this.getKeyTargets(t);typeof i=="number"?s[e]!==i&&(s[e]=i,this.getStorage(t)?.set(P1,JSON.stringify(s),n)):typeof s[e]=="number"&&(delete s[e],this.getStorage(t)?.set(P1,JSON.stringify(s),n))}get workspaceKeyTargets(){return this._workspaceKeyTargets||(this._workspaceKeyTargets=this.loadKeyTargets(1)),this._workspaceKeyTargets}get profileKeyTargets(){return this._profileKeyTargets||(this._profileKeyTargets=this.loadKeyTargets(0)),this._profileKeyTargets}get applicationKeyTargets(){return this._applicationKeyTargets||(this._applicationKeyTargets=this.loadKeyTargets(-1)),this._applicationKeyTargets}getKeyTargets(e){switch(e){case-1:return this.applicationKeyTargets;case 0:return this.profileKeyTargets;default:return this.workspaceKeyTargets}}loadKeyTargets(e){const t=this.getStorage(e);return t?TY(t):Object.create(null)}};Pw.DEFAULT_FLUSH_INTERVAL=60*1e3;let lD=Pw;class MY extends lD{constructor(){super(),this.applicationStorage=this._register(new ep(new RS,{hint:Wf.STORAGE_IN_MEMORY})),this.profileStorage=this._register(new ep(new RS,{hint:Wf.STORAGE_IN_MEMORY})),this.workspaceStorage=this._register(new ep(new RS,{hint:Wf.STORAGE_IN_MEMORY})),this._register(this.workspaceStorage.onDidChangeStorage(e=>this.emitDidChangeValue(1,e))),this._register(this.profileStorage.onDidChangeStorage(e=>this.emitDidChangeValue(0,e))),this._register(this.applicationStorage.onDidChangeStorage(e=>this.emitDidChangeValue(-1,e)))}getStorage(e){switch(e){case-1:return this.applicationStorage;case 0:return this.profileStorage;default:return this.workspaceStorage}}}function RY(o,e){const t={...e};for(const i in o){const n=o[i];t[i]=n!==void 0?oe(n):void 0}return t}const AY={keybindingLabelBackground:oe(Lj),keybindingLabelForeground:oe(xj),keybindingLabelBorder:oe(kj),keybindingLabelBottomBorder:oe(Dj),keybindingLabelShadow:oe(q_)},PY={buttonForeground:oe(j3),buttonSeparator:oe(dj),buttonBackground:oe(Im),buttonHoverBackground:oe(hj),buttonSecondaryForeground:oe(fj),buttonSecondaryBackground:oe(Nk),buttonSecondaryHoverBackground:oe(gj),buttonBorder:oe(uj)},OY={progressBarBackground:oe(yK)},O7={inputActiveOptionBorder:oe($3),inputActiveOptionForeground:oe(K3),inputActiveOptionBackground:oe(IT)};oe(Em),oe(mj),oe(pj),oe(_j),oe(bj),oe(Cj),oe(vj);oe(wj),oe(Sj),oe(yj);oe(no),oe(Z0),oe(q_),oe(Ye),oe(VK),oe(zK),oe(UK),oe(vK);const F7={inputBackground:oe(YK),inputForeground:oe(QK),inputBorder:oe(XK),inputValidationInfoBorder:oe(ij),inputValidationInfoBackground:oe(ej),inputValidationInfoForeground:oe(tj),inputValidationWarningBorder:oe(oj),inputValidationWarningBackground:oe(nj),inputValidationWarningForeground:oe(sj),inputValidationErrorBorder:oe(lj),inputValidationErrorBackground:oe(rj),inputValidationErrorForeground:oe(aj)},FY={listFilterWidgetBackground:oe(Hj),listFilterWidgetOutline:oe(Vj),listFilterWidgetNoMatchesOutline:oe(zj),listFilterWidgetShadow:oe(Uj),inputBoxStyles:F7,toggleStyles:O7},B7={badgeBackground:oe(T1),badgeForeground:oe(wK),badgeBorder:oe(Ye)};oe(WK),oe(BK),oe(kA),oe(kA),oe(HK);const hu={listBackground:void 0,listInactiveFocusForeground:void 0,listFocusBackground:oe(Ij),listFocusForeground:oe(Ej),listFocusOutline:oe(Nj),listActiveSelectionBackground:oe(Bh),listActiveSelectionForeground:oe(s_),listActiveSelectionIconForeground:oe(q3),listFocusAndSelectionOutline:oe(Tj),listFocusAndSelectionBackground:oe(Bh),listFocusAndSelectionForeground:oe(s_),listInactiveSelectionBackground:oe(Mj),listInactiveSelectionIconForeground:oe(Aj),listInactiveSelectionForeground:oe(Rj),listInactiveFocusBackground:oe(Pj),listInactiveFocusOutline:oe(Oj),listHoverBackground:oe(G3),listHoverForeground:oe(Z3),listDropOverBackground:oe(Fj),listDropBetweenBackground:oe(Bj),listSelectionOutline:oe(Ut),listHoverOutline:oe(Ut),treeIndentGuidesStroke:oe(Y3),treeInactiveIndentGuidesStroke:oe($j),treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:oe(ST),tableColumnsBorder:oe(Kj),tableOddRowsBackgroundColor:oe(jj)};function $g(o){return RY(o,hu)}const BY={selectBackground:oe(Q0),selectListBackground:oe(cj),selectForeground:oe(ET),decoratorRightForeground:oe(Q3),selectBorder:oe(NT),focusBorder:oe(ga),listFocusBackground:oe(PC),listInactiveSelectionIconForeground:oe(TT),listFocusForeground:oe(AC),listFocusOutline:gK(Ut,q.transparent.toString()),listHoverBackground:oe(G3),listHoverForeground:oe(Z3),listHoverOutline:oe(Ut),selectListBorder:oe(LT),listBackground:void 0,listActiveSelectionBackground:void 0,listActiveSelectionForeground:void 0,listActiveSelectionIconForeground:void 0,listFocusAndSelectionBackground:void 0,listDropOverBackground:void 0,listDropBetweenBackground:void 0,listInactiveSelectionBackground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusBackground:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listFocusAndSelectionForeground:void 0,listFocusAndSelectionOutline:void 0,listInactiveFocusForeground:void 0,tableColumnsBorder:void 0,tableOddRowsBackgroundColor:void 0,treeIndentGuidesStroke:void 0,treeInactiveIndentGuidesStroke:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},WY={shadowColor:oe(q_),borderColor:oe(qj),foregroundColor:oe(Gj),backgroundColor:oe(Zj),selectionForegroundColor:oe(Yj),selectionBackgroundColor:oe(Qj),selectionBorderColor:oe(Xj),separatorColor:oe(Jj),scrollbarShadow:oe(ST),scrollbarSliderBackground:oe(F3),scrollbarSliderHoverBackground:oe(B3),scrollbarSliderActiveBackground:oe(W3)};var hy=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Hn=function(o,e){return function(t,i){e(t,i,o)}};function HY(o,e,t,i){let n,s,r;if(Array.isArray(o))r=o,n=e,s=t;else{const c=e;r=o.getActions(c),n=t,s=i}const a=rl.getInstance(),l=a.keyStatus.altKey||(kn||Un)&&a.keyStatus.shiftKey;W7(r,n,l,s?c=>c===s:c=>c==="navigation")}function XT(o,e,t,i,n,s){let r,a,l,c,d;if(Array.isArray(o))d=o,r=e,a=t,l=i,c=n;else{const u=e;d=o.getActions(u),r=t,a=i,l=n,c=s}W7(d,r,!1,typeof a=="string"?u=>u===a:a,l,c)}function W7(o,e,t,i=r=>r==="navigation",n=()=>!1,s=!1){let r,a;Array.isArray(e)?(r=e,a=e):(r=e.primary,a=e.secondary);const l=new Set;for(const[c,d]of o){let h;i(c)?(h=r,h.length>0&&s&&h.push(new Gi)):(h=a,h.length>0&&h.push(new Gi));for(let u of d){t&&(u=u instanceof so&&u.alt?u.alt:u);const f=h.push(u);u instanceof R0&&l.add({group:c,action:u,index:f-1})}}for(const{group:c,action:d,index:h}of l){const u=i(c)?r:a,f=d.actions;n(d,c,u.length)&&u.splice(h,1,...f)}}let zh=class extends dy{constructor(e,t,i,n,s,r,a,l){super(void 0,e,{icon:!!(e.class||e.item.icon),label:!e.class&&!e.item.icon,draggable:t?.draggable,keybinding:t?.keybinding,hoverDelegate:t?.hoverDelegate}),this._options=t,this._keybindingService=i,this._notificationService=n,this._contextKeyService=s,this._themeService=r,this._contextMenuService=a,this._accessibilityService=l,this._wantsAltCommand=!1,this._itemClassDispose=this._register(new Dn),this._altKey=rl.getInstance()}get _menuItemAction(){return this._action}get _commandAction(){return this._wantsAltCommand&&this._menuItemAction.alt||this._menuItemAction}async onClick(e){e.preventDefault(),e.stopPropagation();try{await this.actionRunner.run(this._commandAction,this._context)}catch(t){this._notificationService.error(t)}}render(e){if(super.render(e),e.classList.add("menu-entry"),this.options.icon&&this._updateItemClass(this._menuItemAction.item),this._menuItemAction.alt){let t=!1;const i=()=>{const n=!!this._menuItemAction.alt?.enabled&&(!this._accessibilityService.isMotionReduced()||t)&&(this._altKey.keyStatus.altKey||this._altKey.keyStatus.shiftKey&&t);n!==this._wantsAltCommand&&(this._wantsAltCommand=n,this.updateLabel(),this.updateTooltip(),this.updateClass())};this._register(this._altKey.event(i)),this._register(U(e,"mouseleave",n=>{t=!1,i()})),this._register(U(e,"mouseenter",n=>{t=!0,i()})),i()}}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this._commandAction.label)}getTooltip(){const e=this._keybindingService.lookupKeybinding(this._commandAction.id,this._contextKeyService),t=e&&e.getLabel(),i=this._commandAction.tooltip||this._commandAction.label;let n=t?m("titleAndKb","{0} ({1})",i,t):i;if(!this._wantsAltCommand&&this._menuItemAction.alt?.enabled){const s=this._menuItemAction.alt.tooltip||this._menuItemAction.alt.label,r=this._keybindingService.lookupKeybinding(this._menuItemAction.alt.id,this._contextKeyService),a=r&&r.getLabel(),l=a?m("titleAndKb","{0} ({1})",s,a):s;n=m("titleAndKbAndAlt",`{0} -[{1}] {2}`,n,KT.modifierLabels[Ns].altKey,l)}return n}updateClass(){this.options.icon&&(this._commandAction!==this._menuItemAction?this._menuItemAction.alt&&this._updateItemClass(this._menuItemAction.alt.item):this._updateItemClass(this._menuItemAction.item))}_updateItemClass(e){this._itemClassDispose.value=void 0;const{element:t,label:i}=this;if(!t||!i)return;const n=this._commandAction.checked&&NY(e.toggled)&&e.toggled.icon?e.toggled.icon:e.icon;if(n)if(Ee.isThemeIcon(n)){const s=Ee.asClassNameArray(n);i.classList.add(...s),this._itemClassDispose.value=_e(()=>{i.classList.remove(...s)})}else i.style.backgroundImage=j0(this._themeService.getColorTheme().type)?Dl(n.dark):Dl(n.light),i.classList.add("icon"),this._itemClassDispose.value=No(_e(()=>{i.style.backgroundImage="",i.classList.remove("icon")}),this._themeService.onDidColorThemeChange(()=>{this.updateClass()}))}};zh=hy([Hn(2,vt),Hn(3,mn),Hn(4,De),Hn(5,en),Hn(6,Lr),Hn(7,ms)],zh);class JT extends zh{render(e){this.options.label=!0,this.options.icon=!1,super.render(e),e.classList.add("text-only"),e.classList.toggle("use-comma",this._options?.useComma??!1)}updateLabel(){const e=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!e)return super.updateLabel();if(this.label){const t=JT._symbolPrintEnter(e);this._options?.conversational?this.label.textContent=m({key:"content2",comment:['A label with keybindg like "ESC to dismiss"']},"{1} to {0}",this._action.label,t):this.label.textContent=m({key:"content",comment:["A label","A keybinding"]},"{0} ({1})",this._action.label,t)}}static _symbolPrintEnter(e){return e.getLabel()?.replace(/\benter\b/gi,"⏎").replace(/\bEscape\b/gi,"Esc")}}let cD=class extends qC{constructor(e,t,i,n,s){const r={...t,menuAsChild:t?.menuAsChild??!1,classNames:t?.classNames??(Ee.isThemeIcon(e.item.icon)?Ee.asClassName(e.item.icon):void 0),keybindingProvider:t?.keybindingProvider??(a=>i.lookupKeybinding(a.id))};super(e,{getActions:()=>e.actions},n,r),this._keybindingService=i,this._contextMenuService=n,this._themeService=s}render(e){super.render(e),ai(this.element),e.classList.add("menu-entry");const t=this._action,{icon:i}=t.item;if(i&&!Ee.isThemeIcon(i)){this.element.classList.add("icon");const n=()=>{this.element&&(this.element.style.backgroundImage=j0(this._themeService.getColorTheme().type)?Dl(i.dark):Dl(i.light))};n(),this._register(this._themeService.onDidColorThemeChange(()=>{n()}))}}};cD=hy([Hn(2,vt),Hn(3,Lr),Hn(4,en)],cD);let dD=class extends or{constructor(e,t,i,n,s,r,a,l){super(null,e),this._keybindingService=i,this._notificationService=n,this._contextMenuService=s,this._menuService=r,this._instaService=a,this._storageService=l,this._container=null,this._options=t,this._storageKey=`${e.item.submenu.id}_lastActionId`;let c;const d=t?.persistLastActionId?l.get(this._storageKey,1):void 0;d&&(c=e.actions.find(u=>d===u.id)),c||(c=e.actions[0]),this._defaultAction=this._instaService.createInstance(zh,c,{keybinding:this._getDefaultActionKeybindingLabel(c)});const h={keybindingProvider:u=>this._keybindingService.lookupKeybinding(u.id),...t,menuAsChild:t?.menuAsChild??!0,classNames:t?.classNames??["codicon","codicon-chevron-down"],actionRunner:t?.actionRunner??new Oh};this._dropdown=new qC(e,e.actions,this._contextMenuService,h),this._register(this._dropdown.actionRunner.onDidRun(u=>{u.action instanceof so&&this.update(u.action)}))}update(e){this._options?.persistLastActionId&&this._storageService.store(this._storageKey,e.id,1,1),this._defaultAction.dispose(),this._defaultAction=this._instaService.createInstance(zh,e,{keybinding:this._getDefaultActionKeybindingLabel(e)}),this._defaultAction.actionRunner=new class extends Oh{async runAction(t,i){await t.run(void 0)}},this._container&&this._defaultAction.render(iT(this._container,ce(".action-container")))}_getDefaultActionKeybindingLabel(e){let t;if(this._options?.renderKeybindingWithDefaultActionLabel){const i=this._keybindingService.lookupKeybinding(e.id);i&&(t=`(${i.getLabel()})`)}return t}setActionContext(e){super.setActionContext(e),this._defaultAction.setActionContext(e),this._dropdown.setActionContext(e)}render(e){this._container=e,super.render(this._container),this._container.classList.add("monaco-dropdown-with-default");const t=ce(".action-container");this._defaultAction.render(Z(this._container,t)),this._register(U(t,ee.KEY_DOWN,n=>{const s=new Nt(n);s.equals(17)&&(this._defaultAction.element.tabIndex=-1,this._dropdown.focus(),s.stopPropagation())}));const i=ce(".dropdown-action-container");this._dropdown.render(Z(this._container,i)),this._register(U(i,ee.KEY_DOWN,n=>{const s=new Nt(n);s.equals(15)&&(this._defaultAction.element.tabIndex=0,this._dropdown.setFocusable(!1),this._defaultAction.element?.focus(),s.stopPropagation())}))}focus(e){e?this._dropdown.focus():(this._defaultAction.element.tabIndex=0,this._defaultAction.element.focus())}blur(){this._defaultAction.element.tabIndex=-1,this._dropdown.blur(),this._container.blur()}setFocusable(e){e?this._defaultAction.element.tabIndex=0:(this._defaultAction.element.tabIndex=-1,this._dropdown.setFocusable(!1))}dispose(){this._defaultAction.dispose(),this._dropdown.dispose(),super.dispose()}};dD=hy([Hn(2,vt),Hn(3,mn),Hn(4,Lr),Hn(5,yr),Hn(6,ke),Hn(7,du)],dD);let hD=class extends DY{constructor(e,t){super(null,e,e.actions.map(i=>({text:i.id===Gi.ID?"─────────":i.label,isDisabled:!i.enabled})),0,t,BY,{ariaLabel:e.tooltip,optionsAsChildren:!0}),this.select(Math.max(0,e.actions.findIndex(i=>i.checked)))}render(e){super.render(e),e.style.borderColor=oe(NT)}runAction(e,t){const i=this.action.actions[t];i&&this.actionRunner.run(i)}};hD=hy([Hn(1,lu)],hD);function H7(o,e,t){return e instanceof so?o.createInstance(zh,e,t):e instanceof Zm?e.item.isSelection?o.createInstance(hD,e):e.item.rememberDefaultAction?o.createInstance(dD,e,{...t,persistLastActionId:!0}):o.createInstance(cD,e,t):void 0}class oo extends z{constructor(e,t={}){super(),this._actionRunnerDisposables=this._register(new X),this.viewItemDisposables=this._register(new RN),this.triggerKeyDown=!1,this.focusable=!0,this._onDidBlur=this._register(new A),this.onDidBlur=this._onDidBlur.event,this._onDidCancel=this._register(new A({onWillAddFirstListener:()=>this.cancelHasListener=!0})),this.onDidCancel=this._onDidCancel.event,this.cancelHasListener=!1,this._onDidRun=this._register(new A),this.onDidRun=this._onDidRun.event,this._onWillRun=this._register(new A),this.onWillRun=this._onWillRun.event,this.options=t,this._context=t.context??null,this._orientation=this.options.orientation??0,this._triggerKeys={keyDown:this.options.triggerKeys?.keyDown??!1,keys:this.options.triggerKeys?.keys??[3,10]},this._hoverDelegate=t.hoverDelegate??this._register(QT()),this.options.actionRunner?this._actionRunner=this.options.actionRunner:(this._actionRunner=new Oh,this._actionRunnerDisposables.add(this._actionRunner)),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(s=>this._onDidRun.fire(s))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(s=>this._onWillRun.fire(s))),this.viewItems=[],this.focusedItem=void 0,this.domNode=document.createElement("div"),this.domNode.className="monaco-action-bar";let i,n;switch(this._orientation){case 0:i=[15],n=[17];break;case 1:i=[16],n=[18],this.domNode.className+=" vertical";break}this._register(U(this.domNode,ee.KEY_DOWN,s=>{const r=new Nt(s);let a=!0;const l=typeof this.focusedItem=="number"?this.viewItems[this.focusedItem]:void 0;i&&(r.equals(i[0])||r.equals(i[1]))?a=this.focusPrevious():n&&(r.equals(n[0])||r.equals(n[1]))?a=this.focusNext():r.equals(9)&&this.cancelHasListener?this._onDidCancel.fire():r.equals(14)?a=this.focusFirst():r.equals(13)?a=this.focusLast():r.equals(2)&&l instanceof or&&l.trapsArrowNavigation?a=this.focusNext(void 0,!0):this.isTriggerKeyEvent(r)?this._triggerKeys.keyDown?this.doTrigger(r):this.triggerKeyDown=!0:a=!1,a&&(r.preventDefault(),r.stopPropagation())})),this._register(U(this.domNode,ee.KEY_UP,s=>{const r=new Nt(s);this.isTriggerKeyEvent(r)?(!this._triggerKeys.keyDown&&this.triggerKeyDown&&(this.triggerKeyDown=!1,this.doTrigger(r)),r.preventDefault(),r.stopPropagation()):(r.equals(2)||r.equals(1026)||r.equals(16)||r.equals(18)||r.equals(15)||r.equals(17))&&this.updateFocusedItem()})),this.focusTracker=this._register(Ph(this.domNode)),this._register(this.focusTracker.onDidBlur(()=>{(Xi()===this.domNode||!yi(Xi(),this.domNode))&&(this._onDidBlur.fire(),this.previouslyFocusedItem=this.focusedItem,this.focusedItem=void 0,this.triggerKeyDown=!1)})),this._register(this.focusTracker.onDidFocus(()=>this.updateFocusedItem())),this.actionsList=document.createElement("ul"),this.actionsList.className="actions-container",this.options.highlightToggledItems&&this.actionsList.classList.add("highlight-toggled"),this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"),this.options.ariaLabel&&this.actionsList.setAttribute("aria-label",this.options.ariaLabel),this.domNode.appendChild(this.actionsList),e.appendChild(this.domNode)}refreshRole(){this.length()>=1?this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"):this.actionsList.setAttribute("role","presentation")}setFocusable(e){if(this.focusable=e,this.focusable){const t=this.viewItems.find(i=>i instanceof or&&i.isEnabled());t instanceof or&&t.setFocusable(!0)}else this.viewItems.forEach(t=>{t instanceof or&&t.setFocusable(!1)})}isTriggerKeyEvent(e){let t=!1;return this._triggerKeys.keys.forEach(i=>{t=t||e.equals(i)}),t}updateFocusedItem(){for(let e=0;et.setActionContext(e))}get actionRunner(){return this._actionRunner}set actionRunner(e){this._actionRunner=e,this._actionRunnerDisposables.clear(),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(t=>this._onDidRun.fire(t))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(t=>this._onWillRun.fire(t))),this.viewItems.forEach(t=>t.actionRunner=e)}getContainer(){return this.domNode}getAction(e){if(typeof e=="number")return this.viewItems[e]?.action;if(Ei(e)){for(;e.parentElement!==this.actionsList;){if(!e.parentElement)return;e=e.parentElement}for(let t=0;t{const r=document.createElement("li");r.className="action-item",r.setAttribute("role","presentation");let a;const l={hoverDelegate:this._hoverDelegate,...t,isTabList:this.options.ariaRole==="tablist"};this.options.actionViewItemProvider&&(a=this.options.actionViewItemProvider(s,l)),a||(a=new dy(this.context,s,l)),this.options.allowContextMenu||this.viewItemDisposables.set(a,U(r,ee.CONTEXT_MENU,c=>{je.stop(c,!0)})),a.actionRunner=this._actionRunner,a.setActionContext(this.context),a.render(r),this.focusable&&a instanceof or&&this.viewItems.length===0&&a.setFocusable(!0),n===null||n<0||n>=this.actionsList.children.length?(this.actionsList.appendChild(r),this.viewItems.push(a)):(this.actionsList.insertBefore(r,this.actionsList.children[n]),this.viewItems.splice(n,0,a),n++)}),typeof this.focusedItem=="number"&&this.focus(this.focusedItem),this.refreshRole()}clear(){this.isEmpty()||(this.viewItems=xt(this.viewItems),this.viewItemDisposables.clearAndDisposeAll(),xn(this.actionsList),this.refreshRole())}length(){return this.viewItems.length}isEmpty(){return this.viewItems.length===0}focus(e){let t=!1,i;if(e===void 0?t=!0:typeof e=="number"?i=e:typeof e=="boolean"&&(t=e),t&&typeof this.focusedItem>"u"){const n=this.viewItems.findIndex(s=>s.isEnabled());this.focusedItem=n===-1?void 0:n,this.updateFocus(void 0,void 0,!0)}else i!==void 0&&(this.focusedItem=i),this.updateFocus(void 0,void 0,!0)}focusFirst(){return this.focusedItem=this.length()-1,this.focusNext(!0)}focusLast(){return this.focusedItem=0,this.focusPrevious(!0)}focusNext(e,t){if(typeof this.focusedItem>"u")this.focusedItem=this.viewItems.length-1;else if(this.viewItems.length<=1)return!1;const i=this.focusedItem;let n;do{if(!e&&this.options.preventLoopNavigation&&this.focusedItem+1>=this.viewItems.length)return this.focusedItem=i,!1;this.focusedItem=(this.focusedItem+1)%this.viewItems.length,n=this.viewItems[this.focusedItem]}while(this.focusedItem!==i&&(this.options.focusOnlyEnabledItems&&!n.isEnabled()||n.action.id===Gi.ID));return this.updateFocus(void 0,void 0,t),!0}focusPrevious(e){if(typeof this.focusedItem>"u")this.focusedItem=0;else if(this.viewItems.length<=1)return!1;const t=this.focusedItem;let i;do{if(this.focusedItem=this.focusedItem-1,this.focusedItem<0){if(!e&&this.options.preventLoopNavigation)return this.focusedItem=t,!1;this.focusedItem=this.viewItems.length-1}i=this.viewItems[this.focusedItem]}while(this.focusedItem!==t&&(this.options.focusOnlyEnabledItems&&!i.isEnabled()||i.action.id===Gi.ID));return this.updateFocus(!0),!0}updateFocus(e,t,i=!1){typeof this.focusedItem>"u"&&this.actionsList.focus({preventScroll:t}),this.previouslyFocusedItem!==void 0&&this.previouslyFocusedItem!==this.focusedItem&&this.viewItems[this.previouslyFocusedItem]?.blur();const n=this.focusedItem!==void 0?this.viewItems[this.focusedItem]:void 0;if(n){let s=!0;tC(n.focus)||(s=!1),this.options.focusOnlyEnabledItems&&tC(n.isEnabled)&&!n.isEnabled()&&(s=!1),n.action.id===Gi.ID&&(s=!1),s?(i||this.previouslyFocusedItem!==this.focusedItem)&&(n.focus(e),this.previouslyFocusedItem=this.focusedItem):(this.actionsList.focus({preventScroll:t}),this.previouslyFocusedItem=void 0),s&&n.showHover?.()}}doTrigger(e){if(typeof this.focusedItem>"u")return;const t=this.viewItems[this.focusedItem];if(t instanceof or){const i=t._context===null||t._context===void 0?e:t._context;this.run(t._action,i)}}async run(e,t){await this._actionRunner.run(e,t)}dispose(){this._context=void 0,this.viewItems=xt(this.viewItems),this.getContainer().remove(),super.dispose()}}const uD=/\(&([^\s&])\)|(^|[^&])&([^\s&])/,AS=/(&)?(&)([^\s&])/g;var GC;(function(o){o[o.Right=0]="Right",o[o.Left=1]="Left"})(GC||(GC={}));var fD;(function(o){o[o.Above=0]="Above",o[o.Below=1]="Below"})(fD||(fD={}));class Hf extends oo{constructor(e,t,i,n){e.classList.add("monaco-menu-container"),e.setAttribute("role","presentation");const s=document.createElement("div");s.classList.add("monaco-menu"),s.setAttribute("role","presentation"),super(s,{orientation:1,actionViewItemProvider:c=>this.doGetActionViewItem(c,i,r),context:i.context,actionRunner:i.actionRunner,ariaLabel:i.ariaLabel,ariaRole:"menu",focusOnlyEnabledItems:!0,triggerKeys:{keys:[3,...Ue||Un?[10]:[]],keyDown:!0}}),this.menuStyles=n,this.menuElement=s,this.actionsList.tabIndex=0,this.initializeOrUpdateStyleSheet(e,n),this._register(fn.addTarget(s)),this._register(U(s,ee.KEY_DOWN,c=>{new Nt(c).equals(2)&&c.preventDefault()})),i.enableMnemonics&&this._register(U(s,ee.KEY_DOWN,c=>{const d=c.key.toLocaleLowerCase();if(this.mnemonics.has(d)){je.stop(c,!0);const h=this.mnemonics.get(d);if(h.length===1&&(h[0]instanceof _P&&h[0].container&&this.focusItemByElement(h[0].container),h[0].onClick(c)),h.length>1){const u=h.shift();u&&u.container&&(this.focusItemByElement(u.container),h.push(u)),this.mnemonics.set(d,h)}}})),Un&&this._register(U(s,ee.KEY_DOWN,c=>{const d=new Nt(c);d.equals(14)||d.equals(11)?(this.focusedItem=this.viewItems.length-1,this.focusNext(),je.stop(c,!0)):(d.equals(13)||d.equals(12))&&(this.focusedItem=0,this.focusPrevious(),je.stop(c,!0))})),this._register(U(this.domNode,ee.MOUSE_OUT,c=>{const d=c.relatedTarget;yi(d,this.domNode)||(this.focusedItem=void 0,this.updateFocus(),c.stopPropagation())})),this._register(U(this.actionsList,ee.MOUSE_OVER,c=>{let d=c.target;if(!(!d||!yi(d,this.actionsList)||d===this.actionsList)){for(;d.parentElement!==this.actionsList&&d.parentElement!==null;)d=d.parentElement;if(d.classList.contains("action-item")){const h=this.focusedItem;this.setFocusedItem(d),h!==this.focusedItem&&this.updateFocus()}}})),this._register(fn.addTarget(this.actionsList)),this._register(U(this.actionsList,St.Tap,c=>{let d=c.initialTarget;if(!(!d||!yi(d,this.actionsList)||d===this.actionsList)){for(;d.parentElement!==this.actionsList&&d.parentElement!==null;)d=d.parentElement;if(d.classList.contains("action-item")){const h=this.focusedItem;this.setFocusedItem(d),h!==this.focusedItem&&this.updateFocus()}}}));const r={parent:this};this.mnemonics=new Map,this.scrollableElement=this._register(new J0(s,{alwaysConsumeMouseWheel:!0,horizontal:2,vertical:3,verticalScrollbarSize:7,handleMouseWheel:!0,useShadows:!0}));const a=this.scrollableElement.getDomNode();a.style.position="",this.styleScrollElement(a,n),this._register(U(s,St.Change,c=>{je.stop(c,!0);const d=this.scrollableElement.getScrollPosition().scrollTop;this.scrollableElement.setScrollPosition({scrollTop:d-c.translationY})})),this._register(U(a,ee.MOUSE_UP,c=>{c.preventDefault()}));const l=fe(e);s.style.maxHeight=`${Math.max(10,l.innerHeight-e.getBoundingClientRect().top-35)}px`,t=t.filter((c,d)=>i.submenuIds?.has(c.id)?(console.warn(`Found submenu cycle: ${c.id}`),!1):!(c instanceof Gi&&(d===t.length-1||d===0||t[d-1]instanceof Gi))),this.push(t,{icon:!0,label:!0,isMenu:!0}),e.appendChild(this.scrollableElement.getDomNode()),this.scrollableElement.scanDomNode(),this.viewItems.filter(c=>!(c instanceof bP)).forEach((c,d,h)=>{c.updatePositionInSet(d+1,h.length)})}initializeOrUpdateStyleSheet(e,t){this.styleSheet||(_C(e)?this.styleSheet=Vs(e):(Hf.globalStyleSheet||(Hf.globalStyleSheet=Vs()),this.styleSheet=Hf.globalStyleSheet)),this.styleSheet.textContent=zY(t,_C(e))}styleScrollElement(e,t){const i=t.foregroundColor??"",n=t.backgroundColor??"",s=t.borderColor?`1px solid ${t.borderColor}`:"",r="5px",a=t.shadowColor?`0 2px 8px ${t.shadowColor}`:"";e.style.outline=s,e.style.borderRadius=r,e.style.color=i,e.style.backgroundColor=n,e.style.boxShadow=a}getContainer(){return this.scrollableElement.getDomNode()}get onScroll(){return this.scrollableElement.onScroll}focusItemByElement(e){const t=this.focusedItem;this.setFocusedItem(e),t!==this.focusedItem&&this.updateFocus()}setFocusedItem(e){for(let t=0;t{this.element&&(this._register(U(this.element,ee.MOUSE_UP,s=>{if(je.stop(s,!0),Mo){if(new ur(fe(this.element),s).rightButton)return;this.onClick(s)}else setTimeout(()=>{this.onClick(s)},0)})),this._register(U(this.element,ee.CONTEXT_MENU,s=>{je.stop(s,!0)})))},100),this._register(this.runOnceToEnableMouseUp)}render(e){super.render(e),this.element&&(this.container=e,this.item=Z(this.element,ce("a.action-menu-item")),this._action.id===Gi.ID?this.item.setAttribute("role","presentation"):(this.item.setAttribute("role","menuitem"),this.mnemonic&&this.item.setAttribute("aria-keyshortcuts",`${this.mnemonic}`)),this.check=Z(this.item,ce("span.menu-item-check"+Ee.asCSSSelector(ie.menuSelection))),this.check.setAttribute("role","none"),this.label=Z(this.item,ce("span.action-label")),this.options.label&&this.options.keybinding&&(Z(this.item,ce("span.keybinding")).textContent=this.options.keybinding),this.runOnceToEnableMouseUp.schedule(),this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked(),this.applyStyle())}blur(){super.blur(),this.applyStyle()}focus(){super.focus(),this.item?.focus(),this.applyStyle()}updatePositionInSet(e,t){this.item&&(this.item.setAttribute("aria-posinset",`${e}`),this.item.setAttribute("aria-setsize",`${t}`))}updateLabel(){if(this.label&&this.options.label){xn(this.label);let e=f7(this.action.label);if(e){const t=VY(e);this.options.enableMnemonics||(e=t),this.label.setAttribute("aria-label",t.replace(/&&/g,"&"));const i=uD.exec(e);if(i){e=Km(e),AS.lastIndex=0;let n=AS.exec(e);for(;n&&n[1];)n=AS.exec(e);const s=r=>r.replace(/&&/g,"&");n?this.label.append(k0(s(e.substr(0,n.index))," "),ce("u",{"aria-hidden":"true"},n[3]),aH(s(e.substr(n.index+n[0].length))," ")):this.label.innerText=s(e).trim(),this.item?.setAttribute("aria-keyshortcuts",(i[1]?i[1]:i[3]).toLocaleLowerCase())}else this.label.innerText=e.replace(/&&/g,"&").trim()}}}updateTooltip(){}updateClass(){this.cssClass&&this.item&&this.item.classList.remove(...this.cssClass.split(" ")),this.options.icon&&this.label?(this.cssClass=this.action.class||"",this.label.classList.add("icon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" ")),this.updateEnabled()):this.label&&this.label.classList.remove("icon")}updateEnabled(){this.action.enabled?(this.element&&(this.element.classList.remove("disabled"),this.element.removeAttribute("aria-disabled")),this.item&&(this.item.classList.remove("disabled"),this.item.removeAttribute("aria-disabled"),this.item.tabIndex=0)):(this.element&&(this.element.classList.add("disabled"),this.element.setAttribute("aria-disabled","true")),this.item&&(this.item.classList.add("disabled"),this.item.setAttribute("aria-disabled","true")))}updateChecked(){if(!this.item)return;const e=this.action.checked;this.item.classList.toggle("checked",!!e),e!==void 0?(this.item.setAttribute("role","menuitemcheckbox"),this.item.setAttribute("aria-checked",e?"true":"false")):(this.item.setAttribute("role","menuitem"),this.item.setAttribute("aria-checked",""))}getMnemonic(){return this.mnemonic}applyStyle(){const e=this.element&&this.element.classList.contains("focused"),t=e&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor,i=e&&this.menuStyle.selectionBackgroundColor?this.menuStyle.selectionBackgroundColor:void 0,n=e&&this.menuStyle.selectionBorderColor?`1px solid ${this.menuStyle.selectionBorderColor}`:"",s=e&&this.menuStyle.selectionBorderColor?"-1px":"";this.item&&(this.item.style.color=t??"",this.item.style.backgroundColor=i??"",this.item.style.outline=n,this.item.style.outlineOffset=s),this.check&&(this.check.style.color=t??"")}}class _P extends V7{constructor(e,t,i,n,s){super(e,e,n,s),this.submenuActions=t,this.parentData=i,this.submenuOptions=n,this.mysubmenu=null,this.submenuDisposables=this._register(new X),this.mouseOver=!1,this.expandDirection=n&&n.expandDirection!==void 0?n.expandDirection:{horizontal:GC.Right,vertical:fD.Below},this.showScheduler=new ci(()=>{this.mouseOver&&(this.cleanupExistingSubmenu(!1),this.createSubmenu(!1))},250),this.hideScheduler=new ci(()=>{this.element&&!yi(Xi(),this.element)&&this.parentData.submenu===this.mysubmenu&&(this.parentData.parent.focus(!1),this.cleanupExistingSubmenu(!0))},750)}render(e){super.render(e),this.element&&(this.item&&(this.item.classList.add("monaco-submenu-item"),this.item.tabIndex=0,this.item.setAttribute("aria-haspopup","true"),this.updateAriaExpanded("false"),this.submenuIndicator=Z(this.item,ce("span.submenu-indicator"+Ee.asCSSSelector(ie.menuSubmenu))),this.submenuIndicator.setAttribute("aria-hidden","true")),this._register(U(this.element,ee.KEY_UP,t=>{const i=new Nt(t);(i.equals(17)||i.equals(3))&&(je.stop(t,!0),this.createSubmenu(!0))})),this._register(U(this.element,ee.KEY_DOWN,t=>{const i=new Nt(t);Xi()===this.item&&(i.equals(17)||i.equals(3))&&je.stop(t,!0)})),this._register(U(this.element,ee.MOUSE_OVER,t=>{this.mouseOver||(this.mouseOver=!0,this.showScheduler.schedule())})),this._register(U(this.element,ee.MOUSE_LEAVE,t=>{this.mouseOver=!1})),this._register(U(this.element,ee.FOCUS_OUT,t=>{this.element&&!yi(Xi(),this.element)&&this.hideScheduler.schedule()})),this._register(this.parentData.parent.onScroll(()=>{this.parentData.submenu===this.mysubmenu&&(this.parentData.parent.focus(!1),this.cleanupExistingSubmenu(!0))})))}updateEnabled(){}onClick(e){je.stop(e,!0),this.cleanupExistingSubmenu(!1),this.createSubmenu(!0)}cleanupExistingSubmenu(e){if(this.parentData.submenu&&(e||this.parentData.submenu!==this.mysubmenu)){try{this.parentData.submenu.dispose()}catch{}this.parentData.submenu=void 0,this.updateAriaExpanded("false"),this.submenuContainer&&(this.submenuDisposables.clear(),this.submenuContainer=void 0)}}calculateSubmenuMenuLayout(e,t,i,n){const s={top:0,left:0};return s.left=nf(e.width,t.width,{position:n.horizontal===GC.Right?0:1,offset:i.left,size:i.width}),s.left>=i.left&&s.left{new Nt(d).equals(15)&&(je.stop(d,!0),this.parentData.parent.focus(),this.cleanupExistingSubmenu(!0))})),this.submenuDisposables.add(U(this.submenuContainer,ee.KEY_DOWN,d=>{new Nt(d).equals(15)&&je.stop(d,!0)})),this.submenuDisposables.add(this.parentData.submenu.onDidCancel(()=>{this.parentData.parent.focus(),this.cleanupExistingSubmenu(!0)})),this.parentData.submenu.focus(e),this.mysubmenu=this.parentData.submenu}}updateAriaExpanded(e){this.item&&this.item?.setAttribute("aria-expanded",e)}applyStyle(){super.applyStyle();const t=this.element&&this.element.classList.contains("focused")&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor;this.submenuIndicator&&(this.submenuIndicator.style.color=t??"")}dispose(){super.dispose(),this.hideScheduler.dispose(),this.mysubmenu&&(this.mysubmenu.dispose(),this.mysubmenu=null),this.submenuContainer&&(this.submenuContainer=void 0)}}class bP extends dy{constructor(e,t,i,n){super(e,t,i),this.menuStyles=n}render(e){super.render(e),this.label&&(this.label.style.borderBottomColor=this.menuStyles.separatorColor?`${this.menuStyles.separatorColor}`:"")}}function VY(o){const e=uD,t=e.exec(o);if(!t)return o;const i=!t[1];return o.replace(e,i?"$2$3":"").trim()}function CP(o){const e=rF()[o.id];return`.codicon-${o.id}:before { content: '\\${e.toString(16)}'; }`}function zY(o,e){let t=` -.monaco-menu { - font-size: 13px; - border-radius: 5px; - min-width: 160px; -} - -${CP(ie.menuSelection)} -${CP(ie.menuSubmenu)} - -.monaco-menu .monaco-action-bar { - text-align: right; - overflow: hidden; - white-space: nowrap; -} - -.monaco-menu .monaco-action-bar .actions-container { - display: flex; - margin: 0 auto; - padding: 0; - width: 100%; - justify-content: flex-end; -} - -.monaco-menu .monaco-action-bar.vertical .actions-container { - display: inline-block; -} - -.monaco-menu .monaco-action-bar.reverse .actions-container { - flex-direction: row-reverse; -} - -.monaco-menu .monaco-action-bar .action-item { - cursor: pointer; - display: inline-block; - transition: transform 50ms ease; - position: relative; /* DO NOT REMOVE - this is the key to preventing the ghosting icon bug in Chrome 42 */ -} - -.monaco-menu .monaco-action-bar .action-item.disabled { - cursor: default; -} - -.monaco-menu .monaco-action-bar .action-item .icon, -.monaco-menu .monaco-action-bar .action-item .codicon { - display: inline-block; -} - -.monaco-menu .monaco-action-bar .action-item .codicon { - display: flex; - align-items: center; -} - -.monaco-menu .monaco-action-bar .action-label { - font-size: 11px; - margin-right: 4px; -} - -.monaco-menu .monaco-action-bar .action-item.disabled .action-label, -.monaco-menu .monaco-action-bar .action-item.disabled .action-label:hover { - color: var(--vscode-disabledForeground); -} - -/* Vertical actions */ - -.monaco-menu .monaco-action-bar.vertical { - text-align: left; -} - -.monaco-menu .monaco-action-bar.vertical .action-item { - display: block; -} - -.monaco-menu .monaco-action-bar.vertical .action-label.separator { - display: block; - border-bottom: 1px solid var(--vscode-menu-separatorBackground); - padding-top: 1px; - padding: 30px; -} - -.monaco-menu .secondary-actions .monaco-action-bar .action-label { - margin-left: 6px; -} - -/* Action Items */ -.monaco-menu .monaco-action-bar .action-item.select-container { - overflow: hidden; /* somehow the dropdown overflows its container, we prevent it here to not push */ - flex: 1; - max-width: 170px; - min-width: 60px; - display: flex; - align-items: center; - justify-content: center; - margin-right: 10px; -} - -.monaco-menu .monaco-action-bar.vertical { - margin-left: 0; - overflow: visible; -} - -.monaco-menu .monaco-action-bar.vertical .actions-container { - display: block; -} - -.monaco-menu .monaco-action-bar.vertical .action-item { - padding: 0; - transform: none; - display: flex; -} - -.monaco-menu .monaco-action-bar.vertical .action-item.active { - transform: none; -} - -.monaco-menu .monaco-action-bar.vertical .action-menu-item { - flex: 1 1 auto; - display: flex; - height: 2em; - align-items: center; - position: relative; - margin: 0 4px; - border-radius: 4px; -} - -.monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .keybinding, -.monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .keybinding { - opacity: unset; -} - -.monaco-menu .monaco-action-bar.vertical .action-label { - flex: 1 1 auto; - text-decoration: none; - padding: 0 1em; - background: none; - font-size: 12px; - line-height: 1; -} - -.monaco-menu .monaco-action-bar.vertical .keybinding, -.monaco-menu .monaco-action-bar.vertical .submenu-indicator { - display: inline-block; - flex: 2 1 auto; - padding: 0 1em; - text-align: right; - font-size: 12px; - line-height: 1; -} - -.monaco-menu .monaco-action-bar.vertical .submenu-indicator { - height: 100%; -} - -.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon { - font-size: 16px !important; - display: flex; - align-items: center; -} - -.monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon::before { - margin-left: auto; - margin-right: -20px; -} - -.monaco-menu .monaco-action-bar.vertical .action-item.disabled .keybinding, -.monaco-menu .monaco-action-bar.vertical .action-item.disabled .submenu-indicator { - opacity: 0.4; -} - -.monaco-menu .monaco-action-bar.vertical .action-label:not(.separator) { - display: inline-block; - box-sizing: border-box; - margin: 0; -} - -.monaco-menu .monaco-action-bar.vertical .action-item { - position: static; - overflow: visible; -} - -.monaco-menu .monaco-action-bar.vertical .action-item .monaco-submenu { - position: absolute; -} - -.monaco-menu .monaco-action-bar.vertical .action-label.separator { - width: 100%; - height: 0px !important; - opacity: 1; -} - -.monaco-menu .monaco-action-bar.vertical .action-label.separator.text { - padding: 0.7em 1em 0.1em 1em; - font-weight: bold; - opacity: 1; -} - -.monaco-menu .monaco-action-bar.vertical .action-label:hover { - color: inherit; -} - -.monaco-menu .monaco-action-bar.vertical .menu-item-check { - position: absolute; - visibility: hidden; - width: 1em; - height: 100%; -} - -.monaco-menu .monaco-action-bar.vertical .action-menu-item.checked .menu-item-check { - visibility: visible; - display: flex; - align-items: center; - justify-content: center; -} - -/* Context Menu */ - -.context-view.monaco-menu-container { - outline: 0; - border: none; - animation: fadeIn 0.083s linear; - -webkit-app-region: no-drag; -} - -.context-view.monaco-menu-container :focus, -.context-view.monaco-menu-container .monaco-action-bar.vertical:focus, -.context-view.monaco-menu-container .monaco-action-bar.vertical :focus { - outline: 0; -} - -.hc-black .context-view.monaco-menu-container, -.hc-light .context-view.monaco-menu-container, -:host-context(.hc-black) .context-view.monaco-menu-container, -:host-context(.hc-light) .context-view.monaco-menu-container { - box-shadow: none; -} - -.hc-black .monaco-menu .monaco-action-bar.vertical .action-item.focused, -.hc-light .monaco-menu .monaco-action-bar.vertical .action-item.focused, -:host-context(.hc-black) .monaco-menu .monaco-action-bar.vertical .action-item.focused, -:host-context(.hc-light) .monaco-menu .monaco-action-bar.vertical .action-item.focused { - background: none; -} - -/* Vertical Action Bar Styles */ - -.monaco-menu .monaco-action-bar.vertical { - padding: 4px 0; -} - -.monaco-menu .monaco-action-bar.vertical .action-menu-item { - height: 2em; -} - -.monaco-menu .monaco-action-bar.vertical .action-label:not(.separator), -.monaco-menu .monaco-action-bar.vertical .keybinding { - font-size: inherit; - padding: 0 2em; - max-height: 100%; -} - -.monaco-menu .monaco-action-bar.vertical .menu-item-check { - font-size: inherit; - width: 2em; -} - -.monaco-menu .monaco-action-bar.vertical .action-label.separator { - font-size: inherit; - margin: 5px 0 !important; - padding: 0; - border-radius: 0; -} - -.linux .monaco-menu .monaco-action-bar.vertical .action-label.separator, -:host-context(.linux) .monaco-menu .monaco-action-bar.vertical .action-label.separator { - margin-left: 0; - margin-right: 0; -} - -.monaco-menu .monaco-action-bar.vertical .submenu-indicator { - font-size: 60%; - padding: 0 1.8em; -} - -.linux .monaco-menu .monaco-action-bar.vertical .submenu-indicator, -:host-context(.linux) .monaco-menu .monaco-action-bar.vertical .submenu-indicator { - height: 100%; - mask-size: 10px 10px; - -webkit-mask-size: 10px 10px; -} - -.monaco-menu .action-item { - cursor: default; -}`;if(e){t+=` - /* Arrows */ - .monaco-scrollable-element > .scrollbar > .scra { - cursor: pointer; - font-size: 11px !important; - } - - .monaco-scrollable-element > .visible { - opacity: 1; - - /* Background rule added for IE9 - to allow clicks on dom node */ - background:rgba(0,0,0,0); - - transition: opacity 100ms linear; - } - .monaco-scrollable-element > .invisible { - opacity: 0; - pointer-events: none; - } - .monaco-scrollable-element > .invisible.fade { - transition: opacity 800ms linear; - } - - /* Scrollable Content Inset Shadow */ - .monaco-scrollable-element > .shadow { - position: absolute; - display: none; - } - .monaco-scrollable-element > .shadow.top { - display: block; - top: 0; - left: 3px; - height: 3px; - width: 100%; - } - .monaco-scrollable-element > .shadow.left { - display: block; - top: 3px; - left: 0; - height: 100%; - width: 3px; - } - .monaco-scrollable-element > .shadow.top-left-corner { - display: block; - top: 0; - left: 0; - height: 3px; - width: 3px; - } - `;const i=o.scrollbarShadow;i&&(t+=` - .monaco-scrollable-element > .shadow.top { - box-shadow: ${i} 0 6px 6px -6px inset; - } - - .monaco-scrollable-element > .shadow.left { - box-shadow: ${i} 6px 0 6px -6px inset; - } - - .monaco-scrollable-element > .shadow.top.left { - box-shadow: ${i} 6px 6px 6px -6px inset; - } - `);const n=o.scrollbarSliderBackground;n&&(t+=` - .monaco-scrollable-element > .scrollbar > .slider { - background: ${n}; - } - `);const s=o.scrollbarSliderHoverBackground;s&&(t+=` - .monaco-scrollable-element > .scrollbar > .slider:hover { - background: ${s}; - } - `);const r=o.scrollbarSliderActiveBackground;r&&(t+=` - .monaco-scrollable-element > .scrollbar > .slider.active { - background: ${r}; - } - `)}return t}class UY{constructor(e,t,i,n){this.contextViewService=e,this.telemetryService=t,this.notificationService=i,this.keybindingService=n,this.focusToReturn=null,this.lastContainer=null,this.block=null,this.blockDisposable=null,this.options={blockMouse:!0}}configure(e){this.options=e}showContextMenu(e){const t=e.getActions();if(!t.length)return;this.focusToReturn=Xi();let i;const n=Ei(e.domForShadowRoot)?e.domForShadowRoot:void 0;this.contextViewService.showContextView({getAnchor:()=>e.getAnchor(),canRelayout:!1,anchorAlignment:e.anchorAlignment,anchorAxisAlignment:e.anchorAxisAlignment,render:s=>{this.lastContainer=s;const r=e.getMenuClassName?e.getMenuClassName():"";r&&(s.className+=" "+r),this.options.blockMouse&&(this.block=s.appendChild(ce(".context-view-block")),this.block.style.position="fixed",this.block.style.cursor="initial",this.block.style.left="0",this.block.style.top="0",this.block.style.width="100%",this.block.style.height="100%",this.block.style.zIndex="-1",this.blockDisposable?.dispose(),this.blockDisposable=U(this.block,ee.MOUSE_DOWN,d=>d.stopPropagation()));const a=new X,l=e.actionRunner||new Oh;l.onWillRun(d=>this.onActionRun(d,!e.skipTelemetry),this,a),l.onDidRun(this.onDidActionRun,this,a),i=new Hf(s,t,{actionViewItemProvider:e.getActionViewItem,context:e.getActionsContext?e.getActionsContext():null,actionRunner:l,getKeyBinding:e.getKeyBinding?e.getKeyBinding:d=>this.keybindingService.lookupKeybinding(d.id)},WY),i.onDidCancel(()=>this.contextViewService.hideContextView(!0),null,a),i.onDidBlur(()=>this.contextViewService.hideContextView(!0),null,a);const c=fe(s);return a.add(U(c,ee.BLUR,()=>this.contextViewService.hideContextView(!0))),a.add(U(c,ee.MOUSE_DOWN,d=>{if(d.defaultPrevented)return;const h=new ur(c,d);let u=h.target;if(!h.rightButton){for(;u;){if(u===s)return;u=u.parentElement}this.contextViewService.hideContextView(!0)}})),No(a,i)},focus:()=>{i?.focus(!!e.autoSelectFirstItem)},onHide:s=>{e.onHide?.(!!s),this.block&&(this.block.remove(),this.block=null),this.blockDisposable?.dispose(),this.blockDisposable=null,this.lastContainer&&(Xi()===this.lastContainer||yi(Xi(),this.lastContainer))&&this.focusToReturn?.focus(),this.lastContainer=null}},n,!!n)}onActionRun(e,t){t&&this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.action.id,from:"contextMenu"}),this.contextViewService.hideContextView(!1)}onDidActionRun(e){e.error&&!$c(e.error)&&this.notificationService.error(e.error)}}var $Y=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Tu=function(o,e){return function(t,i){e(t,i,o)}};let gD=class extends z{get contextMenuHandler(){return this._contextMenuHandler||(this._contextMenuHandler=new UY(this.contextViewService,this.telemetryService,this.notificationService,this.keybindingService)),this._contextMenuHandler}constructor(e,t,i,n,s,r){super(),this.telemetryService=e,this.notificationService=t,this.contextViewService=i,this.keybindingService=n,this.menuService=s,this.contextKeyService=r,this._contextMenuHandler=void 0,this._onDidShowContextMenu=this._store.add(new A),this.onDidShowContextMenu=this._onDidShowContextMenu.event,this._onDidHideContextMenu=this._store.add(new A)}configure(e){this.contextMenuHandler.configure(e)}showContextMenu(e){e=mD.transform(e,this.menuService,this.contextKeyService),this.contextMenuHandler.showContextMenu({...e,onHide:t=>{e.onHide?.(t),this._onDidHideContextMenu.fire()}}),rl.getInstance().resetKeyStatus(),this._onDidShowContextMenu.fire()}};gD=$Y([Tu(0,$s),Tu(1,mn),Tu(2,lu),Tu(3,vt),Tu(4,yr),Tu(5,De)],gD);var mD;(function(o){function e(i){return i&&i.menuId instanceof $e}function t(i,n,s){if(!e(i))return i;const{menuId:r,menuActionOptions:a,contextKeyService:l}=i;return{...i,getActions:()=>{const c=[];if(r){const d=n.getMenuActions(r,l??s,a);HY(d,c)}return i.getActions?Gi.join(i.getActions(),c):c}}}o.transform=t})(mD||(mD={}));var ZC;(function(o){o[o.API=0]="API",o[o.USER=1]="USER"})(ZC||(ZC={}));var e2=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},YC=function(o,e){return function(t,i){e(t,i,o)}};let pD=class{constructor(e){this._commandService=e}async open(e,t){if(!GN(e,Te.command))return!1;if(!t?.allowCommands||(typeof e=="string"&&(e=ve.parse(e)),Array.isArray(t.allowCommands)&&!t.allowCommands.includes(e.path)))return!0;let i=[];try{i=Ok(decodeURIComponent(e.query))}catch{try{i=Ok(e.query)}catch{}}return Array.isArray(i)||(i=[i]),await this._commandService.executeCommand(e.path,...i),!0}};pD=e2([YC(0,hi)],pD);let _D=class{constructor(e){this._editorService=e}async open(e,t){typeof e=="string"&&(e=ve.parse(e));const{selection:i,uri:n}=_q(e);return e=n,e.scheme===Te.file&&(e=Qq(e)),await this._editorService.openCodeEditor({resource:e,options:{selection:i,source:t?.fromUserGesture?ZC.USER:ZC.API,...t?.editorOptions}},this._editorService.getFocusedCodeEditor(),t?.openToSide),!0}};_D=e2([YC(0,Pt)],_D);let bD=class{constructor(e,t){this._openers=new yn,this._validators=new yn,this._resolvers=new yn,this._resolvedUriTargets=new cs(i=>i.with({path:null,fragment:null,query:null}).toString()),this._externalOpeners=new yn,this._defaultExternalOpener={openExternal:async i=>(zx(i,Te.http,Te.https)?HF(i):_t.location.href=i,!0)},this._openers.push({open:async(i,n)=>n?.openExternal||zx(i,Te.mailto,Te.http,Te.https,Te.vsls)?(await this._doOpenExternal(i,n),!0):!1}),this._openers.push(new pD(t)),this._openers.push(new _D(e))}registerOpener(e){return{dispose:this._openers.unshift(e)}}async open(e,t){const i=typeof e=="string"?ve.parse(e):e,n=this._resolvedUriTargets.get(i)??e;for(const s of this._validators)if(!await s.shouldOpen(n,t))return!1;for(const s of this._openers)if(await s.open(e,t))return!0;return!1}async resolveExternalUri(e,t){for(const i of this._resolvers)try{const n=await i.resolveExternalUri(e,t);if(n)return this._resolvedUriTargets.has(n.resolved)||this._resolvedUriTargets.set(n.resolved,e),n}catch{}throw new Error("Could not resolve external URI: "+e.toString())}async _doOpenExternal(e,t){const i=typeof e=="string"?ve.parse(e):e;let n;try{n=(await this.resolveExternalUri(i,t)).resolved}catch{n=i}let s;if(typeof e=="string"&&i.toString()===n.toString()?s=e:s=encodeURI(n.toString(!0)),t?.allowContributedOpeners){const r=typeof t?.allowContributedOpeners=="string"?t?.allowContributedOpeners:void 0;for(const a of this._externalOpeners)if(await a.openExternal(s,{sourceUri:i,preferredOpenerId:r},ut.None))return!0}return this._defaultExternalOpener.openExternal(s,{sourceUri:i},ut.None)}dispose(){this._validators.clear()}};bD=e2([YC(0,Pt),YC(1,hi)],bD);const Zc=He("editorWorkerService");var Vt;(function(o){o[o.Hint=1]="Hint",o[o.Info=2]="Info",o[o.Warning=4]="Warning",o[o.Error=8]="Error"})(Vt||(Vt={}));(function(o){function e(r,a){return a-r}o.compare=e;const t=Object.create(null);t[o.Error]=m("sev.error","Error"),t[o.Warning]=m("sev.warning","Warning"),t[o.Info]=m("sev.info","Info");function i(r){return t[r]||""}o.toString=i;function n(r){switch(r){case Qt.Error:return o.Error;case Qt.Warning:return o.Warning;case Qt.Info:return o.Info;case Qt.Ignore:return o.Hint}}o.fromSeverity=n;function s(r){switch(r){case o.Error:return Qt.Error;case o.Warning:return Qt.Warning;case o.Info:return Qt.Info;case o.Hint:return Qt.Ignore}}o.toSeverity=s})(Vt||(Vt={}));var QC;(function(o){function t(n){return i(n,!0)}o.makeKey=t;function i(n,s){const r=[""];return n.source?r.push(n.source.replace("¦","\\¦")):r.push(""),n.code?typeof n.code=="string"?r.push(n.code.replace("¦","\\¦")):r.push(n.code.value.replace("¦","\\¦")):r.push(""),n.severity!==void 0&&n.severity!==null?r.push(Vt.toString(n.severity)):r.push(""),n.message&&s?r.push(n.message.replace("¦","\\¦")):r.push(""),n.startLineNumber!==void 0&&n.startLineNumber!==null?r.push(n.startLineNumber.toString()):r.push(""),n.startColumn!==void 0&&n.startColumn!==null?r.push(n.startColumn.toString()):r.push(""),n.endLineNumber!==void 0&&n.endLineNumber!==null?r.push(n.endLineNumber.toString()):r.push(""),n.endColumn!==void 0&&n.endColumn!==null?r.push(n.endColumn.toString()):r.push(""),r.push(""),r.join("¦")}o.makeKeyOptionalMessage=i})(QC||(QC={}));const xa=He("markerService"),z7=D("editor.lineHighlightBackground",null,m("lineHighlight","Background color for the highlight of line at the cursor position.")),vP=D("editor.lineHighlightBorder",{dark:"#282828",light:"#eeeeee",hcDark:"#f38518",hcLight:Ye},m("lineHighlightBorderBox","Background color for the border around the line at the cursor position."));D("editor.rangeHighlightBackground",{dark:"#ffffff0b",light:"#fdff0033",hcDark:null,hcLight:null},m("rangeHighlight","Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.rangeHighlightBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("rangeHighlightBorder","Background color of the border around highlighted ranges."));D("editor.symbolHighlightBackground",{dark:ll,light:ll,hcDark:null,hcLight:null},m("symbolHighlight","Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations."),!0);D("editor.symbolHighlightBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("symbolHighlightBorder","Background color of the border around highlighted symbols."));const uy=D("editorCursor.foreground",{dark:"#AEAFAD",light:q.black,hcDark:q.white,hcLight:"#0F4A85"},m("caret","Color of the editor cursor.")),t2=D("editorCursor.background",null,m("editorCursorBackground","The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.")),U7=D("editorMultiCursor.primary.foreground",uy,m("editorMultiCursorPrimaryForeground","Color of the primary editor cursor when multiple cursors are present.")),KY=D("editorMultiCursor.primary.background",t2,m("editorMultiCursorPrimaryBackground","The background color of the primary editor cursor when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),$7=D("editorMultiCursor.secondary.foreground",uy,m("editorMultiCursorSecondaryForeground","Color of secondary editor cursors when multiple cursors are present.")),jY=D("editorMultiCursor.secondary.background",t2,m("editorMultiCursorSecondaryBackground","The background color of secondary editor cursors when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),i2=D("editorWhitespace.foreground",{dark:"#e3e4e229",light:"#33333333",hcDark:"#e3e4e229",hcLight:"#CCCCCC"},m("editorWhitespaces","Color of whitespace characters in the editor.")),qY=D("editorLineNumber.foreground",{dark:"#858585",light:"#237893",hcDark:q.white,hcLight:"#292929"},m("editorLineNumbers","Color of editor line numbers.")),GY=D("editorIndentGuide.background",i2,m("editorIndentGuides","Color of the editor indentation guides."),!1,m("deprecatedEditorIndentGuides","'editorIndentGuide.background' is deprecated. Use 'editorIndentGuide.background1' instead.")),ZY=D("editorIndentGuide.activeBackground",i2,m("editorActiveIndentGuide","Color of the active editor indentation guides."),!1,m("deprecatedEditorActiveIndentGuide","'editorIndentGuide.activeBackground' is deprecated. Use 'editorIndentGuide.activeBackground1' instead.")),tb=D("editorIndentGuide.background1",GY,m("editorIndentGuides1","Color of the editor indentation guides (1).")),YY=D("editorIndentGuide.background2","#00000000",m("editorIndentGuides2","Color of the editor indentation guides (2).")),QY=D("editorIndentGuide.background3","#00000000",m("editorIndentGuides3","Color of the editor indentation guides (3).")),XY=D("editorIndentGuide.background4","#00000000",m("editorIndentGuides4","Color of the editor indentation guides (4).")),JY=D("editorIndentGuide.background5","#00000000",m("editorIndentGuides5","Color of the editor indentation guides (5).")),eQ=D("editorIndentGuide.background6","#00000000",m("editorIndentGuides6","Color of the editor indentation guides (6).")),ib=D("editorIndentGuide.activeBackground1",ZY,m("editorActiveIndentGuide1","Color of the active editor indentation guides (1).")),tQ=D("editorIndentGuide.activeBackground2","#00000000",m("editorActiveIndentGuide2","Color of the active editor indentation guides (2).")),iQ=D("editorIndentGuide.activeBackground3","#00000000",m("editorActiveIndentGuide3","Color of the active editor indentation guides (3).")),nQ=D("editorIndentGuide.activeBackground4","#00000000",m("editorActiveIndentGuide4","Color of the active editor indentation guides (4).")),sQ=D("editorIndentGuide.activeBackground5","#00000000",m("editorActiveIndentGuide5","Color of the active editor indentation guides (5).")),oQ=D("editorIndentGuide.activeBackground6","#00000000",m("editorActiveIndentGuide6","Color of the active editor indentation guides (6).")),rQ=D("editorActiveLineNumber.foreground",{dark:"#c6c6c6",light:"#0B216F",hcDark:Ut,hcLight:Ut},m("editorActiveLineNumber","Color of editor active line number"),!1,m("deprecatedEditorActiveLineNumber","Id is deprecated. Use 'editorLineNumber.activeForeground' instead."));D("editorLineNumber.activeForeground",rQ,m("editorActiveLineNumber","Color of editor active line number"));const aQ=D("editorLineNumber.dimmedForeground",null,m("editorDimmedLineNumber","Color of the final editor line when editor.renderFinalNewline is set to dimmed."));D("editorRuler.foreground",{dark:"#5A5A5A",light:q.lightgrey,hcDark:q.white,hcLight:"#292929"},m("editorRuler","Color of the editor rulers."));D("editorCodeLens.foreground",{dark:"#999999",light:"#919191",hcDark:"#999999",hcLight:"#292929"},m("editorCodeLensForeground","Foreground color of editor CodeLens"));D("editorBracketMatch.background",{dark:"#0064001a",light:"#0064001a",hcDark:"#0064001a",hcLight:"#0000"},m("editorBracketMatchBackground","Background color behind matching brackets"));D("editorBracketMatch.border",{dark:"#888",light:"#B9B9B9",hcDark:Ye,hcLight:Ye},m("editorBracketMatchBorder","Color for matching brackets boxes"));const lQ=D("editorOverviewRuler.border",{dark:"#7f7f7f4d",light:"#7f7f7f4d",hcDark:"#7f7f7f4d",hcLight:"#666666"},m("editorOverviewRulerBorder","Color of the overview ruler border.")),cQ=D("editorOverviewRuler.background",null,m("editorOverviewRulerBackground","Background color of the editor overview ruler."));D("editorGutter.background",Oo,m("editorGutter","Background color of the editor gutter. The gutter contains the glyph margins and the line numbers."));D("editorUnnecessaryCode.border",{dark:null,light:null,hcDark:q.fromHex("#fff").transparent(.8),hcLight:Ye},m("unnecessaryCodeBorder","Border color of unnecessary (unused) source code in the editor."));const dQ=D("editorUnnecessaryCode.opacity",{dark:q.fromHex("#000a"),light:q.fromHex("#0007"),hcDark:null,hcLight:null},m("unnecessaryCodeOpacity",`Opacity of unnecessary (unused) source code in the editor. For example, "#000000c0" will render the code with 75% opacity. For high contrast themes, use the 'editorUnnecessaryCode.border' theme color to underline unnecessary code instead of fading it out.`));D("editorGhostText.border",{dark:null,light:null,hcDark:q.fromHex("#fff").transparent(.8),hcLight:q.fromHex("#292929").transparent(.8)},m("editorGhostTextBorder","Border color of ghost text in the editor."));D("editorGhostText.foreground",{dark:q.fromHex("#ffffff56"),light:q.fromHex("#0007"),hcDark:null,hcLight:null},m("editorGhostTextForeground","Foreground color of the ghost text in the editor."));D("editorGhostText.background",null,m("editorGhostTextBackground","Background color of the ghost text in the editor."));const hQ=new q(new qe(0,122,204,.6));D("editorOverviewRuler.rangeHighlightForeground",hQ,m("overviewRulerRangeHighlight","Overview ruler marker color for range highlights. The color must not be opaque so as not to hide underlying decorations."),!0);const uQ=D("editorOverviewRuler.errorForeground",{dark:new q(new qe(255,18,18,.7)),light:new q(new qe(255,18,18,.7)),hcDark:new q(new qe(255,50,50,1)),hcLight:"#B5200D"},m("overviewRuleError","Overview ruler marker color for errors.")),fQ=D("editorOverviewRuler.warningForeground",{dark:Il,light:Il,hcDark:i_,hcLight:i_},m("overviewRuleWarning","Overview ruler marker color for warnings.")),gQ=D("editorOverviewRuler.infoForeground",{dark:ma,light:ma,hcDark:n_,hcLight:n_},m("overviewRuleInfo","Overview ruler marker color for infos.")),K7=D("editorBracketHighlight.foreground1",{dark:"#FFD700",light:"#0431FAFF",hcDark:"#FFD700",hcLight:"#0431FAFF"},m("editorBracketHighlightForeground1","Foreground color of brackets (1). Requires enabling bracket pair colorization.")),j7=D("editorBracketHighlight.foreground2",{dark:"#DA70D6",light:"#319331FF",hcDark:"#DA70D6",hcLight:"#319331FF"},m("editorBracketHighlightForeground2","Foreground color of brackets (2). Requires enabling bracket pair colorization.")),q7=D("editorBracketHighlight.foreground3",{dark:"#179FFF",light:"#7B3814FF",hcDark:"#87CEFA",hcLight:"#7B3814FF"},m("editorBracketHighlightForeground3","Foreground color of brackets (3). Requires enabling bracket pair colorization.")),G7=D("editorBracketHighlight.foreground4","#00000000",m("editorBracketHighlightForeground4","Foreground color of brackets (4). Requires enabling bracket pair colorization.")),Z7=D("editorBracketHighlight.foreground5","#00000000",m("editorBracketHighlightForeground5","Foreground color of brackets (5). Requires enabling bracket pair colorization.")),Y7=D("editorBracketHighlight.foreground6","#00000000",m("editorBracketHighlightForeground6","Foreground color of brackets (6). Requires enabling bracket pair colorization.")),mQ=D("editorBracketHighlight.unexpectedBracket.foreground",{dark:new q(new qe(255,18,18,.8)),light:new q(new qe(255,18,18,.8)),hcDark:"new Color(new RGBA(255, 50, 50, 1))",hcLight:"#B5200D"},m("editorBracketHighlightUnexpectedBracketForeground","Foreground color of unexpected brackets.")),pQ=D("editorBracketPairGuide.background1","#00000000",m("editorBracketPairGuide.background1","Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides.")),_Q=D("editorBracketPairGuide.background2","#00000000",m("editorBracketPairGuide.background2","Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides.")),bQ=D("editorBracketPairGuide.background3","#00000000",m("editorBracketPairGuide.background3","Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides.")),CQ=D("editorBracketPairGuide.background4","#00000000",m("editorBracketPairGuide.background4","Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides.")),vQ=D("editorBracketPairGuide.background5","#00000000",m("editorBracketPairGuide.background5","Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides.")),wQ=D("editorBracketPairGuide.background6","#00000000",m("editorBracketPairGuide.background6","Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides.")),yQ=D("editorBracketPairGuide.activeBackground1","#00000000",m("editorBracketPairGuide.activeBackground1","Background color of active bracket pair guides (1). Requires enabling bracket pair guides.")),SQ=D("editorBracketPairGuide.activeBackground2","#00000000",m("editorBracketPairGuide.activeBackground2","Background color of active bracket pair guides (2). Requires enabling bracket pair guides.")),LQ=D("editorBracketPairGuide.activeBackground3","#00000000",m("editorBracketPairGuide.activeBackground3","Background color of active bracket pair guides (3). Requires enabling bracket pair guides.")),xQ=D("editorBracketPairGuide.activeBackground4","#00000000",m("editorBracketPairGuide.activeBackground4","Background color of active bracket pair guides (4). Requires enabling bracket pair guides.")),kQ=D("editorBracketPairGuide.activeBackground5","#00000000",m("editorBracketPairGuide.activeBackground5","Background color of active bracket pair guides (5). Requires enabling bracket pair guides.")),DQ=D("editorBracketPairGuide.activeBackground6","#00000000",m("editorBracketPairGuide.activeBackground6","Background color of active bracket pair guides (6). Requires enabling bracket pair guides."));D("editorUnicodeHighlight.border",Il,m("editorUnicodeHighlight.border","Border color used to highlight unicode characters."));D("editorUnicodeHighlight.background",LK,m("editorUnicodeHighlight.background","Background color used to highlight unicode characters."));Sr((o,e)=>{const t=o.getColor(Oo),i=o.getColor(z7),n=i&&!i.isTransparent()?i:t;n&&e.addRule(`.monaco-editor .inputarea.ime-input { background-color: ${n}; }`)});function IQ(o,e){const t=[],i=[];for(const n of o)e.has(n)||t.push(n);for(const n of e)o.has(n)||i.push(n);return{removed:t,added:i}}function EQ(o,e){const t=new Set;for(const i of e)o.has(i)&&t.add(i);return t}var NQ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},wP=function(o,e){return function(t,i){e(t,i,o)}};let CD=class extends z{constructor(e,t){super(),this._markerService=t,this._onDidChangeMarker=this._register(new A),this._markerDecorations=new cs,e.getModels().forEach(i=>this._onModelAdded(i)),this._register(e.onModelAdded(this._onModelAdded,this)),this._register(e.onModelRemoved(this._onModelRemoved,this)),this._register(this._markerService.onMarkerChanged(this._handleMarkerChange,this))}dispose(){super.dispose(),this._markerDecorations.forEach(e=>e.dispose()),this._markerDecorations.clear()}getMarker(e,t){const i=this._markerDecorations.get(e);return i&&i.getMarker(t)||null}_handleMarkerChange(e){e.forEach(t=>{const i=this._markerDecorations.get(t);i&&this._updateDecorations(i)})}_onModelAdded(e){const t=new TQ(e);this._markerDecorations.set(e.uri,t),this._updateDecorations(t)}_onModelRemoved(e){const t=this._markerDecorations.get(e.uri);t&&(t.dispose(),this._markerDecorations.delete(e.uri)),(e.uri.scheme===Te.inMemory||e.uri.scheme===Te.internal||e.uri.scheme===Te.vscode)&&this._markerService?.read({resource:e.uri}).map(i=>i.owner).forEach(i=>this._markerService.remove(i,[e.uri]))}_updateDecorations(e){const t=this._markerService.read({resource:e.model.uri,take:500});e.update(t)&&this._onDidChangeMarker.fire(e.model)}};CD=NQ([wP(0,Fi),wP(1,xa)],CD);class TQ extends z{constructor(e){super(),this.model=e,this._map=new IU,this._register(_e(()=>{this.model.deltaDecorations([...this._map.values()],[]),this._map.clear()}))}update(e){const{added:t,removed:i}=IQ(new Set(this._map.keys()),new Set(e));if(t.length===0&&i.length===0)return!1;const n=i.map(a=>this._map.get(a)),s=t.map(a=>({range:this._createDecorationRange(this.model,a),options:this._createDecorationOption(a)})),r=this.model.deltaDecorations(n,s);for(const a of i)this._map.delete(a);for(let a=0;a=n)return i;const s=e.getWordAtPosition(i.getStartPosition());s&&(i=new I(i.startLineNumber,s.startColumn,i.endLineNumber,s.endColumn))}else if(t.endColumn===Number.MAX_VALUE&&t.startColumn===1&&i.startLineNumber===i.endLineNumber){const n=e.getLineFirstNonWhitespaceColumn(t.startLineNumber);n=0:!1}}const n2=He("markerDecorationsService");class _i{static _nextVisibleColumn(e,t,i){return e===9?_i.nextRenderTabStop(t,i):Rc(e)||UN(e)?t+2:t+1}static visibleColumnFromColumn(e,t,i){const n=Math.min(t-1,e.length),s=e.substring(0,n),r=new fC(s);let a=0;for(;!r.eol();){const l=uC(s,n,r.offset);r.nextGraphemeLength(),a=this._nextVisibleColumn(l,a,i)}return a}static columnFromVisibleColumn(e,t,i){if(t<=0)return 1;const n=e.length,s=new fC(e);let r=0,a=1;for(;!s.eol();){const l=uC(e,n,s.offset);s.nextGraphemeLength();const c=this._nextVisibleColumn(l,r,i),d=s.offset+1;if(c>=t){const h=t-r;return c-t=Rs&&(t=t-o%Rs),t}function FQ(o,e){return o.reduce((t,i)=>zt(t,e(i)),Ln)}function X7(o,e){return o===e}function h_(o,e){const t=o,i=e;if(i-t<=0)return Ln;const s=Math.floor(t/Rs),r=Math.floor(i/Rs),a=i-r*Rs;if(s===r){const l=t-s*Rs;return ni(0,a-l)}else return ni(r-s,a)}function Vf(o,e){return o=e}function lf(o){return ni(o.lineNumber-1,o.column-1)}function Jd(o,e){const t=o,i=Math.floor(t/Rs),n=t-i*Rs,s=e,r=Math.floor(s/Rs),a=s-r*Rs;return new I(i+1,n+1,r+1,a+1)}function BQ(o){const e=va(o);return ni(e.length-1,e[e.length-1].length)}class cl{static fromModelContentChanges(e){return e.map(i=>{const n=I.lift(i.range);return new cl(lf(n.getStartPosition()),lf(n.getEndPosition()),BQ(i.text))}).reverse()}constructor(e,t,i){this.startOffset=e,this.endOffset=t,this.newLength=i}toString(){return`[${ro(this.startOffset)}...${ro(this.endOffset)}) -> ${ro(this.newLength)}`}}class WQ{constructor(e){this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=e.map(t=>s2.from(t))}getOffsetBeforeChange(e){return this.adjustNextEdit(e),this.translateCurToOld(e)}getDistanceToNextChange(e){this.adjustNextEdit(e);const t=this.edits[this.nextEditIdx],i=t?this.translateOldToCur(t.offsetObj):null;return i===null?null:h_(e,i)}translateOldToCur(e){return e.lineCount===this.deltaLineIdxInOld?ni(e.lineCount+this.deltaOldToNewLineCount,e.columnCount+this.deltaOldToNewColumnCount):ni(e.lineCount+this.deltaOldToNewLineCount,e.columnCount)}translateCurToOld(e){const t=ro(e);return t.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?ni(t.lineCount-this.deltaOldToNewLineCount,t.columnCount-this.deltaOldToNewColumnCount):ni(t.lineCount-this.deltaOldToNewLineCount,t.columnCount)}adjustNextEdit(e){for(;this.nextEditIdx>5;if(n===0){const r=1<this.textBufferLineCount-1||this.lineIdx===this.textBufferLineCount-1&&this.lineCharOffset>=this.textBufferLastLineLength)return null;this.line===null&&(this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.line=this.lineTokens.getLineContent(),this.lineTokenOffset=this.lineCharOffset===0?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset));const e=this.lineIdx,t=this.lineCharOffset;let i=0;for(;;){const s=this.lineTokens,r=s.getCount();let a=null;if(this.lineTokenOffset1e3))break;if(i>1500)break}const n=PQ(e,t,this.lineIdx,this.lineCharOffset);return new Jl(n,0,-1,ss.getEmpty(),new Sd(n))}}class KQ{constructor(e,t){this.text=e,this._offset=Ln,this.idx=0;const i=t.getRegExpStr(),n=i?new RegExp(i+`| -`,"gi"):null,s=[];let r,a=0,l=0,c=0,d=0;const h=[];for(let g=0;g<60;g++)h.push(new Jl(ni(0,g),0,-1,ss.getEmpty(),new Sd(ni(0,g))));const u=[];for(let g=0;g<60;g++)u.push(new Jl(ni(1,g),0,-1,ss.getEmpty(),new Sd(ni(1,g))));if(n)for(n.lastIndex=0;(r=n.exec(e))!==null;){const g=r.index,p=r[0];if(p===` -`)a++,l=g+1;else{if(c!==g){let _;if(d===a){const b=g-c;if(bjQ(t)).join("|")}}get regExpGlobal(){if(!this.hasRegExp){const e=this.getRegExpStr();this._regExpGlobal=e?new RegExp(e,"gi"):null,this.hasRegExp=!0}return this._regExpGlobal}getToken(e){return this.map.get(e.toLowerCase())}findClosingTokenText(e){for(const[t,i]of this.map)if(i.kind===2&&i.bracketIds.intersects(e))return t}get isEmpty(){return this.map.size===0}}function jQ(o){let e=xl(o);return/^[\w ]+/.test(o)&&(e=`\\b${e}`),/[\w ]+$/.test(o)&&(e=`${e}\\b`),e}class t9{constructor(e,t){this.denseKeyProvider=e,this.getLanguageConfiguration=t,this.languageIdToBracketTokens=new Map}didLanguageChange(e){return this.languageIdToBracketTokens.has(e)}getSingleLanguageBracketTokens(e){let t=this.languageIdToBracketTokens.get(e);return t||(t=a2.createFromLanguage(this.getLanguageConfiguration(e),this.denseKeyProvider),this.languageIdToBracketTokens.set(e,t)),t}}function qQ(o){if(o.length===0)return null;if(o.length===1)return o[0];let e=0;function t(){if(e>=o.length)return null;const r=e,a=o[r].listHeight;for(e++;e=2?i9(r===0&&e===o.length?o:o.slice(r,e),!1):o[r]}let i=t(),n=t();if(!n)return i;for(let r=t();r;r=t())LP(i,n)<=LP(n,r)?(i=PS(i,n),n=r):n=PS(n,r);return PS(i,n)}function i9(o,e=!1){if(o.length===0)return null;if(o.length===1)return o[0];let t=o.length;for(;t>3;){const i=t>>1;for(let n=0;n=3?o[2]:null,e)}function LP(o,e){return Math.abs(o.listHeight-e.listHeight)}function PS(o,e){return o.listHeight===e.listHeight?pa.create23(o,e,null,!1):o.listHeight>e.listHeight?GQ(o,e):ZQ(e,o)}function GQ(o,e){o=o.toMutable();let t=o;const i=[];let n;for(;;){if(e.listHeight===t.listHeight){n=e;break}if(t.kind!==4)throw new Error("unexpected");i.push(t),t=t.makeLastElementMutable()}for(let s=i.length-1;s>=0;s--){const r=i[s];n?r.childrenLength>=3?n=pa.create23(r.unappendChild(),n,null,!1):(r.appendChildOfSameHeight(n),n=void 0):r.handleChildrenChanged()}return n?pa.create23(o,n,null,!1):o}function ZQ(o,e){o=o.toMutable();let t=o;const i=[];for(;e.listHeight!==t.listHeight;){if(t.kind!==4)throw new Error("unexpected");i.push(t),t=t.makeFirstElementMutable()}let n=e;for(let s=i.length-1;s>=0;s--){const r=i[s];n?r.childrenLength>=3?n=pa.create23(n,r.unprependChild(),null,!1):(r.prependChildOfSameHeight(n),n=void 0):r.handleChildrenChanged()}return n?pa.create23(n,o,null,!1):o}class YQ{constructor(e){this.lastOffset=Ln,this.nextNodes=[e],this.offsets=[Ln],this.idxs=[]}readLongestNodeAt(e,t){if(Vf(e,this.lastOffset))throw new Error("Invalid offset");for(this.lastOffset=e;;){const i=mm(this.nextNodes);if(!i)return;const n=mm(this.offsets);if(Vf(e,n))return;if(Vf(n,e))if(zt(n,i.length)<=e)this.nextNodeAfterCurrent();else{const s=OS(i);s!==-1?(this.nextNodes.push(i.getChild(s)),this.offsets.push(n),this.idxs.push(s)):this.nextNodeAfterCurrent()}else{if(t(i))return this.nextNodeAfterCurrent(),i;{const s=OS(i);if(s===-1){this.nextNodeAfterCurrent();return}else this.nextNodes.push(i.getChild(s)),this.offsets.push(n),this.idxs.push(s)}}}}nextNodeAfterCurrent(){for(;;){const e=mm(this.offsets),t=mm(this.nextNodes);if(this.nextNodes.pop(),this.offsets.pop(),this.idxs.length===0)break;const i=mm(this.nextNodes),n=OS(i,this.idxs[this.idxs.length-1]);if(n!==-1){this.nextNodes.push(i.getChild(n)),this.offsets.push(zt(e,t.length)),this.idxs[this.idxs.length-1]=n;break}else this.idxs.pop()}}}function OS(o,e=-1){for(;;){if(e++,e>=o.childrenLength)return-1;if(o.getChild(e))return e}}function mm(o){return o.length>0?o[o.length-1]:void 0}function vD(o,e,t,i){return new QQ(o,e,t,i).parseDocument()}class QQ{constructor(e,t,i,n){if(this.tokenizer=e,this.createImmutableLists=n,this._itemsConstructed=0,this._itemsFromCache=0,i&&n)throw new Error("Not supported");this.oldNodeReader=i?new YQ(i):void 0,this.positionMapper=new WQ(t)}parseDocument(){this._itemsConstructed=0,this._itemsFromCache=0;let e=this.parseList(ss.getEmpty(),0);return e||(e=pa.getEmpty()),e}parseList(e,t){const i=[];for(;;){let s=this.tryReadChildFromCache(e);if(!s){const r=this.tokenizer.peek();if(!r||r.kind===2&&r.bracketIds.intersects(e))break;s=this.parseChild(e,t+1)}s.kind===4&&s.childrenLength===0||i.push(s)}return this.oldNodeReader?qQ(i):i9(i,this.createImmutableLists)}tryReadChildFromCache(e){if(this.oldNodeReader){const t=this.positionMapper.getDistanceToNextChange(this.tokenizer.offset);if(t===null||!XC(t)){const i=this.oldNodeReader.readLongestNodeAt(this.positionMapper.getOffsetBeforeChange(this.tokenizer.offset),n=>t!==null&&!Vf(n.length,t)?!1:n.canBeReused(e));if(i)return this._itemsFromCache++,this.tokenizer.skip(i.length),i}}}parseChild(e,t){this._itemsConstructed++;const i=this.tokenizer.read();switch(i.kind){case 2:return new UQ(i.bracketIds,i.length);case 0:return i.astNode;case 1:{if(t>300)return new Sd(i.length);const n=e.merge(i.bracketIds),s=this.parseList(n,t+1),r=this.tokenizer.peek();return r&&r.kind===2&&(r.bracketId===i.bracketId||r.bracketIds.intersects(i.bracketIds))?(this.tokenizer.read(),u_.create(i.astNode,s,r.astNode)):u_.create(i.astNode,s,null)}default:throw new Error("unexpected")}}}function tv(o,e){if(o.length===0)return e;if(e.length===0)return o;const t=new Ll(xP(o)),i=xP(e);i.push({modified:!1,lengthBefore:void 0,lengthAfter:void 0});let n=t.dequeue();function s(c){if(c===void 0){const h=t.takeWhile(u=>!0)||[];return n&&h.unshift(n),h}const d=[];for(;n&&!XC(c);){const[h,u]=n.splitAt(c);d.push(h),c=h_(h.lengthAfter,c),n=u??t.dequeue()}return XC(c)||d.push(new ac(!1,c,c)),d}const r=[];function a(c,d,h){if(r.length>0&&X7(r[r.length-1].endOffset,c)){const u=r[r.length-1];r[r.length-1]=new cl(u.startOffset,d,zt(u.newLength,h))}else r.push({startOffset:c,endOffset:d,newLength:h})}let l=Ln;for(const c of i){const d=s(c.lengthBefore);if(c.modified){const h=FQ(d,f=>f.lengthBefore),u=zt(l,h);a(l,u,c.lengthAfter),l=u}else for(const h of d){const u=l;l=zt(l,h.lengthBefore),h.modified&&a(u,l,h.lengthAfter)}}return r}class ac{constructor(e,t,i){this.modified=e,this.lengthBefore=t,this.lengthAfter=i}splitAt(e){const t=h_(e,this.lengthAfter);return X7(t,Ln)?[this,void 0]:this.modified?[new ac(this.modified,this.lengthBefore,e),new ac(this.modified,Ln,t)]:[new ac(this.modified,e,e),new ac(this.modified,t,t)]}toString(){return`${this.modified?"M":"U"}:${ro(this.lengthBefore)} -> ${ro(this.lengthAfter)}`}}function xP(o){const e=[];let t=Ln;for(const i of o){const n=h_(t,i.startOffset);XC(n)||e.push(new ac(!1,n,n));const s=h_(i.startOffset,i.endOffset);e.push(new ac(!0,s,i.newLength)),t=i.endOffset}return e}class XQ extends z{didLanguageChange(e){return this.brackets.didLanguageChange(e)}constructor(e,t){if(super(),this.textModel=e,this.getLanguageConfiguration=t,this.didChangeEmitter=new A,this.denseKeyProvider=new J7,this.brackets=new t9(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],e.tokenization.hasTokens)e.tokenization.backgroundTokenizationState===2?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{const i=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),n=new KQ(this.textModel.getValue(),i);this.initialAstWithoutTokens=vD(n,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(this.textModel.tokenization.backgroundTokenizationState===2){const e=this.initialAstWithoutTokens===void 0;this.initialAstWithoutTokens=void 0,e||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:e}){const t=e.map(i=>new cl(ni(i.fromLineNumber-1,0),ni(i.toLineNumber,0),ni(i.toLineNumber-i.fromLineNumber+1,0)));this.handleEdits(t,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(e){const t=cl.fromModelContentChanges(e.changes);this.handleEdits(t,!1)}handleEdits(e,t){const i=tv(this.queuedTextEdits,e);this.queuedTextEdits=i,this.initialAstWithoutTokens&&!t&&(this.queuedTextEditsForInitialAstWithoutTokens=tv(this.queuedTextEditsForInitialAstWithoutTokens,e))}flushQueue(){this.queuedTextEdits.length>0&&(this.astWithTokens=this.parseDocumentFromTextBuffer(this.queuedTextEdits,this.astWithTokens,!1),this.queuedTextEdits=[]),this.queuedTextEditsForInitialAstWithoutTokens.length>0&&(this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(this.queuedTextEditsForInitialAstWithoutTokens,this.initialAstWithoutTokens,!1)),this.queuedTextEditsForInitialAstWithoutTokens=[])}parseDocumentFromTextBuffer(e,t,i){const n=t,s=new e9(this.textModel,this.brackets);return vD(s,e,n,i)}getBracketsInRange(e,t){this.flushQueue();const i=ni(e.startLineNumber-1,e.startColumn-1),n=ni(e.endLineNumber-1,e.endColumn-1);return new Zd(s=>{const r=this.initialAstWithoutTokens||this.astWithTokens;wD(r,Ln,r.length,i,n,s,0,0,new Map,t)})}getBracketPairsInRange(e,t){this.flushQueue();const i=lf(e.getStartPosition()),n=lf(e.getEndPosition());return new Zd(s=>{const r=this.initialAstWithoutTokens||this.astWithTokens,a=new JQ(s,t,this.textModel);yD(r,Ln,r.length,i,n,a,0,new Map)})}getFirstBracketAfter(e){this.flushQueue();const t=this.initialAstWithoutTokens||this.astWithTokens;return s9(t,Ln,t.length,lf(e))}getFirstBracketBefore(e){this.flushQueue();const t=this.initialAstWithoutTokens||this.astWithTokens;return n9(t,Ln,t.length,lf(e))}}function n9(o,e,t,i){if(o.kind===4||o.kind===2){const n=[];for(const s of o.children)t=zt(e,s.length),n.push({nodeOffsetStart:e,nodeOffsetEnd:t}),e=t;for(let s=n.length-1;s>=0;s--){const{nodeOffsetStart:r,nodeOffsetEnd:a}=n[s];if(Vf(r,i)){const l=n9(o.children[s],r,a,i);if(l)return l}}return null}else{if(o.kind===3)return null;if(o.kind===1){const n=Jd(e,t);return{bracketInfo:o.bracketInfo,range:n}}}return null}function s9(o,e,t,i){if(o.kind===4||o.kind===2){for(const n of o.children){if(t=zt(e,n.length),Vf(i,t)){const s=s9(n,e,t,i);if(s)return s}e=t}return null}else{if(o.kind===3)return null;if(o.kind===1){const n=Jd(e,t);return{bracketInfo:o.bracketInfo,range:n}}}return null}function wD(o,e,t,i,n,s,r,a,l,c,d=!1){if(r>200)return!0;e:for(;;)switch(o.kind){case 4:{const h=o.childrenLength;for(let u=0;u200)return!0;let l=!0;if(o.kind===2){let c=0;if(a){let u=a.get(o.openingBracket.text);u===void 0&&(u=0),c=u,u++,a.set(o.openingBracket.text,u)}const d=zt(e,o.openingBracket.length);let h=-1;if(s.includeMinIndentation&&(h=o.computeMinIndentation(e,s.textModel)),l=s.push(new AQ(Jd(e,t),Jd(e,d),o.closingBracket?Jd(zt(d,o.child?.length||Ln),t):void 0,r,c,o,h)),e=d,l&&o.child){const u=o.child;if(t=zt(e,u.length),zf(e,n)&&Am(t,i)&&(l=yD(u,e,t,i,n,s,r+1,a),!l))return!1}a?.set(o.openingBracket.text,c)}else{let c=e;for(const d of o.children){const h=c;if(c=zt(c,d.length),zf(h,n)&&zf(i,c)&&(l=yD(d,h,c,i,n,s,r,a),!l))return!1}}return l}class eX extends z{get canBuildAST(){return this.textModel.getValueLength()<=5e6}constructor(e,t){super(),this.textModel=e,this.languageConfigurationService=t,this.bracketPairsTree=this._register(new Dn),this.onDidChangeEmitter=new A,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1}handleLanguageConfigurationServiceChange(e){(!e.languageId||this.bracketPairsTree.value?.object.didLanguageChange(e.languageId))&&(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}handleDidChangeOptions(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(e){this.bracketPairsTree.value?.object.handleContentChanged(e)}handleDidChangeBackgroundTokenizationState(){this.bracketPairsTree.value?.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(e){this.bracketPairsTree.value?.object.handleDidChangeTokens(e)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){const e=new X;this.bracketPairsTree.value=tX(e.add(new XQ(this.textModel,t=>this.languageConfigurationService.getLanguageConfiguration(t))),e),e.add(this.bracketPairsTree.value.object.onDidChange(t=>this.onDidChangeEmitter.fire(t))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire())}getBracketPairsInRange(e){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(e,!1)||Zd.empty}getBracketPairsInRangeWithMinIndentation(e){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(e,!0)||Zd.empty}getBracketsInRange(e,t=!1){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketsInRange(e,t)||Zd.empty}findMatchingBracketUp(e,t,i){const n=this.textModel.validatePosition(t),s=this.textModel.getLanguageIdAtPosition(n.lineNumber,n.column);if(this.canBuildAST){const r=this.languageConfigurationService.getLanguageConfiguration(s).bracketsNew.getClosingBracketInfo(e);if(!r)return null;const a=this.getBracketPairsInRange(I.fromPositions(t,t)).findLast(l=>r.closes(l.openingBracketInfo));return a?a.openingBracketRange:null}else{const r=e.toLowerCase(),a=this.languageConfigurationService.getLanguageConfiguration(s).brackets;if(!a)return null;const l=a.textIsBracket[r];return l?Kb(this._findMatchingBracketUp(l,n,FS(i))):null}}matchBracket(e,t){if(this.canBuildAST){const i=this.getBracketPairsInRange(I.fromPositions(e,e)).filter(n=>n.closingBracketRange!==void 0&&(n.openingBracketRange.containsPosition(e)||n.closingBracketRange.containsPosition(e))).findLastMaxBy(rs(n=>n.openingBracketRange.containsPosition(e)?n.openingBracketRange:n.closingBracketRange,I.compareRangesUsingStarts));return i?[i.openingBracketRange,i.closingBracketRange]:null}else{const i=FS(t);return this._matchBracket(this.textModel.validatePosition(e),i)}}_establishBracketSearchOffsets(e,t,i,n){const s=t.getCount(),r=t.getLanguageId(n);let a=Math.max(0,e.column-1-i.maxBracketLength);for(let c=n-1;c>=0;c--){const d=t.getEndOffset(c);if(d<=a)break;if(Pr(t.getStandardTokenType(c))||t.getLanguageId(c)!==r){a=d;break}}let l=Math.min(t.getLineContent().length,e.column-1+i.maxBracketLength);for(let c=n+1;c=l)break;if(Pr(t.getStandardTokenType(c))||t.getLanguageId(c)!==r){l=d;break}}return{searchStartOffset:a,searchEndOffset:l}}_matchBracket(e,t){const i=e.lineNumber,n=this.textModel.tokenization.getLineTokens(i),s=this.textModel.getLineContent(i),r=n.findTokenIndexAtOffset(e.column-1);if(r<0)return null;const a=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId(r)).brackets;if(a&&!Pr(n.getStandardTokenType(r))){let{searchStartOffset:l,searchEndOffset:c}=this._establishBracketSearchOffsets(e,n,a,r),d=null;for(;;){const h=Co.findNextBracketInRange(a.forwardRegex,i,s,l,c);if(!h)break;if(h.startColumn<=e.column&&e.column<=h.endColumn){const u=s.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),f=this._matchFoundBracket(h,a.textIsBracket[u],a.textIsOpenBracket[u],t);if(f){if(f instanceof Xa)return null;d=f}}l=h.endColumn-1}if(d)return d}if(r>0&&n.getStartOffset(r)===e.column-1){const l=r-1,c=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId(l)).brackets;if(c&&!Pr(n.getStandardTokenType(l))){const{searchStartOffset:d,searchEndOffset:h}=this._establishBracketSearchOffsets(e,n,c,l),u=Co.findPrevBracketInRange(c.reversedRegex,i,s,d,h);if(u&&u.startColumn<=e.column&&e.column<=u.endColumn){const f=s.substring(u.startColumn-1,u.endColumn-1).toLowerCase(),g=this._matchFoundBracket(u,c.textIsBracket[f],c.textIsOpenBracket[f],t);if(g)return g instanceof Xa?null:g}}}return null}_matchFoundBracket(e,t,i,n){if(!t)return null;const s=i?this._findMatchingBracketDown(t,e.getEndPosition(),n):this._findMatchingBracketUp(t,e.getStartPosition(),n);return s?s instanceof Xa?s:[e,s]:null}_findMatchingBracketUp(e,t,i){const n=e.languageId,s=e.reversedRegex;let r=-1,a=0;const l=(c,d,h,u)=>{for(;;){if(i&&++a%100===0&&!i())return Xa.INSTANCE;const f=Co.findPrevBracketInRange(s,c,d,h,u);if(!f)break;const g=d.substring(f.startColumn-1,f.endColumn-1).toLowerCase();if(e.isOpen(g)?r++:e.isClose(g)&&r--,r===0)return f;u=f.startColumn-1}return null};for(let c=t.lineNumber;c>=1;c--){const d=this.textModel.tokenization.getLineTokens(c),h=d.getCount(),u=this.textModel.getLineContent(c);let f=h-1,g=u.length,p=u.length;c===t.lineNumber&&(f=d.findTokenIndexAtOffset(t.column-1),g=t.column-1,p=t.column-1);let _=!0;for(;f>=0;f--){const b=d.getLanguageId(f)===n&&!Pr(d.getStandardTokenType(f));if(b)_?g=d.getStartOffset(f):(g=d.getStartOffset(f),p=d.getEndOffset(f));else if(_&&g!==p){const C=l(c,u,g,p);if(C)return C}_=b}if(_&&g!==p){const b=l(c,u,g,p);if(b)return b}}return null}_findMatchingBracketDown(e,t,i){const n=e.languageId,s=e.forwardRegex;let r=1,a=0;const l=(d,h,u,f)=>{for(;;){if(i&&++a%100===0&&!i())return Xa.INSTANCE;const g=Co.findNextBracketInRange(s,d,h,u,f);if(!g)break;const p=h.substring(g.startColumn-1,g.endColumn-1).toLowerCase();if(e.isOpen(p)?r++:e.isClose(p)&&r--,r===0)return g;u=g.endColumn-1}return null},c=this.textModel.getLineCount();for(let d=t.lineNumber;d<=c;d++){const h=this.textModel.tokenization.getLineTokens(d),u=h.getCount(),f=this.textModel.getLineContent(d);let g=0,p=0,_=0;d===t.lineNumber&&(g=h.findTokenIndexAtOffset(t.column-1),p=t.column-1,_=t.column-1);let b=!0;for(;g=1;r--){const a=this.textModel.tokenization.getLineTokens(r),l=a.getCount(),c=this.textModel.getLineContent(r);let d=l-1,h=c.length,u=c.length;if(r===t.lineNumber){d=a.findTokenIndexAtOffset(t.column-1),h=t.column-1,u=t.column-1;const g=a.getLanguageId(d);i!==g&&(i=g,n=this.languageConfigurationService.getLanguageConfiguration(i).brackets,s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew)}let f=!0;for(;d>=0;d--){const g=a.getLanguageId(d);if(i!==g){if(n&&s&&f&&h!==u){const _=Co.findPrevBracketInRange(n.reversedRegex,r,c,h,u);if(_)return this._toFoundBracket(s,_);f=!1}i=g,n=this.languageConfigurationService.getLanguageConfiguration(i).brackets,s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew}const p=!!n&&!Pr(a.getStandardTokenType(d));if(p)f?h=a.getStartOffset(d):(h=a.getStartOffset(d),u=a.getEndOffset(d));else if(s&&n&&f&&h!==u){const _=Co.findPrevBracketInRange(n.reversedRegex,r,c,h,u);if(_)return this._toFoundBracket(s,_)}f=p}if(s&&n&&f&&h!==u){const g=Co.findPrevBracketInRange(n.reversedRegex,r,c,h,u);if(g)return this._toFoundBracket(s,g)}}return null}findNextBracket(e){const t=this.textModel.validatePosition(e);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketAfter(t)||null;const i=this.textModel.getLineCount();let n=null,s=null,r=null;for(let a=t.lineNumber;a<=i;a++){const l=this.textModel.tokenization.getLineTokens(a),c=l.getCount(),d=this.textModel.getLineContent(a);let h=0,u=0,f=0;if(a===t.lineNumber){h=l.findTokenIndexAtOffset(t.column-1),u=t.column-1,f=t.column-1;const p=l.getLanguageId(h);n!==p&&(n=p,s=this.languageConfigurationService.getLanguageConfiguration(n).brackets,r=this.languageConfigurationService.getLanguageConfiguration(n).bracketsNew)}let g=!0;for(;hp.closingBracketRange!==void 0&&p.range.strictContainsRange(f));return g?[g.openingBracketRange,g.closingBracketRange]:null}const n=FS(t),s=this.textModel.getLineCount(),r=new Map;let a=[];const l=(f,g)=>{if(!r.has(f)){const p=[];for(let _=0,b=g?g.brackets.length:0;_{for(;;){if(n&&++c%100===0&&!n())return Xa.INSTANCE;const C=Co.findNextBracketInRange(f.forwardRegex,g,p,_,b);if(!C)break;const w=p.substring(C.startColumn-1,C.endColumn-1).toLowerCase(),v=f.textIsBracket[w];if(v&&(v.isOpen(w)?a[v.index]++:v.isClose(w)&&a[v.index]--,a[v.index]===-1))return this._matchFoundBracket(C,v,!1,n);_=C.endColumn-1}return null};let h=null,u=null;for(let f=i.lineNumber;f<=s;f++){const g=this.textModel.tokenization.getLineTokens(f),p=g.getCount(),_=this.textModel.getLineContent(f);let b=0,C=0,w=0;if(f===i.lineNumber){b=g.findTokenIndexAtOffset(i.column-1),C=i.column-1,w=i.column-1;const y=g.getLanguageId(b);h!==y&&(h=y,u=this.languageConfigurationService.getLanguageConfiguration(h).brackets,l(h,u))}let v=!0;for(;be?.dispose()}}function FS(o){if(typeof o>"u")return()=>!0;{const e=Date.now();return()=>Date.now()-e<=o}}const Ow=class Ow{constructor(){this._searchCanceledBrand=void 0}};Ow.INSTANCE=new Ow;let Xa=Ow;function Kb(o){return o instanceof Xa?null:o}class iX extends z{constructor(e){super(),this.textModel=e,this.colorProvider=new o9,this.onDidChangeEmitter=new A,this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=e.getOptions().bracketPairColorizationOptions,this._register(e.bracketPairs.onDidChange(t=>{this.onDidChangeEmitter.fire()}))}handleDidChangeOptions(e){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(e,t,i,n){return n?[]:t===void 0?[]:this.colorizationOptions.enabled?this.textModel.bracketPairs.getBracketsInRange(e,!0).map(r=>({id:`bracket${r.range.toString()}-${r.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(r,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:r.range})).toArray():[]}getAllDecorations(e,t){return e===void 0?[]:this.colorizationOptions.enabled?this.getDecorationsInRange(new I(1,1,this.textModel.getLineCount(),1),e,t):[]}}class o9{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(e,t){return e.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(t?e.nestingLevelOfEqualBracketType:e.nestingLevel)}getInlineClassNameOfLevel(e){return`bracket-highlighting-${e%30}`}}Sr((o,e)=>{const t=[K7,j7,q7,G7,Z7,Y7],i=new o9;e.addRule(`.monaco-editor .${i.unexpectedClosingBracketClassName} { color: ${o.getColor(mQ)}; }`);const n=t.map(s=>o.getColor(s)).filter(s=>!!s).filter(s=>!s.isTransparent());for(let s=0;s<30;s++){const r=n[s%n.length];e.addRule(`.monaco-editor .${i.getInlineClassNameOfLevel(s)} { color: ${r}; }`)}});function jb(o){return o.replace(/\n/g,"\\n").replace(/\r/g,"\\r")}class Ki{get oldLength(){return this.oldText.length}get oldEnd(){return this.oldPosition+this.oldText.length}get newLength(){return this.newText.length}get newEnd(){return this.newPosition+this.newText.length}constructor(e,t,i,n){this.oldPosition=e,this.oldText=t,this.newPosition=i,this.newText=n}toString(){return this.oldText.length===0?`(insert@${this.oldPosition} "${jb(this.newText)}")`:this.newText.length===0?`(delete@${this.oldPosition} "${jb(this.oldText)}")`:`(replace@${this.oldPosition} "${jb(this.oldText)}" with "${jb(this.newText)}")`}static _writeStringSize(e){return 4+2*e.length}static _writeString(e,t,i){const n=t.length;er(e,n,i),i+=4;for(let s=0;s0&&(this.changes=nX(this.changes,t)),this.afterEOL=i,this.afterVersionId=n,this.afterCursorState=s}static _writeSelectionsSize(e){return 4+16*(e?e.length:0)}static _writeSelections(e,t,i){if(er(e,t?t.length:0,i),i+=4,t)for(const n of t)er(e,n.selectionStartLineNumber,i),i+=4,er(e,n.selectionStartColumn,i),i+=4,er(e,n.positionLineNumber,i),i+=4,er(e,n.positionColumn,i),i+=4;return i}static _readSelections(e,t,i){const n=Jo(e,t);t+=4;for(let s=0;st.toString()).join(", ")}matchesResource(e){return(ve.isUri(this.model)?this.model:this.model.uri).toString()===e.toString()}setModel(e){this.model=e}canAppend(e){return this.model===e&&this._data instanceof xi}append(e,t,i,n,s){this._data instanceof xi&&this._data.append(e,t,i,n,s)}close(){this._data instanceof xi&&(this._data=this._data.serialize())}open(){this._data instanceof xi||(this._data=xi.deserialize(this._data))}undo(){if(ve.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof xi&&(this._data=this._data.serialize());const e=xi.deserialize(this._data);this.model._applyUndo(e.changes,e.beforeEOL,e.beforeVersionId,e.beforeCursorState)}redo(){if(ve.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof xi&&(this._data=this._data.serialize());const e=xi.deserialize(this._data);this.model._applyRedo(e.changes,e.afterEOL,e.afterVersionId,e.afterCursorState)}heapSize(){return this._data instanceof xi&&(this._data=this._data.serialize()),this._data.byteLength+168}}class sX{get resources(){return this._editStackElementsArr.map(e=>e.resource)}constructor(e,t,i){this.label=e,this.code=t,this.type=1,this._isOpen=!0,this._editStackElementsArr=i.slice(0),this._editStackElementsMap=new Map;for(const n of this._editStackElementsArr){const s=Mu(n.resource);this._editStackElementsMap.set(s,n)}this._delegate=null}prepareUndoRedo(){if(this._delegate)return this._delegate.prepareUndoRedo(this)}matchesResource(e){const t=Mu(e);return this._editStackElementsMap.has(t)}setModel(e){const t=Mu(ve.isUri(e)?e:e.uri);this._editStackElementsMap.has(t)&&this._editStackElementsMap.get(t).setModel(e)}canAppend(e){if(!this._isOpen)return!1;const t=Mu(e.uri);return this._editStackElementsMap.has(t)?this._editStackElementsMap.get(t).canAppend(e):!1}append(e,t,i,n,s){const r=Mu(e.uri);this._editStackElementsMap.get(r).append(e,t,i,n,s)}close(){this._isOpen=!1}open(){}undo(){this._isOpen=!1;for(const e of this._editStackElementsArr)e.undo()}redo(){for(const e of this._editStackElementsArr)e.redo()}heapSize(e){const t=Mu(e);return this._editStackElementsMap.has(t)?this._editStackElementsMap.get(t).heapSize():0}split(){return this._editStackElementsArr}toString(){const e=[];for(const t of this._editStackElementsArr)e.push(`${Fo(t.resource)}: ${t}`);return`{${e.join(", ")}}`}}function SD(o){return o.getEOL()===` -`?0:1}function Ja(o){return o?o instanceof r9||o instanceof sX:!1}class l2{constructor(e,t){this._model=e,this._undoRedoService=t}pushStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);Ja(e)&&e.close()}popStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);Ja(e)&&e.open()}clear(){this._undoRedoService.removeElements(this._model.uri)}_getOrCreateEditStackElement(e,t){const i=this._undoRedoService.getLastElement(this._model.uri);if(Ja(i)&&i.canAppend(this._model))return i;const n=new r9(m("edit","Typing"),"undoredo.textBufferEdit",this._model,e);return this._undoRedoService.pushElement(n,t),n}pushEOL(e){const t=this._getOrCreateEditStackElement(null,void 0);this._model.setEOL(e),t.append(this._model,[],SD(this._model),this._model.getAlternativeVersionId(),null)}pushEditOperation(e,t,i,n){const s=this._getOrCreateEditStackElement(e,n),r=this._model.applyEdits(t,!0),a=l2._computeCursorState(i,r),l=r.map((c,d)=>({index:d,textChange:c.textChange}));return l.sort((c,d)=>c.textChange.oldPosition===d.textChange.oldPosition?c.index-d.index:c.textChange.oldPosition-d.textChange.oldPosition),s.append(this._model,l.map(c=>c.textChange),SD(this._model),this._model.getAlternativeVersionId(),a),a}static _computeCursorState(e,t){try{return e?e(t):null}catch(i){return Ze(i),null}}}class a9 extends z{constructor(){super(...arguments),this._isDisposed=!1}dispose(){super.dispose(),this._isDisposed=!0}assertNotDisposed(){if(this._isDisposed)throw new Error("TextModelPart is disposed!")}}function l9(o,e){let t=0,i=0;const n=o.length;for(;in)throw new nt("Illegal value for lineNumber");const s=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,r=!!(s&&s.offSide);let a=-2,l=-1,c=-2,d=-1;const h=L=>{if(a!==-1&&(a===-2||a>L-1)){a=-1,l=-1;for(let E=L-2;E>=0;E--){const N=this._computeIndentLevel(E);if(N>=0){a=E,l=N;break}}}if(c===-2){c=-1,d=-1;for(let E=L;E=0){c=E,d=N;break}}}};let u=-2,f=-1,g=-2,p=-1;const _=L=>{if(u===-2){u=-1,f=-1;for(let E=L-2;E>=0;E--){const N=this._computeIndentLevel(E);if(N>=0){u=E,f=N;break}}}if(g!==-1&&(g===-2||g=0){g=E,p=N;break}}}};let b=0,C=!0,w=0,v=!0,y=0,x=0;for(let L=0;C||v;L++){const E=e-L,N=e+L;L>1&&(E<1||E1&&(N>n||N>i)&&(v=!1),L>5e4&&(C=!1,v=!1);let H=-1;if(C&&E>=1){const W=this._computeIndentLevel(E-1);W>=0?(c=E-1,d=W,H=Math.ceil(W/this.textModel.getOptions().indentSize)):(h(E),H=this._getIndentLevelForWhitespaceLine(r,l,d))}let F=-1;if(v&&N<=n){const W=this._computeIndentLevel(N-1);W>=0?(u=N-1,f=W,F=Math.ceil(W/this.textModel.getOptions().indentSize)):(_(N),F=this._getIndentLevelForWhitespaceLine(r,f,p))}if(L===0){x=H;continue}if(L===1){if(N<=n&&F>=0&&x+1===F){C=!1,b=N,w=N,y=F;continue}if(E>=1&&H>=0&&H-1===x){v=!1,b=E,w=E,y=H;continue}if(b=e,w=e,y=x,y===0)return{startLineNumber:b,endLineNumber:w,indent:y}}C&&(H>=y?b=E:C=!1),v&&(F>=y?w=N:v=!1)}return{startLineNumber:b,endLineNumber:w,indent:y}}getLinesBracketGuides(e,t,i,n){const s=[];for(let h=e;h<=t;h++)s.push([]);const r=!0,a=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new I(e,1,t,this.textModel.getLineMaxColumn(t))).toArray();let l;if(i&&a.length>0){const h=(e<=i.lineNumber&&i.lineNumber<=t?a:this.textModel.bracketPairs.getBracketPairsInRange(I.fromPositions(i)).toArray()).filter(u=>I.strictContainsPosition(u.range,i));l=xC(h,u=>r)?.range}const c=this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType,d=new c9;for(const h of a){if(!h.closingBracketRange)continue;const u=l&&h.range.equalsRange(l);if(!u&&!n.includeInactive)continue;const f=d.getInlineClassName(h.nestingLevel,h.nestingLevelOfEqualBracketType,c)+(n.highlightActive&&u?" "+d.activeClassName:""),g=h.openingBracketRange.getStartPosition(),p=h.closingBracketRange.getStartPosition(),_=n.horizontalGuides===eh.Enabled||n.horizontalGuides===eh.EnabledForActive&&u;if(h.range.startLineNumber===h.range.endLineNumber){_&&s[h.range.startLineNumber-e].push(new Kd(-1,h.openingBracketRange.getEndPosition().column,f,new tp(!1,p.column),-1,-1));continue}const b=this.getVisibleColumnFromPosition(p),C=this.getVisibleColumnFromPosition(h.openingBracketRange.getStartPosition()),w=Math.min(C,b,h.minVisibleColumnIndentation+1);let v=!1;zn(this.textModel.getLineContent(h.closingBracketRange.startLineNumber))=e&&C>w&&s[g.lineNumber-e].push(new Kd(w,-1,f,new tp(!1,g.column),-1,-1)),p.lineNumber<=t&&b>w&&s[p.lineNumber-e].push(new Kd(w,-1,f,new tp(!v,p.column),-1,-1)))}for(const h of s)h.sort((u,f)=>u.visibleColumn-f.visibleColumn);return s}getVisibleColumnFromPosition(e){return _i.visibleColumnFromColumn(this.textModel.getLineContent(e.lineNumber),e.column,this.textModel.getOptions().tabSize)+1}getLinesIndentGuides(e,t){this.assertNotDisposed();const i=this.textModel.getLineCount();if(e<1||e>i)throw new Error("Illegal value for startLineNumber");if(t<1||t>i)throw new Error("Illegal value for endLineNumber");const n=this.textModel.getOptions(),s=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,r=!!(s&&s.offSide),a=new Array(t-e+1);let l=-2,c=-1,d=-2,h=-1;for(let u=e;u<=t;u++){const f=u-e,g=this._computeIndentLevel(u-1);if(g>=0){l=u-1,c=g,a[f]=Math.ceil(g/n.indentSize);continue}if(l===-2){l=-1,c=-1;for(let p=u-2;p>=0;p--){const _=this._computeIndentLevel(p);if(_>=0){l=p,c=_;break}}}if(d!==-1&&(d===-2||d=0){d=p,h=_;break}}}a[f]=this._getIndentLevelForWhitespaceLine(r,c,h)}return a}_getIndentLevelForWhitespaceLine(e,t,i){const n=this.textModel.getOptions();return t===-1||i===-1?0:t0&&a>0||l>0&&c>0)return;const d=Math.abs(a-c),h=Math.abs(r-l);if(d===0){n.spacesDiff=h,h>0&&0<=l-1&&l-10?n++:v>1&&s++,aX(r,a,_,w,h),h.looksLikeAlignment&&!(t&&e===h.spacesDiff)))continue;const x=h.spacesDiff;x<=c&&d[x]++,r=_,a=w}let u=t;n!==s&&(u=n{const _=d[p];_>g&&(g=_,f=p)}),f===4&&d[4]>0&&d[2]>0&&d[2]>=d[4]/2&&(f=2)}return{insertSpaces:u,tabSize:f}}function Fn(o){return(o.metadata&1)>>>0}function It(o,e){o.metadata=o.metadata&254|e<<0}function Zi(o){return(o.metadata&2)>>>1===1}function Lt(o,e){o.metadata=o.metadata&253|(e?1:0)<<1}function d9(o){return(o.metadata&4)>>>2===1}function DP(o,e){o.metadata=o.metadata&251|(e?1:0)<<2}function h9(o){return(o.metadata&64)>>>6===1}function IP(o,e){o.metadata=o.metadata&191|(e?1:0)<<6}function lX(o){return(o.metadata&24)>>>3}function EP(o,e){o.metadata=o.metadata&231|e<<3}function cX(o){return(o.metadata&32)>>>5===1}function NP(o,e){o.metadata=o.metadata&223|(e?1:0)<<5}class u9{constructor(e,t,i){this.metadata=0,this.parent=this,this.left=this,this.right=this,It(this,1),this.start=t,this.end=i,this.delta=0,this.maxEnd=i,this.id=e,this.ownerId=0,this.options=null,DP(this,!1),IP(this,!1),EP(this,1),NP(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=null,Lt(this,!1)}reset(e,t,i,n){this.start=t,this.end=i,this.maxEnd=i,this.cachedVersionId=e,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=n}setOptions(e){this.options=e;const t=this.options.className;DP(this,t==="squiggly-error"||t==="squiggly-warning"||t==="squiggly-info"),IP(this,this.options.glyphMarginClassName!==null),EP(this,this.options.stickiness),NP(this,this.options.collapseOnReplaceEdit)}setCachedOffsets(e,t,i){this.cachedVersionId!==i&&(this.range=null),this.cachedVersionId=i,this.cachedAbsoluteStart=e,this.cachedAbsoluteEnd=t}detach(){this.parent=null,this.left=null,this.right=null}}const Be=new u9(null,0,0);Be.parent=Be;Be.left=Be;Be.right=Be;It(Be,0);class BS{constructor(){this.root=Be,this.requestNormalizeDelta=!1}intervalSearch(e,t,i,n,s,r){return this.root===Be?[]:_X(this,e,t,i,n,s,r)}search(e,t,i,n){return this.root===Be?[]:pX(this,e,t,i,n)}collectNodesFromOwner(e){return gX(this,e)}collectNodesPostOrder(){return mX(this)}insert(e){TP(this,e),this._normalizeDeltaIfNecessary()}delete(e){MP(this,e),this._normalizeDeltaIfNecessary()}resolveNode(e,t){const i=e;let n=0;for(;e!==this.root;)e===e.parent.right&&(n+=e.parent.delta),e=e.parent;const s=i.start+n,r=i.end+n;i.setCachedOffsets(s,r,t)}acceptReplace(e,t,i,n){const s=uX(this,e,e+t);for(let r=0,a=s.length;rt||i===1?!1:i===2?!0:e}function hX(o,e,t,i,n){const s=lX(o),r=s===0||s===2,a=s===1||s===2,l=t-e,c=i,d=Math.min(l,c),h=o.start;let u=!1;const f=o.end;let g=!1;e<=h&&f<=t&&cX(o)&&(o.start=e,u=!0,o.end=e,g=!0);{const _=n?1:l>0?2:0;!u&&Ru(h,r,e,_)&&(u=!0),!g&&Ru(f,a,e,_)&&(g=!0)}if(d>0&&!n){const _=l>c?2:0;!u&&Ru(h,r,e+d,_)&&(u=!0),!g&&Ru(f,a,e+d,_)&&(g=!0)}{const _=n?1:0;!u&&Ru(h,r,t,_)&&(o.start=e+c,u=!0),!g&&Ru(f,a,t,_)&&(o.end=e+c,g=!0)}const p=c-l;u||(o.start=Math.max(0,h+p)),g||(o.end=Math.max(0,f+p)),o.start>o.end&&(o.end=o.start)}function uX(o,e,t){let i=o.root,n=0,s=0,r=0,a=0;const l=[];let c=0;for(;i!==Be;){if(Zi(i)){Lt(i.left,!1),Lt(i.right,!1),i===i.parent.right&&(n-=i.parent.delta),i=i.parent;continue}if(!Zi(i.left)){if(s=n+i.maxEnd,st){Lt(i,!0);continue}if(a=n+i.end,a>=e&&(i.setCachedOffsets(r,a,0),l[c++]=i),Lt(i,!0),i.right!==Be&&!Zi(i.right)){n+=i.delta,i=i.right;continue}}return Lt(o.root,!1),l}function fX(o,e,t,i){let n=o.root,s=0,r=0,a=0;const l=i-(t-e);for(;n!==Be;){if(Zi(n)){Lt(n.left,!1),Lt(n.right,!1),n===n.parent.right&&(s-=n.parent.delta),Fc(n),n=n.parent;continue}if(!Zi(n.left)){if(r=s+n.maxEnd,rt){n.start+=l,n.end+=l,n.delta+=l,(n.delta<-1073741824||n.delta>1073741824)&&(o.requestNormalizeDelta=!0),Lt(n,!0);continue}if(Lt(n,!0),n.right!==Be&&!Zi(n.right)){s+=n.delta,n=n.right;continue}}Lt(o.root,!1)}function gX(o,e){let t=o.root;const i=[];let n=0;for(;t!==Be;){if(Zi(t)){Lt(t.left,!1),Lt(t.right,!1),t=t.parent;continue}if(t.left!==Be&&!Zi(t.left)){t=t.left;continue}if(t.ownerId===e&&(i[n++]=t),Lt(t,!0),t.right!==Be&&!Zi(t.right)){t=t.right;continue}}return Lt(o.root,!1),i}function mX(o){let e=o.root;const t=[];let i=0;for(;e!==Be;){if(Zi(e)){Lt(e.left,!1),Lt(e.right,!1),e=e.parent;continue}if(e.left!==Be&&!Zi(e.left)){e=e.left;continue}if(e.right!==Be&&!Zi(e.right)){e=e.right;continue}t[i++]=e,Lt(e,!0)}return Lt(o.root,!1),t}function pX(o,e,t,i,n){let s=o.root,r=0,a=0,l=0;const c=[];let d=0;for(;s!==Be;){if(Zi(s)){Lt(s.left,!1),Lt(s.right,!1),s===s.parent.right&&(r-=s.parent.delta),s=s.parent;continue}if(s.left!==Be&&!Zi(s.left)){s=s.left;continue}a=r+s.start,l=r+s.end,s.setCachedOffsets(a,l,i);let h=!0;if(e&&s.ownerId&&s.ownerId!==e&&(h=!1),t&&d9(s)&&(h=!1),n&&!h9(s)&&(h=!1),h&&(c[d++]=s),Lt(s,!0),s.right!==Be&&!Zi(s.right)){r+=s.delta,s=s.right;continue}}return Lt(o.root,!1),c}function _X(o,e,t,i,n,s,r){let a=o.root,l=0,c=0,d=0,h=0;const u=[];let f=0;for(;a!==Be;){if(Zi(a)){Lt(a.left,!1),Lt(a.right,!1),a===a.parent.right&&(l-=a.parent.delta),a=a.parent;continue}if(!Zi(a.left)){if(c=l+a.maxEnd,ct){Lt(a,!0);continue}if(h=l+a.end,h>=e){a.setCachedOffsets(d,h,s);let g=!0;i&&a.ownerId&&a.ownerId!==i&&(g=!1),n&&d9(a)&&(g=!1),r&&!h9(a)&&(g=!1),g&&(u[f++]=a)}if(Lt(a,!0),a.right!==Be&&!Zi(a.right)){l+=a.delta,a=a.right;continue}}return Lt(o.root,!1),u}function TP(o,e){if(o.root===Be)return e.parent=Be,e.left=Be,e.right=Be,It(e,0),o.root=e,o.root;bX(o,e),Kl(e.parent);let t=e;for(;t!==o.root&&Fn(t.parent)===1;)if(t.parent===t.parent.parent.left){const i=t.parent.parent.right;Fn(i)===1?(It(t.parent,0),It(i,0),It(t.parent.parent,1),t=t.parent.parent):(t===t.parent.right&&(t=t.parent,ip(o,t)),It(t.parent,0),It(t.parent.parent,1),np(o,t.parent.parent))}else{const i=t.parent.parent.left;Fn(i)===1?(It(t.parent,0),It(i,0),It(t.parent.parent,1),t=t.parent.parent):(t===t.parent.left&&(t=t.parent,np(o,t)),It(t.parent,0),It(t.parent.parent,1),ip(o,t.parent.parent))}return It(o.root,0),e}function bX(o,e){let t=0,i=o.root;const n=e.start,s=e.end;for(;;)if(vX(n,s,i.start+t,i.end+t)<0)if(i.left===Be){e.start-=t,e.end-=t,e.maxEnd-=t,i.left=e;break}else i=i.left;else if(i.right===Be){e.start-=t+i.delta,e.end-=t+i.delta,e.maxEnd-=t+i.delta,i.right=e;break}else t+=i.delta,i=i.right;e.parent=i,e.left=Be,e.right=Be,It(e,1)}function MP(o,e){let t,i;if(e.left===Be?(t=e.right,i=e,t.delta+=e.delta,(t.delta<-1073741824||t.delta>1073741824)&&(o.requestNormalizeDelta=!0),t.start+=e.delta,t.end+=e.delta):e.right===Be?(t=e.left,i=e):(i=CX(e.right),t=i.right,t.start+=i.delta,t.end+=i.delta,t.delta+=i.delta,(t.delta<-1073741824||t.delta>1073741824)&&(o.requestNormalizeDelta=!0),i.start+=e.delta,i.end+=e.delta,i.delta=e.delta,(i.delta<-1073741824||i.delta>1073741824)&&(o.requestNormalizeDelta=!0)),i===o.root){o.root=t,It(t,0),e.detach(),WS(),Fc(t),o.root.parent=Be;return}const n=Fn(i)===1;if(i===i.parent.left?i.parent.left=t:i.parent.right=t,i===e?t.parent=i.parent:(i.parent===e?t.parent=i:t.parent=i.parent,i.left=e.left,i.right=e.right,i.parent=e.parent,It(i,Fn(e)),e===o.root?o.root=i:e===e.parent.left?e.parent.left=i:e.parent.right=i,i.left!==Be&&(i.left.parent=i),i.right!==Be&&(i.right.parent=i)),e.detach(),n){Kl(t.parent),i!==e&&(Kl(i),Kl(i.parent)),WS();return}Kl(t),Kl(t.parent),i!==e&&(Kl(i),Kl(i.parent));let s;for(;t!==o.root&&Fn(t)===0;)t===t.parent.left?(s=t.parent.right,Fn(s)===1&&(It(s,0),It(t.parent,1),ip(o,t.parent),s=t.parent.right),Fn(s.left)===0&&Fn(s.right)===0?(It(s,1),t=t.parent):(Fn(s.right)===0&&(It(s.left,0),It(s,1),np(o,s),s=t.parent.right),It(s,Fn(t.parent)),It(t.parent,0),It(s.right,0),ip(o,t.parent),t=o.root)):(s=t.parent.left,Fn(s)===1&&(It(s,0),It(t.parent,1),np(o,t.parent),s=t.parent.left),Fn(s.left)===0&&Fn(s.right)===0?(It(s,1),t=t.parent):(Fn(s.left)===0&&(It(s.right,0),It(s,1),ip(o,s),s=t.parent.left),It(s,Fn(t.parent)),It(t.parent,0),It(s.left,0),np(o,t.parent),t=o.root));It(t,0),WS()}function CX(o){for(;o.left!==Be;)o=o.left;return o}function WS(){Be.parent=Be,Be.delta=0,Be.start=0,Be.end=0}function ip(o,e){const t=e.right;t.delta+=e.delta,(t.delta<-1073741824||t.delta>1073741824)&&(o.requestNormalizeDelta=!0),t.start+=e.delta,t.end+=e.delta,e.right=t.left,t.left!==Be&&(t.left.parent=e),t.parent=e.parent,e.parent===Be?o.root=t:e===e.parent.left?e.parent.left=t:e.parent.right=t,t.left=e,e.parent=t,Fc(e),Fc(t)}function np(o,e){const t=e.left;e.delta-=t.delta,(e.delta<-1073741824||e.delta>1073741824)&&(o.requestNormalizeDelta=!0),e.start-=t.delta,e.end-=t.delta,e.left=t.right,t.right!==Be&&(t.right.parent=e),t.parent=e.parent,e.parent===Be?o.root=t:e===e.parent.right?e.parent.right=t:e.parent.left=t,t.right=e,e.parent=t,Fc(e),Fc(t)}function f9(o){let e=o.end;if(o.left!==Be){const t=o.left.maxEnd;t>e&&(e=t)}if(o.right!==Be){const t=o.right.maxEnd+o.delta;t>e&&(e=t)}return e}function Fc(o){o.maxEnd=f9(o)}function Kl(o){for(;o!==Be;){const e=f9(o);if(o.maxEnd===e)return;o.maxEnd=e,o=o.parent}}function vX(o,e,t,i){return o===t?e-i:o-t}class LD{constructor(e,t){this.piece=e,this.color=t,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==Le)return c2(this.right);let e=this;for(;e.parent!==Le&&e.parent.left!==e;)e=e.parent;return e.parent===Le?Le:e.parent}prev(){if(this.left!==Le)return g9(this.left);let e=this;for(;e.parent!==Le&&e.parent.right!==e;)e=e.parent;return e.parent===Le?Le:e.parent}detach(){this.parent=null,this.left=null,this.right=null}}const Le=new LD(null,0);Le.parent=Le;Le.left=Le;Le.right=Le;Le.color=0;function c2(o){for(;o.left!==Le;)o=o.left;return o}function g9(o){for(;o.right!==Le;)o=o.right;return o}function d2(o){return o===Le?0:o.size_left+o.piece.length+d2(o.right)}function h2(o){return o===Le?0:o.lf_left+o.piece.lineFeedCnt+h2(o.right)}function HS(){Le.parent=Le}function sp(o,e){const t=e.right;t.size_left+=e.size_left+(e.piece?e.piece.length:0),t.lf_left+=e.lf_left+(e.piece?e.piece.lineFeedCnt:0),e.right=t.left,t.left!==Le&&(t.left.parent=e),t.parent=e.parent,e.parent===Le?o.root=t:e.parent.left===e?e.parent.left=t:e.parent.right=t,t.left=e,e.parent=t}function op(o,e){const t=e.left;e.left=t.right,t.right!==Le&&(t.right.parent=e),t.parent=e.parent,e.size_left-=t.size_left+(t.piece?t.piece.length:0),e.lf_left-=t.lf_left+(t.piece?t.piece.lineFeedCnt:0),e.parent===Le?o.root=t:e===e.parent.right?e.parent.right=t:e.parent.left=t,t.right=e,e.parent=t}function qb(o,e){let t,i;if(e.left===Le?(i=e,t=i.right):e.right===Le?(i=e,t=i.left):(i=c2(e.right),t=i.right),i===o.root){o.root=t,t.color=0,e.detach(),HS(),o.root.parent=Le;return}const n=i.color===1;if(i===i.parent.left?i.parent.left=t:i.parent.right=t,i===e?(t.parent=i.parent,Pm(o,t)):(i.parent===e?t.parent=i:t.parent=i.parent,Pm(o,t),i.left=e.left,i.right=e.right,i.parent=e.parent,i.color=e.color,e===o.root?o.root=i:e===e.parent.left?e.parent.left=i:e.parent.right=i,i.left!==Le&&(i.left.parent=i),i.right!==Le&&(i.right.parent=i),i.size_left=e.size_left,i.lf_left=e.lf_left,Pm(o,i)),e.detach(),t.parent.left===t){const r=d2(t),a=h2(t);if(r!==t.parent.size_left||a!==t.parent.lf_left){const l=r-t.parent.size_left,c=a-t.parent.lf_left;t.parent.size_left=r,t.parent.lf_left=a,Ha(o,t.parent,l,c)}}if(Pm(o,t.parent),n){HS();return}let s;for(;t!==o.root&&t.color===0;)t===t.parent.left?(s=t.parent.right,s.color===1&&(s.color=0,t.parent.color=1,sp(o,t.parent),s=t.parent.right),s.left.color===0&&s.right.color===0?(s.color=1,t=t.parent):(s.right.color===0&&(s.left.color=0,s.color=1,op(o,s),s=t.parent.right),s.color=t.parent.color,t.parent.color=0,s.right.color=0,sp(o,t.parent),t=o.root)):(s=t.parent.left,s.color===1&&(s.color=0,t.parent.color=1,op(o,t.parent),s=t.parent.left),s.left.color===0&&s.right.color===0?(s.color=1,t=t.parent):(s.left.color===0&&(s.right.color=0,s.color=1,sp(o,s),s=t.parent.left),s.color=t.parent.color,t.parent.color=0,s.left.color=0,op(o,t.parent),t=o.root));t.color=0,HS()}function RP(o,e){for(Pm(o,e);e!==o.root&&e.parent.color===1;)if(e.parent===e.parent.parent.left){const t=e.parent.parent.right;t.color===1?(e.parent.color=0,t.color=0,e.parent.parent.color=1,e=e.parent.parent):(e===e.parent.right&&(e=e.parent,sp(o,e)),e.parent.color=0,e.parent.parent.color=1,op(o,e.parent.parent))}else{const t=e.parent.parent.left;t.color===1?(e.parent.color=0,t.color=0,e.parent.parent.color=1,e=e.parent.parent):(e===e.parent.left&&(e=e.parent,op(o,e)),e.parent.color=0,e.parent.parent.color=1,sp(o,e.parent.parent))}o.root.color=0}function Ha(o,e,t,i){for(;e!==o.root&&e!==Le;)e.parent.left===e&&(e.parent.size_left+=t,e.parent.lf_left+=i),e=e.parent}function Pm(o,e){let t=0,i=0;if(e!==o.root){for(;e!==o.root&&e===e.parent.right;)e=e.parent;if(e!==o.root)for(e=e.parent,t=d2(e.left)-e.size_left,i=h2(e.left)-e.lf_left,e.size_left+=t,e.lf_left+=i;e!==o.root&&(t!==0||i!==0);)e.parent.left===e&&(e.parent.size_left+=t,e.parent.lf_left+=i),e=e.parent}}const Ra=65535;function m9(o){let e;return o[o.length-1]<65536?e=new Uint16Array(o.length):e=new Uint32Array(o.length),e.set(o,0),e}class wX{constructor(e,t,i,n,s){this.lineStarts=e,this.cr=t,this.lf=i,this.crlf=n,this.isBasicASCII=s}}function Va(o,e=!0){const t=[0];let i=1;for(let n=0,s=o.length;n126)&&(r=!1)}const a=new wX(m9(o),i,n,s,r);return o.length=0,a}class Xn{constructor(e,t,i,n,s){this.bufferIndex=e,this.start=t,this.end=i,this.lineFeedCnt=n,this.length=s}}class Ld{constructor(e,t){this.buffer=e,this.lineStarts=t}}class SX{constructor(e,t){this._pieces=[],this._tree=e,this._BOM=t,this._index=0,e.root!==Le&&e.iterate(e.root,i=>(i!==Le&&this._pieces.push(i.piece),!0))}read(){return this._pieces.length===0?this._index===0?(this._index++,this._BOM):null:this._index>this._pieces.length-1?null:this._index===0?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class LX{constructor(e){this._limit=e,this._cache=[]}get(e){for(let t=this._cache.length-1;t>=0;t--){const i=this._cache[t];if(i.nodeStartOffset<=e&&i.nodeStartOffset+i.node.piece.length>=e)return i}return null}get2(e){for(let t=this._cache.length-1;t>=0;t--){const i=this._cache[t];if(i.nodeStartLineNumber&&i.nodeStartLineNumber=e)return i}return null}set(e){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(e)}validate(e){let t=!1;const i=this._cache;for(let n=0;n=e){i[n]=null,t=!0;continue}}if(t){const n=[];for(const s of i)s!==null&&n.push(s);this._cache=n}}}class xX{constructor(e,t,i){this.create(e,t,i)}create(e,t,i){this._buffers=[new Ld("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=Le,this._lineCnt=1,this._length=0,this._EOL=t,this._EOLLength=t.length,this._EOLNormalized=i;let n=null;for(let s=0,r=e.length;s0){e[s].lineStarts||(e[s].lineStarts=Va(e[s].buffer));const a=new Xn(s+1,{line:0,column:0},{line:e[s].lineStarts.length-1,column:e[s].buffer.length-e[s].lineStarts[e[s].lineStarts.length-1]},e[s].lineStarts.length-1,e[s].buffer.length);this._buffers.push(e[s]),n=this.rbInsertRight(n,a)}this._searchCache=new LX(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(e){const t=Ra,i=t-Math.floor(t/3),n=i*2;let s="",r=0;const a=[];if(this.iterate(this.root,l=>{const c=this.getNodeContent(l),d=c.length;if(r<=i||r+d0){const l=s.replace(/\r\n|\r|\n/g,e);a.push(new Ld(l,Va(l)))}this.create(a,e,!0)}getEOL(){return this._EOL}setEOL(e){this._EOL=e,this._EOLLength=this._EOL.length,this.normalizeEOL(e)}createSnapshot(e){return new SX(this,e)}getOffsetAt(e,t){let i=0,n=this.root;for(;n!==Le;)if(n.left!==Le&&n.lf_left+1>=e)n=n.left;else if(n.lf_left+n.piece.lineFeedCnt+1>=e){i+=n.size_left;const s=this.getAccumulatedValue(n,e-n.lf_left-2);return i+=s+t-1}else e-=n.lf_left+n.piece.lineFeedCnt,i+=n.size_left+n.piece.length,n=n.right;return i}getPositionAt(e){e=Math.floor(e),e=Math.max(0,e);let t=this.root,i=0;const n=e;for(;t!==Le;)if(t.size_left!==0&&t.size_left>=e)t=t.left;else if(t.size_left+t.piece.length>=e){const s=this.getIndexOf(t,e-t.size_left);if(i+=t.lf_left+s.index,s.index===0){const r=this.getOffsetAt(i+1,1),a=n-r;return new P(i+1,a+1)}return new P(i+1,s.remainder+1)}else if(e-=t.size_left+t.piece.length,i+=t.lf_left+t.piece.lineFeedCnt,t.right===Le){const s=this.getOffsetAt(i+1,1),r=n-e-s;return new P(i+1,r+1)}else t=t.right;return new P(1,1)}getValueInRange(e,t){if(e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn)return"";const i=this.nodeAt2(e.startLineNumber,e.startColumn),n=this.nodeAt2(e.endLineNumber,e.endColumn),s=this.getValueInRange2(i,n);return t?t!==this._EOL||!this._EOLNormalized?s.replace(/\r\n|\r|\n/g,t):t===this.getEOL()&&this._EOLNormalized?s:s.replace(/\r\n|\r|\n/g,t):s}getValueInRange2(e,t){if(e.node===t.node){const a=e.node,l=this._buffers[a.piece.bufferIndex].buffer,c=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start);return l.substring(c+e.remainder,c+t.remainder)}let i=e.node;const n=this._buffers[i.piece.bufferIndex].buffer,s=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);let r=n.substring(s+e.remainder,s+i.piece.length);for(i=i.next();i!==Le;){const a=this._buffers[i.piece.bufferIndex].buffer,l=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);if(i===t.node){r+=a.substring(l,l+t.remainder);break}else r+=a.substr(l,i.piece.length);i=i.next()}return r}getLinesContent(){const e=[];let t=0,i="",n=!1;return this.iterate(this.root,s=>{if(s===Le)return!0;const r=s.piece;let a=r.length;if(a===0)return!0;const l=this._buffers[r.bufferIndex].buffer,c=this._buffers[r.bufferIndex].lineStarts,d=r.start.line,h=r.end.line;let u=c[d]+r.start.column;if(n&&(l.charCodeAt(u)===10&&(u++,a--),e[t++]=i,i="",n=!1,a===0))return!0;if(d===h)return!this._EOLNormalized&&l.charCodeAt(u+a-1)===13?(n=!0,i+=l.substr(u,a-1)):i+=l.substr(u,a),!0;i+=this._EOLNormalized?l.substring(u,Math.max(u,c[d+1]-this._EOLLength)):l.substring(u,c[d+1]).replace(/(\r\n|\r|\n)$/,""),e[t++]=i;for(let f=d+1;fv+g,t.reset(0)):(C=u.buffer,w=v=>v,t.reset(g));do if(_=t.next(C),_){if(w(_.index)>=p)return d;this.positionInBuffer(e,w(_.index)-f,b);const v=this.getLineFeedCnt(e.piece.bufferIndex,s,b),y=b.line===s.line?b.column-s.column+n:b.column+1,x=y+_[0].length;if(h[d++]=bd(new I(i+v,y,i+v,x),_,l),w(_.index)+_[0].length>=p||d>=c)return d}while(_);return d}findMatchesLineByLine(e,t,i,n){const s=[];let r=0;const a=new ef(t.wordSeparators,t.regex);let l=this.nodeAt2(e.startLineNumber,e.startColumn);if(l===null)return[];const c=this.nodeAt2(e.endLineNumber,e.endColumn);if(c===null)return[];let d=this.positionInBuffer(l.node,l.remainder);const h=this.positionInBuffer(c.node,c.remainder);if(l.node===c.node)return this.findMatchesInNode(l.node,a,e.startLineNumber,e.startColumn,d,h,t,i,n,r,s),s;let u=e.startLineNumber,f=l.node;for(;f!==c.node;){const p=this.getLineFeedCnt(f.piece.bufferIndex,d,f.piece.end);if(p>=1){const b=this._buffers[f.piece.bufferIndex].lineStarts,C=this.offsetInBuffer(f.piece.bufferIndex,f.piece.start),w=b[d.line+p],v=u===e.startLineNumber?e.startColumn:1;if(r=this.findMatchesInNode(f,a,u,v,d,this.positionInBuffer(f,w-C),t,i,n,r,s),r>=n)return s;u+=p}const _=u===e.startLineNumber?e.startColumn-1:0;if(u===e.endLineNumber){const b=this.getLineContent(u).substring(_,e.endColumn-1);return r=this._findMatchesInLine(t,a,b,e.endLineNumber,_,r,s,i,n),s}if(r=this._findMatchesInLine(t,a,this.getLineContent(u).substr(_),u,_,r,s,i,n),r>=n)return s;u++,l=this.nodeAt2(u,1),f=l.node,d=this.positionInBuffer(l.node,l.remainder)}if(u===e.endLineNumber){const p=u===e.startLineNumber?e.startColumn-1:0,_=this.getLineContent(u).substring(p,e.endColumn-1);return r=this._findMatchesInLine(t,a,_,e.endLineNumber,p,r,s,i,n),s}const g=u===e.startLineNumber?e.startColumn:1;return r=this.findMatchesInNode(c.node,a,u,g,d,h,t,i,n,r,s),s}_findMatchesInLine(e,t,i,n,s,r,a,l,c){const d=e.wordSeparators;if(!l&&e.simpleSearch){const u=e.simpleSearch,f=u.length,g=i.length;let p=-f;for(;(p=i.indexOf(u,p+f))!==-1;)if((!d||hT(d,i,g,p,f))&&(a[r++]=new Qp(new I(n,p+1+s,n,p+1+f+s),null),r>=c))return r;return r}let h;t.reset(0);do if(h=t.next(i),h&&(a[r++]=bd(new I(n,h.index+1+s,n,h.index+1+h[0].length+s),h,l),r>=c))return r;while(h);return r}insert(e,t,i=!1){if(this._EOLNormalized=this._EOLNormalized&&i,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==Le){const{node:n,remainder:s,nodeStartOffset:r}=this.nodeAt(e),a=n.piece,l=a.bufferIndex,c=this.positionInBuffer(n,s);if(n.piece.bufferIndex===0&&a.end.line===this._lastChangeBufferPos.line&&a.end.column===this._lastChangeBufferPos.column&&r+a.length===e&&t.lengthe){const d=[];let h=new Xn(a.bufferIndex,c,a.end,this.getLineFeedCnt(a.bufferIndex,c,a.end),this.offsetInBuffer(l,a.end)-this.offsetInBuffer(l,c));if(this.shouldCheckCRLF()&&this.endWithCR(t)&&this.nodeCharCodeAt(n,s)===10){const p={line:h.start.line+1,column:0};h=new Xn(h.bufferIndex,p,h.end,this.getLineFeedCnt(h.bufferIndex,p,h.end),h.length-1),t+=` -`}if(this.shouldCheckCRLF()&&this.startWithLF(t))if(this.nodeCharCodeAt(n,s-1)===13){const p=this.positionInBuffer(n,s-1);this.deleteNodeTail(n,p),t="\r"+t,n.piece.length===0&&d.push(n)}else this.deleteNodeTail(n,c);else this.deleteNodeTail(n,c);const u=this.createNewPieces(t);h.length>0&&this.rbInsertRight(n,h);let f=n;for(let g=0;g=0;r--)s=this.rbInsertLeft(s,n[r]);this.validateCRLFWithPrevNode(s),this.deleteNodes(i)}insertContentToNodeRight(e,t){this.adjustCarriageReturnFromNext(e,t)&&(e+=` -`);const i=this.createNewPieces(e),n=this.rbInsertRight(t,i[0]);let s=n;for(let r=1;r=u)c=h+1;else break;return i?(i.line=h,i.column=l-f,null):{line:h,column:l-f}}getLineFeedCnt(e,t,i){if(i.column===0)return i.line-t.line;const n=this._buffers[e].lineStarts;if(i.line===n.length-1)return i.line-t.line;const s=n[i.line+1],r=n[i.line]+i.column;if(s>r+1)return i.line-t.line;const a=r-1;return this._buffers[e].buffer.charCodeAt(a)===13?i.line-t.line+1:i.line-t.line}offsetInBuffer(e,t){return this._buffers[e].lineStarts[t.line]+t.column}deleteNodes(e){for(let t=0;tRa){const d=[];for(;e.length>Ra;){const u=e.charCodeAt(Ra-1);let f;u===13||u>=55296&&u<=56319?(f=e.substring(0,Ra-1),e=e.substring(Ra-1)):(f=e.substring(0,Ra),e=e.substring(Ra));const g=Va(f);d.push(new Xn(this._buffers.length,{line:0,column:0},{line:g.length-1,column:f.length-g[g.length-1]},g.length-1,f.length)),this._buffers.push(new Ld(f,g))}const h=Va(e);return d.push(new Xn(this._buffers.length,{line:0,column:0},{line:h.length-1,column:e.length-h[h.length-1]},h.length-1,e.length)),this._buffers.push(new Ld(e,h)),d}let t=this._buffers[0].buffer.length;const i=Va(e,!1);let n=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===t&&t!==0&&this.startWithLF(e)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},n=this._lastChangeBufferPos;for(let d=0;d=e-1)i=i.left;else if(i.lf_left+i.piece.lineFeedCnt>e-1){const l=this.getAccumulatedValue(i,e-i.lf_left-2),c=this.getAccumulatedValue(i,e-i.lf_left-1),d=this._buffers[i.piece.bufferIndex].buffer,h=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return r+=i.size_left,this._searchCache.set({node:i,nodeStartOffset:r,nodeStartLineNumber:a-(e-1-i.lf_left)}),d.substring(h+l,h+c-t)}else if(i.lf_left+i.piece.lineFeedCnt===e-1){const l=this.getAccumulatedValue(i,e-i.lf_left-2),c=this._buffers[i.piece.bufferIndex].buffer,d=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);n=c.substring(d+l,d+i.piece.length);break}else e-=i.lf_left+i.piece.lineFeedCnt,r+=i.size_left+i.piece.length,i=i.right}for(i=i.next();i!==Le;){const r=this._buffers[i.piece.bufferIndex].buffer;if(i.piece.lineFeedCnt>0){const a=this.getAccumulatedValue(i,0),l=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);return n+=r.substring(l,l+a-t),n}else{const a=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);n+=r.substr(a,i.piece.length)}i=i.next()}return n}computeBufferMetadata(){let e=this.root,t=1,i=0;for(;e!==Le;)t+=e.lf_left+e.piece.lineFeedCnt,i+=e.size_left+e.piece.length,e=e.right;this._lineCnt=t,this._length=i,this._searchCache.validate(this._length)}getIndexOf(e,t){const i=e.piece,n=this.positionInBuffer(e,t),s=n.line-i.start.line;if(this.offsetInBuffer(i.bufferIndex,i.end)-this.offsetInBuffer(i.bufferIndex,i.start)===t){const r=this.getLineFeedCnt(e.piece.bufferIndex,i.start,n);if(r!==s)return{index:r,remainder:0}}return{index:s,remainder:n.column}}getAccumulatedValue(e,t){if(t<0)return 0;const i=e.piece,n=this._buffers[i.bufferIndex].lineStarts,s=i.start.line+t+1;return s>i.end.line?n[i.end.line]+i.end.column-n[i.start.line]-i.start.column:n[s]-n[i.start.line]-i.start.column}deleteNodeTail(e,t){const i=e.piece,n=i.lineFeedCnt,s=this.offsetInBuffer(i.bufferIndex,i.end),r=t,a=this.offsetInBuffer(i.bufferIndex,r),l=this.getLineFeedCnt(i.bufferIndex,i.start,r),c=l-n,d=a-s,h=i.length+d;e.piece=new Xn(i.bufferIndex,i.start,r,l,h),Ha(this,e,d,c)}deleteNodeHead(e,t){const i=e.piece,n=i.lineFeedCnt,s=this.offsetInBuffer(i.bufferIndex,i.start),r=t,a=this.getLineFeedCnt(i.bufferIndex,r,i.end),l=this.offsetInBuffer(i.bufferIndex,r),c=a-n,d=s-l,h=i.length+d;e.piece=new Xn(i.bufferIndex,r,i.end,a,h),Ha(this,e,d,c)}shrinkNode(e,t,i){const n=e.piece,s=n.start,r=n.end,a=n.length,l=n.lineFeedCnt,c=t,d=this.getLineFeedCnt(n.bufferIndex,n.start,c),h=this.offsetInBuffer(n.bufferIndex,t)-this.offsetInBuffer(n.bufferIndex,s);e.piece=new Xn(n.bufferIndex,n.start,c,d,h),Ha(this,e,h-a,d-l);const u=new Xn(n.bufferIndex,i,r,this.getLineFeedCnt(n.bufferIndex,i,r),this.offsetInBuffer(n.bufferIndex,r)-this.offsetInBuffer(n.bufferIndex,i)),f=this.rbInsertRight(e,u);this.validateCRLFWithPrevNode(f)}appendToNode(e,t){this.adjustCarriageReturnFromNext(t,e)&&(t+=` -`);const i=this.shouldCheckCRLF()&&this.startWithLF(t)&&this.endWithCR(e),n=this._buffers[0].buffer.length;this._buffers[0].buffer+=t;const s=Va(t,!1);for(let f=0;fe)t=t.left;else if(t.size_left+t.piece.length>=e){n+=t.size_left;const s={node:t,remainder:e-t.size_left,nodeStartOffset:n};return this._searchCache.set(s),s}else e-=t.size_left+t.piece.length,n+=t.size_left+t.piece.length,t=t.right;return null}nodeAt2(e,t){let i=this.root,n=0;for(;i!==Le;)if(i.left!==Le&&i.lf_left>=e-1)i=i.left;else if(i.lf_left+i.piece.lineFeedCnt>e-1){const s=this.getAccumulatedValue(i,e-i.lf_left-2),r=this.getAccumulatedValue(i,e-i.lf_left-1);return n+=i.size_left,{node:i,remainder:Math.min(s+t-1,r),nodeStartOffset:n}}else if(i.lf_left+i.piece.lineFeedCnt===e-1){const s=this.getAccumulatedValue(i,e-i.lf_left-2);if(s+t-1<=i.piece.length)return{node:i,remainder:s+t-1,nodeStartOffset:n};t-=i.piece.length-s;break}else e-=i.lf_left+i.piece.lineFeedCnt,n+=i.size_left+i.piece.length,i=i.right;for(i=i.next();i!==Le;){if(i.piece.lineFeedCnt>0){const s=this.getAccumulatedValue(i,0),r=this.offsetOfNode(i);return{node:i,remainder:Math.min(t-1,s),nodeStartOffset:r}}else if(i.piece.length>=t-1){const s=this.offsetOfNode(i);return{node:i,remainder:t-1,nodeStartOffset:s}}else t-=i.piece.length;i=i.next()}return null}nodeCharCodeAt(e,t){if(e.piece.lineFeedCnt<1)return-1;const i=this._buffers[e.piece.bufferIndex],n=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start)+t;return i.buffer.charCodeAt(n)}offsetOfNode(e){if(!e)return 0;let t=e.size_left;for(;e!==this.root;)e.parent.right===e&&(t+=e.parent.size_left+e.parent.piece.length),e=e.parent;return t}shouldCheckCRLF(){return!(this._EOLNormalized&&this._EOL===` -`)}startWithLF(e){if(typeof e=="string")return e.charCodeAt(0)===10;if(e===Le||e.piece.lineFeedCnt===0)return!1;const t=e.piece,i=this._buffers[t.bufferIndex].lineStarts,n=t.start.line,s=i[n]+t.start.column;return n===i.length-1||i[n+1]>s+1?!1:this._buffers[t.bufferIndex].buffer.charCodeAt(s)===10}endWithCR(e){return typeof e=="string"?e.charCodeAt(e.length-1)===13:e===Le||e.piece.lineFeedCnt===0?!1:this.nodeCharCodeAt(e,e.piece.length-1)===13}validateCRLFWithPrevNode(e){if(this.shouldCheckCRLF()&&this.startWithLF(e)){const t=e.prev();this.endWithCR(t)&&this.fixCRLF(t,e)}}validateCRLFWithNextNode(e){if(this.shouldCheckCRLF()&&this.endWithCR(e)){const t=e.next();this.startWithLF(t)&&this.fixCRLF(e,t)}}fixCRLF(e,t){const i=[],n=this._buffers[e.piece.bufferIndex].lineStarts;let s;e.piece.end.column===0?s={line:e.piece.end.line-1,column:n[e.piece.end.line]-n[e.piece.end.line-1]-1}:s={line:e.piece.end.line,column:e.piece.end.column-1};const r=e.piece.length-1,a=e.piece.lineFeedCnt-1;e.piece=new Xn(e.piece.bufferIndex,e.piece.start,s,a,r),Ha(this,e,-1,-1),e.piece.length===0&&i.push(e);const l={line:t.piece.start.line+1,column:0},c=t.piece.length-1,d=this.getLineFeedCnt(t.piece.bufferIndex,l,t.piece.end);t.piece=new Xn(t.piece.bufferIndex,l,t.piece.end,d,c),Ha(this,t,-1,-1),t.piece.length===0&&i.push(t);const h=this.createNewPieces(`\r -`);this.rbInsertRight(e,h[0]);for(let u=0;u_.sortIndex-b.sortIndex)}this._mightContainRTL=n,this._mightContainUnusualLineTerminators=s,this._mightContainNonBasicASCII=r;const f=this._doApplyEdits(l);let g=null;if(t&&h.length>0){h.sort((p,_)=>_.lineNumber-p.lineNumber),g=[];for(let p=0,_=h.length;p<_;p++){const b=h[p].lineNumber;if(p>0&&h[p-1].lineNumber===b)continue;const C=h[p].oldContent,w=this.getLineContent(b);w.length===0||w===C||zn(w)!==-1||g.push(b)}}return this._onDidChangeContent.fire(),new MU(u,f,g)}_reduceOperations(e){return e.length<1e3?e:[this._toSingleEditOperation(e)]}_toSingleEditOperation(e){let t=!1;const i=e[0].range,n=e[e.length-1].range,s=new I(i.startLineNumber,i.startColumn,n.endLineNumber,n.endColumn);let r=i.startLineNumber,a=i.startColumn;const l=[];for(let f=0,g=e.length;f0&&l.push(p.text),r=_.endLineNumber,a=_.endColumn}const c=l.join(""),[d,h,u]=hg(c);return{sortIndex:0,identifier:e[0].identifier,range:s,rangeOffset:this.getOffsetAt(s.startLineNumber,s.startColumn),rangeLength:this.getValueLengthInRange(s,0),text:c,eolCount:d,firstLineLength:h,lastLineLength:u,forceMoveMarkers:t,isAutoWhitespaceEdit:!1}}_doApplyEdits(e){e.sort(Uf._sortOpsDescending);const t=[];for(let i=0;i0){const u=l.eolCount+1;u===1?h=new I(c,d,c,d+l.firstLineLength):h=new I(c,d,c+u-1,l.lastLineLength+1)}else h=new I(c,d,c,d);i=h.endLineNumber,n=h.endColumn,t.push(h),s=l}return t}static _sortOpsAscending(e,t){const i=I.compareRangesUsingEnds(e.range,t.range);return i===0?e.sortIndex-t.sortIndex:i}static _sortOpsDescending(e,t){const i=I.compareRangesUsingEnds(e.range,t.range);return i===0?t.sortIndex-e.sortIndex:-i}}class kX{constructor(e,t,i,n,s,r,a,l,c){this._chunks=e,this._bom=t,this._cr=i,this._lf=n,this._crlf=s,this._containsRTL=r,this._containsUnusualLineTerminators=a,this._isBasicASCII=l,this._normalizeEOL=c}_getEOL(e){const t=this._cr+this._lf+this._crlf,i=this._cr+this._crlf;return t===0?e===1?` -`:`\r -`:i>t/2?`\r -`:` -`}create(e){const t=this._getEOL(e),i=this._chunks;if(this._normalizeEOL&&(t===`\r -`&&(this._cr>0||this._lf>0)||t===` -`&&(this._cr>0||this._crlf>0)))for(let s=0,r=i.length;s=55296&&t<=56319?(this._acceptChunk1(e.substr(0,e.length-1),!1),this._hasPreviousChar=!0,this._previousChar=t):(this._acceptChunk1(e,!1),this._hasPreviousChar=!1,this._previousChar=t)}_acceptChunk1(e,t){!t&&e.length===0||(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+e):this._acceptChunk2(e))}_acceptChunk2(e){const t=yX(this._tmpLineStarts,e);this.chunks.push(new Ld(e,t.lineStarts)),this.cr+=t.cr,this.lf+=t.lf,this.crlf+=t.crlf,t.isBasicASCII||(this.isBasicASCII=!1,this.containsRTL||(this.containsRTL=sg(e)),this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=mF(e)))}finish(e=!0){return this._finish(),new kX(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,e)}_finish(){if(this.chunks.length===0&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;const e=this.chunks[this.chunks.length-1];e.buffer+=String.fromCharCode(this._previousChar);const t=Va(e.buffer);e.lineStarts=t,this._previousChar===13&&this.cr++}}}class DX{constructor(e){this._default=e,this._store=[]}get(e){return e=this._store.length;)this._store[this._store.length]=this._default;this._store[e]=t}replace(e,t,i){if(e>=this._store.length)return;if(t===0){this.insert(e,i);return}else if(i===0){this.delete(e,t);return}const n=this._store.slice(0,e),s=this._store.slice(e+t),r=IX(i,this._default);this._store=n.concat(r,s)}delete(e,t){t===0||e>=this._store.length||this._store.splice(e,t)}insert(e,t){if(t===0||e>=this._store.length)return;const i=[];for(let n=0;n0){const i=this._tokens[this._tokens.length-1];if(i.endLineNumber+1===e){i.appendLineTokens(t);return}}this._tokens.push(new EX(e,[t]))}finalize(){return this._tokens}}class NX{constructor(e,t){this.tokenizationSupport=t,this.initialState=this.tokenizationSupport.getInitialState(),this.store=new kD(e)}getStartState(e){return this.store.getStartState(e,this.initialState)}getFirstInvalidLine(){return this.store.getFirstInvalidLine(this.initialState)}}class TX extends NX{constructor(e,t,i,n){super(e,t),this._textModel=i,this._languageIdCodec=n}updateTokensUntilLine(e,t){const i=this._textModel.getLanguageId();for(;;){const n=this.getFirstInvalidLine();if(!n||n.lineNumber>t)break;const s=this._textModel.getLineContent(n.lineNumber),r=pm(this._languageIdCodec,i,this.tokenizationSupport,s,!0,n.startState);e.add(n.lineNumber,r.tokens),this.store.setEndState(n.lineNumber,r.endState)}}getTokenTypeIfInsertingCharacter(e,t){const i=this.getStartState(e.lineNumber);if(!i)return 0;const n=this._textModel.getLanguageId(),s=this._textModel.getLineContent(e.lineNumber),r=s.substring(0,e.column-1)+t+s.substring(e.column-1),a=pm(this._languageIdCodec,n,this.tokenizationSupport,r,!0,i),l=new Ni(a.tokens,r,this._languageIdCodec);if(l.getCount()===0)return 0;const c=l.findTokenIndexAtOffset(e.column-1);return l.getStandardTokenType(c)}tokenizeLineWithEdit(e,t,i){const n=e.lineNumber,s=e.column,r=this.getStartState(n);if(!r)return null;const a=this._textModel.getLineContent(n),l=a.substring(0,s-1)+i+a.substring(s-1+t),c=this._textModel.getLanguageIdAtPosition(n,0),d=pm(this._languageIdCodec,c,this.tokenizationSupport,l,!0,r);return new Ni(d.tokens,l,this._languageIdCodec)}hasAccurateTokensForLine(e){const t=this.store.getFirstInvalidEndStateLineNumberOrMax();return e1&&a>=1;a--){const l=this._textModel.getLineFirstNonWhitespaceColumn(a);if(l!==0&&l0&&i>0&&(i--,t--),this._lineEndStates.replace(e.startLineNumber,i,t)}}class RX{constructor(){this._ranges=[]}get min(){return this._ranges.length===0?null:this._ranges[0].start}delete(e){const t=this._ranges.findIndex(i=>i.contains(e));if(t!==-1){const i=this._ranges[t];i.start===e?i.endExclusive===e+1?this._ranges.splice(t,1):this._ranges[t]=new Re(e+1,i.endExclusive):i.endExclusive===e+1?this._ranges[t]=new Re(i.start,e):this._ranges.splice(t,1,new Re(i.start,e),new Re(e+1,i.endExclusive))}}addRange(e){Re.addRange(e,this._ranges)}addRangeAndResize(e,t){let i=0;for(;!(i>=this._ranges.length||e.start<=this._ranges[i].endExclusive);)i++;let n=i;for(;!(n>=this._ranges.length||e.endExclusivee.toString()).join(" + ")}}function pm(o,e,t,i,n,s){let r=null;if(t)try{r=t.tokenizeEncoded(i,n,s.clone())}catch(a){Ze(a)}return r||(r=zT(o.encodeLanguageId(e),s)),Ni.convertToEndOffset(r.tokens,i.length),r}class AX{constructor(e,t){this._tokenizerWithStateStore=e,this._backgroundTokenStore=t,this._isDisposed=!1,this._isScheduled=!1}dispose(){this._isDisposed=!0}handleChanges(){this._beginBackgroundTokenization()}_beginBackgroundTokenization(){this._isScheduled||!this._tokenizerWithStateStore._textModel.isAttachedToEditor()||!this._hasLinesToTokenize()||(this._isScheduled=!0,wF(e=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(e)}))}_backgroundTokenizeWithDeadline(e){const t=Date.now()+e.timeRemaining(),i=()=>{this._isDisposed||!this._tokenizerWithStateStore._textModel.isAttachedToEditor()||!this._hasLinesToTokenize()||(this._backgroundTokenizeForAtLeast1ms(),Date.now()1||this._tokenizeOneInvalidLine(t)>=e)break;while(this._hasLinesToTokenize());this._backgroundTokenStore.setTokens(t.finalize()),this.checkFinished()}_hasLinesToTokenize(){return this._tokenizerWithStateStore?!this._tokenizerWithStateStore.store.allStatesValid():!1}_tokenizeOneInvalidLine(e){const t=this._tokenizerWithStateStore?.getFirstInvalidLine();return t?(this._tokenizerWithStateStore.updateTokensUntilLine(e,t.lineNumber),t.lineNumber):this._tokenizerWithStateStore._textModel.getLineCount()+1}checkFinished(){this._isDisposed||this._tokenizerWithStateStore.store.allStatesValid()&&this._backgroundTokenStore.backgroundTokenizationFinished()}requestTokens(e,t){this._tokenizerWithStateStore.store.invalidateEndStateRange(new xe(e,t))}}class PX{constructor(){this._onDidChangeVisibleRanges=new A,this.onDidChangeVisibleRanges=this._onDidChangeVisibleRanges.event,this._views=new Set}attachView(){const e=new OX(t=>{this._onDidChangeVisibleRanges.fire({view:e,state:t})});return this._views.add(e),e}detachView(e){this._views.delete(e),this._onDidChangeVisibleRanges.fire({view:e,state:void 0})}}class OX{constructor(e){this.handleStateChange=e}setVisibleLines(e,t){const i=e.map(n=>new xe(n.startLineNumber,n.endLineNumber+1));this.handleStateChange({visibleLineRanges:i,stabilized:t})}}class FX extends z{get lineRanges(){return this._lineRanges}constructor(e){super(),this._refreshTokens=e,this.runner=this._register(new ci(()=>this.update(),50)),this._computedLineRanges=[],this._lineRanges=[]}update(){li(this._computedLineRanges,this._lineRanges,(e,t)=>e.equals(t))||(this._computedLineRanges=this._lineRanges,this._refreshTokens())}handleStateChange(e){this._lineRanges=e.visibleLineRanges,e.stabilized?(this.runner.cancel(),this.update()):this.runner.schedule()}}class _9 extends z{get backgroundTokenizationState(){return this._backgroundTokenizationState}constructor(e,t,i){super(),this._languageIdCodec=e,this._textModel=t,this.getLanguageId=i,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new A),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event,this._onDidChangeTokens=this._register(new A),this.onDidChangeTokens=this._onDidChangeTokens.event}tokenizeIfCheap(e){this.isCheapToTokenize(e)&&this.forceTokenization(e)}}class AP extends _9{constructor(e,t,i,n){super(t,i,n),this._treeSitterService=e,this._tokenizationSupport=null,this._initialize()}_initialize(){const e=this.getLanguageId();(!this._tokenizationSupport||this._lastLanguageId!==e)&&(this._lastLanguageId=e,this._tokenizationSupport=HL.get(e))}getLineTokens(e){const t=this._textModel.getLineContent(e);if(this._tokenizationSupport){const i=this._tokenizationSupport.tokenizeEncoded(e,this._textModel);if(i)return new Ni(i,t,this._languageIdCodec)}return Ni.createEmpty(t,this._languageIdCodec)}resetTokenization(e=!0){e&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]}),this._initialize()}handleDidChangeAttached(){}handleDidChangeContent(e){e.isFlush&&this.resetTokenization(!1)}forceTokenization(e){}hasAccurateTokensForLine(e){return!0}isCheapToTokenize(e){return!0}getTokenTypeIfInsertingCharacter(e,t,i){return 0}tokenizeLineWithEdit(e,t,i){return null}get hasTokens(){return this._treeSitterService.getParseResult(this._textModel)!==void 0}}const b9=He("treeSitterParserService"),za=new Uint32Array(0).buffer;class Kr{static deleteBeginning(e,t){return e===null||e===za?e:Kr.delete(e,0,t)}static deleteEnding(e,t){if(e===null||e===za)return e;const i=nl(e),n=i[i.length-2];return Kr.delete(e,t,n)}static delete(e,t,i){if(e===null||e===za||t===i)return e;const n=nl(e),s=n.length>>>1;if(t===0&&n[n.length-2]===i)return za;const r=Ni.findIndexInTokensArray(n,t),a=r>0?n[r-1<<1]:0,l=n[r<<1];if(id&&(n[c++]=g,n[c++]=n[(f<<1)+1],d=g)}if(c===n.length)return e;const u=new Uint32Array(c);return u.set(n.subarray(0,c),0),u.buffer}static append(e,t){if(t===za)return e;if(e===za)return t;if(e===null)return e;if(t===null)return null;const i=nl(e),n=nl(t),s=n.length>>>1,r=new Uint32Array(i.length+n.length);r.set(i,0);let a=i.length;const l=i[i.length-2];for(let c=0;c>>1;let r=Ni.findIndexInTokensArray(n,t);r>0&&n[r-1<<1]===t&&r--;for(let a=r;a0}getTokens(e,t,i){let n=null;if(t1&&(s=sr.getLanguageId(n[1])!==e),!s)return za}if(!n||n.length===0){const s=new Uint32Array(2);return s[0]=t,s[1]=PP(e),s.buffer}return n[n.length-2]=t,n.byteOffset===0&&n.byteLength===n.buffer.byteLength?n.buffer:n}_ensureLine(e){for(;e>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(e,t){t!==0&&(e+t>this._len&&(t=this._len-e),this._lineTokens.splice(e,t),this._len-=t)}_insertLines(e,t){if(t===0)return;const i=[];for(let n=0;n=this._len)return;if(e.startLineNumber===e.endLineNumber){if(e.startColumn===e.endColumn)return;this._lineTokens[t]=Kr.delete(this._lineTokens[t],e.startColumn-1,e.endColumn-1);return}this._lineTokens[t]=Kr.deleteEnding(this._lineTokens[t],e.startColumn-1);const i=e.endLineNumber-1;let n=null;i=this._len)){if(t===0){this._lineTokens[n]=Kr.insert(this._lineTokens[n],e.column-1,i);return}this._lineTokens[n]=Kr.deleteEnding(this._lineTokens[n],e.column-1),this._lineTokens[n]=Kr.insert(this._lineTokens[n],e.column-1,i),this._insertLines(e.lineNumber,t)}}setMultilineTokens(e,t){if(e.length===0)return{changes:[]};const i=[];for(let n=0,s=e.length;n>>0}class u2{constructor(e){this._pieces=[],this._isComplete=!1,this._languageIdCodec=e}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return this._pieces.length===0}set(e,t){this._pieces=e||[],this._isComplete=t}setPartial(e,t){let i=e;if(t.length>0){const s=t[0].getRange(),r=t[t.length-1].getRange();if(!s||!r)return e;i=e.plusRange(s).plusRange(r)}let n=null;for(let s=0,r=this._pieces.length;si.endLineNumber){n=n||{index:s};break}if(a.removeTokens(i),a.isEmpty()){this._pieces.splice(s,1),s--,r--;continue}if(a.endLineNumberi.endLineNumber){n=n||{index:s};continue}const[l,c]=a.split(i);if(l.isEmpty()){n=n||{index:s};continue}c.isEmpty()||(this._pieces.splice(s,1,l,c),s++,r++,n=n||{index:s})}return n=n||{index:this._pieces.length},t.length>0&&(this._pieces=y0(this._pieces,n.index,t)),i}isComplete(){return this._isComplete}addSparseTokens(e,t){if(t.getLineContent().length===0)return t;const i=this._pieces;if(i.length===0)return t;const n=u2._findFirstPieceWithLine(i,e),s=i[n].getLineTokens(e);if(!s)return t;const r=t.getCount(),a=s.getCount();let l=0;const c=[];let d=0,h=0;const u=(f,g)=>{f!==h&&(h=f,c[d++]=f,c[d++]=g)};for(let f=0;f>>0,C=~b>>>0;for(;lt)n=s-1;else{for(;s>i&&e[s-1].startLineNumber<=t&&t<=e[s-1].endLineNumber;)s--;return s}}return i}acceptEdit(e,t,i,n,s){for(const r of this._pieces)r.acceptEdit(e,t,i,n,s)}}var BX=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},VS=function(o,e){return function(t,i){e(t,i,o)}},O1;let DD=O1=class extends a9{constructor(e,t,i,n,s,r,a){super(),this._textModel=e,this._bracketPairsTextModelPart=t,this._languageId=i,this._attachedViews=n,this._languageService=s,this._languageConfigurationService=r,this._treeSitterService=a,this._semanticTokens=new u2(this._languageService.languageIdCodec),this._onDidChangeLanguage=this._register(new A),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new A),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new A),this.onDidChangeTokens=this._onDidChangeTokens.event,this._tokensDisposables=this._register(new X),this._register(this._languageConfigurationService.onDidChange(l=>{l.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})})),this._register(J.filter(HL.onDidChange,l=>l.changedLanguages.includes(this._languageId))(()=>{this.createPreferredTokenProvider()})),this.createPreferredTokenProvider()}createGrammarTokens(){return this._register(new OP(this._languageService.languageIdCodec,this._textModel,()=>this._languageId,this._attachedViews))}createTreeSitterTokens(){return this._register(new AP(this._treeSitterService,this._languageService.languageIdCodec,this._textModel,()=>this._languageId))}createTokens(e){const t=this._tokens!==void 0;this._tokens?.dispose(),this._tokens=e?this.createTreeSitterTokens():this.createGrammarTokens(),this._tokensDisposables.clear(),this._tokensDisposables.add(this._tokens.onDidChangeTokens(i=>{this._emitModelTokensChangedEvent(i)})),this._tokensDisposables.add(this._tokens.onDidChangeBackgroundTokenizationState(i=>{this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState()})),t&&this._tokens.resetTokenization()}createPreferredTokenProvider(){HL.get(this._languageId)?this._tokens instanceof AP||this.createTokens(!0):this._tokens instanceof OP||this.createTokens(!1)}handleLanguageConfigurationServiceChange(e){e.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}handleDidChangeContent(e){if(e.isFlush)this._semanticTokens.flush();else if(!e.isEolChange)for(const t of e.changes){const[i,n,s]=hg(t.text);this._semanticTokens.acceptEdit(t.range,i,n,s,t.text.length>0?t.text.charCodeAt(0):0)}this._tokens.handleDidChangeContent(e)}handleDidChangeAttached(){this._tokens.handleDidChangeAttached()}getLineTokens(e){this.validateLineNumber(e);const t=this._tokens.getLineTokens(e);return this._semanticTokens.addSparseTokens(e,t)}_emitModelTokensChangedEvent(e){this._textModel._isDisposing()||(this._bracketPairsTextModelPart.handleDidChangeTokens(e),this._onDidChangeTokens.fire(e))}validateLineNumber(e){if(e<1||e>this._textModel.getLineCount())throw new nt("Illegal value for lineNumber")}get hasTokens(){return this._tokens.hasTokens}resetTokenization(){this._tokens.resetTokenization()}get backgroundTokenizationState(){return this._tokens.backgroundTokenizationState}forceTokenization(e){this.validateLineNumber(e),this._tokens.forceTokenization(e)}hasAccurateTokensForLine(e){return this.validateLineNumber(e),this._tokens.hasAccurateTokensForLine(e)}isCheapToTokenize(e){return this.validateLineNumber(e),this._tokens.isCheapToTokenize(e)}tokenizeIfCheap(e){this.validateLineNumber(e),this._tokens.tokenizeIfCheap(e)}getTokenTypeIfInsertingCharacter(e,t,i){return this._tokens.getTokenTypeIfInsertingCharacter(e,t,i)}tokenizeLineWithEdit(e,t,i){return this._tokens.tokenizeLineWithEdit(e,t,i)}setSemanticTokens(e,t){this._semanticTokens.set(e,t),this._emitModelTokensChangedEvent({semanticTokensApplied:e!==null,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}hasCompleteSemanticTokens(){return this._semanticTokens.isComplete()}hasSomeSemanticTokens(){return!this._semanticTokens.isEmpty()}setPartialSemanticTokens(e,t){if(this.hasCompleteSemanticTokens())return;const i=this._textModel.validateRange(this._semanticTokens.setPartial(e,t));this._emitModelTokensChangedEvent({semanticTokensApplied:!0,ranges:[{fromLineNumber:i.startLineNumber,toLineNumber:i.endLineNumber}]})}getWordAtPosition(e){this.assertNotDisposed();const t=this._textModel.validatePosition(e),i=this._textModel.getLineContent(t.lineNumber),n=this.getLineTokens(t.lineNumber),s=n.findTokenIndexAtOffset(t.column-1),[r,a]=O1._findLanguageBoundaries(n,s),l=Wp(t.column,this.getLanguageConfiguration(n.getLanguageId(s)).getWordDefinition(),i.substring(r,a),r);if(l&&l.startColumn<=e.column&&e.column<=l.endColumn)return l;if(s>0&&r===t.column-1){const[c,d]=O1._findLanguageBoundaries(n,s-1),h=Wp(t.column,this.getLanguageConfiguration(n.getLanguageId(s-1)).getWordDefinition(),i.substring(c,d),c);if(h&&h.startColumn<=e.column&&e.column<=h.endColumn)return h}return null}getLanguageConfiguration(e){return this._languageConfigurationService.getLanguageConfiguration(e)}static _findLanguageBoundaries(e,t){const i=e.getLanguageId(t);let n=0;for(let r=t;r>=0&&e.getLanguageId(r)===i;r--)n=e.getStartOffset(r);let s=e.getLineContent().length;for(let r=t,a=e.getCount();r{const r=this.getLanguageId();s.changedLanguages.indexOf(r)!==-1&&this.resetTokenization()})),this.resetTokenization(),this._register(n.onDidChangeVisibleRanges(({view:s,state:r})=>{if(r){let a=this._attachedViewStates.get(s);a||(a=new FX(()=>this.refreshRanges(a.lineRanges)),this._attachedViewStates.set(s,a)),a.handleStateChange(r)}else this._attachedViewStates.deleteAndDispose(s)}))}resetTokenization(e=!0){this._tokens.flush(),this._debugBackgroundTokens?.flush(),this._debugBackgroundStates&&(this._debugBackgroundStates=new kD(this._textModel.getLineCount())),e&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]});const t=()=>{if(this._textModel.isTooLargeForTokenization())return[null,null];const s=si.get(this.getLanguageId());if(!s)return[null,null];let r;try{r=s.getInitialState()}catch(a){return Ze(a),[null,null]}return[s,r]},[i,n]=t();if(i&&n?this._tokenizer=new TX(this._textModel.getLineCount(),i,this._textModel,this._languageIdCodec):this._tokenizer=null,this._backgroundTokenizer.clear(),this._defaultBackgroundTokenizer=null,this._tokenizer){const s={setTokens:r=>{this.setTokens(r)},backgroundTokenizationFinished:()=>{if(this._backgroundTokenizationState===2)return;const r=2;this._backgroundTokenizationState=r,this._onDidChangeBackgroundTokenizationState.fire()},setEndState:(r,a)=>{if(!this._tokenizer)return;const l=this._tokenizer.store.getFirstInvalidEndStateLineNumber();l!==null&&r>=l&&this._tokenizer?.store.setEndState(r,a)}};i&&i.createBackgroundTokenizer&&!i.backgroundTokenizerShouldOnlyVerifyTokens&&(this._backgroundTokenizer.value=i.createBackgroundTokenizer(this._textModel,s)),!this._backgroundTokenizer.value&&!this._textModel.isTooLargeForTokenization()&&(this._backgroundTokenizer.value=this._defaultBackgroundTokenizer=new AX(this._tokenizer,s),this._defaultBackgroundTokenizer.handleChanges()),i?.backgroundTokenizerShouldOnlyVerifyTokens&&i.createBackgroundTokenizer?(this._debugBackgroundTokens=new g_(this._languageIdCodec),this._debugBackgroundStates=new kD(this._textModel.getLineCount()),this._debugBackgroundTokenizer.clear(),this._debugBackgroundTokenizer.value=i.createBackgroundTokenizer(this._textModel,{setTokens:r=>{this._debugBackgroundTokens?.setMultilineTokens(r,this._textModel)},backgroundTokenizationFinished(){},setEndState:(r,a)=>{this._debugBackgroundStates?.setEndState(r,a)}})):(this._debugBackgroundTokens=void 0,this._debugBackgroundStates=void 0,this._debugBackgroundTokenizer.value=void 0)}this.refreshAllVisibleLineTokens()}handleDidChangeAttached(){this._defaultBackgroundTokenizer?.handleChanges()}handleDidChangeContent(e){if(e.isFlush)this.resetTokenization(!1);else if(!e.isEolChange){for(const t of e.changes){const[i,n]=hg(t.text);this._tokens.acceptEdit(t.range,i,n),this._debugBackgroundTokens?.acceptEdit(t.range,i,n)}this._debugBackgroundStates?.acceptChanges(e.changes),this._tokenizer&&this._tokenizer.store.acceptChanges(e.changes),this._defaultBackgroundTokenizer?.handleChanges()}}setTokens(e){const{changes:t}=this._tokens.setMultilineTokens(e,this._textModel);return t.length>0&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:t}),{changes:t}}refreshAllVisibleLineTokens(){const e=xe.joinMany([...this._attachedViewStates].map(([t,i])=>i.lineRanges));this.refreshRanges(e)}refreshRanges(e){for(const t of e)this.refreshRange(t.startLineNumber,t.endLineNumberExclusive-1)}refreshRange(e,t){if(!this._tokenizer)return;e=Math.max(1,Math.min(this._textModel.getLineCount(),e)),t=Math.min(this._textModel.getLineCount(),t);const i=new xD,{heuristicTokens:n}=this._tokenizer.tokenizeHeuristically(i,e,t),s=this.setTokens(i.finalize());if(n)for(const r of s.changes)this._backgroundTokenizer.value?.requestTokens(r.fromLineNumber,r.toLineNumber+1);this._defaultBackgroundTokenizer?.checkFinished()}forceTokenization(e){const t=new xD;this._tokenizer?.updateTokensUntilLine(t,e),this.setTokens(t.finalize()),this._defaultBackgroundTokenizer?.checkFinished()}hasAccurateTokensForLine(e){return this._tokenizer?this._tokenizer.hasAccurateTokensForLine(e):!0}isCheapToTokenize(e){return this._tokenizer?this._tokenizer.isCheapToTokenize(e):!0}getLineTokens(e){const t=this._textModel.getLineContent(e),i=this._tokens.getTokens(this._textModel.getLanguageId(),e-1,t);if(this._debugBackgroundTokens&&this._debugBackgroundStates&&this._tokenizer&&this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax()>e&&this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax()>e){const n=this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(),e-1,t);!i.equals(n)&&this._debugBackgroundTokenizer.value?.reportMismatchingTokens&&this._debugBackgroundTokenizer.value.reportMismatchingTokens(e)}return i}getTokenTypeIfInsertingCharacter(e,t,i){if(!this._tokenizer)return 0;const n=this._textModel.validatePosition(new P(e,t));return this.forceTokenization(n.lineNumber),this._tokenizer.getTokenTypeIfInsertingCharacter(n,i)}tokenizeLineWithEdit(e,t,i){if(!this._tokenizer)return null;const n=this._textModel.validatePosition(e);return this.forceTokenization(n.lineNumber),this._tokenizer.tokenizeLineWithEdit(n,t,i)}get hasTokens(){return this._tokens.hasTokens}}class WX{constructor(){this.changeType=1}}class _r{static applyInjectedText(e,t){if(!t||t.length===0)return e;let i="",n=0;for(const s of t)i+=e.substring(n,s.column-1),n=s.column-1,i+=s.options.content;return i+=e.substring(n),i}static fromDecorations(e){const t=[];for(const i of e)i.options.before&&i.options.before.content.length>0&&t.push(new _r(i.ownerId,i.range.startLineNumber,i.range.startColumn,i.options.before,0)),i.options.after&&i.options.after.content.length>0&&t.push(new _r(i.ownerId,i.range.endLineNumber,i.range.endColumn,i.options.after,1));return t.sort((i,n)=>i.lineNumber===n.lineNumber?i.column===n.column?i.order-n.order:i.column-n.column:i.lineNumber-n.lineNumber),t}constructor(e,t,i,n,s){this.ownerId=e,this.lineNumber=t,this.column=i,this.options=n,this.order=s}}class FP{constructor(e,t,i){this.changeType=2,this.lineNumber=e,this.detail=t,this.injectedText=i}}class HX{constructor(e,t){this.changeType=3,this.fromLineNumber=e,this.toLineNumber=t}}class VX{constructor(e,t,i,n){this.changeType=4,this.injectedTexts=n,this.fromLineNumber=e,this.toLineNumber=t,this.detail=i}}class zX{constructor(){this.changeType=5}}class $f{constructor(e,t,i,n){this.changes=e,this.versionId=t,this.isUndoing=i,this.isRedoing=n,this.resultingSelection=null}containsEvent(e){for(let t=0,i=this.changes.length;t=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Gb=function(o,e){return function(t,i){e(t,i,o)}},ud;function $X(o){const e=new p9;return e.acceptChunk(o),e.finish()}function KX(o){const e=new p9;let t;for(;typeof(t=o.read())=="string";)e.acceptChunk(t);return e.finish()}function BP(o,e){let t;return typeof o=="string"?t=$X(o):NU(o)?t=KX(o):t=o,t.create(e)}let Zb=0;const jX=999,qX=1e4;class GX{constructor(e){this._source=e,this._eos=!1}read(){if(this._eos)return null;const e=[];let t=0,i=0;do{const n=this._source.read();if(n===null)return this._eos=!0,t===0?null:e.join("");if(n.length>0&&(e[t++]=n,i+=n.length),i>=64*1024)return e.join("")}while(!0)}}const _m=()=>{throw new Error("Invalid change accessor")};var ar;let m_=(ar=class extends z{static resolveOptions(e,t){if(t.detectIndentation){const i=kP(e,t.tabSize,t.insertSpaces);return new k1({tabSize:i.tabSize,indentSize:"tabSize",insertSpaces:i.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL,bracketPairColorizationOptions:t.bracketPairColorizationOptions})}return new k1(t)}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}onDidChangeContent(e){return this._eventEmitter.slowEvent(t=>e(t.contentChangedEvent))}onDidChangeContentOrInjectedText(e){return No(this._eventEmitter.fastEvent(t=>e(t)),this._onDidChangeInjectedText.event(t=>e(t)))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}constructor(e,t,i,n=null,s,r,a,l){super(),this._undoRedoService=s,this._languageService=r,this._languageConfigurationService=a,this.instantiationService=l,this._onWillDispose=this._register(new A),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new eJ(g=>this.handleBeforeFireDecorationsChangedEvent(g))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new A),this.onDidChangeOptions=this._onDidChangeOptions.event,this._onDidChangeAttached=this._register(new A),this.onDidChangeAttached=this._onDidChangeAttached.event,this._onDidChangeInjectedText=this._register(new A),this._eventEmitter=this._register(new tJ),this._languageSelectionListener=this._register(new Dn),this._deltaDecorationCallCnt=0,this._attachedViews=new PX,Zb++,this.id="$model"+Zb,this.isForSimpleWidget=i.isForSimpleWidget,typeof n>"u"||n===null?this._associatedResource=ve.parse("inmemory://model/"+Zb):this._associatedResource=n,this._attachedEditorCount=0;const{textBuffer:c,disposable:d}=BP(e,i.defaultEOL);this._buffer=c,this._bufferDisposable=d,this._options=ud.resolveOptions(this._buffer,i);const h=typeof t=="string"?t:t.languageId;typeof t!="string"&&(this._languageSelectionListener.value=t.onDidChange(()=>this._setLanguage(t.languageId))),this._bracketPairs=this._register(new eX(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new oX(this,this._languageConfigurationService)),this._decorationProvider=this._register(new iX(this)),this._tokenizationTextModelPart=this.instantiationService.createInstance(DD,this,this._bracketPairs,h,this._attachedViews);const u=this._buffer.getLineCount(),f=this._buffer.getValueLengthInRange(new I(1,1,u,this._buffer.getLineLength(u)+1),0);i.largeFileOptimizations?(this._isTooLargeForTokenization=f>ud.LARGE_FILE_SIZE_THRESHOLD||u>ud.LARGE_FILE_LINE_COUNT_THRESHOLD,this._isTooLargeForHeapOperation=f>ud.LARGE_FILE_HEAP_OPERATION_THRESHOLD):(this._isTooLargeForTokenization=!1,this._isTooLargeForHeapOperation=!1),this._isTooLargeForSyncing=f>ud._MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=pF(Zb),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new WP,this._commandManager=new l2(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._register(this._decorationProvider.onDidChange(()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()})),this._languageService.requestRichLanguageFeatures(h),this._register(this._languageConfigurationService.onDidChange(g=>{this._bracketPairs.handleLanguageConfigurationServiceChange(g),this._tokenizationTextModelPart.handleLanguageConfigurationServiceChange(g)}))}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;const e=new Uf([],"",` -`,!1,!1,!0,!0);e.dispose(),this._buffer=e,this._bufferDisposable=z.None}_assertNotDisposed(){if(this._isDisposed)throw new nt("Model is disposed!")}_emitContentChangedEvent(e,t){this.__isDisposing||(this._tokenizationTextModelPart.handleDidChangeContent(t),this._bracketPairs.handleDidChangeContent(t),this._eventEmitter.fire(new th(e,t)))}setValue(e){if(this._assertNotDisposed(),e==null)throw na();const{textBuffer:t,disposable:i}=BP(e,this._options.defaultEOL);this._setValueFromTextBuffer(t,i)}_createContentChanged2(e,t,i,n,s,r,a,l){return{changes:[{range:e,rangeOffset:t,rangeLength:i,text:n}],eol:this._buffer.getEOL(),isEolChange:l,versionId:this.getVersionId(),isUndoing:s,isRedoing:r,isFlush:a}}_setValueFromTextBuffer(e,t){this._assertNotDisposed();const i=this.getFullModelRange(),n=this.getValueLengthInRange(i),s=this.getLineCount(),r=this.getLineMaxColumn(s);this._buffer=e,this._bufferDisposable.dispose(),this._bufferDisposable=t,this._increaseVersionId(),this._decorations=Object.create(null),this._decorationsTree=new WP,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new $f([new WX],this._versionId,!1,!1),this._createContentChanged2(new I(1,1,s,r),0,n,this.getValue(),!1,!1,!0,!1))}setEOL(e){this._assertNotDisposed();const t=e===1?`\r -`:` -`;if(this._buffer.getEOL()===t)return;const i=this.getFullModelRange(),n=this.getValueLengthInRange(i),s=this.getLineCount(),r=this.getLineMaxColumn(s);this._onBeforeEOLChange(),this._buffer.setEOL(t),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new $f([new zX],this._versionId,!1,!1),this._createContentChanged2(new I(1,1,s,r),0,n,this.getValue(),!1,!1,!1,!0))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){const e=this.getVersionId(),t=this._decorationsTree.collectNodesPostOrder();for(let i=0,n=t.length;i0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isTooLargeForHeapOperation(){return this._isTooLargeForHeapOperation}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let e=0,t=0;const i=this._buffer.getLineCount();for(let n=1;n<=i;n++){const s=this._buffer.getLineLength(n);s>=qX?t+=s:e+=s}return t>e}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(e){this._assertNotDisposed();const t=typeof e.tabSize<"u"?e.tabSize:this._options.tabSize,i=typeof e.indentSize<"u"?e.indentSize:this._options.originalIndentSize,n=typeof e.insertSpaces<"u"?e.insertSpaces:this._options.insertSpaces,s=typeof e.trimAutoWhitespace<"u"?e.trimAutoWhitespace:this._options.trimAutoWhitespace,r=typeof e.bracketColorizationOptions<"u"?e.bracketColorizationOptions:this._options.bracketPairColorizationOptions,a=new k1({tabSize:t,indentSize:i,insertSpaces:n,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:s,bracketPairColorizationOptions:r});if(this._options.equals(a))return;const l=this._options.createChangeEvent(a);this._options=a,this._bracketPairs.handleDidChangeOptions(l),this._decorationProvider.handleDidChangeOptions(l),this._onDidChangeOptions.fire(l)}detectIndentation(e,t){this._assertNotDisposed();const i=kP(this._buffer,t,e);this.updateOptions({insertSpaces:i.insertSpaces,tabSize:i.tabSize,indentSize:i.tabSize})}normalizeIndentation(e){return this._assertNotDisposed(),Q7(e,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(e=null){const t=this.findMatches(gF.source,!1,!0,!1,null,!1,1073741824);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(e,t.map(i=>({range:i.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(e){this._assertNotDisposed();const t=this._validatePosition(e.lineNumber,e.column,0);return this._buffer.getOffsetAt(t.lineNumber,t.column)}getPositionAt(e){this._assertNotDisposed();const t=Math.min(this._buffer.getLength(),Math.max(0,e));return this._buffer.getPositionAt(t)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(e){this._versionId=e}_overwriteAlternativeVersionId(e){this._alternativeVersionId=e}_overwriteInitialUndoRedoSnapshot(e){this._initialUndoRedoSnapshot=e}getValue(e,t=!1){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new nt("Operation would exceed heap memory limits");const i=this.getFullModelRange(),n=this.getValueInRange(i,e);return t?this._buffer.getBOM()+n:n}createSnapshot(e=!1){return new GX(this._buffer.createSnapshot(e))}getValueLength(e,t=!1){this._assertNotDisposed();const i=this.getFullModelRange(),n=this.getValueLengthInRange(i,e);return t?this._buffer.getBOM().length+n:n}getValueInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(e),t)}getValueLengthInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(e),t)}getCharacterCountInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(e),t)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineContent(e)}getLineLength(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineLength(e)}getLinesContent(){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new nt("Operation would exceed heap memory limits");return this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),this._buffer.getEOL()===` -`?0:1}getLineMinColumn(e){return this._assertNotDisposed(),1}getLineMaxColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineLength(e)+1}getLineFirstNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(e)}getLineLastNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new nt("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(e)}_validateRangeRelaxedNoAllocations(e){const t=this._buffer.getLineCount(),i=e.startLineNumber,n=e.startColumn;let s=Math.floor(typeof i=="number"&&!isNaN(i)?i:1),r=Math.floor(typeof n=="number"&&!isNaN(n)?n:1);if(s<1)s=1,r=1;else if(s>t)s=t,r=this.getLineMaxColumn(s);else if(r<=1)r=1;else{const h=this.getLineMaxColumn(s);r>=h&&(r=h)}const a=e.endLineNumber,l=e.endColumn;let c=Math.floor(typeof a=="number"&&!isNaN(a)?a:1),d=Math.floor(typeof l=="number"&&!isNaN(l)?l:1);if(c<1)c=1,d=1;else if(c>t)c=t,d=this.getLineMaxColumn(c);else if(d<=1)d=1;else{const h=this.getLineMaxColumn(c);d>=h&&(d=h)}return i===s&&n===r&&a===c&&l===d&&e instanceof I&&!(e instanceof Fe)?e:new I(s,r,c,d)}_isValidPosition(e,t,i){if(typeof e!="number"||typeof t!="number"||isNaN(e)||isNaN(t)||e<1||t<1||(e|0)!==e||(t|0)!==t)return!1;const n=this._buffer.getLineCount();if(e>n)return!1;if(t===1)return!0;const s=this.getLineMaxColumn(e);if(t>s)return!1;if(i===1){const r=this._buffer.getLineCharCode(e,t-2);if(wi(r))return!1}return!0}_validatePosition(e,t,i){const n=Math.floor(typeof e=="number"&&!isNaN(e)?e:1),s=Math.floor(typeof t=="number"&&!isNaN(t)?t:1),r=this._buffer.getLineCount();if(n<1)return new P(1,1);if(n>r)return new P(r,this.getLineMaxColumn(r));if(s<=1)return new P(n,1);const a=this.getLineMaxColumn(n);if(s>=a)return new P(n,a);if(i===1){const l=this._buffer.getLineCharCode(n,s-2);if(wi(l))return new P(n,s-1)}return new P(n,s)}validatePosition(e){return this._assertNotDisposed(),e instanceof P&&this._isValidPosition(e.lineNumber,e.column,1)?e:this._validatePosition(e.lineNumber,e.column,1)}_isValidRange(e,t){const i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn;if(!this._isValidPosition(i,n,0)||!this._isValidPosition(s,r,0))return!1;if(t===1){const a=n>1?this._buffer.getLineCharCode(i,n-2):0,l=r>1&&r<=this._buffer.getLineLength(s)?this._buffer.getLineCharCode(s,r-2):0,c=wi(a),d=wi(l);return!c&&!d}return!0}validateRange(e){if(this._assertNotDisposed(),e instanceof I&&!(e instanceof Fe)&&this._isValidRange(e,1))return e;const i=this._validatePosition(e.startLineNumber,e.startColumn,0),n=this._validatePosition(e.endLineNumber,e.endColumn,0),s=i.lineNumber,r=i.column,a=n.lineNumber,l=n.column;{const c=r>1?this._buffer.getLineCharCode(s,r-2):0,d=l>1&&l<=this._buffer.getLineLength(a)?this._buffer.getLineCharCode(a,l-2):0,h=wi(c),u=wi(d);return!h&&!u?new I(s,r,a,l):s===a&&r===l?new I(s,r-1,a,l-1):h&&u?new I(s,r-1,a,l+1):h?new I(s,r-1,a,l):new I(s,r,a,l+1)}}modifyPosition(e,t){this._assertNotDisposed();const i=this.getOffsetAt(e)+t;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,i)))}getFullModelRange(){this._assertNotDisposed();const e=this.getLineCount();return new I(1,1,e,this.getLineMaxColumn(e))}findMatchesLineByLine(e,t,i,n){return this._buffer.findMatchesLineByLine(e,t,i,n)}findMatches(e,t,i,n,s,r,a=jX){this._assertNotDisposed();let l=null;t!==null&&(Array.isArray(t)||(t=[t]),t.every(h=>I.isIRange(h))&&(l=t.map(h=>this.validateRange(h)))),l===null&&(l=[this.getFullModelRange()]),l=l.sort((h,u)=>h.startLineNumber-u.startLineNumber||h.startColumn-u.startColumn);const c=[];c.push(l.reduce((h,u)=>I.areIntersecting(h,u)?h.plusRange(u):(c.push(h),u)));let d;if(!i&&e.indexOf(` -`)<0){const u=new Eu(e,i,n,s).parseSearchRequest();if(!u)return[];d=f=>this.findMatchesLineByLine(f,u,r,a)}else d=h=>Eb.findMatches(this,new Eu(e,i,n,s),h,r,a);return c.map(d).reduce((h,u)=>h.concat(u),[])}findNextMatch(e,t,i,n,s,r){this._assertNotDisposed();const a=this.validatePosition(t);if(!i&&e.indexOf(` -`)<0){const c=new Eu(e,i,n,s).parseSearchRequest();if(!c)return null;const d=this.getLineCount();let h=new I(a.lineNumber,a.column,d,this.getLineMaxColumn(d)),u=this.findMatchesLineByLine(h,c,r,1);return Eb.findNextMatch(this,new Eu(e,i,n,s),a,r),u.length>0||(h=new I(1,1,a.lineNumber,this.getLineMaxColumn(a.lineNumber)),u=this.findMatchesLineByLine(h,c,r,1),u.length>0)?u[0]:null}return Eb.findNextMatch(this,new Eu(e,i,n,s),a,r)}findPreviousMatch(e,t,i,n,s,r){this._assertNotDisposed();const a=this.validatePosition(t);return Eb.findPreviousMatch(this,new Eu(e,i,n,s),a,r)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(e){if((this.getEOL()===` -`?0:1)!==e)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(e){return e instanceof CS?e:new CS(e.identifier||null,this.validateRange(e.range),e.text,e.forceMoveMarkers||!1,e.isAutoWhitespaceEdit||!1,e._isTracked||!1)}_validateEditOperations(e){const t=[];for(let i=0,n=e.length;i({range:this.validateRange(a.range),text:a.text}));let r=!0;if(e)for(let a=0,l=e.length;ac.endLineNumber,p=c.startLineNumber>f.endLineNumber;if(!g&&!p){d=!0;break}}if(!d){r=!1;break}}if(r)for(let a=0,l=this._trimAutoWhitespaceLines.length;ag.endLineNumber)&&!(c===g.startLineNumber&&g.startColumn===d&&g.isEmpty()&&p&&p.length>0&&p.charAt(0)===` -`)&&!(c===g.startLineNumber&&g.startColumn===1&&g.isEmpty()&&p&&p.length>0&&p.charAt(p.length-1)===` -`)){h=!1;break}}if(h){const u=new I(c,1,c,d);t.push(new CS(null,u,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(e,t,i,n)}_applyUndo(e,t,i,n){const s=e.map(r=>{const a=this.getPositionAt(r.newPosition),l=this.getPositionAt(r.newEnd);return{range:new I(a.lineNumber,a.column,l.lineNumber,l.column),text:r.oldText}});this._applyUndoRedoEdits(s,t,!0,!1,i,n)}_applyRedo(e,t,i,n){const s=e.map(r=>{const a=this.getPositionAt(r.oldPosition),l=this.getPositionAt(r.oldEnd);return{range:new I(a.lineNumber,a.column,l.lineNumber,l.column),text:r.newText}});this._applyUndoRedoEdits(s,t,!1,!0,i,n)}_applyUndoRedoEdits(e,t,i,n,s,r){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=i,this._isRedoing=n,this.applyEdits(e,!1),this.setEOL(t),this._overwriteAlternativeVersionId(s)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(r),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(e,t=!1){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();const i=this._validateEditOperations(e);return this._doApplyEdits(i,t)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(e,t){const i=this._buffer.getLineCount(),n=this._buffer.applyEdits(e,this._options.trimAutoWhitespace,t),s=this._buffer.getLineCount(),r=n.changes;if(this._trimAutoWhitespaceLines=n.trimAutoWhitespaceLineNumbers,r.length!==0){for(let c=0,d=r.length;c=0;N--){const H=f+N,F=w+N;E.takeFromEndWhile(j=>j.lineNumber>F);const W=E.takeFromEndWhile(j=>j.lineNumber===F);a.push(new FP(H,this.getLineContent(F),W))}if(bae.lineNumberae.lineNumber===ne)}a.push(new VX(H+1,f+_,B,j))}l+=C}this._emitContentChangedEvent(new $f(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:r,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return n.reverseEdits===null?void 0:n.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(e){if(e===null||e.size===0)return;const i=Array.from(e).map(n=>new FP(n,this.getLineContent(n),this._getInjectedTextInLine(n)));this._onDidChangeInjectedText.fire(new C9(i))}changeDecorations(e,t=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(t,e)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(e,t){const i={addDecoration:(s,r)=>this._deltaDecorationsImpl(e,[],[{range:s,options:r}])[0],changeDecoration:(s,r)=>{this._changeDecorationImpl(s,r)},changeDecorationOptions:(s,r)=>{this._changeDecorationOptionsImpl(s,VP(r))},removeDecoration:s=>{this._deltaDecorationsImpl(e,[s],[])},deltaDecorations:(s,r)=>s.length===0&&r.length===0?[]:this._deltaDecorationsImpl(e,s,r)};let n=null;try{n=t(i)}catch(s){Ze(s)}return i.addDecoration=_m,i.changeDecoration=_m,i.changeDecorationOptions=_m,i.removeDecoration=_m,i.deltaDecorations=_m,n}deltaDecorations(e,t,i=0){if(this._assertNotDisposed(),e||(e=[]),e.length===0&&t.length===0)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),Ze(new Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(i,e,t)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(e){return this.getDecorationRange(e)}_setTrackedRange(e,t,i){const n=e?this._decorations[e]:null;if(!n)return t?this._deltaDecorationsImpl(0,[],[{range:t,options:HP[i]}],!0)[0]:null;if(!t)return this._decorationsTree.delete(n),delete this._decorations[n.id],null;const s=this._validateRangeRelaxedNoAllocations(t),r=this._buffer.getOffsetAt(s.startLineNumber,s.startColumn),a=this._buffer.getOffsetAt(s.endLineNumber,s.endColumn);return this._decorationsTree.delete(n),n.reset(this.getVersionId(),r,a,s),n.setOptions(HP[i]),this._decorationsTree.insert(n),n.id}removeAllDecorationsWithOwnerId(e){if(this._isDisposed)return;const t=this._decorationsTree.collectNodesFromOwner(e);for(let i=0,n=t.length;ithis.getLineCount()?[]:this.getLinesDecorations(e,e,t,i)}getLinesDecorations(e,t,i=0,n=!1,s=!1){const r=this.getLineCount(),a=Math.min(r,Math.max(1,e)),l=Math.min(r,Math.max(1,t)),c=this.getLineMaxColumn(l),d=new I(a,1,l,c),h=this._getDecorationsInRange(d,i,n,s);return xL(h,this._decorationProvider.getDecorationsInRange(d,i,n)),h}getDecorationsInRange(e,t=0,i=!1,n=!1,s=!1){const r=this.validateRange(e),a=this._getDecorationsInRange(r,t,i,s);return xL(a,this._decorationProvider.getDecorationsInRange(r,t,i,n)),a}getOverviewRulerDecorations(e=0,t=!1){return this._decorationsTree.getAll(this,e,t,!0,!1)}getInjectedTextDecorations(e=0){return this._decorationsTree.getAllInjectedText(this,e)}_getInjectedTextInLine(e){const t=this._buffer.getOffsetAt(e,1),i=t+this._buffer.getLineLength(e),n=this._decorationsTree.getInjectedTextInInterval(this,t,i,0);return _r.fromDecorations(n).filter(s=>s.lineNumber===e)}getAllDecorations(e=0,t=!1){let i=this._decorationsTree.getAll(this,e,t,!1,!1);return i=i.concat(this._decorationProvider.getAllDecorations(e,t)),i}getAllMarginDecorations(e=0){return this._decorationsTree.getAll(this,e,!1,!1,!0)}_getDecorationsInRange(e,t,i,n){const s=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),r=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.getAllInInterval(this,s,r,t,i,n)}getRangeAt(e,t){return this._buffer.getRangeAt(e,t-e)}_changeDecorationImpl(e,t){const i=this._decorations[e];if(!i)return;if(i.options.after){const a=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(i.options.before){const a=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}const n=this._validateRangeRelaxedNoAllocations(t),s=this._buffer.getOffsetAt(n.startLineNumber,n.startColumn),r=this._buffer.getOffsetAt(n.endLineNumber,n.endColumn);this._decorationsTree.delete(i),i.reset(this.getVersionId(),s,r,n),this._decorationsTree.insert(i),this._onDidChangeDecorations.checkAffectedAndFire(i.options),i.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.endLineNumber),i.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.startLineNumber)}_changeDecorationOptionsImpl(e,t){const i=this._decorations[e];if(!i)return;const n=!!(i.options.overviewRuler&&i.options.overviewRuler.color),s=!!(t.overviewRuler&&t.overviewRuler.color);if(this._onDidChangeDecorations.checkAffectedAndFire(i.options),this._onDidChangeDecorations.checkAffectedAndFire(t),i.options.after||t.after){const l=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.endLineNumber)}if(i.options.before||t.before){const l=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.startLineNumber)}const r=n!==s,a=YX(t)!==F1(i);r||a?(this._decorationsTree.delete(i),i.setOptions(t),this._decorationsTree.insert(i)):i.setOptions(t)}_deltaDecorationsImpl(e,t,i,n=!1){const s=this.getVersionId(),r=t.length;let a=0;const l=i.length;let c=0;this._onDidChangeDecorations.beginDeferredEmit();try{const d=new Array(l);for(;athis._setLanguage(e.languageId,t)),this._setLanguage(e.languageId,t))}_setLanguage(e,t){this.tokenization.setLanguageId(e,t),this._languageService.requestRichLanguageFeatures(e)}getLanguageIdAtPosition(e,t){return this.tokenization.getLanguageIdAtPosition(e,t)}getWordAtPosition(e){return this._tokenizationTextModelPart.getWordAtPosition(e)}getWordUntilPosition(e){return this._tokenizationTextModelPart.getWordUntilPosition(e)}normalizePosition(e,t){return e}getLineIndentColumn(e){return ZX(this.getLineContent(e))+1}},ud=ar,ar._MODEL_SYNC_LIMIT=50*1024*1024,ar.LARGE_FILE_SIZE_THRESHOLD=20*1024*1024,ar.LARGE_FILE_LINE_COUNT_THRESHOLD=300*1e3,ar.LARGE_FILE_HEAP_OPERATION_THRESHOLD=256*1024*1024,ar.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:Qi.tabSize,indentSize:Qi.indentSize,insertSpaces:Qi.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:Qi.trimAutoWhitespace,largeFileOptimizations:Qi.largeFileOptimizations,bracketPairColorizationOptions:Qi.bracketPairColorizationOptions},ar);m_=ud=UX([Gb(4,CT),Gb(5,qt),Gb(6,Gn),Gb(7,ke)],m_);function ZX(o){let e=0;for(const t of o)if(t===" "||t===" ")e++;else break;return e}function zS(o){return!!(o.options.overviewRuler&&o.options.overviewRuler.color)}function YX(o){return!!o.after||!!o.before}function F1(o){return!!o.options.after||!!o.options.before}class WP{constructor(){this._decorationsTree0=new BS,this._decorationsTree1=new BS,this._injectedTextDecorationsTree=new BS}ensureAllNodesHaveRanges(e){this.getAll(e,0,!1,!1,!1)}_ensureNodesHaveRanges(e,t){for(const i of t)i.range===null&&(i.range=e.getRangeAt(i.cachedAbsoluteStart,i.cachedAbsoluteEnd));return t}getAllInInterval(e,t,i,n,s,r){const a=e.getVersionId(),l=this._intervalSearch(t,i,n,s,a,r);return this._ensureNodesHaveRanges(e,l)}_intervalSearch(e,t,i,n,s,r){const a=this._decorationsTree0.intervalSearch(e,t,i,n,s,r),l=this._decorationsTree1.intervalSearch(e,t,i,n,s,r),c=this._injectedTextDecorationsTree.intervalSearch(e,t,i,n,s,r);return a.concat(l).concat(c)}getInjectedTextInInterval(e,t,i,n){const s=e.getVersionId(),r=this._injectedTextDecorationsTree.intervalSearch(t,i,n,!1,s,!1);return this._ensureNodesHaveRanges(e,r).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getAllInjectedText(e,t){const i=e.getVersionId(),n=this._injectedTextDecorationsTree.search(t,!1,i,!1);return this._ensureNodesHaveRanges(e,n).filter(s=>s.options.showIfCollapsed||!s.range.isEmpty())}getAll(e,t,i,n,s){const r=e.getVersionId(),a=this._search(t,i,n,r,s);return this._ensureNodesHaveRanges(e,a)}_search(e,t,i,n,s){if(i)return this._decorationsTree1.search(e,t,n,s);{const r=this._decorationsTree0.search(e,t,n,s),a=this._decorationsTree1.search(e,t,n,s),l=this._injectedTextDecorationsTree.search(e,t,n,s);return r.concat(a).concat(l)}}collectNodesFromOwner(e){const t=this._decorationsTree0.collectNodesFromOwner(e),i=this._decorationsTree1.collectNodesFromOwner(e),n=this._injectedTextDecorationsTree.collectNodesFromOwner(e);return t.concat(i).concat(n)}collectNodesPostOrder(){const e=this._decorationsTree0.collectNodesPostOrder(),t=this._decorationsTree1.collectNodesPostOrder(),i=this._injectedTextDecorationsTree.collectNodesPostOrder();return e.concat(t).concat(i)}insert(e){F1(e)?this._injectedTextDecorationsTree.insert(e):zS(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)}delete(e){F1(e)?this._injectedTextDecorationsTree.delete(e):zS(e)?this._decorationsTree1.delete(e):this._decorationsTree0.delete(e)}getNodeRange(e,t){const i=e.getVersionId();return t.cachedVersionId!==i&&this._resolveNode(t,i),t.range===null&&(t.range=e.getRangeAt(t.cachedAbsoluteStart,t.cachedAbsoluteEnd)),t.range}_resolveNode(e,t){F1(e)?this._injectedTextDecorationsTree.resolveNode(e,t):zS(e)?this._decorationsTree1.resolveNode(e,t):this._decorationsTree0.resolveNode(e,t)}acceptReplace(e,t,i,n){this._decorationsTree0.acceptReplace(e,t,i,n),this._decorationsTree1.acceptReplace(e,t,i,n),this._injectedTextDecorationsTree.acceptReplace(e,t,i,n)}}function Mr(o){return o.replace(/[^a-z0-9\-_]/gi," ")}class v9{constructor(e){this.color=e.color||"",this.darkColor=e.darkColor||""}}class QX extends v9{constructor(e){super(e),this._resolvedColor=null,this.position=typeof e.position=="number"?e.position:LC.Center}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(e,t){if(typeof e=="string")return e;const i=e?t.getColor(e.id):null;return i?i.toString():""}}class XX{constructor(e){this.position=e?.position??Ao.Center,this.persistLane=e?.persistLane}}class JX extends v9{constructor(e){super(e),this.position=e.position,this.sectionHeaderStyle=e.sectionHeaderStyle??null,this.sectionHeaderText=e.sectionHeaderText??null}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(e,t){return typeof e=="string"?q.fromHex(e):t.getColor(e.id)}}class Bc{static from(e){return e instanceof Bc?e:new Bc(e)}constructor(e){this.content=e.content||"",this.inlineClassName=e.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=e.attachedData||null,this.cursorStops=e.cursorStops||null}}class kt{static register(e){return new kt(e)}static createDynamic(e){return new kt(e)}constructor(e){this.description=e.description,this.blockClassName=e.blockClassName?Mr(e.blockClassName):null,this.blockDoesNotCollapse=e.blockDoesNotCollapse??null,this.blockIsAfterEnd=e.blockIsAfterEnd??null,this.blockPadding=e.blockPadding??null,this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?Mr(e.className):null,this.shouldFillLineOnLineBreak=e.shouldFillLineOnLineBreak??null,this.hoverMessage=e.hoverMessage||null,this.glyphMarginHoverMessage=e.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=e.lineNumberHoverMessage||null,this.isWholeLine=e.isWholeLine||!1,this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new QX(e.overviewRuler):null,this.minimap=e.minimap?new JX(e.minimap):null,this.glyphMargin=e.glyphMarginClassName?new XX(e.glyphMargin):null,this.glyphMarginClassName=e.glyphMarginClassName?Mr(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?Mr(e.linesDecorationsClassName):null,this.lineNumberClassName=e.lineNumberClassName?Mr(e.lineNumberClassName):null,this.linesDecorationsTooltip=e.linesDecorationsTooltip?rH(e.linesDecorationsTooltip):null,this.firstLineDecorationClassName=e.firstLineDecorationClassName?Mr(e.firstLineDecorationClassName):null,this.marginClassName=e.marginClassName?Mr(e.marginClassName):null,this.inlineClassName=e.inlineClassName?Mr(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?Mr(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?Mr(e.afterContentClassName):null,this.after=e.after?Bc.from(e.after):null,this.before=e.before?Bc.from(e.before):null,this.hideInCommentTokens=e.hideInCommentTokens??!1,this.hideInStringTokens=e.hideInStringTokens??!1}}kt.EMPTY=kt.register({description:"empty"});const HP=[kt.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),kt.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),kt.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),kt.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function VP(o){return o instanceof kt?o:kt.createDynamic(o)}class eJ extends z{constructor(e){super(),this.handleBeforeFire=e,this._actual=this._register(new A),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._deferredCnt=0,this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._affectsLineNumber=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){this._deferredCnt--,this._deferredCnt===0&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null)}recordLineAffectedByInjectedText(e){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(e)}checkAffectedAndFire(e){this._affectsMinimap||=!!e.minimap?.position,this._affectsOverviewRuler||=!!e.overviewRuler?.color,this._affectsGlyphMargin||=!!e.glyphMarginClassName,this._affectsLineNumber||=!!e.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){this._deferredCnt===0?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines);const e={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler,affectsGlyphMargin:this._affectsGlyphMargin,affectsLineNumber:this._affectsLineNumber};this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._actual.fire(e)}}class tJ extends z{constructor(){super(),this._fastEmitter=this._register(new A),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new A),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(e=null){if(this._deferredCnt--,this._deferredCnt===0&&this._deferredEvent!==null){this._deferredEvent.rawContentChangedEvent.resultingSelection=e;const t=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(t),this._slowEmitter.fire(t)}}fire(e){if(this._deferredCnt>0){this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(e):this._deferredEvent=e;return}this._fastEmitter.fire(e),this._slowEmitter.fire(e)}}var iJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Yb=function(o,e){return function(t,i){e(t,i,o)}},Vu;function sd(o){return o.toString()}let nJ=class{constructor(e,t,i){this.model=e,this._modelEventListeners=new X,this.model=e,this._modelEventListeners.add(e.onWillDispose(()=>t(e))),this._modelEventListeners.add(e.onDidChangeLanguage(n=>i(e,n)))}dispose(){this._modelEventListeners.dispose()}};const sJ=Un||Ue?1:2;class oJ{constructor(e,t,i,n,s,r,a,l){this.uri=e,this.initialUndoRedoSnapshot=t,this.time=i,this.sharesUndoRedoStack=n,this.heapSize=s,this.sha1=r,this.versionId=a,this.alternativeVersionId=l}}var oh;let ID=(oh=class extends z{constructor(e,t,i,n){super(),this._configurationService=e,this._resourcePropertiesService=t,this._undoRedoService=i,this._instantiationService=n,this._onModelAdded=this._register(new A),this.onModelAdded=this._onModelAdded.event,this._onModelRemoved=this._register(new A),this.onModelRemoved=this._onModelRemoved.event,this._onModelModeChanged=this._register(new A),this.onModelLanguageChanged=this._onModelModeChanged.event,this._modelCreationOptionsByLanguageAndResource=Object.create(null),this._models={},this._disposedModels=new Map,this._disposedModelsHeapSize=0,this._register(this._configurationService.onDidChangeConfiguration(s=>this._updateModelOptions(s))),this._updateModelOptions(void 0)}static _readModelOptions(e,t){let i=Qi.tabSize;if(e.editor&&typeof e.editor.tabSize<"u"){const u=parseInt(e.editor.tabSize,10);isNaN(u)||(i=u),i<1&&(i=1)}let n="tabSize";if(e.editor&&typeof e.editor.indentSize<"u"&&e.editor.indentSize!=="tabSize"){const u=parseInt(e.editor.indentSize,10);isNaN(u)||(n=Math.max(u,1))}let s=Qi.insertSpaces;e.editor&&typeof e.editor.insertSpaces<"u"&&(s=e.editor.insertSpaces==="false"?!1:!!e.editor.insertSpaces);let r=sJ;const a=e.eol;a===`\r -`?r=2:a===` -`&&(r=1);let l=Qi.trimAutoWhitespace;e.editor&&typeof e.editor.trimAutoWhitespace<"u"&&(l=e.editor.trimAutoWhitespace==="false"?!1:!!e.editor.trimAutoWhitespace);let c=Qi.detectIndentation;e.editor&&typeof e.editor.detectIndentation<"u"&&(c=e.editor.detectIndentation==="false"?!1:!!e.editor.detectIndentation);let d=Qi.largeFileOptimizations;e.editor&&typeof e.editor.largeFileOptimizations<"u"&&(d=e.editor.largeFileOptimizations==="false"?!1:!!e.editor.largeFileOptimizations);let h=Qi.bracketPairColorizationOptions;return e.editor?.bracketPairColorization&&typeof e.editor.bracketPairColorization=="object"&&(h={enabled:!!e.editor.bracketPairColorization.enabled,independentColorPoolPerBracketType:!!e.editor.bracketPairColorization.independentColorPoolPerBracketType}),{isForSimpleWidget:t,tabSize:i,indentSize:n,insertSpaces:s,detectIndentation:c,defaultEOL:r,trimAutoWhitespace:l,largeFileOptimizations:d,bracketPairColorizationOptions:h}}_getEOL(e,t){if(e)return this._resourcePropertiesService.getEOL(e,t);const i=this._configurationService.getValue("files.eol",{overrideIdentifier:t});return i&&typeof i=="string"&&i!=="auto"?i:Ns===3||Ns===2?` -`:`\r -`}_shouldRestoreUndoStack(){const e=this._configurationService.getValue("files.restoreUndoStack");return typeof e=="boolean"?e:!0}getCreationOptions(e,t,i){const n=typeof e=="string"?e:e.languageId;let s=this._modelCreationOptionsByLanguageAndResource[n+t];if(!s){const r=this._configurationService.getValue("editor",{overrideIdentifier:n,resource:t}),a=this._getEOL(t,n);s=Vu._readModelOptions({editor:r,eol:a},i),this._modelCreationOptionsByLanguageAndResource[n+t]=s}return s}_updateModelOptions(e){const t=this._modelCreationOptionsByLanguageAndResource;this._modelCreationOptionsByLanguageAndResource=Object.create(null);const i=Object.keys(this._models);for(let n=0,s=i.length;ne){const t=[];for(this._disposedModels.forEach(i=>{i.sharesUndoRedoStack||t.push(i)}),t.sort((i,n)=>i.time-n.time);t.length>0&&this._disposedModelsHeapSize>e;){const i=t.shift();this._removeDisposedModel(i.uri),i.initialUndoRedoSnapshot!==null&&this._undoRedoService.restoreSnapshot(i.initialUndoRedoSnapshot)}}}_createModelData(e,t,i,n){const s=this.getCreationOptions(t,i,n),r=this._instantiationService.createInstance(m_,e,t,s,i);if(i&&this._disposedModels.has(sd(i))){const c=this._removeDisposedModel(i),d=this._undoRedoService.getElements(i),h=this._getSHA1Computer(),u=h.canComputeSHA1(r)?h.computeSHA1(r)===c.sha1:!1;if(u||c.sharesUndoRedoStack){for(const f of d.past)Ja(f)&&f.matchesResource(i)&&f.setModel(r);for(const f of d.future)Ja(f)&&f.matchesResource(i)&&f.setModel(r);this._undoRedoService.setElementsValidFlag(i,!0,f=>Ja(f)&&f.matchesResource(i)),u&&(r._overwriteVersionId(c.versionId),r._overwriteAlternativeVersionId(c.alternativeVersionId),r._overwriteInitialUndoRedoSnapshot(c.initialUndoRedoSnapshot))}else c.initialUndoRedoSnapshot!==null&&this._undoRedoService.restoreSnapshot(c.initialUndoRedoSnapshot)}const a=sd(r.uri);if(this._models[a])throw new Error("ModelService: Cannot add model because it already exists!");const l=new nJ(r,c=>this._onWillDispose(c),(c,d)=>this._onDidChangeLanguage(c,d));return this._models[a]=l,l}createModel(e,t,i,n=!1){let s;return t?s=this._createModelData(e,t,i,n):s=this._createModelData(e,Bs,i,n),this._onModelAdded.fire(s.model),s.model}getModels(){const e=[],t=Object.keys(this._models);for(let i=0,n=t.length;i0||c.future.length>0){for(const d of c.past)Ja(d)&&d.matchesResource(e.uri)&&(s=!0,r+=d.heapSize(e.uri),d.setModel(e.uri));for(const d of c.future)Ja(d)&&d.matchesResource(e.uri)&&(s=!0,r+=d.heapSize(e.uri),d.setModel(e.uri))}}const a=Vu.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK,l=this._getSHA1Computer();if(s)if(!n&&(r>a||!l.canComputeSHA1(e))){const c=i.model.getInitialUndoRedoSnapshot();c!==null&&this._undoRedoService.restoreSnapshot(c)}else this._ensureDisposedModelsHeapSize(a-r),this._undoRedoService.setElementsValidFlag(e.uri,!1,c=>Ja(c)&&c.matchesResource(e.uri)),this._insertDisposedModel(new oJ(e.uri,i.model.getInitialUndoRedoSnapshot(),Date.now(),n,r,l.computeSHA1(e),e.getVersionId(),e.getAlternativeVersionId()));else if(!n){const c=i.model.getInitialUndoRedoSnapshot();c!==null&&this._undoRedoService.restoreSnapshot(c)}delete this._models[t],i.dispose(),delete this._modelCreationOptionsByLanguageAndResource[e.getLanguageId()+e.uri],this._onModelRemoved.fire(e)}_onDidChangeLanguage(e,t){const i=t.oldLanguage,n=e.getLanguageId(),s=this.getCreationOptions(i,e.uri,e.isForSimpleWidget),r=this.getCreationOptions(n,e.uri,e.isForSimpleWidget);Vu._setModelOptionsForModel(e,r,s),this._onModelModeChanged.fire({model:e,oldLanguageId:i})}_getSHA1Computer(){return new ED}},Vu=oh,oh.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK=20*1024*1024,oh);ID=Vu=iJ([Yb(0,lt),Yb(1,p3),Yb(2,CT),Yb(3,ke)],ID);const Fw=class Fw{canComputeSHA1(e){return e.getValueLength()<=Fw.MAX_MODEL_SIZE}computeSHA1(e){const t=new Kx,i=e.createSnapshot();let n;for(;n=i.read();)t.update(n);return t.digest()}};Fw.MAX_MODEL_SIZE=10*1024*1024;let ED=Fw;var ND;(function(o){o[o.PRESERVE=0]="PRESERVE",o[o.LAST=1]="LAST"})(ND||(ND={}));const w9={Quickaccess:"workbench.contributions.quickaccess"};class rJ{constructor(){this.providers=[],this.defaultProvider=void 0}registerQuickAccessProvider(e){return e.prefix.length===0?this.defaultProvider=e:this.providers.push(e),this.providers.sort((t,i)=>i.prefix.length-t.prefix.length),_e(()=>{this.providers.splice(this.providers.indexOf(e),1),this.defaultProvider===e&&(this.defaultProvider=void 0)})}getQuickAccessProviders(){return Ag([this.defaultProvider,...this.providers])}getQuickAccessProvider(e){return e&&this.providers.find(i=>e.startsWith(i.prefix))||void 0||this.defaultProvider}}Bi.add(w9.Quickaccess,new rJ);const aJ={ctrlCmd:!1,alt:!1};var yg;(function(o){o[o.Blur=1]="Blur",o[o.Gesture=2]="Gesture",o[o.Other=3]="Other"})(yg||(yg={}));var jr;(function(o){o[o.NONE=0]="NONE",o[o.FIRST=1]="FIRST",o[o.SECOND=2]="SECOND",o[o.LAST=3]="LAST"})(jr||(jr={}));var yt;(function(o){o[o.First=1]="First",o[o.Second=2]="Second",o[o.Last=3]="Last",o[o.Next=4]="Next",o[o.Previous=5]="Previous",o[o.NextPage=6]="NextPage",o[o.PreviousPage=7]="PreviousPage",o[o.NextSeparator=8]="NextSeparator",o[o.PreviousSeparator=9]="PreviousSeparator"})(yt||(yt={}));var iv;(function(o){o[o.Title=1]="Title",o[o.Inline=2]="Inline"})(iv||(iv={}));const fy=He("quickInputService");var lJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},zP=function(o,e){return function(t,i){e(t,i,o)}};let TD=class extends z{constructor(e,t){super(),this.quickInputService=e,this.instantiationService=t,this.registry=Bi.as(w9.Quickaccess),this.mapProviderToDescriptor=new Map,this.lastAcceptedPickerValues=new Map,this.visibleQuickAccess=void 0}show(e="",t){this.doShowOrPick(e,!1,t)}doShowOrPick(e,t,i){const[n,s]=this.getOrInstantiateProvider(e,i?.enabledProviderPrefixes),r=this.visibleQuickAccess,a=r?.descriptor;if(r&&s&&a===s){e!==s.prefix&&!i?.preserveValue&&(r.picker.value=e),this.adjustValueSelection(r.picker,s,i);return}if(s&&!i?.preserveValue){let g;if(r&&a&&a!==s){const p=r.value.substr(a.prefix.length);p&&(g=`${s.prefix}${p}`)}if(!g){const p=n?.defaultFilterValue;p===ND.LAST?g=this.lastAcceptedPickerValues.get(s):typeof p=="string"&&(g=`${s.prefix}${p}`)}typeof g=="string"&&(e=g)}const l=r?.picker?.valueSelection,c=r?.picker?.value,d=new X,h=d.add(this.quickInputService.createQuickPick({useSeparators:!0}));h.value=e,this.adjustValueSelection(h,s,i),h.placeholder=i?.placeholder??s?.placeholder,h.quickNavigate=i?.quickNavigateConfiguration,h.hideInput=!!h.quickNavigate&&!r,(typeof i?.itemActivation=="number"||i?.quickNavigateConfiguration)&&(h.itemActivation=i?.itemActivation??jr.SECOND),h.contextKey=s?.contextKey,h.filterValue=g=>g.substring(s?s.prefix.length:0);let u;t&&(u=new qN,d.add(J.once(h.onWillAccept)(g=>{g.veto(),h.hide()}))),d.add(this.registerPickerListeners(h,n,s,e,i));const f=d.add(new In);if(n&&d.add(n.provide(h,f.token,i?.providerOptions)),J.once(h.onDidHide)(()=>{h.selectedItems.length===0&&f.cancel(),d.dispose(),u?.complete(h.selectedItems.slice(0))}),h.show(),l&&c===e&&(h.valueSelection=l),t)return u?.p}adjustValueSelection(e,t,i){let n;i?.preserveValue?n=[e.value.length,e.value.length]:n=[t?.prefix.length??0,e.value.length],e.valueSelection=n}registerPickerListeners(e,t,i,n,s){const r=new X,a=this.visibleQuickAccess={picker:e,descriptor:i,value:n};return r.add(_e(()=>{a===this.visibleQuickAccess&&(this.visibleQuickAccess=void 0)})),r.add(e.onDidChangeValue(l=>{const[c]=this.getOrInstantiateProvider(l,s?.enabledProviderPrefixes);c!==t?this.show(l,{enabledProviderPrefixes:s?.enabledProviderPrefixes,preserveValue:!0,providerOptions:s?.providerOptions}):a.value=l})),i&&r.add(e.onDidAccept(()=>{this.lastAcceptedPickerValues.set(i,e.value)})),r}getOrInstantiateProvider(e,t){const i=this.registry.getQuickAccessProvider(e);if(!i||t&&!t?.includes(i.prefix))return[void 0,void 0];let n=this.mapProviderToDescriptor.get(i);return n||(n=this.instantiationService.createInstance(i.ctor),this.mapProviderToDescriptor.set(i,n)),[n,i]}};TD=lJ([zP(0,fy),zP(1,ke)],TD);class nb extends xr{constructor(e){super(),this._onChange=this._register(new A),this.onChange=this._onChange.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._opts=e,this._checked=this._opts.isChecked;const t=["monaco-custom-toggle"];this._opts.icon&&(this._icon=this._opts.icon,t.push(...Ee.asClassNameArray(this._icon))),this._opts.actionClassName&&t.push(...this._opts.actionClassName.split(" ")),this._checked&&t.push("checked"),this.domNode=document.createElement("div"),this._hover=this._register(La().setupManagedHover(e.hoverDelegate??Ks("mouse"),this.domNode,this._opts.title)),this.domNode.classList.add(...t),this._opts.notFocusable||(this.domNode.tabIndex=0),this.domNode.setAttribute("role","checkbox"),this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.setAttribute("aria-label",this._opts.title),this.applyStyles(),this.onclick(this.domNode,i=>{this.enabled&&(this.checked=!this._checked,this._onChange.fire(!1),i.preventDefault())}),this._register(this.ignoreGesture(this.domNode)),this.onkeydown(this.domNode,i=>{if(i.keyCode===10||i.keyCode===3){this.checked=!this._checked,this._onChange.fire(!0),i.preventDefault(),i.stopPropagation();return}this._onKeyDown.fire(i)})}get enabled(){return this.domNode.getAttribute("aria-disabled")!=="true"}focus(){this.domNode.focus()}get checked(){return this._checked}set checked(e){this._checked=e,this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.classList.toggle("checked",this._checked),this.applyStyles()}width(){return 22}applyStyles(){this.domNode&&(this.domNode.style.borderColor=this._checked&&this._opts.inputActiveOptionBorder||"",this.domNode.style.color=this._checked&&this._opts.inputActiveOptionForeground||"inherit",this.domNode.style.backgroundColor=this._checked&&this._opts.inputActiveOptionBackground||"")}enable(){this.domNode.setAttribute("aria-disabled",String(!1))}disable(){this.domNode.setAttribute("aria-disabled",String(!0))}}var cJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};class y9{constructor(e){this.nodes=e}toString(){return this.nodes.map(e=>typeof e=="string"?e:e.label).join("")}}cJ([Jt],y9.prototype,"toString",null);const dJ=/\[([^\]]+)\]\(((?:https?:\/\/|command:|file:)[^\)\s]+)(?: (["'])(.+?)(\3))?\)/gi;function hJ(o){const e=[];let t=0,i;for(;i=dJ.exec(o);){i.index-t>0&&e.push(o.substring(t,i.index));const[,n,s,,r]=i;r?e.push({label:n,href:s,title:r}):e.push({label:n,href:s}),t=i.index+i[0].length}return t{DV(f)&&je.stop(f,!0),t.callback(s.href)},c=t.disposables.add(new ze(a,ee.CLICK)).event,d=t.disposables.add(new ze(a,ee.KEY_DOWN)).event,h=J.chain(d,f=>f.filter(g=>{const p=new Nt(g);return p.equals(10)||p.equals(3)}));t.disposables.add(fn.addTarget(a));const u=t.disposables.add(new ze(a,St.Tap)).event;J.any(c,u,h)(l,null,t.disposables),e.appendChild(a)}}var mJ=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},UP=function(o,e){return function(t,i){e(t,i,o)}};const S9="inQuickInput",pJ=new le(S9,!1,m("inQuickInput","Whether keyboard focus is inside the quick input control")),_J=re.has(S9),L9="quickInputType",bJ=new le(L9,void 0,m("quickInputType","The type of the currently visible quick input")),x9="cursorAtEndOfQuickInputBox",CJ=new le(x9,!1,m("cursorAtEndOfQuickInputBox","Whether the cursor in the quick input is at the end of the input box")),vJ=re.has(x9),MD={iconClass:Ee.asClassName(ie.quickInputBack),tooltip:m("quickInput.back","Back")},Bw=class Bw extends z{constructor(e){super(),this.ui=e,this._widgetUpdated=!1,this.visible=!1,this._enabled=!0,this._busy=!1,this._ignoreFocusOut=!1,this._leftButtons=[],this._rightButtons=[],this._inlineButtons=[],this.buttonsUpdated=!1,this._toggles=[],this.togglesUpdated=!1,this.noValidationMessage=Bw.noPromptMessage,this._severity=Qt.Ignore,this.onDidTriggerButtonEmitter=this._register(new A),this.onDidHideEmitter=this._register(new A),this.onWillHideEmitter=this._register(new A),this.onDisposeEmitter=this._register(new A),this.visibleDisposables=this._register(new X),this.onDidHide=this.onDidHideEmitter.event}get title(){return this._title}set title(e){this._title=e,this.update()}get description(){return this._description}set description(e){this._description=e,this.update()}get step(){return this._steps}set step(e){this._steps=e,this.update()}get totalSteps(){return this._totalSteps}set totalSteps(e){this._totalSteps=e,this.update()}get enabled(){return this._enabled}set enabled(e){this._enabled=e,this.update()}get contextKey(){return this._contextKey}set contextKey(e){this._contextKey=e,this.update()}get busy(){return this._busy}set busy(e){this._busy=e,this.update()}get ignoreFocusOut(){return this._ignoreFocusOut}set ignoreFocusOut(e){const t=this._ignoreFocusOut!==e&&!Tc;this._ignoreFocusOut=e&&!Tc,t&&this.update()}get titleButtons(){return this._leftButtons.length?[...this._leftButtons,this._rightButtons]:this._rightButtons}get buttons(){return[...this._leftButtons,...this._rightButtons,...this._inlineButtons]}set buttons(e){this._leftButtons=e.filter(t=>t===MD),this._rightButtons=e.filter(t=>t!==MD&&t.location!==iv.Inline),this._inlineButtons=e.filter(t=>t.location===iv.Inline),this.buttonsUpdated=!0,this.update()}get toggles(){return this._toggles}set toggles(e){this._toggles=e??[],this.togglesUpdated=!0,this.update()}get validationMessage(){return this._validationMessage}set validationMessage(e){this._validationMessage=e,this.update()}get severity(){return this._severity}set severity(e){this._severity=e,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.onDidTriggerButton(e=>{this.buttons.indexOf(e)!==-1&&this.onDidTriggerButtonEmitter.fire(e)})),this.ui.show(this),this.visible=!0,this._lastValidationMessage=void 0,this._lastSeverity=void 0,this.buttons.length&&(this.buttonsUpdated=!0),this.toggles.length&&(this.togglesUpdated=!0),this.update())}hide(){this.visible&&this.ui.hide()}didHide(e=yg.Other){this.visible=!1,this.visibleDisposables.clear(),this.onDidHideEmitter.fire({reason:e})}willHide(e=yg.Other){this.onWillHideEmitter.fire({reason:e})}update(){if(!this.visible)return;const e=this.getTitle();e&&this.ui.title.textContent!==e?this.ui.title.textContent=e:!e&&this.ui.title.innerHTML!==" "&&(this.ui.title.innerText=" ");const t=this.getDescription();if(this.ui.description1.textContent!==t&&(this.ui.description1.textContent=t),this.ui.description2.textContent!==t&&(this.ui.description2.textContent=t),this._widgetUpdated&&(this._widgetUpdated=!1,this._widget?un(this.ui.widget,this._widget):un(this.ui.widget)),this.busy&&!this.busyDelay&&(this.busyDelay=new wr,this.busyDelay.setIfNotSet(()=>{this.visible&&this.ui.progressBar.infinite()},800)),!this.busy&&this.busyDelay&&(this.ui.progressBar.stop(),this.busyDelay.cancel(),this.busyDelay=void 0),this.buttonsUpdated){this.buttonsUpdated=!1,this.ui.leftActionBar.clear();const n=this._leftButtons.map((a,l)=>rp(a,`id-${l}`,async()=>this.onDidTriggerButtonEmitter.fire(a)));this.ui.leftActionBar.push(n,{icon:!0,label:!1}),this.ui.rightActionBar.clear();const s=this._rightButtons.map((a,l)=>rp(a,`id-${l}`,async()=>this.onDidTriggerButtonEmitter.fire(a)));this.ui.rightActionBar.push(s,{icon:!0,label:!1}),this.ui.inlineActionBar.clear();const r=this._inlineButtons.map((a,l)=>rp(a,`id-${l}`,async()=>this.onDidTriggerButtonEmitter.fire(a)));this.ui.inlineActionBar.push(r,{icon:!0,label:!1})}if(this.togglesUpdated){this.togglesUpdated=!1;const n=this.toggles?.filter(s=>s instanceof nb)??[];this.ui.inputBox.toggles=n}this.ui.ignoreFocusOut=this.ignoreFocusOut,this.ui.setEnabled(this.enabled),this.ui.setContextKey(this.contextKey);const i=this.validationMessage||this.noValidationMessage;this._lastValidationMessage!==i&&(this._lastValidationMessage=i,un(this.ui.message),gJ(i,this.ui.message,{callback:n=>{this.ui.linkOpenerDelegate(n)},disposables:this.visibleDisposables})),this._lastSeverity!==this.severity&&(this._lastSeverity=this.severity,this.showMessageDecoration(this.severity))}getTitle(){return this.title&&this.step?`${this.title} (${this.getSteps()})`:this.title?this.title:this.step?this.getSteps():""}getDescription(){return this.description||""}getSteps(){return this.step&&this.totalSteps?m("quickInput.steps","{0}/{1}",this.step,this.totalSteps):this.step?String(this.step):""}showMessageDecoration(e){if(this.ui.inputBox.showDecoration(e),e!==Qt.Ignore){const t=this.ui.inputBox.stylesForType(e);this.ui.message.style.color=t.foreground?`${t.foreground}`:"",this.ui.message.style.backgroundColor=t.background?`${t.background}`:"",this.ui.message.style.border=t.border?`1px solid ${t.border}`:"",this.ui.message.style.marginBottom="-2px"}else this.ui.message.style.color="",this.ui.message.style.backgroundColor="",this.ui.message.style.border="",this.ui.message.style.marginBottom=""}dispose(){this.hide(),this.onDisposeEmitter.fire(),super.dispose()}};Bw.noPromptMessage=m("inputModeEntry","Press 'Enter' to confirm your input or 'Escape' to cancel");let nv=Bw;const Ww=class Ww extends nv{constructor(){super(...arguments),this._value="",this.onDidChangeValueEmitter=this._register(new A),this.onWillAcceptEmitter=this._register(new A),this.onDidAcceptEmitter=this._register(new A),this.onDidCustomEmitter=this._register(new A),this._items=[],this.itemsUpdated=!1,this._canSelectMany=!1,this._canAcceptInBackground=!1,this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._matchOnLabelMode="fuzzy",this._sortByLabel=!0,this._keepScrollPosition=!1,this._itemActivation=jr.FIRST,this._activeItems=[],this.activeItemsUpdated=!1,this.activeItemsToConfirm=[],this.onDidChangeActiveEmitter=this._register(new A),this._selectedItems=[],this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=[],this.onDidChangeSelectionEmitter=this._register(new A),this.onDidTriggerItemButtonEmitter=this._register(new A),this.onDidTriggerSeparatorButtonEmitter=this._register(new A),this.valueSelectionUpdated=!0,this._ok="default",this._customButton=!1,this._focusEventBufferer=new W_,this.type="quickPick",this.filterValue=e=>e,this.onDidChangeValue=this.onDidChangeValueEmitter.event,this.onWillAccept=this.onWillAcceptEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event,this.onDidChangeActive=this.onDidChangeActiveEmitter.event,this.onDidChangeSelection=this.onDidChangeSelectionEmitter.event,this.onDidTriggerItemButton=this.onDidTriggerItemButtonEmitter.event,this.onDidTriggerSeparatorButton=this.onDidTriggerSeparatorButtonEmitter.event}get quickNavigate(){return this._quickNavigate}set quickNavigate(e){this._quickNavigate=e,this.update()}get value(){return this._value}set value(e){this.doSetValue(e)}doSetValue(e,t){this._value!==e&&(this._value=e,t||this.update(),this.visible&&this.ui.list.filter(this.filterValue(this._value))&&this.trySelectFirst(),this.onDidChangeValueEmitter.fire(this._value))}set ariaLabel(e){this._ariaLabel=e,this.update()}get ariaLabel(){return this._ariaLabel}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.update()}get items(){return this._items}get scrollTop(){return this.ui.list.scrollTop}set scrollTop(e){this.ui.list.scrollTop=e}set items(e){this._items=e,this.itemsUpdated=!0,this.update()}get canSelectMany(){return this._canSelectMany}set canSelectMany(e){this._canSelectMany=e,this.update()}get canAcceptInBackground(){return this._canAcceptInBackground}set canAcceptInBackground(e){this._canAcceptInBackground=e}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(e){this._matchOnDescription=e,this.update()}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(e){this._matchOnDetail=e,this.update()}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(e){this._matchOnLabel=e,this.update()}get matchOnLabelMode(){return this._matchOnLabelMode}set matchOnLabelMode(e){this._matchOnLabelMode=e,this.update()}get sortByLabel(){return this._sortByLabel}set sortByLabel(e){this._sortByLabel=e,this.update()}get keepScrollPosition(){return this._keepScrollPosition}set keepScrollPosition(e){this._keepScrollPosition=e}get itemActivation(){return this._itemActivation}set itemActivation(e){this._itemActivation=e}get activeItems(){return this._activeItems}set activeItems(e){this._activeItems=e,this.activeItemsUpdated=!0,this.update()}get selectedItems(){return this._selectedItems}set selectedItems(e){this._selectedItems=e,this.selectedItemsUpdated=!0,this.update()}get keyMods(){return this._quickNavigate?aJ:this.ui.keyMods}get valueSelection(){const e=this.ui.inputBox.getSelection();if(e)return[e.start,e.end]}set valueSelection(e){this._valueSelection=e,this.valueSelectionUpdated=!0,this.update()}get customButton(){return this._customButton}set customButton(e){this._customButton=e,this.update()}get customLabel(){return this._customButtonLabel}set customLabel(e){this._customButtonLabel=e,this.update()}get customHover(){return this._customButtonHover}set customHover(e){this._customButtonHover=e,this.update()}get ok(){return this._ok}set ok(e){this._ok=e,this.update()}get hideInput(){return!!this._hideInput}set hideInput(e){this._hideInput=e,this.update()}trySelectFirst(){this.canSelectMany||this.ui.list.focus(yt.First)}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(e=>{this.doSetValue(e,!0)})),this.visibleDisposables.add(this.ui.onDidAccept(()=>{this.canSelectMany?this.ui.list.getCheckedElements().length||(this._selectedItems=[],this.onDidChangeSelectionEmitter.fire(this.selectedItems)):this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems)),this.handleAccept(!1)})),this.visibleDisposables.add(this.ui.onDidCustom(()=>{this.onDidCustomEmitter.fire()})),this.visibleDisposables.add(this._focusEventBufferer.wrapEvent(this.ui.list.onDidChangeFocus,(e,t)=>t)(e=>{this.activeItemsUpdated||this.activeItemsToConfirm!==this._activeItems&&li(e,this._activeItems,(t,i)=>t===i)||(this._activeItems=e,this.onDidChangeActiveEmitter.fire(e))})),this.visibleDisposables.add(this.ui.list.onDidChangeSelection(({items:e,event:t})=>{if(this.canSelectMany){e.length&&this.ui.list.setSelectedElements([]);return}this.selectedItemsToConfirm!==this._selectedItems&&li(e,this._selectedItems,(i,n)=>i===n)||(this._selectedItems=e,this.onDidChangeSelectionEmitter.fire(e),e.length&&this.handleAccept(tT(t)&&t.button===1))})),this.visibleDisposables.add(this.ui.list.onChangedCheckedElements(e=>{!this.canSelectMany||!this.visible||this.selectedItemsToConfirm!==this._selectedItems&&li(e,this._selectedItems,(t,i)=>t===i)||(this._selectedItems=e,this.onDidChangeSelectionEmitter.fire(e))})),this.visibleDisposables.add(this.ui.list.onButtonTriggered(e=>this.onDidTriggerItemButtonEmitter.fire(e))),this.visibleDisposables.add(this.ui.list.onSeparatorButtonTriggered(e=>this.onDidTriggerSeparatorButtonEmitter.fire(e))),this.visibleDisposables.add(this.registerQuickNavigation()),this.valueSelectionUpdated=!0),super.show()}handleAccept(e){let t=!1;this.onWillAcceptEmitter.fire({veto:()=>t=!0}),t||this.onDidAcceptEmitter.fire({inBackground:e})}registerQuickNavigation(){return U(this.ui.container,ee.KEY_UP,e=>{if(this.canSelectMany||!this._quickNavigate)return;const t=new Nt(e),i=t.keyCode;this._quickNavigate.keybindings.some(r=>{const a=r.getChords();return a.length>1?!1:a[0].shiftKey&&i===4?!(t.ctrlKey||t.altKey||t.metaKey):!!(a[0].altKey&&i===6||a[0].ctrlKey&&i===5||a[0].metaKey&&i===57)})&&(this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(!1)),this._quickNavigate=void 0)})}update(){if(!this.visible)return;const e=this.keepScrollPosition?this.scrollTop:0,t=!!this.description,i={title:!!this.title||!!this.step||!!this.titleButtons.length,description:t,checkAll:this.canSelectMany&&!this._hideCheckAll,checkBox:this.canSelectMany,inputBox:!this._hideInput,progressBar:!this._hideInput||t,visibleCount:!0,count:this.canSelectMany&&!this._hideCountBadge,ok:this.ok==="default"?this.canSelectMany:this.ok,list:!0,message:!!this.validationMessage,customButton:this.customButton};this.ui.setVisibilities(i),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||"");let n=this.ariaLabel;!n&&i.inputBox&&(n=this.placeholder||Ww.DEFAULT_ARIA_LABEL,this.title&&(n+=` - ${this.title}`)),this.ui.list.ariaLabel!==n&&(this.ui.list.ariaLabel=n??null),this.ui.list.matchOnDescription=this.matchOnDescription,this.ui.list.matchOnDetail=this.matchOnDetail,this.ui.list.matchOnLabel=this.matchOnLabel,this.ui.list.matchOnLabelMode=this.matchOnLabelMode,this.ui.list.sortByLabel=this.sortByLabel,this.itemsUpdated&&(this.itemsUpdated=!1,this._focusEventBufferer.bufferEvents(()=>{switch(this.ui.list.setElements(this.items),this.ui.list.shouldLoop=!this.canSelectMany,this.ui.list.filter(this.filterValue(this.ui.inputBox.value)),this._itemActivation){case jr.NONE:this._itemActivation=jr.FIRST;break;case jr.SECOND:this.ui.list.focus(yt.Second),this._itemActivation=jr.FIRST;break;case jr.LAST:this.ui.list.focus(yt.Last),this._itemActivation=jr.FIRST;break;default:this.trySelectFirst();break}})),this.ui.container.classList.contains("show-checkboxes")!==!!this.canSelectMany&&(this.canSelectMany?this.ui.list.clearFocus():this.trySelectFirst()),this.activeItemsUpdated&&(this.activeItemsUpdated=!1,this.activeItemsToConfirm=this._activeItems,this.ui.list.setFocusedElements(this.activeItems),this.activeItemsToConfirm===this._activeItems&&(this.activeItemsToConfirm=null)),this.selectedItemsUpdated&&(this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=this._selectedItems,this.canSelectMany?this.ui.list.setCheckedElements(this.selectedItems):this.ui.list.setSelectedElements(this.selectedItems),this.selectedItemsToConfirm===this._selectedItems&&(this.selectedItemsToConfirm=null)),this.ui.customButton.label=this.customLabel||"",this.ui.customButton.element.title=this.customHover||"",i.inputBox||(this.ui.list.domFocus(),this.canSelectMany&&this.ui.list.focus(yt.First)),this.keepScrollPosition&&(this.scrollTop=e)}focus(e){this.ui.list.focus(e),this.canSelectMany&&this.ui.list.domFocus()}accept(e){e&&!this._canAcceptInBackground||this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(e??!1))}};Ww.DEFAULT_ARIA_LABEL=m("quickInputBox.ariaLabel","Type to narrow down results.");let sv=Ww,wJ=class extends nv{constructor(){super(...arguments),this._value="",this.valueSelectionUpdated=!0,this._password=!1,this.onDidValueChangeEmitter=this._register(new A),this.onDidAcceptEmitter=this._register(new A),this.type="inputBox",this.onDidChangeValue=this.onDidValueChangeEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event}get value(){return this._value}set value(e){this._value=e||"",this.update()}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.update()}get password(){return this._password}set password(e){this._password=e,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(e=>{e!==this.value&&(this._value=e,this.onDidValueChangeEmitter.fire(e))})),this.visibleDisposables.add(this.ui.onDidAccept(()=>this.onDidAcceptEmitter.fire())),this.valueSelectionUpdated=!0),super.show()}update(){if(!this.visible)return;this.ui.container.classList.remove("hidden-input");const e={title:!!this.title||!!this.step||!!this.titleButtons.length,description:!!this.description||!!this.step,inputBox:!0,message:!0,progressBar:!0};this.ui.setVisibilities(e),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||""),this.ui.inputBox.password!==this.password&&(this.ui.inputBox.password=this.password)}},RD=class extends gg{constructor(e,t){super("element",!1,i=>this.getOverrideOptions(i),e,t)}getOverrideOptions(e){const t=(Ei(e.content)?e.content.textContent??"":typeof e.content=="string"?e.content:e.content.value).includes(` -`);return{persistence:{hideOnKeyDown:!1},appearance:{showHoverHint:t,skipFadeInAnimation:!0}}}};RD=mJ([UP(0,lt),UP(1,au)],RD);q.white.toString(),q.white.toString();class AD extends z{get onDidClick(){return this._onDidClick.event}constructor(e,t){super(),this._label="",this._onDidClick=this._register(new A),this._onDidEscape=this._register(new A),this.options=t,this._element=document.createElement("a"),this._element.classList.add("monaco-button"),this._element.tabIndex=0,this._element.setAttribute("role","button"),this._element.classList.toggle("secondary",!!t.secondary);const i=t.secondary?t.buttonSecondaryBackground:t.buttonBackground,n=t.secondary?t.buttonSecondaryForeground:t.buttonForeground;this._element.style.color=n||"",this._element.style.backgroundColor=i||"",t.supportShortLabel&&(this._labelShortElement=document.createElement("div"),this._labelShortElement.classList.add("monaco-button-label-short"),this._element.appendChild(this._labelShortElement),this._labelElement=document.createElement("div"),this._labelElement.classList.add("monaco-button-label"),this._element.appendChild(this._labelElement),this._element.classList.add("monaco-text-button-with-short-label")),typeof t.title=="string"&&this.setTitle(t.title),typeof t.ariaLabel=="string"&&this._element.setAttribute("aria-label",t.ariaLabel),e.appendChild(this._element),this._register(fn.addTarget(this._element)),[ee.CLICK,St.Tap].forEach(s=>{this._register(U(this._element,s,r=>{if(!this.enabled){je.stop(r);return}this._onDidClick.fire(r)}))}),this._register(U(this._element,ee.KEY_DOWN,s=>{const r=new Nt(s);let a=!1;this.enabled&&(r.equals(3)||r.equals(10))?(this._onDidClick.fire(s),a=!0):r.equals(9)&&(this._onDidEscape.fire(s),this._element.blur(),a=!0),a&&je.stop(r,!0)})),this._register(U(this._element,ee.MOUSE_OVER,s=>{this._element.classList.contains("disabled")||this.updateBackground(!0)})),this._register(U(this._element,ee.MOUSE_OUT,s=>{this.updateBackground(!1)})),this.focusTracker=this._register(Ph(this._element)),this._register(this.focusTracker.onDidFocus(()=>{this.enabled&&this.updateBackground(!0)})),this._register(this.focusTracker.onDidBlur(()=>{this.enabled&&this.updateBackground(!1)}))}dispose(){super.dispose(),this._element.remove()}getContentElements(e){const t=[];for(let i of Qd(e))if(typeof i=="string"){if(i=i.trim(),i==="")continue;const n=document.createElement("span");n.textContent=i,t.push(n)}else t.push(i);return t}updateBackground(e){let t;this.options.secondary?t=e?this.options.buttonSecondaryHoverBackground:this.options.buttonSecondaryBackground:t=e?this.options.buttonHoverBackground:this.options.buttonBackground,t&&(this._element.style.backgroundColor=t)}get element(){return this._element}set label(e){if(this._label===e||ra(this._label)&&ra(e)&&Xq(this._label,e))return;this._element.classList.add("monaco-text-button");const t=this.options.supportShortLabel?this._labelElement:this._element;if(ra(e)){const n=oy(e,{inline:!0});n.dispose();const s=n.element.querySelector("p")?.innerHTML;if(s){const r=IF(s,{ADD_TAGS:["b","i","u","code","span"],ALLOWED_ATTR:["class"],RETURN_TRUSTED_TYPE:!0});t.innerHTML=r}else un(t)}else this.options.supportIcons?un(t,...this.getContentElements(e)):t.textContent=e;let i="";typeof this.options.title=="string"?i=this.options.title:this.options.title&&(i=cG(e)),this.setTitle(i),typeof this.options.ariaLabel=="string"?this._element.setAttribute("aria-label",this.options.ariaLabel):this.options.ariaLabel&&this._element.setAttribute("aria-label",i),this._label=e}get label(){return this._label}set icon(e){this._element.classList.add(...Ee.asClassNameArray(e))}set enabled(e){e?(this._element.classList.remove("disabled"),this._element.setAttribute("aria-disabled",String(!1)),this._element.tabIndex=0):(this._element.classList.add("disabled"),this._element.setAttribute("aria-disabled",String(!0)))}get enabled(){return!this._element.classList.contains("disabled")}setTitle(e){!this._hover&&e!==""?this._hover=this._register(La().setupManagedHover(this.options.hoverDelegate??Ks("mouse"),this._element,e)):this._hover&&this._hover.update(e)}}class PD{constructor(e,t,i){this.options=t,this.styles=i,this.count=0,this.element=Z(e,ce(".monaco-count-badge")),this.countFormat=this.options.countFormat||"{0}",this.titleFormat=this.options.titleFormat||"",this.setCount(this.options.count||0)}setCount(e){this.count=e,this.render()}setTitleFormat(e){this.titleFormat=e,this.render()}render(){this.element.textContent=$p(this.countFormat,this.count),this.element.title=$p(this.titleFormat,this.count),this.element.style.backgroundColor=this.styles.badgeBackground??"",this.element.style.color=this.styles.badgeForeground??"",this.styles.badgeBorder&&(this.element.style.border=`1px solid ${this.styles.badgeBorder}`)}}const $P="done",KP="active",$S="infinite",KS="infinite-long-running",jP="discrete",Hw=class Hw extends z{constructor(e,t){super(),this.progressSignal=this._register(new Dn),this.workedVal=0,this.showDelayedScheduler=this._register(new ci(()=>ns(this.element),0)),this.longRunningScheduler=this._register(new ci(()=>this.infiniteLongRunning(),Hw.LONG_RUNNING_INFINITE_THRESHOLD)),this.create(e,t)}create(e,t){this.element=document.createElement("div"),this.element.classList.add("monaco-progress-container"),this.element.setAttribute("role","progressbar"),this.element.setAttribute("aria-valuemin","0"),e.appendChild(this.element),this.bit=document.createElement("div"),this.bit.classList.add("progress-bit"),this.bit.style.backgroundColor=t?.progressBarBackground||"#0E70C0",this.element.appendChild(this.bit)}off(){this.bit.style.width="inherit",this.bit.style.opacity="1",this.element.classList.remove(KP,$S,KS,jP),this.workedVal=0,this.totalWork=void 0,this.longRunningScheduler.cancel(),this.progressSignal.clear()}stop(){return this.doDone(!1)}doDone(e){return this.element.classList.add($P),this.element.classList.contains($S)?(this.bit.style.opacity="0",e?setTimeout(()=>this.off(),200):this.off()):(this.bit.style.width="inherit",e?setTimeout(()=>this.off(),200):this.off()),this}infinite(){return this.bit.style.width="2%",this.bit.style.opacity="1",this.element.classList.remove(jP,$P,KS),this.element.classList.add(KP,$S),this.longRunningScheduler.schedule(),this}infiniteLongRunning(){this.element.classList.add(KS)}getContainer(){return this.element}};Hw.LONG_RUNNING_INFINITE_THRESHOLD=1e4;let OD=Hw;const yJ=m("caseDescription","Match Case"),SJ=m("wordsDescription","Match Whole Word"),LJ=m("regexDescription","Use Regular Expression");class xJ extends nb{constructor(e){super({icon:ie.caseSensitive,title:yJ+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class kJ extends nb{constructor(e){super({icon:ie.wholeWord,title:SJ+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class DJ extends nb{constructor(e){super({icon:ie.regex,title:LJ+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class IJ{constructor(e,t=0,i=e.length,n=t-1){this.items=e,this.start=t,this.end=i,this.index=n}current(){return this.index===this.start-1||this.index===this.end?null:this.items[this.index]}next(){return this.index=Math.min(this.index+1,this.end),this.current()}previous(){return this.index=Math.max(this.index-1,this.start-1),this.current()}first(){return this.index=this.start,this.current()}last(){return this.index=this.end-1,this.current()}}class EJ{constructor(e=[],t=10){this._initialize(e),this._limit=t,this._onChange()}getHistory(){return this._elements}add(e){this._history.delete(e),this._history.add(e),this._onChange()}next(){return this._navigator.next()}previous(){return this._currentPosition()!==0?this._navigator.previous():null}current(){return this._navigator.current()}first(){return this._navigator.first()}last(){return this._navigator.last()}isLast(){return this._currentPosition()>=this._elements.length-1}isNowhere(){return this._navigator.current()===null}has(e){return this._history.has(e)}_onChange(){this._reduceToLimit();const e=this._elements;this._navigator=new IJ(e,0,e.length,e.length)}_reduceToLimit(){const e=this._elements;e.length>this._limit&&this._initialize(e.slice(e.length-this._limit))}_currentPosition(){const e=this._navigator.current();return e?this._elements.indexOf(e):-1}_initialize(e){this._history=new Set;for(const t of e)this._history.add(t)}get _elements(){const e=[];return this._history.forEach(t=>e.push(t)),e}}const bm=ce;class NJ extends xr{constructor(e,t,i){super(),this.state="idle",this.maxHeight=Number.POSITIVE_INFINITY,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._onDidHeightChange=this._register(new A),this.onDidHeightChange=this._onDidHeightChange.event,this.contextViewProvider=t,this.options=i,this.message=null,this.placeholder=this.options.placeholder||"",this.tooltip=this.options.tooltip??(this.placeholder||""),this.ariaLabel=this.options.ariaLabel||"",this.options.validationOptions&&(this.validation=this.options.validationOptions.validation),this.element=Z(e,bm(".monaco-inputbox.idle"));const n=this.options.flexibleHeight?"textarea":"input",s=Z(this.element,bm(".ibwrapper"));if(this.input=Z(s,bm(n+".input.empty")),this.input.setAttribute("autocorrect","off"),this.input.setAttribute("autocapitalize","off"),this.input.setAttribute("spellcheck","false"),this.onfocus(this.input,()=>this.element.classList.add("synthetic-focus")),this.onblur(this.input,()=>this.element.classList.remove("synthetic-focus")),this.options.flexibleHeight){this.maxHeight=typeof this.options.flexibleMaxHeight=="number"?this.options.flexibleMaxHeight:Number.POSITIVE_INFINITY,this.mirror=Z(s,bm("div.mirror")),this.mirror.innerText=" ",this.scrollableElement=new J3(this.element,{vertical:1}),this.options.flexibleWidth&&(this.input.setAttribute("wrap","off"),this.mirror.style.whiteSpace="pre",this.mirror.style.wordWrap="initial"),Z(e,this.scrollableElement.getDomNode()),this._register(this.scrollableElement),this._register(this.scrollableElement.onScroll(l=>this.input.scrollTop=l.scrollTop));const r=this._register(new ze(e.ownerDocument,"selectionchange")),a=J.filter(r.event,()=>e.ownerDocument.getSelection()?.anchorNode===s);this._register(a(this.updateScrollDimensions,this)),this._register(this.onDidHeightChange(this.updateScrollDimensions,this))}else this.input.type=this.options.type||"text",this.input.setAttribute("wrap","off");this.ariaLabel&&this.input.setAttribute("aria-label",this.ariaLabel),this.placeholder&&!this.options.showPlaceholderOnFocus&&this.setPlaceHolder(this.placeholder),this.tooltip&&this.setTooltip(this.tooltip),this.oninput(this.input,()=>this.onValueChange()),this.onblur(this.input,()=>this.onBlur()),this.onfocus(this.input,()=>this.onFocus()),this._register(this.ignoreGesture(this.input)),setTimeout(()=>this.updateMirror(),0),this.options.actions&&(this.actionbar=this._register(new oo(this.element)),this.actionbar.push(this.options.actions,{icon:!0,label:!1})),this.applyStyles()}onBlur(){this._hideMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder","")}onFocus(){this._showMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder",this.placeholder||"")}setPlaceHolder(e){this.placeholder=e,this.input.setAttribute("placeholder",e)}setTooltip(e){this.tooltip=e,this.hover?this.hover.update(e):this.hover=this._register(La().setupManagedHover(Ks("mouse"),this.input,e))}get inputElement(){return this.input}get value(){return this.input.value}set value(e){this.input.value!==e&&(this.input.value=e,this.onValueChange())}get height(){return typeof this.cachedHeight=="number"?this.cachedHeight:Hd(this.element)}focus(){this.input.focus()}blur(){this.input.blur()}hasFocus(){return M0(this.input)}select(e=null){this.input.select(),e&&(this.input.setSelectionRange(e.start,e.end),e.end===this.input.value.length&&(this.input.scrollLeft=this.input.scrollWidth))}isSelectionAtEnd(){return this.input.selectionEnd===this.input.value.length&&this.input.selectionStart===this.input.selectionEnd}getSelection(){const e=this.input.selectionStart;if(e===null)return null;const t=this.input.selectionEnd??e;return{start:e,end:t}}enable(){this.input.removeAttribute("disabled")}disable(){this.blur(),this.input.disabled=!0,this._hideMessage()}set paddingRight(e){this.input.style.width=`calc(100% - ${e}px)`,this.mirror&&(this.mirror.style.paddingRight=e+"px")}updateScrollDimensions(){if(typeof this.cachedContentHeight!="number"||typeof this.cachedHeight!="number"||!this.scrollableElement)return;const e=this.cachedContentHeight,t=this.cachedHeight,i=this.input.scrollTop;this.scrollableElement.setScrollDimensions({scrollHeight:e,height:t}),this.scrollableElement.setScrollPosition({scrollTop:i})}showMessage(e,t){if(this.state==="open"&&as(this.message,e))return;this.message=e,this.element.classList.remove("idle"),this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add(this.classForType(e.type));const i=this.stylesForType(this.message.type);this.element.style.border=`1px solid ${vl(i.border,"transparent")}`,this.message.content&&(this.hasFocus()||t)&&this._showMessage()}hideMessage(){this.message=null,this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add("idle"),this._hideMessage(),this.applyStyles()}validate(){let e=null;return this.validation&&(e=this.validation(this.value),e?(this.inputElement.setAttribute("aria-invalid","true"),this.showMessage(e)):this.inputElement.hasAttribute("aria-invalid")&&(this.inputElement.removeAttribute("aria-invalid"),this.hideMessage())),e?.type}stylesForType(e){const t=this.options.inputBoxStyles;switch(e){case 1:return{border:t.inputValidationInfoBorder,background:t.inputValidationInfoBackground,foreground:t.inputValidationInfoForeground};case 2:return{border:t.inputValidationWarningBorder,background:t.inputValidationWarningBackground,foreground:t.inputValidationWarningForeground};default:return{border:t.inputValidationErrorBorder,background:t.inputValidationErrorBackground,foreground:t.inputValidationErrorForeground}}}classForType(e){switch(e){case 1:return"info";case 2:return"warning";default:return"error"}}_showMessage(){if(!this.contextViewProvider||!this.message)return;let e;const t=()=>e.style.width=qp(this.element)+"px";this.contextViewProvider.showContextView({getAnchor:()=>this.element,anchorAlignment:1,render:n=>{if(!this.message)return null;e=Z(n,bm(".monaco-inputbox-container")),t();const s={inline:!0,className:"monaco-inputbox-message"},r=this.message.formatContent?Cq(this.message.content,s):bq(this.message.content,s);r.classList.add(this.classForType(this.message.type));const a=this.stylesForType(this.message.type);return r.style.backgroundColor=a.background??"",r.style.color=a.foreground??"",r.style.border=a.border?`1px solid ${a.border}`:"",Z(e,r),null},onHide:()=>{this.state="closed"},layout:t});let i;this.message.type===3?i=m("alertErrorMessage","Error: {0}",this.message.content):this.message.type===2?i=m("alertWarningMessage","Warning: {0}",this.message.content):i=m("alertInfoMessage","Info: {0}",this.message.content),El(i),this.state="open"}_hideMessage(){this.contextViewProvider&&(this.state==="open"&&this.contextViewProvider.hideContextView(),this.state="idle")}onValueChange(){this._onDidChange.fire(this.value),this.validate(),this.updateMirror(),this.input.classList.toggle("empty",!this.value),this.state==="open"&&this.contextViewProvider&&this.contextViewProvider.layout()}updateMirror(){if(!this.mirror)return;const e=this.value,i=e.charCodeAt(e.length-1)===10?" ":"";(e+i).replace(/\u000c/g,"")?this.mirror.textContent=e+i:this.mirror.innerText=" ",this.layout()}applyStyles(){const e=this.options.inputBoxStyles,t=e.inputBackground??"",i=e.inputForeground??"",n=e.inputBorder??"";this.element.style.backgroundColor=t,this.element.style.color=i,this.input.style.backgroundColor="inherit",this.input.style.color=i,this.element.style.border=`1px solid ${vl(n,"transparent")}`}layout(){if(!this.mirror)return;const e=this.cachedContentHeight;this.cachedContentHeight=Hd(this.mirror),e!==this.cachedContentHeight&&(this.cachedHeight=Math.min(this.cachedContentHeight,this.maxHeight),this.input.style.height=this.cachedHeight+"px",this._onDidHeightChange.fire(this.cachedContentHeight))}insertAtCursor(e){const t=this.inputElement,i=t.selectionStart,n=t.selectionEnd,s=t.value;i!==null&&n!==null&&(this.value=s.substr(0,i)+e+s.substr(n),t.setSelectionRange(i+1,i+1),this.layout())}dispose(){this._hideMessage(),this.message=null,this.actionbar?.dispose(),super.dispose()}}class k9 extends NJ{constructor(e,t,i){const n=m({key:"history.inputbox.hint.suffix.noparens",comment:['Text is the suffix of an input field placeholder coming after the action the input field performs, this will be used when the input field ends in a closing parenthesis ")", for example "Filter (e.g. text, !exclude)". The character inserted into the final string is ⇅ to represent the up and down arrow keys.']}," or {0} for history","⇅"),s=m({key:"history.inputbox.hint.suffix.inparens",comment:['Text is the suffix of an input field placeholder coming after the action the input field performs, this will be used when the input field does NOT end in a closing parenthesis (eg. "Find"). The character inserted into the final string is ⇅ to represent the up and down arrow keys.']}," ({0} for history)","⇅");super(e,t,i),this._onDidFocus=this._register(new A),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new A),this.onDidBlur=this._onDidBlur.event,this.history=new EJ(i.history,100);const r=()=>{if(i.showHistoryHint&&i.showHistoryHint()&&!this.placeholder.endsWith(n)&&!this.placeholder.endsWith(s)&&this.history.getHistory().length){const a=this.placeholder.endsWith(")")?n:s,l=this.placeholder+a;i.showPlaceholderOnFocus&&!M0(this.input)?this.placeholder=l:this.setPlaceHolder(l)}};this.observer=new MutationObserver((a,l)=>{a.forEach(c=>{c.target.textContent||r()})}),this.observer.observe(this.input,{attributeFilter:["class"]}),this.onfocus(this.input,()=>r()),this.onblur(this.input,()=>{const a=l=>{if(this.placeholder.endsWith(l)){const c=this.placeholder.slice(0,this.placeholder.length-l.length);return i.showPlaceholderOnFocus?this.placeholder=c:this.setPlaceHolder(c),!0}else return!1};a(s)||a(n)})}dispose(){super.dispose(),this.observer&&(this.observer.disconnect(),this.observer=void 0)}addToHistory(e){this.value&&(e||this.value!==this.getCurrentValue())&&this.history.add(this.value)}isAtLastInHistory(){return this.history.isLast()}isNowhereInHistory(){return this.history.isNowhere()}showNextValue(){this.history.has(this.value)||this.addToHistory();let e=this.getNextValue();e&&(e=e===this.value?this.getNextValue():e),this.value=e??"",Hh(this.value?this.value:m("clearedInput","Cleared Input"))}showPreviousValue(){this.history.has(this.value)||this.addToHistory();let e=this.getPreviousValue();e&&(e=e===this.value?this.getPreviousValue():e),e&&(this.value=e,Hh(this.value))}setPlaceHolder(e){super.setPlaceHolder(e),this.setTooltip(e)}onBlur(){super.onBlur(),this._onDidBlur.fire()}onFocus(){super.onFocus(),this._onDidFocus.fire()}getCurrentValue(){let e=this.history.current();return e||(e=this.history.last(),this.history.next()),e}getPreviousValue(){return this.history.previous()||this.history.first()}getNextValue(){return this.history.next()}}const TJ=m("defaultLabel","input");class D9 extends xr{constructor(e,t,i){super(),this.fixFocusOnOptionClickEnabled=!0,this.imeSessionInProgress=!1,this.additionalTogglesDisposables=this._register(new Dn),this.additionalToggles=[],this._onDidOptionChange=this._register(new A),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new A),this.onMouseDown=this._onMouseDown.event,this._onInput=this._register(new A),this._onKeyUp=this._register(new A),this._onCaseSensitiveKeyDown=this._register(new A),this.onCaseSensitiveKeyDown=this._onCaseSensitiveKeyDown.event,this._onRegexKeyDown=this._register(new A),this.onRegexKeyDown=this._onRegexKeyDown.event,this._lastHighlightFindOptions=0,this.placeholder=i.placeholder||"",this.validation=i.validation,this.label=i.label||TJ,this.showCommonFindToggles=!!i.showCommonFindToggles;const n=i.appendCaseSensitiveLabel||"",s=i.appendWholeWordsLabel||"",r=i.appendRegexLabel||"",a=i.history||[],l=!!i.flexibleHeight,c=!!i.flexibleWidth,d=i.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new k9(this.domNode,t,{placeholder:this.placeholder||"",ariaLabel:this.label||"",validationOptions:{validation:this.validation},history:a,showHistoryHint:i.showHistoryHint,flexibleHeight:l,flexibleWidth:c,flexibleMaxHeight:d,inputBoxStyles:i.inputBoxStyles}));const h=this._register(QT());if(this.showCommonFindToggles){this.regex=this._register(new DJ({appendTitle:r,isChecked:!1,hoverDelegate:h,...i.toggleStyles})),this._register(this.regex.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.regex.onKeyDown(f=>{this._onRegexKeyDown.fire(f)})),this.wholeWords=this._register(new kJ({appendTitle:s,isChecked:!1,hoverDelegate:h,...i.toggleStyles})),this._register(this.wholeWords.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this.caseSensitive=this._register(new xJ({appendTitle:n,isChecked:!1,hoverDelegate:h,...i.toggleStyles})),this._register(this.caseSensitive.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.caseSensitive.onKeyDown(f=>{this._onCaseSensitiveKeyDown.fire(f)}));const u=[this.caseSensitive.domNode,this.wholeWords.domNode,this.regex.domNode];this.onkeydown(this.domNode,f=>{if(f.equals(15)||f.equals(17)||f.equals(9)){const g=u.indexOf(this.domNode.ownerDocument.activeElement);if(g>=0){let p=-1;f.equals(17)?p=(g+1)%u.length:f.equals(15)&&(g===0?p=u.length-1:p=g-1),f.equals(9)?(u[g].blur(),this.inputBox.focus()):p>=0&&u[p].focus(),je.stop(f,!0)}}})}this.controls=document.createElement("div"),this.controls.className="controls",this.controls.style.display=this.showCommonFindToggles?"":"none",this.caseSensitive&&this.controls.append(this.caseSensitive.domNode),this.wholeWords&&this.controls.appendChild(this.wholeWords.domNode),this.regex&&this.controls.appendChild(this.regex.domNode),this.setAdditionalToggles(i?.additionalToggles),this.controls&&this.domNode.appendChild(this.controls),e?.appendChild(this.domNode),this._register(U(this.inputBox.inputElement,"compositionstart",u=>{this.imeSessionInProgress=!0})),this._register(U(this.inputBox.inputElement,"compositionend",u=>{this.imeSessionInProgress=!1,this._onInput.fire()})),this.onkeydown(this.inputBox.inputElement,u=>this._onKeyDown.fire(u)),this.onkeyup(this.inputBox.inputElement,u=>this._onKeyUp.fire(u)),this.oninput(this.inputBox.inputElement,u=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,u=>this._onMouseDown.fire(u))}get onDidChange(){return this.inputBox.onDidChange}layout(e){this.inputBox.layout(),this.updateInputBoxPadding(e.collapsedFindWidget)}enable(){this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.regex?.enable(),this.wholeWords?.enable(),this.caseSensitive?.enable();for(const e of this.additionalToggles)e.enable()}disable(){this.domNode.classList.add("disabled"),this.inputBox.disable(),this.regex?.disable(),this.wholeWords?.disable(),this.caseSensitive?.disable();for(const e of this.additionalToggles)e.disable()}setFocusInputOnOptionClick(e){this.fixFocusOnOptionClickEnabled=e}setEnabled(e){e?this.enable():this.disable()}setAdditionalToggles(e){for(const t of this.additionalToggles)t.domNode.remove();this.additionalToggles=[],this.additionalTogglesDisposables.value=new X;for(const t of e??[])this.additionalTogglesDisposables.value.add(t),this.controls.appendChild(t.domNode),this.additionalTogglesDisposables.value.add(t.onChange(i=>{this._onDidOptionChange.fire(i),!i&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus()})),this.additionalToggles.push(t);this.additionalToggles.length>0&&(this.controls.style.display=""),this.updateInputBoxPadding()}updateInputBoxPadding(e=!1){e?this.inputBox.paddingRight=0:this.inputBox.paddingRight=(this.caseSensitive?.width()??0)+(this.wholeWords?.width()??0)+(this.regex?.width()??0)+this.additionalToggles.reduce((t,i)=>t+i.width(),0)}getValue(){return this.inputBox.value}setValue(e){this.inputBox.value!==e&&(this.inputBox.value=e)}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getCaseSensitive(){return this.caseSensitive?.checked??!1}setCaseSensitive(e){this.caseSensitive&&(this.caseSensitive.checked=e)}getWholeWords(){return this.wholeWords?.checked??!1}setWholeWords(e){this.wholeWords&&(this.wholeWords.checked=e)}getRegex(){return this.regex?.checked??!1}setRegex(e){this.regex&&(this.regex.checked=e,this.validate())}focusOnCaseSensitive(){this.caseSensitive?.focus()}highlightFindOptions(){this.domNode.classList.remove("highlight-"+this._lastHighlightFindOptions),this._lastHighlightFindOptions=1-this._lastHighlightFindOptions,this.domNode.classList.add("highlight-"+this._lastHighlightFindOptions)}validate(){this.inputBox.validate()}showMessage(e){this.inputBox.showMessage(e)}clearMessage(){this.inputBox.hideMessage()}}const MJ=ce;class RJ extends z{constructor(e,t,i){super(),this.parent=e,this.onKeyDown=s=>jt(this.findInput.inputBox.inputElement,ee.KEY_DOWN,s),this.onDidChange=s=>this.findInput.onDidChange(s),this.container=Z(this.parent,MJ(".quick-input-box")),this.findInput=this._register(new D9(this.container,void 0,{label:"",inputBoxStyles:t,toggleStyles:i}));const n=this.findInput.inputBox.inputElement;n.role="combobox",n.ariaHasPopup="menu",n.ariaAutoComplete="list",n.ariaExpanded="true"}get value(){return this.findInput.getValue()}set value(e){this.findInput.setValue(e)}select(e=null){this.findInput.inputBox.select(e)}getSelection(){return this.findInput.inputBox.getSelection()}isSelectionAtEnd(){return this.findInput.inputBox.isSelectionAtEnd()}get placeholder(){return this.findInput.inputBox.inputElement.getAttribute("placeholder")||""}set placeholder(e){this.findInput.inputBox.setPlaceHolder(e)}get password(){return this.findInput.inputBox.inputElement.type==="password"}set password(e){this.findInput.inputBox.inputElement.type=e?"password":"text"}set enabled(e){this.findInput.inputBox.inputElement.toggleAttribute("readonly",!e)}set toggles(e){this.findInput.setAdditionalToggles(e)}setAttribute(e,t){this.findInput.inputBox.inputElement.setAttribute(e,t)}showDecoration(e){e===Qt.Ignore?this.findInput.clearMessage():this.findInput.showMessage({type:e===Qt.Info?1:e===Qt.Warning?2:3,content:""})}stylesForType(e){return this.findInput.inputBox.stylesForType(e===Qt.Info?1:e===Qt.Warning?2:3)}setFocus(){this.findInput.focus()}layout(){this.findInput.inputBox.layout()}}class AJ{get templateId(){return this.renderer.templateId}constructor(e,t){this.renderer=e,this.modelProvider=t}renderTemplate(e){return{data:this.renderer.renderTemplate(e),disposable:z.None}}renderElement(e,t,i,n){if(i.disposable?.dispose(),!i.data)return;const s=this.modelProvider();if(s.isResolved(e))return this.renderer.renderElement(s.get(e),e,i.data,n);const r=new In,a=s.resolve(e,r.token);i.disposable={dispose:()=>r.cancel()},this.renderer.renderPlaceholder(e,i.data),a.then(l=>this.renderer.renderElement(l,e,i.data,n))}disposeTemplate(e){e.disposable&&(e.disposable.dispose(),e.disposable=void 0),e.data&&(this.renderer.disposeTemplate(e.data),e.data=void 0)}}class PJ{constructor(e,t){this.modelProvider=e,this.accessibilityProvider=t}getWidgetAriaLabel(){return this.accessibilityProvider.getWidgetAriaLabel()}getAriaLabel(e){const t=this.modelProvider();return t.isResolved(e)?this.accessibilityProvider.getAriaLabel(t.get(e)):null}}function OJ(o,e){return{...e,accessibilityProvider:e.accessibilityProvider&&new PJ(o,e.accessibilityProvider)}}class FJ{constructor(e,t,i,n,s={}){const r=()=>this.model,a=n.map(l=>new AJ(l,r));this.list=new go(e,t,i,a,OJ(r,s))}updateOptions(e){this.list.updateOptions(e)}getHTMLElement(){return this.list.getHTMLElement()}get onDidFocus(){return this.list.onDidFocus}get widget(){return this.list}get onDidDispose(){return this.list.onDidDispose}get onMouseDblClick(){return J.map(this.list.onMouseDblClick,({element:e,index:t,browserEvent:i})=>({element:e===void 0?void 0:this._model.get(e),index:t,browserEvent:i}))}get onPointer(){return J.map(this.list.onPointer,({element:e,index:t,browserEvent:i})=>({element:e===void 0?void 0:this._model.get(e),index:t,browserEvent:i}))}get onDidChangeSelection(){return J.map(this.list.onDidChangeSelection,({elements:e,indexes:t,browserEvent:i})=>({elements:e.map(n=>this._model.get(n)),indexes:t,browserEvent:i}))}get model(){return this._model}set model(e){this._model=e,this.list.splice(0,this.list.length,Bn(e.length))}getFocus(){return this.list.getFocus()}getSelection(){return this.list.getSelection()}getSelectedElements(){return this.getSelection().map(e=>this.model.get(e))}style(e){this.list.style(e)}dispose(){this.list.dispose()}}var Kg=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};const BJ=!1;var ov;(function(o){o.North="north",o.South="south",o.East="east",o.West="west"})(ov||(ov={}));let WJ=4;const HJ=new A;let VJ=300;const zJ=new A;class f2{constructor(e){this.el=e,this.disposables=new X}get onPointerMove(){return this.disposables.add(new ze(fe(this.el),"mousemove")).event}get onPointerUp(){return this.disposables.add(new ze(fe(this.el),"mouseup")).event}dispose(){this.disposables.dispose()}}Kg([Jt],f2.prototype,"onPointerMove",null);Kg([Jt],f2.prototype,"onPointerUp",null);class g2{get onPointerMove(){return this.disposables.add(new ze(this.el,St.Change)).event}get onPointerUp(){return this.disposables.add(new ze(this.el,St.End)).event}constructor(e){this.el=e,this.disposables=new X}dispose(){this.disposables.dispose()}}Kg([Jt],g2.prototype,"onPointerMove",null);Kg([Jt],g2.prototype,"onPointerUp",null);class rv{get onPointerMove(){return this.factory.onPointerMove}get onPointerUp(){return this.factory.onPointerUp}constructor(e){this.factory=e}dispose(){}}Kg([Jt],rv.prototype,"onPointerMove",null);Kg([Jt],rv.prototype,"onPointerUp",null);const qP="pointer-events-disabled";class an extends z{get state(){return this._state}get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}set state(e){this._state!==e&&(this.el.classList.toggle("disabled",e===0),this.el.classList.toggle("minimum",e===1),this.el.classList.toggle("maximum",e===2),this._state=e,this.onDidEnablementChange.fire(e))}set orthogonalStartSash(e){if(this._orthogonalStartSash!==e){if(this.orthogonalStartDragHandleDisposables.clear(),this.orthogonalStartSashDisposables.clear(),e){const t=i=>{this.orthogonalStartDragHandleDisposables.clear(),i!==0&&(this._orthogonalStartDragHandle=Z(this.el,ce(".orthogonal-drag-handle.start")),this.orthogonalStartDragHandleDisposables.add(_e(()=>this._orthogonalStartDragHandle.remove())),this.orthogonalStartDragHandleDisposables.add(new ze(this._orthogonalStartDragHandle,"mouseenter")).event(()=>an.onMouseEnter(e),void 0,this.orthogonalStartDragHandleDisposables),this.orthogonalStartDragHandleDisposables.add(new ze(this._orthogonalStartDragHandle,"mouseleave")).event(()=>an.onMouseLeave(e),void 0,this.orthogonalStartDragHandleDisposables))};this.orthogonalStartSashDisposables.add(e.onDidEnablementChange.event(t,this)),t(e.state)}this._orthogonalStartSash=e}}set orthogonalEndSash(e){if(this._orthogonalEndSash!==e){if(this.orthogonalEndDragHandleDisposables.clear(),this.orthogonalEndSashDisposables.clear(),e){const t=i=>{this.orthogonalEndDragHandleDisposables.clear(),i!==0&&(this._orthogonalEndDragHandle=Z(this.el,ce(".orthogonal-drag-handle.end")),this.orthogonalEndDragHandleDisposables.add(_e(()=>this._orthogonalEndDragHandle.remove())),this.orthogonalEndDragHandleDisposables.add(new ze(this._orthogonalEndDragHandle,"mouseenter")).event(()=>an.onMouseEnter(e),void 0,this.orthogonalEndDragHandleDisposables),this.orthogonalEndDragHandleDisposables.add(new ze(this._orthogonalEndDragHandle,"mouseleave")).event(()=>an.onMouseLeave(e),void 0,this.orthogonalEndDragHandleDisposables))};this.orthogonalEndSashDisposables.add(e.onDidEnablementChange.event(t,this)),t(e.state)}this._orthogonalEndSash=e}}constructor(e,t,i){super(),this.hoverDelay=VJ,this.hoverDelayer=this._register(new z_(this.hoverDelay)),this._state=3,this.onDidEnablementChange=this._register(new A),this._onDidStart=this._register(new A),this._onDidChange=this._register(new A),this._onDidReset=this._register(new A),this._onDidEnd=this._register(new A),this.orthogonalStartSashDisposables=this._register(new X),this.orthogonalStartDragHandleDisposables=this._register(new X),this.orthogonalEndSashDisposables=this._register(new X),this.orthogonalEndDragHandleDisposables=this._register(new X),this.onDidStart=this._onDidStart.event,this.onDidChange=this._onDidChange.event,this.onDidReset=this._onDidReset.event,this.onDidEnd=this._onDidEnd.event,this.linkedSash=void 0,this.el=Z(e,ce(".monaco-sash")),i.orthogonalEdge&&this.el.classList.add(`orthogonal-edge-${i.orthogonalEdge}`),Ue&&this.el.classList.add("mac");const n=this._register(new ze(this.el,"mousedown")).event;this._register(n(h=>this.onPointerStart(h,new f2(e)),this));const s=this._register(new ze(this.el,"dblclick")).event;this._register(s(this.onPointerDoublePress,this));const r=this._register(new ze(this.el,"mouseenter")).event;this._register(r(()=>an.onMouseEnter(this)));const a=this._register(new ze(this.el,"mouseleave")).event;this._register(a(()=>an.onMouseLeave(this))),this._register(fn.addTarget(this.el));const l=this._register(new ze(this.el,St.Start)).event;this._register(l(h=>this.onPointerStart(h,new g2(this.el)),this));const c=this._register(new ze(this.el,St.Tap)).event;let d;this._register(c(h=>{if(d){clearTimeout(d),d=void 0,this.onPointerDoublePress(h);return}clearTimeout(d),d=setTimeout(()=>d=void 0,250)},this)),typeof i.size=="number"?(this.size=i.size,i.orientation===0?this.el.style.width=`${this.size}px`:this.el.style.height=`${this.size}px`):(this.size=WJ,this._register(HJ.event(h=>{this.size=h,this.layout()}))),this._register(zJ.event(h=>this.hoverDelay=h)),this.layoutProvider=t,this.orthogonalStartSash=i.orthogonalStartSash,this.orthogonalEndSash=i.orthogonalEndSash,this.orientation=i.orientation||0,this.orientation===1?(this.el.classList.add("horizontal"),this.el.classList.remove("vertical")):(this.el.classList.remove("horizontal"),this.el.classList.add("vertical")),this.el.classList.toggle("debug",BJ),this.layout()}onPointerStart(e,t){je.stop(e);let i=!1;if(!e.__orthogonalSashEvent){const g=this.getOrthogonalSash(e);g&&(i=!0,e.__orthogonalSashEvent=!0,g.onPointerStart(e,new rv(t)))}if(this.linkedSash&&!e.__linkedSashEvent&&(e.__linkedSashEvent=!0,this.linkedSash.onPointerStart(e,new rv(t))),!this.state)return;const n=this.el.ownerDocument.getElementsByTagName("iframe");for(const g of n)g.classList.add(qP);const s=e.pageX,r=e.pageY,a=e.altKey,l={startX:s,currentX:s,startY:r,currentY:r,altKey:a};this.el.classList.add("active"),this._onDidStart.fire(l);const c=Vs(this.el),d=()=>{let g="";i?g="all-scroll":this.orientation===1?this.state===1?g="s-resize":this.state===2?g="n-resize":g=Ue?"row-resize":"ns-resize":this.state===1?g="e-resize":this.state===2?g="w-resize":g=Ue?"col-resize":"ew-resize",c.textContent=`* { cursor: ${g} !important; }`},h=new X;d(),i||this.onDidEnablementChange.event(d,null,h);const u=g=>{je.stop(g,!1);const p={startX:s,currentX:g.pageX,startY:r,currentY:g.pageY,altKey:a};this._onDidChange.fire(p)},f=g=>{je.stop(g,!1),c.remove(),this.el.classList.remove("active"),this._onDidEnd.fire(),h.dispose();for(const p of n)p.classList.remove(qP)};t.onPointerMove(u,null,h),t.onPointerUp(f,null,h),h.add(t)}onPointerDoublePress(e){const t=this.getOrthogonalSash(e);t&&t._onDidReset.fire(),this.linkedSash&&this.linkedSash._onDidReset.fire(),this._onDidReset.fire()}static onMouseEnter(e,t=!1){e.el.classList.contains("active")?(e.hoverDelayer.cancel(),e.el.classList.add("hover")):e.hoverDelayer.trigger(()=>e.el.classList.add("hover"),e.hoverDelay).then(void 0,()=>{}),!t&&e.linkedSash&&an.onMouseEnter(e.linkedSash,!0)}static onMouseLeave(e,t=!1){e.hoverDelayer.cancel(),e.el.classList.remove("hover"),!t&&e.linkedSash&&an.onMouseLeave(e.linkedSash,!0)}clearSashHoverState(){an.onMouseLeave(this)}layout(){if(this.orientation===0){const e=this.layoutProvider;this.el.style.left=e.getVerticalSashLeft(this)-this.size/2+"px",e.getVerticalSashTop&&(this.el.style.top=e.getVerticalSashTop(this)+"px"),e.getVerticalSashHeight&&(this.el.style.height=e.getVerticalSashHeight(this)+"px")}else{const e=this.layoutProvider;this.el.style.top=e.getHorizontalSashTop(this)-this.size/2+"px",e.getHorizontalSashLeft&&(this.el.style.left=e.getHorizontalSashLeft(this)+"px"),e.getHorizontalSashWidth&&(this.el.style.width=e.getHorizontalSashWidth(this)+"px")}}getOrthogonalSash(e){const t=e.initialTarget??e.target;if(!(!t||!Ei(t))&&t.classList.contains("orthogonal-drag-handle"))return t.classList.contains("start")?this.orthogonalStartSash:this.orthogonalEndSash}dispose(){super.dispose(),this.el.remove()}}const UJ={separatorBorder:q.transparent};class I9{set size(e){this._size=e}get size(){return this._size}get visible(){return typeof this._cachedVisibleSize>"u"}setVisible(e,t){if(e!==this.visible){e?(this.size=bn(this._cachedVisibleSize,this.viewMinimumSize,this.viewMaximumSize),this._cachedVisibleSize=void 0):(this._cachedVisibleSize=typeof t=="number"?t:this.size,this.size=0),this.container.classList.toggle("visible",e);try{this.view.setVisible?.(e)}catch(i){console.error("Splitview: Failed to set visible view"),console.error(i)}}}get minimumSize(){return this.visible?this.view.minimumSize:0}get viewMinimumSize(){return this.view.minimumSize}get maximumSize(){return this.visible?this.view.maximumSize:0}get viewMaximumSize(){return this.view.maximumSize}get priority(){return this.view.priority}get proportionalLayout(){return this.view.proportionalLayout??!0}get snap(){return!!this.view.snap}set enabled(e){this.container.style.pointerEvents=e?"":"none"}constructor(e,t,i,n){this.container=e,this.view=t,this.disposable=n,this._cachedVisibleSize=void 0,typeof i=="number"?(this._size=i,this._cachedVisibleSize=void 0,e.classList.add("visible")):(this._size=0,this._cachedVisibleSize=i.cachedVisibleSize)}layout(e,t){this.layoutContainer(e);try{this.view.layout(this.size,e,t)}catch(i){console.error("Splitview: Failed to layout view"),console.error(i)}}dispose(){this.disposable.dispose()}}class $J extends I9{layoutContainer(e){this.container.style.top=`${e}px`,this.container.style.height=`${this.size}px`}}class KJ extends I9{layoutContainer(e){this.container.style.left=`${e}px`,this.container.style.width=`${this.size}px`}}var Ua;(function(o){o[o.Idle=0]="Idle",o[o.Busy=1]="Busy"})(Ua||(Ua={}));var av;(function(o){o.Distribute={type:"distribute"};function e(n){return{type:"split",index:n}}o.Split=e;function t(n){return{type:"auto",index:n}}o.Auto=t;function i(n){return{type:"invisible",cachedVisibleSize:n}}o.Invisible=i})(av||(av={}));class E9 extends z{get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}get startSnappingEnabled(){return this._startSnappingEnabled}get endSnappingEnabled(){return this._endSnappingEnabled}set orthogonalStartSash(e){for(const t of this.sashItems)t.sash.orthogonalStartSash=e;this._orthogonalStartSash=e}set orthogonalEndSash(e){for(const t of this.sashItems)t.sash.orthogonalEndSash=e;this._orthogonalEndSash=e}set startSnappingEnabled(e){this._startSnappingEnabled!==e&&(this._startSnappingEnabled=e,this.updateSashEnablement())}set endSnappingEnabled(e){this._endSnappingEnabled!==e&&(this._endSnappingEnabled=e,this.updateSashEnablement())}constructor(e,t={}){super(),this.size=0,this._contentSize=0,this.proportions=void 0,this.viewItems=[],this.sashItems=[],this.state=Ua.Idle,this._onDidSashChange=this._register(new A),this._onDidSashReset=this._register(new A),this._startSnappingEnabled=!0,this._endSnappingEnabled=!0,this.onDidSashChange=this._onDidSashChange.event,this.onDidSashReset=this._onDidSashReset.event,this.orientation=t.orientation??0,this.inverseAltBehavior=t.inverseAltBehavior??!1,this.proportionalLayout=t.proportionalLayout??!0,this.getSashOrthogonalSize=t.getSashOrthogonalSize,this.el=document.createElement("div"),this.el.classList.add("monaco-split-view2"),this.el.classList.add(this.orientation===0?"vertical":"horizontal"),e.appendChild(this.el),this.sashContainer=Z(this.el,ce(".sash-container")),this.viewContainer=ce(".split-view-container"),this.scrollable=this._register(new Vg({forceIntegerValues:!0,smoothScrollDuration:125,scheduleAtNextAnimationFrame:n=>fs(fe(this.el),n)})),this.scrollableElement=this._register(new X0(this.viewContainer,{vertical:this.orientation===0?t.scrollbarVisibility??1:2,horizontal:this.orientation===1?t.scrollbarVisibility??1:2},this.scrollable));const i=this._register(new ze(this.viewContainer,"scroll")).event;this._register(i(n=>{const s=this.scrollableElement.getScrollPosition(),r=Math.abs(this.viewContainer.scrollLeft-s.scrollLeft)<=1?void 0:this.viewContainer.scrollLeft,a=Math.abs(this.viewContainer.scrollTop-s.scrollTop)<=1?void 0:this.viewContainer.scrollTop;(r!==void 0||a!==void 0)&&this.scrollableElement.setScrollPosition({scrollLeft:r,scrollTop:a})})),this.onDidScroll=this.scrollableElement.onScroll,this._register(this.onDidScroll(n=>{n.scrollTopChanged&&(this.viewContainer.scrollTop=n.scrollTop),n.scrollLeftChanged&&(this.viewContainer.scrollLeft=n.scrollLeft)})),Z(this.el,this.scrollableElement.getDomNode()),this.style(t.styles||UJ),t.descriptor&&(this.size=t.descriptor.size,t.descriptor.views.forEach((n,s)=>{const r=Es(n.visible)||n.visible?n.size:{type:"invisible",cachedVisibleSize:n.size},a=n.view;this.doAddView(a,r,s,!0)}),this._contentSize=this.viewItems.reduce((n,s)=>n+s.size,0),this.saveProportions())}style(e){e.separatorBorder.isTransparent()?(this.el.classList.remove("separator-border"),this.el.style.removeProperty("--separator-border")):(this.el.classList.add("separator-border"),this.el.style.setProperty("--separator-border",e.separatorBorder.toString()))}addView(e,t,i=this.viewItems.length,n){this.doAddView(e,t,i,n)}layout(e,t){const i=Math.max(this.size,this._contentSize);if(this.size=e,this.layoutContext=t,this.proportions){let n=0;for(let s=0;s0&&(r.size=bn(Math.round(a*e/n),r.minimumSize,r.maximumSize))}}else{const n=Bn(this.viewItems.length),s=n.filter(a=>this.viewItems[a].priority===1),r=n.filter(a=>this.viewItems[a].priority===2);this.resize(this.viewItems.length-1,e-i,void 0,s,r)}this.distributeEmptySpace(),this.layoutViews()}saveProportions(){this.proportionalLayout&&this._contentSize>0&&(this.proportions=this.viewItems.map(e=>e.proportionalLayout&&e.visible?e.size/this._contentSize:void 0))}onSashStart({sash:e,start:t,alt:i}){for(const a of this.viewItems)a.enabled=!1;const n=this.sashItems.findIndex(a=>a.sash===e),s=No(U(this.el.ownerDocument.body,"keydown",a=>r(this.sashDragState.current,a.altKey)),U(this.el.ownerDocument.body,"keyup",()=>r(this.sashDragState.current,!1))),r=(a,l)=>{const c=this.viewItems.map(g=>g.size);let d=Number.NEGATIVE_INFINITY,h=Number.POSITIVE_INFINITY;if(this.inverseAltBehavior&&(l=!l),l)if(n===this.sashItems.length-1){const p=this.viewItems[n];d=(p.minimumSize-p.size)/2,h=(p.maximumSize-p.size)/2}else{const p=this.viewItems[n+1];d=(p.size-p.maximumSize)/2,h=(p.size-p.minimumSize)/2}let u,f;if(!l){const g=Bn(n,-1),p=Bn(n+1,this.viewItems.length),_=g.reduce((E,N)=>E+(this.viewItems[N].minimumSize-c[N]),0),b=g.reduce((E,N)=>E+(this.viewItems[N].viewMaximumSize-c[N]),0),C=p.length===0?Number.POSITIVE_INFINITY:p.reduce((E,N)=>E+(c[N]-this.viewItems[N].minimumSize),0),w=p.length===0?Number.NEGATIVE_INFINITY:p.reduce((E,N)=>E+(c[N]-this.viewItems[N].viewMaximumSize),0),v=Math.max(_,w),y=Math.min(C,b),x=this.findFirstSnapIndex(g),L=this.findFirstSnapIndex(p);if(typeof x=="number"){const E=this.viewItems[x],N=Math.floor(E.viewMinimumSize/2);u={index:x,limitDelta:E.visible?v-N:v+N,size:E.size}}if(typeof L=="number"){const E=this.viewItems[L],N=Math.floor(E.viewMinimumSize/2);f={index:L,limitDelta:E.visible?y+N:y-N,size:E.size}}}this.sashDragState={start:a,current:a,index:n,sizes:c,minDelta:d,maxDelta:h,alt:l,snapBefore:u,snapAfter:f,disposable:s}};r(t,i)}onSashChange({current:e}){const{index:t,start:i,sizes:n,alt:s,minDelta:r,maxDelta:a,snapBefore:l,snapAfter:c}=this.sashDragState;this.sashDragState.current=e;const d=e-i,h=this.resize(t,d,n,void 0,void 0,r,a,l,c);if(s){const u=t===this.sashItems.length-1,f=this.viewItems.map(w=>w.size),g=u?t:t+1,p=this.viewItems[g],_=p.size-p.maximumSize,b=p.size-p.minimumSize,C=u?t-1:t+1;this.resize(C,-h,f,void 0,void 0,_,b)}this.distributeEmptySpace(),this.layoutViews()}onSashEnd(e){this._onDidSashChange.fire(e),this.sashDragState.disposable.dispose(),this.saveProportions();for(const t of this.viewItems)t.enabled=!0}onViewChange(e,t){const i=this.viewItems.indexOf(e);i<0||i>=this.viewItems.length||(t=typeof t=="number"?t:e.size,t=bn(t,e.minimumSize,e.maximumSize),this.inverseAltBehavior&&i>0?(this.resize(i-1,Math.floor((e.size-t)/2)),this.distributeEmptySpace(),this.layoutViews()):(e.size=t,this.relayout([i],void 0)))}resizeView(e,t){if(!(e<0||e>=this.viewItems.length)){if(this.state!==Ua.Idle)throw new Error("Cant modify splitview");this.state=Ua.Busy;try{const i=Bn(this.viewItems.length).filter(a=>a!==e),n=[...i.filter(a=>this.viewItems[a].priority===1),e],s=i.filter(a=>this.viewItems[a].priority===2),r=this.viewItems[e];t=Math.round(t),t=bn(t,r.minimumSize,Math.min(r.maximumSize,this.size)),r.size=t,this.relayout(n,s)}finally{this.state=Ua.Idle}}}distributeViewSizes(){const e=[];let t=0;for(const a of this.viewItems)a.maximumSize-a.minimumSize>0&&(e.push(a),t+=a.size);const i=Math.floor(t/e.length);for(const a of e)a.size=bn(i,a.minimumSize,a.maximumSize);const n=Bn(this.viewItems.length),s=n.filter(a=>this.viewItems[a].priority===1),r=n.filter(a=>this.viewItems[a].priority===2);this.relayout(s,r)}getViewSize(e){return e<0||e>=this.viewItems.length?-1:this.viewItems[e].size}doAddView(e,t,i=this.viewItems.length,n){if(this.state!==Ua.Idle)throw new Error("Cant modify splitview");this.state=Ua.Busy;try{const s=ce(".split-view-view");i===this.viewItems.length?this.viewContainer.appendChild(s):this.viewContainer.insertBefore(s,this.viewContainer.children.item(i));const r=e.onDidChange(u=>this.onViewChange(d,u)),a=_e(()=>s.remove()),l=No(r,a);let c;typeof t=="number"?c=t:(t.type==="auto"&&(this.areViewsDistributed()?t={type:"distribute"}:t={type:"split",index:t.index}),t.type==="split"?c=this.getViewSize(t.index)/2:t.type==="invisible"?c={cachedVisibleSize:t.cachedVisibleSize}:c=e.minimumSize);const d=this.orientation===0?new $J(s,e,c,l):new KJ(s,e,c,l);if(this.viewItems.splice(i,0,d),this.viewItems.length>1){const u={orthogonalStartSash:this.orthogonalStartSash,orthogonalEndSash:this.orthogonalEndSash},f=this.orientation===0?new an(this.sashContainer,{getHorizontalSashTop:E=>this.getSashPosition(E),getHorizontalSashWidth:this.getSashOrthogonalSize},{...u,orientation:1}):new an(this.sashContainer,{getVerticalSashLeft:E=>this.getSashPosition(E),getVerticalSashHeight:this.getSashOrthogonalSize},{...u,orientation:0}),g=this.orientation===0?E=>({sash:f,start:E.startY,current:E.currentY,alt:E.altKey}):E=>({sash:f,start:E.startX,current:E.currentX,alt:E.altKey}),_=J.map(f.onDidStart,g)(this.onSashStart,this),C=J.map(f.onDidChange,g)(this.onSashChange,this),v=J.map(f.onDidEnd,()=>this.sashItems.findIndex(E=>E.sash===f))(this.onSashEnd,this),y=f.onDidReset(()=>{const E=this.sashItems.findIndex(j=>j.sash===f),N=Bn(E,-1),H=Bn(E+1,this.viewItems.length),F=this.findFirstSnapIndex(N),W=this.findFirstSnapIndex(H);typeof F=="number"&&!this.viewItems[F].visible||typeof W=="number"&&!this.viewItems[W].visible||this._onDidSashReset.fire(E)}),x=No(_,C,v,y,f),L={sash:f,disposable:x};this.sashItems.splice(i-1,0,L)}s.appendChild(e.element);let h;typeof t!="number"&&t.type==="split"&&(h=[t.index]),n||this.relayout([i],h),!n&&typeof t!="number"&&t.type==="distribute"&&this.distributeViewSizes()}finally{this.state=Ua.Idle}}relayout(e,t){const i=this.viewItems.reduce((n,s)=>n+s.size,0);this.resize(this.viewItems.length-1,this.size-i,void 0,e,t),this.distributeEmptySpace(),this.layoutViews(),this.saveProportions()}resize(e,t,i=this.viewItems.map(d=>d.size),n,s,r=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY,l,c){if(e<0||e>=this.viewItems.length)return 0;const d=Bn(e,-1),h=Bn(e+1,this.viewItems.length);if(s)for(const L of s)$y(d,L),$y(h,L);if(n)for(const L of n)bb(d,L),bb(h,L);const u=d.map(L=>this.viewItems[L]),f=d.map(L=>i[L]),g=h.map(L=>this.viewItems[L]),p=h.map(L=>i[L]),_=d.reduce((L,E)=>L+(this.viewItems[E].minimumSize-i[E]),0),b=d.reduce((L,E)=>L+(this.viewItems[E].maximumSize-i[E]),0),C=h.length===0?Number.POSITIVE_INFINITY:h.reduce((L,E)=>L+(i[E]-this.viewItems[E].minimumSize),0),w=h.length===0?Number.NEGATIVE_INFINITY:h.reduce((L,E)=>L+(i[E]-this.viewItems[E].maximumSize),0),v=Math.max(_,w,r),y=Math.min(C,b,a);let x=!1;if(l){const L=this.viewItems[l.index],E=t>=l.limitDelta;x=E!==L.visible,L.setVisible(E,l.size)}if(!x&&c){const L=this.viewItems[c.index],E=ta+l.size,0);let i=this.size-t;const n=Bn(this.viewItems.length-1,-1),s=n.filter(a=>this.viewItems[a].priority===1),r=n.filter(a=>this.viewItems[a].priority===2);for(const a of r)$y(n,a);for(const a of s)bb(n,a);typeof e=="number"&&bb(n,e);for(let a=0;i!==0&&at+i.size,0);let e=0;for(const t of this.viewItems)t.layout(e,this.layoutContext),e+=t.size;this.sashItems.forEach(t=>t.sash.layout()),this.updateSashEnablement(),this.updateScrollableElement()}updateScrollableElement(){this.orientation===0?this.scrollableElement.setScrollDimensions({height:this.size,scrollHeight:this._contentSize}):this.scrollableElement.setScrollDimensions({width:this.size,scrollWidth:this._contentSize})}updateSashEnablement(){let e=!1;const t=this.viewItems.map(l=>e=l.size-l.minimumSize>0||e);e=!1;const i=this.viewItems.map(l=>e=l.maximumSize-l.size>0||e),n=[...this.viewItems].reverse();e=!1;const s=n.map(l=>e=l.size-l.minimumSize>0||e).reverse();e=!1;const r=n.map(l=>e=l.maximumSize-l.size>0||e).reverse();let a=0;for(let l=0;l0||this.startSnappingEnabled)?c.state=1:C&&t[l]&&(a0)return;if(!i.visible&&i.snap)return t}}areViewsDistributed(){let e,t;for(const i of this.viewItems)if(e=e===void 0?i.size:Math.min(e,i.size),t=t===void 0?i.size:Math.max(t,i.size),t-e>2)return!1;return!0}dispose(){this.sashDragState?.disposable.dispose(),xt(this.viewItems),this.viewItems=[],this.sashItems.forEach(e=>e.disposable.dispose()),this.sashItems=[],super.dispose()}}const Vw=class Vw{constructor(e,t,i){this.columns=e,this.getColumnSize=i,this.templateId=Vw.TemplateId,this.renderedTemplates=new Set;const n=new Map(t.map(s=>[s.templateId,s]));this.renderers=[];for(const s of e){const r=n.get(s.templateId);if(!r)throw new Error(`Table cell renderer for template id ${s.templateId} not found.`);this.renderers.push(r)}}renderTemplate(e){const t=Z(e,ce(".monaco-table-tr")),i=[],n=[];for(let r=0;rthis.disposables.add(new qJ(d,h))),l={size:a.reduce((d,h)=>d+h.column.weight,0),views:a.map(d=>({size:d.column.weight,view:d}))};this.splitview=this.disposables.add(new E9(this.domNode,{orientation:1,scrollbarVisibility:2,getSashOrthogonalSize:()=>this.cachedHeight,descriptor:l})),this.splitview.el.style.height=`${i.headerRowHeight}px`,this.splitview.el.style.lineHeight=`${i.headerRowHeight}px`;const c=new lv(n,s,d=>this.splitview.getViewSize(d));this.list=this.disposables.add(new go(e,this.domNode,jJ(i),[c],r)),J.any(...a.map(d=>d.onDidLayout))(([d,h])=>c.layoutColumn(d,h),null,this.disposables),this.splitview.onDidSashReset(d=>{const h=n.reduce((f,g)=>f+g.weight,0),u=n[d].weight/h*this.cachedWidth;this.splitview.resizeView(d,u)},null,this.disposables),this.styleElement=Vs(this.domNode),this.style(_Y)}updateOptions(e){this.list.updateOptions(e)}splice(e,t,i=[]){this.list.splice(e,t,i)}getHTMLElement(){return this.domNode}style(e){const t=[];t.push(`.monaco-table.${this.domId} > .monaco-split-view2 .monaco-sash.vertical::before { - top: ${this.virtualDelegate.headerRowHeight+1}px; - height: calc(100% - ${this.virtualDelegate.headerRowHeight}px); - }`),this.styleElement.textContent=t.join(` -`),this.list.style(e)}getSelectedElements(){return this.list.getSelectedElements()}getSelection(){return this.list.getSelection()}getFocus(){return this.list.getFocus()}dispose(){this.disposables.dispose()}};zw.InstanceCount=0;let FD=zw;var ys;(function(o){o[o.Expanded=0]="Expanded",o[o.Collapsed=1]="Collapsed",o[o.PreserveOrExpanded=2]="PreserveOrExpanded",o[o.PreserveOrCollapsed=3]="PreserveOrCollapsed"})(ys||(ys={}));var jd;(function(o){o[o.Unknown=0]="Unknown",o[o.Twistie=1]="Twistie",o[o.Element=2]="Element",o[o.Filter=3]="Filter"})(jd||(jd={}));class Ds extends Error{constructor(e,t){super(`TreeError [${e}] ${t}`)}}class m2{constructor(e){this.fn=e,this._map=new WeakMap}map(e){let t=this._map.get(e);return t||(t=this.fn(e),this._map.set(e,t)),t}}function p2(o){return typeof o=="object"&&"visibility"in o&&"data"in o}function p_(o){switch(o){case!0:return 1;case!1:return 0;default:return o}}function jS(o){return typeof o.collapsible=="boolean"}class GJ{constructor(e,t,i,n={}){this.user=e,this.list=t,this.rootRef=[],this.eventBufferer=new W_,this._onDidChangeCollapseState=new A,this.onDidChangeCollapseState=this.eventBufferer.wrapEvent(this._onDidChangeCollapseState.event),this._onDidChangeRenderNodeCount=new A,this.onDidChangeRenderNodeCount=this.eventBufferer.wrapEvent(this._onDidChangeRenderNodeCount.event),this._onDidSplice=new A,this.onDidSplice=this._onDidSplice.event,this.refilterDelayer=new z_(CF),this.collapseByDefault=typeof n.collapseByDefault>"u"?!1:n.collapseByDefault,this.allowNonCollapsibleParents=n.allowNonCollapsibleParents??!1,this.filter=n.filter,this.autoExpandSingleChildren=typeof n.autoExpandSingleChildren>"u"?!1:n.autoExpandSingleChildren,this.root={parent:void 0,element:i,children:[],depth:0,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:!1,collapsed:!1,renderNodeCount:0,visibility:1,visible:!0,filterData:void 0}}splice(e,t,i=st.empty(),n={}){if(e.length===0)throw new Ds(this.user,"Invalid tree location");n.diffIdentityProvider?this.spliceSmart(n.diffIdentityProvider,e,t,i,n):this.spliceSimple(e,t,i,n)}spliceSmart(e,t,i,n=st.empty(),s,r=s.diffDepth??0){const{parentNode:a}=this.getParentNodeWithListIndex(t);if(!a.lastDiffIds)return this.spliceSimple(t,i,n,s);const l=[...n],c=t[t.length-1],d=new Yr({getElements:()=>a.lastDiffIds},{getElements:()=>[...a.children.slice(0,c),...l,...a.children.slice(c+i)].map(p=>e.getId(p.element).toString())}).ComputeDiff(!1);if(d.quitEarly)return a.lastDiffIds=void 0,this.spliceSimple(t,i,l,s);const h=t.slice(0,-1),u=(p,_,b)=>{if(r>0)for(let C=0;Cb.originalStart-_.originalStart))u(f,g,f-(p.originalStart+p.originalLength)),f=p.originalStart,g=p.modifiedStart-c,this.spliceSimple([...h,f],p.originalLength,st.slice(l,g,g+p.modifiedLength),s);u(f,g,f)}spliceSimple(e,t,i=st.empty(),{onDidCreateNode:n,onDidDeleteNode:s,diffIdentityProvider:r}){const{parentNode:a,listIndex:l,revealed:c,visible:d}=this.getParentNodeWithListIndex(e),h=[],u=st.map(i,y=>this.createTreeNode(y,a,a.visible?1:0,c,h,n)),f=e[e.length-1];let g=0;for(let y=f;y>=0&&yr.getId(y.element).toString())):a.lastDiffIds=a.children.map(y=>r.getId(y.element).toString()):a.lastDiffIds=void 0;let w=0;for(const y of C)y.visible&&w++;if(w!==0)for(let y=f+p.length;yx+(L.visible?L.renderNodeCount:0),0);this._updateAncestorsRenderNodeCount(a,b-y),this.list.splice(l,y,h)}if(C.length>0&&s){const y=x=>{s(x),x.children.forEach(y)};C.forEach(y)}this._onDidSplice.fire({insertedNodes:p,deletedNodes:C});let v=a;for(;v;){if(v.visibility===2){this.refilterDelayer.trigger(()=>this.refilter());break}v=v.parent}}rerender(e){if(e.length===0)throw new Ds(this.user,"Invalid tree location");const{node:t,listIndex:i,revealed:n}=this.getTreeNodeWithListIndex(e);t.visible&&n&&this.list.splice(i,1,[t])}has(e){return this.hasTreeNode(e)}getListIndex(e){const{listIndex:t,visible:i,revealed:n}=this.getTreeNodeWithListIndex(e);return i&&n?t:-1}getListRenderCount(e){return this.getTreeNode(e).renderNodeCount}isCollapsible(e){return this.getTreeNode(e).collapsible}setCollapsible(e,t){const i=this.getTreeNode(e);typeof t>"u"&&(t=!i.collapsible);const n={collapsible:t};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(e,n))}isCollapsed(e){return this.getTreeNode(e).collapsed}setCollapsed(e,t,i){const n=this.getTreeNode(e);typeof t>"u"&&(t=!n.collapsed);const s={collapsed:t,recursive:i||!1};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(e,s))}_setCollapseState(e,t){const{node:i,listIndex:n,revealed:s}=this.getTreeNodeWithListIndex(e),r=this._setListNodeCollapseState(i,n,s,t);if(i!==this.root&&this.autoExpandSingleChildren&&r&&!jS(t)&&i.collapsible&&!i.collapsed&&!t.recursive){let a=-1;for(let l=0;l-1){a=-1;break}else a=l;a>-1&&this._setCollapseState([...e,a],t)}return r}_setListNodeCollapseState(e,t,i,n){const s=this._setNodeCollapseState(e,n,!1);if(!i||!e.visible||!s)return s;const r=e.renderNodeCount,a=this.updateNodeAfterCollapseChange(e),l=r-(t===-1?0:1);return this.list.splice(t+1,l,a.slice(1)),s}_setNodeCollapseState(e,t,i){let n;if(e===this.root?n=!1:(jS(t)?(n=e.collapsible!==t.collapsible,e.collapsible=t.collapsible):e.collapsible?(n=e.collapsed!==t.collapsed,e.collapsed=t.collapsed):n=!1,n&&this._onDidChangeCollapseState.fire({node:e,deep:i})),!jS(t)&&t.recursive)for(const s of e.children)n=this._setNodeCollapseState(s,t,!0)||n;return n}expandTo(e){this.eventBufferer.bufferEvents(()=>{let t=this.getTreeNode(e);for(;t.parent;)t=t.parent,e=e.slice(0,e.length-1),t.collapsed&&this._setCollapseState(e,{collapsed:!1,recursive:!1})})}refilter(){const e=this.root.renderNodeCount,t=this.updateNodeAfterFilterChange(this.root);this.list.splice(0,e,t),this.refilterDelayer.cancel()}createTreeNode(e,t,i,n,s,r){const a={parent:t,element:e.element,children:[],depth:t.depth+1,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:typeof e.collapsible=="boolean"?e.collapsible:typeof e.collapsed<"u",collapsed:typeof e.collapsed>"u"?this.collapseByDefault:e.collapsed,renderNodeCount:1,visibility:1,visible:!0,filterData:void 0},l=this._filterNode(a,i);a.visibility=l,n&&s.push(a);const c=e.children||st.empty(),d=n&&l!==0&&!a.collapsed;let h=0,u=1;for(const f of c){const g=this.createTreeNode(f,a,l,d,s,r);a.children.push(g),u+=g.renderNodeCount,g.visible&&(g.visibleChildIndex=h++)}return this.allowNonCollapsibleParents||(a.collapsible=a.collapsible||a.children.length>0),a.visibleChildrenCount=h,a.visible=l===2?h>0:l===1,a.visible?a.collapsed||(a.renderNodeCount=u):(a.renderNodeCount=0,n&&s.pop()),r?.(a),a}updateNodeAfterCollapseChange(e){const t=e.renderNodeCount,i=[];return this._updateNodeAfterCollapseChange(e,i),this._updateAncestorsRenderNodeCount(e.parent,i.length-t),i}_updateNodeAfterCollapseChange(e,t){if(e.visible===!1)return 0;if(t.push(e),e.renderNodeCount=1,!e.collapsed)for(const i of e.children)e.renderNodeCount+=this._updateNodeAfterCollapseChange(i,t);return this._onDidChangeRenderNodeCount.fire(e),e.renderNodeCount}updateNodeAfterFilterChange(e){const t=e.renderNodeCount,i=[];return this._updateNodeAfterFilterChange(e,e.visible?1:0,i),this._updateAncestorsRenderNodeCount(e.parent,i.length-t),i}_updateNodeAfterFilterChange(e,t,i,n=!0){let s;if(e!==this.root){if(s=this._filterNode(e,t),s===0)return e.visible=!1,e.renderNodeCount=0,!1;n&&i.push(e)}const r=i.length;e.renderNodeCount=e===this.root?0:1;let a=!1;if(!e.collapsed||s!==0){let l=0;for(const c of e.children)a=this._updateNodeAfterFilterChange(c,s,i,n&&!e.collapsed)||a,c.visible&&(c.visibleChildIndex=l++);e.visibleChildrenCount=l}else e.visibleChildrenCount=0;return e!==this.root&&(e.visible=s===2?a:s===1,e.visibility=s),e.visible?e.collapsed||(e.renderNodeCount+=i.length-r):(e.renderNodeCount=0,n&&i.pop()),this._onDidChangeRenderNodeCount.fire(e),e.visible}_updateAncestorsRenderNodeCount(e,t){if(t!==0)for(;e;)e.renderNodeCount+=t,this._onDidChangeRenderNodeCount.fire(e),e=e.parent}_filterNode(e,t){const i=this.filter?this.filter.filter(e.element,t):1;return typeof i=="boolean"?(e.filterData=void 0,i?1:0):p2(i)?(e.filterData=i.data,p_(i.visibility)):(e.filterData=void 0,p_(i))}hasTreeNode(e,t=this.root){if(!e||e.length===0)return!0;const[i,...n]=e;return i<0||i>t.children.length?!1:this.hasTreeNode(n,t.children[i])}getTreeNode(e,t=this.root){if(!e||e.length===0)return t;const[i,...n]=e;if(i<0||i>t.children.length)throw new Ds(this.user,"Invalid tree location");return this.getTreeNode(n,t.children[i])}getTreeNodeWithListIndex(e){if(e.length===0)return{node:this.root,listIndex:-1,revealed:!0,visible:!1};const{parentNode:t,listIndex:i,revealed:n,visible:s}=this.getParentNodeWithListIndex(e),r=e[e.length-1];if(r<0||r>t.children.length)throw new Ds(this.user,"Invalid tree location");const a=t.children[r];return{node:a,listIndex:i,revealed:n,visible:s&&a.visible}}getParentNodeWithListIndex(e,t=this.root,i=0,n=!0,s=!0){const[r,...a]=e;if(r<0||r>t.children.length)throw new Ds(this.user,"Invalid tree location");for(let l=0;lt.element)),this.data=e}}function qS(o){return o instanceof J_?new ZJ(o):o}class YJ{constructor(e,t){this.modelProvider=e,this.dnd=t,this.autoExpandDisposable=z.None,this.disposables=new X}getDragURI(e){return this.dnd.getDragURI(e.element)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map(i=>i.element),t)}onDragStart(e,t){this.dnd.onDragStart?.(qS(e),t)}onDragOver(e,t,i,n,s,r=!0){const a=this.dnd.onDragOver(qS(e),t&&t.element,i,n,s),l=this.autoExpandNode!==t;if(l&&(this.autoExpandDisposable.dispose(),this.autoExpandNode=t),typeof t>"u")return a;if(l&&typeof a!="boolean"&&a.autoExpand&&(this.autoExpandDisposable=rg(()=>{const f=this.modelProvider(),g=f.getNodeLocation(t);f.isCollapsed(g)&&f.setCollapsed(g,!1),this.autoExpandNode=void 0},500,this.disposables)),typeof a=="boolean"||!a.accept||typeof a.bubble>"u"||a.feedback){if(!r){const f=typeof a=="boolean"?a:a.accept,g=typeof a=="boolean"?void 0:a.effect;return{accept:f,effect:g,feedback:[i]}}return a}if(a.bubble===1){const f=this.modelProvider(),g=f.getNodeLocation(t),p=f.getParentNodeLocation(g),_=f.getNode(p),b=p&&f.getListIndex(p);return this.onDragOver(e,_,b,n,s,!1)}const c=this.modelProvider(),d=c.getNodeLocation(t),h=c.getListIndex(d),u=c.getListRenderCount(d);return{...a,feedback:Bn(h,h+u)}}drop(e,t,i,n,s){this.autoExpandDisposable.dispose(),this.autoExpandNode=void 0,this.dnd.drop(qS(e),t&&t.element,i,n,s)}onDragEnd(e){this.dnd.onDragEnd?.(e)}dispose(){this.disposables.dispose(),this.dnd.dispose()}}function QJ(o,e){return e&&{...e,identityProvider:e.identityProvider&&{getId(t){return e.identityProvider.getId(t.element)}},dnd:e.dnd&&new YJ(o,e.dnd),multipleSelectionController:e.multipleSelectionController&&{isSelectionSingleChangeEvent(t){return e.multipleSelectionController.isSelectionSingleChangeEvent({...t,element:t.element})},isSelectionRangeChangeEvent(t){return e.multipleSelectionController.isSelectionRangeChangeEvent({...t,element:t.element})}},accessibilityProvider:e.accessibilityProvider&&{...e.accessibilityProvider,getSetSize(t){const i=o(),n=i.getNodeLocation(t),s=i.getParentNodeLocation(n);return i.getNode(s).visibleChildrenCount},getPosInSet(t){return t.visibleChildIndex+1},isChecked:e.accessibilityProvider&&e.accessibilityProvider.isChecked?t=>e.accessibilityProvider.isChecked(t.element):void 0,getRole:e.accessibilityProvider&&e.accessibilityProvider.getRole?t=>e.accessibilityProvider.getRole(t.element):()=>"treeitem",getAriaLabel(t){return e.accessibilityProvider.getAriaLabel(t.element)},getWidgetAriaLabel(){return e.accessibilityProvider.getWidgetAriaLabel()},getWidgetRole:e.accessibilityProvider&&e.accessibilityProvider.getWidgetRole?()=>e.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:e.accessibilityProvider&&e.accessibilityProvider.getAriaLevel?t=>e.accessibilityProvider.getAriaLevel(t.element):t=>t.depth,getActiveDescendantId:e.accessibilityProvider.getActiveDescendantId&&(t=>e.accessibilityProvider.getActiveDescendantId(t.element))},keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&{...e.keyboardNavigationLabelProvider,getKeyboardNavigationLabel(t){return e.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(t.element)}}}}class _2{constructor(e){this.delegate=e}getHeight(e){return this.delegate.getHeight(e.element)}getTemplateId(e){return this.delegate.getTemplateId(e.element)}hasDynamicHeight(e){return!!this.delegate.hasDynamicHeight&&this.delegate.hasDynamicHeight(e.element)}setDynamicHeight(e,t){this.delegate.setDynamicHeight?.(e.element,t)}}var Sg;(function(o){o.None="none",o.OnHover="onHover",o.Always="always"})(Sg||(Sg={}));class XJ{get elements(){return this._elements}constructor(e,t=[]){this._elements=t,this.disposables=new X,this.onDidChange=J.forEach(e,i=>this._elements=i,this.disposables)}dispose(){this.disposables.dispose()}}const Tp=class Tp{constructor(e,t,i,n,s,r={}){this.renderer=e,this.modelProvider=t,this.activeNodes=n,this.renderedIndentGuides=s,this.renderedElements=new Map,this.renderedNodes=new Map,this.indent=Tp.DefaultIndent,this.hideTwistiesOfChildlessElements=!1,this.shouldRenderIndentGuides=!1,this.activeIndentNodes=new Set,this.indentGuidesDisposable=z.None,this.disposables=new X,this.templateId=e.templateId,this.updateOptions(r),J.map(i,a=>a.node)(this.onDidChangeNodeTwistieState,this,this.disposables),e.onDidChangeTwistieState?.(this.onDidChangeTwistieState,this,this.disposables)}updateOptions(e={}){if(typeof e.indent<"u"){const t=bn(e.indent,0,40);if(t!==this.indent){this.indent=t;for(const[i,n]of this.renderedNodes)this.renderTreeElement(i,n)}}if(typeof e.renderIndentGuides<"u"){const t=e.renderIndentGuides!==Sg.None;if(t!==this.shouldRenderIndentGuides){this.shouldRenderIndentGuides=t;for(const[i,n]of this.renderedNodes)this._renderIndentGuides(i,n);if(this.indentGuidesDisposable.dispose(),t){const i=new X;this.activeNodes.onDidChange(this._onDidChangeActiveNodes,this,i),this.indentGuidesDisposable=i,this._onDidChangeActiveNodes(this.activeNodes.elements)}}}typeof e.hideTwistiesOfChildlessElements<"u"&&(this.hideTwistiesOfChildlessElements=e.hideTwistiesOfChildlessElements)}renderTemplate(e){const t=Z(e,ce(".monaco-tl-row")),i=Z(t,ce(".monaco-tl-indent")),n=Z(t,ce(".monaco-tl-twistie")),s=Z(t,ce(".monaco-tl-contents")),r=this.renderer.renderTemplate(s);return{container:e,indent:i,twistie:n,indentGuidesDisposable:z.None,templateData:r}}renderElement(e,t,i,n){this.renderedNodes.set(e,i),this.renderedElements.set(e.element,e),this.renderTreeElement(e,i),this.renderer.renderElement(e,t,i.templateData,n)}disposeElement(e,t,i,n){i.indentGuidesDisposable.dispose(),this.renderer.disposeElement?.(e,t,i.templateData,n),typeof n=="number"&&(this.renderedNodes.delete(e),this.renderedElements.delete(e.element))}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}onDidChangeTwistieState(e){const t=this.renderedElements.get(e);t&&this.onDidChangeNodeTwistieState(t)}onDidChangeNodeTwistieState(e){const t=this.renderedNodes.get(e);t&&(this._onDidChangeActiveNodes(this.activeNodes.elements),this.renderTreeElement(e,t))}renderTreeElement(e,t){const i=Tp.DefaultIndent+(e.depth-1)*this.indent;t.twistie.style.paddingLeft=`${i}px`,t.indent.style.width=`${i+this.indent-16}px`,e.collapsible?t.container.setAttribute("aria-expanded",String(!e.collapsed)):t.container.removeAttribute("aria-expanded"),t.twistie.classList.remove(...Ee.asClassNameArray(ie.treeItemExpanded));let n=!1;this.renderer.renderTwistie&&(n=this.renderer.renderTwistie(e.element,t.twistie)),e.collapsible&&(!this.hideTwistiesOfChildlessElements||e.visibleChildrenCount>0)?(n||t.twistie.classList.add(...Ee.asClassNameArray(ie.treeItemExpanded)),t.twistie.classList.add("collapsible"),t.twistie.classList.toggle("collapsed",e.collapsed)):t.twistie.classList.remove("collapsible","collapsed"),this._renderIndentGuides(e,t)}_renderIndentGuides(e,t){if(xn(t.indent),t.indentGuidesDisposable.dispose(),!this.shouldRenderIndentGuides)return;const i=new X,n=this.modelProvider();for(;;){const s=n.getNodeLocation(e),r=n.getParentNodeLocation(s);if(!r)break;const a=n.getNode(r),l=ce(".indent-guide",{style:`width: ${this.indent}px`});this.activeIndentNodes.has(a)&&l.classList.add("active"),t.indent.childElementCount===0?t.indent.appendChild(l):t.indent.insertBefore(l,t.indent.firstElementChild),this.renderedIndentGuides.add(a,l),i.add(_e(()=>this.renderedIndentGuides.delete(a,l))),e=a}t.indentGuidesDisposable=i}_onDidChangeActiveNodes(e){if(!this.shouldRenderIndentGuides)return;const t=new Set,i=this.modelProvider();e.forEach(n=>{const s=i.getNodeLocation(n);try{const r=i.getParentNodeLocation(s);n.collapsible&&n.children.length>0&&!n.collapsed?t.add(n):r&&t.add(i.getNode(r))}catch{}}),this.activeIndentNodes.forEach(n=>{t.has(n)||this.renderedIndentGuides.forEach(n,s=>s.classList.remove("active"))}),t.forEach(n=>{this.activeIndentNodes.has(n)||this.renderedIndentGuides.forEach(n,s=>s.classList.add("active"))}),this.activeIndentNodes=t}dispose(){this.renderedNodes.clear(),this.renderedElements.clear(),this.indentGuidesDisposable.dispose(),xt(this.disposables)}};Tp.DefaultIndent=8;let BD=Tp;class JJ{get totalCount(){return this._totalCount}get matchCount(){return this._matchCount}constructor(e,t,i){this.tree=e,this.keyboardNavigationLabelProvider=t,this._filter=i,this._totalCount=0,this._matchCount=0,this._pattern="",this._lowercasePattern="",this.disposables=new X,e.onWillRefilter(this.reset,this,this.disposables)}filter(e,t){let i=1;if(this._filter){const r=this._filter.filter(e,t);if(typeof r=="boolean"?i=r?1:0:p2(r)?i=p_(r.visibility):i=r,i===0)return!1}if(this._totalCount++,!this._pattern)return this._matchCount++,{data:oa.Default,visibility:i};const n=this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e),s=Array.isArray(n)?n:[n];for(const r of s){const a=r&&r.toString();if(typeof a>"u")return{data:oa.Default,visibility:i};let l;if(this.tree.findMatchType===Uh.Contiguous){const c=a.toLowerCase().indexOf(this._lowercasePattern);if(c>-1){l=[Number.MAX_SAFE_INTEGER,0];for(let d=this._lowercasePattern.length;d>0;d--)l.push(c+d-1)}}else l=_g(this._pattern,this._lowercasePattern,0,a,a.toLowerCase(),0,{firstMatchCanBeWeak:!0,boostFullMatch:!0});if(l)return this._matchCount++,s.length===1?{data:l,visibility:i}:{data:{label:a,score:l},visibility:i}}return this.tree.findMode===dl.Filter?typeof this.tree.options.defaultFindVisibility=="number"?this.tree.options.defaultFindVisibility:this.tree.options.defaultFindVisibility?this.tree.options.defaultFindVisibility(e):2:{data:oa.Default,visibility:i}}reset(){this._totalCount=0,this._matchCount=0}dispose(){xt(this.disposables)}}var dl;(function(o){o[o.Highlight=0]="Highlight",o[o.Filter=1]="Filter"})(dl||(dl={}));var Uh;(function(o){o[o.Fuzzy=0]="Fuzzy",o[o.Contiguous=1]="Contiguous"})(Uh||(Uh={}));class eee{get pattern(){return this._pattern}get mode(){return this._mode}set mode(e){e!==this._mode&&(this._mode=e,this.widget&&(this.widget.mode=this._mode),this.tree.refilter(),this.render(),this._onDidChangeMode.fire(e))}get matchType(){return this._matchType}set matchType(e){e!==this._matchType&&(this._matchType=e,this.widget&&(this.widget.matchType=this._matchType),this.tree.refilter(),this.render(),this._onDidChangeMatchType.fire(e))}constructor(e,t,i,n,s,r={}){this.tree=e,this.view=i,this.filter=n,this.contextViewProvider=s,this.options=r,this._pattern="",this.width=0,this._onDidChangeMode=new A,this.onDidChangeMode=this._onDidChangeMode.event,this._onDidChangeMatchType=new A,this.onDidChangeMatchType=this._onDidChangeMatchType.event,this._onDidChangePattern=new A,this._onDidChangeOpenState=new A,this.onDidChangeOpenState=this._onDidChangeOpenState.event,this.enabledDisposables=new X,this.disposables=new X,this._mode=e.options.defaultFindMode??dl.Highlight,this._matchType=e.options.defaultFindMatchType??Uh.Fuzzy,t.onDidSplice(this.onDidSpliceModel,this,this.disposables)}updateOptions(e={}){e.defaultFindMode!==void 0&&(this.mode=e.defaultFindMode),e.defaultFindMatchType!==void 0&&(this.matchType=e.defaultFindMatchType)}onDidSpliceModel(){!this.widget||this.pattern.length===0||(this.tree.refilter(),this.render())}render(){const e=this.filter.totalCount>0&&this.filter.matchCount===0;this.pattern&&e?(El(m("replFindNoResults","No results")),this.tree.options.showNotFoundMessage??!0?this.widget?.showMessage({type:2,content:m("not found","No elements found.")}):this.widget?.showMessage({type:2})):(this.widget?.clearMessage(),this.pattern&&El(m("replFindResults","{0} results",this.filter.matchCount)))}shouldAllowFocus(e){return!this.widget||!this.pattern||this.filter.totalCount>0&&this.filter.matchCount<=1?!0:!oa.isDefault(e.filterData)}layout(e){this.width=e,this.widget?.layout(e)}dispose(){this._history=void 0,this._onDidChangePattern.dispose(),this.enabledDisposables.dispose(),this.disposables.dispose()}}function tee(o,e){return o.position===e.position&&N9(o,e)}function N9(o,e){return o.node.element===e.node.element&&o.startIndex===e.startIndex&&o.height===e.height&&o.endIndex===e.endIndex}class iee{constructor(e=[]){this.stickyNodes=e}get count(){return this.stickyNodes.length}equal(e){return li(this.stickyNodes,e.stickyNodes,tee)}lastNodePartiallyVisible(){if(this.count===0)return!1;const e=this.stickyNodes[this.count-1];if(this.count===1)return e.position!==0;const t=this.stickyNodes[this.count-2];return t.position+t.height!==e.position}animationStateChanged(e){if(!li(this.stickyNodes,e.stickyNodes,N9)||this.count===0)return!1;const t=this.stickyNodes[this.count-1],i=e.stickyNodes[e.count-1];return t.position!==i.position}}class nee{constrainStickyScrollNodes(e,t,i){for(let n=0;ni||n>=t)return e.slice(0,n)}return e}}class GP extends z{constructor(e,t,i,n,s,r={}){super(),this.tree=e,this.model=t,this.view=i,this.treeDelegate=s,this.maxWidgetViewRatio=.4;const a=this.validateStickySettings(r);this.stickyScrollMaxItemCount=a.stickyScrollMaxItemCount,this.stickyScrollDelegate=r.stickyScrollDelegate??new nee,this._widget=this._register(new see(i.getScrollableElement(),i,e,n,s,r.accessibilityProvider)),this.onDidChangeHasFocus=this._widget.onDidChangeHasFocus,this.onContextMenu=this._widget.onContextMenu,this._register(i.onDidScroll(()=>this.update())),this._register(i.onDidChangeContentHeight(()=>this.update())),this._register(e.onDidChangeCollapseState(()=>this.update())),this.update()}get height(){return this._widget.height}getNodeAtHeight(e){let t;if(e===0?t=this.view.firstVisibleIndex:t=this.view.indexAt(e+this.view.scrollTop),!(t<0||t>=this.view.length))return this.view.element(t)}update(){const e=this.getNodeAtHeight(0);if(!e||this.tree.scrollTop===0){this._widget.setState(void 0);return}const t=this.findStickyState(e);this._widget.setState(t)}findStickyState(e){const t=[];let i=e,n=0,s=this.getNextStickyNode(i,void 0,n);for(;s&&(t.push(s),n+=s.height,!(t.length<=this.stickyScrollMaxItemCount&&(i=this.getNextVisibleNode(s),!i)));)s=this.getNextStickyNode(i,s.node,n);const r=this.constrainStickyNodes(t);return r.length?new iee(r):void 0}getNextVisibleNode(e){return this.getNodeAtHeight(e.position+e.height)}getNextStickyNode(e,t,i){const n=this.getAncestorUnderPrevious(e,t);if(n&&!(n===e&&(!this.nodeIsUncollapsedParent(e)||this.nodeTopAlignsWithStickyNodesBottom(e,i))))return this.createStickyScrollNode(n,i)}nodeTopAlignsWithStickyNodesBottom(e,t){const i=this.getNodeIndex(e),n=this.view.getElementTop(i),s=t;return this.view.scrollTop===n-s}createStickyScrollNode(e,t){const i=this.treeDelegate.getHeight(e),{startIndex:n,endIndex:s}=this.getNodeRange(e),r=this.calculateStickyNodePosition(s,t,i);return{node:e,position:r,height:i,startIndex:n,endIndex:s}}getAncestorUnderPrevious(e,t=void 0){let i=e,n=this.getParentNode(i);for(;n;){if(n===t)return i;i=n,n=this.getParentNode(i)}if(t===void 0)return i}calculateStickyNodePosition(e,t,i){let n=this.view.getRelativeTop(e);if(n===null&&this.view.firstVisibleIndex===e&&e+1l&&t<=l?l-i:t}constrainStickyNodes(e){if(e.length===0)return[];const t=this.view.renderHeight*this.maxWidgetViewRatio,i=e[e.length-1];if(e.length<=this.stickyScrollMaxItemCount&&i.position+i.height<=t)return e;const n=this.stickyScrollDelegate.constrainStickyScrollNodes(e,this.stickyScrollMaxItemCount,t);if(!n.length)return[];const s=n[n.length-1];if(n.length>this.stickyScrollMaxItemCount||s.position+s.height>t)throw new Error("stickyScrollDelegate violates constraints");return n}getParentNode(e){const t=this.model.getNodeLocation(e),i=this.model.getParentNodeLocation(t);return i?this.model.getNode(i):void 0}nodeIsUncollapsedParent(e){const t=this.model.getNodeLocation(e);return this.model.getListRenderCount(t)>1}getNodeIndex(e){const t=this.model.getNodeLocation(e);return this.model.getListIndex(t)}getNodeRange(e){const t=this.model.getNodeLocation(e),i=this.model.getListIndex(t);if(i<0)throw new Error("Node not found in tree");const n=this.model.getListRenderCount(t),s=i+n-1;return{startIndex:i,endIndex:s}}nodePositionTopBelowWidget(e){const t=[];let i=this.getParentNode(e);for(;i;)t.push(i),i=this.getParentNode(i);let n=0;for(let s=0;s0,i=!!e&&e.count>0;if(!t&&!i||t&&i&&this._previousState.equal(e))return;if(t!==i&&this.setVisible(i),!i){this._previousState=void 0,this._previousElements=[],this._previousStateDisposables.clear();return}const n=e.stickyNodes[e.count-1];if(this._previousState&&e.animationStateChanged(this._previousState))this._previousElements[this._previousState.count-1].style.top=`${n.position}px`;else{this._previousStateDisposables.clear();const s=Array(e.count);for(let r=e.count-1;r>=0;r--){const a=e.stickyNodes[r],{element:l,disposable:c}=this.createElement(a,r,e.count);s[r]=l,this._rootDomNode.appendChild(l),this._previousStateDisposables.add(c)}this.stickyScrollFocus.updateElements(s,e),this._previousElements=s}this._previousState=e,this._rootDomNode.style.height=`${n.position+n.height}px`}createElement(e,t,i){const n=e.startIndex,s=document.createElement("div");s.style.top=`${e.position}px`,this.tree.options.setRowHeight!==!1&&(s.style.height=`${e.height}px`),this.tree.options.setRowLineHeight!==!1&&(s.style.lineHeight=`${e.height}px`),s.classList.add("monaco-tree-sticky-row"),s.classList.add("monaco-list-row"),s.setAttribute("data-index",`${n}`),s.setAttribute("data-parity",n%2===0?"even":"odd"),s.setAttribute("id",this.view.getElementID(n));const r=this.setAccessibilityAttributes(s,e.node.element,t,i),a=this.treeDelegate.getTemplateId(e.node),l=this.treeRenderers.find(u=>u.templateId===a);if(!l)throw new Error(`No renderer found for template id ${a}`);let c=e.node;c===this.tree.getNode(this.tree.getNodeLocation(e.node))&&(c=new Proxy(e.node,{}));const d=l.renderTemplate(s);l.renderElement(c,e.startIndex,d,e.height);const h=_e(()=>{r.dispose(),l.disposeElement(c,e.startIndex,d,e.height),l.disposeTemplate(d),s.remove()});return{element:s,disposable:h}}setAccessibilityAttributes(e,t,i,n){if(!this.accessibilityProvider)return z.None;this.accessibilityProvider.getSetSize&&e.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(t,i,n))),this.accessibilityProvider.getPosInSet&&e.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(t,i))),this.accessibilityProvider.getRole&&e.setAttribute("role",this.accessibilityProvider.getRole(t)??"treeitem");const s=this.accessibilityProvider.getAriaLabel(t),r=s&&typeof s!="string"?s:wg(s),a=We(c=>{const d=c.readObservable(r);d?e.setAttribute("aria-label",d):e.removeAttribute("aria-label")});typeof s=="string"||s&&e.setAttribute("aria-label",s.get());const l=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(t);return typeof l=="number"&&e.setAttribute("aria-level",`${l}`),e.setAttribute("aria-selected",String(!1)),a}setVisible(e){this._rootDomNode.classList.toggle("empty",!e),e||this.stickyScrollFocus.updateElements([],void 0)}domFocus(){this.stickyScrollFocus.domFocus()}focusedLast(){return this.stickyScrollFocus.focusedLast()}dispose(){this.stickyScrollFocus.dispose(),this._previousStateDisposables.dispose(),this._rootDomNode.remove()}}class oee extends z{get domHasFocus(){return this._domHasFocus}set domHasFocus(e){e!==this._domHasFocus&&(this._onDidChangeHasFocus.fire(e),this._domHasFocus=e)}constructor(e,t){super(),this.container=e,this.view=t,this.focusedIndex=-1,this.elements=[],this._onDidChangeHasFocus=new A,this.onDidChangeHasFocus=this._onDidChangeHasFocus.event,this._onContextMenu=new A,this.onContextMenu=this._onContextMenu.event,this._domHasFocus=!1,this._register(U(this.container,"focus",()=>this.onFocus())),this._register(U(this.container,"blur",()=>this.onBlur())),this._register(this.view.onDidFocus(()=>this.toggleStickyScrollFocused(!1))),this._register(this.view.onKeyDown(i=>this.onKeyDown(i))),this._register(this.view.onMouseDown(i=>this.onMouseDown(i))),this._register(this.view.onContextMenu(i=>this.handleContextMenu(i)))}handleContextMenu(e){const t=e.browserEvent.target;if(!d_(t)&&!Jm(t)){this.focusedLast()&&this.view.domFocus();return}if(!Qa(e.browserEvent)){if(!this.state)throw new Error("Context menu should not be triggered when state is undefined");const r=this.state.stickyNodes.findIndex(a=>a.node.element===e.element?.element);if(r===-1)throw new Error("Context menu should not be triggered when element is not in sticky scroll widget");this.container.focus(),this.setFocus(r);return}if(!this.state||this.focusedIndex<0)throw new Error("Context menu key should not be triggered when focus is not in sticky scroll widget");const n=this.state.stickyNodes[this.focusedIndex].node.element,s=this.elements[this.focusedIndex];this._onContextMenu.fire({element:n,anchor:s,browserEvent:e.browserEvent,isStickyScroll:!0})}onKeyDown(e){if(this.domHasFocus&&this.state){if(e.key==="ArrowUp")this.setFocusedElement(Math.max(0,this.focusedIndex-1)),e.preventDefault(),e.stopPropagation();else if(e.key==="ArrowDown"||e.key==="ArrowRight"){if(this.focusedIndex>=this.state.count-1){const t=this.state.stickyNodes[this.state.count-1].startIndex+1;this.view.domFocus(),this.view.setFocus([t]),this.scrollNodeUnderWidget(t,this.state)}else this.setFocusedElement(this.focusedIndex+1);e.preventDefault(),e.stopPropagation()}}}onMouseDown(e){const t=e.browserEvent.target;!d_(t)&&!Jm(t)||(e.browserEvent.preventDefault(),e.browserEvent.stopPropagation())}updateElements(e,t){if(t&&t.count===0)throw new Error("Sticky scroll state must be undefined when there are no sticky nodes");if(t&&t.count!==e.length)throw new Error("Sticky scroll focus received illigel state");const i=this.focusedIndex;if(this.removeFocus(),this.elements=e,this.state=t,t){const n=bn(i,0,t.count-1);this.setFocus(n)}else this.domHasFocus&&this.view.domFocus();this.container.tabIndex=t?0:-1}setFocusedElement(e){const t=this.state;if(!t)throw new Error("Cannot set focus when state is undefined");if(this.setFocus(e),!(e1?t.stickyNodes[t.count-2]:void 0,s=this.view.getElementTop(e),r=n?n.position+n.height+i.height:i.height;this.view.scrollTop=s-r}domFocus(){if(!this.state)throw new Error("Cannot focus when state is undefined");this.container.focus()}focusedLast(){return this.state?this.view.getHTMLElement().classList.contains("sticky-scroll-focused"):!1}removeFocus(){this.focusedIndex!==-1&&(this.toggleElementFocus(this.elements[this.focusedIndex],!1),this.focusedIndex=-1)}setFocus(e){if(0>e)throw new Error("addFocus() can not remove focus");if(!this.state&&e>=0)throw new Error("Cannot set focus index when state is undefined");if(this.state&&e>=this.state.count)throw new Error("Cannot set focus index to an index that does not exist");const t=this.focusedIndex;t>=0&&this.toggleElementFocus(this.elements[t],!1),e>=0&&this.toggleElementFocus(this.elements[e],!0),this.focusedIndex=e}toggleElementFocus(e,t){this.toggleElementActiveFocus(e,t&&this.domHasFocus),this.toggleElementPassiveFocus(e,t)}toggleCurrentElementActiveFocus(e){this.focusedIndex!==-1&&this.toggleElementActiveFocus(this.elements[this.focusedIndex],e)}toggleElementActiveFocus(e,t){e.classList.toggle("focused",t)}toggleElementPassiveFocus(e,t){e.classList.toggle("passive-focused",t)}toggleStickyScrollFocused(e){this.view.getHTMLElement().classList.toggle("sticky-scroll-focused",e)}onFocus(){if(!this.state||this.elements.length===0)throw new Error("Cannot focus when state is undefined or elements are empty");this.domHasFocus=!0,this.toggleStickyScrollFocused(!0),this.toggleCurrentElementActiveFocus(!0),this.focusedIndex===-1&&this.setFocus(0)}onBlur(){this.domHasFocus=!1,this.toggleCurrentElementActiveFocus(!1)}dispose(){this.toggleStickyScrollFocused(!1),this._onDidChangeHasFocus.fire(!1),super.dispose()}}function Qb(o){let e=jd.Unknown;return rS(o.browserEvent.target,"monaco-tl-twistie","monaco-tl-row")?e=jd.Twistie:rS(o.browserEvent.target,"monaco-tl-contents","monaco-tl-row")?e=jd.Element:rS(o.browserEvent.target,"monaco-tree-type-filter","monaco-list")&&(e=jd.Filter),{browserEvent:o.browserEvent,element:o.element?o.element.element:null,target:e}}function ree(o){const e=d_(o.browserEvent.target);return{element:o.element?o.element.element:null,browserEvent:o.browserEvent,anchor:o.anchor,isStickyScroll:e}}function B1(o,e){e(o),o.children.forEach(t=>B1(t,e))}class GS{get nodeSet(){return this._nodeSet||(this._nodeSet=this.createNodeSet()),this._nodeSet}constructor(e,t){this.getFirstViewElementWithTrait=e,this.identityProvider=t,this.nodes=[],this._onDidChange=new A,this.onDidChange=this._onDidChange.event}set(e,t){!t?.__forceEvent&&li(this.nodes,e)||this._set(e,!1,t)}_set(e,t,i){if(this.nodes=[...e],this.elements=void 0,this._nodeSet=void 0,!t){const n=this;this._onDidChange.fire({get elements(){return n.get()},browserEvent:i})}}get(){return this.elements||(this.elements=this.nodes.map(e=>e.element)),[...this.elements]}getNodes(){return this.nodes}has(e){return this.nodeSet.has(e)}onDidModelSplice({insertedNodes:e,deletedNodes:t}){if(!this.identityProvider){const l=this.createNodeSet(),c=d=>l.delete(d);t.forEach(d=>B1(d,c)),this.set([...l.values()]);return}const i=new Set,n=l=>i.add(this.identityProvider.getId(l.element).toString());t.forEach(l=>B1(l,n));const s=new Map,r=l=>s.set(this.identityProvider.getId(l.element).toString(),l);e.forEach(l=>B1(l,r));const a=[];for(const l of this.nodes){const c=this.identityProvider.getId(l.element).toString();if(!i.has(c))a.push(l);else{const h=s.get(c);h&&h.visible&&a.push(h)}}if(this.nodes.length>0&&a.length===0){const l=this.getFirstViewElementWithTrait();l&&a.push(l)}this._set(a,!0)}createNodeSet(){const e=new Set;for(const t of this.nodes)e.add(t);return e}}class aee extends R7{constructor(e,t,i){super(e),this.tree=t,this.stickyScrollProvider=i}onViewPointer(e){if(E7(e.browserEvent.target)||pc(e.browserEvent.target)||Rm(e.browserEvent.target)||e.browserEvent.isHandledByList)return;const t=e.element;if(!t)return super.onViewPointer(e);if(this.isSelectionRangeChangeEvent(e)||this.isSelectionSingleChangeEvent(e))return super.onViewPointer(e);const i=e.browserEvent.target,n=i.classList.contains("monaco-tl-twistie")||i.classList.contains("monaco-icon-label")&&i.classList.contains("folder-icon")&&e.browserEvent.offsetX<16,s=Jm(e.browserEvent.target);let r=!1;if(s?r=!0:typeof this.tree.expandOnlyOnTwistieClick=="function"?r=this.tree.expandOnlyOnTwistieClick(t.element):r=!!this.tree.expandOnlyOnTwistieClick,s)this.handleStickyScrollMouseEvent(e,t);else{if(r&&!n&&e.browserEvent.detail!==2)return super.onViewPointer(e);if(!this.tree.expandOnDoubleClick&&e.browserEvent.detail===2)return super.onViewPointer(e)}if(t.collapsible&&(!s||n)){const a=this.tree.getNodeLocation(t),l=e.browserEvent.altKey;if(this.tree.setFocus([a]),this.tree.toggleCollapsed(a,l),n){e.browserEvent.isHandledByList=!0;return}}s||super.onViewPointer(e)}handleStickyScrollMouseEvent(e,t){if(hY(e.browserEvent.target)||uY(e.browserEvent.target))return;const i=this.stickyScrollProvider();if(!i)throw new Error("Sticky scroll controller not found");const n=this.list.indexOf(t),s=this.list.getElementTop(n),r=i.nodePositionTopBelowWidget(t);this.tree.scrollTop=s-r,this.list.domFocus(),this.list.setFocus([n]),this.list.setSelection([n])}onDoubleClick(e){e.browserEvent.target.classList.contains("monaco-tl-twistie")||!this.tree.expandOnDoubleClick||e.browserEvent.isHandledByList||super.onDoubleClick(e)}onMouseDown(e){const t=e.browserEvent.target;if(!d_(t)&&!Jm(t)){super.onMouseDown(e);return}}onContextMenu(e){const t=e.browserEvent.target;if(!d_(t)&&!Jm(t)){super.onContextMenu(e);return}}}class lee extends go{constructor(e,t,i,n,s,r,a,l){super(e,t,i,n,l),this.focusTrait=s,this.selectionTrait=r,this.anchorTrait=a}createMouseController(e){return new aee(this,e.tree,e.stickyScrollProvider)}splice(e,t,i=[]){if(super.splice(e,t,i),i.length===0)return;const n=[],s=[];let r;i.forEach((a,l)=>{this.focusTrait.has(a)&&n.push(e+l),this.selectionTrait.has(a)&&s.push(e+l),this.anchorTrait.has(a)&&(r=e+l)}),n.length>0&&super.setFocus(Eh([...super.getFocus(),...n])),s.length>0&&super.setSelection(Eh([...super.getSelection(),...s])),typeof r=="number"&&super.setAnchor(r)}setFocus(e,t,i=!1){super.setFocus(e,t),i||this.focusTrait.set(e.map(n=>this.element(n)),t)}setSelection(e,t,i=!1){super.setSelection(e,t),i||this.selectionTrait.set(e.map(n=>this.element(n)),t)}setAnchor(e,t=!1){super.setAnchor(e),t||(typeof e>"u"?this.anchorTrait.set([]):this.anchorTrait.set([this.element(e)]))}}class T9{get onDidScroll(){return this.view.onDidScroll}get onDidChangeFocus(){return this.eventBufferer.wrapEvent(this.focus.onDidChange)}get onDidChangeSelection(){return this.eventBufferer.wrapEvent(this.selection.onDidChange)}get onMouseDblClick(){return J.filter(J.map(this.view.onMouseDblClick,Qb),e=>e.target!==jd.Filter)}get onMouseOver(){return J.map(this.view.onMouseOver,Qb)}get onMouseOut(){return J.map(this.view.onMouseOut,Qb)}get onContextMenu(){return J.any(J.filter(J.map(this.view.onContextMenu,ree),e=>!e.isStickyScroll),this.stickyScrollController?.onContextMenu??J.None)}get onPointer(){return J.map(this.view.onPointer,Qb)}get onKeyDown(){return this.view.onKeyDown}get onDidFocus(){return this.view.onDidFocus}get onDidChangeModel(){return J.signal(this.model.onDidSplice)}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get findMode(){return this.findController?.mode??dl.Highlight}set findMode(e){this.findController&&(this.findController.mode=e)}get findMatchType(){return this.findController?.matchType??Uh.Fuzzy}set findMatchType(e){this.findController&&(this.findController.matchType=e)}get expandOnDoubleClick(){return typeof this._options.expandOnDoubleClick>"u"?!0:this._options.expandOnDoubleClick}get expandOnlyOnTwistieClick(){return typeof this._options.expandOnlyOnTwistieClick>"u"?!0:this._options.expandOnlyOnTwistieClick}get onDidDispose(){return this.view.onDidDispose}constructor(e,t,i,n,s={}){this._user=e,this._options=s,this.eventBufferer=new W_,this.onDidChangeFindOpenState=J.None,this.onDidChangeStickyScrollFocused=J.None,this.disposables=new X,this._onWillRefilter=new A,this.onWillRefilter=this._onWillRefilter.event,this._onDidUpdateOptions=new A,this.treeDelegate=new _2(i);const r=new VM,a=new VM,l=this.disposables.add(new XJ(a.event)),c=new dT;this.renderers=n.map(g=>new BD(g,()=>this.model,r.event,l,c,s));for(const g of this.renderers)this.disposables.add(g);let d;s.keyboardNavigationLabelProvider&&(d=new JJ(this,s.keyboardNavigationLabelProvider,s.filter),s={...s,filter:d},this.disposables.add(d)),this.focus=new GS(()=>this.view.getFocusedElements()[0],s.identityProvider),this.selection=new GS(()=>this.view.getSelectedElements()[0],s.identityProvider),this.anchor=new GS(()=>this.view.getAnchorElement(),s.identityProvider),this.view=new lee(e,t,this.treeDelegate,this.renderers,this.focus,this.selection,this.anchor,{...QJ(()=>this.model,s),tree:this,stickyScrollProvider:()=>this.stickyScrollController}),this.model=this.createModel(e,this.view,s),r.input=this.model.onDidChangeCollapseState;const h=J.forEach(this.model.onDidSplice,g=>{this.eventBufferer.bufferEvents(()=>{this.focus.onDidModelSplice(g),this.selection.onDidModelSplice(g)})},this.disposables);h(()=>null,null,this.disposables);const u=this.disposables.add(new A),f=this.disposables.add(new z_(0));if(this.disposables.add(J.any(h,this.focus.onDidChange,this.selection.onDidChange)(()=>{f.trigger(()=>{const g=new Set;for(const p of this.focus.getNodes())g.add(p);for(const p of this.selection.getNodes())g.add(p);u.fire([...g.values()])})})),a.input=u.event,s.keyboardSupport!==!1){const g=J.chain(this.view.onKeyDown,p=>p.filter(_=>!pc(_.target)).map(_=>new Nt(_)));J.chain(g,p=>p.filter(_=>_.keyCode===15))(this.onLeftArrow,this,this.disposables),J.chain(g,p=>p.filter(_=>_.keyCode===17))(this.onRightArrow,this,this.disposables),J.chain(g,p=>p.filter(_=>_.keyCode===10))(this.onSpace,this,this.disposables)}if((s.findWidgetEnabled??!0)&&s.keyboardNavigationLabelProvider&&s.contextViewProvider){const g=this.options.findWidgetStyles?{styles:this.options.findWidgetStyles}:void 0;this.findController=new eee(this,this.model,this.view,d,s.contextViewProvider,g),this.focusNavigationFilter=p=>this.findController.shouldAllowFocus(p),this.onDidChangeFindOpenState=this.findController.onDidChangeOpenState,this.disposables.add(this.findController),this.onDidChangeFindMode=this.findController.onDidChangeMode,this.onDidChangeFindMatchType=this.findController.onDidChangeMatchType}else this.onDidChangeFindMode=J.None,this.onDidChangeFindMatchType=J.None;s.enableStickyScroll&&(this.stickyScrollController=new GP(this,this.model,this.view,this.renderers,this.treeDelegate,s),this.onDidChangeStickyScrollFocused=this.stickyScrollController.onDidChangeHasFocus),this.styleElement=Vs(this.view.getHTMLElement()),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===Sg.Always)}updateOptions(e={}){this._options={...this._options,...e};for(const t of this.renderers)t.updateOptions(e);this.view.updateOptions(this._options),this.findController?.updateOptions(e),this.updateStickyScroll(e),this._onDidUpdateOptions.fire(this._options),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===Sg.Always)}get options(){return this._options}updateStickyScroll(e){!this.stickyScrollController&&this._options.enableStickyScroll?(this.stickyScrollController=new GP(this,this.model,this.view,this.renderers,this.treeDelegate,this._options),this.onDidChangeStickyScrollFocused=this.stickyScrollController.onDidChangeHasFocus):this.stickyScrollController&&!this._options.enableStickyScroll&&(this.onDidChangeStickyScrollFocused=J.None,this.stickyScrollController.dispose(),this.stickyScrollController=void 0),this.stickyScrollController?.updateOptions(e)}getHTMLElement(){return this.view.getHTMLElement()}get scrollTop(){return this.view.scrollTop}set scrollTop(e){this.view.scrollTop=e}get scrollHeight(){return this.view.scrollHeight}get renderHeight(){return this.view.renderHeight}get ariaLabel(){return this.view.ariaLabel}set ariaLabel(e){this.view.ariaLabel=e}domFocus(){this.stickyScrollController?.focusedLast()?this.stickyScrollController.domFocus():this.view.domFocus()}layout(e,t){this.view.layout(e,t),Pg(t)&&this.findController?.layout(t)}style(e){const t=`.${this.view.domId}`,i=[];e.treeIndentGuidesStroke&&(i.push(`.monaco-list${t}:hover .monaco-tl-indent > .indent-guide, .monaco-list${t}.always .monaco-tl-indent > .indent-guide { border-color: ${e.treeInactiveIndentGuidesStroke}; }`),i.push(`.monaco-list${t} .monaco-tl-indent > .indent-guide.active { border-color: ${e.treeIndentGuidesStroke}; }`));const n=e.treeStickyScrollBackground??e.listBackground;n&&(i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container { background-color: ${n}; }`),i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row { background-color: ${n}; }`)),e.treeStickyScrollBorder&&i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container { border-bottom: 1px solid ${e.treeStickyScrollBorder}; }`),e.treeStickyScrollShadow&&i.push(`.monaco-list${t} .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow { box-shadow: ${e.treeStickyScrollShadow} 0 6px 6px -6px inset; height: 3px; }`),e.listFocusForeground&&(i.push(`.monaco-list${t}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused { color: ${e.listFocusForeground}; }`),i.push(`.monaco-list${t}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused { color: inherit; }`));const s=vl(e.listFocusAndSelectionOutline,vl(e.listSelectionOutline,e.listFocusOutline??""));s&&(i.push(`.monaco-list${t}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused.selected { outline: 1px solid ${s}; outline-offset: -1px;}`),i.push(`.monaco-list${t}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused.selected { outline: inherit;}`)),e.listFocusOutline&&(i.push(`.monaco-list${t}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; }`),i.push(`.monaco-list${t}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused { outline: inherit; }`),i.push(`.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.passive-focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; }`),i.push(`.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused.sticky-scroll-focused .monaco-list-rows .monaco-list-row.focused { outline: inherit; }`),i.push(`.monaco-workbench.context-menu-visible .monaco-list${t}.last-focused:not(.sticky-scroll-focused) .monaco-tree-sticky-container .monaco-list-rows .monaco-list-row.focused { outline: inherit; }`)),this.styleElement.textContent=i.join(` -`),this.view.style(e)}getParentElement(e){const t=this.model.getParentNodeLocation(e);return this.model.getNode(t).element}getFirstElementChild(e){return this.model.getFirstElementChild(e)}getNode(e){return this.model.getNode(e)}getNodeLocation(e){return this.model.getNodeLocation(e)}collapse(e,t=!1){return this.model.setCollapsed(e,!0,t)}expand(e,t=!1){return this.model.setCollapsed(e,!1,t)}toggleCollapsed(e,t=!1){return this.model.setCollapsed(e,void 0,t)}isCollapsible(e){return this.model.isCollapsible(e)}setCollapsible(e,t){return this.model.setCollapsible(e,t)}isCollapsed(e){return this.model.isCollapsed(e)}refilter(){this._onWillRefilter.fire(void 0),this.model.refilter()}setSelection(e,t){this.eventBufferer.bufferEvents(()=>{const i=e.map(s=>this.model.getNode(s));this.selection.set(i,t);const n=e.map(s=>this.model.getListIndex(s)).filter(s=>s>-1);this.view.setSelection(n,t,!0)})}getSelection(){return this.selection.get()}setFocus(e,t){this.eventBufferer.bufferEvents(()=>{const i=e.map(s=>this.model.getNode(s));this.focus.set(i,t);const n=e.map(s=>this.model.getListIndex(s)).filter(s=>s>-1);this.view.setFocus(n,t,!0)})}focusNext(e=1,t=!1,i,n=Qa(i)&&i.altKey?void 0:this.focusNavigationFilter){this.view.focusNext(e,t,i,n)}focusPrevious(e=1,t=!1,i,n=Qa(i)&&i.altKey?void 0:this.focusNavigationFilter){this.view.focusPrevious(e,t,i,n)}focusNextPage(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){return this.view.focusNextPage(e,t)}focusPreviousPage(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){return this.view.focusPreviousPage(e,t,()=>this.stickyScrollController?.height??0)}focusLast(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){this.view.focusLast(e,t)}focusFirst(e,t=Qa(e)&&e.altKey?void 0:this.focusNavigationFilter){this.view.focusFirst(e,t)}getFocus(){return this.focus.get()}reveal(e,t){this.model.expandTo(e);const i=this.model.getListIndex(e);if(i!==-1)if(!this.stickyScrollController)this.view.reveal(i,t);else{const n=this.stickyScrollController.nodePositionTopBelowWidget(this.getNode(e));this.view.reveal(i,t,n)}}onLeftArrow(e){e.preventDefault(),e.stopPropagation();const t=this.view.getFocusedElements();if(t.length===0)return;const i=t[0],n=this.model.getNodeLocation(i);if(!this.model.setCollapsed(n,!0)){const r=this.model.getParentNodeLocation(n);if(!r)return;const a=this.model.getListIndex(r);this.view.reveal(a),this.view.setFocus([a])}}onRightArrow(e){e.preventDefault(),e.stopPropagation();const t=this.view.getFocusedElements();if(t.length===0)return;const i=t[0],n=this.model.getNodeLocation(i);if(!this.model.setCollapsed(n,!1)){if(!i.children.some(l=>l.visible))return;const[r]=this.view.getFocus(),a=r+1;this.view.reveal(a),this.view.setFocus([a])}}onSpace(e){e.preventDefault(),e.stopPropagation();const t=this.view.getFocusedElements();if(t.length===0)return;const i=t[0],n=this.model.getNodeLocation(i),s=e.browserEvent.altKey;this.model.setCollapsed(n,void 0,s)}dispose(){xt(this.disposables),this.stickyScrollController?.dispose(),this.view.dispose()}}class b2{constructor(e,t,i={}){this.user=e,this.rootRef=null,this.nodes=new Map,this.nodesByIdentity=new Map,this.model=new GJ(e,t,null,i),this.onDidSplice=this.model.onDidSplice,this.onDidChangeCollapseState=this.model.onDidChangeCollapseState,this.onDidChangeRenderNodeCount=this.model.onDidChangeRenderNodeCount,i.sorter&&(this.sorter={compare(n,s){return i.sorter.compare(n.element,s.element)}}),this.identityProvider=i.identityProvider}setChildren(e,t=st.empty(),i={}){const n=this.getElementLocation(e);this._setChildren(n,this.preserveCollapseState(t),i)}_setChildren(e,t=st.empty(),i){const n=new Set,s=new Set,r=l=>{if(l.element===null)return;const c=l;if(n.add(c.element),this.nodes.set(c.element,c),this.identityProvider){const d=this.identityProvider.getId(c.element).toString();s.add(d),this.nodesByIdentity.set(d,c)}i.onDidCreateNode?.(c)},a=l=>{if(l.element===null)return;const c=l;if(n.has(c.element)||this.nodes.delete(c.element),this.identityProvider){const d=this.identityProvider.getId(c.element).toString();s.has(d)||this.nodesByIdentity.delete(d)}i.onDidDeleteNode?.(c)};this.model.splice([...e,0],Number.MAX_VALUE,t,{...i,onDidCreateNode:r,onDidDeleteNode:a})}preserveCollapseState(e=st.empty()){return this.sorter&&(e=[...e].sort(this.sorter.compare.bind(this.sorter))),st.map(e,t=>{let i=this.nodes.get(t.element);if(!i&&this.identityProvider){const r=this.identityProvider.getId(t.element).toString();i=this.nodesByIdentity.get(r)}if(!i){let r;return typeof t.collapsed>"u"?r=void 0:t.collapsed===ys.Collapsed||t.collapsed===ys.PreserveOrCollapsed?r=!0:t.collapsed===ys.Expanded||t.collapsed===ys.PreserveOrExpanded?r=!1:r=!!t.collapsed,{...t,children:this.preserveCollapseState(t.children),collapsed:r}}const n=typeof t.collapsible=="boolean"?t.collapsible:i.collapsible;let s;return typeof t.collapsed>"u"||t.collapsed===ys.PreserveOrCollapsed||t.collapsed===ys.PreserveOrExpanded?s=i.collapsed:t.collapsed===ys.Collapsed?s=!0:t.collapsed===ys.Expanded?s=!1:s=!!t.collapsed,{...t,collapsible:n,collapsed:s,children:this.preserveCollapseState(t.children)}})}rerender(e){const t=this.getElementLocation(e);this.model.rerender(t)}getFirstElementChild(e=null){const t=this.getElementLocation(e);return this.model.getFirstElementChild(t)}has(e){return this.nodes.has(e)}getListIndex(e){const t=this.getElementLocation(e);return this.model.getListIndex(t)}getListRenderCount(e){const t=this.getElementLocation(e);return this.model.getListRenderCount(t)}isCollapsible(e){const t=this.getElementLocation(e);return this.model.isCollapsible(t)}setCollapsible(e,t){const i=this.getElementLocation(e);return this.model.setCollapsible(i,t)}isCollapsed(e){const t=this.getElementLocation(e);return this.model.isCollapsed(t)}setCollapsed(e,t,i){const n=this.getElementLocation(e);return this.model.setCollapsed(n,t,i)}expandTo(e){const t=this.getElementLocation(e);this.model.expandTo(t)}refilter(){this.model.refilter()}getNode(e=null){if(e===null)return this.model.getNode(this.model.rootRef);const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);return t}getNodeLocation(e){return e.element}getParentNodeLocation(e){if(e===null)throw new Ds(this.user,"Invalid getParentNodeLocation call");const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);const i=this.model.getNodeLocation(t),n=this.model.getParentNodeLocation(i);return this.model.getNode(n).element}getElementLocation(e){if(e===null)return[];const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);return this.model.getNodeLocation(t)}}function W1(o){const e=[o.element],t=o.incompressible||!1;return{element:{elements:e,incompressible:t},children:st.map(st.from(o.children),W1),collapsible:o.collapsible,collapsed:o.collapsed}}function H1(o){const e=[o.element],t=o.incompressible||!1;let i,n;for(;[n,i]=st.consume(st.from(o.children),2),!(n.length!==1||n[0].incompressible);)o=n[0],e.push(o.element);return{element:{elements:e,incompressible:t},children:st.map(st.concat(n,i),H1),collapsible:o.collapsible,collapsed:o.collapsed}}function WD(o,e=0){let t;return eWD(i,0)),e===0&&o.element.incompressible?{element:o.element.elements[e],children:t,incompressible:!0,collapsible:o.collapsible,collapsed:o.collapsed}:{element:o.element.elements[e],children:t,collapsible:o.collapsible,collapsed:o.collapsed}}function ZP(o){return WD(o,0)}function M9(o,e,t){return o.element===e?{...o,children:t}:{...o,children:st.map(st.from(o.children),i=>M9(i,e,t))}}const cee=o=>({getId(e){return e.elements.map(t=>o.getId(t).toString()).join("\0")}});class dee{get onDidSplice(){return this.model.onDidSplice}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get onDidChangeRenderNodeCount(){return this.model.onDidChangeRenderNodeCount}constructor(e,t,i={}){this.user=e,this.rootRef=null,this.nodes=new Map,this.model=new b2(e,t,i),this.enabled=typeof i.compressionEnabled>"u"?!0:i.compressionEnabled,this.identityProvider=i.identityProvider}setChildren(e,t=st.empty(),i){const n=i.diffIdentityProvider&&cee(i.diffIdentityProvider);if(e===null){const g=st.map(t,this.enabled?H1:W1);this._setChildren(null,g,{diffIdentityProvider:n,diffDepth:1/0});return}const s=this.nodes.get(e);if(!s)throw new Ds(this.user,"Unknown compressed tree node");const r=this.model.getNode(s),a=this.model.getParentNodeLocation(s),l=this.model.getNode(a),c=ZP(r),d=M9(c,e,t),h=(this.enabled?H1:W1)(d),u=i.diffIdentityProvider?((g,p)=>i.diffIdentityProvider.getId(g)===i.diffIdentityProvider.getId(p)):void 0;if(li(h.element.elements,r.element.elements,u)){this._setChildren(s,h.children||st.empty(),{diffIdentityProvider:n,diffDepth:1});return}const f=l.children.map(g=>g===r?h:g);this._setChildren(l.element,f,{diffIdentityProvider:n,diffDepth:r.depth-l.depth})}isCompressionEnabled(){return this.enabled}setCompressionEnabled(e){if(e===this.enabled)return;this.enabled=e;const i=this.model.getNode().children,n=st.map(i,ZP),s=st.map(n,e?H1:W1);this._setChildren(null,s,{diffIdentityProvider:this.identityProvider,diffDepth:1/0})}_setChildren(e,t,i){const n=new Set,s=a=>{for(const l of a.element.elements)n.add(l),this.nodes.set(l,a.element)},r=a=>{for(const l of a.element.elements)n.has(l)||this.nodes.delete(l)};this.model.setChildren(e,t,{...i,onDidCreateNode:s,onDidDeleteNode:r})}has(e){return this.nodes.has(e)}getListIndex(e){const t=this.getCompressedNode(e);return this.model.getListIndex(t)}getListRenderCount(e){const t=this.getCompressedNode(e);return this.model.getListRenderCount(t)}getNode(e){if(typeof e>"u")return this.model.getNode();const t=this.getCompressedNode(e);return this.model.getNode(t)}getNodeLocation(e){const t=this.model.getNodeLocation(e);return t===null?null:t.elements[t.elements.length-1]}getParentNodeLocation(e){const t=this.getCompressedNode(e),i=this.model.getParentNodeLocation(t);return i===null?null:i.elements[i.elements.length-1]}getFirstElementChild(e){const t=this.getCompressedNode(e);return this.model.getFirstElementChild(t)}isCollapsible(e){const t=this.getCompressedNode(e);return this.model.isCollapsible(t)}setCollapsible(e,t){const i=this.getCompressedNode(e);return this.model.setCollapsible(i,t)}isCollapsed(e){const t=this.getCompressedNode(e);return this.model.isCollapsed(t)}setCollapsed(e,t,i){const n=this.getCompressedNode(e);return this.model.setCollapsed(n,t,i)}expandTo(e){const t=this.getCompressedNode(e);this.model.expandTo(t)}rerender(e){const t=this.getCompressedNode(e);this.model.rerender(t)}refilter(){this.model.refilter()}getCompressedNode(e){if(e===null)return null;const t=this.nodes.get(e);if(!t)throw new Ds(this.user,`Tree element not found: ${e}`);return t}}const hee=o=>o[o.length-1];class C2{get element(){return this.node.element===null?null:this.unwrapper(this.node.element)}get children(){return this.node.children.map(e=>new C2(this.unwrapper,e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e,t){this.unwrapper=e,this.node=t}}function uee(o,e){return{splice(t,i,n){e.splice(t,i,n.map(s=>o.map(s)))},updateElementHeight(t,i){e.updateElementHeight(t,i)}}}function fee(o,e){return{...e,identityProvider:e.identityProvider&&{getId(t){return e.identityProvider.getId(o(t))}},sorter:e.sorter&&{compare(t,i){return e.sorter.compare(t.elements[0],i.elements[0])}},filter:e.filter&&{filter(t,i){return e.filter.filter(o(t),i)}}}}class gee{get onDidSplice(){return J.map(this.model.onDidSplice,({insertedNodes:e,deletedNodes:t})=>({insertedNodes:e.map(i=>this.nodeMapper.map(i)),deletedNodes:t.map(i=>this.nodeMapper.map(i))}))}get onDidChangeCollapseState(){return J.map(this.model.onDidChangeCollapseState,({node:e,deep:t})=>({node:this.nodeMapper.map(e),deep:t}))}get onDidChangeRenderNodeCount(){return J.map(this.model.onDidChangeRenderNodeCount,e=>this.nodeMapper.map(e))}constructor(e,t,i={}){this.rootRef=null,this.elementMapper=i.elementMapper||hee;const n=s=>this.elementMapper(s.elements);this.nodeMapper=new m2(s=>new C2(n,s)),this.model=new dee(e,uee(this.nodeMapper,t),fee(n,i))}setChildren(e,t=st.empty(),i={}){this.model.setChildren(e,t,i)}isCompressionEnabled(){return this.model.isCompressionEnabled()}setCompressionEnabled(e){this.model.setCompressionEnabled(e)}has(e){return this.model.has(e)}getListIndex(e){return this.model.getListIndex(e)}getListRenderCount(e){return this.model.getListRenderCount(e)}getNode(e){return this.nodeMapper.map(this.model.getNode(e))}getNodeLocation(e){return e.element}getParentNodeLocation(e){return this.model.getParentNodeLocation(e)}getFirstElementChild(e){const t=this.model.getFirstElementChild(e);return t===null||typeof t>"u"?t:this.elementMapper(t.elements)}isCollapsible(e){return this.model.isCollapsible(e)}setCollapsible(e,t){return this.model.setCollapsible(e,t)}isCollapsed(e){return this.model.isCollapsed(e)}setCollapsed(e,t,i){return this.model.setCollapsed(e,t,i)}expandTo(e){return this.model.expandTo(e)}rerender(e){return this.model.rerender(e)}refilter(){return this.model.refilter()}getCompressedTreeNode(e=null){return this.model.getNode(e)}}var mee=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s};class v2 extends T9{get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}constructor(e,t,i,n,s={}){super(e,t,i,n,s),this.user=e}setChildren(e,t=st.empty(),i){this.model.setChildren(e,t,i)}rerender(e){if(e===void 0){this.view.rerender();return}this.model.rerender(e)}hasElement(e){return this.model.has(e)}createModel(e,t,i){return new b2(e,t,i)}}class R9{get compressedTreeNodeProvider(){return this._compressedTreeNodeProvider()}constructor(e,t,i){this._compressedTreeNodeProvider=e,this.stickyScrollDelegate=t,this.renderer=i,this.templateId=i.templateId,i.onDidChangeTwistieState&&(this.onDidChangeTwistieState=i.onDidChangeTwistieState)}renderTemplate(e){return{compressedTreeNode:void 0,data:this.renderer.renderTemplate(e)}}renderElement(e,t,i,n){let s=this.stickyScrollDelegate.getCompressedNode(e);s||(s=this.compressedTreeNodeProvider.getCompressedTreeNode(e.element)),s.element.elements.length===1?(i.compressedTreeNode=void 0,this.renderer.renderElement(e,t,i.data,n)):(i.compressedTreeNode=s,this.renderer.renderCompressedElements(s,t,i.data,n))}disposeElement(e,t,i,n){i.compressedTreeNode?this.renderer.disposeCompressedElements?.(i.compressedTreeNode,t,i.data,n):this.renderer.disposeElement?.(e,t,i.data,n)}disposeTemplate(e){this.renderer.disposeTemplate(e.data)}renderTwistie(e,t){return this.renderer.renderTwistie?this.renderer.renderTwistie(e,t):!1}}mee([Jt],R9.prototype,"compressedTreeNodeProvider",null);class pee{constructor(e){this.modelProvider=e,this.compressedStickyNodes=new Map}getCompressedNode(e){return this.compressedStickyNodes.get(e)}constrainStickyScrollNodes(e,t,i){if(this.compressedStickyNodes.clear(),e.length===0)return[];for(let n=0;ni||n>=t-1&&tthis,a=new pee(()=>this.model),l=n.map(c=>new R9(r,a,c));super(e,t,i,l,{..._ee(r,s),stickyScrollDelegate:a})}setChildren(e,t=st.empty(),i){this.model.setChildren(e,t,i)}createModel(e,t,i){return new gee(e,t,i)}updateOptions(e={}){super.updateOptions(e),typeof e.compressionEnabled<"u"&&this.model.setCompressionEnabled(e.compressionEnabled)}getCompressedTreeNode(e=null){return this.model.getCompressedTreeNode(e)}}function ZS(o){return{...o,children:[],refreshPromise:void 0,stale:!0,slow:!1,forceExpanded:!1}}function HD(o,e){return e.parent?e.parent===o?!0:HD(o,e.parent):!1}function bee(o,e){return o===e||HD(o,e)||HD(e,o)}class w2{get element(){return this.node.element.element}get children(){return this.node.children.map(e=>new w2(e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e){this.node=e}}class Cee{constructor(e,t,i){this.renderer=e,this.nodeMapper=t,this.onDidChangeTwistieState=i,this.renderedNodes=new Map,this.templateId=e.templateId}renderTemplate(e){return{templateData:this.renderer.renderTemplate(e)}}renderElement(e,t,i,n){this.renderer.renderElement(this.nodeMapper.map(e),t,i.templateData,n)}renderTwistie(e,t){return e.slow?(t.classList.add(...Ee.asClassNameArray(ie.treeItemLoading)),!0):(t.classList.remove(...Ee.asClassNameArray(ie.treeItemLoading)),!1)}disposeElement(e,t,i,n){this.renderer.disposeElement?.(this.nodeMapper.map(e),t,i.templateData,n)}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}dispose(){this.renderedNodes.clear()}}function YP(o){return{browserEvent:o.browserEvent,elements:o.elements.map(e=>e.element)}}function QP(o){return{browserEvent:o.browserEvent,element:o.element&&o.element.element,target:o.target}}class vee extends J_{constructor(e){super(e.elements.map(t=>t.element)),this.data=e}}function YS(o){return o instanceof J_?new vee(o):o}class wee{constructor(e){this.dnd=e}getDragURI(e){return this.dnd.getDragURI(e.element)}getDragLabel(e,t){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map(i=>i.element),t)}onDragStart(e,t){this.dnd.onDragStart?.(YS(e),t)}onDragOver(e,t,i,n,s,r=!0){return this.dnd.onDragOver(YS(e),t&&t.element,i,n,s)}drop(e,t,i,n,s){this.dnd.drop(YS(e),t&&t.element,i,n,s)}onDragEnd(e){this.dnd.onDragEnd?.(e)}dispose(){this.dnd.dispose()}}function P9(o){return o&&{...o,collapseByDefault:!0,identityProvider:o.identityProvider&&{getId(e){return o.identityProvider.getId(e.element)}},dnd:o.dnd&&new wee(o.dnd),multipleSelectionController:o.multipleSelectionController&&{isSelectionSingleChangeEvent(e){return o.multipleSelectionController.isSelectionSingleChangeEvent({...e,element:e.element})},isSelectionRangeChangeEvent(e){return o.multipleSelectionController.isSelectionRangeChangeEvent({...e,element:e.element})}},accessibilityProvider:o.accessibilityProvider&&{...o.accessibilityProvider,getPosInSet:void 0,getSetSize:void 0,getRole:o.accessibilityProvider.getRole?e=>o.accessibilityProvider.getRole(e.element):()=>"treeitem",isChecked:o.accessibilityProvider.isChecked?e=>!!o.accessibilityProvider?.isChecked(e.element):void 0,getAriaLabel(e){return o.accessibilityProvider.getAriaLabel(e.element)},getWidgetAriaLabel(){return o.accessibilityProvider.getWidgetAriaLabel()},getWidgetRole:o.accessibilityProvider.getWidgetRole?()=>o.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:o.accessibilityProvider.getAriaLevel&&(e=>o.accessibilityProvider.getAriaLevel(e.element)),getActiveDescendantId:o.accessibilityProvider.getActiveDescendantId&&(e=>o.accessibilityProvider.getActiveDescendantId(e.element))},filter:o.filter&&{filter(e,t){return o.filter.filter(e.element,t)}},keyboardNavigationLabelProvider:o.keyboardNavigationLabelProvider&&{...o.keyboardNavigationLabelProvider,getKeyboardNavigationLabel(e){return o.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e.element)}},sorter:void 0,expandOnlyOnTwistieClick:typeof o.expandOnlyOnTwistieClick>"u"?void 0:typeof o.expandOnlyOnTwistieClick!="function"?o.expandOnlyOnTwistieClick:(e=>o.expandOnlyOnTwistieClick(e.element)),defaultFindVisibility:e=>e.hasChildren&&e.stale?1:typeof o.defaultFindVisibility=="number"?o.defaultFindVisibility:typeof o.defaultFindVisibility>"u"?2:o.defaultFindVisibility(e.element)}}function VD(o,e){e(o),o.children.forEach(t=>VD(t,e))}class O9{get onDidScroll(){return this.tree.onDidScroll}get onDidChangeFocus(){return J.map(this.tree.onDidChangeFocus,YP)}get onDidChangeSelection(){return J.map(this.tree.onDidChangeSelection,YP)}get onMouseDblClick(){return J.map(this.tree.onMouseDblClick,QP)}get onPointer(){return J.map(this.tree.onPointer,QP)}get onDidFocus(){return this.tree.onDidFocus}get onDidChangeModel(){return this.tree.onDidChangeModel}get onDidChangeCollapseState(){return this.tree.onDidChangeCollapseState}get onDidChangeFindOpenState(){return this.tree.onDidChangeFindOpenState}get onDidChangeStickyScrollFocused(){return this.tree.onDidChangeStickyScrollFocused}get onDidDispose(){return this.tree.onDidDispose}constructor(e,t,i,n,s,r={}){this.user=e,this.dataSource=s,this.nodes=new Map,this.subTreeRefreshPromises=new Map,this.refreshPromises=new Map,this._onDidRender=new A,this._onDidChangeNodeSlowState=new A,this.nodeMapper=new m2(a=>new w2(a)),this.disposables=new X,this.identityProvider=r.identityProvider,this.autoExpandSingleChildren=typeof r.autoExpandSingleChildren>"u"?!1:r.autoExpandSingleChildren,this.sorter=r.sorter,this.getDefaultCollapseState=a=>r.collapseByDefault?r.collapseByDefault(a)?ys.PreserveOrCollapsed:ys.PreserveOrExpanded:void 0,this.tree=this.createTree(e,t,i,n,r),this.onDidChangeFindMode=this.tree.onDidChangeFindMode,this.onDidChangeFindMatchType=this.tree.onDidChangeFindMatchType,this.root=ZS({element:void 0,parent:null,hasChildren:!0,defaultCollapseState:void 0}),this.identityProvider&&(this.root={...this.root,id:null}),this.nodes.set(null,this.root),this.tree.onDidChangeCollapseState(this._onDidChangeCollapseState,this,this.disposables)}createTree(e,t,i,n,s){const r=new _2(i),a=n.map(c=>new Cee(c,this.nodeMapper,this._onDidChangeNodeSlowState.event)),l=P9(s)||{};return new v2(e,t,r,a,l)}updateOptions(e={}){this.tree.updateOptions(e)}getHTMLElement(){return this.tree.getHTMLElement()}get scrollTop(){return this.tree.scrollTop}set scrollTop(e){this.tree.scrollTop=e}get scrollHeight(){return this.tree.scrollHeight}get renderHeight(){return this.tree.renderHeight}domFocus(){this.tree.domFocus()}layout(e,t){this.tree.layout(e,t)}style(e){this.tree.style(e)}getInput(){return this.root.element}async setInput(e,t){this.refreshPromises.forEach(n=>n.cancel()),this.refreshPromises.clear(),this.root.element=e;const i=t&&{viewState:t,focus:[],selection:[]};await this._updateChildren(e,!0,!1,i),i&&(this.tree.setFocus(i.focus),this.tree.setSelection(i.selection)),t&&typeof t.scrollTop=="number"&&(this.scrollTop=t.scrollTop)}async _updateChildren(e=this.root.element,t=!0,i=!1,n,s){if(typeof this.root.element>"u")throw new Ds(this.user,"Tree input not set");this.root.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event));const r=this.getDataNode(e);if(await this.refreshAndRenderNode(r,t,n,s),i)try{this.tree.rerender(r)}catch{}}rerender(e){if(e===void 0||e===this.root.element){this.tree.rerender();return}const t=this.getDataNode(e);this.tree.rerender(t)}getNode(e=this.root.element){const t=this.getDataNode(e),i=this.tree.getNode(t===this.root?null:t);return this.nodeMapper.map(i)}collapse(e,t=!1){const i=this.getDataNode(e);return this.tree.collapse(i===this.root?null:i,t)}async expand(e,t=!1){if(typeof this.root.element>"u")throw new Ds(this.user,"Tree input not set");this.root.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event));const i=this.getDataNode(e);if(this.tree.hasElement(i)&&!this.tree.isCollapsible(i)||(i.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event)),i!==this.root&&!i.refreshPromise&&!this.tree.isCollapsed(i)))return!1;const n=this.tree.expand(i===this.root?null:i,t);return i.refreshPromise&&(await this.root.refreshPromise,await J.toPromise(this._onDidRender.event)),n}setSelection(e,t){const i=e.map(n=>this.getDataNode(n));this.tree.setSelection(i,t)}getSelection(){return this.tree.getSelection().map(t=>t.element)}setFocus(e,t){const i=e.map(n=>this.getDataNode(n));this.tree.setFocus(i,t)}getFocus(){return this.tree.getFocus().map(t=>t.element)}reveal(e,t){this.tree.reveal(this.getDataNode(e),t)}getParentElement(e){const t=this.tree.getParentElement(this.getDataNode(e));return t&&t.element}getFirstElementChild(e=this.root.element){const t=this.getDataNode(e),i=this.tree.getFirstElementChild(t===this.root?null:t);return i&&i.element}getDataNode(e){const t=this.nodes.get(e===this.root.element?null:e);if(!t)throw new Ds(this.user,`Data tree node not found: ${e}`);return t}async refreshAndRenderNode(e,t,i,n){await this.refreshNode(e,t,i),!this.disposables.isDisposed&&this.render(e,i,n)}async refreshNode(e,t,i){let n;if(this.subTreeRefreshPromises.forEach((s,r)=>{!n&&bee(r,e)&&(n=s.then(()=>this.refreshNode(e,t,i)))}),n)return n;if(e!==this.root&&this.tree.getNode(e).collapsed){e.hasChildren=!!this.dataSource.hasChildren(e.element),e.stale=!0,this.setChildren(e,[],t,i);return}return this.doRefreshSubTree(e,t,i)}async doRefreshSubTree(e,t,i){let n;e.refreshPromise=new Promise(s=>n=s),this.subTreeRefreshPromises.set(e,e.refreshPromise),e.refreshPromise.finally(()=>{e.refreshPromise=void 0,this.subTreeRefreshPromises.delete(e)});try{const s=await this.doRefreshNode(e,t,i);e.stale=!1,await Wx.settled(s.map(r=>this.doRefreshSubTree(r,t,i)))}finally{n()}}async doRefreshNode(e,t,i){e.hasChildren=!!this.dataSource.hasChildren(e.element);let n;if(!e.hasChildren)n=Promise.resolve(st.empty());else{const s=this.doGetChildren(e);if(PM(s))n=Promise.resolve(s);else{const r=og(800);r.then(()=>{e.slow=!0,this._onDidChangeNodeSlowState.fire(e)},a=>null),n=s.finally(()=>r.cancel())}}try{const s=await n;return this.setChildren(e,s,t,i)}catch(s){if(e!==this.root&&this.tree.hasElement(e)&&this.tree.collapse(e),$c(s))return[];throw s}finally{e.slow&&(e.slow=!1,this._onDidChangeNodeSlowState.fire(e))}}doGetChildren(e){let t=this.refreshPromises.get(e);if(t)return t;const i=this.dataSource.getChildren(e.element);return PM(i)?this.processChildren(i):(t=wa(async()=>this.processChildren(await i)),this.refreshPromises.set(e,t),t.finally(()=>{this.refreshPromises.delete(e)}))}_onDidChangeCollapseState({node:e,deep:t}){e.element!==null&&!e.collapsed&&e.element.stale&&(t?this.collapse(e.element.element):this.refreshAndRenderNode(e.element,!1).catch(Ze))}setChildren(e,t,i,n){const s=[...t];if(e.children.length===0&&s.length===0)return[];const r=new Map,a=new Map;for(const d of e.children)r.set(d.element,d),this.identityProvider&&a.set(d.id,{node:d,collapsed:this.tree.hasElement(d)&&this.tree.isCollapsed(d)});const l=[],c=s.map(d=>{const h=!!this.dataSource.hasChildren(d);if(!this.identityProvider){const p=ZS({element:d,parent:e,hasChildren:h,defaultCollapseState:this.getDefaultCollapseState(d)});return h&&p.defaultCollapseState===ys.PreserveOrExpanded&&l.push(p),p}const u=this.identityProvider.getId(d).toString(),f=a.get(u);if(f){const p=f.node;return r.delete(p.element),this.nodes.delete(p.element),this.nodes.set(d,p),p.element=d,p.hasChildren=h,i?f.collapsed?(p.children.forEach(_=>VD(_,b=>this.nodes.delete(b.element))),p.children.splice(0,p.children.length),p.stale=!0):l.push(p):h&&!f.collapsed&&l.push(p),p}const g=ZS({element:d,parent:e,id:u,hasChildren:h,defaultCollapseState:this.getDefaultCollapseState(d)});return n&&n.viewState.focus&&n.viewState.focus.indexOf(u)>-1&&n.focus.push(g),n&&n.viewState.selection&&n.viewState.selection.indexOf(u)>-1&&n.selection.push(g),(n&&n.viewState.expanded&&n.viewState.expanded.indexOf(u)>-1||h&&g.defaultCollapseState===ys.PreserveOrExpanded)&&l.push(g),g});for(const d of r.values())VD(d,h=>this.nodes.delete(h.element));for(const d of c)this.nodes.set(d.element,d);return e.children.splice(0,e.children.length,...c),e!==this.root&&this.autoExpandSingleChildren&&c.length===1&&l.length===0&&(c[0].forceExpanded=!0,l.push(c[0])),l}render(e,t,i){const n=e.children.map(r=>this.asTreeElement(r,t)),s=i&&{...i,diffIdentityProvider:i.diffIdentityProvider&&{getId(r){return i.diffIdentityProvider.getId(r.element)}}};this.tree.setChildren(e===this.root?null:e,n,s),e!==this.root&&this.tree.setCollapsible(e,e.hasChildren),this._onDidRender.fire()}asTreeElement(e,t){if(e.stale)return{element:e,collapsible:e.hasChildren,collapsed:!0};let i;return t&&t.viewState.expanded&&e.id&&t.viewState.expanded.indexOf(e.id)>-1?i=!1:e.forceExpanded?(i=!1,e.forceExpanded=!1):i=e.defaultCollapseState,{element:e,children:e.hasChildren?st.map(e.children,n=>this.asTreeElement(n,t)):[],collapsible:e.hasChildren,collapsed:i}}processChildren(e){return this.sorter&&(e=[...e].sort(this.sorter.compare.bind(this.sorter))),e}dispose(){this.disposables.dispose(),this.tree.dispose()}}class y2{get element(){return{elements:this.node.element.elements.map(e=>e.element),incompressible:this.node.element.incompressible}}get children(){return this.node.children.map(e=>new y2(e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e){this.node=e}}class yee{constructor(e,t,i,n){this.renderer=e,this.nodeMapper=t,this.compressibleNodeMapperProvider=i,this.onDidChangeTwistieState=n,this.renderedNodes=new Map,this.disposables=[],this.templateId=e.templateId}renderTemplate(e){return{templateData:this.renderer.renderTemplate(e)}}renderElement(e,t,i,n){this.renderer.renderElement(this.nodeMapper.map(e),t,i.templateData,n)}renderCompressedElements(e,t,i,n){this.renderer.renderCompressedElements(this.compressibleNodeMapperProvider().map(e),t,i.templateData,n)}renderTwistie(e,t){return e.slow?(t.classList.add(...Ee.asClassNameArray(ie.treeItemLoading)),!0):(t.classList.remove(...Ee.asClassNameArray(ie.treeItemLoading)),!1)}disposeElement(e,t,i,n){this.renderer.disposeElement?.(this.nodeMapper.map(e),t,i.templateData,n)}disposeCompressedElements(e,t,i,n){this.renderer.disposeCompressedElements?.(this.compressibleNodeMapperProvider().map(e),t,i.templateData,n)}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}dispose(){this.renderedNodes.clear(),this.disposables=xt(this.disposables)}}function See(o){const e=o&&P9(o);return e&&{...e,keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&{...e.keyboardNavigationLabelProvider,getCompressedNodeKeyboardNavigationLabel(t){return o.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(t.map(i=>i.element))}}}}class Lee extends O9{constructor(e,t,i,n,s,r,a={}){super(e,t,i,s,r,a),this.compressionDelegate=n,this.compressibleNodeMapper=new m2(l=>new y2(l)),this.filter=a.filter}createTree(e,t,i,n,s){const r=new _2(i),a=n.map(c=>new yee(c,this.nodeMapper,()=>this.compressibleNodeMapper,this._onDidChangeNodeSlowState.event)),l=See(s)||{};return new A9(e,t,r,a,l)}asTreeElement(e,t){return{incompressible:this.compressionDelegate.isIncompressible(e.element),...super.asTreeElement(e,t)}}updateOptions(e={}){this.tree.updateOptions(e)}render(e,t,i){if(!this.identityProvider)return super.render(e,t);const n=f=>this.identityProvider.getId(f).toString(),s=f=>{const g=new Set;for(const p of f){const _=this.tree.getCompressedTreeNode(p===this.root?null:p);if(_.element)for(const b of _.element.elements)g.add(n(b.element))}return g},r=s(this.tree.getSelection()),a=s(this.tree.getFocus());super.render(e,t,i);const l=this.getSelection();let c=!1;const d=this.getFocus();let h=!1;const u=f=>{const g=f.element;if(g)for(let p=0;p{const i=this.filter.filter(t,1),n=xee(i);if(n===2)throw new Error("Recursive tree visibility not supported in async data compressed trees");return n===1})),super.processChildren(e)}}function xee(o){return typeof o=="boolean"?o?1:0:p2(o)?p_(o.visibility):p_(o)}class kee extends T9{constructor(e,t,i,n,s,r={}){super(e,t,i,n,r),this.user=e,this.dataSource=s,this.identityProvider=r.identityProvider}createModel(e,t,i){return new b2(e,t,i)}}new le("isMac",Ue,m("isMac","Whether the operating system is macOS"));new le("isLinux",Un,m("isLinux","Whether the operating system is Linux"));new le("isWindows",kn,m("isWindows","Whether the operating system is Windows"));const F9=new le("isWeb",Og,m("isWeb","Whether the platform is a web browser"));new le("isMacNative",Ue&&!Og,m("isMacNative","Whether the operating system is macOS on a non-browser platform"));new le("isIOS",Tc,m("isIOS","Whether the operating system is iOS"));new le("isMobile",V5,m("isMobile","Whether the platform is a mobile web browser"));new le("isDevelopment",!1,!0);new le("productQualityType","",m("productQualityType","Quality type of VS Code"));const B9="inputFocus",W9=new le(B9,!1,m("inputFocus","Whether keyboard focus is inside an input box"));var Rl=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Dt=function(o,e){return function(t,i){e(t,i,o)}};const mo=He("listService");class Dee{get lastFocusedList(){return this._lastFocusedWidget}constructor(){this.disposables=new X,this.lists=[],this._lastFocusedWidget=void 0,this._hasCreatedStyleController=!1}setLastFocusedList(e){e!==this._lastFocusedWidget&&(this._lastFocusedWidget?.getHTMLElement().classList.remove("last-focused"),this._lastFocusedWidget=e,this._lastFocusedWidget?.getHTMLElement().classList.add("last-focused"))}register(e,t){if(this._hasCreatedStyleController||(this._hasCreatedStyleController=!0,new A7(Vs(),"").style(hu)),this.lists.some(n=>n.widget===e))throw new Error("Cannot register the same widget multiple times");const i={widget:e,extraContextKeys:t};return this.lists.push(i),M0(e.getHTMLElement())&&this.setLastFocusedList(e),No(e.onDidFocus(()=>this.setLastFocusedList(e)),_e(()=>this.lists.splice(this.lists.indexOf(i),1)),e.onDidDispose(()=>{this.lists=this.lists.filter(n=>n!==i),this._lastFocusedWidget===e&&this.setLastFocusedList(void 0)}))}dispose(){this.disposables.dispose()}}const __=new le("listScrollAtBoundary","none");re.or(__.isEqualTo("top"),__.isEqualTo("both"));re.or(__.isEqualTo("bottom"),__.isEqualTo("both"));const H9=new le("listFocus",!0),V9=new le("treestickyScrollFocused",!1),gy=new le("listSupportsMultiselect",!0),z9=re.and(H9,re.not(B9),V9.negate()),S2=new le("listHasSelectionOrFocus",!1),L2=new le("listDoubleSelection",!1),x2=new le("listMultiSelection",!1),my=new le("listSelectionNavigation",!1),Iee=new le("listSupportsFind",!0),k2=new le("treeElementCanCollapse",!1),Eee=new le("treeElementHasParent",!1),D2=new le("treeElementCanExpand",!1),Nee=new le("treeElementHasChild",!1),Tee=new le("treeFindOpen",!1),U9="listTypeNavigationMode",$9="listAutomaticKeyboardNavigation";function py(o,e){const t=o.createScoped(e.getHTMLElement());return H9.bindTo(t),t}function _y(o,e){const t=__.bindTo(o),i=()=>{const n=e.scrollTop===0,s=e.scrollHeight-e.renderHeight-e.scrollTop<1;n&&s?t.set("both"):n?t.set("top"):s?t.set("bottom"):t.set("none")};return i(),e.onDidScroll(i)}const uu="workbench.list.multiSelectModifier",V1="workbench.list.openMode",ao="workbench.list.horizontalScrolling",I2="workbench.list.defaultFindMode",E2="workbench.list.typeNavigationMode",cv="workbench.list.keyboardNavigation",br="workbench.list.scrollByPage",N2="workbench.list.defaultFindMatchType",b_="workbench.tree.indent",dv="workbench.tree.renderIndentGuides",Cr="workbench.list.smoothScrolling",_a="workbench.list.mouseWheelScrollSensitivity",ba="workbench.list.fastScrollSensitivity",hv="workbench.tree.expandMode",uv="workbench.tree.enableStickyScroll",fv="workbench.tree.stickyScrollMaxItemCount";function Ca(o){return o.getValue(uu)==="alt"}class Mee extends z{constructor(e){super(),this.configurationService=e,this.useAltAsMultipleSelectionModifier=Ca(e),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(e=>{e.affectsConfiguration(uu)&&(this.useAltAsMultipleSelectionModifier=Ca(this.configurationService))}))}isSelectionSingleChangeEvent(e){return this.useAltAsMultipleSelectionModifier?e.browserEvent.altKey:T7(e)}isSelectionRangeChangeEvent(e){return M7(e)}}function by(o,e){const t=o.get(lt),i=o.get(vt),n=new X;return[{...e,keyboardNavigationDelegate:{mightProducePrintableCharacter(r){return i.mightProducePrintableCharacter(r)}},smoothScrolling:!!t.getValue(Cr),mouseWheelScrollSensitivity:t.getValue(_a),fastScrollSensitivity:t.getValue(ba),multipleSelectionController:e.multipleSelectionController??n.add(new Mee(t)),keyboardNavigationEventFilter:Pee(i),scrollByPage:!!t.getValue(br)},n]}let XP=class extends go{constructor(e,t,i,n,s,r,a,l,c){const d=typeof s.horizontalScrolling<"u"?s.horizontalScrolling:!!l.getValue(ao),[h,u]=c.invokeFunction(by,s);super(e,t,i,n,{keyboardSupport:!1,...h,horizontalScrolling:d}),this.disposables.add(u),this.contextKeyService=py(r,this),this.disposables.add(_y(this.contextKeyService,this)),this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(s.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!s.selectionNavigation),this.listHasSelectionOrFocus=S2.bindTo(this.contextKeyService),this.listDoubleSelection=L2.bindTo(this.contextKeyService),this.listMultiSelection=x2.bindTo(this.contextKeyService),this.horizontalScrolling=s.horizontalScrolling,this._useAltAsMultipleSelectionModifier=Ca(l),this.disposables.add(this.contextKeyService),this.disposables.add(a.register(this)),this.updateStyles(s.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{const g=this.getSelection(),p=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(g.length>0||p.length>0),this.listMultiSelection.set(g.length>1),this.listDoubleSelection.set(g.length===2)})})),this.disposables.add(this.onDidChangeFocus(()=>{const g=this.getSelection(),p=this.getFocus();this.listHasSelectionOrFocus.set(g.length>0||p.length>0)})),this.disposables.add(l.onDidChangeConfiguration(g=>{g.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(l));let p={};if(g.affectsConfiguration(ao)&&this.horizontalScrolling===void 0){const _=!!l.getValue(ao);p={...p,horizontalScrolling:_}}if(g.affectsConfiguration(br)){const _=!!l.getValue(br);p={...p,scrollByPage:_}}if(g.affectsConfiguration(Cr)){const _=!!l.getValue(Cr);p={...p,smoothScrolling:_}}if(g.affectsConfiguration(_a)){const _=l.getValue(_a);p={...p,mouseWheelScrollSensitivity:_}}if(g.affectsConfiguration(ba)){const _=l.getValue(ba);p={...p,fastScrollSensitivity:_}}Object.keys(p).length>0&&this.updateOptions(p)})),this.navigator=new K9(this,{configurationService:l,...s}),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?$g(e):hu)}};XP=Rl([Dt(5,De),Dt(6,mo),Dt(7,lt),Dt(8,ke)],XP);let JP=class extends FJ{constructor(e,t,i,n,s,r,a,l,c){const d=typeof s.horizontalScrolling<"u"?s.horizontalScrolling:!!l.getValue(ao),[h,u]=c.invokeFunction(by,s);super(e,t,i,n,{keyboardSupport:!1,...h,horizontalScrolling:d}),this.disposables=new X,this.disposables.add(u),this.contextKeyService=py(r,this),this.disposables.add(_y(this.contextKeyService,this.widget)),this.horizontalScrolling=s.horizontalScrolling,this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(s.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!s.selectionNavigation),this._useAltAsMultipleSelectionModifier=Ca(l),this.disposables.add(this.contextKeyService),this.disposables.add(a.register(this)),this.updateStyles(s.overrideStyles),this.disposables.add(l.onDidChangeConfiguration(g=>{g.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(l));let p={};if(g.affectsConfiguration(ao)&&this.horizontalScrolling===void 0){const _=!!l.getValue(ao);p={...p,horizontalScrolling:_}}if(g.affectsConfiguration(br)){const _=!!l.getValue(br);p={...p,scrollByPage:_}}if(g.affectsConfiguration(Cr)){const _=!!l.getValue(Cr);p={...p,smoothScrolling:_}}if(g.affectsConfiguration(_a)){const _=l.getValue(_a);p={...p,mouseWheelScrollSensitivity:_}}if(g.affectsConfiguration(ba)){const _=l.getValue(ba);p={...p,fastScrollSensitivity:_}}Object.keys(p).length>0&&this.updateOptions(p)})),this.navigator=new K9(this,{configurationService:l,...s}),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?$g(e):hu)}dispose(){this.disposables.dispose(),super.dispose()}};JP=Rl([Dt(5,De),Dt(6,mo),Dt(7,lt),Dt(8,ke)],JP);let eO=class extends FD{constructor(e,t,i,n,s,r,a,l,c,d){const h=typeof r.horizontalScrolling<"u"?r.horizontalScrolling:!!c.getValue(ao),[u,f]=d.invokeFunction(by,r);super(e,t,i,n,s,{keyboardSupport:!1,...u,horizontalScrolling:h}),this.disposables.add(f),this.contextKeyService=py(a,this),this.disposables.add(_y(this.contextKeyService,this)),this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(r.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!r.selectionNavigation),this.listHasSelectionOrFocus=S2.bindTo(this.contextKeyService),this.listDoubleSelection=L2.bindTo(this.contextKeyService),this.listMultiSelection=x2.bindTo(this.contextKeyService),this.horizontalScrolling=r.horizontalScrolling,this._useAltAsMultipleSelectionModifier=Ca(c),this.disposables.add(this.contextKeyService),this.disposables.add(l.register(this)),this.updateStyles(r.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{const p=this.getSelection(),_=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(p.length>0||_.length>0),this.listMultiSelection.set(p.length>1),this.listDoubleSelection.set(p.length===2)})})),this.disposables.add(this.onDidChangeFocus(()=>{const p=this.getSelection(),_=this.getFocus();this.listHasSelectionOrFocus.set(p.length>0||_.length>0)})),this.disposables.add(c.onDidChangeConfiguration(p=>{p.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(c));let _={};if(p.affectsConfiguration(ao)&&this.horizontalScrolling===void 0){const b=!!c.getValue(ao);_={..._,horizontalScrolling:b}}if(p.affectsConfiguration(br)){const b=!!c.getValue(br);_={..._,scrollByPage:b}}if(p.affectsConfiguration(Cr)){const b=!!c.getValue(Cr);_={..._,smoothScrolling:b}}if(p.affectsConfiguration(_a)){const b=c.getValue(_a);_={..._,mouseWheelScrollSensitivity:b}}if(p.affectsConfiguration(ba)){const b=c.getValue(ba);_={..._,fastScrollSensitivity:b}}Object.keys(_).length>0&&this.updateOptions(_)})),this.navigator=new Ree(this,{configurationService:c,...r}),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?$g(e):hu)}dispose(){this.disposables.dispose(),super.dispose()}};eO=Rl([Dt(6,De),Dt(7,mo),Dt(8,lt),Dt(9,ke)],eO);class T2 extends z{constructor(e,t){super(),this.widget=e,this._onDidOpen=this._register(new A),this.onDidOpen=this._onDidOpen.event,this._register(J.filter(this.widget.onDidChangeSelection,i=>Qa(i.browserEvent))(i=>this.onSelectionFromKeyboard(i))),this._register(this.widget.onPointer(i=>this.onPointer(i.element,i.browserEvent))),this._register(this.widget.onMouseDblClick(i=>this.onMouseDblClick(i.element,i.browserEvent))),typeof t?.openOnSingleClick!="boolean"&&t?.configurationService?(this.openOnSingleClick=t?.configurationService.getValue(V1)!=="doubleClick",this._register(t?.configurationService.onDidChangeConfiguration(i=>{i.affectsConfiguration(V1)&&(this.openOnSingleClick=t?.configurationService.getValue(V1)!=="doubleClick")}))):this.openOnSingleClick=t?.openOnSingleClick??!0}onSelectionFromKeyboard(e){if(e.elements.length!==1)return;const t=e.browserEvent,i=typeof t.preserveFocus=="boolean"?t.preserveFocus:!0,n=typeof t.pinned=="boolean"?t.pinned:!i;this._open(this.getSelectedElement(),i,n,!1,e.browserEvent)}onPointer(e,t){if(!this.openOnSingleClick||t.detail===2)return;const n=t.button===1,s=!0,r=n,a=t.ctrlKey||t.metaKey||t.altKey;this._open(e,s,r,a,t)}onMouseDblClick(e,t){if(!t)return;const i=t.target;if(i.classList.contains("monaco-tl-twistie")||i.classList.contains("monaco-icon-label")&&i.classList.contains("folder-icon")&&t.offsetX<16)return;const s=!1,r=!0,a=t.ctrlKey||t.metaKey||t.altKey;this._open(e,s,r,a,t)}_open(e,t,i,n,s){e&&this._onDidOpen.fire({editorOptions:{preserveFocus:t,pinned:i,revealIfVisible:!0},sideBySide:n,element:e,browserEvent:s})}}class K9 extends T2{constructor(e,t){super(e,t),this.widget=e}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class Ree extends T2{constructor(e,t){super(e,t)}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class Aee extends T2{constructor(e,t){super(e,t)}getSelectedElement(){return this.widget.getSelection()[0]??void 0}}function Pee(o){let e=!1;return t=>{if(t.toKeyCodeChord().isModifierKey())return!1;if(e)return e=!1,!1;const i=o.softDispatch(t,t.target);return i.kind===1?(e=!0,!1):(e=!1,i.kind===0)}}let zD=class extends v2{constructor(e,t,i,n,s,r,a,l,c){const{options:d,getTypeNavigationMode:h,disposable:u}=r.invokeFunction(sb,s);super(e,t,i,n,d),this.disposables.add(u),this.internals=new $h(this,s,h,s.overrideStyles,a,l,c),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};zD=Rl([Dt(5,ke),Dt(6,De),Dt(7,mo),Dt(8,lt)],zD);let tO=class extends A9{constructor(e,t,i,n,s,r,a,l,c){const{options:d,getTypeNavigationMode:h,disposable:u}=r.invokeFunction(sb,s);super(e,t,i,n,d),this.disposables.add(u),this.internals=new $h(this,s,h,s.overrideStyles,a,l,c),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};tO=Rl([Dt(5,ke),Dt(6,De),Dt(7,mo),Dt(8,lt)],tO);let iO=class extends kee{constructor(e,t,i,n,s,r,a,l,c,d){const{options:h,getTypeNavigationMode:u,disposable:f}=a.invokeFunction(sb,r);super(e,t,i,n,s,h),this.disposables.add(f),this.internals=new $h(this,r,u,r.overrideStyles,l,c,d),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles!==void 0&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};iO=Rl([Dt(6,ke),Dt(7,De),Dt(8,mo),Dt(9,lt)],iO);let UD=class extends O9{get onDidOpen(){return this.internals.onDidOpen}constructor(e,t,i,n,s,r,a,l,c,d){const{options:h,getTypeNavigationMode:u,disposable:f}=a.invokeFunction(sb,r);super(e,t,i,n,s,h),this.disposables.add(f),this.internals=new $h(this,r,u,r.overrideStyles,l,c,d),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};UD=Rl([Dt(6,ke),Dt(7,De),Dt(8,mo),Dt(9,lt)],UD);let nO=class extends Lee{constructor(e,t,i,n,s,r,a,l,c,d,h){const{options:u,getTypeNavigationMode:f,disposable:g}=l.invokeFunction(sb,a);super(e,t,i,n,s,r,u),this.disposables.add(g),this.internals=new $h(this,a,f,a.overrideStyles,c,d,h),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};nO=Rl([Dt(7,ke),Dt(8,De),Dt(9,mo),Dt(10,lt)],nO);function j9(o){const e=o.getValue(I2);if(e==="highlight")return dl.Highlight;if(e==="filter")return dl.Filter;const t=o.getValue(cv);if(t==="simple"||t==="highlight")return dl.Highlight;if(t==="filter")return dl.Filter}function q9(o){const e=o.getValue(N2);if(e==="fuzzy")return Uh.Fuzzy;if(e==="contiguous")return Uh.Contiguous}function sb(o,e){const t=o.get(lt),i=o.get(lu),n=o.get(De),s=o.get(ke),r=()=>{const u=n.getContextKeyValue(U9);if(u==="automatic")return Qr.Automatic;if(u==="trigger"||n.getContextKeyValue($9)===!1)return Qr.Trigger;const g=t.getValue(E2);if(g==="automatic")return Qr.Automatic;if(g==="trigger")return Qr.Trigger},a=e.horizontalScrolling!==void 0?e.horizontalScrolling:!!t.getValue(ao),[l,c]=s.invokeFunction(by,e),d=e.paddingBottom,h=e.renderIndentGuides!==void 0?e.renderIndentGuides:t.getValue(dv);return{getTypeNavigationMode:r,disposable:c,options:{keyboardSupport:!1,...l,indent:typeof t.getValue(b_)=="number"?t.getValue(b_):void 0,renderIndentGuides:h,smoothScrolling:!!t.getValue(Cr),defaultFindMode:j9(t),defaultFindMatchType:q9(t),horizontalScrolling:a,scrollByPage:!!t.getValue(br),paddingBottom:d,hideTwistiesOfChildlessElements:e.hideTwistiesOfChildlessElements,expandOnlyOnTwistieClick:e.expandOnlyOnTwistieClick??t.getValue(hv)==="doubleClick",contextViewProvider:i,findWidgetStyles:FY,enableStickyScroll:!!t.getValue(uv),stickyScrollMaxItemCount:Number(t.getValue(fv))}}}let $h=class{get onDidOpen(){return this.navigator.onDidOpen}constructor(e,t,i,n,s,r,a){this.tree=e,this.disposables=[],this.contextKeyService=py(s,e),this.disposables.push(_y(this.contextKeyService,e)),this.listSupportsMultiSelect=gy.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(t.multipleSelectionSupport!==!1),my.bindTo(this.contextKeyService).set(!!t.selectionNavigation),this.listSupportFindWidget=Iee.bindTo(this.contextKeyService),this.listSupportFindWidget.set(t.findWidgetEnabled??!0),this.hasSelectionOrFocus=S2.bindTo(this.contextKeyService),this.hasDoubleSelection=L2.bindTo(this.contextKeyService),this.hasMultiSelection=x2.bindTo(this.contextKeyService),this.treeElementCanCollapse=k2.bindTo(this.contextKeyService),this.treeElementHasParent=Eee.bindTo(this.contextKeyService),this.treeElementCanExpand=D2.bindTo(this.contextKeyService),this.treeElementHasChild=Nee.bindTo(this.contextKeyService),this.treeFindOpen=Tee.bindTo(this.contextKeyService),this.treeStickyScrollFocused=V9.bindTo(this.contextKeyService),this._useAltAsMultipleSelectionModifier=Ca(a),this.updateStyleOverrides(n);const c=()=>{const h=e.getFocus()[0];if(!h)return;const u=e.getNode(h);this.treeElementCanCollapse.set(u.collapsible&&!u.collapsed),this.treeElementHasParent.set(!!e.getParentElement(h)),this.treeElementCanExpand.set(u.collapsible&&u.collapsed),this.treeElementHasChild.set(!!e.getFirstElementChild(h))},d=new Set;d.add(U9),d.add($9),this.disposables.push(this.contextKeyService,r.register(e),e.onDidChangeSelection(()=>{const h=e.getSelection(),u=e.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.hasSelectionOrFocus.set(h.length>0||u.length>0),this.hasMultiSelection.set(h.length>1),this.hasDoubleSelection.set(h.length===2)})}),e.onDidChangeFocus(()=>{const h=e.getSelection(),u=e.getFocus();this.hasSelectionOrFocus.set(h.length>0||u.length>0),c()}),e.onDidChangeCollapseState(c),e.onDidChangeModel(c),e.onDidChangeFindOpenState(h=>this.treeFindOpen.set(h)),e.onDidChangeStickyScrollFocused(h=>this.treeStickyScrollFocused.set(h)),a.onDidChangeConfiguration(h=>{let u={};if(h.affectsConfiguration(uu)&&(this._useAltAsMultipleSelectionModifier=Ca(a)),h.affectsConfiguration(b_)){const f=a.getValue(b_);u={...u,indent:f}}if(h.affectsConfiguration(dv)&&t.renderIndentGuides===void 0){const f=a.getValue(dv);u={...u,renderIndentGuides:f}}if(h.affectsConfiguration(Cr)){const f=!!a.getValue(Cr);u={...u,smoothScrolling:f}}if(h.affectsConfiguration(I2)||h.affectsConfiguration(cv)){const f=j9(a);u={...u,defaultFindMode:f}}if(h.affectsConfiguration(E2)||h.affectsConfiguration(cv)){const f=i();u={...u,typeNavigationMode:f}}if(h.affectsConfiguration(N2)){const f=q9(a);u={...u,defaultFindMatchType:f}}if(h.affectsConfiguration(ao)&&t.horizontalScrolling===void 0){const f=!!a.getValue(ao);u={...u,horizontalScrolling:f}}if(h.affectsConfiguration(br)){const f=!!a.getValue(br);u={...u,scrollByPage:f}}if(h.affectsConfiguration(hv)&&t.expandOnlyOnTwistieClick===void 0&&(u={...u,expandOnlyOnTwistieClick:a.getValue(hv)==="doubleClick"}),h.affectsConfiguration(uv)){const f=a.getValue(uv);u={...u,enableStickyScroll:f}}if(h.affectsConfiguration(fv)){const f=Math.max(1,a.getValue(fv));u={...u,stickyScrollMaxItemCount:f}}if(h.affectsConfiguration(_a)){const f=a.getValue(_a);u={...u,mouseWheelScrollSensitivity:f}}if(h.affectsConfiguration(ba)){const f=a.getValue(ba);u={...u,fastScrollSensitivity:f}}Object.keys(u).length>0&&e.updateOptions(u)}),this.contextKeyService.onDidChangeContext(h=>{h.affectsSome(d)&&e.updateOptions({typeNavigationMode:i()})})),this.navigator=new Aee(e,{configurationService:a,...t}),this.disposables.push(this.navigator)}updateOptions(e){e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyleOverrides(e){this.tree.style(e?$g(e):hu)}dispose(){this.disposables=xt(this.disposables)}};$h=Rl([Dt(4,De),Dt(5,mo),Dt(6,lt)],$h);const Oee=Bi.as(su.Configuration);Oee.registerConfiguration({id:"workbench",order:7,title:m("workbenchConfigurationTitle","Workbench"),type:"object",properties:{[uu]:{type:"string",enum:["ctrlCmd","alt"],markdownEnumDescriptions:[m("multiSelectModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),m("multiSelectModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],default:"ctrlCmd",description:m({key:"multiSelectModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add an item in trees and lists to a multi-selection with the mouse (for example in the explorer, open editors and scm view). The 'Open to Side' mouse gestures - if supported - will adapt such that they do not conflict with the multiselect modifier.")},[V1]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:m({key:"openModeModifier",comment:["`singleClick` and `doubleClick` refers to a value the setting can take and should not be localized."]},"Controls how to open items in trees and lists using the mouse (if supported). Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[ao]:{type:"boolean",default:!1,description:m("horizontalScrolling setting","Controls whether lists and trees support horizontal scrolling in the workbench. Warning: turning on this setting has a performance implication.")},[br]:{type:"boolean",default:!1,description:m("list.scrollByPage","Controls whether clicks in the scrollbar scroll page by page.")},[b_]:{type:"number",default:8,minimum:4,maximum:40,description:m("tree indent setting","Controls tree indentation in pixels.")},[dv]:{type:"string",enum:["none","onHover","always"],default:"onHover",description:m("render tree indent guides","Controls whether the tree should render indent guides.")},[Cr]:{type:"boolean",default:!1,description:m("list smoothScrolling setting","Controls whether lists and trees have smooth scrolling.")},[_a]:{type:"number",default:1,markdownDescription:m("Mouse Wheel Scroll Sensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")},[ba]:{type:"number",default:5,markdownDescription:m("Fast Scroll Sensitivity","Scrolling speed multiplier when pressing `Alt`.")},[I2]:{type:"string",enum:["highlight","filter"],enumDescriptions:[m("defaultFindModeSettingKey.highlight","Highlight elements when searching. Further up and down navigation will traverse only the highlighted elements."),m("defaultFindModeSettingKey.filter","Filter elements when searching.")],default:"highlight",description:m("defaultFindModeSettingKey","Controls the default find mode for lists and trees in the workbench.")},[cv]:{type:"string",enum:["simple","highlight","filter"],enumDescriptions:[m("keyboardNavigationSettingKey.simple","Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes."),m("keyboardNavigationSettingKey.highlight","Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements."),m("keyboardNavigationSettingKey.filter","Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.")],default:"highlight",description:m("keyboardNavigationSettingKey","Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter."),deprecated:!0,deprecationMessage:m("keyboardNavigationSettingKeyDeprecated","Please use 'workbench.list.defaultFindMode' and 'workbench.list.typeNavigationMode' instead.")},[N2]:{type:"string",enum:["fuzzy","contiguous"],enumDescriptions:[m("defaultFindMatchTypeSettingKey.fuzzy","Use fuzzy matching when searching."),m("defaultFindMatchTypeSettingKey.contiguous","Use contiguous matching when searching.")],default:"fuzzy",description:m("defaultFindMatchTypeSettingKey","Controls the type of matching used when searching lists and trees in the workbench.")},[hv]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:m("expand mode","Controls how tree folders are expanded when clicking the folder names. Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[uv]:{type:"boolean",default:!0,description:m("sticky scroll","Controls whether sticky scrolling is enabled in trees.")},[fv]:{type:"number",minimum:1,default:7,markdownDescription:m("sticky scroll maximum items","Controls the number of sticky elements displayed in the tree when {0} is enabled.","`#workbench.tree.enableStickyScroll#`")},[E2]:{type:"string",enum:["automatic","trigger"],default:"automatic",markdownDescription:m("typeNavigationMode2","Controls how type navigation works in lists and trees in the workbench. When set to `trigger`, type navigation begins once the `list.triggerTypeNavigation` command is run.")}}});class _c extends z{constructor(e,t){super(),this.options=t,this.text="",this.title="",this.highlights=[],this.didEverRender=!1,this.supportIcons=t?.supportIcons??!1,this.domNode=Z(e,ce("span.monaco-highlighted-label"))}get element(){return this.domNode}set(e,t=[],i="",n){e||(e=""),n&&(e=_c.escapeNewLines(e,t)),!(this.didEverRender&&this.text===e&&this.title===i&&as(this.highlights,t))&&(this.text=e,this.title=i,this.highlights=t,this.render())}render(){const e=[];let t=0;for(const i of this.highlights){if(i.end===i.start)continue;if(t{n=s===`\r -`?-1:0,r+=i;for(const a of t)a.end<=r||(a.start>=r&&(a.start+=n),a.end>=r&&(a.end+=n));return i+=n,"⏎"})}}class Cm{constructor(e){this._element=e}get element(){return this._element}set textContent(e){this.disposed||e===this._textContent||(this._textContent=e,this._element.textContent=e)}set classNames(e){this.disposed||as(e,this._classNames)||(this._classNames=e,this._element.classList.value="",this._element.classList.add(...e))}set empty(e){this.disposed||e===this._empty||(this._empty=e,this._element.style.marginLeft=e?"0":"")}dispose(){this.disposed=!0}}class gv extends z{constructor(e,t){super(),this.customHovers=new Map,this.creationOptions=t,this.domNode=this._register(new Cm(Z(e,ce(".monaco-icon-label")))),this.labelContainer=Z(this.domNode.element,ce(".monaco-icon-label-container")),this.nameContainer=Z(this.labelContainer,ce("span.monaco-icon-name-container")),t?.supportHighlights||t?.supportIcons?this.nameNode=this._register(new Wee(this.nameContainer,!!t.supportIcons)):this.nameNode=new Fee(this.nameContainer),this.hoverDelegate=t?.hoverDelegate??Ks("mouse")}get element(){return this.domNode.element}setLabel(e,t,i){const n=["monaco-icon-label"],s=["monaco-icon-label-container"];let r="";i&&(i.extraClasses&&n.push(...i.extraClasses),i.italic&&n.push("italic"),i.strikethrough&&n.push("strikethrough"),i.disabledCommand&&s.push("disabled"),i.title&&(typeof i.title=="string"?r+=i.title:r+=e));const a=this.domNode.element.querySelector(".monaco-icon-label-iconpath");if(i?.iconPath){let l;!a||!Ei(a)?(l=ce(".monaco-icon-label-iconpath"),this.domNode.element.prepend(l)):l=a,l.style.backgroundImage=Dl(i?.iconPath)}else a&&a.remove();if(this.domNode.classNames=n,this.domNode.element.setAttribute("aria-label",r),this.labelContainer.classList.value="",this.labelContainer.classList.add(...s),this.setupHover(i?.descriptionTitle?this.labelContainer:this.element,i?.title),this.nameNode.setLabel(e,i),t||this.descriptionNode){const l=this.getOrCreateDescriptionNode();l instanceof _c?(l.set(t||"",i?i.descriptionMatches:void 0,void 0,i?.labelEscapeNewLines),this.setupHover(l.element,i?.descriptionTitle)):(l.textContent=t&&i?.labelEscapeNewLines?_c.escapeNewLines(t,[]):t||"",this.setupHover(l.element,i?.descriptionTitle||""),l.empty=!t)}if(i?.suffix||this.suffixNode){const l=this.getOrCreateSuffixNode();l.textContent=i?.suffix??""}}setupHover(e,t){const i=this.customHovers.get(e);if(i&&(i.dispose(),this.customHovers.delete(e)),!t){e.removeAttribute("title");return}if(this.hoverDelegate.showNativeHover)(function(s,r){Os(r)?s.title=f7(r):r?.markdownNotSupportedFallback?s.title=r.markdownNotSupportedFallback:s.removeAttribute("title")})(e,t);else{const n=La().setupManagedHover(this.hoverDelegate,e,t);n&&this.customHovers.set(e,n)}}dispose(){super.dispose();for(const e of this.customHovers.values())e.dispose();this.customHovers.clear()}getOrCreateSuffixNode(){if(!this.suffixNode){const e=this._register(new Cm(NV(this.nameContainer,ce("span.monaco-icon-suffix-container"))));this.suffixNode=this._register(new Cm(Z(e.element,ce("span.label-suffix"))))}return this.suffixNode}getOrCreateDescriptionNode(){if(!this.descriptionNode){const e=this._register(new Cm(Z(this.labelContainer,ce("span.monaco-icon-description-container"))));this.creationOptions?.supportDescriptionHighlights?this.descriptionNode=this._register(new _c(Z(e.element,ce("span.label-description")),{supportIcons:!!this.creationOptions.supportIcons})):this.descriptionNode=this._register(new Cm(Z(e.element,ce("span.label-description"))))}return this.descriptionNode}}class Fee{constructor(e){this.container=e,this.label=void 0,this.singleLabel=void 0}setLabel(e,t){if(!(this.label===e&&as(this.options,t)))if(this.label=e,this.options=t,typeof e=="string")this.singleLabel||(this.container.innerText="",this.container.classList.remove("multiple"),this.singleLabel=Z(this.container,ce("a.label-name",{id:t?.domId}))),this.singleLabel.textContent=e;else{this.container.innerText="",this.container.classList.add("multiple"),this.singleLabel=void 0;for(let i=0;i{const s={start:i,end:i+n.length},r=t.map(a=>Yi.intersect(s,a)).filter(a=>!Yi.isEmpty(a)).map(({start:a,end:l})=>({start:a-i,end:l-i}));return i=s.end+e.length,r})}class Wee extends z{constructor(e,t){super(),this.container=e,this.supportIcons=t,this.label=void 0,this.singleLabel=void 0}setLabel(e,t){if(!(this.label===e&&as(this.options,t)))if(this.label=e,this.options=t,typeof e=="string")this.singleLabel||(this.container.innerText="",this.container.classList.remove("multiple"),this.singleLabel=this._register(new _c(Z(this.container,ce("a.label-name",{id:t?.domId})),{supportIcons:this.supportIcons}))),this.singleLabel.set(e,t?.matches,void 0,t?.labelEscapeNewLines);else{this.container.innerText="",this.container.classList.add("multiple"),this.singleLabel=void 0;const i=t?.separator||"/",n=Bee(e,i,t?.matches);for(let s=0;s{const o=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});return{collator:o,collatorIsNumeric:o.resolvedOptions().numeric}});function Vee(o,e,t=!1){const i=o||"",n=e||"",s=sO.value.collator.compare(i,n);return sO.value.collatorIsNumeric&&s===0&&i!==n?in.length)return 1}return 0}var Cy=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},$D=function(o,e){return function(t,i){e(t,i,o)}},KD;const qo=ce;class G9{constructor(e,t,i){this.index=e,this.hasCheckbox=t,this._hidden=!1,this._init=new ua(()=>{const n=i.label??"",s=Tm(n).text.trim(),r=i.ariaLabel||[n,this.saneDescription,this.saneDetail].map(a=>qq(a)).filter(a=>!!a).join(", ");return{saneLabel:n,saneSortLabel:s,saneAriaLabel:r}}),this._saneDescription=i.description,this._saneTooltip=i.tooltip}get saneLabel(){return this._init.value.saneLabel}get saneSortLabel(){return this._init.value.saneSortLabel}get saneAriaLabel(){return this._init.value.saneAriaLabel}get element(){return this._element}set element(e){this._element=e}get hidden(){return this._hidden}set hidden(e){this._hidden=e}get saneDescription(){return this._saneDescription}set saneDescription(e){this._saneDescription=e}get saneDetail(){return this._saneDetail}set saneDetail(e){this._saneDetail=e}get saneTooltip(){return this._saneTooltip}set saneTooltip(e){this._saneTooltip=e}get labelHighlights(){return this._labelHighlights}set labelHighlights(e){this._labelHighlights=e}get descriptionHighlights(){return this._descriptionHighlights}set descriptionHighlights(e){this._descriptionHighlights=e}get detailHighlights(){return this._detailHighlights}set detailHighlights(e){this._detailHighlights=e}}class zi extends G9{constructor(e,t,i,n,s,r){super(e,t,s),this.fireButtonTriggered=i,this._onChecked=n,this.item=s,this._separator=r,this._checked=!1,this.onChecked=t?J.map(J.filter(this._onChecked.event,a=>a.element===this),a=>a.checked):J.None,this._saneDetail=s.detail,this._labelHighlights=s.highlights?.label,this._descriptionHighlights=s.highlights?.description,this._detailHighlights=s.highlights?.detail}get separator(){return this._separator}set separator(e){this._separator=e}get checked(){return this._checked}set checked(e){e!==this._checked&&(this._checked=e,this._onChecked.fire({element:this,checked:e}))}get checkboxDisabled(){return!!this.item.disabled}}var qr;(function(o){o[o.NONE=0]="NONE",o[o.MOUSE_HOVER=1]="MOUSE_HOVER",o[o.ACTIVE_ITEM=2]="ACTIVE_ITEM"})(qr||(qr={}));class fd extends G9{constructor(e,t,i){super(e,!1,i),this.fireSeparatorButtonTriggered=t,this.separator=i,this.children=new Array,this.focusInsideSeparator=qr.NONE}}class $ee{getHeight(e){return e instanceof fd?30:e.saneDetail?44:22}getTemplateId(e){return e instanceof zi?mv.ID:pv.ID}}class Kee{getWidgetAriaLabel(){return m("quickInput","Quick Input")}getAriaLabel(e){return e.separator?.label?`${e.saneAriaLabel}, ${e.separator.label}`:e.saneAriaLabel}getWidgetRole(){return"listbox"}getRole(e){return e.hasCheckbox?"checkbox":"option"}isChecked(e){if(!(!e.hasCheckbox||!(e instanceof zi)))return{get value(){return e.checked},onDidChange:t=>e.onChecked(()=>t())}}}class Z9{constructor(e){this.hoverDelegate=e}renderTemplate(e){const t=Object.create(null);t.toDisposeElement=new X,t.toDisposeTemplate=new X,t.entry=Z(e,qo(".quick-input-list-entry"));const i=Z(t.entry,qo("label.quick-input-list-label"));t.toDisposeTemplate.add(jt(i,ee.CLICK,c=>{t.checkbox.offsetParent||c.preventDefault()})),t.checkbox=Z(i,qo("input.quick-input-list-checkbox")),t.checkbox.type="checkbox";const n=Z(i,qo(".quick-input-list-rows")),s=Z(n,qo(".quick-input-list-row")),r=Z(n,qo(".quick-input-list-row"));t.label=new gv(s,{supportHighlights:!0,supportDescriptionHighlights:!0,supportIcons:!0,hoverDelegate:this.hoverDelegate}),t.toDisposeTemplate.add(t.label),t.icon=iT(t.label.element,qo(".quick-input-list-icon"));const a=Z(s,qo(".quick-input-list-entry-keybinding"));t.keybinding=new ob(a,Ns),t.toDisposeTemplate.add(t.keybinding);const l=Z(r,qo(".quick-input-list-label-meta"));return t.detail=new gv(l,{supportHighlights:!0,supportIcons:!0,hoverDelegate:this.hoverDelegate}),t.toDisposeTemplate.add(t.detail),t.separator=Z(t.entry,qo(".quick-input-list-separator")),t.actionBar=new oo(t.entry,this.hoverDelegate?{hoverDelegate:this.hoverDelegate}:void 0),t.actionBar.domNode.classList.add("quick-input-list-entry-action-bar"),t.toDisposeTemplate.add(t.actionBar),t}disposeTemplate(e){e.toDisposeElement.dispose(),e.toDisposeTemplate.dispose()}disposeElement(e,t,i){i.toDisposeElement.clear(),i.actionBar.clear()}}var rh;let mv=(rh=class extends Z9{constructor(e,t){super(e),this.themeService=t,this._itemsWithSeparatorsFrequency=new Map}get templateId(){return KD.ID}renderTemplate(e){const t=super.renderTemplate(e);return t.toDisposeTemplate.add(jt(t.checkbox,ee.CHANGE,i=>{t.element.checked=t.checkbox.checked})),t}renderElement(e,t,i){const n=e.element;i.element=n,n.element=i.entry??void 0;const s=n.item;i.checkbox.checked=n.checked,i.toDisposeElement.add(n.onChecked(u=>i.checkbox.checked=u)),i.checkbox.disabled=n.checkboxDisabled;const{labelHighlights:r,descriptionHighlights:a,detailHighlights:l}=n;if(s.iconPath){const u=j0(this.themeService.getColorTheme().type)?s.iconPath.dark:s.iconPath.light??s.iconPath.dark,f=ve.revive(u);i.icon.className="quick-input-list-icon",i.icon.style.backgroundImage=Dl(f)}else i.icon.style.backgroundImage="",i.icon.className=s.iconClass?`quick-input-list-icon ${s.iconClass}`:"";let c;!n.saneTooltip&&n.saneDescription&&(c={markdown:{value:n.saneDescription,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDescription});const d={matches:r||[],descriptionTitle:c,descriptionMatches:a||[],labelEscapeNewLines:!0};if(d.extraClasses=s.iconClasses,d.italic=s.italic,d.strikethrough=s.strikethrough,i.entry.classList.remove("quick-input-list-separator-as-item"),i.label.setLabel(n.saneLabel,n.saneDescription,d),i.keybinding.set(s.keybinding),n.saneDetail){let u;n.saneTooltip||(u={markdown:{value:n.saneDetail,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDetail}),i.detail.element.style.display="",i.detail.setLabel(n.saneDetail,void 0,{matches:l,title:u,labelEscapeNewLines:!0})}else i.detail.element.style.display="none";n.separator?.label?(i.separator.textContent=n.separator.label,i.separator.style.display="",this.addItemWithSeparator(n)):i.separator.style.display="none",i.entry.classList.toggle("quick-input-list-separator-border",!!n.separator);const h=s.buttons;h&&h.length?(i.actionBar.push(h.map((u,f)=>rp(u,`id-${f}`,()=>n.fireButtonTriggered({button:u,item:n.item}))),{icon:!0,label:!1}),i.entry.classList.add("has-actions")):i.entry.classList.remove("has-actions")}disposeElement(e,t,i){this.removeItemWithSeparator(e.element),super.disposeElement(e,t,i)}isItemWithSeparatorVisible(e){return this._itemsWithSeparatorsFrequency.has(e)}addItemWithSeparator(e){this._itemsWithSeparatorsFrequency.set(e,(this._itemsWithSeparatorsFrequency.get(e)||0)+1)}removeItemWithSeparator(e){const t=this._itemsWithSeparatorsFrequency.get(e)||0;t>1?this._itemsWithSeparatorsFrequency.set(e,t-1):this._itemsWithSeparatorsFrequency.delete(e)}},KD=rh,rh.ID="quickpickitem",rh);mv=KD=Cy([$D(1,en)],mv);const Uw=class Uw extends Z9{constructor(){super(...arguments),this._visibleSeparatorsFrequency=new Map}get templateId(){return Uw.ID}get visibleSeparators(){return[...this._visibleSeparatorsFrequency.keys()]}isSeparatorVisible(e){return this._visibleSeparatorsFrequency.has(e)}renderTemplate(e){const t=super.renderTemplate(e);return t.checkbox.style.display="none",t}renderElement(e,t,i){const n=e.element;i.element=n,n.element=i.entry??void 0,n.element.classList.toggle("focus-inside",!!n.focusInsideSeparator);const s=n.separator,{labelHighlights:r,descriptionHighlights:a,detailHighlights:l}=n;i.icon.style.backgroundImage="",i.icon.className="";let c;!n.saneTooltip&&n.saneDescription&&(c={markdown:{value:n.saneDescription,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDescription});const d={matches:r||[],descriptionTitle:c,descriptionMatches:a||[],labelEscapeNewLines:!0};if(i.entry.classList.add("quick-input-list-separator-as-item"),i.label.setLabel(n.saneLabel,n.saneDescription,d),n.saneDetail){let u;n.saneTooltip||(u={markdown:{value:n.saneDetail,supportThemeIcons:!0},markdownNotSupportedFallback:n.saneDetail}),i.detail.element.style.display="",i.detail.setLabel(n.saneDetail,void 0,{matches:l,title:u,labelEscapeNewLines:!0})}else i.detail.element.style.display="none";i.separator.style.display="none",i.entry.classList.add("quick-input-list-separator-border");const h=s.buttons;h&&h.length?(i.actionBar.push(h.map((u,f)=>rp(u,`id-${f}`,()=>n.fireSeparatorButtonTriggered({button:u,separator:n.separator}))),{icon:!0,label:!1}),i.entry.classList.add("has-actions")):i.entry.classList.remove("has-actions"),this.addSeparator(n)}disposeElement(e,t,i){this.removeSeparator(e.element),this.isSeparatorVisible(e.element)||e.element.element?.classList.remove("focus-inside"),super.disposeElement(e,t,i)}addSeparator(e){this._visibleSeparatorsFrequency.set(e,(this._visibleSeparatorsFrequency.get(e)||0)+1)}removeSeparator(e){const t=this._visibleSeparatorsFrequency.get(e)||0;t>1?this._visibleSeparatorsFrequency.set(e,t-1):this._visibleSeparatorsFrequency.delete(e)}};Uw.ID="quickpickseparator";let pv=Uw,C_=class extends z{constructor(e,t,i,n,s,r){super(),this.parent=e,this.hoverDelegate=t,this.linkOpenerDelegate=i,this.accessibilityService=r,this._onKeyDown=new A,this._onLeave=new A,this.onLeave=this._onLeave.event,this._visibleCountObservable=Ge("VisibleCount",0),this.onChangedVisibleCount=J.fromObservable(this._visibleCountObservable,this._store),this._allVisibleCheckedObservable=Ge("AllVisibleChecked",!1),this.onChangedAllVisibleChecked=J.fromObservable(this._allVisibleCheckedObservable,this._store),this._checkedCountObservable=Ge("CheckedCount",0),this.onChangedCheckedCount=J.fromObservable(this._checkedCountObservable,this._store),this._checkedElementsObservable=iD({equalsFn:li},new Array),this.onChangedCheckedElements=J.fromObservable(this._checkedElementsObservable,this._store),this._onButtonTriggered=new A,this.onButtonTriggered=this._onButtonTriggered.event,this._onSeparatorButtonTriggered=new A,this.onSeparatorButtonTriggered=this._onSeparatorButtonTriggered.event,this._elementChecked=new A,this._elementCheckedEventBufferer=new W_,this._hasCheckboxes=!1,this._inputElements=new Array,this._elementTree=new Array,this._itemElements=new Array,this._elementDisposable=this._register(new X),this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._matchOnLabelMode="fuzzy",this._sortByLabel=!0,this._shouldLoop=!0,this._container=Z(this.parent,qo(".quick-input-list")),this._separatorRenderer=new pv(t),this._itemRenderer=s.createInstance(mv,t),this._tree=this._register(s.createInstance(zD,"QuickInput",this._container,new $ee,[this._itemRenderer,this._separatorRenderer],{filter:{filter(a){return a.hidden?0:a instanceof fd?2:1}},sorter:{compare:(a,l)=>{if(!this.sortByLabel||!this._lastQueryString)return 0;const c=this._lastQueryString.toLowerCase();return qee(a,l,c)}},accessibilityProvider:new Kee,setRowLineHeight:!1,multipleSelectionSupport:!1,hideTwistiesOfChildlessElements:!0,renderIndentGuides:Sg.None,findWidgetEnabled:!1,indent:0,horizontalScrolling:!1,allowNonCollapsibleParents:!0,alwaysConsumeMouseWheel:!0})),this._tree.getHTMLElement().id=n,this._registerListeners()}get onDidChangeFocus(){return J.map(this._tree.onDidChangeFocus,e=>e.elements.filter(t=>t instanceof zi).map(t=>t.item),this._store)}get onDidChangeSelection(){return J.map(this._tree.onDidChangeSelection,e=>({items:e.elements.filter(t=>t instanceof zi).map(t=>t.item),event:e.browserEvent}),this._store)}get displayed(){return this._container.style.display!=="none"}set displayed(e){this._container.style.display=e?"":"none"}get scrollTop(){return this._tree.scrollTop}set scrollTop(e){this._tree.scrollTop=e}get ariaLabel(){return this._tree.ariaLabel}set ariaLabel(e){this._tree.ariaLabel=e??""}set enabled(e){this._tree.getHTMLElement().style.pointerEvents=e?"":"none"}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(e){this._matchOnDescription=e}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(e){this._matchOnDetail=e}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(e){this._matchOnLabel=e}get matchOnLabelMode(){return this._matchOnLabelMode}set matchOnLabelMode(e){this._matchOnLabelMode=e}get sortByLabel(){return this._sortByLabel}set sortByLabel(e){this._sortByLabel=e}get shouldLoop(){return this._shouldLoop}set shouldLoop(e){this._shouldLoop=e}_registerListeners(){this._registerOnKeyDown(),this._registerOnContainerClick(),this._registerOnMouseMiddleClick(),this._registerOnTreeModelChanged(),this._registerOnElementChecked(),this._registerOnContextMenu(),this._registerHoverListeners(),this._registerSelectionChangeListener(),this._registerSeparatorActionShowingListeners()}_registerOnKeyDown(){this._register(this._tree.onKeyDown(e=>{const t=new Nt(e);t.keyCode===10&&this.toggleCheckbox(),this._onKeyDown.fire(t)}))}_registerOnContainerClick(){this._register(U(this._container,ee.CLICK,e=>{(e.x||e.y)&&this._onLeave.fire()}))}_registerOnMouseMiddleClick(){this._register(U(this._container,ee.AUXCLICK,e=>{e.button===1&&this._onLeave.fire()}))}_registerOnTreeModelChanged(){this._register(this._tree.onDidChangeModel(()=>{const e=this._itemElements.filter(t=>!t.hidden).length;this._visibleCountObservable.set(e,void 0),this._hasCheckboxes&&this._updateCheckedObservables()}))}_registerOnElementChecked(){this._register(this._elementCheckedEventBufferer.wrapEvent(this._elementChecked.event,(e,t)=>t)(e=>this._updateCheckedObservables()))}_registerOnContextMenu(){this._register(this._tree.onContextMenu(e=>{e.element&&(e.browserEvent.preventDefault(),this._tree.setSelection([e.element]))}))}_registerHoverListeners(){const e=this._register(new vF(this.hoverDelegate.delay));this._register(this._tree.onMouseOver(async t=>{if(uR(t.browserEvent.target)){e.cancel();return}if(!(!uR(t.browserEvent.relatedTarget)&&yi(t.browserEvent.relatedTarget,t.element?.element)))try{await e.trigger(async()=>{t.element instanceof zi&&this.showHover(t.element)})}catch(i){if(!$c(i))throw i}})),this._register(this._tree.onMouseOut(t=>{yi(t.browserEvent.relatedTarget,t.element?.element)||e.cancel()}))}_registerSeparatorActionShowingListeners(){this._register(this._tree.onDidChangeFocus(e=>{const t=e.elements[0]?this._tree.getParentElement(e.elements[0]):null;for(const i of this._separatorRenderer.visibleSeparators){const n=i===t;!!(i.focusInsideSeparator&qr.ACTIVE_ITEM)!==n&&(n?i.focusInsideSeparator|=qr.ACTIVE_ITEM:i.focusInsideSeparator&=~qr.ACTIVE_ITEM,this._tree.rerender(i))}})),this._register(this._tree.onMouseOver(e=>{const t=e.element?this._tree.getParentElement(e.element):null;for(const i of this._separatorRenderer.visibleSeparators){if(i!==t)continue;i.focusInsideSeparator&qr.MOUSE_HOVER||(i.focusInsideSeparator|=qr.MOUSE_HOVER,this._tree.rerender(i))}})),this._register(this._tree.onMouseOut(e=>{const t=e.element?this._tree.getParentElement(e.element):null;for(const i of this._separatorRenderer.visibleSeparators){if(i!==t)continue;i.focusInsideSeparator&qr.MOUSE_HOVER&&(i.focusInsideSeparator&=~qr.MOUSE_HOVER,this._tree.rerender(i))}}))}_registerSelectionChangeListener(){this._register(this._tree.onDidChangeSelection(e=>{const t=e.elements.filter(i=>i instanceof zi);t.length!==e.elements.length&&(e.elements.length===1&&e.elements[0]instanceof fd&&(this._tree.setFocus([e.elements[0].children[0]]),this._tree.reveal(e.elements[0],0)),this._tree.setSelection(t))}))}setAllVisibleChecked(e){this._elementCheckedEventBufferer.bufferEvents(()=>{this._itemElements.forEach(t=>{!t.hidden&&!t.checkboxDisabled&&(t.checked=e)})})}setElements(e){this._elementDisposable.clear(),this._lastQueryString=void 0,this._inputElements=e,this._hasCheckboxes=this.parent.classList.contains("show-checkboxes");let t;this._itemElements=new Array,this._elementTree=e.reduce((i,n,s)=>{let r;if(n.type==="separator"){if(!n.buttons)return i;t=new fd(s,a=>this._onSeparatorButtonTriggered.fire(a),n),r=t}else{const a=s>0?e[s-1]:void 0;let l;a&&a.type==="separator"&&!a.buttons&&(t=void 0,l=a);const c=new zi(s,this._hasCheckboxes,d=>this._onButtonTriggered.fire(d),this._elementChecked,n,l);if(this._itemElements.push(c),t)return t.children.push(c),i;r=c}return i.push(r),i},new Array),this._setElementsToTree(this._elementTree),this.accessibilityService.isScreenReaderOptimized()&&setTimeout(()=>{const i=this._tree.getHTMLElement().querySelector(".monaco-list-row.focused"),n=i?.parentNode;if(i&&n){const s=i.nextSibling;i.remove(),n.insertBefore(i,s)}},0)}setFocusedElements(e){const t=e.map(i=>this._itemElements.find(n=>n.item===i)).filter(i=>!!i).filter(i=>!i.hidden);if(this._tree.setFocus(t),e.length>0){const i=this._tree.getFocus()[0];i&&this._tree.reveal(i)}}getActiveDescendant(){return this._tree.getHTMLElement().getAttribute("aria-activedescendant")}setSelectedElements(e){const t=e.map(i=>this._itemElements.find(n=>n.item===i)).filter(i=>!!i);this._tree.setSelection(t)}getCheckedElements(){return this._itemElements.filter(e=>e.checked).map(e=>e.item)}setCheckedElements(e){this._elementCheckedEventBufferer.bufferEvents(()=>{const t=new Set;for(const i of e)t.add(i);for(const i of this._itemElements)i.checked=t.has(i.item)})}focus(e){if(this._itemElements.length)switch(e===yt.Second&&this._itemElements.length<2&&(e=yt.First),e){case yt.First:this._tree.scrollTop=0,this._tree.focusFirst(void 0,t=>t.element instanceof zi);break;case yt.Second:{this._tree.scrollTop=0;let t=!1;this._tree.focusFirst(void 0,i=>i.element instanceof zi?t?!0:(t=!t,!1):!1);break}case yt.Last:this._tree.scrollTop=this._tree.scrollHeight,this._tree.focusLast(void 0,t=>t.element instanceof zi);break;case yt.Next:{const t=this._tree.getFocus();this._tree.focusNext(void 0,this._shouldLoop,void 0,n=>n.element instanceof zi?(this._tree.reveal(n.element),!0):!1);const i=this._tree.getFocus();t.length&&t[0]===i[0]&&t[0]===this._itemElements[this._itemElements.length-1]&&this._onLeave.fire();break}case yt.Previous:{const t=this._tree.getFocus();this._tree.focusPrevious(void 0,this._shouldLoop,void 0,n=>{if(!(n.element instanceof zi))return!1;const s=this._tree.getParentElement(n.element);return s===null||s.children[0]!==n.element?this._tree.reveal(n.element):this._tree.reveal(s),!0});const i=this._tree.getFocus();t.length&&t[0]===i[0]&&t[0]===this._itemElements[0]&&this._onLeave.fire();break}case yt.NextPage:this._tree.focusNextPage(void 0,t=>t.element instanceof zi?(this._tree.reveal(t.element),!0):!1);break;case yt.PreviousPage:this._tree.focusPreviousPage(void 0,t=>{if(!(t.element instanceof zi))return!1;const i=this._tree.getParentElement(t.element);return i===null||i.children[0]!==t.element?this._tree.reveal(t.element):this._tree.reveal(i),!0});break;case yt.NextSeparator:{let t=!1;const i=this._tree.getFocus()[0];this._tree.focusNext(void 0,!0,void 0,s=>{if(t)return!0;if(s.element instanceof fd)t=!0,this._separatorRenderer.isSeparatorVisible(s.element)?this._tree.reveal(s.element.children[0]):this._tree.reveal(s.element,0);else if(s.element instanceof zi){if(s.element.separator)return this._itemRenderer.isItemWithSeparatorVisible(s.element)?this._tree.reveal(s.element):this._tree.reveal(s.element,0),!0;if(s.element===this._elementTree[0])return this._tree.reveal(s.element,0),!0}return!1});const n=this._tree.getFocus()[0];i===n&&(this._tree.scrollTop=this._tree.scrollHeight,this._tree.focusLast(void 0,s=>s.element instanceof zi));break}case yt.PreviousSeparator:{let t,i=!!this._tree.getFocus()[0]?.separator;this._tree.focusPrevious(void 0,!0,void 0,n=>{if(n.element instanceof fd)i?t||(this._separatorRenderer.isSeparatorVisible(n.element)?this._tree.reveal(n.element):this._tree.reveal(n.element,0),t=n.element.children[0]):i=!0;else if(n.element instanceof zi&&!t){if(n.element.separator)this._itemRenderer.isItemWithSeparatorVisible(n.element)?this._tree.reveal(n.element):this._tree.reveal(n.element,0),t=n.element;else if(n.element===this._elementTree[0])return this._tree.reveal(n.element,0),!0}return!1}),t&&this._tree.setFocus([t]);break}}}clearFocus(){this._tree.setFocus([])}domFocus(){this._tree.domFocus()}layout(e){this._tree.getHTMLElement().style.maxHeight=e?`${Math.floor(e/44)*44+6}px`:"",this._tree.layout()}filter(e){if(this._lastQueryString=e,!(this._sortByLabel||this._matchOnLabel||this._matchOnDescription||this._matchOnDetail))return this._tree.layout(),!1;const t=e;if(e=e.trim(),!e||!(this.matchOnLabel||this.matchOnDescription||this.matchOnDetail))this._itemElements.forEach(i=>{i.labelHighlights=void 0,i.descriptionHighlights=void 0,i.detailHighlights=void 0,i.hidden=!1;const n=i.index&&this._inputElements[i.index-1];i.item&&(i.separator=n&&n.type==="separator"&&!n.buttons?n:void 0)});else{let i;this._itemElements.forEach(n=>{let s;this.matchOnLabelMode==="fuzzy"?s=this.matchOnLabel?IS(e,Tm(n.saneLabel))??void 0:void 0:s=this.matchOnLabel?jee(t,Tm(n.saneLabel))??void 0:void 0;const r=this.matchOnDescription?IS(e,Tm(n.saneDescription||""))??void 0:void 0,a=this.matchOnDetail?IS(e,Tm(n.saneDetail||""))??void 0:void 0;if(s||r||a?(n.labelHighlights=s,n.descriptionHighlights=r,n.detailHighlights=a,n.hidden=!1):(n.labelHighlights=void 0,n.descriptionHighlights=void 0,n.detailHighlights=void 0,n.hidden=n.item?!n.item.alwaysShow:!0),n.item?n.separator=void 0:n.separator&&(n.hidden=!0),!this.sortByLabel){const l=n.index&&this._inputElements[n.index-1]||void 0;l?.type==="separator"&&!l.buttons&&(i=l),i&&!n.hidden&&(n.separator=i,i=void 0)}})}return this._setElementsToTree(this._sortByLabel&&e?this._itemElements:this._elementTree),this._tree.layout(),!0}toggleCheckbox(){this._elementCheckedEventBufferer.bufferEvents(()=>{const e=this._tree.getFocus().filter(i=>i instanceof zi),t=this._allVisibleChecked(e);for(const i of e)i.checkboxDisabled||(i.checked=!t)})}style(e){this._tree.style(e)}toggleHover(){const e=this._tree.getFocus()[0];if(!e?.saneTooltip||!(e instanceof zi))return;if(this._lastHover&&!this._lastHover.isDisposed){this._lastHover.dispose();return}this.showHover(e);const t=new X;t.add(this._tree.onDidChangeFocus(i=>{i.elements[0]instanceof zi&&this.showHover(i.elements[0])})),this._lastHover&&t.add(this._lastHover),this._elementDisposable.add(t)}_setElementsToTree(e){const t=new Array;for(const i of e)i instanceof fd?t.push({element:i,collapsible:!1,collapsed:!1,children:i.children.map(n=>({element:n,collapsible:!1,collapsed:!1}))}):t.push({element:i,collapsible:!1,collapsed:!1});this._tree.setChildren(null,t)}_allVisibleChecked(e,t=!0){for(let i=0,n=e.length;i{this._allVisibleCheckedObservable.set(this._allVisibleChecked(this._itemElements,!1),e);const t=this._itemElements.filter(i=>i.checked).length;this._checkedCountObservable.set(t,e),this._checkedElementsObservable.set(this.getCheckedElements(),e)})}showHover(e){this._lastHover&&!this._lastHover.isDisposed&&(this.hoverDelegate.onDidHideHover?.(),this._lastHover?.dispose()),!(!e.element||!e.saneTooltip)&&(this._lastHover=this.hoverDelegate.showHover({content:e.saneTooltip,target:e.element,linkHandler:t=>{this.linkOpenerDelegate(t)},appearance:{showPointer:!0},container:this._container,position:{hoverPosition:1}},!1))}};Cy([Jt],C_.prototype,"onDidChangeFocus",null);Cy([Jt],C_.prototype,"onDidChangeSelection",null);C_=Cy([$D(4,ke),$D(5,ms)],C_);function jee(o,e){const{text:t,iconOffsets:i}=e;if(!i||i.length===0)return oO(o,t);const n=k0(t," "),s=t.length-n.length,r=oO(o,n);if(r)for(const a of r){const l=i[a.start+s]+s;a.start+=l,a.end+=l}return r}function oO(o,e){const t=e.toLowerCase().indexOf(o.toLowerCase());return t!==-1?[{start:t,end:t+o.length}]:null}function qee(o,e,t){const i=o.labelHighlights||[],n=e.labelHighlights||[];return i.length&&!n.length?-1:!i.length&&n.length?1:i.length===0&&n.length===0?0:zee(o.saneSortLabel,e.saneSortLabel,t)}const Y9={weight:200,when:re.and(re.equals(L9,"quickPick"),_J),metadata:{description:m("quickPick","Used while in the context of the quick pick. If you change one keybinding for this command, you should change all of the other keybindings (modifier variants) of this command as well.")}};function ts(o,e={}){Nn.registerCommandAndKeybindingRule({...Y9,...o,secondary:Gee(o.primary,o.secondary??[],e)})}const _v=Ue?256:2048;function Gee(o,e,t={}){return t.withAltMod&&e.push(512+o),t.withCtrlMod&&(e.push(_v+o),t.withAltMod&&e.push(512+_v+o)),t.withCmdMod&&Ue&&(e.push(2048+o),t.withCtrlMod&&e.push(2304+o),t.withAltMod&&(e.push(2560+o),t.withCtrlMod&&e.push(2816+o))),e}function Ss(o,e){return t=>{const i=t.get(fy).currentQuickInput;if(i)return e&&i.quickNavigate?i.focus(e):i.focus(o)}}ts({id:"quickInput.pageNext",primary:12,handler:Ss(yt.NextPage)},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0});ts({id:"quickInput.pagePrevious",primary:11,handler:Ss(yt.PreviousPage)},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0});ts({id:"quickInput.first",primary:_v+14,handler:Ss(yt.First)},{withAltMod:!0,withCmdMod:!0});ts({id:"quickInput.last",primary:_v+13,handler:Ss(yt.Last)},{withAltMod:!0,withCmdMod:!0});ts({id:"quickInput.next",primary:18,handler:Ss(yt.Next)},{withCtrlMod:!0});ts({id:"quickInput.previous",primary:16,handler:Ss(yt.Previous)},{withCtrlMod:!0});const rO=m("quickInput.nextSeparatorWithQuickAccessFallback","If we're in quick access mode, this will navigate to the next item. If we are not in quick access mode, this will navigate to the next separator."),aO=m("quickInput.previousSeparatorWithQuickAccessFallback","If we're in quick access mode, this will navigate to the previous item. If we are not in quick access mode, this will navigate to the previous separator.");Ue?(ts({id:"quickInput.nextSeparatorWithQuickAccessFallback",primary:2066,handler:Ss(yt.NextSeparator,yt.Next),metadata:{description:rO}}),ts({id:"quickInput.nextSeparator",primary:2578,secondary:[2322],handler:Ss(yt.NextSeparator)},{withCtrlMod:!0}),ts({id:"quickInput.previousSeparatorWithQuickAccessFallback",primary:2064,handler:Ss(yt.PreviousSeparator,yt.Previous),metadata:{description:aO}}),ts({id:"quickInput.previousSeparator",primary:2576,secondary:[2320],handler:Ss(yt.PreviousSeparator)},{withCtrlMod:!0})):(ts({id:"quickInput.nextSeparatorWithQuickAccessFallback",primary:530,handler:Ss(yt.NextSeparator,yt.Next),metadata:{description:rO}}),ts({id:"quickInput.nextSeparator",primary:2578,handler:Ss(yt.NextSeparator)}),ts({id:"quickInput.previousSeparatorWithQuickAccessFallback",primary:528,handler:Ss(yt.PreviousSeparator,yt.Previous),metadata:{description:aO}}),ts({id:"quickInput.previousSeparator",primary:2576,handler:Ss(yt.PreviousSeparator)}));ts({id:"quickInput.acceptInBackground",when:re.and(Y9.when,re.or(W9.negate(),vJ)),primary:17,weight:250,handler:o=>{o.get(fy).currentQuickInput?.accept(!0)}},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0});var Zee=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},QS=function(o,e){return function(t,i){e(t,i,o)}},jD;const Jn=ce;var ah;let qD=(ah=class extends z{get currentQuickInput(){return this.controller??void 0}get container(){return this._container}constructor(e,t,i,n){super(),this.options=e,this.layoutService=t,this.instantiationService=i,this.contextKeyService=n,this.enabled=!0,this.onDidAcceptEmitter=this._register(new A),this.onDidCustomEmitter=this._register(new A),this.onDidTriggerButtonEmitter=this._register(new A),this.keyMods={ctrlCmd:!1,alt:!1},this.controller=null,this.onShowEmitter=this._register(new A),this.onShow=this.onShowEmitter.event,this.onHideEmitter=this._register(new A),this.onHide=this.onHideEmitter.event,this.inQuickInputContext=pJ.bindTo(this.contextKeyService),this.quickInputTypeContext=bJ.bindTo(this.contextKeyService),this.endOfQuickInputBoxContext=CJ.bindTo(this.contextKeyService),this.idPrefix=e.idPrefix,this._container=e.container,this.styles=e.styles,this._register(J.runAndSubscribe(T0,({window:s,disposables:r})=>this.registerKeyModsListeners(s,r),{window:_t,disposables:this._store})),this._register(hV(s=>{this.ui&&fe(this.ui.container)===s&&(this.reparentUI(this.layoutService.mainContainer),this.layout(this.layoutService.mainContainerDimension,this.layoutService.mainContainerOffset.quickPickTop))}))}registerKeyModsListeners(e,t){const i=n=>{this.keyMods.ctrlCmd=n.ctrlKey||n.metaKey,this.keyMods.alt=n.altKey};for(const n of[ee.KEY_DOWN,ee.KEY_UP,ee.MOUSE_DOWN])t.add(U(e,n,i,!0))}getUI(e){if(this.ui)return e&&fe(this._container)!==fe(this.layoutService.activeContainer)&&(this.reparentUI(this.layoutService.activeContainer),this.layout(this.layoutService.activeContainerDimension,this.layoutService.activeContainerOffset.quickPickTop)),this.ui;const t=Z(this._container,Jn(".quick-input-widget.show-file-icons"));t.tabIndex=-1,t.style.display="none";const i=Vs(t),n=Z(t,Jn(".quick-input-titlebar")),s=this._register(new oo(n,{hoverDelegate:this.options.hoverDelegate}));s.domNode.classList.add("quick-input-left-action-bar");const r=Z(n,Jn(".quick-input-title")),a=this._register(new oo(n,{hoverDelegate:this.options.hoverDelegate}));a.domNode.classList.add("quick-input-right-action-bar");const l=Z(t,Jn(".quick-input-header")),c=Z(l,Jn("input.quick-input-check-all"));c.type="checkbox",c.setAttribute("aria-label",m("quickInput.checkAll","Toggle all checkboxes")),this._register(jt(c,ee.CHANGE,B=>{const G=c.checked;W.setAllVisibleChecked(G)})),this._register(U(c,ee.CLICK,B=>{(B.x||B.y)&&f.setFocus()}));const d=Z(l,Jn(".quick-input-description")),h=Z(l,Jn(".quick-input-and-message")),u=Z(h,Jn(".quick-input-filter")),f=this._register(new RJ(u,this.styles.inputBox,this.styles.toggle));f.setAttribute("aria-describedby",`${this.idPrefix}message`);const g=Z(u,Jn(".quick-input-visible-count"));g.setAttribute("aria-live","polite"),g.setAttribute("aria-atomic","true");const p=new PD(g,{countFormat:m({key:"quickInput.visibleCount",comment:["This tells the user how many items are shown in a list of items to select from. The items can be anything. Currently not visible, but read by screen readers."]},"{0} Results")},this.styles.countBadge),_=Z(u,Jn(".quick-input-count"));_.setAttribute("aria-live","polite");const b=new PD(_,{countFormat:m({key:"quickInput.countSelected",comment:["This tells the user how many items are selected in a list of items to select from. The items can be anything."]},"{0} Selected")},this.styles.countBadge),C=this._register(new oo(l,{hoverDelegate:this.options.hoverDelegate}));C.domNode.classList.add("quick-input-inline-action-bar");const w=Z(l,Jn(".quick-input-action")),v=this._register(new AD(w,this.styles.button));v.label=m("ok","OK"),this._register(v.onDidClick(B=>{this.onDidAcceptEmitter.fire()}));const y=Z(l,Jn(".quick-input-action")),x=this._register(new AD(y,{...this.styles.button,supportIcons:!0}));x.label=m("custom","Custom"),this._register(x.onDidClick(B=>{this.onDidCustomEmitter.fire()}));const L=Z(h,Jn(`#${this.idPrefix}message.quick-input-message`)),E=this._register(new OD(t,this.styles.progressBar));E.getContainer().classList.add("quick-input-progress");const N=Z(t,Jn(".quick-input-html-widget"));N.tabIndex=-1;const H=Z(t,Jn(".quick-input-description")),F=this.idPrefix+"list",W=this._register(this.instantiationService.createInstance(C_,t,this.options.hoverDelegate,this.options.linkOpenerDelegate,F));f.setAttribute("aria-controls",F),this._register(W.onDidChangeFocus(()=>{f.setAttribute("aria-activedescendant",W.getActiveDescendant()??"")})),this._register(W.onChangedAllVisibleChecked(B=>{c.checked=B})),this._register(W.onChangedVisibleCount(B=>{p.setCount(B)})),this._register(W.onChangedCheckedCount(B=>{b.setCount(B)})),this._register(W.onLeave(()=>{setTimeout(()=>{this.controller&&(f.setFocus(),this.controller instanceof sv&&this.controller.canSelectMany&&W.clearFocus())},0)}));const j=Ph(t);return this._register(j),this._register(U(t,ee.FOCUS,B=>{const G=this.getUI();if(yi(B.relatedTarget,G.inputContainer)){const ne=G.inputBox.isSelectionAtEnd();this.endOfQuickInputBoxContext.get()!==ne&&this.endOfQuickInputBoxContext.set(ne)}yi(B.relatedTarget,G.container)||(this.inQuickInputContext.set(!0),this.previousFocusElement=Ei(B.relatedTarget)?B.relatedTarget:void 0)},!0)),this._register(j.onDidBlur(()=>{!this.getUI().ignoreFocusOut&&!this.options.ignoreFocusOut()&&this.hide(yg.Blur),this.inQuickInputContext.set(!1),this.endOfQuickInputBoxContext.set(!1),this.previousFocusElement=void 0})),this._register(f.onKeyDown(B=>{const G=this.getUI().inputBox.isSelectionAtEnd();this.endOfQuickInputBoxContext.get()!==G&&this.endOfQuickInputBoxContext.set(G)})),this._register(U(t,ee.FOCUS,B=>{f.setFocus()})),this._register(jt(t,ee.KEY_DOWN,B=>{if(!yi(B.target,N))switch(B.keyCode){case 3:je.stop(B,!0),this.enabled&&this.onDidAcceptEmitter.fire();break;case 9:je.stop(B,!0),this.hide(yg.Gesture);break;case 2:if(!B.altKey&&!B.ctrlKey&&!B.metaKey){const G=[".quick-input-list .monaco-action-bar .always-visible",".quick-input-list-entry:hover .monaco-action-bar",".monaco-list-row.focused .monaco-action-bar"];if(t.classList.contains("show-checkboxes")?G.push("input"):G.push("input[type=text]"),this.getUI().list.displayed&&G.push(".monaco-list"),this.getUI().message&&G.push(".quick-input-message a"),this.getUI().widget){if(yi(B.target,this.getUI().widget))break;G.push(".quick-input-html-widget")}const ne=t.querySelectorAll(G.join(", "));B.shiftKey&&B.target===ne[0]?(je.stop(B,!0),W.clearFocus()):!B.shiftKey&&yi(B.target,ne[ne.length-1])&&(je.stop(B,!0),ne[0].focus())}break;case 10:B.ctrlKey&&(je.stop(B,!0),this.getUI().list.toggleHover());break}})),this.ui={container:t,styleSheet:i,leftActionBar:s,titleBar:n,title:r,description1:H,description2:d,widget:N,rightActionBar:a,inlineActionBar:C,checkAll:c,inputContainer:h,filterContainer:u,inputBox:f,visibleCountContainer:g,visibleCount:p,countContainer:_,count:b,okContainer:w,ok:v,message:L,customButtonContainer:y,customButton:x,list:W,progressBar:E,onDidAccept:this.onDidAcceptEmitter.event,onDidCustom:this.onDidCustomEmitter.event,onDidTriggerButton:this.onDidTriggerButtonEmitter.event,ignoreFocusOut:!1,keyMods:this.keyMods,show:B=>this.show(B),hide:()=>this.hide(),setVisibilities:B=>this.setVisibilities(B),setEnabled:B=>this.setEnabled(B),setContextKey:B=>this.options.setContextKey(B),linkOpenerDelegate:B=>this.options.linkOpenerDelegate(B)},this.updateStyles(),this.ui}reparentUI(e){this.ui&&(this._container=e,Z(this._container,this.ui.container))}pick(e,t={},i=ut.None){return new Promise((n,s)=>{let r=d=>{r=n,t.onKeyMods?.(a.keyMods),n(d)};if(i.isCancellationRequested){r(void 0);return}const a=this.createQuickPick({useSeparators:!0});let l;const c=[a,a.onDidAccept(()=>{if(a.canSelectMany)r(a.selectedItems.slice()),a.hide();else{const d=a.activeItems[0];d&&(r(d),a.hide())}}),a.onDidChangeActive(d=>{const h=d[0];h&&t.onDidFocus&&t.onDidFocus(h)}),a.onDidChangeSelection(d=>{if(!a.canSelectMany){const h=d[0];h&&(r(h),a.hide())}}),a.onDidTriggerItemButton(d=>t.onDidTriggerItemButton&&t.onDidTriggerItemButton({...d,removeItem:()=>{const h=a.items.indexOf(d.item);if(h!==-1){const u=a.items.slice(),f=u.splice(h,1),g=a.activeItems.filter(_=>_!==f[0]),p=a.keepScrollPosition;a.keepScrollPosition=!0,a.items=u,g&&(a.activeItems=g),a.keepScrollPosition=p}}})),a.onDidTriggerSeparatorButton(d=>t.onDidTriggerSeparatorButton?.(d)),a.onDidChangeValue(d=>{l&&!d&&(a.activeItems.length!==1||a.activeItems[0]!==l)&&(a.activeItems=[l])}),i.onCancellationRequested(()=>{a.hide()}),a.onDidHide(()=>{xt(c),r(void 0)})];a.title=t.title,t.value&&(a.value=t.value),a.canSelectMany=!!t.canPickMany,a.placeholder=t.placeHolder,a.ignoreFocusOut=!!t.ignoreFocusLost,a.matchOnDescription=!!t.matchOnDescription,a.matchOnDetail=!!t.matchOnDetail,a.matchOnLabel=t.matchOnLabel===void 0||t.matchOnLabel,a.quickNavigate=t.quickNavigate,a.hideInput=!!t.hideInput,a.contextKey=t.contextKey,a.busy=!0,Promise.all([e,t.activeItem]).then(([d,h])=>{l=h,a.busy=!1,a.items=d,a.canSelectMany&&(a.selectedItems=d.filter(u=>u.type!=="separator"&&u.picked)),l&&(a.activeItems=[l])}),a.show(),Promise.resolve(e).then(void 0,d=>{s(d),a.hide()})})}createQuickPick(e={useSeparators:!1}){const t=this.getUI(!0);return new sv(t)}createInputBox(){const e=this.getUI(!0);return new wJ(e)}show(e){const t=this.getUI(!0);this.onShowEmitter.fire();const i=this.controller;this.controller=e,i?.didHide(),this.setEnabled(!0),t.leftActionBar.clear(),t.title.textContent="",t.description1.textContent="",t.description2.textContent="",un(t.widget),t.rightActionBar.clear(),t.inlineActionBar.clear(),t.checkAll.checked=!1,t.inputBox.placeholder="",t.inputBox.password=!1,t.inputBox.showDecoration(Qt.Ignore),t.visibleCount.setCount(0),t.count.setCount(0),un(t.message),t.progressBar.stop(),t.list.setElements([]),t.list.matchOnDescription=!1,t.list.matchOnDetail=!1,t.list.matchOnLabel=!0,t.list.sortByLabel=!0,t.ignoreFocusOut=!1,t.inputBox.toggles=void 0;const n=this.options.backKeybindingLabel();MD.tooltip=n?m("quickInput.backWithKeybinding","Back ({0})",n):m("quickInput.back","Back"),t.container.style.display="",this.updateLayout(),t.inputBox.setFocus(),this.quickInputTypeContext.set(e.type)}isVisible(){return!!this.ui&&this.ui.container.style.display!=="none"}setVisibilities(e){const t=this.getUI();t.title.style.display=e.title?"":"none",t.description1.style.display=e.description&&(e.inputBox||e.checkAll)?"":"none",t.description2.style.display=e.description&&!(e.inputBox||e.checkAll)?"":"none",t.checkAll.style.display=e.checkAll?"":"none",t.inputContainer.style.display=e.inputBox?"":"none",t.filterContainer.style.display=e.inputBox?"":"none",t.visibleCountContainer.style.display=e.visibleCount?"":"none",t.countContainer.style.display=e.count?"":"none",t.okContainer.style.display=e.ok?"":"none",t.customButtonContainer.style.display=e.customButton?"":"none",t.message.style.display=e.message?"":"none",t.progressBar.getContainer().style.display=e.progressBar?"":"none",t.list.displayed=!!e.list,t.container.classList.toggle("show-checkboxes",!!e.checkBox),t.container.classList.toggle("hidden-input",!e.inputBox&&!e.description),this.updateLayout()}setEnabled(e){if(e!==this.enabled){this.enabled=e;for(const t of this.getUI().leftActionBar.viewItems)t.action.enabled=e;for(const t of this.getUI().rightActionBar.viewItems)t.action.enabled=e;this.getUI().checkAll.disabled=!e,this.getUI().inputBox.enabled=e,this.getUI().ok.enabled=e,this.getUI().list.enabled=e}}hide(e){const t=this.controller;if(!t)return;t.willHide(e);const i=this.ui?.container,n=i&&!OF(i);if(this.controller=null,this.onHideEmitter.fire(),i&&(i.style.display="none"),!n){let s=this.previousFocusElement;for(;s&&!s.offsetParent;)s=s.parentElement??void 0;s?.offsetParent?(s.focus(),this.previousFocusElement=void 0):this.options.returnFocus()}t.didHide(e)}layout(e,t){this.dimension=e,this.titleBarOffset=t,this.updateLayout()}updateLayout(){if(this.ui&&this.isVisible()){this.ui.container.style.top=`${this.titleBarOffset}px`;const e=this.ui.container.style,t=Math.min(this.dimension.width*.62,jD.MAX_WIDTH);e.width=t+"px",e.marginLeft="-"+t/2+"px",this.ui.inputBox.layout(),this.ui.list.layout(this.dimension&&this.dimension.height*.4)}}applyStyles(e){this.styles=e,this.updateStyles()}updateStyles(){if(this.ui){const{quickInputTitleBackground:e,quickInputBackground:t,quickInputForeground:i,widgetBorder:n,widgetShadow:s}=this.styles.widget;this.ui.titleBar.style.backgroundColor=e??"",this.ui.container.style.backgroundColor=t??"",this.ui.container.style.color=i??"",this.ui.container.style.border=n?`1px solid ${n}`:"",this.ui.container.style.boxShadow=s?`0 0 8px 2px ${s}`:"",this.ui.list.style(this.styles.list);const r=[];this.styles.pickerGroup.pickerGroupBorder&&r.push(`.quick-input-list .quick-input-list-entry { border-top-color: ${this.styles.pickerGroup.pickerGroupBorder}; }`),this.styles.pickerGroup.pickerGroupForeground&&r.push(`.quick-input-list .quick-input-list-separator { color: ${this.styles.pickerGroup.pickerGroupForeground}; }`),this.styles.pickerGroup.pickerGroupForeground&&r.push(".quick-input-list .quick-input-list-separator-as-item { color: var(--vscode-descriptionForeground); }"),(this.styles.keybindingLabel.keybindingLabelBackground||this.styles.keybindingLabel.keybindingLabelBorder||this.styles.keybindingLabel.keybindingLabelBottomBorder||this.styles.keybindingLabel.keybindingLabelShadow||this.styles.keybindingLabel.keybindingLabelForeground)&&(r.push(".quick-input-list .monaco-keybinding > .monaco-keybinding-key {"),this.styles.keybindingLabel.keybindingLabelBackground&&r.push(`background-color: ${this.styles.keybindingLabel.keybindingLabelBackground};`),this.styles.keybindingLabel.keybindingLabelBorder&&r.push(`border-color: ${this.styles.keybindingLabel.keybindingLabelBorder};`),this.styles.keybindingLabel.keybindingLabelBottomBorder&&r.push(`border-bottom-color: ${this.styles.keybindingLabel.keybindingLabelBottomBorder};`),this.styles.keybindingLabel.keybindingLabelShadow&&r.push(`box-shadow: inset 0 -1px 0 ${this.styles.keybindingLabel.keybindingLabelShadow};`),this.styles.keybindingLabel.keybindingLabelForeground&&r.push(`color: ${this.styles.keybindingLabel.keybindingLabelForeground};`),r.push("}"));const a=r.join(` -`);a!==this.ui.styleSheet.textContent&&(this.ui.styleSheet.textContent=a)}}},jD=ah,ah.MAX_WIDTH=600,ah);qD=jD=Zee([QS(1,jc),QS(2,ke),QS(3,De)],qD);var Yee=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vm=function(o,e){return function(t,i){e(t,i,o)}};let GD=class extends P${get controller(){return this._controller||(this._controller=this._register(this.createController())),this._controller}get hasController(){return!!this._controller}get currentQuickInput(){return this.controller.currentQuickInput}get quickAccess(){return this._quickAccess||(this._quickAccess=this._register(this.instantiationService.createInstance(TD))),this._quickAccess}constructor(e,t,i,n,s){super(i),this.instantiationService=e,this.contextKeyService=t,this.layoutService=n,this.configurationService=s,this._onShow=this._register(new A),this._onHide=this._register(new A),this.contexts=new Map}createController(e=this.layoutService,t){const i={idPrefix:"quickInput_",container:e.activeContainer,ignoreFocusOut:()=>!1,backKeybindingLabel:()=>{},setContextKey:s=>this.setContextKey(s),linkOpenerDelegate:s=>{this.instantiationService.invokeFunction(r=>{r.get(Vo).open(s,{allowCommands:!0,fromUserGesture:!0})})},returnFocus:()=>e.focus(),styles:this.computeStyles(),hoverDelegate:this._register(this.instantiationService.createInstance(RD))},n=this._register(this.instantiationService.createInstance(qD,{...i,...t}));return n.layout(e.activeContainerDimension,e.activeContainerOffset.quickPickTop),this._register(e.onDidLayoutActiveContainer(s=>{fe(e.activeContainer)===fe(n.container)&&n.layout(s,e.activeContainerOffset.quickPickTop)})),this._register(e.onDidChangeActiveContainer(()=>{n.isVisible()||n.layout(e.activeContainerDimension,e.activeContainerOffset.quickPickTop)})),this._register(n.onShow(()=>{this.resetContextKeys(),this._onShow.fire()})),this._register(n.onHide(()=>{this.resetContextKeys(),this._onHide.fire()})),n}setContextKey(e){let t;e&&(t=this.contexts.get(e),t||(t=new le(e,!1).bindTo(this.contextKeyService),this.contexts.set(e,t))),!(t&&t.get())&&(this.resetContextKeys(),t?.set(!0))}resetContextKeys(){this.contexts.forEach(e=>{e.get()&&e.reset()})}pick(e,t,i=ut.None){return this.controller.pick(e,t,i)}createQuickPick(e={useSeparators:!1}){return this.controller.createQuickPick(e)}createInputBox(){return this.controller.createInputBox()}updateStyles(){this.hasController&&this.controller.applyStyles(this.computeStyles())}computeStyles(){return{widget:{quickInputBackground:oe(TA),quickInputForeground:oe(eq),quickInputTitleBackground:oe(tq),widgetBorder:oe(FK),widgetShadow:oe(q_)},inputBox:F7,toggle:O7,countBadge:B7,button:PY,progressBar:OY,keybindingLabel:AY,list:$g({listBackground:TA,listFocusBackground:PC,listFocusForeground:AC,listInactiveFocusForeground:AC,listInactiveSelectionIconForeground:TT,listInactiveFocusBackground:PC,listFocusOutline:Ut,listInactiveFocusOutline:Ut}),pickerGroup:{pickerGroupBorder:oe(iq),pickerGroupForeground:oe(Q3)}}}};GD=Yee([vm(0,ke),vm(1,De),vm(2,en),vm(3,jc),vm(4,lt)],GD);var Q9=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},xd=function(o,e){return function(t,i){e(t,i,o)}};let ZD=class extends GD{constructor(e,t,i,n,s,r){super(t,i,n,new pk(e.getContainerDomNode(),s),r),this.host=void 0;const a=v_.get(e);if(a){const l=a.widget;this.host={_serviceBrand:void 0,get mainContainer(){return l.getDomNode()},getContainer(){return l.getDomNode()},whenContainerStylesLoaded(){},get containers(){return[l.getDomNode()]},get activeContainer(){return l.getDomNode()},get mainContainerDimension(){return e.getLayoutInfo()},get activeContainerDimension(){return e.getLayoutInfo()},get onDidLayoutMainContainer(){return e.onDidLayoutChange},get onDidLayoutActiveContainer(){return e.onDidLayoutChange},get onDidLayoutContainer(){return J.map(e.onDidLayoutChange,c=>({container:l.getDomNode(),dimension:c}))},get onDidChangeActiveContainer(){return J.None},get onDidAddContainer(){return J.None},get mainContainerOffset(){return{top:0,quickPickTop:0}},get activeContainerOffset(){return{top:0,quickPickTop:0}},focus:()=>e.focus()}}else this.host=void 0}createController(){return super.createController(this.host)}};ZD=Q9([xd(1,ke),xd(2,De),xd(3,en),xd(4,Pt),xd(5,lt)],ZD);let YD=class{get activeService(){const e=this.codeEditorService.getFocusedCodeEditor();if(!e)throw new Error("Quick input service needs a focused editor to work.");let t=this.mapEditorToService.get(e);if(!t){const i=t=this.instantiationService.createInstance(ZD,e);this.mapEditorToService.set(e,t),ng(e.onDidDispose)(()=>{i.dispose(),this.mapEditorToService.delete(e)})}return t}get currentQuickInput(){return this.activeService.currentQuickInput}get quickAccess(){return this.activeService.quickAccess}constructor(e,t){this.instantiationService=e,this.codeEditorService=t,this.mapEditorToService=new Map}pick(e,t,i=ut.None){return this.activeService.pick(e,t,i)}createQuickPick(e={useSeparators:!1}){return this.activeService.createQuickPick(e)}createInputBox(){return this.activeService.createInputBox()}};YD=Q9([xd(0,ke),xd(1,Pt)],YD);const $w=class $w{static get(e){return e.getContribution($w.ID)}constructor(e){this.editor=e,this.widget=new QD(this.editor)}dispose(){this.widget.dispose()}};$w.ID="editor.controller.quickInput";let v_=$w;const Kw=class Kw{constructor(e){this.codeEditor=e,this.domNode=document.createElement("div"),this.codeEditor.addOverlayWidget(this)}getId(){return Kw.ID}getDomNode(){return this.domNode}getPosition(){return{preference:2}}dispose(){this.codeEditor.removeOverlayWidget(this)}};Kw.ID="editor.contrib.quickInputWidget";let QD=Kw;Ho(v_.ID,v_,4);class Qee{constructor(e,t,i,n,s){this._parsedThemeRuleBrand=void 0,this.token=e,this.index=t,this.fontStyle=i,this.foreground=n,this.background=s}}function Xee(o){if(!o||!Array.isArray(o))return[];const e=[];let t=0;for(let i=0,n=o.length;i{const u=ste(d.token,h.token);return u!==0?u:d.index-h.index});let t=0,i="000000",n="ffffff";for(;o.length>=1&&o[0].token==="";){const d=o.shift();d.fontStyle!==-1&&(t=d.fontStyle),d.foreground!==null&&(i=d.foreground),d.background!==null&&(n=d.background)}const s=new tte;for(const d of e)s.getId(d);const r=s.getId(i),a=s.getId(n),l=new M2(t,r,a),c=new R2(l);for(let d=0,h=o.length;d"u"){const n=this._match(t),s=nte(t);i=(n.metadata|s<<8)>>>0,this._cache.set(t,i)}return(i|e<<0)>>>0}}const ite=/\b(comment|string|regex|regexp)\b/;function nte(o){const e=o.match(ite);if(!e)return 0;switch(e[1]){case"comment":return 1;case"string":return 2;case"regex":return 3;case"regexp":return 3}throw new Error("Unexpected match for standard token type!")}function ste(o,e){return oe?1:0}class M2{constructor(e,t,i){this._themeTrieElementRuleBrand=void 0,this._fontStyle=e,this._foreground=t,this._background=i,this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}clone(){return new M2(this._fontStyle,this._foreground,this._background)}acceptOverwrite(e,t,i){e!==-1&&(this._fontStyle=e),t!==0&&(this._foreground=t),i!==0&&(this._background=i),this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}}class R2{constructor(e){this._themeTrieElementBrand=void 0,this._mainRule=e,this._children=new Map}match(e){if(e==="")return this._mainRule;const t=e.indexOf(".");let i,n;t===-1?(i=e,n=""):(i=e.substring(0,t),n=e.substring(t+1));const s=this._children.get(i);return typeof s<"u"?s.match(n):this._mainRule}insert(e,t,i,n){if(e===""){this._mainRule.acceptOverwrite(t,i,n);return}const s=e.indexOf(".");let r,a;s===-1?(r=e,a=""):(r=e.substring(0,s),a=e.substring(s+1));let l=this._children.get(r);typeof l>"u"&&(l=new R2(this._mainRule.clone()),this._children.set(r,l)),l.insert(a,t,i,n)}}function ote(o){const e=[];for(let t=1,i=o.length;t({format:n.format,location:n.location.toString()}))}}o.toJSONObject=e;function t(i){const n=s=>Os(s)?s:void 0;if(i&&Array.isArray(i.src)&&i.src.every(s=>Os(s.format)&&Os(s.location)))return{weight:n(i.weight),style:n(i.style),src:i.src.map(s=>({format:s.format,location:ve.parse(s.location)}))}}o.fromJSONObject=t})(cO||(cO={}));class hte{constructor(){this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this.iconSchema={definitions:{icons:{type:"object",properties:{fontId:{type:"string",description:m("iconDefinition.fontId","The id of the font to use. If not set, the font that is defined first is used.")},fontCharacter:{type:"string",description:m("iconDefinition.fontCharacter","The font character associated with the icon definition.")}},additionalProperties:!1,defaultSnippets:[{body:{fontCharacter:"\\\\e030"}}]}},type:"object",properties:{}},this.iconReferenceSchema={type:"string",pattern:`^${Ee.iconNameExpression}$`,enum:[],enumDescriptions:[]},this.iconsById={},this.iconFontsById={}}registerIcon(e,t,i,n){const s=this.iconsById[e];if(s){if(i&&!s.description){s.description=i,this.iconSchema.properties[e].markdownDescription=`${i} $(${e})`;const l=this.iconReferenceSchema.enum.indexOf(e);l!==-1&&(this.iconReferenceSchema.enumDescriptions[l]=i),this._onDidChange.fire()}return s}const r={id:e,description:i,defaults:t,deprecationMessage:n};this.iconsById[e]=r;const a={$ref:"#/definitions/icons"};return n&&(a.deprecationMessage=n),i&&(a.markdownDescription=`${i}: $(${e})`),this.iconSchema.properties[e]=a,this.iconReferenceSchema.enum.push(e),this.iconReferenceSchema.enumDescriptions.push(i||""),this._onDidChange.fire(),{id:e}}getIcons(){return Object.keys(this.iconsById).map(e=>this.iconsById[e])}getIcon(e){return this.iconsById[e]}getIconSchema(){return this.iconSchema}toString(){const e=(s,r)=>s.id.localeCompare(r.id),t=s=>{for(;Ee.isThemeIcon(s.defaults);)s=this.iconsById[s.defaults.id];return`codicon codicon-${s?s.id:""}`},i=[];i.push("| preview | identifier | default codicon ID | description"),i.push("| ----------- | --------------------------------- | --------------------------------- | --------------------------------- |");const n=Object.keys(this.iconsById).map(s=>this.iconsById[s]);for(const s of n.filter(r=>!!r.description).sort(e))i.push(`||${s.id}|${Ee.isThemeIcon(s.defaults)?s.defaults.id:s.id}|${s.description||""}|`);i.push("| preview | identifier "),i.push("| ----------- | --------------------------------- |");for(const s of n.filter(r=>!Ee.isThemeIcon(r.defaults)).sort(e))i.push(`||${s.id}|`);return i.join(` -`)}}const fu=new hte;Bi.add(dte.IconContribution,fu);function Wi(o,e,t,i){return fu.registerIcon(o,e,t,i)}function J9(){return fu}function ute(){const o=rF();for(const e in o){const t="\\"+o[e].toString(16);fu.registerIcon(e,{fontCharacter:t})}}ute();const e8="vscode://schemas/icons",t8=Bi.as(K0.JSONContribution);t8.registerSchema(e8,fu.getIconSchema());const dO=new ci(()=>t8.notifySchemaChanged(e8),200);fu.onDidChange(()=>{dO.isScheduled()||dO.schedule()});Wi("widget-close",ie.close,m("widgetClose","Icon for the close action in widgets."));Wi("goto-previous-location",ie.arrowUp,m("previousChangeIcon","Icon for goto previous editor location."));Wi("goto-next-location",ie.arrowDown,m("nextChangeIcon","Icon for goto next editor location."));Ee.modify(ie.sync,"spin");Ee.modify(ie.loading,"spin");function fte(o){const e=new X,t=e.add(new A),i=J9();return e.add(i.onDidChange(()=>t.fire())),o&&e.add(o.onDidProductIconThemeChange(()=>t.fire())),{dispose:()=>e.dispose(),onDidChange:t.event,getCSS(){const n=o?o.getProductIconTheme():new i8,s={},r=[],a=[];for(const l of i.getIcons()){const c=n.getIcon(l);if(!c)continue;const d=c.font,h=`--vscode-icon-${l.id}-font-family`,u=`--vscode-icon-${l.id}-content`;d?(s[d.id]=d.definition,a.push(`${h}: ${lS(d.id)};`,`${u}: '${c.fontCharacter}';`),r.push(`.codicon-${l.id}:before { content: '${c.fontCharacter}'; font-family: ${lS(d.id)}; }`)):(a.push(`${u}: '${c.fontCharacter}'; ${h}: 'codicon';`),r.push(`.codicon-${l.id}:before { content: '${c.fontCharacter}'; }`))}for(const l in s){const c=s[l],d=c.weight?`font-weight: ${c.weight};`:"",h=c.style?`font-style: ${c.style};`:"",u=c.src.map(f=>`${Dl(f.location)} format('${f.format}')`).join(", ");r.push(`@font-face { src: ${u}; font-family: ${lS(l)};${d}${h} font-display: block; }`)}return r.push(`:root { ${a.join(" ")} }`),r.join(` -`)}}}class i8{getIcon(e){const t=J9();let i=e.defaults;for(;Ee.isThemeIcon(i);){const n=t.getIcon(i.id);if(!n)return;i=n.defaults}return i}}const ec="vs",ap="vs-dark",Kf="hc-black",jf="hc-light",n8=Bi.as(A3.ColorContribution),gte=Bi.as(_3.ThemingContribution);class s8{constructor(e,t){this.semanticHighlighting=!1,this.themeData=t;const i=t.base;e.length>0?(z1(e)?this.id=e:this.id=i+" "+e,this.themeName=e):(this.id=i,this.themeName=i),this.colors=null,this.defaultColors=Object.create(null),this._tokenTheme=null}get base(){return this.themeData.base}notifyBaseUpdated(){this.themeData.inherit&&(this.colors=null,this._tokenTheme=null)}getColors(){if(!this.colors){const e=new Map;for(const t in this.themeData.colors)e.set(t,q.fromHex(this.themeData.colors[t]));if(this.themeData.inherit){const t=XD(this.themeData.base);for(const i in t.colors)e.has(i)||e.set(i,q.fromHex(t.colors[i]))}this.colors=e}return this.colors}getColor(e,t){const i=this.getColors().get(e);if(i)return i;if(t!==!1)return this.getDefault(e)}getDefault(e){let t=this.defaultColors[e];return t||(t=n8.resolveDefaultColor(e,this),this.defaultColors[e]=t,t)}defines(e){return this.getColors().has(e)}get type(){switch(this.base){case ec:return io.LIGHT;case Kf:return io.HIGH_CONTRAST_DARK;case jf:return io.HIGH_CONTRAST_LIGHT;default:return io.DARK}}get tokenTheme(){if(!this._tokenTheme){let e=[],t=[];if(this.themeData.inherit){const s=XD(this.themeData.base);e=s.rules,s.encodedTokensColors&&(t=s.encodedTokensColors)}const i=this.themeData.colors["editor.foreground"],n=this.themeData.colors["editor.background"];if(i||n){const s={token:""};i&&(s.foreground=i),n&&(s.background=n),e.push(s)}e=e.concat(this.themeData.rules),this.themeData.encodedTokensColors&&(t=this.themeData.encodedTokensColors),this._tokenTheme=X9.createFromRawTokenTheme(e,t)}return this._tokenTheme}getTokenStyleMetadata(e,t,i){const s=this.tokenTheme._match([e].concat(t).join(".")).metadata,r=sr.getForeground(s),a=sr.getFontStyle(s);return{foreground:r,italic:!!(a&1),bold:!!(a&2),underline:!!(a&4),strikethrough:!!(a&8)}}}function z1(o){return o===ec||o===ap||o===Kf||o===jf}function XD(o){switch(o){case ec:return rte;case ap:return ate;case Kf:return lte;case jf:return cte}}function Jb(o){const e=XD(o);return new s8(o,e)}class mte extends z{constructor(){super(),this._onColorThemeChange=this._register(new A),this.onDidColorThemeChange=this._onColorThemeChange.event,this._onProductIconThemeChange=this._register(new A),this.onDidProductIconThemeChange=this._onProductIconThemeChange.event,this._environment=Object.create(null),this._builtInProductIconTheme=new i8,this._autoDetectHighContrast=!0,this._knownThemes=new Map,this._knownThemes.set(ec,Jb(ec)),this._knownThemes.set(ap,Jb(ap)),this._knownThemes.set(Kf,Jb(Kf)),this._knownThemes.set(jf,Jb(jf));const e=this._register(fte(this));this._codiconCSS=e.getCSS(),this._themeCSS="",this._allCSS=`${this._codiconCSS} -${this._themeCSS}`,this._globalStyleElement=null,this._styleElements=[],this._colorMapOverride=null,this.setTheme(ec),this._onOSSchemeChanged(),this._register(e.onDidChange(()=>{this._codiconCSS=e.getCSS(),this._updateCSS()})),_F(_t,"(forced-colors: active)",()=>{this._onOSSchemeChanged()})}registerEditorContainer(e){return _C(e)?this._registerShadowDomContainer(e):this._registerRegularEditorContainer()}_registerRegularEditorContainer(){return this._globalStyleElement||(this._globalStyleElement=Vs(void 0,e=>{e.className="monaco-colors",e.textContent=this._allCSS}),this._styleElements.push(this._globalStyleElement)),z.None}_registerShadowDomContainer(e){const t=Vs(e,i=>{i.className="monaco-colors",i.textContent=this._allCSS});return this._styleElements.push(t),{dispose:()=>{for(let i=0;i{i.base===e&&i.notifyBaseUpdated()}),this._theme.themeName===e&&this.setTheme(e)}getColorTheme(){return this._theme}setColorMapOverride(e){this._colorMapOverride=e,this._updateThemeOrColorMap()}setTheme(e){let t;this._knownThemes.has(e)?t=this._knownThemes.get(e):t=this._knownThemes.get(ec),this._updateActualTheme(t)}_updateActualTheme(e){!e||this._theme===e||(this._theme=e,this._updateThemeOrColorMap())}_onOSSchemeChanged(){if(this._autoDetectHighContrast){const e=_t.matchMedia("(forced-colors: active)").matches;if(e!==mc(this._theme.type)){let t;j0(this._theme.type)?t=e?Kf:ap:t=e?jf:ec,this._updateActualTheme(this._knownThemes.get(t))}}}setAutoDetectHighContrast(e){this._autoDetectHighContrast=e,this._onOSSchemeChanged()}_updateThemeOrColorMap(){const e=[],t={},i={addRule:r=>{t[r]||(e.push(r),t[r]=!0)}};gte.getThemingParticipants().forEach(r=>r(this._theme,i,this._environment));const n=[];for(const r of n8.getColors()){const a=this._theme.getColor(r.id,!0);a&&n.push(`${yT(r.id)}: ${a.toString()};`)}i.addRule(`.monaco-editor, .monaco-diff-editor, .monaco-component { ${n.join(` -`)} }`);const s=this._colorMapOverride||this._theme.tokenTheme.getColorMap();i.addRule(ote(s)),this._themeCSS=e.join(` -`),this._updateCSS(),si.setColorMap(s),this._onColorThemeChange.fire(this._theme)}_updateCSS(){this._allCSS=`${this._codiconCSS} -${this._themeCSS}`,this._styleElements.forEach(e=>e.textContent=this._allCSS)}getFileIconTheme(){return{hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!1}}getProductIconTheme(){return this._builtInProductIconTheme}}const zo=He("themeService");var pte=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},XS=function(o,e){return function(t,i){e(t,i,o)}};let JD=class extends z{constructor(e,t,i){super(),this._contextKeyService=e,this._layoutService=t,this._configurationService=i,this._accessibilitySupport=0,this._onDidChangeScreenReaderOptimized=new A,this._onDidChangeReducedMotion=new A,this._onDidChangeLinkUnderline=new A,this._accessibilityModeEnabledContext=RG.bindTo(this._contextKeyService);const n=()=>this._accessibilityModeEnabledContext.set(this.isScreenReaderOptimized());this._register(this._configurationService.onDidChangeConfiguration(r=>{r.affectsConfiguration("editor.accessibilitySupport")&&(n(),this._onDidChangeScreenReaderOptimized.fire()),r.affectsConfiguration("workbench.reduceMotion")&&(this._configMotionReduced=this._configurationService.getValue("workbench.reduceMotion"),this._onDidChangeReducedMotion.fire())})),n(),this._register(this.onDidChangeScreenReaderOptimized(()=>n()));const s=_t.matchMedia("(prefers-reduced-motion: reduce)");this._systemMotionReduced=s.matches,this._configMotionReduced=this._configurationService.getValue("workbench.reduceMotion"),this._linkUnderlinesEnabled=this._configurationService.getValue("accessibility.underlineLinks"),this.initReducedMotionListeners(s),this.initLinkUnderlineListeners()}initReducedMotionListeners(e){this._register(U(e,"change",()=>{this._systemMotionReduced=e.matches,this._configMotionReduced==="auto"&&this._onDidChangeReducedMotion.fire()}));const t=()=>{const i=this.isMotionReduced();this._layoutService.mainContainer.classList.toggle("reduce-motion",i),this._layoutService.mainContainer.classList.toggle("enable-motion",!i)};t(),this._register(this.onDidChangeReducedMotion(()=>t()))}initLinkUnderlineListeners(){this._register(this._configurationService.onDidChangeConfiguration(t=>{if(t.affectsConfiguration("accessibility.underlineLinks")){const i=this._configurationService.getValue("accessibility.underlineLinks");this._linkUnderlinesEnabled=i,this._onDidChangeLinkUnderline.fire()}}));const e=()=>{const t=this._linkUnderlinesEnabled;this._layoutService.mainContainer.classList.toggle("underline-links",t)};e(),this._register(this.onDidChangeLinkUnderlines(()=>e()))}onDidChangeLinkUnderlines(e){return this._onDidChangeLinkUnderline.event(e)}get onDidChangeScreenReaderOptimized(){return this._onDidChangeScreenReaderOptimized.event}isScreenReaderOptimized(){const e=this._configurationService.getValue("editor.accessibilitySupport");return e==="on"||e==="auto"&&this._accessibilitySupport===2}get onDidChangeReducedMotion(){return this._onDidChangeReducedMotion.event}isMotionReduced(){const e=this._configMotionReduced;return e==="on"||e==="auto"&&this._systemMotionReduced}getAccessibilitySupport(){return this._accessibilitySupport}};JD=pte([XS(0,De),XS(1,jc),XS(2,lt)],JD);var vy=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},la=function(o,e){return function(t,i){e(t,i,o)}},zu,Om;let eI=class{constructor(e,t,i){this._commandService=e,this._keybindingService=t,this._hiddenStates=new tI(i)}createMenu(e,t,i){return new bv(e,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...i},this._commandService,this._keybindingService,t)}getMenuActions(e,t,i){const n=new bv(e,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...i},this._commandService,this._keybindingService,t),s=n.getActions(i);return n.dispose(),s}resetHiddenStates(e){this._hiddenStates.reset(e)}};eI=vy([la(0,hi),la(1,vt),la(2,du)],eI);var lh;let tI=(lh=class{constructor(e){this._storageService=e,this._disposables=new X,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._ignoreChangeEvent=!1,this._hiddenByDefaultCache=new Map;try{const t=e.get(zu._key,0,"{}");this._data=JSON.parse(t)}catch{this._data=Object.create(null)}this._disposables.add(e.onDidChangeValue(0,zu._key,this._disposables)(()=>{if(!this._ignoreChangeEvent)try{const t=e.get(zu._key,0,"{}");this._data=JSON.parse(t)}catch(t){console.log("FAILED to read storage after UPDATE",t)}this._onDidChange.fire()}))}dispose(){this._onDidChange.dispose(),this._disposables.dispose()}_isHiddenByDefault(e,t){return this._hiddenByDefaultCache.get(`${e.id}/${t}`)??!1}setDefaultState(e,t,i){this._hiddenByDefaultCache.set(`${e.id}/${t}`,i)}isHidden(e,t){const i=this._isHiddenByDefault(e,t),n=this._data[e.id]?.includes(t)??!1;return i?!n:n}updateHidden(e,t,i){this._isHiddenByDefault(e,t)&&(i=!i);const s=this._data[e.id];if(i)s?s.indexOf(t)<0&&s.push(t):this._data[e.id]=[t];else if(s){const r=s.indexOf(t);r>=0&&JB(s,r),s.length===0&&delete this._data[e.id]}this._persist()}reset(e){if(e===void 0)this._data=Object.create(null),this._persist();else{for(const{id:t}of e)this._data[t]&&delete this._data[t];this._persist()}}_persist(){try{this._ignoreChangeEvent=!0;const e=JSON.stringify(this._data);this._storageService.store(zu._key,e,0,0)}finally{this._ignoreChangeEvent=!1}}},zu=lh,lh._key="menu.hiddenCommands",lh);tI=zu=vy([la(0,du)],tI);class lp{constructor(e,t){this._id=e,this._collectContextKeysForSubmenus=t,this._menuGroups=[],this._allMenuIds=new Set,this._structureContextKeys=new Set,this._preconditionContextKeys=new Set,this._toggledContextKeys=new Set,this.refresh()}get allMenuIds(){return this._allMenuIds}get structureContextKeys(){return this._structureContextKeys}get preconditionContextKeys(){return this._preconditionContextKeys}get toggledContextKeys(){return this._toggledContextKeys}refresh(){this._menuGroups.length=0,this._allMenuIds.clear(),this._structureContextKeys.clear(),this._preconditionContextKeys.clear(),this._toggledContextKeys.clear();const e=this._sort(Eo.getMenuItems(this._id));let t;for(const i of e){const n=i.group||"";(!t||t[0]!==n)&&(t=[n,[]],this._menuGroups.push(t)),t[1].push(i),this._collectContextKeysAndSubmenuIds(i)}this._allMenuIds.add(this._id)}_sort(e){return e}_collectContextKeysAndSubmenuIds(e){if(lp._fillInKbExprKeys(e.when,this._structureContextKeys),Rf(e)){if(e.command.precondition&&lp._fillInKbExprKeys(e.command.precondition,this._preconditionContextKeys),e.command.toggled){const t=e.command.toggled.condition||e.command.toggled;lp._fillInKbExprKeys(t,this._toggledContextKeys)}}else this._collectContextKeysForSubmenus&&(Eo.getMenuItems(e.submenu).forEach(this._collectContextKeysAndSubmenuIds,this),this._allMenuIds.add(e.submenu))}static _fillInKbExprKeys(e,t){if(e)for(const i of e.keys())t.add(i)}}let iI=Om=class extends lp{constructor(e,t,i,n,s,r){super(e,i),this._hiddenStates=t,this._commandService=n,this._keybindingService=s,this._contextKeyService=r,this.refresh()}createActionGroups(e){const t=[];for(const i of this._menuGroups){const[n,s]=i;let r;for(const a of s)if(this._contextKeyService.contextMatchesRules(a.when)){const l=Rf(a);l&&this._hiddenStates.setDefaultState(this._id,a.command.id,!!a.isHiddenByDefault);const c=_te(this._id,l?a.command:a,this._hiddenStates);if(l){const d=o8(this._commandService,this._keybindingService,a.command.id,a.when);(r??=[]).push(new so(a.command,a.alt,e,c,d,this._contextKeyService,this._commandService))}else{const d=new Om(a.submenu,this._hiddenStates,this._collectContextKeysForSubmenus,this._commandService,this._keybindingService,this._contextKeyService).createActionGroups(e),h=Gi.join(...d.map(u=>u[1]));h.length>0&&(r??=[]).push(new Zm(a,c,h))}}r&&r.length>0&&t.push([n,r])}return t}_sort(e){return e.sort(Om._compareMenuItems)}static _compareMenuItems(e,t){const i=e.group,n=t.group;if(i!==n){if(i){if(!n)return-1}else return 1;if(i==="navigation")return-1;if(n==="navigation")return 1;const a=i.localeCompare(n);if(a!==0)return a}const s=e.order||0,r=t.order||0;return sr?1:Om._compareTitles(Rf(e)?e.command.title:e.title,Rf(t)?t.command.title:t.title)}static _compareTitles(e,t){const i=typeof e=="string"?e:e.original,n=typeof t=="string"?t:t.original;return i.localeCompare(n)}};iI=Om=vy([la(3,hi),la(4,vt),la(5,De)],iI);let bv=class{constructor(e,t,i,n,s,r){this._disposables=new X,this._menuInfo=new iI(e,t,i.emitEventsForSubmenuChanges,n,s,r);const a=new ci(()=>{this._menuInfo.refresh(),this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!0,isToggleChange:!0})},i.eventDebounceDelay);this._disposables.add(a),this._disposables.add(Eo.onDidChangeMenu(h=>{for(const u of this._menuInfo.allMenuIds)if(h.has(u)){a.schedule();break}}));const l=this._disposables.add(new X),c=h=>{let u=!1,f=!1,g=!1;for(const p of h)if(u=u||p.isStructuralChange,f=f||p.isEnablementChange,g=g||p.isToggleChange,u&&f&&g)break;return{menu:this,isStructuralChange:u,isEnablementChange:f,isToggleChange:g}},d=()=>{l.add(r.onDidChangeContext(h=>{const u=h.affectsSome(this._menuInfo.structureContextKeys),f=h.affectsSome(this._menuInfo.preconditionContextKeys),g=h.affectsSome(this._menuInfo.toggledContextKeys);(u||f||g)&&this._onDidChange.fire({menu:this,isStructuralChange:u,isEnablementChange:f,isToggleChange:g})})),l.add(t.onDidChange(h=>{this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!1,isToggleChange:!1})}))};this._onDidChange=new Y5({onWillAddFirstListener:d,onDidRemoveLastListener:l.clear.bind(l),delay:i.eventDebounceDelay,merge:c}),this.onDidChange=this._onDidChange.event}getActions(e){return this._menuInfo.createActionGroups(e)}dispose(){this._disposables.dispose(),this._onDidChange.dispose()}};bv=vy([la(3,hi),la(4,vt),la(5,De)],bv);function _te(o,e,t){const i=hz(e)?e.submenu.id:e.id,n=typeof e.title=="string"?e.title:e.title.value,s=Mf({id:`hide/${o.id}/${i}`,label:m("hide.label","Hide '{0}'",n),run(){t.updateHidden(o,i,!0)}}),r=Mf({id:`toggle/${o.id}/${i}`,label:n,get checked(){return!t.isHidden(o,i)},run(){t.updateHidden(o,i,!!this.checked)}});return{hide:s,toggle:r,get isHidden(){return!r.checked}}}function o8(o,e,t,i=void 0,n=!0){return Mf({id:`configureKeybinding/${t}`,label:m("configure keybinding","Configure Keybinding"),enabled:n,run(){const r=!!!e.lookupKeybinding(t)&&i?i.serialize():void 0;o.executeCommand("workbench.action.openGlobalKeybindings",`@command:${t}`+(r?` +when:${r}`:""))}})}var bte=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},hO=function(o,e){return function(t,i){e(t,i,o)}},nI;const uO="application/vnd.code.resources";var ch;let sI=(ch=class extends z{constructor(e,t){super(),this.layoutService=e,this.logService=t,this.mapTextToType=new Map,this.findText="",this.resources=[],this.resourcesStateHash=void 0,(Ac||bF)&&this.installWebKitWriteTextWorkaround(),this._register(J.runAndSubscribe(T0,({window:i,disposables:n})=>{n.add(U(i.document,"copy",()=>this.clearResourcesState()))},{window:_t,disposables:this._store}))}installWebKitWriteTextWorkaround(){const e=()=>{const t=new qN;this.webKitPendingClipboardWritePromise&&!this.webKitPendingClipboardWritePromise.isSettled&&this.webKitPendingClipboardWritePromise.cancel(),this.webKitPendingClipboardWritePromise=t,km().navigator.clipboard.write([new ClipboardItem({"text/plain":t.p})]).catch(async i=>{(!(i instanceof Error)||i.name!=="NotAllowedError"||!t.isRejected)&&this.logService.error(i)})};this._register(J.runAndSubscribe(this.layoutService.onDidAddContainer,({container:t,disposables:i})=>{i.add(U(t,"click",e)),i.add(U(t,"keydown",e))},{container:this.layoutService.mainContainer,disposables:this._store}))}async writeText(e,t){if(this.clearResourcesState(),t){this.mapTextToType.set(t,e);return}if(this.webKitPendingClipboardWritePromise)return this.webKitPendingClipboardWritePromise.complete(e);try{return await km().navigator.clipboard.writeText(e)}catch(i){console.error(i)}this.fallbackWriteText(e)}fallbackWriteText(e){const t=JN(),i=t.activeElement,n=t.body.appendChild(ce("textarea",{"aria-hidden":!0}));n.style.height="1px",n.style.width="1px",n.style.position="absolute",n.value=e,n.focus(),n.select(),t.execCommand("copy"),Ei(i)&&i.focus(),n.remove()}async readText(e){if(e)return this.mapTextToType.get(e)||"";try{return await km().navigator.clipboard.readText()}catch(t){console.error(t)}return""}async readFindText(){return this.findText}async writeFindText(e){this.findText=e}async readResources(){try{const t=await km().navigator.clipboard.read();for(const i of t)if(i.types.includes(`web ${uO}`)){const n=await i.getType(`web ${uO}`);return JSON.parse(await n.text()).map(r=>ve.from(r))}}catch{}const e=await this.computeResourcesStateHash();return this.resourcesStateHash!==e&&this.clearResourcesState(),this.resources}async computeResourcesStateHash(){if(this.resources.length===0)return;const e=await this.readText();return ZN(e.substring(0,nI.MAX_RESOURCE_STATE_SOURCE_LENGTH))}clearInternalState(){this.clearResourcesState()}clearResourcesState(){this.resources=[],this.resourcesStateHash=void 0}},nI=ch,ch.MAX_RESOURCE_STATE_SOURCE_LENGTH=1e3,ch);sI=nI=bte([hO(0,jc),hO(1,gs)],sI);const wy=He("clipboardService");var Cte=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vte=function(o,e){return function(t,i){e(t,i,o)}};const cp="data-keybinding-context";let A2=class{constructor(e,t){this._id=e,this._parent=t,this._value=Object.create(null),this._value._contextId=e}get value(){return{...this._value}}setValue(e,t){return this._value[e]!==t?(this._value[e]=t,!0):!1}removeValue(e){return e in this._value?(delete this._value[e],!0):!1}getValue(e){const t=this._value[e];return typeof t>"u"&&this._parent?this._parent.getValue(e):t}};const jw=class jw extends A2{constructor(){super(-1,null)}setValue(e,t){return!1}removeValue(e){return!1}getValue(e){}};jw.INSTANCE=new jw;let Lg=jw;const Mp=class Mp extends A2{constructor(e,t,i){super(e,null),this._configurationService=t,this._values=Bf.forConfigKeys(),this._listener=this._configurationService.onDidChangeConfiguration(n=>{if(n.source===7){const s=Array.from(this._values,([r])=>r);this._values.clear(),i.fire(new gO(s))}else{const s=[];for(const r of n.affectedKeys){const a=`config.${r}`,l=this._values.findSuperstr(a);l!==void 0&&(s.push(...st.map(l,([c])=>c)),this._values.deleteSuperstr(a)),this._values.has(a)&&(s.push(a),this._values.delete(a))}i.fire(new gO(s))}})}dispose(){this._listener.dispose()}getValue(e){if(e.indexOf(Mp._keyPrefix)!==0)return super.getValue(e);if(this._values.has(e))return this._values.get(e);const t=e.substr(Mp._keyPrefix.length),i=this._configurationService.getValue(t);let n;switch(typeof i){case"number":case"boolean":case"string":n=i;break;default:Array.isArray(i)?n=JSON.stringify(i):n=i}return this._values.set(e,n),n}setValue(e,t){return super.setValue(e,t)}removeValue(e){return super.removeValue(e)}};Mp._keyPrefix="config.";let oI=Mp;class wte{constructor(e,t,i){this._service=e,this._key=t,this._defaultValue=i,this.reset()}set(e){this._service.setContext(this._key,e)}reset(){typeof this._defaultValue>"u"?this._service.removeContext(this._key):this._service.setContext(this._key,this._defaultValue)}get(){return this._service.getContextKeyValue(this._key)}}class fO{constructor(e){this.key=e}affectsSome(e){return e.has(this.key)}allKeysContainedIn(e){return this.affectsSome(e)}}class gO{constructor(e){this.keys=e}affectsSome(e){for(const t of this.keys)if(e.has(t))return!0;return!1}allKeysContainedIn(e){return this.keys.every(t=>e.has(t))}}class yte{constructor(e){this.events=e}affectsSome(e){for(const t of this.events)if(t.affectsSome(e))return!0;return!1}allKeysContainedIn(e){return this.events.every(t=>t.allKeysContainedIn(e))}}function Ste(o,e){return o.allKeysContainedIn(new Set(Object.keys(e)))}class r8 extends z{constructor(e){super(),this._onDidChangeContext=this._register(new Nh({merge:t=>new yte(t)})),this.onDidChangeContext=this._onDidChangeContext.event,this._isDisposed=!1,this._myContextId=e}createKey(e,t){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new wte(this,e,t)}bufferChangeEvents(e){this._onDidChangeContext.pause();try{e()}finally{this._onDidChangeContext.resume()}}createScoped(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new Lte(this,e)}contextMatchesRules(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");const t=this.getContextValuesContainer(this._myContextId);return e?e.evaluate(t):!0}getContextKeyValue(e){if(!this._isDisposed)return this.getContextValuesContainer(this._myContextId).getValue(e)}setContext(e,t){if(this._isDisposed)return;const i=this.getContextValuesContainer(this._myContextId);i&&i.setValue(e,t)&&this._onDidChangeContext.fire(new fO(e))}removeContext(e){this._isDisposed||this.getContextValuesContainer(this._myContextId).removeValue(e)&&this._onDidChangeContext.fire(new fO(e))}getContext(e){return this._isDisposed?Lg.INSTANCE:this.getContextValuesContainer(xte(e))}dispose(){super.dispose(),this._isDisposed=!0}}let rI=class extends r8{constructor(e){super(0),this._contexts=new Map,this._lastContextId=0;const t=this._register(new oI(this._myContextId,e,this._onDidChangeContext));this._contexts.set(this._myContextId,t)}getContextValuesContainer(e){return this._isDisposed?Lg.INSTANCE:this._contexts.get(e)||Lg.INSTANCE}createChildContext(e=this._myContextId){if(this._isDisposed)throw new Error("ContextKeyService has been disposed");const t=++this._lastContextId;return this._contexts.set(t,new A2(t,this.getContextValuesContainer(e))),t}disposeContext(e){this._isDisposed||this._contexts.delete(e)}};rI=Cte([vte(0,lt)],rI);class Lte extends r8{constructor(e,t){if(super(e.createChildContext()),this._parentChangeListener=this._register(new Dn),this._parent=e,this._updateParentChangeListener(),this._domNode=t,this._domNode.hasAttribute(cp)){let i="";this._domNode.classList&&(i=Array.from(this._domNode.classList.values()).join(", ")),console.error(`Element already has context attribute${i?": "+i:""}`)}this._domNode.setAttribute(cp,String(this._myContextId))}_updateParentChangeListener(){this._parentChangeListener.value=this._parent.onDidChangeContext(e=>{const i=this._parent.getContextValuesContainer(this._myContextId).value;Ste(e,i)||this._onDidChangeContext.fire(e)})}dispose(){this._isDisposed||(this._parent.disposeContext(this._myContextId),this._domNode.removeAttribute(cp),super.dispose())}getContextValuesContainer(e){return this._isDisposed?Lg.INSTANCE:this._parent.getContextValuesContainer(e)}createChildContext(e=this._myContextId){if(this._isDisposed)throw new Error("ScopedContextKeyService has been disposed");return this._parent.createChildContext(e)}disposeContext(e){this._isDisposed||this._parent.disposeContext(e)}}function xte(o){for(;o;){if(o.hasAttribute(cp)){const e=o.getAttribute(cp);return e?parseInt(e,10):NaN}o=o.parentElement}return 0}function kte(o,e,t){o.get(De).createKey(String(e),Dte(t))}function Dte(o){return O5(o,e=>{if(typeof e=="object"&&e.$mid===1)return ve.revive(e).toString();if(e instanceof ve)return e.toString()})}bt.registerCommand("_setContext",kte);bt.registerCommand({id:"getContextKeyInfo",handler(){return[...le.all()].sort((o,e)=>o.key.localeCompare(e.key))},metadata:{description:m("getContextKeyInfo","A command that returns information about context keys"),args:[]}});bt.registerCommand("_generateContextKeyInfo",function(){const o=[],e=new Set;for(const t of le.all())e.has(t.key)||(e.add(t.key),o.push(t));o.sort((t,i)=>t.key.localeCompare(i.key)),console.log(JSON.stringify(o,void 0,2))});let Ite=class{constructor(e,t){this.key=e,this.data=t,this.incoming=new Map,this.outgoing=new Map}};class mO{constructor(e){this._hashFn=e,this._nodes=new Map}roots(){const e=[];for(const t of this._nodes.values())t.outgoing.size===0&&e.push(t);return e}insertEdge(e,t){const i=this.lookupOrInsertNode(e),n=this.lookupOrInsertNode(t);i.outgoing.set(n.key,n),n.incoming.set(i.key,i)}removeNode(e){const t=this._hashFn(e);this._nodes.delete(t);for(const i of this._nodes.values())i.outgoing.delete(t),i.incoming.delete(t)}lookupOrInsertNode(e){const t=this._hashFn(e);let i=this._nodes.get(t);return i||(i=new Ite(t,e),this._nodes.set(t,i)),i}isEmpty(){return this._nodes.size===0}toString(){const e=[];for(const[t,i]of this._nodes)e.push(`${t} - (-> incoming)[${[...i.incoming.keys()].join(", ")}] - (outgoing ->)[${[...i.outgoing.keys()].join(",")}] -`);return e.join(` -`)}findCycleSlow(){for(const[e,t]of this._nodes){const i=new Set([e]),n=this._findCycle(t,i);if(n)return n}}_findCycle(e,t){for(const[i,n]of e.outgoing){if(t.has(i))return[...t,i].join(" -> ");t.add(i);const s=this._findCycle(n,t);if(s)return s;t.delete(i)}}}class jg{constructor(...e){this._entries=new Map;for(const[t,i]of e)this.set(t,i)}set(e,t){const i=this._entries.get(e);return this._entries.set(e,t),i}get(e){return this._entries.get(e)}}const Ete=!1;class pO extends Error{constructor(e){super("cyclic dependency between services"),this.message=e.findCycleSlow()??`UNABLE to detect cycle, dumping graph: -${e.toString()}`}}class Cv{constructor(e=new jg,t=!1,i,n=Ete){this._services=e,this._strict=t,this._parent=i,this._enableTracing=n,this._isDisposed=!1,this._servicesToMaybeDispose=new Set,this._children=new Set,this._activeInstantiations=new Set,this._services.set(ke,this),this._globalGraph=n?i?._globalGraph??new mO(s=>s):void 0}dispose(){if(!this._isDisposed){this._isDisposed=!0,xt(this._children),this._children.clear();for(const e of this._servicesToMaybeDispose)MN(e)&&e.dispose();this._servicesToMaybeDispose.clear()}}_throwIfDisposed(){if(this._isDisposed)throw new Error("InstantiationService has been disposed")}createChild(e,t){this._throwIfDisposed();const i=this,n=new class extends Cv{dispose(){i._children.delete(n),super.dispose()}}(e,this._strict,this,this._enableTracing);return this._children.add(n),t?.add(n),n}invokeFunction(e,...t){this._throwIfDisposed();const i=dp.traceInvocation(this._enableTracing,e);let n=!1;try{return e({get:r=>{if(n)throw TN("service accessor is only valid during the invocation of its target method");const a=this._getOrCreateServiceInstance(r,i);if(!a)throw new Error(`[invokeFunction] unknown service '${r}'`);return a}},...t)}finally{n=!0,i.stop()}}createInstance(e,...t){this._throwIfDisposed();let i,n;return e instanceof Gr?(i=dp.traceCreation(this._enableTracing,e.ctor),n=this._createInstance(e.ctor,e.staticArguments.concat(t),i)):(i=dp.traceCreation(this._enableTracing,e),n=this._createInstance(e,t,i)),i.stop(),n}_createInstance(e,t=[],i){const n=fr.getServiceDependencies(e).sort((a,l)=>a.index-l.index),s=[];for(const a of n){const l=this._getOrCreateServiceInstance(a.id,i);l||this._throwIfStrict(`[createInstance] ${e.name} depends on UNKNOWN service ${a.id}.`,!1),s.push(l)}const r=n.length>0?n[0].index:t.length;if(t.length!==r){console.trace(`[createInstance] First service dependency of ${e.name} at position ${r+1} conflicts with ${t.length} static arguments`);const a=r-t.length;a>0?t=t.concat(new Array(a)):t=t.slice(0,r)}return Reflect.construct(e,t.concat(s))}_setCreatedServiceInstance(e,t){if(this._services.get(e)instanceof Gr)this._services.set(e,t);else if(this._parent)this._parent._setCreatedServiceInstance(e,t);else throw new Error("illegalState - setting UNKNOWN service instance")}_getServiceInstanceOrDescriptor(e){const t=this._services.get(e);return!t&&this._parent?this._parent._getServiceInstanceOrDescriptor(e):t}_getOrCreateServiceInstance(e,t){this._globalGraph&&this._globalGraphImplicitDependency&&this._globalGraph.insertEdge(this._globalGraphImplicitDependency,String(e));const i=this._getServiceInstanceOrDescriptor(e);return i instanceof Gr?this._safeCreateAndCacheServiceInstance(e,i,t.branch(e,!0)):(t.branch(e,!1),i)}_safeCreateAndCacheServiceInstance(e,t,i){if(this._activeInstantiations.has(e))throw new Error(`illegal state - RECURSIVELY instantiating service '${e}'`);this._activeInstantiations.add(e);try{return this._createAndCacheServiceInstance(e,t,i)}finally{this._activeInstantiations.delete(e)}}_createAndCacheServiceInstance(e,t,i){const n=new mO(l=>l.id.toString());let s=0;const r=[{id:e,desc:t,_trace:i}],a=new Set;for(;r.length;){const l=r.pop();if(!a.has(String(l.id))){if(a.add(String(l.id)),n.lookupOrInsertNode(l),s++>1e3)throw new pO(n);for(const c of fr.getServiceDependencies(l.desc.ctor)){const d=this._getServiceInstanceOrDescriptor(c.id);if(d||this._throwIfStrict(`[createInstance] ${e} depends on ${c.id} which is NOT registered.`,!0),this._globalGraph?.insertEdge(String(l.id),String(c.id)),d instanceof Gr){const h={id:c.id,desc:d,_trace:l._trace.branch(c.id,!0)};n.insertEdge(l,h),r.push(h)}}}}for(;;){const l=n.roots();if(l.length===0){if(!n.isEmpty())throw new pO(n);break}for(const{data:c}of l){if(this._getServiceInstanceOrDescriptor(c.id)instanceof Gr){const h=this._createServiceInstanceWithOwner(c.id,c.desc.ctor,c.desc.staticArguments,c.desc.supportsDelayedInstantiation,c._trace);this._setCreatedServiceInstance(c.id,h)}n.removeNode(c)}}return this._getServiceInstanceOrDescriptor(e)}_createServiceInstanceWithOwner(e,t,i=[],n,s){if(this._services.get(e)instanceof Gr)return this._createServiceInstance(e,t,i,n,s,this._servicesToMaybeDispose);if(this._parent)return this._parent._createServiceInstanceWithOwner(e,t,i,n,s);throw new Error(`illegalState - creating UNKNOWN service instance ${t.name}`)}_createServiceInstance(e,t,i=[],n,s,r){if(n){const a=new Cv(void 0,this._strict,this,this._enableTracing);a._globalGraphImplicitDependency=String(e);const l=new Map,c=new PH(()=>{const d=a._createInstance(t,i,s);for(const[h,u]of l){const f=d[h];if(typeof f=="function")for(const g of u)g.disposable=f.apply(d,g.listener)}return l.clear(),r.add(d),d});return new Proxy(Object.create(null),{get(d,h){if(!c.isInitialized&&typeof h=="string"&&(h.startsWith("onDid")||h.startsWith("onWill"))){let g=l.get(h);return g||(g=new yn,l.set(h,g)),(_,b,C)=>{if(c.isInitialized)return c.value[h](_,b,C);{const w={listener:[_,b,C],disposable:void 0},v=g.push(w);return _e(()=>{v(),w.disposable?.dispose()})}}}if(h in d)return d[h];const u=c.value;let f=u[h];return typeof f!="function"||(f=f.bind(u),d[h]=f),f},set(d,h,u){return c.value[h]=u,!0},getPrototypeOf(d){return t.prototype}})}else{const a=this._createInstance(t,i,s);return r.add(a),a}}_throwIfStrict(e,t){if(t&&console.warn(e),this._strict)throw new Error(e)}}const ws=class ws{static traceInvocation(e,t){return e?new ws(2,t.name||new Error().stack.split(` -`).slice(3,4).join(` -`)):ws._None}static traceCreation(e,t){return e?new ws(1,t.name):ws._None}constructor(e,t){this.type=e,this.name=t,this._start=Date.now(),this._dep=[]}branch(e,t){const i=new ws(3,e.toString());return this._dep.push([e,t,i]),i}stop(){const e=Date.now()-this._start;ws._totals+=e;let t=!1;function i(s,r){const a=[],l=new Array(s+1).join(" ");for(const[c,d,h]of r._dep)if(d&&h){t=!0,a.push(`${l}CREATES -> ${c}`);const u=i(s+1,h);u&&a.push(u)}else a.push(`${l}uses -> ${c}`);return a.join(` -`)}const n=[`${this.type===1?"CREATE":"CALL"} ${this.name}`,`${i(1,this)}`,`DONE, took ${e.toFixed(2)}ms (grand total ${ws._totals.toFixed(2)}ms)`];(e>2||t)&&ws.all.add(n.join(` -`))}};ws.all=new Set,ws._None=new class extends ws{constructor(){super(0,null)}stop(){}branch(){return this}},ws._totals=0;let dp=ws;const Nte=new Set([Te.inMemory,Te.vscodeSourceControl,Te.walkThrough,Te.walkThroughSnippet,Te.vscodeChatCodeBlock]);class Tte{constructor(){this._byResource=new cs,this._byOwner=new Map}set(e,t,i){let n=this._byResource.get(e);n||(n=new Map,this._byResource.set(e,n)),n.set(t,i);let s=this._byOwner.get(t);s||(s=new cs,this._byOwner.set(t,s)),s.set(e,i)}get(e,t){return this._byResource.get(e)?.get(t)}delete(e,t){let i=!1,n=!1;const s=this._byResource.get(e);s&&(i=s.delete(t));const r=this._byOwner.get(t);if(r&&(n=r.delete(e)),i!==n)throw new Error("illegal state");return i&&n}values(e){return typeof e=="string"?this._byOwner.get(e)?.values()??st.empty():ve.isUri(e)?this._byResource.get(e)?.values()??st.empty():st.map(st.concat(...this._byOwner.values()),t=>t[1])}}class Mte{constructor(e){this.errors=0,this.infos=0,this.warnings=0,this.unknowns=0,this._data=new cs,this._service=e,this._subscription=e.onMarkerChanged(this._update,this)}dispose(){this._subscription.dispose()}_update(e){for(const t of e){const i=this._data.get(t);i&&this._substract(i);const n=this._resourceStats(t);this._add(n),this._data.set(t,n)}}_resourceStats(e){const t={errors:0,warnings:0,infos:0,unknowns:0};if(Nte.has(e.scheme))return t;for(const{severity:i}of this._service.read({resource:e}))i===Vt.Error?t.errors+=1:i===Vt.Warning?t.warnings+=1:i===Vt.Info?t.infos+=1:t.unknowns+=1;return t}_substract(e){this.errors-=e.errors,this.warnings-=e.warnings,this.infos-=e.infos,this.unknowns-=e.unknowns}_add(e){this.errors+=e.errors,this.warnings+=e.warnings,this.infos+=e.infos,this.unknowns+=e.unknowns}}class Gl{constructor(){this._onMarkerChanged=new Y5({delay:0,merge:Gl._merge}),this.onMarkerChanged=this._onMarkerChanged.event,this._data=new Tte,this._stats=new Mte(this)}dispose(){this._stats.dispose(),this._onMarkerChanged.dispose()}remove(e,t){for(const i of t||[])this.changeOne(e,i,[])}changeOne(e,t,i){if(N5(i))this._data.delete(t,e)&&this._onMarkerChanged.fire([t]);else{const n=[];for(const s of i){const r=Gl._toMarker(e,t,s);r&&n.push(r)}this._data.set(t,e,n),this._onMarkerChanged.fire([t])}}static _toMarker(e,t,i){let{code:n,severity:s,message:r,source:a,startLineNumber:l,startColumn:c,endLineNumber:d,endColumn:h,relatedInformation:u,tags:f}=i;if(r)return l=l>0?l:1,c=c>0?c:1,d=d>=l?d:l,h=h>0?h:c,{resource:t,owner:e,code:n,severity:s,message:r,source:a,startLineNumber:l,startColumn:c,endLineNumber:d,endColumn:h,relatedInformation:u,tags:f}}changeAll(e,t){const i=[],n=this._data.values(e);if(n)for(const s of n){const r=st.first(s);r&&(i.push(r.resource),this._data.delete(r.resource,e))}if(Ps(t)){const s=new cs;for(const{resource:r,marker:a}of t){const l=Gl._toMarker(e,r,a);if(!l)continue;const c=s.get(r);c?c.push(l):(s.set(r,[l]),i.push(r))}for(const[r,a]of s)this._data.set(r,e,a)}i.length>0&&this._onMarkerChanged.fire(i)}read(e=Object.create(null)){let{owner:t,resource:i,severities:n,take:s}=e;if((!s||s<0)&&(s=-1),t&&i){const r=this._data.get(i,t);if(r){const a=[];for(const l of r)if(Gl._accept(l,n)){const c=a.push(l);if(s>0&&c===s)break}return a}else return[]}else if(!t&&!i){const r=[];for(const a of this._data.values())for(const l of a)if(Gl._accept(l,n)){const c=r.push(l);if(s>0&&c===s)return r}return r}else{const r=this._data.values(i??t),a=[];for(const l of r)for(const c of l)if(Gl._accept(c,n)){const d=a.push(c);if(s>0&&d===s)return a}return a}}static _accept(e,t){return t===void 0||(t&e.severity)===e.severity}static _merge(e){const t=new cs;for(const i of e)for(const n of i)t.set(n,!0);return Array.from(t.keys())}}class Rte extends z{get configurationModel(){return this._configurationModel}constructor(e){super(),this.logService=e,this._configurationModel=Pi.createEmptyModel(this.logService)}reload(){return this.resetConfigurationModel(),this.configurationModel}getConfigurationDefaultOverrides(){return{}}resetConfigurationModel(){this._configurationModel=Pi.createEmptyModel(this.logService);const e=Bi.as(su.Configuration).getConfigurationProperties();this.updateConfigurationModel(Object.keys(e),e)}updateConfigurationModel(e,t){const i=this.getConfigurationDefaultOverrides();for(const n of e){const s=i[n],r=t[n];s!==void 0?this._configurationModel.setValue(n,s):r?this._configurationModel.setValue(n,r.default):this._configurationModel.removeValue(n)}}}const rb=He("accessibilitySignalService"),et=class et{static register(e){return new et(e.fileName)}constructor(e){this.fileName=e}};et.error=et.register({fileName:"error.mp3"}),et.warning=et.register({fileName:"warning.mp3"}),et.success=et.register({fileName:"success.mp3"}),et.foldedArea=et.register({fileName:"foldedAreas.mp3"}),et.break=et.register({fileName:"break.mp3"}),et.quickFixes=et.register({fileName:"quickFixes.mp3"}),et.taskCompleted=et.register({fileName:"taskCompleted.mp3"}),et.taskFailed=et.register({fileName:"taskFailed.mp3"}),et.terminalBell=et.register({fileName:"terminalBell.mp3"}),et.diffLineInserted=et.register({fileName:"diffLineInserted.mp3"}),et.diffLineDeleted=et.register({fileName:"diffLineDeleted.mp3"}),et.diffLineModified=et.register({fileName:"diffLineModified.mp3"}),et.chatRequestSent=et.register({fileName:"chatRequestSent.mp3"}),et.chatResponseReceived1=et.register({fileName:"chatResponseReceived1.mp3"}),et.chatResponseReceived2=et.register({fileName:"chatResponseReceived2.mp3"}),et.chatResponseReceived3=et.register({fileName:"chatResponseReceived3.mp3"}),et.chatResponseReceived4=et.register({fileName:"chatResponseReceived4.mp3"}),et.clear=et.register({fileName:"clear.mp3"}),et.save=et.register({fileName:"save.mp3"}),et.format=et.register({fileName:"format.mp3"}),et.voiceRecordingStarted=et.register({fileName:"voiceRecordingStarted.mp3"}),et.voiceRecordingStopped=et.register({fileName:"voiceRecordingStopped.mp3"}),et.progress=et.register({fileName:"progress.mp3"});let At=et;class Ate{constructor(e){this.randomOneOf=e}}const Me=class Me{constructor(e,t,i,n,s,r){this.sound=e,this.name=t,this.legacySoundSettingsKey=i,this.settingsKey=n,this.legacyAnnouncementSettingsKey=s,this.announcementMessage=r}static register(e){const t=new Ate("randomOneOf"in e.sound?e.sound.randomOneOf:[e.sound]),i=new Me(t,e.name,e.legacySoundSettingsKey,e.settingsKey,e.legacyAnnouncementSettingsKey,e.announcementMessage);return Me._signals.add(i),i}};Me._signals=new Set,Me.errorAtPosition=Me.register({name:m("accessibilitySignals.positionHasError.name","Error at Position"),sound:At.error,announcementMessage:m("accessibility.signals.positionHasError","Error"),settingsKey:"accessibility.signals.positionHasError",delaySettingsKey:"accessibility.signalOptions.delays.errorAtPosition"}),Me.warningAtPosition=Me.register({name:m("accessibilitySignals.positionHasWarning.name","Warning at Position"),sound:At.warning,announcementMessage:m("accessibility.signals.positionHasWarning","Warning"),settingsKey:"accessibility.signals.positionHasWarning",delaySettingsKey:"accessibility.signalOptions.delays.warningAtPosition"}),Me.errorOnLine=Me.register({name:m("accessibilitySignals.lineHasError.name","Error on Line"),sound:At.error,legacySoundSettingsKey:"audioCues.lineHasError",legacyAnnouncementSettingsKey:"accessibility.alert.error",announcementMessage:m("accessibility.signals.lineHasError","Error on Line"),settingsKey:"accessibility.signals.lineHasError"}),Me.warningOnLine=Me.register({name:m("accessibilitySignals.lineHasWarning.name","Warning on Line"),sound:At.warning,legacySoundSettingsKey:"audioCues.lineHasWarning",legacyAnnouncementSettingsKey:"accessibility.alert.warning",announcementMessage:m("accessibility.signals.lineHasWarning","Warning on Line"),settingsKey:"accessibility.signals.lineHasWarning"}),Me.foldedArea=Me.register({name:m("accessibilitySignals.lineHasFoldedArea.name","Folded Area on Line"),sound:At.foldedArea,legacySoundSettingsKey:"audioCues.lineHasFoldedArea",legacyAnnouncementSettingsKey:"accessibility.alert.foldedArea",announcementMessage:m("accessibility.signals.lineHasFoldedArea","Folded"),settingsKey:"accessibility.signals.lineHasFoldedArea"}),Me.break=Me.register({name:m("accessibilitySignals.lineHasBreakpoint.name","Breakpoint on Line"),sound:At.break,legacySoundSettingsKey:"audioCues.lineHasBreakpoint",legacyAnnouncementSettingsKey:"accessibility.alert.breakpoint",announcementMessage:m("accessibility.signals.lineHasBreakpoint","Breakpoint"),settingsKey:"accessibility.signals.lineHasBreakpoint"}),Me.inlineSuggestion=Me.register({name:m("accessibilitySignals.lineHasInlineSuggestion.name","Inline Suggestion on Line"),sound:At.quickFixes,legacySoundSettingsKey:"audioCues.lineHasInlineSuggestion",settingsKey:"accessibility.signals.lineHasInlineSuggestion"}),Me.terminalQuickFix=Me.register({name:m("accessibilitySignals.terminalQuickFix.name","Terminal Quick Fix"),sound:At.quickFixes,legacySoundSettingsKey:"audioCues.terminalQuickFix",legacyAnnouncementSettingsKey:"accessibility.alert.terminalQuickFix",announcementMessage:m("accessibility.signals.terminalQuickFix","Quick Fix"),settingsKey:"accessibility.signals.terminalQuickFix"}),Me.onDebugBreak=Me.register({name:m("accessibilitySignals.onDebugBreak.name","Debugger Stopped on Breakpoint"),sound:At.break,legacySoundSettingsKey:"audioCues.onDebugBreak",legacyAnnouncementSettingsKey:"accessibility.alert.onDebugBreak",announcementMessage:m("accessibility.signals.onDebugBreak","Breakpoint"),settingsKey:"accessibility.signals.onDebugBreak"}),Me.noInlayHints=Me.register({name:m("accessibilitySignals.noInlayHints","No Inlay Hints on Line"),sound:At.error,legacySoundSettingsKey:"audioCues.noInlayHints",legacyAnnouncementSettingsKey:"accessibility.alert.noInlayHints",announcementMessage:m("accessibility.signals.noInlayHints","No Inlay Hints"),settingsKey:"accessibility.signals.noInlayHints"}),Me.taskCompleted=Me.register({name:m("accessibilitySignals.taskCompleted","Task Completed"),sound:At.taskCompleted,legacySoundSettingsKey:"audioCues.taskCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.taskCompleted",announcementMessage:m("accessibility.signals.taskCompleted","Task Completed"),settingsKey:"accessibility.signals.taskCompleted"}),Me.taskFailed=Me.register({name:m("accessibilitySignals.taskFailed","Task Failed"),sound:At.taskFailed,legacySoundSettingsKey:"audioCues.taskFailed",legacyAnnouncementSettingsKey:"accessibility.alert.taskFailed",announcementMessage:m("accessibility.signals.taskFailed","Task Failed"),settingsKey:"accessibility.signals.taskFailed"}),Me.terminalCommandFailed=Me.register({name:m("accessibilitySignals.terminalCommandFailed","Terminal Command Failed"),sound:At.error,legacySoundSettingsKey:"audioCues.terminalCommandFailed",legacyAnnouncementSettingsKey:"accessibility.alert.terminalCommandFailed",announcementMessage:m("accessibility.signals.terminalCommandFailed","Command Failed"),settingsKey:"accessibility.signals.terminalCommandFailed"}),Me.terminalCommandSucceeded=Me.register({name:m("accessibilitySignals.terminalCommandSucceeded","Terminal Command Succeeded"),sound:At.success,announcementMessage:m("accessibility.signals.terminalCommandSucceeded","Command Succeeded"),settingsKey:"accessibility.signals.terminalCommandSucceeded"}),Me.terminalBell=Me.register({name:m("accessibilitySignals.terminalBell","Terminal Bell"),sound:At.terminalBell,legacySoundSettingsKey:"audioCues.terminalBell",legacyAnnouncementSettingsKey:"accessibility.alert.terminalBell",announcementMessage:m("accessibility.signals.terminalBell","Terminal Bell"),settingsKey:"accessibility.signals.terminalBell"}),Me.notebookCellCompleted=Me.register({name:m("accessibilitySignals.notebookCellCompleted","Notebook Cell Completed"),sound:At.taskCompleted,legacySoundSettingsKey:"audioCues.notebookCellCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellCompleted",announcementMessage:m("accessibility.signals.notebookCellCompleted","Notebook Cell Completed"),settingsKey:"accessibility.signals.notebookCellCompleted"}),Me.notebookCellFailed=Me.register({name:m("accessibilitySignals.notebookCellFailed","Notebook Cell Failed"),sound:At.taskFailed,legacySoundSettingsKey:"audioCues.notebookCellFailed",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellFailed",announcementMessage:m("accessibility.signals.notebookCellFailed","Notebook Cell Failed"),settingsKey:"accessibility.signals.notebookCellFailed"}),Me.diffLineInserted=Me.register({name:m("accessibilitySignals.diffLineInserted","Diff Line Inserted"),sound:At.diffLineInserted,legacySoundSettingsKey:"audioCues.diffLineInserted",settingsKey:"accessibility.signals.diffLineInserted"}),Me.diffLineDeleted=Me.register({name:m("accessibilitySignals.diffLineDeleted","Diff Line Deleted"),sound:At.diffLineDeleted,legacySoundSettingsKey:"audioCues.diffLineDeleted",settingsKey:"accessibility.signals.diffLineDeleted"}),Me.diffLineModified=Me.register({name:m("accessibilitySignals.diffLineModified","Diff Line Modified"),sound:At.diffLineModified,legacySoundSettingsKey:"audioCues.diffLineModified",settingsKey:"accessibility.signals.diffLineModified"}),Me.chatRequestSent=Me.register({name:m("accessibilitySignals.chatRequestSent","Chat Request Sent"),sound:At.chatRequestSent,legacySoundSettingsKey:"audioCues.chatRequestSent",legacyAnnouncementSettingsKey:"accessibility.alert.chatRequestSent",announcementMessage:m("accessibility.signals.chatRequestSent","Chat Request Sent"),settingsKey:"accessibility.signals.chatRequestSent"}),Me.chatResponseReceived=Me.register({name:m("accessibilitySignals.chatResponseReceived","Chat Response Received"),legacySoundSettingsKey:"audioCues.chatResponseReceived",sound:{randomOneOf:[At.chatResponseReceived1,At.chatResponseReceived2,At.chatResponseReceived3,At.chatResponseReceived4]},settingsKey:"accessibility.signals.chatResponseReceived"}),Me.progress=Me.register({name:m("accessibilitySignals.progress","Progress"),sound:At.progress,legacySoundSettingsKey:"audioCues.chatResponsePending",legacyAnnouncementSettingsKey:"accessibility.alert.progress",announcementMessage:m("accessibility.signals.progress","Progress"),settingsKey:"accessibility.signals.progress"}),Me.clear=Me.register({name:m("accessibilitySignals.clear","Clear"),sound:At.clear,legacySoundSettingsKey:"audioCues.clear",legacyAnnouncementSettingsKey:"accessibility.alert.clear",announcementMessage:m("accessibility.signals.clear","Clear"),settingsKey:"accessibility.signals.clear"}),Me.save=Me.register({name:m("accessibilitySignals.save","Save"),sound:At.save,legacySoundSettingsKey:"audioCues.save",legacyAnnouncementSettingsKey:"accessibility.alert.save",announcementMessage:m("accessibility.signals.save","Save"),settingsKey:"accessibility.signals.save"}),Me.format=Me.register({name:m("accessibilitySignals.format","Format"),sound:At.format,legacySoundSettingsKey:"audioCues.format",legacyAnnouncementSettingsKey:"accessibility.alert.format",announcementMessage:m("accessibility.signals.format","Format"),settingsKey:"accessibility.signals.format"}),Me.voiceRecordingStarted=Me.register({name:m("accessibilitySignals.voiceRecordingStarted","Voice Recording Started"),sound:At.voiceRecordingStarted,legacySoundSettingsKey:"audioCues.voiceRecordingStarted",settingsKey:"accessibility.signals.voiceRecordingStarted"}),Me.voiceRecordingStopped=Me.register({name:m("accessibilitySignals.voiceRecordingStopped","Voice Recording Stopped"),sound:At.voiceRecordingStopped,legacySoundSettingsKey:"audioCues.voiceRecordingStopped",settingsKey:"accessibility.signals.voiceRecordingStopped"});let rr=Me;class Pte extends z{constructor(e,t=[]){super(),this.logger=new fz([e,...t]),this._register(e.onDidChangeLogLevel(i=>this.setLevel(i)))}get onDidChangeLogLevel(){return this.logger.onDidChangeLogLevel}setLevel(e){this.logger.setLevel(e)}getLevel(){return this.logger.getLevel()}trace(e,...t){this.logger.trace(e,...t)}debug(e,...t){this.logger.debug(e,...t)}info(e,...t){this.logger.info(e,...t)}warn(e,...t){this.logger.warn(e,...t)}error(e,...t){this.logger.error(e,...t)}}const a8=[];function Ote(o){a8.push(o)}function Fte(){return a8.slice(0)}class Bte{getParseResult(e){}}var ka=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},ri=function(o,e){return function(t,i){e(t,i,o)}};class Wte{constructor(e){this.disposed=!1,this.model=e,this._onWillDispose=new A}get textEditorModel(){return this.model}dispose(){this.disposed=!0,this._onWillDispose.fire()}}let aI=class{constructor(e){this.modelService=e}createModelReference(e){const t=this.modelService.getModel(e);return t?Promise.resolve(new vW(new Wte(t))):Promise.reject(new Error("Model not found"))}};aI=ka([ri(0,Fi)],aI);const qw=class qw{show(){return qw.NULL_PROGRESS_RUNNER}async showWhile(e,t){await e}};qw.NULL_PROGRESS_RUNNER={done:()=>{},total:()=>{},worked:()=>{}};let lI=qw;class Hte{withProgress(e,t,i){return t({report:()=>{}})}}class Vte{constructor(){this.isExtensionDevelopment=!1,this.isBuilt=!1}}class zte{async confirm(e){return{confirmed:this.doConfirm(e.message,e.detail),checkboxChecked:!1}}doConfirm(e,t){let i=e;return t&&(i=i+` - -`+t),_t.confirm(i)}async prompt(e){let t;if(this.doConfirm(e.message,e.detail)){const n=[...e.buttons??[]];e.cancelButton&&typeof e.cancelButton!="string"&&typeof e.cancelButton!="boolean"&&n.push(e.cancelButton),t=await n[0]?.run({checkboxChecked:!1})}return{result:t}}async error(e,t){await this.prompt({type:Qt.Error,message:e,detail:t})}}const Rp=class Rp{info(e){return this.notify({severity:Qt.Info,message:e})}warn(e){return this.notify({severity:Qt.Warning,message:e})}error(e){return this.notify({severity:Qt.Error,message:e})}notify(e){switch(e.severity){case Qt.Error:console.error(e.message);break;case Qt.Warning:console.warn(e.message);break;default:console.log(e.message);break}return Rp.NO_OP}prompt(e,t,i,n){return Rp.NO_OP}status(e,t){return z.None}};Rp.NO_OP=new W$;let cI=Rp,dI=class{constructor(e){this._onWillExecuteCommand=new A,this._onDidExecuteCommand=new A,this.onDidExecuteCommand=this._onDidExecuteCommand.event,this._instantiationService=e}executeCommand(e,...t){const i=bt.getCommand(e);if(!i)return Promise.reject(new Error(`command '${e}' not found`));try{this._onWillExecuteCommand.fire({commandId:e,args:t});const n=this._instantiationService.invokeFunction.apply(this._instantiationService,[i.handler,...t]);return this._onDidExecuteCommand.fire({commandId:e,args:t}),Promise.resolve(n)}catch(n){return Promise.reject(n)}}};dI=ka([ri(0,ke)],dI);let xg=class extends nZ{constructor(e,t,i,n,s,r){super(e,t,i,n,s),this._cachedResolver=null,this._dynamicKeybindings=[],this._domNodeListeners=[];const a=f=>{const g=new X;g.add(U(f,ee.KEY_DOWN,p=>{const _=new Nt(p);this._dispatch(_,_.target)&&(_.preventDefault(),_.stopPropagation())})),g.add(U(f,ee.KEY_UP,p=>{const _=new Nt(p);this._singleModifierDispatch(_,_.target)&&_.preventDefault()})),this._domNodeListeners.push(new Ute(f,g))},l=f=>{for(let g=0;g{f.getOption(61)||a(f.getContainerDomNode())},d=f=>{f.getOption(61)||l(f.getContainerDomNode())};this._register(r.onCodeEditorAdd(c)),this._register(r.onCodeEditorRemove(d)),r.listCodeEditors().forEach(c);const h=f=>{a(f.getContainerDomNode())},u=f=>{l(f.getContainerDomNode())};this._register(r.onDiffEditorAdd(h)),this._register(r.onDiffEditorRemove(u)),r.listDiffEditors().forEach(h)}addDynamicKeybinding(e,t,i,n){return No(bt.registerCommand(e,i),this.addDynamicKeybindings([{keybinding:t,command:e,when:n}]))}addDynamicKeybindings(e){const t=e.map(i=>({keybinding:Fx(i.keybinding,Ns),command:i.command??null,commandArgs:i.commandArgs,when:i.when,weight1:1e3,weight2:0,extensionId:null,isBuiltinExtension:!1}));return this._dynamicKeybindings=this._dynamicKeybindings.concat(t),this.updateResolver(),_e(()=>{for(let i=0;ithis._log(i))}return this._cachedResolver}_documentHasFocus(){return _t.document.hasFocus()}_toNormalizedKeybindingItems(e,t){const i=[];let n=0;for(const s of e){const r=s.when||void 0,a=s.keybinding;if(!a)i[n++]=new JA(void 0,s.command,s.commandArgs,r,t,null,!1);else{const l=l_.resolveKeybinding(a,Ns);for(const c of l)i[n++]=new JA(c,s.command,s.commandArgs,r,t,null,!1)}}return i}resolveKeyboardEvent(e){const t=new kl(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,e.keyCode);return new l_([t],Ns)}};xg=ka([ri(0,De),ri(1,hi),ri(2,$s),ri(3,mn),ri(4,gs),ri(5,Pt)],xg);class Ute extends z{constructor(e,t){super(),this.domNode=e,this._register(t)}}function _O(o){return o&&typeof o=="object"&&(!o.overrideIdentifier||typeof o.overrideIdentifier=="string")&&(!o.resource||o.resource instanceof ve)}let vv=class{constructor(e){this.logService=e,this._onDidChangeConfiguration=new A,this.onDidChangeConfiguration=this._onDidChangeConfiguration.event;const t=new Rte(e);this._configuration=new ry(t.reload(),Pi.createEmptyModel(e),Pi.createEmptyModel(e),Pi.createEmptyModel(e),Pi.createEmptyModel(e),Pi.createEmptyModel(e),new cs,Pi.createEmptyModel(e),new cs,e),t.dispose()}getValue(e,t){const i=typeof e=="string"?e:void 0,n=_O(e)?e:_O(t)?t:{};return this._configuration.getValue(i,n,void 0)}updateValues(e){const t={data:this._configuration.toData()},i=[];for(const n of e){const[s,r]=n;this.getValue(s)!==r&&(this._configuration.updateValue(s,r),i.push(s))}if(i.length>0){const n=new XG({keys:i,overrides:[]},t,this._configuration,void 0,this.logService);n.source=8,this._onDidChangeConfiguration.fire(n)}return Promise.resolve()}updateValue(e,t,i,n){return this.updateValues([[e,t]])}inspect(e,t={}){return this._configuration.inspect(e,t,void 0)}};vv=ka([ri(0,gs)],vv);let hI=class{constructor(e,t,i){this.configurationService=e,this.modelService=t,this.languageService=i,this._onDidChangeConfiguration=new A,this.configurationService.onDidChangeConfiguration(n=>{this._onDidChangeConfiguration.fire({affectedKeys:n.affectedKeys,affectsConfiguration:(s,r)=>n.affectsConfiguration(r)})})}getValue(e,t,i){const n=P.isIPosition(t)?t:null,s=n?typeof i=="string"?i:void 0:typeof t=="string"?t:void 0,r=e?this.getLanguage(e,n):void 0;return typeof s>"u"?this.configurationService.getValue({resource:e,overrideIdentifier:r}):this.configurationService.getValue(s,{resource:e,overrideIdentifier:r})}getLanguage(e,t){const i=this.modelService.getModel(e);return i?t?i.getLanguageIdAtPosition(t.lineNumber,t.column):i.getLanguageId():this.languageService.guessLanguageIdByFilepathOrFirstLine(e)}};hI=ka([ri(0,lt),ri(1,Fi),ri(2,qt)],hI);let uI=class{constructor(e){this.configurationService=e}getEOL(e,t){const i=this.configurationService.getValue("files.eol",{overrideIdentifier:t,resource:e});return i&&typeof i=="string"&&i!=="auto"?i:Un||Ue?` -`:`\r -`}};uI=ka([ri(0,lt)],uI);class $te{publicLog2(){}}const Ap=class Ap{constructor(){const e=ve.from({scheme:Ap.SCHEME,authority:"model",path:"/"});this.workspace={id:CZ,folders:[new bZ({uri:e,name:"",index:0})]}}getWorkspace(){return this.workspace}getWorkspaceFolder(e){return e&&e.scheme===Ap.SCHEME?this.workspace.folders[0]:null}};Ap.SCHEME="inmemory";let fI=Ap;function wv(o,e,t){if(!e||!(o instanceof vv))return;const i=[];Object.keys(e).forEach(n=>{qG(n)&&i.push([`editor.${n}`,e[n]]),t&&GG(n)&&i.push([`diffEditor.${n}`,e[n]])}),i.length>0&&o.updateValues(i)}let gI=class{constructor(e){this._modelService=e}hasPreviewHandler(){return!1}async apply(e,t){const i=Array.isArray(e)?e:$T.convert(e),n=new Map;for(const a of i){if(!(a instanceof Xd))throw new Error("bad edit - only text edits are supported");const l=this._modelService.getModel(a.resource);if(!l)throw new Error("bad edit - model not found");if(typeof a.versionId=="number"&&l.getVersionId()!==a.versionId)throw new Error("bad state - model changed in the meantime");let c=n.get(l);c||(c=[],n.set(l,c)),c.push(aa.replaceMove(I.lift(a.textEdit.range),a.textEdit.text))}let s=0,r=0;for(const[a,l]of n)a.pushStackElement(),a.pushEditOperations([],l,()=>[]),a.pushStackElement(),r+=1,s+=l.length;return{ariaSummary:$p(Yk.bulkEditServiceSummary,s,r),isApplied:s>0}}};gI=ka([ri(0,Fi)],gI);class Kte{getUriLabel(e,t){return e.scheme==="file"?e.fsPath:e.path}getUriBasenameLabel(e){return Fo(e)}}let mI=class extends VG{constructor(e,t){super(e),this._codeEditorService=t}showContextView(e,t,i){if(!t){const n=this._codeEditorService.getFocusedCodeEditor()||this._codeEditorService.getActiveCodeEditor();n&&(t=n.getContainerDomNode())}return super.showContextView(e,t,i)}};mI=ka([ri(0,jc),ri(1,Pt)],mI);class jte{constructor(){this._neverEmitter=new A,this.onDidChangeTrust=this._neverEmitter.event}isWorkspaceTrusted(){return!0}}class qte extends nD{constructor(){super()}}class Gte extends Pte{constructor(){super(new uz)}}let pI=class extends gD{constructor(e,t,i,n,s,r){super(e,t,i,n,s,r),this.configure({blockMouse:!1})}};pI=ka([ri(0,$s),ri(1,mn),ri(2,lu),ri(3,vt),ri(4,yr),ri(5,De)],pI);const _I={amdModuleId:"vs/editor/common/services/editorSimpleWorker",esmModuleLocation:void 0,label:"editorWorkerService"};let bI=class extends uk{constructor(e,t,i,n,s){super(_I,e,t,i,n,s)}};bI=ka([ri(0,Fi),ri(1,pT),ri(2,gs),ri(3,Gn),ri(4,Se)],bI);class Zte{async playSignal(e,t){}}Qe(gs,Gte,0);Qe(lt,vv,0);Qe(pT,hI,0);Qe(p3,uI,0);Qe(jk,fI,0);Qe(Cg,Kte,0);Qe($s,$te,0);Qe(w3,zte,0);Qe(vT,Vte,0);Qe(mn,cI,0);Qe(xa,Gl,0);Qe(qt,qte,0);Qe(zo,mte,0);Qe(Fi,ID,0);Qe(n2,CD,0);Qe(De,rI,0);Qe(cZ,Hte,0);Qe(G_,lI,0);Qe(du,MY,0);Qe(Zc,bI,0);Qe(b7,gI,0);Qe(vZ,jte,0);Qe(fo,aI,0);Qe(ms,JD,0);Qe(mo,Dee,0);Qe(hi,dI,0);Qe(vt,xg,0);Qe(fy,YD,0);Qe(lu,mI,0);Qe(Vo,bD,0);Qe(wy,sI,0);Qe(Lr,pI,0);Qe(yr,eI,0);Qe(rb,Zte,0);Qe(b9,Bte,0);var pe;(function(o){const e=new jg;for(const[l,c]of IR())e.set(l,c);const t=new Cv(e,!0);e.set(ke,t);function i(l){n||r({});const c=e.get(l);if(!c)throw new Error("Missing service "+l);return c instanceof Gr?t.invokeFunction(d=>d.get(l)):c}o.get=i;let n=!1;const s=new A;function r(l){if(n)return t;n=!0;for(const[d,h]of IR())e.get(d)||e.set(d,h);for(const d in l)if(l.hasOwnProperty(d)){const h=He(d);e.get(h)instanceof Gr&&e.set(h,l[d])}const c=Fte();for(const d of c)try{t.createInstance(d)}catch(h){Ze(h)}return s.fire(),t}o.initialize=r;function a(l){if(n)return l();const c=new X,d=c.add(s.event(()=>{d.dispose(),c.add(l())}));return c}o.withServices=a})(pe||(pe={}));function Yte(o,e){return new Qte(o,e)}class Qte extends EC{constructor(e,t){const i={amdModuleId:_I.amdModuleId,esmModuleLocation:_I.esmModuleLocation,label:t.label};super(i,t.keepIdleModels||!1,e),this._foreignModuleId=t.moduleId,this._foreignModuleCreateData=t.createData||null,this._foreignModuleHost=t.host||null,this._foreignProxy=null}fhr(e,t){if(!this._foreignModuleHost||typeof this._foreignModuleHost[e]!="function")return Promise.reject(new Error("Missing method "+e+" or missing main thread foreign host."));try{return Promise.resolve(this._foreignModuleHost[e].apply(this._foreignModuleHost,t))}catch(i){return Promise.reject(i)}}_getForeignProxy(){return this._foreignProxy||(this._foreignProxy=this._getProxy().then(e=>{const t=this._foreignModuleHost?DL(this._foreignModuleHost):[];return e.$loadForeignModule(this._foreignModuleId,this._foreignModuleCreateData,t).then(i=>{this._foreignModuleCreateData=null;const n=(a,l)=>e.$fmr(a,l),s=(a,l)=>function(){const c=Array.prototype.slice.call(arguments,0);return l(a,c)},r={};for(const a of i)r[a]=s(a,n);return r})})),this._foreignProxy}getProxy(){return this._getForeignProxy()}withSyncedResources(e){return this.workerWithSyncedResources(e).then(t=>this.getProxy())}}const yy={ICodeEditor:"vs.editor.ICodeEditor",IDiffEditor:"vs.editor.IDiffEditor"};class As{constructor(e,t,i,n){this.startColumn=e,this.endColumn=t,this.className=i,this.type=n,this._lineDecorationBrand=void 0}static _equals(e,t){return e.startColumn===t.startColumn&&e.endColumn===t.endColumn&&e.className===t.className&&e.type===t.type}static equalsArr(e,t){const i=e.length,n=t.length;if(i!==n)return!1;for(let s=0;s=s||(a[l++]=new As(Math.max(1,c.startColumn-n+1),Math.min(r+1,c.endColumn-n+1),c.className,c.type));return a}static filter(e,t,i,n){if(e.length===0)return[];const s=[];let r=0;for(let a=0,l=e.length;at||d.isEmpty()&&(c.type===0||c.type===3))continue;const h=d.startLineNumber===t?d.startColumn:i,u=d.endLineNumber===t?d.endColumn:n;s[r++]=new As(h,u,c.inlineClassName,c.type)}return s}static _typeCompare(e,t){const i=[2,0,1,3];return i[e]-i[t]}static compare(e,t){if(e.startColumn!==t.startColumn)return e.startColumn-t.startColumn;if(e.endColumn!==t.endColumn)return e.endColumn-t.endColumn;const i=As._typeCompare(e.type,t.type);return i!==0?i:e.className!==t.className?e.className0&&this.stopOffsets[0]0&&t=e){this.stopOffsets.splice(n,0,e),this.classNames.splice(n,0,t),this.metadata.splice(n,0,i);break}this.count++}}class Xte{static normalize(e,t){if(t.length===0)return[];const i=[],n=new yv;let s=0;for(let r=0,a=t.length;r1){const p=e.charCodeAt(c-2);wi(p)&&c--}if(d>1){const p=e.charCodeAt(d-2);wi(p)&&d--}const f=c-1,g=d-2;s=n.consumeLowerThan(f,s,i),n.count===0&&(s=f),n.insert(g,h,u)}return n.consumeLowerThan(1073741824,s,i),i}}class Ii{constructor(e,t,i,n){this.endIndex=e,this.type=t,this.metadata=i,this.containsRTL=n,this._linePartBrand=void 0}isWhitespace(){return!!(this.metadata&1)}isPseudoAfter(){return!!(this.metadata&4)}}class l8{constructor(e,t){this.startOffset=e,this.endOffset=t}equals(e){return this.startOffset===e.startOffset&&this.endOffset===e.endOffset}}class gu{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_,b,C,w){this.useMonospaceOptimizations=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=i,this.continuesWithWrappedLine=n,this.isBasicASCII=s,this.containsRTL=r,this.fauxIndentLength=a,this.lineTokens=l,this.lineDecorations=c.sort(As.compare),this.tabSize=d,this.startVisibleColumn=h,this.spaceWidth=u,this.stopRenderingLineAfter=p,this.renderWhitespace=_==="all"?4:_==="boundary"?1:_==="selection"?2:_==="trailing"?3:0,this.renderControlCharacters=b,this.fontLigatures=C,this.selectionsOnLine=w&&w.sort((x,L)=>x.startOffset>>16}static getCharIndex(e){return(e&65535)>>>0}constructor(e,t){this.length=e,this._data=new Uint32Array(this.length),this._horizontalOffset=new Uint32Array(this.length)}setColumnInfo(e,t,i,n){const s=(t<<16|i<<0)>>>0;this._data[e-1]=s,this._horizontalOffset[e-1]=n}getHorizontalOffset(e){return this._horizontalOffset.length===0?0:this._horizontalOffset[e-1]}charOffsetToPartData(e){return this.length===0?0:e<0?this._data[0]:e>=this.length?this._data[this.length-1]:this._data[e]}getDomPosition(e){const t=this.charOffsetToPartData(e-1),i=Zr.getPartIndex(t),n=Zr.getCharIndex(t);return new c8(i,n)}getColumn(e,t){return this.partDataToCharOffset(e.partIndex,t,e.charIndex)+1}partDataToCharOffset(e,t,i){if(this.length===0)return 0;const n=(e<<16|i<<0)>>>0;let s=0,r=this.length-1;for(;s+1>>1,_=this._data[p];if(_===n)return p;_>n?r=p:s=p}if(s===r)return s;const a=this._data[s],l=this._data[r];if(a===n)return s;if(l===n)return r;const c=Zr.getPartIndex(a),d=Zr.getCharIndex(a),h=Zr.getPartIndex(l);let u;c!==h?u=t:u=Zr.getCharIndex(l);const f=i-d,g=u-i;return f<=g?s:r}}class CI{constructor(e,t,i){this._renderLineOutputBrand=void 0,this.characterMapping=e,this.containsRTL=t,this.containsForeignElements=i}}function Sy(o,e){if(o.lineContent.length===0){if(o.lineDecorations.length>0){e.appendString("");let t=0,i=0,n=0;for(const r of o.lineDecorations)(r.type===1||r.type===2)&&(e.appendString(''),r.type===1&&(n|=1,t++),r.type===2&&(n|=2,i++));e.appendString("");const s=new Zr(1,t+i);return s.setColumnInfo(1,t,0,0),new CI(s,!1,n)}return e.appendString(""),new CI(new Zr(0,0),!1,0)}return aie(tie(o),e)}class Jte{constructor(e,t,i,n){this.characterMapping=e,this.html=t,this.containsRTL=i,this.containsForeignElements=n}}function Ly(o){const e=new K_(1e4),t=Sy(o,e);return new Jte(t.characterMapping,e.build(),t.containsRTL,t.containsForeignElements)}class eie{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_){this.fontIsMonospace=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=i,this.len=n,this.isOverflowing=s,this.overflowingCharCount=r,this.parts=a,this.containsForeignElements=l,this.fauxIndentLength=c,this.tabSize=d,this.startVisibleColumn=h,this.containsRTL=u,this.spaceWidth=f,this.renderSpaceCharCode=g,this.renderWhitespace=p,this.renderControlCharacters=_}}function tie(o){const e=o.lineContent;let t,i,n;o.stopRenderingLineAfter!==-1&&o.stopRenderingLineAfter0){for(let a=0,l=o.lineDecorations.length;a0&&(s[r++]=new Ii(i,"",0,!1));let a=i;for(let l=0,c=t.getCount();l=n){const f=e?sg(o.substring(a,n)):!1;s[r++]=new Ii(n,h,0,f);break}const u=e?sg(o.substring(a,d)):!1;s[r++]=new Ii(d,h,0,u),a=d}return s}function nie(o,e,t){let i=0;const n=[];let s=0;if(t)for(let r=0,a=e.length;r=50&&(n[s++]=new Ii(f+1,d,h,u),g=f+1,f=-1);g!==c&&(n[s++]=new Ii(c,d,h,u))}else n[s++]=l;i=c}else for(let r=0,a=e.length;r50){const h=l.type,u=l.metadata,f=l.containsRTL,g=Math.ceil(d/50);for(let p=1;p=8234&&o<=8238||o>=8294&&o<=8297||o>=8206&&o<=8207||o===1564}function sie(o,e){const t=[];let i=new Ii(0,"",0,!1),n=0;for(const s of e){const r=s.endIndex;for(;ni.endIndex&&(i=new Ii(n,s.type,s.metadata,s.containsRTL),t.push(i)),i=new Ii(n+1,"mtkcontrol",s.metadata,!1),t.push(i))}n>i.endIndex&&(i=new Ii(r,s.type,s.metadata,s.containsRTL),t.push(i))}return t}function oie(o,e,t,i){const n=o.continuesWithWrappedLine,s=o.fauxIndentLength,r=o.tabSize,a=o.startVisibleColumn,l=o.useMonospaceOptimizations,c=o.selectionsOnLine,d=o.renderWhitespace===1,h=o.renderWhitespace===3,u=o.renderSpaceWidth!==o.spaceWidth,f=[];let g=0,p=0,_=i[p].type,b=i[p].containsRTL,C=i[p].endIndex;const w=i.length;let v=!1,y=zn(e),x;y===-1?(v=!0,y=t,x=t):x=Jh(e);let L=!1,E=0,N=c&&c[E],H=a%r;for(let W=s;W=N.endOffset&&(E++,N=c&&c[E]);let B;if(Wx)B=!0;else if(j===9)B=!0;else if(j===32)if(d)if(L)B=!0;else{const G=W+1W),B&&h&&(B=v||W>x),B&&b&&W>=y&&W<=x&&(B=!1),L){if(!B||!l&&H>=r){if(u){const G=g>0?f[g-1].endIndex:s;for(let ne=G+1;ne<=W;ne++)f[g++]=new Ii(ne,"mtkw",1,!1)}else f[g++]=new Ii(W,"mtkw",1,!1);H=H%r}}else(W===C||B&&W>s)&&(f[g++]=new Ii(W,_,0,b),H=H%r);for(j===9?H=r:Rc(j)?H+=2:H++,L=B;W===C&&(p++,p0?e.charCodeAt(t-1):0,j=t>1?e.charCodeAt(t-2):0;W===32&&j!==32&&j!==9||(F=!0)}else F=!0;if(F)if(u){const W=g>0?f[g-1].endIndex:s;for(let j=W+1;j<=t;j++)f[g++]=new Ii(j,"mtkw",1,!1)}else f[g++]=new Ii(t,"mtkw",1,!1);else f[g++]=new Ii(t,_,0,b);return f}function rie(o,e,t,i){i.sort(As.compare);const n=Xte.normalize(o,i),s=n.length;let r=0;const a=[];let l=0,c=0;for(let h=0,u=t.length;hc&&(c=C.startOffset,a[l++]=new Ii(c,p,_,b)),C.endOffset+1<=g)c=C.endOffset+1,a[l++]=new Ii(c,p+" "+C.className,_|C.metadata,b),r++;else{c=g,a[l++]=new Ii(c,p+" "+C.className,_|C.metadata,b);break}}g>c&&(c=g,a[l++]=new Ii(c,p,_,b))}const d=t[t.length-1].endIndex;if(r'):e.appendString("");for(let N=0,H=c.length;N=d&&(be+=Rt)}}for(ne&&(e.appendString(' style="width:'),e.appendString(String(g*de)),e.appendString('px"')),e.appendASCIICharCode(62);v1?e.appendCharCode(8594):e.appendCharCode(65515);for(let Rt=2;Rt<=we;Rt++)e.appendCharCode(160)}else be=2,we=1,e.appendCharCode(p),e.appendCharCode(8204);x+=be,L+=we,v>=d&&(y+=we)}}else for(e.appendASCIICharCode(62);v=d&&(y+=be)}ae?E++:E=0,v>=r&&!w&&F.isPseudoAfter()&&(w=!0,C.setColumnInfo(v+1,N,x,L)),e.appendString("")}return w||C.setColumnInfo(r+1,c.length-1,x,L),a&&(e.appendString(''),e.appendString(m("showMore","Show more ({0})",cie(l))),e.appendString("")),e.appendString(""),new CI(C,f,n)}function lie(o){return o.toString(16).toUpperCase().padStart(4,"0")}function cie(o){return o<1024?m("overflow.chars","{0} chars",o):o<1024*1024?`${(o/1024).toFixed(1)} KB`:`${(o/1024/1024).toFixed(1)} MB`}class CO{constructor(e,t,i,n){this._viewportBrand=void 0,this.top=e|0,this.left=t|0,this.width=i|0,this.height=n|0}}class die{constructor(e,t){this.tabSize=e,this.data=t}}class P2{constructor(e,t,i,n,s,r,a){this._viewLineDataBrand=void 0,this.content=e,this.continuesWithWrappedLine=t,this.minColumn=i,this.maxColumn=n,this.startVisibleColumn=s,this.tokens=r,this.inlineDecorations=a}}class zs{constructor(e,t,i,n,s,r,a,l,c,d){this.minColumn=e,this.maxColumn=t,this.content=i,this.continuesWithWrappedLine=n,this.isBasicASCII=zs.isBasicASCII(i,r),this.containsRTL=zs.containsRTL(i,this.isBasicASCII,s),this.tokens=a,this.inlineDecorations=l,this.tabSize=c,this.startVisibleColumn=d}static isBasicASCII(e,t){return t?D0(e):!0}static containsRTL(e,t,i){return!t&&i?sg(e):!1}}class hp{constructor(e,t,i){this.range=e,this.inlineClassName=t,this.type=i}}class hie{constructor(e,t,i,n){this.startOffset=e,this.endOffset=t,this.inlineClassName=i,this.inlineClassNameAffectsLetterSpacing=n}toInlineDecoration(e){return new hp(new I(e,this.startOffset+1,e,this.endOffset+1),this.inlineClassName,this.inlineClassNameAffectsLetterSpacing?3:0)}}class h8{constructor(e,t){this._viewModelDecorationBrand=void 0,this.range=e,this.options=t}}class w_{constructor(e,t,i){this.color=e,this.zIndex=t,this.data=i}static compareByRenderingProps(e,t){return e.zIndex===t.zIndex?e.colort.color?1:0:e.zIndex-t.zIndex}static equals(e,t){return e.color===t.color&&e.zIndex===t.zIndex&&li(e.data,t.data)}static equalsArr(e,t){return li(e,t,w_.equals)}}function uie(o){return Array.isArray(o)}function fie(o){return!uie(o)}function u8(o){return typeof o=="string"}function vO(o){return!u8(o)}function kd(o){return!o}function yl(o,e){return o.ignoreCase&&e?e.toLowerCase():e}function wO(o){return o.replace(/[&<>'"_]/g,"-")}function gie(o,e){console.log(`${o.languageId}: ${e}`)}function Et(o,e){return new Error(`${o.languageId}: ${e}`)}function tc(o,e,t,i,n){const s=/\$((\$)|(#)|(\d\d?)|[sS](\d\d?)|@(\w+))/g;let r=null;return e.replace(s,function(a,l,c,d,h,u,f,g,p){return kd(c)?kd(d)?!kd(h)&&h0;){const i=o.tokenizer[t];if(i)return i;const n=t.lastIndexOf(".");n<0?t=null:t=t.substr(0,n)}return null}function pie(o,e){let t=e;for(;t&&t.length>0;){if(o.stateNames[t])return!0;const n=t.lastIndexOf(".");n<0?t=null:t=t.substr(0,n)}return!1}var _ie=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},bie=function(o,e){return function(t,i){e(t,i,o)}},vI;const f8=5,Gw=class Gw{static create(e,t){return this._INSTANCE.create(e,t)}constructor(e){this._maxCacheDepth=e,this._entries=Object.create(null)}create(e,t){if(e!==null&&e.depth>=this._maxCacheDepth)return new qf(e,t);let i=qf.getStackElementId(e);i.length>0&&(i+="|"),i+=t;let n=this._entries[i];return n||(n=new qf(e,t),this._entries[i]=n,n)}};Gw._INSTANCE=new Gw(f8);let y_=Gw;class qf{constructor(e,t){this.parent=e,this.state=t,this.depth=(this.parent?this.parent.depth:0)+1}static getStackElementId(e){let t="";for(;e!==null;)t.length>0&&(t+="|"),t+=e.state,e=e.parent;return t}static _equals(e,t){for(;e!==null&&t!==null;){if(e===t)return!0;if(e.state!==t.state)return!1;e=e.parent,t=t.parent}return e===null&&t===null}equals(e){return qf._equals(this,e)}push(e){return y_.create(this,e)}pop(){return this.parent}popall(){let e=this;for(;e.parent;)e=e.parent;return e}switchTo(e){return y_.create(this.parent,e)}}class cf{constructor(e,t){this.languageId=e,this.state=t}equals(e){return this.languageId===e.languageId&&this.state.equals(e.state)}clone(){return this.state.clone()===this.state?this:new cf(this.languageId,this.state)}}const Zw=class Zw{static create(e,t){return this._INSTANCE.create(e,t)}constructor(e){this._maxCacheDepth=e,this._entries=Object.create(null)}create(e,t){if(t!==null)return new up(e,t);if(e!==null&&e.depth>=this._maxCacheDepth)return new up(e,t);const i=qf.getStackElementId(e);let n=this._entries[i];return n||(n=new up(e,null),this._entries[i]=n,n)}};Zw._INSTANCE=new Zw(f8);let ic=Zw;class up{constructor(e,t){this.stack=e,this.embeddedLanguageData=t}clone(){return(this.embeddedLanguageData?this.embeddedLanguageData.clone():null)===this.embeddedLanguageData?this:ic.create(this.stack,this.embeddedLanguageData)}equals(e){return!(e instanceof up)||!this.stack.equals(e.stack)?!1:this.embeddedLanguageData===null&&e.embeddedLanguageData===null?!0:this.embeddedLanguageData===null||e.embeddedLanguageData===null?!1:this.embeddedLanguageData.equals(e.embeddedLanguageData)}}class Cie{constructor(){this._tokens=[],this._languageId=null,this._lastTokenType=null,this._lastTokenLanguage=null}enterLanguage(e){this._languageId=e}emit(e,t){this._lastTokenType===t&&this._lastTokenLanguage===this._languageId||(this._lastTokenType=t,this._lastTokenLanguage=this._languageId,this._tokens.push(new zp(e,t,this._languageId)))}nestedLanguageTokenize(e,t,i,n){const s=i.languageId,r=i.state,a=si.get(s);if(!a)return this.enterLanguage(s),this.emit(n,""),r;const l=a.tokenize(e,t,r);if(n!==0)for(const c of l.tokens)this._tokens.push(new zp(c.offset+n,c.type,c.language));else this._tokens=this._tokens.concat(l.tokens);return this._lastTokenType=null,this._lastTokenLanguage=null,this._languageId=null,l.endState}finalize(e){return new FN(this._tokens,e)}}class Sv{constructor(e,t){this._languageService=e,this._theme=t,this._prependTokens=null,this._tokens=[],this._currentLanguageId=0,this._lastTokenMetadata=0}enterLanguage(e){this._currentLanguageId=this._languageService.languageIdCodec.encodeLanguageId(e)}emit(e,t){const i=this._theme.match(this._currentLanguageId,t)|1024;this._lastTokenMetadata!==i&&(this._lastTokenMetadata=i,this._tokens.push(e),this._tokens.push(i))}static _merge(e,t,i){const n=e!==null?e.length:0,s=t.length,r=i!==null?i.length:0;if(n===0&&s===0&&r===0)return new Uint32Array(0);if(n===0&&s===0)return i;if(s===0&&r===0)return e;const a=new Uint32Array(n+s+r);e!==null&&a.set(e);for(let l=0;l{if(r)return;let l=!1;for(let c=0,d=a.changedLanguages.length;c{a.affectsConfiguration("editor.maxTokenizationLineLength")&&(this._maxTokenizationLineLength=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:this._languageId}))}))}getLoadStatus(){const e=[];for(const t in this._embeddedLanguages){const i=si.get(t);if(i){if(i instanceof vI){const n=i.getLoadStatus();n.loaded===!1&&e.push(n.promise)}continue}si.isResolved(t)||e.push(si.getOrCreate(t))}return e.length===0?{loaded:!0}:{loaded:!1,promise:Promise.all(e).then(t=>{})}}getInitialState(){const e=y_.create(null,this._lexer.start);return ic.create(e,null)}tokenize(e,t,i){if(e.length>=this._maxTokenizationLineLength)return _7(this._languageId,i);const n=new Cie,s=this._tokenize(e,t,i,n);return n.finalize(s)}tokenizeEncoded(e,t,i){if(e.length>=this._maxTokenizationLineLength)return zT(this._languageService.languageIdCodec.encodeLanguageId(this._languageId),i);const n=new Sv(this._languageService,this._standaloneThemeService.getColorTheme().tokenTheme),s=this._tokenize(e,t,i,n);return n.finalize(s)}_tokenize(e,t,i,n){return i.embeddedLanguageData?this._nestedTokenize(e,t,i,0,n):this._myTokenize(e,t,i,0,n)}_findLeavingNestedLanguageOffset(e,t){let i=this._lexer.tokenizer[t.stack.state];if(!i&&(i=e1(this._lexer,t.stack.state),!i))throw Et(this._lexer,"tokenizer state is not defined: "+t.stack.state);let n=-1,s=!1;for(const r of i){if(!vO(r.action)||r.action.nextEmbedded!=="@pop")continue;s=!0;let a=r.resolveRegex(t.stack.state);const l=a.source;if(l.substr(0,4)==="^(?:"&&l.substr(l.length-1,1)===")"){const d=(a.ignoreCase?"i":"")+(a.unicode?"u":"");a=new RegExp(l.substr(4,l.length-5),d)}const c=e.search(a);c===-1||c!==0&&r.matchOnlyAtLineStart||(n===-1||c0&&s.nestedLanguageTokenize(a,!1,i.embeddedLanguageData,n);const l=e.substring(r);return this._myTokenize(l,t,i,n+r,s)}_safeRuleName(e){return e?e.name:"(unknown)"}_myTokenize(e,t,i,n,s){s.enterLanguage(this._languageId);const r=e.length,a=t&&this._lexer.includeLF?e+` -`:e,l=a.length;let c=i.embeddedLanguageData,d=i.stack,h=0,u=null,f=!0;for(;f||h=l)break;f=!1;let N=this._lexer.tokenizer[b];if(!N&&(N=e1(this._lexer,b),!N))throw Et(this._lexer,"tokenizer state is not defined: "+b);const H=a.substr(h);for(const F of N)if((h===0||!F.matchOnlyAtLineStart)&&(C=H.match(F.resolveRegex(b)),C)){w=C[0],v=F.action;break}}if(C||(C=[""],w=""),v||(h=this._lexer.maxStack)throw Et(this._lexer,"maximum tokenizer stack size reached: ["+d.state+","+d.parent.state+",...]");d=d.push(b)}else if(v.next==="@pop"){if(d.depth<=1)throw Et(this._lexer,"trying to pop an empty stack in rule: "+this._safeRuleName(y));d=d.pop()}else if(v.next==="@popall")d=d.popall();else{let N=tc(this._lexer,v.next,w,C,b);if(N[0]==="@"&&(N=N.substr(1)),e1(this._lexer,N))d=d.push(N);else throw Et(this._lexer,"trying to set a next state '"+N+"' that is undefined in rule: "+this._safeRuleName(y))}}v.log&&typeof v.log=="string"&&gie(this._lexer,this._lexer.languageId+": "+tc(this._lexer,v.log,w,C,b))}if(L===null)throw Et(this._lexer,"lexer rule has no well-defined action in rule: "+this._safeRuleName(y));const E=N=>{const H=this._languageService.getLanguageIdByLanguageName(N)||this._languageService.getLanguageIdByMimeType(N)||N,F=this._getNestedEmbeddedLanguageData(H);if(h0)throw Et(this._lexer,"groups cannot be nested: "+this._safeRuleName(y));if(C.length!==L.length+1)throw Et(this._lexer,"matched number of groups does not match the number of actions in rule: "+this._safeRuleName(y));let N=0;for(let H=1;Ho});class O2{static colorizeElement(e,t,i,n){n=n||{};const s=n.theme||"vs",r=n.mimeType||i.getAttribute("lang")||i.getAttribute("data-lang");if(!r)return console.error("Mode not detected"),Promise.resolve();const a=t.getLanguageIdByMimeType(r)||r;e.setTheme(s);const l=i.firstChild?i.firstChild.nodeValue:"";i.className+=" "+s;const c=d=>{const h=wie?.createHTML(d)??d;i.innerHTML=h};return this.colorize(t,l||"",a,n).then(c,d=>console.error(d))}static async colorize(e,t,i,n){const s=e.languageIdCodec;let r=4;n&&typeof n.tabSize=="number"&&(r=n.tabSize),$N(t)&&(t=t.substr(1));const a=va(t);if(!e.isRegisteredLanguageId(i))return yO(a,r,s);const l=await si.getOrCreate(i);return l?yie(a,r,l,s):yO(a,r,s)}static colorizeLine(e,t,i,n,s=4){const r=zs.isBasicASCII(e,t),a=zs.containsRTL(e,r,i);return Ly(new gu(!1,!0,e,!1,r,a,0,n,[],s,0,0,0,0,-1,"none",!1,!1,null)).html}static colorizeModelLine(e,t,i=4){const n=e.getLineContent(t);e.tokenization.forceTokenization(t);const r=e.tokenization.getLineTokens(t).inflate();return this.colorizeLine(n,e.mightContainNonBasicASCII(),e.mightContainRTL(),r,i)}}function yie(o,e,t,i){return new Promise((n,s)=>{const r=()=>{const a=Sie(o,e,t,i);if(t instanceof S_){const l=t.getLoadStatus();if(l.loaded===!1){l.promise.then(r,s);return}}n(a)};r()})}function yO(o,e,t){let i=[];const s=new Uint32Array(2);s[0]=0,s[1]=33587200;for(let r=0,a=o.length;r")}return i.join("")}function Sie(o,e,t,i){let n=[],s=t.getInitialState();for(let r=0,a=o.length;r"),s=c.endState}return n.join("")}var Lie=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},xie=function(o,e){return function(t,i){e(t,i,o)}},Xf;let Lv=(Xf=class{constructor(e,t){}dispose(){}},Xf.ID="editor.contrib.markerDecorations",Xf);Lv=Lie([xie(1,n2)],Lv);Ho(Lv.ID,Lv,0);class g8 extends z{constructor(e,t){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._referenceDomElement=e,this._width=-1,this._height=-1,this._resizeObserver=null,this.measureReferenceDomElement(!1,t)}dispose(){this.stopObserving(),super.dispose()}getWidth(){return this._width}getHeight(){return this._height}startObserving(){if(!this._resizeObserver&&this._referenceDomElement){let e=null;const t=()=>{e?this.observe({width:e.width,height:e.height}):this.observe()};let i=!1,n=!1;const s=()=>{if(i&&!n)try{i=!1,n=!0,t()}finally{fs(fe(this._referenceDomElement),()=>{n=!1,s()})}};this._resizeObserver=new ResizeObserver(r=>{r&&r[0]&&r[0].contentRect?e={width:r[0].contentRect.width,height:r[0].contentRect.height}:e=null,i=!0,s()}),this._resizeObserver.observe(this._referenceDomElement)}}stopObserving(){this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null)}observe(e){this.measureReferenceDomElement(!0,e)}measureReferenceDomElement(e,t){let i=0,n=0;t?(i=t.width,n=t.height):this._referenceDomElement&&(i=this._referenceDomElement.clientWidth,n=this._referenceDomElement.clientHeight),i=Math.max(5,i),n=Math.max(5,n),(this._width!==i||this._height!==n)&&(this._width=i,this._height=n,e&&this._onDidChange.fire())}}const xf=class xf{constructor(e,t){this.key=e,this.migrate=t}apply(e){const t=xf._read(e,this.key),i=s=>xf._read(e,s),n=(s,r)=>xf._write(e,s,r);this.migrate(t,i,n)}static _read(e,t){if(typeof e>"u")return;const i=t.indexOf(".");if(i>=0){const n=t.substring(0,i);return this._read(e[n],t.substring(i+1))}return e[t]}static _write(e,t,i){const n=t.indexOf(".");if(n>=0){const s=t.substring(0,n);e[s]=e[s]||{},this._write(e[s],t.substring(n+1),i);return}e[t]=i}};xf.items=[];let L_=xf;function kr(o,e){L_.items.push(new L_(o,e))}function ps(o,e){kr(o,(t,i,n)=>{if(typeof t<"u"){for(const[s,r]of e)if(t===s){n(o,r);return}}})}function kie(o){L_.items.forEach(e=>e.apply(o))}ps("wordWrap",[[!0,"on"],[!1,"off"]]);ps("lineNumbers",[[!0,"on"],[!1,"off"]]);ps("cursorBlinking",[["visible","solid"]]);ps("renderWhitespace",[[!0,"boundary"],[!1,"none"]]);ps("renderLineHighlight",[[!0,"line"],[!1,"none"]]);ps("acceptSuggestionOnEnter",[[!0,"on"],[!1,"off"]]);ps("tabCompletion",[[!1,"off"],[!0,"onlySnippets"]]);ps("hover",[[!0,{enabled:!0}],[!1,{enabled:!1}]]);ps("parameterHints",[[!0,{enabled:!0}],[!1,{enabled:!1}]]);ps("autoIndent",[[!1,"advanced"],[!0,"full"]]);ps("matchBrackets",[[!0,"always"],[!1,"never"]]);ps("renderFinalNewline",[[!0,"on"],[!1,"off"]]);ps("cursorSmoothCaretAnimation",[[!0,"on"],[!1,"off"]]);ps("occurrencesHighlight",[[!0,"singleFile"],[!1,"off"]]);ps("wordBasedSuggestions",[[!0,"matchingDocuments"],[!1,"off"]]);kr("autoClosingBrackets",(o,e,t)=>{o===!1&&(t("autoClosingBrackets","never"),typeof e("autoClosingQuotes")>"u"&&t("autoClosingQuotes","never"),typeof e("autoSurround")>"u"&&t("autoSurround","never"))});kr("renderIndentGuides",(o,e,t)=>{typeof o<"u"&&(t("renderIndentGuides",void 0),typeof e("guides.indentation")>"u"&&t("guides.indentation",!!o))});kr("highlightActiveIndentGuide",(o,e,t)=>{typeof o<"u"&&(t("highlightActiveIndentGuide",void 0),typeof e("guides.highlightActiveIndentation")>"u"&&t("guides.highlightActiveIndentation",!!o))});const Die={method:"showMethods",function:"showFunctions",constructor:"showConstructors",deprecated:"showDeprecated",field:"showFields",variable:"showVariables",class:"showClasses",struct:"showStructs",interface:"showInterfaces",module:"showModules",property:"showProperties",event:"showEvents",operator:"showOperators",unit:"showUnits",value:"showValues",constant:"showConstants",enum:"showEnums",enumMember:"showEnumMembers",keyword:"showKeywords",text:"showWords",color:"showColors",file:"showFiles",reference:"showReferences",folder:"showFolders",typeParameter:"showTypeParameters",snippet:"showSnippets"};kr("suggest.filteredTypes",(o,e,t)=>{if(o&&typeof o=="object"){for(const i of Object.entries(Die))o[i[0]]===!1&&typeof e(`suggest.${i[1]}`)>"u"&&t(`suggest.${i[1]}`,!1);t("suggest.filteredTypes",void 0)}});kr("quickSuggestions",(o,e,t)=>{if(typeof o=="boolean"){const i=o?"on":"off";t("quickSuggestions",{comments:i,strings:i,other:i})}});kr("experimental.stickyScroll.enabled",(o,e,t)=>{typeof o=="boolean"&&(t("experimental.stickyScroll.enabled",void 0),typeof e("stickyScroll.enabled")>"u"&&t("stickyScroll.enabled",o))});kr("experimental.stickyScroll.maxLineCount",(o,e,t)=>{typeof o=="number"&&(t("experimental.stickyScroll.maxLineCount",void 0),typeof e("stickyScroll.maxLineCount")>"u"&&t("stickyScroll.maxLineCount",o))});kr("codeActionsOnSave",(o,e,t)=>{if(o&&typeof o=="object"){let i=!1;const n={};for(const s of Object.entries(o))typeof s[1]=="boolean"?(i=!0,n[s[0]]=s[1]?"explicit":"never"):n[s[0]]=s[1];i&&t("codeActionsOnSave",n)}});kr("codeActionWidget.includeNearbyQuickfixes",(o,e,t)=>{typeof o=="boolean"&&(t("codeActionWidget.includeNearbyQuickfixes",void 0),typeof e("codeActionWidget.includeNearbyQuickFixes")>"u"&&t("codeActionWidget.includeNearbyQuickFixes",o))});kr("lightbulb.enabled",(o,e,t)=>{typeof o=="boolean"&&t("lightbulb.enabled",o?void 0:"off")});class Iie{constructor(){this._tabFocus=!1,this._onDidChangeTabFocus=new A,this.onDidChangeTabFocus=this._onDidChangeTabFocus.event}getTabFocusMode(){return this._tabFocus}setTabFocusMode(e){this._tabFocus=e,this._onDidChangeTabFocus.fire(this._tabFocus)}}const xv=new Iie;var Eie=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Nie=function(o,e){return function(t,i){e(t,i,o)}};let wI=class extends z{constructor(e,t,i,n,s){super(),this._accessibilityService=s,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._onDidChangeFast=this._register(new A),this.onDidChangeFast=this._onDidChangeFast.event,this._isDominatedByLongLines=!1,this._viewLineCount=1,this._lineNumbersDigitCount=1,this._reservedHeight=0,this._glyphMarginDecorationLaneCount=1,this._computeOptionsMemory=new q5,this.isSimpleWidget=e,this.contextMenuId=t,this._containerObserver=this._register(new g8(n,i.dimension)),this._targetWindowId=fe(n).vscodeWindowId,this._rawOptions=SO(i),this._validatedOptions=nc.validateOptions(this._rawOptions),this.options=this._computeOptions(),this.options.get(13)&&this._containerObserver.startObserving(),this._register(Xl.onDidChangeZoomLevel(()=>this._recomputeOptions())),this._register(xv.onDidChangeTabFocus(()=>this._recomputeOptions())),this._register(this._containerObserver.onDidChange(()=>this._recomputeOptions())),this._register(Gx.onDidChange(()=>this._recomputeOptions())),this._register(Zp.getInstance(fe(n)).onDidChange(()=>this._recomputeOptions())),this._register(this._accessibilityService.onDidChangeScreenReaderOptimized(()=>this._recomputeOptions()))}_recomputeOptions(){const e=this._computeOptions(),t=nc.checkEquals(this.options,e);t!==null&&(this.options=e,this._onDidChangeFast.fire(t),this._onDidChange.fire(t))}_computeOptions(){const e=this._readEnvConfiguration(),t=Yd.createFromValidatedSettings(this._validatedOptions,e.pixelRatio,this.isSimpleWidget),i=this._readFontInfo(t),n={memory:this._computeOptionsMemory,outerWidth:e.outerWidth,outerHeight:e.outerHeight-this._reservedHeight,fontInfo:i,extraEditorClassName:e.extraEditorClassName,isDominatedByLongLines:this._isDominatedByLongLines,viewLineCount:this._viewLineCount,lineNumbersDigitCount:this._lineNumbersDigitCount,emptySelectionClipboard:e.emptySelectionClipboard,pixelRatio:e.pixelRatio,tabFocusMode:xv.getTabFocusMode(),accessibilitySupport:e.accessibilitySupport,glyphMarginDecorationLaneCount:this._glyphMarginDecorationLaneCount};return nc.computeOptions(this._validatedOptions,n)}_readEnvConfiguration(){return{extraEditorClassName:Mie(),outerWidth:this._containerObserver.getWidth(),outerHeight:this._containerObserver.getHeight(),emptySelectionClipboard:I0||Mo,pixelRatio:Zp.getInstance(hR(this._targetWindowId,!0).window).value,accessibilitySupport:this._accessibilityService.isScreenReaderOptimized()?2:this._accessibilityService.getAccessibilitySupport()}}_readFontInfo(e){return Gx.readFontInfo(hR(this._targetWindowId,!0).window,e)}getRawOptions(){return this._rawOptions}updateOptions(e){const t=SO(e);nc.applyUpdate(this._rawOptions,t)&&(this._validatedOptions=nc.validateOptions(this._rawOptions),this._recomputeOptions())}observeContainer(e){this._containerObserver.observe(e)}setIsDominatedByLongLines(e){this._isDominatedByLongLines!==e&&(this._isDominatedByLongLines=e,this._recomputeOptions())}setModelLineCount(e){const t=Tie(e);this._lineNumbersDigitCount!==t&&(this._lineNumbersDigitCount=t,this._recomputeOptions())}setViewLineCount(e){this._viewLineCount!==e&&(this._viewLineCount=e,this._recomputeOptions())}setReservedHeight(e){this._reservedHeight!==e&&(this._reservedHeight=e,this._recomputeOptions())}setGlyphMarginDecorationLaneCount(e){this._glyphMarginDecorationLaneCount!==e&&(this._glyphMarginDecorationLaneCount=e,this._recomputeOptions())}};wI=Eie([Nie(4,ms)],wI);function Tie(o){let e=0;for(;o;)o=Math.floor(o/10),e++;return e||1}function Mie(){let o="";return!Ac&&!bF&&(o+="no-user-select "),Ac&&(o+="no-minimap-shadow ",o+="enable-user-select "),Ue&&(o+="mac "),o}class Rie{constructor(){this._values=[]}_read(e){return this._values[e]}get(e){return this._values[e]}_write(e,t){this._values[e]=t}}class Aie{constructor(){this._values=[]}_read(e){if(e>=this._values.length)throw new Error("Cannot read uninitialized value");return this._values[e]}get(e){return this._read(e)}_write(e,t){this._values[e]=t}}class nc{static validateOptions(e){const t=new Rie;for(const i of Zu){const n=i.name==="_never_"?void 0:e[i.name];t._write(i.id,i.validate(n))}return t}static computeOptions(e,t){const i=new Aie;for(const n of Zu)i._write(n.id,n.compute(t,i,e._read(n.id)));return i}static _deepEquals(e,t){if(typeof e!="object"||typeof t!="object"||!e||!t)return e===t;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)?li(e,t):!1;if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const i in e)if(!nc._deepEquals(e[i],t[i]))return!1;return!0}static checkEquals(e,t){const i=[];let n=!1;for(const s of Zu){const r=!nc._deepEquals(e._read(s.id),t._read(s.id));i[s.id]=r,r&&(n=!0)}return n?new j5(i):null}static applyUpdate(e,t){let i=!1;for(const n of Zu)if(t.hasOwnProperty(n.name)){const s=n.applyUpdate(e[n.name],t[n.name]);e[n.name]=s.newValue,i=i||s.didChange}return i}}function SO(o){const e=Ya(o);return kie(e),e}var lc;(function(o){const e={total:0,min:Number.MAX_VALUE,max:0},t={...e},i={...e},n={...e};let s=0;const r={keydown:0,input:0,render:0};function a(){b(),performance.mark("inputlatency/start"),performance.mark("keydown/start"),r.keydown=1,queueMicrotask(l)}o.onKeyDown=a;function l(){r.keydown===1&&(performance.mark("keydown/end"),r.keydown=2)}function c(){performance.mark("input/start"),r.input=1,_()}o.onBeforeInput=c;function d(){r.input===0&&c(),queueMicrotask(h)}o.onInput=d;function h(){r.input===1&&(performance.mark("input/end"),r.input=2)}function u(){b()}o.onKeyUp=u;function f(){b()}o.onSelectionChange=f;function g(){r.keydown===2&&r.input===2&&r.render===0&&(performance.mark("render/start"),r.render=1,queueMicrotask(p),_())}o.onRenderStart=g;function p(){r.render===1&&(performance.mark("render/end"),r.render=2)}function _(){setTimeout(b)}function b(){r.keydown===2&&r.input===2&&r.render===2&&(performance.mark("inputlatency/end"),performance.measure("keydown","keydown/start","keydown/end"),performance.measure("input","input/start","input/end"),performance.measure("render","render/start","render/end"),performance.measure("inputlatency","inputlatency/start","inputlatency/end"),C("keydown",e),C("input",t),C("render",i),C("inputlatency",n),s++,w())}function C(L,E){const N=performance.getEntriesByName(L)[0].duration;E.total+=N,E.min=Math.min(E.min,N),E.max=Math.max(E.max,N)}function w(){performance.clearMarks("keydown/start"),performance.clearMarks("keydown/end"),performance.clearMarks("input/start"),performance.clearMarks("input/end"),performance.clearMarks("render/start"),performance.clearMarks("render/end"),performance.clearMarks("inputlatency/start"),performance.clearMarks("inputlatency/end"),performance.clearMeasures("keydown"),performance.clearMeasures("input"),performance.clearMeasures("render"),performance.clearMeasures("inputlatency"),r.keydown=0,r.input=0,r.render=0}function v(){if(s===0)return;const L={keydown:y(e),input:y(t),render:y(i),total:y(n),sampleCount:s};return x(e),x(t),x(i),x(n),s=0,L}o.getAndClearMeasurements=v;function y(L){return{average:L.total/s,max:L.max,min:L.min}}function x(L){L.total=0,L.min=Number.MAX_VALUE,L.max=0}})(lc||(lc={}));class xy{constructor(e,t){this.x=e,this.y=t,this._pageCoordinatesBrand=void 0}toClientCoordinates(e){return new m8(this.x-e.scrollX,this.y-e.scrollY)}}class m8{constructor(e,t){this.clientX=e,this.clientY=t,this._clientCoordinatesBrand=void 0}toPageCoordinates(e){return new xy(this.clientX+e.scrollX,this.clientY+e.scrollY)}}class Pie{constructor(e,t,i,n){this.x=e,this.y=t,this.width=i,this.height=n,this._editorPagePositionBrand=void 0}}class Oie{constructor(e,t){this.x=e,this.y=t,this._positionRelativeToEditorBrand=void 0}}function F2(o){const e=gi(o);return new Pie(e.left,e.top,e.width,e.height)}function B2(o,e,t){const i=e.width/o.offsetWidth,n=e.height/o.offsetHeight,s=(t.x-e.x)/i,r=(t.y-e.y)/n;return new Oie(s,r)}class Wc extends ur{constructor(e,t,i){super(fe(i),e),this._editorMouseEventBrand=void 0,this.isFromPointerCapture=t,this.pos=new xy(this.posx,this.posy),this.editorPos=F2(i),this.relativePos=B2(i,this.editorPos,this.pos)}}class Fie{constructor(e){this._editorViewDomNode=e}_create(e){return new Wc(e,!1,this._editorViewDomNode)}onContextMenu(e,t){return U(e,"contextmenu",i=>{t(this._create(i))})}onMouseUp(e,t){return U(e,"mouseup",i=>{t(this._create(i))})}onMouseDown(e,t){return U(e,ee.MOUSE_DOWN,i=>{t(this._create(i))})}onPointerDown(e,t){return U(e,ee.POINTER_DOWN,i=>{t(this._create(i),i.pointerId)})}onMouseLeave(e,t){return U(e,ee.MOUSE_LEAVE,i=>{t(this._create(i))})}onMouseMove(e,t){return U(e,"mousemove",i=>t(this._create(i)))}}class Bie{constructor(e){this._editorViewDomNode=e}_create(e){return new Wc(e,!1,this._editorViewDomNode)}onPointerUp(e,t){return U(e,"pointerup",i=>{t(this._create(i))})}onPointerDown(e,t){return U(e,ee.POINTER_DOWN,i=>{t(this._create(i),i.pointerId)})}onPointerLeave(e,t){return U(e,ee.POINTER_LEAVE,i=>{t(this._create(i))})}onPointerMove(e,t){return U(e,"pointermove",i=>t(this._create(i)))}}class Wie extends z{constructor(e){super(),this._editorViewDomNode=e,this._globalPointerMoveMonitor=this._register(new Hg),this._keydownListener=null}startMonitoring(e,t,i,n,s){this._keydownListener=jt(e.ownerDocument,"keydown",r=>{r.toKeyCodeChord().isModifierKey()||this._globalPointerMoveMonitor.stopMonitoring(!0,r.browserEvent)},!0),this._globalPointerMoveMonitor.startMonitoring(e,t,i,r=>{n(new Wc(r,!0,this._editorViewDomNode))},r=>{this._keydownListener.dispose(),s(r)})}stopMonitoring(){this._globalPointerMoveMonitor.stopMonitoring(!0)}}const Yw=class Yw{constructor(e){this._editor=e,this._instanceId=++Yw._idPool,this._counter=0,this._rules=new Map,this._garbageCollectionScheduler=new ci(()=>this.garbageCollect(),1e3)}createClassNameRef(e){const t=this.getOrCreateRule(e);return t.increaseRefCount(),{className:t.className,dispose:()=>{t.decreaseRefCount(),this._garbageCollectionScheduler.schedule()}}}getOrCreateRule(e){const t=this.computeUniqueKey(e);let i=this._rules.get(t);if(!i){const n=this._counter++;i=new Hie(t,`dyn-rule-${this._instanceId}-${n}`,_C(this._editor.getContainerDomNode())?this._editor.getContainerDomNode():void 0,e),this._rules.set(t,i)}return i}computeUniqueKey(e){return JSON.stringify(e)}garbageCollect(){for(const e of this._rules.values())e.hasReferences()||(this._rules.delete(e.key),e.dispose())}};Yw._idPool=0;let kv=Yw;class Hie{constructor(e,t,i,n){this.key=e,this.className=t,this.properties=n,this._referenceCount=0,this._styleElementDisposables=new X,this._styleElement=Vs(i,void 0,this._styleElementDisposables),this._styleElement.textContent=this.getCssText(this.className,this.properties)}getCssText(e,t){let i=`.${e} {`;for(const n in t){const s=t[n];let r;typeof s=="object"?r=oe(s.id):r=s;const a=Vie(n);i+=` - ${a}: ${r};`}return i+=` -}`,i}dispose(){this._styleElementDisposables.dispose(),this._styleElement=void 0}increaseRefCount(){this._referenceCount++}decreaseRefCount(){this._referenceCount--}hasReferences(){return this._referenceCount>0}}function Vie(o){return o.replace(/(^[A-Z])/,([e])=>e.toLowerCase()).replace(/([A-Z])/g,([e])=>`-${e.toLowerCase()}`)}class ab extends z{constructor(){super(),this._shouldRender=!0}shouldRender(){return this._shouldRender}forceShouldRender(){this._shouldRender=!0}setShouldRender(){this._shouldRender=!0}onDidRender(){this._shouldRender=!1}onCompositionStart(e){return!1}onCompositionEnd(e){return!1}onConfigurationChanged(e){return!1}onCursorStateChanged(e){return!1}onDecorationsChanged(e){return!1}onFlushed(e){return!1}onFocusChanged(e){return!1}onLanguageConfigurationChanged(e){return!1}onLineMappingChanged(e){return!1}onLinesChanged(e){return!1}onLinesDeleted(e){return!1}onLinesInserted(e){return!1}onRevealRangeRequest(e){return!1}onScrollChanged(e){return!1}onThemeChanged(e){return!1}onTokensChanged(e){return!1}onTokensColorsChanged(e){return!1}onZonesChanged(e){return!1}handleEvents(e){let t=!1;for(let i=0,n=e.length;i=a.left?n.width=Math.max(n.width,a.left+a.width-n.left):(t[i++]=n,n=a)}return t[i++]=n,t}static _createHorizontalRangesFromClientRects(e,t,i){if(!e||e.length===0)return null;const n=[];for(let s=0,r=e.length;sl)return null;if(t=Math.min(l,Math.max(0,t)),n=Math.min(l,Math.max(0,n)),t===n&&i===s&&i===0&&!e.children[t].firstChild){const u=e.children[t].getClientRects();return r.markDidDomLayout(),this._createHorizontalRangesFromClientRects(u,r.clientRectDeltaLeft,r.clientRectScale)}t!==n&&n>0&&s===0&&(n--,s=1073741824);let c=e.children[t].firstChild,d=e.children[n].firstChild;if((!c||!d)&&(!c&&i===0&&t>0&&(c=e.children[t-1].firstChild,i=1073741824),!d&&s===0&&n>0&&(d=e.children[n-1].firstChild,s=1073741824)),!c||!d)return null;i=Math.min(c.textContent.length,Math.max(0,i)),s=Math.min(d.textContent.length,Math.max(0,s));const h=this._readClientRects(c,i,d,s,r.endNode);return r.markDidDomLayout(),this._createHorizontalRangesFromClientRects(h,r.clientRectDeltaLeft,r.clientRectScale)}}const jie=(function(){return oC?!0:!(Un||Mo||Ac)})();let Gf=!0;class xO{constructor(e,t){this.themeType=t;const i=e.options,n=i.get(50);i.get(38)==="off"?this.renderWhitespace=i.get(100):this.renderWhitespace="none",this.renderControlCharacters=i.get(95),this.spaceWidth=n.spaceWidth,this.middotWidth=n.middotWidth,this.wsmiddotWidth=n.wsmiddotWidth,this.useMonospaceOptimizations=n.isMonospace&&!i.get(33),this.canUseHalfwidthRightwardsArrow=n.canUseHalfwidthRightwardsArrow,this.lineHeight=i.get(67),this.stopRenderingLineAfter=i.get(118),this.fontLigatures=i.get(51)}equals(e){return this.themeType===e.themeType&&this.renderWhitespace===e.renderWhitespace&&this.renderControlCharacters===e.renderControlCharacters&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.wsmiddotWidth===e.wsmiddotWidth&&this.useMonospaceOptimizations===e.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineHeight===e.lineHeight&&this.stopRenderingLineAfter===e.stopRenderingLineAfter&&this.fontLigatures===e.fontLigatures}}const Qw=class Qw{constructor(e){this._options=e,this._isMaybeInvalid=!0,this._renderedViewLine=null}getDomNode(){return this._renderedViewLine&&this._renderedViewLine.domNode?this._renderedViewLine.domNode.domNode:null}setDomNode(e){if(this._renderedViewLine)this._renderedViewLine.domNode=ot(e);else throw new Error("I have no rendered view line to set the dom node to...")}onContentChanged(){this._isMaybeInvalid=!0}onTokensChanged(){this._isMaybeInvalid=!0}onDecorationsChanged(){this._isMaybeInvalid=!0}onOptionsChanged(e){this._isMaybeInvalid=!0,this._options=e}onSelectionChanged(){return mc(this._options.themeType)||this._options.renderWhitespace==="selection"?(this._isMaybeInvalid=!0,!0):!1}renderLine(e,t,i,n,s){if(this._isMaybeInvalid===!1)return!1;this._isMaybeInvalid=!1;const r=n.getViewLineRenderingData(e),a=this._options,l=As.filter(r.inlineDecorations,e,r.minColumn,r.maxColumn);let c=null;if(mc(a.themeType)||this._options.renderWhitespace==="selection"){const f=n.selections;for(const g of f){if(g.endLineNumbere)continue;const p=g.startLineNumber===e?g.startColumn:r.minColumn,_=g.endLineNumber===e?g.endColumn:r.maxColumn;p<_&&(mc(a.themeType)&&l.push(new As(p,_,"inline-selected-text",0)),this._options.renderWhitespace==="selection"&&(c||(c=[]),c.push(new l8(p-1,_-1))))}}const d=new gu(a.useMonospaceOptimizations,a.canUseHalfwidthRightwardsArrow,r.content,r.continuesWithWrappedLine,r.isBasicASCII,r.containsRTL,r.minColumn-1,r.tokens,l,r.tabSize,r.startVisibleColumn,a.spaceWidth,a.middotWidth,a.wsmiddotWidth,a.stopRenderingLineAfter,a.renderWhitespace,a.renderControlCharacters,a.fontLigatures!==Mc.OFF,c);if(this._renderedViewLine&&this._renderedViewLine.input.equals(d))return!1;s.appendString('
    ');const h=Sy(d,s);s.appendString("
    ");let u=null;return Gf&&jie&&r.isBasicASCII&&a.useMonospaceOptimizations&&h.containsForeignElements===0&&(u=new t1(this._renderedViewLine?this._renderedViewLine.domNode:null,d,h.characterMapping)),u||(u=_8(this._renderedViewLine?this._renderedViewLine.domNode:null,d,h.characterMapping,h.containsRTL,h.containsForeignElements)),this._renderedViewLine=u,!0}layoutLine(e,t,i){this._renderedViewLine&&this._renderedViewLine.domNode&&(this._renderedViewLine.domNode.setTop(t),this._renderedViewLine.domNode.setHeight(i))}getWidth(e){return this._renderedViewLine?this._renderedViewLine.getWidth(e):0}getWidthIsFast(){return this._renderedViewLine?this._renderedViewLine.getWidthIsFast():!0}needsMonospaceFontCheck(){return this._renderedViewLine?this._renderedViewLine instanceof t1:!1}monospaceAssumptionsAreValid(){return this._renderedViewLine&&this._renderedViewLine instanceof t1?this._renderedViewLine.monospaceAssumptionsAreValid():Gf}onMonospaceAssumptionsInvalidated(){this._renderedViewLine&&this._renderedViewLine instanceof t1&&(this._renderedViewLine=this._renderedViewLine.toSlowRenderedLine())}getVisibleRangesForRange(e,t,i,n){if(!this._renderedViewLine)return null;t=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,t)),i=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,i));const s=this._renderedViewLine.input.stopRenderingLineAfter;if(s!==-1&&t>s+1&&i>s+1)return new LO(!0,[new ih(this.getWidth(n),0)]);s!==-1&&t>s+1&&(t=s+1),s!==-1&&i>s+1&&(i=s+1);const r=this._renderedViewLine.getVisibleRangesForRange(e,t,i,n);return r&&r.length>0?new LO(!1,r):null}getColumnOfNodeOffset(e,t){return this._renderedViewLine?this._renderedViewLine.getColumnOfNodeOffset(e,t):1}};Qw.CLASS_NAME="view-line";let sl=Qw;class t1{constructor(e,t,i){this._cachedWidth=-1,this.domNode=e,this.input=t;const n=Math.floor(t.lineContent.length/300);if(n>0){this._keyColumnPixelOffsetCache=new Float32Array(n);for(let s=0;s=2&&(console.warn("monospace assumptions have been violated, therefore disabling monospace optimizations!"),Gf=!1)}return Gf}toSlowRenderedLine(){return _8(this.domNode,this.input,this._characterMapping,!1,0)}getVisibleRangesForRange(e,t,i,n){const s=this._getColumnPixelOffset(e,t,n),r=this._getColumnPixelOffset(e,i,n);return[new ih(s,r-s)]}_getColumnPixelOffset(e,t,i){if(t<=300){const c=this._characterMapping.getHorizontalOffset(t);return this._charWidth*c}const n=Math.floor((t-1)/300)-1,s=(n+1)*300+1;let r=-1;if(this._keyColumnPixelOffsetCache&&(r=this._keyColumnPixelOffsetCache[n],r===-1&&(r=this._actualReadPixelOffset(e,s,i),this._keyColumnPixelOffsetCache[n]=r)),r===-1){const c=this._characterMapping.getHorizontalOffset(t);return this._charWidth*c}const a=this._characterMapping.getHorizontalOffset(s),l=this._characterMapping.getHorizontalOffset(t);return r+this._charWidth*(l-a)}_getReadingTarget(e){return e.domNode.firstChild}_actualReadPixelOffset(e,t,i){if(!this.domNode)return-1;const n=this._characterMapping.getDomPosition(t),s=U1.readHorizontalRanges(this._getReadingTarget(this.domNode),n.partIndex,n.charIndex,n.partIndex,n.charIndex,i);return!s||s.length===0?-1:s[0].left}getColumnOfNodeOffset(e,t){return b8(this._characterMapping,e,t)}}class p8{constructor(e,t,i,n,s){if(this.domNode=e,this.input=t,this._characterMapping=i,this._isWhitespaceOnly=/^\s*$/.test(t.lineContent),this._containsForeignElements=s,this._cachedWidth=-1,this._pixelOffsetCache=null,!n||this._characterMapping.length===0){this._pixelOffsetCache=new Float32Array(Math.max(2,this._characterMapping.length+1));for(let r=0,a=this._characterMapping.length;r<=a;r++)this._pixelOffsetCache[r]=-1}}_getReadingTarget(e){return e.domNode.firstChild}getWidth(e){return this.domNode?(this._cachedWidth===-1&&(this._cachedWidth=this._getReadingTarget(this.domNode).offsetWidth,e?.markDidDomLayout()),this._cachedWidth):0}getWidthIsFast(){return this._cachedWidth!==-1}getVisibleRangesForRange(e,t,i,n){if(!this.domNode)return null;if(this._pixelOffsetCache!==null){const s=this._readPixelOffset(this.domNode,e,t,n);if(s===-1)return null;const r=this._readPixelOffset(this.domNode,e,i,n);return r===-1?null:[new ih(s,r-s)]}return this._readVisibleRangesForRange(this.domNode,e,t,i,n)}_readVisibleRangesForRange(e,t,i,n,s){if(i===n){const r=this._readPixelOffset(e,t,i,s);return r===-1?null:[new ih(r,0)]}else return this._readRawVisibleRangesForRange(e,i,n,s)}_readPixelOffset(e,t,i,n){if(this._characterMapping.length===0){if(this._containsForeignElements===0||this._containsForeignElements===2)return 0;if(this._containsForeignElements===1)return this.getWidth(n);const s=this._getReadingTarget(e);return s.firstChild?(n.markDidDomLayout(),s.firstChild.offsetWidth):0}if(this._pixelOffsetCache!==null){const s=this._pixelOffsetCache[i];if(s!==-1)return s;const r=this._actualReadPixelOffset(e,t,i,n);return this._pixelOffsetCache[i]=r,r}return this._actualReadPixelOffset(e,t,i,n)}_actualReadPixelOffset(e,t,i,n){if(this._characterMapping.length===0){const l=U1.readHorizontalRanges(this._getReadingTarget(e),0,0,0,0,n);return!l||l.length===0?-1:l[0].left}if(i===this._characterMapping.length&&this._isWhitespaceOnly&&this._containsForeignElements===0)return this.getWidth(n);const s=this._characterMapping.getDomPosition(i),r=U1.readHorizontalRanges(this._getReadingTarget(e),s.partIndex,s.charIndex,s.partIndex,s.charIndex,n);if(!r||r.length===0)return-1;const a=r[0].left;if(this.input.isBasicASCII){const l=this._characterMapping.getHorizontalOffset(i),c=Math.round(this.input.spaceWidth*l);if(Math.abs(c-a)<=1)return c}return a}_readRawVisibleRangesForRange(e,t,i,n){if(t===1&&i===this._characterMapping.length)return[new ih(0,this.getWidth(n))];const s=this._characterMapping.getDomPosition(t),r=this._characterMapping.getDomPosition(i);return U1.readHorizontalRanges(this._getReadingTarget(e),s.partIndex,s.charIndex,r.partIndex,r.charIndex,n)}getColumnOfNodeOffset(e,t){return b8(this._characterMapping,e,t)}}class qie extends p8{_readVisibleRangesForRange(e,t,i,n,s){const r=super._readVisibleRangesForRange(e,t,i,n,s);if(!r||r.length===0||i===n||i===1&&n===this._characterMapping.length)return r;if(!this.input.containsRTL){const a=this._readPixelOffset(e,t,n,s);if(a!==-1){const l=r[r.length-1];l.left=4&&e[0]===3&&e[3]===8}static isStrictChildOfViewLines(e){return e.length>4&&e[0]===3&&e[3]===8}static isChildOfScrollableElement(e){return e.length>=2&&e[0]===3&&e[1]===6}static isChildOfMinimap(e){return e.length>=2&&e[0]===3&&e[1]===9}static isChildOfContentWidgets(e){return e.length>=4&&e[0]===3&&e[3]===1}static isChildOfOverflowGuard(e){return e.length>=1&&e[0]===3}static isChildOfOverflowingContentWidgets(e){return e.length>=1&&e[0]===2}static isChildOfOverlayWidgets(e){return e.length>=2&&e[0]===3&&e[1]===4}static isChildOfOverflowingOverlayWidgets(e){return e.length>=1&&e[0]===5}}class kg{constructor(e,t,i){this.viewModel=e.viewModel;const n=e.configuration.options;this.layoutInfo=n.get(146),this.viewDomNode=t.viewDomNode,this.lineHeight=n.get(67),this.stickyTabStops=n.get(117),this.typicalHalfwidthCharacterWidth=n.get(50).typicalHalfwidthCharacterWidth,this.lastRenderData=i,this._context=e,this._viewHelper=t}getZoneAtCoord(e){return kg.getZoneAtCoord(this._context,e)}static getZoneAtCoord(e,t){const i=e.viewLayout.getWhitespaceAtVerticalOffset(t);if(i){const n=i.verticalOffset+i.height/2,s=e.viewModel.getLineCount();let r=null,a,l=null;return i.afterLineNumber!==s&&(l=new P(i.afterLineNumber+1,1)),i.afterLineNumber>0&&(r=new P(i.afterLineNumber,e.viewModel.getLineMaxColumn(i.afterLineNumber))),l===null?a=r:r===null?a=l:t=e.layoutInfo.glyphMarginLeft,this.isInContentArea=!this.isInMarginArea,this.mouseColumn=Math.max(0,rn._getMouseColumn(this.mouseContentHorizontalOffset,e.typicalHalfwidthCharacterWidth))}}class Xie extends Qie{get target(){return this._useHitTestTarget?this.hitTestResult.value.hitTarget:this._eventTarget}get targetPath(){return this._targetPathCacheElement!==this.target&&(this._targetPathCacheElement=this.target,this._targetPathCacheValue=vr.collect(this.target,this._ctx.viewDomNode)),this._targetPathCacheValue}constructor(e,t,i,n,s){super(e,t,i,n),this.hitTestResult=new ua(()=>rn.doHitTest(this._ctx,this)),this._targetPathCacheElement=null,this._targetPathCacheValue=new Uint8Array(0),this._ctx=e,this._eventTarget=s;const r=!!this._eventTarget;this._useHitTestTarget=!r}toString(){return`pos(${this.pos.x},${this.pos.y}), editorPos(${this.editorPos.x},${this.editorPos.y}), relativePos(${this.relativePos.x},${this.relativePos.y}), mouseVerticalOffset: ${this.mouseVerticalOffset}, mouseContentHorizontalOffset: ${this.mouseContentHorizontalOffset} - target: ${this.target?this.target.outerHTML:null}`}get wouldBenefitFromHitTestTargetSwitch(){return!this._useHitTestTarget&&this.hitTestResult.value.hitTarget!==null&&this.target!==this.hitTestResult.value.hitTarget}switchToHitTestTarget(){this._useHitTestTarget=!0}_getMouseColumn(e=null){return e&&e.columnr.contentLeft+r.width)continue;const a=e.getVerticalOffsetForLineNumber(r.position.lineNumber);if(a<=s&&s<=a+r.height)return t.fulfillContentText(r.position,null,{mightBeForeignElement:!1,injectedText:null})}}return null}static _hitTestViewZone(e,t){const i=e.getZoneAtCoord(t.mouseVerticalOffset);if(i){const n=t.isInContentArea?8:5;return t.fulfillViewZone(n,i.position,i)}return null}static _hitTestTextArea(e,t){return _n.isTextArea(t.targetPath)?e.lastRenderData.lastTextareaPosition?t.fulfillContentText(e.lastRenderData.lastTextareaPosition,null,{mightBeForeignElement:!1,injectedText:null}):t.fulfillTextarea():null}static _hitTestMargin(e,t){if(t.isInMarginArea){const i=e.getFullLineRangeAtCoord(t.mouseVerticalOffset),n=i.range.getStartPosition();let s=Math.abs(t.relativePos.x);const r={isAfterLines:i.isAfterLines,glyphMarginLeft:e.layoutInfo.glyphMarginLeft,glyphMarginWidth:e.layoutInfo.glyphMarginWidth,lineNumbersWidth:e.layoutInfo.lineNumbersWidth,offsetX:s};if(s-=e.layoutInfo.glyphMarginLeft,s<=e.layoutInfo.glyphMarginWidth){const a=e.viewModel.coordinatesConverter.convertViewPositionToModelPosition(i.range.getStartPosition()),l=e.viewModel.glyphLanes.getLanesAtLine(a.lineNumber);return r.glyphMarginLane=l[Math.floor(s/e.lineHeight)],t.fulfillMargin(2,n,i.range,r)}return s-=e.layoutInfo.glyphMarginWidth,s<=e.layoutInfo.lineNumbersWidth?t.fulfillMargin(3,n,i.range,r):(s-=e.layoutInfo.lineNumbersWidth,t.fulfillMargin(4,n,i.range,r))}return null}static _hitTestViewLines(e,t){if(!_n.isChildOfViewLines(t.targetPath))return null;if(e.isInTopPadding(t.mouseVerticalOffset))return t.fulfillContentEmpty(new P(1,1),kO);if(e.isAfterLines(t.mouseVerticalOffset)||e.isInBottomPadding(t.mouseVerticalOffset)){const n=e.viewModel.getLineCount(),s=e.viewModel.getLineMaxColumn(n);return t.fulfillContentEmpty(new P(n,s),kO)}if(_n.isStrictChildOfViewLines(t.targetPath)){const n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset);if(e.viewModel.getLineLength(n)===0){const r=e.getLineWidth(n),a=JS(t.mouseContentHorizontalOffset-r);return t.fulfillContentEmpty(new P(n,1),a)}const s=e.getLineWidth(n);if(t.mouseContentHorizontalOffset>=s){const r=JS(t.mouseContentHorizontalOffset-s),a=new P(n,e.viewModel.getLineMaxColumn(n));return t.fulfillContentEmpty(a,r)}}const i=t.hitTestResult.value;return i.type===1?rn.createMouseTargetFromHitTestPosition(e,t,i.spanNode,i.position,i.injectedText):t.wouldBenefitFromHitTestTargetSwitch?(t.switchToHitTestTarget(),this._createMouseTarget(e,t)):t.fulfillUnknown()}static _hitTestMinimap(e,t){if(_n.isChildOfMinimap(t.targetPath)){const i=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),n=e.viewModel.getLineMaxColumn(i);return t.fulfillScrollbar(new P(i,n))}return null}static _hitTestScrollbarSlider(e,t){if(_n.isChildOfScrollableElement(t.targetPath)&&t.target&&t.target.nodeType===1){const i=t.target.className;if(i&&/\b(slider|scrollbar)\b/.test(i)){const n=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),s=e.viewModel.getLineMaxColumn(n);return t.fulfillScrollbar(new P(n,s))}}return null}static _hitTestScrollbar(e,t){if(_n.isChildOfScrollableElement(t.targetPath)){const i=e.getLineNumberAtVerticalOffset(t.mouseVerticalOffset),n=e.viewModel.getLineMaxColumn(i);return t.fulfillScrollbar(new P(i,n))}return null}getMouseColumn(e){const t=this._context.configuration.options,i=t.get(146),n=this._context.viewLayout.getCurrentScrollLeft()+e.x-i.contentLeft;return rn._getMouseColumn(n,t.get(50).typicalHalfwidthCharacterWidth)}static _getMouseColumn(e,t){return e<0?1:Math.round(e/t)+1}static createMouseTargetFromHitTestPosition(e,t,i,n,s){const r=n.lineNumber,a=n.column,l=e.getLineWidth(r);if(t.mouseContentHorizontalOffset>l){const b=JS(t.mouseContentHorizontalOffset-l);return t.fulfillContentEmpty(n,b)}const c=e.visibleRangeForPosition(r,a);if(!c)return t.fulfillUnknown(n);const d=c.left;if(Math.abs(t.mouseContentHorizontalOffset-d)<1)return t.fulfillContentText(n,null,{mightBeForeignElement:!!s,injectedText:s});const h=[];if(h.push({offset:c.left,column:a}),a>1){const b=e.visibleRangeForPosition(r,a-1);b&&h.push({offset:b.left,column:a-1})}const u=e.viewModel.getLineMaxColumn(r);if(ab.offset-C.offset);const f=t.pos.toClientCoordinates(fe(e.viewDomNode)),g=i.getBoundingClientRect(),p=g.left<=f.clientX&&f.clientX<=g.right;let _=null;for(let b=1;bs)){const a=Math.floor((n+s)/2);let l=t.pos.y+(a-t.mouseVerticalOffset);l<=t.editorPos.y&&(l=t.editorPos.y+1),l>=t.editorPos.y+t.editorPos.height&&(l=t.editorPos.y+t.editorPos.height-1);const c=new xy(t.pos.x,l),d=this._actualDoHitTestWithCaretRangeFromPoint(e,c.toClientCoordinates(fe(e.viewDomNode)));if(d.type===1)return d}return this._actualDoHitTestWithCaretRangeFromPoint(e,t.pos.toClientCoordinates(fe(e.viewDomNode)))}static _actualDoHitTestWithCaretRangeFromPoint(e,t){const i=ag(e.viewDomNode);let n;if(i?typeof i.caretRangeFromPoint>"u"?n=Jie(i,t.clientX,t.clientY):n=i.caretRangeFromPoint(t.clientX,t.clientY):n=e.viewDomNode.ownerDocument.caretRangeFromPoint(t.clientX,t.clientY),!n||!n.startContainer)return new jl;const s=n.startContainer;if(s.nodeType===s.TEXT_NODE){const r=s.parentNode,a=r?r.parentNode:null,l=a?a.parentNode:null;return(l&&l.nodeType===l.ELEMENT_NODE?l.className:null)===sl.CLASS_NAME?Dd.createFromDOMInfo(e,r,n.startOffset):new jl(s.parentNode)}else if(s.nodeType===s.ELEMENT_NODE){const r=s.parentNode,a=r?r.parentNode:null;return(a&&a.nodeType===a.ELEMENT_NODE?a.className:null)===sl.CLASS_NAME?Dd.createFromDOMInfo(e,s,s.textContent.length):new jl(s)}return new jl}static _doHitTestWithCaretPositionFromPoint(e,t){const i=e.viewDomNode.ownerDocument.caretPositionFromPoint(t.clientX,t.clientY);if(i.offsetNode.nodeType===i.offsetNode.TEXT_NODE){const n=i.offsetNode.parentNode,s=n?n.parentNode:null,r=s?s.parentNode:null;return(r&&r.nodeType===r.ELEMENT_NODE?r.className:null)===sl.CLASS_NAME?Dd.createFromDOMInfo(e,i.offsetNode.parentNode,i.offset):new jl(i.offsetNode.parentNode)}if(i.offsetNode.nodeType===i.offsetNode.ELEMENT_NODE){const n=i.offsetNode.parentNode,s=n&&n.nodeType===n.ELEMENT_NODE?n.className:null,r=n?n.parentNode:null,a=r&&r.nodeType===r.ELEMENT_NODE?r.className:null;if(s===sl.CLASS_NAME){const l=i.offsetNode.childNodes[Math.min(i.offset,i.offsetNode.childNodes.length-1)];if(l)return Dd.createFromDOMInfo(e,l,0)}else if(a===sl.CLASS_NAME)return Dd.createFromDOMInfo(e,i.offsetNode,0)}return new jl(i.offsetNode)}static _snapToSoftTabBoundary(e,t){const i=t.getLineContent(e.lineNumber),{tabSize:n}=t.model.getOptions(),s=x_.atomicPosition(i,e.column-1,n,2);return s!==-1?new P(e.lineNumber,s+1):e}static doHitTest(e,t){let i=new jl;if(typeof e.viewDomNode.ownerDocument.caretRangeFromPoint=="function"?i=this._doHitTestWithCaretRangeFromPoint(e,t):e.viewDomNode.ownerDocument.caretPositionFromPoint&&(i=this._doHitTestWithCaretPositionFromPoint(e,t.pos.toClientCoordinates(fe(e.viewDomNode)))),i.type===1){const n=e.viewModel.getInjectedTextAt(i.position),s=e.viewModel.normalizePosition(i.position,2);(n||!s.equals(i.position))&&(i=new C8(s,i.spanNode,n))}return i}}function Jie(o,e,t){const i=document.createRange();let n=o.elementFromPoint(e,t);if(n!==null){for(;n&&n.firstChild&&n.firstChild.nodeType!==n.firstChild.TEXT_NODE&&n.lastChild&&n.lastChild.firstChild;)n=n.lastChild;const s=n.getBoundingClientRect(),r=fe(n),a=r.getComputedStyle(n,null).getPropertyValue("font-style"),l=r.getComputedStyle(n,null).getPropertyValue("font-variant"),c=r.getComputedStyle(n,null).getPropertyValue("font-weight"),d=r.getComputedStyle(n,null).getPropertyValue("font-size"),h=r.getComputedStyle(n,null).getPropertyValue("line-height"),u=r.getComputedStyle(n,null).getPropertyValue("font-family"),f=`${a} ${l} ${c} ${d}/${h} ${u}`,g=n.innerText;let p=s.left,_=0,b;if(e>s.left+s.width)_=g.length;else{const C=yI.getInstance();for(let w=0;wthis._createMouseTarget(r,a),r=>this._getMouseColumn(r))),this.lastMouseLeaveTime=-1,this._height=this._context.configuration.options.get(146).height;const n=new Fie(this.viewHelper.viewDomNode);this._register(n.onContextMenu(this.viewHelper.viewDomNode,r=>this._onContextMenu(r,!0))),this._register(n.onMouseMove(this.viewHelper.viewDomNode,r=>{this._onMouseMove(r),this._mouseLeaveMonitor||(this._mouseLeaveMonitor=U(this.viewHelper.viewDomNode.ownerDocument,"mousemove",a=>{this.viewHelper.viewDomNode.contains(a.target)||this._onMouseLeave(new Wc(a,!1,this.viewHelper.viewDomNode))}))})),this._register(n.onMouseUp(this.viewHelper.viewDomNode,r=>this._onMouseUp(r))),this._register(n.onMouseLeave(this.viewHelper.viewDomNode,r=>this._onMouseLeave(r)));let s=0;this._register(n.onPointerDown(this.viewHelper.viewDomNode,(r,a)=>{s=a})),this._register(U(this.viewHelper.viewDomNode,ee.POINTER_UP,r=>{this._mouseDownOperation.onPointerUp()})),this._register(n.onMouseDown(this.viewHelper.viewDomNode,r=>this._onMouseDown(r,s))),this._setupMouseWheelZoomListener(),this._context.addEventHandler(this)}_setupMouseWheelZoomListener(){const e=FC.INSTANCE;let t=0,i=Xl.getZoomLevel(),n=!1,s=0;const r=l=>{if(this.viewController.emitMouseWheel(l),!this._context.configuration.options.get(76))return;const c=new Rh(l);if(e.acceptStandardWheelEvent(c),e.isPhysicalMouseWheel()){if(a(l)){const d=Xl.getZoomLevel(),h=c.deltaY>0?1:-1;Xl.setZoomLevel(d+h),c.preventDefault(),c.stopPropagation()}}else Date.now()-t>50&&(i=Xl.getZoomLevel(),n=a(l),s=0),t=Date.now(),s+=c.deltaY,n&&(Xl.setZoomLevel(i+s/5),c.preventDefault(),c.stopPropagation())};this._register(U(this.viewHelper.viewDomNode,ee.MOUSE_WHEEL,r,{capture:!0,passive:!1}));function a(l){return Ue?(l.metaKey||l.ctrlKey)&&!l.shiftKey&&!l.altKey:l.ctrlKey&&!l.metaKey&&!l.shiftKey&&!l.altKey}}dispose(){this._context.removeEventHandler(this),this._mouseLeaveMonitor&&(this._mouseLeaveMonitor.dispose(),this._mouseLeaveMonitor=null),super.dispose()}onConfigurationChanged(e){if(e.hasChanged(146)){const t=this._context.configuration.options.get(146).height;this._height!==t&&(this._height=t,this._mouseDownOperation.onHeightChanged())}return!1}onCursorStateChanged(e){return this._mouseDownOperation.onCursorStateChanged(e),!1}onFocusChanged(e){return!1}getTargetAtClientPoint(e,t){const n=new m8(e,t).toPageCoordinates(fe(this.viewHelper.viewDomNode)),s=F2(this.viewHelper.viewDomNode);if(n.ys.y+s.height||n.xs.x+s.width)return null;const r=B2(this.viewHelper.viewDomNode,s,n);return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),s,n,r,null)}_createMouseTarget(e,t){let i=e.target;if(!this.viewHelper.viewDomNode.contains(i)){const n=ag(this.viewHelper.viewDomNode);n&&(i=n.elementsFromPoint(e.posx,e.posy).find(s=>this.viewHelper.viewDomNode.contains(s)))}return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),e.editorPos,e.pos,e.relativePos,t?i:null)}_getMouseColumn(e){return this.mouseTargetFactory.getMouseColumn(e.relativePos)}_onContextMenu(e,t){this.viewController.emitContextMenu({event:e,target:this._createMouseTarget(e,t)})}_onMouseMove(e){this.mouseTargetFactory.mouseTargetIsWidget(e)||e.preventDefault(),!(this._mouseDownOperation.isActive()||e.timestamp{e.preventDefault(),this.viewHelper.focusTextArea()};if(d&&(n||r&&a))h(),this._mouseDownOperation.start(i.type,e,t);else if(s)e.preventDefault();else if(l){const u=i.detail;d&&this.viewHelper.shouldSuppressMouseDownOnViewZone(u.viewZoneId)&&(h(),this._mouseDownOperation.start(i.type,e,t),e.preventDefault())}else c&&this.viewHelper.shouldSuppressMouseDownOnWidget(i.detail)&&(h(),e.preventDefault());this.viewController.emitMouseDown({event:e,target:i})}}class ene extends z{constructor(e,t,i,n,s,r){super(),this._context=e,this._viewController=t,this._viewHelper=i,this._mouseTargetFactory=n,this._createMouseTarget=s,this._getMouseColumn=r,this._mouseMoveMonitor=this._register(new Wie(this._viewHelper.viewDomNode)),this._topBottomDragScrolling=this._register(new tne(this._context,this._viewHelper,this._mouseTargetFactory,(a,l,c)=>this._dispatchMouse(a,l,c))),this._mouseState=new SI,this._currentSelection=new Fe(1,1,1,1),this._isActive=!1,this._lastMouseEvent=null}dispose(){super.dispose()}isActive(){return this._isActive}_onMouseDownThenMove(e){this._lastMouseEvent=e,this._mouseState.setModifiers(e);const t=this._findMousePosition(e,!1);t&&(this._mouseState.isDragAndDrop?this._viewController.emitMouseDrag({event:e,target:t}):t.type===13&&(t.outsidePosition==="above"||t.outsidePosition==="below")?this._topBottomDragScrolling.start(t,e):(this._topBottomDragScrolling.stop(),this._dispatchMouse(t,!0,1)))}start(e,t,i){this._lastMouseEvent=t,this._mouseState.setStartedOnLineNumbers(e===3),this._mouseState.setStartButtons(t),this._mouseState.setModifiers(t);const n=this._findMousePosition(t,!0);if(!n||!n.position)return;this._mouseState.trySetCount(t.detail,n.position),t.detail=this._mouseState.count;const s=this._context.configuration.options;if(!s.get(92)&&s.get(35)&&!s.get(22)&&!this._mouseState.altKey&&t.detail<2&&!this._isActive&&!this._currentSelection.isEmpty()&&n.type===6&&n.position&&this._currentSelection.containsPosition(n.position)){this._mouseState.isDragAndDrop=!0,this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,i,t.buttons,r=>this._onMouseDownThenMove(r),r=>{const a=this._findMousePosition(this._lastMouseEvent,!1);Qa(r)?this._viewController.emitMouseDropCanceled():this._viewController.emitMouseDrop({event:this._lastMouseEvent,target:a?this._createMouseTarget(this._lastMouseEvent,!0):null}),this._stop()});return}this._mouseState.isDragAndDrop=!1,this._dispatchMouse(n,t.shiftKey,1),this._isActive||(this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,i,t.buttons,r=>this._onMouseDownThenMove(r),()=>this._stop()))}_stop(){this._isActive=!1,this._topBottomDragScrolling.stop()}onHeightChanged(){this._mouseMoveMonitor.stopMonitoring()}onPointerUp(){this._mouseMoveMonitor.stopMonitoring()}onCursorStateChanged(e){this._currentSelection=e.selections[0]}_getPositionOutsideEditor(e){const t=e.editorPos,i=this._context.viewModel,n=this._context.viewLayout,s=this._getMouseColumn(e);if(e.posyt.y+t.height){const a=e.posy-t.y-t.height,l=n.getCurrentScrollTop()+e.relativePos.y,c=kg.getZoneAtCoord(this._context,l);if(c){const h=this._helpPositionJumpOverViewZone(c);if(h)return ln.createOutsideEditor(s,h,"below",a)}const d=n.getLineNumberAtVerticalOffset(l);return ln.createOutsideEditor(s,new P(d,i.getLineMaxColumn(d)),"below",a)}const r=n.getLineNumberAtVerticalOffset(n.getCurrentScrollTop()+e.relativePos.y);if(e.posxt.x+t.width){const a=e.posx-t.x-t.width;return ln.createOutsideEditor(s,new P(r,i.getLineMaxColumn(r)),"right",a)}return null}_findMousePosition(e,t){const i=this._getPositionOutsideEditor(e);if(i)return i;const n=this._createMouseTarget(e,t);if(!n.position)return null;if(n.type===8||n.type===5){const r=this._helpPositionJumpOverViewZone(n.detail);if(r)return ln.createViewZone(n.type,n.element,n.mouseColumn,r,n.detail)}return n}_helpPositionJumpOverViewZone(e){const t=new P(this._currentSelection.selectionStartLineNumber,this._currentSelection.selectionStartColumn),i=e.positionBefore,n=e.positionAfter;return i&&n?i.isBefore(t)?i:n:null}_dispatchMouse(e,t,i){e.position&&this._viewController.dispatchMouse({position:e.position,mouseColumn:e.mouseColumn,startedOnLineNumbers:this._mouseState.startedOnLineNumbers,revealType:i,inSelectionMode:t,mouseDownCount:this._mouseState.count,altKey:this._mouseState.altKey,ctrlKey:this._mouseState.ctrlKey,metaKey:this._mouseState.metaKey,shiftKey:this._mouseState.shiftKey,leftButton:this._mouseState.leftButton,middleButton:this._mouseState.middleButton,onInjectedText:e.type===6&&e.detail.injectedText!==null})}}class tne extends z{constructor(e,t,i,n){super(),this._context=e,this._viewHelper=t,this._mouseTargetFactory=i,this._dispatchMouse=n,this._operation=null}dispose(){super.dispose(),this.stop()}start(e,t){this._operation?this._operation.setPosition(e,t):this._operation=new ine(this._context,this._viewHelper,this._mouseTargetFactory,this._dispatchMouse,e,t)}stop(){this._operation&&(this._operation.dispose(),this._operation=null)}}class ine extends z{constructor(e,t,i,n,s,r){super(),this._context=e,this._viewHelper=t,this._mouseTargetFactory=i,this._dispatchMouse=n,this._position=s,this._mouseEvent=r,this._lastTime=Date.now(),this._animationFrameDisposable=fs(fe(r.browserEvent),()=>this._execute())}dispose(){this._animationFrameDisposable.dispose(),super.dispose()}setPosition(e,t){this._position=e,this._mouseEvent=t}_tick(){const e=Date.now(),t=e-this._lastTime;return this._lastTime=e,t}_getScrollSpeed(){const e=this._context.configuration.options.get(67),t=this._context.configuration.options.get(146).height/e,i=this._position.outsideDistance/e;return i<=1.5?Math.max(30,t*(1+i)):i<=3?Math.max(60,t*(2+i)):Math.max(200,t*(7+i))}_execute(){const e=this._context.configuration.options.get(67),t=this._getScrollSpeed(),i=this._tick(),n=t*(i/1e3)*e,s=this._position.outsidePosition==="above"?-n:n;this._context.viewModel.viewLayout.deltaScrollNow(0,s),this._viewHelper.renderNow();const r=this._context.viewLayout.getLinesViewportData(),a=this._position.outsidePosition==="above"?r.startLineNumber:r.endLineNumber;let l;{const c=F2(this._viewHelper.viewDomNode),d=this._context.configuration.options.get(146).horizontalScrollbarHeight,h=new xy(this._mouseEvent.pos.x,c.y+c.height-d-.1),u=B2(this._viewHelper.viewDomNode,c,h);l=this._mouseTargetFactory.createMouseTarget(this._viewHelper.getLastRenderData(),c,h,u,null)}(!l.position||l.position.lineNumber!==a)&&(this._position.outsidePosition==="above"?l=ln.createOutsideEditor(this._position.mouseColumn,new P(a,1),"above",this._position.outsideDistance):l=ln.createOutsideEditor(this._position.mouseColumn,new P(a,this._context.viewModel.getLineMaxColumn(a)),"below",this._position.outsideDistance)),this._dispatchMouse(l,!0,2),this._animationFrameDisposable=fs(fe(l.element),()=>this._execute())}}const Xw=class Xw{get altKey(){return this._altKey}get ctrlKey(){return this._ctrlKey}get metaKey(){return this._metaKey}get shiftKey(){return this._shiftKey}get leftButton(){return this._leftButton}get middleButton(){return this._middleButton}get startedOnLineNumbers(){return this._startedOnLineNumbers}constructor(){this._altKey=!1,this._ctrlKey=!1,this._metaKey=!1,this._shiftKey=!1,this._leftButton=!1,this._middleButton=!1,this._startedOnLineNumbers=!1,this._lastMouseDownPosition=null,this._lastMouseDownPositionEqualCount=0,this._lastMouseDownCount=0,this._lastSetMouseDownCountTime=0,this.isDragAndDrop=!1}get count(){return this._lastMouseDownCount}setModifiers(e){this._altKey=e.altKey,this._ctrlKey=e.ctrlKey,this._metaKey=e.metaKey,this._shiftKey=e.shiftKey}setStartButtons(e){this._leftButton=e.leftButton,this._middleButton=e.middleButton}setStartedOnLineNumbers(e){this._startedOnLineNumbers=e}trySetCount(e,t){const i=new Date().getTime();i-this._lastSetMouseDownCountTime>Xw.CLEAR_MOUSE_DOWN_COUNT_TIME&&(e=1),this._lastSetMouseDownCountTime=i,e>this._lastMouseDownCount+1&&(e=this._lastMouseDownCount+1),this._lastMouseDownPosition&&this._lastMouseDownPosition.equals(t)?this._lastMouseDownPositionEqualCount++:this._lastMouseDownPositionEqualCount=1,this._lastMouseDownPosition=t,this._lastMouseDownCount=Math.min(e,this._lastMouseDownPositionEqualCount)}};Xw.CLEAR_MOUSE_DOWN_COUNT_TIME=400;let SI=Xw;const kf=class kf{constructor(e,t,i,n,s){this.value=e,this.selectionStart=t,this.selectionEnd=i,this.selection=n,this.newlineCountBeforeSelection=s}toString(){return`[ <${this.value}>, selectionStart: ${this.selectionStart}, selectionEnd: ${this.selectionEnd}]`}static readFromTextArea(e,t){const i=e.getValue(),n=e.getSelectionStart(),s=e.getSelectionEnd();let r;if(t){const a=i.substring(0,n),l=t.value.substring(0,t.selectionStart);a===l&&(r=t.newlineCountBeforeSelection)}return new kf(i,n,s,null,r)}collapseSelection(){return this.selectionStart===this.value.length?this:new kf(this.value,this.value.length,this.value.length,null,void 0)}writeToTextArea(e,t,i){t.setValue(e,this.value),i&&t.setSelectionRange(e,this.selectionStart,this.selectionEnd)}deduceEditorPosition(e){if(e<=this.selectionStart){const n=this.value.substring(e,this.selectionStart);return this._finishDeduceEditorPosition(this.selection?.getStartPosition()??null,n,-1)}if(e>=this.selectionEnd){const n=this.value.substring(this.selectionEnd,e);return this._finishDeduceEditorPosition(this.selection?.getEndPosition()??null,n,1)}const t=this.value.substring(this.selectionStart,e);if(t.indexOf("…")===-1)return this._finishDeduceEditorPosition(this.selection?.getStartPosition()??null,t,1);const i=this.value.substring(e,this.selectionEnd);return this._finishDeduceEditorPosition(this.selection?.getEndPosition()??null,i,-1)}_finishDeduceEditorPosition(e,t,i){let n=0,s=-1;for(;(s=t.indexOf(` -`,s+1))!==-1;)n++;return[e,i*t.length,n]}static deduceInput(e,t,i){if(!e)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};const n=Math.min(Th(e.value,t.value),e.selectionStart,t.selectionStart),s=Math.min(Px(e.value,t.value),e.value.length-e.selectionEnd,t.value.length-t.selectionEnd);e.value.substring(n,e.value.length-s);const r=t.value.substring(n,t.value.length-s),a=e.selectionStart-n,l=e.selectionEnd-n,c=t.selectionStart-n,d=t.selectionEnd-n;if(c===d){const u=e.selectionStart-n;return{text:r,replacePrevCharCnt:u,replaceNextCharCnt:0,positionDelta:0}}const h=l-a;return{text:r,replacePrevCharCnt:h,replaceNextCharCnt:0,positionDelta:0}}static deduceAndroidCompositionInput(e,t){if(!e)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};if(e.value===t.value)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:t.selectionEnd-e.selectionEnd};const i=Math.min(Th(e.value,t.value),e.selectionEnd),n=Math.min(Px(e.value,t.value),e.value.length-e.selectionEnd),s=e.value.substring(i,e.value.length-n),r=t.value.substring(i,t.value.length-n);e.selectionStart-i;const a=e.selectionEnd-i;t.selectionStart-i;const l=t.selectionEnd-i;return{text:r,replacePrevCharCnt:a,replaceNextCharCnt:s.length-a,positionDelta:l-r.length}}};kf.EMPTY=new kf("",0,0,null,void 0);let cn=kf;class df{static _getPageOfLine(e,t){return Math.floor((e-1)/t)}static _getRangeForPage(e,t){const i=e*t,n=i+1,s=i+t;return new I(n,1,s+1,1)}static fromEditorSelection(e,t,i,n){const r=df._getPageOfLine(t.startLineNumber,i),a=df._getRangeForPage(r,i),l=df._getPageOfLine(t.endLineNumber,i),c=df._getRangeForPage(l,i);let d=a.intersectRanges(new I(1,1,t.startLineNumber,t.startColumn));if(n&&e.getValueLengthInRange(d,1)>500){const b=e.modifyPosition(d.getEndPosition(),-500);d=I.fromPositions(b,d.getEndPosition())}const h=e.getValueInRange(d,1),u=e.getLineCount(),f=e.getLineMaxColumn(u);let g=c.intersectRanges(new I(t.endLineNumber,t.endColumn,u,f));if(n&&e.getValueLengthInRange(g,1)>500){const b=e.modifyPosition(g.getStartPosition(),500);g=I.fromPositions(g.getStartPosition(),b)}const p=e.getValueInRange(g,1);let _;if(r===l||r+1===l)_=e.getValueInRange(t,1);else{const b=a.intersectRanges(t),C=c.intersectRanges(t);_=e.getValueInRange(b,1)+"…"+e.getValueInRange(C,1)}return n&&_.length>2*500&&(_=_.substring(0,500)+"…"+_.substring(_.length-500,_.length)),new cn(h+_+p,h.length,h.length+_.length,t,d.endLineNumber-d.startLineNumber)}}var nne=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},DO=function(o,e){return function(t,i){e(t,i,o)}},Dv;(function(o){o.Tap="-monaco-textarea-synthetic-tap"})(Dv||(Dv={}));const Jw=class Jw{constructor(){this._lastState=null}set(e,t){this._lastState={lastCopiedValue:e,data:t}}get(e){return this._lastState&&this._lastState.lastCopiedValue===e?this._lastState.data:(this._lastState=null,null)}};Jw.INSTANCE=new Jw;let Iv=Jw;class sne{constructor(){this._lastTypeTextLength=0}handleCompositionUpdate(e){e=e||"";const t={text:e,replacePrevCharCnt:this._lastTypeTextLength,replaceNextCharCnt:0,positionDelta:0};return this._lastTypeTextLength=e.length,t}}let LI=class extends z{get textAreaState(){return this._textAreaState}constructor(e,t,i,n,s,r){super(),this._host=e,this._textArea=t,this._OS=i,this._browser=n,this._accessibilityService=s,this._logService=r,this._onFocus=this._register(new A),this.onFocus=this._onFocus.event,this._onBlur=this._register(new A),this.onBlur=this._onBlur.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._onKeyUp=this._register(new A),this.onKeyUp=this._onKeyUp.event,this._onCut=this._register(new A),this.onCut=this._onCut.event,this._onPaste=this._register(new A),this.onPaste=this._onPaste.event,this._onType=this._register(new A),this.onType=this._onType.event,this._onCompositionStart=this._register(new A),this.onCompositionStart=this._onCompositionStart.event,this._onCompositionUpdate=this._register(new A),this.onCompositionUpdate=this._onCompositionUpdate.event,this._onCompositionEnd=this._register(new A),this.onCompositionEnd=this._onCompositionEnd.event,this._onSelectionChangeRequest=this._register(new A),this.onSelectionChangeRequest=this._onSelectionChangeRequest.event,this._asyncFocusGainWriteScreenReaderContent=this._register(new Dn),this._asyncTriggerCut=this._register(new ci(()=>this._onCut.fire(),0)),this._textAreaState=cn.EMPTY,this._selectionChangeListener=null,this._accessibilityService.isScreenReaderOptimized()&&this.writeNativeTextAreaContent("ctor"),this._register(J.runAndSubscribe(this._accessibilityService.onDidChangeScreenReaderOptimized,()=>{this._accessibilityService.isScreenReaderOptimized()&&!this._asyncFocusGainWriteScreenReaderContent.value?this._asyncFocusGainWriteScreenReaderContent.value=this._register(new ci(()=>this.writeNativeTextAreaContent("asyncFocusGain"),0)):this._asyncFocusGainWriteScreenReaderContent.clear()})),this._hasFocus=!1,this._currentComposition=null;let a=null;this._register(this._textArea.onKeyDown(l=>{const c=new Nt(l);(c.keyCode===114||this._currentComposition&&c.keyCode===1)&&c.stopPropagation(),c.equals(9)&&c.preventDefault(),a=c,this._onKeyDown.fire(c)})),this._register(this._textArea.onKeyUp(l=>{const c=new Nt(l);this._onKeyUp.fire(c)})),this._register(this._textArea.onCompositionStart(l=>{const c=new sne;if(this._currentComposition){this._currentComposition=c;return}if(this._currentComposition=c,this._OS===2&&a&&a.equals(114)&&this._textAreaState.selectionStart===this._textAreaState.selectionEnd&&this._textAreaState.selectionStart>0&&this._textAreaState.value.substr(this._textAreaState.selectionStart-1,1)===l.data&&(a.code==="ArrowRight"||a.code==="ArrowLeft")){c.handleCompositionUpdate("x"),this._onCompositionStart.fire({data:l.data});return}if(this._browser.isAndroid){this._onCompositionStart.fire({data:l.data});return}this._onCompositionStart.fire({data:l.data})})),this._register(this._textArea.onCompositionUpdate(l=>{const c=this._currentComposition;if(!c)return;if(this._browser.isAndroid){const h=cn.readFromTextArea(this._textArea,this._textAreaState),u=cn.deduceAndroidCompositionInput(this._textAreaState,h);this._textAreaState=h,this._onType.fire(u),this._onCompositionUpdate.fire(l);return}const d=c.handleCompositionUpdate(l.data);this._textAreaState=cn.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(d),this._onCompositionUpdate.fire(l)})),this._register(this._textArea.onCompositionEnd(l=>{const c=this._currentComposition;if(!c)return;if(this._currentComposition=null,this._browser.isAndroid){const h=cn.readFromTextArea(this._textArea,this._textAreaState),u=cn.deduceAndroidCompositionInput(this._textAreaState,h);this._textAreaState=h,this._onType.fire(u),this._onCompositionEnd.fire();return}const d=c.handleCompositionUpdate(l.data);this._textAreaState=cn.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(d),this._onCompositionEnd.fire()})),this._register(this._textArea.onInput(l=>{if(this._textArea.setIgnoreSelectionChangeTime("received input event"),this._currentComposition)return;const c=cn.readFromTextArea(this._textArea,this._textAreaState),d=cn.deduceInput(this._textAreaState,c,this._OS===2);d.replacePrevCharCnt===0&&d.text.length===1&&(wi(d.text.charCodeAt(0))||d.text.charCodeAt(0)===127)||(this._textAreaState=c,(d.text!==""||d.replacePrevCharCnt!==0||d.replaceNextCharCnt!==0||d.positionDelta!==0)&&this._onType.fire(d))})),this._register(this._textArea.onCut(l=>{this._textArea.setIgnoreSelectionChangeTime("received cut event"),this._ensureClipboardGetsEditorSelection(l),this._asyncTriggerCut.schedule()})),this._register(this._textArea.onCopy(l=>{this._ensureClipboardGetsEditorSelection(l)})),this._register(this._textArea.onPaste(l=>{if(this._textArea.setIgnoreSelectionChangeTime("received paste event"),l.preventDefault(),!l.clipboardData)return;let[c,d]=IO.getTextData(l.clipboardData);c&&(d=d||Iv.INSTANCE.get(c),this._onPaste.fire({text:c,metadata:d}))})),this._register(this._textArea.onFocus(()=>{const l=this._hasFocus;this._setHasFocus(!0),this._accessibilityService.isScreenReaderOptimized()&&this._browser.isSafari&&!l&&this._hasFocus&&(this._asyncFocusGainWriteScreenReaderContent.value||(this._asyncFocusGainWriteScreenReaderContent.value=new ci(()=>this.writeNativeTextAreaContent("asyncFocusGain"),0)),this._asyncFocusGainWriteScreenReaderContent.value.schedule())})),this._register(this._textArea.onBlur(()=>{this._currentComposition&&(this._currentComposition=null,this.writeNativeTextAreaContent("blurWithoutCompositionEnd"),this._onCompositionEnd.fire()),this._setHasFocus(!1)})),this._register(this._textArea.onSyntheticTap(()=>{this._browser.isAndroid&&this._currentComposition&&(this._currentComposition=null,this.writeNativeTextAreaContent("tapWithoutCompositionEnd"),this._onCompositionEnd.fire())}))}_installSelectionChangeListener(){let e=0;return U(this._textArea.ownerDocument,"selectionchange",t=>{if(lc.onSelectionChange(),!this._hasFocus||this._currentComposition||!this._browser.isChrome)return;const i=Date.now(),n=i-e;if(e=i,n<5)return;const s=i-this._textArea.getIgnoreSelectionChangeTime();if(this._textArea.resetSelectionChangeTime(),s<100||!this._textAreaState.selection)return;const r=this._textArea.getValue();if(this._textAreaState.value!==r)return;const a=this._textArea.getSelectionStart(),l=this._textArea.getSelectionEnd();if(this._textAreaState.selectionStart===a&&this._textAreaState.selectionEnd===l)return;const c=this._textAreaState.deduceEditorPosition(a),d=this._host.deduceModelPosition(c[0],c[1],c[2]),h=this._textAreaState.deduceEditorPosition(l),u=this._host.deduceModelPosition(h[0],h[1],h[2]),f=new Fe(d.lineNumber,d.column,u.lineNumber,u.column);this._onSelectionChangeRequest.fire(f)})}dispose(){super.dispose(),this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null)}focusTextArea(){this._setHasFocus(!0),this.refreshFocusState()}isFocused(){return this._hasFocus}refreshFocusState(){this._setHasFocus(this._textArea.hasFocus())}_setHasFocus(e){this._hasFocus!==e&&(this._hasFocus=e,this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null),this._hasFocus&&(this._selectionChangeListener=this._installSelectionChangeListener()),this._hasFocus&&this.writeNativeTextAreaContent("focusgain"),this._hasFocus?this._onFocus.fire():this._onBlur.fire())}_setAndWriteTextAreaState(e,t){this._hasFocus||(t=t.collapseSelection()),t.writeToTextArea(e,this._textArea,this._hasFocus),this._textAreaState=t}writeNativeTextAreaContent(e){!this._accessibilityService.isScreenReaderOptimized()&&e==="render"||this._currentComposition||(this._logService.trace(`writeTextAreaState(reason: ${e})`),this._setAndWriteTextAreaState(e,this._host.getScreenReaderContent()))}_ensureClipboardGetsEditorSelection(e){const t=this._host.getDataToCopy(),i={version:1,isFromEmptySelection:t.isFromEmptySelection,multicursorText:t.multicursorText,mode:t.mode};Iv.INSTANCE.set(this._browser.isFirefox?t.text.replace(/\r\n/g,` -`):t.text,i),e.preventDefault(),e.clipboardData&&IO.setTextData(e.clipboardData,t.text,t.html,i)}};LI=nne([DO(4,ms),DO(5,gs)],LI);const IO={getTextData(o){const e=o.getData(il.text);let t=null;const i=o.getData("vscode-editor-data");if(typeof i=="string")try{t=JSON.parse(i),t.version!==1&&(t=null)}catch{}return e.length===0&&t===null&&o.files.length>0?[Array.prototype.slice.call(o.files,0).map(s=>s.name).join(` -`),null]:[e,t]},setTextData(o,e,t,i){o.setData(il.text,e),typeof t=="string"&&o.setData("text/html",t),o.setData("vscode-editor-data",JSON.stringify(i))}};class one extends z{get ownerDocument(){return this._actual.ownerDocument}constructor(e){super(),this._actual=e,this.onKeyDown=this._register(new ze(this._actual,"keydown")).event,this.onKeyUp=this._register(new ze(this._actual,"keyup")).event,this.onCompositionStart=this._register(new ze(this._actual,"compositionstart")).event,this.onCompositionUpdate=this._register(new ze(this._actual,"compositionupdate")).event,this.onCompositionEnd=this._register(new ze(this._actual,"compositionend")).event,this.onBeforeInput=this._register(new ze(this._actual,"beforeinput")).event,this.onInput=this._register(new ze(this._actual,"input")).event,this.onCut=this._register(new ze(this._actual,"cut")).event,this.onCopy=this._register(new ze(this._actual,"copy")).event,this.onPaste=this._register(new ze(this._actual,"paste")).event,this.onFocus=this._register(new ze(this._actual,"focus")).event,this.onBlur=this._register(new ze(this._actual,"blur")).event,this._onSyntheticTap=this._register(new A),this.onSyntheticTap=this._onSyntheticTap.event,this._ignoreSelectionChangeTime=0,this._register(this.onKeyDown(()=>lc.onKeyDown())),this._register(this.onBeforeInput(()=>lc.onBeforeInput())),this._register(this.onInput(()=>lc.onInput())),this._register(this.onKeyUp(()=>lc.onKeyUp())),this._register(U(this._actual,Dv.Tap,()=>this._onSyntheticTap.fire()))}hasFocus(){const e=ag(this._actual);return e?e.activeElement===this._actual:this._actual.isConnected?Xi()===this._actual:!1}setIgnoreSelectionChangeTime(e){this._ignoreSelectionChangeTime=Date.now()}getIgnoreSelectionChangeTime(){return this._ignoreSelectionChangeTime}resetSelectionChangeTime(){this._ignoreSelectionChangeTime=0}getValue(){return this._actual.value}setValue(e,t){const i=this._actual;i.value!==t&&(this.setIgnoreSelectionChangeTime("setValue"),i.value=t)}getSelectionStart(){return this._actual.selectionDirection==="backward"?this._actual.selectionEnd:this._actual.selectionStart}getSelectionEnd(){return this._actual.selectionDirection==="backward"?this._actual.selectionStart:this._actual.selectionEnd}setSelectionRange(e,t,i){const n=this._actual;let s=null;const r=ag(n);r?s=r.activeElement:s=Xi();const a=fe(s),l=s===n,c=n.selectionStart,d=n.selectionEnd;if(l&&c===t&&d===i){Mo&&a.parent!==a&&n.focus();return}if(l){this.setIgnoreSelectionChangeTime("setSelectionRange"),n.setSelectionRange(t,i),Mo&&a.parent!==a&&n.focus();return}try{const h=IV(n);this.setIgnoreSelectionChangeTime("setSelectionRange"),n.focus(),n.setSelectionRange(t,i),EV(n,h)}catch{}}}class rne extends W2{constructor(e,t,i){super(e,t,i),this._register(fn.addTarget(this.viewHelper.linesContentDomNode)),this._register(U(this.viewHelper.linesContentDomNode,St.Tap,s=>this.onTap(s))),this._register(U(this.viewHelper.linesContentDomNode,St.Change,s=>this.onChange(s))),this._register(U(this.viewHelper.linesContentDomNode,St.Contextmenu,s=>this._onContextMenu(new Wc(s,!1,this.viewHelper.viewDomNode),!1))),this._lastPointerType="mouse",this._register(U(this.viewHelper.linesContentDomNode,"pointerdown",s=>{const r=s.pointerType;if(r==="mouse"){this._lastPointerType="mouse";return}else r==="touch"?this._lastPointerType="touch":this._lastPointerType="pen"}));const n=new Bie(this.viewHelper.viewDomNode);this._register(n.onPointerMove(this.viewHelper.viewDomNode,s=>this._onMouseMove(s))),this._register(n.onPointerUp(this.viewHelper.viewDomNode,s=>this._onMouseUp(s))),this._register(n.onPointerLeave(this.viewHelper.viewDomNode,s=>this._onMouseLeave(s))),this._register(n.onPointerDown(this.viewHelper.viewDomNode,(s,r)=>this._onMouseDown(s,r)))}onTap(e){!e.initialTarget||!this.viewHelper.linesContentDomNode.contains(e.initialTarget)||(e.preventDefault(),this.viewHelper.focusTextArea(),this._dispatchGesture(e,!1))}onChange(e){this._lastPointerType==="touch"&&this._context.viewModel.viewLayout.deltaScrollNow(-e.translationX,-e.translationY),this._lastPointerType==="pen"&&this._dispatchGesture(e,!0)}_dispatchGesture(e,t){const i=this._createMouseTarget(new Wc(e,!1,this.viewHelper.viewDomNode),!1);i.position&&this.viewController.dispatchMouse({position:i.position,mouseColumn:i.position.column,startedOnLineNumbers:!1,revealType:1,mouseDownCount:e.tapCount,inSelectionMode:t,altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1,leftButton:!1,middleButton:!1,onInjectedText:i.type===6&&i.detail.injectedText!==null})}_onMouseDown(e,t){e.browserEvent.pointerType!=="touch"&&super._onMouseDown(e,t)}}class ane extends W2{constructor(e,t,i){super(e,t,i),this._register(fn.addTarget(this.viewHelper.linesContentDomNode)),this._register(U(this.viewHelper.linesContentDomNode,St.Tap,n=>this.onTap(n))),this._register(U(this.viewHelper.linesContentDomNode,St.Change,n=>this.onChange(n))),this._register(U(this.viewHelper.linesContentDomNode,St.Contextmenu,n=>this._onContextMenu(new Wc(n,!1,this.viewHelper.viewDomNode),!1)))}onTap(e){e.preventDefault(),this.viewHelper.focusTextArea();const t=this._createMouseTarget(new Wc(e,!1,this.viewHelper.viewDomNode),!1);if(t.position){const i=document.createEvent("CustomEvent");i.initEvent(Dv.Tap,!1,!0),this.viewHelper.dispatchTextAreaEvent(i),this.viewController.moveTo(t.position,1)}}onChange(e){this._context.viewModel.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)}}class lne extends z{constructor(e,t,i){super(),(Tc||S6&&V5)&&KN.pointerEvents?this.handler=this._register(new rne(e,t,i)):_t.TouchEvent?this.handler=this._register(new ane(e,t,i)):this.handler=this._register(new W2(e,t,i))}getTargetAtClientPoint(e,t){return this.handler.getTargetAtClientPoint(e,t)}}class mu extends ab{}const e0=class e0 extends mu{constructor(e){super(),this._context=e,this._readConfig(),this._lastCursorModelPosition=new P(1,1),this._renderResult=null,this._activeLineNumber=1,this._context.addEventHandler(this)}_readConfig(){const e=this._context.configuration.options;this._lineHeight=e.get(67);const t=e.get(68);this._renderLineNumbers=t.renderType,this._renderCustomLineNumbers=t.renderFn,this._renderFinalNewline=e.get(96);const i=e.get(146);this._lineNumbersLeft=i.lineNumbersLeft,this._lineNumbersWidth=i.lineNumbersWidth}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){return this._readConfig(),!0}onCursorStateChanged(e){const t=e.selections[0].getPosition();this._lastCursorModelPosition=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(t);let i=!1;return this._activeLineNumber!==t.lineNumber&&(this._activeLineNumber=t.lineNumber,i=!0),(this._renderLineNumbers===2||this._renderLineNumbers===3)&&(i=!0),i}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}onDecorationsChanged(e){return e.affectsLineNumber}_getLineRenderLineNumber(e){const t=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new P(e,1));if(t.column!==1)return"";const i=t.lineNumber;if(this._renderCustomLineNumbers)return this._renderCustomLineNumbers(i);if(this._renderLineNumbers===2){const n=Math.abs(this._lastCursorModelPosition.lineNumber-i);return n===0?''+i+"":String(n)}if(this._renderLineNumbers===3){if(this._lastCursorModelPosition.lineNumber===i||i%10===0)return String(i);const n=this._context.viewModel.getLineCount();return i===n?String(i):""}return String(i)}prepareRender(e){if(this._renderLineNumbers===0){this._renderResult=null;return}const t=Un?this._lineHeight%2===0?" lh-even":" lh-odd":"",i=e.visibleRange.startLineNumber,n=e.visibleRange.endLineNumber,s=this._context.viewModel.getDecorationsInViewport(e.visibleRange).filter(c=>!!c.options.lineNumberClassName);s.sort((c,d)=>I.compareRangesUsingEnds(c.range,d.range));let r=0;const a=this._context.viewModel.getLineCount(),l=[];for(let c=i;c<=n;c++){const d=c-i;let h=this._getLineRenderLineNumber(c),u="";for(;r${h}`}this._renderResult=l}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}};e0.CLASS_NAME="line-numbers";let Ev=e0;Sr((o,e)=>{const t=o.getColor(qY),i=o.getColor(aQ);i?e.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${i}; }`):t&&e.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${t.transparent(.4)}; }`)});const Df=class Df extends _s{constructor(e){super(e);const t=this._context.configuration.options,i=t.get(146);this._canUseLayerHinting=!t.get(32),this._contentLeft=i.contentLeft,this._glyphMarginLeft=i.glyphMarginLeft,this._glyphMarginWidth=i.glyphMarginWidth,this._domNode=ot(document.createElement("div")),this._domNode.setClassName(Df.OUTER_CLASS_NAME),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._glyphMarginBackgroundDomNode=ot(document.createElement("div")),this._glyphMarginBackgroundDomNode.setClassName(Df.CLASS_NAME),this._domNode.appendChild(this._glyphMarginBackgroundDomNode)}dispose(){super.dispose()}getDomNode(){return this._domNode}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(146);return this._canUseLayerHinting=!t.get(32),this._contentLeft=i.contentLeft,this._glyphMarginLeft=i.glyphMarginLeft,this._glyphMarginWidth=i.glyphMarginWidth,!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollTopChanged}prepareRender(e){}render(e){this._domNode.setLayerHinting(this._canUseLayerHinting),this._domNode.setContain("strict");const t=e.scrollTop-e.bigNumbersDelta;this._domNode.setTop(-t);const i=Math.min(e.scrollHeight,1e6);this._domNode.setHeight(i),this._domNode.setWidth(this._contentLeft),this._glyphMarginBackgroundDomNode.setLeft(this._glyphMarginLeft),this._glyphMarginBackgroundDomNode.setWidth(this._glyphMarginWidth),this._glyphMarginBackgroundDomNode.setHeight(i)}};Df.CLASS_NAME="glyph-margin",Df.OUTER_CLASS_NAME="margin";let Nv=Df;const Zf="monaco-mouse-cursor-text";var cne=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},EO=function(o,e){return function(t,i){e(t,i,o)}};class dne{constructor(e,t,i,n,s){this._context=e,this.modelLineNumber=t,this.distanceToModelLineStart=i,this.widthOfHiddenLineTextBefore=n,this.distanceToModelLineEnd=s,this._visibleTextAreaBrand=void 0,this.startPosition=null,this.endPosition=null,this.visibleTextareaStart=null,this.visibleTextareaEnd=null,this._previousPresentation=null}prepareRender(e){const t=new P(this.modelLineNumber,this.distanceToModelLineStart+1),i=new P(this.modelLineNumber,this._context.viewModel.model.getLineMaxColumn(this.modelLineNumber)-this.distanceToModelLineEnd);this.startPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(t),this.endPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(i),this.startPosition.lineNumber===this.endPosition.lineNumber?(this.visibleTextareaStart=e.visibleRangeForPosition(this.startPosition),this.visibleTextareaEnd=e.visibleRangeForPosition(this.endPosition)):(this.visibleTextareaStart=null,this.visibleTextareaEnd=null)}definePresentation(e){return this._previousPresentation||(e?this._previousPresentation=e:this._previousPresentation={foreground:1,italic:!1,bold:!1,underline:!1,strikethrough:!1}),this._previousPresentation}}const eL=Mo;let xI=class extends _s{constructor(e,t,i,n,s){super(e),this._keybindingService=n,this._instantiationService=s,this._primaryCursorPosition=new P(1,1),this._primaryCursorVisibleRange=null,this._viewController=t,this._visibleRangeProvider=i,this._scrollLeft=0,this._scrollTop=0;const r=this._context.configuration.options,a=r.get(146);this._setAccessibilityOptions(r),this._contentLeft=a.contentLeft,this._contentWidth=a.contentWidth,this._contentHeight=a.height,this._fontInfo=r.get(50),this._lineHeight=r.get(67),this._emptySelectionClipboard=r.get(37),this._copyWithSyntaxHighlighting=r.get(25),this._visibleTextArea=null,this._selections=[new Fe(1,1,1,1)],this._modelSelections=[new Fe(1,1,1,1)],this._lastRenderPosition=null,this.textArea=ot(document.createElement("textarea")),vr.write(this.textArea,7),this.textArea.setClassName(`inputarea ${Zf}`),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");const{tabSize:l}=this._context.viewModel.model.getOptions();this.textArea.domNode.style.tabSize=`${l*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("autocorrect","off"),this.textArea.setAttribute("autocapitalize","off"),this.textArea.setAttribute("autocomplete","off"),this.textArea.setAttribute("spellcheck","false"),this.textArea.setAttribute("aria-label",this._getAriaLabel(r)),this.textArea.setAttribute("aria-required",r.get(5)?"true":"false"),this.textArea.setAttribute("tabindex",String(r.get(125))),this.textArea.setAttribute("role","textbox"),this.textArea.setAttribute("aria-roledescription",m("editor","editor")),this.textArea.setAttribute("aria-multiline","true"),this.textArea.setAttribute("aria-autocomplete",r.get(92)?"none":"both"),this._ensureReadOnlyAttribute(),this.textAreaCover=ot(document.createElement("div")),this.textAreaCover.setPosition("absolute");const c={getLineCount:()=>this._context.viewModel.getLineCount(),getLineMaxColumn:u=>this._context.viewModel.getLineMaxColumn(u),getValueInRange:(u,f)=>this._context.viewModel.getValueInRange(u,f),getValueLengthInRange:(u,f)=>this._context.viewModel.getValueLengthInRange(u,f),modifyPosition:(u,f)=>this._context.viewModel.modifyPosition(u,f)},d={getDataToCopy:()=>{const u=this._context.viewModel.getPlainTextToCopy(this._modelSelections,this._emptySelectionClipboard,kn),f=this._context.viewModel.model.getEOL(),g=this._emptySelectionClipboard&&this._modelSelections.length===1&&this._modelSelections[0].isEmpty(),p=Array.isArray(u)?u:null,_=Array.isArray(u)?u.join(f):u;let b,C=null;if(this._copyWithSyntaxHighlighting&&_.length<65536){const w=this._context.viewModel.getRichTextToCopy(this._modelSelections,this._emptySelectionClipboard);w&&(b=w.html,C=w.mode)}return{isFromEmptySelection:g,multicursorText:p,text:_,html:b,mode:C}},getScreenReaderContent:()=>{if(this._accessibilitySupport===1){const u=this._selections[0];if(Ue&&u.isEmpty()){const g=u.getStartPosition();let p=this._getWordBeforePosition(g);if(p.length===0&&(p=this._getCharacterBeforePosition(g)),p.length>0)return new cn(p,p.length,p.length,I.fromPositions(g),0)}if(Ue&&!u.isEmpty()&&c.getValueLengthInRange(u,0)<500){const g=c.getValueInRange(u,0);return new cn(g,0,g.length,u,0)}if(Ac&&!u.isEmpty()){const g="vscode-placeholder";return new cn(g,0,g.length,null,void 0)}return cn.EMPTY}if(eR){const u=this._selections[0];if(u.isEmpty()){const f=u.getStartPosition(),[g,p]=this._getAndroidWordAtPosition(f);if(g.length>0)return new cn(g,p,p,I.fromPositions(f),0)}return cn.EMPTY}return df.fromEditorSelection(c,this._selections[0],this._accessibilityPageSize,this._accessibilitySupport===0)},deduceModelPosition:(u,f,g)=>this._context.viewModel.deduceModelPositionRelativeToViewPosition(u,f,g)},h=this._register(new one(this.textArea.domNode));this._textAreaInput=this._register(this._instantiationService.createInstance(LI,d,h,Ns,{isAndroid:eR,isChrome:V_,isFirefox:Mo,isSafari:Ac})),this._register(this._textAreaInput.onKeyDown(u=>{this._viewController.emitKeyDown(u)})),this._register(this._textAreaInput.onKeyUp(u=>{this._viewController.emitKeyUp(u)})),this._register(this._textAreaInput.onPaste(u=>{let f=!1,g=null,p=null;u.metadata&&(f=this._emptySelectionClipboard&&!!u.metadata.isFromEmptySelection,g=typeof u.metadata.multicursorText<"u"?u.metadata.multicursorText:null,p=u.metadata.mode),this._viewController.paste(u.text,f,g,p)})),this._register(this._textAreaInput.onCut(()=>{this._viewController.cut()})),this._register(this._textAreaInput.onType(u=>{u.replacePrevCharCnt||u.replaceNextCharCnt||u.positionDelta?this._viewController.compositionType(u.text,u.replacePrevCharCnt,u.replaceNextCharCnt,u.positionDelta):this._viewController.type(u.text)})),this._register(this._textAreaInput.onSelectionChangeRequest(u=>{this._viewController.setSelection(u)})),this._register(this._textAreaInput.onCompositionStart(u=>{const f=this.textArea.domNode,g=this._modelSelections[0],{distanceToModelLineStart:p,widthOfHiddenTextBefore:_}=(()=>{const C=f.value.substring(0,Math.min(f.selectionStart,f.selectionEnd)),w=C.lastIndexOf(` -`),v=C.substring(w+1),y=v.lastIndexOf(" "),x=v.length-y-1,L=g.getStartPosition(),E=Math.min(L.column-1,x),N=L.column-1-E,H=v.substring(0,v.length-E),{tabSize:F}=this._context.viewModel.model.getOptions(),W=hne(this.textArea.domNode.ownerDocument,H,this._fontInfo,F);return{distanceToModelLineStart:N,widthOfHiddenTextBefore:W}})(),{distanceToModelLineEnd:b}=(()=>{const C=f.value.substring(Math.max(f.selectionStart,f.selectionEnd)),w=C.indexOf(` -`),v=w===-1?C:C.substring(0,w),y=v.indexOf(" "),x=y===-1?v.length:v.length-y-1,L=g.getEndPosition(),E=Math.min(this._context.viewModel.model.getLineMaxColumn(L.lineNumber)-L.column,x);return{distanceToModelLineEnd:this._context.viewModel.model.getLineMaxColumn(L.lineNumber)-L.column-E}})();this._context.viewModel.revealRange("keyboard",!0,I.fromPositions(this._selections[0].getStartPosition()),0,1),this._visibleTextArea=new dne(this._context,g.startLineNumber,p,_,b),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render(),this.textArea.setClassName(`inputarea ${Zf} ime-input`),this._viewController.compositionStart(),this._context.viewModel.onCompositionStart()})),this._register(this._textAreaInput.onCompositionUpdate(u=>{this._visibleTextArea&&(this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render())})),this._register(this._textAreaInput.onCompositionEnd(()=>{this._visibleTextArea=null,this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._render(),this.textArea.setClassName(`inputarea ${Zf}`),this._viewController.compositionEnd(),this._context.viewModel.onCompositionEnd()})),this._register(this._textAreaInput.onFocus(()=>{this._context.viewModel.setHasFocus(!0)})),this._register(this._textAreaInput.onBlur(()=>{this._context.viewModel.setHasFocus(!1)})),this._register(Qm.onDidChange(()=>{this._ensureReadOnlyAttribute()}))}writeScreenReaderContent(e){this._textAreaInput.writeNativeTextAreaContent(e)}dispose(){super.dispose()}_getAndroidWordAtPosition(e){const t='`~!@#$%^&*()-=+[{]}\\|;:",.<>/?',i=this._context.viewModel.getLineContent(e.lineNumber),n=cg(t,[]);let s=!0,r=e.column,a=!0,l=e.column,c=0;for(;c<50&&(s||a);){if(s&&r<=1&&(s=!1),s){const d=i.charCodeAt(r-2);n.get(d)!==0?s=!1:r--}if(a&&l>i.length&&(a=!1),a){const d=i.charCodeAt(l-1);n.get(d)!==0?a=!1:l++}c++}return[i.substring(r-1,l-1),e.column-r]}_getWordBeforePosition(e){const t=this._context.viewModel.getLineContent(e.lineNumber),i=cg(this._context.configuration.options.get(132),[]);let n=e.column,s=0;for(;n>1;){const r=t.charCodeAt(n-2);if(i.get(r)!==0||s>50)return t.substring(n-1,e.column-1);s++,n--}return t.substring(0,e.column-1)}_getCharacterBeforePosition(e){if(e.column>1){const i=this._context.viewModel.getLineContent(e.lineNumber).charAt(e.column-2);if(!wi(i.charCodeAt(0)))return i}return""}_getAriaLabel(e){if(e.get(2)===1){const i=this._keybindingService.lookupKeybinding("editor.action.toggleScreenReaderAccessibilityMode")?.getAriaLabel(),n=this._keybindingService.lookupKeybinding("workbench.action.showCommands")?.getAriaLabel(),s=this._keybindingService.lookupKeybinding("workbench.action.openGlobalKeybindings")?.getAriaLabel(),r=m("accessibilityModeOff","The editor is not accessible at this time.");return i?m("accessibilityOffAriaLabel","{0} To enable screen reader optimized mode, use {1}",r,i):n?m("accessibilityOffAriaLabelNoKb","{0} To enable screen reader optimized mode, open the quick pick with {1} and run the command Toggle Screen Reader Accessibility Mode, which is currently not triggerable via keyboard.",r,n):s?m("accessibilityOffAriaLabelNoKbs","{0} Please assign a keybinding for the command Toggle Screen Reader Accessibility Mode by accessing the keybindings editor with {1} and run it.",r,s):r}return e.get(4)}_setAccessibilityOptions(e){this._accessibilitySupport=e.get(2);const t=e.get(3);this._accessibilitySupport===2&&t===Xh.accessibilityPageSize.defaultValue?this._accessibilityPageSize=500:this._accessibilityPageSize=t;const n=e.get(146).wrappingColumn;if(n!==-1&&this._accessibilitySupport!==1){const s=e.get(50);this._textAreaWrapping=!0,this._textAreaWidth=Math.round(n*s.typicalHalfwidthCharacterWidth)}else this._textAreaWrapping=!1,this._textAreaWidth=eL?0:1}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(146);this._setAccessibilityOptions(t),this._contentLeft=i.contentLeft,this._contentWidth=i.contentWidth,this._contentHeight=i.height,this._fontInfo=t.get(50),this._lineHeight=t.get(67),this._emptySelectionClipboard=t.get(37),this._copyWithSyntaxHighlighting=t.get(25),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");const{tabSize:n}=this._context.viewModel.model.getOptions();return this.textArea.domNode.style.tabSize=`${n*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("aria-label",this._getAriaLabel(t)),this.textArea.setAttribute("aria-required",t.get(5)?"true":"false"),this.textArea.setAttribute("tabindex",String(t.get(125))),(e.hasChanged(34)||e.hasChanged(92))&&this._ensureReadOnlyAttribute(),e.hasChanged(2)&&this._textAreaInput.writeNativeTextAreaContent("strategy changed"),!0}onCursorStateChanged(e){return this._selections=e.selections.slice(0),this._modelSelections=e.modelSelections.slice(0),this._textAreaInput.writeNativeTextAreaContent("selection changed"),!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return this._scrollLeft=e.scrollLeft,this._scrollTop=e.scrollTop,!0}onZonesChanged(e){return!0}isFocused(){return this._textAreaInput.isFocused()}focusTextArea(){this._textAreaInput.focusTextArea()}getLastRenderData(){return this._lastRenderPosition}setAriaOptions(e){e.activeDescendant?(this.textArea.setAttribute("aria-haspopup","true"),this.textArea.setAttribute("aria-autocomplete","list"),this.textArea.setAttribute("aria-activedescendant",e.activeDescendant)):(this.textArea.setAttribute("aria-haspopup","false"),this.textArea.setAttribute("aria-autocomplete","both"),this.textArea.removeAttribute("aria-activedescendant")),e.role&&this.textArea.setAttribute("role",e.role)}_ensureReadOnlyAttribute(){const e=this._context.configuration.options;!Qm.enabled||e.get(34)&&e.get(92)?this.textArea.setAttribute("readonly","true"):this.textArea.removeAttribute("readonly")}prepareRender(e){this._primaryCursorPosition=new P(this._selections[0].positionLineNumber,this._selections[0].positionColumn),this._primaryCursorVisibleRange=e.visibleRangeForPosition(this._primaryCursorPosition),this._visibleTextArea?.prepareRender(e)}render(e){this._textAreaInput.writeNativeTextAreaContent("render"),this._render()}_render(){if(this._visibleTextArea){const i=this._visibleTextArea.visibleTextareaStart,n=this._visibleTextArea.visibleTextareaEnd,s=this._visibleTextArea.startPosition,r=this._visibleTextArea.endPosition;if(s&&r&&i&&n&&n.left>=this._scrollLeft&&i.left<=this._scrollLeft+this._contentWidth){const a=this._context.viewLayout.getVerticalOffsetForLineNumber(this._primaryCursorPosition.lineNumber)-this._scrollTop,l=this._newlinecount(this.textArea.domNode.value.substr(0,this.textArea.domNode.selectionStart));let c=this._visibleTextArea.widthOfHiddenLineTextBefore,d=this._contentLeft+i.left-this._scrollLeft,h=n.left-i.left+1;if(dthis._contentWidth&&(h=this._contentWidth);const u=this._context.viewModel.getViewLineData(s.lineNumber),f=u.tokens.findTokenIndexAtOffset(s.column-1),g=u.tokens.findTokenIndexAtOffset(r.column-1),p=f===g,_=this._visibleTextArea.definePresentation(p?u.tokens.getPresentation(f):null);this.textArea.domNode.scrollTop=l*this._lineHeight,this.textArea.domNode.scrollLeft=c,this._doRender({lastRenderPosition:null,top:a,left:d,width:h,height:this._lineHeight,useCover:!1,color:(si.getColorMap()||[])[_.foreground],italic:_.italic,bold:_.bold,underline:_.underline,strikethrough:_.strikethrough})}return}if(!this._primaryCursorVisibleRange){this._renderAtTopLeft();return}const e=this._contentLeft+this._primaryCursorVisibleRange.left-this._scrollLeft;if(ethis._contentLeft+this._contentWidth){this._renderAtTopLeft();return}const t=this._context.viewLayout.getVerticalOffsetForLineNumber(this._selections[0].positionLineNumber)-this._scrollTop;if(t<0||t>this._contentHeight){this._renderAtTopLeft();return}if(Ue||this._accessibilitySupport===2){this._doRender({lastRenderPosition:this._primaryCursorPosition,top:t,left:this._textAreaWrapping?this._contentLeft:e,width:this._textAreaWidth,height:this._lineHeight,useCover:!1}),this.textArea.domNode.scrollLeft=this._primaryCursorVisibleRange.left;const i=this._textAreaInput.textAreaState.newlineCountBeforeSelection??this._newlinecount(this.textArea.domNode.value.substr(0,this.textArea.domNode.selectionStart));this.textArea.domNode.scrollTop=i*this._lineHeight;return}this._doRender({lastRenderPosition:this._primaryCursorPosition,top:t,left:this._textAreaWrapping?this._contentLeft:e,width:this._textAreaWidth,height:eL?0:1,useCover:!1})}_newlinecount(e){let t=0,i=-1;do{if(i=e.indexOf(` -`,i+1),i===-1)break;t++}while(!0);return t}_renderAtTopLeft(){this._doRender({lastRenderPosition:null,top:0,left:0,width:this._textAreaWidth,height:eL?0:1,useCover:!0})}_doRender(e){this._lastRenderPosition=e.lastRenderPosition;const t=this.textArea,i=this.textAreaCover;qi(t,this._fontInfo),t.setTop(e.top),t.setLeft(e.left),t.setWidth(e.width),t.setHeight(e.height),t.setColor(e.color?q.Format.CSS.formatHex(e.color):""),t.setFontStyle(e.italic?"italic":""),e.bold&&t.setFontWeight("bold"),t.setTextDecoration(`${e.underline?" underline":""}${e.strikethrough?" line-through":""}`),i.setTop(e.useCover?e.top:0),i.setLeft(e.useCover?e.left:0),i.setWidth(e.useCover?e.width:0),i.setHeight(e.useCover?e.height:0);const n=this._context.configuration.options;n.get(57)?i.setClassName("monaco-editor-background textAreaCover "+Nv.OUTER_CLASS_NAME):n.get(68).renderType!==0?i.setClassName("monaco-editor-background textAreaCover "+Ev.CLASS_NAME):i.setClassName("monaco-editor-background textAreaCover")}};xI=cne([EO(3,vt),EO(4,ke)],xI);function hne(o,e,t,i){if(e.length===0)return 0;const n=o.createElement("div");n.style.position="absolute",n.style.top="-50000px",n.style.width="50000px";const s=o.createElement("span");qi(s,t),s.style.whiteSpace="pre",s.style.tabSize=`${i*t.spaceWidth}px`,s.append(e),n.appendChild(s),o.body.appendChild(n);const r=s.offsetWidth;return n.remove(),r}const une=()=>!0,fne=()=>!1,gne=o=>o===" "||o===" ";class Au{static shouldRecreate(e){return e.hasChanged(146)||e.hasChanged(132)||e.hasChanged(37)||e.hasChanged(77)||e.hasChanged(79)||e.hasChanged(80)||e.hasChanged(6)||e.hasChanged(7)||e.hasChanged(11)||e.hasChanged(9)||e.hasChanged(10)||e.hasChanged(14)||e.hasChanged(129)||e.hasChanged(50)||e.hasChanged(92)||e.hasChanged(131)}constructor(e,t,i,n){this.languageConfigurationService=n,this._cursorMoveConfigurationBrand=void 0,this._languageId=e;const s=i.options,r=s.get(146),a=s.get(50);this.readOnly=s.get(92),this.tabSize=t.tabSize,this.indentSize=t.indentSize,this.insertSpaces=t.insertSpaces,this.stickyTabStops=s.get(117),this.lineHeight=a.lineHeight,this.typicalHalfwidthCharacterWidth=a.typicalHalfwidthCharacterWidth,this.pageSize=Math.max(1,Math.floor(r.height/this.lineHeight)-2),this.useTabStops=s.get(129),this.wordSeparators=s.get(132),this.emptySelectionClipboard=s.get(37),this.copyWithSyntaxHighlighting=s.get(25),this.multiCursorMergeOverlapping=s.get(77),this.multiCursorPaste=s.get(79),this.multiCursorLimit=s.get(80),this.autoClosingBrackets=s.get(6),this.autoClosingComments=s.get(7),this.autoClosingQuotes=s.get(11),this.autoClosingDelete=s.get(9),this.autoClosingOvertype=s.get(10),this.autoSurround=s.get(14),this.autoIndent=s.get(12),this.wordSegmenterLocales=s.get(131),this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:this._getShouldAutoClose(e,this.autoClosingQuotes,!0),comment:this._getShouldAutoClose(e,this.autoClosingComments,!1),bracket:this._getShouldAutoClose(e,this.autoClosingBrackets,!1)},this.autoClosingPairs=this.languageConfigurationService.getLanguageConfiguration(e).getAutoClosingPairs();const l=this.languageConfigurationService.getLanguageConfiguration(e).getSurroundingPairs();if(l)for(const d of l)this.surroundingPairs[d.open]=d.close;const c=this.languageConfigurationService.getLanguageConfiguration(e).comments;this.blockCommentStartToken=c?.blockCommentStartToken??null}get electricChars(){if(!this._electricChars){this._electricChars={};const e=this.languageConfigurationService.getLanguageConfiguration(this._languageId).electricCharacter?.getElectricCharacters();if(e)for(const t of e)this._electricChars[t]=!0}return this._electricChars}onElectricCharacter(e,t,i){const n=zd(t,i-1),s=this.languageConfigurationService.getLanguageConfiguration(n.languageId).electricCharacter;return s?s.onElectricCharacter(e,n,i-n.firstCharOffset):null}normalizeIndentation(e){return Q7(e,this.indentSize,this.insertSpaces)}_getShouldAutoClose(e,t,i){switch(t){case"beforeWhitespace":return gne;case"languageDefined":return this._getLanguageDefinedShouldAutoClose(e,i);case"always":return une;case"never":return fne}}_getLanguageDefinedShouldAutoClose(e,t){const i=this.languageConfigurationService.getLanguageConfiguration(e).getAutoCloseBeforeSet(t);return n=>i.indexOf(n)!==-1}visibleColumnFromColumn(e,t){return _i.visibleColumnFromColumn(e.getLineContent(t.lineNumber),t.column,this.tabSize)}columnFromVisibleColumn(e,t,i){const n=_i.columnFromVisibleColumn(e.getLineContent(t),i,this.tabSize),s=e.getLineMinColumn(t);if(nr?r:n}}class Ke{static fromModelState(e){return new mne(e)}static fromViewState(e){return new pne(e)}static fromModelSelection(e){const t=Fe.liftSelection(e),i=new Ri(I.fromPositions(t.getSelectionStart()),0,0,t.getPosition(),0);return Ke.fromModelState(i)}static fromModelSelections(e){const t=[];for(let i=0,n=e.length;is,c=n>r,d=nr||bn||_0&&n--,Id.columnSelect(e,t,i.fromViewLineNumber,i.fromViewVisualColumn,i.toViewLineNumber,n)}static columnSelectRight(e,t,i){let n=0;const s=Math.min(i.fromViewLineNumber,i.toViewLineNumber),r=Math.max(i.fromViewLineNumber,i.toViewLineNumber);for(let l=s;l<=r;l++){const c=t.getLineMaxColumn(l),d=e.visibleColumnFromColumn(t,new P(l,c));n=Math.max(n,d)}let a=i.toViewVisualColumn;return ae.getLineMinColumn(t.lineNumber))return t.delta(void 0,-fF(e.getLineContent(t.lineNumber),t.column-1));if(t.lineNumber>1){const i=t.lineNumber-1;return new P(i,e.getLineMaxColumn(i))}else return t}static leftPositionAtomicSoftTabs(e,t,i){if(t.column<=e.getLineIndentColumn(t.lineNumber)){const n=e.getLineMinColumn(t.lineNumber),s=e.getLineContent(t.lineNumber),r=x_.atomicPosition(s,t.column-1,i,0);if(r!==-1&&r+1>=n)return new P(t.lineNumber,r+1)}return this.leftPosition(e,t)}static left(e,t,i){const n=e.stickyTabStops?dt.leftPositionAtomicSoftTabs(t,i,e.tabSize):dt.leftPosition(t,i);return new tL(n.lineNumber,n.column,0)}static moveLeft(e,t,i,n,s){let r,a;if(i.hasSelection()&&!n)r=i.selection.startLineNumber,a=i.selection.startColumn;else{const l=i.position.delta(void 0,-(s-1)),c=t.normalizePosition(dt.clipPositionColumn(l,t),0),d=dt.left(e,t,c);r=d.lineNumber,a=d.column}return i.move(n,r,a,0)}static clipPositionColumn(e,t){return new P(e.lineNumber,dt.clipRange(e.column,t.getLineMinColumn(e.lineNumber),t.getLineMaxColumn(e.lineNumber)))}static clipRange(e,t,i){return ei?i:e}static rightPosition(e,t,i){return id?(i=d,a?n=t.getLineMaxColumn(i):n=Math.min(t.getLineMaxColumn(i),n)):n=e.columnFromVisibleColumn(t,i,c),f?s=0:s=c-_i.visibleColumnFromColumn(t.getLineContent(i),n,e.tabSize),l!==void 0){const g=new P(i,n),p=t.normalizePosition(g,l);s=s+(n-p.column),i=p.lineNumber,n=p.column}return new tL(i,n,s)}static down(e,t,i,n,s,r,a){return this.vertical(e,t,i,n,s,i+r,a,4)}static moveDown(e,t,i,n,s){let r,a;i.hasSelection()&&!n?(r=i.selection.endLineNumber,a=i.selection.endColumn):(r=i.position.lineNumber,a=i.position.column);let l=0,c;do if(c=dt.down(e,t,r+l,a,i.leftoverVisibleColumns,s,!0),t.normalizePosition(new P(c.lineNumber,c.column),2).lineNumber>r)break;while(l++<10&&r+l1&&this._isBlankLine(t,s);)s--;for(;s>1&&!this._isBlankLine(t,s);)s--;return i.move(n,s,t.getLineMinColumn(s),0)}static moveToNextBlankLine(e,t,i,n){const s=t.getLineCount();let r=i.position.lineNumber;for(;r=u.length+1)return!1;const f=u.charAt(h.column-2),g=n.get(f);if(!g)return!1;if(Hc(f)){if(i==="never")return!1}else if(t==="never")return!1;const p=u.charAt(h.column-1);let _=!1;for(const b of g)b.open===f&&b.close===p&&(_=!0);if(!_)return!1;if(e==="auto"){let b=!1;for(let C=0,w=a.length;C1){const s=t.getLineContent(n.lineNumber),r=zn(s),a=r===-1?s.length+1:r+1;if(n.column<=a){const l=i.visibleColumnFromColumn(t,n),c=_i.prevIndentTabStop(l,i.indentSize),d=i.columnFromVisibleColumn(t,n.lineNumber,c);return new I(n.lineNumber,d,n.lineNumber,n.column)}}return I.fromPositions(Kh.getPositionAfterDeleteLeft(n,t),n)}static getPositionAfterDeleteLeft(e,t){if(e.column>1){const i=_H(e.column-1,t.getLineContent(e.lineNumber));return e.with(void 0,i+1)}else if(e.lineNumber>1){const i=e.lineNumber-1;return new P(i,t.getLineMaxColumn(i))}else return e}static cut(e,t,i){const n=[];let s=null;i.sort((r,a)=>P.compare(r.getStartPosition(),a.getEndPosition()));for(let r=0,a=i.length;r1&&s?.endLineNumber!==c.lineNumber?(d=c.lineNumber-1,h=t.getLineMaxColumn(c.lineNumber-1),u=c.lineNumber,f=t.getLineMaxColumn(c.lineNumber)):(d=c.lineNumber,h=1,u=c.lineNumber,f=t.getLineMaxColumn(c.lineNumber));const g=new I(d,h,u,f);s=g,g.isEmpty()?n[r]=null:n[r]=new os(g,"")}else n[r]=null;else n[r]=new os(l,"")}return new jn(0,n,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}class ii{static _createWord(e,t,i,n,s){return{start:n,end:s,wordType:t,nextCharClass:i}}static _createIntlWord(e,t){return{start:e.index,end:e.index+e.segment.length,wordType:1,nextCharClass:t}}static _findPreviousWordOnLine(e,t,i){const n=t.getLineContent(i.lineNumber);return this._doFindPreviousWordOnLine(n,e,i)}static _doFindPreviousWordOnLine(e,t,i){let n=0;const s=t.findPrevIntlWordBeforeOrAtOffset(e,i.column-2);for(let r=i.column-2;r>=0;r--){const a=e.charCodeAt(r),l=t.get(a);if(s&&r===s.index)return this._createIntlWord(s,l);if(l===0){if(n===2)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1));n=1}else if(l===2){if(n===1)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1));n=2}else if(l===1&&n!==0)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1))}return n!==0?this._createWord(e,n,1,0,this._findEndOfWord(e,t,n,0)):null}static _findEndOfWord(e,t,i,n){const s=t.findNextIntlWordAtOrAfterOffset(e,n),r=e.length;for(let a=n;a=0;r--){const a=e.charCodeAt(r),l=t.get(a);if(s&&r===s.index)return r;if(l===1||i===1&&l===2||i===2&&l===0)return r+1}return 0}static moveWordLeft(e,t,i,n,s){let r=i.lineNumber,a=i.column;a===1&&r>1&&(r=r-1,a=t.getLineMaxColumn(r));let l=ii._findPreviousWordOnLine(e,t,new P(r,a));if(n===0)return new P(r,l?l.start+1:1);if(n===1)return!s&&l&&l.wordType===2&&l.end-l.start===1&&l.nextCharClass===0&&(l=ii._findPreviousWordOnLine(e,t,new P(r,l.start+1))),new P(r,l?l.start+1:1);if(n===3){for(;l&&l.wordType===2;)l=ii._findPreviousWordOnLine(e,t,new P(r,l.start+1));return new P(r,l?l.start+1:1)}return l&&a<=l.end+1&&(l=ii._findPreviousWordOnLine(e,t,new P(r,l.start+1))),new P(r,l?l.end+1:1)}static _moveWordPartLeft(e,t){const i=t.lineNumber,n=e.getLineMaxColumn(i);if(t.column===1)return i>1?new P(i-1,e.getLineMaxColumn(i-1)):t;const s=e.getLineContent(i);for(let r=t.column-1;r>1;r--){const a=s.charCodeAt(r-2),l=s.charCodeAt(r-1);if(a===95&&l!==95)return new P(i,r);if(a===45&&l!==45)return new P(i,r);if((Yu(a)||yb(a))&&ql(l))return new P(i,r);if(ql(a)&&ql(l)&&r+1=l.start+1&&(l=ii._findNextWordOnLine(e,t,new P(s,l.end+1))),l?r=l.start+1:r=t.getLineMaxColumn(s);return new P(s,r)}static _moveWordPartRight(e,t){const i=t.lineNumber,n=e.getLineMaxColumn(i);if(t.column===n)return i1?c=1:(l--,c=n.getLineMaxColumn(l)):(d&&c<=d.end+1&&(d=ii._findPreviousWordOnLine(i,n,new P(l,d.start+1))),d?c=d.end+1:c>1?c=1:(l--,c=n.getLineMaxColumn(l))),new I(l,c,a.lineNumber,a.column)}static deleteInsideWord(e,t,i){if(!i.isEmpty())return i;const n=new P(i.positionLineNumber,i.positionColumn),s=this._deleteInsideWordWhitespace(t,n);return s||this._deleteInsideWordDetermineDeleteRange(e,t,n)}static _charAtIsWhitespace(e,t){const i=e.charCodeAt(t);return i===32||i===9}static _deleteInsideWordWhitespace(e,t){const i=e.getLineContent(t.lineNumber),n=i.length;if(n===0)return null;let s=Math.max(t.column-2,0);if(!this._charAtIsWhitespace(i,s))return null;let r=Math.min(t.column-1,n-1);if(!this._charAtIsWhitespace(i,r))return null;for(;s>0&&this._charAtIsWhitespace(i,s-1);)s--;for(;r+11?new I(i.lineNumber-1,t.getLineMaxColumn(i.lineNumber-1),i.lineNumber,1):i.lineNumberh.start+1<=i.column&&i.column<=h.end+1,a=(h,u)=>(h=Math.min(h,i.column),u=Math.max(u,i.column),new I(i.lineNumber,h,i.lineNumber,u)),l=h=>{let u=h.start+1,f=h.end+1,g=!1;for(;f-11&&this._charAtIsWhitespace(n,u-2);)u--;return a(u,f)},c=ii._findPreviousWordOnLine(e,t,i);if(c&&r(c))return l(c);const d=ii._findNextWordOnLine(e,t,i);return d&&r(d)?l(d):c&&d?a(c.end+1,d.start+1):c?a(c.start+1,c.end+1):d?a(d.start+1,d.end+1):a(1,s+1)}static _deleteWordPartLeft(e,t){if(!t.isEmpty())return t;const i=t.getPosition(),n=ii._moveWordPartLeft(e,i);return new I(i.lineNumber,i.column,n.lineNumber,n.column)}static _findFirstNonWhitespaceChar(e,t){const i=e.length;for(let n=t;n=u.start+1&&(u=ii._findNextWordOnLine(i,n,new P(l,u.end+1))),u?c=u.start+1:cc&&(d=c,h=e.model.getLineMaxColumn(d)),Ke.fromModelState(new Ri(new I(r.lineNumber,1,d,h),2,0,new P(d,h),0))}const l=t.modelState.selectionStart.getStartPosition().lineNumber;if(r.lineNumberl){const c=e.getLineCount();let d=a.lineNumber+1,h=1;return d>c&&(d=c,h=e.getLineMaxColumn(d)),Ke.fromViewState(t.viewState.move(!0,d,h,0))}else{const c=t.modelState.selectionStart.getEndPosition();return Ke.fromModelState(t.modelState.move(!0,c.lineNumber,c.column,0))}}static word(e,t,i,n){const s=e.model.validatePosition(n);return Ke.fromModelState(ii.word(e.cursorConfig,e.model,t.modelState,i,s))}static cancelSelection(e,t){if(!t.modelState.hasSelection())return new Ke(t.modelState,t.viewState);const i=t.viewState.position.lineNumber,n=t.viewState.position.column;return Ke.fromViewState(new Ri(new I(i,n,i,n),0,0,new P(i,n),0))}static moveTo(e,t,i,n,s){if(i){if(t.modelState.selectionStartKind===1)return this.word(e,t,i,n);if(t.modelState.selectionStartKind===2)return this.line(e,t,i,n,s)}const r=e.model.validatePosition(n),a=s?e.coordinatesConverter.validateViewPosition(new P(s.lineNumber,s.column),r):e.coordinatesConverter.convertModelPositionToViewPosition(r);return Ke.fromViewState(t.viewState.move(i,a.lineNumber,a.column,0))}static simpleMove(e,t,i,n,s,r){switch(i){case 0:return r===4?this._moveHalfLineLeft(e,t,n):this._moveLeft(e,t,n,s);case 1:return r===4?this._moveHalfLineRight(e,t,n):this._moveRight(e,t,n,s);case 2:return r===2?this._moveUpByViewLines(e,t,n,s):this._moveUpByModelLines(e,t,n,s);case 3:return r===2?this._moveDownByViewLines(e,t,n,s):this._moveDownByModelLines(e,t,n,s);case 4:return r===2?t.map(a=>Ke.fromViewState(dt.moveToPrevBlankLine(e.cursorConfig,e,a.viewState,n))):t.map(a=>Ke.fromModelState(dt.moveToPrevBlankLine(e.cursorConfig,e.model,a.modelState,n)));case 5:return r===2?t.map(a=>Ke.fromViewState(dt.moveToNextBlankLine(e.cursorConfig,e,a.viewState,n))):t.map(a=>Ke.fromModelState(dt.moveToNextBlankLine(e.cursorConfig,e.model,a.modelState,n)));case 6:return this._moveToViewMinColumn(e,t,n);case 7:return this._moveToViewFirstNonWhitespaceColumn(e,t,n);case 8:return this._moveToViewCenterColumn(e,t,n);case 9:return this._moveToViewMaxColumn(e,t,n);case 10:return this._moveToViewLastNonWhitespaceColumn(e,t,n);default:return null}}static viewportMove(e,t,i,n,s){const r=e.getCompletelyVisibleViewRange(),a=e.coordinatesConverter.convertViewRangeToModelRange(r);switch(i){case 11:{const l=this._firstLineNumberInRange(e.model,a,s),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 13:{const l=this._lastLineNumberInRange(e.model,a,s),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 12:{const l=Math.round((a.startLineNumber+a.endLineNumber)/2),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 14:{const l=[];for(let c=0,d=t.length;ci.endLineNumber-1?r=i.endLineNumber-1:sKe.fromViewState(dt.moveLeft(e.cursorConfig,e,s.viewState,i,n)))}static _moveHalfLineLeft(e,t,i){const n=[];for(let s=0,r=t.length;sKe.fromViewState(dt.moveRight(e.cursorConfig,e,s.viewState,i,n)))}static _moveHalfLineRight(e,t,i){const n=[];for(let s=0,r=t.length;s{this.model.tokenization.forceTokenization(f);const g=this.model.tokenization.getLineTokens(f),p=this.model.getLineMaxColumn(f)-1;return zd(g,p)};this.model.tokenization.forceTokenization(e.startLineNumber);const i=this.model.tokenization.getLineTokens(e.startLineNumber),n=zd(i,e.startColumn-1),s=Ni.createEmpty("",n.languageIdCodec),r=e.startLineNumber-1;if(r===0||!(n.firstCharOffset===0))return s;const c=t(r);if(!(n.languageId===c.languageId))return s;const h=c.toIViewLineTokens();return this.indentationLineProcessor.getProcessedTokens(h)}}class v8{constructor(e,t){this.model=e,this.languageConfigurationService=t}getProcessedLine(e,t){const i=(r,a)=>{const l=pi(r);return a+r.substring(l.length)};this.model.tokenization.forceTokenization?.(e);const n=this.model.tokenization.getLineTokens(e);let s=this.getProcessedTokens(n).getLineContent();return t!==void 0&&(s=i(s,t)),s}getProcessedTokens(e){const t=l=>l===2||l===3||l===1,i=e.getLanguageId(0),s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew.getBracketRegExp({global:!0}),r=[];return e.forEach(l=>{const c=e.getStandardTokenType(l);let d=e.getTokenText(l);t(c)&&(d=d.replace(s,""));const h=e.getMetadata(l);r.push({text:d,metadata:h})}),Ni.createFromTextAndMetadata(r,e.languageIdCodec)}}function V2(o,e){o.tokenization.forceTokenization(e.lineNumber);const t=o.tokenization.getLineTokens(e.lineNumber),i=zd(t,e.column-1),n=i.firstCharOffset===0,s=t.getLanguageId(0)===i.languageId;return!n&&!s}function z2(o,e,t,i){e.tokenization.forceTokenization(t.startLineNumber);const n=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),s=i.getLanguageConfiguration(n);if(!s)return null;const a=new H2(e,i).getProcessedTokenContextAroundRange(t),l=a.previousLineProcessedTokens.getLineContent(),c=a.beforeRangeProcessedTokens.getLineContent(),d=a.afterRangeProcessedTokens.getLineContent(),h=s.onEnter(o,l,c,d);if(!h)return null;const u=h.indentAction;let f=h.appendText;const g=h.removeText||0;f?u===Sn.Indent&&(f=" "+f):u===Sn.Indent||u===Sn.IndentOutdent?f=" ":f="";let p=r3(e,t.startLineNumber,t.startColumn);return g&&(p=p.substring(0,p.length-g)),{indentAction:u,appendText:f,removeText:g,indentation:p}}var Cne=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vne=function(o,e){return function(t,i){e(t,i,o)}},K1;const iL=Object.create(null);function od(o,e){if(e<=0)return"";iL[o]||(iL[o]=["",o]);const t=iL[o];for(let i=t.length;i<=e;i++)t[i]=t[i-1]+o;return t[e]}let jh=K1=class{static unshiftIndent(e,t,i,n,s){const r=_i.visibleColumnFromColumn(e,t,i);if(s){const a=od(" ",n),c=_i.prevIndentTabStop(r,n)/n;return od(a,c)}else{const c=_i.prevRenderTabStop(r,i)/i;return od(" ",c)}}static shiftIndent(e,t,i,n,s){const r=_i.visibleColumnFromColumn(e,t,i);if(s){const a=od(" ",n),c=_i.nextIndentTabStop(r,n)/n;return od(a,c)}else{const c=_i.nextRenderTabStop(r,i)/i;return od(" ",c)}}constructor(e,t,i){this._languageConfigurationService=i,this._opts=t,this._selection=e,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}_addEditOperation(e,t,i){this._useLastEditRangeForCursorEndPosition?e.addTrackedEditOperation(t,i):e.addEditOperation(t,i)}getEditOperations(e,t){const i=this._selection.startLineNumber;let n=this._selection.endLineNumber;this._selection.endColumn===1&&i!==n&&(n=n-1);const{tabSize:s,indentSize:r,insertSpaces:a}=this._opts,l=i===n;if(this._opts.useTabStops){this._selection.isEmpty()&&/^\s*$/.test(e.getLineContent(i))&&(this._useLastEditRangeForCursorEndPosition=!0);let c=0,d=0;for(let h=i;h<=n;h++,c=d){d=0;const u=e.getLineContent(h);let f=zn(u);if(this._opts.isUnshift&&(u.length===0||f===0)||!l&&!this._opts.isUnshift&&u.length===0)continue;if(f===-1&&(f=u.length),h>1&&_i.visibleColumnFromColumn(u,f+1,s)%r!==0&&e.tokenization.isCheapToTokenize(h-1)){const _=z2(this._opts.autoIndent,e,new I(h-1,e.getLineMaxColumn(h-1),h-1,e.getLineMaxColumn(h-1)),this._languageConfigurationService);if(_){if(d=c,_.appendText)for(let b=0,C=_.appendText.length;b1){let n,s=-1;for(n=e-1;n>=1;n--){if(o.tokenization.getLanguageIdAtPosition(n,0)!==i)return s;const r=o.getLineContent(n);if(t.shouldIgnore(n)||/^\s+$/.test(r)||r===""){s=n;continue}return n}}return-1}function Rv(o,e,t,i=!0,n){if(o<4)return null;const s=n.getLanguageConfiguration(e.tokenization.getLanguageId()).indentRulesSupport;if(!s)return null;const r=new bne(e,s,n);if(t<=1)return{indentation:"",action:null};for(let l=t-1;l>0&&e.getLineContent(l)==="";l--)if(l===1)return{indentation:"",action:null};const a=Sne(e,t,r);if(a<0)return null;if(a<1)return{indentation:"",action:null};if(r.shouldIncrease(a)||r.shouldIndentNextLine(a)){const l=e.getLineContent(a);return{indentation:pi(l),action:Sn.Indent,line:a}}else if(r.shouldDecrease(a)){const l=e.getLineContent(a);return{indentation:pi(l),action:null,line:a}}else{if(a===1)return{indentation:pi(e.getLineContent(a)),action:null,line:a};const l=a-1,c=s.getIndentMetadata(e.getLineContent(l));if(!(c&3)&&c&4){let d=0;for(let h=l-1;h>0;h--)if(!r.shouldIndentNextLine(h)){d=h;break}return{indentation:pi(e.getLineContent(d+1)),action:null,line:d+1}}if(i)return{indentation:pi(e.getLineContent(a)),action:null,line:a};for(let d=a;d>0;d--){if(r.shouldIncrease(d))return{indentation:pi(e.getLineContent(d)),action:Sn.Indent,line:d};if(r.shouldIndentNextLine(d)){let h=0;for(let u=d-1;u>0;u--)if(!r.shouldIndentNextLine(d)){h=u;break}return{indentation:pi(e.getLineContent(h+1)),action:null,line:h+1}}else if(r.shouldDecrease(d))return{indentation:pi(e.getLineContent(d)),action:null,line:d}}return{indentation:pi(e.getLineContent(1)),action:null,line:1}}}function Lne(o,e,t,i,n){if(o<4)return null;const s=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),r=n.getLanguageConfiguration(s).indentRulesSupport;if(!r)return null;e.tokenization.forceTokenization(t.startLineNumber);const l=new H2(e,n).getProcessedTokenContextAroundRange(t),c=l.afterRangeProcessedTokens,d=l.beforeRangeProcessedTokens,h=pi(d.getLineContent()),u=kne(e,t.startLineNumber,d),f=V2(e,t.getStartPosition()),g=e.getLineContent(t.startLineNumber),p=pi(g),_=Rv(o,u,t.startLineNumber+1,void 0,n);if(!_){const C=f?p:h;return{beforeEnter:C,afterEnter:C}}let b=f?p:_.indentation;return _.action===Sn.Indent&&(b=i.shiftIndent(b)),r.shouldDecrease(c.getLineContent())&&(b=i.unshiftIndent(b)),{beforeEnter:f?p:h,afterEnter:b}}function xne(o,e,t,i,n,s){const r=o.autoIndent;if(r<4||V2(e,t.getStartPosition()))return null;const l=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),c=s.getLanguageConfiguration(l).indentRulesSupport;if(!c)return null;const h=new H2(e,s).getProcessedTokenContextAroundRange(t),u=h.beforeRangeProcessedTokens.getLineContent(),f=h.afterRangeProcessedTokens.getLineContent(),g=u+f,p=u+i+f;if(!c.shouldDecrease(g)&&c.shouldDecrease(p)){const b=Rv(r,e,t.startLineNumber,!1,s);if(!b)return null;let C=b.indentation;return b.action!==Sn.Indent&&(C=n.unshiftIndent(C)),C}const _=t.startLineNumber-1;if(_>0){const b=e.getLineContent(_);if(c.shouldIndentNextLine(b)&&c.shouldIncrease(p)){const w=Rv(r,e,t.startLineNumber,!1,s)?.indentation;if(w!==void 0){const v=e.getLineContent(t.startLineNumber),y=pi(v),L=n.shiftIndent(w)===y,E=/^\s*$/.test(g),N=o.autoClosingPairs.autoClosingPairsOpenByEnd.get(i),F=N&&N.length>0&&E;if(L&&F)return w}}}return null}function kne(o,e,t){return{tokenization:{getLineTokens:n=>n===e?t:o.tokenization.getLineTokens(n),getLanguageId:()=>o.getLanguageId(),getLanguageIdAtPosition:(n,s)=>o.getLanguageIdAtPosition(n,s)},getLineContent:n=>n===e?t.getLineContent():o.getLineContent(n)}}class Dne{static getEdits(e,t,i,n,s){if(!s&&this._isAutoIndentType(e,t,i)){const r=[];for(const l of i){const c=this._findActualIndentationForSelection(e,t,l,n);if(c===null)return;r.push({selection:l,indentation:c})}const a=kI.getAutoClosingPairClose(e,t,i,n,!1);return this._getIndentationAndAutoClosingPairEdits(e,t,r,n,a)}}static _isAutoIndentType(e,t,i){if(e.autoIndent<4)return!1;for(let n=0,s=i.length;nK2(e,a),unshiftIndent:a=>Av(e,a)},e.languageConfigurationService);if(s===null)return null;const r=r3(t,i.startLineNumber,i.startColumn);return s===e.normalizeIndentation(r)?null:s}static _getIndentationAndAutoClosingPairEdits(e,t,i,n,s){const r=i.map(({selection:l,indentation:c})=>{if(s!==null){const d=this._getEditFromIndentationAndSelection(e,t,c,l,n,!1);return new Bne(d,l,n,s)}else{const d=this._getEditFromIndentationAndSelection(e,t,c,l,n,!0);return gd(d.range,d.text,!1)}}),a={shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1};return new jn(4,r,a)}static _getEditFromIndentationAndSelection(e,t,i,n,s,r=!0){const a=n.startLineNumber,l=t.getLineFirstNonWhitespaceColumn(a);let c=e.normalizeIndentation(i);if(l!==0){const h=t.getLineContent(a);c+=h.substring(l-1,n.startColumn-1)}return c+=r?s:"",{range:new I(a,1,n.endLineNumber,n.endColumn),text:c}}}class Ine{static getEdits(e,t,i,n,s,r){if(y8(t,i,n,s,r))return this._runAutoClosingOvertype(e,n,r)}static _runAutoClosingOvertype(e,t,i){const n=[];for(let s=0,r=t.length;snew os(new I(a.positionLineNumber,a.positionColumn,a.positionLineNumber,a.positionColumn+1),"",!1));return new jn(4,r,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}}class kI{static getEdits(e,t,i,n,s,r){if(!r){const a=this.getAutoClosingPairClose(e,t,i,n,s);if(a!==null)return this._runAutoClosingOpenCharType(i,n,s,a)}}static _runAutoClosingOpenCharType(e,t,i,n){const s=[];for(let r=0,a=e.length;r{const p=g.getPosition();return s?{lineNumber:p.lineNumber,beforeColumn:p.column-n.length,afterColumn:p.column}:{lineNumber:p.lineNumber,beforeColumn:p.column,afterColumn:p.column}}),a=this._findAutoClosingPairOpen(e,t,r.map(g=>new P(g.lineNumber,g.beforeColumn)),n);if(!a)return null;let l,c;if(Hc(n)?(l=e.autoClosingQuotes,c=e.shouldAutoCloseBefore.quote):(e.blockCommentStartToken?a.open.includes(e.blockCommentStartToken):!1)?(l=e.autoClosingComments,c=e.shouldAutoCloseBefore.comment):(l=e.autoClosingBrackets,c=e.shouldAutoCloseBefore.bracket),l==="never")return null;const h=this._findContainedAutoClosingPair(e,a),u=h?h.close:"";let f=!0;for(const g of r){const{lineNumber:p,beforeColumn:_,afterColumn:b}=g,C=t.getLineContent(p),w=C.substring(0,_-1),v=C.substring(b-1);if(v.startsWith(u)||(f=!1),v.length>0){const E=v.charAt(0);if(!this._isBeforeClosingBrace(e,v)&&!c(E))return null}if(a.open.length===1&&(n==="'"||n==='"')&&l!=="always"){const E=cg(e.wordSeparators,[]);if(w.length>0){const N=w.charCodeAt(w.length-1);if(E.get(N)===0)return null}}if(!t.tokenization.isCheapToTokenize(p))return null;t.tokenization.forceTokenization(p);const y=t.tokenization.getLineTokens(p),x=zd(y,_-1);if(!a.shouldAutoClose(x,_-x.firstCharOffset))return null;const L=a.findNeutralCharacter();if(L){const E=t.tokenization.getTokenTypeIfInsertingCharacter(p,_,L);if(!a.isOK(E))return null}}return f?a.close.substring(0,a.close.length-u.length):a.close}static _findContainedAutoClosingPair(e,t){if(t.open.length<=1)return null;const i=t.close.charAt(t.close.length-1),n=e.autoClosingPairs.autoClosingPairsCloseByEnd.get(i)||[];let s=null;for(const r of n)r.open!==t.open&&t.open.includes(r.open)&&t.close.endsWith(r.close)&&(!s||r.open.length>s.open.length)&&(s=r);return s}static _findAutoClosingPairOpen(e,t,i,n){const s=e.autoClosingPairs.autoClosingPairsOpenByEnd.get(n);if(!s)return null;let r=null;for(const a of s)if(r===null||a.open.length>r.open.length){let l=!0;for(const c of i)if(t.getValueInRange(new I(c.lineNumber,c.column-a.open.length+1,c.lineNumber,c.column))+n!==a.open){l=!1;break}l&&(r=a)}return r}static _isBeforeClosingBrace(e,t){const i=t.charAt(0),n=e.autoClosingPairs.autoClosingPairsOpenByStart.get(i)||[],s=e.autoClosingPairs.autoClosingPairsCloseByStart.get(i)||[],r=n.some(l=>t.startsWith(l.open)),a=s.some(l=>t.startsWith(l.close));return!r&&a}}class Nne{static getEdits(e,t,i,n,s){if(!s&&this._isSurroundSelectionType(e,t,i,n))return this._runSurroundSelectionType(e,i,n)}static _runSurroundSelectionType(e,t,i){const n=[];for(let s=0,r=t.length;s=4){const l=Lne(e.autoIndent,t,n,{unshiftIndent:c=>Av(e,c),shiftIndent:c=>K2(e,c),normalizeIndentation:c=>e.normalizeIndentation(c)},e.languageConfigurationService);if(l){let c=e.visibleColumnFromColumn(t,n.getEndPosition());const d=n.endColumn,h=t.getLineContent(n.endLineNumber),u=zn(h);if(u>=0?n=n.setEndPosition(n.endLineNumber,Math.max(n.endColumn,u+1)):n=n.setEndPosition(n.endLineNumber,t.getLineMaxColumn(n.endLineNumber)),i)return new $1(n,` -`+e.normalizeIndentation(l.afterEnter),!0);{let f=0;return d<=u+1&&(e.insertSpaces||(c=Math.ceil(c/e.indentSize)),f=Math.min(c+1-e.normalizeIndentation(l.afterEnter).length-1,0)),new Tv(n,` -`+e.normalizeIndentation(l.afterEnter),0,f,!0)}}}return gd(n,` -`+e.normalizeIndentation(a),i)}static lineInsertBefore(e,t,i){if(t===null||i===null)return[];const n=[];for(let s=0,r=i.length;sthis._compositionType(i,d,s,r,a,l));return new jn(4,c,{shouldPushStackElementBefore:Dy(e,4),shouldPushStackElementAfter:!1})}static _compositionType(e,t,i,n,s,r){if(!t.isEmpty())return null;const a=t.getPosition(),l=Math.max(1,a.column-n),c=Math.min(e.getLineMaxColumn(a.lineNumber),a.column+s),d=new I(a.lineNumber,l,a.lineNumber,c);return e.getValueInRange(d)===i&&r===0?null:new Tv(d,i,0,r)}}class Pne{static getEdits(e,t,i){const n=[];for(let r=0,a=t.length;r1){let a;for(a=i-1;a>=1;a--){const d=t.getLineContent(a);if(Jh(d)>=0)break}if(a<1)return null;const l=t.getLineMaxColumn(a),c=z2(e.autoIndent,t,new I(a,l,a,l),e.languageConfigurationService);c&&(s=c.indentation+c.appendText)}return n&&(n===Sn.Indent&&(s=K2(e,s)),n===Sn.Outdent&&(s=Av(e,s)),s=e.normalizeIndentation(s)),s||null}static _replaceJumpToNextIndent(e,t,i,n){let s="";const r=i.getStartPosition();if(e.insertSpaces){const a=e.visibleColumnFromColumn(t,r),l=e.indentSize,c=l-a%l;for(let d=0;d2?c.charCodeAt(l.column-2):0)===92&&h)return!1;if(o.autoClosingOvertype==="auto"){let f=!1;for(let g=0,p=i.length;g{const n=t.get(Pt).getFocusedCodeEditor();return n&&n.hasTextFocus()?this._runEditorCommand(t,n,i):!1}),e.addImplementation(1e3,"generic-dom-input-textarea",(t,i)=>{const n=Xi();return n&&["input","textarea"].indexOf(n.tagName.toLowerCase())>=0?(this.runDOMCommand(n),!0):!1}),e.addImplementation(0,"generic-dom",(t,i)=>{const n=t.get(Pt).getActiveCodeEditor();return n?(n.focus(),this._runEditorCommand(t,n,i)):!1})}_runEditorCommand(e,t,i){const n=this.runEditorCommand(e,t,i);return n||!0}}var Li;(function(o){class e extends $t{constructor(C){super(C),this._inSelectionMode=C.inSelectionMode}runCoreEditorCommand(C,w){if(!w.position)return;C.model.pushStackElement(),C.setCursorStates(w.source,3,[nn.moveTo(C,C.getPrimaryCursorState(),this._inSelectionMode,w.position,w.viewPosition)])&&w.revealType!==2&&C.revealAllCursors(w.source,!0,!0)}}o.MoveTo=ge(new e({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),o.MoveToSelect=ge(new e({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));class t extends $t{runCoreEditorCommand(C,w){C.model.pushStackElement();const v=this._getColumnSelectResult(C,C.getPrimaryCursorState(),C.getCursorColumnSelectData(),w);v!==null&&(C.setCursorStates(w.source,3,v.viewStates.map(y=>Ke.fromViewState(y))),C.setCursorColumnSelectData({isReal:!0,fromViewLineNumber:v.fromLineNumber,fromViewVisualColumn:v.fromVisualColumn,toViewLineNumber:v.toLineNumber,toViewVisualColumn:v.toVisualColumn}),v.reversed?C.revealTopMostCursor(w.source):C.revealBottomMostCursor(w.source))}}o.ColumnSelect=ge(new class extends t{constructor(){super({id:"columnSelect",precondition:void 0})}_getColumnSelectResult(b,C,w,v){if(typeof v.position>"u"||typeof v.viewPosition>"u"||typeof v.mouseColumn>"u")return null;const y=b.model.validatePosition(v.position),x=b.coordinatesConverter.validateViewPosition(new P(v.viewPosition.lineNumber,v.viewPosition.column),y),L=v.doColumnSelect?w.fromViewLineNumber:x.lineNumber,E=v.doColumnSelect?w.fromViewVisualColumn:v.mouseColumn-1;return Id.columnSelect(b.cursorConfig,b,L,E,x.lineNumber,v.mouseColumn-1)}}),o.CursorColumnSelectLeft=ge(new class extends t{constructor(){super({id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3599,linux:{primary:0}}})}_getColumnSelectResult(b,C,w,v){return Id.columnSelectLeft(b.cursorConfig,b,w)}}),o.CursorColumnSelectRight=ge(new class extends t{constructor(){super({id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3601,linux:{primary:0}}})}_getColumnSelectResult(b,C,w,v){return Id.columnSelectRight(b.cursorConfig,b,w)}});class i extends t{constructor(C){super(C),this._isPaged=C.isPaged}_getColumnSelectResult(C,w,v,y){return Id.columnSelectUp(C.cursorConfig,C,v,this._isPaged)}}o.CursorColumnSelectUp=ge(new i({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3600,linux:{primary:0}}})),o.CursorColumnSelectPageUp=ge(new i({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3595,linux:{primary:0}}}));class n extends t{constructor(C){super(C),this._isPaged=C.isPaged}_getColumnSelectResult(C,w,v,y){return Id.columnSelectDown(C.cursorConfig,C,v,this._isPaged)}}o.CursorColumnSelectDown=ge(new n({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3602,linux:{primary:0}}})),o.CursorColumnSelectPageDown=ge(new n({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:3596,linux:{primary:0}}}));class s extends $t{constructor(){super({id:"cursorMove",precondition:void 0,metadata:Mv.metadata})}runCoreEditorCommand(C,w){const v=Mv.parse(w);v&&this._runCursorMove(C,w.source,v)}_runCursorMove(C,w,v){C.model.pushStackElement(),C.setCursorStates(w,3,s._move(C,C.getCursorStates(),v)),C.revealAllCursors(w,!0)}static _move(C,w,v){const y=v.select,x=v.value;switch(v.direction){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:return nn.simpleMove(C,w,v.direction,y,x,v.unit);case 11:case 13:case 12:case 14:return nn.viewportMove(C,w,v.direction,y,x);default:return null}}}o.CursorMoveImpl=s,o.CursorMove=ge(new s);class r extends $t{constructor(C){super(C),this._staticArgs=C.args}runCoreEditorCommand(C,w){let v=this._staticArgs;this._staticArgs.value===-1&&(v={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:w.pageSize||C.cursorConfig.pageSize}),C.model.pushStackElement(),C.setCursorStates(w.source,3,nn.simpleMove(C,C.getCursorStates(),v.direction,v.select,v.value,v.unit)),C.revealAllCursors(w.source,!0)}}o.CursorLeft=ge(new r({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:15,mac:{primary:15,secondary:[288]}}})),o.CursorLeftSelect=ge(new r({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1039}})),o.CursorRight=ge(new r({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:17,mac:{primary:17,secondary:[292]}}})),o.CursorRightSelect=ge(new r({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1041}})),o.CursorUp=ge(new r({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:16,mac:{primary:16,secondary:[302]}}})),o.CursorUpSelect=ge(new r({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1040,secondary:[3088],mac:{primary:1040},linux:{primary:1040}}})),o.CursorPageUp=ge(new r({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:11}})),o.CursorPageUpSelect=ge(new r({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1035}})),o.CursorDown=ge(new r({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:18,mac:{primary:18,secondary:[300]}}})),o.CursorDownSelect=ge(new r({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1042,secondary:[3090],mac:{primary:1042},linux:{primary:1042}}})),o.CursorPageDown=ge(new r({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:12}})),o.CursorPageDownSelect=ge(new r({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1036}})),o.CreateCursor=ge(new class extends $t{constructor(){super({id:"createCursor",precondition:void 0})}runCoreEditorCommand(b,C){if(!C.position)return;let w;C.wholeLine?w=nn.line(b,b.getPrimaryCursorState(),!1,C.position,C.viewPosition):w=nn.moveTo(b,b.getPrimaryCursorState(),!1,C.position,C.viewPosition);const v=b.getCursorStates();if(v.length>1){const y=w.modelState?w.modelState.position:null,x=w.viewState?w.viewState.position:null;for(let L=0,E=v.length;Lx&&(y=x);const L=new I(y,1,y,b.model.getLineMaxColumn(y));let E=0;if(w.at)switch(w.at){case hf.RawAtArgument.Top:E=3;break;case hf.RawAtArgument.Center:E=1;break;case hf.RawAtArgument.Bottom:E=4;break}const N=b.coordinatesConverter.convertModelRangeToViewRange(L);b.revealRange(C.source,!1,N,E,0)}}),o.SelectAll=new class extends DI{constructor(){super(_z)}runDOMCommand(b){Mo&&(b.focus(),b.select()),b.ownerDocument.execCommand("selectAll")}runEditorCommand(b,C,w){const v=C._getViewModel();v&&this.runCoreEditorCommand(v,w)}runCoreEditorCommand(b,C){b.model.pushStackElement(),b.setCursorStates("keyboard",3,[nn.selectAll(b,b.getPrimaryCursorState())])}},o.SetSelection=ge(new class extends $t{constructor(){super({id:"setSelection",precondition:void 0})}runCoreEditorCommand(b,C){C.selection&&(b.model.pushStackElement(),b.setCursorStates(C.source,3,[Ke.fromModelSelection(C.selection)]))}})})(Li||(Li={}));const Hne=re.and(K.textInputFocus,K.columnSelection);function qg(o,e){Nn.registerKeybindingRule({id:o,primary:e,when:Hne,weight:it+1})}qg(Li.CursorColumnSelectLeft.id,1039);qg(Li.CursorColumnSelectRight.id,1041);qg(Li.CursorColumnSelectUp.id,1040);qg(Li.CursorColumnSelectPageUp.id,1035);qg(Li.CursorColumnSelectDown.id,1042);qg(Li.CursorColumnSelectPageDown.id,1036);function MO(o){return o.register(),o}var fp;(function(o){class e extends co{runEditorCommand(i,n,s){const r=n._getViewModel();r&&this.runCoreEditingCommand(n,r,s||{})}}o.CoreEditingCommand=e,o.LineBreakInsert=ge(new class extends e{constructor(){super({id:"lineBreakInsert",precondition:K.writable,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:0,mac:{primary:301}}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,w8.lineBreakInsert(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection)))}}),o.Outdent=ge(new class extends e{constructor(){super({id:"outdent",precondition:K.writable,kbOpts:{weight:it,kbExpr:re.and(K.editorTextFocus,K.tabDoesNotMoveFocus),primary:1026}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,Ed.outdent(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection))),t.pushUndoStop()}}),o.Tab=ge(new class extends e{constructor(){super({id:"tab",precondition:K.writable,kbOpts:{weight:it,kbExpr:re.and(K.editorTextFocus,K.tabDoesNotMoveFocus),primary:2}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,Ed.tab(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection))),t.pushUndoStop()}}),o.DeleteLeft=ge(new class extends e{constructor(){super({id:"deleteLeft",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:1,secondary:[1025],mac:{primary:1,secondary:[1025,294,257]}}})}runCoreEditingCommand(t,i,n){const[s,r]=Kh.deleteLeft(i.getPrevEditOperationType(),i.cursorConfig,i.model,i.getCursorStates().map(a=>a.modelState.selection),i.getCursorAutoClosedCharacters());s&&t.pushUndoStop(),t.executeCommands(this.id,r),i.setPrevEditOperationType(2)}}),o.DeleteRight=ge(new class extends e{constructor(){super({id:"deleteRight",precondition:void 0,kbOpts:{weight:it,kbExpr:K.textInputFocus,primary:20,mac:{primary:20,secondary:[290,276]}}})}runCoreEditingCommand(t,i,n){const[s,r]=Kh.deleteRight(i.getPrevEditOperationType(),i.cursorConfig,i.model,i.getCursorStates().map(a=>a.modelState.selection));s&&t.pushUndoStop(),t.executeCommands(this.id,r),i.setPrevEditOperationType(3)}}),o.Undo=new class extends DI{constructor(){super(qF)}runDOMCommand(t){t.ownerDocument.execCommand("undo")}runEditorCommand(t,i,n){if(!(!i.hasModel()||i.getOption(92)===!0))return i.getModel().undo()}},o.Redo=new class extends DI{constructor(){super(GF)}runDOMCommand(t){t.ownerDocument.execCommand("redo")}runEditorCommand(t,i,n){if(!(!i.hasModel()||i.getOption(92)===!0))return i.getModel().redo()}}})(fp||(fp={}));class RO extends U0{constructor(e,t,i){super({id:e,precondition:void 0,metadata:i}),this._handlerId=t}runCommand(e,t){const i=e.get(Pt).getFocusedCodeEditor();i&&i.trigger("keyboard",this._handlerId,t)}}function pu(o,e){MO(new RO("default:"+o,o)),MO(new RO(o,o,e))}pu("type",{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]});pu("replacePreviousChar");pu("compositionType");pu("compositionStart");pu("compositionEnd");pu("paste");pu("cut");class Vne{constructor(e,t,i,n){this.configuration=e,this.viewModel=t,this.userInputEvents=i,this.commandDelegate=n}paste(e,t,i,n){this.commandDelegate.paste(e,t,i,n)}type(e){this.commandDelegate.type(e)}compositionType(e,t,i,n){this.commandDelegate.compositionType(e,t,i,n)}compositionStart(){this.commandDelegate.startComposition()}compositionEnd(){this.commandDelegate.endComposition()}cut(){this.commandDelegate.cut()}setSelection(e){Li.SetSelection.runCoreEditorCommand(this.viewModel,{source:"keyboard",selection:e})}_validateViewColumn(e){const t=this.viewModel.getLineMinColumn(e.lineNumber);return e.column=4?this._selectAll():e.mouseDownCount===3?this._hasMulticursorModifier(e)?e.inSelectionMode?this._lastCursorLineSelectDrag(e.position,e.revealType):this._lastCursorLineSelect(e.position,e.revealType):e.inSelectionMode?this._lineSelectDrag(e.position,e.revealType):this._lineSelect(e.position,e.revealType):e.mouseDownCount===2?e.onInjectedText||(this._hasMulticursorModifier(e)?this._lastCursorWordSelect(e.position,e.revealType):e.inSelectionMode?this._wordSelectDrag(e.position,e.revealType):this._wordSelect(e.position,e.revealType)):this._hasMulticursorModifier(e)?this._hasNonMulticursorModifier(e)||(e.shiftKey?this._columnSelect(e.position,e.mouseColumn,!0):e.inSelectionMode?this._lastCursorMoveToSelect(e.position,e.revealType):this._createCursor(e.position,!1)):e.inSelectionMode?e.altKey?this._columnSelect(e.position,e.mouseColumn,!0):n?this._columnSelect(e.position,e.mouseColumn,!0):this._moveToSelect(e.position,e.revealType):this.moveTo(e.position,e.revealType)}_usualArgs(e,t){return e=this._validateViewColumn(e),{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,revealType:t}}moveTo(e,t){Li.MoveTo.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_moveToSelect(e,t){Li.MoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_columnSelect(e,t,i){e=this._validateViewColumn(e),Li.ColumnSelect.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,mouseColumn:t,doColumnSelect:i})}_createCursor(e,t){e=this._validateViewColumn(e),Li.CreateCursor.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,wholeLine:t})}_lastCursorMoveToSelect(e,t){Li.LastCursorMoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_wordSelect(e,t){Li.WordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_wordSelectDrag(e,t){Li.WordSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lastCursorWordSelect(e,t){Li.LastCursorWordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lineSelect(e,t){Li.LineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lineSelectDrag(e,t){Li.LineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lastCursorLineSelect(e,t){Li.LastCursorLineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_lastCursorLineSelectDrag(e,t){Li.LastCursorLineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,t))}_selectAll(){Li.SelectAll.runCoreEditorCommand(this.viewModel,{source:"mouse"})}_convertViewToModelPosition(e){return this.viewModel.coordinatesConverter.convertViewPositionToModelPosition(e)}emitKeyDown(e){this.userInputEvents.emitKeyDown(e)}emitKeyUp(e){this.userInputEvents.emitKeyUp(e)}emitContextMenu(e){this.userInputEvents.emitContextMenu(e)}emitMouseMove(e){this.userInputEvents.emitMouseMove(e)}emitMouseLeave(e){this.userInputEvents.emitMouseLeave(e)}emitMouseUp(e){this.userInputEvents.emitMouseUp(e)}emitMouseDown(e){this.userInputEvents.emitMouseDown(e)}emitMouseDrag(e){this.userInputEvents.emitMouseDrag(e)}emitMouseDrop(e){this.userInputEvents.emitMouseDrop(e)}emitMouseDropCanceled(){this.userInputEvents.emitMouseDropCanceled()}emitMouseWheel(e){this.userInputEvents.emitMouseWheel(e)}}class L8{constructor(e){this._lineFactory=e,this._set(1,[])}flush(){this._set(1,[])}_set(e,t){this._lines=t,this._rendLineNumberStart=e}_get(){return{rendLineNumberStart:this._rendLineNumberStart,lines:this._lines}}getStartLineNumber(){return this._rendLineNumberStart}getEndLineNumber(){return this._rendLineNumberStart+this._lines.length-1}getCount(){return this._lines.length}getLine(e){const t=e-this._rendLineNumberStart;if(t<0||t>=this._lines.length)throw new nt("Illegal value for lineNumber");return this._lines[t]}onLinesDeleted(e,t){if(this.getCount()===0)return null;const i=this.getStartLineNumber(),n=this.getEndLineNumber();if(tn)return null;let s=0,r=0;for(let l=i;l<=n;l++){const c=l-this._rendLineNumberStart;e<=l&&l<=t&&(r===0?(s=c,r=1):r++)}if(e=n&&a<=s&&(this._lines[a-this._rendLineNumberStart].onContentChanged(),r=!0);return r}onLinesInserted(e,t){if(this.getCount()===0)return null;const i=t-e+1,n=this.getStartLineNumber(),s=this.getEndLineNumber();if(e<=n)return this._rendLineNumberStart+=i,null;if(e>s)return null;if(i+e>s)return this._lines.splice(e-this._rendLineNumberStart,s-e+1);const r=[];for(let h=0;hi)continue;const l=Math.max(t,a.fromLineNumber),c=Math.min(i,a.toLineNumber);for(let d=l;d<=c;d++){const h=d-this._rendLineNumberStart;this._lines[h].onTokensChanged(),n=!0}}return n}}class x8{constructor(e){this._lineFactory=e,this.domNode=this._createDomNode(),this._linesCollection=new L8(this._lineFactory)}_createDomNode(){const e=ot(document.createElement("div"));return e.setClassName("view-layer"),e.setPosition("absolute"),e.domNode.setAttribute("role","presentation"),e.domNode.setAttribute("aria-hidden","true"),e}onConfigurationChanged(e){return!!e.hasChanged(146)}onFlushed(e){return this._linesCollection.flush(),!0}onLinesChanged(e){return this._linesCollection.onLinesChanged(e.fromLineNumber,e.count)}onLinesDeleted(e){const t=this._linesCollection.onLinesDeleted(e.fromLineNumber,e.toLineNumber);if(t)for(let i=0,n=t.length;it){const r=t,a=Math.min(i,s.rendLineNumberStart-1);r<=a&&(this._insertLinesBefore(s,r,a,n,t),s.linesLength+=a-r+1)}else if(s.rendLineNumberStart0&&(this._removeLinesBefore(s,r),s.linesLength-=r)}if(s.rendLineNumberStart=t,s.rendLineNumberStart+s.linesLength-1i){const r=Math.max(0,i-s.rendLineNumberStart+1),l=s.linesLength-1-r+1;l>0&&(this._removeLinesAfter(s,l),s.linesLength-=l)}return this._finishRendering(s,!1,n),s}_renderUntouchedLines(e,t,i,n,s){const r=e.rendLineNumberStart,a=e.lines;for(let l=t;l<=i;l++){const c=r+l;a[l].layoutLine(c,n[c-s],this._viewportData.lineHeight)}}_insertLinesBefore(e,t,i,n,s){const r=[];let a=0;for(let l=t;l<=i;l++)r[a++]=this._lineFactory.createLine();e.lines=r.concat(e.lines)}_removeLinesBefore(e,t){for(let i=0;i=0;a--){const l=e.lines[a];n[a]&&(l.setDomNode(r),r=r.previousSibling)}}_finishRenderingInvalidLines(e,t,i){const n=document.createElement("div");Za._ttPolicy&&(t=Za._ttPolicy.createHTML(t)),n.innerHTML=t;for(let s=0;se}),Za._sb=new K_(1e5);let II=Za;class k8 extends _s{constructor(e){super(e),this._dynamicOverlays=[],this._isFocused=!1,this._visibleLines=new x8({createLine:()=>new zne(this._dynamicOverlays)}),this.domNode=this._visibleLines.domNode;const i=this._context.configuration.options.get(50);qi(this.domNode,i),this.domNode.setClassName("view-overlays")}shouldRender(){if(super.shouldRender())return!0;for(let e=0,t=this._dynamicOverlays.length;ei.shouldRender());for(let i=0,n=t.length;i'),s.appendString(r),s.appendString(""),!0)}layoutLine(e,t,i){this._domNode&&(this._domNode.setTop(t),this._domNode.setHeight(i))}}class Une extends k8{constructor(e){super(e);const i=this._context.configuration.options.get(146);this._contentWidth=i.contentWidth,this.domNode.setHeight(0)}onConfigurationChanged(e){const i=this._context.configuration.options.get(146);return this._contentWidth=i.contentWidth,super.onConfigurationChanged(e)||!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollWidthChanged}_viewOverlaysRender(e){super._viewOverlaysRender(e),this.domNode.setWidth(Math.max(e.scrollWidth,this._contentWidth))}}class $ne extends k8{constructor(e){super(e);const t=this._context.configuration.options,i=t.get(146);this._contentLeft=i.contentLeft,this.domNode.setClassName("margin-view-overlays"),this.domNode.setWidth(1),qi(this.domNode,t.get(50))}onConfigurationChanged(e){const t=this._context.configuration.options;qi(this.domNode,t.get(50));const i=t.get(146);return this._contentLeft=i.contentLeft,super.onConfigurationChanged(e)||!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollHeightChanged}_viewOverlaysRender(e){super._viewOverlaysRender(e);const t=Math.min(e.scrollHeight,1e6);this.domNode.setHeight(t),this.domNode.setWidth(this._contentLeft)}}class Iy{constructor(e){this.onKeyDown=null,this.onKeyUp=null,this.onContextMenu=null,this.onMouseMove=null,this.onMouseLeave=null,this.onMouseDown=null,this.onMouseUp=null,this.onMouseDrag=null,this.onMouseDrop=null,this.onMouseDropCanceled=null,this.onMouseWheel=null,this._coordinatesConverter=e}emitKeyDown(e){this.onKeyDown?.(e)}emitKeyUp(e){this.onKeyUp?.(e)}emitContextMenu(e){this.onContextMenu?.(this._convertViewToModelMouseEvent(e))}emitMouseMove(e){this.onMouseMove?.(this._convertViewToModelMouseEvent(e))}emitMouseLeave(e){this.onMouseLeave?.(this._convertViewToModelMouseEvent(e))}emitMouseDown(e){this.onMouseDown?.(this._convertViewToModelMouseEvent(e))}emitMouseUp(e){this.onMouseUp?.(this._convertViewToModelMouseEvent(e))}emitMouseDrag(e){this.onMouseDrag?.(this._convertViewToModelMouseEvent(e))}emitMouseDrop(e){this.onMouseDrop?.(this._convertViewToModelMouseEvent(e))}emitMouseDropCanceled(){this.onMouseDropCanceled?.()}emitMouseWheel(e){this.onMouseWheel?.(e)}_convertViewToModelMouseEvent(e){return e.target?{event:e.event,target:this._convertViewToModelMouseTarget(e.target)}:e}_convertViewToModelMouseTarget(e){return Iy.convertViewToModelMouseTarget(e,this._coordinatesConverter)}static convertViewToModelMouseTarget(e,t){const i={...e};return i.position&&(i.position=t.convertViewPositionToModelPosition(i.position)),i.range&&(i.range=t.convertViewRangeToModelRange(i.range)),(i.type===5||i.type===8)&&(i.detail=this.convertViewToModelViewZoneData(i.detail,t)),i}static convertViewToModelViewZoneData(e,t){return{viewZoneId:e.viewZoneId,positionBefore:e.positionBefore?t.convertViewPositionToModelPosition(e.positionBefore):e.positionBefore,positionAfter:e.positionAfter?t.convertViewPositionToModelPosition(e.positionAfter):e.positionAfter,position:t.convertViewPositionToModelPosition(e.position),afterLineNumber:t.convertViewPositionToModelPosition(new P(e.afterLineNumber,1)).lineNumber}}}class Kne extends _s{constructor(e){super(e),this.blocks=[],this.contentWidth=-1,this.contentLeft=0,this.domNode=ot(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("blockDecorations-container"),this.update()}update(){let e=!1;const i=this._context.configuration.options.get(146),n=i.contentWidth-i.verticalScrollbarWidth;this.contentWidth!==n&&(this.contentWidth=n,e=!0);const s=i.contentLeft;return this.contentLeft!==s&&(this.contentLeft=s,e=!0),e}dispose(){super.dispose()}onConfigurationChanged(e){return this.update()}onScrollChanged(e){return e.scrollTopChanged||e.scrollLeftChanged}onDecorationsChanged(e){return!0}onZonesChanged(e){return!0}prepareRender(e){}render(e){let t=0;const i=e.getDecorationsInViewport();for(const n of i){if(!n.options.blockClassName)continue;let s=this.blocks[t];s||(s=this.blocks[t]=ot(document.createElement("div")),this.domNode.appendChild(s));let r,a;n.options.blockIsAfterEnd?(r=e.getVerticalOffsetAfterLineNumber(n.range.endLineNumber,!1),a=e.getVerticalOffsetAfterLineNumber(n.range.endLineNumber,!0)):(r=e.getVerticalOffsetForLineNumber(n.range.startLineNumber,!0),a=n.range.isEmpty()&&!n.options.blockDoesNotCollapse?e.getVerticalOffsetForLineNumber(n.range.startLineNumber,!1):e.getVerticalOffsetAfterLineNumber(n.range.endLineNumber,!0));const[l,c,d,h]=n.options.blockPadding??[0,0,0,0];s.setClassName("blockDecorations-block "+n.options.blockClassName),s.setLeft(this.contentLeft-h),s.setWidth(this.contentWidth+h+c),s.setTop(r-e.scrollTop-l),s.setHeight(a-r+l+d),t++}for(let n=t;n0?this.domNode.setDisplay("block"):this.domNode.setDisplay("none"),this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1}_layoutBoxInViewport(e,t,i,n){const s=e.top,r=s,a=e.top+e.height,l=n.viewportHeight-a,c=s-i,d=r>=i,h=a,u=l>=i;let f=e.left;return f+t>n.scrollLeft+n.viewportWidth&&(f=n.scrollLeft+n.viewportWidth-t),fl){const u=h-(l-n);h-=u,i-=u}if(h=p,C=h+i<=u.height-_;return this._fixedOverflowWidgets?{fitsAbove:b,aboveTop:Math.max(d,p),fitsBelow:C,belowTop:h,left:g}:{fitsAbove:b,aboveTop:s,fitsBelow:C,belowTop:r,left:f}}_prepareRenderWidgetAtExactPositionOverflowing(e){return new ym(e.top,e.left+this._contentLeft)}_getAnchorsCoordinates(e){const t=s(this._primaryAnchor.viewPosition,this._affinity,this._lineHeight),i=this._secondaryAnchor.viewPosition?.lineNumber===this._primaryAnchor.viewPosition?.lineNumber?this._secondaryAnchor.viewPosition:null,n=s(i,this._affinity,this._lineHeight);return{primary:t,secondary:n};function s(r,a,l){if(!r)return null;const c=e.visibleRangeForPosition(r);if(!c)return null;const d=r.column===1&&a===3?0:c.left,h=e.getVerticalOffsetForLineNumber(r.lineNumber)-e.scrollTop;return new AO(h,d,l)}}_reduceAnchorCoordinates(e,t,i){if(!t)return e;const n=this._context.configuration.options.get(50);let s=t.left;return se.endLineNumber||this.domNode.setMaxWidth(this._maxWidth)}prepareRender(e){this._renderData=this._prepareRenderWidget(e)}render(e){if(!this._renderData||this._renderData.kind==="offViewport"){this._isVisible&&(this.domNode.removeAttribute("monaco-visible-content-widget"),this._isVisible=!1,this._renderData?.kind==="offViewport"&&this._renderData.preserveFocus?this.domNode.setTop(-1e3):this.domNode.setVisibility("hidden")),typeof this._actual.afterRender=="function"&&nL(this._actual.afterRender,this._actual,null);return}this.allowEditorOverflow?(this.domNode.setTop(this._renderData.coordinate.top),this.domNode.setLeft(this._renderData.coordinate.left)):(this.domNode.setTop(this._renderData.coordinate.top+e.scrollTop-e.bigNumbersDelta),this.domNode.setLeft(this._renderData.coordinate.left)),this._isVisible||(this.domNode.setVisibility("inherit"),this.domNode.setAttribute("monaco-visible-content-widget","true"),this._isVisible=!0),typeof this._actual.afterRender=="function"&&nL(this._actual.afterRender,this._actual,this._renderData.position)}}class wm{constructor(e,t){this.modelPosition=e,this.viewPosition=t}}class ym{constructor(e,t){this.top=e,this.left=t,this._coordinateBrand=void 0}}class AO{constructor(e,t,i){this.top=e,this.left=t,this.height=i,this._anchorCoordinateBrand=void 0}}function nL(o,e,...t){try{return o.call(e,...t)}catch{return null}}class D8 extends mu{constructor(e){super(),this._context=e;const t=this._context.configuration.options,i=t.get(146);this._renderLineHighlight=t.get(97),this._renderLineHighlightOnlyWhenFocus=t.get(98),this._wordWrap=i.isViewportWrapping,this._contentLeft=i.contentLeft,this._contentWidth=i.contentWidth,this._selectionIsEmpty=!0,this._focused=!1,this._cursorLineNumbers=[1],this._selections=[new Fe(1,1,1,1)],this._renderData=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}_readFromSelections(){let e=!1;const t=new Set;for(const s of this._selections)t.add(s.positionLineNumber);const i=Array.from(t);i.sort((s,r)=>s-r),li(this._cursorLineNumbers,i)||(this._cursorLineNumbers=i,e=!0);const n=this._selections.every(s=>s.isEmpty());return this._selectionIsEmpty!==n&&(this._selectionIsEmpty=n,e=!0),e}onThemeChanged(e){return this._readFromSelections()}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(146);return this._renderLineHighlight=t.get(97),this._renderLineHighlightOnlyWhenFocus=t.get(98),this._wordWrap=i.isViewportWrapping,this._contentLeft=i.contentLeft,this._contentWidth=i.contentWidth,!0}onCursorStateChanged(e){return this._selections=e.selections,this._readFromSelections()}onFlushed(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollWidthChanged||e.scrollTopChanged}onZonesChanged(e){return!0}onFocusChanged(e){return this._renderLineHighlightOnlyWhenFocus?(this._focused=e.isFocused,!0):!1}prepareRender(e){if(!this._shouldRenderThis()){this._renderData=null;return}const t=e.visibleRange.startLineNumber,i=e.visibleRange.endLineNumber,n=[];for(let r=t;r<=i;r++){const a=r-t;n[a]=""}if(this._wordWrap){const r=this._renderOne(e,!1);for(const a of this._cursorLineNumbers){const l=this._context.viewModel.coordinatesConverter,c=l.convertViewPositionToModelPosition(new P(a,1)).lineNumber,d=l.convertModelPositionToViewPosition(new P(c,1)).lineNumber,h=l.convertModelPositionToViewPosition(new P(c,this._context.viewModel.model.getLineMaxColumn(c))).lineNumber,u=Math.max(d,t),f=Math.min(h,i);for(let g=u;g<=f;g++){const p=g-t;n[p]=r}}}const s=this._renderOne(e,!0);for(const r of this._cursorLineNumbers){if(ri)continue;const a=r-t;n[a]=s}this._renderData=n}render(e,t){if(!this._renderData)return"";const i=t-e;return i>=this._renderData.length?"":this._renderData[i]}_shouldRenderInMargin(){return(this._renderLineHighlight==="gutter"||this._renderLineHighlight==="all")&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}_shouldRenderInContent(){return(this._renderLineHighlight==="line"||this._renderLineHighlight==="all")&&this._selectionIsEmpty&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}}class Gne extends D8{_renderOne(e,t){return`
    `}_shouldRenderThis(){return this._shouldRenderInContent()}_shouldRenderOther(){return this._shouldRenderInMargin()}}class Zne extends D8{_renderOne(e,t){return`
    `}_shouldRenderThis(){return!0}_shouldRenderOther(){return this._shouldRenderInContent()}}Sr((o,e)=>{const t=o.getColor(z7);if(t&&(e.addRule(`.monaco-editor .view-overlays .current-line { background-color: ${t}; }`),e.addRule(`.monaco-editor .margin-view-overlays .current-line-margin { background-color: ${t}; border: none; }`)),!t||t.isTransparent()||o.defines(vP)){const i=o.getColor(vP);i&&(e.addRule(`.monaco-editor .view-overlays .current-line-exact { border: 2px solid ${i}; }`),e.addRule(`.monaco-editor .margin-view-overlays .current-line-exact-margin { border: 2px solid ${i}; }`),mc(o.type)&&(e.addRule(".monaco-editor .view-overlays .current-line-exact { border-width: 1px; }"),e.addRule(".monaco-editor .margin-view-overlays .current-line-exact-margin { border-width: 1px; }")))}});class Yne extends mu{constructor(e){super(),this._context=e;const t=this._context.configuration.options;this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged||e.scrollWidthChanged}onZonesChanged(e){return!0}prepareRender(e){const t=e.getDecorationsInViewport();let i=[],n=0;for(let l=0,c=t.length;l{if(l.options.zIndexc.options.zIndex)return 1;const d=l.options.className,h=c.options.className;return dh?1:I.compareRangesUsingStarts(l.range,c.range)});const s=e.visibleRange.startLineNumber,r=e.visibleRange.endLineNumber,a=[];for(let l=s;l<=r;l++){const c=l-s;a[c]=""}this._renderWholeLineDecorations(e,i,a),this._renderNormalDecorations(e,i,a),this._renderResult=a}_renderWholeLineDecorations(e,t,i){const n=e.visibleRange.startLineNumber,s=e.visibleRange.endLineNumber;for(let r=0,a=t.length;r',d=Math.max(l.range.startLineNumber,n),h=Math.min(l.range.endLineNumber,s);for(let u=d;u<=h;u++){const f=u-n;i[f]+=c}}}_renderNormalDecorations(e,t,i){const n=e.visibleRange.startLineNumber;let s=null,r=!1,a=null,l=!1;for(let c=0,d=t.length;c';a[u]+=b}}}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}class Qne extends _s{constructor(e,t,i,n){super(e);const s=this._context.configuration.options,r=s.get(104),a=s.get(75),l=s.get(40),c=s.get(107),d={listenOnDomNode:i.domNode,className:"editor-scrollable "+gk(e.theme.type),useShadows:!1,lazyRender:!0,vertical:r.vertical,horizontal:r.horizontal,verticalHasArrows:r.verticalHasArrows,horizontalHasArrows:r.horizontalHasArrows,verticalScrollbarSize:r.verticalScrollbarSize,verticalSliderSize:r.verticalSliderSize,horizontalScrollbarSize:r.horizontalScrollbarSize,horizontalSliderSize:r.horizontalSliderSize,handleMouseWheel:r.handleMouseWheel,alwaysConsumeMouseWheel:r.alwaysConsumeMouseWheel,arrowSize:r.arrowSize,mouseWheelScrollSensitivity:a,fastScrollSensitivity:l,scrollPredominantAxis:c,scrollByPage:r.scrollByPage};this.scrollbar=this._register(new X0(t.domNode,d,this._context.viewLayout.getScrollable())),vr.write(this.scrollbar.getDomNode(),6),this.scrollbarDomNode=ot(this.scrollbar.getDomNode()),this.scrollbarDomNode.setPosition("absolute"),this._setLayout();const h=(u,f,g)=>{const p={};{const _=u.scrollTop;_&&(p.scrollTop=this._context.viewLayout.getCurrentScrollTop()+_,u.scrollTop=0)}if(g){const _=u.scrollLeft;_&&(p.scrollLeft=this._context.viewLayout.getCurrentScrollLeft()+_,u.scrollLeft=0)}this._context.viewModel.viewLayout.setScrollPosition(p,1)};this._register(U(i.domNode,"scroll",u=>h(i.domNode,!0,!0))),this._register(U(t.domNode,"scroll",u=>h(t.domNode,!0,!1))),this._register(U(n.domNode,"scroll",u=>h(n.domNode,!0,!1))),this._register(U(this.scrollbarDomNode.domNode,"scroll",u=>h(this.scrollbarDomNode.domNode,!0,!1)))}dispose(){super.dispose()}_setLayout(){const e=this._context.configuration.options,t=e.get(146);this.scrollbarDomNode.setLeft(t.contentLeft),e.get(73).side==="right"?this.scrollbarDomNode.setWidth(t.contentWidth+t.minimap.minimapWidth):this.scrollbarDomNode.setWidth(t.contentWidth),this.scrollbarDomNode.setHeight(t.height)}getOverviewRulerLayoutInfo(){return this.scrollbar.getOverviewRulerLayoutInfo()}getDomNode(){return this.scrollbarDomNode}delegateVerticalScrollbarPointerDown(e){this.scrollbar.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){this.scrollbar.delegateScrollFromMouseWheelEvent(e)}onConfigurationChanged(e){if(e.hasChanged(104)||e.hasChanged(75)||e.hasChanged(40)){const t=this._context.configuration.options,i=t.get(104),n=t.get(75),s=t.get(40),r=t.get(107),a={vertical:i.vertical,horizontal:i.horizontal,verticalScrollbarSize:i.verticalScrollbarSize,horizontalScrollbarSize:i.horizontalScrollbarSize,scrollByPage:i.scrollByPage,handleMouseWheel:i.handleMouseWheel,mouseWheelScrollSensitivity:n,fastScrollSensitivity:s,scrollPredominantAxis:r};this.scrollbar.updateOptions(a)}return e.hasChanged(146)&&this._setLayout(),!0}onScrollChanged(e){return!0}onThemeChanged(e){return this.scrollbar.updateClassName("editor-scrollable "+gk(this._context.theme.type)),!0}prepareRender(e){}render(e){this.scrollbar.renderNow()}}class EI{constructor(e,t,i,n,s){this.startLineNumber=e,this.endLineNumber=t,this.className=i,this.tooltip=n,this._decorationToRenderBrand=void 0,this.zIndex=s??0}}class Xne{constructor(e,t,i){this.className=e,this.zIndex=t,this.tooltip=i}}class Jne{constructor(){this.decorations=[]}add(e){this.decorations.push(e)}getDecorations(){return this.decorations}}class I8 extends mu{_render(e,t,i){const n=[];for(let a=e;a<=t;a++){const l=a-e;n[l]=new Jne}if(i.length===0)return n;i.sort((a,l)=>a.className===l.className?a.startLineNumber===l.startLineNumber?a.endLineNumber-l.endLineNumber:a.startLineNumber-l.startLineNumber:a.classNamen)continue;const c=Math.max(a,i),d=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new P(c,0)),h=this._context.viewModel.glyphLanes.getLanesAtLine(d.lineNumber).indexOf(s.preference.lane);t.push(new ise(c,h,s.preference.zIndex,s))}}_collectSortedGlyphRenderRequests(e){const t=[];return this._collectDecorationBasedGlyphRenderRequest(e,t),this._collectWidgetBasedGlyphRenderRequest(e,t),t.sort((i,n)=>i.lineNumber===n.lineNumber?i.laneIndex===n.laneIndex?i.zIndex===n.zIndex?n.type===i.type?i.type===0&&n.type===0?i.className0;){const n=t.peek();if(!n)break;const s=t.takeWhile(a=>a.lineNumber===n.lineNumber&&a.laneIndex===n.laneIndex);if(!s||s.length===0)break;const r=s[0];if(r.type===0){const a=[];for(const l of s){if(l.zIndex!==r.zIndex||l.type!==r.type)break;(a.length===0||a[a.length-1]!==l.className)&&a.push(l.className)}i.push(r.accept(a.join(" ")))}else r.widget.renderInfo={lineNumber:r.lineNumber,laneIndex:r.laneIndex}}this._decorationGlyphsToRender=i}render(e){if(!this._glyphMargin){for(const i of Object.values(this._widgets))i.domNode.setDisplay("none");for(;this._managedDomNodes.length>0;)this._managedDomNodes.pop()?.domNode.remove();return}const t=Math.round(this._glyphMarginWidth/this._glyphMarginDecorationLaneCount);for(const i of Object.values(this._widgets))if(!i.renderInfo)i.domNode.setDisplay("none");else{const n=e.viewportData.relativeVerticalOffset[i.renderInfo.lineNumber-e.viewportData.startLineNumber],s=this._glyphMarginLeft+i.renderInfo.laneIndex*this._lineHeight;i.domNode.setDisplay("block"),i.domNode.setTop(n),i.domNode.setLeft(s),i.domNode.setWidth(t),i.domNode.setHeight(this._lineHeight)}for(let i=0;ithis._decorationGlyphsToRender.length;)this._managedDomNodes.pop()?.domNode.remove()}}class tse{constructor(e,t,i,n){this.lineNumber=e,this.laneIndex=t,this.zIndex=i,this.className=n,this.type=0}accept(e){return new nse(this.lineNumber,this.laneIndex,e)}}class ise{constructor(e,t,i,n){this.lineNumber=e,this.laneIndex=t,this.zIndex=i,this.widget=n,this.type=1}}class nse{constructor(e,t,i){this.lineNumber=e,this.laneIndex=t,this.combinedClassName=i}}class sse extends mu{constructor(e){super(),this._context=e,this._primaryPosition=null;const t=this._context.configuration.options,i=t.get(147),n=t.get(50);this._spaceWidth=n.spaceWidth,this._maxIndentLeft=i.wrappingColumn===-1?-1:i.wrappingColumn*n.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=t.get(16),this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(147),n=t.get(50);return this._spaceWidth=n.spaceWidth,this._maxIndentLeft=i.wrappingColumn===-1?-1:i.wrappingColumn*n.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=t.get(16),!0}onCursorStateChanged(e){const i=e.selections[0].getPosition();return this._primaryPosition?.equals(i)?!1:(this._primaryPosition=i,!0)}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}onLanguageConfigurationChanged(e){return!0}prepareRender(e){if(!this._bracketPairGuideOptions.indentation&&this._bracketPairGuideOptions.bracketPairs===!1){this._renderResult=null;return}const t=e.visibleRange.startLineNumber,i=e.visibleRange.endLineNumber,n=e.scrollWidth,s=this._primaryPosition,r=this.getGuidesByLine(t,Math.min(i+1,this._context.viewModel.getLineCount()),s),a=[];for(let l=t;l<=i;l++){const c=l-t,d=r[c];let h="";const u=e.visibleRangeForPosition(new P(l,1))?.left??0;for(const f of d){const g=f.column===-1?u+(f.visibleColumn-1)*this._spaceWidth:e.visibleRangeForPosition(new P(l,f.column)).left;if(g>n||this._maxIndentLeft>0&&g>this._maxIndentLeft)break;const p=f.horizontalLine?f.horizontalLine.top?"horizontal-top":"horizontal-bottom":"vertical",_=f.horizontalLine?(e.visibleRangeForPosition(new P(l,f.horizontalLine.endColumn))?.left??g+this._spaceWidth)-g:this._spaceWidth;h+=`
    `}a[c]=h}this._renderResult=a}getGuidesByLine(e,t,i){const n=this._bracketPairGuideOptions.bracketPairs!==!1?this._context.viewModel.getBracketGuidesInRangeByLine(e,t,i,{highlightActive:this._bracketPairGuideOptions.highlightActiveBracketPair,horizontalGuides:this._bracketPairGuideOptions.bracketPairsHorizontal===!0?eh.Enabled:this._bracketPairGuideOptions.bracketPairsHorizontal==="active"?eh.EnabledForActive:eh.Disabled,includeInactive:this._bracketPairGuideOptions.bracketPairs===!0}):null,s=this._bracketPairGuideOptions.indentation?this._context.viewModel.getLinesIndentGuides(e,t):null;let r=0,a=0,l=0;if(this._bracketPairGuideOptions.highlightActiveIndentation!==!1&&i){const h=this._context.viewModel.getActiveIndentGuide(i.lineNumber,e,t);r=h.startLineNumber,a=h.endLineNumber,l=h.indent}const{indentSize:c}=this._context.viewModel.model.getOptions(),d=[];for(let h=e;h<=t;h++){const u=new Array;d.push(u);const f=n?n[h-e]:[],g=new Ll(f),p=s?s[h-e]:0;for(let _=1;_<=p;_++){const b=(_-1)*c+1,C=(this._bracketPairGuideOptions.highlightActiveIndentation==="always"||f.length===0)&&r<=h&&h<=a&&_===l;u.push(...g.takeWhile(v=>v.visibleColumn!0)||[])}return d}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}function Pu(o){if(!(o&&o.isTransparent()))return o}Sr((o,e)=>{const t=[{bracketColor:K7,guideColor:pQ,guideColorActive:yQ},{bracketColor:j7,guideColor:_Q,guideColorActive:SQ},{bracketColor:q7,guideColor:bQ,guideColorActive:LQ},{bracketColor:G7,guideColor:CQ,guideColorActive:xQ},{bracketColor:Z7,guideColor:vQ,guideColorActive:kQ},{bracketColor:Y7,guideColor:wQ,guideColorActive:DQ}],i=new c9,n=[{indentColor:tb,indentColorActive:ib},{indentColor:YY,indentColorActive:tQ},{indentColor:QY,indentColorActive:iQ},{indentColor:XY,indentColorActive:nQ},{indentColor:JY,indentColorActive:sQ},{indentColor:eQ,indentColorActive:oQ}],s=t.map(a=>{const l=o.getColor(a.bracketColor),c=o.getColor(a.guideColor),d=o.getColor(a.guideColorActive),h=Pu(Pu(c)??l?.transparent(.3)),u=Pu(Pu(d)??l);if(!(!h||!u))return{guideColor:h,guideColorActive:u}}).filter(_l),r=n.map(a=>{const l=o.getColor(a.indentColor),c=o.getColor(a.indentColorActive),d=Pu(l),h=Pu(c);if(!(!d||!h))return{indentColor:d,indentColorActive:h}}).filter(_l);if(s.length>0){for(let a=0;a<30;a++){const l=s[a%s.length];e.addRule(`.monaco-editor .${i.getInlineClassNameOfLevel(a).replace(/ /g,".")} { --guide-color: ${l.guideColor}; --guide-color-active: ${l.guideColorActive}; }`)}e.addRule(".monaco-editor .vertical { box-shadow: 1px 0 0 0 var(--guide-color) inset; }"),e.addRule(".monaco-editor .horizontal-top { border-top: 1px solid var(--guide-color); }"),e.addRule(".monaco-editor .horizontal-bottom { border-bottom: 1px solid var(--guide-color); }"),e.addRule(`.monaco-editor .vertical.${i.activeClassName} { box-shadow: 1px 0 0 0 var(--guide-color-active) inset; }`),e.addRule(`.monaco-editor .horizontal-top.${i.activeClassName} { border-top: 1px solid var(--guide-color-active); }`),e.addRule(`.monaco-editor .horizontal-bottom.${i.activeClassName} { border-bottom: 1px solid var(--guide-color-active); }`)}if(r.length>0){for(let a=0;a<30;a++){const l=r[a%r.length];e.addRule(`.monaco-editor .lines-content .core-guide-indent.lvl-${a} { --indent-color: ${l.indentColor}; --indent-color-active: ${l.indentColorActive}; }`)}e.addRule(".monaco-editor .lines-content .core-guide-indent { box-shadow: 1px 0 0 0 var(--indent-color) inset; }"),e.addRule(".monaco-editor .lines-content .core-guide-indent.indent-active { box-shadow: 1px 0 0 0 var(--indent-color-active) inset; }")}});class sL{get didDomLayout(){return this._didDomLayout}readClientRect(){if(!this._clientRectRead){this._clientRectRead=!0;const e=this._domNode.getBoundingClientRect();this.markDidDomLayout(),this._clientRectDeltaLeft=e.left,this._clientRectScale=e.width/this._domNode.offsetWidth}}get clientRectDeltaLeft(){return this._clientRectRead||this.readClientRect(),this._clientRectDeltaLeft}get clientRectScale(){return this._clientRectRead||this.readClientRect(),this._clientRectScale}constructor(e,t){this._domNode=e,this.endNode=t,this._didDomLayout=!1,this._clientRectDeltaLeft=0,this._clientRectScale=1,this._clientRectRead=!1}markDidDomLayout(){this._didDomLayout=!0}}class ose{constructor(){this._currentVisibleRange=new I(1,1,1,1)}getCurrentVisibleRange(){return this._currentVisibleRange}setCurrentVisibleRange(e){this._currentVisibleRange=e}}class rse{constructor(e,t,i,n,s,r,a){this.minimalReveal=e,this.lineNumber=t,this.startColumn=i,this.endColumn=n,this.startScrollTop=s,this.stopScrollTop=r,this.scrollType=a,this.type="range",this.minLineNumber=t,this.maxLineNumber=t}}class ase{constructor(e,t,i,n,s){this.minimalReveal=e,this.selections=t,this.startScrollTop=i,this.stopScrollTop=n,this.scrollType=s,this.type="selections";let r=t[0].startLineNumber,a=t[0].endLineNumber;for(let l=1,c=t.length;lnew sl(this._viewLineOptions)}),this.domNode=this._visibleLines.domNode,vr.write(this.domNode,8),this.domNode.setClassName(`view-lines ${Zf}`),qi(this.domNode,s),this._maxLineWidth=0,this._asyncUpdateLineWidths=new ci(()=>{this._updateLineWidthsSlow()},200),this._asyncCheckMonospaceFontAssumptions=new ci(()=>{this._checkMonospaceFontAssumptions()},2e3),this._lastRenderedData=new ose,this._horizontalRevealRequest=null,this._stickyScrollEnabled=n.get(116).enabled,this._maxNumberStickyLines=n.get(116).maxLineCount}dispose(){this._asyncUpdateLineWidths.dispose(),this._asyncCheckMonospaceFontAssumptions.dispose(),super.dispose()}getDomNode(){return this.domNode}onConfigurationChanged(e){this._visibleLines.onConfigurationChanged(e),e.hasChanged(147)&&(this._maxLineWidth=0);const t=this._context.configuration.options,i=t.get(50),n=t.get(147);return this._lineHeight=t.get(67),this._typicalHalfwidthCharacterWidth=i.typicalHalfwidthCharacterWidth,this._isViewportWrapping=n.isViewportWrapping,this._revealHorizontalRightPadding=t.get(101),this._cursorSurroundingLines=t.get(29),this._cursorSurroundingLinesStyle=t.get(30),this._canUseLayerHinting=!t.get(32),this._stickyScrollEnabled=t.get(116).enabled,this._maxNumberStickyLines=t.get(116).maxLineCount,qi(this.domNode,i),this._onOptionsMaybeChanged(),e.hasChanged(146)&&(this._maxLineWidth=0),!0}_onOptionsMaybeChanged(){const e=this._context.configuration,t=new xO(e,this._context.theme.type);if(!this._viewLineOptions.equals(t)){this._viewLineOptions=t;const i=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();for(let s=i;s<=n;s++)this._visibleLines.getVisibleLine(s).onOptionsChanged(this._viewLineOptions);return!0}return!1}onCursorStateChanged(e){const t=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber();let n=!1;for(let s=t;s<=i;s++)n=this._visibleLines.getVisibleLine(s).onSelectionChanged()||n;return n}onDecorationsChanged(e){{const t=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber();for(let n=t;n<=i;n++)this._visibleLines.getVisibleLine(n).onDecorationsChanged()}return!0}onFlushed(e){const t=this._visibleLines.onFlushed(e);return this._maxLineWidth=0,t}onLinesChanged(e){return this._visibleLines.onLinesChanged(e)}onLinesDeleted(e){return this._visibleLines.onLinesDeleted(e)}onLinesInserted(e){return this._visibleLines.onLinesInserted(e)}onRevealRangeRequest(e){const t=this._computeScrollTopToRevealRange(this._context.viewLayout.getFutureViewport(),e.source,e.minimalReveal,e.range,e.selections,e.verticalType);if(t===-1)return!1;let i=this._context.viewLayout.validateScrollPosition({scrollTop:t});e.revealHorizontal?e.range&&e.range.startLineNumber!==e.range.endLineNumber?i={scrollTop:i.scrollTop,scrollLeft:0}:e.range?this._horizontalRevealRequest=new rse(e.minimalReveal,e.range.startLineNumber,e.range.startColumn,e.range.endColumn,this._context.viewLayout.getCurrentScrollTop(),i.scrollTop,e.scrollType):e.selections&&e.selections.length>0&&(this._horizontalRevealRequest=new ase(e.minimalReveal,e.selections,this._context.viewLayout.getCurrentScrollTop(),i.scrollTop,e.scrollType)):this._horizontalRevealRequest=null;const s=Math.abs(this._context.viewLayout.getCurrentScrollTop()-i.scrollTop)<=this._lineHeight?1:e.scrollType;return this._context.viewModel.viewLayout.setScrollPosition(i,s),!0}onScrollChanged(e){if(this._horizontalRevealRequest&&e.scrollLeftChanged&&(this._horizontalRevealRequest=null),this._horizontalRevealRequest&&e.scrollTopChanged){const t=Math.min(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop),i=Math.max(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop);(e.scrollTopi)&&(this._horizontalRevealRequest=null)}return this.domNode.setWidth(e.scrollWidth),this._visibleLines.onScrollChanged(e)||!0}onTokensChanged(e){return this._visibleLines.onTokensChanged(e)}onZonesChanged(e){return this._context.viewModel.viewLayout.setMaxLineWidth(this._maxLineWidth),this._visibleLines.onZonesChanged(e)}onThemeChanged(e){return this._onOptionsMaybeChanged()}getPositionFromDOMInfo(e,t){const i=this._getViewLineDomNode(e);if(i===null)return null;const n=this._getLineNumberFor(i);if(n===-1||n<1||n>this._context.viewModel.getLineCount())return null;if(this._context.viewModel.getLineMaxColumn(n)===1)return new P(n,1);const s=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();if(nr)return null;let a=this._visibleLines.getVisibleLine(n).getColumnOfNodeOffset(e,t);const l=this._context.viewModel.getLineMinColumn(n);return ai)return-1;const n=new sL(this.domNode.domNode,this._textRangeRestingSpot),s=this._visibleLines.getVisibleLine(e).getWidth(n);return this._updateLineWidthsSlowIfDomDidLayout(n),s}linesVisibleRangesForRange(e,t){if(this.shouldRender())return null;const i=e.endLineNumber,n=I.intersectRanges(e,this._lastRenderedData.getCurrentVisibleRange());if(!n)return null;const s=[];let r=0;const a=new sL(this.domNode.domNode,this._textRangeRestingSpot);let l=0;t&&(l=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new P(n.startLineNumber,1)).lineNumber);const c=this._visibleLines.getStartLineNumber(),d=this._visibleLines.getEndLineNumber();for(let h=n.startLineNumber;h<=n.endLineNumber;h++){if(hd)continue;const u=h===n.startLineNumber?n.startColumn:1,f=h!==n.endLineNumber,g=f?this._context.viewModel.getLineMaxColumn(h):n.endColumn,p=this._visibleLines.getVisibleLine(h).getVisibleRangesForRange(h,u,g,a);if(p){if(t&&hthis._visibleLines.getEndLineNumber())return null;const n=new sL(this.domNode.domNode,this._textRangeRestingSpot),s=this._visibleLines.getVisibleLine(e).getVisibleRangesForRange(e,t,i,n);return this._updateLineWidthsSlowIfDomDidLayout(n),s}visibleRangeForPosition(e){const t=this._visibleRangesForLineRange(e.lineNumber,e.column,e.column);return t?new Kie(t.outsideRenderedLine,t.ranges[0].left):null}_updateLineWidthsFast(){return this._updateLineWidths(!0)}_updateLineWidthsSlow(){this._updateLineWidths(!1)}_updateLineWidthsSlowIfDomDidLayout(e){e.didDomLayout&&(this._asyncUpdateLineWidths.isScheduled()||(this._asyncUpdateLineWidths.cancel(),this._updateLineWidthsSlow()))}_updateLineWidths(e){const t=this._visibleLines.getStartLineNumber(),i=this._visibleLines.getEndLineNumber();let n=1,s=!0;for(let r=t;r<=i;r++){const a=this._visibleLines.getVisibleLine(r);if(e&&!a.getWidthIsFast()){s=!1;continue}n=Math.max(n,a.getWidth(null))}return s&&t===1&&i===this._context.viewModel.getLineCount()&&(this._maxLineWidth=0),this._ensureMaxLineWidth(n),s}_checkMonospaceFontAssumptions(){let e=-1,t=-1;const i=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();for(let s=i;s<=n;s++){const r=this._visibleLines.getVisibleLine(s);if(r.needsMonospaceFontCheck()){const a=r.getWidth(null);a>t&&(t=a,e=s)}}if(e!==-1&&!this._visibleLines.getVisibleLine(e).monospaceAssumptionsAreValid())for(let s=i;s<=n;s++)this._visibleLines.getVisibleLine(s).onMonospaceAssumptionsInvalidated()}prepareRender(){throw new Error("Not supported")}render(){throw new Error("Not supported")}renderText(e){if(this._visibleLines.renderLines(e),this._lastRenderedData.setCurrentVisibleRange(e.visibleRange),this.domNode.setWidth(this._context.viewLayout.getScrollWidth()),this.domNode.setHeight(Math.min(this._context.viewLayout.getScrollHeight(),1e6)),this._horizontalRevealRequest){const i=this._horizontalRevealRequest;if(e.startLineNumber<=i.minLineNumber&&i.maxLineNumber<=e.endLineNumber){this._horizontalRevealRequest=null,this.onDidRender();const n=this._computeScrollLeftToReveal(i);n&&(this._isViewportWrapping||this._ensureMaxLineWidth(n.maxHorizontalOffset),this._context.viewModel.viewLayout.setScrollPosition({scrollLeft:n.scrollLeft},i.scrollType))}}if(this._updateLineWidthsFast()?this._asyncUpdateLineWidths.cancel():this._asyncUpdateLineWidths.schedule(),Un&&!this._asyncCheckMonospaceFontAssumptions.isScheduled()){const i=this._visibleLines.getStartLineNumber(),n=this._visibleLines.getEndLineNumber();for(let s=i;s<=n;s++)if(this._visibleLines.getVisibleLine(s).needsMonospaceFontCheck()){this._asyncCheckMonospaceFontAssumptions.schedule();break}}this._linesContent.setLayerHinting(this._canUseLayerHinting),this._linesContent.setContain("strict");const t=this._context.viewLayout.getCurrentScrollTop()-e.bigNumbersDelta;this._linesContent.setTop(-t),this._linesContent.setLeft(-this._context.viewLayout.getCurrentScrollLeft())}_ensureMaxLineWidth(e){const t=Math.ceil(e);this._maxLineWidth0){let b=s[0].startLineNumber,C=s[0].endLineNumber;for(let w=1,v=s.length;wl){if(!d)return-1;_=h}else if(r===5||r===6)if(r===6&&a<=h&&u<=c)_=a;else{const b=Math.max(5*this._lineHeight,l*.2),C=h-b,w=u-l;_=Math.max(w,C)}else if(r===1||r===2)if(r===2&&a<=h&&u<=c)_=a;else{const b=(h+u)/2;_=Math.max(0,b-l/2)}else _=this._computeMinimumScrolling(a,c,h,u,r===3,r===4);return _}_computeScrollLeftToReveal(e){const t=this._context.viewLayout.getCurrentViewport(),i=this._context.configuration.options.get(146),n=t.left,s=n+t.width-i.verticalScrollbarWidth;let r=1073741824,a=0;if(e.type==="range"){const c=this._visibleRangesForLineRange(e.lineNumber,e.startColumn,e.endColumn);if(!c)return null;for(const d of c.ranges)r=Math.min(r,Math.round(d.left)),a=Math.max(a,Math.round(d.left+d.width))}else for(const c of e.selections){if(c.startLineNumber!==c.endLineNumber)return null;const d=this._visibleRangesForLineRange(c.startLineNumber,c.startColumn,c.endColumn);if(!d)return null;for(const h of d.ranges)r=Math.min(r,Math.round(h.left)),a=Math.max(a,Math.round(h.left+h.width))}return e.minimalReveal||(r=Math.max(0,r-t0.HORIZONTAL_EXTRA_PX),a+=this._revealHorizontalRightPadding),e.type==="selections"&&a-r>t.width?null:{scrollLeft:this._computeMinimumScrolling(n,s,r,a),maxHorizontalOffset:a}}_computeMinimumScrolling(e,t,i,n,s,r){e=e|0,t=t|0,i=i|0,n=n|0,s=!!s,r=!!r;const a=t-e;if(n-it)return Math.max(0,n-a)}else return i;return e}};t0.HORIZONTAL_EXTRA_PX=30;let NI=t0;class lse extends I8{constructor(e){super(),this._context=e;const i=this._context.configuration.options.get(146);this._decorationsLeft=i.decorationsLeft,this._decorationsWidth=i.decorationsWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const i=this._context.configuration.options.get(146);return this._decorationsLeft=i.decorationsLeft,this._decorationsWidth=i.decorationsWidth,!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}_getDecorations(e){const t=e.getDecorationsInViewport(),i=[];let n=0;for(let s=0,r=t.length;s',l=[];for(let c=t;c<=i;c++){const d=c-t,h=n[d].getDecorations();let u="";for(const f of h){let g='
    ';s[a]=c}this._renderResult=s}render(e,t){return this._renderResult?this._renderResult[t-e]:""}}const Yl=class Yl{constructor(e,t,i,n){this._rgba8Brand=void 0,this.r=Yl._clamp(e),this.g=Yl._clamp(t),this.b=Yl._clamp(i),this.a=Yl._clamp(n)}equals(e){return this.r===e.r&&this.g===e.g&&this.b===e.b&&this.a===e.a}static _clamp(e){return e<0?0:e>255?255:e|0}};Yl.Empty=new Yl(0,0,0,0);let Sl=Yl;const i0=class i0 extends z{static getInstance(){return this._INSTANCE||(this._INSTANCE=new i0),this._INSTANCE}constructor(){super(),this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._updateColorMap(),this._register(si.onDidChange(e=>{e.changedColorMap&&this._updateColorMap()}))}_updateColorMap(){const e=si.getColorMap();if(!e){this._colors=[Sl.Empty],this._backgroundIsLight=!0;return}this._colors=[Sl.Empty];for(let i=1;i=.5,this._onDidChange.fire(void 0)}getColor(e){return(e<1||e>=this._colors.length)&&(e=2),this._colors[e]}backgroundIsLight(){return this._backgroundIsLight}};i0._INSTANCE=null;let Pv=i0;const dse=(()=>{const o=[];for(let e=32;e<=126;e++)o.push(e);return o.push(65533),o})(),hse=(o,e)=>(o-=32,o<0||o>96?e<=2?(o+96)%96:95:o);class k_{constructor(e,t){this.scale=t,this._minimapCharRendererBrand=void 0,this.charDataNormal=k_.soften(e,12/15),this.charDataLight=k_.soften(e,50/60)}static soften(e,t){const i=new Uint8ClampedArray(e.length);for(let n=0,s=e.length;ne.width||i+g>e.height){console.warn("bad render request outside image data");return}const p=d?this.charDataLight:this.charDataNormal,_=hse(n,c),b=e.width*4,C=a.r,w=a.g,v=a.b,y=s.r-C,x=s.g-w,L=s.b-v,E=Math.max(r,l),N=e.data;let H=_*u*f,F=i*b+t*4;for(let W=0;We.width||i+h>e.height){console.warn("bad render request outside image data");return}const u=e.width*4,f=.5*(s/255),g=r.r,p=r.g,_=r.b,b=n.r-g,C=n.g-p,w=n.b-_,v=g+b*f,y=p+C*f,x=_+w*f,L=Math.max(s,a),E=e.data;let N=i*u+t*4;for(let H=0;H{const e=new Uint8ClampedArray(o.length/2);for(let t=0;t>1]=PO[o[t]]<<4|PO[o[t+1]]&15;return e},FO={1:ng(()=>OO("0000511D6300CF609C709645A78432005642574171487021003C451900274D35D762755E8B629C5BA856AF57BA649530C167D1512A272A3F6038604460398526BCA2A968DB6F8957C768BE5FBE2FB467CF5D8D5B795DC7625B5DFF50DE64C466DB2FC47CD860A65E9A2EB96CB54CE06DA763AB2EA26860524D3763536601005116008177A8705E53AB738E6A982F88BAA35B5F5B626D9C636B449B737E5B7B678598869A662F6B5B8542706C704C80736A607578685B70594A49715A4522E792")),2:ng(()=>OO("000000000000000055394F383D2800008B8B1F210002000081B1CBCBCC820000847AAF6B9AAF2119BE08B8881AD60000A44FD07DCCF107015338130C00000000385972265F390B406E2437634B4B48031B12B8A0847000001E15B29A402F0000000000004B33460B00007A752C2A0000000000004D3900000084394B82013400ABA5CFC7AD9C0302A45A3E5A98AB000089A43382D97900008BA54AA087A70A0248A6A7AE6DBE0000BF6F94987EA40A01A06DCFA7A7A9030496C32F77891D0000A99FB1A0AFA80603B29AB9CA75930D010C0948354D3900000C0948354F37460D0028BE673D8400000000AF9D7B6E00002B007AA8933400007AA642675C2700007984CFB9C3985B768772A8A6B7B20000CAAECAAFC4B700009F94A6009F840009D09F9BA4CA9C0000CC8FC76DC87F0000C991C472A2000000A894A48CA7B501079BA2C9C69BA20000B19A5D3FA89000005CA6009DA2960901B0A7F0669FB200009D009E00B7890000DAD0F5D092820000D294D4C48BD10000B5A7A4A3B1A50402CAB6CBA6A2000000B5A7A4A3B1A8044FCDADD19D9CB00000B7778F7B8AAE0803C9AB5D3F5D3F00009EA09EA0BAB006039EA0989A8C7900009B9EF4D6B7C00000A9A7816CACA80000ABAC84705D3F000096DA635CDC8C00006F486F266F263D4784006124097B00374F6D2D6D2D6D4A3A95872322000000030000000000008D8939130000000000002E22A5C9CBC70600AB25C0B5C9B400061A2DB04CA67001082AA6BEBEBFC606002321DACBC19E03087AA08B6768380000282FBAC0B8CA7A88AD25BBA5A29900004C396C5894A6000040485A6E356E9442A32CD17EADA70000B4237923628600003E2DE9C1D7B500002F25BBA5A2990000231DB6AFB4A804023025C0B5CAB588062B2CBDBEC0C706882435A75CA20000002326BD6A82A908048B4B9A5A668000002423A09CB4BB060025259C9D8A7900001C1FCAB2C7C700002A2A9387ABA200002626A4A47D6E9D14333163A0C87500004B6F9C2D643A257049364936493647358A34438355497F1A0000A24C1D590000D38DFFBDD4CD3126"))};class gp{static create(e,t){if(this.lastCreated&&e===this.lastCreated.scale&&t===this.lastFontFamily)return this.lastCreated;let i;return FO[e]?i=new k_(FO[e](),e):i=gp.createFromSampleData(gp.createSampleData(t).data,e),this.lastFontFamily=t,this.lastCreated=i,i}static createSampleData(e){const t=document.createElement("canvas"),i=t.getContext("2d");t.style.height="16px",t.height=16,t.width=960,t.style.width="960px",i.fillStyle="#ffffff",i.font=`bold 16px ${e}`,i.textBaseline="middle";let n=0;for(const s of dse)i.fillText(String.fromCharCode(s),n,16/2),n+=10;return i.getImageData(0,0,960,16)}static createFromSampleData(e,t){if(e.length!==61440)throw new Error("Unexpected source in MinimapCharRenderer");const n=gp._downsample(e,t);return new k_(n,t)}static _downsampleChar(e,t,i,n,s){const r=1*s,a=2*s;let l=n,c=0;for(let d=0;d0){const c=255/l;for(let d=0;dgp.create(this.fontScale,l.fontFamily)),this.defaultBackgroundColor=i.getColor(2),this.backgroundColor=Yf._getMinimapBackground(t,this.defaultBackgroundColor),this.foregroundAlpha=Yf._getMinimapForegroundOpacity(t)}static _getMinimapBackground(e,t){const i=e.getColor(GK);return i?new Sl(i.rgba.r,i.rgba.g,i.rgba.b,Math.round(255*i.rgba.a)):t}static _getMinimapForegroundOpacity(e){const t=e.getColor(ZK);return t?Sl._clamp(Math.round(255*t.rgba.a)):255}static _getSectionHeaderColor(e,t){const i=e.getColor(Sa);return i?new Sl(i.rgba.r,i.rgba.g,i.rgba.b,Math.round(255*i.rgba.a)):t}equals(e){return this.renderMinimap===e.renderMinimap&&this.size===e.size&&this.minimapHeightIsEditorHeight===e.minimapHeightIsEditorHeight&&this.scrollBeyondLastLine===e.scrollBeyondLastLine&&this.paddingTop===e.paddingTop&&this.paddingBottom===e.paddingBottom&&this.showSlider===e.showSlider&&this.autohide===e.autohide&&this.pixelRatio===e.pixelRatio&&this.typicalHalfwidthCharacterWidth===e.typicalHalfwidthCharacterWidth&&this.lineHeight===e.lineHeight&&this.minimapLeft===e.minimapLeft&&this.minimapWidth===e.minimapWidth&&this.minimapHeight===e.minimapHeight&&this.canvasInnerWidth===e.canvasInnerWidth&&this.canvasInnerHeight===e.canvasInnerHeight&&this.canvasOuterWidth===e.canvasOuterWidth&&this.canvasOuterHeight===e.canvasOuterHeight&&this.isSampling===e.isSampling&&this.editorHeight===e.editorHeight&&this.fontScale===e.fontScale&&this.minimapLineHeight===e.minimapLineHeight&&this.minimapCharWidth===e.minimapCharWidth&&this.sectionHeaderFontSize===e.sectionHeaderFontSize&&this.sectionHeaderLetterSpacing===e.sectionHeaderLetterSpacing&&this.defaultBackgroundColor&&this.defaultBackgroundColor.equals(e.defaultBackgroundColor)&&this.backgroundColor&&this.backgroundColor.equals(e.backgroundColor)&&this.foregroundAlpha===e.foregroundAlpha}}class mp{constructor(e,t,i,n,s,r,a,l,c){this.scrollTop=e,this.scrollHeight=t,this.sliderNeeded=i,this._computedSliderRatio=n,this.sliderTop=s,this.sliderHeight=r,this.topPaddingLineCount=a,this.startLineNumber=l,this.endLineNumber=c}getDesiredScrollTopFromDelta(e){return Math.round(this.scrollTop+e/this._computedSliderRatio)}getDesiredScrollTopFromTouchLocation(e){return Math.round((e-this.sliderHeight/2)/this._computedSliderRatio)}intersectWithViewport(e){const t=Math.max(this.startLineNumber,e.startLineNumber),i=Math.min(this.endLineNumber,e.endLineNumber);return t>i?null:[t,i]}getYForLineNumber(e,t){return+(e-this.startLineNumber+this.topPaddingLineCount)*t}static create(e,t,i,n,s,r,a,l,c,d,h){const u=e.pixelRatio,f=e.minimapLineHeight,g=Math.floor(e.canvasInnerHeight/f),p=e.lineHeight;if(e.minimapHeightIsEditorHeight){let x=l*e.lineHeight+e.paddingTop+e.paddingBottom;e.scrollBeyondLastLine&&(x+=Math.max(0,s-e.lineHeight-e.paddingBottom));const L=Math.max(1,Math.floor(s*s/x)),E=Math.max(0,e.minimapHeight-L),N=E/(d-s),H=c*N,F=E>0,W=Math.floor(e.canvasInnerHeight/e.minimapLineHeight),j=Math.floor(e.paddingTop/e.lineHeight);return new mp(c,d,F,N,H,L,j,1,Math.min(a,W))}let _;if(r&&i!==a){const x=i-t+1;_=Math.floor(x*f/u)}else{const x=s/p;_=Math.floor(x*f/u)}const b=Math.floor(e.paddingTop/p);let C=Math.floor(e.paddingBottom/p);if(e.scrollBeyondLastLine){const x=s/p;C=Math.max(C,x-1)}let w;if(C>0){const x=s/p;w=(b+a+C-x-1)*f/u}else w=Math.max(0,(b+a)*f/u-_);w=Math.min(e.minimapHeight-_,w);const v=w/(d-s),y=c*v;if(g>=b+a+C){const x=w>0;return new mp(c,d,x,v,y,_,b,1,a)}else{let x;t>1?x=t+b:x=Math.max(1,c/p);let L,E=Math.max(1,Math.floor(x-y*u/f));Ec&&(E=Math.min(E,h.startLineNumber),L=Math.max(L,h.topPaddingLineCount)),h.scrollTop=e.paddingTop?F=(t-E+L+H)*f/u:F=c/e.paddingTop*(L+H)*f/u,new mp(c,d,!0,v,F,_,L,E,N)}}}const n0=class n0{constructor(e){this.dy=e}onContentChanged(){this.dy=-1}onTokensChanged(){this.dy=-1}};n0.INVALID=new n0(-1);let Ov=n0;class BO{constructor(e,t,i){this.renderedLayout=e,this._imageData=t,this._renderedLines=new L8({createLine:()=>Ov.INVALID}),this._renderedLines._set(e.startLineNumber,i)}linesEquals(e){if(!this.scrollEquals(e))return!1;const i=this._renderedLines._get().lines;for(let n=0,s=i.length;n1){for(let b=0,C=n-1;b0&&this.minimapLines[i-1]>=e;)i--;let n=this.modelLineToMinimapLine(t)-1;for(;n+1t)return null}return[i+1,n+1]}decorationLineRangeToMinimapLineRange(e,t){let i=this.modelLineToMinimapLine(e),n=this.modelLineToMinimapLine(t);return e!==t&&n===i&&(n===this.minimapLines.length?i>1&&i--:n++),[i,n]}onLinesDeleted(e){const t=e.toLineNumber-e.fromLineNumber+1;let i=this.minimapLines.length,n=0;for(let s=this.minimapLines.length-1;s>=0&&!(this.minimapLines[s]=0&&!(this.minimapLines[i]0,scrollWidth:e.scrollWidth,scrollHeight:e.scrollHeight,viewportStartLineNumber:t,viewportEndLineNumber:i,viewportStartLineNumberVerticalOffset:e.getVerticalOffsetForLineNumber(t),scrollTop:e.scrollTop,scrollLeft:e.scrollLeft,viewportWidth:e.viewportWidth,viewportHeight:e.viewportHeight};this._actual.render(n)}_recreateLineSampling(){this._minimapSelections=null;const e=!!this._samplingState,[t,i]=D_.compute(this.options,this._context.viewModel.getLineCount(),this._samplingState);if(this._samplingState=t,e&&this._samplingState)for(const n of i)switch(n.type){case"deleted":this._actual.onLinesDeleted(n.deleteFromLineNumber,n.deleteToLineNumber);break;case"inserted":this._actual.onLinesInserted(n.insertFromLineNumber,n.insertToLineNumber);break;case"flush":this._actual.onFlushed();break}}getLineCount(){return this._samplingState?this._samplingState.minimapLines.length:this._context.viewModel.getLineCount()}getRealLineCount(){return this._context.viewModel.getLineCount()}getLineContent(e){return this._samplingState?this._context.viewModel.getLineContent(this._samplingState.minimapLines[e-1]):this._context.viewModel.getLineContent(e)}getLineMaxColumn(e){return this._samplingState?this._context.viewModel.getLineMaxColumn(this._samplingState.minimapLines[e-1]):this._context.viewModel.getLineMaxColumn(e)}getMinimapLinesRenderingData(e,t,i){if(this._samplingState){const n=[];for(let s=0,r=t-e+1;s!n.options.minimap?.sectionHeaderStyle);if(this._samplingState){const n=[];for(const s of i){if(!s.options.minimap)continue;const r=s.range,a=this._samplingState.modelLineToMinimapLine(r.startLineNumber),l=this._samplingState.modelLineToMinimapLine(r.endLineNumber);n.push(new h8(new I(a,r.startColumn,l,r.endColumn),s.options))}return n}return i}getSectionHeaderDecorationsInViewport(e,t){const i=this.options.minimapLineHeight,s=this.options.sectionHeaderFontSize/i;return e=Math.floor(Math.max(1,e-s)),this._getMinimapDecorationsInViewport(e,t).filter(r=>!!r.options.minimap?.sectionHeaderStyle)}_getMinimapDecorationsInViewport(e,t){let i;if(this._samplingState){const n=this._samplingState.minimapLines[e-1],s=this._samplingState.minimapLines[t-1];i=new I(n,1,s,this._context.viewModel.getLineMaxColumn(s))}else i=new I(e,1,t,this._context.viewModel.getLineMaxColumn(t));return this._context.viewModel.getMinimapDecorationsInRange(i)}getSectionHeaderText(e,t){const i=e.options.minimap?.sectionHeaderText;if(!i)return null;const n=this._sectionHeaderCache.get(i);if(n)return n;const s=t(i);return this._sectionHeaderCache.set(i,s),s}getOptions(){return this._context.viewModel.model.getOptions()}revealLineNumber(e){this._samplingState&&(e=this._samplingState.minimapLines[e-1]),this._context.viewModel.revealRange("mouse",!1,new I(e,1,e,1),1,0)}setScrollTop(e){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:e},1)}}class uf extends z{constructor(e,t){super(),this._renderDecorations=!1,this._gestureInProgress=!1,this._theme=e,this._model=t,this._lastRenderData=null,this._buffers=null,this._selectionColor=this._theme.getColor(NA),this._domNode=ot(document.createElement("div")),vr.write(this._domNode,9),this._domNode.setClassName(this._getMinimapDomNodeClassName()),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._shadow=ot(document.createElement("div")),this._shadow.setClassName("minimap-shadow-hidden"),this._domNode.appendChild(this._shadow),this._canvas=ot(document.createElement("canvas")),this._canvas.setPosition("absolute"),this._canvas.setLeft(0),this._domNode.appendChild(this._canvas),this._decorationsCanvas=ot(document.createElement("canvas")),this._decorationsCanvas.setPosition("absolute"),this._decorationsCanvas.setClassName("minimap-decorations-layer"),this._decorationsCanvas.setLeft(0),this._domNode.appendChild(this._decorationsCanvas),this._slider=ot(document.createElement("div")),this._slider.setPosition("absolute"),this._slider.setClassName("minimap-slider"),this._slider.setLayerHinting(!0),this._slider.setContain("strict"),this._domNode.appendChild(this._slider),this._sliderHorizontal=ot(document.createElement("div")),this._sliderHorizontal.setPosition("absolute"),this._sliderHorizontal.setClassName("minimap-slider-horizontal"),this._slider.appendChild(this._sliderHorizontal),this._applyLayout(),this._pointerDownListener=jt(this._domNode.domNode,ee.POINTER_DOWN,i=>{if(i.preventDefault(),this._model.options.renderMinimap===0||!this._lastRenderData)return;if(this._model.options.size!=="proportional"){if(i.button===0&&this._lastRenderData){const c=gi(this._slider.domNode),d=c.top+c.height/2;this._startSliderDragging(i,d,this._lastRenderData.renderedLayout)}return}const s=this._model.options.minimapLineHeight,r=this._model.options.canvasInnerHeight/this._model.options.canvasOuterHeight*i.offsetY;let l=Math.floor(r/s)+this._lastRenderData.renderedLayout.startLineNumber-this._lastRenderData.renderedLayout.topPaddingLineCount;l=Math.min(l,this._model.getLineCount()),this._model.revealLineNumber(l)}),this._sliderPointerMoveMonitor=new Hg,this._sliderPointerDownListener=jt(this._slider.domNode,ee.POINTER_DOWN,i=>{i.preventDefault(),i.stopPropagation(),i.button===0&&this._lastRenderData&&this._startSliderDragging(i,i.pageY,this._lastRenderData.renderedLayout)}),this._gestureDisposable=fn.addTarget(this._domNode.domNode),this._sliderTouchStartListener=U(this._domNode.domNode,St.Start,i=>{i.preventDefault(),i.stopPropagation(),this._lastRenderData&&(this._slider.toggleClassName("active",!0),this._gestureInProgress=!0,this.scrollDueToTouchEvent(i))},{passive:!1}),this._sliderTouchMoveListener=U(this._domNode.domNode,St.Change,i=>{i.preventDefault(),i.stopPropagation(),this._lastRenderData&&this._gestureInProgress&&this.scrollDueToTouchEvent(i)},{passive:!1}),this._sliderTouchEndListener=jt(this._domNode.domNode,St.End,i=>{i.preventDefault(),i.stopPropagation(),this._gestureInProgress=!1,this._slider.toggleClassName("active",!1)})}_startSliderDragging(e,t,i){if(!e.target||!(e.target instanceof Element))return;const n=e.pageX;this._slider.toggleClassName("active",!0);const s=(r,a)=>{const l=gi(this._domNode.domNode),c=Math.min(Math.abs(a-n),Math.abs(a-l.left),Math.abs(a-l.left-l.width));if(kn&&c>fse){this._model.setScrollTop(i.scrollTop);return}const d=r-t;this._model.setScrollTop(i.getDesiredScrollTopFromDelta(d))};e.pageY!==t&&s(e.pageY,n),this._sliderPointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,r=>s(r.pageY,r.pageX),()=>{this._slider.toggleClassName("active",!1)})}scrollDueToTouchEvent(e){const t=this._domNode.domNode.getBoundingClientRect().top,i=this._lastRenderData.renderedLayout.getDesiredScrollTopFromTouchLocation(e.pageY-t);this._model.setScrollTop(i)}dispose(){this._pointerDownListener.dispose(),this._sliderPointerMoveMonitor.dispose(),this._sliderPointerDownListener.dispose(),this._gestureDisposable.dispose(),this._sliderTouchStartListener.dispose(),this._sliderTouchMoveListener.dispose(),this._sliderTouchEndListener.dispose(),super.dispose()}_getMinimapDomNodeClassName(){const e=["minimap"];return this._model.options.showSlider==="always"?e.push("slider-always"):e.push("slider-mouseover"),this._model.options.autohide&&e.push("autohide"),e.join(" ")}getDomNode(){return this._domNode}_applyLayout(){this._domNode.setLeft(this._model.options.minimapLeft),this._domNode.setWidth(this._model.options.minimapWidth),this._domNode.setHeight(this._model.options.minimapHeight),this._shadow.setHeight(this._model.options.minimapHeight),this._canvas.setWidth(this._model.options.canvasOuterWidth),this._canvas.setHeight(this._model.options.canvasOuterHeight),this._canvas.domNode.width=this._model.options.canvasInnerWidth,this._canvas.domNode.height=this._model.options.canvasInnerHeight,this._decorationsCanvas.setWidth(this._model.options.canvasOuterWidth),this._decorationsCanvas.setHeight(this._model.options.canvasOuterHeight),this._decorationsCanvas.domNode.width=this._model.options.canvasInnerWidth,this._decorationsCanvas.domNode.height=this._model.options.canvasInnerHeight,this._slider.setWidth(this._model.options.minimapWidth)}_getBuffer(){return this._buffers||this._model.options.canvasInnerWidth>0&&this._model.options.canvasInnerHeight>0&&(this._buffers=new j2(this._canvas.domNode.getContext("2d"),this._model.options.canvasInnerWidth,this._model.options.canvasInnerHeight,this._model.options.backgroundColor)),this._buffers?this._buffers.getBuffer():null}onDidChangeOptions(){this._lastRenderData=null,this._buffers=null,this._applyLayout(),this._domNode.setClassName(this._getMinimapDomNodeClassName())}onSelectionChanged(){return this._renderDecorations=!0,!0}onDecorationsChanged(){return this._renderDecorations=!0,!0}onFlushed(){return this._lastRenderData=null,!0}onLinesChanged(e,t){return this._lastRenderData?this._lastRenderData.onLinesChanged(e,t):!1}onLinesDeleted(e,t){return this._lastRenderData?.onLinesDeleted(e,t),!0}onLinesInserted(e,t){return this._lastRenderData?.onLinesInserted(e,t),!0}onScrollChanged(){return this._renderDecorations=!0,!0}onThemeChanged(){return this._selectionColor=this._theme.getColor(NA),this._renderDecorations=!0,!0}onTokensChanged(e){return this._lastRenderData?this._lastRenderData.onTokensChanged(e):!1}onTokensColorsChanged(){return this._lastRenderData=null,this._buffers=null,!0}onZonesChanged(){return this._lastRenderData=null,!0}render(e){if(this._model.options.renderMinimap===0){this._shadow.setClassName("minimap-shadow-hidden"),this._sliderHorizontal.setWidth(0),this._sliderHorizontal.setHeight(0);return}e.scrollLeft+e.viewportWidth>=e.scrollWidth?this._shadow.setClassName("minimap-shadow-hidden"):this._shadow.setClassName("minimap-shadow-visible");const i=mp.create(this._model.options,e.viewportStartLineNumber,e.viewportEndLineNumber,e.viewportStartLineNumberVerticalOffset,e.viewportHeight,e.viewportContainsWhitespaceGaps,this._model.getLineCount(),this._model.getRealLineCount(),e.scrollTop,e.scrollHeight,this._lastRenderData?this._lastRenderData.renderedLayout:null);this._slider.setDisplay(i.sliderNeeded?"block":"none"),this._slider.setTop(i.sliderTop),this._slider.setHeight(i.sliderHeight),this._sliderHorizontal.setLeft(0),this._sliderHorizontal.setWidth(this._model.options.minimapWidth),this._sliderHorizontal.setTop(0),this._sliderHorizontal.setHeight(i.sliderHeight),this.renderDecorations(i),this._lastRenderData=this.renderLines(i)}renderDecorations(e){if(this._renderDecorations){this._renderDecorations=!1;const t=this._model.getSelections();t.sort(I.compareRangesUsingStarts);const i=this._model.getMinimapDecorationsInViewport(e.startLineNumber,e.endLineNumber);i.sort((u,f)=>(u.options.zIndex||0)-(f.options.zIndex||0));const{canvasInnerWidth:n,canvasInnerHeight:s}=this._model.options,r=this._model.options.minimapLineHeight,a=this._model.options.minimapCharWidth,l=this._model.getOptions().tabSize,c=this._decorationsCanvas.domNode.getContext("2d");c.clearRect(0,0,n,s);const d=new WO(e.startLineNumber,e.endLineNumber,!1);this._renderSelectionLineHighlights(c,t,d,e,r),this._renderDecorationsLineHighlights(c,i,d,e,r);const h=new WO(e.startLineNumber,e.endLineNumber,null);this._renderSelectionsHighlights(c,t,h,e,r,l,a,n),this._renderDecorationsHighlights(c,i,h,e,r,l,a,n),this._renderSectionHeaders(e)}}_renderSelectionLineHighlights(e,t,i,n,s){if(!this._selectionColor||this._selectionColor.isTransparent())return;e.fillStyle=this._selectionColor.transparent(.5).toString();let r=0,a=0;for(const l of t){const c=n.intersectWithViewport(l);if(!c)continue;const[d,h]=c;for(let g=d;g<=h;g++)i.set(g,!0);const u=n.getYForLineNumber(d,s),f=n.getYForLineNumber(h,s);a>=u||(a>r&&e.fillRect(Ar,r,e.canvas.width,a-r),r=u),a=f}a>r&&e.fillRect(Ar,r,e.canvas.width,a-r)}_renderDecorationsLineHighlights(e,t,i,n,s){const r=new Map;for(let a=t.length-1;a>=0;a--){const l=t[a],c=l.options.minimap;if(!c||c.position!==1)continue;const d=n.intersectWithViewport(l.range);if(!d)continue;const[h,u]=d,f=c.getColor(this._theme.value);if(!f||f.isTransparent())continue;let g=r.get(f.toString());g||(g=f.transparent(.5).toString(),r.set(f.toString(),g)),e.fillStyle=g;for(let p=h;p<=u;p++){if(i.has(p))continue;i.set(p,!0);const _=n.getYForLineNumber(h,s);e.fillRect(Ar,_,e.canvas.width,s)}}}_renderSelectionsHighlights(e,t,i,n,s,r,a,l){if(!(!this._selectionColor||this._selectionColor.isTransparent()))for(const c of t){const d=n.intersectWithViewport(c);if(!d)continue;const[h,u]=d;for(let f=h;f<=u;f++)this.renderDecorationOnLine(e,i,c,this._selectionColor,n,f,s,s,r,a,l)}}_renderDecorationsHighlights(e,t,i,n,s,r,a,l){for(const c of t){const d=c.options.minimap;if(!d)continue;const h=n.intersectWithViewport(c.range);if(!h)continue;const[u,f]=h,g=d.getColor(this._theme.value);if(!(!g||g.isTransparent()))for(let p=u;p<=f;p++)switch(d.position){case 1:this.renderDecorationOnLine(e,i,c.range,g,n,p,s,s,r,a,l);continue;case 2:{const _=n.getYForLineNumber(p,s);this.renderDecoration(e,g,2,_,gse,s);continue}}}}renderDecorationOnLine(e,t,i,n,s,r,a,l,c,d,h){const u=s.getYForLineNumber(r,l);if(u+a<0||u>this._model.options.canvasInnerHeight)return;const{startLineNumber:f,endLineNumber:g}=i,p=f===r?i.startColumn:1,_=g===r?i.endColumn:this._model.getLineMaxColumn(r),b=this.getXOffsetForPosition(t,r,p,c,d,h),C=this.getXOffsetForPosition(t,r,_,c,d,h);this.renderDecoration(e,n,b,u,C-b,a)}getXOffsetForPosition(e,t,i,n,s,r){if(i===1)return Ar;if((i-1)*s>=r)return r;let l=e.get(t);if(!l){const c=this._model.getLineContent(t);l=[Ar];let d=Ar;for(let h=1;h=r){l[h]=r;break}l[h]=g,d=g}e.set(t,l)}return i-1p.range.startLineNumber-_.range.startLineNumber);const g=uf._fitSectionHeader.bind(null,u,r-Ar);for(const p of f){const _=e.getYForLineNumber(p.range.startLineNumber,t)+i,b=_-i,C=b+2,w=this._model.getSectionHeaderText(p,g);uf._renderSectionLabel(u,w,p.options.minimap?.sectionHeaderStyle===2,l,d,r,b,s,_,C)}}static _fitSectionHeader(e,t,i){if(!i)return i;const n="…",s=e.measureText(i).width,r=e.measureText(n).width;if(s<=t||s<=r)return i;const a=i.length,l=s/i.length,c=Math.floor((t-r)/l)-1;let d=Math.ceil(c/2);for(;d>0&&/\s/.test(i[d-1]);)--d;return i.substring(0,d)+n+i.substring(a-(c-d))}static _renderSectionLabel(e,t,i,n,s,r,a,l,c,d){t&&(e.fillStyle=n,e.fillRect(0,a,r,l),e.fillStyle=s,e.fillText(t,Ar,c)),i&&(e.beginPath(),e.moveTo(0,d),e.lineTo(r,d),e.closePath(),e.stroke())}renderLines(e){const t=e.startLineNumber,i=e.endLineNumber,n=this._model.options.minimapLineHeight;if(this._lastRenderData&&this._lastRenderData.linesEquals(e)){const G=this._lastRenderData._get();return new BO(e,G.imageData,G.lines)}const s=this._getBuffer();if(!s)return null;const[r,a,l]=uf._renderUntouchedLines(s,e.topPaddingLineCount,t,i,n,this._lastRenderData),c=this._model.getMinimapLinesRenderingData(t,i,l),d=this._model.getOptions().tabSize,h=this._model.options.defaultBackgroundColor,u=this._model.options.backgroundColor,f=this._model.options.foregroundAlpha,g=this._model.tokensColorTracker,p=g.backgroundIsLight(),_=this._model.options.renderMinimap,b=this._model.options.charRenderer(),C=this._model.options.fontScale,w=this._model.options.minimapCharWidth,y=(_===1?2:3)*C,x=n>y?Math.floor((n-y)/2):0,L=u.a/255,E=new Sl(Math.round((u.r-h.r)*L+h.r),Math.round((u.g-h.g)*L+h.g),Math.round((u.b-h.b)*L+h.b),255);let N=e.topPaddingLineCount*n;const H=[];for(let G=0,ne=i-t+1;G=0&&FC)return;const W=_.charCodeAt(y);if(W===9){const j=u-(y+x)%u;x+=j-1,v+=j*r}else if(W===32)v+=r;else{const j=Rc(W)?2:1;for(let B=0;BC)return}}}}}class WO{constructor(e,t,i){this._startLineNumber=e,this._endLineNumber=t,this._defaultValue=i,this._values=[];for(let n=0,s=this._endLineNumber-this._startLineNumber+1;nthis._endLineNumber||(this._values[e-this._startLineNumber]=t)}get(e){return ethis._endLineNumber?this._defaultValue:this._values[e-this._startLineNumber]}}class pse extends _s{constructor(e,t){super(e),this._viewDomNode=t;const n=this._context.configuration.options.get(146);this._widgets={},this._verticalScrollbarWidth=n.verticalScrollbarWidth,this._minimapWidth=n.minimap.minimapWidth,this._horizontalScrollbarHeight=n.horizontalScrollbarHeight,this._editorHeight=n.height,this._editorWidth=n.width,this._viewDomNodeRect={top:0,left:0,width:0,height:0},this._domNode=ot(document.createElement("div")),vr.write(this._domNode,4),this._domNode.setClassName("overlayWidgets"),this.overflowingOverlayWidgetsDomNode=ot(document.createElement("div")),vr.write(this.overflowingOverlayWidgetsDomNode,5),this.overflowingOverlayWidgetsDomNode.setClassName("overflowingOverlayWidgets")}dispose(){super.dispose(),this._widgets={}}getDomNode(){return this._domNode}onConfigurationChanged(e){const i=this._context.configuration.options.get(146);return this._verticalScrollbarWidth=i.verticalScrollbarWidth,this._minimapWidth=i.minimap.minimapWidth,this._horizontalScrollbarHeight=i.horizontalScrollbarHeight,this._editorHeight=i.height,this._editorWidth=i.width,!0}addWidget(e){const t=ot(e.getDomNode());this._widgets[e.getId()]={widget:e,preference:null,domNode:t},t.setPosition("absolute"),t.setAttribute("widgetId",e.getId()),e.allowEditorOverflow?this.overflowingOverlayWidgetsDomNode.appendChild(t):this._domNode.appendChild(t),this.setShouldRender(),this._updateMaxMinWidth()}setWidgetPosition(e,t){const i=this._widgets[e.getId()],n=t?t.preference:null,s=t?.stackOridinal;return i.preference===n&&i.stack===s?(this._updateMaxMinWidth(),!1):(i.preference=n,i.stack=s,this.setShouldRender(),this._updateMaxMinWidth(),!0)}removeWidget(e){const t=e.getId();if(this._widgets.hasOwnProperty(t)){const n=this._widgets[t].domNode.domNode;delete this._widgets[t],n.remove(),this.setShouldRender(),this._updateMaxMinWidth()}}_updateMaxMinWidth(){let e=0;const t=Object.keys(this._widgets);for(let i=0,n=t.length;i0);t.sort((n,s)=>(this._widgets[n].stack||0)-(this._widgets[s].stack||0));for(let n=0,s=t.length;n=3){const s=Math.floor(n/3),r=Math.floor(n/3),a=n-s-r,l=e,c=l+s,d=l+s+a;return[[0,l,c,l,d,l,c,l],[0,s,a,s+a,r,s+a+r,a+r,s+a+r]]}else if(i===2){const s=Math.floor(n/2),r=n-s,a=e,l=a+s;return[[0,a,a,a,l,a,a,a],[0,s,s,s,r,s+r,s+r,s+r]]}else{const s=e,r=n;return[[0,s,s,s,s,s,s,s],[0,r,r,r,r,r,r,r]]}}equals(e){return this.lineHeight===e.lineHeight&&this.pixelRatio===e.pixelRatio&&this.overviewRulerLanes===e.overviewRulerLanes&&this.renderBorder===e.renderBorder&&this.borderColor===e.borderColor&&this.hideCursor===e.hideCursor&&this.cursorColorSingle===e.cursorColorSingle&&this.cursorColorPrimary===e.cursorColorPrimary&&this.cursorColorSecondary===e.cursorColorSecondary&&this.themeType===e.themeType&&q.equals(this.backgroundColor,e.backgroundColor)&&this.top===e.top&&this.right===e.right&&this.domWidth===e.domWidth&&this.domHeight===e.domHeight&&this.canvasWidth===e.canvasWidth&&this.canvasHeight===e.canvasHeight}}class bse extends _s{constructor(e){super(e),this._actualShouldRender=0,this._renderedDecorations=[],this._renderedCursorPositions=[],this._domNode=ot(document.createElement("canvas")),this._domNode.setClassName("decorationsOverviewRuler"),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._domNode.setAttribute("aria-hidden","true"),this._updateSettings(!1),this._tokensColorTrackerListener=si.onDidChange(t=>{t.changedColorMap&&this._updateSettings(!0)}),this._cursorPositions=[{position:new P(1,1),color:this._settings.cursorColorSingle}]}dispose(){super.dispose(),this._tokensColorTrackerListener.dispose()}_updateSettings(e){const t=new _se(this._context.configuration,this._context.theme);return this._settings&&this._settings.equals(t)?!1:(this._settings=t,this._domNode.setTop(this._settings.top),this._domNode.setRight(this._settings.right),this._domNode.setWidth(this._settings.domWidth),this._domNode.setHeight(this._settings.domHeight),this._domNode.domNode.width=this._settings.canvasWidth,this._domNode.domNode.height=this._settings.canvasHeight,e&&this._render(),!0)}_markRenderingIsNeeded(){return this._actualShouldRender=2,!0}_markRenderingIsMaybeNeeded(){return this._actualShouldRender=1,!0}onConfigurationChanged(e){return this._updateSettings(!1)?this._markRenderingIsNeeded():!1}onCursorStateChanged(e){this._cursorPositions=[];for(let t=0,i=e.selections.length;t1&&(n=t===0?this._settings.cursorColorPrimary:this._settings.cursorColorSecondary),this._cursorPositions.push({position:e.selections[t].getPosition(),color:n})}return this._cursorPositions.sort((t,i)=>P.compare(t.position,i.position)),this._markRenderingIsMaybeNeeded()}onDecorationsChanged(e){return e.affectsOverviewRuler?this._markRenderingIsMaybeNeeded():!1}onFlushed(e){return this._markRenderingIsNeeded()}onScrollChanged(e){return e.scrollHeightChanged?this._markRenderingIsNeeded():!1}onZonesChanged(e){return this._markRenderingIsNeeded()}onThemeChanged(e){return this._updateSettings(!1)?this._markRenderingIsNeeded():!1}getDomNode(){return this._domNode.domNode}prepareRender(e){}render(e){this._render(),this._actualShouldRender=0}_render(){const e=this._settings.backgroundColor;if(this._settings.overviewRulerLanes===0){this._domNode.setBackgroundColor(e?q.Format.CSS.formatHexA(e):""),this._domNode.setDisplay("none");return}const t=this._context.viewModel.getAllOverviewRulerDecorations(this._context.theme);if(t.sort(w_.compareByRenderingProps),this._actualShouldRender===1&&!w_.equalsArr(this._renderedDecorations,t)&&(this._actualShouldRender=2),this._actualShouldRender===1&&!li(this._renderedCursorPositions,this._cursorPositions,(g,p)=>g.position.lineNumber===p.position.lineNumber&&g.color===p.color)&&(this._actualShouldRender=2),this._actualShouldRender===1)return;this._renderedDecorations=t,this._renderedCursorPositions=this._cursorPositions,this._domNode.setDisplay("block");const i=this._settings.canvasWidth,n=this._settings.canvasHeight,s=this._settings.lineHeight,r=this._context.viewLayout,a=this._context.viewLayout.getScrollHeight(),l=n/a,c=6*this._settings.pixelRatio|0,d=c/2|0,h=this._domNode.domNode.getContext("2d");e?e.isOpaque()?(h.fillStyle=q.Format.CSS.formatHexA(e),h.fillRect(0,0,i,n)):(h.clearRect(0,0,i,n),h.fillStyle=q.Format.CSS.formatHexA(e),h.fillRect(0,0,i,n)):h.clearRect(0,0,i,n);const u=this._settings.x,f=this._settings.w;for(const g of t){const p=g.color,_=g.data;h.fillStyle=p;let b=0,C=0,w=0;for(let v=0,y=_.length/3;vn&&(W=n-d),N=W-d,H=W+d}N>w+1||x!==b?(v!==0&&h.fillRect(u[b],C,f[b],w-C),b=x,C=N,w=H):H>w&&(w=H)}h.fillRect(u[b],C,f[b],w-C)}if(!this._settings.hideCursor){const g=2*this._settings.pixelRatio|0,p=g/2|0,_=this._settings.x[7],b=this._settings.w[7];let C=-100,w=-100,v=null;for(let y=0,x=this._cursorPositions.length;yn&&(N=n-p);const H=N-p,F=H+g;H>w+1||L!==v?(y!==0&&v&&h.fillRect(_,C,b,w-C),C=H,w=F):F>w&&(w=F),v=L,h.fillStyle=L}v&&h.fillRect(_,C,b,w-C)}this._settings.renderBorder&&this._settings.borderColor&&this._settings.overviewRulerLanes>0&&(h.beginPath(),h.lineWidth=1,h.strokeStyle=this._settings.borderColor,h.moveTo(0,0),h.lineTo(0,n),h.moveTo(1,0),h.lineTo(i,0),h.stroke())}}class HO{constructor(e,t,i){this._colorZoneBrand=void 0,this.from=e|0,this.to=t|0,this.colorId=i|0}static compare(e,t){return e.colorId===t.colorId?e.from===t.from?e.to-t.to:e.from-t.from:e.colorId-t.colorId}}class E8{constructor(e,t,i,n){this._overviewRulerZoneBrand=void 0,this.startLineNumber=e,this.endLineNumber=t,this.heightInLines=i,this.color=n,this._colorZone=null}static compare(e,t){return e.color===t.color?e.startLineNumber===t.startLineNumber?e.heightInLines===t.heightInLines?e.endLineNumber-t.endLineNumber:e.heightInLines-t.heightInLines:e.startLineNumber-t.startLineNumber:e.colori&&(p=i-_);const b=d.color;let C=this._color2Id[b];C||(C=++this._lastAssignedId,this._color2Id[b]=C,this._id2Color[C]=b);const w=new HO(p-_,p+_,C);d.setColorZone(w),a.push(w)}return this._colorZonesInvalid=!1,a.sort(HO.compare),a}}class vse extends ab{constructor(e,t){super(),this._context=e;const i=this._context.configuration.options;this._domNode=ot(document.createElement("canvas")),this._domNode.setClassName(t),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._zoneManager=new Cse(n=>this._context.viewLayout.getVerticalOffsetForLineNumber(n)),this._zoneManager.setDOMWidth(0),this._zoneManager.setDOMHeight(0),this._zoneManager.setOuterHeight(this._context.viewLayout.getScrollHeight()),this._zoneManager.setLineHeight(i.get(67)),this._zoneManager.setPixelRatio(i.get(144)),this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return e.hasChanged(67)&&(this._zoneManager.setLineHeight(t.get(67)),this._render()),e.hasChanged(144)&&(this._zoneManager.setPixelRatio(t.get(144)),this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render()),!0}onFlushed(e){return this._render(),!0}onScrollChanged(e){return e.scrollHeightChanged&&(this._zoneManager.setOuterHeight(e.scrollHeight),this._render()),!0}onZonesChanged(e){return this._render(),!0}getDomNode(){return this._domNode.domNode}setLayout(e){this._domNode.setTop(e.top),this._domNode.setRight(e.right);let t=!1;t=this._zoneManager.setDOMWidth(e.width)||t,t=this._zoneManager.setDOMHeight(e.height)||t,t&&(this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render())}setZones(e){this._zoneManager.setZones(e),this._render()}_render(){if(this._zoneManager.getOuterHeight()===0)return!1;const e=this._zoneManager.getCanvasWidth(),t=this._zoneManager.getCanvasHeight(),i=this._zoneManager.resolveColorZones(),n=this._zoneManager.getId2Color(),s=this._domNode.domNode.getContext("2d");return s.clearRect(0,0,e,t),i.length>0&&this._renderOneLane(s,i,n,e),!0}_renderOneLane(e,t,i,n){let s=0,r=0,a=0;for(const l of t){const c=l.colorId,d=l.from,h=l.to;c!==s?(e.fillRect(0,r,n,a-r),s=c,e.fillStyle=i[s],r=d,a=h):a>=d?a=Math.max(a,h):(e.fillRect(0,r,n,a-r),r=d,a=h)}e.fillRect(0,r,n,a-r)}}class wse extends _s{constructor(e){super(e),this.domNode=ot(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("view-rulers"),this._renderedRulers=[];const t=this._context.configuration.options;this._rulers=t.get(103),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth}dispose(){super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return this._rulers=t.get(103),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,!0}onScrollChanged(e){return e.scrollHeightChanged}prepareRender(e){}_ensureRulersCount(){const e=this._renderedRulers.length,t=this._rulers.length;if(e===t)return;if(e0;){const a=ot(document.createElement("div"));a.setClassName("view-ruler"),a.setWidth(s),this.domNode.appendChild(a),this._renderedRulers.push(a),r--}return}let i=e-t;for(;i>0;){const n=this._renderedRulers.pop();this.domNode.removeChild(n),i--}}render(e){this._ensureRulersCount();for(let t=0,i=this._rulers.length;t0;return this._shouldShow!==e?(this._shouldShow=e,!0):!1}getDomNode(){return this._domNode}_updateWidth(){const t=this._context.configuration.options.get(146);t.minimap.renderMinimap===0||t.minimap.minimapWidth>0&&t.minimap.minimapLeft===0?this._width=t.width:this._width=t.width-t.verticalScrollbarWidth}onConfigurationChanged(e){const i=this._context.configuration.options.get(104);return this._useShadows=i.useShadows,this._updateWidth(),this._updateShouldShow(),!0}onScrollChanged(e){return this._scrollTop=e.scrollTop,this._updateShouldShow()}prepareRender(e){}render(e){this._domNode.setWidth(this._width),this._domNode.setClassName(this._shouldShow?"scroll-decoration":"")}}class Sse{constructor(e){this.left=e.left,this.width=e.width,this.startStyle=null,this.endStyle=null}}class Lse{constructor(e,t){this.lineNumber=e,this.ranges=t}}function xse(o){return new Sse(o)}function kse(o){return new Lse(o.lineNumber,o.ranges.map(xse))}const Zt=class Zt extends mu{constructor(e){super(),this._previousFrameVisibleRangesWithStyle=[],this._context=e;const t=this._context.configuration.options;this._roundedSelection=t.get(102),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,this._selections=[],this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const t=this._context.configuration.options;return this._roundedSelection=t.get(102),this._typicalHalfwidthCharacterWidth=t.get(50).typicalHalfwidthCharacterWidth,!0}onCursorStateChanged(e){return this._selections=e.selections.slice(0),!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}_visibleRangesHaveGaps(e){for(let t=0,i=e.length;t1)return!0;return!1}_enrichVisibleRangesWithStyle(e,t,i){const n=this._typicalHalfwidthCharacterWidth/4;let s=null,r=null;if(i&&i.length>0&&t.length>0){const a=t[0].lineNumber;if(a===e.startLineNumber)for(let c=0;!s&&c=0;c--)i[c].lineNumber===l&&(r=i[c].ranges[0]);s&&!s.startStyle&&(s=null),r&&!r.startStyle&&(r=null)}for(let a=0,l=t.length;a0){const g=t[a-1].ranges[0].left,p=t[a-1].ranges[0].left+t[a-1].ranges[0].width;i1(d-g)g&&(u.top=1),i1(h-p)'}_actualRenderOneSelection(e,t,i,n){if(n.length===0)return;const s=!!n[0].ranges[0].startStyle,r=n[0].lineNumber,a=n[n.length-1].lineNumber;for(let l=0,c=n.length;l1,c)}this._previousFrameVisibleRangesWithStyle=s,this._renderResult=t.map(([r,a])=>r+a)}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}};Zt.SELECTION_CLASS_NAME="selected-text",Zt.SELECTION_TOP_LEFT="top-left-radius",Zt.SELECTION_BOTTOM_LEFT="bottom-left-radius",Zt.SELECTION_TOP_RIGHT="top-right-radius",Zt.SELECTION_BOTTOM_RIGHT="bottom-right-radius",Zt.EDITOR_BACKGROUND_CLASS_NAME="monaco-editor-background",Zt.ROUNDED_PIECE_WIDTH=10;let TI=Zt;Sr((o,e)=>{const t=o.getColor(DK);t&&!t.isTransparent()&&e.addRule(`.monaco-editor .view-line span.inline-selected-text { color: ${t}; }`)});function i1(o){return o<0?-o:o}class VO{constructor(e,t,i,n,s,r,a){this.top=e,this.left=t,this.paddingLeft=i,this.width=n,this.height=s,this.textContent=r,this.textContentClassName=a}}var hl;(function(o){o[o.Single=0]="Single",o[o.MultiPrimary=1]="MultiPrimary",o[o.MultiSecondary=2]="MultiSecondary"})(hl||(hl={}));class zO{constructor(e,t){this._context=e;const i=this._context.configuration.options,n=i.get(50);this._cursorStyle=i.get(28),this._lineHeight=i.get(67),this._typicalHalfwidthCharacterWidth=n.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(i.get(31),this._typicalHalfwidthCharacterWidth),this._isVisible=!0,this._domNode=ot(document.createElement("div")),this._domNode.setClassName(`cursor ${Zf}`),this._domNode.setHeight(this._lineHeight),this._domNode.setTop(0),this._domNode.setLeft(0),qi(this._domNode,n),this._domNode.setDisplay("none"),this._position=new P(1,1),this._pluralityClass="",this.setPlurality(t),this._lastRenderedContent="",this._renderData=null}getDomNode(){return this._domNode}getPosition(){return this._position}setPlurality(e){switch(e){default:case hl.Single:this._pluralityClass="";break;case hl.MultiPrimary:this._pluralityClass="cursor-primary";break;case hl.MultiSecondary:this._pluralityClass="cursor-secondary";break}}show(){this._isVisible||(this._domNode.setVisibility("inherit"),this._isVisible=!0)}hide(){this._isVisible&&(this._domNode.setVisibility("hidden"),this._isVisible=!1)}onConfigurationChanged(e){const t=this._context.configuration.options,i=t.get(50);return this._cursorStyle=t.get(28),this._lineHeight=t.get(67),this._typicalHalfwidthCharacterWidth=i.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(t.get(31),this._typicalHalfwidthCharacterWidth),qi(this._domNode,i),!0}onCursorPositionChanged(e,t){return t?this._domNode.domNode.style.transitionProperty="none":this._domNode.domNode.style.transitionProperty="",this._position=e,!0}_getGraphemeAwarePosition(){const{lineNumber:e,column:t}=this._position,i=this._context.viewModel.getLineContent(e),[n,s]=uH(i,t-1);return[new P(e,n+1),i.substring(n,s)]}_prepareRender(e){let t="",i="";const[n,s]=this._getGraphemeAwarePosition();if(this._cursorStyle===Ai.Line||this._cursorStyle===Ai.LineThin){const u=e.visibleRangeForPosition(n);if(!u||u.outsideRenderedLine)return null;const f=fe(this._domNode.domNode);let g;this._cursorStyle===Ai.Line?(g=fR(f,this._lineCursorWidth>0?this._lineCursorWidth:2),g>2&&(t=s,i=this._getTokenClassName(n))):g=fR(f,1);let p=u.left,_=0;g>=2&&p>=1&&(_=1,p-=_);const b=e.getVerticalOffsetForLineNumber(n.lineNumber)-e.bigNumbersDelta;return new VO(b,p,_,g,this._lineHeight,t,i)}const r=e.linesVisibleRangesForRange(new I(n.lineNumber,n.column,n.lineNumber,n.column+s.length),!1);if(!r||r.length===0)return null;const a=r[0];if(a.outsideRenderedLine||a.ranges.length===0)return null;const l=a.ranges[0],c=s===" "?this._typicalHalfwidthCharacterWidth:l.width<1?this._typicalHalfwidthCharacterWidth:l.width;this._cursorStyle===Ai.Block&&(t=s,i=this._getTokenClassName(n));let d=e.getVerticalOffsetForLineNumber(n.lineNumber)-e.bigNumbersDelta,h=this._lineHeight;return(this._cursorStyle===Ai.Underline||this._cursorStyle===Ai.UnderlineThin)&&(d+=this._lineHeight-2,h=2),new VO(d,l.left,0,c,h,t,i)}_getTokenClassName(e){const t=this._context.viewModel.getViewLineData(e.lineNumber),i=t.tokens.findTokenIndexAtOffset(e.column-1);return t.tokens.getClassName(i)}prepareRender(e){this._renderData=this._prepareRender(e)}render(e){return this._renderData?(this._lastRenderedContent!==this._renderData.textContent&&(this._lastRenderedContent=this._renderData.textContent,this._domNode.domNode.textContent=this._lastRenderedContent),this._domNode.setClassName(`cursor ${this._pluralityClass} ${Zf} ${this._renderData.textContentClassName}`),this._domNode.setDisplay("block"),this._domNode.setTop(this._renderData.top),this._domNode.setLeft(this._renderData.left),this._domNode.setPaddingLeft(this._renderData.paddingLeft),this._domNode.setWidth(this._renderData.width),this._domNode.setLineHeight(this._renderData.height),this._domNode.setHeight(this._renderData.height),{domNode:this._domNode.domNode,position:this._position,contentLeft:this._renderData.left,height:this._renderData.height,width:2}):(this._domNode.setDisplay("none"),null)}}const Pp=class Pp extends _s{constructor(e){super(e);const t=this._context.configuration.options;this._readOnly=t.get(92),this._cursorBlinking=t.get(26),this._cursorStyle=t.get(28),this._cursorSmoothCaretAnimation=t.get(27),this._selectionIsEmpty=!0,this._isComposingInput=!1,this._isVisible=!1,this._primaryCursor=new zO(this._context,hl.Single),this._secondaryCursors=[],this._renderData=[],this._domNode=ot(document.createElement("div")),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._updateDomClassName(),this._domNode.appendChild(this._primaryCursor.getDomNode()),this._startCursorBlinkAnimation=new wr,this._cursorFlatBlinkInterval=new QN,this._blinkingEnabled=!1,this._editorHasFocus=!1,this._updateBlinking()}dispose(){super.dispose(),this._startCursorBlinkAnimation.dispose(),this._cursorFlatBlinkInterval.dispose()}getDomNode(){return this._domNode}onCompositionStart(e){return this._isComposingInput=!0,this._updateBlinking(),!0}onCompositionEnd(e){return this._isComposingInput=!1,this._updateBlinking(),!0}onConfigurationChanged(e){const t=this._context.configuration.options;this._readOnly=t.get(92),this._cursorBlinking=t.get(26),this._cursorStyle=t.get(28),this._cursorSmoothCaretAnimation=t.get(27),this._updateBlinking(),this._updateDomClassName(),this._primaryCursor.onConfigurationChanged(e);for(let i=0,n=this._secondaryCursors.length;it.length){const s=this._secondaryCursors.length-t.length;for(let r=0;r{for(let n=0,s=e.ranges.length;n{this._isVisible?this._hide():this._show()},Pp.BLINK_INTERVAL,fe(this._domNode.domNode)):this._startCursorBlinkAnimation.setIfNotSet(()=>{this._blinkingEnabled=!0,this._updateDomClassName()},Pp.BLINK_INTERVAL))}_updateDomClassName(){this._domNode.setClassName(this._getClassName())}_getClassName(){let e="cursors-layer";switch(this._selectionIsEmpty||(e+=" has-selection"),this._cursorStyle){case Ai.Line:e+=" cursor-line-style";break;case Ai.Block:e+=" cursor-block-style";break;case Ai.Underline:e+=" cursor-underline-style";break;case Ai.LineThin:e+=" cursor-line-thin-style";break;case Ai.BlockOutline:e+=" cursor-block-outline-style";break;case Ai.UnderlineThin:e+=" cursor-underline-thin-style";break;default:e+=" cursor-line-style"}if(this._blinkingEnabled)switch(this._getCursorBlinking()){case 1:e+=" cursor-blink";break;case 2:e+=" cursor-smooth";break;case 3:e+=" cursor-phase";break;case 4:e+=" cursor-expand";break;case 5:e+=" cursor-solid";break;default:e+=" cursor-solid"}else e+=" cursor-solid";return(this._cursorSmoothCaretAnimation==="on"||this._cursorSmoothCaretAnimation==="explicit")&&(e+=" cursor-smooth-caret-animation"),e}_show(){this._primaryCursor.show();for(let e=0,t=this._secondaryCursors.length;e{const t=[{class:".cursor",foreground:uy,background:t2},{class:".cursor-primary",foreground:U7,background:KY},{class:".cursor-secondary",foreground:$7,background:jY}];for(const i of t){const n=o.getColor(i.foreground);if(n){let s=o.getColor(i.background);s||(s=n.opposite()),e.addRule(`.monaco-editor .cursors-layer ${i.class} { background-color: ${n}; border-color: ${n}; color: ${s}; }`),mc(o.type)&&e.addRule(`.monaco-editor .cursors-layer.has-selection ${i.class} { border-left: 1px solid ${s}; border-right: 1px solid ${s}; }`)}}});const oL=()=>{throw new Error("Invalid change accessor")};class Dse extends _s{constructor(e){super(e);const t=this._context.configuration.options,i=t.get(146);this._lineHeight=t.get(67),this._contentWidth=i.contentWidth,this._contentLeft=i.contentLeft,this.domNode=ot(document.createElement("div")),this.domNode.setClassName("view-zones"),this.domNode.setPosition("absolute"),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.marginDomNode=ot(document.createElement("div")),this.marginDomNode.setClassName("margin-view-zones"),this.marginDomNode.setPosition("absolute"),this.marginDomNode.setAttribute("role","presentation"),this.marginDomNode.setAttribute("aria-hidden","true"),this._zones={}}dispose(){super.dispose(),this._zones={}}_recomputeWhitespacesProps(){const e=this._context.viewLayout.getWhitespaces(),t=new Map;for(const n of e)t.set(n.id,n);let i=!1;return this._context.viewModel.changeWhitespace(n=>{const s=Object.keys(this._zones);for(let r=0,a=s.length;r{const n={addZone:s=>(t=!0,this._addZone(i,s)),removeZone:s=>{s&&(t=this._removeZone(i,s)||t)},layoutZone:s=>{s&&(t=this._layoutZone(i,s)||t)}};Ise(e,n),n.addZone=oL,n.removeZone=oL,n.layoutZone=oL}),t}_addZone(e,t){const i=this._computeWhitespaceProps(t),s={whitespaceId:e.insertWhitespace(i.afterViewLineNumber,this._getZoneOrdinal(t),i.heightInPx,i.minWidthInPx),delegate:t,isInHiddenArea:i.isInHiddenArea,isVisible:!1,domNode:ot(t.domNode),marginDomNode:t.marginDomNode?ot(t.marginDomNode):null};return this._safeCallOnComputedHeight(s.delegate,i.heightInPx),s.domNode.setPosition("absolute"),s.domNode.domNode.style.width="100%",s.domNode.setDisplay("none"),s.domNode.setAttribute("monaco-view-zone",s.whitespaceId),this.domNode.appendChild(s.domNode),s.marginDomNode&&(s.marginDomNode.setPosition("absolute"),s.marginDomNode.domNode.style.width="100%",s.marginDomNode.setDisplay("none"),s.marginDomNode.setAttribute("monaco-view-zone",s.whitespaceId),this.marginDomNode.appendChild(s.marginDomNode)),this._zones[s.whitespaceId]=s,this.setShouldRender(),s.whitespaceId}_removeZone(e,t){if(this._zones.hasOwnProperty(t)){const i=this._zones[t];return delete this._zones[t],e.removeWhitespace(i.whitespaceId),i.domNode.removeAttribute("monaco-visible-view-zone"),i.domNode.removeAttribute("monaco-view-zone"),i.domNode.domNode.remove(),i.marginDomNode&&(i.marginDomNode.removeAttribute("monaco-visible-view-zone"),i.marginDomNode.removeAttribute("monaco-view-zone"),i.marginDomNode.domNode.remove()),this.setShouldRender(),!0}return!1}_layoutZone(e,t){if(this._zones.hasOwnProperty(t)){const i=this._zones[t],n=this._computeWhitespaceProps(i.delegate);return i.isInHiddenArea=n.isInHiddenArea,e.changeOneWhitespace(i.whitespaceId,n.afterViewLineNumber,n.heightInPx),this._safeCallOnComputedHeight(i.delegate,n.heightInPx),this.setShouldRender(),!0}return!1}shouldSuppressMouseDownOnViewZone(e){return this._zones.hasOwnProperty(e)?!!this._zones[e].delegate.suppressMouseDown:!1}_heightInPixels(e){return typeof e.heightInPx=="number"?e.heightInPx:typeof e.heightInLines=="number"?this._lineHeight*e.heightInLines:this._lineHeight}_minWidthInPixels(e){return typeof e.minWidthInPx=="number"?e.minWidthInPx:0}_safeCallOnComputedHeight(e,t){if(typeof e.onComputedHeight=="function")try{e.onComputedHeight(t)}catch(i){Ze(i)}}_safeCallOnDomNodeTop(e,t){if(typeof e.onDomNodeTop=="function")try{e.onDomNodeTop(t)}catch(i){Ze(i)}}prepareRender(e){}render(e){const t=e.viewportData.whitespaceViewportData,i={};let n=!1;for(const r of t)this._zones[r.id].isInHiddenArea||(i[r.id]=r,n=!0);const s=Object.keys(this._zones);for(let r=0,a=s.length;ra)continue;const f=u.startLineNumber===a?u.startColumn:c.minColumn,g=u.endLineNumber===a?u.endColumn:c.maxColumn;f=H.endOffset&&(N++,H=i&&i[N]),j!==9&&j!==32||u&&!x&&W<=E)continue;if(h&&W>=L&&W<=E&&j===32){const G=W-1>=0?a.charCodeAt(W-1):0,ne=W+1=0?a.charCodeAt(W-1):0;if(j===32&&G!==32&&G!==9)continue}if(i&&(!H||H.startOffset>W||H.endOffset<=W))continue;const B=e.visibleRangeForPosition(new P(t,W+1));B&&(r?(F=Math.max(F,B.left),j===9?y+=this._renderArrow(f,_,B.left):y+=``):j===9?y+=`
    ${v?"→":"→"}
    `:y+=`
    ${String.fromCharCode(w)}
    `)}return r?(F=Math.round(F+_),``+y+""):y}_renderArrow(e,t,i){const n=t/7,s=t,r=e/2,a=i,l={x:0,y:n/2},c={x:100/125*s,y:l.y},d={x:c.x-.2*c.x,y:c.y+.2*c.x},h={x:d.x+.1*c.x,y:d.y+.1*c.x},u={x:h.x+.35*c.x,y:h.y-.35*c.x},f={x:u.x,y:-u.y},g={x:h.x,y:-h.y},p={x:d.x,y:-d.y},_={x:c.x,y:-c.y},b={x:l.x,y:-l.y};return``}render(e,t){if(!this._renderResult)return"";const i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}class UO{constructor(e){const t=e.options,i=t.get(50),n=t.get(38);n==="off"?(this.renderWhitespace="none",this.renderWithSVG=!1):n==="svg"?(this.renderWhitespace=t.get(100),this.renderWithSVG=!0):(this.renderWhitespace=t.get(100),this.renderWithSVG=!1),this.spaceWidth=i.spaceWidth,this.middotWidth=i.middotWidth,this.wsmiddotWidth=i.wsmiddotWidth,this.canUseHalfwidthRightwardsArrow=i.canUseHalfwidthRightwardsArrow,this.lineHeight=t.get(67),this.stopRenderingLineAfter=t.get(118)}equals(e){return this.renderWhitespace===e.renderWhitespace&&this.renderWithSVG===e.renderWithSVG&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.wsmiddotWidth===e.wsmiddotWidth&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineHeight===e.lineHeight&&this.stopRenderingLineAfter===e.stopRenderingLineAfter}}class Nse{constructor(e,t,i,n){this.selections=e,this.startLineNumber=t.startLineNumber|0,this.endLineNumber=t.endLineNumber|0,this.relativeVerticalOffset=t.relativeVerticalOffset,this.bigNumbersDelta=t.bigNumbersDelta|0,this.lineHeight=t.lineHeight|0,this.whitespaceViewportData=i,this._model=n,this.visibleRange=new I(t.startLineNumber,this._model.getLineMinColumn(t.startLineNumber),t.endLineNumber,this._model.getLineMaxColumn(t.endLineNumber))}getViewLineRenderingData(e){return this._model.getViewportViewLineRenderingData(this.visibleRange,e)}getDecorationsInViewport(){return this._model.getDecorationsInViewport(this.visibleRange)}}class Tse{get type(){return this._theme.type}get value(){return this._theme}constructor(e){this._theme=e}update(e){this._theme=e}getColor(e){return this._theme.getColor(e)}}class Mse{constructor(e,t,i){this.configuration=e,this.theme=new Tse(t),this.viewModel=i,this.viewLayout=i.viewLayout}addEventHandler(e){this.viewModel.addViewEventHandler(e)}removeEventHandler(e){this.viewModel.removeViewEventHandler(e)}}var Rse=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ase=function(o,e){return function(t,i){e(t,i,o)}};let RI=class extends ab{constructor(e,t,i,n,s,r,a){super(),this._instantiationService=a,this._shouldRecomputeGlyphMarginLanes=!1,this._selections=[new Fe(1,1,1,1)],this._renderAnimationFrame=null;const l=new Vne(t,n,s,e);this._context=new Mse(t,i,n),this._context.addEventHandler(this),this._viewParts=[],this._textAreaHandler=this._instantiationService.createInstance(xI,this._context,l,this._createTextAreaHandlerHelper()),this._viewParts.push(this._textAreaHandler),this._linesContent=ot(document.createElement("div")),this._linesContent.setClassName("lines-content monaco-editor-background"),this._linesContent.setPosition("absolute"),this.domNode=ot(document.createElement("div")),this.domNode.setClassName(this._getEditorClassName()),this.domNode.setAttribute("role","code"),this._overflowGuardContainer=ot(document.createElement("div")),vr.write(this._overflowGuardContainer,3),this._overflowGuardContainer.setClassName("overflow-guard"),this._scrollbar=new Qne(this._context,this._linesContent,this.domNode,this._overflowGuardContainer),this._viewParts.push(this._scrollbar),this._viewLines=new NI(this._context,this._linesContent),this._viewZones=new Dse(this._context),this._viewParts.push(this._viewZones);const c=new bse(this._context);this._viewParts.push(c);const d=new yse(this._context);this._viewParts.push(d);const h=new Une(this._context);this._viewParts.push(h),h.addDynamicOverlay(new Gne(this._context)),h.addDynamicOverlay(new TI(this._context)),h.addDynamicOverlay(new sse(this._context)),h.addDynamicOverlay(new Yne(this._context)),h.addDynamicOverlay(new Ese(this._context));const u=new $ne(this._context);this._viewParts.push(u),u.addDynamicOverlay(new Zne(this._context)),u.addDynamicOverlay(new cse(this._context)),u.addDynamicOverlay(new lse(this._context)),u.addDynamicOverlay(new Ev(this._context)),this._glyphMarginWidgets=new ese(this._context),this._viewParts.push(this._glyphMarginWidgets);const f=new Nv(this._context);f.getDomNode().appendChild(this._viewZones.marginDomNode),f.getDomNode().appendChild(u.getDomNode()),f.getDomNode().appendChild(this._glyphMarginWidgets.domNode),this._viewParts.push(f),this._contentWidgets=new jne(this._context,this.domNode),this._viewParts.push(this._contentWidgets),this._viewCursors=new MI(this._context),this._viewParts.push(this._viewCursors),this._overlayWidgets=new pse(this._context,this.domNode),this._viewParts.push(this._overlayWidgets);const g=new wse(this._context);this._viewParts.push(g);const p=new Kne(this._context);this._viewParts.push(p);const _=new mse(this._context);if(this._viewParts.push(_),c){const b=this._scrollbar.getOverviewRulerLayoutInfo();b.parent.insertBefore(c.getDomNode(),b.insertBefore)}this._linesContent.appendChild(h.getDomNode()),this._linesContent.appendChild(g.domNode),this._linesContent.appendChild(this._viewZones.domNode),this._linesContent.appendChild(this._viewLines.getDomNode()),this._linesContent.appendChild(this._contentWidgets.domNode),this._linesContent.appendChild(this._viewCursors.getDomNode()),this._overflowGuardContainer.appendChild(f.getDomNode()),this._overflowGuardContainer.appendChild(this._scrollbar.getDomNode()),this._overflowGuardContainer.appendChild(d.getDomNode()),this._overflowGuardContainer.appendChild(this._textAreaHandler.textArea),this._overflowGuardContainer.appendChild(this._textAreaHandler.textAreaCover),this._overflowGuardContainer.appendChild(this._overlayWidgets.getDomNode()),this._overflowGuardContainer.appendChild(_.getDomNode()),this._overflowGuardContainer.appendChild(p.domNode),this.domNode.appendChild(this._overflowGuardContainer),r?(r.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode.domNode),r.appendChild(this._overlayWidgets.overflowingOverlayWidgetsDomNode.domNode)):(this.domNode.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode),this.domNode.appendChild(this._overlayWidgets.overflowingOverlayWidgetsDomNode)),this._applyLayout(),this._pointerHandler=this._register(new lne(this._context,l,this._createPointerHandlerHelper()))}_computeGlyphMarginLanes(){const e=this._context.viewModel.model,t=this._context.viewModel.glyphLanes;let i=[],n=0;i=i.concat(e.getAllMarginDecorations().map(s=>{const r=s.options.glyphMargin?.position??Ao.Center;return n=Math.max(n,s.range.endLineNumber),{range:s.range,lane:r,persist:s.options.glyphMargin?.persistLane}})),i=i.concat(this._glyphMarginWidgets.getWidgets().map(s=>{const r=e.validateRange(s.preference.range);return n=Math.max(n,r.endLineNumber),{range:r,lane:s.preference.lane}})),i.sort((s,r)=>I.compareRangesUsingStarts(s.range,r.range)),t.reset(n);for(const s of i)t.push(s.lane,s.range,s.persist);return t}_createPointerHandlerHelper(){return{viewDomNode:this.domNode.domNode,linesContentDomNode:this._linesContent.domNode,viewLinesDomNode:this._viewLines.getDomNode().domNode,focusTextArea:()=>{this.focus()},dispatchTextAreaEvent:e=>{this._textAreaHandler.textArea.domNode.dispatchEvent(e)},getLastRenderData:()=>{const e=this._viewCursors.getLastRenderData()||[],t=this._textAreaHandler.getLastRenderData();return new Yie(e,t)},renderNow:()=>{this.render(!0,!1)},shouldSuppressMouseDownOnViewZone:e=>this._viewZones.shouldSuppressMouseDownOnViewZone(e),shouldSuppressMouseDownOnWidget:e=>this._contentWidgets.shouldSuppressMouseDownOnWidget(e),getPositionFromDOMInfo:(e,t)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getPositionFromDOMInfo(e,t)),visibleRangeForPosition:(e,t)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(new P(e,t))),getLineWidth:e=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getLineWidth(e))}}_createTextAreaHandlerHelper(){return{visibleRangeForPosition:e=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(e))}}_applyLayout(){const t=this._context.configuration.options.get(146);this.domNode.setWidth(t.width),this.domNode.setHeight(t.height),this._overflowGuardContainer.setWidth(t.width),this._overflowGuardContainer.setHeight(t.height),this._linesContent.setWidth(16777216),this._linesContent.setHeight(16777216)}_getEditorClassName(){const e=this._textAreaHandler.isFocused()?" focused":"";return this._context.configuration.options.get(143)+" "+gk(this._context.theme.type)+e}handleEvents(e){super.handleEvents(e),this._scheduleRender()}onConfigurationChanged(e){return this.domNode.setClassName(this._getEditorClassName()),this._applyLayout(),!1}onCursorStateChanged(e){return this._selections=e.selections,!1}onDecorationsChanged(e){return e.affectsGlyphMargin&&(this._shouldRecomputeGlyphMarginLanes=!0),!1}onFocusChanged(e){return this.domNode.setClassName(this._getEditorClassName()),!1}onThemeChanged(e){return this._context.theme.update(e.theme),this.domNode.setClassName(this._getEditorClassName()),!1}dispose(){this._renderAnimationFrame!==null&&(this._renderAnimationFrame.dispose(),this._renderAnimationFrame=null),this._contentWidgets.overflowingContentWidgetsDomNode.domNode.remove(),this._context.removeEventHandler(this),this._viewLines.dispose();for(const e of this._viewParts)e.dispose();super.dispose()}_scheduleRender(){if(this._store.isDisposed)throw new nt;if(this._renderAnimationFrame===null){const e=this._createCoordinatedRendering();this._renderAnimationFrame=AI.INSTANCE.scheduleCoordinatedRendering({window:fe(this.domNode?.domNode),prepareRenderText:()=>{if(this._store.isDisposed)throw new nt;try{return e.prepareRenderText()}finally{this._renderAnimationFrame=null}},renderText:()=>{if(this._store.isDisposed)throw new nt;return e.renderText()},prepareRender:(t,i)=>{if(this._store.isDisposed)throw new nt;return e.prepareRender(t,i)},render:(t,i)=>{if(this._store.isDisposed)throw new nt;return e.render(t,i)}})}}_flushAccumulatedAndRenderNow(){const e=this._createCoordinatedRendering();cc(()=>e.prepareRenderText());const t=cc(()=>e.renderText());if(t){const[i,n]=t;cc(()=>e.prepareRender(i,n)),cc(()=>e.render(i,n))}}_getViewPartsToRender(){const e=[];let t=0;for(const i of this._viewParts)i.shouldRender()&&(e[t++]=i);return e}_createCoordinatedRendering(){return{prepareRenderText:()=>{if(this._shouldRecomputeGlyphMarginLanes){this._shouldRecomputeGlyphMarginLanes=!1;const e=this._computeGlyphMarginLanes();this._context.configuration.setGlyphMarginDecorationLaneCount(e.requiredLanes)}lc.onRenderStart()},renderText:()=>{if(!this.domNode.domNode.isConnected)return null;let e=this._getViewPartsToRender();if(!this._viewLines.shouldRender()&&e.length===0)return null;const t=this._context.viewLayout.getLinesViewportData();this._context.viewModel.setViewport(t.startLineNumber,t.endLineNumber,t.centeredLineNumber);const i=new Nse(this._selections,t,this._context.viewLayout.getWhitespaceViewportData(),this._context.viewModel);return this._contentWidgets.shouldRender()&&this._contentWidgets.onBeforeRender(i),this._viewLines.shouldRender()&&(this._viewLines.renderText(i),this._viewLines.onDidRender(),e=this._getViewPartsToRender()),[e,new Uie(this._context.viewLayout,i,this._viewLines)]},prepareRender:(e,t)=>{for(const i of e)i.prepareRender(t)},render:(e,t)=>{for(const i of e)i.render(t),i.onDidRender()}}}delegateVerticalScrollbarPointerDown(e){this._scrollbar.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){this._scrollbar.delegateScrollFromMouseWheelEvent(e)}restoreState(e){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:e.scrollTop,scrollLeft:e.scrollLeft},1),this._context.viewModel.visibleLinesStabilized()}getOffsetForColumn(e,t){const i=this._context.viewModel.model.validatePosition({lineNumber:e,column:t}),n=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(i);this._flushAccumulatedAndRenderNow();const s=this._viewLines.visibleRangeForPosition(new P(n.lineNumber,n.column));return s?s.left:-1}getTargetAtClientPoint(e,t){const i=this._pointerHandler.getTargetAtClientPoint(e,t);return i?Iy.convertViewToModelMouseTarget(i,this._context.viewModel.coordinatesConverter):null}createOverviewRuler(e){return new vse(this._context,e)}change(e){this._viewZones.changeViewZones(e),this._scheduleRender()}render(e,t){if(t){this._viewLines.forceShouldRender();for(const i of this._viewParts)i.forceShouldRender()}e?this._flushAccumulatedAndRenderNow():this._scheduleRender()}writeScreenReaderContent(e){this._textAreaHandler.writeScreenReaderContent(e)}focus(){this._textAreaHandler.focusTextArea()}isFocused(){return this._textAreaHandler.isFocused()}setAriaOptions(e){this._textAreaHandler.setAriaOptions(e)}addContentWidget(e){this._contentWidgets.addWidget(e.widget),this.layoutContentWidget(e),this._scheduleRender()}layoutContentWidget(e){this._contentWidgets.setWidgetPosition(e.widget,e.position?.position??null,e.position?.secondaryPosition??null,e.position?.preference??null,e.position?.positionAffinity??null),this._scheduleRender()}removeContentWidget(e){this._contentWidgets.removeWidget(e.widget),this._scheduleRender()}addOverlayWidget(e){this._overlayWidgets.addWidget(e.widget),this.layoutOverlayWidget(e),this._scheduleRender()}layoutOverlayWidget(e){this._overlayWidgets.setWidgetPosition(e.widget,e.position)&&this._scheduleRender()}removeOverlayWidget(e){this._overlayWidgets.removeWidget(e.widget),this._scheduleRender()}addGlyphMarginWidget(e){this._glyphMarginWidgets.addWidget(e.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}layoutGlyphMarginWidget(e){const t=e.position;this._glyphMarginWidgets.setWidgetPosition(e.widget,t)&&(this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender())}removeGlyphMarginWidget(e){this._glyphMarginWidgets.removeWidget(e.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}};RI=Rse([Ase(6,ke)],RI);function cc(o){try{return o()}catch(e){return Ze(e),null}}const s0=class s0{constructor(){this._coordinatedRenderings=[],this._animationFrameRunners=new Map}scheduleCoordinatedRendering(e){return this._coordinatedRenderings.push(e),this._scheduleRender(e.window),{dispose:()=>{const t=this._coordinatedRenderings.indexOf(e);if(t!==-1&&(this._coordinatedRenderings.splice(t,1),this._coordinatedRenderings.length===0)){for(const[i,n]of this._animationFrameRunners)n.dispose();this._animationFrameRunners.clear()}}}}_scheduleRender(e){if(!this._animationFrameRunners.has(e)){const t=()=>{this._animationFrameRunners.delete(e),this._onRenderScheduled()};this._animationFrameRunners.set(e,pC(e,t,100))}}_onRenderScheduled(){const e=this._coordinatedRenderings.slice(0);this._coordinatedRenderings=[];for(const i of e)cc(()=>i.prepareRenderText());const t=[];for(let i=0,n=e.length;is.renderText())}for(let i=0,n=e.length;is.prepareRender(a,l))}for(let i=0,n=e.length;is.render(a,l))}}};s0.INSTANCE=new s0;let AI=s0;class pp{constructor(e,t,i,n,s){this.injectionOffsets=e,this.injectionOptions=t,this.breakOffsets=i,this.breakOffsetsVisibleColumn=n,this.wrappedTextIndentLength=s}getOutputLineCount(){return this.breakOffsets.length}getMinOutputOffset(e){return e>0?this.wrappedTextIndentLength:0}getLineLength(e){const t=e>0?this.breakOffsets[e-1]:0;let n=this.breakOffsets[e]-t;return e>0&&(n+=this.wrappedTextIndentLength),n}getMaxOutputOffset(e){return this.getLineLength(e)}translateToInputOffset(e,t){e>0&&(t=Math.max(0,t-this.wrappedTextIndentLength));let n=e===0?t:this.breakOffsets[e-1]+t;if(this.injectionOffsets!==null)for(let s=0;sthis.injectionOffsets[s];s++)n0?this.breakOffsets[s-1]:0,t===0)if(e<=r)n=s-1;else if(e>l)i=s+1;else break;else if(e=l)i=s+1;else break}let a=e-r;return s>0&&(a+=this.wrappedTextIndentLength),new n1(s,a)}normalizeOutputPosition(e,t,i){if(this.injectionOffsets!==null){const n=this.outputPositionToOffsetInInputWithInjections(e,t),s=this.normalizeOffsetInInputWithInjectionsAroundInjections(n,i);if(s!==n)return this.offsetInInputWithInjectionsToOutputPosition(s,i)}if(i===0){if(e>0&&t===this.getMinOutputOffset(e))return new n1(e-1,this.getMaxOutputOffset(e-1))}else if(i===1){const n=this.getOutputLineCount()-1;if(e0&&(t=Math.max(0,t-this.wrappedTextIndentLength)),(e>0?this.breakOffsets[e-1]:0)+t}normalizeOffsetInInputWithInjectionsAroundInjections(e,t){const i=this.getInjectedTextAtOffset(e);if(!i)return e;if(t===2){if(e===i.offsetInInputWithInjections+i.length&&$O(this.injectionOptions[i.injectedTextIndex].cursorStops))return i.offsetInInputWithInjections+i.length;{let n=i.offsetInInputWithInjections;if(KO(this.injectionOptions[i.injectedTextIndex].cursorStops))return n;let s=i.injectedTextIndex-1;for(;s>=0&&this.injectionOffsets[s]===this.injectionOffsets[i.injectedTextIndex]&&!($O(this.injectionOptions[s].cursorStops)||(n-=this.injectionOptions[s].content.length,KO(this.injectionOptions[s].cursorStops)));)s--;return n}}else if(t===1||t===4){let n=i.offsetInInputWithInjections+i.length,s=i.injectedTextIndex;for(;s+1=0&&this.injectionOffsets[s-1]===this.injectionOffsets[s];)n-=this.injectionOptions[s-1].content.length,s--;return n}z0()}getInjectedText(e,t){const i=this.outputPositionToOffsetInInputWithInjections(e,t),n=this.getInjectedTextAtOffset(i);return n?{options:this.injectionOptions[n.injectedTextIndex]}:null}getInjectedTextAtOffset(e){const t=this.injectionOffsets,i=this.injectionOptions;if(t!==null){let n=0;for(let s=0;se)break;if(e<=l)return{injectedTextIndex:s,offsetInInputWithInjections:a,length:r};n+=r}}}}function $O(o){return o==null?!0:o===gr.Right||o===gr.Both}function KO(o){return o==null?!0:o===gr.Left||o===gr.Both}class n1{constructor(e,t){this.outputLineIndex=e,this.outputOffset=t}toString(){return`${this.outputLineIndex}:${this.outputOffset}`}toPosition(e){return new P(e+this.outputLineIndex,this.outputOffset+1)}}const Pse=Kc("domLineBreaksComputer",{createHTML:o=>o});class q2{static create(e){return new q2(new WeakRef(e))}constructor(e){this.targetWindow=e}createLineBreaksComputer(e,t,i,n,s){const r=[],a=[];return{addRequest:(l,c,d)=>{r.push(l),a.push(c)},finalize:()=>Ose(A5(this.targetWindow.deref()),r,e,t,i,n,s,a)}}}function Ose(o,e,t,i,n,s,r,a){function l(N){const H=a[N];if(H){const F=_r.applyInjectedText(e[N],H),W=H.map(B=>B.options),j=H.map(B=>B.column-1);return new pp(j,W,[F.length],[],0)}else return null}if(n===-1){const N=[];for(let H=0,F=e.length;Hc?(F=0,W=0):j=c-ne}const B=H.substr(F),G=Fse(B,W,i,j,g,u);p[N]=F,_[N]=W,b[N]=B,C[N]=G[0],w[N]=G[1]}const v=g.build(),y=Pse?.createHTML(v)??v;f.innerHTML=y,f.style.position="absolute",f.style.top="10000",r==="keepAll"?(f.style.wordBreak="keep-all",f.style.overflowWrap="anywhere"):(f.style.wordBreak="inherit",f.style.overflowWrap="break-word"),o.document.body.appendChild(f);const x=document.createRange(),L=Array.prototype.slice.call(f.children,0),E=[];for(let N=0;Nse.options),ae=de.map(se=>se.column-1)):(ne=null,ae=null),E[N]=new pp(ae,ne,F,G,j)}return f.remove(),E}function Fse(o,e,t,i,n,s){if(s!==0){const u=String(s);n.appendString('
    ');const r=o.length;let a=e,l=0;const c=[],d=[];let h=0");for(let u=0;u"),c[u]=l,d[u]=a;const f=h;h=u+1"),c[o.length]=l,d[o.length]=a,n.appendString("
    "),[c,d]}function Bse(o,e,t,i){if(t.length<=1)return null;const n=Array.prototype.slice.call(e.children,0),s=[];try{PI(o,n,i,0,null,t.length-1,null,s)}catch(r){return console.log(r),null}return s.length===0?null:(s.push(t.length),s)}function PI(o,e,t,i,n,s,r,a){if(i===s||(n=n||rL(o,e,t[i],t[i+1]),r=r||rL(o,e,t[s],t[s+1]),Math.abs(n[0].top-r[0].top)<=.1))return;if(i+1===s){a.push(s);return}const l=i+(s-i)/2|0,c=rL(o,e,t[l],t[l+1]);PI(o,e,t,i,n,l,c,a),PI(o,e,t,l,c,s,r,a)}function rL(o,e,t,i){return o.setStart(e[t/16384|0].firstChild,t%16384),o.setEnd(e[i/16384|0].firstChild,i%16384),o.getClientRects()}class Wse extends z{constructor(){super(),this._editor=null,this._instantiationService=null,this._instances=this._register(new RN),this._pending=new Map,this._finishedInstantiation=[],this._finishedInstantiation[0]=!1,this._finishedInstantiation[1]=!1,this._finishedInstantiation[2]=!1,this._finishedInstantiation[3]=!1}initialize(e,t,i){this._editor=e,this._instantiationService=i;for(const n of t){if(this._pending.has(n.id)){Ze(new Error(`Cannot have two contributions with the same id ${n.id}`));continue}this._pending.set(n.id,n)}this._instantiateSome(0),this._register(kb(fe(this._editor.getDomNode()),()=>{this._instantiateSome(1)})),this._register(kb(fe(this._editor.getDomNode()),()=>{this._instantiateSome(2)})),this._register(kb(fe(this._editor.getDomNode()),()=>{this._instantiateSome(3)},5e3))}saveViewState(){const e={};for(const[t,i]of this._instances)typeof i.saveViewState=="function"&&(e[t]=i.saveViewState());return e}restoreViewState(e){for(const[t,i]of this._instances)typeof i.restoreViewState=="function"&&i.restoreViewState(e[t])}get(e){return this._instantiateById(e),this._instances.get(e)||null}onBeforeInteractionEvent(){this._instantiateSome(2)}onAfterModelAttached(){return kb(fe(this._editor?.getDomNode()),()=>{this._instantiateSome(1)},50)}_instantiateSome(e){if(this._finishedInstantiation[e])return;this._finishedInstantiation[e]=!0;const t=this._findPendingContributionsByInstantiation(e);for(const i of t)this._instantiateById(i.id)}_findPendingContributionsByInstantiation(e){const t=[];for(const[,i]of this._pending)i.instantiation===e&&t.push(i);return t}_instantiateById(e){const t=this._pending.get(e);if(t){if(this._pending.delete(e),!this._instantiationService||!this._editor)throw new Error("Cannot instantiate contributions before being initialized!");try{const i=this._instantiationService.createInstance(t.ctor,this._editor);this._instances.set(t.id,i),typeof i.restoreViewState=="function"&&t.instantiation!==0&&console.warn(`Editor contribution '${t.id}' should be eager instantiated because it uses saveViewState / restoreViewState.`)}catch(i){Ze(i)}}}}class N8{constructor(e,t,i,n,s,r,a){this.id=e,this.label=t,this.alias=i,this.metadata=n,this._precondition=s,this._run=r,this._contextKeyService=a}isSupported(){return this._contextKeyService.contextMatchesRules(this._precondition)}run(e){return this.isSupported()?this._run(e):Promise.resolve(void 0)}}class G2{static create(e){return new G2(e.get(135),e.get(134))}constructor(e,t){this.classifier=new Hse(e,t)}createLineBreaksComputer(e,t,i,n,s){const r=[],a=[],l=[];return{addRequest:(c,d,h)=>{r.push(c),a.push(d),l.push(h)},finalize:()=>{const c=e.typicalFullwidthCharacterWidth/e.typicalHalfwidthCharacterWidth,d=[];for(let h=0,u=r.length;h=0&&e<256?this._asciiMap[e]:e>=12352&&e<=12543||e>=13312&&e<=19903||e>=19968&&e<=40959?3:this._map.get(e)||this._defaultValue}}let OI=[],FI=[];function Vse(o,e,t,i,n,s,r,a){if(n===-1)return null;const l=t.length;if(l<=1)return null;const c=a==="keepAll",d=e.breakOffsets,h=e.breakOffsetsVisibleColumn,u=T8(t,i,n,s,r),f=n-u,g=OI,p=FI;let _=0,b=0,C=0,w=n;const v=d.length;let y=0;if(y>=0){let x=Math.abs(h[y]-w);for(;y+1=x)break;x=L,y++}}for(;yx&&(x=b,L=C);let E=0,N=0,H=0,F=0;if(L<=w){let j=L,B=x===0?0:t.charCodeAt(x-1),G=x===0?0:o.get(B),ne=!0;for(let ae=x;aeb&&BI(B,G,se,be,c)&&(E=de,N=j),j+=we,j>w){de>b?(H=de,F=j-we):(H=ae+1,F=j),j-N>f&&(E=0),ne=!1;break}B=se,G=be}if(ne){_>0&&(g[_]=d[d.length-1],p[_]=h[d.length-1],_++);break}}if(E===0){let j=L,B=t.charCodeAt(x),G=o.get(B),ne=!1;for(let ae=x-1;ae>=b;ae--){const de=ae+1,se=t.charCodeAt(ae);if(se===9){ne=!0;break}let be,we;if(Mh(se)?(ae--,be=0,we=2):(be=o.get(se),we=Rc(se)?s:1),j<=w){if(H===0&&(H=de,F=j),j<=w-f)break;if(BI(se,be,B,G,c)){E=de,N=j;break}}j-=we,B=se,G=be}if(E!==0){const ae=f-(F-N);if(ae<=i){const de=t.charCodeAt(H);let se;wi(de)?se=2:se=_p(de,F,i,s),ae-se<0&&(E=0)}}if(ne){y--;continue}}if(E===0&&(E=H,N=F),E<=b){const j=t.charCodeAt(b);wi(j)?(E=b+2,N=C+2):(E=b+1,N=C+_p(j,C,i,s))}for(b=E,g[_]=E,C=N,p[_]=N,_++,w=N+f;y<0||y=W)break;W=j,y++}}return _===0?null:(g.length=_,p.length=_,OI=e.breakOffsets,FI=e.breakOffsetsVisibleColumn,e.breakOffsets=g,e.breakOffsetsVisibleColumn=p,e.wrappedTextIndentLength=u,e)}function zse(o,e,t,i,n,s,r,a){const l=_r.applyInjectedText(e,t);let c,d;if(t&&t.length>0?(c=t.map(N=>N.options),d=t.map(N=>N.column-1)):(c=null,d=null),n===-1)return c?new pp(d,c,[l.length],[],0):null;const h=l.length;if(h<=1)return c?new pp(d,c,[l.length],[],0):null;const u=a==="keepAll",f=T8(l,i,n,s,r),g=n-f,p=[],_=[];let b=0,C=0,w=0,v=n,y=l.charCodeAt(0),x=o.get(y),L=_p(y,0,i,s),E=1;wi(y)&&(L+=1,y=l.charCodeAt(1),x=o.get(y),E++);for(let N=E;Nv&&((C===0||L-w>g)&&(C=H,w=L-j),p[b]=C,_[b]=w,b++,v=w+g,C=0),y=F,x=W}return b===0&&(!t||t.length===0)?null:(p[b]=h,_[b]=L,new pp(d,c,p,_,f))}function _p(o,e,t,i){return o===9?t-e%t:Rc(o)||o<32?i:1}function jO(o,e){return e-o%e}function BI(o,e,t,i,n){return t!==32&&(e===2&&i!==2||e!==1&&i===1||!n&&e===3&&i!==2||!n&&i===3&&e!==1)}function T8(o,e,t,i,n){let s=0;if(n!==0){const r=zn(o);if(r!==-1){for(let l=0;lt&&(s=0)}}return s}class Fv{constructor(e){this._selTrackedRange=null,this._trackSelection=!0,this._setState(e,new Ri(new I(1,1,1,1),0,0,new P(1,1),0),new Ri(new I(1,1,1,1),0,0,new P(1,1),0))}dispose(e){this._removeTrackedRange(e)}startTrackingSelection(e){this._trackSelection=!0,this._updateTrackedRange(e)}stopTrackingSelection(e){this._trackSelection=!1,this._removeTrackedRange(e)}_updateTrackedRange(e){this._trackSelection&&(this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,this.modelState.selection,0))}_removeTrackedRange(e){this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,null,0)}asCursorState(){return new Ke(this.modelState,this.viewState)}readSelectionFromMarkers(e){const t=e.model._getTrackedRange(this._selTrackedRange);return this.modelState.selection.isEmpty()&&!t.isEmpty()?Fe.fromRange(t.collapseToEnd(),this.modelState.selection.getDirection()):Fe.fromRange(t,this.modelState.selection.getDirection())}ensureValidState(e){this._setState(e,this.modelState,this.viewState)}setState(e,t,i){this._setState(e,t,i)}static _validatePositionWithCache(e,t,i,n){return t.equals(i)?n:e.normalizePosition(t,2)}static _validateViewState(e,t){const i=t.position,n=t.selectionStart.getStartPosition(),s=t.selectionStart.getEndPosition(),r=e.normalizePosition(i,2),a=this._validatePositionWithCache(e,n,i,r),l=this._validatePositionWithCache(e,s,n,a);return i.equals(r)&&n.equals(a)&&s.equals(l)?t:new Ri(I.fromPositions(a,l),t.selectionStartKind,t.selectionStartLeftoverVisibleColumns+n.column-a.column,r,t.leftoverVisibleColumns+i.column-r.column)}_setState(e,t,i){if(i&&(i=Fv._validateViewState(e.viewModel,i)),t){const n=e.model.validateRange(t.selectionStart),s=t.selectionStart.equalsRange(n)?t.selectionStartLeftoverVisibleColumns:0,r=e.model.validatePosition(t.position),a=t.position.equals(r)?t.leftoverVisibleColumns:0;t=new Ri(n,t.selectionStartKind,s,r,a)}else{if(!i)return;const n=e.model.validateRange(e.coordinatesConverter.convertViewRangeToModelRange(i.selectionStart)),s=e.model.validatePosition(e.coordinatesConverter.convertViewPositionToModelPosition(i.position));t=new Ri(n,i.selectionStartKind,i.selectionStartLeftoverVisibleColumns,s,i.leftoverVisibleColumns)}if(i){const n=e.coordinatesConverter.validateViewRange(i.selectionStart,t.selectionStart),s=e.coordinatesConverter.validateViewPosition(i.position,t.position);i=new Ri(n,t.selectionStartKind,t.selectionStartLeftoverVisibleColumns,s,t.leftoverVisibleColumns)}else{const n=e.coordinatesConverter.convertModelPositionToViewPosition(new P(t.selectionStart.startLineNumber,t.selectionStart.startColumn)),s=e.coordinatesConverter.convertModelPositionToViewPosition(new P(t.selectionStart.endLineNumber,t.selectionStart.endColumn)),r=new I(n.lineNumber,n.column,s.lineNumber,s.column),a=e.coordinatesConverter.convertModelPositionToViewPosition(t.position);i=new Ri(r,t.selectionStartKind,t.selectionStartLeftoverVisibleColumns,a,t.leftoverVisibleColumns)}this.modelState=t,this.viewState=i,this._updateTrackedRange(e)}}class qO{constructor(e){this.context=e,this.cursors=[new Fv(e)],this.lastAddedCursorIndex=0}dispose(){for(const e of this.cursors)e.dispose(this.context)}startTrackingSelections(){for(const e of this.cursors)e.startTrackingSelection(this.context)}stopTrackingSelections(){for(const e of this.cursors)e.stopTrackingSelection(this.context)}updateContext(e){this.context=e}ensureValidState(){for(const e of this.cursors)e.ensureValidState(this.context)}readSelectionFromMarkers(){return this.cursors.map(e=>e.readSelectionFromMarkers(this.context))}getAll(){return this.cursors.map(e=>e.asCursorState())}getViewPositions(){return this.cursors.map(e=>e.viewState.position)}getTopMostViewPosition(){return UU(this.cursors,rs(e=>e.viewState.position,P.compare)).viewState.position}getBottomMostViewPosition(){return zU(this.cursors,rs(e=>e.viewState.position,P.compare)).viewState.position}getSelections(){return this.cursors.map(e=>e.modelState.selection)}getViewSelections(){return this.cursors.map(e=>e.viewState.selection)}setSelections(e){this.setStates(Ke.fromModelSelections(e))}getPrimaryCursor(){return this.cursors[0].asCursorState()}setStates(e){e!==null&&(this.cursors[0].setState(this.context,e[0].modelState,e[0].viewState),this._setSecondaryStates(e.slice(1)))}_setSecondaryStates(e){const t=this.cursors.length-1,i=e.length;if(ti){const n=t-i;for(let s=0;s=e+1&&this.lastAddedCursorIndex--,this.cursors[e+1].dispose(this.context),this.cursors.splice(e+1,1)}normalize(){if(this.cursors.length===1)return;const e=this.cursors.slice(0),t=[];for(let i=0,n=e.length;ii.selection,I.compareRangesUsingStarts));for(let i=0;ih&&p.index--;e.splice(h,1),t.splice(d,1),this._removeSecondaryCursor(h-1),i--}}}}class GO{constructor(e,t,i,n){this._cursorContextBrand=void 0,this.model=e,this.viewModel=t,this.coordinatesConverter=i,this.cursorConfig=n}}class Use{constructor(){this.type=0}}class $se{constructor(){this.type=1}}class Kse{constructor(e){this.type=2,this._source=e}hasChanged(e){return this._source.hasChanged(e)}}class jse{constructor(e,t,i){this.selections=e,this.modelSelections=t,this.reason=i,this.type=3}}class rd{constructor(e){this.type=4,e?(this.affectsMinimap=e.affectsMinimap,this.affectsOverviewRuler=e.affectsOverviewRuler,this.affectsGlyphMargin=e.affectsGlyphMargin,this.affectsLineNumber=e.affectsLineNumber):(this.affectsMinimap=!0,this.affectsOverviewRuler=!0,this.affectsGlyphMargin=!0,this.affectsLineNumber=!0)}}class s1{constructor(){this.type=5}}class qse{constructor(e){this.type=6,this.isFocused=e}}class Gse{constructor(){this.type=7}}class o1{constructor(){this.type=8}}class M8{constructor(e,t){this.fromLineNumber=e,this.count=t,this.type=9}}class WI{constructor(e,t){this.type=10,this.fromLineNumber=e,this.toLineNumber=t}}class HI{constructor(e,t){this.type=11,this.fromLineNumber=e,this.toLineNumber=t}}class bp{constructor(e,t,i,n,s,r,a){this.source=e,this.minimalReveal=t,this.range=i,this.selections=n,this.verticalType=s,this.revealHorizontal=r,this.scrollType=a,this.type=12}}class Zse{constructor(e){this.type=13,this.scrollWidth=e.scrollWidth,this.scrollLeft=e.scrollLeft,this.scrollHeight=e.scrollHeight,this.scrollTop=e.scrollTop,this.scrollWidthChanged=e.scrollWidthChanged,this.scrollLeftChanged=e.scrollLeftChanged,this.scrollHeightChanged=e.scrollHeightChanged,this.scrollTopChanged=e.scrollTopChanged}}class Yse{constructor(e){this.theme=e,this.type=14}}class Qse{constructor(e){this.type=15,this.ranges=e}}class Xse{constructor(){this.type=16}}let Jse=class{constructor(){this.type=17}};class eoe extends z{constructor(){super(),this._onEvent=this._register(new A),this.onEvent=this._onEvent.event,this._eventHandlers=[],this._viewEventQueue=null,this._isConsumingViewEventQueue=!1,this._collector=null,this._collectorCnt=0,this._outgoingEvents=[]}emitOutgoingEvent(e){this._addOutgoingEvent(e),this._emitOutgoingEvents()}_addOutgoingEvent(e){for(let t=0,i=this._outgoingEvents.length;t0;){if(this._collector||this._isConsumingViewEventQueue)return;const e=this._outgoingEvents.shift();e.isNoOp()||this._onEvent.fire(e)}}addViewEventHandler(e){for(let t=0,i=this._eventHandlers.length;t0&&this._emitMany(t)}this._emitOutgoingEvents()}emitSingleViewEvent(e){try{this.beginEmitViewEvents().emitViewEvent(e)}finally{this.endEmitViewEvents()}}_emitMany(e){this._viewEventQueue?this._viewEventQueue=this._viewEventQueue.concat(e):this._viewEventQueue=e,this._isConsumingViewEventQueue||this._consumeViewEventQueue()}_consumeViewEventQueue(){try{this._isConsumingViewEventQueue=!0,this._doConsumeQueue()}finally{this._isConsumingViewEventQueue=!1}}_doConsumeQueue(){for(;this._viewEventQueue;){const e=this._viewEventQueue;this._viewEventQueue=null;const t=this._eventHandlers.slice(0);for(const i of t)i.handleEvents(e)}}}class toe{constructor(){this.viewEvents=[],this.outgoingEvents=[]}emitViewEvent(e){this.viewEvents.push(e)}emitOutgoingEvent(e){this.outgoingEvents.push(e)}}class Z2{constructor(e,t,i,n){this.kind=0,this._oldContentWidth=e,this._oldContentHeight=t,this.contentWidth=i,this.contentHeight=n,this.contentWidthChanged=this._oldContentWidth!==this.contentWidth,this.contentHeightChanged=this._oldContentHeight!==this.contentHeight}isNoOp(){return!this.contentWidthChanged&&!this.contentHeightChanged}attemptToMerge(e){return e.kind!==this.kind?null:new Z2(this._oldContentWidth,this._oldContentHeight,e.contentWidth,e.contentHeight)}}class Y2{constructor(e,t){this.kind=1,this.oldHasFocus=e,this.hasFocus=t}isNoOp(){return this.oldHasFocus===this.hasFocus}attemptToMerge(e){return e.kind!==this.kind?null:new Y2(this.oldHasFocus,e.hasFocus)}}class Q2{constructor(e,t,i,n,s,r,a,l){this.kind=2,this._oldScrollWidth=e,this._oldScrollLeft=t,this._oldScrollHeight=i,this._oldScrollTop=n,this.scrollWidth=s,this.scrollLeft=r,this.scrollHeight=a,this.scrollTop=l,this.scrollWidthChanged=this._oldScrollWidth!==this.scrollWidth,this.scrollLeftChanged=this._oldScrollLeft!==this.scrollLeft,this.scrollHeightChanged=this._oldScrollHeight!==this.scrollHeight,this.scrollTopChanged=this._oldScrollTop!==this.scrollTop}isNoOp(){return!this.scrollWidthChanged&&!this.scrollLeftChanged&&!this.scrollHeightChanged&&!this.scrollTopChanged}attemptToMerge(e){return e.kind!==this.kind?null:new Q2(this._oldScrollWidth,this._oldScrollLeft,this._oldScrollHeight,this._oldScrollTop,e.scrollWidth,e.scrollLeft,e.scrollHeight,e.scrollTop)}}class ioe{constructor(){this.kind=3}isNoOp(){return!1}attemptToMerge(e){return e.kind!==this.kind?null:this}}class noe{constructor(){this.kind=4}isNoOp(){return!1}attemptToMerge(e){return e.kind!==this.kind?null:this}}class Bv{constructor(e,t,i,n,s,r,a){this.kind=6,this.oldSelections=e,this.selections=t,this.oldModelVersionId=i,this.modelVersionId=n,this.source=s,this.reason=r,this.reachedMaxCursorCount=a}static _selectionsAreEqual(e,t){if(!e&&!t)return!0;if(!e||!t)return!1;const i=e.length,n=t.length;if(i!==n)return!1;for(let s=0;s0){const e=this._cursors.getSelections();for(let t=0;tr&&(n=n.slice(0,r),s=!0);const a=Cp.from(this._model,this);return this._cursors.setStates(n),this._cursors.normalize(),this._columnSelectData=null,this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(e,t,i,a,s)}setCursorColumnSelectData(e){this._columnSelectData=e}revealAll(e,t,i,n,s,r){const a=this._cursors.getViewPositions();let l=null,c=null;a.length>1?c=this._cursors.getViewSelections():l=I.fromPositions(a[0],a[0]),e.emitViewEvent(new bp(t,i,l,c,n,s,r))}revealPrimary(e,t,i,n,s,r){const l=[this._cursors.getPrimaryCursor().viewState.selection];e.emitViewEvent(new bp(t,i,null,l,n,s,r))}saveState(){const e=[],t=this._cursors.getSelections();for(let i=0,n=t.length;i0){const s=Ke.fromModelSelections(i.resultingSelection);this.setStates(e,"modelChange",i.isUndoing?5:i.isRedoing?6:2,s)&&this.revealAll(e,"modelChange",!1,0,!0,0)}else{const s=this._cursors.readSelectionFromMarkers();this.setStates(e,"modelChange",2,Ke.fromModelSelections(s))}}}getSelection(){return this._cursors.getPrimaryCursor().modelState.selection}getTopMostViewPosition(){return this._cursors.getTopMostViewPosition()}getBottomMostViewPosition(){return this._cursors.getBottomMostViewPosition()}getCursorColumnSelectData(){if(this._columnSelectData)return this._columnSelectData;const e=this._cursors.getPrimaryCursor(),t=e.viewState.selectionStart.getStartPosition(),i=e.viewState.position;return{isReal:!1,fromViewLineNumber:t.lineNumber,fromViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,t),toViewLineNumber:i.lineNumber,toViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,i)}}getSelections(){return this._cursors.getSelections()}setSelections(e,t,i,n){this.setStates(e,t,n,Ke.fromModelSelections(i))}getPrevEditOperationType(){return this._prevEditOperationType}setPrevEditOperationType(e){this._prevEditOperationType=e}_pushAutoClosedAction(e,t){const i=[],n=[];for(let a=0,l=e.length;a0&&this._pushAutoClosedAction(i,n),this._prevEditOperationType=e.type}e.shouldPushStackElementAfter&&this._model.pushStackElement()}_interpretCommandResult(e){(!e||e.length===0)&&(e=this._cursors.readSelectionFromMarkers()),this._columnSelectData=null,this._cursors.setSelections(e),this._cursors.normalize()}_emitStateChangedIfNecessary(e,t,i,n,s){const r=Cp.from(this._model,this);if(r.equals(n))return!1;const a=this._cursors.getSelections(),l=this._cursors.getViewSelections();if(e.emitViewEvent(new jse(l,a,i)),!n||n.cursorState.length!==r.cursorState.length||r.cursorState.some((c,d)=>!c.modelState.equals(n.cursorState[d].modelState))){const c=n?n.cursorState.map(h=>h.modelState.selection):null,d=n?n.modelVersionId:0;e.emitOutgoingEvent(new Bv(c,a,d,r.modelVersionId,t||"keyboard",i,s))}return!0}_findAutoClosingPairs(e){if(!e.length)return null;const t=[];for(let i=0,n=e.length;i=0)return null;const r=s.text.match(/([)\]}>'"`])([^)\]}>'"`]*)$/);if(!r)return null;const a=r[1],l=this.context.cursorConfig.autoClosingPairs.autoClosingPairsCloseSingleChar.get(a);if(!l||l.length!==1)return null;const c=l[0].open,d=s.text.length-r[2].length-1,h=s.text.lastIndexOf(c,d-1);if(h===-1)return null;t.push([h,d])}return t}executeEdits(e,t,i,n){let s=null;t==="snippet"&&(s=this._findAutoClosingPairs(i)),s&&(i[0]._isTracked=!0);const r=[],a=[],l=this._model.pushEditOperations(this.getSelections(),i,c=>{if(s)for(let h=0,u=s.length;h0&&this._pushAutoClosedAction(r,a)}_executeEdit(e,t,i,n=0){if(this.context.cursorConfig.readOnly)return;const s=Cp.from(this._model,this);this._cursors.stopTrackingSelections(),this._isHandling=!0;try{this._cursors.ensureValidState(),e()}catch(r){Ze(r)}this._isHandling=!1,this._cursors.startTrackingSelections(),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(t,i,n,s,!1)&&this.revealAll(t,i,!1,0,!0,0)}getAutoClosedCharacters(){return ZO.getAllAutoClosedCharacters(this._autoClosedActions)}startComposition(e){this._compositionState=new vp(this._model,this.getSelections())}endComposition(e,t){const i=this._compositionState?this._compositionState.deduceOutcome(this._model,this.getSelections()):null;this._compositionState=null,this._executeEdit(()=>{t==="keyboard"&&this._executeEditOperation(Ed.compositionEndWithInterceptors(this._prevEditOperationType,this.context.cursorConfig,this._model,i,this.getSelections(),this.getAutoClosedCharacters()))},e,t)}type(e,t,i){this._executeEdit(()=>{if(i==="keyboard"){const n=t.length;let s=0;for(;s{const c=l.getPosition();return new Fe(c.lineNumber,c.column+s,c.lineNumber,c.column+s)});this.setSelections(e,r,a,0)}return}this._executeEdit(()=>{this._executeEditOperation(Ed.compositionType(this._prevEditOperationType,this.context.cursorConfig,this._model,this.getSelections(),t,i,n,s))},e,r)}paste(e,t,i,n,s){this._executeEdit(()=>{this._executeEditOperation(Ed.paste(this.context.cursorConfig,this._model,this.getSelections(),t,i,n||[]))},e,s,4)}cut(e,t){this._executeEdit(()=>{this._executeEditOperation(Kh.cut(this.context.cursorConfig,this._model,this.getSelections()))},e,t)}executeCommand(e,t,i){this._executeEdit(()=>{this._cursors.killSecondaryCursors(),this._executeEditOperation(new jn(0,[t],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},e,i)}executeCommands(e,t,i){this._executeEdit(()=>{this._executeEditOperation(new jn(0,t,{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},e,i)}}class Cp{static from(e,t){return new Cp(e.getVersionId(),t.getCursorStates())}constructor(e,t){this.modelVersionId=e,this.cursorState=t}equals(e){if(!e||this.modelVersionId!==e.modelVersionId||this.cursorState.length!==e.cursorState.length)return!1;for(let t=0,i=this.cursorState.length;t=t.length||!t[i].strictContainsRange(e[i]))return!1;return!0}}class uoe{static executeCommands(e,t,i){const n={model:e,selectionsBefore:t,trackedRanges:[],trackedRangesDirection:[]},s=this._innerExecuteCommands(n,i);for(let r=0,a=n.trackedRanges.length;r0&&(r[0]._isTracked=!0);let a=e.model.pushEditOperations(e.selectionsBefore,r,c=>{const d=[];for(let f=0;ff.identifier.minor-g.identifier.minor,u=[];for(let f=0;f0?(d[f].sort(h),u[f]=t[f].computeCursorState(e.model,{getInverseEditOperations:()=>d[f],getTrackedSelection:g=>{const p=parseInt(g,10),_=e.model._getTrackedRange(e.trackedRanges[p]);return e.trackedRangesDirection[p]===0?new Fe(_.startLineNumber,_.startColumn,_.endLineNumber,_.endColumn):new Fe(_.endLineNumber,_.endColumn,_.startLineNumber,_.startColumn)}})):u[f]=e.selectionsBefore[f];return u});a||(a=e.selectionsBefore);const l=[];for(const c in s)s.hasOwnProperty(c)&&l.push(parseInt(c,10));l.sort((c,d)=>d-c);for(const c of l)a.splice(c,1);return a}static _arrayIsEmpty(e){for(let t=0,i=e.length;t{I.isEmpty(h)&&u===""||n.push({identifier:{major:t,minor:s++},range:h,text:u,forceMoveMarkers:f,isAutoWhitespaceEdit:i.insertsAutoWhitespace})};let a=!1;const d={addEditOperation:r,addTrackedEditOperation:(h,u,f)=>{a=!0,r(h,u,f)},trackSelection:(h,u)=>{const f=Fe.liftSelection(h);let g;if(f.isEmpty())if(typeof u=="boolean")u?g=2:g=3;else{const b=e.model.getLineMaxColumn(f.startLineNumber);f.startColumn===b?g=2:g=3}else g=1;const p=e.trackedRanges.length,_=e.model._setTrackedRange(null,f,g);return e.trackedRanges[p]=_,e.trackedRangesDirection[p]=f.getDirection(),p.toString()}};try{i.getEditOperations(e.model,d)}catch(h){return Ze(h),{operations:[],hadTrackedEditOperation:!1}}return{operations:n,hadTrackedEditOperation:a}}static _getLoserCursorMap(e){e=e.slice(0),e.sort((i,n)=>-I.compareRangesUsingEnds(i.range,n.range));const t={};for(let i=1;is.identifier.major?r=n.identifier.major:r=s.identifier.major,t[r.toString()]=!0;for(let a=0;a0&&i--}}return t}}class foe{constructor(e,t,i){this.text=e,this.startSelection=t,this.endSelection=i}}class vp{static _capture(e,t){const i=[];for(const n of t){if(n.startLineNumber!==n.endLineNumber)return null;i.push(new foe(e.getLineContent(n.startLineNumber),n.startColumn-1,n.endColumn-1))}return i}constructor(e,t){this._original=vp._capture(e,t)}deduceOutcome(e,t){if(!this._original)return null;const i=vp._capture(e,t);if(!i||this._original.length!==i.length)return null;const n=[];for(let s=0,r=this._original.length;s>>1;t===e[r].afterLineNumber?i{t=!0,n=n|0,s=s|0,r=r|0,a=a|0;const l=this._instanceId+ ++this._lastWhitespaceId;return this._pendingChanges.insert(new moe(l,n,s,r,a)),l},changeOneWhitespace:(n,s,r)=>{t=!0,s=s|0,r=r|0,this._pendingChanges.change({id:n,newAfterLineNumber:s,newHeight:r})},removeWhitespace:n=>{t=!0,this._pendingChanges.remove({id:n})}})}finally{this._pendingChanges.commit(this)}return t}_commitPendingChanges(e,t,i){if((e.length>0||i.length>0)&&(this._minWidth=-1),e.length+t.length+i.length<=1){for(const l of e)this._insertWhitespace(l);for(const l of t)this._changeOneWhitespace(l.id,l.newAfterLineNumber,l.newHeight);for(const l of i){const c=this._findWhitespaceIndex(l.id);c!==-1&&this._removeWhitespace(c)}return}const n=new Set;for(const l of i)n.add(l.id);const s=new Map;for(const l of t)s.set(l.id,l);const r=l=>{const c=[];for(const d of l)if(!n.has(d.id)){if(s.has(d.id)){const h=s.get(d.id);d.afterLineNumber=h.newAfterLineNumber,d.height=h.newHeight}c.push(d)}return c},a=r(this._arr).concat(r(e));a.sort((l,c)=>l.afterLineNumber===c.afterLineNumber?l.ordinal-c.ordinal:l.afterLineNumber-c.afterLineNumber),this._arr=a,this._prefixSumValidIndex=-1}_checkPendingChanges(){this._pendingChanges.mustCommit()&&this._pendingChanges.commit(this)}_insertWhitespace(e){const t=Cc.findInsertionIndex(this._arr,e.afterLineNumber,e.ordinal);this._arr.splice(t,0,e),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,t-1)}_findWhitespaceIndex(e){const t=this._arr;for(let i=0,n=t.length;it&&(this._arr[i].afterLineNumber-=t-e+1)}}onLinesInserted(e,t){this._checkPendingChanges(),e=e|0,t=t|0,this._lineCount+=t-e+1;for(let i=0,n=this._arr.length;i=t.length||t[a+1].afterLineNumber>=e)return a;i=a+1|0}else n=a-1|0}return-1}_findFirstWhitespaceAfterLineNumber(e){e=e|0;const i=this._findLastWhitespaceBeforeLineNumber(e)+1;return i1?i=this._lineHeight*(e-1):i=0;const n=this.getWhitespaceAccumulatedHeightBeforeLineNumber(e-(t?1:0));return i+n+this._paddingTop}getVerticalOffsetAfterLineNumber(e,t=!1){this._checkPendingChanges(),e=e|0;const i=this._lineHeight*e,n=this.getWhitespaceAccumulatedHeightBeforeLineNumber(e+(t?1:0));return i+n+this._paddingTop}getWhitespaceMinWidth(){if(this._checkPendingChanges(),this._minWidth===-1){let e=0;for(let t=0,i=this._arr.length;tt}isInTopPadding(e){return this._paddingTop===0?!1:(this._checkPendingChanges(),e=t-this._paddingBottom}getLineNumberAtOrAfterVerticalOffset(e){if(this._checkPendingChanges(),e=e|0,e<0)return 1;const t=this._lineCount|0,i=this._lineHeight;let n=1,s=t;for(;n=a+i)n=r+1;else{if(e>=a)return r;s=r}}return n>t?t:n}getLinesViewportData(e,t){this._checkPendingChanges(),e=e|0,t=t|0;const i=this._lineHeight,n=this.getLineNumberAtOrAfterVerticalOffset(e)|0,s=this.getVerticalOffsetForLineNumber(n)|0;let r=this._lineCount|0,a=this.getFirstWhitespaceIndexAfterLineNumber(n)|0;const l=this.getWhitespacesCount()|0;let c,d;a===-1?(a=l,d=r+1,c=0):(d=this.getAfterLineNumberForWhitespaceIndex(a)|0,c=this.getHeightForWhitespaceIndex(a)|0);let h=s,u=h;const f=5e5;let g=0;s>=f&&(g=Math.floor(s/f)*f,g=Math.floor(g/i)*i,u-=g);const p=[],_=e+(t-e)/2;let b=-1;for(let y=n;y<=r;y++){if(b===-1){const x=h,L=h+i;(x<=_&&__)&&(b=y)}for(h+=i,p[y-n]=u,u+=i;d===y;)u+=c,h+=c,a++,a>=l?d=r+1:(d=this.getAfterLineNumberForWhitespaceIndex(a)|0,c=this.getHeightForWhitespaceIndex(a)|0);if(h>=t){r=y;break}}b===-1&&(b=r);const C=this.getVerticalOffsetForLineNumber(r)|0;let w=n,v=r;return wt&&v--,{bigNumbersDelta:g,startLineNumber:n,endLineNumber:r,relativeVerticalOffset:p,centeredLineNumber:b,completelyVisibleStartLineNumber:w,completelyVisibleEndLineNumber:v,lineHeight:this._lineHeight}}getVerticalOffsetForWhitespaceIndex(e){this._checkPendingChanges(),e=e|0;const t=this.getAfterLineNumberForWhitespaceIndex(e);let i;t>=1?i=this._lineHeight*t:i=0;let n;return e>0?n=this.getWhitespacesAccumulatedHeight(e-1):n=0,i+n+this._paddingTop}getWhitespaceIndexAtOrAfterVerticallOffset(e){this._checkPendingChanges(),e=e|0;let t=0,i=this.getWhitespacesCount()-1;if(i<0)return-1;const n=this.getVerticalOffsetForWhitespaceIndex(i),s=this.getHeightForWhitespaceIndex(i);if(e>=n+s)return-1;for(;t=a+l)t=r+1;else{if(e>=a)return r;i=r}}return t}getWhitespaceAtVerticalOffset(e){this._checkPendingChanges(),e=e|0;const t=this.getWhitespaceIndexAtOrAfterVerticallOffset(e);if(t<0||t>=this.getWhitespacesCount())return null;const i=this.getVerticalOffsetForWhitespaceIndex(t);if(i>e)return null;const n=this.getHeightForWhitespaceIndex(t),s=this.getIdForWhitespaceIndex(t),r=this.getAfterLineNumberForWhitespaceIndex(t);return{id:s,afterLineNumber:r,verticalOffset:i,height:n}}getWhitespaceViewportData(e,t){this._checkPendingChanges(),e=e|0,t=t|0;const i=this.getWhitespaceIndexAtOrAfterVerticallOffset(e),n=this.getWhitespacesCount()-1;if(i<0)return[];const s=[];for(let r=i;r<=n;r++){const a=this.getVerticalOffsetForWhitespaceIndex(r),l=this.getHeightForWhitespaceIndex(r);if(a>=t)break;s.push({id:this.getIdForWhitespaceIndex(r),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(r),verticalOffset:a,height:l})}return s}getWhitespaces(){return this._checkPendingChanges(),this._arr.slice(0)}getWhitespacesCount(){return this._checkPendingChanges(),this._arr.length}getIdForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].id}getAfterLineNumberForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].afterLineNumber}getHeightForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].height}},Cc.INSTANCE_COUNT=0,Cc);const _oe=125;class Fm{constructor(e,t,i,n){e=e|0,t=t|0,i=i|0,n=n|0,e<0&&(e=0),t<0&&(t=0),i<0&&(i=0),n<0&&(n=0),this.width=e,this.contentWidth=t,this.scrollWidth=Math.max(e,t),this.height=i,this.contentHeight=n,this.scrollHeight=Math.max(i,n)}equals(e){return this.width===e.width&&this.contentWidth===e.contentWidth&&this.height===e.height&&this.contentHeight===e.contentHeight}}class boe extends z{constructor(e,t){super(),this._onDidContentSizeChange=this._register(new A),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._dimensions=new Fm(0,0,0,0),this._scrollable=this._register(new Vg({forceIntegerValues:!0,smoothScrollDuration:e,scheduleAtNextAnimationFrame:t})),this.onDidScroll=this._scrollable.onScroll}getScrollable(){return this._scrollable}setSmoothScrollDuration(e){this._scrollable.setSmoothScrollDuration(e)}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}getScrollDimensions(){return this._dimensions}setScrollDimensions(e){if(this._dimensions.equals(e))return;const t=this._dimensions;this._dimensions=e,this._scrollable.setScrollDimensions({width:e.width,scrollWidth:e.scrollWidth,height:e.height,scrollHeight:e.scrollHeight},!0);const i=t.contentWidth!==e.contentWidth,n=t.contentHeight!==e.contentHeight;(i||n)&&this._onDidContentSizeChange.fire(new Z2(t.contentWidth,t.contentHeight,e.contentWidth,e.contentHeight))}getFutureScrollPosition(){return this._scrollable.getFutureScrollPosition()}getCurrentScrollPosition(){return this._scrollable.getCurrentScrollPosition()}setScrollPositionNow(e){this._scrollable.setScrollPositionNow(e)}setScrollPositionSmooth(e){this._scrollable.setScrollPositionSmooth(e)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}}class Coe extends z{constructor(e,t,i){super(),this._configuration=e;const n=this._configuration.options,s=n.get(146),r=n.get(84);this._linesLayout=new poe(t,n.get(67),r.top,r.bottom),this._maxLineWidth=0,this._overlayWidgetsMinWidth=0,this._scrollable=this._register(new boe(0,i)),this._configureSmoothScrollDuration(),this._scrollable.setScrollDimensions(new Fm(s.contentWidth,0,s.height,0)),this.onDidScroll=this._scrollable.onDidScroll,this.onDidContentSizeChange=this._scrollable.onDidContentSizeChange,this._updateHeight()}dispose(){super.dispose()}getScrollable(){return this._scrollable.getScrollable()}onHeightMaybeChanged(){this._updateHeight()}_configureSmoothScrollDuration(){this._scrollable.setSmoothScrollDuration(this._configuration.options.get(115)?_oe:0)}onConfigurationChanged(e){const t=this._configuration.options;if(e.hasChanged(67)&&this._linesLayout.setLineHeight(t.get(67)),e.hasChanged(84)){const i=t.get(84);this._linesLayout.setPadding(i.top,i.bottom)}if(e.hasChanged(146)){const i=t.get(146),n=i.contentWidth,s=i.height,r=this._scrollable.getScrollDimensions(),a=r.contentWidth;this._scrollable.setScrollDimensions(new Fm(n,r.contentWidth,s,this._getContentHeight(n,s,a)))}else this._updateHeight();e.hasChanged(115)&&this._configureSmoothScrollDuration()}onFlushed(e){this._linesLayout.onFlushed(e)}onLinesDeleted(e,t){this._linesLayout.onLinesDeleted(e,t)}onLinesInserted(e,t){this._linesLayout.onLinesInserted(e,t)}_getHorizontalScrollbarHeight(e,t){const n=this._configuration.options.get(104);return n.horizontal===2||e>=t?0:n.horizontalScrollbarSize}_getContentHeight(e,t,i){const n=this._configuration.options;let s=this._linesLayout.getLinesTotalHeight();return n.get(106)?s+=Math.max(0,t-n.get(67)-n.get(84).bottom):n.get(104).ignoreHorizontalScrollbarInContentHeight||(s+=this._getHorizontalScrollbarHeight(e,i)),s}_updateHeight(){const e=this._scrollable.getScrollDimensions(),t=e.width,i=e.height,n=e.contentWidth;this._scrollable.setScrollDimensions(new Fm(t,e.contentWidth,i,this._getContentHeight(t,i,n)))}getCurrentViewport(){const e=this._scrollable.getScrollDimensions(),t=this._scrollable.getCurrentScrollPosition();return new CO(t.scrollTop,t.scrollLeft,e.width,e.height)}getFutureViewport(){const e=this._scrollable.getScrollDimensions(),t=this._scrollable.getFutureScrollPosition();return new CO(t.scrollTop,t.scrollLeft,e.width,e.height)}_computeContentWidth(){const e=this._configuration.options,t=this._maxLineWidth,i=e.get(147),n=e.get(50),s=e.get(146);if(i.isViewportWrapping){const r=e.get(73);return t>s.contentWidth+n.typicalHalfwidthCharacterWidth&&r.enabled&&r.side==="right"?t+s.verticalScrollbarWidth:t}else{const r=e.get(105)*n.typicalHalfwidthCharacterWidth,a=this._linesLayout.getWhitespaceMinWidth();return Math.max(t+r+s.verticalScrollbarWidth,a,this._overlayWidgetsMinWidth)}}setMaxLineWidth(e){this._maxLineWidth=e,this._updateContentWidth()}setOverlayWidgetsMinWidth(e){this._overlayWidgetsMinWidth=e,this._updateContentWidth()}_updateContentWidth(){const e=this._scrollable.getScrollDimensions();this._scrollable.setScrollDimensions(new Fm(e.width,this._computeContentWidth(),e.height,e.contentHeight)),this._updateHeight()}saveState(){const e=this._scrollable.getFutureScrollPosition(),t=e.scrollTop,i=this._linesLayout.getLineNumberAtOrAfterVerticalOffset(t),n=this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(i);return{scrollTop:t,scrollTopWithoutViewZones:t-n,scrollLeft:e.scrollLeft}}changeWhitespace(e){const t=this._linesLayout.changeWhitespace(e);return t&&this.onHeightMaybeChanged(),t}getVerticalOffsetForLineNumber(e,t=!1){return this._linesLayout.getVerticalOffsetForLineNumber(e,t)}getVerticalOffsetAfterLineNumber(e,t=!1){return this._linesLayout.getVerticalOffsetAfterLineNumber(e,t)}isAfterLines(e){return this._linesLayout.isAfterLines(e)}isInTopPadding(e){return this._linesLayout.isInTopPadding(e)}isInBottomPadding(e){return this._linesLayout.isInBottomPadding(e)}getLineNumberAtVerticalOffset(e){return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(e)}getWhitespaceAtVerticalOffset(e){return this._linesLayout.getWhitespaceAtVerticalOffset(e)}getLinesViewportData(){const e=this.getCurrentViewport();return this._linesLayout.getLinesViewportData(e.top,e.top+e.height)}getLinesViewportDataAtScrollTop(e){const t=this._scrollable.getScrollDimensions();return e+t.height>t.scrollHeight&&(e=t.scrollHeight-t.height),e<0&&(e=0),this._linesLayout.getLinesViewportData(e,e+t.height)}getWhitespaceViewportData(){const e=this.getCurrentViewport();return this._linesLayout.getWhitespaceViewportData(e.top,e.top+e.height)}getWhitespaces(){return this._linesLayout.getWhitespaces()}getContentWidth(){return this._scrollable.getScrollDimensions().contentWidth}getScrollWidth(){return this._scrollable.getScrollDimensions().scrollWidth}getContentHeight(){return this._scrollable.getScrollDimensions().contentHeight}getScrollHeight(){return this._scrollable.getScrollDimensions().scrollHeight}getCurrentScrollLeft(){return this._scrollable.getCurrentScrollPosition().scrollLeft}getCurrentScrollTop(){return this._scrollable.getCurrentScrollPosition().scrollTop}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}setScrollPosition(e,t){t===1?this._scrollable.setScrollPositionNow(e):this._scrollable.setScrollPositionSmooth(e)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}deltaScrollNow(e,t){const i=this._scrollable.getCurrentScrollPosition();this._scrollable.setScrollPositionNow({scrollLeft:i.scrollLeft+e,scrollTop:i.scrollTop+t})}}class voe{constructor(e,t,i,n,s){this.editorId=e,this.model=t,this.configuration=i,this._linesCollection=n,this._coordinatesConverter=s,this._decorationsCache=Object.create(null),this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}_clearCachedModelDecorationsResolver(){this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}dispose(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}reset(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onModelDecorationsChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onLineMappingChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}_getOrCreateViewModelDecoration(e){const t=e.id;let i=this._decorationsCache[t];if(!i){const n=e.range,s=e.options;let r;if(s.isWholeLine){const a=this._coordinatesConverter.convertModelPositionToViewPosition(new P(n.startLineNumber,1),0,!1,!0),l=this._coordinatesConverter.convertModelPositionToViewPosition(new P(n.endLineNumber,this.model.getLineMaxColumn(n.endLineNumber)),1);r=new I(a.lineNumber,a.column,l.lineNumber,l.column)}else r=this._coordinatesConverter.convertModelRangeToViewRange(n,1);i=new h8(r,s),this._decorationsCache[t]=i}return i}getMinimapDecorationsInRange(e){return this._getDecorationsInRange(e,!0,!1).decorations}getDecorationsViewportData(e){let t=this._cachedModelDecorationsResolver!==null;return t=t&&e.equalsRange(this._cachedModelDecorationsResolverViewRange),t||(this._cachedModelDecorationsResolver=this._getDecorationsInRange(e,!1,!1),this._cachedModelDecorationsResolverViewRange=e),this._cachedModelDecorationsResolver}getInlineDecorationsOnLine(e,t=!1,i=!1){const n=new I(e,this._linesCollection.getViewLineMinColumn(e),e,this._linesCollection.getViewLineMaxColumn(e));return this._getDecorationsInRange(n,t,i).inlineDecorations[0]}_getDecorationsInRange(e,t,i){const n=this._linesCollection.getDecorationsInRange(e,this.editorId,rC(this.configuration.options),t,i),s=e.startLineNumber,r=e.endLineNumber,a=[];let l=0;const c=[];for(let d=s;d<=r;d++)c[d-s]=[];for(let d=0,h=n.length;dt===1)}function Soe(o,e){return R8(o,e.range,t=>t===2)}function R8(o,e,t){for(let i=e.startLineNumber;i<=e.endLineNumber;i++){const n=o.tokenization.getLineTokens(i),s=i===e.startLineNumber,r=i===e.endLineNumber;let a=s?n.findTokenIndexAtOffset(e.startColumn-1):0;for(;ae.endColumn-1);){if(!t(n.getStandardTokenType(a)))return!1;a++}}return!0}function aL(o,e){return o===null?e?Wv.INSTANCE:Hv.INSTANCE:new Loe(o,e)}class Loe{constructor(e,t){this._projectionData=e,this._isVisible=t}isVisible(){return this._isVisible}setVisible(e){return this._isVisible=e,this}getProjectionData(){return this._projectionData}getViewLineCount(){return this._isVisible?this._projectionData.getOutputLineCount():0}getViewLineContent(e,t,i){this._assertVisible();const n=i>0?this._projectionData.breakOffsets[i-1]:0,s=this._projectionData.breakOffsets[i];let r;if(this._projectionData.injectionOffsets!==null){const a=this._projectionData.injectionOffsets.map((c,d)=>new _r(0,0,c+1,this._projectionData.injectionOptions[d],0));r=_r.applyInjectedText(e.getLineContent(t),a).substring(n,s)}else r=e.getValueInRange({startLineNumber:t,startColumn:n+1,endLineNumber:t,endColumn:s+1});return i>0&&(r=YO(this._projectionData.wrappedTextIndentLength)+r),r}getViewLineLength(e,t,i){return this._assertVisible(),this._projectionData.getLineLength(i)}getViewLineMinColumn(e,t,i){return this._assertVisible(),this._projectionData.getMinOutputOffset(i)+1}getViewLineMaxColumn(e,t,i){return this._assertVisible(),this._projectionData.getMaxOutputOffset(i)+1}getViewLineData(e,t,i){const n=new Array;return this.getViewLinesData(e,t,i,1,0,[!0],n),n[0]}getViewLinesData(e,t,i,n,s,r,a){this._assertVisible();const l=this._projectionData,c=l.injectionOffsets,d=l.injectionOptions;let h=null;if(c){h=[];let f=0,g=0;for(let p=0;p0?l.breakOffsets[p-1]:0,C=l.breakOffsets[p];for(;gC)break;if(b0?l.wrappedTextIndentLength:0,E=L+Math.max(v-b,0),N=L+Math.min(y-b,C-b);E!==N&&_.push(new hie(E,N,x.inlineClassName,x.inlineClassNameAffectsLetterSpacing))}}if(y<=C)f+=w,g++;else break}}}let u;c?u=e.tokenization.getLineTokens(t).withInserted(c.map((f,g)=>({offset:f,text:d[g].content,tokenMetadata:Ni.defaultTokenMetadata}))):u=e.tokenization.getLineTokens(t);for(let f=i;f0?n.wrappedTextIndentLength:0,r=i>0?n.breakOffsets[i-1]:0,a=n.breakOffsets[i],l=e.sliceAndInflate(r,a,s);let c=l.getLineContent();i>0&&(c=YO(n.wrappedTextIndentLength)+c);const d=this._projectionData.getMinOutputOffset(i)+1,h=c.length+1,u=i+1=lL.length)for(let e=1;e<=o;e++)lL[e]=xoe(e);return lL[o]}function xoe(o){return new Array(o+1).join(" ")}class koe{constructor(e,t,i,n,s,r,a,l,c,d){this._editorId=e,this.model=t,this._validModelVersionId=-1,this._domLineBreaksComputerFactory=i,this._monospaceLineBreaksComputerFactory=n,this.fontInfo=s,this.tabSize=r,this.wrappingStrategy=a,this.wrappingColumn=l,this.wrappingIndent=c,this.wordBreak=d,this._constructLines(!0,null)}dispose(){this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[])}createCoordinatesConverter(){return new Ioe(this)}_constructLines(e,t){this.modelLineProjections=[],e&&(this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[]));const i=this.model.getLinesContent(),n=this.model.getInjectedTextDecorations(this._editorId),s=i.length,r=this.createLineBreaksComputer(),a=new Ll(_r.fromDecorations(n));for(let p=0;pb.lineNumber===p+1);r.addRequest(i[p],_,t?t[p]:null)}const l=r.finalize(),c=[],d=this.hiddenAreasDecorationIds.map(p=>this.model.getDecorationRange(p)).sort(I.compareRangesUsingStarts);let h=1,u=0,f=-1,g=f+1=h&&_<=u,C=aL(l[p],!b);c[p]=C.getViewLineCount(),this.modelLineProjections[p]=C}this._validModelVersionId=this.model.getVersionId(),this.projectedModelLineLineCounts=new D$(c)}getHiddenAreas(){return this.hiddenAreasDecorationIds.map(e=>this.model.getDecorationRange(e))}setHiddenAreas(e){const t=e.map(u=>this.model.validateRange(u)),i=Doe(t),n=this.hiddenAreasDecorationIds.map(u=>this.model.getDecorationRange(u)).sort(I.compareRangesUsingStarts);if(i.length===n.length){let u=!1;for(let f=0;f({range:u,options:kt.EMPTY}));this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,s);const r=i;let a=1,l=0,c=-1,d=c+1=a&&f<=l?this.modelLineProjections[u].isVisible()&&(this.modelLineProjections[u]=this.modelLineProjections[u].setVisible(!1),g=!0):(h=!0,this.modelLineProjections[u].isVisible()||(this.modelLineProjections[u]=this.modelLineProjections[u].setVisible(!0),g=!0)),g){const p=this.modelLineProjections[u].getViewLineCount();this.projectedModelLineLineCounts.setValue(u,p)}}return h||this.setHiddenAreas([]),!0}modelPositionIsVisible(e,t){return e<1||e>this.modelLineProjections.length?!1:this.modelLineProjections[e-1].isVisible()}getModelLineViewLineCount(e){return e<1||e>this.modelLineProjections.length?1:this.modelLineProjections[e-1].getViewLineCount()}setTabSize(e){return this.tabSize===e?!1:(this.tabSize=e,this._constructLines(!1,null),!0)}setWrappingSettings(e,t,i,n,s){const r=this.fontInfo.equals(e),a=this.wrappingStrategy===t,l=this.wrappingColumn===i,c=this.wrappingIndent===n,d=this.wordBreak===s;if(r&&a&&l&&c&&d)return!1;const h=r&&a&&!l&&c&&d;this.fontInfo=e,this.wrappingStrategy=t,this.wrappingColumn=i,this.wrappingIndent=n,this.wordBreak=s;let u=null;if(h){u=[];for(let f=0,g=this.modelLineProjections.length;f2&&!this.modelLineProjections[t-2].isVisible(),r=t===1?1:this.projectedModelLineLineCounts.getPrefixSum(t-1)+1;let a=0;const l=[],c=[];for(let d=0,h=n.length;dl?(d=this.projectedModelLineLineCounts.getPrefixSum(t-1)+1,h=d+l-1,g=h+1,p=g+(s-l)-1,c=!0):st?t:e|0}getActiveIndentGuide(e,t,i){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t),i=this._toValidViewLineNumber(i);const n=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),s=this.convertViewPositionToModelPosition(t,this.getViewLineMinColumn(t)),r=this.convertViewPositionToModelPosition(i,this.getViewLineMinColumn(i)),a=this.model.guides.getActiveIndentGuide(n.lineNumber,s.lineNumber,r.lineNumber),l=this.convertModelPositionToViewPosition(a.startLineNumber,1),c=this.convertModelPositionToViewPosition(a.endLineNumber,this.model.getLineMaxColumn(a.endLineNumber));return{startLineNumber:l.lineNumber,endLineNumber:c.lineNumber,indent:a.indent}}getViewLineInfo(e){e=this._toValidViewLineNumber(e);const t=this.projectedModelLineLineCounts.getIndexOf(e-1),i=t.index,n=t.remainder;return new QO(i+1,n)}getMinColumnOfViewLine(e){return this.modelLineProjections[e.modelLineNumber-1].getViewLineMinColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx)}getMaxColumnOfViewLine(e){return this.modelLineProjections[e.modelLineNumber-1].getViewLineMaxColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx)}getModelStartPositionOfViewLine(e){const t=this.modelLineProjections[e.modelLineNumber-1],i=t.getViewLineMinColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx),n=t.getModelColumnOfViewPosition(e.modelLineWrappedLineIdx,i);return new P(e.modelLineNumber,n)}getModelEndPositionOfViewLine(e){const t=this.modelLineProjections[e.modelLineNumber-1],i=t.getViewLineMaxColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx),n=t.getModelColumnOfViewPosition(e.modelLineWrappedLineIdx,i);return new P(e.modelLineNumber,n)}getViewLineInfosGroupedByModelRanges(e,t){const i=this.getViewLineInfo(e),n=this.getViewLineInfo(t),s=new Array;let r=this.getModelStartPositionOfViewLine(i),a=new Array;for(let l=i.modelLineNumber;l<=n.modelLineNumber;l++){const c=this.modelLineProjections[l-1];if(c.isVisible()){const d=l===i.modelLineNumber?i.modelLineWrappedLineIdx:0,h=l===n.modelLineNumber?n.modelLineWrappedLineIdx+1:c.getViewLineCount();for(let u=d;u{if(f.forWrappedLinesAfterColumn!==-1&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,f.forWrappedLinesAfterColumn).lineNumber>=d.modelLineWrappedLineIdx||f.forWrappedLinesBeforeOrAtColumn!==-1&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,f.forWrappedLinesBeforeOrAtColumn).lineNumberd.modelLineWrappedLineIdx)return}const p=this.convertModelPositionToViewPosition(d.modelLineNumber,f.horizontalLine.endColumn),_=this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,f.horizontalLine.endColumn);return _.lineNumber===d.modelLineWrappedLineIdx?new Kd(f.visibleColumn,g,f.className,new tp(f.horizontalLine.top,p.column),-1,-1):_.lineNumber!!f))}}return r}getViewLinesIndentGuides(e,t){e=this._toValidViewLineNumber(e),t=this._toValidViewLineNumber(t);const i=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),n=this.convertViewPositionToModelPosition(t,this.getViewLineMaxColumn(t));let s=[];const r=[],a=[],l=i.lineNumber-1,c=n.lineNumber-1;let d=null;for(let g=l;g<=c;g++){const p=this.modelLineProjections[g];if(p.isVisible()){const _=p.getViewLineNumberOfModelPosition(0,g===l?i.column:1),b=p.getViewLineNumberOfModelPosition(0,this.model.getLineMaxColumn(g+1)),C=b-_+1;let w=0;C>1&&p.getViewLineMinColumn(this.model,g+1,b)===1&&(w=_===0?1:2),r.push(C),a.push(w),d===null&&(d=new P(g+1,0))}else d!==null&&(s=s.concat(this.model.guides.getLinesIndentGuides(d.lineNumber,g)),d=null)}d!==null&&(s=s.concat(this.model.guides.getLinesIndentGuides(d.lineNumber,n.lineNumber)),d=null);const h=t-e+1,u=new Array(h);let f=0;for(let g=0,p=s.length;gt&&(g=!0,f=t-s+1),h.getViewLinesData(this.model,c+1,u,f,s-e,i,l),s+=f,g)break}return l}validateViewPosition(e,t,i){e=this._toValidViewLineNumber(e);const n=this.projectedModelLineLineCounts.getIndexOf(e-1),s=n.index,r=n.remainder,a=this.modelLineProjections[s],l=a.getViewLineMinColumn(this.model,s+1,r),c=a.getViewLineMaxColumn(this.model,s+1,r);tc&&(t=c);const d=a.getModelColumnOfViewPosition(r,t);return this.model.validatePosition(new P(s+1,d)).equals(i)?new P(e,t):this.convertModelPositionToViewPosition(i.lineNumber,i.column)}validateViewRange(e,t){const i=this.validateViewPosition(e.startLineNumber,e.startColumn,t.getStartPosition()),n=this.validateViewPosition(e.endLineNumber,e.endColumn,t.getEndPosition());return new I(i.lineNumber,i.column,n.lineNumber,n.column)}convertViewPositionToModelPosition(e,t){const i=this.getViewLineInfo(e),n=this.modelLineProjections[i.modelLineNumber-1].getModelColumnOfViewPosition(i.modelLineWrappedLineIdx,t);return this.model.validatePosition(new P(i.modelLineNumber,n))}convertViewRangeToModelRange(e){const t=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),i=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);return new I(t.lineNumber,t.column,i.lineNumber,i.column)}convertModelPositionToViewPosition(e,t,i=2,n=!1,s=!1){const r=this.model.validatePosition(new P(e,t)),a=r.lineNumber,l=r.column;let c=a-1,d=!1;if(s)for(;c0&&!this.modelLineProjections[c].isVisible();)c--,d=!0;if(c===0&&!this.modelLineProjections[c].isVisible())return new P(n?0:1,1);const h=1+this.projectedModelLineLineCounts.getPrefixSum(c);let u;return d?s?u=this.modelLineProjections[c].getViewPositionOfModelPosition(h,1,i):u=this.modelLineProjections[c].getViewPositionOfModelPosition(h,this.model.getLineMaxColumn(c+1),i):u=this.modelLineProjections[a-1].getViewPositionOfModelPosition(h,l,i),u}convertModelRangeToViewRange(e,t=0){if(e.isEmpty()){const i=this.convertModelPositionToViewPosition(e.startLineNumber,e.startColumn,t);return I.fromPositions(i)}else{const i=this.convertModelPositionToViewPosition(e.startLineNumber,e.startColumn,1),n=this.convertModelPositionToViewPosition(e.endLineNumber,e.endColumn,0);return new I(i.lineNumber,i.column,n.lineNumber,n.column)}}getViewLineNumberOfModelPosition(e,t){let i=e-1;if(this.modelLineProjections[i].isVisible()){const s=1+this.projectedModelLineLineCounts.getPrefixSum(i);return this.modelLineProjections[i].getViewLineNumberOfModelPosition(s,t)}for(;i>0&&!this.modelLineProjections[i].isVisible();)i--;if(i===0&&!this.modelLineProjections[i].isVisible())return 1;const n=1+this.projectedModelLineLineCounts.getPrefixSum(i);return this.modelLineProjections[i].getViewLineNumberOfModelPosition(n,this.model.getLineMaxColumn(i+1))}getDecorationsInRange(e,t,i,n,s){const r=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),a=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);if(a.lineNumber-r.lineNumber<=e.endLineNumber-e.startLineNumber)return this.model.getDecorationsInRange(new I(r.lineNumber,1,a.lineNumber,a.column),t,i,n,s);let l=[];const c=r.lineNumber-1,d=a.lineNumber-1;let h=null;for(let p=c;p<=d;p++)if(this.modelLineProjections[p].isVisible())h===null&&(h=new P(p+1,p===c?r.column:1));else if(h!==null){const b=this.model.getLineMaxColumn(p);l=l.concat(this.model.getDecorationsInRange(new I(h.lineNumber,h.column,p,b),t,i,n)),h=null}h!==null&&(l=l.concat(this.model.getDecorationsInRange(new I(h.lineNumber,h.column,a.lineNumber,a.column),t,i,n)),h=null),l.sort((p,_)=>{const b=I.compareRangesUsingStarts(p.range,_.range);return b===0?p.id<_.id?-1:p.id>_.id?1:0:b});const u=[];let f=0,g=null;for(const p of l){const _=p.id;g!==_&&(g=_,u[f++]=p)}return u}getInjectedTextAt(e){const t=this.getViewLineInfo(e.lineNumber);return this.modelLineProjections[t.modelLineNumber-1].getInjectedTextAt(t.modelLineWrappedLineIdx,e.column)}normalizePosition(e,t){const i=this.getViewLineInfo(e.lineNumber);return this.modelLineProjections[i.modelLineNumber-1].normalizePosition(i.modelLineWrappedLineIdx,e,t)}getLineIndentColumn(e){const t=this.getViewLineInfo(e);return t.modelLineWrappedLineIdx===0?this.model.getLineIndentColumn(t.modelLineNumber):0}}function Doe(o){if(o.length===0)return[];const e=o.slice();e.sort(I.compareRangesUsingStarts);const t=[];let i=e[0].startLineNumber,n=e[0].endLineNumber;for(let s=1,r=e.length;sn+1?(t.push(new I(i,1,n,1)),i=a.startLineNumber,n=a.endLineNumber):a.endLineNumber>n&&(n=a.endLineNumber)}return t.push(new I(i,1,n,1)),t}class QO{constructor(e,t){this.modelLineNumber=e,this.modelLineWrappedLineIdx=t}}class XO{constructor(e,t){this.modelRange=e,this.viewLines=t}}class Ioe{constructor(e){this._lines=e}convertViewPositionToModelPosition(e){return this._lines.convertViewPositionToModelPosition(e.lineNumber,e.column)}convertViewRangeToModelRange(e){return this._lines.convertViewRangeToModelRange(e)}validateViewPosition(e,t){return this._lines.validateViewPosition(e.lineNumber,e.column,t)}validateViewRange(e,t){return this._lines.validateViewRange(e,t)}convertModelPositionToViewPosition(e,t,i,n){return this._lines.convertModelPositionToViewPosition(e.lineNumber,e.column,t,i,n)}convertModelRangeToViewRange(e,t){return this._lines.convertModelRangeToViewRange(e,t)}modelPositionIsVisible(e){return this._lines.modelPositionIsVisible(e.lineNumber,e.column)}getModelLineViewLineCount(e){return this._lines.getModelLineViewLineCount(e)}getViewLineNumberOfModelPosition(e,t){return this._lines.getViewLineNumberOfModelPosition(e,t)}}class Eoe{constructor(e){this.model=e}dispose(){}createCoordinatesConverter(){return new Noe(this)}getHiddenAreas(){return[]}setHiddenAreas(e){return!1}setTabSize(e){return!1}setWrappingSettings(e,t,i,n){return!1}createLineBreaksComputer(){const e=[];return{addRequest:(t,i,n)=>{e.push(null)},finalize:()=>e}}onModelFlushed(){}onModelLinesDeleted(e,t,i){return new WI(t,i)}onModelLinesInserted(e,t,i,n){return new HI(t,i)}onModelLineChanged(e,t,i){return[!1,new M8(t,1),null,null]}acceptVersionId(e){}getViewLineCount(){return this.model.getLineCount()}getActiveIndentGuide(e,t,i){return{startLineNumber:e,endLineNumber:e,indent:0}}getViewLinesBracketGuides(e,t,i){return new Array(t-e+1).fill([])}getViewLinesIndentGuides(e,t){const i=t-e+1,n=new Array(i);for(let s=0;st)}getModelLineViewLineCount(e){return 1}getViewLineNumberOfModelPosition(e,t){return e}}const ad=Ao.Right;class Toe{constructor(e){this.persist=0,this._requiredLanes=1,this.lanes=new Uint8Array(Math.ceil((e+1)*ad/8))}reset(e){const t=Math.ceil((e+1)*ad/8);this.lanes.length>>3]|=1<>>3]&1<>>3]&1<this._updateConfigurationViewLineCountNow(),0)),this._hasFocus=!1,this._viewportStart=X2.create(this.model),this.glyphLanes=new Toe(0),this.model.isTooLargeForTokenization())this._lines=new Eoe(this.model);else{const h=this._configuration.options,u=h.get(50),f=h.get(140),g=h.get(147),p=h.get(139),_=h.get(130);this._lines=new koe(this._editorId,this.model,n,s,u,this.model.getOptions().tabSize,f,g.wrappingColumn,p,_)}this.coordinatesConverter=this._lines.createCoordinatesConverter(),this._cursor=this._register(new hoe(i,this,this.coordinatesConverter,this.cursorConfig)),this.viewLayout=this._register(new Coe(this._configuration,this.getLineCount(),r)),this._register(this.viewLayout.onDidScroll(h=>{h.scrollTopChanged&&this._handleVisibleLinesChanged(),h.scrollTopChanged&&this._viewportStart.invalidate(),this._eventDispatcher.emitSingleViewEvent(new Zse(h)),this._eventDispatcher.emitOutgoingEvent(new Q2(h.oldScrollWidth,h.oldScrollLeft,h.oldScrollHeight,h.oldScrollTop,h.scrollWidth,h.scrollLeft,h.scrollHeight,h.scrollTop))})),this._register(this.viewLayout.onDidContentSizeChange(h=>{this._eventDispatcher.emitOutgoingEvent(h)})),this._decorations=new voe(this._editorId,this.model,this._configuration,this._lines,this.coordinatesConverter),this._registerModelEvents(),this._register(this._configuration.onDidChangeFast(h=>{try{const u=this._eventDispatcher.beginEmitViewEvents();this._onConfigurationChanged(u,h)}finally{this._eventDispatcher.endEmitViewEvents()}})),this._register(Pv.getInstance().onDidChange(()=>{this._eventDispatcher.emitSingleViewEvent(new Xse)})),this._register(this._themeService.onDidColorThemeChange(h=>{this._invalidateDecorationsColorCache(),this._eventDispatcher.emitSingleViewEvent(new Yse(h))})),this._updateConfigurationViewLineCountNow()}dispose(){super.dispose(),this._decorations.dispose(),this._lines.dispose(),this._viewportStart.dispose(),this._eventDispatcher.dispose()}createLineBreaksComputer(){return this._lines.createLineBreaksComputer()}addViewEventHandler(e){this._eventDispatcher.addViewEventHandler(e)}removeViewEventHandler(e){this._eventDispatcher.removeViewEventHandler(e)}_updateConfigurationViewLineCountNow(){this._configuration.setViewLineCount(this._lines.getViewLineCount())}getModelVisibleRanges(){const e=this.viewLayout.getLinesViewportData(),t=new I(e.startLineNumber,this.getLineMinColumn(e.startLineNumber),e.endLineNumber,this.getLineMaxColumn(e.endLineNumber));return this._toModelVisibleRanges(t)}visibleLinesStabilized(){const e=this.getModelVisibleRanges();this._attachedView.setVisibleLines(e,!0)}_handleVisibleLinesChanged(){const e=this.getModelVisibleRanges();this._attachedView.setVisibleLines(e,!1)}setHasFocus(e){this._hasFocus=e,this._cursor.setHasFocus(e),this._eventDispatcher.emitSingleViewEvent(new qse(e)),this._eventDispatcher.emitOutgoingEvent(new Y2(!e,e))}onCompositionStart(){this._eventDispatcher.emitSingleViewEvent(new Use)}onCompositionEnd(){this._eventDispatcher.emitSingleViewEvent(new $se)}_captureStableViewport(){if(this._viewportStart.isValid&&this.viewLayout.getCurrentScrollTop()>0){const e=new P(this._viewportStart.viewLineNumber,this.getLineMinColumn(this._viewportStart.viewLineNumber)),t=this.coordinatesConverter.convertViewPositionToModelPosition(e);return new e4(t,this._viewportStart.startLineDelta)}return new e4(null,0)}_onConfigurationChanged(e,t){const i=this._captureStableViewport(),n=this._configuration.options,s=n.get(50),r=n.get(140),a=n.get(147),l=n.get(139),c=n.get(130);this._lines.setWrappingSettings(s,r,a.wrappingColumn,l,c)&&(e.emitViewEvent(new s1),e.emitViewEvent(new o1),e.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(e),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this._updateConfigurationViewLineCount.schedule()),t.hasChanged(92)&&(this._decorations.reset(),e.emitViewEvent(new rd(null))),t.hasChanged(99)&&(this._decorations.reset(),e.emitViewEvent(new rd(null))),e.emitViewEvent(new Kse(t)),this.viewLayout.onConfigurationChanged(t),i.recoverViewportStart(this.coordinatesConverter,this.viewLayout),Au.shouldRecreate(t)&&(this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig))}_registerModelEvents(){this._register(this.model.onDidChangeContentOrInjectedText(e=>{try{const i=this._eventDispatcher.beginEmitViewEvents();let n=!1,s=!1;const r=e instanceof th?e.rawContentChangedEvent.changes:e.changes,a=e instanceof th?e.rawContentChangedEvent.versionId:null,l=this._lines.createLineBreaksComputer();for(const h of r)switch(h.changeType){case 4:{for(let u=0;u!p.ownerId||p.ownerId===this._editorId)),l.addRequest(f,g,null)}break}case 2:{let u=null;h.injectedText&&(u=h.injectedText.filter(f=>!f.ownerId||f.ownerId===this._editorId)),l.addRequest(h.detail,u,null);break}}const c=l.finalize(),d=new Ll(c);for(const h of r)switch(h.changeType){case 1:{this._lines.onModelFlushed(),i.emitViewEvent(new s1),this._decorations.reset(),this.viewLayout.onFlushed(this.getLineCount()),n=!0;break}case 3:{const u=this._lines.onModelLinesDeleted(a,h.fromLineNumber,h.toLineNumber);u!==null&&(i.emitViewEvent(u),this.viewLayout.onLinesDeleted(u.fromLineNumber,u.toLineNumber)),n=!0;break}case 4:{const u=d.takeCount(h.detail.length),f=this._lines.onModelLinesInserted(a,h.fromLineNumber,h.toLineNumber,u);f!==null&&(i.emitViewEvent(f),this.viewLayout.onLinesInserted(f.fromLineNumber,f.toLineNumber)),n=!0;break}case 2:{const u=d.dequeue(),[f,g,p,_]=this._lines.onModelLineChanged(a,h.lineNumber,u);s=f,g&&i.emitViewEvent(g),p&&(i.emitViewEvent(p),this.viewLayout.onLinesInserted(p.fromLineNumber,p.toLineNumber)),_&&(i.emitViewEvent(_),this.viewLayout.onLinesDeleted(_.fromLineNumber,_.toLineNumber));break}case 5:break}a!==null&&this._lines.acceptVersionId(a),this.viewLayout.onHeightMaybeChanged(),!n&&s&&(i.emitViewEvent(new o1),i.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(i),this._decorations.onLineMappingChanged())}finally{this._eventDispatcher.endEmitViewEvents()}const t=this._viewportStart.isValid;if(this._viewportStart.invalidate(),this._configuration.setModelLineCount(this.model.getLineCount()),this._updateConfigurationViewLineCountNow(),!this._hasFocus&&this.model.getAttachedEditorCount()>=2&&t){const i=this.model._getTrackedRange(this._viewportStart.modelTrackedRange);if(i){const n=this.coordinatesConverter.convertModelPositionToViewPosition(i.getStartPosition()),s=this.viewLayout.getVerticalOffsetForLineNumber(n.lineNumber);this.viewLayout.setScrollPosition({scrollTop:s+this._viewportStart.startLineDelta},1)}}try{const i=this._eventDispatcher.beginEmitViewEvents();e instanceof th&&i.emitOutgoingEvent(new loe(e.contentChangedEvent)),this._cursor.onModelContentChanged(i,e)}finally{this._eventDispatcher.endEmitViewEvents()}this._handleVisibleLinesChanged()})),this._register(this.model.onDidChangeTokens(e=>{const t=[];for(let i=0,n=e.ranges.length;i{this._eventDispatcher.emitSingleViewEvent(new Gse),this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new aoe(e))})),this._register(this.model.onDidChangeLanguage(e=>{this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new roe(e))})),this._register(this.model.onDidChangeOptions(e=>{if(this._lines.setTabSize(this.model.getOptions().tabSize)){try{const t=this._eventDispatcher.beginEmitViewEvents();t.emitViewEvent(new s1),t.emitViewEvent(new o1),t.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(t),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount())}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule()}this.cursorConfig=new Au(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new coe(e))})),this._register(this.model.onDidChangeDecorations(e=>{this._decorations.onModelDecorationsChanged(),this._eventDispatcher.emitSingleViewEvent(new rd(e)),this._eventDispatcher.emitOutgoingEvent(new ooe(e))}))}setHiddenAreas(e,t){this.hiddenAreasModel.setHiddenAreas(t,e);const i=this.hiddenAreasModel.getMergedRanges();if(i===this.previousHiddenAreas)return;this.previousHiddenAreas=i;const n=this._captureStableViewport();let s=!1;try{const r=this._eventDispatcher.beginEmitViewEvents();s=this._lines.setHiddenAreas(i),s&&(r.emitViewEvent(new s1),r.emitViewEvent(new o1),r.emitViewEvent(new rd(null)),this._cursor.onLineMappingChanged(r),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this.viewLayout.onHeightMaybeChanged());const a=n.viewportStartModelPosition?.lineNumber;a&&i.some(c=>c.startLineNumber<=a&&a<=c.endLineNumber)||n.recoverViewportStart(this.coordinatesConverter,this.viewLayout)}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule(),s&&this._eventDispatcher.emitOutgoingEvent(new noe)}getVisibleRangesPlusViewportAboveBelow(){const e=this._configuration.options.get(146),t=this._configuration.options.get(67),i=Math.max(20,Math.round(e.height/t)),n=this.viewLayout.getLinesViewportData(),s=Math.max(1,n.completelyVisibleStartLineNumber-i),r=Math.min(this.getLineCount(),n.completelyVisibleEndLineNumber+i);return this._toModelVisibleRanges(new I(s,this.getLineMinColumn(s),r,this.getLineMaxColumn(r)))}getVisibleRanges(){const e=this.getCompletelyVisibleViewRange();return this._toModelVisibleRanges(e)}getHiddenAreas(){return this._lines.getHiddenAreas()}_toModelVisibleRanges(e){const t=this.coordinatesConverter.convertViewRangeToModelRange(e),i=this._lines.getHiddenAreas();if(i.length===0)return[t];const n=[];let s=0,r=t.startLineNumber,a=t.startColumn;const l=t.endLineNumber,c=t.endColumn;for(let d=0,h=i.length;dl||(r"u")return this._reduceRestoreStateCompatibility(e);const t=this.model.validatePosition(e.firstPosition),i=this.coordinatesConverter.convertModelPositionToViewPosition(t),n=this.viewLayout.getVerticalOffsetForLineNumber(i.lineNumber)-e.firstPositionDeltaTop;return{scrollLeft:e.scrollLeft,scrollTop:n}}_reduceRestoreStateCompatibility(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTopWithoutViewZones}}getTabSize(){return this.model.getOptions().tabSize}getLineCount(){return this._lines.getViewLineCount()}setViewport(e,t,i){this._viewportStart.update(this,e)}getActiveIndentGuide(e,t,i){return this._lines.getActiveIndentGuide(e,t,i)}getLinesIndentGuides(e,t){return this._lines.getViewLinesIndentGuides(e,t)}getBracketGuidesInRangeByLine(e,t,i,n){return this._lines.getViewLinesBracketGuides(e,t,i,n)}getLineContent(e){return this._lines.getViewLineContent(e)}getLineLength(e){return this._lines.getViewLineLength(e)}getLineMinColumn(e){return this._lines.getViewLineMinColumn(e)}getLineMaxColumn(e){return this._lines.getViewLineMaxColumn(e)}getLineFirstNonWhitespaceColumn(e){const t=zn(this.getLineContent(e));return t===-1?0:t+1}getLineLastNonWhitespaceColumn(e){const t=Jh(this.getLineContent(e));return t===-1?0:t+2}getMinimapDecorationsInRange(e){return this._decorations.getMinimapDecorationsInRange(e)}getDecorationsInViewport(e){return this._decorations.getDecorationsViewportData(e).decorations}getInjectedTextAt(e){return this._lines.getInjectedTextAt(e)}getViewportViewLineRenderingData(e,t){const n=this._decorations.getDecorationsViewportData(e).inlineDecorations[t-e.startLineNumber];return this._getViewLineRenderingData(t,n)}getViewLineRenderingData(e){const t=this._decorations.getInlineDecorationsOnLine(e);return this._getViewLineRenderingData(e,t)}_getViewLineRenderingData(e,t){const i=this.model.mightContainRTL(),n=this.model.mightContainNonBasicASCII(),s=this.getTabSize(),r=this._lines.getViewLineData(e);return r.inlineDecorations&&(t=[...t,...r.inlineDecorations.map(a=>a.toInlineDecoration(e))]),new zs(r.minColumn,r.maxColumn,r.content,r.continuesWithWrappedLine,i,n,r.tokens,t,s,r.startVisibleColumn)}getViewLineData(e){return this._lines.getViewLineData(e)}getMinimapLinesRenderingData(e,t,i){const n=this._lines.getViewLinesData(e,t,i);return new die(this.getTabSize(),n)}getAllOverviewRulerDecorations(e){const t=this.model.getOverviewRulerDecorations(this._editorId,rC(this._configuration.options)),i=new Roe;for(const n of t){const s=n.options,r=s.overviewRuler;if(!r)continue;const a=r.position;if(a===0)continue;const l=r.getColor(e.value),c=this.coordinatesConverter.getViewLineNumberOfModelPosition(n.range.startLineNumber,n.range.startColumn),d=this.coordinatesConverter.getViewLineNumberOfModelPosition(n.range.endLineNumber,n.range.endColumn);i.accept(l,s.zIndex,c,d,a)}return i.asArray}_invalidateDecorationsColorCache(){const e=this.model.getOverviewRulerDecorations();for(const t of e)t.options.overviewRuler?.invalidateCachedColor(),t.options.minimap?.invalidateCachedColor()}getValueInRange(e,t){const i=this.coordinatesConverter.convertViewRangeToModelRange(e);return this.model.getValueInRange(i,t)}getValueLengthInRange(e,t){const i=this.coordinatesConverter.convertViewRangeToModelRange(e);return this.model.getValueLengthInRange(i,t)}modifyPosition(e,t){const i=this.coordinatesConverter.convertViewPositionToModelPosition(e),n=this.model.modifyPosition(i,t);return this.coordinatesConverter.convertModelPositionToViewPosition(n)}deduceModelPositionRelativeToViewPosition(e,t,i){const n=this.coordinatesConverter.convertViewPositionToModelPosition(e);this.model.getEOL().length===2&&(t<0?t-=i:t+=i);const r=this.model.getOffsetAt(n)+t;return this.model.getPositionAt(r)}getPlainTextToCopy(e,t,i){const n=i?`\r -`:this.model.getEOL();e=e.slice(0),e.sort(I.compareRangesUsingStarts);let s=!1,r=!1;for(const l of e)l.isEmpty()?s=!0:r=!0;if(!r){if(!t)return"";const l=e.map(d=>d.startLineNumber);let c="";for(let d=0;d0&&l[d-1]===l[d]||(c+=this.model.getLineContent(l[d])+n);return c}if(s&&t){const l=[];let c=0;for(const d of e){const h=d.startLineNumber;d.isEmpty()?h!==c&&l.push(this.model.getLineContent(h)):l.push(this.model.getValueInRange(d,i?2:0)),c=h}return l.length===1?l[0]:l}const a=[];for(const l of e)l.isEmpty()||a.push(this.model.getValueInRange(l,i?2:0));return a.length===1?a[0]:a}getRichTextToCopy(e,t){const i=this.model.getLanguageId();if(i===Bs||e.length!==1)return null;let n=e[0];if(n.isEmpty()){if(!t)return null;const d=n.startLineNumber;n=new I(d,this.model.getLineMinColumn(d),d,this.model.getLineMaxColumn(d))}const s=this._configuration.options.get(50),r=this._getColorMap(),l=/[:;\\\/<>]/.test(s.fontFamily)||s.fontFamily===ls.fontFamily;let c;return l?c=ls.fontFamily:(c=s.fontFamily,c=c.replace(/"/g,"'"),/[,']/.test(c)||/[+ ]/.test(c)&&(c=`'${c}'`),c=`${c}, ${ls.fontFamily}`),{mode:i,html:`
    `+this._getHTMLToCopy(n,r)+"
    "}}_getHTMLToCopy(e,t){const i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn,a=this.getTabSize();let l="";for(let c=i;c<=s;c++){const d=this.model.tokenization.getLineTokens(c),h=d.getLineContent(),u=c===i?n-1:0,f=c===s?r-1:h.length;h===""?l+="
    ":l+=NG(h,d.inflate(),t,u,f,a,kn)}return l}_getColorMap(){const e=si.getColorMap(),t=["#000000"];if(e)for(let i=1,n=e.length;ithis._cursor.setStates(n,e,t,i))}getCursorColumnSelectData(){return this._cursor.getCursorColumnSelectData()}getCursorAutoClosedCharacters(){return this._cursor.getAutoClosedCharacters()}setCursorColumnSelectData(e){this._cursor.setCursorColumnSelectData(e)}getPrevEditOperationType(){return this._cursor.getPrevEditOperationType()}setPrevEditOperationType(e){this._cursor.setPrevEditOperationType(e)}getSelection(){return this._cursor.getSelection()}getSelections(){return this._cursor.getSelections()}getPosition(){return this._cursor.getPrimaryCursorState().modelState.position}setSelections(e,t,i=0){this._withViewEventsCollector(n=>this._cursor.setSelections(n,e,t,i))}saveCursorState(){return this._cursor.saveState()}restoreCursorState(e){this._withViewEventsCollector(t=>this._cursor.restoreState(t,e))}_executeCursorEdit(e){if(this._cursor.context.cursorConfig.readOnly){this._eventDispatcher.emitOutgoingEvent(new soe);return}this._withViewEventsCollector(e)}executeEdits(e,t,i){this._executeCursorEdit(n=>this._cursor.executeEdits(n,e,t,i))}startComposition(){this._executeCursorEdit(e=>this._cursor.startComposition(e))}endComposition(e){this._executeCursorEdit(t=>this._cursor.endComposition(t,e))}type(e,t){this._executeCursorEdit(i=>this._cursor.type(i,e,t))}compositionType(e,t,i,n,s){this._executeCursorEdit(r=>this._cursor.compositionType(r,e,t,i,n,s))}paste(e,t,i,n){this._executeCursorEdit(s=>this._cursor.paste(s,e,t,i,n))}cut(e){this._executeCursorEdit(t=>this._cursor.cut(t,e))}executeCommand(e,t){this._executeCursorEdit(i=>this._cursor.executeCommand(i,e,t))}executeCommands(e,t){this._executeCursorEdit(i=>this._cursor.executeCommands(i,e,t))}revealAllCursors(e,t,i=!1){this._withViewEventsCollector(n=>this._cursor.revealAll(n,e,i,0,t,0))}revealPrimaryCursor(e,t,i=!1){this._withViewEventsCollector(n=>this._cursor.revealPrimary(n,e,i,0,t,0))}revealTopMostCursor(e){const t=this._cursor.getTopMostViewPosition(),i=new I(t.lineNumber,t.column,t.lineNumber,t.column);this._withViewEventsCollector(n=>n.emitViewEvent(new bp(e,!1,i,null,0,!0,0)))}revealBottomMostCursor(e){const t=this._cursor.getBottomMostViewPosition(),i=new I(t.lineNumber,t.column,t.lineNumber,t.column);this._withViewEventsCollector(n=>n.emitViewEvent(new bp(e,!1,i,null,0,!0,0)))}revealRange(e,t,i,n,s){this._withViewEventsCollector(r=>r.emitViewEvent(new bp(e,!1,i,null,n,t,s)))}changeWhitespace(e){this.viewLayout.changeWhitespace(e)&&(this._eventDispatcher.emitSingleViewEvent(new Jse),this._eventDispatcher.emitOutgoingEvent(new ioe))}_withViewEventsCollector(e){return this._transactionalTarget.batchChanges(()=>{try{const t=this._eventDispatcher.beginEmitViewEvents();return e(t)}finally{this._eventDispatcher.endEmitViewEvents()}})}batchEvents(e){this._withViewEventsCollector(()=>{e()})}normalizePosition(e,t){return this._lines.normalizePosition(e,t)}getLineIndentColumn(e){return this._lines.getLineIndentColumn(e)}};class X2{static create(e){const t=e._setTrackedRange(null,new I(1,1,1,1),1);return new X2(e,1,!1,t,0)}get viewLineNumber(){return this._viewLineNumber}get isValid(){return this._isValid}get modelTrackedRange(){return this._modelTrackedRange}get startLineDelta(){return this._startLineDelta}constructor(e,t,i,n,s){this._model=e,this._viewLineNumber=t,this._isValid=i,this._modelTrackedRange=n,this._startLineDelta=s}dispose(){this._model._setTrackedRange(this._modelTrackedRange,null,1)}update(e,t){const i=e.coordinatesConverter.convertViewPositionToModelPosition(new P(t,e.getLineMinColumn(t))),n=e.model._setTrackedRange(this._modelTrackedRange,new I(i.lineNumber,i.column,i.lineNumber,i.column),1),s=e.viewLayout.getVerticalOffsetForLineNumber(t),r=e.viewLayout.getCurrentScrollTop();this._viewLineNumber=t,this._isValid=!0,this._modelTrackedRange=n,this._startLineDelta=r-s}invalidate(){this._isValid=!1}}class Roe{constructor(){this._asMap=Object.create(null),this.asArray=[]}accept(e,t,i,n,s){const r=this._asMap[e];if(r){const a=r.data,l=a[a.length-3],c=a[a.length-1];if(l===s&&c+1>=i){n>c&&(a[a.length-1]=n);return}a.push(s,i,n)}else{const a=new w_(e,t,[s,i,n]);this._asMap[e]=a,this.asArray.push(a)}}}class Aoe{constructor(){this.hiddenAreas=new Map,this.shouldRecompute=!1,this.ranges=[]}setHiddenAreas(e,t){const i=this.hiddenAreas.get(e);i&&JO(i,t)||(this.hiddenAreas.set(e,t),this.shouldRecompute=!0)}getMergedRanges(){if(!this.shouldRecompute)return this.ranges;this.shouldRecompute=!1;const e=Array.from(this.hiddenAreas.values()).reduce((t,i)=>Poe(t,i),[]);return JO(this.ranges,e)?this.ranges:(this.ranges=e,this.ranges)}}function Poe(o,e){const t=[];let i=0,n=0;for(;i=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Aa=function(o,e){return function(t,i){e(t,i,o)}},md,dh;let I_=(dh=class extends z{get isSimpleWidget(){return this._configuration.isSimpleWidget}get contextMenuId(){return this._configuration.contextMenuId}constructor(e,t,i,n,s,r,a,l,c,d,h,u){super(),this.languageConfigurationService=h,this._deliveryQueue=kW(),this._contributions=this._register(new Wse),this._onDidDispose=this._register(new A),this.onDidDispose=this._onDidDispose.event,this._onDidChangeModelContent=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelContent=this._onDidChangeModelContent.event,this._onDidChangeModelLanguage=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguage=this._onDidChangeModelLanguage.event,this._onDidChangeModelLanguageConfiguration=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguageConfiguration=this._onDidChangeModelLanguageConfiguration.event,this._onDidChangeModelOptions=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelOptions=this._onDidChangeModelOptions.event,this._onDidChangeModelDecorations=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelDecorations=this._onDidChangeModelDecorations.event,this._onDidChangeModelTokens=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelTokens=this._onDidChangeModelTokens.event,this._onDidChangeConfiguration=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._onWillChangeModel=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onWillChangeModel=this._onWillChangeModel.event,this._onDidChangeModel=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeModel=this._onDidChangeModel.event,this._onDidChangeCursorPosition=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorPosition=this._onDidChangeCursorPosition.event,this._onDidChangeCursorSelection=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorSelection=this._onDidChangeCursorSelection.event,this._onDidAttemptReadOnlyEdit=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidAttemptReadOnlyEdit=this._onDidAttemptReadOnlyEdit.event,this._onDidLayoutChange=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidLayoutChange=this._onDidLayoutChange.event,this._editorTextFocus=this._register(new t4({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorText=this._editorTextFocus.onDidChangeToTrue,this.onDidBlurEditorText=this._editorTextFocus.onDidChangeToFalse,this._editorWidgetFocus=this._register(new t4({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorWidget=this._editorWidgetFocus.onDidChangeToTrue,this.onDidBlurEditorWidget=this._editorWidgetFocus.onDidChangeToFalse,this._onWillType=this._register(new sn(this._contributions,this._deliveryQueue)),this.onWillType=this._onWillType.event,this._onDidType=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidType=this._onDidType.event,this._onDidCompositionStart=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidCompositionStart=this._onDidCompositionStart.event,this._onDidCompositionEnd=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidCompositionEnd=this._onDidCompositionEnd.event,this._onDidPaste=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDidPaste=this._onDidPaste.event,this._onMouseUp=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseUp=this._onMouseUp.event,this._onMouseDown=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDown=this._onMouseDown.event,this._onMouseDrag=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDrag=this._onMouseDrag.event,this._onMouseDrop=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDrop=this._onMouseDrop.event,this._onMouseDropCanceled=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseDropCanceled=this._onMouseDropCanceled.event,this._onDropIntoEditor=this._register(new sn(this._contributions,this._deliveryQueue)),this.onDropIntoEditor=this._onDropIntoEditor.event,this._onContextMenu=this._register(new sn(this._contributions,this._deliveryQueue)),this.onContextMenu=this._onContextMenu.event,this._onMouseMove=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseMove=this._onMouseMove.event,this._onMouseLeave=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseLeave=this._onMouseLeave.event,this._onMouseWheel=this._register(new sn(this._contributions,this._deliveryQueue)),this.onMouseWheel=this._onMouseWheel.event,this._onKeyUp=this._register(new sn(this._contributions,this._deliveryQueue)),this.onKeyUp=this._onKeyUp.event,this._onKeyDown=this._register(new sn(this._contributions,this._deliveryQueue)),this.onKeyDown=this._onKeyDown.event,this._onDidContentSizeChange=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._onDidScrollChange=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidScrollChange=this._onDidScrollChange.event,this._onDidChangeViewZones=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeViewZones=this._onDidChangeViewZones.event,this._onDidChangeHiddenAreas=this._register(new A({deliveryQueue:this._deliveryQueue})),this.onDidChangeHiddenAreas=this._onDidChangeHiddenAreas.event,this._updateCounter=0,this._onBeginUpdate=this._register(new A),this.onBeginUpdate=this._onBeginUpdate.event,this._onEndUpdate=this._register(new A),this.onEndUpdate=this._onEndUpdate.event,this._actions=new Map,this._bannerDomNode=null,this._dropIntoEditorDecorations=this.createDecorationsCollection(),s.willCreateCodeEditor();const f={...t};this._domElement=e,this._overflowWidgetsDomNode=f.overflowWidgetsDomNode,delete f.overflowWidgetsDomNode,this._id=++Foe,this._decorationTypeKeysToIds={},this._decorationTypeSubtypes={},this._telemetryData=i.telemetryData,this._configuration=this._register(this._createConfiguration(i.isSimpleWidget||!1,i.contextMenuId??(i.isSimpleWidget?$e.SimpleEditorContext:$e.EditorContext),f,d)),this._register(this._configuration.onDidChange(_=>{this._onDidChangeConfiguration.fire(_);const b=this._configuration.options;if(_.hasChanged(146)){const C=b.get(146);this._onDidLayoutChange.fire(C)}})),this._contextKeyService=this._register(a.createScoped(this._domElement)),this._notificationService=c,this._codeEditorService=s,this._commandService=r,this._themeService=l,this._register(new Woe(this,this._contextKeyService)),this._register(new Hoe(this,this._contextKeyService,u)),this._instantiationService=this._register(n.createChild(new jg([De,this._contextKeyService]))),this._modelData=null,this._focusTracker=new Voe(e,this._overflowWidgetsDomNode),this._register(this._focusTracker.onChange(()=>{this._editorWidgetFocus.setValue(this._focusTracker.hasFocus())})),this._contentWidgets={},this._overlayWidgets={},this._glyphMarginWidgets={};let g;Array.isArray(i.contributions)?g=i.contributions:g=Af.getEditorContributions(),this._contributions.initialize(this,g,this._instantiationService);for(const _ of Af.getEditorActions()){if(this._actions.has(_.id)){Ze(new Error(`Cannot have two actions with the same id ${_.id}`));continue}const b=new N8(_.id,_.label,_.alias,_.metadata,_.precondition??void 0,C=>this._instantiationService.invokeFunction(w=>Promise.resolve(_.runEditorCommand(w,this,C))),this._contextKeyService);this._actions.set(b.id,b)}const p=()=>!this._configuration.options.get(92)&&this._configuration.options.get(36).enabled;this._register(new OV(this._domElement,{onDragOver:_=>{if(!p())return;const b=this.getTargetAtClientPoint(_.clientX,_.clientY);b?.position&&this.showDropIndicatorAt(b.position)},onDrop:async _=>{if(!p()||(this.removeDropIndicator(),!_.dataTransfer))return;const b=this.getTargetAtClientPoint(_.clientX,_.clientY);b?.position&&this._onDropIntoEditor.fire({position:b.position,event:_})},onDragLeave:()=>{this.removeDropIndicator()},onDragEnd:()=>{this.removeDropIndicator()}})),this._codeEditorService.addCodeEditor(this)}writeScreenReaderContent(e){this._modelData?.view.writeScreenReaderContent(e)}_createConfiguration(e,t,i,n){return new wI(e,t,i,this._domElement,n)}getId(){return this.getEditorType()+":"+this._id}getEditorType(){return yy.ICodeEditor}dispose(){this._codeEditorService.removeCodeEditor(this),this._focusTracker.dispose(),this._actions.clear(),this._contentWidgets={},this._overlayWidgets={},this._removeDecorationTypes(),this._postDetachModelCleanup(this._detachModel()),this._onDidDispose.fire(),super.dispose()}invokeWithinContext(e){return this._instantiationService.invokeFunction(e)}updateOptions(e){this._configuration.updateOptions(e||{})}getOptions(){return this._configuration.options}getOption(e){return this._configuration.options.get(e)}getRawOptions(){return this._configuration.getRawOptions()}getOverflowWidgetsDomNode(){return this._overflowWidgetsDomNode}getConfiguredWordAtPosition(e){return this._modelData?ii.getWordAtPosition(this._modelData.model,this._configuration.options.get(132),this._configuration.options.get(131),e):null}getValue(e=null){if(!this._modelData)return"";const t=!!(e&&e.preserveBOM);let i=0;return e&&e.lineEnding&&e.lineEnding===` -`?i=1:e&&e.lineEnding&&e.lineEnding===`\r -`&&(i=2),this._modelData.model.getValue(i,t)}setValue(e){try{if(this._beginUpdate(),!this._modelData)return;this._modelData.model.setValue(e)}finally{this._endUpdate()}}getModel(){return this._modelData?this._modelData.model:null}setModel(e=null){try{this._beginUpdate();const t=e;if(this._modelData===null&&t===null||this._modelData&&this._modelData.model===t)return;const i={oldModelUrl:this._modelData?.model.uri||null,newModelUrl:t?.uri||null};this._onWillChangeModel.fire(i);const n=this.hasTextFocus(),s=this._detachModel();this._attachModel(t),n&&this.hasModel()&&this.focus(),this._removeDecorationTypes(),this._onDidChangeModel.fire(i),this._postDetachModelCleanup(s),this._contributionsDisposable=this._contributions.onAfterModelAttached()}finally{this._endUpdate()}}_removeDecorationTypes(){if(this._decorationTypeKeysToIds={},this._decorationTypeSubtypes){for(const e in this._decorationTypeSubtypes){const t=this._decorationTypeSubtypes[e];for(const i in t)this._removeDecorationType(e+"-"+i)}this._decorationTypeSubtypes={}}}getVisibleRanges(){return this._modelData?this._modelData.viewModel.getVisibleRanges():[]}getVisibleRangesPlusViewportAboveBelow(){return this._modelData?this._modelData.viewModel.getVisibleRangesPlusViewportAboveBelow():[]}getWhitespaces(){return this._modelData?this._modelData.viewModel.viewLayout.getWhitespaces():[]}static _getVerticalOffsetAfterPosition(e,t,i,n){const s=e.model.validatePosition({lineNumber:t,column:i}),r=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(s);return e.viewModel.viewLayout.getVerticalOffsetAfterLineNumber(r.lineNumber,n)}getTopForLineNumber(e,t=!1){return this._modelData?md._getVerticalOffsetForPosition(this._modelData,e,1,t):-1}getTopForPosition(e,t){return this._modelData?md._getVerticalOffsetForPosition(this._modelData,e,t,!1):-1}static _getVerticalOffsetForPosition(e,t,i,n=!1){const s=e.model.validatePosition({lineNumber:t,column:i}),r=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(s);return e.viewModel.viewLayout.getVerticalOffsetForLineNumber(r.lineNumber,n)}getBottomForLineNumber(e,t=!1){if(!this._modelData)return-1;const i=this._modelData.model.getLineMaxColumn(e);return md._getVerticalOffsetAfterPosition(this._modelData,e,i,t)}setHiddenAreas(e,t){this._modelData?.viewModel.setHiddenAreas(e.map(i=>I.lift(i)),t)}getVisibleColumnFromPosition(e){if(!this._modelData)return e.column;const t=this._modelData.model.validatePosition(e),i=this._modelData.model.getOptions().tabSize;return _i.visibleColumnFromColumn(this._modelData.model.getLineContent(t.lineNumber),t.column,i)+1}getPosition(){return this._modelData?this._modelData.viewModel.getPosition():null}setPosition(e,t="api"){if(this._modelData){if(!P.isIPosition(e))throw new Error("Invalid arguments");this._modelData.viewModel.setSelections(t,[{selectionStartLineNumber:e.lineNumber,selectionStartColumn:e.column,positionLineNumber:e.lineNumber,positionColumn:e.column}])}}_sendRevealRange(e,t,i,n){if(!this._modelData)return;if(!I.isIRange(e))throw new Error("Invalid arguments");const s=this._modelData.model.validateRange(e),r=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(s);this._modelData.viewModel.revealRange("api",i,r,t,n)}revealLine(e,t=0){this._revealLine(e,0,t)}revealLineInCenter(e,t=0){this._revealLine(e,1,t)}revealLineInCenterIfOutsideViewport(e,t=0){this._revealLine(e,2,t)}revealLineNearTop(e,t=0){this._revealLine(e,5,t)}_revealLine(e,t,i){if(typeof e!="number")throw new Error("Invalid arguments");this._sendRevealRange(new I(e,1,e,1),t,!1,i)}revealPosition(e,t=0){this._revealPosition(e,0,!0,t)}revealPositionInCenter(e,t=0){this._revealPosition(e,1,!0,t)}revealPositionInCenterIfOutsideViewport(e,t=0){this._revealPosition(e,2,!0,t)}revealPositionNearTop(e,t=0){this._revealPosition(e,5,!0,t)}_revealPosition(e,t,i,n){if(!P.isIPosition(e))throw new Error("Invalid arguments");this._sendRevealRange(new I(e.lineNumber,e.column,e.lineNumber,e.column),t,i,n)}getSelection(){return this._modelData?this._modelData.viewModel.getSelection():null}getSelections(){return this._modelData?this._modelData.viewModel.getSelections():null}setSelection(e,t="api"){const i=Fe.isISelection(e),n=I.isIRange(e);if(!i&&!n)throw new Error("Invalid arguments");if(i)this._setSelectionImpl(e,t);else if(n){const s={selectionStartLineNumber:e.startLineNumber,selectionStartColumn:e.startColumn,positionLineNumber:e.endLineNumber,positionColumn:e.endColumn};this._setSelectionImpl(s,t)}}_setSelectionImpl(e,t){if(!this._modelData)return;const i=new Fe(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn);this._modelData.viewModel.setSelections(t,[i])}revealLines(e,t,i=0){this._revealLines(e,t,0,i)}revealLinesInCenter(e,t,i=0){this._revealLines(e,t,1,i)}revealLinesInCenterIfOutsideViewport(e,t,i=0){this._revealLines(e,t,2,i)}revealLinesNearTop(e,t,i=0){this._revealLines(e,t,5,i)}_revealLines(e,t,i,n){if(typeof e!="number"||typeof t!="number")throw new Error("Invalid arguments");this._sendRevealRange(new I(e,1,t,1),i,!1,n)}revealRange(e,t=0,i=!1,n=!0){this._revealRange(e,i?1:0,n,t)}revealRangeInCenter(e,t=0){this._revealRange(e,1,!0,t)}revealRangeInCenterIfOutsideViewport(e,t=0){this._revealRange(e,2,!0,t)}revealRangeNearTop(e,t=0){this._revealRange(e,5,!0,t)}revealRangeNearTopIfOutsideViewport(e,t=0){this._revealRange(e,6,!0,t)}revealRangeAtTop(e,t=0){this._revealRange(e,3,!0,t)}_revealRange(e,t,i,n){if(!I.isIRange(e))throw new Error("Invalid arguments");this._sendRevealRange(I.lift(e),t,i,n)}setSelections(e,t="api",i=0){if(this._modelData){if(!e||e.length===0)throw new Error("Invalid arguments");for(let n=0,s=e.length;n0&&this._modelData.viewModel.restoreCursorState(i):this._modelData.viewModel.restoreCursorState([i]),this._contributions.restoreViewState(t.contributionsState||{});const n=this._modelData.viewModel.reduceRestoreState(t.viewState);this._modelData.view.restoreState(n)}}handleInitialized(){this._getViewModel()?.visibleLinesStabilized()}getContribution(e){return this._contributions.get(e)}getActions(){return Array.from(this._actions.values())}getSupportedActions(){let e=this.getActions();return e=e.filter(t=>t.isSupported()),e}getAction(e){return this._actions.get(e)||null}trigger(e,t,i){i=i||{};try{switch(this._beginUpdate(),t){case"compositionStart":this._startComposition();return;case"compositionEnd":this._endComposition(e);return;case"type":{const s=i;this._type(e,s.text||"");return}case"replacePreviousChar":{const s=i;this._compositionType(e,s.text||"",s.replaceCharCnt||0,0,0);return}case"compositionType":{const s=i;this._compositionType(e,s.text||"",s.replacePrevCharCnt||0,s.replaceNextCharCnt||0,s.positionDelta||0);return}case"paste":{const s=i;this._paste(e,s.text||"",s.pasteOnNewLine||!1,s.multicursorText||null,s.mode||null,s.clipboardEvent);return}case"cut":this._cut(e);return}const n=this.getAction(t);if(n){Promise.resolve(n.run(i)).then(void 0,Ze);return}if(!this._modelData||this._triggerEditorCommand(e,t,i))return;this._triggerCommand(t,i)}finally{this._endUpdate()}}_triggerCommand(e,t){this._commandService.executeCommand(e,t)}_startComposition(){this._modelData&&(this._modelData.viewModel.startComposition(),this._onDidCompositionStart.fire())}_endComposition(e){this._modelData&&(this._modelData.viewModel.endComposition(e),this._onDidCompositionEnd.fire())}_type(e,t){!this._modelData||t.length===0||(e==="keyboard"&&this._onWillType.fire(t),this._modelData.viewModel.type(t,e),e==="keyboard"&&this._onDidType.fire(t))}_compositionType(e,t,i,n,s){this._modelData&&this._modelData.viewModel.compositionType(t,i,n,s,e)}_paste(e,t,i,n,s,r){if(!this._modelData)return;const a=this._modelData.viewModel,l=a.getSelection().getStartPosition();a.paste(t,i,n,e);const c=a.getSelection().getStartPosition();e==="keyboard"&&this._onDidPaste.fire({clipboardEvent:r,range:new I(l.lineNumber,l.column,c.lineNumber,c.column),languageId:s})}_cut(e){this._modelData&&this._modelData.viewModel.cut(e)}_triggerEditorCommand(e,t,i){const n=Af.getEditorCommand(t);return n?(i=i||{},i.source=e,this._instantiationService.invokeFunction(s=>{Promise.resolve(n.runEditorCommand(s,this,i)).then(void 0,Ze)}),!0):!1}_getViewModel(){return this._modelData?this._modelData.viewModel:null}pushUndoStop(){return!this._modelData||this._configuration.options.get(92)?!1:(this._modelData.model.pushStackElement(),!0)}popUndoStop(){return!this._modelData||this._configuration.options.get(92)?!1:(this._modelData.model.popStackElement(),!0)}executeEdits(e,t,i){if(!this._modelData||this._configuration.options.get(92))return!1;let n;return i?Array.isArray(i)?n=()=>i:n=i:n=()=>null,this._modelData.viewModel.executeEdits(e,t,n),!0}executeCommand(e,t){this._modelData&&this._modelData.viewModel.executeCommand(t,e)}executeCommands(e,t){this._modelData&&this._modelData.viewModel.executeCommands(t,e)}createDecorationsCollection(e){return new zoe(this,e)}changeDecorations(e){return this._modelData?this._modelData.model.changeDecorations(e,this._id):null}getLineDecorations(e){return this._modelData?this._modelData.model.getLineDecorations(e,this._id,rC(this._configuration.options)):null}getDecorationsInRange(e){return this._modelData?this._modelData.model.getDecorationsInRange(e,this._id,rC(this._configuration.options)):null}deltaDecorations(e,t){return this._modelData?e.length===0&&t.length===0?e:this._modelData.model.deltaDecorations(e,t,this._id):[]}removeDecorations(e){!this._modelData||e.length===0||this._modelData.model.changeDecorations(t=>{t.deltaDecorations(e,[])})}removeDecorationsByType(e){const t=this._decorationTypeKeysToIds[e];t&&this.changeDecorations(i=>i.deltaDecorations(t,[])),this._decorationTypeKeysToIds.hasOwnProperty(e)&&delete this._decorationTypeKeysToIds[e],this._decorationTypeSubtypes.hasOwnProperty(e)&&delete this._decorationTypeSubtypes[e]}getLayoutInfo(){return this._configuration.options.get(146)}createOverviewRuler(e){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.createOverviewRuler(e)}getContainerDomNode(){return this._domElement}getDomNode(){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.domNode.domNode}delegateVerticalScrollbarPointerDown(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.delegateScrollFromMouseWheelEvent(e)}layout(e,t=!1){this._configuration.observeContainer(e),t||this.render()}focus(){!this._modelData||!this._modelData.hasRealView||this._modelData.view.focus()}hasTextFocus(){return!this._modelData||!this._modelData.hasRealView?!1:this._modelData.view.isFocused()}hasWidgetFocus(){return this._focusTracker&&this._focusTracker.hasFocus()}addContentWidget(e){const t={widget:e,position:e.getPosition()};this._contentWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a content widget with the same id:"+e.getId()),this._contentWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(t)}layoutContentWidget(e){const t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){const i=this._contentWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(i)}}removeContentWidget(e){const t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){const i=this._contentWidgets[t];delete this._contentWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(i)}}addOverlayWidget(e){const t={widget:e,position:e.getPosition()};this._overlayWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(t)}layoutOverlayWidget(e){const t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){const i=this._overlayWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(i)}}removeOverlayWidget(e){const t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){const i=this._overlayWidgets[t];delete this._overlayWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(i)}}addGlyphMarginWidget(e){const t={widget:e,position:e.getPosition()};this._glyphMarginWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a glyph margin widget with the same id."),this._glyphMarginWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addGlyphMarginWidget(t)}layoutGlyphMarginWidget(e){const t=e.getId();if(this._glyphMarginWidgets.hasOwnProperty(t)){const i=this._glyphMarginWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutGlyphMarginWidget(i)}}removeGlyphMarginWidget(e){const t=e.getId();if(this._glyphMarginWidgets.hasOwnProperty(t)){const i=this._glyphMarginWidgets[t];delete this._glyphMarginWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeGlyphMarginWidget(i)}}changeViewZones(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.change(e)}getTargetAtClientPoint(e,t){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.getTargetAtClientPoint(e,t)}getScrolledVisiblePosition(e){if(!this._modelData||!this._modelData.hasRealView)return null;const t=this._modelData.model.validatePosition(e),i=this._configuration.options,n=i.get(146),s=md._getVerticalOffsetForPosition(this._modelData,t.lineNumber,t.column)-this.getScrollTop(),r=this._modelData.view.getOffsetForColumn(t.lineNumber,t.column)+n.glyphMarginWidth+n.lineNumbersWidth+n.decorationsWidth-this.getScrollLeft();return{top:s,left:r,height:i.get(67)}}getOffsetForColumn(e,t){return!this._modelData||!this._modelData.hasRealView?-1:this._modelData.view.getOffsetForColumn(e,t)}render(e=!1){!this._modelData||!this._modelData.hasRealView||this._modelData.viewModel.batchEvents(()=>{this._modelData.view.render(!0,e)})}setAriaOptions(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.setAriaOptions(e)}applyFontInfo(e){qi(e,this._configuration.options.get(50))}setBanner(e,t){this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._bannerDomNode.remove(),this._bannerDomNode=e,this._configuration.setReservedHeight(e?t:0),this._bannerDomNode&&this._domElement.prepend(this._bannerDomNode)}_attachModel(e){if(!e){this._modelData=null;return}const t=[];this._domElement.setAttribute("data-mode-id",e.getLanguageId()),this._configuration.setIsDominatedByLongLines(e.isDominatedByLongLines()),this._configuration.setModelLineCount(e.getLineCount());const i=e.onBeforeAttached(),n=new Moe(this._id,this._configuration,e,q2.create(fe(this._domElement)),G2.create(this._configuration.options),a=>fs(fe(this._domElement),a),this.languageConfigurationService,this._themeService,i,{batchChanges:a=>{try{return this._beginUpdate(),a()}finally{this._endUpdate()}}});t.push(e.onWillDispose(()=>this.setModel(null))),t.push(n.onEvent(a=>{switch(a.kind){case 0:this._onDidContentSizeChange.fire(a);break;case 1:this._editorTextFocus.setValue(a.hasFocus);break;case 2:this._onDidScrollChange.fire(a);break;case 3:this._onDidChangeViewZones.fire();break;case 4:this._onDidChangeHiddenAreas.fire();break;case 5:this._onDidAttemptReadOnlyEdit.fire();break;case 6:{if(a.reachedMaxCursorCount){const h=this.getOption(80),u=m("cursors.maximum","The number of cursors has been limited to {0}. Consider using [find and replace](https://code.visualstudio.com/docs/editor/codebasics#_find-and-replace) for larger changes or increase the editor multi cursor limit setting.",h);this._notificationService.prompt(bT.Warning,u,[{label:"Find and Replace",run:()=>{this._commandService.executeCommand("editor.action.startFindReplaceAction")}},{label:m("goToSetting","Increase Multi Cursor Limit"),run:()=>{this._commandService.executeCommand("workbench.action.openSettings2",{query:"editor.multiCursorLimit"})}}])}const l=[];for(let h=0,u=a.selections.length;h{this._paste("keyboard",s,r,a,l)},type:s=>{this._type("keyboard",s)},compositionType:(s,r,a,l)=>{this._compositionType("keyboard",s,r,a,l)},startComposition:()=>{this._startComposition()},endComposition:()=>{this._endComposition("keyboard")},cut:()=>{this._cut("keyboard")}}:t={paste:(s,r,a,l)=>{const c={text:s,pasteOnNewLine:r,multicursorText:a,mode:l};this._commandService.executeCommand("paste",c)},type:s=>{const r={text:s};this._commandService.executeCommand("type",r)},compositionType:(s,r,a,l)=>{if(a||l){const c={text:s,replacePrevCharCnt:r,replaceNextCharCnt:a,positionDelta:l};this._commandService.executeCommand("compositionType",c)}else{const c={text:s,replaceCharCnt:r};this._commandService.executeCommand("replacePreviousChar",c)}},startComposition:()=>{this._commandService.executeCommand("compositionStart",{})},endComposition:()=>{this._commandService.executeCommand("compositionEnd",{})},cut:()=>{this._commandService.executeCommand("cut",{})}};const i=new Iy(e.coordinatesConverter);return i.onKeyDown=s=>this._onKeyDown.fire(s),i.onKeyUp=s=>this._onKeyUp.fire(s),i.onContextMenu=s=>this._onContextMenu.fire(s),i.onMouseMove=s=>this._onMouseMove.fire(s),i.onMouseLeave=s=>this._onMouseLeave.fire(s),i.onMouseDown=s=>this._onMouseDown.fire(s),i.onMouseUp=s=>this._onMouseUp.fire(s),i.onMouseDrag=s=>this._onMouseDrag.fire(s),i.onMouseDrop=s=>this._onMouseDrop.fire(s),i.onMouseDropCanceled=s=>this._onMouseDropCanceled.fire(s),i.onMouseWheel=s=>this._onMouseWheel.fire(s),[new RI(t,this._configuration,this._themeService.getColorTheme(),e,i,this._overflowWidgetsDomNode,this._instantiationService),!0]}_postDetachModelCleanup(e){e?.removeAllDecorationsWithOwnerId(this._id)}_detachModel(){if(this._contributionsDisposable?.dispose(),this._contributionsDisposable=void 0,!this._modelData)return null;const e=this._modelData.model,t=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),t&&this._domElement.contains(t)&&t.remove(),this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._bannerDomNode.remove(),e}_removeDecorationType(e){this._codeEditorService.removeDecorationType(e)}hasModel(){return this._modelData!==null}showDropIndicatorAt(e){const t=[{range:new I(e.lineNumber,e.column,e.lineNumber,e.column),options:md.dropIntoEditorDecorationOptions}];this._dropIntoEditorDecorations.set(t),this.revealPosition(e,1)}removeDropIndicator(){this._dropIntoEditorDecorations.clear()}setContextValue(e,t){this._contextKeyService.createKey(e,t)}_beginUpdate(){this._updateCounter++,this._updateCounter===1&&this._onBeginUpdate.fire()}_endUpdate(){this._updateCounter--,this._updateCounter===0&&this._onEndUpdate.fire()}},md=dh,dh.dropIntoEditorDecorationOptions=kt.register({description:"workbench-dnd-target",className:"dnd-target"}),dh);I_=md=Ooe([Aa(3,ke),Aa(4,Pt),Aa(5,hi),Aa(6,De),Aa(7,en),Aa(8,mn),Aa(9,ms),Aa(10,Gn),Aa(11,Se)],I_);let Foe=0;class Boe{constructor(e,t,i,n,s,r){this.model=e,this.viewModel=t,this.view=i,this.hasRealView=n,this.listenersToRemove=s,this.attachedView=r}dispose(){xt(this.listenersToRemove),this.model.onBeforeDetached(this.attachedView),this.hasRealView&&this.view.dispose(),this.viewModel.dispose()}}class t4 extends z{constructor(e){super(),this._emitterOptions=e,this._onDidChangeToTrue=this._register(new A(this._emitterOptions)),this.onDidChangeToTrue=this._onDidChangeToTrue.event,this._onDidChangeToFalse=this._register(new A(this._emitterOptions)),this.onDidChangeToFalse=this._onDidChangeToFalse.event,this._value=0}setValue(e){const t=e?2:1;this._value!==t&&(this._value=t,this._value===2?this._onDidChangeToTrue.fire():this._value===1&&this._onDidChangeToFalse.fire())}}class sn extends A{constructor(e,t){super({deliveryQueue:t}),this._contributions=e}fire(e){this._contributions.onBeforeInteractionEvent(),super.fire(e)}}class Woe extends z{constructor(e,t){super(),this._editor=e,t.createKey("editorId",e.getId()),this._editorSimpleInput=K.editorSimpleInput.bindTo(t),this._editorFocus=K.focus.bindTo(t),this._textInputFocus=K.textInputFocus.bindTo(t),this._editorTextFocus=K.editorTextFocus.bindTo(t),this._tabMovesFocus=K.tabMovesFocus.bindTo(t),this._editorReadonly=K.readOnly.bindTo(t),this._inDiffEditor=K.inDiffEditor.bindTo(t),this._editorColumnSelection=K.columnSelection.bindTo(t),this._hasMultipleSelections=K.hasMultipleSelections.bindTo(t),this._hasNonEmptySelection=K.hasNonEmptySelection.bindTo(t),this._canUndo=K.canUndo.bindTo(t),this._canRedo=K.canRedo.bindTo(t),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromConfig())),this._register(this._editor.onDidChangeCursorSelection(()=>this._updateFromSelection())),this._register(this._editor.onDidFocusEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidFocusEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidChangeModel(()=>this._updateFromModel())),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromModel())),this._register(xv.onDidChangeTabFocus(i=>this._tabMovesFocus.set(i))),this._updateFromConfig(),this._updateFromSelection(),this._updateFromFocus(),this._updateFromModel(),this._editorSimpleInput.set(this._editor.isSimpleWidget)}_updateFromConfig(){const e=this._editor.getOptions();this._tabMovesFocus.set(xv.getTabFocusMode()),this._editorReadonly.set(e.get(92)),this._inDiffEditor.set(e.get(61)),this._editorColumnSelection.set(e.get(22))}_updateFromSelection(){const e=this._editor.getSelections();e?(this._hasMultipleSelections.set(e.length>1),this._hasNonEmptySelection.set(e.some(t=>!t.isEmpty()))):(this._hasMultipleSelections.reset(),this._hasNonEmptySelection.reset())}_updateFromFocus(){this._editorFocus.set(this._editor.hasWidgetFocus()&&!this._editor.isSimpleWidget),this._editorTextFocus.set(this._editor.hasTextFocus()&&!this._editor.isSimpleWidget),this._textInputFocus.set(this._editor.hasTextFocus())}_updateFromModel(){const e=this._editor.getModel();this._canUndo.set(!!(e&&e.canUndo())),this._canRedo.set(!!(e&&e.canRedo()))}}class Hoe extends z{constructor(e,t,i){super(),this._editor=e,this._contextKeyService=t,this._languageFeaturesService=i,this._langId=K.languageId.bindTo(t),this._hasCompletionItemProvider=K.hasCompletionItemProvider.bindTo(t),this._hasCodeActionsProvider=K.hasCodeActionsProvider.bindTo(t),this._hasCodeLensProvider=K.hasCodeLensProvider.bindTo(t),this._hasDefinitionProvider=K.hasDefinitionProvider.bindTo(t),this._hasDeclarationProvider=K.hasDeclarationProvider.bindTo(t),this._hasImplementationProvider=K.hasImplementationProvider.bindTo(t),this._hasTypeDefinitionProvider=K.hasTypeDefinitionProvider.bindTo(t),this._hasHoverProvider=K.hasHoverProvider.bindTo(t),this._hasDocumentHighlightProvider=K.hasDocumentHighlightProvider.bindTo(t),this._hasDocumentSymbolProvider=K.hasDocumentSymbolProvider.bindTo(t),this._hasReferenceProvider=K.hasReferenceProvider.bindTo(t),this._hasRenameProvider=K.hasRenameProvider.bindTo(t),this._hasSignatureHelpProvider=K.hasSignatureHelpProvider.bindTo(t),this._hasInlayHintsProvider=K.hasInlayHintsProvider.bindTo(t),this._hasDocumentFormattingProvider=K.hasDocumentFormattingProvider.bindTo(t),this._hasDocumentSelectionFormattingProvider=K.hasDocumentSelectionFormattingProvider.bindTo(t),this._hasMultipleDocumentFormattingProvider=K.hasMultipleDocumentFormattingProvider.bindTo(t),this._hasMultipleDocumentSelectionFormattingProvider=K.hasMultipleDocumentSelectionFormattingProvider.bindTo(t),this._isInEmbeddedEditor=K.isInEmbeddedEditor.bindTo(t);const n=()=>this._update();this._register(e.onDidChangeModel(n)),this._register(e.onDidChangeModelLanguage(n)),this._register(i.completionProvider.onDidChange(n)),this._register(i.codeActionProvider.onDidChange(n)),this._register(i.codeLensProvider.onDidChange(n)),this._register(i.definitionProvider.onDidChange(n)),this._register(i.declarationProvider.onDidChange(n)),this._register(i.implementationProvider.onDidChange(n)),this._register(i.typeDefinitionProvider.onDidChange(n)),this._register(i.hoverProvider.onDidChange(n)),this._register(i.documentHighlightProvider.onDidChange(n)),this._register(i.documentSymbolProvider.onDidChange(n)),this._register(i.referenceProvider.onDidChange(n)),this._register(i.renameProvider.onDidChange(n)),this._register(i.documentFormattingEditProvider.onDidChange(n)),this._register(i.documentRangeFormattingEditProvider.onDidChange(n)),this._register(i.signatureHelpProvider.onDidChange(n)),this._register(i.inlayHintsProvider.onDidChange(n)),n()}dispose(){super.dispose()}reset(){this._contextKeyService.bufferChangeEvents(()=>{this._langId.reset(),this._hasCompletionItemProvider.reset(),this._hasCodeActionsProvider.reset(),this._hasCodeLensProvider.reset(),this._hasDefinitionProvider.reset(),this._hasDeclarationProvider.reset(),this._hasImplementationProvider.reset(),this._hasTypeDefinitionProvider.reset(),this._hasHoverProvider.reset(),this._hasDocumentHighlightProvider.reset(),this._hasDocumentSymbolProvider.reset(),this._hasReferenceProvider.reset(),this._hasRenameProvider.reset(),this._hasDocumentFormattingProvider.reset(),this._hasDocumentSelectionFormattingProvider.reset(),this._hasSignatureHelpProvider.reset(),this._isInEmbeddedEditor.reset()})}_update(){const e=this._editor.getModel();if(!e){this.reset();return}this._contextKeyService.bufferChangeEvents(()=>{this._langId.set(e.getLanguageId()),this._hasCompletionItemProvider.set(this._languageFeaturesService.completionProvider.has(e)),this._hasCodeActionsProvider.set(this._languageFeaturesService.codeActionProvider.has(e)),this._hasCodeLensProvider.set(this._languageFeaturesService.codeLensProvider.has(e)),this._hasDefinitionProvider.set(this._languageFeaturesService.definitionProvider.has(e)),this._hasDeclarationProvider.set(this._languageFeaturesService.declarationProvider.has(e)),this._hasImplementationProvider.set(this._languageFeaturesService.implementationProvider.has(e)),this._hasTypeDefinitionProvider.set(this._languageFeaturesService.typeDefinitionProvider.has(e)),this._hasHoverProvider.set(this._languageFeaturesService.hoverProvider.has(e)),this._hasDocumentHighlightProvider.set(this._languageFeaturesService.documentHighlightProvider.has(e)),this._hasDocumentSymbolProvider.set(this._languageFeaturesService.documentSymbolProvider.has(e)),this._hasReferenceProvider.set(this._languageFeaturesService.referenceProvider.has(e)),this._hasRenameProvider.set(this._languageFeaturesService.renameProvider.has(e)),this._hasSignatureHelpProvider.set(this._languageFeaturesService.signatureHelpProvider.has(e)),this._hasInlayHintsProvider.set(this._languageFeaturesService.inlayHintsProvider.has(e)),this._hasDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.has(e)||this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasMultipleDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.all(e).length+this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._hasMultipleDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._isInEmbeddedEditor.set(e.uri.scheme===Te.walkThroughSnippet||e.uri.scheme===Te.vscodeChatCodeBlock)})}}class Voe extends z{constructor(e,t){super(),this._onChange=this._register(new A),this.onChange=this._onChange.event,this._hadFocus=void 0,this._hasDomElementFocus=!1,this._domFocusTracker=this._register(Ph(e)),this._overflowWidgetsDomNodeHasFocus=!1,this._register(this._domFocusTracker.onDidFocus(()=>{this._hasDomElementFocus=!0,this._update()})),this._register(this._domFocusTracker.onDidBlur(()=>{this._hasDomElementFocus=!1,this._update()})),t&&(this._overflowWidgetsDomNode=this._register(Ph(t)),this._register(this._overflowWidgetsDomNode.onDidFocus(()=>{this._overflowWidgetsDomNodeHasFocus=!0,this._update()})),this._register(this._overflowWidgetsDomNode.onDidBlur(()=>{this._overflowWidgetsDomNodeHasFocus=!1,this._update()})))}_update(){const e=this._hasDomElementFocus||this._overflowWidgetsDomNodeHasFocus;this._hadFocus!==e&&(this._hadFocus=e,this._onChange.fire(void 0))}hasFocus(){return this._hadFocus??!1}}class zoe{get length(){return this._decorationIds.length}constructor(e,t){this._editor=e,this._decorationIds=[],this._isChangingDecorations=!1,Array.isArray(t)&&t.length>0&&this.set(t)}onDidChange(e,t,i){return this._editor.onDidChangeModelDecorations(n=>{this._isChangingDecorations||e.call(t,n)},i)}getRange(e){return!this._editor.hasModel()||e>=this._decorationIds.length?null:this._editor.getModel().getDecorationRange(this._decorationIds[e])}getRanges(){if(!this._editor.hasModel())return[];const e=this._editor.getModel(),t=[];for(const i of this._decorationIds){const n=e.getDecorationRange(i);n&&t.push(n)}return t}has(e){return this._decorationIds.includes(e.id)}clear(){this._decorationIds.length!==0&&this.set([])}set(e){try{this._isChangingDecorations=!0,this._editor.changeDecorations(t=>{this._decorationIds=t.deltaDecorations(this._decorationIds,e)})}finally{this._isChangingDecorations=!1}return this._decorationIds}append(e){let t=[];try{this._isChangingDecorations=!0,this._editor.changeDecorations(i=>{t=i.deltaDecorations([],e),this._decorationIds=this._decorationIds.concat(t)})}finally{this._isChangingDecorations=!1}return t}}const Uoe=encodeURIComponent("");function cL(o){return Uoe+encodeURIComponent(o.toString())+$oe}const Koe=encodeURIComponent('');function qoe(o){return Koe+encodeURIComponent(o.toString())+joe}Sr((o,e)=>{const t=o.getColor(Y0);t&&e.addRule(`.monaco-editor .squiggly-error { background: url("data:image/svg+xml,${cL(t)}") repeat-x bottom left; }`);const i=o.getColor(Il);i&&e.addRule(`.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,${cL(i)}") repeat-x bottom left; }`);const n=o.getColor(ma);n&&e.addRule(`.monaco-editor .squiggly-info { background: url("data:image/svg+xml,${cL(n)}") repeat-x bottom left; }`);const s=o.getColor(xK);s&&e.addRule(`.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,${qoe(s)}") no-repeat bottom left; }`);const r=o.getColor(dQ);r&&e.addRule(`.monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: ${r.rgba.a}; }`)});class qh{static capture(e){if(e.getScrollTop()===0||e.hasPendingScrollAnimation())return new qh(e.getScrollTop(),e.getContentHeight(),null,0,null);let t=null,i=0;const n=e.getVisibleRanges();if(n.length>0){t=n[0].getStartPosition();const s=e.getTopForPosition(t.lineNumber,t.column);i=e.getScrollTop()-s}return new qh(e.getScrollTop(),e.getContentHeight(),t,i,e.getPosition())}constructor(e,t,i,n,s){this._initialScrollTop=e,this._initialContentHeight=t,this._visiblePosition=i,this._visiblePositionScrollDelta=n,this._cursorPosition=s}restore(e){if(!(this._initialContentHeight===e.getContentHeight()&&this._initialScrollTop===e.getScrollTop())&&this._visiblePosition){const t=e.getTopForPosition(this._visiblePosition.lineNumber,this._visiblePosition.column);e.setScrollTop(t+this._visiblePositionScrollDelta)}}restoreRelativeVerticalPositionOfCursor(e){if(this._initialContentHeight===e.getContentHeight()&&this._initialScrollTop===e.getScrollTop())return;const t=e.getPosition();if(!this._cursorPosition||!t)return;const i=e.getTopForLineNumber(t.lineNumber)-e.getTopForLineNumber(this._cursorPosition.lineNumber);e.setScrollTop(e.getScrollTop()+i,1)}}function Goe(o,e,t,i){if(o.length===0)return e;if(e.length===0)return o;const n=[];let s=0,r=0;for(;sd?(n.push(l),r++):(n.push(i(a,l)),s++,r++)}for(;s`Apply decorations from ${e.debugName}`},n=>{const s=e.read(n);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}function Bm(o,e){return o.appendChild(e),_e(()=>{e.remove()})}function Zoe(o,e){return o.prepend(e),_e(()=>{e.remove()})}class A8 extends z{get width(){return this._width}get height(){return this._height}get automaticLayout(){return this._automaticLayout}constructor(e,t){super(),this._automaticLayout=!1,this.elementSizeObserver=this._register(new g8(e,t)),this._width=Ge(this,this.elementSizeObserver.getWidth()),this._height=Ge(this,this.elementSizeObserver.getHeight()),this._register(this.elementSizeObserver.onDidChange(i=>Xt(n=>{this._width.set(this.elementSizeObserver.getWidth(),n),this._height.set(this.elementSizeObserver.getHeight(),n)})))}observe(e){this.elementSizeObserver.observe(e)}setAutomaticLayout(e){this._automaticLayout=e,e?this.elementSizeObserver.startObserving():this.elementSizeObserver.stopObserving()}}function i4(o,e,t){let i=e.get(),n=i,s=i;const r=Ge("animatedValue",i);let a=-1;const l=300;let c;t.add(Y_({createEmptyChangeSummary:()=>({animate:!1}),handleChange:(h,u)=>(h.didChange(e)&&(u.animate=u.animate||h.change),!0)},(h,u)=>{c!==void 0&&(o.cancelAnimationFrame(c),c=void 0),n=s,i=e.read(h),a=Date.now()-(u.animate?0:l),d()}));function d(){const h=Date.now()-a;s=Math.floor(Yoe(h,n,i-n,l)),h{this._actualTop.set(i,void 0)},this.onComputedHeight=i=>{this._actualHeight.set(i,void 0)}}}const a0=class a0{constructor(e,t){this._editor=e,this._domElement=t,this._overlayWidgetId=`managedOverlayWidget-${a0._counter++}`,this._overlayWidget={getId:()=>this._overlayWidgetId,getDomNode:()=>this._domElement,getPosition:()=>null},this._editor.addOverlayWidget(this._overlayWidget)}dispose(){this._editor.removeOverlayWidget(this._overlayWidget)}};a0._counter=0;let VI=a0;function Vc(o,e){return We(t=>{for(let[i,n]of Object.entries(e))n&&typeof n=="object"&&"read"in n&&(n=n.read(t)),typeof n=="number"&&(n=`${n}px`),i=i.replace(/[A-Z]/g,s=>"-"+s.toLowerCase()),o.style[i]=n})}function zv(o,e,t,i){const n=new X,s=[];return n.add(To((r,a)=>{const l=e.read(r),c=new Map,d=new Map;t&&t(!0),o.changeViewZones(h=>{for(const u of s)h.removeZone(u),i?.delete(u);s.length=0;for(const u of l){const f=h.addZone(u);u.setZoneId&&u.setZoneId(f),s.push(f),i?.add(f),c.set(u,f)}}),t&&t(!1),a.add(Y_({createEmptyChangeSummary(){return{zoneIds:[]}},handleChange(h,u){const f=d.get(h.changedObservable);return f!==void 0&&u.zoneIds.push(f),!0}},(h,u)=>{for(const f of l)f.onChange&&(d.set(f.onChange,c.get(f)),f.onChange.read(h));t&&t(!0),o.changeViewZones(f=>{for(const g of u.zoneIds)f.layoutZone(g)}),t&&t(!1)}))})),n.add({dispose(){t&&t(!0),o.changeViewZones(r=>{for(const a of s)r.removeZone(a)}),i?.clear(),t&&t(!1)}}),n}function n4(o,e){const t=xC(e,n=>n.original.startLineNumber<=o.lineNumber);if(!t)return I.fromPositions(o);if(t.original.endLineNumberExclusive<=o.lineNumber){const n=o.lineNumber-t.original.endLineNumberExclusive+t.modified.endLineNumberExclusive;return I.fromPositions(new P(n,o.column))}if(!t.innerChanges)return I.fromPositions(new P(t.modified.startLineNumber,1));const i=xC(t.innerChanges,n=>n.originalRange.getStartPosition().isBeforeOrEqual(o));if(!i){const n=o.lineNumber-t.original.startLineNumber+t.modified.startLineNumber;return I.fromPositions(new P(n,o.column))}if(i.originalRange.containsPosition(o))return i.modifiedRange;{const n=Qoe(i.originalRange.getEndPosition(),o);return I.fromPositions(n.addToPosition(i.modifiedRange.getEndPosition()))}}function Qoe(o,e){return o.lineNumber===e.lineNumber?new Po(0,e.column-o.column):new Po(e.lineNumber-o.lineNumber,e.column-1)}function Xoe(o,e){let t;return o.filter(i=>{const n=e(i,t);return t=i,n})}class Uv{static create(e,t=void 0){return new s4(e,e,t)}static createWithDisposable(e,t,i=void 0){const n=new X;return n.add(t),n.add(e),new s4(e,n,i)}}class s4 extends Uv{constructor(e,t,i){super(),this.object=e,this._disposable=t,this._debugOwner=i,this._refCount=1,this._isDisposed=!1,this._owners=[],i&&this._addOwner(i)}_addOwner(e){e&&this._owners.push(e)}createNewRef(e){return this._refCount++,e&&this._addOwner(e),new Joe(this,e)}dispose(){this._isDisposed||(this._isDisposed=!0,this._decreaseRefCount(this._debugOwner))}_decreaseRefCount(e){if(this._refCount--,this._refCount===0&&this._disposable.dispose(),e){const t=this._owners.indexOf(e);t!==-1&&this._owners.splice(t,1)}}}class Joe extends Uv{constructor(e,t){super(),this._base=e,this._debugOwner=t,this._isDisposed=!1}get object(){return this._base.object}createNewRef(e){return this._base.createNewRef(e)}dispose(){this._isDisposed||(this._isDisposed=!0,this._base._decreaseRefCount(this._debugOwner))}}var eM=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},tM=function(o,e){return function(t,i){e(t,i,o)}};const ere=Wi("diff-review-insert",ie.add,m("accessibleDiffViewerInsertIcon","Icon for 'Insert' in accessible diff viewer.")),tre=Wi("diff-review-remove",ie.remove,m("accessibleDiffViewerRemoveIcon","Icon for 'Remove' in accessible diff viewer.")),ire=Wi("diff-review-close",ie.close,m("accessibleDiffViewerCloseIcon","Icon for 'Close' in accessible diff viewer."));var Jf;let qd=(Jf=class extends z{constructor(e,t,i,n,s,r,a,l,c){super(),this._parentNode=e,this._visible=t,this._setVisible=i,this._canClose=n,this._width=s,this._height=r,this._diffs=a,this._models=l,this._instantiationService=c,this._state=cu(this,(d,h)=>{const u=this._visible.read(d);if(this._parentNode.style.visibility=u?"visible":"hidden",!u)return null;const f=h.add(this._instantiationService.createInstance(zI,this._diffs,this._models,this._setVisible,this._canClose)),g=h.add(this._instantiationService.createInstance(UI,this._parentNode,f,this._width,this._height,this._models));return{model:f,view:g}}).recomputeInitiallyAndOnChange(this._store)}next(){Xt(e=>{const t=this._visible.get();this._setVisible(!0,e),t&&this._state.get().model.nextGroup(e)})}prev(){Xt(e=>{this._setVisible(!0,e),this._state.get().model.previousGroup(e)})}close(){Xt(e=>{this._setVisible(!1,e)})}},Jf._ttPolicy=Kc("diffReview",{createHTML:e=>e}),Jf);qd=eM([tM(8,ke)],qd);let zI=class extends z{constructor(e,t,i,n,s){super(),this._diffs=e,this._models=t,this._setVisible=i,this.canClose=n,this._accessibilitySignalService=s,this._groups=Ge(this,[]),this._currentGroupIdx=Ge(this,0),this._currentElementIdx=Ge(this,0),this.groups=this._groups,this.currentGroup=this._currentGroupIdx.map((r,a)=>this._groups.read(a)[r]),this.currentGroupIndex=this._currentGroupIdx,this.currentElement=this._currentElementIdx.map((r,a)=>this.currentGroup.read(a)?.lines[r]),this._register(We(r=>{const a=this._diffs.read(r);if(!a){this._groups.set([],void 0);return}const l=nre(a,this._models.getOriginalModel().getLineCount(),this._models.getModifiedModel().getLineCount());Xt(c=>{const d=this._models.getModifiedPosition();if(d){const h=l.findIndex(u=>d?.lineNumber{const a=this.currentElement.read(r);a?.type===vn.Deleted?this._accessibilitySignalService.playSignal(rr.diffLineDeleted,{source:"accessibleDiffViewer.currentElementChanged"}):a?.type===vn.Added&&this._accessibilitySignalService.playSignal(rr.diffLineInserted,{source:"accessibleDiffViewer.currentElementChanged"})})),this._register(We(r=>{const a=this.currentElement.read(r);if(a&&a.type!==vn.Header){const l=a.modifiedLineNumber??a.diff.modified.startLineNumber;this._models.modifiedSetSelection(I.fromPositions(new P(l,1)))}}))}_goToGroupDelta(e,t){const i=this.groups.get();!i||i.length<=1||c_(t,n=>{this._currentGroupIdx.set(Re.ofLength(i.length).clipCyclic(this._currentGroupIdx.get()+e),n),this._currentElementIdx.set(0,n)})}nextGroup(e){this._goToGroupDelta(1,e)}previousGroup(e){this._goToGroupDelta(-1,e)}_goToLineDelta(e){const t=this.currentGroup.get();!t||t.lines.length<=1||Xt(i=>{this._currentElementIdx.set(Re.ofLength(t.lines.length).clip(this._currentElementIdx.get()+e),i)})}goToNextLine(){this._goToLineDelta(1)}goToPreviousLine(){this._goToLineDelta(-1)}goToLine(e){const t=this.currentGroup.get();if(!t)return;const i=t.lines.indexOf(e);i!==-1&&Xt(n=>{this._currentElementIdx.set(i,n)})}revealCurrentElementInEditor(){if(!this.canClose.get())return;this._setVisible(!1,void 0);const e=this.currentElement.get();e&&(e.type===vn.Deleted?this._models.originalReveal(I.fromPositions(new P(e.originalLineNumber,1))):this._models.modifiedReveal(e.type!==vn.Header?I.fromPositions(new P(e.modifiedLineNumber,1)):void 0))}close(){this.canClose.get()&&(this._setVisible(!1,void 0),this._models.modifiedFocus())}};zI=eM([tM(4,rb)],zI);const Sm=3;function nre(o,e,t){const i=[];for(const n of LN(o,(s,r)=>r.modified.startLineNumber-s.modified.endLineNumberExclusive<2*Sm)){const s=[];s.push(new ore);const r=new xe(Math.max(1,n[0].original.startLineNumber-Sm),Math.min(n[n.length-1].original.endLineNumberExclusive+Sm,e+1)),a=new xe(Math.max(1,n[0].modified.startLineNumber-Sm),Math.min(n[n.length-1].modified.endLineNumberExclusive+Sm,t+1));E5(n,(d,h)=>{const u=new xe(d?d.original.endLineNumberExclusive:r.startLineNumber,h?h.original.startLineNumber:r.endLineNumberExclusive),f=new xe(d?d.modified.endLineNumberExclusive:a.startLineNumber,h?h.modified.startLineNumber:a.endLineNumberExclusive);u.forEach(g=>{s.push(new lre(g,f.startLineNumber+(g-u.startLineNumber)))}),h&&(h.original.forEach(g=>{s.push(new rre(h,g))}),h.modified.forEach(g=>{s.push(new are(h,g))}))});const l=n[0].modified.join(n[n.length-1].modified),c=n[0].original.join(n[n.length-1].original);i.push(new sre(new hn(l,c),s))}return i}var vn;(function(o){o[o.Header=0]="Header",o[o.Unchanged=1]="Unchanged",o[o.Deleted=2]="Deleted",o[o.Added=3]="Added"})(vn||(vn={}));class sre{constructor(e,t){this.range=e,this.lines=t}}class ore{constructor(){this.type=vn.Header}}class rre{constructor(e,t){this.diff=e,this.originalLineNumber=t,this.type=vn.Deleted,this.modifiedLineNumber=void 0}}class are{constructor(e,t){this.diff=e,this.modifiedLineNumber=t,this.type=vn.Added,this.originalLineNumber=void 0}}class lre{constructor(e,t){this.originalLineNumber=e,this.modifiedLineNumber=t,this.type=vn.Unchanged}}let UI=class extends z{constructor(e,t,i,n,s,r){super(),this._element=e,this._model=t,this._width=i,this._height=n,this._models=s,this._languageService=r,this.domNode=this._element,this.domNode.className="monaco-component diff-review monaco-editor-background";const a=document.createElement("div");a.className="diff-review-actions",this._actionBar=this._register(new oo(a)),this._register(We(l=>{this._actionBar.clear(),this._model.canClose.read(l)&&this._actionBar.push(new Fs("diffreview.close",m("label.close","Close"),"close-diff-review "+Ee.asClassName(ire),!0,async()=>t.close()),{label:!1,icon:!0})})),this._content=document.createElement("div"),this._content.className="diff-review-content",this._content.setAttribute("role","code"),this._scrollbar=this._register(new J0(this._content,{})),un(this.domNode,this._scrollbar.getDomNode(),a),this._register(We(l=>{this._height.read(l),this._width.read(l),this._scrollbar.scanDomNode()})),this._register(_e(()=>{un(this.domNode)})),this._register(Vc(this.domNode,{width:this._width,height:this._height})),this._register(Vc(this._content,{width:this._width,height:this._height})),this._register(To((l,c)=>{this._model.currentGroup.read(l),this._render(c)})),this._register(jt(this.domNode,"keydown",l=>{(l.equals(18)||l.equals(2066)||l.equals(530))&&(l.preventDefault(),this._model.goToNextLine()),(l.equals(16)||l.equals(2064)||l.equals(528))&&(l.preventDefault(),this._model.goToPreviousLine()),(l.equals(9)||l.equals(2057)||l.equals(521)||l.equals(1033))&&(l.preventDefault(),this._model.close()),(l.equals(10)||l.equals(3))&&(l.preventDefault(),this._model.revealCurrentElementInEditor())}))}_render(e){const t=this._models.getOriginalOptions(),i=this._models.getModifiedOptions(),n=document.createElement("div");n.className="diff-review-table",n.setAttribute("role","list"),n.setAttribute("aria-label",m("ariaLabel","Accessible Diff Viewer. Use arrow up and down to navigate.")),qi(n,i.get(50)),un(this._content,n);const s=this._models.getOriginalModel(),r=this._models.getModifiedModel();if(!s||!r)return;const a=s.getOptions(),l=r.getOptions(),c=i.get(67),d=this._model.currentGroup.get();for(const h of d?.lines||[]){if(!d)break;let u;if(h.type===vn.Header){const g=document.createElement("div");g.className="diff-review-row",g.setAttribute("role","listitem");const p=d.range,_=this._model.currentGroupIndex.get(),b=this._model.groups.get().length,C=x=>x===0?m("no_lines_changed","no lines changed"):x===1?m("one_line_changed","1 line changed"):m("more_lines_changed","{0} lines changed",x),w=C(p.original.length),v=C(p.modified.length);g.setAttribute("aria-label",m({key:"header",comment:["This is the ARIA label for a git diff header.","A git diff header looks like this: @@ -154,12 +159,39 @@.","That encodes that at original line 154 (which is now line 159), 12 lines were removed/changed with 39 lines.","Variables 0 and 1 refer to the diff index out of total number of diffs.","Variables 2 and 4 will be numbers (a line number).",'Variables 3 and 5 will be "no lines changed", "1 line changed" or "X lines changed", localized separately.']},"Difference {0} of {1}: original line {2}, {3}, modified line {4}, {5}",_+1,b,p.original.startLineNumber,w,p.modified.startLineNumber,v));const y=document.createElement("div");y.className="diff-review-cell diff-review-summary",y.appendChild(document.createTextNode(`${_+1}/${b}: @@ -${p.original.startLineNumber},${p.original.length} +${p.modified.startLineNumber},${p.modified.length} @@`)),g.appendChild(y),u=g}else u=this._createRow(h,c,this._width.get(),t,s,a,i,r,l);n.appendChild(u);const f=Ce(g=>this._model.currentElement.read(g)===h);e.add(We(g=>{const p=f.read(g);u.tabIndex=p?0:-1,p&&u.focus()})),e.add(U(u,"focus",()=>{this._model.goToLine(h)}))}this._scrollbar.scanDomNode()}_createRow(e,t,i,n,s,r,a,l,c){const d=n.get(146),h=d.glyphMarginWidth+d.lineNumbersWidth,u=a.get(146),f=10+u.glyphMarginWidth+u.lineNumbersWidth;let g="diff-review-row",p="";const _="diff-review-spacer";let b=null;switch(e.type){case vn.Added:g="diff-review-row line-insert",p=" char-insert",b=ere;break;case vn.Deleted:g="diff-review-row line-delete",p=" char-delete",b=tre;break}const C=document.createElement("div");C.style.minWidth=i+"px",C.className=g,C.setAttribute("role","listitem"),C.ariaLevel="";const w=document.createElement("div");w.className="diff-review-cell",w.style.height=`${t}px`,C.appendChild(w);const v=document.createElement("span");v.style.width=h+"px",v.style.minWidth=h+"px",v.className="diff-review-line-number"+p,e.originalLineNumber!==void 0?v.appendChild(document.createTextNode(String(e.originalLineNumber))):v.innerText=" ",w.appendChild(v);const y=document.createElement("span");y.style.width=f+"px",y.style.minWidth=f+"px",y.style.paddingRight="10px",y.className="diff-review-line-number"+p,e.modifiedLineNumber!==void 0?y.appendChild(document.createTextNode(String(e.modifiedLineNumber))):y.innerText=" ",w.appendChild(y);const x=document.createElement("span");if(x.className=_,b){const N=document.createElement("span");N.className=Ee.asClassName(b),N.innerText="  ",x.appendChild(N)}else x.innerText="  ";w.appendChild(x);let L;if(e.modifiedLineNumber!==void 0){let N=this._getLineHtml(l,a,c.tabSize,e.modifiedLineNumber,this._languageService.languageIdCodec);qd._ttPolicy&&(N=qd._ttPolicy.createHTML(N)),w.insertAdjacentHTML("beforeend",N),L=l.getLineContent(e.modifiedLineNumber)}else{let N=this._getLineHtml(s,n,r.tabSize,e.originalLineNumber,this._languageService.languageIdCodec);qd._ttPolicy&&(N=qd._ttPolicy.createHTML(N)),w.insertAdjacentHTML("beforeend",N),L=s.getLineContent(e.originalLineNumber)}L.length===0&&(L=m("blankLine","blank"));let E="";switch(e.type){case vn.Unchanged:e.originalLineNumber===e.modifiedLineNumber?E=m({key:"unchangedLine",comment:["The placeholders are contents of the line and should not be translated."]},"{0} unchanged line {1}",L,e.originalLineNumber):E=m("equalLine","{0} original line {1} modified line {2}",L,e.originalLineNumber,e.modifiedLineNumber);break;case vn.Added:E=m("insertLine","+ {0} modified line {1}",L,e.modifiedLineNumber);break;case vn.Deleted:E=m("deleteLine","- {0} original line {1}",L,e.originalLineNumber);break}return C.setAttribute("aria-label",E),C}_getLineHtml(e,t,i,n,s){const r=e.getLineContent(n),a=t.get(50),l=Ni.createEmpty(r,s),c=zs.isBasicASCII(r,e.mightContainNonBasicASCII()),d=zs.containsRTL(r,c,e.mightContainRTL());return Ly(new gu(a.isMonospace&&!t.get(33),a.canUseHalfwidthRightwardsArrow,r,!1,c,d,0,l,[],i,0,a.spaceWidth,a.middotWidth,a.wsmiddotWidth,t.get(118),t.get(100),t.get(95),t.get(51)!==Mc.OFF,null)).html}};UI=eM([tM(5,qt)],UI);class cre{constructor(e){this.editors=e}getOriginalModel(){return this.editors.original.getModel()}getOriginalOptions(){return this.editors.original.getOptions()}originalReveal(e){this.editors.original.revealRange(e),this.editors.original.setSelection(e),this.editors.original.focus()}getModifiedModel(){return this.editors.modified.getModel()}getModifiedOptions(){return this.editors.modified.getOptions()}modifiedReveal(e){e&&(this.editors.modified.revealRange(e),this.editors.modified.setSelection(e)),this.editors.modified.focus()}modifiedSetSelection(e){this.editors.modified.setSelection(e)}modifiedFocus(){this.editors.modified.focus()}getModifiedPosition(){return this.editors.modified.getPosition()??void 0}}D("diffEditor.move.border","#8b8b8b9c",m("diffEditor.move.border","The border color for text that got moved in the diff editor."));D("diffEditor.moveActive.border","#FFA500",m("diffEditor.moveActive.border","The active border color for text that got moved in the diff editor."));D("diffEditor.unchangedRegionShadow",{dark:"#000000",light:"#737373BF",hcDark:"#000000",hcLight:"#737373BF"},m("diffEditor.unchangedRegionShadow","The color of the shadow around unchanged region widgets."));const dre=Wi("diff-insert",ie.add,m("diffInsertIcon","Line decoration for inserts in the diff editor.")),P8=Wi("diff-remove",ie.remove,m("diffRemoveIcon","Line decoration for removals in the diff editor.")),o4=kt.register({className:"line-insert",description:"line-insert",isWholeLine:!0,linesDecorationsClassName:"insert-sign "+Ee.asClassName(dre),marginClassName:"gutter-insert"}),r4=kt.register({className:"line-delete",description:"line-delete",isWholeLine:!0,linesDecorationsClassName:"delete-sign "+Ee.asClassName(P8),marginClassName:"gutter-delete"}),a4=kt.register({className:"line-insert",description:"line-insert",isWholeLine:!0,marginClassName:"gutter-insert"}),l4=kt.register({className:"line-delete",description:"line-delete",isWholeLine:!0,marginClassName:"gutter-delete"}),c4=kt.register({className:"char-insert",description:"char-insert",shouldFillLineOnLineBreak:!0}),hre=kt.register({className:"char-insert",description:"char-insert",isWholeLine:!0}),ure=kt.register({className:"char-insert diff-range-empty",description:"char-insert diff-range-empty"}),$I=kt.register({className:"char-delete",description:"char-delete",shouldFillLineOnLineBreak:!0}),fre=kt.register({className:"char-delete",description:"char-delete",isWholeLine:!0}),gre=kt.register({className:"char-delete diff-range-empty",description:"char-delete diff-range-empty"});var O8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},KI=function(o,e){return function(t,i){e(t,i,o)}},pd;const F8=He("diffProviderFactoryService");let jI=class{constructor(e){this.instantiationService=e}createDiffProvider(e){return this.instantiationService.createInstance(qI,e)}};jI=O8([KI(0,ke)],jI);Qe(F8,jI,1);var hh;let qI=(hh=class{constructor(e,t,i){this.editorWorkerService=t,this.telemetryService=i,this.onDidChangeEventEmitter=new A,this.onDidChange=this.onDidChangeEventEmitter.event,this.diffAlgorithm="advanced",this.diffAlgorithmOnDidChangeSubscription=void 0,this.setOptions(e)}dispose(){this.diffAlgorithmOnDidChangeSubscription?.dispose()}async computeDiff(e,t,i,n){if(typeof this.diffAlgorithm!="string")return this.diffAlgorithm.computeDiff(e,t,i,n);if(e.isDisposed()||t.isDisposed())return{changes:[],identical:!0,quitEarly:!1,moves:[]};if(e.getLineCount()===1&&e.getLineMaxColumn(1)===1)return t.getLineCount()===1&&t.getLineMaxColumn(1)===1?{changes:[],identical:!0,quitEarly:!1,moves:[]}:{changes:[new Ws(new xe(1,2),new xe(1,t.getLineCount()+1),[new Ls(e.getFullModelRange(),t.getFullModelRange())])],identical:!1,quitEarly:!1,moves:[]};const s=JSON.stringify([e.uri.toString(),t.uri.toString()]),r=JSON.stringify([e.id,t.id,e.getAlternativeVersionId(),t.getAlternativeVersionId(),JSON.stringify(i)]),a=pd.diffCache.get(s);if(a&&a.context===r)return a.result;const l=Hs.create(),c=await this.editorWorkerService.computeDiff(e.uri,t.uri,i,this.diffAlgorithm),d=l.elapsed();if(this.telemetryService.publicLog2("diffEditor.computeDiff",{timeMs:d,timedOut:c?.quitEarly??!0,detectedMoves:i.computeMoves?c?.moves.length??0:-1}),n.isCancellationRequested)return{changes:[],identical:!1,quitEarly:!0,moves:[]};if(!c)throw new Error("no diff result available");return pd.diffCache.size>10&&pd.diffCache.delete(pd.diffCache.keys().next().value),pd.diffCache.set(s,{result:c,context:r}),c}setOptions(e){let t=!1;e.diffAlgorithm&&this.diffAlgorithm!==e.diffAlgorithm&&(this.diffAlgorithmOnDidChangeSubscription?.dispose(),this.diffAlgorithmOnDidChangeSubscription=void 0,this.diffAlgorithm=e.diffAlgorithm,typeof e.diffAlgorithm!="string"&&(this.diffAlgorithmOnDidChangeSubscription=e.diffAlgorithm.onDidChange(()=>this.onDidChangeEventEmitter.fire())),t=!0),t&&this.onDidChangeEventEmitter.fire()}},pd=hh,hh.diffCache=new Map,hh);qI=pd=O8([KI(1,Zc),KI(2,$s)],qI);function iM(){return RL&&!!RL.VSCODE_DEV}function B8(o){if(iM()){const e=mre();return e.add(o),{dispose(){e.delete(o)}}}else return{dispose(){}}}function mre(){r1||(r1=new Set);const o=globalThis;return o.$hotReload_applyNewExports||(o.$hotReload_applyNewExports=e=>{const t={config:{mode:void 0},...e},i=[];for(const n of r1){const s=n(t);s&&i.push(s)}if(i.length>0)return n=>{let s=!1;for(const r of i)r(n)&&(s=!0);return s}}),r1}let r1;iM()&&B8(({oldExports:o,newSrc:e,config:t})=>{if(t.mode==="patch-prototype")return i=>{for(const n in i){const s=i[n];if(console.log(`[hot-reload] Patching prototype methods of '${n}'`,{exportedItem:s}),typeof s=="function"&&s.prototype){const r=o[n];if(r){for(const a of Object.getOwnPropertyNames(s.prototype)){const l=Object.getOwnPropertyDescriptor(s.prototype,a),c=Object.getOwnPropertyDescriptor(r.prototype,a);l?.value?.toString()!==c?.value?.toString()&&console.log(`[hot-reload] Patching prototype method '${n}.${a}'`),Object.defineProperty(r.prototype,a,l)}i[n]=r}}}return!0}});function Lo(o,e){return pre([o],e),o}function pre(o,e){iM()&&ks("reload",i=>B8(({oldExports:n})=>{if([...Object.values(n)].some(s=>o.includes(s)))return s=>(i(void 0),!0)})).read(e)}var _re=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},bre=function(o,e){return function(t,i){e(t,i,o)}};let GI=class extends z{setActiveMovedText(e){this._activeMovedText.set(e,void 0)}constructor(e,t,i){super(),this.model=e,this._options=t,this._diffProviderFactoryService=i,this._isDiffUpToDate=Ge(this,!1),this.isDiffUpToDate=this._isDiffUpToDate,this._diff=Ge(this,void 0),this.diff=this._diff,this._unchangedRegions=Ge(this,void 0),this.unchangedRegions=Ce(this,a=>this._options.hideUnchangedRegions.read(a)?this._unchangedRegions.read(a)?.regions??[]:(Xt(l=>{for(const c of this._unchangedRegions.get()?.regions||[])c.collapseAll(l)}),[])),this.movedTextToCompare=Ge(this,void 0),this._activeMovedText=Ge(this,void 0),this._hoveredMovedText=Ge(this,void 0),this.activeMovedText=Ce(this,a=>this.movedTextToCompare.read(a)??this._hoveredMovedText.read(a)??this._activeMovedText.read(a)),this._cancellationTokenSource=new In,this._diffProvider=Ce(this,a=>{const l=this._diffProviderFactoryService.createDiffProvider({diffAlgorithm:this._options.diffAlgorithm.read(a)}),c=ks("onDidChange",l.onDidChange);return{diffProvider:l,onChangeSignal:c}}),this._register(_e(()=>this._cancellationTokenSource.cancel()));const n=Q_("contentChangedSignal"),s=this._register(new ci(()=>n.trigger(void 0),200));this._register(We(a=>{const l=this._unchangedRegions.read(a);if(!l||l.regions.some(g=>g.isDragged.read(a)))return;const c=l.originalDecorationIds.map(g=>e.original.getDecorationRange(g)).map(g=>g?xe.fromRangeInclusive(g):void 0),d=l.modifiedDecorationIds.map(g=>e.modified.getDecorationRange(g)).map(g=>g?xe.fromRangeInclusive(g):void 0),h=l.regions.map((g,p)=>!c[p]||!d[p]?void 0:new dc(c[p].startLineNumber,d[p].startLineNumber,c[p].length,g.visibleLineCountTop.read(a),g.visibleLineCountBottom.read(a))).filter(_l),u=[];let f=!1;for(const g of LN(h,(p,_)=>p.getHiddenModifiedRange(a).endLineNumberExclusive===_.getHiddenModifiedRange(a).startLineNumber))if(g.length>1){f=!0;const p=g.reduce((b,C)=>b+C.lineCount,0),_=new dc(g[0].originalLineNumber,g[0].modifiedLineNumber,p,g[0].visibleLineCountTop.get(),g[g.length-1].visibleLineCountBottom.get());u.push(_)}else u.push(g[0]);if(f){const g=e.original.deltaDecorations(l.originalDecorationIds,u.map(_=>({range:_.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),p=e.modified.deltaDecorations(l.modifiedDecorationIds,u.map(_=>({range:_.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));Xt(_=>{this._unchangedRegions.set({regions:u,originalDecorationIds:g,modifiedDecorationIds:p},_)})}}));const r=(a,l,c)=>{const d=dc.fromDiffs(a.changes,e.original.getLineCount(),e.modified.getLineCount(),this._options.hideUnchangedRegionsMinimumLineCount.read(c),this._options.hideUnchangedRegionsContextLineCount.read(c));let h;const u=this._unchangedRegions.get();if(u){const _=u.originalDecorationIds.map(v=>e.original.getDecorationRange(v)).map(v=>v?xe.fromRangeInclusive(v):void 0),b=u.modifiedDecorationIds.map(v=>e.modified.getDecorationRange(v)).map(v=>v?xe.fromRangeInclusive(v):void 0);let w=Xoe(u.regions.map((v,y)=>{if(!_[y]||!b[y])return;const x=_[y].length;return new dc(_[y].startLineNumber,b[y].startLineNumber,x,Math.min(v.visibleLineCountTop.get(),x),Math.min(v.visibleLineCountBottom.get(),x-v.visibleLineCountTop.get()))}).filter(_l),(v,y)=>!y||v.modifiedLineNumber>=y.modifiedLineNumber+y.lineCount&&v.originalLineNumber>=y.originalLineNumber+y.lineCount).map(v=>new hn(v.getHiddenOriginalRange(c),v.getHiddenModifiedRange(c)));w=hn.clip(w,xe.ofLength(1,e.original.getLineCount()),xe.ofLength(1,e.modified.getLineCount())),h=hn.inverse(w,e.original.getLineCount(),e.modified.getLineCount())}const f=[];if(h)for(const _ of d){const b=h.filter(C=>C.original.intersectsStrict(_.originalUnchangedRange)&&C.modified.intersectsStrict(_.modifiedUnchangedRange));f.push(..._.setVisibleRanges(b,l))}else f.push(...d);const g=e.original.deltaDecorations(u?.originalDecorationIds||[],f.map(_=>({range:_.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),p=e.modified.deltaDecorations(u?.modifiedDecorationIds||[],f.map(_=>({range:_.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));this._unchangedRegions.set({regions:f,originalDecorationIds:g,modifiedDecorationIds:p},l)};this._register(e.modified.onDidChangeContent(a=>{if(this._diff.get()){const c=cl.fromModelContentChanges(a.changes);this._lastDiff,e.original,e.modified}this._isDiffUpToDate.set(!1,void 0),s.schedule()})),this._register(e.original.onDidChangeContent(a=>{if(this._diff.get()){const c=cl.fromModelContentChanges(a.changes);this._lastDiff,e.original,e.modified}this._isDiffUpToDate.set(!1,void 0),s.schedule()})),this._register(To(async(a,l)=>{this._options.hideUnchangedRegionsMinimumLineCount.read(a),this._options.hideUnchangedRegionsContextLineCount.read(a),s.cancel(),n.read(a);const c=this._diffProvider.read(a);c.onChangeSignal.read(a),Lo(u3,a),Lo(dk,a),this._isDiffUpToDate.set(!1,void 0);let d=[];l.add(e.original.onDidChangeContent(f=>{const g=cl.fromModelContentChanges(f.changes);d=tv(d,g)}));let h=[];l.add(e.modified.onDidChangeContent(f=>{const g=cl.fromModelContentChanges(f.changes);h=tv(h,g)}));let u=await c.diffProvider.computeDiff(e.original,e.modified,{ignoreTrimWhitespace:this._options.ignoreTrimWhitespace.read(a),maxComputationTimeMs:this._options.maxComputationTimeMs.read(a),computeMoves:this._options.showMoves.read(a)},this._cancellationTokenSource.token);this._cancellationTokenSource.token.isCancellationRequested||e.original.isDisposed()||e.modified.isDisposed()||(u=Cre(u,e.original,e.modified),u=(e.original,e.modified,void 0)??u,u=(e.original,e.modified,void 0)??u,Xt(f=>{r(u,f),this._lastDiff=u;const g=nM.fromDiffResult(u);this._diff.set(g,f),this._isDiffUpToDate.set(!0,f);const p=this.movedTextToCompare.get();this.movedTextToCompare.set(p?this._lastDiff.moves.find(_=>_.lineRangeMapping.modified.intersect(p.lineRangeMapping.modified)):void 0,f)}))}))}ensureModifiedLineIsVisible(e,t,i){if(this.diff.get()?.mappings.length===0)return;const n=this._unchangedRegions.get()?.regions||[];for(const s of n)if(s.getHiddenModifiedRange(void 0).contains(e)){s.showModifiedLine(e,t,i);return}}ensureOriginalLineIsVisible(e,t,i){if(this.diff.get()?.mappings.length===0)return;const n=this._unchangedRegions.get()?.regions||[];for(const s of n)if(s.getHiddenOriginalRange(void 0).contains(e)){s.showOriginalLine(e,t,i);return}}async waitForDiff(){await k7(this.isDiffUpToDate,e=>e)}serializeState(){return{collapsedRegions:this._unchangedRegions.get()?.regions.map(t=>({range:t.getHiddenModifiedRange(void 0).serialize()}))}}restoreSerializedState(e){const t=e.collapsedRegions?.map(n=>xe.deserialize(n.range)),i=this._unchangedRegions.get();!i||!t||Xt(n=>{for(const s of i.regions)for(const r of t)if(s.modifiedUnchangedRange.intersect(r)){s.setHiddenModifiedRange(r,n);break}})}};GI=_re([bre(2,F8)],GI);function Cre(o,e,t){return{changes:o.changes.map(i=>new Ws(i.original,i.modified,i.innerChanges?i.innerChanges.map(n=>vre(n,e,t)):void 0)),moves:o.moves,identical:o.identical,quitEarly:o.quitEarly}}function vre(o,e,t){let i=o.originalRange,n=o.modifiedRange;return i.startColumn===1&&n.startColumn===1&&(i.endColumn!==1||n.endColumn!==1)&&i.endColumn===e.getLineMaxColumn(i.endLineNumber)&&n.endColumn===t.getLineMaxColumn(n.endLineNumber)&&i.endLineNumbernew W8(t)),e.moves||[],e.identical,e.quitEarly)}constructor(e,t,i,n){this.mappings=e,this.movedTexts=t,this.identical=i,this.quitEarly=n}}class W8{constructor(e){this.lineRangeMapping=e}}class dc{static fromDiffs(e,t,i,n,s){const r=Ws.inverse(e,t,i),a=[];for(const l of r){let c=l.original.startLineNumber,d=l.modified.startLineNumber,h=l.original.length;const u=c===1&&d===1,f=c+h===t+1&&d+h===i+1;(u||f)&&h>=s+n?(u&&!f&&(h-=s),f&&!u&&(c+=s,d+=s,h-=s),a.push(new dc(c,d,h,0,0))):h>=s*2+n&&(c+=s,d+=s,h-=s*2,a.push(new dc(c,d,h,0,0)))}return a}get originalUnchangedRange(){return xe.ofLength(this.originalLineNumber,this.lineCount)}get modifiedUnchangedRange(){return xe.ofLength(this.modifiedLineNumber,this.lineCount)}constructor(e,t,i,n,s){this.originalLineNumber=e,this.modifiedLineNumber=t,this.lineCount=i,this._visibleLineCountTop=Ge(this,0),this.visibleLineCountTop=this._visibleLineCountTop,this._visibleLineCountBottom=Ge(this,0),this.visibleLineCountBottom=this._visibleLineCountBottom,this._shouldHideControls=Ce(this,l=>this.visibleLineCountTop.read(l)+this.visibleLineCountBottom.read(l)===this.lineCount&&!this.isDragged.read(l)),this.isDragged=Ge(this,void 0);const r=Math.max(Math.min(n,this.lineCount),0),a=Math.max(Math.min(s,this.lineCount-n),0);bR(n===r),bR(s===a),this._visibleLineCountTop.set(r,void 0),this._visibleLineCountBottom.set(a,void 0)}setVisibleRanges(e,t){const i=[],n=new to(e.map(l=>l.modified)).subtractFrom(this.modifiedUnchangedRange);let s=this.originalLineNumber,r=this.modifiedLineNumber;const a=this.modifiedLineNumber+this.lineCount;if(n.ranges.length===0)this.showAll(t),i.push(this);else{let l=0;for(const c of n.ranges){const d=l===n.ranges.length-1;l++;const h=(d?a:c.endLineNumberExclusive)-r,u=new dc(s,r,h,0,0);u.setHiddenModifiedRange(c,t),i.push(u),s=u.originalUnchangedRange.endLineNumberExclusive,r=u.modifiedUnchangedRange.endLineNumberExclusive}}return i}shouldHideControls(e){return this._shouldHideControls.read(e)}getHiddenOriginalRange(e){return xe.ofLength(this.originalLineNumber+this._visibleLineCountTop.read(e),this.lineCount-this._visibleLineCountTop.read(e)-this._visibleLineCountBottom.read(e))}getHiddenModifiedRange(e){return xe.ofLength(this.modifiedLineNumber+this._visibleLineCountTop.read(e),this.lineCount-this._visibleLineCountTop.read(e)-this._visibleLineCountBottom.read(e))}setHiddenModifiedRange(e,t){const i=e.startLineNumber-this.modifiedLineNumber,n=this.modifiedLineNumber+this.lineCount-e.endLineNumberExclusive;this.setState(i,n,t)}getMaxVisibleLineCountTop(){return this.lineCount-this._visibleLineCountBottom.get()}getMaxVisibleLineCountBottom(){return this.lineCount-this._visibleLineCountTop.get()}showMoreAbove(e=10,t){const i=this.getMaxVisibleLineCountTop();this._visibleLineCountTop.set(Math.min(this._visibleLineCountTop.get()+e,i),t)}showMoreBelow(e=10,t){const i=this.lineCount-this._visibleLineCountTop.get();this._visibleLineCountBottom.set(Math.min(this._visibleLineCountBottom.get()+e,i),t)}showAll(e){this._visibleLineCountBottom.set(this.lineCount-this._visibleLineCountTop.get(),e)}showModifiedLine(e,t,i){const n=e+1-(this.modifiedLineNumber+this._visibleLineCountTop.get()),s=this.modifiedLineNumber-this._visibleLineCountBottom.get()+this.lineCount-e;t===0&&n{this._contextMenuService.showContextMenu({domForShadowRoot:u?i.getDomNode()??void 0:void 0,getAnchor:()=>({x:g,y:p}),getActions:()=>{const _=[],b=n.modified.isEmpty;return _.push(new Fs("diff.clipboard.copyDeletedContent",b?n.original.length>1?m("diff.clipboard.copyDeletedLinesContent.label","Copy deleted lines"):m("diff.clipboard.copyDeletedLinesContent.single.label","Copy deleted line"):n.original.length>1?m("diff.clipboard.copyChangedLinesContent.label","Copy changed lines"):m("diff.clipboard.copyChangedLinesContent.single.label","Copy changed line"),void 0,!0,async()=>{const w=this._originalTextModel.getValueInRange(n.original.toExclusiveRange());await this._clipboardService.writeText(w)})),n.original.length>1&&_.push(new Fs("diff.clipboard.copyDeletedLineContent",b?m("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",n.original.startLineNumber+h):m("diff.clipboard.copyChangedLineContent.label","Copy changed line ({0})",n.original.startLineNumber+h),void 0,!0,async()=>{let w=this._originalTextModel.getLineContent(n.original.startLineNumber+h);w===""&&(w=this._originalTextModel.getEndOfLineSequence()===0?` -`:`\r -`),await this._clipboardService.writeText(w)})),i.getOption(92)||_.push(new Fs("diff.inline.revertChange",m("diff.inline.revertChange.label","Revert this change"),void 0,!0,async()=>{this._editor.revert(this._diff)})),_},autoSelectFirstItem:!0})};this._register(jt(this._diffActions,"mousedown",g=>{if(!g.leftButton)return;const{top:p,height:_}=gi(this._diffActions),b=Math.floor(d/3);g.preventDefault(),f(g.posx,p+_+b)})),this._register(i.onMouseMove(g=>{(g.target.type===8||g.target.type===5)&&g.target.detail.viewZoneId===this._getViewZoneId()?(h=this._updateLightBulbPosition(this._marginDomNode,g.event.browserEvent.y,d),this.visibility=!0):this.visibility=!1})),this._register(i.onMouseDown(g=>{g.event.leftButton&&(g.target.type===8||g.target.type===5)&&g.target.detail.viewZoneId===this._getViewZoneId()&&(g.event.preventDefault(),h=this._updateLightBulbPosition(this._marginDomNode,g.event.browserEvent.y,d),f(g.event.posx,g.event.posy+d))}))}_updateLightBulbPosition(e,t,i){const{top:n}=gi(e),s=t-n,r=Math.floor(s/i),a=r*i;if(this._diffActions.style.top=`${a}px`,this._viewLineCounts){let l=0;for(let c=0;co});function yre(o,e,t,i){qi(i,e.fontInfo);const n=t.length>0,s=new K_(1e4);let r=0,a=0;const l=[];for(let u=0;u');const l=e.getLineContent(),c=zs.isBasicASCII(l,n),d=zs.containsRTL(l,c,s),h=Sy(new gu(r.fontInfo.isMonospace&&!r.disableMonospaceOptimizations,r.fontInfo.canUseHalfwidthRightwardsArrow,l,!1,c,d,0,e,t,r.tabSize,0,r.fontInfo.spaceWidth,r.fontInfo.middotWidth,r.fontInfo.wsmiddotWidth,r.stopRenderingLineAfter,r.renderWhitespace,r.renderControlCharacters,r.fontLigatures!==Mc.OFF,null),a);return a.appendString(""),h.characterMapping.getHorizontalOffset(h.characterMapping.length)}var Lre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},u4=function(o,e){return function(t,i){e(t,i,o)}};let ZI=class extends z{constructor(e,t,i,n,s,r,a,l,c,d){super(),this._targetWindow=e,this._editors=t,this._diffModel=i,this._options=n,this._diffEditorWidget=s,this._canIgnoreViewZoneUpdateEvent=r,this._origViewZonesToIgnore=a,this._modViewZonesToIgnore=l,this._clipboardService=c,this._contextMenuService=d,this._originalTopPadding=Ge(this,0),this._originalScrollOffset=Ge(this,0),this._originalScrollOffsetAnimated=i4(this._targetWindow,this._originalScrollOffset,this._store),this._modifiedTopPadding=Ge(this,0),this._modifiedScrollOffset=Ge(this,0),this._modifiedScrollOffsetAnimated=i4(this._targetWindow,this._modifiedScrollOffset,this._store);const h=Ge("invalidateAlignmentsState",0),u=this._register(new ci(()=>{h.set(h.get()+1,void 0)},0));this._register(this._editors.original.onDidChangeViewZones(w=>{this._canIgnoreViewZoneUpdateEvent()||u.schedule()})),this._register(this._editors.modified.onDidChangeViewZones(w=>{this._canIgnoreViewZoneUpdateEvent()||u.schedule()})),this._register(this._editors.original.onDidChangeConfiguration(w=>{(w.hasChanged(147)||w.hasChanged(67))&&u.schedule()})),this._register(this._editors.modified.onDidChangeConfiguration(w=>{(w.hasChanged(147)||w.hasChanged(67))&&u.schedule()}));const f=this._diffModel.map(w=>w?gt(this,w.model.original.onDidChangeTokens,()=>w.model.original.tokenization.backgroundTokenizationState===2):void 0).map((w,v)=>w?.read(v)),g=Ce(w=>{const v=this._diffModel.read(w),y=v?.diff.read(w);if(!v||!y)return null;h.read(w);const L=this._options.renderSideBySide.read(w);return f4(this._editors.original,this._editors.modified,y.mappings,this._origViewZonesToIgnore,this._modViewZonesToIgnore,L)}),p=Ce(w=>{const v=this._diffModel.read(w)?.movedTextToCompare.read(w);if(!v)return null;h.read(w);const y=v.changes.map(x=>new W8(x));return f4(this._editors.original,this._editors.modified,y,this._origViewZonesToIgnore,this._modViewZonesToIgnore,!0)});function _(){const w=document.createElement("div");return w.className="diagonal-fill",w}const b=this._register(new X);this.viewZones=cu(this,(w,v)=>{b.clear();const y=g.read(w)||[],x=[],L=[],E=this._modifiedTopPadding.read(w);E>0&&L.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:E,showInHiddenAreas:!0,suppressMouseDown:!0});const N=this._originalTopPadding.read(w);N>0&&x.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:N,showInHiddenAreas:!0,suppressMouseDown:!0});const H=this._options.renderSideBySide.read(w),F=H?void 0:this._editors.modified._getViewModel()?.createLineBreaksComputer();if(F){const se=this._editors.original.getModel();for(const be of y)if(be.diff)for(let we=be.originalRange.startLineNumber;wese.getLineCount())return{orig:x,mod:L};F?.addRequest(se.getLineContent(we),null,null)}}const W=F?.finalize()??[];let j=0;const B=this._editors.modified.getOption(67),G=this._diffModel.read(w)?.movedTextToCompare.read(w),ne=this._editors.original.getModel()?.mightContainNonBasicASCII()??!1,ae=this._editors.original.getModel()?.mightContainRTL()??!1,de=sM.fromEditor(this._editors.modified);for(const se of y)if(se.diff&&!H&&(!this._options.useTrueInlineDiffRendering.read(w)||!oM(se.diff))){if(!se.originalRange.isEmpty){f.read(w);const we=document.createElement("div");we.classList.add("view-lines","line-delete","monaco-mouse-cursor-text");const Rt=this._editors.original.getModel();if(se.originalRange.endLineNumberExclusive-1>Rt.getLineCount())return{orig:x,mod:L};const ct=new Sre(se.originalRange.mapToLineArray(fi=>Rt.tokenization.getLineTokens(fi)),se.originalRange.mapToLineArray(fi=>W[j++]),ne,ae),Bt=[];for(const fi of se.diff.innerChanges||[])Bt.push(new hp(fi.originalRange.delta(-(se.diff.original.startLineNumber-1)),$I.className,0));const ht=yre(ct,de,Bt,we),ei=document.createElement("div");if(ei.className="inline-deleted-margin-view-zone",qi(ei,de.fontInfo),this._options.renderIndicators.read(w))for(let fi=0;fiA5(js),ei,this._editors.modified,se.diff,this._diffEditorWidget,ht.viewLineCounts,this._editors.original.getModel(),this._contextMenuService,this._clipboardService));for(let fi=0;fi1&&x.push({afterLineNumber:se.originalRange.startLineNumber+fi,domNode:_(),heightInPx:(po-1)*B,showInHiddenAreas:!0,suppressMouseDown:!0})}L.push({afterLineNumber:se.modifiedRange.startLineNumber-1,domNode:we,heightInPx:ht.heightInLines*B,minWidthInPx:ht.minWidthInPx,marginDomNode:ei,setZoneId(fi){js=fi},showInHiddenAreas:!0,suppressMouseDown:!0})}const be=document.createElement("div");be.className="gutter-delete",x.push({afterLineNumber:se.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:se.modifiedHeightInPx,marginDomNode:be,showInHiddenAreas:!0,suppressMouseDown:!0})}else{const be=se.modifiedHeightInPx-se.originalHeightInPx;if(be>0){if(G?.lineRangeMapping.original.delta(-1).deltaLength(2).contains(se.originalRange.endLineNumberExclusive-1))continue;x.push({afterLineNumber:se.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:be,showInHiddenAreas:!0,suppressMouseDown:!0})}else{let we=function(){const ct=document.createElement("div");return ct.className="arrow-revert-change "+Ee.asClassName(ie.arrowRight),v.add(U(ct,"mousedown",Bt=>Bt.stopPropagation())),v.add(U(ct,"click",Bt=>{Bt.stopPropagation(),s.revert(se.diff)})),ce("div",{},ct)};if(G?.lineRangeMapping.modified.delta(-1).deltaLength(2).contains(se.modifiedRange.endLineNumberExclusive-1))continue;let Rt;se.diff&&se.diff.modified.isEmpty&&this._options.shouldRenderOldRevertArrows.read(w)&&(Rt=we()),L.push({afterLineNumber:se.modifiedRange.endLineNumberExclusive-1,domNode:_(),heightInPx:-be,marginDomNode:Rt,showInHiddenAreas:!0,suppressMouseDown:!0})}}for(const se of p.read(w)??[]){if(!G?.lineRangeMapping.original.intersect(se.originalRange)||!G?.lineRangeMapping.modified.intersect(se.modifiedRange))continue;const be=se.modifiedHeightInPx-se.originalHeightInPx;be>0?x.push({afterLineNumber:se.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:be,showInHiddenAreas:!0,suppressMouseDown:!0}):L.push({afterLineNumber:se.modifiedRange.endLineNumberExclusive-1,domNode:_(),heightInPx:-be,showInHiddenAreas:!0,suppressMouseDown:!0})}return{orig:x,mod:L}});let C=!1;this._register(this._editors.original.onDidScrollChange(w=>{w.scrollLeftChanged&&!C&&(C=!0,this._editors.modified.setScrollLeft(w.scrollLeft),C=!1)})),this._register(this._editors.modified.onDidScrollChange(w=>{w.scrollLeftChanged&&!C&&(C=!0,this._editors.original.setScrollLeft(w.scrollLeft),C=!1)})),this._originalScrollTop=gt(this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=gt(this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._register(We(w=>{const v=this._originalScrollTop.read(w)-(this._originalScrollOffsetAnimated.get()-this._modifiedScrollOffsetAnimated.read(w))-(this._originalTopPadding.get()-this._modifiedTopPadding.read(w));v!==this._editors.modified.getScrollTop()&&this._editors.modified.setScrollTop(v,1)})),this._register(We(w=>{const v=this._modifiedScrollTop.read(w)-(this._modifiedScrollOffsetAnimated.get()-this._originalScrollOffsetAnimated.read(w))-(this._modifiedTopPadding.get()-this._originalTopPadding.read(w));v!==this._editors.original.getScrollTop()&&this._editors.original.setScrollTop(v,1)})),this._register(We(w=>{const v=this._diffModel.read(w)?.movedTextToCompare.read(w);let y=0;if(v){const x=this._editors.original.getTopForLineNumber(v.lineRangeMapping.original.startLineNumber,!0)-this._originalTopPadding.get();y=this._editors.modified.getTopForLineNumber(v.lineRangeMapping.modified.startLineNumber,!0)-this._modifiedTopPadding.get()-x}y>0?(this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(y,void 0)):y<0?(this._modifiedTopPadding.set(-y,void 0),this._originalTopPadding.set(0,void 0)):setTimeout(()=>{this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(0,void 0)},400),this._editors.modified.hasTextFocus()?this._originalScrollOffset.set(this._modifiedScrollOffset.get()-y,void 0,!0):this._modifiedScrollOffset.set(this._originalScrollOffset.get()+y,void 0,!0)}))}};ZI=Lre([u4(8,wy),u4(9,Lr)],ZI);function f4(o,e,t,i,n,s){const r=new Ll(g4(o,i)),a=new Ll(g4(e,n)),l=o.getOption(67),c=e.getOption(67),d=[];let h=0,u=0;function f(g,p){for(;;){let _=r.peek(),b=a.peek();if(_&&_.lineNumber>=g&&(_=void 0),b&&b.lineNumber>=p&&(b=void 0),!_&&!b)break;const C=_?_.lineNumber-h:Number.MAX_VALUE,w=b?b.lineNumber-u:Number.MAX_VALUE;Cw?(a.dequeue(),_={lineNumber:b.lineNumber-u+h,heightInPx:0}):(r.dequeue(),a.dequeue()),d.push({originalRange:xe.ofLength(_.lineNumber,1),modifiedRange:xe.ofLength(b.lineNumber,1),originalHeightInPx:l+_.heightInPx,modifiedHeightInPx:c+b.heightInPx,diff:void 0})}}for(const g of t){let w=function(v,y,x=!1){if(vF.lineNumberF+W.heightInPx,0)??0,H=a.takeWhile(F=>F.lineNumberF+W.heightInPx,0)??0;d.push({originalRange:L,modifiedRange:E,originalHeightInPx:L.length*l+N,modifiedHeightInPx:E.length*c+H,diff:g.lineRangeMapping}),C=v,b=y};const p=g.lineRangeMapping;f(p.original.startLineNumber,p.modified.startLineNumber);let _=!0,b=p.modified.startLineNumber,C=p.original.startLineNumber;if(s)for(const v of p.innerChanges||[]){v.originalRange.startColumn>1&&v.modifiedRange.startColumn>1&&w(v.originalRange.startLineNumber,v.modifiedRange.startLineNumber);const y=o.getModel(),x=v.originalRange.endLineNumber<=y.getLineCount()?y.getLineMaxColumn(v.originalRange.endLineNumber):Number.MAX_SAFE_INTEGER;v.originalRange.endColumn1&&i.push({lineNumber:l,heightInPx:r*(c-1)})}for(const l of o.getWhitespaces()){if(e.has(l.id))continue;const c=l.afterLineNumber===0?0:s.convertViewPositionToModelPosition(new P(l.afterLineNumber,1)).lineNumber;t.push({lineNumber:c,heightInPx:l.height})}return Goe(t,i,l=>l.lineNumber,(l,c)=>({lineNumber:l.lineNumber,heightInPx:l.heightInPx+c.heightInPx}))}function oM(o){return o.innerChanges?o.innerChanges.every(e=>m4(e.modifiedRange)&&m4(e.originalRange)||e.originalRange.equalsRange(new I(1,1,1,1))):!1}function m4(o){return o.startLineNumber===o.endLineNumber}const Op=class Op extends z{constructor(e,t,i,n,s){super(),this._rootElement=e,this._diffModel=t,this._originalEditorLayoutInfo=i,this._modifiedEditorLayoutInfo=n,this._editors=s,this._originalScrollTop=gt(this,this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=gt(this,this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._viewZonesChanged=ks("onDidChangeViewZones",this._editors.modified.onDidChangeViewZones),this.width=Ge(this,0),this._modifiedViewZonesChangedSignal=ks("modified.onDidChangeViewZones",this._editors.modified.onDidChangeViewZones),this._originalViewZonesChangedSignal=ks("original.onDidChangeViewZones",this._editors.original.onDidChangeViewZones),this._state=cu(this,(d,h)=>{this._element.replaceChildren();const u=this._diffModel.read(d),f=u?.diff.read(d)?.movedTexts;if(!f||f.length===0){this.width.set(0,void 0);return}this._viewZonesChanged.read(d);const g=this._originalEditorLayoutInfo.read(d),p=this._modifiedEditorLayoutInfo.read(d);if(!g||!p){this.width.set(0,void 0);return}this._modifiedViewZonesChangedSignal.read(d),this._originalViewZonesChangedSignal.read(d);const _=f.map(L=>{function E(ae,de){const se=de.getTopForLineNumber(ae.startLineNumber,!0),be=de.getTopForLineNumber(ae.endLineNumberExclusive,!0);return(se+be)/2}const N=E(L.lineRangeMapping.original,this._editors.original),H=this._originalScrollTop.read(d),F=E(L.lineRangeMapping.modified,this._editors.modified),W=this._modifiedScrollTop.read(d),j=N-H,B=F-W,G=Math.min(N,F),ne=Math.max(N,F);return{range:new Re(G,ne),from:j,to:B,fromWithoutScroll:N,toWithoutScroll:F,move:L}});_.sort(n6(rs(L=>L.fromWithoutScroll>L.toWithoutScroll,s6),rs(L=>L.fromWithoutScroll>L.toWithoutScroll?L.fromWithoutScroll:-L.toWithoutScroll,ia)));const b=rM.compute(_.map(L=>L.range)),C=10,w=g.verticalScrollbarWidth,v=(b.getTrackCount()-1)*10+C*2,y=w+v+(p.contentLeft-Op.movedCodeBlockPadding);let x=0;for(const L of _){const E=b.getTrack(x),N=w+C+E*10,H=15,F=15,W=y,j=p.glyphMarginWidth+p.lineNumbersWidth,B=18,G=document.createElementNS("http://www.w3.org/2000/svg","rect");G.classList.add("arrow-rectangle"),G.setAttribute("x",`${W-j}`),G.setAttribute("y",`${L.to-B/2}`),G.setAttribute("width",`${j}`),G.setAttribute("height",`${B}`),this._element.appendChild(G);const ne=document.createElementNS("http://www.w3.org/2000/svg","g"),ae=document.createElementNS("http://www.w3.org/2000/svg","path");ae.setAttribute("d",`M 0 ${L.from} L ${N} ${L.from} L ${N} ${L.to} L ${W-F} ${L.to}`),ae.setAttribute("fill","none"),ne.appendChild(ae);const de=document.createElementNS("http://www.w3.org/2000/svg","polygon");de.classList.add("arrow"),h.add(We(se=>{ae.classList.toggle("currentMove",L.move===u.activeMovedText.read(se)),de.classList.toggle("currentMove",L.move===u.activeMovedText.read(se))})),de.setAttribute("points",`${W-F},${L.to-H/2} ${W},${L.to} ${W-F},${L.to+H/2}`),ne.appendChild(de),this._element.appendChild(ne),x++}this.width.set(v,void 0)}),this._element=document.createElementNS("http://www.w3.org/2000/svg","svg"),this._element.setAttribute("class","moved-blocks-lines"),this._rootElement.appendChild(this._element),this._register(_e(()=>this._element.remove())),this._register(We(d=>{const h=this._originalEditorLayoutInfo.read(d),u=this._modifiedEditorLayoutInfo.read(d);!h||!u||(this._element.style.left=`${h.width-h.verticalScrollbarWidth}px`,this._element.style.height=`${h.height}px`,this._element.style.width=`${h.verticalScrollbarWidth+h.contentLeft-Op.movedCodeBlockPadding+this.width.read(d)}px`)})),this._register(X_(this._state));const r=Ce(d=>{const u=this._diffModel.read(d)?.diff.read(d);return u?u.movedTexts.map(f=>({move:f,original:new ff(wg(f.lineRangeMapping.original.startLineNumber-1),18),modified:new ff(wg(f.lineRangeMapping.modified.startLineNumber-1),18)})):[]});this._register(zv(this._editors.original,r.map(d=>d.map(h=>h.original)))),this._register(zv(this._editors.modified,r.map(d=>d.map(h=>h.modified)))),this._register(To((d,h)=>{const u=r.read(d);for(const f of u)h.add(new p4(this._editors.original,f.original,f.move,"original",this._diffModel.get())),h.add(new p4(this._editors.modified,f.modified,f.move,"modified",this._diffModel.get()))}));const a=ks("original.onDidFocusEditorWidget",d=>this._editors.original.onDidFocusEditorWidget(()=>setTimeout(()=>d(void 0),0))),l=ks("modified.onDidFocusEditorWidget",d=>this._editors.modified.onDidFocusEditorWidget(()=>setTimeout(()=>d(void 0),0)));let c="modified";this._register(Y_({createEmptyChangeSummary:()=>{},handleChange:(d,h)=>(d.didChange(a)&&(c="original"),d.didChange(l)&&(c="modified"),!0)},d=>{a.read(d),l.read(d);const h=this._diffModel.read(d);if(!h)return;const u=h.diff.read(d);let f;if(u&&c==="original"){const g=this._editors.originalCursor.read(d);g&&(f=u.movedTexts.find(p=>p.lineRangeMapping.original.contains(g.lineNumber)))}if(u&&c==="modified"){const g=this._editors.modifiedCursor.read(d);g&&(f=u.movedTexts.find(p=>p.lineRangeMapping.modified.contains(g.lineNumber)))}f!==h.movedTextToCompare.get()&&h.movedTextToCompare.set(void 0,void 0),h.setActiveMovedText(f)}))}};Op.movedCodeBlockPadding=4;let Qf=Op;class rM{static compute(e){const t=[],i=[];for(const n of e){let s=t.findIndex(r=>!r.intersectsStrict(n));s===-1&&(t.length>=6?s=$U(t,rs(a=>a.intersectWithRangeLength(n),ia)):(s=t.length,t.push(new uT))),t[s].addRange(n),i.push(s)}return new rM(t.length,i)}constructor(e,t){this._trackCount=e,this.trackPerLineIdx=t}getTrack(e){return this.trackPerLineIdx[e]}getTrackCount(){return this._trackCount}}class p4 extends J2{constructor(e,t,i,n,s){const r=tt("div.diff-hidden-lines-widget");super(e,t,r.root),this._editor=e,this._move=i,this._kind=n,this._diffModel=s,this._nodes=tt("div.diff-moved-code-block",{style:{marginRight:"4px"}},[tt("div.text-content@textContent"),tt("div.action-bar@actionBar")]),r.root.appendChild(this._nodes.root);const a=gt(this._editor.onDidLayoutChange,()=>this._editor.getLayoutInfo());this._register(Vc(this._nodes.root,{paddingRight:a.map(u=>u.verticalScrollbarWidth)}));let l;i.changes.length>0?l=this._kind==="original"?m("codeMovedToWithChanges","Code moved with changes to line {0}-{1}",this._move.lineRangeMapping.modified.startLineNumber,this._move.lineRangeMapping.modified.endLineNumberExclusive-1):m("codeMovedFromWithChanges","Code moved with changes from line {0}-{1}",this._move.lineRangeMapping.original.startLineNumber,this._move.lineRangeMapping.original.endLineNumberExclusive-1):l=this._kind==="original"?m("codeMovedTo","Code moved to line {0}-{1}",this._move.lineRangeMapping.modified.startLineNumber,this._move.lineRangeMapping.modified.endLineNumberExclusive-1):m("codeMovedFrom","Code moved from line {0}-{1}",this._move.lineRangeMapping.original.startLineNumber,this._move.lineRangeMapping.original.endLineNumberExclusive-1);const c=this._register(new oo(this._nodes.actionBar,{highlightToggledItems:!0})),d=new Fs("",l,"",!1);c.push(d,{icon:!1,label:!0});const h=new Fs("","Compare",Ee.asClassName(ie.compareChanges),!0,()=>{this._editor.focus(),this._diffModel.movedTextToCompare.set(this._diffModel.movedTextToCompare.get()===i?void 0:this._move,void 0)});this._register(We(u=>{const f=this._diffModel.movedTextToCompare.read(u)===i;h.checked=f})),c.push(h,{icon:!1,label:!0})}}class xre extends z{constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._decorations=Ce(this,s=>{const r=this._diffModel.read(s),a=r?.diff.read(s);if(!a)return null;const l=this._diffModel.read(s).movedTextToCompare.read(s),c=this._options.renderIndicators.read(s),d=this._options.showEmptyDecorations.read(s),h=[],u=[];if(!l)for(const g of a.mappings)if(g.lineRangeMapping.original.isEmpty||h.push({range:g.lineRangeMapping.original.toInclusiveRange(),options:c?r4:l4}),g.lineRangeMapping.modified.isEmpty||u.push({range:g.lineRangeMapping.modified.toInclusiveRange(),options:c?o4:a4}),g.lineRangeMapping.modified.isEmpty||g.lineRangeMapping.original.isEmpty)g.lineRangeMapping.original.isEmpty||h.push({range:g.lineRangeMapping.original.toInclusiveRange(),options:fre}),g.lineRangeMapping.modified.isEmpty||u.push({range:g.lineRangeMapping.modified.toInclusiveRange(),options:hre});else{const p=this._options.useTrueInlineDiffRendering.read(s)&&oM(g.lineRangeMapping);for(const _ of g.lineRangeMapping.innerChanges||[])if(g.lineRangeMapping.original.contains(_.originalRange.startLineNumber)&&h.push({range:_.originalRange,options:_.originalRange.isEmpty()&&d?gre:$I}),g.lineRangeMapping.modified.contains(_.modifiedRange.startLineNumber)&&u.push({range:_.modifiedRange,options:_.modifiedRange.isEmpty()&&d&&!p?ure:c4}),p){const b=r.model.original.getValueInRange(_.originalRange);u.push({range:_.modifiedRange,options:{description:"deleted-text",before:{content:b,inlineClassName:"inline-deleted-text"},zIndex:1e5,showIfCollapsed:!0}})}}if(l)for(const g of l.changes){const p=g.original.toInclusiveRange();p&&h.push({range:p,options:c?r4:l4});const _=g.modified.toInclusiveRange();_&&u.push({range:_,options:c?o4:a4});for(const b of g.innerChanges||[])h.push({range:b.originalRange,options:$I}),u.push({range:b.modifiedRange,options:c4})}const f=this._diffModel.read(s).activeMovedText.read(s);for(const g of a.movedTexts)h.push({range:g.lineRangeMapping.original.toInclusiveRange(),options:{description:"moved",blockClassName:"movedOriginal"+(g===f?" currentMove":""),blockPadding:[Qf.movedCodeBlockPadding,0,Qf.movedCodeBlockPadding,Qf.movedCodeBlockPadding]}}),u.push({range:g.lineRangeMapping.modified.toInclusiveRange(),options:{description:"moved",blockClassName:"movedModified"+(g===f?" currentMove":""),blockPadding:[4,0,4,4]}});return{originalDecorations:h,modifiedDecorations:u}}),this._register(Vv(this._editors.original,this._decorations.map(s=>s?.originalDecorations||[]))),this._register(Vv(this._editors.modified,this._decorations.map(s=>s?.modifiedDecorations||[])))}}class kre{resetSash(){this._sashRatio.set(void 0,void 0)}constructor(e,t){this._options=e,this.dimensions=t,this.sashLeft=ZT(this,i=>{const n=this._sashRatio.read(i)??this._options.splitViewDefaultRatio.read(i);return this._computeSashLeft(n,i)},(i,n)=>{const s=this.dimensions.width.get();this._sashRatio.set(i/s,n)}),this._sashRatio=Ge(this,void 0)}_computeSashLeft(e,t){const i=this.dimensions.width.read(t),n=Math.floor(this._options.splitViewDefaultRatio.read(t)*i),s=this._options.enableSplitViewResizing.read(t)?Math.floor(e*i):n,r=100;return i<=r*2?n:si-r?i-r:s}}class H8 extends z{constructor(e,t,i,n,s,r){super(),this._domNode=e,this._dimensions=t,this._enabled=i,this._boundarySashes=n,this.sashLeft=s,this._resetSash=r,this._sash=this._register(new an(this._domNode,{getVerticalSashTop:a=>0,getVerticalSashLeft:a=>this.sashLeft.get(),getVerticalSashHeight:a=>this._dimensions.height.get()},{orientation:0})),this._startSashPosition=void 0,this._register(this._sash.onDidStart(()=>{this._startSashPosition=this.sashLeft.get()})),this._register(this._sash.onDidChange(a=>{this.sashLeft.set(this._startSashPosition+(a.currentX-a.startX),void 0)})),this._register(this._sash.onDidEnd(()=>this._sash.layout())),this._register(this._sash.onDidReset(()=>this._resetSash())),this._register(We(a=>{const l=this._boundarySashes.read(a);l&&(this._sash.orthogonalEndSash=l.bottom)})),this._register(We(a=>{const l=this._enabled.read(a);this._sash.state=l?3:0,this.sashLeft.read(a),this._dimensions.height.read(a),this._sash.layout()}))}}class Dre extends z{constructor(e,t,i){super(),this._editor=e,this._domNode=t,this.itemProvider=i,this.scrollTop=gt(this,this._editor.onDidScrollChange,r=>this._editor.getScrollTop()),this.isScrollTopZero=this.scrollTop.map(r=>r===0),this.modelAttached=gt(this,this._editor.onDidChangeModel,r=>this._editor.hasModel()),this.editorOnDidChangeViewZones=ks("onDidChangeViewZones",this._editor.onDidChangeViewZones),this.editorOnDidContentSizeChange=ks("onDidContentSizeChange",this._editor.onDidContentSizeChange),this.domNodeSizeChanged=Q_("domNodeSizeChanged"),this.views=new Map,this._domNode.className="gutter monaco-editor";const n=this._domNode.appendChild(tt("div.scroll-decoration",{role:"presentation",ariaHidden:"true",style:{width:"100%"}}).root),s=new ResizeObserver(()=>{Xt(r=>{this.domNodeSizeChanged.trigger(r)})});s.observe(this._domNode),this._register(_e(()=>s.disconnect())),this._register(We(r=>{n.className=this.isScrollTopZero.read(r)?"":"scroll-decoration"})),this._register(We(r=>this.render(r)))}dispose(){super.dispose(),un(this._domNode)}render(e){if(!this.modelAttached.read(e))return;this.domNodeSizeChanged.read(e),this.editorOnDidChangeViewZones.read(e),this.editorOnDidContentSizeChange.read(e);const t=this.scrollTop.read(e),i=this._editor.getVisibleRanges(),n=new Set(this.views.keys()),s=Re.ofStartAndLength(0,this._domNode.clientHeight);if(!s.isEmpty)for(const r of i){const a=new xe(r.startLineNumber,r.endLineNumber+1),l=this.itemProvider.getIntersectingGutterItems(a,e);Xt(c=>{for(const d of l){if(!d.range.intersect(a))continue;n.delete(d.id);let h=this.views.get(d.id);if(h)h.item.set(d,c);else{const p=document.createElement("div");this._domNode.appendChild(p);const _=Ge("item",d),b=this.itemProvider.createView(_,p);h=new Ire(_,b,p),this.views.set(d.id,h)}const u=d.range.startLineNumber<=this._editor.getModel().getLineCount()?this._editor.getTopForLineNumber(d.range.startLineNumber,!0)-t:this._editor.getBottomForLineNumber(d.range.startLineNumber-1,!1)-t,g=(d.range.endLineNumberExclusive===1?Math.max(u,this._editor.getTopForLineNumber(d.range.startLineNumber,!1)-t):Math.max(u,this._editor.getBottomForLineNumber(d.range.endLineNumberExclusive-1,!0)-t))-u;h.domNode.style.top=`${u}px`,h.domNode.style.height=`${g}px`,h.gutterItemView.layout(Re.ofStartAndLength(u,g),s)}})}for(const r of n){const a=this.views.get(r);a.gutterItemView.dispose(),a.domNode.remove(),this.views.delete(r)}}}class Ire{constructor(e,t,i){this.item=e,this.gutterItemView=t,this.domNode=i}}class V8 extends Oh{constructor(e){super(),this._getContext=e}runAction(e,t){const i=this._getContext();return super.runAction(e,i)}}class _4 extends c3{constructor(e){super(),this._textModel=e}getValueOfRange(e){return this._textModel.getValueInRange(e)}get length(){const e=this._textModel.getLineCount(),t=this._textModel.getLineLength(e);return new Po(e-1,t)}}class Ere extends z{constructor(e,t,i={orientation:0}){super(),this.submenuActionViewItems=[],this.hasSecondaryActions=!1,this._onDidChangeDropdownVisibility=this._register(new IW),this.onDidChangeDropdownVisibility=this._onDidChangeDropdownVisibility.event,this.disposables=this._register(new X),i.hoverDelegate=i.hoverDelegate??this._register(QT()),this.options=i,this.toggleMenuAction=this._register(new E_(()=>this.toggleMenuActionViewItem?.show(),i.toggleMenuTitle)),this.element=document.createElement("div"),this.element.className="monaco-toolbar",e.appendChild(this.element),this.actionBar=this._register(new oo(this.element,{orientation:i.orientation,ariaLabel:i.ariaLabel,actionRunner:i.actionRunner,allowContextMenu:i.allowContextMenu,highlightToggledItems:i.highlightToggledItems,hoverDelegate:i.hoverDelegate,actionViewItemProvider:(n,s)=>{if(n.id===E_.ID)return this.toggleMenuActionViewItem=new qC(n,n.menuActions,t,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:Ee.asClassNameArray(i.moreIcon??ie.toolBarMore),anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,isMenu:!0,hoverDelegate:this.options.hoverDelegate}),this.toggleMenuActionViewItem.setActionContext(this.actionBar.context),this.disposables.add(this._onDidChangeDropdownVisibility.add(this.toggleMenuActionViewItem.onDidChangeVisibility)),this.toggleMenuActionViewItem;if(i.actionViewItemProvider){const r=i.actionViewItemProvider(n,s);if(r)return r}if(n instanceof R0){const r=new qC(n,n.actions,t,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:n.class,anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,hoverDelegate:this.options.hoverDelegate});return r.setActionContext(this.actionBar.context),this.submenuActionViewItems.push(r),this.disposables.add(this._onDidChangeDropdownVisibility.add(r.onDidChangeVisibility)),r}}}))}set actionRunner(e){this.actionBar.actionRunner=e}get actionRunner(){return this.actionBar.actionRunner}getElement(){return this.element}getItemAction(e){return this.actionBar.getAction(e)}setActions(e,t){this.clear();const i=e?e.slice(0):[];this.hasSecondaryActions=!!(t&&t.length>0),this.hasSecondaryActions&&t&&(this.toggleMenuAction.menuActions=t.slice(0),i.push(this.toggleMenuAction)),i.forEach(n=>{this.actionBar.push(n,{icon:this.options.icon??!0,label:this.options.label??!1,keybinding:this.getKeybindingLabel(n)})})}getKeybindingLabel(e){return this.options.getKeyBinding?.(e)?.getLabel()??void 0}clear(){this.submenuActionViewItems=[],this.disposables.clear(),this.actionBar.clear()}dispose(){this.clear(),this.disposables.dispose(),super.dispose()}}const l0=class l0 extends Fs{constructor(e,t){t=t||m("moreActions","More Actions..."),super(l0.ID,t,void 0,!0),this._menuActions=[],this.toggleDropdownMenu=e}async run(){this.toggleDropdownMenu()}get menuActions(){return this._menuActions}set menuActions(e){this._menuActions=e}};l0.ID="toolbar.toggle.more";let E_=l0;var z8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Do=function(o,e){return function(t,i){e(t,i,o)}};let $v=class extends Ere{constructor(e,t,i,n,s,r,a,l){super(e,s,{getKeyBinding:d=>r.lookupKeybinding(d.id)??void 0,...t,allowContextMenu:!0,skipTelemetry:typeof t?.telemetrySource=="string"}),this._options=t,this._menuService=i,this._contextKeyService=n,this._contextMenuService=s,this._keybindingService=r,this._commandService=a,this._sessionDisposables=this._store.add(new X);const c=t?.telemetrySource;c&&this._store.add(this.actionBar.onDidRun(d=>l.publicLog2("workbenchActionExecuted",{id:d.action.id,from:c})))}setActions(e,t=[],i){this._sessionDisposables.clear();const n=e.slice(),s=t.slice(),r=[];let a=0;const l=[];let c=!1;if(this._options?.hiddenItemStrategy!==-1)for(let d=0;df?.id)),h=this._options.overflowBehavior.maxItems-d.size;let u=0;for(let f=0;f=h&&(n[f]=void 0,l[f]=g))}}RM(n),RM(l),super.setActions(n,Gi.join(l,s)),(r.length>0||n.length>0)&&this._sessionDisposables.add(U(this.getElement(),"contextmenu",d=>{const h=new ur(fe(this.getElement()),d),u=this.getItemAction(h.target);if(!u)return;h.preventDefault(),h.stopPropagation();const f=[];if(u instanceof so&&u.menuKeybinding)f.push(u.menuKeybinding);else if(!(u instanceof Zm||u instanceof E_)){const p=!!this._keybindingService.lookupKeybinding(u.id);f.push(o8(this._commandService,this._keybindingService,u.id,void 0,p))}if(r.length>0){let p=!1;if(a===1&&this._options?.hiddenItemStrategy===0){p=!0;for(let _=0;_this._menuService.resetHiddenStates(i)}))),g.length!==0&&this._contextMenuService.showContextMenu({getAnchor:()=>h,getActions:()=>g,menuId:this._options?.contextMenu,menuActionOptions:{renderShortTitle:!0,...this._options?.menuOptions},skipTelemetry:typeof this._options?.telemetrySource=="string",contextKeyService:this._contextKeyService})}))}};$v=z8([Do(2,yr),Do(3,De),Do(4,Lr),Do(5,vt),Do(6,hi),Do(7,$s)],$v);let Kv=class extends $v{constructor(e,t,i,n,s,r,a,l,c){super(e,{resetMenu:t,...i},n,s,r,a,l,c),this._onDidChangeMenuItems=this._store.add(new A),this.onDidChangeMenuItems=this._onDidChangeMenuItems.event;const d=this._store.add(n.createMenu(t,s,{emitEventsForSubmenuChanges:!0})),h=()=>{const u=[],f=[];XT(d,i?.menuOptions,{primary:u,secondary:f},i?.toolbarOptions?.primaryGroup,i?.toolbarOptions?.shouldInlineSubmenu,i?.toolbarOptions?.useSeparatorsInPrimaryActions),e.classList.toggle("has-no-actions",u.length===0&&f.length===0),super.setActions(u,f)};this._store.add(d.onDidChange(()=>{h(),this._onDidChangeMenuItems.fire(this)})),h()}setActions(){throw new nt("This toolbar is populated from a menu.")}};Kv=z8([Do(3,yr),Do(4,De),Do(5,Lr),Do(6,vt),Do(7,hi),Do(8,$s)],Kv);var U8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},j1=function(o,e){return function(t,i){e(t,i,o)}};const dL=[],a1=35;let YI=class extends z{constructor(e,t,i,n,s,r,a,l,c){super(),this._diffModel=t,this._editors=i,this._options=n,this._sashLayout=s,this._boundarySashes=r,this._instantiationService=a,this._contextKeyService=l,this._menuService=c,this._menu=this._register(this._menuService.createMenu($e.DiffEditorHunkToolbar,this._contextKeyService)),this._actions=gt(this,this._menu.onDidChange,()=>this._menu.getActions()),this._hasActions=this._actions.map(d=>d.length>0),this._showSash=Ce(this,d=>this._options.renderSideBySide.read(d)&&this._hasActions.read(d)),this.width=Ce(this,d=>this._hasActions.read(d)?a1:0),this.elements=tt("div.gutter@gutter",{style:{position:"absolute",height:"100%",width:a1+"px"}},[]),this._currentDiff=Ce(this,d=>{const h=this._diffModel.read(d);if(!h)return;const u=h.diff.read(d)?.mappings,f=this._editors.modifiedCursor.read(d);if(f)return u?.find(g=>g.lineRangeMapping.modified.contains(f.lineNumber))}),this._selectedDiffs=Ce(this,d=>{const u=this._diffModel.read(d)?.diff.read(d);if(!u)return dL;const f=this._editors.modifiedSelections.read(d);if(f.every(b=>b.isEmpty()))return dL;const g=new to(f.map(b=>xe.fromRangeInclusive(b))),_=u.mappings.filter(b=>b.lineRangeMapping.innerChanges&&g.intersects(b.lineRangeMapping.modified)).map(b=>({mapping:b,rangeMappings:b.lineRangeMapping.innerChanges.filter(C=>f.some(w=>I.areIntersecting(C.modifiedRange,w)))}));return _.length===0||_.every(b=>b.rangeMappings.length===0)?dL:_}),this._register(Zoe(e,this.elements.root)),this._register(U(this.elements.root,"click",()=>{this._editors.modified.focus()})),this._register(Vc(this.elements.root,{display:this._hasActions.map(d=>d?"block":"none")})),tr(this,d=>this._showSash.read(d)?new H8(e,this._sashLayout.dimensions,this._options.enableSplitViewResizing,this._boundarySashes,ZT(this,u=>this._sashLayout.sashLeft.read(u)-a1,(u,f)=>this._sashLayout.sashLeft.set(u+a1,f)),()=>this._sashLayout.resetSash()):void 0).recomputeInitiallyAndOnChange(this._store),this._register(new Dre(this._editors.modified,this.elements.root,{getIntersectingGutterItems:(d,h)=>{const u=this._diffModel.read(h);if(!u)return[];const f=u.diff.read(h);if(!f)return[];const g=this._selectedDiffs.read(h);if(g.length>0){const _=Ws.fromRangeMappings(g.flatMap(b=>b.rangeMappings));return[new b4(_,!0,$e.DiffEditorSelectionToolbar,void 0,u.model.original.uri,u.model.modified.uri)]}const p=this._currentDiff.read(h);return f.mappings.map(_=>new b4(_.lineRangeMapping.withInnerChangesFromLineRanges(),_.lineRangeMapping===p?.lineRangeMapping,$e.DiffEditorHunkToolbar,void 0,u.model.original.uri,u.model.modified.uri))},createView:(d,h)=>this._instantiationService.createInstance(QI,d,h,this)})),this._register(U(this.elements.gutter,ee.MOUSE_WHEEL,d=>{this._editors.modified.getOption(104).handleMouseWheel&&this._editors.modified.delegateScrollFromMouseWheelEvent(d)},{passive:!1}))}computeStagedValue(e){const t=e.innerChanges??[],i=new _4(this._editors.modifiedModel.get()),n=new _4(this._editors.original.getModel());return new gT(t.map(a=>a.toTextEdit(i))).apply(n)}layout(e){this.elements.gutter.style.left=e+"px"}};YI=U8([j1(6,ke),j1(7,De),j1(8,yr)],YI);class b4{constructor(e,t,i,n,s,r){this.mapping=e,this.showAlways=t,this.menuId=i,this.rangeOverride=n,this.originalUri=s,this.modifiedUri=r}get id(){return this.mapping.modified.toString()}get range(){return this.rangeOverride??this.mapping.modified}}let QI=class extends z{constructor(e,t,i,n){super(),this._item=e,this._elements=tt("div.gutterItem",{style:{height:"20px",width:"34px"}},[tt("div.background@background",{},[]),tt("div.buttons@buttons",{},[])]),this._showAlways=this._item.map(this,r=>r.showAlways),this._menuId=this._item.map(this,r=>r.menuId),this._isSmall=Ge(this,!1),this._lastItemRange=void 0,this._lastViewRange=void 0;const s=this._register(n.createInstance(gg,"element",!0,{position:{hoverPosition:1}}));this._register(Bm(t,this._elements.root)),this._register(We(r=>{const a=this._showAlways.read(r);this._elements.root.classList.toggle("noTransition",!0),this._elements.root.classList.toggle("showAlways",a),setTimeout(()=>{this._elements.root.classList.toggle("noTransition",!1)},0)})),this._register(To((r,a)=>{this._elements.buttons.replaceChildren();const l=a.add(n.createInstance(Kv,this._elements.buttons,this._menuId.read(r),{orientation:1,hoverDelegate:s,toolbarOptions:{primaryGroup:c=>c.startsWith("primary")},overflowBehavior:{maxItems:this._isSmall.read(r)?1:3},hiddenItemStrategy:0,actionRunner:new V8(()=>{const c=this._item.get(),d=c.mapping;return{mapping:d,originalWithModifiedChanges:i.computeStagedValue(d),originalUri:c.originalUri,modifiedUri:c.modifiedUri}}),menuOptions:{shouldForwardArgs:!0}}));a.add(l.onDidChangeMenuItems(()=>{this._lastItemRange&&this.layout(this._lastItemRange,this._lastViewRange)}))}))}layout(e,t){this._lastItemRange=e,this._lastViewRange=t;let i=this._elements.buttons.clientHeight;this._isSmall.set(this._item.get().mapping.original.startLineNumber===1&&e.length<30,void 0),i=this._elements.buttons.clientHeight;const n=e.length/2-i/2,s=i;let r=e.start+n;const a=Re.tryCreate(s,t.endExclusive-s-i),l=Re.tryCreate(e.start+s,e.endExclusive-i-s);l&&a&&l.start{const n=Ql._map.get(e);n&&(Ql._map.delete(e),n.dispose(),i.dispose())})}return t}_beginUpdate(){this._updateCounter++,this._updateCounter===1&&(this._currentTransaction=new Ug(()=>{}))}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){const e=this._currentTransaction;this._currentTransaction=void 0,e.finish()}}constructor(e){super(),this.editor=e,this._updateCounter=0,this._currentTransaction=void 0,this._model=Ge(this,this.editor.getModel()),this.model=this._model,this.isReadonly=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(92)),this._versionId=iD({owner:this,lazy:!0},this.editor.getModel()?.getVersionId()??null),this.versionId=this._versionId,this._selections=iD({owner:this,equalsFn:Jk(Xk(Fe.selectionsEqual)),lazy:!0},this.editor.getSelections()??null),this.selections=this._selections,this.isFocused=gt(this,t=>{const i=this.editor.onDidFocusEditorWidget(t),n=this.editor.onDidBlurEditorWidget(t);return{dispose(){i.dispose(),n.dispose()}}},()=>this.editor.hasWidgetFocus()),this.value=ZT(this,t=>(this.versionId.read(t),this.model.read(t)?.getValue()??""),(t,i)=>{const n=this.model.get();n!==null&&t!==n.getValue()&&n.setValue(t)}),this.valueIsEmpty=Ce(this,t=>(this.versionId.read(t),this.editor.getModel()?.getValueLength()===0)),this.cursorSelection=dr({owner:this,equalsFn:Jk(Fe.selectionsEqual)},t=>this.selections.read(t)?.[0]??null),this.onDidType=Q_(this),this.scrollTop=gt(this.editor.onDidScrollChange,()=>this.editor.getScrollTop()),this.scrollLeft=gt(this.editor.onDidScrollChange,()=>this.editor.getScrollLeft()),this.layoutInfo=gt(this.editor.onDidLayoutChange,()=>this.editor.getLayoutInfo()),this.layoutInfoContentLeft=this.layoutInfo.map(t=>t.contentLeft),this.layoutInfoDecorationsLeft=this.layoutInfo.map(t=>t.decorationsLeft),this.contentWidth=gt(this.editor.onDidContentSizeChange,()=>this.editor.getContentWidth()),this._overlayWidgetCounter=0,this._register(this.editor.onBeginUpdate(()=>this._beginUpdate())),this._register(this.editor.onEndUpdate(()=>this._endUpdate())),this._register(this.editor.onDidChangeModel(()=>{this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidType(t=>{this._beginUpdate();try{this._forceUpdate(),this.onDidType.trigger(this._currentTransaction,t)}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeModelContent(t=>{this._beginUpdate();try{this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeCursorSelection(t=>{this._beginUpdate();try{this._selections.set(this.editor.getSelections(),this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}}))}forceUpdate(e){this._beginUpdate();try{return this._forceUpdate(),e?e(this._currentTransaction):void 0}finally{this._endUpdate()}}_forceUpdate(){this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,void 0),this._selections.set(this.editor.getSelections(),this._currentTransaction,void 0)}finally{this._endUpdate()}}getOption(e){return gt(this,t=>this.editor.onDidChangeConfiguration(i=>{i.hasChanged(e)&&t(void 0)}),()=>this.editor.getOption(e))}setDecorations(e){const t=new X,i=this.editor.createDecorationsCollection();return t.add(Z_({owner:this,debugName:()=>`Apply decorations from ${e.debugName}`},n=>{const s=e.read(n);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}createOverlayWidget(e){const t="observableOverlayWidget"+this._overlayWidgetCounter++,i={getDomNode:()=>e.domNode,getPosition:()=>e.position.get(),getId:()=>t,allowEditorOverflow:e.allowEditorOverflow,getMinContentWidthInPx:()=>e.minContentWidthInPx.get()};this.editor.addOverlayWidget(i);const n=We(s=>{e.position.read(s),e.minContentWidthInPx.read(s),this.editor.layoutOverlayWidget(i)});return _e(()=>{n.dispose(),this.editor.removeOverlayWidget(i)})}};Ql._map=new Map;let XI=Ql;function JI(o,e){return zZ({createEmptyChangeSummary:()=>({deltas:[],didChange:!1}),handleChange:(t,i)=>{if(t.didChange(o)){const n=t.change;n!==void 0&&i.deltas.push(n),i.didChange=!0}return!0}},(t,i)=>{const n=o.read(t);i.didChange&&e(n,i.deltas)})}function Nre(o,e){const t=new X,i=JI(o,(n,s)=>{t.clear(),e(n,s,t)});return{dispose(){i.dispose(),t.dispose()}}}var Tre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Mre=function(o,e){return function(t,i){e(t,i,o)}},q1,uh;let eE=(uh=class extends z{static setBreadcrumbsSourceFactory(e){this._breadcrumbsSourceFactory.set(e,void 0)}get isUpdatingHiddenAreas(){return this._isUpdatingHiddenAreas}constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._instantiationService=n,this._modifiedOutlineSource=tr(this,l=>{const c=this._editors.modifiedModel.read(l),d=q1._breadcrumbsSourceFactory.read(l);return!c||!d?void 0:d(c,this._instantiationService)}),this._isUpdatingHiddenAreas=!1,this._register(this._editors.original.onDidChangeCursorPosition(l=>{if(l.reason===1)return;const c=this._diffModel.get();Xt(d=>{for(const h of this._editors.original.getSelections()||[])c?.ensureOriginalLineIsVisible(h.getStartPosition().lineNumber,0,d),c?.ensureOriginalLineIsVisible(h.getEndPosition().lineNumber,0,d)})})),this._register(this._editors.modified.onDidChangeCursorPosition(l=>{if(l.reason===1)return;const c=this._diffModel.get();Xt(d=>{for(const h of this._editors.modified.getSelections()||[])c?.ensureModifiedLineIsVisible(h.getStartPosition().lineNumber,0,d),c?.ensureModifiedLineIsVisible(h.getEndPosition().lineNumber,0,d)})}));const s=this._diffModel.map((l,c)=>{const d=l?.unchangedRegions.read(c)??[];return d.length===1&&d[0].modifiedLineNumber===1&&d[0].lineCount===this._editors.modifiedModel.read(c)?.getLineCount()?[]:d});this.viewZones=cu(this,(l,c)=>{const d=this._modifiedOutlineSource.read(l);if(!d)return{origViewZones:[],modViewZones:[]};const h=[],u=[],f=this._options.renderSideBySide.read(l),g=this._options.compactMode.read(l),p=s.read(l);for(let _=0;_b.getHiddenOriginalRange(v).startLineNumber-1),w=new ff(C,12);h.push(w),c.add(new C4(this._editors.original,w,b,!f))}{const C=Ce(this,v=>b.getHiddenModifiedRange(v).startLineNumber-1),w=new ff(C,12);u.push(w),c.add(new C4(this._editors.modified,w,b))}}else{{const C=Ce(this,v=>b.getHiddenOriginalRange(v).startLineNumber-1),w=new ff(C,24);h.push(w),c.add(new v4(this._editors.original,w,b,b.originalUnchangedRange,!f,d,v=>this._diffModel.get().ensureModifiedLineIsVisible(v,2,void 0),this._options))}{const C=Ce(this,v=>b.getHiddenModifiedRange(v).startLineNumber-1),w=new ff(C,24);u.push(w),c.add(new v4(this._editors.modified,w,b,b.modifiedUnchangedRange,!1,d,v=>this._diffModel.get().ensureModifiedLineIsVisible(v,2,void 0),this._options))}}}return{origViewZones:h,modViewZones:u}});const r={description:"unchanged lines",className:"diff-unchanged-lines",isWholeLine:!0},a={description:"Fold Unchanged",glyphMarginHoverMessage:new Js(void 0,{isTrusted:!0,supportThemeIcons:!0}).appendMarkdown(m("foldUnchanged","Fold Unchanged Region")),glyphMarginClassName:"fold-unchanged "+Ee.asClassName(ie.fold),zIndex:10001};this._register(Vv(this._editors.original,Ce(this,l=>{const c=s.read(l),d=c.map(h=>({range:h.originalUnchangedRange.toInclusiveRange(),options:r}));for(const h of c)h.shouldHideControls(l)&&d.push({range:I.fromPositions(new P(h.originalLineNumber,1)),options:a});return d}))),this._register(Vv(this._editors.modified,Ce(this,l=>{const c=s.read(l),d=c.map(h=>({range:h.modifiedUnchangedRange.toInclusiveRange(),options:r}));for(const h of c)h.shouldHideControls(l)&&d.push({range:xe.ofLength(h.modifiedLineNumber,1).toInclusiveRange(),options:a});return d}))),this._register(We(l=>{const c=s.read(l);this._isUpdatingHiddenAreas=!0;try{this._editors.original.setHiddenAreas(c.map(d=>d.getHiddenOriginalRange(l).toInclusiveRange()).filter(_l)),this._editors.modified.setHiddenAreas(c.map(d=>d.getHiddenModifiedRange(l).toInclusiveRange()).filter(_l))}finally{this._isUpdatingHiddenAreas=!1}})),this._register(this._editors.modified.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){const c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;const h=d.unchangedRegions.get().find(u=>u.modifiedUnchangedRange.includes(c));if(!h)return;h.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}})),this._register(this._editors.original.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){const c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;const h=d.unchangedRegions.get().find(u=>u.originalUnchangedRange.includes(c));if(!h)return;h.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}}))}},q1=uh,uh._breadcrumbsSourceFactory=Ge(q1,()=>({dispose(){},getBreadcrumbItems(e,t){return[]}})),uh);eE=q1=Tre([Mre(3,ke)],eE);class C4 extends J2{constructor(e,t,i,n=!1){const s=tt("div.diff-hidden-lines-widget");super(e,t,s.root),this._unchangedRegion=i,this._hide=n,this._nodes=tt("div.diff-hidden-lines-compact",[tt("div.line-left",[]),tt("div.text@text",[]),tt("div.line-right",[])]),s.root.appendChild(this._nodes.root),this._hide&&this._nodes.root.replaceChildren(),this._register(We(r=>{if(!this._hide){const a=this._unchangedRegion.getHiddenModifiedRange(r).length,l=m("hiddenLines","{0} hidden lines",a);this._nodes.text.innerText=l}}))}}class v4 extends J2{constructor(e,t,i,n,s,r,a,l){const c=tt("div.diff-hidden-lines-widget");super(e,t,c.root),this._editor=e,this._unchangedRegion=i,this._unchangedRegionRange=n,this._hide=s,this._modifiedOutlineSource=r,this._revealModifiedHiddenLine=a,this._options=l,this._nodes=tt("div.diff-hidden-lines",[tt("div.top@top",{title:m("diff.hiddenLines.top","Click or drag to show more above")}),tt("div.center@content",{style:{display:"flex"}},[tt("div@first",{style:{display:"flex",justifyContent:"center",alignItems:"center",flexShrink:"0"}},[ce("a",{title:m("showUnchangedRegion","Show Unchanged Region"),role:"button",onclick:()=>{this._unchangedRegion.showAll(void 0)}},...Qd("$(unfold)"))]),tt("div@others",{style:{display:"flex",justifyContent:"center",alignItems:"center"}})]),tt("div.bottom@bottom",{title:m("diff.bottom","Click or drag to show more below"),role:"button"})]),c.root.appendChild(this._nodes.root),this._hide?un(this._nodes.first):this._register(Vc(this._nodes.first,{width:Dg(this._editor).layoutInfoContentLeft})),this._register(We(h=>{const u=this._unchangedRegion.visibleLineCountTop.read(h)+this._unchangedRegion.visibleLineCountBottom.read(h)===this._unchangedRegion.lineCount;this._nodes.bottom.classList.toggle("canMoveTop",!u),this._nodes.bottom.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(h)>0),this._nodes.top.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(h)>0),this._nodes.top.classList.toggle("canMoveBottom",!u);const f=this._unchangedRegion.isDragged.read(h),g=this._editor.getDomNode();g&&(g.classList.toggle("draggingUnchangedRegion",!!f),f==="top"?(g.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(h)>0),g.classList.toggle("canMoveBottom",!u)):f==="bottom"?(g.classList.toggle("canMoveTop",!u),g.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(h)>0)):(g.classList.toggle("canMoveTop",!1),g.classList.toggle("canMoveBottom",!1)))}));const d=this._editor;this._register(U(this._nodes.top,"mousedown",h=>{if(h.button!==0)return;this._nodes.top.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),h.preventDefault();const u=h.clientY;let f=!1;const g=this._unchangedRegion.visibleLineCountTop.get();this._unchangedRegion.isDragged.set("top",void 0);const p=fe(this._nodes.top),_=U(p,"mousemove",C=>{const v=C.clientY-u;f=f||Math.abs(v)>2;const y=Math.round(v/d.getOption(67)),x=Math.max(0,Math.min(g+y,this._unchangedRegion.getMaxVisibleLineCountTop()));this._unchangedRegion.visibleLineCountTop.set(x,void 0)}),b=U(p,"mouseup",C=>{f||this._unchangedRegion.showMoreAbove(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0),this._nodes.top.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),this._unchangedRegion.isDragged.set(void 0,void 0),_.dispose(),b.dispose()})})),this._register(U(this._nodes.bottom,"mousedown",h=>{if(h.button!==0)return;this._nodes.bottom.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),h.preventDefault();const u=h.clientY;let f=!1;const g=this._unchangedRegion.visibleLineCountBottom.get();this._unchangedRegion.isDragged.set("bottom",void 0);const p=fe(this._nodes.bottom),_=U(p,"mousemove",C=>{const v=C.clientY-u;f=f||Math.abs(v)>2;const y=Math.round(v/d.getOption(67)),x=Math.max(0,Math.min(g-y,this._unchangedRegion.getMaxVisibleLineCountBottom())),L=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.visibleLineCountBottom.set(x,void 0);const E=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(E-L))}),b=U(p,"mouseup",C=>{if(this._unchangedRegion.isDragged.set(void 0,void 0),!f){const w=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.showMoreBelow(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0);const v=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(v-w))}this._nodes.bottom.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),_.dispose(),b.dispose()})})),this._register(We(h=>{const u=[];if(!this._hide){const f=i.getHiddenModifiedRange(h).length,g=m("hiddenLines","{0} hidden lines",f),p=ce("span",{title:m("diff.hiddenLines.expandAll","Double click to unfold")},g);p.addEventListener("dblclick",C=>{C.button===0&&(C.preventDefault(),this._unchangedRegion.showAll(void 0))}),u.push(p);const _=this._unchangedRegion.getHiddenModifiedRange(h),b=this._modifiedOutlineSource.getBreadcrumbItems(_,h);if(b.length>0){u.push(ce("span",void 0,"  |  "));for(let C=0;C{this._revealModifiedHiddenLine(w.startLineNumber)}}}}un(this._nodes.others,...u)}))}}var Rre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Are=function(o,e){return function(t,i){e(t,i,o)}},Go,gl;let N_=(gl=class extends z{constructor(e,t,i,n,s,r,a){super(),this._editors=e,this._rootElement=t,this._diffModel=i,this._rootWidth=n,this._rootHeight=s,this._modifiedEditorLayoutInfo=r,this._themeService=a,this.width=Go.ENTIRE_DIFF_OVERVIEW_WIDTH;const l=gt(this._themeService.onDidColorThemeChange,()=>this._themeService.getColorTheme()),c=Ce(u=>{const f=l.read(u),g=f.getColor(PK)||(f.getColor(RK)||xk).transparent(2),p=f.getColor(OK)||(f.getColor(AK)||kk).transparent(2);return{insertColor:g,removeColor:p}}),d=ot(document.createElement("div"));d.setClassName("diffViewport"),d.setPosition("absolute");const h=tt("div.diffOverview",{style:{position:"absolute",top:"0px",width:Go.ENTIRE_DIFF_OVERVIEW_WIDTH+"px"}}).root;this._register(Bm(h,d.domNode)),this._register(jt(h,ee.POINTER_DOWN,u=>{this._editors.modified.delegateVerticalScrollbarPointerDown(u)})),this._register(U(h,ee.MOUSE_WHEEL,u=>{this._editors.modified.delegateScrollFromMouseWheelEvent(u)},{passive:!1})),this._register(Bm(this._rootElement,h)),this._register(To((u,f)=>{const g=this._diffModel.read(u),p=this._editors.original.createOverviewRuler("original diffOverviewRuler");p&&(f.add(p),f.add(Bm(h,p.getDomNode())));const _=this._editors.modified.createOverviewRuler("modified diffOverviewRuler");if(_&&(f.add(_),f.add(Bm(h,_.getDomNode()))),!p||!_)return;const b=ks("viewZoneChanged",this._editors.original.onDidChangeViewZones),C=ks("viewZoneChanged",this._editors.modified.onDidChangeViewZones),w=ks("hiddenRangesChanged",this._editors.original.onDidChangeHiddenAreas),v=ks("hiddenRangesChanged",this._editors.modified.onDidChangeHiddenAreas);f.add(We(y=>{b.read(y),C.read(y),w.read(y),v.read(y);const x=c.read(y),L=g?.diff.read(y)?.mappings;function E(F,W,j){const B=j._getViewModel();return B?F.filter(G=>G.length>0).map(G=>{const ne=B.coordinatesConverter.convertModelPositionToViewPosition(new P(G.startLineNumber,1)),ae=B.coordinatesConverter.convertModelPositionToViewPosition(new P(G.endLineNumberExclusive,1)),de=ae.lineNumber-ne.lineNumber;return new E8(ne.lineNumber,ae.lineNumber,de,W.toString())}):[]}const N=E((L||[]).map(F=>F.lineRangeMapping.original),x.removeColor,this._editors.original),H=E((L||[]).map(F=>F.lineRangeMapping.modified),x.insertColor,this._editors.modified);p?.setZones(N),_?.setZones(H)})),f.add(We(y=>{const x=this._rootHeight.read(y),L=this._rootWidth.read(y),E=this._modifiedEditorLayoutInfo.read(y);if(E){const N=Go.ENTIRE_DIFF_OVERVIEW_WIDTH-2*Go.ONE_OVERVIEW_WIDTH;p.setLayout({top:0,height:x,right:N+Go.ONE_OVERVIEW_WIDTH,width:Go.ONE_OVERVIEW_WIDTH}),_.setLayout({top:0,height:x,right:0,width:Go.ONE_OVERVIEW_WIDTH});const H=this._editors.modifiedScrollTop.read(y),F=this._editors.modifiedScrollHeight.read(y),W=this._editors.modified.getOption(104),j=new pg(W.verticalHasArrows?W.arrowSize:0,W.verticalScrollbarSize,0,E.height,F,H);d.setTop(j.getSliderPosition()),d.setHeight(j.getSliderSize())}else d.setTop(0),d.setHeight(0);h.style.height=x+"px",h.style.left=L-Go.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",d.setWidth(Go.ENTIRE_DIFF_OVERVIEW_WIDTH)}))}))}},Go=gl,gl.ONE_OVERVIEW_WIDTH=15,gl.ENTIRE_DIFF_OVERVIEW_WIDTH=gl.ONE_OVERVIEW_WIDTH*2,gl);N_=Go=Rre([Are(6,en)],N_);const hL=[];class Pre extends z{constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._widget=n,this._selectedDiffs=Ce(this,s=>{const a=this._diffModel.read(s)?.diff.read(s);if(!a)return hL;const l=this._editors.modifiedSelections.read(s);if(l.every(u=>u.isEmpty()))return hL;const c=new to(l.map(u=>xe.fromRangeInclusive(u))),h=a.mappings.filter(u=>u.lineRangeMapping.innerChanges&&c.intersects(u.lineRangeMapping.modified)).map(u=>({mapping:u,rangeMappings:u.lineRangeMapping.innerChanges.filter(f=>l.some(g=>I.areIntersecting(f.modifiedRange,g)))}));return h.length===0||h.every(u=>u.rangeMappings.length===0)?hL:h}),this._register(To((s,r)=>{if(!this._options.shouldRenderOldRevertArrows.read(s))return;const a=this._diffModel.read(s),l=a?.diff.read(s);if(!a||!l||a.movedTextToCompare.read(s))return;const c=[],d=this._selectedDiffs.read(s),h=new Set(d.map(u=>u.mapping));if(d.length>0){const u=this._editors.modifiedSelections.read(s),f=r.add(new jv(u[u.length-1].positionLineNumber,this._widget,d.flatMap(g=>g.rangeMappings),!0));this._editors.modified.addGlyphMarginWidget(f),c.push(f)}for(const u of l.mappings)if(!h.has(u)&&!u.lineRangeMapping.modified.isEmpty&&u.lineRangeMapping.innerChanges){const f=r.add(new jv(u.lineRangeMapping.modified.startLineNumber,this._widget,u.lineRangeMapping,!1));this._editors.modified.addGlyphMarginWidget(f),c.push(f)}r.add(_e(()=>{for(const u of c)this._editors.modified.removeGlyphMarginWidget(u)}))}))}}const c0=class c0 extends z{getId(){return this._id}constructor(e,t,i,n){super(),this._lineNumber=e,this._widget=t,this._diffs=i,this._revertSelection=n,this._id=`revertButton${c0.counter++}`,this._domNode=tt("div.revertButton",{title:this._revertSelection?m("revertSelectedChanges","Revert Selected Changes"):m("revertChange","Revert Change")},[BC(ie.arrowRight)]).root,this._register(U(this._domNode,ee.MOUSE_DOWN,s=>{s.button!==2&&(s.stopPropagation(),s.preventDefault())})),this._register(U(this._domNode,ee.MOUSE_UP,s=>{s.stopPropagation(),s.preventDefault()})),this._register(U(this._domNode,ee.CLICK,s=>{this._diffs instanceof hn?this._widget.revert(this._diffs):this._widget.revertRangeMappings(this._diffs),s.stopPropagation(),s.preventDefault()}))}getDomNode(){return this._domNode}getPosition(){return{lane:Ao.Right,range:{startColumn:1,startLineNumber:this._lineNumber,endColumn:1,endLineNumber:this._lineNumber},zIndex:10001}}};c0.counter=0;let jv=c0;function Pa(o,e,t){const i=o.bindTo(e);return Z_({debugName:()=>`Set Context Key "${o.key}"`},n=>{i.set(t(n))})}var Ore=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},w4=function(o,e){return function(t,i){e(t,i,o)}};let tE=class extends z{get onDidContentSizeChange(){return this._onDidContentSizeChange.event}constructor(e,t,i,n,s,r,a){super(),this.originalEditorElement=e,this.modifiedEditorElement=t,this._options=i,this._argCodeEditorWidgetOptions=n,this._createInnerEditor=s,this._instantiationService=r,this._keybindingService=a,this.original=this._register(this._createLeftHandSideEditor(this._options.editorOptions.get(),this._argCodeEditorWidgetOptions.originalEditor||{})),this.modified=this._register(this._createRightHandSideEditor(this._options.editorOptions.get(),this._argCodeEditorWidgetOptions.modifiedEditor||{})),this._onDidContentSizeChange=this._register(new A),this.modifiedScrollTop=gt(this,this.modified.onDidScrollChange,()=>this.modified.getScrollTop()),this.modifiedScrollHeight=gt(this,this.modified.onDidScrollChange,()=>this.modified.getScrollHeight()),this.modifiedObs=Dg(this.modified),this.originalObs=Dg(this.original),this.modifiedModel=this.modifiedObs.model,this.modifiedSelections=gt(this,this.modified.onDidChangeCursorSelection,()=>this.modified.getSelections()??[]),this.modifiedCursor=dr({owner:this,equalsFn:P.equals},l=>this.modifiedSelections.read(l)[0]?.getPosition()??new P(1,1)),this.originalCursor=gt(this,this.original.onDidChangeCursorPosition,()=>this.original.getPosition()??new P(1,1)),this._argCodeEditorWidgetOptions=null,this._register(Y_({createEmptyChangeSummary:()=>({}),handleChange:(l,c)=>(l.didChange(i.editorOptions)&&Object.assign(c,l.change.changedOptions),!0)},(l,c)=>{i.editorOptions.read(l),this._options.renderSideBySide.read(l),this.modified.updateOptions(this._adjustOptionsForRightHandSide(l,c)),this.original.updateOptions(this._adjustOptionsForLeftHandSide(l,c))}))}_createLeftHandSideEditor(e,t){const i=this._adjustOptionsForLeftHandSide(void 0,e),n=this._constructInnerEditor(this._instantiationService,this.originalEditorElement,i,t);return n.setContextValue("isInDiffLeftEditor",!0),n}_createRightHandSideEditor(e,t){const i=this._adjustOptionsForRightHandSide(void 0,e),n=this._constructInnerEditor(this._instantiationService,this.modifiedEditorElement,i,t);return n.setContextValue("isInDiffRightEditor",!0),n}_constructInnerEditor(e,t,i,n){const s=this._createInnerEditor(e,t,i,n);return this._register(s.onDidContentSizeChange(r=>{const a=this.original.getContentWidth()+this.modified.getContentWidth()+N_.ENTIRE_DIFF_OVERVIEW_WIDTH,l=Math.max(this.modified.getContentHeight(),this.original.getContentHeight());this._onDidContentSizeChange.fire({contentHeight:l,contentWidth:a,contentHeightChanged:r.contentHeightChanged,contentWidthChanged:r.contentWidthChanged})})),s}_adjustOptionsForLeftHandSide(e,t){const i=this._adjustOptionsForSubEditor(t);return this._options.renderSideBySide.get()?(i.unicodeHighlight=this._options.editorOptions.get().unicodeHighlight||{},i.wordWrapOverride1=this._options.diffWordWrap.get()):(i.wordWrapOverride1="off",i.wordWrapOverride2="off",i.stickyScroll={enabled:!1},i.unicodeHighlight={nonBasicASCII:!1,ambiguousCharacters:!1,invisibleCharacters:!1}),i.glyphMargin=this._options.renderSideBySide.get(),t.originalAriaLabel&&(i.ariaLabel=t.originalAriaLabel),i.ariaLabel=this._updateAriaLabel(i.ariaLabel),i.readOnly=!this._options.originalEditable.get(),i.dropIntoEditor={enabled:!i.readOnly},i.extraEditorClassName="original-in-monaco-diff-editor",i}_adjustOptionsForRightHandSide(e,t){const i=this._adjustOptionsForSubEditor(t);return t.modifiedAriaLabel&&(i.ariaLabel=t.modifiedAriaLabel),i.ariaLabel=this._updateAriaLabel(i.ariaLabel),i.wordWrapOverride1=this._options.diffWordWrap.get(),i.revealHorizontalRightPadding=Xh.revealHorizontalRightPadding.defaultValue+N_.ENTIRE_DIFF_OVERVIEW_WIDTH,i.scrollbar.verticalHasArrows=!1,i.extraEditorClassName="modified-in-monaco-diff-editor",i}_adjustOptionsForSubEditor(e){const t={...e,dimension:{height:0,width:0}};return t.inDiffEditor=!0,t.automaticLayout=!1,t.scrollbar={...t.scrollbar||{}},t.folding=!1,t.codeLens=this._options.diffCodeLens.get(),t.fixedOverflowWidgets=!0,t.minimap={...t.minimap||{}},t.minimap.enabled=!1,this._options.hideUnchangedRegions.get()?t.stickyScroll={enabled:!1}:t.stickyScroll=this._options.editorOptions.get().stickyScroll,t}_updateAriaLabel(e){e||(e="");const t=m("diff-aria-navigation-tip"," use {0} to open the accessibility help.",this._keybindingService.lookupKeybinding("editor.action.accessibilityHelp")?.getAriaLabel());return this._options.accessibilityVerbose.get()?e+t:e?e.replaceAll(t,""):""}};tE=Ore([w4(5,ke),w4(6,vt)],tE);const d0=class d0 extends z{constructor(){super(...arguments),this._id=++d0.idCounter,this._onDidDispose=this._register(new A),this.onDidDispose=this._onDidDispose.event}getId(){return this.getEditorType()+":v2:"+this._id}getVisibleColumnFromPosition(e){return this._targetEditor.getVisibleColumnFromPosition(e)}getPosition(){return this._targetEditor.getPosition()}setPosition(e,t="api"){this._targetEditor.setPosition(e,t)}revealLine(e,t=0){this._targetEditor.revealLine(e,t)}revealLineInCenter(e,t=0){this._targetEditor.revealLineInCenter(e,t)}revealLineInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealLineInCenterIfOutsideViewport(e,t)}revealLineNearTop(e,t=0){this._targetEditor.revealLineNearTop(e,t)}revealPosition(e,t=0){this._targetEditor.revealPosition(e,t)}revealPositionInCenter(e,t=0){this._targetEditor.revealPositionInCenter(e,t)}revealPositionInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealPositionInCenterIfOutsideViewport(e,t)}revealPositionNearTop(e,t=0){this._targetEditor.revealPositionNearTop(e,t)}getSelection(){return this._targetEditor.getSelection()}getSelections(){return this._targetEditor.getSelections()}setSelection(e,t="api"){this._targetEditor.setSelection(e,t)}setSelections(e,t="api"){this._targetEditor.setSelections(e,t)}revealLines(e,t,i=0){this._targetEditor.revealLines(e,t,i)}revealLinesInCenter(e,t,i=0){this._targetEditor.revealLinesInCenter(e,t,i)}revealLinesInCenterIfOutsideViewport(e,t,i=0){this._targetEditor.revealLinesInCenterIfOutsideViewport(e,t,i)}revealLinesNearTop(e,t,i=0){this._targetEditor.revealLinesNearTop(e,t,i)}revealRange(e,t=0,i=!1,n=!0){this._targetEditor.revealRange(e,t,i,n)}revealRangeInCenter(e,t=0){this._targetEditor.revealRangeInCenter(e,t)}revealRangeInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealRangeInCenterIfOutsideViewport(e,t)}revealRangeNearTop(e,t=0){this._targetEditor.revealRangeNearTop(e,t)}revealRangeNearTopIfOutsideViewport(e,t=0){this._targetEditor.revealRangeNearTopIfOutsideViewport(e,t)}revealRangeAtTop(e,t=0){this._targetEditor.revealRangeAtTop(e,t)}getSupportedActions(){return this._targetEditor.getSupportedActions()}focus(){this._targetEditor.focus()}trigger(e,t,i){this._targetEditor.trigger(e,t,i)}createDecorationsCollection(e){return this._targetEditor.createDecorationsCollection(e)}changeDecorations(e){return this._targetEditor.changeDecorations(e)}};d0.idCounter=0;let iE=d0;var Fre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Bre=function(o,e){return function(t,i){e(t,i,o)}};let nE=class{get editorOptions(){return this._options}constructor(e,t){this._accessibilityService=t,this._diffEditorWidth=Ge(this,0),this._screenReaderMode=gt(this,this._accessibilityService.onDidChangeScreenReaderOptimized,()=>this._accessibilityService.isScreenReaderOptimized()),this.couldShowInlineViewBecauseOfSize=Ce(this,n=>this._options.read(n).renderSideBySide&&this._diffEditorWidth.read(n)<=this._options.read(n).renderSideBySideInlineBreakpoint),this.renderOverviewRuler=Ce(this,n=>this._options.read(n).renderOverviewRuler),this.renderSideBySide=Ce(this,n=>this.compactMode.read(n)&&this.shouldRenderInlineViewInSmartMode.read(n)?!1:this._options.read(n).renderSideBySide&&!(this._options.read(n).useInlineViewWhenSpaceIsLimited&&this.couldShowInlineViewBecauseOfSize.read(n)&&!this._screenReaderMode.read(n))),this.readOnly=Ce(this,n=>this._options.read(n).readOnly),this.shouldRenderOldRevertArrows=Ce(this,n=>!(!this._options.read(n).renderMarginRevertIcon||!this.renderSideBySide.read(n)||this.readOnly.read(n)||this.shouldRenderGutterMenu.read(n))),this.shouldRenderGutterMenu=Ce(this,n=>this._options.read(n).renderGutterMenu),this.renderIndicators=Ce(this,n=>this._options.read(n).renderIndicators),this.enableSplitViewResizing=Ce(this,n=>this._options.read(n).enableSplitViewResizing),this.splitViewDefaultRatio=Ce(this,n=>this._options.read(n).splitViewDefaultRatio),this.ignoreTrimWhitespace=Ce(this,n=>this._options.read(n).ignoreTrimWhitespace),this.maxComputationTimeMs=Ce(this,n=>this._options.read(n).maxComputationTime),this.showMoves=Ce(this,n=>this._options.read(n).experimental.showMoves&&this.renderSideBySide.read(n)),this.isInEmbeddedEditor=Ce(this,n=>this._options.read(n).isInEmbeddedEditor),this.diffWordWrap=Ce(this,n=>this._options.read(n).diffWordWrap),this.originalEditable=Ce(this,n=>this._options.read(n).originalEditable),this.diffCodeLens=Ce(this,n=>this._options.read(n).diffCodeLens),this.accessibilityVerbose=Ce(this,n=>this._options.read(n).accessibilityVerbose),this.diffAlgorithm=Ce(this,n=>this._options.read(n).diffAlgorithm),this.showEmptyDecorations=Ce(this,n=>this._options.read(n).experimental.showEmptyDecorations),this.onlyShowAccessibleDiffViewer=Ce(this,n=>this._options.read(n).onlyShowAccessibleDiffViewer),this.compactMode=Ce(this,n=>this._options.read(n).compactMode),this.trueInlineDiffRenderingEnabled=Ce(this,n=>this._options.read(n).experimental.useTrueInlineView),this.useTrueInlineDiffRendering=Ce(this,n=>!this.renderSideBySide.read(n)&&this.trueInlineDiffRenderingEnabled.read(n)),this.hideUnchangedRegions=Ce(this,n=>this._options.read(n).hideUnchangedRegions.enabled),this.hideUnchangedRegionsRevealLineCount=Ce(this,n=>this._options.read(n).hideUnchangedRegions.revealLineCount),this.hideUnchangedRegionsContextLineCount=Ce(this,n=>this._options.read(n).hideUnchangedRegions.contextLineCount),this.hideUnchangedRegionsMinimumLineCount=Ce(this,n=>this._options.read(n).hideUnchangedRegions.minimumLineCount),this._model=Ge(this,void 0),this.shouldRenderInlineViewInSmartMode=this._model.map(this,n=>qZ(this,s=>{const r=n?.diff.read(s);return r?Wre(r,this.trueInlineDiffRenderingEnabled.read(s)):void 0})).flatten().map(this,n=>!!n),this.inlineViewHideOriginalLineNumbers=this.compactMode;const i={...e,...y4(e,Vi)};this._options=Ge(this,i)}updateOptions(e){const t=y4(e,this._options.get()),i={...this._options.get(),...e,...t};this._options.set(i,void 0,{changedOptions:e})}setWidth(e){this._diffEditorWidth.set(e,void 0)}setModel(e){this._model.set(e,void 0)}};nE=Fre([Bre(1,ms)],nE);function Wre(o,e){return o.mappings.every(t=>Hre(t.lineRangeMapping)||Vre(t.lineRangeMapping)||e&&oM(t.lineRangeMapping))}function Hre(o){return o.original.length===0}function Vre(o){return o.modified.length===0}function y4(o,e){return{enableSplitViewResizing:he(o.enableSplitViewResizing,e.enableSplitViewResizing),splitViewDefaultRatio:k6(o.splitViewDefaultRatio,.5,.1,.9),renderSideBySide:he(o.renderSideBySide,e.renderSideBySide),renderMarginRevertIcon:he(o.renderMarginRevertIcon,e.renderMarginRevertIcon),maxComputationTime:dd(o.maxComputationTime,e.maxComputationTime,0,1073741824),maxFileSize:dd(o.maxFileSize,e.maxFileSize,0,1073741824),ignoreTrimWhitespace:he(o.ignoreTrimWhitespace,e.ignoreTrimWhitespace),renderIndicators:he(o.renderIndicators,e.renderIndicators),originalEditable:he(o.originalEditable,e.originalEditable),diffCodeLens:he(o.diffCodeLens,e.diffCodeLens),renderOverviewRuler:he(o.renderOverviewRuler,e.renderOverviewRuler),diffWordWrap:Ht(o.diffWordWrap,e.diffWordWrap,["off","on","inherit"]),diffAlgorithm:Ht(o.diffAlgorithm,e.diffAlgorithm,["legacy","advanced"],{smart:"legacy",experimental:"advanced"}),accessibilityVerbose:he(o.accessibilityVerbose,e.accessibilityVerbose),experimental:{showMoves:he(o.experimental?.showMoves,e.experimental.showMoves),showEmptyDecorations:he(o.experimental?.showEmptyDecorations,e.experimental.showEmptyDecorations),useTrueInlineView:he(o.experimental?.useTrueInlineView,e.experimental.useTrueInlineView)},hideUnchangedRegions:{enabled:he(o.hideUnchangedRegions?.enabled??o.experimental?.collapseUnchangedRegions,e.hideUnchangedRegions.enabled),contextLineCount:dd(o.hideUnchangedRegions?.contextLineCount,e.hideUnchangedRegions.contextLineCount,0,1073741824),minimumLineCount:dd(o.hideUnchangedRegions?.minimumLineCount,e.hideUnchangedRegions.minimumLineCount,0,1073741824),revealLineCount:dd(o.hideUnchangedRegions?.revealLineCount,e.hideUnchangedRegions.revealLineCount,0,1073741824)},isInEmbeddedEditor:he(o.isInEmbeddedEditor,e.isInEmbeddedEditor),onlyShowAccessibleDiffViewer:he(o.onlyShowAccessibleDiffViewer,e.onlyShowAccessibleDiffViewer),renderSideBySideInlineBreakpoint:dd(o.renderSideBySideInlineBreakpoint,e.renderSideBySideInlineBreakpoint,0,1073741824),useInlineViewWhenSpaceIsLimited:he(o.useInlineViewWhenSpaceIsLimited,e.useInlineViewWhenSpaceIsLimited),renderGutterMenu:he(o.renderGutterMenu,e.renderGutterMenu),compactMode:he(o.compactMode,e.compactMode)}}var zre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Lm=function(o,e){return function(t,i){e(t,i,o)}};let qv=class extends iE{get onDidContentSizeChange(){return this._editors.onDidContentSizeChange}constructor(e,t,i,n,s,r,a,l){super(),this._domElement=e,this._parentContextKeyService=n,this._parentInstantiationService=s,this._accessibilitySignalService=a,this._editorProgressService=l,this.elements=tt("div.monaco-diff-editor.side-by-side",{style:{position:"relative",height:"100%"}},[tt("div.editor.original@original",{style:{position:"absolute",height:"100%"}}),tt("div.editor.modified@modified",{style:{position:"absolute",height:"100%"}}),tt("div.accessibleDiffViewer@accessibleDiffViewer",{style:{position:"absolute",height:"100%"}})]),this._diffModelSrc=this._register(KC(this,void 0)),this._diffModel=Ce(this,v=>this._diffModelSrc.read(v)?.object),this.onDidChangeModel=J.fromObservableLight(this._diffModel),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._domElement)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new jg([De,this._contextKeyService]))),this._boundarySashes=Ge(this,void 0),this._accessibleDiffViewerShouldBeVisible=Ge(this,!1),this._accessibleDiffViewerVisible=Ce(this,v=>this._options.onlyShowAccessibleDiffViewer.read(v)?!0:this._accessibleDiffViewerShouldBeVisible.read(v)),this._movedBlocksLinesPart=Ge(this,void 0),this._layoutInfo=Ce(this,v=>{const y=this._rootSizeObserver.width.read(v),x=this._rootSizeObserver.height.read(v);this._rootSizeObserver.automaticLayout?this.elements.root.style.height="100%":this.elements.root.style.height=x+"px";const L=this._sash.read(v),E=this._gutter.read(v),N=E?.width.read(v)??0,H=this._overviewRulerPart.read(v)?.width??0;let F,W,j,B,G;if(!!L){const ae=L.sashLeft.read(v),de=this._movedBlocksLinesPart.read(v)?.width.read(v)??0;F=0,W=ae-N-de,G=ae-N,j=ae,B=y-j-H}else{G=0;const ae=this._options.inlineViewHideOriginalLineNumbers.read(v);F=N,ae?W=0:W=Math.max(5,this._editors.originalObs.layoutInfoDecorationsLeft.read(v)),j=N+W,B=y-j-H}return this.elements.original.style.left=F+"px",this.elements.original.style.width=W+"px",this._editors.original.layout({width:W,height:x},!0),E?.layout(G),this.elements.modified.style.left=j+"px",this.elements.modified.style.width=B+"px",this._editors.modified.layout({width:B,height:x},!0),{modifiedEditor:this._editors.modified.getLayoutInfo(),originalEditor:this._editors.original.getLayoutInfo()}}),this._diffValue=this._diffModel.map((v,y)=>v?.diff.read(y)),this.onDidUpdateDiff=J.fromObservableLight(this._diffValue),r.willCreateDiffEditor(),this._contextKeyService.createKey("isInDiffEditor",!0),this._domElement.appendChild(this.elements.root),this._register(_e(()=>this.elements.root.remove())),this._rootSizeObserver=this._register(new A8(this.elements.root,t.dimension)),this._rootSizeObserver.setAutomaticLayout(t.automaticLayout??!1),this._options=this._instantiationService.createInstance(nE,t),this._register(We(v=>{this._options.setWidth(this._rootSizeObserver.width.read(v))})),this._contextKeyService.createKey(K.isEmbeddedDiffEditor.key,!1),this._register(Pa(K.isEmbeddedDiffEditor,this._contextKeyService,v=>this._options.isInEmbeddedEditor.read(v))),this._register(Pa(K.comparingMovedCode,this._contextKeyService,v=>!!this._diffModel.read(v)?.movedTextToCompare.read(v))),this._register(Pa(K.diffEditorRenderSideBySideInlineBreakpointReached,this._contextKeyService,v=>this._options.couldShowInlineViewBecauseOfSize.read(v))),this._register(Pa(K.diffEditorInlineMode,this._contextKeyService,v=>!this._options.renderSideBySide.read(v))),this._register(Pa(K.hasChanges,this._contextKeyService,v=>(this._diffModel.read(v)?.diff.read(v)?.mappings.length??0)>0)),this._editors=this._register(this._instantiationService.createInstance(tE,this.elements.original,this.elements.modified,this._options,i,(v,y,x,L)=>this._createInnerEditor(v,y,x,L))),this._register(Pa(K.diffEditorOriginalWritable,this._contextKeyService,v=>this._options.originalEditable.read(v))),this._register(Pa(K.diffEditorModifiedWritable,this._contextKeyService,v=>!this._options.readOnly.read(v))),this._register(Pa(K.diffEditorOriginalUri,this._contextKeyService,v=>this._diffModel.read(v)?.model.original.uri.toString()??"")),this._register(Pa(K.diffEditorModifiedUri,this._contextKeyService,v=>this._diffModel.read(v)?.model.modified.uri.toString()??"")),this._overviewRulerPart=tr(this,v=>this._options.renderOverviewRuler.read(v)?this._instantiationService.createInstance(Lo(N_,v),this._editors,this.elements.root,this._diffModel,this._rootSizeObserver.width,this._rootSizeObserver.height,this._layoutInfo.map(y=>y.modifiedEditor)):void 0).recomputeInitiallyAndOnChange(this._store);const c={height:this._rootSizeObserver.height,width:this._rootSizeObserver.width.map((v,y)=>v-(this._overviewRulerPart.read(y)?.width??0))};this._sashLayout=new kre(this._options,c),this._sash=tr(this,v=>{const y=this._options.renderSideBySide.read(v);return this.elements.root.classList.toggle("side-by-side",y),y?new H8(this.elements.root,c,this._options.enableSplitViewResizing,this._boundarySashes,this._sashLayout.sashLeft,()=>this._sashLayout.resetSash()):void 0}).recomputeInitiallyAndOnChange(this._store);const d=tr(this,v=>this._instantiationService.createInstance(Lo(eE,v),this._editors,this._diffModel,this._options)).recomputeInitiallyAndOnChange(this._store);tr(this,v=>this._instantiationService.createInstance(Lo(xre,v),this._editors,this._diffModel,this._options,this)).recomputeInitiallyAndOnChange(this._store);const h=new Set,u=new Set;let f=!1;const g=tr(this,v=>this._instantiationService.createInstance(Lo(ZI,v),fe(this._domElement),this._editors,this._diffModel,this._options,this,()=>f||d.get().isUpdatingHiddenAreas,h,u)).recomputeInitiallyAndOnChange(this._store),p=Ce(this,v=>{const y=g.read(v).viewZones.read(v).orig,x=d.read(v).viewZones.read(v).origViewZones;return y.concat(x)}),_=Ce(this,v=>{const y=g.read(v).viewZones.read(v).mod,x=d.read(v).viewZones.read(v).modViewZones;return y.concat(x)});this._register(zv(this._editors.original,p,v=>{f=v},h));let b;this._register(zv(this._editors.modified,_,v=>{f=v,f?b=qh.capture(this._editors.modified):(b?.restore(this._editors.modified),b=void 0)},u)),this._accessibleDiffViewer=tr(this,v=>this._instantiationService.createInstance(Lo(qd,v),this.elements.accessibleDiffViewer,this._accessibleDiffViewerVisible,(y,x)=>this._accessibleDiffViewerShouldBeVisible.set(y,x),this._options.onlyShowAccessibleDiffViewer.map(y=>!y),this._rootSizeObserver.width,this._rootSizeObserver.height,this._diffModel.map((y,x)=>y?.diff.read(x)?.mappings.map(L=>L.lineRangeMapping)),new cre(this._editors))).recomputeInitiallyAndOnChange(this._store);const C=this._accessibleDiffViewerVisible.map(v=>v?"hidden":"visible");this._register(Vc(this.elements.modified,{visibility:C})),this._register(Vc(this.elements.original,{visibility:C})),this._createDiffEditorContributions(),r.addDiffEditor(this),this._gutter=tr(this,v=>this._options.shouldRenderGutterMenu.read(v)?this._instantiationService.createInstance(Lo(YI,v),this.elements.root,this._diffModel,this._editors,this._options,this._sashLayout,this._boundarySashes):void 0),this._register(X_(this._layoutInfo)),tr(this,v=>new(Lo(Qf,v))(this.elements.root,this._diffModel,this._layoutInfo.map(y=>y.originalEditor),this._layoutInfo.map(y=>y.modifiedEditor),this._editors)).recomputeInitiallyAndOnChange(this._store,v=>{this._movedBlocksLinesPart.set(v,void 0)}),this._register(J.runAndSubscribe(this._editors.modified.onDidChangeCursorPosition,v=>this._handleCursorPositionChange(v,!0))),this._register(J.runAndSubscribe(this._editors.original.onDidChangeCursorPosition,v=>this._handleCursorPositionChange(v,!1)));const w=this._diffModel.map(this,(v,y)=>{if(v)return v.diff.read(y)===void 0&&!v.isDiffUpToDate.read(y)});this._register(To((v,y)=>{if(w.read(v)===!0){const x=this._editorProgressService.show(!0,1e3);y.add(_e(()=>x.done()))}})),this._register(To((v,y)=>{y.add(new(Lo(Pre,v))(this._editors,this._diffModel,this._options,this))})),this._register(To((v,y)=>{const x=this._diffModel.read(v);if(x)for(const L of[x.model.original,x.model.modified])y.add(L.onWillDispose(E=>{Ze(new nt("TextModel got disposed before DiffEditorWidget model got reset")),this.setModel(null)}))})),this._register(We(v=>{this._options.setModel(this._diffModel.read(v))}))}_createInnerEditor(e,t,i,n){return e.createInstance(I_,t,i,n)}_createDiffEditorContributions(){const e=Af.getDiffEditorContributions();for(const t of e)try{this._register(this._instantiationService.createInstance(t.ctor,this))}catch(i){Ze(i)}}get _targetEditor(){return this._editors.modified}getEditorType(){return yy.IDiffEditor}layout(e){this._rootSizeObserver.observe(e)}hasTextFocus(){return this._editors.original.hasTextFocus()||this._editors.modified.hasTextFocus()}saveViewState(){const e=this._editors.original.saveViewState(),t=this._editors.modified.saveViewState();return{original:e,modified:t,modelState:this._diffModel.get()?.serializeState()}}restoreViewState(e){if(e&&e.original&&e.modified){const t=e;this._editors.original.restoreViewState(t.original),this._editors.modified.restoreViewState(t.modified),t.modelState&&this._diffModel.get()?.restoreSerializedState(t.modelState)}}handleInitialized(){this._editors.original.handleInitialized(),this._editors.modified.handleInitialized()}createViewModel(e){return this._instantiationService.createInstance(GI,e,this._options)}getModel(){return this._diffModel.get()?.model??null}setModel(e){const t=e?"model"in e?Uv.create(e).createNewRef(this):Uv.create(this.createViewModel(e),this):null;this.setDiffModel(t)}setDiffModel(e,t){const i=this._diffModel.get();!e&&i&&this._accessibleDiffViewer.get().close(),this._diffModel.get()!==e?.object&&c_(t,n=>{const s=e?.object;gt.batchEventsGlobally(n,()=>{this._editors.original.setModel(s?s.model.original:null),this._editors.modified.setModel(s?s.model.modified:null)});const r=this._diffModelSrc.get()?.createNewRef(this);this._diffModelSrc.set(e?.createNewRef(this),n),setTimeout(()=>{r?.dispose()},0)})}updateOptions(e){this._options.updateOptions(e)}getContainerDomNode(){return this._domElement}getOriginalEditor(){return this._editors.original}getModifiedEditor(){return this._editors.modified}getLineChanges(){const e=this._diffModel.get()?.diff.get();return e?Ure(e):null}revert(e){const t=this._diffModel.get();!t||!t.isDiffUpToDate.get()||this._editors.modified.executeEdits("diffEditor",[{range:e.modified.toExclusiveRange(),text:t.model.original.getValueInRange(e.original.toExclusiveRange())}])}revertRangeMappings(e){const t=this._diffModel.get();if(!t||!t.isDiffUpToDate.get())return;const i=e.map(n=>({range:n.modifiedRange,text:t.model.original.getValueInRange(n.originalRange)}));this._editors.modified.executeEdits("diffEditor",i)}_goTo(e){this._editors.modified.setPosition(new P(e.lineRangeMapping.modified.startLineNumber,1)),this._editors.modified.revealRangeInCenter(e.lineRangeMapping.modified.toExclusiveRange())}goToDiff(e){const t=this._diffModel.get()?.diff.get()?.mappings;if(!t||t.length===0)return;const i=this._editors.modified.getPosition().lineNumber;let n;e==="next"?n=t.find(s=>s.lineRangeMapping.modified.startLineNumber>i)??t[0]:n=xC(t,s=>s.lineRangeMapping.modified.startLineNumber{const t=e.diff.get()?.mappings;!t||t.length===0||this._goTo(t[0])})}accessibleDiffViewerNext(){this._accessibleDiffViewer.get().next()}accessibleDiffViewerPrev(){this._accessibleDiffViewer.get().prev()}async waitForDiff(){const e=this._diffModel.get();e&&await e.waitForDiff()}mapToOtherSide(){const e=this._editors.modified.hasWidgetFocus(),t=e?this._editors.modified:this._editors.original,i=e?this._editors.original:this._editors.modified;let n;const s=t.getSelection();if(s){const r=this._diffModel.get()?.diff.get()?.mappings.map(a=>e?a.lineRangeMapping.flip():a.lineRangeMapping);if(r){const a=n4(s.getStartPosition(),r),l=n4(s.getEndPosition(),r);n=I.plusRange(a,l)}}return{destination:i,destinationSelection:n}}switchSide(){const{destination:e,destinationSelection:t}=this.mapToOtherSide();e.focus(),t&&e.setSelection(t)}exitCompareMove(){const e=this._diffModel.get();e&&e.movedTextToCompare.set(void 0,void 0)}collapseAllUnchangedRegions(){const e=this._diffModel.get()?.unchangedRegions.get();e&&Xt(t=>{for(const i of e)i.collapseAll(t)})}showAllUnchangedRegions(){const e=this._diffModel.get()?.unchangedRegions.get();e&&Xt(t=>{for(const i of e)i.showAll(t)})}_handleCursorPositionChange(e,t){if(e?.reason===3){const i=this._diffModel.get()?.diff.get()?.mappings.find(n=>t?n.lineRangeMapping.modified.contains(e.position.lineNumber):n.lineRangeMapping.original.contains(e.position.lineNumber));i?.lineRangeMapping.modified.isEmpty?this._accessibilitySignalService.playSignal(rr.diffLineDeleted,{source:"diffEditor.cursorPositionChanged"}):i?.lineRangeMapping.original.isEmpty?this._accessibilitySignalService.playSignal(rr.diffLineInserted,{source:"diffEditor.cursorPositionChanged"}):i&&this._accessibilitySignalService.playSignal(rr.diffLineModified,{source:"diffEditor.cursorPositionChanged"})}}};qv=zre([Lm(3,De),Lm(4,ke),Lm(5,Pt),Lm(6,rb),Lm(7,G_)],qv);function Ure(o){return o.mappings.map(e=>{const t=e.lineRangeMapping;let i,n,s,r,a=t.innerChanges;return t.original.isEmpty?(i=t.original.startLineNumber-1,n=0,a=void 0):(i=t.original.startLineNumber,n=t.original.endLineNumberExclusive-1),t.modified.isEmpty?(s=t.modified.startLineNumber-1,r=0,a=void 0):(s=t.modified.startLineNumber,r=t.modified.endLineNumberExclusive-1),{originalStartLineNumber:i,originalEndLineNumber:n,modifiedStartLineNumber:s,modifiedEndLineNumber:r,charChanges:a?.map(l=>({originalStartLineNumber:l.originalRange.startLineNumber,originalStartColumn:l.originalRange.startColumn,originalEndLineNumber:l.originalRange.endLineNumber,originalEndColumn:l.originalRange.endColumn,modifiedStartLineNumber:l.modifiedRange.startLineNumber,modifiedStartColumn:l.modifiedRange.startColumn,modifiedEndLineNumber:l.modifiedRange.endLineNumber,modifiedEndColumn:l.modifiedRange.endColumn}))}})}var aM=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},wt=function(o,e){return function(t,i){e(t,i,o)}};let $re=0,S4=!1;function Kre(o){if(!o){if(S4)return;S4=!0}AG(o||_t.document.body)}let Gv=class extends I_{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f){const g={...t};g.ariaLabel=g.ariaLabel||Zk.editorViewAccessibleLabel,super(e,g,{},i,n,s,r,c,d,h,u,f),l instanceof xg?this._standaloneKeybindingService=l:this._standaloneKeybindingService=null,Kre(g.ariaContainerElement),XZ((p,_)=>i.createInstance(gg,p,_,{})),JZ(a)}addCommand(e,t,i){if(!this._standaloneKeybindingService)return console.warn("Cannot add command because the editor is configured with an unrecognized KeybindingService"),null;const n="DYNAMIC_"+ ++$re,s=re.deserialize(i);return this._standaloneKeybindingService.addDynamicKeybinding(n,e,t,s),n}createContextKey(e,t){return this._contextKeyService.createKey(e,t)}addAction(e){if(typeof e.id!="string"||typeof e.label!="string"||typeof e.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");if(!this._standaloneKeybindingService)return console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),z.None;const t=e.id,i=e.label,n=re.and(re.equals("editorId",this.getId()),re.deserialize(e.precondition)),s=e.keybindings,r=re.and(n,re.deserialize(e.keybindingContext)),a=e.contextMenuGroupId||null,l=e.contextMenuOrder||0,c=(f,...g)=>Promise.resolve(e.run(this,...g)),d=new X,h=this.getId()+":"+t;if(d.add(bt.registerCommand(h,c)),a){const f={command:{id:h,title:i},when:n,group:a,order:l};d.add(Eo.appendMenuItem($e.EditorContext,f))}if(Array.isArray(s))for(const f of s)d.add(this._standaloneKeybindingService.addDynamicKeybinding(h,f,c,r));const u=new N8(h,i,i,void 0,n,(...f)=>Promise.resolve(e.run(this,...f)),this._contextKeyService);return this._actions.set(t,u),d.add(_e(()=>{this._actions.delete(t)})),d}_triggerCommand(e,t){if(this._codeEditorService instanceof NC)try{this._codeEditorService.setActiveCodeEditor(this),super._triggerCommand(e,t)}finally{this._codeEditorService.setActiveCodeEditor(null)}else super._triggerCommand(e,t)}};Gv=aM([wt(2,ke),wt(3,Pt),wt(4,hi),wt(5,De),wt(6,au),wt(7,vt),wt(8,en),wt(9,mn),wt(10,ms),wt(11,Gn),wt(12,Se)],Gv);let sE=class extends Gv{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f,g,p,_){const b={...t};wv(h,b,!1);const C=c.registerEditorContainer(e);typeof b.theme=="string"&&c.setTheme(b.theme),typeof b.autoDetectHighContrast<"u"&&c.setAutoDetectHighContrast(!!b.autoDetectHighContrast);const w=b.model;delete b.model,super(e,b,i,n,s,r,a,l,c,d,u,p,_),this._configurationService=h,this._standaloneThemeService=c,this._register(C);let v;if(typeof w>"u"){const y=g.getLanguageIdByMimeType(b.language)||b.language||Bs;v=$8(f,g,b.value||"",y,void 0),this._ownsModel=!0}else v=w,this._ownsModel=!1;if(this._attachModel(v),v){const y={oldModelUrl:null,newModelUrl:v.uri};this._onDidChangeModel.fire(y)}}dispose(){super.dispose()}updateOptions(e){wv(this._configurationService,e,!1),typeof e.theme=="string"&&this._standaloneThemeService.setTheme(e.theme),typeof e.autoDetectHighContrast<"u"&&this._standaloneThemeService.setAutoDetectHighContrast(!!e.autoDetectHighContrast),super.updateOptions(e)}_postDetachModelCleanup(e){super._postDetachModelCleanup(e),e&&this._ownsModel&&(e.dispose(),this._ownsModel=!1)}};sE=aM([wt(2,ke),wt(3,Pt),wt(4,hi),wt(5,De),wt(6,au),wt(7,vt),wt(8,zo),wt(9,mn),wt(10,lt),wt(11,ms),wt(12,Fi),wt(13,qt),wt(14,Gn),wt(15,Se)],sE);let oE=class extends qv{constructor(e,t,i,n,s,r,a,l,c,d,h,u){const f={...t};wv(l,f,!0);const g=r.registerEditorContainer(e);typeof f.theme=="string"&&r.setTheme(f.theme),typeof f.autoDetectHighContrast<"u"&&r.setAutoDetectHighContrast(!!f.autoDetectHighContrast),super(e,f,{},n,i,s,u,d),this._configurationService=l,this._standaloneThemeService=r,this._register(g)}dispose(){super.dispose()}updateOptions(e){wv(this._configurationService,e,!0),typeof e.theme=="string"&&this._standaloneThemeService.setTheme(e.theme),typeof e.autoDetectHighContrast<"u"&&this._standaloneThemeService.setAutoDetectHighContrast(!!e.autoDetectHighContrast),super.updateOptions(e)}_createInnerEditor(e,t,i){return e.createInstance(Gv,t,i)}getOriginalEditor(){return super.getOriginalEditor()}getModifiedEditor(){return super.getModifiedEditor()}addCommand(e,t,i){return this.getModifiedEditor().addCommand(e,t,i)}createContextKey(e,t){return this.getModifiedEditor().createContextKey(e,t)}addAction(e){return this.getModifiedEditor().addAction(e)}};oE=aM([wt(2,ke),wt(3,De),wt(4,Pt),wt(5,zo),wt(6,mn),wt(7,lt),wt(8,Lr),wt(9,G_),wt(10,wy),wt(11,rb)],oE);function $8(o,e,t,i,n){if(t=t||"",!i){const s=t.indexOf(` -`);let r=t;return s!==-1&&(r=t.substring(0,s)),L4(o,t,e.createByFilepathOrFirstLine(n||null,r),n)}return L4(o,t,e.createById(i),n)}function L4(o,e,t,i){return o.createModel(e,t,i)}var jre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},x4=function(o,e){return function(t,i){e(t,i,o)}};class qre{constructor(e,t){this.viewModel=e,this.deltaScrollVertical=t}getId(){return this.viewModel}}let Zv=class extends z{constructor(e,t,i,n,s){super(),this._container=e,this._overflowWidgetsDomNode=t,this._workbenchUIElementFactory=i,this._instantiationService=n,this._viewModel=Ge(this,void 0),this._collapsed=Ce(this,l=>this._viewModel.read(l)?.collapsed.read(l)),this._editorContentHeight=Ge(this,500),this.contentHeight=Ce(this,l=>(this._collapsed.read(l)?0:this._editorContentHeight.read(l))+this._outerEditorHeight),this._modifiedContentWidth=Ge(this,0),this._modifiedWidth=Ge(this,0),this._originalContentWidth=Ge(this,0),this._originalWidth=Ge(this,0),this.maxScroll=Ce(this,l=>{const c=this._modifiedContentWidth.read(l)-this._modifiedWidth.read(l),d=this._originalContentWidth.read(l)-this._originalWidth.read(l);return c>d?{maxScroll:c,width:this._modifiedWidth.read(l)}:{maxScroll:d,width:this._originalWidth.read(l)}}),this._elements=tt("div.multiDiffEntry",[tt("div.header@header",[tt("div.header-content",[tt("div.collapse-button@collapseButton"),tt("div.file-path",[tt("div.title.modified.show-file-icons@primaryPath",[]),tt("div.status.deleted@status",["R"]),tt("div.title.original.show-file-icons@secondaryPath",[])]),tt("div.actions@actions")])]),tt("div.editorParent",[tt("div.editorContainer@editor")])]),this.editor=this._register(this._instantiationService.createInstance(qv,this._elements.editor,{overflowWidgetsDomNode:this._overflowWidgetsDomNode},{})),this.isModifedFocused=Dg(this.editor.getModifiedEditor()).isFocused,this.isOriginalFocused=Dg(this.editor.getOriginalEditor()).isFocused,this.isFocused=Ce(this,l=>this.isModifedFocused.read(l)||this.isOriginalFocused.read(l)),this._resourceLabel=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.primaryPath)):void 0,this._resourceLabel2=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.secondaryPath)):void 0,this._dataStore=this._register(new X),this._headerHeight=40,this._lastScrollTop=-1,this._isSettingScrollTop=!1;const r=new AD(this._elements.collapseButton,{});this._register(We(l=>{r.element.className="",r.icon=this._collapsed.read(l)?ie.chevronRight:ie.chevronDown})),this._register(r.onDidClick(()=>{this._viewModel.get()?.collapsed.set(!this._collapsed.get(),void 0)})),this._register(We(l=>{this._elements.editor.style.display=this._collapsed.read(l)?"none":"block"})),this._register(this.editor.getModifiedEditor().onDidLayoutChange(l=>{const c=this.editor.getModifiedEditor().getLayoutInfo().contentWidth;this._modifiedWidth.set(c,void 0)})),this._register(this.editor.getOriginalEditor().onDidLayoutChange(l=>{const c=this.editor.getOriginalEditor().getLayoutInfo().contentWidth;this._originalWidth.set(c,void 0)})),this._register(this.editor.onDidContentSizeChange(l=>{Mm(c=>{this._editorContentHeight.set(l.contentHeight,c),this._modifiedContentWidth.set(this.editor.getModifiedEditor().getContentWidth(),c),this._originalContentWidth.set(this.editor.getOriginalEditor().getContentWidth(),c)})})),this._register(this.editor.getOriginalEditor().onDidScrollChange(l=>{if(this._isSettingScrollTop||!l.scrollTopChanged||!this._data)return;const c=l.scrollTop-this._lastScrollTop;this._data.deltaScrollVertical(c)})),this._register(We(l=>{const c=this._viewModel.read(l)?.isActive.read(l);this._elements.root.classList.toggle("active",c)})),this._container.appendChild(this._elements.root),this._outerEditorHeight=this._headerHeight,this._contextKeyService=this._register(s.createScoped(this._elements.actions));const a=this._register(this._instantiationService.createChild(new jg([De,this._contextKeyService])));this._register(a.createInstance(Kv,this._elements.actions,$e.MultiDiffEditorFileToolbar,{actionRunner:this._register(new V8(()=>this._viewModel.get()?.modifiedUri)),menuOptions:{shouldForwardArgs:!0},toolbarOptions:{primaryGroup:l=>l.startsWith("navigation")},actionViewItemProvider:(l,c)=>H7(a,l,c)}))}setScrollLeft(e){this._modifiedContentWidth.get()-this._modifiedWidth.get()>this._originalContentWidth.get()-this._originalWidth.get()?this.editor.getModifiedEditor().setScrollLeft(e):this.editor.getOriginalEditor().setScrollLeft(e)}setData(e){this._data=e;function t(n){return{...n,scrollBeyondLastLine:!1,hideUnchangedRegions:{enabled:!0},scrollbar:{vertical:"hidden",horizontal:"hidden",handleMouseWheel:!1,useShadows:!1},renderOverviewRuler:!1,fixedOverflowWidgets:!0,overviewRulerBorder:!1}}if(!e){Mm(n=>{this._viewModel.set(void 0,n),this.editor.setDiffModel(null,n),this._dataStore.clear()});return}const i=e.viewModel.documentDiffItem;if(Mm(n=>{this._resourceLabel?.setUri(e.viewModel.modifiedUri??e.viewModel.originalUri,{strikethrough:e.viewModel.modifiedUri===void 0});let s=!1,r=!1,a=!1,l="";e.viewModel.modifiedUri&&e.viewModel.originalUri&&e.viewModel.modifiedUri.path!==e.viewModel.originalUri.path?(l="R",s=!0):e.viewModel.modifiedUri?e.viewModel.originalUri||(l="A",a=!0):(l="D",r=!0),this._elements.status.classList.toggle("renamed",s),this._elements.status.classList.toggle("deleted",r),this._elements.status.classList.toggle("added",a),this._elements.status.innerText=l,this._resourceLabel2?.setUri(s?e.viewModel.originalUri:void 0,{strikethrough:!0}),this._dataStore.clear(),this._viewModel.set(e.viewModel,n),this.editor.setDiffModel(e.viewModel.diffEditorViewModelRef,n),this.editor.updateOptions(t(i.options??{}))}),i.onOptionsDidChange&&this._dataStore.add(i.onOptionsDidChange(()=>{this.editor.updateOptions(t(i.options??{}))})),e.viewModel.isAlive.recomputeInitiallyAndOnChange(this._dataStore,n=>{n||this.setData(void 0)}),e.viewModel.documentDiffItem.contextKeys)for(const[n,s]of Object.entries(e.viewModel.documentDiffItem.contextKeys))this._contextKeyService.createKey(n,s)}render(e,t,i,n){this._elements.root.style.visibility="visible",this._elements.root.style.top=`${e.start}px`,this._elements.root.style.height=`${e.length}px`,this._elements.root.style.width=`${t}px`,this._elements.root.style.position="absolute";const s=e.length-this._headerHeight,r=Math.max(0,Math.min(n.start-e.start,s));this._elements.header.style.transform=`translateY(${r}px)`,Mm(a=>{this.editor.layout({width:t-16-2,height:e.length-this._outerEditorHeight})});try{this._isSettingScrollTop=!0,this._lastScrollTop=i,this.editor.getOriginalEditor().setScrollTop(i)}finally{this._isSettingScrollTop=!1}this._elements.header.classList.toggle("shadow",r>0||i>0),this._elements.header.classList.toggle("collapsed",r===s)}hide(){this._elements.root.style.top="-100000px",this._elements.root.style.visibility="hidden"}};Zv=jre([x4(3,ke),x4(4,De)],Zv);class Gre{constructor(e){this._create=e,this._unused=new Set,this._used=new Set,this._itemData=new Map}getUnusedObj(e){let t;if(this._unused.size===0)t=this._create(e),this._itemData.set(t,e);else{const i=[...this._unused.values()];t=i.find(n=>this._itemData.get(n).getId()===e.getId())??i[0],this._unused.delete(t),this._itemData.set(t,e),t.setData(e)}return this._used.add(t),{object:t,dispose:()=>{this._used.delete(t),this._unused.size>5?t.dispose():this._unused.add(t)}}}dispose(){for(const e of this._used)e.dispose();for(const e of this._unused)e.dispose();this._used.clear(),this._unused.clear()}}var Zre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},k4=function(o,e){return function(t,i){e(t,i,o)}};let rE=class extends z{constructor(e,t,i,n,s,r){super(),this._element=e,this._dimension=t,this._viewModel=i,this._workbenchUIElementFactory=n,this._parentContextKeyService=s,this._parentInstantiationService=r,this._scrollableElements=tt("div.scrollContent",[tt("div@content",{style:{overflow:"hidden"}}),tt("div.monaco-editor@overflowWidgetsDomNode",{})]),this._scrollable=this._register(new Vg({forceIntegerValues:!1,scheduleAtNextAnimationFrame:l=>fs(fe(this._element),l),smoothScrollDuration:100})),this._scrollableElement=this._register(new X0(this._scrollableElements.root,{vertical:1,horizontal:1,useShadows:!1},this._scrollable)),this._elements=tt("div.monaco-component.multiDiffEditor",{},[tt("div",{},[this._scrollableElement.getDomNode()]),tt("div.placeholder@placeholder",{},[tt("div",[m("noChangedFiles","No Changed Files")])])]),this._sizeObserver=this._register(new A8(this._element,void 0)),this._objectPool=this._register(new Gre(l=>{const c=this._instantiationService.createInstance(Zv,this._scrollableElements.content,this._scrollableElements.overflowWidgetsDomNode,this._workbenchUIElementFactory);return c.setData(l),c})),this.scrollTop=gt(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollTop),this.scrollLeft=gt(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollLeft),this._viewItemsInfo=cu(this,(l,c)=>{const d=this._viewModel.read(l);if(!d)return{items:[],getItem:g=>{throw new nt}};const h=d.items.read(l),u=new Map;return{items:h.map(g=>{const p=c.add(new Yre(g,this._objectPool,this.scrollLeft,b=>{this._scrollableElement.setScrollPosition({scrollTop:this._scrollableElement.getScrollPosition().scrollTop+b})})),_=this._lastDocStates?.[p.getKey()];return _&&Xt(b=>{p.setViewState(_,b)}),u.set(g,p),p}),getItem:g=>u.get(g)}}),this._viewItems=this._viewItemsInfo.map(this,l=>l.items),this._spaceBetweenPx=0,this._totalHeight=this._viewItems.map(this,(l,c)=>l.reduce((d,h)=>d+h.contentHeight.read(c)+this._spaceBetweenPx,0)),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._element)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new jg([De,this._contextKeyService]))),this._lastDocStates={},this._contextKeyService.createKey(K.inMultiDiffEditor.key,!0),this._register(To((l,c)=>{const d=this._viewModel.read(l);if(d&&d.contextKeys)for(const[h,u]of Object.entries(d.contextKeys)){const f=this._contextKeyService.createKey(h,void 0);f.set(u),c.add(_e(()=>f.reset()))}}));const a=this._parentContextKeyService.createKey(K.multiDiffEditorAllCollapsed.key,!1);this._register(We(l=>{const c=this._viewModel.read(l);if(c){const d=c.items.read(l).every(h=>h.collapsed.read(l));a.set(d)}})),this._register(We(l=>{const c=this._dimension.read(l);this._sizeObserver.observe(c)})),this._register(We(l=>{const c=this._viewItems.read(l);this._elements.placeholder.classList.toggle("visible",c.length===0)})),this._scrollableElements.content.style.position="relative",this._register(We(l=>{const c=this._sizeObserver.height.read(l);this._scrollableElements.root.style.height=`${c}px`;const d=this._totalHeight.read(l);this._scrollableElements.content.style.height=`${d}px`;const h=this._sizeObserver.width.read(l);let u=h;const f=this._viewItems.read(l),g=fT(f,rs(p=>p.maxScroll.read(l).maxScroll,ia));if(g){const p=g.maxScroll.read(l);u=h+p.maxScroll}this._scrollableElement.setScrollDimensions({width:h,height:c,scrollHeight:d,scrollWidth:u})})),e.replaceChildren(this._elements.root),this._register(_e(()=>{e.replaceChildren()})),this._register(this._register(We(l=>{Mm(c=>{this.render(l)})})))}render(e){const t=this.scrollTop.read(e);let i=0,n=0,s=0;const r=this._sizeObserver.height.read(e),a=Re.ofStartAndLength(t,r),l=this._sizeObserver.width.read(e);for(const c of this._viewItems.read(e)){const d=c.contentHeight.read(e),h=Math.min(d,r),u=Re.ofStartAndLength(n,h),f=Re.ofStartAndLength(s,d);if(f.isBefore(a))i-=d-h,c.hide();else if(f.isAfter(a))c.hide();else{const g=Math.max(0,Math.min(a.start-f.start,d-h));i-=g;const p=Re.ofStartAndLength(t+i,r);c.render(u,g,l,p)}n+=h+this._spaceBetweenPx,s+=d+this._spaceBetweenPx}this._scrollableElements.content.style.transform=`translateY(${-(t+i)}px)`}};rE=Zre([k4(4,De),k4(5,ke)],rE);class Yre extends z{constructor(e,t,i,n){super(),this.viewModel=e,this._objectPool=t,this._scrollLeft=i,this._deltaScrollVertical=n,this._templateRef=this._register(KC(this,void 0)),this.contentHeight=Ce(this,s=>this._templateRef.read(s)?.object.contentHeight?.read(s)??this.viewModel.lastTemplateData.read(s).contentHeight),this.maxScroll=Ce(this,s=>this._templateRef.read(s)?.object.maxScroll.read(s)??{maxScroll:0,scrollWidth:0}),this.template=Ce(this,s=>this._templateRef.read(s)?.object),this._isHidden=Ge(this,!1),this._isFocused=Ce(this,s=>this.template.read(s)?.isFocused.read(s)??!1),this.viewModel.setIsFocused(this._isFocused,void 0),this._register(We(s=>{const r=this._scrollLeft.read(s);this._templateRef.read(s)?.object.setScrollLeft(r)})),this._register(We(s=>{const r=this._templateRef.read(s);!r||!this._isHidden.read(s)||r.object.isFocused.read(s)||this._clear()}))}dispose(){this._clear(),super.dispose()}toString(){return`VirtualViewItem(${this.viewModel.documentDiffItem.modified?.uri.toString()})`}getKey(){return this.viewModel.getKey()}setViewState(e,t){this.viewModel.collapsed.set(e.collapsed,t),this._updateTemplateData(t);const i=this.viewModel.lastTemplateData.get(),n=e.selections?.map(Fe.liftSelection);this.viewModel.lastTemplateData.set({...i,selections:n},t);const s=this._templateRef.get();s&&n&&s.object.editor.setSelections(n)}_updateTemplateData(e){const t=this._templateRef.get();t&&this.viewModel.lastTemplateData.set({contentHeight:t.object.contentHeight.get(),selections:t.object.editor.getSelections()??void 0},e)}_clear(){const e=this._templateRef.get();e&&Xt(t=>{this._updateTemplateData(t),e.object.hide(),this._templateRef.set(void 0,t)})}hide(){this._isHidden.set(!0,void 0)}render(e,t,i,n){this._isHidden.set(!1,void 0);let s=this._templateRef.get();if(!s){s=this._objectPool.getUnusedObj(new qre(this.viewModel,this._deltaScrollVertical)),this._templateRef.set(s,void 0);const r=this.viewModel.lastTemplateData.get().selections;r&&s.object.editor.setSelections(r)}s.object.render(e,i,t,n)}}D("multiDiffEditor.headerBackground",{dark:"#262626",light:"tab.inactiveBackground",hcDark:"tab.inactiveBackground",hcLight:"tab.inactiveBackground"},m("multiDiffEditor.headerBackground","The background color of the diff editor's header"));D("multiDiffEditor.background",Oo,m("multiDiffEditor.background","The background color of the multi file diff editor"));D("multiDiffEditor.border",{dark:"sideBarSectionHeader.border",light:"#cccccc",hcDark:"sideBarSectionHeader.border",hcLight:"#cccccc"},m("multiDiffEditor.border","The border color of the multi file diff editor"));var Qre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Xre=function(o,e){return function(t,i){e(t,i,o)}};let aE=class extends z{constructor(e,t,i){super(),this._element=e,this._workbenchUIElementFactory=t,this._instantiationService=i,this._dimension=Ge(this,void 0),this._viewModel=Ge(this,void 0),this._widgetImpl=cu(this,(n,s)=>(Lo(Zv,n),s.add(this._instantiationService.createInstance(Lo(rE,n),this._element,this._dimension,this._viewModel,this._workbenchUIElementFactory)))),this._register(X_(this._widgetImpl))}};aE=Qre([Xre(2,ke)],aE);function Jre(o,e,t){return pe.initialize(t||{}).createInstance(sE,o,e)}function eae(o){return pe.get(Pt).onCodeEditorAdd(t=>{o(t)})}function tae(o){return pe.get(Pt).onDiffEditorAdd(t=>{o(t)})}function iae(){return pe.get(Pt).listCodeEditors()}function nae(){return pe.get(Pt).listDiffEditors()}function sae(o,e,t){return pe.initialize(t||{}).createInstance(oE,o,e)}function oae(o,e){const t=pe.initialize(e||{});return new aE(o,{},t)}function rae(o){if(typeof o.id!="string"||typeof o.run!="function")throw new Error("Invalid command descriptor, `id` and `run` are required properties!");return bt.registerCommand(o.id,o.run)}function aae(o){if(typeof o.id!="string"||typeof o.label!="string"||typeof o.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");const e=re.deserialize(o.precondition),t=(n,...s)=>co.runEditorCommand(n,s,e,(r,a,l)=>Promise.resolve(o.run(a,...l))),i=new X;if(i.add(bt.registerCommand(o.id,t)),o.contextMenuGroupId){const n={command:{id:o.id,title:o.label},when:e,group:o.contextMenuGroupId,order:o.contextMenuOrder||0};i.add(Eo.appendMenuItem($e.EditorContext,n))}if(Array.isArray(o.keybindings)){const n=pe.get(vt);if(!(n instanceof xg))console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService");else{const s=re.and(e,re.deserialize(o.keybindingContext));i.add(n.addDynamicKeybindings(o.keybindings.map(r=>({keybinding:r,command:o.id,when:s}))))}}return i}function lae(o){return K8([o])}function K8(o){const e=pe.get(vt);return e instanceof xg?e.addDynamicKeybindings(o.map(t=>({keybinding:t.keybinding,command:t.command,commandArgs:t.commandArgs,when:re.deserialize(t.when)}))):(console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),z.None)}function cae(o,e,t){const i=pe.get(qt),n=i.getLanguageIdByMimeType(e)||e;return $8(pe.get(Fi),i,o,n,t)}function dae(o,e){const t=pe.get(qt),i=t.getLanguageIdByMimeType(e)||e||Bs;o.setLanguage(t.createById(i))}function hae(o,e,t){o&&pe.get(xa).changeOne(e,o.uri,t)}function uae(o){pe.get(xa).changeAll(o,[])}function fae(o){return pe.get(xa).read(o)}function gae(o){return pe.get(xa).onMarkerChanged(o)}function mae(o){return pe.get(Fi).getModel(o)}function pae(){return pe.get(Fi).getModels()}function _ae(o){return pe.get(Fi).onModelAdded(o)}function bae(o){return pe.get(Fi).onModelRemoved(o)}function Cae(o){return pe.get(Fi).onModelLanguageChanged(t=>{o({model:t.model,oldLanguage:t.oldLanguageId})})}function vae(o){return Yte(pe.get(Fi),o)}function wae(o,e){const t=pe.get(qt),i=pe.get(zo);return O2.colorizeElement(i,t,o,e).then(()=>{i.registerEditorContainer(o)})}function yae(o,e,t){const i=pe.get(qt);return pe.get(zo).registerEditorContainer(_t.document.body),O2.colorize(i,o,e,t)}function Sae(o,e,t=4){return pe.get(zo).registerEditorContainer(_t.document.body),O2.colorizeModelLine(o,e,t)}function Lae(o){const e=si.get(o);return e||{getInitialState:()=>a_,tokenize:(t,i,n)=>_7(o,n)}}function xae(o,e){si.getOrCreate(e);const t=Lae(e),i=va(o),n=[];let s=t.getInitialState();for(let r=0,a=i.length;r{if(!i)return null;const s=t.options?.selection;let r;return s&&typeof s.endLineNumber=="number"&&typeof s.endColumn=="number"?r=s:s&&(r={lineNumber:s.startLineNumber,column:s.startColumn}),await o.openCodeEditor(i,t.resource,r)?i:null})}function Mae(){return{create:Jre,getEditors:iae,getDiffEditors:nae,onDidCreateEditor:eae,onDidCreateDiffEditor:tae,createDiffEditor:sae,addCommand:rae,addEditorAction:aae,addKeybindingRule:lae,addKeybindingRules:K8,createModel:cae,setModelLanguage:dae,setModelMarkers:hae,getModelMarkers:fae,removeAllMarkers:uae,onDidChangeMarkers:gae,getModels:pae,getModel:mae,onDidCreateModel:_ae,onWillDisposeModel:bae,onDidChangeModelLanguage:Cae,createWebWorker:vae,colorizeElement:wae,colorize:yae,colorizeModelLine:Sae,tokenize:xae,defineTheme:kae,setTheme:Dae,remeasureFonts:Iae,registerCommand:Eae,registerLinkOpener:Nae,registerEditorOpener:Tae,AccessibilitySupport:VL,ContentWidgetPositionPreference:qL,CursorChangeReason:GL,DefaultEndOfLine:ZL,EditorAutoIndentStrategy:QL,EditorOption:XL,EndOfLinePreference:JL,EndOfLineSequence:ex,MinimapPosition:hx,MinimapSectionHeaderStyle:ux,MouseTargetType:fx,OverlayWidgetPositionPreference:px,OverviewRulerLane:_x,GlyphMarginLane:tx,RenderLineNumbersType:vx,RenderMinimap:wx,ScrollbarVisibility:Sx,ScrollType:yx,TextEditorCursorBlinkingStyle:Ex,TextEditorCursorStyle:Nx,TrackedRangeStickiness:Tx,WrappingIndent:Mx,InjectedTextCursorStops:sx,PositionAffinity:Cx,ShowLightbulbIconMode:xx,ConfigurationChangedEvent:j5,BareFontInfo:Yd,FontInfo:qx,TextModelResolvedOptions:k1,FindMatch:Qp,ApplyUpdateResult:$m,EditorZoom:Xl,createMultiFileDiffEditor:oae,EditorType:yy,EditorOptions:Xh}}function Rae(o,e){if(!e||!Array.isArray(e))return!1;for(const t of e)if(!o(t))return!1;return!0}function l1(o,e){return typeof o=="boolean"?o:e}function D4(o,e){return typeof o=="string"?o:e}function Aae(o){const e={};for(const t of o)e[t]=!0;return e}function I4(o,e=!1){e&&(o=o.map(function(i){return i.toLowerCase()}));const t=Aae(o);return e?function(i){return t[i.toLowerCase()]!==void 0&&t.hasOwnProperty(i.toLowerCase())}:function(i){return t[i]!==void 0&&t.hasOwnProperty(i)}}function lE(o,e,t){e=e.replace(/@@/g,"");let i=0,n;do n=!1,e=e.replace(/@(\w+)/g,function(r,a){n=!0;let l="";if(typeof o[a]=="string")l=o[a];else if(o[a]&&o[a]instanceof RegExp)l=o[a].source;else throw o[a]===void 0?Et(o,"language definition does not contain attribute '"+a+"', used at: "+e):Et(o,"attribute reference '"+a+"' must be a string, used at: "+e);return kd(l)?"":"(?:"+l+")"}),i++;while(n&&i<5);e=e.replace(/\x01/g,"@");const s=(o.ignoreCase?"i":"")+(o.unicode?"u":"");if(t&&e.match(/\$[sS](\d\d?)/g)){let a=null,l=null;return c=>(l&&a===c||(a=c,l=new RegExp(mie(o,e,c),s)),l)}return new RegExp(e,s)}function Pae(o,e,t,i){if(i<0)return o;if(i=100){i=i-100;const n=t.split(".");if(n.unshift(t),i=0&&(i.tokenSubst=!0),typeof t.bracket=="string")if(t.bracket==="@open")i.bracket=1;else if(t.bracket==="@close")i.bracket=-1;else throw Et(o,"a 'bracket' attribute must be either '@open' or '@close', in rule: "+e);if(t.next){if(typeof t.next!="string")throw Et(o,"the next state must be a string value in rule: "+e);{let n=t.next;if(!/^(@pop|@push|@popall)$/.test(n)&&(n[0]==="@"&&(n=n.substr(1)),n.indexOf("$")<0&&!pie(o,tc(o,n,"",[],""))))throw Et(o,"the next state '"+t.next+"' is not defined in rule: "+e);i.next=n}}return typeof t.goBack=="number"&&(i.goBack=t.goBack),typeof t.switchTo=="string"&&(i.switchTo=t.switchTo),typeof t.log=="string"&&(i.log=t.log),typeof t.nextEmbedded=="string"&&(i.nextEmbedded=t.nextEmbedded,o.usesEmbedded=!0),i}}else if(Array.isArray(t)){const i=[];for(let n=0,s=t.length;n0&&i[0]==="^",this.name=this.name+": "+i,this.regex=lE(e,"^(?:"+(this.matchOnlyAtLineStart?i.substr(1):i)+")",!0)}setAction(e,t){this.action=cE(e,this.name,t)}resolveRegex(e){return this.regex instanceof RegExp?this.regex:this.regex(e)}}function j8(o,e){if(!e||typeof e!="object")throw new Error("Monarch: expecting a language definition object");const t={languageId:o,includeLF:l1(e.includeLF,!1),noThrow:!1,maxStack:100,start:typeof e.start=="string"?e.start:null,ignoreCase:l1(e.ignoreCase,!1),unicode:l1(e.unicode,!1),tokenPostfix:D4(e.tokenPostfix,"."+o),defaultToken:D4(e.defaultToken,"source"),usesEmbedded:!1,stateNames:{},tokenizer:{},brackets:[]},i=e;i.languageId=o,i.includeLF=t.includeLF,i.ignoreCase=t.ignoreCase,i.unicode=t.unicode,i.noThrow=t.noThrow,i.usesEmbedded=t.usesEmbedded,i.stateNames=e.tokenizer,i.defaultToken=t.defaultToken;function n(r,a,l){for(const c of l){let d=c.include;if(d){if(typeof d!="string")throw Et(t,"an 'include' attribute must be a string at: "+r);if(d[0]==="@"&&(d=d.substr(1)),!e.tokenizer[d])throw Et(t,"include target '"+d+"' is not defined at: "+r);n(r+"."+d,a,e.tokenizer[d])}else{const h=new Fae(r);if(Array.isArray(c)&&c.length>=1&&c.length<=3)if(h.setRegex(i,c[0]),c.length>=3)if(typeof c[1]=="string")h.setAction(i,{token:c[1],next:c[2]});else if(typeof c[1]=="object"){const u=c[1];u.next=c[2],h.setAction(i,u)}else throw Et(t,"a next state as the last element of a rule can only be given if the action is either an object or a string, at: "+r);else h.setAction(i,c[1]);else{if(!c.regex)throw Et(t,"a rule must either be an array, or an object with a 'regex' or 'include' field at: "+r);c.name&&typeof c.name=="string"&&(h.name=c.name),c.matchOnlyAtStart&&(h.matchOnlyAtLineStart=l1(c.matchOnlyAtLineStart,!1)),h.setRegex(i,c.regex),h.setAction(i,c.action)}a.push(h)}}}if(!e.tokenizer||typeof e.tokenizer!="object")throw Et(t,"a language definition must define the 'tokenizer' attribute as an object");t.tokenizer=[];for(const r in e.tokenizer)if(e.tokenizer.hasOwnProperty(r)){t.start||(t.start=r);const a=e.tokenizer[r];t.tokenizer[r]=new Array,n("tokenizer."+r,t.tokenizer[r],a)}if(t.usesEmbedded=i.usesEmbedded,e.brackets){if(!Array.isArray(e.brackets))throw Et(t,"the 'brackets' attribute must be defined as an array")}else e.brackets=[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}];const s=[];for(const r of e.brackets){let a=r;if(a&&Array.isArray(a)&&a.length===3&&(a={token:a[2],open:a[0],close:a[1]}),a.open===a.close)throw Et(t,"open and close brackets in a 'brackets' attribute must be different: "+a.open+` - hint: use the 'bracket' attribute if matching on equal brackets is required.`);if(typeof a.open=="string"&&typeof a.token=="string"&&typeof a.close=="string")s.push({token:a.token+t.tokenPostfix,open:yl(t,a.open),close:yl(t,a.close)});else throw Et(t,"every element in the 'brackets' array must be a '{open,close,token}' object or array")}return t.brackets=s,t.noThrow=!0,t}function Bae(o){lg.registerLanguage(o)}function Wae(){let o=[];return o=o.concat(lg.getLanguages()),o}function Hae(o){return pe.get(qt).languageIdCodec.encodeLanguageId(o)}function Vae(o,e){return pe.withServices(()=>{const i=pe.get(qt).onDidRequestRichLanguageFeatures(n=>{n===o&&(i.dispose(),e())});return i})}function zae(o,e){return pe.withServices(()=>{const i=pe.get(qt).onDidRequestBasicLanguageFeatures(n=>{n===o&&(i.dispose(),e())});return i})}function Uae(o,e){if(!pe.get(qt).isRegisteredLanguageId(o))throw new Error(`Cannot set configuration for unknown language ${o}`);return pe.get(Gn).register(o,e,100)}class $ae{constructor(e,t){this._languageId=e,this._actual=t}dispose(){}getInitialState(){return this._actual.getInitialState()}tokenize(e,t,i){if(typeof this._actual.tokenize=="function")return T_.adaptTokenize(this._languageId,this._actual,e,i);throw new Error("Not supported!")}tokenizeEncoded(e,t,i){const n=this._actual.tokenizeEncoded(e,i);return new x0(n.tokens,n.endState)}}class T_{constructor(e,t,i,n){this._languageId=e,this._actual=t,this._languageService=i,this._standaloneThemeService=n}dispose(){}getInitialState(){return this._actual.getInitialState()}static _toClassicTokens(e,t){const i=[];let n=0;for(let s=0,r=e.length;s0&&s[r-1]===u)continue;let f=h.startIndex;c===0?f=0:f{const i=await Promise.resolve(e.create());return i?Kae(i)?G8(o,i):new S_(pe.get(qt),pe.get(zo),o,j8(o,i),pe.get(lt)):null});return si.registerFactory(o,t)}function Gae(o,e){if(!pe.get(qt).isRegisteredLanguageId(o))throw new Error(`Cannot set tokens provider for unknown language ${o}`);return q8(e)?lM(o,{create:()=>e}):si.register(o,G8(o,e))}function Zae(o,e){const t=i=>new S_(pe.get(qt),pe.get(zo),o,j8(o,i),pe.get(lt));return q8(e)?lM(o,{create:()=>e}):si.register(o,t(e))}function Yae(o,e){return pe.get(Se).referenceProvider.register(o,e)}function Qae(o,e){return pe.get(Se).renameProvider.register(o,e)}function Xae(o,e){return pe.get(Se).newSymbolNamesProvider.register(o,e)}function Jae(o,e){return pe.get(Se).signatureHelpProvider.register(o,e)}function ele(o,e){return pe.get(Se).hoverProvider.register(o,{provideHover:async(i,n,s,r)=>{const a=i.getWordAtPosition(n);return Promise.resolve(e.provideHover(i,n,s,r)).then(l=>{if(l)return!l.range&&a&&(l.range=new I(n.lineNumber,a.startColumn,n.lineNumber,a.endColumn)),l.range||(l.range=new I(n.lineNumber,n.column,n.lineNumber,n.column)),l})}})}function tle(o,e){return pe.get(Se).documentSymbolProvider.register(o,e)}function ile(o,e){return pe.get(Se).documentHighlightProvider.register(o,e)}function nle(o,e){return pe.get(Se).linkedEditingRangeProvider.register(o,e)}function sle(o,e){return pe.get(Se).definitionProvider.register(o,e)}function ole(o,e){return pe.get(Se).implementationProvider.register(o,e)}function rle(o,e){return pe.get(Se).typeDefinitionProvider.register(o,e)}function ale(o,e){return pe.get(Se).codeLensProvider.register(o,e)}function lle(o,e,t){return pe.get(Se).codeActionProvider.register(o,{providedCodeActionKinds:t?.providedCodeActionKinds,documentation:t?.documentation,provideCodeActions:(n,s,r,a)=>{const c=pe.get(xa).read({resource:n.uri}).filter(d=>I.areIntersectingOrTouching(d,s));return e.provideCodeActions(n,s,{markers:c,only:r.only,trigger:r.trigger},a)},resolveCodeAction:e.resolveCodeAction})}function cle(o,e){return pe.get(Se).documentFormattingEditProvider.register(o,e)}function dle(o,e){return pe.get(Se).documentRangeFormattingEditProvider.register(o,e)}function hle(o,e){return pe.get(Se).onTypeFormattingEditProvider.register(o,e)}function ule(o,e){return pe.get(Se).linkProvider.register(o,e)}function fle(o,e){return pe.get(Se).completionProvider.register(o,e)}function gle(o,e){return pe.get(Se).colorProvider.register(o,e)}function mle(o,e){return pe.get(Se).foldingRangeProvider.register(o,e)}function ple(o,e){return pe.get(Se).declarationProvider.register(o,e)}function _le(o,e){return pe.get(Se).selectionRangeProvider.register(o,e)}function ble(o,e){return pe.get(Se).documentSemanticTokensProvider.register(o,e)}function Cle(o,e){return pe.get(Se).documentRangeSemanticTokensProvider.register(o,e)}function vle(o,e){return pe.get(Se).inlineCompletionsProvider.register(o,e)}function wle(o,e){return pe.get(Se).inlineEditProvider.register(o,e)}function yle(o,e){return pe.get(Se).inlayHintsProvider.register(o,e)}function Sle(){return{register:Bae,getLanguages:Wae,onLanguage:Vae,onLanguageEncountered:zae,getEncodedLanguageId:Hae,setLanguageConfiguration:Uae,setColorMap:qae,registerTokensProviderFactory:lM,setTokensProvider:Gae,setMonarchTokensProvider:Zae,registerReferenceProvider:Yae,registerRenameProvider:Qae,registerNewSymbolNameProvider:Xae,registerCompletionItemProvider:fle,registerSignatureHelpProvider:Jae,registerHoverProvider:ele,registerDocumentSymbolProvider:tle,registerDocumentHighlightProvider:ile,registerLinkedEditingRangeProvider:nle,registerDefinitionProvider:sle,registerImplementationProvider:ole,registerTypeDefinitionProvider:rle,registerCodeLensProvider:ale,registerCodeActionProvider:lle,registerDocumentFormattingEditProvider:cle,registerDocumentRangeFormattingEditProvider:dle,registerOnTypeFormattingEditProvider:hle,registerLinkProvider:ule,registerColorProvider:gle,registerFoldingRangeProvider:mle,registerDeclarationProvider:ple,registerSelectionRangeProvider:_le,registerDocumentSemanticTokensProvider:ble,registerDocumentRangeSemanticTokensProvider:Cle,registerInlineCompletionsProvider:vle,registerInlineEditProvider:wle,registerInlayHintsProvider:yle,DocumentHighlightKind:YL,CompletionItemKind:$L,CompletionItemTag:KL,CompletionItemInsertTextRule:UL,SymbolKind:Dx,SymbolTag:Ix,IndentAction:nx,CompletionTriggerKind:jL,SignatureHelpTriggerKind:kx,InlayHintKind:ox,InlineCompletionTriggerKind:rx,InlineEditTriggerKind:ax,CodeActionTriggerType:zL,NewSymbolNameTag:gx,NewSymbolNameTriggerKind:mx,PartialAcceptTriggerKind:bx,HoverVerbosityAction:ix,FoldingRangeKind:BL,SelectedSuggestionInfo:lF}}const cM=He("IEditorCancelService"),Z8=new le("cancellableOperation",!1,m("cancellableOperation","Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));Qe(cM,class{constructor(){this._tokens=new WeakMap}add(o,e){let t=this._tokens.get(o);t||(t=o.invokeWithinContext(n=>{const s=Z8.bindTo(n.get(De)),r=new yn;return{key:s,tokens:r}}),this._tokens.set(o,t));let i;return t.key.set(!0),i=t.tokens.push(e),()=>{i&&(i(),t.key.set(!t.tokens.isEmpty()),i=void 0)}}cancel(o){const e=this._tokens.get(o);if(!e)return;const t=e.tokens.pop();t&&(t.cancel(),e.key.set(!e.tokens.isEmpty()))}},1);class Lle extends In{constructor(e,t){super(t),this.editor=e,this._unregister=e.invokeWithinContext(i=>i.get(cM).add(e,this))}dispose(){this._unregister(),super.dispose()}}ge(new class extends co{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:Z8})}runEditorCommand(o,e){o.get(cM).cancel(e)}});let xle=class dE{constructor(e,t){if(this.flags=t,(this.flags&1)!==0){const i=e.getModel();this.modelVersionId=i?$p("{0}#{1}",i.uri.toString(),i.getVersionId()):null}else this.modelVersionId=null;(this.flags&4)!==0?this.position=e.getPosition():this.position=null,(this.flags&2)!==0?this.selection=e.getSelection():this.selection=null,(this.flags&8)!==0?(this.scrollLeft=e.getScrollLeft(),this.scrollTop=e.getScrollTop()):(this.scrollLeft=-1,this.scrollTop=-1)}_equals(e){if(!(e instanceof dE))return!1;const t=e;return!(this.modelVersionId!==t.modelVersionId||this.scrollLeft!==t.scrollLeft||this.scrollTop!==t.scrollTop||!this.position&&t.position||this.position&&!t.position||this.position&&t.position&&!this.position.equals(t.position)||!this.selection&&t.selection||this.selection&&!t.selection||this.selection&&t.selection&&!this.selection.equalsRange(t.selection))}validate(e){return this._equals(new dE(e,this.flags))}};class kle extends Lle{constructor(e,t,i,n){super(e,n),this._listener=new X,t&4&&this._listener.add(e.onDidChangeCursorPosition(s=>{(!i||!I.containsPosition(i,s.position))&&this.cancel()})),t&2&&this._listener.add(e.onDidChangeCursorSelection(s=>{(!i||!I.containsRange(i,s.selection))&&this.cancel()})),t&8&&this._listener.add(e.onDidScrollChange(s=>this.cancel())),t&1&&(this._listener.add(e.onDidChangeModel(s=>this.cancel())),this._listener.add(e.onDidChangeModelContent(s=>this.cancel())))}dispose(){this._listener.dispose(),super.dispose()}}class Dle extends In{constructor(e,t){super(t),this._listener=e.onDidChangeContent(()=>this.cancel())}dispose(){this._listener.dispose(),super.dispose()}}function Y8(o){return o&&typeof o.getEditorType=="function"?o.getEditorType()===yy.ICodeEditor:!1}class E4{constructor(e){this.value=e,this._lower=e.toLowerCase()}static toKey(e){return typeof e=="string"?e.toLowerCase():e._lower}}class Ile{constructor(e){if(this._set=new Set,e)for(const t of e)this.add(t)}add(e){this._set.add(E4.toKey(e))}has(e){return this._set.has(E4.toKey(e))}}function Ele(o,e,t){const i=[],n=new Ile,s=o.ordered(t);for(const a of s)i.push(a),a.extensionId&&n.add(a.extensionId);const r=e.ordered(t);for(const a of r){if(a.extensionId){if(n.has(a.extensionId))continue;n.add(a.extensionId)}i.push({displayName:a.displayName,extensionId:a.extensionId,provideDocumentFormattingEdits(l,c,d){return a.provideDocumentRangeFormattingEdits(l,l.getFullModelRange(),c,d)}})}return i}const Fp=class Fp{static setFormatterSelector(e){return{dispose:Fp._selectors.unshift(e)}}static async select(e,t,i,n){if(e.length===0)return;const s=st.first(Fp._selectors);if(s)return await s(e,t,i,n)}};Fp._selectors=new yn;let hE=Fp;async function Nle(o,e,t,i,n,s){const r=e.documentRangeFormattingEditProvider.ordered(t);for(const a of r){const l=await Promise.resolve(a.provideDocumentRangeFormattingEdits(t,i,n,s)).catch($n);if(Ps(l))return await o.computeMoreMinimalEdits(t.uri,l)}}async function Tle(o,e,t,i,n){const s=Ele(e.documentFormattingEditProvider,e.documentRangeFormattingEditProvider,t);for(const r of s){const a=await Promise.resolve(r.provideDocumentFormattingEdits(t,i,n)).catch($n);if(Ps(a))return await o.computeMoreMinimalEdits(t.uri,a)}}function Mle(o,e,t,i,n,s,r){const a=e.onTypeFormattingEditProvider.ordered(t);return a.length===0||a[0].autoFormatTriggerCharacters.indexOf(n)<0?Promise.resolve(void 0):Promise.resolve(a[0].provideOnTypeFormattingEdits(t,i,n,s,r)).catch($n).then(l=>o.computeMoreMinimalEdits(t.uri,l))}bt.registerCommand("_executeFormatRangeProvider",async function(o,...e){const[t,i,n]=e;ai(ve.isUri(t)),ai(I.isIRange(i));const s=o.get(fo),r=o.get(Zc),a=o.get(Se),l=await s.createModelReference(t);try{return Nle(r,a,l.object.textEditorModel,I.lift(i),n,ut.None)}finally{l.dispose()}});bt.registerCommand("_executeFormatDocumentProvider",async function(o,...e){const[t,i]=e;ai(ve.isUri(t));const n=o.get(fo),s=o.get(Zc),r=o.get(Se),a=await n.createModelReference(t);try{return Tle(s,r,a.object.textEditorModel,i,ut.None)}finally{a.dispose()}});bt.registerCommand("_executeFormatOnTypeProvider",async function(o,...e){const[t,i,n,s]=e;ai(ve.isUri(t)),ai(P.isIPosition(i)),ai(typeof n=="string");const r=o.get(fo),a=o.get(Zc),l=o.get(Se),c=await r.createModelReference(t);try{return Mle(a,l,c.object.textEditorModel,P.lift(i),n,s,ut.None)}finally{c.dispose()}});Xh.wrappingIndent.defaultValue=0;Xh.glyphMargin.defaultValue=!1;Xh.autoIndent.defaultValue=3;Xh.overviewRulerLanes.defaultValue=2;hE.setFormatterSelector((o,e,t)=>Promise.resolve(o[0]));const An=cF();An.editor=Mae();An.languages=Sle();An.CancellationTokenSource;An.Emitter;An.KeyCode;An.KeyMod;An.Position;const kge=An.Range;An.Selection;An.SelectionDirection;const Dge=An.MarkerSeverity;An.MarkerTag;An.Uri;An.Token;const Ige=An.editor,Ege=An.languages,Rle=globalThis.MonacoEnvironment;(Rle?.globalAPI||typeof define=="function"&&define.amd)&&(globalThis.monaco=An);typeof globalThis.require<"u"&&typeof globalThis.require.config=="function"&&globalThis.require.config({ignoreDuplicateModules:["vscode-languageserver-types","vscode-languageserver-types/main","vscode-languageserver-textdocument","vscode-languageserver-textdocument/main","vscode-nls","vscode-nls/vscode-nls","jsonc-parser","jsonc-parser/main","vscode-uri","vscode-uri/index","vs/basic-languages/typescript/typescript"]});const Q8="editor.action.showHover",Ale="editor.action.showDefinitionPreviewHover",Ple="editor.action.scrollUpHover",Ole="editor.action.scrollDownHover",Fle="editor.action.scrollLeftHover",Ble="editor.action.scrollRightHover",Wle="editor.action.pageUpHover",Hle="editor.action.pageDownHover",Vle="editor.action.goToTopHover",zle="editor.action.goToBottomHover",Ey="editor.action.increaseHoverVerbosityLevel",Ule=m({key:"increaseHoverVerbosityLevel",comment:["Label for action that will increase the hover verbosity level."]},"Increase Hover Verbosity Level"),Ny="editor.action.decreaseHoverVerbosityLevel",$le=m({key:"decreaseHoverVerbosityLevel",comment:["Label for action that will decrease the hover verbosity level."]},"Decrease Hover Verbosity Level");function uE(o,e){return!!o[e]}class uL{constructor(e,t){this.target=e.target,this.isLeftClick=e.event.leftButton,this.isMiddleClick=e.event.middleButton,this.isRightClick=e.event.rightButton,this.hasTriggerModifier=uE(e.event,t.triggerModifier),this.hasSideBySideModifier=uE(e.event,t.triggerSideBySideModifier),this.isNoneOrSingleMouseDown=e.event.detail<=1}}class N4{constructor(e,t){this.keyCodeIsTriggerKey=e.keyCode===t.triggerKey,this.keyCodeIsSideBySideKey=e.keyCode===t.triggerSideBySideKey,this.hasTriggerModifier=uE(e,t.triggerModifier)}}class c1{constructor(e,t,i,n){this.triggerKey=e,this.triggerModifier=t,this.triggerSideBySideKey=i,this.triggerSideBySideModifier=n}equals(e){return this.triggerKey===e.triggerKey&&this.triggerModifier===e.triggerModifier&&this.triggerSideBySideKey===e.triggerSideBySideKey&&this.triggerSideBySideModifier===e.triggerSideBySideModifier}}function T4(o){return o==="altKey"?Ue?new c1(57,"metaKey",6,"altKey"):new c1(5,"ctrlKey",6,"altKey"):Ue?new c1(6,"altKey",57,"metaKey"):new c1(6,"altKey",5,"ctrlKey")}class X8 extends z{constructor(e,t){super(),this._onMouseMoveOrRelevantKeyDown=this._register(new A),this.onMouseMoveOrRelevantKeyDown=this._onMouseMoveOrRelevantKeyDown.event,this._onExecute=this._register(new A),this.onExecute=this._onExecute.event,this._onCancel=this._register(new A),this.onCancel=this._onCancel.event,this._editor=e,this._extractLineNumberFromMouseEvent=t?.extractLineNumberFromMouseEvent??(i=>i.target.position?i.target.position.lineNumber:0),this._opts=T4(this._editor.getOption(78)),this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._register(this._editor.onDidChangeConfiguration(i=>{if(i.hasChanged(78)){const n=T4(this._editor.getOption(78));if(this._opts.equals(n))return;this._opts=n,this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._onCancel.fire()}})),this._register(this._editor.onMouseMove(i=>this._onEditorMouseMove(new uL(i,this._opts)))),this._register(this._editor.onMouseDown(i=>this._onEditorMouseDown(new uL(i,this._opts)))),this._register(this._editor.onMouseUp(i=>this._onEditorMouseUp(new uL(i,this._opts)))),this._register(this._editor.onKeyDown(i=>this._onEditorKeyDown(new N4(i,this._opts)))),this._register(this._editor.onKeyUp(i=>this._onEditorKeyUp(new N4(i,this._opts)))),this._register(this._editor.onMouseDrag(()=>this._resetHandler())),this._register(this._editor.onDidChangeCursorSelection(i=>this._onDidChangeCursorSelection(i))),this._register(this._editor.onDidChangeModel(i=>this._resetHandler())),this._register(this._editor.onDidChangeModelContent(()=>this._resetHandler())),this._register(this._editor.onDidScrollChange(i=>{(i.scrollTopChanged||i.scrollLeftChanged)&&this._resetHandler()}))}_onDidChangeCursorSelection(e){e.selection&&e.selection.startColumn!==e.selection.endColumn&&this._resetHandler()}_onEditorMouseMove(e){this._lastMouseMoveEvent=e,this._onMouseMoveOrRelevantKeyDown.fire([e,null])}_onEditorMouseDown(e){this._hasTriggerKeyOnMouseDown=e.hasTriggerModifier,this._lineNumberOnMouseDown=this._extractLineNumberFromMouseEvent(e)}_onEditorMouseUp(e){const t=this._extractLineNumberFromMouseEvent(e);this._hasTriggerKeyOnMouseDown&&this._lineNumberOnMouseDown&&this._lineNumberOnMouseDown===t&&this._onExecute.fire(e)}_onEditorKeyDown(e){this._lastMouseMoveEvent&&(e.keyCodeIsTriggerKey||e.keyCodeIsSideBySideKey&&e.hasTriggerModifier)?this._onMouseMoveOrRelevantKeyDown.fire([this._lastMouseMoveEvent,e]):e.hasTriggerModifier&&this._onCancel.fire()}_onEditorKeyUp(e){e.keyCodeIsTriggerKey&&this._onCancel.fire()}_resetHandler(){this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._onCancel.fire()}}var Kle=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Oa=function(o,e){return function(t,i){e(t,i,o)}};let Gh=class extends I_{constructor(e,t,i,n,s,r,a,l,c,d,h,u,f){super(e,{...n.getRawOptions(),overflowWidgetsDomNode:n.getOverflowWidgetsDomNode()},i,s,r,a,l,c,d,h,u,f),this._parentEditor=n,this._overwriteOptions=t,super.updateOptions(this._overwriteOptions),this._register(n.onDidChangeConfiguration(g=>this._onParentConfigurationChanged(g)))}getParentEditor(){return this._parentEditor}_onParentConfigurationChanged(e){super.updateOptions(this._parentEditor.getRawOptions()),super.updateOptions(this._overwriteOptions)}updateOptions(e){S0(this._overwriteOptions,e,!0),super.updateOptions(this._overwriteOptions)}};Gh=Kle([Oa(4,ke),Oa(5,Pt),Oa(6,hi),Oa(7,De),Oa(8,en),Oa(9,mn),Oa(10,ms),Oa(11,Gn),Oa(12,Se)],Gh);const M4=new q(new qe(0,122,204)),jle={showArrow:!0,showFrame:!0,className:"",frameColor:M4,arrowColor:M4,keepEditorSelection:!1},qle="vs.editor.contrib.zoneWidget";class Gle{constructor(e,t,i,n,s,r,a,l){this.id="",this.domNode=e,this.afterLineNumber=t,this.afterColumn=i,this.heightInLines=n,this.showInHiddenAreas=a,this.ordinal=l,this._onDomNodeTop=s,this._onComputedHeight=r}onDomNodeTop(e){this._onDomNodeTop(e)}onComputedHeight(e){this._onComputedHeight(e)}}class Zle{constructor(e,t){this._id=e,this._domNode=t}getId(){return this._id}getDomNode(){return this._domNode}getPosition(){return null}}const h0=class h0{constructor(e){this._editor=e,this._ruleName=h0._IdGenerator.nextId(),this._decorations=this._editor.createDecorationsCollection(),this._color=null,this._height=-1}dispose(){this.hide(),jx(this._ruleName)}set color(e){this._color!==e&&(this._color=e,this._updateStyle())}set height(e){this._height!==e&&(this._height=e,this._updateStyle())}_updateStyle(){jx(this._ruleName),bC(`.monaco-editor ${this._ruleName}`,`border-style: solid; border-color: transparent; border-bottom-color: ${this._color}; border-width: ${this._height}px; bottom: -${this._height}px !important; margin-left: -${this._height}px; `)}show(e){e.column===1&&(e={lineNumber:e.lineNumber,column:2}),this._decorations.set([{range:I.fromPositions(e),options:{description:"zone-widget-arrow",className:this._ruleName,stickiness:1}}])}hide(){this._decorations.clear()}};h0._IdGenerator=new HT(".arrow-decoration-");let fE=h0;class Yle{constructor(e,t={}){this._arrow=null,this._overlayWidget=null,this._resizeSash=null,this._viewZone=null,this._disposables=new X,this.container=null,this._isShowing=!1,this.editor=e,this._positionMarkerId=this.editor.createDecorationsCollection(),this.options=Ya(t),S0(this.options,jle,!1),this.domNode=document.createElement("div"),this.options.isAccessible||(this.domNode.setAttribute("aria-hidden","true"),this.domNode.setAttribute("role","presentation")),this._disposables.add(this.editor.onDidLayoutChange(i=>{const n=this._getWidth(i);this.domNode.style.width=n+"px",this.domNode.style.left=this._getLeft(i)+"px",this._onWidth(n)}))}dispose(){this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._viewZone&&this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id),this._viewZone=null}),this._positionMarkerId.clear(),this._disposables.dispose()}create(){this.domNode.classList.add("zone-widget"),this.options.className&&this.domNode.classList.add(this.options.className),this.container=document.createElement("div"),this.container.classList.add("zone-widget-container"),this.domNode.appendChild(this.container),this.options.showArrow&&(this._arrow=new fE(this.editor),this._disposables.add(this._arrow)),this._fillContainer(this.container),this._initSash(),this._applyStyles()}style(e){e.frameColor&&(this.options.frameColor=e.frameColor),e.arrowColor&&(this.options.arrowColor=e.arrowColor),this._applyStyles()}_applyStyles(){if(this.container&&this.options.frameColor){const e=this.options.frameColor.toString();this.container.style.borderTopColor=e,this.container.style.borderBottomColor=e}if(this._arrow&&this.options.arrowColor){const e=this.options.arrowColor.toString();this._arrow.color=e}}_getWidth(e){return e.width-e.minimap.minimapWidth-e.verticalScrollbarWidth}_getLeft(e){return e.minimap.minimapWidth>0&&e.minimap.minimapLeft===0?e.minimap.minimapWidth:0}_onViewZoneTop(e){this.domNode.style.top=e+"px"}_onViewZoneHeight(e){if(this.domNode.style.height=`${e}px`,this.container){const t=e-this._decoratingElementsHeight();this.container.style.height=`${t}px`;const i=this.editor.getLayoutInfo();this._doLayout(t,this._getWidth(i))}this._resizeSash?.layout()}get position(){const e=this._positionMarkerId.getRange(0);if(e)return e.getStartPosition()}show(e,t){const i=I.isIRange(e)?I.lift(e):I.fromPositions(e);this._isShowing=!0,this._showImpl(i,t),this._isShowing=!1,this._positionMarkerId.set([{range:i,options:kt.EMPTY}])}hide(){this._viewZone&&(this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id)}),this._viewZone=null),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._arrow?.hide(),this._positionMarkerId.clear()}_decoratingElementsHeight(){const e=this.editor.getOption(67);let t=0;if(this.options.showArrow){const i=Math.round(e/3);t+=2*i}if(this.options.showFrame){const i=Math.round(e/9);t+=2*i}return t}_showImpl(e,t){const i=e.getStartPosition(),n=this.editor.getLayoutInfo(),s=this._getWidth(n);this.domNode.style.width=`${s}px`,this.domNode.style.left=this._getLeft(n)+"px";const r=document.createElement("div");r.style.overflow="hidden";const a=this.editor.getOption(67);if(!this.options.allowUnlimitedHeight){const u=Math.max(12,this.editor.getLayoutInfo().height/a*.8);t=Math.min(t,u)}let l=0,c=0;if(this._arrow&&this.options.showArrow&&(l=Math.round(a/3),this._arrow.height=l,this._arrow.show(i)),this.options.showFrame&&(c=Math.round(a/9)),this.editor.changeViewZones(u=>{this._viewZone&&u.removeZone(this._viewZone.id),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this.domNode.style.top="-1000px",this._viewZone=new Gle(r,i.lineNumber,i.column,t,f=>this._onViewZoneTop(f),f=>this._onViewZoneHeight(f),this.options.showInHiddenAreas,this.options.ordinal),this._viewZone.id=u.addZone(this._viewZone),this._overlayWidget=new Zle(qle+this._viewZone.id,this.domNode),this.editor.addOverlayWidget(this._overlayWidget)}),this.container&&this.options.showFrame){const u=this.options.frameWidth?this.options.frameWidth:c;this.container.style.borderTopWidth=u+"px",this.container.style.borderBottomWidth=u+"px"}const d=t*a-this._decoratingElementsHeight();this.container&&(this.container.style.top=l+"px",this.container.style.height=d+"px",this.container.style.overflow="hidden"),this._doLayout(d,s),this.options.keepEditorSelection||this.editor.setSelection(e);const h=this.editor.getModel();if(h){const u=h.validateRange(new I(e.startLineNumber,1,e.endLineNumber+1,1));this.revealRange(u,u.startLineNumber===h.getLineCount())}}revealRange(e,t){t?this.editor.revealLineNearTop(e.endLineNumber,0):this.editor.revealRange(e,0)}setCssClass(e,t){this.container&&(t&&this.container.classList.remove(t),this.container.classList.add(e))}_onWidth(e){}_doLayout(e,t){}_relayout(e){this._viewZone&&this._viewZone.heightInLines!==e&&this.editor.changeViewZones(t=>{this._viewZone&&(this._viewZone.heightInLines=e,t.layoutZone(this._viewZone.id))})}_initSash(){if(this._resizeSash)return;this._resizeSash=this._disposables.add(new an(this.domNode,this,{orientation:1})),this.options.isResizeable||(this._resizeSash.state=0);let e;this._disposables.add(this._resizeSash.onDidStart(t=>{this._viewZone&&(e={startY:t.startY,heightInLines:this._viewZone.heightInLines})})),this._disposables.add(this._resizeSash.onDidEnd(()=>{e=void 0})),this._disposables.add(this._resizeSash.onDidChange(t=>{if(e){const i=(t.currentY-e.startY)/this.editor.getOption(67),n=i<0?Math.ceil(i):Math.floor(i),s=e.heightInLines+n;s>5&&s<35&&this._relayout(s)}}))}getHorizontalSashLeft(){return 0}getHorizontalSashTop(){return(this.domNode.style.height===null?0:parseInt(this.domNode.style.height))-this._decoratingElementsHeight()/2}getHorizontalSashWidth(){const e=this.editor.getLayoutInfo();return e.width-e.minimap.minimapWidth}}var J8=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},eB=function(o,e){return function(t,i){e(t,i,o)}};const tB=He("IPeekViewService");Qe(tB,class{constructor(){this._widgets=new Map}addExclusiveWidget(o,e){const t=this._widgets.get(o);t&&(t.listener.dispose(),t.widget.dispose());const i=()=>{const n=this._widgets.get(o);n&&n.widget===e&&(n.listener.dispose(),this._widgets.delete(o))};this._widgets.set(o,{widget:e,listener:e.onDidClose(i)})}},1);var qn;(function(o){o.inPeekEditor=new le("inReferenceSearchEditor",!0,m("inReferenceSearchEditor","Whether the current code editor is embedded inside peek")),o.notInPeekEditor=o.inPeekEditor.toNegated()})(qn||(qn={}));var eg;let Yv=(eg=class{constructor(e,t){e instanceof Gh&&qn.inPeekEditor.bindTo(t)}dispose(){}},eg.ID="editor.contrib.referenceController",eg);Yv=J8([eB(1,De)],Yv);Ho(Yv.ID,Yv,0);function Qle(o){const e=o.get(Pt).getFocusedCodeEditor();return e instanceof Gh?e.getParentEditor():e}const Xle={headerBackgroundColor:q.white,primaryHeadingColor:q.fromHex("#333333"),secondaryHeadingColor:q.fromHex("#6c6c6cb3")};let Qv=class extends Yle{constructor(e,t,i){super(e,t),this.instantiationService=i,this._onDidClose=new A,this.onDidClose=this._onDidClose.event,S0(this.options,Xle,!1)}dispose(){this.disposed||(this.disposed=!0,super.dispose(),this._onDidClose.fire(this))}style(e){const t=this.options;e.headerBackgroundColor&&(t.headerBackgroundColor=e.headerBackgroundColor),e.primaryHeadingColor&&(t.primaryHeadingColor=e.primaryHeadingColor),e.secondaryHeadingColor&&(t.secondaryHeadingColor=e.secondaryHeadingColor),super.style(e)}_applyStyles(){super._applyStyles();const e=this.options;this._headElement&&e.headerBackgroundColor&&(this._headElement.style.backgroundColor=e.headerBackgroundColor.toString()),this._primaryHeading&&e.primaryHeadingColor&&(this._primaryHeading.style.color=e.primaryHeadingColor.toString()),this._secondaryHeading&&e.secondaryHeadingColor&&(this._secondaryHeading.style.color=e.secondaryHeadingColor.toString()),this._bodyElement&&e.frameColor&&(this._bodyElement.style.borderColor=e.frameColor.toString())}_fillContainer(e){this.setCssClass("peekview-widget"),this._headElement=ce(".head"),this._bodyElement=ce(".body"),this._fillHead(this._headElement),this._fillBody(this._bodyElement),e.appendChild(this._headElement),e.appendChild(this._bodyElement)}_fillHead(e,t){this._titleElement=ce(".peekview-title"),this.options.supportOnTitleClick&&(this._titleElement.classList.add("clickable"),jt(this._titleElement,"click",s=>this._onTitleClick(s))),Z(this._headElement,this._titleElement),this._fillTitleIcon(this._titleElement),this._primaryHeading=ce("span.filename"),this._secondaryHeading=ce("span.dirname"),this._metaHeading=ce("span.meta"),Z(this._titleElement,this._primaryHeading,this._secondaryHeading,this._metaHeading);const i=ce(".peekview-actions");Z(this._headElement,i);const n=this._getActionBarOptions();this._actionbarWidget=new oo(i,n),this._disposables.add(this._actionbarWidget),t||this._actionbarWidget.push(new Fs("peekview.close",m("label.close","Close"),Ee.asClassName(ie.close),!0,()=>(this.dispose(),Promise.resolve())),{label:!1,icon:!0})}_fillTitleIcon(e){}_getActionBarOptions(){return{actionViewItemProvider:H7.bind(void 0,this.instantiationService),orientation:0}}_onTitleClick(e){}setTitle(e,t){this._primaryHeading&&this._secondaryHeading&&(this._primaryHeading.innerText=e,this._primaryHeading.setAttribute("title",e),t?this._secondaryHeading.innerText=t:xn(this._secondaryHeading))}setMetaTitle(e){this._metaHeading&&(e?(this._metaHeading.innerText=e,ns(this._metaHeading)):Cn(this._metaHeading))}_doLayout(e,t){if(!this._isShowing&&e<0){this.dispose();return}const i=Math.ceil(this.editor.getOption(67)*1.2),n=Math.round(e-(i+2));this._doLayoutHead(i,t),this._doLayoutBody(n,t)}_doLayoutHead(e,t){this._headElement&&(this._headElement.style.height=`${e}px`,this._headElement.style.lineHeight=this._headElement.style.height)}_doLayoutBody(e,t){this._bodyElement&&(this._bodyElement.style.height=`${e}px`)}};Qv=J8([eB(2,ke)],Qv);const Jle=D("peekViewTitle.background",{dark:"#252526",light:"#F3F3F3",hcDark:q.black,hcLight:q.white},m("peekViewTitleBackground","Background color of the peek view title area.")),iB=D("peekViewTitleLabel.foreground",{dark:q.white,light:q.black,hcDark:q.white,hcLight:Sa},m("peekViewTitleForeground","Color of the peek view title.")),nB=D("peekViewTitleDescription.foreground",{dark:"#ccccccb3",light:"#616161",hcDark:"#FFFFFF99",hcLight:"#292929"},m("peekViewTitleInfoForeground","Color of the peek view title info.")),ece=D("peekView.border",{dark:ma,light:ma,hcDark:Ye,hcLight:Ye},m("peekViewBorder","Color of the peek view borders and arrow.")),tce=D("peekViewResult.background",{dark:"#252526",light:"#F3F3F3",hcDark:q.black,hcLight:q.white},m("peekViewResultsBackground","Background color of the peek view result list."));D("peekViewResult.lineForeground",{dark:"#bbbbbb",light:"#646465",hcDark:q.white,hcLight:Sa},m("peekViewResultsMatchForeground","Foreground color for line nodes in the peek view result list."));D("peekViewResult.fileForeground",{dark:q.white,light:"#1E1E1E",hcDark:q.white,hcLight:Sa},m("peekViewResultsFileForeground","Foreground color for file nodes in the peek view result list."));D("peekViewResult.selectionBackground",{dark:"#3399ff33",light:"#3399ff33",hcDark:null,hcLight:null},m("peekViewResultsSelectionBackground","Background color of the selected entry in the peek view result list."));D("peekViewResult.selectionForeground",{dark:q.white,light:"#6C6C6C",hcDark:q.white,hcLight:Sa},m("peekViewResultsSelectionForeground","Foreground color of the selected entry in the peek view result list."));const sB=D("peekViewEditor.background",{dark:"#001F33",light:"#F2F8FC",hcDark:q.black,hcLight:q.white},m("peekViewEditorBackground","Background color of the peek view editor."));D("peekViewEditorGutter.background",sB,m("peekViewEditorGutterBackground","Background color of the gutter in the peek view editor."));D("peekViewEditorStickyScroll.background",sB,m("peekViewEditorStickScrollBackground","Background color of sticky scroll in the peek view editor."));D("peekViewResult.matchHighlightBackground",{dark:"#ea5c004d",light:"#ea5c004d",hcDark:null,hcLight:null},m("peekViewResultsMatchHighlight","Match highlight color in the peek view result list."));D("peekViewEditor.matchHighlightBackground",{dark:"#ff8f0099",light:"#f5d802de",hcDark:null,hcLight:null},m("peekViewEditorMatchHighlight","Match highlight color in the peek view editor."));D("peekViewEditor.matchHighlightBorder",{dark:null,light:null,hcDark:Ut,hcLight:Ut},m("peekViewEditorMatchHighlightBorder","Match highlight border in the peek view editor."));class zc{constructor(e,t,i,n){this.isProviderFirst=e,this.parent=t,this.link=i,this._rangeCallback=n,this.id=Pk.nextId()}get uri(){return this.link.uri}get range(){return this._range??this.link.targetSelectionRange??this.link.range}set range(e){this._range=e,this._rangeCallback(this)}get ariaMessage(){const e=this.parent.getPreview(this)?.preview(this.range);return e?m({key:"aria.oneReference.preview",comment:["Placeholders are: 0: filename, 1:line number, 2: column number, 3: preview snippet of source code"]},"{0} in {1} on line {2} at column {3}",e.value,Fo(this.uri),this.range.startLineNumber,this.range.startColumn):m("aria.oneReference","in {0} on line {1} at column {2}",Fo(this.uri),this.range.startLineNumber,this.range.startColumn)}}class ice{constructor(e){this._modelReference=e}dispose(){this._modelReference.dispose()}preview(e,t=8){const i=this._modelReference.object.textEditorModel;if(!i)return;const{startLineNumber:n,startColumn:s,endLineNumber:r,endColumn:a}=e,l=i.getWordUntilPosition({lineNumber:n,column:s-t}),c=new I(n,l.startColumn,n,s),d=new I(r,a,r,1073741824),h=i.getValueInRange(c).replace(/^\s+/,""),u=i.getValueInRange(e),f=i.getValueInRange(d).replace(/\s+$/,"");return{value:h+u+f,highlight:{start:h.length,end:h.length+u.length}}}}class M_{constructor(e,t){this.parent=e,this.uri=t,this.children=[],this._previews=new cs}dispose(){xt(this._previews.values()),this._previews.clear()}getPreview(e){return this._previews.get(e.uri)}get ariaMessage(){const e=this.children.length;return e===1?m("aria.fileReferences.1","1 symbol in {0}, full path {1}",Fo(this.uri),this.uri.fsPath):m("aria.fileReferences.N","{0} symbols in {1}, full path {2}",e,Fo(this.uri),this.uri.fsPath)}async resolve(e){if(this._previews.size!==0)return this;for(const t of this.children)if(!this._previews.has(t.uri))try{const i=await e.createModelReference(t.uri);this._previews.set(t.uri,new ice(i))}catch(i){Ze(i)}return this}}class ds{constructor(e,t){this.groups=[],this.references=[],this._onDidChangeReferenceRange=new A,this.onDidChangeReferenceRange=this._onDidChangeReferenceRange.event,this._links=e,this._title=t;const[i]=e;e.sort(ds._compareReferences);let n;for(const s of e)if((!n||!Tt.isEqual(n.uri,s.uri,!0))&&(n=new M_(this,s.uri),this.groups.push(n)),n.children.length===0||ds._compareReferences(s,n.children[n.children.length-1])!==0){const r=new zc(i===s,n,s,a=>this._onDidChangeReferenceRange.fire(a));this.references.push(r),n.children.push(r)}}dispose(){xt(this.groups),this._onDidChangeReferenceRange.dispose(),this.groups.length=0}clone(){return new ds(this._links,this._title)}get title(){return this._title}get isEmpty(){return this.groups.length===0}get ariaMessage(){return this.isEmpty?m("aria.result.0","No results found"):this.references.length===1?m("aria.result.1","Found 1 symbol in {0}",this.references[0].uri.fsPath):this.groups.length===1?m("aria.result.n1","Found {0} symbols in {1}",this.references.length,this.groups[0].uri.fsPath):m("aria.result.nm","Found {0} symbols in {1} files",this.references.length,this.groups.length)}nextOrPreviousReference(e,t){const{parent:i}=e;let n=i.children.indexOf(e);const s=i.children.length,r=i.parent.groups.length;return r===1||t&&n+10?(t?n=(n+1)%s:n=(n+s-1)%s,i.children[n]):(n=i.parent.groups.indexOf(i),t?(n=(n+1)%r,i.parent.groups[n].children[0]):(n=(n+r-1)%r,i.parent.groups[n].children[i.parent.groups[n].children.length-1]))}nearestReference(e,t){const i=this.references.map((n,s)=>({idx:s,prefixLen:Th(n.uri.toString(),e.toString()),offsetDist:Math.abs(n.range.startLineNumber-t.lineNumber)*100+Math.abs(n.range.startColumn-t.column)})).sort((n,s)=>n.prefixLen>s.prefixLen?-1:n.prefixLens.offsetDist?1:0)[0];if(i)return this.references[i.idx]}referenceAt(e,t){for(const i of this.references)if(i.uri.toString()===e.toString()&&I.containsPosition(i.range,t))return i}firstReference(){for(const e of this.references)if(e.isProviderFirst)return e;return this.references[0]}static _compareReferences(e,t){return Tt.compare(e.uri,t.uri)||I.compareRangesUsingStarts(e.range,t.range)}}var Ty=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},My=function(o,e){return function(t,i){e(t,i,o)}},gE;let mE=class{constructor(e){this._resolverService=e}hasChildren(e){return e instanceof ds||e instanceof M_}getChildren(e){if(e instanceof ds)return e.groups;if(e instanceof M_)return e.resolve(this._resolverService).then(t=>t.children);throw new Error("bad tree")}};mE=Ty([My(0,fo)],mE);class nce{getHeight(){return 23}getTemplateId(e){return e instanceof M_?Xv.id:Jv.id}}let pE=class{constructor(e){this._keybindingService=e}getKeyboardNavigationLabel(e){if(e instanceof zc){const t=e.parent.getPreview(e)?.preview(e.range);if(t)return t.value}return Fo(e.uri)}};pE=Ty([My(0,vt)],pE);class sce{getId(e){return e instanceof zc?e.id:e.uri}}let _E=class extends z{constructor(e,t){super(),this._labelService=t;const i=document.createElement("div");i.classList.add("reference-file"),this.file=this._register(new gv(i,{supportHighlights:!0})),this.badge=new PD(Z(i,ce(".count")),{},B7),e.appendChild(i)}set(e,t){const i=ny(e.uri);this.file.setLabel(this._labelService.getUriBasenameLabel(e.uri),this._labelService.getUriLabel(i,{relative:!0}),{title:this._labelService.getUriLabel(e.uri),matches:t});const n=e.children.length;this.badge.setCount(n),n>1?this.badge.setTitleFormat(m("referencesCount","{0} references",n)):this.badge.setTitleFormat(m("referenceCount","{0} reference",n))}};_E=Ty([My(1,Cg)],_E);var fh;let Xv=(fh=class{constructor(e){this._instantiationService=e,this.templateId=gE.id}renderTemplate(e){return this._instantiationService.createInstance(_E,e)}renderElement(e,t,i){i.set(e.element,iy(e.filterData))}disposeTemplate(e){e.dispose()}},gE=fh,fh.id="FileReferencesRenderer",fh);Xv=gE=Ty([My(0,ke)],Xv);class oce extends z{constructor(e){super(),this.label=this._register(new _c(e))}set(e,t){const i=e.parent.getPreview(e)?.preview(e.range);if(!i||!i.value)this.label.set(`${Fo(e.uri)}:${e.range.startLineNumber+1}:${e.range.startColumn+1}`);else{const{value:n,highlight:s}=i;t&&!oa.isDefault(t)?(this.label.element.classList.toggle("referenceMatch",!1),this.label.set(n,iy(t))):(this.label.element.classList.toggle("referenceMatch",!0),this.label.set(n,[s]))}}}const u0=class u0{constructor(){this.templateId=u0.id}renderTemplate(e){return new oce(e)}renderElement(e,t,i){i.set(e.element,e.filterData)}disposeTemplate(e){e.dispose()}};u0.id="OneReferenceRenderer";let Jv=u0;class rce{getWidgetAriaLabel(){return m("treeAriaLabel","References")}getAriaLabel(e){return e.ariaMessage}}var ace=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ou=function(o,e){return function(t,i){e(t,i,o)}};const f0=class f0{constructor(e,t){this._editor=e,this._model=t,this._decorations=new Map,this._decorationIgnoreSet=new Set,this._callOnDispose=new X,this._callOnModelChange=new X,this._callOnDispose.add(this._editor.onDidChangeModel(()=>this._onModelChanged())),this._onModelChanged()}dispose(){this._callOnModelChange.dispose(),this._callOnDispose.dispose(),this.removeDecorations()}_onModelChanged(){this._callOnModelChange.clear();const e=this._editor.getModel();if(e){for(const t of this._model.references)if(t.uri.toString()===e.uri.toString()){this._addDecorations(t.parent);return}}}_addDecorations(e){if(!this._editor.hasModel())return;this._callOnModelChange.add(this._editor.getModel().onDidChangeDecorations(()=>this._onDecorationChanged()));const t=[],i=[];for(let n=0,s=e.children.length;n{const s=n.deltaDecorations([],t);for(let r=0;r{s.equals(9)&&(this._keybindingService.dispatchEvent(s,s.target),s.stopPropagation())},!0)),this._tree=this._instantiationService.createInstance(cce,"ReferencesWidget",this._treeContainer,new nce,[this._instantiationService.createInstance(Xv),this._instantiationService.createInstance(Jv)],this._instantiationService.createInstance(mE),i),this._splitView.addView({onDidChange:J.None,element:this._previewContainer,minimumSize:200,maximumSize:Number.MAX_VALUE,layout:s=>{this._preview.layout({height:this._dim.height,width:s})}},av.Distribute),this._splitView.addView({onDidChange:J.None,element:this._treeContainer,minimumSize:100,maximumSize:Number.MAX_VALUE,layout:s=>{this._treeContainer.style.height=`${this._dim.height}px`,this._treeContainer.style.width=`${s}px`,this._tree.layout(this._dim.height,s)}},av.Distribute),this._disposables.add(this._splitView.onDidSashChange(()=>{this._dim.width&&(this.layoutData.ratio=this._splitView.getViewSize(0)/this._dim.width)},void 0));const n=(s,r)=>{s instanceof zc&&(r==="show"&&this._revealReference(s,!1),this._onDidSelectReference.fire({element:s,kind:r,source:"tree"}))};this._disposables.add(this._tree.onDidOpen(s=>{s.sideBySide?n(s.element,"side"):s.editorOptions.pinned?n(s.element,"goto"):n(s.element,"show")})),Cn(this._treeContainer)}_onWidth(e){this._dim&&this._doLayoutBody(this._dim.height,e)}_doLayoutBody(e,t){super._doLayoutBody(e,t),this._dim=new rt(t,e),this.layoutData.heightInLines=this._viewZone?this._viewZone.heightInLines:this.layoutData.heightInLines,this._splitView.layout(t),this._splitView.resizeView(0,t*this.layoutData.ratio)}setSelection(e){return this._revealReference(e,!0).then(()=>{this._model&&(this._tree.setSelection([e]),this._tree.setFocus([e]))})}setModel(e){return this._disposeOnNewModel.clear(),this._model=e,this._model?this._onNewModel():Promise.resolve()}_onNewModel(){return this._model?this._model.isEmpty?(this.setTitle(""),this._messageContainer.innerText=m("noResults","No results"),ns(this._messageContainer),Promise.resolve(void 0)):(Cn(this._messageContainer),this._decorationsManager=new bE(this._preview,this._model),this._disposeOnNewModel.add(this._decorationsManager),this._disposeOnNewModel.add(this._model.onDidChangeReferenceRange(e=>this._tree.rerender(e))),this._disposeOnNewModel.add(this._preview.onMouseDown(e=>{const{event:t,target:i}=e;if(t.detail!==2)return;const n=this._getFocusedReference();n&&this._onDidSelectReference.fire({element:{uri:n.uri,range:i.range},kind:t.ctrlKey||t.metaKey||t.altKey?"side":"open",source:"editor"})})),this.container.classList.add("results-loaded"),ns(this._treeContainer),ns(this._previewContainer),this._splitView.layout(this._dim.width),this.focusOnReferenceTree(),this._tree.setInput(this._model.groups.length===1?this._model.groups[0]:this._model)):Promise.resolve(void 0)}_getFocusedReference(){const[e]=this._tree.getFocus();if(e instanceof zc)return e;if(e instanceof M_&&e.children.length>0)return e.children[0]}async revealReference(e){await this._revealReference(e,!1),this._onDidSelectReference.fire({element:e,kind:"goto",source:"tree"})}async _revealReference(e,t){if(this._revealedReference===e)return;this._revealedReference=e,e.uri.scheme!==Te.inMemory?this.setTitle(Zq(e.uri),this._uriLabel.getUriLabel(ny(e.uri))):this.setTitle(m("peekView.alternateTitle","References"));const i=this._textModelResolverService.createModelReference(e.uri);this._tree.getInput()===e.parent?this._tree.reveal(e):(t&&this._tree.reveal(e.parent),await this._tree.expand(e.parent),this._tree.reveal(e));const n=await i;if(!this._model){n.dispose();return}xt(this._previewModelReference);const s=n.object;if(s){const r=this._preview.getModel()===s.textEditorModel?0:1,a=I.lift(e.range).collapseToStart();this._previewModelReference=n,this._preview.setModel(s.textEditorModel),this._preview.setSelection(a),this._preview.revealRangeInCenter(a,r)}else this._preview.setModel(this._previewNotAvailableMessage),n.dispose()}};CE=ace([Ou(3,en),Ou(4,fo),Ou(5,ke),Ou(6,tB),Ou(7,Cg),Ou(8,vt)],CE);var dce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Fu=function(o,e){return function(t,i){e(t,i,o)}},G1;const _u=new le("referenceSearchVisible",!1,m("referenceSearchVisible","Whether reference peek is visible, like 'Peek References' or 'Peek Definition'"));var gh;let R_=(gh=class{static get(e){return e.getContribution(G1.ID)}constructor(e,t,i,n,s,r,a,l){this._defaultTreeKeyboardSupport=e,this._editor=t,this._editorService=n,this._notificationService=s,this._instantiationService=r,this._storageService=a,this._configurationService=l,this._disposables=new X,this._requestIdPool=0,this._ignoreModelChangeEvent=!1,this._referenceSearchVisible=_u.bindTo(i)}dispose(){this._referenceSearchVisible.reset(),this._disposables.dispose(),this._widget?.dispose(),this._model?.dispose(),this._widget=void 0,this._model=void 0}toggleWidget(e,t,i){let n;if(this._widget&&(n=this._widget.position),this.closeWidget(),n&&e.containsPosition(n))return;this._peekMode=i,this._referenceSearchVisible.set(!0),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>{this.closeWidget()})),this._disposables.add(this._editor.onDidChangeModel(()=>{this._ignoreModelChangeEvent||this.closeWidget()}));const s="peekViewLayout",r=lce.fromJSON(this._storageService.get(s,0,"{}"));this._widget=this._instantiationService.createInstance(CE,this._editor,this._defaultTreeKeyboardSupport,r),this._widget.setTitle(m("labelLoading","Loading...")),this._widget.show(e),this._disposables.add(this._widget.onDidClose(()=>{t.cancel(),this._widget?(this._storageService.store(s,JSON.stringify(this._widget.layoutData),0,1),this._widget.isClosing||this.closeWidget(),this._widget=void 0):this.closeWidget()})),this._disposables.add(this._widget.onDidSelectReference(l=>{const{element:c,kind:d}=l;if(c)switch(d){case"open":(l.source!=="editor"||!this._configurationService.getValue("editor.stablePeek"))&&this.openReference(c,!1,!1);break;case"side":this.openReference(c,!0,!1);break;case"goto":i?this._gotoReference(c,!0):this.openReference(c,!1,!0);break}}));const a=++this._requestIdPool;t.then(l=>{if(a!==this._requestIdPool||!this._widget){l.dispose();return}return this._model?.dispose(),this._model=l,this._widget.setModel(this._model).then(()=>{if(this._widget&&this._model&&this._editor.hasModel()){this._model.isEmpty?this._widget.setMetaTitle(""):this._widget.setMetaTitle(m("metaTitle.N","{0} ({1})",this._model.title,this._model.references.length));const c=this._editor.getModel().uri,d=new P(e.startLineNumber,e.startColumn),h=this._model.nearestReference(c,d);if(h)return this._widget.setSelection(h).then(()=>{this._widget&&this._editor.getOption(87)==="editor"&&this._widget.focusOnPreviewEditor()})}})},l=>{this._notificationService.error(l)})}changeFocusBetweenPreviewAndReferences(){this._widget&&(this._widget.isPreviewEditorFocused()?this._widget.focusOnReferenceTree():this._widget.focusOnPreviewEditor())}async goToNextOrPreviousReference(e){if(!this._editor.hasModel()||!this._model||!this._widget)return;const t=this._widget.position;if(!t)return;const i=this._model.nearestReference(this._editor.getModel().uri,t);if(!i)return;const n=this._model.nextOrPreviousReference(i,e),s=this._editor.hasTextFocus(),r=this._widget.isPreviewEditorFocused();await this._widget.setSelection(n),await this._gotoReference(n,!1),s?this._editor.focus():this._widget&&r&&this._widget.focusOnPreviewEditor()}async revealReference(e){!this._editor.hasModel()||!this._model||!this._widget||await this._widget.revealReference(e)}closeWidget(e=!0){this._widget?.dispose(),this._model?.dispose(),this._referenceSearchVisible.reset(),this._disposables.clear(),this._widget=void 0,this._model=void 0,e&&this._editor.focus(),this._requestIdPool+=1}_gotoReference(e,t){this._widget?.hide(),this._ignoreModelChangeEvent=!0;const i=I.lift(e.range).collapseToStart();return this._editorService.openCodeEditor({resource:e.uri,options:{selection:i,selectionSource:"code.jump",pinned:t}},this._editor).then(n=>{if(this._ignoreModelChangeEvent=!1,!n||!this._widget){this.closeWidget();return}if(this._editor===n)this._widget.show(i),this._widget.focusOnReferenceTree();else{const s=G1.get(n),r=this._model.clone();this.closeWidget(),n.focus(),s?.toggleWidget(i,wa(a=>Promise.resolve(r)),this._peekMode??!1)}},n=>{this._ignoreModelChangeEvent=!1,Ze(n)})}openReference(e,t,i){t||this.closeWidget();const{uri:n,range:s}=e;this._editorService.openCodeEditor({resource:n,options:{selection:s,selectionSource:"code.jump",pinned:i}},this._editor,t)}},G1=gh,gh.ID="editor.contrib.referencesController",gh);R_=G1=dce([Fu(2,De),Fu(3,Pt),Fu(4,mn),Fu(5,ke),Fu(6,du),Fu(7,lt)],R_);function bu(o,e){const t=Qle(o);if(!t)return;const i=R_.get(t);i&&e(i)}Nn.registerCommandAndKeybindingRule({id:"togglePeekWidgetFocus",weight:100,primary:Vp(2089,60),when:re.or(_u,qn.inPeekEditor),handler(o){bu(o,e=>{e.changeFocusBetweenPreviewAndReferences()})}});Nn.registerCommandAndKeybindingRule({id:"goToNextReference",weight:90,primary:62,secondary:[70],when:re.or(_u,qn.inPeekEditor),handler(o){bu(o,e=>{e.goToNextOrPreviousReference(!0)})}});Nn.registerCommandAndKeybindingRule({id:"goToPreviousReference",weight:90,primary:1086,secondary:[1094],when:re.or(_u,qn.inPeekEditor),handler(o){bu(o,e=>{e.goToNextOrPreviousReference(!1)})}});bt.registerCommandAlias("goToNextReferenceFromEmbeddedEditor","goToNextReference");bt.registerCommandAlias("goToPreviousReferenceFromEmbeddedEditor","goToPreviousReference");bt.registerCommandAlias("closeReferenceSearchEditor","closeReferenceSearch");bt.registerCommand("closeReferenceSearch",o=>bu(o,e=>e.closeWidget()));Nn.registerKeybindingRule({id:"closeReferenceSearch",weight:-1,primary:9,secondary:[1033],when:re.and(qn.inPeekEditor,re.not("config.editor.stablePeek"))});Nn.registerKeybindingRule({id:"closeReferenceSearch",weight:250,primary:9,secondary:[1033],when:re.and(_u,re.not("config.editor.stablePeek"),re.or(K.editorTextFocus,W9.negate()))});Nn.registerCommandAndKeybindingRule({id:"revealReference",weight:200,primary:3,mac:{primary:3,secondary:[2066]},when:re.and(_u,z9,k2.negate(),D2.negate()),handler(o){const t=o.get(mo).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof zc&&bu(o,i=>i.revealReference(t[0]))}});Nn.registerCommandAndKeybindingRule({id:"openReferenceToSide",weight:100,primary:2051,mac:{primary:259},when:re.and(_u,z9,k2.negate(),D2.negate()),handler(o){const t=o.get(mo).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof zc&&bu(o,i=>i.openReference(t[0],!0,!0))}});bt.registerCommand("openReference",o=>{const t=o.get(mo).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof zc&&bu(o,i=>i.openReference(t[0],!1,!0))});var oB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Wm=function(o,e){return function(t,i){e(t,i,o)}};const dM=new le("hasSymbols",!1,m("hasSymbols","Whether there are symbol locations that can be navigated via keyboard-only.")),Ry=He("ISymbolNavigationService");let vE=class{constructor(e,t,i,n){this._editorService=t,this._notificationService=i,this._keybindingService=n,this._currentModel=void 0,this._currentIdx=-1,this._ignoreEditorChange=!1,this._ctxHasSymbols=dM.bindTo(e)}reset(){this._ctxHasSymbols.reset(),this._currentState?.dispose(),this._currentMessage?.dispose(),this._currentModel=void 0,this._currentIdx=-1}put(e){const t=e.parent.parent;if(t.references.length<=1){this.reset();return}this._currentModel=t,this._currentIdx=t.references.indexOf(e),this._ctxHasSymbols.set(!0),this._showMessage();const i=new wE(this._editorService),n=i.onDidChange(s=>{if(this._ignoreEditorChange)return;const r=this._editorService.getActiveCodeEditor();if(!r)return;const a=r.getModel(),l=r.getPosition();if(!a||!l)return;let c=!1,d=!1;for(const h of t.references)if(WT(h.uri,a.uri))c=!0,d=d||I.containsPosition(h.range,l);else if(c)break;(!c||!d)&&this.reset()});this._currentState=No(i,n)}revealNext(e){if(!this._currentModel)return Promise.resolve();this._currentIdx+=1,this._currentIdx%=this._currentModel.references.length;const t=this._currentModel.references[this._currentIdx];return this._showMessage(),this._ignoreEditorChange=!0,this._editorService.openCodeEditor({resource:t.uri,options:{selection:I.collapseToStart(t.range),selectionRevealType:3}},e).finally(()=>{this._ignoreEditorChange=!1})}_showMessage(){this._currentMessage?.dispose();const e=this._keybindingService.lookupKeybinding("editor.gotoNextSymbolFromResult"),t=e?m("location.kb","Symbol {0} of {1}, {2} for next",this._currentIdx+1,this._currentModel.references.length,e.getLabel()):m("location","Symbol {0} of {1}",this._currentIdx+1,this._currentModel.references.length);this._currentMessage=this._notificationService.status(t)}};vE=oB([Wm(0,De),Wm(1,Pt),Wm(2,mn),Wm(3,vt)],vE);Qe(Ry,vE,1);ge(new class extends co{constructor(){super({id:"editor.gotoNextSymbolFromResult",precondition:dM,kbOpts:{weight:100,primary:70}})}runEditorCommand(o,e){return o.get(Ry).revealNext(e)}});Nn.registerCommandAndKeybindingRule({id:"editor.gotoNextSymbolFromResult.cancel",weight:100,when:dM,primary:9,handler(o){o.get(Ry).reset()}});let wE=class{constructor(e){this._listener=new Map,this._disposables=new X,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._disposables.add(e.onCodeEditorRemove(this._onDidRemoveEditor,this)),this._disposables.add(e.onCodeEditorAdd(this._onDidAddEditor,this)),e.listCodeEditors().forEach(this._onDidAddEditor,this)}dispose(){this._disposables.dispose(),this._onDidChange.dispose(),xt(this._listener.values())}_onDidAddEditor(e){this._listener.set(e,No(e.onDidChangeCursorPosition(t=>this._onDidChange.fire({editor:e})),e.onDidChangeModelContent(t=>this._onDidChange.fire({editor:e}))))}_onDidRemoveEditor(e){this._listener.get(e)?.dispose(),this._listener.delete(e)}};wE=oB([Wm(0,Pt)],wE);var hce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},R4=function(o,e){return function(t,i){e(t,i,o)}},Z1,vc;let ca=(vc=class{static get(e){return e.getContribution(Z1.ID)}constructor(e,t,i){this._openerService=i,this._messageWidget=new Dn,this._messageListeners=new X,this._mouseOverMessage=!1,this._editor=e,this._visible=Z1.MESSAGE_VISIBLE.bindTo(t)}dispose(){this._message?.dispose(),this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,t){El(ra(e)?e.value:e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),this._message=ra(e)?oy(e,{actionHandler:{callback:n=>{this.closeMessage(),UT(this._openerService,n,ra(e)?e.isTrusted:void 0)},disposables:this._messageListeners}}):void 0,this._messageWidget.value=new A4(this._editor,t,typeof e=="string"?e:this._message.element),this._messageListeners.add(J.debounce(this._editor.onDidBlurEditorText,(n,s)=>s,0)(()=>{this._mouseOverMessage||this._messageWidget.value&&yi(Xi(),this._messageWidget.value.getDomNode())||this.closeMessage()})),this._messageListeners.add(this._editor.onDidChangeCursorPosition(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidDispose(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidChangeModel(()=>this.closeMessage())),this._messageListeners.add(U(this._messageWidget.value.getDomNode(),ee.MOUSE_ENTER,()=>this._mouseOverMessage=!0,!0)),this._messageListeners.add(U(this._messageWidget.value.getDomNode(),ee.MOUSE_LEAVE,()=>this._mouseOverMessage=!1,!0));let i;this._messageListeners.add(this._editor.onMouseMove(n=>{n.target.position&&(i?i.containsPosition(n.target.position)||this.closeMessage():i=new I(t.lineNumber-3,1,n.target.position.lineNumber+3,1))}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(A4.fadeOut(this._messageWidget.value))}},Z1=vc,vc.ID="editor.contrib.messageController",vc.MESSAGE_VISIBLE=new le("messageVisible",!1,m("messageVisible","Whether the editor is currently showing an inline message")),vc);ca=Z1=hce([R4(1,De),R4(2,Vo)],ca);const uce=co.bindToContribution(ca.get);ge(new uce({id:"leaveEditorMessage",precondition:ca.MESSAGE_VISIBLE,handler:o=>o.closeMessage(),kbOpts:{weight:130,primary:9}}));let A4=class{static fadeOut(e){const t=()=>{e.dispose(),clearTimeout(i),e.getDomNode().removeEventListener("animationend",t)},i=setTimeout(t,110);return e.getDomNode().addEventListener("animationend",t),e.getDomNode().classList.add("fadeOut"),{dispose:t}}constructor(e,{lineNumber:t,column:i},n){this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(t,t,0),this._position={lineNumber:t,column:i},this._domNode=document.createElement("div"),this._domNode.classList.add("monaco-editor-overlaymessage"),this._domNode.style.marginLeft="-6px";const s=document.createElement("div");s.classList.add("anchor","top"),this._domNode.appendChild(s);const r=document.createElement("div");typeof n=="string"?(r.classList.add("message"),r.textContent=n):(n.classList.add("message"),r.appendChild(n)),this._domNode.appendChild(r);const a=document.createElement("div");a.classList.add("anchor","below"),this._domNode.appendChild(a),this._editor.addContentWidget(this),this._domNode.classList.add("fadeIn")}dispose(){this._editor.removeContentWidget(this)}getId(){return"messageoverlay"}getDomNode(){return this._domNode}getPosition(){return{position:this._position,preference:[1,2],positionAffinity:1}}afterRender(e){this._domNode.classList.toggle("below",e===2)}};Ho(ca.ID,ca,4);function yE(o,e){return e.uri.scheme===o.uri.scheme?!0:!zx(e.uri,Te.walkThroughSnippet,Te.vscodeChatCodeBlock,Te.vscodeChatCodeCompareBlock)}async function lb(o,e,t,i,n){const r=t.ordered(o,i).map(l=>Promise.resolve(n(l,o,e)).then(void 0,c=>{$n(c)})),a=await Promise.all(r);return Ag(a.flat()).filter(l=>yE(o,l))}function Ay(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideDefinition(r,a,n))}function hM(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideDeclaration(r,a,n))}function uM(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideImplementation(r,a,n))}function fM(o,e,t,i,n){return lb(e,t,o,i,(s,r,a)=>s.provideTypeDefinition(r,a,n))}function cb(o,e,t,i,n,s){return lb(e,t,o,n,async(r,a,l)=>{const c=(await r.provideReferences(a,l,{includeDeclaration:!0},s))?.filter(h=>yE(a,h));if(!i||!c||c.length!==2)return c;const d=(await r.provideReferences(a,l,{includeDeclaration:!1},s))?.filter(h=>yE(a,h));return d&&d.length===1?d:c})}async function Da(o){const e=await o(),t=new ds(e,""),i=t.references.map(n=>n.link);return t.dispose(),i}Wo("_executeDefinitionProvider",(o,e,t)=>{const i=o.get(Se),n=Ay(i.definitionProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeDefinitionProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=Ay(i.definitionProvider,e,t,!0,ut.None);return Da(()=>n)});Wo("_executeTypeDefinitionProvider",(o,e,t)=>{const i=o.get(Se),n=fM(i.typeDefinitionProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeTypeDefinitionProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=fM(i.typeDefinitionProvider,e,t,!0,ut.None);return Da(()=>n)});Wo("_executeDeclarationProvider",(o,e,t)=>{const i=o.get(Se),n=hM(i.declarationProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeDeclarationProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=hM(i.declarationProvider,e,t,!0,ut.None);return Da(()=>n)});Wo("_executeReferenceProvider",(o,e,t)=>{const i=o.get(Se),n=cb(i.referenceProvider,e,t,!1,!1,ut.None);return Da(()=>n)});Wo("_executeReferenceProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=cb(i.referenceProvider,e,t,!1,!0,ut.None);return Da(()=>n)});Wo("_executeImplementationProvider",(o,e,t)=>{const i=o.get(Se),n=uM(i.implementationProvider,e,t,!1,ut.None);return Da(()=>n)});Wo("_executeImplementationProvider_recursive",(o,e,t)=>{const i=o.get(Se),n=uM(i.implementationProvider,e,t,!0,ut.None);return Da(()=>n)});Eo.appendMenuItem($e.EditorContext,{submenu:$e.EditorContextPeek,title:m("peek.submenu","Peek"),group:"navigation",order:100});class Ig{static is(e){return!e||typeof e!="object"?!1:!!(e instanceof Ig||P.isIPosition(e.position)&&e.model)}constructor(e,t){this.model=e,this.position=t}}const wo=class wo extends mz{static all(){return wo._allSymbolNavigationCommands.values()}static _patchConfig(e){const t={...e,f1:!0};if(t.menu)for(const i of st.wrap(t.menu))(i.id===$e.EditorContext||i.id===$e.EditorContextPeek)&&(i.when=re.and(e.precondition,i.when));return t}constructor(e,t){super(wo._patchConfig(t)),this.configuration=e,wo._allSymbolNavigationCommands.set(t.id,this)}runEditorCommand(e,t,i,n){if(!t.hasModel())return Promise.resolve(void 0);const s=e.get(mn),r=e.get(Pt),a=e.get(G_),l=e.get(Ry),c=e.get(Se),d=e.get(ke),h=t.getModel(),u=t.getPosition(),f=Ig.is(i)?i:new Ig(h,u),g=new kle(t,5),p=TH(this._getLocationModel(c,f.model,f.position,g.token),g.token).then(async _=>{if(!_||g.token.isCancellationRequested)return;El(_.ariaMessage);let b;if(_.referenceAt(h.uri,u)){const w=this._getAlternativeCommand(t);!wo._activeAlternativeCommands.has(w)&&wo._allSymbolNavigationCommands.has(w)&&(b=wo._allSymbolNavigationCommands.get(w))}const C=_.references.length;if(C===0){if(!this.configuration.muteMessage){const w=h.getWordAtPosition(u);ca.get(t)?.showMessage(this._getNoResultFoundMessage(w),u)}}else if(C===1&&b)wo._activeAlternativeCommands.add(this.desc.id),d.invokeFunction(w=>b.runEditorCommand(w,t,i,n).finally(()=>{wo._activeAlternativeCommands.delete(this.desc.id)}));else return this._onResult(r,l,t,_,n)},_=>{s.error(_)}).finally(()=>{g.dispose()});return a.showWhile(p,250),p}async _onResult(e,t,i,n,s){const r=this._getGoToPreference(i);if(!(i instanceof Gh)&&(this.configuration.openInPeek||r==="peek"&&n.references.length>1))this._openInPeek(i,n,s);else{const a=n.firstReference(),l=n.references.length>1&&r==="gotoAndPeek",c=await this._openReference(i,e,a,this.configuration.openToSide,!l);l&&c?this._openInPeek(c,n,s):n.dispose(),r==="goto"&&t.put(a)}}async _openReference(e,t,i,n,s){let r;if(tH(i)&&(r=i.targetSelectionRange),r||(r=i.range),!r)return;const a=await t.openCodeEditor({resource:i.uri,options:{selection:I.collapseToStart(r),selectionRevealType:3,selectionSource:"code.jump"}},e,n);if(a){if(s){const l=a.getModel(),c=a.createDecorationsCollection([{range:r,options:{description:"symbol-navigate-action-highlight",className:"symbolHighlight"}}]);setTimeout(()=>{a.getModel()===l&&c.clear()},350)}return a}}_openInPeek(e,t,i){const n=R_.get(e);n&&e.hasModel()?n.toggleWidget(i??e.getSelection(),wa(s=>Promise.resolve(t)),this.configuration.openInPeek):t.dispose()}};wo._allSymbolNavigationCommands=new Map,wo._activeAlternativeCommands=new Set;let Nl=wo;class db extends Nl{async _getLocationModel(e,t,i,n){return new ds(await Ay(e.definitionProvider,t,i,!1,n),m("def.title","Definitions"))}_getNoResultFoundMessage(e){return e&&e.word?m("noResultWord","No definition found for '{0}'",e.word):m("generic.noResults","No definition found")}_getAlternativeCommand(e){return e.getOption(58).alternativeDefinitionCommand}_getGoToPreference(e){return e.getOption(58).multipleDefinitions}}var wc;Rn((wc=class extends db{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:wc.id,title:{...di("actions.goToDecl.label","Go to Definition"),mnemonicTitle:m({key:"miGotoDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Definition")},precondition:K.hasDefinitionProvider,keybinding:[{when:K.editorTextFocus,primary:70,weight:100},{when:re.and(K.editorTextFocus,F9),primary:2118,weight:100}],menu:[{id:$e.EditorContext,group:"navigation",order:1.1},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:2}]}),bt.registerCommandAlias("editor.action.goToDeclaration",wc.id)}},wc.id="editor.action.revealDefinition",wc));var yc;Rn((yc=class extends db{constructor(){super({openToSide:!0,openInPeek:!1,muteMessage:!1},{id:yc.id,title:di("actions.goToDeclToSide.label","Open Definition to the Side"),precondition:re.and(K.hasDefinitionProvider,K.isInEmbeddedEditor.toNegated()),keybinding:[{when:K.editorTextFocus,primary:Vp(2089,70),weight:100},{when:re.and(K.editorTextFocus,F9),primary:Vp(2089,2118),weight:100}]}),bt.registerCommandAlias("editor.action.openDeclarationToTheSide",yc.id)}},yc.id="editor.action.revealDefinitionAside",yc));var Sc;Rn((Sc=class extends db{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:Sc.id,title:di("actions.previewDecl.label","Peek Definition"),precondition:re.and(K.hasDefinitionProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),keybinding:{when:K.editorTextFocus,primary:582,linux:{primary:3140},weight:100},menu:{id:$e.EditorContextPeek,group:"peek",order:2}}),bt.registerCommandAlias("editor.action.previewDeclaration",Sc.id)}},Sc.id="editor.action.peekDefinition",Sc));class rB extends Nl{async _getLocationModel(e,t,i,n){return new ds(await hM(e.declarationProvider,t,i,!1,n),m("decl.title","Declarations"))}_getNoResultFoundMessage(e){return e&&e.word?m("decl.noResultWord","No declaration found for '{0}'",e.word):m("decl.generic.noResults","No declaration found")}_getAlternativeCommand(e){return e.getOption(58).alternativeDeclarationCommand}_getGoToPreference(e){return e.getOption(58).multipleDeclarations}}var mh;Rn((mh=class extends rB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:mh.id,title:{...di("actions.goToDeclaration.label","Go to Declaration"),mnemonicTitle:m({key:"miGotoDeclaration",comment:["&& denotes a mnemonic"]},"Go to &&Declaration")},precondition:re.and(K.hasDeclarationProvider,K.isInEmbeddedEditor.toNegated()),menu:[{id:$e.EditorContext,group:"navigation",order:1.3},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:3}]})}_getNoResultFoundMessage(e){return e&&e.word?m("decl.noResultWord","No declaration found for '{0}'",e.word):m("decl.generic.noResults","No declaration found")}},mh.id="editor.action.revealDeclaration",mh));Rn(class extends rB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.peekDeclaration",title:di("actions.peekDecl.label","Peek Declaration"),precondition:re.and(K.hasDeclarationProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),menu:{id:$e.EditorContextPeek,group:"peek",order:3}})}});class aB extends Nl{async _getLocationModel(e,t,i,n){return new ds(await fM(e.typeDefinitionProvider,t,i,!1,n),m("typedef.title","Type Definitions"))}_getNoResultFoundMessage(e){return e&&e.word?m("goToTypeDefinition.noResultWord","No type definition found for '{0}'",e.word):m("goToTypeDefinition.generic.noResults","No type definition found")}_getAlternativeCommand(e){return e.getOption(58).alternativeTypeDefinitionCommand}_getGoToPreference(e){return e.getOption(58).multipleTypeDefinitions}}var ph;Rn((ph=class extends aB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:ph.ID,title:{...di("actions.goToTypeDefinition.label","Go to Type Definition"),mnemonicTitle:m({key:"miGotoTypeDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Type Definition")},precondition:K.hasTypeDefinitionProvider,keybinding:{when:K.editorTextFocus,primary:0,weight:100},menu:[{id:$e.EditorContext,group:"navigation",order:1.4},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:3}]})}},ph.ID="editor.action.goToTypeDefinition",ph));var _h;Rn((_h=class extends aB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:_h.ID,title:di("actions.peekTypeDefinition.label","Peek Type Definition"),precondition:re.and(K.hasTypeDefinitionProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),menu:{id:$e.EditorContextPeek,group:"peek",order:4}})}},_h.ID="editor.action.peekTypeDefinition",_h));class lB extends Nl{async _getLocationModel(e,t,i,n){return new ds(await uM(e.implementationProvider,t,i,!1,n),m("impl.title","Implementations"))}_getNoResultFoundMessage(e){return e&&e.word?m("goToImplementation.noResultWord","No implementation found for '{0}'",e.word):m("goToImplementation.generic.noResults","No implementation found")}_getAlternativeCommand(e){return e.getOption(58).alternativeImplementationCommand}_getGoToPreference(e){return e.getOption(58).multipleImplementations}}var bh;Rn((bh=class extends lB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:bh.ID,title:{...di("actions.goToImplementation.label","Go to Implementations"),mnemonicTitle:m({key:"miGotoImplementation",comment:["&& denotes a mnemonic"]},"Go to &&Implementations")},precondition:K.hasImplementationProvider,keybinding:{when:K.editorTextFocus,primary:2118,weight:100},menu:[{id:$e.EditorContext,group:"navigation",order:1.45},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:4}]})}},bh.ID="editor.action.goToImplementation",bh));var Ch;Rn((Ch=class extends lB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:Ch.ID,title:di("actions.peekImplementation.label","Peek Implementations"),precondition:re.and(K.hasImplementationProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),keybinding:{when:K.editorTextFocus,primary:3142,weight:100},menu:{id:$e.EditorContextPeek,group:"peek",order:5}})}},Ch.ID="editor.action.peekImplementation",Ch));class cB extends Nl{_getNoResultFoundMessage(e){return e?m("references.no","No references found for '{0}'",e.word):m("references.noGeneric","No references found")}_getAlternativeCommand(e){return e.getOption(58).alternativeReferenceCommand}_getGoToPreference(e){return e.getOption(58).multipleReferences}}Rn(class extends cB{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:"editor.action.goToReferences",title:{...di("goToReferences.label","Go to References"),mnemonicTitle:m({key:"miGotoReference",comment:["&& denotes a mnemonic"]},"Go to &&References")},precondition:re.and(K.hasReferenceProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),keybinding:{when:K.editorTextFocus,primary:1094,weight:100},menu:[{id:$e.EditorContext,group:"navigation",order:1.45},{id:$e.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:5}]})}async _getLocationModel(e,t,i,n){return new ds(await cb(e.referenceProvider,t,i,!0,!1,n),m("ref.title","References"))}});Rn(class extends cB{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.referenceSearch.trigger",title:di("references.action.label","Peek References"),precondition:re.and(K.hasReferenceProvider,qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated()),menu:{id:$e.EditorContextPeek,group:"peek",order:6}})}async _getLocationModel(e,t,i,n){return new ds(await cb(e.referenceProvider,t,i,!1,!1,n),m("ref.title","References"))}});class fce extends Nl{constructor(e,t,i){super(e,{id:"editor.action.goToLocation",title:di("label.generic","Go to Any Symbol"),precondition:re.and(qn.notInPeekEditor,K.isInEmbeddedEditor.toNegated())}),this._references=t,this._gotoMultipleBehaviour=i}async _getLocationModel(e,t,i,n){return new ds(this._references,m("generic.title","Locations"))}_getNoResultFoundMessage(e){return e&&m("generic.noResult","No results for '{0}'",e.word)||""}_getGoToPreference(e){return this._gotoMultipleBehaviour??e.getOption(58).multipleReferences}_getAlternativeCommand(){return""}}bt.registerCommand({id:"editor.action.goToLocations",metadata:{description:"Go to locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:ve},{name:"position",description:"The position at which to start",constraint:P.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto`"},{name:"noResultsMessage",description:"Human readable message that shows when locations is empty."}]},handler:async(o,e,t,i,n,s,r)=>{ai(ve.isUri(e)),ai(P.isIPosition(t)),ai(Array.isArray(i)),ai(typeof n>"u"||typeof n=="string"),ai(typeof r>"u"||typeof r=="boolean");const a=o.get(Pt),l=await a.openCodeEditor({resource:e},a.getFocusedCodeEditor());if(Y8(l))return l.setPosition(t),l.revealPositionInCenterIfOutsideViewport(t,0),l.invokeWithinContext(c=>{const d=new class extends fce{_getNoResultFoundMessage(h){return s||super._getNoResultFoundMessage(h)}}({muteMessage:!s,openInPeek:!!r,openToSide:!1},i,n);c.get(ke).invokeFunction(d.run.bind(d),l)})}});bt.registerCommand({id:"editor.action.peekLocations",metadata:{description:"Peek locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:ve},{name:"position",description:"The position at which to start",constraint:P.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto`"}]},handler:async(o,e,t,i,n)=>{o.get(hi).executeCommand("editor.action.goToLocations",e,t,i,n,void 0,!0)}});bt.registerCommand({id:"editor.action.findReferences",handler:(o,e,t)=>{ai(ve.isUri(e)),ai(P.isIPosition(t));const i=o.get(Se),n=o.get(Pt);return n.openCodeEditor({resource:e},n.getFocusedCodeEditor()).then(s=>{if(!Y8(s)||!s.hasModel())return;const r=R_.get(s);if(!r)return;const a=wa(c=>cb(i.referenceProvider,s.getModel(),P.lift(t),!1,!1,c).then(d=>new ds(d,m("ref.title","References")))),l=new I(t.lineNumber,t.column,t.lineNumber,t.column);return Promise.resolve(r.toggleWidget(l,a,!1))})}});bt.registerCommandAlias("editor.action.showReferences","editor.action.peekLocations");var gce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fL=function(o,e){return function(t,i){e(t,i,o)}},Hm,Lc;let A_=(Lc=class{constructor(e,t,i,n){this.textModelResolverService=t,this.languageService=i,this.languageFeaturesService=n,this.toUnhook=new X,this.toUnhookForKeyboard=new X,this.currentWordAtPosition=null,this.previousPromise=null,this.editor=e,this.linkDecorations=this.editor.createDecorationsCollection();const s=new X8(e);this.toUnhook.add(s),this.toUnhook.add(s.onMouseMoveOrRelevantKeyDown(([r,a])=>{this.startFindDefinitionFromMouse(r,a??void 0)})),this.toUnhook.add(s.onExecute(r=>{this.isEnabled(r)&&this.gotoDefinition(r.target.position,r.hasSideBySideModifier).catch(a=>{Ze(a)}).finally(()=>{this.removeLinkDecorations()})})),this.toUnhook.add(s.onCancel(()=>{this.removeLinkDecorations(),this.currentWordAtPosition=null}))}static get(e){return e.getContribution(Hm.ID)}async startFindDefinitionFromCursor(e){await this.startFindDefinition(e),this.toUnhookForKeyboard.add(this.editor.onDidChangeCursorPosition(()=>{this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear()})),this.toUnhookForKeyboard.add(this.editor.onKeyDown(t=>{t&&(this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear())}))}startFindDefinitionFromMouse(e,t){if(e.target.type===9&&this.linkDecorations.length>0)return;if(!this.editor.hasModel()||!this.isEnabled(e,t)){this.currentWordAtPosition=null,this.removeLinkDecorations();return}const i=e.target.position;this.startFindDefinition(i)}async startFindDefinition(e){this.toUnhookForKeyboard.clear();const t=e?this.editor.getModel()?.getWordAtPosition(e):null;if(!t){this.currentWordAtPosition=null,this.removeLinkDecorations();return}if(this.currentWordAtPosition&&this.currentWordAtPosition.startColumn===t.startColumn&&this.currentWordAtPosition.endColumn===t.endColumn&&this.currentWordAtPosition.word===t.word)return;this.currentWordAtPosition=t;const i=new xle(this.editor,15);this.previousPromise&&(this.previousPromise.cancel(),this.previousPromise=null),this.previousPromise=wa(r=>this.findDefinition(e,r));let n;try{n=await this.previousPromise}catch(r){Ze(r);return}if(!n||!n.length||!i.validate(this.editor)){this.removeLinkDecorations();return}const s=n[0].originSelectionRange?I.lift(n[0].originSelectionRange):new I(e.lineNumber,t.startColumn,e.lineNumber,t.endColumn);if(n.length>1){let r=s;for(const{originSelectionRange:a}of n)a&&(r=I.plusRange(r,a));this.addDecoration(r,new Js().appendText(m("multipleResults","Click to show {0} definitions.",n.length)))}else{const r=n[0];if(!r.uri)return;this.textModelResolverService.createModelReference(r.uri).then(a=>{if(!a.object||!a.object.textEditorModel){a.dispose();return}const{object:{textEditorModel:l}}=a,{startLineNumber:c}=r.range;if(c<1||c>l.getLineCount()){a.dispose();return}const d=this.getPreviewValue(l,c,r),h=this.languageService.guessLanguageIdByFilepathOrFirstLine(l.uri);this.addDecoration(s,d?new Js().appendCodeblock(h||"",d):void 0),a.dispose()})}}getPreviewValue(e,t,i){let n=i.range;return n.endLineNumber-n.startLineNumber>=Hm.MAX_SOURCE_PREVIEW_LINES&&(n=this.getPreviewRangeBasedOnIndentation(e,t)),this.stripIndentationFromPreviewRange(e,t,n)}stripIndentationFromPreviewRange(e,t,i){let s=e.getLineFirstNonWhitespaceColumn(t);for(let a=t+1;a{const n=!t&&this.editor.getOption(89)&&!this.isInPeekEditor(i);return new db({openToSide:t,openInPeek:n,muteMessage:!0},{title:{value:"",original:""},id:"",precondition:void 0}).run(i)})}isInPeekEditor(e){const t=e.get(De);return qn.inPeekEditor.getValue(t)}dispose(){this.toUnhook.dispose(),this.toUnhookForKeyboard.dispose()}},Hm=Lc,Lc.ID="editor.contrib.gotodefinitionatposition",Lc.MAX_SOURCE_PREVIEW_LINES=8,Lc);A_=Hm=gce([fL(1,fo),fL(2,qt),fL(3,Se)],A_);Ho(A_.ID,A_,2);const dB="editor.action.inlineSuggest.commit",hB="editor.action.inlineSuggest.showPrevious",uB="editor.action.inlineSuggest.showNext";var gM=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Io=function(o,e){return function(t,i){e(t,i,o)}},Y1;let SE=class extends z{constructor(e,t,i){super(),this.editor=e,this.model=t,this.instantiationService=i,this.alwaysShowToolbar=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).showToolbar==="always"),this.sessionPosition=void 0,this.position=Ce(this,n=>{const s=this.model.read(n)?.primaryGhostText.read(n);if(!this.alwaysShowToolbar.read(n)||!s||s.parts.length===0)return this.sessionPosition=void 0,null;const r=s.parts[0].column;this.sessionPosition&&this.sessionPosition.lineNumber!==s.lineNumber&&(this.sessionPosition=void 0);const a=new P(s.lineNumber,Math.min(r,this.sessionPosition?.column??Number.MAX_SAFE_INTEGER));return this.sessionPosition=a,a}),this._register(To((n,s)=>{const r=this.model.read(n);if(!r||!this.alwaysShowToolbar.read(n))return;const a=cu((c,d)=>{const h=d.add(this.instantiationService.createInstance(Eg,this.editor,!0,this.position,r.selectedInlineCompletionIndex,r.inlineCompletionsCount,r.activeCommands));return e.addContentWidget(h),d.add(_e(()=>e.removeContentWidget(h))),d.add(We(u=>{this.position.read(u)&&r.lastTriggerKind.read(u)!==Cl.Explicit&&r.triggerExplicitly()})),h}),l=YT(this,(c,d)=>!!this.position.read(c)||!!d);s.add(We(c=>{l.read(c)&&a.read(c)}))}))}};SE=gM([Io(2,ke)],SE);const mce=Wi("inline-suggestion-hints-next",ie.chevronRight,m("parameterHintsNextIcon","Icon for show next parameter hint.")),pce=Wi("inline-suggestion-hints-previous",ie.chevronLeft,m("parameterHintsPreviousIcon","Icon for show previous parameter hint."));var xc;let Eg=(xc=class extends z{static get dropDownVisible(){return this._dropDownVisible}createCommandAction(e,t,i){const n=new Fs(e,t,i,!0,()=>this._commandService.executeCommand(e)),s=this.keybindingService.lookupKeybinding(e,this._contextKeyService);let r=t;return s&&(r=m({key:"content",comment:["A label","A keybinding"]},"{0} ({1})",t,s.getLabel())),n.tooltip=r,n}constructor(e,t,i,n,s,r,a,l,c,d,h){super(),this.editor=e,this.withBorder=t,this._position=i,this._currentSuggestionIdx=n,this._suggestionCount=s,this._extraCommands=r,this._commandService=a,this.keybindingService=c,this._contextKeyService=d,this._menuService=h,this.id=`InlineSuggestionHintsContentWidget${Y1.id++}`,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this.nodes=tt("div.inlineSuggestionsHints",{className:this.withBorder?".withBorder":""},[tt("div@toolBar")]),this.previousAction=this.createCommandAction(hB,m("previous","Previous"),Ee.asClassName(pce)),this.availableSuggestionCountAction=new Fs("inlineSuggestionHints.availableSuggestionCount","",void 0,!1),this.nextAction=this.createCommandAction(uB,m("next","Next"),Ee.asClassName(mce)),this.inlineCompletionsActionsMenus=this._register(this._menuService.createMenu($e.InlineCompletionsActions,this._contextKeyService)),this.clearAvailableSuggestionCountLabelDebounced=this._register(new ci(()=>{this.availableSuggestionCountAction.label=""},100)),this.disableButtonsDebounced=this._register(new ci(()=>{this.previousAction.enabled=this.nextAction.enabled=!1},100)),this.toolBar=this._register(l.createInstance(LE,this.nodes.toolBar,$e.InlineSuggestionToolbar,{menuOptions:{renderShortTitle:!0},toolbarOptions:{primaryGroup:u=>u.startsWith("primary")},actionViewItemProvider:(u,f)=>{if(u instanceof so)return l.createInstance(bce,u,void 0);if(u===this.availableSuggestionCountAction){const g=new _ce(void 0,u,{label:!0,icon:!1});return g.setClass("availableSuggestionCount"),g}},telemetrySource:"InlineSuggestionToolbar"})),this.toolBar.setPrependedPrimaryActions([this.previousAction,this.availableSuggestionCountAction,this.nextAction]),this._register(this.toolBar.onDidChangeDropdownVisibility(u=>{Y1._dropDownVisible=u})),this._register(We(u=>{this._position.read(u),this.editor.layoutContentWidget(this)})),this._register(We(u=>{const f=this._suggestionCount.read(u),g=this._currentSuggestionIdx.read(u);f!==void 0?(this.clearAvailableSuggestionCountLabelDebounced.cancel(),this.availableSuggestionCountAction.label=`${g+1}/${f}`):this.clearAvailableSuggestionCountLabelDebounced.schedule(),f!==void 0&&f>1?(this.disableButtonsDebounced.cancel(),this.previousAction.enabled=this.nextAction.enabled=!0):this.disableButtonsDebounced.schedule()})),this._register(We(u=>{const g=this._extraCommands.read(u).map(p=>({class:void 0,id:p.id,enabled:!0,tooltip:p.tooltip||"",label:p.title,run:_=>this._commandService.executeCommand(p.id)}));for(const[p,_]of this.inlineCompletionsActionsMenus.getActions())for(const b of _)b instanceof so&&g.push(b);g.length>0&&g.unshift(new Gi),this.toolBar.setAdditionalSecondaryActions(g)}))}getId(){return this.id}getDomNode(){return this.nodes.root}getPosition(){return{position:this._position.get(),preference:[1,2],positionAffinity:3}}},Y1=xc,xc._dropDownVisible=!1,xc.id=0,xc);Eg=Y1=gM([Io(6,hi),Io(7,ke),Io(8,vt),Io(9,De),Io(10,yr)],Eg);class _ce extends dy{constructor(){super(...arguments),this._className=void 0}setClass(e){this._className=e}render(e){super.render(e),this._className&&e.classList.add(this._className)}updateTooltip(){}}class bce extends zh{updateLabel(){const e=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!e)return super.updateLabel();if(this.label){const t=tt("div.keybinding").root;this._register(new ob(t,Ns,{disableTitle:!0,...Hee})).set(e),this.label.textContent=this._action.label,this.label.appendChild(t),this.label.classList.add("inlineSuggestionStatusBarItemLabel")}}updateTooltip(){}}let LE=class extends $v{constructor(e,t,i,n,s,r,a,l,c){super(e,{resetMenu:t,...i},n,s,r,a,l,c),this.menuId=t,this.options2=i,this.menuService=n,this.contextKeyService=s,this.menu=this._store.add(this.menuService.createMenu(this.menuId,this.contextKeyService,{emitEventsForSubmenuChanges:!0})),this.additionalActions=[],this.prependedPrimaryActions=[],this._store.add(this.menu.onDidChange(()=>this.updateToolbar())),this.updateToolbar()}updateToolbar(){const e=[],t=[];XT(this.menu,this.options2?.menuOptions,{primary:e,secondary:t},this.options2?.toolbarOptions?.primaryGroup,this.options2?.toolbarOptions?.shouldInlineSubmenu,this.options2?.toolbarOptions?.useSeparatorsInPrimaryActions),t.push(...this.additionalActions),e.unshift(...this.prependedPrimaryActions),this.setActions(e,t)}setPrependedPrimaryActions(e){li(this.prependedPrimaryActions,e,(t,i)=>t===i)||(this.prependedPrimaryActions=e,this.updateToolbar())}setAdditionalSecondaryActions(e){li(this.additionalActions,e,(t,i)=>t===i)||(this.additionalActions=e,this.updateToolbar())}};LE=gM([Io(3,yr),Io(4,De),Io(5,Lr),Io(6,vt),Io(7,hi),Io(8,$s)],LE);function Py(o,e,t){const i=gi(o);return!(ei.left+i.width||ti.top+i.height)}let Cce=class{constructor(e,t,i){this.value=e,this.isComplete=t,this.hasLoadingMessage=i}};class fB extends z{constructor(e,t){super(),this._editor=e,this._computer=t,this._onResult=this._register(new A),this.onResult=this._onResult.event,this._firstWaitScheduler=this._register(new ci(()=>this._triggerAsyncComputation(),0)),this._secondWaitScheduler=this._register(new ci(()=>this._triggerSyncComputation(),0)),this._loadingMessageScheduler=this._register(new ci(()=>this._triggerLoadingMessage(),0)),this._state=0,this._asyncIterable=null,this._asyncIterableDone=!1,this._result=[]}dispose(){this._asyncIterable&&(this._asyncIterable.cancel(),this._asyncIterable=null),super.dispose()}get _hoverTime(){return this._editor.getOption(60).delay}get _firstWaitTime(){return this._hoverTime/2}get _secondWaitTime(){return this._hoverTime-this._firstWaitTime}get _loadingMessageTime(){return 3*this._hoverTime}_setState(e,t=!0){this._state=e,t&&this._fireResult()}_triggerAsyncComputation(){this._setState(2),this._secondWaitScheduler.schedule(this._secondWaitTime),this._computer.computeAsync?(this._asyncIterableDone=!1,this._asyncIterable=FH(e=>this._computer.computeAsync(e)),(async()=>{try{for await(const e of this._asyncIterable)e&&(this._result.push(e),this._fireResult());this._asyncIterableDone=!0,(this._state===3||this._state===4)&&this._setState(0)}catch(e){Ze(e)}})()):this._asyncIterableDone=!0}_triggerSyncComputation(){this._computer.computeSync&&(this._result=this._result.concat(this._computer.computeSync())),this._setState(this._asyncIterableDone?0:3)}_triggerLoadingMessage(){this._state===3&&this._setState(4)}_fireResult(){if(this._state===1||this._state===2)return;const e=this._state===0,t=this._state===4;this._onResult.fire(new Cce(this._result.slice(0),e,t))}start(e){if(e===0)this._state===0&&(this._setState(1),this._firstWaitScheduler.schedule(this._firstWaitTime),this._loadingMessageScheduler.schedule(this._loadingMessageTime));else switch(this._state){case 0:this._triggerAsyncComputation(),this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break;case 2:this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break}}cancel(){this._firstWaitScheduler.cancel(),this._secondWaitScheduler.cancel(),this._loadingMessageScheduler.cancel(),this._asyncIterable&&(this._asyncIterable.cancel(),this._asyncIterable=null),this._result=[],this._setState(0,!1)}}class gL{constructor(e,t,i,n){this.priority=e,this.range=t,this.initialMousePosX=i,this.initialMousePosY=n,this.type=1}equals(e){return e.type===1&&this.range.equalsRange(e.range)}canAdoptVisibleHover(e,t){return e.type===1&&t.lineNumber===this.range.startLineNumber}}class Q1{constructor(e,t,i,n,s,r){this.priority=e,this.owner=t,this.range=i,this.initialMousePosX=n,this.initialMousePosY=s,this.supportsMarkerHover=r,this.type=2}equals(e){return e.type===2&&this.owner===e.owner}canAdoptVisibleHover(e,t){return e.type===2&&this.owner===e.owner}}class Ng{constructor(e){this.renderedHoverParts=e}dispose(){for(const e of this.renderedHoverParts)e.dispose()}}const Oy=new class{constructor(){this._participants=[]}register(e){this._participants.push(e)}getAll(){return this._participants}};class mM{constructor(){this._onDidWillResize=new A,this.onDidWillResize=this._onDidWillResize.event,this._onDidResize=new A,this.onDidResize=this._onDidResize.event,this._sashListener=new X,this._size=new rt(0,0),this._minSize=new rt(0,0),this._maxSize=new rt(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),this.domNode=document.createElement("div"),this._eastSash=new an(this.domNode,{getVerticalSashLeft:()=>this._size.width},{orientation:0}),this._westSash=new an(this.domNode,{getVerticalSashLeft:()=>0},{orientation:0}),this._northSash=new an(this.domNode,{getHorizontalSashTop:()=>0},{orientation:1,orthogonalEdge:ov.North}),this._southSash=new an(this.domNode,{getHorizontalSashTop:()=>this._size.height},{orientation:1,orthogonalEdge:ov.South}),this._northSash.orthogonalStartSash=this._westSash,this._northSash.orthogonalEndSash=this._eastSash,this._southSash.orthogonalStartSash=this._westSash,this._southSash.orthogonalEndSash=this._eastSash;let e,t=0,i=0;this._sashListener.add(J.any(this._northSash.onDidStart,this._eastSash.onDidStart,this._southSash.onDidStart,this._westSash.onDidStart)(()=>{e===void 0&&(this._onDidWillResize.fire(),e=this._size,t=0,i=0)})),this._sashListener.add(J.any(this._northSash.onDidEnd,this._eastSash.onDidEnd,this._southSash.onDidEnd,this._westSash.onDidEnd)(()=>{e!==void 0&&(e=void 0,t=0,i=0,this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(this._eastSash.onDidChange(n=>{e&&(i=n.currentX-n.startX,this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,east:!0}))})),this._sashListener.add(this._westSash.onDidChange(n=>{e&&(i=-(n.currentX-n.startX),this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,west:!0}))})),this._sashListener.add(this._northSash.onDidChange(n=>{e&&(t=-(n.currentY-n.startY),this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,north:!0}))})),this._sashListener.add(this._southSash.onDidChange(n=>{e&&(t=n.currentY-n.startY,this.layout(e.height+t,e.width+i),this._onDidResize.fire({dimension:this._size,done:!1,south:!0}))})),this._sashListener.add(J.any(this._eastSash.onDidReset,this._westSash.onDidReset)(n=>{this._preferredSize&&(this.layout(this._size.height,this._preferredSize.width),this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(J.any(this._northSash.onDidReset,this._southSash.onDidReset)(n=>{this._preferredSize&&(this.layout(this._preferredSize.height,this._size.width),this._onDidResize.fire({dimension:this._size,done:!0}))}))}dispose(){this._northSash.dispose(),this._southSash.dispose(),this._eastSash.dispose(),this._westSash.dispose(),this._sashListener.dispose(),this._onDidResize.dispose(),this._onDidWillResize.dispose(),this.domNode.remove()}enableSashes(e,t,i,n){this._northSash.state=e?3:0,this._eastSash.state=t?3:0,this._southSash.state=i?3:0,this._westSash.state=n?3:0}layout(e=this.size.height,t=this.size.width){const{height:i,width:n}=this._minSize,{height:s,width:r}=this._maxSize;e=Math.max(i,Math.min(s,e)),t=Math.max(n,Math.min(r,t));const a=new rt(t,e);rt.equals(a,this._size)||(this.domNode.style.height=e+"px",this.domNode.style.width=t+"px",this._size=a,this._northSash.layout(),this._eastSash.layout(),this._southSash.layout(),this._westSash.layout())}clearSashHoverState(){this._eastSash.clearSashHoverState(),this._westSash.clearSashHoverState(),this._northSash.clearSashHoverState(),this._southSash.clearSashHoverState()}get size(){return this._size}set maxSize(e){this._maxSize=e}get maxSize(){return this._maxSize}set minSize(e){this._minSize=e}get minSize(){return this._minSize}set preferredSize(e){this._preferredSize=e}get preferredSize(){return this._preferredSize}}const vce=30,wce=24;class yce extends z{constructor(e,t=new rt(10,10)){super(),this._editor=e,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._resizableNode=this._register(new mM),this._contentPosition=null,this._isResizing=!1,this._resizableNode.domNode.style.position="absolute",this._resizableNode.minSize=rt.lift(t),this._resizableNode.layout(t.height,t.width),this._resizableNode.enableSashes(!0,!0,!0,!0),this._register(this._resizableNode.onDidResize(i=>{this._resize(new rt(i.dimension.width,i.dimension.height)),i.done&&(this._isResizing=!1)})),this._register(this._resizableNode.onDidWillResize(()=>{this._isResizing=!0}))}get isResizing(){return this._isResizing}getDomNode(){return this._resizableNode.domNode}getPosition(){return this._contentPosition}get position(){return this._contentPosition?.position?P.lift(this._contentPosition.position):void 0}_availableVerticalSpaceAbove(e){const t=this._editor.getDomNode(),i=this._editor.getScrolledVisiblePosition(e);return!t||!i?void 0:gi(t).top+i.top-vce}_availableVerticalSpaceBelow(e){const t=this._editor.getDomNode(),i=this._editor.getScrolledVisiblePosition(e);if(!t||!i)return;const n=gi(t),s=Ah(t.ownerDocument.body),r=n.top+i.top+i.height;return s.height-r-wce}_findPositionPreference(e,t){const i=Math.min(this._availableVerticalSpaceBelow(t)??1/0,e),n=Math.min(this._availableVerticalSpaceAbove(t)??1/0,e),s=Math.min(Math.max(n,i),e),r=Math.min(e,s);let a;return this._editor.getOption(60).above?a=r<=n?1:2:a=r<=i?2:1,a===1?this._resizableNode.enableSashes(!0,!0,!1,!1):this._resizableNode.enableSashes(!1,!0,!0,!1),a}_resize(e){this._resizableNode.layout(e.height,e.width)}}var Sce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},d1=function(o,e){return function(t,i){e(t,i,o)}},Or;const P4=30,Lce=6;var kc;let xE=(kc=class extends yce{get isVisibleFromKeyboard(){return this._renderedHover?.source===1}get isVisible(){return this._hoverVisibleKey.get()??!1}get isFocused(){return this._hoverFocusedKey.get()??!1}constructor(e,t,i,n,s){const r=e.getOption(67)+8,a=150,l=new rt(a,r);super(e,l),this._configurationService=i,this._accessibilityService=n,this._keybindingService=s,this._hover=this._register(new RT),this._onDidResize=this._register(new A),this.onDidResize=this._onDidResize.event,this._minimumSize=l,this._hoverVisibleKey=K.hoverVisible.bindTo(t),this._hoverFocusedKey=K.hoverFocused.bindTo(t),Z(this._resizableNode.domNode,this._hover.containerDomNode),this._resizableNode.domNode.style.zIndex="50",this._register(this._editor.onDidLayoutChange(()=>{this.isVisible&&this._updateMaxDimensions()})),this._register(this._editor.onDidChangeConfiguration(d=>{d.hasChanged(50)&&this._updateFont()}));const c=this._register(Ph(this._resizableNode.domNode));this._register(c.onDidFocus(()=>{this._hoverFocusedKey.set(!0)})),this._register(c.onDidBlur(()=>{this._hoverFocusedKey.set(!1)})),this._setRenderedHover(void 0),this._editor.addContentWidget(this)}dispose(){super.dispose(),this._renderedHover?.dispose(),this._editor.removeContentWidget(this)}getId(){return Or.ID}static _applyDimensions(e,t,i){const n=typeof t=="number"?`${t}px`:t,s=typeof i=="number"?`${i}px`:i;e.style.width=n,e.style.height=s}_setContentsDomNodeDimensions(e,t){const i=this._hover.contentsDomNode;return Or._applyDimensions(i,e,t)}_setContainerDomNodeDimensions(e,t){const i=this._hover.containerDomNode;return Or._applyDimensions(i,e,t)}_setHoverWidgetDimensions(e,t){this._setContentsDomNodeDimensions(e,t),this._setContainerDomNodeDimensions(e,t),this._layoutContentWidget()}static _applyMaxDimensions(e,t,i){const n=typeof t=="number"?`${t}px`:t,s=typeof i=="number"?`${i}px`:i;e.style.maxWidth=n,e.style.maxHeight=s}_setHoverWidgetMaxDimensions(e,t){Or._applyMaxDimensions(this._hover.contentsDomNode,e,t),Or._applyMaxDimensions(this._hover.containerDomNode,e,t),this._hover.containerDomNode.style.setProperty("--vscode-hover-maxWidth",typeof e=="number"?`${e}px`:e),this._layoutContentWidget()}_setAdjustedHoverWidgetDimensions(e){this._setHoverWidgetMaxDimensions("none","none");const t=e.width,i=e.height;this._setHoverWidgetDimensions(t,i)}_updateResizableNodeMaxDimensions(){const e=this._findMaximumRenderingWidth()??1/0,t=this._findMaximumRenderingHeight()??1/0;this._resizableNode.maxSize=new rt(e,t),this._setHoverWidgetMaxDimensions(e,t)}_resize(e){Or._lastDimensions=new rt(e.width,e.height),this._setAdjustedHoverWidgetDimensions(e),this._resizableNode.layout(e.height,e.width),this._updateResizableNodeMaxDimensions(),this._hover.scrollbar.scanDomNode(),this._editor.layoutContentWidget(this),this._onDidResize.fire()}_findAvailableSpaceVertically(){const e=this._renderedHover?.showAtPosition;if(e)return this._positionPreference===1?this._availableVerticalSpaceAbove(e):this._availableVerticalSpaceBelow(e)}_findMaximumRenderingHeight(){const e=this._findAvailableSpaceVertically();if(!e)return;let t=Lce;return Array.from(this._hover.contentsDomNode.children).forEach(i=>{t+=i.clientHeight}),Math.min(e,t)}_isHoverTextOverflowing(){this._hover.containerDomNode.style.setProperty("--vscode-hover-whiteSpace","nowrap"),this._hover.containerDomNode.style.setProperty("--vscode-hover-sourceWhiteSpace","nowrap");const e=Array.from(this._hover.contentsDomNode.children).some(t=>t.scrollWidth>t.clientWidth);return this._hover.containerDomNode.style.removeProperty("--vscode-hover-whiteSpace"),this._hover.containerDomNode.style.removeProperty("--vscode-hover-sourceWhiteSpace"),e}_findMaximumRenderingWidth(){if(!this._editor||!this._editor.hasModel())return;const e=this._isHoverTextOverflowing(),t=typeof this._contentWidth>"u"?0:this._contentWidth-2;return e||this._hover.containerDomNode.clientWidththis._renderedHover.closestMouseDistance+4?!1:(this._renderedHover.closestMouseDistance=Math.min(this._renderedHover.closestMouseDistance,n),!0)}_setRenderedHover(e){this._renderedHover?.dispose(),this._renderedHover=e,this._hoverVisibleKey.set(!!e),this._hover.containerDomNode.classList.toggle("hidden",!e)}_updateFont(){const{fontSize:e,lineHeight:t}=this._editor.getOption(50),i=this._hover.contentsDomNode;i.style.fontSize=`${e}px`,i.style.lineHeight=`${t/e}`,Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName("code")).forEach(s=>this._editor.applyFontInfo(s))}_updateContent(e){const t=this._hover.contentsDomNode;t.style.paddingBottom="",t.textContent="",t.appendChild(e)}_layoutContentWidget(){this._editor.layoutContentWidget(this),this._hover.onContentsChanged()}_updateMaxDimensions(){const e=Math.max(this._editor.getLayoutInfo().height/4,250,Or._lastDimensions.height),t=Math.max(this._editor.getLayoutInfo().width*.66,500,Or._lastDimensions.width);this._setHoverWidgetMaxDimensions(t,e)}_render(e){this._setRenderedHover(e),this._updateFont(),this._updateContent(e.domNode),this._updateMaxDimensions(),this.onContentsChanged(),this._editor.render()}getPosition(){return this._renderedHover?{position:this._renderedHover.showAtPosition,secondaryPosition:this._renderedHover.showAtSecondaryPosition,positionAffinity:this._renderedHover.shouldAppearBeforeContent?3:void 0,preference:[this._positionPreference??1]}:null}show(e){if(!this._editor||!this._editor.hasModel())return;this._render(e);const t=Hd(this._hover.containerDomNode),i=e.showAtPosition;this._positionPreference=this._findPositionPreference(t,i)??1,this.onContentsChanged(),e.shouldFocus&&this._hover.containerDomNode.focus(),this._onDidResize.fire();const s=this._hover.containerDomNode.ownerDocument.activeElement===this._hover.containerDomNode&&e7(this._configurationService.getValue("accessibility.verbosity.hover")===!0&&this._accessibilityService.isScreenReaderOptimized(),this._keybindingService.lookupKeybinding("editor.action.accessibleView")?.getAriaLabel()??"");s&&(this._hover.contentsDomNode.ariaLabel=this._hover.contentsDomNode.textContent+", "+s)}hide(){if(!this._renderedHover)return;const e=this._renderedHover.shouldFocus||this._hoverFocusedKey.get();this._setRenderedHover(void 0),this._resizableNode.maxSize=new rt(1/0,1/0),this._resizableNode.clearSashHoverState(),this._hoverFocusedKey.set(!1),this._editor.layoutContentWidget(this),e&&this._editor.focus()}_removeConstraintsRenderNormally(){const e=this._editor.getLayoutInfo();this._resizableNode.layout(e.height,e.width),this._setHoverWidgetDimensions("auto","auto")}setMinimumDimensions(e){this._minimumSize=new rt(Math.max(this._minimumSize.width,e.width),Math.max(this._minimumSize.height,e.height)),this._updateMinimumWidth()}_updateMinimumWidth(){const e=typeof this._contentWidth>"u"?this._minimumSize.width:Math.min(this._contentWidth,this._minimumSize.width);this._resizableNode.minSize=new rt(e,this._minimumSize.height)}onContentsChanged(){this._removeConstraintsRenderNormally();const e=this._hover.containerDomNode;let t=Hd(e),i=qp(e);if(this._resizableNode.layout(t,i),this._setHoverWidgetDimensions(i,t),t=Hd(e),i=qp(e),this._contentWidth=i,this._updateMinimumWidth(),this._resizableNode.layout(t,i),this._renderedHover?.showAtPosition){const n=Hd(this._hover.containerDomNode);this._positionPreference=this._findPositionPreference(n,this._renderedHover.showAtPosition)}this._layoutContentWidget()}focus(){this._hover.containerDomNode.focus()}scrollUp(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._editor.getOption(50);this._hover.scrollbar.setScrollPosition({scrollTop:e-t.lineHeight})}scrollDown(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._editor.getOption(50);this._hover.scrollbar.setScrollPosition({scrollTop:e+t.lineHeight})}scrollLeft(){const e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e-P4})}scrollRight(){const e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e+P4})}pageUp(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e-t})}pageDown(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e+t})}goToTop(){this._hover.scrollbar.setScrollPosition({scrollTop:0})}goToBottom(){this._hover.scrollbar.setScrollPosition({scrollTop:this._hover.scrollbar.getScrollDimensions().scrollHeight})}},Or=kc,kc.ID="editor.contrib.resizableContentHoverWidget",kc._lastDimensions=new rt(0,0),kc);xE=Or=Sce([d1(1,De),d1(2,lt),d1(3,ms),d1(4,vt)],xE);function O4(o,e,t,i,n,s){const r=t+n/2,a=i+s/2,l=Math.max(Math.abs(o-r)-n/2,0),c=Math.max(Math.abs(e-a)-s/2,0);return Math.sqrt(l*l+c*c)}class ew{get anchor(){return this._anchor}set anchor(e){this._anchor=e}get shouldFocus(){return this._shouldFocus}set shouldFocus(e){this._shouldFocus=e}get source(){return this._source}set source(e){this._source=e}get insistOnKeepingHoverVisible(){return this._insistOnKeepingHoverVisible}set insistOnKeepingHoverVisible(e){this._insistOnKeepingHoverVisible=e}constructor(e,t){this._editor=e,this._participants=t,this._anchor=null,this._shouldFocus=!1,this._source=0,this._insistOnKeepingHoverVisible=!1}static _getLineDecorations(e,t){if(t.type!==1&&!t.supportsMarkerHover)return[];const i=e.getModel(),n=t.range.startLineNumber;if(n>i.getLineCount())return[];const s=i.getLineMaxColumn(n);return e.getLineDecorations(n).filter(r=>{if(r.options.isWholeLine)return!0;const a=r.range.startLineNumber===n?r.range.startColumn:1,l=r.range.endLineNumber===n?r.range.endColumn:s;if(r.options.showIfCollapsed){if(a>t.range.startColumn+1||t.range.endColumn-1>l)return!1}else if(a>t.range.startColumn||t.range.endColumn>l)return!1;return!0})}computeAsync(e){const t=this._anchor;if(!this._editor.hasModel()||!t)return Ms.EMPTY;const i=ew._getLineDecorations(this._editor,t);return Ms.merge(this._participants.map(n=>n.computeAsync?n.computeAsync(t,i,e):Ms.EMPTY))}computeSync(){if(!this._editor.hasModel()||!this._anchor)return[];const e=ew._getLineDecorations(this._editor,this._anchor);let t=[];for(const i of this._participants)t=t.concat(i.computeSync(this._anchor,e));return Ag(t)}}class gB{constructor(e,t,i){this.anchor=e,this.hoverParts=t,this.isComplete=i}filter(e){const t=this.hoverParts.filter(i=>i.isValidForHoverAnchor(e));return t.length===this.hoverParts.length?this:new xce(this,this.anchor,t,this.isComplete)}}class xce extends gB{constructor(e,t,i,n){super(t,i,n),this.original=e}filter(e){return this.original.filter(e)}}var kce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Dce=function(o,e){return function(t,i){e(t,i,o)}};const F4=ce;let kE=class extends z{get hasContent(){return this._hasContent}constructor(e){super(),this._keybindingService=e,this.actions=[],this._hasContent=!1,this.hoverElement=F4("div.hover-row.status-bar"),this.hoverElement.tabIndex=0,this.actionsElement=Z(this.hoverElement,F4("div.actions"))}addAction(e){const t=this._keybindingService.lookupKeybinding(e.commandId),i=t?t.getLabel():null;this._hasContent=!0;const n=this._register(ey.render(this.actionsElement,e,i));return this.actions.push(n),n}append(e){const t=Z(this.actionsElement,e);return this._hasContent=!0,t}};kE=kce([Dce(0,vt)],kE);class Ice{constructor(e,t,i){this.provider=e,this.hover=t,this.ordinal=i}}async function Ece(o,e,t,i,n){const s=await Promise.resolve(o.provideHover(t,i,n)).catch($n);if(!(!s||!Nce(s)))return new Ice(o,s,e)}function pM(o,e,t,i,n=!1){const r=o.ordered(e,n).map((a,l)=>Ece(a,l,e,t,i));return Ms.fromPromises(r).coalesce()}function mB(o,e,t,i,n=!1){return pM(o,e,t,i,n).map(s=>s.hover).toPromise()}Wo("_executeHoverProvider",(o,e,t)=>{const i=o.get(Se);return mB(i.hoverProvider,e,t,ut.None)});Wo("_executeHoverProvider_recursive",(o,e,t)=>{const i=o.get(Se);return mB(i.hoverProvider,e,t,ut.None,!0)});function Nce(o){const e=typeof o.range<"u",t=typeof o.contents<"u"&&o.contents&&o.contents.length>0;return e&&t}var Tce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},ld=function(o,e){return function(t,i){e(t,i,o)}};const gf=ce,Mce=Wi("hover-increase-verbosity",ie.add,m("increaseHoverVerbosity","Icon for increaseing hover verbosity.")),Rce=Wi("hover-decrease-verbosity",ie.remove,m("decreaseHoverVerbosity","Icon for decreasing hover verbosity."));class hr{constructor(e,t,i,n,s,r=void 0){this.owner=e,this.range=t,this.contents=i,this.isBeforeContent=n,this.ordinal=s,this.source=r}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}class pB{constructor(e,t,i){this.hover=e,this.hoverProvider=t,this.hoverPosition=i}supportsVerbosityAction(e){switch(e){case is.Increase:return this.hover.canIncreaseVerbosity??!1;case is.Decrease:return this.hover.canDecreaseVerbosity??!1}}}let P_=class{constructor(e,t,i,n,s,r,a,l){this._editor=e,this._languageService=t,this._openerService=i,this._configurationService=n,this._languageFeaturesService=s,this._keybindingService=r,this._hoverService=a,this._commandService=l,this.hoverOrdinal=3}createLoadingMessage(e){return new hr(this,e.range,[new Js().appendText(m("modesContentHover.loading","Loading..."))],!1,2e3)}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];const i=this._editor.getModel(),n=e.range.startLineNumber,s=i.getLineMaxColumn(n),r=[];let a=1e3;const l=i.getLineLength(n),c=i.getLanguageIdAtPosition(e.range.startLineNumber,e.range.startColumn),d=this._editor.getOption(118),h=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:c});let u=!1;d>=0&&l>d&&e.range.startColumn>=d&&(u=!0,r.push(new hr(this,e.range,[{value:m("stopped rendering","Rendering paused for long line for performance reasons. This can be configured via `editor.stopRenderingLineAfter`.")}],!1,a++))),!u&&typeof h=="number"&&l>=h&&r.push(new hr(this,e.range,[{value:m("too many characters","Tokenization is skipped for long lines for performance reasons. This can be configured via `editor.maxTokenizationLineLength`.")}],!1,a++));let f=!1;for(const g of t){const p=g.range.startLineNumber===n?g.range.startColumn:1,_=g.range.endLineNumber===n?g.range.endColumn:s,b=g.options.hoverMessage;if(!b||bg(b))continue;g.options.beforeContentClassName&&(f=!0);const C=new I(e.range.startLineNumber,p,e.range.startLineNumber,_);r.push(new hr(this,C,T5(b),f,a++))}return r}computeAsync(e,t,i){if(!this._editor.hasModel()||e.type!==1)return Ms.EMPTY;const n=this._editor.getModel(),s=this._languageFeaturesService.hoverProvider;return s.has(n)?this._getMarkdownHovers(s,n,e,i):Ms.EMPTY}_getMarkdownHovers(e,t,i,n){const s=i.range.getStartPosition();return pM(e,t,s,n).filter(l=>!bg(l.hover.contents)).map(l=>{const c=l.hover.range?I.lift(l.hover.range):i.range,d=new pB(l.hover,l.provider,s);return new hr(this,c,l.hover.contents,!1,l.ordinal,d)})}renderHoverParts(e,t){return this._renderedHoverParts=new Ace(t,e.fragment,this,this._editor,this._languageService,this._openerService,this._commandService,this._keybindingService,this._hoverService,this._configurationService,e.onContentsChanged),this._renderedHoverParts}updateMarkdownHoverVerbosityLevel(e,t,i){return Promise.resolve(this._renderedHoverParts?.updateMarkdownHoverPartVerbosityLevel(e,t,i))}};P_=Tce([ld(1,qt),ld(2,Vo),ld(3,lt),ld(4,Se),ld(5,vt),ld(6,au),ld(7,hi)],P_);class h1{constructor(e,t,i){this.hoverPart=e,this.hoverElement=t,this.disposables=i}dispose(){this.disposables.dispose()}}class Ace{constructor(e,t,i,n,s,r,a,l,c,d,h){this._hoverParticipant=i,this._editor=n,this._languageService=s,this._openerService=r,this._commandService=a,this._keybindingService=l,this._hoverService=c,this._configurationService=d,this._onFinishedRendering=h,this._ongoingHoverOperations=new Map,this._disposables=new X,this.renderedHoverParts=this._renderHoverParts(e,t,this._onFinishedRendering),this._disposables.add(_e(()=>{this.renderedHoverParts.forEach(u=>{u.dispose()}),this._ongoingHoverOperations.forEach(u=>{u.tokenSource.dispose(!0)})}))}_renderHoverParts(e,t,i){return e.sort(rs(n=>n.ordinal,ia)),e.map(n=>{const s=this._renderHoverPart(n,i);return t.appendChild(s.hoverElement),s})}_renderHoverPart(e,t){const i=this._renderMarkdownHover(e,t),n=i.hoverElement,s=e.source,r=new X;if(r.add(i),!s)return new h1(e,n,r);const a=s.supportsVerbosityAction(is.Increase),l=s.supportsVerbosityAction(is.Decrease);if(!a&&!l)return new h1(e,n,r);const c=gf("div.verbosity-actions");return n.prepend(c),r.add(this._renderHoverExpansionAction(c,is.Increase,a)),r.add(this._renderHoverExpansionAction(c,is.Decrease,l)),new h1(e,n,r)}_renderMarkdownHover(e,t){return Pce(this._editor,e,this._languageService,this._openerService,t)}_renderHoverExpansionAction(e,t,i){const n=new X,s=t===is.Increase,r=Z(e,gf(Ee.asCSSSelector(s?Mce:Rce)));r.tabIndex=0;const a=new gg("mouse",!1,{target:e,position:{hoverPosition:0}},this._configurationService,this._hoverService);if(n.add(this._hoverService.setupManagedHover(a,r,Oce(this._keybindingService,t))),!i)return r.classList.add("disabled"),n;r.classList.add("enabled");const l=()=>this._commandService.executeCommand(t===is.Increase?Ey:Ny);return n.add(new t7(r,l)),n.add(new i7(r,l,[3,10])),n}async updateMarkdownHoverPartVerbosityLevel(e,t,i=!0){const n=this._editor.getModel();if(!n)return;const s=this._getRenderedHoverPartAtIndex(t),r=s?.hoverPart.source;if(!s||!r?.supportsVerbosityAction(e))return;const a=await this._fetchHover(r,n,e);if(!a)return;const l=new pB(a,r.hoverProvider,r.hoverPosition),c=s.hoverPart,d=new hr(this._hoverParticipant,c.range,a.contents,c.isBeforeContent,c.ordinal,l),h=this._renderHoverPart(d,this._onFinishedRendering);return this._replaceRenderedHoverPartAtIndex(t,h,d),i&&this._focusOnHoverPartWithIndex(t),{hoverPart:d,hoverElement:h.hoverElement}}async _fetchHover(e,t,i){let n=i===is.Increase?1:-1;const s=e.hoverProvider,r=this._ongoingHoverOperations.get(s);r&&(r.tokenSource.cancel(),n+=r.verbosityDelta);const a=new In;this._ongoingHoverOperations.set(s,{verbosityDelta:n,tokenSource:a});const l={verbosityRequest:{verbosityDelta:n,previousHover:e.hover}};let c;try{c=await Promise.resolve(s.provideHover(t,e.hoverPosition,a.token,l))}catch(d){$n(d)}return a.dispose(),this._ongoingHoverOperations.delete(s),c}_replaceRenderedHoverPartAtIndex(e,t,i){if(e>=this.renderedHoverParts.length||e<0)return;const n=this.renderedHoverParts[e],s=n.hoverElement,r=t.hoverElement,a=Array.from(r.children);s.replaceChildren(...a);const l=new h1(i,s,t.disposables);s.focus(),n.dispose(),this.renderedHoverParts[e]=l}_focusOnHoverPartWithIndex(e){this.renderedHoverParts[e].hoverElement.focus()}_getRenderedHoverPartAtIndex(e){return this.renderedHoverParts[e]}dispose(){this._disposables.dispose()}}function Pce(o,e,t,i,n){const s=new X,r=gf("div.hover-row"),a=gf("div.hover-row-contents");r.appendChild(a);const l=e.contents;for(const d of l){if(bg(d))continue;const h=gf("div.markdown-hover"),u=Z(h,gf("div.hover-contents")),f=s.add(new Wh({editor:o},t,i));s.add(f.onDidRenderAsync(()=>{u.className="hover-contents code-hover-contents",n()}));const g=s.add(f.render(d));u.appendChild(g.element),a.appendChild(h)}return{hoverPart:e,hoverElement:r,dispose(){s.dispose()}}}function Oce(o,e){switch(e){case is.Increase:{const t=o.lookupKeybinding(Ey);return t?m("increaseVerbosityWithKb","Increase Hover Verbosity ({0})",t.getLabel()):m("increaseVerbosity","Increase Hover Verbosity")}case is.Decrease:{const t=o.lookupKeybinding(Ny);return t?m("decreaseVerbosityWithKb","Decrease Hover Verbosity ({0})",t.getLabel()):m("decreaseVerbosity","Decrease Hover Verbosity")}}}var _B=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},DE=function(o,e){return function(t,i){e(t,i,o)}};let tw=class{constructor(e){this._editorWorkerService=e}async provideDocumentColors(e,t){return this._editorWorkerService.computeDefaultDocumentColors(e.uri)}provideColorPresentations(e,t,i){const n=t.range,s=t.color,r=s.alpha,a=new q(new qe(Math.round(255*s.red),Math.round(255*s.green),Math.round(255*s.blue),r)),l=r?q.Format.CSS.formatRGB(a):q.Format.CSS.formatRGBA(a),c=r?q.Format.CSS.formatHSL(a):q.Format.CSS.formatHSLA(a),d=r?q.Format.CSS.formatHex(a):q.Format.CSS.formatHexA(a),h=[];return h.push({label:l,textEdit:{range:n,text:l}}),h.push({label:c,textEdit:{range:n,text:c}}),h.push({label:d,textEdit:{range:n,text:d}}),h}};tw=_B([DE(0,Zc)],tw);let IE=class extends z{constructor(e,t){super(),this._register(e.colorProvider.register("*",new tw(t)))}};IE=_B([DE(0,Se),DE(1,Zc)],IE);Ote(IE);async function bB(o,e,t,i=!0){return _M(new Fce,o,e,t,i)}function CB(o,e,t,i){return Promise.resolve(t.provideColorPresentations(o,e,i))}class Fce{constructor(){}async compute(e,t,i,n){const s=await e.provideDocumentColors(t,i);if(Array.isArray(s))for(const r of s)n.push({colorInfo:r,provider:e});return Array.isArray(s)}}class Bce{constructor(){}async compute(e,t,i,n){const s=await e.provideDocumentColors(t,i);if(Array.isArray(s))for(const r of s)n.push({range:r.range,color:[r.color.red,r.color.green,r.color.blue,r.color.alpha]});return Array.isArray(s)}}class Wce{constructor(e){this.colorInfo=e}async compute(e,t,i,n){const s=await e.provideColorPresentations(t,this.colorInfo,ut.None);return Array.isArray(s)&&n.push(...s),Array.isArray(s)}}async function _M(o,e,t,i,n){let s=!1,r;const a=[],l=e.ordered(t);for(let c=l.length-1;c>=0;c--){const d=l[c];if(d instanceof tw)r=d;else try{await o.compute(d,t,i,a)&&(s=!0)}catch(h){$n(h)}}return s?a:r&&n?(await o.compute(r,t,i,a),a):[]}function vB(o,e){const{colorProvider:t}=o.get(Se),i=o.get(Fi).getModel(e);if(!i)throw na();const n=o.get(lt).getValue("editor.defaultColorDecorators",{resource:e});return{model:i,colorProviderRegistry:t,isDefaultColorDecoratorsEnabled:n}}bt.registerCommand("_executeDocumentColorProvider",function(o,...e){const[t]=e;if(!(t instanceof ve))throw na();const{model:i,colorProviderRegistry:n,isDefaultColorDecoratorsEnabled:s}=vB(o,t);return _M(new Bce,n,i,ut.None,s)});bt.registerCommand("_executeColorPresentationProvider",function(o,...e){const[t,i]=e,{uri:n,range:s}=i;if(!(n instanceof ve)||!Array.isArray(t)||t.length!==4||!I.isIRange(s))throw na();const{model:r,colorProviderRegistry:a,isDefaultColorDecoratorsEnabled:l}=vB(o,n),[c,d,h,u]=t;return _M(new Wce({range:s,color:{red:c,green:d,blue:h,alpha:u}}),a,r,ut.None,l)});var Hce=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},mL=function(o,e){return function(t,i){e(t,i,o)}},EE;const Vce=Object.create({});var Dc;let Tg=(Dc=class extends z{constructor(e,t,i,n){super(),this._editor=e,this._configurationService=t,this._languageFeaturesService=i,this._localToDispose=this._register(new X),this._decorationsIds=[],this._colorDatas=new Map,this._colorDecoratorIds=this._editor.createDecorationsCollection(),this._ruleFactory=new kv(this._editor),this._decoratorLimitReporter=new zce,this._colorDecorationClassRefs=this._register(new X),this._debounceInformation=n.for(i.colorProvider,"Document Colors",{min:EE.RECOMPUTE_TIME}),this._register(e.onDidChangeModel(()=>{this._isColorDecoratorsEnabled=this.isEnabled(),this.updateColors()})),this._register(e.onDidChangeModelLanguage(()=>this.updateColors())),this._register(i.colorProvider.onDidChange(()=>this.updateColors())),this._register(e.onDidChangeConfiguration(s=>{const r=this._isColorDecoratorsEnabled;this._isColorDecoratorsEnabled=this.isEnabled(),this._isDefaultColorDecoratorsEnabled=this._editor.getOption(148);const a=r!==this._isColorDecoratorsEnabled||s.hasChanged(21),l=s.hasChanged(148);(a||l)&&(this._isColorDecoratorsEnabled?this.updateColors():this.removeAllDecorations())})),this._timeoutTimer=null,this._computePromise=null,this._isColorDecoratorsEnabled=this.isEnabled(),this._isDefaultColorDecoratorsEnabled=this._editor.getOption(148),this.updateColors()}isEnabled(){const e=this._editor.getModel();if(!e)return!1;const t=e.getLanguageId(),i=this._configurationService.getValue(t);if(i&&typeof i=="object"){const n=i.colorDecorators;if(n&&n.enable!==void 0&&!n.enable)return n.enable}return this._editor.getOption(20)}static get(e){return e.getContribution(this.ID)}dispose(){this.stop(),this.removeAllDecorations(),super.dispose()}updateColors(){if(this.stop(),!this._isColorDecoratorsEnabled)return;const e=this._editor.getModel();!e||!this._languageFeaturesService.colorProvider.has(e)||(this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._timeoutTimer||(this._timeoutTimer=new wr,this._timeoutTimer.cancelAndSet(()=>{this._timeoutTimer=null,this.beginCompute()},this._debounceInformation.get(e)))})),this.beginCompute())}async beginCompute(){this._computePromise=wa(async e=>{const t=this._editor.getModel();if(!t)return[];const i=new Hs(!1),n=await bB(this._languageFeaturesService.colorProvider,t,e,this._isDefaultColorDecoratorsEnabled);return this._debounceInformation.update(t,i.elapsed()),n});try{const e=await this._computePromise;this.updateDecorations(e),this.updateColorDecorators(e),this._computePromise=null}catch(e){Ze(e)}}stop(){this._timeoutTimer&&(this._timeoutTimer.cancel(),this._timeoutTimer=null),this._computePromise&&(this._computePromise.cancel(),this._computePromise=null),this._localToDispose.clear()}updateDecorations(e){const t=e.map(i=>({range:{startLineNumber:i.colorInfo.range.startLineNumber,startColumn:i.colorInfo.range.startColumn,endLineNumber:i.colorInfo.range.endLineNumber,endColumn:i.colorInfo.range.endColumn},options:kt.EMPTY}));this._editor.changeDecorations(i=>{this._decorationsIds=i.deltaDecorations(this._decorationsIds,t),this._colorDatas=new Map,this._decorationsIds.forEach((n,s)=>this._colorDatas.set(n,e[s]))})}updateColorDecorators(e){this._colorDecorationClassRefs.clear();const t=[],i=this._editor.getOption(21);for(let s=0;sthis._colorDatas.has(n.id));return i.length===0?null:this._colorDatas.get(i[0].id)}isColorDecoration(e){return this._colorDecoratorIds.has(e)}},EE=Dc,Dc.ID="editor.contrib.colorDetector",Dc.RECOMPUTE_TIME=1e3,Dc);Tg=EE=Hce([mL(1,lt),mL(2,Se),mL(3,q0)],Tg);class zce{constructor(){this._onDidChange=new A,this._computed=0,this._limited=!1}update(e,t){(e!==this._computed||t!==this._limited)&&(this._computed=e,this._limited=t,this._onDidChange.fire())}}Ho(Tg.ID,Tg,1);class Uce{get color(){return this._color}set color(e){this._color.equals(e)||(this._color=e,this._onDidChangeColor.fire(e))}get presentation(){return this.colorPresentations[this.presentationIndex]}get colorPresentations(){return this._colorPresentations}set colorPresentations(e){this._colorPresentations=e,this.presentationIndex>e.length-1&&(this.presentationIndex=0),this._onDidChangePresentation.fire(this.presentation)}constructor(e,t,i){this.presentationIndex=i,this._onColorFlushed=new A,this.onColorFlushed=this._onColorFlushed.event,this._onDidChangeColor=new A,this.onDidChangeColor=this._onDidChangeColor.event,this._onDidChangePresentation=new A,this.onDidChangePresentation=this._onDidChangePresentation.event,this.originalColor=e,this._color=e,this._colorPresentations=t}selectNextColorPresentation(){this.presentationIndex=(this.presentationIndex+1)%this.colorPresentations.length,this.flushColor(),this._onDidChangePresentation.fire(this.presentation)}guessColorPresentation(e,t){let i=-1;for(let n=0;n{this.backgroundColor=r.getColor(RC)||q.white})),this._register(U(this._pickedColorNode,ee.CLICK,()=>this.model.selectNextColorPresentation())),this._register(U(this._originalColorNode,ee.CLICK,()=>{this.model.color=this.model.originalColor,this.model.flushColor()})),this._register(t.onDidChangeColor(this.onDidChangeColor,this)),this._register(t.onDidChangePresentation(this.onDidChangePresentation,this)),this._pickedColorNode.style.backgroundColor=q.Format.CSS.format(t.color)||"",this._pickedColorNode.classList.toggle("light",t.color.rgba.a<.5?this.backgroundColor.isLighter():t.color.isLighter()),this.onDidChangeColor(this.model.color),this.showingStandaloneColorPicker&&(this._domNode.classList.add("standalone-colorpicker"),this._closeButton=this._register(new Kce(this._domNode)))}get closeButton(){return this._closeButton}get pickedColorNode(){return this._pickedColorNode}get originalColorNode(){return this._originalColorNode}onDidChangeColor(e){this._pickedColorNode.style.backgroundColor=q.Format.CSS.format(e)||"",this._pickedColorNode.classList.toggle("light",e.rgba.a<.5?this.backgroundColor.isLighter():e.isLighter()),this.onDidChangePresentation()}onDidChangePresentation(){this._pickedColorPresentation.textContent=this.model.presentation?this.model.presentation.label:""}}class Kce extends z{constructor(e){super(),this._onClicked=this._register(new A),this.onClicked=this._onClicked.event,this._button=document.createElement("div"),this._button.classList.add("close-button"),Z(e,this._button);const t=document.createElement("div");t.classList.add("close-button-inner-div"),Z(this._button,t),Z(t,Is(".button"+Ee.asCSSSelector(Wi("color-picker-close",ie.close,m("closeIcon","Icon to close the color picker"))))).classList.add("close-icon"),this._register(U(this._button,ee.CLICK,()=>{this._onClicked.fire()}))}}class jce extends z{constructor(e,t,i,n=!1){super(),this.model=t,this.pixelRatio=i,this._insertButton=null,this._domNode=Is(".colorpicker-body"),Z(e,this._domNode),this._saturationBox=new qce(this._domNode,this.model,this.pixelRatio),this._register(this._saturationBox),this._register(this._saturationBox.onDidChange(this.onDidSaturationValueChange,this)),this._register(this._saturationBox.onColorFlushed(this.flushColor,this)),this._opacityStrip=new Gce(this._domNode,this.model,n),this._register(this._opacityStrip),this._register(this._opacityStrip.onDidChange(this.onDidOpacityChange,this)),this._register(this._opacityStrip.onColorFlushed(this.flushColor,this)),this._hueStrip=new Zce(this._domNode,this.model,n),this._register(this._hueStrip),this._register(this._hueStrip.onDidChange(this.onDidHueChange,this)),this._register(this._hueStrip.onColorFlushed(this.flushColor,this)),n&&(this._insertButton=this._register(new Yce(this._domNode)),this._domNode.classList.add("standalone-colorpicker"))}flushColor(){this.model.flushColor()}onDidSaturationValueChange({s:e,v:t}){const i=this.model.color.hsva;this.model.color=new q(new ea(i.h,e,t,i.a))}onDidOpacityChange(e){const t=this.model.color.hsva;this.model.color=new q(new ea(t.h,t.s,t.v,e))}onDidHueChange(e){const t=this.model.color.hsva,i=(1-e)*360;this.model.color=new q(new ea(i===360?0:i,t.s,t.v,t.a))}get domNode(){return this._domNode}get saturationBox(){return this._saturationBox}get enterButton(){return this._insertButton}layout(){this._saturationBox.layout(),this._opacityStrip.layout(),this._hueStrip.layout()}}class qce extends z{constructor(e,t,i){super(),this.model=t,this.pixelRatio=i,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new A,this.onColorFlushed=this._onColorFlushed.event,this._domNode=Is(".saturation-wrap"),Z(e,this._domNode),this._canvas=document.createElement("canvas"),this._canvas.className="saturation-box",Z(this._domNode,this._canvas),this.selection=Is(".saturation-selection"),Z(this._domNode,this.selection),this.layout(),this._register(U(this._domNode,ee.POINTER_DOWN,n=>this.onPointerDown(n))),this._register(this.model.onDidChangeColor(this.onDidChangeColor,this)),this.monitor=null}get domNode(){return this._domNode}onPointerDown(e){if(!e.target||!(e.target instanceof Element))return;this.monitor=this._register(new Hg);const t=gi(this._domNode);e.target!==this.selection&&this.onDidChangePosition(e.offsetX,e.offsetY),this.monitor.startMonitoring(e.target,e.pointerId,e.buttons,n=>this.onDidChangePosition(n.pageX-t.left,n.pageY-t.top),()=>null);const i=U(e.target.ownerDocument,ee.POINTER_UP,()=>{this._onColorFlushed.fire(),i.dispose(),this.monitor&&(this.monitor.stopMonitoring(!0),this.monitor=null)},!0)}onDidChangePosition(e,t){const i=Math.max(0,Math.min(1,e/this.width)),n=Math.max(0,Math.min(1,1-t/this.height));this.paintSelection(i,n),this._onDidChange.fire({s:i,v:n})}layout(){this.width=this._domNode.offsetWidth,this.height=this._domNode.offsetHeight,this._canvas.width=this.width*this.pixelRatio,this._canvas.height=this.height*this.pixelRatio,this.paint();const e=this.model.color.hsva;this.paintSelection(e.s,e.v)}paint(){const e=this.model.color.hsva,t=new q(new ea(e.h,1,1,1)),i=this._canvas.getContext("2d"),n=i.createLinearGradient(0,0,this._canvas.width,0);n.addColorStop(0,"rgba(255, 255, 255, 1)"),n.addColorStop(.5,"rgba(255, 255, 255, 0.5)"),n.addColorStop(1,"rgba(255, 255, 255, 0)");const s=i.createLinearGradient(0,0,0,this._canvas.height);s.addColorStop(0,"rgba(0, 0, 0, 0)"),s.addColorStop(1,"rgba(0, 0, 0, 1)"),i.rect(0,0,this._canvas.width,this._canvas.height),i.fillStyle=q.Format.CSS.format(t),i.fill(),i.fillStyle=n,i.fill(),i.fillStyle=s,i.fill()}paintSelection(e,t){this.selection.style.left=`${e*this.width}px`,this.selection.style.top=`${this.height-t*this.height}px`}onDidChangeColor(e){if(this.monitor&&this.monitor.isMonitoring())return;this.paint();const t=e.hsva;this.paintSelection(t.s,t.v)}}class wB extends z{constructor(e,t,i=!1){super(),this.model=t,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new A,this.onColorFlushed=this._onColorFlushed.event,i?(this.domNode=Z(e,Is(".standalone-strip")),this.overlay=Z(this.domNode,Is(".standalone-overlay"))):(this.domNode=Z(e,Is(".strip")),this.overlay=Z(this.domNode,Is(".overlay"))),this.slider=Z(this.domNode,Is(".slider")),this.slider.style.top="0px",this._register(U(this.domNode,ee.POINTER_DOWN,n=>this.onPointerDown(n))),this._register(t.onDidChangeColor(this.onDidChangeColor,this)),this.layout()}layout(){this.height=this.domNode.offsetHeight-this.slider.offsetHeight;const e=this.getValue(this.model.color);this.updateSliderPosition(e)}onDidChangeColor(e){const t=this.getValue(e);this.updateSliderPosition(t)}onPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const t=this._register(new Hg),i=gi(this.domNode);this.domNode.classList.add("grabbing"),e.target!==this.slider&&this.onDidChangeTop(e.offsetY),t.startMonitoring(e.target,e.pointerId,e.buttons,s=>this.onDidChangeTop(s.pageY-i.top),()=>null);const n=U(e.target.ownerDocument,ee.POINTER_UP,()=>{this._onColorFlushed.fire(),n.dispose(),t.stopMonitoring(!0),this.domNode.classList.remove("grabbing")},!0)}onDidChangeTop(e){const t=Math.max(0,Math.min(1,1-e/this.height));this.updateSliderPosition(t),this._onDidChange.fire(t)}updateSliderPosition(e){this.slider.style.top=`${(1-e)*this.height}px`}}class Gce extends wB{constructor(e,t,i=!1){super(e,t,i),this.domNode.classList.add("opacity-strip"),this.onDidChangeColor(this.model.color)}onDidChangeColor(e){super.onDidChangeColor(e);const{r:t,g:i,b:n}=e.rgba,s=new q(new qe(t,i,n,1)),r=new q(new qe(t,i,n,0));this.overlay.style.background=`linear-gradient(to bottom, ${s} 0%, ${r} 100%)`}getValue(e){return e.hsva.a}}class Zce extends wB{constructor(e,t,i=!1){super(e,t,i),this.domNode.classList.add("hue-strip")}getValue(e){return 1-e.hsva.h/360}}class Yce extends z{constructor(e){super(),this._onClicked=this._register(new A),this.onClicked=this._onClicked.event,this._button=Z(e,document.createElement("button")),this._button.classList.add("insert-button"),this._button.textContent="Insert",this._register(U(this._button,ee.CLICK,()=>{this._onClicked.fire()}))}get button(){return this._button}}class Qce extends xr{constructor(e,t,i,n,s=!1){super(),this.model=t,this.pixelRatio=i,this._register(Zp.getInstance(fe(e)).onDidChange(()=>this.layout())),this._domNode=Is(".colorpicker-widget"),e.appendChild(this._domNode),this.header=this._register(new $ce(this._domNode,this.model,n,s)),this.body=this._register(new jce(this._domNode,this.model,this.pixelRatio,s))}layout(){this.body.layout()}get domNode(){return this._domNode}}var yB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},SB=function(o,e){return function(t,i){e(t,i,o)}};class Xce{constructor(e,t,i,n){this.owner=e,this.range=t,this.model=i,this.provider=n,this.forceShowAtRange=!0}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}let iw=class{constructor(e,t){this._editor=e,this._themeService=t,this.hoverOrdinal=2}computeSync(e,t){return[]}computeAsync(e,t,i){return Ms.fromPromise(this._computeAsync(e,t,i))}async _computeAsync(e,t,i){if(!this._editor.hasModel())return[];const n=Tg.get(this._editor);if(!n)return[];for(const s of t){if(!n.isColorDecoration(s))continue;const r=n.getColorData(s.range.getStartPosition());if(r)return[await LB(this,this._editor.getModel(),r.colorInfo,r.provider)]}return[]}renderHoverParts(e,t){const i=xB(this,this._editor,this._themeService,t,e);if(!i)return new Ng([]);this._colorPicker=i.colorPicker;const n={hoverPart:i.hoverPart,hoverElement:this._colorPicker.domNode,dispose(){i.disposables.dispose()}};return new Ng([n])}handleResize(){this._colorPicker?.layout()}isColorPickerVisible(){return!!this._colorPicker}};iw=yB([SB(1,en)],iw);class Jce{constructor(e,t,i,n){this.owner=e,this.range=t,this.model=i,this.provider=n}}let nw=class{constructor(e,t){this._editor=e,this._themeService=t,this._color=null}async createColorHover(e,t,i){if(!this._editor.hasModel()||!Tg.get(this._editor))return null;const s=await bB(i,this._editor.getModel(),ut.None);let r=null,a=null;for(const h of s){const u=h.colorInfo;I.containsRange(u.range,e.range)&&(r=u,a=h.provider)}const l=r??e,c=a??t,d=!!r;return{colorHover:await LB(this,this._editor.getModel(),l,c),foundInEditor:d}}async updateEditorModel(e){if(!this._editor.hasModel())return;const t=e.model;let i=new I(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn);this._color&&(await X1(this._editor.getModel(),t,this._color,i,e),i=kB(this._editor,i,t))}renderHoverParts(e,t){return xB(this,this._editor,this._themeService,t,e)}set color(e){this._color=e}get color(){return this._color}};nw=yB([SB(1,en)],nw);async function LB(o,e,t,i){const n=e.getValueInRange(t.range),{red:s,green:r,blue:a,alpha:l}=t.color,c=new qe(Math.round(s*255),Math.round(r*255),Math.round(a*255),l),d=new q(c),h=await CB(e,t,i,ut.None),u=new Uce(d,[],0);return u.colorPresentations=h||[],u.guessColorPresentation(d,n),o instanceof iw?new Xce(o,I.lift(t.range),u,i):new Jce(o,I.lift(t.range),u,i)}function xB(o,e,t,i,n){if(i.length===0||!e.hasModel())return;if(n.setMinimumDimensions){const u=e.getOption(67)+8;n.setMinimumDimensions(new rt(302,u))}const s=new X,r=i[0],a=e.getModel(),l=r.model,c=s.add(new Qce(n.fragment,l,e.getOption(144),t,o instanceof nw));let d=!1,h=new I(r.range.startLineNumber,r.range.startColumn,r.range.endLineNumber,r.range.endColumn);if(o instanceof nw){const u=r.model.color;o.color=u,X1(a,l,u,h,r),s.add(l.onColorFlushed(f=>{o.color=f}))}else s.add(l.onColorFlushed(async u=>{await X1(a,l,u,h,r),d=!0,h=kB(e,h,l)}));return s.add(l.onDidChangeColor(u=>{X1(a,l,u,h,r)})),s.add(e.onDidChangeModelContent(u=>{d?d=!1:(n.hide(),e.focus())})),{hoverPart:r,colorPicker:c,disposables:s}}function kB(o,e,t){const i=[],n=t.presentation.textEdit??{range:e,text:t.presentation.label,forceMoveMarkers:!1};i.push(n),t.presentation.additionalTextEdits&&i.push(...t.presentation.additionalTextEdits);const s=I.lift(n.range),r=o.getModel()._setTrackedRange(null,s,3);return o.executeEdits("colorpicker",i),o.pushUndoStop(),o.getModel()._getTrackedRange(r)??s}async function X1(o,e,t,i,n){const s=await CB(o,{range:i,color:{red:t.rgba.r/255,green:t.rgba.g/255,blue:t.rgba.b/255,alpha:t.rgba.a}},n.provider,ut.None);e.colorPresentations=s||[]}class DB{constructor(e,t){this.range=e,this.direction=t}}class bM{constructor(e,t,i){this.hint=e,this.anchor=t,this.provider=i,this._isResolved=!1}with(e){const t=new bM(this.hint,e.anchor,this.provider);return t._isResolved=this._isResolved,t._currentResolve=this._currentResolve,t}async resolve(e){if(typeof this.provider.resolveInlayHint=="function"){if(this._currentResolve)return await this._currentResolve,e.isCancellationRequested?void 0:this.resolve(e);this._isResolved||(this._currentResolve=this._doResolve(e).finally(()=>this._currentResolve=void 0)),await this._currentResolve}}async _doResolve(e){try{const t=await Promise.resolve(this.provider.resolveInlayHint(this.hint,e));this.hint.tooltip=t?.tooltip??this.hint.tooltip,this.hint.label=t?.label??this.hint.label,this.hint.textEdits=t?.textEdits??this.hint.textEdits,this._isResolved=!0}catch(t){$n(t),this._isResolved=!1}}}const If=class If{static async create(e,t,i,n){const s=[],r=e.ordered(t).reverse().map(a=>i.map(async l=>{try{const c=await a.provideInlayHints(t,l,n);(c?.hints.length||a.onDidChangeInlayHints)&&s.push([c??If._emptyInlayHintList,a])}catch(c){$n(c)}}));if(await Promise.all(r.flat()),n.isCancellationRequested||t.isDisposed())throw new ha;return new If(i,s,t)}constructor(e,t,i){this._disposables=new X,this.ranges=e,this.provider=new Set;const n=[];for(const[s,r]of t){this._disposables.add(s),this.provider.add(r);for(const a of s.hints){const l=i.validatePosition(a.position);let c="before";const d=If._getRangeAtPosition(i,l);let h;d.getStartPosition().isBefore(l)?(h=I.fromPositions(d.getStartPosition(),l),c="after"):(h=I.fromPositions(l,d.getEndPosition()),c="before"),n.push(new bM(a,new DB(h,c),r))}}this.items=n.sort((s,r)=>P.compare(s.hint.position,r.hint.position))}dispose(){this._disposables.dispose()}static _getRangeAtPosition(e,t){const i=t.lineNumber,n=e.getWordAtPosition(t);if(n)return new I(i,n.startColumn,i,n.endColumn);e.tokenization.tokenizeIfCheap(i);const s=e.tokenization.getLineTokens(i),r=t.column-1,a=s.findTokenIndexAtOffset(r);let l=s.getStartOffset(a),c=s.getEndOffset(a);return c-l===1&&(l===r&&a>1?(l=s.getStartOffset(a-1),c=s.getEndOffset(a-1)):c===r&&aRf(f)?f.command.id:IB()));for(const f of Nl.all())h.has(f.desc.id)&&d.push(new Fs(f.desc.id,so.label(f.desc,{renderShortTitle:!0}),void 0,!0,async()=>{const g=await n.createModelReference(c.uri);try{const p=new Ig(g.object.textEditorModel,I.getStartPosition(c.range)),_=i.item.anchor.range;await a.invokeFunction(f.runEditorCommand.bind(f),e,p,_)}finally{g.dispose()}}));if(i.part.command){const{command:f}=i.part;d.push(new Gi),d.push(new Fs(f.id,f.title,void 0,!0,async()=>{try{await r.executeCommand(f.id,...f.arguments??[])}catch(g){l.notify({severity:bT.Error,source:i.item.provider.displayName,message:g})}}))}const u=e.getOption(128);s.showContextMenu({domForShadowRoot:u?e.getDomNode()??void 0:void 0,getAnchor:()=>{const f=gi(t);return{x:f.left,y:f.top+f.height+8}},getActions:()=>d,onHide:()=>{e.focus()},autoSelectFirstItem:!0})}async function ide(o,e,t,i){const s=await o.get(fo).createModelReference(i.uri);await t.invokeWithinContext(async r=>{const a=e.hasSideBySideModifier,l=r.get(De),c=qn.inPeekEditor.getValue(l),d=!a&&t.getOption(89)&&!c;return new db({openToSide:a,openInPeek:d,muteMessage:!0},{title:{value:"",original:""},id:"",precondition:void 0}).run(r,new Ig(s.object.textEditorModel,I.getStartPosition(i.range)),I.lift(i.range))}),s.dispose()}var nde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Bu=function(o,e){return function(t,i){e(t,i,o)}},Uu;class ow{constructor(){this._entries=new ou(50)}get(e){const t=ow._key(e);return this._entries.get(t)}set(e,t){const i=ow._key(e);this._entries.set(i,t)}static _key(e){return`${e.uri.toString()}/${e.getVersionId()}`}}const EB=He("IInlayHintsCache");Qe(EB,ow,1);class NE{constructor(e,t){this.item=e,this.index=t}get part(){const e=this.item.hint.label;return typeof e=="string"?{label:e}:e[this.index]}}class sde{constructor(e,t){this.part=e,this.hasTriggerModifier=t}}var ml;let TE=(ml=class{static get(e){return e.getContribution(Uu.ID)??void 0}constructor(e,t,i,n,s,r,a){this._editor=e,this._languageFeaturesService=t,this._inlayHintsCache=n,this._commandService=s,this._notificationService=r,this._instaService=a,this._disposables=new X,this._sessionDisposables=new X,this._decorationsMetadata=new Map,this._ruleFactory=new kv(this._editor),this._activeRenderMode=0,this._debounceInfo=i.for(t.inlayHintsProvider,"InlayHint",{min:25}),this._disposables.add(t.inlayHintsProvider.onDidChange(()=>this._update())),this._disposables.add(e.onDidChangeModel(()=>this._update())),this._disposables.add(e.onDidChangeModelLanguage(()=>this._update())),this._disposables.add(e.onDidChangeConfiguration(l=>{l.hasChanged(142)&&this._update()})),this._update()}dispose(){this._sessionDisposables.dispose(),this._removeAllDecorations(),this._disposables.dispose()}_update(){this._sessionDisposables.clear(),this._removeAllDecorations();const e=this._editor.getOption(142);if(e.enabled==="off")return;const t=this._editor.getModel();if(!t||!this._languageFeaturesService.inlayHintsProvider.has(t))return;if(e.enabled==="on")this._activeRenderMode=0;else{let a,l;e.enabled==="onUnlessPressed"?(a=0,l=1):(a=1,l=0),this._activeRenderMode=a,this._sessionDisposables.add(rl.getInstance().event(c=>{if(!this._editor.hasModel())return;const d=c.altKey&&c.ctrlKey&&!(c.shiftKey||c.metaKey)?l:a;if(d!==this._activeRenderMode){this._activeRenderMode=d;const h=this._editor.getModel(),u=this._copyInlayHintsWithCurrentAnchor(h);this._updateHintsDecorators([h.getFullModelRange()],u),r.schedule(0)}}))}const i=this._inlayHintsCache.get(t);i&&this._updateHintsDecorators([t.getFullModelRange()],i),this._sessionDisposables.add(_e(()=>{t.isDisposed()||this._cacheHintsForFastRestore(t)}));let n;const s=new Set,r=new ci(async()=>{const a=Date.now();n?.dispose(!0),n=new In;const l=t.onWillDispose(()=>n?.cancel());try{const c=n.token,d=await sw.create(this._languageFeaturesService.inlayHintsProvider,t,this._getHintsRanges(),c);if(r.delay=this._debounceInfo.update(t,Date.now()-a),c.isCancellationRequested){d.dispose();return}for(const h of d.provider)typeof h.onDidChangeInlayHints=="function"&&!s.has(h)&&(s.add(h),this._sessionDisposables.add(h.onDidChangeInlayHints(()=>{r.isScheduled()||r.schedule()})));this._sessionDisposables.add(d),this._updateHintsDecorators(d.ranges,d.items),this._cacheHintsForFastRestore(t)}catch(c){Ze(c)}finally{n.dispose(),l.dispose()}},this._debounceInfo.get(t));this._sessionDisposables.add(r),this._sessionDisposables.add(_e(()=>n?.dispose(!0))),r.schedule(0),this._sessionDisposables.add(this._editor.onDidScrollChange(a=>{(a.scrollTopChanged||!r.isScheduled())&&r.schedule()})),this._sessionDisposables.add(this._editor.onDidChangeModelContent(a=>{n?.cancel();const l=Math.max(r.delay,1250);r.schedule(l)})),this._sessionDisposables.add(this._installDblClickGesture(()=>r.schedule(0))),this._sessionDisposables.add(this._installLinkGesture()),this._sessionDisposables.add(this._installContextMenu())}_installLinkGesture(){const e=new X,t=e.add(new X8(this._editor)),i=new X;return e.add(i),e.add(t.onMouseMoveOrRelevantKeyDown(n=>{const[s]=n,r=this._getInlayHintLabelPart(s),a=this._editor.getModel();if(!r||!a){i.clear();return}const l=new In;i.add(_e(()=>l.dispose(!0))),r.item.resolve(l.token),this._activeInlayHintPart=r.part.command||r.part.location?new sde(r,s.hasTriggerModifier):void 0;const c=a.validatePosition(r.item.hint.position).lineNumber,d=new I(c,1,c,a.getLineMaxColumn(c)),h=this._getInlineHintsForRange(d);this._updateHintsDecorators([d],h),i.add(_e(()=>{this._activeInlayHintPart=void 0,this._updateHintsDecorators([d],h)}))})),e.add(t.onCancel(()=>i.clear())),e.add(t.onExecute(async n=>{const s=this._getInlayHintLabelPart(n);if(s){const r=s.part;r.location?this._instaService.invokeFunction(ide,n,this._editor,r.location):WL.is(r.command)&&await this._invokeCommand(r.command,s.item)}})),e}_getInlineHintsForRange(e){const t=new Set;for(const i of this._decorationsMetadata.values())e.containsRange(i.item.anchor.range)&&t.add(i.item);return Array.from(t)}_installDblClickGesture(e){return this._editor.onMouseUp(async t=>{if(t.event.detail!==2)return;const i=this._getInlayHintLabelPart(t);if(i&&(t.event.preventDefault(),await i.item.resolve(ut.None),Ps(i.item.hint.textEdits))){const n=i.item.hint.textEdits.map(s=>aa.replace(I.lift(s.range),s.text));this._editor.executeEdits("inlayHint.default",n),e()}})}_installContextMenu(){return this._editor.onContextMenu(async e=>{if(!Ei(e.event.target))return;const t=this._getInlayHintLabelPart(e);t&&await this._instaService.invokeFunction(tde,this._editor,e.event.target,t)})}_getInlayHintLabelPart(e){if(e.target.type!==6)return;const t=e.target.detail.injectedText?.options;if(t instanceof Bc&&t?.attachedData instanceof NE)return t.attachedData}async _invokeCommand(e,t){try{await this._commandService.executeCommand(e.id,...e.arguments??[])}catch(i){this._notificationService.notify({severity:bT.Error,source:t.provider.displayName,message:i})}}_cacheHintsForFastRestore(e){const t=this._copyInlayHintsWithCurrentAnchor(e);this._inlayHintsCache.set(e,t)}_copyInlayHintsWithCurrentAnchor(e){const t=new Map;for(const[i,n]of this._decorationsMetadata){if(t.has(n.item))continue;const s=e.getDecorationRange(i);if(s){const r=new DB(s,n.item.anchor.direction),a=n.item.with({anchor:r});t.set(n.item,a)}}return Array.from(t.values())}_getHintsRanges(){const t=this._editor.getModel(),i=this._editor.getVisibleRangesPlusViewportAboveBelow(),n=[];for(const s of i.sort(I.compareRangesUsingStarts)){const r=t.validateRange(new I(s.startLineNumber-30,s.startColumn,s.endLineNumber+30,s.endColumn));n.length===0||!I.areIntersectingOrTouching(n[n.length-1],r)?n.push(r):n[n.length-1]=I.plusRange(n[n.length-1],r)}return n}_updateHintsDecorators(e,t){const i=[],n=(g,p,_,b,C)=>{const w={content:_,inlineClassNameAffectsLetterSpacing:!0,inlineClassName:p.className,cursorStops:b,attachedData:C};i.push({item:g,classNameRef:p,decoration:{range:g.anchor.range,options:{description:"InlayHint",showIfCollapsed:g.anchor.range.isEmpty(),collapseOnReplaceEdit:!g.anchor.range.isEmpty(),stickiness:0,[g.anchor.direction]:this._activeRenderMode===0?w:void 0}}})},s=(g,p)=>{const _=this._ruleFactory.createClassNameRef({width:`${r/3|0}px`,display:"inline-block"});n(g,_," ",p?gr.Right:gr.None)},{fontSize:r,fontFamily:a,padding:l,isUniform:c}=this._getLayoutInfo(),d="--code-editorInlayHintsFontFamily";this._editor.getContainerDomNode().style.setProperty(d,a);let h={line:0,totalLen:0};for(const g of t){if(h.line!==g.anchor.range.startLineNumber&&(h={line:g.anchor.range.startLineNumber,totalLen:0}),h.totalLen>Uu._MAX_LABEL_LEN)continue;g.hint.paddingLeft&&s(g,!1);const p=typeof g.hint.label=="string"?[{label:g.hint.label}]:g.hint.label;for(let _=0;_0&&(y=y.slice(0,-L)+"…",x=!0),n(g,this._ruleFactory.createClassNameRef(v),ode(y),w&&!g.hint.paddingRight?gr.Right:gr.None,new NE(g,_)),x)break}if(g.hint.paddingRight&&s(g,!0),i.length>Uu._MAX_DECORATORS)break}const u=[];for(const[g,p]of this._decorationsMetadata){const _=this._editor.getModel()?.getDecorationRange(g);_&&e.some(b=>b.containsRange(_))&&(u.push(g),p.classNameRef.dispose(),this._decorationsMetadata.delete(g))}const f=qh.capture(this._editor);this._editor.changeDecorations(g=>{const p=g.deltaDecorations(u,i.map(_=>_.decoration));for(let _=0;_i)&&(s=i);const r=e.fontFamily||n;return{fontSize:s,fontFamily:r,padding:t,isUniform:!t&&r===n&&s===i}}_removeAllDecorations(){this._editor.removeDecorations(Array.from(this._decorationsMetadata.keys()));for(const e of this._decorationsMetadata.values())e.classNameRef.dispose();this._decorationsMetadata.clear()}},Uu=ml,ml.ID="editor.contrib.InlayHints",ml._MAX_DECORATORS=1500,ml._MAX_LABEL_LEN=43,ml);TE=Uu=nde([Bu(1,Se),Bu(2,q0),Bu(3,EB),Bu(4,hi),Bu(5,mn),Bu(6,ke)],TE);function ode(o){return o.replace(/[ \t]/g," ")}bt.registerCommand("_executeInlayHintProvider",async(o,...e)=>{const[t,i]=e;ai(ve.isUri(t)),ai(I.isIRange(i));const{inlayHintsProvider:n}=o.get(Se),s=await o.get(fo).createModelReference(t);try{const r=await sw.create(n,s.object.textEditorModel,[I.lift(i)],ut.None),a=r.items.map(l=>l.hint);return setTimeout(()=>r.dispose(),0),a}finally{s.dispose()}});var rde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},zl=function(o,e){return function(t,i){e(t,i,o)}};class B4 extends Q1{constructor(e,t,i,n){super(10,t,e.item.anchor.range,i,n,!0),this.part=e}}let ME=class extends P_{constructor(e,t,i,n,s,r,a,l,c){super(e,t,i,r,l,n,s,c),this._resolverService=a,this.hoverOrdinal=6}suggestHoverAnchor(e){if(!TE.get(this._editor)||e.target.type!==6)return null;const i=e.target.detail.injectedText?.options;return i instanceof Bc&&i.attachedData instanceof NE?new B4(i.attachedData,this,e.event.posx,e.event.posy):null}computeSync(){return[]}computeAsync(e,t,i){return e instanceof B4?new Ms(async n=>{const{part:s}=e;if(await s.item.resolve(i),i.isCancellationRequested)return;let r;typeof s.item.hint.tooltip=="string"?r=new Js().appendText(s.item.hint.tooltip):s.item.hint.tooltip&&(r=s.item.hint.tooltip),r&&n.emitOne(new hr(this,e.range,[r],!1,0)),Ps(s.item.hint.textEdits)&&n.emitOne(new hr(this,e.range,[new Js().appendText(m("hint.dbl","Double-click to insert"))],!1,10001));let a;if(typeof s.part.tooltip=="string"?a=new Js().appendText(s.part.tooltip):s.part.tooltip&&(a=s.part.tooltip),a&&n.emitOne(new hr(this,e.range,[a],!1,1)),s.part.location||s.part.command){let c;const h=this._editor.getOption(78)==="altKey"?Ue?m("links.navigate.kb.meta.mac","cmd + click"):m("links.navigate.kb.meta","ctrl + click"):Ue?m("links.navigate.kb.alt.mac","option + click"):m("links.navigate.kb.alt","alt + click");s.part.location&&s.part.command?c=new Js().appendText(m("hint.defAndCommand","Go to Definition ({0}), right click for more",h)):s.part.location?c=new Js().appendText(m("hint.def","Go to Definition ({0})",h)):s.part.command&&(c=new Js(`[${m("hint.cmd","Execute Command")}](${ede(s.part.command)} "${s.part.command.title}") (${h})`,{isTrusted:!0})),c&&n.emitOne(new hr(this,e.range,[c],!1,1e4))}const l=await this._resolveInlayHintLabelPartHover(s,i);for await(const c of l)n.emitOne(c)}):Ms.EMPTY}async _resolveInlayHintLabelPartHover(e,t){if(!e.part.location)return Ms.EMPTY;const{uri:i,range:n}=e.part.location,s=await this._resolverService.createModelReference(i);try{const r=s.object.textEditorModel;return this._languageFeaturesService.hoverProvider.has(r)?pM(this._languageFeaturesService.hoverProvider,r,new P(n.startLineNumber,n.startColumn),t).filter(a=>!bg(a.hover.contents)).map(a=>new hr(this,e.item.anchor.range,a.hover.contents,!1,2+a.ordinal)):Ms.EMPTY}finally{s.dispose()}}};ME=rde([zl(1,qt),zl(2,Vo),zl(3,vt),zl(4,au),zl(5,lt),zl(6,fo),zl(7,Se),zl(8,hi)],ME);class CM extends z{constructor(e,t,i,n,s,r){super();const a=t.anchor,l=t.hoverParts;this._renderedHoverParts=this._register(new RE(e,i,l,r,s));const{showAtPosition:c,showAtSecondaryPosition:d}=CM.computeHoverPositions(e,a.range,l);this.shouldAppearBeforeContent=l.some(h=>h.isBeforeContent),this.showAtPosition=c,this.showAtSecondaryPosition=d,this.initialMousePosX=a.initialMousePosX,this.initialMousePosY=a.initialMousePosY,this.shouldFocus=n.shouldFocus,this.source=n.source}get domNode(){return this._renderedHoverParts.domNode}get domNodeHasChildren(){return this._renderedHoverParts.domNodeHasChildren}get focusedHoverPartIndex(){return this._renderedHoverParts.focusedHoverPartIndex}async updateHoverVerbosityLevel(e,t,i){this._renderedHoverParts.updateHoverVerbosityLevel(e,t,i)}isColorPickerVisible(){return this._renderedHoverParts.isColorPickerVisible()}static computeHoverPositions(e,t,i){let n=1;if(e.hasModel()){const d=e._getViewModel(),h=d.coordinatesConverter,u=h.convertModelRangeToViewRange(t),f=d.getLineMinColumn(u.startLineNumber),g=new P(u.startLineNumber,f);n=h.convertViewPositionToModelPosition(g).column}const s=t.startLineNumber;let r=t.startColumn,a;for(const d of i){const h=d.range,u=h.startLineNumber===s,f=h.endLineNumber===s;if(u&&f){const p=h.startColumn,_=Math.min(r,p);r=Math.max(_,n)}d.forceShowAtRange&&(a=h)}let l,c;if(a){const d=a.getStartPosition();l=d,c=d}else l=t.getStartPosition(),c=new P(s,r);return{showAtPosition:l,showAtSecondaryPosition:c}}}class ade{constructor(e,t){this._statusBar=t,e.appendChild(this._statusBar.hoverElement)}get hoverElement(){return this._statusBar.hoverElement}get actions(){return this._statusBar.actions}dispose(){this._statusBar.dispose()}}const g0=class g0 extends z{constructor(e,t,i,n,s){super(),this._renderedParts=[],this._focusedHoverPartIndex=-1,this._context=s,this._fragment=document.createDocumentFragment(),this._register(this._renderParts(t,i,s,n)),this._register(this._registerListenersOnRenderedParts()),this._register(this._createEditorDecorations(e,i)),this._updateMarkdownAndColorParticipantInfo(t)}_createEditorDecorations(e,t){if(t.length===0)return z.None;let i=t[0].range;for(const s of t){const r=s.range;i=I.plusRange(i,r)}const n=e.createDecorationsCollection();return n.set([{range:i,options:g0._DECORATION_OPTIONS}]),_e(()=>{n.clear()})}_renderParts(e,t,i,n){const s=new kE(n),r={fragment:this._fragment,statusBar:s,...i},a=new X;for(const c of e){const d=this._renderHoverPartsForParticipant(t,c,r);a.add(d);for(const h of d.renderedHoverParts)this._renderedParts.push({type:"hoverPart",participant:c,hoverPart:h.hoverPart,hoverElement:h.hoverElement})}const l=this._renderStatusBar(this._fragment,s);return l&&(a.add(l),this._renderedParts.push({type:"statusBar",hoverElement:l.hoverElement,actions:l.actions})),_e(()=>{a.dispose()})}_renderHoverPartsForParticipant(e,t,i){const n=e.filter(r=>r.owner===t);return n.length>0?t.renderHoverParts(i,n):new Ng([])}_renderStatusBar(e,t){if(t.hasContent)return new ade(e,t)}_registerListenersOnRenderedParts(){const e=new X;return this._renderedParts.forEach((t,i)=>{const n=t.hoverElement;n.tabIndex=0,e.add(U(n,ee.FOCUS_IN,s=>{s.stopPropagation(),this._focusedHoverPartIndex=i})),e.add(U(n,ee.FOCUS_OUT,s=>{s.stopPropagation(),this._focusedHoverPartIndex=-1}))}),e}_updateMarkdownAndColorParticipantInfo(e){const t=e.find(i=>i instanceof P_&&!(i instanceof ME));t&&(this._markdownHoverParticipant=t),this._colorHoverParticipant=e.find(i=>i instanceof iw)}async updateHoverVerbosityLevel(e,t,i){if(!this._markdownHoverParticipant)return;const n=this._normalizedIndexToMarkdownHoverIndexRange(this._markdownHoverParticipant,t);if(n===void 0)return;const s=await this._markdownHoverParticipant.updateMarkdownHoverVerbosityLevel(e,n,i);s&&(this._renderedParts[t]={type:"hoverPart",participant:this._markdownHoverParticipant,hoverPart:s.hoverPart,hoverElement:s.hoverElement},this._context.onContentsChanged())}isColorPickerVisible(){return this._colorHoverParticipant?.isColorPickerVisible()??!1}_normalizedIndexToMarkdownHoverIndexRange(e,t){const i=this._renderedParts[t];if(!i||i.type!=="hoverPart"||!(i.participant===e))return;const s=this._renderedParts.findIndex(r=>r.type==="hoverPart"&&r.participant===e);if(s===-1)throw new nt;return t-s}get domNode(){return this._fragment}get domNodeHasChildren(){return this._fragment.hasChildNodes()}get focusedHoverPartIndex(){return this._focusedHoverPartIndex}};g0._DECORATION_OPTIONS=kt.register({description:"content-hover-highlight",className:"hoverHighlight"});let RE=g0;var lde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},W4=function(o,e){return function(t,i){e(t,i,o)}};let AE=class extends z{constructor(e,t,i){super(),this._editor=e,this._instantiationService=t,this._keybindingService=i,this._currentResult=null,this._onContentsChanged=this._register(new A),this.onContentsChanged=this._onContentsChanged.event,this._contentHoverWidget=this._register(this._instantiationService.createInstance(xE,this._editor)),this._participants=this._initializeHoverParticipants(),this._computer=new ew(this._editor,this._participants),this._hoverOperation=this._register(new fB(this._editor,this._computer)),this._registerListeners()}_initializeHoverParticipants(){const e=[];for(const t of Oy.getAll()){const i=this._instantiationService.createInstance(t,this._editor);e.push(i)}return e.sort((t,i)=>t.hoverOrdinal-i.hoverOrdinal),this._register(this._contentHoverWidget.onDidResize(()=>{this._participants.forEach(t=>t.handleResize?.())})),e}_registerListeners(){this._register(this._hoverOperation.onResult(t=>{if(!this._computer.anchor)return;const i=t.hasLoadingMessage?this._addLoadingMessage(t.value):t.value;this._withResult(new gB(this._computer.anchor,i,t.isComplete))}));const e=this._contentHoverWidget.getDomNode();this._register(jt(e,"keydown",t=>{t.equals(9)&&this.hide()})),this._register(jt(e,"mouseleave",t=>{this._onMouseLeave(t)})),this._register(si.onDidChange(()=>{this._contentHoverWidget.position&&this._currentResult&&this._setCurrentResult(this._currentResult)}))}_startShowingOrUpdateHover(e,t,i,n,s){if(!(this._contentHoverWidget.position&&this._currentResult))return e?(this._startHoverOperationIfNecessary(e,t,i,n,!1),!0):!1;const a=this._editor.getOption(60).sticky,l=s&&this._contentHoverWidget.isMouseGettingCloser(s.event.posx,s.event.posy);return a&&l?(e&&this._startHoverOperationIfNecessary(e,t,i,n,!0),!0):e?this._currentResult.anchor.equals(e)?!0:e.canAdoptVisibleHover(this._currentResult.anchor,this._contentHoverWidget.position)?(this._setCurrentResult(this._currentResult.filter(e)),this._startHoverOperationIfNecessary(e,t,i,n,!1),!0):(this._setCurrentResult(null),this._startHoverOperationIfNecessary(e,t,i,n,!1),!0):(this._setCurrentResult(null),!1)}_startHoverOperationIfNecessary(e,t,i,n,s){this._computer.anchor&&this._computer.anchor.equals(e)||(this._hoverOperation.cancel(),this._computer.anchor=e,this._computer.shouldFocus=n,this._computer.source=i,this._computer.insistOnKeepingHoverVisible=s,this._hoverOperation.start(t))}_setCurrentResult(e){let t=e;if(this._currentResult===t)return;t&&t.hoverParts.length===0&&(t=null),this._currentResult=t,this._currentResult?this._showHover(this._currentResult):this._hideHover()}_addLoadingMessage(e){if(!this._computer.anchor)return e;for(const t of this._participants){if(!t.createLoadingMessage)continue;const i=t.createLoadingMessage(this._computer.anchor);if(i)return e.slice(0).concat([i])}return e}_withResult(e){if(this._contentHoverWidget.position&&this._currentResult&&this._currentResult.isComplete||this._setCurrentResult(e),!e.isComplete)return;const n=e.hoverParts.length===0,s=this._computer.insistOnKeepingHoverVisible;n&&s||this._setCurrentResult(e)}_showHover(e){const t=this._getHoverContext();this._renderedContentHover=new CM(this._editor,e,this._participants,this._computer,t,this._keybindingService),this._renderedContentHover.domNodeHasChildren?this._contentHoverWidget.show(this._renderedContentHover):this._renderedContentHover.dispose()}_hideHover(){this._contentHoverWidget.hide()}_getHoverContext(){return{hide:()=>{this.hide()},onContentsChanged:()=>{this._onContentsChanged.fire(),this._contentHoverWidget.onContentsChanged()},setMinimumDimensions:n=>{this._contentHoverWidget.setMinimumDimensions(n)}}}showsOrWillShow(e){if(this._contentHoverWidget.isResizing)return!0;const i=this._findHoverAnchorCandidates(e);if(!(i.length>0))return this._startShowingOrUpdateHover(null,0,0,!1,e);const s=i[0];return this._startShowingOrUpdateHover(s,0,0,!1,e)}_findHoverAnchorCandidates(e){const t=[];for(const n of this._participants){if(!n.suggestHoverAnchor)continue;const s=n.suggestHoverAnchor(e);s&&t.push(s)}const i=e.target;switch(i.type){case 6:{t.push(new gL(0,i.range,e.event.posx,e.event.posy));break}case 7:{const n=this._editor.getOption(50).typicalHalfwidthCharacterWidth/2;if(!(!i.detail.isAfterLines&&typeof i.detail.horizontalDistanceToText=="number"&&i.detail.horizontalDistanceToTexts.priority-n.priority),t}_onMouseLeave(e){const t=this._editor.getDomNode();(!t||!Py(t,e.x,e.y))&&this.hide()}startShowingAtRange(e,t,i,n){this._startShowingOrUpdateHover(new gL(0,e,void 0,void 0),t,i,n,null)}async updateHoverVerbosityLevel(e,t,i){this._renderedContentHover?.updateHoverVerbosityLevel(e,t,i)}focusedHoverPartIndex(){return this._renderedContentHover?.focusedHoverPartIndex??-1}containsNode(e){return e?this._contentHoverWidget.getDomNode().contains(e):!1}focus(){this._contentHoverWidget.focus()}scrollUp(){this._contentHoverWidget.scrollUp()}scrollDown(){this._contentHoverWidget.scrollDown()}scrollLeft(){this._contentHoverWidget.scrollLeft()}scrollRight(){this._contentHoverWidget.scrollRight()}pageUp(){this._contentHoverWidget.pageUp()}pageDown(){this._contentHoverWidget.pageDown()}goToTop(){this._contentHoverWidget.goToTop()}goToBottom(){this._contentHoverWidget.goToBottom()}hide(){this._computer.anchor=null,this._hoverOperation.cancel(),this._setCurrentResult(null)}getDomNode(){return this._contentHoverWidget.getDomNode()}get isColorPickerVisible(){return this._renderedContentHover?.isColorPickerVisible()??!1}get isVisibleFromKeyboard(){return this._contentHoverWidget.isVisibleFromKeyboard}get isVisible(){return this._contentHoverWidget.isVisible}get isFocused(){return this._contentHoverWidget.isFocused}get isResizing(){return this._contentHoverWidget.isResizing}get widget(){return this._contentHoverWidget}};AE=lde([W4(1,ke),W4(2,vt)],AE);var cde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},H4=function(o,e){return function(t,i){e(t,i,o)}},PE,vh;let Tn=(vh=class extends z{constructor(e,t,i){super(),this._editor=e,this._instantiationService=t,this._keybindingService=i,this._onHoverContentsChanged=this._register(new A),this.shouldKeepOpenOnEditorMouseMoveOrLeave=!1,this._listenersStore=new X,this._hoverState={mouseDown:!1,activatedByDecoratorClick:!1},this._reactToEditorMouseMoveRunner=this._register(new ci(()=>this._reactToEditorMouseMove(this._mouseMoveEvent),0)),this._hookListeners(),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(60)&&(this._unhookListeners(),this._hookListeners())}))}static get(e){return e.getContribution(PE.ID)}_hookListeners(){const e=this._editor.getOption(60);this._hoverSettings={enabled:e.enabled,sticky:e.sticky,hidingDelay:e.hidingDelay},e.enabled?(this._listenersStore.add(this._editor.onMouseDown(t=>this._onEditorMouseDown(t))),this._listenersStore.add(this._editor.onMouseUp(()=>this._onEditorMouseUp())),this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))):(this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))),this._listenersStore.add(this._editor.onMouseLeave(t=>this._onEditorMouseLeave(t))),this._listenersStore.add(this._editor.onDidChangeModel(()=>{this._cancelScheduler(),this._hideWidgets()})),this._listenersStore.add(this._editor.onDidChangeModelContent(()=>this._cancelScheduler())),this._listenersStore.add(this._editor.onDidScrollChange(t=>this._onEditorScrollChanged(t)))}_unhookListeners(){this._listenersStore.clear()}_cancelScheduler(){this._mouseMoveEvent=void 0,this._reactToEditorMouseMoveRunner.cancel()}_onEditorScrollChanged(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()}_onEditorMouseDown(e){this._hoverState.mouseDown=!0,!this._shouldNotHideCurrentHoverWidget(e)&&this._hideWidgets()}_shouldNotHideCurrentHoverWidget(e){return this._isMouseOnContentHoverWidget(e)||this._isContentWidgetResizing()}_isMouseOnContentHoverWidget(e){const t=this._contentWidget?.getDomNode();return t?Py(t,e.event.posx,e.event.posy):!1}_onEditorMouseUp(){this._hoverState.mouseDown=!1}_onEditorMouseLeave(e){this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._cancelScheduler(),this._shouldNotHideCurrentHoverWidget(e))||this._hideWidgets()}_shouldNotRecomputeCurrentHoverWidget(e){const t=this._hoverSettings.sticky,i=(r,a)=>{const l=this._isMouseOnContentHoverWidget(r);return a&&l},n=r=>{const a=this._isMouseOnContentHoverWidget(r),l=this._contentWidget?.isColorPickerVisible??!1;return a&&l},s=(r,a)=>(a&&this._contentWidget?.containsNode(r.event.browserEvent.view?.document.activeElement)&&!r.event.browserEvent.view?.getSelection()?.isCollapsed)??!1;return i(e,t)||n(e)||s(e,t)}_onEditorMouseMove(e){if(this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._mouseMoveEvent=e,this._contentWidget?.isFocused||this._contentWidget?.isResizing))return;const t=this._hoverSettings.sticky;if(t&&this._contentWidget?.isVisibleFromKeyboard)return;if(this._shouldNotRecomputeCurrentHoverWidget(e)){this._reactToEditorMouseMoveRunner.cancel();return}const n=this._hoverSettings.hidingDelay;if(this._contentWidget?.isVisible&&t&&n>0){this._reactToEditorMouseMoveRunner.isScheduled()||this._reactToEditorMouseMoveRunner.schedule(n);return}this._reactToEditorMouseMove(e)}_reactToEditorMouseMove(e){if(!e)return;const i=e.target.element?.classList.contains("colorpicker-color-decoration"),n=this._editor.getOption(149),s=this._hoverSettings.enabled,r=this._hoverState.activatedByDecoratorClick;if(i&&(n==="click"&&!r||n==="hover"&&!s||n==="clickAndHover"&&!s&&!r)||!i&&!s&&!r){this._hideWidgets();return}this._tryShowHoverWidget(e)||this._hideWidgets()}_tryShowHoverWidget(e){return this._getOrCreateContentWidget().showsOrWillShow(e)}_onKeyDown(e){if(!this._editor.hasModel())return;const t=this._keybindingService.softDispatch(e,this._editor.getDomNode()),i=t.kind===1||t.kind===2&&(t.commandId===Q8||t.commandId===Ey||t.commandId===Ny)&&this._contentWidget?.isVisible;e.keyCode===5||e.keyCode===6||e.keyCode===57||e.keyCode===4||i||this._hideWidgets()}_hideWidgets(){this._hoverState.mouseDown&&this._contentWidget?.isColorPickerVisible||Eg.dropDownVisible||(this._hoverState.activatedByDecoratorClick=!1,this._contentWidget?.hide())}_getOrCreateContentWidget(){return this._contentWidget||(this._contentWidget=this._instantiationService.createInstance(AE,this._editor),this._listenersStore.add(this._contentWidget.onContentsChanged(()=>this._onHoverContentsChanged.fire()))),this._contentWidget}showContentHover(e,t,i,n,s=!1){this._hoverState.activatedByDecoratorClick=s,this._getOrCreateContentWidget().startShowingAtRange(e,t,i,n)}_isContentWidgetResizing(){return this._contentWidget?.widget.isResizing||!1}focusedHoverPartIndex(){return this._getOrCreateContentWidget().focusedHoverPartIndex()}updateHoverVerbosityLevel(e,t,i){this._getOrCreateContentWidget().updateHoverVerbosityLevel(e,t,i)}focus(){this._contentWidget?.focus()}scrollUp(){this._contentWidget?.scrollUp()}scrollDown(){this._contentWidget?.scrollDown()}scrollLeft(){this._contentWidget?.scrollLeft()}scrollRight(){this._contentWidget?.scrollRight()}pageUp(){this._contentWidget?.pageUp()}pageDown(){this._contentWidget?.pageDown()}goToTop(){this._contentWidget?.goToTop()}goToBottom(){this._contentWidget?.goToBottom()}get isColorPickerVisible(){return this._contentWidget?.isColorPickerVisible}get isHoverVisible(){return this._contentWidget?.isVisible}dispose(){super.dispose(),this._unhookListeners(),this._listenersStore.dispose(),this._contentWidget?.dispose()}},PE=vh,vh.ID="editor.contrib.contentHover",vh);Tn=PE=cde([H4(1,ke),H4(2,vt)],Tn);var Qo;(function(o){o.NoAutoFocus="noAutoFocus",o.FocusIfVisible="focusIfVisible",o.AutoFocusImmediately="autoFocusImmediately"})(Qo||(Qo={}));class dde extends bi{constructor(){super({id:Q8,label:m({key:"showOrFocusHover",comment:["Label for action that will trigger the showing/focusing of a hover in the editor.","If the hover is not visible, it will show the hover.","This allows for users to show the hover without using the mouse."]},"Show or Focus Hover"),metadata:{description:di("showOrFocusHoverDescription","Show or focus the editor hover which shows documentation, references, and other content for a symbol at the current cursor position."),args:[{name:"args",schema:{type:"object",properties:{focus:{description:"Controls if and when the hover should take focus upon being triggered by this action.",enum:[Qo.NoAutoFocus,Qo.FocusIfVisible,Qo.AutoFocusImmediately],enumDescriptions:[m("showOrFocusHover.focus.noAutoFocus","The hover will not automatically take focus."),m("showOrFocusHover.focus.focusIfVisible","The hover will take focus only if it is already visible."),m("showOrFocusHover.focus.autoFocusImmediately","The hover will automatically take focus when it appears.")],default:Qo.FocusIfVisible}}}}]},alias:"Show or Focus Hover",precondition:void 0,kbOpts:{kbExpr:K.editorTextFocus,primary:Vp(2089,2087),weight:100}})}run(e,t,i){if(!t.hasModel())return;const n=Tn.get(t);if(!n)return;const s=i?.focus;let r=Qo.FocusIfVisible;Object.values(Qo).includes(s)?r=s:typeof s=="boolean"&&s&&(r=Qo.AutoFocusImmediately);const a=c=>{const d=t.getPosition(),h=new I(d.lineNumber,d.column,d.lineNumber,d.column);n.showContentHover(h,1,1,c)},l=t.getOption(2)===2;n.isHoverVisible?r!==Qo.NoAutoFocus?n.focus():a(l):a(l||r===Qo.AutoFocusImmediately)}}class hde extends bi{constructor(){super({id:Ale,label:m({key:"showDefinitionPreviewHover",comment:["Label for action that will trigger the showing of definition preview hover in the editor.","This allows for users to show the definition preview hover without using the mouse."]},"Show Definition Preview Hover"),alias:"Show Definition Preview Hover",precondition:void 0,metadata:{description:di("showDefinitionPreviewHoverDescription","Show the definition preview hover in the editor.")}})}run(e,t){const i=Tn.get(t);if(!i)return;const n=t.getPosition();if(!n)return;const s=new I(n.lineNumber,n.column,n.lineNumber,n.column),r=A_.get(t);if(!r)return;r.startFindDefinitionFromCursor(n).then(()=>{i.showContentHover(s,1,1,!0)})}}class ude extends bi{constructor(){super({id:Ple,label:m({key:"scrollUpHover",comment:["Action that allows to scroll up in the hover widget with the up arrow when the hover widget is focused."]},"Scroll Up Hover"),alias:"Scroll Up Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:16,weight:100},metadata:{description:di("scrollUpHoverDescription","Scroll up the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollUp()}}class fde extends bi{constructor(){super({id:Ole,label:m({key:"scrollDownHover",comment:["Action that allows to scroll down in the hover widget with the up arrow when the hover widget is focused."]},"Scroll Down Hover"),alias:"Scroll Down Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:18,weight:100},metadata:{description:di("scrollDownHoverDescription","Scroll down the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollDown()}}class gde extends bi{constructor(){super({id:Fle,label:m({key:"scrollLeftHover",comment:["Action that allows to scroll left in the hover widget with the left arrow when the hover widget is focused."]},"Scroll Left Hover"),alias:"Scroll Left Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:15,weight:100},metadata:{description:di("scrollLeftHoverDescription","Scroll left the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollLeft()}}class mde extends bi{constructor(){super({id:Ble,label:m({key:"scrollRightHover",comment:["Action that allows to scroll right in the hover widget with the right arrow when the hover widget is focused."]},"Scroll Right Hover"),alias:"Scroll Right Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:17,weight:100},metadata:{description:di("scrollRightHoverDescription","Scroll right the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.scrollRight()}}class pde extends bi{constructor(){super({id:Wle,label:m({key:"pageUpHover",comment:["Action that allows to page up in the hover widget with the page up command when the hover widget is focused."]},"Page Up Hover"),alias:"Page Up Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:11,secondary:[528],weight:100},metadata:{description:di("pageUpHoverDescription","Page up the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.pageUp()}}class _de extends bi{constructor(){super({id:Hle,label:m({key:"pageDownHover",comment:["Action that allows to page down in the hover widget with the page down command when the hover widget is focused."]},"Page Down Hover"),alias:"Page Down Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:12,secondary:[530],weight:100},metadata:{description:di("pageDownHoverDescription","Page down the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.pageDown()}}class bde extends bi{constructor(){super({id:Vle,label:m({key:"goToTopHover",comment:["Action that allows to go to the top of the hover widget with the home command when the hover widget is focused."]},"Go To Top Hover"),alias:"Go To Bottom Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:14,secondary:[2064],weight:100},metadata:{description:di("goToTopHoverDescription","Go to the top of the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.goToTop()}}class Cde extends bi{constructor(){super({id:zle,label:m({key:"goToBottomHover",comment:["Action that allows to go to the bottom in the hover widget with the end command when the hover widget is focused."]},"Go To Bottom Hover"),alias:"Go To Bottom Hover",precondition:K.hoverFocused,kbOpts:{kbExpr:K.hoverFocused,primary:13,secondary:[2066],weight:100},metadata:{description:di("goToBottomHoverDescription","Go to the bottom of the editor hover.")}})}run(e,t){const i=Tn.get(t);i&&i.goToBottom()}}class vde extends bi{constructor(){super({id:Ey,label:Ule,alias:"Increase Hover Verbosity Level",precondition:K.hoverVisible})}run(e,t,i){const n=Tn.get(t);if(!n)return;const s=i?.index!==void 0?i.index:n.focusedHoverPartIndex();n.updateHoverVerbosityLevel(is.Increase,s,i?.focus)}}class wde extends bi{constructor(){super({id:Ny,label:$le,alias:"Decrease Hover Verbosity Level",precondition:K.hoverVisible})}run(e,t,i){const n=Tn.get(t);if(!n)return;const s=i?.index!==void 0?i.index:n.focusedHoverPartIndex();Tn.get(t)?.updateHoverVerbosityLevel(is.Decrease,s,i?.focus)}}const Vr=class Vr{constructor(e){this.value=e}equals(e){return this.value===e.value}contains(e){return this.equals(e)||this.value===""||e.value.startsWith(this.value+Vr.sep)}intersects(e){return this.contains(e)||e.contains(this)}append(...e){return new Vr((this.value?[this.value,...e]:e).join(Vr.sep))}};Vr.sep=".",Vr.None=new Vr("@@none@@"),Vr.Empty=new Vr("");let ji=Vr;const Di=new class{constructor(){this.QuickFix=new ji("quickfix"),this.Refactor=new ji("refactor"),this.RefactorExtract=this.Refactor.append("extract"),this.RefactorInline=this.Refactor.append("inline"),this.RefactorMove=this.Refactor.append("move"),this.RefactorRewrite=this.Refactor.append("rewrite"),this.Notebook=new ji("notebook"),this.Source=new ji("source"),this.SourceOrganizeImports=this.Source.append("organizeImports"),this.SourceFixAll=this.Source.append("fixAll"),this.SurroundWith=this.Refactor.append("surround")}};var Uc;(function(o){o.Refactor="refactor",o.RefactorPreview="refactor preview",o.Lightbulb="lightbulb",o.Default="other (default)",o.SourceAction="source action",o.QuickFix="quick fix action",o.FixAll="fix all",o.OrganizeImports="organize imports",o.AutoFix="auto fix",o.QuickFixHover="quick fix hover window",o.OnSave="save participants",o.ProblemsView="problems view"})(Uc||(Uc={}));function yde(o,e){return!(o.include&&!o.include.intersects(e)||o.excludes&&o.excludes.some(t=>NB(e,t,o.include))||!o.includeSourceActions&&Di.Source.contains(e))}function Sde(o,e){const t=e.kind?new ji(e.kind):void 0;return!(o.include&&(!t||!o.include.contains(t))||o.excludes&&t&&o.excludes.some(i=>NB(t,i,o.include))||!o.includeSourceActions&&t&&Di.Source.contains(t)||o.onlyIncludePreferredActions&&!e.isPreferred)}function NB(o,e,t){return!(!e.contains(o)||t&&e.contains(t))}class Nd{static fromUser(e,t){return!e||typeof e!="object"?new Nd(t.kind,t.apply,!1):new Nd(Nd.getKindFromUser(e,t.kind),Nd.getApplyFromUser(e,t.apply),Nd.getPreferredUser(e))}static getApplyFromUser(e,t){switch(typeof e.apply=="string"?e.apply.toLowerCase():""){case"first":return"first";case"never":return"never";case"ifsingle":return"ifSingle";default:return t}}static getKindFromUser(e,t){return typeof e.kind=="string"?new ji(e.kind):t}static getPreferredUser(e){return typeof e.preferred=="boolean"?e.preferred:!1}constructor(e,t,i){this.kind=e,this.apply=t,this.preferred=i}}class Lde{constructor(e,t,i){this.action=e,this.provider=t,this.highlightRange=i}async resolve(e){if(this.provider?.resolveCodeAction&&!this.action.edit){let t;try{t=await this.provider.resolveCodeAction(this.action,e)}catch(i){$n(i)}t&&(this.action.edit=t.edit)}return this}}const xde="editor.action.codeAction",TB="editor.action.quickFix",kde="editor.action.autoFix",Dde="editor.action.refactor",Ide="editor.action.sourceAction",V4="editor.action.organizeImports",z4="editor.action.fixAll";class wp extends z{static codeActionsPreferredComparator(e,t){return e.isPreferred&&!t.isPreferred?-1:!e.isPreferred&&t.isPreferred?1:0}static codeActionsComparator({action:e},{action:t}){return e.isAI&&!t.isAI?1:!e.isAI&&t.isAI?-1:Ps(e.diagnostics)?Ps(t.diagnostics)?wp.codeActionsPreferredComparator(e,t):-1:Ps(t.diagnostics)?1:wp.codeActionsPreferredComparator(e,t)}constructor(e,t,i){super(),this.documentation=t,this._register(i),this.allActions=[...e].sort(wp.codeActionsComparator),this.validActions=this.allActions.filter(({action:n})=>!n.disabled)}get hasAutoFix(){return this.validActions.some(({action:e})=>!!e.kind&&Di.QuickFix.contains(new ji(e.kind))&&!!e.isPreferred)}get hasAIFix(){return this.validActions.some(({action:e})=>!!e.isAI)}get allAIFixes(){return this.validActions.every(({action:e})=>!!e.isAI)}}const U4={actions:[],documentation:void 0};async function mf(o,e,t,i,n,s){const r=i.filter||{},a={...r,excludes:[...r.excludes||[],Di.Notebook]},l={only:r.include?.value,trigger:i.type},c=new Dle(e,s),d=i.type===2,h=Ede(o,e,d?a:r),u=new X,f=h.map(async p=>{try{n.report(p);const _=await p.provideCodeActions(e,t,l,c.token);if(_&&u.add(_),c.token.isCancellationRequested)return U4;const b=(_?.actions||[]).filter(w=>w&&Sde(r,w)),C=Tde(p,b,r.include);return{actions:b.map(w=>new Lde(w,p)),documentation:C}}catch(_){if($c(_))throw _;return $n(_),U4}}),g=o.onDidChange(()=>{const p=o.all(e);li(p,h)||c.cancel()});try{const p=await Promise.all(f),_=p.map(C=>C.actions).flat(),b=[...Ag(p.map(C=>C.documentation)),...Nde(o,e,i,_)];return new wp(_,b,u)}finally{g.dispose(),c.dispose()}}function Ede(o,e,t){return o.all(e).filter(i=>i.providedCodeActionKinds?i.providedCodeActionKinds.some(n=>yde(t,new ji(n))):!0)}function*Nde(o,e,t,i){if(e&&i.length)for(const n of o.all(e))n._getAdditionalMenuItems&&(yield*n._getAdditionalMenuItems?.({trigger:t.type,only:t.filter?.include?.value},i.map(s=>s.action)))}function Tde(o,e,t){if(!o.documentation)return;const i=o.documentation.map(n=>({kind:new ji(n.kind),command:n.command}));if(t){let n;for(const s of i)s.kind.contains(t)&&(n?n.kind.contains(s.kind)&&(n=s):n=s);if(n)return n?.command}for(const n of e)if(n.kind){for(const s of i)if(s.kind.contains(new ji(n.kind)))return s.command}}var Gd;(function(o){o.OnSave="onSave",o.FromProblemsView="fromProblemsView",o.FromCodeActions="fromCodeActions",o.FromAILightbulb="fromAILightbulb"})(Gd||(Gd={}));async function Mde(o,e,t,i,n=ut.None){const s=o.get(b7),r=o.get(hi),a=o.get($s),l=o.get(mn);if(a.publicLog2("codeAction.applyCodeAction",{codeActionTitle:e.action.title,codeActionKind:e.action.kind,codeActionIsPreferred:!!e.action.isPreferred,reason:t}),await e.resolve(n),!n.isCancellationRequested&&!(e.action.edit?.edits.length&&!(await s.apply(e.action.edit,{editor:i?.editor,label:e.action.title,quotableLabel:e.action.title,code:"undoredo.codeAction",respectAutoSaveConfig:t!==Gd.OnSave,showPreview:i?.preview})).isApplied)&&e.action.command)try{await r.executeCommand(e.action.command.id,...e.action.command.arguments||[])}catch(c){const d=Rde(c);l.error(typeof d=="string"?d:m("applyCodeActionFailed","An unknown error occurred while applying the code action"))}}function Rde(o){return typeof o=="string"?o:o instanceof Error&&typeof o.message=="string"?o.message:void 0}bt.registerCommand("_executeCodeActionProvider",async function(o,e,t,i,n){if(!(e instanceof ve))throw na();const{codeActionProvider:s}=o.get(Se),r=o.get(Fi).getModel(e);if(!r)throw na();const a=Fe.isISelection(t)?Fe.liftSelection(t):I.isIRange(t)?r.validateRange(t):void 0;if(!a)throw na();const l=typeof i=="string"?new ji(i):void 0,c=await mf(s,r,a,{type:1,triggerAction:Uc.Default,filter:{includeSourceActions:!0,include:l}},rc.None,ut.None),d=[],h=Math.min(c.validActions.length,typeof n=="number"?n:0);for(let u=0;uu.action)}finally{setTimeout(()=>c.dispose(),100)}});var Ade=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Pde=function(o,e){return function(t,i){e(t,i,o)}},OE,wh;let FE=(wh=class{constructor(e){this.keybindingService=e}getResolver(){const e=new ua(()=>this.keybindingService.getKeybindings().filter(t=>OE.codeActionCommands.indexOf(t.command)>=0).filter(t=>t.resolvedKeybinding).map(t=>{let i=t.commandArgs;return t.command===V4?i={kind:Di.SourceOrganizeImports.value}:t.command===z4&&(i={kind:Di.SourceFixAll.value}),{resolvedKeybinding:t.resolvedKeybinding,...Nd.fromUser(i,{kind:ji.None,apply:"never"})}}));return t=>{if(t.kind)return this.bestKeybindingForCodeAction(t,e.value)?.resolvedKeybinding}}bestKeybindingForCodeAction(e,t){if(!e.kind)return;const i=new ji(e.kind);return t.filter(n=>n.kind.contains(i)).filter(n=>n.preferred?e.isPreferred:!0).reduceRight((n,s)=>n?n.kind.contains(s.kind)?s:n:s,void 0)}},OE=wh,wh.codeActionCommands=[Dde,xde,Ide,V4,z4],wh);FE=OE=Ade([Pde(0,vt)],FE);D("symbolIcon.arrayForeground",Pe,m("symbolIcon.arrayForeground","The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.booleanForeground",Pe,m("symbolIcon.booleanForeground","The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.classForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},m("symbolIcon.classForeground","The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.colorForeground",Pe,m("symbolIcon.colorForeground","The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.constantForeground",Pe,m("symbolIcon.constantForeground","The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.constructorForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("symbolIcon.constructorForeground","The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.enumeratorForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},m("symbolIcon.enumeratorForeground","The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.enumeratorMemberForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.enumeratorMemberForeground","The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.eventForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},m("symbolIcon.eventForeground","The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.fieldForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.fieldForeground","The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.fileForeground",Pe,m("symbolIcon.fileForeground","The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.folderForeground",Pe,m("symbolIcon.folderForeground","The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.functionForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("symbolIcon.functionForeground","The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.interfaceForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.interfaceForeground","The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.keyForeground",Pe,m("symbolIcon.keyForeground","The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.keywordForeground",Pe,m("symbolIcon.keywordForeground","The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.methodForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},m("symbolIcon.methodForeground","The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.moduleForeground",Pe,m("symbolIcon.moduleForeground","The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.namespaceForeground",Pe,m("symbolIcon.namespaceForeground","The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.nullForeground",Pe,m("symbolIcon.nullForeground","The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.numberForeground",Pe,m("symbolIcon.numberForeground","The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.objectForeground",Pe,m("symbolIcon.objectForeground","The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.operatorForeground",Pe,m("symbolIcon.operatorForeground","The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.packageForeground",Pe,m("symbolIcon.packageForeground","The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.propertyForeground",Pe,m("symbolIcon.propertyForeground","The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.referenceForeground",Pe,m("symbolIcon.referenceForeground","The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.snippetForeground",Pe,m("symbolIcon.snippetForeground","The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.stringForeground",Pe,m("symbolIcon.stringForeground","The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.structForeground",Pe,m("symbolIcon.structForeground","The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.textForeground",Pe,m("symbolIcon.textForeground","The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.typeParameterForeground",Pe,m("symbolIcon.typeParameterForeground","The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.unitForeground",Pe,m("symbolIcon.unitForeground","The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));D("symbolIcon.variableForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},m("symbolIcon.variableForeground","The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));const MB=Object.freeze({kind:ji.Empty,title:m("codeAction.widget.id.more","More Actions...")}),Ode=Object.freeze([{kind:Di.QuickFix,title:m("codeAction.widget.id.quickfix","Quick Fix")},{kind:Di.RefactorExtract,title:m("codeAction.widget.id.extract","Extract"),icon:ie.wrench},{kind:Di.RefactorInline,title:m("codeAction.widget.id.inline","Inline"),icon:ie.wrench},{kind:Di.RefactorRewrite,title:m("codeAction.widget.id.convert","Rewrite"),icon:ie.wrench},{kind:Di.RefactorMove,title:m("codeAction.widget.id.move","Move"),icon:ie.wrench},{kind:Di.SurroundWith,title:m("codeAction.widget.id.surround","Surround With"),icon:ie.surroundWith},{kind:Di.Source,title:m("codeAction.widget.id.source","Source Action"),icon:ie.symbolFile},MB]);function Fde(o,e,t){if(!e)return o.map(s=>({kind:"action",item:s,group:MB,disabled:!!s.action.disabled,label:s.action.disabled||s.action.title,canPreview:!!s.action.edit?.edits.length}));const i=Ode.map(s=>({group:s,actions:[]}));for(const s of o){const r=s.action.kind?new ji(s.action.kind):ji.None;for(const a of i)if(a.group.kind.contains(r)){a.actions.push(s);break}}const n=[];for(const s of i)if(s.actions.length){n.push({kind:"header",group:s.group});for(const r of s.actions){const a=s.group;n.push({kind:"action",item:r,group:r.action.isAI?{title:a.title,kind:a.kind,icon:ie.sparkle}:a,label:r.action.title,disabled:!!r.action.disabled,keybinding:t(r.action)})}}return n}var Bde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Wde=function(o,e){return function(t,i){e(t,i,o)}},$u;const $4=Wi("gutter-lightbulb",ie.lightBulb,m("gutterLightbulbWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor.")),K4=Wi("gutter-lightbulb-auto-fix",ie.lightbulbAutofix,m("gutterLightbulbAutoFixWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and a quick fix is available.")),j4=Wi("gutter-lightbulb-sparkle",ie.lightbulbSparkle,m("gutterLightbulbAIFixWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix is available.")),q4=Wi("gutter-lightbulb-aifix-auto-fix",ie.lightbulbSparkleAutofix,m("gutterLightbulbAIFixAutoFixWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix and a quick fix is available.")),G4=Wi("gutter-lightbulb-sparkle-filled",ie.sparkleFilled,m("gutterLightbulbSparkleFilledWidget","Icon which spawns code actions menu from the gutter when there is no space in the editor and an AI fix and a quick fix is available."));var Xo;(function(o){o.Hidden={type:0};class e{constructor(i,n,s,r){this.actions=i,this.trigger=n,this.editorPosition=s,this.widgetPosition=r,this.type=1}}o.Showing=e})(Xo||(Xo={}));var pl;let BE=(pl=class extends z{constructor(e,t){super(),this._editor=e,this._keybindingService=t,this._onClick=this._register(new A),this.onClick=this._onClick.event,this._state=Xo.Hidden,this._gutterState=Xo.Hidden,this._iconClasses=[],this.lightbulbClasses=["codicon-"+$4.id,"codicon-"+q4.id,"codicon-"+K4.id,"codicon-"+j4.id,"codicon-"+G4.id],this.gutterDecoration=$u.GUTTER_DECORATION,this._domNode=ce("div.lightBulbWidget"),this._domNode.role="listbox",this._register(fn.ignoreTarget(this._domNode)),this._editor.addContentWidget(this),this._register(this._editor.onDidChangeModelContent(i=>{const n=this._editor.getModel();(this.state.type!==1||!n||this.state.editorPosition.lineNumber>=n.getLineCount())&&this.hide(),(this.gutterState.type!==1||!n||this.gutterState.editorPosition.lineNumber>=n.getLineCount())&&this.gutterHide()})),this._register(mV(this._domNode,i=>{if(this.state.type!==1)return;this._editor.focus(),i.preventDefault();const{top:n,height:s}=gi(this._domNode),r=this._editor.getOption(67);let a=Math.floor(r/3);this.state.widgetPosition.position!==null&&this.state.widgetPosition.position.lineNumber{(i.buttons&1)===1&&this.hide()})),this._register(J.runAndSubscribe(this._keybindingService.onDidUpdateKeybindings,()=>{this._preferredKbLabel=this._keybindingService.lookupKeybinding(kde)?.getLabel()??void 0,this._quickFixKbLabel=this._keybindingService.lookupKeybinding(TB)?.getLabel()??void 0,this._updateLightBulbTitleAndIcon()})),this._register(this._editor.onMouseDown(async i=>{if(!i.target.element||!this.lightbulbClasses.some(l=>i.target.element&&i.target.element.classList.contains(l))||this.gutterState.type!==1)return;this._editor.focus();const{top:n,height:s}=gi(i.target.element),r=this._editor.getOption(67);let a=Math.floor(r/3);this.gutterState.widgetPosition.position!==null&&this.gutterState.widgetPosition.position.lineNumber22,g=y=>y>2&&this._editor.getTopForLineNumber(y)===this._editor.getTopForLineNumber(y-1),p=this._editor.getLineDecorations(a);let _=!1;if(p)for(const y of p){const x=y.options.glyphMarginClassName;if(x&&!this.lightbulbClasses.some(L=>x.includes(L))){_=!0;break}}let b=a,C=1;if(!f){const y=x=>{const L=r.getLineContent(x);return/^\s*$|^\s+/.test(L)||L.length<=C};if(a>1&&!g(a-1)){const x=r.getLineCount(),L=a===x,E=a>1&&y(a-1),N=!L&&y(a+1),H=y(a),F=!N&&!E;if(!N&&!E&&!_)return this.gutterState=new Xo.Showing(e,t,i,{position:{lineNumber:b,column:C},preference:$u._posPref}),this.renderGutterLightbub(),this.hide();E||L||E&&!H?b-=1:(N||F&&H)&&(b+=1)}else if(a===1&&(a===r.getLineCount()||!y(a+1)&&!y(a)))if(this.gutterState=new Xo.Showing(e,t,i,{position:{lineNumber:b,column:C},preference:$u._posPref}),_)this.gutterHide();else return this.renderGutterLightbub(),this.hide();else if(a{this._gutterDecorationID=t.addDecoration(new I(e,0,e,0),this.gutterDecoration)})}_removeGutterDecoration(e){this._editor.changeDecorations(t=>{t.removeDecoration(e),this._gutterDecorationID=void 0})}_updateGutterDecoration(e,t){this._editor.changeDecorations(i=>{i.changeDecoration(e,new I(t,0,t,0)),i.changeDecorationOptions(e,this.gutterDecoration)})}_updateLightbulbTitle(e,t){this.state.type===1&&(t?this.title=m("codeActionAutoRun","Run: {0}",this.state.actions.validActions[0].action.title):e&&this._preferredKbLabel?this.title=m("preferredcodeActionWithKb","Show Code Actions. Preferred Quick Fix Available ({0})",this._preferredKbLabel):!e&&this._quickFixKbLabel?this.title=m("codeActionWithKb","Show Code Actions ({0})",this._quickFixKbLabel):e||(this.title=m("codeAction","Show Code Actions")))}set title(e){this._domNode.title=e}},$u=pl,pl.GUTTER_DECORATION=kt.register({description:"codicon-gutter-lightbulb-decoration",glyphMarginClassName:Ee.asClassName(ie.lightBulb),glyphMargin:{position:Ao.Left},stickiness:1}),pl.ID="editor.contrib.lightbulbWidget",pl._posPref=[0],pl);BE=$u=Bde([Wde(1,vt)],BE);var RB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},WE=function(o,e){return function(t,i){e(t,i,o)}};const AB="acceptSelectedCodeAction",PB="previewSelectedCodeAction";class Hde{get templateId(){return"header"}renderTemplate(e){e.classList.add("group-header");const t=document.createElement("span");return e.append(t),{container:e,text:t}}renderElement(e,t,i){i.text.textContent=e.group?.title??""}disposeTemplate(e){}}let HE=class{get templateId(){return"action"}constructor(e,t){this._supportsPreview=e,this._keybindingService=t}renderTemplate(e){e.classList.add(this.templateId);const t=document.createElement("div");t.className="icon",e.append(t);const i=document.createElement("span");i.className="title",e.append(i);const n=new ob(e,Ns);return{container:e,icon:t,text:i,keybinding:n}}renderElement(e,t,i){if(e.group?.icon?(i.icon.className=Ee.asClassName(e.group.icon),e.group.icon.color&&(i.icon.style.color=oe(e.group.icon.color.id))):(i.icon.className=Ee.asClassName(ie.lightBulb),i.icon.style.color="var(--vscode-editorLightBulb-foreground)"),!e.item||!e.label)return;i.text.textContent=OB(e.label),i.keybinding.set(e.keybinding),MV(!!e.keybinding,i.keybinding.element);const n=this._keybindingService.lookupKeybinding(AB)?.getLabel(),s=this._keybindingService.lookupKeybinding(PB)?.getLabel();i.container.classList.toggle("option-disabled",e.disabled),e.disabled?i.container.title=e.label:n&&s?this._supportsPreview&&e.canPreview?i.container.title=m({key:"label-preview",comment:['placeholders are keybindings, e.g "F2 to Apply, Shift+F2 to Preview"']},"{0} to Apply, {1} to Preview",n,s):i.container.title=m({key:"label",comment:['placeholder is a keybinding, e.g "F2 to Apply"']},"{0} to Apply",n):i.container.title=""}disposeTemplate(e){e.keybinding.dispose()}};HE=RB([WE(1,vt)],HE);class Vde extends UIEvent{constructor(){super("acceptSelectedAction")}}class Z4 extends UIEvent{constructor(){super("previewSelectedAction")}}function zde(o){if(o.kind==="action")return o.label}let VE=class extends z{constructor(e,t,i,n,s,r){super(),this._delegate=n,this._contextViewService=s,this._keybindingService=r,this._actionLineHeight=24,this._headerLineHeight=26,this.cts=this._register(new In),this.domNode=document.createElement("div"),this.domNode.classList.add("actionList");const a={getHeight:l=>l.kind==="header"?this._headerLineHeight:this._actionLineHeight,getTemplateId:l=>l.kind};this._list=this._register(new go(e,this.domNode,a,[new HE(t,this._keybindingService),new Hde],{keyboardSupport:!1,typeNavigationEnabled:!0,keyboardNavigationLabelProvider:{getKeyboardNavigationLabel:zde},accessibilityProvider:{getAriaLabel:l=>{if(l.kind==="action"){let c=l.label?OB(l?.label):"";return l.disabled&&(c=m({key:"customQuickFixWidget.labels",comment:["Action widget labels for accessibility."]},"{0}, Disabled Reason: {1}",c,l.disabled)),c}return null},getWidgetAriaLabel:()=>m({key:"customQuickFixWidget",comment:["An action widget option"]},"Action Widget"),getRole:l=>l.kind==="action"?"option":"separator",getWidgetRole:()=>"listbox"}})),this._list.style(hu),this._register(this._list.onMouseClick(l=>this.onListClick(l))),this._register(this._list.onMouseOver(l=>this.onListHover(l))),this._register(this._list.onDidChangeFocus(()=>this.onFocus())),this._register(this._list.onDidChangeSelection(l=>this.onListSelection(l))),this._allMenuItems=i,this._list.splice(0,this._list.length,this._allMenuItems),this._list.length&&this.focusNext()}focusCondition(e){return!e.disabled&&e.kind==="action"}hide(e){this._delegate.onHide(e),this.cts.cancel(),this._contextViewService.hideContextView()}layout(e){const t=this._allMenuItems.filter(l=>l.kind==="header").length,n=this._allMenuItems.length*this._actionLineHeight+t*this._headerLineHeight-t*this._actionLineHeight;this._list.layout(n);let s=e;if(this._allMenuItems.length>=50)s=380;else{const l=this._allMenuItems.map((c,d)=>{const h=this.domNode.ownerDocument.getElementById(this._list.getElementID(d));if(h){h.style.width="auto";const u=h.getBoundingClientRect().width;return h.style.width="",u}return 0});s=Math.max(...l,e)}const a=Math.min(n,this.domNode.ownerDocument.body.clientHeight*.7);return this._list.layout(a,s),this.domNode.style.height=`${a}px`,this._list.domFocus(),s}focusPrevious(){this._list.focusPrevious(1,!0,void 0,this.focusCondition)}focusNext(){this._list.focusNext(1,!0,void 0,this.focusCondition)}acceptSelected(e){const t=this._list.getFocus();if(t.length===0)return;const i=t[0],n=this._list.element(i);if(!this.focusCondition(n))return;const s=e?new Z4:new Vde;this._list.setSelection([i],s)}onListSelection(e){if(!e.elements.length)return;const t=e.elements[0];t.item&&this.focusCondition(t)?this._delegate.onSelect(t.item,e.browserEvent instanceof Z4):this._list.setSelection([])}onFocus(){const e=this._list.getFocus();if(e.length===0)return;const t=e[0],i=this._list.element(t);this._delegate.onFocus?.(i.item)}async onListHover(e){const t=e.element;if(t&&t.item&&this.focusCondition(t)){if(this._delegate.onHover&&!t.disabled&&t.kind==="action"){const i=await this._delegate.onHover(t.item,this.cts.token);t.canPreview=i?i.canPreview:void 0}e.index&&this._list.splice(e.index,1,[t])}this._list.setFocus(typeof e.index=="number"?[e.index]:[])}onListClick(e){e.element&&this.focusCondition(e.element)&&this._list.setFocus([])}};VE=RB([WE(4,lu),WE(5,vt)],VE);function OB(o){return o.replace(/\r\n|\r|\n/g," ")}var Ude=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},pL=function(o,e){return function(t,i){e(t,i,o)}};D("actionBar.toggledBackground",IT,m("actionBar.toggledBackground","Background color for toggled action items in action bar."));const Zh={Visible:new le("codeActionMenuVisible",!1,m("codeActionMenuVisible","Whether the action widget list is visible"))},Cu=He("actionWidgetService");let Yh=class extends z{get isVisible(){return Zh.Visible.getValue(this._contextKeyService)||!1}constructor(e,t,i){super(),this._contextViewService=e,this._contextKeyService=t,this._instantiationService=i,this._list=this._register(new Dn)}show(e,t,i,n,s,r,a){const l=Zh.Visible.bindTo(this._contextKeyService),c=this._instantiationService.createInstance(VE,e,t,i,n);this._contextViewService.showContextView({getAnchor:()=>s,render:d=>(l.set(!0),this._renderWidget(d,c,a??[])),onHide:d=>{l.reset(),this._onWidgetClosed(d)}},r,!1)}acceptSelected(e){this._list.value?.acceptSelected(e)}focusPrevious(){this._list?.value?.focusPrevious()}focusNext(){this._list?.value?.focusNext()}hide(e){this._list.value?.hide(e),this._list.clear()}_renderWidget(e,t,i){const n=document.createElement("div");if(n.classList.add("action-widget"),e.appendChild(n),this._list.value=t,this._list.value)n.appendChild(this._list.value.domNode);else throw new Error("List has no value");const s=new X,r=document.createElement("div"),a=e.appendChild(r);a.classList.add("context-view-block"),s.add(U(a,ee.MOUSE_DOWN,f=>f.stopPropagation()));const l=document.createElement("div"),c=e.appendChild(l);c.classList.add("context-view-pointerBlock"),s.add(U(c,ee.POINTER_MOVE,()=>c.remove())),s.add(U(c,ee.MOUSE_DOWN,()=>c.remove()));let d=0;if(i.length){const f=this._createActionBar(".action-widget-action-bar",i);f&&(n.appendChild(f.getContainer().parentElement),s.add(f),d=f.getContainer().offsetWidth)}const h=this._list.value?.layout(d);n.style.width=`${h}px`;const u=s.add(Ph(e));return s.add(u.onDidBlur(()=>this.hide(!0))),s}_createActionBar(e,t){if(!t.length)return;const i=ce(e),n=new oo(i);return n.push(t,{icon:!1,label:!0}),n}_onWidgetClosed(e){this._list.value?.hide(e)}};Yh=Ude([pL(0,lu),pL(1,De),pL(2,ke)],Yh);Qe(Cu,Yh,1);const hb=1100;Rn(class extends nu{constructor(){super({id:"hideCodeActionWidget",title:di("hideCodeActionWidget.title","Hide action widget"),precondition:Zh.Visible,keybinding:{weight:hb,primary:9,secondary:[1033]}})}run(o){o.get(Cu).hide(!0)}});Rn(class extends nu{constructor(){super({id:"selectPrevCodeAction",title:di("selectPrevCodeAction.title","Select previous action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.focusPrevious()}});Rn(class extends nu{constructor(){super({id:"selectNextCodeAction",title:di("selectNextCodeAction.title","Select next action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.focusNext()}});Rn(class extends nu{constructor(){super({id:AB,title:di("acceptSelected.title","Accept selected action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:3,secondary:[2137]}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.acceptSelected()}});Rn(class extends nu{constructor(){super({id:PB,title:di("previewSelected.title","Preview selected action"),precondition:Zh.Visible,keybinding:{weight:hb,primary:2051}})}run(o){const e=o.get(Cu);e instanceof Yh&&e.acceptSelected(!0)}});const $de=new le("supportedCodeAction",""),Y4="_typescript.applyFixAllCodeAction";class Kde extends z{constructor(e,t,i,n=250){super(),this._editor=e,this._markerService=t,this._signalChange=i,this._delay=n,this._autoTriggerTimer=this._register(new wr),this._register(this._markerService.onMarkerChanged(s=>this._onMarkerChanges(s))),this._register(this._editor.onDidChangeCursorPosition(()=>this._tryAutoTrigger()))}trigger(e){const t=this._getRangeOfSelectionUnlessWhitespaceEnclosed(e);this._signalChange(t?{trigger:e,selection:t}:void 0)}_onMarkerChanges(e){const t=this._editor.getModel();t&&e.some(i=>WT(i,t.uri))&&this._tryAutoTrigger()}_tryAutoTrigger(){this._autoTriggerTimer.cancelAndSet(()=>{this.trigger({type:2,triggerAction:Uc.Default})},this._delay)}_getRangeOfSelectionUnlessWhitespaceEnclosed(e){if(!this._editor.hasModel())return;const t=this._editor.getSelection();if(e.type===1)return t;const i=this._editor.getOption(65).enabled;if(i!==xo.Off){{if(i===xo.On)return t;if(i===xo.OnCode){if(!t.isEmpty())return t;const s=this._editor.getModel(),{lineNumber:r,column:a}=t.getPosition(),l=s.getLineContent(r);if(l.length===0)return;if(a===1){if(/\s/.test(l[0]))return}else if(a===s.getLineMaxColumn(r)){if(/\s/.test(l[l.length-1]))return}else if(/\s/.test(l[a-2])&&/\s/.test(l[a-1]))return}}return t}}}var Td;(function(o){o.Empty={type:0};class e{constructor(i,n,s){this.trigger=i,this.position=n,this._cancellablePromise=s,this.type=1,this.actions=s.catch(r=>{if($c(r))return FB;throw r})}cancel(){this._cancellablePromise.cancel()}}o.Triggered=e})(Td||(Td={}));const FB=Object.freeze({allActions:[],validActions:[],dispose:()=>{},documentation:[],hasAutoFix:!1,hasAIFix:!1,allAIFixes:!1});class jde extends z{constructor(e,t,i,n,s,r,a){super(),this._editor=e,this._registry=t,this._markerService=i,this._progressService=s,this._configurationService=r,this._telemetryService=a,this._codeActionOracle=this._register(new Dn),this._state=Td.Empty,this._onDidChangeState=this._register(new A),this.onDidChangeState=this._onDidChangeState.event,this._disposed=!1,this._supportedCodeActions=$de.bindTo(n),this._register(this._editor.onDidChangeModel(()=>this._update())),this._register(this._editor.onDidChangeModelLanguage(()=>this._update())),this._register(this._registry.onDidChange(()=>this._update())),this._register(this._editor.onDidChangeConfiguration(l=>{l.hasChanged(65)&&this._update()})),this._update()}dispose(){this._disposed||(this._disposed=!0,super.dispose(),this.setState(Td.Empty,!0))}_settingEnabledNearbyQuickfixes(){const e=this._editor?.getModel();return this._configurationService?this._configurationService.getValue("editor.codeActionWidget.includeNearbyQuickFixes",{resource:e?.uri}):!1}_update(){if(this._disposed)return;this._codeActionOracle.value=void 0,this.setState(Td.Empty);const e=this._editor.getModel();if(e&&this._registry.has(e)&&!this._editor.getOption(92)){const t=this._registry.all(e).flatMap(i=>i.providedCodeActionKinds??[]);this._supportedCodeActions.set(t.join(" ")),this._codeActionOracle.value=new Kde(this._editor,this._markerService,i=>{if(!i){this.setState(Td.Empty);return}const n=i.selection.getStartPosition(),s=wa(async l=>{if(this._settingEnabledNearbyQuickfixes()&&i.trigger.type===1&&(i.trigger.triggerAction===Uc.QuickFix||i.trigger.filter?.include?.contains(Di.QuickFix))){const c=await mf(this._registry,e,i.selection,i.trigger,rc.None,l),d=[...c.allActions];if(l.isCancellationRequested)return FB;const h=c.validActions?.some(f=>f.action.kind?Di.QuickFix.contains(new ji(f.action.kind)):!1),u=this._markerService.read({resource:e.uri});if(h){for(const f of c.validActions)f.action.command?.arguments?.some(g=>typeof g=="string"&&g.includes(Y4))&&(f.action.diagnostics=[...u.filter(g=>g.relatedInformation)]);return{validActions:c.validActions,allActions:d,documentation:c.documentation,hasAutoFix:c.hasAutoFix,hasAIFix:c.hasAIFix,allAIFixes:c.allAIFixes,dispose:()=>{c.dispose()}}}else if(!h&&u.length>0){const f=i.selection.getPosition();let g=f,p=Number.MAX_VALUE;const _=[...c.validActions];for(const C of u){const w=C.endColumn,v=C.endLineNumber,y=C.startLineNumber;if(v===f.lineNumber||y===f.lineNumber){g=new P(v,w);const x={type:i.trigger.type,triggerAction:i.trigger.triggerAction,filter:{include:i.trigger.filter?.include?i.trigger.filter?.include:Di.QuickFix},autoApply:i.trigger.autoApply,context:{notAvailableMessage:i.trigger.context?.notAvailableMessage||"",position:g}},L=new Fe(g.lineNumber,g.column,g.lineNumber,g.column),E=await mf(this._registry,e,L,x,rc.None,l);if(E.validActions.length!==0){for(const N of E.validActions)N.action.command?.arguments?.some(H=>typeof H=="string"&&H.includes(Y4))&&(N.action.diagnostics=[...u.filter(H=>H.relatedInformation)]);c.allActions.length===0&&d.push(...E.allActions),Math.abs(f.column-w)v.findIndex(y=>y.action.title===C.action.title)===w);return b.sort((C,w)=>C.action.isPreferred&&!w.action.isPreferred?-1:!C.action.isPreferred&&w.action.isPreferred||C.action.isAI&&!w.action.isAI?1:!C.action.isAI&&w.action.isAI?-1:0),{validActions:b,allActions:d,documentation:c.documentation,hasAutoFix:c.hasAutoFix,hasAIFix:c.hasAIFix,allAIFixes:c.allAIFixes,dispose:()=>{c.dispose()}}}}if(i.trigger.type===1){const c=new Hs,d=await mf(this._registry,e,i.selection,i.trigger,rc.None,l);return this._telemetryService&&this._telemetryService.publicLog2("codeAction.invokedDurations",{codeActions:d.validActions.length,duration:c.elapsed()}),d}return mf(this._registry,e,i.selection,i.trigger,rc.None,l)});i.trigger.type===1&&this._progressService?.showWhile(s,250);const r=new Td.Triggered(i.trigger,n,s);let a=!1;this._state.type===1&&(a=this._state.trigger.type===1&&r.type===1&&r.trigger.type===2&&this._state.position!==r.position),a?setTimeout(()=>{this.setState(r)},500):this.setState(r)},void 0),this._codeActionOracle.value.trigger({type:2,triggerAction:Uc.Default})}else this._supportedCodeActions.reset()}trigger(e){this._codeActionOracle.value?.trigger(e)}setState(e,t){e!==this._state&&(this._state.type===1&&this._state.cancel(),this._state=e,!t&&!this._disposed&&this._onDidChangeState.fire(e))}}var qde=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Rr=function(o,e){return function(t,i){e(t,i,o)}},Ku;const Gde="quickfix-edit-highlight";var Ic;let zE=(Ic=class extends z{static get(e){return e.getContribution(Ku.ID)}constructor(e,t,i,n,s,r,a,l,c,d,h){super(),this._commandService=a,this._configurationService=l,this._actionWidgetService=c,this._instantiationService=d,this._telemetryService=h,this._activeCodeActions=this._register(new Dn),this._showDisabled=!1,this._disposed=!1,this._editor=e,this._model=this._register(new jde(this._editor,s.codeActionProvider,t,i,r,l,this._telemetryService)),this._register(this._model.onDidChangeState(u=>this.update(u))),this._lightBulbWidget=new ua(()=>{const u=this._editor.getContribution(BE.ID);return u&&this._register(u.onClick(f=>this.showCodeActionsFromLightbulb(f.actions,f))),u}),this._resolver=n.createInstance(FE),this._register(this._editor.onDidLayoutChange(()=>this._actionWidgetService.hide()))}dispose(){this._disposed=!0,super.dispose()}async showCodeActionsFromLightbulb(e,t){if(e.allAIFixes&&e.validActions.length===1){const i=e.validActions[0],n=i.action.command;n&&n.id==="inlineChat.start"&&n.arguments&&n.arguments.length>=1&&(n.arguments[0]={...n.arguments[0],autoSend:!1}),await this._applyCodeAction(i,!1,!1,Gd.FromAILightbulb);return}await this.showCodeActionList(e,t,{includeDisabledActions:!1,fromLightbulb:!0})}showCodeActions(e,t,i){return this.showCodeActionList(t,i,{includeDisabledActions:!1,fromLightbulb:!1})}manualTriggerAtCurrentPosition(e,t,i,n){if(!this._editor.hasModel())return;ca.get(this._editor)?.closeMessage();const s=this._editor.getPosition();this._trigger({type:1,triggerAction:t,filter:i,autoApply:n,context:{notAvailableMessage:e,position:s}})}_trigger(e){return this._model.trigger(e)}async _applyCodeAction(e,t,i,n){try{await this._instantiationService.invokeFunction(Mde,e,n,{preview:i,editor:this._editor})}finally{t&&this._trigger({type:2,triggerAction:Uc.QuickFix,filter:{}})}}hideLightBulbWidget(){this._lightBulbWidget.rawValue?.hide(),this._lightBulbWidget.rawValue?.gutterHide()}async update(e){if(e.type!==1){this.hideLightBulbWidget();return}let t;try{t=await e.actions}catch(n){Ze(n);return}if(!(this._disposed||this._editor.getSelection()?.startLineNumber!==e.position.lineNumber))if(this._lightBulbWidget.value?.update(t,e.trigger,e.position),e.trigger.type===1){if(e.trigger.filter?.include){const s=this.tryGetValidActionToApply(e.trigger,t);if(s){try{this.hideLightBulbWidget(),await this._applyCodeAction(s,!1,!1,Gd.FromCodeActions)}finally{t.dispose()}return}if(e.trigger.context){const r=this.getInvalidActionThatWouldHaveBeenApplied(e.trigger,t);if(r&&r.action.disabled){ca.get(this._editor)?.showMessage(r.action.disabled,e.trigger.context.position),t.dispose();return}}}const n=!!e.trigger.filter?.include;if(e.trigger.context&&(!t.allActions.length||!n&&!t.validActions.length)){ca.get(this._editor)?.showMessage(e.trigger.context.notAvailableMessage,e.trigger.context.position),this._activeCodeActions.value=t,t.dispose();return}this._activeCodeActions.value=t,this.showCodeActionList(t,this.toCoords(e.position),{includeDisabledActions:n,fromLightbulb:!1})}else this._actionWidgetService.isVisible?t.dispose():this._activeCodeActions.value=t}getInvalidActionThatWouldHaveBeenApplied(e,t){if(t.allActions.length&&(e.autoApply==="first"&&t.validActions.length===0||e.autoApply==="ifSingle"&&t.allActions.length===1))return t.allActions.find(({action:i})=>i.disabled)}tryGetValidActionToApply(e,t){if(t.validActions.length&&(e.autoApply==="first"&&t.validActions.length>0||e.autoApply==="ifSingle"&&t.validActions.length===1))return t.validActions[0]}async showCodeActionList(e,t,i){const n=this._editor.createDecorationsCollection(),s=this._editor.getDomNode();if(!s)return;const r=i.includeDisabledActions&&(this._showDisabled||e.validActions.length===0)?e.allActions:e.validActions;if(!r.length)return;const a=P.isIPosition(t)?this.toCoords(t):t,l={onSelect:async(c,d)=>{this._applyCodeAction(c,!0,!!d,i.fromLightbulb?Gd.FromAILightbulb:Gd.FromCodeActions),this._actionWidgetService.hide(!1),n.clear()},onHide:c=>{this._editor?.focus(),n.clear()},onHover:async(c,d)=>{if(d.isCancellationRequested)return;let h=!1;const u=c.action.kind;if(u){const f=new ji(u);h=[Di.RefactorExtract,Di.RefactorInline,Di.RefactorRewrite,Di.RefactorMove,Di.Source].some(p=>p.contains(f))}return{canPreview:h||!!c.action.edit?.edits.length}},onFocus:c=>{if(c&&c.action){const d=c.action.ranges,h=c.action.diagnostics;if(n.clear(),d&&d.length>0){const u=h&&h?.length>1?h.map(f=>({range:f,options:Ku.DECORATION})):d.map(f=>({range:f,options:Ku.DECORATION}));n.set(u)}else if(h&&h.length>0){const u=h.map(g=>({range:g,options:Ku.DECORATION}));n.set(u);const f=h[0];if(f.startLineNumber&&f.startColumn){const g=this._editor.getModel()?.getWordAtPosition({lineNumber:f.startLineNumber,column:f.startColumn})?.word;Hh(m("editingNewSelection","Context: {0} at line {1} and column {2}.",g,f.startLineNumber,f.startColumn))}}}else n.clear()}};this._actionWidgetService.show("codeActionWidget",!0,Fde(r,this._shouldShowHeaders(),this._resolver.getResolver()),l,a,s,this._getActionBarActions(e,t,i))}toCoords(e){if(!this._editor.hasModel())return{x:0,y:0};this._editor.revealPosition(e,1),this._editor.render();const t=this._editor.getScrolledVisiblePosition(e),i=gi(this._editor.getDomNode()),n=i.left+t.left,s=i.top+t.top+t.height;return{x:n,y:s}}_shouldShowHeaders(){const e=this._editor?.getModel();return this._configurationService.getValue("editor.codeActionWidget.showHeaders",{resource:e?.uri})}_getActionBarActions(e,t,i){if(i.fromLightbulb)return[];const n=e.documentation.map(s=>({id:s.id,label:s.title,tooltip:s.tooltip??"",class:void 0,enabled:!0,run:()=>this._commandService.executeCommand(s.id,...s.arguments??[])}));return i.includeDisabledActions&&e.validActions.length>0&&e.allActions.length!==e.validActions.length&&n.push(this._showDisabled?{id:"hideMoreActions",label:m("hideMoreActions","Hide Disabled"),enabled:!0,tooltip:"",class:void 0,run:()=>(this._showDisabled=!1,this.showCodeActionList(e,t,i))}:{id:"showMoreActions",label:m("showMoreActions","Show Disabled"),enabled:!0,tooltip:"",class:void 0,run:()=>(this._showDisabled=!0,this.showCodeActionList(e,t,i))}),n}},Ku=Ic,Ic.ID="editor.contrib.codeActionController",Ic.DECORATION=kt.register({description:"quickfix-highlight",className:Gde}),Ic);zE=Ku=qde([Rr(1,xa),Rr(2,De),Rr(3,ke),Rr(4,Se),Rr(5,G_),Rr(6,hi),Rr(7,lt),Rr(8,Cu),Rr(9,ke),Rr(10,$s)],zE);Sr((o,e)=>{((n,s)=>{s&&e.addRule(`.monaco-editor ${n} { background-color: ${s}; }`)})(".quickfix-edit-highlight",o.getColor(ll));const i=o.getColor(Ud);i&&e.addRule(`.monaco-editor .quickfix-edit-highlight { border: 1px ${mc(o.type)?"dotted":"solid"} ${i}; box-sizing: border-box; }`)});var BB=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},rw=function(o,e){return function(t,i){e(t,i,o)}};class Q4{constructor(e,t,i){this.marker=e,this.index=t,this.total=i}}let UE=class{constructor(e,t,i){this._markerService=t,this._configService=i,this._onDidChange=new A,this.onDidChange=this._onDidChange.event,this._dispoables=new X,this._markers=[],this._nextIdx=-1,ve.isUri(e)?this._resourceFilter=a=>a.toString()===e.toString():e&&(this._resourceFilter=e);const n=this._configService.getValue("problems.sortOrder"),s=(a,l)=>{let c=Kp(a.resource.toString(),l.resource.toString());return c===0&&(n==="position"?c=I.compareRangesUsingStarts(a,l)||Vt.compare(a.severity,l.severity):c=Vt.compare(a.severity,l.severity)||I.compareRangesUsingStarts(a,l)),c},r=()=>{this._markers=this._markerService.read({resource:ve.isUri(e)?e:void 0,severities:Vt.Error|Vt.Warning|Vt.Info}),typeof e=="function"&&(this._markers=this._markers.filter(a=>this._resourceFilter(a.resource))),this._markers.sort(s)};r(),this._dispoables.add(t.onMarkerChanged(a=>{(!this._resourceFilter||a.some(l=>this._resourceFilter(l)))&&(r(),this._nextIdx=-1,this._onDidChange.fire())}))}dispose(){this._dispoables.dispose(),this._onDidChange.dispose()}matches(e){return!this._resourceFilter&&!e?!0:!this._resourceFilter||!e?!1:this._resourceFilter(e)}get selected(){const e=this._markers[this._nextIdx];return e&&new Q4(e,this._nextIdx+1,this._markers.length)}_initIdx(e,t,i){let n=!1,s=this._markers.findIndex(r=>r.resource.toString()===e.uri.toString());s<0&&(s=SN(this._markers,{resource:e.uri},(r,a)=>Kp(r.resource.toString(),a.resource.toString())),s<0&&(s=~s));for(let r=s;rn.resource.toString()===e.toString());if(!(i<0)){for(;i=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Wu=function(o,e){return function(t,i){e(t,i,o)}},jE;class Yde{constructor(e,t,i,n,s){this._openerService=n,this._labelService=s,this._lines=0,this._longestLineLength=0,this._relatedDiagnostics=new WeakMap,this._disposables=new X,this._editor=t;const r=document.createElement("div");r.className="descriptioncontainer",this._messageBlock=document.createElement("div"),this._messageBlock.classList.add("message"),this._messageBlock.setAttribute("aria-live","assertive"),this._messageBlock.setAttribute("role","alert"),r.appendChild(this._messageBlock),this._relatedBlock=document.createElement("div"),r.appendChild(this._relatedBlock),this._disposables.add(jt(this._relatedBlock,"click",a=>{a.preventDefault();const l=this._relatedDiagnostics.get(a.target);l&&i(l)})),this._scrollable=new J3(r,{horizontal:1,vertical:1,useShadows:!1,horizontalScrollbarSize:6,verticalScrollbarSize:6}),e.appendChild(this._scrollable.getDomNode()),this._disposables.add(this._scrollable.onScroll(a=>{r.style.left=`-${a.scrollLeft}px`,r.style.top=`-${a.scrollTop}px`})),this._disposables.add(this._scrollable)}dispose(){xt(this._disposables)}update(e){const{source:t,message:i,relatedInformation:n,code:s}=e;let r=(t?.length||0)+2;s&&(typeof s=="string"?r+=s.length:r+=s.value.length);const a=va(i);this._lines=a.length,this._longestLineLength=0;for(const u of a)this._longestLineLength=Math.max(u.length+r,this._longestLineLength);xn(this._messageBlock),this._messageBlock.setAttribute("aria-label",this.getAriaLabel(e)),this._editor.applyFontInfo(this._messageBlock);let l=this._messageBlock;for(const u of a)l=document.createElement("div"),l.innerText=u,u===""&&(l.style.height=this._messageBlock.style.lineHeight),this._messageBlock.appendChild(l);if(t||s){const u=document.createElement("span");if(u.classList.add("details"),l.appendChild(u),t){const f=document.createElement("span");f.innerText=t,f.classList.add("source"),u.appendChild(f)}if(s)if(typeof s=="string"){const f=document.createElement("span");f.innerText=`(${s})`,f.classList.add("code"),u.appendChild(f)}else{this._codeLink=ce("a.code-link"),this._codeLink.setAttribute("href",`${s.target.toString()}`),this._codeLink.onclick=g=>{this._openerService.open(s.target,{allowCommands:!0}),g.preventDefault(),g.stopPropagation()};const f=Z(this._codeLink,ce("span"));f.innerText=s.value,u.appendChild(this._codeLink)}}if(xn(this._relatedBlock),this._editor.applyFontInfo(this._relatedBlock),Ps(n)){const u=this._relatedBlock.appendChild(document.createElement("div"));u.style.paddingTop=`${Math.floor(this._editor.getOption(67)*.66)}px`,this._lines+=1;for(const f of n){const g=document.createElement("div"),p=document.createElement("a");p.classList.add("filename"),p.innerText=`${this._labelService.getUriBasenameLabel(f.resource)}(${f.startLineNumber}, ${f.startColumn}): `,p.title=this._labelService.getUriLabel(f.resource),this._relatedDiagnostics.set(p,f);const _=document.createElement("span");_.innerText=f.message,g.appendChild(p),g.appendChild(_),this._lines+=1,u.appendChild(g)}}const c=this._editor.getOption(50),d=Math.ceil(c.typicalFullwidthCharacterWidth*this._longestLineLength*.75),h=c.lineHeight*this._lines;this._scrollable.setScrollDimensions({scrollWidth:d,scrollHeight:h})}layout(e,t){this._scrollable.getDomNode().style.height=`${e}px`,this._scrollable.getDomNode().style.width=`${t}px`,this._scrollable.setScrollDimensions({width:t,height:e})}getHeightInLines(){return Math.min(17,this._lines)}getAriaLabel(e){let t="";switch(e.severity){case Vt.Error:t=m("Error","Error");break;case Vt.Warning:t=m("Warning","Warning");break;case Vt.Info:t=m("Info","Info");break;case Vt.Hint:t=m("Hint","Hint");break}let i=m("marker aria","{0} at {1}. ",t,e.startLineNumber+":"+e.startColumn);const n=this._editor.getModel();return n&&e.startLineNumber<=n.getLineCount()&&e.startLineNumber>=1&&(i=`${n.getLineContent(e.startLineNumber)}, ${i}`),i}}var yh;let O_=(yh=class extends Qv{constructor(e,t,i,n,s,r,a){super(e,{showArrow:!0,showFrame:!0,isAccessible:!0,frameWidth:1},s),this._themeService=t,this._openerService=i,this._menuService=n,this._contextKeyService=r,this._labelService=a,this._callOnDispose=new X,this._onDidSelectRelatedInformation=new A,this.onDidSelectRelatedInformation=this._onDidSelectRelatedInformation.event,this._severity=Vt.Warning,this._backgroundColor=q.white,this._applyTheme(t.getColorTheme()),this._callOnDispose.add(t.onDidColorThemeChange(this._applyTheme.bind(this))),this.create()}_applyTheme(e){this._backgroundColor=e.getColor(ehe);let t=qE,i=Qde;this._severity===Vt.Warning?(t=J1,i=Xde):this._severity===Vt.Info&&(t=GE,i=Jde);const n=e.getColor(t),s=e.getColor(i);this.style({arrowColor:n,frameColor:n,headerBackgroundColor:s,primaryHeadingColor:e.getColor(iB),secondaryHeadingColor:e.getColor(nB)})}_applyStyles(){this._parentContainer&&(this._parentContainer.style.backgroundColor=this._backgroundColor?this._backgroundColor.toString():""),super._applyStyles()}dispose(){this._callOnDispose.dispose(),super.dispose()}_fillHead(e){super._fillHead(e),this._disposables.add(this._actionbarWidget.actionRunner.onWillRun(n=>this.editor.focus()));const t=[],i=this._menuService.getMenuActions(jE.TitleMenu,this._contextKeyService);XT(i,t),this._actionbarWidget.push(t,{label:!1,icon:!0,index:0})}_fillTitleIcon(e){this._icon=Z(e,ce(""))}_fillBody(e){this._parentContainer=e,e.classList.add("marker-widget"),this._parentContainer.tabIndex=0,this._parentContainer.setAttribute("role","tooltip"),this._container=document.createElement("div"),e.appendChild(this._container),this._message=new Yde(this._container,this.editor,t=>this._onDidSelectRelatedInformation.fire(t),this._openerService,this._labelService),this._disposables.add(this._message)}show(){throw new Error("call showAtMarker")}showAtMarker(e,t,i){this._container.classList.remove("stale"),this._message.update(e),this._severity=e.severity,this._applyTheme(this._themeService.getColorTheme());const n=I.lift(e),s=this.editor.getPosition(),r=s&&n.containsPosition(s)?s:n.getStartPosition();super.show(r,this.computeRequiredHeight());const a=this.editor.getModel();if(a){const l=i>1?m("problems","{0} of {1} problems",t,i):m("change","{0} of {1} problem",t,i);this.setTitle(Fo(a.uri),l)}this._icon.className=`codicon ${KE.className(Vt.toSeverity(this._severity))}`,this.editor.revealPositionNearTop(r,0),this.editor.focus()}updateMarker(e){this._container.classList.remove("stale"),this._message.update(e)}showStale(){this._container.classList.add("stale"),this._relayout()}_doLayoutBody(e,t){super._doLayoutBody(e,t),this._heightInPixel=e,this._message.layout(e,t),this._container.style.height=`${e}px`}_onWidth(e){this._message.layout(this._heightInPixel,e)}_relayout(){super._relayout(this.computeRequiredHeight())}computeRequiredHeight(){return 3+this._message.getHeightInLines()}},jE=yh,yh.TitleMenu=new $e("gotoErrorTitleMenu"),yh);O_=jE=Zde([Wu(1,en),Wu(2,Vo),Wu(3,yr),Wu(4,ke),Wu(5,De),Wu(6,Cg)],O_);const X4=t_(Y0,SK),J4=t_(Il,i_),e5=t_(ma,n_),qE=D("editorMarkerNavigationError.background",{dark:X4,light:X4,hcDark:Ye,hcLight:Ye},m("editorMarkerNavigationError","Editor marker navigation widget error color.")),Qde=D("editorMarkerNavigationError.headerBackground",{dark:Ae(qE,.1),light:Ae(qE,.1),hcDark:null,hcLight:null},m("editorMarkerNavigationErrorHeaderBackground","Editor marker navigation widget error heading background.")),J1=D("editorMarkerNavigationWarning.background",{dark:J4,light:J4,hcDark:Ye,hcLight:Ye},m("editorMarkerNavigationWarning","Editor marker navigation widget warning color.")),Xde=D("editorMarkerNavigationWarning.headerBackground",{dark:Ae(J1,.1),light:Ae(J1,.1),hcDark:"#0C141F",hcLight:Ae(J1,.2)},m("editorMarkerNavigationWarningBackground","Editor marker navigation widget warning heading background.")),GE=D("editorMarkerNavigationInfo.background",{dark:e5,light:e5,hcDark:Ye,hcLight:Ye},m("editorMarkerNavigationInfo","Editor marker navigation widget info color.")),Jde=D("editorMarkerNavigationInfo.headerBackground",{dark:Ae(GE,.1),light:Ae(GE,.1),hcDark:null,hcLight:null},m("editorMarkerNavigationInfoHeaderBackground","Editor marker navigation widget info heading background.")),ehe=D("editorMarkerNavigation.background",Oo,m("editorMarkerNavigationBackground","Editor marker navigation widget background."));var the=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},u1=function(o,e){return function(t,i){e(t,i,o)}},Vm,Sh;let Qh=(Sh=class{static get(e){return e.getContribution(Vm.ID)}constructor(e,t,i,n,s){this._markerNavigationService=t,this._contextKeyService=i,this._editorService=n,this._instantiationService=s,this._sessionDispoables=new X,this._editor=e,this._widgetVisible=HB.bindTo(this._contextKeyService)}dispose(){this._cleanUp(),this._sessionDispoables.dispose()}_cleanUp(){this._widgetVisible.reset(),this._sessionDispoables.clear(),this._widget=void 0,this._model=void 0}_getOrCreateModel(e){if(this._model&&this._model.matches(e))return this._model;let t=!1;return this._model&&(t=!0,this._cleanUp()),this._model=this._markerNavigationService.getMarkerList(e),t&&this._model.move(!0,this._editor.getModel(),this._editor.getPosition()),this._widget=this._instantiationService.createInstance(O_,this._editor),this._widget.onDidClose(()=>this.close(),this,this._sessionDispoables),this._widgetVisible.set(!0),this._sessionDispoables.add(this._model),this._sessionDispoables.add(this._widget),this._sessionDispoables.add(this._editor.onDidChangeCursorPosition(i=>{(!this._model?.selected||!I.containsPosition(this._model?.selected.marker,i.position))&&this._model?.resetIndex()})),this._sessionDispoables.add(this._model.onDidChange(()=>{if(!this._widget||!this._widget.position||!this._model)return;const i=this._model.find(this._editor.getModel().uri,this._widget.position);i?this._widget.updateMarker(i.marker):this._widget.showStale()})),this._sessionDispoables.add(this._widget.onDidSelectRelatedInformation(i=>{this._editorService.openCodeEditor({resource:i.resource,options:{pinned:!0,revealIfOpened:!0,selection:I.lift(i).collapseToStart()}},this._editor),this.close(!1)})),this._sessionDispoables.add(this._editor.onDidChangeModel(()=>this._cleanUp())),this._model}close(e=!0){this._cleanUp(),e&&this._editor.focus()}showAtMarker(e){if(this._editor.hasModel()){const t=this._getOrCreateModel(this._editor.getModel().uri);t.resetIndex(),t.move(!0,this._editor.getModel(),new P(e.startLineNumber,e.startColumn)),t.selected&&this._widget.showAtMarker(t.selected.marker,t.selected.index,t.selected.total)}}async nagivate(e,t){if(this._editor.hasModel()){const i=this._getOrCreateModel(t?void 0:this._editor.getModel().uri);if(i.move(e,this._editor.getModel(),this._editor.getPosition()),!i.selected)return;if(i.selected.marker.resource.toString()!==this._editor.getModel().uri.toString()){this._cleanUp();const n=await this._editorService.openCodeEditor({resource:i.selected.marker.resource,options:{pinned:!1,revealIfOpened:!0,selectionRevealType:2,selection:i.selected.marker}},this._editor);n&&(Vm.get(n)?.close(),Vm.get(n)?.nagivate(e,t))}else this._widget.showAtMarker(i.selected.marker,i.selected.index,i.selected.total)}}},Vm=Sh,Sh.ID="editor.contrib.markerController",Sh);Qh=Vm=the([u1(1,WB),u1(2,De),u1(3,Pt),u1(4,ke)],Qh);class Fy extends bi{constructor(e,t,i){super(i),this._next=e,this._multiFile=t}async run(e,t){t.hasModel()&&Qh.get(t)?.nagivate(this._next,this._multiFile)}}const Bd=class Bd extends Fy{constructor(){super(!0,!1,{id:Bd.ID,label:Bd.LABEL,alias:"Go to Next Problem (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:578,weight:100},menuOpts:{menuId:O_.TitleMenu,title:Bd.LABEL,icon:Wi("marker-navigation-next",ie.arrowDown,m("nextMarkerIcon","Icon for goto next marker.")),group:"navigation",order:1}})}};Bd.ID="editor.action.marker.next",Bd.LABEL=m("markerAction.next.label","Go to Next Problem (Error, Warning, Info)");let aw=Bd;const Wd=class Wd extends Fy{constructor(){super(!1,!1,{id:Wd.ID,label:Wd.LABEL,alias:"Go to Previous Problem (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:1602,weight:100},menuOpts:{menuId:O_.TitleMenu,title:Wd.LABEL,icon:Wi("marker-navigation-previous",ie.arrowUp,m("previousMarkerIcon","Icon for goto previous marker.")),group:"navigation",order:2}})}};Wd.ID="editor.action.marker.prev",Wd.LABEL=m("markerAction.previous.label","Go to Previous Problem (Error, Warning, Info)");let ZE=Wd;class ihe extends Fy{constructor(){super(!0,!0,{id:"editor.action.marker.nextInFiles",label:m("markerAction.nextInFiles.label","Go to Next Problem in Files (Error, Warning, Info)"),alias:"Go to Next Problem in Files (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:66,weight:100},menuOpts:{menuId:$e.MenubarGoMenu,title:m({key:"miGotoNextProblem",comment:["&& denotes a mnemonic"]},"Next &&Problem"),group:"6_problem_nav",order:1}})}}class nhe extends Fy{constructor(){super(!1,!0,{id:"editor.action.marker.prevInFiles",label:m("markerAction.previousInFiles.label","Go to Previous Problem in Files (Error, Warning, Info)"),alias:"Go to Previous Problem in Files (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:K.focus,primary:1090,weight:100},menuOpts:{menuId:$e.MenubarGoMenu,title:m({key:"miGotoPreviousProblem",comment:["&& denotes a mnemonic"]},"Previous &&Problem"),group:"6_problem_nav",order:2}})}}Ho(Qh.ID,Qh,4);mi(aw);mi(ZE);mi(ihe);mi(nhe);const HB=new le("markersNavigationVisible",!1),she=co.bindToContribution(Qh.get);ge(new she({id:"closeMarkersNavigation",precondition:HB,handler:o=>o.close(),kbOpts:{weight:150,kbExpr:K.focus,primary:9,secondary:[1033]}}));var ohe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},_L=function(o,e){return function(t,i){e(t,i,o)}};const bo=ce;class rhe{constructor(e,t,i){this.owner=e,this.range=t,this.marker=i}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}const t5={type:1,filter:{include:Di.QuickFix},triggerAction:Uc.QuickFixHover};let YE=class{constructor(e,t,i,n){this._editor=e,this._markerDecorationsService=t,this._openerService=i,this._languageFeaturesService=n,this.hoverOrdinal=1,this.recentMarkerCodeActionsInfo=void 0}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1&&!e.supportsMarkerHover)return[];const i=this._editor.getModel(),n=e.range.startLineNumber,s=i.getLineMaxColumn(n),r=[];for(const a of t){const l=a.range.startLineNumber===n?a.range.startColumn:1,c=a.range.endLineNumber===n?a.range.endColumn:s,d=this._markerDecorationsService.getMarker(i.uri,a);if(!d)continue;const h=new I(e.range.startLineNumber,l,e.range.startLineNumber,c);r.push(new rhe(this,h,d))}return r}renderHoverParts(e,t){if(!t.length)return new Ng([]);const i=new X,n=[];t.forEach(r=>{const a=this._renderMarkerHover(r);e.fragment.appendChild(a.hoverElement),n.push(a)});const s=t.length===1?t[0]:t.sort((r,a)=>Vt.compare(r.marker.severity,a.marker.severity))[0];return this.renderMarkerStatusbar(e,s,i),new Ng(n)}_renderMarkerHover(e){const t=new X,i=bo("div.hover-row"),n=Z(i,bo("div.marker.hover-contents")),{source:s,message:r,code:a,relatedInformation:l}=e.marker;this._editor.applyFontInfo(n);const c=Z(n,bo("span"));if(c.style.whiteSpace="pre-wrap",c.innerText=r,s||a)if(a&&typeof a!="string"){const h=bo("span");if(s){const p=Z(h,bo("span"));p.innerText=s}const u=Z(h,bo("a.code-link"));u.setAttribute("href",a.target.toString()),t.add(U(u,"click",p=>{this._openerService.open(a.target,{allowCommands:!0}),p.preventDefault(),p.stopPropagation()}));const f=Z(u,bo("span"));f.innerText=a.value;const g=Z(n,h);g.style.opacity="0.6",g.style.paddingLeft="6px"}else{const h=Z(n,bo("span"));h.style.opacity="0.6",h.style.paddingLeft="6px",h.innerText=s&&a?`${s}(${a})`:s||`(${a})`}if(Ps(l))for(const{message:h,resource:u,startLineNumber:f,startColumn:g}of l){const p=Z(n,bo("div"));p.style.marginTop="8px";const _=Z(p,bo("a"));_.innerText=`${Fo(u)}(${f}, ${g}): `,_.style.cursor="pointer",t.add(U(_,"click",C=>{if(C.stopPropagation(),C.preventDefault(),this._openerService){const w={selection:{startLineNumber:f,startColumn:g}};this._openerService.open(u,{fromUserGesture:!0,editorOptions:w}).catch(Ze)}}));const b=Z(p,bo("span"));b.innerText=h,this._editor.applyFontInfo(b)}return{hoverPart:e,hoverElement:i,dispose:()=>t.dispose()}}renderMarkerStatusbar(e,t,i){if(t.marker.severity===Vt.Error||t.marker.severity===Vt.Warning||t.marker.severity===Vt.Info){const n=Qh.get(this._editor);n&&e.statusBar.addAction({label:m("view problem","View Problem"),commandId:aw.ID,run:()=>{e.hide(),n.showAtMarker(t.marker),this._editor.focus()}})}if(!this._editor.getOption(92)){const n=e.statusBar.append(bo("div"));this.recentMarkerCodeActionsInfo&&(QC.makeKey(this.recentMarkerCodeActionsInfo.marker)===QC.makeKey(t.marker)?this.recentMarkerCodeActionsInfo.hasCodeActions||(n.textContent=m("noQuickFixes","No quick fixes available")):this.recentMarkerCodeActionsInfo=void 0);const s=this.recentMarkerCodeActionsInfo&&!this.recentMarkerCodeActionsInfo.hasCodeActions?z.None:rg(()=>n.textContent=m("checkingForQuickFixes","Checking for quick fixes..."),200,i);n.textContent||(n.textContent=" ");const r=this.getCodeActions(t.marker);i.add(_e(()=>r.cancel())),r.then(a=>{if(s.dispose(),this.recentMarkerCodeActionsInfo={marker:t.marker,hasCodeActions:a.validActions.length>0},!this.recentMarkerCodeActionsInfo.hasCodeActions){a.dispose(),n.textContent=m("noQuickFixes","No quick fixes available");return}n.style.display="none";let l=!1;i.add(_e(()=>{l||a.dispose()})),e.statusBar.addAction({label:m("quick fixes","Quick Fix..."),commandId:TB,run:c=>{l=!0;const d=zE.get(this._editor),h=gi(c);e.hide(),d?.showCodeActions(t5,a,{x:h.left,y:h.top,width:h.width,height:h.height})}})},Ze)}}getCodeActions(e){return wa(t=>mf(this._languageFeaturesService.codeActionProvider,this._editor.getModel(),new I(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),t5,rc.None,t))}};YE=ohe([_L(1,n2),_L(2,Vo),_L(3,Se)],YE);class ahe{get lineNumber(){return this._lineNumber}set lineNumber(e){this._lineNumber=e}get lane(){return this._laneOrLine}set lane(e){this._laneOrLine=e}constructor(e){this._editor=e,this._lineNumber=-1,this._laneOrLine=Ao.Center}computeSync(){const e=s=>({value:s}),t=this._editor.getLineDecorations(this._lineNumber),i=[],n=this._laneOrLine==="lineNo";if(!t)return i;for(const s of t){const r=s.options.glyphMargin?.position??Ao.Center;if(!n&&r!==this._laneOrLine)continue;const a=n?s.options.lineNumberHoverMessage:s.options.glyphMarginHoverMessage;!a||bg(a)||i.push(...T5(a).map(e))}return i}}var lhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},i5=function(o,e){return function(t,i){e(t,i,o)}},QE;const n5=ce;var Lh;let XE=(Lh=class extends z{constructor(e,t,i){super(),this._renderDisposeables=this._register(new X),this._editor=e,this._isVisible=!1,this._messages=[],this._hover=this._register(new RT),this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible),this._markdownRenderer=this._register(new Wh({editor:this._editor},t,i)),this._computer=new ahe(this._editor),this._hoverOperation=this._register(new fB(this._editor,this._computer)),this._register(this._hoverOperation.onResult(n=>{this._withResult(n.value)})),this._register(this._editor.onDidChangeModelDecorations(()=>this._onModelDecorationsChanged())),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(50)&&this._updateFont()})),this._register(jt(this._hover.containerDomNode,"mouseleave",n=>{this._onMouseLeave(n)})),this._editor.addOverlayWidget(this)}dispose(){this._editor.removeOverlayWidget(this),super.dispose()}getId(){return QE.ID}getDomNode(){return this._hover.containerDomNode}getPosition(){return null}_updateFont(){Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName("code")).forEach(t=>this._editor.applyFontInfo(t))}_onModelDecorationsChanged(){this._isVisible&&(this._hoverOperation.cancel(),this._hoverOperation.start(0))}showsOrWillShow(e){const t=e.target;return t.type===2&&t.detail.glyphMarginLane?(this._startShowingAt(t.position.lineNumber,t.detail.glyphMarginLane),!0):t.type===3?(this._startShowingAt(t.position.lineNumber,"lineNo"),!0):!1}_startShowingAt(e,t){this._computer.lineNumber===e&&this._computer.lane===t||(this._hoverOperation.cancel(),this.hide(),this._computer.lineNumber=e,this._computer.lane=t,this._hoverOperation.start(0))}hide(){this._computer.lineNumber=-1,this._hoverOperation.cancel(),this._isVisible&&(this._isVisible=!1,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible))}_withResult(e){this._messages=e,this._messages.length>0?this._renderMessages(this._computer.lineNumber,this._messages):this.hide()}_renderMessages(e,t){this._renderDisposeables.clear();const i=document.createDocumentFragment();for(const n of t){const s=n5("div.hover-row.markdown-hover"),r=Z(s,n5("div.hover-contents")),a=this._renderDisposeables.add(this._markdownRenderer.render(n.value));r.appendChild(a.element),i.appendChild(s)}this._updateContents(i),this._showAt(e)}_updateContents(e){this._hover.contentsDomNode.textContent="",this._hover.contentsDomNode.appendChild(e),this._updateFont()}_showAt(e){this._isVisible||(this._isVisible=!0,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible));const t=this._editor.getLayoutInfo(),i=this._editor.getTopForLineNumber(e),n=this._editor.getScrollTop(),s=this._editor.getOption(67),r=this._hover.containerDomNode.clientHeight,a=i-n-(r-s)/2,l=t.glyphMarginLeft+t.glyphMarginWidth+(this._computer.lane==="lineNo"?t.lineNumbersWidth:0);this._hover.containerDomNode.style.left=`${l}px`,this._hover.containerDomNode.style.top=`${Math.max(Math.round(a),0)}px`}_onMouseLeave(e){const t=this._editor.getDomNode();(!t||!Py(t,e.x,e.y))&&this.hide()}},QE=Lh,Lh.ID="editor.contrib.modesGlyphHoverWidget",Lh);XE=QE=lhe([i5(1,qt),i5(2,Vo)],XE);var che=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},dhe=function(o,e){return function(t,i){e(t,i,o)}},tg;let lw=(tg=class extends z{constructor(e,t){super(),this._editor=e,this._instantiationService=t,this.shouldKeepOpenOnEditorMouseMoveOrLeave=!1,this._listenersStore=new X,this._hoverState={mouseDown:!1},this._reactToEditorMouseMoveRunner=this._register(new ci(()=>this._reactToEditorMouseMove(this._mouseMoveEvent),0)),this._hookListeners(),this._register(this._editor.onDidChangeConfiguration(i=>{i.hasChanged(60)&&(this._unhookListeners(),this._hookListeners())}))}_hookListeners(){const e=this._editor.getOption(60);this._hoverSettings={enabled:e.enabled,sticky:e.sticky,hidingDelay:e.hidingDelay},e.enabled?(this._listenersStore.add(this._editor.onMouseDown(t=>this._onEditorMouseDown(t))),this._listenersStore.add(this._editor.onMouseUp(()=>this._onEditorMouseUp())),this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))):(this._listenersStore.add(this._editor.onMouseMove(t=>this._onEditorMouseMove(t))),this._listenersStore.add(this._editor.onKeyDown(t=>this._onKeyDown(t)))),this._listenersStore.add(this._editor.onMouseLeave(t=>this._onEditorMouseLeave(t))),this._listenersStore.add(this._editor.onDidChangeModel(()=>{this._cancelScheduler(),this._hideWidgets()})),this._listenersStore.add(this._editor.onDidChangeModelContent(()=>this._cancelScheduler())),this._listenersStore.add(this._editor.onDidScrollChange(t=>this._onEditorScrollChanged(t)))}_unhookListeners(){this._listenersStore.clear()}_cancelScheduler(){this._mouseMoveEvent=void 0,this._reactToEditorMouseMoveRunner.cancel()}_onEditorScrollChanged(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()}_onEditorMouseDown(e){this._hoverState.mouseDown=!0,!this._isMouseOnMarginHoverWidget(e)&&this._hideWidgets()}_isMouseOnMarginHoverWidget(e){const t=this._glyphWidget?.getDomNode();return t?Py(t,e.event.posx,e.event.posy):!1}_onEditorMouseUp(){this._hoverState.mouseDown=!1}_onEditorMouseLeave(e){this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._cancelScheduler(),this._isMouseOnMarginHoverWidget(e))||this._hideWidgets()}_shouldNotRecomputeCurrentHoverWidget(e){const t=this._hoverSettings.sticky,i=this._isMouseOnMarginHoverWidget(e);return t&&i}_onEditorMouseMove(e){if(this.shouldKeepOpenOnEditorMouseMoveOrLeave)return;if(this._mouseMoveEvent=e,this._shouldNotRecomputeCurrentHoverWidget(e)){this._reactToEditorMouseMoveRunner.cancel();return}this._reactToEditorMouseMove(e)}_reactToEditorMouseMove(e){!e||this._tryShowHoverWidget(e)||this._hideWidgets()}_tryShowHoverWidget(e){return this._getOrCreateGlyphWidget().showsOrWillShow(e)}_onKeyDown(e){this._editor.hasModel()&&(e.keyCode===5||e.keyCode===6||e.keyCode===57||e.keyCode===4||this._hideWidgets())}_hideWidgets(){this._glyphWidget?.hide()}_getOrCreateGlyphWidget(){return this._glyphWidget||(this._glyphWidget=this._instantiationService.createInstance(XE,this._editor)),this._glyphWidget}dispose(){super.dispose(),this._unhookListeners(),this._listenersStore.dispose(),this._glyphWidget?.dispose()}},tg.ID="editor.contrib.marginHover",tg);lw=che([dhe(1,ke)],lw);const By=new class{constructor(){this._implementations=[]}register(e){return this._implementations.push(e),{dispose:()=>{const t=this._implementations.indexOf(e);t!==-1&&this._implementations.splice(t,1)}}}getImplementations(){return this._implementations}};class hhe{}class uhe{}class fhe{}Ho(Tn.ID,Tn,2);Ho(lw.ID,lw,2);mi(dde);mi(hde);mi(ude);mi(fde);mi(gde);mi(mde);mi(pde);mi(_de);mi(bde);mi(Cde);mi(vde);mi(wde);Oy.register(P_);Oy.register(YE);Sr((o,e)=>{const t=o.getColor(z3);t&&(e.addRule(`.monaco-editor .monaco-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${t.transparent(.5)}; }`),e.addRule(`.monaco-editor .monaco-hover hr { border-top: 1px solid ${t.transparent(.5)}; }`),e.addRule(`.monaco-editor .monaco-hover hr { border-bottom: 0px solid ${t.transparent(.5)}; }`))});By.register(new hhe);By.register(new uhe);By.register(new fhe);const zr=class zr extends z{constructor(e,t){super(),this.contextKeyService=e,this.model=t,this.inlineCompletionVisible=zr.inlineSuggestionVisible.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentation=zr.inlineSuggestionHasIndentation.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentationLessThanTabSize=zr.inlineSuggestionHasIndentationLessThanTabSize.bindTo(this.contextKeyService),this.suppressSuggestions=zr.suppressSuggestions.bindTo(this.contextKeyService),this._register(We(i=>{const s=this.model.read(i)?.state.read(i),r=!!s?.inlineCompletion&&s?.primaryGhostText!==void 0&&!s?.primaryGhostText.isEmpty();this.inlineCompletionVisible.set(r),s?.primaryGhostText&&s?.inlineCompletion&&this.suppressSuggestions.set(s.inlineCompletion.inlineCompletion.source.inlineCompletions.suppressSuggestions)})),this._register(We(i=>{const n=this.model.read(i);let s=!1,r=!0;const a=n?.primaryGhostText.read(i);if(n?.selectedSuggestItem&&a&&a.parts.length>0){const{column:l,lines:c}=a.parts[0],d=c[0],h=n.textModel.getLineIndentColumn(a.lineNumber);if(l<=h){let f=zn(d);f===-1&&(f=d.length-1),s=f>0;const g=n.textModel.getOptions().tabSize;r=_i.visibleColumnFromColumn(d,f+1,g){t.setStyle(o.read(i))})),e}class cw{constructor(e,t){this.lineNumber=e,this.parts=t}equals(e){return this.lineNumber===e.lineNumber&&this.parts.length===e.parts.length&&this.parts.every((t,i)=>t.equals(e.parts[i]))}renderForScreenReader(e){if(this.parts.length===0)return"";const t=this.parts[this.parts.length-1],i=e.substr(0,t.column-1);return new gT([...this.parts.map(s=>new fa(I.fromPositions(new P(1,s.column)),s.lines.join(` -`)))]).applyToString(i).substring(this.parts[0].column-1)}isEmpty(){return this.parts.every(e=>e.lines.length===0)}get lineCount(){return 1+this.parts.reduce((e,t)=>e+t.lines.length-1,0)}}class JE{constructor(e,t,i){this.column=e,this.text=t,this.preview=i,this.lines=va(this.text)}equals(e){return this.column===e.column&&this.lines.length===e.lines.length&&this.lines.every((t,i)=>t===e.lines[i])}}class eN{constructor(e,t,i,n=0){this.lineNumber=e,this.columnRange=t,this.text=i,this.additionalReservedLineCount=n,this.parts=[new JE(this.columnRange.endColumnExclusive,this.text,!1)],this.newLines=va(this.text)}renderForScreenReader(e){return this.newLines.join(` -`)}get lineCount(){return this.newLines.length}isEmpty(){return this.parts.every(e=>e.lines.length===0)}equals(e){return this.lineNumber===e.lineNumber&&this.columnRange.equals(e.columnRange)&&this.newLines.length===e.newLines.length&&this.newLines.every((t,i)=>t===e.newLines[i])&&this.additionalReservedLineCount===e.additionalReservedLineCount}}function s5(o,e){return li(o,e,VB)}function VB(o,e){return o===e?!0:!o||!e?!1:o instanceof cw&&e instanceof cw||o instanceof eN&&e instanceof eN?o.equals(e):!1}const mhe=[];function phe(){return mhe}class _he{constructor(e,t){if(this.startColumn=e,this.endColumnExclusive=t,e>t)throw new nt(`startColumn ${e} cannot be after endColumnExclusive ${t}`)}toRange(e){return new I(e,this.startColumn,e,this.endColumnExclusive)}equals(e){return this.startColumn===e.startColumn&&this.endColumnExclusive===e.endColumnExclusive}}function bhe(o,e){const t=new X,i=o.createDecorationsCollection();return t.add(Z_({debugName:()=>`Apply decorations from ${e.debugName}`},n=>{const s=e.read(n);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}function Che(o,e){return new P(o.lineNumber+e.lineNumber-1,e.lineNumber===1?o.column+e.column-1:e.column)}function o5(o,e){return new P(o.lineNumber-e.lineNumber+1,o.lineNumber-e.lineNumber===0?o.column-e.column+1:o.column)}var vhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},whe=function(o,e){return function(t,i){e(t,i,o)}};const r5="ghost-text";let tN=class extends z{constructor(e,t,i){super(),this.editor=e,this.model=t,this.languageService=i,this.isDisposed=Ge(this,!1),this.currentTextModel=gt(this,this.editor.onDidChangeModel,()=>this.editor.getModel()),this.uiState=Ce(this,n=>{if(this.isDisposed.read(n))return;const s=this.currentTextModel.read(n);if(s!==this.model.targetTextModel.read(n))return;const r=this.model.ghostText.read(n);if(!r)return;const a=r instanceof eN?r.columnRange:void 0,l=[],c=[];function d(p,_){if(c.length>0){const b=c[c.length-1];_&&b.decorations.push(new As(b.content.length+1,b.content.length+1+p[0].length,_,0)),b.content+=p[0],p=p.slice(1)}for(const b of p)c.push({content:b,decorations:_?[new As(1,b.length+1,_,0)]:[]})}const h=s.getLineContent(r.lineNumber);let u,f=0;for(const p of r.parts){let _=p.lines;u===void 0?(l.push({column:p.column,text:_[0],preview:p.preview}),_=_.slice(1)):d([h.substring(f,p.column-1)],void 0),_.length>0&&(d(_,r5),u===void 0&&p.column<=h.length&&(u=p.column)),f=p.column-1}u!==void 0&&d([h.substring(f)],void 0);const g=u!==void 0?new _he(u,h.length+1):void 0;return{replacedRange:a,inlineTexts:l,additionalLines:c,hiddenRange:g,lineNumber:r.lineNumber,additionalReservedLineCount:this.model.minReservedLineCount.read(n),targetTextModel:s}}),this.decorations=Ce(this,n=>{const s=this.uiState.read(n);if(!s)return[];const r=[];s.replacedRange&&r.push({range:s.replacedRange.toRange(s.lineNumber),options:{inlineClassName:"inline-completion-text-to-replace",description:"GhostTextReplacement"}}),s.hiddenRange&&r.push({range:s.hiddenRange.toRange(s.lineNumber),options:{inlineClassName:"ghost-text-hidden",description:"ghost-text-hidden"}});for(const a of s.inlineTexts)r.push({range:I.fromPositions(new P(s.lineNumber,a.column)),options:{description:r5,after:{content:a.text,inlineClassName:a.preview?"ghost-text-decoration-preview":"ghost-text-decoration",cursorStops:gr.Left},showIfCollapsed:!0}});return r}),this.additionalLinesWidget=this._register(new yhe(this.editor,this.languageService.languageIdCodec,Ce(n=>{const s=this.uiState.read(n);return s?{lineNumber:s.lineNumber,additionalLines:s.additionalLines,minReservedLineCount:s.additionalReservedLineCount,targetTextModel:s.targetTextModel}:void 0}))),this._register(_e(()=>{this.isDisposed.set(!0,void 0)})),this._register(bhe(this.editor,this.decorations))}ownsViewZone(e){return this.additionalLinesWidget.viewZoneId===e}};tN=vhe([whe(2,qt)],tN);class yhe extends z{get viewZoneId(){return this._viewZoneId}constructor(e,t,i){super(),this.editor=e,this.languageIdCodec=t,this.lines=i,this._viewZoneId=void 0,this.editorOptionsChanged=ks("editorOptionChanged",J.filter(this.editor.onDidChangeConfiguration,n=>n.hasChanged(33)||n.hasChanged(118)||n.hasChanged(100)||n.hasChanged(95)||n.hasChanged(51)||n.hasChanged(50)||n.hasChanged(67))),this._register(We(n=>{const s=this.lines.read(n);this.editorOptionsChanged.read(n),s?this.updateLines(s.lineNumber,s.additionalLines,s.minReservedLineCount):this.clear()}))}dispose(){super.dispose(),this.clear()}clear(){this.editor.changeViewZones(e=>{this._viewZoneId&&(e.removeZone(this._viewZoneId),this._viewZoneId=void 0)})}updateLines(e,t,i){const n=this.editor.getModel();if(!n)return;const{tabSize:s}=n.getOptions();this.editor.changeViewZones(r=>{this._viewZoneId&&(r.removeZone(this._viewZoneId),this._viewZoneId=void 0);const a=Math.max(t.length,i);if(a>0){const l=document.createElement("div");She(l,s,t,this.editor.getOptions(),this.languageIdCodec),this._viewZoneId=r.addZone({afterLineNumber:e,heightInLines:a,domNode:l,afterColumnAffinity:1})}})}}function She(o,e,t,i,n){const s=i.get(33),r=i.get(118),a="none",l=i.get(95),c=i.get(51),d=i.get(50),h=i.get(67),u=new K_(1e4);u.appendString('
    ');for(let p=0,_=t.length;p<_;p++){const b=t[p],C=b.content;u.appendString('
    ');const w=D0(C),v=sg(C),y=Ni.createEmpty(C,n);Sy(new gu(d.isMonospace&&!s,d.canUseHalfwidthRightwardsArrow,C,!1,w,v,0,y,b.decorations,e,0,d.spaceWidth,d.middotWidth,d.wsmiddotWidth,r,a,l,c!==Mc.OFF,null),u),u.appendString("
    ")}u.appendString("
    "),qi(o,d);const f=u.build(),g=a5?a5.createHTML(f):f;o.innerHTML=g}const a5=Kc("editorGhostText",{createHTML:o=>o});function Lhe(o,e){const t=new J7,i=new t9(t,c=>e.getLanguageConfiguration(c)),n=new e9(new xhe([o]),i),s=vD(n,[],void 0,!0);let r="";const a=o.getLineContent();function l(c,d){if(c.kind===2)if(l(c.openingBracket,d),d=zt(d,c.openingBracket.length),c.child&&(l(c.child,d),d=zt(d,c.child.length)),c.closingBracket)l(c.closingBracket,d),d=zt(d,c.closingBracket.length);else{const u=i.getSingleLanguageBracketTokens(c.openingBracket.languageId).findClosingTokenText(c.openingBracket.bracketIds);r+=u}else if(c.kind!==3){if(c.kind===0||c.kind===1)r+=a.substring(d,zt(d,c.length));else if(c.kind===4)for(const h of c.children)l(h,d),d=zt(d,h.length)}}return l(s,Ln),r}class xhe{constructor(e){this.lines=e,this.tokenization={getLineTokens:t=>this.lines[t-1]}}getLineCount(){return this.lines.length}getLineLength(e){return this.lines[e-1].getLineContent().length}}const yo=class yo{constructor(){this.value="",this.pos=0}static isDigitCharacter(e){return e>=48&&e<=57}static isVariableCharacter(e){return e===95||e>=97&&e<=122||e>=65&&e<=90}text(e){this.value=e,this.pos=0}tokenText(e){return this.value.substr(e.pos,e.len)}next(){if(this.pos>=this.value.length)return{type:14,pos:this.pos,len:0};const e=this.pos;let t=0,i=this.value.charCodeAt(e),n;if(n=yo._table[i],typeof n=="number")return this.pos+=1,{type:n,pos:e,len:1};if(yo.isDigitCharacter(i)){n=8;do t+=1,i=this.value.charCodeAt(e+t);while(yo.isDigitCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}if(yo.isVariableCharacter(i)){n=9;do i=this.value.charCodeAt(e+ ++t);while(yo.isVariableCharacter(i)||yo.isDigitCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}n=10;do t+=1,i=this.value.charCodeAt(e+t);while(!isNaN(i)&&typeof yo._table[i]>"u"&&!yo.isDigitCharacter(i)&&!yo.isVariableCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}};yo._table={36:0,58:1,44:2,123:3,125:4,92:5,47:6,124:7,43:11,45:12,63:13};let iN=yo;class Gg{constructor(){this._children=[]}appendChild(e){return e instanceof wn&&this._children[this._children.length-1]instanceof wn?this._children[this._children.length-1].value+=e.value:(e.parent=this,this._children.push(e)),this}replace(e,t){const{parent:i}=e,n=i.children.indexOf(e),s=i.children.slice(0);s.splice(n,1,...t),i._children=s,(function r(a,l){for(const c of a)c.parent=l,r(c.children,c)})(t,i)}get children(){return this._children}get rightMostDescendant(){return this._children.length>0?this._children[this._children.length-1].rightMostDescendant:this}get snippet(){let e=this;for(;;){if(!e)return;if(e instanceof ub)return e;e=e.parent}}toString(){return this.children.reduce((e,t)=>e+t.toString(),"")}len(){return 0}}class wn extends Gg{constructor(e){super(),this.value=e}toString(){return this.value}len(){return this.value.length}clone(){return new wn(this.value)}}class zB extends Gg{}class eo extends zB{static compareByIndex(e,t){return e.index===t.index?0:e.isFinalTabstop?1:t.isFinalTabstop||e.indext.index?1:0}constructor(e){super(),this.index=e}get isFinalTabstop(){return this.index===0}get choice(){return this._children.length===1&&this._children[0]instanceof Zg?this._children[0]:void 0}clone(){const e=new eo(this.index);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map(t=>t.clone()),e}}class Zg extends Gg{constructor(){super(...arguments),this.options=[]}appendChild(e){return e instanceof wn&&(e.parent=this,this.options.push(e)),this}toString(){return this.options[0].value}len(){return this.options[0].len()}clone(){const e=new Zg;return this.options.forEach(e.appendChild,e),e}}class vM extends Gg{constructor(){super(...arguments),this.regexp=new RegExp("")}resolve(e){const t=this;let i=!1,n=e.replace(this.regexp,function(){return i=!0,t._replace(Array.prototype.slice.call(arguments,0,-2))});return!i&&this._children.some(s=>s instanceof ir&&!!s.elseValue)&&(n=this._replace([])),n}_replace(e){let t="";for(const i of this._children)if(i instanceof ir){let n=e[i.index]||"";n=i.resolve(n),t+=n}else t+=i.toString();return t}toString(){return""}clone(){const e=new vM;return e.regexp=new RegExp(this.regexp.source,(this.regexp.ignoreCase?"i":"")+(this.regexp.global?"g":"")),e._children=this.children.map(t=>t.clone()),e}}class ir extends Gg{constructor(e,t,i,n){super(),this.index=e,this.shorthandName=t,this.ifValue=i,this.elseValue=n}resolve(e){return this.shorthandName==="upcase"?e?e.toLocaleUpperCase():"":this.shorthandName==="downcase"?e?e.toLocaleLowerCase():"":this.shorthandName==="capitalize"?e?e[0].toLocaleUpperCase()+e.substr(1):"":this.shorthandName==="pascalcase"?e?this._toPascalCase(e):"":this.shorthandName==="camelcase"?e?this._toCamelCase(e):"":e&&typeof this.ifValue=="string"?this.ifValue:!e&&typeof this.elseValue=="string"?this.elseValue:e||""}_toPascalCase(e){const t=e.match(/[a-z0-9]+/gi);return t?t.map(i=>i.charAt(0).toUpperCase()+i.substr(1)).join(""):e}_toCamelCase(e){const t=e.match(/[a-z0-9]+/gi);return t?t.map((i,n)=>n===0?i.charAt(0).toLowerCase()+i.substr(1):i.charAt(0).toUpperCase()+i.substr(1)).join(""):e}clone(){return new ir(this.index,this.shorthandName,this.ifValue,this.elseValue)}}class F_ extends zB{constructor(e){super(),this.name=e}resolve(e){let t=e.resolve(this);return this.transform&&(t=this.transform.resolve(t||"")),t!==void 0?(this._children=[new wn(t)],!0):!1}clone(){const e=new F_(this.name);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map(t=>t.clone()),e}}function l5(o,e){const t=[...o];for(;t.length>0;){const i=t.shift();if(!e(i))break;t.unshift(...i.children)}}class ub extends Gg{get placeholderInfo(){if(!this._placeholders){const e=[];let t;this.walk(function(i){return i instanceof eo&&(e.push(i),t=!t||t.indexn===e?(i=!0,!1):(t+=n.len(),!0)),i?t:-1}fullLen(e){let t=0;return l5([e],i=>(t+=i.len(),!0)),t}enclosingPlaceholders(e){const t=[];let{parent:i}=e;for(;i;)i instanceof eo&&t.push(i),i=i.parent;return t}resolveVariables(e){return this.walk(t=>(t instanceof F_&&t.resolve(e)&&(this._placeholders=void 0),!0)),this}appendChild(e){return this._placeholders=void 0,super.appendChild(e)}replace(e,t){return this._placeholders=void 0,super.replace(e,t)}clone(){const e=new ub;return this._children=this.children.map(t=>t.clone()),e}walk(e){l5(this.children,e)}}class Mg{constructor(){this._scanner=new iN,this._token={type:14,pos:0,len:0}}static escape(e){return e.replace(/\$|}|\\/g,"\\$&")}static guessNeedsClipboard(e){return/\${?CLIPBOARD/.test(e)}parse(e,t,i){const n=new ub;return this.parseFragment(e,n),this.ensureFinalTabstop(n,i??!1,t??!1),n}parseFragment(e,t){const i=t.children.length;for(this._scanner.text(e),this._token=this._scanner.next();this._parse(t););const n=new Map,s=[];t.walk(l=>(l instanceof eo&&(l.isFinalTabstop?n.set(0,void 0):!n.has(l.index)&&l.children.length>0?n.set(l.index,l.children):s.push(l)),!0));const r=(l,c)=>{const d=n.get(l.index);if(!d)return;const h=new eo(l.index);h.transform=l.transform;for(const u of d){const f=u.clone();h.appendChild(f),f instanceof eo&&n.has(f.index)&&!c.has(f.index)&&(c.add(f.index),r(f,c),c.delete(f.index))}t.replace(l,[h])},a=new Set;for(const l of s)r(l,a);return t.children.slice(i)}ensureFinalTabstop(e,t,i){(t||i&&e.placeholders.length>0)&&(e.placeholders.find(s=>s.index===0)||e.appendChild(new eo(0)))}_accept(e,t){if(e===void 0||this._token.type===e){const i=t?this._scanner.tokenText(this._token):!0;return this._token=this._scanner.next(),i}return!1}_backTo(e){return this._scanner.pos=e.pos+e.len,this._token=e,!1}_until(e){const t=this._token;for(;this._token.type!==e;){if(this._token.type===14)return!1;if(this._token.type===5){const n=this._scanner.next();if(n.type!==0&&n.type!==4&&n.type!==5)return!1}this._token=this._scanner.next()}const i=this._scanner.value.substring(t.pos,this._token.pos).replace(/\\(\$|}|\\)/g,"$1");return this._token=this._scanner.next(),i}_parse(e){return this._parseEscaped(e)||this._parseTabstopOrVariableName(e)||this._parseComplexPlaceholder(e)||this._parseComplexVariable(e)||this._parseAnything(e)}_parseEscaped(e){let t;return(t=this._accept(5,!0))?(t=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||t,e.appendChild(new wn(t)),!0):!1}_parseTabstopOrVariableName(e){let t;const i=this._token;return this._accept(0)&&(t=this._accept(9,!0)||this._accept(8,!0))?(e.appendChild(/^\d+$/.test(t)?new eo(Number(t)):new F_(t)),!0):this._backTo(i)}_parseComplexPlaceholder(e){let t;const i=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(8,!0))))return this._backTo(i);const s=new eo(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(s),!0;if(!this._parse(s))return e.appendChild(new wn("${"+t+":")),s.children.forEach(e.appendChild,e),!0}else if(s.index>0&&this._accept(7)){const r=new Zg;for(;;){if(this._parseChoiceElement(r)){if(this._accept(2))continue;if(this._accept(7)&&(s.appendChild(r),this._accept(4)))return e.appendChild(s),!0}return this._backTo(i),!1}}else return this._accept(6)?this._parseTransform(s)?(e.appendChild(s),!0):(this._backTo(i),!1):this._accept(4)?(e.appendChild(s),!0):this._backTo(i)}_parseChoiceElement(e){const t=this._token,i=[];for(;!(this._token.type===2||this._token.type===7);){let n;if((n=this._accept(5,!0))?n=this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||n:n=this._accept(void 0,!0),!n)return this._backTo(t),!1;i.push(n)}return i.length===0?(this._backTo(t),!1):(e.appendChild(new wn(i.join(""))),!0)}_parseComplexVariable(e){let t;const i=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(9,!0))))return this._backTo(i);const s=new F_(t);if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(s),!0;if(!this._parse(s))return e.appendChild(new wn("${"+t+":")),s.children.forEach(e.appendChild,e),!0}else return this._accept(6)?this._parseTransform(s)?(e.appendChild(s),!0):(this._backTo(i),!1):this._accept(4)?(e.appendChild(s),!0):this._backTo(i)}_parseTransform(e){const t=new vM;let i="",n="";for(;!this._accept(6);){let s;if(s=this._accept(5,!0)){s=this._accept(6,!0)||s,i+=s;continue}if(this._token.type!==14){i+=this._accept(void 0,!0);continue}return!1}for(;!this._accept(6);){let s;if(s=this._accept(5,!0)){s=this._accept(5,!0)||this._accept(6,!0)||s,t.appendChild(new wn(s));continue}if(!(this._parseFormatString(t)||this._parseAnything(t)))return!1}for(;!this._accept(4);){if(this._token.type!==14){n+=this._accept(void 0,!0);continue}return!1}try{t.regexp=new RegExp(i,n)}catch{return!1}return e.transform=t,!0}_parseFormatString(e){const t=this._token;if(!this._accept(0))return!1;let i=!1;this._accept(3)&&(i=!0);const n=this._accept(8,!0);if(n)if(i){if(this._accept(4))return e.appendChild(new ir(Number(n))),!0;if(!this._accept(1))return this._backTo(t),!1}else return e.appendChild(new ir(Number(n))),!0;else return this._backTo(t),!1;if(this._accept(6)){const s=this._accept(9,!0);return!s||!this._accept(4)?(this._backTo(t),!1):(e.appendChild(new ir(Number(n),s)),!0)}else if(this._accept(11)){const s=this._until(4);if(s)return e.appendChild(new ir(Number(n),void 0,s,void 0)),!0}else if(this._accept(12)){const s=this._until(4);if(s)return e.appendChild(new ir(Number(n),void 0,void 0,s)),!0}else if(this._accept(13)){const s=this._until(1);if(s){const r=this._until(4);if(r)return e.appendChild(new ir(Number(n),void 0,s,r)),!0}}else{const s=this._until(4);if(s)return e.appendChild(new ir(Number(n),void 0,void 0,s)),!0}return this._backTo(t),!1}_parseAnything(e){return this._token.type!==14?(e.appendChild(new wn(this._scanner.tokenText(this._token))),this._accept(void 0),!0):!1}}async function khe(o,e,t,i,n=ut.None,s){const r=e instanceof P?Ehe(e,t):e,a=o.all(t),l=new dT;for(const b of a)b.groupId&&l.add(b.groupId,b);function c(b){if(!b.yieldsToGroupIds)return[];const C=[];for(const w of b.yieldsToGroupIds||[]){const v=l.get(w);for(const y of v)C.push(y)}return C}const d=new Map,h=new Set;function u(b,C){if(C=[...C,b],h.has(b))return C;h.add(b);try{const w=c(b);for(const v of w){const y=u(v,C);if(y)return y}}finally{h.delete(b)}}function f(b){const C=d.get(b);if(C)return C;const w=u(b,[]);w&&$n(new Error(`Inline completions: cyclic yield-to dependency detected. Path: ${w.map(y=>y.toString?y.toString():""+y).join(" -> ")}`));const v=new qN;return d.set(b,v.p),(async()=>{if(!w){const y=c(b);for(const x of y){const L=await f(x);if(L&&L.items.length>0)return}}try{return e instanceof P?await b.provideInlineCompletions(t,e,i,n):await b.provideInlineEdits?.(t,e,i,n)}catch(y){$n(y);return}})().then(y=>v.complete(y),y=>v.error(y)),v.p}const g=await Promise.all(a.map(async b=>({provider:b,completions:await f(b)}))),p=new Map,_=[];for(const b of g){const C=b.completions;if(!C)continue;const w=new Ihe(C,b.provider);_.push(w);for(const v of C.items){const y=dw.from(v,w,r,t,s);p.set(y.hash(),y)}}return new Dhe(Array.from(p.values()),new Set(p.keys()),_)}class Dhe{constructor(e,t,i){this.completions=e,this.hashs=t,this.providerResults=i}has(e){return this.hashs.has(e.hash())}dispose(){for(const e of this.providerResults)e.removeRef()}}class Ihe{constructor(e,t){this.inlineCompletions=e,this.provider=t,this.refCount=1}addRef(){this.refCount++}removeRef(){this.refCount--,this.refCount===0&&this.provider.freeInlineCompletions(this.inlineCompletions)}}class dw{static from(e,t,i,n,s){let r,a,l=e.range?I.lift(e.range):i;if(typeof e.insertText=="string"){if(r=e.insertText,s&&e.completeBracketPairs){r=c5(r,l.getStartPosition(),n,s);const c=r.length-e.insertText.length;c!==0&&(l=new I(l.startLineNumber,l.startColumn,l.endLineNumber,l.endColumn+c))}a=void 0}else if("snippet"in e.insertText){const c=e.insertText.snippet.length;if(s&&e.completeBracketPairs){e.insertText.snippet=c5(e.insertText.snippet,l.getStartPosition(),n,s);const h=e.insertText.snippet.length-c;h!==0&&(l=new I(l.startLineNumber,l.startColumn,l.endLineNumber,l.endColumn+h))}const d=new Mg().parse(e.insertText.snippet);d.children.length===1&&d.children[0]instanceof wn?(r=d.children[0].value,a=void 0):(r=d.toString(),a={snippet:e.insertText.snippet,range:l})}else z0(e.insertText);return new dw(r,e.command,l,r,a,e.additionalTextEdits||phe(),e,t)}constructor(e,t,i,n,s,r,a,l){this.filterText=e,this.command=t,this.range=i,this.insertText=n,this.snippetInfo=s,this.additionalTextEdits=r,this.sourceInlineCompletion=a,this.source=l,e=e.replace(/\r\n|\r/g,` -`),n=e.replace(/\r\n|\r/g,` -`)}withRange(e){return new dw(this.filterText,this.command,e,this.insertText,this.snippetInfo,this.additionalTextEdits,this.sourceInlineCompletion,this.source)}hash(){return JSON.stringify({insertText:this.insertText,range:this.range.toString()})}toSingleTextEdit(){return new fa(this.range,this.insertText)}}function Ehe(o,e){const t=e.getWordAtPosition(o),i=e.getLineMaxColumn(o.lineNumber);return t?new I(o.lineNumber,t.startColumn,o.lineNumber,i):I.fromPositions(o,o.with(void 0,i))}function c5(o,e,t,i){const s=t.getLineContent(e.lineNumber).substring(0,e.column-1)+o,a=t.tokenization.tokenizeLineWithEdit(e,s.length-(e.column-1),o)?.sliceAndInflate(e.column-1,s.length,0);return a?Lhe(a,i):o}function nh(o,e,t){const i=t?o.range.intersectRanges(t):o.range;if(!i)return o;const n=e.getValueInRange(i,1),s=Th(n,o.text),r=Po.ofText(n.substring(0,s)).addToPosition(o.range.getStartPosition()),a=o.text.substring(s),l=I.fromPositions(r,o.range.getEndPosition());return new fa(l,a)}function UB(o,e){return o.text.startsWith(e.text)&&Nhe(o.range,e.range)}function d5(o,e,t,i,n=0){let s=nh(o,e);if(s.range.endLineNumber!==s.range.startLineNumber)return;const r=e.getLineContent(s.range.startLineNumber),a=pi(r).length;if(s.range.startColumn-1<=a){const g=pi(s.text).length,p=r.substring(s.range.startColumn-1,a),[_,b]=[s.range.getStartPosition(),s.range.getEndPosition()],C=_.column+p.length<=b.column?_.delta(0,p.length):b,w=I.fromPositions(C,b),v=s.text.startsWith(p)?s.text.substring(p.length):s.text.substring(g);s=new fa(w,v)}const c=e.getValueInRange(s.range),d=The(c,s.text);if(!d)return;const h=s.range.startLineNumber,u=new Array;if(t==="prefix"){const g=d.filter(p=>p.originalLength===0);if(g.length>1||g.length===1&&g[0].originalStart!==c.length)return}const f=s.text.length-n;for(const g of d){const p=s.range.startColumn+g.originalStart+g.originalLength;if(t==="subwordSmart"&&i&&i.lineNumber===s.range.startLineNumber&&p0)return;if(g.modifiedLength===0)continue;const _=g.modifiedStart+g.modifiedLength,b=Math.max(g.modifiedStart,Math.min(_,f)),C=s.text.substring(g.modifiedStart,b),w=s.text.substring(b,Math.max(g.modifiedStart,_));C.length>0&&u.push(new JE(p,C,!1)),w.length>0&&u.push(new JE(p,w,!0))}return new cw(h,u)}function Nhe(o,e){return e.getStartPosition().equals(o.getStartPosition())&&e.getEndPosition().isBeforeOrEqual(o.getEndPosition())}let f1;function The(o,e){if(f1?.originalValue===o&&f1?.newValue===e)return f1?.changes;{let t=u5(o,e,!0);if(t){const i=h5(t);if(i>0){const n=u5(o,e,!1);n&&h5(n)5e3||e.length>5e3)return;function i(c){let d=0;for(let h=0,u=c.length;hd&&(d=f)}return d}const n=Math.max(i(o),i(e));function s(c){if(c<0)throw new Error("unexpected");return n+c+1}function r(c){let d=0,h=0;const u=new Int32Array(c.length);for(let f=0,g=c.length;fa},{getElements:()=>l}).ComputeDiff(!1).changes}var Mhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},f5=function(o,e){return function(t,i){e(t,i,o)}};let nN=class extends z{constructor(e,t,i,n,s){super(),this.textModel=e,this.versionId=t,this._debounceValue=i,this.languageFeaturesService=n,this.languageConfigurationService=s,this._updateOperation=this._register(new Dn),this.inlineCompletions=KC("inlineCompletions",void 0),this.suggestWidgetInlineCompletions=KC("suggestWidgetInlineCompletions",void 0),this._register(this.textModel.onDidChangeContent(()=>{this._updateOperation.clear()}))}fetch(e,t,i){const n=new Ahe(e,t,this.textModel.getVersionId()),s=t.selectedSuggestionInfo?this.suggestWidgetInlineCompletions:this.inlineCompletions;if(this._updateOperation.value?.request.satisfies(n))return this._updateOperation.value.promise;if(s.get()?.request.satisfies(n))return Promise.resolve(!0);const r=!!this._updateOperation.value;this._updateOperation.clear();const a=new In,l=(async()=>{if((r||t.triggerKind===Cl.Automatic)&&await Rhe(this._debounceValue.get(this.textModel),a.token),a.token.isCancellationRequested||this._store.isDisposed||this.textModel.getVersionId()!==n.versionId)return!1;const h=new Date,u=await khe(this.languageFeaturesService.inlineCompletionsProvider,e,this.textModel,t,a.token,this.languageConfigurationService);if(a.token.isCancellationRequested||this._store.isDisposed||this.textModel.getVersionId()!==n.versionId)return!1;const f=new Date;this._debounceValue.update(this.textModel,f.getTime()-h.getTime());const g=new Ohe(u,n,this.textModel,this.versionId);if(i){const p=i.toInlineCompletion(void 0);i.canBeReused(this.textModel,e)&&!u.has(p)&&g.prepend(i.inlineCompletion,p.range,!0)}return this._updateOperation.clear(),Xt(p=>{s.set(g,p)}),!0})(),c=new Phe(n,a,l);return this._updateOperation.value=c,l}clear(e){this._updateOperation.clear(),this.inlineCompletions.set(void 0,e),this.suggestWidgetInlineCompletions.set(void 0,e)}clearSuggestWidgetInlineCompletions(e){this._updateOperation.value?.request.context.selectedSuggestionInfo&&this._updateOperation.clear(),this.suggestWidgetInlineCompletions.set(void 0,e)}cancelUpdate(){this._updateOperation.clear()}};nN=Mhe([f5(3,Se),f5(4,Gn)],nN);function Rhe(o,e){return new Promise(t=>{let i;const n=setTimeout(()=>{i&&i.dispose(),t()},o);e&&(i=e.onCancellationRequested(()=>{clearTimeout(n),i&&i.dispose(),t()}))})}class Ahe{constructor(e,t,i){this.position=e,this.context=t,this.versionId=i}satisfies(e){return this.position.equals(e.position)&&Jk(this.context.selectedSuggestionInfo,e.context.selectedSuggestionInfo,IZ())&&(e.context.triggerKind===Cl.Automatic||this.context.triggerKind===Cl.Explicit)&&this.versionId===e.versionId}}class Phe{constructor(e,t,i){this.request=e,this.cancellationTokenSource=t,this.promise=i}dispose(){this.cancellationTokenSource.cancel()}}class Ohe{get inlineCompletions(){return this._inlineCompletions}constructor(e,t,i,n){this.inlineCompletionProviderResult=e,this.request=t,this._textModel=i,this._versionId=n,this._refCount=1,this._prependedInlineCompletionItems=[];const s=i.deltaDecorations([],e.completions.map(r=>({range:r.range,options:{description:"inline-completion-tracking-range"}})));this._inlineCompletions=e.completions.map((r,a)=>new g5(r,s[a],this._textModel,this._versionId))}clone(){return this._refCount++,this}dispose(){if(this._refCount--,this._refCount===0){setTimeout(()=>{this._textModel.isDisposed()||this._textModel.deltaDecorations(this._inlineCompletions.map(e=>e.decorationId),[])},0),this.inlineCompletionProviderResult.dispose();for(const e of this._prependedInlineCompletionItems)e.source.removeRef()}}prepend(e,t,i){i&&e.source.addRef();const n=this._textModel.deltaDecorations([],[{range:t,options:{description:"inline-completion-tracking-range"}}])[0];this._inlineCompletions.unshift(new g5(e,n,this._textModel,this._versionId)),this._prependedInlineCompletionItems.push(e)}}class g5{get forwardStable(){return this.inlineCompletion.source.inlineCompletions.enableForwardStability??!1}constructor(e,t,i,n){this.inlineCompletion=e,this.decorationId=t,this._textModel=i,this._modelVersion=n,this.semanticId=JSON.stringify([this.inlineCompletion.filterText,this.inlineCompletion.insertText,this.inlineCompletion.range.getStartPosition().toString()]),this._updatedRange=dr({owner:this,equalsFn:I.equalsRange},s=>(this._modelVersion.read(s),this._textModel.getDecorationRange(this.decorationId)))}toInlineCompletion(e){return this.inlineCompletion.withRange(this._updatedRange.read(e)??bL)}toSingleTextEdit(e){return new fa(this._updatedRange.read(e)??bL,this.inlineCompletion.insertText)}isVisible(e,t,i){const n=nh(this._toFilterTextReplacement(i),e),s=this._updatedRange.read(i);if(!s||!this.inlineCompletion.range.getStartPosition().equals(s.getStartPosition())||t.lineNumber!==n.range.startLineNumber)return!1;const r=e.getValueInRange(n.range,1),a=n.text,l=Math.max(0,t.column-n.range.startColumn);let c=a.substring(0,l),d=a.substring(l),h=r.substring(0,l),u=r.substring(l);const f=e.getLineIndentColumn(n.range.startLineNumber);return n.range.startColumn<=f&&(h=h.trimStart(),h.length===0&&(u=u.trimStart()),c=c.trimStart(),c.length===0&&(d=d.trimStart())),c.startsWith(h)&&!!r7(u,d)}canBeReused(e,t){const i=this._updatedRange.read(void 0);return!!i&&i.containsPosition(t)&&this.isVisible(e,t,void 0)&&Po.ofRange(i).isGreaterThanOrEqualTo(Po.ofRange(this.inlineCompletion.range))}_toFilterTextReplacement(e){return new fa(this._updatedRange.read(e)??bL,this.inlineCompletion.filterText)}}const bL=new I(1,1,1,1),Fhe=m("defaultLabel","input"),Bhe=m("label.preserveCaseToggle","Preserve Case");class Whe extends nb{constructor(e){super({icon:ie.preserveCase,title:Bhe+e.appendTitle,isChecked:e.isChecked,hoverDelegate:e.hoverDelegate??Ks("element"),inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class Hhe extends xr{constructor(e,t,i,n){super(),this._showOptionButtons=i,this.fixFocusOnOptionClickEnabled=!0,this.cachedOptionsWidth=0,this._onDidOptionChange=this._register(new A),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new A),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new A),this._onInput=this._register(new A),this._onKeyUp=this._register(new A),this._onPreserveCaseKeyDown=this._register(new A),this.onPreserveCaseKeyDown=this._onPreserveCaseKeyDown.event,this.contextViewProvider=t,this.placeholder=n.placeholder||"",this.validation=n.validation,this.label=n.label||Fhe;const s=n.appendPreserveCaseLabel||"",r=n.history||[],a=!!n.flexibleHeight,l=!!n.flexibleWidth,c=n.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new k9(this.domNode,this.contextViewProvider,{ariaLabel:this.label||"",placeholder:this.placeholder||"",validationOptions:{validation:this.validation},history:r,showHistoryHint:n.showHistoryHint,flexibleHeight:a,flexibleWidth:l,flexibleMaxHeight:c,inputBoxStyles:n.inputBoxStyles})),this.preserveCase=this._register(new Whe({appendTitle:s,isChecked:!1,...n.toggleStyles})),this._register(this.preserveCase.onChange(u=>{this._onDidOptionChange.fire(u),!u&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.preserveCase.onKeyDown(u=>{this._onPreserveCaseKeyDown.fire(u)})),this._showOptionButtons?this.cachedOptionsWidth=this.preserveCase.width():this.cachedOptionsWidth=0;const d=[this.preserveCase.domNode];this.onkeydown(this.domNode,u=>{if(u.equals(15)||u.equals(17)||u.equals(9)){const f=d.indexOf(this.domNode.ownerDocument.activeElement);if(f>=0){let g=-1;u.equals(17)?g=(f+1)%d.length:u.equals(15)&&(f===0?g=d.length-1:g=f-1),u.equals(9)?(d[f].blur(),this.inputBox.focus()):g>=0&&d[g].focus(),je.stop(u,!0)}}});const h=document.createElement("div");h.className="controls",h.style.display=this._showOptionButtons?"block":"none",h.appendChild(this.preserveCase.domNode),this.domNode.appendChild(h),e?.appendChild(this.domNode),this.onkeydown(this.inputBox.inputElement,u=>this._onKeyDown.fire(u)),this.onkeyup(this.inputBox.inputElement,u=>this._onKeyUp.fire(u)),this.oninput(this.inputBox.inputElement,u=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,u=>this._onMouseDown.fire(u))}enable(){this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.preserveCase.enable()}disable(){this.domNode.classList.add("disabled"),this.inputBox.disable(),this.preserveCase.disable()}setEnabled(e){e?this.enable():this.disable()}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getPreserveCase(){return this.preserveCase.checked}setPreserveCase(e){this.preserveCase.checked=e}focusOnPreserve(){this.preserveCase.focus()}validate(){this.inputBox?.validate()}set width(e){this.inputBox.paddingRight=this.cachedOptionsWidth,this.domNode.style.width=e+"px"}dispose(){super.dispose()}}var $B=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},KB=function(o,e){return function(t,i){e(t,i,o)}};const wM=new le("suggestWidgetVisible",!1,m("suggestWidgetVisible","Whether suggestion are visible")),yM="historyNavigationWidgetFocus",jB="historyNavigationForwardsEnabled",qB="historyNavigationBackwardsEnabled";let yp;const g1=[];function GB(o,e){if(g1.includes(e))throw new Error("Cannot register the same widget multiple times");g1.push(e);const t=new X,i=new le(yM,!1).bindTo(o),n=new le(jB,!0).bindTo(o),s=new le(qB,!0).bindTo(o),r=()=>{i.set(!0),yp=e},a=()=>{i.set(!1),yp===e&&(yp=void 0)};return M0(e.element)&&r(),t.add(e.onDidFocus(()=>r())),t.add(e.onDidBlur(()=>a())),t.add(_e(()=>{g1.splice(g1.indexOf(e),1),a()})),{historyNavigationForwardsEnablement:n,historyNavigationBackwardsEnablement:s,dispose(){t.dispose()}}}let m5=class extends D9{constructor(e,t,i,n){super(e,t,i);const s=this._register(n.createScoped(this.inputBox.element));this._register(GB(s,this.inputBox))}};m5=$B([KB(3,De)],m5);let p5=class extends Hhe{constructor(e,t,i,n,s=!1){super(e,t,s,i);const r=this._register(n.createScoped(this.inputBox.element));this._register(GB(r,this.inputBox))}};p5=$B([KB(3,De)],p5);Nn.registerCommandAndKeybindingRule({id:"history.showPrevious",weight:200,when:re.and(re.has(yM),re.equals(qB,!0),re.not("isComposing"),wM.isEqualTo(!1)),primary:16,secondary:[528],handler:o=>{yp?.showPreviousValue()}});Nn.registerCommandAndKeybindingRule({id:"history.showNext",weight:200,when:re.and(re.has(yM),re.equals(jB,!0),re.not("isComposing"),wM.isEqualTo(!1)),primary:18,secondary:[530],handler:o=>{yp?.showNextValue()}});const Ne={Visible:wM,HasFocusedSuggestion:new le("suggestWidgetHasFocusedSuggestion",!1,m("suggestWidgetHasSelection","Whether any suggestion is focused")),DetailsVisible:new le("suggestWidgetDetailsVisible",!1,m("suggestWidgetDetailsVisible","Whether suggestion details are visible")),MultipleSuggestions:new le("suggestWidgetMultipleSuggestions",!1,m("suggestWidgetMultipleSuggestions","Whether there are multiple suggestions to pick from")),MakesTextEdit:new le("suggestionMakesTextEdit",!0,m("suggestionMakesTextEdit","Whether inserting the current suggestion yields in a change or has everything already been typed")),AcceptSuggestionsOnEnter:new le("acceptSuggestionOnEnter",!0,m("acceptSuggestionOnEnter","Whether suggestions are inserted when pressing Enter")),HasInsertAndReplaceRange:new le("suggestionHasInsertAndReplaceRange",!1,m("suggestionHasInsertAndReplaceRange","Whether the current suggestion has insert and replace behaviour")),InsertMode:new le("suggestionInsertMode",void 0,{type:"string",description:m("suggestionInsertMode","Whether the default behaviour is to insert or replace")}),CanResolve:new le("suggestionCanResolve",!1,m("suggestionCanResolve","Whether the current suggestion supports to resolve further details"))},bc=new $e("suggestWidgetStatusBar");class Vhe{constructor(e,t,i,n){this.position=e,this.completion=t,this.container=i,this.provider=n,this.isInvalid=!1,this.score=oa.Default,this.distance=0,this.textLabel=typeof t.label=="string"?t.label:t.label?.label,this.labelLow=this.textLabel.toLowerCase(),this.isInvalid=!this.textLabel,this.sortTextLow=t.sortText&&t.sortText.toLowerCase(),this.filterTextLow=t.filterText&&t.filterText.toLowerCase(),this.extensionId=t.extensionId,I.isIRange(t.range)?(this.editStart=new P(t.range.startLineNumber,t.range.startColumn),this.editInsertEnd=new P(t.range.endLineNumber,t.range.endColumn),this.editReplaceEnd=new P(t.range.endLineNumber,t.range.endColumn),this.isInvalid=this.isInvalid||I.spansMultipleLines(t.range)||t.range.startLineNumber!==e.lineNumber):(this.editStart=new P(t.range.insert.startLineNumber,t.range.insert.startColumn),this.editInsertEnd=new P(t.range.insert.endLineNumber,t.range.insert.endColumn),this.editReplaceEnd=new P(t.range.replace.endLineNumber,t.range.replace.endColumn),this.isInvalid=this.isInvalid||I.spansMultipleLines(t.range.insert)||I.spansMultipleLines(t.range.replace)||t.range.insert.startLineNumber!==e.lineNumber||t.range.replace.startLineNumber!==e.lineNumber||t.range.insert.startColumn!==t.range.replace.startColumn),typeof n.resolveCompletionItem!="function"&&(this._resolveCache=Promise.resolve(),this._resolveDuration=0)}get isResolved(){return this._resolveDuration!==void 0}get resolveDuration(){return this._resolveDuration!==void 0?this._resolveDuration:-1}async resolve(e){if(!this._resolveCache){const t=e.onCancellationRequested(()=>{this._resolveCache=void 0,this._resolveDuration=void 0}),i=new Hs(!0);this._resolveCache=Promise.resolve(this.provider.resolveCompletionItem(this.completion,e)).then(n=>{Object.assign(this.completion,n),this._resolveDuration=i.elapsed()},n=>{$c(n)&&(this._resolveCache=void 0,this._resolveDuration=void 0)}).finally(()=>{t.dispose()})}return this._resolveCache}}const m0=class m0{constructor(e=2,t=new Set,i=new Set,n=new Map,s=!0){this.snippetSortOrder=e,this.kindFilter=t,this.providerFilter=i,this.providerItemsToReuse=n,this.showDeprecated=s}};m0.default=new m0;let hw=m0;class zhe{constructor(e,t,i,n){this.items=e,this.needsClipboard=t,this.durations=i,this.disposable=n}}async function ZB(o,e,t,i=hw.default,n={triggerKind:0},s=ut.None){const r=new Hs;t=t.clone();const a=e.getWordAtPosition(t),l=a?new I(t.lineNumber,a.startColumn,t.lineNumber,a.endColumn):I.fromPositions(t),c={replace:l,insert:l.setEndPosition(t.lineNumber,t.column)},d=[],h=new X,u=[];let f=!1;const g=(_,b,C)=>{let w=!1;if(!b)return w;for(const v of b.suggestions)if(!i.kindFilter.has(v.kind)){if(!i.showDeprecated&&v?.tags?.includes(1))continue;v.range||(v.range=c),v.sortText||(v.sortText=typeof v.label=="string"?v.label:v.label.label),!f&&v.insertTextRules&&v.insertTextRules&4&&(f=Mg.guessNeedsClipboard(v.insertText)),d.push(new Vhe(t,v,b,_)),w=!0}return MN(b)&&h.add(b),u.push({providerName:_._debugDisplayName??"unknown_provider",elapsedProvider:b.duration??-1,elapsedOverall:C.elapsed()}),w},p=(async()=>{})();for(const _ of o.orderedGroups(e)){let b=!1;if(await Promise.all(_.map(async C=>{if(i.providerItemsToReuse.has(C)){const w=i.providerItemsToReuse.get(C);w.forEach(v=>d.push(v)),b=b||w.length>0;return}if(!(i.providerFilter.size>0&&!i.providerFilter.has(C)))try{const w=new Hs,v=await C.provideCompletionItems(e,t,n,s);b=g(C,v,w)||b}catch(w){$n(w)}})),b||s.isCancellationRequested)break}return await p,s.isCancellationRequested?(h.dispose(),Promise.reject(new ha)):new zhe(d.sort(Khe(i.snippetSortOrder)),f,{entries:u,elapsed:r.elapsed()},h)}function SM(o,e){if(o.sortTextLow&&e.sortTextLow){if(o.sortTextLowe.sortTextLow)return 1}return o.textLabele.textLabel?1:o.completion.kind-e.completion.kind}function Uhe(o,e){if(o.completion.kind!==e.completion.kind){if(o.completion.kind===27)return-1;if(e.completion.kind===27)return 1}return SM(o,e)}function $he(o,e){if(o.completion.kind!==e.completion.kind){if(o.completion.kind===27)return 1;if(e.completion.kind===27)return-1}return SM(o,e)}const Wy=new Map;Wy.set(0,Uhe);Wy.set(2,$he);Wy.set(1,SM);function Khe(o){return Wy.get(o)}bt.registerCommand("_executeCompletionItemProvider",async(o,...e)=>{const[t,i,n,s]=e;ai(ve.isUri(t)),ai(P.isIPosition(i)),ai(typeof n=="string"||!n),ai(typeof s=="number"||!s);const{completionProvider:r}=o.get(Se),a=await o.get(fo).createModelReference(t);try{const l={incomplete:!1,suggestions:[]},c=[],d=a.object.textEditorModel.validatePosition(i),h=await ZB(r,a.object.textEditorModel,d,void 0,{triggerCharacter:n??void 0,triggerKind:n?1:0});for(const u of h.items)c.length<(s??0)&&c.push(u.resolve(ut.None)),l.incomplete=l.incomplete||u.container.incomplete,l.suggestions.push(u.completion);try{return await Promise.all(c),l}finally{setTimeout(()=>h.disposable.dispose(),100)}}finally{a.dispose()}});function jhe(o,e){o.getContribution("editor.contrib.suggestController")?.triggerSuggest(new Set().add(e),void 0,!0)}class m1{static isAllOff(e){return e.other==="off"&&e.comments==="off"&&e.strings==="off"}static isAllOn(e){return e.other==="on"&&e.comments==="on"&&e.strings==="on"}static valueFor(e,t){switch(t){case 1:return e.comments;case 2:return e.strings;default:return e.other}}}function _5(o,e=kn){return Q$(o,e)?o.charAt(0).toUpperCase()+o.slice(1):o}var qhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ghe=function(o,e){return function(t,i){e(t,i,o)}};class b5{constructor(e){this._delegates=e}resolve(e){for(const t of this._delegates){const i=t.resolve(e);if(i!==void 0)return i}}}class C5{constructor(e,t,i,n){this._model=e,this._selection=t,this._selectionIdx=i,this._overtypingCapturer=n}resolve(e){const{name:t}=e;if(t==="SELECTION"||t==="TM_SELECTED_TEXT"){let i=this._model.getValueInRange(this._selection)||void 0,n=this._selection.startLineNumber!==this._selection.endLineNumber;if(!i&&this._overtypingCapturer){const s=this._overtypingCapturer.getLastOvertypedInfo(this._selectionIdx);s&&(i=s.value,n=s.multiline)}if(i&&n&&e.snippet){const s=this._model.getLineContent(this._selection.startLineNumber),r=pi(s,0,this._selection.startColumn-1);let a=r;e.snippet.walk(c=>c===e?!1:(c instanceof wn&&(a=pi(va(c.value).pop())),!0));const l=Th(a,r);i=i.replace(/(\r\n|\r|\n)(.*)/g,(c,d,h)=>`${d}${a.substr(l)}${h}`)}return i}else{if(t==="TM_CURRENT_LINE")return this._model.getLineContent(this._selection.positionLineNumber);if(t==="TM_CURRENT_WORD"){const i=this._model.getWordAtPosition({lineNumber:this._selection.positionLineNumber,column:this._selection.positionColumn});return i&&i.word||void 0}else{if(t==="TM_LINE_INDEX")return String(this._selection.positionLineNumber-1);if(t==="TM_LINE_NUMBER")return String(this._selection.positionLineNumber);if(t==="CURSOR_INDEX")return String(this._selectionIdx);if(t==="CURSOR_NUMBER")return String(this._selectionIdx+1)}}}}class v5{constructor(e,t){this._labelService=e,this._model=t}resolve(e){const{name:t}=e;if(t==="TM_FILENAME")return uc(this._model.uri.fsPath);if(t==="TM_FILENAME_BASE"){const i=uc(this._model.uri.fsPath),n=i.lastIndexOf(".");return n<=0?i:i.slice(0,n)}else{if(t==="TM_DIRECTORY")return iF(this._model.uri.fsPath)==="."?"":this._labelService.getUriLabel(ny(this._model.uri));if(t==="TM_FILEPATH")return this._labelService.getUriLabel(this._model.uri);if(t==="RELATIVE_FILEPATH")return this._labelService.getUriLabel(this._model.uri,{relative:!0,noPrefix:!0})}}}class w5{constructor(e,t,i,n){this._readClipboardText=e,this._selectionIdx=t,this._selectionCount=i,this._spread=n}resolve(e){if(e.name!=="CLIPBOARD")return;const t=this._readClipboardText();if(t){if(this._spread){const i=t.split(/\r\n|\n|\r/).filter(n=>!hF(n));if(i.length===this._selectionCount)return i[this._selectionIdx]}return t}}}let uw=class{constructor(e,t,i){this._model=e,this._selection=t,this._languageConfigurationService=i}resolve(e){const{name:t}=e,i=this._model.getLanguageIdAtPosition(this._selection.selectionStartLineNumber,this._selection.selectionStartColumn),n=this._languageConfigurationService.getLanguageConfiguration(i).comments;if(n){if(t==="LINE_COMMENT")return n.lineCommentToken||void 0;if(t==="BLOCK_COMMENT_START")return n.blockCommentStartToken||void 0;if(t==="BLOCK_COMMENT_END")return n.blockCommentEndToken||void 0}}};uw=qhe([Ghe(2,Gn)],uw);const Ur=class Ur{constructor(){this._date=new Date}resolve(e){const{name:t}=e;if(t==="CURRENT_YEAR")return String(this._date.getFullYear());if(t==="CURRENT_YEAR_SHORT")return String(this._date.getFullYear()).slice(-2);if(t==="CURRENT_MONTH")return String(this._date.getMonth().valueOf()+1).padStart(2,"0");if(t==="CURRENT_DATE")return String(this._date.getDate().valueOf()).padStart(2,"0");if(t==="CURRENT_HOUR")return String(this._date.getHours().valueOf()).padStart(2,"0");if(t==="CURRENT_MINUTE")return String(this._date.getMinutes().valueOf()).padStart(2,"0");if(t==="CURRENT_SECOND")return String(this._date.getSeconds().valueOf()).padStart(2,"0");if(t==="CURRENT_DAY_NAME")return Ur.dayNames[this._date.getDay()];if(t==="CURRENT_DAY_NAME_SHORT")return Ur.dayNamesShort[this._date.getDay()];if(t==="CURRENT_MONTH_NAME")return Ur.monthNames[this._date.getMonth()];if(t==="CURRENT_MONTH_NAME_SHORT")return Ur.monthNamesShort[this._date.getMonth()];if(t==="CURRENT_SECONDS_UNIX")return String(Math.floor(this._date.getTime()/1e3));if(t==="CURRENT_TIMEZONE_OFFSET"){const i=this._date.getTimezoneOffset(),n=i>0?"-":"+",s=Math.trunc(Math.abs(i/60)),r=s<10?"0"+s:s,a=Math.abs(i)-s*60,l=a<10?"0"+a:a;return n+r+":"+l}}};Ur.dayNames=[m("Sunday","Sunday"),m("Monday","Monday"),m("Tuesday","Tuesday"),m("Wednesday","Wednesday"),m("Thursday","Thursday"),m("Friday","Friday"),m("Saturday","Saturday")],Ur.dayNamesShort=[m("SundayShort","Sun"),m("MondayShort","Mon"),m("TuesdayShort","Tue"),m("WednesdayShort","Wed"),m("ThursdayShort","Thu"),m("FridayShort","Fri"),m("SaturdayShort","Sat")],Ur.monthNames=[m("January","January"),m("February","February"),m("March","March"),m("April","April"),m("May","May"),m("June","June"),m("July","July"),m("August","August"),m("September","September"),m("October","October"),m("November","November"),m("December","December")],Ur.monthNamesShort=[m("JanuaryShort","Jan"),m("FebruaryShort","Feb"),m("MarchShort","Mar"),m("AprilShort","Apr"),m("MayShort","May"),m("JuneShort","Jun"),m("JulyShort","Jul"),m("AugustShort","Aug"),m("SeptemberShort","Sep"),m("OctoberShort","Oct"),m("NovemberShort","Nov"),m("DecemberShort","Dec")];let fw=Ur;class y5{constructor(e){this._workspaceService=e}resolve(e){if(!this._workspaceService)return;const t=pZ(this._workspaceService.getWorkspace());if(!gZ(t)){if(e.name==="WORKSPACE_NAME")return this._resolveWorkspaceName(t);if(e.name==="WORKSPACE_FOLDER")return this._resoveWorkspacePath(t)}}_resolveWorkspaceName(e){if(qk(e))return uc(e.uri.path);let t=uc(e.configPath.path);return t.endsWith(Gk)&&(t=t.substr(0,t.length-Gk.length-1)),t}_resoveWorkspacePath(e){if(qk(e))return _5(e.uri.fsPath);const t=uc(e.configPath.path);let i=e.configPath.fsPath;return i.endsWith(t)&&(i=i.substr(0,i.length-t.length-1)),i?_5(i):"/"}}class S5{resolve(e){const{name:t}=e;if(t==="RANDOM")return Math.random().toString().slice(-6);if(t==="RANDOM_HEX")return Math.random().toString(16).slice(-6);if(t==="UUID")return IB()}}var Zhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Yhe=function(o,e){return function(t,i){e(t,i,o)}},Zo;const So=class So{constructor(e,t,i){this._editor=e,this._snippet=t,this._snippetLineLeadingWhitespace=i,this._offset=-1,this._nestingLevel=1,this._placeholderGroups=MM(t.placeholders,eo.compareByIndex),this._placeholderGroupsIdx=-1}initialize(e){this._offset=e.newPosition}dispose(){this._placeholderDecorations&&this._editor.removeDecorations([...this._placeholderDecorations.values()]),this._placeholderGroups.length=0}_initDecorations(){if(this._offset===-1)throw new Error("Snippet not initialized!");if(this._placeholderDecorations)return;this._placeholderDecorations=new Map;const e=this._editor.getModel();this._editor.changeDecorations(t=>{for(const i of this._snippet.placeholders){const n=this._snippet.offset(i),s=this._snippet.fullLen(i),r=I.fromPositions(e.getPositionAt(this._offset+n),e.getPositionAt(this._offset+n+s)),a=i.isFinalTabstop?So._decor.inactiveFinal:So._decor.inactive,l=t.addDecoration(r,a);this._placeholderDecorations.set(i,l)}})}move(e){if(!this._editor.hasModel())return[];if(this._initDecorations(),this._placeholderGroupsIdx>=0){const n=[];for(const s of this._placeholderGroups[this._placeholderGroupsIdx])if(s.transform){const r=this._placeholderDecorations.get(s),a=this._editor.getModel().getDecorationRange(r),l=this._editor.getModel().getValueInRange(a),c=s.transform.resolve(l).split(/\r\n|\r|\n/);for(let d=1;d0&&this._editor.executeEdits("snippet.placeholderTransform",n)}let t=!1;e===!0&&this._placeholderGroupsIdx0&&(this._placeholderGroupsIdx-=1,t=!0);const i=this._editor.getModel().changeDecorations(n=>{const s=new Set,r=[];for(const a of this._placeholderGroups[this._placeholderGroupsIdx]){const l=this._placeholderDecorations.get(a),c=this._editor.getModel().getDecorationRange(l);r.push(new Fe(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn)),t=t&&this._hasPlaceholderBeenCollapsed(a),n.changeDecorationOptions(l,a.isFinalTabstop?So._decor.activeFinal:So._decor.active),s.add(a);for(const d of this._snippet.enclosingPlaceholders(a)){const h=this._placeholderDecorations.get(d);n.changeDecorationOptions(h,d.isFinalTabstop?So._decor.activeFinal:So._decor.active),s.add(d)}}for(const[a,l]of this._placeholderDecorations)s.has(a)||n.changeDecorationOptions(l,a.isFinalTabstop?So._decor.inactiveFinal:So._decor.inactive);return r});return t?this.move(e):i??[]}_hasPlaceholderBeenCollapsed(e){let t=e;for(;t;){if(t instanceof eo){const i=this._placeholderDecorations.get(t);if(this._editor.getModel().getDecorationRange(i).isEmpty()&&t.toString().length>0)return!0}t=t.parent}return!1}get isAtFirstPlaceholder(){return this._placeholderGroupsIdx<=0||this._placeholderGroups.length===0}get isAtLastPlaceholder(){return this._placeholderGroupsIdx===this._placeholderGroups.length-1}get hasPlaceholder(){return this._snippet.placeholders.length>0}get isTrivialSnippet(){if(this._snippet.placeholders.length===0)return!0;if(this._snippet.placeholders.length===1){const[e]=this._snippet.placeholders;if(e.isFinalTabstop&&this._snippet.rightMostDescendant===e)return!0}return!1}computePossibleSelections(){const e=new Map;for(const t of this._placeholderGroups){let i;for(const n of t){if(n.isFinalTabstop)break;i||(i=[],e.set(n.index,i));const s=this._placeholderDecorations.get(n),r=this._editor.getModel().getDecorationRange(s);if(!r){e.delete(n.index);break}i.push(r)}}return e}get activeChoice(){if(!this._placeholderDecorations)return;const e=this._placeholderGroups[this._placeholderGroupsIdx][0];if(!e?.choice)return;const t=this._placeholderDecorations.get(e);if(!t)return;const i=this._editor.getModel().getDecorationRange(t);if(i)return{range:i,choice:e.choice}}get hasChoice(){let e=!1;return this._snippet.walk(t=>(e=t instanceof Zg,!e)),e}merge(e){const t=this._editor.getModel();this._nestingLevel*=10,this._editor.changeDecorations(i=>{for(const n of this._placeholderGroups[this._placeholderGroupsIdx]){const s=e.shift();console.assert(s._offset!==-1),console.assert(!s._placeholderDecorations);const r=s._snippet.placeholderInfo.last.index;for(const l of s._snippet.placeholderInfo.all)l.isFinalTabstop?l.index=n.index+(r+1)/this._nestingLevel:l.index=n.index+l.index/this._nestingLevel;this._snippet.replace(n,s._snippet.children);const a=this._placeholderDecorations.get(n);i.removeDecoration(a),this._placeholderDecorations.delete(n);for(const l of s._snippet.placeholders){const c=s._snippet.offset(l),d=s._snippet.fullLen(l),h=I.fromPositions(t.getPositionAt(s._offset+c),t.getPositionAt(s._offset+c+d)),u=i.addDecoration(h,So._decor.inactive);this._placeholderDecorations.set(l,u)}}this._placeholderGroups=MM(this._snippet.placeholders,eo.compareByIndex)})}};So._decor={active:kt.register({description:"snippet-placeholder-1",stickiness:0,className:"snippet-placeholder"}),inactive:kt.register({description:"snippet-placeholder-2",stickiness:1,className:"snippet-placeholder"}),activeFinal:kt.register({description:"snippet-placeholder-3",stickiness:1,className:"finish-snippet-placeholder"}),inactiveFinal:kt.register({description:"snippet-placeholder-4",stickiness:1,className:"finish-snippet-placeholder"})};let gw=So;const L5={overwriteBefore:0,overwriteAfter:0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0};let mw=Zo=class{static adjustWhitespace(e,t,i,n,s){const r=e.getLineContent(t.lineNumber),a=pi(r,0,t.column-1);let l;return n.walk(c=>{if(!(c instanceof wn)||c.parent instanceof Zg||s&&!s.has(c))return!0;const d=c.value.split(/\r\n|\r|\n/);if(i){const u=n.offset(c);if(u===0)d[0]=e.normalizeIndentation(d[0]);else{l=l??n.toString();const f=l.charCodeAt(u-1);(f===10||f===13)&&(d[0]=e.normalizeIndentation(a+d[0]))}for(let f=1;fv.get(jk)),g=e.invokeWithinContext(v=>new v5(v.get(Cg),u)),p=()=>a,_=u.getValueInRange(Zo.adjustSelection(u,e.getSelection(),i,0)),b=u.getValueInRange(Zo.adjustSelection(u,e.getSelection(),0,n)),C=u.getLineFirstNonWhitespaceColumn(e.getSelection().positionLineNumber),w=e.getSelections().map((v,y)=>({selection:v,idx:y})).sort((v,y)=>I.compareRangesUsingStarts(v.selection,y.selection));for(const{selection:v,idx:y}of w){let x=Zo.adjustSelection(u,v,i,0),L=Zo.adjustSelection(u,v,0,n);_!==u.getValueInRange(x)&&(x=v),b!==u.getValueInRange(L)&&(L=v);const E=v.setStartPosition(x.startLineNumber,x.startColumn).setEndPosition(L.endLineNumber,L.endColumn),N=new Mg().parse(t,!0,s),H=E.getStartPosition(),F=Zo.adjustWhitespace(u,H,r||y>0&&C!==u.getLineFirstNonWhitespaceColumn(v.positionLineNumber),N);N.resolveVariables(new b5([g,new w5(p,y,w.length,e.getOption(79)==="spread"),new C5(u,v,y,l),new uw(u,v,c),new fw,new y5(f),new S5])),d[y]=aa.replace(E,N.toString()),d[y].identifier={major:y,minor:0},d[y]._isTracked=!0,h[y]=new gw(e,N,F)}return{edits:d,snippets:h}}static createEditsAndSnippetsFromEdits(e,t,i,n,s,r,a){if(!e.hasModel()||t.length===0)return{edits:[],snippets:[]};const l=[],c=e.getModel(),d=new Mg,h=new ub,u=new b5([e.invokeWithinContext(g=>new v5(g.get(Cg),c)),new w5(()=>s,0,e.getSelections().length,e.getOption(79)==="spread"),new C5(c,e.getSelection(),0,r),new uw(c,e.getSelection(),a),new fw,new y5(e.invokeWithinContext(g=>g.get(jk))),new S5]);t=t.sort((g,p)=>I.compareRangesUsingStarts(g.range,p.range));let f=0;for(let g=0;g0){const y=t[g-1].range,x=I.fromPositions(y.getEndPosition(),p.getStartPosition()),L=new wn(c.getValueInRange(x));h.appendChild(L),f+=L.value.length}const b=d.parseFragment(_,h);Zo.adjustWhitespace(c,p.getStartPosition(),!0,h,new Set(b)),h.resolveVariables(u);const C=h.toString(),w=C.slice(f);f=C.length;const v=aa.replace(p,w);v.identifier={major:g,minor:0},v._isTracked=!0,l.push(v)}return d.ensureFinalTabstop(h,i,!0),{edits:l,snippets:[new gw(e,h,"")]}}constructor(e,t,i=L5,n){this._editor=e,this._template=t,this._options=i,this._languageConfigurationService=n,this._templateMerges=[],this._snippets=[]}dispose(){xt(this._snippets)}_logInfo(){return`template="${this._template}", merged_templates="${this._templateMerges.join(" -> ")}"`}insert(){if(!this._editor.hasModel())return;const{edits:e,snippets:t}=typeof this._template=="string"?Zo.createEditsAndSnippetsFromSelections(this._editor,this._template,this._options.overwriteBefore,this._options.overwriteAfter,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer,this._languageConfigurationService):Zo.createEditsAndSnippetsFromEdits(this._editor,this._template,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer,this._languageConfigurationService);this._snippets=t,this._editor.executeEdits("snippet",e,i=>{const n=i.filter(s=>!!s.identifier);for(let s=0;sFe.fromPositions(s.range.getEndPosition()))}),this._editor.revealRange(this._editor.getSelections()[0])}merge(e,t=L5){if(!this._editor.hasModel())return;this._templateMerges.push([this._snippets[0]._nestingLevel,this._snippets[0]._placeholderGroupsIdx,e]);const{edits:i,snippets:n}=Zo.createEditsAndSnippetsFromSelections(this._editor,e,t.overwriteBefore,t.overwriteAfter,!0,t.adjustWhitespace,t.clipboardText,t.overtypingCapturer,this._languageConfigurationService);this._editor.executeEdits("snippet",i,s=>{const r=s.filter(l=>!!l.identifier);for(let l=0;lFe.fromPositions(l.range.getEndPosition()))})}next(){const e=this._move(!0);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())}prev(){const e=this._move(!1);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())}_move(e){const t=[];for(const i of this._snippets){const n=i.move(e);t.push(...n)}return t}get isAtFirstPlaceholder(){return this._snippets[0].isAtFirstPlaceholder}get isAtLastPlaceholder(){return this._snippets[0].isAtLastPlaceholder}get hasPlaceholder(){return this._snippets[0].hasPlaceholder}get hasChoice(){return this._snippets[0].hasChoice}get activeChoice(){return this._snippets[0].activeChoice}isSelectionWithinPlaceholders(){if(!this.hasPlaceholder)return!1;const e=this._editor.getSelections();if(e.length{s.push(...n.get(r))})}e.sort(I.compareRangesUsingStarts);for(const[i,n]of t){if(n.length!==e.length){t.delete(i);continue}n.sort(I.compareRangesUsingStarts);for(let s=0;s0}};mw=Zo=Zhe([Yhe(3,Gn)],mw);var Qhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},p1=function(o,e){return function(t,i){e(t,i,o)}},ju;const x5={overwriteBefore:0,overwriteAfter:0,undoStopBefore:!0,undoStopAfter:!0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0};var Jr;let Mn=(Jr=class{static get(e){return e.getContribution(ju.ID)}constructor(e,t,i,n,s){this._editor=e,this._logService=t,this._languageFeaturesService=i,this._languageConfigurationService=s,this._snippetListener=new X,this._modelVersionId=-1,this._inSnippet=ju.InSnippetMode.bindTo(n),this._hasNextTabstop=ju.HasNextTabstop.bindTo(n),this._hasPrevTabstop=ju.HasPrevTabstop.bindTo(n)}dispose(){this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._session?.dispose(),this._snippetListener.dispose()}insert(e,t){try{this._doInsert(e,typeof t>"u"?x5:{...x5,...t})}catch(i){this.cancel(),this._logService.error(i),this._logService.error("snippet_error"),this._logService.error("insert_template=",e),this._logService.error("existing_template=",this._session?this._session._logInfo():"")}}_doInsert(e,t){if(this._editor.hasModel()){if(this._snippetListener.clear(),t.undoStopBefore&&this._editor.getModel().pushStackElement(),this._session&&typeof e!="string"&&this.cancel(),this._session?(ai(typeof e=="string"),this._session.merge(e,t)):(this._modelVersionId=this._editor.getModel().getAlternativeVersionId(),this._session=new mw(this._editor,e,t,this._languageConfigurationService),this._session.insert()),t.undoStopAfter&&this._editor.getModel().pushStackElement(),this._session?.hasChoice){const i={_debugDisplayName:"snippetChoiceCompletions",provideCompletionItems:(c,d)=>{if(!this._session||c!==this._editor.getModel()||!P.equals(this._editor.getPosition(),d))return;const{activeChoice:h}=this._session;if(!h||h.choice.options.length===0)return;const u=c.getValueInRange(h.range),f=!!h.choice.options.find(p=>p.value===u),g=[];for(let p=0;p{s?.dispose(),r=!1},l=()=>{r||(s=this._languageFeaturesService.completionProvider.register({language:n.getLanguageId(),pattern:n.uri.fsPath,scheme:n.uri.scheme,exclusive:!0},i),this._snippetListener.add(s),r=!0)};this._choiceCompletions={provider:i,enable:l,disable:a}}this._updateState(),this._snippetListener.add(this._editor.onDidChangeModelContent(i=>i.isFlush&&this.cancel())),this._snippetListener.add(this._editor.onDidChangeModel(()=>this.cancel())),this._snippetListener.add(this._editor.onDidChangeCursorSelection(()=>this._updateState()))}}_updateState(){if(!(!this._session||!this._editor.hasModel())){if(this._modelVersionId===this._editor.getModel().getAlternativeVersionId())return this.cancel();if(!this._session.hasPlaceholder)return this.cancel();if(this._session.isAtLastPlaceholder||!this._session.isSelectionWithinPlaceholders())return this._editor.getModel().pushStackElement(),this.cancel();this._inSnippet.set(!0),this._hasPrevTabstop.set(!this._session.isAtFirstPlaceholder),this._hasNextTabstop.set(!this._session.isAtLastPlaceholder),this._handleChoice()}}_handleChoice(){if(!this._session||!this._editor.hasModel()){this._currentChoice=void 0;return}const{activeChoice:e}=this._session;if(!e||!this._choiceCompletions){this._choiceCompletions?.disable(),this._currentChoice=void 0;return}this._currentChoice!==e.choice&&(this._currentChoice=e.choice,this._choiceCompletions.enable(),queueMicrotask(()=>{jhe(this._editor,this._choiceCompletions.provider)}))}finish(){for(;this._inSnippet.get();)this.next()}cancel(e=!1){this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._snippetListener.clear(),this._currentChoice=void 0,this._session?.dispose(),this._session=void 0,this._modelVersionId=-1,e&&this._editor.setSelections([this._editor.getSelection()])}prev(){this._session?.prev(),this._updateState()}next(){this._session?.next(),this._updateState()}isInSnippet(){return!!this._inSnippet.get()}},ju=Jr,Jr.ID="snippetController2",Jr.InSnippetMode=new le("inSnippetMode",!1,m("inSnippetMode","Whether the editor in current in snippet mode")),Jr.HasNextTabstop=new le("hasNextTabstop",!1,m("hasNextTabstop","Whether there is a next tab stop when in snippet mode")),Jr.HasPrevTabstop=new le("hasPrevTabstop",!1,m("hasPrevTabstop","Whether there is a previous tab stop when in snippet mode")),Jr);Mn=ju=Qhe([p1(1,gs),p1(2,Se),p1(3,De),p1(4,Gn)],Mn);Ho(Mn.ID,Mn,4);const Hy=co.bindToContribution(Mn.get);ge(new Hy({id:"jumpToNextSnippetPlaceholder",precondition:re.and(Mn.InSnippetMode,Mn.HasNextTabstop),handler:o=>o.next(),kbOpts:{weight:130,kbExpr:K.textInputFocus,primary:2}}));ge(new Hy({id:"jumpToPrevSnippetPlaceholder",precondition:re.and(Mn.InSnippetMode,Mn.HasPrevTabstop),handler:o=>o.prev(),kbOpts:{weight:130,kbExpr:K.textInputFocus,primary:1026}}));ge(new Hy({id:"leaveSnippet",precondition:Mn.InSnippetMode,handler:o=>o.cancel(!0),kbOpts:{weight:130,kbExpr:K.textInputFocus,primary:9,secondary:[1033]}}));ge(new Hy({id:"acceptSnippet",precondition:Mn.InSnippetMode,handler:o=>o.finish()}));var Xhe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},CL=function(o,e){return function(t,i){e(t,i,o)}};let sN=class extends z{get isAcceptingPartially(){return this._isAcceptingPartially}constructor(e,t,i,n,s,r,a,l,c,d,h,u){super(),this.textModel=e,this.selectedSuggestItem=t,this._textModelVersionId=i,this._positions=n,this._debounceValue=s,this._suggestPreviewEnabled=r,this._suggestPreviewMode=a,this._inlineSuggestMode=l,this._enabled=c,this._instantiationService=d,this._commandService=h,this._languageConfigurationService=u,this._source=this._register(this._instantiationService.createInstance(nN,this.textModel,this._textModelVersionId,this._debounceValue)),this._isActive=Ge(this,!1),this._forceUpdateExplicitlySignal=Q_(this),this._selectedInlineCompletionId=Ge(this,void 0),this._primaryPosition=Ce(this,g=>this._positions.read(g)[0]??new P(1,1)),this._isAcceptingPartially=!1,this._preserveCurrentCompletionReasons=new Set([$a.Redo,$a.Undo,$a.AcceptWord]),this._fetchInlineCompletionsPromise=HZ({owner:this,createEmptyChangeSummary:()=>({preserveCurrentCompletion:!1,inlineCompletionTriggerKind:Cl.Automatic}),handleChange:(g,p)=>(g.didChange(this._textModelVersionId)&&this._preserveCurrentCompletionReasons.has(this._getReason(g.change))?p.preserveCurrentCompletion=!0:g.didChange(this._forceUpdateExplicitlySignal)&&(p.inlineCompletionTriggerKind=Cl.Explicit),!0)},(g,p)=>{if(this._forceUpdateExplicitlySignal.read(g),!(this._enabled.read(g)&&this.selectedSuggestItem.read(g)||this._isActive.read(g))){this._source.cancelUpdate();return}this._textModelVersionId.read(g);const b=this._source.suggestWidgetInlineCompletions.get(),C=this.selectedSuggestItem.read(g);if(b&&!C){const L=this._source.inlineCompletions.get();Xt(E=>{(!L||b.request.versionId>L.request.versionId)&&this._source.inlineCompletions.set(b.clone(),E),this._source.clearSuggestWidgetInlineCompletions(E)})}const w=this._primaryPosition.read(g),v={triggerKind:p.inlineCompletionTriggerKind,selectedSuggestionInfo:C?.toSelectedSuggestionInfo()},y=this.selectedInlineCompletion.get(),x=p.preserveCurrentCompletion||y?.forwardStable?y:void 0;return this._source.fetch(w,v,x)}),this._filteredInlineCompletionItems=dr({owner:this,equalsFn:Xk()},g=>{const p=this._source.inlineCompletions.read(g);if(!p)return[];const _=this._primaryPosition.read(g);return p.inlineCompletions.filter(C=>C.isVisible(this.textModel,_,g))}),this.selectedInlineCompletionIndex=Ce(this,g=>{const p=this._selectedInlineCompletionId.read(g),_=this._filteredInlineCompletionItems.read(g),b=this._selectedInlineCompletionId===void 0?-1:_.findIndex(C=>C.semanticId===p);return b===-1?(this._selectedInlineCompletionId.set(void 0,void 0),0):b}),this.selectedInlineCompletion=Ce(this,g=>{const p=this._filteredInlineCompletionItems.read(g),_=this.selectedInlineCompletionIndex.read(g);return p[_]}),this.activeCommands=dr({owner:this,equalsFn:Xk()},g=>this.selectedInlineCompletion.read(g)?.inlineCompletion.source.inlineCompletions.commands??[]),this.lastTriggerKind=this._source.inlineCompletions.map(this,g=>g?.request.context.triggerKind),this.inlineCompletionsCount=Ce(this,g=>{if(this.lastTriggerKind.read(g)===Cl.Explicit)return this._filteredInlineCompletionItems.read(g).length}),this.state=dr({owner:this,equalsFn:(g,p)=>!g||!p?g===p:s5(g.ghostTexts,p.ghostTexts)&&g.inlineCompletion===p.inlineCompletion&&g.suggestItem===p.suggestItem},g=>{const p=this.textModel,_=this.selectedSuggestItem.read(g);if(_){const b=nh(_.toSingleTextEdit(),p),C=this._computeAugmentation(b,g);if(!this._suggestPreviewEnabled.read(g)&&!C)return;const v=C?.edit??b,y=C?C.edit.text.length-b.text.length:0,x=this._suggestPreviewMode.read(g),L=this._positions.read(g),E=[v,...vL(this.textModel,L,v)],N=E.map((F,W)=>d5(F,p,x,L[W],y)).filter(_l),H=N[0]??new cw(v.range.endLineNumber,[]);return{edits:E,primaryGhostText:H,ghostTexts:N,inlineCompletion:C?.completion,suggestItem:_}}else{if(!this._isActive.read(g))return;const b=this.selectedInlineCompletion.read(g);if(!b)return;const C=b.toSingleTextEdit(g),w=this._inlineSuggestMode.read(g),v=this._positions.read(g),y=[C,...vL(this.textModel,v,C)],x=y.map((L,E)=>d5(L,p,w,v[E],0)).filter(_l);return x[0]?{edits:y,primaryGhostText:x[0],ghostTexts:x,inlineCompletion:b,suggestItem:void 0}:void 0}}),this.ghostTexts=dr({owner:this,equalsFn:s5},g=>{const p=this.state.read(g);if(p)return p.ghostTexts}),this.primaryGhostText=dr({owner:this,equalsFn:VB},g=>{const p=this.state.read(g);if(p)return p?.primaryGhostText}),this._register(X_(this._fetchInlineCompletionsPromise));let f;this._register(We(g=>{const _=this.state.read(g)?.inlineCompletion;if(_?.semanticId!==f?.semanticId&&(f=_,_)){const b=_.inlineCompletion,C=b.source;C.provider.handleItemDidShow?.(C.inlineCompletions,b.sourceInlineCompletion,b.insertText)}}))}_getReason(e){return e?.isUndoing?$a.Undo:e?.isRedoing?$a.Redo:this.isAcceptingPartially?$a.AcceptWord:$a.Other}async trigger(e){this._isActive.set(!0,e),await this._fetchInlineCompletionsPromise.get()}async triggerExplicitly(e){c_(e,t=>{this._isActive.set(!0,t),this._forceUpdateExplicitlySignal.trigger(t)}),await this._fetchInlineCompletionsPromise.get()}stop(e){c_(e,t=>{this._isActive.set(!1,t),this._source.clear(t)})}_computeAugmentation(e,t){const i=this.textModel,n=this._source.suggestWidgetInlineCompletions.read(t),s=n?n.inlineCompletions:[this.selectedInlineCompletion.read(t)].filter(_l);return KU(s,a=>{let l=a.toSingleTextEdit(t);return l=nh(l,i,I.fromPositions(l.range.getStartPosition(),e.range.getEndPosition())),UB(l,e)?{completion:a,edit:l}:void 0})}async _deltaSelectedInlineCompletionIndex(e){await this.triggerExplicitly();const t=this._filteredInlineCompletionItems.get()||[];if(t.length>0){const i=(this.selectedInlineCompletionIndex.get()+e+t.length)%t.length;this._selectedInlineCompletionId.set(t[i].semanticId,void 0)}else this._selectedInlineCompletionId.set(void 0,void 0)}async next(){await this._deltaSelectedInlineCompletionIndex(1)}async previous(){await this._deltaSelectedInlineCompletionIndex(-1)}async accept(e){if(e.getModel()!==this.textModel)throw new nt;const t=this.state.get();if(!t||t.primaryGhostText.isEmpty()||!t.inlineCompletion)return;const i=t.inlineCompletion.toInlineCompletion(void 0);if(i.command&&i.source.addRef(),e.pushUndoStop(),i.snippetInfo)e.executeEdits("inlineSuggestion.accept",[aa.replace(i.range,""),...i.additionalTextEdits]),e.setPosition(i.snippetInfo.range.getStartPosition(),"inlineCompletionAccept"),Mn.get(e)?.insert(i.snippetInfo.snippet,{undoStopBefore:!1});else{const n=t.edits,s=k5(n).map(r=>Fe.fromPositions(r));e.executeEdits("inlineSuggestion.accept",[...n.map(r=>aa.replace(r.range,r.text)),...i.additionalTextEdits]),e.setSelections(s,"inlineCompletionAccept")}this.stop(),i.command&&(await this._commandService.executeCommand(i.command.id,...i.command.arguments||[]).then(void 0,$n),i.source.removeRef())}async acceptNextWord(e){await this._acceptNext(e,(t,i)=>{const n=this.textModel.getLanguageIdAtPosition(t.lineNumber,t.column),s=this._languageConfigurationService.getLanguageConfiguration(n),r=new RegExp(s.wordDefinition.source,s.wordDefinition.flags.replace("g","")),a=i.match(r);let l=0;a&&a.index!==void 0?a.index===0?l=a[0].length:l=a.index:l=i.length;const d=/\s+/g.exec(i);return d&&d.index!==void 0&&d.index+d[0].length{const n=i.match(/\n/);return n&&n.index!==void 0?n.index+1:i.length},1)}async _acceptNext(e,t,i){if(e.getModel()!==this.textModel)throw new nt;const n=this.state.get();if(!n||n.primaryGhostText.isEmpty()||!n.inlineCompletion)return;const s=n.primaryGhostText,r=n.inlineCompletion.toInlineCompletion(void 0);if(r.snippetInfo||r.filterText!==r.insertText){await this.accept(e);return}const a=s.parts[0],l=new P(s.lineNumber,a.column),c=a.text,d=t(l,c);if(d===c.length&&s.parts.length===1){this.accept(e);return}const h=c.substring(0,d),u=this._positions.get(),f=u[0];r.source.addRef();try{this._isAcceptingPartially=!0;try{e.pushUndoStop();const g=I.fromPositions(f,l),p=e.getModel().getValueInRange(g)+h,_=new fa(g,p),b=[_,...vL(this.textModel,u,_)],C=k5(b).map(w=>Fe.fromPositions(w));e.executeEdits("inlineSuggestion.accept",b.map(w=>aa.replace(w.range,w.text))),e.setSelections(C,"inlineCompletionPartialAccept"),e.revealPositionInCenterIfOutsideViewport(e.getPosition(),1)}finally{this._isAcceptingPartially=!1}if(r.source.provider.handlePartialAccept){const g=I.fromPositions(r.range.getStartPosition(),Po.ofText(h).addToPosition(l)),p=e.getModel().getValueInRange(g,1);r.source.provider.handlePartialAccept(r.source.inlineCompletions,r.sourceInlineCompletion,p.length,{kind:i})}}finally{r.source.removeRef()}}handleSuggestAccepted(e){const t=nh(e.toSingleTextEdit(),this.textModel),i=this._computeAugmentation(t,void 0);if(!i)return;const n=i.completion.inlineCompletion;n.source.provider.handlePartialAccept?.(n.source.inlineCompletions,n.sourceInlineCompletion,t.text.length,{kind:2})}};sN=Xhe([CL(9,ke),CL(10,hi),CL(11,Gn)],sN);var $a;(function(o){o[o.Undo=0]="Undo",o[o.Redo=1]="Redo",o[o.AcceptWord=2]="AcceptWord",o[o.Other=3]="Other"})($a||($a={}));function vL(o,e,t){if(e.length===1)return[];const i=e[0],n=e.slice(1),s=t.range.getStartPosition(),r=t.range.getEndPosition(),a=o.getValueInRange(I.fromPositions(i,r)),l=o5(i,s);if(l.lineNumber<1)return Ze(new nt(`positionWithinTextEdit line number should be bigger than 0. - Invalid subtraction between ${i.toString()} and ${s.toString()}`)),[];const c=Jhe(t.text,l);return n.map(d=>{const h=Che(o5(d,s),r),u=o.getValueInRange(I.fromPositions(d,h)),f=Th(a,u),g=I.fromPositions(d,d.delta(0,f));return new fa(g,c)})}function Jhe(o,e){let t="";const i=dH(o);for(let n=e.lineNumber-1;ns.range,I.compareRangesUsingStarts)),i=new gT(e.apply(o)).getNewRanges();return e.inverse().apply(i).map(s=>s.getEndPosition())}var eue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},D5=function(o,e){return function(t,i){e(t,i,o)}},zm;class LM{constructor(e){this.name=e}select(e,t,i){if(i.length===0)return 0;const n=i[0].score[0];for(let s=0;sl&&h.type===i[c].completion.kind&&h.insertText===i[c].completion.insertText&&(l=h.touch,a=c),i[c].completion.preselect&&r===-1)return r=c}return a!==-1?a:r!==-1?r:0}toJSON(){return this._cache.toJSON()}fromJSON(e){this._cache.clear();const t=0;for(const[i,n]of e)n.touch=t,n.type=typeof n.type=="number"?n.type:Up.fromString(n.type),this._cache.set(i,n);this._seq=this._cache.size}}class iue extends LM{constructor(){super("recentlyUsedByPrefix"),this._trie=Bf.forStrings(),this._seq=0}memorize(e,t,i){const{word:n}=e.getWordUntilPosition(t),s=`${e.getLanguageId()}/${n}`;this._trie.set(s,{type:i.completion.kind,insertText:i.completion.insertText,touch:this._seq++})}select(e,t,i){const{word:n}=e.getWordUntilPosition(t);if(!n)return super.select(e,t,i);const s=`${e.getLanguageId()}/${n}`;let r=this._trie.get(s);if(r||(r=this._trie.findSubstr(s)),r)for(let a=0;ae.push([i,t])),e.sort((t,i)=>-(t[1].touch-i[1].touch)).forEach((t,i)=>t[1].touch=i),e.slice(0,200)}fromJSON(e){if(this._trie.clear(),e.length>0){this._seq=e[0][1].touch+1;for(const[t,i]of e)i.type=typeof i.type=="number"?i.type:Up.fromString(i.type),this._trie.set(t,i)}}}var Ec;let oN=(Ec=class{constructor(e,t){this._storageService=e,this._configService=t,this._disposables=new X,this._persistSoon=new ci(()=>this._saveState(),500),this._disposables.add(e.onWillSaveState(i=>{i.reason===aD.SHUTDOWN&&this._saveState()}))}dispose(){this._disposables.dispose(),this._persistSoon.dispose()}memorize(e,t,i){this._withStrategy(e,t).memorize(e,t,i),this._persistSoon.schedule()}select(e,t,i){return this._withStrategy(e,t).select(e,t,i)}_withStrategy(e,t){const i=this._configService.getValue("editor.suggestSelection",{overrideIdentifier:e.getLanguageIdAtPosition(t.lineNumber,t.column),resource:e.uri});if(this._strategy?.name!==i){this._saveState();const n=zm._strategyCtors.get(i)||I5;this._strategy=new n;try{const r=this._configService.getValue("editor.suggest.shareSuggestSelections")?0:1,a=this._storageService.get(`${zm._storagePrefix}/${i}`,r);a&&this._strategy.fromJSON(JSON.parse(a))}catch{}}return this._strategy}_saveState(){if(this._strategy){const t=this._configService.getValue("editor.suggest.shareSuggestSelections")?0:1,i=JSON.stringify(this._strategy);this._storageService.store(`${zm._storagePrefix}/${this._strategy.name}`,i,t,1)}}},zm=Ec,Ec._strategyCtors=new Map([["recentlyUsedByPrefix",iue],["recentlyUsed",tue],["first",I5]]),Ec._storagePrefix="suggest/memories",Ec);oN=zm=eue([D5(0,du),D5(1,lt)],oN);const YB=He("ISuggestMemories");Qe(YB,oN,1);var nue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},sue=function(o,e){return function(t,i){e(t,i,o)}},rN,xh;let pw=(xh=class{constructor(e,t){this._editor=e,this._enabled=!1,this._ckAtEnd=rN.AtEnd.bindTo(t),this._configListener=this._editor.onDidChangeConfiguration(i=>i.hasChanged(124)&&this._update()),this._update()}dispose(){this._configListener.dispose(),this._selectionListener?.dispose(),this._ckAtEnd.reset()}_update(){const e=this._editor.getOption(124)==="on";if(this._enabled!==e)if(this._enabled=e,this._enabled){const t=()=>{if(!this._editor.hasModel()){this._ckAtEnd.set(!1);return}const i=this._editor.getModel(),n=this._editor.getSelection(),s=i.getWordAtPosition(n.getStartPosition());if(!s){this._ckAtEnd.set(!1);return}this._ckAtEnd.set(s.endColumn===n.getStartPosition().column)};this._selectionListener=this._editor.onDidChangeCursorSelection(t),t()}else this._selectionListener&&(this._ckAtEnd.reset(),this._selectionListener.dispose(),this._selectionListener=void 0)}},rN=xh,xh.AtEnd=new le("atEndOfWord",!1),xh);pw=rN=nue([sue(1,De)],pw);var oue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},rue=function(o,e){return function(t,i){e(t,i,o)}},Um,kh;let Rg=(kh=class{constructor(e,t){this._editor=e,this._index=0,this._ckOtherSuggestions=Um.OtherSuggestions.bindTo(t)}dispose(){this.reset()}reset(){this._ckOtherSuggestions.reset(),this._listener?.dispose(),this._model=void 0,this._acceptNext=void 0,this._ignore=!1}set({model:e,index:t},i){if(e.items.length===0){this.reset();return}if(Um._moveIndex(!0,e,t)===t){this.reset();return}this._acceptNext=i,this._model=e,this._index=t,this._listener=this._editor.onDidChangeCursorPosition(()=>{this._ignore||this.reset()}),this._ckOtherSuggestions.set(!0)}static _moveIndex(e,t,i){let n=i;for(let s=t.items.length;s>0&&(n=(n+t.items.length+(e?1:-1))%t.items.length,!(n===i||!t.items[n].completion.additionalTextEdits));s--);return n}next(){this._move(!0)}prev(){this._move(!1)}_move(e){if(this._model)try{this._ignore=!0,this._index=Um._moveIndex(e,this._model,this._index),this._acceptNext({index:this._index,item:this._model.items[this._index],model:this._model})}finally{this._ignore=!1}}},Um=kh,kh.OtherSuggestions=new le("hasOtherSuggestions",!1),kh);Rg=Um=oue([rue(1,De)],Rg);class aue{constructor(e,t,i,n){this._disposables=new X,this._disposables.add(i.onDidSuggest(s=>{s.completionModel.items.length===0&&this.reset()})),this._disposables.add(i.onDidCancel(s=>{this.reset()})),this._disposables.add(t.onDidShow(()=>this._onItem(t.getFocusedItem()))),this._disposables.add(t.onDidFocus(this._onItem,this)),this._disposables.add(t.onDidHide(this.reset,this)),this._disposables.add(e.onWillType(s=>{if(this._active&&!t.isFrozen()&&i.state!==0){const r=s.charCodeAt(s.length-1);this._active.acceptCharacters.has(r)&&e.getOption(0)&&n(this._active.item)}}))}_onItem(e){if(!e||!Ps(e.item.completion.commitCharacters)){this.reset();return}if(this._active&&this._active.item.item===e.item)return;const t=new bU;for(const i of e.item.completion.commitCharacters)i.length>0&&t.add(i.charCodeAt(0));this._active={acceptCharacters:t,item:e}}reset(){this._active=void 0}dispose(){this._disposables.dispose()}}const Ys=class Ys{async provideSelectionRanges(e,t){const i=[];for(const n of t){const s=[];i.push(s);const r=new Map;await new Promise(a=>Ys._bracketsRightYield(a,0,e,n,r)),await new Promise(a=>Ys._bracketsLeftYield(a,0,e,n,r,s))}return i}static _bracketsRightYield(e,t,i,n,s){const r=new Map,a=Date.now();for(;;){if(t>=Ys._maxRounds){e();break}if(!n){e();break}const l=i.bracketPairs.findNextBracket(n);if(!l){e();break}if(Date.now()-a>Ys._maxDuration){setTimeout(()=>Ys._bracketsRightYield(e,t+1,i,n,s));break}if(l.bracketInfo.isOpeningBracket){const d=l.bracketInfo.bracketText,h=r.has(d)?r.get(d):0;r.set(d,h+1)}else{const d=l.bracketInfo.getOpeningBrackets()[0].bracketText;let h=r.has(d)?r.get(d):0;if(h-=1,r.set(d,Math.max(0,h)),h<0){let u=s.get(d);u||(u=new yn,s.set(d,u)),u.push(l.range)}}n=l.range.getEndPosition()}}static _bracketsLeftYield(e,t,i,n,s,r){const a=new Map,l=Date.now();for(;;){if(t>=Ys._maxRounds&&s.size===0){e();break}if(!n){e();break}const c=i.bracketPairs.findPrevBracket(n);if(!c){e();break}if(Date.now()-l>Ys._maxDuration){setTimeout(()=>Ys._bracketsLeftYield(e,t+1,i,n,s,r));break}if(c.bracketInfo.isOpeningBracket){const h=c.bracketInfo.bracketText;let u=a.has(h)?a.get(h):0;if(u-=1,a.set(h,Math.max(0,u)),u<0){const f=s.get(h);if(f){const g=f.shift();f.size===0&&s.delete(h);const p=I.fromPositions(c.range.getEndPosition(),g.getStartPosition()),_=I.fromPositions(c.range.getStartPosition(),g.getEndPosition());r.push({range:p}),r.push({range:_}),Ys._addBracketLeading(i,_,r)}}}else{const h=c.bracketInfo.getOpeningBrackets()[0].bracketText,u=a.has(h)?a.get(h):0;a.set(h,u+1)}n=c.range.getStartPosition()}}static _addBracketLeading(e,t,i){if(t.startLineNumber===t.endLineNumber)return;const n=t.startLineNumber,s=e.getLineFirstNonWhitespaceColumn(n);s!==0&&s!==t.startColumn&&(i.push({range:I.fromPositions(new P(n,s),t.getEndPosition())}),i.push({range:I.fromPositions(new P(n,1),t.getEndPosition())}));const r=n-1;if(r>0){const a=e.getLineFirstNonWhitespaceColumn(r);a===t.startColumn&&a!==e.getLineLastNonWhitespaceColumn(r)&&(i.push({range:I.fromPositions(new P(r,a),t.getEndPosition())}),i.push({range:I.fromPositions(new P(r,1),t.getEndPosition())}))}}};Ys._maxDuration=30,Ys._maxRounds=2;let aN=Ys;const $r=class $r{static async create(e,t){if(!t.getOption(119).localityBonus||!t.hasModel())return $r.None;const i=t.getModel(),n=t.getPosition();if(!e.canComputeWordRanges(i.uri))return $r.None;const[s]=await new aN().provideSelectionRanges(i,[n]);if(s.length===0)return $r.None;const r=await e.computeWordRanges(i.uri,s[0].range);if(!r)return $r.None;const a=i.getWordUntilPosition(n);return delete r[a.word],new class extends $r{distance(l,c){if(!n.equals(t.getPosition()))return 0;if(c.kind===17)return 2<<20;const d=typeof c.label=="string"?c.label:c.label.label,h=r[d];if(N5(h))return 2<<20;const u=SN(h,I.fromPositions(l),I.compareRangesUsingStarts),f=u>=0?h[u]:h[Math.max(0,~u-1)];let g=s.length;for(const p of s){if(!I.containsRange(p.range,f))break;g-=1}return g}}}};$r.None=new class extends $r{distance(){return 0}};let lN=$r;class Md{constructor(e,t,i,n,s,r,a=r_.default,l=void 0){this.clipboardText=l,this._snippetCompareFn=Md._compareCompletionItems,this._items=e,this._column=t,this._wordDistance=n,this._options=s,this._refilterKind=1,this._lineContext=i,this._fuzzyScoreOptions=a,r==="top"?this._snippetCompareFn=Md._compareCompletionItemsSnippetsUp:r==="bottom"&&(this._snippetCompareFn=Md._compareCompletionItemsSnippetsDown)}get lineContext(){return this._lineContext}set lineContext(e){(this._lineContext.leadingLineContent!==e.leadingLineContent||this._lineContext.characterCountDelta!==e.characterCountDelta)&&(this._refilterKind=this._lineContext.characterCountDelta0&&i[0].container.incomplete&&e.add(t);return e}get stats(){return this._ensureCachedState(),this._stats}_ensureCachedState(){this._refilterKind!==0&&this._createCachedState()}_createCachedState(){this._itemsByProvider=new Map;const e=[],{leadingLineContent:t,characterCountDelta:i}=this._lineContext;let n="",s="";const r=this._refilterKind===1?this._items:this._filteredItems,a=[],l=!this._options.filterGraceful||r.length>2e3?_g:Bq;for(let c=0;c=f)d.score=oa.Default;else if(typeof d.completion.filterText=="string"){const p=l(n,s,g,d.completion.filterText,d.filterTextLow,0,this._fuzzyScoreOptions);if(!p)continue;Ax(d.completion.filterText,d.textLabel)===0?d.score=p:(d.score=Aq(n,s,g,d.textLabel,d.labelLow,0),d.score[0]=p[0])}else{const p=l(n,s,g,d.textLabel,d.labelLow,0,this._fuzzyScoreOptions);if(!p)continue;d.score=p}}d.idx=c,d.distance=this._wordDistance.distance(d.position,d.completion),a.push(d),e.push(d.textLabel.length)}this._filteredItems=a.sort(this._snippetCompareFn),this._refilterKind=0,this._stats={pLabelLen:e.length?LL(e.length-.85,e,(c,d)=>c-d):0}}static _compareCompletionItems(e,t){return e.score[0]>t.score[0]?-1:e.score[0]t.distance?1:e.idxt.idx?1:0}static _compareCompletionItemsSnippetsDown(e,t){if(e.completion.kind!==t.completion.kind){if(e.completion.kind===27)return 1;if(t.completion.kind===27)return-1}return Md._compareCompletionItems(e,t)}static _compareCompletionItemsSnippetsUp(e,t){if(e.completion.kind!==t.completion.kind){if(e.completion.kind===27)return-1;if(t.completion.kind===27)return 1}return Md._compareCompletionItems(e,t)}}var lue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Ul=function(o,e){return function(t,i){e(t,i,o)}},cN;class cd{static shouldAutoTrigger(e){if(!e.hasModel())return!1;const t=e.getModel(),i=e.getPosition();t.tokenization.tokenizeIfCheap(i.lineNumber);const n=t.getWordAtPosition(i);return!(!n||n.endColumn!==i.column&&n.startColumn+1!==i.column||!isNaN(Number(n.word)))}constructor(e,t,i){this.leadingLineContent=e.getLineContent(t.lineNumber).substr(0,t.column-1),this.leadingWord=e.getWordUntilPosition(t),this.lineNumber=t.lineNumber,this.column=t.column,this.triggerOptions=i}}function cue(o,e,t){if(!e.getContextKeyValue(hs.inlineSuggestionVisible.key))return!0;const i=e.getContextKeyValue(hs.suppressSuggestions.key);return i!==void 0?!i:!o.getOption(62).suppressSuggestions}function due(o,e,t){if(!e.getContextKeyValue("inlineSuggestionVisible"))return!0;const i=e.getContextKeyValue(hs.suppressSuggestions.key);return i!==void 0?!i:!o.getOption(62).suppressSuggestions}let dN=cN=class{constructor(e,t,i,n,s,r,a,l,c){this._editor=e,this._editorWorkerService=t,this._clipboardService=i,this._telemetryService=n,this._logService=s,this._contextKeyService=r,this._configurationService=a,this._languageFeaturesService=l,this._envService=c,this._toDispose=new X,this._triggerCharacterListener=new X,this._triggerQuickSuggest=new wr,this._triggerState=void 0,this._completionDisposables=new X,this._onDidCancel=new A,this._onDidTrigger=new A,this._onDidSuggest=new A,this.onDidCancel=this._onDidCancel.event,this.onDidTrigger=this._onDidTrigger.event,this.onDidSuggest=this._onDidSuggest.event,this._telemetryGate=0,this._currentSelection=this._editor.getSelection()||new Fe(1,1,1,1),this._toDispose.add(this._editor.onDidChangeModel(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeModelLanguage(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeConfiguration(()=>{this._updateTriggerCharacters()})),this._toDispose.add(this._languageFeaturesService.completionProvider.onDidChange(()=>{this._updateTriggerCharacters(),this._updateActiveSuggestSession()}));let d=!1;this._toDispose.add(this._editor.onDidCompositionStart(()=>{d=!0})),this._toDispose.add(this._editor.onDidCompositionEnd(()=>{d=!1,this._onCompositionEnd()})),this._toDispose.add(this._editor.onDidChangeCursorSelection(h=>{d||this._onCursorChange(h)})),this._toDispose.add(this._editor.onDidChangeModelContent(()=>{!d&&this._triggerState!==void 0&&this._refilterCompletionItems()})),this._updateTriggerCharacters()}dispose(){xt(this._triggerCharacterListener),xt([this._onDidCancel,this._onDidSuggest,this._onDidTrigger,this._triggerQuickSuggest]),this._toDispose.dispose(),this._completionDisposables.dispose(),this.cancel()}_updateTriggerCharacters(){if(this._triggerCharacterListener.clear(),this._editor.getOption(92)||!this._editor.hasModel()||!this._editor.getOption(122))return;const e=new Map;for(const i of this._languageFeaturesService.completionProvider.all(this._editor.getModel()))for(const n of i.triggerCharacters||[]){let s=e.get(n);s||(s=new Set,e.set(n,s)),s.add(i)}const t=i=>{if(!due(this._editor,this._contextKeyService,this._configurationService)||cd.shouldAutoTrigger(this._editor))return;if(!i){const r=this._editor.getPosition();i=this._editor.getModel().getLineContent(r.lineNumber).substr(0,r.column-1)}let n="";Mh(i.charCodeAt(i.length-1))?wi(i.charCodeAt(i.length-2))&&(n=i.substr(i.length-2)):n=i.charAt(i.length-1);const s=e.get(n);if(s){const r=new Map;if(this._completionModel)for(const[a,l]of this._completionModel.getItemsByProvider())s.has(a)||r.set(a,l);this.trigger({auto:!0,triggerKind:1,triggerCharacter:n,retrigger:!!this._completionModel,clipboardText:this._completionModel?.clipboardText,completionOptions:{providerFilter:s,providerItemsToReuse:r}})}};this._triggerCharacterListener.add(this._editor.onDidType(t)),this._triggerCharacterListener.add(this._editor.onDidCompositionEnd(()=>t()))}get state(){return this._triggerState?this._triggerState.auto?2:1:0}cancel(e=!1){this._triggerState!==void 0&&(this._triggerQuickSuggest.cancel(),this._requestToken?.cancel(),this._requestToken=void 0,this._triggerState=void 0,this._completionModel=void 0,this._context=void 0,this._onDidCancel.fire({retrigger:e}))}clear(){this._completionDisposables.clear()}_updateActiveSuggestSession(){this._triggerState!==void 0&&(!this._editor.hasModel()||!this._languageFeaturesService.completionProvider.has(this._editor.getModel())?this.cancel():this.trigger({auto:this._triggerState.auto,retrigger:!0}))}_onCursorChange(e){if(!this._editor.hasModel())return;const t=this._currentSelection;if(this._currentSelection=this._editor.getSelection(),!e.selection.isEmpty()||e.reason!==0&&e.reason!==3||e.source!=="keyboard"&&e.source!=="deleteLeft"){this.cancel();return}this._triggerState===void 0&&e.reason===0?(t.containsRange(this._currentSelection)||t.getEndPosition().isBeforeOrEqual(this._currentSelection.getPosition()))&&this._doTriggerQuickSuggest():this._triggerState!==void 0&&e.reason===3&&this._refilterCompletionItems()}_onCompositionEnd(){this._triggerState===void 0?this._doTriggerQuickSuggest():this._refilterCompletionItems()}_doTriggerQuickSuggest(){m1.isAllOff(this._editor.getOption(90))||this._editor.getOption(119).snippetsPreventQuickSuggestions&&Mn.get(this._editor)?.isInSnippet()||(this.cancel(),this._triggerQuickSuggest.cancelAndSet(()=>{if(this._triggerState!==void 0||!cd.shouldAutoTrigger(this._editor)||!this._editor.hasModel()||!this._editor.hasWidgetFocus())return;const e=this._editor.getModel(),t=this._editor.getPosition(),i=this._editor.getOption(90);if(!m1.isAllOff(i)){if(!m1.isAllOn(i)){e.tokenization.tokenizeIfCheap(t.lineNumber);const n=e.tokenization.getLineTokens(t.lineNumber),s=n.getStandardTokenType(n.findTokenIndexAtOffset(Math.max(t.column-1-1,0)));if(m1.valueFor(i,s)!=="on")return}cue(this._editor,this._contextKeyService,this._configurationService)&&this._languageFeaturesService.completionProvider.has(e)&&this.trigger({auto:!0})}},this._editor.getOption(91)))}_refilterCompletionItems(){ai(this._editor.hasModel()),ai(this._triggerState!==void 0);const e=this._editor.getModel(),t=this._editor.getPosition(),i=new cd(e,t,{...this._triggerState,refilter:!0});this._onNewContext(i)}trigger(e){if(!this._editor.hasModel())return;const t=this._editor.getModel(),i=new cd(t,this._editor.getPosition(),e);this.cancel(e.retrigger),this._triggerState=e,this._onDidTrigger.fire({auto:e.auto,shy:e.shy??!1,position:this._editor.getPosition()}),this._context=i;let n={triggerKind:e.triggerKind??0};e.triggerCharacter&&(n={triggerKind:1,triggerCharacter:e.triggerCharacter}),this._requestToken=new In;const s=this._editor.getOption(113);let r=1;switch(s){case"top":r=0;break;case"bottom":r=2;break}const{itemKind:a,showDeprecated:l}=cN.createSuggestFilter(this._editor),c=new hw(r,e.completionOptions?.kindFilter??a,e.completionOptions?.providerFilter,e.completionOptions?.providerItemsToReuse,l),d=lN.create(this._editorWorkerService,this._editor),h=ZB(this._languageFeaturesService.completionProvider,t,this._editor.getPosition(),c,n,this._requestToken.token);Promise.all([h,d]).then(async([u,f])=>{if(this._requestToken?.dispose(),!this._editor.hasModel())return;let g=e?.clipboardText;if(!g&&u.needsClipboard&&(g=await this._clipboardService.readText()),this._triggerState===void 0)return;const p=this._editor.getModel(),_=new cd(p,this._editor.getPosition(),e),b={...r_.default,firstMatchCanBeWeak:!this._editor.getOption(119).matchOnWordStartOnly};if(this._completionModel=new Md(u.items,this._context.column,{leadingLineContent:_.leadingLineContent,characterCountDelta:_.column-this._context.column},f,this._editor.getOption(119),this._editor.getOption(113),b,g),this._completionDisposables.add(u.disposable),this._onNewContext(_),this._reportDurationsTelemetry(u.durations),!this._envService.isBuilt||this._envService.isExtensionDevelopment)for(const C of u.items)C.isInvalid&&this._logService.warn(`[suggest] did IGNORE invalid completion item from ${C.provider._debugDisplayName}`,C.completion)}).catch(Ze)}_reportDurationsTelemetry(e){this._telemetryGate++%230===0&&setTimeout(()=>{this._telemetryService.publicLog2("suggest.durations.json",{data:JSON.stringify(e)}),this._logService.debug("suggest.durations.json",e)})}static createSuggestFilter(e){const t=new Set;e.getOption(113)==="none"&&t.add(27);const n=e.getOption(119);return n.showMethods||t.add(0),n.showFunctions||t.add(1),n.showConstructors||t.add(2),n.showFields||t.add(3),n.showVariables||t.add(4),n.showClasses||t.add(5),n.showStructs||t.add(6),n.showInterfaces||t.add(7),n.showModules||t.add(8),n.showProperties||t.add(9),n.showEvents||t.add(10),n.showOperators||t.add(11),n.showUnits||t.add(12),n.showValues||t.add(13),n.showConstants||t.add(14),n.showEnums||t.add(15),n.showEnumMembers||t.add(16),n.showKeywords||t.add(17),n.showWords||t.add(18),n.showColors||t.add(19),n.showFiles||t.add(20),n.showReferences||t.add(21),n.showColors||t.add(22),n.showFolders||t.add(23),n.showTypeParameters||t.add(24),n.showSnippets||t.add(27),n.showUsers||t.add(25),n.showIssues||t.add(26),{itemKind:t,showDeprecated:n.showDeprecated}}_onNewContext(e){if(this._context){if(e.lineNumber!==this._context.lineNumber){this.cancel();return}if(pi(e.leadingLineContent)!==pi(this._context.leadingLineContent)){this.cancel();return}if(e.columnthis._context.leadingWord.startColumn){if(cd.shouldAutoTrigger(this._editor)&&this._context){const i=this._completionModel.getItemsByProvider();this.trigger({auto:this._context.triggerOptions.auto,retrigger:!0,clipboardText:this._completionModel.clipboardText,completionOptions:{providerItemsToReuse:i}})}return}if(e.column>this._context.column&&this._completionModel.getIncompleteProvider().size>0&&e.leadingWord.word.length!==0){const t=new Map,i=new Set;for(const[n,s]of this._completionModel.getItemsByProvider())s.length>0&&s[0].container.incomplete?i.add(n):t.set(n,s);this.trigger({auto:this._context.triggerOptions.auto,triggerKind:2,retrigger:!0,clipboardText:this._completionModel.clipboardText,completionOptions:{providerFilter:i,providerItemsToReuse:t}})}else{const t=this._completionModel.lineContext;let i=!1;if(this._completionModel.lineContext={leadingLineContent:e.leadingLineContent,characterCountDelta:e.column-this._context.column},this._completionModel.items.length===0){const n=cd.shouldAutoTrigger(this._editor);if(!this._context){this.cancel();return}if(n&&this._context.leadingWord.endColumn0,i&&e.leadingWord.word.length===0){this.cancel();return}}this._onDidSuggest.fire({completionModel:this._completionModel,triggerOptions:e.triggerOptions,isFrozen:i})}}}}};dN=cN=lue([Ul(1,Zc),Ul(2,wy),Ul(3,$s),Ul(4,gs),Ul(5,De),Ul(6,lt),Ul(7,Se),Ul(8,vT)],dN);const p0=class p0{constructor(e,t){this._disposables=new X,this._lastOvertyped=[],this._locked=!1,this._disposables.add(e.onWillType(()=>{if(this._locked||!e.hasModel())return;const i=e.getSelections(),n=i.length;let s=!1;for(let a=0;ap0._maxSelectionLength)return;this._lastOvertyped[a]={value:r.getValueInRange(l),multiline:l.startLineNumber!==l.endLineNumber}}})),this._disposables.add(t.onDidTrigger(i=>{this._locked=!0})),this._disposables.add(t.onDidCancel(i=>{this._locked=!1}))}getLastOvertypedInfo(e){if(e>=0&&e=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},wL=function(o,e){return function(t,i){e(t,i,o)}};let uN=class{constructor(e,t,i,n,s){this._menuId=t,this._menuService=n,this._contextKeyService=s,this._menuDisposables=new X,this.element=Z(e,ce(".suggest-status-bar"));const r=(a=>a instanceof so?i.createInstance(JT,a,{useComma:!0}):void 0);this._leftActions=new oo(this.element,{actionViewItemProvider:r}),this._rightActions=new oo(this.element,{actionViewItemProvider:r}),this._leftActions.domNode.classList.add("left"),this._rightActions.domNode.classList.add("right")}dispose(){this._menuDisposables.dispose(),this._leftActions.dispose(),this._rightActions.dispose(),this.element.remove()}show(){const e=this._menuService.createMenu(this._menuId,this._contextKeyService),t=()=>{const i=[],n=[];for(const[s,r]of e.getActions())s==="left"?i.push(...r):n.push(...r);this._leftActions.clear(),this._leftActions.push(i),this._rightActions.clear(),this._rightActions.push(n)};this._menuDisposables.add(e.onDidChange(()=>t())),this._menuDisposables.add(e)}hide(){this._menuDisposables.clear()}};uN=hue([wL(2,ke),wL(3,yr),wL(4,De)],uN);var uue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},fue=function(o,e){return function(t,i){e(t,i,o)}};function xM(o){return!!o&&!!(o.completion.documentation||o.completion.detail&&o.completion.detail!==o.completion.label)}let fN=class{constructor(e,t){this._editor=e,this._onDidClose=new A,this.onDidClose=this._onDidClose.event,this._onDidChangeContents=new A,this.onDidChangeContents=this._onDidChangeContents.event,this._disposables=new X,this._renderDisposeable=new X,this._borderWidth=1,this._size=new rt(330,0),this.domNode=ce(".suggest-details"),this.domNode.classList.add("no-docs"),this._markdownRenderer=t.createInstance(Wh,{editor:e}),this._body=ce(".body"),this._scrollbar=new J0(this._body,{alwaysConsumeMouseWheel:!0}),Z(this.domNode,this._scrollbar.getDomNode()),this._disposables.add(this._scrollbar),this._header=Z(this._body,ce(".header")),this._close=Z(this._header,ce("span"+Ee.asCSSSelector(ie.close))),this._close.title=m("details.close","Close"),this._type=Z(this._header,ce("p.type")),this._docs=Z(this._body,ce("p.docs")),this._configureFont(),this._disposables.add(this._editor.onDidChangeConfiguration(i=>{i.hasChanged(50)&&this._configureFont()}))}dispose(){this._disposables.dispose(),this._renderDisposeable.dispose()}_configureFont(){const e=this._editor.getOptions(),t=e.get(50),i=t.getMassagedFontFamily(),n=e.get(120)||t.fontSize,s=e.get(121)||t.lineHeight,r=t.fontWeight,a=`${n}px`,l=`${s}px`;this.domNode.style.fontSize=a,this.domNode.style.lineHeight=`${s/n}`,this.domNode.style.fontWeight=r,this.domNode.style.fontFeatureSettings=t.fontFeatureSettings,this._type.style.fontFamily=i,this._close.style.height=l,this._close.style.width=l}getLayoutInfo(){const e=this._editor.getOption(121)||this._editor.getOption(50).lineHeight,t=this._borderWidth,i=t*2;return{lineHeight:e,borderWidth:t,borderHeight:i,verticalPadding:22,horizontalPadding:14}}renderLoading(){this._type.textContent=m("loading","Loading..."),this._docs.textContent="",this.domNode.classList.remove("no-docs","no-type"),this.layout(this.size.width,this.getLayoutInfo().lineHeight*2),this._onDidChangeContents.fire(this)}renderItem(e,t){this._renderDisposeable.clear();let{detail:i,documentation:n}=e.completion;if(t){let s="";s+=`score: ${e.score[0]} -`,s+=`prefix: ${e.word??"(no prefix)"} -`,s+=`word: ${e.completion.filterText?e.completion.filterText+" (filterText)":e.textLabel} -`,s+=`distance: ${e.distance} (localityBonus-setting) -`,s+=`index: ${e.idx}, based on ${e.completion.sortText&&`sortText: "${e.completion.sortText}"`||"label"} -`,s+=`commit_chars: ${e.completion.commitCharacters?.join("")} -`,n=new Js().appendCodeblock("empty",s),i=`Provider: ${e.provider._debugDisplayName}`}if(!t&&!xM(e)){this.clearContents();return}if(this.domNode.classList.remove("no-docs","no-type"),i){const s=i.length>1e5?`${i.substr(0,1e5)}…`:i;this._type.textContent=s,this._type.title=s,ns(this._type),this._type.classList.toggle("auto-wrap",!/\r?\n^\s+/gmi.test(s))}else xn(this._type),this._type.title="",Cn(this._type),this.domNode.classList.add("no-type");if(xn(this._docs),typeof n=="string")this._docs.classList.remove("markdown-docs"),this._docs.textContent=n;else if(n){this._docs.classList.add("markdown-docs"),xn(this._docs);const s=this._markdownRenderer.render(n);this._docs.appendChild(s.element),this._renderDisposeable.add(s),this._renderDisposeable.add(this._markdownRenderer.onDidRenderAsync(()=>{this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}))}this.domNode.style.userSelect="text",this.domNode.tabIndex=-1,this._close.onmousedown=s=>{s.preventDefault(),s.stopPropagation()},this._close.onclick=s=>{s.preventDefault(),s.stopPropagation(),this._onDidClose.fire()},this._body.scrollTop=0,this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}clearContents(){this.domNode.classList.add("no-docs"),this._type.textContent="",this._docs.textContent=""}get isEmpty(){return this.domNode.classList.contains("no-docs")}get size(){return this._size}layout(e,t){const i=new rt(e,t);rt.equals(i,this._size)||(this._size=i,bV(this.domNode,e,t)),this._scrollbar.scanDomNode()}scrollDown(e=8){this._body.scrollTop+=e}scrollUp(e=8){this._body.scrollTop-=e}scrollTop(){this._body.scrollTop=0}scrollBottom(){this._body.scrollTop=this._body.scrollHeight}pageDown(){this.scrollDown(80)}pageUp(){this.scrollUp(80)}set borderWidth(e){this._borderWidth=e}get borderWidth(){return this._borderWidth}};fN=uue([fue(1,ke)],fN);class gue{constructor(e,t){this.widget=e,this._editor=t,this.allowEditorOverflow=!0,this._disposables=new X,this._added=!1,this._preferAlignAtTop=!0,this._resizable=new mM,this._resizable.domNode.classList.add("suggest-details-container"),this._resizable.domNode.appendChild(e.domNode),this._resizable.enableSashes(!1,!0,!0,!1);let i,n,s=0,r=0;this._disposables.add(this._resizable.onDidWillResize(()=>{i=this._topLeft,n=this._resizable.size})),this._disposables.add(this._resizable.onDidResize(a=>{if(i&&n){this.widget.layout(a.dimension.width,a.dimension.height);let l=!1;a.west&&(r=n.width-a.dimension.width,l=!0),a.north&&(s=n.height-a.dimension.height,l=!0),l&&this._applyTopLeft({top:i.top+s,left:i.left+r})}a.done&&(i=void 0,n=void 0,s=0,r=0,this._userSize=a.dimension)})),this._disposables.add(this.widget.onDidChangeContents(()=>{this._anchorBox&&this._placeAtAnchor(this._anchorBox,this._userSize??this.widget.size,this._preferAlignAtTop)}))}dispose(){this._resizable.dispose(),this._disposables.dispose(),this.hide()}getId(){return"suggest.details"}getDomNode(){return this._resizable.domNode}getPosition(){return this._topLeft?{preference:this._topLeft}:null}show(){this._added||(this._editor.addOverlayWidget(this),this._added=!0)}hide(e=!1){this._resizable.clearSashHoverState(),this._added&&(this._editor.removeOverlayWidget(this),this._added=!1,this._anchorBox=void 0,this._topLeft=void 0),e&&(this._userSize=void 0,this.widget.clearContents())}placeAtAnchor(e,t){const i=e.getBoundingClientRect();this._anchorBox=i,this._preferAlignAtTop=t,this._placeAtAnchor(this._anchorBox,this._userSize??this.widget.size,t)}_placeAtAnchor(e,t,i){const n=Ah(this.getDomNode().ownerDocument.body),s=this.widget.getLayoutInfo(),r=new rt(220,2*s.lineHeight),a=e.top,l=(function(){const y=n.width-(e.left+e.width+s.borderWidth+s.horizontalPadding),x=-s.borderWidth+e.left+e.width,L=new rt(y,n.height-e.top-s.borderHeight-s.verticalPadding),E=L.with(void 0,e.top+e.height-s.borderHeight-s.verticalPadding);return{top:a,left:x,fit:y-t.width,maxSizeTop:L,maxSizeBottom:E,minSize:r.with(Math.min(y,r.width))}})(),c=(function(){const y=e.left-s.borderWidth-s.horizontalPadding,x=Math.max(s.horizontalPadding,e.left-t.width-s.borderWidth),L=new rt(y,n.height-e.top-s.borderHeight-s.verticalPadding),E=L.with(void 0,e.top+e.height-s.borderHeight-s.verticalPadding);return{top:a,left:x,fit:y-t.width,maxSizeTop:L,maxSizeBottom:E,minSize:r.with(Math.min(y,r.width))}})(),d=(function(){const y=e.left,x=-s.borderWidth+e.top+e.height,L=new rt(e.width-s.borderHeight,n.height-e.top-e.height-s.verticalPadding);return{top:x,left:y,fit:L.height-t.height,maxSizeBottom:L,maxSizeTop:L,minSize:r.with(L.width)}})(),h=[l,c,d],u=h.find(y=>y.fit>=0)??h.sort((y,x)=>x.fit-y.fit)[0],f=e.top+e.height-s.borderHeight;let g,p=t.height;const _=Math.max(u.maxSizeTop.height,u.maxSizeBottom.height);p>_&&(p=_);let b;i?p<=u.maxSizeTop.height?(g=!0,b=u.maxSizeTop):(g=!1,b=u.maxSizeBottom):p<=u.maxSizeBottom.height?(g=!1,b=u.maxSizeBottom):(g=!0,b=u.maxSizeTop);let{top:C,left:w}=u;!g&&p>e.height&&(C=f-p);const v=this._editor.getDomNode();if(v){const y=v.getBoundingClientRect();C-=y.top,w-=y.left}this._applyTopLeft({left:w,top:C}),this._resizable.enableSashes(!g,u===l,g,u!==l),this._resizable.minSize=u.minSize,this._resizable.maxSize=b,this._resizable.layout(p,Math.min(b.width,t.width)),this.widget.layout(this._resizable.size.width,this._resizable.size.height)}_applyTopLeft(e){this._topLeft=e,this._editor.layoutOverlayWidget(this)}}var ta;(function(o){o[o.FILE=0]="FILE",o[o.FOLDER=1]="FOLDER",o[o.ROOT_FOLDER=2]="ROOT_FOLDER"})(ta||(ta={}));const mue=/(?:\/|^)(?:([^\/]+)\/)?([^\/]+)$/;function _1(o,e,t,i,n){if(Ee.isThemeIcon(n))return[`codicon-${n.id}`,"predefined-file-icon"];if(ve.isUri(n))return[];const s=i===ta.ROOT_FOLDER?["rootfolder-icon"]:i===ta.FOLDER?["folder-icon"]:["file-icon"];if(t){let r;if(t.scheme===Te.data)r=Oc.parseMetaData(t).get(Oc.META_DATA_LABEL);else{const a=t.path.match(mue);a?(r=b1(a[2].toLowerCase()),a[1]&&s.push(`${b1(a[1].toLowerCase())}-name-dir-icon`)):r=b1(t.authority.toLowerCase())}if(i===ta.ROOT_FOLDER)s.push(`${r}-root-name-folder-icon`);else if(i===ta.FOLDER)s.push(`${r}-name-folder-icon`);else{if(r){if(s.push(`${r}-name-file-icon`),s.push("name-file-icon"),r.length<=255){const l=r.split(".");for(let c=1;c=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},yL=function(o,e){return function(t,i){e(t,i,o)}};function QB(o){return`suggest-aria-id:${o}`}const bue=Wi("suggest-more-info",ie.chevronRight,m("suggestMoreInfoIcon","Icon for more information in the suggest widget."));var lr;const Cue=new(lr=class{extract(e,t){if(e.textLabel.match(lr._regexStrict))return t[0]=e.textLabel,!0;if(e.completion.detail&&e.completion.detail.match(lr._regexStrict))return t[0]=e.completion.detail,!0;if(e.completion.documentation){const i=typeof e.completion.documentation=="string"?e.completion.documentation:e.completion.documentation.value,n=lr._regexRelaxed.exec(i);if(n&&(n.index===0||n.index+n[0].length===i.length))return t[0]=n[0],!0}return!1}},lr._regexRelaxed=/(#([\da-fA-F]{3}){1,2}|(rgb|hsl)a\(\s*(\d{1,3}%?\s*,\s*){3}(1|0?\.\d+)\)|(rgb|hsl)\(\s*\d{1,3}%?(\s*,\s*\d{1,3}%?){2}\s*\))/,lr._regexStrict=new RegExp(`^${lr._regexRelaxed.source}$`,"i"),lr);let gN=class{constructor(e,t,i,n){this._editor=e,this._modelService=t,this._languageService=i,this._themeService=n,this._onDidToggleDetails=new A,this.onDidToggleDetails=this._onDidToggleDetails.event,this.templateId="suggestion"}dispose(){this._onDidToggleDetails.dispose()}renderTemplate(e){const t=new X,i=e;i.classList.add("show-file-icons");const n=Z(e,ce(".icon")),s=Z(n,ce("span.colorspan")),r=Z(e,ce(".contents")),a=Z(r,ce(".main")),l=Z(a,ce(".icon-label.codicon")),c=Z(a,ce("span.left")),d=Z(a,ce("span.right")),h=new gv(c,{supportHighlights:!0,supportIcons:!0});t.add(h);const u=Z(c,ce("span.signature-label")),f=Z(c,ce("span.qualifier-label")),g=Z(d,ce("span.details-label")),p=Z(d,ce("span.readMore"+Ee.asCSSSelector(bue)));return p.title=m("readMore","Read More"),{root:i,left:c,right:d,icon:n,colorspan:s,iconLabel:h,iconContainer:l,parametersLabel:u,qualifierLabel:f,detailsLabel:g,readMore:p,disposables:t,configureFont:()=>{const b=this._editor.getOptions(),C=b.get(50),w=C.getMassagedFontFamily(),v=C.fontFeatureSettings,y=b.get(120)||C.fontSize,x=b.get(121)||C.lineHeight,L=C.fontWeight,E=C.letterSpacing,N=`${y}px`,H=`${x}px`,F=`${E}px`;i.style.fontSize=N,i.style.fontWeight=L,i.style.letterSpacing=F,a.style.fontFamily=w,a.style.fontFeatureSettings=v,a.style.lineHeight=H,n.style.height=H,n.style.width=H,p.style.height=H,p.style.width=H}}}renderElement(e,t,i){i.configureFont();const{completion:n}=e;i.root.id=QB(t),i.colorspan.style.backgroundColor="";const s={labelEscapeNewLines:!0,matches:iy(e.score)},r=[];if(n.kind===19&&Cue.extract(e,r))i.icon.className="icon customcolor",i.iconContainer.className="icon hide",i.colorspan.style.backgroundColor=r[0];else if(n.kind===20&&this._themeService.getFileIconTheme().hasFileIcons){i.icon.className="icon hide",i.iconContainer.className="icon hide";const a=_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:e.textLabel}),ta.FILE),l=_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:n.detail}),ta.FILE);s.extraClasses=a.length>l.length?a:l}else n.kind===23&&this._themeService.getFileIconTheme().hasFolderIcons?(i.icon.className="icon hide",i.iconContainer.className="icon hide",s.extraClasses=[_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:e.textLabel}),ta.FOLDER),_1(this._modelService,this._languageService,ve.from({scheme:"fake",path:n.detail}),ta.FOLDER)].flat()):(i.icon.className="icon hide",i.iconContainer.className="",i.iconContainer.classList.add("suggest-icon",...Ee.asClassNameArray(Up.toIcon(n.kind))));n.tags&&n.tags.indexOf(1)>=0&&(s.extraClasses=(s.extraClasses||[]).concat(["deprecated"]),s.matches=[]),i.iconLabel.setLabel(e.textLabel,void 0,s),typeof n.label=="string"?(i.parametersLabel.textContent="",i.detailsLabel.textContent=SL(n.detail||""),i.root.classList.add("string-label")):(i.parametersLabel.textContent=SL(n.label.detail||""),i.detailsLabel.textContent=SL(n.label.description||""),i.root.classList.remove("string-label")),this._editor.getOption(119).showInlineDetails?ns(i.detailsLabel):Cn(i.detailsLabel),xM(e)?(i.right.classList.add("can-expand-details"),ns(i.readMore),i.readMore.onmousedown=a=>{a.stopPropagation(),a.preventDefault()},i.readMore.onclick=a=>{a.stopPropagation(),a.preventDefault(),this._onDidToggleDetails.fire()}):(i.right.classList.remove("can-expand-details"),Cn(i.readMore),i.readMore.onmousedown=null,i.readMore.onclick=null)}disposeTemplate(e){e.disposables.dispose()}};gN=_ue([yL(1,Fi),yL(2,qt),yL(3,en)],gN);function SL(o){return o.replace(/\r\n|\r|\n/g,"")}var vue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},C1=function(o,e){return function(t,i){e(t,i,o)}},qu;D("editorSuggestWidget.background",no,m("editorSuggestWidgetBackground","Background color of the suggest widget."));D("editorSuggestWidget.border",LT,m("editorSuggestWidgetBorder","Border color of the suggest widget."));const wue=D("editorSuggestWidget.foreground",Sa,m("editorSuggestWidgetForeground","Foreground color of the suggest widget."));D("editorSuggestWidget.selectedForeground",AC,m("editorSuggestWidgetSelectedForeground","Foreground color of the selected entry in the suggest widget."));D("editorSuggestWidget.selectedIconForeground",TT,m("editorSuggestWidgetSelectedIconForeground","Icon foreground color of the selected entry in the suggest widget."));const yue=D("editorSuggestWidget.selectedBackground",PC,m("editorSuggestWidgetSelectedBackground","Background color of the selected entry in the suggest widget."));D("editorSuggestWidget.highlightForeground",Nm,m("editorSuggestWidgetHighlightForeground","Color of the match highlights in the suggest widget."));D("editorSuggestWidget.focusHighlightForeground",Wj,m("editorSuggestWidgetFocusHighlightForeground","Color of the match highlights in the suggest widget when an item is focused."));D("editorSuggestWidgetStatus.foreground",Ae(wue,.5),m("editorSuggestWidgetStatusForeground","Foreground color of the suggest widget status."));class Sue{constructor(e,t){this._service=e,this._key=`suggestWidget.size/${t.getEditorType()}/${t instanceof Gh}`}restore(){const e=this._service.get(this._key,0)??"";try{const t=JSON.parse(e);if(rt.is(t))return rt.lift(t)}catch{}}store(e){this._service.store(this._key,JSON.stringify(e),0,1)}reset(){this._service.remove(this._key,0)}}var Nc;let mN=(Nc=class{constructor(e,t,i,n,s){this.editor=e,this._storageService=t,this._state=0,this._isAuto=!1,this._pendingLayout=new Dn,this._pendingShowDetails=new Dn,this._ignoreFocusEvents=!1,this._forceRenderingAbove=!1,this._explainMode=!1,this._showTimeout=new wr,this._disposables=new X,this._onDidSelect=new Nh,this._onDidFocus=new Nh,this._onDidHide=new A,this._onDidShow=new A,this.onDidSelect=this._onDidSelect.event,this.onDidFocus=this._onDidFocus.event,this.onDidHide=this._onDidHide.event,this.onDidShow=this._onDidShow.event,this._onDetailsKeydown=new A,this.onDetailsKeyDown=this._onDetailsKeydown.event,this.element=new mM,this.element.domNode.classList.add("editor-widget","suggest-widget"),this._contentWidget=new Lue(this,e),this._persistedSize=new Sue(t,e);class r{constructor(f,g,p=!1,_=!1){this.persistedSize=f,this.currentSize=g,this.persistHeight=p,this.persistWidth=_}}let a;this._disposables.add(this.element.onDidWillResize(()=>{this._contentWidget.lockPreference(),a=new r(this._persistedSize.restore(),this.element.size)})),this._disposables.add(this.element.onDidResize(u=>{if(this._resize(u.dimension.width,u.dimension.height),a&&(a.persistHeight=a.persistHeight||!!u.north||!!u.south,a.persistWidth=a.persistWidth||!!u.east||!!u.west),!!u.done){if(a){const{itemHeight:f,defaultSize:g}=this.getLayoutInfo(),p=Math.round(f/2);let{width:_,height:b}=this.element.size;(!a.persistHeight||Math.abs(a.currentSize.height-b)<=p)&&(b=a.persistedSize?.height??g.height),(!a.persistWidth||Math.abs(a.currentSize.width-_)<=p)&&(_=a.persistedSize?.width??g.width),this._persistedSize.store(new rt(_,b))}this._contentWidget.unlockPreference(),a=void 0}})),this._messageElement=Z(this.element.domNode,ce(".message")),this._listElement=Z(this.element.domNode,ce(".tree"));const l=this._disposables.add(s.createInstance(fN,this.editor));l.onDidClose(this.toggleDetails,this,this._disposables),this._details=new gue(l,this.editor);const c=()=>this.element.domNode.classList.toggle("no-icons",!this.editor.getOption(119).showIcons);c();const d=s.createInstance(gN,this.editor);this._disposables.add(d),this._disposables.add(d.onDidToggleDetails(()=>this.toggleDetails())),this._list=new go("SuggestWidget",this._listElement,{getHeight:u=>this.getLayoutInfo().itemHeight,getTemplateId:u=>"suggestion"},[d],{alwaysConsumeMouseWheel:!0,useShadows:!1,mouseSupport:!1,multipleSelectionSupport:!1,accessibilityProvider:{getRole:()=>"option",getWidgetAriaLabel:()=>m("suggest","Suggest"),getWidgetRole:()=>"listbox",getAriaLabel:u=>{let f=u.textLabel;if(typeof u.completion.label!="string"){const{detail:b,description:C}=u.completion.label;b&&C?f=m("label.full","{0} {1}, {2}",f,b,C):b?f=m("label.detail","{0} {1}",f,b):C&&(f=m("label.desc","{0}, {1}",f,C))}if(!u.isResolved||!this._isDetailsVisible())return f;const{documentation:g,detail:p}=u.completion,_=$p("{0}{1}",p||"",g?typeof g=="string"?g:g.value:"");return m("ariaCurrenttSuggestionReadDetails","{0}, docs: {1}",f,_)}}}),this._list.style($g({listInactiveFocusBackground:yue,listInactiveFocusOutline:Ut})),this._status=s.createInstance(uN,this.element.domNode,bc);const h=()=>this.element.domNode.classList.toggle("with-status-bar",this.editor.getOption(119).showStatusBar);h(),this._disposables.add(n.onDidColorThemeChange(u=>this._onThemeChange(u))),this._onThemeChange(n.getColorTheme()),this._disposables.add(this._list.onMouseDown(u=>this._onListMouseDownOrTap(u))),this._disposables.add(this._list.onTap(u=>this._onListMouseDownOrTap(u))),this._disposables.add(this._list.onDidChangeSelection(u=>this._onListSelection(u))),this._disposables.add(this._list.onDidChangeFocus(u=>this._onListFocus(u))),this._disposables.add(this.editor.onDidChangeCursorSelection(()=>this._onCursorSelectionChanged())),this._disposables.add(this.editor.onDidChangeConfiguration(u=>{u.hasChanged(119)&&(h(),c()),this._completionModel&&(u.hasChanged(50)||u.hasChanged(120)||u.hasChanged(121))&&this._list.splice(0,this._list.length,this._completionModel.items)})),this._ctxSuggestWidgetVisible=Ne.Visible.bindTo(i),this._ctxSuggestWidgetDetailsVisible=Ne.DetailsVisible.bindTo(i),this._ctxSuggestWidgetMultipleSuggestions=Ne.MultipleSuggestions.bindTo(i),this._ctxSuggestWidgetHasFocusedSuggestion=Ne.HasFocusedSuggestion.bindTo(i),this._disposables.add(jt(this._details.widget.domNode,"keydown",u=>{this._onDetailsKeydown.fire(u)})),this._disposables.add(this.editor.onMouseDown(u=>this._onEditorMouseDown(u)))}dispose(){this._details.widget.dispose(),this._details.dispose(),this._list.dispose(),this._status.dispose(),this._disposables.dispose(),this._loadingTimeout?.dispose(),this._pendingLayout.dispose(),this._pendingShowDetails.dispose(),this._showTimeout.dispose(),this._contentWidget.dispose(),this.element.dispose()}_onEditorMouseDown(e){this._details.widget.domNode.contains(e.target.element)?this._details.widget.domNode.focus():this.element.domNode.contains(e.target.element)&&this.editor.focus()}_onCursorSelectionChanged(){this._state!==0&&this._contentWidget.layout()}_onListMouseDownOrTap(e){typeof e.element>"u"||typeof e.index>"u"||(e.browserEvent.preventDefault(),e.browserEvent.stopPropagation(),this._select(e.element,e.index))}_onListSelection(e){e.elements.length&&this._select(e.elements[0],e.indexes[0])}_select(e,t){const i=this._completionModel;i&&(this._onDidSelect.fire({item:e,index:t,model:i}),this.editor.focus())}_onThemeChange(e){this._details.widget.borderWidth=mc(e.type)?2:1}_onListFocus(e){if(this._ignoreFocusEvents)return;if(!e.elements.length){this._currentSuggestionDetails&&(this._currentSuggestionDetails.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=void 0),this.editor.setAriaOptions({activeDescendant:void 0}),this._ctxSuggestWidgetHasFocusedSuggestion.set(!1);return}if(!this._completionModel)return;this._ctxSuggestWidgetHasFocusedSuggestion.set(!0);const t=e.elements[0],i=e.indexes[0];t!==this._focusedItem&&(this._currentSuggestionDetails?.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=t,this._list.reveal(i),this._currentSuggestionDetails=wa(async n=>{const s=rg(()=>{this._isDetailsVisible()&&this.showDetails(!0)},250),r=n.onCancellationRequested(()=>s.dispose());try{return await t.resolve(n)}finally{s.dispose(),r.dispose()}}),this._currentSuggestionDetails.then(()=>{i>=this._list.length||t!==this._list.element(i)||(this._ignoreFocusEvents=!0,this._list.splice(i,1,[t]),this._list.setFocus([i]),this._ignoreFocusEvents=!1,this._isDetailsVisible()?this.showDetails(!1):this.element.domNode.classList.remove("docs-side"),this.editor.setAriaOptions({activeDescendant:QB(i)}))}).catch(Ze)),this._onDidFocus.fire({item:t,index:i,model:this._completionModel})}_setState(e){if(this._state!==e)switch(this._state=e,this.element.domNode.classList.toggle("frozen",e===4),this.element.domNode.classList.remove("message"),e){case 0:Cn(this._messageElement,this._listElement,this._status.element),this._details.hide(!0),this._status.hide(),this._contentWidget.hide(),this._ctxSuggestWidgetVisible.reset(),this._ctxSuggestWidgetMultipleSuggestions.reset(),this._ctxSuggestWidgetHasFocusedSuggestion.reset(),this._showTimeout.cancel(),this.element.domNode.classList.remove("visible"),this._list.splice(0,this._list.length),this._focusedItem=void 0,this._cappedHeight=void 0,this._explainMode=!1;break;case 1:this.element.domNode.classList.add("message"),this._messageElement.textContent=qu.LOADING_MESSAGE,Cn(this._listElement,this._status.element),ns(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0,Hh(qu.LOADING_MESSAGE);break;case 2:this.element.domNode.classList.add("message"),this._messageElement.textContent=qu.NO_SUGGESTIONS_MESSAGE,Cn(this._listElement,this._status.element),ns(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0,Hh(qu.NO_SUGGESTIONS_MESSAGE);break;case 3:Cn(this._messageElement),ns(this._listElement,this._status.element),this._show();break;case 4:Cn(this._messageElement),ns(this._listElement,this._status.element),this._show();break;case 5:Cn(this._messageElement),ns(this._listElement,this._status.element),this._details.show(),this._show();break}}_show(){this._status.show(),this._contentWidget.show(),this._layout(this._persistedSize.restore()),this._ctxSuggestWidgetVisible.set(!0),this._showTimeout.cancelAndSet(()=>{this.element.domNode.classList.add("visible"),this._onDidShow.fire(this)},100)}showTriggered(e,t){this._state===0&&(this._contentWidget.setPosition(this.editor.getPosition()),this._isAuto=!!e,this._isAuto||(this._loadingTimeout=rg(()=>this._setState(1),t)))}showSuggestions(e,t,i,n,s){if(this._contentWidget.setPosition(this.editor.getPosition()),this._loadingTimeout?.dispose(),this._currentSuggestionDetails?.cancel(),this._currentSuggestionDetails=void 0,this._completionModel!==e&&(this._completionModel=e),i&&this._state!==2&&this._state!==0){this._setState(4);return}const r=this._completionModel.items.length,a=r===0;if(this._ctxSuggestWidgetMultipleSuggestions.set(r>1),a){this._setState(n?0:2),this._completionModel=void 0;return}this._focusedItem=void 0,this._onDidFocus.pause(),this._onDidSelect.pause();try{this._list.splice(0,this._list.length,this._completionModel.items),this._setState(i?4:3),this._list.reveal(t,0),this._list.setFocus(s?[]:[t])}finally{this._onDidFocus.resume(),this._onDidSelect.resume()}this._pendingLayout.value=pC(fe(this.element.domNode),()=>{this._pendingLayout.clear(),this._layout(this.element.size),this._details.widget.domNode.classList.remove("focused")})}focusSelected(){this._list.length>0&&this._list.setFocus([0])}selectNextPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageDown(),!0;case 1:return!this._isAuto;default:return this._list.focusNextPage(),!0}}selectNext(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusNext(1,!0),!0}}selectLast(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollBottom(),!0;case 1:return!this._isAuto;default:return this._list.focusLast(),!0}}selectPreviousPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageUp(),!0;case 1:return!this._isAuto;default:return this._list.focusPreviousPage(),!0}}selectPrevious(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusPrevious(1,!0),!1}}selectFirst(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollTop(),!0;case 1:return!this._isAuto;default:return this._list.focusFirst(),!0}}getFocusedItem(){if(this._state!==0&&this._state!==2&&this._state!==1&&this._completionModel&&this._list.getFocus().length>0)return{item:this._list.getFocusedElements()[0],index:this._list.getFocus()[0],model:this._completionModel}}toggleDetailsFocus(){this._state===5?(this._setState(3),this._details.widget.domNode.classList.remove("focused")):this._state===3&&this._isDetailsVisible()&&(this._setState(5),this._details.widget.domNode.classList.add("focused"))}toggleDetails(){this._isDetailsVisible()?(this._pendingShowDetails.clear(),this._ctxSuggestWidgetDetailsVisible.set(!1),this._setDetailsVisible(!1),this._details.hide(),this.element.domNode.classList.remove("shows-details")):(xM(this._list.getFocusedElements()[0])||this._explainMode)&&(this._state===3||this._state===5||this._state===4)&&(this._ctxSuggestWidgetDetailsVisible.set(!0),this._setDetailsVisible(!0),this.showDetails(!1))}showDetails(e){this._pendingShowDetails.value=pC(fe(this.element.domNode),()=>{this._pendingShowDetails.clear(),this._details.show(),e?this._details.widget.renderLoading():this._details.widget.renderItem(this._list.getFocusedElements()[0],this._explainMode),this._details.widget.isEmpty?this._details.hide():(this._positionDetails(),this.element.domNode.classList.add("shows-details")),this.editor.focus()})}toggleExplainMode(){this._list.getFocusedElements()[0]&&(this._explainMode=!this._explainMode,this._isDetailsVisible()?this.showDetails(!1):this.toggleDetails())}resetPersistedSize(){this._persistedSize.reset()}hideWidget(){this._pendingLayout.clear(),this._pendingShowDetails.clear(),this._loadingTimeout?.dispose(),this._setState(0),this._onDidHide.fire(this),this.element.clearSashHoverState();const e=this._persistedSize.restore(),t=Math.ceil(this.getLayoutInfo().itemHeight*4.3);e&&e.heightr&&(s=r);const a=this._completionModel?this._completionModel.stats.pLabelLen*i.typicalHalfwidthCharacterWidth:s,l=i.statusBarHeight+this._list.contentHeight+i.borderHeight,c=i.itemHeight+i.statusBarHeight,d=gi(this.editor.getDomNode()),h=this.editor.getScrolledVisiblePosition(this.editor.getPosition()),u=d.top+h.top+h.height,f=Math.min(t.height-u-i.verticalPadding,l),g=d.top+h.top-i.verticalPadding,p=Math.min(g,l);let _=Math.min(Math.max(p,f)+i.borderHeight,l);n===this._cappedHeight?.capped&&(n=this._cappedHeight.wanted),n_&&(n=_),n>f||this._forceRenderingAbove&&g>150?(this._contentWidget.setPreference(1),this.element.enableSashes(!0,!0,!1,!1),_=p):(this._contentWidget.setPreference(2),this.element.enableSashes(!1,!0,!0,!1),_=f),this.element.preferredSize=new rt(a,i.defaultSize.height),this.element.maxSize=new rt(r,_),this.element.minSize=new rt(220,c),this._cappedHeight=n===l?{wanted:this._cappedHeight?.wanted??e.height,capped:n}:void 0}this._resize(s,n)}_resize(e,t){const{width:i,height:n}=this.element.maxSize;e=Math.min(i,e),t=Math.min(n,t);const{statusBarHeight:s}=this.getLayoutInfo();this._list.layout(t-s,e),this._listElement.style.height=`${t-s}px`,this.element.layout(t,e),this._contentWidget.layout(),this._positionDetails()}_positionDetails(){this._isDetailsVisible()&&this._details.placeAtAnchor(this.element.domNode,this._contentWidget.getPosition()?.preference[0]===2)}getLayoutInfo(){const e=this.editor.getOption(50),t=bn(this.editor.getOption(121)||e.lineHeight,8,1e3),i=!this.editor.getOption(119).showStatusBar||this._state===2||this._state===1?0:t,n=this._details.widget.borderWidth,s=2*n;return{itemHeight:t,statusBarHeight:i,borderWidth:n,borderHeight:s,typicalHalfwidthCharacterWidth:e.typicalHalfwidthCharacterWidth,verticalPadding:22,horizontalPadding:14,defaultSize:new rt(430,i+12*t+s)}}_isDetailsVisible(){return this._storageService.getBoolean("expandSuggestionDocs",0,!1)}_setDetailsVisible(e){this._storageService.store("expandSuggestionDocs",e,0,0)}forceRenderingAbove(){this._forceRenderingAbove||(this._forceRenderingAbove=!0,this._layout(this._persistedSize.restore()))}stopForceRenderingAbove(){this._forceRenderingAbove=!1}},qu=Nc,Nc.LOADING_MESSAGE=m("suggestWidget.loading","Loading..."),Nc.NO_SUGGESTIONS_MESSAGE=m("suggestWidget.noSuggestions","No suggestions."),Nc);mN=qu=vue([C1(1,du),C1(2,De),C1(3,en),C1(4,ke)],mN);class Lue{constructor(e,t){this._widget=e,this._editor=t,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._preferenceLocked=!1,this._added=!1,this._hidden=!1}dispose(){this._added&&(this._added=!1,this._editor.removeContentWidget(this))}getId(){return"editor.widget.suggestWidget"}getDomNode(){return this._widget.element.domNode}show(){this._hidden=!1,this._added||(this._added=!0,this._editor.addContentWidget(this))}hide(){this._hidden||(this._hidden=!0,this.layout())}layout(){this._editor.layoutContentWidget(this)}getPosition(){return this._hidden||!this._position||!this._preference?null:{position:this._position,preference:[this._preference]}}beforeRender(){const{height:e,width:t}=this._widget.element.size,{borderWidth:i,horizontalPadding:n}=this._widget.getLayoutInfo();return new rt(t+2*i+n,e+2*i)}afterRender(e){this._widget._afterRender(e)}setPreference(e){this._preferenceLocked||(this._preference=e)}lockPreference(){this._preferenceLocked=!0}unlockPreference(){this._preferenceLocked=!1}setPosition(e){this._position=e}}var xue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Hu=function(o,e){return function(t,i){e(t,i,o)}},pN;class kue{constructor(e,t){if(this._model=e,this._position=t,this._decorationOptions=kt.register({description:"suggest-line-suffix",stickiness:1}),e.getLineMaxColumn(t.lineNumber)!==t.column){const n=e.getOffsetAt(t),s=e.getPositionAt(n+1);e.changeDecorations(r=>{this._marker&&r.removeDecoration(this._marker),this._marker=r.addDecoration(I.fromPositions(t,s),this._decorationOptions)})}}dispose(){this._marker&&!this._model.isDisposed()&&this._model.changeDecorations(e=>{e.removeDecoration(this._marker),this._marker=void 0})}delta(e){if(this._model.isDisposed()||this._position.lineNumber!==e.lineNumber)return 0;if(this._marker){const t=this._model.getDecorationRange(this._marker);return this._model.getOffsetAt(t.getStartPosition())-this._model.getOffsetAt(e)}else return this._model.getLineMaxColumn(e.lineNumber)-e.column}}var Dh;let mr=(Dh=class{static get(e){return e.getContribution(pN.ID)}constructor(e,t,i,n,s,r,a){this._memoryService=t,this._commandService=i,this._contextKeyService=n,this._instantiationService=s,this._logService=r,this._telemetryService=a,this._lineSuffix=new Dn,this._toDispose=new X,this._selectors=new Due(h=>h.priority),this._onWillInsertSuggestItem=new A,this.onWillInsertSuggestItem=this._onWillInsertSuggestItem.event,this.editor=e,this.model=s.createInstance(dN,this.editor),this._selectors.register({priority:0,select:(h,u,f)=>this._memoryService.select(h,u,f)});const l=Ne.InsertMode.bindTo(n);l.set(e.getOption(119).insertMode),this._toDispose.add(this.model.onDidTrigger(()=>l.set(e.getOption(119).insertMode))),this.widget=this._toDispose.add(new nS(fe(e.getDomNode()),()=>{const h=this._instantiationService.createInstance(mN,this.editor);this._toDispose.add(h),this._toDispose.add(h.onDidSelect(_=>this._insertSuggestion(_,0),this));const u=new aue(this.editor,h,this.model,_=>this._insertSuggestion(_,2));this._toDispose.add(u);const f=Ne.MakesTextEdit.bindTo(this._contextKeyService),g=Ne.HasInsertAndReplaceRange.bindTo(this._contextKeyService),p=Ne.CanResolve.bindTo(this._contextKeyService);return this._toDispose.add(_e(()=>{f.reset(),g.reset(),p.reset()})),this._toDispose.add(h.onDidFocus(({item:_})=>{const b=this.editor.getPosition(),C=_.editStart.column,w=b.column;let v=!0;this.editor.getOption(1)==="smart"&&this.model.state===2&&!_.completion.additionalTextEdits&&!(_.completion.insertTextRules&4)&&w-C===_.completion.insertText.length&&(v=this.editor.getModel().getValueInRange({startLineNumber:b.lineNumber,startColumn:C,endLineNumber:b.lineNumber,endColumn:w})!==_.completion.insertText),f.set(v),g.set(!P.equals(_.editInsertEnd,_.editReplaceEnd)),p.set(!!_.provider.resolveCompletionItem||!!_.completion.documentation||_.completion.detail!==_.completion.label)})),this._toDispose.add(h.onDetailsKeyDown(_=>{if(_.toKeyCodeChord().equals(new kl(!0,!1,!1,!1,33))||Ue&&_.toKeyCodeChord().equals(new kl(!1,!1,!1,!0,33))){_.stopPropagation();return}_.toKeyCodeChord().isModifierKey()||this.editor.focus()})),h})),this._overtypingCapturer=this._toDispose.add(new nS(fe(e.getDomNode()),()=>this._toDispose.add(new hN(this.editor,this.model)))),this._alternatives=this._toDispose.add(new nS(fe(e.getDomNode()),()=>this._toDispose.add(new Rg(this.editor,this._contextKeyService)))),this._toDispose.add(s.createInstance(pw,e)),this._toDispose.add(this.model.onDidTrigger(h=>{this.widget.value.showTriggered(h.auto,h.shy?250:50),this._lineSuffix.value=new kue(this.editor.getModel(),h.position)})),this._toDispose.add(this.model.onDidSuggest(h=>{if(h.triggerOptions.shy)return;let u=-1;for(const g of this._selectors.itemsOrderedByPriorityDesc)if(u=g.select(this.editor.getModel(),this.editor.getPosition(),h.completionModel.items),u!==-1)break;if(u===-1&&(u=0),this.model.state===0)return;let f=!1;if(h.triggerOptions.auto){const g=this.editor.getOption(119);g.selectionMode==="never"||g.selectionMode==="always"?f=g.selectionMode==="never":g.selectionMode==="whenTriggerCharacter"?f=h.triggerOptions.triggerKind!==1:g.selectionMode==="whenQuickSuggestion"&&(f=h.triggerOptions.triggerKind===1&&!h.triggerOptions.refilter)}this.widget.value.showSuggestions(h.completionModel,u,h.isFrozen,h.triggerOptions.auto,f)})),this._toDispose.add(this.model.onDidCancel(h=>{h.retrigger||this.widget.value.hideWidget()})),this._toDispose.add(this.editor.onDidBlurEditorWidget(()=>{this.model.cancel(),this.model.clear()}));const c=Ne.AcceptSuggestionsOnEnter.bindTo(n),d=()=>{const h=this.editor.getOption(1);c.set(h==="on"||h==="smart")};this._toDispose.add(this.editor.onDidChangeConfiguration(()=>d())),d()}dispose(){this._alternatives.dispose(),this._toDispose.dispose(),this.widget.dispose(),this.model.dispose(),this._lineSuffix.dispose(),this._onWillInsertSuggestItem.dispose()}_insertSuggestion(e,t){if(!e||!e.item){this._alternatives.value.reset(),this.model.cancel(),this.model.clear();return}if(!this.editor.hasModel())return;const i=Mn.get(this.editor);if(!i)return;this._onWillInsertSuggestItem.fire({item:e.item});const n=this.editor.getModel(),s=n.getAlternativeVersionId(),{item:r}=e,a=[],l=new In;t&1||this.editor.pushUndoStop();const c=this.getOverwriteInfo(r,!!(t&8));this._memoryService.memorize(n,this.editor.getPosition(),r);const d=r.isResolved;let h=-1,u=-1;if(Array.isArray(r.completion.additionalTextEdits)){this.model.cancel();const g=qh.capture(this.editor);this.editor.executeEdits("suggestController.additionalTextEdits.sync",r.completion.additionalTextEdits.map(p=>{let _=I.lift(p.range);if(_.startLineNumber===r.position.lineNumber&&_.startColumn>r.position.column){const b=this.editor.getPosition().column-r.position.column,C=b,w=I.spansMultipleLines(_)?0:b;_=new I(_.startLineNumber,_.startColumn+C,_.endLineNumber,_.endColumn+w)}return aa.replaceMove(_,p.text)})),g.restoreRelativeVerticalPositionOfCursor(this.editor)}else if(!d){const g=new Hs;let p;const _=n.onDidChangeContent(v=>{if(v.isFlush){l.cancel(),_.dispose();return}for(const y of v.changes){const x=I.getEndPosition(y.range);(!p||P.isBefore(x,p))&&(p=x)}}),b=t;t|=2;let C=!1;const w=this.editor.onWillType(()=>{w.dispose(),C=!0,b&2||this.editor.pushUndoStop()});a.push(r.resolve(l.token).then(()=>{if(!r.completion.additionalTextEdits||l.token.isCancellationRequested)return;if(p&&r.completion.additionalTextEdits.some(y=>P.isBefore(p,I.getStartPosition(y.range))))return!1;C&&this.editor.pushUndoStop();const v=qh.capture(this.editor);return this.editor.executeEdits("suggestController.additionalTextEdits.async",r.completion.additionalTextEdits.map(y=>aa.replaceMove(I.lift(y.range),y.text))),v.restoreRelativeVerticalPositionOfCursor(this.editor),(C||!(b&2))&&this.editor.pushUndoStop(),!0}).then(v=>{this._logService.trace("[suggest] async resolving of edits DONE (ms, applied?)",g.elapsed(),v),u=v===!0?1:v===!1?0:-2}).finally(()=>{_.dispose(),w.dispose()}))}let{insertText:f}=r.completion;if(r.completion.insertTextRules&4||(f=Mg.escape(f)),this.model.cancel(),i.insert(f,{overwriteBefore:c.overwriteBefore,overwriteAfter:c.overwriteAfter,undoStopBefore:!1,undoStopAfter:!1,adjustWhitespace:!(r.completion.insertTextRules&1),clipboardText:e.model.clipboardText,overtypingCapturer:this._overtypingCapturer.value}),t&2||this.editor.pushUndoStop(),r.completion.command)if(r.completion.command.id===_w.id)this.model.trigger({auto:!0,retrigger:!0});else{const g=new Hs;a.push(this._commandService.executeCommand(r.completion.command.id,...r.completion.command.arguments?[...r.completion.command.arguments]:[]).catch(p=>{r.completion.extensionId?$n(p):Ze(p)}).finally(()=>{h=g.elapsed()}))}t&4&&this._alternatives.value.set(e,g=>{for(l.cancel();n.canUndo();){s!==n.getAlternativeVersionId()&&n.undo(),this._insertSuggestion(g,3|(t&8?8:0));break}}),this._alertCompletionItem(r),Promise.all(a).finally(()=>{this._reportSuggestionAcceptedTelemetry(r,n,d,h,u,e.index,e.model.items),this.model.clear(),l.dispose()})}_reportSuggestionAcceptedTelemetry(e,t,i,n,s,r,a){if(Math.floor(Math.random()*100)===0)return;const l=new Map;for(let u=0;u1?c[0]:-1;this._telemetryService.publicLog2("suggest.acceptedSuggestion",{extensionId:e.extensionId?.value??"unknown",providerId:e.provider._debugDisplayName??"unknown",kind:e.completion.kind,basenameHash:ZN(Fo(t.uri)).toString(16),languageId:t.getLanguageId(),fileExtension:Yq(t.uri),resolveInfo:e.provider.resolveCompletionItem?i?1:0:-1,resolveDuration:e.resolveDuration,commandDuration:n,additionalEditsAsync:s,index:r,firstIndex:h})}getOverwriteInfo(e,t){ai(this.editor.hasModel());let i=this.editor.getOption(119).insertMode==="replace";t&&(i=!i);const n=e.position.column-e.editStart.column,s=(i?e.editReplaceEnd.column:e.editInsertEnd.column)-e.position.column,r=this.editor.getPosition().column-e.position.column,a=this._lineSuffix.value?this._lineSuffix.value.delta(this.editor.getPosition()):0;return{overwriteBefore:n+r,overwriteAfter:s+a}}_alertCompletionItem(e){if(Ps(e.completion.additionalTextEdits)){const t=m("aria.alert.snippet","Accepting '{0}' made {1} additional edits",e.textLabel,e.completion.additionalTextEdits.length);El(t)}}triggerSuggest(e,t,i){this.editor.hasModel()&&(this.model.trigger({auto:t??!1,completionOptions:{providerFilter:e,kindFilter:i?new Set:void 0}}),this.editor.revealPosition(this.editor.getPosition(),0),this.editor.focus())}triggerSuggestAndAcceptBest(e){if(!this.editor.hasModel())return;const t=this.editor.getPosition(),i=()=>{t.equals(this.editor.getPosition())&&this._commandService.executeCommand(e.fallback)},n=s=>{if(s.completion.insertTextRules&4||s.completion.additionalTextEdits)return!0;const r=this.editor.getPosition(),a=s.editStart.column,l=r.column;return l-a!==s.completion.insertText.length?!0:this.editor.getModel().getValueInRange({startLineNumber:r.lineNumber,startColumn:a,endLineNumber:r.lineNumber,endColumn:l})!==s.completion.insertText};J.once(this.model.onDidTrigger)(s=>{const r=[];J.any(this.model.onDidTrigger,this.model.onDidCancel)(()=>{xt(r),i()},void 0,r),this.model.onDidSuggest(({completionModel:a})=>{if(xt(r),a.items.length===0){i();return}const l=this._memoryService.select(this.editor.getModel(),this.editor.getPosition(),a.items),c=a.items[l];if(!n(c)){i();return}this.editor.pushUndoStop(),this._insertSuggestion({index:l,item:c,model:a},7)},void 0,r)}),this.model.trigger({auto:!1,shy:!0}),this.editor.revealPosition(t,0),this.editor.focus()}acceptSelectedSuggestion(e,t){const i=this.widget.value.getFocusedItem();let n=0;e&&(n|=4),t&&(n|=8),this._insertSuggestion(i,n)}acceptNextSuggestion(){this._alternatives.value.next()}acceptPrevSuggestion(){this._alternatives.value.prev()}cancelSuggestWidget(){this.model.cancel(),this.model.clear(),this.widget.value.hideWidget()}focusSuggestion(){this.widget.value.focusSelected()}selectNextSuggestion(){this.widget.value.selectNext()}selectNextPageSuggestion(){this.widget.value.selectNextPage()}selectLastSuggestion(){this.widget.value.selectLast()}selectPrevSuggestion(){this.widget.value.selectPrevious()}selectPrevPageSuggestion(){this.widget.value.selectPreviousPage()}selectFirstSuggestion(){this.widget.value.selectFirst()}toggleSuggestionDetails(){this.widget.value.toggleDetails()}toggleExplainMode(){this.widget.value.toggleExplainMode()}toggleSuggestionFocus(){this.widget.value.toggleDetailsFocus()}resetWidgetSize(){this.widget.value.resetPersistedSize()}forceRenderingAbove(){this.widget.value.forceRenderingAbove()}stopForceRenderingAbove(){this.widget.isInitialized&&this.widget.value.stopForceRenderingAbove()}registerSelector(e){return this._selectors.register(e)}},pN=Dh,Dh.ID="editor.contrib.suggestController",Dh);mr=pN=xue([Hu(1,YB),Hu(2,hi),Hu(3,De),Hu(4,ke),Hu(5,gs),Hu(6,$s)],mr);class Due{constructor(e){this.prioritySelector=e,this._items=new Array}register(e){if(this._items.indexOf(e)!==-1)throw new Error("Value is already registered");return this._items.push(e),this._items.sort((t,i)=>this.prioritySelector(i)-this.prioritySelector(t)),{dispose:()=>{const t=this._items.indexOf(e);t>=0&&this._items.splice(t,1)}}}get itemsOrderedByPriorityDesc(){return this._items}}const _0=class _0 extends bi{constructor(){super({id:_0.id,label:m("suggest.trigger.label","Trigger Suggest"),alias:"Trigger Suggest",precondition:re.and(K.writable,K.hasCompletionItemProvider,Ne.Visible.toNegated()),kbOpts:{kbExpr:K.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[521,2087]},weight:100}})}run(e,t,i){const n=mr.get(t);if(!n)return;let s;i&&typeof i=="object"&&i.auto===!0&&(s=!0),n.triggerSuggest(void 0,s,void 0)}};_0.id="editor.action.triggerSuggest";let _w=_0;Ho(mr.ID,mr,2);mi(_w);const Us=190,Pn=co.bindToContribution(mr.get);ge(new Pn({id:"acceptSelectedSuggestion",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion),handler(o){o.acceptSelectedSuggestion(!0,!1)},kbOpts:[{primary:2,kbExpr:re.and(Ne.Visible,K.textInputFocus),weight:Us},{primary:3,kbExpr:re.and(Ne.Visible,K.textInputFocus,Ne.AcceptSuggestionsOnEnter,Ne.MakesTextEdit),weight:Us}],menuOpts:[{menuId:bc,title:m("accept.insert","Insert"),group:"left",order:1,when:Ne.HasInsertAndReplaceRange.toNegated()},{menuId:bc,title:m("accept.insert","Insert"),group:"left",order:1,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("insert"))},{menuId:bc,title:m("accept.replace","Replace"),group:"left",order:1,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("replace"))}]}));ge(new Pn({id:"acceptAlternativeSelectedSuggestion",precondition:re.and(Ne.Visible,K.textInputFocus,Ne.HasFocusedSuggestion),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:1027,secondary:[1026]},handler(o){o.acceptSelectedSuggestion(!1,!0)},menuOpts:[{menuId:bc,group:"left",order:2,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("insert")),title:m("accept.replace","Replace")},{menuId:bc,group:"left",order:2,when:re.and(Ne.HasInsertAndReplaceRange,Ne.InsertMode.isEqualTo("replace")),title:m("accept.insert","Insert")}]}));bt.registerCommandAlias("acceptSelectedSuggestionOnEnter","acceptSelectedSuggestion");ge(new Pn({id:"hideSuggestWidget",precondition:Ne.Visible,handler:o=>o.cancelSuggestWidget(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:9,secondary:[1033]}}));ge(new Pn({id:"selectNextSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectNextSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}}));ge(new Pn({id:"selectNextPageSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectNextPageSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:12,secondary:[2060]}}));ge(new Pn({id:"selectLastSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectLastSuggestion()}));ge(new Pn({id:"selectPrevSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectPrevSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}}));ge(new Pn({id:"selectPrevPageSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectPrevPageSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:11,secondary:[2059]}}));ge(new Pn({id:"selectFirstSuggestion",precondition:re.and(Ne.Visible,re.or(Ne.MultipleSuggestions,Ne.HasFocusedSuggestion.negate())),handler:o=>o.selectFirstSuggestion()}));ge(new Pn({id:"focusSuggestion",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion.negate()),handler:o=>o.focusSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[2087]}}}));ge(new Pn({id:"focusAndAcceptSuggestion",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion.negate()),handler:o=>{o.focusSuggestion(),o.acceptSelectedSuggestion(!0,!1)}}));ge(new Pn({id:"toggleSuggestionDetails",precondition:re.and(Ne.Visible,Ne.HasFocusedSuggestion),handler:o=>o.toggleSuggestionDetails(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[2087]}},menuOpts:[{menuId:bc,group:"right",order:1,when:re.and(Ne.DetailsVisible,Ne.CanResolve),title:m("detail.more","Show Less")},{menuId:bc,group:"right",order:1,when:re.and(Ne.DetailsVisible.toNegated(),Ne.CanResolve),title:m("detail.less","Show More")}]}));ge(new Pn({id:"toggleExplainMode",precondition:Ne.Visible,handler:o=>o.toggleExplainMode(),kbOpts:{weight:100,primary:2138}}));ge(new Pn({id:"toggleSuggestionFocus",precondition:Ne.Visible,handler:o=>o.toggleSuggestionFocus(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2570,mac:{primary:778}}}));ge(new Pn({id:"insertBestCompletion",precondition:re.and(K.textInputFocus,re.equals("config.editor.tabCompletion","on"),pw.AtEnd,Ne.Visible.toNegated(),Rg.OtherSuggestions.toNegated(),Mn.InSnippetMode.toNegated()),handler:(o,e)=>{o.triggerSuggestAndAcceptBest(Oi(e)?{fallback:"tab",...e}:{fallback:"tab"})},kbOpts:{weight:Us,primary:2}}));ge(new Pn({id:"insertNextSuggestion",precondition:re.and(K.textInputFocus,re.equals("config.editor.tabCompletion","on"),Rg.OtherSuggestions,Ne.Visible.toNegated(),Mn.InSnippetMode.toNegated()),handler:o=>o.acceptNextSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:2}}));ge(new Pn({id:"insertPrevSuggestion",precondition:re.and(K.textInputFocus,re.equals("config.editor.tabCompletion","on"),Rg.OtherSuggestions,Ne.Visible.toNegated(),Mn.InSnippetMode.toNegated()),handler:o=>o.acceptPrevSuggestion(),kbOpts:{weight:Us,kbExpr:K.textInputFocus,primary:1026}}));mi(class extends bi{constructor(){super({id:"editor.action.resetSuggestSize",label:m("suggest.reset.label","Reset Suggest Widget Size"),alias:"Reset Suggest Widget Size",precondition:void 0})}run(o,e){mr.get(e)?.resetWidgetSize()}});class Iue extends z{get selectedItem(){return this._currentSuggestItemInfo}constructor(e,t,i){super(),this.editor=e,this.suggestControllerPreselector=t,this.onWillAccept=i,this.isSuggestWidgetVisible=!1,this.isShiftKeyPressed=!1,this._isActive=!1,this._currentSuggestItemInfo=void 0,this._onDidSelectedItemChange=this._register(new A),this.onDidSelectedItemChange=this._onDidSelectedItemChange.event,this._register(e.onKeyDown(s=>{s.shiftKey&&!this.isShiftKeyPressed&&(this.isShiftKeyPressed=!0,this.update(this._isActive))})),this._register(e.onKeyUp(s=>{s.shiftKey&&this.isShiftKeyPressed&&(this.isShiftKeyPressed=!1,this.update(this._isActive))}));const n=mr.get(this.editor);if(n){this._register(n.registerSelector({priority:100,select:(a,l,c)=>{const d=this.editor.getModel();if(!d)return-1;const h=this.suggestControllerPreselector(),u=h?nh(h,d):void 0;if(!u)return-1;const f=P.lift(l),g=c.map((_,b)=>{const C=Sp.fromSuggestion(n,d,f,_,this.isShiftKeyPressed),w=nh(C.toSingleTextEdit(),d),v=UB(u,w);return{index:b,valid:v,prefixLength:w.text.length,suggestItem:_}}).filter(_=>_&&_.valid&&_.prefixLength>0),p=fT(g,rs(_=>_.prefixLength,ia));return p?p.index:-1}}));let s=!1;const r=()=>{s||(s=!0,this._register(n.widget.value.onDidShow(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})),this._register(n.widget.value.onDidHide(()=>{this.isSuggestWidgetVisible=!1,this.update(!1)})),this._register(n.widget.value.onDidFocus(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})))};this._register(J.once(n.model.onDidTrigger)(a=>{r()})),this._register(n.onWillInsertSuggestItem(a=>{const l=this.editor.getPosition(),c=this.editor.getModel();if(!l||!c)return;const d=Sp.fromSuggestion(n,c,l,a.item,this.isShiftKeyPressed);this.onWillAccept(d)}))}this.update(this._isActive)}update(e){const t=this.getSuggestItemInfo();(this._isActive!==e||!Eue(this._currentSuggestItemInfo,t))&&(this._isActive=e,this._currentSuggestItemInfo=t,this._onDidSelectedItemChange.fire())}getSuggestItemInfo(){const e=mr.get(this.editor);if(!e||!this.isSuggestWidgetVisible)return;const t=e.widget.value.getFocusedItem(),i=this.editor.getPosition(),n=this.editor.getModel();if(!(!t||!i||!n))return Sp.fromSuggestion(e,n,i,t.item,this.isShiftKeyPressed)}stopForceRenderingAbove(){mr.get(this.editor)?.stopForceRenderingAbove()}forceRenderingAbove(){mr.get(this.editor)?.forceRenderingAbove()}}class Sp{static fromSuggestion(e,t,i,n,s){let{insertText:r}=n.completion,a=!1;if(n.completion.insertTextRules&4){const c=new Mg().parse(r);c.children.length<100&&mw.adjustWhitespace(t,i,!0,c),r=c.toString(),a=!0}const l=e.getOverwriteInfo(n,s);return new Sp(I.fromPositions(i.delta(0,-l.overwriteBefore),i.delta(0,Math.max(l.overwriteAfter,0))),r,n.completion.kind,a)}constructor(e,t,i,n){this.range=e,this.insertText=t,this.completionItemKind=i,this.isSnippetText=n}equals(e){return this.range.equalsRange(e.range)&&this.insertText===e.insertText&&this.completionItemKind===e.completionItemKind&&this.isSnippetText===e.isSnippetText}toSelectedSuggestionInfo(){return new lF(this.range,this.insertText,this.completionItemKind,this.isSnippetText)}toSingleTextEdit(){return new fa(this.range,this.insertText)}}function Eue(o,e){return o===e?!0:!o||!e?!1:o.equals(e)}var Nue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Fa=function(o,e){return function(t,i){e(t,i,o)}},_N,Ih;let uo=(Ih=class extends z{static get(e){return e.getContribution(_N.ID)}constructor(e,t,i,n,s,r,a,l,c,d){super(),this.editor=e,this._instantiationService=t,this._contextKeyService=i,this._configurationService=n,this._commandService=s,this._debounceService=r,this._languageFeaturesService=a,this._accessibilitySignalService=l,this._keybindingService=c,this._accessibilityService=d,this._editorObs=Dg(this.editor),this._positions=Ce(this,u=>this._editorObs.selections.read(u)?.map(f=>f.getEndPosition())??[new P(1,1)]),this._suggestWidgetAdaptor=this._register(new Iue(this.editor,()=>(this._editorObs.forceUpdate(),this.model.get()?.selectedInlineCompletion.get()?.toSingleTextEdit(void 0)),u=>this._editorObs.forceUpdate(f=>{this.model.get()?.handleSuggestAccepted(u)}))),this._suggestWidgetSelectedItem=gt(this,u=>this._suggestWidgetAdaptor.onDidSelectedItemChange(()=>{this._editorObs.forceUpdate(f=>u(void 0))}),()=>this._suggestWidgetAdaptor.selectedItem),this._enabledInConfig=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).enabled),this._isScreenReaderEnabled=gt(this,this._accessibilityService.onDidChangeScreenReaderOptimized,()=>this._accessibilityService.isScreenReaderOptimized()),this._editorDictationInProgress=gt(this,this._contextKeyService.onDidChangeContext,()=>this._contextKeyService.getContext(this.editor.getDomNode()).getValue("editorDictation.inProgress")===!0),this._enabled=Ce(this,u=>this._enabledInConfig.read(u)&&(!this._isScreenReaderEnabled.read(u)||!this._editorDictationInProgress.read(u))),this._debounceValue=this._debounceService.for(this._languageFeaturesService.inlineCompletionsProvider,"InlineCompletionsDebounce",{min:50,max:50}),this.model=tr(this,u=>{if(this._editorObs.isReadonly.read(u))return;const f=this._editorObs.model.read(u);return f?this._instantiationService.createInstance(sN,f,this._suggestWidgetSelectedItem,this._editorObs.versionId,this._positions,this._debounceValue,gt(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(119).preview),gt(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(119).previewMode),gt(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).mode),this._enabled):void 0}).recomputeInitiallyAndOnChange(this._store),this._ghostTexts=Ce(this,u=>this.model.read(u)?.ghostTexts.read(u)??[]),this._stablizedGhostTexts=Tue(this._ghostTexts,this._store),this._ghostTextWidgets=jZ(this,this._stablizedGhostTexts,(u,f)=>f.add(this._instantiationService.createInstance(tN,this.editor,{ghostText:u,minReservedLineCount:wg(0),targetTextModel:this.model.map(g=>g?.textModel)}))).recomputeInitiallyAndOnChange(this._store),this._playAccessibilitySignal=Q_(this),this._fontFamily=gt(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).fontFamily),this._register(new hs(this._contextKeyService,this.model)),this._register(JI(this._editorObs.onDidType,(u,f)=>{this._enabled.get()&&this.model.get()?.trigger()})),this._register(this._commandService.onDidExecuteCommand(u=>{new Set([fp.Tab.id,fp.DeleteLeft.id,fp.DeleteRight.id,dB,"acceptSelectedSuggestion"]).has(u.commandId)&&e.hasTextFocus()&&this._enabled.get()&&this._editorObs.forceUpdate(g=>{this.model.get()?.trigger(g)})})),this._register(JI(this._editorObs.selections,(u,f)=>{f.some(g=>g.reason===3||g.source==="api")&&this.model.get()?.stop()})),this._register(this.editor.onDidBlurEditorWidget(()=>{this._contextKeyService.getContextKeyValue("accessibleViewIsShown")||this._configurationService.getValue("editor.inlineSuggest.keepOnBlur")||e.getOption(62).keepOnBlur||Eg.dropDownVisible||Xt(u=>{this.model.get()?.stop(u)})})),this._register(We(u=>{const f=this.model.read(u)?.state.read(u);f?.suggestItem?f.primaryGhostText.lineCount>=2&&this._suggestWidgetAdaptor.forceRenderingAbove():this._suggestWidgetAdaptor.stopForceRenderingAbove()})),this._register(_e(()=>{this._suggestWidgetAdaptor.stopForceRenderingAbove()}));const h=YT(this,(u,f)=>{const p=this.model.read(u)?.state.read(u);return this._suggestWidgetSelectedItem.get()?f:p?.inlineCompletion?.semanticId});this._register(Nre(Ce(u=>(this._playAccessibilitySignal.read(u),h.read(u),{})),async(u,f,g)=>{const p=this.model.get(),_=p?.state.get();if(!_||!p)return;const b=p.textModel.getLineContent(_.primaryGhostText.lineNumber);await og(50,zM(g)),await k7(this._suggestWidgetSelectedItem,Es,()=>!1,zM(g)),await this._accessibilitySignalService.playSignal(rr.inlineSuggestion),this.editor.getOption(8)&&this._provideScreenReaderUpdate(_.primaryGhostText.renderForScreenReader(b))})),this._register(new SE(this.editor,this.model,this._instantiationService)),this._register(ghe(Ce(u=>{const f=this._fontFamily.read(u);return f===""||f==="default"?"":` -.monaco-editor .ghost-text-decoration, -.monaco-editor .ghost-text-decoration-preview, -.monaco-editor .ghost-text { - font-family: ${f}; -}`}))),this._register(this._configurationService.onDidChangeConfiguration(u=>{u.affectsConfiguration("accessibility.verbosity.inlineCompletions")&&this.editor.updateOptions({inlineCompletionsAccessibilityVerbose:this._configurationService.getValue("accessibility.verbosity.inlineCompletions")})})),this.editor.updateOptions({inlineCompletionsAccessibilityVerbose:this._configurationService.getValue("accessibility.verbosity.inlineCompletions")})}playAccessibilitySignal(e){this._playAccessibilitySignal.trigger(e)}_provideScreenReaderUpdate(e){const t=this._contextKeyService.getContextKeyValue("accessibleViewIsShown"),i=this._keybindingService.lookupKeybinding("editor.action.accessibleView");let n;!t&&i&&this.editor.getOption(150)&&(n=m("showAccessibleViewHint","Inspect this in the accessible view ({0})",i.getAriaLabel())),El(n?e+", "+n:e)}shouldShowHoverAt(e){const t=this.model.get()?.primaryGhostText.get();return t?t.parts.some(i=>e.containsPosition(new P(t.lineNumber,i.column))):!1}shouldShowHoverAtViewZone(e){return this._ghostTextWidgets.get()[0]?.ownsViewZone(e)??!1}},_N=Ih,Ih.ID="editor.contrib.inlineCompletionsController",Ih);uo=_N=Nue([Fa(1,ke),Fa(2,De),Fa(3,lt),Fa(4,hi),Fa(5,q0),Fa(6,Se),Fa(7,rb),Fa(8,vt),Fa(9,ms)],uo);function Tue(o,e){const t=Ge("result",[]),i=[];return e.add(We(n=>{const s=o.read(n);Xt(r=>{if(s.length!==i.length){i.length=s.length;for(let a=0;aa.set(s[l],r))})})),t}const b0=class b0 extends bi{constructor(){super({id:b0.ID,label:m("action.inlineSuggest.showNext","Show Next Inline Suggestion"),alias:"Show Next Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:100,primary:606}})}async run(e,t){uo.get(t)?.model.get()?.next()}};b0.ID=uB;let bN=b0;const C0=class C0 extends bi{constructor(){super({id:C0.ID,label:m("action.inlineSuggest.showPrevious","Show Previous Inline Suggestion"),alias:"Show Previous Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:100,primary:604}})}async run(e,t){uo.get(t)?.model.get()?.previous()}};C0.ID=hB;let CN=C0;class Mue extends bi{constructor(){super({id:"editor.action.inlineSuggest.trigger",label:m("action.inlineSuggest.trigger","Trigger Inline Suggestion"),alias:"Trigger Inline Suggestion",precondition:K.writable})}async run(e,t){const i=uo.get(t);await BZ(async n=>{await i?.model.get()?.triggerExplicitly(n),i?.playAccessibilitySignal(n)})}}class Rue extends bi{constructor(){super({id:"editor.action.inlineSuggest.acceptNextWord",label:m("action.inlineSuggest.acceptNextWord","Accept Next Word Of Inline Suggestion"),alias:"Accept Next Word Of Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:101,primary:2065,kbExpr:re.and(K.writable,hs.inlineSuggestionVisible)},menuOpts:[{menuId:$e.InlineSuggestionToolbar,title:m("acceptWord","Accept Word"),group:"primary",order:2}]})}async run(e,t){const i=uo.get(t);await i?.model.get()?.acceptNextWord(i.editor)}}class Aue extends bi{constructor(){super({id:"editor.action.inlineSuggest.acceptNextLine",label:m("action.inlineSuggest.acceptNextLine","Accept Next Line Of Inline Suggestion"),alias:"Accept Next Line Of Inline Suggestion",precondition:re.and(K.writable,hs.inlineSuggestionVisible),kbOpts:{weight:101},menuOpts:[{menuId:$e.InlineSuggestionToolbar,title:m("acceptLine","Accept Line"),group:"secondary",order:2}]})}async run(e,t){const i=uo.get(t);await i?.model.get()?.acceptNextLine(i.editor)}}class Pue extends bi{constructor(){super({id:dB,label:m("action.inlineSuggest.accept","Accept Inline Suggestion"),alias:"Accept Inline Suggestion",precondition:hs.inlineSuggestionVisible,menuOpts:[{menuId:$e.InlineSuggestionToolbar,title:m("accept","Accept"),group:"primary",order:1}],kbOpts:{primary:2,weight:200,kbExpr:re.and(hs.inlineSuggestionVisible,K.tabMovesFocus.toNegated(),hs.inlineSuggestionHasIndentationLessThanTabSize,Ne.Visible.toNegated(),K.hoverFocused.toNegated())}})}async run(e,t){const i=uo.get(t);i&&(i.model.get()?.accept(i.editor),i.editor.focus())}}const v0=class v0 extends bi{constructor(){super({id:v0.ID,label:m("action.inlineSuggest.hide","Hide Inline Suggestion"),alias:"Hide Inline Suggestion",precondition:hs.inlineSuggestionVisible,kbOpts:{weight:100,primary:9}})}async run(e,t){const i=uo.get(t);Xt(n=>{i?.model.get()?.stop(n)})}};v0.ID="editor.action.inlineSuggest.hide";let vN=v0;const w0=class w0 extends nu{constructor(){super({id:w0.ID,title:m("action.inlineSuggest.alwaysShowToolbar","Always Show Toolbar"),f1:!1,precondition:void 0,menu:[{id:$e.InlineSuggestionToolbar,group:"secondary",order:10}],toggled:re.equals("config.editor.inlineSuggest.showToolbar","always")})}async run(e,t){const i=e.get(lt),s=i.getValue("editor.inlineSuggest.showToolbar")==="always"?"onHover":"always";i.updateValue("editor.inlineSuggest.showToolbar",s)}};w0.ID="editor.action.inlineSuggest.toggleAlwaysShowToolbar";let wN=w0;var Oue=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},xm=function(o,e){return function(t,i){e(t,i,o)}};class Fue{constructor(e,t,i){this.owner=e,this.range=t,this.controller=i}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}let yN=class{constructor(e,t,i,n,s,r){this._editor=e,this._languageService=t,this._openerService=i,this.accessibilityService=n,this._instantiationService=s,this._telemetryService=r,this.hoverOrdinal=4}suggestHoverAnchor(e){const t=uo.get(this._editor);if(!t)return null;const i=e.target;if(i.type===8){const n=i.detail;if(t.shouldShowHoverAtViewZone(n.viewZoneId))return new Q1(1e3,this,I.fromPositions(this._editor.getModel().validatePosition(n.positionBefore||n.position)),e.event.posx,e.event.posy,!1)}return i.type===7&&t.shouldShowHoverAt(i.range)?new Q1(1e3,this,i.range,e.event.posx,e.event.posy,!1):i.type===6&&i.detail.mightBeForeignElement&&t.shouldShowHoverAt(i.range)?new Q1(1e3,this,i.range,e.event.posx,e.event.posy,!1):null}computeSync(e,t){if(this._editor.getOption(62).showToolbar!=="onHover")return[];const i=uo.get(this._editor);return i&&i.shouldShowHoverAt(e.range)?[new Fue(this,e.range,i)]:[]}renderHoverParts(e,t){const i=new X,n=t[0];this._telemetryService.publicLog2("inlineCompletionHover.shown"),this.accessibilityService.isScreenReaderOptimized()&&!this._editor.getOption(8)&&i.add(this.renderScreenReaderText(e,n));const s=n.controller.model.get(),r=this._instantiationService.createInstance(Eg,this._editor,!1,wg(null),s.selectedInlineCompletionIndex,s.inlineCompletionsCount,s.activeCommands),a=r.getDomNode();e.fragment.appendChild(a),s.triggerExplicitly(),i.add(r);const l={hoverPart:n,hoverElement:a,dispose(){i.dispose()}};return new Ng([l])}renderScreenReaderText(e,t){const i=new X,n=ce,s=n("div.hover-row.markdown-hover"),r=Z(s,n("div.hover-contents",{"aria-live":"assertive"})),a=i.add(new Wh({editor:this._editor},this._languageService,this._openerService)),l=c=>{i.add(a.onDidRenderAsync(()=>{r.className="hover-contents code-hover-contents",e.onContentsChanged()}));const d=m("inlineSuggestionFollows","Suggestion:"),h=i.add(a.render(new Js().appendText(d).appendCodeblock("text",c)));r.replaceChildren(h.element)};return i.add(We(c=>{const d=t.controller.model.read(c)?.primaryGhostText.read(c);if(d){const h=this._editor.getModel().getLineContent(d.lineNumber);l(d.renderForScreenReader(h))}else un(r)})),e.fragment.appendChild(s),i}};yN=Oue([xm(1,qt),xm(2,Vo),xm(3,ms),xm(4,ke),xm(5,$s)],yN);class Bue{}Ho(uo.ID,uo,3);mi(Mue);mi(bN);mi(CN);mi(Rue);mi(Aue);mi(Pue);mi(vN);Rn(wN);Oy.register(yN);By.register(new Bue);export{Dge as M,kge as R,Ige as e,Ege as l}; diff --git a/deploy/online-shop/index.html b/deploy/online-shop/index.html deleted file mode 100644 index 22a1451c..00000000 --- a/deploy/online-shop/index.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - DFD WebEditor - - - - - - - - -
    - - From ad54dcd9a75aa8e85b6867962a00a42eaac4cdd2 Mon Sep 17 00:00:00 2001 From: dalu-wins Date: Sun, 8 Mar 2026 23:54:18 +0100 Subject: [PATCH 14/19] fix: remove wait for nextline so it can run as systemd after build --- .../standalone/Application.java | 43 ++++++------------- 1 file changed, 12 insertions(+), 31 deletions(-) diff --git a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/Application.java b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/Application.java index 8da6fb14..f929f009 100644 --- a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/Application.java +++ b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/Application.java @@ -1,40 +1,21 @@ package org.dataflowanalysis.standalone; -import java.util.Scanner; - import org.dataflowanalysis.standalone.websocket.WebSocketServerUtils; import org.eclipse.equinox.app.IApplication; import org.eclipse.equinox.app.IApplicationContext; public class Application implements IApplication { - @Override - public Object start(IApplicationContext context) throws Exception { - try { - Thread webSocketServer = WebSocketServerUtils.startWebSocketServer(); - - Scanner scanner = new Scanner(System.in); - String input = ""; - - System.out.println("Type 'exit' to quit the program."); - - // Loop until user types "exit" - - while(webSocketServer.isAlive()) { - while (!input.equalsIgnoreCase("exit")) { - input = scanner.nextLine(); - } - scanner.close(); - return IApplication.EXIT_OK; - }; - scanner.close(); + @Override + public Object start(IApplicationContext context) throws Exception { + try { + Thread webSocketServer = WebSocketServerUtils.startWebSocketServer(); + webSocketServer.join(); // block until server thread dies } catch (Exception e) { e.printStackTrace(); - } - return IApplication.EXIT_OK; - } - - @Override - public void stop() { - - } -} + } + return IApplication.EXIT_OK; + } + @Override + public void stop() { + } +} \ No newline at end of file From 9cc60b2086e475db828bbd01153025ddd2091f32 Mon Sep 17 00:00:00 2001 From: dalu-wins Date: Mon, 9 Mar 2026 21:36:53 +0100 Subject: [PATCH 15/19] fix: remove log version --- .../src/org/dataflowanalysis/standalone/Main.java | 1 - 1 file changed, 1 deletion(-) diff --git a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/Main.java b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/Main.java index 7eae8b20..5706c92f 100644 --- a/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/Main.java +++ b/backend/analysisBackendServer/bundles/org.dataflowanalysis.standalone/src/org/dataflowanalysis/standalone/Main.java @@ -7,7 +7,6 @@ public class Main { public static void main(String[] args) { try { Thread webSocketServer = WebSocketServerUtils.startWebSocketServer(); - DataFlowConfidentialityAnalysis.logVersion(); while(webSocketServer.isAlive()); From bc565bfc4abcb864bf383e223a5c3b24be23369d Mon Sep 17 00:00:00 2001 From: dalu-wins Date: Mon, 9 Mar 2026 21:37:26 +0100 Subject: [PATCH 16/19] fix: add tooltip to violation ui and chain string list from violation --- .../webEditor/src/violationUi/Violation.ts | 6 +-- .../webEditor/src/violationUi/violationUi.css | 39 ++++++++++++++++++- .../webEditor/src/violationUi/violationUi.ts | 12 +++--- frontend/webEditor/src/webSocket/webSocket.ts | 2 +- 4 files changed, 49 insertions(+), 10 deletions(-) diff --git a/frontend/webEditor/src/violationUi/Violation.ts b/frontend/webEditor/src/violationUi/Violation.ts index 573feb32..34fb067d 100644 --- a/frontend/webEditor/src/violationUi/Violation.ts +++ b/frontend/webEditor/src/violationUi/Violation.ts @@ -1,6 +1,6 @@ export interface Violation { constraint: string; - tfg: string; - violatedVertices: string; - inducingVertices: string; + tfg: string[]; + violatedVertices: string[]; + inducingVertices: string[]; } \ No newline at end of file diff --git a/frontend/webEditor/src/violationUi/violationUi.css b/frontend/webEditor/src/violationUi/violationUi.css index 7212793d..e01d2f41 100644 --- a/frontend/webEditor/src/violationUi/violationUi.css +++ b/frontend/webEditor/src/violationUi/violationUi.css @@ -3,7 +3,7 @@ bottom: 70px; padding: 10px; max-width: 30vw; - overflow: hidden; + overflow: visible; .violation-content { width: 100%; @@ -60,4 +60,41 @@ box-sizing: border-box; margin: 0 auto; } + + .help-icon { + display: inline-block; + width: 16px; + height: 16px; + margin-left: 4px; + vertical-align: text-top; + cursor: help; + position: relative; + } + + .help-icon::before { + content: ""; + background-image: url("@fortawesome/fontawesome-free/svgs/regular/circle-question.svg"); + display: inline-block; + filter: invert(var(--dark-mode)); + height: 16px; + width: 16px; + background-size: 16px 16px; + } + + .help-icon:hover::after { + content: attr(data-tooltip); + position: fixed; + background: #333; + color: #fff; + padding: 4px 8px; + border-radius: 4px; + font-size: 11px; + white-space: normal; + word-break: normal; + overflow-wrap: break-word; + max-width: 200px; + z-index: 9999; + pointer-events: none; + margin-left: 8px; + } } \ No newline at end of file diff --git a/frontend/webEditor/src/violationUi/violationUi.ts b/frontend/webEditor/src/violationUi/violationUi.ts index 5bfb81dd..090286b7 100644 --- a/frontend/webEditor/src/violationUi/violationUi.ts +++ b/frontend/webEditor/src/violationUi/violationUi.ts @@ -62,15 +62,17 @@ export class ViolationUI extends AccordionUiExtension { Violation in - ${v.violatedVertices} + ${v.violatedVertices.join(", ")} - Induced by - ${v.inducingVertices} + + Induced by + + ${v.inducingVertices.join(", ")} - Flow Cause - ${v.tfg} + Flow Graph + ${v.tfg.join(", ")} diff --git a/frontend/webEditor/src/webSocket/webSocket.ts b/frontend/webEditor/src/webSocket/webSocket.ts index 70cae632..2fc4e5d1 100644 --- a/frontend/webEditor/src/webSocket/webSocket.ts +++ b/frontend/webEditor/src/webSocket/webSocket.ts @@ -10,7 +10,7 @@ export class DfdWebSocket { resolve?: (v: string) => void; reject?: (e: Error) => void; } = {}; - private static readonly WS_URL = "wss://xdecaf.dalu-wins.de/websocket"; + private static readonly WS_URL = "ws://localhost:3000/events/"; constructor( @inject(TYPES.ILogger) private readonly logger: ILogger, From dd3f6666b1274ab7fe4e8b518f01a23710c8acf0 Mon Sep 17 00:00:00 2001 From: dalu-wins Date: Mon, 9 Mar 2026 22:18:20 +0100 Subject: [PATCH 17/19] fix: add tooltip for tfg --- frontend/webEditor/src/violationUi/violationUi.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/webEditor/src/violationUi/violationUi.ts b/frontend/webEditor/src/violationUi/violationUi.ts index 090286b7..6c8243b8 100644 --- a/frontend/webEditor/src/violationUi/violationUi.ts +++ b/frontend/webEditor/src/violationUi/violationUi.ts @@ -71,7 +71,7 @@ export class ViolationUI extends AccordionUiExtension { ${v.inducingVertices.join(", ")} - Flow Graph + Flow Graph ${v.tfg.join(", ")} From 59e1de12ded67865facdb2c4e4dcd509c5aa272b Mon Sep 17 00:00:00 2001 From: dalu-wins Date: Mon, 9 Mar 2026 22:19:01 +0100 Subject: [PATCH 18/19] fix: connect to correct websoscket again --- frontend/webEditor/src/webSocket/webSocket.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/frontend/webEditor/src/webSocket/webSocket.ts b/frontend/webEditor/src/webSocket/webSocket.ts index 2fc4e5d1..61b4bfad 100644 --- a/frontend/webEditor/src/webSocket/webSocket.ts +++ b/frontend/webEditor/src/webSocket/webSocket.ts @@ -10,7 +10,9 @@ export class DfdWebSocket { resolve?: (v: string) => void; reject?: (e: Error) => void; } = {}; - private static readonly WS_URL = "ws://localhost:3000/events/"; + //private static readonly WS_URL = "ws://localhost:3000/events/"; + private static readonly WS_URL = "wss://xdecaf.dalu-wins.de/websocket"; + constructor( @inject(TYPES.ILogger) private readonly logger: ILogger, From 215f845943ed7c59d86e828466bb945533de1ba1 Mon Sep 17 00:00:00 2001 From: dalu-wins Date: Mon, 9 Mar 2026 23:40:24 +0100 Subject: [PATCH 19/19] docs: add setup for backend that contains violation summary logic --- .../violationSummarySetup.md | 100 ++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 backend/analysisBackendServer/violationSummarySetup.md diff --git a/backend/analysisBackendServer/violationSummarySetup.md b/backend/analysisBackendServer/violationSummarySetup.md new file mode 100644 index 00000000..4e8a2c2a --- /dev/null +++ b/backend/analysisBackendServer/violationSummarySetup.md @@ -0,0 +1,100 @@ +# Standalone DFA WebSocket Backend + +> **CAUTION:** This application exposes a WebSocket server to the network. +> If you want to run it locally only, adjust the WebSocket host accordingly. + +## Overview + +This is a WebSocket server that exposes the DataFlowAnalysis backend +for use with the xDECAF web editor frontend. It is built using Tycho/Maven and +can be deployed headlessly. + +## Prerequisites + +- Java 17 +- Maven 3.9+ +- Git + +## Development Setup + +For local development without building a headless product: + +- Clone DataFlowAnalysis repo and import bundles in Eclipse Product +- Clone this repository and import in Eclipse Product +- Set project target platform to active target platform +- Run `Main` + +## Build + +**Important:** Before building, update the local repository path in: +`releng/org.dataflowanalysis.standalone.targetplatform/org.dataflowanalysis.standalone.targetplatform.targetplatform.target` + +Change the `file://` location to point to your local DataFlowAnalysis build output: +```xml + +``` + +The standalone backend depends on modified bundles from the +[DataFlowAnalysis](https://github.com/dalu-wins/DataFlowAnalysis) repository. +You must build that first. + +**Step 1 — Build the modified DataFlowAnalysis bundles:** +```bash +git clone https://github.com/dalu-wins/DataFlowAnalysis.git +cd DataFlowAnalysis +mvn clean install -Dtycho.localArtifacts=ignore -Dtycho.target.eager=true +``` + +**Step 2 — Build the standalone backend:** +```bash +cd OnlineEditor/backend/analysisBackendServer +mvn clean package -Dtycho.localArtifacts=ignore -Dtycho.target.eager=true +``` + +The deployable archive will be at: +``` +releng/org.dataflowanalysis.standalone.product/target/products/standalone-dfa-server-linux.gtk.x86_64.tar.gz +``` + +## Deploy + +Copy the archive to your server and extract it: +```bash +tar -xzf standalone-dfa-server-linux.gtk.x86_64.tar.gz +``` + +Run the server: +```bash +./standalone-dfa-server -application org.dataflowanalysis.standalone.application -noSplash -consoleLog +``` + +The WebSocket server will start on port 3000 at `/events`. + +## Run as a systemd service + +Create `/etc/systemd/system/dfa-server.service`: +```ini +[Unit] +Description=DataFlow Analysis WebSocket Server +After=network.target + +[Service] +Type=simple +User=youruser +WorkingDirectory=/path/to/standalone-dfa-server +ExecStart=/path/to/standalone-dfa-server -application org.dataflowanalysis.standalone.application -noSplash -consoleLog +Restart=on-failure +RestartSec=5 +StandardOutput=journal +StandardError=journal + +[Install] +WantedBy=multi-user.target +``` + +Then enable and start: +```bash +sudo systemctl daemon-reload +sudo systemctl enable dfa-server +sudo systemctl start dfa-server +``` \ No newline at end of file